<?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>CompanyDirectory</name>
	<version>1.12</version>
  <mincmsversion>1.9.4.3</mincmsversion>
	<help><![CDATA[PGgzPldoYXQgZG9lcyB0aGlzIGRvPzwvaDM+CjxwPlRoaXMgbW9kdWxlIHByb3ZpZGVzIGEgd2F5IHRvIGNvbGxlY3QsIG9yZ2FuaXplLCBhbmQgZGlzcGxheSBpbmZvcm1hdGlvbiBhYm91dCBjb21wYW5pZXMuICBVc3VhbGx5IHRoaXMgaXMgdGhlIGNvbnRhY3QgaW5mb3JtYXRpb24gYW5kIGEgbG9nbywgYnV0IGl0IGlzIGZsZXhpYmlsZSBlbm91Z2ggdG8gYWxsb3cgZm9yIGV4dGVuZGFibGUgZmllbGRzLCBhbmQgZGlzY3JpbWluYXRpbmcgcHVibGljIGZyb20gcHJpdmF0ZSBkYXRhLjwvcD4KPHA+VGhpcyBtb2R1bGUgY291bGQgYmUgdXNlZCBmb3IgYSB2YXJpZXR5IG9mIHB1cnBvc2VzLiBGcm9tIGEgc3VwcGxpZXJzIGxpc3QgdG8gYSBjb250YWN0IGxpc3QuICBJdCBpcyBmbGV4aWJsZSBlbm91Z2ggdGhhdCBpdCBjb3VsZCBiZSByZS11c2VkIGZvciBtYW55IGRpZmZlcmVudCBwdXJwb3Nlcy48L3A+CjxoMz5Ib3cgRG8gSSBVc2UgSXQ8L2gzPgo8cD5UaGUgZWFzaWVzdCB3YXkgdG8gdXNlIHRoaXMgbW9kdWxlIGlzIGJ5IHBsYWNpbmcgdGhlIDxjb2RlPntDb21wYW55RGlyZWN0b3J5fTwvY29kZT4gdGFnIGludG8gZWl0aGVyIHlvdXIgcGFnZSB0ZW1wbGF0ZSBvciBwYWdlIGNvbnRlbnQuICBZb3Ugd291bGQgdGhlbiBzdGFydCBlZGl0aW5nIHJlY29yZHMgaW4gdGhlICZxdW90O0NvbXBhbnkgRGlyZWN0b3J5JnF1b3Q7IGFkbWluIGludGVyZmFjZS4gIEV4cGxvcmUgdGhlIHZhcmlvdXMgcGFyYW1ldGVycyAoZGVzY3JpYmVkIGJlbG93KSBmb3Igd2F5cyB0byBjdXN0b21pemUgdGhlIGJlaGF2aW91ciBvZiB0aGUgbW9kdWxlLjwvcD4KPGgzPlNlY3VyaXR5PC9oMz4KPHA+SW4gb3JkZXIgdG8gbWFuYWdlIHRoZSBjb21wYW5pZXMgaW5zaWRlIHRoaXMgbW9kdWxlLCB0aGUgYWRtaW5pc3RyYXRvciBtdXN0IGhhdmUgdGhlICc8L2VtPk1vZGlmeSBDb21wYW55IERpcmVjdG9yeTwvZW0+JyBwZXJtaXNzaW9uLjwvcD4KPHA+SW4gb3JkZXIgdG8gZWRpdCB0aGUgYnVpbHQgaW4gdGVtcGxhdGVzIHRoYXQgY29udHJvbCB0aGUgbGF5b3V0IG9mIHRoZSBjb21wYW55ZGlyZWN0b3J5IGluZm9ybWF0aW9uLCB0aGUgYWRtaW5pc3RyYXRvciBuZWVkcyB0aGUgJzxlbT5Nb2RpZnkgVGVtcGxhdGVzPC9lbT4nIHBlcm1pc3Npb24uPC9wPgo8cD5UbyBhZGp1c3QgdGhlIHZhcmlvdXMgc2V0dGluZ3MsIHRoZSAnPGVtPk1vZGlmeSBTaXRlIFByZWZlcmVuY2VzPC9lbT4nIHBlcm1pc3Npb24gaXMgcmVxdWlyZWQuPC9wPgo8aDM+UHJldHR5IFVSTFM8L2gzPgo8cD5GdW5jdGlvbmFsaXR5IGFuZCBmbGV4aWJpbGl0eSBpcyByZWR1Y2VkIHdoZW4gdXNpbmcgcHJldHR5IHVybHMuICBGb3IgZXhhbXBsZSwgaWYgdXNpbmcgcHJldHR5IFVSTFMgd2l0aCB0aGlzIG1vZHVsZSwgeW91IHNob3VsZCBwb3N0IHRoZSB0YWcgZm9yIHRoaXMgbW9kdWxlIGluIHRoZSBkZWZhdWx0IGNvbnRlbnQgYmxvY2ssIGFuZCB3aGVuIGNsaWNraW5nIG9uIGEgbGluayBvciBzdWJtaXR0aW5nIGEgYnV0dG9uIGZyb20gdGhpcyBtb2R1bGUsIGl0J3MgcmVzdWx0cyB3aWxsIGFsd2F5cyByZXBsYWNlIHRoZSBkZWZhdWx0IGNvbnRlbnQgYmxvY2suPC9wPjxoMz5EZXBlbmRlbmNpZXM8L2gzPjx1bD48bGk+Q0dFeHRlbnNpb25zID0mZ3Q7IDEuMjM8L2xpPjxsaT5DR1NpbXBsZVNtYXJ0eSA9Jmd0OyAxLjQuNDwvbGk+PGxpPkpRdWVyeVRvb2xzID0mZ3Q7IDEuMC4xMDwvbGk+PC91bD48aDM+UGFyYW1ldGVyczwvaDM+PHVsPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGxhbmc9ImVuX1VTIiAtIFBhcmFtZXRlciBpcyB1c2VkIHRvIHNwZWNpZnkgd2hhdCBsYW5ndWFnZSB0byB1c2UgZm9yIGRpc3BsYXkgb24gdGhlIGZyb250ZW5kLiBOb3QgYWxsIG1vZHVsZXMgc3VwcG9ydCBvciBuZWVkIHRoaXMuPC9saT48bGk+PGVtPihvcHRpb25hbCk8L2VtPiBhY3Rpb249ImRlZmF1bHQiIC0gRGV0ZXJtaW5lIHRoZSBwcmltYXJ5IGJlaGF2aW91ciBvZiB0aGUgbW9kdWxlLiAgUG9zc2libGUgdmFsdWVzIGZvciB0aGlzIHBhcmFtZXRlciBhcmU6Cjx1bD4KICA8bGk+Y2F0ZWdvcnlsaXN0IC0tIERpc3BsYXkgYSBsaXN0IG9mIGNhdGVnb3JpZXMuICBVc2VycyBjYW4gZHJpbGwgZG93biB0byBzdW1tYXJ5IG1vZGUsIGFuZCB0aGVuIHRvIGRldGFpbCBtb2RlLjwvbGk+CiAgPGxpPjxzdHJvbmc+ZGVmYXVsdDwvc3Ryb25nPiAtLSBEaXNwbGF5IGNvbXBhbmllcyBpbiBhIHN1bW1hcnkgbW9kZS48L2xpPgogIDxsaT5kZXRhaWxzIC0tIERpc3BsYXkgZGV0YWlsZWQgaW5mb3JtYXRpb24gYWJvdXQgYSBzcGVjaWZpYyBjb21wYW55LjwvbGk+CiAgPGxpPmZlX2VkaXQgLS0gRGlzcGxheSBhIGZvcm0gdG8gYWxsb3cgZWRpdGluZyBpbmZvcm1hdGlvbiBhYm91dCBhIHNwZWNpZmljIGNvbXBhbnkuPC9saT4KPGxpPmZyb250ZW5kbGlzdCAtLSBEaXNwbGF5IGxpc3Qgb2YgYWxsIG9mIGEgdXNlcnMgY29tcGFueSBlbnRyaWVzIG9uIHRoZSBmcm9udGVuZCwgd2l0aCB0aGUgb3B0aW9uYWwgYWJpbGl0eSB0byBhZGQgaXRlbXMuPC9saT4KICA8bGk+c2VhcmNoICAtLSBEaXNwbGF5IGEgZm9ybSB0byBhbGxvdyBzZWFyY2hpbmcgZm9yIHNwZWNpZmljIGNvbXBhbmllcy48L2xpPgogIDxsaT5icm93c2VoaWVyIC0tIERpc3BsYXkgYSBsaXN0IG9mIGhpZXJhcmNoaWVzLiAgVXNlcnMgY2FuIGRyaWxsIGRvd24gdG8gc3VtbWFyeSBtb2RlIGFuZCB0aGVuIHRvIGRldGFpbCBtb2RlLjwvbGk+CiAgIAo8L3VsPgo8L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGNvbXBhbnlpZD0iIiAtIFJlcXVpcmVkIGZvciB0aGUgZnJvbnRlbmQgZWRpdGluZyBhbmQgZGV0YWlsIG1vZGVzLCB0aGlzIHBhcmFtZXRlciBkZXRlcm1pbmVzIHdoaWNoIGNvbXBhbnkgcmVjb3JkIHRvIGVkaXQgb3Igdmlldy48L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGRldGFpbHBhZ2U9IiIgLSBTcGVjaWZ5IGEgcGFnZSBhbGlhcyAoYnkgbmFtZSkgdG8gdXNlIGZvciBkaXNwbGF5aW5nIGEgZGV0YWlsIHJlY29yZC4gPHN0cm9uZz5Ob3RlOjwvc3Ryb25nPiBUaGlzIHRhZyBwYXJhbWV0ZXIgaXMgbm90IGNvbXBhdGlibGUgd2l0aCBwcmV0dHkgdXJscy48L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGNhdGVnb3J5bGlzdHRlbXBsYXRlPSIiIC0gU3BlY2lmeSBhIHRlbXBsYXRlIChieSBuYW1lKSB0byB1c2Ugd2hlbiBkaXNwbGF5aW5nIHRoZSBjYXRlZ29yeSBsaXN0IHZpZXcuPC9saT48bGk+PGVtPihvcHRpb25hbCk8L2VtPiBoaWVybGlzdHRlbXBsYXRlPSIiIC0gU3BlY2lmeSBhIHRlbXBsYXRlIChieSBuYW1lKSB0byB1c2Ugd2hlbiBkaXNwbGF5aW5nIHRoZSBoaWVyYXJjaHkgbGlzdCB2aWV3LjwvbGk+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gc2VhcmNoZm9ybXRlbXBsYXRlPSIiIC0gQXBwbGljYWJsZSBvbmx5IHRvIHRoZSA8ZW0+c2VhcmNoPC9lbT4gbW9kZSwgdGhpcyBwYXJhbWV0ZXIgYWxsb3dzIHNwZWNpZnlpbmcgYSBub24gZGVmYXVsdCBzZWFyY2ggZm9ybSB0ZW1wbGF0ZS48L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGRldGFpbHRlbXBsYXRlPSIiIC0gU3BlY2lmeSBhIHRlbXBsYXRlIChieSBuYW1lKSB0byB1c2Ugd2hlbiBkaXNwbGF5aW5nIHRoZSBkZXRhaWwgdmlldy4gIDxzdHJvbmc+Tm90ZTo8L3N0cm9uZz4gVGhpcyB0YWcgcGFyYW1ldGVyIGlzIG5vdCBjb21wYXRpYmxlIHdpdGggcHJldHR5IHVybHMuPC9saT48bGk+PGVtPihvcHRpb25hbCk8L2VtPiBmcm9udGVuZGZvcm10ZW1wbGF0ZT0iIiAtIFNwZWNpZnkgYSB0ZW1wbGF0ZSAoYnkgbmFtZSkgdG8gdXNlIHdoZW4gZGlzcGxheWluZyB0aGUgZnJvbnQgZW5kIGNvbXBhbnkgZWRpdCBmb3JtLjwvbGk+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gZnJvbnRlbmRsaXN0dGVtcGxhdGU9IiIgLSBBcHBsaWNhYmxlIG9ubHkgdG8gdGhlIDxlbT5mcm9udGVuZGxpc3Q8L2VtPiBhY3Rpb24sIHRoaXMgcGFyYW1ldGVyIGFsbG93cyBzcGVjaWZ5aW5nIGEgbm9uIGRlZmF1bHQgZnJvbnRlbmQgbGlzdCB0ZW1wbGF0ZSB0byB1c2UgZm9yIHJlbmRlcmluZyB0aGUgb3V0cHV0PC9saT48bGk+PGVtPihvcHRpb25hbCk8L2VtPiBzdW1tYXJ5dGVtcGxhdGU9IiIgLSBTcGVjaWZ5IGEgdGVtcGxhdGUgKGJ5IG5hbWUpIHRvIHVzZSB3aGVuIGRpc3BsYXlpbmcgdGhlIHN1bW1hcnkgdmlldy4gIDxzdHJvbmc+Tm90ZTo8L3N0cm9uZz4gVGhpcyB0YWcgcGFyYW1ldGVyIGlzIG5vdCBjb21wYXRpYmxlIHdpdGggcHJldHR5IHVybHMuPC9saT48bGk+PGVtPihvcHRpb25hbCk8L2VtPiBzaG93YWxsPSIiIC0gQXBwbGljYWJsZSBvbmx5IHRvIHRoZSBjYXRlZ29yeWxpc3QgYWN0aW9uLCBpZiB0aGlzIHBhcmFtZXRlciBpcyBzZXQsIHRoZW4gZXZlbiBjYXRlZ29yaWVzIHdpdGggbm8gbWF0Y2hpbmcgY29tcGFuaWVzIHdpbGwgYmUgZGlzcGxheWVkIGluIHRoZSBvdXRwdXQ8L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IHNvcnRieT0iY29tcGFueV9uYW1lIiAtIEFwcGxpY2FibGUgb25seSBpbiBzdW1tYXJ5IG1vZGUsIHRoaXMgcGFyYW1ldGVyIGRldGVybWluZXMgdGhlIHNvcnRpbmcgb2YgdGhlIG91dHB1dCBjb21wYW5pZXMuICBQb3NzaWJsZSB2YWx1ZXMgYXJlOgo8dWw+CjxsaT5pZCAtLSBUaGUgaW50ZXJuYWwgY29tcGFueSBpZDwvbGk+CiAgPGxpPjxzdHJvbmc+Y29tcGFueV9uYW1lPC9zdHJvbmc+PC9saT4KICA8bGk+cGhvbmU8L2xpPgogIDxsaT5mYXg8L2xpPgogIDxsaT5lbWFpbDwvbGk+CiAgPGxpPndlYnNpdGUgLS0gVGhlIHdlYnNpdGUgdXJsPC9saT4KICA8bGk+Y3JlYXRlZCAtLSBUaGUgY3JlYXRpb24gZGF0ZSBmb3IgdGhpcyBjb21wYW55IHJlY29yZDwvbGk+CiAgPGxpPm1vZGlmaWVkIC0tIFRoZSBtb2RpZmllZCBkYXRlIGZvciB0aGlzIGNvbXBhbnkgcmVjb3JkPC9saT4KICA8bGk+c3RhdHVzPC9saT4KICA8bGk+cmFuZG9tIC0tIFNvcnQgdGhlIGl0ZW1zIHJhbmRvbWx5LjwvbGk+CiAgPGxpPmY6ZmllbGQgbmFtZSAtLSBTb3J0IGJ5IHB1YmxpYyBjdXN0b20gZmllbGRzLiBUaGUgb3V0cHV0IHdpbGwgYmUgc29ydGVkIGJ5IHRoZSBuYW1lZCBjdXN0b20gZmllbGQuPGJyLz4KICA8c3Ryb25nPk5vdGU6IDwvc3Ryb25nPiBZb3UgbWF5IG5lZWQgdG8gdXNlIHF1b3RlcyBpZiB0aGUgZmllbGQgbmFtZSBoYXMgc3BhY2VzLjxici8+CiAgPHN0cm9uZz5Ob3RlOiA8L3N0cm9uZz4gVGhlIGZpZWxkIHNwZWNpZmllZCBtdXN0IGJlIG1hcmtlZCBhcyBwdWJsaWMuPC9saT4KICA8c3Ryb25nPk5vdGU6IDwvc3Ryb25nPiBXaGVuIHVzaW5nIGN1c3RvbSBmaWVsZCBzb3J0aW5nLCBZb3UgbWF5IGFsc28gc3BlY2lmeSBhIGZsYWcgYWZ0ZXIgdGhlIGZpZWxkIG5hbWUgdG8gaW5kaWNhdGUgdGhhdCBpbnRlZ2VyIHNvcnRpbmcgc2hvdWxkIGJlIHBlcmZvcm1lZC4gIGkuZTogPGNvZGU+c29ydGJ5PWY6Y3VzdG9tX29yZGVyaW5nOmk8L2NvZGU+PGJyLz4KPC91bD48L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IHNvcnRvcmRlcj0iYXNjIiAtIFNwZWNpZnkgdGhlIG9yZGVyIG9mIHNvcnRlZCBmaWVsZHMgaW4gc3VtbWFyeSB2aWV3LiAgUG9zc2libGUgdmFsdWVzIGFyZToKPHVsPgogIDxsaT48c3Ryb25nPmFzYzwvc3Ryb25nPiAtLSBBc2NlbmRpbmcgb3JkZXI8L2xpPgogIDxsaT5kZXNjIC0tIERlc2NlbmRpbmcgb3JkZXI8L2xpPgo8L3VsPjwvbGk+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gc2VhcmNoYWRkcmVzcz0iMCIgLSBXaGVuIGRvaW5nIGEgcG9zdGFsIGNvZGUgc2VhcmNoLCB1c2luZyB0aGUgc2VhcmNoIGFjdGlvbiwgaWYgdGhpcyBvcHRpb24gaXMgZW5hYmxlZCwgdGhlIGFkZHJlc3MgZmllbGQgd2lsbCBhbHNvIGJlIHNlYXJjaGVkIGZvciB0aGUgbWF0Y2hpbmcgc3RyaW5nPC9saT48bGk+PGVtPihvcHRpb25hbCk8L2VtPiBwb3N0YWxjaGFycz0iMCIgLSBXaGVuIGRvaW5nIGEgcG9zdGFsIGNvZGUgc2VhcmNoLCB1c2luZyB0aGUgc2VhcmNoIGFjdGlvbiwgdGhpcyBvcHRpb24gYWxsb3dzIGxpbWl0aW5nIHRoZSBlZmZlY3RpdmUgbnVtYmVyIG9mIGNoYXJhY3RlcnMgb25mIHRoZSBwb3N0YWwgY29kZTwvbGk+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gaGllcj0iIiAtIEFwcGxpY2FibGUgdG8gdGhlIDxlbT5kZWZhdWx0PC9lbT4sIDxlbT5zZWFyY2g8ZW0+LCA8ZW0+Y2F0ZWdvcnlsaXN0PC9lbT4sYW5kIDxlbT5oaWVybGlzdDwvZW0+IGFjdGlvbnMsIHRoaXMgcGFyYW1ldGVyIGFsbG93cyBzcGVjaWZ5aW5nIGEgaGllcmFyY2h5IG5hbWUgb2YgY29tcGFuaWVzIHRvIGRpc3BsYXkuICBJbiB0aGUgZGVmYXVsdCwgYW5kIHNlYXJjaCBhY3Rpb25zLCBXaWxkY2FyZHMgYXJlIGFjY2VwdGVkLCBpLmU6ICZxdW90Oypzb21laGllcmFyY2h5bmFtZSomcXVvdDsuICBJZiB0aGlzIHBhcmFtZXRlciBpcyBzcGVjaWZpZWQgdG8gdGhlIHNlYXJjaCBhY3Rpb24sIHRoZW4gYW55IGhpZXJhcmNoeSBjaG9zZW4gaW4gdGhlIHNlYXJjaCBmb3JtIHdpbGwgYmUgaWdub3JlZC4gIEhvd2V2ZXIgaW4gdGhlIGhpZXJsaXN0IGFjdGlvbiwgdGhpcyBwYXJhbWV0ZXIgbXVzdCBjb250YWluIHRoZSB1bmlxdWUgbmFtZSBvZiBhIGhpZXJhcmNoeSBwb3NpdGlvbiwgYW5kIHdpbGwgc3BlY2lmeSB0aGUgc3RhcnRpbmcgbG9jYXRpb24gb2YgdGhlIGhpZXJhcmNoeSBkaXNwbGF5LjwvbGk+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gbmFtZT0iIiAtIEFwcGxpY2FibGUgb25seSB0byB0aGUgZGVmYXVsdCA8ZW0+KHN1bW1hcnkpPC9lbT4gYWN0aW9uLCB0aGlzIHBhcmFtZXRlciBhbGxvd3MgZmlsdGVyaW5nIGNvbXBhbmllcyBieSB0aGVpciBuYW1lLiAgV2lsZGNhcmQgY2hhcmFjdGVycyBhcmUgYWxsb3dlZC4gIGkuZTogbmFtZT0mcXVvdDthKiZxdW90OzwvbGk+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gY2F0ZWdvcnk9IiIgLSBXaGVuIHVzZWQgaW4gdGhlIDxlbT5kZWZhdWx0PC9lbT4gc3VtbWFyeSBtb2RlLCB0aGlzIHBhcmFtZXRlciwgd2hpY2ggc2hvdWxkIG1hdGNoIHRoZSBuYW1lIG9mIGFuIGV4aXN0aW5nIGNhdGVnb3J5IHdpbGwgYmUgdXNlZCB0byBkaXNwbGF5IG9ubHkgdGhvc2UgY29tcGFuaWVzIHRoYXQgYXJlIGluIHRoYXQgY2F0ZWdvb3J5LiAoYSBjb21tYSBzZXBlcmF0ZWQgbGlzdCBjYW4gYmUgc3VwcGxpZWQpLiAgV2hlbiB1c2VkIGluIHRoZSA8ZW0+Y2F0ZWdvcnlsaXN0PC9lbT4gYWN0aW9uLCB0aGlzIHBhcmFtZXRlciBhbGxvd3Mgc3BlY2lmeWluZyBhIGNvbW1hIHNlcGFyYXRlZCBsaXN0IG9mIGNhdGVnb3J5IG5hbWVzIHRvIGZpbHRlciB0aGUgcmVzdWx0cyBieS48L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGNhdGVnb3J5Mj0iIiAtIEFwcGxpY2FibGUgb25seSB0byB0aGUgPGVtPmRlZmF1bHQ8L2VtPiBzdW1tYXJ5IHZpZXcsIGFuZCBvbmx5IHdoZW4gdGhlIDxlbT5jYXRlZ29yeTwvZW0+IHBhcmFtZXRlciBpcyBhbHNvIHN1cHBsaWVkIHRoaXMgcGFyYW1ldGVyIGFsbG93cyBzcGVjaWZ5aW5nIGFuIGFkZGl0aW9uYWwgQU5EIGV4cHJlc3Npb24gdG8gaW5kaWNhdGUgYWRkaXRpb25hbCAoY29tbWEgc2VwYXJhdGVkKSBjYXRlZ29yaWVzIHRoYXQgdGhlIHJlc3VsdCBzaG91bGQgYmUgYSBtZW1iZXIgb2YuICBpLmU6IHtDb21wYW55RGlyZWN0b3J5IGNhdGVnb3J5PSdyZWdpb25fbm9ydGgscmVnaW9uX3NvdXRoJyBjYXRlZ29yeTI9J2NhcnMsdHJ1Y2tzJ30gd291bGQgcmV0dXJuIG9ubHkgdGhvc2UgY29tcGFuaWVzIHRoYXQgd2VyZSBpbiB0aGUgZWl0aGVyIG9mIHRoZSByZWdpb24gbm9ydGggb3IgcmVnaW9uIHNvdXRoIGNhdGVnb3JpZXMgQU5EIEFMU08gaW4gZWl0aGVyIG9mIHRoZSBjYXJzIG9yIHRydWNrcyBjYXRlZ29yaWVzPC9saT48bGk+PGVtPihvcHRpb25hbCk8L2VtPiBjYXRlZ29yeTM9IiIgLSBBcHBsaWNhYmxlIG9ubHkgdG8gdGhlIDxlbT5kZWZhdWx0PC9lbT4gc3VtbWFyeSB2aWV3LCBhbmQgb25seSB3aGVuIHRoZSA8ZW0+Y2F0ZWdvcnkyPC9lbT4gcGFyYW1ldGVyIGlzIGFsc28gc3VwcGxpZWQgdGhpcyBwYXJhbWV0ZXIgYWxsb3dzIHNwZWNpZnlpbmcgeWV0IGFuIGFkZGl0aW9uYWwgQU5EIGV4cHJlc3Npb24gdG8gaW5kaWNhdGUgYWRkaXRpb25hbCAoY29tbWEgc2VwYXJhdGVkKSBjYXRlZ29yaWVzIHRoYXQgdGhlIHJlc3VsdCBzaG91bGQgYmUgYSBtZW1iZXIgb2YuIFNlZSB0aGUgaGVscCBmb3IgdGhlIGNhdGVnb3J5MiBwYXJhbWV0ZXIgZm9yIG1vcmUgaW5mb3JtYXRpb248L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGlubGluZT0iMCIgLSBBcHBsaWNhYmxlIG9ubHkgdG8gdGhlIDxlbT5kZWZhdWx0PC9lbT4gc3VtbWFyeSwgYW5kIDxlbT5zZWFyY2g8L2VtPiBtb2RlcywgdGhpcyBwYXJhbWV0ZXIgYWxsb3dzIHNwZWNpZnlpbmcgd2V0aGVyIHRoZSByZXN1bHRpbmcgZGF0YSBzaG91bGQgcmVwbGFjZSB0aGUgZGVmYXVsdCBjb250ZW50IGJsb2NrLCBvciBzaG91bGQgcmVwbGFjZSB0aGUgb3JpZ2luYWwgdGFnIChpbmxpbmUpLjwvbGk+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gcGFnZWxpbWl0PSIiIC0gV2hlbiB1c2VkIHdpdGggdGhlIDxlbT5kZWZhdWx0PC9lbT4gc3VtbWFyeSBtb2RlLCBvciB0aGUgPGVtPnNlYXJjaDwvZW0+IG1vZGUsIHRoaXMgd2lsbCBsaW1pdCB0aGUgcmVzdWx0cyB0byBhIHNwZWNpZmllZCBudW1iZXIuPC9saT48bGk+PGVtPihvcHRpb25hbCk8L2VtPiByZXN1bHRwYWdlPSIiIC0gQXBwbGljYWJsZSB0byB0aGUgPGVtPnNlYXJjaDwvZW0+IGFjdGlvbiwgdGhpcyBwYXJhbWV0ZXIgYWxsb3dzIHNwZWNpZnlpbmcgd2hhdCBwYWdlIHNob3VsZCBiZSB1c2VkIGZvciBkaXNwbGF5aW5nIG1hdGNoaW5nIHJlc3VsdHMuPC9saT48L3VsPg==]]></help>
	<about><![CDATA[PGJyIC8+QXV0aG9yOiBUZWQgS3VscCAmbHQ7dGVkQHRlbjM5LmNvbSZndDs8YnIgLz48YnIgLz5WZXJzaW9uOiAxLjEyPGJyIC8+PGJyIC8+Q2hhbmdlIEhpc3Rvcnk6PGJyIC8+PHVsPgogIDxsaT4xLjEgLSBTZXB0ZW1iZXIsIDIwMDcgPGVtPihyY2FtcGJlbGxAc2tpbm55ZmlzaG1lZGlhLmNvbSk8L2VtPgogICAgPHVsPgogICAgICA8bGk+QWRkZWQgc3VwcG9ydCBmb3IgcHJldHR5IHVybHM8L2xpPgogICAgICA8bGk+RmlsbGVkIG91dCB0aGUgaGVscDwvbGk+CiAgICAgIDxsaT5BZGRlZCBhIGNhdGVnb3J5IGxpc3QgbW9kZTwvbGk+CiAgICAgIDxsaT5BZGRlZCBzdXBwb3J0IGZvciBmcm9udGVuZCBlZGl0aW5nIG9mIGNvbXBhbmllczwvbGk+CiAgICAgIDxsaT5BZGRlZCBzdXBwb3J0IGZvciBwdWJsaWMgYW5kIGFkbWluIG9ubHkgZmllbGRzIGluIGNvbXBhbmllczwvbGk+CiAgICAgIDxsaT5BZGRlZCBkaWZmZXJlbnQgc29ydGluZyBjYXBhYmlsaXRpZXMgaW4gc3VtbWFyeSB2aWV3PC9saT4KICAgICAgPGxpPkNoYW5nZWQgTWluaW11bSBDTVMgVmVyc2lvbiBhbmQgYWRkZWQgc3VwcG9ydCBmb3IgdGhlIDEuMSBzZXJpZXM8L2xpPgogICAgPC91bD4KICA8L2xpPgogIDxsaT4xLjEuMSAtIE5vdmVtYmVyLCAyMDA3IDxlbT4ocmNhbXBiZWxsQHNraW5ueWZpc2htZWRpYS5jb20pPC9lbT4KICAgIDx1bD4KICAgICAgPGxpPkZpeGVkIGEgcHJvYmxlbSB3aXRoIHRoZSBkZXRhaWwgbGlua3MgaW4gc3VtbWFyeSBtb2RlIHdoZW4gcHJldHR5IHVybHMgd2VyZSBkaXNhYmxlZC48L2xpPgogICAgPC91bD4KICA8L2xpPgogIDxsaT4xLjEuMiAtIE5vdmVtYmVyLCAyMDA3IDxlbT4ocmNhbXBiZWxsQHNraW5ueWZpc2htZWRpYS5jb20pPC9lbT4KICAgIDx1bD4KICAgICAgPGxpPk5vdyB1c2UgY21zX21vdmVfdXBsb2FkZWRfZmlsZSBpbnN0ZWFkIG9mIG1vdmVfdXBsb2FkZWRfZmlsZTwvbGk+CiAgICAgIDxsaT5SZXF1aXJlIENNUyAxLjIuMSBvciBsYXRlcjwvbGk+CiAgICA8L3VsPgogIDwvbGk+CiAgPGxpPjEuMS4zIC0gRmVicnVhcnksIDIwMDggPGVtPihyY2FtcGJlbGxAc2tpbm55ZmlzaG1lZGlhLmNvbSk8L2VtPgogICAgPHVsPgogICAgICA8bGk+QWRkcyBwYWdpbmF0aW9uIHRvIHN1bW1hcnkgdmlldzwvbGk+CiAgICAgIDxsaT5GaXhlcyBhIHByb2JsZW0gd2l0aCBwcmV0dHkgdXJscyBpbiBzdW1tYXJ5IHZpZXc8L2xpPgogICAgICA8bGk+Rml4ZXMgYSBwcm9ibGVtIHdpdGggdGhlIHNvcnQgb3JkZXIgcHJlZmVyZW5jZXM8L2xpPgogICAgICA8bGk+KF9TakcpIC0gSW1wbGVtZW50cyB0c3dcJ3MgcGF0Y2ggZm9yIGN1c3RvbSBmaWVsZHMgaW4gdGhlIHN1bW1hcnkgdGVtcGxhdGU8L2xpPgogICAgPC91bD4KICA8L2xpPgogIDxsaT4xLjEuNCAtIEp1bmUsIDIwMDggPGVtPihjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKTwvZW0+CiAgICA8dWw+CiAgICAgIDxsaT5GaXggdG8gdGhlIHRhYnM8L2xpPgogICAgICA8bGk+TWlub3IgZml4IHRvIHRoZSBzdGF0dXMgZmllbGQgd2hlbiBlZGl0aW5nIGEgY29tcGFueS48L2xpPgogICAgICA8bGk+TWlub3IgZml4IHRvIHRoZSBjaGVja2JveCBjdXN0b20gZmllbGRzIHdoZW4gZWRpdGluZyBhIGNvbXBhbnkuPC9saT4KICAgICAgPGxpPkZpeCB0byBDU1YgRXhwb3J0LjwvbGk+CiAgICAgIDxsaT5GaXggdG8gdGhlIHByZWZlcmVuY2VzIHRhYi48L2xpPgogICAgPC91bD4KICA8L2xpPgogIDxsaT4xLjEuNSAtIEp1bmUsIDIwMDggPGVtPihjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKTwvZW0+CiAgICA8dWw+CiAgICAgIDxsaT5GaXggYSBtaW5vciBpc3N1ZSB3aXRoIHByZWZlcmVuY2VzPC9saT4KICAgICAgPGxpPkZpeCBzb21lIHF1ZXJpZXMgdGhhdCB3ZXJlIG5vdCB1c2luZyBjbXNfZGJfcHJlZml4PC9saT4KICAgIDwvdWw+CiAgPC9saT4KICA8bGk+MS4xLjYgLSBKdWx5LCAyMDA4IDxlbT4oY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZyk8L2VtPgogICAgPHVsPgogICAgICA8bGk+QWRkIHRoZSBzaG93YWxsIHBhcmFtZXRlciB0byB0aGUgY2F0ZWdvcnlsaXN0IGFjdGlvbi48L2xpPgogICAgICA8bGk+U3BsaXQgb3V0IGEgY291cGxlIG9mIG1vcmUgZmlsZXMuPC9saT4KICAgIDwvdWw+CiAgPC9saT4KICA8bGk+MS4xLjcgLSBGZWJydWFyeSwgMjAwOSA8ZW0+KGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpPC9lbT4KICAgIDx1bD4KICAgICAgPGxpPkZpeGVkIGRlbGV0ZSBjb21wYW55IHN0dWZmLjwvbGk+CiAgICA8L3VsPgogIDwvbGk+CiAgPGxpPjEuMS44IC0gQXByaWwsIDIwMDkgPGVtPihjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKTwvZW0+CiAgICA8dWw+CiAgICAgIDxsaT5BZGQgTW9yZSBJbmRleGVzLjwvbGk+CiAgICA8L3VsPgogIDwvbGk+CiAgPGxpPjEuMiAtIE1heSwgMjAwOSA8ZW0+KGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpPC9lbT4KICAgIDx1bD4KICAgICAgPGxpPkFkZGVkIGxhdGl0dWRlIGFuZCBsb25naXR1ZGUgZmllbGRzLjwvbGk+CiAgICAgIDxsaT5BZGRlZCBjYXBhYmlsaXR5IHRvIGxvb2t1cCBsYXR0aXR1ZGUgYW5kIGxvbmdpdHVkZSBpZiBDR0dvb2dsZU1hcCBpcyBpbnN0YWxsZWQuPC9saT4KICAgICAgPGxpPkFkZGVkIHNlYXJjaCBmdW5jdGlvbmFsaXR5LCB3aXRoIHppcGNvZGUgbG9va3VwIChyZXF1aXJlcyB0aGUgcG9zdGNvZGUgbW9kdWxlKS48L2xpPgogICAgICA8bGk+QWRkZWQgZXhwb3J0IHRvIGNzdiBmdW5jdGlvbmFsaXR5LjwvbGk+CiAgICAgIDxsaT5SZXdyaXRlIGltcG9ydCBmcm9tIGNzdiBmdW5jdGlvbmFsaXR5LjwvbGk+CiAgICA8L3VsPgogIDwvbGk+CiAgPGxpPjEuMyAtIEp1bHksIDIwMDkgPGVtPihjYWxndXkxMDAwQGhvdG1haWwuY29tKTwvZW0+CiAgICA8dWw+CiAgICAgIDxsaT5BZGRlZCBzdXBwb3J0IGZvciBwcmV0dHkgdXJsczwvbGk+CiAgICAgIDxsaT5GaWxsZWQgb3V0IHRoZSBoZWxwPC9saT4KICAgICAgPGxpPkFkZGVkIGEgY2F0ZWdvcnkgbGlzdCBtb2RlPC9saT4KICAgICAgPGxpPkFkZGVkIHN1cHBvcnQgZm9yIGZyb250ZW5kIGVkaXRpbmcgb2YgY29tcGFuaWVzPC9saT4KICAgICAgPGxpPkFkZGVkIHN1cHBvcnQgZm9yIHB1YmxpYyBhbmQgYWRtaW4gb25seSBmaWVsZHMgaW4gY29tcGFuaWVzPC9saT4KICAgICAgPGxpPkFkZGVkIGRpZmZlcmVudCBzb3J0aW5nIGNhcGFiaWxpdGllcyBpbiBzdW1tYXJ5IHZpZXc8L2xpPgogICAgICA8bGk+Q2hhbmdlZCBNaW5pbXVtIENNUyBWZXJzaW9uIGFuZCBhZGRlZCBzdXBwb3J0IGZvciB0aGUgMS4xIHNlcmllczwvbGk+CiAgICA8L3VsPgogIDwvbGk+CiAgPGxpPjEuMy4yIC0gQXVndXN0LCAyMDA5IDxlbT4oY2FsZ3V5MTAwMEBob3RtYWlsLmNvbSk8L2VtPgogICAgPHVsPgogICAgICA8bGk+Rml4IG1pbm9yIGVycm9yIGluIHRoZSBpbnN0YWxsZXIuPC9saT4KICAgICAgPGxpPkluIHN1bW1hcnkgbW9kZSwgZW5zdXJlIHRoYXQgYSBjb21wYW55IGlzIG9ubHkgb3V0cHV0IG9uY2UuPC9saT4KICAgIDwvdWw+ICAKICA8L2xpPgogIDxsaT4xLjMuMyAtIEF1Z3VzdCwgMjAwOSA8ZW0+KGNhbGd1eTEwMDBAaG90bWFpbC5jb20pPC9lbT4KICAgIDx1bD4KICAgICAgPGxpPkZpeCBlcnJvcnMgd2l0aCBlbnRpdGllcyBpbiBmcm9udGVuZCB3eXNpd3lncy48L2xpPgogICAgICA8bGk+Rml4IGVycm9yIGluIGJvdW5kaW5nIGJveCBjYWxjdWxhdGlvbi48L2xpPgogICAgICA8bGk+TnVtZXJvdXMgb3RoZXIgc21hbGwgYnVnIGZpeGVzLjwvbGk+CiAgICA8L3VsPiAgCiAgPC9saT4KICA8bGk+MS4zLjQgLSBTZXB0ZW1iZXIsIDIwMDkgPGVtPihjYWxndXkxMDAwQGhvdG1haWwuY29tKTwvZW0+CiAgICA8dWw+CiAgICAgIDxsaT5GaXggc29tZSBtb3JlIHNtYWxsIGlzc3VlcyB3aXRoIGZyb250ZW5kIHN1Ym1pdDwvbGk+CiAgICA8L3VsPiAgCiAgPC9saT4KICA8bGk+MS40IC0gT2N0LCAyMDA5IDxlbT4oY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZyk8L2VtPgogICAgPHVsPgogICAgIDxsaT5BZGRlZCBLTUwgSW1wb3J0PC9saT4KICAgICA8bGk+TWlub3IgYnVnIGZpeGVzLjwvbGk+CiAgICA8L3VsPgogIDwvbGk+CiAgPGxpPjEuNC4xIC0gT2N0b2JlciwgMjAwOSA8ZW0+KGNhbGd1eTEwMDBAaG90bWFpbC5jb20pPC9lbT4KICAgIDx1bD4KICAgICAgPGxpPkFkZHMgYWJpbGl0eSB0byBpbXBvcnQgZmllbGRzIGZyb20gS01MLjwvbGk+CiAgICAgIDxsaT5BZGRzIGZpZWxkIHR5cGUgdG8gdGhlIG91dHB1dCBmb3IgY3VzdG9tIGZpZWxkcy48L2xpPgogICAgPC91bD4gIAogIDwvbGk+CiAgPGxpPjEuNSAtIEphbnVhcnksIDIwMTAKICAgIDx1bD4KICAgICAgPGxpPkFkZHMgdGhlIGFiaWxpdHkgZm9yIGZyb250ZW5kIHVzZXJzIHRvIGFkZC9lZGl0L2RlbGV0ZSB0aGVpciBvd24gY29tcGFueSBsaXN0aW5ncy48L2xpPgogICAgPC91bD4KICA8L2xpPgogIDxsaT4xLjUuMSAtIEphbnVhcnksIDIwMTAKICAgIDx1bD4KICAgICAgPGxpPkFkZHMgdGhlIGFiaWxpdHkgdG8gYnJvd3NlIGJ5IGhpZXJhcmNoeS48L2xpPgogICAgPC91bD4KICA8L2xpPgogIDxsaT4xLjUuMiAtIEphbnVhcnksIDIwMTAKICAgIDx1bD4KICAgICAgPGxpPlJld3JpdGUgb2YgQ1NWIGltcG9ydCBzdHVmZi48L2xpPgogICAgICA8bGk+QWRkcyBmcm9udGVuZCBpbXBvcnRpbmcgZnJvbSBjc3YuPC9saT4KICAgICAgPGxpPkFkZHMgZnJvbnRlbmQgZGVsZXRlIGFjdGlvbi48L2xpPgogICAgPC91bD4KICA8L2xpPgogIDxsaT4xLjUuMyAtIE1hcmNoLCAyMDEwCiAgICA8dWw+CiAgICAgIDxsaT5JbXByb3ZlbWVudHMgdG8gc2VhcmNoLjwvbGk+CiAgICAgIDxsaT5NaW5vciBidWcgZml4ZXMuPC9saT4KICAgIDwvdWw+CiAgPC9saT4KICA8bGk+MS41LjQgLSBNYXksIDIwMTAKICAgIDx1bD4KICAgICAgPGxpPkFkZHMgc29ydGluZyBieSBwdWJsaWMgY3VzdG9tIGZpZWxkcy48L2xpPgogICAgPC91bD4KICA8L2xpPgogIDxsaT4xLjUuNSAtIE1heSwgMjAxMAogICAgPHVsPgogICAgICA8bGk+TWlub3IgYnVnIGZpeGVzLjwvbGk+CiAgICA8L3VsPgogIDwvbGk+CiAgPGxpPjEuNS43IC0gTWF5LCAyMDEwCiAgICA8dWw+CiAgICAgIDxsaT5NaW5vciBidWcgZml4ZXMuPC9saT4KICAgIDwvdWw+CiAgPC9saT4KICA8bGk+MS41LjggLSBNYXksIDIwMTAKICAgIDx1bD4KICAgICAgPGxpPkFkZHMgY2F0ZWdvcnkgaW5mb3JtYXRpb24gZm9yIGVhY2ggbWF0Y2hpbmcgcHJvZHVjdCBpbiBzdW1tYXJ5IHZpZXcuPC9saT4KICAgIDwvdWw+CiAgPC9saT4KICA8bGk+MS42IC0gSnVuZSwgMjAxMAogICAgPHVsPgogICAgICA8bGk+Rml4ZXMgYSBtaW5vciBpc3N1ZSB3aXRoIHRoZSBzZWFyY2ggZnVuY3Rpb24gKGNvcHkvcGFzdGUgZXJyb3IpPC9saT4KICAgICAgPGxpPkFkZHMgY29tcGFueSBuYW1lIGluZm9ybWF0aW9uIHRvIHRoZSBkZXRhaWwgdXJsLjwvbGk+CiAgICAgIDxsaT5BZGRzICZxdW90O2JhY2smcXVvdDsgbGluayB0byB0aGUgc2V0dGluZ3MgYW5kIHRlbXBsYXRlIHBhZ2VzLjwvbGk+CiAgICAgIDxsaT5BZGRzIGZ1bmN0aW9uYWxpdHkgdG8gYWxsb3cgZHVwbGljYXRpbmcgYSBjb21wYW55IHJlY29yZC48L2xpPgogICAgPC91bD4KICA8L2xpPgogIDxsaT4xLjYuMSAtIEp1bmUsIDIwMTAKICAgIDx1bD4KICAgICAgPGxpPkFkZHMgZXh0cmEgZmllbGRzIHRvIGNhdGVnb3JpZXMuPC9saT4KICAgIDwvdWw+CiAgPC9saT4KICA8bGk+MS42LjIgLSBKdWx5LCAyMDEwCiAgICA8dWw+CiAgICAgIDxsaT5NaW5vciBidWcgZml4ZXMuPC9saT4KICAgIDwvdWw+CiAgPC9saT4KICA8bGk+MS42LjMgLSBKdWx5LCAyMDEwCiAgICA8dWw+CiAgICAgIDxsaT5NaW5vciBidWcgZml4ZXMuPC9saT4KICAgIDwvdWw+CiAgPC9saT4KICA8bGk+MS42LjQgLSBKdWx5LCAyMDEwCiAgICA8dWw+CiAgICAgIDxsaT5Tb3J0IGZpZWxkIGRlZmluaXRpb25zIGJ5IG5hbWUuPC9saT4KICAgICAgPGxpPkFkZHMgY2F0ZWdvcnkgc3BlY2lmaWMgZXh0cmExLGV4dHJhMixleHRyYTMgZmllbGRzIGFzc29jaWF0ZWQgd2l0aCBDb21wYW5pZXMuPC9saT4KICAgIDwvdWw+CiAgPC9saT4KICA8bGk+MS42LjUgLSBBdWd1c3QsIDIwMTAKICAgIDx1bD4KICAgICAgPGxpPkFkZHMgaWQgb3B0aW9uIHRvIHNvcnRieS48L2xpPgogICAgPC91bD4KICA8L2xpPgogIDxsaT4xLjYuNyAtIEF1Z3VzdCwgMjAxMAogICAgPHVsPgogICAgICA8bGk+QWRkcyBpbnRlZ2VyIHNvcnRpbmcgYnkgdGhlIHNvcnRieT1mOmZpZWxkX25hbWUgc3R1ZmYuPC9saT4KICAgICAgPGxpPk1pbm9yIGltcHJvdmVtZW50IHRvIHRoZSBzZWFyY2ggc3R1ZmYgd3J0IGNhdGVnb3JpZXMuPC9saT4KICAgICAgPGxpPlNvcnQgdGhlIGNhdGVnb3JpZXMgb3V0cHV0IHRvIHRoZSBzZWFyY2ggZm9ybS48L2xpPgogICAgPC91bD4KICA8L2xpPgogIDxsaT4xLjYuOCAtIFNlcHRlbWJlciwgMjAxMAogICAgPHVsPgogICAgICA8bGk+Rml4ZXMgdG8gc2VhcmNoIGFjdGlvbi48L2xpPgogICAgPC91bD4KICA8L2xpPgogIDxsaT4xLjYuOSAtIFNlcHRlbWJlciwgMjAxMAogICAgPHVsPgogICAgICA8bGk+Q1NWIEltcG9ydCBJbXByb3ZlbWVudHMuPC9saT4KICAgIDwvdWw+CiAgPC9saT4KICA8bGk+MS43IC0gU2VwdGVtYmVyLCAyMDEwCiAgICA8dWw+CiAgICAgIDxsaT5BZGRzIGhpZXJhcmNoeSBjYXBhYmlsaXRpZXMgdG8gc2VhcmNoIGFjdGlvbi48L2xpPgogICAgPC91bD4KICA8L2xpPgogIDxsaT4xLjcuMiAtIFNlcHRlbWJlciwgMjAxMAogICAgPHVsPgogICAgICA8bGk+QWRkcyB0aGUgYWJpbGl0eSB0byBkbyBhIExJS0Ugc2VhcmNoIG9uIHRoZSBhZGRyZXNzIGZpZWxkIHdoZW4gZG9pbmcgYSBwb3N0Y29kZSBzZWFyY2guPC9saT4KICAgIDwvdWw+CiAgPC9saT4KICA8bGk+MS43LjMgLSBKYW51YXJ5LCAyMDExCiAgIDx1bD4KICAgICA8bGk+TWFueSBtaW5vciBidWcgZml4ZXMsIGluY2x1ZGluZyBjaGFuZ2VzIHRvIHdvcmsgd2l0aCBuZXcgQ0dHTTwvbGk+CiAgIDwvdWw+CiAgPC9saT4KICA8bGk+MS44IC0gSmFudWFyeSwgMjAxMQogICA8dWw+CiAgIDxsaT5BZGRzIHN1cHBvcnQgZm9yIGNvbXBhbnkgVVJMUyAoYWxhIENNU01TIDEuOSkgd2hlbiBjb21wYW5pZXMgYXJlIHVwZGF0ZWQgZnJvbSB0aGUgYWRtaW4gaW50ZXJmYWNlLjwvbGk+CiAgIDxsaT5BZGRzIHN1cHBvcnQgZm9yIGRvaW5nIGEgMzAxIHJlZGlyZWN0IHRvIHRoZSBuZXcgVVJMIGlmIGEgY29tcGFueSBpcyBhY2Nlc3NlZCB2aWEgdGhlIG9sZCBVUkwgYW5kIGEgbmV3IFVSTCBleGlzdHMuPC9saT4KICAgPGxpPkFkZHMgdGhlIGFiaWxpdHkgdG8gcGFzcyB0aGUgbGF0aXR1ZGUgYW5kIGxvbmdpdHVkZSBpbiB0byB0aGUgc2VhcmNoLjwvbGk+CiAgIDwvdWw+CiAgPC9saT4KICA8bGk+MS44LjEgLSBNYXJjaCwgMjAxMQogICA8dWw+CiAgIDxsaT5CdWcgZml4ZXMuPC9saT4KICAgPC91bD4KICA8L2xpPgogIDxsaT4xLjguMiAtIE1hcmNoLCAyMDExCiAgIDx1bD4KICAgPGxpPkFkZHMgJGVudHJ5LT5maWVsZHMgdG8gdGhlIGRldGFpbCBhbmQgc3VtbWFyeSB2aWV3cy48L2xpPgogICA8bGk+T2ZmaWNpYWxseSBkZXByZWNhdGUgdGhlIGN1c3RvbWZpZWxkc2J5bmFtZSBzdHVmZi48L2xpPgogICA8bGk+QWRkICRlbnRyeS0+Y2Fub25pY2FsIHRvIHRoZSBkZXRhaWwgdmlldy48L2xpPgogICA8L3VsPgogIDwvbGk+CiAgPGxpPjEuOSAtIEF1Z3VzdCwgMjAxMQogICA8dWw+CiAgIDxsaT5BZGRzIHRoZSBhYmlsaXR5IHRvIHVwZGF0ZSBjb21wYW55IHJlY29yZHMgdmlhIGNzdiBmaWxlcy48L2xpPgogICA8L3VsPgogIDwvbGk+CiAgPGxpPjEuMTAgLSBTZXB0ZW1iZXIsIDIwMTEKICAgPHVsPgogICA8bGk+QWRkcyBuZXcgZmlsdGVyLCBxdWVyeSwgYW5kIHBhZ2luYXRpb24gY2xhc3Nlcy48L2xpPgogICA8bGk+QWRkcyB0aGUgYWJpbGl0eSB0byBwcmVsb2FkIGZpZWxkIGFuZCBjYXRlZ29yeSBpbmZvcm1hdGlvbiBmb3Igc2VsZWN0ZWQgY29tcGFuaWVzLjwvbGk+CiAgIDxsaT5SZXdyaXRlIHN1bW1hcnkgdmlldyB0byB1c2UgbmV3IGNsYXNzZXMuPC9saT4KICAgPGxpPlJlbW92ZXMgdGhlIGNhdGVnb3J5IGZvcm0gZnJvbSB0aGUgc3VtbWFyeSB2aWV3Li4uIG1hbnkgYmV0dGVyIHdheXMgdG8gaGFuZGxlIHRoaXMuPC9saT4KICAgPC91bD4KICA8L2xpPgogIDxsaT4xLjEwLjEgLSBTZXB0ZW1iZXIsIDIwMTEKICAgPHVsPgogICA8bGk+TWlub3IgYnVnIGZpeGVzLjwvbGk+CiAgIDwvdWw+CiAgPC9saT4KICA8bGk+MS4xMC4xMCAtIE5vdmVtYmVyLCAyMDExCiAgIDx1bD4KICAgPGxpPkZpeGVzIGFuIGlzc3VlIHdpdGggaW1hZ2UgdXBsb2FkIGZpZWxkcyB3aGVuIGVkaXRpbmcgY29tcGFuaWVzLjwvbGk+CiAgIDwvdWw+CiAgPC9saT4KICA8bGk+MS4xMC4xMSAtIE5vdmVtYmVyLCAyMDExCiAgIDx1bD4KICAgICA8bGk+Q2F0ZWdvcnkgbmFtZXMgbXVzdCBub3cgb25seSBoYXZlIHZhbGlkIGNoYXJzLjwvbGk+CiAgICAgPGxpPk1pbm9yIGZpeGVzLjwvbGk+IAogICA8L3VsPgogIDxsaT4gIAogIDxsaT4xLjExIC0gRGVjZW1iZXIsIDIwMTEKICAgPHVsPgogICAgIDxsaT5NaW5vciBidWcgZml4ZXMuPC9saT4KICAgICA8bGk+SW1wcm92ZW1lbnRzIHRvIHRoZSBkZXRhaWwgdmlldyAoc29tZSB0ZW1wbGF0ZXMgbWF5IG5lZWQgY2hhbmdpbmcpLjwvbGk+CiAgIDwvdWw+CiAgPC9saT4KICA8bGk+MS4xMiAtIERlY2VtYmVyLCAyMDExCiAgIDx1bD4KICAgICA8bGk+TWlub3IgYnVnIGZpeGVzLjwvbGk+CiAgICAgPGxpPkFkZHMgZmlsdGVyaW5nIHRvIHRoZSBjb21wYW55IGxpc3QgaW4gdGhlIGFkbWluIGludGVyZmFjZS48L2xpPgogICAgIDxsaT5BZGRzIHRoZSBjYXRlZ29yeTIgYW5kIGNhdGVnb3J5MyBwYXJhbWV0ZXJzLjwvbGk+CiAgICAgPGxpPkFkZHMgdGhlIGFiaWxpdHkgdG8gc3BlY2lmeSBhIGNhdGVnb3J5IE9SIGEgaGllciBwYXJhbWV0ZXIgdG8gdGhlIGNhdGVnb3J5bGlzdCB2aWV3LjwvbGk+CiAgIDwvdWw+CiAgPC9saT4KPC91bD4KPGJyIC8+]]></about>
	<description><![CDATA[A directory like module for companies.  Allows adding/editing/importing/exporting company definitions, and various ways of displaying the company entries including search.  This module integrates well with CGGoogleMaps.]]></description>
	<requires>
	  <requiredname>CGExtensions</requiredname>
	  <requiredversion>1.23</requiredversion>
	</requires>
	<requires>
	  <requiredname>CGSimpleSmarty</requiredname>
	  <requiredversion>1.4.4</requiredversion>
	</requires>
	<requires>
	  <requiredname>JQueryTools</requiredname>
	  <requiredversion>1.0.10</requiredversion>
	</requires>
	<file>
	  <filename>/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/action.addcategory.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmICghaXNzZXQoJGdDbXMpKSBleGl0OwoKaWYgKCEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdNb2RpZnkgQ29tcGFueSBEaXJlY3RvcnknKSkKewoJZWNobyAkdGhpcy0+U2hvd0Vycm9ycygkdGhpcy0+TGFuZygnbmVlZHBlcm1pc3Npb24nLCBhcnJheSgnTW9kaWZ5IENvbXBhbnkgRGlyZWN0b3J5JykpKTsKCXJldHVybjsKfQoKaWYgKGlzc2V0KCRwYXJhbXNbJ2NhbmNlbCddKSkKewoJJHRoaXMtPlJlZGlyZWN0KCRpZCwgJ2FkbWluX3NldHRpbmdzJywgJHJldHVybmlkKTsKfQoKJGNvbmZpZyA9IGNtc21zKCktPkdldENvbmZpZygpOwokdXNlcmlkID0gZ2V0X3VzZXJpZCgpOwokY2F0aWQgPSAnJzsKJHRtcGRpciA9ICcnOwokZGVzdGRpciA9ICcnOwokaW1hZ2UgPSAnJzsKJGRlc2NyaXB0aW9uID0gJyc7CiRuYW1lID0gJyc7CmlmIChpc3NldCgkcGFyYW1zWyduYW1lJ10pKQp7CiAgJG5hbWUgPSB0cmltKCRwYXJhbXNbJ25hbWUnXSk7Cn0KCmlmKCBpc3NldCgkcGFyYW1zWydkZXNjcmlwdGlvbiddKSApCnsKICAkZGVzY3JpcHRpb24gPSAkcGFyYW1zWydkZXNjcmlwdGlvbiddOwp9CgokZXh0cmExID0gJyc7CmlmKCBpc3NldCgkcGFyYW1zWydleHRyYTEnXSkgKQogIHsKICAgICRleHRyYTEgPSAkcGFyYW1zWydleHRyYTEnXTsKICB9CgokZXh0cmEyID0gJyc7CmlmKCBpc3NldCgkcGFyYW1zWydleHRyYTInXSkgKQogIHsKICAgICRleHRyYTIgPSAkcGFyYW1zWydleHRyYTInXTsKICB9CgokZXh0cmEzID0gJyc7CmlmKCBpc3NldCgkcGFyYW1zWydleHRyYTMnXSkgKQogIHsKICAgICRleHRyYTMgPSAkcGFyYW1zWydleHRyYTMnXTsKICB9CgppZiAoaXNzZXQoJHBhcmFtc1snc3VibWl0J10pKQp7CiAgJGVycm9yID0gJyc7CiAgaWYoICRuYW1lID09ICcnICkKCXsKCSAgJGVycm9yID0gJHRoaXMtPkxhbmcoJ25vbmFtZWdpdmVuJyk7Cgl9CgogIGlmKCAkZXJyb3IgPT0gJycgJiYgcHJlZ19tYXRjaCgnL1teXHcgXS8nLCRuYW1lKSApCgl7CgkgICRlcnJvciA9ICR0aGlzLT5MYW5nKCdiYWRuYW1lZ2l2ZW4nKTsKCX0KCSAgCiAgaWYoICEkZXJyb3IgKQoJewoJICAvLyBoYW5kbGUgaW1hZ2UgdXBsb2FkLgoJICAkdG1wZGlyID0gY21zX2pvaW5fcGF0aCgkY29uZmlnWyd1cGxvYWRzX3BhdGgnXSwnY29tcGFueWRpcmVjdG9yeScsJ3UnLiR1c2VyaWQpOwoJICAkdXBsb2FkZXIgPSBjZ2Vfc2V0dXA6OmdldF91cGxvYWRlcigkaWQsJHRtcGRpcik7CgkgICR0bXAgPSAkdXBsb2FkZXItPmNoZWNrX3VwbG9hZCgnaW1hZ2UnLEZBTFNFLEZBTFNFKTsKCSAgaWYoICEkdG1wICYmICR1cGxvYWRlci0+Z2V0X2Vycm9yKCkgIT0gY2dfZmlsZXVwbG9hZDo6Tk9GSUxFICkKCQl7CgkJICAkZXJyb3IgPSAkdGhpcy0+R2V0VXBsb2FkRXJyb3JNZXNzYWdlKCR1cGxvYWRlci0+Z2V0X2Vycm9yKCkpOwoJCX0KCSAgZWxzZQoJCXsKCQkgIGNnZV9kaXI6Om1rZGlycigkdG1wZGlyKTsKCQkgICRpbWFnZSA9ICR1cGxvYWRlci0+aGFuZGxlX3VwbG9hZCgnaW1hZ2UnKTsKCQkgIGlmKCAhJGltYWdlICYmICR1cGxvYWRlci0+Z2V0X2Vycm9yKCkgIT0gY2dfZmlsZXVwbG9hZDo6Tk9GSUxFICkKCQkJewoJCQkgICRlcnJvciA9ICR0aGlzLT5HZXRVcGxvYWRFcnJvck1lc3NhZ2UoJHVwbG9hZGVyLT5nZXRfZXJyb3IoKSk7CgkJCX0KCQkgIGlmKCAkaW1hZ2UgPT09IDAgKSAkaW1hZ2UgPSAnJzsKCQl9Cgl9CgogIGlmKCAhJGVycm9yICkKCXsKCSAgJHF1ZXJ5ID0gJ0lOU0VSVCBJTlRPICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfY29tcGRpcl9jYXRlZ29yaWVzIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgKG5hbWUsIGltYWdlLCBkZXNjcmlwdGlvbiwgZXh0cmExLCBleHRyYTIsIGV4dHJhMywgY3JlYXRlX2RhdGUsIG1vZGlmaWVkX2RhdGUpIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgVkFMVUVTICg/LD8sPyw/LD8sPyxOT1coKSxOT1coKSknOwoJICAkZGJyID0gJGRiLT5FeGVjdXRlKCRxdWVyeSwgYXJyYXkoJG5hbWUsICRpbWFnZSwgJGRlc2NyaXB0aW9uLCAkZXh0cmExLCAkZXh0cmEyLCAkZXh0cmEzKSApOwoJICAKCSAgaWYoICEkZGJyICkgCgkJJGVycm9yID0gJGRiLT5FcnJvck1zZygpLicgLS0gJy4kZGItPnNxbDsKCSAgZWxzZQoJCSRjYXRpZCA9ICRkYi0+SW5zZXJ0X0lEKCk7CgkgIAoJfQogIAogIC8vIG1vdmUgaW1hZ2VzIGludG8gZmluYWwgZGVzdGluYXRpb25zCiAgaWYoICEkZXJyb3IgJiYgJGNhdGlkICYmICRpbWFnZSAmJiAkdG1wZGlyICYmIGlzX2RpcigkdG1wZGlyKSkKCXsKCSAgJGRlc3RkaXIgPSBjbXNfam9pbl9wYXRoKCRjb25maWdbJ3VwbG9hZHNfcGF0aCddLCdjb21wYW55ZGlyZWN0b3J5JywnY2F0Jy4kY2F0aWQpOwoJICBjZ2VfZGlyOjpta2RpcnIoJGRlc3RkaXIpOwoKCSAgJGZpbGVzID0gZ2xvYigkdG1wZGlyLicvKi4qJyk7CgkgIGZvcmVhY2goICRmaWxlcyBhcyAkZmlsZSApCgkJewoJCSAgJGJuID0gYmFzZW5hbWUoJGZpbGUpOwoJCSAgQHJlbmFtZSgkZmlsZSxjbXNfam9pbl9wYXRoKCRkZXN0ZGlyLCRibikpOwoJCX0KCSAgY2dlX2Rpcjo6cmVjdXJzaXZlX3JtZGlyKCR0bXBkaXIpOwoJICAkdG1wZGlyID0gJyc7Cgl9CgogIGlmKCAhJGVycm9yICkKCXsKCSAgLy8gbm8gZXJyb3JzLCBnZXQgb3V0YSBoZXJlLgoJICAkcGFyYW1zID0gYXJyYXkoJ3RhYl9tZXNzYWdlJz0+ICdjYXRlZ29yeWFkZGVkJywgJ2FjdGl2ZV90YWInID0+ICdjYXRlZ29yaWVzJyk7CgkgICR0aGlzLT5SZWRpcmVjdCgkaWQsICdhZG1pbl9zZXR0aW5ncycsICRyZXR1cm5pZCwgJHBhcmFtcyk7Cgl9CgogIC8vIGRpc3BsYXkgZXJyb3JzCiAgaWYoICR0bXBkaXIgJiYgaXNfZGlyKCR0bXBkaXIpICkKCXsKCSAgY2dlX2Rpcjo6cmVjdXJzaXZlX3JtZGlyKCR0bXBkaXIpOwoJfQogIGVjaG8gJHRoaXMtPlNob3dFcnJvcnMoJGVycm9yKTsKfQoKI0Rpc3BsYXkgdGVtcGxhdGUKJHNtYXJ0eS0+YXNzaWduKCdzdGFydGZvcm0nLCAkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0KCRpZCwgJ2FkZGNhdGVnb3J5JywgJHJldHVybmlkLCdwb3N0JywnbXVsdGlwYXJ0L2Zvcm0tZGF0YScpKTsKJHNtYXJ0eS0+YXNzaWduKCdlbmRmb3JtJywgJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7CiRzbWFydHktPmFzc2lnbignbmFtZXRleHQnLCAkdGhpcy0+TGFuZygnbmFtZScpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbWFnZScsJGltYWdlKTsKJHNtYXJ0eS0+YXNzaWduKCdkZXNjcmlwdGlvbicsJGRlc2NyaXB0aW9uKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dG5hbWUnLCAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwgJ25hbWUnLCAkbmFtZSwgMzAsIDI1NSkpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0ZXh0cmExJywgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsICdleHRyYTEnLCAkZXh0cmExLCAzMCwgMjU1KSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRleHRyYTInLCAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwgJ2V4dHJhMicsICRleHRyYTIsIDMwLCAyNTUpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dGV4dHJhMycsICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCAnZXh0cmEzJywgJGV4dHJhMywgMzAsIDI1NSkpOwokc21hcnR5LT5hc3NpZ24oJ2hpZGRlbicsICcnKTsKJHNtYXJ0eS0+YXNzaWduKCdzdWJtaXQnLCAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCAnc3VibWl0JywgbGFuZygnc3VibWl0JykpKTsKJHNtYXJ0eS0+YXNzaWduKCdjYW5jZWwnLCAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCAnY2FuY2VsJywgbGFuZygnY2FuY2VsJykpKTsKJGNnZ20gPSBjZ2VfdXRpbHM6OmdldF9tb2R1bGUoJ0NHR29vZ2xlTWFwcycpOwppZiggJGNnZ20gKQogIHsKCSRzbWFydHktPmFzc2lnbignY2FuX2dlb2NvZGUnLDEpOwogIH0KCmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSgnZWRpdGNhdGVnb3J5LnRwbCcpOwoKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.addcompany.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmICghaXNzZXQoJGdDbXMpKSBleGl0OwoKaWYgKCEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdNb2RpZnkgQ29tcGFueSBEaXJlY3RvcnknKSkKewoJZWNobyAkdGhpcy0+U2hvd0Vycm9ycygkdGhpcy0+TGFuZygnbmVlZHBlcm1pc3Npb24nLCBhcnJheSgnTW9kaWZ5IENvbXBhbnkgRGlyZWN0b3J5JykpKTsKCXJldHVybjsKfQoKaWYgKGlzc2V0KCRwYXJhbXNbJ2NhbmNlbCddKSkKewoJJHRoaXMtPlJlZGlyZWN0KCRpZCwgJ2RlZmF1bHRhZG1pbicsICRyZXR1cm5pZCk7Cn0KCiRjb21wYW55X25hbWUgPSAnJzsKaWYgKGlzc2V0KCRwYXJhbXNbJ2NvbXBhbnlfbmFtZSddKSkKewoJJGNvbXBhbnlfbmFtZSA9ICRwYXJhbXNbJ2NvbXBhbnlfbmFtZSddOwp9CgokdXJsID0gJyc7CmlmIChpc3NldCgkcGFyYW1zWyd1cmwnXSkpCnsKCSR1cmwgPSAkcGFyYW1zWyd1cmwnXTsKfQoKJGFkZHJlc3MgPSAnJzsKaWYgKGlzc2V0KCRwYXJhbXNbJ2FkZHJlc3MnXSkpCnsKCSRhZGRyZXNzID0gJHBhcmFtc1snYWRkcmVzcyddOwp9CgokbGF0aXR1ZGUgPSAnJzsKaWYgKGlzc2V0KCRwYXJhbXNbJ2xhdGl0dWRlJ10pKQp7CgkkbGF0aXR1ZGUgPSAkcGFyYW1zWydsYXRpdHVkZSddOwp9CgokbG9uZ2l0dWRlID0gJyc7CmlmIChpc3NldCgkcGFyYW1zWydsb25naXR1ZGUnXSkpCnsKCSRsb25naXR1ZGUgPSAkcGFyYW1zWydsb25naXR1ZGUnXTsKfQoKJGhpZXJwb3MgPSAnJzsKaWYoIGlzc2V0KCRwYXJhbXNbJ2hpZXJwb3MnXSkgKQp7CiAgJGhpZXJwb3MgPSAoaW50KSRwYXJhbXNbJ2hpZXJwb3MnXTsKfQoKJHRlbGVwaG9uZSA9ICcnOwppZiAoaXNzZXQoJHBhcmFtc1sndGVsZXBob25lJ10pKQp7CgkkdGVsZXBob25lID0gJHBhcmFtc1sndGVsZXBob25lJ107Cn0KCiRmYXggPSAnJzsKaWYgKGlzc2V0KCRwYXJhbXNbJ2ZheCddKSkKewoJJGZheCA9ICRwYXJhbXNbJ2ZheCddOwp9CgokY29udGFjdF9lbWFpbCA9ICcnOwppZiAoaXNzZXQoJHBhcmFtc1snY29udGFjdF9lbWFpbCddKSkKewoJJGNvbnRhY3RfZW1haWwgPSAkcGFyYW1zWydjb250YWN0X2VtYWlsJ107Cn0KCiR3ZWJzaXRlID0gJyc7CmlmIChpc3NldCgkcGFyYW1zWyd3ZWJzaXRlJ10pKQp7Cgkkd2Vic2l0ZSA9ICRwYXJhbXNbJ3dlYnNpdGUnXTsKfQoKJGRldGFpbHMgPSAnJzsKaWYgKGlzc2V0KCRwYXJhbXNbJ2RldGFpbHMnXSkpCnsKCSRkZXRhaWxzID0gJHBhcmFtc1snZGV0YWlscyddOwp9Cgokc3RhdHVzID0gJyc7CmlmIChpc3NldCgkcGFyYW1zWydzdGF0dXMnXSkpCnsKCSRzdGF0dXMgPSAkcGFyYW1zWydzdGF0dXMnXTsKfQoKJG93bmVyX2lkID0gLTE7CmlmIChpc3NldCgkcGFyYW1zWydvd25lcl9pZCddKSkKewogICRvd25lcl9pZCA9ICRwYXJhbXNbJ293bmVyX2lkJ107Cn0KCiRmaWVsZGRlZnMgPSAkdGhpcy0+R2V0RmllbGREZWZzKHRydWUpOwoKZnVuY3Rpb24gaGFuZGxlX2luaXRpYWxfdXBsb2FkKCRpZCwgJGZpZWxkbmFtZSkKewoJZ2xvYmFsICRnQ21zOwoJJGNvbmZpZyA9ICRnQ21zLT5HZXRDb25maWcoKTsKCglpZiAoIWlzX2RpcigkY29uZmlnWyd1cGxvYWRzX3BhdGgnXSAuIERJUkVDVE9SWV9TRVBBUkFUT1IgLiAnY29tcGFueWRpcmVjdG9yeScpKSB7CgkJQG1rZGlyKCRjb25maWdbJ3VwbG9hZHNfcGF0aCddIC4gRElSRUNUT1JZX1NFUEFSQVRPUiAuICdjb21wYW55ZGlyZWN0b3J5Jyk7Cgl9CglpZiAoIWlzX2RpcigkY29uZmlnWyd1cGxvYWRzX3BhdGgnXSAuIERJUkVDVE9SWV9TRVBBUkFUT1IgLiAnY29tcGFueWRpcmVjdG9yeScgLiBESVJFQ1RPUllfU0VQQVJBVE9SIC4gJ3RtcCcpKSB7CgkJQG1rZGlyKCRjb25maWdbJ3VwbG9hZHNfcGF0aCddIC4gRElSRUNUT1JZX1NFUEFSQVRPUiAuICdjb21wYW55ZGlyZWN0b3J5JyAuIERJUkVDVE9SWV9TRVBBUkFUT1IgLiAndG1wJyk7Cgl9CgkKCUBjbXNfbW92ZV91cGxvYWRlZF9maWxlKCRfRklMRVNbJGlkIC4gJGZpZWxkbmFtZV1bJ3RtcF9uYW1lJ10sICRjb25maWdbJ3VwbG9hZHNfcGF0aCddIC4gRElSRUNUT1JZX1NFUEFSQVRPUiAuICdjb21wYW55ZGlyZWN0b3J5JyAuIERJUkVDVE9SWV9TRVBBUkFUT1IgLiAndG1wJyAuIERJUkVDVE9SWV9TRVBBUkFUT1IgLiBiYXNlbmFtZSgkX0ZJTEVTWyRpZCAuICRmaWVsZG5hbWVdWyduYW1lJ10pKTsKCQoJcmV0dXJuIGJhc2VuYW1lKCRfRklMRVNbJGlkIC4gJGZpZWxkbmFtZV1bJ25hbWUnXSk7Cn0KCmZ1bmN0aW9uIGhhbmRsZV90bXBfdXBsb2FkKCRpZCwgJGl0ZW1pZCwgJGZpbGVuYW1lKQp7CglnbG9iYWwgJGdDbXM7CgkkY29uZmlnID0gJGdDbXMtPkdldENvbmZpZygpOwoKCWlmICghaXNfZGlyKCRjb25maWdbJ3VwbG9hZHNfcGF0aCddIC4gRElSRUNUT1JZX1NFUEFSQVRPUiAuICdjb21wYW55ZGlyZWN0b3J5JyAuIERJUkVDVE9SWV9TRVBBUkFUT1IgLiAnaWQnIC4gJGl0ZW1pZCkpCgl7CgkJQG1rZGlyKCRjb25maWdbJ3VwbG9hZHNfcGF0aCddIC4gRElSRUNUT1JZX1NFUEFSQVRPUiAuICdjb21wYW55ZGlyZWN0b3J5JyAuIERJUkVDVE9SWV9TRVBBUkFUT1IgLiAnaWQnIC4gJGl0ZW1pZCk7Cgl9CglAcmVuYW1lKCRjb25maWdbJ3VwbG9hZHNfcGF0aCddIC4gRElSRUNUT1JZX1NFUEFSQVRPUiAuICdjb21wYW55ZGlyZWN0b3J5JyAuIERJUkVDVE9SWV9TRVBBUkFUT1IgLiAndG1wJyAuIERJUkVDVE9SWV9TRVBBUkFUT1IgLiAkZmlsZW5hbWUsICRjb25maWdbJ3VwbG9hZHNfcGF0aCddIC4gRElSRUNUT1JZX1NFUEFSQVRPUiAuICdjb21wYW55ZGlyZWN0b3J5JyAuIERJUkVDVE9SWV9TRVBBUkFUT1IgLiAnaWQnIC4gJGl0ZW1pZCAuIERJUkVDVE9SWV9TRVBBUkFUT1IgLiAkZmlsZW5hbWUpOwp9CgokaW1hZ2UgPSAnJzsKaWYgKGlzc2V0KCRfRklMRVNbJGlkIC4gJ2ltYWdldXBsb2FkJ10pICYmICRfRklMRVNbJGlkIC4gJ2ltYWdldXBsb2FkJ11bJ3RtcF9uYW1lJ10gIT0gJycpCnsJCgkkaW1hZ2UgPSBoYW5kbGVfaW5pdGlhbF91cGxvYWQoJGlkLCAnaW1hZ2V1cGxvYWQnKTsKfQplbHNlIGlmIChpc3NldCgkcGFyYW1zWydpbWFnZWN1cnJlbnQnXSkpCnsKCSRpbWFnZSA9ICRwYXJhbXNbJ2ltYWdlY3VycmVudCddOwp9CgokbG9nbyA9ICcnOwppZiAoaXNzZXQoJF9GSUxFU1skaWQgLiAnbG9nb3VwbG9hZCddKSAmJiAkX0ZJTEVTWyRpZCAuICdsb2dvdXBsb2FkJ11bJ3RtcF9uYW1lJ10gIT0gJycpCnsKCSRsb2dvID0gaGFuZGxlX2luaXRpYWxfdXBsb2FkKCRpZCwgJ2xvZ291cGxvYWQnKTsKfQplbHNlIGlmIChpc3NldCgkcGFyYW1zWydsb2dvY3VycmVudCddKSkKewoJJGxvZ28gPSAkcGFyYW1zWydsb2dvY3VycmVudCddOwp9CgokdXNlcmlkID0gZ2V0X3VzZXJpZCgpOwoKaWYgKGlzc2V0KCRwYXJhbXNbJ3N1Ym1pdCddKSkKewogIC8vIHN1Ym1pdCBpcyBwcmVzc2VkLgogICRlcnJvciA9ICcnOwoKICBpZiggJGNvbXBhbnlfbmFtZSA9PSAnJyApCiAgICB7CiAgICAgICRlcnJvciA9ICR0aGlzLT5MYW5nKCdub2NvbXBhbnluYW1lZ2l2ZW4nKTsKICAgIH0KCiAgaWYoICR1cmwgPT0gJycgJiYgJHRoaXMtPkdldFByZWZlcmVuY2UoJ3VybF9yZXF1aXJlZCcsMCkgKQoJewogICAgICAkZXJyb3IgPSAkdGhpcy0+TGFuZygnZXJyb3JfdXJscmVxdWlyZWQnKTsKCX0KCiAgaWYoICEkZXJyb3IgJiYgJHVybCA9PSAnJyAmJiAkdGhpcy0+R2V0UHJlZmVyZW5jZSgndXJsX2F1dG9jcmVhdGUnLDApICkKCXsKCSAgJHVybCA9IGNkX3V0aWxzOjpnZW5lcmF0ZV91cmwoJGNvbXBhbnlfbmFtZSk7CgkgIGlmKCAhJHVybCApCgkJewoJCSAgJGVycm9yID0gJHRoaXMtPkxhbmcoJ2Vycm9yX2ludmFsaWRuYW1lJyk7CgkJfQoJfQoKICBpZiggISRlcnJvciAmJiAkdXJsICE9ICcnICkKCXsKCSAgJHJlcyA9IGNkX3V0aWxzOjp2YWxpZGF0ZV91cmwoJHVybCk7CgkgIGlmKCAhJHJlcyApCgkJewoJCSAgJGVycm9yID0gJHRoaXMtPkxhbmcoJ2Vycm9yX2ludmFsaWR1cmwnKTsKCQl9Cgl9CgogIGlmICggJGVycm9yICkKICAgIHsKICAgICAgZWNobyAkdGhpcy0+U2hvd0Vycm9ycygkZXJyb3IpOwogICAgfQogIGVsc2UKCXsKCgkJJHF1ZXJ5ID0gJ0lOU0VSVCBJTlRPICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfY29tcGRpcl9jb21wYW5pZXMgKGNvbXBhbnlfbmFtZSwgdXJsLCBhZGRyZXNzLCB0ZWxlcGhvbmUsIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgZmF4LCBjb250YWN0X2VtYWlsLCB3ZWJzaXRlLCBkZXRhaWxzLCBwaWN0dXJlX2xvY2F0aW9uLCBsb2dvX2xvY2F0aW9uLCBjcmVhdGVfZGF0ZSwgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtb2RpZmllZF9kYXRlLCBzdGF0dXMsIGxhdGl0dWRlLCBsb25naXR1ZGUsIG93bmVyX2lkLGhpZXJfaWQpIFZBTFVFUyAoPyw/LD8sPyw/LD8sPyw/LD8sPyw/LD8sPyw/LD8sPyw/KSc7CgkJLy8gYWJvdXQgbGluZSAxNTkgLSBhY3Rpb24uYWRkY29tcGFueS5waHAKCQkkZGJyID0gJGRiLT5FeGVjdXRlKCRxdWVyeSwgYXJyYXkoJGNvbXBhbnlfbmFtZSwgJHVybCwgJGFkZHJlc3MsICR0ZWxlcGhvbmUsICRmYXgsICRjb250YWN0X2VtYWlsLCAkd2Vic2l0ZSwgJGRldGFpbHMsICRpbWFnZSwgJGxvZ28sIHRyaW0oJGRiLT5EQlRpbWVTdGFtcCh0aW1lKCkpLCAiJyIpLCB0cmltKCRkYi0+REJUaW1lU3RhbXAodGltZSgpKSwgIiciKSwgJHN0YXR1cywgJGxhdGl0dWRlLCAkbG9uZ2l0dWRlLCAkb3duZXJfaWQsICRoaWVycG9zKSk7CgkJaWYoICEkZGJyICkKCQkgIHsKCQkgICAgZWNobyAiUVVFUlk6ICIuJGRiLT5zcWwuJzxici8+JzsKCQkgICAgZWNobyAiRVJST1I6ICIuJGRiLT5FcnJvck1zZygpLic8YnIvPic7CgkJICAgIGRpZSgpOwoJCSAgfQoJCQoJCSRjaWQgPSAkZGItPkluc2VydF9JRCgpOwoJCSRkZXN0ZGlyID0gY21zX2pvaW5fcGF0aCgkZ0Ntcy0+Y29uZmlnWyd1cGxvYWRzX3BhdGgnXSwnY29tcGFueWRpcmVjdG9yeScsJ2lkJy4kY2lkKTsKCgkJaWYoIGNvdW50KCRmaWVsZGRlZnMpICkKCQkgIHsKCQkgICAgZm9yZWFjaCggJGZpZWxkZGVmcyBhcyAkZmllbGRkZWYgKQoJCSAgICAgIHsKCQkJCSRmaWVsZGRlZiA9IGNnZV9hcnJheTo6dG9fb2JqZWN0KCRmaWVsZGRlZik7CgkJCXN3aXRjaCggJGZpZWxkZGVmLT50eXBlICkKCQkJICB7CgkJCSAgY2FzZSAnaW1hZ2UnOgoJCQkgICAgY2dlX2Rpcjo6bWtkaXJyKCRkZXN0ZGlyKTsKCQkJICAgICR1cGxvYWRlciA9IGNnZV9zZXR1cDo6Z2V0X3VwbG9hZGVyKCRpZCwkZGVzdGRpcik7CgkJCSAgICAkdG1wID0gJHVwbG9hZGVyLT5oYW5kbGVfdXBsb2FkKCdjdXN0b21maWVsZCcsJycsJ2ZpZWxkLScuJGZpZWxkZGVmLT5pZCk7CgkJCSAgICBpZiggISR0bXAgKQoJCQkgICAgICB7CgkJCQlpZiggJHVwbG9hZGVyLT5nZXRfZXJyb3IoKSAhPSBjZ19maWxldXBsb2FkOjpOT0ZJTEUgKQoJCQkJICB7CgkJCQkgICAgJGVycm9yID0gJHRoaXMtPkdldFVwbG9hZEVycm9yTWVzc2FnZSgkdXBsb2FkZXItPmdldF9lcnJvcigpKTsKCQkJCSAgICBicmVhazsKCQkJCSAgfQoJCQkgICAgICB9CgkJCSAgICBlbHNlCgkJCSAgICAgIHsKCQkJCSRfUkVRVUVTVFskaWQuJ2N1c3RvbWZpZWxkJ11bJ2ZpZWxkLScuJGZpZWxkZGVmLT5pZF0gPSAkdG1wOwoJCQkgICAgICB9CgkJCSAgfQoJCSAgICAgIH0KCQlpZiAoaXNzZXQoJF9SRVFVRVNUWyRpZC4nY3VzdG9tZmllbGQnXSkpCgkJewoJCQlmb3JlYWNoICgkX1JFUVVFU1RbJGlkLidjdXN0b21maWVsZCddIGFzICRrPT4kdikKCQkJewoJCQkJaWYgKHN0YXJ0c3dpdGgoJGssICdmaWVsZC0nKSkKCQkJCXsKCQkJCQkkZmlkID0gc3Vic3RyKCRrLCA2KTsKCQkJCQkkcXVlcnkgPSAnSU5TRVJUIElOVE8gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9jb21wZGlyX2ZpZWxkdmFscyAoY29tcGFueV9pZCwgZmllbGRkZWZfaWQsIHZhbHVlLCBjcmVhdGVfZGF0ZSwgbW9kaWZpZWRfZGF0ZSkgVkFMVUVTICg/LD8sPyw/LD8pJzsKCQkJCQkkZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgkY2lkLCAkZmlkLCAkdiwgdHJpbSgkZGItPkRCVGltZVN0YW1wKHRpbWUoKSksICInIiksIHRyaW0oJGRiLT5EQlRpbWVTdGFtcCh0aW1lKCkpLCAiJyIpKSk7CgkJCQl9CgkJCX0KCQl9CgkJICB9IC8vIGlmIGNvdW50IGZpZWxkZGVmcwoJCQoJCWlmIChpc3NldCgkX1JFUVVFU1RbJGlkLidjYXRlZ29yeSddKSkKCQl7CgkJICBmb3JlYWNoICgkX1JFUVVFU1RbJGlkLidjYXRlZ29yeSddIGFzICRrPT4kdikKCQkgICAgewoJCSAgICAgIGlmIChzdGFydHN3aXRoKCRrLCAnaWQtJykpCgkJCXsKCQkJICAkZmlkID0gc3Vic3RyKCRrLCAzKTsKCQkJICAkZXh0cmExID0gJyc7CgkJCSAgJGV4dHJhMiA9ICcnOwoJCQkgICRleHRyYTMgPSAnJzsKCQkJICBpZiggaXNzZXQoJF9SRVFVRVNUWyRpZC4nY2F0ZWdvcnlfZXh0cmExJ11bJGtdKSApCgkJCSAgICB7CgkJCSAgICAgICRleHRyYTEgPSAkX1JFUVVFU1RbJGlkLidjYXRlZ29yeV9leHRyYTEnXVska107CgkJCSAgICB9CgkJCSAgaWYoIGlzc2V0KCRfUkVRVUVTVFskaWQuJ2NhdGVnb3J5X2V4dHJhMiddWyRrXSkgKQoJCQkgICAgewoJCQkgICAgICAkZXh0cmEyID0gJF9SRVFVRVNUWyRpZC4nY2F0ZWdvcnlfZXh0cmEyJ11bJGtdOwoJCQkgICAgfQoJCQkgIGlmKCBpc3NldCgkX1JFUVVFU1RbJGlkLidjYXRlZ29yeV9leHRyYTMnXVska10pICkKCQkJICAgIHsKCQkJICAgICAgJGV4dHJhMyA9ICRfUkVRVUVTVFskaWQuJ2NhdGVnb3J5X2V4dHJhMyddWyRrXTsKCQkJICAgIH0KCgkJCSAgJHF1ZXJ5ID0gJ0lOU0VSVCBJTlRPICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfY29tcGRpcl9jb21wYW55X2NhdGVnb3JpZXMgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjb21wYW55X2lkLCBjYXRlZ29yeV9pZCwgZXh0cmExLCBleHRyYTIsIGV4dHJhMywgY3JlYXRlX2RhdGUsIG1vZGlmaWVkX2RhdGUpIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWQUxVRVMgKD8sPyw/LD8sPyxOT1coKSxOT1coKSknOwoJCQkgICRkYi0+RXhlY3V0ZSgkcXVlcnksIGFycmF5KCRjaWQsICRmaWQsICRleHRyYTEsICRleHRyYTIsICRleHRyYTMpKTsKCQkJfQoJCSAgICB9CgkJfQoJCQoJCWlmICgkaW1hZ2UgIT0gJycpCgkJewoJCQloYW5kbGVfdG1wX3VwbG9hZCgkaWQsICRjaWQsICRpbWFnZSk7CgkJfQoJCgkJaWYgKCRsb2dvICE9ICcnKQoJCXsKCQkJaGFuZGxlX3RtcF91cGxvYWQoJGlkLCAkY2lkLCAkbG9nbyk7CgkJfQoJCQoJCS8vVXBkYXRlIHNlYXJjaCBpbmRleAoJCSRtb2R1bGUgPSYgJHRoaXMtPkdldE1vZHVsZUluc3RhbmNlKCdTZWFyY2gnKTsKCQlpZiAoJG1vZHVsZSAhPSBGQUxTRSkKCQl7CgkJCSRtb2R1bGUtPkFkZFdvcmRzKCR0aGlzLT5HZXROYW1lKCksICRjaWQsICdjb21wYW55JywgaW1wbG9kZSgnICcsIGFycmF5KCRjb21wYW55X25hbWUsICRjb21wYW55X25hbWUsICRhZGRyZXNzLCAkdGVsZXBob25lLCAkZmF4LCAkZGV0YWlscykpKTsKCQl9CgoJCSRwYXJhbXMgPSBhcnJheSgndGFiX21lc3NhZ2UnPT4gJ2NvbXBhbnlhZGRlZCcsICdhY3RpdmVfdGFiJyA9PiAnY29tcGFuaWVzJyk7CgkJJHRoaXMtPlJlZGlyZWN0KCRpZCwgJ2RlZmF1bHRhZG1pbicsICRyZXR1cm5pZCwgJHBhcmFtcyk7Cgl9Cn0KCiRmaWVsZGFycmF5ID0gYXJyYXkoKTsKCmlmIChjb3VudCgkZmllbGRkZWZzKSA+IDApCnsKCWZvcmVhY2ggKCRmaWVsZGRlZnMgYXMgJGZpZWxkZGVmKQoJewoJICAkZmllbGRkZWYgPSBjZ2VfYXJyYXk6OnRvX29iamVjdCgkZmllbGRkZWYpOwoJICAkZmllbGQgPSBuZXcgc3RkQ2xhc3MoKTsKCiAgICAgICAgJHZhbHVlID0gJyc7CiAgICAgICAgaWYgKGlzc2V0KCRmaWVsZGRlZi0+dmFsdWUpKQogICAgICAgIHsKICAgICAgICAgICAgICAgICR2YWx1ZSA9ICRmaWVsZGRlZi0+dmFsdWU7CiAgICAgICAgfQoKCQlpZiAoaXNzZXQoJF9SRVFVRVNUWyRpZC4nY3VzdG9tZmllbGQnXVsnZmllbGQtJy4kZmllbGRkZWYtPmlkXSkpCgkJCSR2YWx1ZSA9ICRfUkVRVUVTVFskaWQuJ2N1c3RvbWZpZWxkJ11bJ2ZpZWxkLScuJGZpZWxkZGVmLT5pZF07CgkJJGZpZWxkLT5pZCA9ICRmaWVsZGRlZi0+aWQ7CgkJJGZpZWxkLT5uYW1lID0gJGZpZWxkZGVmLT5uYW1lOwoJCXN3aXRjaCAoJGZpZWxkZGVmLT50eXBlKQoJCXsKCQljYXNlICdkcm9wZG93bic6CgkJICB7CgkJCSR0bXAyID0gY2RfdXRpbHM6OmRlY29kZV9kcm9wZG93bl9kYXRhKCRmaWVsZGRlZi0+ZHJvcGRvd25fZGF0YSk7CgkJICAgICRmaWVsZC0+aW5wdXRfYm94ID0gJHRoaXMtPkNyZWF0ZUlucHV0RHJvcGRvd24oJGlkLCdjdXN0b21maWVsZFtmaWVsZC0nLiRmaWVsZGRlZi0+aWQuJ10nLCR0bXAyLC0xLCR2YWx1ZSk7CgkJICB9CgkJICBicmVhazsKCgkJY2FzZSAnaW1hZ2UnOgoJCSAgJGZpZWxkLT5pbnB1dF9ib3ggPSAnPGlucHV0IHR5cGU9ImZpbGUiIG5hbWU9IicuJGlkLidjdXN0b21maWVsZFtmaWVsZC0nLiRmaWVsZGRlZi0+aWQuJ10iIHZhbHVlPSIiIHNpemU9IjgwIi8+JzsKCQkgIGlmKCAkdmFsdWUgKQoJCSAgICB7CgkJICAgICAgJGZpZWxkLT5pbnB1dF9ib3ggLj0gIjxici8+eyR2YWx1ZX06Jm5ic3A7Jm5ic3A7PGlucHV0IHR5cGU9XCJjaGVja2JveFwiIG5hbWU9XCJ7JGlkfWRlbGV0ZWZpbGVbZmllbGQteyRmaWVsZGRlZi0+aWR9XVwiIHZhbHVlPVwiMVwiLz4oeyR0aGlzLT5MYW5nKCdkZWxldGUnKX0pIjsKCQkgICAgfQoJCSAgYnJlYWs7CgoJCWNhc2UgJ2NoZWNrYm94JzoKCQkgICRmaWVsZC0+aW5wdXRfYm94ID0gJzxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9IicgLiAkaWQgLiAnY3VzdG9tZmllbGRbZmllbGQtJy4kZmllbGRkZWYtPmlkLiddJyAuICciIHZhbHVlPSJmYWxzZSIgLz4nLiR0aGlzLT5DcmVhdGVJbnB1dENoZWNrYm94KCRpZCwgJ2N1c3RvbWZpZWxkW2ZpZWxkLScuJGZpZWxkZGVmLT5pZC4nXScsICd0cnVlJywgJHZhbHVlID09ICd0cnVlJyk7CgkJICBicmVhazsKCgkJY2FzZSAndGV4dGFyZWEnOgoJCSAgJGZpZWxkLT5pbnB1dF9ib3ggPSAkdGhpcy0+Q3JlYXRlVGV4dEFyZWEodHJ1ZSwgJGlkLCAkdmFsdWUsICdjdXN0b21maWVsZFtmaWVsZC0nLiRmaWVsZGRlZi0+aWQuJ10nKTsKCQkgIGJyZWFrOwoKCQljYXNlICd0ZXh0Ym94JzoKCQlkZWZhdWx0OgoJCSAgJG1heGxlbmd0aCA9ICRmaWVsZGRlZi0+bWF4X2xlbmd0aDsKCQkgICRzaXplID0gbWluKCRtYXhsZW5ndGgsODApOwoJCSAgJGZpZWxkLT5pbnB1dF9ib3ggPSAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwgJ2N1c3RvbWZpZWxkW2ZpZWxkLScuJGZpZWxkZGVmLT5pZC4nXScsICR2YWx1ZSwgJHNpemUsICRtYXhsZW5ndGgpOwoJCSAgYnJlYWs7CgkJfQoJCSRmaWVsZGFycmF5W10gPSAkZmllbGQ7Cgl9Cn0KCgovLyBnZXQgdXNlciBpbmZvcm1hdGlvbgokZmV1ID0gJHRoaXMtPkdldE1vZHVsZUluc3RhbmNlKCdGcm9udEVuZFVzZXJzJyk7CmlmKCBpc19vYmplY3QoJGZldSkgKQogIHsKICAgICR0bXAgPSAkZmV1LT5HZXRVc2Vyc0luR3JvdXAoKTsKICAgIGlmKCBpc19hcnJheSgkdG1wKSAmJiBjb3VudCgkdG1wKSApCiAgICAgIHsKCSR1c2VycyA9IGFycmF5KCk7CgkkdXNlcnNbLTFdID0gJHRoaXMtPkxhbmcoJ25vbmUnKTsKCWZvciggJGkgPSAwOyAkaSA8IGNvdW50KCR0bXApOyAkaSsrICkKCSAgewoJICAgICR1c2Vyc1skdG1wWyRpXVsnaWQnXV0gPSAkdG1wWyRpXVsndXNlcm5hbWUnXTsKCSAgfQoJJHNtYXJ0eS0+YXNzaWduKCdmZXVfdXNlcnMnLCR1c2Vycyk7CiAgICAgIH0KICB9CgokY2F0ZWdvcmllcyA9ICR0aGlzLT5HZXRDYXRlZ29yaWVzKCk7CiRjYXRhcnJheSA9IGFycmF5KCk7CgppZiAoY291bnQoJGNhdGVnb3JpZXMpID4gMCkKewoJZm9yZWFjaCAoJGNhdGVnb3JpZXMgYXMgJG9uZWNhdCkKCXsKCQkkZmllbGQgPSBuZXcgc3RkQ2xhc3MoKTsKCgkJJHZhbHVlID0gJ2ZhbHNlJzsKCQlpZiAoaXNzZXQoJF9SRVFVRVNUWyRpZC4nY2F0ZWdvcnknXVsnaWQtJy4kb25lY2F0LT5pZF0pKQoJCQkkdmFsdWUgPSAndHJ1ZSc7CgoJCSRmaWVsZC0+aWQgPSAkb25lY2F0LT5pZDsKCQkkZmllbGQtPm5hbWUgPSAkb25lY2F0LT5uYW1lOwoJCSRmaWVsZC0+Y2hlY2tib3ggPSAkdGhpcy0+Q3JlYXRlSW5wdXRDaGVja2JveCgkaWQsICdjYXRlZ29yeVtpZC0nLiRvbmVjYXQtPmlkLiddJywgJHZhbHVlLCAndHJ1ZScpOwoJCSRmaWVsZC0+ZXh0cmExID0gJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsJ2NhdGVnb3J5X2V4dHJhMVtpZC0nLiRvbmVjYXQtPmlkLiddJywgJycsNDAsMjU1KTsKCQkkZmllbGQtPmV4dHJhMiA9ICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCdjYXRlZ29yeV9leHRyYTJbaWQtJy4kb25lY2F0LT5pZC4nXScsICcnLDQwLDI1NSk7CgkJJGZpZWxkLT5leHRyYTMgPSAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwnY2F0ZWdvcnlfZXh0cmEzW2lkLScuJG9uZWNhdC0+aWQuJ10nLCAnJyw0MCwyNTUpOwoKCQkkY2F0YXJyYXlbXSA9ICRmaWVsZDsKCX0KfQoKI0Rpc3BsYXkgdGVtcGxhdGUKJHNtYXJ0eS0+YXNzaWduKCdzdGFydGZvcm0nLCAkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0KCRpZCwgJ2FkZGNvbXBhbnknLCAkcmV0dXJuaWQsICdwb3N0JywgJ211bHRpcGFydC9mb3JtLWRhdGEnKSk7CiRzbWFydHktPmFzc2lnbignZW5kZm9ybScsICR0aGlzLT5DcmVhdGVGb3JtRW5kKCkpOwokc21hcnR5LT5hc3NpZ24oJ25hbWV0ZXh0JywgJHRoaXMtPkxhbmcoJ25hbWUnKSk7CiRzbWFydHktPmFzc2lnbignY29tcGFueV9uYW1lJywkY29tcGFueV9uYW1lKTsKJHNtYXJ0eS0+YXNzaWduKCd1cmwnLCR1cmwpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0bmFtZScsICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCAnY29tcGFueV9uYW1lJywgJGNvbXBhbnlfbmFtZSwgMzAsIDI1NSkpOwoKJHNtYXJ0eS0+YXNzaWduKCdvd25lcl9pZCcsJG93bmVyX2lkKTsKJHNtYXJ0eS0+YXNzaWduKCdhZGRyZXNzdGV4dCcsICR0aGlzLT5MYW5nKCdhZGRyZXNzJykpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0YWRkcmVzcycsICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCAnYWRkcmVzcycsICRhZGRyZXNzLCAzMCwgMjU1KSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRsYXRpdHVkZScsICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCAnbGF0aXR1ZGUnLCAkbGF0aXR1ZGUsIDMwLCAyNTUpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dGxvbmdpdHVkZScsICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCAnbG9uZ2l0dWRlJywgJGxvbmdpdHVkZSwgMzAsIDI1NSkpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0aGllcnBvcycsJHRoaXMtPkNyZWF0ZVBhcmVudERyb3Bkb3duKCRpZCwtMSwkaGllcnBvcywnaGllcnBvcycpKTsKJHNtYXJ0eS0+YXNzaWduKCd0ZWxlcGhvbmV0ZXh0JywgJHRoaXMtPkxhbmcoJ3RlbGVwaG9uZScpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dHRlbGVwaG9uZScsICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCAndGVsZXBob25lJywgJHRlbGVwaG9uZSwgMzAsIDI1NSkpOwokc21hcnR5LT5hc3NpZ24oJ2ZheHRleHQnLCAkdGhpcy0+TGFuZygnZmF4JykpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0ZmF4JywgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsICdmYXgnLCAkZmF4LCAzMCwgMjU1KSk7Cgokc21hcnR5LT5hc3NpZ24oJ2VtYWlsdGV4dCcsICR0aGlzLT5MYW5nKCdjb250YWN0ZW1haWwnKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRlbWFpbCcsICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCAnY29udGFjdF9lbWFpbCcsICRjb250YWN0X2VtYWlsLCAzMCwgMjU1KSk7CiRzbWFydHktPmFzc2lnbignd2Vic2l0ZXRleHQnLCAkdGhpcy0+TGFuZygnd2Vic2l0ZScpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dHdlYnNpdGUnLCAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwgJ3dlYnNpdGUnLCAkd2Vic2l0ZSwgMzAsIDI1NSkpOwokc21hcnR5LT5hc3NpZ24oJ2RldGFpbHN0ZXh0JywgJHRoaXMtPkxhbmcoJ2RldGFpbHMnKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRkZXRhaWxzJywgJHRoaXMtPkNyZWF0ZVRleHRBcmVhKHRydWUsICRpZCwgJGRldGFpbHMsICdkZXRhaWxzJywgJycsICcnLCAnJywgJycsICc4MCcsICc1JykpOwokc21hcnR5LT5hc3NpZ24oJ2ltYWdldXBsb2FkJywgJHRoaXMtPkNyZWF0ZUZpbGVVcGxvYWRJbnB1dCgkaWQsICdpbWFnZXVwbG9hZCcsICcnLCA4MCkpOwokc21hcnR5LT5hc3NpZ24oJ2ltYWdlY3VycmVudCcsICRpbWFnZSk7CiRzbWFydHktPmFzc2lnbignaW1hZ2V0ZXh0JywgJHRoaXMtPkxhbmcoJ2ltYWdldGV4dCcpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbWFnZWN1cnJlbnRoaWRkZW4nLCAkdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLCAnaW1hZ2VjdXJyZW50JywgJHJldHVybmlkLCAkaW1hZ2UpKTsKJHNtYXJ0eS0+YXNzaWduKCdsb2dvdXBsb2FkJywgJHRoaXMtPkNyZWF0ZUZpbGVVcGxvYWRJbnB1dCgkaWQsICdsb2dvdXBsb2FkJywgJycsIDgwKSk7CiRzbWFydHktPmFzc2lnbignbG9nb2N1cnJlbnQnLCAkbG9nbyk7CiRzbWFydHktPmFzc2lnbignbG9nb2N1cnJlbnRoaWRkZW4nLCAkdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLCAnbG9nb2N1cnJlbnQnLCAkcmV0dXJuaWQsICRsb2dvKSk7CiRzbWFydHktPmFzc2lnbignbG9nb3RleHQnLCAkdGhpcy0+TGFuZygnbG9nb3RleHQnKSk7Cgokc3RhdHVzZXMgPSBhcnJheSgkdGhpcy0+TGFuZygncHVibGlzaGVkJyk9PidwdWJsaXNoZWQnLAoJCSAgJHRoaXMtPkxhbmcoJ2RyYWZ0Jyk9PidkcmFmdCcsCgkJICAkdGhpcy0+TGFuZygnZGlzYWJsZWQnKT0+J2Rpc2FibGVkJyk7CiRzbWFydHktPmFzc2lnbignc3RhdHVzdGV4dCcsJHRoaXMtPkxhbmcoJ3N0YXR1cycpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dHN0YXR1cycsCgkJJHRoaXMtPkNyZWF0ZUlucHV0RHJvcGRvd24oJGlkLCdzdGF0dXMnLAoJCQkJCSAgICRzdGF0dXNlcywtMSwkc3RhdHVzKSk7CiRzbWFydHktPmFzc2lnbignaGlkZGVuJywgJycpOwokc21hcnR5LT5hc3NpZ24oJ3N1Ym1pdCcsICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsICdzdWJtaXQnLCBsYW5nKCdzdWJtaXQnKSkpOwokc21hcnR5LT5hc3NpZ24oJ2NhbmNlbCcsICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsICdjYW5jZWwnLCBsYW5nKCdjYW5jZWwnKSkpOwoKJHNtYXJ0eS0+YXNzaWduKCdjdXN0b21maWVsZHMnLCAkZmllbGRhcnJheSk7CiRzbWFydHktPmFzc2lnbignY3VzdG9tZmllbGRzY291bnQnLCBjb3VudCgkZmllbGRhcnJheSkpOwokc21hcnR5LT5hc3NpZ24oJ2NhdGVnb3JpZXMnLCAkY2F0YXJyYXkpOwokc21hcnR5LT5hc3NpZ24oJ2NhdGVnb3JpZXNjb3VudCcsIGNvdW50KCRjYXRhcnJheSkpOwoKJHNtYXJ0eS0+YXNzaWduKCd1cmxfcmVxdWlyZWQnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCd1cmxfcmVxdWlyZWQnLDApKTsKJHNtYXJ0eS0+YXNzaWduKCd1cmxfYXV0b2NyZWF0ZScsJHRoaXMtPkdldFByZWZlcmVuY2UoJ3VybF9hdXRvY3JlYXRlJywwKSk7CiRjZ2dtID0mICR0aGlzLT5HZXRNb2R1bGVJbnN0YW5jZSgnQ0dHb29nbGVNYXBzJyk7CmlmKCAkY2dnbSApCiAgewogICAgaWYoIG1ldGhvZF9leGlzdHMoJGNnZ20sJ0dldENvb3Jkc0Zyb21BZGRyZXNzJykgKQogICAgICB7CgkJJHNtYXJ0eS0+YXNzaWduKCdjYW5fZ2VvY29kZScsMSk7CiAgICAgIH0KICB9CgplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ2VkaXRjb21wYW55LnRwbCcpOwoKPz4K]]></data>
	</file>
	<file>
	  <filename>/action.addfielddef.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmICghaXNzZXQoJGdDbXMpKSBleGl0OwokdGhpcy0+U2V0Q3VycmVudFRhYignZmllbGRkZWZzJyk7CgppZiAoISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBDb21wYW55IERpcmVjdG9yeScpKQp7CgllY2hvICR0aGlzLT5TaG93RXJyb3JzKCR0aGlzLT5MYW5nKCduZWVkcGVybWlzc2lvbicsIGFycmF5KCdNb2RpZnkgQ29tcGFueSBEaXJlY3RvcnknKSkpOwoJcmV0dXJuOwp9CgppZiAoaXNzZXQoJHBhcmFtc1snY2FuY2VsJ10pKQp7CiAgJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkLCcnLCcnLCdhZG1pbl9zZXR0aW5ncycpOwp9CgokbmFtZSA9ICcnOwppZiAoaXNzZXQoJHBhcmFtc1snbmFtZSddKSkKewoJJG5hbWUgPSAkcGFyYW1zWyduYW1lJ107Cn0KCiR0eXBlID0gJyc7CmlmIChpc3NldCgkcGFyYW1zWyd0eXBlJ10pKQp7CgkkdHlwZSA9ICRwYXJhbXNbJ3R5cGUnXTsKfQoKJG1heF9sZW5ndGggPSAyNTU7CmlmIChpc3NldCgkcGFyYW1zWydtYXhfbGVuZ3RoJ10pKQp7CiAgJG1heF9sZW5ndGggPSAoaW50KSRwYXJhbXNbJ21heF9sZW5ndGgnXTsKfQoKJGFkbWlub25seSA9IDA7CmlmKCBpc3NldCgkcGFyYW1zWydhZG1pbm9ubHknXSkgKQogIHsKICAgICRhZG1pbm9ubHkgPSAoaW50KSRwYXJhbXNbJ2FkbWlub25seSddOwogIH0KJHB1YmxpYyA9IDA7CmlmKCBpc3NldCgkcGFyYW1zWydwdWJsaWMnXSkgKQogIHsKICAgICRwdWJsaWMgPSAoaW50KSRwYXJhbXNbJ3B1YmxpYyddOwogIH0KCiRkcm9wZG93bl9kYXRhID0gJyc7CmlmKCAkdHlwZSA9PSAnZHJvcGRvd24nICYmIGlzc2V0KCRwYXJhbXNbJ2Ryb3Bkb3duX29wdGlvbnMnXSkgKQogIHsKICAgICRkcm9wZG93bl9kYXRhID0gdHJpbSgkcGFyYW1zWydkcm9wZG93bl9vcHRpb25zJ10pOwogIH0KCiR1c2VyaWQgPSBnZXRfdXNlcmlkKCk7Cgokc3RhdHVzID0gJyc7CmlmIChpc3NldCgkcGFyYW1zWydzdWJtaXQnXSkpCnsKICBpZiggZW1wdHkoJG5hbWUpICkKICAgIHsKICAgICAgJHN0YXR1cyA9ICR0aGlzLT5MYW5nKCdub25hbWdpdmVuJyk7CiAgICB9CiAgCiAgaWYoIGVtcHR5KCRzdGF0dXMpICYmICR0eXBlID09ICd0ZXh0Ym94JyAmJiAhaXNfbnVtZXJpYygkbWF4X2xlbmd0aCkgKQogICAgewogICAgICAkc3RhdHVzID0gJHRoaXMtPkxhbmcoJ2Vycm9yX25vbGVuZ3RoJyk7CiAgICB9CgogIGlmKCBlbXB0eSgkc3RhdHVzKSAmJiAkdHlwZSA9PSAnZHJvcGRvd24nICYmIGVtcHR5KCRkcm9wZG93bl9kYXRhKSApCiAgICB7CiAgICAgICRzdGF0dXMgPSAkdGhpcy0+TGFuZygnZXJyb3Jfbm9kcm9wZG93bm9wdGlvbnMnKTsKICAgIH0KCiAgaWYoIGVtcHR5KCRzdGF0dXMpICkKICAgIHsKICAgICAgJG1heCA9ICRkYi0+R2V0T25lKCdTRUxFQ1QgbWF4KGl0ZW1fb3JkZXIpICsgMSBGUk9NICcgLiBjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlX2NvbXBkaXJfZmllbGRkZWZzJyk7CiAgICAgICRxdWVyeSA9ICdJTlNFUlQgSU5UTyAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfZmllbGRkZWZzIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobmFtZSwgdHlwZSwgbWF4X2xlbmd0aCwgaXRlbV9vcmRlciwgY3JlYXRlX2RhdGUsIG1vZGlmaWVkX2RhdGUsIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRtaW5fb25seSwgcHVibGljLCBkcm9wZG93bl9kYXRhKSAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZBTFVFUyAoPyw/LD8sPyw/LD8sPyw/LD8pJzsKICAgICAgJHBhcm1zID0gYXJyYXkoJG5hbWUsICR0eXBlLCAkbWF4X2xlbmd0aCwgCgkJICAgICAkbWF4LCAKCQkgICAgIHRyaW0oJGRiLT5EQlRpbWVTdGFtcCh0aW1lKCkpLCAiJyIpLCAKCQkgICAgIHRyaW0oJGRiLT5EQlRpbWVTdGFtcCh0aW1lKCkpLCAiJyIpLAoJCSAgICAgJGFkbWlub25seSwgJHB1YmxpYywKCQkgICAgICRkcm9wZG93bl9kYXRhKTsKICAgICAgJGRiLT5FeGVjdXRlKCRxdWVyeSwgJHBhcm1zICk7CgogICAgICAkdGhpcy0+U2V0TWVzc2FnZSgkdGhpcy0+TGFuZygnZmllbGRkZWZhZGRlZCcpKTsKICAgICAgJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkLCcnLCcnLCdhZG1pbl9zZXR0aW5ncycpOwogICAgfQoKICBlY2hvICR0aGlzLT5TaG93RXJyb3JzKCRzdGF0dXMpOwp9CgojRGlzcGxheSB0ZW1wbGF0ZQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3N0YXJ0Zm9ybScsICR0aGlzLT5DcmVhdGVGb3JtU3RhcnQoJGlkLCAnYWRkZmllbGRkZWYnLCAkcmV0dXJuaWQpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdlbmRmb3JtJywgJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignbmFtZXRleHQnLCAkdGhpcy0+TGFuZygnbmFtZScpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0eXBldGV4dCcsICR0aGlzLT5MYW5nKCd0eXBlJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ21heGxlbmd0aHRleHQnLCAkdGhpcy0+TGFuZygnbWF4bGVuZ3RoJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2lucHV0bmFtZScsICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCAnbmFtZScsICRuYW1lLCAzMCwgMjU1KSk7CiRzbWFydHktPmFzc2lnbignZmllbGR0eXBlcycsJHRoaXMtPkdldEZpZWxkVHlwZXMoKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignaW5wdXRtYXhsZW5ndGgnLCAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwgJ21heF9sZW5ndGgnLCAkbWF4X2xlbmd0aCwgMzAsIDI1NSkpOwokc21hcnR5LT5hc3NpZ24oJ3VzZXJlZGl0dGV4dCcsJHRoaXMtPkxhbmcoJ2FkbWluX29ubHknKSk7CiRzbWFydHktPmFzc2lnbigndXNlcnZpZXd0ZXh0JywkdGhpcy0+TGFuZygncHVibGljJykpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0X3VzZXJlZGl0JywKCQkkdGhpcy0+Q3JlYXRlSW5wdXRDaGVja2JveCgkaWQsICdhZG1pbm9ubHknLCAxLCAkYWRtaW5vbmx5KSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfdXNlcnZpZXcnLAoJCSR0aGlzLT5DcmVhdGVJbnB1dGNoZWNrYm94KCRpZCwgJ3B1YmxpYycsIDEsICRwdWJsaWMpKTsKJHNtYXJ0eS0+YXNzaWduKCdmbGR0eXBlJywkdHlwZSk7CiRzbWFydHktPmFzc2lnbignZHJvcGRvd25fZGF0YScsJGRyb3Bkb3duX2RhdGEpOwoKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdoaWRkZW4nLCAnJyk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignc3VibWl0JywgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwgJ3N1Ym1pdCcsIGxhbmcoJ3N1Ym1pdCcpKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignY2FuY2VsJywgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwgJ2NhbmNlbCcsIGxhbmcoJ2NhbmNlbCcpKSk7CgplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ2VkaXRmaWVsZGRlZi50cGwnKTsKCj8+]]></data>
	</file>
	<file>
	  <filename>/action.admin_addhier.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKaWYoICEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdNb2RpZnkgU2l0ZSBQcmVmZXJlbmNlcycpICkgZXhpdDsKCiRwYXJlbnQgPSAtMTsKaWYoIGlzc2V0KCRwYXJhbXNbJ3BhcmVudCddKSkKICB7CiAgICAkcGFyZW50ID0gJHBhcmFtc1sncGFyZW50J107CiAgfQppZiAoaXNzZXQoJHBhcmFtc1snY2FuY2VsJ10pKQp7CiAgJHRoaXMtPlJlZGlyZWN0KCRpZCwgJ2RlZmF1bHRhZG1pbicsICRyZXR1cm5pZCk7Cn0KCiRuYW1lID0gJyc7CmlmIChpc3NldCgkcGFyYW1zWyduYW1lJ10pKQp7CiAgJG5hbWUgPSAkcGFyYW1zWyduYW1lJ107CiAgaWYgKCRuYW1lICE9ICcnKQogICAgewogICAgICAkcXVlcnkgPSAnSU5TRVJUIElOVE8gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9jb21wZGlyX2hpZXIgKG5hbWUsIHBhcmVudF9pZCkgVkFMVUVTICg/LD8pJzsKICAgICAgJHBhcm1zID0gYXJyYXkoJG5hbWUsaW50dmFsKCRwYXJlbnQpKTsKICAgICAgJGRiciA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksICRwYXJtcyk7CiAgICAgIGlmKCAhJGRiciApCgl7CgkgIGRpZSgkZGItPnNxbC4nPGJyLz4nLiRkYi0+RXJyb3JNc2coKSk7Cgl9CiAgICAgICR0aGlzLT5VcGRhdGVIaWVyYXJjaHlQb3NpdGlvbnMoKTsKICAgICAgJHRoaXMtPlNldE1lc3NhZ2UoJHRoaXMtPkxhbmcoJ21zZ19oaWVyYWRkZWQnKSk7CiAgICAgICR0aGlzLT5TZXRDdXJyZW50VGFiKCdoaWVyJyk7CiAgICAgICR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwgJycsICcnLCAnYWRtaW5fc2V0dGluZ3MnKTsKICAgIH0KICBlbHNlCiAgICB7CiAgICAgIGVjaG8gJHRoaXMtPlNob3dFcnJvcnMoJHRoaXMtPkxhbmcoJ25vbmFtZWdpdmVuJykpOwogICAgfQp9CgojRGlzcGxheSB0ZW1wbGF0ZQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3N0YXJ0Zm9ybScsICR0aGlzLT5DcmVhdGVGb3JtU3RhcnQoJGlkLCAnYWRtaW5fYWRkaGllcicsICRyZXR1cm5pZCkpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2VuZGZvcm0nLCAkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCduYW1ldGV4dCcsICR0aGlzLT5MYW5nKCduYW1lJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2lucHV0bmFtZScsICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCAnbmFtZScsICRuYW1lLCAyMCwgMjU1KSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbigncGFyZW50ZHJvcGRvd24nLCAkdGhpcy0+Q3JlYXRlUGFyZW50RHJvcGRvd24oJGlkLCAtMSwgLTEpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdoaWRkZW4nLCAnJyk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignc3VibWl0JywgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwgJ3N1Ym1pdCcsIGxhbmcoJ3N1Ym1pdCcpKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignY2FuY2VsJywgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwgJ2NhbmNlbCcsIGxhbmcoJ2NhbmNlbCcpKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbigncGFyZW50dGV4dCcsIGxhbmcoJ3BhcmVudCcpKTsKZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCdlZGl0aGllci50cGwnKTsKCgojCiMgRU9GCiMKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.admin_delhier.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpKSBleGl0OwppZiggISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBTaXRlIFByZWZlcmVuY2VzJykgKSBleGl0OwoKJGNhdGlkID0gJyc7CmlmIChpc3NldCgkcGFyYW1zWydjYXRpZCddKSkKICB7CiAgICAkY2F0aWQgPSAkcGFyYW1zWydjYXRpZCddOwogIH0KCi8vIEdldCB0aGUgY2F0ZWdvcnkgZGV0YWlscwokcXVlcnkgPSAnU0VMRUNUICogRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfaGllcgogICAgICAgICAgIFdIRVJFIGlkID0gPyc7CiRyb3cgPSAkZGItPkdldFJvdyggJHF1ZXJ5LCBhcnJheSggJGNhdGlkICkgKTsKaWYoICEkcm93ICkKICB7CiAgICAkdGhpcy0+U2V0Q3VycmVudFRhYignaGllcicpOwogICAgJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkLCAnJywgJycsICdhZG1pbl9zZXR0aW5ncycpOwogIH0KCi8vUmVzZXQgYWxsIGNhdGVnb3JpZXMgdXNpbmcgdGhpcyBwYXJlbnQgdG8gaGF2ZSBubyBwYXJlbnQgKC0xKQokcXVlcnkgPSAnVVBEQVRFICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfY29tcGRpcl9oaWVyIFNFVCBwYXJlbnRfaWQ9PyBXSEVSRSBwYXJlbnRfaWQ9Pyc7CiRkYi0+RXhlY3V0ZSgkcXVlcnksIGFycmF5KC0xLCAkY2F0aWQpKTsKCi8vTm93IHJlbW92ZSB0aGUgY2F0ZWdvcnkKJHF1ZXJ5ID0gIkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfY29tcGRpcl9oaWVyIFdIRVJFIGlkID0gPyI7CiRkYi0+RXhlY3V0ZSgkcXVlcnksIGFycmF5KCRjYXRpZCkpOwoKLy9BbmQgcmVtb3ZlIGl0IGZyb20gYW55IGFydGljbGVzCiRxdWVyeSA9ICJVUERBVEUgIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9jb21wZGlyX2NvbXBhbmllcyBTRVQgaGllcl9pZCA9IC0xIFdIRVJFIGhpZXJfaWQgPSA/IjsKJGRiLT5FeGVjdXRlKCRxdWVyeSwgYXJyYXkoJGNhdGlkKSk7CgkKJHRoaXMtPlVwZGF0ZUhpZXJhcmNoeVBvc2l0aW9ucygpOwokdGhpcy0+U2V0TWVzc2FnZSgkdGhpcy0+TGFuZygnbXNnX2hpZXJkZWxldGVkJykpOwokdGhpcy0+U2V0Q3VycmVudFRhYignaGllcicpOwokdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsICcnLCAnJywgJ2FkbWluX3NldHRpbmdzJyk7CgojCiMgRU9GCiMKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.admin_doimporttemplate.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdCgpOwppZiggISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBUZW1wbGF0ZXMnKSApIGV4aXQoKTsKCiR0aGlzLT5TZXRDdXJyZW50VGFiKCdmcm9udGVuZGltcG9ydF90ZW1wbGF0ZScpOwppZiggaXNzZXQoJHBhcmFtc1snZmVpbXBvcnRfc3VibWl0J10pICkKICB7CiAgICAkdGhpcy0+U2V0VGVtcGxhdGUoQ09NUEFOWURJUl9GUk9OVEVORElNUE9SVF9URU1QTEFURSwKCQkgICAgICAgdHJpbSgkcGFyYW1zWydmZWltcG9ydF90ZW1wbGF0ZSddKSk7CiAgfQplbHNlIGlmKCBpc3NldCgkcGFyYW1zWydmZWltcG9ydF9yZXNldCddKSApCiAgewogICAgICMgU2V0dXAgZGVmYXVsdCBmcm9udGVuZCBpbXBvcnQgdGVtcGxhdGUKICAgICRmbiA9IGNtc19qb2luX3BhdGgoZGlybmFtZShfX0ZJTEVfXyksJ3RlbXBsYXRlcycsJ29yaWdfZnJvbnRlbmRpbXBvcnRfdGVtcGxhdGUudHBsJyk7CiAgICBpZiggZmlsZV9leGlzdHMoICRmbiApICkKICAgICAgewoJJHRlbXBsYXRlID0gZmlsZV9nZXRfY29udGVudHMoICRmbiApOwoJJHRoaXMtPlNldFRlbXBsYXRlKENPTVBBTllESVJfRlJPTlRFTkRJTVBPUlRfVEVNUExBVEUsJHRlbXBsYXRlKTsKICAgICAgfQogIH0KCiR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwnJywnJywnYWRtaW5fdGVtcGxhdGVzJyk7CgojCiMgRU9GCiMKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.admin_edithier.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKaWYoICEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdNb2RpZnkgU2l0ZSBQcmVmZXJlbmNlcycpICkgZXhpdDsKCmlmIChpc3NldCgkcGFyYW1zWydjYW5jZWwnXSkpCiAgewogICAgJHRoaXMtPlJlZGlyZWN0KCRpZCwgJ2RlZmF1bHRhZG1pbicsICRyZXR1cm5pZCk7CiAgfQoKJGNhdGlkID0gJyc7CmlmIChpc3NldCgkcGFyYW1zWydjYXRpZCddKSkKICB7CiAgICAkY2F0aWQgPSAkcGFyYW1zWydjYXRpZCddOwogIH0KCiRwYXJlbnRpZCA9ICctMSc7CmlmIChpc3NldCgkcGFyYW1zWydwYXJlbnQnXSkpCiAgewogICAgJHBhcmVudGlkID0gJHBhcmFtc1sncGFyZW50J107CiAgfQoKJG9yaWduYW1lID0gJyc7CmlmIChpc3NldCgkcGFyYW1zWydvcmlnbmFtZSddKSkKICB7CiAgICAkb3JpZ25hbWUgPSAkcGFyYW1zWydvcmlnbmFtZSddOwogIH0KCiRuYW1lID0gJyc7CmlmIChpc3NldCgkcGFyYW1zWyduYW1lJ10pKQogIHsKICAgICRuYW1lID0gJHBhcmFtc1snbmFtZSddOwogICAgaWYgKCRuYW1lICE9ICcnKQogICAgICB7CgkkcXVlcnkgPSAnVVBEQVRFICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfY29tcGRpcl9oaWVyIFNFVCBuYW1lID0gPywgcGFyZW50X2lkID0gPyBXSEVSRSBpZCA9ID8nOwoJJHBhcm1zID0gYXJyYXkoJG5hbWUsJHBhcmVudGlkLCAkY2F0aWQpOwoJJGRiLT5FeGVjdXRlKCRxdWVyeSwgJHBhcm1zKTsKCSR0aGlzLT5VcGRhdGVIaWVyYXJjaHlQb3NpdGlvbnMoKTsKCgkkdGhpcy0+U2V0TWVzc2FnZSgkdGhpcy0+TGFuZygnbXNnX2hpZXJ1cGRhdGVkJykpOwoJJHRoaXMtPlNldEN1cnJlbnRUYWIoJ2hpZXInKTsKCSR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwgJycsICcnLCAnYWRtaW5fc2V0dGluZ3MnKTsKICAgICAgfQogICAgZWxzZQogICAgICB7CgllY2hvICR0aGlzLT5TaG93RXJyb3JzKCR0aGlzLT5MYW5nKCdub25hbWVnaXZlbicpKTsKICAgICAgfQogIH0KIGVsc2UKICAgewogICAgICRxdWVyeSA9ICdTRUxFQ1QgKiBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfY29tcGRpcl9oaWVyIFdIRVJFIGlkID0gPyc7CiAgICAgJHJvdyA9ICRkYi0+R2V0Um93KCRxdWVyeSwgYXJyYXkoJGNhdGlkKSk7CgogICAgIGlmICgkcm93KQogICAgICAgewoJICRuYW1lID0gJHJvd1snbmFtZSddOwoJICRwYXJlbnRpZCA9ICRyb3dbJ3BhcmVudF9pZCddOwogICAgICAgfQogICB9CgoKI0Rpc3BsYXkgdGVtcGxhdGUKJHNtYXJ0eS0+YXNzaWduKCdzdGFydGZvcm0nLCAkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0KCRpZCwgJ2FkbWluX2VkaXRoaWVyJywgJHJldHVybmlkKSk7CiRzbWFydHktPmFzc2lnbignZW5kZm9ybScsICR0aGlzLT5DcmVhdGVGb3JtRW5kKCkpOwokc21hcnR5LT5hc3NpZ24oJ25hbWV0ZXh0JywgJHRoaXMtPkxhbmcoJ25hbWUnKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRuYW1lJywgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsICduYW1lJywgJG5hbWUsIDIwLCAyNTUpKTsKJHNtYXJ0eS0+YXNzaWduKCdwYXJlbnRkcm9wZG93bicsICR0aGlzLT5DcmVhdGVQYXJlbnREcm9wZG93bigkaWQsICRjYXRpZCwgJHBhcmVudGlkKSk7CiRzbWFydHktPmFzc2lnbignaGlkZGVuJywgCgkJICAgICAgJHRoaXMtPkNyZWF0ZUlucHV0SGlkZGVuKCRpZCwgJ2NhdGlkJywgJGNhdGlkKS4KCQkgICAgICAkdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLCdvcmlnbmFtZScsJG5hbWUpKTsKJHNtYXJ0eS0+YXNzaWduKCdzdWJtaXQnLCAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCAnc3VibWl0JywgbGFuZygnc3VibWl0JykpKTsKJHNtYXJ0eS0+YXNzaWduKCdjYW5jZWwnLCAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCAnY2FuY2VsJywgbGFuZygnY2FuY2VsJykpKTsKJHNtYXJ0eS0+YXNzaWduKCdwYXJlbnR0ZXh0JywgbGFuZygncGFyZW50JykpOwplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ2VkaXRoaWVyLnRwbCcpOwoKCiMKIyBFT0YKIwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.admin_saveprefs.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoICRnQ21zICkgKSByZXR1cm47CgppZiggISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBTaXRlIFByZWZlcmVuY2VzJykgKQogIHsKICAgIHJldHVybjsKICB9CgppZiggIWlzc2V0KCAkcGFyYW1zWydzdWJtaXQnXSApICkKICB7CiAgICAkdGhpcy0+UmVkaXJlY3QoICRpZCwgJ2FkbWluX3NldHRpbmdzJywgJHJldHVybmlkLCBhcnJheSgnYWN0aXZlX3RhYic9PidwcmVmcycpKTsKICB9CgppZiggaXNzZXQoJHBhcmFtc1snZGV0YWlscGFnZSddKSApCiAgewogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ2RldGFpbHBhZ2UnLCRwYXJhbXNbJ2RldGFpbHBhZ2UnXSk7CiAgfQoKaWYoIGlzc2V0KCRwYXJhbXNbJ3NvcnRvcmRlciddKSApCiAgewogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ3NvcnRvcmRlcicsJHBhcmFtc1snc29ydG9yZGVyJ10pOwogIH0KCmlmKCBpc3NldCgkcGFyYW1zWydzb3J0YnknXSkgKQogIHsKICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdzb3J0YnknLCRwYXJhbXNbJ3NvcnRieSddKTsKICB9CgokdGhpcy0+U2V0UHJlZmVyZW5jZSgnY29sbGVjdHN0YXRzJywkcGFyYW1zWydpbnB1dF9jb2xsZWN0c3RhdHMnXSk7CgppZiggaXNzZXQoJHBhcmFtc1snZnJvbnRlbmRjcmVhdGUnXSkgKQogIHsKICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdmcm9udGVuZF9jcmVhdGUnLCRwYXJhbXNbJ2Zyb250ZW5kY3JlYXRlJ10pOwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ2Zyb250ZW5kX251bXJlY29yZHMnLChpbnQpJHBhcmFtc1snZnJvbnRlbmRudW1yZWNvcmRzJ10pOwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ2Zyb250ZW5kX25ld3N0YXR1cycsJHBhcmFtc1snZnJvbnRlbmRuZXdzdGF0dXMnXSk7CiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgnZnJvbnRlbmRfY2hhbmdlc3RhdHVzJywkcGFyYW1zWydmcm9udGVuZGNoYW5nZXN0YXR1cyddKTsKICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdmcm9udGVuZF9pbXBvcnQnLCRwYXJhbXNbJ2Zyb250ZW5kaW1wb3J0J10pOwoKICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdmcm9udGVuZF9zaG93ZXhwaXJlZCcsJHBhcmFtc1snZnJvbnRlbmRfc2hvd2V4cGlyZWQnXSk7CiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgnZnJvbnRlbmRfZW1haWxvbmFkZCcsJHBhcmFtc1snZnJvbnRlbmRfZW1haWxvbmFkZCddKTsKICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdmcm9udGVuZF9lbWFpbG9uZWRpdCcsJHBhcmFtc1snZnJvbnRlbmRfZW1haWxvbmVkaXQnXSk7CiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgnZnJvbnRlbmRfZW1haWxncm91cCcsJHBhcmFtc1snZnJvbnRlbmRfZW1haWxncm91cCddKTsKICB9CgokdGhpcy0+UmVkaXJlY3QoICRpZCwgJ2FkbWluX3NldHRpbmdzJywgJHJldHVybmlkLCBhcnJheSgnYWN0aXZlX3RhYic9PidwcmVmcycpKTsKCi8vIEVPRgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.admin_save_email_template.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKaWYoICEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdNb2RpZnkgU2l0ZSBQcmVmZXJlbmNlcycpICkgZXhpdDsKCiR0aGlzLT5TZXRDdXJyZW50VGFiKCdlbWFpbF90ZW1wbGF0ZScpOwppZiggaXNzZXQoJHBhcmFtc1sncmVzZXQnXSkgKQogIHsKICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdhZG1pbl9mZWVkaXRfZW1haWxfc3ViamVjdCcsJHRoaXMtPkxhbmcoJ2ZlZWRpdF9lbWFpbF9zdWJqZWN0JykpOwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ2FkbWluX2ZlZWRpdF9lbWFpbF9pc2h0bWwnLDEpOwoKICAgICRmbiA9IGRpcm5hbWUoX19GSUxFX18pLicvdGVtcGxhdGVzL29yaWdfYWRtaW5fZmVlZGl0X2VtYWlsX3RlbXBsYXRlLnRwbCc7CiAgICBpZiggZmlsZV9leGlzdHMoJGZuKSApCiAgICAgIHsKCSR0ZW1wbGF0ZSA9IEBmaWxlX2dldF9jb250ZW50cygkZm4pOwoJJHRoaXMtPlNldFRlbXBsYXRlKCdhZG1pbl9mZWVkaXRfZW1haWxfdGVtcGxhdGUnLCR0ZW1wbGF0ZSk7CiAgICAgIH0KCiAgfQplbHNlIGlmICggaXNzZXQoJHBhcmFtc1snc3VibWl0J10pICkKICB7CiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgnYWRtaW5fZmVlZGl0X2VtYWlsX2lzaHRtbCcsKGludCkkcGFyYW1zWydlbWFpbF9pc2h0bWwnXSk7CiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgnYWRtaW5fZmVlZGl0X2VtYWlsX3N1YmplY3QnLHRyaW0oJHBhcmFtc1snZW1haWxfc3ViamVjdCddKSk7CiAgICAkdGhpcy0+U2V0VGVtcGxhdGUoJ2FkbWluX2ZlZWRpdF9lbWFpbF90ZW1wbGF0ZScsdHJpbSgkcGFyYW1zWydlbWFpbF90ZW1wbGF0ZSddKSk7CiAgfQoKJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkLCcnLCcnLCdhZG1pbl9zZXR0aW5ncycpOwoKIwojIEVPRgojCj8+]]></data>
	</file>
	<file>
	  <filename>/action.admin_setdflttemplates.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdCgpOwppZiggISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBUZW1wbGF0ZXMnKSApCiAgewogICAgZXhpdCgpOwogIH0KCmlmKCBpc3NldCggJHBhcmFtc1snc3VibWl0X3N1bW1hcnl0ZW1wbGF0ZSddICkgKQogIHsKICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKENPTVBBTllESVJfUFJFRl9ORVdTVU1NQVJZX1RFTVBMQVRFLAogICAgICAgICAgICAgICAgICAgICAgICAgdHJpbSgkcGFyYW1zWydpbnB1dF9zdW1tYXJ5dGVtcGxhdGUnXSkpOwogIH0KZWxzZSBpZiggaXNzZXQoICRwYXJhbXNbJ3Jlc2V0X3N1bW1hcnl0ZW1wbGF0ZSddICkgKQogIHsKICAgICRmbiA9IGRpcm5hbWUoX19GSUxFX18pLkRJUkVDVE9SWV9TRVBBUkFUT1IuCiAgICAgICd0ZW1wbGF0ZXMnLkRJUkVDVE9SWV9TRVBBUkFUT1IuJ29yaWdfc3VtbWFyeV90ZW1wbGF0ZS50cGwnOwogICAgaWYoIGZpbGVfZXhpc3RzKCAkZm4gKSApCiAgICAgIHsKICAgICAgICAkdGVtcGxhdGUgPSBAZmlsZV9nZXRfY29udGVudHMoJGZuKTsKICAgICAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZShDT01QQU5ZRElSX1BSRUZfTkVXU1VNTUFSWV9URU1QTEFURSwkdGVtcGxhdGUpOwogICAgICB9CiAgfQoKCmlmKCBpc3NldCggJHBhcmFtc1snc3VibWl0X2RldGFpbHRlbXBsYXRlJ10gKSApCiAgewogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoQ09NUEFOWURJUl9QUkVGX05FV0RFVEFJTF9URU1QTEFURSwKICAgICAgICAgICAgICAgICAgICAgICAgIHRyaW0oJHBhcmFtc1snaW5wdXRfZGV0YWlsdGVtcGxhdGUnXSkpOwogIH0KZWxzZSBpZiggaXNzZXQoICRwYXJhbXNbJ3Jlc2V0X2RldGFpbHRlbXBsYXRlJ10gKSApCiAgewogICAgJGZuID0gZGlybmFtZShfX0ZJTEVfXykuRElSRUNUT1JZX1NFUEFSQVRPUi4KICAgICAgJ3RlbXBsYXRlcycuRElSRUNUT1JZX1NFUEFSQVRPUi4nb3JpZ19kZXRhaWxfdGVtcGxhdGUudHBsJzsKICAgIGlmKCBmaWxlX2V4aXN0cyggJGZuICkgKQogICAgICB7CiAgICAgICAgJHRlbXBsYXRlID0gQGZpbGVfZ2V0X2NvbnRlbnRzKCRmbik7CiAgICAgICAgJHRoaXMtPlNldFByZWZlcmVuY2UoQ09NUEFOWURJUl9QUkVGX05FV0RFVEFJTF9URU1QTEFURSwkdGVtcGxhdGUpOwogICAgICB9CiAgfQoKaWYoIGlzc2V0KCAkcGFyYW1zWydzdWJtaXRfY2F0ZWdvcnlsaXN0dGVtcGxhdGUnXSApICkKICB7CiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZShDT01QQU5ZRElSX1BSRUZfTkVXQ0FURUdPUllMSVNUX1RFTVBMQVRFLAogICAgICAgICAgICAgICAgICAgICAgICAgdHJpbSgkcGFyYW1zWydpbnB1dF9jYXRlZ29yeWxpc3R0ZW1wbGF0ZSddKSk7CiAgfQplbHNlIGlmKCBpc3NldCggJHBhcmFtc1sncmVzZXRfY2F0ZWdvcnlsaXN0dGVtcGxhdGUnXSApICkKICB7CiAgICAkZm4gPSBkaXJuYW1lKF9fRklMRV9fKS5ESVJFQ1RPUllfU0VQQVJBVE9SLgogICAgICAndGVtcGxhdGVzJy5ESVJFQ1RPUllfU0VQQVJBVE9SLidvcmlnX2NhdGVnb3J5bGlzdF90ZW1wbGF0ZS50cGwnOwogICAgaWYoIGZpbGVfZXhpc3RzKCAkZm4gKSApCiAgICAgIHsKICAgICAgICAkdGVtcGxhdGUgPSBAZmlsZV9nZXRfY29udGVudHMoJGZuKTsKICAgICAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZShDT01QQU5ZRElSX1BSRUZfTkVXQ0FURUdPUllMSVNUX1RFTVBMQVRFLCR0ZW1wbGF0ZSk7CiAgICAgIH0KICB9CgppZiggaXNzZXQoICRwYXJhbXNbJ3N1Ym1pdF9oaWVybGlzdHRlbXBsYXRlJ10gKSApCiAgewogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoQ09NUEFOWURJUl9QUkVGX05FV0hJRVJMSVNUX1RFTVBMQVRFLAogICAgICAgICAgICAgICAgICAgICAgICAgdHJpbSgkcGFyYW1zWydpbnB1dF9oaWVybGlzdHRlbXBsYXRlJ10pKTsKICB9CmVsc2UgaWYoIGlzc2V0KCAkcGFyYW1zWydyZXNldF9oaWVybGlzdHRlbXBsYXRlJ10gKSApCiAgewogICAgJGZuID0gZGlybmFtZShfX0ZJTEVfXykuRElSRUNUT1JZX1NFUEFSQVRPUi4KICAgICAgJ3RlbXBsYXRlcycuRElSRUNUT1JZX1NFUEFSQVRPUi4nb3JpZ19oaWVybGlzdF90ZW1wbGF0ZS50cGwnOwogICAgaWYoIGZpbGVfZXhpc3RzKCAkZm4gKSApCiAgICAgIHsKICAgICAgICAkdGVtcGxhdGUgPSBAZmlsZV9nZXRfY29udGVudHMoJGZuKTsKICAgICAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZShDT01QQU5ZRElSX1BSRUZfTkVXSElFUkxJU1RfVEVNUExBVEUsJHRlbXBsYXRlKTsKICAgICAgfQogIH0KCgppZiggaXNzZXQoICRwYXJhbXNbJ3N1Ym1pdF9zZWFyY2hmb3JtdGVtcGxhdGUnXSApICkKICB7CiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZShDT01QQU5ZRElSX1BSRUZfTkVXU0VBUkNIRk9STV9URU1QTEFURSwKICAgICAgICAgICAgICAgICAgICAgICAgIHRyaW0oJHBhcmFtc1snaW5wdXRfc2VhcmNoZm9ybXRlbXBsYXRlJ10pKTsKICB9CmVsc2UgaWYoIGlzc2V0KCAkcGFyYW1zWydyZXNldF9zZWFyY2hmb3JtdGVtcGxhdGUnXSApICkKICB7CiAgICAkZm4gPSBkaXJuYW1lKF9fRklMRV9fKS5ESVJFQ1RPUllfU0VQQVJBVE9SLgogICAgICAndGVtcGxhdGVzJy5ESVJFQ1RPUllfU0VQQVJBVE9SLidvcmlnX3NlYXJjaGZvcm1fdGVtcGxhdGUudHBsJzsKICAgIGlmKCBmaWxlX2V4aXN0cyggJGZuICkgKQogICAgICB7CiAgICAgICAgJHRlbXBsYXRlID0gQGZpbGVfZ2V0X2NvbnRlbnRzKCRmbik7CiAgICAgICAgJHRoaXMtPlNldFByZWZlcmVuY2UoQ09NUEFOWURJUl9QUkVGX05FV1NFQVJDSEZPUk1fVEVNUExBVEUsJHRlbXBsYXRlKTsKICAgICAgfQogIH0KCmlmKCBpc3NldCggJHBhcmFtc1snc3VibWl0X2Zyb250ZW5kZm9ybXRlbXBsYXRlJ10gKSApCiAgewogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoQ09NUEFOWURJUl9QUkVGX05FV0ZST05URU5ERk9STV9URU1QTEFURSwKICAgICAgICAgICAgICAgICAgICAgICAgIHRyaW0oJHBhcmFtc1snaW5wdXRfZnJvbnRlbmRmb3JtdGVtcGxhdGUnXSkpOwogIH0KZWxzZSBpZiggaXNzZXQoICRwYXJhbXNbJ3Jlc2V0X2Zyb250ZW5kZm9ybXRlbXBsYXRlJ10gKSApCiAgewogICAgJGZuID0gZGlybmFtZShfX0ZJTEVfXykuRElSRUNUT1JZX1NFUEFSQVRPUi4KICAgICAgJ3RlbXBsYXRlcycuRElSRUNUT1JZX1NFUEFSQVRPUi4nb3JpZ19mcm9udGVuZGZvcm1fdGVtcGxhdGUudHBsJzsKICAgIGlmKCBmaWxlX2V4aXN0cyggJGZuICkgKQogICAgICB7CiAgICAgICAgJHRlbXBsYXRlID0gQGZpbGVfZ2V0X2NvbnRlbnRzKCRmbik7CiAgICAgICAgJHRoaXMtPlNldFByZWZlcmVuY2UoQ09NUEFOWURJUl9QUkVGX05FV0ZST05URU5ERk9STV9URU1QTEFURSwkdGVtcGxhdGUpOwogICAgICB9CiAgfQoKaWYoIGlzc2V0KCAkcGFyYW1zWydzdWJtaXRfZnJvbnRlbmRsaXN0dGVtcGxhdGUnXSApICkKICB7CiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZShDT01QQU5ZRElSX1BSRUZfTkVXRlJPTlRFTkRMSVNUX1RFTVBMQVRFLAogICAgICAgICAgICAgICAgICAgICAgICAgdHJpbSgkcGFyYW1zWydpbnB1dF9mcm9udGVuZGxpc3R0ZW1wbGF0ZSddKSk7CiAgfQplbHNlIGlmKCBpc3NldCggJHBhcmFtc1sncmVzZXRfZnJvbnRlbmRsaXN0dGVtcGxhdGUnXSApICkKICB7CiAgICAkZm4gPSBkaXJuYW1lKF9fRklMRV9fKS5ESVJFQ1RPUllfU0VQQVJBVE9SLgogICAgICAndGVtcGxhdGVzJy5ESVJFQ1RPUllfU0VQQVJBVE9SLidvcmlnX2Zyb250ZW5kbGlzdF90ZW1wbGF0ZS50cGwnOwogICAgaWYoIGZpbGVfZXhpc3RzKCAkZm4gKSApCiAgICAgIHsKICAgICAgICAkdGVtcGxhdGUgPSBAZmlsZV9nZXRfY29udGVudHMoJGZuKTsKICAgICAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZShDT01QQU5ZRElSX1BSRUZfTkVXRlJPTlRFTkRMSVNUX1RFTVBMQVRFLCR0ZW1wbGF0ZSk7CiAgICAgIH0KICB9CgokdGhpcy0+UmVkaXJlY3QoJGlkLCdhZG1pbl90ZW1wbGF0ZXMnLCRyZXR1cm5pZCxhcnJheSgnYWN0aXZlX3RhYic9PidkZWZhdWx0X3RlbXBsYXRlcycpKTsKLy8gRU9GCj8+]]></data>
	</file>
	<file>
	  <filename>/action.admin_settings.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKaWYoICEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdNb2RpZnkgU2l0ZSBQcmVmZXJlbmNlcycpICkgZXhpdDsKCiR0YWIgPSAnJzsKaWYgKGlzc2V0KCRwYXJhbXNbJ2FjdGl2ZV90YWInXSkpCnsKCSR0YWIgPSAkcGFyYW1zWydhY3RpdmVfdGFiJ107CgkkdGhpcy0+U2V0Q3VycmVudFRhYigkdGFiKTsKfQoKZWNobyAnPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93IiBzdHlsZT0idGV4dC1hbGlnbjogcmlnaHQ7IHdpZHRoOiA4MCU7Ij4nLgokdGhpcy0+Q3JlYXRlSW1hZ2VMaW5rKCRpZCwnZGVmYXVsdGFkbWluJywkcmV0dXJuaWQsCgkJICAgICAgICR0aGlzLT5MYW5nKCdsYmxfYmFjaycpLCdpY29ucy9zeXN0ZW0vYmFjay5naWYnLGFycmF5KCksJycsJycsZmFsc2UpLic8L2Rpdj48YnIvPic7CgplY2hvICR0aGlzLT5TdGFydFRhYkhlYWRlcnMoKTsKZWNobyAkdGhpcy0+U2V0VGFiSGVhZGVyKCdmaWVsZGRlZnMnLCR0aGlzLT5MYW5nKCdmaWVsZGRlZnMnKSk7CmVjaG8gJHRoaXMtPlNldFRhYkhlYWRlcignY2F0ZWdvcmllcycsJHRoaXMtPkxhbmcoJ2NhdGVnb3JpZXMnKSk7CmVjaG8gJHRoaXMtPlNldFRhYkhlYWRlcignaGllcicsJHRoaXMtPkxhbmcoJ2hpZXJhcmNoeScpKTsKZWNobyAkdGhpcy0+U2V0VGFiSGVhZGVyKCdlbWFpbF90ZW1wbGF0ZScsJHRoaXMtPkxhbmcoJ2VtYWlsX3RlbXBsYXRlJykpOwplY2hvICR0aGlzLT5TZXRUYWJIZWFkZXIoJ3VybHMnLCR0aGlzLT5MYW5nKCd1cmxzJykpOwplY2hvICR0aGlzLT5TZXRUYWJIZWFkZXIoJ3ByZWZzJywkdGhpcy0+TGFuZygncHJlZmVyZW5jZXMnKSk7CmVjaG8gJHRoaXMtPkVuZFRhYkhlYWRlcnMoKTsKCgplY2hvICR0aGlzLT5TdGFydFRhYkNvbnRlbnQoKTsKCmVjaG8gJHRoaXMtPlN0YXJ0VGFiKCdmaWVsZGRlZnMnLCAkcGFyYW1zKTsKaW5jbHVkZShkaXJuYW1lKF9fRklMRV9fKS4nL2Z1bmN0aW9uLmFkbWluX2ZpZWxkZGVmc3RhYi5waHAnKTsKZWNobyAkdGhpcy0+RW5kVGFiKCk7CgplY2hvICR0aGlzLT5TdGFydFRhYignY2F0ZWdvcmllcycsICRwYXJhbXMpOwoJCiNQdXQgdG9nZXRoZXIgYSBsaXN0IG9mIGN1cnJlbnQgY2F0ZWdvcmllcy4uLgokZW50cnlhcnJheSA9IGFycmF5KCk7CgkKJHF1ZXJ5ID0gIlNFTEVDVCAqIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9jb21wZGlyX2NhdGVnb3JpZXMgT1JERVIgQlkgbmFtZSI7CiRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkcXVlcnkpOwoJCiRyb3djbGFzcyA9ICdyb3cxJzsKCQp3aGlsZSAoJGRicmVzdWx0ICYmICRyb3cgPSAkZGJyZXN1bHQtPkZldGNoUm93KCkpCiAgewogICAgJG9uZXJvdyA9IG5ldyBzdGRDbGFzcygpOwoJCiAgICAkb25lcm93LT5pZCA9ICRyb3dbJ2lkJ107CiAgICAkb25lcm93LT5uYW1lID0gJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCAnZWRpdGNhdGVnb3J5JywgJHJldHVybmlkLCAkcm93WyduYW1lJ10sIGFycmF5KCdjYXRpZCc9PiRyb3dbJ2lkJ10pKTsKCQogICAgJG9uZXJvdy0+ZWRpdGxpbmsgPSAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdlZGl0Y2F0ZWdvcnknLCAkcmV0dXJuaWQsICRnQ21zLT52YXJpYWJsZXNbJ2FkbWludGhlbWUnXS0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vZWRpdC5naWYnLCAkdGhpcy0+TGFuZygnZWRpdCcpLCcnLCcnLCdzeXN0ZW1pY29uJyksIGFycmF5KCdjYXRpZCc9PiRyb3dbJ2lkJ10pKTsKCiAgICAkb25lcm93LT5kZWxldGVsaW5rID0gJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCAnZGVsZXRlY2F0ZWdvcnknLCAkcmV0dXJuaWQsICRnQ21zLT52YXJpYWJsZXNbJ2FkbWludGhlbWUnXS0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vZGVsZXRlLmdpZicsICR0aGlzLT5MYW5nKCdkZWxldGUnKSwnJywnJywnc3lzdGVtaWNvbicpLCBhcnJheSgnY2F0aWQnPT4kcm93WydpZCddKSwgJHRoaXMtPkxhbmcoJ2FyZXlvdXN1cmUnKSk7CgkKICAgICRvbmVyb3ctPnJvd2NsYXNzID0gJHJvd2NsYXNzOwoKICAgICRlbnRyeWFycmF5W10gPSAkb25lcm93OwoJCiAgICAoJHJvd2NsYXNzPT0icm93MSI/JHJvd2NsYXNzPSJyb3cyIjokcm93Y2xhc3M9InJvdzEiKTsKICB9CgkKJHRoaXMtPnNtYXJ0eS0+YXNzaWduX2J5X3JlZignaXRlbXMnLCAkZW50cnlhcnJheSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignaXRlbWNvdW50JywgY291bnQoJGVudHJ5YXJyYXkpKTsKCQojU2V0dXAgbGlua3MKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdhZGRsaW5rJywgJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCAnYWRkY2F0ZWdvcnknLCAkcmV0dXJuaWQsICRnQ21zLT52YXJpYWJsZXNbJ2FkbWludGhlbWUnXS0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vbmV3Zm9sZGVyLmdpZicsICR0aGlzLT5MYW5nKCdhZGRjYXRlZ29yeScpLCcnLCcnLCdzeXN0ZW1pY29uJyksIGFycmF5KCksICcnLCBmYWxzZSwgZmFsc2UsICcnKSAuJyAnLiAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdhZGRjYXRlZ29yeScsICRyZXR1cm5pZCwgJHRoaXMtPkxhbmcoJ2FkZGNhdGVnb3J5JyksIGFycmF5KCksICcnLCBmYWxzZSwgZmFsc2UsICdjbGFzcz0icGFnZW9wdGlvbnMiJykpOwoJCiR0aGlzLT5zbWFydHktPmFzc2lnbignY2F0ZWdvcnl0ZXh0JywgJHRoaXMtPkxhbmcoJ2NhdGVnb3J5JykpOwoJCiNEaXNwbGF5IHRlbXBsYXRlCmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSgnY2F0ZWdvcnlsaXN0LnRwbCcpOwkKZWNobyAkdGhpcy0+RW5kVGFiKCk7CgojIEhpZXJhcmNoeSBUYWIKZWNobyAkdGhpcy0+U3RhcnRUYWIoJ2hpZXInLCRwYXJhbXMpOwppbmNsdWRlKGRpcm5hbWUoX19GSUxFX18pLicvZnVuY3Rpb24uYWRtaW5faGllcnRhYi5waHAnKTsKZWNobyAkdGhpcy0+RW5kVGFiKCk7CgojIEFkbWluIEVtYWlsIFRlbXBsYXRlIFRhYgplY2hvICR0aGlzLT5TdGFydFRhYignZW1haWxfdGVtcGxhdGUnLCRwYXJhbXMpOwppbmNsdWRlKGRpcm5hbWUoX19GSUxFX18pLicvZnVuY3Rpb24uYWRtaW5fZW1haWxfdGVtcGxhdGVfdGFiLnBocCcpOwplY2hvICR0aGlzLT5FbmRUYWIoKTsKCiMgVVJMUyB0YWIKZWNobyAkdGhpcy0+U3RhcnRUYWIoJ3VybHMnLCRwYXJhbXMpOwppbmNsdWRlKGRpcm5hbWUoX19GSUxFX18pLicvZnVuY3Rpb24uYWRtaW5fdXJsc3RhYi5waHAnKTsKZWNobyAkdGhpcy0+RW5kVGFiKCk7CgojIFByZWZzIHRhYgplY2hvICR0aGlzLT5TdGFydFRhYigncHJlZnMnLCRwYXJhbXMpOwppbmNsdWRlKGRpcm5hbWUoX19GSUxFX18pLicvZnVuY3Rpb24uYWRtaW5fcHJlZnN0YWIucGhwJyk7CmVjaG8gJHRoaXMtPkVuZFRhYigpOwoKZWNobyAkdGhpcy0+RW5kVGFiQ29udGVudCgpOwoKIwojIEVPRgojCj8+]]></data>
	</file>
	<file>
	  <filename>/action.admin_templates.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdCgpOwppZiggISR0aGlzLT5DaGVja1Blcm1pc3Npb24oICdNb2RpZnkgVGVtcGxhdGVzJyApICkgZXhpdCgpOwoKJHRhYiA9ICcnOwppZiAoaXNzZXQoJHBhcmFtc1snYWN0aXZlX3RhYiddKSkKewoJJHRhYiA9ICRwYXJhbXNbJ2FjdGl2ZV90YWInXTsKCSR0aGlzLT5TZXRDdXJyZW50VGFiKCR0YWIpOwp9CgplY2hvICc8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciIHN0eWxlPSJ0ZXh0LWFsaWduOiByaWdodDsgd2lkdGg6IDgwJTsiPicuCiR0aGlzLT5DcmVhdGVJbWFnZUxpbmsoJGlkLCdkZWZhdWx0YWRtaW4nLCRyZXR1cm5pZCwKCQkgICAgICAgJHRoaXMtPkxhbmcoJ2xibF9iYWNrJyksJ2ljb25zL3N5c3RlbS9iYWNrLmdpZicsYXJyYXkoKSwnJywnJyxmYWxzZSkuJzwvZGl2Pjxici8+JzsKCmVjaG8gJHRoaXMtPlN0YXJ0VGFiSGVhZGVycygpOwplY2hvICR0aGlzLT5TZXRUYWJIZWFkZXIoJ3N1bW1hcnlfdGVtcGxhdGUnLCR0aGlzLT5MYW5nKCdzdW1tYXJ5dGVtcGxhdGVzJykpOwplY2hvICR0aGlzLT5TZXRUYWJIZWFkZXIoJ2RldGFpbF90ZW1wbGF0ZScsJHRoaXMtPkxhbmcoJ2RldGFpbHRlbXBsYXRlcycpKTsKZWNobyAkdGhpcy0+U2V0VGFiSGVhZGVyKCdjYXRlZ29yeWxpc3RfdGVtcGxhdGUnLCR0aGlzLT5MYW5nKCdjYXRlZ29yeWxpc3R0ZW1wbGF0ZXMnKSk7CmVjaG8gJHRoaXMtPlNldFRhYkhlYWRlcignaGllcmxpc3RfdGVtcGxhdGUnLCR0aGlzLT5MYW5nKCdoaWVyYXJjaHlsaXN0dGVtcGxhdGVzJykpOwplY2hvICR0aGlzLT5TZXRUYWJIZWFkZXIoJ3NlYXJjaGZvcm1fdGVtcGxhdGUnLCR0aGlzLT5MYW5nKCdzZWFyY2hmb3JtdGVtcGxhdGVzJykpOwplY2hvICR0aGlzLT5TZXRUYWJIZWFkZXIoJ2Zyb250ZW5kZm9ybV90ZW1wbGF0ZScsJHRoaXMtPkxhbmcoJ2Zyb250ZW5kZm9ybXRlbXBsYXRlcycpKTsKZWNobyAkdGhpcy0+U2V0VGFiSGVhZGVyKCdmcm9udGVuZGxpc3RfdGVtcGxhdGUnLCR0aGlzLT5MYW5nKCdmcm9udGVuZGxpc3R0ZW1wbGF0ZXMnKSk7CmVjaG8gJHRoaXMtPlNldFRhYkhlYWRlcignZnJvbnRlbmRpbXBvcnRfdGVtcGxhdGUnLCR0aGlzLT5MYW5nKCdmcm9udGVuZGltcG9ydHRlbXBsYXRlJykpOwplY2hvICR0aGlzLT5TZXRUYWJIZWFkZXIoJ2RlZmF1bHRfdGVtcGxhdGVzJywkdGhpcy0+TGFuZygnZGVmYXVsdHRlbXBsYXRlcycpKTsKZWNobyAkdGhpcy0+RW5kVGFiSGVhZGVycygpOwoKZWNobyAkdGhpcy0+U3RhcnRUYWJDb250ZW50KCk7CmVjaG8gJHRoaXMtPlN0YXJ0VGFiKCdzdW1tYXJ5X3RlbXBsYXRlJywgJHBhcmFtcyk7CnsKICBlY2hvICR0aGlzLT5TaG93VGVtcGxhdGVMaXN0KCRpZCwkcmV0dXJuaWQsJ3N1bW1hcnlfJywKCQkJICAgICAgIENPTVBBTllESVJfUFJFRl9ORVdTVU1NQVJZX1RFTVBMQVRFLAoJCQkgICAgICAgJ3N1bW1hcnlfdGVtcGxhdGUnLAoJCQkgICAgICAgQ09NUEFOWURJUl9QUkVGX0RGTFRTVU1NQVJZX1RFTVBMQVRFLAoJCQkgICAgICAgJHRoaXMtPkxhbmcoJ3N1bW1hcnl0ZW1wbGF0ZV9hZGRlZGl0JyksCgkJCSAgICAgICAnJywnYWRtaW5fdGVtcGxhdGVzJyk7Cn0KZWNobyAkdGhpcy0+RW5kVGFiKCk7CgkKCmVjaG8gJHRoaXMtPlN0YXJ0VGFiKCdkZXRhaWxfdGVtcGxhdGUnLCAkcGFyYW1zKTsKewogIGVjaG8gJHRoaXMtPlNob3dUZW1wbGF0ZUxpc3QoJGlkLCRyZXR1cm5pZCwnZGV0YWlsXycsCgkJCSAgICAgICBDT01QQU5ZRElSX1BSRUZfTkVXREVUQUlMX1RFTVBMQVRFLAoJCQkgICAgICAgJ2RldGFpbF90ZW1wbGF0ZScsCgkJCSAgICAgICBDT01QQU5ZRElSX1BSRUZfREZMVERFVEFJTF9URU1QTEFURSwKCQkJICAgICAgICR0aGlzLT5MYW5nKCdkZXRhaWx0ZW1wbGF0ZV9hZGRlZGl0JyksCgkJCSAgICAgICAnJywnYWRtaW5fdGVtcGxhdGVzJyk7Cn0KZWNobyAkdGhpcy0+RW5kVGFiKCk7CgoKZWNobyAkdGhpcy0+U3RhcnRUYWIoJ2NhdGVnb3J5bGlzdF90ZW1wbGF0ZScsICRwYXJhbXMpOwp7CiAgZWNobyAkdGhpcy0+U2hvd1RlbXBsYXRlTGlzdCgkaWQsJHJldHVybmlkLCdjYXRlZ29yeWxpc3RfJywKCQkJICAgICAgIENPTVBBTllESVJfUFJFRl9ORVdDQVRFR09SWUxJU1RfVEVNUExBVEUsCgkJCSAgICAgICAnY2F0ZWdvcnlsaXN0X3RlbXBsYXRlJywKCQkJICAgICAgIENPTVBBTllESVJfUFJFRl9ERkxUQ0FURUdPUllMSVNUX1RFTVBMQVRFLAoJCQkgICAgICAgJHRoaXMtPkxhbmcoJ2NhdGVnb3J5bGlzdHRlbXBsYXRlX2FkZGVkaXQnKSwKCQkJICAgICAgICcnLCdhZG1pbl90ZW1wbGF0ZXMnKTsKfQplY2hvICR0aGlzLT5FbmRUYWIoKTsKCmVjaG8gJHRoaXMtPlN0YXJ0VGFiKCdoaWVybGlzdF90ZW1wbGF0ZScsICRwYXJhbXMpOwp7CiAgZWNobyAkdGhpcy0+U2hvd1RlbXBsYXRlTGlzdCgkaWQsJHJldHVybmlkLCdoaWVybGlzdF8nLAoJCQkgICAgICAgQ09NUEFOWURJUl9QUkVGX05FV0hJRVJMSVNUX1RFTVBMQVRFLAoJCQkgICAgICAgJ2hpZXJsaXN0X3RlbXBsYXRlJywKCQkJICAgICAgIENPTVBBTllESVJfUFJFRl9ERkxUSElFUkxJU1RfVEVNUExBVEUsCgkJCSAgICAgICAkdGhpcy0+TGFuZygnaGllcmxpc3R0ZW1wbGF0ZV9hZGRlZGl0JyksCgkJCSAgICAgICAnJywnYWRtaW5fdGVtcGxhdGVzJyk7Cn0KZWNobyAkdGhpcy0+RW5kVGFiKCk7CgoKZWNobyAkdGhpcy0+U3RhcnRUYWIoJ3NlYXJjaGZvcm1fdGVtcGxhdGUnLCAkcGFyYW1zKTsKewogIGVjaG8gJHRoaXMtPlNob3dUZW1wbGF0ZUxpc3QoJGlkLCRyZXR1cm5pZCwnc2VhcmNoZm9ybV8nLAoJCQkgICAgICAgQ09NUEFOWURJUl9QUkVGX05FV1NFQVJDSEZPUk1fVEVNUExBVEUsCgkJCSAgICAgICAnc2VhcmNoZm9ybV90ZW1wbGF0ZScsCgkJCSAgICAgICBDT01QQU5ZRElSX1BSRUZfREZMVFNFQVJDSEZPUk1fVEVNUExBVEUsCgkJCSAgICAgICAkdGhpcy0+TGFuZygnc2VhcmNoZm9ybXRlbXBsYXRlX2FkZGVkaXQnKSwKCQkJICAgICAgICcnLCdhZG1pbl90ZW1wbGF0ZXMnKTsKfQplY2hvICR0aGlzLT5FbmRUYWIoKTsKCgplY2hvICR0aGlzLT5TdGFydFRhYignZnJvbnRlbmRmb3JtX3RlbXBsYXRlJywgJHBhcmFtcyk7CnsKICBlY2hvICR0aGlzLT5TaG93VGVtcGxhdGVMaXN0KCRpZCwkcmV0dXJuaWQsJ2Zyb250ZW5kZm9ybV8nLAoJCQkgICAgICAgQ09NUEFOWURJUl9QUkVGX05FV0ZST05URU5ERk9STV9URU1QTEFURSwKCQkJICAgICAgICdmcm9udGVuZGZvcm1fdGVtcGxhdGUnLAoJCQkgICAgICAgQ09NUEFOWURJUl9QUkVGX0RGTFRGUk9OVEVOREZPUk1fVEVNUExBVEUsCgkJCSAgICAgICAkdGhpcy0+TGFuZygnZnJvbnRlbmRmb3JtdGVtcGxhdGVfYWRkZWRpdCcpLAoJCQkgICAgICAgJycsJ2FkbWluX3RlbXBsYXRlcycpOwp9CmVjaG8gJHRoaXMtPkVuZFRhYigpOwoKCmVjaG8gJHRoaXMtPlN0YXJ0VGFiKCdmcm9udGVuZGxpc3RfdGVtcGxhdGUnLCAkcGFyYW1zKTsKewogIGVjaG8gJHRoaXMtPlNob3dUZW1wbGF0ZUxpc3QoJGlkLCRyZXR1cm5pZCwnZnJvbnRlbmRsaXN0XycsCgkJCSAgICAgICBDT01QQU5ZRElSX1BSRUZfTkVXRlJPTlRFTkRMSVNUX1RFTVBMQVRFLAoJCQkgICAgICAgJ2Zyb250ZW5kbGlzdF90ZW1wbGF0ZScsCgkJCSAgICAgICBDT01QQU5ZRElSX1BSRUZfREZMVEZST05URU5ETElTVF9URU1QTEFURSwKCQkJICAgICAgICR0aGlzLT5MYW5nKCdmcm9udGVuZGxpc3R0ZW1wbGF0ZV9hZGRlZGl0JyksCgkJCSAgICAgICAnJywnYWRtaW5fdGVtcGxhdGVzJyk7Cn0KZWNobyAkdGhpcy0+RW5kVGFiKCk7CgplY2hvICR0aGlzLT5TdGFydFRhYignZnJvbnRlbmRpbXBvcnRfdGVtcGxhdGUnLCRwYXJhbXMpOwokc21hcnR5LT5hc3NpZ24oJ2lmb3Jtc3RhcnQnLCR0aGlzLT5DR0NyZWF0ZUZvcm1TdGFydCgkaWQsJ2FkbWluX2RvaW1wb3J0dGVtcGxhdGUnKSk7CiRzbWFydHktPmFzc2lnbignaWZvcm1lbmQnLCR0aGlzLT5DcmVhdGVGb3JtRW5kKCkpOwokc21hcnR5LT5hc3NpZ24oJ2ZlaW1wb3J0X3RlbXBsYXRlJywkdGhpcy0+R2V0VGVtcGxhdGUoQ09NUEFOWURJUl9GUk9OVEVORElNUE9SVF9URU1QTEFURSkpOwplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ2Zyb250ZW5kaW1wb3J0X2Zvcm0udHBsJyk7CmVjaG8gJHRoaXMtPkVuZFRhYigpOwogICAgCmVjaG8gJHRoaXMtPlN0YXJ0VGFiKCdkZWZhdWx0X3RlbXBsYXRlcycpOwp7CiAgJGlucHV0X3N1bW1hcnl0ZW1wbGF0ZSA9CiAgICAkdGhpcy0+R2V0UHJlZmVyZW5jZShDT01QQU5ZRElSX1BSRUZfTkVXU1VNTUFSWV9URU1QTEFURSk7CiAgJGlucHV0X2RldGFpbHRlbXBsYXRlID0KICAgICR0aGlzLT5HZXRQcmVmZXJlbmNlKENPTVBBTllESVJfUFJFRl9ORVdERVRBSUxfVEVNUExBVEUpOwogICRpbnB1dF9jYXRlZ29yeWxpc3R0ZW1wbGF0ZSA9CiAgICAkdGhpcy0+R2V0UHJlZmVyZW5jZShDT01QQU5ZRElSX1BSRUZfTkVXQ0FURUdPUllMSVNUX1RFTVBMQVRFKTsKICAkaW5wdXRfaGllcmxpc3R0ZW1wbGF0ZSA9CiAgICAkdGhpcy0+R2V0UHJlZmVyZW5jZShDT01QQU5ZRElSX1BSRUZfTkVXSElFUkxJU1RfVEVNUExBVEUpOwogICRpbnB1dF9zZWFyY2hmb3JtdGVtcGxhdGUgPQogICAgJHRoaXMtPkdldFByZWZlcmVuY2UoQ09NUEFOWURJUl9QUkVGX05FV1NFQVJDSEZPUk1fVEVNUExBVEUpOwogICRpbnB1dF9mcm9udGVuZGZvcm10ZW1wbGF0ZSA9CiAgICAkdGhpcy0+R2V0UHJlZmVyZW5jZShDT01QQU5ZRElSX1BSRUZfTkVXRlJPTlRFTkRGT1JNX1RFTVBMQVRFKTsKICAkaW5wdXRfZnJvbnRlbmRsaXN0dGVtcGxhdGUgPQogICAgJHRoaXMtPkdldFByZWZlcmVuY2UoQ09NUEFOWURJUl9QUkVGX05FV0ZST05URU5ETElTVF9URU1QTEFURSk7CgogICRzbWFydHktPmFzc2lnbignaW5mb19kZmx0X3RlbXBsYXRlJywKCQkgICR0aGlzLT5MYW5nKCdkZWZhdWx0X3RlbXBsYXRlX25vdGljZScpKTsKCiAgJHNtYXJ0eS0+YXNzaWduKCd4Zm9ybXN0YXJ0JywKCQkgICR0aGlzLT5DcmVhdGVGb3JtU3RhcnQoJGlkLCdhZG1pbl9zZXRkZmx0dGVtcGxhdGVzJywKCQkJCQkgJHJldHVybmlkKSk7CiAgJHNtYXJ0eS0+YXNzaWduKCd4Zm9ybWVuZCcsCgkJICAkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsKCiAgJHNtYXJ0eS0+YXNzaWduKCdsZWdlbmRfc3VtbWFyeXRlbXBsYXRlJywKCQkgICR0aGlzLT5MYW5nKCd0aXRsZV9zdW1tYXJ5X2RmbHR0ZW1wbGF0ZScpKTsKICAkc21hcnR5LT5hc3NpZ24oJ3Byb21wdF9zdW1tYXJ5dGVtcGxhdGUnLAoJCSAgJHRoaXMtPkxhbmcoJ3Byb21wdF90ZW1wbGF0ZScpKTsKICAkc21hcnR5LT5hc3NpZ24oJ2lucHV0X3N1bW1hcnl0ZW1wbGF0ZScsCgkJICAkdGhpcy0+Q3JlYXRlVGV4dEFyZWEoZmFsc2UsJGlkLCRpbnB1dF9zdW1tYXJ5dGVtcGxhdGUsCgkJCQkJJ2lucHV0X3N1bW1hcnl0ZW1wbGF0ZScpKTsKICAkc21hcnR5LT5hc3NpZ24oJ3N1Ym1pdF9zdW1tYXJ5dGVtcGxhdGUnLAoJCSAgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwnc3VibWl0X3N1bW1hcnl0ZW1wbGF0ZScsCgkJCQkJICAgJHRoaXMtPkxhbmcoJ3N1Ym1pdCcpKSk7CiAgJHNtYXJ0eS0+YXNzaWduKCdyZXNldF9zdW1tYXJ5dGVtcGxhdGUnLAoJCSAgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwncmVzZXRfc3VtbWFyeXRlbXBsYXRlJywKCQkJCQkgICAkdGhpcy0+TGFuZygncmVzZXR0b2ZhY3RvcnknKSkpOwoKICAkc21hcnR5LT5hc3NpZ24oJ2xlZ2VuZF9kZXRhaWx0ZW1wbGF0ZScsCgkJICAkdGhpcy0+TGFuZygndGl0bGVfZGV0YWlsX2RmbHR0ZW1wbGF0ZScpKTsKICAkc21hcnR5LT5hc3NpZ24oJ3Byb21wdF9kZXRhaWx0ZW1wbGF0ZScsCgkJICAkdGhpcy0+TGFuZygncHJvbXB0X3RlbXBsYXRlJykpOwogICRzbWFydHktPmFzc2lnbignaW5wdXRfZGV0YWlsdGVtcGxhdGUnLAoJCSAgJHRoaXMtPkNyZWF0ZVRleHRBcmVhKGZhbHNlLCRpZCwkaW5wdXRfZGV0YWlsdGVtcGxhdGUsCgkJCQkJJ2lucHV0X2RldGFpbHRlbXBsYXRlJykpOwogICRzbWFydHktPmFzc2lnbignc3VibWl0X2RldGFpbHRlbXBsYXRlJywKCQkgICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsJ3N1Ym1pdF9kZXRhaWx0ZW1wbGF0ZScsCgkJCQkJICAgJHRoaXMtPkxhbmcoJ3N1Ym1pdCcpKSk7CiAgJHNtYXJ0eS0+YXNzaWduKCdyZXNldF9kZXRhaWx0ZW1wbGF0ZScsCgkJICAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCdyZXNldF9kZXRhaWx0ZW1wbGF0ZScsCgkJCQkJICAgJHRoaXMtPkxhbmcoJ3Jlc2V0dG9mYWN0b3J5JykpKTsKICAgIAogICRzbWFydHktPmFzc2lnbignbGVnZW5kX2NhdGVnb3J5bGlzdHRlbXBsYXRlJywKCQkgICR0aGlzLT5MYW5nKCd0aXRsZV9jYXRlZ29yeWxpc3RfZGZsdHRlbXBsYXRlJykpOwogICRzbWFydHktPmFzc2lnbigncHJvbXB0X2NhdGVnb3J5bGlzdHRlbXBsYXRlJywKCQkgICR0aGlzLT5MYW5nKCdwcm9tcHRfdGVtcGxhdGUnKSk7CiAgJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9jYXRlZ29yeWxpc3R0ZW1wbGF0ZScsCgkJICAkdGhpcy0+Q3JlYXRlVGV4dEFyZWEoZmFsc2UsJGlkLCRpbnB1dF9jYXRlZ29yeWxpc3R0ZW1wbGF0ZSwKCQkJCQknaW5wdXRfY2F0ZWdvcnlsaXN0dGVtcGxhdGUnKSk7CiAgJHNtYXJ0eS0+YXNzaWduKCdzdWJtaXRfY2F0ZWdvcnlsaXN0dGVtcGxhdGUnLAoJCSAgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwnc3VibWl0X2NhdGVnb3J5bGlzdHRlbXBsYXRlJywKCQkJCQkgICAkdGhpcy0+TGFuZygnc3VibWl0JykpKTsKICAkc21hcnR5LT5hc3NpZ24oJ3Jlc2V0X2NhdGVnb3J5bGlzdHRlbXBsYXRlJywKCQkgICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsJ3Jlc2V0X2NhdGVnb3J5bGlzdHRlbXBsYXRlJywKCQkJCQkgICAkdGhpcy0+TGFuZygncmVzZXR0b2ZhY3RvcnknKSkpOwoKICAkc21hcnR5LT5hc3NpZ24oJ2xlZ2VuZF9oaWVybGlzdHRlbXBsYXRlJywKCQkgICR0aGlzLT5MYW5nKCd0aXRsZV9oaWVybGlzdF9kZmx0dGVtcGxhdGUnKSk7CiAgJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfaGllcmxpc3R0ZW1wbGF0ZScsCgkJICAkdGhpcy0+TGFuZygncHJvbXB0X3RlbXBsYXRlJykpOwogICRzbWFydHktPmFzc2lnbignaW5wdXRfaGllcmxpc3R0ZW1wbGF0ZScsCgkJICAkdGhpcy0+Q3JlYXRlVGV4dEFyZWEoZmFsc2UsJGlkLCRpbnB1dF9oaWVybGlzdHRlbXBsYXRlLAoJCQkJCSdpbnB1dF9oaWVybGlzdHRlbXBsYXRlJykpOwogICRzbWFydHktPmFzc2lnbignc3VibWl0X2hpZXJsaXN0dGVtcGxhdGUnLAoJCSAgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwnc3VibWl0X2hpZXJsaXN0dGVtcGxhdGUnLAoJCQkJCSAgICR0aGlzLT5MYW5nKCdzdWJtaXQnKSkpOwogICRzbWFydHktPmFzc2lnbigncmVzZXRfaGllcmxpc3R0ZW1wbGF0ZScsCgkJICAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCdyZXNldF9oaWVybGlzdHRlbXBsYXRlJywKCQkJCQkgICAkdGhpcy0+TGFuZygncmVzZXR0b2ZhY3RvcnknKSkpOwoKICAkc21hcnR5LT5hc3NpZ24oJ2xlZ2VuZF9zZWFyY2hmb3JtdGVtcGxhdGUnLAoJCSAgJHRoaXMtPkxhbmcoJ3RpdGxlX3NlYXJjaGZvcm1fZGZsdHRlbXBsYXRlJykpOwogICRzbWFydHktPmFzc2lnbigncHJvbXB0X3NlYXJjaGZvcm10ZW1wbGF0ZScsCgkJICAkdGhpcy0+TGFuZygncHJvbXB0X3RlbXBsYXRlJykpOwogICRzbWFydHktPmFzc2lnbignaW5wdXRfc2VhcmNoZm9ybXRlbXBsYXRlJywKCQkgICR0aGlzLT5DcmVhdGVUZXh0QXJlYShmYWxzZSwkaWQsJGlucHV0X3NlYXJjaGZvcm10ZW1wbGF0ZSwKCQkJCQknaW5wdXRfc2VhcmNoZm9ybXRlbXBsYXRlJykpOwogICRzbWFydHktPmFzc2lnbignc3VibWl0X3NlYXJjaGZvcm10ZW1wbGF0ZScsCgkJICAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCdzdWJtaXRfc2VhcmNoZm9ybXRlbXBsYXRlJywKCQkJCQkgICAkdGhpcy0+TGFuZygnc3VibWl0JykpKTsKICAkc21hcnR5LT5hc3NpZ24oJ3Jlc2V0X3NlYXJjaGZvcm10ZW1wbGF0ZScsCgkJICAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCdyZXNldF9zZWFyY2hmb3JtdGVtcGxhdGUnLAoJCQkJCSAgICR0aGlzLT5MYW5nKCdyZXNldHRvZmFjdG9yeScpKSk7CiAgICAKICAkc21hcnR5LT5hc3NpZ24oJ2xlZ2VuZF9mcm9udGVuZGZvcm10ZW1wbGF0ZScsCgkJICAkdGhpcy0+TGFuZygndGl0bGVfZnJvbnRlbmRmb3JtX2RmbHR0ZW1wbGF0ZScpKTsKICAkc21hcnR5LT5hc3NpZ24oJ3Byb21wdF9mcm9udGVuZGZvcm10ZW1wbGF0ZScsCgkJICAkdGhpcy0+TGFuZygncHJvbXB0X3RlbXBsYXRlJykpOwogICRzbWFydHktPmFzc2lnbignaW5wdXRfZnJvbnRlbmRmb3JtdGVtcGxhdGUnLAoJCSAgJHRoaXMtPkNyZWF0ZVRleHRBcmVhKGZhbHNlLCRpZCwkaW5wdXRfZnJvbnRlbmRmb3JtdGVtcGxhdGUsCgkJCQkJJ2lucHV0X2Zyb250ZW5kZm9ybXRlbXBsYXRlJykpOwogICRzbWFydHktPmFzc2lnbignc3VibWl0X2Zyb250ZW5kZm9ybXRlbXBsYXRlJywKCQkgICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsJ3N1Ym1pdF9mcm9udGVuZGZvcm10ZW1wbGF0ZScsCgkJCQkJICAgJHRoaXMtPkxhbmcoJ3N1Ym1pdCcpKSk7CiAgJHNtYXJ0eS0+YXNzaWduKCdyZXNldF9mcm9udGVuZGZvcm10ZW1wbGF0ZScsCgkJICAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCdyZXNldF9mcm9udGVuZGZvcm10ZW1wbGF0ZScsCgkJCQkJICAgJHRoaXMtPkxhbmcoJ3Jlc2V0dG9mYWN0b3J5JykpKTsKCgogICRzbWFydHktPmFzc2lnbignbGVnZW5kX2Zyb250ZW5kbGlzdHRlbXBsYXRlJywKCQkgICR0aGlzLT5MYW5nKCd0aXRsZV9mcm9udGVuZGxpc3RfZGZsdHRlbXBsYXRlJykpOwogICRzbWFydHktPmFzc2lnbigncHJvbXB0X2Zyb250ZW5kbGlzdHRlbXBsYXRlJywKCQkgICR0aGlzLT5MYW5nKCdwcm9tcHRfdGVtcGxhdGUnKSk7CiAgJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9mcm9udGVuZGxpc3R0ZW1wbGF0ZScsCgkJICAkdGhpcy0+Q3JlYXRlVGV4dEFyZWEoZmFsc2UsJGlkLCRpbnB1dF9mcm9udGVuZGxpc3R0ZW1wbGF0ZSwKCQkJCQknaW5wdXRfZnJvbnRlbmRsaXN0dGVtcGxhdGUnKSk7CiAgJHNtYXJ0eS0+YXNzaWduKCdzdWJtaXRfZnJvbnRlbmRsaXN0dGVtcGxhdGUnLAoJCSAgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwnc3VibWl0X2Zyb250ZW5kbGlzdHRlbXBsYXRlJywKCQkJCQkgICAkdGhpcy0+TGFuZygnc3VibWl0JykpKTsKICAkc21hcnR5LT5hc3NpZ24oJ3Jlc2V0X2Zyb250ZW5kbGlzdHRlbXBsYXRlJywKCQkgICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsJ3Jlc2V0X2Zyb250ZW5kbGlzdHRlbXBsYXRlJywKCQkJCQkgICAkdGhpcy0+TGFuZygncmVzZXR0b2ZhY3RvcnknKSkpOwogICAgCiAgZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCdkZmx0X3RlbXBsYXRlcy50cGwnKTsKfQplY2hvICR0aGlzLT5FbmRUYWIoKTsKZWNobyAkdGhpcy0+RW5kVGFiQ29udGVudCgpOwoKLy8gRU9GCj8+]]></data>
	</file>
	<file>
	  <filename>/action.admin_urlstab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKaWYoICEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdNb2RpZnkgU2l0ZSBQcmVmZXJlbmNlcycpICkgZXhpdDsKCmlmKCBpc3NldCgkcGFyYW1zWydzdWJtaXQnXSkgKQogIHsKICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCd1cmxfcmVxdWlyZWQnLChpbnQpJHBhcmFtc1sndXJsX3JlcXVpcmVkJ10pOwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ3VybF9hdXRvY3JlYXRlJywoaW50KSRwYXJhbXNbJ3VybF9hdXRvY3JlYXRlJ10pOwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ3VybF9jcmVhdGVvbmNvcHknLChpbnQpJHBhcmFtc1sndXJsX2NyZWF0ZW9uY29weSddKTsKICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCd1cmxfcmVkaXJlY3RvbGQnLChpbnQpJHBhcmFtc1sndXJsX3JlZGlyZWN0b2xkJ10pOwogIH0KZWxzZSBpZiggaXNzZXQoJHBhcmFtc1snY3JlYXRldXJscyddKSApCiAgewoJJHF1ZXJ5ID0gJ1NFTEVDVCBpZCxjb21wYW55X25hbWUgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfY29tcGFuaWVzIFdIRVJFIFVSTCA9ID8nOwoJJGxpc3QgPSAkZGItPkdldEFycmF5KCRxdWVyeSxhcnJheSgnJykpOwoJJG51bV91cGRhdGVkID0gMDsKCSRudW1fZXJyb3JzID0gMDsKCWlmKCBpc19hcnJheSgkbGlzdCkgKQoJICB7CgkJZm9yZWFjaCggJGxpc3QgYXMgJG9uZSApCgkJICB7CgkJCSR1cmwgPSBjZF91dGlsczo6Z2VuZXJhdGVfdXJsKCRvbmVbJ2NvbXBhbnlfbmFtZSddKTsKCQkJaWYoICEkdXJsICkKCQkJICB7CgkJCQkkbnVtX2Vycm9ycysrOwoJCQkJY29udGludWU7CgkJCSAgfQoJCQlpZiggIWNkX3V0aWxzOjp2YWxpZGF0ZV91cmwoJHVybCkgKQoJCQkgIHsKCQkJCSRudW1fZXJyb3JzKys7CgkJCQljb250aW51ZTsKCQkJICB9CgoJCQkkcXVlcnkgPSAnVVBEQVRFICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfY29tcGRpcl9jb21wYW5pZXMgU0VUIHVybCA9ID8gV0hFUkUgaWQgPSA/JzsKCQkJJGRiciA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkoJHVybCwkb25lWydpZCddKSk7CgkJCWlmKCAhJGRiciApCgkJCSAgewoJCQkJJG51bV9lcnJvcnMrKzsKCQkJCWNvbnRpbnVlOwoJCQkgIH0KCgkJCSRudW1fdXBkYXRlZCsrOwoJCSAgfQoJICB9CgoJaWYoICRudW1fdXBkYXRlZCApCgkgIHsKCQkkdGhpcy0+U2V0TWVzc2FnZSgkdGhpcy0+TGFuZygnaW5mb19iYXRjaHVybGNyZWF0ZScsJG51bV91cGRhdGVkKSk7CgkgIH0KCWlmKCAkbnVtX2Vycm9ycyApCgkgIHsKCQkkdGhpcy0+U2V0RXJyb3IoJHRoaXMtPkxhbmcoJ2Vycm9yX2JhdGNodXJsY3JlYXRlJywkbnVtX2Vycm9ycykpOwoJICB9CiAgfQoKCiR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwndXJscycsJycsJ2FkbWluX3NldHRpbmdzJyk7CiMKIyBFT0YKIwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.browsehier.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKCi8vIGZ1bmN0aW9ucwppZiggIWZ1bmN0aW9uX2V4aXN0cygnY2RfZXhwbG9kZUhhc2hUb1RyZWUnKSkKICB7CmZ1bmN0aW9uIGNkX2V4cGxvZGVIYXNoVG9UcmVlKCRoYXNoLCAkZGVsaW1pdGVyID0gJy4nLCAkYmFzZXZhbCA9IGZhbHNlKQp7CiAgICBpZighaXNfYXJyYXkoJGhhc2gpKSByZXR1cm4gZmFsc2U7CiAgICAkc3BsaXRSRSAgID0gJy8nIC4gcHJlZ19xdW90ZSgkZGVsaW1pdGVyLCAnLycpIC4gJy8nOwogICAgJHJldHVybkFyciA9IGFycmF5KCk7CiAgICBmb3JlYWNoICgkaGFzaCBhcyAka2V5ID0+ICR2YWwpIHsKICAgICAgICAvLyBHZXQgcGFyZW50IHBhcnRzIGFuZCB0aGUgY3VycmVudCBsZWFmCiAgICAgICAgJHBhcnRzICAgID0gcHJlZ19zcGxpdCgkc3BsaXRSRSwgJGtleSwgLTEsIFBSRUdfU1BMSVRfTk9fRU1QVFkpOwogICAgICAgICRsZWFmUGFydCA9IGFycmF5X3BvcCgkcGFydHMpOwogCiAgICAgICAgLy8gQnVpbGQgcGFyZW50IHN0cnVjdHVyZSAKICAgICAgICAvLyBNaWdodCBiZSBzbG93IGZvciByZWFsbHkgZGVlcCBhbmQgbGFyZ2Ugc3RydWN0dXJlcwogICAgICAgICRwYXJlbnRBcnIgPSAmJHJldHVybkFycjsKICAgICAgICBmb3JlYWNoICgkcGFydHMgYXMgJHBhcnQpIHsKICAgICAgICAgICAgaWYgKCFpc3NldCgkcGFyZW50QXJyWyRwYXJ0XSkpIHsKICAgICAgICAgICAgICAgICRwYXJlbnRBcnJbJHBhcnRdID0gYXJyYXkoKTsKICAgICAgICAgICAgfSBlbHNlaWYgKCFpc19hcnJheSgkcGFyZW50QXJyWyRwYXJ0XSkpIHsKICAgICAgICAgICAgICAgIGlmICgkYmFzZXZhbCkgewogICAgICAgICAgICAgICAgICAgICRwYXJlbnRBcnJbJHBhcnRdID0gYXJyYXkoJ19fYmFzZV92YWwnID0+ICRwYXJlbnRBcnJbJHBhcnRdKTsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgJHBhcmVudEFyclskcGFydF0gPSBhcnJheSgpOyAKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICAkcGFyZW50QXJyID0gJiRwYXJlbnRBcnJbJHBhcnRdOwogICAgICAgIH0KIAogICAgICAgIC8vIEFkZCB0aGUgZmluYWwgcGFydCB0byB0aGUgc3RydWN0dXJlCiAgICAgICAgaWYgKGVtcHR5KCRwYXJlbnRBcnJbJGxlYWZQYXJ0XSkpIHsKICAgICAgICAgICAgJHBhcmVudEFyclskbGVhZlBhcnRdID0gJHZhbDsKICAgICAgICB9IGVsc2VpZiAoJGJhc2V2YWwgJiYgaXNfYXJyYXkoJHBhcmVudEFyclskbGVhZlBhcnRdKSkgewogICAgICAgICAgICAkcGFyZW50QXJyWyRsZWFmUGFydF1bJ19fYmFzZV92YWwnXSA9ICR2YWw7CiAgICAgICAgfQogICAgfQogICAgcmV0dXJuICRyZXR1cm5BcnI7Cn0KICB9IC8vIGlmCgovLyBpbml0aWFsaXphdGlvbgokdGhldGVtcGxhdGUgPSAnaGllcmxpc3RfJy4kdGhpcy0+R2V0UHJlZmVyZW5jZShDT01QQU5ZRElSX1BSRUZfREZMVEhJRVJMSVNUX1RFTVBMQVRFKTsKaWYoIGlzc2V0KCRwYXJhbXNbJ2hpZXJsaXN0dGVtcGxhdGUnXSApICkKICB7CiAgICAkdGhldGVtcGxhdGUgPSAnaGllcmxpc3RfJy4kcGFyYW1zWydoaWVybGlzdHRlbXBsYXRlJ107CiAgfQokY2F0ZWdvcnkgPSAnJzsKJGNhdGVnb3J5X2luZm8gPSAnJzsKJHdoZXJlID0gYXJyYXkoKTsKJHBhcm1zID0gYXJyYXkoKTsKJHF1ZXJ5c3RhcnQgPSAnU0VMRUNUIGNoLiosY291bnQoY2MuaWQpIGFzIGNvdW50IEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9jb21wZGlyX2hpZXIgY2ggTEVGVCBPVVRFUiBKT0lOICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfY29tcGRpcl9jb21wYW5pZXMgY2MgT04gY2guaWQgPSBjYy5oaWVyX2lkJzsKJHF1ZXJ5ZW5kID0gJ0dST1VQIEJZIGNoLmlkIE9SREVSIEJZIGhpZXJhcmNoeSc7CgovLyBnZXQgcGFyYW0gZGF0YQppZiggaXNzZXQoJHBhcmFtc1snaGllciddKSApCiAgewogICAgJGhpZXIgPSB0cmltKCRwYXJhbXNbJ2hpZXInXSk7CiAgfQppZiggIWVtcHR5KCRoaWVyKSApCiAgewogICAgJHF1ZXJ5ID0gJ1NFTEVDVCBpZCxoaWVyYXJjaHkgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfaGllciBXSEVSRSBuYW1lID0gPyc7CiAgICAkaGllcl9pbmZvID0gJGRiLT5HZXRSb3coJHF1ZXJ5LGFycmF5KCRoaWVyKSk7CiAgfQoKaWYoIGlzX2FycmF5KCRoaWVyX2luZm8pICkKICB7CiAgICAkd2hlcmVbXSA9ICdoaWVyYXJjaHkgTElLRSA/JzsKICAgICRwYXJtc1tdID0gJGhpZXJfaW5mb1snaGllcmFyY2h5J10uJy4lJzsKICB9CgovLyBidWlsZCB0aGUgcXVlcnkKJHF1ZXJ5ID0gJHF1ZXJ5c3RhcnQ7CmlmKCBjb3VudCgkd2hlcmUpICkKICB7CiAgICAkcXVlcnkgLj0gJyBXSEVSRSAnOwogICAgJHF1ZXJ5IC49IGltcGxvZGUoJyBBTkQgJywkd2hlcmUpOwogIH0KJHF1ZXJ5IC49ICcgJyAuICRxdWVyeWVuZDsKCi8vIGdldCB0aGUgZGF0YQokdG1wMSA9ICRkYi0+R2V0QXJyYXkoJHF1ZXJ5LGFycmF5KCRwYXJtcykpOwppZiggISR0bXAxICkgcmV0dXJuOwoKJHN1YnF1ZXJ5ID0gJ1NFTEVDVCBoaWVyX2lkLENPVU5UKGlkKSBBUyBjb3VudCBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfY29tcGRpcl9jb21wYW5pZXMKICAgICAgICAgICAgICAgICAgV0hFUkUgc3RhdHVzID0gPyBBTkQgIUlTTlVMTChoaWVyX2lkKSBHUk9VUCBCWSBoaWVyX2lkJzsKJHRtcDIgPSAkZGItPkdldEFycmF5KCRzdWJxdWVyeSxhcnJheSgncHVibGlzaGVkJykpOwokdG1wMyA9IGNnZV9hcnJheTo6dG9faGFzaCgkdG1wMiwnaGllcl9pZCcpOwpmb3IoICRpID0gMDsgJGkgPCBjb3VudCgkdG1wMSk7ICRpKysgKQogIHsKICAgICRyZWMgPSYgJHRtcDFbJGldOwogICAgJHJlY1snY291bnQnXSA9IDA7CiAgICAkcmVjWydkZXB0aCddID0gY291bnQoZXhwbG9kZSgnLicsJHJlY1snaGllcmFyY2h5J10pKTsKICAgIGlmKCBpc3NldCgkdG1wM1skcmVjWydpZCddXSkgKQogICAgICB7CgkkcmVjWydjb3VudCddID0gJHRtcDNbJHJlY1snaWQnXV1bJ2NvdW50J107CiAgICAgIH0KICAgICRyZWNbJ3VybCddID0gJHRoaXMtPkNyZWF0ZVVSTCgkaWQsJ2RlZmF1bHQnLCRyZXR1cm5pZCwKCQkJCSAgIGFycmF5KCdoaWVyJz0+JHJlY1snbmFtZSddKSk7CiAgfQokdG1wMSA9IGNnZV9hcnJheTo6dG9faGFzaCgkdG1wMSwnaGllcmFyY2h5Jyk7CiRkYXRhID0gYXJyYXkoKTsKZm9yZWFjaCggJHRtcDEgYXMgJGtleSA9PiAkdmFsICkKICB7CiAgICAkZGF0YVska2V5XSA9IGFycmF5KCdub2RlJz0+JHZhbCk7CiAgfQoKLy8gbm93IG1ha2UgaXQgaW50byBhIHRyZWUgc3RydWN0dXJlLCBpZiBwb3NzaWJsZS4KJGRhdGEgPSBjZF9leHBsb2RlSGFzaFRvVHJlZSgkZGF0YSwgJy4nLCB0cnVlKTsKCi8vIGFuZCBnaXZlIGl0IHRvIHNtYXJ0eQokc21hcnR5LT5hc3NpZ24oJ2hpZXJkYXRhJywkZGF0YSk7CgovLyBhbmQgcHJvY2VzcyB0aGUgdGVtcGxhdGUuCmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhYmFzZSgkdGhldGVtcGxhdGUpOwojCiMgRU9GCiMKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.categorylist.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmICghaXNzZXQoJGdDbXMpKSBleGl0OwoKJHRoZXRlbXBsYXRlID0gJ2NhdGVnb3J5bGlzdF8nLiR0aGlzLT5HZXRQcmVmZXJlbmNlKENPTVBBTllESVJfUFJFRl9ERkxUQ0FURUdPUllMSVNUX1RFTVBMQVRFKTsKaWYoIGlzc2V0KCRwYXJhbXNbJ2NhdGVnb3J5bGlzdHRlbXBsYXRlJ10gKSApCiAgewogICAgJHRoZXRlbXBsYXRlID0gJ2NhdGVnb3J5bGlzdF8nLiRwYXJhbXNbJ2NhdGVnb3J5bGlzdHRlbXBsYXRlJ107CiAgfQoKJHF1ZXJ5ID0gJyc7CmlmKCBpc3NldCgkcGFyYW1zWydzaG93YWxsJ10pICkKICB7CiAgICAkcXVlcnkgPSAnU0VMRUNUIGEuKiwgYmIuY291bnQgCiAgICAgICAgICAgICAgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfY2F0ZWdvcmllcyBhIAogICAgICAgICAgICAgIExFRlQgT1VURVIgSk9JTiAKICAgICAgICAgICAgICAgKFNFTEVDVCBhLmNhdGVnb3J5X2lkLGNvdW50KGIuaWQpIEFTIGNvdW50IAogICAgICAgICAgICAgICAgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfY29tcGFueV9jYXRlZ29yaWVzIGEgCiAgICAgICAgICAgICAgICBMRUZUIE9VVEVSIEpPSU4gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9jb21wZGlyX2NvbXBhbmllcyBiIE9OIGEuY29tcGFueV9pZCA9IGIuaWQgCiAgICAgICAgICAgICAgICAgV0hFUkUgYi5zdGF0dXMgPSBcJ3B1Ymxpc2hlZFwnIAogICAgICAgICAgICAgICAgR1JPVVAgYnkgYS5jYXRlZ29yeV9pZCkgYmIgCiAgICAgICAgICAgICAgT04gYS5pZCA9IGJiLmNhdGVnb3J5X2lkJzsKICB9CmVsc2UKICB7Cgkkc3VicXVlcnkgPSAnJzsKCWlmKCBpc3NldCgkcGFyYW1zWydjYXRlZ29yeWlkJ10pICkKCSAgewoJCSRzdXFicXVlcnkgPSAnU0VMRUNUIGNvbXBhbnlfaWQgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfY29tcGFueV9jYXRlZ29yaWVzIFdIRVJFIGNhdGVnb3J5X2lkID0gJy4oaW50KSRwYXJhbXNbJ2NhdGVnb3J5aWQnXTsKCSAgfQoJZWxzZSBpZiggaXNzZXQoJHBhcmFtc1snY2F0ZWdvcnknXSkgKQoJICB7CgkJJGlkcyA9IGNkX2NvbXBhbnlfcXVlcnk6OmdldF9jYXRlZ29yeV9pZHMoJHBhcmFtc1snY2F0ZWdvcnknXSk7CgkJaWYoIGlzX2FycmF5KCRpZHMpICYmIGNvdW50KCRpZHMpICkKCQkgIHsKCQkJJHN1YnF1ZXJ5ID0gJ1NFTEVDVCBESVNUSU5DVCBjb21wYW55X2lkIEZST00gJy5jbXNfZGJfcnBlZml4KCkuJ21vZHVsZV9jb21wZGlyX2NvbXBhbnlfY2F0ZWdvcmllcyBXSEVSRSBjYXRlZ29yeV9pZCBJTiAoJy5pbXBsb2RlKCcsJywkaWRzKS4nKSc7CgkJICB9CgkgIH0KCWVsc2UgaWYoIGlzc2V0KCRwYXJhbXNbJ2hpZXInXSkgKQoJICB7CgkJJGhpZXJhcmNoeSA9IGNtc19odG1sX2VudGl0eV9kZWNvZGUodHJpbSgkcGFyYW1zWydoaWVyJ10pKTsKCQkkaGllcmFyY2h5ID0gdHJpbSgkaGllcmFyY2h5KTsKCQkkaGllcmFyY2h5ID0gdHJpbShzdHJfcmVwbGFjZSgiJyIsJ18nLCRoaWVyYXJjaHkpKTsKCgkJaWYoIHN0cnBvcygkaGllcmFyY2h5LCd8JykgIT09IEZBTFNFIHx8IHN0cnBvcygkaGllcmFyY2h5LCcqJykgIT09IEZBTFNFICkKCQkgIHsKCQkJJGhpZXJhcmNoeSA9IHRyaW0oc3RyX3JlcGxhY2UoJyonLCclJywkaGllcmFyY2h5KSk7CgkJCSRzdWJxdWVyeSA9ICdTRUxFQ1QgRElTVElOQ1QgY29tcGFueV9pZCBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfY29tcGRpcl9jb21wYW5pZXMgQ08gCiAgICAgICAgICAgICAgICAgICAgICAgICBMRUZUIE9VVEVSIEpPSU4gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9jb21wZGlyX2hpZWVyIENICiAgICAgICAgICAgICAgICAgICAgICAgICBPTiBDSC5pZCA9IENPLmhpZXJfaWQgCiAgICAgICAgICAgICAgICAgICAgICAgICBXSEVSRSB1cHBlcihDSC5sb25nX25hbWUpIExJS0UgdXBwZXIoJy4kZGItPnFzdHIoJGhpZXJhcmNoeSkuJyknOwoJCSAgfQoJCWVsc2UKCQkgIHsKCQkJJHN1YnF1ZXJ5ID0gJ1NFTEVDVCBESVNUSU5DVCBjb21wYW55X2lkIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9jb21wZGlyX2NvbXBhbmllcyBDTyAKICAgICAgICAgICAgICAgICAgICAgICAgIExFRlQgT1VURVIgSk9JTiAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfaGllZXIgQ0gKICAgICAgICAgICAgICAgICAgICAgICAgIE9OIENILmlkID0gQ08uaGllcl9pZCAKICAgICAgICAgICAgICAgICAgICAgICAgIFdIRVJFIENILm5hbWUgPSAnLiRkYi0+cXN0cigkaGllcmFyY2h5KTsKCQkgIH0KCSAgfQoKCSRxdWVyeSA9ICdTRUxFQ1QgQy4qLGNvdW50KEJCLmlkKSBBUyBjb3VudCAKICAgICAgICAgICAgICBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfY29tcGRpcl9jb21wYW55X2NhdGVnb3JpZXMgQSAKICAgICAgICAgICAgICBMRUZUIEpPSU4gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9jb21wZGlyX2NvbXBhbmllcyBCQiAKICAgICAgICAgICAgICBPTiBBLmNvbXBhbnlfaWQgPSBCQi5pZCBBTkQgQkIuc3RhdHVzID0gXCdwdWJsaXNoZWRcJwogICAgICAgICAgICAgIExFRlQgSk9JTiAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfY2F0ZWdvcmllcyBDIE9OIEMuaWQgPSBBLmNhdGVnb3J5X2lkJzsKCWlmKCAkc3VicXVlcnkgKQoJICB7CgkJJHF1ZXJ5IC49ICcgV0hFUkUgY29tcGFueV9pZCBJTiAoJy4kc3VicXVlcnkuJyknOwoJICB9CgkkcXVlcnkgLj0gJyBHUk9VUCBCWSBBLmNhdGVnb3J5X2lkJzsKICB9CiRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHF1ZXJ5ICk7CiRyZXN1bHRzID0gYXJyYXkoKTsKJHVybGZtdCA9ICJjb21wYW5pZXMvYnljYXRlZ29yeS8lZC8iLigkZGV0YWlscGFnZSE9Jyc/JGRldGFpbHBhZ2U6JHJldHVybmlkKTsKJGNvbmZpZyA9IGNtc21zKCktPkdldENvbmZpZygpOwp3aGlsZSggJGRicmVzdWx0ICYmICRyb3cgPSAkZGJyZXN1bHQtPkZldGNoUm93KCkgKQogIHsKICAgICRvYmogPSBuZXcgU3RkQ2xhc3MoKTsKICAgIGZvcmVhY2goICRyb3cgYXMgJGsgPT4gJHYgKQogICAgICB7CgkJJG9iai0+JGsgPSAkdjsKICAgICAgfQogICAgaWYoIGlzX251bGwoJG9iai0+Y291bnQpICkgJG9iai0+Y291bnQgPSAwOwoJaWYoICRvYmotPmltYWdlICkKCSAgewoJCSRwYXRoID0gY21zX2pvaW5fcGF0aCgkY29uZmlnWyd1cGxvYWRzX3BhdGgnXSwnY29tcGFueWRpcmVjdG9yeScsJ2NhdCcuJG9iai0+aWQpOwoJCWlmKCBmaWxlX2V4aXN0cyhjbXNfam9pbl9wYXRoKCRwYXRoLCRvYmotPmltYWdlKSkgKQoJCSAgewoJCQkkb2JqLT5pbWFnZV91cmwgPSAkY29uZmlnWyd1cGxvYWRzX3VybCddLiIvY29tcGFueWRpcmVjdG9yeS9jYXR7JG9iai0+aWR9L3skb2JqLT5pbWFnZX0iOwoJCQlpZiggZmlsZV9leGlzdHMoY21zX2pvaW5fcGF0aCgkcGF0aCwndGh1bWJfJy4kb2JqLT5pbWFnZSkpICkKCQkJICB7CgkJCQkkb2JqLT50aHVtYl91cmwgPSAkY29uZmlnWyd1cGxvYWRzX3VybCddLiIvY29tcGFueWRpcmVjdG9yeS9jYXR7JG9iai0+aWR9L3RodW1iX3skb2JqLT5pbWFnZX0iOwoJCQkgIH0KCQkgIH0KCSAgfQogICAgJHByZXR0eXVybCA9IHNwcmludGYoJHVybGZtdCwkcm93WydpZCddKTsKICAgICRwYXJhbXNbJ2NhdGVnb3J5aWQnXT0kcm93WydpZCddOwogICAgJG9iai0+c3VtbWFyeV91cmwgPSAkdGhpcy0+Q3JlYXRlTGluaygkaWQsJ2RlZmF1bHQnLCgkZGV0YWlscGFnZSE9Jyc/JGRldGFpbHBhZ2U6JHJldHVybmlkKSwKCQkJCQkgICcnLCRwYXJhbXMsCgkJCQkJICAnJyx0cnVlLHRydWUsJycsdHJ1ZSwkcHJldHR5dXJsKTsKICAgICRyZXN1bHRzW10gPSAkb2JqOwogIH0KCiRzbWFydHktPmFzc2lnbignY2F0ZWdvcnlsaXN0JywkcmVzdWx0cyk7CiRkYnJlc3VsdC0+Q2xvc2UoKTsKCmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhYmFzZSgkdGhldGVtcGxhdGUpOwovLyBFT0YKPz4K]]></data>
	</file>
	<file>
	  <filename>/action.checkurl.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmICghaXNzZXQoJGdDbXMpKSBleGl0OwoKJHR1cmwgPSAnJzsKJHRuYW1lID0gJyc7CiRvdXRwdXQgPSBuZXcgU3RkQ2xhc3MoKTsKCmlmKCBpc3NldCgkcGFyYW1zWydjZF9uYW1lJ10pICkgJHRuYW1lID0gdHJpbSgkcGFyYW1zWydjZF9uYW1lJ10pOwppZiggaXNzZXQoJHBhcmFtc1snY2RfdXJsJ10pICkgJHR1cmwgPSB0cmltKCRwYXJhbXNbJ2NkX3VybCddKTsKCmlmKCAkdG5hbWUgPT0gJycgKQogIHsKICAgICRvdXRwdXQtPnN0YXR1cyA9ICdFUlJPUic7CiAgICAkb3V0cHV0LT5lcnJvciA9ICR0aGlzLT5MYW5nKCdlcnJvcl9pbnZhbGlkbmFtZScpOwogICAgZWNobyBqc29uX2VuY29kZSgkb3V0cHV0KTsKICAgIGV4aXQoKTsKICB9CgokdG5hbWUgPSBjbXNfaHRtbF9lbnRpdHlfZGVjb2RlKCR0bmFtZSk7CiR0dXJsID0gY21zX2h0bWxfZW50aXR5X2RlY29kZSgkdHVybCk7CgovLyBpZiB3ZSBoYXZlIGEgdXJsLCB3ZSBqdXN0IGNoZWNrIHRoZSBvbmUgcHJvdmlkZWQKLy8gaWYgd2UgZG9uJ3QgaGF2ZSBhIHVybCwgd2UgY2FsY3VsYXRlIG9uZS4KaWYoICEkdHVybCApICR0dXJsID0gY2RfdXRpbHM6OmdlbmVyYXRlX3VybCgkdG5hbWUpOwppZiggISR0dXJsICkKICB7Cgkkb3V0cHV0LT5zdGF0dXMgPSAnRVJST1InOwoJJG91dHB1dC0+ZXJyb3IgPSAkdGhpcy0+TGFuZygnZXJyb3JfaW52YWxpZG5hbWUnKTsKCWVjaG8ganNvbl9lbmNvZGUoJG91dHB1dCk7CglleGl0KCk7CiAgfQoKJHJlcyA9IGNkX3V0aWxzOjp2YWxpZGF0ZV91cmwoJHR1cmwpOwppZiggISRyZXMgKQogIHsKCSRvdXRwdXQtPnN0YXR1cyA9ICdFUlJPUic7Cgkkb3V0cHV0LT5lcnJvciA9ICR0aGlzLT5MYW5nKCdlcnJvcl9pbnZhbGlkdXJsJyk7CgllY2hvIGpzb25fZW5jb2RlKCRvdXRwdXQpOwoJZXhpdCgpOwogIH0KCiRvdXRwdXQtPnN0YXR1cyA9ICdPSyc7CiRvdXRwdXQtPnVybCA9ICR0dXJsOwplY2hvIGpzb25fZW5jb2RlKCRvdXRwdXQpOwpleGl0KCk7CgojCiMgRU9GCiMKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.copycompany.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmICghaXNzZXQoJGdDbXMpKSBleGl0OwppZiAoISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBDb21wYW55IERpcmVjdG9yeScpKQp7CiAgZWNobyAkdGhpcy0+U2hvd0Vycm9ycygkdGhpcy0+TGFuZygnbmVlZHBlcm1pc3Npb24nLCBhcnJheSgnTW9kaWZ5IENvbXBhbnkgRGlyZWN0b3J5JykpKTsKICByZXR1cm47Cn0KCi8vIGluaXRpYWxpemF0aW9uCiR0aGlzLT5TZXRDdXJyZW50VGFiKCdjb21wYW5pZXMnKTsKJGNvbXBpZCA9ICcnOwokc3JjZGlyID0gY21zX2pvaW5fcGF0aCgkZ0Ntcy0+Y29uZmlnWyd1cGxvYWRzX3BhdGgnXSwnY29tcGFueWRpcmVjdG9yeScsJ2lkJy4kY29tcGlkKTsKCi8vIGdldCBwYXJhbXMKaWYoICFpc3NldCgkcGFyYW1zWydjb21waWQnXSkgKQogIHsKICAgIGVjaG8gJHRoaXMtPlNob3dFcnJvcnMoJHRoaXMtPkxhbmcoJ2Vycm9yX21pc3NpbmdwYXJhbScpKTsKICAgIHJldHVybjsKICB9CiRjb21waWQgPSAoaW50KSRwYXJhbXNbJ2NvbXBpZCddOwoKLy8KLy8gZ2V0IGFsbCB0aGUgZGF0YQovLwoKLy8gZ2V0IHRoZSBjb21wYW55IGluZm8uCiRxdWVyeSA9ICdTRUxFQ1QgKiBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfY29tcGRpcl9jb21wYW5pZXMgV0hFUkUgaWQgPSA/JzsKJGNvbXBhbnkgPSAkZGItPkdldFJvdygkcXVlcnksYXJyYXkoJGNvbXBpZCkpOwppZiggISRjb21wYW55ICkKICB7CiAgICBlY2hvICR0aGlzLT5TaG93RXJyb3JzKCR0aGlzLT5MYW5nKCdlcnJvcl9ub3Jlc3VsdHNmb3VuZCcpKTsKICAgIHJldHVybjsKICB9CgovLyBnZXQgdGhlIGZpZWxkcy4KJHF1ZXJ5ID0gJ1NFTEVDVCAqIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9jb21wZGlyX2ZpZWxkdmFscyBXSEVSRSBjb21wYW55X2lkID0gPyc7CiRmaWVsZHMgPSAkZGItPkdldEFycmF5KCRxdWVyeSxhcnJheSgkY29tcGlkKSk7CgovLyBnZXQgdGhlIGNhdGVnb3JpZXMuCiRxdWVyeSA9ICdTRUxFQ1QgKiBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfY29tcGRpcl9jYXRlZ29yaWVzIFdIRVJFIGNvbXBhbnlfaWQgPSA/JzsKJGNhdGVnb3JpZXMgPSAkZGItPkdldEFycmF5KCRxdWVyeSxhcnJheSgkY29tcGlkKSk7CgovLyBnZXQgdGhlIGZpbGVzLgokc3JjZmlsZXMgPSBnbG9iKCRzcmNkaXIuJy8qLionKTsKCi8vCi8vIGRvIHRoZSBjb3B5Ci8vCmlmKCAkdGhpcy0+R2V0UHJlZmVyZW5jZSgndXJsX3JlcXVpcmVkJywwKSB8fCAkdGhpcy0+R2V0UHJlZmVyZW5jZSgndXJsX2NyZWF0ZW9uY29weScpICkKICB7CgkvLyBHb3R0YSBHZW5lcmF0ZSBhIFVSTAoJJG5ld191cmwgPSBjZF91dGlsczo6Z2VuZXJhdGVfdXJsKCRjb21wYW55Wydjb21wYW55X25hbWUnXSk7CglpZiggISRuZXdfdXJsICkKCSAgewoJCS8vIGVycm9yCgkJJHRoaXMtPlNldEVycm9yKCR0aGlzLT5MYW5nKCdlcnJvcl9pbnZhbGlkbmFtZScpKTsKCQkkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQpOwoJICB9CglpZiggIWNkX3V0aWxzOjp2YWxpZGF0ZV91cmwoJG5ld191cmwpICkKCSAgewoJCS8vIGVycm9yLgoJCSR0aGlzLT5TZXRFcnJvcigkdGhpcy0+TGFuZygnZXJyb3JfaW52YWxpZHVybCcpKTsKCQkkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQpOwoJICB9CgkkY29tcGFueVsndXJsJ10gPSAkbmV3X3VybDsKICB9CmVsc2UKICB7CgkvLyBXZSBkb24ndCBuZWVkIGEgVVJMLCBzbyBtYWtlIHN1cmUgdGhhdCB3ZSBkb24ndCBjcmVhdGUgYSBjb3B5IG9mIGFuIGV4aXN0aW5nIG9uZS4KCSRjb21wYW55Wyd1cmwnXSA9ICcnOwogIH0KCiRxdWVyeSA9ICdJTlNFUlQgSU5UTyAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfY29tcGFuaWVzIChjb21wYW55X25hbWUsIHVybCwgYWRkcmVzcywgdGVsZXBob25lLCAKICAgICAgICAgICAgZmF4LCBjb250YWN0X2VtYWlsLCB3ZWJzaXRlLCBkZXRhaWxzLCBwaWN0dXJlX2xvY2F0aW9uLCBsb2dvX2xvY2F0aW9uLCBjcmVhdGVfZGF0ZSwgCiAgICAgICAgICAgIG1vZGlmaWVkX2RhdGUsIHN0YXR1cywgbGF0aXR1ZGUsIGxvbmdpdHVkZSwgb3duZXJfaWQsaGllcl9pZCkgCiAgICAgICAgICBWQUxVRVMgKD8sPyw/LD8sPyw/LD8sPyw/LD8sTk9XKCksTk9XKCksPyw/LD8sPyw/KSc7CiRkYnIgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LAoJCSAgICBhcnJheSgkY29tcGFueVsnY29tcGFueV9uYW1lJ10sCgkJCQkgICRjb21wYW55Wyd1cmwnXSwKCQkJICAkY29tcGFueVsnYWRkcmVzcyddLAoJCQkgICRjb21wYW55Wyd0ZWxlcGhvbmUnXSwKCQkJICAkY29tcGFueVsnZmF4J10sCgkJCSAgJGNvbXBhbnlbJ2NvbnRhY3RfZW1haWwnXSwKCQkJICAkY29tcGFueVsnd2Vic2l0ZSddLAoJCQkgICRjb21wYW55WydkZXRhaWxzJ10sCgkJCSAgJGNvbXBhbnlbJ3BpY3R1cmVfbG9jYXRpb24nXSwKCQkJICAkY29tcGFueVsnbG9nb19sb2NhdGlvbiddLAoJCQkgICRjb21wYW55WydzdGF0dXMnXSwKCQkJICAkY29tcGFueVsnbGF0aXR1ZGUnXSwKCQkJICAkY29tcGFueVsnbG9uZ2l0dWRlJ10sCgkJCSAgJGNvbXBhbnlbJ293bmVyX2lkJ10sCgkJCSAgJGNvbXBhbnlbJ2hpZXJfaWQnXSkpOwppZiggISRkYnIgKQogIHsKICAgIGRpZSgkZGItPnNxbC4nPGJyLz4nLiRkYi0+RXJyb3JNc2coKSk7CiAgfQokbmV3X2NvbXBpZCA9ICRkYi0+SW5zZXJ0X0lEKCk7CgoKaWYoIGlzX2FycmF5KCRmaWVsZHMpICYmIGNvdW50KCRmaWVsZHMpICkKICB7CiAgICAkcXVlcnkgPSAnSU5TRVJUIElOVE8gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9jb21wZGlyX2ZpZWxkdmFscyAKICAgICAgICAgICAgICAgKGNvbXBhbnlfaWQsZmllbGRkZWZfaWQsdmFsdWUsY3JlYXRlX2RhdGUsbW9kaWZpZWRfZGF0ZSkKICAgICAgICAgICAgICBWQUxVRVMgKD8sPyw/LE5PVygpLE5PVygpKSc7CiAgICBmb3JlYWNoKCAkZmllbGRzIGFzICRmaWVsZCApCiAgICAgIHsKCSRkYnIgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LAoJCQkgICAgYXJyYXkoJG5ld19jb21waWQsJGZpZWxkWydmaWVsZGRlZl9pZCddLCRmaWVsZFsndmFsdWUnXSkpOwoJaWYoICEkZGJyICkKCSAgewoJICAgIGRpZSgkZGItPnNxbC4nPGJyLz4nLiRkYi0+RXJyb3JNc2coKSk7CgkgIH0KICAgICAgfQogIH0KCmlmKCBpc19hcnJheSgkY2F0ZWdvcmllcykgJiYgY291bnQoJGNhdGVnb3JpZXMpICkKICB7CiAgICAkcXVlcnkgPSAnSU5TRVJUIElOVE8gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9jb21wZGlyX2NvbXBhbnlfY2F0ZWdvcmllcwogICAgICAgICAgICAgICAgKGNvbXBhbnlfaWQsY2F0ZWdvcnlfaWQsY3JlYXRlX2RhdGUsbW9kaWZpZWRfZGF0ZSkKICAgICAgICAgICAgICBWQUxVRVMgKD8sPyxOT1coKSxOT1coKSknOwogICAgZm9yZWFjaCggJGNhdGVnb3JpZXMgYXMgJGNhdGVnb3J5ICkKICAgICAgewoJJGRiciA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkoJG5ld19jb21waWQsJGNhdGVnb3J5WydjYXRlZ29yeV9pZCddKSk7CglpZiggISRkYnIgKQoJICB7CgkgICAgZGllKCRkYi0+c3FsLic8YnIvPicuJGRiLT5FcnJvck1zZygpKTsKCSAgfQogICAgICB9CiAgfQoKLy8gY29weSBmaWxlcwppZiggY291bnQoJHNyY2ZpbGVzKSApCiAgewogICAgJGRlc3RkaXIgPSBjbXNfam9pbl9wYXRoKCRnQ21zLT5jb25maWdbJ3VwbG9hZHNfcGF0aCddLCdjb21wYW55ZGlyZWN0b3J5JywnaWQnLCRuZXdfY29tcGlkKTsKICAgIGNnZV9kaXI6Om1rZGlycigkZGVzdGRpcik7CiAgICBmb3JlYWNoKCAkc3JjZmlsZXMgYXMgJG9uZWZpbGUgKQogICAgICB7CgkkYm4gPSBiYXNlbmFtZSgkb25lZmlsZSk7CglAY29weSgkc3JjZmlsZSxjbXNfam9pbl9wYXRoKCRkZXN0ZGlyLCRibikpOwogICAgICB9CiAgfQogIAovLyB1cGRhdGUgc2VhcmNoIGluZGV4LgokbW9kdWxlID0mICR0aGlzLT5HZXRNb2R1bGVJbnN0YW5jZSgnU2VhcmNoJyk7CmlmICgkbW9kdWxlICE9IEZBTFNFKQogIHsKICAgICRtb2R1bGUtPkFkZFdvcmRzKCR0aGlzLT5HZXROYW1lKCksICRjaWQsICdjb21wYW55JywgCgkJICAgICAgaW1wbG9kZSgnICcsIGFycmF5KCRjb21wYW55Wydjb21wYW55X25hbWUnXSwgCgkJCQkJICRjb21wYW55Wydjb21wYW55X25hbWUnXSwgCgkJCQkJICRjb21wYW55WydhZGRyZXNzJ10sIAoJCQkJCSAkY29tcGFueVsnJHRlbGVwaG9uZSddLCAKCQkJCQkgJGNvbXBhbnlbJyRmYXgnXSwgCgkJCQkJICRjb21wYW55WydkZXRhaWxzJ10pKSk7CiAgfQoKICAKLy8gYW5kIHJlZGlyZWN0IHNvbWV3aGVyZS4KJHRoaXMtPlNldE1lc3NhZ2UoJHRoaXMtPkxhbmcoJ21zZ19jb21wYW55Y29waWVkJykpOwokdGhpcy0+UmVkaXJlY3QoJGlkLCdlZGl0Y29tcGFueScsJycsYXJyYXkoJ2NvbXBpZCc9PiRuZXdfY29tcGlkLCdub2NhbmNlbCc9PjEpKTsKCiMKIyBFT0YKIwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.default.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmICghaXNzZXQoJGdDbXMpKSBleGl0OwoKJHRoZXRlbXBsYXRlID0gJ3N1bW1hcnlfJy4kdGhpcy0+R2V0UHJlZmVyZW5jZShDT01QQU5ZRElSX1BSRUZfREZMVFNVTU1BUllfVEVNUExBVEUpOwppZiggaXNzZXQoJHBhcmFtc1snc3VtbWFyeXRlbXBsYXRlJ10pICkKICB7CgkkdGhldGVtcGxhdGUgPSAnc3VtbWFyeV8nLnRyaW0oJHBhcmFtc1snc3VtbWFyeXRlbXBsYXRlJ10pOwogIH0KCmlmKCAhaXNzZXQoJHBhcmFtc1snZGV0YWlscGFnZSddKSApICRwYXJhbXNbJ2RldGFpbHBhZ2UnXSA9ICRyZXR1cm5pZDsKJGZpbHRlciA9IG5ldyBjZF9jb21wYW55X2ZpbHRlcigkcGFyYW1zKTsKJGZpbHRlclsncmV0dXJuaWQnXSA9ICRyZXR1cm5pZDsKJGZpbHRlclsnaWQnXSA9ICRpZDsKJHF1ZXJ5ID0gbmV3IGNkX2NvbXBhbnlfcXVlcnkoJGZpbHRlcik7CiRwYWdpbmF0aW9uID0gJHF1ZXJ5LT5nZXRfcGFnaW5hdGlvbigpOwokcGFnZSA9ICRwYWdpbmF0aW9uLT5nZXRfY3VycmVudF9wYWdlKCk7Cgokc21hcnR5LT5hc3NpZ24oJ2l0ZW1zJywkcXVlcnktPmdldF9yZXN1bHRzKCRpZCwkcmV0dXJuaWQpKTsKJHNtYXJ0eS0+YXNzaWduKCdpdGVtY291bnQnLCRxdWVyeS0+Z2V0X3Jlc3VsdF9jb3VudCgpKTsKJHNtYXJ0eS0+YXNzaWduKCdwYWdpbmF0aW9uJywkcGFnaW5hdGlvbik7Cgokc21hcnR5LT5hc3NpZ24oJ3BhZ2V0ZXh0JywkdGhpcy0+TGFuZygncGFnZScpKTsKJHNtYXJ0eS0+YXNzaWduKCdvZnRleHQnLCR0aGlzLT5MYW5nKCdvZicpKTsKJHNtYXJ0eS0+YXNzaWduKCdwYWdlY291bnQnLCRwYWdpbmF0aW9uLT5nZXRfcGFnZV9jb3VudCgpKTsKJHNtYXJ0eS0+YXNzaWduKCdjdXJwYWdlJywkcGFnZSk7CmlmKCAkcGFnaW5hdGlvbi0+Z2V0X3BhZ2VfY291bnQoKSA+IDEgKQogIHsKCWlmKCAkcGFnZSA9PSAxICkKCSAgewoJCSRzbWFydHktPmFzc2lnbignZmlyc3RsaW5rJywkdGhpcy0+TGFuZygnZmlyc3RwYWdlJykpOwoJCSRzbWFydHktPmFzc2lnbigncHJldmxpbmsnLCR0aGlzLT5MYW5nKCdwcmV2cGFnZScpKTsKCSAgfQoJZWxzZQoJICB7CgkJJHNtYXJ0eS0+YXNzaWduKCdmaXJzdGxpbmsnLCRwYWdpbmF0aW9uLT5nZXRfcGFnZV9saW5rKDEsJHRoaXMtPkxhbmcoJ2ZpcnN0cGFnZScpKSk7CgkJJHNtYXJ0eS0+YXNzaWduKCdwcmV2bGluaycsJHBhZ2luYXRpb24tPmdldF9wYWdlX2xpbmsoJHBhZ2luYXRpb24tPmdldF9jdXJyZW50X3BhZ2UoKS0xLCR0aGlzLT5MYW5nKCdwcmV2cGFnZScpKSk7CgkgIH0KCWlmKCAkcGFnZSA9PSAkcGFnaW5hdGlvbi0+Z2V0X3BhZ2VfY291bnQoKSApCgkgIHsKCQkkc21hcnR5LT5hc3NpZ24oJ2xhc3RsaW5rJywkdGhpcy0+TGFuZygnbGFzdHBhZ2UnKSk7CgkJJHNtYXJ0eS0+YXNzaWduKCduZXh0bGluaycsJHRoaXMtPkxhbmcoJ25leHRwYWdlJykpOwoJICB9CgllbHNlCgkgIHsKCQkkc21hcnR5LT5hc3NpZ24oJ2xhc3RsaW5rJywkcGFnaW5hdGlvbi0+Z2V0X3BhZ2VfbGluaygkcGFnaW5hdGlvbi0+Z2V0X3BhZ2VfY291bnQoKSwkdGhpcy0+TGFuZygnbGFzdHBhZ2UnKSkpOwoJCSRzbWFydHktPmFzc2lnbignbmV4dGxpbmsnLCRwYWdpbmF0aW9uLT5nZXRfcGFnZV9saW5rKCRwYWdpbmF0aW9uLT5nZXRfY3VycmVudF9wYWdlKCkrMSwkdGhpcy0+TGFuZygnbmV4dHBhZ2UnKSkpOwoJICB9CiAgfQoKZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlRnJvbURhdGFiYXNlKCR0aGV0ZW1wbGF0ZSk7CgoKPz4K]]></data>
	</file>
	<file>
	  <filename>/action.defaultadmin.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmICghaXNzZXQoJGdDbXMpKSBleGl0OwoKJHRhYiA9ICcnOwppZiAoaXNzZXQoJHBhcmFtc1snYWN0aXZlX3RhYiddKSkKewoJJHRhYiA9ICRwYXJhbXNbJ2FjdGl2ZV90YWInXTsKCSR0aGlzLT5TZXRDdXJyZW50VGFiKCR0YWIpOwp9CgovLyB0aGUgdG9wIG5hdiBiYXIKaWYoICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBUZW1wbGF0ZXMnKSB8fAogICAgJHRoaXMtPkNoZWNrUGVybWlzc2lvbignTW9kaWZ5IFNpdGUgUHJlZmVyZW5jZXMnKSApCiAgewogICAgZWNobyAnPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93IiBzdHlsZT0idGV4dC1hbGlnbjogcmlnaHQ7IHdpZHRoOiA4MCU7Ij4nOwogICAgaWYoICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBTaXRlIFByZWZlcmVuY2VzJykgKQogICAgICB7CgllY2hvICR0aGlzLT5DcmVhdGVJbWFnZUxpbmsoJGlkLCdhZG1pbl9zZXR0aW5ncycsJHJldHVybmlkLAoJCQkJICAgICR0aGlzLT5MYW5nKCdsYmxfc2V0dGluZ3MnKSwKCQkJCSAgICAnaWNvbnMvdG9wZmlsZXMvcHJlZmVyZW5jZXMuZ2lmJyxhcnJheSgpLCcnLCcnLGZhbHNlKTsKICAgICAgfQogICAgaWYoICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBUZW1wbGF0ZXMnKSApCiAgICAgIHsKCWVjaG8gJHRoaXMtPkNyZWF0ZUltYWdlTGluaygkaWQsJ2FkbWluX3RlbXBsYXRlcycsJHJldHVybmlkLAoJCQkJICAgICR0aGlzLT5MYW5nKCdsYmxfdGVtcGxhdGVzJyksCgkJCQkgICAgJ2ljb25zL3RvcGZpbGVzL3RlbXBsYXRlLmdpZicsYXJyYXkoKSwnJywnJyxmYWxzZSk7CiAgICAgIH0KICAgIGVjaG8gJzwvZGl2Pic7CiAgfQoKI1RoZSB0YWJzCmVjaG8gJHRoaXMtPlN0YXJ0VGFiSGVhZGVycygpOwoKaWYgKCR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBDb21wYW55IERpcmVjdG9yeScpKQp7CiAgZWNobyAkdGhpcy0+U2V0VGFiSGVhZGVyKCdjb21wYW5pZXMnLCR0aGlzLT5MYW5nKCdjb21wYW5pZXMnKSk7CiAgaWYoICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdjb2xsZWN0c3RhdHMnLDApICkKICAgIHsKICAgICAgZWNobyAkdGhpcy0+U2V0VGFiSGVhZGVyKCdzZWFyY2hlcycsJHRoaXMtPkxhbmcoJ3NlYXJjaGVzJykpOwogICAgfQp9CmVjaG8gJHRoaXMtPkVuZFRhYkhlYWRlcnMoKTsKCiNUaGUgY29udGVudCBvZiB0aGUgdGFicwplY2hvICR0aGlzLT5TdGFydFRhYkNvbnRlbnQoKTsKaWYgKCR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBDb21wYW55IERpcmVjdG9yeScpKQp7CQogIGVjaG8gJHRoaXMtPlN0YXJ0VGFiKCdjb21wYW5pZXMnLCAkcGFyYW1zKTsKICBpbmNsdWRlKGRpcm5hbWUoX19GSUxFX18pLicvZnVuY3Rpb24uYWRtaW5fY29tcGFuaWVzdGFiLnBocCcpOwogIGVjaG8gJHRoaXMtPkVuZFRhYigpOwoJCiAgaWYoICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdjb2xsZWN0c3RhdHMnLDApICkKICAgIHsKICAgICAgZWNobyAkdGhpcy0+U3RhcnRUYWIoJ3NlYXJjaGVzJywgJHBhcmFtcyk7CiAgICAgIGluY2x1ZGUoZGlybmFtZShfX0ZJTEVfXykuJy9mdW5jdGlvbi5hZG1pbl9zZWFyY2hlc3RhYi5waHAnKTsKICAgICAgZWNobyAkdGhpcy0+RW5kVGFiKCk7CiAgICB9Cn0KZWNobyAkdGhpcy0+RW5kVGFiQ29udGVudCgpOwoKIyB2aW06dHM9NCBzdz00IG5vZXQKPz4K]]></data>
	</file>
	<file>
	  <filename>/action.defaulturl.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmICghaXNzZXQoJGdDbXMpKSBleGl0OwoKJGFjdGlvbiA9ICdkZXRhaWxzJzsKaWYoIGlzc2V0KCRwYXJhbXNbJ2NhdGVnb3J5aWQnXSkgKQogIHsKICAgICRhY3Rpb24gPSAnZGVmYXVsdCc7CiAgfQoKJHRoaXMtPkRvQWN0aW9uKCRhY3Rpb24sJGlkLCRwYXJhbXMsJHJldHVybmlkKTsKCiMgdmltOnRzPTQgc3c9NCBub2V0Cj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/action.deletecategory.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgppZiAoIWlzc2V0KCRnQ21zKSkgZXhpdDsKCiRjYXRpZCA9ICcnOwppZiAoaXNzZXQoJHBhcmFtc1snY2F0aWQnXSkpCnsKCSRjYXRpZCA9ICRwYXJhbXNbJ2NhdGlkJ107Cn0KCi8vIEdldCB0aGUgY2F0ZWdvcnkgZGV0YWlscwokcXVlcnkgPSAnU0VMRUNUICogRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfY2F0ZWdvcmllcyBXSEVSRSBpZCA9ID8nOwokcm93ID0gJGRiLT5HZXRSb3coJHF1ZXJ5LCBhcnJheSggJGNhdGlkKSk7CgovL05vdyByZW1vdmUgdGhlIGNhdGVnb3J5CiRxdWVyeSA9ICJERUxFVEUgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2NvbXBkaXJfY2F0ZWdvcmllcyBXSEVSRSBpZCA9ID8iOwokZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgkY2F0aWQpKTsKCi8vIGFuZCBpdCdzIGltYWdlcyBhbmQgYXR0YWNobWVudHMKJGNvbmZpZyA9Y21zbXMoKS0+R2V0Q29uZmlnKCk7CiRjYXRkaXIgPSBjbXNfam9pbl9wYXRoKCRjb25maWdbJ3VwbG9hZHNfcGF0aCddLCdjb21wYW55ZGlyZWN0b3J5JywnY2F0Jy4kY2F0aWQpOwpjZ2VfZGlyOjpyZWN1cnNpdmVfcm1kaXIoJGNhdGRpcik7CgovL0FuZCByZW1vdmUgaXQgZnJvbSBhbnkgZW50cmllcwokcXVlcnkgPSAiREVMRVRFIEZST00gbW9kdWxlX2NvbXBkaXJfY29tcGFueV9jYXRlZ29yaWVzIFdIRVJFIGNhdGVnb3J5X2lkID0gPyI7CiRkYi0+RXhlY3V0ZSgkcXVlcnksIGFycmF5KCRjYXRpZCkpOwoKJHBhcmFtcyA9IGFycmF5KCd0YWJfbWVzc2FnZSc9PiAnY2F0ZWdvcnlkZWxldGVkJywgJ2FjdGl2ZV90YWInID0+ICdjYXRlZ29yaWVzJyk7CiR0aGlzLT5SZWRpcmVjdCgkaWQsICdhZG1pbl9zZXR0aW5ncycsICRyZXR1cm5pZCwgJHBhcmFtcyk7Cgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.deletecompany.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmICghaXNzZXQoJGdDbXMpKSBleGl0OwoKJGNvbXBpZCA9ICcnOwppZiAoaXNzZXQoJHBhcmFtc1snY29tcGlkJ10pKQp7CgkkY29tcGlkID0gJHBhcmFtc1snY29tcGlkJ107Cn0KCi8vIEdldCB0aGUgY2F0ZWdvcnkgZGV0YWlscwokcXVlcnkgPSAnU0VMRUNUICogRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfY29tcGFuaWVzIFdIRVJFIGlkID0gPyc7CiRyb3cgPSAkZGItPkdldFJvdygkcXVlcnksIGFycmF5KCRjb21waWQpKTsKCi8vTm93IHJlbW92ZSB0aGUgY2F0ZWdvcnkKJHF1ZXJ5ID0gIkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfY29tcGRpcl9jb21wYW5pZXMgV0hFUkUgaWQgPSA/IjsKJGRiLT5FeGVjdXRlKCRxdWVyeSwgYXJyYXkoJGNvbXBpZCkpOwoKLy9BbmQgcmVtb3ZlIGl0IGZyb20gYW55IGVudHJpZXMKJHF1ZXJ5ID0gIkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfY29tcGRpcl9maWVsZHZhbHMgV0hFUkUgY29tcGFueV9pZCA9ID8iOwokZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgkY29tcGlkKSk7CgovL0FuZCByZW1vdmUgaXQgZnJvbSBhbnkgY2F0ZWdvcmllcwokcXVlcnkgPSAiREVMRVRFIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9jb21wZGlyX2NvbXBhbnlfY2F0ZWdvcmllcyBXSEVSRSBjb21wYW55X2lkID0gPyI7CiRkYi0+RXhlY3V0ZSgkcXVlcnksIGFycmF5KCRjb21waWQpKTsKCi8vIFJlbW92ZSB0aGUgZmlsZXMKJGRpciA9IGNtc19qb2luX3BhdGgoJGdDbXMtPmNvbmZpZ1sndXBsb2Fkc19wYXRoJ10sJ2NvbXBhbnlkaXJlY3RvcnknLCdpZCcuJGNvbXBpZCk7CmNnZV9kaXI6OnJlY3Vyc2l2ZV9yZW1vdmVfZGlyZWN0b3J5KCRkaXIpOwoKLy9VcGRhdGUgc2VhcmNoIGluZGV4CiRtb2R1bGUgPSYgJHRoaXMtPkdldE1vZHVsZUluc3RhbmNlKCdTZWFyY2gnKTsKaWYgKCRtb2R1bGUgIT0gRkFMU0UpCnsKCSRtb2R1bGUtPkRlbGV0ZVdvcmRzKCR0aGlzLT5HZXROYW1lKCksICRjb21waWQsICdjb21wYW55Jyk7Cn0KCiRwYXJhbXMgPSBhcnJheSgndGFiX21lc3NhZ2UnPT4gJ2NvbXBhbnlkZWxldGVkJywgJ2FjdGl2ZV90YWInID0+ICdjb21wYW5pZXMnKTsKJHRoaXMtPlJlZGlyZWN0KCRpZCwgJ2RlZmF1bHRhZG1pbicsICRyZXR1cm5pZCwgJHBhcmFtcyk7Cgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.deletefielddef.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmICghaXNzZXQoJGdDbXMpKSBleGl0OwoKJGZkaWQgPSAnJzsKaWYgKGlzc2V0KCRwYXJhbXNbJ2ZkaWQnXSkpCnsKCSRmZGlkID0gJHBhcmFtc1snZmRpZCddOwp9CgovLyBHZXQgdGhlIGNhdGVnb3J5IGRldGFpbHMKJHF1ZXJ5ID0gJ1NFTEVDVCAqIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9jb21wZGlyX2ZpZWxkZGVmcyBXSEVSRSBpZCA9ID8nOwokcm93ID0gJGRiLT5HZXRSb3coJHF1ZXJ5LCBhcnJheSgkZmRpZCkpOwoKLy9Ob3cgcmVtb3ZlIHRoZSBjYXRlZ29yeQokcXVlcnkgPSAiREVMRVRFIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9jb21wZGlyX2ZpZWxkZGVmcyBXSEVSRSBpZCA9ID8iOwokZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgkZmRpZCkpOwoKLy9BbmQgcmVtb3ZlIGl0IGZyb20gYW55IGVudHJpZXMKJHF1ZXJ5ID0gIkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfY29tcGRpcl9maWVsZHZhbHMgV0hFUkUgZmllbGRkZWZfaWQgPSA/IjsKJGRiLT5FeGVjdXRlKCRxdWVyeSwgYXJyYXkoJGZkaWQpKTsKCiRkYi0+RXhlY3V0ZSgnVVBEQVRFICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfY29tcGRpcl9maWVsZGRlZnMgU0VUIGl0ZW1fb3JkZXIgPSAoaXRlbV9vcmRlciAtIDEpIFdIRVJFIGl0ZW1fb3JkZXIgPiA/JywgYXJyYXkoJHJvd1snaXRlbV9vcmRlciddKSk7CgokcGFyYW1zID0gYXJyYXkoJ3RhYl9tZXNzYWdlJz0+ICdmaWVsZGRlZmRlbGV0ZWQnLCAnYWN0aXZlX3RhYicgPT4gJ2ZpZWxkZGVmcycpOwokdGhpcy0+UmVkaXJlY3QoJGlkLCAnYWRtaW5fc2V0dGluZ3MnLCAkcmV0dXJuaWQsICRwYXJhbXMpOwoKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.details.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmICghaXNzZXQoJGdDbXMpKSBleGl0OwoKJHRoZXRlbXBsYXRlID0gJ2RldGFpbF8nLiR0aGlzLT5HZXRQcmVmZXJlbmNlKENPTVBBTllESVJfUFJFRl9ERkxUREVUQUlMX1RFTVBMQVRFKTsKaWYoIGlzc2V0KCRwYXJhbXNbJ2RldGFpbHRlbXBsYXRlJ10gKSApCiAgewogICAgJHRoZXRlbXBsYXRlID0gJ2RldGFpbF8nLiRwYXJhbXNbJ2RldGFpbHRlbXBsYXRlJ107CiAgfQoKJGNvbXBhbnkgPSBjZF91dGlsczo6Z2V0X2NvbXBhbnkoJHBhcmFtc1snY29tcGFueWlkJ10sJHJldHVybmlkLFRSVUUpOwppZiggaXNfb2JqZWN0KCRjb21wYW55KSApCiAgewoJJHNtYXJ0eS0+YXNzaWduKCdlbnRyeScsICRjb21wYW55KTsKCWlmKCBpc3NldCgkY29tcGFueS0+Y2F0ZWdvcmllcykgJiYgaXNfYXJyYXkoJGNvbXBhbnktPmNhdGVnb3JpZXMpICkKCSAgewoJICAgICR0bXAgPSBhcnJheV9rZXlzKCRjb21wYW55LT5jYXRlZ29yaWVzKTsKCSAgICBpZiggaXNfYXJyYXkoJHRtcCkgJiYgY291bnQoJHRtcCkgKQoJICAgICAgewoJICAgICAgICAkc21hcnR5LT5hc3NpZ24oJ2NhdGVnb3J5dGV4dCcsIGltcGxvZGUoIiwgIiwkdG1wKSk7CgkJICB9CgkgICAgJHNtYXJ0eS0+YXNzaWduKCdjYXRlZ29yaWVzJywgJGNvbXBhbnktPmNhdGVnb3JpZXMpOwoJICAgICRzbWFydHktPmFzc2lnbignY2F0ZWdvcmllc2NvdW50JywgY291bnQoJGNvbXBhbnktPmNhdGVnb3JpZXMpKTsKCSAgfQoJZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlRnJvbURhdGFiYXNlKCR0aGV0ZW1wbGF0ZSk7CiAgfQoKPz4K]]></data>
	</file>
	<file>
	  <filename>/action.do_importcsv.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKCiMKIyBDYWNoZWQgZGF0YQojCiRfaGllcl9jYWNoZSA9IG51bGw7CiRfZmllbGRkZWZfY2FjaGUgPSBudWxsOwokX2NhdGVnb3J5X2NhY2hlID0gbnVsbDsKJF9lcnJvciA9ICcnOwokX251bV9oaWVyID0gMDsKCgojCiMgSW5pdGlhbGl6YXRpb24KIwokZGVsaW1pdGVyID0gJyc7CgojCiMgR2V0IEZvcm0gRGF0YQojCiRpbXBvcnRlciA9IG5ldyBjZF9hc2NpaV9pbXBvcnRlcigkdGhpcyk7CmlmKCBpc3NldCgkcGFyYW1zWydjYW5jZWwnXSkgKQogIHsKICAgICR0aGlzLT5DR1JlZGlyZWN0KCRpZCwnZGVmYXVsdGFkbWluJywkcmV0dXJuaWQpOwogIH0KaWYoIGlzc2V0KCRwYXJhbXNbJ2RlbGltZXRlciddKSApCiAgewogICAgJGRlbGltZXRlciA9IHRyaW0oJHBhcmFtc1snZGVsaW1ldGVyJ10pOwogICAgJGltcG9ydGVyLT5zZXRfZGVsaW1pdGVyKCRkZWxpbWV0ZXIpOwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ2ltcG9ydF9kZWxpbWl0ZXInLCRkZWxpbWV0ZXIpOwogIH0KaWYoIGlzc2V0KCRwYXJhbXNbJ2RvX2ZpZWxkZGVmcyddKSApCiAgewogICAgJGRvX2ZpZWxkZGVmcyA9IChpbnQpdHJpbSgkcGFyYW1zWydkb19maWVsZGRlZnMnXSk7CiAgICAkaW1wb3J0ZXItPmRvX2ZpZWxkZGVmcygkZG9fZmllbGRkZWZzKTsKICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdpbXBvcnRfZmllbGRkZWZzJywkZG9fZmllbGRkZWZzKTsKICB9CmlmKCBpc3NldCgkcGFyYW1zWydkb19maWVsZHZhbHMnXSkgKQogIHsKICAgICRkb19maWVsZHZhbHMgPSAoaW50KXRyaW0oJHBhcmFtc1snZG9fZmllbGR2YWxzJ10pOwogICAgJGltcG9ydGVyLT5kb19maWVsZHZhbHMoJGRvX2ZpZWxkdmFscyk7CiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgnaW1wb3J0X2ZpZWxkdmFscycsJGRvX2ZpZWxkdmFscyk7CiAgfQppZiggaXNzZXQoJHBhcmFtc1snZG9fY2F0ZWdvcnlkZWZzJ10pICkKICB7CiAgICAkZG9fY2F0ZWdvcnlkZWZzID0gKGludCl0cmltKCRwYXJhbXNbJ2RvX2NhdGVnb3J5ZGVmcyddKTsKICAgICRpbXBvcnRlci0+ZG9fY2F0ZWdvcnlkZWZzKCRkb19jYXRlZ29yeWRlZnMpOwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ2ltcG9ydF9jYXRlZ29yeWRlZnMnLCRkb19jYXRlZ29yeWRlZnMpOwogIH0KaWYoIGlzc2V0KCRwYXJhbXNbJ2RvX2hpZXJhcmNoeWRlZnMnXSkgKQogIHsKICAgICRkb19oaWVyYXJjaHlkZWZzID0gKGludCl0cmltKCRwYXJhbXNbJ2RvX2hpZXJhcmNoeWRlZnMnXSk7CiAgICAkaW1wb3J0ZXItPmRvX2hpZXJhcmNoeWRlZnMoJGRvX2hpZXJhcmNoeWRlZnMpOwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ2ltcG9ydF9oaWVyYXJjaHlkZWZzJywkZG9faGllcmFyY2h5ZGVmcyk7CiAgfQppZiggaXNzZXQoJHBhcmFtc1snZG9faGllcmFyY2h5dmFscyddKSApCiAgewogICAgJGRvX2hpZXJhcmNoeXZhbHMgPSAoaW50KXRyaW0oJHBhcmFtc1snZG9faGllcmFyY2h5dmFscyddKTsKICAgICRpbXBvcnRlci0+ZG9faGllcmFyY2h5dmFscygkZG9faGllcmFyY2h5dmFscyk7CiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgnaW1wb3J0X2hpZXJhcmNoeXZhbHMnLCRkb19oaWVyYXJjaHl2YWxzKTsKICB9CmlmKCBpc3NldCgkcGFyYW1zWydkb19jYXRlZ29yeXZhbHMnXSkgKQogIHsKICAgICRkb19jYXRlZ29yeXZhbHMgPSAoaW50KXRyaW0oJHBhcmFtc1snZG9fY2F0ZWdvcnl2YWxzJ10pOwogICAgJGltcG9ydGVyLT5kb19jYXRlZ29yeXZhbHMoJGRvX2NhdGVnb3J5dmFscyk7CiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgnaW1wb3J0X2NhdGVnb3J5dmFscycsJGRvX2NhdGVnb3J5dmFscyk7CiAgfQppZiggaXNzZXQoJHBhcmFtc1snY2F0ZWdvcnljb2x1bW4nXSkgKQogIHsKCSRjYXRlZ29yeWNvbHVtbiA9IHRyaW0oJHBhcmFtc1snY2F0ZWdvcnljb2x1bW4nXSk7CgkkaW1wb3J0ZXItPnNldF9jYXRlZ29yeWNvbHVtbigkY2F0ZWdvcnljb2x1bW4pOwoJJHRoaXMtPlNldFByZWZlcmVuY2UoJ2ltcG9ydF9jYXRlZ29yeWNvbHVtbicsJGNhdGVnb3J5Y29sdW1uKTsKICB9CmlmKCBpc3NldCgkcGFyYW1zWydkb19sb29rdXAnXSkgKQogIHsKICAgICRkb19sb29rdXAgPSAoaW50KXRyaW0oJHBhcmFtc1snZG9fbG9va3VwJ10pOwogICAgJGltcG9ydGVyLT5kb19sYXRsb25nX2xvb2t1cCgkZG9fbG9va3VwKTsKICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdpbXBvcnRfbG9va3VwbGF0bG9uZycsJGRvX2xvb2t1cCk7CiAgfQokY3JlYXRlX3VybCA9IDA7CmlmKCBpc3NldCgkcGFyYW1zWydjcmVhdGVfdXJsJ10pICkKICB7CiAgICAkY3JlYXRlX3VybCA9IChpbnQpdHJpbSgkcGFyYW1zWydjcmVhdGVfdXJsJ10pOwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ2ltcG9ydF9jcmVhdGVfdXJsJywkZG9fbG9va3VwKTsKICB9CiRpbXBvcnRlci0+Y3JlYXRlX3VybCgkY3JlYXRlX3VybCB8fCAkdGhpcy0+R2V0UHJlZmVyZW5jZSgndXJsX3JlcXVpcmVkJywwKSk7CgppZiggaXNzZXQoJHBhcmFtc1snY2hlY2tfZHVwbGljYXRlcyddKSApCiAgewogICAgJGNoZWNrX2R1cGxpY2F0ZXMgPSB0cmltKCRwYXJhbXNbJ2NoZWNrX2R1cGxpY2F0ZXMnXSk7CiAgICAkaW1wb3J0ZXItPmNoZWNrX2R1cGxpY2F0ZV9jb21wYW5pZXMoJGNoZWNrX2R1cGxpY2F0ZXMpOwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ2ltcG9ydF9jaGVja2R1cGxpY2F0ZXMnLCRjaGVja19kdXBsaWNhdGVzKTsKICB9CgppZiggJGRlbGltZXRlciA9PSAnJyApCiAgewogICAgJHRoaXMtPlNldEVycm9yKCR0aGlzLT5MYW5nKCdlcnJvcl9taXNzaW5ncGFyYW0nKSk7CiAgICAkdGhpcy0+Q0dSZWRpcmVjdCgkaWQsJ2ltcG9ydGNzdicsJHJldHVybmlkKTsKICB9CmVsc2UgaWYoICFpc3NldCgkX0ZJTEVTWyRpZC4nY3N2ZmlsZSddKSB8fCAkX0ZJTEVTWyRpZC4nY3N2ZmlsZSddWydzaXplJ10gPT0gMCApCiAgewogICAgJHRoaXMtPlNldEVycm9yKCR0aGlzLT5MYW5nKCdlcnJvcl9taXNzaW5ndXBsb2FkJykpOwogICAgJHRoaXMtPkNHUmVkaXJlY3QoJGlkLCdpbXBvcnRjc3YnLCRyZXR1cm5pZCk7CiAgfQplbHNlIGlmKCAkX0ZJTEVTWyRpZC4nY3N2ZmlsZSddWydlcnJvciddICE9IDAgKQogIHsKICAgICR0aGlzLT5TZXRFcnJvcigkdGhpcy0+TGFuZygnZXJyb3JfYmFkdXBsb2FkJykpOwogICAgJHRoaXMtPkNHUmVkaXJlY3QoJGlkLCdpbXBvcnRjc3YnLCRyZXR1cm5pZCk7CiAgfQokZmlsZW5hbWUgPSAkX0ZJTEVTWyRpZC4nY3N2ZmlsZSddWyd0bXBfbmFtZSddOwoKJHJlcyA9ICRpbXBvcnRlci0+aW1wb3J0X2ZpbGUoJGZpbGVuYW1lKTsKJGVycm9ycyA9ICRpbXBvcnRlci0+Z2V0X2Vycm9ycygpOwppZiggY291bnQoJGVycm9ycykgKQogIHsKICAgICRzbWFydHktPmFzc2lnbignZXJyb3JzJywkZXJyb3JzKTsKICB9CiRyZXN1bHRzID0gJGltcG9ydGVyLT5nZXRfcmVzdWx0cygpOwokc21hcnR5LT5hc3NpZ24oJ251bV9jb21wYW5pZXMnLCRyZXN1bHRzWydudW1fY29tcGFuaWVzJ10pOwokc21hcnR5LT5hc3NpZ24oJ251bV9jYXRlZ29yaWVzJywkcmVzdWx0c1snbnVtX2NhdGVnb3JpZXMnXSk7CiRzbWFydHktPmFzc2lnbignbnVtX2ZpZWxkZGVmcycsJHJlc3VsdHNbJ251bV9maWVsZGRlZnMnXSk7CiRzbWFydHktPmFzc2lnbignbnVtX2hpZXInLCRyZXN1bHRzWydudW1faGllciddKTsKJHNtYXJ0eS0+YXNzaWduKCdyZXR1cm5fdXJsJywkdGhpcy0+Q3JlYXRlVVJMKCRpZCwnZGVmYXVsdGFkbWluJywkcmV0dXJuaWQpKTsKCmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSgnZG9faW1wb3J0Y3N2LnRwbCcpOwojCiMgRU9GCiMKPz4K]]></data>
	</file>
	<file>
	  <filename>/action.do_search.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmICghaXNzZXQoJGdDbXMpKSBleGl0OwoKIwojIEluaXRpYWxpemF0aW9uCiMKJGNvdW50cnkgPSAnVVMnOwokYWRkcmVzcyA9ICcnOwokaGF2ZV9sYXRsb25nID0gMDsKJGxhdGl0dWRlID0gJyc7CiRsb25naXR1ZGUgPSAnJzsKJHBvc3RhbCA9ICcnOwokcmFkaXVzID0gJzUwJzsKJHVuaXRzICA9ICdtaWxlcyc7CiRjb21wYW55X25hbWUgPSAnJzsKJG5hbWVfdHlwZSA9ICdleGFjdCc7CiR1c2VfY2F0ZWdvcmllcyA9ICcnOwokZXJyb3JzID0gYXJyYXkoKTsKJGJhc2VfbGF0ID0gJyc7CiRiYXNlX2xvbmcgPSAnJzsKJGNnZ20gPSBjZ2VfdXRpbHM6OmdldF9tb2R1bGUoJ0NHR29vZ2xlTWFwcycpOwokcG9zdGNvZGUgPSBjZ2VfdXRpbHM6OmdldF9tb2R1bGUoJ1Bvc3Rjb2RlJyk7CiRkb196aXBfc2VhcmNoID0gMDsKJHBvc3RhbF9kYXRhID0gJyc7CiRib3VuZGluZ19ib3ggPSAnJzsKJHNvcnRvcmRlciA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdzb3J0b3JkZXInLCdhc2MnKTsKJHNvcnRieSA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdzb3J0YnknLCdjb21wYW55X25hbWUnKTsKJGRldGFpbHBhZ2UgPSAkcmV0dXJuaWQ7CiRpbmxpbmUgPSAwOwokcGFnZSA9IDE7CiRwYWdlbGltaXQgPSAxMDAwMDA7CiRjb3VudCA9IDA7CiRudW1wYWdlcyA9IDA7CiRzdW1tYXJ5dGVtcGxhdGUgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZShDT01QQU5ZRElSX1BSRUZfREZMVFNVTU1BUllfVEVNUExBVEUpOwovLyR1cmxmbXQgPSAnY29tcGFuaWVzLyVkLycuKCRkZXRhaWxwYWdlIT0nJz8kZGV0YWlscGFnZTokcmV0dXJuaWQpOwokZW50cnlhcnJheSA9IGFycmF5KCk7CiRjb25maWcgPSAkZ0Ntcy0+R2V0Q29uZmlnKCk7CiRzdG9yZWRfY2F0ZWdvcmllcyA9ICcnOwokaGllcmFyY2h5ID0gJyc7CiRzZWFyY2hfYWRkcmVzcyA9IDA7CiRwb3N0YWxfY2hhcnMgPSAwOwokaW5saW5lID0gMDsKCiMKIyBTZXR1cAojCiR0bXAgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZGV0YWlscGFnZScsLTEpOwppZiggJHRtcCA+IDAgKQogIHsKICAgICRkZXRhaWxwYWdlID0gJHRtcDsKICB9CmlmKCBpc3NldCggJHBhcmFtc1sncGFnZSddICkgKQogIHsKICAgICRwYWdlID0gKGludCkkcGFyYW1zWydwYWdlJ107CiAgfQppZiggaXNzZXQoICRwYXJhbXNbJ3BhZ2VsaW1pdCddICkgKQogIHsKICAgICRwYWdlbGltaXQgPSAoaW50KSRwYXJhbXNbJ3BhZ2VsaW1pdCddOwogIH0KaWYoIGlzc2V0KCAkcGFyYW1zWydpbmxpbmUnXSApICYmICRwYXJhbXNbJ2lubGluZSddICE9IDAgKQogIHsKICAgICRpbmxpbmUgPSAxOwogIH0KaWYoIGlzc2V0KCAkcGFyYW1zWydkZXRhaWxwYWdlJ10gKSApCiAgewogICAgJHRtcCA9ICR0aGlzLT5yZXNvbHZlX2FsaWFzX29yX2lkKCRwYXJhbXNbJ2RldGFpbHBhZ2UnXSk7CiAgICBpZiggJHRtcCApCiAgICAgIHsKCSRkZXRhaWxwYWdlID0gJHRtcDsKCSRpbmxpbmUgPSAwOwogICAgICB9CiAgfQppZiggaXNzZXQoJHBhcmFtc1snc2VhcmNoYWRkcmVzcyddKSAmJiAkcGFyYW1zWydzZWFyY2hhZGRyZXNzJ10gKQogIHsKCSRzZWFyY2hfYWRkcmVzcyA9IDE7CiAgfQppZiggaXNzZXQoJHBhcmFtc1sncG9zdGFsY2hhcnMnXSkgJiYgJHBhcmFtc1sncG9zdGFsY2hhcnMnXSApCiAgewoJJHBvc3RhbF9jaGFycyA9IChpbnQpJHBhcmFtc1sncG9zdGFsY2hhcnMnXTsKICB9CmlmKCBpc3NldCggJHBhcmFtc1snc29ydG9yZGVyJ10gKSApCiAgewogICAgc3dpdGNoKCAkcGFyYW1zWydzb3J0b3JkZXInXSApCiAgICAgIHsKICAgICAgY2FzZSAnYXNjJzoKICAgICAgY2FzZSAnZGVzYyc6Cgkkc29ydG9yZGVyID0gJHBhcmFtc1snc29ydG9yZGVyJ107CiAgICAgIH0KICB9CmlmKCBpc3NldCggJHBhcmFtc1snc29ydGJ5J10gKSApCiAgewogICAgc3dpdGNoKCAkcGFyYW1zWydzb3J0YnknXSApCiAgICAgIHsKICAgICAgY2FzZSAnY29tcGFueV9uYW1lJzoKCSRzb3J0YnkgPSAnY29tcGFueV9uYW1lJzsKCWJyZWFrOwogICAgICBjYXNlICdwaG9uZSc6Cgkkc29ydGJ5ID0gJ3RlbGVwaG9uZSc7CglicmVhazsKICAgICAgY2FzZSAnZmF4JzoKCSRzb3J0YnkgPSAnZmF4JzsKCWJyZWFrOwogICAgICBjYXNlICdlbWFpbCc6Cgkkc29ydGJ5ID0gJ2NvbnRhY3RfZW1haWwnOwoJYnJlYWs7CiAgICAgIGNhc2UgJ3dlYnNpdGUnOgoJJHNvcnRieSA9ICd3ZWJzaXRlJzsKCWJyZWFrOwogICAgICBjYXNlICdjcmVhdGVkJzoKCSRzb3J0YnkgPSAnY3JlYXRlX2RhdGUnOwoJYnJlYWs7CiAgICAgIGNhc2UgJ21vZGlmaWVkJzoKCSRzb3J0YnkgPSAnbW9kaWZpZWRfZGF0ZSc7CglicmVhazsKICAgICAgY2FzZSAnc3RhdHVzJzoKCSRzb3J0YnkgPSAnc3RhdHVzJzsKCWJyZWFrOwogICAgICBjYXNlICdyYW5kb20nOgoJJHNvcnRieSA9ICdSQU5EKCknOwoJJHNvcnRvcmRlciA9ICcnOwoJYnJlYWs7CgkgIGNhc2UgJ2Rpc3RhbmNlJzoKCQkkc29ydGJ5ID0gJ2Rpc3RhbmNlJzsKCQlicmVhazsKICAgICAgfQogIH0KaWYoICRzb3J0YnkgPT0gJ3JhbmRvbScgKQogIHsKICAgICRzb3J0YnkgPSAnUkFORCgpJzsKICAgICRzb3J0b3JkZXIgPSAnJzsKICB9CmlmKCBpc3NldCgkcGFyYW1zWydzdW1tYXJ5dGVtcGxhdGUnXSApICkKICB7CiAgICAkc3VtbWFyeXRlbXBsYXRlID0gJHBhcmFtc1snc3VtbWFyeXRlbXBsYXRlJ107CiAgfQppZiggaXNzZXQoJHBhcmFtc1snaGllciddKSApCiAgewoJJGhpZXJhcmNoeSA9IHRyaW0oJHBhcmFtc1snaGllciddKTsKICB9CgovLyBpZiggaXNzZXQoICRwYXJhbXNbJ2RldGFpbHRlbXBsYXRlJ10gKSApCi8vICAgewovLyAJJHVybGZtdCAuPSAnL2QsJy4kcGFyYW1zWydkZXRhaWx0ZW1wbGF0ZSddOwovLyAgIH0KaWYoIGlzc2V0KCRwYXJhbXNbJ2NkX3N0b3JlZF9jYXRlZ29yaWVzJ10pICkKICB7CiAgICAkc3RvcmVkX2NhdGVnb3JpZXMgPSBleHBsb2RlKCcsJywkcGFyYW1zWydjZF9zdG9yZWRfY2F0ZWdvcmllcyddKTsKICB9CgoKIwojIEhhbmRsZSBmb3JtIHN1Ym1pc3Npb24KIwppZiggaXNzZXQoJHBhcmFtc1snY2RfY2FuY2VsJ10pICkKICB7CiAgICAkZGVzdHBhZ2UgPSAkcmV0dXJuaWQ7CiAgICBpZiggaXNzZXQoJHBhcmFtc1snY2Rfb3JpZ3BhZ2UnXSkgKQogICAgICB7CgkkZGVzdHBhZ2UgPSAoaW50KSRwYXJhbXNbJ2NkX29yaWdwYWdlJ107CiAgICAgIH0KICAgICR0aGlzLT5SZWRpcmVjdENvbnRlbnQoJGRlc3RwYWdlKTsKICB9CmVsc2UgaWYoIGlzc2V0KCRwYXJhbXNbJ2NkX3N1Ym1pdCddKSB8fCBpc3NldCgkcGFyYW1zWydjZF9kb3NlYXJjaCddKSApCiAgewogICAgLy8KICAgIC8vIGdldCB0aGUgZGF0YQogICAgLy8KICAgIGlmKCBpc3NldCgkcGFyYW1zWydjZF9jb3VudHJ5J10pICkKICAgICAgewoJCSRjb3VudHJ5ID0gdHJpbSgkcGFyYW1zWydjZF9jb3VudHJ5J10pOwogICAgICB9CiAgICBpZiggaXNzZXQoJHBhcmFtc1snY2RfcG9zdGFsJ10pICkKICAgICAgewoJCSRwb3N0YWwgPSB0cmltKCRwYXJhbXNbJ2NkX3Bvc3RhbCddKTsKCQkkZG9femlwX3NlYXJjaCA9IDE7CiAgICAgIH0KCWlmKCBpc3NldCgkcGFyYW1zWydjZF9sYXRpdHVkZSddKSAmJiBpc3NldCgkcGFyYW1zWydjZF9sb25naXR1ZGUnXSkgKQoJICB7CgkJJGhhdmVfbGF0bG9uZyA9IDE7CgkJJGxhdGl0dWRlID0gKGZsb2F0KWZsb2F0dmFsKCRwYXJhbXNbJ2NkX2xhdGl0dWRlJ10pOwoJCSRsb25naXR1ZGUgPSAoZmxvYXQpZmxvYXR2YWwoJHBhcmFtc1snY2RfbG9uZ2l0dWRlJ10pOwoJICB9CiAgICBpZiggaXNzZXQoJHBhcmFtc1snY2RfYWRkcmVzcyddKSApCiAgICAgIHsKCQkkYWRkcmVzcyA9IHRyaW0oJHBhcmFtc1snY2RfYWRkcmVzcyddKTsKICAgICAgfQogICAgaWYoIGlzc2V0KCRwYXJhbXNbJ2NkX3JhZGl1cyddKSApCiAgICAgIHsKCQkkcmFkaXVzID0gKGludCkkcGFyYW1zWydjZF9yYWRpdXMnXTsKICAgICAgfQogICAgaWYoIGlzc2V0KCRwYXJhbXNbJ2NkX3VuaXRzJ10pICkKICAgICAgewoJCSR1bml0cyA9IHN0cnRvbG93ZXIodHJpbSgkcGFyYW1zWydjZF91bml0cyddKSk7CiAgICAgIH0KICAgIGlmKCBpc3NldCggJHBhcmFtc1snY2RfaW5saW5lJ10gKSAmJiAkcGFyYW1zWydjZF9pbmxpbmUnXSAhPSAwICkKICAgICAgewoJCSRpbmxpbmUgPSAxOwoJCSRwYXJhbXNbJ2lubGluZSddID0gJGlubGluZTsKICAgICAgfQogICAgaWYoIGlzc2V0KCRwYXJhbXNbJ2NkX25hbWUnXSkgKQogICAgICB7CgkJJGNvbXBhbnlfbmFtZSA9IHRyaW0oJHBhcmFtc1snY2RfbmFtZSddKTsKICAgICAgfQogICAgaWYoIGlzc2V0KCRwYXJhbXNbJ2NkX25hbWVfdHlwZSddKSApCiAgICAgIHsKCQkkbmFtZV90eXBlID0gc3RydG9sb3dlcih0cmltKCRwYXJhbXNbJ2NkX25hbWVfdHlwZSddKSk7CiAgICAgIH0KCWlmKCAkaGllcmFyY2h5ID09ICcnICYmIGlzc2V0KCRwYXJhbXNbJ2NkX2hpZXInXSkgKQoJICB7CgkJaWYoICRwYXJhbXNbJ2NkX2hpZXInXSAhPSAnJyAmJiAkcGFyYW1zWydjZF9oaWVyJ10gIT0gJy0xJyApCgkJICB7CgkJCSRoaWVyYXJjaHkgPSB0cmltKCRwYXJhbXNbJ2NkX2hpZXInXSk7CgkJCWlmKCBpc3NldCgkcGFyYW1zWydjZF9oaWVyX2NoaWxkcmVuJ10pICYmICRwYXJhbXNbJ2NkX2hpZXJfY2hpbGRyZW4nXSAhPSAwICkKCQkJICB7CgkJCQkvLyB3ZSdyZSBpbmNsdWRpbmcgY2hpbGRyZW4uCgkJCQkkaGllcmFyY2h5IC49ICcqJzsKCQkJICB9CgkJICB9CgkgIH0KICAgIGlmKCBpc3NldCgkcGFyYW1zWydjZF91c2VfY2F0ZWdvcmllcyddKSApCiAgICAgIHsKCQkkdG1wID0gJHBhcmFtc1snY2RfdXNlX2NhdGVnb3JpZXMnXTsKCQlpZiggaXNfYXJyYXkoJHRtcCkgJiYgY291bnQoJHRtcCkgKQoJCSAgewoJCQkkdXNlX2NhdGVnb3JpZXMgPSAkdG1wOwoJCQkkcGFyYW1zWydjZF9zdG9yZWRfY2F0ZWdvcmllcyddID0gaW1wbG9kZSgnLCcsJHVzZV9jYXRlZ29yaWVzKTsKCQkJdW5zZXQoJHBhcmFtc1snY2RfdXNlX2NhdGVnb3JpZXMnXSk7CgkJICB9CgkJZWxzZSBpZiggJHRtcCAhPSAnJyApCgkJICB7CgkJCSR1c2VfY2F0ZWdvcmllcyA9IGFycmF5KCR0bXApOwoJCQkkcGFyYW1zWydjZF9zdG9yZWRfY2F0ZWdvcmllcyddID0gJHRtcDsKCQkJdW5zZXQoJHBhcmFtc1snY2RfdXNlX2NhdGVnb3JpZXMnXSk7CgkJICB9CiAgICAgIH0KICAgIGVsc2UgaWYgKGlzc2V0KCRwYXJhbXNbJ2NkX2Rvc2VhcmNoJ10pKQogICAgICB7CgkJLy8gY29tcGluZyBmcm9tIGEgbGluawoJCSR1c2VfY2F0ZWdvcmllcyA9ICRzdG9yZWRfY2F0ZWdvcmllczsKICAgICAgfQogICAgaWYoIGlzc2V0KCRwYXJhbXNbJ2NkX3N1Ym1pdCddKSApCiAgICAgIHsKCQl1bnNldCgkcGFyYW1zWydjZF9zdWJtaXQnXSk7CgkJJHBhcmFtc1snY2RfZG9zZWFyY2gnXSA9IDE7CiAgICAgIH0KCiAgICAvLwogICAgLy8gdmFsaWRhdGUgdGhlIGRhdGEKICAgIC8vCiAgICBpZiggJHVuaXRzICE9ICdtaWxlcycgJiYgJHVuaXRzICE9ICdrbScgKQogICAgICB7CgkJLy8gaW52YWxpZCB1bml0cwoJCSRlcnJvcnNbXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9pbnZhbGlkX3BhcmFtJywnY2RfdW5pdHMnKTsKICAgICAgfQogICAgaWYoICRyYWRpdXMgPD0gMCApCiAgICAgIHsKCQkvLyBpbnZhbGlkIHVuaXRzCgkJJGVycm9yc1tdID0gJHRoaXMtPkxhbmcoJ2Vycm9yX2ludmFsaWRfcGFyYW0nLCdjZF9yYWRpdXMnKTsKICAgICAgfQogICAgaWYoICRkb196aXBfc2VhcmNoICYmICRwb3N0Y29kZSApCiAgICAgIHsKCQlpZiggJGNvdW50cnk9PSAnJyApCgkJICB7CgkJCSRlcnJvcnNbXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9pbnZhbGlkX3BhcmFtJywnY2RfY291bnRyeScpOwoJCSAgfQogICAgICB9CiAgICBpZiggJG5hbWVfdHlwZSAhPSAnZXhhY3QnICYmICRuYW1lX3R5cGUgIT0gJ2xpa2UnKQogICAgICB7CgkJLy8gaW52YWxpZCB1bml0cwoJCSRlcnJvcnNbXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9pbnZhbGlkX3BhcmFtJywnY2RfbmFtZV90eXBlJyk7CiAgICAgIH0KCQogICAgLy8gY29udmVydCBkaXN0YW5jZSB0byBtaWxlcwogICAgaWYoIGVtcHR5KCRlcnJvcnMpICYmICR1bml0cyA9PSAna20nICkKICAgICAgewoJCSRyYWRpdXMgPSAoZmxvYXQpJHJhZGl1cyAqIDAuNjIxMzcxMTkyOwogICAgICB9CgogICAgLy8gaWYgd2UgY2FuIGZpbmQgdGhlIFBvc3Rjb2RlIG1vZHVsZSBub3cgd2UgY2FuIGZpbmQgYSBiYXNlIGxhdGl0dWRlIGFuZCBsb25naXR1ZGUuCiAgICBpZiggZW1wdHkoJGVycm9ycykgJiYgISRoYXZlX2xhdGxvbmcgJiYgIWVtcHR5KCRwb3N0YWwpICYmICRwb3N0Y29kZSAmJiAkZG9femlwX3NlYXJjaCAgKQogICAgICB7CgkJJHBvc3RhbF9kYXRhID0gJHBvc3Rjb2RlLT5Mb29rdXBfWmlwKCRjb3VudHJ5LCRwb3N0YWwsJHBvc3RhbGNoYXJzKTsKCQlpZiggIWlzX2FycmF5KCRwb3N0YWxfZGF0YSkgJiYgISRzZWFyY2hfYWRkcmVzcyApCgkJICB7CgkJCS8vIGl0IGRpZG4ndCB3b3JrCgkJCSRlcnJvcnNbXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9wb3N0Y29kZV9sb29rdXAnLCRwb3N0YWwpOwoJCSAgfQoJCSRsYXRpdHVkZSA9ICRwb3N0YWxfZGF0YVsnbGF0aXR1ZGUnXTsKCQkkbG9uZ2l0dWRlID0gJHBvc3RhbF9kYXRhWydsb25naXR1ZGUnXTsKCQkkaGF2ZV9sYXRsb25nID0gMTsKICAgICAgfQoKICAgIGlmKCBlbXB0eSgkZXJyb3JzKSAmJiAhJGhhdmVfbGF0bG9uZyAmJiAhZW1wdHkoJGFkZHJlc3MpICYmICRjZ2dtICkKICAgICAgewoJCS8vIHdlIGRvbid0IGhhdmUgYSBib3VuZGluZyBib3ggeWV0LCBtYXliZSB3ZSBjYW4gZG8gYSBsYXQvbG9uZyBsb29rdXAgZnJvbSB0aGUgYWRkcmVzcyBhbmQgZ2V0IG9uZS4KCQkkY29vcmRzID0gJGNnZ20tPkdldENvb3Jkc0Zyb21BZGRyZXNzKCRhZGRyZXNzKTsKCQlpZiggJGNvb3JkcyAhPT0gZmFsc2UgKQoJCSAgewoJCQkkbGF0aXR1ZGUgPSAkY29vcmRzWydsYXQnXTsKCQkJJGxvbmdpdHVkZSA9ICRjb29yZHNbJ2xvbiddOwoJCQkkaGF2ZV9sYXRsb25nID0gMTsKCQkgIH0KICAgICAgfQoKCS8vIHdlcmUgd2UgZ2l2ZW4gYSBsYXRpdHVkZSBhbmQgbG9uZ2l0dWRlPwoJaWYoIGVtcHR5KCRlcnJvcnMpICYmICRoYXZlX2xhdGxvbmcgKQoJICB7CgkJJGJvdW5kaW5nX2JveCA9ICR0aGlzLT5HZXRCb3VuZGluZ0JveCgkbGF0aXR1ZGUsJGxvbmdpdHVkZSwkcmFkaXVzKTsKCSAgfQoKCiAgICAvLwogICAgLy8gYnVpbGQgdGhlIHF1ZXJ5CiAgICAvLwogICAgaWYoIGVtcHR5KCRlcnJvcnMpICkKICAgICAgewoJCSRxcGFybXMxID0gYXJyYXkoKTsKCQkkcXBhcm1zMiA9IGFycmF5KCk7CgkJJHdoZXJlID0gYXJyYXkoKTsKCQkkcXVlcnkgPSAnJzsKCgkJaWYoIGlzX2FycmF5KCRib3VuZGluZ19ib3gpICkKCQkgIHsKCQkJLy8gY2FsY3VsYXRlIGEgZGlzdGFuY2UgZm9yIHVzIHRvby4KCQkJJHF1ZXJ5IC49ICdTRUxFQ1QgYy4qLCggMzk1OSAqIGFjb3MoIGNvcyggcmFkaWFucyg/KSApIAogICAgICAgICAgICAgICAgICAgICAgICogY29zKCByYWRpYW5zKCBjLmxhdGl0dWRlICkgKSAKICAgICAgICAgICAgICAgICAgICAgICAqIGNvcyggcmFkaWFucyggYy5sb25naXR1ZGUgKSAtIHJhZGlhbnMoPykgKSAKICAgICAgICAgICAgICAgICAgICAgICArIHNpbiggcmFkaWFucyg/KSApIAogICAgICAgICAgICAgICAgICAgICAgICogc2luKCByYWRpYW5zKCBjLmxhdGl0dWRlICkgKSApICkgQVMgZGlzdGFuY2UKICAgICAgICAgICAgICAgICAgICAgICBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfY29tcGRpcl9jb21wYW5pZXMgYyc7CgkJCSRxcGFybXMxW10gPSAkbGF0aXR1ZGU7CgkJCSRxcGFybXMxW10gPSAkbG9uZ2l0dWRlOwoJCQkkcXBhcm1zMVtdID0gJGxhdGl0dWRlOwoJCSAgfQogICAgICAgIGVsc2UKCQkgIHsgCgkJCSRxdWVyeSA9ICdTRUxFQ1QgYy4qIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9jb21wZGlyX2NvbXBhbmllcyBjJzsKCQkgIH0KCQkkcXVlcnkyID0gJ1NFTEVDVCBjb3VudCgqKSBBUyBjb3VudCBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfY29tcGRpcl9jb21wYW5pZXMgYyc7CgkJCgkJJHdoZXJlW10gPSAnKGMuc3RhdHVzID0gPyknOwoJCSRxcGFybXMxW10gPSAncHVibGlzaGVkJzsKCQkkcXBhcm1zMltdID0gJ3B1Ymxpc2hlZCc7CgoKCQlpZiggJHNlYXJjaF9hZGRyZXNzICYmICFlbXB0eSgkcG9zdGFsKSApCgkJICB7CgkJCSR0cG9zdGFsID0gJHBvc3RhbDsKCQkJaWYoICRwb3N0YWxfY2hhcnMgPiAwICkKCQkJICB7CgkJCQkkdHBvc3RhbCA9IHN1YnN0cigkcG9zdGFsLDAsJHBvc3RhbF9jaGFycyk7CgkJCSAgfQoJCQkvLyBzZWFyY2hpbmcgYWRkcmVzc2VzCgkJCSR0bXAgPSBhcnJheSgpOwoJCQkkdG1wW10gPSAnKGMuYWRkcmVzcyBMSUtFID8pJzsKCQkJJHFwYXJtczFbXSA9ICclJy4kdHBvc3RhbC4nJSc7CgkJCSRxcGFybXMyW10gPSAnJScuJHRwb3N0YWwuJyUnOwoKCQkJaWYoIGlzX2FycmF5KCRib3VuZGluZ19ib3gpICkKCQkJICB7CgkJCQkkdG1wW10gPSAnKGMubGF0aXR1ZGUgQkVUV0VFTiA/IEFORCA/KSBBTkQgKGMubG9uZ2l0dWRlIEJFVFdFRU4gPyBBTkQgPyknOwoJCQkJJHFwYXJtczFbXSA9ICRib3VuZGluZ19ib3hbMF07CgkJCQkkcXBhcm1zMVtdID0gJGJvdW5kaW5nX2JveFsxXTsKCQkJCSRxcGFybXMxW10gPSAkYm91bmRpbmdfYm94WzJdOwoJCQkJJHFwYXJtczFbXSA9ICRib3VuZGluZ19ib3hbM107CgkJCQkkcXBhcm1zMltdID0gJGJvdW5kaW5nX2JveFswXTsKCQkJCSRxcGFybXMyW10gPSAkYm91bmRpbmdfYm94WzFdOwoJCQkJJHFwYXJtczJbXSA9ICRib3VuZGluZ19ib3hbMl07CgkJCQkkcXBhcm1zMltdID0gJGJvdW5kaW5nX2JveFszXTsKCQkJICB9CgoJCQkkd2hlcmVbXSA9ICcoJyAuIGltcGxvZGUoJyBPUiAnLCR0bXApIC4nKSc7CgkJICB9CgkJZWxzZQoJCSAgewoJCQlpZiggaXNfYXJyYXkoJGJvdW5kaW5nX2JveCkgKQoJCQkgIHsKCQkJCSR3aGVyZVtdID0gJyhjLmxhdGl0dWRlIEJFVFdFRU4gPyBBTkQgPykgQU5EIChjLmxvbmdpdHVkZSBCRVRXRUVOID8gQU5EID8pJzsKCQkJCSRxcGFybXMxW10gPSAkYm91bmRpbmdfYm94WzBdOwoJCQkJJHFwYXJtczFbXSA9ICRib3VuZGluZ19ib3hbMV07CgkJCQkkcXBhcm1zMVtdID0gJGJvdW5kaW5nX2JveFsyXTsKCQkJCSRxcGFybXMxW10gPSAkYm91bmRpbmdfYm94WzNdOwoJCQkJJHFwYXJtczJbXSA9ICRib3VuZGluZ19ib3hbMF07CgkJCQkkcXBhcm1zMltdID0gJGJvdW5kaW5nX2JveFsxXTsKCQkJCSRxcGFybXMyW10gPSAkYm91bmRpbmdfYm94WzJdOwoJCQkJJHFwYXJtczJbXSA9ICRib3VuZGluZ19ib3hbM107CgkJCSAgfQoJCSAgfQoJCWlmKCAhZW1wdHkoJGNvbXBhbnlfbmFtZSkgKQoJCSAgewoJCQlzd2l0Y2goICRuYW1lX3R5cGUgKQoJCQkgIHsKCQkJICBjYXNlICdleGFjdCc6CgkJCQkkd2hlcmVbXSA9ICcoYy5jb21wYW55X25hbWUgPSA/KSc7CgkJCQkkcXBhcm1zMVtdID0gJGNvbXBhbnlfbmFtZTsKCQkJCSRxcGFybXMyW10gPSAkY29tcGFueV9uYW1lOwoJCQkJYnJlYWs7CgkJCSAgY2FzZSAnbGlrZSc6CgkJCQkkcXBhcm1zMVtdID0gJyUnLiRjb21wYW55X25hbWUuJyUnOwoJCQkJJHFwYXJtczJbXSA9ICclJy4kY29tcGFueV9uYW1lLiclJzsKCQkJCSR3aGVyZVtdID0gJyhjLmNvbXBhbnlfbmFtZSBMSUtFID8pJzsKCQkJICB9CgkJICB9CgkJaWYoICRoaWVyYXJjaHkgIT0gJycgKQoJCSAgewoJCQkvLyBkb2luZyBoaWVyYXJjaHkgc2VhcmNoLgoJCQkkc3RyID0gJyBMRUZUIE9VVEVSIEpPSU4gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9jb21wZGlyX2hpZXIgY2gKICAgICAgICAgICAgICAgICAgT04gY2guaWQgPSBjLmhpZXJfaWQnOwoJCQkkcXVlcnkgLj0gJHN0cjsKCQkJJHF1ZXJ5MiAuPSAkc3RyOwoJCQkkaGllcmFyY2h5ID0gY21zX2h0bWxfZW50aXR5X2RlY29kZSh0cmltKCRoaWVyYXJjaHkpKTsKCQkJJGhpZXJhcmNoeSA9IHRyaW0oJGhpZXJhcmNoeSk7CgkJCSRoaWVyYXJjaHkgPSB0cmltKHN0cl9yZXBsYWNlKCInIiwnXycsJGhpZXJhcmNoeSkpOwoJCQlpZiAoc3RycG9zKCRoaWVyYXJjaHksICd8JykgIT09IEZBTFNFIHx8IHN0cnBvcygkaGllcmFyY2h5LCAnKicpICE9PSBGQUxTRSkKCQkJICB7CgkJCQkvLyB3aWxkY2FyZHMKCQkJCSRoaWVyYXJjaHkgPSB0cmltKHN0cl9yZXBsYWNlKCcqJywnJScsJGhpZXJhcmNoeSkpOwoJCQkJJHdoZXJlW10gPSAidXBwZXIoY2gubG9uZ19uYW1lKSBMSUtFIHVwcGVyKD8pIjsKCQkJICB9CgkJCWVsc2UKCQkJICB7CgkJCQkvLyBoYXJkIGNvZGVkIGhpZXJhcmNoeSBuYW1lCgkJCQkkd2hlcmVbXSA9ICdjaC5uYW1lID0gPyc7CgkJCSAgfQoJCQkkcXBhcm1zMVtdID0gJGhpZXJhcmNoeTsKCQkJJHFwYXJtczJbXSA9ICRoaWVyYXJjaHk7CgkJICB9CgkJaWYoIGlzX2FycmF5KCR1c2VfY2F0ZWdvcmllcykgJiYgY291bnQoJHVzZV9jYXRlZ29yaWVzKSApCgkJICB7CgkJCSRzdHIgPSAiIElOTkVSIEpPSU4gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9jb21wZGlyX2NvbXBhbnlfY2F0ZWdvcmllcyBjYyBPTiBjYy5jb21wYW55X2lkID0gYy5pZCI7CgkJCSRxdWVyeSAuPSAkc3RyOwoJCQkkcXVlcnkyIC49ICRzdHI7CgkJCSR3aGVyZVtdID0gJ2NjLmNhdGVnb3J5X2lkIElOICgnLmltcGxvZGUoJywnLCR1c2VfY2F0ZWdvcmllcykuJyknOwoJCSAgfQoKCQkvLwoJCS8vIGFzc2VtYmx5CgkJLy8KCQlpZiggY291bnQoJHdoZXJlKSApCgkJICB7CgkJCSRxdWVyeSA9ICRxdWVyeSAuICcgV0hFUkUgJyAuIGltcGxvZGUoJyBBTkQgJywkd2hlcmUgKTsKCQkJJHF1ZXJ5MiA9ICRxdWVyeTIgLiAnIFdIRVJFICcgLiBpbXBsb2RlKCcgQU5EICcsJHdoZXJlICk7CgkJICB9CgkJJHF1ZXJ5IC49ICcgT1JERVIgQlkgJy4kc29ydGJ5LicgJy4kc29ydG9yZGVyOwoKCQkvLwoJCS8vIG1vcmUgc2V0dXAKCQkvLwoJCSRzdGFydGVsZW1lbnQgPSAoJHBhZ2UtMSkqJHBhZ2VsaW1pdDsKCgkJLy8KCQkvLyBFeGVjdXRpb24KCQkvLwoJCSRjb3VudCA9ICRkYi0+R2V0T25lKCRxdWVyeTIsJHFwYXJtczIpOwoJCWlmKCAkY291bnQgKQoJCSAgewoJCQkkZGJyID0gJGRiLT5TZWxlY3RMaW1pdCgkcXVlcnksJHBhZ2VsaW1pdCwkc3RhcnRlbGVtZW50LCRxcGFybXMxKTsKCQkJaWYoICEkZGJyICkKCQkJICB7CgkJCQllY2hvICdGQVRBTCBFUlJPUjxici8+JzsKCQkJCWVjaG8gJGRiLT5FcnJvck1zZygpLic8YnIvPic7CgkJCQllY2hvICRkYi0+c3FsOwoJCQkJcmV0dXJuOwoJCQkgIH0KCQkKCQkJLy8gZGV0ZXJtaW5lIG51bWJlciBvZiBwYWdlcwoJCQkkbnVtcGFnZXMgPSAoaW50KSgkY291bnQgLyAkcGFnZWxpbWl0KTsKCQkJaWYoICRjb3VudCAlICRwYWdlbGltaXQgIT0gMCApICRudW1wYWdlcysrOwoJCQoJCQkvLwoJCQkvLyBub3cgYnVpbGQgdGhlIG9iamVjdCBsaXN0LgoJCQkvLwoJCQkkaWRsaXN0ID0gYXJyYXkoKTsKCQkJd2hpbGUoICRkYnIgJiYgJHJvdyA9ICRkYnItPkZldGNoUm93KCkgKQoJCQkgIHsKCQkJCSRpZGxpc3RbXSA9ICRyb3dbJ2lkJ107CgkJCQkvLyRwcmV0dHl1cmwgPSBzcHJpbnRmKCR1cmxmbXQsJHJvd1snaWQnXSk7CgkJCQoJCQkJJG9uZXJvdyA9IG5ldyBzdGRDbGFzczsKCQkJCWZvcmVhY2goICRyb3cgYXMgJGtleSA9PiAkdmFsdWUgKQoJCQkJICB7CgkJCQkJJG9uZXJvdy0+JGtleSA9ICR2YWx1ZTsKCQkJCSAgfQogCQkJCWlmKCAkdW5pdHMgPT0gJ21pbGVzJyAmJiAkb25lcm93LT5kaXN0YW5jZSApCgkJCQkgIHsKIAkJCQkJJG9uZXJvdy0+ZGlzdGFuY2UgKj0gMS8wLjYyMTM3MTE5MjsKIAkJCQkgIH0KCQkJCgkJCQkkcGFybXMgPSBhcnJheSgpOwoJCQkJJHBhcmFtc1snY29tcGFueWlkJ10gPSAkcm93WydpZCddOwoJCQkJaWYoIGlzc2V0KCRwYXJhbXNbJ2RldGFpbHRlbXBsYXRlJ10pICkKCQkJCSAgewoJCQkJCSRwYXJtc1snZGV0YWlsdGVtcGxhdGUnXSA9ICRwYXJhbXNbJ2RldGFpbHRlbXBsYXRlJ107CgkJCQkgIH0KCQkJCgkJCQkkdXJsID0gImNvbXBhbmllcy97JHJvd1snaWQnXX0veyRyZXR1cm5pZH0vIi5tdW5nZV9zdHJpbmdfdG9fdXJsKCRyb3dbJ2NvbXBhbnlfbmFtZSddKTsKCQkJCSRvbmVyb3ctPmRldGFpbF91cmwgPSAkdGhpcy0+Q3JlYXRlVVJMKCRpZCwnZGV0YWlscycsJGRldGFpbHBhZ2UsJHBhcm1zLGZhbHNlLCR1cmwpOwoJCQkJJG9uZXJvdy0+cGljdHVyZV9wYXRoID0gJGNvbmZpZ1sncm9vdF91cmwnXS4nL3VwbG9hZHMvY29tcGFueWRpcmVjdG9yeS9pZCcuJHJvd1snaWQnXS4nLycuJHJvd1sncGljdHVyZV9sb2NhdGlvbiddOwoJCQkJJG9uZXJvdy0+bG9nb19wYXRoID0gJGNvbmZpZ1sncm9vdF91cmwnXSAuICcvdXBsb2Fkcy9jb21wYW55ZGlyZWN0b3J5L2lkJy4kcm93WydpZCddLicvJy4kcm93Wydsb2dvX2xvY2F0aW9uJ107CgkJCQoJCQkJLy8gZ2V0IHRoZSBjdXN0b20gZmllbGRzCgkJCQkkZmllbGRkZWZzID0gJHRoaXMtPkdldEZpZWxkRGVmc0ZvckNvbXBhbnkoJHJvd1snaWQnXSk7CgkJCQkkZmllbGRhcnJheSA9IGFycmF5KCk7CgkJCQkkb25lcm93LT5jdXN0b21maWVsZHNjb3VudCA9IGNvdW50KCRmaWVsZGRlZnMpOwoJCQkJJG9uZXJvdy0+Y3VzdG9tZmllbGRzYnluYW1lID0gYXJyYXkoKTsKCQkJCWlmICgkb25lcm93LT5jdXN0b21maWVsZHNjb3VudCA+IDApCgkJCQkgIHsKCQkJCQlmb3JlYWNoICgkZmllbGRkZWZzIGFzICRmaWVsZGRlZikKCQkJCQkgIHsKCQkJCQkJJGZpZWxkID0gbmV3IHN0ZENsYXNzKCk7CgkJCQkJCSRmaWVsZC0+aWQgPSAkZmllbGRkZWYtPmlkOwoJCQkJCQkkZmllbGQtPm5hbWUgPSAkZmllbGRkZWYtPm5hbWU7CgkJCQkJCSRmaWVsZC0+dmFsdWUgPSAkZmllbGRkZWYtPnZhbHVlOwoJCQkJCQkkZmllbGRhcnJheVskZmllbGQtPmlkXSA9ICRmaWVsZDsKCQkJCQkJJG9uZXJvdy0+Y3VzdG9tZmllbGRzYnluYW1lWyRmaWVsZGRlZi0+bmFtZV0gPSAkZmllbGRkZWYtPnZhbHVlOwoJCQkJCSAgfQoJCQkJCSRvbmVyb3ctPmN1c3RvbWZpZWxkcyA9ICRmaWVsZGFycmF5OwoJCQkJICB9CgkJCQoJCQkJJGVudHJ5YXJyYXlbXSA9ICRvbmVyb3c7CgkJCSAgfSAvLyB3aGlsZQoKCQkJLy8gdXBkYXRlIHNlYXJjaCBzdGF0cwoJCQlpZiggY291bnQoJGlkbGlzdCkgJiYgJHRoaXMtPkdldFByZWZlcmVuY2UoJ2NvbGxlY3RzdGF0cycsMCkgKQoJCQkgIHsKCQkJCSRub3cgPSAkZGItPkRiVGltZVN0YW1wKHRpbWUoKSk7CgkJCQkkcXVlcnkgPSAnSU5TRVJUIElOVE8gJy5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9jb21wZGlyX3NlYXJjaHN0YXRzCiAgICAgICAgICAgICAgICAgICAgICAgIChjb21wYW55X2lkLGRhdGVfc2VhcmNoZWQscG9zdGNvZGUpIFZBTFVFUyAoPywkbm93LD8pIjsKCQkJCWZvcmVhY2goICRpZGxpc3QgYXMgJG9uZSApCgkJCQkgIHsKCQkJCQkkZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KCRvbmUsJHBvc3RhbCkpOwoJCQkJICB9CgkJCSAgfQoJCSAgfSAvLyBjb3VudAoJICB9IC8vIG5vIGVycm9ycwogIH0gLy8gc3VibWl0CgojCiMgR2l2ZSBFdmVyeXRoaW5nIHRvIFNtYXJ0eQojCmlmKCBjb3VudCgkZXJyb3JzKSApCiAgewogICAgJHNtYXJ0eS0+YXNzaWduKCdlcnJvcnMnLCRlcnJvcnMpOwogIH0KaWYoIGNvdW50KCRlbnRyeWFycmF5KSApCiAgewogICAgJHNtYXJ0eS0+YXNzaWduKCdpdGVtcycsJGVudHJ5YXJyYXkpOwogIH0KZWxzZQogIHsKICAgICRzbWFydHktPmFzc2lnbignbWVzc2FnZScsJHRoaXMtPkxhbmcoJ2Vycm9yX25vcmVzdWx0c2ZvdW5kJykpOwogIH0KaWYoIGlzX2FycmF5KCRwb3N0YWxfZGF0YSkgKQogIHsKICAgICRzbWFydHktPmFzc2lnbigncG9zdGFsX2RhdGEnLCRwb3N0YWxfZGF0YSk7CiAgfQokc21hcnR5LT5hc3NpZ24oJ2l0ZW1jb3VudCcsY291bnQoJGVudHJ5YXJyYXkpKTsKJHNtYXJ0eS0+YXNzaWduKCdpdGVtY291bnQnLCBjb3VudCgkZW50cnlhcnJheSkpOwokc21hcnR5LT5hc3NpZ24oJ3BhZ2V0ZXh0JywkdGhpcy0+TGFuZygncGFnZScpKTsKJHNtYXJ0eS0+YXNzaWduKCdvZnRleHQnLCR0aGlzLT5MYW5nKCdvZicpKTsKJHNtYXJ0eS0+YXNzaWduKCdwYWdlY291bnQnLCRudW1wYWdlcyk7CiRzbWFydHktPmFzc2lnbignY3VycGFnZScsJHBhZ2UpOwppZiggJG51bXBhZ2VzICkKICB7CiAgICBpZiggJHBhZ2UgPT0gMSkKICAgICAgewoJJHNtYXJ0eS0+YXNzaWduKCdmaXJzdGxpbmsnLCR0aGlzLT5MYW5nKCdmaXJzdHBhZ2UnKSk7Cgkkc21hcnR5LT5hc3NpZ24oJ3ByZXZsaW5rJywkdGhpcy0+TGFuZygncHJldnBhZ2UnKSk7CiAgICAgIH0KICAgIGVsc2UKICAgICAgewoJJHBhcm1zID0gJHBhcmFtczsKCSRwYXJtc1sncGFnZSddID0gMTsKCSRzbWFydHktPmFzc2lnbignZmlyc3RsaW5rJywkdGhpcy0+Q3JlYXRlTGluaygkaWQsJ2RlZmF1bHQnLCRyZXR1cm5pZCwKCQkJCQkJICAgICAgJHRoaXMtPkxhbmcoJ2ZpcnN0cGFnZScpLAoJCQkJCQkgICAgICAkcGFybXMpKTsKCSRwYXJtc1sncGFnZSddID0gJHBhZ2UgLSAxOwoJJHNtYXJ0eS0+YXNzaWduKCdwcmV2bGluaycsJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCdkZWZhdWx0JywkcmV0dXJuaWQsCgkJCQkJCSAgICAgJHRoaXMtPkxhbmcoJ3ByZXZwYWdlJyksCgkJCQkJCSAgICAgJHBhcm1zKSk7CiAgICAgIH0KICAgIGlmKCAkcGFnZSA9PSAkbnVtcGFnZXMgKQogICAgICB7Cgkkc21hcnR5LT5hc3NpZ24oJ2xhc3RsaW5rJywkdGhpcy0+TGFuZygnbGFzdHBhZ2UnKSk7Cgkkc21hcnR5LT5hc3NpZ24oJ25leHRsaW5rJywkdGhpcy0+TGFuZygnbmV4dHBhZ2UnKSk7CiAgICAgIH0KICAgIGVsc2UKICAgICAgewoJJHBhcm1zID0gJHBhcmFtczsKCSRwYXJtc1sncGFnZSddID0gJG51bXBhZ2VzOwoJJHNtYXJ0eS0+YXNzaWduKCdsYXN0bGluaycsJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCdkZWZhdWx0JywkcmV0dXJuaWQsCgkJCQkJCSAgICAgJHRoaXMtPkxhbmcoJ2xhc3RwYWdlJyksCgkJCQkJCSAgICAgJHBhcm1zKSk7CgkkcGFybXNbJ3BhZ2UnXSA9ICRwYWdlICsgMTsKCSRzbWFydHktPmFzc2lnbignbmV4dGxpbmsnLCR0aGlzLT5DcmVhdGVMaW5rKCRpZCwnZGVmYXVsdCcsJHJldHVybmlkLAoJCQkJCQkgICAgICR0aGlzLT5MYW5nKCduZXh0cGFnZScpLAoJCQkJCQkgICAgICRwYXJtcykpOwogICAgICB9CiAgfQoKZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlRnJvbURhdGFiYXNlKCdzdW1tYXJ5XycuJHN1bW1hcnl0ZW1wbGF0ZSk7CgojCiMgRU9GCiMgCj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/action.editcategory.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmICghaXNzZXQoJGdDbXMpKSBleGl0OwppZiAoISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBDb21wYW55IERpcmVjdG9yeScpKQp7CgllY2hvICR0aGlzLT5TaG93RXJyb3JzKCR0aGlzLT5MYW5nKCduZWVkcGVybWlzc2lvbicsIGFycmF5KCdNb2RpZnkgQ29tcGFueSBEaXJlY3RvcnknKSkpOwoJcmV0dXJuOwp9CgppZiAoaXNzZXQoJHBhcmFtc1snY2FuY2VsJ10pKQp7CiAgJHBhcmFtcyA9IGFycmF5KCd0YWJfbWVzc2FnZSc9PiAnY2F0ZWdvcnl1cGRhdGVkJywgJ2FjdGl2ZV90YWInID0+ICdjYXRlZ29yaWVzJyk7CiAgJHRoaXMtPlJlZGlyZWN0KCRpZCwgJ2FkbWluX3NldHRpbmdzJywgJHJldHVybmlkLCRwYXJhbXMpOwp9CgokY29uZmlnID0gY21zbXMoKS0+R2V0Q29uZmlnKCk7CiR1c2VyaWQgPSBnZXRfdXNlcmlkKCk7CiR0bXBkaXIgPSAnJzsKJGltYWdlID0gJyc7CiRkZXNjcmlwdGlvbiA9ICcnOwokZGVsaW1hZ2UgPSAwOwokY2F0aWQgPSAnJzsKJG5hbWUgPSAnJzsKJGV4dHJhMSA9ICcnOwokZXh0cmEyID0gJyc7CiRleHRyYTMgPSAnJzsKCmlmICghaXNzZXQoJHBhcmFtc1snY2F0aWQnXSkpCnsKICBlY2hvICR0aGlzLT5TaG93RXJyb3JzKCR0aGlzLT5MYW5nKCdlcnJvcl9taXNzaW5ncGFyYW0nKSk7CiAgcmV0dXJuOwp9CgokY2F0aWQgPSAoaW50KSRwYXJhbXNbJ2NhdGlkJ107CiRjYXRkaXIgPSBjbXNfam9pbl9wYXRoKCRjb25maWdbJ3VwbG9hZHNfcGF0aCddLCdjb21wYW55ZGlyZWN0b3J5JywnY2F0Jy4kY2F0aWQpOwoKLy8gbG9hZCB0aGUgaW5mby4KJHF1ZXJ5ID0gJ1NFTEVDVCAqIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9jb21wZGlyX2NhdGVnb3JpZXMgV0hFUkUgaWQgPSA/JzsKJHJvdyA9ICRkYi0+R2V0Um93KCRxdWVyeSwgYXJyYXkoJGNhdGlkKSk7CmlmICgkcm93KQogIHsKCSRuYW1lID0gJHJvd1snbmFtZSddOwoJJGltYWdlID0gJHJvd1snaW1hZ2UnXTsKCSRkZXNjcmlwdGlvbiA9ICRyb3dbJ2Rlc2NyaXB0aW9uJ107CgkkZXh0cmExID0gJHJvd1snZXh0cmExJ107CgkkZXh0cmEyID0gJHJvd1snZXh0cmEyJ107CgkkZXh0cmEzID0gJHJvd1snZXh0cmEzJ107CiAgfQoKaWYgKGlzc2V0KCRwYXJhbXNbJ3N1Ym1pdCddKSkKewogICRlcnJvciA9ICcnOwoKICAvLyBnZXQgdGhlIGluZm8KICBpZiAoaXNzZXQoJHBhcmFtc1snbmFtZSddKSkKCXsKCSAgJG5hbWUgPSB0cmltKCRwYXJhbXNbJ25hbWUnXSk7Cgl9CgogIGlmKCBpc3NldCgkcGFyYW1zWydkZXNjcmlwdGlvbiddKSApCgl7CgkgICRkZXNjcmlwdGlvbiA9ICRwYXJhbXNbJ2Rlc2NyaXB0aW9uJ107Cgl9CgogIGlmKCBpc3NldCgkcGFyYW1zWydkZWxpbWFnZSddKSApCgl7CgkgICRkZWxpbWFnZSA9IDE7Cgl9CgogIGlmIChpc3NldCgkcGFyYW1zWydleHRyYTEnXSkpCgl7CgkgICRleHRyYTEgPSAkcGFyYW1zWydleHRyYTEnXTsKCX0KCiAgaWYgKGlzc2V0KCRwYXJhbXNbJ2V4dHJhMiddKSkKCXsKCSAgJGV4dHJhMiA9ICRwYXJhbXNbJ2V4dHJhMiddOwoJfQoKICBpZiAoaXNzZXQoJHBhcmFtc1snZXh0cmEzJ10pKQoJewoJICAkZXh0cmEzID0gJHBhcmFtc1snZXh0cmEzJ107Cgl9CgogIC8vIHZhbGlkYXRlIHRoZSBpbmZvCiAgaWYgKCRuYW1lID09ICcnKQoJewoJICAkZXJyb3IgPSAkdGhpcy0+TGFuZygnbm9uYW1lZ2l2ZW4nKTsKCX0KICBpZiggJGVycm9yID09ICcnICYmIHByZWdfbWF0Y2goJy9bXlx3IF0vJywkbmFtZSkgKQoJewoJICAkZXJyb3IgPSAkdGhpcy0+TGFuZygnYmFkbmFtZWdpdmVuJyk7Cgl9CgoKICAvLyBoYW5kbGUgdGhlIGluZm8KICBpZiggISRlcnJvciAmJiAkZGVsaW1hZ2UgPT0gMSkKCXsKCSAgLy8gZGVsZXRlIGV4aXN0aW5nIGltYWdlIChhbmQgZGlyKQoJICAvLyB0aGlzIHdvdWxkIGhhdmUgdG8gY2hhbmdlIGlmIG1vcmUgdGhhbiBvbmUgaW1hZ2Ugd2FzIGFsbG93ZWQuCgkgIGNnZV9kaXI6OnJlY3Vyc2l2ZV9ybWRpcigkY2F0ZGlyKTsKCSAgJGltYWdlID0gJyc7Cgl9CgogIGlmKCAhJGVycm9yICkKCXsKCSAgLy8gaGFuZGxlIGZpbGUgdXBsb2FkIChpZiBhbnkpICh0byBhIHRlbXBvcmFyeSBkaXJlY3RvcnkpCgkgICR0bXBkaXIgPSBjbXNfam9pbl9wYXRoKCRjb25maWdbJ3VwbG9hZHNfcGF0aCddLCdjb21wYW55ZGlyZWN0b3J5JywndScuJHVzZXJpZCk7CgkgICR1cGxvYWRlciA9IGNnZV9zZXR1cDo6Z2V0X3VwbG9hZGVyKCRpZCwkdG1wZGlyKTsKCSAgJHRtcCA9ICR1cGxvYWRlci0+Y2hlY2tfdXBsb2FkKCdpbWFnZScsRkFMU0UsRkFMU0UpOwoJICBpZiggISR0bXAgJiYgJHVwbG9hZGVyLT5nZXRfZXJyb3IoKSAhPSBjZ19maWxldXBsb2FkOjpOT0ZJTEUgKQoJCXsKCQkgICRlcnJvciA9ICR0aGlzLT5HZXRVcGxvYWRFcnJvck1lc3NhZ2UoJHVwbG9hZGVyLT5nZXRfZXJyb3IoKSk7CgkJfQoJICBlbHNlCgkJewoJCSAgY2dlX2Rpcjo6bWtkaXJyKCR0bXBkaXIpOwoJCSAgJGltYWdlID0gJHVwbG9hZGVyLT5oYW5kbGVfdXBsb2FkKCdpbWFnZScpOwoJCSAgaWYoICEkaW1hZ2UgJiYgJHVwbG9hZGVyLT5nZXRfZXJyb3IoKSAhPSBjZ19maWxldXBsb2FkOjpOT0ZJTEUgKQoJCQl7CgkJCSAgJGVycm9yID0gJHRoaXMtPkdldFVwbG9hZEVycm9yTWVzc2FnZSgkdXBsb2FkZXItPmdldF9lcnJvcigpKTsKCQkJfQoJCSAgaWYoICRpbWFnZSA9PT0gMCApICRpbWFnZSA9ICcnOwoJCX0KCX0KCiAgaWYoICEkZXJyb3IgKQoJewoJICAvLyBkYXRhYmFzZSB3b3JrLgoJICAkcXVlcnkgPSAnVVBEQVRFICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfY29tcGRpcl9jYXRlZ29yaWVzIAogICAgICAgICAgICAgICAgU0VUIG5hbWUgPSA/LCBkZXNjcmlwdGlvbiA9ID8sIGltYWdlID0gPywgZXh0cmExID0gPywgZXh0cmEyID0gPywgZXh0cmEzID0gPywgbW9kaWZpZWRfZGF0ZSA9IE5PVygpCiAgICAgICAgICAgICAgICBXSEVSRSBpZCA9ID8nOwoJICAkZGJyID0gJGRiLT5FeGVjdXRlKCRxdWVyeSwgYXJyYXkoJG5hbWUsICRkZXNjcmlwdGlvbiwgJGltYWdlLCAkZXh0cmExLCAkZXh0cmEyLCAkZXh0cmEzLCAkY2F0aWQpKTsKCSAgaWYoICEkZGJyICkKCQl7CgkJICAkZXJyb3IgPSAkZGItPkVycm9yTXNnKCkuJyAtLSAnLiRkYi0+c3FsOwoJCX0KCX0KCiAgaWYoICEkZXJyb3IgJiYgJGltYWdlICYmICR0bXBkaXIgJiYgaXNfZGlyKCR0bXBkaXIpICkKCXsKCSAgY2dlX2Rpcjo6cmVjdXJzaXZlX3JtZGlyKCRjYXRkaXIpOyAvLyBudWtlIGFsbCBmaWxlcy4uLiBqdXN0IHRvIGJlIHNhZmUsIHdlIG9ubHkgYWxsb3cgb25lIGF0bS4KCSAgY2dlX2Rpcjo6bWtkaXJyKCRjYXRkaXIpOwoKCSAgJGZpbGVzID0gZ2xvYigkdG1wZGlyLicvKi4qJyk7CgkgIGZvcmVhY2goICRmaWxlcyBhcyAkZmlsZSApCgkJewoJCSAgJGJuID0gYmFzZW5hbWUoJGZpbGUpOwoJCSAgQHJlbmFtZSgkZmlsZSxjbXNfam9pbl9wYXRoKCRjYXRkaXIsJGJuKSk7CgkJfQoJICBjZ2VfZGlyOjpyZWN1cnNpdmVfcm1kaXIoJHRtcGRpcik7CgkgICR0bXBkaXIgPSAnJzsKCX0KCiAgaWYoICEkZXJyb3IgKQoJewoJICAvLyBubyBlcnJvcnMsIGdldCBvdXRhIGhlcmUuCgkgICRwYXJhbXMgPSBhcnJheSgndGFiX21lc3NhZ2UnPT4gJ2NhdGVnb3J5dXBkYXRlZCcsICdhY3RpdmVfdGFiJyA9PiAnY2F0ZWdvcmllcycpOwoJICAkdGhpcy0+UmVkaXJlY3QoJGlkLCAnYWRtaW5fc2V0dGluZ3MnLCAkcmV0dXJuaWQsICRwYXJhbXMpOwkJCQoJfQoKICAvLyBkaXNwbGF5IGVycm9ycwogIGlmKCAkdG1wZGlyICYmIGlzX2RpcigkdG1wZGlyKSApCgl7CgkgIGNnZV9kaXI6OnJlY3Vyc2l2ZV9ybWRpcigkdG1wZGlyKTsKCX0KICBlY2hvICR0aGlzLT5TaG93RXJyb3JzKCRlcnJvcik7Cgp9CgovLyBEaXNwbGF5IHRlbXBsYXRlCiRzbWFydHktPmFzc2lnbignc3RhcnRmb3JtJywgJHRoaXMtPkNyZWF0ZUZvcm1TdGFydCgkaWQsICdlZGl0Y2F0ZWdvcnknLCAkcmV0dXJuaWQsJ3Bvc3QnLCdtdWx0aXBhcnQvZm9ybS1kYXRhJykpOwokc21hcnR5LT5hc3NpZ24oJ2VuZGZvcm0nLCAkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbWFnZScsJGltYWdlKTsKJHNtYXJ0eS0+YXNzaWduKCdkZXNjcmlwdGlvbicsJGRlc2NyaXB0aW9uKTsKJHNtYXJ0eS0+YXNzaWduKCduYW1ldGV4dCcsICR0aGlzLT5MYW5nKCduYW1lJykpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0bmFtZScsICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCAnbmFtZScsICRuYW1lLCAyMCwgMjU1KSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRleHRyYTEnLCAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwgJ2V4dHJhMScsICRleHRyYTEsIDIwLCAyNTUpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dGV4dHJhMicsICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCAnZXh0cmEyJywgJGV4dHJhMiwgMjAsIDI1NSkpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0ZXh0cmEzJywgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsICdleHRyYTMnLCAkZXh0cmEzLCAyMCwgMjU1KSk7CiRzbWFydHktPmFzc2lnbignaGlkZGVuJywgJHRoaXMtPkNyZWF0ZUlucHV0SGlkZGVuKCRpZCwgJ2NhdGlkJywgJGNhdGlkKSk7CiRzbWFydHktPmFzc2lnbignc3VibWl0JywgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwgJ3N1Ym1pdCcsIGxhbmcoJ3N1Ym1pdCcpKSk7CiRzbWFydHktPmFzc2lnbignY2FuY2VsJywgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwgJ2NhbmNlbCcsIGxhbmcoJ2NhbmNlbCcpKSk7CgplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ2VkaXRjYXRlZ29yeS50cGwnKTsKPz4K]]></data>
	</file>
	<file>
	  <filename>/action.editcompany.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmICghaXNzZXQoJGdDbXMpKSBleGl0OwoKaWYgKCEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdNb2RpZnkgQ29tcGFueSBEaXJlY3RvcnknKSkKewoJZWNobyAkdGhpcy0+U2hvd0Vycm9ycygkdGhpcy0+TGFuZygnbmVlZHBlcm1pc3Npb24nLCBhcnJheSgnTW9kaWZ5IENvbXBhbnkgRGlyZWN0b3J5JykpKTsKCXJldHVybjsKfQoKaWYgKGlzc2V0KCRwYXJhbXNbJ2NhbmNlbCddKSkKewoJJHRoaXMtPlJlZGlyZWN0KCRpZCwgJ2RlZmF1bHRhZG1pbicsICRyZXR1cm5pZCk7Cn0KCiRjb21waWQgPSAnJzsKaWYgKGlzc2V0KCRwYXJhbXNbJ2NvbXBpZCddKSkKewoJJGNvbXBpZCA9ICRwYXJhbXNbJ2NvbXBpZCddOwp9CgokY29tcGFueV9uYW1lID0gJyc7CmlmIChpc3NldCgkcGFyYW1zWydjb21wYW55X25hbWUnXSkpCnsKCSRjb21wYW55X25hbWUgPSAkcGFyYW1zWydjb21wYW55X25hbWUnXTsKfQoKJGFkZHJlc3MgPSAnJzsKaWYgKGlzc2V0KCRwYXJhbXNbJ2FkZHJlc3MnXSkpCnsKCSRhZGRyZXNzID0gJHBhcmFtc1snYWRkcmVzcyddOwp9CgokdXJsID0gJyc7CmlmIChpc3NldCgkcGFyYW1zWyd1cmwnXSkpCnsKCSR1cmwgPSAkcGFyYW1zWyd1cmwnXTsKfQoKJGxhdGl0dWRlID0gJyc7CmlmIChpc3NldCgkcGFyYW1zWydsYXRpdHVkZSddKSkKewoJJGxhdGl0dWRlID0gJHBhcmFtc1snbGF0aXR1ZGUnXTsKfQoKJGxvbmdpdHVkZSA9ICcnOwppZiAoaXNzZXQoJHBhcmFtc1snbG9uZ2l0dWRlJ10pKQp7CgkkbG9uZ2l0dWRlID0gJHBhcmFtc1snbG9uZ2l0dWRlJ107Cn0KCiRoaWVycG9zID0gJyc7CmlmIChpc3NldCgkcGFyYW1zWydoaWVycG9zJ10pKQp7CgkkaGllcnBvcyA9ICRwYXJhbXNbJ2hpZXJwb3MnXTsKfQoKJHRlbGVwaG9uZSA9ICcnOwppZiAoaXNzZXQoJHBhcmFtc1sndGVsZXBob25lJ10pKQp7CgkkdGVsZXBob25lID0gJHBhcmFtc1sndGVsZXBob25lJ107Cn0KCiRmYXggPSAnJzsKaWYgKGlzc2V0KCRwYXJhbXNbJ2ZheCddKSkKewoJJGZheCA9ICRwYXJhbXNbJ2ZheCddOwp9CgokY29udGFjdF9lbWFpbCA9ICcnOwppZiAoaXNzZXQoJHBhcmFtc1snY29udGFjdF9lbWFpbCddKSkKewoJJGNvbnRhY3RfZW1haWwgPSAkcGFyYW1zWydjb250YWN0X2VtYWlsJ107Cn0KCiR3ZWJzaXRlID0gJyc7CmlmIChpc3NldCgkcGFyYW1zWyd3ZWJzaXRlJ10pKQp7Cgkkd2Vic2l0ZSA9ICRwYXJhbXNbJ3dlYnNpdGUnXTsKfQoKJGRldGFpbHMgPSAnJzsKaWYgKGlzc2V0KCRwYXJhbXNbJ2RldGFpbHMnXSkpCnsKCSRkZXRhaWxzID0gJHBhcmFtc1snZGV0YWlscyddOwp9Cgokc3RhdHVzID0gJyc7CmlmIChpc3NldCgkcGFyYW1zWydzdGF0dXMnXSkpCnsKCSRzdGF0dXMgPSAkcGFyYW1zWydzdGF0dXMnXTsKfQoKJG93bmVyX2lkID0gLTE7CmlmIChpc3NldCgkcGFyYW1zWydvd25lcl9pZCddKSkKewogICRvd25lcl9pZCA9ICRwYXJhbXNbJ293bmVyX2lkJ107Cn0KCiRvcmlnbmFtZSA9ICcnOwppZiAoaXNzZXQoJHBhcmFtc1snb3JpZ25hbWUnXSkpCnsKCSRvcmlnbmFtZSA9ICRwYXJhbXNbJ29yaWduYW1lJ107Cn0KCiRjYW5fY2FuY2VsID0gMTsKaWYoIGlzc2V0KCRwYXJhbXNbJ25vY2FuY2VsJ10pICkKICB7CiAgICAkY2FuX2NhbmNlbCA9IDA7CiAgfQoKCiRmaWVsZGRlZnMgPSAkdGhpcy0+R2V0RmllbGREZWZzRm9yQ29tcGFueSgkY29tcGlkLHRydWUpOwokZGVzdGRpciA9IGNtc19qb2luX3BhdGgoJGdDbXMtPmNvbmZpZ1sndXBsb2Fkc19wYXRoJ10sJ2NvbXBhbnlkaXJlY3RvcnknLCdpZCcuJGNvbXBpZCk7CgoKZnVuY3Rpb24gaGFuZGxlX2luaXRpYWxfdXBsb2FkKCRpZCwgJGZpZWxkbmFtZSkKewoJZ2xvYmFsICRnQ21zOwoJJGNvbmZpZyA9ICRnQ21zLT5HZXRDb25maWcoKTsKCglpZiAoIWlzX2RpcigkY29uZmlnWyd1cGxvYWRzX3BhdGgnXSAuIERJUkVDVE9SWV9TRVBBUkFUT1IgLiAnY29tcGFueWRpcmVjdG9yeScpKSB7CgkJQG1rZGlyKCRjb25maWdbJ3VwbG9hZHNfcGF0aCddIC4gRElSRUNUT1JZX1NFUEFSQVRPUiAuICdjb21wYW55ZGlyZWN0b3J5Jyk7Cgl9CglpZiAoIWlzX2RpcigkY29uZmlnWyd1cGxvYWRzX3BhdGgnXSAuIERJUkVDVE9SWV9TRVBBUkFUT1IgLiAnY29tcGFueWRpcmVjdG9yeScgLiBESVJFQ1RPUllfU0VQQVJBVE9SIC4gJ3RtcCcpKSB7CgkJQG1rZGlyKCRjb25maWdbJ3VwbG9hZHNfcGF0aCddIC4gRElSRUNUT1JZX1NFUEFSQVRPUiAuICdjb21wYW55ZGlyZWN0b3J5JyAuIERJUkVDVE9SWV9TRVBBUkFUT1IgLiAndG1wJyk7Cgl9CgkKCUBjbXNfbW92ZV91cGxvYWRlZF9maWxlKCRfRklMRVNbJGlkIC4gJGZpZWxkbmFtZV1bJ3RtcF9uYW1lJ10sICRjb25maWdbJ3VwbG9hZHNfcGF0aCddIC4gRElSRUNUT1JZX1NFUEFSQVRPUiAuICdjb21wYW55ZGlyZWN0b3J5JyAuIERJUkVDVE9SWV9TRVBBUkFUT1IgLiAndG1wJyAuIERJUkVDVE9SWV9TRVBBUkFUT1IgLiBiYXNlbmFtZSgkX0ZJTEVTWyRpZCAuICRmaWVsZG5hbWVdWyduYW1lJ10pKTsKCQoJcmV0dXJuIGJhc2VuYW1lKCRfRklMRVNbJGlkIC4gJGZpZWxkbmFtZV1bJ25hbWUnXSk7Cn0KCmZ1bmN0aW9uIGhhbmRsZV90bXBfdXBsb2FkKCRpZCwgJGl0ZW1pZCwgJGZpbGVuYW1lLCAkZmllbGRuYW1lLCAmJGRiKQp7CglnbG9iYWwgJGdDbXM7CgkkY29uZmlnID0gJGdDbXMtPkdldENvbmZpZygpOwoKCWlmICghaXNfZGlyKCRjb25maWdbJ3VwbG9hZHNfcGF0aCddIC4gRElSRUNUT1JZX1NFUEFSQVRPUiAuICdjb21wYW55ZGlyZWN0b3J5JyAuIERJUkVDVE9SWV9TRVBBUkFUT1IgLiAnaWQnIC4gJGl0ZW1pZCkpCgl7CgkJQG1rZGlyKCRjb25maWdbJ3VwbG9hZHNfcGF0aCddIC4gRElSRUNUT1JZX1NFUEFSQVRPUiAuICdjb21wYW55ZGlyZWN0b3J5JyAuIERJUkVDVE9SWV9TRVBBUkFUT1IgLiAnaWQnIC4gJGl0ZW1pZCk7Cgl9CglpZiAoJGZpbGVuYW1lID09ICdkZWxldGVtZScpCgl7CgkJJG9sZGZpbGVuYW1lID0gJGRiLT5HZXRPbmUoJ1NFTEVDVCAnIC4gJGZpZWxkbmFtZSAuICcgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfY29tcGFuaWVzIFdIRVJFIGlkID0gPycsIGFycmF5KCRpdGVtaWQpKTsKCQlpZiAoaXNfZmlsZSgkY29uZmlnWyd1cGxvYWRzX3BhdGgnXSAuIERJUkVDVE9SWV9TRVBBUkFUT1IgLiAnY29tcGFueWRpcmVjdG9yeScgLiBESVJFQ1RPUllfU0VQQVJBVE9SIC4gJ2lkJyAuICRpdGVtaWQgLiBESVJFQ1RPUllfU0VQQVJBVE9SIC4gJG9sZGZpbGVuYW1lKSkKCQl7CgkJCXVubGluaygkY29uZmlnWyd1cGxvYWRzX3BhdGgnXSAuIERJUkVDVE9SWV9TRVBBUkFUT1IgLiAnY29tcGFueWRpcmVjdG9yeScgLiBESVJFQ1RPUllfU0VQQVJBVE9SIC4gJ2lkJyAuICRpdGVtaWQgLiBESVJFQ1RPUllfU0VQQVJBVE9SIC4gJG9sZGZpbGVuYW1lKTsKCQl9CgkJJGRiLT5FeGVjdXRlKCdVUERBVEUgJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9jb21wZGlyX2NvbXBhbmllcyBTRVQgJyAuICRmaWVsZG5hbWUgLiAnID0gPyBXSEVSRSBpZCA9ID8nLCBhcnJheSgnJywgJGl0ZW1pZCkpOwoJfQoJZWxzZSBpZiAoaXNfZmlsZSgkY29uZmlnWyd1cGxvYWRzX3BhdGgnXSAuIERJUkVDVE9SWV9TRVBBUkFUT1IgLiAnY29tcGFueWRpcmVjdG9yeScgLiBESVJFQ1RPUllfU0VQQVJBVE9SIC4gJ3RtcCcgLiBESVJFQ1RPUllfU0VQQVJBVE9SIC4gJGZpbGVuYW1lKSkKCXsKCQkkb2xkZmlsZW5hbWUgPSAkZGItPkdldE9uZSgnU0VMRUNUICcgLiAkZmllbGRuYW1lIC4gJyBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfY29tcGRpcl9jb21wYW5pZXMgV0hFUkUgaWQgPSA/JywgYXJyYXkoJGl0ZW1pZCkpOwoJCWlmIChpc19maWxlKCRjb25maWdbJ3VwbG9hZHNfcGF0aCddIC4gRElSRUNUT1JZX1NFUEFSQVRPUiAuICdjb21wYW55ZGlyZWN0b3J5JyAuIERJUkVDVE9SWV9TRVBBUkFUT1IgLiAnaWQnIC4gJGl0ZW1pZCAuIERJUkVDVE9SWV9TRVBBUkFUT1IgLiAkb2xkZmlsZW5hbWUpKQoJCXsKCQkJdW5saW5rKCRjb25maWdbJ3VwbG9hZHNfcGF0aCddIC4gRElSRUNUT1JZX1NFUEFSQVRPUiAuICdjb21wYW55ZGlyZWN0b3J5JyAuIERJUkVDVE9SWV9TRVBBUkFUT1IgLiAnaWQnIC4gJGl0ZW1pZCAuIERJUkVDVE9SWV9TRVBBUkFUT1IgLiAkb2xkZmlsZW5hbWUpOwoJCX0KCQlAcmVuYW1lKCRjb25maWdbJ3VwbG9hZHNfcGF0aCddIC4gRElSRUNUT1JZX1NFUEFSQVRPUiAuICdjb21wYW55ZGlyZWN0b3J5JyAuIERJUkVDVE9SWV9TRVBBUkFUT1IgLiAndG1wJyAuIERJUkVDVE9SWV9TRVBBUkFUT1IgLiAkZmlsZW5hbWUsICRjb25maWdbJ3VwbG9hZHNfcGF0aCddIC4gRElSRUNUT1JZX1NFUEFSQVRPUiAuICdjb21wYW55ZGlyZWN0b3J5JyAuIERJUkVDVE9SWV9TRVBBUkFUT1IgLiAnaWQnIC4gJGl0ZW1pZCAuIERJUkVDVE9SWV9TRVBBUkFUT1IgLiAkZmlsZW5hbWUpOwoJCSRkYi0+RXhlY3V0ZSgnVVBEQVRFICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfY29tcGRpcl9jb21wYW5pZXMgU0VUICcgLiAkZmllbGRuYW1lIC4gJyA9ID8gV0hFUkUgaWQgPSA/JywgYXJyYXkoJGZpbGVuYW1lLCAkaXRlbWlkKSk7Cgl9Cn0KCiRpbWFnZSA9ICcnOwppZiAoaXNzZXQoJF9GSUxFU1skaWQgLiAnaW1hZ2V1cGxvYWQnXSkgJiYgJF9GSUxFU1skaWQgLiAnaW1hZ2V1cGxvYWQnXVsndG1wX25hbWUnXSAhPSAnJykKewkKCSRpbWFnZSA9IGhhbmRsZV9pbml0aWFsX3VwbG9hZCgkaWQsICdpbWFnZXVwbG9hZCcpOwp9CmVsc2UgaWYgKGlzc2V0KCRwYXJhbXNbJ2RlbGV0ZWltYWdlJ10pKQp7CgkkaW1hZ2UgPSAnZGVsZXRlbWUnOwp9CmVsc2UgaWYgKGlzc2V0KCRwYXJhbXNbJ2ltYWdlY3VycmVudCddKSkKewoJJGltYWdlID0gJHBhcmFtc1snaW1hZ2VjdXJyZW50J107Cn0KCiRsb2dvID0gJyc7CmlmIChpc3NldCgkX0ZJTEVTWyRpZCAuICdsb2dvdXBsb2FkJ10pICYmICRfRklMRVNbJGlkIC4gJ2xvZ291cGxvYWQnXVsndG1wX25hbWUnXSAhPSAnJykKewoJJGxvZ28gPSBoYW5kbGVfaW5pdGlhbF91cGxvYWQoJGlkLCAnbG9nb3VwbG9hZCcpOwp9CmVsc2UgaWYgKGlzc2V0KCRwYXJhbXNbJ2RlbGV0ZWxvZ28nXSkpCnsKCSRsb2dvID0gJ2RlbGV0ZW1lJzsKfQplbHNlIGlmIChpc3NldCgkcGFyYW1zWydsb2dvY3VycmVudCddKSkKewoJJGxvZ28gPSAkcGFyYW1zWydsb2dvY3VycmVudCddOwp9CgokZmllbGRhcnJheSA9IGFycmF5KCk7CgppZiAoaXNzZXQoJHBhcmFtc1snc3VibWl0J10pKQp7CiAgLy8gc3VibWl0IGlzIHByZXNzZWQuCiAgJGVycm9yID0gJyc7CgogIGlmKCAkY29tcGFueV9uYW1lID09ICcnICkKICAgIHsKICAgICAgJGVycm9yID0gJHRoaXMtPkxhbmcoJ25vY29tcGFueW5hbWVnaXZlbicpOwogICAgfQoKICBpZiggJHVybCA9PSAnJyAmJiAkdGhpcy0+R2V0UHJlZmVyZW5jZSgndXJsX3JlcXVpcmVkJywwKSApCgl7CiAgICAgICRlcnJvciA9ICR0aGlzLT5MYW5nKCdlcnJvcl91cmxyZXF1aXJlZCcpOwoJfQoKICBpZiggISRlcnJvciAmJiAkdXJsID09ICcnICYmICR0aGlzLT5HZXRQcmVmZXJlbmNlKCd1cmxfYXV0b2NyZWF0ZScsMCkgKQoJewoJICAkdXJsID0gY2RfdXRpbHM6OmdlbmVyYXRlX3VybCgkY29tcGFueV9uYW1lKTsKCSAgaWYoICEkdXJsICkKCQl7CgkJICAkZXJyb3IgPSAkdGhpcy0+TGFuZygnZXJyb3JfaW52YWxpZG5hbWUnKTsKCQl9Cgl9CgogIGlmKCAhJGVycm9yICYmICR1cmwgIT0gJycgKQoJewoJICAkcmVzID0gY2RfdXRpbHM6OnZhbGlkYXRlX3VybCgkdXJsKTsKCSAgaWYoICEkcmVzICkKCQl7CgkJICAkZXJyb3IgPSAkdGhpcy0+TGFuZygnZXJyb3JfaW52YWxpZHVybCcpOwoJCX0KCX0KICAKICAvLyBjaGVjayBmaWxlIHVwbG9hZHMgZnJvbSBmaWVsZGRlZnMKICBpZiggISRlcnJvciAmJiBjb3VudCgkZmllbGRkZWZzKSApCiAgICB7CiAgICAgIGZvcmVhY2goICRmaWVsZGRlZnMgYXMgJGZpZWxkZGVmICkKCXsKCSAgJGZpZWxkZGVmID0gY2dlX2FycmF5Ojp0b19vYmplY3QoJGZpZWxkZGVmKTsKCSAgc3dpdGNoKCAkZmllbGRkZWYtPnR5cGUgKQoJICAgIHsKCSAgICBjYXNlICdpbWFnZSc6CgkgICAgICBjZ2VfZGlyOjpta2RpcnIoJGRlc3RkaXIpOwoJICAgICAgJHVwbG9hZGVyID0gY2dlX3NldHVwOjpnZXRfdXBsb2FkZXIoJGlkLCRkZXN0ZGlyKTsKCSAgICAgICR0bXAgPSAkdXBsb2FkZXItPmNoZWNrX3VwbG9hZCgnY3VzdG9tZmllbGQnLCdmaWVsZC0nLiRmaWVsZGRlZi0+aWQpOwoJICAgICAgaWYoICEkdG1wICYmICR1cGxvYWRlci0+Z2V0X2Vycm9yKCkgIT0gY2dfZmlsZXVwbG9hZDo6Tk9GSUxFICkKCQl7CgkJICAkZXJyb3IgPSAkdGhpcy0+R2V0VXBsb2FkRXJyb3JNZXNzYWdlKCR1cGxvYWRlci0+Z2V0X2Vycm9yKCkpOwoJCSAgYnJlYWs7CgkJfQoJICAgICAgYnJlYWs7CgkgICAgfQoJfQogICAgfQogIAogIC8vIGhhbmRsZSBlcnJvcnMuCiAgaWYoICRlcnJvciApCiAgICB7CiAgICAgIGVjaG8gJHRoaXMtPlNob3dFcnJvcnMoJGVycm9yKTsKICAgIH0KICBlbHNlCgl7CgkJJHF1ZXJ5ID0gJ1VQREFURSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfY29tcGFuaWVzIFNFVCBjb21wYW55X25hbWUgPSA/LCB1cmwgPSA/LCBhZGRyZXNzID0gPywgCiAgICAgICAgICAgICAgICAgICAgICAgICAgdGVsZXBob25lID0gPywgZmF4ID0gPywgY29udGFjdF9lbWFpbCA9ID8sIHdlYnNpdGUgPSA/LCBkZXRhaWxzID0gPywgCiAgICAgICAgICAgICAgICAgICAgICAgICAgbW9kaWZpZWRfZGF0ZSA9ICcuJGRiLT5EQlRpbWVTdGFtcCh0aW1lKCkpLicsc3RhdHVzID0gPywKICAgICAgICAgICAgICAgICAgICAgICAgICBsYXRpdHVkZSA9ID8sIGxvbmdpdHVkZSA9ID8sIG93bmVyX2lkID0gPywgaGllcl9pZCA9ID8gV0hFUkUgaWQgPSA/JzsKCQkkZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgkY29tcGFueV9uYW1lLCAkdXJsLCAkYWRkcmVzcywgJHRlbGVwaG9uZSwgJGZheCwgJGNvbnRhY3RfZW1haWwsICR3ZWJzaXRlLCAKCQkJCQkgICAkZGV0YWlscywgJHN0YXR1cywgJGxhdGl0dWRlLCAkbG9uZ2l0dWRlLCAkb3duZXJfaWQsICRoaWVycG9zLCAkY29tcGlkKSk7CgkJCgkJJGRiLT5FeGVjdXRlKCdERUxFVEUgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfZmllbGR2YWxzIFdIRVJFIGNvbXBhbnlfaWQgPSA/JywgYXJyYXkoJGNvbXBpZCkpOwoJCQoKCQkvLyBoYW5kbGUgZmlsZSB1cGxvYWQgY3VzdG9tIGZpZWxkcy4KCQlpZiggY291bnQoJGZpZWxkZGVmcykgKQoJCSAgewoJCSAgICAKCQkgICAgZm9yZWFjaCggJGZpZWxkZGVmcyBhcyAkZmllbGRkZWYgKQoJCSAgICAgIHsKCQkJCSRmaWVsZGRlZiA9IGNnZV9hcnJheTo6dG9fb2JqZWN0KCRmaWVsZGRlZik7CgkJCXN3aXRjaCggJGZpZWxkZGVmLT50eXBlICkKCQkJICB7CgkJCSAgY2FzZSAnaW1hZ2UnOgoJCQkgICAgLy8gaGFuZGxlIHRoZSBwb3NzaWJpbGl0eSB3aGVyZSB0aGUgdXNlciBoYXMgY2hvc2VuIHRvIGRlbGV0ZSBhIGZpbGUuCgkJCSAgICBpZiggaXNzZXQoJHBhcmFtc1snZGVsZXRlZmlsZSddWydmaWVsZC0nLiRmaWVsZGRlZi0+aWRdKSAmJiAkZmllbGRkZWYtPnZhbHVlICE9ICcnICkKCQkJICAgICAgewoJCQkJLy8gd2UndmUgYmVlbiB0b2xkIHRvIGRlbGV0ZSB0aGUgZmlsZS4KCQkJCUB1bmxpbmsoY21zX2pvaW5fcGF0aCgkZGVzdGRpciwkZmllbGRkZWYtPnZhbHVlKSk7CgkJCQlAdW5saW5rKGNtc19qb2luX3BhdGgoJGRlc3RkaXIsJ3RodW1iXycuJGZpZWxkZGVmLT52YWx1ZSkpOwoJCQkJQHVubGluayhjbXNfam9pbl9wYXRoKCRkZXN0ZGlyLCdwcmV2aWV3XycuJGZpZWxkZGVmLT52YWx1ZSkpOwoJCQkJdW5zZXQoJHBhcmFtc1snY3VzdG9tZmllbGQnXVsnZmllbGRfJy4kZmllbGRkZWYtPmlkXSk7CgkJCSAgICAgIH0KCQkJICAgICR1cGxvYWRlciA9IGNnZV9zZXR1cDo6Z2V0X3VwbG9hZGVyKCRpZCwkZGVzdGRpcik7CgkJCSAgICAkdG1wID0gJHVwbG9hZGVyLT5oYW5kbGVfdXBsb2FkKCdjdXN0b21maWVsZCcsJycsJ2ZpZWxkLScuJGZpZWxkZGVmLT5pZCk7CgkJCSAgICBpZiggISR0bXAgKQoJCQkgICAgICB7CgkJCQlpZiggJHVwbG9hZGVyLT5nZXRfZXJyb3IoKSAhPSBjZ19maWxldXBsb2FkOjpOT0ZJTEUgKQoJCQkJICB7CgkJCQkgICAgJGVycm9yID0gJHRoaXMtPkdldFVwbG9hZEVycm9yTWVzc2FnZSgkdXBsb2FkZXItPmdldF9lcnJvcigpKTsKCQkJCSAgICBicmVhazsKCQkJCSAgfQoJCQkgICAgICB9CgkJCSAgICBlbHNlCgkJCSAgICAgIHsKCQkJCS8vIHdlJ3JlIHVwbG9hZGluZyBhIG5ldyBmaWxlIHNvIGRlbGV0ZSB0aGUgb2xkIG9uZS4KCQkJCUB1bmxpbmsoY21zX2pvaW5fcGF0aCgkZGVzdGRpciwkZmllbGRkZWYtPnZhbHVlKSk7CgkJCQlAdW5saW5rKGNtc19qb2luX3BhdGgoJGRlc3RkaXIsJ3RodW1iXycuJGZpZWxkZGVmLT52YWx1ZSkpOwoJCQkJQHVubGluayhjbXNfam9pbl9wYXRoKCRkZXN0ZGlyLCdwcmV2aWV3XycuJGZpZWxkZGVmLT52YWx1ZSkpOwoKCQkJCSRfUkVRVUVTVFskaWQuJ2N1c3RvbWZpZWxkJ11bJ2ZpZWxkLScuJGZpZWxkZGVmLT5pZF0gPSAkdG1wOwoJCQkgICAgICB9CgkJCSAgfQoJCSAgICAgIH0KCQlpZiAoaXNzZXQoJF9SRVFVRVNUWyRpZC4nY3VzdG9tZmllbGQnXSkpCgkJewoJCQlmb3JlYWNoICgkX1JFUVVFU1RbJGlkLidjdXN0b21maWVsZCddIGFzICRrPT4kdikKCQkJewoJCQkJaWYgKHN0YXJ0c3dpdGgoJGssICdmaWVsZC0nKSkgewkKCQkJCQkkZmlkID0gc3Vic3RyKCRrLCA2KTsKCQkJCQkkcXVlcnkgPSAnSU5TRVJUIElOVE8gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9jb21wZGlyX2ZpZWxkdmFscyAoY29tcGFueV9pZCwgZmllbGRkZWZfaWQsIHZhbHVlLCBjcmVhdGVfZGF0ZSwgbW9kaWZpZWRfZGF0ZSkgVkFMVUVTICg/LD8sPyw/LD8pJzsKCQkJCQkkZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgkY29tcGlkLCAkZmlkLCAkdiwgdHJpbSgkZGItPkRCVGltZVN0YW1wKHRpbWUoKSksICInIiksIHRyaW0oJGRiLT5EQlRpbWVTdGFtcCh0aW1lKCkpLCAiJyIpKSk7CgkJCQl9CgkJCX0KCQl9CgkJICB9CgkJCgkJJGRiLT5FeGVjdXRlKCdERUxFVEUgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfY29tcGFueV9jYXRlZ29yaWVzIFdIRVJFIGNvbXBhbnlfaWQgPSA/JywgYXJyYXkoJGNvbXBpZCkpOwoKCQlpZiAoaXNzZXQoJF9SRVFVRVNUWyRpZC4nY2F0ZWdvcnknXSkpCgkJewoJCSAgZm9yZWFjaCAoJF9SRVFVRVNUWyRpZC4nY2F0ZWdvcnknXSBhcyAkaz0+JHYpCgkJICAgIHsKCQkgICAgICBpZiAoc3RhcnRzd2l0aCgkaywgJ2lkLScpKQoJCQkJewoJCQkJICAkZmlkID0gc3Vic3RyKCRrLCAzKTsKCQkJICAKCQkJCSAgJGV4dHJhMSA9ICcnOwoJCQkJICAkZXh0cmEyID0gJyc7CgkJCQkgICRleHRyYTMgPSAnJzsKCQkJCSAgaWYoIGlzc2V0KCRfUkVRVUVTVFskaWQuJ2NhdGVnb3J5X2V4dHJhMSddWyRrXSkgKQoJCQkJCXsKCQkJCQkgICRleHRyYTEgPSAkX1JFUVVFU1RbJGlkLidjYXRlZ29yeV9leHRyYTEnXVska107CgkJCQkJfQoJCQkJICBpZiggaXNzZXQoJF9SRVFVRVNUWyRpZC4nY2F0ZWdvcnlfZXh0cmEyJ11bJGtdKSApCgkJCQkJewoJCQkJCSAgJGV4dHJhMiA9ICRfUkVRVUVTVFskaWQuJ2NhdGVnb3J5X2V4dHJhMiddWyRrXTsKCQkJCQl9CgkJCQkgIGlmKCBpc3NldCgkX1JFUVVFU1RbJGlkLidjYXRlZ29yeV9leHRyYTMnXVska10pICkKCQkJCQl7CgkJCQkJICAkZXh0cmEzID0gJF9SRVFVRVNUWyRpZC4nY2F0ZWdvcnlfZXh0cmEzJ11bJGtdOwoJCQkJCX0KCgkJCQkgICRxdWVyeSA9ICdJTlNFUlQgSU5UTyAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfY29tcGFueV9jYXRlZ29yaWVzIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY29tcGFueV9pZCwgY2F0ZWdvcnlfaWQsIGV4dHJhMSwgZXh0cmEyLCBleHRyYTMsIGNyZWF0ZV9kYXRlLCBtb2RpZmllZF9kYXRlKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVkFMVUVTICg/LD8sPyw/LD8sTk9XKCksTk9XKCkpJzsKCQkJCSAgJGRiciA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksIGFycmF5KCRjb21waWQsICRmaWQsICRleHRyYTEsICRleHRyYTIsICRleHRyYTMpKTsKCQkJCSAgaWYoICEkZGJyICkgCgkJCQkJewoJCQkJCSAgZGVidWdfZGlzcGxheSgkZGItPnNxbCk7IGRlYnVnX2Rpc3BsYXkoJGRiLT5FcnJvck1zZygpKTsgZGllKCk7CgkJCQkJfQoJCQkJfQoJCSAgICB9CgkJfQoJCQoJCWlmICgkaW1hZ2UgIT0gJycpCgkJewoJCSAgLy8gZGVwcmVjYXRlZCwgdXNlIHRoZSB1cGxvYWRlciBzdHVmZi4KCQkJaGFuZGxlX3RtcF91cGxvYWQoJGlkLCAkY29tcGlkLCAkaW1hZ2UsICdwaWN0dXJlX2xvY2F0aW9uJywgJGRiKTsKCQl9CgkKCQlpZiAoJGxvZ28gIT0gJycpCgkJewoJCSAgLy8gZGVwcmVjYXRlZCwgdXNlIHRoZSB1cGxvYWRlciBzdHVmZi4KCQkJaGFuZGxlX3RtcF91cGxvYWQoJGlkLCAkY29tcGlkLCAkbG9nbywgJ2xvZ29fbG9jYXRpb24nLCAkZGIpOwoJCX0KCQkKCQkvL1VwZGF0ZSBzZWFyY2ggaW5kZXgKCQkkbW9kdWxlID0mICR0aGlzLT5HZXRNb2R1bGVJbnN0YW5jZSgnU2VhcmNoJyk7CgkJaWYgKCRtb2R1bGUgIT0gRkFMU0UpCgkJewoJCQkkbW9kdWxlLT5BZGRXb3JkcygkdGhpcy0+R2V0TmFtZSgpLCAkY29tcGlkLCAnY29tcGFueScsIGltcGxvZGUoJyAnLCBhcnJheSgkY29tcGFueV9uYW1lLCAkY29tcGFueV9uYW1lLCAkYWRkcmVzcywgJHRlbGVwaG9uZSwgJGZheCwgJGRldGFpbHMpKSk7CgkJfQoKCQkkcGFyYW1zID0gYXJyYXkoJ3RhYl9tZXNzYWdlJz0+ICdjb21wYW55dXBkYXRlZCcsICdhY3RpdmVfdGFiJyA9PiAnY29tcGFuaWVzJyk7CgkJJHRoaXMtPlJlZGlyZWN0KCRpZCwgJ2RlZmF1bHRhZG1pbicsICRyZXR1cm5pZCwgJHBhcmFtcyk7CQkJCgl9Cn0KZWxzZQp7CgkkcXVlcnkgPSAnU0VMRUNUICogRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfY29tcGFuaWVzIFdIRVJFIGlkID0gPyc7Cgkkcm93ID0gJGRiLT5HZXRSb3coJHF1ZXJ5LCBhcnJheSgkY29tcGlkKSk7CgoJaWYgKCRyb3cpCgl7CgkJJGNvbXBhbnlfbmFtZSA9ICRyb3dbJ2NvbXBhbnlfbmFtZSddOwoJCSR1cmwgPSAkcm93Wyd1cmwnXTsKCQkkYWRkcmVzcyA9ICRyb3dbJ2FkZHJlc3MnXTsKCQkkbGF0aXR1ZGUgPSAkcm93WydsYXRpdHVkZSddOwoJCSRsb25naXR1ZGUgPSAkcm93Wydsb25naXR1ZGUnXTsKCQkkaGllcnBvcyA9ICRyb3dbJ2hpZXJfaWQnXTsKCQkkdGVsZXBob25lID0gJHJvd1sndGVsZXBob25lJ107CgkJJGZheCA9ICRyb3dbJ2ZheCddOwoJCSRzdGF0dXMgPSAkcm93WydzdGF0dXMnXTsKCQkkY29udGFjdF9lbWFpbCA9ICRyb3dbJ2NvbnRhY3RfZW1haWwnXTsKCQkkd2Vic2l0ZSA9ICRyb3dbJ3dlYnNpdGUnXTsKCQkkZGV0YWlscyA9ICRyb3dbJ2RldGFpbHMnXTsKCQkkaW1hZ2UgPSAkcm93WydwaWN0dXJlX2xvY2F0aW9uJ107CgkJJGxvZ28gPSAkcm93Wydsb2dvX2xvY2F0aW9uJ107CgkJJG9yaWduYW1lID0gJHJvd1snY29tcGFueV9uYW1lJ107CgkJJG93bmVyX2lkID0gJHJvd1snb3duZXJfaWQnXTsKCX0KfQoKJGZpZWxkYXJyYXkgPSBhcnJheSgpOwokaW1hZ2VkaXIgPSAnJzsKJGltYWdldXJsID0gJyc7CmlmKCAkY29tcGlkID4gMCApCiAgewogICAgJGltYWdlZGlyID0gY21zX2pvaW5fcGF0aCgkZ0Ntcy0+Y29uZmlnWyd1cGxvYWRzX3BhdGgnXSwnY29tcGFueWRpcmVjdG9yeScsJ2lkJy4kY29tcGlkKTsKICAgICRpbWFnZXVybCA9ICRnQ21zLT5jb25maWdbJ3VwbG9hZHNfdXJsJ10uIi9jb21wYW55ZGlyZWN0b3J5L2lkeyRjb21waWR9IjsKICB9CgppZiAoY291bnQoJGZpZWxkZGVmcykgPiAwKQp7Cglmb3JlYWNoICgkZmllbGRkZWZzIGFzICRmaWVsZGRlZikKCXsKCSAgJGZpZWxkZGVmID0gY2dlX2FycmF5Ojp0b19vYmplY3QoJGZpZWxkZGVmKTsKCQkkZmllbGQgPSBuZXcgc3RkQ2xhc3MoKTsKCgkJJHZhbHVlID0gJyc7CgkJaWYgKGlzc2V0KCRmaWVsZGRlZi0+dmFsdWUpKQoJCXsKCQkJJHZhbHVlID0gJGZpZWxkZGVmLT52YWx1ZTsKCQl9CgoJCWlmIChpc3NldCgkX1JFUVVFU1RbJGlkLidjdXN0b21maWVsZCddWydmaWVsZC0nLiRmaWVsZGRlZi0+aWRdKSkKCQkgIHsKCQkgICAgJHZhbHVlID0gJF9SRVFVRVNUWyRpZC4nY3VzdG9tZmllbGQnXVsnZmllbGQtJy4kZmllbGRkZWYtPmlkXTsKCQkgIH0KCgkJJGZpZWxkLT52YWx1ZSA9ICR2YWx1ZTsKCQkkZmllbGQtPmlkID0gJGZpZWxkZGVmLT5pZDsKCQkkZmllbGQtPm5hbWUgPSAkZmllbGRkZWYtPm5hbWU7CgkJJGZpZWxkLT50eXBlID0gJGZpZWxkZGVmLT50eXBlOwoKCQlzd2l0Y2ggKCRmaWVsZGRlZi0+dHlwZSkKCQl7CgkJY2FzZSAnZHJvcGRvd24nOgoJCSAgewoJCQkkdG1wMiA9IGNkX3V0aWxzOjpkZWNvZGVfZHJvcGRvd25fZGF0YSgkZmllbGRkZWYtPmRyb3Bkb3duX2RhdGEpOwoJCSAgICAkZmllbGQtPmlucHV0X2JveCA9ICR0aGlzLT5DcmVhdGVJbnB1dERyb3Bkb3duKCRpZCwnY3VzdG9tZmllbGRbZmllbGQtJy4kZmllbGRkZWYtPmlkLiddJywkdG1wMiwtMSwkdmFsdWUpOwoJCSAgfQoJCSAgYnJlYWs7CgoJCWNhc2UgJ2ltYWdlJzoKCQkgICRmaWVsZC0+aW5wdXRfYm94ID0gJyc7CgkJICBpZiggJHZhbHVlICkKCQkgICAgewoJCQkgICRmaWVsZC0+aW5wdXRfYm94IC49ICc8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSInLiRpZC4nY3VzdG9tZmllbGRbZmllbGQtJy4kZmllbGRkZWYtPmlkLiddIiB2YWx1ZT0iJy4kdmFsdWUuJyIvPic7CgkJICAgICAgJGZpZWxkLT5pbnB1dF9ib3ggLj0gIjxici8+eyR2YWx1ZX06Jm5ic3A7Jm5ic3A7PGlucHV0IHR5cGU9XCJjaGVja2JveFwiIG5hbWU9XCJ7JGlkfWRlbGV0ZWZpbGVbZmllbGQteyRmaWVsZGRlZi0+aWR9XVwiIHZhbHVlPVwiMVwiLz4oeyR0aGlzLT5MYW5nKCdkZWxldGUnKX0pIjsKCQkgICAgfQoJCSAgJGZpZWxkLT5pbnB1dF9ib3ggLj0gJzxpbnB1dCB0eXBlPSJmaWxlIiBuYW1lPSInLiRpZC4nY3VzdG9tZmllbGRbZmllbGQtJy4kZmllbGRkZWYtPmlkLiddIiB2YWx1ZT0iIiBzaXplPSI4MCIvPic7CgkJICBpZiggJGltYWdlZGlyICkKCQkgICAgewoJCSAgICAgICRmbiA9IGNtc19qb2luX3BhdGgoJGltYWdlZGlyLCd0aHVtYl8nLiR2YWx1ZSk7CgkJICAgICAgaWYoIGZpbGVfZXhpc3RzKCRmbikgKQoJCQl7CgkJCSAgJGZpZWxkLT50aHVtYl91cmwgPSAkaW1hZ2V1cmwuJy90aHVtYl8nLiR2YWx1ZTsKCQkJfQoJCSAgICAgICRmbiA9IGNtc19qb2luX3BhdGgoJGltYWdlZGlyLCdwcmV2aWV3Jy4kdmFsdWUpOwoJCSAgICAgIGlmKCBmaWxlX2V4aXN0cygkZm4pICkKCQkJewoJCQkgICRmaWVsZC0+cHJldmlld191cmwgPSAkaW1hZ2V1cmwuJy9wcmV2aWV3XycuJHZhbHVlOwoJCQl9CgkJICAgICAgJGZuID0gY21zX2pvaW5fcGF0aCgkaW1hZ2VkaXIsJHZhbHVlKTsKCQkgICAgICBpZiggZmlsZV9leGlzdHMoJGZuKSApCgkJCXsKCQkJICAkZmllbGQtPmltYWdlX3VybCA9ICRpbWFnZXVybC4nLycuJHZhbHVlOwoJCQl9CgkJICAgIH0KCQkgIGJyZWFrOwoKCQljYXNlICdjaGVja2JveCc6CgkJICAkZmllbGQtPmlucHV0X2JveCA9ICc8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSInIC4gJGlkIC4gJ2N1c3RvbWZpZWxkW2ZpZWxkLScuJGZpZWxkZGVmLT5pZC4nXScgLiAnIiB2YWx1ZT0iZmFsc2UiIC8+JyAuICR0aGlzLT5DcmVhdGVJbnB1dENoZWNrYm94KCRpZCwgJ2N1c3RvbWZpZWxkW2ZpZWxkLScuJGZpZWxkZGVmLT5pZC4nXScsICd0cnVlJywgJHZhbHVlICk7CgkJICBicmVhazsKCQljYXNlICd0ZXh0YXJlYSc6CgkJICAkZmllbGQtPmlucHV0X2JveCA9ICR0aGlzLT5DcmVhdGVUZXh0QXJlYSh0cnVlLCAkaWQsICR2YWx1ZSwgJ2N1c3RvbWZpZWxkW2ZpZWxkLScuJGZpZWxkZGVmLT5pZC4nXScpOwoJCSAgYnJlYWs7CgkJY2FzZSAndGV4dGJveCc6CgkJZGVmYXVsdDoKCQkgICRtYXhsZW5ndGggPSAkZmllbGRkZWYtPm1heF9sZW5ndGg7CgkJICAkc2l6ZSA9IG1pbigkbWF4bGVuZ3RoLDgwKTsKCQkgICRmaWVsZC0+aW5wdXRfYm94ID0gJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsICdjdXN0b21maWVsZFtmaWVsZC0nLiRmaWVsZGRlZi0+aWQuJ10nLCAkdmFsdWUsICRzaXplLCAkbWF4bGVuZ3RoKTsKCQkgIGJyZWFrOwoJCX0KCgkJJGZpZWxkYXJyYXlbXSA9ICRmaWVsZDsKCX0KfQoKLy8gZmluZCBhbGwgJ29ycGhhbmVkJyBmaWxlcyBpbiB0aGUgZGVzdGRpciAoZmlsZXMgdGhhdCBkb24ndCBoYXZlIGEgdmFsdWUgbWF0Y2hpbmcgdGhlbSkuCiRmaWxlcyA9IGdsb2IoJGRlc3RkaXIuJy8qJyk7CmlmKCBpc19hcnJheSgkZmlsZXMpICYmIGNvdW50KCRmaWxlcykgKQogIHsKCSRkZWxmaWxlcyA9IGFycmF5KCk7Cglmb3IoICRqID0gMDsgJGogPCBjb3VudCgkZmlsZXMpOyAkaisrICkKCSAgewoJCSRibiA9IGJhc2VuYW1lKCRmaWxlc1skal0pOwoJCSRvYm4gPSAkYm47CgkJaWYoIHN0YXJ0c3dpdGgoJGJuLCd0aHVtYl8nKSApICRibiA9IHN1YnN0cigkYm4sNik7CgkJaWYoIHN0YXJ0c3dpdGgoJGJuLCdwcmV2aWV3XycpICkgJGJuID0gc3Vic3RyKCRibiw4KTsKCQkKCQkkZm5kID0gMDsKCQlmb3IoICRpID0gMDsgJGkgPCBjb3VudCgkZmllbGRhcnJheSk7ICRpKysgKQoJCSAgewoJCQkkZmxkID0gJGZpZWxkYXJyYXlbJGldOwoJCQlpZiggJGZsZC0+dHlwZSAhPSAnaW1hZ2UnICkgY29udGludWU7CgkJCWlmKCAkZmxkLT52YWx1ZSA9PSAkYm4gKSAKCQkJICB7CgkJCQkkZm5kID0gMTsKCQkJCWJyZWFrOwoJCQkgIH0KCQkgIH0KCgkJaWYoICEkZm5kICkKCQkgIHsKCQkJJGRlbGZpbGVzW10gPSAkb2JuOwoJCSAgfQoJICB9Cglmb3IoICRpID0gMDsgJGkgPCBjb3VudCgkZGVsZmlsZXMpOyAkaSsrICkKCSAgewoJCUB1bmxpbmsoJGRlc3RkaXIuJy8nLiRkZWxmaWxlc1skaV0pOwoJICB9CiAgfQoKLy8gZ2V0IHVzZXIgaW5mb3JtYXRpb24KJGZldSA9ICR0aGlzLT5HZXRNb2R1bGVJbnN0YW5jZSgnRnJvbnRFbmRVc2VycycpOwppZiggaXNfb2JqZWN0KCRmZXUpICkKICB7CiAgICAkdG1wID0gJGZldS0+R2V0VXNlcnNJbkdyb3VwKCk7CiAgICBpZiggaXNfYXJyYXkoJHRtcCkgJiYgY291bnQoJHRtcCkgKQogICAgICB7CgkkdXNlcnMgPSBhcnJheSgpOwoJJHVzZXJzWy0xXSA9ICR0aGlzLT5MYW5nKCdub25lJyk7Cglmb3IoICRpID0gMDsgJGkgPCBjb3VudCgkdG1wKTsgJGkrKyApCgkgIHsKCSAgICAkdXNlcnNbJHRtcFskaV1bJ2lkJ11dID0gJHRtcFskaV1bJ3VzZXJuYW1lJ107CgkgIH0KCSRzbWFydHktPmFzc2lnbignZmV1X3VzZXJzJywkdXNlcnMpOwogICAgICB9CiAgfQokc21hcnR5LT5hc3NpZ24oJ293bmVyX2lkJywkb3duZXJfaWQpOwoKJGNhdGVnb3JpZXMgPSAkdGhpcy0+R2V0Q2F0ZWdvcmllc0ZvckNvbXBhbnkoJGNvbXBpZCk7CiRjYXRhcnJheSA9IGFycmF5KCk7CgppZiAoY291bnQoJGNhdGVnb3JpZXMpID4gMCkKewoJZm9yZWFjaCAoJGNhdGVnb3JpZXMgYXMgJG9uZWNhdCkKCXsKCQkkZmllbGQgPSBuZXcgc3RkQ2xhc3MoKTsKCiAgICAgICAgJHZhbHVlID0gJyc7CiAgICAgICAgaWYgKGlzc2V0KCRvbmVjYXQtPnZhbHVlKSkKICAgICAgICB7CiAgICAgICAgICAgICAgICAkdmFsdWUgPSAkb25lY2F0LT52YWx1ZTsKICAgICAgICB9CgoJCWlmIChpc3NldCgkX1JFUVVFU1RbJGlkLidjYXRlZ29yeSddKSkKCQl7CgkJCWlmIChpc3NldCgkX1JFUVVFU1RbJGlkLidjYXRlZ29yeSddWydpZC0nLiRvbmVjYXQtPmlkXSkpCgkJCQkkdmFsdWUgPSAndHJ1ZSc7CgkJCWVsc2UKCQkJCSR2YWx1ZSA9ICdmYWxzZSc7CgkJfQoKCQkkZmllbGQtPnZhbHVlID0gJHZhbHVlOwoJCSRmaWVsZC0+aWQgPSAkb25lY2F0LT5pZDsKCQkkZmllbGQtPm5hbWUgPSAkb25lY2F0LT5uYW1lOwoJCSRmaWVsZC0+Y2hlY2tib3ggPSAkdGhpcy0+Q3JlYXRlSW5wdXRDaGVja2JveCgkaWQsICdjYXRlZ29yeVtpZC0nLiRvbmVjYXQtPmlkLiddJywgJHZhbHVlLCAndHJ1ZScpOwoJCSRmaWVsZC0+ZXh0cmExID0gJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsJ2NhdGVnb3J5X2V4dHJhMVtpZC0nLiRvbmVjYXQtPmlkLiddJywgJG9uZWNhdC0+ZXh0cmExLDQwLDI1NSk7CgkJJGZpZWxkLT5leHRyYTIgPSAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwnY2F0ZWdvcnlfZXh0cmEyW2lkLScuJG9uZWNhdC0+aWQuJ10nLCAkb25lY2F0LT5leHRyYTIsNDAsMjU1KTsKCQkkZmllbGQtPmV4dHJhMyA9ICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCdjYXRlZ29yeV9leHRyYTNbaWQtJy4kb25lY2F0LT5pZC4nXScsICRvbmVjYXQtPmV4dHJhMyw0MCwyNTUpOwoKCQkkY2F0YXJyYXlbXSA9ICRmaWVsZDsKCX0KfQoKI0Rpc3BsYXkgdGVtcGxhdGUKJHNtYXJ0eS0+YXNzaWduKCdzdGFydGZvcm0nLCAkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0KCRpZCwgJ2VkaXRjb21wYW55JywgJHJldHVybmlkLCAncG9zdCcsICdtdWx0aXBhcnQvZm9ybS1kYXRhJykpOwokc21hcnR5LT5hc3NpZ24oJ2VuZGZvcm0nLCAkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsKJHNtYXJ0eS0+YXNzaWduKCduYW1ldGV4dCcsICR0aGlzLT5MYW5nKCduYW1lJykpOwokc21hcnR5LT5hc3NpZ24oJ2NvbXBhbnlfbmFtZScsJGNvbXBhbnlfbmFtZSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRuYW1lJywgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsICdjb21wYW55X25hbWUnLCAkY29tcGFueV9uYW1lLCAzMCwgMjU1KSk7CiRzbWFydHktPmFzc2lnbignYWRkcmVzc3RleHQnLCAkdGhpcy0+TGFuZygnYWRkcmVzcycpKTsKJHNtYXJ0eS0+YXNzaWduKCd1cmwnLCR1cmwpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0YWRkcmVzcycsICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCAnYWRkcmVzcycsICRhZGRyZXNzLCAzMCwgMjU1KSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRsYXRpdHVkZScsICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCAnbGF0aXR1ZGUnLCAkbGF0aXR1ZGUsIDMwLCAyNTUpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dGxvbmdpdHVkZScsICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCAnbG9uZ2l0dWRlJywgJGxvbmdpdHVkZSwgMzAsIDI1NSkpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0aGllcnBvcycsJHRoaXMtPkNyZWF0ZVBhcmVudERyb3Bkb3duKCRpZCwtMSwkaGllcnBvcywnaGllcnBvcycpKTsKJHNtYXJ0eS0+YXNzaWduKCd0ZWxlcGhvbmV0ZXh0JywgJHRoaXMtPkxhbmcoJ3RlbGVwaG9uZScpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dHRlbGVwaG9uZScsICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCAndGVsZXBob25lJywgJHRlbGVwaG9uZSwgMzAsIDI1NSkpOwokc21hcnR5LT5hc3NpZ24oJ2ZheHRleHQnLCAkdGhpcy0+TGFuZygnZmF4JykpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0ZmF4JywgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsICdmYXgnLCAkZmF4LCAzMCwgMjU1KSk7CiRzbWFydHktPmFzc2lnbignZW1haWx0ZXh0JywgJHRoaXMtPkxhbmcoJ2NvbnRhY3RlbWFpbCcpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dGVtYWlsJywgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsICdjb250YWN0X2VtYWlsJywgJGNvbnRhY3RfZW1haWwsIDMwLCAyNTUpKTsKJHNtYXJ0eS0+YXNzaWduKCd3ZWJzaXRldGV4dCcsICR0aGlzLT5MYW5nKCd3ZWJzaXRlJykpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0d2Vic2l0ZScsICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCAnd2Vic2l0ZScsICR3ZWJzaXRlLCAzMCwgMjU1KSk7CiRzbWFydHktPmFzc2lnbignZGV0YWlsc3RleHQnLCAkdGhpcy0+TGFuZygnZGV0YWlscycpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dGRldGFpbHMnLCAkdGhpcy0+Q3JlYXRlVGV4dEFyZWEodHJ1ZSwgJGlkLCAkZGV0YWlscywgJ2RldGFpbHMnLCAnJywgJycsICcnLCAnJywgJzgwJywgJzUnKSk7CiRzbWFydHktPmFzc2lnbignaW1hZ2V1cGxvYWQnLCAkdGhpcy0+Q3JlYXRlRmlsZVVwbG9hZElucHV0KCRpZCwgJ2ltYWdldXBsb2FkJywgJycsIDgwKSk7CiRzbWFydHktPmFzc2lnbignaW1hZ2VjdXJyZW50JywgJGltYWdlKTsKJHNtYXJ0eS0+YXNzaWduKCdpbWFnZWN1cnJlbnRoaWRkZW4nLCAkdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLCAnaW1hZ2VjdXJyZW50JywgJHJldHVybmlkLCAkaW1hZ2UpIC4gJyAtLSAnIC4gJHRoaXMtPkxhbmcoJ2RlbGV0ZScpIC4gJzonIC4gJHRoaXMtPkNyZWF0ZUlucHV0Q2hlY2tib3goJGlkLCAnZGVsZXRlaW1hZ2UnLCAnY2hlY2tlZCcsICcnKSk7CiRzbWFydHktPmFzc2lnbignaW1hZ2V0ZXh0JywgJHRoaXMtPkxhbmcoJ2ltYWdldGV4dCcpKTsKJHNtYXJ0eS0+YXNzaWduKCdsb2dvdXBsb2FkJywgJHRoaXMtPkNyZWF0ZUZpbGVVcGxvYWRJbnB1dCgkaWQsICdsb2dvdXBsb2FkJywgJycsIDgwKSk7CiRzbWFydHktPmFzc2lnbignbG9nb2N1cnJlbnQnLCAkbG9nbyk7CiRzbWFydHktPmFzc2lnbignbG9nb2N1cnJlbnRoaWRkZW4nLCAkdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLCAnbG9nb2N1cnJlbnQnLCAkcmV0dXJuaWQsICRsb2dvKSAuICcgLS0gJyAuICR0aGlzLT5MYW5nKCdkZWxldGUnKSAuICc6JyAuICR0aGlzLT5DcmVhdGVJbnB1dENoZWNrYm94KCRpZCwgJ2RlbGV0ZWxvZ28nLCAnY2hlY2tlZCcsICcnKSk7CiRzbWFydHktPmFzc2lnbignbG9nb3RleHQnLCAkdGhpcy0+TGFuZygnbG9nb3RleHQnKSk7CiRzbWFydHktPmFzc2lnbigndXJsX3JlcXVpcmVkJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgndXJsX3JlcXVpcmVkJywwKSk7Cgokc3RhdHVzZXMgPSBhcnJheSgkdGhpcy0+TGFuZygncHVibGlzaGVkJyk9PidwdWJsaXNoZWQnLAoJCSAgJHRoaXMtPkxhbmcoJ2RyYWZ0Jyk9PidkcmFmdCcsCgkJICAkdGhpcy0+TGFuZygnZGlzYWJsZWQnKT0+J2Rpc2FibGVkJyk7CiRzbWFydHktPmFzc2lnbignc3RhdHVzdGV4dCcsJHRoaXMtPkxhbmcoJ3N0YXR1cycpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dHN0YXR1cycsCgkJJHRoaXMtPkNyZWF0ZUlucHV0RHJvcGRvd24oJGlkLCdzdGF0dXMnLAoJCQkJCSAgICRzdGF0dXNlcywtMSwkc3RhdHVzKSk7Cgokc21hcnR5LT5hc3NpZ24oJ2lkdGV4dCcsJHRoaXMtPkxhbmcoJ2lkJykpOwokc21hcnR5LT5hc3NpZ24oJ2NvbXBpZCcsJGNvbXBpZCk7CiRzbWFydHktPmFzc2lnbignaGlkZGVuJywgCgkJICAgICAgJHRoaXMtPkNyZWF0ZUlucHV0SGlkZGVuKCRpZCwgJ2NvbXBpZCcsICRjb21waWQpLgoJCSAgICAgICR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsICdvcmlnbmFtZScsICRvcmlnbmFtZSkpOwokc21hcnR5LT5hc3NpZ24oJ3N1Ym1pdCcsICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsICdzdWJtaXQnLCBsYW5nKCdzdWJtaXQnKSkpOwoKaWYoICRjYW5fY2FuY2VsICkKICB7CiAgICAkc21hcnR5LT5hc3NpZ24oJ2NhbmNlbCcsICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsICdjYW5jZWwnLCBsYW5nKCdjYW5jZWwnKSkpOwogIH0KJHNtYXJ0eS0+YXNzaWduKCdjdXN0b21maWVsZHMnLCAkZmllbGRhcnJheSk7CiRzbWFydHktPmFzc2lnbignY3VzdG9tZmllbGRzY291bnQnLCBjb3VudCgkZmllbGRhcnJheSkpOwokc21hcnR5LT5hc3NpZ24oJ2NhdGVnb3JpZXMnLCAkY2F0YXJyYXkpOwokc21hcnR5LT5hc3NpZ24oJ2NhdGVnb3JpZXNjb3VudCcsIGNvdW50KCRjYXRhcnJheSkpOwokY2dnbSA9JiAkdGhpcy0+R2V0TW9kdWxlSW5zdGFuY2UoJ0NHR29vZ2xlTWFwcycpOwppZiggJGNnZ20gKQogIHsKICAgIGlmKCBtZXRob2RfZXhpc3RzKCRjZ2dtLCdHZXRDb29yZHNGcm9tQWRkcmVzcycpICkKICAgICAgewoJJHNtYXJ0eS0+YXNzaWduKCdjYW5fZ2VvY29kZScsMSk7CiAgICAgIH0KICB9CmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSgnZWRpdGNvbXBhbnkudHBsJyk7Cgo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/action.editfielddef.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmICghaXNzZXQoJGdDbXMpKSBleGl0OwokdGhpcy0+U2V0Q3VycmVudFRhYignZmllbGRkZWZzJyk7CmlmICghJHRoaXMtPkNoZWNrUGVybWlzc2lvbignTW9kaWZ5IENvbXBhbnkgRGlyZWN0b3J5JykpCnsKCWVjaG8gJHRoaXMtPlNob3dFcnJvcnMoJHRoaXMtPkxhbmcoJ25lZWRwZXJtaXNzaW9uJywgYXJyYXkoJ01vZGlmeSBDb21wYW55IERpcmVjdG9yeScpKSk7CglyZXR1cm47Cn0KCgovLwovLyBJbml0aWFsaXphdGlvbgovLwokbmFtZSA9ICcnOwokdHlwZSA9ICcnOwokbWF4X2xlbmd0aCA9IDI1NTsKJG9yaWduYW1lID0gJyc7CiRhZG1pbl9vbmx5ID0gMDsKJHB1YmxpYyA9IDA7CiRkcm9wZG93bl9kYXRhID0gJyc7CgovLwovLyBTZXR1cAovLwokZmRpZCA9ICcnOwppZiAoaXNzZXQoJHBhcmFtc1snZmRpZCddKSkKewogICRmZGlkID0gJHBhcmFtc1snZmRpZCddOwp9CmlmIChpc3NldCgkcGFyYW1zWydjYW5jZWwnXSkpCnsKICAkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsJycsJycsJ2FkbWluX3NldHRpbmdzJyk7Cn0KCgoKLy8KLy8gR2V0IERhdGEKLy8KJHF1ZXJ5ID0gJ1NFTEVDVCAqIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9jb21wZGlyX2ZpZWxkZGVmcyBXSEVSRSBpZCA9ID8nOwokcm93ID0gJGRiLT5HZXRSb3coJHF1ZXJ5LCBhcnJheSgkZmRpZCkpOwppZiAoJHJvdykKICB7CiAgICAkbmFtZSA9ICRyb3dbJ25hbWUnXTsKICAgICR0eXBlID0gJHJvd1sndHlwZSddOwogICAgJG1heF9sZW5ndGggPSAkcm93WydtYXhfbGVuZ3RoJ107CiAgICAkb3JpZ25hbWUgPSAkcm93WyduYW1lJ107CiAgICAkYWRtaW5fb25seSA9ICRyb3dbJ2FkbWluX29ubHknXTsKICAgICRwdWJsaWMgPSAkcm93WydwdWJsaWMnXTsKICAgICRkcm9wZG93bl9kYXRhID0gJHJvd1snZHJvcGRvd25fZGF0YSddOwogIH0KCgppZiAoaXNzZXQoJHBhcmFtc1snbmFtZSddKSkKewogICRuYW1lID0gJHBhcmFtc1snbmFtZSddOwp9CmlmIChpc3NldCgkcGFyYW1zWyd0eXBlJ10pKQp7CiAgJHR5cGUgPSAkcGFyYW1zWyd0eXBlJ107Cn0KaWYgKGlzc2V0KCRwYXJhbXNbJ21heF9sZW5ndGgnXSkpCnsKICAkbWF4X2xlbmd0aCA9IChpbnQpJHBhcmFtc1snbWF4X2xlbmd0aCddOwp9CmlmIChpc3NldCgkcGFyYW1zWydvcmlnbmFtZSddKSkKewogICRvcmlnbmFtZSA9ICRwYXJhbXNbJ29yaWduYW1lJ107Cn0KaWYoIGlzc2V0KCRwYXJhbXNbJ2FkbWluX29ubHknXSkgKQogIHsKICAgICRhZG1pbl9vbmx5ID0gKGludCkkcGFyYW1zWydhZG1pbl9vbmx5J107CiAgfQppZiggaXNzZXQoJHBhcmFtc1sncHVibGljJ10pICkKICB7CiAgICAkcHVibGljID0gKGludCkkcGFyYW1zWydwdWJsaWMnXTsKICB9CmlmKCAkdHlwZSA9PSAnZHJvcGRvd24nICYmIGlzc2V0KCRwYXJhbXNbJ2Ryb3Bkb3duX29wdGlvbnMnXSkgKQogIHsKICAgICRkcm9wZG93bl9kYXRhID0gdHJpbSgkcGFyYW1zWydkcm9wZG93bl9vcHRpb25zJ10pOwogIH0KCiRzdGF0dXMgPSAnJzsKaWYgKGlzc2V0KCRwYXJhbXNbJ3N1Ym1pdCddKSkKewogIGlmKCBlbXB0eSgkbmFtZSkgKQogICAgewogICAgICAkc3RhdHVzID0gJHRoaXMtPkxhbmcoJ25vbmFtZ2l2ZW4nKTsKICAgIH0KCiAgaWYoIGVtcHR5KCRzdGF0dXMpICYmICR0eXBlID09ICd0ZXh0Ym94JyAmJiAhaXNfbnVtZXJpYygkbWF4X2xlbmd0aCkgKQogICAgewogICAgICAkc3RhdHVzID0gJHRoaXMtPkxhbmcoJ2Vycm9yX25vbGVuZ3RoJyk7CiAgICB9CgogIGlmKCBlbXB0eSgkc3RhdHVzKSAmJiAkdHlwZSA9PSAnZHJvcGRvd24nICYmIGVtcHR5KCRkcm9wZG93bl9kYXRhKSApCiAgICB7CiAgICAgICRzdGF0dXMgPSAkdGhpcy0+TGFuZygnZXJyb3Jfbm9kcm9wZG93bm9wdGlvbnMnKTsKICAgIH0KICAKCiAgaWYoIGVtcHR5KCRzdGF0dXMpICkKICAgIHsKICAgICAgJHF1ZXJ5ID0gJ1VQREFURSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfZmllbGRkZWZzIAogICAgICAgICAgICAgICAgICAgU0VUIG5hbWUgPSA/LCB0eXBlID0gPywgbWF4X2xlbmd0aCA9ID8sIG1vZGlmaWVkX2RhdGUgPSAnLiRkYi0+REJUaW1lU3RhbXAodGltZSgpKS4nLCAKICAgICAgICAgICAgICAgICAgICAgICBhZG1pbl9vbmx5ID0gPywgcHVibGljID0gPywgZHJvcGRvd25fZGF0YSA9ID8KICAgICAgICAgICAgICAgICBXSEVSRSBpZCA9ID8nOwogICAgICAkcmVzID0gJGRiLT5FeGVjdXRlKCRxdWVyeSwgCgkJCSAgYXJyYXkoJG5hbWUsICR0eXBlLCAkbWF4X2xlbmd0aCwgJGFkbWluX29ubHksICRwdWJsaWMsICRkcm9wZG93bl9kYXRhLCAkZmRpZCkpOwogICAgICAKICAgICAgaWYoICEkcmVzICkgZGllKCAkZGItPkVycm9yTXNnKCkgKTsKICAgICAgJHRoaXMtPlNldE1lc3NhZ2UoJHRoaXMtPkxhbmcoJ2ZpZWxkZGVmdXBkYXRlZCcpKTsKICAgICAgJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkLCcnLCcnLCdhZG1pbl9zZXR0aW5ncycpOwogICAgfQogIAogIGVjaG8gJHRoaXMtPlNob3dFcnJvcnMoJHN0YXR1cyk7Cn0KCgojRGlzcGxheSB0ZW1wbGF0ZQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3N0YXJ0Zm9ybScsICR0aGlzLT5DcmVhdGVGb3JtU3RhcnQoJGlkLCAnZWRpdGZpZWxkZGVmJywgJHJldHVybmlkKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignZW5kZm9ybScsICR0aGlzLT5DcmVhdGVGb3JtRW5kKCkpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ25hbWV0ZXh0JywgJHRoaXMtPkxhbmcoJ25hbWUnKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbigndHlwZXRleHQnLCAkdGhpcy0+TGFuZygndHlwZScpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdtYXhsZW5ndGh0ZXh0JywgJHRoaXMtPkxhbmcoJ21heF9sZW5ndGgnKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignaW5wdXRuYW1lJywgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsICduYW1lJywgJG5hbWUsIDIwLCAyNTUpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdpbnB1dG1heGxlbmd0aCcsICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCAnbWF4X2xlbmd0aCcsICRtYXhfbGVuZ3RoLCAyMCwgMjU1KSk7CiRzbWFydHktPmFzc2lnbigndXNlcmVkaXR0ZXh0JywkdGhpcy0+TGFuZygnYWRtaW5fb25seScpKTsKJHNtYXJ0eS0+YXNzaWduKCd1c2Vydmlld3RleHQnLCR0aGlzLT5MYW5nKCdwdWJsaWMnKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfdXNlcmVkaXQnLAoJCSR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsJ2FkbWluX29ubHknLDApLgoJCSR0aGlzLT5DcmVhdGVJbnB1dENoZWNrYm94KCRpZCwgJ2FkbWluX29ubHknLCAxLCAkYWRtaW5fb25seSkpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0X3VzZXJ2aWV3JywKCQkkdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLCdQVUJMSUMnLDApLgoJCSR0aGlzLT5DcmVhdGVJbnB1dGNoZWNrYm94KCRpZCwgJ3B1YmxpYycsIDEsICRwdWJsaWMpKTsKJHNtYXJ0eS0+YXNzaWduKCdmaWVsZHR5cGVzJywkdGhpcy0+R2V0RmllbGRUeXBlcygpKTsKJHNtYXJ0eS0+YXNzaWduKCdmbGR0eXBlJywkdHlwZSk7CiRzbWFydHktPmFzc2lnbignZHJvcGRvd25fZGF0YScsJGRyb3Bkb3duX2RhdGEpOwoKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdoaWRkZW4nLCAKCQkgICAgICAkdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLCAnZmRpZCcsICRmZGlkKS4KCQkgICAgICAkdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLCAnb3JpZ25hbWUnLCAkb3JpZ25hbWUpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzdWJtaXQnLCAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCAnc3VibWl0JywgbGFuZygnc3VibWl0JykpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdjYW5jZWwnLCAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCAnY2FuY2VsJywgbGFuZygnY2FuY2VsJykpKTsKZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCdlZGl0ZmllbGRkZWYudHBsJyk7Cj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/action.exportcsv.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgpmdW5jdGlvbiBwcm9jZXNzX2ZpZWxkKCR0eHQsJGRlbGltID0gJ3wnKQp7CiAgJHR4dCA9IHRyaW0oJHR4dCk7CiAgJHR4dCA9IHN0cl9yZXBsYWNlKCRkZWxpbSwnLSUlLScsJHR4dCk7CiAgJHR4dCA9IHN0cl9yZXBsYWNlKCJcclxuIiwiXG4iLCR0eHQpOwogICR0eHQgPSBzdHJfcmVwbGFjZSgiXHIiLCJcbiIsJHR4dCk7CiAgJHR4dCA9IHN0cl9yZXBsYWNlKCJcbiIsJ15eJywkdHh0KTsKICBpZiggc3Ryc3RyKCR0eHQsJyAnKSAhPT0gRkFMU0UgKQogICAgewogICAgICAkdHh0ID0gJyInLiR0eHQuJyInOwogICAgfQogIHJldHVybiAkdHh0Owp9CgokZGVsaW0gPSAnfCc7CgokcXVlcnkgPSAnU0VMRUNUICogRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfZmllbGRkZWZzIE9SREVSIEJZIGl0ZW1fb3JkZXIgQVNDJzsKJGZpZWxkZGVmcyA9ICRkYi0+R2V0QXJyYXkoJHF1ZXJ5KTsKCi8vIDEuIEJ1aWxkIHRoZSBoZWFkZXIgbGluZQokaGVhZGVyID0gJyNDT01QQU5ZPUMnLiRkZWxpbTsKCi8vIDEuMSBHZXQgdGhlIGNvbXBhbmllcyBoZWFkZXIuCiRxdWVyeSA9ICJTRUxFQ1QgKiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfY29tcGRpcl9jb21wYW5pZXMgT1JERVIgQlkgY29tcGFueV9uYW1lIExJTUlUIDEiOwokcm93ID0gJGRiLT5HZXRSb3coJHF1ZXJ5KTsKdW5zZXQoJHJvd1snY3JlYXRlX2RhdGUnXSk7CnVuc2V0KCRyb3dbJ21vZGlmaWVkX2RhdGUnXSk7CnVuc2V0KCRyb3dbJ2lkJ10pOwp1bnNldCgkcm93Wydvd25lcl9pZCddKTsKdW5zZXQoJHJvd1sncGljdHVyZV9sb2NhdGlvbiddKTsKdW5zZXQoJHJvd1snbG9nb19sb2NhdGlvbiddKTsKdW5zZXQoJHJvd1snaGllcl9pZCddKTsKJHJvd1snaGllcmFyY2h5J10gPSAxOwokY29tcGFueV9maWVsZHMgPSBhcnJheV9rZXlzKCRyb3cpOwokaGVhZGVyIC49IGltcGxvZGUoJGRlbGltLCRjb21wYW55X2ZpZWxkcyk7CiRoZWFkZXIgLj0gJGRlbGltOwoKLy8gMS4xLjEgR2V0IHRoZSBmaWVsZCBkZWZpbml0aW9uIG5hbWVzCmlmKCAkZmllbGRkZWZzICYmIGlzX2FycmF5KCRmaWVsZGRlZnMpICkKICB7CiAgICBmb3JlYWNoKCAkZmllbGRkZWZzIGFzICRvbmUgKQogICAgICB7CglpZiggc3Ryc3RyKCRvbmVbJ25hbWUnXSwnICcpICE9PSBGQUxTRSApCgkgIHsKCSAgICAkaGVhZGVyIC49ICdGSUVMRDoiJy50cmltKCRvbmVbJ25hbWUnXSkuJyInLiRkZWxpbTsKCSAgfQoJZWxzZQoJICB7CgkgICAgJGhlYWRlciAuPSAnRklFTEQ6Jy50cmltKCRvbmVbJ25hbWUnXSkuJGRlbGltOwoJICB9CiAgICAgIH0KICAgICRoZWFkZXIgPSBzdWJzdHIoJGhlYWRlciwwLC0xKnN0cmxlbigkZGVsaW0pKTsKICB9CgovLyAxLjEuMiBHZXQgdGhlIGNhdGVnb3J5IG5hbWVzCiRxdWVyeSA9ICdTRUxFQ1QgbmFtZSBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfY29tcGRpcl9jYXRlZ29yaWVzIE9SREVSIEJZIG5hbWUgQVNDJzsgCiRuYW1lcyA9ICRkYi0+R2V0QXJyYXkoJHF1ZXJ5KTsKaWYoICRuYW1lcyAmJiBpc19hcnJheSgkbmFtZXMpICkKICB7CiAgICAkaGVhZGVyIC49ICRkZWxpbTsKICAgIGZvcmVhY2goICRuYW1lcyBhcyAkb25lICkKICAgICAgewoJaWYoIHN0cnN0cigkb25lWyduYW1lJ10sJyAnKSAhPT0gRkFMU0UgKQoJICB7CgkgICAgJGhlYWRlciAuPSAnQ0FUOiInLnRyaW0oJG9uZVsnbmFtZSddKS4nIicuJGRlbGltOwoJICB9CgllbHNlCgkgIHsKCSAgICAkaGVhZGVyIC49ICdDQVQ6Jy50cmltKCRvbmVbJ25hbWUnXSkuJGRlbGltOwoJICB9CiAgICAgIH0KICAgICRoZWFkZXIgPSBzdWJzdHIoJGhlYWRlciwwLC0xKnN0cmxlbigkZGVsaW0pKTsKICB9CgovLyAxLjIgR2V0IHRoZSBmaWVsZCBkZWZpbml0aW9uIGhlYWRlcgokcXVlcnkgPSAnU0VMRUNUICogRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfZmllbGRkZWZzIE9SREVSIEJZIGl0ZW1fb3JkZXIgTElNSVQgMSc7CiRyb3cgPSAkZGItPkdldFJvdygkcXVlcnkpOwppZiggJHJvdyApCiAgewogICAgdW5zZXQoJHJvd1snaWQnXSk7CiAgICB1bnNldCgkcm93WydpdGVtX29yZGVyJ10pOwogICAgdW5zZXQoJHJvd1snY3JlYXRlX2RhdGUnXSk7CiAgICB1bnNldCgkcm93Wydtb2RpZmllZF9kYXRlJ10pOwogICAgJGZpZWxkZGVmX2ZpZWxkcyA9IGFycmF5X2tleXMoJHJvdyk7CiAgICAkaGVhZGVyIC49ICJcbiNGSUVMRERFRj1GIi4kZGVsaW0uaW1wbG9kZSgkZGVsaW0sJGZpZWxkZGVmX2ZpZWxkcyk7CiAgICAvLyRoZWFkZXIgPSBzdWJzdHIoJGhlYWRlciwwLC0xKnN0cmxlbigkZGVsaW0pKS4iXG4iOwogIH0KCi8vIDEuMyBHZXQgdGhlIGNhdGVnb3JpZXMgZGVmaW5pdGlvbiBoZWFkZXIKJGhlYWRlciAuPSAiXG4jQ0FURUdPUlk9VCIuJGRlbGltLiJuYW1lXG4iOwoKLy8gMS40IEdldCB0aGUgaGllcmFyY2h5IGRlZmluaXRpb24gaGVhZGVyCiRoZWFkZXIgLj0gIiNISUVSQVJDSFk9SCIuJGRlbGltLiJsb25nX25hbWVcbiI7CgovLyAyIGJlZ2luIG91dHB1dC4KJGNzdl9vdXRwdXQgPSAkaGVhZGVyLiJcbiI7CgovLyAyLjEgb3V0cHV0IHRoZSBmaWVsZCBkZWZpbml0aW9ucwpmb3JlYWNoKCAkZmllbGRkZWZzIGFzICRyb3cgKQogIHsKICAgICRsaW5lID0gJ0YnLiRkZWxpbTsKICAgIGZvcmVhY2goICRmaWVsZGRlZl9maWVsZHMgYXMgJGZuICkKICAgICAgewoJJGRhdGEgPSBwcm9jZXNzX2ZpZWxkKCRyb3dbJGZuXSwkZGVsaW0pOwoJJGxpbmUgLj0gJGRhdGEuJGRlbGltOwogICAgICB9CiAgICAkbGluZSA9IHN1YnN0cigkbGluZSwwLC0xKnN0cmxlbigkZGVsaW0pKS4iXG4iOwogICAgJGNzdl9vdXRwdXQgLj0gJGxpbmU7CiAgfQoKLy8gMi4yIG91dHB1dCB0aGUgY2F0ZWdvcmllcwokY3N2X291dHB1dCAuPSAiXG4iOwokcXVlcnkgPSAnU0VMRUNUIERJU1RJTkNUIG5hbWUgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfY2F0ZWdvcmllcyBPUkRFUiBCWSBuYW1lIEFTQyc7CiRkYnIgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5KTsKd2hpbGUoICRkYnIgJiYgJHJvdyA9ICRkYnItPkZldGNoUm93KCkgKQogIHsKICAgICRsaW5lID0gJ1QnLiRkZWxpbTsKICAgICR0eHQgPSBwcm9jZXNzX2ZpZWxkKCRyb3dbJ25hbWUnXSwkZGVsaW0pOwogICAgJGxpbmUgLj0gJHR4dC4kZGVsaW07CiAgICAkbGluZSA9IHN1YnN0cigkbGluZSwwLC0xKnN0cmxlbigkZGVsaW0pKS4iXG4iOwogICAgJGNzdl9vdXRwdXQgLj0gJGxpbmU7CiAgfQoKLy8gMi4zIG91dHB1dCB0aGUgaGllcmFyY2hpZXMKJHF1ZXJ5ID0gJ1NFTEVDVCAqIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9jb21wZGlyX2hpZXIgT1JERVIgQlkgaGllcmFyY2h5JzsKJGRiciA9ICRkYi0+RXhlY3V0ZSgkcXVlcnkpOwp3aGlsZSggJGRiciAmJiAkcm93ID0gJGRici0+RmV0Y2hSb3coKSApCiAgewogICAgJGxpbmUgPSAnSCcuJGRlbGltOwogICAgJHR4dCA9IHByb2Nlc3NfZmllbGQoJHJvd1snbG9uZ19uYW1lJ10sJGRlbGltKTsKICAgICRsaW5lIC49ICR0eHQuJGRlbGltOwogICAgJGxpbmUgPSBzdWJzdHIoJGxpbmUsMCwtMSpzdHJsZW4oJGRlbGltKSkuIlxuIjsKICAgICRjc3Zfb3V0cHV0IC49ICRsaW5lOwogIH0KCgovLyAyLjQgb3V0cHV0IHRoZSBjb21wYW5pZXMuCiRjc3Zfb3V0cHV0IC49ICJcbiI7CiRxdWVyeSA9ICJTRUxFQ1QgYy4qLGgubG9uZ19uYW1lIGFzIGhpZXJhcmNoeSAKICAgICAgICAgICAgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2NvbXBkaXJfY29tcGFuaWVzIGMKICAgICAgICAgICAgTEVGVCBKT0lOICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfY29tcGRpcl9oaWVyIGgKICAgICAgICAgICAgICBPTiBjLmhpZXJfaWQgPSBoLmlkIE9SREVSIEJZIGMuY29tcGFueV9uYW1lIjsKJGZxdWVyeSA9ICdTRUxFQ1QgQS5pZCxBLm5hbWUsQi52YWx1ZSAKICAgICAgICAgICAgIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9jb21wZGlyX2ZpZWxkZGVmcyBBCiAgICAgICAgICAgICBMRUZUIEpPSU4gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9jb21wZGlyX2ZpZWxkdmFscyBCCiAgICAgICAgICAgICAgIE9OIEEuaWQgPSBCLmZpZWxkZGVmX2lkCiAgICAgICAgICAgIFdIRVJFIEIuY29tcGFueV9pZCA9ID8nOwokY3F1ZXJ5ID0gJ1NFTEVDVCBjb21wYW55X2lkLG5hbWUgCiAgICAgICAgICAgICBGUk9NIChTRUxFQ1QgKiBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfY29tcGRpcl9jb21wYW55X2NhdGVnb3JpZXMgV0hFUkUgY29tcGFueV9pZCA9ID8pIEFTIHN1YiAKICAgICAgICAgICAgUklHSFQgSk9JTiAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfY2F0ZWdvcmllcyBBUyBjIE9OIGMuaWQgPSBzdWIuY2F0ZWdvcnlfaWQKICAgICAgICAgICAgT1JERVIgQlkgbmFtZSBBU0MnOwoKJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSk7CndoaWxlICgkZGJyZXN1bHQgJiYgJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKSkKewogIC8vIDIuMS4xIG91dHB1dCBjb21wYW55IGZpZWxkcy4KICAkbGluZSA9ICdDJy4kZGVsaW07CiAgZm9yZWFjaCggJGNvbXBhbnlfZmllbGRzIGFzICRmbiApCiAgICB7CiAgICAgICRsaW5lIC49IHByb2Nlc3NfZmllbGQoJHJvd1skZm5dLCRkZWxpbSkuJGRlbGltOwogICAgfQoKICAvLyAyLjEuMiBub3cgb3V0cHV0IHRoaXMgY29tcGFuaWVzIGZpZWxkcy4KICAkdG1wMSA9ICRkYi0+R2V0QXJyYXkoJGZxdWVyeSxhcnJheSgkcm93WydpZCddKSk7CiAgJHRtcDIgPSBjZ2VfYXJyYXk6OnRvX2hhc2goICR0bXAxLCAnbmFtZScgKTsKICBmb3JlYWNoKCAkZmllbGRkZWZzIGFzICRvbmVfZGVmICkKICAgIHsKICAgICAgJG5hbWUgPSAkb25lX2RlZlsnbmFtZSddOwogICAgICAkdmFsID0gJyc7CiAgICAgIGlmKCBpc3NldCgkdG1wMlskbmFtZV0pICkKCXsKCSAgJHZhbCA9ICR0bXAyWyRuYW1lXVsndmFsdWUnXTsKCX0KICAgICAgZWNobyAiREVCVUc6ICRuYW1lID0gJHZhbDxici8+IjsKICAgICAgJGxpbmUgLj0gcHJvY2Vzc19maWVsZCgkdmFsLCRkZWxpbSkuJGRlbGltOwogICAgfQogIAogIC8vIDIuMS4zIG5vdyBvdXRwdXQgdGhpcyBjb21wYW5pZXMgY2F0ZWdvcmllcwogICR0bXAgPSAkZGItPkdldEFycmF5KCRjcXVlcnksYXJyYXkoJHJvd1snaWQnXSkpOwogIGZvcmVhY2goICR0bXAgYXMgJG9uZSApCiAgICB7CiAgICAgICR2YWwgPSAwOwogICAgICBpZiggJG9uZVsnY29tcGFueV9pZCddID4gMCApCgkkdmFsID0gMTsKICAgICAgJGxpbmUgLj0gJHZhbC4kZGVsaW07CiAgICB9CiAgCiAgJGxpbmUgPSBzdWJzdHIoJGxpbmUsMCwtMSpzdHJsZW4oJGRlbGltKSkuIlxuIjsKICAkY3N2X291dHB1dCAuPSAkbGluZTsKfQoKCi8vSGFjayB0byBtYWtlIHN1cmUgYWxsIG9mIHRoZSBDTVMgYnVmZmVycyBhcmUgb2ZmCiRoYW5kbGVycyA9IG9iX2xpc3RfaGFuZGxlcnMoKTsgCmZvciAoJGNudCA9IDA7ICRjbnQgPCBzaXplb2YoJGhhbmRsZXJzKTsgJGNudCsrKSB7IG9iX2VuZF9jbGVhbigpOyB9CgovL1RoZW4gZm9yY2UgdGhlIG91dHB1dCBub3JtYWxseSBhbmQgZXhpdCBzbyB3ZSBkb24ndCBnZXQgYSBmb290ZXIKaGVhZGVyKCJDb250ZW50LWRpc3Bvc2l0aW9uOiBhdHRhY2htZW50OyBmaWxlbmFtZT1jb21wYW55X2RpcmVjdG9yeS4iIC4gZGF0ZSgiWS1tLWQiKSAuICIuY3N2Iik7CmhlYWRlcigiQ29udGVudC10eXBlOiB0ZXh0L2NzdiIpOwpwcmludCAkY3N2X291dHB1dDsKCmV4aXQ7Cgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.fe_delete.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKJGZldSA9ICR0aGlzLT5HZXRNb2R1bGVJbnN0YW5jZSgnRnJvbnRFbmRVc2VycycpOwppZiggIWlzX29iamVjdCgkZmV1KSApIHJldHVybjsgLy8gbm8gZmV1IG1vZHVsZS4KJGZldV91aWQgPSAkZmV1LT5Mb2dnZWRJbklkKCk7CmlmKCAkZmV1X3VpZCA8PSAwICkgcmV0dXJuOyAvLyBub3QgbG9nZ2VkIGluCgppZiggIWlzc2V0KCRwYXJhbXNbJ2NvbXBhbnlpZCddKSApCiAgewogICAgcmV0dXJuOyAvLyBubyBjb21wYW55IGlkLgogIH0KJGNvbXBhbnlpZCA9IChpbnQpJHBhcmFtc1snY29tcGFueWlkJ107CgovLyBva2F5LCBmaW5kIHRoZSByZWNvcmQgaWQgYW5kIG1ha2Ugc3VyZSBpdCBtYXRjaGVzIHRoZSBvd25lci4KJHF1ZXJ5ID0gJ1NFTEVDVCBpZCBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfY29tcGRpcl9jb21wYW5pZXMKICAgICAgICAgICBXSEVSRSBvd25lcl9pZCA9ID8gYW5kIGlkID0gPyc7CiR0bXAgPSAkZGItPkdldE9uZSgkcXVlcnksYXJyYXkoJGZldV91aWQsJGNvbXBhbnlpZCkpOwppZiggISR0bXAgKQogIHsKICAgIC8vIHJlY29yZCBub3QgZm91bmQuCiAgICByZXR1cm47CiAgfQoKLy8gbm93IGRlbGV0ZSB0aGUgZmllbGR2YWxzCiRxdWVyeSA9ICdERUxFVEUgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfZmllbGR2YWxzIFdIRVJFIGNvbXBhbnlfaWQgPSA/JzsKJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkY29tcGFueWlkKSk7CgovLyBub3cgZGVsZXRlIHRoZSBjYXRlZ29yeSBzdHVmZgokcXVlcnkgPSAnREVMRVRFIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9jb21wZGlyX2NhdGVnb3JpZXMgV0hFUkUgY29tcGFueV9pZCA9ID8nOwokZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KCRjb21wYW55aWQpKTsKCi8vIGFuZCBkZWxldGUgdGhlIGNvbXBhbnkgaXRzZWxmLgokcXVlcnkgPSAnREVMRVRFIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9jb21wZGlyX2NvbXBhbmllcyBXSEVSRSBpZCA9ID8nOwokZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KCRjb21wYW55aWQpKTsKCi8vIG5vdyB3ZSdyZSBkb25lLCByZWRpcmVjdCBiYWNrIHRvIHRoZSBvcmlnaW5hdGluZyBwYWdlLgokdGhpcy0+UmVkaXJlY3RDb250ZW50KCRyZXR1cm5pZCk7CiAgICAgICAgICAgICAgICAgCiMKIyBFT0YKIwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.fe_edit.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgovLyBOT1RFIElGIE5PVCBVU0VEIFBST1BFUkxZIFRISVMgQ09VTEQgQUxMT1cgQU5ZQk9EWSBUTwovLyBFRElUIEFOWUJPRFkgRUxTRVMgUkVDT1JEUwovLyBUT0RPOiBDSEVDSyBJRiBMT0dHRUQgSU4gQU5EIFNJTEVOVExZIEZBSUwgSUYgTk9UCi8vIEFOIE9QVElPTkFMIERFUEVOREVOQ1kgT04gRkVVCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKCiRmZXUgPSAkdGhpcy0+R2V0TW9kdWxlSW5zdGFuY2UoJ0Zyb250RW5kVXNlcnMnKTsKaWYoICEkZmV1ICkKICB7CiAgICBlY2hvICc8aDM+PGZvbnQgY29sb3I9InJlZCI+Jy4kdGhpcy0+TGFuZygnZXJyb3Jfbm9mZXUnKS4iPC9mb250PjwvaDM+XG4iOwogICAgcmV0dXJuOwogIH0KZWxzZSBpZiggISRmZXUtPkxvZ2dlZEluKCkgKQogIHsKICAgIGVjaG8gJzxoMz48Zm9udCBjb2xvcj0icmVkIj4nLiR0aGlzLT5MYW5nKCdlcnJvcl9mZXVfbG9nZ2VkaW4nKS4iPC9mb250PjwvaDM+XG4iOwogIH0KJGZldV91aWQgPSAkZmV1LT5Mb2dnZWRJbklkKCk7CgokdGhldGVtcGxhdGUgPSAnZnJvbnRlbmRmb3JtXycuJHRoaXMtPkdldFByZWZlcmVuY2UoQ09NUEFOWURJUl9QUkVGX0RGTFRGUk9OVEVOREZPUk1fVEVNUExBVEUpOwppZiggaXNzZXQoJHBhcmFtc1snc3VtbWFyeXRlbXBsYXRlJ10gKSApCiAgewogICAgJHRoZXRlbXBsYXRlID0gJ2Zyb250ZW5kZm9ybV8nLiRwYXJhbXNbJ3N1bW1hcnl0ZW1wbGF0ZSddOwogIH0KCmZ1bmN0aW9uIGhhbmRsZV9pbml0aWFsX3VwbG9hZCgkaWQsICRmaWVsZG5hbWUpCnsKCWdsb2JhbCAkZ0NtczsKCSRjb25maWcgPSAkZ0Ntcy0+R2V0Q29uZmlnKCk7CgoJaWYgKCFpc19kaXIoJGNvbmZpZ1sndXBsb2Fkc19wYXRoJ10gLiBESVJFQ1RPUllfU0VQQVJBVE9SIC4gJ2NvbXBhbnlkaXJlY3RvcnknKSkgewoJCUBta2RpcigkY29uZmlnWyd1cGxvYWRzX3BhdGgnXSAuIERJUkVDVE9SWV9TRVBBUkFUT1IgLiAnY29tcGFueWRpcmVjdG9yeScpOwoJfQoJaWYgKCFpc19kaXIoJGNvbmZpZ1sndXBsb2Fkc19wYXRoJ10gLiBESVJFQ1RPUllfU0VQQVJBVE9SIC4gJ2NvbXBhbnlkaXJlY3RvcnknIC4gRElSRUNUT1JZX1NFUEFSQVRPUiAuICd0bXAnKSkgewoJCUBta2RpcigkY29uZmlnWyd1cGxvYWRzX3BhdGgnXSAuIERJUkVDVE9SWV9TRVBBUkFUT1IgLiAnY29tcGFueWRpcmVjdG9yeScgLiBESVJFQ1RPUllfU0VQQVJBVE9SIC4gJ3RtcCcpOwoJfQoJCglAY21zX21vdmVfdXBsb2FkZWRfZmlsZSgkX0ZJTEVTWyRpZCAuICRmaWVsZG5hbWVdWyd0bXBfbmFtZSddLCAkY29uZmlnWyd1cGxvYWRzX3BhdGgnXSAuIERJUkVDVE9SWV9TRVBBUkFUT1IgLiAnY29tcGFueWRpcmVjdG9yeScgLiBESVJFQ1RPUllfU0VQQVJBVE9SIC4gJ3RtcCcgLiBESVJFQ1RPUllfU0VQQVJBVE9SIC4gYmFzZW5hbWUoJF9GSUxFU1skaWQgLiAkZmllbGRuYW1lXVsnbmFtZSddKSk7CgkKCXJldHVybiBiYXNlbmFtZSgkX0ZJTEVTWyRpZCAuICRmaWVsZG5hbWVdWyduYW1lJ10pOwp9CgpmdW5jdGlvbiBoYW5kbGVfdG1wX3VwbG9hZCgkaWQsICRpdGVtaWQsICRmaWxlbmFtZSwgJGZpZWxkbmFtZSwgJiRkYikKewoJZ2xvYmFsICRnQ21zOwoJJGNvbmZpZyA9ICRnQ21zLT5HZXRDb25maWcoKTsKCglpZiAoIWlzX2RpcigkY29uZmlnWyd1cGxvYWRzX3BhdGgnXSAuIERJUkVDVE9SWV9TRVBBUkFUT1IgLiAnY29tcGFueWRpcmVjdG9yeScgLiBESVJFQ1RPUllfU0VQQVJBVE9SIC4gJ2lkJyAuICRpdGVtaWQpKQoJewoJCUBta2RpcigkY29uZmlnWyd1cGxvYWRzX3BhdGgnXSAuIERJUkVDVE9SWV9TRVBBUkFUT1IgLiAnY29tcGFueWRpcmVjdG9yeScgLiBESVJFQ1RPUllfU0VQQVJBVE9SIC4gJ2lkJyAuICRpdGVtaWQpOwoJfQoJaWYgKCRmaWxlbmFtZSA9PSAnZGVsZXRlbWUnKQoJewoJCSRvbGRmaWxlbmFtZSA9ICRkYi0+R2V0T25lKCdTRUxFQ1QgJyAuICRmaWVsZG5hbWUgLiAnIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9jb21wZGlyX2NvbXBhbmllcyBXSEVSRSBpZCA9ID8nLCBhcnJheSgkaXRlbWlkKSk7CgkJaWYgKGlzX2ZpbGUoJGNvbmZpZ1sndXBsb2Fkc19wYXRoJ10gLiBESVJFQ1RPUllfU0VQQVJBVE9SIC4gJ2NvbXBhbnlkaXJlY3RvcnknIC4gRElSRUNUT1JZX1NFUEFSQVRPUiAuICdpZCcgLiAkaXRlbWlkIC4gRElSRUNUT1JZX1NFUEFSQVRPUiAuICRvbGRmaWxlbmFtZSkpCgkJewoJCQl1bmxpbmsoJGNvbmZpZ1sndXBsb2Fkc19wYXRoJ10gLiBESVJFQ1RPUllfU0VQQVJBVE9SIC4gJ2NvbXBhbnlkaXJlY3RvcnknIC4gRElSRUNUT1JZX1NFUEFSQVRPUiAuICdpZCcgLiAkaXRlbWlkIC4gRElSRUNUT1JZX1NFUEFSQVRPUiAuICRvbGRmaWxlbmFtZSk7CgkJfQoJCSRkYi0+RXhlY3V0ZSgnVVBEQVRFICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfY29tcGRpcl9jb21wYW5pZXMgU0VUICcgLiAkZmllbGRuYW1lIC4gJyA9ID8gV0hFUkUgaWQgPSA/JywgYXJyYXkoJycsICRpdGVtaWQpKTsKCX0KCWVsc2UgaWYgKGlzX2ZpbGUoJGNvbmZpZ1sndXBsb2Fkc19wYXRoJ10gLiBESVJFQ1RPUllfU0VQQVJBVE9SIC4gJ2NvbXBhbnlkaXJlY3RvcnknIC4gRElSRUNUT1JZX1NFUEFSQVRPUiAuICd0bXAnIC4gRElSRUNUT1JZX1NFUEFSQVRPUiAuICRmaWxlbmFtZSkpCgl7CgkJJG9sZGZpbGVuYW1lID0gJGRiLT5HZXRPbmUoJ1NFTEVDVCAnIC4gJGZpZWxkbmFtZSAuICcgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfY29tcGFuaWVzIFdIRVJFIGlkID0gPycsIGFycmF5KCRpdGVtaWQpKTsKCQlpZiAoaXNfZmlsZSgkY29uZmlnWyd1cGxvYWRzX3BhdGgnXSAuIERJUkVDVE9SWV9TRVBBUkFUT1IgLiAnY29tcGFueWRpcmVjdG9yeScgLiBESVJFQ1RPUllfU0VQQVJBVE9SIC4gJ2lkJyAuICRpdGVtaWQgLiBESVJFQ1RPUllfU0VQQVJBVE9SIC4gJG9sZGZpbGVuYW1lKSkKCQl7CgkJCXVubGluaygkY29uZmlnWyd1cGxvYWRzX3BhdGgnXSAuIERJUkVDVE9SWV9TRVBBUkFUT1IgLiAnY29tcGFueWRpcmVjdG9yeScgLiBESVJFQ1RPUllfU0VQQVJBVE9SIC4gJ2lkJyAuICRpdGVtaWQgLiBESVJFQ1RPUllfU0VQQVJBVE9SIC4gJG9sZGZpbGVuYW1lKTsKCQl9CgkJQHJlbmFtZSgkY29uZmlnWyd1cGxvYWRzX3BhdGgnXSAuIERJUkVDVE9SWV9TRVBBUkFUT1IgLiAnY29tcGFueWRpcmVjdG9yeScgLiBESVJFQ1RPUllfU0VQQVJBVE9SIC4gJ3RtcCcgLiBESVJFQ1RPUllfU0VQQVJBVE9SIC4gJGZpbGVuYW1lLCAkY29uZmlnWyd1cGxvYWRzX3BhdGgnXSAuIERJUkVDVE9SWV9TRVBBUkFUT1IgLiAnY29tcGFueWRpcmVjdG9yeScgLiBESVJFQ1RPUllfU0VQQVJBVE9SIC4gJ2lkJyAuICRpdGVtaWQgLiBESVJFQ1RPUllfU0VQQVJBVE9SIC4gJGZpbGVuYW1lKTsKCQkkZGItPkV4ZWN1dGUoJ1VQREFURSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfY29tcGFuaWVzIFNFVCAnIC4gJGZpZWxkbmFtZSAuICcgPSA/IFdIRVJFIGlkID0gPycsIGFycmF5KCRmaWxlbmFtZSwgJGl0ZW1pZCkpOwoJfQp9CgovLwovLyBTdHJpcCBhbGwgcGFyYW1zIG9mIHRoZSBjZF8gcHJlZml4Ci8vCiRwMiA9IGFycmF5KCk7CmZvcmVhY2goICRwYXJhbXMgYXMgJGtleSA9PiAkdmFsdWUgKQp7CiAgJHQgPSBzdWJzdHIoJGtleSwwLDMpOwogIGlmKCAkdCA9PSAnY2RfJyApCiAgICB7CiAgICAgICRuZXdrZXkgPSBzdWJzdHIoJGtleSwzKTsKICAgICAgJHAyWyRuZXdrZXldID0gJHZhbHVlOwogICAgfQogIGVsc2UKICAgIHsKICAgICAgJHAyWyRrZXldID0gJHZhbHVlOwogICAgfQp9CiRwYXJhbXMgPSAkcDI7CgovLyBnZXQgdGhlIGNvbXBhbnkgaWQuCiRjb21wYW55aWQgPSAtMTsKaWYoIGlzc2V0KCAkcGFyYW1zWydjb21wYW55aWQnXSApICkKICB7CiAgICAkY29tcGFueWlkID0gKGludCkkcGFyYW1zWydjb21wYW55aWQnXTsKICB9CiRzZWxfY2F0ZWdvcmllcyA9IGFycmF5KCk7CgovLyBnZXQgZmllbGQgZGVmaW5pdGlvbnMuCiRmaWVsZGRlZnMgPSBhcnJheSgpOwppZiggJGNvbXBhbnlpZCA+IDAgKQogIHsKICAgICR0bXAgPSAkdGhpcy0+R2V0RmllbGREZWZzRm9yQ29tcGFueSgkY29tcGFueWlkLGZhbHNlLGZhbHNlKTsKICB9CmVsc2UKICB7CiAgICAkdG1wID0gJHRoaXMtPkdldEZpZWxkRGVmcyhmYWxzZSxmYWxzZSk7CiAgfQppZiggaXNfYXJyYXkoJHRtcCkgJiYgY291bnQoJHRtcCkgKQogIHsKCWZvcmVhY2goICR0bXAgYXMgJG9uZSApCgkgIHsKCQkkZmllbGRkZWZzWyRvbmUtPmlkXSA9ICRvbmU7CgkgIH0KICB9CgovLyBnZXQgY2F0ZWdvcmllcy4KJGNhdGVnb3JpZXMgPSBhcnJheSgpOwppZiggJGNvbXBhbnlpZCA+IDAgKQogIHsKICAgICRjYXRlZ29yaWVzID0gJHRoaXMtPkdldENhdGVnb3JpZXNGb3JDb21wYW55KCRjb21wYW55aWQsZmFsc2UpOwogIH0KZWxzZQogIHsKICAgICRjYXRlZ29yaWVzID0gJHRoaXMtPkdldENhdGVnb3JpZXMoKTsKICB9CgoKJGltYWdlID0gJyc7CmlmIChpc3NldCgkX0ZJTEVTWyRpZCAuICdjZF9pbWFnZXVwbG9hZCddKSAmJiAkX0ZJTEVTWyRpZCAuICdjZF9pbWFnZXVwbG9hZCddWyd0bXBfbmFtZSddICE9ICcnKQp7CQoJJGltYWdlID0gaGFuZGxlX2luaXRpYWxfdXBsb2FkKCRpZCwgJ2NkX2ltYWdldXBsb2FkJyk7Cn0KZWxzZSBpZiAoaXNzZXQoJHBhcmFtc1snY2RfZGVsZXRlaW1hZ2UnXSkpCnsKCSRpbWFnZSA9ICdkZWxldGVtZSc7Cn0KZWxzZSBpZiAoaXNzZXQoJHBhcmFtc1snY2RfaW1hZ2VjdXJyZW50J10pKQp7CgkkaW1hZ2UgPSAkcGFyYW1zWydjZF9pbWFnZWN1cnJlbnQnXTsKfQoKCiR1cmwgPSAnJzsKJGxvZ28gPSAnJzsKaWYgKGlzc2V0KCRfRklMRVNbJGlkIC4gJ2NkX2xvZ291cGxvYWQnXSkgJiYgCiAgICAkX0ZJTEVTWyRpZCAuICdjZF9sb2dvdXBsb2FkJ11bJ3RtcF9uYW1lJ10gIT0gJycpCnsKCSRsb2dvID0gaGFuZGxlX2luaXRpYWxfdXBsb2FkKCRpZCwgJ2NkX2xvZ291cGxvYWQnKTsKfQplbHNlIGlmIChpc3NldCgkcGFyYW1zWydjZF9kZWxldGVsb2dvJ10pKQp7CgkkbG9nbyA9ICdkZWxldGVtZSc7Cn0KZWxzZSBpZiAoaXNzZXQoJHBhcmFtc1snY2RfbG9nb2N1cnJlbnQnXSkpCnsKCSRsb2dvID0gJHBhcmFtc1snY2RfbG9nb2N1cnJlbnQnXTsKfQoKJHN0YXR1cyA9ICdkcmFmdCc7CmlmKCAkY29tcGFueWlkIDw9IDAgKQogIHsKICAgICRzdGF0dXMgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZnJvbnRlbmRfbmV3c3RhdHVzJywnZHJhZnQnKTsKICB9CmlmKCAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZnJvbnRlbmRfY2hhbmdlc3RhdHVzJykgJiYgaXNzZXQoJHBhcmFtc1snc3RhdHVzJ10pICkKICB7CiAgICAkc3RhdHVzID0gdHJpbSgkcGFyYW1zWydzdGF0dXMnXSk7CiAgfQoKJGNvbXBhbnlfbmFtZSA9ICcnOwppZiAoaXNzZXQoJHBhcmFtc1snY29tcGFueV9uYW1lJ10pKQp7CgkkY29tcGFueV9uYW1lID0gJHBhcmFtc1snY29tcGFueV9uYW1lJ107Cn0KCiRhZGRyZXNzID0gJyc7CmlmIChpc3NldCgkcGFyYW1zWydhZGRyZXNzJ10pKQp7CgkkYWRkcmVzcyA9ICRwYXJhbXNbJ2FkZHJlc3MnXTsKfQoKJHRlbGVwaG9uZSA9ICcnOwppZiAoaXNzZXQoJHBhcmFtc1sndGVsZXBob25lJ10pKQp7CgkkdGVsZXBob25lID0gJHBhcmFtc1sndGVsZXBob25lJ107Cn0KCiRoaWVyX2lkID0gJyc7CmlmIChpc3NldCgkcGFyYW1zWydoaWVyX2lkJ10pKQp7CgkkaGllcl9pZCA9ICRwYXJhbXNbJ2hpZXJfaWQnXTsKfQoKJGxhdGl0dWRlID0gJyc7CmlmIChpc3NldCgkcGFyYW1zWydsYXRpdHVkZSddKSkKewoJJGxhdGl0dWRlID0gJHBhcmFtc1snbGF0aXR1ZGUnXTsKfQoKJGxvbmdpdHVkZSA9ICcnOwppZiAoaXNzZXQoJHBhcmFtc1snbG9uZ2l0dWRlJ10pKQp7CgkkbG9uZ2l0dWRlID0gJHBhcmFtc1snbG9uZ2l0dWRlJ107Cn0KCiRmYXggPSAnJzsKaWYgKGlzc2V0KCRwYXJhbXNbJ2ZheCddKSkKewoJJGZheCA9ICRwYXJhbXNbJ2ZheCddOwp9CgokY29udGFjdF9lbWFpbCA9ICcnOwppZiAoaXNzZXQoJHBhcmFtc1snY29udGFjdF9lbWFpbCddKSkKewoJJGNvbnRhY3RfZW1haWwgPSAkcGFyYW1zWydjb250YWN0X2VtYWlsJ107Cn0KCiR3ZWJzaXRlID0gJyc7CmlmIChpc3NldCgkcGFyYW1zWyd3ZWJzaXRlJ10pKQp7Cgkkd2Vic2l0ZSA9ICRwYXJhbXNbJ3dlYnNpdGUnXTsKfQoKJGRldGFpbHMgPSAnJzsKaWYgKGlzc2V0KCRwYXJhbXNbJ2RldGFpbHMnXSkpCnsKCSRkZXRhaWxzID0gY21zX2h0bWxfZW50aXR5X2RlY29kZSgkcGFyYW1zWydkZXRhaWxzJ10pOwp9Cgokb3JpZ25hbWUgPSAnJzsKaWYgKGlzc2V0KCRwYXJhbXNbJ29yaWduYW1lJ10pKQp7Cgkkb3JpZ25hbWUgPSAkcGFyYW1zWydvcmlnbmFtZSddOwp9CgokYmVoYXZpb3VyID0gJyc7CgppZiggaXNzZXQoICRwYXJhbXNbJ3N1Ym1pdCddICkgKQogIHsKICAgICRlcnJvciA9IGZhbHNlOwogICAgaWYoICRjb21wYW55X25hbWUgPT0gJycgKQogICAgICB7CgkJJHNtYXJ0eS0+YXNzaWduKCdtZXNzYWdlJywkdGhpcy0+TGFuZygnZXJyb3JfY29tcGFueW5hbWUnKSk7CgkJJGVycm9yID0gdHJ1ZTsKICAgICAgfQogICAgZWxzZSBpZiggJGNvbXBhbnlfbmFtZSAhPSAkb3JpZ25hbWUgKQogICAgICB7CgkJLy8gY2hlY2sgdG8gbWFrZSBzdXJlIHRoYXQgdGhlIGNvbXBhbnkgbmFtZSBpc24ndCBhbHJlYWR5CgkJLy8gdXNlZAoJCSRxdWVyeSA9ICdTRUxFQ1QgaWQgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfY29tcGFuaWVzCiAgICAgICAgICAgICAgICAgICBXSEVSRSBjb21wYW55X25hbWUgPSA/IEFORCBpZCAhPSA/JzsKCQkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxdWVyeSwgYXJyYXkoICRjb21wYW55X25hbWUsICRjb21wYW55aWQgKSk7CgkJaWYoICRkYnJlc3VsdCAmJiAkZGJyZXN1bHQtPlJlY29yZENvdW50KCkgPiAwICkKCQkgIHsKCQkJJHNtYXJ0eS0+YXNzaWduKCdtZXNzYWdlJywkdGhpcy0+TGFuZygnZXJyb3JfY29tcGFueW5hbWVfaW51c2UnKSk7CgkJCSRlcnJvciA9IHRydWU7CgkJICB9CiAgICAgIH0KCglpZiggJHRoaXMtPkdldFByZWZlcmVuY2UoJ3VybF9yZXF1aXJlZCcsMCkgJiYgJGNvbXBhbnlpZCA8PSAwICkKCSAgewoJCSR1cmwgPSBjZF91dGlsczo6Z2VuZXJhdGVfdXJsKCRjb21wYW55X25hbWUpOwoJCWlmKCAhJHVybCApCgkJICB7CgkJCSRlcnJvciA9IHRydWU7CgkJICB9CgkgIH0KCiAgICBpZiggISRlcnJvciApCiAgICAgIHsKCSRub3cgPSB0cmltKCRkYi0+REJUaW1lU3RhbXAodGltZSgpKSwiJyIpOwoJaWYoICRjb21wYW55aWQgPD0gMCApCgkgIHsKCSAgICAvLyAKCSAgICAvLyBpbnNlcnQgdGhlIGNvbXBhbnkgcmVjb3JkCgkgICAgLy8KCSAgICAkYmVoYXZpb3VyID0gJ2luc2VydCc7CgkgICAgJHF1ZXJ5ID0gJ0lOU0VSVCBJTlRPICcuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfY29tcGRpcl9jb21wYW5pZXMKICAgICAgICAgICAgICAgICAgICAgICAoY29tcGFueV9uYW1lLHVybCxhZGRyZXNzLHRlbGVwaG9uZSxoaWVyX2lkLGxhdGl0dWRlLGxvbmdpdHVkZSxmYXgsY29udGFjdF9lbWFpbCwKICAgICAgICAgICAgICAgICAgICAgICAgd2Vic2l0ZSxkZXRhaWxzLGNyZWF0ZV9kYXRlLG1vZGlmaWVkX2RhdGUsCiAgICAgICAgICAgICAgICAgICAgICAgIHN0YXR1cyxvd25lcl9pZCkKICAgICAgICAgICAgICAgICAgICAgIFZBTFVFUyAoPyw/LD8sPyw/LD8sPyw/LD8sPyw/LD8sPyw/LD8pIjsKCSAgICAkcGFybXMgPSBhcnJheSgkY29tcGFueV9uYW1lLCR1cmwsJGFkZHJlc3MsJHRlbGVwaG9uZSwkaGllcl9pZCwkbGF0aXR1ZGUsJGxvbmdpdHVkZSwkZmF4LCRjb250YWN0X2VtYWlsLAoJCQkgICAkd2Vic2l0ZSwkZGV0YWlscywkbm93LCRub3csJHN0YXR1cywkZmV1X3VpZCk7CgkgICAgJGRiciA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksJHBhcm1zKTsKCSAgICAkY29tcGFueWlkID0gJGRiLT5JbnNlcnRfSUQoKTsKCSAgICBpZiggISRkYnIgKQoJICAgICAgewoJCWRpZSgkZGItPnNxbC4nPGJyLz4nLiRkYi0+RXJyb3JNc2coKSk7CgkgICAgICB9CgkgIH0KCWVsc2UKCSAgewoJICAgIC8vCgkgICAgLy8gdXBkYXRlIHRoZSBjb21wYW55IHJlY29yZAoJICAgIC8vCgkgICAgJGJlaGF2aW91ciA9ICd1cGRhdGUnOwoJICAgIGlmKCAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZnJvbnRlbmRfY2hhbmdlc3RhdHVzJykgKQoJICAgICAgewoJCSRxdWVyeSA9ICdVUERBVEUgJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9jb21wZGlyX2NvbXBhbmllcwogICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNFVCBjb21wYW55X25hbWUgPSA/LCBhZGRyZXNzID0gPywgdGVsZXBob25lID0gPywgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpZXJfaWQgPSA/LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYXRpdHVkZSA9ID8sIGxvbmdpdHVkZSA9ID8sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZheCA9ID8sIGNvbnRhY3RfZW1haWwgPSA/LCB3ZWJzaXRlID0gPywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGV0YWlscyA9ID8sIHN0YXR1cyA9ID8sIG1vZGlmaWVkX2RhdGUgPSA/CiAgICAgICAgICAgICAgICAgICAgICAgICAgIFdIRVJFIGlkID0gPyBBTkQgb3duZXJfaWQgPSA/JzsKCQkkcGFybXMgPSBhcnJheSgkY29tcGFueV9uYW1lLCRhZGRyZXNzLCR0ZWxlcGhvbmUsJGhpZXJfaWQsCgkJCSAgICAgICAkbGF0aXR1ZGUsJGxvbmdpdHVkZSwkZmF4LCRjb250YWN0X2VtYWlsLAoJCQkgICAgICAgJHdlYnNpdGUsJGRldGFpbHMsJHN0YXR1cywkbm93LCRjb21wYW55aWQsJGZldV91aWQpOwoJCSRkYi0+RXhlY3V0ZSggJHF1ZXJ5LCAkcGFybXMgKTsKCSAgICAgIH0KCSAgICBlbHNlCgkgICAgICB7CgkJLy8gaGFjay4uLiBzaG91bGQgcmVhZCB0aGUgcmVjb3JkIGZpcnN0LCB0aGVuIG1lcmdlIGRhdGEsCgkJLy8gdGhlbiB3cml0ZS4KCQkkcXVlcnkgPSAnVVBEQVRFICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfY29tcGRpcl9jb21wYW5pZXMKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTRVQgY29tcGFueV9uYW1lID0gPywgYWRkcmVzcyA9ID8sIHRlbGVwaG9uZSA9ID8sIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoaWVyX2lkID0gPywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGF0aXR1ZGUgPSA/LCBsb25naXR1ZGUgPSA/LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmYXggPSA/LCBjb250YWN0X2VtYWlsID0gPywgd2Vic2l0ZSA9ID8sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRldGFpbHMgPSA/LCBtb2RpZmllZF9kYXRlID0gPwogICAgICAgICAgICAgICAgICAgICAgICAgICBXSEVSRSBpZCA9ID8gQU5EIG93bmVyX2lkID0gPyc7CgkJJHBhcm1zID0gYXJyYXkoJGNvbXBhbnlfbmFtZSwkYWRkcmVzcywkdGVsZXBob25lLCRoaWVyX2lkLAoJCQkgICAgICAgJGxhdGl0dWRlLCRsb25naXR1ZGUsJGZheCwkY29udGFjdF9lbWFpbCwKCQkJICAgICAgICR3ZWJzaXRlLCRkZXRhaWxzLCRub3csJGNvbXBhbnlpZCwkZmV1X3VpZCk7CgkJJGRiLT5FeGVjdXRlKCAkcXVlcnksICRwYXJtcyApOwoJICAgICAgfQoJICB9CgkKCS8vCgkvLyBVcGRhdGUgdGhlIGN1c3RvbSBmaWVsZHMKCS8vCglpZiggY291bnQoJGZpZWxkZGVmcykgKQoJICB7CgkgICAgZm9yZWFjaCggJGZpZWxkZGVmcyBhcyAkZmlkID0+ICRmaWVsZGRlZiApCgkgICAgICB7CgkJJGRlc3RkaXIgPSBjbXNfam9pbl9wYXRoKCRnQ21zLT5jb25maWdbJ3VwbG9hZHNfcGF0aCddLCdjb21wYW55ZGlyZWN0b3J5JywnaWQnLiRjb21wYW55aWQpOwoJCXN3aXRjaCggJGZpZWxkZGVmLT50eXBlICkKCQkgIHsKCQkgIGNhc2UgJ2ltYWdlJzoKCQkgICAgLy8gaGFuZGxlIHRoZSBwb3NzaWJpbGl0eSB3aGVyZSB0aGUgdXNlciBoYXMgY2hvc2VuIHRvIGRlbGV0ZSBhIGZpbGUuCgkJICAgIGlmKCBpc3NldCgkcGFyYW1zWydkZWxldGVmaWxlJ11bJ2ZpZWxkLScuJGZpZWxkZGVmLT5pZF0pICYmICRmaWVsZGRlZi0+dmFsdWUgIT0gJycgKQoJCSAgICAgIHsKCQkJLy8gd2UndmUgYmVlbiB0b2xkIHRvIGRlbGV0ZSB0aGUgZmlsZS4KCQkJQHVubGluayhjbXNfam9pbl9wYXRoKCRkZXN0ZGlyLCRmaWVsZGRlZi0+dmFsdWUpKTsKCQkJQHVubGluayhjbXNfam9pbl9wYXRoKCRkZXN0ZGlyLCd0aHVtYl8nLiRmaWVsZGRlZi0+dmFsdWUpKTsKCQkJQHVubGluayhjbXNfam9pbl9wYXRoKCRkZXN0ZGlyLCdwcmV2aWV3XycuJGZpZWxkZGVmLT52YWx1ZSkpOwoJCQl1bnNldCgkcGFyYW1zWydjdXN0b21maWVsZCddWydmaWVsZC0nLiRmaWVsZGRlZi0+aWRdKTsKCQkgICAgICB9CgkJICAgIGNnZV9kaXI6Om1rZGlycigkZGVzdGRpcik7CgkJICAgICR1cGxvYWRlciA9IGNnZV9zZXR1cDo6Z2V0X3VwbG9hZGVyKCRpZCwkZGVzdGRpcik7CgkJICAgICR0bXAgPSAkdXBsb2FkZXItPmhhbmRsZV91cGxvYWQoJ2N1c3RvbWZpZWxkJywnJywnZmllbGQtJy4kZmllbGRkZWYtPmlkKTsKCQkgICAgaWYoICEkdG1wICkKCQkgICAgICB7CgkJCWlmKCAkdXBsb2FkZXItPmdldF9lcnJvcigpICE9IGNnX2ZpbGV1cGxvYWQ6Ok5PRklMRSApCgkJCSAgewoJCQkgICAgJGVycm9yID0gJHRoaXMtPkdldFVwbG9hZEVycm9yTWVzc2FnZSgkdXBsb2FkZXItPmdldF9lcnJvcigpKTsKCQkJICAgIGJyZWFrOwoJCQkgIH0KCQkgICAgICB9CgkJICAgIGVsc2UKCQkgICAgICB7CgkJCS8vIHdlJ3JlIHVwbG9hZGluZyBhIG5ldyBmaWxlIHNvIGRlbGV0ZSB0aGUgb2xkIG9uZS4KCQkJQHVubGluayhjbXNfam9pbl9wYXRoKCRkZXN0ZGlyLCRmaWVsZGRlZi0+dmFsdWUpKTsKCQkJQHVubGluayhjbXNfam9pbl9wYXRoKCRkZXN0ZGlyLCd0aHVtYl8nLiRmaWVsZGRlZi0+dmFsdWUpKTsKCQkJQHVubGluayhjbXNfam9pbl9wYXRoKCRkZXN0ZGlyLCdwcmV2aWV3XycuJGZpZWxkZGVmLT52YWx1ZSkpOwoJCQkKCQkJJHBhcmFtc1snY3VzdG9tZmllbGQnXVsnZmllbGQtJy4kZmllbGRkZWYtPmlkXSA9ICR0bXA7CgkJICAgICAgfQoJCSAgfQoJICAgICAgfQoKCSAgICAkZGItPkV4ZWN1dGUoJ0RFTEVURSBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfY29tcGRpcl9maWVsZHZhbHMKICAgICAgICAgICAgICAgICAgIFdIRVJFIGNvbXBhbnlfaWQgPSA/JywgYXJyYXkoJGNvbXBhbnlpZCkpOwoJICAgIGlmKCBpc3NldCggJHBhcmFtc1snY3VzdG9tZmllbGQnXSApICkKCSAgICAgIHsKCQlmb3JlYWNoKCAkcGFyYW1zWydjdXN0b21maWVsZCddIGFzICRrPT4kdiApCgkJICB7CgkJICAgIGlmKHN0YXJ0c3dpdGgoJGssJ2ZpZWxkLScpKSB7CgkJICAgICAgJGZpZCA9IHN1YnN0cigkayw2KTsKCQkgICAgICAKCQkgICAgICAvLyBkbyBhbiBlbnRpdHkgZGVjb2RlIG9uIHRleHQgYXJlYSBmaWVsZHMKCQkgICAgICBpZiggJGZpZWxkZGVmc1skZmlkXS0+dHlwZSA9PSAndGV4dGFyZWEnIHx8ICRmaWVsZGRlZnNbJGZpZF0tPnR5cGUgPT0gJ3RleHRib3gnICkKCQkJewoJCQkgICR2ID0gY21zX2h0bWxfZW50aXR5X2RlY29kZSgkdik7CgkJCX0KCQkgICAgICAKCQkgICAgICAkZmllbGRkZWZzWyRmaWRdLT52YWx1ZSA9ICR2OwoKCQkgICAgICAkcXVlcnkgPSAnSU5TRVJUIElOVE8gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9jb21wZGlyX2ZpZWxkdmFscwogICAgICAgICAgICAgICAgICAgICAgICAgKGNvbXBhbnlfaWQsIGZpZWxkZGVmX2lkLCB2YWx1ZSwgY3JlYXRlX2RhdGUsIG1vZGlmaWVkX2RhdGUpIFZBTFVFUyAoPyw/LD8sPyw/KSc7CgkJICAgICAgJHBhcm1zID0gYXJyYXkoICRjb21wYW55aWQsICRmaWQsICR2LCAkbm93LCAkbm93ICk7CgkJICAgICAgJGRiciA9ICRkYi0+RXhlY3V0ZSggJHF1ZXJ5LCAkcGFybXMgKTsKCQkgICAgfQoJCSAgfQoJICAgICAgfQoJICB9CgoJLy8KCS8vIFVwZGF0ZSB0aGUgY2F0ZWdvcmllcwoJLy8KCSRkYi0+RXhlY3V0ZSgnREVMRVRFIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9jb21wZGlyX2NvbXBhbnlfY2F0ZWdvcmllcyBXSEVSRSBjb21wYW55X2lkID0gPycsIGFycmF5KCRjb21wYW55aWQpKTsKCQoJaWYoIGlzc2V0KCAkcGFyYW1zWydjYXRlZ29yaWVzJ10gKSApCgkgIHsKCSAgICAkcXVlcnkgPSAnSU5TRVJUIElOVE8gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9jb21wZGlyX2NvbXBhbnlfY2F0ZWdvcmllcyAKICAgICAgICAgICAgICAgICAgICAgIChjb21wYW55X2lkLCBjYXRlZ29yeV9pZCwgY3JlYXRlX2RhdGUsIG1vZGlmaWVkX2RhdGUgKQogICAgICAgICAgICAgICAgICAgICAgVkFMVUVTICg/LD8sPyw/KSc7CgkgICAgZm9yZWFjaCggJHBhcmFtc1snY2F0ZWdvcmllcyddIGFzICRrPT4kdiApCgkgICAgICB7CgkJCgkJJHBhcm1zID0gYXJyYXkoJGNvbXBhbnlpZCwkdiwkbm93LCRub3cpOwoJCSRkYnIgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LCRwYXJtcyk7CgkgICAgICB9CgkgIH0KCgkvLwoJLy8gSGFuZGxlIGFueSBpbWFnZSBzdHVmZgoJLy8KCWlmICgkaW1hZ2UgIT0gJycpCgkgIHsKCSAgICBoYW5kbGVfdG1wX3VwbG9hZCgkaWQsICRjb21wYW55aWQsICRpbWFnZSwgJ3BpY3R1cmVfbG9jYXRpb24nLCAkZGIpOwoJICB9CgkKCWlmICgkbG9nbyAhPSAnJykKCSAgewoJICAgIGhhbmRsZV90bXBfdXBsb2FkKCRpZCwgJGNvbXBhbnlpZCwgJGxvZ28sICdsb2dvX2xvY2F0aW9uJywgJGRiKTsKCSAgfQoKCS8vCgkvLyBVcGRhdGUgU2VhcmNoCgkvLwoJJG1vZHVsZSA9JiAkdGhpcy0+R2V0TW9kdWxlSW5zdGFuY2UoJ1NlYXJjaCcpOwoJaWYgKCRtb2R1bGUgIT0gRkFMU0UpCgkgIHsKCSAgICAkbW9kdWxlLT5BZGRXb3JkcygkdGhpcy0+R2V0TmFtZSgpLCAkY29tYW55aWQsICdjb21wYW55JywgaW1wbG9kZSgnICcsIGFycmF5KCRjb21wYW55X25hbWUsICRjb21wYW55X25hbWUsICRhZGRyZXNzLCAkdGVsZXBob25lLCAkZmF4LCAkZGV0YWlscykpKTsKCSAgfQoJCiAgICAgIH0gLy8gaWYoICEkZXJyb3IgKQoKICAgIGlmKCAoJGdyb3VwaWQgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZnJvbnRlbmRfZW1haWxncm91cCcsLTEpKSA+IDAgKQogICAgICB7CgkkYWRkcmVzc2VzID0gYXJyYXkoKTsKCSR1c2Vyb3BzID0gJGdDbXMtPkdldFVzZXJPcGVyYXRpb25zKCk7CgkkdXNlcnMgPSAkdXNlcm9wcy0+TG9hZFVzZXJzSW5Hcm91cCgkZ3JvdXBpZCk7Cglmb3IoICRpID0gMDsgJGkgPCBjb3VudCgkdXNlcnMpOyAkaSsrICkKCSAgewoJICAgICR1c2VyID0gJHVzZXJzWyRpXTsKCSAgICBpZiggIWVtcHR5KCR1c2VyLT5lbWFpbCkgKQoJICAgICAgewoJCSRhZGRyZXNzZXNbXSA9ICR1c2VyLT5lbWFpbDsKCSAgICAgIH0KCSAgfQoKCWlmKCBjb3VudCgkYWRkcmVzc2VzKSApCgkgIHsKCSAgICBpZiggKCRiZWhhdmlvdXIgPT0gJ2luc2VydCcgJiYgJHRoaXMtPkdldFByZWZlcmVuY2UoJ2Zyb250ZW5kX2VtYWlsb25hZGQnKSkgfHwKCQkoJGJlaGF2aW91ciA9PSAndXBkYXRlJyAmJiAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZnJvbnRlbmRfZW1haWxvbmVkaXQnKSkgKQoJICAgICAgewoJCS8vIHdlIGNhbiBzZW5kIHNvbWV0aGluZyB0byBzb21lYm9keS4KCQkkdmFycyA9IGFycmF5KCdjb21wYW55X25hbWUnLCdhZGRyZXNzJywndGVsZXBob25lJywnbGF0aXR1ZGUnLCdsb25naXR1ZGUnLAoJCQkgICAgICAnZmF4JywnY29udGFjdF9lbWFpbCcsJ3dlYnNpdGUnLCdkZXRhaWxzJywnZmV1X3VpZCcpOwoJCWZvcmVhY2goICR2YXJzIGFzICRvbmUgKQoJCSAgewoJCSAgICAkc21hcnR5LT5hc3NpZ24oJG9uZSwkJG9uZSk7CgkJICB9CgkJaWYoIGNvdW50KCRmaWVsZGRlZnMpICkKCQkgIHsKCQkgICAgJHNtYXJ0eS0+YXNzaWduKCdmaWVsZHMnLCRmaWVsZGRlZnMpOwoJCSAgfQoJCWlmKCBpc3NldCggJHBhcmFtc1snY2F0ZWdvcmllcyddICkgJiYgY291bnQoJGNhdGVnb3JpZXMpICkKCQkgIHsKCQkgICAgJGNhdHMgPSBhcnJheSgpOwoJCSAgICBmb3JlYWNoKCAkcGFyYW1zWydjYXRlZ29yaWVzJ10gYXMgJGsgPT4gJHYgKQoJCSAgICAgIHsKCQkJJGNhdHNbXSA9ICR2OwoJCSAgICAgIH0KCgkJICAgICRjYXRuYW1lcyA9IGFycmF5KCk7CgkJICAgIGZvcmVhY2goICRjYXRlZ29yaWVzIGFzICRvbmVjYXQgKQoJCSAgICAgIHsKCQkJaWYoIGluX2FycmF5KCRvbmVjYXQtPmlkLCRjYXRzKSApCgkJCSAgewoJCQkgICAgJGNhdG5hbWVzW10gPSAkb25lY2F0LT5uYW1lOwoJCQkgIH0KCQkgICAgICB9CgkJICAgICRzbWFydHktPmFzc2lnbignY2F0ZWdvcmllcycsJGNhdG5hbWVzKTsKCQkgIH0KCQkKCQkkZmV1ID0gJHRoaXMtPkdldE1vZHVsZUluc3RhbmNlKCdGcm9udEVuZFVzZXJzJyk7CgkJJHJlcyA9ICRmZXUtPkdldFVzZXJJbmZvKCRmZXVfdWlkKTsKCQlpZiggJHJlc1swXSA9PSBUUlVFICkKCQkgIHsKCQkgICAgJHNtYXJ0eS0+YXNzaWduKCd1c2VyaW5mbycsJHJlc1sxXSk7CgkJICB9CgoJCSRib2R5ID0gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhYmFzZSgnYWRtaW5fZmVlZGl0X2VtYWlsX3RlbXBsYXRlJyk7CgkJJHN1YmplY3QgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnYWRtaW5fZmVlZGl0X2VtYWlsX3N1YmplY3QnKTsKCQkKCQkkbWFpbGVyID0gJHRoaXMtPkdldE1vZHVsZUluc3RhbmNlKCdDTVNNYWlsZXInKTsKCQkkbWFpbGVyLT5yZXNldCgpOwoJCSRtYWlsZXItPlNldFN1YmplY3QoJHN1YmplY3QpOwoJCSRtYWlsZXItPklzSFRNTCgkdGhpcy0+R2V0UHJlZmVyZW5jZSgnYWRtaW5fZmVlZGl0X2VtYWlsX2lzaHRtbCcpKTsKCQkkbWFpbGVyLT5TZXRCb2R5KCRib2R5KTsKCQlmb3JlYWNoKCAkYWRkcmVzc2VzIGFzICRvbmUgKQoJCSAgewoJCSAgICAkbWFpbGVyLT5BZGRBZGRyZXNzKCRvbmUpOwoJCSAgfQoJCSRtYWlsZXItPnNlbmQoKTsKCSAgICAgIH0KCSAgfQogICAgICB9CiAgICAKICAgIGlmKCBpc3NldCgkcGFyYW1zWydyZWZlcmVyJ10pICkKICAgICAgewoJcmVkaXJlY3QoJHBhcmFtc1sncmVmZXJlciddKTsKICAgICAgfQogIH0KZWxzZSBpZiAoJGNvbXBhbnlpZCA+IDAgKQogIHsKICAgICRxdWVyeSA9ICdTRUxFQ1QgKiBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfY29tcGRpcl9jb21wYW5pZXMgV0hFUkUgaWQgPSA/JzsKICAgICRyb3cgPSAkZGItPkdldFJvdygkcXVlcnksIGFycmF5KCRjb21wYW55aWQpKTsKICAgIGlmKCAkcm93ICkKICAgICAgewoJJGNvbXBhbnlfbmFtZSA9ICRyb3dbJ2NvbXBhbnlfbmFtZSddOwoJJGFkZHJlc3MgPSAkcm93WydhZGRyZXNzJ107CgkkdGVsZXBob25lID0gJHJvd1sndGVsZXBob25lJ107CgkkaGllcl9pZCA9ICRyb3dbJ2hpZXJfaWQnXTsKCSRsYXRpdHVkZSA9ICRyb3dbJ2xhdGl0dWRlJ107CgkkbG9uZ2l0dWRlID0gJHJvd1snbG9uZ2l0dWRlJ107CgkkZmF4ID0gJHJvd1snZmF4J107CgkkY29udGFjdF9lbWFpbCA9ICRyb3dbJ2NvbnRhY3RfZW1haWwnXTsKCSR3ZWJzaXRlID0gJHJvd1snd2Vic2l0ZSddOwoJJGRldGFpbHMgPSAkcm93WydkZXRhaWxzJ107CgkkaW1hZ2UgPSAkcm93WydwaWN0dXJlX2xvY2F0aW9uJ107CgkkbG9nbyA9ICRyb3dbJ2xvZ29fbG9jYXRpb24nXTsKCSRvcmlnbmFtZSA9ICRyb3dbJ2NvbXBhbnlfbmFtZSddOwoKCSRxdWVyeSA9ICdTRUxFQ1QgY2F0ZWdvcnlfaWQgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfY29tcGFueV9jYXRlZ29yaWVzIFdIRVJFIGNvbXBhbnlfaWQgPSA/JzsKCSR0bXAgPSAkZGItPkdldENvbCgkcXVlcnksYXJyYXkoJGNvbXBhbnlpZCkpOwoJaWYoIGlzX2FycmF5KCR0bXApICYmIGNvdW50KCR0bXApID4gMCApCgkgIHsKCSAgICAkc2VsX2NhdGVnb3JpZXMgPSAkdG1wOwoJICB9CiAgICAgIH0JCiAgfQoKCi8vCi8vIEdldCB0aGUgZmllbGQgZGVmaW5pdGlvbnMKLy8KJGZpZWxkYXJyYXkgPSBhcnJheSgpOwoKaWYgKGNvdW50KCRmaWVsZGRlZnMpID4gMCkKICB7CiAgICAkaW1hZ2VkaXIgPSAnJzsKICAgICRpbWFnZXVybCA9ICcnOwogICAgaWYoICRjb21wYW55aWQgPiAwICkKICAgICAgewoJJGltYWdlZGlyID0gY21zX2pvaW5fcGF0aCgkZ0Ntcy0+Y29uZmlnWyd1cGxvYWRzX3BhdGgnXSwnY29tcGFueWRpcmVjdG9yeScsJ2lkJy4kY29tcGFueWlkKTsKCSRpbWFnZXVybCA9ICRnQ21zLT5jb25maWdbJ3VwbG9hZHNfdXJsJ10uIi9jb21wYW55ZGlyZWN0b3J5L2lkeyRjb21wYW55aWR9IjsKICAgICAgfQoKICAgIGZvcmVhY2ggKCRmaWVsZGRlZnMgYXMgJGZpZCA9PiAkZmllbGRkZWYpCiAgICAgIHsKCSRmaWVsZCA9IG5ldyBzdGRDbGFzcygpOwoJICAgIAoJJHZhbHVlID0gJyc7CglpZiAoaXNzZXQoJGZpZWxkZGVmLT52YWx1ZSkpCgkgIHsKCSAgICAkdmFsdWUgPSAkZmllbGRkZWYtPnZhbHVlOwoJICB9CgkgICAgCglpZiAoaXNzZXQoJHBhcmFtc1snY3VzdG9tZmllbGQnXVsnZmllbGQtJy4kZmllbGRkZWYtPmlkXSkpCgkgICR2YWx1ZSA9ICRwYXJhbXNbJ2N1c3RvbWZpZWxkJ11bJ2ZpZWxkLScuJGZpZWxkZGVmLT5pZF07CgoJJGZpZWxkLT5pZCA9ICRmaWVsZGRlZi0+aWQ7CgkkZmllbGQtPm5hbWUgPSAkZmllbGRkZWYtPm5hbWU7Cglzd2l0Y2ggKCRmaWVsZGRlZi0+dHlwZSkKCSAgewoJICBjYXNlICdpbWFnZSc6CgkgICAgJGZpZWxkLT5pbnB1dF9ib3ggPSAnPGlucHV0IHR5cGU9ImZpbGUiIG5hbWU9IicuJGlkLidjdXN0b21maWVsZFtmaWVsZC0nLiRmaWVsZGRlZi0+aWQuJ10iIHZhbHVlPSIiIHNpemU9IjgwIi8+JzsKCSAgICBpZiggJHZhbHVlICkKCSAgICAgIHsKCQkkZmllbGQtPmlucHV0X2JveCAuPSAiPGJyLz57JHZhbHVlfTombmJzcDsmbmJzcDs8aW5wdXQgdHlwZT1cImNoZWNrYm94XCIgbmFtZT1cInskaWR9Y2RfZGVsZXRlZmlsZVtmaWVsZC17JGZpZWxkZGVmLT5pZH1dXCIgdmFsdWU9XCIxXCIvPih7JHRoaXMtPkxhbmcoJ2RlbGV0ZScpfSkiOwoJICAgICAgfQoJICAgIGlmKCAkaW1hZ2VkaXIgKQoJICAgICAgewoJCSRmbiA9IGNtc19qb2luX3BhdGgoJGltYWdlZGlyLCd0aHVtYl8nLiR2YWx1ZSk7CgkJaWYoIGZpbGVfZXhpc3RzKCRmbikgKQoJCSAgewoJCSAgICAkZmllbGQtPnRodW1iX3VybCA9ICRpbWFnZXVybC4nL3RodW1iXycuJHZhbHVlOwoJCSAgfQoJCSRmbiA9IGNtc19qb2luX3BhdGgoJGltYWdlZGlyLCdwcmV2aWV3Jy4kdmFsdWUpOwoJCWlmKCBmaWxlX2V4aXN0cygkZm4pICkKCQkgIHsKCQkgICAgJGZpZWxkLT5wcmV2aWV3X3VybCA9ICRpbWFnZXVybC4nL3ByZXZpZXdfJy4kdmFsdWU7CgkJICB9CgkJJGZuID0gY21zX2pvaW5fcGF0aCgkaW1hZ2VkaXIsJHZhbHVlKTsKCQlpZiggZmlsZV9leGlzdHMoJGZuKSApCgkJICB7CgkJICAgICRmaWVsZC0+aW1hZ2VfdXJsID0gJGltYWdldXJsLicvJy4kdmFsdWU7CgkJICB9CgkgICAgICB9CgkgICAgYnJlYWs7CgoJICBjYXNlICdjaGVja2JveCc6CgkgICAgJGZpZWxkLT5pbnB1dF9ib3ggPSAnPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iJyAuICRpZCAuICdjZF9jdXN0b21maWVsZFtmaWVsZC0nLiRmaWVsZGRlZi0+aWQuJ10nIC4gJyIgdmFsdWU9ImZhbHNlIiAvPicgLiAKCSAgICAgICR0aGlzLT5DcmVhdGVJbnB1dENoZWNrYm94KCRpZCwgJ2NkX2N1c3RvbWZpZWxkW2ZpZWxkLScuJGZpZWxkZGVmLT5pZC4nXScsICd0cnVlJywgCgkJCQkJICR2YWx1ZSk7CgkgICAgYnJlYWs7CgkgIGNhc2UgJ3RleHRhcmVhJzoKCSAgICAkZmllbGQtPmlucHV0X2JveCA9ICR0aGlzLT5DcmVhdGVUZXh0QXJlYSh0cnVlLCAkaWQsICR2YWx1ZSwgJ2NkX2N1c3RvbWZpZWxkW2ZpZWxkLScuJGZpZWxkZGVmLT5pZC4nXScpOwoJICAgIGJyZWFrOwoJICBjYXNlICd0ZXh0Ym94JzoKCSAgZGVmYXVsdDoKCSAgICAkbWF4bGVuZ3RoID0gJGZpZWxkZGVmLT5tYXhfbGVuZ3RoOwoJICAgICRzaXplID0gbWluKCRtYXhsZW5ndGgsODApOwoJICAgICRmaWVsZC0+aW5wdXRfYm94ID0gJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsICdjZF9jdXN0b21maWVsZFtmaWVsZC0nLiRmaWVsZGRlZi0+aWQuJ10nLCAkdmFsdWUsICRzaXplLCAkbWF4bGVuZ3RoKTsKCSAgICBicmVhazsKCSAgfQoJICAgIAoJJGZpZWxkYXJyYXlbXSA9ICRmaWVsZDsKICAgICAgfQogIH0KCgovLwovLyBHZXQgdGhlIGNhdGVnb3JpZXMKLy8KJGNhdGFycmF5ID0gYXJyYXkoKTsKJGNhdG5hbWVzID0gYXJyYXkoKTsKaWYgKGNvdW50KCRjYXRlZ29yaWVzKSA+IDApCiAgewogICAgZm9yZWFjaCAoJGNhdGVnb3JpZXMgYXMgJGZpZWxkZGVmKQogICAgICB7CgkkZmllbGQgPSBuZXcgc3RkQ2xhc3M7CiAJJGZpZWxkLT5pZCA9ICRmaWVsZGRlZi0+aWQ7CiAJJGZpZWxkLT5uYW1lID0gJGZpZWxkZGVmLT5uYW1lOwogCSRmaWVsZC0+Y2hlY2tib3ggPSAkdGhpcy0+Q3JlYXRlSW5wdXRDaGVja2JveCgkaWQsICdjZF9jYXRlZ29yeVtpZC0nLiRmaWVsZGRlZi0+aWQuJ10nLCAkdmFsdWUsICd0cnVlJyk7CgoJJGNhdG5hbWVzWyRmaWVsZGRlZi0+aWRdID0gJGZpZWxkZGVmLT5uYW1lOwogCSRjYXRhcnJheVtdID0gJGZpZWxkOwogICAgICB9CiAgfQoKCi8vCi8vIFBvcHVsYXRlIFRoZSBUZW1wbGF0ZQovLwokcGFybXMgPSBhcnJheSgpOwppZiggaXNzZXQoJF9TRVJWRVJbJ0hUVFBfUkVGRVJFUiddKSAmJiAhaXNzZXQoJHBhcmFtc1sncmVmZXJlciddKSkKICB7CiAgICAkcGFybXNbJ2NkX3JlZmVyZXInXSA9ICRfU0VSVkVSWydIVFRQX1JFRkVSRVInXTsKICB9CiRwYXJtc1snY29tcGFueWlkJ10gPSAkY29tcGFueWlkOwokcGFybXNbJ2NkX29yaWduYW1lJ10gPSAkb3JpZ25hbWU7CiRzbWFydHktPmFzc2lnbignc3RhcnRmb3JtJywKCQkkdGhpcy0+Q0dDcmVhdGVGb3JtU3RhcnQoJGlkLCdmZV9lZGl0JywkcmV0dXJuaWQsCgkJCQkJICRwYXJtcywKCQkJCQkgZmFsc2UsJ3Bvc3QnLCdtdWx0aXBhcnQvZm9ybS1kYXRhJykpOwokc21hcnR5LT5hc3NpZ24oJ2VuZGZvcm0nLCR0aGlzLT5DcmVhdGVGb3JtRW5kKCkpOwoKJHNtYXJ0eS0+YXNzaWduKCduYW1ldGV4dCcsJHRoaXMtPkxhbmcoJ25hbWUnKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRuYW1lJywkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwnY2RfY29tcGFueV9uYW1lJywkY29tcGFueV9uYW1lLCAzMCkpOwoKJHNtYXJ0eS0+YXNzaWduKCdhZGRyZXNzdGV4dCcsICR0aGlzLT5MYW5nKCdhZGRyZXNzJykpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0YWRkcmVzcycsICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCAnY2RfYWRkcmVzcycsICRhZGRyZXNzLCAzMCkpOwoKJHNtYXJ0eS0+YXNzaWduKCd0ZWxlcGhvbmV0ZXh0JywgJHRoaXMtPkxhbmcoJ3RlbGVwaG9uZScpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dHRlbGVwaG9uZScsICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCAnY2RfdGVsZXBob25lJywgJHRlbGVwaG9uZSwgMzApKTsKCiRzbWFydHktPmFzc2lnbignaW5wdXRoaWVyJywkdGhpcy0+Q3JlYXRlUGFyZW50RHJvcGRvd24oJGlkLC0xLCRoaWVyX2lkLCdjZF9oaWVyX2lkJykpOwoKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dGxhdGl0dWRlJywkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwnY2RfbGF0aXR1ZGUnLCRsYXRpdHVkZSwxMCwxMCkpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0bG9uZ2l0dWRlJywkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwnY2RfbG9uZ2l0dWRlJywkbG9uZ2l0dWRlLDEwLDEwKSk7Cgokc21hcnR5LT5hc3NpZ24oJ2ZheHRleHQnLCAkdGhpcy0+TGFuZygnZmF4JykpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0ZmF4JywgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsICdjZF9mYXgnLCAkZmF4LCAzMCwgMjU1KSk7Cgokc21hcnR5LT5hc3NpZ24oJ2VtYWlsdGV4dCcsICR0aGlzLT5MYW5nKCdjb250YWN0ZW1haWwnKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRlbWFpbCcsICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCAnY2RfY29udGFjdF9lbWFpbCcsICRjb250YWN0X2VtYWlsLCAzMCkpOwoKJHNtYXJ0eS0+YXNzaWduKCd3ZWJzaXRldGV4dCcsICR0aGlzLT5MYW5nKCd3ZWJzaXRlJykpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0d2Vic2l0ZScsICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCAnY2Rfd2Vic2l0ZScsICR3ZWJzaXRlLCAzMCkpOwoKJHNtYXJ0eS0+YXNzaWduKCdkZXRhaWxzdGV4dCcsICR0aGlzLT5MYW5nKCdkZXRhaWxzJykpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0ZGV0YWlscycsICR0aGlzLT5DcmVhdGVUZXh0QXJlYSh0cnVlLCAkaWQsICRkZXRhaWxzLCAnY2RfZGV0YWlscycsICcnLCAnJywgJycsICcnLCAnODAnLCAnNScpKTsKCiRzbWFydHktPmFzc2lnbignZGVsZXRldGV4dCcsJHRoaXMtPkxhbmcoJ2RlbGV0ZScpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbWFnZXVwbG9hZCcsICR0aGlzLT5DcmVhdGVGaWxlVXBsb2FkSW5wdXQoJGlkLCAnY2RfaW1hZ2V1cGxvYWQnLCcnLDgwKSk7CiRzbWFydHktPmFzc2lnbignaW1hZ2VjdXJyZW50JywgJGltYWdlKTsKJHNtYXJ0eS0+YXNzaWduKCdpbWFnZWN1cnJlbnRoaWRkZW4nLCAkdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLCAnY2RfaW1hZ2VjdXJyZW50JywgJHJldHVybmlkLCAkaW1hZ2UpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbWFnZWN1cnJlbnRkZWxldGUnLCAkdGhpcy0+Q3JlYXRlSW5wdXRDaGVja2JveCgkaWQsICdjZF9kZWxldGVpbWFnZScsICdjaGVja2VkJywgJycpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbWFnZXRleHQnLCAkdGhpcy0+TGFuZygnaW1hZ2V0ZXh0JykpOwoKJHNtYXJ0eS0+YXNzaWduKCdsb2dvdXBsb2FkJywgJHRoaXMtPkNyZWF0ZUZpbGVVcGxvYWRJbnB1dCgkaWQsICdjZF9sb2dvdXBsb2FkJywnJyw4MCkpOwokc21hcnR5LT5hc3NpZ24oJ2xvZ29jdXJyZW50JywgJGxvZ28pOwokc21hcnR5LT5hc3NpZ24oJ2xvZ29jdXJyZW50aGlkZGVuJywgJHRoaXMtPkNyZWF0ZUlucHV0SGlkZGVuKCRpZCwgJ2NkX2xvZ29jdXJyZW50JywgJHJldHVybmlkLCAkbG9nbykpOwokc21hcnR5LT5hc3NpZ24oJ2xvZ29jdXJyZW50ZGVsZXRlJywkdGhpcy0+Q3JlYXRlSW5wdXRDaGVja2JveCgkaWQsICdjZF9kZWxldGVsb2dvJywgJ2NoZWNrZWQnLCAnJykpOwokc21hcnR5LT5hc3NpZ24oJ2xvZ290ZXh0JywgJHRoaXMtPkxhbmcoJ2xvZ290ZXh0JykpOwoKaWYoICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdmcm9udGVuZF9jaGFuZ2VzdGF0dXMnKSApCiAgewogICAgJHN0YXR1c2VzID0gYXJyYXkoJHRoaXMtPkxhbmcoJ3B1Ymxpc2hlZCcpPT4ncHVibGlzaGVkJywKCQkgICAgICAkdGhpcy0+TGFuZygnZHJhZnQnKT0+J2RyYWZ0Jyk7CiAgICAkc21hcnR5LT5hc3NpZ24oJ2lucHV0c3RhdHVzJywKCQkgICAgJHRoaXMtPkNyZWF0ZUlucHV0RHJvcGRvd24oJGlkLCdjZF9zdGF0dXMnLAoJCQkJCSAgICAgICAkc3RhdHVzZXMsLTEsJHN0YXR1cykpOwogIH0KCiRzbWFydHktPmFzc2lnbignY29tcGFueWlkJywkY29tcGFueWlkKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzdWJtaXQnLCAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCAnY2Rfc3VibWl0JywgCgkJCQkJCQkgJHRoaXMtPkxhbmcoJ3N1Ym1pdCcpKSk7CgokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2N1c3RvbWZpZWxkcycsICRmaWVsZGFycmF5KTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdjdXN0b21maWVsZHNjb3VudCcsIGNvdW50KCRmaWVsZGFycmF5KSk7CgokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2NhdGVnb3JpZXMnLCAkY2F0YXJyYXkpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2NhdG5hbWVzJywkY2F0bmFtZXMpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2NhdGVnb3JpZXNjb3VudCcsIGNvdW50KCRjYXRhcnJheSkpOwokc21hcnR5LT5hc3NpZ24oJ3NlbF9jYXRlZ29yaWVzJywkc2VsX2NhdGVnb3JpZXMpOwoKZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlRnJvbURhdGFiYXNlKCR0aGV0ZW1wbGF0ZSk7CgovLyBFT0YKPz4K]]></data>
	</file>
	<file>
	  <filename>/action.fe_importcsv.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdCgpOwppZiggISR0aGlzLT5HZXRQcmVmZXJlbmNlKCdmcm9udGVuZF9pbXBvcnQnLDApICkgcmV0dXJuOwoKLy8gCi8vIGluaXRpYWxpemF0aW9uCi8vCiRmaWxlc3RyID0gJGlkLidjZF9jc3ZmaWxlJzsKJG1lc3NhZ2UgPSAnJzsKJGVycm9ycyA9IGFycmF5KCk7CiRkZWxpbWl0ZXIgPSAnJzsKJGZyb250ZW5kdXNlcnMgPSYgJHRoaXMtPkdldE1vZHVsZUluc3RhbmNlKCdGcm9udEVuZFVzZXJzJyk7CmlmKCAhJGZyb250ZW5kdXNlcnMgKSBleGl0KCk7CiRmZXVfdWlkID0gJGZyb250ZW5kdXNlcnMtPkxvZ2dlZEluSWQoKTsKaWYoICRmZXVfdWlkIDw9IDAgKSBleGl0KCk7IC8vIG5vdCBsb2dnZWQgaW4uCgokbWF4cmVjb3JkcyA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdmcm9udGVuZF9udW1yZWNvcmRzJywwKTsKJHF1ZXJ5ID0gJ1NFTEVDVCBDT1VOVChpZCkgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfY29tcGFuaWVzCiAgICAgICAgICAgV0hFUkUgb3duZXJfaWQgPSA/JzsKJG51bXJlY29yZHMgPSAkZGItPkdldE9uZSgkcXVlcnksYXJyYXkoJGZldV91aWQpKTsKCmlmKCAkbWF4cmVjb3JkcyAtICRudW1yZWNvcmRzIDw9IDAgKQogIHsKICAgICRtZXNzYWdlID0gJHRoaXMtPkxhbmcoJ2Vycm9yX25vc3BvdHNsZWZ0Jyk7CiAgfQplbHNlIGlmKCBpc3NldCgkcGFyYW1zWydjZF9zdWJtaXQnXSkgKQogIHsKICAgICRkZWxpbWl0ZXIgPSB0cmltKCRwYXJhbXNbJ2NkX2RlbGltaXRlciddKTsKICAgIGlmKCAkZGVsaW1pdGVyID09ICcnICkKICAgICAgewoJJGVycm9yc1tdID0gJHRoaXMtPkxhbmcoJ2Vycm9yX2RlbGltaXRlcicpOwogICAgICB9CiAgICBlbHNlIGlmKCAhaXNzZXQoJF9GSUxFUykgfHwgCgkgICAgICFpc3NldCgkX0ZJTEVTWyRmaWxlc3RyXSkgIHx8CgkgICAgICRfRklMRVNbJGZpbGVzdHJdWydlcnJvciddICE9IDAgfHwgCgkgICAgICRfRklMRVNbJGZpbGVzdHJdWydzaXplJ10gPT0gMCApCiAgICAgIHsKCSRlcnJvcnNbXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl91cGxvYWQnKTsKICAgICAgfQoKICAgIGlmKCBjb3VudCgkZXJyb3JzKSA9PSAwICkKICAgICAgewoJJGltcG9ydGVyID0gbmV3IGNkX2FzY2lpX2ltcG9ydGVyKCR0aGlzKTsKCSRpbXBvcnRlci0+c2V0X2RlbGltaXRlcigkZGVsaW1pdGVyKTsKCSRpbXBvcnRlci0+c2V0X21heF9jb21wYW5pZXMoJG1heHJlY29yZHMgLSAkbnVtcmVjb3Jkcyk7CgkkaW1wb3J0ZXItPmRvX2ZpZWxkZGVmcyhmYWxzZSk7CgkkaW1wb3J0ZXItPmRvX2ZpZWxkdmFscyh0cnVlKTsKCSRpbXBvcnRlci0+ZG9fY2F0ZWdvcnlkZWZzKGZhbHNlKTsKCSRpbXBvcnRlci0+ZG9fY2F0ZWdvcnl2YWxzKHRydWUpOwoJJGltcG9ydGVyLT5kb19sYXRsb25nX2xvb2t1cChmYWxzZSk7CgkkaW1wb3J0ZXItPmNoZWNrX2R1cGxpY2F0ZV9jb21wYW5pZXModHJ1ZSk7CgkkaW1wb3J0ZXItPmRvX2hpZXJhcmNoeWRlZnMoZmFsc2UpOwoJJGltcG9ydGVyLT5kb19oaWVyYXJjaHl2YWxzKHRydWUpOwoJJGltcG9ydGVyLT5zZXRfdXNlcigkZmV1X3VpZCk7CgkkaW1wb3J0ZXItPmNyZWF0ZV91cmwoJHRoaXMtPkdldFByZWZlcmVuY2UoJ3VybF9yZXF1aXJlZCcsMCkpOwoKCSRyZXMgPSAkaW1wb3J0ZXItPmltcG9ydF9maWxlKCRfRklMRVNbJGZpbGVzdHJdWyd0bXBfbmFtZSddKTsKCSRlcnJvcnMgPSAkaW1wb3J0ZXItPmdldF9lcnJvcnMoKTsKCgkkbWVzc2FnZSA9ICR0aGlzLT5MYW5nKCdtc2dfaW1wb3J0X2NvbXBsZXRlJyk7CgoJJHF1ZXJ5ID0gJ1NFTEVDVCBDT1VOVChpZCkgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfY29tcGFuaWVzCiAgICAgICAgICAgICAgICAgIFdIRVJFIG93bmVyX2lkID0gPyc7CgkkbnVtcmVjb3JkcyA9ICRkYi0+R2V0T25lKCRxdWVyeSxhcnJheSgkZmV1X3VpZCkpOwoKICAgICAgfQogIH0KICAKCi8vCi8vIGdpdmUgZXZlcnl0aGluZyB0byBzbWFydHkKLy8KaWYoIGNvdW50KCRlcnJvcnMpICkKICB7CiAgICAkc21hcnR5LT5hc3NpZ24oJ2Vycm9ycycsJGVycm9ycyk7CiAgfQppZiggJG1lc3NhZ2UgIT0gJycgKQogIHsKICAgICRzbWFydHktPmFzc2lnbignbWVzc2FnZScsJG1lc3NhZ2UpOwogIH0KJHNtYXJ0eS0+YXNzaWduKCdtYXhyZWNvcmRzJywkbWF4cmVjb3Jkcyk7CiRzbWFydHktPmFzc2lnbignbnVtcmVjb3JkcycsJG51bXJlY29yZHMpOwokc21hcnR5LT5hc3NpZ24oJ2Zvcm1zdGFydCcsJHRoaXMtPkNHQ3JlYXRlRm9ybVN0YXJ0KCRpZCwnZmVfaW1wb3J0Y3N2JywkcmV0dXJuaWQsYXJyYXkoKSxmYWxzZSwncG9zdCcsJ211bHRpcGFydC9mb3JtLWRhdGEnKSk7CiRzbWFydHktPmFzc2lnbignZm9ybWVuZCcsJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7CgplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGVGcm9tRGF0YWJhc2UoQ09NUEFOWURJUl9GUk9OVEVORElNUE9SVF9URU1QTEFURSk7CgojCiMgRU9GCiMKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.frontendlist.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgovLwovLyBJbml0aWFsaXphdGlvbgovLwokdGhldGVtcGxhdGUgPSAnZnJvbnRlbmRsaXN0XycuJHRoaXMtPkdldFByZWZlcmVuY2UoQ09NUEFOWURJUl9QUkVGX0RGTFRGUk9OVEVORExJU1RfVEVNUExBVEUpOwppZiggaXNzZXQoJHBhcmFtc1snZnJvbnRlbmRsaXN0dGVtcGxhdGUnXSApICkKICB7CiAgICAkdGhldGVtcGxhdGUgPSAnZnJvbnRlbmRsaXN0XycuJHBhcmFtc1snZnJvbnRlbmRsaXN0dGVtcGxhdGUnXTsKICB9CiRmZXUgPSAkdGhpcy0+R2V0TW9kdWxlSW5zdGFuY2UoJ0Zyb250RW5kVXNlcnMnKTsKaWYoICFpc19vYmplY3QoJGZldSkgKSByZXR1cm47IC8vIG5vIGZldSBtb2R1bGUuCiRtYXhfcmVjb3JkcyA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdmcm9udGVuZF9udW1yZWNvcmRzJywwKTsKaWYoICRtYXhfcmVjb3JkcyA9PSAwICkgcmV0dXJuOyAvLyAwIHJlY29yZHMKJGZldV91aWQgPSAkZmV1LT5Mb2dnZWRJbklkKCk7CmlmKCAkZmV1X3VpZCA8PSAwICkgcmV0dXJuOyAvLyBub3QgbG9nZ2VkIGluCgovLyAKLy8gR2V0IGRhdGEgCi8vCiRxdWVyeSA9ICdTRUxFQ1QgKiBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfY29tcGRpcl9jb21wYW5pZXMKICAgICAgICAgICBXSEVSRSBvd25lcl9pZCA9ID8gT1JERVIgQlkgbW9kaWZpZWRfZGF0ZSBMSU1JVCAnLiRtYXhfcmVjb3JkczsKJGRhdGEgPSAkZGItPkdldEFycmF5KCRxdWVyeSxhcnJheSgkZmV1X3VpZCkpOwokbnVtX2xpc3RpbmdzID0gMDsKaWYoIGlzX2FycmF5KCRkYXRhKSApICRudW1fbGlzdGluZ3MgPSBjb3VudCgkZGF0YSk7CgovLwovLyBHaXZlIGRhdGEgdG8gc21hcnR5Ci8vCmlmKCAkbnVtX2xpc3RpbmdzID4gMCApCiAgewogICAgZm9yKCAkaSA9IDA7ICRpIDwgY291bnQoJGRhdGEpOyAkaSsrICkKICAgICAgewoJJHJlYyA9JiAkZGF0YVskaV07CgkkcGFybXMgPSBhcnJheSgpOwoJJHBhcm1zWydjb21wYW55aWQnXSA9ICRyZWNbJ2lkJ107CgkkcmVjWydlZGl0X3VybCddID0gJHRoaXMtPkNyZWF0ZVVSTCgkaWQsJ2ZlX2VkaXQnLCRyZXR1cm5pZCwkcGFybXMpOwoJJHJlY1snZGVsZXRlX3VybCddID0gJHRoaXMtPkNyZWF0ZVVSTCgkaWQsJ2ZlX2RlbGV0ZScsJHJldHVybmlkLCRwYXJtcyk7CiAgICAgIH0KICAgICRzbWFydHktPmFzc2lnbigncmVjb3JkcycsJGRhdGEpOwogIH0KaWYoICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdmcm9udGVuZF9jcmVhdGUnLDApICYmIAogICAgKCRudW1fbGlzdGluZ3MgPCAkbWF4X3JlY29yZHMpICkKICB7CiAgICAkc21hcnR5LT5hc3NpZ24oJ2ZlX2FkZF91cmwnLCR0aGlzLT5DcmVhdGVVUkwoJGlkLCdmZV9lZGl0JywkcmV0dXJuaWQpKTsKICAgIGlmKCAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZnJvbnRlbmRfaW1wb3J0JywwKSApCiAgICAgIHsKCSRzbWFydHktPmFzc2lnbignZmVfaW1wb3J0X3VybCcsJHRoaXMtPkNyZWF0ZVVSTCgkaWQsJ2ZlX2ltcG9ydGNzdicsJHJldHVybmlkKSk7CiAgICAgIH0KICB9CgovLwovLyBQcm9jZXNzIHRoZSB0ZW1wbGF0ZS4KLy8KZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlRnJvbURhdGFiYXNlKCR0aGV0ZW1wbGF0ZSk7CgojIEVPRgojCj8+]]></data>
	</file>
	<file>
	  <filename>/action.handle_oldroute.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgppZiggIWlzc2V0KCRwYXJhbXNbJ2FjdGlvbiddKSApCiAgewogICAgLy8gZG8gYSA0MDQKICAgIGNnZV9yZWRpcmVjdDo6cmVkaXJlY3Q0MDQoKTsKICB9CgppZiggISR0aGlzLT5HZXRQcmVmZXJlbmNlKCd1cmxfcmVkaXJlY3RvbGQnLDApIHx8ICFpc3NldCgkcGFyYW1zWydjb21wYW55aWQnXSkgKQogIHsKICAgIC8vIHNvbWVob3cgd2UgZ290IGhlcmUsIGV2ZW4gdGhvdWdoIHRoZSBwcmVmZXJlbmNlIGlzIG9mZi4KICAgIC8vIGdvdHRhIHJlZGlyZWN0IDQwNCwgY3V6IHdlIGRvbid0IGtub3cgd2hlcmUgd2UncmUgc3VwcG9zZWQgdG8gZ28uCiAgICBjZ2VfcmVkaXJlY3Q6OnJlZGlyZWN0NDA0KCk7CiAgfQoKLy8gd2UncmUgcmVkaXJlY3RpbmcgdG8gYW4gaXRlbSB0aGF0IHNob3VsZCBoYXZlIGEgVVJMLgokZGIgPSBjbXNtcygpLT5HZXREYigpOwokcXVlcnkgPSAnU0VMRUNUICogRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfY29tcGFuaWVzIFdIRVJFIGlkID0gPyBBTkQgdXJsICE9ID8nOwokcmVjID0gJGRiLT5HZXRSb3coJHF1ZXJ5LGFycmF5KCRwYXJhbXNbJ2NvbXBhbnlpZCddLCcnKSk7CgppZiggISRyZWMgKQogIHsKICAgIC8vIGNvdWxkbid0IGZpbmQgdGhlIHJlY29yZCwgb3IgaXQgZXhpc3RzIGhhcyBhbiBlbXB0eSBVUkwuCiAgICAvLyBkbyB0aGUgb3JpZ2luYWwgYWN0aW9uLgogICAgaWYoICFpc3NldCgkcGFyYW1zWydvcmlnYWN0aW9uJ10pICkKICAgICAgewoJY2dlX3JlZGlyZWN0OjpyZWRpcmVjdDQwNCgpOwogICAgICB9CgogICAgJHBhcmFtc1snYWN0aW9uJ10gPSAkcGFyYW1zWydvcmlnYWN0aW9uJ107CiAgICB1bnNldCgkcGFyYW1zWydvcmlnYWN0aW9uJ10pOwogICAgcmV0dXJuICR0aGlzLT5Eb0FjdGlvbigkcGFyYW1zWydhY3Rpb24nXSwkaWQsJHBhcmFtcywkcmV0dXJuaWQpOwogIH0KCmNnZV90bXBkYXRhOjpzZXQoJ2NvbXBhbnlkaXJfJy4kcmVjWydpZCddLCRyZWMpOwokZGV0YWlscGFnZSA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdkZXRhaWxwYWdlJywtMSk7CmlmKCAkZGV0YWlscGFnZSA9PSAtMSApCiAgewogICAgJGNvbnRlbnRvcHMgPSBjbXNtcygpLT5HZXRDb250ZW50T3BlcmF0aW9ucygpOwogICAgJGRldGFpbHBhZ2UgPSAkY29udGVudG9wcy0+R2V0RGVmYXVsdENvbnRlbnQoKTsKICB9CiR1cmwgPSAkdGhpcy0+Y3JlYXRlX3VybCgkaWQsJ2RldGFpbHMnLCRkZXRhaWxwYWdlLCRwYXJhbXMpOwpjZ2VfcmVkaXJlY3Q6OnJlZGlyZWN0X2FiczMwMSgkdXJsKTsKCiMKIyBFT0YKIwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.importcsv.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKCiRzbWFydHktPmFzc2lnbignZm9ybXN0YXJ0JywkdGhpcy0+Q0dDcmVhdGVGb3JtU3RhcnQoJGlkLCdkb19pbXBvcnRjc3YnLCRyZXR1cm5pZCxhcnJheSgpLAoJCQkJCQkgICAgIGZhbHNlLCAncG9zdCcsICdtdWx0aXBhcnQvZm9ybS1kYXRhJykpOwokc21hcnR5LT5hc3NpZ24oJ2Zvcm1lbmQnLCR0aGlzLT5DcmVhdGVGb3JtRW5kKCkpOwoKJG9wdHMgPSBhcnJheSgpOwokb3B0c1swXSA9ICR0aGlzLT5MYW5nKCdubycpOwokb3B0c1sxXSA9ICR0aGlzLT5MYW5nKCd5ZXMnKTsKJHNtYXJ0eS0+YXNzaWduKCd5ZXNub29wdHMnLCRvcHRzKTsKCiRjYW5fbG9va3VwID0gMDsKJGNnZ20gPSAkdGhpcy0+R2V0TW9kdWxlSW5zdGFuY2UoJ0NHR29vZ2xlTWFwcycpOwppZiggaXNfb2JqZWN0KCRjZ2dtKSApCiAgewogICAgaWYoIG1ldGhvZF9leGlzdHMoJGNnZ20sJ0dldENvb3Jkc0Zyb21BZGRyZXNzJykgKQogICAgICB7CgkJJGNhbl9sb29rdXAgPSAxOwogICAgICB9CiAgfQokc21hcnR5LT5hc3NpZ24oJ2Nhbl9sb29rdXAnLCRjYW5fbG9va3VwKTsKCiRvcHRzID0gYXJyYXkoKTsKJG9wdHNbJ2Vycm9yJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfZHVwbGljYXRlJyk7CiRvcHRzWydpZ25vcmUnXSA9ICR0aGlzLT5MYW5nKCdpZ25vcmUnKTsKJG9wdHNbJ3VwZGF0ZSddID0gJHRoaXMtPkxhbmcoJ292ZXJ3cml0ZScpOwokc21hcnR5LT5hc3NpZ24oJ2R1cGxpY2F0ZV9vcHRzJywkb3B0cyk7Cgokc21hcnR5LT5hc3NpZ24oJ3VybF9vcHRpb25hbCcsISR0aGlzLT5HZXRQcmVmZXJlbmNlKCd1cmxfcmVxdWlyZWQnLDApKTsKCmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSgnaW1wb3J0Y3N2LnRwbCcpOwoKIwojIEVPRgojCj8+]]></data>
	</file>
	<file>
	  <filename>/action.importkml.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCi8vCi8vIGZ1bmN0aW9ucwovLwpmdW5jdGlvbiBfZ2V0X2NoaWxkbm9kZSgmJHBhcmVudCwkbm9kZW5hbWUpCnsKICAkY2hpbGRyZW4gPSAkcGFyZW50LT5jaGlsZE5vZGVzOwogIGZvcmVhY2goICRjaGlsZHJlbiBhcyAkY2hpbGRub2RlICkKICAgIHsKCWlmKCAkY2hpbGRub2RlLT5ub2RlTmFtZSA9PSAkbm9kZW5hbWUgKQoJICB7CgkgICAgcmV0dXJuICRjaGlsZG5vZGU7CgkgIH0KICAgIH0KICByZXR1cm4gTlVMTDsKfQoKCi8vCi8vIGluaXRpYWxpemUKLy8KJHRoaXMtPlNldEN1cnJlbnRUYWIoJ2NvbXBhbmllcycpOwokaWdub3JlX2FkZHJlc3MgPSAwOwokZG9fY29udmVydF9hZGRyZXNzID0gMDsKJHN0YXR1cyA9ICdkcmFmdCc7CiRpbXBvcnRlZCA9IDA7CiRjaGVja19kdXBsaWNhdGVfbmFtZSA9IDA7CiRlcnJvcnMgPSBhcnJheSgpOwokY2FuX2RvX2xvb2t1cHMgPSAwOwokY2dnbSA9ICR0aGlzLT5HZXRNb2R1bGVJbnN0YW5jZSgnQ0dHb29nbGVNYXBzJyk7CmlmKCBpc19vYmplY3QoJGNnZ20pICkKICB7CiAgICAkY2FuX2RvX2xvb2t1cHMgPSAxOwogIH0KCi8vCi8vIGhhbmRsZSBmb3JtIGRhdGEKLy8KaWYoIGlzc2V0KCRwYXJhbXNbJ2NhbmNlbCddKSApCnsKICAkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQpOwp9CmVsc2UgaWYoIGlzc2V0KCRwYXJhbXNbJ3N1Ym1pdCddKSApCnsKICBpZiggaXNzZXQoJHBhcmFtc1snc3RhdHVzJ10pICkKICAgIHsKICAgICAgJHN0YXR1cyA9IHRyaW0oJHBhcmFtc1snc3RhdHVzJ10pOwogICAgfQogIGlmKCBpc3NldCgkcGFyYW1zWydpZ25vcmVfYWRkcmVzcyddKSApCiAgICB7CiAgICAgICRpZ25vcmVfYWRkZXJlc3MgPSAoaW50KSRwYXJhbXNbJ2lnbm9yZV9hZGRyZXNzJ107CiAgICB9CiAgaWYoIGlzc2V0KCRwYXJhbXNbJ2RvX2NvbnZlcnRfYWRkcmVzcyddKSApCiAgICB7CiAgICAgICRkb19jb252ZXJ0X2FkZHJlc3MgPSAoaW50KSRwYXJhbXNbJ2RvX2NvbnZlcnRfYWRkcmVzcyddOwogICAgfQogIGlmKCBpc3NldCgkcGFyYW1zWydjaGVja19kdXBsaWNhdGVfbmFtZSddKSApCiAgICB7CiAgICAgICRjaGVja19kdXBsaWNhdGVfbmFtZSA9IChpbnQpJHBhcmFtc1snY2hlY2tfZHVwbGljYXRlX25hbWUnXTsKICAgIH0KCiAgJG5hbWUgPSAkaWQuJ2ttbGZpbGUnOwogIGlmKCAhaXNzZXQoJF9GSUxFUykgfHwKICAgICFpc3NldCgkX0ZJTEVTWyRuYW1lXSkgfHwgCiAgICAkX0ZJTEVTWyRuYW1lXVsnZXJyb3InXSA+IDAgfHwKICAgICRfRklMRVNbJG5hbWVdWydzaXplJ10gPT0gMCApCiAgewogICAgLy9iYWQgdXBsb2FkCiAgICAkdGhpcy0+U2V0RXJyb3IoJHRoaXMtPkxhbmcoJ2Vycm9yX3VwbG9hZCcpKTsKICAgICR0aGlzLT5SZWRpcmVjdFRvVGFiKCk7CiAgfQoKICAkZG9jID0gbmV3IERvbURvY3VtZW50KCk7CiAgJGRvYy0+bG9hZCgkX0ZJTEVTWyRuYW1lXVsndG1wX25hbWUnXSk7CiAgJHBsYWNlcyA9ICRkb2MtPmdldEVsZW1lbnRzQnlUYWdOYW1lKCdQbGFjZW1hcmsnKTsKICBpZiggJHBsYWNlcy0+bGVuZ3RoID09IDAgKSAKICAgIHsKICAgICAgJHRoaXMtPlNldEVycm9yKCR0aGlzLT5MYW5nKCdlcnJvcl9rbWxfbm9wbGFjZW1hcmtzJykpOwogICAgICAkdGhpcy0+UmVkaXJlY3RUb1RhYigpOwogICAgfQoKICBmb3IoICRpZHggPSAwOyAkaWR4IDwgJHBsYWNlcy0+bGVuZ3RoOyAkaWR4KysgKQogICAgewogICAgICAkbm9kZSA9ICRwbGFjZXMtPml0ZW0oJGlkeCk7CiAgICAgIGlmKCAhJG5vZGUgKSBjb250aW51ZTsKCiAgICAgICRhZGRyZXNzID0gJyc7CiAgICAgICRuYW1lID0gJyc7CiAgICAgICRkZXNjcmlwdGlvbiA9ICcnOwogICAgICAkbGF0aXR1ZGUgPSAnJzsKICAgICAgJGxvbmdpdHVkZSA9ICcnOwogICAgICAKICAgICAgJG5hbWUgICAgPSBfZ2V0X2NoaWxkbm9kZSgkbm9kZSwnbmFtZScpLT5ub2RlVmFsdWU7CiAgICAgICRkZXNjICAgID0gX2dldF9jaGlsZG5vZGUoJG5vZGUsJ2Rlc2NyaXB0aW9uJyktPm5vZGVWYWx1ZTsKCiAgICAgIC8vIGdldCB0aGUgYWRkcmVzcy4KICAgICAgaWYoICEkaWdub3JlX2FkZHJlc3MgKQoJewoJICAkX2FkZHJlc3NfTiA9IF9nZXRfY2hpbGRub2RlKCRub2RlLCdhZGRyZXNzJyk7CgkgIGlmKCAhJF9hZGRyZXNzX04gKQoJICAgIHsKCSAgICAgICRlcnJvcnNbXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9rbWxpbXBvcnRfbm9hZGRyZXNzJywkaWR4KTsKCSAgICAgIGNvbnRpbnVlOwoJICAgIH0KCgkgICRhZGRyZXNzID0gJF9hZGRyZXNzX04tPm5vZGVWYWx1ZTsKCSAgCgl9CgogICAgICAvLyBnZXQgdGhlIGNvb3JkaW5hdGVzLgoJewoJICAkX3BvaW50X04gID0gX2dldF9jaGlsZG5vZGUoJG5vZGUsJ1BvaW50Jyk7CgkgIGlmKCAhJF9wb2ludF9OICkKCSAgICB7CgkgICAgICAkZXJyb3JzW10gPSAkdGhpcy0+TGFuZygnZXJyb3Jfa21saW1wb3J0X25vcG9pbnQnLCRpZHgpOwoJICAgICAgY29udGludWU7CgkgICAgfQoJICAkX2Nvb3Jkc19OICA9IF9nZXRfY2hpbGRub2RlKCRfcG9pbnRfTiwnY29vcmRpbmF0ZXMnKTsKCSAgaWYoICEkX2Nvb3Jkc19OICkKCSAgICB7CgkgICAgICAkZXJyb3JzW10gPSAkdGhpcy0+TGFuZygnZXJyb3Jfa21saW1wb3J0X25vcG9pbnQnLCRpZHgpOwoJICAgICAgY29udGludWU7CgkgICAgfQoJICAkY29vcmRzID0gJF9jb29yZHNfTi0+bm9kZVZhbHVlOwoJICBsaXN0KCRsYXRpdHVkZSwkbG9uZ2l0dWRlKSA9IGV4cGxvZGUoJywnLCRjb29yZHMpOwoJfQoKICAgICAgaWYoICRhZGRyZXNzICE9ICcnICYmICgkbGF0aXR1ZGUgPT0gJycgfHwgJGxvbmdpdHVkZSA9PSAnJykgJiYgJGRvX2NvbnZlcnRfYWRkcmVzcyA9PSAxICkKCXsKCSAgJGNvb3JkcyA9ICRjZ2dtLT5HZXRDb29yZHNGcm9tQWRkcmVzcygkYWRkcmVzcyk7CgkgICRsYXRpdHVkZSA9ICRjb29yZHNbJ2xhdCddOwoJICAkbG9uZ2l0dWRlID0gJGNvb3Jkc1snbG9uJ107Cgl9CgogICAgICAvLyBnb3QgZW5vdWdoIGluZm9ybWF0aW9uIHRvIGFkZCBhIG5vZGUuCiAgICAgIGlmKCAkbmFtZSAhPSAnJyAmJiAoJGFkZHJlc3MgIT0gJycgfHwgKCRsYXRpdHVkZSAhPSAnJyAmJiAkbG9uZ2l0dWRlICE9ICcnKSkgKQoJewoJICBpZiggJGNoZWNrX2R1cGxpY2F0ZV9uYW1lICkKCSAgICB7CgkgICAgICAkcXVlcnkgPSAnU0VMRUNUIGlkIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9jb21wZGlyX2NvbXBhbmllcwogICAgICAgICAgICAgICAgICAgICAgICAgV0hFUkUgY29tcGFueV9uYW1lID0gPyc7CgkgICAgICAkdG1wID0gJGRiLT5HZXRPbmUoJHF1ZXJ5LGFycmF5KCRuYW1lKSk7CgkgICAgICBpZiggJHRtcCApCgkJewoJCSAgLy8gaXQncyBhIGR1cGxpY2F0ZQoJCSAgLy8gY29udGludWUgd2l0aG91dCBlcnJvcgoJCSAgY29udGludWU7CgkJfQoJICAgIH0KCgkgICRxdWVyeSA9ICdJTlNFUlQgSU5UTyAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfY29tcGFuaWVzCiAgICAgICAgICAgICAgICAgICAgICAoY29tcGFueV9uYW1lLCBhZGRyZXNzLCBkZXRhaWxzLCBzdGF0dXMsIGxhdGl0dWRlLCBsb25naXR1ZGUpCiAgICAgICAgICAgICAgICAgICAgVkFMVUVTICg/LD8sPyw/LD8sPyknOwoJICAkZGJyID0gJGRiLT5FeGVjdXRlKCRxdWVyeSwKCQkJICAgICAgYXJyYXkoJG5hbWUsJGFkZHJlc3MsJGRlc2NyaXB0aW9uLCRzdGF0dXMsJGxhdGl0dWRlLCRsb25naXR1ZGUpKTsKCSAgaWYoICEkZGJyICkKCSAgICB7CgkgICAgICAkZXJyb3JzW10gPSAkdGhpcy0+TGFuZygnZXJyb3Jfa21saW1wb3J0X2RiZXJyb3InLCRpZHgpOwoJICAgICAgY29udGludWU7CgkgICAgfQoJICAkaW1wb3J0ZWQrKzsKCX0KICAgIH0KCiAgLy8gd29vdCwgZG9uZQogICRzbWFydHktPmFzc2lnbignZmluaXNoZWQnLDEpOwogICRzbWFydHktPmFzc2lnbignaW1wb3J0ZWQnLCRpbXBvcnRlZCk7CiAgaWYoIGNvdW50KCRlcnJvcnMpICkKICAgIHsKICAgICAgJHNtYXJ0eS0+YXNzaWduKCdlcnJvcmNvdW50Jyxjb3VudCgkZXJyb3JzKSk7CiAgICAgICRzbWFydHktPmFzc2lnbignZXJyb3JzJywkZXJyb3JzKTsKICAgIH0KfQoKLy8KLy8gYnVpbGQgdGhlIGZvcm0KLy8KJHN0YXR1c2VzID0gYXJyYXkoJHRoaXMtPkxhbmcoJ3B1Ymxpc2hlZCcpPT4ncHVibGlzaGVkJywKCQkgICR0aGlzLT5MYW5nKCdkcmFmdCcpPT4nZHJhZnQnLAoJCSAgJHRoaXMtPkxhbmcoJ2Rpc2FibGVkJyk9PidkaXNhYmxlZCcpOwokc21hcnR5LT5hc3NpZ24oJ3N0YXR1c3RleHQnLCR0aGlzLT5MYW5nKCdzdGF0dXMnKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRzdGF0dXMnLAoJCSR0aGlzLT5DcmVhdGVJbnB1dERyb3Bkb3duKCRpZCwnc3RhdHVzJywKCQkJCQkgICAkc3RhdHVzZXMsLTEsJ2RyYWZ0JykpOwokc21hcnR5LT5hc3NpZ24oJ2Nhbl9kb19sb29rdXBzJywkY2FuX2RvX2xvb2t1cHMpOwokc21hcnR5LT5hc3NpZ24oJ2Zvcm1zdGFydCcsJHRoaXMtPkNHQ3JlYXRlRm9ybVN0YXJ0KCRpZCwnaW1wb3J0a21sJywnJyxhcnJheSgpLGZhbHNlLCdwb3N0JywnbXVsdGlwYXJ0L2Zvcm0tZGF0YScpKTsKJHNtYXJ0eS0+YXNzaWduKCdmb3JtZW5kJywkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsKCmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSgnaW1wb3J0a21sLnRwbCcpOwoKIwojIEVPRgojCj8+]]></data>
	</file>
	<file>
	  <filename>/action.movefielddef.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmICghaXNzZXQoJGdDbXMpKSBleGl0OwoKJG9yZGVyID0gMTsKJGZkaWQgPSAkcGFyYW1zWydmZGlkJ107CgojR3JhYiBuZWNlc3NhcnkgaW5mbyBmb3IgZml4aW5nIHRoZSBpdGVtX29yZGVyCiRvcmRlciA9ICRkYi0+R2V0T25lKCJTRUxFQ1QgaXRlbV9vcmRlciBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfY29tcGRpcl9maWVsZGRlZnMgV0hFUkUgaWQgPSA/IiwgYXJyYXkoJGZkaWQpKTsKJHRpbWUgPSAkZGItPkRCVGltZVN0YW1wKHRpbWUoKSk7CgppZiAoJHBhcmFtc1snZGlyJ10gPT0gImRvd24iKQp7CgkkcXVlcnkgPSAnVVBEQVRFICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfY29tcGRpcl9maWVsZGRlZnMgU0VUIGl0ZW1fb3JkZXIgPSAoaXRlbV9vcmRlciAtIDEpLCBtb2RpZmllZF9kYXRlID0gJy4kdGltZS4nIFdIRVJFIGl0ZW1fb3JkZXIgPSA/JzsKCSRkYi0+RXhlY3V0ZSgkcXVlcnksIGFycmF5KCRvcmRlciArIDEpKTsKCSRxdWVyeSA9ICdVUERBVEUgJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9jb21wZGlyX2ZpZWxkZGVmcyBTRVQgaXRlbV9vcmRlciA9IChpdGVtX29yZGVyICsgMSksIG1vZGlmaWVkX2RhdGUgPSAnLiR0aW1lLicgV0hFUkUgaWQgPSA/JzsKCSRkYi0+RXhlY3V0ZSgkcXVlcnksIGFycmF5KCRmZGlkKSk7Cn0KZWxzZSBpZiAoJHBhcmFtc1snZGlyJ10gPT0gInVwIikKewoJJHF1ZXJ5ID0gJ1VQREFURSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfZmllbGRkZWZzIFNFVCBpdGVtX29yZGVyID0gKGl0ZW1fb3JkZXIgKyAxKSwgbW9kaWZpZWRfZGF0ZSA9ICcuJHRpbWUuJyBXSEVSRSBpdGVtX29yZGVyID0gPyc7CgkkZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgkb3JkZXIgLSAxKSk7CgkkcXVlcnkgPSAnVVBEQVRFICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfY29tcGRpcl9maWVsZGRlZnMgU0VUIGl0ZW1fb3JkZXIgPSAoaXRlbV9vcmRlciAtIDEpLCBtb2RpZmllZF9kYXRlID0gJy4kdGltZS4nIFdIRVJFIGlkID0gPyc7CgkkZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgkZmRpZCkpOwp9CgokcGFyYW1zID0gYXJyYXkoJ2FjdGl2ZV90YWInID0+ICdmaWVsZGRlZnMnKTsKJHRoaXMtPlJlZGlyZWN0KCRpZCwgJ2RlZmF1bHRhZG1pbicsICcnLCAkcGFyYW1zKTsKPz4K]]></data>
	</file>
	<file>
	  <filename>/action.search.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmICghaXNzZXQoJGdDbXMpKSBleGl0OwoKIwojIEluaXRpYWxpemF0aW9uCiMKJGlubGluZSA9IDA7CiRyZXN1bHRwYWdlID0gJHJldHVybmlkOwokdGhldGVtcGxhdGUgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZShDT01QQU5ZRElSX1BSRUZfREZMVFNFQVJDSEZPUk1fVEVNUExBVEUpOwoKIwojIEdldCBwYXJhbWV0ZXJzCiMKaWYoIGlzc2V0KCRwYXJhbXNbJ2lubGluZSddKSAmJiAkcGFyYW1zWydpbmxpbmUnXSAhPSAwICkKICB7CiAgICAkaW5saW5lID0gMTsKICAgIHVuc2V0KCRwYXJhbXNbJ2lubGluZSddKTsKICB9CmlmKCBpc3NldCgkcGFyYW1zWydyZXN1bHRwYWdlJ10pICkKICB7CiAgICAkdG1wID0gJHRoaXMtPnJlc29sdmVfYWxpYXNfb3JfaWQoJHBhcmFtc1sncmVzdWx0cGFnZSddKTsKICAgIGlmKCAkdG1wICkKICAgICAgewoJJHJlc3VsdHBhZ2UgPSAkdG1wOwoJJGlubGluZSA9IDA7CiAgICAgIH0KICAgIHVuc2V0KCRwYXJhbXNbJ3Jlc3VsdHBhZ2UnXSk7CiAgfQppZiggaXNzZXQoJHBhcmFtc1snc2VhcmNoZm9ybXRlbXBsYXRlJ10pICkKICB7CiAgICAkdGhldGVtcGxhdGUgPSB0cmltKCRwYXJhbXNbJ3NlYXJjaGZvcm10ZW1wbGF0ZSddKTsKICAgIHVuc2V0KCRwYXJhbXNbJ3NlYXJjaGZvcm10ZW1wbGF0ZSddKTsKICB9CgojCiMgR2l2ZSBldmVyeXRoaW5nIHRvIHNtYXJ0eQojCiRxdWVyeSA9ICdTRUxFQ1QgaWQsbG9uZ19uYW1lIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9jb21wZGlyX2hpZXIgT1JERVIgYnkgaGllcmFyY2h5JzsKJHRtcCA9ICRkYi0+R2V0QXJyYXkoJHF1ZXJ5KTsKaWYoIGlzX2FycmF5KCR0bXApICkKICB7CgkkdG1wMiA9IGFycmF5KCk7CgkkdG1wMlsnJ10gPSAkdGhpcy0+TGFuZygnYW55Jyk7Cglmb3IoICRpID0gMDsgJGkgPCBjb3VudCgkdG1wKTsgJGkrKyApCgkgIHsKCQkkdG1wMlskdG1wWyRpXVsnbG9uZ19uYW1lJ11dID0gJHRtcFskaV1bJ2xvbmdfbmFtZSddOwoJICB9Cgkkc21hcnR5LT5hc3NpZ24oJ2hpZXJhcmNoaWVzJywkdG1wMik7CiAgfQokdG1wID0gJHRoaXMtPkdldENhdGVnb3JpZXMoKTsKaWYoIGlzX2FycmF5KCR0bXApICkKICB7CiAgICAkY2F0ZWdvcmllcyA9IGFycmF5KCk7CiAgICBmb3JlYWNoKCAkdG1wIGFzICRvbmUgKQogICAgICB7CgkJJGNhdGVnb3JpZXNbJG9uZS0+aWRdID0gJG9uZS0+bmFtZTsKICAgICAgfQoJYXNvcnQoJGNhdGVnb3JpZXMpOwogICAgJHNtYXJ0eS0+YXNzaWduKCdjYXRlZ29yaWVzJywkY2F0ZWdvcmllcyk7CiAgfQoKJHBhcmFtc1snY2Rfb3JpZ3BhZ2UnXSA9ICRyZXR1cm5pZDsKJHNtYXJ0eS0+YXNzaWduKCdmb3Jtc3RhcnQnLAoJCSR0aGlzLT5DR0NyZWF0ZUZvcm1TdGFydCgkaWQsJ2RvX3NlYXJjaCcsJHJlc3VsdHBhZ2UsJHBhcmFtcywkaW5saW5lKSk7CiRzbWFydHktPmFzc2lnbignZm9ybWVuZCcsJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfY291bnRyeScsJHRoaXMtPkNyZWF0ZUlucHV0Q291bnRyeURyb3Bkb3duKCRpZCwnY2RfY291bnRyeScpKTsKCiMKIyBQcm9jZXNzIHRoZSB0ZW1wbGF0ZQojCmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhYmFzZSgnc2VhcmNoZm9ybV8nLiR0aGV0ZW1wbGF0ZSk7CgoKIwojIEVPRgojCj8+]]></data>
	</file>
	<file>
	  <filename>/changelog.inc</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PHVsPgogIDxsaT4xLjEgLSBTZXB0ZW1iZXIsIDIwMDcgPGVtPihyY2FtcGJlbGxAc2tpbm55ZmlzaG1lZGlhLmNvbSk8L2VtPgogICAgPHVsPgogICAgICA8bGk+QWRkZWQgc3VwcG9ydCBmb3IgcHJldHR5IHVybHM8L2xpPgogICAgICA8bGk+RmlsbGVkIG91dCB0aGUgaGVscDwvbGk+CiAgICAgIDxsaT5BZGRlZCBhIGNhdGVnb3J5IGxpc3QgbW9kZTwvbGk+CiAgICAgIDxsaT5BZGRlZCBzdXBwb3J0IGZvciBmcm9udGVuZCBlZGl0aW5nIG9mIGNvbXBhbmllczwvbGk+CiAgICAgIDxsaT5BZGRlZCBzdXBwb3J0IGZvciBwdWJsaWMgYW5kIGFkbWluIG9ubHkgZmllbGRzIGluIGNvbXBhbmllczwvbGk+CiAgICAgIDxsaT5BZGRlZCBkaWZmZXJlbnQgc29ydGluZyBjYXBhYmlsaXRpZXMgaW4gc3VtbWFyeSB2aWV3PC9saT4KICAgICAgPGxpPkNoYW5nZWQgTWluaW11bSBDTVMgVmVyc2lvbiBhbmQgYWRkZWQgc3VwcG9ydCBmb3IgdGhlIDEuMSBzZXJpZXM8L2xpPgogICAgPC91bD4KICA8L2xpPgogIDxsaT4xLjEuMSAtIE5vdmVtYmVyLCAyMDA3IDxlbT4ocmNhbXBiZWxsQHNraW5ueWZpc2htZWRpYS5jb20pPC9lbT4KICAgIDx1bD4KICAgICAgPGxpPkZpeGVkIGEgcHJvYmxlbSB3aXRoIHRoZSBkZXRhaWwgbGlua3MgaW4gc3VtbWFyeSBtb2RlIHdoZW4gcHJldHR5IHVybHMgd2VyZSBkaXNhYmxlZC48L2xpPgogICAgPC91bD4KICA8L2xpPgogIDxsaT4xLjEuMiAtIE5vdmVtYmVyLCAyMDA3IDxlbT4ocmNhbXBiZWxsQHNraW5ueWZpc2htZWRpYS5jb20pPC9lbT4KICAgIDx1bD4KICAgICAgPGxpPk5vdyB1c2UgY21zX21vdmVfdXBsb2FkZWRfZmlsZSBpbnN0ZWFkIG9mIG1vdmVfdXBsb2FkZWRfZmlsZTwvbGk+CiAgICAgIDxsaT5SZXF1aXJlIENNUyAxLjIuMSBvciBsYXRlcjwvbGk+CiAgICA8L3VsPgogIDwvbGk+CiAgPGxpPjEuMS4zIC0gRmVicnVhcnksIDIwMDggPGVtPihyY2FtcGJlbGxAc2tpbm55ZmlzaG1lZGlhLmNvbSk8L2VtPgogICAgPHVsPgogICAgICA8bGk+QWRkcyBwYWdpbmF0aW9uIHRvIHN1bW1hcnkgdmlldzwvbGk+CiAgICAgIDxsaT5GaXhlcyBhIHByb2JsZW0gd2l0aCBwcmV0dHkgdXJscyBpbiBzdW1tYXJ5IHZpZXc8L2xpPgogICAgICA8bGk+Rml4ZXMgYSBwcm9ibGVtIHdpdGggdGhlIHNvcnQgb3JkZXIgcHJlZmVyZW5jZXM8L2xpPgogICAgICA8bGk+KF9TakcpIC0gSW1wbGVtZW50cyB0c3dcJ3MgcGF0Y2ggZm9yIGN1c3RvbSBmaWVsZHMgaW4gdGhlIHN1bW1hcnkgdGVtcGxhdGU8L2xpPgogICAgPC91bD4KICA8L2xpPgogIDxsaT4xLjEuNCAtIEp1bmUsIDIwMDggPGVtPihjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKTwvZW0+CiAgICA8dWw+CiAgICAgIDxsaT5GaXggdG8gdGhlIHRhYnM8L2xpPgogICAgICA8bGk+TWlub3IgZml4IHRvIHRoZSBzdGF0dXMgZmllbGQgd2hlbiBlZGl0aW5nIGEgY29tcGFueS48L2xpPgogICAgICA8bGk+TWlub3IgZml4IHRvIHRoZSBjaGVja2JveCBjdXN0b20gZmllbGRzIHdoZW4gZWRpdGluZyBhIGNvbXBhbnkuPC9saT4KICAgICAgPGxpPkZpeCB0byBDU1YgRXhwb3J0LjwvbGk+CiAgICAgIDxsaT5GaXggdG8gdGhlIHByZWZlcmVuY2VzIHRhYi48L2xpPgogICAgPC91bD4KICA8L2xpPgogIDxsaT4xLjEuNSAtIEp1bmUsIDIwMDggPGVtPihjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKTwvZW0+CiAgICA8dWw+CiAgICAgIDxsaT5GaXggYSBtaW5vciBpc3N1ZSB3aXRoIHByZWZlcmVuY2VzPC9saT4KICAgICAgPGxpPkZpeCBzb21lIHF1ZXJpZXMgdGhhdCB3ZXJlIG5vdCB1c2luZyBjbXNfZGJfcHJlZml4PC9saT4KICAgIDwvdWw+CiAgPC9saT4KICA8bGk+MS4xLjYgLSBKdWx5LCAyMDA4IDxlbT4oY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZyk8L2VtPgogICAgPHVsPgogICAgICA8bGk+QWRkIHRoZSBzaG93YWxsIHBhcmFtZXRlciB0byB0aGUgY2F0ZWdvcnlsaXN0IGFjdGlvbi48L2xpPgogICAgICA8bGk+U3BsaXQgb3V0IGEgY291cGxlIG9mIG1vcmUgZmlsZXMuPC9saT4KICAgIDwvdWw+CiAgPC9saT4KICA8bGk+MS4xLjcgLSBGZWJydWFyeSwgMjAwOSA8ZW0+KGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpPC9lbT4KICAgIDx1bD4KICAgICAgPGxpPkZpeGVkIGRlbGV0ZSBjb21wYW55IHN0dWZmLjwvbGk+CiAgICA8L3VsPgogIDwvbGk+CiAgPGxpPjEuMS44IC0gQXByaWwsIDIwMDkgPGVtPihjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKTwvZW0+CiAgICA8dWw+CiAgICAgIDxsaT5BZGQgTW9yZSBJbmRleGVzLjwvbGk+CiAgICA8L3VsPgogIDwvbGk+CiAgPGxpPjEuMiAtIE1heSwgMjAwOSA8ZW0+KGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpPC9lbT4KICAgIDx1bD4KICAgICAgPGxpPkFkZGVkIGxhdGl0dWRlIGFuZCBsb25naXR1ZGUgZmllbGRzLjwvbGk+CiAgICAgIDxsaT5BZGRlZCBjYXBhYmlsaXR5IHRvIGxvb2t1cCBsYXR0aXR1ZGUgYW5kIGxvbmdpdHVkZSBpZiBDR0dvb2dsZU1hcCBpcyBpbnN0YWxsZWQuPC9saT4KICAgICAgPGxpPkFkZGVkIHNlYXJjaCBmdW5jdGlvbmFsaXR5LCB3aXRoIHppcGNvZGUgbG9va3VwIChyZXF1aXJlcyB0aGUgcG9zdGNvZGUgbW9kdWxlKS48L2xpPgogICAgICA8bGk+QWRkZWQgZXhwb3J0IHRvIGNzdiBmdW5jdGlvbmFsaXR5LjwvbGk+CiAgICAgIDxsaT5SZXdyaXRlIGltcG9ydCBmcm9tIGNzdiBmdW5jdGlvbmFsaXR5LjwvbGk+CiAgICA8L3VsPgogIDwvbGk+CiAgPGxpPjEuMyAtIEp1bHksIDIwMDkgPGVtPihjYWxndXkxMDAwQGhvdG1haWwuY29tKTwvZW0+CiAgICA8dWw+CiAgICAgIDxsaT5BZGRlZCBzdXBwb3J0IGZvciBwcmV0dHkgdXJsczwvbGk+CiAgICAgIDxsaT5GaWxsZWQgb3V0IHRoZSBoZWxwPC9saT4KICAgICAgPGxpPkFkZGVkIGEgY2F0ZWdvcnkgbGlzdCBtb2RlPC9saT4KICAgICAgPGxpPkFkZGVkIHN1cHBvcnQgZm9yIGZyb250ZW5kIGVkaXRpbmcgb2YgY29tcGFuaWVzPC9saT4KICAgICAgPGxpPkFkZGVkIHN1cHBvcnQgZm9yIHB1YmxpYyBhbmQgYWRtaW4gb25seSBmaWVsZHMgaW4gY29tcGFuaWVzPC9saT4KICAgICAgPGxpPkFkZGVkIGRpZmZlcmVudCBzb3J0aW5nIGNhcGFiaWxpdGllcyBpbiBzdW1tYXJ5IHZpZXc8L2xpPgogICAgICA8bGk+Q2hhbmdlZCBNaW5pbXVtIENNUyBWZXJzaW9uIGFuZCBhZGRlZCBzdXBwb3J0IGZvciB0aGUgMS4xIHNlcmllczwvbGk+CiAgICA8L3VsPgogIDwvbGk+CiAgPGxpPjEuMy4yIC0gQXVndXN0LCAyMDA5IDxlbT4oY2FsZ3V5MTAwMEBob3RtYWlsLmNvbSk8L2VtPgogICAgPHVsPgogICAgICA8bGk+Rml4IG1pbm9yIGVycm9yIGluIHRoZSBpbnN0YWxsZXIuPC9saT4KICAgICAgPGxpPkluIHN1bW1hcnkgbW9kZSwgZW5zdXJlIHRoYXQgYSBjb21wYW55IGlzIG9ubHkgb3V0cHV0IG9uY2UuPC9saT4KICAgIDwvdWw+ICAKICA8L2xpPgogIDxsaT4xLjMuMyAtIEF1Z3VzdCwgMjAwOSA8ZW0+KGNhbGd1eTEwMDBAaG90bWFpbC5jb20pPC9lbT4KICAgIDx1bD4KICAgICAgPGxpPkZpeCBlcnJvcnMgd2l0aCBlbnRpdGllcyBpbiBmcm9udGVuZCB3eXNpd3lncy48L2xpPgogICAgICA8bGk+Rml4IGVycm9yIGluIGJvdW5kaW5nIGJveCBjYWxjdWxhdGlvbi48L2xpPgogICAgICA8bGk+TnVtZXJvdXMgb3RoZXIgc21hbGwgYnVnIGZpeGVzLjwvbGk+CiAgICA8L3VsPiAgCiAgPC9saT4KICA8bGk+MS4zLjQgLSBTZXB0ZW1iZXIsIDIwMDkgPGVtPihjYWxndXkxMDAwQGhvdG1haWwuY29tKTwvZW0+CiAgICA8dWw+CiAgICAgIDxsaT5GaXggc29tZSBtb3JlIHNtYWxsIGlzc3VlcyB3aXRoIGZyb250ZW5kIHN1Ym1pdDwvbGk+CiAgICA8L3VsPiAgCiAgPC9saT4KICA8bGk+MS40IC0gT2N0LCAyMDA5IDxlbT4oY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZyk8L2VtPgogICAgPHVsPgogICAgIDxsaT5BZGRlZCBLTUwgSW1wb3J0PC9saT4KICAgICA8bGk+TWlub3IgYnVnIGZpeGVzLjwvbGk+CiAgICA8L3VsPgogIDwvbGk+CiAgPGxpPjEuNC4xIC0gT2N0b2JlciwgMjAwOSA8ZW0+KGNhbGd1eTEwMDBAaG90bWFpbC5jb20pPC9lbT4KICAgIDx1bD4KICAgICAgPGxpPkFkZHMgYWJpbGl0eSB0byBpbXBvcnQgZmllbGRzIGZyb20gS01MLjwvbGk+CiAgICAgIDxsaT5BZGRzIGZpZWxkIHR5cGUgdG8gdGhlIG91dHB1dCBmb3IgY3VzdG9tIGZpZWxkcy48L2xpPgogICAgPC91bD4gIAogIDwvbGk+CiAgPGxpPjEuNSAtIEphbnVhcnksIDIwMTAKICAgIDx1bD4KICAgICAgPGxpPkFkZHMgdGhlIGFiaWxpdHkgZm9yIGZyb250ZW5kIHVzZXJzIHRvIGFkZC9lZGl0L2RlbGV0ZSB0aGVpciBvd24gY29tcGFueSBsaXN0aW5ncy48L2xpPgogICAgPC91bD4KICA8L2xpPgogIDxsaT4xLjUuMSAtIEphbnVhcnksIDIwMTAKICAgIDx1bD4KICAgICAgPGxpPkFkZHMgdGhlIGFiaWxpdHkgdG8gYnJvd3NlIGJ5IGhpZXJhcmNoeS48L2xpPgogICAgPC91bD4KICA8L2xpPgogIDxsaT4xLjUuMiAtIEphbnVhcnksIDIwMTAKICAgIDx1bD4KICAgICAgPGxpPlJld3JpdGUgb2YgQ1NWIGltcG9ydCBzdHVmZi48L2xpPgogICAgICA8bGk+QWRkcyBmcm9udGVuZCBpbXBvcnRpbmcgZnJvbSBjc3YuPC9saT4KICAgICAgPGxpPkFkZHMgZnJvbnRlbmQgZGVsZXRlIGFjdGlvbi48L2xpPgogICAgPC91bD4KICA8L2xpPgogIDxsaT4xLjUuMyAtIE1hcmNoLCAyMDEwCiAgICA8dWw+CiAgICAgIDxsaT5JbXByb3ZlbWVudHMgdG8gc2VhcmNoLjwvbGk+CiAgICAgIDxsaT5NaW5vciBidWcgZml4ZXMuPC9saT4KICAgIDwvdWw+CiAgPC9saT4KICA8bGk+MS41LjQgLSBNYXksIDIwMTAKICAgIDx1bD4KICAgICAgPGxpPkFkZHMgc29ydGluZyBieSBwdWJsaWMgY3VzdG9tIGZpZWxkcy48L2xpPgogICAgPC91bD4KICA8L2xpPgogIDxsaT4xLjUuNSAtIE1heSwgMjAxMAogICAgPHVsPgogICAgICA8bGk+TWlub3IgYnVnIGZpeGVzLjwvbGk+CiAgICA8L3VsPgogIDwvbGk+CiAgPGxpPjEuNS43IC0gTWF5LCAyMDEwCiAgICA8dWw+CiAgICAgIDxsaT5NaW5vciBidWcgZml4ZXMuPC9saT4KICAgIDwvdWw+CiAgPC9saT4KICA8bGk+MS41LjggLSBNYXksIDIwMTAKICAgIDx1bD4KICAgICAgPGxpPkFkZHMgY2F0ZWdvcnkgaW5mb3JtYXRpb24gZm9yIGVhY2ggbWF0Y2hpbmcgcHJvZHVjdCBpbiBzdW1tYXJ5IHZpZXcuPC9saT4KICAgIDwvdWw+CiAgPC9saT4KICA8bGk+MS42IC0gSnVuZSwgMjAxMAogICAgPHVsPgogICAgICA8bGk+Rml4ZXMgYSBtaW5vciBpc3N1ZSB3aXRoIHRoZSBzZWFyY2ggZnVuY3Rpb24gKGNvcHkvcGFzdGUgZXJyb3IpPC9saT4KICAgICAgPGxpPkFkZHMgY29tcGFueSBuYW1lIGluZm9ybWF0aW9uIHRvIHRoZSBkZXRhaWwgdXJsLjwvbGk+CiAgICAgIDxsaT5BZGRzICZxdW90O2JhY2smcXVvdDsgbGluayB0byB0aGUgc2V0dGluZ3MgYW5kIHRlbXBsYXRlIHBhZ2VzLjwvbGk+CiAgICAgIDxsaT5BZGRzIGZ1bmN0aW9uYWxpdHkgdG8gYWxsb3cgZHVwbGljYXRpbmcgYSBjb21wYW55IHJlY29yZC48L2xpPgogICAgPC91bD4KICA8L2xpPgogIDxsaT4xLjYuMSAtIEp1bmUsIDIwMTAKICAgIDx1bD4KICAgICAgPGxpPkFkZHMgZXh0cmEgZmllbGRzIHRvIGNhdGVnb3JpZXMuPC9saT4KICAgIDwvdWw+CiAgPC9saT4KICA8bGk+MS42LjIgLSBKdWx5LCAyMDEwCiAgICA8dWw+CiAgICAgIDxsaT5NaW5vciBidWcgZml4ZXMuPC9saT4KICAgIDwvdWw+CiAgPC9saT4KICA8bGk+MS42LjMgLSBKdWx5LCAyMDEwCiAgICA8dWw+CiAgICAgIDxsaT5NaW5vciBidWcgZml4ZXMuPC9saT4KICAgIDwvdWw+CiAgPC9saT4KICA8bGk+MS42LjQgLSBKdWx5LCAyMDEwCiAgICA8dWw+CiAgICAgIDxsaT5Tb3J0IGZpZWxkIGRlZmluaXRpb25zIGJ5IG5hbWUuPC9saT4KICAgICAgPGxpPkFkZHMgY2F0ZWdvcnkgc3BlY2lmaWMgZXh0cmExLGV4dHJhMixleHRyYTMgZmllbGRzIGFzc29jaWF0ZWQgd2l0aCBDb21wYW5pZXMuPC9saT4KICAgIDwvdWw+CiAgPC9saT4KICA8bGk+MS42LjUgLSBBdWd1c3QsIDIwMTAKICAgIDx1bD4KICAgICAgPGxpPkFkZHMgaWQgb3B0aW9uIHRvIHNvcnRieS48L2xpPgogICAgPC91bD4KICA8L2xpPgogIDxsaT4xLjYuNyAtIEF1Z3VzdCwgMjAxMAogICAgPHVsPgogICAgICA8bGk+QWRkcyBpbnRlZ2VyIHNvcnRpbmcgYnkgdGhlIHNvcnRieT1mOmZpZWxkX25hbWUgc3R1ZmYuPC9saT4KICAgICAgPGxpPk1pbm9yIGltcHJvdmVtZW50IHRvIHRoZSBzZWFyY2ggc3R1ZmYgd3J0IGNhdGVnb3JpZXMuPC9saT4KICAgICAgPGxpPlNvcnQgdGhlIGNhdGVnb3JpZXMgb3V0cHV0IHRvIHRoZSBzZWFyY2ggZm9ybS48L2xpPgogICAgPC91bD4KICA8L2xpPgogIDxsaT4xLjYuOCAtIFNlcHRlbWJlciwgMjAxMAogICAgPHVsPgogICAgICA8bGk+Rml4ZXMgdG8gc2VhcmNoIGFjdGlvbi48L2xpPgogICAgPC91bD4KICA8L2xpPgogIDxsaT4xLjYuOSAtIFNlcHRlbWJlciwgMjAxMAogICAgPHVsPgogICAgICA8bGk+Q1NWIEltcG9ydCBJbXByb3ZlbWVudHMuPC9saT4KICAgIDwvdWw+CiAgPC9saT4KICA8bGk+MS43IC0gU2VwdGVtYmVyLCAyMDEwCiAgICA8dWw+CiAgICAgIDxsaT5BZGRzIGhpZXJhcmNoeSBjYXBhYmlsaXRpZXMgdG8gc2VhcmNoIGFjdGlvbi48L2xpPgogICAgPC91bD4KICA8L2xpPgogIDxsaT4xLjcuMiAtIFNlcHRlbWJlciwgMjAxMAogICAgPHVsPgogICAgICA8bGk+QWRkcyB0aGUgYWJpbGl0eSB0byBkbyBhIExJS0Ugc2VhcmNoIG9uIHRoZSBhZGRyZXNzIGZpZWxkIHdoZW4gZG9pbmcgYSBwb3N0Y29kZSBzZWFyY2guPC9saT4KICAgIDwvdWw+CiAgPC9saT4KICA8bGk+MS43LjMgLSBKYW51YXJ5LCAyMDExCiAgIDx1bD4KICAgICA8bGk+TWFueSBtaW5vciBidWcgZml4ZXMsIGluY2x1ZGluZyBjaGFuZ2VzIHRvIHdvcmsgd2l0aCBuZXcgQ0dHTTwvbGk+CiAgIDwvdWw+CiAgPC9saT4KICA8bGk+MS44IC0gSmFudWFyeSwgMjAxMQogICA8dWw+CiAgIDxsaT5BZGRzIHN1cHBvcnQgZm9yIGNvbXBhbnkgVVJMUyAoYWxhIENNU01TIDEuOSkgd2hlbiBjb21wYW5pZXMgYXJlIHVwZGF0ZWQgZnJvbSB0aGUgYWRtaW4gaW50ZXJmYWNlLjwvbGk+CiAgIDxsaT5BZGRzIHN1cHBvcnQgZm9yIGRvaW5nIGEgMzAxIHJlZGlyZWN0IHRvIHRoZSBuZXcgVVJMIGlmIGEgY29tcGFueSBpcyBhY2Nlc3NlZCB2aWEgdGhlIG9sZCBVUkwgYW5kIGEgbmV3IFVSTCBleGlzdHMuPC9saT4KICAgPGxpPkFkZHMgdGhlIGFiaWxpdHkgdG8gcGFzcyB0aGUgbGF0aXR1ZGUgYW5kIGxvbmdpdHVkZSBpbiB0byB0aGUgc2VhcmNoLjwvbGk+CiAgIDwvdWw+CiAgPC9saT4KICA8bGk+MS44LjEgLSBNYXJjaCwgMjAxMQogICA8dWw+CiAgIDxsaT5CdWcgZml4ZXMuPC9saT4KICAgPC91bD4KICA8L2xpPgogIDxsaT4xLjguMiAtIE1hcmNoLCAyMDExCiAgIDx1bD4KICAgPGxpPkFkZHMgJGVudHJ5LT5maWVsZHMgdG8gdGhlIGRldGFpbCBhbmQgc3VtbWFyeSB2aWV3cy48L2xpPgogICA8bGk+T2ZmaWNpYWxseSBkZXByZWNhdGUgdGhlIGN1c3RvbWZpZWxkc2J5bmFtZSBzdHVmZi48L2xpPgogICA8bGk+QWRkICRlbnRyeS0+Y2Fub25pY2FsIHRvIHRoZSBkZXRhaWwgdmlldy48L2xpPgogICA8L3VsPgogIDwvbGk+CiAgPGxpPjEuOSAtIEF1Z3VzdCwgMjAxMQogICA8dWw+CiAgIDxsaT5BZGRzIHRoZSBhYmlsaXR5IHRvIHVwZGF0ZSBjb21wYW55IHJlY29yZHMgdmlhIGNzdiBmaWxlcy48L2xpPgogICA8L3VsPgogIDwvbGk+CiAgPGxpPjEuMTAgLSBTZXB0ZW1iZXIsIDIwMTEKICAgPHVsPgogICA8bGk+QWRkcyBuZXcgZmlsdGVyLCBxdWVyeSwgYW5kIHBhZ2luYXRpb24gY2xhc3Nlcy48L2xpPgogICA8bGk+QWRkcyB0aGUgYWJpbGl0eSB0byBwcmVsb2FkIGZpZWxkIGFuZCBjYXRlZ29yeSBpbmZvcm1hdGlvbiBmb3Igc2VsZWN0ZWQgY29tcGFuaWVzLjwvbGk+CiAgIDxsaT5SZXdyaXRlIHN1bW1hcnkgdmlldyB0byB1c2UgbmV3IGNsYXNzZXMuPC9saT4KICAgPGxpPlJlbW92ZXMgdGhlIGNhdGVnb3J5IGZvcm0gZnJvbSB0aGUgc3VtbWFyeSB2aWV3Li4uIG1hbnkgYmV0dGVyIHdheXMgdG8gaGFuZGxlIHRoaXMuPC9saT4KICAgPC91bD4KICA8L2xpPgogIDxsaT4xLjEwLjEgLSBTZXB0ZW1iZXIsIDIwMTEKICAgPHVsPgogICA8bGk+TWlub3IgYnVnIGZpeGVzLjwvbGk+CiAgIDwvdWw+CiAgPC9saT4KICA8bGk+MS4xMC4xMCAtIE5vdmVtYmVyLCAyMDExCiAgIDx1bD4KICAgPGxpPkZpeGVzIGFuIGlzc3VlIHdpdGggaW1hZ2UgdXBsb2FkIGZpZWxkcyB3aGVuIGVkaXRpbmcgY29tcGFuaWVzLjwvbGk+CiAgIDwvdWw+CiAgPC9saT4KICA8bGk+MS4xMC4xMSAtIE5vdmVtYmVyLCAyMDExCiAgIDx1bD4KICAgICA8bGk+Q2F0ZWdvcnkgbmFtZXMgbXVzdCBub3cgb25seSBoYXZlIHZhbGlkIGNoYXJzLjwvbGk+CiAgICAgPGxpPk1pbm9yIGZpeGVzLjwvbGk+IAogICA8L3VsPgogIDxsaT4gIAogIDxsaT4xLjExIC0gRGVjZW1iZXIsIDIwMTEKICAgPHVsPgogICAgIDxsaT5NaW5vciBidWcgZml4ZXMuPC9saT4KICAgICA8bGk+SW1wcm92ZW1lbnRzIHRvIHRoZSBkZXRhaWwgdmlldyAoc29tZSB0ZW1wbGF0ZXMgbWF5IG5lZWQgY2hhbmdpbmcpLjwvbGk+CiAgIDwvdWw+CiAgPC9saT4KICA8bGk+MS4xMiAtIERlY2VtYmVyLCAyMDExCiAgIDx1bD4KICAgICA8bGk+TWlub3IgYnVnIGZpeGVzLjwvbGk+CiAgICAgPGxpPkFkZHMgZmlsdGVyaW5nIHRvIHRoZSBjb21wYW55IGxpc3QgaW4gdGhlIGFkbWluIGludGVyZmFjZS48L2xpPgogICAgIDxsaT5BZGRzIHRoZSBjYXRlZ29yeTIgYW5kIGNhdGVnb3J5MyBwYXJhbWV0ZXJzLjwvbGk+CiAgICAgPGxpPkFkZHMgdGhlIGFiaWxpdHkgdG8gc3BlY2lmeSBhIGNhdGVnb3J5IE9SIGEgaGllciBwYXJhbWV0ZXIgdG8gdGhlIGNhdGVnb3J5bGlzdCB2aWV3LjwvbGk+CiAgIDwvdWw+CiAgPC9saT4KPC91bD4K]]></data>
	</file>
	<file>
	  <filename>/CompanyDirectory.module.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2IC0gMjAxMSBieSBSb2JlcnQgQ2FtcGJlbGwgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMKIyAgQW4gYWRkb24gbW9kdWxlIGZvciBDTVMgTWFkZSBTaW1wbGUgdG8gYWxsb3cgbWFuYWdlbWVudCBvZiBhbmQgdmFyaW91cyB3YXlzIHRvIGRpc3BsYXkKIyAgY29tcGFueSBpbmZvcm1hdGlvbiBmb3IgdXNlIGluIGRpcmVjdG9yaWVzIGV0Yy4KIyAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUtMjAxMCBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQoKJGNnZXh0ZW5zaW9ucyA9IGNtc19qb2luX3BhdGgoJGdDbXMtPmNvbmZpZ1sncm9vdF9wYXRoJ10sJ21vZHVsZXMnLAoJCQkgICAgICAnQ0dFeHRlbnNpb25zJywnQ0dFeHRlbnNpb25zLm1vZHVsZS5waHAnKTsKaWYoICFpc19yZWFkYWJsZSggJGNnZXh0ZW5zaW9ucyApICkKewogIGVjaG8gJzxoMT48Zm9udCBjb2xvcj0icmVkIj5FUlJPUjogVGhlIENHRXh0ZW5zaW9ucyBtb2R1bGUgY291bGQgbm90IGJlIGZvdW5kLjwvZm9udD48L2gxPic7CiAgcmV0dXJuOwp9CnJlcXVpcmVfb25jZSgkY2dleHRlbnNpb25zKTsKCmRlZmluZSgnQ09NUEFOWURJUl9QUkVGX05FV1NVTU1BUllfVEVNUExBVEUnLCdjb21wYW55ZGlyX3ByZWZfbmV3c3VtbWFyeV90ZW1wbGF0ZScpOwpkZWZpbmUoJ0NPTVBBTllESVJfUFJFRl9ERkxUU1VNTUFSWV9URU1QTEFURScsJ2NvbXBhbnlkaXJfcHJlZl9kZmx0c3VtbWFyeV90ZW1wbGF0ZScpOwpkZWZpbmUoJ0NPTVBBTllESVJfUFJFRl9ORVdERVRBSUxfVEVNUExBVEUnLCdjb21wYW55ZGlyX3ByZWZfbmV3ZGV0YWlsX3RlbXBsYXRlJyk7CmRlZmluZSgnQ09NUEFOWURJUl9QUkVGX0RGTFRERVRBSUxfVEVNUExBVEUnLCdjb21wYW55ZGlyX3ByZWZfZGZsdGRldGFpbF90ZW1wbGF0ZScpOwpkZWZpbmUoJ0NPTVBBTllESVJfUFJFRl9ORVdDQVRFR09SWUxJU1RfVEVNUExBVEUnLCdjb21wYW55ZGlyX3ByZWZfbmV3Y2F0ZWdvcnlsaXN0X3RlbXBsYXRlJyk7CmRlZmluZSgnQ09NUEFOWURJUl9QUkVGX0RGTFRDQVRFR09SWUxJU1RfVEVNUExBVEUnLCdjb21wYW55ZGlyX3ByZWZfZGZsdGNhdGVnb3J5bGlzdF90ZW1wbGF0ZScpOwpkZWZpbmUoJ0NPTVBBTllESVJfUFJFRl9ORVdISUVSTElTVF9URU1QTEFURScsJ2NvbXBhbnlkaXJfcHJlZl9uZXdoaWVybGlzdF90ZW1wbGF0ZScpOwpkZWZpbmUoJ0NPTVBBTllESVJfUFJFRl9ERkxUSElFUkxJU1RfVEVNUExBVEUnLCdjb21wYW55ZGlyX3ByZWZfZGZsdGhpZXJsaXN0X3RlbXBsYXRlJyk7CmRlZmluZSgnQ09NUEFOWURJUl9QUkVGX05FV1NFQVJDSEZPUk1fVEVNUExBVEUnLCdjb21wYW55ZGlyX3ByZWZfbmV3c2VhcmNoZm9ybV90ZW1wbGF0ZScpOwpkZWZpbmUoJ0NPTVBBTllESVJfUFJFRl9ERkxUU0VBUkNIRk9STV9URU1QTEFURScsJ2NvbXBhbnlkaXJfcHJlZl9kZmx0c2VhcmNoZm9ybV90ZW1wbGF0ZScpOwpkZWZpbmUoJ0NPTVBBTllESVJfUFJFRl9ORVdGUk9OVEVOREZPUk1fVEVNUExBVEUnLCdjb21wYW55ZGlyX3ByZWZfbmV3ZnJvbnRlbmRmb3JtX3RlbXBsYXRlJyk7CmRlZmluZSgnQ09NUEFOWURJUl9QUkVGX0RGTFRGUk9OVEVOREZPUk1fVEVNUExBVEUnLCdjb21wYW55ZGlyX3ByZWZfZGZsdGZyb250ZW5kZm9ybV90ZW1wbGF0ZScpOwpkZWZpbmUoJ0NPTVBBTllESVJfUFJFRl9ORVdGUk9OVEVORExJU1RfVEVNUExBVEUnLCdjb21wYW55ZGlyX3ByZWZfbmV3ZnJvbnRlbmRsaXN0X3RlbXBsYXRlJyk7CmRlZmluZSgnQ09NUEFOWURJUl9QUkVGX0RGTFRGUk9OVEVORExJU1RfVEVNUExBVEUnLCdjb21wYW55ZGlyX3ByZWZfZGZsdGZyb250ZW5kbGlzdF90ZW1wbGF0ZScpOwpkZWZpbmUoJ0NPTVBBTllESVJfRlJPTlRFTkRJTVBPUlRfVEVNUExBVEUnLCdjb21wYW55ZGlyX2Zyb250ZW5kaW1wb3J0X3RlbXBsYXRlJyk7CgpjbGFzcyBDb21wYW55RGlyZWN0b3J5IGV4dGVuZHMgQ0dFeHRlbnNpb25zCnsKICB2YXIgJF9jb21wYW55X25hbWVfY2FjaGU7CiAgcHJpdmF0ZSAkX2NhdGVnb3JpZXM7CiAgcHJpdmF0ZSAkX2NhdGVnb3J5X3ByZWxvYWQ7CiAgcHJpdmF0ZSAkX2ZpZWxkZGVmczsKICBwcml2YXRlICRfZmllbGRpbmZvX3ByZWxvYWQ7CgogIGZ1bmN0aW9uIF9fY29uc3RydWN0KCkKICB7CiAgICBwYXJlbnQ6Ol9fY29uc3RydWN0KCk7CgkkdGhpcy0+X2NvbXBhbnlfbmFtZV9jYWNoZSA9IGFycmF5KCk7CiAgfQoKCWZ1bmN0aW9uIEdldE5hbWUoKQoJewoJCXJldHVybiAnQ29tcGFueURpcmVjdG9yeSc7Cgl9CgoJZnVuY3Rpb24gR2V0RnJpZW5kbHlOYW1lKCkKCXsKCQlyZXR1cm4gJHRoaXMtPkxhbmcoJ2NvbXBhbnlkaXJlY3RvcnknKTsKCX0KCglmdW5jdGlvbiBHZXREZXBlbmRlbmNpZXMoKQoJewoJICByZXR1cm4gYXJyYXkoJ0NHRXh0ZW5zaW9ucyc9PicxLjIzJywKCQkJCSAgICdDR1NpbXBsZVNtYXJ0eSc9PicxLjQuNCcsCgkJCQkgICAnSlF1ZXJ5VG9vbHMnPT4nMS4wLjEwJyk7Cgl9CgoJZnVuY3Rpb24gSXNQbHVnaW5Nb2R1bGUoKQoJewoJCXJldHVybiB0cnVlOwoJfQoKCWZ1bmN0aW9uIEhhc0FkbWluKCkKCXsKCQlyZXR1cm4gdHJ1ZTsKCX0KCglmdW5jdGlvbiBHZXRWZXJzaW9uKCkKCXsKCQlyZXR1cm4gJzEuMTInOwoJfQoKCWZ1bmN0aW9uIE1pbmltdW1DTVNWZXJzaW9uKCkKCXsKCQlyZXR1cm4gJzEuOS40LjMnOwoJfQoKCWZ1bmN0aW9uIEdldEFkbWluRGVzY3JpcHRpb24oKQoJewoJCXJldHVybiAkdGhpcy0+TGFuZygnbW9kZGVzY3JpcHRpb24nKTsKCX0KCglmdW5jdGlvbiBWaXNpYmxlVG9BZG1pblVzZXIoKQoJewoJICByZXR1cm4gJHRoaXMtPkNoZWNrUGVybWlzc2lvbignTW9kaWZ5IENvbXBhbnkgRGlyZWN0b3J5JykgfHwKCQkkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdNb2RpZnkgVGVtcGxhdGVzJykgfHwKCQkkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdNb2RpZnkgU2l0ZSBQcmVmZXJlbmNlcycpOwoJfQoKCWZ1bmN0aW9uIFNldFBhcmFtZXRlcnMoKQoJewoJICAkdGhpcy0+UmVnaXN0ZXJNb2R1bGVQbHVnaW4oKTsKCSAgJHRoaXMtPlJlc3RyaWN0VW5rbm93blBhcmFtcygpOwoKCSAgJGRldGFpbHBhZ2UgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZGV0YWlscGFnZScsLTEpOwoJICBpZiggJGRldGFpbHBhZ2UgPT0gLTEgKQoJCXsKCQkgICRjb250ZW50b3BzID0gY21zbXMoKS0+R2V0Q29udGVudE9wZXJhdGlvbnMoKTsKCQkgICRkZXRhaWxwYWdlID0gJGNvbnRlbnRvcHMtPkdldERlZmF1bHRDb250ZW50KCk7CgkJfQoJICAkZGIgPSBjbXNtcygpLT5HZXREYigpOwoJICAkcGFybXMgPSBhcnJheSgncHVibGlzaGVkJywnJyk7CgkgICRxdWVyeSA9ICdTRUxFQ1QgaWQsdXJsIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9jb21wZGlyX2NvbXBhbmllcyBXSEVSRSBzdGF0dXMgPSA/IEFORCB1cmwgIT0gPyc7CgkgIC8vIHRvZG86IGRvbid0IGFkZCByb3V0ZXMgZm9yIHJlY29yZHMgb3duZWQgYnkgZXhwaXJlZCBGRVUncy4uLiBidXQgd2UnbGwgbGV0IHN1bW1hcnkgYW5kIGRldGFpbCB2aWV3cyBoYW5kbGUgdGhpcyBhdG0uCgkgICR0bXAgPSAkZGItPkdldEFycmF5KCRxdWVyeSwkcGFybXMpOwoJICBpZiggaXNfYXJyYXkoJHRtcCkgKQoJCXsKCQkgIGZvcmVhY2goICR0bXAgYXMgJG9uZSApCgkJCXsKCQkJICAkcGFybXMgPSBhcnJheSgnYWN0aW9uJz0+J2RldGFpbHMnLCdyZXR1cm5pZCc9PiRkZXRhaWxwYWdlLAoJCQkJCQkJICdjb21wYW55aWQnPT4kb25lWydpZCddKTsKCQkJICAkcm91dGUgPSBuZXcgQ21zUm91dGUoJG9uZVsndXJsJ10sJHRoaXMtPkdldE5hbWUoKSwkcGFybXMsVFJVRSk7CgkJCSAgY21zX3JvdXRlX21hbmFnZXI6OnJlZ2lzdGVyKCRyb3V0ZSk7CgkJCX0KCQl9CgoJICAkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdhY3Rpb24nLCdkZWZhdWx0JywkdGhpcy0+TGFuZygncGFyYW1fYWN0aW9uJykpOwoKCSAgJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignY29tcGFueWlkJywnJywkdGhpcy0+TGFuZygncGFyYW1fY29tcGFueWlkJykpOwoJICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnY29tcGFueWlkJyxDTEVBTl9JTlQpOwoKCSAgJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignZGV0YWlscGFnZScsJycsJHRoaXMtPkxhbmcoJ3BhcmFtX2RldGFpbHBhZ2UnKSk7CgkgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdkZXRhaWxwYWdlJyxDTEVBTl9TVFJJTkcpOwoKCSAgJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignY2F0ZWdvcnlsaXN0dGVtcGxhdGUnLCcnLCR0aGlzLT5MYW5nKCdwYXJhbV9jYXRlZ29yeWxpc3R0ZW1wbGF0ZScpKTsKCSAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2NhdGVnb3J5bGlzdHRlbXBsYXRlJyxDTEVBTl9TVFJJTkcpOwoJICAkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdoaWVybGlzdHRlbXBsYXRlJywnJywkdGhpcy0+TGFuZygncGFyYW1faGllcmxpc3R0ZW1wbGF0ZScpKTsKCSAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2hpZXJsaXN0dGVtcGxhdGUnLENMRUFOX1NUUklORyk7CgoJICAkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdzZWFyY2hmb3JtdGVtcGxhdGUnLCcnLCR0aGlzLT5MYW5nKCdwYXJhbV9zZWFyY2hmb3JtdGVtcGxhdGUnKSk7CgkgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdzZWFyY2hmb3JtdGVtcGxhdGUnLENMRUFOX1NUUklORyk7CgoJICAkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdkZXRhaWx0ZW1wbGF0ZScsJycsJHRoaXMtPkxhbmcoJ3BhcmFtX2RldGFpbHRlbXBsYXRlJykpOwoJICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnZGV0YWlsdGVtcGxhdGUnLENMRUFOX1NUUklORyk7CgoJICAkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdmcm9udGVuZGZvcm10ZW1wbGF0ZScsJycsJHRoaXMtPkxhbmcoJ3BhcmFtX2Zyb250ZW5kZm9ybXRlbXBsYXRlJykpOwoJICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnZnJvbnRlbmRmb3JtdGVtcGxhdGUnLENMRUFOX1NUUklORyk7CgoJICAkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdmcm9udGVuZGxpc3R0ZW1wbGF0ZScsJycsJHRoaXMtPkxhbmcoJ3BhcmFtX2Zyb250ZW5kbGlzdHRlbXBsYXRlJykpOwoJICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnZnJvbnRlbmRsaXN0dGVtcGxhdGUnLENMRUFOX1NUUklORyk7CgoJICAkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdzdW1tYXJ5dGVtcGxhdGUnLCcnLCR0aGlzLT5MYW5nKCdwYXJhbV9zdW1tYXJ5dGVtcGxhdGUnKSk7CgkgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdzdW1tYXJ5dGVtcGxhdGUnLENMRUFOX1NUUklORyk7CgoJICAkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdzaG93YWxsJywnJywkdGhpcy0+TGFuZygncGFyYW1fc2hvd2FsbCcpKTsKCSAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ3Nob3dhbGwnLENMRUFOX0lOVCk7CgoJICAkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdzb3J0YnknLCdjb21wYW55X25hbWUnLCR0aGlzLT5MYW5nKCdwYXJhbV9zb3J0YnknKSk7CgkgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdzb3J0YnknLENMRUFOX1NUUklORyk7CgkgICR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ3NvcnRvcmRlcicsJ2FzYycsJHRoaXMtPkxhbmcoJ3BhcmFtX3NvcnRvcmRlcicpKTsKCSAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ3NvcnRvcmRlcicsQ0xFQU5fU1RSSU5HKTsKCSAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ3NlYXJjaGFkZHJlc3MnLENMRUFOX0lOVCk7CgkgICR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ3NlYXJjaGFkZHJlc3MnLCcwJywkdGhpcy0+TGFuZygncGFyYW1fc2VhcmNoYWRkcmVzcycpKTsKCSAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ3Bvc3RhbGNoYXJzJyxDTEVBTl9JTlQpOwoJICAkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdwb3N0YWxjaGFycycsJzAnLCR0aGlzLT5MYW5nKCdwYXJhbV9wb3N0YWxjaGFycycpKTsKCgkgICR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ2hpZXInLCcnLCR0aGlzLT5MYW5nKCdwYXJhbV9oaWVyJykpOwoJICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnaGllcicsQ0xFQU5fU1RSSU5HKTsKCgkgICR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ25hbWUnLCcnLCR0aGlzLT5MYW5nKCdwYXJhbV9uYW1lJykpOwoJICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnbmFtZScsQ0xFQU5fU1RSSU5HKTsKCgkgICR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ2NhdGVnb3J5JywnJywkdGhpcy0+TGFuZygncGFyYW1fY2F0ZWdvcnknKSk7CgkgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdjYXRlZ29yeScsQ0xFQU5fU1RSSU5HKTsKCSAgJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignY2F0ZWdvcnkyJywnJywkdGhpcy0+TGFuZygncGFyYW1fY2F0ZWdvcnkyJykpOwoJICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnY2F0ZWdvcnkyJyxDTEVBTl9TVFJJTkcpOwoJICAkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdjYXRlZ29yeTMnLCcnLCR0aGlzLT5MYW5nKCdwYXJhbV9jYXRlZ29yeTMnKSk7CgkgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdjYXRlZ29yeTMnLENMRUFOX1NUUklORyk7CgoJICAkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdpbmxpbmUnLDAsJHRoaXMtPkxhbmcoJ3BhcmFtX2lubGluZScpKTsKCSAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2lubGluZScsQ0xFQU5fSU5UKTsKCgkgICR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ3BhZ2VsaW1pdCcsJycsJHRoaXMtPkxhbmcoJ3BhcmFtX3BhZ2VsaW1pdCcpKTsKCSAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ3BhZ2VsaW1pdCcsQ0xFQU5fSU5UKTsKCgkgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdjYXRlZ29yeWlkJyxDTEVBTl9JTlQpOwogICAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZShDTEVBTl9SRUdFWFAuJy9jZF8uKi8nLENMRUFOX1NUUklORyk7CgoJICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgncGFnZScsQ0xFQU5fSU5UKTsKCgkgICR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ3Jlc3VsdHBhZ2UnLCcnLCR0aGlzLT5MYW5nKCdwYXJhbV9yZXN1bHRwYWdlJykpOwoJICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgncmVzdWx0cGFnZScsQ0xFQU5fU1RSSU5HKTsKCgkgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdqdW5rJyxDTEVBTl9TVFJJTkcpOwoJICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnb3JpZ2FjdGlvbicsQ0xFQU5fU1RSSU5HKTsKCgkgIC8vIEZyaWVuZGx5IFVSTCBzdHVmZgoJICAvLyB0b2RvLCBhZGQgZGVmYXVsdHMgaGVyZQoJICBpZiggJHRoaXMtPkdldFByZWZlcmVuY2UoJ3VybF9yZWRpcmVjdG9sZCcsMCkgKQoJCXsKCQkgICR0aGlzLT5SZWdpc3RlclJvdXRlKCcvW2NDXW9tcGFuaWVzXC8oP1A8Y29tcGFueWlkPlswLTldKylcLyg/UDxyZXR1cm5pZD5bMC05XSspXC9kLCg/UDxkZXRhaWx0ZW1wbGF0ZT4uKj8pJC8nLAoJCQkJCQkJICAgYXJyYXkoJ2FjdGlvbic9PidoYW5kbGVfb2xkcm91dGUnLCdvcmlnYWN0aW9uJz0+J2RldGFpbHMnKSk7CgkJICAkdGhpcy0+UmVnaXN0ZXJSb3V0ZSgnL1tjQ11vbXBhbmllc1wvKD9QPGNvbXBhbnlpZD5bMC05XSspXC8oP1A8cmV0dXJuaWQ+WzAtOV0rKVwvKD9QPGp1bms+Lio/KSQvJywKCQkJCQkJCSAgIGFycmF5KCdhY3Rpb24nPT4naGFuZGxlX29sZHJvdXRlJywnb3JpZ2FjdGlvbic9PidkZXRhaWxzJykpOwoJCSAgJHRoaXMtPlJlZ2lzdGVyUm91dGUoJy9bY0Ndb21wYW5pZXNcLyg/UDxjb21wYW55aWQ+WzAtOV0rKVwvKD9QPHJldHVybmlkPlswLTldKykkLycsCgkJCQkJCQkgICBhcnJheSgnYWN0aW9uJz0+J2hhbmRsZV9vbGRyb3V0ZScsJ29yaWdhY3Rpb24nPT4nZGV0YWlscycpKTsKCQkgICR0aGlzLT5SZWdpc3RlclJvdXRlKCcvW2NDXW9tcGFuaWVzXC8oP1A8Y29tcGFueWlkPlswLTldKykkLycsCgkJCQkJCQkgICBhcnJheSgnYWN0aW9uJz0+J2hhbmRsZV9vbGRyb3V0ZScsJ29yaWdhY3Rpb24nPT4nZGV0YWlscycsJ3JldHVybmlkJz0+JGRldGFpbHBhZ2UpKTsKCQl9CgkgIGVsc2UKCQl7CgkJICAkdGhpcy0+UmVnaXN0ZXJSb3V0ZSgnL1tjQ11vbXBhbmllc1wvKD9QPGNvbXBhbnlpZD5bMC05XSspXC8oP1A8cmV0dXJuaWQ+WzAtOV0rKVwvZCwoP1A8ZGV0YWlsdGVtcGxhdGU+Lio/KSQvJyk7IC8vIGRlcHJlY2F0ZWQuCgkJICAkdGhpcy0+UmVnaXN0ZXJSb3V0ZSgnL1tjQ11vbXBhbmllc1wvKD9QPGNvbXBhbnlpZD5bMC05XSspXC8oP1A8cmV0dXJuaWQ+WzAtOV0rKVwvKD9QPGp1bms+Lio/KSQvJyk7CgkJICAkdGhpcy0+UmVnaXN0ZXJSb3V0ZSgnL1tjQ11vbXBhbmllc1wvKD9QPGNvbXBhbnlpZD5bMC05XSspXC8oP1A8cmV0dXJuaWQ+WzAtOV0rKSQvJyk7CgkJICAkdGhpcy0+UmVnaXN0ZXJSb3V0ZSgnL1tjQ11vbXBhbmllc1wvKD9QPGNvbXBhbnlpZD5bMC05XSspJC8nKTsKCQl9CgkgIC8vIHN1bW1hcnkgdmlld3MuCgkgICR0aGlzLT5SZWdpc3RlclJvdXRlKCcvW2NDXW9tcGFuaWVzXC9ieWNhdGVnb3J5XC8oP1A8Y2F0ZWdvcnlpZD5bMC05XSspJC8nKTsKCSAgJHRoaXMtPlJlZ2lzdGVyUm91dGUoJy9bY0Ndb21wYW5pZXNcL2J5Y2F0ZWdvcnlcLyg/UDxjYXRlZ29yeWlkPlswLTldKylcLyg/UDxyZXR1cm5pZD5bMC05XSspJC8nKTsKCX0KCglmdW5jdGlvbiBJbnN0YWxsUG9zdE1lc3NhZ2UoKQoJewoJICByZXR1cm4gJHRoaXMtPkxhbmcoJ3Bvc3RpbnN0YWxsJyk7Cgl9CgoJZnVuY3Rpb24gVW5pbnN0YWxsUG9zdE1lc3NhZ2UoKQoJewoJICByZXR1cm4gJHRoaXMtPkxhbmcoJ3Bvc3R1bmluc3RhbGwnKTsKCX0KCglmdW5jdGlvbiBVbmluc3RhbGxQcmVNZXNzYWdlKCkKCXsKCSAgcmV0dXJuICR0aGlzLT5MYW5nKCdwcmV1bmluc3RhbGwnKTsKCX0KCglmdW5jdGlvbiBHZXRIZWxwKCRsYW5nPSdlbl9VUycpCgl7CgkJcmV0dXJuICR0aGlzLT5MYW5nKCdoZWxwJyk7Cgl9CgoJZnVuY3Rpb24gR2V0QWRtaW5TZWN0aW9uKCkKCXsKCSAgcmV0dXJuICdjb250ZW50JzsKCX0KCglmdW5jdGlvbiBBbGxvd0F1dG9JbnN0YWxsKCkKCXsKCQlyZXR1cm4gRkFMU0U7Cgl9CgoJZnVuY3Rpb24gQWxsb3dBdXRvVXBncmFkZSgpCgl7CgkJcmV0dXJuIEZBTFNFOwoJfQoKCWZ1bmN0aW9uIEdldEF1dGhvcigpCgl7CgkJcmV0dXJuICdUZWQgS3VscCc7Cgl9CgoJZnVuY3Rpb24gR2V0QXV0aG9yRW1haWwoKQoJewoJCXJldHVybiAndGVkQHRlbjM5LmNvbSc7Cgl9CgoJZnVuY3Rpb24gR2V0Q2hhbmdlTG9nKCkKCXsKCSAgJGZuID0gZGlybmFtZShfX0ZJTEVfXykuJy9jaGFuZ2Vsb2cuaW5jJzsKCSAgaWYoIGZpbGVfZXhpc3RzKCRmbikgKQoJCXsKCQkgICR0ID0gZmlsZV9nZXRfY29udGVudHMoJGZuKTsKCQkgIHJldHVybiAkdDsKCQl9Cgl9CgoJZnVuY3Rpb24gR2V0RXZlbnREZXNjcmlwdGlvbiggJGV2ZW50bmFtZSApCgl7CgkJcmV0dXJuICR0aGlzLT5sYW5nKCdldmVudGRlc2MtJyAuICRldmVudG5hbWUpOwoJfQoKCWZ1bmN0aW9uIEdldEV2ZW50SGVscCggJGV2ZW50bmFtZSApCgl7CgkJcmV0dXJuICR0aGlzLT5sYW5nKCdldmVudGhlbHAtJyAuICRldmVudG5hbWUpOwoJfQoKCQogIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgIEdldEhlYWRlckhUTUwoKQogICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwogIGZ1bmN0aW9uIEdldEhlYWRlckhUTUwoKQogIHsKICAgICRvYmogPSYgJHRoaXMtPkdldE1vZHVsZUluc3RhbmNlKCdKUXVlcnlUb29scycpOwogICAgaWYoIGlzX29iamVjdCgkb2JqKSApCiAgICAgIHsKJHRtcGwgPSA8PDxFT1QKe0pRdWVyeVRvb2xzIGFjdGlvbj0naW5janMnIGV4Y2x1ZGU9J2Zvcm0nfQp7SlF1ZXJ5VG9vbHMgYWN0aW9uPSdyZWFkeSd9CkVPVDsKICAgICAgICByZXR1cm4gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhKCR0bXBsKTsKICAgICAgfQogIH0JCgoKICBmdW5jdGlvbiBHZXRGaWVsZFR5cGVzKCkKICB7CglyZXR1cm4gYXJyYXkoJ3RleHRib3gnICA9PiAkdGhpcy0+TGFuZygnZmllbGRfdGV4dGJveCcpLAoJCQkJICdjaGVja2JveCcgPT4gJHRoaXMtPkxhbmcoJ2ZpZWxkX2NoZWNrYm94JyksCgkJCQkgJ3RleHRhcmVhJyA9PiAkdGhpcy0+TGFuZygnZmllbGRfdGV4dGFyZWEnKSwKCQkJCSAnZHJvcGRvd24nID0+ICR0aGlzLT5MYW5nKCdmaWVsZF9kcm9wZG93bicpLAoJCQkJICdpbWFnZScgPT4gJHRoaXMtPkxhbmcoJ2ZpZWxkX2ltYWdlJykpOwogIH0KCQoJZnVuY3Rpb24gR2V0Q2F0ZWdvcmllcygkYXNIYXNoID0gRkFMU0UpCgl7CgkgIGlmKCAhJHRoaXMtPl9jYXRlZ29yaWVzICkKCQl7CgkJICAkZW50cnlhcnJheSA9IGFycmF5KCk7CgkJICAKCQkgIGdsb2JhbCAkZ0NtczsKCQkgICRkYiA9ICRnQ21zLT5HZXREQigpOwoJCSAgCgkJICAkcXVlcnkgPSAnU0VMRUNUICogRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfY2F0ZWdvcmllcyc7CgkJICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5KTsKCQkgIHdoaWxlKCAhJGRicmVzdWx0LT5FT0YgKQoJCQl7CgkJCSAgJG9uZXJvdyA9IGNnZV9hcnJheTo6dG9fb2JqZWN0KCRkYnJlc3VsdC0+ZmllbGRzKTsKCQkJICAkZW50cnlhcnJheVtdID0gJG9uZXJvdzsKCQkJICAkZGJyZXN1bHQtPk1vdmVOZXh0KCk7CgkJCX0KCgkJICAkdGhpcy0+X2NhdGVnb3JpZXMgPSAkZW50cnlhcnJheTsKCQl9CgoJICBpZiggJGFzSGFzaCApCgkJewoJCSAgJHRtcCA9IGFycmF5KCk7CgkJICBmb3JlYWNoKCAkdGhpcy0+X2NhdGVnb3JpZXMgYXMgJG9uZSApCgkJCXsKCQkJICAkdG1wWyRvbmUtPmlkXSA9ICRvbmU7CgkJCX0KCQkgIHJldHVybiAkdG1wOwoJCX0KCgkgIHJldHVybiAkdGhpcy0+X2NhdGVnb3JpZXM7Cgl9CgkKCiAgICBmdW5jdGlvbiBwcmVsb2FkQ2F0ZWdvcnlEYXRhKCRpZHMpCiAgICB7CgkgIGlmKCAhaXNfYXJyYXkoJGlkcykgJiYgaXNfbnVtZXJpYygkaWRzKSApCgkJewoJCSAgJGlkcyA9IGFycmF5KCRpZHMpOwoJCX0KCgkgICRkYiA9IGNtc21zKCktPkdldERiKCk7CgkgICRjb25maWcgPSBjbXNtcygpLT5HZXRDb25maWcoKTsKCSAgJHRtcCA9IGFycmF5KCk7CgkgIGZvciggJGkgPSAwOyAkaSA8IGNvdW50KCRpZHMpOyAkaSsrICkKCQl7CgkJICAkbiA9IChpbnQpJGlkc1skaV07CgkJICBpZiggJG4gPCAwICkgY29udGludWU7CgkJICBpZiggaXNfYXJyYXkoJHRoaXMtPl9jYXRlZ29yeV9wcmVsb2FkKSAmJiBpc3NldCgkdGhpcy0+X2NhdGVnb3J5X3ByZWxvYWRbJG5dKSApIGNvbnRpbnVlOyAKCQkgICR0bXBbXSA9ICRuOwoJCX0KCSAgaWYoICFpc19hcnJheSgkdG1wKSB8fCAhY291bnQoJHRtcCkgKSByZXR1cm47CgkgIHNvcnQoJHRtcCk7IC8vIGRlYnVnLi4uIGJ1dCBuaWNlLgoJICAkaWRsaXN0ID0gYXJyYXlfdW5pcXVlKCR0bXApOwoKCSAgLy8gaW5pdGlhbGl6ZSB0aGUgc3R1ZmYgd2UgZG9uJ3QgaGF2ZSB0byBlbXB0eS4KCSAgaWYoICFpc19hcnJheSgkdGhpcy0+X2NhdGVnb3J5X3ByZWxvYWQpICkgJHRoaXMtPl9jYXRlZ29yeV9wcmVsb2FkID0gYXJyYXkoKTsKCSAgJGNhdGVnb3JpZXMgPSAkdGhpcy0+R2V0Q2F0ZWdvcmllcyhUUlVFKTsKCSAgZm9yZWFjaCggJGlkbGlzdCBhcyAkY29tcGlkICkKCQl7CgkJICBpZiggaXNzZXQoJHRoaXMtPl9jYXRlZ29yeV9wcmVsb2FkWyRjb21waWRdKSApIGNvbnRpbnVlOwoKCQkgICR0aGlzLT5fY2F0ZWdvcnlfcHJlbG9hZFskY29tcGlkXSA9IGFycmF5KCk7CgkJICBmb3JlYWNoKCAkY2F0ZWdvcmllcyBhcyAkb25lY2F0ICkKCQkJewoJCQkgICRvYmogPSBjbG9uZSAkb25lY2F0OwoJCQkgICRvYmotPnZhbHVlID0gZmFsc2U7CgkJCSAgJG9iai0+ZXh0cmExID0gbnVsbDsKCQkJICAkb2JqLT5leHRyYTIgPSBudWxsOwoJCQkgICRvYmotPmV4dHJhMyA9IG51bGw7CgkJCSAgJHRoaXMtPl9jYXRlZ29yeV9wcmVsb2FkWyRjb21waWRdWyRvYmotPmlkXSA9ICRvYmo7CgkJCX0KCQl9CgoJICAkcXVlcnkgPSAnU0VMRUNUICogRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfY29tcGFueV9jYXRlZ29yaWVzIEMgd2hlcmUgQy5jb21wYW55X2lkIElOICgnLmltcGxvZGUoJywnLCRpZGxpc3QpLicpIE9SREVSIEJZIEMuY29tcGFueV9pZCc7CgkgICRkYnIgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5KTsKCSAgaWYoICEkZGJyICkgcmV0dXJuOwoKCSAgd2hpbGUoICEkZGJyLT5FT0YgKQoJCXsKCQkgICRjb21waWQgPSAkZGJyLT5maWVsZHNbJ2NvbXBhbnlfaWQnXTsKCQkgICRjYXRpZCA9ICRkYnItPmZpZWxkc1snY2F0ZWdvcnlfaWQnXTsKCQkgIGlmKCAhaXNzZXQoJGNhdGVnb3JpZXNbJGNhdGlkXSkgKQoJCQl7CgkJCSAgJGRici0+TW92ZU5leHQoKTsKCQkJICBjb250aW51ZTsKCQkJfQoKCQkgICRvYmogPSYgJHRoaXMtPl9jYXRlZ29yeV9wcmVsb2FkWyRjb21waWRdWyRjYXRpZF07CgkJICAkb2JqLT52YWx1ZSA9IHRydWU7CgkJICAkb2JqLT5leHRyYTEgPSAkZGJyLT5maWVsZHNbJ2V4dHJhMSddOwoJCSAgJG9iai0+ZXh0cmEyID0gJGRici0+ZmllbGRzWydleHRyYTInXTsKCQkgICRvYmotPmV4dHJhMyA9ICRkYnItPmZpZWxkc1snZXh0cmEzJ107CgkJICBpZiggJG9iai0+aW1hZ2UgKQoJCQl7CgkJCSAgJHBhdGggPSBjbXNfam9pbl9wYXRoKCRjb25maWdbJ3VwbG9hZHNfcGF0aCddLCdjb21wYW55ZGlyZWN0b3J5JywnY2F0Jy4kY2F0aWQpOwoJCQkgIGlmKCBmaWxlX2V4aXN0cyhjbXNfam9pbl9wYXRoKCRwYXRoLCRvYmotPmltYWdlKSkgKQoJCQkJewoJCQkJICAkb2JqLT5pbWFnZV91cmwgPSAkY29uZmlnWyd1cGxvYWRzX3VybCddLiIvY29tcGFueWRpcmVjdG9yeS9jYXR7JGNhdGlkfS8iLiRvYmotPmltYWdlOwoJCQkJfQoJCQkgIGlmKCBmaWxlX2V4aXN0cyhjbXNfam9pbl9wYXRoKCRwYXRoLCd0aHVtYl8nLiRvYmotPmltYWdlKSkgKQoJCQkJewoJCQkJICAkb2JqLT50aHVtYl91cmwgPSAkY29uZmlnWyd1cGxvYWRzX3VybCddLiIvY29tcGFueWRpcmVjdG9yeS9jYXR7JGNhdGlkfS90aHVtYl8iLiRvYmotPmltYWdlOwoJCQkJfQoJCQl9CgkJICAkZGJyLT5Nb3ZlTmV4dCgpOwoJCX0KICAgIH0KCgoJZnVuY3Rpb24gR2V0Q2F0ZWdvcmllc0ZvckNvbXBhbnkoJGlkKQoJewoJICAkdGhpcy0+cHJlbG9hZENhdGVnb3J5RGF0YSgkaWQpOwoJICBpZiggaXNfYXJyYXkoJHRoaXMtPl9jYXRlZ29yeV9wcmVsb2FkKSAmJiBpc3NldCgkdGhpcy0+X2NhdGVnb3J5X3ByZWxvYWRbJGlkXSkgKQoJCXJldHVybiAkdGhpcy0+X2NhdGVnb3J5X3ByZWxvYWRbJGlkXTsKCgkgIGRpZSgnSW50ZXJuYWwgRXJyb3I6IEdldENhdGVnb3JpZXNGb3JDb21wYW55IHdhcyBub3QgcHJlbG9hZGVkJyk7CgkgIC8qCgkgICRjYXRlZ29yaWVzID0gJHRoaXMtPkdldENhdGVnb3JpZXMoKTsKCSAgJHJlc3VsdCA9IGFycmF5KCk7CgkgIGZvcmVhY2goICRjYXRlZ29yaWVzIGFzICRvbmVjYXQgKQoJCXsKCQkgICR0bXAgPSBjbG9uZSAkb25lY2F0OwoJCSAgJHRtcC0+dmFsdWUgPSBmYWxzZTsKCQkgICR0bXAtPmV4dHJhMSA9ICcnOwoJCSAgJHRtcC0+ZXh0cmEyID0gJyc7CgkJICAkdG1wLT5leHRyYTMgPSAnJzsKCQkgICRyZXN1bHRbXSA9ICR0bXA7CgkJfQoJICByZXR1cm4gJHJlc3VsdDsKCSAgKi8KCX0KCgkKCWZ1bmN0aW9uIEdldEZpZWxkRGVmcygkYWRtaW4gPSBmYWxzZSwkcHVibGljID0gdHJ1ZSkKCXsKCSAgaWYoICFpc19hcnJheSgkdGhpcy0+X2ZpZWxkZGVmcykgKQoJCXsKCQkgICRkYiA9IGNtc21zKCktPkdldERiKCk7CgkJICAKCQkgICRxdWVyeSA9ICdTRUxFQ1QgKiBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfY29tcGRpcl9maWVsZGRlZnMgT1JERVIgQlkgbmFtZSc7CgkJICAkZGJyID0gJGRiLT5HZXRBcnJheSgkcXVlcnkpOwoJCSAgaWYoIGlzX2FycmF5KCRkYnIpICkKCQkJewoJCQkgICR0aGlzLT5fZmllbGRkZWZzID0gJGRicjsKCQkJfQoJCX0KCgkgIGlmKCAkYWRtaW4gPT0gdHJ1ZSAmJiAkcHVibGljID09IHRydWUgKQoJCXsKCQkgIC8vIGFsbCBmaWVsZHMuCgkJICByZXR1cm4gJHRoaXMtPl9maWVsZGRlZnM7CgkJfQoKCSAgJHJlc3VsdCA9IGFycmF5KCk7CgkgIGlmKCAkcHVibGljID09IHRydWUgKQoJCXsKCQkgIC8vIHB1YmxpYyBmaWVsZHMgb25seS4KCQkgIGZvciggJGkgPSAwOyAkaSA8IGNvdW50KCR0aGlzLT5fZmllbGRkZWZzKTsgJGkrKyApCgkJCXsKCQkJICAkcm93ID0gJHRoaXMtPl9maWVsZGRlZnNbJGldOwoJCQkgIGlmKCAkcm93WydwdWJsaWMnXSA+IDAgKQoJCQkJewoJCQkJICAkcmVzdWx0W10gPSAkcm93OwoJCQkJfQoJCQl9CgkJfQoJCWVsc2UKCQkgIHsKCQkJLy8gbm9uLWFkbWluIGZpZWxkcy4KCQkJZm9yKCAkaSA9IDA7ICRpIDwgY291bnQoJHRoaXMtPl9maWVsZGRlZnMpOyAkaSsrICkKCQkJICB7CgkJCQkkcm93ID0gJHRoaXMtPl9maWVsZGRlZnNbJGldOwoJCQkJaWYoICRyb3dbJ2FkbWluX29ubHknXSA8PSAwICkKCQkJCSAgewoJCQkJCSRyZXN1bHRbXSA9ICRyb3c7CgkJCQkgIH0KCQkJICB9CgkJICB9CgoJICByZXR1cm4gJHJlc3VsdDsKCX0KCgkKCWZ1bmN0aW9uIHByZWxvYWRGaWVsZERhdGEoJGlkcykKCXsKCSAgaWYoICFpc19hcnJheSgkaWRzKSAmJiBpc19udW1lcmljKCRpZHMpICkKCQl7CgkJICAkaWRzID0gYXJyYXkoJGlkcyk7CgkJfQoJICAkdG1wID0gYXJyYXkoKTsKCSAgZm9yKCAkaSA9IDA7ICRpIDwgY291bnQoJGlkcyk7ICRpKysgKQoJCXsKCQkgICRuID0gKGludCkkaWRzWyRpXTsKCQkgIGlmKCAkbiA8IDAgKSBjb250aW51ZTsKCQkgIGlmKCBpc19hcnJheSgkdGhpcy0+X2ZpZWxkaW5mb19wcmVsb2FkKSAmJiBpc3NldCgkdGhpcy0+X2ZpZWxkaW5mb19wcmVsb2FkWyRuXSkgKSBjb250aW51ZTsgCgkJICAkdG1wW10gPSAkbjsKCQl9CgkgIGlmKCAhaXNfYXJyYXkoJHRtcCkgfHwgIWNvdW50KCR0bXApICkgcmV0dXJuOwoJICBzb3J0KCR0bXApOwoJICAkaWRsaXN0ID0gYXJyYXlfdW5pcXVlKCR0bXApOwoKCSAgJGRiID0gY21zbXMoKS0+R2V0RGIoKTsKCSAgJHF1ZXJ5ID0gJ1NFTEVDVCBmdi4qIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9jb21wZGlyX2ZpZWxkdmFscyBmdiBXSEVSRSBmdi5jb21wYW55X2lkIElOICgnLmltcGxvZGUoJywnLCRpZGxpc3QpLicpIE9SREVSIEJZIGZ2LmNvbXBhbnlfaWQsZnYuZmllbGRkZWZfaWQnOwoJICAkZGJyID0gJGRiLT5FeGVjdXRlKCRxdWVyeSk7CgkgIGlmKCAhJGRiciApIHJldHVybjsKCgkgIGlmKCAhaXNfYXJyYXkoJHRoaXMtPl9maWVsZGluZm9fcHJlbG9hZCkgKSAkdGhpcy0+X2ZpZWxkaW5mb19wcmVsb2FkID0gYXJyYXkoKTsKCSAgJGZpZWxkZGVmcyA9ICR0aGlzLT5HZXRGaWVsZERlZnModHJ1ZSx0cnVlKTsKCSAgCgkgIC8vIGluaXRpYWxpemF0aW9uCgkgIGZvcmVhY2goICRpZGxpc3QgYXMgJGNvbXBpZCApCgkJewoJCSAgaWYoIGlzc2V0KCR0aGlzLT5fZmllbGRpbmZvX3ByZWxvYWRbJGNvbXBpZF0pICkgY29udGludWU7CgkJICAKCQkgICR0aGlzLT5fZmllbGRpbmZvX3ByZWxvYWRbJGNvbXBpZF0gPSBhcnJheSgpOwoJCSAgZm9yZWFjaCggJGZpZWxkZGVmcyBhcyAkZmllbGQgKQoJCQl7CgkJCSAgJG9uZSA9IGNnZV9hcnJheTo6dG9fb2JqZWN0KCRmaWVsZCk7CgkJCSAgJG9uZS0+ZmllbGRkZWZfaWQgPSAkZmllbGRbJ2lkJ107CgkJCSAgJHRoaXMtPl9maWVsZGluZm9fcHJlbG9hZFskY29tcGlkXVskZmllbGRbJ2lkJ11dID0gJG9uZTsKCQkJfQoJCX0KCgkgIC8vIGZpbGwgd2l0aCB2YWx1ZXMuCgkgIHdoaWxlKCAhJGRici0+RU9GICkKCQl7CgkJICAkY29tcGlkID0gJGRici0+ZmllbGRzWydjb21wYW55X2lkJ107CgkJICAkZmxkZGVmaWQgPSAkZGJyLT5maWVsZHNbJ2ZpZWxkZGVmX2lkJ107CgkJICAkdmFsdWUgPSAkZGJyLT5maWVsZHNbJ3ZhbHVlJ107CgoJCSAgJHRoaXMtPl9maWVsZGluZm9fcHJlbG9hZFskY29tcGlkXVskZmxkZGVmaWRdLT52YWx1ZSA9ICR2YWx1ZTsKCQkgICRkYnItPk1vdmVOZXh0KCk7CgkJfQoJfQoKCglmdW5jdGlvbiBHZXRGaWVsZERlZnNGb3JDb21wYW55KCRpZCwkYWRtaW4gPSBmYWxzZSwkcHVibGljID0gdHJ1ZSkKCXsKCSAgJHRoaXMtPnByZWxvYWRGaWVsZERhdGEoJGlkKTsKCSAgJGZpZWxkZGVmcyA9ICR0aGlzLT5HZXRGaWVsZERlZnMoJGFkbWluLCRwdWJsaWMpOwoJICBpZiggY291bnQoJGZpZWxkZGVmcykgPT0gMCApIAoJCXJldHVybjsKCSAgJGZsZGlkcyA9IGNnZV9hcnJheTo6ZXh0cmFjdF9maWVsZCgkZmllbGRkZWZzLCdpZCcpOwoKCSAgaWYoICFpc19hcnJheSgkdGhpcy0+X2ZpZWxkaW5mb19wcmVsb2FkKSApICR0aGlzLT5fZmllbGRpbmZvX3ByZWxvYWQgPSBhcnJheSgpOwoJICBpZiggIWlzc2V0KCR0aGlzLT5fZmllbGRpbmZvX3ByZWxvYWRbJGlkXSkgKSAKCQl7CgkJICAkdGhpcy0+X2ZpZWxkaW5mb19wcmVsb2FkWyRpZF0gPSBhcnJheSgpOwoJCSAgZm9yZWFjaCggJGZpZWxkZGVmcyBhcyAkZmllbGQgKQoJCQl7CgkJCSAgJGZsZDIgPSBjZ2VfYXJyYXk6OnRvX29iamVjdCgkZmllbGQpOwoJCQkgICRmbGQyLT5maWVsZGRlZl9pZCA9ICRmaWVsZFsnaWQnXTsKCQkJICAkdGhpcy0+X2ZpZWxkaW5mb19wcmVsb2FkWyRpZF1bJGZpZWxkWydpZCddXSA9ICRmbGQyOwoJCQl9CgkJfQoKCSAgJHJlc3VsdHMgPSBhcnJheSgpOwoJICBmb3JlYWNoKCAkdGhpcy0+X2ZpZWxkaW5mb19wcmVsb2FkWyRpZF0gYXMgJGZpZCA9PiAkZGF0YSApCgkJewoJCSAgaWYoIGluX2FycmF5KCRmaWQsJGZsZGlkcykgKQoJCQl7CgkJCSAgJHJlc3VsdHNbXSA9ICRkYXRhOwoJCQl9CgkJfQoKCSAgaWYoIGNvdW50KCRyZXN1bHRzKSApIHJldHVybiAkcmVzdWx0czsKCX0KCgkKCWZ1bmN0aW9uIFNlYXJjaFJlc3VsdCgkcmV0dXJuaWQsICRjb21wYW55aWQsICRhdHRyID0gJycpCgl7CgkJJHJlc3VsdCA9IGFycmF5KCk7CgkJCgkJaWYgKCRhdHRyID09ICdjb21wYW55JykKCQl7CgkJCSRkYiA9JiAkdGhpcy0+R2V0RGIoKTsKCQkJJHEgPSAiU0VMRUNUIGNvbXBhbnlfbmFtZSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfY29tcGRpcl9jb21wYW5pZXMgV0hFUkUKCQkJICAgICAgaWQgPSA/IjsKCQkJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcSwgYXJyYXkoICRjb21wYW55aWQgKSApOwoJCQlpZiAoJGRicmVzdWx0KQoJCQl7CgkJCQkkcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdygpOwoKCQkJCS8vMCBwb3NpdGlvbiBpcyB0aGUgcHJlZml4IGRpc3BsYXllZCBpbiB0aGUgbGlzdCByZXN1bHRzLgoJCQkJJHJlc3VsdFswXSA9ICR0aGlzLT5HZXRGcmllbmRseU5hbWUoKTsKCQkKCQkJCS8vMSBwb3NpdGlvbiBpcyB0aGUgdGl0bGUKCQkJCSRyZXN1bHRbMV0gPSAkcm93Wydjb21wYW55X25hbWUnXTsKCgkJCQkvLzIgcG9zaXRpb24gaXMgdGhlIFVSTCB0byB0aGUgdGl0bGUuCgkJCQkkdXJsID0gImNvbXBhbmllcy8kY29tcGFueWlkLyRyZXR1cm5pZC8iLm11bmdlX3N0cmluZ190b191cmwoJHJvd1snY29tcGFueV9uYW1lJ10pOwoJCQkJJHJlc3VsdFsyXSA9ICR0aGlzLT5DcmVhdGVVUkwoJGlkLCdkZXRhaWxzJywkcmV0dXJuaWQsYXJyYXkoJ2NvbXBhbnlpZCc9PiRjb21wYW55aWQpLGZhbHNlLAoJCQkJCQkJCQkJCSAgJHVybCk7CgkJCQkvLyRyZXN1bHRbMl0gPSAkdGhpcy0+Q3JlYXRlTGluaygnY250bnQwMScsICdkZXRhaWxzJywgJHJldHVybmlkLCAnJywgYXJyYXkoJ2NvbXBhbnlpZCcgPT4gJGNvbXBhbnlpZCkgLCcnLCB0cnVlLCBmYWxzZSwgJycsIHRydWUpOwoJCQl9CgkJfQoJCQoJCXJldHVybiAkcmVzdWx0OwoJfQoJCglmdW5jdGlvbiBTZWFyY2hSZWluZGV4KCYkbW9kdWxlKQoJewoJCSRkYiA9JiAkdGhpcy0+R2V0RGIoKTsKCQkKCQkkcXVlcnkgPSAnU0VMRUNUICogRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfY29tcGFuaWVzJzsKCQkkcmVzdWx0ID0gJiRkYi0+RXhlY3V0ZSgkcXVlcnkpOwoKCQl3aGlsZSAoJHJlc3VsdCAmJiAhJHJlc3VsdC0+RU9GKQoJCXsKCQkJJG1vZHVsZS0+QWRkV29yZHMoJHRoaXMtPkdldE5hbWUoKSwgJHJlc3VsdC0+ZmllbGRzWydpZCddLCAnY29tcGFueScsIGltcGxvZGUoJyAnLCBhcnJheSgkcmVzdWx0LT5maWVsZHNbJ2NvbXBhbnlfbmFtZSddLCAkcmVzdWx0LT5maWVsZHNbJ2NvbXBhbnlfbmFtZSddLCAkcmVzdWx0LT5maWVsZHNbJ2FkZHJlc3MnXSwgJHJlc3VsdC0+ZmllbGRzWyd0ZWxlcGhvbmUnXSwgJHJlc3VsdC0+ZmllbGRzWydmYXgnXSwgJHJlc3VsdC0+ZmllbGRzWydkZXRhaWxzJ10pKSk7CgkJCSRyZXN1bHQtPk1vdmVOZXh0KCk7CgkJfQoJfQoKCglmdW5jdGlvbiBDcmVhdGVDb21wYW55UHVsbGRvd24oJGlkLCRuYW1lLCRzZWxlY3RlZCA9ICcnKQoJewoJICAkZGIgPSYgJHRoaXMtPkdldERiKCk7CgkgICRxdWVyeSA9ICdTRUxFQ1QgaWQsY29tcGFueV9uYW1lIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9jb21wZGlyX2NvbXBhbmllcyBXSEVSRSBzdGF0dXMgPSBcJ3B1Ymxpc2hlZFwnJzsKCgkgICRkYnIgPSAkZGItPkV4ZWN1dGUoICRxdWVyeSApOwoJICAkY29tcGFuaWVzID0gYXJyYXkoKTsKCSAgd2hpbGUoICRkYnIgJiYgKCRyb3cgPSAkZGJyLT5GZXRjaFJvdygpKSApCgkJewoJCSAgJGNvbXBhbmllc1skcm93Wydjb21wYW55X25hbWUnXV0gPSAkcm93WydpZCddOwoJCX0KCgkgICRhZGR0ZXh0ID0gJyc7CgkgIGlmKGNvdW50KCRjb21wYW5pZXMpID09IDAgKQoJCXsKCQkgICRhZGR0ZXh0PSdkaXNhYmxlZCc7CgkJfQoJICAkZmxkID0gJHRoaXMtPkNyZWF0ZUlucHV0RHJvcGRvd24oICRpZCwgJG5hbWUsICRjb21wYW5pZXMsIC0xLCAKCQkJCQkJCQkJCSAkc2VsZWN0ZWQsICRhZGR0ZXh0ICk7CgkgIHJldHVybiAkZmxkOwoJfQoKCQoJZnVuY3Rpb24gR2V0Q29tcGFueU5hbWVGcm9tSWQoICRpZCApCgl7CgkgIGlmKCAhaXNzZXQoICR0aGlzLT5fY29tcGFueV9uYW1lX2NhY2hlWyRpZF0gKSApCgkJewoJCSAgJGRiID0mICR0aGlzLT5HZXREYigpOwoJCSAgJHF1ZXJ5ID0gIlNFTEVDVCBjb21wYW55X25hbWUgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2NvbXBkaXJfY29tcGFuaWVzCiAgICAgICAgICAgICAgICAgICAgIFdIRVJFIGlkID0gPyI7CgkJICAkbmFtZSA9ICRkYi0+R2V0T25lKCAkcXVlcnksIGFycmF5KCAkaWQgKSApOwoJCSAgaWYoISRuYW1lKSByZXR1cm4gRkFMU0U7CgkJICAkdGhpcy0+X2NvbXBhbnlfbmFtZV9jYWNoZVskaWRdID0gJG5hbWU7CgkJfQoKCSAgcmV0dXJuICR0aGlzLT5fY29tcGFueV9uYW1lX2NhY2hlWyRpZF07Cgl9CgogIC8vIHJhZGl1cyBpbiBtaWxlcy4KICBmdW5jdGlvbiBHZXRCb3VuZGluZ0JveCgkbGF0aXR1ZGUsJGxvbmdpdHVkZSwkcmFkaXVzKSAKICB7CgkkbG5nX21pbiA9ICRsb25naXR1ZGUgLSAkcmFkaXVzIC8gYWJzKGNvcyhkZWcycmFkKCRsYXRpdHVkZSkpICogNjkpOwoJJGxuZ19tYXggPSAkbG9uZ2l0dWRlICsgJHJhZGl1cyAvIGFicyhjb3MoZGVnMnJhZCgkbGF0aXR1ZGUpKSAqIDY5KTsKCSRsYXRfbWluID0gJGxhdGl0dWRlIC0gKCRyYWRpdXMgLyA2OSk7CgkkbGF0X21heCA9ICRsYXRpdHVkZSArICgkcmFkaXVzIC8gNjkpOwoJCgkkdG1wID0gYXJyYXkoJGxhdF9taW4sJGxhdF9tYXgsJGxuZ19taW4sJGxuZ19tYXgpOwoJcmV0dXJuICR0bXA7CiAgfQoKCmZ1bmN0aW9uIFVwZGF0ZUhpZXJhcmNoeVBvc2l0aW9ucygpCnsKICAkZGIgPSYgJHRoaXMtPkdldERiKCk7CgogICRxdWVyeSA9ICJTRUxFQ1QgaWQsIG5hbWUgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2NvbXBkaXJfaGllciI7CiAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSk7CiAgd2hpbGUgKCRkYnJlc3VsdCAmJiAkcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdygpKQoJewoJICAkY3VycmVudF9oaWVyYXJjaHlfcG9zaXRpb24gPSAiIjsKCSAgJGN1cnJlbnRfbG9uZ19uYW1lID0gIiI7CgkgICRjb250ZW50X2lkID0gJHJvd1snaWQnXTsKCSAgJGN1cnJlbnRfcGFyZW50X2lkID0gJHJvd1snaWQnXTsKCSAgJGNvdW50ID0gMDsKCSAgCgkgIHdoaWxlICgkY3VycmVudF9wYXJlbnRfaWQgPiAtMSkKCSAgICB7CgkgICAgICAkcXVlcnkgPSAiU0VMRUNUIGlkLCBuYW1lLCBwYXJlbnRfaWQgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2NvbXBkaXJfaGllciBXSEVSRSBpZCA9ID8iOwoJICAgICAgJHJvdzIgPSAkZGItPkdldFJvdygkcXVlcnksIGFycmF5KCRjdXJyZW50X3BhcmVudF9pZCkpOwoJICAgICAgaWYgKCRyb3cyKQoJCQl7CgkJCSAgJGN1cnJlbnRfaGllcmFyY2h5X3Bvc2l0aW9uID0gc3RyX3BhZCgkcm93MlsnaWQnXSwgNSwgJzAnLCBTVFJfUEFEX0xFRlQpIC4gIi4iIC4gJGN1cnJlbnRfaGllcmFyY2h5X3Bvc2l0aW9uOwoJCQkgICRjdXJyZW50X2xvbmdfbmFtZSA9ICRyb3cyWyduYW1lJ10gLiAnIHwgJyAuICRjdXJyZW50X2xvbmdfbmFtZTsKCQkJICAkY3VycmVudF9wYXJlbnRfaWQgPSAkcm93MlsncGFyZW50X2lkJ107CgkJCSAgJGNvdW50Kys7CgkJCX0KCSAgICAgIGVsc2UKCQkJewoJCQkgICRjdXJyZW50X3BhcmVudF9pZCA9IDA7CgkJCX0KCSAgICB9CgkgIAoJICBpZiAoc3RybGVuKCRjdXJyZW50X2hpZXJhcmNoeV9wb3NpdGlvbikgPiAwKQoJICAgIHsKCSAgICAgICRjdXJyZW50X2hpZXJhcmNoeV9wb3NpdGlvbiA9IHN1YnN0cigkY3VycmVudF9oaWVyYXJjaHlfcG9zaXRpb24sIDAsIHN0cmxlbigkY3VycmVudF9oaWVyYXJjaHlfcG9zaXRpb24pIC0gMSk7CgkgICAgfQoJICAKCSAgaWYgKHN0cmxlbigkY3VycmVudF9sb25nX25hbWUpID4gMCkKCSAgICB7CgkgICAgICAkY3VycmVudF9sb25nX25hbWUgPSBzdWJzdHIoJGN1cnJlbnRfbG9uZ19uYW1lLCAwLCBzdHJsZW4oJGN1cnJlbnRfbG9uZ19uYW1lKSAtIDMpOwoJICAgIH0KCSAgCgkgICRxdWVyeSA9ICJVUERBVEUgIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9jb21wZGlyX2hpZXIgU0VUIGhpZXJhcmNoeSA9ID8sIGxvbmdfbmFtZSA9ID8gV0hFUkUgaWQgPSA/IjsKCSAgJGRiLT5FeGVjdXRlKCRxdWVyeSwgYXJyYXkoJGN1cnJlbnRfaGllcmFyY2h5X3Bvc2l0aW9uLCAkY3VycmVudF9sb25nX25hbWUsICRjb250ZW50X2lkKSk7Cgl9Cn0KCmZ1bmN0aW9uIENyZWF0ZVBhcmVudERyb3Bkb3duKCRpZCwgJGNhdGlkID0gLTEsICRzZWxlY3RlZHZhbHVlID0gLTEsICRuYW1lID0gJ3BhcmVudCcpCnsKICAkaXRlbXMgPSBjZF91dGlsczo6Z2V0X2hpZXJhcmNoeV9saXN0KCRjYXRpZCk7CiAgcmV0dXJuICR0aGlzLT5DcmVhdGVJbnB1dERyb3Bkb3duKCRpZCwgJG5hbWUsICRpdGVtcywgLTEsICRzZWxlY3RlZHZhbHVlKTsKfQoKcHVibGljIGZ1bmN0aW9uIGdldF9wcmV0dHlfdXJsKCRpZCwkYWN0aW9uLCRyZXR1cm5pZD0nJywkcGFyYW1zPWFycmF5KCksJGlubGluZT1mYWxzZSkKewogIGdsb2JhbCAkQ01TX0FETUlOX1BBR0U7CiAgaWYoIGlzc2V0KCRDTVNfQURNSU5fUEFHRSkgKSByZXR1cm4gJyc7CgogICR1cmwgPSAnJzsKICBzd2l0Y2goICRhY3Rpb24gKQoJewoJY2FzZSAnZGV0YWlsJzogLy8gc3lub255bQoJY2FzZSAnZGV0YWlscyc6CgkgIGlmKCAhaXNzZXQoJHBhcmFtc1snY29tcGFueWlkJ10pICkgcmV0dXJuOwoJICBpZiggIWNnZV90bXBkYXRhOjpleGlzdHMoJ2NvbXBhbnlkaXJfJy4oaW50KSRwYXJhbXNbJ2NvbXBhbnlpZCddKSApIHJldHVybjsKCSAgJHJlYyA9IGNnZV90bXBkYXRhOjpnZXQoJ2NvbXBhbnlkaXJfJy4oaW50KSRwYXJhbXNbJ2NvbXBhbnlpZCddKTsKCgkgIGlmKCBpc19hcnJheSgkcmVjKSAmJiBpc3NldCgkcmVjWydpZCddKSApCgkJewoJCSAgJHJlYyA9IGNnZV9hcnJheTo6dG9fb2JqZWN0KCRyZWMpOwoJCX0KCgkgIGlmKCAhaXNfb2JqZWN0KCRyZWMpIHx8ICFpc3NldCgkcmVjLT5pZCkgfHwgJHJlYy0+aWQgIT0gKGludCkkcGFyYW1zWydjb21wYW55aWQnXSApIHJldHVybjsKCgkgIGlmKCBpc3NldCgkcmVjLT51cmwpICYmICRyZWMtPnVybCAhPSAnJyApCgkJewoJCSAgLy8gd29vdCwgd2UgaGF2ZSBhIHVybC4KCQkgICR1cmwgPSAkcmVjLT51cmw7CgkJfQoJICBlbHNlCgkJewoJCSAgLy8gb2xkIHVnbGllciB1cmxzCgkJICAkdXJsID0gImNvbXBhbmllcy97JHJlYy0+aWR9LyRyZXR1cm5pZC8iLm11bmdlX3N0cmluZ190b191cmwoJHJlYy0+Y29tcGFueV9uYW1lKTsKCQkgIGlmKCBpc3NldCgkcGFyYW1zWydkZXRhaWx0ZW1wbGF0ZSddKSApCgkJCXsKCQkJICAkdXJsIC49ICcvZCwnLiRwYXJhbXNbJ2RldGFpbHRlbXBsYXRlJ107CgkJCX0KCQl9CgkgIGJyZWFrOwoKCglkZWZhdWx0OgoJICBpZiggaXNzZXQoJHBhcmFtc1snY2F0ZWdvcnlpZCddKSApCgkJewoJCSAgJHVybCA9ICJjb21wYW5pZXMvYnljYXRlZ29yeS8iLihpbnQpJHBhcmFtc1snY2F0ZWdvcnlpZCddLiIveyRyZXR1cm5pZH0iOwoJCX0KCSAgYnJlYWs7Cgl9CgogIHJldHVybiAkdXJsOwp9Cgp9CgojIHZpbTp0cz00IHN3PTQgbm9ldAo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/doc/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/doc/COPYING</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[ICAgICAgICAgICAgICAgICAgICBHTlUgR0VORVJBTCBQVUJMSUMgTElDRU5TRQogICAgICAgICAgICAgICAgICAgICAgIFZlcnNpb24gMywgMjkgSnVuZSAyMDA3CgogQ29weXJpZ2h0IChDKSAyMDA3IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiA8aHR0cDovL2ZzZi5vcmcvPgogRXZlcnlvbmUgaXMgcGVybWl0dGVkIHRvIGNvcHkgYW5kIGRpc3RyaWJ1dGUgdmVyYmF0aW0gY29waWVzCiBvZiB0aGlzIGxpY2Vuc2UgZG9jdW1lbnQsIGJ1dCBjaGFuZ2luZyBpdCBpcyBub3QgYWxsb3dlZC4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBQcmVhbWJsZQoKICBUaGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgaXMgYSBmcmVlLCBjb3B5bGVmdCBsaWNlbnNlIGZvcgpzb2Z0d2FyZSBhbmQgb3RoZXIga2luZHMgb2Ygd29ya3MuCgogIFRoZSBsaWNlbnNlcyBmb3IgbW9zdCBzb2Z0d2FyZSBhbmQgb3RoZXIgcHJhY3RpY2FsIHdvcmtzIGFyZSBkZXNpZ25lZAp0byB0YWtlIGF3YXkgeW91ciBmcmVlZG9tIHRvIHNoYXJlIGFuZCBjaGFuZ2UgdGhlIHdvcmtzLiAgQnkgY29udHJhc3QsCnRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBpcyBpbnRlbmRlZCB0byBndWFyYW50ZWUgeW91ciBmcmVlZG9tIHRvCnNoYXJlIGFuZCBjaGFuZ2UgYWxsIHZlcnNpb25zIG9mIGEgcHJvZ3JhbS0tdG8gbWFrZSBzdXJlIGl0IHJlbWFpbnMgZnJlZQpzb2Z0d2FyZSBmb3IgYWxsIGl0cyB1c2Vycy4gIFdlLCB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCB1c2UgdGhlCkdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3N0IG9mIG91ciBzb2Z0d2FyZTsgaXQgYXBwbGllcyBhbHNvIHRvCmFueSBvdGhlciB3b3JrIHJlbGVhc2VkIHRoaXMgd2F5IGJ5IGl0cyBhdXRob3JzLiAgWW91IGNhbiBhcHBseSBpdCB0bwp5b3VyIHByb2dyYW1zLCB0b28uCgogIFdoZW4gd2Ugc3BlYWsgb2YgZnJlZSBzb2Z0d2FyZSwgd2UgYXJlIHJlZmVycmluZyB0byBmcmVlZG9tLCBub3QKcHJpY2UuICBPdXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZXMgYXJlIGRlc2lnbmVkIHRvIG1ha2Ugc3VyZSB0aGF0IHlvdQpoYXZlIHRoZSBmcmVlZG9tIHRvIGRpc3RyaWJ1dGUgY29waWVzIG9mIGZyZWUgc29mdHdhcmUgKGFuZCBjaGFyZ2UgZm9yCnRoZW0gaWYgeW91IHdpc2gpLCB0aGF0IHlvdSByZWNlaXZlIHNvdXJjZSBjb2RlIG9yIGNhbiBnZXQgaXQgaWYgeW91CndhbnQgaXQsIHRoYXQgeW91IGNhbiBjaGFuZ2UgdGhlIHNvZnR3YXJlIG9yIHVzZSBwaWVjZXMgb2YgaXQgaW4gbmV3CmZyZWUgcHJvZ3JhbXMsIGFuZCB0aGF0IHlvdSBrbm93IHlvdSBjYW4gZG8gdGhlc2UgdGhpbmdzLgoKICBUbyBwcm90ZWN0IHlvdXIgcmlnaHRzLCB3ZSBuZWVkIHRvIHByZXZlbnQgb3RoZXJzIGZyb20gZGVueWluZyB5b3UKdGhlc2UgcmlnaHRzIG9yIGFza2luZyB5b3UgdG8gc3VycmVuZGVyIHRoZSByaWdodHMuICBUaGVyZWZvcmUsIHlvdSBoYXZlCmNlcnRhaW4gcmVzcG9uc2liaWxpdGllcyBpZiB5b3UgZGlzdHJpYnV0ZSBjb3BpZXMgb2YgdGhlIHNvZnR3YXJlLCBvciBpZgp5b3UgbW9kaWZ5IGl0OiByZXNwb25zaWJpbGl0aWVzIHRvIHJlc3BlY3QgdGhlIGZyZWVkb20gb2Ygb3RoZXJzLgoKICBGb3IgZXhhbXBsZSwgaWYgeW91IGRpc3RyaWJ1dGUgY29waWVzIG9mIHN1Y2ggYSBwcm9ncmFtLCB3aGV0aGVyCmdyYXRpcyBvciBmb3IgYSBmZWUsIHlvdSBtdXN0IHBhc3Mgb24gdG8gdGhlIHJlY2lwaWVudHMgdGhlIHNhbWUKZnJlZWRvbXMgdGhhdCB5b3UgcmVjZWl2ZWQuICBZb3UgbXVzdCBtYWtlIHN1cmUgdGhhdCB0aGV5LCB0b28sIHJlY2VpdmUKb3IgY2FuIGdldCB0aGUgc291cmNlIGNvZGUuICBBbmQgeW91IG11c3Qgc2hvdyB0aGVtIHRoZXNlIHRlcm1zIHNvIHRoZXkKa25vdyB0aGVpciByaWdodHMuCgogIERldmVsb3BlcnMgdGhhdCB1c2UgdGhlIEdOVSBHUEwgcHJvdGVjdCB5b3VyIHJpZ2h0cyB3aXRoIHR3byBzdGVwczoKKDEpIGFzc2VydCBjb3B5cmlnaHQgb24gdGhlIHNvZnR3YXJlLCBhbmQgKDIpIG9mZmVyIHlvdSB0aGlzIExpY2Vuc2UKZ2l2aW5nIHlvdSBsZWdhbCBwZXJtaXNzaW9uIHRvIGNvcHksIGRpc3RyaWJ1dGUgYW5kL29yIG1vZGlmeSBpdC4KCiAgRm9yIHRoZSBkZXZlbG9wZXJzJyBhbmQgYXV0aG9ycycgcHJvdGVjdGlvbiwgdGhlIEdQTCBjbGVhcmx5IGV4cGxhaW5zCnRoYXQgdGhlcmUgaXMgbm8gd2FycmFudHkgZm9yIHRoaXMgZnJlZSBzb2Z0d2FyZS4gIEZvciBib3RoIHVzZXJzJyBhbmQKYXV0aG9ycycgc2FrZSwgdGhlIEdQTCByZXF1aXJlcyB0aGF0IG1vZGlmaWVkIHZlcnNpb25zIGJlIG1hcmtlZCBhcwpjaGFuZ2VkLCBzbyB0aGF0IHRoZWlyIHByb2JsZW1zIHdpbGwgbm90IGJlIGF0dHJpYnV0ZWQgZXJyb25lb3VzbHkgdG8KYXV0aG9ycyBvZiBwcmV2aW91cyB2ZXJzaW9ucy4KCiAgU29tZSBkZXZpY2VzIGFyZSBkZXNpZ25lZCB0byBkZW55IHVzZXJzIGFjY2VzcyB0byBpbnN0YWxsIG9yIHJ1bgptb2RpZmllZCB2ZXJzaW9ucyBvZiB0aGUgc29mdHdhcmUgaW5zaWRlIHRoZW0sIGFsdGhvdWdoIHRoZSBtYW51ZmFjdHVyZXIKY2FuIGRvIHNvLiAgVGhpcyBpcyBmdW5kYW1lbnRhbGx5IGluY29tcGF0aWJsZSB3aXRoIHRoZSBhaW0gb2YKcHJvdGVjdGluZyB1c2VycycgZnJlZWRvbSB0byBjaGFuZ2UgdGhlIHNvZnR3YXJlLiAgVGhlIHN5c3RlbWF0aWMKcGF0dGVybiBvZiBzdWNoIGFidXNlIG9jY3VycyBpbiB0aGUgYXJlYSBvZiBwcm9kdWN0cyBmb3IgaW5kaXZpZHVhbHMgdG8KdXNlLCB3aGljaCBpcyBwcmVjaXNlbHkgd2hlcmUgaXQgaXMgbW9zdCB1bmFjY2VwdGFibGUuICBUaGVyZWZvcmUsIHdlCmhhdmUgZGVzaWduZWQgdGhpcyB2ZXJzaW9uIG9mIHRoZSBHUEwgdG8gcHJvaGliaXQgdGhlIHByYWN0aWNlIGZvciB0aG9zZQpwcm9kdWN0cy4gIElmIHN1Y2ggcHJvYmxlbXMgYXJpc2Ugc3Vic3RhbnRpYWxseSBpbiBvdGhlciBkb21haW5zLCB3ZQpzdGFuZCByZWFkeSB0byBleHRlbmQgdGhpcyBwcm92aXNpb24gdG8gdGhvc2UgZG9tYWlucyBpbiBmdXR1cmUgdmVyc2lvbnMKb2YgdGhlIEdQTCwgYXMgbmVlZGVkIHRvIHByb3RlY3QgdGhlIGZyZWVkb20gb2YgdXNlcnMuCgogIEZpbmFsbHksIGV2ZXJ5IHByb2dyYW0gaXMgdGhyZWF0ZW5lZCBjb25zdGFudGx5IGJ5IHNvZnR3YXJlIHBhdGVudHMuClN0YXRlcyBzaG91bGQgbm90IGFsbG93IHBhdGVudHMgdG8gcmVzdHJpY3QgZGV2ZWxvcG1lbnQgYW5kIHVzZSBvZgpzb2Z0d2FyZSBvbiBnZW5lcmFsLXB1cnBvc2UgY29tcHV0ZXJzLCBidXQgaW4gdGhvc2UgdGhhdCBkbywgd2Ugd2lzaCB0bwphdm9pZCB0aGUgc3BlY2lhbCBkYW5nZXIgdGhhdCBwYXRlbnRzIGFwcGxpZWQgdG8gYSBmcmVlIHByb2dyYW0gY291bGQKbWFrZSBpdCBlZmZlY3RpdmVseSBwcm9wcmlldGFyeS4gIFRvIHByZXZlbnQgdGhpcywgdGhlIEdQTCBhc3N1cmVzIHRoYXQKcGF0ZW50cyBjYW5ub3QgYmUgdXNlZCB0byByZW5kZXIgdGhlIHByb2dyYW0gbm9uLWZyZWUuCgogIFRoZSBwcmVjaXNlIHRlcm1zIGFuZCBjb25kaXRpb25zIGZvciBjb3B5aW5nLCBkaXN0cmlidXRpb24gYW5kCm1vZGlmaWNhdGlvbiBmb2xsb3cuCgogICAgICAgICAgICAgICAgICAgICAgIFRFUk1TIEFORCBDT05ESVRJT05TCgogIDAuIERlZmluaXRpb25zLgoKICAiVGhpcyBMaWNlbnNlIiByZWZlcnMgdG8gdmVyc2lvbiAzIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZS4KCiAgIkNvcHlyaWdodCIgYWxzbyBtZWFucyBjb3B5cmlnaHQtbGlrZSBsYXdzIHRoYXQgYXBwbHkgdG8gb3RoZXIga2luZHMgb2YKd29ya3MsIHN1Y2ggYXMgc2VtaWNvbmR1Y3RvciBtYXNrcy4KCiAgIlRoZSBQcm9ncmFtIiByZWZlcnMgdG8gYW55IGNvcHlyaWdodGFibGUgd29yayBsaWNlbnNlZCB1bmRlciB0aGlzCkxpY2Vuc2UuICBFYWNoIGxpY2Vuc2VlIGlzIGFkZHJlc3NlZCBhcyAieW91Ii4gICJMaWNlbnNlZXMiIGFuZAoicmVjaXBpZW50cyIgbWF5IGJlIGluZGl2aWR1YWxzIG9yIG9yZ2FuaXphdGlvbnMuCgogIFRvICJtb2RpZnkiIGEgd29yayBtZWFucyB0byBjb3B5IGZyb20gb3IgYWRhcHQgYWxsIG9yIHBhcnQgb2YgdGhlIHdvcmsKaW4gYSBmYXNoaW9uIHJlcXVpcmluZyBjb3B5cmlnaHQgcGVybWlzc2lvbiwgb3RoZXIgdGhhbiB0aGUgbWFraW5nIG9mIGFuCmV4YWN0IGNvcHkuICBUaGUgcmVzdWx0aW5nIHdvcmsgaXMgY2FsbGVkIGEgIm1vZGlmaWVkIHZlcnNpb24iIG9mIHRoZQplYXJsaWVyIHdvcmsgb3IgYSB3b3JrICJiYXNlZCBvbiIgdGhlIGVhcmxpZXIgd29yay4KCiAgQSAiY292ZXJlZCB3b3JrIiBtZWFucyBlaXRoZXIgdGhlIHVubW9kaWZpZWQgUHJvZ3JhbSBvciBhIHdvcmsgYmFzZWQKb24gdGhlIFByb2dyYW0uCgogIFRvICJwcm9wYWdhdGUiIGEgd29yayBtZWFucyB0byBkbyBhbnl0aGluZyB3aXRoIGl0IHRoYXQsIHdpdGhvdXQKcGVybWlzc2lvbiwgd291bGQgbWFrZSB5b3UgZGlyZWN0bHkgb3Igc2Vjb25kYXJpbHkgbGlhYmxlIGZvcgppbmZyaW5nZW1lbnQgdW5kZXIgYXBwbGljYWJsZSBjb3B5cmlnaHQgbGF3LCBleGNlcHQgZXhlY3V0aW5nIGl0IG9uIGEKY29tcHV0ZXIgb3IgbW9kaWZ5aW5nIGEgcHJpdmF0ZSBjb3B5LiAgUHJvcGFnYXRpb24gaW5jbHVkZXMgY29weWluZywKZGlzdHJpYnV0aW9uICh3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uKSwgbWFraW5nIGF2YWlsYWJsZSB0byB0aGUKcHVibGljLCBhbmQgaW4gc29tZSBjb3VudHJpZXMgb3RoZXIgYWN0aXZpdGllcyBhcyB3ZWxsLgoKICBUbyAiY29udmV5IiBhIHdvcmsgbWVhbnMgYW55IGtpbmQgb2YgcHJvcGFnYXRpb24gdGhhdCBlbmFibGVzIG90aGVyCnBhcnRpZXMgdG8gbWFrZSBvciByZWNlaXZlIGNvcGllcy4gIE1lcmUgaW50ZXJhY3Rpb24gd2l0aCBhIHVzZXIgdGhyb3VnaAphIGNvbXB1dGVyIG5ldHdvcmssIHdpdGggbm8gdHJhbnNmZXIgb2YgYSBjb3B5LCBpcyBub3QgY29udmV5aW5nLgoKICBBbiBpbnRlcmFjdGl2ZSB1c2VyIGludGVyZmFjZSBkaXNwbGF5cyAiQXBwcm9wcmlhdGUgTGVnYWwgTm90aWNlcyIKdG8gdGhlIGV4dGVudCB0aGF0IGl0IGluY2x1ZGVzIGEgY29udmVuaWVudCBhbmQgcHJvbWluZW50bHkgdmlzaWJsZQpmZWF0dXJlIHRoYXQgKDEpIGRpc3BsYXlzIGFuIGFwcHJvcHJpYXRlIGNvcHlyaWdodCBub3RpY2UsIGFuZCAoMikKdGVsbHMgdGhlIHVzZXIgdGhhdCB0aGVyZSBpcyBubyB3YXJyYW50eSBmb3IgdGhlIHdvcmsgKGV4Y2VwdCB0byB0aGUKZXh0ZW50IHRoYXQgd2FycmFudGllcyBhcmUgcHJvdmlkZWQpLCB0aGF0IGxpY2Vuc2VlcyBtYXkgY29udmV5IHRoZQp3b3JrIHVuZGVyIHRoaXMgTGljZW5zZSwgYW5kIGhvdyB0byB2aWV3IGEgY29weSBvZiB0aGlzIExpY2Vuc2UuICBJZgp0aGUgaW50ZXJmYWNlIHByZXNlbnRzIGEgbGlzdCBvZiB1c2VyIGNvbW1hbmRzIG9yIG9wdGlvbnMsIHN1Y2ggYXMgYQptZW51LCBhIHByb21pbmVudCBpdGVtIGluIHRoZSBsaXN0IG1lZXRzIHRoaXMgY3JpdGVyaW9uLgoKICAxLiBTb3VyY2UgQ29kZS4KCiAgVGhlICJzb3VyY2UgY29kZSIgZm9yIGEgd29yayBtZWFucyB0aGUgcHJlZmVycmVkIGZvcm0gb2YgdGhlIHdvcmsKZm9yIG1ha2luZyBtb2RpZmljYXRpb25zIHRvIGl0LiAgIk9iamVjdCBjb2RlIiBtZWFucyBhbnkgbm9uLXNvdXJjZQpmb3JtIG9mIGEgd29yay4KCiAgQSAiU3RhbmRhcmQgSW50ZXJmYWNlIiBtZWFucyBhbiBpbnRlcmZhY2UgdGhhdCBlaXRoZXIgaXMgYW4gb2ZmaWNpYWwKc3RhbmRhcmQgZGVmaW5lZCBieSBhIHJlY29nbml6ZWQgc3RhbmRhcmRzIGJvZHksIG9yLCBpbiB0aGUgY2FzZSBvZgppbnRlcmZhY2VzIHNwZWNpZmllZCBmb3IgYSBwYXJ0aWN1bGFyIHByb2dyYW1taW5nIGxhbmd1YWdlLCBvbmUgdGhhdAppcyB3aWRlbHkgdXNlZCBhbW9uZyBkZXZlbG9wZXJzIHdvcmtpbmcgaW4gdGhhdCBsYW5ndWFnZS4KCiAgVGhlICJTeXN0ZW0gTGlicmFyaWVzIiBvZiBhbiBleGVjdXRhYmxlIHdvcmsgaW5jbHVkZSBhbnl0aGluZywgb3RoZXIKdGhhbiB0aGUgd29yayBhcyBhIHdob2xlLCB0aGF0IChhKSBpcyBpbmNsdWRlZCBpbiB0aGUgbm9ybWFsIGZvcm0gb2YKcGFja2FnaW5nIGEgTWFqb3IgQ29tcG9uZW50LCBidXQgd2hpY2ggaXMgbm90IHBhcnQgb2YgdGhhdCBNYWpvcgpDb21wb25lbnQsIGFuZCAoYikgc2VydmVzIG9ubHkgdG8gZW5hYmxlIHVzZSBvZiB0aGUgd29yayB3aXRoIHRoYXQKTWFqb3IgQ29tcG9uZW50LCBvciB0byBpbXBsZW1lbnQgYSBTdGFuZGFyZCBJbnRlcmZhY2UgZm9yIHdoaWNoIGFuCmltcGxlbWVudGF0aW9uIGlzIGF2YWlsYWJsZSB0byB0aGUgcHVibGljIGluIHNvdXJjZSBjb2RlIGZvcm0uICBBCiJNYWpvciBDb21wb25lbnQiLCBpbiB0aGlzIGNvbnRleHQsIG1lYW5zIGEgbWFqb3IgZXNzZW50aWFsIGNvbXBvbmVudAooa2VybmVsLCB3aW5kb3cgc3lzdGVtLCBhbmQgc28gb24pIG9mIHRoZSBzcGVjaWZpYyBvcGVyYXRpbmcgc3lzdGVtCihpZiBhbnkpIG9uIHdoaWNoIHRoZSBleGVjdXRhYmxlIHdvcmsgcnVucywgb3IgYSBjb21waWxlciB1c2VkIHRvCnByb2R1Y2UgdGhlIHdvcmssIG9yIGFuIG9iamVjdCBjb2RlIGludGVycHJldGVyIHVzZWQgdG8gcnVuIGl0LgoKICBUaGUgIkNvcnJlc3BvbmRpbmcgU291cmNlIiBmb3IgYSB3b3JrIGluIG9iamVjdCBjb2RlIGZvcm0gbWVhbnMgYWxsCnRoZSBzb3VyY2UgY29kZSBuZWVkZWQgdG8gZ2VuZXJhdGUsIGluc3RhbGwsIGFuZCAoZm9yIGFuIGV4ZWN1dGFibGUKd29yaykgcnVuIHRoZSBvYmplY3QgY29kZSBhbmQgdG8gbW9kaWZ5IHRoZSB3b3JrLCBpbmNsdWRpbmcgc2NyaXB0cyB0bwpjb250cm9sIHRob3NlIGFjdGl2aXRpZXMuICBIb3dldmVyLCBpdCBkb2VzIG5vdCBpbmNsdWRlIHRoZSB3b3JrJ3MKU3lzdGVtIExpYnJhcmllcywgb3IgZ2VuZXJhbC1wdXJwb3NlIHRvb2xzIG9yIGdlbmVyYWxseSBhdmFpbGFibGUgZnJlZQpwcm9ncmFtcyB3aGljaCBhcmUgdXNlZCB1bm1vZGlmaWVkIGluIHBlcmZvcm1pbmcgdGhvc2UgYWN0aXZpdGllcyBidXQKd2hpY2ggYXJlIG5vdCBwYXJ0IG9mIHRoZSB3b3JrLiAgRm9yIGV4YW1wbGUsIENvcnJlc3BvbmRpbmcgU291cmNlCmluY2x1ZGVzIGludGVyZmFjZSBkZWZpbml0aW9uIGZpbGVzIGFzc29jaWF0ZWQgd2l0aCBzb3VyY2UgZmlsZXMgZm9yCnRoZSB3b3JrLCBhbmQgdGhlIHNvdXJjZSBjb2RlIGZvciBzaGFyZWQgbGlicmFyaWVzIGFuZCBkeW5hbWljYWxseQpsaW5rZWQgc3VicHJvZ3JhbXMgdGhhdCB0aGUgd29yayBpcyBzcGVjaWZpY2FsbHkgZGVzaWduZWQgdG8gcmVxdWlyZSwKc3VjaCBhcyBieSBpbnRpbWF0ZSBkYXRhIGNvbW11bmljYXRpb24gb3IgY29udHJvbCBmbG93IGJldHdlZW4gdGhvc2UKc3VicHJvZ3JhbXMgYW5kIG90aGVyIHBhcnRzIG9mIHRoZSB3b3JrLgoKICBUaGUgQ29ycmVzcG9uZGluZyBTb3VyY2UgbmVlZCBub3QgaW5jbHVkZSBhbnl0aGluZyB0aGF0IHVzZXJzCmNhbiByZWdlbmVyYXRlIGF1dG9tYXRpY2FsbHkgZnJvbSBvdGhlciBwYXJ0cyBvZiB0aGUgQ29ycmVzcG9uZGluZwpTb3VyY2UuCgogIFRoZSBDb3JyZXNwb25kaW5nIFNvdXJjZSBmb3IgYSB3b3JrIGluIHNvdXJjZSBjb2RlIGZvcm0gaXMgdGhhdApzYW1lIHdvcmsuCgogIDIuIEJhc2ljIFBlcm1pc3Npb25zLgoKICBBbGwgcmlnaHRzIGdyYW50ZWQgdW5kZXIgdGhpcyBMaWNlbnNlIGFyZSBncmFudGVkIGZvciB0aGUgdGVybSBvZgpjb3B5cmlnaHQgb24gdGhlIFByb2dyYW0sIGFuZCBhcmUgaXJyZXZvY2FibGUgcHJvdmlkZWQgdGhlIHN0YXRlZApjb25kaXRpb25zIGFyZSBtZXQuICBUaGlzIExpY2Vuc2UgZXhwbGljaXRseSBhZmZpcm1zIHlvdXIgdW5saW1pdGVkCnBlcm1pc3Npb24gdG8gcnVuIHRoZSB1bm1vZGlmaWVkIFByb2dyYW0uICBUaGUgb3V0cHV0IGZyb20gcnVubmluZyBhCmNvdmVyZWQgd29yayBpcyBjb3ZlcmVkIGJ5IHRoaXMgTGljZW5zZSBvbmx5IGlmIHRoZSBvdXRwdXQsIGdpdmVuIGl0cwpjb250ZW50LCBjb25zdGl0dXRlcyBhIGNvdmVyZWQgd29yay4gIFRoaXMgTGljZW5zZSBhY2tub3dsZWRnZXMgeW91cgpyaWdodHMgb2YgZmFpciB1c2Ugb3Igb3RoZXIgZXF1aXZhbGVudCwgYXMgcHJvdmlkZWQgYnkgY29weXJpZ2h0IGxhdy4KCiAgWW91IG1heSBtYWtlLCBydW4gYW5kIHByb3BhZ2F0ZSBjb3ZlcmVkIHdvcmtzIHRoYXQgeW91IGRvIG5vdApjb252ZXksIHdpdGhvdXQgY29uZGl0aW9ucyBzbyBsb25nIGFzIHlvdXIgbGljZW5zZSBvdGhlcndpc2UgcmVtYWlucwppbiBmb3JjZS4gIFlvdSBtYXkgY29udmV5IGNvdmVyZWQgd29ya3MgdG8gb3RoZXJzIGZvciB0aGUgc29sZSBwdXJwb3NlCm9mIGhhdmluZyB0aGVtIG1ha2UgbW9kaWZpY2F0aW9ucyBleGNsdXNpdmVseSBmb3IgeW91LCBvciBwcm92aWRlIHlvdQp3aXRoIGZhY2lsaXRpZXMgZm9yIHJ1bm5pbmcgdGhvc2Ugd29ya3MsIHByb3ZpZGVkIHRoYXQgeW91IGNvbXBseSB3aXRoCnRoZSB0ZXJtcyBvZiB0aGlzIExpY2Vuc2UgaW4gY29udmV5aW5nIGFsbCBtYXRlcmlhbCBmb3Igd2hpY2ggeW91IGRvCm5vdCBjb250cm9sIGNvcHlyaWdodC4gIFRob3NlIHRodXMgbWFraW5nIG9yIHJ1bm5pbmcgdGhlIGNvdmVyZWQgd29ya3MKZm9yIHlvdSBtdXN0IGRvIHNvIGV4Y2x1c2l2ZWx5IG9uIHlvdXIgYmVoYWxmLCB1bmRlciB5b3VyIGRpcmVjdGlvbgphbmQgY29udHJvbCwgb24gdGVybXMgdGhhdCBwcm9oaWJpdCB0aGVtIGZyb20gbWFraW5nIGFueSBjb3BpZXMgb2YKeW91ciBjb3B5cmlnaHRlZCBtYXRlcmlhbCBvdXRzaWRlIHRoZWlyIHJlbGF0aW9uc2hpcCB3aXRoIHlvdS4KCiAgQ29udmV5aW5nIHVuZGVyIGFueSBvdGhlciBjaXJjdW1zdGFuY2VzIGlzIHBlcm1pdHRlZCBzb2xlbHkgdW5kZXIKdGhlIGNvbmRpdGlvbnMgc3RhdGVkIGJlbG93LiAgU3VibGljZW5zaW5nIGlzIG5vdCBhbGxvd2VkOyBzZWN0aW9uIDEwCm1ha2VzIGl0IHVubmVjZXNzYXJ5LgoKICAzLiBQcm90ZWN0aW5nIFVzZXJzJyBMZWdhbCBSaWdodHMgRnJvbSBBbnRpLUNpcmN1bXZlbnRpb24gTGF3LgoKICBObyBjb3ZlcmVkIHdvcmsgc2hhbGwgYmUgZGVlbWVkIHBhcnQgb2YgYW4gZWZmZWN0aXZlIHRlY2hub2xvZ2ljYWwKbWVhc3VyZSB1bmRlciBhbnkgYXBwbGljYWJsZSBsYXcgZnVsZmlsbGluZyBvYmxpZ2F0aW9ucyB1bmRlciBhcnRpY2xlCjExIG9mIHRoZSBXSVBPIGNvcHlyaWdodCB0cmVhdHkgYWRvcHRlZCBvbiAyMCBEZWNlbWJlciAxOTk2LCBvcgpzaW1pbGFyIGxhd3MgcHJvaGliaXRpbmcgb3IgcmVzdHJpY3RpbmcgY2lyY3VtdmVudGlvbiBvZiBzdWNoCm1lYXN1cmVzLgoKICBXaGVuIHlvdSBjb252ZXkgYSBjb3ZlcmVkIHdvcmssIHlvdSB3YWl2ZSBhbnkgbGVnYWwgcG93ZXIgdG8gZm9yYmlkCmNpcmN1bXZlbnRpb24gb2YgdGVjaG5vbG9naWNhbCBtZWFzdXJlcyB0byB0aGUgZXh0ZW50IHN1Y2ggY2lyY3VtdmVudGlvbgppcyBlZmZlY3RlZCBieSBleGVyY2lzaW5nIHJpZ2h0cyB1bmRlciB0aGlzIExpY2Vuc2Ugd2l0aCByZXNwZWN0IHRvCnRoZSBjb3ZlcmVkIHdvcmssIGFuZCB5b3UgZGlzY2xhaW0gYW55IGludGVudGlvbiB0byBsaW1pdCBvcGVyYXRpb24gb3IKbW9kaWZpY2F0aW9uIG9mIHRoZSB3b3JrIGFzIGEgbWVhbnMgb2YgZW5mb3JjaW5nLCBhZ2FpbnN0IHRoZSB3b3JrJ3MKdXNlcnMsIHlvdXIgb3IgdGhpcmQgcGFydGllcycgbGVnYWwgcmlnaHRzIHRvIGZvcmJpZCBjaXJjdW12ZW50aW9uIG9mCnRlY2hub2xvZ2ljYWwgbWVhc3VyZXMuCgogIDQuIENvbnZleWluZyBWZXJiYXRpbSBDb3BpZXMuCgogIFlvdSBtYXkgY29udmV5IHZlcmJhdGltIGNvcGllcyBvZiB0aGUgUHJvZ3JhbSdzIHNvdXJjZSBjb2RlIGFzIHlvdQpyZWNlaXZlIGl0LCBpbiBhbnkgbWVkaXVtLCBwcm92aWRlZCB0aGF0IHlvdSBjb25zcGljdW91c2x5IGFuZAphcHByb3ByaWF0ZWx5IHB1Ymxpc2ggb24gZWFjaCBjb3B5IGFuIGFwcHJvcHJpYXRlIGNvcHlyaWdodCBub3RpY2U7CmtlZXAgaW50YWN0IGFsbCBub3RpY2VzIHN0YXRpbmcgdGhhdCB0aGlzIExpY2Vuc2UgYW5kIGFueQpub24tcGVybWlzc2l2ZSB0ZXJtcyBhZGRlZCBpbiBhY2NvcmQgd2l0aCBzZWN0aW9uIDcgYXBwbHkgdG8gdGhlIGNvZGU7CmtlZXAgaW50YWN0IGFsbCBub3RpY2VzIG9mIHRoZSBhYnNlbmNlIG9mIGFueSB3YXJyYW50eTsgYW5kIGdpdmUgYWxsCnJlY2lwaWVudHMgYSBjb3B5IG9mIHRoaXMgTGljZW5zZSBhbG9uZyB3aXRoIHRoZSBQcm9ncmFtLgoKICBZb3UgbWF5IGNoYXJnZSBhbnkgcHJpY2Ugb3Igbm8gcHJpY2UgZm9yIGVhY2ggY29weSB0aGF0IHlvdSBjb252ZXksCmFuZCB5b3UgbWF5IG9mZmVyIHN1cHBvcnQgb3Igd2FycmFudHkgcHJvdGVjdGlvbiBmb3IgYSBmZWUuCgogIDUuIENvbnZleWluZyBNb2RpZmllZCBTb3VyY2UgVmVyc2lvbnMuCgogIFlvdSBtYXkgY29udmV5IGEgd29yayBiYXNlZCBvbiB0aGUgUHJvZ3JhbSwgb3IgdGhlIG1vZGlmaWNhdGlvbnMgdG8KcHJvZHVjZSBpdCBmcm9tIHRoZSBQcm9ncmFtLCBpbiB0aGUgZm9ybSBvZiBzb3VyY2UgY29kZSB1bmRlciB0aGUKdGVybXMgb2Ygc2VjdGlvbiA0LCBwcm92aWRlZCB0aGF0IHlvdSBhbHNvIG1lZXQgYWxsIG9mIHRoZXNlIGNvbmRpdGlvbnM6CgogICAgYSkgVGhlIHdvcmsgbXVzdCBjYXJyeSBwcm9taW5lbnQgbm90aWNlcyBzdGF0aW5nIHRoYXQgeW91IG1vZGlmaWVkCiAgICBpdCwgYW5kIGdpdmluZyBhIHJlbGV2YW50IGRhdGUuCgogICAgYikgVGhlIHdvcmsgbXVzdCBjYXJyeSBwcm9taW5lbnQgbm90aWNlcyBzdGF0aW5nIHRoYXQgaXQgaXMKICAgIHJlbGVhc2VkIHVuZGVyIHRoaXMgTGljZW5zZSBhbmQgYW55IGNvbmRpdGlvbnMgYWRkZWQgdW5kZXIgc2VjdGlvbgogICAgNy4gIFRoaXMgcmVxdWlyZW1lbnQgbW9kaWZpZXMgdGhlIHJlcXVpcmVtZW50IGluIHNlY3Rpb24gNCB0bwogICAgImtlZXAgaW50YWN0IGFsbCBub3RpY2VzIi4KCiAgICBjKSBZb3UgbXVzdCBsaWNlbnNlIHRoZSBlbnRpcmUgd29yaywgYXMgYSB3aG9sZSwgdW5kZXIgdGhpcwogICAgTGljZW5zZSB0byBhbnlvbmUgd2hvIGNvbWVzIGludG8gcG9zc2Vzc2lvbiBvZiBhIGNvcHkuICBUaGlzCiAgICBMaWNlbnNlIHdpbGwgdGhlcmVmb3JlIGFwcGx5LCBhbG9uZyB3aXRoIGFueSBhcHBsaWNhYmxlIHNlY3Rpb24gNwogICAgYWRkaXRpb25hbCB0ZXJtcywgdG8gdGhlIHdob2xlIG9mIHRoZSB3b3JrLCBhbmQgYWxsIGl0cyBwYXJ0cywKICAgIHJlZ2FyZGxlc3Mgb2YgaG93IHRoZXkgYXJlIHBhY2thZ2VkLiAgVGhpcyBMaWNlbnNlIGdpdmVzIG5vCiAgICBwZXJtaXNzaW9uIHRvIGxpY2Vuc2UgdGhlIHdvcmsgaW4gYW55IG90aGVyIHdheSwgYnV0IGl0IGRvZXMgbm90CiAgICBpbnZhbGlkYXRlIHN1Y2ggcGVybWlzc2lvbiBpZiB5b3UgaGF2ZSBzZXBhcmF0ZWx5IHJlY2VpdmVkIGl0LgoKICAgIGQpIElmIHRoZSB3b3JrIGhhcyBpbnRlcmFjdGl2ZSB1c2VyIGludGVyZmFjZXMsIGVhY2ggbXVzdCBkaXNwbGF5CiAgICBBcHByb3ByaWF0ZSBMZWdhbCBOb3RpY2VzOyBob3dldmVyLCBpZiB0aGUgUHJvZ3JhbSBoYXMgaW50ZXJhY3RpdmUKICAgIGludGVyZmFjZXMgdGhhdCBkbyBub3QgZGlzcGxheSBBcHByb3ByaWF0ZSBMZWdhbCBOb3RpY2VzLCB5b3VyCiAgICB3b3JrIG5lZWQgbm90IG1ha2UgdGhlbSBkbyBzby4KCiAgQSBjb21waWxhdGlvbiBvZiBhIGNvdmVyZWQgd29yayB3aXRoIG90aGVyIHNlcGFyYXRlIGFuZCBpbmRlcGVuZGVudAp3b3Jrcywgd2hpY2ggYXJlIG5vdCBieSB0aGVpciBuYXR1cmUgZXh0ZW5zaW9ucyBvZiB0aGUgY292ZXJlZCB3b3JrLAphbmQgd2hpY2ggYXJlIG5vdCBjb21iaW5lZCB3aXRoIGl0IHN1Y2ggYXMgdG8gZm9ybSBhIGxhcmdlciBwcm9ncmFtLAppbiBvciBvbiBhIHZvbHVtZSBvZiBhIHN0b3JhZ2Ugb3IgZGlzdHJpYnV0aW9uIG1lZGl1bSwgaXMgY2FsbGVkIGFuCiJhZ2dyZWdhdGUiIGlmIHRoZSBjb21waWxhdGlvbiBhbmQgaXRzIHJlc3VsdGluZyBjb3B5cmlnaHQgYXJlIG5vdAp1c2VkIHRvIGxpbWl0IHRoZSBhY2Nlc3Mgb3IgbGVnYWwgcmlnaHRzIG9mIHRoZSBjb21waWxhdGlvbidzIHVzZXJzCmJleW9uZCB3aGF0IHRoZSBpbmRpdmlkdWFsIHdvcmtzIHBlcm1pdC4gIEluY2x1c2lvbiBvZiBhIGNvdmVyZWQgd29yawppbiBhbiBhZ2dyZWdhdGUgZG9lcyBub3QgY2F1c2UgdGhpcyBMaWNlbnNlIHRvIGFwcGx5IHRvIHRoZSBvdGhlcgpwYXJ0cyBvZiB0aGUgYWdncmVnYXRlLgoKICA2LiBDb252ZXlpbmcgTm9uLVNvdXJjZSBGb3Jtcy4KCiAgWW91IG1heSBjb252ZXkgYSBjb3ZlcmVkIHdvcmsgaW4gb2JqZWN0IGNvZGUgZm9ybSB1bmRlciB0aGUgdGVybXMKb2Ygc2VjdGlvbnMgNCBhbmQgNSwgcHJvdmlkZWQgdGhhdCB5b3UgYWxzbyBjb252ZXkgdGhlCm1hY2hpbmUtcmVhZGFibGUgQ29ycmVzcG9uZGluZyBTb3VyY2UgdW5kZXIgdGhlIHRlcm1zIG9mIHRoaXMgTGljZW5zZSwKaW4gb25lIG9mIHRoZXNlIHdheXM6CgogICAgYSkgQ29udmV5IHRoZSBvYmplY3QgY29kZSBpbiwgb3IgZW1ib2RpZWQgaW4sIGEgcGh5c2ljYWwgcHJvZHVjdAogICAgKGluY2x1ZGluZyBhIHBoeXNpY2FsIGRpc3RyaWJ1dGlvbiBtZWRpdW0pLCBhY2NvbXBhbmllZCBieSB0aGUKICAgIENvcnJlc3BvbmRpbmcgU291cmNlIGZpeGVkIG9uIGEgZHVyYWJsZSBwaHlzaWNhbCBtZWRpdW0KICAgIGN1c3RvbWFyaWx5IHVzZWQgZm9yIHNvZnR3YXJlIGludGVyY2hhbmdlLgoKICAgIGIpIENvbnZleSB0aGUgb2JqZWN0IGNvZGUgaW4sIG9yIGVtYm9kaWVkIGluLCBhIHBoeXNpY2FsIHByb2R1Y3QKICAgIChpbmNsdWRpbmcgYSBwaHlzaWNhbCBkaXN0cmlidXRpb24gbWVkaXVtKSwgYWNjb21wYW5pZWQgYnkgYQogICAgd3JpdHRlbiBvZmZlciwgdmFsaWQgZm9yIGF0IGxlYXN0IHRocmVlIHllYXJzIGFuZCB2YWxpZCBmb3IgYXMKICAgIGxvbmcgYXMgeW91IG9mZmVyIHNwYXJlIHBhcnRzIG9yIGN1c3RvbWVyIHN1cHBvcnQgZm9yIHRoYXQgcHJvZHVjdAogICAgbW9kZWwsIHRvIGdpdmUgYW55b25lIHdobyBwb3NzZXNzZXMgdGhlIG9iamVjdCBjb2RlIGVpdGhlciAoMSkgYQogICAgY29weSBvZiB0aGUgQ29ycmVzcG9uZGluZyBTb3VyY2UgZm9yIGFsbCB0aGUgc29mdHdhcmUgaW4gdGhlCiAgICBwcm9kdWN0IHRoYXQgaXMgY292ZXJlZCBieSB0aGlzIExpY2Vuc2UsIG9uIGEgZHVyYWJsZSBwaHlzaWNhbAogICAgbWVkaXVtIGN1c3RvbWFyaWx5IHVzZWQgZm9yIHNvZnR3YXJlIGludGVyY2hhbmdlLCBmb3IgYSBwcmljZSBubwogICAgbW9yZSB0aGFuIHlvdXIgcmVhc29uYWJsZSBjb3N0IG9mIHBoeXNpY2FsbHkgcGVyZm9ybWluZyB0aGlzCiAgICBjb252ZXlpbmcgb2Ygc291cmNlLCBvciAoMikgYWNjZXNzIHRvIGNvcHkgdGhlCiAgICBDb3JyZXNwb25kaW5nIFNvdXJjZSBmcm9tIGEgbmV0d29yayBzZXJ2ZXIgYXQgbm8gY2hhcmdlLgoKICAgIGMpIENvbnZleSBpbmRpdmlkdWFsIGNvcGllcyBvZiB0aGUgb2JqZWN0IGNvZGUgd2l0aCBhIGNvcHkgb2YgdGhlCiAgICB3cml0dGVuIG9mZmVyIHRvIHByb3ZpZGUgdGhlIENvcnJlc3BvbmRpbmcgU291cmNlLiAgVGhpcwogICAgYWx0ZXJuYXRpdmUgaXMgYWxsb3dlZCBvbmx5IG9jY2FzaW9uYWxseSBhbmQgbm9uY29tbWVyY2lhbGx5LCBhbmQKICAgIG9ubHkgaWYgeW91IHJlY2VpdmVkIHRoZSBvYmplY3QgY29kZSB3aXRoIHN1Y2ggYW4gb2ZmZXIsIGluIGFjY29yZAogICAgd2l0aCBzdWJzZWN0aW9uIDZiLgoKICAgIGQpIENvbnZleSB0aGUgb2JqZWN0IGNvZGUgYnkgb2ZmZXJpbmcgYWNjZXNzIGZyb20gYSBkZXNpZ25hdGVkCiAgICBwbGFjZSAoZ3JhdGlzIG9yIGZvciBhIGNoYXJnZSksIGFuZCBvZmZlciBlcXVpdmFsZW50IGFjY2VzcyB0byB0aGUKICAgIENvcnJlc3BvbmRpbmcgU291cmNlIGluIHRoZSBzYW1lIHdheSB0aHJvdWdoIHRoZSBzYW1lIHBsYWNlIGF0IG5vCiAgICBmdXJ0aGVyIGNoYXJnZS4gIFlvdSBuZWVkIG5vdCByZXF1aXJlIHJlY2lwaWVudHMgdG8gY29weSB0aGUKICAgIENvcnJlc3BvbmRpbmcgU291cmNlIGFsb25nIHdpdGggdGhlIG9iamVjdCBjb2RlLiAgSWYgdGhlIHBsYWNlIHRvCiAgICBjb3B5IHRoZSBvYmplY3QgY29kZSBpcyBhIG5ldHdvcmsgc2VydmVyLCB0aGUgQ29ycmVzcG9uZGluZyBTb3VyY2UKICAgIG1heSBiZSBvbiBhIGRpZmZlcmVudCBzZXJ2ZXIgKG9wZXJhdGVkIGJ5IHlvdSBvciBhIHRoaXJkIHBhcnR5KQogICAgdGhhdCBzdXBwb3J0cyBlcXVpdmFsZW50IGNvcHlpbmcgZmFjaWxpdGllcywgcHJvdmlkZWQgeW91IG1haW50YWluCiAgICBjbGVhciBkaXJlY3Rpb25zIG5leHQgdG8gdGhlIG9iamVjdCBjb2RlIHNheWluZyB3aGVyZSB0byBmaW5kIHRoZQogICAgQ29ycmVzcG9uZGluZyBTb3VyY2UuICBSZWdhcmRsZXNzIG9mIHdoYXQgc2VydmVyIGhvc3RzIHRoZQogICAgQ29ycmVzcG9uZGluZyBTb3VyY2UsIHlvdSByZW1haW4gb2JsaWdhdGVkIHRvIGVuc3VyZSB0aGF0IGl0IGlzCiAgICBhdmFpbGFibGUgZm9yIGFzIGxvbmcgYXMgbmVlZGVkIHRvIHNhdGlzZnkgdGhlc2UgcmVxdWlyZW1lbnRzLgoKICAgIGUpIENvbnZleSB0aGUgb2JqZWN0IGNvZGUgdXNpbmcgcGVlci10by1wZWVyIHRyYW5zbWlzc2lvbiwgcHJvdmlkZWQKICAgIHlvdSBpbmZvcm0gb3RoZXIgcGVlcnMgd2hlcmUgdGhlIG9iamVjdCBjb2RlIGFuZCBDb3JyZXNwb25kaW5nCiAgICBTb3VyY2Ugb2YgdGhlIHdvcmsgYXJlIGJlaW5nIG9mZmVyZWQgdG8gdGhlIGdlbmVyYWwgcHVibGljIGF0IG5vCiAgICBjaGFyZ2UgdW5kZXIgc3Vic2VjdGlvbiA2ZC4KCiAgQSBzZXBhcmFibGUgcG9ydGlvbiBvZiB0aGUgb2JqZWN0IGNvZGUsIHdob3NlIHNvdXJjZSBjb2RlIGlzIGV4Y2x1ZGVkCmZyb20gdGhlIENvcnJlc3BvbmRpbmcgU291cmNlIGFzIGEgU3lzdGVtIExpYnJhcnksIG5lZWQgbm90IGJlCmluY2x1ZGVkIGluIGNvbnZleWluZyB0aGUgb2JqZWN0IGNvZGUgd29yay4KCiAgQSAiVXNlciBQcm9kdWN0IiBpcyBlaXRoZXIgKDEpIGEgImNvbnN1bWVyIHByb2R1Y3QiLCB3aGljaCBtZWFucyBhbnkKdGFuZ2libGUgcGVyc29uYWwgcHJvcGVydHkgd2hpY2ggaXMgbm9ybWFsbHkgdXNlZCBmb3IgcGVyc29uYWwsIGZhbWlseSwKb3IgaG91c2Vob2xkIHB1cnBvc2VzLCBvciAoMikgYW55dGhpbmcgZGVzaWduZWQgb3Igc29sZCBmb3IgaW5jb3Jwb3JhdGlvbgppbnRvIGEgZHdlbGxpbmcuICBJbiBkZXRlcm1pbmluZyB3aGV0aGVyIGEgcHJvZHVjdCBpcyBhIGNvbnN1bWVyIHByb2R1Y3QsCmRvdWJ0ZnVsIGNhc2VzIHNoYWxsIGJlIHJlc29sdmVkIGluIGZhdm9yIG9mIGNvdmVyYWdlLiAgRm9yIGEgcGFydGljdWxhcgpwcm9kdWN0IHJlY2VpdmVkIGJ5IGEgcGFydGljdWxhciB1c2VyLCAibm9ybWFsbHkgdXNlZCIgcmVmZXJzIHRvIGEKdHlwaWNhbCBvciBjb21tb24gdXNlIG9mIHRoYXQgY2xhc3Mgb2YgcHJvZHVjdCwgcmVnYXJkbGVzcyBvZiB0aGUgc3RhdHVzCm9mIHRoZSBwYXJ0aWN1bGFyIHVzZXIgb3Igb2YgdGhlIHdheSBpbiB3aGljaCB0aGUgcGFydGljdWxhciB1c2VyCmFjdHVhbGx5IHVzZXMsIG9yIGV4cGVjdHMgb3IgaXMgZXhwZWN0ZWQgdG8gdXNlLCB0aGUgcHJvZHVjdC4gIEEgcHJvZHVjdAppcyBhIGNvbnN1bWVyIHByb2R1Y3QgcmVnYXJkbGVzcyBvZiB3aGV0aGVyIHRoZSBwcm9kdWN0IGhhcyBzdWJzdGFudGlhbApjb21tZXJjaWFsLCBpbmR1c3RyaWFsIG9yIG5vbi1jb25zdW1lciB1c2VzLCB1bmxlc3Mgc3VjaCB1c2VzIHJlcHJlc2VudAp0aGUgb25seSBzaWduaWZpY2FudCBtb2RlIG9mIHVzZSBvZiB0aGUgcHJvZHVjdC4KCiAgIkluc3RhbGxhdGlvbiBJbmZvcm1hdGlvbiIgZm9yIGEgVXNlciBQcm9kdWN0IG1lYW5zIGFueSBtZXRob2RzLApwcm9jZWR1cmVzLCBhdXRob3JpemF0aW9uIGtleXMsIG9yIG90aGVyIGluZm9ybWF0aW9uIHJlcXVpcmVkIHRvIGluc3RhbGwKYW5kIGV4ZWN1dGUgbW9kaWZpZWQgdmVyc2lvbnMgb2YgYSBjb3ZlcmVkIHdvcmsgaW4gdGhhdCBVc2VyIFByb2R1Y3QgZnJvbQphIG1vZGlmaWVkIHZlcnNpb24gb2YgaXRzIENvcnJlc3BvbmRpbmcgU291cmNlLiAgVGhlIGluZm9ybWF0aW9uIG11c3QKc3VmZmljZSB0byBlbnN1cmUgdGhhdCB0aGUgY29udGludWVkIGZ1bmN0aW9uaW5nIG9mIHRoZSBtb2RpZmllZCBvYmplY3QKY29kZSBpcyBpbiBubyBjYXNlIHByZXZlbnRlZCBvciBpbnRlcmZlcmVkIHdpdGggc29sZWx5IGJlY2F1c2UKbW9kaWZpY2F0aW9uIGhhcyBiZWVuIG1hZGUuCgogIElmIHlvdSBjb252ZXkgYW4gb2JqZWN0IGNvZGUgd29yayB1bmRlciB0aGlzIHNlY3Rpb24gaW4sIG9yIHdpdGgsIG9yCnNwZWNpZmljYWxseSBmb3IgdXNlIGluLCBhIFVzZXIgUHJvZHVjdCwgYW5kIHRoZSBjb252ZXlpbmcgb2NjdXJzIGFzCnBhcnQgb2YgYSB0cmFuc2FjdGlvbiBpbiB3aGljaCB0aGUgcmlnaHQgb2YgcG9zc2Vzc2lvbiBhbmQgdXNlIG9mIHRoZQpVc2VyIFByb2R1Y3QgaXMgdHJhbnNmZXJyZWQgdG8gdGhlIHJlY2lwaWVudCBpbiBwZXJwZXR1aXR5IG9yIGZvciBhCmZpeGVkIHRlcm0gKHJlZ2FyZGxlc3Mgb2YgaG93IHRoZSB0cmFuc2FjdGlvbiBpcyBjaGFyYWN0ZXJpemVkKSwgdGhlCkNvcnJlc3BvbmRpbmcgU291cmNlIGNvbnZleWVkIHVuZGVyIHRoaXMgc2VjdGlvbiBtdXN0IGJlIGFjY29tcGFuaWVkCmJ5IHRoZSBJbnN0YWxsYXRpb24gSW5mb3JtYXRpb24uICBCdXQgdGhpcyByZXF1aXJlbWVudCBkb2VzIG5vdCBhcHBseQppZiBuZWl0aGVyIHlvdSBub3IgYW55IHRoaXJkIHBhcnR5IHJldGFpbnMgdGhlIGFiaWxpdHkgdG8gaW5zdGFsbAptb2RpZmllZCBvYmplY3QgY29kZSBvbiB0aGUgVXNlciBQcm9kdWN0IChmb3IgZXhhbXBsZSwgdGhlIHdvcmsgaGFzCmJlZW4gaW5zdGFsbGVkIGluIFJPTSkuCgogIFRoZSByZXF1aXJlbWVudCB0byBwcm92aWRlIEluc3RhbGxhdGlvbiBJbmZvcm1hdGlvbiBkb2VzIG5vdCBpbmNsdWRlIGEKcmVxdWlyZW1lbnQgdG8gY29udGludWUgdG8gcHJvdmlkZSBzdXBwb3J0IHNlcnZpY2UsIHdhcnJhbnR5LCBvciB1cGRhdGVzCmZvciBhIHdvcmsgdGhhdCBoYXMgYmVlbiBtb2RpZmllZCBvciBpbnN0YWxsZWQgYnkgdGhlIHJlY2lwaWVudCwgb3IgZm9yCnRoZSBVc2VyIFByb2R1Y3QgaW4gd2hpY2ggaXQgaGFzIGJlZW4gbW9kaWZpZWQgb3IgaW5zdGFsbGVkLiAgQWNjZXNzIHRvIGEKbmV0d29yayBtYXkgYmUgZGVuaWVkIHdoZW4gdGhlIG1vZGlmaWNhdGlvbiBpdHNlbGYgbWF0ZXJpYWxseSBhbmQKYWR2ZXJzZWx5IGFmZmVjdHMgdGhlIG9wZXJhdGlvbiBvZiB0aGUgbmV0d29yayBvciB2aW9sYXRlcyB0aGUgcnVsZXMgYW5kCnByb3RvY29scyBmb3IgY29tbXVuaWNhdGlvbiBhY3Jvc3MgdGhlIG5ldHdvcmsuCgogIENvcnJlc3BvbmRpbmcgU291cmNlIGNvbnZleWVkLCBhbmQgSW5zdGFsbGF0aW9uIEluZm9ybWF0aW9uIHByb3ZpZGVkLAppbiBhY2NvcmQgd2l0aCB0aGlzIHNlY3Rpb24gbXVzdCBiZSBpbiBhIGZvcm1hdCB0aGF0IGlzIHB1YmxpY2x5CmRvY3VtZW50ZWQgKGFuZCB3aXRoIGFuIGltcGxlbWVudGF0aW9uIGF2YWlsYWJsZSB0byB0aGUgcHVibGljIGluCnNvdXJjZSBjb2RlIGZvcm0pLCBhbmQgbXVzdCByZXF1aXJlIG5vIHNwZWNpYWwgcGFzc3dvcmQgb3Iga2V5IGZvcgp1bnBhY2tpbmcsIHJlYWRpbmcgb3IgY29weWluZy4KCiAgNy4gQWRkaXRpb25hbCBUZXJtcy4KCiAgIkFkZGl0aW9uYWwgcGVybWlzc2lvbnMiIGFyZSB0ZXJtcyB0aGF0IHN1cHBsZW1lbnQgdGhlIHRlcm1zIG9mIHRoaXMKTGljZW5zZSBieSBtYWtpbmcgZXhjZXB0aW9ucyBmcm9tIG9uZSBvciBtb3JlIG9mIGl0cyBjb25kaXRpb25zLgpBZGRpdGlvbmFsIHBlcm1pc3Npb25zIHRoYXQgYXJlIGFwcGxpY2FibGUgdG8gdGhlIGVudGlyZSBQcm9ncmFtIHNoYWxsCmJlIHRyZWF0ZWQgYXMgdGhvdWdoIHRoZXkgd2VyZSBpbmNsdWRlZCBpbiB0aGlzIExpY2Vuc2UsIHRvIHRoZSBleHRlbnQKdGhhdCB0aGV5IGFyZSB2YWxpZCB1bmRlciBhcHBsaWNhYmxlIGxhdy4gIElmIGFkZGl0aW9uYWwgcGVybWlzc2lvbnMKYXBwbHkgb25seSB0byBwYXJ0IG9mIHRoZSBQcm9ncmFtLCB0aGF0IHBhcnQgbWF5IGJlIHVzZWQgc2VwYXJhdGVseQp1bmRlciB0aG9zZSBwZXJtaXNzaW9ucywgYnV0IHRoZSBlbnRpcmUgUHJvZ3JhbSByZW1haW5zIGdvdmVybmVkIGJ5CnRoaXMgTGljZW5zZSB3aXRob3V0IHJlZ2FyZCB0byB0aGUgYWRkaXRpb25hbCBwZXJtaXNzaW9ucy4KCiAgV2hlbiB5b3UgY29udmV5IGEgY29weSBvZiBhIGNvdmVyZWQgd29yaywgeW91IG1heSBhdCB5b3VyIG9wdGlvbgpyZW1vdmUgYW55IGFkZGl0aW9uYWwgcGVybWlzc2lvbnMgZnJvbSB0aGF0IGNvcHksIG9yIGZyb20gYW55IHBhcnQgb2YKaXQuICAoQWRkaXRpb25hbCBwZXJtaXNzaW9ucyBtYXkgYmUgd3JpdHRlbiB0byByZXF1aXJlIHRoZWlyIG93bgpyZW1vdmFsIGluIGNlcnRhaW4gY2FzZXMgd2hlbiB5b3UgbW9kaWZ5IHRoZSB3b3JrLikgIFlvdSBtYXkgcGxhY2UKYWRkaXRpb25hbCBwZXJtaXNzaW9ucyBvbiBtYXRlcmlhbCwgYWRkZWQgYnkgeW91IHRvIGEgY292ZXJlZCB3b3JrLApmb3Igd2hpY2ggeW91IGhhdmUgb3IgY2FuIGdpdmUgYXBwcm9wcmlhdGUgY29weXJpZ2h0IHBlcm1pc3Npb24uCgogIE5vdHdpdGhzdGFuZGluZyBhbnkgb3RoZXIgcHJvdmlzaW9uIG9mIHRoaXMgTGljZW5zZSwgZm9yIG1hdGVyaWFsIHlvdQphZGQgdG8gYSBjb3ZlcmVkIHdvcmssIHlvdSBtYXkgKGlmIGF1dGhvcml6ZWQgYnkgdGhlIGNvcHlyaWdodCBob2xkZXJzIG9mCnRoYXQgbWF0ZXJpYWwpIHN1cHBsZW1lbnQgdGhlIHRlcm1zIG9mIHRoaXMgTGljZW5zZSB3aXRoIHRlcm1zOgoKICAgIGEpIERpc2NsYWltaW5nIHdhcnJhbnR5IG9yIGxpbWl0aW5nIGxpYWJpbGl0eSBkaWZmZXJlbnRseSBmcm9tIHRoZQogICAgdGVybXMgb2Ygc2VjdGlvbnMgMTUgYW5kIDE2IG9mIHRoaXMgTGljZW5zZTsgb3IKCiAgICBiKSBSZXF1aXJpbmcgcHJlc2VydmF0aW9uIG9mIHNwZWNpZmllZCByZWFzb25hYmxlIGxlZ2FsIG5vdGljZXMgb3IKICAgIGF1dGhvciBhdHRyaWJ1dGlvbnMgaW4gdGhhdCBtYXRlcmlhbCBvciBpbiB0aGUgQXBwcm9wcmlhdGUgTGVnYWwKICAgIE5vdGljZXMgZGlzcGxheWVkIGJ5IHdvcmtzIGNvbnRhaW5pbmcgaXQ7IG9yCgogICAgYykgUHJvaGliaXRpbmcgbWlzcmVwcmVzZW50YXRpb24gb2YgdGhlIG9yaWdpbiBvZiB0aGF0IG1hdGVyaWFsLCBvcgogICAgcmVxdWlyaW5nIHRoYXQgbW9kaWZpZWQgdmVyc2lvbnMgb2Ygc3VjaCBtYXRlcmlhbCBiZSBtYXJrZWQgaW4KICAgIHJlYXNvbmFibGUgd2F5cyBhcyBkaWZmZXJlbnQgZnJvbSB0aGUgb3JpZ2luYWwgdmVyc2lvbjsgb3IKCiAgICBkKSBMaW1pdGluZyB0aGUgdXNlIGZvciBwdWJsaWNpdHkgcHVycG9zZXMgb2YgbmFtZXMgb2YgbGljZW5zb3JzIG9yCiAgICBhdXRob3JzIG9mIHRoZSBtYXRlcmlhbDsgb3IKCiAgICBlKSBEZWNsaW5pbmcgdG8gZ3JhbnQgcmlnaHRzIHVuZGVyIHRyYWRlbWFyayBsYXcgZm9yIHVzZSBvZiBzb21lCiAgICB0cmFkZSBuYW1lcywgdHJhZGVtYXJrcywgb3Igc2VydmljZSBtYXJrczsgb3IKCiAgICBmKSBSZXF1aXJpbmcgaW5kZW1uaWZpY2F0aW9uIG9mIGxpY2Vuc29ycyBhbmQgYXV0aG9ycyBvZiB0aGF0CiAgICBtYXRlcmlhbCBieSBhbnlvbmUgd2hvIGNvbnZleXMgdGhlIG1hdGVyaWFsIChvciBtb2RpZmllZCB2ZXJzaW9ucyBvZgogICAgaXQpIHdpdGggY29udHJhY3R1YWwgYXNzdW1wdGlvbnMgb2YgbGlhYmlsaXR5IHRvIHRoZSByZWNpcGllbnQsIGZvcgogICAgYW55IGxpYWJpbGl0eSB0aGF0IHRoZXNlIGNvbnRyYWN0dWFsIGFzc3VtcHRpb25zIGRpcmVjdGx5IGltcG9zZSBvbgogICAgdGhvc2UgbGljZW5zb3JzIGFuZCBhdXRob3JzLgoKICBBbGwgb3RoZXIgbm9uLXBlcm1pc3NpdmUgYWRkaXRpb25hbCB0ZXJtcyBhcmUgY29uc2lkZXJlZCAiZnVydGhlcgpyZXN0cmljdGlvbnMiIHdpdGhpbiB0aGUgbWVhbmluZyBvZiBzZWN0aW9uIDEwLiAgSWYgdGhlIFByb2dyYW0gYXMgeW91CnJlY2VpdmVkIGl0LCBvciBhbnkgcGFydCBvZiBpdCwgY29udGFpbnMgYSBub3RpY2Ugc3RhdGluZyB0aGF0IGl0IGlzCmdvdmVybmVkIGJ5IHRoaXMgTGljZW5zZSBhbG9uZyB3aXRoIGEgdGVybSB0aGF0IGlzIGEgZnVydGhlcgpyZXN0cmljdGlvbiwgeW91IG1heSByZW1vdmUgdGhhdCB0ZXJtLiAgSWYgYSBsaWNlbnNlIGRvY3VtZW50IGNvbnRhaW5zCmEgZnVydGhlciByZXN0cmljdGlvbiBidXQgcGVybWl0cyByZWxpY2Vuc2luZyBvciBjb252ZXlpbmcgdW5kZXIgdGhpcwpMaWNlbnNlLCB5b3UgbWF5IGFkZCB0byBhIGNvdmVyZWQgd29yayBtYXRlcmlhbCBnb3Zlcm5lZCBieSB0aGUgdGVybXMKb2YgdGhhdCBsaWNlbnNlIGRvY3VtZW50LCBwcm92aWRlZCB0aGF0IHRoZSBmdXJ0aGVyIHJlc3RyaWN0aW9uIGRvZXMKbm90IHN1cnZpdmUgc3VjaCByZWxpY2Vuc2luZyBvciBjb252ZXlpbmcuCgogIElmIHlvdSBhZGQgdGVybXMgdG8gYSBjb3ZlcmVkIHdvcmsgaW4gYWNjb3JkIHdpdGggdGhpcyBzZWN0aW9uLCB5b3UKbXVzdCBwbGFjZSwgaW4gdGhlIHJlbGV2YW50IHNvdXJjZSBmaWxlcywgYSBzdGF0ZW1lbnQgb2YgdGhlCmFkZGl0aW9uYWwgdGVybXMgdGhhdCBhcHBseSB0byB0aG9zZSBmaWxlcywgb3IgYSBub3RpY2UgaW5kaWNhdGluZwp3aGVyZSB0byBmaW5kIHRoZSBhcHBsaWNhYmxlIHRlcm1zLgoKICBBZGRpdGlvbmFsIHRlcm1zLCBwZXJtaXNzaXZlIG9yIG5vbi1wZXJtaXNzaXZlLCBtYXkgYmUgc3RhdGVkIGluIHRoZQpmb3JtIG9mIGEgc2VwYXJhdGVseSB3cml0dGVuIGxpY2Vuc2UsIG9yIHN0YXRlZCBhcyBleGNlcHRpb25zOwp0aGUgYWJvdmUgcmVxdWlyZW1lbnRzIGFwcGx5IGVpdGhlciB3YXkuCgogIDguIFRlcm1pbmF0aW9uLgoKICBZb3UgbWF5IG5vdCBwcm9wYWdhdGUgb3IgbW9kaWZ5IGEgY292ZXJlZCB3b3JrIGV4Y2VwdCBhcyBleHByZXNzbHkKcHJvdmlkZWQgdW5kZXIgdGhpcyBMaWNlbnNlLiAgQW55IGF0dGVtcHQgb3RoZXJ3aXNlIHRvIHByb3BhZ2F0ZSBvcgptb2RpZnkgaXQgaXMgdm9pZCwgYW5kIHdpbGwgYXV0b21hdGljYWxseSB0ZXJtaW5hdGUgeW91ciByaWdodHMgdW5kZXIKdGhpcyBMaWNlbnNlIChpbmNsdWRpbmcgYW55IHBhdGVudCBsaWNlbnNlcyBncmFudGVkIHVuZGVyIHRoZSB0aGlyZApwYXJhZ3JhcGggb2Ygc2VjdGlvbiAxMSkuCgogIEhvd2V2ZXIsIGlmIHlvdSBjZWFzZSBhbGwgdmlvbGF0aW9uIG9mIHRoaXMgTGljZW5zZSwgdGhlbiB5b3VyCmxpY2Vuc2UgZnJvbSBhIHBhcnRpY3VsYXIgY29weXJpZ2h0IGhvbGRlciBpcyByZWluc3RhdGVkIChhKQpwcm92aXNpb25hbGx5LCB1bmxlc3MgYW5kIHVudGlsIHRoZSBjb3B5cmlnaHQgaG9sZGVyIGV4cGxpY2l0bHkgYW5kCmZpbmFsbHkgdGVybWluYXRlcyB5b3VyIGxpY2Vuc2UsIGFuZCAoYikgcGVybWFuZW50bHksIGlmIHRoZSBjb3B5cmlnaHQKaG9sZGVyIGZhaWxzIHRvIG5vdGlmeSB5b3Ugb2YgdGhlIHZpb2xhdGlvbiBieSBzb21lIHJlYXNvbmFibGUgbWVhbnMKcHJpb3IgdG8gNjAgZGF5cyBhZnRlciB0aGUgY2Vzc2F0aW9uLgoKICBNb3Jlb3ZlciwgeW91ciBsaWNlbnNlIGZyb20gYSBwYXJ0aWN1bGFyIGNvcHlyaWdodCBob2xkZXIgaXMKcmVpbnN0YXRlZCBwZXJtYW5lbnRseSBpZiB0aGUgY29weXJpZ2h0IGhvbGRlciBub3RpZmllcyB5b3Ugb2YgdGhlCnZpb2xhdGlvbiBieSBzb21lIHJlYXNvbmFibGUgbWVhbnMsIHRoaXMgaXMgdGhlIGZpcnN0IHRpbWUgeW91IGhhdmUKcmVjZWl2ZWQgbm90aWNlIG9mIHZpb2xhdGlvbiBvZiB0aGlzIExpY2Vuc2UgKGZvciBhbnkgd29yaykgZnJvbSB0aGF0CmNvcHlyaWdodCBob2xkZXIsIGFuZCB5b3UgY3VyZSB0aGUgdmlvbGF0aW9uIHByaW9yIHRvIDMwIGRheXMgYWZ0ZXIKeW91ciByZWNlaXB0IG9mIHRoZSBub3RpY2UuCgogIFRlcm1pbmF0aW9uIG9mIHlvdXIgcmlnaHRzIHVuZGVyIHRoaXMgc2VjdGlvbiBkb2VzIG5vdCB0ZXJtaW5hdGUgdGhlCmxpY2Vuc2VzIG9mIHBhcnRpZXMgd2hvIGhhdmUgcmVjZWl2ZWQgY29waWVzIG9yIHJpZ2h0cyBmcm9tIHlvdSB1bmRlcgp0aGlzIExpY2Vuc2UuICBJZiB5b3VyIHJpZ2h0cyBoYXZlIGJlZW4gdGVybWluYXRlZCBhbmQgbm90IHBlcm1hbmVudGx5CnJlaW5zdGF0ZWQsIHlvdSBkbyBub3QgcXVhbGlmeSB0byByZWNlaXZlIG5ldyBsaWNlbnNlcyBmb3IgdGhlIHNhbWUKbWF0ZXJpYWwgdW5kZXIgc2VjdGlvbiAxMC4KCiAgOS4gQWNjZXB0YW5jZSBOb3QgUmVxdWlyZWQgZm9yIEhhdmluZyBDb3BpZXMuCgogIFlvdSBhcmUgbm90IHJlcXVpcmVkIHRvIGFjY2VwdCB0aGlzIExpY2Vuc2UgaW4gb3JkZXIgdG8gcmVjZWl2ZSBvcgpydW4gYSBjb3B5IG9mIHRoZSBQcm9ncmFtLiAgQW5jaWxsYXJ5IHByb3BhZ2F0aW9uIG9mIGEgY292ZXJlZCB3b3JrCm9jY3VycmluZyBzb2xlbHkgYXMgYSBjb25zZXF1ZW5jZSBvZiB1c2luZyBwZWVyLXRvLXBlZXIgdHJhbnNtaXNzaW9uCnRvIHJlY2VpdmUgYSBjb3B5IGxpa2V3aXNlIGRvZXMgbm90IHJlcXVpcmUgYWNjZXB0YW5jZS4gIEhvd2V2ZXIsCm5vdGhpbmcgb3RoZXIgdGhhbiB0aGlzIExpY2Vuc2UgZ3JhbnRzIHlvdSBwZXJtaXNzaW9uIHRvIHByb3BhZ2F0ZSBvcgptb2RpZnkgYW55IGNvdmVyZWQgd29yay4gIFRoZXNlIGFjdGlvbnMgaW5mcmluZ2UgY29weXJpZ2h0IGlmIHlvdSBkbwpub3QgYWNjZXB0IHRoaXMgTGljZW5zZS4gIFRoZXJlZm9yZSwgYnkgbW9kaWZ5aW5nIG9yIHByb3BhZ2F0aW5nIGEKY292ZXJlZCB3b3JrLCB5b3UgaW5kaWNhdGUgeW91ciBhY2NlcHRhbmNlIG9mIHRoaXMgTGljZW5zZSB0byBkbyBzby4KCiAgMTAuIEF1dG9tYXRpYyBMaWNlbnNpbmcgb2YgRG93bnN0cmVhbSBSZWNpcGllbnRzLgoKICBFYWNoIHRpbWUgeW91IGNvbnZleSBhIGNvdmVyZWQgd29yaywgdGhlIHJlY2lwaWVudCBhdXRvbWF0aWNhbGx5CnJlY2VpdmVzIGEgbGljZW5zZSBmcm9tIHRoZSBvcmlnaW5hbCBsaWNlbnNvcnMsIHRvIHJ1biwgbW9kaWZ5IGFuZApwcm9wYWdhdGUgdGhhdCB3b3JrLCBzdWJqZWN0IHRvIHRoaXMgTGljZW5zZS4gIFlvdSBhcmUgbm90IHJlc3BvbnNpYmxlCmZvciBlbmZvcmNpbmcgY29tcGxpYW5jZSBieSB0aGlyZCBwYXJ0aWVzIHdpdGggdGhpcyBMaWNlbnNlLgoKICBBbiAiZW50aXR5IHRyYW5zYWN0aW9uIiBpcyBhIHRyYW5zYWN0aW9uIHRyYW5zZmVycmluZyBjb250cm9sIG9mIGFuCm9yZ2FuaXphdGlvbiwgb3Igc3Vic3RhbnRpYWxseSBhbGwgYXNzZXRzIG9mIG9uZSwgb3Igc3ViZGl2aWRpbmcgYW4Kb3JnYW5pemF0aW9uLCBvciBtZXJnaW5nIG9yZ2FuaXphdGlvbnMuICBJZiBwcm9wYWdhdGlvbiBvZiBhIGNvdmVyZWQKd29yayByZXN1bHRzIGZyb20gYW4gZW50aXR5IHRyYW5zYWN0aW9uLCBlYWNoIHBhcnR5IHRvIHRoYXQKdHJhbnNhY3Rpb24gd2hvIHJlY2VpdmVzIGEgY29weSBvZiB0aGUgd29yayBhbHNvIHJlY2VpdmVzIHdoYXRldmVyCmxpY2Vuc2VzIHRvIHRoZSB3b3JrIHRoZSBwYXJ0eSdzIHByZWRlY2Vzc29yIGluIGludGVyZXN0IGhhZCBvciBjb3VsZApnaXZlIHVuZGVyIHRoZSBwcmV2aW91cyBwYXJhZ3JhcGgsIHBsdXMgYSByaWdodCB0byBwb3NzZXNzaW9uIG9mIHRoZQpDb3JyZXNwb25kaW5nIFNvdXJjZSBvZiB0aGUgd29yayBmcm9tIHRoZSBwcmVkZWNlc3NvciBpbiBpbnRlcmVzdCwgaWYKdGhlIHByZWRlY2Vzc29yIGhhcyBpdCBvciBjYW4gZ2V0IGl0IHdpdGggcmVhc29uYWJsZSBlZmZvcnRzLgoKICBZb3UgbWF5IG5vdCBpbXBvc2UgYW55IGZ1cnRoZXIgcmVzdHJpY3Rpb25zIG9uIHRoZSBleGVyY2lzZSBvZiB0aGUKcmlnaHRzIGdyYW50ZWQgb3IgYWZmaXJtZWQgdW5kZXIgdGhpcyBMaWNlbnNlLiAgRm9yIGV4YW1wbGUsIHlvdSBtYXkKbm90IGltcG9zZSBhIGxpY2Vuc2UgZmVlLCByb3lhbHR5LCBvciBvdGhlciBjaGFyZ2UgZm9yIGV4ZXJjaXNlIG9mCnJpZ2h0cyBncmFudGVkIHVuZGVyIHRoaXMgTGljZW5zZSwgYW5kIHlvdSBtYXkgbm90IGluaXRpYXRlIGxpdGlnYXRpb24KKGluY2x1ZGluZyBhIGNyb3NzLWNsYWltIG9yIGNvdW50ZXJjbGFpbSBpbiBhIGxhd3N1aXQpIGFsbGVnaW5nIHRoYXQKYW55IHBhdGVudCBjbGFpbSBpcyBpbmZyaW5nZWQgYnkgbWFraW5nLCB1c2luZywgc2VsbGluZywgb2ZmZXJpbmcgZm9yCnNhbGUsIG9yIGltcG9ydGluZyB0aGUgUHJvZ3JhbSBvciBhbnkgcG9ydGlvbiBvZiBpdC4KCiAgMTEuIFBhdGVudHMuCgogIEEgImNvbnRyaWJ1dG9yIiBpcyBhIGNvcHlyaWdodCBob2xkZXIgd2hvIGF1dGhvcml6ZXMgdXNlIHVuZGVyIHRoaXMKTGljZW5zZSBvZiB0aGUgUHJvZ3JhbSBvciBhIHdvcmsgb24gd2hpY2ggdGhlIFByb2dyYW0gaXMgYmFzZWQuICBUaGUKd29yayB0aHVzIGxpY2Vuc2VkIGlzIGNhbGxlZCB0aGUgY29udHJpYnV0b3IncyAiY29udHJpYnV0b3IgdmVyc2lvbiIuCgogIEEgY29udHJpYnV0b3IncyAiZXNzZW50aWFsIHBhdGVudCBjbGFpbXMiIGFyZSBhbGwgcGF0ZW50IGNsYWltcwpvd25lZCBvciBjb250cm9sbGVkIGJ5IHRoZSBjb250cmlidXRvciwgd2hldGhlciBhbHJlYWR5IGFjcXVpcmVkIG9yCmhlcmVhZnRlciBhY3F1aXJlZCwgdGhhdCB3b3VsZCBiZSBpbmZyaW5nZWQgYnkgc29tZSBtYW5uZXIsIHBlcm1pdHRlZApieSB0aGlzIExpY2Vuc2UsIG9mIG1ha2luZywgdXNpbmcsIG9yIHNlbGxpbmcgaXRzIGNvbnRyaWJ1dG9yIHZlcnNpb24sCmJ1dCBkbyBub3QgaW5jbHVkZSBjbGFpbXMgdGhhdCB3b3VsZCBiZSBpbmZyaW5nZWQgb25seSBhcyBhCmNvbnNlcXVlbmNlIG9mIGZ1cnRoZXIgbW9kaWZpY2F0aW9uIG9mIHRoZSBjb250cmlidXRvciB2ZXJzaW9uLiAgRm9yCnB1cnBvc2VzIG9mIHRoaXMgZGVmaW5pdGlvbiwgImNvbnRyb2wiIGluY2x1ZGVzIHRoZSByaWdodCB0byBncmFudApwYXRlbnQgc3VibGljZW5zZXMgaW4gYSBtYW5uZXIgY29uc2lzdGVudCB3aXRoIHRoZSByZXF1aXJlbWVudHMgb2YKdGhpcyBMaWNlbnNlLgoKICBFYWNoIGNvbnRyaWJ1dG9yIGdyYW50cyB5b3UgYSBub24tZXhjbHVzaXZlLCB3b3JsZHdpZGUsIHJveWFsdHktZnJlZQpwYXRlbnQgbGljZW5zZSB1bmRlciB0aGUgY29udHJpYnV0b3IncyBlc3NlbnRpYWwgcGF0ZW50IGNsYWltcywgdG8KbWFrZSwgdXNlLCBzZWxsLCBvZmZlciBmb3Igc2FsZSwgaW1wb3J0IGFuZCBvdGhlcndpc2UgcnVuLCBtb2RpZnkgYW5kCnByb3BhZ2F0ZSB0aGUgY29udGVudHMgb2YgaXRzIGNvbnRyaWJ1dG9yIHZlcnNpb24uCgogIEluIHRoZSBmb2xsb3dpbmcgdGhyZWUgcGFyYWdyYXBocywgYSAicGF0ZW50IGxpY2Vuc2UiIGlzIGFueSBleHByZXNzCmFncmVlbWVudCBvciBjb21taXRtZW50LCBob3dldmVyIGRlbm9taW5hdGVkLCBub3QgdG8gZW5mb3JjZSBhIHBhdGVudAooc3VjaCBhcyBhbiBleHByZXNzIHBlcm1pc3Npb24gdG8gcHJhY3RpY2UgYSBwYXRlbnQgb3IgY292ZW5hbnQgbm90IHRvCnN1ZSBmb3IgcGF0ZW50IGluZnJpbmdlbWVudCkuICBUbyAiZ3JhbnQiIHN1Y2ggYSBwYXRlbnQgbGljZW5zZSB0byBhCnBhcnR5IG1lYW5zIHRvIG1ha2Ugc3VjaCBhbiBhZ3JlZW1lbnQgb3IgY29tbWl0bWVudCBub3QgdG8gZW5mb3JjZSBhCnBhdGVudCBhZ2FpbnN0IHRoZSBwYXJ0eS4KCiAgSWYgeW91IGNvbnZleSBhIGNvdmVyZWQgd29yaywga25vd2luZ2x5IHJlbHlpbmcgb24gYSBwYXRlbnQgbGljZW5zZSwKYW5kIHRoZSBDb3JyZXNwb25kaW5nIFNvdXJjZSBvZiB0aGUgd29yayBpcyBub3QgYXZhaWxhYmxlIGZvciBhbnlvbmUKdG8gY29weSwgZnJlZSBvZiBjaGFyZ2UgYW5kIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGlzIExpY2Vuc2UsIHRocm91Z2ggYQpwdWJsaWNseSBhdmFpbGFibGUgbmV0d29yayBzZXJ2ZXIgb3Igb3RoZXIgcmVhZGlseSBhY2Nlc3NpYmxlIG1lYW5zLAp0aGVuIHlvdSBtdXN0IGVpdGhlciAoMSkgY2F1c2UgdGhlIENvcnJlc3BvbmRpbmcgU291cmNlIHRvIGJlIHNvCmF2YWlsYWJsZSwgb3IgKDIpIGFycmFuZ2UgdG8gZGVwcml2ZSB5b3Vyc2VsZiBvZiB0aGUgYmVuZWZpdCBvZiB0aGUKcGF0ZW50IGxpY2Vuc2UgZm9yIHRoaXMgcGFydGljdWxhciB3b3JrLCBvciAoMykgYXJyYW5nZSwgaW4gYSBtYW5uZXIKY29uc2lzdGVudCB3aXRoIHRoZSByZXF1aXJlbWVudHMgb2YgdGhpcyBMaWNlbnNlLCB0byBleHRlbmQgdGhlIHBhdGVudApsaWNlbnNlIHRvIGRvd25zdHJlYW0gcmVjaXBpZW50cy4gICJLbm93aW5nbHkgcmVseWluZyIgbWVhbnMgeW91IGhhdmUKYWN0dWFsIGtub3dsZWRnZSB0aGF0LCBidXQgZm9yIHRoZSBwYXRlbnQgbGljZW5zZSwgeW91ciBjb252ZXlpbmcgdGhlCmNvdmVyZWQgd29yayBpbiBhIGNvdW50cnksIG9yIHlvdXIgcmVjaXBpZW50J3MgdXNlIG9mIHRoZSBjb3ZlcmVkIHdvcmsKaW4gYSBjb3VudHJ5LCB3b3VsZCBpbmZyaW5nZSBvbmUgb3IgbW9yZSBpZGVudGlmaWFibGUgcGF0ZW50cyBpbiB0aGF0CmNvdW50cnkgdGhhdCB5b3UgaGF2ZSByZWFzb24gdG8gYmVsaWV2ZSBhcmUgdmFsaWQuCgogIElmLCBwdXJzdWFudCB0byBvciBpbiBjb25uZWN0aW9uIHdpdGggYSBzaW5nbGUgdHJhbnNhY3Rpb24gb3IKYXJyYW5nZW1lbnQsIHlvdSBjb252ZXksIG9yIHByb3BhZ2F0ZSBieSBwcm9jdXJpbmcgY29udmV5YW5jZSBvZiwgYQpjb3ZlcmVkIHdvcmssIGFuZCBncmFudCBhIHBhdGVudCBsaWNlbnNlIHRvIHNvbWUgb2YgdGhlIHBhcnRpZXMKcmVjZWl2aW5nIHRoZSBjb3ZlcmVkIHdvcmsgYXV0aG9yaXppbmcgdGhlbSB0byB1c2UsIHByb3BhZ2F0ZSwgbW9kaWZ5Cm9yIGNvbnZleSBhIHNwZWNpZmljIGNvcHkgb2YgdGhlIGNvdmVyZWQgd29yaywgdGhlbiB0aGUgcGF0ZW50IGxpY2Vuc2UKeW91IGdyYW50IGlzIGF1dG9tYXRpY2FsbHkgZXh0ZW5kZWQgdG8gYWxsIHJlY2lwaWVudHMgb2YgdGhlIGNvdmVyZWQKd29yayBhbmQgd29ya3MgYmFzZWQgb24gaXQuCgogIEEgcGF0ZW50IGxpY2Vuc2UgaXMgImRpc2NyaW1pbmF0b3J5IiBpZiBpdCBkb2VzIG5vdCBpbmNsdWRlIHdpdGhpbgp0aGUgc2NvcGUgb2YgaXRzIGNvdmVyYWdlLCBwcm9oaWJpdHMgdGhlIGV4ZXJjaXNlIG9mLCBvciBpcwpjb25kaXRpb25lZCBvbiB0aGUgbm9uLWV4ZXJjaXNlIG9mIG9uZSBvciBtb3JlIG9mIHRoZSByaWdodHMgdGhhdCBhcmUKc3BlY2lmaWNhbGx5IGdyYW50ZWQgdW5kZXIgdGhpcyBMaWNlbnNlLiAgWW91IG1heSBub3QgY29udmV5IGEgY292ZXJlZAp3b3JrIGlmIHlvdSBhcmUgYSBwYXJ0eSB0byBhbiBhcnJhbmdlbWVudCB3aXRoIGEgdGhpcmQgcGFydHkgdGhhdCBpcwppbiB0aGUgYnVzaW5lc3Mgb2YgZGlzdHJpYnV0aW5nIHNvZnR3YXJlLCB1bmRlciB3aGljaCB5b3UgbWFrZSBwYXltZW50CnRvIHRoZSB0aGlyZCBwYXJ0eSBiYXNlZCBvbiB0aGUgZXh0ZW50IG9mIHlvdXIgYWN0aXZpdHkgb2YgY29udmV5aW5nCnRoZSB3b3JrLCBhbmQgdW5kZXIgd2hpY2ggdGhlIHRoaXJkIHBhcnR5IGdyYW50cywgdG8gYW55IG9mIHRoZQpwYXJ0aWVzIHdobyB3b3VsZCByZWNlaXZlIHRoZSBjb3ZlcmVkIHdvcmsgZnJvbSB5b3UsIGEgZGlzY3JpbWluYXRvcnkKcGF0ZW50IGxpY2Vuc2UgKGEpIGluIGNvbm5lY3Rpb24gd2l0aCBjb3BpZXMgb2YgdGhlIGNvdmVyZWQgd29yawpjb252ZXllZCBieSB5b3UgKG9yIGNvcGllcyBtYWRlIGZyb20gdGhvc2UgY29waWVzKSwgb3IgKGIpIHByaW1hcmlseQpmb3IgYW5kIGluIGNvbm5lY3Rpb24gd2l0aCBzcGVjaWZpYyBwcm9kdWN0cyBvciBjb21waWxhdGlvbnMgdGhhdApjb250YWluIHRoZSBjb3ZlcmVkIHdvcmssIHVubGVzcyB5b3UgZW50ZXJlZCBpbnRvIHRoYXQgYXJyYW5nZW1lbnQsCm9yIHRoYXQgcGF0ZW50IGxpY2Vuc2Ugd2FzIGdyYW50ZWQsIHByaW9yIHRvIDI4IE1hcmNoIDIwMDcuCgogIE5vdGhpbmcgaW4gdGhpcyBMaWNlbnNlIHNoYWxsIGJlIGNvbnN0cnVlZCBhcyBleGNsdWRpbmcgb3IgbGltaXRpbmcKYW55IGltcGxpZWQgbGljZW5zZSBvciBvdGhlciBkZWZlbnNlcyB0byBpbmZyaW5nZW1lbnQgdGhhdCBtYXkKb3RoZXJ3aXNlIGJlIGF2YWlsYWJsZSB0byB5b3UgdW5kZXIgYXBwbGljYWJsZSBwYXRlbnQgbGF3LgoKICAxMi4gTm8gU3VycmVuZGVyIG9mIE90aGVycycgRnJlZWRvbS4KCiAgSWYgY29uZGl0aW9ucyBhcmUgaW1wb3NlZCBvbiB5b3UgKHdoZXRoZXIgYnkgY291cnQgb3JkZXIsIGFncmVlbWVudCBvcgpvdGhlcndpc2UpIHRoYXQgY29udHJhZGljdCB0aGUgY29uZGl0aW9ucyBvZiB0aGlzIExpY2Vuc2UsIHRoZXkgZG8gbm90CmV4Y3VzZSB5b3UgZnJvbSB0aGUgY29uZGl0aW9ucyBvZiB0aGlzIExpY2Vuc2UuICBJZiB5b3UgY2Fubm90IGNvbnZleSBhCmNvdmVyZWQgd29yayBzbyBhcyB0byBzYXRpc2Z5IHNpbXVsdGFuZW91c2x5IHlvdXIgb2JsaWdhdGlvbnMgdW5kZXIgdGhpcwpMaWNlbnNlIGFuZCBhbnkgb3RoZXIgcGVydGluZW50IG9ibGlnYXRpb25zLCB0aGVuIGFzIGEgY29uc2VxdWVuY2UgeW91IG1heQpub3QgY29udmV5IGl0IGF0IGFsbC4gIEZvciBleGFtcGxlLCBpZiB5b3UgYWdyZWUgdG8gdGVybXMgdGhhdCBvYmxpZ2F0ZSB5b3UKdG8gY29sbGVjdCBhIHJveWFsdHkgZm9yIGZ1cnRoZXIgY29udmV5aW5nIGZyb20gdGhvc2UgdG8gd2hvbSB5b3UgY29udmV5CnRoZSBQcm9ncmFtLCB0aGUgb25seSB3YXkgeW91IGNvdWxkIHNhdGlzZnkgYm90aCB0aG9zZSB0ZXJtcyBhbmQgdGhpcwpMaWNlbnNlIHdvdWxkIGJlIHRvIHJlZnJhaW4gZW50aXJlbHkgZnJvbSBjb252ZXlpbmcgdGhlIFByb2dyYW0uCgogIDEzLiBVc2Ugd2l0aCB0aGUgR05VIEFmZmVybyBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlLgoKICBOb3R3aXRoc3RhbmRpbmcgYW55IG90aGVyIHByb3Zpc2lvbiBvZiB0aGlzIExpY2Vuc2UsIHlvdSBoYXZlCnBlcm1pc3Npb24gdG8gbGluayBvciBjb21iaW5lIGFueSBjb3ZlcmVkIHdvcmsgd2l0aCBhIHdvcmsgbGljZW5zZWQKdW5kZXIgdmVyc2lvbiAzIG9mIHRoZSBHTlUgQWZmZXJvIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgaW50byBhIHNpbmdsZQpjb21iaW5lZCB3b3JrLCBhbmQgdG8gY29udmV5IHRoZSByZXN1bHRpbmcgd29yay4gIFRoZSB0ZXJtcyBvZiB0aGlzCkxpY2Vuc2Ugd2lsbCBjb250aW51ZSB0byBhcHBseSB0byB0aGUgcGFydCB3aGljaCBpcyB0aGUgY292ZXJlZCB3b3JrLApidXQgdGhlIHNwZWNpYWwgcmVxdWlyZW1lbnRzIG9mIHRoZSBHTlUgQWZmZXJvIEdlbmVyYWwgUHVibGljIExpY2Vuc2UsCnNlY3Rpb24gMTMsIGNvbmNlcm5pbmcgaW50ZXJhY3Rpb24gdGhyb3VnaCBhIG5ldHdvcmsgd2lsbCBhcHBseSB0byB0aGUKY29tYmluYXRpb24gYXMgc3VjaC4KCiAgMTQuIFJldmlzZWQgVmVyc2lvbnMgb2YgdGhpcyBMaWNlbnNlLgoKICBUaGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uIG1heSBwdWJsaXNoIHJldmlzZWQgYW5kL29yIG5ldyB2ZXJzaW9ucyBvZgp0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZnJvbSB0aW1lIHRvIHRpbWUuICBTdWNoIG5ldyB2ZXJzaW9ucyB3aWxsCmJlIHNpbWlsYXIgaW4gc3Bpcml0IHRvIHRoZSBwcmVzZW50IHZlcnNpb24sIGJ1dCBtYXkgZGlmZmVyIGluIGRldGFpbCB0bwphZGRyZXNzIG5ldyBwcm9ibGVtcyBvciBjb25jZXJucy4KCiAgRWFjaCB2ZXJzaW9uIGlzIGdpdmVuIGEgZGlzdGluZ3Vpc2hpbmcgdmVyc2lvbiBudW1iZXIuICBJZiB0aGUKUHJvZ3JhbSBzcGVjaWZpZXMgdGhhdCBhIGNlcnRhaW4gbnVtYmVyZWQgdmVyc2lvbiBvZiB0aGUgR05VIEdlbmVyYWwKUHVibGljIExpY2Vuc2UgIm9yIGFueSBsYXRlciB2ZXJzaW9uIiBhcHBsaWVzIHRvIGl0LCB5b3UgaGF2ZSB0aGUKb3B0aW9uIG9mIGZvbGxvd2luZyB0aGUgdGVybXMgYW5kIGNvbmRpdGlvbnMgZWl0aGVyIG9mIHRoYXQgbnVtYmVyZWQKdmVyc2lvbiBvciBvZiBhbnkgbGF0ZXIgdmVyc2lvbiBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUKRm91bmRhdGlvbi4gIElmIHRoZSBQcm9ncmFtIGRvZXMgbm90IHNwZWNpZnkgYSB2ZXJzaW9uIG51bWJlciBvZiB0aGUKR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UsIHlvdSBtYXkgY2hvb3NlIGFueSB2ZXJzaW9uIGV2ZXIgcHVibGlzaGVkCmJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24uCgogIElmIHRoZSBQcm9ncmFtIHNwZWNpZmllcyB0aGF0IGEgcHJveHkgY2FuIGRlY2lkZSB3aGljaCBmdXR1cmUKdmVyc2lvbnMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGNhbiBiZSB1c2VkLCB0aGF0IHByb3h5J3MKcHVibGljIHN0YXRlbWVudCBvZiBhY2NlcHRhbmNlIG9mIGEgdmVyc2lvbiBwZXJtYW5lbnRseSBhdXRob3JpemVzIHlvdQp0byBjaG9vc2UgdGhhdCB2ZXJzaW9uIGZvciB0aGUgUHJvZ3JhbS4KCiAgTGF0ZXIgbGljZW5zZSB2ZXJzaW9ucyBtYXkgZ2l2ZSB5b3UgYWRkaXRpb25hbCBvciBkaWZmZXJlbnQKcGVybWlzc2lvbnMuICBIb3dldmVyLCBubyBhZGRpdGlvbmFsIG9ibGlnYXRpb25zIGFyZSBpbXBvc2VkIG9uIGFueQphdXRob3Igb3IgY29weXJpZ2h0IGhvbGRlciBhcyBhIHJlc3VsdCBvZiB5b3VyIGNob29zaW5nIHRvIGZvbGxvdyBhCmxhdGVyIHZlcnNpb24uCgogIDE1LiBEaXNjbGFpbWVyIG9mIFdhcnJhbnR5LgoKICBUSEVSRSBJUyBOTyBXQVJSQU5UWSBGT1IgVEhFIFBST0dSQU0sIFRPIFRIRSBFWFRFTlQgUEVSTUlUVEVEIEJZCkFQUExJQ0FCTEUgTEFXLiAgRVhDRVBUIFdIRU4gT1RIRVJXSVNFIFNUQVRFRCBJTiBXUklUSU5HIFRIRSBDT1BZUklHSFQKSE9MREVSUyBBTkQvT1IgT1RIRVIgUEFSVElFUyBQUk9WSURFIFRIRSBQUk9HUkFNICJBUyBJUyIgV0lUSE9VVCBXQVJSQU5UWQpPRiBBTlkgS0lORCwgRUlUSEVSIEVYUFJFU1NFRCBPUiBJTVBMSUVELCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgpQVVJQT1NFLiAgVEhFIEVOVElSRSBSSVNLIEFTIFRPIFRIRSBRVUFMSVRZIEFORCBQRVJGT1JNQU5DRSBPRiBUSEUgUFJPR1JBTQpJUyBXSVRIIFlPVS4gIFNIT1VMRCBUSEUgUFJPR1JBTSBQUk9WRSBERUZFQ1RJVkUsIFlPVSBBU1NVTUUgVEhFIENPU1QgT0YKQUxMIE5FQ0VTU0FSWSBTRVJWSUNJTkcsIFJFUEFJUiBPUiBDT1JSRUNUSU9OLgoKICAxNi4gTGltaXRhdGlvbiBvZiBMaWFiaWxpdHkuCgogIElOIE5PIEVWRU5UIFVOTEVTUyBSRVFVSVJFRCBCWSBBUFBMSUNBQkxFIExBVyBPUiBBR1JFRUQgVE8gSU4gV1JJVElORwpXSUxMIEFOWSBDT1BZUklHSFQgSE9MREVSLCBPUiBBTlkgT1RIRVIgUEFSVFkgV0hPIE1PRElGSUVTIEFORC9PUiBDT05WRVlTClRIRSBQUk9HUkFNIEFTIFBFUk1JVFRFRCBBQk9WRSwgQkUgTElBQkxFIFRPIFlPVSBGT1IgREFNQUdFUywgSU5DTFVESU5HIEFOWQpHRU5FUkFMLCBTUEVDSUFMLCBJTkNJREVOVEFMIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyBBUklTSU5HIE9VVCBPRiBUSEUKVVNFIE9SIElOQUJJTElUWSBUTyBVU0UgVEhFIFBST0dSQU0gKElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gTE9TUyBPRgpEQVRBIE9SIERBVEEgQkVJTkcgUkVOREVSRUQgSU5BQ0NVUkFURSBPUiBMT1NTRVMgU1VTVEFJTkVEIEJZIFlPVSBPUiBUSElSRApQQVJUSUVTIE9SIEEgRkFJTFVSRSBPRiBUSEUgUFJPR1JBTSBUTyBPUEVSQVRFIFdJVEggQU5ZIE9USEVSIFBST0dSQU1TKSwKRVZFTiBJRiBTVUNIIEhPTERFUiBPUiBPVEhFUiBQQVJUWSBIQVMgQkVFTiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgpTVUNIIERBTUFHRVMuCgogIDE3LiBJbnRlcnByZXRhdGlvbiBvZiBTZWN0aW9ucyAxNSBhbmQgMTYuCgogIElmIHRoZSBkaXNjbGFpbWVyIG9mIHdhcnJhbnR5IGFuZCBsaW1pdGF0aW9uIG9mIGxpYWJpbGl0eSBwcm92aWRlZAphYm92ZSBjYW5ub3QgYmUgZ2l2ZW4gbG9jYWwgbGVnYWwgZWZmZWN0IGFjY29yZGluZyB0byB0aGVpciB0ZXJtcywKcmV2aWV3aW5nIGNvdXJ0cyBzaGFsbCBhcHBseSBsb2NhbCBsYXcgdGhhdCBtb3N0IGNsb3NlbHkgYXBwcm94aW1hdGVzCmFuIGFic29sdXRlIHdhaXZlciBvZiBhbGwgY2l2aWwgbGlhYmlsaXR5IGluIGNvbm5lY3Rpb24gd2l0aCB0aGUKUHJvZ3JhbSwgdW5sZXNzIGEgd2FycmFudHkgb3IgYXNzdW1wdGlvbiBvZiBsaWFiaWxpdHkgYWNjb21wYW5pZXMgYQpjb3B5IG9mIHRoZSBQcm9ncmFtIGluIHJldHVybiBmb3IgYSBmZWUuCgogICAgICAgICAgICAgICAgICAgICBFTkQgT0YgVEVSTVMgQU5EIENPTkRJVElPTlMKCiAgICAgICAgICAgIEhvdyB0byBBcHBseSBUaGVzZSBUZXJtcyB0byBZb3VyIE5ldyBQcm9ncmFtcwoKICBJZiB5b3UgZGV2ZWxvcCBhIG5ldyBwcm9ncmFtLCBhbmQgeW91IHdhbnQgaXQgdG8gYmUgb2YgdGhlIGdyZWF0ZXN0CnBvc3NpYmxlIHVzZSB0byB0aGUgcHVibGljLCB0aGUgYmVzdCB3YXkgdG8gYWNoaWV2ZSB0aGlzIGlzIHRvIG1ha2UgaXQKZnJlZSBzb2Z0d2FyZSB3aGljaCBldmVyeW9uZSBjYW4gcmVkaXN0cmlidXRlIGFuZCBjaGFuZ2UgdW5kZXIgdGhlc2UgdGVybXMuCgogIFRvIGRvIHNvLCBhdHRhY2ggdGhlIGZvbGxvd2luZyBub3RpY2VzIHRvIHRoZSBwcm9ncmFtLiAgSXQgaXMgc2FmZXN0CnRvIGF0dGFjaCB0aGVtIHRvIHRoZSBzdGFydCBvZiBlYWNoIHNvdXJjZSBmaWxlIHRvIG1vc3QgZWZmZWN0aXZlbHkKc3RhdGUgdGhlIGV4Y2x1c2lvbiBvZiB3YXJyYW50eTsgYW5kIGVhY2ggZmlsZSBzaG91bGQgaGF2ZSBhdCBsZWFzdAp0aGUgImNvcHlyaWdodCIgbGluZSBhbmQgYSBwb2ludGVyIHRvIHdoZXJlIHRoZSBmdWxsIG5vdGljZSBpcyBmb3VuZC4KCiAgICA8b25lIGxpbmUgdG8gZ2l2ZSB0aGUgcHJvZ3JhbSdzIG5hbWUgYW5kIGEgYnJpZWYgaWRlYSBvZiB3aGF0IGl0IGRvZXMuPgogICAgQ29weXJpZ2h0IChDKSA8eWVhcj4gIDxuYW1lIG9mIGF1dGhvcj4KCiAgICBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQogICAgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKICAgIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCiAgICAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgoKICAgIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAogICAgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKICAgIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCgogICAgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKICAgIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgoKQWxzbyBhZGQgaW5mb3JtYXRpb24gb24gaG93IHRvIGNvbnRhY3QgeW91IGJ5IGVsZWN0cm9uaWMgYW5kIHBhcGVyIG1haWwuCgogIElmIHRoZSBwcm9ncmFtIGRvZXMgdGVybWluYWwgaW50ZXJhY3Rpb24sIG1ha2UgaXQgb3V0cHV0IGEgc2hvcnQKbm90aWNlIGxpa2UgdGhpcyB3aGVuIGl0IHN0YXJ0cyBpbiBhbiBpbnRlcmFjdGl2ZSBtb2RlOgoKICAgIDxwcm9ncmFtPiAgQ29weXJpZ2h0IChDKSA8eWVhcj4gIDxuYW1lIG9mIGF1dGhvcj4KICAgIFRoaXMgcHJvZ3JhbSBjb21lcyB3aXRoIEFCU09MVVRFTFkgTk8gV0FSUkFOVFk7IGZvciBkZXRhaWxzIHR5cGUgYHNob3cgdycuCiAgICBUaGlzIGlzIGZyZWUgc29mdHdhcmUsIGFuZCB5b3UgYXJlIHdlbGNvbWUgdG8gcmVkaXN0cmlidXRlIGl0CiAgICB1bmRlciBjZXJ0YWluIGNvbmRpdGlvbnM7IHR5cGUgYHNob3cgYycgZm9yIGRldGFpbHMuCgpUaGUgaHlwb3RoZXRpY2FsIGNvbW1hbmRzIGBzaG93IHcnIGFuZCBgc2hvdyBjJyBzaG91bGQgc2hvdyB0aGUgYXBwcm9wcmlhdGUKcGFydHMgb2YgdGhlIEdlbmVyYWwgUHVibGljIExpY2Vuc2UuICBPZiBjb3Vyc2UsIHlvdXIgcHJvZ3JhbSdzIGNvbW1hbmRzCm1pZ2h0IGJlIGRpZmZlcmVudDsgZm9yIGEgR1VJIGludGVyZmFjZSwgeW91IHdvdWxkIHVzZSBhbiAiYWJvdXQgYm94Ii4KCiAgWW91IHNob3VsZCBhbHNvIGdldCB5b3VyIGVtcGxveWVyIChpZiB5b3Ugd29yayBhcyBhIHByb2dyYW1tZXIpIG9yIHNjaG9vbCwKaWYgYW55LCB0byBzaWduIGEgImNvcHlyaWdodCBkaXNjbGFpbWVyIiBmb3IgdGhlIHByb2dyYW0sIGlmIG5lY2Vzc2FyeS4KRm9yIG1vcmUgaW5mb3JtYXRpb24gb24gdGhpcywgYW5kIGhvdyB0byBhcHBseSBhbmQgZm9sbG93IHRoZSBHTlUgR1BMLCBzZWUKPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgoKICBUaGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZG9lcyBub3QgcGVybWl0IGluY29ycG9yYXRpbmcgeW91ciBwcm9ncmFtCmludG8gcHJvcHJpZXRhcnkgcHJvZ3JhbXMuICBJZiB5b3VyIHByb2dyYW0gaXMgYSBzdWJyb3V0aW5lIGxpYnJhcnksIHlvdQptYXkgY29uc2lkZXIgaXQgbW9yZSB1c2VmdWwgdG8gcGVybWl0IGxpbmtpbmcgcHJvcHJpZXRhcnkgYXBwbGljYXRpb25zIHdpdGgKdGhlIGxpYnJhcnkuICBJZiB0aGlzIGlzIHdoYXQgeW91IHdhbnQgdG8gZG8sIHVzZSB0aGUgR05VIExlc3NlciBHZW5lcmFsClB1YmxpYyBMaWNlbnNlIGluc3RlYWQgb2YgdGhpcyBMaWNlbnNlLiAgQnV0IGZpcnN0LCBwbGVhc2UgcmVhZAo8aHR0cDovL3d3dy5nbnUub3JnL3BoaWxvc29waHkvd2h5LW5vdC1sZ3BsLmh0bWw+Lgo=]]></data>
	</file>
	<file>
	  <filename>/function.admin_companiestab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKCiR1aWQgPSBnZXRfdXNlcmlkKCk7CiRmaWx0ZXIgPSBhcnJheSgpOwokZmlsdGVyWyduYW1lJ10gPSAnJzsKJGZpbHRlclsnYWRkcmVzcyddID0gJyc7CiRmaWx0ZXJbJ3BhZ2VsaW1pdCddID0gNTA7CiRmaWx0ZXJbJ3BhZ2UnXSA9IDE7CiRmaWx0ZXJbJ3NvcnRieSddID0gJ2NvbXBhbnlfbmFtZSc7CiRmaWx0ZXJbJ3N0YXR1cyddID0gLTE7CiRmaWx0ZXJbJ2hpZXInXSA9ICcnOwoKaWYoIGlzc2V0KCRwYXJhbXNbJ2ZpbHRlcl9zdWJtaXQnXSkgKQogIHsKCSRmaWx0ZXJbJ25hbWUnXSA9IHRyaW0oJHBhcmFtc1snZmlsdGVyX25hbWUnXSk7CgkkZmlsdGVyWydhZGRyZXNzJ10gPSB0cmltKCRwYXJhbXNbJ2ZpbHRlcl9hZGRyZXNzJ10pOwoJJGZpbHRlclsncGFnZWxpbWl0J10gPSAoaW50KSRwYXJhbXNbJ2ZpbHRlcl9wYWdlbGltaXQnXTsKCSRmaWx0ZXJbJ3NvcnRieSddID0gdHJpbSgkcGFyYW1zWydmaWx0ZXJfc29ydGJ5J10pOwoJJGZpbHRlclsnY2F0ZWdvcnlpZCddID0gKGludCkkcGFyYW1zWydmaWx0ZXJfY2F0ZWdvcnlpZCddOwoJJGZpbHRlclsnc3RhdHVzJ10gPSB0cmltKCRwYXJhbXNbJ2ZpbHRlcl9zdGF0dXMnXSk7CgkkZmlsdGVyWydoaWVyJ10gPSB0cmltKCRwYXJhbXNbJ2ZpbHRlcl9oaWVyYXJjaHknXSk7CgkkcGFnZSA9ICRmaWx0ZXJbJ3BhZ2UnXTsKCXVuc2V0KCRmaWx0ZXJbJ3BhZ2UnXSk7CglpZiggJGZpbHRlclsnbmFtZSddICE9ICcnIHx8ICRmaWx0ZXJbJ2FkZHJlc3MnXSAhPSAnJyB8fCAkZmlsdGVyWydjYXRlZ29yeWlkJ10gPiAwIHx8ICRmaWx0ZXJbJ2hpZXInXSA+IDAgKQoJICB7CgkJJGZpbHRlclsnYXBwbGllZCddID0gMTsKCSAgfQoJZWxzZQoJICB7CgkJdW5zZXQoJGZpbHRlclsnYXBwbGllZCddKTsKCSAgfQoJc2V0X3ByZWZlcmVuY2UoJHVpZCwnY29tcGFueWRfZmlsdGVyJyxzZXJpYWxpemUoJGZpbHRlcikpOwoJJGZpbHRlclsncGFnZSddID0gJHBhZ2U7CiAgfQplbHNlaWYoIGlzc2V0KCRwYXJhbXNbJ2ZpbHRlcl9yZXNldCddKSApCiAgewoJdW5zZXQoJGZpbHRlclsnYXBwbGllZCddKTsKCXNldF9wcmVmZXJlbmNlKCR1aWQsJ2NvbXBhbnlkX2ZpbHRlcicsc2VyaWFsaXplKCRmaWx0ZXIpKTsKICB9CmVsc2UKICB7CgkvLyBnZXQgaXQgZnJvbSB0aGUgcHJlZmVyZW5jZS4KCSR0bXAgPSBnZXRfcHJlZmVyZW5jZSgkdWlkLCdjb21wYW55ZF9maWx0ZXInKTsKCWlmKCAkdG1wICkKCSAgewoJCSRmaWx0ZXIgPSB1bnNlcmlhbGl6ZSgkdG1wKTsKCSAgfQoJaWYoIGlzc2V0KCRwYXJhbXNbJ3BhZ2UnXSkgKQoJICB7CgkJJGZpbHRlclsncGFnZSddID0gKGludCkkcGFyYW1zWydwYWdlJ107CgkgIH0KICB9CgkKJGZpbHRlcl9vYiA9IG5ldyBjZF9jb21wYW55X2ZpbHRlcigkZmlsdGVyKTsKJGZpbHRlcl9vYlsnZGVlcCddID0gMDsKJGZpbHRlcl9vYlsnc2hvd2FsbCddID0gMTsKJGZpbHRlcl9vYlsnZXhwaXJlZG93bmVycyddID0gMTsKJHF1ZXJ5ID0gbmV3IGNkX2NvbXBhbnlfcXVlcnkoJGZpbHRlcl9vYik7CiRwYWdpbmF0aW9uID0gJHF1ZXJ5LT5nZXRfcGFnaW5hdGlvbigpOwokcGFnaW5hdGlvbi0+c2V0X2FjdGlvbignZGVmYXVsdGFkbWluJyk7CgokZmV1ID0gJHRoaXMtPkdldE1vZHVsZUluc3RhbmNlKCdGcm9udEVuZFVzZXJzJyk7CiRlbnRyeWFycmF5ID0gJHF1ZXJ5LT5nZXRfcmVzdWx0cygkaWQsJHJldHVybmlkKTsKaWYoIGlzX2FycmF5KCRlbnRyeWFycmF5KSAmJiBjb3VudCgkZW50cnlhcnJheSkgKQogIHsKCSRrZXlzID0gYXJyYXlfa2V5cygkZW50cnlhcnJheSk7Cglmb3IoICRpID0gMDsgJGkgPCBjb3VudCgka2V5cyk7ICRpKysgKQoJICB7CgkJJHJvdyA9JiAkZW50cnlhcnJheVska2V5c1skaV1dOwoJCSRyb3ctPnBsYWluX2NvbXBhbnlfbmFtZSA9ICRyb3ctPmNvbXBhbnlfbmFtZTsKCQkkcm93LT5jb21wYW55X25hbWUgPSAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdlZGl0Y29tcGFueScsICRyZXR1cm5pZCwgJHJvdy0+cGxhaW5fY29tcGFueV9uYW1lLCBhcnJheSgnY29tcGlkJz0+JHJvdy0+aWQpKTsKCQlpZiggaXNfb2JqZWN0KCRmZXUpICYmICRyb3ctPm93bmVyX2lkID4gMCApCgkJICB7CgkJCSRyb3ctPm93bmVyID0gJGZldS0+R2V0VXNlck5hbWUoJHJvdy0+b3duZXJfaWQpOwoJCSAgfQoJCSRyb3ctPmNvcHlsaW5rID0gJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCdjb3B5Y29tcGFueScsJHJldHVybmlkLCRnQ21zLT52YXJpYWJsZXNbJ2FkbWludGhlbWUnXS0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vY29weS5naWYnLCR0aGlzLT5MYW5nKCdjb3B5JyksJycsJycsJ3N5c3RlbWljb24nKSxhcnJheSgnY29tcGlkJz0+JHJvdy0+aWQpKTsKCQkkcm93LT5lZGl0bGluayA9ICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwgJ2VkaXRjb21wYW55JywgJHJldHVybmlkLCAkZ0Ntcy0+dmFyaWFibGVzWydhZG1pbnRoZW1lJ10tPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL2VkaXQuZ2lmJywgJHRoaXMtPkxhbmcoJ2VkaXQnKSwnJywnJywnc3lzdGVtaWNvbicpLCBhcnJheSgnY29tcGlkJz0+JHJvdy0+aWQpKTsKCQkKCQkkcm93LT5kZWxldGVsaW5rID0gJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCAnZGVsZXRlY29tcGFueScsICRyZXR1cm5pZCwgCgkJCQkJCQkJCQkJICRnQ21zLT52YXJpYWJsZXNbJ2FkbWludGhlbWUnXS0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vZGVsZXRlLmdpZicsICR0aGlzLT5MYW5nKCdkZWxldGUnKSwnJywnJywnc3lzdGVtaWNvbicpLCAKCQkJCQkJCQkJCQkgYXJyYXkoJ2NvbXBpZCc9PiRyb3ctPmlkKSwgJHRoaXMtPkxhbmcoJ2FyZXlvdXN1cmUnKSk7CgkJCgkgIH0KICB9CgoKJHNtYXJ0eS0+YXNzaWduX2J5X3JlZignaXRlbXMnLCAkZW50cnlhcnJheSk7CiRzbWFydHktPmFzc2lnbignaXRlbWNvdW50JywgY291bnQoJGVudHJ5YXJyYXkpKTsKJHNtYXJ0eS0+YXNzaWduKCdhZGRsaW5rJywgJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCAnYWRkY29tcGFueScsICRyZXR1cm5pZCwgJGdDbXMtPnZhcmlhYmxlc1snYWRtaW50aGVtZSddLT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9uZXdvYmplY3QuZ2lmJywgJHRoaXMtPkxhbmcoJ2FkZGNvbXBhbnknKSwnJywnJywnc3lzdGVtaWNvbicpLCBhcnJheSgpLCAnJywgZmFsc2UsIGZhbHNlLCAnJykgLicgJy4gJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCAnYWRkY29tcGFueScsICRyZXR1cm5pZCwgJHRoaXMtPkxhbmcoJ2FkZGNvbXBhbnknKSwgYXJyYXkoKSwgJycsIGZhbHNlLCBmYWxzZSwgJ2NsYXNzPSJwYWdlb3B0aW9ucyInKSk7CmlmKCBjb3VudCgkZW50cnlhcnJheSkgKQogIHsKICAgICRzbWFydHktPmFzc2lnbignZXhwb3J0Y3N2JywgJHRoaXMtPkNyZWF0ZUltYWdlTGluaygkaWQsJ2V4cG9ydGNzdicsJHJldHVybmlkLCR0aGlzLT5MYW5nKCdleHBvcnRjc3YnKSwnaWNvbnMvc3lzdGVtL2V4cG9ydC5naWYnLGFycmF5KCksJycsJycsZmFsc2UpKTsKICB9CiRzbWFydHktPmFzc2lnbignaW1wb3J0Y3N2JywgJHRoaXMtPkNyZWF0ZUltYWdlTGluaygkaWQsJ2ltcG9ydGNzdicsJHJldHVybmlkLCR0aGlzLT5MYW5nKCdpbXBvcnRjc3YnKSwnaWNvbnMvc3lzdGVtL2ltcG9ydC5naWYnLGFycmF5KCksJycsJycsZmFsc2UpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbXBvcnRrbWwnLCAkdGhpcy0+Q3JlYXRlSW1hZ2VMaW5rKCRpZCwnaW1wb3J0a21sJywkcmV0dXJuaWQsJHRoaXMtPkxhbmcoJ2ltcG9ydGttbCcpLCdpY29ucy9zeXN0ZW0vaW1wb3J0LmdpZicsYXJyYXkoKSwnJywnJyxmYWxzZSkpOwokc21hcnR5LT5hc3NpZ24oJ2lkdGV4dCcsJHRoaXMtPkxhbmcoJ2lkJykpOwokc21hcnR5LT5hc3NpZ24oJ2NvbXBhbnl0ZXh0JywgJHRoaXMtPkxhbmcoJ2NvbXBhbnknKSk7CiRzbWFydHktPmFzc2lnbignd2Vic2l0ZXRleHQnLCAkdGhpcy0+TGFuZygnd2Vic2l0ZScpKTsKJHNtYXJ0eS0+YXNzaWduKCdmaWx0ZXJfZm9ybXN0YXJ0JywkdGhpcy0+Q0dDcmVhdGVGb3JtU3RhcnQoJGlkLCdkZWZhdWx0YWRtaW4nKSk7CiRzbWFydHktPmFzc2lnbignZmlsdGVyX2Zvcm1lbmQnLCR0aGlzLT5DcmVhdGVGb3JtRW5kKCkpOwokc21hcnR5LT5hc3NpZ24oJ2ZpbHRlcicsJGZpbHRlcik7Cgokc29ydGJ5ID0gYXJyYXkoKTsKJHNvcnRieVsnaWQnXSA9ICR0aGlzLT5MYW5nKCdpZCcpOwokc29ydGJ5Wydjb21wYW55X25hbWUnXSA9ICR0aGlzLT5MYW5nKCdjb21wYW55bmFtZScpOwokc29ydGJ5WydwaG9uZSddID0gJHRoaXMtPkxhbmcoJ3RlbGVwaG9uZScpOwokc29ydGJ5WydmYXgnXSA9ICR0aGlzLT5MYW5nKCdmYXgnKTsKJHNvcnRieVsnZW1haWwnXSA9ICR0aGlzLT5MYW5nKCdjb250YWN0ZW1haWwnKTsKJHNvcnRieVsnd2Vic2l0ZSddID0gJHRoaXMtPkxhbmcoJ3dlYnNpdGUnKTsKJHNvcnRieVsnYWRkcmVzcyddID0gJHRoaXMtPkxhbmcoJ2FkZHJlc3MnKTsKJHNvcnRieVsnY3JlYXRlZCddID0gJHRoaXMtPkxhbmcoJ2NyZWF0ZWRkYXRlJyk7CiRzb3J0YnlbJ21vZGlmaWVkJ10gPSAkdGhpcy0+TGFuZygnbW9kaWZpZWRkYXRlJyk7CiRzbWFydHktPmFzc2lnbignc29ydGluZ3MnLCRzb3J0YnkpOwokc21hcnR5LT5hc3NpZ24oJ3BhZ2VsaW1pdHMnLGFycmF5KDU9PjUsMjU9PjI1LDUwPT41MCwxMDA9PjEwMCwyNTA9PjI1MCwxMDAwPT4xMDAwKSk7CiRzdGF0dXNlcyA9IGFycmF5KCk7CiRzdGF0dXNlc1snLTEnXSA9ICR0aGlzLT5MYW5nKCdhbnknKTsKJHN0YXR1c2VzWydkcmFmdCddID0gJHRoaXMtPkxhbmcoJ2RyYWZ0Jyk7CiRzdGF0dXNlc1sncHVibGlzaGVkJ10gPSAkdGhpcy0+TGFuZygncHVibGlzaGVkJyk7CiRzdGF0dXNlc1snZGlzYWJsZWQnXSA9ICR0aGlzLT5MYW5nKCdkaXNhYmxlZCcpOwokc21hcnR5LT5hc3NpZ24oJ3N0YXR1c2VzJywkc3RhdHVzZXMpOwp7CiAgJHRtcCA9ICR0aGlzLT5HZXRDYXRlZ29yaWVzKCk7CiAgaWYoIGlzX2FycmF5KCR0bXApICYmIGNvdW50KCR0bXApICkKCXsKCSAgJGNhdHMgPSBhcnJheSgpOwoJICAkY2F0c1stMV0gPSAkdGhpcy0+TGFuZygnYW55Jyk7CgkgIGZvciggJGkgPSAwOyAkaSA8IGNvdW50KCR0bXApOyAkaSsrICkKCQl7CgkJICAkcm93ID0mICR0bXBbJGldOwoJCSAgJGNhdHNbJHJvdy0+aWRdID0gJHJvdy0+bmFtZTsKCQl9CgkgICRzbWFydHktPmFzc2lnbignY2F0ZWdvcmllcycsJGNhdHMpOwoJfQp9CgppZiggJHBhZ2luYXRpb24tPmdldF9wYWdlX2NvdW50KCkgPiAxICkKewogICRzbWFydHktPmFzc2lnbignbmF2JywkcGFnaW5hdGlvbik7Cn0KCgojRGlzcGxheSB0ZW1wbGF0ZQplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ2NvbXBhbnlsaXN0LnRwbCcpOwoKIwojIEVPRgojCj8+]]></data>
	</file>
	<file>
	  <filename>/function.admin_email_template_tab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKaWYoICEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdNb2RpZnkgU2l0ZSBQcmVmZXJlbmNlcycpICkgZXhpdDsKCiRzbWFydHktPmFzc2lnbignZm9ybXN0YXJ0JywkdGhpcy0+Q0dDcmVhdGVGb3JtU3RhcnQoJGlkLCdhZG1pbl9zYXZlX2VtYWlsX3RlbXBsYXRlJykpOwokc21hcnR5LT5hc3NpZ24oJ2Zvcm1lbmQnLCR0aGlzLT5DcmVhdGVGb3JtRW5kKCkpOwokc21hcnR5LT5hc3NpZ24oJ2VtYWlsX3N1YmplY3QnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdhZG1pbl9mZWVkaXRfZW1haWxfc3ViamVjdCcpKTsKJHNtYXJ0eS0+YXNzaWduKCdlbWFpbF90ZW1wbGF0ZScsJHRoaXMtPkdldFRlbXBsYXRlKCdhZG1pbl9mZWVkaXRfZW1haWxfdGVtcGxhdGUnKSk7CiRzbWFydHktPmFzc2lnbignZW1haWxfaXNodG1sJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgnYWRtaW5fZmVlZGl0X2VtYWlsX2lzaHRtbCcpKTsKCmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSgnYWRtaW5fZW1haWxfdGVtcGxhdGVfdGFiLnRwbCcpOwojCiMgRU9GCiMKPz4=]]></data>
	</file>
	<file>
	  <filename>/function.admin_fielddefstab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKCiRlbnRyeWFycmF5ID0gYXJyYXkoKTsKCQokbWF4ID0gJGRiLT5HZXRPbmUoIlNFTEVDVCBtYXgoaXRlbV9vcmRlcikgYXMgbWF4X2l0ZW1fb3JkZXIgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2NvbXBkaXJfZmllbGRkZWZzIik7CgkKJHF1ZXJ5ID0gIlNFTEVDVCAqIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9jb21wZGlyX2ZpZWxkZGVmcyBPUkRFUiBCWSBpdGVtX29yZGVyIjsKJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSk7CgkKJHJvd2NsYXNzID0gJ3JvdzEnOwoJCndoaWxlICgkZGJyZXN1bHQgJiYgJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKSkKICB7CiAgICAkb25lcm93ID0gbmV3IHN0ZENsYXNzKCk7CgkJCiAgICAkb25lcm93LT5pZCA9ICRyb3dbJ2lkJ107CiAgICAkb25lcm93LT5uYW1lID0gJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCAnZWRpdGZpZWxkZGVmJywgJHJldHVybmlkLCAkcm93WyduYW1lJ10sIGFycmF5KCdmZGlkJz0+JHJvd1snaWQnXSkpOwogICAgJG9uZXJvdy0+dHlwZSA9ICRyb3dbJ3R5cGUnXTsKICAgICRvbmVyb3ctPm1heF9sZW5ndGggPSAkcm93WydtYXhfbGVuZ3RoJ107CiAgICAkb25lcm93LT5pdGVtX29yZGVyID0gJHJvd1snaXRlbV9vcmRlciddOwoJCQogICAgaWYgKCRvbmVyb3ctPml0ZW1fb3JkZXIgPiAwKQogICAgICB7Cgkkb25lcm93LT51cGxpbmsgPSAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdtb3ZlZmllbGRkZWYnLCAkcmV0dXJuaWQsICRnQ21zLT52YXJpYWJsZXNbJ2FkbWludGhlbWUnXS0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vYXJyb3ctdS5naWYnLCAkdGhpcy0+TGFuZygndXAnKSwnJywnJywnc3lzdGVtaWNvbicpLCBhcnJheSgnZmRpZCc9PiRyb3dbJ2lkJ10sICdkaXInPT4ndXAnKSk7CiAgICAgIH0KICAgIGVsc2UKICAgICAgewoJJG9uZXJvdy0+dXBsaW5rID0gJyc7CiAgICAgIH0KICAgIGlmICgkbWF4ID4gJG9uZXJvdy0+aXRlbV9vcmRlcikKICAgICAgewoJJG9uZXJvdy0+ZG93bmxpbmsgPSAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdtb3ZlZmllbGRkZWYnLCAkcmV0dXJuaWQsICRnQ21zLT52YXJpYWJsZXNbJ2FkbWludGhlbWUnXS0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vYXJyb3ctZC5naWYnLCAkdGhpcy0+TGFuZygnZG93bicpLCcnLCcnLCdzeXN0ZW1pY29uJyksIGFycmF5KCdmZGlkJz0+JHJvd1snaWQnXSwgJ2Rpcic9Pidkb3duJykpOwogICAgICB9CiAgICBlbHNlCiAgICAgIHsKCSRvbmVyb3ctPmRvd25saW5rID0gJyc7CiAgICAgIH0KCQogICAgJG9uZXJvdy0+ZWRpdGxpbmsgPSAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdlZGl0ZmllbGRkZWYnLCAkcmV0dXJuaWQsICRnQ21zLT52YXJpYWJsZXNbJ2FkbWludGhlbWUnXS0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vZWRpdC5naWYnLCAkdGhpcy0+TGFuZygnZWRpdCcpLCcnLCcnLCdzeXN0ZW1pY29uJyksIGFycmF5KCdmZGlkJz0+JHJvd1snaWQnXSkpOwoKICAgICRvbmVyb3ctPmRlbGV0ZWxpbmsgPSAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdkZWxldGVmaWVsZGRlZicsICRyZXR1cm5pZCwgJGdDbXMtPnZhcmlhYmxlc1snYWRtaW50aGVtZSddLT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9kZWxldGUuZ2lmJywgJHRoaXMtPkxhbmcoJ2RlbGV0ZScpLCcnLCcnLCdzeXN0ZW1pY29uJyksIGFycmF5KCdmZGlkJz0+JHJvd1snaWQnXSksICR0aGlzLT5MYW5nKCdhcmV5b3VzdXJlJykpOwoJCQogICAgJGVudHJ5YXJyYXlbXSA9ICRvbmVyb3c7CgogICAgKCRyb3djbGFzcz09InJvdzEiPyRyb3djbGFzcz0icm93MiI6JHJvd2NsYXNzPSJyb3cxIik7CiAgfQoKJHNtYXJ0eS0+YXNzaWduX2J5X3JlZignaXRlbXMnLCAkZW50cnlhcnJheSk7CiRzbWFydHktPmFzc2lnbignaXRlbWNvdW50JywgY291bnQoJGVudHJ5YXJyYXkpKTsKCQokc21hcnR5LT5hc3NpZ24oJ2FkZGxpbmsnLCAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdhZGRmaWVsZGRlZicsICRyZXR1cm5pZCwgJGdDbXMtPnZhcmlhYmxlc1snYWRtaW50aGVtZSddLT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9uZXdmb2xkZXIuZ2lmJywgJHRoaXMtPkxhbmcoJ2FkZGZpZWxkZGVmJyksJycsJycsJ3N5c3RlbWljb24nKSwgYXJyYXkoKSwgJycsIGZhbHNlLCBmYWxzZSwgJycpIC4nICcuICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwgJ2FkZGZpZWxkZGVmJywgJHJldHVybmlkLCAkdGhpcy0+TGFuZygnYWRkZmllbGRkZWYnKSwgYXJyYXkoKSwgJycsIGZhbHNlLCBmYWxzZSwgJ2NsYXNzPSJwYWdlb3B0aW9ucyInKSk7CgkKJHNtYXJ0eS0+YXNzaWduKCdmaWVsZGRlZnRleHQnLCAkdGhpcy0+TGFuZygnZmllbGRkZWYnKSk7CiRzbWFydHktPmFzc2lnbigndHlwZXRleHQnLCAkdGhpcy0+TGFuZygndHlwZScpKTsKCQojRGlzcGxheSB0ZW1wbGF0ZQplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ2ZpZWxkZGVmbGlzdC50cGwnKTsKCQoKIwojIEVPRgojCj8+]]></data>
	</file>
	<file>
	  <filename>/function.admin_hiertab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgoJCiNQdXQgdG9nZXRoZXIgYSBsaXN0IG9mIGN1cnJlbnQgY2F0ZWdvcmllcy4uLgokZW50cnlhcnJheSA9IGFycmF5KCk7CgkKJHF1ZXJ5ID0gIlNFTEVDVCAqIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9jb21wZGlyX2hpZXIgT1JERVIgQlkgaGllcmFyY2h5IjsKJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSk7CgkKd2hpbGUgKCRkYnJlc3VsdCAmJiAkcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdygpKQogIHsKICAgICRvbmVyb3cgPSBuZXcgc3RkQ2xhc3MoKTsKCQogICAgJGRlcHRoID0gY291bnQoZXhwbG9kZSgnXC4nLCAkcm93WydoaWVyYXJjaHknXSkpOwogICAgJG9uZXJvdy0+aWQgPSAkcm93WydpZCddOwogICAgJG9uZXJvdy0+bmFtZSA9IHN0cl9yZXBlYXQoJyZuYnNwOyZndDsmbmJzcDsnLCAkZGVwdGgtMSkuJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCAnYWRtaW5fZWRpdGhpZXInLCAkcmV0dXJuaWQsICRyb3dbJ25hbWUnXSwgYXJyYXkoJ2NhdGlkJz0+JHJvd1snaWQnXSkpOwoJCiAgICAkb25lcm93LT5lZGl0bGluayA9ICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwgJ2FkbWluX2VkaXRoaWVyJywgJHJldHVybmlkLCAkZ0Ntcy0+dmFyaWFibGVzWydhZG1pbnRoZW1lJ10tPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL2VkaXQuZ2lmJywgJHRoaXMtPkxhbmcoJ2VkaXQnKSwnJywnJywnc3lzdGVtaWNvbicpLCBhcnJheSgnY2F0aWQnPT4kcm93WydpZCddKSk7CiAgICAkb25lcm93LT5kZWxldGVsaW5rID0gJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCAnYWRtaW5fZGVsaGllcicsICRyZXR1cm5pZCwgJGdDbXMtPnZhcmlhYmxlc1snYWRtaW50aGVtZSddLT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9kZWxldGUuZ2lmJywgJHRoaXMtPkxhbmcoJ2RlbGV0ZScpLCcnLCcnLCdzeXN0ZW1pY29uJyksIGFycmF5KCdjYXRpZCc9PiRyb3dbJ2lkJ10pLCAkdGhpcy0+TGFuZygnYXJleW91c3VyZScpKTsKCQogICAgJGVudHJ5YXJyYXlbXSA9ICRvbmVyb3c7CiAgfQoJCiR0aGlzLT5zbWFydHktPmFzc2lnbignaXRlbXMnLCAkZW50cnlhcnJheSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignaXRlbWNvdW50JywgY291bnQoJGVudHJ5YXJyYXkpKTsKCQojU2V0dXAgbGlua3MKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdhZGRsaW5rJywgJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCAnYWRtaW5fYWRkaGllcicsICRyZXR1cm5pZCwgJHRoaXMtPkxhbmcoJ2FkZGhpZXInKSwgYXJyYXkoKSwgJycsIGZhbHNlLCBmYWxzZSwgJ2NsYXNzPSJwYWdlb3B0aW9ucyInKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignYWRkbGluaycsICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwgJ2FkbWluX2FkZGhpZXInLCAkcmV0dXJuaWQsICRnQ21zLT52YXJpYWJsZXNbJ2FkbWludGhlbWUnXS0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vbmV3Zm9sZGVyLmdpZicsICR0aGlzLT5MYW5nKCdhZGRoaWVyJyksJycsJycsJ3N5c3RlbWljb24nKSwgYXJyYXkoKSwgJycsIGZhbHNlLCBmYWxzZSwgJycpIC4nICcuICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwgJ2FkbWluX2FkZGhpZXInLCAkcmV0dXJuaWQsICR0aGlzLT5MYW5nKCdhZGRoaWVyJyksIGFycmF5KCksICcnLCBmYWxzZSwgZmFsc2UsICdjbGFzcz0icGFnZW9wdGlvbnMiJykpOwoJCiNEaXNwbGF5IHRlbXBsYXRlCmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSgnaGllcmxpc3QudHBsJyk7CgojCiMgRU9GCiMKPz4=]]></data>
	</file>
	<file>
	  <filename>/function.admin_prefstab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgcmV0dXJuOwoKZ2xvYmFsICRnQ21zOwokY29udGVudG9wcyA9JiAkZ0Ntcy0+R2V0Q29udGVudE9wZXJhdGlvbnMoKTsKJHNvcnRvcmRlciA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdzb3J0b3JkZXInLCdhc2MnKTsKJHNvcnRieSA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdzb3J0YnknLCdjb21wYW55X25hbWUnKTsKCiRzbWFydHktPmFzc2lnbignc3RhcnRmb3JtJywKCQkkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0KCRpZCwnYWRtaW5fc2F2ZXByZWZzJywkcmV0dXJuaWQpKTsKJHNtYXJ0eS0+YXNzaWduKCdlbmRmb3JtJywKCQkkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsKJHNtYXJ0eS0+YXNzaWduKCdzdWJtaXQnLAoJCSR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsJ3N1Ym1pdCcsJHRoaXMtPkxhbmcoJ3N1Ym1pdCcpKSk7Cgokc21hcnR5LT5hc3NpZ24oJ3Byb21wdF9kZXRhaWxwYWdlJywkdGhpcy0+TGFuZygncHJvbXB0X2RldGFpbHBhZ2UnKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfZGV0YWlscGFnZScsCgkJJGNvbnRlbnRvcHMtPkNyZWF0ZUhpZXJhcmNoeURyb3Bkb3duKCcnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdkZXRhaWxwYWdlJyksJGlkLidkZXRhaWxwYWdlJykpOwoKJHNvcnRvcmRlcnMgPSBhcnJheSgkdGhpcy0+TGFuZygnYXNjZW5kaW5nJyk9Pidhc2MnLAoJCSAgICAkdGhpcy0+TGFuZygnZGVzY2VuZGluZycpPT4nZGVzYycpOwokc21hcnR5LT5hc3NpZ24oJ3Byb21wdF9zdW1tYXJ5c29ydG9yZGVyJywkdGhpcy0+TGFuZygncHJvbXB0X3N1bW1hcnlzb3J0b3JkZXInKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfc3VtbWFyeXNvcnRvcmRlcicsCgkJJHRoaXMtPkNyZWF0ZUlucHV0RHJvcGRvd24oJGlkLCdzb3J0b3JkZXInLCRzb3J0b3JkZXJzLC0xLCRzb3J0b3JkZXIpKTsKCiRmZXUgPSAkdGhpcy0+R2V0TW9kdWxlSW5zdGFuY2UoJ0Zyb250RW5kVXNlcnMnKTsKaWYoIGlzX29iamVjdCgkZmV1KSApCiAgewogICAgJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9mcm9udGVuZGNyZWF0ZScsCgkJICAgICR0aGlzLT5DcmVhdGVJbnB1dFllc05vRHJvcGRvd24oJGlkLCdmcm9udGVuZGNyZWF0ZScsCgkJCQkJCSAgICAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZnJvbnRlbmRfY3JlYXRlJywwKSkpOwogICAgCiAgICAkc21hcnR5LT5hc3NpZ24oJ2lucHV0X2Zyb250ZW5kY2hhbmdlc3RhdHVzJywKCQkgICAgJHRoaXMtPkNyZWF0ZUlucHV0WWVzTm9Ecm9wZG93bigkaWQsJ2Zyb250ZW5kY2hhbmdlc3RhdHVzJywKCQkJCQkJICAgICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdmcm9udGVuZF9jaGFuZ2VzdGF0dXMnLDApKSk7CiAgICAKICAgIHsKICAgICAgJG51bXMgPSBhcnJheSgpOwogICAgICBmb3IoICRpID0gMDsgJGkgPCAxMDA7ICRpKysgKQoJewoJICAkbnVtc1skaSsxXSA9ICRpKzE7Cgl9CiAgICAgICRudW1zWycyNTAnXSA9ICcyNTAnOwogICAgICAkbnVtc1snNTAwJ10gPSAnNTAwJzsKICAgICAgJG51bXNbJzEwMDAnXSA9ICcxMDAwJzsKICAgICAgJG51bXNbJzEwMDAwJ10gPSAnMTAwMDAnOwogICAgICAkc21hcnR5LT5hc3NpZ24oJ2lucHV0X2Zyb250ZW5kbnVtcmVjb3JkcycsCgkJICAgICAgJHRoaXMtPkNyZWF0ZUlucHV0RHJvcGRvd24oJGlkLCdmcm9udGVuZG51bXJlY29yZHMnLCRudW1zLC0xLAoJCQkJCQkgJHRoaXMtPkdldFByZWZlcmVuY2UoJ2Zyb250ZW5kX251bXJlY29yZHMnLDApKSk7CiAgICB9CgogICAgewogICAgICAkc3RhdHVzZXMgPSBhcnJheSgkdGhpcy0+TGFuZygncHVibGlzaGVkJyk9PidwdWJsaXNoZWQnLAoJCQkkdGhpcy0+TGFuZygnZHJhZnQnKT0+J2RyYWZ0Jyk7CiAgICAgICRzbWFydHktPmFzc2lnbignaW5wdXRfZnJvbnRlbmRuZXdzdGF0dXMnLAoJCSAgICAgICR0aGlzLT5DcmVhdGVJbnB1dERyb3Bkb3duKCRpZCwnZnJvbnRlbmRuZXdzdGF0dXMnLAoJCQkJCQkgJHN0YXR1c2VzLC0xLAoJCQkJCQkgJHRoaXMtPkdldFByZWZlcmVuY2UoJ2Zyb250ZW5kX25ld3N0YXR1cycsJ2RyYWZ0JykpKTsKICAgIH0KICB9CiAgICAKJHNvcnRpbmdzID0gYXJyYXkoJHRoaXMtPkxhbmcoJ2NvbXBhbnluYW1lJyk9Pidjb21wYW55X25hbWUnLAoJCSAgJHRoaXMtPkxhbmcoJ2FkZHJlc3MnKT0+J2FkZHJlc3MnLAoJCSAgJHRoaXMtPkxhbmcoJ3RlbGVwaG9uZScpPT4ndGVsZXBob25lJywKCQkgICR0aGlzLT5MYW5nKCdmYXgnKT0+J2ZheCcsCgkJICAkdGhpcy0+TGFuZygnY29udGFjdGVtYWlsJyk9Pidjb250YWN0X2VtYWlsJywKCQkgICR0aGlzLT5MYW5nKCd3ZWJzaXRlJyk9Pid3ZWJzaXRlJywKCQkgICR0aGlzLT5MYW5nKCdjcmVhdGVkZGF0ZScpPT4nY3JlYXRlX2RhdGUnLAoJCSAgJHRoaXMtPkxhbmcoJ21vZGlmaWVkZGF0ZScpPT4nbW9kaWZpZWRfZGF0ZScsCgkJICAkdGhpcy0+TGFuZygncmFuZG9tJyk9PidyYW5kb20nKTsKewogICRxdWVyeSA9ICdTRUxFQ1QgbmFtZSBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfY29tcGRpcl9maWVsZGRlZnMgCiAgICAgICAgICAgICBPUkRFUiBCWSBuYW1lIEFTQyc7CiAgJHRtcCA9ICRkYi0+R2V0Q29sKCRxdWVyeSk7CiAgaWYoIGlzX2FycmF5KCR0bXApICkKICAgIHsKICAgICAgZm9yZWFjaCgkdG1wIGFzICRvbmUpCgl7CgkgICRzb3J0aW5nc1skb25lXSA9ICdmOicuJG9uZTsKCX0KICAgIH0KfQokc21hcnR5LT5hc3NpZ24oJ3Byb21wdF9zdW1tYXJ5c29ydGluZycsJHRoaXMtPkxhbmcoJ3Byb21wdF9zdW1tYXJ5c29ydGluZycpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9zdW1tYXJ5c29ydGluZycsCgkJJHRoaXMtPkNyZWF0ZUlucHV0RHJvcGRvd24oJGlkLCdzb3J0YnknLCRzb3J0aW5ncywtMSwkc29ydGJ5KSk7Cgokc21hcnR5LT5hc3NpZ24oJ2lucHV0X2NvbGxlY3RzdGF0cycsCgkJJHRoaXMtPkNyZWF0ZUlucHV0WWVzTm9Ecm9wZG93bigkaWQsJ2lucHV0X2NvbGxlY3RzdGF0cycsCgkJCQkJCSR0aGlzLT5HZXRQcmVmZXJlbmNlKCdjb2xsZWN0c3RhdHMnLDApKSk7Cgokc21hcnR5LT5hc3NpZ24oJ2lucHV0X2FsbG93ZmV1aW1wb3J0JywKCQkkdGhpcy0+Q3JlYXRlSW5wdXRZZXNOb0Ryb3Bkb3duKCRpZCwnZnJvbnRlbmRpbXBvcnQnLAoJCQkJCQkkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZnJvbnRlbmRfaW1wb3J0JywwKSkpOwoKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9mcm9udGVuZF9zaG93ZXhwaXJlZCcsCgkJJHRoaXMtPkNyZWF0ZUlucHV0WWVzTm9Ecm9wZG93bigkaWQsJ2Zyb250ZW5kX3Nob3dleHBpcmVkJywKCQkJCQkJJHRoaXMtPkdldFByZWZlcmVuY2UoJ2Zyb250ZW5kX3Nob3dleHBpcmVkJywwKSkpOwoKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9mcm9udGVuZF9lbWFpbG9uYWRkJywKCQkkdGhpcy0+Q3JlYXRlSW5wdXRZZXNOb0Ryb3Bkb3duKCRpZCwnZnJvbnRlbmRfZW1haWxvbmFkZCcsCgkJCQkJCSR0aGlzLT5HZXRQcmVmZXJlbmNlKCdmcm9udGVuZF9lbWFpbG9uYWRkJywwKSkpOwoKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9mcm9udGVuZF9lbWFpbG9uZWRpdCcsCgkJJHRoaXMtPkNyZWF0ZUlucHV0WWVzTm9Ecm9wZG93bigkaWQsJ2Zyb250ZW5kX2VtYWlsb25lZGl0JywKCQkJCQkJJHRoaXMtPkdldFByZWZlcmVuY2UoJ2Zyb250ZW5kX2VtYWlsb25lZGl0JywwKSkpOzsKCiRncm91cG9wcyA9ICRnQ21zLT5HZXRHcm91cE9wZXJhdGlvbnMoKTsKJGFsbGdyb3VwcyA9ICRncm91cG9wcy0+TG9hZEdyb3VwcygpOwokZ3JvdXBsaXN0ID0gYXJyYXkoKTsKJGdyb3VwbGlzdFstMV0gPSAkdGhpcy0+TGFuZygnbm9uZScpOwpmb3JlYWNoKCAkYWxsZ3JvdXBzIGFzICRvbmVncm91cCApCnsKICAkZ3JvdXBsaXN0WyRvbmVncm91cC0+aWRdID0gJG9uZWdyb3VwLT5uYW1lOwp9CiRzbWFydHktPmFzc2lnbignZ3JvdXBsaXN0JywkZ3JvdXBsaXN0KTsKJHNtYXJ0eS0+YXNzaWduKCdmcm9udGVuZF9lbWFpbGdyb3VwJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZnJvbnRlbmRfZW1haWxncm91cCcsLTEpKTsKCmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSgncHJlZnMudHBsJyk7CgovLyBFT0YKPz4=]]></data>
	</file>
	<file>
	  <filename>/function.admin_searchestab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgcmV0dXJuOwoKZWNobyAnVE9ETyc7CgojCiMgRU9GCiMKPz4=]]></data>
	</file>
	<file>
	  <filename>/function.admin_urlstab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKaWYoICEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdNb2RpZnkgU2l0ZSBQcmVmZXJlbmNlcycpICkgZXhpdDsKCiRzbWFydHktPmFzc2lnbignZm9ybXN0YXJ0JywkdGhpcy0+Q0dDcmVhdGVGb3JtU3RhcnQoJGlkLCdhZG1pbl91cmxzdGFiJykpOwokc21hcnR5LT5hc3NpZ24oJ2Zvcm1lbmQnLCR0aGlzLT5DcmVhdGVGb3JtRW5kKCkpOwokc21hcnR5LT5hc3NpZ24oJ3VybF9yZXF1aXJlZCcsJHRoaXMtPkdldFByZWZlcmVuY2UoJ3VybF9yZXF1aXJlZCcsMCkpOwokc21hcnR5LT5hc3NpZ24oJ3VybF9hdXRvY3JlYXRlJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgndXJsX2F1dG9jcmVhdGUnLDApKTsKJHNtYXJ0eS0+YXNzaWduKCd1cmxfcmVkaXJlY3RvbGQnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCd1cmxfcmVkaXJlY3RvbGQnLDApKTsKJHNtYXJ0eS0+YXNzaWduKCd1cmxfY3JlYXRlb25jb3B5JywkdGhpcy0+R2V0UHJlZmVyZW5jZSgndXJsX2NyZWF0ZW9uY29weScsMCkpOwoKZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCdhZG1pbl91cmxzdGFiLnRwbCcpOwoKIwojIEVPRgojCj8+]]></data>
	</file>
	<file>
	  <filename>/lang/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lang/en_US.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2ludXNlJ10gPSAnaW4gdXNlJzsKJGxhbmdbJ2luZm9fZmlsdGVyX2hpZXJhcmNoeSddID0gJ1NwZWNpZnkgYSBoaWVyYXJjaHkgc3RyaW5nIChvciBwb3J0aW9uKSB0byBzZWFyY2ggb24uICBXaWxkY2FyZCBjaGFyYWN0ZXJzIGFyZSBhY2NlcHRlZCwgYW5kIG1heSBpbmNsdWRlIGNoaWxkIGhpZXJhcmNoaWVzLiAgaS5lOiAmcXVvdDtDYXJzKiZxdW90Oy4gVGhpcyBmaWVsZCBpcyBub3QgY2FzZSBzZW5zaXRpdmUnOwokbGFuZ1snaW5mb19maWx0ZXJfYWRkcmVzcyddID0gJ1NwZWNpZnkgYW4gYWRkcmVzcyBzdHJpbmcgdG8gc2VhcmNoIG9uLiAgV2lsZGNhcmQgY2hhcmFjdGVycyBhcmUgYWNjZXB0ZWQuICBpLmU6ICZxdW90OypUZXhhcyomcXVvdDsuIFRoaXMgZmllbGQgaXMgbm90IGNhc2Ugc2Vuc2l0aXZlJzsKJGxhbmdbJ2luZm9fZmlsdGVyX25hbWUnXSA9ICdTcGVjaWZ5IGEgY29tcGFueSBuYW1lIChvciBwYXJ0aWFsIGNvbXBhbnkgbmFtZSB0byBzZWFyY2ggb24uICBXaWxkY2FyZCBjaGFyYWN0ZXJzIGFyZSBhY2NlcHRlZC4gIGkuZTogJnF1b3Q7KnJlc3RhcmF1bnQmcXVvdDsgVGhpcyBmaWVsZCBpcyBub3QgY2FzZSBzZW5zaXRpdmUnOwokbGFuZ1snZXJyb3Jfbm9maWx0ZXJtYXRjaGVzJ10gPSAnTm8gZGF0YWJhc2UgZW50cmllcyBtYXRjaGVkIHRoZSBjcml0ZXJpYSBzcGVjaWZpZWQnOwokbGFuZ1snZWRpdF9maWx0ZXInXSA9ICdFZGl0IEZpbHRlcic7CiRsYW5nWydzb3J0YnknXSA9ICdTb3J0IEJ5JzsKJGxhbmdbJ3BhZ2VsaW1pdCddID0gJ0l0ZW1zIFBlciBQYWdlJzsKJGxhbmdbJ2ZpbHRlciddID0gJ0ZpbHRlcic7CiRsYW5nWydyZXNldCddID0gJ1Jlc2V0JzsKJGxhbmdbJ3BhcmFtX2NhdGVnb3J5MiddID0gJ0FwcGxpY2FibGUgb25seSB0byB0aGUgPGVtPmRlZmF1bHQ8L2VtPiBzdW1tYXJ5IHZpZXcsIGFuZCBvbmx5IHdoZW4gdGhlIDxlbT5jYXRlZ29yeTwvZW0+IHBhcmFtZXRlciBpcyBhbHNvIHN1cHBsaWVkIHRoaXMgcGFyYW1ldGVyIGFsbG93cyBzcGVjaWZ5aW5nIGFuIGFkZGl0aW9uYWwgQU5EIGV4cHJlc3Npb24gdG8gaW5kaWNhdGUgYWRkaXRpb25hbCAoY29tbWEgc2VwYXJhdGVkKSBjYXRlZ29yaWVzIHRoYXQgdGhlIHJlc3VsdCBzaG91bGQgYmUgYSBtZW1iZXIgb2YuICBpLmU6IHtDb21wYW55RGlyZWN0b3J5IGNhdGVnb3J5PVwncmVnaW9uX25vcnRoLHJlZ2lvbl9zb3V0aFwnIGNhdGVnb3J5Mj1cJ2NhcnMsdHJ1Y2tzXCd9IHdvdWxkIHJldHVybiBvbmx5IHRob3NlIGNvbXBhbmllcyB0aGF0IHdlcmUgaW4gdGhlIGVpdGhlciBvZiB0aGUgcmVnaW9uIG5vcnRoIG9yIHJlZ2lvbiBzb3V0aCBjYXRlZ29yaWVzIEFORCBBTFNPIGluIGVpdGhlciBvZiB0aGUgY2FycyBvciB0cnVja3MgY2F0ZWdvcmllcyc7CiRsYW5nWydwYXJhbV9jYXRlZ29yeTMnXSA9ICdBcHBsaWNhYmxlIG9ubHkgdG8gdGhlIDxlbT5kZWZhdWx0PC9lbT4gc3VtbWFyeSB2aWV3LCBhbmQgb25seSB3aGVuIHRoZSA8ZW0+Y2F0ZWdvcnkyPC9lbT4gcGFyYW1ldGVyIGlzIGFsc28gc3VwcGxpZWQgdGhpcyBwYXJhbWV0ZXIgYWxsb3dzIHNwZWNpZnlpbmcgeWV0IGFuIGFkZGl0aW9uYWwgQU5EIGV4cHJlc3Npb24gdG8gaW5kaWNhdGUgYWRkaXRpb25hbCAoY29tbWEgc2VwYXJhdGVkKSBjYXRlZ29yaWVzIHRoYXQgdGhlIHJlc3VsdCBzaG91bGQgYmUgYSBtZW1iZXIgb2YuIFNlZSB0aGUgaGVscCBmb3IgdGhlIGNhdGVnb3J5MiBwYXJhbWV0ZXIgZm9yIG1vcmUgaW5mb3JtYXRpb24nOwokbGFuZ1snYmFkbmFtZWdpdmVuJ10gPSAnVGhlIG5hbWUgc3BlY2lmaWVkIGlzIGludmFsaWQgKGdlbmVyYWxseSBuYW1lcyBzaG91bGQgYmUgdXJsIGZyaWVuZGx5KSc7CiRsYW5nWydjdXJyZW50X3ZhbHVlJ10gPSAnQ3VycmVudCBWYWx1ZSc7CiRsYW5nWydwYXJhbV9mcm9udGVuZGxpc3R0ZW1wbGF0ZSddID0gJ0FwcGxpY2FibGUgb25seSB0byB0aGUgPGVtPmZyb250ZW5kbGlzdDwvZW0+IGFjdGlvbiwgdGhpcyBwYXJhbWV0ZXIgYWxsb3dzIHNwZWNpZnlpbmcgYSBub24gZGVmYXVsdCBmcm9udGVuZCBsaXN0IHRlbXBsYXRlIHRvIHVzZSBmb3IgcmVuZGVyaW5nIHRoZSBvdXRwdXQnOwokbGFuZ1sncGFyYW1fcmVzdWx0cGFnZSddID0gJ0FwcGxpY2FibGUgdG8gdGhlIDxlbT5zZWFyY2g8L2VtPiBhY3Rpb24sIHRoaXMgcGFyYW1ldGVyIGFsbG93cyBzcGVjaWZ5aW5nIHdoYXQgcGFnZSBzaG91bGQgYmUgdXNlZCBmb3IgZGlzcGxheWluZyBtYXRjaGluZyByZXN1bHRzLic7CiRsYW5nWydwYXJhbV9uYW1lJ10gPSAnQXBwbGljYWJsZSBvbmx5IHRvIHRoZSBkZWZhdWx0IDxlbT4oc3VtbWFyeSk8L2VtPiBhY3Rpb24sIHRoaXMgcGFyYW1ldGVyIGFsbG93cyBmaWx0ZXJpbmcgY29tcGFuaWVzIGJ5IHRoZWlyIG5hbWUuICBXaWxkY2FyZCBjaGFyYWN0ZXJzIGFyZSBhbGxvd2VkLiAgaS5lOiBuYW1lPSZxdW90O2EqJnF1b3Q7JzsKJGxhbmdbJ2Vycm9yX2R1cGxpY2F0ZSddID0gJ0dlbmVyYXRlIGVycm9yIChidXQgY29udGludWUpJzsKJGxhbmdbJ2Vycm9yX3VwZGF0ZV9jb21wYW55J10gPSAnRXJyb3Igb2NjdXJyZWQgdXBkYXRpbmcgY29tcGFueSByZWNvcmQnOwokbGFuZ1snaWdub3JlJ10gPSAnSWdub3JlJzsKJGxhbmdbJ292ZXJ3cml0ZSddID0gJ092ZXJ3cml0ZSc7CiRsYW5nWydjYXRlZ29yeWRlbGV0ZWQnXSA9ICdDYXRlZ29yeSBEZWxldGVkJzsKJGxhbmdbJ3Byb21wdF9jcmVhdGVfdXJsJ10gPSAnQ3JlYXRlIFVSTFMgZm9yIHJlY29yZHMgd2l0aG91dCBVUkxTJzsKJGxhbmdbJ2luZm9fY3JlYXRlX3VybCddID0gJ0lmIG5vIFVSTCBpcyBzcGVjaWZpZWQgZm9yIGEgcmVjb3JkLCB0aGlzIG9wdGlvbiB3aWxsIGVuc3VyZSB0aGF0IHRoZXkgYXJlIGdlbmVyYXRlZC4gSWYgdGhlICZxdW90O1JlcXVpcmUgVVJMUyZxdW90OyBwcmVmZXJlbmNlIGlzIHNldCwgVVJMUyB3aWxsIGJlIGVuc3VyZWQgcmVnYXJkbGVzcyBvZiB0aGlzIHNldHRpbmcnOwokbGFuZ1sndXJsX2NyZWF0ZW9uY29weSddID0gJ0NyZWF0ZSBVUkxTIE9uIENvcHknOwokbGFuZ1snaW5mb191cmxfY3JlYXRlb25jb3B5J10gPSAnV2hlbiBjb3B5aW5nIGNvbXBhbmllcywgc2hvdWxkIGEgVVJMIGJlIGNyZWF0ZWQgZm9yIHRoZSBkZXN0aW5hdGlvbiByZWNvcmQuICBUaGlzIG9ubHkgYXBwbGllcyBpZiBVUkxTIGFyZSBub3QgcmVxdWlyZWQuJzsKJGxhbmdbJ2Vycm9yX2JhdGNodXJsY3JlYXRlJ10gPSAnQmF0Y2ggVVJMIENyZWF0aW9uIGVuY291bnRlcmVkICVkIGVycm9ycyc7CiRsYW5nWydpbmZvX2JhdGNodXJsY3JlYXRlJ10gPSAnQmF0Y2ggVVJMIENyZWF0aW9uIHVwZGF0ZWQgJWQgcmVjb3Jkcyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXJsJ10gPSAnVGhlIFVSTCBzcGVjaWZpZWQgKG9yIGNhbGN1bGF0ZWQpIGlzIGludmFsaWQnOwokbGFuZ1snZXJyb3JfaW52YWxpZG5hbWUnXSA9ICdUaGUgQ29tcGFueSBOYW1lIGlzIGludmFsaWQnOwokbGFuZ1snZXJyb3JfdXJsbm90ZW1wdHknXSA9ICdUaGUgVVJMIGZpZWxkIGlzIG5vdCBlbXB0eS4uLiBjYW5ub3Qgb3ZlcndyaXRlIGFuIGV4aXN0aW5nIHZhbHVlJzsKJGxhbmdbJ2Vycm9yX3VybHJlcXVpcmVkJ10gPSAnQSBVUkwgaXMgcmVxdWlyZWQnOwokbGFuZ1snZ2V0dXJsJ10gPSAnQ2FsY3VsYXRlIFVSTCc7CiRsYW5nWyd1cmxfcmVxdWlyZWQnXSA9ICdBIFVSTCBpcyByZXF1aXJlZCc7CiRsYW5nWydpbmZvX3VybF9yZXF1aXJlZCddID0gJ1Nob3VsZCB0aGUgVVJMIGZpZWxkIGJlIHJlcXVpcmVkIHRvIGJlIHZhbGlkIHdoZW4gYWRkaW5nIG9yIGVkaXRpbmcgYSBjb21wYW55Pyc7CiRsYW5nWydjaGVjayddID0gJ0NoZWNrJzsKJGxhbmdbJ3VybCddID0gJ1VSTCc7CiRsYW5nWydjcmVhdGV1cmxzJ10gPSAnQ3JlYXRlIFVSTFMnOwokbGFuZ1snY29uZmlybV9hdXRvY3JlYXRlX3VybCddID0gJ0F1dG9tYXRpY2FsbHkgQ3JlYXRlIFVSTFMgRm9yIGV4aXN0aW5nIHJlY29yZHMgd2l0aCBubyBVUkwnOwokbGFuZ1sndXJsX3JlZGlyZWN0b2xkJ10gPSAnRG8gMzAxIFJlZGlyZWN0IHRvIG5ldyBVUkxTJzsKJGxhbmdbJ2luZm9fdXJsX3JlZGlyZWN0b2xkJ10gPSAnT24gYW4gaW5jb21pbmcgcmVxdWVzdCBmb3IgYSBjb21wYW55IHVzaW5nIHRoZSBvbGQgVVJMIHBhdHRlcm5zLCBwZXJmb3JtIGEgMzAxIHJlZGlyZWN0IHRvIHRoZSBuZXcgVVJMLiAgVGhpcyB3aWxsIG9ubHkgd29yayBmb3IgZW50cmllcyB0aGF0IGhhdmUgVVJMUyBjcmVhdGVkLic7CiRsYW5nWydpbmZvX3VybF9hdXRvY3JlYXRlJ10gPSAnV2hlbiBhZGRpbmcgb3IgZWRpdGluZyBhIGNvbXBhbnkgZGVmaW5pdGlvbiwgaWYgdGhlIFVSTCBmaWVsZCBpcyBibGFuayBvbmUgd2lsbCBiZSBjcmVhdGVkIGF1dG9tYXRpY2FsbHkgZnJvbSB0aGUgY29tcGFueSBuYW1lLiAgVGhpcyBkb2VzIG5vdCBhcHBseSB0byBmcm9udGVuZCBlZGl0aW5nJzsKJGxhbmdbJ3VybF9hdXRvY3JlYXRlJ10gPSAnQXV0b21hdGljYWxseSBjcmVhdGUgdW5pcXVlIFVSTFMnOwokbGFuZ1sndXJscyddID0gJ1VSTFMnOwokbGFuZ1sncGFyYW1fc2VhcmNoYWRkcmVzcyddID0gJ1doZW4gZG9pbmcgYSBwb3N0YWwgY29kZSBzZWFyY2gsIHVzaW5nIHRoZSBzZWFyY2ggYWN0aW9uLCBpZiB0aGlzIG9wdGlvbiBpcyBlbmFibGVkLCB0aGUgYWRkcmVzcyBmaWVsZCB3aWxsIGFsc28gYmUgc2VhcmNoZWQgZm9yIHRoZSBtYXRjaGluZyBzdHJpbmcnOwokbGFuZ1sncGFyYW1fcG9zdGFsY2hhcnMnXSA9ICdXaGVuIGRvaW5nIGEgcG9zdGFsIGNvZGUgc2VhcmNoLCB1c2luZyB0aGUgc2VhcmNoIGFjdGlvbiwgdGhpcyBvcHRpb24gYWxsb3dzIGxpbWl0aW5nIHRoZSBlZmZlY3RpdmUgbnVtYmVyIG9mIGNoYXJhY3RlcnMgb25mIHRoZSBwb3N0YWwgY29kZSc7CiRsYW5nWydsYWJlbF9pbmNsdWRlY2hpbGRyZW4nXSA9ICdJbmNsdWRlIENoaWxkIEhpZXJhcmNoaWVzJzsKJGxhbmdbJ2FueSddID0gJ0FueSc7CiRsYW5nWydpbmZvX2NhdGVnb3J5Y29sdW1uJ10gPSAnU3BlY2lmeSB0aGUgbmFtZSBvZiBhIGNvbHVtbiB0aGF0IHNwZWNpZmllcyBvbmUgb3IgbW9yZSBjYXRlZ29yeSBuYW1lcyAoc2VwYXJhdGVkIGJ5IGEgY29tbWEgPGVtPigsKTxlbT4gVGhhdCBjYW4gYmUgdXNlZCB0byBxdWlja2x5IHBvcHVsYXRlIHRoZSBjYXRlZ29yaWVzIGZvciBlYWNoIHJlY29yZC4nOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5Y29sdW1uJ10gPSAnQ2F0ZWdvcmllcyBDb2x1bW4nOwokbGFuZ1snZXJyb3JfY2F0ZWdvcnljb2x1bW5fbm90Zm91bmQnXSA9ICdDYXRlZ29yeSBjb2x1bW4gJXMgbm90IGZvdW5kJzsKJGxhbmdbJ2V4cGlyZXMnXSA9ICdFeHBpcmVzJzsKJGxhbmdbJ3Jlc2V0X3RvX2ZhY3RvcnknXSA9ICdSZXNldCB0byBGYWN0b3J5IERlZmF1bHRzJzsKJGxhbmdbJ3Byb21wdF9lbWFpbF9pc2h0bWwnXSA9ICdFbWFpbCBpcyBpbiBIVE1MIGZvcm1hdCc7CiRsYW5nWydwcm9tcHRfZW1haWxfc3ViamVjdCddID0gJ0VtYWlsIFN1YmplY3QnOwokbGFuZ1sncHJvbXB0X2VtYWlsX3RlbXBsYXRlJ10gPSAnRW1haWwgVGVtcGxhdGUnOwokbGFuZ1snZW1haWxfdGVtcGxhdGUnXSA9ICdFbWFpbCBUZW1wbGF0ZSc7CiRsYW5nWydmZWVkaXRfZW1haWxfc3ViamVjdCddID0gJ0EgY2hhbmdlIGhhcyBvY2N1cnJlZCB0byBhIENvbXBhbnlEaXJlY3RvcnkgZW50cnknOwokbGFuZ1sncHJvbXB0X2ZldV9lbWFpbGdyb3VwJ10gPSAnQWRtaW5pc3RyYXRpdmUgZ3JvdXAgdG8gcmVjZWl2ZSBub3RpZmljYXRpb24gZW1haWxzPyc7CiRsYW5nWydwcm9tcHRfZmV1X2VtYWlsb25hZGQnXSA9ICdTZW5kIGFuIGVtYWlsIHdoZW4gYSBmcm9udGVuZCB1c2VyIGFkZHMgYSBuZXcgY29tcGFueSByZWNvcmQnOwokbGFuZ1sncHJvbXB0X2ZldV9lbWFpbG9uZWRpdCddID0gJ1NlbmQgYW4gZW1haWwgd2hlbiBhIGZyb250ZW5kIHVzZXIgbW9kaWZpZXMgYW4gZXhpc3RpbmcgY29tcGFueSByZWNvcmQnOwokbGFuZ1sncHJvbXB0X2ZldV9lbWFpbG9uZ3JvdXAnXSA9ICdBZG1pbiBncm91cCB0byBzZW5kIGVtYWlscyB0byc7CiRsYW5nWydwcm9tcHRfZmV1X2Rpc3BsYXlfc2V0dGluZ3MnXSA9ICdGcm9udGVuZCBEaXNwbGF5IFNldHRpbmdzJzsKJGxhbmdbJ3Byb21wdF9mcm9udGVuZF9zaG93ZXhwaXJlZCddID0gJ1Nob3cgcmVjb3JkcyBvd25lZCBieSBleHBpcmVkIEZyb250ZW5kIFVzZXJzJzsKJGxhbmdbJ2ZpZWxkX2ltYWdlJ10gPSAnSW1hZ2UnOwokbGFuZ1snZXh0cmExJ10gPSAnRXh0cmEgRGF0YSAxJzsKJGxhbmdbJ2V4dHJhMiddID0gJ0V4dHJhIERhdGEgMic7CiRsYW5nWydleHRyYTMnXSA9ICdFeHRyYSBEYXRhIDMnOwokbGFuZ1snbGJsX2JhY2snXSA9ICdCYWNrJzsKJGxhbmdbJ21zZ19jb21wYW55Y29waWVkJ10gPSAnQ29tcGFueSBjb3BpZWQuLi4gcGxlYXNlIGVkaXQgdGhlIGRldGFpbHMgZm9yIHRoZSBuZXcgY29tcGFueSByZWNvcmQnOwokbGFuZ1snY29weSddID0gJ0NvcHknOwokbGFuZ1snbW9kZGVzY3JpcHRpb24nXSA9ICdBIGRpcmVjdG9yeSBsaWtlIG1vZHVsZSBmb3IgY29tcGFuaWVzLiAgQWxsb3dzIGFkZGluZy9lZGl0aW5nL2ltcG9ydGluZy9leHBvcnRpbmcgY29tcGFueSBkZWZpbml0aW9ucywgYW5kIHZhcmlvdXMgd2F5cyBvZiBkaXNwbGF5aW5nIHRoZSBjb21wYW55IGVudHJpZXMgaW5jbHVkaW5nIHNlYXJjaC4gIFRoaXMgbW9kdWxlIGludGVncmF0ZXMgd2VsbCB3aXRoIENHR29vZ2xlTWFwcy4nOwokbGFuZ1snbXNnX2ltcG9ydF9jb21wbGV0ZSddID0gJ0ltcG9ydCBvcGVyYXRpb24gc3VjY2Vzc2Z1bCc7CiRsYW5nWydwcm9tcHRfaGllcmFyY2hpZXNfaW1wb3J0ZWQnXSA9ICdIaWVyYXJjaHkgUG9zaXRpb25zIENyZWF0ZWQnOwokbGFuZ1sncHJvbXB0X2ltcG9ydF9oaWVyYXJjaHlkZWZzJ10gPSAnSW1wb3J0IEhpZXJhcmNoeSBSZWNvcmRzJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRfaGllcmFyY2h5dmFscyddID0gJ0ltcG9ydCBIaWVyYXJjaHkgVmFsdWVzJzsKJGxhbmdbJ2Vycm9yX2luc2VydF9oaWVyYXJjaHknXSA9ICdFcnJvciBjcmVhdGluZyBoaWVyYXJjaHkgJnF1b3Q7JXMmcXVvdDsnOwokbGFuZ1snZXJyb3JfZHVwbGljYXRlX2hpZXJhcmNoeSddID0gJ0hpZXJhcmNoeSB3aXRoIGxvbmcgbmFtZSAmcXVvdDslcyZxdW90OyBhbHJlYWR5IGV4aXN0cy4nOwokbGFuZ1snY29tcGFueWRlbGV0ZWQnXSA9ICdDb21wYW55IERlbGV0ZWQnOwokbGFuZ1snZXJyb3JfdXBsb2FkJ10gPSAnRXJyb3IgdXBsb2FkaW5nIGZpbGUnOwokbGFuZ1snZXJyb3JfZGVsaW1pdGVyJ10gPSAnWW91IG11c3Qgc3BlY2lmeSBhIGZpZWxkIGRlbGltaXRlcic7CiRsYW5nWydlcnJvcl9ub3Nwb3RzbGVmdCddID0gJ1lvdSBoYXZlIG5vIHJlbWFpbmluZyBjb21wYW55IHNsb3RzJzsKJGxhbmdbJ21zZ19zbG90c3VzZWQnXSA9ICdZb3UgaGF2ZSB1c2VkICVkIG9mICVkIGNvbXBhbnkgc2xvdHMnOwokbGFuZ1snaW1wb3J0X2ZpbGVuYW1lJ10gPSAnU2VsZWN0IENTViBGaWxlJzsKJGxhbmdbJ2RlbGltaXRlciddID0gJ0ZpZWxkIERlbGltaXRlcic7CiRsYW5nWydpbmZvX2NzdmZpbGUnXSA9ICdJdCBpcyBwb3NzaWJsZSB0byBpbXBvcnQgY29tcGFueSBpbmZvcm1hdGlvbiBkaXJlY3RseSBmcm9tIGFuIEFTQ0lJIGZpbGUuJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRfdGVtcGxhdGUnXSA9ICdUaGlzIHRlbXBsYXRlIGRlc2NyaWJlcyBhIGZvcm0gdGhhdCBpcyB1c2VkIHRvIGFsbG93IGF1dGhvcml6ZWQgZnJvbnRlbmQgdXNlcnMgdG8gaW1wb3J0IGRhdGEgZnJvbSBhIHByb3Blcmx5IGZvcm1hdHRlZCBDU1YgZmlsZSc7CiRsYW5nWydmcm9udGVuZGltcG9ydHRlbXBsYXRlJ10gPSAnRnJvbnRlbmQgQ1NWIEltcG9ydCBUZW1wbGF0ZSc7CiRsYW5nWydwcm9tcHRfZmV1X2ltcG9ydCddID0gJ0FsbG93IEZyb250ZW5kVXNlcnMgdG8gaW1wb3J0IHJlY29yZHMgZnJvbSBDU1Y/JzsKJGxhbmdbJ3BhcmFtX2hpZXJsaXN0dGVtcGxhdGUnXSA9ICdTcGVjaWZ5IGEgdGVtcGxhdGUgKGJ5IG5hbWUpIHRvIHVzZSB3aGVuIGRpc3BsYXlpbmcgdGhlIGhpZXJhcmNoeSBsaXN0IHZpZXcuJzsKJGxhbmdbJ2hpZXJsaXN0dGVtcGxhdGVfYWRkZWRpdCddID0gJ0FkZC9FZGl0IEhpZXJhcmNoeSBMaXN0IFRlbXBsYXRlJzsKJGxhbmdbJ3RpdGxlX2hpZXJsaXN0X2RmbHR0ZW1wbGF0ZSddID0gJ0RlZmF1bHQgSGllcmFyY2h5IExpc3QgVGVtcGxhdGUnOwokbGFuZ1snaGllcmFyY2h5bGlzdHRlbXBsYXRlcyddID0gJ0hpZXJhcmNoeSBMaXN0IFRlbXBsYXRlcyc7CiRsYW5nWydwYXJhbV9oaWVyJ10gPSAnQXBwbGljYWJsZSB0byB0aGUgPGVtPmRlZmF1bHQ8L2VtPiwgPGVtPnNlYXJjaDxlbT4sIDxlbT5jYXRlZ29yeWxpc3Q8L2VtPixhbmQgPGVtPmhpZXJsaXN0PC9lbT4gYWN0aW9ucywgdGhpcyBwYXJhbWV0ZXIgYWxsb3dzIHNwZWNpZnlpbmcgYSBoaWVyYXJjaHkgbmFtZSBvZiBjb21wYW5pZXMgdG8gZGlzcGxheS4gIEluIHRoZSBkZWZhdWx0LCBhbmQgc2VhcmNoIGFjdGlvbnMsIFdpbGRjYXJkcyBhcmUgYWNjZXB0ZWQsIGkuZTogJnF1b3Q7KnNvbWVoaWVyYXJjaHluYW1lKiZxdW90Oy4gIElmIHRoaXMgcGFyYW1ldGVyIGlzIHNwZWNpZmllZCB0byB0aGUgc2VhcmNoIGFjdGlvbiwgdGhlbiBhbnkgaGllcmFyY2h5IGNob3NlbiBpbiB0aGUgc2VhcmNoIGZvcm0gd2lsbCBiZSBpZ25vcmVkLiAgSG93ZXZlciBpbiB0aGUgaGllcmxpc3QgYWN0aW9uLCB0aGlzIHBhcmFtZXRlciBtdXN0IGNvbnRhaW4gdGhlIHVuaXF1ZSBuYW1lIG9mIGEgaGllcmFyY2h5IHBvc2l0aW9uLCBhbmQgd2lsbCBzcGVjaWZ5IHRoZSBzdGFydGluZyBsb2NhdGlvbiBvZiB0aGUgaGllcmFyY2h5IGRpc3BsYXkuJzsKJGxhbmdbJ21zZ19oaWVyZGVsZXRlZCddID0gJ0hpZXJhcmNoeSBwb3NpdGlvbiBkZWxldGVkJzsKJGxhbmdbJ21zZ19oaWVydXBkYXRlZCddID0gJ0hpZXJhcmNoeSBwb3NpdGlvbiB1cGRhdGVkJzsKJGxhbmdbJ21zZ19oaWVyYWRkZWQnXSA9ICdIaWVyYXJjaHkgcG9zaXRpb24gYWRkZWQnOwokbGFuZ1snYWRkaGllciddID0gJ0FkZCBIaWVyYXJjaHknOwokbGFuZ1snaGllcmFyY2h5J10gPSAnSGllcmFyY2h5JzsKJGxhbmdbJ2FkZF9lZGl0X2NhdGVnb3J5J10gPSAnQWRkL0VkaXQgQ2F0ZWdvcnknOwokbGFuZ1snbGJsX3NldHRpbmdzJ10gPSAnU2V0dGluZ3MnOwokbGFuZ1snbGJsX3RlbXBsYXRlcyddID0gJ1RlbXBsYXRlcyc7CiRsYW5nWydub25lJ10gPSAnTm9uZSc7CiRsYW5nWydvd25lciddID0gJ093bmVyJzsKJGxhbmdbJ2NyZWF0ZWQnXSA9ICdDcmVhdGVkJzsKJGxhbmdbJ21vZGlmaWVkJ10gPSAnTW9kaWZpZWQnOwokbGFuZ1snZnJvbnRlbmRsaXN0dGVtcGxhdGVfYWRkZWRpdCddID0gJ0FkZCBvciBFZGl0IGEgRnJvbnRlbmQgTGlzdCBUZW1wbGF0ZSc7CiRsYW5nWydwcm9tcHRfZmV1X2NoYW5nZV9zdGF0dXMnXSA9ICdDYW4gZnJvbnRlbmQgdXNlcnMgY2hhbmdlIGEgY29tbXBhbnkgc3RhdHVzPyc7CiRsYW5nWydwcm9tcHRfZmV1X25ld19zdGF0dXMnXSA9ICdEZWZhdWx0IHN0YXR1cyBmb3IgbmV3IHJlY29yZHMgY3JlYXRlZCBvbiB0aGUgZnJvbnRlbmQnOwokbGFuZ1sndGl0bGVfZnJvbnRlbmRsaXN0X2RmbHR0ZW1wbGF0ZSddID0gJ0RlZmF1bHQgRnJvbnRlbmQgTGlzdCBUZW1wbGF0ZSc7CiRsYW5nWydmcm9udGVuZGxpc3R0ZW1wbGF0ZXMnXSA9ICdGcm9udGVuZCBMaXN0IFRlbXBsYXRlcyc7CiRsYW5nWydwcm9tcHRfZ2VuZXJhbF9zZXR0aW5ncyddID0gJ0dlbmVyYWwgU2V0dGluZ3MnOwokbGFuZ1sncHJvbXB0X2ZldV9lZGl0X3NldHRpbmdzJ10gPSAnRnJvbnRlbmQgRWRpdGluZyBTZXR0aW5ncyc7CiRsYW5nWydwcm9tcHRfZmV1X2NyZWF0ZSddID0gJ0NhbiBGcm9udEVuZFVzZXJzIENyZWF0ZSBuZXcgUmVjb3Jkcz8nOwokbGFuZ1sncHJvbXB0X2ZldV9udW1yZWNvcmRzJ10gPSAnTWF4aW11bSBudW1iZXIgb2YgcmVjb3JkcyB0aGF0IGNhbiBiZSBhc3NvY2lhdGVkIHdpdGggYSBGRVUgYWNjb3VudCc7CiRsYW5nWydwcm9tcHRfbnVtaW1wb3J0ZWQnXSA9ICdOdW1iZXIgb2YgSW1wb3J0ZWQgUmVjb3Jkcyc7CiRsYW5nWydwcm9tcHRfZHVwbGljYXRlX25hbWUnXSA9ICdDaGVjayBmb3IgZHVwbGljYXRlIGNvbXBhbnkgbmFtZXMnOwokbGFuZ1sncHJvbXB0X3N0YXR1cyddID0gJ1N0YXR1cyBmb3IgaW1wb3J0ZWQgcmVjb3JkJzsKJGxhbmdbJ3Byb21wdF9pZ25vcmVfYWRkcmVzcyddID0gJ0lnbm9yZSBhZGRyZXNzIGZpZWxkJzsKJGxhbmdbJ3Byb21wdF9jb252ZXJ0X2FkZHJlc3MnXSA9ICdDb252ZXJ0IEFkZHJlc3NlcyB0byBjb29yZGluYXRlcyAoaWYgdGhlcmUgYXJlIG5vIGNvb3JkaW5hdGVzKSc7CiRsYW5nWydwcm9tcHRfa21sZmlsZSddID0gJ0tNTCBGaWxlIHRvIEltcG9ydCc7CiRsYW5nWydpbXBvcnRrbWwnXSA9ICdJbXBvcnQgS01MJzsKJGxhbmdbJ2ltcG9ydF9rbWwnXSA9ICdJbXBvcnQgS01MIEZpbGUnOwokbGFuZ1snc2VsZWN0b25lJ10gPSAnU2VsZWN0IE9uZSc7CiRsYW5nWydlcnJvcl9mZXVfbG9nZ2VkaW4nXSA9ICdUbyB1c2UgdGhpcyBmdW5jdGlvbiB5b3UgbXVzdCBiZSBsb2dnZWQgaW4gdG8gdGhlIGZyb250ZW5kIG9mIHRoZSB3ZWJzaXRlJzsKJGxhbmdbJ2FjdGl2ZSddID0gJ0FjdGl2ZSc7CiRsYW5nWydhZGRsaW5rJ10gPSAnQWRkIExpbmsnOwokbGFuZ1snYWRkcmVzcyddID0gJ0FkZHJlc3MnOwokbGFuZ1snYWRkcmVzc3RleHQnXSA9ICdBZGRyZXNzJzsKJGxhbmdbJ2FkZGNhdGVnb3J5J10gPSAnQWRkIENhdGVnb3J5JzsKJGxhbmdbJ2FkZGNvbXBhbnknXSA9ICdBZGQgQ29tcGFueSc7CiRsYW5nWydhZGRmaWVsZGRlZiddID0gJ0FkZCBGaWVsZCBEZWZpbml0aW9uJzsKJGxhbmdbJ2FkbWluX29ubHknXSA9ICdWaXNpYmxlIFRvIEFkbWluIE9ubHknOwokbGFuZ1snYXJleW91c3VyZSddID0gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byByZW1vdmUgdGhpcz8nOwokbGFuZ1snYXNjZW5kaW5nJ10gPSAnQXNjZW5kaW5nJzsKJGxhbmdbJ2NhbmNlbCddID0gJ0NhbmNlbCc7CiRsYW5nWydjYW51c2VyZWRpdCddID0gJ0NhbiBmcm9udGVuZCB1c2VycyBlZGl0IHRoaXMgZmllbGQ/JzsKJGxhbmdbJ2NhbnVzZXJ2aWV3J10gPSAnQ2FuIGZyb250ZW5kIHVzZXJzIHZpZXcgdGhpcyBmaWVsZD8nOwokbGFuZ1snY2F0ZWdvcnknXSA9ICdDYXRlZ29yeSc7CiRsYW5nWydjYXRlZ29yaWVzJ10gPSAnQ2F0ZWdvcmllcyc7CiRsYW5nWydjYXRlZ29yeXRleHQnXSA9ICdDYXRlZ29yeSc7CiRsYW5nWydjYXRlZ29yeWFkZGVkJ10gPSAnQ2F0ZWdvcnkgQWRkZWQnOwokbGFuZ1snY2F0ZWdvcnl1cGRhdGVkJ10gPSAnQ2F0ZWdvcnkgVXBkYXRlZCc7CiRsYW5nWydjYXRlZ29yeWxpc3R0ZW1wbGF0ZV9hZGRlZGl0J10gPSAnQWRkL0VkaXQgYSBDYXRlZ29yeSBMaXN0IFRlbXBsYXRlJzsKJGxhbmdbJ2NhdGVnb3J5bGlzdHRlbXBsYXRlcyddID0gJ0NhdGVnb3J5IExpc3QgVGVtcGxhdGVzJzsKJGxhbmdbJ2NhdGVnb3J5bGlzdHRlbXBsYXRldXBkYXRlZCddID0gJ0NhdGVnb3J5IExpc3QgVXBkYXRlZCc7CiRsYW5nWydjb21wYW55J10gPSAnQ29tcGFueSc7CiRsYW5nWydjb21wYW55YWRkZWQnXSA9ICdDb21wYW55IEFkZGVkJzsKJGxhbmdbJ2NvbXBhbnluYW1lJ10gPSAnQ29tcGFueSBuYW1lJzsKJGxhbmdbJ2NvbXBhbnl1cGRhdGVkJ10gPSAnQ29tcGFueSBVcGRhdGVkJzsKJGxhbmdbJ2NvbXBhbmllcyddID0gJ0NvbXBhbmllcyc7CiRsYW5nWydjb21wYW55dGV4dCddID0gJ0NvbXBhbnknOwokbGFuZ1snY29tcGFueWRpcmVjdG9yeSddID0gJ0NvbXBhbnkgRGlyZWN0b3J5JzsKJGxhbmdbJ2NvbnRhY3RlbWFpbCddID0gJ0NvbnRhY3QgRW1haWwnOwokbGFuZ1snY3JlYXRlZGRhdGUnXSA9ICdEYXRlIEVudGVyZWQnOwokbGFuZ1snZGVmYXVsdHRlbXBsYXRlcyddID0gJ0RlZmF1bHQgVGVtcGxhdGVzJzsKJGxhbmdbJ2RlZmF1bHRfdGVtcGxhdGVfbm90aWNlJ10gPSA8PDxFT1QKPHN0cm9uZz5Ob3RlOjwvc3Ryb25nPiBUaGUgY29udGVudHMgb2YgdGhlc2UgdGV4dCBhcmVhcyBhcmUgdXNlZCB0byBkZXRlcm1pbmUgdGhlIGRlZmF1bHQgY29udGVudCBvZiB0ZW1wbGF0ZXMgd2hlbiB5b3UgY2xpY2sgJnF1b3Q7QWRkIFRlbXBsYXRlJnF1b3Q7IGluIHRoZSBhcHByb3ByaWF0ZSB0ZW1wbGF0ZSB0YWIuICBFZGl0aW5nIG9uZSBvZiB0aGVzZSB0ZXh0IGFyZWFzIHdpbGwgaGF2ZSBubyBpbW1lZGlhdGUgZWZmZWN0IG9uIHlvdXIgd2Vic2l0ZS4KRU9UOwokbGFuZ1snZGVsZXRlJ10gPSAnRGVsZXRlJzsKJGxhbmdbJ2RlbGV0ZWNhdGVnb3J5J10gPSAnRGVsZXRlIENhdGVnb3J5JzsKJGxhbmdbJ2RlbGV0ZWNvbXBhbnknXSA9ICdEZWxldGUgQ29tcGFueSc7CiRsYW5nWydkZWxldGVmaWVsZGRlZiddID0gJ0RlbGV0ZSBGaWVsZCBEZWZpbml0aW9uJzsKJGxhbmdbJ2Rlc2NlbmRpbmcnXSA9ICdEZXNjZW5kaW5nJzsKJGxhbmdbJ2Rlc2NyaXB0aW9uJ10gPSAnRGVzY3JpcHRpb24nOwokbGFuZ1snZGV0YWlscyddID0gJ0RldGFpbHMnOwokbGFuZ1snZGV0YWlsc3RleHQnXSA9ICdEZXRhaWxzJzsKJGxhbmdbJ2RldGFpbHRlbXBsYXRlX2FkZGVkaXQnXSA9ICdBZGQvRWRpdCBhIERldGFpbCBUZW1wbGF0ZSc7CiRsYW5nWydkZXRhaWx0ZW1wbGF0ZXMnXSA9ICdEZXRhaWwgVGVtcGxhdGVzJzsKJGxhbmdbJ2RldGFpbHRlbXBsYXRldXBkYXRlZCddID0gJ0RldGFpbCBUZW1wbGF0ZSBVcGRhdGVkJzsKJGxhbmdbJ2Rpc2FibGVkJ10gPSAnRGlzYWJsZWQnOwokbGFuZ1snZG93biddID0gJ0Rvd24nOwokbGFuZ1snZHJhZnQnXSA9ICdEcmFmdCc7CiRsYW5nWydlZGl0J10gPSAnRWRpdCc7CiRsYW5nWydlZGl0Y2F0ZWdvcnknXSA9ICdFZGl0IENhdGVnb3J5JzsKJGxhbmdbJ2VkaXRjb21wYW55J10gPSAnRWRpdCBDb21wYW55JzsKJGxhbmdbJ2VkaXRmaWVsZGRlZiddID0gJ0VkaXQgRmllbGQgRGVmaW5pdGlvbic7CiRsYW5nWydlbWFpbHRleHQnXSA9ICdFbWFpbCc7CiRsYW5nWydlcnJvcl9iYWR1cGxvYWQnXSA9ICdBIHByb2JsZW0gb2NjdXJyZWQgd2l0aCB0aGUgdXBsb2FkZWQgZmlsZSc7CiRsYW5nWydlcnJvcl9jb21wYW55bmFtZSddID0gJ0NvbXBhbnkgTmFtZSBpcyBJbnZhbGlkJzsKJGxhbmdbJ2Vycm9yX2NvbXBhbnluYW1lX2ludXNlJ10gPSAnQSBDb21wYW55IGJ5IHRoYXQgbmFtZSBpcyBhbHJlYWR5IGluIHRoZSBkYXRhYmFzZSc7CiRsYW5nWydlcnJvcl9kdXBsaWNhdGVfY2F0ZWdvcnknXSA9ICdBIGNhdGVnb3J5IGJ5IHRoYXQgbmFtZSBhbHJlYWR5IGV4aXN0cyc7CiRsYW5nWydlcnJvcl9kdXBsaWNhdGVfY29tcGFueSddID0gJ0EgY29tcGFueSB3aXRoIHRoYXQgbmFtZSAoJXMpIGFscmVhZHkgZXhpc3RzJzsKJGxhbmdbJ2Vycm9yX2R1cGxpY2F0ZV9maWVsZGRlZiddID0gJ0EgZmllbGQgYnkgdGhhdCBuYW1lIGFscmVhZHkgZXhpc3RzJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydF9iYWRsaW5lJ10gPSAnQmFkIHJlY29yZCBmb3VuZCBhdCBsaW5lICVkLiAgSXMgdGhlcmUgYSBydWxlIG1pc3Npbmc/JzsKJGxhbmdbJ2Vycm9yX2ltcG9ydF9iYWR2YWx1ZSddID0gJ0EgYmFkIHZhbHVlIHdhcyBmb3VuZCBmb3IgdGhlICVzIGZpZWxkJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydF9kdXBsaWNhdGVydWxlJ10gPSAnRHVwbGljYXRlICVzIHJ1bGUgYXQgbGluZSAlZCc7CiRsYW5nWydlcnJvcl9pbXBvcnRfZHVwbGljYXRlcnVsZV9pZGVudGlmaWVyJ10gPSAnRHVwbGljYXRlIHJ1bGUgaWRlbnRpZmllciBhdCBsaW5lICVkJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydF91bmtub3ducm93J10gPSAnRG9udCBrbm93IGhvdyB0byBoYW5kbGUgbGluZSAlZCB3aXRoIHRoZSBydWxlIGlkZW50aWZpZXIgJXMnOwokbGFuZ1snZXJyb3JfaW1wb3J0X3Vua25vd25ydWxlJ10gPSAnVW5rbm93biBydWxlIGF0IGxpbmUgJWQnOwokbGFuZ1snZXJyb3JfaW5zZXJ0X2NhdGVnb3J5J10gPSAnQSBkYXRhYmFzZSBlcnJvciBvY2N1cnJlZCB0cnlpbmcgdG8gaW5zZXJ0IHRoZSBjYXRlZ29yeSBkZWZpbml0aW9uJzsKJGxhbmdbJ2Vycm9yX2luc2VydF9jb21wYW55J10gPSAnQSBkYXRhYmFzZSBlcnJvciBvY2N1cnJlZCB0cnlpbmcgdG8gaW5zZXJ0IHRoZSBjb21wYW55IGRlZmluaXRpb24nOwokbGFuZ1snZXJyb3JfaW5zZXJ0X2ZpZWxkZGVmJ10gPSAnQSBkYXRhYmFzZSBlcnJvciBvY2N1cnJlZCB0cnlpbmcgdG8gaW5zZXJ0IHRoZSBmaWVsZCBkZWZpbml0aW9uJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRfcGFyYW0nXSA9ICdUaGUgdmFsdWUgc3BlY2lmaWVkIGZvciAlcyBpcyBpbnZhbGlkJzsKJGxhbmdbJ2Vycm9yX21pc3Npbmd1cGxvYWQnXSA9ICdObyBmaWxlIHdhcyB1cGxvYWRlZCc7CiRsYW5nWydlcnJvcl9taXNzaW5ncGFyYW0nXSA9ICdBIHJlcXVpcmVkIHZhbHVlIHdhcyBtaXNzaW5nIGZyb20gdGhlIGZvcm0gaW5wdXQnOwokbGFuZ1snZXJyb3Jfbm9kcm9wZG93bm9wdGlvbnMnXSA9ICdObyBEcm9wZG93biBvcHRpb25zIHN1cHBsaWVkJzsKJGxhbmdbJ2Vycm9yX25vZmV1J10gPSAnQ291bGQgbm90IGZpbmQgdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlJzsKJGxhbmdbJ2Vycm9yX25vbGVuZ3RoJ10gPSAnTm8gbWF4aW11bSBsZW5ndGggZmllbGQgc3VwcGxpZWQnOwokbGFuZ1snZXJyb3Jfbm9yZXN1bHRzZm91bmQnXSA9ICdObyByZWNvcmRzIG1hdGNoaW5nIHlvdXIgY3JpdGVyaWEgY291bGQgYmUgZm91bmQgaW4gdGhlIGRhdGFiYXNlJzsKJGxhbmdbJ2Vycm9yX3Bvc3Rjb2RlX2xvb2t1cCddID0gJ0NvdWxkIG5vdCBmaW5kIGFueSBpbmZvcm1hdGlvbiBmb3IgcG9zdGFsL3ppcCBjb2RlICVzJzsKJGxhbmdbJ2Vycm9yX3ByZWZpeF9tc2cnXSA9ICdBbiBlcnJvciBvY2N1cnJlZCBhdCBsaW5lICVkOiAlcyc7CiRsYW5nWydleHBvcnRjc3YnXSA9ICdFeHBvcnQgQ1NWJzsKJGxhbmdbJ2ZheCddID0gJ0ZheCc7CiRsYW5nWydmYXh0ZXh0J10gPSAnRmF4JzsKJGxhbmdbJ2ZpZWxkZGVmJ10gPSAnRmllbGQgRGVmaW5pdGlvbic7CiRsYW5nWydmaWVsZGRlZnMnXSA9ICdGaWVsZCBEZWZpbml0aW9ucyc7CiRsYW5nWydmaWVsZGRlZnRleHQnXSA9ICdGaWVsZCBEZWZpbml0aW9uJzsKJGxhbmdbJ2ZpZWxkZGVmYWRkZWQnXSA9ICdGaWVsZCBEZWZpbml0aW9uIEFkZGVkJzsKJGxhbmdbJ2ZpZWxkZGVmdXBkYXRlZCddID0gJ0ZpZWxkIERlZmluaXRpb24gVXBkYXRlZCc7CiRsYW5nWydmaWVsZGRlZmRlbGV0ZWQnXSA9ICdGaWVsZCBEZWZpbml0aW9uIERlbGV0ZWQnOwokbGFuZ1snZmllbGRfY2hlY2tib3gnXSA9ICdDaGVja2JveCc7CiRsYW5nWydmaWVsZF9kcm9wZG93biddID0gJ0Ryb3Bkb3duJzsKJGxhbmdbJ2ZpZWxkX3RleHRhcmVhJ10gPSAnVGV4dCBBcmVhJzsKJGxhbmdbJ2ZpZWxkX3RleHRib3gnXSA9ICdUZXh0IElucHV0JzsKJGxhbmdbJ2ZpcnN0cGFnZSddID0gJzw8JzsKJGxhbmdbJ2Zyb250ZW5kZm9ybXRlbXBsYXRlX2FkZGVkaXQnXSA9ICdBZGQvRWRpdCBhIEZyb250ZW5kIEZvcm0gVGVtcGxhdGUnOwokbGFuZ1snZnJvbnRlbmRmb3JtdGVtcGxhdGVzJ10gPSAnRWRpdCBDb21wYW55IFRlbXBsYXRlcyc7CiRsYW5nWydmcm9udGVuZGZvcm10ZW1wbGF0ZXVwZGF0ZWQnXSA9ICdFZGl0IENvbXBhbnkgVGVtcGxhdGUgVXBkYXRlZCc7CiRsYW5nWydoZWxwJ10gPSA8PDxFT1QKPGgzPldoYXQgZG9lcyB0aGlzIGRvPzwvaDM+CjxwPlRoaXMgbW9kdWxlIHByb3ZpZGVzIGEgd2F5IHRvIGNvbGxlY3QsIG9yZ2FuaXplLCBhbmQgZGlzcGxheSBpbmZvcm1hdGlvbiBhYm91dCBjb21wYW5pZXMuICBVc3VhbGx5IHRoaXMgaXMgdGhlIGNvbnRhY3QgaW5mb3JtYXRpb24gYW5kIGEgbG9nbywgYnV0IGl0IGlzIGZsZXhpYmlsZSBlbm91Z2ggdG8gYWxsb3cgZm9yIGV4dGVuZGFibGUgZmllbGRzLCBhbmQgZGlzY3JpbWluYXRpbmcgcHVibGljIGZyb20gcHJpdmF0ZSBkYXRhLjwvcD4KPHA+VGhpcyBtb2R1bGUgY291bGQgYmUgdXNlZCBmb3IgYSB2YXJpZXR5IG9mIHB1cnBvc2VzLiBGcm9tIGEgc3VwcGxpZXJzIGxpc3QgdG8gYSBjb250YWN0IGxpc3QuICBJdCBpcyBmbGV4aWJsZSBlbm91Z2ggdGhhdCBpdCBjb3VsZCBiZSByZS11c2VkIGZvciBtYW55IGRpZmZlcmVudCBwdXJwb3Nlcy48L3A+CjxoMz5Ib3cgRG8gSSBVc2UgSXQ8L2gzPgo8cD5UaGUgZWFzaWVzdCB3YXkgdG8gdXNlIHRoaXMgbW9kdWxlIGlzIGJ5IHBsYWNpbmcgdGhlIDxjb2RlPntDb21wYW55RGlyZWN0b3J5fTwvY29kZT4gdGFnIGludG8gZWl0aGVyIHlvdXIgcGFnZSB0ZW1wbGF0ZSBvciBwYWdlIGNvbnRlbnQuICBZb3Ugd291bGQgdGhlbiBzdGFydCBlZGl0aW5nIHJlY29yZHMgaW4gdGhlICZxdW90O0NvbXBhbnkgRGlyZWN0b3J5JnF1b3Q7IGFkbWluIGludGVyZmFjZS4gIEV4cGxvcmUgdGhlIHZhcmlvdXMgcGFyYW1ldGVycyAoZGVzY3JpYmVkIGJlbG93KSBmb3Igd2F5cyB0byBjdXN0b21pemUgdGhlIGJlaGF2aW91ciBvZiB0aGUgbW9kdWxlLjwvcD4KPGgzPlNlY3VyaXR5PC9oMz4KPHA+SW4gb3JkZXIgdG8gbWFuYWdlIHRoZSBjb21wYW5pZXMgaW5zaWRlIHRoaXMgbW9kdWxlLCB0aGUgYWRtaW5pc3RyYXRvciBtdXN0IGhhdmUgdGhlICc8L2VtPk1vZGlmeSBDb21wYW55IERpcmVjdG9yeTwvZW0+JyBwZXJtaXNzaW9uLjwvcD4KPHA+SW4gb3JkZXIgdG8gZWRpdCB0aGUgYnVpbHQgaW4gdGVtcGxhdGVzIHRoYXQgY29udHJvbCB0aGUgbGF5b3V0IG9mIHRoZSBjb21wYW55ZGlyZWN0b3J5IGluZm9ybWF0aW9uLCB0aGUgYWRtaW5pc3RyYXRvciBuZWVkcyB0aGUgJzxlbT5Nb2RpZnkgVGVtcGxhdGVzPC9lbT4nIHBlcm1pc3Npb24uPC9wPgo8cD5UbyBhZGp1c3QgdGhlIHZhcmlvdXMgc2V0dGluZ3MsIHRoZSAnPGVtPk1vZGlmeSBTaXRlIFByZWZlcmVuY2VzPC9lbT4nIHBlcm1pc3Npb24gaXMgcmVxdWlyZWQuPC9wPgo8aDM+UHJldHR5IFVSTFM8L2gzPgo8cD5GdW5jdGlvbmFsaXR5IGFuZCBmbGV4aWJpbGl0eSBpcyByZWR1Y2VkIHdoZW4gdXNpbmcgcHJldHR5IHVybHMuICBGb3IgZXhhbXBsZSwgaWYgdXNpbmcgcHJldHR5IFVSTFMgd2l0aCB0aGlzIG1vZHVsZSwgeW91IHNob3VsZCBwb3N0IHRoZSB0YWcgZm9yIHRoaXMgbW9kdWxlIGluIHRoZSBkZWZhdWx0IGNvbnRlbnQgYmxvY2ssIGFuZCB3aGVuIGNsaWNraW5nIG9uIGEgbGluayBvciBzdWJtaXR0aW5nIGEgYnV0dG9uIGZyb20gdGhpcyBtb2R1bGUsIGl0J3MgcmVzdWx0cyB3aWxsIGFsd2F5cyByZXBsYWNlIHRoZSBkZWZhdWx0IGNvbnRlbnQgYmxvY2suPC9wPgpFT1Q7CiRsYW5nWydpZCddID0gJ0lkJzsKJGxhbmdbJ2luZm9fZHJvcGRvd25fb3B0aW9ucyddID0gJ1NwZWNpZnkgdGhlIG9wdGlvbnMgZm9yIHRoZSBkcm9wZG93biBjb250cm9sLiAgT25lIGxpbmUgcGVyIGVudHJ5LiAgU2VwZXJhdGUga2V5cyBmcm9tIHZhbHVlcyB3aXRoIHRoZSA9LiAgaS5lOiBrZXk9dmFsdWUnOwokbGFuZ1snaW1hZ2VjdXJyZW50aGlkZGVuJ10gPSAnJzsKJGxhbmdbJ2ltYWdldGV4dCddID0gJ0ltYWdlJzsKJGxhbmdbJ2ltcG9ydGNzdiddID0gJ0ltcG9ydCBDU1YnOwoKJGxhbmdbJ2xhdGl0dWRlJ10gPSAnTGF0aXR1ZGUnOwokbGFuZ1snbGFzdHBhZ2UnXSA9ICc+Pic7CiRsYW5nWydsb2dvY3VycmVudGhpZGRlbiddID0gJyc7CiRsYW5nWydsb2dvdGV4dCddID0gJ0xvZ28nOwokbGFuZ1snbG9uZ2l0dWRlJ10gPSAnTG9uZ2l0dWRlJzsKJGxhbmdbJ2xvb2t1cCddID0gJ0xvb2t1cCBDb29yZGluYXRlcyc7CgokbGFuZ1snbWF4bGVuZ3RoJ10gPSAnTWF4IExlbmd0aCc7CiRsYW5nWydtYXhfbGVuZ3RoJ10gPSAnTWF4IExlbmd0aCc7CiRsYW5nWydtYXhsZW5ndGh0ZXh0J10gPSAnTWF4IExlbmd0aCc7CiRsYW5nWydtb2RpZmllZGRhdGUnXSA9ICdEYXRlIExhc3QgTW9kaWZpZWQnOwoKJGxhbmdbJ25hbWUnXSA9ICdOYW1lJzsKJGxhbmdbJ25hbWV0ZXh0J10gPSAnTmFtZSc7CiRsYW5nWyduZWVkcGVybWlzc2lvbiddID0gJ1lvdSBuZWVkIHRoZSBcJyVzXCcgcGVybWlzc2lvbiB0byBwZXJmb3JtIHRoYXQgZnVuY3Rpb24uJzsKJGxhbmdbJ25vJ10gPSAnTm8nOwokbGFuZ1snbm9jb21wYW55bmFtZWdpdmVuJ10gPSAnTm8gQ29tcGFueSBOYW1lIEdpdmVuJzsKJGxhbmdbJ25vbmFtZWdpdmVuJ10gPSAnTm8gTmFtZSBHaXZlbic7CiRsYW5nWydub3RhbnVtYmVyJ10gPSAnTm90IGEgTnVtYmVyJzsKJGxhbmdbJ25leHRwYWdlJ10gPSAnPic7CgokbGFuZ1snb2YnXSA9ICdPZic7CgokbGFuZ1sncGFnZSddID0gJ1BhZ2UnOwokbGFuZ1sncGFyYW1fYWN0aW9uJ10gPSAnRGV0ZXJtaW5lIHRoZSBwcmltYXJ5IGJlaGF2aW91ciBvZiB0aGUgbW9kdWxlLiAgUG9zc2libGUgdmFsdWVzIGZvciB0aGlzIHBhcmFtZXRlciBhcmU6Cjx1bD4KICA8bGk+Y2F0ZWdvcnlsaXN0IC0tIERpc3BsYXkgYSBsaXN0IG9mIGNhdGVnb3JpZXMuICBVc2VycyBjYW4gZHJpbGwgZG93biB0byBzdW1tYXJ5IG1vZGUsIGFuZCB0aGVuIHRvIGRldGFpbCBtb2RlLjwvbGk+CiAgPGxpPjxzdHJvbmc+ZGVmYXVsdDwvc3Ryb25nPiAtLSBEaXNwbGF5IGNvbXBhbmllcyBpbiBhIHN1bW1hcnkgbW9kZS48L2xpPgogIDxsaT5kZXRhaWxzIC0tIERpc3BsYXkgZGV0YWlsZWQgaW5mb3JtYXRpb24gYWJvdXQgYSBzcGVjaWZpYyBjb21wYW55LjwvbGk+CiAgPGxpPmZlX2VkaXQgLS0gRGlzcGxheSBhIGZvcm0gdG8gYWxsb3cgZWRpdGluZyBpbmZvcm1hdGlvbiBhYm91dCBhIHNwZWNpZmljIGNvbXBhbnkuPC9saT4KPGxpPmZyb250ZW5kbGlzdCAtLSBEaXNwbGF5IGxpc3Qgb2YgYWxsIG9mIGEgdXNlcnMgY29tcGFueSBlbnRyaWVzIG9uIHRoZSBmcm9udGVuZCwgd2l0aCB0aGUgb3B0aW9uYWwgYWJpbGl0eSB0byBhZGQgaXRlbXMuPC9saT4KICA8bGk+c2VhcmNoICAtLSBEaXNwbGF5IGEgZm9ybSB0byBhbGxvdyBzZWFyY2hpbmcgZm9yIHNwZWNpZmljIGNvbXBhbmllcy48L2xpPgogIDxsaT5icm93c2VoaWVyIC0tIERpc3BsYXkgYSBsaXN0IG9mIGhpZXJhcmNoaWVzLiAgVXNlcnMgY2FuIGRyaWxsIGRvd24gdG8gc3VtbWFyeSBtb2RlIGFuZCB0aGVuIHRvIGRldGFpbCBtb2RlLjwvbGk+CiAgIAo8L3VsPgonOwokbGFuZ1sncGFyYW1faW5saW5lJ10gPSAnQXBwbGljYWJsZSBvbmx5IHRvIHRoZSA8ZW0+ZGVmYXVsdDwvZW0+IHN1bW1hcnksIGFuZCA8ZW0+c2VhcmNoPC9lbT4gbW9kZXMsIHRoaXMgcGFyYW1ldGVyIGFsbG93cyBzcGVjaWZ5aW5nIHdldGhlciB0aGUgcmVzdWx0aW5nIGRhdGEgc2hvdWxkIHJlcGxhY2UgdGhlIGRlZmF1bHQgY29udGVudCBibG9jaywgb3Igc2hvdWxkIHJlcGxhY2UgdGhlIG9yaWdpbmFsIHRhZyAoaW5saW5lKS4nOwokbGFuZ1sncGFyYW1fc2VhcmNoZm9ybXRlbXBsYXRlJ10gPSAnQXBwbGljYWJsZSBvbmx5IHRvIHRoZSA8ZW0+c2VhcmNoPC9lbT4gbW9kZSwgdGhpcyBwYXJhbWV0ZXIgYWxsb3dzIHNwZWNpZnlpbmcgYSBub24gZGVmYXVsdCBzZWFyY2ggZm9ybSB0ZW1wbGF0ZS4nOwokbGFuZ1sncGFyYW1fcGFnZWxpbWl0J10gPSAnV2hlbiB1c2VkIHdpdGggdGhlIDxlbT5kZWZhdWx0PC9lbT4gc3VtbWFyeSBtb2RlLCBvciB0aGUgPGVtPnNlYXJjaDwvZW0+IG1vZGUsIHRoaXMgd2lsbCBsaW1pdCB0aGUgcmVzdWx0cyB0byBhIHNwZWNpZmllZCBudW1iZXIuJzsKJGxhbmdbJ3BhcmFtX2NhdGVnb3J5J10gPSAnV2hlbiB1c2VkIGluIHRoZSA8ZW0+ZGVmYXVsdDwvZW0+IHN1bW1hcnkgbW9kZSwgdGhpcyBwYXJhbWV0ZXIsIHdoaWNoIHNob3VsZCBtYXRjaCB0aGUgbmFtZSBvZiBhbiBleGlzdGluZyBjYXRlZ29yeSB3aWxsIGJlIHVzZWQgdG8gZGlzcGxheSBvbmx5IHRob3NlIGNvbXBhbmllcyB0aGF0IGFyZSBpbiB0aGF0IGNhdGVnb29yeS4gKGEgY29tbWEgc2VwZXJhdGVkIGxpc3QgY2FuIGJlIHN1cHBsaWVkKS4gIFdoZW4gdXNlZCBpbiB0aGUgPGVtPmNhdGVnb3J5bGlzdDwvZW0+IGFjdGlvbiwgdGhpcyBwYXJhbWV0ZXIgYWxsb3dzIHNwZWNpZnlpbmcgYSBjb21tYSBzZXBhcmF0ZWQgbGlzdCBvZiBjYXRlZ29yeSBuYW1lcyB0byBmaWx0ZXIgdGhlIHJlc3VsdHMgYnkuJzsKJGxhbmdbJ3BhcmFtX2NhdGVnb3J5bGlzdHRlbXBsYXRlJ10gPSAnU3BlY2lmeSBhIHRlbXBsYXRlIChieSBuYW1lKSB0byB1c2Ugd2hlbiBkaXNwbGF5aW5nIHRoZSBjYXRlZ29yeSBsaXN0IHZpZXcuJzsKJGxhbmdbJ3BhcmFtX2NvbXBhbnlpZCddID0gJ1JlcXVpcmVkIGZvciB0aGUgZnJvbnRlbmQgZWRpdGluZyBhbmQgZGV0YWlsIG1vZGVzLCB0aGlzIHBhcmFtZXRlciBkZXRlcm1pbmVzIHdoaWNoIGNvbXBhbnkgcmVjb3JkIHRvIGVkaXQgb3Igdmlldy4nOwokbGFuZ1sncGFyYW1fZGV0YWlscGFnZSddID0gJ1NwZWNpZnkgYSBwYWdlIGFsaWFzIChieSBuYW1lKSB0byB1c2UgZm9yIGRpc3BsYXlpbmcgYSBkZXRhaWwgcmVjb3JkLiA8c3Ryb25nPk5vdGU6PC9zdHJvbmc+IFRoaXMgdGFnIHBhcmFtZXRlciBpcyBub3QgY29tcGF0aWJsZSB3aXRoIHByZXR0eSB1cmxzLic7CiRsYW5nWydwYXJhbV9kZXRhaWx0ZW1wbGF0ZSddID0gJ1NwZWNpZnkgYSB0ZW1wbGF0ZSAoYnkgbmFtZSkgdG8gdXNlIHdoZW4gZGlzcGxheWluZyB0aGUgZGV0YWlsIHZpZXcuICA8c3Ryb25nPk5vdGU6PC9zdHJvbmc+IFRoaXMgdGFnIHBhcmFtZXRlciBpcyBub3QgY29tcGF0aWJsZSB3aXRoIHByZXR0eSB1cmxzLic7CiRsYW5nWydwYXJhbV9mcm9udGVuZGZvcm10ZW1wbGF0ZSddID0gJ1NwZWNpZnkgYSB0ZW1wbGF0ZSAoYnkgbmFtZSkgdG8gdXNlIHdoZW4gZGlzcGxheWluZyB0aGUgZnJvbnQgZW5kIGNvbXBhbnkgZWRpdCBmb3JtLic7CiRsYW5nWydwYXJhbV9zaG93YWxsJ10gPSAnQXBwbGljYWJsZSBvbmx5IHRvIHRoZSBjYXRlZ29yeWxpc3QgYWN0aW9uLCBpZiB0aGlzIHBhcmFtZXRlciBpcyBzZXQsIHRoZW4gZXZlbiBjYXRlZ29yaWVzIHdpdGggbm8gbWF0Y2hpbmcgY29tcGFuaWVzIHdpbGwgYmUgZGlzcGxheWVkIGluIHRoZSBvdXRwdXQnOwokbGFuZ1sncGFyYW1fc29ydG9yZGVyJ10gPSAnU3BlY2lmeSB0aGUgb3JkZXIgb2Ygc29ydGVkIGZpZWxkcyBpbiBzdW1tYXJ5IHZpZXcuICBQb3NzaWJsZSB2YWx1ZXMgYXJlOgo8dWw+CiAgPGxpPjxzdHJvbmc+YXNjPC9zdHJvbmc+IC0tIEFzY2VuZGluZyBvcmRlcjwvbGk+CiAgPGxpPmRlc2MgLS0gRGVzY2VuZGluZyBvcmRlcjwvbGk+CjwvdWw+JzsKJGxhbmdbJ3BhcmFtX3NvcnRieSddID0gJ0FwcGxpY2FibGUgb25seSBpbiBzdW1tYXJ5IG1vZGUsIHRoaXMgcGFyYW1ldGVyIGRldGVybWluZXMgdGhlIHNvcnRpbmcgb2YgdGhlIG91dHB1dCBjb21wYW5pZXMuICBQb3NzaWJsZSB2YWx1ZXMgYXJlOgo8dWw+CjxsaT5pZCAtLSBUaGUgaW50ZXJuYWwgY29tcGFueSBpZDwvbGk+CiAgPGxpPjxzdHJvbmc+Y29tcGFueV9uYW1lPC9zdHJvbmc+PC9saT4KICA8bGk+cGhvbmU8L2xpPgogIDxsaT5mYXg8L2xpPgogIDxsaT5lbWFpbDwvbGk+CiAgPGxpPndlYnNpdGUgLS0gVGhlIHdlYnNpdGUgdXJsPC9saT4KICA8bGk+Y3JlYXRlZCAtLSBUaGUgY3JlYXRpb24gZGF0ZSBmb3IgdGhpcyBjb21wYW55IHJlY29yZDwvbGk+CiAgPGxpPm1vZGlmaWVkIC0tIFRoZSBtb2RpZmllZCBkYXRlIGZvciB0aGlzIGNvbXBhbnkgcmVjb3JkPC9saT4KICA8bGk+c3RhdHVzPC9saT4KICA8bGk+cmFuZG9tIC0tIFNvcnQgdGhlIGl0ZW1zIHJhbmRvbWx5LjwvbGk+CiAgPGxpPmY6ZmllbGQgbmFtZSAtLSBTb3J0IGJ5IHB1YmxpYyBjdXN0b20gZmllbGRzLiBUaGUgb3V0cHV0IHdpbGwgYmUgc29ydGVkIGJ5IHRoZSBuYW1lZCBjdXN0b20gZmllbGQuPGJyLz4KICA8c3Ryb25nPk5vdGU6IDwvc3Ryb25nPiBZb3UgbWF5IG5lZWQgdG8gdXNlIHF1b3RlcyBpZiB0aGUgZmllbGQgbmFtZSBoYXMgc3BhY2VzLjxici8+CiAgPHN0cm9uZz5Ob3RlOiA8L3N0cm9uZz4gVGhlIGZpZWxkIHNwZWNpZmllZCBtdXN0IGJlIG1hcmtlZCBhcyBwdWJsaWMuPC9saT4KICA8c3Ryb25nPk5vdGU6IDwvc3Ryb25nPiBXaGVuIHVzaW5nIGN1c3RvbSBmaWVsZCBzb3J0aW5nLCBZb3UgbWF5IGFsc28gc3BlY2lmeSBhIGZsYWcgYWZ0ZXIgdGhlIGZpZWxkIG5hbWUgdG8gaW5kaWNhdGUgdGhhdCBpbnRlZ2VyIHNvcnRpbmcgc2hvdWxkIGJlIHBlcmZvcm1lZC4gIGkuZTogPGNvZGU+c29ydGJ5PWY6Y3VzdG9tX29yZGVyaW5nOmk8L2NvZGU+PGJyLz4KPC91bD4nOwokbGFuZ1sncGFyYW1fc3VtbWFyeXRlbXBsYXRlJ10gPSAnU3BlY2lmeSBhIHRlbXBsYXRlIChieSBuYW1lKSB0byB1c2Ugd2hlbiBkaXNwbGF5aW5nIHRoZSBzdW1tYXJ5IHZpZXcuICA8c3Ryb25nPk5vdGU6PC9zdHJvbmc+IFRoaXMgdGFnIHBhcmFtZXRlciBpcyBub3QgY29tcGF0aWJsZSB3aXRoIHByZXR0eSB1cmxzLic7CgokbGFuZ1sncG9zdGFsX2NvZGUnXSA9ICdQb3N0YWwvWmlwIGNvZGUnOwokbGFuZ1sncG9zdGluc3RhbGwnXSA9ICdDb21wYW55IERpcmVjdG9yeSBtb2R1bGUgc3VjY2Vzc2Z1bGx5IGluc3RhbGxlZCc7CiRsYW5nWydwb3N0dW5pbnN0YWxsJ10gPSAnVGhlIENvbXBhbnkgRGlyZWN0b3J5IG1vZHVsZSBzdWNjZXNzZnVsbHkgdW5pbnN0YWxsZWQuICBBbGwgYXNzb2NpYXRlZCBjb21wYW55IGRhdGEgaGFzIGJlZW4gZXJhc2VkJzsKJGxhbmdbJ3ByZXVuaW5zdGFsbCddID0gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byB1bmluc3RhbGwgdGhpcyBtb2R1bGU/IFVuaW5zdGFsbGluZyB0aGlzIG1vZHVsZSB3aWxsIHBlcm1hbmVudGx5IGVyYXNlIGFsbCBhc3NvY2lhdGVkIGNvbXBhbnkgZGF0YS4nOwokbGFuZ1sncHJldnBhZ2UnXSA9ICc8JzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yaWVzX2ltcG9ydGVkJ10gPSAnQ2F0ZWdvcmllcyBJbXBvcnRlZCc7CiRsYW5nWydwcm9tcHRfY2hlY2tfZHVwbGljYXRlcyddID0gJ0NoZWNrIGZvciBkdXBsaWNhdGUgY29tcGFueSBuYW1lcz8nOwokbGFuZ1sncHJvbXB0X2NvbGxlY3RzdGF0cyddID0gJ0NvbGxlY3QgU2VhcmNoIFN0YXRpc3RpY3MnOwokbGFuZ1sncHJvbXB0X2NvbXBhbmllc19pbXBvcnRlZCddID0gJ0NvbXBhbmllcyBJbXBvcnRlZCc7CiRsYW5nWydwcm9tcHRfZGVsaW1ldGVyJ10gPSAnRmllbGQgRGVsaW1ldGVyJzsKJGxhbmdbJ3Byb21wdF9kZXRhaWxwYWdlJ10gPSAnVGhlIGRlZmF1bHQgcGFnZSB0byB1c2UgZm9yIGRldGFpbCB2aWV3cy4gIElmIHNldCB0byAmcXVvdDtOb25lJnF1b3Q7IHRoZSBjYWxsaW5nIHBhZ2Ugd2lsbCBiZSB1c2VkLic7CiRsYW5nWydwcm9tcHRfZHJvcGRvd25fb3B0aW9ucyddID0gJ0Ryb3Bkb3duIE9wdGlvbnMnOwokbGFuZ1sncHJvbXB0X2ZpZWxkZGVmc19pbXBvcnRlZCddID0gJ0ZpZWxkIERlZmluaXRpb25zIEltcG9ydGVkJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRfY2F0ZWdvcnlkZWZzJ10gPSAnQ3JlYXRlIG1pc3NpbmcgY2F0ZWdvcmllcyBvbiBpbXBvcnQnOwokbGFuZ1sncHJvbXB0X2ltcG9ydF9jYXRlZ29yeXZhbHMnXSA9ICdQb3B1cGxhdGUgY2F0ZWdvcnkgdmFsdWVzIG9uIGltcG9ydCc7CiRsYW5nWydwcm9tcHRfaW1wb3J0X2NzdmZpbGUnXSA9ICdVcGxvYWQgQ1NWIEZpbGUnOwokbGFuZ1sncHJvbXB0X2ltcG9ydF9maWVsZGRlZnMnXSA9ICdDcmVhdGUgbWlzc2luZyAmcXVvdDthZGRpdGlvbmFsIGZpZWxkJnF1b3Q7IGRlZmluaXRpb25zIG9uIGltcG9ydCc7CiRsYW5nWydwcm9tcHRfaW1wb3J0X2ZpZWxkdmFscyddID0gJ1BvcHVsYXRlICZxdW90O2FkZGl0aW9uYWwgZmllbGQmcXVvdDsgdmFsdWVzIG9uIGltcG9ydCc7CiRsYW5nWydwcm9tcHRfaW1wb3J0X2xvb2t1cGxhdGxvbmcnXSA9ICdMb29rdXAgbGF0aXR1ZGUgYW5kIGxvbmdpdHVkZSB2YWx1ZXMgaWYgbWlzc2luZyc7CiRsYW5nWydwcm9tcHRfcGFnZWxpbWl0J10gPSAnVGhlIG51bWJlciBvZiByZWNvcmRzIHRvIHZpZXcgcGVyIHBhZ2UgaW4gc3VtbWFyeSBtb2RlJzsKJGxhbmdbJ3Byb21wdF9zdW1tYXJ5c29ydGluZyddID0gJ0RlZmF1bHQgc29ydGluZyBpbiBzdW1tYXJ5IG1vZGUnOwokbGFuZ1sncHJvbXB0X3N1bW1hcnlzb3J0b3JkZXInXSA9ICdUaGUgZGVmYXVsdCBzb3J0IG9yZGVyIGluIHN1bW1hcnkgbW9kZSA8ZW0+KGRvZXMgbm90IGFwcGx5IHdoZW4gc29ydGluZyBpcyBcJ3JhbmRvbVwnPC9lbT4nOwokbGFuZ1sncHJvbXB0X3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUnOwokbGFuZ1sncHVibGljJ10gPSAnUHVibGljJzsKJGxhbmdbJ3B1Ymxpc2hlZCddID0gJ1B1Ymxpc2hlZCc7CiRsYW5nWydwcmVmZXJlbmNlcyddID0gJ1ByZWZlcmVuY2VzJzsKCiRsYW5nWydyYWRpdXMnXSA9ICdSYWRpdXMnOwokbGFuZ1sncmFuZG9tJ10gPSAnUmFuZG9tJzsKJGxhbmdbJ3JldHVybiddID0gJ1JldHVybic7CiRsYW5nWydyZXNldHRvZmFjdG9yeSddID0gJ1Jlc2V0IHRvIERlZmF1bHRzJzsKJGxhbmdbJ3Jlc3RvcmV0b2RlZmF1bHRzbXNnJ10gPSAnVGhpcyBvcGVyYXRpb24gd2lsbCByZXN0b3JlIHRoZSB0ZW1wbGF0ZSBjb250ZW50cyB0byB0aGVpciBzeXN0ZW0gZGVmYXVsdHMuICBBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gcHJvY2VkZT8nOwoKJGxhbmdbJ3NlYXJjaCddID0gJ1NlYXJjaCc7CiRsYW5nWydzZWFyY2hlcyddID0gJ1NlYXJjaGVzJzsKJGxhbmdbJ3NlYXJjaGZvcm10ZW1wbGF0ZXMnXSA9ICdTZWFyY2ggRm9ybSBUZW1wbGF0ZXMnOwokbGFuZ1snc2VhcmNoZm9ybXRlbXBsYXRlX2FkZGVkaXQnXSA9ICdBZGQvRWRpdCBhIFNlYXJjaCBGb3JtIFRlbXBsYXRlJzsKJGxhbmdbJ3N0YXR1cyddID0gJ1N0YXR1cyc7CiRsYW5nWydzdWJtaXQnXSA9ICdTdWJtaXQnOwokbGFuZ1snc3VtbWFyeXRlbXBsYXRlX2FkZGVkaXQnXSA9ICdBZGQvRWRpdCBhIFN1bW1hcnkgVGVtcGxhdGUnOwokbGFuZ1snc3VtbWFyeXRlbXBsYXRlcyddID0gJ1N1bW1hcnkgVGVtcGxhdGVzJzsKJGxhbmdbJ3N1bW1hcnl0ZW1wbGF0ZXVwZGF0ZWQnXSA9ICdTdW1tYXJ5IFRlbXBsYXRlIFVwZGF0ZWQnOwokbGFuZ1snc3lzZGVmYXVsdHMnXSA9ICdSZXN0b3JlIHRvIGRlZmF1bHRzJzsKCiRsYW5nWyd0ZWxlcGhvbmUnXSA9ICdUZWxlcGhvbmUnOwokbGFuZ1sndGVsZXBob25ldGV4dCddID0gJ1RlbGVwaG9uZSc7CiRsYW5nWyd0aXRsZV9jYXRlZ29yeWxpc3RfZGZsdHRlbXBsYXRlJ10gPSAnRGVmYXVsdCBDYXRlZ29yeSBMaXN0IFRlbXBsYXRlJzsKJGxhbmdbJ3RpdGxlX2RldGFpbF9kZmx0dGVtcGxhdGUnXSA9ICdEZWZhdWx0IERldGFpbCBUZW1wbGF0ZSc7CiRsYW5nWyd0aXRsZV9mcm9udGVuZGZvcm1fZGZsdHRlbXBsYXRlJ10gPSAnRGVmYXVsdCBGcm9udGVuZCBGb3JtIFRlbXBsYXRlJzsKJGxhbmdbJ3RpdGxlX2ltcG9ydF9yZXBvcnQnXSA9ICdDU1YgSW1wb3J0IFJlcG9ydCc7CiRsYW5nWyd0aXRsZV9zZWFyY2hmb3JtX2RmbHR0ZW1wbGF0ZSddID0gJ0RlZmF1bHQgU2VhcmNoIEZvcm0gVGVtcGxhdGUnOwokbGFuZ1sndGl0bGVfc3VtbWFyeV9kZmx0dGVtcGxhdGUnXSA9ICdEZWZhdWx0IFN1bW1hcnkgVGVtcGxhdGUnOwokbGFuZ1sndHlwZSddID0gJ1R5cGUnOwokbGFuZ1sndHlwZXRleHQnXSA9ICdUeXBlJzsKCiRsYW5nWyd1cCddID0gJ1VwJzsKCiRsYW5nWyd3ZWJzaXRlJ10gPSAnV2Vic2l0ZSc7CiRsYW5nWyd3ZWJzaXRldGV4dCddID0gJ1dlYnNpdGUnOwoKJGxhbmdbJ3llcyddID0gJ1llcyc7Cj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/lang/ext/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lang/ext/cs_CZ.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2FjdGl2ZSddID0gJ0FrdGl2biZpYWN1dGU7JzsKJGxhbmdbJ2FkZGxpbmsnXSA9ICdQxZlpZGF0IG9ka2F6JzsKJGxhbmdbJ2FkZHJlc3MnXSA9ICdBZHJlc2EnOwokbGFuZ1snYWRkcmVzc3RleHQnXSA9ICdBZHJlc2EnOwokbGFuZ1snYWRkY2F0ZWdvcnknXSA9ICdQxZlpZGF0IGthdGVnb3JpaSc7CiRsYW5nWydhZGRjb21wYW55J10gPSAnUMWZaWRhdCBzcG9sZcSNbm9zdCc7CiRsYW5nWydhZGRmaWVsZGRlZiddID0gJ1DFmWlkYXQgZGVmaW5pY2kgZm9ybXVsJmFhY3V0ZTvFmW92JmVhY3V0ZTtobyBwb2xlJzsKJGxhbmdbJ2FkbWluX29ubHknXSA9ICdWaWRpdGVsbiZlYWN1dGU7IHBvdXplIHBybyBhZG1pbmlzdHImYWFjdXRlO3RvcnknOwokbGFuZ1snYXJleW91c3VyZSddID0gJ0pzdGUgc2kgamlzdGkgb2RlYnImYWFjdXRlO24maWFjdXRlO20gdCZlYWN1dGU7dG8gcG9sb8W+a3k/JzsKJGxhbmdbJ2FzY2VuZGluZyddID0gJ1Z6ZXN0dXBuxJsnOwokbGFuZ1snY2FuY2VsJ10gPSAnU3Rvcm5vJzsKJGxhbmdbJ2NhbnVzZXJlZGl0J10gPSAnTW9ob3UgdcW+aXZhdGVsJmVhY3V0ZTsgc3RyJmFhY3V0ZTtuZWsgZWRpdG92YXQgdG90byBwb2xlPyc7CiRsYW5nWydjYW51c2VydmlldyddID0gJ01vaG91IHXFvml2YXRlbCZlYWN1dGU7IHN0ciZhYWN1dGU7bmVrIHByb2hsJmlhY3V0ZTvFvmV0IHRvdG8gcG9sZT8nOwokbGFuZ1snY2F0ZWdvcnknXSA9ICdLYXRlZ29yaWUnOwokbGFuZ1snY2F0ZWdvcmllcyddID0gJ0thdGVnb3JpZSc7CiRsYW5nWydjYXRlZ29yeXRleHQnXSA9ICdLYXRlZ29yaWUnOwokbGFuZ1snY2F0ZWdvcnlhZGRlZCddID0gJ0thdGVnb3JpZSBwxZlpZCZhYWN1dGU7bmEnOwokbGFuZ1snY2F0ZWdvcnl1cGRhdGVkJ10gPSAnS2F0ZWdvcmllIGFrdHVhbGl6b3YmYWFjdXRlO25hJzsKJGxhbmdbJ2NhdGVnb3J5bGlzdHRlbXBsYXRlX2FkZGVkaXQnXSA9ICdQxZlpZGF0L1VwcmF2aXQgJnNjYXJvbjthYmxvbnUgc2V6bmFtdSBrYXRlZ29yaSZpYWN1dGU7JzsKJGxhbmdbJ2NhdGVnb3J5bGlzdHRlbXBsYXRlcyddID0gJyZTY2Fyb247YWJsb255IHNlem5hbXUga2F0ZWdvcmkmaWFjdXRlOyc7CiRsYW5nWydjYXRlZ29yeWxpc3R0ZW1wbGF0ZXVwZGF0ZWQnXSA9ICdTZXpuYW0ga2F0ZWdvcmkmaWFjdXRlOyB1cHJhdmVuJzsKJGxhbmdbJ2NoYW5nZWxvZyddID0gJzx1bD4NCiAgPGxpPjEuMSAtIFNlcHRlbWJlciwgMjAwNyA8ZW0+KHJjYW1wYmVsbEBza2lubnlmaXNobWVkaWEuY29tKTwvZW0+DQogICAgPHVsPg0KICAgICAgPGxpPkFkZGVkIHN1cHBvcnQgZm9yIHByZXR0eSB1cmxzPC9saT4NCiAgICAgIDxsaT5GaWxsZWQgb3V0IHRoZSBoZWxwPC9saT4NCiAgICAgIDxsaT5BZGRlZCBhIGNhdGVnb3J5IGxpc3QgbW9kZTwvbGk+DQogICAgICA8bGk+QWRkZWQgc3VwcG9ydCBmb3IgZnJvbnRlbmQgZWRpdGluZyBvZiBjb21wYW5pZXM8L2xpPg0KICAgICAgPGxpPkFkZGVkIHN1cHBvcnQgZm9yIHB1YmxpYyBhbmQgYWRtaW4gb25seSBmaWVsZHMgaW4gY29tcGFuaWVzPC9saT4NCiAgICAgIDxsaT5BZGRlZCBkaWZmZXJlbnQgc29ydGluZyBjYXBhYmlsaXRpZXMgaW4gc3VtbWFyeSB2aWV3PC9saT4NCiAgICAgIDxsaT5DaGFuZ2VkIE1pbmltdW0gQ01TIFZlcnNpb24gYW5kIGFkZGVkIHN1cHBvcnQgZm9yIHRoZSAxLjEgc2VyaWVzPC9saT4NCiAgICA8L3VsPg0KICA8L2xpPg0KPC91bD4NCic7CiRsYW5nWydjb21wYW55J10gPSAnU3BvbGXEjW5vc3QnOwokbGFuZ1snY29tcGFueWFkZGVkJ10gPSAnU3BvbGXEjW5vc3QgcMWZaWQmYWFjdXRlO25hJzsKJGxhbmdbJ2NvbXBhbnluYW1lJ10gPSAnSm0mZWFjdXRlO25vIHNwb2xlxI1ub3N0aSc7CiRsYW5nWydjb21wYW55dXBkYXRlZCddID0gJ1Nwb2xlxI1ub3N0IGFrdHVhbGl6b3YmYWFjdXRlO25hJzsKJGxhbmdbJ2NvbXBhbmllcyddID0gJ1Nwb2xlxI1ub3N0aSc7CiRsYW5nWydjb21wYW55dGV4dCddID0gJ1Nwb2xlxI1ub3N0JzsKJGxhbmdbJ2NvbXBhbnlkaXJlY3RvcnknXSA9ICdBZHJlcyZhYWN1dGU7xZkgc3BvbGXEjW5vc3QmaWFjdXRlOyc7CiRsYW5nWydjb250YWN0ZW1haWwnXSA9ICdLb250YWt0biZpYWN1dGU7IGUtbWFpbCc7CiRsYW5nWydjcmVhdGVkZGF0ZSddID0gJ0RhdHVtIHZsb8W+ZW4maWFjdXRlOyc7CiRsYW5nWydkZWZhdWx0dGVtcGxhdGVzJ10gPSAnViZ5YWN1dGU7Y2hveiZpYWN1dGU7ICZzY2Fyb247YWJsb255JzsKJGxhbmdbJ2RlZmF1bHRfdGVtcGxhdGVfbm90aWNlJ10gPSAnPHN0cm9uZz5Qb3puJmFhY3V0ZTtta2E6PC9zdHJvbmc+IE9ic2FoIHTEm2NodG8gZm9ybWwmYWFjdXRlO8WZb3YmeWFjdXRlO2NoIHBvbCZpYWN1dGU7IGplIHBvdcW+JmlhY3V0ZTt2JmFhY3V0ZTtuIGsgdXLEjWVuJmlhY3V0ZTsgdiZ5YWN1dGU7Y2hveiZpYWN1dGU7aG8gb2JzYWh1ICZzY2Fyb247YWJsb24sIGtkecW+IGtsaWtuZXRlIG5hICZhbXA7cXVvdDtQxZlpZGF0ICZzY2Fyb247YWJsb251JmFtcDtxdW90OyB2IHomYWFjdXRlO2xvxb5jZSBwxZkmaWFjdXRlO3NsdSZzY2Fyb247biZlYWN1dGU7aG8gdHlwdSAmc2Nhcm9uO2FibG9ueS4gJlVhY3V0ZTtwcmF2YSB0xJtjaHRvIHBvbCZpYWN1dGU7IG5lYnVkZSBtJmlhY3V0ZTt0IMW+JmFhY3V0ZTtkbiZ5YWN1dGU7IG9rYW3Fvml0JnlhY3V0ZTsgJnVhY3V0ZTvEjWluZWsgbmEgdmEmc2Nhcm9uO2kgc3RyJmFhY3V0ZTtua3UuJzsKJGxhbmdbJ2RlbGV0ZSddID0gJ1NtYXphdCc7CiRsYW5nWydkZWxldGVjYXRlZ29yeSddID0gJ1NtYXphdCBrYXRlZ29yaWknOwokbGFuZ1snZGVsZXRlY29tcGFueSddID0gJ1NtYXphdCBzcG9sZcSNbm9zdCc7CiRsYW5nWydkZWxldGVmaWVsZGRlZiddID0gJ1NtYXphdCBkZWZpbmljaSBwb2xlJzsKJGxhbmdbJ2Rlc2NlbmRpbmcnXSA9ICdTZXN0dXBuxJsnOwokbGFuZ1snZGVzY3JpcHRpb24nXSA9ICdQb3Bpc2VrJzsKJGxhbmdbJ2RldGFpbHMnXSA9ICdEZXRhaWx5JzsKJGxhbmdbJ2RldGFpbHN0ZXh0J10gPSAnRGV0YWlseSc7CiRsYW5nWydkZXRhaWx0ZW1wbGF0ZV9hZGRlZGl0J10gPSAnUMWZaWRhdC9VcHJhdml0ICZzY2Fyb247YWJsb251IGRldGFpbHUnOwokbGFuZ1snZGV0YWlsdGVtcGxhdGVzJ10gPSAnJlNjYXJvbjthYmxvbnkgZGV0YWlsdSc7CiRsYW5nWydkZXRhaWx0ZW1wbGF0ZXVwZGF0ZWQnXSA9ICcmU2Nhcm9uO2FibG9uYSBkZXRhaWx1IGJ5bGEgYWt0dWFsaXpvdiZhYWN1dGU7bmEnOwokbGFuZ1snZGlzYWJsZWQnXSA9ICdEZWFrdGl2b3YmYWFjdXRlO25vJzsKJGxhbmdbJ2Rvd24nXSA9ICdEb2zFryc7CiRsYW5nWydkcmFmdCddID0gJ04mYWFjdXRlO3ZyaCc7CiRsYW5nWydlZGl0J10gPSAnVXByYXZpdCc7CiRsYW5nWydlZGl0Y2F0ZWdvcnknXSA9ICdVcHJhdml0IGthdGVnb3JpaSc7CiRsYW5nWydlZGl0Y29tcGFueSddID0gJ1VwcmF2aXQga2F0ZWdvcmlpJzsKJGxhbmdbJ2VkaXRmaWVsZGRlZiddID0gJ1VwcmF2aXQgZGVmaW5pY2kgcG9sZSc7CiRsYW5nWydlbWFpbHRleHQnXSA9ICdFLW1haWwnOwokbGFuZ1snZXJyb3JfY29tcGFueW5hbWUnXSA9ICdKbSZlYWN1dGU7bm8gc3BvbGXEjW5vc3RpIGplIG5lcGxhdG4mZWFjdXRlOyc7CiRsYW5nWydlcnJvcl9jb21wYW55bmFtZV9pbnVzZSddID0gJ1Nwb2xlxI1ub3N0IHRvaG90byBqbSZlYWN1dGU7bmEgamUgamkmeWFjdXRlOyB2IGRhdGFiJmFhY3V0ZTt6aSc7CiRsYW5nWydlcnJvcl9ub2ZldSddID0gJ01vZHVsIEZyb250RW5kVXNlcnMgbmVieWwgbmFsZXplbic7CiRsYW5nWydleHBvcnRjc3YnXSA9ICdFeHBvcnRvdmF0IGpha28gQ1NWJzsKJGxhbmdbJ2ZheCddID0gJ0ZheCc7CiRsYW5nWydmYXh0ZXh0J10gPSAnRmF4JzsKJGxhbmdbJ2ZpZWxkZGVmJ10gPSAnRGVmaW5pY2UgcG9sZSc7CiRsYW5nWydmaWVsZGRlZnMnXSA9ICdEZWZpbmljZSBwb2wmaWFjdXRlO8SNZWsnOwokbGFuZ1snZmllbGRkZWZ0ZXh0J10gPSAnRGVmaW5pY2UgcG9sZSc7CiRsYW5nWydmaWVsZGRlZmFkZGVkJ10gPSAnRGVmaW5pY2UgcG9sZSBieWxhIHDFmWlkJmFhY3V0ZTtuYSc7CiRsYW5nWydmaWVsZGRlZnVwZGF0ZWQnXSA9ICdEZWZpbmljZSBwb2xlIGJ5bGEgYWt0dWFsaXpvdiZhYWN1dGU7bmEnOwokbGFuZ1snZmllbGRkZWZkZWxldGVkJ10gPSAnRGVmaW5pY2UgcG9sZSBieWxhIHNtYXomYWFjdXRlO25hJzsKJGxhbmdbJ2ZpcnN0cGFnZSddID0gJzw8JzsKJGxhbmdbJ2Zyb250ZW5kZm9ybXRlbXBsYXRlX2FkZGVkaXQnXSA9ICdQxZlpZGF0L1VwcmF2aXQgJnNjYXJvbjthYmxvbnUgZm9ybXVsJmFhY3V0ZTvFmWUgbmEgc3RyJmFhY3V0ZTtuY2UnOwokbGFuZ1snZnJvbnRlbmRmb3JtdGVtcGxhdGVzJ10gPSAnVXByYXZpdCAmc2Nhcm9uO2FibG9ueSBzcG9sZcSNbm9zdGknOwokbGFuZ1snZnJvbnRlbmRmb3JtdGVtcGxhdGV1cGRhdGVkJ10gPSAnJlNjYXJvbjthYmxvbnkgcHJvICZ1YWN1dGU7cHJhdnUgc3BvbGXEjW5vc3RpIGFrdHVhbGl6b3YmYWFjdXRlO255JzsKJGxhbmdbJ2hlbHAnXSA9ICc8aDM+Q28gZMSbbCZhYWN1dGU7IHRlbnRvIG1vZHVsPzwvaDM+DQo8cD5UZW50byBtb2R1bCBwb3NreXR1amUgenDFr3NvYiwga3RlciZ5YWN1dGU7bSBqZSBtb8W+bm8gemFwaXNvdmF0LCBvcmdhbml6b3ZhdCBhIHpvYnJhem92YXQgaW5mb3JtYWNlIG8gZmlybSZhYWN1dGU7Y2ggYSBqaW4meWFjdXRlO2NoIHNwb2xlxI1ub3N0ZWNoLiBPYnZ5a2xlIGpzb3UgdCZpYWN1dGU7bSBteSZzY2Fyb247bGVueSBrb250YWt0biZpYWN1dGU7IGluZm9ybWFjZSBhIGxvZ28sIGFsZSBtb2R1bCBqZSBkb3N0YXRlxI1uxJsgZmxleGliaWxuJmlhY3V0ZTsgaSBwcm8gZGFsJnNjYXJvbjsmaWFjdXRlOyAmdWFjdXRlO8SNZWx5IC0gdW1vxb7FiHVqZSBkZWZpbmljaSB2bGFzdG4maWFjdXRlO2NoIHBvbCZpYWN1dGU7xI1layBhIG9kbGkmc2Nhcm9uO2VuJmlhY3V0ZTsgdmXFmWVqbiZ5YWN1dGU7Y2ggYSBwcml2JmFhY3V0ZTt0biZpYWN1dGU7Y2ggZGF0LjwvcD4NCjxwPlRlbnRvIG1vZHVsIG3Fr8W+ZSBiJnlhY3V0ZTt0IHBvdcW+aXQgayBtbm9oYSByxa96biZ5YWN1dGU7bSAmdWFjdXRlO8SNZWzFr20sIG9kIHNlem5tdSBkb2RhdmF0ZWzFryBhxb4gcG8gc2V6bmFtIGtvbnRha3TFry4gSmUgbmF0b2xpayBmbGV4aWJpbG4maWFjdXRlOywgxb5lIG3Fr8W+ZSBiJnlhY3V0ZTt0IHBvdcW+aXQgayBtbm9oYSAmdWFjdXRlO8SNZWzFr20uPC9wPg0KPGgzPkphayB0ZW50byBtb2R1bCBwb3XFviZpYWN1dGU7dmF0PzwvaDM+DQo8cD5OZWpzbmHFviZzY2Fyb247JmlhY3V0ZTsgY2VzdG91IGsgcG91xb5pdCZpYWN1dGU7IG1vZHVsdSBqZSB1bSZpYWN1dGU7c3TEm24maWFjdXRlOyB0YWd1IDxjb2RlPntDb21wYW55RGlyZWN0b3J5fTwvY29kZT4gZG8gVmEmc2Nhcm9uO2ljaCBzdHImYWFjdXRlO25layBuZWJvICZzY2Fyb247YWJsb24uICBQb3QmZWFjdXRlOyBtxa/FvmV0ZSB6YcSNJmlhY3V0ZTt0IGVkaXRvdmF0IHomYWFjdXRlO3puYW15IHZhZG1pbmlzdHJhxI1uJmlhY3V0ZTttIHJvemhyYW4maWFjdXRlOyBtb2R1bHUuICBQcm96a291bWVqdGUgdGFrJmVhY3V0ZTsgcsWvem4mZWFjdXRlOyBwYXJhbWV0cnkgKHBvcHNhbiZlYWN1dGU7IG4maWFjdXRlO8W+ZSksIHBvbW9jJmlhY3V0ZTsgbmljaMW+IGplIG1vxb5ubyBtb2RpZmlrb3ZhdCBjaG92JmFhY3V0ZTtuJmlhY3V0ZTsgbW9kdWx1LjwvcD4NCjxoMz5CZXpwZcSNbm9zdDwvaDM+DQo8cD5JbiBvcmRlciB0byBtYW5hZ2UgdGhlIGNvbXBhbmllcyBpbnNpZGUgdGhpcyBtb2R1bGUsIHRoZSBhZG1pbmlzdHJhdG9yIG11c3QgaGF2ZSB0aGUgJiMwMzk7PC9lbT5Nb2RpZnkgQ29tcGFueSBEaXJlY3Rvcnk8L2VtPiYjMDM5OyBwZXJtaXNzaW9uLjwvcD4NCjxwPkluIG9yZGVyIHRvIGVkaXQgdGhlIGJ1aWx0IGluIHRlbXBsYXRlcyB0aGF0IGNvbnRyb2wgdGhlIGxheW91dCBvZiB0aGUgY29tcGFueWRpcmVjdG9yeSBpbmZvcm1hdGlvbiwgdGhlIGFkbWluaXN0cmF0b3IgbmVlZHMgdGhlICYjMDM5OzxlbT5Nb2RpZnkgVGVtcGxhdGVzPC9lbT4mIzAzOTsgcGVybWlzc2lvbi48L3A+DQo8cD5UbyBhZGp1c3QgdGhlIHZhcmlvdXMgc2V0dGluZ3MsIHRoZSAmIzAzOTs8ZW0+TW9kaWZ5IFNpdGUgUHJlZmVyZW5jZXM8L2VtPiYjMDM5OyBwZXJtaXNzaW9uIGlzIHJlcXVpcmVkLjwvcD4nOwokbGFuZ1snaWQnXSA9ICdJZCc7CiRsYW5nWydpbWFnZWN1cnJlbnRoaWRkZW4nXSA9ICcnOwokbGFuZ1snaW1hZ2V0ZXh0J10gPSAnT2JyJmFhY3V0ZTt6ZWsnOwokbGFuZ1snbGFzdHBhZ2UnXSA9ICc+Pic7CiRsYW5nWydsb2dvY3VycmVudGhpZGRlbiddID0gJyc7CiRsYW5nWydsb2dvdGV4dCddID0gJ0xvZ28nOwokbGFuZ1snbWF4bGVuZ3RoJ10gPSAnTWF4aW0mYWFjdXRlO2xuJmlhY3V0ZTsgZCZlYWN1dGU7bGthJzsKJGxhbmdbJ21heF9sZW5ndGgnXSA9ICdNYXhpbSZhYWN1dGU7bG4maWFjdXRlOyBkJmVhY3V0ZTtsa2EnOwokbGFuZ1snbWF4bGVuZ3RodGV4dCddID0gJ01heGltJmFhY3V0ZTtsbiZpYWN1dGU7IGQmZWFjdXRlO2xrYSc7CiRsYW5nWydtb2RpZmllZGRhdGUnXSA9ICdTbWF6YXQgZGF0dW0gcG9zbGVkbiZpYWN1dGU7IG1vZGlmaWthY2UnOwokbGFuZ1snbmFtZSddID0gJ0ptJmVhY3V0ZTtubyc7CiRsYW5nWyduYW1ldGV4dCddID0gJ0ptJmVhY3V0ZTtubyc7CiRsYW5nWyduZWVkcGVybWlzc2lvbiddID0gJ1lvdSBuZWVkIHRoZSAmIzAzOTslcyYjMDM5OyBwZXJtaXNzaW9uIHRvIHBlcmZvcm0gdGhhdCBmdW5jdGlvbi4nOwokbGFuZ1snbm9jb21wYW55bmFtZWdpdmVuJ10gPSAnTmVieWxvIHphZCZhYWN1dGU7bm8gxb4mYWFjdXRlO2RuJmVhY3V0ZTsgam0mZWFjdXRlO25vIHNwb2xlxI1ub3N0aSc7CiRsYW5nWydub25hbWVnaXZlbiddID0gJ0ptJmVhY3V0ZTtubyBuZWJ5bG8gemFkJmFhY3V0ZTtubyc7CiRsYW5nWydub3RhbnVtYmVyJ10gPSAnVG90byBuZW4maWFjdXRlOyDEjSZpYWN1dGU7c2xvJzsKJGxhbmdbJ25leHRwYWdlJ10gPSAnPic7CiRsYW5nWydvZiddID0gJ3onOwokbGFuZ1sncGFnZSddID0gJ1N0ciZhYWN1dGU7bmthJzsKJGxhbmdbJ3BhcmFtX2FjdGlvbiddID0gJ0RldGVybWluZSB0aGUgcHJpbWFyeSBiZWhhdmlvdXIgb2YgdGhlIG1vZHVsZS4gIFBvc3NpYmxlIHZhbHVlcyBmb3IgdGhpcyBwYXJhbWV0ZXIgYXJlOg0KPHVsPg0KICA8bGk+Y2F0ZWdvcnlsaXN0IC0tIERpc3BsYXkgYSBsaXN0IG9mIGNhdGVnb3JpZXMuICBVc2VycyBjYW4gZHJpbGwgZG93biB0byBzdW1tYXJ5IG1vZGUsIGFuZGQgdGhlbiB0byBkZXRhaWwgbW9kZS48L2xpPg0KICA8bGk+PHN0cm9uZz5kZWZhdWx0PC9zdHJvbmc+IC0tIERpc3BsYXkgY29tcGFuaWVzIGluIGEgc3VtbWFyeSBtb2RlLjwvbGk+DQogIDxsaT5kZXRhaWxzIC0tIERpc3BsYXkgZGV0YWlsZWQgaW5mb3JtYXRpb24gYWJvdXQgYSBzcGVjaWZpYyBjb21wYW55LjwvbGk+DQogIDxsaT5mZV9lZGl0IC0tIERpc3BsYXkgYSBmb3JtIHRvIGFsbG93IGVkaXRpbmcgaW5mb3JtYXRpb24gYWJvdXQgYSBzcGVjaWZpYyBjb21wYW55LjwvbGk+DQogICANCjwvdWw+DQonOwokbGFuZ1sncGFyYW1fY2F0ZWdvcnknXSA9ICdXaGVuIHVzZWQgaW4gdGhlIDxlbT5kZWZhdWx0PC9lbT4gc3VtbWFyeSBtb2RlLCB0aGlzIHBhcmFtZXRlciwgd2hpY2ggc2hvdWxkIG1hdGNoIHRoZSBuYW1lIG9mIGFuIGV4aXN0aW5nIGNhdGVnb3J5IHdpbGwgYmUgdXNlZCB0byBkaXNwbGF5IG9ubHkgdGhvc2UgY29tcGFuaWVzIHRoYXQgYXJlIGluIHRoYXQgY2F0ZWdvb3J5LiAoYSBjb21tYSBzZXBlcmF0ZWQgbGlzdCBjYW4gYmUgc3VwcGxpZWQpJzsKJGxhbmdbJ3BhcmFtX2NhdGVnb3J5bGlzdHRlbXBsYXRlJ10gPSAnU3BlY2lmeSBhIHRlbXBsYXRlIChieSBuYW1lKSB0byB1c2Ugd2hlbiBkaXNwbGF5aW5nIHRoZSBjYXRlZ29yeSBsaXN0IHZpZXcuJzsKJGxhbmdbJ3BhcmFtX2NvbXBhbnlpZCddID0gJ1JlcXVpcmVkIGZvciB0aGUgZnJvbnRlbmQgZWRpdGluZyBhbmQgZGV0YWlsIG1vZGVzLCB0aGlzIHBhcmFtZXRlciBkZXRlcm1pbmVzIHdoaWNoIGNvbXBhbnkgcmVjb3JkIHRvIGVkaXQgb3Igdmlldy4nOwokbGFuZ1sncGFyYW1fZGV0YWlscGFnZSddID0gJ1NwZWNpZnkgYSBwYWdlIGFsaWFzIChieSBuYW1lKSB0byB1c2UgZm9yIGRpc3BsYXlpbmcgYSBkZXRhaWwgcmVjb3JkLiA8c3Ryb25nPk5vdGU6PC9zdHJvbmc+IFRoaXMgdGFnIHBhcmFtZXRlciBpcyBub3QgY29tcGF0aWJsZSB3aXRoIHByZXR0eSB1cmxzLic7CiRsYW5nWydwYXJhbV9kZXRhaWx0ZW1wbGF0ZSddID0gJ1NwZWNpZnkgYSB0ZW1wbGF0ZSAoYnkgbmFtZSkgdG8gdXNlIHdoZW4gZGlzcGxheWluZyB0aGUgZGV0YWlsIHZpZXcuICA8c3Ryb25nPk5vdGU6PC9zdHJvbmc+IFRoaXMgdGFnIHBhcmFtZXRlciBpcyBub3QgY29tcGF0aWJsZSB3aXRoIHByZXR0eSB1cmxzLic7CiRsYW5nWydwYXJhbV9mcm9udGVuZGZvcm10ZW1wbGF0ZSddID0gJ1VyxI1pdCAmc2Nhcm9uO2FibG9udSAocG9kbGUgam0mZWFjdXRlO25hKSwga3RlciZhYWN1dGU7IHNlIHBvdcW+aWplLCBrZHnFviBzZSB6b2JyYXp1amUgZWRpdGHEjW4maWFjdXRlOyBwb2xlIHZlIGZyb250LWVuZHUuJzsKJGxhbmdbJ3BhcmFtX3NlbGVjdGNhdGVnb3J5J10gPSAnSWYgdGhpcyBwYXJhbWV0ZXIgaXMgc2V0LCB0aGVuIGEgZm9ybSB3aWxsIGJlIGdlbmVyYXRlZCBhbGxvd2luZyB1c2VycyB0byBpbnRlcmFjdGl2ZWx5IGZpbHRlciBjb21wYW55IHJlY29yZHMgb24gYSBzaW5nbGUgY2F0ZWdvcnkuICBUaGlzIGZsYWcgc2hvdWxkIG5vdCBiZSB1c2VkIGluIGNvbmp1bmN0aW9uIHdpdGggdGhlICYjMDM5O2NhdGVnb3J5JiMwMzk7IHBhcmFtZXRlci4nOwokbGFuZ1sncGFyYW1fc29ydG9yZGVyJ10gPSAnU3BlY2lmeSB0aGUgb3JkZXIgb2Ygc29ydGVkIGZpZWxkcyBpbiBzdW1tYXJ5IHZpZXcuICBQb3NzaWJsZSB2YWx1ZXMgYXJlOg0KPHVsPg0KICA8bGk+PHN0cm9uZz5hc2M8L3N0cm9uZz4gLS0gQXNjZW5kaW5nIG9yZGVyPC9saT4NCiAgPGxpPmRlc2MgLS0gRGVzY2VuZGluZyBvcmRlcjwvbGk+DQo8L3VsPic7CiRsYW5nWydwYXJhbV9zb3J0YnknXSA9ICdBcHBsaWNhYmxlIG9ubHkgaW4gc3VtbWFyeSBtb2RlLCB0aGlzIHBhcmFtZXRlciBkZXRlcm1pbmVzIHRoZSBzb3J0aW5nIG9mIHRoZSBvdXRwdXQgY29tcGFuaWVzLiAgUG9zc2libGUgdmFsdWVzIGFyZToNCjx1bD4NCiAgPGxpPjxzdHJvbmc+Y29tcGFueV9uYW1lPC9zdHJvbmc+PC9saT4NCiAgPGxpPnBob25lPC9saT4NCiAgPGxpPmZheDwvbGk+DQogIDxsaT5lbWFpbDwvbGk+DQogIDxsaT53ZWJzaXRlIC0tIFRoZSB3ZWJzaXRlIHVybDwvbGk+DQogIDxsaT5jcmVhdGVkIC0tIFRoZSBjcmVhdGlvbiBkYXRlIGZvciB0aGlzIGNvbXBhbnkgcmVjb3JkPC9saT4NCiAgPGxpPm1vZGlmaWVkIC0tIFRoZSBtb2RpZmllZCBkYXRlIGZvciB0aGlzIGNvbXBhbnkgcmVjb3JkPC9saT4NCjwvdWw+JzsKJGxhbmdbJ3BhcmFtX3N1bW1hcnl0ZW1wbGF0ZSddID0gJ1NwZWNpZnkgYSB0ZW1wbGF0ZSAoYnkgbmFtZSkgdG8gdXNlIHdoZW4gZGlzcGxheWluZyB0aGUgc3VtbWFyeSB2aWV3LiAgPHN0cm9uZz5Ob3RlOjwvc3Ryb25nPiBUaGlzIHRhZyBwYXJhbWV0ZXIgaXMgbm90IGNvbXBhdGlibGUgd2l0aCBwcmV0dHkgdXJscy4nOwokbGFuZ1sncG9zdGluc3RhbGwnXSA9ICdNb2R1bCAmcXVvdDtBZHJlcyZhYWN1dGU7xZkgc3BvbGXEjW5vc3QmaWFjdXRlOyZxdW90OyBieWwgJnVhY3V0ZTtzcMSbJnNjYXJvbjtuxJsgbmFpbnN0YWxvdiZhYWN1dGU7bic7CiRsYW5nWydwb3N0dW5pbnN0YWxsJ10gPSAnTW9kdWwgJnF1b3Q7QWRyZXMmYWFjdXRlO8WZIHNwb2xlxI1ub3N0JmlhY3V0ZTsmcXVvdDsgYnlsICZ1YWN1dGU7c3DEmyZzY2Fyb247bsSbIG9kaW5zdGFsb3YmYWFjdXRlO24uIFYmc2Nhcm9uO2VjaG5hIHMgbiZpYWN1dGU7bSBzdiZhYWN1dGU7emFuJmFhY3V0ZTsgZGF0YSBvIHNwb2xlxI1ub3N0ZWNoIGJ5bGEgc21heiZhYWN1dGU7bmEuJzsKJGxhbmdbJ3ByZXVuaW5zdGFsbCddID0gJ09wcmF2ZHUgY2hjZXRlIG9kaW5zdGFsb3ZhdCB0ZW50byBtb2R1bD8gUMWZaSBvZGluc3RhbGFjaSBtb2R1bHUgZG9qZGUgayB2eW1heiZhYWN1dGU7biZpYWN1dGU7IHYmc2Nhcm9uO2VjaCB1bG/FvmVuJnlhY3V0ZTtjaCBkYXQgbyBzcG9sZcSNbm9zdGVjaC4nOwokbGFuZ1sncHJldnBhZ2UnXSA9ICc8JzsKJGxhbmdbJ3Byb21wdF9kZXRhaWxwYWdlJ10gPSAnViZ5YWN1dGU7Y2hveiZpYWN1dGU7IHN0ciZhYWN1dGU7bmthLCBwb3XFvml0JmFhY3V0ZTsgcHJvIHpvYnJhemVuJmlhY3V0ZTsgbSZvYWN1dGU7ZHUgcG9kcm9ibm9zdCZpYWN1dGU7JzsKJGxhbmdbJ3Byb21wdF9wYWdlbGltaXQnXSA9ICdQb8SNZXQgeiZhYWN1dGU7em5hbcWvIG5hIHN0ciZhYWN1dGU7bmt1IHYgbSZvYWN1dGU7ZHUgc2hybnV0JmlhY3V0ZTsnOwokbGFuZ1sncHJvbXB0X3N1bW1hcnlzb3J0aW5nJ10gPSAnViZ5YWN1dGU7Y2hveiZpYWN1dGU7IHTFmSZpYWN1dGU7ZMSbbiZpYWN1dGU7IHYgbSZvYWN1dGU7ZHUgc2hybnV0JmlhY3V0ZTsnOwokbGFuZ1sncHJvbXB0X3N1bW1hcnlzb3J0b3JkZXInXSA9ICdUaGUgZGVmYXVsdCBzb3J0IG9yZGVyIGluIHN1bW1hcnkgbW9kZSA8ZW0+KGRvZXMgbm90IGFwcGx5IHdoZW4gc29ydGluZyBpcyAmIzAzOTtyYW5kb20mIzAzOTs8L2VtPic7CiRsYW5nWydwcm9tcHRfdGVtcGxhdGUnXSA9ICcmU2Nhcm9uO2FibG9uYSc7CiRsYW5nWydwdWJsaWMnXSA9ICdWZcWZZWpuJmVhY3V0ZTsnOwokbGFuZ1sncHVibGlzaGVkJ10gPSAnUHVibGlrb3YmYWFjdXRlO25vJzsKJGxhbmdbJ3ByZWZlcmVuY2VzJ10gPSAnTmFzdGF2ZW4maWFjdXRlOyc7CiRsYW5nWydyYW5kb20nXSA9ICdOJmFhY3V0ZTtob2RuJnlhY3V0ZTsnOwokbGFuZ1sncmVzZXR0b2ZhY3RvcnknXSA9ICdOYXN0YXZpdCBuYSB2JnlhY3V0ZTtjaG96JmlhY3V0ZTsgaG9kbm90eSc7CiRsYW5nWydyZXN0b3JldG9kZWZhdWx0c21zZyddID0gJ1RhdG8gb3BlcmFjZSB2ciZhYWN1dGU7dCZpYWN1dGU7IG9ic2FoICZzY2Fyb247YWJsb24gZG8gcMWvdm9kbiZpYWN1dGU7IHBvb2J5LiBPcHJhdmR1IGNoY2V0ZSBwb2tyYcSNb3ZhdD8nOwokbGFuZ1snc2VhcmNoJ10gPSAnSGxlZGF0JzsKJGxhbmdbJ3N0YXR1cyddID0gJ1N0YXYnOwokbGFuZ1snc3VibWl0J10gPSAnVmxvxb5pdCc7CiRsYW5nWydzdW1tYXJ5dGVtcGxhdGVfYWRkZWRpdCddID0gJ1DFmWlkYXQvVXByYXZpdCAmc2Nhcm9uO2FibG9udSBzaHJudXQmaWFjdXRlOy4nOwokbGFuZ1snc3VtbWFyeXRlbXBsYXRlcyddID0gJyZTY2Fyb247YWJsb255IHNocm51dCZpYWN1dGU7JzsKJGxhbmdbJ3N1bW1hcnl0ZW1wbGF0ZXVwZGF0ZWQnXSA9ICcmU2Nhcm9uO2FibG9uYSBzaHJudXQmaWFjdXRlOyBieWxhIGFrdHVhbGl6b3YmYWFjdXRlO25hJzsKJGxhbmdbJ3N5c2RlZmF1bHRzJ10gPSAnT2Jub3ZpdCBwxa92b2RuJmlhY3V0ZTsgaG9kbm90eSc7CiRsYW5nWyd0ZWxlcGhvbmUnXSA9ICdUZWxlZm9uJzsKJGxhbmdbJ3RlbGVwaG9uZXRleHQnXSA9ICdUZWxlZm9uJzsKJGxhbmdbJ3RpdGxlX2NhdGVnb3J5bGlzdF9kZmx0dGVtcGxhdGUnXSA9ICdWJnlhY3V0ZTtjaG96JmlhY3V0ZTsgJnNjYXJvbjthYmxvbmEgc2V6bmFtdSBrYXRlZ29yaSZpYWN1dGU7JzsKJGxhbmdbJ3RpdGxlX2RldGFpbF9kZmx0dGVtcGxhdGUnXSA9ICdWJnlhY3V0ZTtjaG96JmlhY3V0ZTsgJnNjYXJvbjthYmxvbmEgZGV0YWlsdSc7CiRsYW5nWyd0aXRsZV9mcm9udGVuZGZvcm1fZGZsdHRlbXBsYXRlJ10gPSAnViZ5YWN1dGU7Y2hveiZpYWN1dGU7ICZzY2Fyb247YWJsb25hIGZvcm11bCZhYWN1dGU7xZllIGZyb250ZW5kdSc7CiRsYW5nWyd0aXRsZV9zdW1tYXJ5X2RmbHR0ZW1wbGF0ZSddID0gJ1YmeWFjdXRlO2Nob3omaWFjdXRlOyAmc2Nhcm9uO2FibG9uYSBzaHJudXQmaWFjdXRlOyc7CiRsYW5nWyd0eXBlJ10gPSAnVHlwZSc7CiRsYW5nWyd0eXBldGV4dCddID0gJ1R5cGUnOwokbGFuZ1sndXAnXSA9ICdOYWhvcnUnOwokbGFuZ1snd2Vic2l0ZSddID0gJ1dlYic7CiRsYW5nWyd3ZWJzaXRldGV4dCddID0gJ1dlYic7CiRsYW5nWyd1dG16J10gPSAnMTU2ODYxMzUzLjEyMDMwMjQ2MTQuMzAxLjY4LnV0bWNjbj0ocmVmZXJyYWwpfHV0bWNzcj1jbXNtYWRlc2ltcGxlLm9yZ3x1dG1jY3Q9L3x1dG1jbWQ9cmVmZXJyYWwnOwokbGFuZ1sndXRtYSddID0gJzE1Njg2MTM1My44ODAyNjc4MzcuMTE4MDk5MTY2OS4xMjAzMDY3ODU2LjEyMDMwNzEwMDIuMzA1JzsKJGxhbmdbJ3V0bWMnXSA9ICcxNTY4NjEzNTMnOwokbGFuZ1sndXRtYiddID0gJzE1Njg2MTM1Myc7Cj8+]]></data>
	</file>
	<file>
	  <filename>/lang/ext/de_DE.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2V4cGlyZXMnXSA9ICdHJnV1bWw7bHRpZyBiaXMnOwokbGFuZ1sncmVzZXRfdG9fZmFjdG9yeSddID0gJ0F1ZiBkaWUgcHJvZ3JhbW1zZWl0aWdlbiBWb3JlaW5zdGVsbHVuZyB6dXImdXVtbDtja3NldHplbic7CiRsYW5nWydwcm9tcHRfZW1haWxfaXNodG1sJ10gPSAnRW1haWwgaXN0IGltIEhUTUwtRm9ybWF0JzsKJGxhbmdbJ3Byb21wdF9lbWFpbF9zdWJqZWN0J10gPSAnRW1haWwtQmV0cmVmZic7CiRsYW5nWydwcm9tcHRfZW1haWxfdGVtcGxhdGUnXSA9ICdFbWFpbC1UZW1wbGF0ZSc7CiRsYW5nWydlbWFpbF90ZW1wbGF0ZSddID0gJ0VtYWlsLVRlbXBsYXRlJzsKJGxhbmdbJ2ZlZWRpdF9lbWFpbF9zdWJqZWN0J10gPSAnQmVpIGVpbmVtIENvbXBhbnlEaXJlY3RvcnktRWludHJhZyB3dXJkZSBlaW5lICZBdW1sO25kZXJ1bmcgdm9yZ2Vub21tZW4nOwokbGFuZ1sncHJvbXB0X2ZldV9lbWFpbGdyb3VwJ10gPSAnQWRtaW5pc3RyYXRvci1HcnVwcGUsIGRpZSBkaWUgQmVuYWNocmljaHRpZ3VuZ3MtRW1haWxzIGVtcGZhbmdlbiBzb2xsPyc7CiRsYW5nWydwcm9tcHRfZmV1X2VtYWlsb25hZGQnXSA9ICdFaW5lIEVtYWlsIHZlcnNlbmRlbiwgd2VubiAmdXVtbDtiZXIgZGllIFdlYnNlaXRlIGVpbiBuZXVlcyBVbnRlcm5laG1lbiBlaW5nZWdlYmVuIHd1cmRlJzsKJGxhbmdbJ3Byb21wdF9mZXVfZW1haWxvbmVkaXQnXSA9ICdFaW5lIEVtYWlsIHZlcnNlbmRlbiwgd2VubiAmdXVtbDtiZXIgZGllIFdlYnNlaXRlIGVpbiBVbnRlcm5laG1lbnNkYXRlbnNhdHogZ2UmYXVtbDtuZGVydCB3dXJkZSc7CiRsYW5nWydwcm9tcHRfZmV1X2VtYWlsb25ncm91cCddID0gJ0FkbWluaXN0cmF0b3ItR3J1cHBlLCBhbiBkaWUgZGllIEVtYWlscyBnZXNhbmR0IHdlcmRlbiBzb2xsZW4nOwokbGFuZ1sncHJvbXB0X2ZldV9kaXNwbGF5X3NldHRpbmdzJ10gPSAnRWluc3RlbGx1bmdlbiBmJnV1bWw7ciBkaWUgQW56ZWlnZSBhdWYgZGVyIFdlYnNlaXRlJzsKJGxhbmdbJ3Byb21wdF9mcm9udGVuZF9zaG93ZXhwaXJlZCddID0gJ0RhdGVucyZhdW1sO3R6ZSBkZXIgYWJnZWxhdWZlbmVuIEZyb250ZW5kLUJlbnV0emVyIGFuemVpZ2VuJzsKJGxhbmdbJ2ZpZWxkX2ltYWdlJ10gPSAnQmlsZCc7CiRsYW5nWydleHRyYTEnXSA9ICdFeHRyYS1EYXRlbiAxJzsKJGxhbmdbJ2V4dHJhMiddID0gJ0V4dHJhLURhdGVuIDInOwokbGFuZ1snZXh0cmEzJ10gPSAnRXh0cmEtRGF0ZW4gMyc7CiRsYW5nWydsYmxfYmFjayddID0gJ1p1ciZ1dW1sO2NrJzsKJGxhbmdbJ21zZ19jb21wYW55Y29waWVkJ10gPSAnRGllIFVudGVybmVobWVuc2RhdGVuIHd1cmRlbiBrb3BpZXJ0IC4uLiBTaWUgayZvdW1sO25uZW4gamV0enQgZGllIERldGFpbHMgZiZ1dW1sO3IgZGVuIG5ldWVuIFVudGVybmVobWVuc2VpbnRyYWcgYmVhcmJlaXRlbic7CiRsYW5nWydjb3B5J10gPSAnS29waWVyZW4nOwokbGFuZ1snbW9kZGVzY3JpcHRpb24nXSA9ICdFaW4gdmVyemVpY2huaXMmYXVtbDtobmxpY2hlcyBNb2R1bCBmJnV1bWw7ciBVbnRlcm5laG1lbi4gRXMgayZvdW1sO25uZW4gRGF0ZW5zJmF1bWw7dHplIGYmdXVtbDtyIFVudGVybmVobWVuIGhpbnp1Z2VmJnV1bWw7Z3QvYmVhcmJlaXRldC9pbXBvcnRpZXJ0L2V4cG9ydGllcnQgdW5kIGF1ZiB2ZXJzY2hpZWRlbmVuIFdlZ2VuIGFuZ2V6ZWlndCB3ZXJkZW4gKGVpbnNjaGxpZSZzemxpZztsaWNoIGVpbmVyIFN1Y2hlKS4gRGllc2VzIE1vZHVsIGthbm4gaW4gVmVyYmluZHVuZyBtaXQgZGVtIENHR29vZ2xlTWFwcy1Nb2R1bCB2ZXJ3ZW5kZXQgd2VyZGVuLic7CiRsYW5nWydtc2dfaW1wb3J0X2NvbXBsZXRlJ10gPSAnRGVyIERhdGVuaW1wb3J0IHdhciBlcmZvbGdyZWljaCc7CiRsYW5nWydwcm9tcHRfaGllcmFyY2hpZXNfaW1wb3J0ZWQnXSA9ICdIaWVyYXJjaGllLVBvc2l0aW9uZW4gZXJzdGVsbHQnOwokbGFuZ1sncHJvbXB0X2ltcG9ydF9oaWVyYXJjaHlkZWZzJ10gPSAnSGllcmFyY2hpZS1EYXRlbnMmYXVtbDt0emUgaW1wb3J0aWVyZW4nOwokbGFuZ1sncHJvbXB0X2ltcG9ydF9oaWVyYXJjaHl2YWxzJ10gPSAnSGllcmFyY2hpZS1XZXJ0ZSBpbXBvcnRpZXJlbic7CiRsYW5nWydlcnJvcl9pbnNlcnRfaGllcmFyY2h5J10gPSAnRmVobGVyIGJlaW0gRXJzdGVsbGVuIGRlciBIaWVyYXJjaGllICZxdW90OyVzJnF1b3Q7JzsKJGxhbmdbJ2Vycm9yX2R1cGxpY2F0ZV9oaWVyYXJjaHknXSA9ICdFaW5lIEhpZXJhcmNoaWUgbWl0IGRlbSBMYW5nbmFtZW4gJnF1b3Q7JXMmcXVvdDsgZXhpc3RpZXJ0ICBiZXJlaXRzLic7CiRsYW5nWydjb21wYW55ZGVsZXRlZCddID0gJ0RhcyBVbnRlcm5laG1lbiB3dXJkZSBnZWwmb3VtbDtzY2h0JzsKJGxhbmdbJ2Vycm9yX3VwbG9hZCddID0gJ0ZlaGxlciBiZWltIEhvY2hsYWRlbiBkZXIgRGF0ZWknOwokbGFuZ1snZXJyb3JfZGVsaW1pdGVyJ10gPSAnU2llIG0mdXVtbDtzc2VuIGVpbmVuIEZlbGR0cmVubmVyIGFuZ2ViZW4nOwokbGFuZ1snZXJyb3Jfbm9zcG90c2xlZnQnXSA9ICdTaWUgaGFiZW4ga2VpbmUgdmVyYmxlaWJlbmRlbiBVbnRlcm5laG1lbnNmZWxkZXInOwokbGFuZ1snbXNnX3Nsb3RzdXNlZCddID0gJ1NpZSBoYWJlbiAlZCB2b24gJWQgVW50ZXJuZWhtZW5zLUZlbGRlcm4gdmVyd2VuZGV0JzsKJGxhbmdbJ2ltcG9ydF9maWxlbmFtZSddID0gJ0NTVi1EYXRlaSBhdXN3JmF1bWw7aGxlbic7CiRsYW5nWydkZWxpbWl0ZXInXSA9ICdGZWxkdHJlbm5lcic7CiRsYW5nWydpbmZvX2NzdmZpbGUnXSA9ICdVbnRlcm5laG1lbnNpbmZvcm1hdGlvbmVuIGsmb3VtbDtubmVuIGRpcmVrdCBhdXMgZWluZXIgQVNDSUktRGF0ZWkgaW1wb3J0aWVydCB3ZXJkZW4uJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRfdGVtcGxhdGUnXSA9ICdNaXQgZGllc2VtIFRlbXBsYXRlIHdpcmQgZGFzIEZvcm11bGFyIGVyc3RlbGx0LCAmdXVtbDtiZXIgZGFzIGJlcmVjaHRpZ3RlIFdlYnNlaXRlbmJlc3VjaGVyIERhdGVuICZ1dW1sO2JlciBlaW5lIGVudHNwcmVjaGVuZCBmb3JtYXRpZXJ0ZSBDU1YtRGF0ZWkgaW1wb3J0aWVyZW4gayZvdW1sO25uZW4nOwokbGFuZ1snZnJvbnRlbmRpbXBvcnR0ZW1wbGF0ZSddID0gJ1dlYnNlaXRlbi1DU1YtSW1wb3J0LVRlbXBsYXRlJzsKJGxhbmdbJ3Byb21wdF9mZXVfaW1wb3J0J10gPSAnQmVyZWNodGlndGVuIFdlYnNlaXRlbmJlc3VjaGVybiBlcmxhdWJlbiwgRGF0ZW5zJmF1bWw7dHplIHZpYSBDU1YgaW1wb3J0aWVyZW4/JzsKJGxhbmdbJ3BhcmFtX2hpZXJsaXN0dGVtcGxhdGUnXSA9ICdHZWJlbiBTaWUgZWluZW4gVGVtcGxhdGUtTmFtZW4gYW4sIGRlciBmJnV1bWw7ciBkaWUgQW56ZWlnZSBkZXIgSGllcmFyY2hpZS1MaXN0ZW4tQW5zaWNodCB2ZXJ3ZW5kZXQgd2VyZGVuIHNvbGwuJzsKJGxhbmdbJ2hpZXJsaXN0dGVtcGxhdGVfYWRkZWRpdCddID0gJ0hpZXJhcmNoaWUtTGlzdGVuLVRlbXBsYXRlIGhpbnp1ZiZ1dW1sO2dlbi9iZWFyYmVpdGVuJzsKJGxhbmdbJ3RpdGxlX2hpZXJsaXN0X2RmbHR0ZW1wbGF0ZSddID0gJ1N0YW5kYXJkLUhpZXJhcmNoaWUtTGlzdGVuLVRlbXBsYXRlJzsKJGxhbmdbJ2hpZXJhcmNoeWxpc3R0ZW1wbGF0ZXMnXSA9ICdIaWVyYXJjaGllLUxpc3Rlbi1UZW1wbGF0ZXMnOwokbGFuZ1sncGFyYW1faGllciddID0gJ0thbm4gZiZ1dW1sO3IgZGllIDxlbT5kZWZhdWx0PC9lbT4gdW5kIGRpZSA8ZW0+aGllcmxpc3Q8L2VtPiBBa3Rpb24gdmVyd2VuZGV0IHdlcmRlbi4gJlV1bWw7YmVyIGRpZXNlbiBQYXJhbWV0ZXIga2FubiBkZXIgTmFtZSBkZXIgSGllcmFyY2hpZSB2b3JnZWdlYmVuIHdlcmRlbiwgZGVzc2VuIFVudGVybmVobWVuIGFuZ2V6ZWlndCB3ZXJkZW4gc29sbGVuLiBEaWUgPGVtPmRlZmF1bHQ8L2VtPiBBa3Rpb24ga2FubiBpbiBWZXJiaW5kdW5nIG1pdCBKb2tlcnplaWNoZW4gdmVyd2VuZGV0IHdlcmRlbiwgei5Cc3AuICZxdW90OyplaW5oaWVyYXJjaGllbmFtZSomcXVvdDsuIE1pdCBkZXIgPGVtPmhpZXJsaXN0PC9lbT4gQWt0aW9uIG11c3MgZGllc2VyIFBhcmFtZXRlciBkZW4gZWluZGV1dGlnZW4gTmFtZW4gZWluZXIgSGllcmFyY2hpZSBlbnRoYWx0ZW4sIGRlciBkZW4gU3RhcnRwdW5rdCBmJnV1bWw7ciBkaWUgSGllcmFyY2hpZS1BbnplaWdlIGZlc3RsZWd0Lic7CiRsYW5nWydtc2dfaGllcmRlbGV0ZWQnXSA9ICdIaWVyYXJjaGllLVBvc2l0aW9uIGdlbCZvdW1sO3NjaHQnOwokbGFuZ1snbXNnX2hpZXJ1cGRhdGVkJ10gPSAnSGllcmFyY2hpZS1Qb3NpdGlvbiBha3R1YWxpc2llcnQnOwokbGFuZ1snbXNnX2hpZXJhZGRlZCddID0gJ0hpZXJhcmNoaWUtUG9zaXRpb24gaGluenVnZWYmdXVtbDtndCc7CiRsYW5nWydhZGRoaWVyJ10gPSAnSGllcmFyY2hpZSBoaW56dWYmdXVtbDtnZW4nOwokbGFuZ1snaGllcmFyY2h5J10gPSAnSGllcmFyY2hpZSc7CiRsYW5nWydhZGRfZWRpdF9jYXRlZ29yeSddID0gJ0thdGVnb3JpZSBoaW56dWYmdXVtbDtnZW4vYmVhcmJlaXRlbic7CiRsYW5nWydsYmxfc2V0dGluZ3MnXSA9ICdFaW5zdGVsbHVuZ2VuJzsKJGxhbmdbJ2xibF90ZW1wbGF0ZXMnXSA9ICdUZW1wbGF0ZXMgJzsKJGxhbmdbJ25vbmUnXSA9ICdLZWluZSc7CiRsYW5nWydvd25lciddID0gJ0VpZ2VudCZ1dW1sO21lcic7CiRsYW5nWydjcmVhdGVkJ10gPSAnRXJzdGVsbHQnOwokbGFuZ1snbW9kaWZpZWQnXSA9ICdHZSZhdW1sO25kZXJ0JzsKJGxhbmdbJ2Zyb250ZW5kbGlzdHRlbXBsYXRlX2FkZGVkaXQnXSA9ICdFaW4gV2Vic2VpdGVuLUxpc3Rlbi1UZW1wbGF0ZSBoaW56dWYmdXVtbDtnZW4gb2RlciBiZWFyYmVpdGVuJzsKJGxhbmdbJ3Byb21wdF9mZXVfY2hhbmdlX3N0YXR1cyddID0gJ0QmdXVtbDtyZmVuIGJlcmVjaHRpZ3RlIFdlYnNlaXRlbi1CZW51dHplciBkZW4gRmlybWVuc3RhdHVzICZhdW1sO25kZXJuPyc7CiRsYW5nWydwcm9tcHRfZmV1X25ld19zdGF0dXMnXSA9ICdWb3JlaW5nZXN0ZWxsdGVyIFN0YXR1cyBmJnV1bWw7ciBuZXVlLCB2aWEgV2Vic2VpdGUgZXJzdGVsbHRlIERhdGVucyZhdW1sO3R6ZSc7CiRsYW5nWyd0aXRsZV9mcm9udGVuZGxpc3RfZGZsdHRlbXBsYXRlJ10gPSAnVm9yZWluZ2VzdGVsbHRlcyBXZWJzZWl0ZW4tTGlzdGVuLVRlbXBsYXRlJzsKJGxhbmdbJ2Zyb250ZW5kbGlzdHRlbXBsYXRlcyddID0gJ1dlYnNlaXRlbi1MaXN0ZW4tVGVtcGxhdGVzJzsKJGxhbmdbJ3Byb21wdF9nZW5lcmFsX3NldHRpbmdzJ10gPSAnQWxsZ2VtZWluZSBFaW5zdGVsbHVuZ2VuJzsKJGxhbmdbJ3Byb21wdF9mZXVfZWRpdF9zZXR0aW5ncyddID0gJ0VpbnN0ZWxsdW5nZW4gZiZ1dW1sO3IgZGllIEJlYXJiZWl0dW5nIHZpYSBXZWJzZWl0ZSc7CiRsYW5nWydwcm9tcHRfZmV1X2NyZWF0ZSddID0gJ0QmdXVtbDtyZmVuIGJlcmVjaHRpZ3RlIFdlYnNlaXRlbmJlc3VjaGVyIChGcm9udGVuZFVzZXJzKSBuZXVlIERhdGVucyZhdW1sO3R6ZSBlcnN0ZWxsZW4/JzsKJGxhbmdbJ3Byb21wdF9mZXVfbnVtcmVjb3JkcyddID0gJ01heGltYWxlIEFuemFobCBkZXIgRGF0ZW5zJmF1bWw7dHplLCBkaWUgZWluZW0gRkVVLUtvbnRvIHp1Z2VvcmRuZXQgd2VyZGVuIGsmb3VtbDtubmVuJzsKJGxhbmdbJ3Byb21wdF9udW1pbXBvcnRlZCddID0gJ0FuemFobCBkZXIgaW1wb3J0aWVydGVuIERhdGVucyZhdW1sO3R6ZSc7CiRsYW5nWydwcm9tcHRfZHVwbGljYXRlX25hbWUnXSA9ICdOYW1lbiBkZXIgVW50ZXJuZWhtZW4gYXVmIER1cGxpa2F0ZSBwciZ1dW1sO2Zlbic7CiRsYW5nWydwcm9tcHRfc3RhdHVzJ10gPSAnU3RhdHVzIGYmdXVtbDtyIGltcG9ydGllcnRlIERhdGVucyZhdW1sO3R6ZSc7CiRsYW5nWydwcm9tcHRfaWdub3JlX2FkZHJlc3MnXSA9ICdBZHJlc3NmZWxkIGlnbm9yaWVyZW4nOwokbGFuZ1sncHJvbXB0X2NvbnZlcnRfYWRkcmVzcyddID0gJ0FkcmVzc2VuIGluIEtvb3JkaW5hdGVuIHVtd2FuZGVsbiAoZmFsbHMgbm9jaCBrZWluZSBLb29yZGluYXRlbiBlaW5nZWdlYmVuIHd1cmRlbiknOwokbGFuZ1sncHJvbXB0X2ttbGZpbGUnXSA9ICdadSBpbXBvcnRpZXJlbmRlIEtNTC1EYXRlaSc7CiRsYW5nWydpbXBvcnRrbWwnXSA9ICdLTUwgaW1wb3J0aWVyZW4nOwokbGFuZ1snaW1wb3J0X2ttbCddID0gJ0tNTC1EYXRlaSBpbXBvcnRpZXJlbic7CiRsYW5nWydzZWxlY3RvbmUnXSA9ICdJaHJlIEF1c3dhaGwnOwokbGFuZ1snZXJyb3JfZmV1X2xvZ2dlZGluJ10gPSAnVW0gZGllc2UgRnVua3Rpb24gdmVyd2VuZGVuIHp1IGsmb3VtbDtubmVuLCBtJnV1bWw7c3NlbiBTaWUgYXVmIGRpZXNlciBXZWJzZWl0ZSBhbmdlbWVsZGV0IHNlaW4uJzsKJGxhbmdbJ2FjdGl2ZSddID0gJ0FrdGl2JzsKJGxhbmdbJ2FkZGxpbmsnXSA9ICdMaW5rIGhpbnp1ZiZ1dW1sO2dlbic7CiRsYW5nWydhZGRyZXNzJ10gPSAnQWRyZXNzZSc7CiRsYW5nWydhZGRyZXNzdGV4dCddID0gJ0FkcmVzc2UnOwokbGFuZ1snYWRkY2F0ZWdvcnknXSA9ICdLYXRlZ29yaWUgaGluenVmJnV1bWw7Z2VuJzsKJGxhbmdbJ2FkZGNvbXBhbnknXSA9ICdVbnRlcm5laG1lbiBoaW56dWYmdXVtbDtnZW4nOwokbGFuZ1snYWRkZmllbGRkZWYnXSA9ICdGZWxkZGVmaW5pdGlvbiBoaW56dWYmdXVtbDtnZW4nOwokbGFuZ1snYWRtaW5fb25seSddID0gJ051ciBmJnV1bWw7ciBkZW4gQWRtaW5pc3RyYXRvciBzaWNodGJhcic7CiRsYW5nWydhcmV5b3VzdXJlJ10gPSAnV29sbGVuIFNpZSBkaWVzIHdpcmtsaWNoIGwmb3VtbDtzY2hlbj8nOwokbGFuZ1snYXNjZW5kaW5nJ10gPSAnQXVmc3RlaWdlbmQnOwokbGFuZ1snY2FuY2VsJ10gPSAnQWJicmVjaGVuJzsKJGxhbmdbJ2NhbnVzZXJlZGl0J10gPSAnRCZ1dW1sO3JmZW4gV2Vic2VpdGVuYmVzdWNoZXIgZGllc2VzIEZlbGQgYmVhcmJlaXRlbiBrJm91bWw7bm5lbj8nOwokbGFuZ1snY2FudXNlcnZpZXcnXSA9ICdTb2xsIGRpZXNlcyBGZWxkIGRlbiBXZWJzZWl0ZW5iZXN1Y2hlcm4gYW5nZXplaWd0IHdlcmRlbj8nOwokbGFuZ1snY2F0ZWdvcnknXSA9ICdLYXRlZ29yaWUnOwokbGFuZ1snY2F0ZWdvcmllcyddID0gJ0thdGVnb3JpZW4nOwokbGFuZ1snY2F0ZWdvcnl0ZXh0J10gPSAnS2F0ZWdvcmllJzsKJGxhbmdbJ2NhdGVnb3J5YWRkZWQnXSA9ICdLYXRlZ29yaWUgaGluenVnZWYmdXVtbDtndCc7CiRsYW5nWydjYXRlZ29yeXVwZGF0ZWQnXSA9ICdLYXRlZ29yaWUgYWt0dWFsaXNpZXJ0JzsKJGxhbmdbJ2NhdGVnb3J5bGlzdHRlbXBsYXRlX2FkZGVkaXQnXSA9ICdLYXRlZ29yaWUtTGlzdGVuLVRlbXBsYXRlIGhpbnp1ZiZ1dW1sO2dlbi9iZWFyYmVpdGVuJzsKJGxhbmdbJ2NhdGVnb3J5bGlzdHRlbXBsYXRlcyddID0gJ0thdGVnb3JpZS1MaXN0ZW4tVGVtcGxhdGVzJzsKJGxhbmdbJ2NhdGVnb3J5bGlzdHRlbXBsYXRldXBkYXRlZCddID0gJ0thdGVnb3JpZW4tTGlzdGVuIGFrdHVhbGlzaWVydCc7CiRsYW5nWydjb21wYW55J10gPSAnVW50ZXJuZWhtZW4nOwokbGFuZ1snY29tcGFueWFkZGVkJ10gPSAnRGFzIFVudGVybmVobWVuIHd1cmRlIGhpbnp1Z2VmJnV1bWw7Z3QnOwokbGFuZ1snY29tcGFueW5hbWUnXSA9ICdOYW1lIGRlcyBVbnRlcm5laG1lbnMnOwokbGFuZ1snY29tcGFueXVwZGF0ZWQnXSA9ICdEaWUgVW50ZXJuZWhtZW5zZGF0ZW4gd3VyZGUgYWt0dWFsaXNpZXJ0JzsKJGxhbmdbJ2NvbXBhbmllcyddID0gJ1VudGVybmVobWVuJzsKJGxhbmdbJ2NvbXBhbnl0ZXh0J10gPSAnVW50ZXJuZWhtZW4nOwokbGFuZ1snY29tcGFueWRpcmVjdG9yeSddID0gJ1VudGVybmVobWVuc3ZlcnplaWNobmlzJzsKJGxhbmdbJ2NvbnRhY3RlbWFpbCddID0gJ0tvbnRha3QtRW1haWwnOwokbGFuZ1snY3JlYXRlZGRhdGUnXSA9ICdFaW5nYWJlZGF0dW0nOwokbGFuZ1snZGVmYXVsdHRlbXBsYXRlcyddID0gJ1N0YW5kYXJkLVRlbXBsYXRlcyc7CiRsYW5nWydkZWZhdWx0X3RlbXBsYXRlX25vdGljZSddID0gJzxzdHJvbmc+SGlud2Vpczo8L3N0cm9uZz4gRGllIEluaGFsdGUgZGllc2VyIFRleHRiZXJlaWNoZSB3ZXJkZW4gdmVyd2VuZGV0LCB1bSBkZW4gU3RhbmRhcmRpbmhhbHQgZmVzdHp1bGVnZW4sIGRlciBhdXRvbWF0aXNjaCBlaW5nZWYmdXVtbDtndCB3aXJkLCB3ZW5uIFNpZSBpbiBkZXIgamV3ZWlsaWdlbiBSZWdpc3RlcmthcnRlICZxdW90O1RlbXBsYXRlIGhpbnp1ZiZ1dW1sO2dlbiZxdW90OyBrbGlja2VuLiBEaWUgQmVhcmJlaXR1bmcgZGllc2VyIFRleHRiZXJlaWNoZSBoYXQga2VpbmUgQXVzd2lya3VuZ2VuIGF1ZiBJaHJlIFdlYnNlaXRlLic7CiRsYW5nWydkZWxldGUnXSA9ICdMJm91bWw7c2NoZW4nOwokbGFuZ1snZGVsZXRlY2F0ZWdvcnknXSA9ICdLYXRlZ29yaWUgbCZvdW1sO3NjaGVuJzsKJGxhbmdbJ2RlbGV0ZWNvbXBhbnknXSA9ICdVbnRlcm5laG1lbiBsJm91bWw7c2NoZW4nOwokbGFuZ1snZGVsZXRlZmllbGRkZWYnXSA9ICdGZWxkZGVmaW5pdGlvbiBsJm91bWw7c2NoZW4nOwokbGFuZ1snZGVzY2VuZGluZyddID0gJ0Fic3RlaWdlbmQnOwokbGFuZ1snZGVzY3JpcHRpb24nXSA9ICdCZXNjaHJlaWJ1bmcnOwokbGFuZ1snZGV0YWlscyddID0gJ0RldGFpbHMgJzsKJGxhbmdbJ2RldGFpbHN0ZXh0J10gPSAnRGV0YWlscyAnOwokbGFuZ1snZGV0YWlsdGVtcGxhdGVfYWRkZWRpdCddID0gJ0RldGFpbC1UZW1wbGF0ZSBoaW56dWYmdXVtbDtnZW4vYmVhcmJlaXRlbic7CiRsYW5nWydkZXRhaWx0ZW1wbGF0ZXMnXSA9ICdEZXRhaWwtVGVtcGxhdGVzJzsKJGxhbmdbJ2RldGFpbHRlbXBsYXRldXBkYXRlZCddID0gJ0RhcyBEZXRhaWwtVGVtcGxhdGUgd3VyZGUgYWt0dWFsaXNpZXJ0JzsKJGxhbmdbJ2Rpc2FibGVkJ10gPSAnRGVha3RpdmllcnQnOwokbGFuZ1snZG93biddID0gJ05hY2ggdW50ZW4nOwokbGFuZ1snZHJhZnQnXSA9ICdFbnR3dXJmJzsKJGxhbmdbJ2VkaXQnXSA9ICdCZWFyYmVpdGVuJzsKJGxhbmdbJ2VkaXRjYXRlZ29yeSddID0gJ0thdGVnb3JpZSBiZWFyYmVpdGVuJzsKJGxhbmdbJ2VkaXRjb21wYW55J10gPSAnVW50ZXJuZWhtZW4gYmVhcmJlaXRlbic7CiRsYW5nWydlZGl0ZmllbGRkZWYnXSA9ICdGZWxkZGVmaW5pdGlvbiBiZWFyYmVpdGVuJzsKJGxhbmdbJ2VtYWlsdGV4dCddID0gJ0VtYWlsLUFkcmVzc2UnOwokbGFuZ1snZXJyb3JfYmFkdXBsb2FkJ10gPSAnTWl0IGRlciBob2NoZ2VsYWRlbmVuIERhdGVpIGlzdCBlaW4gUHJvYmxlbSBhdWZnZXRyZXRlbic7CiRsYW5nWydlcnJvcl9jb21wYW55bmFtZSddID0gJ0RlciBVbnRlcm5laG1lbnNuYW1lIGlzdCB1bmcmdXVtbDtsdGlnJzsKJGxhbmdbJ2Vycm9yX2NvbXBhbnluYW1lX2ludXNlJ10gPSAnRWluIFVudGVybmVobWVuIG1pdCBkaWVzZW0gTmFtZW4gaXN0IGJlcmVpdHMgaW4gZGVyIERhdGVuYmFuayB2b3JoYW5kZW4nOwokbGFuZ1snZXJyb3JfZHVwbGljYXRlX2NhdGVnb3J5J10gPSAnRWluZSBLYXRlZ29yaWUgbWl0IGRpZXNlbSBOYW1lbiBleGlzdGllcnQgYmVyZWl0cy4nOwokbGFuZ1snZXJyb3JfZHVwbGljYXRlX2NvbXBhbnknXSA9ICdFaW4gVW50ZXJuZWhtZW4gbWl0IGRpZXNlbSBOYW1lbiAoJXMpIGV4aXN0aWVydCBiZXJlaXRzLic7CiRsYW5nWydlcnJvcl9kdXBsaWNhdGVfZmllbGRkZWYnXSA9ICdFaW4gRmVsZCBtaXQgZGllc2VtIE5hbWVuIGV4aXN0aWVydCBiZXJlaXRzLic7CiRsYW5nWydlcnJvcl9pbXBvcnRfYmFkbGluZSddID0gJ1NjaGxlY2h0ZXIgRGF0ZW5zYXR6IGluIFplaWxlICVkIGdlZnVuZGVuLiBGZWhsdCBlaW5lIFJlZ2VsPyc7CiRsYW5nWydlcnJvcl9pbXBvcnRfYmFkdmFsdWUnXSA9ICdFaW4gc2NobGVjaHRlciBXZXJ0IHd1cmRlIGYmdXVtbDtyICVzIEZlbGQgZ2VmdW5kZW4nOwokbGFuZ1snZXJyb3JfaW1wb3J0X2R1cGxpY2F0ZXJ1bGUnXSA9ICdEdXBsaWthdCAlcyBSZWdlbCBpbiBaZWlsZSAlZCc7CiRsYW5nWydlcnJvcl9pbXBvcnRfZHVwbGljYXRlcnVsZV9pZGVudGlmaWVyJ10gPSAnRHVwbGlrYXQtUmVnZWwgaW4gWmVpbGUgJWQgaWRlbnRpZml6aWVydCc7CiRsYW5nWydlcnJvcl9pbXBvcnRfdW5rbm93bnJvdyddID0gJ0VzIGlzdCBuaWNodCBiZWthbm50LCB3aWUgWmVpbGUgJWQgbWl0IGRlciBSZWdlbCAlcyB2ZXJhcmJlaXRldCB3ZXJkZW4gc29sbCc7CiRsYW5nWydlcnJvcl9pbXBvcnRfdW5rbm93bnJ1bGUnXSA9ICdVbmJla2FubnRlIFJlZ2VsIGluIFplaWxlICVkJzsKJGxhbmdbJ2Vycm9yX2luc2VydF9jYXRlZ29yeSddID0gJ0JlaW0gRWluZiZ1dW1sO2dlbiBkZXIgS2F0ZWdvcmllYmVzY2hyZWlidW5nIGlzdCBlaW4gRGF0ZW5iYW5rZmVobGVyIGF1ZmdldHJldGVuJzsKJGxhbmdbJ2Vycm9yX2luc2VydF9jb21wYW55J10gPSAnQmVpbSBFaW5mJnV1bWw7Z2VuIGRlciBVbnRlcm5laG1lbnNiZXNjaHJlaWJ1bmcgaXN0IGVpbiBEYXRlbmJhbmtmZWhsZXIgYXVmZ2V0cmV0ZW4nOwokbGFuZ1snZXJyb3JfaW5zZXJ0X2ZpZWxkZGVmJ10gPSAnQmVpbSBFaW5mJnV1bWw7Z2VuIGRlciBGZWxkZGVmaW5pdGlvbiBpc3QgZWluIERhdGVuYmFua2ZlaGxlciBhdWZnZXRyZXRlbic7CiRsYW5nWydlcnJvcl9pbnZhbGlkX3BhcmFtJ10gPSAnRGVyIGYmdXVtbDtyICVzIGVpbmdlZ2ViZW5lIFdlcnQgaXN0IHVuZyZ1dW1sO2x0aWcnOwokbGFuZ1snZXJyb3JfbWlzc2luZ3VwbG9hZCddID0gJ0VzIHd1cmRlIGtlaW5lIERhdGVpIGhvY2hnZWxhZGVuJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdwYXJhbSddID0gJ0ltIEZvcm11bGFyIHd1cmRlIGVpbiBQZmxpY2h0ZmVsZCBuaWNodCBhdXNnZWYmdXVtbDtsbHQnOwokbGFuZ1snZXJyb3Jfbm9kcm9wZG93bm9wdGlvbnMnXSA9ICdFcyB3dXJkZSBrZWluZSBMaXN0ZW5mZWxkLU9wdGlvbiBhdXNnZXcmYXVtbDtobHQnOwokbGFuZ1snZXJyb3Jfbm9mZXUnXSA9ICdLb25udGUgZGFzIEZyb250RW5kVXNlcnMtTW9kdWwgbmljaHQgZmluZGVuJzsKJGxhbmdbJ2Vycm9yX25vbGVuZ3RoJ10gPSAnRXMgd3VyZGUga2VpbmUgbWF4aW1hbGUgRmVsZGwmYXVtbDtuZ2UgYW5nZWdlYmVuJzsKJGxhbmdbJ2Vycm9yX25vcmVzdWx0c2ZvdW5kJ10gPSAnSW4gZGVyIERhdGVuYmFuayB3dXJkZW4ga2VpbmUgRGF0ZW4gZ2VmdW5kZW4sIGRpZSBtaXQgSWhyZW4gS3JpdGVyaWVuICZ1dW1sO2JlcmVpbnN0aW1tZW4nOwokbGFuZ1snZXJyb3JfcG9zdGNvZGVfbG9va3VwJ10gPSAnS29ubnRlIGtlaW5lIEluZm9ybWF0aW9uZW4gZiZ1dW1sO3IgZGllIFBvc3RsZWl0emFobCAlcyBmaW5kZW4nOwokbGFuZ1snZXJyb3JfcHJlZml4X21zZyddID0gJ0luIFplaWxlICVkIGlzdCBlaW4gRmVobGVyIGF1ZmdldHJldGVuOiAlcyc7CiRsYW5nWydleHBvcnRjc3YnXSA9ICdBbHMgQ1NWLURhdGVpIGV4cG9ydGllcmVuJzsKJGxhbmdbJ2ZheCddID0gJ0ZheCAnOwokbGFuZ1snZmF4dGV4dCddID0gJ0ZheCAnOwokbGFuZ1snZmllbGRkZWYnXSA9ICdGZWxkZGVmaW5pdGlvbic7CiRsYW5nWydmaWVsZGRlZnMnXSA9ICdGZWxkZGVmaW5pdGlvbmVuJzsKJGxhbmdbJ2ZpZWxkZGVmdGV4dCddID0gJ0ZlbGRkZWZpbml0aW9uJzsKJGxhbmdbJ2ZpZWxkZGVmYWRkZWQnXSA9ICdEaWUgRmVsZGRlZmluaXRpb24gd3VyZGUgaGluenVnZWYmdXVtbDtndCc7CiRsYW5nWydmaWVsZGRlZnVwZGF0ZWQnXSA9ICdEaWUgRmVsZGRlZmluaXRpb24gd3VyZGUgYWt0dWFsaXNpZXJ0JzsKJGxhbmdbJ2ZpZWxkZGVmZGVsZXRlZCddID0gJ0RpZSBGZWxkZGVmaW5pdGlvbiB3dXJkZSBnZWwmb3VtbDtzY2h0JzsKJGxhbmdbJ2ZpZWxkX2NoZWNrYm94J10gPSAnS29udHJvbGxmZWxkJzsKJGxhbmdbJ2ZpZWxkX2Ryb3Bkb3duJ10gPSAnTGlzdGVuZmVsZCc7CiRsYW5nWydmaWVsZF90ZXh0YXJlYSddID0gJ1RleHRiZXJlaWNoJzsKJGxhbmdbJ2ZpZWxkX3RleHRib3gnXSA9ICdUZXh0ZWluZ2FiZSc7CiRsYW5nWydmaXJzdHBhZ2UnXSA9ICc8PCAnOwokbGFuZ1snZnJvbnRlbmRmb3JtdGVtcGxhdGVfYWRkZWRpdCddID0gJ0Zyb250ZW5kLUZvcm11bGFyLVRlbXBsYXRlIGYmdXVtbDtyIGRpZSBXZWJzZWl0ZSBoaW56dWYmdXVtbDtnZW4vYmVhcmJlaXRlbic7CiRsYW5nWydmcm9udGVuZGZvcm10ZW1wbGF0ZXMnXSA9ICdVbnRlcm5laG1lbnMtVGVtcGxhdGVzIGJlYXJiZWl0ZW4nOwokbGFuZ1snZnJvbnRlbmRmb3JtdGVtcGxhdGV1cGRhdGVkJ10gPSAnVW50ZXJuZWhtZW5zLVRlbXBsYXRlcyBha3R1YWxpc2llcnQnOwokbGFuZ1snaGVscCddID0gJzxoMz5XYXMgbWFjaHQgZGllc2VzIE1vZHVsPzwvaDM+DQo8cD5NaXQgZGllc2VtIE1vZHVsIGsmb3VtbDtubmVuIEluZm9ybWF0aW9uZW4gJnV1bWw7YmVyIFVudGVybmVobWVuIGdlc2FtbWVsdCwgdmVyd2FsdGV0IHVuZCBhbmdlemVpZ3Qgd2VyZGVuLiBHcnVuZHMmYXVtbDt0emxpY2ggc2luZCBkYXMgZGllIEtvbnRha3RkYXRlbiB1bmQgZWluIExvZ287IGVzIGlzdCBqZWRvY2ggYXVmIGZsZXhpYmVsIGdlbnVnLCB1bSB3ZWl0ZXJlIEZlbGRlciBoaW56dXp1ZiZ1dW1sO2dlbiB1bmQgJm91bWw7ZmZlbnRsaWNoZSB2b24gcHJpdmF0ZW4gRGF0ZW4genUgdW50ZXJzY2hlaWRlbi48L3A+DQo8cD5EaWVzZXMgTW9kdWwga2FubiBmJnV1bWw7ciB2ZXJzY2hpZWRlbmUgWndlY2tlIHZlcndlbmRldCB3ZXJkZW4uIEVpbiBIZXJzdGVsbGVyIGsmb3VtbDtubnRlIHp1bSBCZWlzcGllbCBlaW5lIExpc3RlIHNlaW5lciBIJmF1bWw7bmRsZXIgYW56ZWlnZW4gbGFzc2VuLiBFcyBpc3QgamVkb2NoIGF1Y2ggZmxleGliZWwgZ2VudWcsIHVtIGYmdXVtbDtyIGcmYXVtbDtuemxpY2ggYW5kZXJlIFp3ZWNrZSBlaW5nZXNldHp0IHp1IHdlcmRlbi48L3A+DQo8aDM+V2llIHdpcmQgZXMgZWluZ2VzZXR6dDwvaDM+DQo8cD5EaWVzZXMgTW9kdWwgd2lyZCB2ZXJ3ZW5kZXQsIHdlbm4gU2llIGRlbiBUYWcgPGNvZGU+e0NvbXBhbnlEaXJlY3Rvcnl9PC9jb2RlPiBpbiBlaW4gVGVtcGxhdGUgb2RlciBJbmhhbHQgZWluZiZ1dW1sO2dlbi4gRGllIEZpcm1lbmRhdGVuIHdlcmRlbiBpbiBkZXIgQWRtaW5pc3RyYXRpb24gJnV1bWw7YmVyIGRlbiBNZW4mdXVtbDstRWludHJhZyAmcXVvdDtVbnRlcm5laG1lbnN2ZXJ6ZWljaG5pcyZxdW90OyBlaW5nZWdlYmVuIHVuZCBiZWFyYmVpdGV0LiAmVXVtbDtiZXIgZGllIHZlcnNjaGllZGVuZW4gUGFyYW1ldGVyLCBkaWUgd2VpdGVyIHVudGVuIGJlc2NocmllYmVuIHdlcmRlbiwgIGwmYXVtbDtzc3Qgc2ljaCBkYXMgVmVyaGFsdGVuIGRlcyBNb2R1bHMgYW5wYXNzZW4uPC9wPg0KPGgzPlNpY2hlcmhlaXQ8L2gzPg0KPHA+VW0gZGllIFVudGVybmVobWVuIG1pdCBkaWVzZW0gTW9kdWwgdmVyd2FsdGVuIHp1IGsmb3VtbDtubmVuLCBtdXNzIGRlciBCZW51dHplciBkaWUgQmVyZWNodGlndW5nIDxlbT5Nb2RpZnkgQ29tcGFueSBEaXJlY3Rvcnk8L2VtPiBoYWJlbi48L3A+DQo8cD5VbSBkaWUgbWl0Z2VsaWVmZXJ0ZW4gVGVtcGxhdGVzIGJlYXJiZWl0ZW4genUgayZvdW1sO25uZW4sIG11c3MgZGVyIEJlbnV0emVyIGRpZSBCZXJlY2h0aWd1bmcgPGVtPk1vZGlmeSBUZW1wbGF0ZXM8L2VtPiBoYWJlbi48L3A+DQo8cD5VbSBiZXN0aW1tdGUgRWluc3RlbGx1bmdlbiB2b3JuZWhtZW4genUgayZvdW1sO25uZW4sIG11c3MgZGVyIEJlbnV0emVyIGRpZSBCZXJlY2h0aWd1bmcgPGVtPk1vZGlmeSBTaXRlIFByZWZlcmVuY2VzPC9lbT4gaGFiZW4uPC9wPg0KPGgzPlByZXR0eSBVUkxTPC9oMz4NCjxwPkRpZSBGdW5rdGlvbmFsaXQmYXVtbDt0IHVuZCBGbGV4aWJpbGl0JmF1bWw7dCBnZWh0IGV0d2FzIHZlcmxvcmVuLCB3ZW5uIFNpZSBQcmV0dHkgVVJMcyB2ZXJ3ZW5kZW4uIFNvIHNvbGx0ZW4gU2llIHp1bSBCZWlzcGllbCwgd2VubiBTaWUgUHJldHR5IFVSTHMgbWl0IGRpZXNlbSBNb2R1bCB2ZXJ3ZW5kZW4sIGRlbiBNb2R1bC1UYWcgaW0gU3RhbmRhcmQtSW5oYWx0c2Jsb2NrIGVpbmYmdXVtbDtnZW4uIFdlbm4gU2llIGRhbm4gZWluZW4gTGluayBvZGVyIGVpbmVuIEFic2VuZGVuLUJ1dHRvbiBkaWVzZXMgTW9kdWxzIGtsaWNrZW4sIHdpcmQgZGFzIEVyZ2VibmlzIGltbWVyIGRlbiBTdGFuZGFyZC1JbmhhbHRzYmxvY2sgZXJzZXR6ZW4uPC9wPic7CiRsYW5nWydpZCddID0gJ0lEJzsKJGxhbmdbJ2luZm9fZHJvcGRvd25fb3B0aW9ucyddID0gJ0hpZXIgayZvdW1sO25uZW4gU2llIGRpZSBPcHRpb25lbiBmJnV1bWw7ciBkaWUgTGlzdGVuZmVsZC1Lb250cm9sbGUgZWluZ2ViZW4sIGpld2VpbHMgZWluZSBaZWlsZSBwcm8gRWludHJhZy4gVHJlbm5lbiBTaWUgU2NobCZ1dW1sO3NzZWwgdW5kIFdlcnRlIG1pdCBlaW5lbSA9LiBCZWlzcGllbDogU2NobCZ1dW1sO3NzZWw9V2VydCc7CiRsYW5nWydpbWFnZWN1cnJlbnRoaWRkZW4nXSA9ICcgICc7CiRsYW5nWydpbWFnZXRleHQnXSA9ICdCaWxkJzsKJGxhbmdbJ2ltcG9ydGNzdiddID0gJ0NTViBpbXBvcnRpZXJlbic7CiRsYW5nWydsYXRpdHVkZSddID0gJ0JyZWl0ZW5ncmFkJzsKJGxhbmdbJ2xhc3RwYWdlJ10gPSAnPj4gJzsKJGxhbmdbJ2xvZ29jdXJyZW50aGlkZGVuJ10gPSAnICAnOwokbGFuZ1snbG9nb3RleHQnXSA9ICdVbnRlcm5laG1lbnNsb2dvJzsKJGxhbmdbJ2xvbmdpdHVkZSddID0gJ0wmYXVtbDtuZ2VuZ3JhZCc7CiRsYW5nWydsb29rdXAnXSA9ICdLb29yZGluYXRlbiBzdWNoZW4nOwokbGFuZ1snbWF4bGVuZ3RoJ10gPSAnTWF4aW1hbGUgTCZhdW1sO25nZSc7CiRsYW5nWydtYXhfbGVuZ3RoJ10gPSAnTWF4aW1hbGUgTCZhdW1sO25nZSc7CiRsYW5nWydtYXhsZW5ndGh0ZXh0J10gPSAnTWF4aW1hbGUgTCZhdW1sO25nZSc7CiRsYW5nWydtb2RpZmllZGRhdGUnXSA9ICdEYXR1bSBkZXIgbGV0enRlbiBCZWFyYmVpdHVuZyc7CiRsYW5nWyduYW1lJ10gPSAnTmFtZSAnOwokbGFuZ1snbmFtZXRleHQnXSA9ICdOYW1lICc7CiRsYW5nWyduZWVkcGVybWlzc2lvbiddID0gJ1VtIGRpZXNlIEZ1bmt0aW9uIGF1c2YmdXVtbDtocmVuIHp1IGsmb3VtbDtubmVuLCBiZW4mb3VtbDt0aWdlbiBTaWUgZGllIEJlcmVjaHRpZ3VuZyAmIzAzOTslcyYjMDM5Oy4nOwokbGFuZ1snbm8nXSA9ICdOZWluJzsKJGxhbmdbJ25vY29tcGFueW5hbWVnaXZlbiddID0gJ0VzIHd1cmRlIGtlaW4gRmlybWVubmFtZSBlaW5nZWdlYmVuJzsKJGxhbmdbJ25vbmFtZWdpdmVuJ10gPSAnRXMgd3VyZGUga2VpbiBOYW1lIGVpbmdlZ2ViZW4nOwokbGFuZ1snbm90YW51bWJlciddID0gJ0VzIHd1cmRlIGtlaW5lIFphaGwgZWluZ2VnZWJlbic7CiRsYW5nWyduZXh0cGFnZSddID0gJz4gJzsKJGxhbmdbJ29mJ10gPSAndm9uJzsKJGxhbmdbJ3BhZ2UnXSA9ICdTZWl0ZSc7CiRsYW5nWydwYXJhbV9hY3Rpb24nXSA9ICdNaXQgZGllc2VtIFBhcmFtZXRlciB3aXJkIGRhcyBwcmltJmF1bWw7cmUgVmVyaGFsdGVuIGRlcyBNb2R1bHMgZmVzdGdlbGVndC4gRm9sZ2VuZGUgV2VydGUgc2luZCBtJm91bWw7Z2xpY2g6DQo8dWw+DQogIDxsaT5jYXRlZ29yeWxpc3QgLS0gWmVpZ3QgZWluZSBMaXN0ZSBkZXIgS2F0ZWdvcmllbi4gRGllIEJlc3VjaGVyIGsmb3VtbDtubmVuIGRhbm4gaW4gZGVuIFp1c2FtbWVuZmFzc3VuZ3MtQW5zaWNodCB1bmQgd2VpdGVyIGluIGRpZSBEZXRhaWwtQW5zaWNodCB3ZWNoc2Vsbi48L2xpPg0KICA8bGk+PHN0cm9uZz5kZWZhdWx0PC9zdHJvbmc+IC0tIERpZSBVbnRlcm5laG1lbiB3ZXJkZW4gaW4gZWluZW0gWnVzYW1tZW5mYXNzdW5ncy1Nb2R1cyBhbmdlemVpZ3QuPC9saT4NCiAgPGxpPmRldGFpbHMgLS0gWmVpZ3QgZGV0YWlsaWVydGUgSW5mb3JtYXRpb25lbiAmdXVtbDtiZXIgZWluIGJlc3RpbW10ZXMgVW50ZXJuZWhtZW4gYW4uPC9saT4NCiAgPGxpPmZlX2VkaXQgLS0gWmVpZ3QgYXVmIGRlciBXZWJzZWl0ZSBlaW4gRm9ybXVsYXIgYW4sICZ1dW1sO2JlciBkYXMgZGllIEluZm9ybWF0aW9uZW4gZWluZXMgYmVzdGltbXRlbiBVbnRlcm5laG1lbnMgYmVhcmJlaXRldCB3ZXJkZW4gayZvdW1sO25uZW4uPC9saT4NCiAgIDxsaT5mcm9udGVuZGxpc3QgLS0gWmVpZ3QgYXVmIGRlciBXZWJzZWl0ZSBlaW5lIExpc3RlIGFsbGVyIFVudGVybmVobWVuc2RhdGVuIGFuLCBtaXQgZGVyIG9wdGlvbmFsZW4gTSZvdW1sO2dsaWNoa2VpdCwgRGF0ZW4gaGluenV6dWYmdXVtbDtnZW4uPC9saT4NCiAgPGxpPnNlYXJjaCAgLS0gWmVpZ3QgZWluIEZvcm11bGFyIGYmdXVtbDtyIGRpZSBTdWNoZSBuYWNoIGVpbmVtIGJlc3RpbW10ZW4gVW50ZXJuZWhtZW4gYW4uPC9saT4NCiAgPGxpPmJyb3dzZWhpZXIgLS0gWmVpZ3QgZWluZSBMaXN0ZSBkZXIgSGllcmFyY2hpZW4gYW4uIERpZSBCZXN1Y2hlciBrJm91bWw7bm5lbiBkYW5uIGluIGRlbiBadXNhbW1lbmZhc3N1bmdzLUFuc2ljaHQgdW5kIHdlaXRlciBpbiBkaWUgRGV0YWlsLUFuc2ljaHQgd2VjaHNlbG4uPC9saT4NCg0KPC91bD4NCic7CiRsYW5nWydwYXJhbV9pbmxpbmUnXSA9ICdLYW5uIG51ciBtaXQgZGVtIDxlbT5kZWZhdWx0PC9lbT4gWnVzYW1tZW5mYXNzdW5ncy0gdW5kIGRlbSA8ZW0+c2VhcmNoPC9lbT4gTW9kdXMgdmVyd2VuZGV0IHdlcmRlbi4gTWl0IGRpZXNlbSBQYXJhbWV0ZXIga2FubiBmZXN0Z2VsZWd0IHdlcmRlbiwgb2IgZGllIEVyZ2Vibmlzc2UgZGVuIFN0YW5kYXJkLUluaGFsdHNibG9jayBvZGVyIGRlbiBNb2R1bC1UYWcgKGlubGluZSkgZXJzZXR6ZW4gc29sbGVuLic7CiRsYW5nWydwYXJhbV9zZWFyY2hmb3JtdGVtcGxhdGUnXSA9ICdLYW5uIG51ciBpbSA8ZW0+c2VhcmNoPC9lbT4gTW9kdXMgdmVyd2VuZGV0IHdlcmRlbi4gTWl0IGRpZXNlbSBQYXJhbWV0ZXIga2FubiBlaW4gdm9uIGRlciBWb3JlaW5zdGVsbHVuZyBhYndlaWNoZW5kZXMgVGVtcGxhdGUgZiZ1dW1sO3IgZGFzIFN1Y2hmb3JtdWxhciBmZXN0Z2VsZWd0IHdlcmRlbi4nOwokbGFuZ1sncGFyYW1fcGFnZWxpbWl0J10gPSAnV2lyZCBkaWVzIG1pdCBkZW0gPGVtPmRlZmF1bHQ8L2VtPiBadXNhbW1lbmZhc3N1bmdzLU1vZHVzIG9kZXIgZGVtIDxlbT5zZWFyY2g8L2VtPiBNb2R1cyB2ZXJ3ZW5kZXQsIGthbm4gbWl0IGRpZXNlbSBXZXJ0IGRpZSBBbnphaGwgZGVyIGF1c2dlZ2ViZW5lbiBFcmdlYm5pc3NlIGZlc3RnZWxlZ3Qgd2VyZGVuLic7CiRsYW5nWydwYXJhbV9jYXRlZ29yeSddID0gJ0JlaSBWZXJ3ZW5kdW5nIGltIDxlbT5kZWZhdWx0PC9lbT4gWnVzYW1tZW5mYXNzdW5ncy1Nb2R1cyB3ZXJkZW4gbWl0IGRpZXNlbSBQYXJhbWV0ZXIgZGllIEthdGVnb3JpZW4gKGRlciBtaXQgZGVuIGV4aXN0aWVyZW5kZW4gS2F0ZWdvcmllICZ1dW1sO2JlcmVpbnN0aW1tZW4gc29sbHRlbikgZmVzdGdlbGVndCwgZGVzc2VuIFVudGVybmVobWVuIGFuZ2V6ZWlndCB3ZXJkZW4gc29sbGVuLiBEaWUgS2F0ZWdvcmllbiBzaW5kIGR1cmNoIEtvbW1hdGEgdm9uZWluYW5kZXIgZ2V0cmVubnQgYW56dWdlYmVuLic7CiRsYW5nWydwYXJhbV9jYXRlZ29yeWxpc3R0ZW1wbGF0ZSddID0gJ0xlZ3QgZGFzIFRlbXBsYXRlIGZlc3QgKGFscyBOYW1lKSwgbWl0IGRlbSBkaWUgS2F0ZWdvcmllbmxpc3RlIGFuZ2V6ZWlndCB3ZXJkZW4gc29sbC4nOwokbGFuZ1sncGFyYW1fY29tcGFueWlkJ10gPSAnRGllc2VyIFBhcmFtZXRlciBsZWd0IGZlc3QsIHdlbGNoZXIgRmlybWVuLURhdGVuc2F0eiBiZWFyYmVpdGV0IG9kZXIgYW5nZXplaWd0IHdlcmRlbiBzb2xsLiBJc3QgZiZ1dW1sO3IgZGllIEJlYXJiZWl0dW5nIHZvbiBEYXRlbiBpbSBGcm9udGVuZCB1bmQgaW0gRGV0YWlsLU1vZHVzIGVyZm9yZGVybGljaC4nOwokbGFuZ1sncGFyYW1fZGV0YWlscGFnZSddID0gJ0xlZ3QgZWluZW4gU2VpdGVuLUFsaWFzIGZlc3QgKGFscyBOYW1lKSwgYXVmIGRlc3NlbiBTZWl0ZSBkaWUgRGV0YWlsZGF0ZW4gYW5nZXplaWd0IHdlcmRlbiBzb2xsZW4uIDxzdHJvbmc+SGlud2Vpczo8L3N0cm9uZz4gRGllc2VyIFBhcmFtZXRlciBpc3QgbWl0IFByZXR0eSBVUkxzIG5pY2h0IGtvbXBhdGliZWwuJzsKJGxhbmdbJ3BhcmFtX2RldGFpbHRlbXBsYXRlJ10gPSAnTGVndCBkYXMgVGVtcGxhdGUgZmVzdCAoYWxzIE5hbWUpLCB3ZWxjaGVzIGYmdXVtbDtyIGRpZSBEZXRhaWxhbnNpY2h0IHZlcndlbmRldCB3ZXJkZW4gc29sbC4gPHN0cm9uZz5IaW53ZWlzOjwvc3Ryb25nPiBEaWVzZXIgUGFyYW1ldGVyIGlzdCBtaXQgUHJldHR5IFVSTHMgbmljaHQga29tcGF0aWJlbC4nOwokbGFuZ1sncGFyYW1fZnJvbnRlbmRmb3JtdGVtcGxhdGUnXSA9ICdMZWd0IGRhcyBUZW1wbGF0ZSBmZXN0IChhbHMgTmFtZSksIHdlbGNoZXMgZiZ1dW1sO3IgZGllIEFuemVpZ2UgZGVzIEJlYXJiZWl0dW5nc2Zvcm11bGFycyBhdWYgZGVyIFdlYnNlaXRlIHZlcndlbmRldCB3ZXJkZW4gc29sbC4nOwokbGFuZ1sncGFyYW1fc2VsZWN0Y2F0ZWdvcnknXSA9ICcmVXVtbDtiZXIgZGllc2VuIFBhcmFtZXRlciBrYW5uIGRpZSBBbnplaWdlIGVpbmVzIEZvcm11bGFycyBha3RpdmVydCB3ZXJkZW4sIG1pdCBkZW0gQmVzdWNoZXIgRGF0ZW5zJmF1bWw7dHplIGVpbmVyIEthdGVnb3JpZSBpbnRlcmFrdGl2IGZpbHRlcm4gayZvdW1sO25uZW4uIERpZXNlciBQYXJhbWV0ZXIgc29sbHRlIG5pY2h0IGluIFZlcmJpbmR1bmcgbWl0IGRlbSBQYXJhbWV0ZXIgJiMwMzk7Y2F0ZWdvcnkmIzAzOTsgdmVyd2VuZGV0IHdlcmRlbi4nOwokbGFuZ1sncGFyYW1fc2hvd2FsbCddID0gJ0thbm4gbnVyIG1pdCBkZXIgY2F0ZWdvcnlsaXN0IEFrdGlvbiB2ZXJ3ZW5kZXQgd2VyZGVuLiBXZW5uIGRpZXNlciBQYXJhbWV0ZXIgZ2VzZXR6dCB3dXJkZSwgd2VyZGVuIGFsbGUgS2F0ZWdvcmllbiBtaXQgbmljaHQgJnV1bWw7YmVyZWluc3RpbW1lbmRlbiBGaXJtZW4gYXVzZ2VnZWJlbi4gJzsKJGxhbmdbJ3BhcmFtX3NvcnRvcmRlciddID0gJ0xlZ3QgZGllIFNvcnRpZXJ1bmcgZGVyIEZlbGRlciBpbiBkZXIgWnVzYW1tZW5mYXNzdW5nc2Fuc2ljaHQgZmVzdC4gTSZvdW1sO2dsaWNoZSBXZXJ0ZSBzaW5kOg0KPHVsPg0KICA8bGk+PHN0cm9uZz5hc2M8L3N0cm9uZz4gLS0gQXVmc3RlaWdlbmQ8L2xpPg0KICA8bGk+ZGVzYyAtLSBBYnN0ZWlnZW5kPC9saT4NCjwvdWw+JzsKJGxhbmdbJ3BhcmFtX3NvcnRieSddID0gJ051ciBpbSBadXNhbW1lbmZhc3N1bmdzLU1vZHVzIGFud2VuZGJhci4gRGllc2VyIFBhcmFtZXRlciBsZWd0IGZlc3QsIHdvbmFjaCBkaWUgVW50ZXJuZWhtZW4gc29ydGllcnQgd2VyZGVuIHNvbGxlbi4gRXMgc2luZCBmb2xnZW5kZSBXZXJ0ZSBtJm91bWw7Z2xpY2g6DQo8dWw+DQo8bGk+aWQgLS0gRGllIGludGVybmUgVW50ZXJuZWhtZW5zLUlEPC9saT4NCiAgPGxpPjxzdHJvbmc+Y29tcGFueV9uYW1lPC9zdHJvbmc+IC0tIERlciBVbnRlcm5laG1lbnNuYW1lPC9saT4NCiAgPGxpPnBob25lIC0tIGRpZSBUZWxlZm9ubnVtbWVyPC9saT4NCiAgPGxpPmZheCAtLSBkaWUgRmF4bnVtbWVyPC9saT4NCiAgPGxpPmVtYWlsIC0tIGRpZSBFbWFpbC1BZHJlc3NlPC9saT4NCiAgPGxpPndlYnNpdGUgLS0gRGllIFdlYnNlaXRlbi1VUkw8L2xpPg0KICA8bGk+Y3JlYXRlZCAtLSBEYXMgRXJzdGVsbHVuZ3NkYXR1bSBkZXMgVW50ZXJuZWhtZW5zZGF0ZW5zYXR6ZXM8L2xpPg0KICA8bGk+bW9kaWZpZWQgLS0gRGFzIEJlYXJiZWl0dW5nc2RhdHVtIGRlcyBVbnRlcm5laG1lbnNkYXRlbnNhdHplczwvbGk+DQogIDxsaT5zdGF0dXMgLS0gZGVyIFN0YXR1cyBkZXMgVW50ZXJuZWhtZW5zZGF0ZW5zYXR6ZXM8L2xpPg0KICA8bGk+cmFuZG9tIC0tIGRpZSBFaW50ciZhdW1sO2dlIHp1ZiZhdW1sO2xsaWcgc29ydGllcmVuLjwvbGk+DQogIDxsaT5mOkZlbGRuYW1lIC0tIG5hY2ggJm91bWw7ZmZlbnRsaWNoZW4genVzJmF1bWw7dHpsaWNoZW4gRmVsZGVybiBzb3J0aWVyZW4uIERpZSBBdXNnYWJlIGVyZm9sZ3Qgc29ydGllcnQgbmFjaCBkZW0gYmVuYW5udGVuIHp1cyZhdW1sO3R6bGljaGVuIEZlbGQuPGJyIC8+DQogIDxzdHJvbmc+SGlud2VpcyAxOjwvc3Ryb25nPiBXZW5uIGRpZSBGZWxkbmFtZW4gTGVlcnplaWNoZW4gZW50aGFsdGVuLCBtJnV1bWw7c3NlbiBTaWUgQW5mJnV1bWw7aHJ1bmdzemVpY2hlbiB2ZXJ3ZW5kZW4uPGJyIC8+DQogIDxzdHJvbmc+SGlud2VpcyAyOjwvc3Ryb25nPiBUaGUgZmllbGQgc3BlY2lmaWVkIG11c3QgYmUgbWFya2VkIGFzIHB1YmxpYy48L2xpPg0KICA8c3Ryb25nPk5vdGU6IDwvc3Ryb25nPiBXaGVuIHVzaW5nIGN1c3RvbSBmaWVsZCBzb3J0aW5nLCBZb3UgbWF5IGFsc28gc3BlY2lmeSBhIGZsYWcgYWZ0ZXIgdGhlIGZpZWxkIG5hbWUgdG8gaW5kaWNhdGUgdGhhdCBpbnRlZ2VyIHNvcnRpbmcgc2hvdWxkIGJlIHBlcmZvcm1lZC4gIGkuZTogPGNvZGU+c29ydGJ5PWY6Y3VzdG9tX29yZGVyaW5nOmk8L2NvZGU+PGJyLz4NCjwvdWw+JzsKJGxhbmdbJ3BhcmFtX3N1bW1hcnl0ZW1wbGF0ZSddID0gJ0xlZ3QgZmVzdCwgd2VsY2hlcyBUZW1wbGF0ZSBmJnV1bWw7ciBkaWUgQW56ZWlnZSBkZXIgWnVzYW1tZW5mYXNzdW5nIHZlcndlbmRldCB3ZXJkZW4gc29sbCAoTmFtZSBkZXMgVGVtcGxhdGVzKS4gPHN0cm9uZz5IaW53ZWlzOjwvc3Ryb25nPiBEaWVzZXIgUGFyYW1ldGVyIGZ1bmt0aW9uaWVydCBuaWNodCBtaXQgUHJldHR5IFVSTHMuJzsKJGxhbmdbJ3Bvc3RhbF9jb2RlJ10gPSAnUG9zdGxlaXR6YWhsIChQTFopJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsJ10gPSAnRGFzIENvbXBhbnktRGlyZWN0b3J5LU1vZHVsIChVbnRlcm5laG1lbnN2ZXJ6ZWljaG5pcykgd3VyZGUgaW5zdGFsbGllcnQnOwokbGFuZ1sncG9zdHVuaW5zdGFsbCddID0gJ0RhcyBDb21wYW55LURpcmVjdG9yeS1Nb2R1bCAoVW50ZXJuZWhtZW5zdmVyemVpY2huaXMpIHd1cmRlIGRlaW5zdGFsbGllcnQuIFMmYXVtbDttdGxpY2hlIFVudGVybmVobWVuc2RhdGVuIHd1cmRlbiBnZWwmb3VtbDtzY2h0Lic7CiRsYW5nWydwcmV1bmluc3RhbGwnXSA9ICdXb2xsZW4gU2llIGRpZXNlcyBNb2R1bCB3aXJrbGljaCBkZWluc3RhbGxpZXJlbj8gTWl0IGRlciBEZWluc3RhbGxhdGlvbiBkZXMgTW9kdWxzIHdlcmRlbiBzJmF1bWw7bXRsaWNoZSBVbnRlcm5laG1lbnNkYXRlbiBnZWwmb3VtbDtzY2h0Lic7CiRsYW5nWydwcmV2cGFnZSddID0gJzwgJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yaWVzX2ltcG9ydGVkJ10gPSAnS2F0ZWdvcmllbiBpbXBvcnRpZXJ0JzsKJGxhbmdbJ3Byb21wdF9jaGVja19kdXBsaWNhdGVzJ10gPSAnQXVmIER1cGxpa2F0ZSB2b24gVW50ZXJuZWhtZW5zbmFtZW4gcHImdXVtbDtmZW4/JzsKJGxhbmdbJ3Byb21wdF9jb2xsZWN0c3RhdHMnXSA9ICdTdWNoLVN0YXRpc3Rpa2VuIGVyc3RlbGxlbic7CiRsYW5nWydwcm9tcHRfY29tcGFuaWVzX2ltcG9ydGVkJ10gPSAnRmlybWVuIGltcG9ydGllcnQnOwokbGFuZ1sncHJvbXB0X2RlbGltZXRlciddID0gJ0ZlbGR0cmVubmVyJzsKJGxhbmdbJ3Byb21wdF9kZXRhaWxwYWdlJ10gPSAnRGllIHZvcmVpbmdlc3RlbGx0ZSBTZWl0ZSwgYXVmIGRlciBkaWUgQXVzZ2FiZSBkZXIgRGV0YWlscyBlcmZvbGdlbiBzb2xsJzsKJGxhbmdbJ3Byb21wdF9kcm9wZG93bl9vcHRpb25zJ10gPSAnTGlzdGVuZmVsZC1PcHRpb25lbic7CiRsYW5nWydwcm9tcHRfZmllbGRkZWZzX2ltcG9ydGVkJ10gPSAnRmVsZGRlZmluaXRpb25lbiBpbXBvcnRpZXJ0JzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRfY2F0ZWdvcnlkZWZzJ10gPSAnRmVobGVuZGUgS2F0ZWdvcmllbiBiZWltIEltcG9ydCBlcnN0ZWxsZW4nOwokbGFuZ1sncHJvbXB0X2ltcG9ydF9jYXRlZ29yeXZhbHMnXSA9ICdLYXRlZ29yaWV3ZXJ0ZSBiZWltIEltcG9ydCBmJnV1bWw7bGxlbic7CiRsYW5nWydwcm9tcHRfaW1wb3J0X2NzdmZpbGUnXSA9ICdDU1YtRGF0ZWkgaG9jaGxhZGVuJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRfZmllbGRkZWZzJ10gPSAnRmVobGVuZGUgRGVmaW5pdGlvbmVuIGYmdXVtbDtyIHp1cyZhdW1sO3R6bGljaGUgRmVsZGVyIGJlaW0gSW1wb3J0IGVyc3RlbGxlbic7CiRsYW5nWydwcm9tcHRfaW1wb3J0X2ZpZWxkdmFscyddID0gJ1dlcnRlIGYmdXVtbDtyIHp1cyZhdW1sO3R6bGljaGUgRmVsZGVyIGJlaW0gSW1wb3J0IGYmdXVtbDtsbGVuJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRfbG9va3VwbGF0bG9uZyddID0gJ0JyZWl0ZW4tIHVuZCBMJmF1bWw7bmdlbmdyYWQgZXJtaXR0ZWxuLCBmYWxscyBuaWNodCBhbmdlZ2ViZW4nOwokbGFuZ1sncHJvbXB0X3BhZ2VsaW1pdCddID0gJ0RpZSBBbnphaGwgZGVyIERhdGVucyZhdW1sO3R6ZSwgZGllIGltIFp1c2FtbWVuZmFzc3VuZ3MtTW9kdXMgcHJvIFNlaXRlIGFuZ2V6ZWlndCB3ZXJkZW4gc29sbGVuJzsKJGxhbmdbJ3Byb21wdF9zdW1tYXJ5c29ydGluZyddID0gJ1N0YW5kYXJkLVNvcnRpZXJ1bmcgaW0gWnVzYW1tZW5mYXNzdW5ncy1Nb2R1cyc7CiRsYW5nWydwcm9tcHRfc3VtbWFyeXNvcnRvcmRlciddID0gJ0RpZSBTdGFuZGFyZC1Tb3J0aWVycmVpaGVuZm9sZ2UgaW0gWnVzYW1tZW5mYXNzdW5ncy1Nb2R1cyA8ZW0+KGZ1bmt0aW9uaWVydCBuaWNodCwgd2VubiBkaWUgU29ydGllcnVuZyBhdWYgJiMwMzk7cmFuZG9tJiMwMzk7IGdlc2V0enQgd3VyZGUpPC9lbT4nOwokbGFuZ1sncHJvbXB0X3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUgJzsKJGxhbmdbJ3B1YmxpYyddID0gJyZPdW1sO2ZmZW50bGljaCc7CiRsYW5nWydwdWJsaXNoZWQnXSA9ICdWZXImb3VtbDtmZmVudGxpY2h0JzsKJGxhbmdbJ3ByZWZlcmVuY2VzJ10gPSAnRWluc3RlbGx1bmdlbic7CiRsYW5nWydyYWRpdXMnXSA9ICdSYWRpdXMgJzsKJGxhbmdbJ3JhbmRvbSddID0gJ1p1ZiZhdW1sO2xsaWcnOwokbGFuZ1sncmV0dXJuJ10gPSAnWnVyJnV1bWw7Y2snOwokbGFuZ1sncmVzZXR0b2ZhY3RvcnknXSA9ICdBdWYgZGllIHByb2dyYW1tc2VpdGlnZW4gVm9yZWluc3RlbGx1bmdlbiB6dXImdXVtbDtja3NldHplbic7CiRsYW5nWydyZXN0b3JldG9kZWZhdWx0c21zZyddID0gJ01pdCBkaWVzZXIgRnVua3Rpb24gayZvdW1sO25uZW4gU2llIGRpZSBJbmhhbHRlIGRlciBUZW1wbGF0ZXMgYXVmIGRpZSBwcm9ncmFtbXNlaXRpZ2VuIFZvcmVpbnN0ZWxsdW5nZW4genVyJnV1bWw7Y2tzZXR6ZW4uIFdvbGxlbiBTaWUgZGllcyB3aXJrbGljaD8nOwokbGFuZ1snc2VhcmNoJ10gPSAnU3VjaGUnOwokbGFuZ1snc2VhcmNoZXMnXSA9ICdTdWNoZW4nOwokbGFuZ1snc2VhcmNoZm9ybXRlbXBsYXRlcyddID0gJ1N1Y2hmb3JtdWxhci1UZW1wbGF0ZXMnOwokbGFuZ1snc2VhcmNoZm9ybXRlbXBsYXRlX2FkZGVkaXQnXSA9ICdFaW4gU3VjaGZvcm11bGFyLVRlbXBsYXRlIGhpbnp1ZiZ1dW1sO2dlbi9iZWFyYmVpdGVuJzsKJGxhbmdbJ3N0YXR1cyddID0gJ1N0YXR1cyAnOwokbGFuZ1snc3VibWl0J10gPSAnQWJzZW5kZW4nOwokbGFuZ1snc3VtbWFyeXRlbXBsYXRlX2FkZGVkaXQnXSA9ICdadXNhbW1lbmZhc3N1bmdzLVRlbXBsYXRlIGhpbnp1ZiZ1dW1sO2dlbi9iZWFyYmVpdGVuJzsKJGxhbmdbJ3N1bW1hcnl0ZW1wbGF0ZXMnXSA9ICdadXNhbW1lbmZhc3N1bmdzLVRlbXBsYXRlcyc7CiRsYW5nWydzdW1tYXJ5dGVtcGxhdGV1cGRhdGVkJ10gPSAnWnVzYW1tZW5mYXNzdW5ncy1UZW1wbGF0ZSBha3R1YWxpc2llcnQnOwokbGFuZ1snc3lzZGVmYXVsdHMnXSA9ICdBdWYgZGllIFZvcmVpbnN0ZWxsdW5nZW4genVyJnV1bWw7Y2tzZXR6ZW4nOwokbGFuZ1sndGVsZXBob25lJ10gPSAnVGVsZWZvbic7CiRsYW5nWyd0ZWxlcGhvbmV0ZXh0J10gPSAnVGVsZWZvbic7CiRsYW5nWyd0aXRsZV9jYXRlZ29yeWxpc3RfZGZsdHRlbXBsYXRlJ10gPSAnVm9yZWluZ2VzdGVsbHRlcyBLYXRlZ29yaWVsaXN0ZW4tVGVtcGxhdGUnOwokbGFuZ1sndGl0bGVfZGV0YWlsX2RmbHR0ZW1wbGF0ZSddID0gJ1ZvcmVpbmdlc3RlbGx0ZXMgRGV0YWlsLVRlbXBsYXRlJzsKJGxhbmdbJ3RpdGxlX2Zyb250ZW5kZm9ybV9kZmx0dGVtcGxhdGUnXSA9ICdWb3JlaW5nZXN0ZWxsdGVzIFdlYnNlaXRlbi1Gb3JtdWxhci1UZW1wbGF0ZSc7CiRsYW5nWyd0aXRsZV9pbXBvcnRfcmVwb3J0J10gPSAnQ1NWLUltcG9ydC1CZXJpY2h0JzsKJGxhbmdbJ3RpdGxlX3NlYXJjaGZvcm1fZGZsdHRlbXBsYXRlJ10gPSAnVm9yZWluZ2VzdGVsbHRlcyBTdWNoZm9ybXVsYXItVGVtcGxhdGUnOwokbGFuZ1sndGl0bGVfc3VtbWFyeV9kZmx0dGVtcGxhdGUnXSA9ICdWb3JlaW5nZXN0ZWxsdGVzIFp1c2FtbWVuZmFzc3VuZ3MtVGVtcGxhdGUnOwokbGFuZ1sndHlwZSddID0gJ1R5cCc7CiRsYW5nWyd0eXBldGV4dCddID0gJ1R5cCc7CiRsYW5nWyd1cCddID0gJ05hY2ggb2Jlbic7CiRsYW5nWyd3ZWJzaXRlJ10gPSAnV2Vic2VpdGUnOwokbGFuZ1snd2Vic2l0ZXRleHQnXSA9ICdXZWJzZWl0ZSc7CiRsYW5nWyd5ZXMnXSA9ICdKYSc7CiRsYW5nWyd1dG1hJ10gPSAnMTU2ODYxMzUzLjE5NDQxOTgyNjUuMTMwODQzMjM1Ni4xMzA4NDM0NDg1LjEzMDg0NDAwNTEuMyc7CiRsYW5nWyd1dG16J10gPSAnMTU2ODYxMzUzLjEzMDg0MzIzNTYuMS4xLnV0bWNjbj0oZGlyZWN0KXx1dG1jc3I9KGRpcmVjdCl8dXRtY21kPShub25lKSc7CiRsYW5nWyd1dG1jJ10gPSAnMTU2ODYxMzUzJzsKJGxhbmdbJ3V0bWInXSA9ICcxNTY4NjEzNTMnOwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lang/ext/es_ES.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2FjdGl2ZSddID0gJ0FjdGl2YSc7CiRsYW5nWydhZGRsaW5rJ10gPSAnQWdyZWdhciBFbmxhY2UnOwokbGFuZ1snYWRkcmVzcyddID0gJ0RpcmVjY2kmb2FjdXRlO24nOwokbGFuZ1snYWRkcmVzc3RleHQnXSA9ICdEaXJlY2NpJm9hY3V0ZTtuJzsKJGxhbmdbJ2FkZGNhdGVnb3J5J10gPSAnQWdyZWdhciBDYXRlZ29yJmlhY3V0ZTthJzsKJGxhbmdbJ2FkZGNvbXBhbnknXSA9ICdBZ3JlZ2FyIENvbXBhJm50aWxkZTsmaWFjdXRlO2EnOwokbGFuZ1snYWRkZmllbGRkZWYnXSA9ICdBZ3JlZ2FyIERlZmluaWNpJm9hY3V0ZTtuIGRlIENhbXBvJzsKJGxhbmdbJ2FkbWluX29ubHknXSA9ICdWaXNpYmxlIHNvbG8gcGFyYSBBZG1pbmlzdHJhZG9yZXMnOwokbGFuZ1snYXJleW91c3VyZSddID0gJyZpcXVlc3Q7RXN0JmFhY3V0ZTsgc2VndXJvIGRlIHF1ZXJlciBib3JyYXIgZXN0bz8nOwokbGFuZ1snYXNjZW5kaW5nJ10gPSAnQXNjZW5kaWVudGUnOwokbGFuZ1snY2FuY2VsJ10gPSAnQ2FuY2VsYXInOwokbGFuZ1snY2FudXNlcmVkaXQnXSA9ICcmaXF1ZXN0O1B1ZWRlbiBsb3MgdXN1YXJpb3MgZGVsIG0mb2FjdXRlO2R1bG8gRkVVIGVkaXRhciBlc3RlIGNhbXBvPyc7CiRsYW5nWydjYW51c2VydmlldyddID0gJyZpcXVlc3Q7UHVlZGVuIGxvcyB1c3VhcmlvcyBkZWwgbSZvYWN1dGU7ZHVsbyBGRVUgdmVyIGVzdGUgY2FtcG8/JzsKJGxhbmdbJ2NhdGVnb3J5J10gPSAnQ2F0ZWdvciZpYWN1dGU7YSc7CiRsYW5nWydjYXRlZ29yaWVzJ10gPSAnQ2F0ZWdvcmlhcyc7CiRsYW5nWydjYXRlZ29yeXRleHQnXSA9ICdDYXRlZ29yJmlhY3V0ZTthJzsKJGxhbmdbJ2NhdGVnb3J5YWRkZWQnXSA9ICdDYXRlZ29yJmlhY3V0ZTthIEFncmVnYWRhJzsKJGxhbmdbJ2NhdGVnb3J5dXBkYXRlZCddID0gJ0NhdGVnb3J5IEFjdHVhbGl6YWRhJzsKJGxhbmdbJ2NhdGVnb3J5bGlzdHRlbXBsYXRlX2FkZGVkaXQnXSA9ICdBZ3JlZ2FyL0JvcnJhciBQbGFudGlsbGEgZGUgTGlzdGFkbyBwb3IgQ2F0ZWdvciZpYWN1dGU7YSc7CiRsYW5nWydjYXRlZ29yeWxpc3R0ZW1wbGF0ZXMnXSA9ICdQbGFudGlsbGFzIGRlIExpc3RhZG8gcG9yIENhdGVnb3ImaWFjdXRlO2EnOwokbGFuZ1snY2F0ZWdvcnlsaXN0dGVtcGxhdGV1cGRhdGVkJ10gPSAnTGlzdGFkbyBwb3IgQ2F0ZWdvciZpYWN1dGU7YSBBY3R1YWxpemFkbyc7CiRsYW5nWydjaGFuZ2Vsb2cnXSA9ICc8dWw+DQogIDxsaT4xLjEuMyAtIEVuZXJvLCAyMDA4IDxlbT4ocmNhbXBiZWxsQHNraW5ueWZpc2htZWRpYS5jb20pPC9lbT4NCiAgICA8dWw+DQogICAgICA8bGk+QWdyZWdhIHBhZ2luYWNpJm9hY3V0ZTtuIGEgbGEgdmlzdGEgU3VtYXJpYTwvbGk+DQogICAgICA8bGk+U29sdWNpJm9hY3V0ZTtuIGEgcHJvYmxlbWEgY29uIFVSTFMgQW1pc3Rvc2FzIGFsIHVzYXIgbGEgdmlzdGEgU3VtYXJpYTwvbGk+DQogICAgPC91bD4NCiAgPC9saT4NCiAgPGxpPjEuMS4yIC0gTm92aWVtYnJlLCAyMDA3IDxlbT4ocmNhbXBiZWxsQHNraW5ueWZpc2htZWRpYS5jb20pPC9lbT4NCiAgICA8dWw+DQogICAgICA8bGk+QWhvcmEgdXNhIGNtc19tb3ZlX3VwbG9hZGVkX2ZpbGUgZW4gdmV6IGRlIG1vdmVfdXBsb2FkZWRfZmlsZTwvbGk+DQogICAgICA8bGk+UmVxdWllcmUgQ01TIDEuMi4xIG9yIHN1cGVyaW9yPC9saT4NCiAgICA8L3VsPg0KICA8L2xpPg0KICA8bGk+MS4xLjEgLSBOb3ZpZW1icmUsIDIwMDcgPGVtPihyY2FtcGJlbGxAc2tpbm55ZmlzaG1lZGlhLmNvbSk8L2VtPg0KICAgIDx1bD4NCiAgICAgIDxsaT5Tb2x1Y2kmb2FjdXRlO24gYSBwcm9ibGVtYSBjb24gbG9zIGVubGFjZXMgYSBEZXRhbGxlcyBlbiB2aXN0YSBTdW1hcmlhIGN1YW5kbyBsYXMgVVJMUyBBbWlzdG9zYXMgZXN0YW4gZGVzYWN0aXZhZGFzLjwvbGk+DQogICAgPC91bD4NCiAgPC9saT4NCiAgPGxpPjEuMSAtIFNlcHRpZW1icmUsIDIwMDcgPGVtPihyY2FtcGJlbGxAc2tpbm55ZmlzaG1lZGlhLmNvbSk8L2VtPg0KICAgIDx1bD4NCiAgICAgIDxsaT5BZ3JlZ2Egc29wb3J0ZSBwYXJhIFVSTFMgQW1pc3Rvc2FzPC9saT4NCiAgICAgIDxsaT5TZWNjaSZvYWN1dGU7biBkZSBheXVkYWQgYWdyZWdhZGE8L2xpPg0KICAgICAgPGxpPkFncmVnYSBtb2RvIGRlIExpc3RhIHBvciBDYXRlZ29yaWE8L2xpPg0KICAgICAgPGxpPkFncmVnYSBzb3BvcnRlIHBhcmEgcXVlIHVzdWFyaW9zIGRlIGludGVyZmF6IGZyb250YWwgZWRpdGVuIGNvbXBhJm50aWxkZTtpYXM8L2xpPg0KICAgICAgPGxpPkFkZGVkIHN1cHBvcnQgZm9yIHB1YmxpYyBhbmQgYWRtaW4gb25seSBmaWVsZHMgaW4gY29tcGFuaWVzPC9saT4NCiAgICAgIDxsaT5BZGRlZCBkaWZmZXJlbnQgc29ydGluZyBjYXBhYmlsaXRpZXMgaW4gc3VtbWFyeSB2aWV3PC9saT4NCiAgICAgIDxsaT5DaGFuZ2VkIE1pbmltdW0gQ01TIFZlcnNpb24gYW5kIGFkZGVkIHN1cHBvcnQgZm9yIHRoZSAxLjEgc2VyaWVzPC9saT4NCiAgICA8L3VsPg0KICA8L2xpPg0KPC91bD4NCic7CiRsYW5nWydjb21wYW55J10gPSAnQ29tcGEmbnRpbGRlOyZpYWN1dGU7YSc7CiRsYW5nWydjb21wYW55YWRkZWQnXSA9ICdDb21wYSZudGlsZGU7JmlhY3V0ZTthIEFncmVnYWRhJzsKJGxhbmdbJ2NvbXBhbnluYW1lJ10gPSAnTm9tYnJlIGRlIGxhIENvbXBhJm50aWxkZTsmaWFjdXRlO2EnOwokbGFuZ1snY29tcGFueXVwZGF0ZWQnXSA9ICdDb21wYSZudGlsZGU7JmlhY3V0ZTthIEFjdHVhbGl6YWRhJzsKJGxhbmdbJ2NvbXBhbmllcyddID0gJ0NvbXBhJm50aWxkZTsmaWFjdXRlO2FzJzsKJGxhbmdbJ2NvbXBhbnl0ZXh0J10gPSAnQ29tcGEmbnRpbGRlOyZpYWN1dGU7YSc7CiRsYW5nWydjb21wYW55ZGlyZWN0b3J5J10gPSAnRGlyZWN0b3JpbyBkZSBDb21wYSZudGlsZGU7JmlhY3V0ZTthcyc7CiRsYW5nWydjb250YWN0ZW1haWwnXSA9ICdDb3JyZW8gZGUgQ29udGFjdG8nOwokbGFuZ1snY3JlYXRlZGRhdGUnXSA9ICdGZWNoYSBkZSBJbmdyZXNvJzsKJGxhbmdbJ2RlZmF1bHR0ZW1wbGF0ZXMnXSA9ICdQbGFudGlsbGFzIHBvciBkZWZlY3RvJzsKJGxhbmdbJ2RlZmF1bHRfdGVtcGxhdGVfbm90aWNlJ10gPSAnPHN0cm9uZz5Ob3RhOjwvc3Ryb25nPiBFbCBjb250ZW5pZG8gZGUgZXN0b3MgY2FtcG9yIGRlIHRleHRvIHNvbiB1dGlsaXphZG9zIHBhcmEgZGV0ZXJtaW5hciBlbCBjb250ZW5pZG8gcG9yIGRlZmVjdG8gZGUgbGFzIHBsYW50aWxsYXMgY3VhbmRvIHByZXNpb25hcyBlbCBib3Qmb2FjdXRlO24gJnF1b3Q7QWdyZWdhciBQbGFudGlsbGEmcXVvdDsgZW4gbGEgcGVzdGEmbnRpbGRlO2EgYXByb3BpYWRhLiAgRWRpdGFyIHVubyBkZSBlc3RvcyBjYW1wb3MgZGUgdGV4dG8gbm8gdGllbmVuIG5pbmcmdWFjdXRlO24gZWZlY3RvIGlubWVkaWF0byBlbiB0dSBzaXRpby4nOwokbGFuZ1snZGVsZXRlJ10gPSAnQm9ycmFyJzsKJGxhbmdbJ2RlbGV0ZWNhdGVnb3J5J10gPSAnQm9ycmFyIENhdGVnb3ImaWFjdXRlO2EnOwokbGFuZ1snZGVsZXRlY29tcGFueSddID0gJ0JvcnJhciBDb21wYSZudGlsZGU7JmlhY3V0ZTthJzsKJGxhbmdbJ2RlbGV0ZWZpZWxkZGVmJ10gPSAnQm9ycmFyIERlZmluaWNpJm9hY3V0ZTtuIGRlIENhbXBvJzsKJGxhbmdbJ2Rlc2NlbmRpbmcnXSA9ICdEZXNjZW5kaWVudGUnOwokbGFuZ1snZGVzY3JpcHRpb24nXSA9ICdEZXNjcmlwY2kmb2FjdXRlO24nOwokbGFuZ1snZGV0YWlscyddID0gJ0RldGFsbGVzJzsKJGxhbmdbJ2RldGFpbHN0ZXh0J10gPSAnRGV0YWxsZXMnOwokbGFuZ1snZGV0YWlsdGVtcGxhdGVfYWRkZWRpdCddID0gJ0FncmVnYXIvQm9ycmFyIFBsYW50aWxsYSBkZSBEZXRhbGxlJzsKJGxhbmdbJ2RldGFpbHRlbXBsYXRlcyddID0gJ1BsYW50aWxsYXMgZGUgRGV0YWxsZSc7CiRsYW5nWydkZXRhaWx0ZW1wbGF0ZXVwZGF0ZWQnXSA9ICdQbGFudGlsbGEgZGUgRGV0YWxsZSBBY3R1YWxpemFkYSc7CiRsYW5nWydkaXNhYmxlZCddID0gJ0Rlc2FiaWxpdGFkbyc7CiRsYW5nWydkb3duJ10gPSAnQWJham8nOwokbGFuZ1snZHJhZnQnXSA9ICdCb3NxdWVqbyc7CiRsYW5nWydlZGl0J10gPSAnRWRpdGFyJzsKJGxhbmdbJ2VkaXRjYXRlZ29yeSddID0gJ0VkaXRhciBDYXRlZ29yJmlhY3V0ZTthJzsKJGxhbmdbJ2VkaXRjb21wYW55J10gPSAnRWRpdGFyIENvbXBhJm50aWxkZTsmaWFjdXRlO2EnOwokbGFuZ1snZWRpdGZpZWxkZGVmJ10gPSAnRWRpdGFyIERlZmluaWNpJm9hY3V0ZTtuIGRlIENhbXBvJzsKJGxhbmdbJ2VtYWlsdGV4dCddID0gJ0NvcnJlby1FJzsKJGxhbmdbJ2Vycm9yX2NvbXBhbnluYW1lJ10gPSAnRWwgbm9tYnJlIGRlIGxhIENvbXBhJm50aWxkZTsmaWFjdXRlO2Egbm8gZXMgdiZhYWN1dGU7bGlkbyc7CiRsYW5nWydlcnJvcl9jb21wYW55bmFtZV9pbnVzZSddID0gJ1lhIGV4aXN0ZSB1bmEgQ29tcGEmbnRpbGRlOyZpYWN1dGU7YSBjb24gZXNlIG5vbWJyZSBlbiBsYSBiYXNlIGRlIGRhdG9zJzsKJGxhbmdbJ2Vycm9yX25vZmV1J10gPSAnTm8gc2UgZW5jb250ciZvYWN1dGU7IGVsIG0mb2FjdXRlO2R1bG8gRnJvbnRFbmRVc2Vycyc7CiRsYW5nWydleHBvcnRjc3YnXSA9ICdFeHBvcnRhciBDU1YnOwokbGFuZ1snZmF4J10gPSAnRmF4ICc7CiRsYW5nWydmYXh0ZXh0J10gPSAnRmF4ICc7CiRsYW5nWydmaWVsZGRlZiddID0gJ0RlZmluaWNpJm9hY3V0ZTtuIGRlIENhbXBvJzsKJGxhbmdbJ2ZpZWxkZGVmcyddID0gJ0RlZmluaWNpb25lcyBkZSBDYW1wbyc7CiRsYW5nWydmaWVsZGRlZnRleHQnXSA9ICdEZWZpbmljaSZvYWN1dGU7biBkZSBDYW1wbyc7CiRsYW5nWydmaWVsZGRlZmFkZGVkJ10gPSAnRGVmaW5pY2kmb2FjdXRlO24gZGUgQ2FtcG8gQWdyZWdhZGEnOwokbGFuZ1snZmllbGRkZWZ1cGRhdGVkJ10gPSAnRGVmaW5pY2kmb2FjdXRlO24gZGUgQ2FtcG8gQWN0dWFsaXphZGEnOwokbGFuZ1snZmllbGRkZWZkZWxldGVkJ10gPSAnRGVmaW5pY2kmb2FjdXRlO24gZGUgQ2FtcG8gQm9ycmFkYSc7CiRsYW5nWydmaXJzdHBhZ2UnXSA9ICc8PCAnOwokbGFuZ1snZnJvbnRlbmRmb3JtdGVtcGxhdGVfYWRkZWRpdCddID0gJ0FncmVnYXIvQm9ycmFyIFBsYW50aWxsYSBkZSBsYSBmb3JtYSBGcm9udGVuZCc7CiRsYW5nWydmcm9udGVuZGZvcm10ZW1wbGF0ZXMnXSA9ICdFZGl0YXIgUGxhbnRpbGxhcyBkZSBDb21wYSZudGlsZGU7JmlhY3V0ZTthJzsKJGxhbmdbJ2Zyb250ZW5kZm9ybXRlbXBsYXRldXBkYXRlZCddID0gJ1BsYW50aWxsYSBkZSBDb21wYSZudGlsZGU7JmlhY3V0ZTthIEFjdHVhbGl6YWRhJzsKJGxhbmdbJ2hlbHAnXSA9ICc8aDM+JmlxdWVzdDtRdSZlYWN1dGU7IGhhY2UgZXN0ZSBNJm9hY3V0ZTtkdWxvPzwvaDM+DQo8cD5Fc3RlIE0mb2FjdXRlO2R1bG8gcHJvdmVlIHVuYSBtYW5lcmEgZGUgcmVjb3BpbGFyLCBvcmdhbml6YXIgeSBtb3N0cmFyIGluZm9ybWFjaSZvYWN1dGU7biBhY2VyY2EgZGUgQ29tcGEmbnRpbGRlO2lhcy4gVXN1YWxpbWVudGUgZXN0YSBlcyBsYSBpbmZvcm1hY2kmb2FjdXRlO24gZGUgY29udGFjdG8geSB1biBsb2dvdGlwbywgcGVybyBlcyBzdWZpY2llbnRlbWVudGUgZmxleGlibGUgcGFyYSBwZXJtaXRpciBvdHJvcyBjYW1wb3MgZXh0ZW5zaWJsZXMsIHkgZGlmZXJlbmNpYXIgZW50cmUgaW5mb3JtYWNpJm9hY3V0ZTtuIHB1YmxpY2EgeSBwcml2YWRhPC9wPg0KPHA+RXN0ZSBNJm9hY3V0ZTtkdWxvIHB1ZWRlIHNlciB1c2FkbyBwYXJhIHVuYSBncmFuIHZhcmllZGFkIGRlIHByb3Amb2FjdXRlO3NpdG9zLiBEZXNkZSB1bmEgbGlzdGEgZGUgUHJvdmVlZG9yZXMgaGFzdGEgdW5hIHNpbXBsZSBsaXN0YSBkZSBjb250YWN0b3MuIEVzIHRhbiBmbGV4aWJsZSBxdWUgcG9kcmlhIHNlciByZS11c2FkbyBlbiBtdWNoYXMgb3RyYXMgZm9ybWFzPC9wPg0KPGgzPiZpcXVlc3Q7Q29tbyBTZSBVbGl0aXphPzwvaDM+DQo8cD5MYSBtYW5lcmEgbWFzIGYmYWFjdXRlO2NpbCBlcyBjb2xvY2FyIGxhIGV0aXF1ZXRhIDxjb2RlPntDb21wYW55RGlyZWN0b3J5fTwvY29kZT4gZGVudHJvIGRlIHR1cyBQbGFudGlsbGFzIChkZSBwJmFhY3V0ZTtnaW5hKSBvIHNpbXBsZW1lbnRlIGRlbnRybyBkZWwgY29udGVuaWRvIGRlIGN1YWxxdWllcmEgZGUgdHVzIHAmYWFjdXRlO2dpbmFzLiBEZXNwdWVzIGRlYmVzIGNvbWVuemFyIGEgYWdyZWdhciByZWdpc3Ryb3MgZW4gbGEgaW50ZXJmYXogYWRtaW5pc3RyYXRpdmEgZGUgJnF1b3Q7Q29tcGFueSBEaXJlY3RvcnkmcXVvdDsuICBQdWVkZXMgZXhwbG9yYXIgbG9zIHZhcmlvcyBwYXImYWFjdXRlO21ldHJvcyAoZGVzY3JpdG9zIGFiYWpvKSBwYXJhIGVuY29udHJhciBtYW5lcmFzIGRlIHBlcnNvbmFsaXphciBlbCBjb21wYXJ0YW1pZW50byBkZWwgbSZvYWN1dGU7ZHVsby48L3A+DQo8aDM+U2VndXJpZGFkPC9oMz4NCjxwPlBhcmEgcG9kZXIgbWFuZWphciBsYXMgY29tcGEmbnRpbGRlOyZpYWN1dGU7YXMgZGVudHJvIGRlIGVzdGUgTSZvYWN1dGU7ZHVsbywgZWwgYWRtaW5pc3RyYWRvciBkZWJlIHRlbmVyIGVsIHBlcm1pc28gJiMwMzk7PC9lbT5Nb2RpZnkgQ29tcGFueSBEaXJlY3Rvcnk8L2VtPiYjMDM5OyBhY3RpdmFkby48L3A+DQo8cD5QYXJhIHBvZGVyIG1vZGlmaWNhciBsYXMgcGxhbnRpbGxhcyBxdWUgY29udHJvbGFuIGxhIGRpc3Bvc2ljaSZvYWN1dGU7biBkZSBsYSBpbmZvcm1hY2kmb2FjdXRlO24sIGVsIGFkbWluaXN0cmFkb3IgZGViZSB0ZW5lciBlbCBwZXJtaXNvJiMwMzk7PGVtPk1vZGlmeSBUZW1wbGF0ZXM8L2VtPiYjMDM5OyBhY3RpdmFkby48L3A+DQo8cD5QYXJhIGFqdXN0YXIgbG9zIHZhcmlvcyBhanVzdGVzLCBzZSBuZWNlc2l0YSBxdWUgZWwgcGVybWlzbyYjMDM5OzxlbT5Nb2RpZnkgU2l0ZSBQcmVmZXJlbmNlczwvZW0+JiMwMzk7IGVzdGUgYWN0aXZhZG8uPC9wPg0KPGgzPlVSTFMgQW1pc3Rvc2FzPC9oMz4NCjxwPkxhIGZ1bmNpb25hbGlkYWQgeSBmbGV4aWJpbGlkYWQgc29uIHJlZHVjaWRhcyBjdWFuZG8gVVJMUyBBbWlzdG9zYXMgc29uIHV0aWxpemFkYXMuIFBvciBlamVtcGxvLCBzaSBlc3RhcyBlc3RhbiBzaWVuZG8gdXNhZGFzIGNvbiBlc3RlIG0mb2FjdXRlO2R1bG8sIGRlYmVzIHBvbmVyIGxhIGV0aXF1ZXRhIGRlIGVzdGUgbSZvYWN1dGU7ZHVsbyBlbiBlbCBCbG9xdWUgcG9yIERlZmVjdG8sIHkgY3VhbmRvIHByZXNpb25hcyBlbiBlbCBlbmxhY2UgZGUgRW52aWFyLCBsb3MgcmVzdWx0YWRvcyByZWVtcGxhemFyYW4gZWwgY29udGVuaWRvIGRlbCBCbG9xdWUgcG9yIERlZmVjdG8uPC9wPic7CiRsYW5nWydpZCddID0gJ0lkICc7CiRsYW5nWydpbWFnZWN1cnJlbnRoaWRkZW4nXSA9ICcgJzsKJGxhbmdbJ2ltYWdldGV4dCddID0gJ0ltYWdlbic7CiRsYW5nWydsYXN0cGFnZSddID0gJz4+ICc7CiRsYW5nWydsb2dvY3VycmVudGhpZGRlbiddID0gJyAnOwokbGFuZ1snbG9nb3RleHQnXSA9ICdMb2dvdGlwbyc7CiRsYW5nWydtYXhsZW5ndGgnXSA9ICdNJmFhY3V0ZTt4aW1hIExvbmdpdHVkJzsKJGxhbmdbJ21heF9sZW5ndGgnXSA9ICdNJmFhY3V0ZTt4aW1hIExvbmdpdHVkJzsKJGxhbmdbJ21heGxlbmd0aHRleHQnXSA9ICdNJmFhY3V0ZTt4aW1hIExvbmdpdHVkJzsKJGxhbmdbJ21vZGlmaWVkZGF0ZSddID0gJ0ZlY2hhIGRlICZVYWN1dGU7bHRpbWEgTW9kaWZpY2FjaSZvYWN1dGU7bic7CiRsYW5nWyduYW1lJ10gPSAnTm9tYnJlJzsKJGxhbmdbJ25hbWV0ZXh0J10gPSAnTm9tYnJlJzsKJGxhbmdbJ25lZWRwZXJtaXNzaW9uJ10gPSAnTmVjZXNpdGEgZWwgcGVybWlzbyAmIzAzOTslcyYjMDM5OyBwYXJhIGVqZWN1dGFyIGVzYSBmdW5jaSZvYWN1dGU7bic7CiRsYW5nWydub2NvbXBhbnluYW1lZ2l2ZW4nXSA9ICdObyBzZSBpbmdyZXMmb2FjdXRlOyBOb21icmUgZGUgQ29tcGEmbnRpbGRlOyZpYWN1dGU7YSc7CiRsYW5nWydub25hbWVnaXZlbiddID0gJ05vIHNlIGluZ3JlcyZvYWN1dGU7IE5vbWJyZSc7CiRsYW5nWydub3RhbnVtYmVyJ10gPSAnTm8gZXMgdW4gTiZ1YWN1dGU7bWVybyc7CiRsYW5nWyduZXh0cGFnZSddID0gJz4gJzsKJGxhbmdbJ29mJ10gPSAnRGUgJzsKJGxhbmdbJ3BhZ2UnXSA9ICdQJmFhY3V0ZTtnaW5hICc7CiRsYW5nWydwYXJhbV9hY3Rpb24nXSA9ICdEZXRlcm1pbmUgdGhlIHByaW1hcnkgYmVoYXZpb3VyIG9mIHRoZSBtb2R1bGUuICBQb3NzaWJsZSB2YWx1ZXMgZm9yIHRoaXMgcGFyYW1ldGVyIGFyZToNCjx1bD4NCiAgPGxpPmNhdGVnb3J5bGlzdCAtLSBEaXNwbGF5IGEgbGlzdCBvZiBjYXRlZ29yaWVzLiAgVXNlcnMgY2FuIGRyaWxsIGRvd24gdG8gc3VtbWFyeSBtb2RlLCBhbmRkIHRoZW4gdG8gZGV0YWlsIG1vZGUuPC9saT4NCiAgPGxpPjxzdHJvbmc+ZGVmYXVsdDwvc3Ryb25nPiAtLSBEaXNwbGF5IGNvbXBhbmllcyBpbiBhIHN1bW1hcnkgbW9kZS48L2xpPg0KICA8bGk+ZGV0YWlscyAtLSBEaXNwbGF5IGRldGFpbGVkIGluZm9ybWF0aW9uIGFib3V0IGEgc3BlY2lmaWMgY29tcGFueS48L2xpPg0KICA8bGk+ZmVfZWRpdCAtLSBEaXNwbGF5IGEgZm9ybSB0byBhbGxvdyBlZGl0aW5nIGluZm9ybWF0aW9uIGFib3V0IGEgc3BlY2lmaWMgY29tcGFueS48L2xpPg0KICAgDQo8L3VsPg0KJzsKJGxhbmdbJ3BhcmFtX2NhdGVnb3J5J10gPSAnQ3VhbmRvIHNlIHVzYSBjb24gZWwgbW9kbyBzdW1hcmlvIChlc3RhYmxlY2lkbyBwb3IgZGVmZWN0byksIGVzdGUgcGFyYW1ldHJvIChxdWUgZGViZSBzZXIgaWd1YWwgYWwgbm9tYnJlIGRlIHVuYSBjYXRlZ29yaWEgZXhpc3RlbnRlKSBzZXImYWFjdXRlOyB1c2FkbyBwYXJhIG1vc3RyYXIgc29sbyBhcXVlbGxhcyBjb21wYSZudGlsZGU7JmlhY3V0ZTthcyBxdWUgcGVydGVuZWNlbiBhIGRpY2hhIGNhdGVnb3JpYS4gKFNlIHB1ZWRlIHByb3ZlZXIgdW5hIGxpc3RhIHNlcGFyYWRhIHBvciBjb21hcyknOwokbGFuZ1sncGFyYW1fY2F0ZWdvcnlsaXN0dGVtcGxhdGUnXSA9ICdFc3BlY2lmaWNhciB1bmEgcGxhbnRpbGxhIChwb3Igbm9tYnJlKSBwYXJhIHVzYXIgY3VhbmRvIHNlIG11ZXN0cmEgZWwgbGlzdGFkbyBkZSBjYXRlZ29yaWFzLic7CiRsYW5nWydwYXJhbV9jb21wYW55aWQnXSA9ICdSZXF1ZXJpZG8gcGFyYSBlbCBtJm9hY3V0ZTtkdWxvIEZFVSB5IG1vZG9zIGRlIGRldGFsbGUuIEVzdGUgcGFyJmFhY3V0ZTttZXRybyBkZXRlcm1pbmEgcXVlIHJlZ2lzdHJvIGRlIGNvbXBhJm50aWxkZTsmaWFjdXRlO2EgZWRpdGFyIG8gdmVyLic7CiRsYW5nWydwYXJhbV9kZXRhaWxwYWdlJ10gPSAnRXNwZWNpZmljYXIgdW4gYWxpYXMgZGUgcCZhYWN1dGU7Z2luYSAocG9yIG5vbWJyZSkgcGFyYSB1c2FyIGFsIG1vc3RyYXIgdW4gcmVnaXN0cm8gZGUgZGV0YWxsZS4gPHN0cm9uZz5Ob3RhOjwvc3Ryb25nPiBFc3RlIHBhciZhYWN1dGU7bWV0cm8gbm8gZXMgY29tcGF0aWJsZSBjb24gVVJMcyBhbWlnYWJsZXMuJzsKJGxhbmdbJ3BhcmFtX2RldGFpbHRlbXBsYXRlJ10gPSAnRXBlY2lmaWNhciB1bmEgcGxhbnRpbGxhIChwb3Igbm9tYnJlKSBwYXJhIHVzYXIgY3VhbmRvIHNlIGRlc3BsaWVnYSBsYSB2aXN0YSBkZXRhbGxhZGEuIDxzdHJvbmc+Tm90YTo8L3N0cm9uZz4gRXN0ZSBwYXImYWFjdXRlO21ldHJvIG5vIGVzIGNvbXBhdGlibGUgY29uIFVSTHMgYW1pZ2FibGVzLic7CiRsYW5nWydwYXJhbV9mcm9udGVuZGZvcm10ZW1wbGF0ZSddID0gJ0VzcGVjaWZpY2FyIHVuYSBwbGFudGlsbGEgKHBvciBub21icmUpIHBhcmEgdXNhciBjdWFuZG8gc2UgZGVzcGxpZWdhIGxhIGZvcm1hIGRlIGVkaWNpJm9hY3V0ZTtuIGRlIGNvbXBhJm50aWxkZTtpYXMgZGUgRkVVLic7CiRsYW5nWydwYXJhbV9zZWxlY3RjYXRlZ29yeSddID0gJ0lmIHRoaXMgcGFyYW1ldGVyIGlzIHNldCwgdGhlbiBhIGZvcm0gd2lsbCBiZSBnZW5lcmF0ZWQgYWxsb3dpbmcgdXNlcnMgdG8gaW50ZXJhY3RpdmVseSBmaWx0ZXIgY29tcGFueSByZWNvcmRzIG9uIGEgc2luZ2xlIGNhdGVnb3J5LiAgVGhpcyBmbGFnIHNob3VsZCBub3QgYmUgdXNlZCBpbiBjb25qdW5jdGlvbiB3aXRoIHRoZSAmIzAzOTtjYXRlZ29yeSYjMDM5OyBwYXJhbWV0ZXIuJzsKJGxhbmdbJ3BhcmFtX3NvcnRvcmRlciddID0gJ1NwZWNpZnkgdGhlIG9yZGVyIG9mIHNvcnRlZCBmaWVsZHMgaW4gc3VtbWFyeSB2aWV3LiAgUG9zc2libGUgdmFsdWVzIGFyZToNCjx1bD4NCiAgPGxpPjxzdHJvbmc+YXNjPC9zdHJvbmc+IC0tIEFzY2VuZGluZyBvcmRlcjwvbGk+DQogIDxsaT5kZXNjIC0tIERlc2NlbmRpbmcgb3JkZXI8L2xpPg0KPC91bD4nOwokbGFuZ1sncGFyYW1fc29ydGJ5J10gPSAnQXBwbGljYWJsZSBvbmx5IGluIHN1bW1hcnkgbW9kZSwgdGhpcyBwYXJhbWV0ZXIgZGV0ZXJtaW5lcyB0aGUgc29ydGluZyBvZiB0aGUgb3V0cHV0IGNvbXBhbmllcy4gIFBvc3NpYmxlIHZhbHVlcyBhcmU6DQo8dWw+DQogIDxsaT48c3Ryb25nPmNvbXBhbnlfbmFtZTwvc3Ryb25nPjwvbGk+DQogIDxsaT5waG9uZTwvbGk+DQogIDxsaT5mYXg8L2xpPg0KICA8bGk+ZW1haWw8L2xpPg0KICA8bGk+d2Vic2l0ZSAtLSBUaGUgd2Vic2l0ZSB1cmw8L2xpPg0KICA8bGk+Y3JlYXRlZCAtLSBUaGUgY3JlYXRpb24gZGF0ZSBmb3IgdGhpcyBjb21wYW55IHJlY29yZDwvbGk+DQogIDxsaT5tb2RpZmllZCAtLSBUaGUgbW9kaWZpZWQgZGF0ZSBmb3IgdGhpcyBjb21wYW55IHJlY29yZDwvbGk+DQo8L3VsPic7CiRsYW5nWydwYXJhbV9zdW1tYXJ5dGVtcGxhdGUnXSA9ICdFc3BlY2lmaXF1ZSB1bmEgcGxhbnRpbGxhIChwb3Igbm9tYnJlKSAgcGFyYSB1c2FyIGN1YW5kbyBzZSBkZXNwbGllZ2UgbGEgdmlzdGEgU3VtYXJpYS4gPHN0cm9uZz5Ob3RhOjwvc3Ryb25nPiBFc3QmZWFjdXRlOyBwYXJhbWV0cm8gbm8gZXMgY29tcGF0aWJsZSBjb24gVVJMcyBBbWlzdG9zYXMuJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsJ10gPSAnRWwgTSZvYWN1dGU7ZHVsbyAmIzAzOTtDb21wYW55IERpcmVjdG9yeSYjMDM5OyBoYSBzaWRvIGluc3RhbGFkbyBleGl0b3NhbWVudGUnOwokbGFuZ1sncG9zdHVuaW5zdGFsbCddID0gJ0VsIE0mb2FjdXRlO2R1bG8gJiMwMzk7Q29tcGFueSBEaXJlY3RvcnkmIzAzOTsgaGEgc2lkbyBkZXNpbnN0YWxhZG8gZXhpdG9zYW1lbnRlLiBUb2RhIGxhIGluZm9ybWFjaSZvYWN1dGU7biBhc29jaWFkYSBhIGVzdGUgaGEgc2lkbyBib3JyYWRhLic7CiRsYW5nWydwcmV1bmluc3RhbGwnXSA9ICdFc3QmYWFjdXRlOyBzZWd1cm8gZGUgcXVlcmVyIGRlc2luc3RhbGFyIGVzdGUgbSZvYWN1dGU7ZHVsbz8gU2kgbG8gaGFjZSBib3JyYXImYWFjdXRlOyBwZXJtYW5lbnRlbWVudGUgdG9kYSBsYSBpbmZvcm1hY2kmb2FjdXRlO24gYXNvY2lhZGEgYSBlc3RlIG0mb2FjdXRlO2R1bG8uJzsKJGxhbmdbJ3ByZXZwYWdlJ10gPSAnPCAnOwokbGFuZ1sncHJvbXB0X2RldGFpbHBhZ2UnXSA9ICdMYSBwJmFhY3V0ZTtnaW5hIGEgbGEgcXVlIHNlIHJlZGlyZWNjaW9uYSBlbiBtb2RvIERldGFsbGUnOwokbGFuZ1sncHJvbXB0X3BhZ2VsaW1pdCddID0gJ0VsIG4mdWFjdXRlO21lcm8gZGUgcmVnaXN0cm9zIGEgdmVyIHBvciBwJmFhY3V0ZTtnaW5hIGVuIG1vZG8gU3VtYXJpbyc7CiRsYW5nWydwcm9tcHRfc3VtbWFyeXNvcnRpbmcnXSA9ICdPcmRlbiBwb3IgZGVmZWN0byBlbiBlbCBtb2RvIFN1bWFyaW8nOwokbGFuZ1sncHJvbXB0X3N1bW1hcnlzb3J0b3JkZXInXSA9ICdUaGUgZGVmYXVsdCBzb3J0IG9yZGVyIGluIHN1bW1hcnkgbW9kZSA8ZW0+KGRvZXMgbm90IGFwcGx5IHdoZW4gc29ydGluZyBpcyAmIzAzOTtyYW5kb20mIzAzOTs8L2VtPic7CiRsYW5nWydwcm9tcHRfdGVtcGxhdGUnXSA9ICdQbGFudGlsbGEnOwokbGFuZ1sncHVibGljJ10gPSAnUCZ1YWN1dGU7YmxpY2EnOwokbGFuZ1sncHVibGlzaGVkJ10gPSAnUHVibGljYWRvJzsKJGxhbmdbJ3ByZWZlcmVuY2VzJ10gPSAnUHJlZmVyZW5jaWFzJzsKJGxhbmdbJ3JhbmRvbSddID0gJ0FsIEF6YXInOwokbGFuZ1sncmVzZXR0b2ZhY3RvcnknXSA9ICdSZWFqdXN0YXIgYSB2YWxvcmVzIHBvciBkZWZlY3RvJzsKJGxhbmdbJ3Jlc3RvcmV0b2RlZmF1bHRzbXNnJ10gPSAnU2UgcmVzdGF1cmFyJmFhY3V0ZTsgZWwgY29udGVuaWRvIGRlIGxhIFBsYW50aWxsYSBhIHN1IHZhbG9yIHBvciBkZWZlY3RvLiBFc3QmYWFjdXRlOyBzZWd1cm8gcXVlIGRlc2VhIGNvbnRpbnVhcj8nOwokbGFuZ1snc2VhcmNoJ10gPSAnQnVzY2FyJzsKJGxhbmdbJ3N0YXR1cyddID0gJ0VzdGFkbyc7CiRsYW5nWydzdWJtaXQnXSA9ICdFbnZpYXInOwokbGFuZ1snc3VtbWFyeXRlbXBsYXRlX2FkZGVkaXQnXSA9ICdBZ3JlZ2FyL0JvcnJhciBQbGFudGlsbGEgU3VtYXJpYSc7CiRsYW5nWydzdW1tYXJ5dGVtcGxhdGVzJ10gPSAnUGxhbnRpbGxhIFN1bWFyaWFzJzsKJGxhbmdbJ3N1bW1hcnl0ZW1wbGF0ZXVwZGF0ZWQnXSA9ICdQbGFudGlsbGEgU3VtYXJpYSBBY3R1YWxpemFkYSc7CiRsYW5nWydzeXNkZWZhdWx0cyddID0gJ1Jlc3RhdXJhciB2YWxvcmVzIHBvciBkZWZlY3RvJzsKJGxhbmdbJ3RlbGVwaG9uZSddID0gJ1RlbCZlYWN1dGU7Zm9ubyc7CiRsYW5nWyd0ZWxlcGhvbmV0ZXh0J10gPSAnVGVsJmVhY3V0ZTtmb25vJzsKJGxhbmdbJ3RpdGxlX2NhdGVnb3J5bGlzdF9kZmx0dGVtcGxhdGUnXSA9ICdQbGFudGlsbGEgcG9yIGRlZmVjdG8gZGUgTGlzdGFkb3MgcG9yIENhdGVnb3ImaWFjdXRlO2EnOwokbGFuZ1sndGl0bGVfZGV0YWlsX2RmbHR0ZW1wbGF0ZSddID0gJ1BsYW50aWxsYSBwb3IgZGVmZWN0byBkZSBEZXRhbGxlcyc7CiRsYW5nWyd0aXRsZV9mcm9udGVuZGZvcm1fZGZsdHRlbXBsYXRlJ10gPSAnUGxhbnRpbGxhIGRlIGxhIEZvcm1hIGRlbCBtb2R1bG8gRkVVIHBvciBkZWZlY3RvJzsKJGxhbmdbJ3RpdGxlX3N1bW1hcnlfZGZsdHRlbXBsYXRlJ10gPSAnUGxhbnRpbGxhIHBvciBkZWZlY3RvIGRlIFN1bWFyaW8nOwokbGFuZ1sndHlwZSddID0gJ1RpcG8nOwokbGFuZ1sndHlwZXRleHQnXSA9ICdUaXBvJzsKJGxhbmdbJ3VwJ10gPSAnQXJyaWJhJzsKJGxhbmdbJ3dlYnNpdGUnXSA9ICdTaXRpbyBXZWInOwokbGFuZ1snd2Vic2l0ZXRleHQnXSA9ICdTaXRpbyBXZWInOwokbGFuZ1sndXRteiddID0gJzE1Njg2MTM1My4xMjAxODI4Mzk3LjI5OS44Mi51dG1jY249KG9yZ2FuaWMpfHV0bWNzcj1nb29nbGV8dXRtY3RyPWNtc21zIHByZXR0eSB1cmxzfHV0bWNtZD1vcmdhbmljJzsKJGxhbmdbJ3V0bWEnXSA9ICcxNTY4NjEzNTMuMTI4MzE5MDE3Ny4xMTkyNTcyODA5LjEyMDE4MjgzOTcuMTIwMzYzMjMyOS4zMDAnOwokbGFuZ1sndXRtYiddID0gJzE1Njg2MTM1Myc7CiRsYW5nWyd1dG1jJ10gPSAnMTU2ODYxMzUzJzsKPz4=]]></data>
	</file>
	<file>
	  <filename>/lang/ext/fr_FR.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2ludXNlJ10gPSAnaW4gdXNlJzsKJGxhbmdbJ2luZm9fZmlsdGVyX2hpZXJhcmNoeSddID0gJ1NwZWNpZnkgYSBoaWVyYXJjaHkgc3RyaW5nIChvciBwb3J0aW9uKSB0byBzZWFyY2ggb24uICBXaWxkY2FyZCBjaGFyYWN0ZXJzIGFyZSBhY2NlcHRlZCwgYW5kIG1heSBpbmNsdWRlIGNoaWxkIGhpZXJhcmNoaWVzLiAgaS5lOiAmcXVvdDtDYXJzKiZxdW90Oy4gVGhpcyBmaWVsZCBpcyBub3QgY2FzZSBzZW5zaXRpdmUnOwokbGFuZ1snaW5mb19maWx0ZXJfYWRkcmVzcyddID0gJ1NwZWNpZnkgYW4gYWRkcmVzcyBzdHJpbmcgdG8gc2VhcmNoIG9uLiAgV2lsZGNhcmQgY2hhcmFjdGVycyBhcmUgYWNjZXB0ZWQuICBpLmU6ICZxdW90OypUZXhhcyomcXVvdDsuIFRoaXMgZmllbGQgaXMgbm90IGNhc2Ugc2Vuc2l0aXZlJzsKJGxhbmdbJ2luZm9fZmlsdGVyX25hbWUnXSA9ICdTcGVjaWZ5IGEgY29tcGFueSBuYW1lIChvciBwYXJ0aWFsIGNvbXBhbnkgbmFtZSB0byBzZWFyY2ggb24uICBXaWxkY2FyZCBjaGFyYWN0ZXJzIGFyZSBhY2NlcHRlZC4gIGkuZTogJnF1b3Q7KnJlc3RhcmF1bnQmcXVvdDsgVGhpcyBmaWVsZCBpcyBub3QgY2FzZSBzZW5zaXRpdmUnOwokbGFuZ1snZXJyb3Jfbm9maWx0ZXJtYXRjaGVzJ10gPSAnTm8gZGF0YWJhc2UgZW50cmllcyBtYXRjaGVkIHRoZSBjcml0ZXJpYSBzcGVjaWZpZWQnOwokbGFuZ1snZWRpdF9maWx0ZXInXSA9ICdFZGl0IEZpbHRlcic7CiRsYW5nWydzb3J0YnknXSA9ICdSYW5nZXIgcGFyJzsKJGxhbmdbJ3BhZ2VsaW1pdCddID0gJ0l0ZW1zIFBlciBQYWdlJzsKJGxhbmdbJ2ZpbHRlciddID0gJ0ZpbHRlcic7CiRsYW5nWydyZXNldCddID0gJ1Jlc2V0JzsKJGxhbmdbJ3BhcmFtX2NhdGVnb3J5MiddID0gJ0FwcGxpY2FibGUgb25seSB0byB0aGUgPGVtPmRlZmF1bHQ8L2VtPiBzdW1tYXJ5IHZpZXcsIGFuZCBvbmx5IHdoZW4gdGhlIDxlbT5jYXRlZ29yeTwvZW0+IHBhcmFtZXRlciBpcyBhbHNvIHN1cHBsaWVkIHRoaXMgcGFyYW1ldGVyIGFsbG93cyBzcGVjaWZ5aW5nIGFuIGFkZGl0aW9uYWwgQU5EIGV4cHJlc3Npb24gdG8gaW5kaWNhdGUgYWRkaXRpb25hbCAoY29tbWEgc2VwYXJhdGVkKSBjYXRlZ29yaWVzIHRoYXQgdGhlIHJlc3VsdCBzaG91bGQgYmUgYSBtZW1iZXIgb2YuICBpLmU6IHtDb21wYW55RGlyZWN0b3J5IGNhdGVnb3J5PSYjMDM5O3JlZ2lvbl9ub3J0aCxyZWdpb25fc291dGgmIzAzOTsgY2F0ZWdvcnkyPSYjMDM5O2NhcnMsdHJ1Y2tzJiMwMzk7fSB3b3VsZCByZXR1cm4gb25seSB0aG9zZSBjb21wYW5pZXMgdGhhdCB3ZXJlIGluIHRoZSBlaXRoZXIgb2YgdGhlIHJlZ2lvbiBub3J0aCBvciByZWdpb24gc291dGggY2F0ZWdvcmllcyBBTkQgQUxTTyBpbiBlaXRoZXIgb2YgdGhlIGNhcnMgb3IgdHJ1Y2tzIGNhdGVnb3JpZXMnOwokbGFuZ1sncGFyYW1fY2F0ZWdvcnkzJ10gPSAnQXBwbGljYWJsZSBvbmx5IHRvIHRoZSA8ZW0+ZGVmYXVsdDwvZW0+IHN1bW1hcnkgdmlldywgYW5kIG9ubHkgd2hlbiB0aGUgPGVtPmNhdGVnb3J5MjwvZW0+IHBhcmFtZXRlciBpcyBhbHNvIHN1cHBsaWVkIHRoaXMgcGFyYW1ldGVyIGFsbG93cyBzcGVjaWZ5aW5nIHlldCBhbiBhZGRpdGlvbmFsIEFORCBleHByZXNzaW9uIHRvIGluZGljYXRlIGFkZGl0aW9uYWwgKGNvbW1hIHNlcGFyYXRlZCkgY2F0ZWdvcmllcyB0aGF0IHRoZSByZXN1bHQgc2hvdWxkIGJlIGEgbWVtYmVyIG9mLiBTZWUgdGhlIGhlbHAgZm9yIHRoZSBjYXRlZ29yeTIgcGFyYW1ldGVyIGZvciBtb3JlIGluZm9ybWF0aW9uJzsKJGxhbmdbJ2JhZG5hbWVnaXZlbiddID0gJ1RoZSBuYW1lIHNwZWNpZmllZCBpcyBpbnZhbGlkIChnZW5lcmFsbHkgbmFtZXMgc2hvdWxkIGJlIHVybCBmcmllbmRseSknOwokbGFuZ1snY3VycmVudF92YWx1ZSddID0gJ0N1cnJlbnQgVmFsdWUnOwokbGFuZ1sncGFyYW1fZnJvbnRlbmRsaXN0dGVtcGxhdGUnXSA9ICdBcHBsaWNhYmxlIG9ubHkgdG8gdGhlIDxlbT5mcm9udGVuZGxpc3Q8L2VtPiBhY3Rpb24sIHRoaXMgcGFyYW1ldGVyIGFsbG93cyBzcGVjaWZ5aW5nIGEgbm9uIGRlZmF1bHQgZnJvbnRlbmQgbGlzdCB0ZW1wbGF0ZSB0byB1c2UgZm9yIHJlbmRlcmluZyB0aGUgb3V0cHV0JzsKJGxhbmdbJ3BhcmFtX3Jlc3VsdHBhZ2UnXSA9ICdBcHBsaWNhYmxlIHRvIHRoZSA8ZW0+c2VhcmNoPC9lbT4gYWN0aW9uLCB0aGlzIHBhcmFtZXRlciBhbGxvd3Mgc3BlY2lmeWluZyB3aGF0IHBhZ2Ugc2hvdWxkIGJlIHVzZWQgZm9yIGRpc3BsYXlpbmcgbWF0Y2hpbmcgcmVzdWx0cy4nOwokbGFuZ1sncGFyYW1fbmFtZSddID0gJ0FwcGxpY2FibGUgb25seSB0byB0aGUgZGVmYXVsdCA8ZW0+KHN1bW1hcnkpPC9lbT4gYWN0aW9uLCB0aGlzIHBhcmFtZXRlciBhbGxvd3MgZmlsdGVyaW5nIGNvbXBhbmllcyBieSB0aGVpciBuYW1lLiAgV2lsZGNhcmQgY2hhcmFjdGVycyBhcmUgYWxsb3dlZC4gIGkuZTogbmFtZT0mcXVvdDthKiZxdW90Oyc7CiRsYW5nWydlcnJvcl9kdXBsaWNhdGUnXSA9ICdHZW5lcmF0ZSBlcnJvciAoYnV0IGNvbnRpbnVlKSc7CiRsYW5nWydlcnJvcl91cGRhdGVfY29tcGFueSddID0gJ0Vycm9yIG9jY3VycmVkIHVwZGF0aW5nIGNvbXBhbnkgcmVjb3JkJzsKJGxhbmdbJ2lnbm9yZSddID0gJ0lnbm9yZSc7CiRsYW5nWydvdmVyd3JpdGUnXSA9ICdPdmVyd3JpdGUnOwokbGFuZ1snY2F0ZWdvcnlkZWxldGVkJ10gPSAnQ2F0ZWdvcnkgRGVsZXRlZCc7CiRsYW5nWydwcm9tcHRfY3JlYXRlX3VybCddID0gJ0NyZWF0ZSBVUkxTIGZvciByZWNvcmRzIHdpdGhvdXQgVVJMUyc7CiRsYW5nWydpbmZvX2NyZWF0ZV91cmwnXSA9ICdJZiBubyBVUkwgaXMgc3BlY2lmaWVkIGZvciBhIHJlY29yZCwgdGhpcyBvcHRpb24gd2lsbCBlbnN1cmUgdGhhdCB0aGV5IGFyZSBnZW5lcmF0ZWQuIElmIHRoZSAmcXVvdDtSZXF1aXJlIFVSTFMmcXVvdDsgcHJlZmVyZW5jZSBpcyBzZXQsIFVSTFMgd2lsbCBiZSBlbnN1cmVkIHJlZ2FyZGxlc3Mgb2YgdGhpcyBzZXR0aW5nJzsKJGxhbmdbJ3VybF9jcmVhdGVvbmNvcHknXSA9ICdDcmVhdGUgVVJMUyBPbiBDb3B5JzsKJGxhbmdbJ2luZm9fdXJsX2NyZWF0ZW9uY29weSddID0gJ1doZW4gY29weWluZyBjb21wYW5pZXMsIHNob3VsZCBhIFVSTCBiZSBjcmVhdGVkIGZvciB0aGUgZGVzdGluYXRpb24gcmVjb3JkLiAgVGhpcyBvbmx5IGFwcGxpZXMgaWYgVVJMUyBhcmUgbm90IHJlcXVpcmVkLic7CiRsYW5nWydlcnJvcl9iYXRjaHVybGNyZWF0ZSddID0gJ0JhdGNoIFVSTCBDcmVhdGlvbiBlbmNvdW50ZXJlZCAlZCBlcnJvcnMnOwokbGFuZ1snaW5mb19iYXRjaHVybGNyZWF0ZSddID0gJ0JhdGNoIFVSTCBDcmVhdGlvbiB1cGRhdGVkICVkIHJlY29yZHMnOwokbGFuZ1snZXJyb3JfaW52YWxpZHVybCddID0gJ1RoZSBVUkwgc3BlY2lmaWVkIChvciBjYWxjdWxhdGVkKSBpcyBpbnZhbGlkJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRuYW1lJ10gPSAnVGhlIENvbXBhbnkgTmFtZSBpcyBpbnZhbGlkJzsKJGxhbmdbJ2Vycm9yX3VybG5vdGVtcHR5J10gPSAnVGhlIFVSTCBmaWVsZCBpcyBub3QgZW1wdHkuLi4gY2Fubm90IG92ZXJ3cml0ZSBhbiBleGlzdGluZyB2YWx1ZSc7CiRsYW5nWydlcnJvcl91cmxyZXF1aXJlZCddID0gJ0EgVVJMIGlzIHJlcXVpcmVkJzsKJGxhbmdbJ2dldHVybCddID0gJ0NhbGN1bGF0ZSBVUkwnOwokbGFuZ1sndXJsX3JlcXVpcmVkJ10gPSAnQSBVUkwgaXMgcmVxdWlyZWQnOwokbGFuZ1snaW5mb191cmxfcmVxdWlyZWQnXSA9ICdTaG91bGQgdGhlIFVSTCBmaWVsZCBiZSByZXF1aXJlZCB0byBiZSB2YWxpZCB3aGVuIGFkZGluZyBvciBlZGl0aW5nIGEgY29tcGFueT8nOwokbGFuZ1snY2hlY2snXSA9ICdDaGVjayc7CiRsYW5nWyd1cmwnXSA9ICdVUkwnOwokbGFuZ1snY3JlYXRldXJscyddID0gJ0NyZWF0ZSBVUkxTJzsKJGxhbmdbJ2NvbmZpcm1fYXV0b2NyZWF0ZV91cmwnXSA9ICdBdXRvbWF0aWNhbGx5IENyZWF0ZSBVUkxTIEZvciBleGlzdGluZyByZWNvcmRzIHdpdGggbm8gVVJMJzsKJGxhbmdbJ3VybF9yZWRpcmVjdG9sZCddID0gJ0RvIDMwMSBSZWRpcmVjdCB0byBuZXcgVVJMUyc7CiRsYW5nWydpbmZvX3VybF9yZWRpcmVjdG9sZCddID0gJ09uIGFuIGluY29taW5nIHJlcXVlc3QgZm9yIGEgY29tcGFueSB1c2luZyB0aGUgb2xkIFVSTCBwYXR0ZXJucywgcGVyZm9ybSBhIDMwMSByZWRpcmVjdCB0byB0aGUgbmV3IFVSTC4gIFRoaXMgd2lsbCBvbmx5IHdvcmsgZm9yIGVudHJpZXMgdGhhdCBoYXZlIFVSTFMgY3JlYXRlZC4nOwokbGFuZ1snaW5mb191cmxfYXV0b2NyZWF0ZSddID0gJ1doZW4gYWRkaW5nIG9yIGVkaXRpbmcgYSBjb21wYW55IGRlZmluaXRpb24sIGlmIHRoZSBVUkwgZmllbGQgaXMgYmxhbmsgb25lIHdpbGwgYmUgY3JlYXRlZCBhdXRvbWF0aWNhbGx5IGZyb20gdGhlIGNvbXBhbnkgbmFtZS4gIFRoaXMgZG9lcyBub3QgYXBwbHkgdG8gZnJvbnRlbmQgZWRpdGluZyc7CiRsYW5nWyd1cmxfYXV0b2NyZWF0ZSddID0gJ0F1dG9tYXRpY2FsbHkgY3JlYXRlIHVuaXF1ZSBVUkxTJzsKJGxhbmdbJ3VybHMnXSA9ICdVUkxTJzsKJGxhbmdbJ3BhcmFtX3NlYXJjaGFkZHJlc3MnXSA9ICdXaGVuIGRvaW5nIGEgcG9zdGFsIGNvZGUgc2VhcmNoLCB1c2luZyB0aGUgc2VhcmNoIGFjdGlvbiwgaWYgdGhpcyBvcHRpb24gaXMgZW5hYmxlZCwgdGhlIGFkZHJlc3MgZmllbGQgd2lsbCBhbHNvIGJlIHNlYXJjaGVkIGZvciB0aGUgbWF0Y2hpbmcgc3RyaW5nJzsKJGxhbmdbJ3BhcmFtX3Bvc3RhbGNoYXJzJ10gPSAnV2hlbiBkb2luZyBhIHBvc3RhbCBjb2RlIHNlYXJjaCwgdXNpbmcgdGhlIHNlYXJjaCBhY3Rpb24sIHRoaXMgb3B0aW9uIGFsbG93cyBsaW1pdGluZyB0aGUgZWZmZWN0aXZlIG51bWJlciBvZiBjaGFyYWN0ZXJzIG9uZiB0aGUgcG9zdGFsIGNvZGUnOwokbGFuZ1snbGFiZWxfaW5jbHVkZWNoaWxkcmVuJ10gPSAnSW5jbHVkZSBDaGlsZCBIaWVyYXJjaGllcyc7CiRsYW5nWydhbnknXSA9ICdBbnknOwokbGFuZ1snaW5mb19jYXRlZ29yeWNvbHVtbiddID0gJ1NwZWNpZnkgdGhlIG5hbWUgb2YgYSBjb2x1bW4gdGhhdCBzcGVjaWZpZXMgb25lIG9yIG1vcmUgY2F0ZWdvcnkgbmFtZXMgKHNlcGFyYXRlZCBieSBhIGNvbW1hIDxlbT4oLCk8ZW0+IFRoYXQgY2FuIGJlIHVzZWQgdG8gcXVpY2tseSBwb3B1bGF0ZSB0aGUgY2F0ZWdvcmllcyBmb3IgZWFjaCByZWNvcmQuJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeWNvbHVtbiddID0gJ0NhdGVnb3JpZXMgQ29sdW1uJzsKJGxhbmdbJ2Vycm9yX2NhdGVnb3J5Y29sdW1uX25vdGZvdW5kJ10gPSAnQ2F0ZWdvcnkgY29sdW1uICVzIG5vdCBmb3VuZCc7CiRsYW5nWydleHBpcmVzJ10gPSAnRXhwaXJlJzsKJGxhbmdbJ3Jlc2V0X3RvX2ZhY3RvcnknXSA9ICdSZW1ldHRyZSBhdXggdmFsZXVycyBwYXIgZCZlYWN1dGU7ZmF1dCc7CiRsYW5nWydwcm9tcHRfZW1haWxfaXNodG1sJ10gPSAnQ291cnJpZWwgYXUgZm9ybWF0IEhUTUwnOwokbGFuZ1sncHJvbXB0X2VtYWlsX3N1YmplY3QnXSA9ICdTdWpldCBkdSBjb3VycmllbCc7CiRsYW5nWydwcm9tcHRfZW1haWxfdGVtcGxhdGUnXSA9ICdHYWJhcml0IGRlIGNvdXJyaWVsJzsKJGxhbmdbJ2VtYWlsX3RlbXBsYXRlJ10gPSAnR2FiYXJpdCBkZSBjb3VycmllbCc7CiRsYW5nWydmZWVkaXRfZW1haWxfc3ViamVjdCddID0gJ0EgY2hhbmdlIGhhcyBvY2N1cnJlZCB0byBhIENvbXBhbnlEaXJlY3RvcnkgZW50cnknOwokbGFuZ1sncHJvbXB0X2ZldV9lbWFpbGdyb3VwJ10gPSAnQWRtaW5pc3RyYXRpdmUgZ3JvdXAgdG8gcmVjZWl2ZSBub3RpZmljYXRpb24gZW1haWxzPyc7CiRsYW5nWydwcm9tcHRfZmV1X2VtYWlsb25hZGQnXSA9ICdTZW5kIGFuIGVtYWlsIHdoZW4gYSBmcm9udGVuZCB1c2VyIGFkZHMgYSBuZXcgY29tcGFueSByZWNvcmQnOwokbGFuZ1sncHJvbXB0X2ZldV9lbWFpbG9uZWRpdCddID0gJ1NlbmQgYW4gZW1haWwgd2hlbiBhIGZyb250ZW5kIHVzZXIgbW9kaWZpZXMgYW4gZXhpc3RpbmcgY29tcGFueSByZWNvcmQnOwokbGFuZ1sncHJvbXB0X2ZldV9lbWFpbG9uZ3JvdXAnXSA9ICdBZG1pbiBncm91cCB0byBzZW5kIGVtYWlscyB0byc7CiRsYW5nWydwcm9tcHRfZmV1X2Rpc3BsYXlfc2V0dGluZ3MnXSA9ICdGcm9udGVuZCBEaXNwbGF5IFNldHRpbmdzJzsKJGxhbmdbJ3Byb21wdF9mcm9udGVuZF9zaG93ZXhwaXJlZCddID0gJ1Nob3cgcmVjb3JkcyBvd25lZCBieSBleHBpcmVkIEZyb250ZW5kIFVzZXJzJzsKJGxhbmdbJ2ZpZWxkX2ltYWdlJ10gPSAnSW1hZ2UnOwokbGFuZ1snZXh0cmExJ10gPSAnRXh0cmEgRGF0YSAxJzsKJGxhbmdbJ2V4dHJhMiddID0gJ0V4dHJhIERhdGEgMic7CiRsYW5nWydleHRyYTMnXSA9ICdFeHRyYSBEYXRhIDMnOwokbGFuZ1snbGJsX2JhY2snXSA9ICdSZXRvdXInOwokbGFuZ1snbXNnX2NvbXBhbnljb3BpZWQnXSA9ICdDb21wYWduaWUgY29waSZlYWN1dGU7ZSwgdmV1aWxsZXogJmVhY3V0ZTtkaXRlciBsZXMgZCZlYWN1dGU7dGFpbHMgZCYjMDM5O2VucmVnaXN0cmVtZW50IHBvdXIgbGUgbm91dmVsbGUgY29tcGFnbmllJzsKJGxhbmdbJ2NvcHknXSA9ICdDb3BpZXInOwokbGFuZ1snbW9kZGVzY3JpcHRpb24nXSA9ICdBIGRpcmVjdG9yeSBsaWtlIG1vZHVsZSBmb3IgY29tcGFuaWVzLiAgQWxsb3dzIGFkZGluZy9lZGl0aW5nL2ltcG9ydGluZy9leHBvcnRpbmcgY29tcGFueSBkZWZpbml0aW9ucywgYW5kIHZhcmlvdXMgd2F5cyBvZiBkaXNwbGF5aW5nIHRoZSBjb21wYW55IGVudHJpZXMgaW5jbHVkaW5nIHNlYXJjaC4gIFRoaXMgbW9kdWxlIGludGVncmF0ZXMgd2VsbCB3aXRoIENHR29vZ2xlTWFwcy4nOwokbGFuZ1snbXNnX2ltcG9ydF9jb21wbGV0ZSddID0gJ09wJmVhY3V0ZTtyYXRpb24gZCYjMDM5O2ltcG9ydGF0aW9uIHImZWFjdXRlO2FsaXMmZWFjdXRlO2UgYXZlYyBzdWNjJmVncmF2ZTtzJzsKJGxhbmdbJ3Byb21wdF9oaWVyYXJjaGllc19pbXBvcnRlZCddID0gJ1Bvc2l0aW9ucyBoaSZlYWN1dGU7cmFyY2hpcXVlcyBjciZlYWN1dGU7ZXMnOwokbGFuZ1sncHJvbXB0X2ltcG9ydF9oaWVyYXJjaHlkZWZzJ10gPSAnSW1wb3J0IEhpZXJhcmNoeSBSZWNvcmRzJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRfaGllcmFyY2h5dmFscyddID0gJ0ltcG9ydCBIaWVyYXJjaHkgVmFsdWVzJzsKJGxhbmdbJ2Vycm9yX2luc2VydF9oaWVyYXJjaHknXSA9ICdFcnJvciBjcmVhdGluZyBoaWVyYXJjaHkgJnF1b3Q7JXMmcXVvdDsnOwokbGFuZ1snZXJyb3JfZHVwbGljYXRlX2hpZXJhcmNoeSddID0gJ0hpZXJhcmNoeSB3aXRoIGxvbmcgbmFtZSAmcXVvdDslcyZxdW90OyBhbHJlYWR5IGV4aXN0cy4nOwokbGFuZ1snY29tcGFueWRlbGV0ZWQnXSA9ICdDb21wYW5pZSBlZmZhYyZlYWN1dGU7ZSc7CiRsYW5nWydlcnJvcl91cGxvYWQnXSA9ICdFcnJldXIgZCYjMDM5O3VwbG9hZCBkdSBmaWNoaWVyJzsKJGxhbmdbJ2Vycm9yX2RlbGltaXRlciddID0gJ1ZvdXMgZGV2ZXogc3AmZWFjdXRlO2NpZmllciB1biBkJmVhY3V0ZTtsaW1pdGV1ciBkZSBjaGFtcHMnOwokbGFuZ1snZXJyb3Jfbm9zcG90c2xlZnQnXSA9ICdZb3UgaGF2ZSBubyByZW1haW5pbmcgY29tcGFueSBzbG90cyc7CiRsYW5nWydtc2dfc2xvdHN1c2VkJ10gPSAnWW91IGhhdmUgdXNlZCAlZCBvZiAlZCBjb21wYW55IHNsb3RzJzsKJGxhbmdbJ2ltcG9ydF9maWxlbmFtZSddID0gJ1MmZWFjdXRlO2xlY3Rpb25uZXIgbGUgZmljaGllciBDU1YnOwokbGFuZ1snZGVsaW1pdGVyJ10gPSAnRCZlYWN1dGU7bGltaXRldXIgZGUgY2hhbXBzJzsKJGxhbmdbJ2luZm9fY3N2ZmlsZSddID0gJ0l0IGlzIHBvc3NpYmxlIHRvIGltcG9ydCBjb21wYW55IGluZm9ybWF0aW9uIGRpcmVjdGx5IGZyb20gYW4gQVNDSUkgZmlsZS4nOwokbGFuZ1sncHJvbXB0X2ltcG9ydF90ZW1wbGF0ZSddID0gJ1RoaXMgdGVtcGxhdGUgZGVzY3JpYmVzIGEgZm9ybSB0aGF0IGlzIHVzZWQgdG8gYWxsb3cgYXV0aG9yaXplZCBmcm9udGVuZCB1c2VycyB0byBpbXBvcnQgZGF0YSBmcm9tIGEgcHJvcGVybHkgZm9ybWF0dGVkIENTViBmaWxlJzsKJGxhbmdbJ2Zyb250ZW5kaW1wb3J0dGVtcGxhdGUnXSA9ICdGcm9udGVuZCBDU1YgSW1wb3J0IFRlbXBsYXRlJzsKJGxhbmdbJ3Byb21wdF9mZXVfaW1wb3J0J10gPSAnQWxsb3cgRnJvbnRlbmRVc2VycyB0byBpbXBvcnQgcmVjb3JkcyBmcm9tIENTVj8nOwokbGFuZ1sncGFyYW1faGllcmxpc3R0ZW1wbGF0ZSddID0gJ1NwZWNpZnkgYSB0ZW1wbGF0ZSAoYnkgbmFtZSkgdG8gdXNlIHdoZW4gZGlzcGxheWluZyB0aGUgaGllcmFyY2h5IGxpc3Qgdmlldy4nOwokbGFuZ1snaGllcmxpc3R0ZW1wbGF0ZV9hZGRlZGl0J10gPSAnQWRkL0VkaXQgSGllcmFyY2h5IExpc3QgVGVtcGxhdGUnOwokbGFuZ1sndGl0bGVfaGllcmxpc3RfZGZsdHRlbXBsYXRlJ10gPSAnRGVmYXVsdCBIaWVyYXJjaHkgTGlzdCBUZW1wbGF0ZSc7CiRsYW5nWydoaWVyYXJjaHlsaXN0dGVtcGxhdGVzJ10gPSAnSGllcmFyY2h5IExpc3QgVGVtcGxhdGVzJzsKJGxhbmdbJ3BhcmFtX2hpZXInXSA9ICdBcHBsaWNhYmxlIHRvIHRoZSA8ZW0+ZGVmYXVsdDwvZW0+IGFuZCA8ZW0+aGllcmxpc3Q8L2VtPiBhY3Rpb25zLCB0aGlzIHBhcmFtZXRlciBhbGxvd3Mgc3BlY2lmeWluZyBhIGhpZXJhcmNoeSBuYW1lIG9mIGNvbXBhbmllcyB0byBkaXNwbGF5LiAgSW4gdGhlIGRlZmF1bHQgYWN0aW9uLCBXaWxkY2FyZHMgYXJlIGFjY2VwdGVkLCBpLmU6ICZxdW90Oypzb21laGllcmFyY2h5bmFtZSomcXVvdDsuICBIb3dldmVyIGluIHRoZSBoaWVybGlzdCBhY3Rpb24sIHRoaXMgcGFyYW1ldGVyIG11c3QgY29udGFpbiB0aGUgdW5pcXVlIG5hbWUgb2YgYSBoaWVyYXJjaHkgcG9zaXRpb24sIGFuZCB3aWxsIHNwZWNpZnkgdGhlIHN0YXJ0aW5nIGxvY2F0aW9uIG9mIHRoZSBoaWVyYXJjaHkgZGlzcGxheS4nOwokbGFuZ1snbXNnX2hpZXJkZWxldGVkJ10gPSAnSGllcmFyY2h5IHBvc2l0aW9uIGRlbGV0ZWQnOwokbGFuZ1snbXNnX2hpZXJ1cGRhdGVkJ10gPSAnSGllcmFyY2h5IHBvc2l0aW9uIHVwZGF0ZWQnOwokbGFuZ1snbXNnX2hpZXJhZGRlZCddID0gJ0hpZXJhcmNoeSBwb3NpdGlvbiBhZGRlZCc7CiRsYW5nWydhZGRoaWVyJ10gPSAnQWRkIEhpZXJhcmNoeSc7CiRsYW5nWydoaWVyYXJjaHknXSA9ICdIaWVyYXJjaGllJzsKJGxhbmdbJ2FkZF9lZGl0X2NhdGVnb3J5J10gPSAnQWpvdXRlci9Nb2RpZmllciB1bmUgY2F0JmVhY3V0ZTtnb3JpZSc7CiRsYW5nWydsYmxfc2V0dGluZ3MnXSA9ICdQciZlYWN1dGU7ZiZlYWN1dGU7cmVuY2VzJzsKJGxhbmdbJ2xibF90ZW1wbGF0ZXMnXSA9ICdHYWJhcml0cyc7CiRsYW5nWydub25lJ10gPSAnQXVjdW4nOwokbGFuZ1snb3duZXInXSA9ICdQcm9wcmkmZWFjdXRlO3RhaXJlJzsKJGxhbmdbJ2NyZWF0ZWQnXSA9ICdDciZlYWN1dGU7JmVhY3V0ZTsnOwokbGFuZ1snbW9kaWZpZWQnXSA9ICdNb2RpZmkmZWFjdXRlOyc7CiRsYW5nWydmcm9udGVuZGxpc3R0ZW1wbGF0ZV9hZGRlZGl0J10gPSAnQWRkIG9yIEVkaXQgYSBGcm9udGVuZCBMaXN0IFRlbXBsYXRlJzsKJGxhbmdbJ3Byb21wdF9mZXVfY2hhbmdlX3N0YXR1cyddID0gJ0NhbiBmcm9udGVuZCB1c2VycyBjaGFuZ2UgYSBjb21tcGFueSBzdGF0dXM/JzsKJGxhbmdbJ3Byb21wdF9mZXVfbmV3X3N0YXR1cyddID0gJ0RlZmF1bHQgc3RhdHVzIGZvciBuZXcgcmVjb3JkcyBjcmVhdGVkIG9uIHRoZSBmcm9udGVuZCc7CiRsYW5nWyd0aXRsZV9mcm9udGVuZGxpc3RfZGZsdHRlbXBsYXRlJ10gPSAnRGVmYXVsdCBGcm9udGVuZCBMaXN0IFRlbXBsYXRlJzsKJGxhbmdbJ2Zyb250ZW5kbGlzdHRlbXBsYXRlcyddID0gJ0Zyb250ZW5kIExpc3QgVGVtcGxhdGVzJzsKJGxhbmdbJ3Byb21wdF9nZW5lcmFsX3NldHRpbmdzJ10gPSAnUHImZWFjdXRlO2YmZWFjdXRlO3JlbmNlcyBnJmVhY3V0ZTtuJmVhY3V0ZTtyYWxlcyc7CiRsYW5nWydwcm9tcHRfZmV1X2VkaXRfc2V0dGluZ3MnXSA9ICdGcm9udGVuZCBFZGl0aW5nIFNldHRpbmdzJzsKJGxhbmdbJ3Byb21wdF9mZXVfY3JlYXRlJ10gPSAnQ2FuIEZyb250RW5kVXNlcnMgQ3JlYXRlIG5ldyBSZWNvcmRzPyc7CiRsYW5nWydwcm9tcHRfZmV1X251bXJlY29yZHMnXSA9ICdNYXhpbXVtIG51bWJlciBvZiByZWNvcmRzIHRoYXQgY2FuIGJlIGFzc29jaWF0ZWQgd2l0aCBhIEZFVSBhY2NvdW50JzsKJGxhbmdbJ3Byb21wdF9udW1pbXBvcnRlZCddID0gJ051bWJlciBvZiBJbXBvcnRlZCBSZWNvcmRzJzsKJGxhbmdbJ3Byb21wdF9kdXBsaWNhdGVfbmFtZSddID0gJ0NoZWNrIGZvciBkdXBsaWNhdGUgY29tcGFueSBuYW1lcyc7CiRsYW5nWydwcm9tcHRfc3RhdHVzJ10gPSAnU3RhdHVzIGZvciBpbXBvcnRlZCByZWNvcmQnOwokbGFuZ1sncHJvbXB0X2lnbm9yZV9hZGRyZXNzJ10gPSAnSWdub3JlIGFkZHJlc3MgZmllbGQnOwokbGFuZ1sncHJvbXB0X2NvbnZlcnRfYWRkcmVzcyddID0gJ0NvbnZlcnQgQWRkcmVzc2VzIHRvIGNvb3JkaW5hdGVzIChpZiB0aGVyZSBhcmUgbm8gY29vcmRpbmF0ZXMpJzsKJGxhbmdbJ3Byb21wdF9rbWxmaWxlJ10gPSAnS01MIEZpbGUgdG8gSW1wb3J0JzsKJGxhbmdbJ2ltcG9ydGttbCddID0gJ0ltcG9ydCBLTUwnOwokbGFuZ1snaW1wb3J0X2ttbCddID0gJ0ltcG9ydGVyIHVuIGZpY2hpZXIgS01MJzsKJGxhbmdbJ3NlbGVjdG9uZSddID0gJ1NlbGVjdCBPbmUnOwokbGFuZ1snZXJyb3JfZmV1X2xvZ2dlZGluJ10gPSAnUG91ciB1dGlsaXNlciBjZXR0ZSBmb25jdGlvbiwgdm91cyBkZXZleiAmZWNpcmM7dHJlIGNvbm5lY3QmZWFjdXRlOyhlKSBkZXB1aXMgZnJvbnRlbmQgZHUgc2l0ZSc7CiRsYW5nWydhY3RpdmUnXSA9ICdBY3RpZic7CiRsYW5nWydhZGRsaW5rJ10gPSAnQWpvdXRlciB1biBMaWVuJzsKJGxhbmdbJ2FkZHJlc3MnXSA9ICdBZHJlc3NlJzsKJGxhbmdbJ2FkZHJlc3N0ZXh0J10gPSAnQWRyZXNzZSc7CiRsYW5nWydhZGRjYXRlZ29yeSddID0gJ0Fqb3V0ZXIgdW5lIENhdCZlYWN1dGU7Z29yaWUnOwokbGFuZ1snYWRkY29tcGFueSddID0gJ0Fqb3V0ZXIgdW5lIEVudHJlcHJpc2UnOwokbGFuZ1snYWRkZmllbGRkZWYnXSA9ICdBam91dGVyIHVuZSBkJmVhY3V0ZTtmaW5pdGlvbiBkZSBjaGFtcCc7CiRsYW5nWydhZG1pbl9vbmx5J10gPSAnVmlzaWJsZSB1bmlxdWVtZW50IHBhciBsJiMwMzk7YWRtaW5pc3RyYXRldXInOwokbGFuZ1snYXJleW91c3VyZSddID0gJyZFY2lyYzt0ZXMtdm91cyBzJnVjaXJjO3IgZGUgc3VwcHJpbWVyIGNldCAmZWFjdXRlO2wmZWFjdXRlO21lbnQgPyc7CiRsYW5nWydhc2NlbmRpbmcnXSA9ICdBc2NlbmRhbnQnOwokbGFuZ1snY2FuY2VsJ10gPSAnQW5udWxlcic7CiRsYW5nWydjYW51c2VyZWRpdCddID0gJ0xlcyB1dGlsaXNhdGV1cnMgRkVVc2VycyBwZXV2ZW50LWlscyAmZWFjdXRlO2RpdGVyIGNlIGNoYW1wID8nOwokbGFuZ1snY2FudXNlcnZpZXcnXSA9ICdMZXMgdXRpbGlzYXRldXJzIEZFVXNlcnMgcGV1dmVudC1pbHMgdm9pciBjZSBjaGFtcCA/JzsKJGxhbmdbJ2NhdGVnb3J5J10gPSAnQ2F0JmVhY3V0ZTtnb3JpZSc7CiRsYW5nWydjYXRlZ29yaWVzJ10gPSAnQ2F0JmVhY3V0ZTtnb3JpZXMnOwokbGFuZ1snY2F0ZWdvcnl0ZXh0J10gPSAnQ2F0JmVhY3V0ZTtnb3JpZSc7CiRsYW5nWydjYXRlZ29yeWFkZGVkJ10gPSAnQ2F0JmVhY3V0ZTtnb3JpZSBBam91dCZlYWN1dGU7ZSc7CiRsYW5nWydjYXRlZ29yeXVwZGF0ZWQnXSA9ICdDYXQmZWFjdXRlO2dvcmllIE1pc2UgJmFncmF2ZTsgam91cic7CiRsYW5nWydjYXRlZ29yeWxpc3R0ZW1wbGF0ZV9hZGRlZGl0J10gPSAnQWpvdXRlci9Nb2RpZmllciBMZXMgR2FiYXJpdHMgZGUgTGlzdGUgZGUgQ2F0JmVhY3V0ZTtnb3JpZSc7CiRsYW5nWydjYXRlZ29yeWxpc3R0ZW1wbGF0ZXMnXSA9ICdHYWJhcml0cyBkZSBMaXN0ZSBkZSBDYXQmZWFjdXRlO2dvcmllJzsKJGxhbmdbJ2NhdGVnb3J5bGlzdHRlbXBsYXRldXBkYXRlZCddID0gJ0xpc3RlIGRlIENhdCZlYWN1dGU7Z29yaWUgTWlzZSAmYWdyYXZlOyBqb3VyJzsKJGxhbmdbJ2NvbXBhbnknXSA9ICdFbnRyZXByaXNlJzsKJGxhbmdbJ2NvbXBhbnlhZGRlZCddID0gJ0VudHJlcHJpc2UgYWpvdXQmZWFjdXRlO2UnOwokbGFuZ1snY29tcGFueW5hbWUnXSA9ICdOb20gZGUgbCYjMDM5O2VudHJlcHJpc2UnOwokbGFuZ1snY29tcGFueXVwZGF0ZWQnXSA9ICdFbnRyZXByaXNlIE1pc2UgJmFncmF2ZTsgam91cic7CiRsYW5nWydjb21wYW5pZXMnXSA9ICdFbnRyZXByaXNlcyc7CiRsYW5nWydjb21wYW55dGV4dCddID0gJ0VudHJlcHJpc2UnOwokbGFuZ1snY29tcGFueWRpcmVjdG9yeSddID0gJ0FubnVhaXJlIGQmIzAzOTtFbnRyZXByaXNlcyc7CiRsYW5nWydjb250YWN0ZW1haWwnXSA9ICdDb3VycmllbCc7CiRsYW5nWydjcmVhdGVkZGF0ZSddID0gJ0RhdGUgZGUgQ3ImZWFjdXRlO2F0aW9uJzsKJGxhbmdbJ2RlZmF1bHR0ZW1wbGF0ZXMnXSA9ICdHYWJhcml0cyBwYXIgZCZlYWN1dGU7ZmF1dCc7CiRsYW5nWydkZWZhdWx0X3RlbXBsYXRlX25vdGljZSddID0gJzxzdHJvbmc+Tm90ZTo8L3N0cm9uZz4gTGVzIGNvbnRlbnVzIGRlIGNlcyB6b25lcyBkZSB0ZXh0ZSBzb250IHV0aWxpcyZlYWN1dGU7cyBwb3VyIGQmZWFjdXRlO3Rlcm1pbmVyIGxlIGNvbnRlbnUgcGFyIGQmZWFjdXRlO2ZhdXQgZGVzIGdhYmFyaXRzIGxvcnNxdWUgbCYjMDM5O29uIGNsaXF1ZSBzdXIgJnF1b3Q7QWpvdXRlciB1biBHYWJhcml0JnF1b3Q7IGRhbnMgbGEgdGFidWxhdGlvbiBkZSBnYWJhcml0IGFwcHJvcHJpJmVhY3V0ZTtlLiBNb2RpZmllciBsZSBjb250ZW51IGRlIGNlcyB6b25lcyBuJiMwMzk7YSBwYXMgZCYjMDM5O2VmZmV0IGltbSZlYWN1dGU7ZGlhdCBzdXIgbGUgc2l0ZS4nOwokbGFuZ1snZGVsZXRlJ10gPSAnU3VwcHJpbWVyJzsKJGxhbmdbJ2RlbGV0ZWNhdGVnb3J5J10gPSAnU3VwcHJpbWVyIHVuZSBDYXQmZWFjdXRlO2dvcmllJzsKJGxhbmdbJ2RlbGV0ZWNvbXBhbnknXSA9ICdTdXBwcmltZXIgdW5lIEVudHJlcHJpc2UnOwokbGFuZ1snZGVsZXRlZmllbGRkZWYnXSA9ICdTdXBwcmltZXIgdW5lIGQmZWFjdXRlO2Zpbml0aW9uIGRlIGNoYW1wJzsKJGxhbmdbJ2Rlc2NlbmRpbmcnXSA9ICdEZXNjZW5kYW50JzsKJGxhbmdbJ2Rlc2NyaXB0aW9uJ10gPSAnRGVzY3JpcHRpb24mbmJzcDsnOwokbGFuZ1snZGV0YWlscyddID0gJ0QmZWFjdXRlO3RhaWxzJzsKJGxhbmdbJ2RldGFpbHN0ZXh0J10gPSAnRCZlYWN1dGU7dGFpbHMnOwokbGFuZ1snZGV0YWlsdGVtcGxhdGVfYWRkZWRpdCddID0gJ0Fqb3V0ZXIvTW9kaWZpZXIgbGUgR2FiYXJpdCBkZSBEJmVhY3V0ZTt0YWlsJzsKJGxhbmdbJ2RldGFpbHRlbXBsYXRlcyddID0gJ0dhYmFyaXRzIGRlIEQmZWFjdXRlO3RhaWwnOwokbGFuZ1snZGV0YWlsdGVtcGxhdGV1cGRhdGVkJ10gPSAnR2FiYXJpdCBkZSBEJmVhY3V0ZTt0YWlsIE1pcyAmYWdyYXZlOyBqb3VyJzsKJGxhbmdbJ2Rpc2FibGVkJ10gPSAnRCZlYWN1dGU7c2FjdGl2JmVhY3V0ZTsnOwokbGFuZ1snZG93biddID0gJ0Jhcyc7CiRsYW5nWydkcmFmdCddID0gJ0Jyb3VpbGxvbic7CiRsYW5nWydlZGl0J10gPSAnTW9kaWZpZXInOwokbGFuZ1snZWRpdGNhdGVnb3J5J10gPSAnTW9kaWZpZXIgdW5lIENhdCZlYWN1dGU7Z29yaWUnOwokbGFuZ1snZWRpdGNvbXBhbnknXSA9ICdNb2RpZmllciB1bmUgRU50cmVwcmlzZSc7CiRsYW5nWydlZGl0ZmllbGRkZWYnXSA9ICdNb2RpZmllciBsYSBkJmVhY3V0ZTtmaW5pdGlvbiBkJiMwMzk7dW4gY2hhbXAnOwokbGFuZ1snZW1haWx0ZXh0J10gPSAnQ291cnJpZWwnOwokbGFuZ1snZXJyb3JfYmFkdXBsb2FkJ10gPSAnVW4gcHJvYmwmZWdyYXZlO21lIGVzdCBzdXJ2ZW51IGF2ZWMgbGUgZmljaGllciBpbXBvcnQmZWFjdXRlOyc7CiRsYW5nWydlcnJvcl9jb21wYW55bmFtZSddID0gJ0xlIE5vbSBkZSBsJiMwMzk7ZW50cmVwcmlzZSBlc3QgaW5jb3JyZWN0JzsKJGxhbmdbJ2Vycm9yX2NvbXBhbnluYW1lX2ludXNlJ10gPSAnVW5lIGVudHJlcHJpc2UgcG9ydGFudCBkJmVhY3V0ZTtqJmFncmF2ZTsgY2Ugbm9tIGVzdCBkYW5zIGxhIGJhc2UgZGUgZG9ubiZlYWN1dGU7ZS4nOwokbGFuZ1snZXJyb3JfZHVwbGljYXRlX2NhdGVnb3J5J10gPSAnVW4gY2F0JmVhY3V0ZTtnb3JpZSAmZWFjdXRlO3BvbnltZSBleGlzdGUgZCZlYWN1dGU7aiZhZ3JhdmU7JzsKJGxhbmdbJ2Vycm9yX2R1cGxpY2F0ZV9jb21wYW55J10gPSAnVW5lIGVudHJlcHJpc2UgcG9ydGFudCBjZSBub20gKCVzKSBleGlzdGUgZCZlYWN1dGU7aiZhZ3JhdmU7JzsKJGxhbmdbJ2Vycm9yX2R1cGxpY2F0ZV9maWVsZGRlZiddID0gJ1VuIGNoYW1wIGF2ZWMgY2Ugbm9tIGV4aXN0ZSBkJmVhY3V0ZTtqJmFncmF2ZTsnOwokbGFuZ1snZXJyb3JfaW1wb3J0X2JhZGxpbmUnXSA9ICdCYWQgcmVjb3JkIGZvdW5kIGF0IGxpbmUgJWQuICBJcyB0aGVyZSBhIHJ1bGUgbWlzc2luZz8nOwokbGFuZ1snZXJyb3JfaW1wb3J0X2JhZHZhbHVlJ10gPSAnVW5lIG1hdXZhaXNlIHZhbGV1ciBhICZlYWN1dGU7dCZlYWN1dGU7IHRyb3V2JmVhY3V0ZTtlIGRhbnMgbGUgY2hhbXAgJXMgJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydF9kdXBsaWNhdGVydWxlJ10gPSAnRHVwbGljYXRlICVzIHJ1bGUgYXQgbGluZSAlZCc7CiRsYW5nWydlcnJvcl9pbXBvcnRfZHVwbGljYXRlcnVsZV9pZGVudGlmaWVyJ10gPSAnRHVwbGljYXRlIHJ1bGUgaWRlbnRpZmllciBhdCBsaW5lICVkJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydF91bmtub3ducm93J10gPSAnRG9udCBrbm93IGhvdyB0byBoYW5kbGUgbGluZSAlZCB3aXRoIHRoZSBydWxlIGlkZW50aWZpZXIgJXMnOwokbGFuZ1snZXJyb3JfaW1wb3J0X3Vua25vd25ydWxlJ10gPSAnUiZlZ3JhdmU7Z2xlIGluY29ubnVlICZhZ3JhdmU7IGxhIGxpZ25lICVkJzsKJGxhbmdbJ2Vycm9yX2luc2VydF9jYXRlZ29yeSddID0gJ0EgZGF0YWJhc2UgZXJyb3Igb2NjdXJyZWQgdHJ5aW5nIHRvIGluc2VydCB0aGUgY2F0ZWdvcnkgZGVmaW5pdGlvbic7CiRsYW5nWydlcnJvcl9pbnNlcnRfY29tcGFueSddID0gJ0EgZGF0YWJhc2UgZXJyb3Igb2NjdXJyZWQgdHJ5aW5nIHRvIGluc2VydCB0aGUgY29tcGFueSBkZWZpbml0aW9uJzsKJGxhbmdbJ2Vycm9yX2luc2VydF9maWVsZGRlZiddID0gJ0EgZGF0YWJhc2UgZXJyb3Igb2NjdXJyZWQgdHJ5aW5nIHRvIGluc2VydCB0aGUgZmllbGQgZGVmaW5pdGlvbic7CiRsYW5nWydlcnJvcl9pbnZhbGlkX3BhcmFtJ10gPSAnTGEgdmFsZXVyIHNwJmVhY3V0ZTtjaWZpJmVhY3V0ZTtlICVzIGVzdCBpbnZhbGlkZSc7CiRsYW5nWydlcnJvcl9taXNzaW5ndXBsb2FkJ10gPSAnQXVjdW4gZmljaGllciBuJiMwMzk7YSAmZWFjdXRlO3QmZWFjdXRlOyBpbXBvcnQmZWFjdXRlOyc7CiRsYW5nWydlcnJvcl9taXNzaW5ncGFyYW0nXSA9ICdBIHJlcXVpcmVkIHZhbHVlIHdhcyBtaXNzaW5nIGZyb20gdGhlIGZvcm0gaW5wdXQnOwokbGFuZ1snZXJyb3Jfbm9kcm9wZG93bm9wdGlvbnMnXSA9ICdBdWN1bmUgb3B0aW9uIGRlIG1lbnUgZCZlYWN1dGU7cm91bGFudCBmb3VybmllJzsKJGxhbmdbJ2Vycm9yX25vZmV1J10gPSAnTmUgcGV1dCBwYXMgdHJvdXZlciBsZSBtb2R1bGUgRnJvbnRFbmRVc2Vycyc7CiRsYW5nWydlcnJvcl9ub2xlbmd0aCddID0gJ0F1Y3VuZSBsb25ndWV1ciBtYXhpbXVtIGZvdXJuaWUnOwokbGFuZ1snZXJyb3Jfbm9yZXN1bHRzZm91bmQnXSA9ICdObyByZWNvcmRzIG1hdGNoaW5nIHlvdXIgY3JpdGVyaWEgY291bGQgYmUgZm91bmQgaW4gdGhlIGRhdGFiYXNlJzsKJGxhbmdbJ2Vycm9yX3Bvc3Rjb2RlX2xvb2t1cCddID0gJ0NvdWxkIG5vdCBmaW5kIGFueSBpbmZvcm1hdGlvbiBmb3IgcG9zdGFsL3ppcCBjb2RlICVzJzsKJGxhbmdbJ2Vycm9yX3ByZWZpeF9tc2cnXSA9ICdVbmUgZXJyZXVyIGVzdCBzdXJ2ZW51ZSAmYWdyYXZlOyBsYSBsaWduZSA6ICVkOiAlcyc7CiRsYW5nWydleHBvcnRjc3YnXSA9ICdFeHBvcnQgYXUgZm9ybWF0IENTVic7CiRsYW5nWydmYXgnXSA9ICdUJmVhY3V0ZTtsJmVhY3V0ZTtjb3BpZSc7CiRsYW5nWydmYXh0ZXh0J10gPSAnVCZlYWN1dGU7bCZlYWN1dGU7Y29waWUnOwokbGFuZ1snZmllbGRkZWYnXSA9ICdEJmVhY3V0ZTtmaW5pdGlvbiBkdSBDaGFtcCc7CiRsYW5nWydmaWVsZGRlZnMnXSA9ICdEJmVhY3V0ZTtmaW5pdGlvbiBkZXMgQ2hhbXBzJzsKJGxhbmdbJ2ZpZWxkZGVmdGV4dCddID0gJ0QmZWFjdXRlO2Zpbml0aW9uIGR1IENoYW1wJzsKJGxhbmdbJ2ZpZWxkZGVmYWRkZWQnXSA9ICdEJmVhY3V0ZTtmaW5pdGlvbiBkdSBDaGFtcCBBam91dCZlYWN1dGU7JzsKJGxhbmdbJ2ZpZWxkZGVmdXBkYXRlZCddID0gJ0QmZWFjdXRlO2Zpbml0aW9uIGR1IENoYW1wIE1pc2UgJmFncmF2ZTsgam91cic7CiRsYW5nWydmaWVsZGRlZmRlbGV0ZWQnXSA9ICdEJmVhY3V0ZTtmaW5pdGlvbiBkdSBDaGFtcCBTdXBwcmltJmVhY3V0ZTsnOwokbGFuZ1snZmllbGRfY2hlY2tib3gnXSA9ICdCbyZpY2lyYzt0ZSAmYWdyYXZlOyBjb2NoZXInOwokbGFuZ1snZmllbGRfZHJvcGRvd24nXSA9ICdNZW51IGQmZWFjdXRlO3JvdWxhbnQnOwokbGFuZ1snZmllbGRfdGV4dGFyZWEnXSA9ICdab25lIGRlIFRleHRlJzsKJGxhbmdbJ2ZpZWxkX3RleHRib3gnXSA9ICdCb2l0ZSBkZSBUZXh0ZSc7CiRsYW5nWydmaXJzdHBhZ2UnXSA9ICc8PCAnOwokbGFuZ1snZnJvbnRlbmRmb3JtdGVtcGxhdGVfYWRkZWRpdCddID0gJ0Fqb3V0ZXIvTW9kaWZpZXIgbGUgR2FiYXJpdCBkZSBGb3JtdWxhaXJlIGRlIGxhIHBhcnRpZSBwdWJsaXF1ZSAoRnJvbnRFbmQpJzsKJGxhbmdbJ2Zyb250ZW5kZm9ybXRlbXBsYXRlcyddID0gJ01vZGlmaWVyIGxlIEdhYmFyaXQgZGUgbCYjMDM5O0VudHJlcHJpc2UnOwokbGFuZ1snZnJvbnRlbmRmb3JtdGVtcGxhdGV1cGRhdGVkJ10gPSAnR2FiYXJpdCBkZSBsJiMwMzk7RW50cmVwcmlzZSBNaXMgJmFncmF2ZTsgam91cic7CiRsYW5nWydoZWxwJ10gPSAnPGgzPlF1ZSBmYWl0IGNlIG1vZHVsZSA/PC9oMz4NCjxwPkNlIG1vZHVsZSBwZXJtZXQgZGUgY29sbGVjdGVyLCBvcmdhbmlzZXIgZXQgYWZmaWNoZXIgZGVzIGluZm9ybWF0aW9ucyAmYWdyYXZlOyBwcm9wb3MgZCYjMDM5O2VudHJlcHJpc2VzIChleDogQW5udWFpcmUgZCYjMDM5O2VudHJlcHJpc2UpLiBHJmVhY3V0ZTtuJmVhY3V0ZTtyYWxlbWVudCBjZSBzb250IGRlcyBpbmZvcm1hdGlvbnMgZGUgY29udGFjdCBldCB1biBsb2dvLCBtYWlzIGNlIG1vZHVsZSBlc3QgZmxleGlibGUgZXQgcGVybWV0IGwmIzAzOTtham91dCBkZSBjaGFtcHMgc3VwcGwmZWFjdXRlO21lbnRhaXJlcyBldCBkZSBsaW1pdGVyIGwmIzAzOTthZmZpY2hhZ2UgZGUgZG9ubiZlYWN1dGU7ZXMgcHJpdiZlYWN1dGU7ZXMgLyBwdWJsaXF1ZXMuPC9wPg0KPHA+Q2UgbW9kdWxlIHBldXQgJmVjaXJjO3RyZSB1dGlsaXMmZWFjdXRlOyBwb3VyIGRpZmYmZWFjdXRlO3JlbnRlcyBhcHBsaWNhdGlvbnMgOiB1bmUgbGlzdGUgZGUgZm91cm5pc3NldXJzLCB1bmUgbGlzdGUgZGUgY29udGFjdHMsIGQmIzAzOTthc3NvY2lhdGlvbnMuLi4gIDwvcD4NCjxoMz5Db21tZW50IGwmIzAzOTt1dGlsaXNlciA/PC9oMz4NCjxwPkxlIHBsdXMgc2ltcGxlIGVzdCBkJiMwMzk7aW50JmVhY3V0ZTtncmVyIGxhIGJhbGlzZSA8Y29kZT57Q29tcGFueURpcmVjdG9yeX08L2NvZGU+IHNvaXQgZGlyZWN0ZW1lbnQgZGFucyB2b3RyZSBnYWJhcml0IG91IGRhbnMgbGUgY29udGVudSBkZSB2b3RyZSBwYWdlLiBMJiMwMzk7aW50ZXJmYWNlIGQmIzAzOTthZG1pbmlzdHJhdGlvbiBkdSBtb2R1bGUgdm91cyBwZXJtZXR0cmEgZGUgbWV0dHJlICZhZ3JhdmU7IGpvdXIgc2VzIHBhcmFtJmVncmF2ZTt0cmVzIGV0IGRlIGNyJmVhY3V0ZTtlciBkZXMgZW50ciZlYWN1dGU7ZXMuIFVuZSBsaXN0ZSBkZXMgcGFyYW0mZWdyYXZlO3RyZXMgKGQmZWFjdXRlO2NyaXRzIGNpLWRlc3NvdXMpIHZvdXMgcGVybWV0dHJhIGQmIzAzOTthZGFwdGVyIGxlIGNvbXBvcnRlbWVudCBkZSBjZSBtb2R1bGUuPC9wPg0KPGgzPlNlY3VyaXQmZWFjdXRlOzwvaDM+DQo8cD5BZmluIGRlIGcmZWFjdXRlO3JlciBsZXMgZW50cmVwcmlzZXMgYXUgc2VpbiBkdSBtb2R1bGUsIGwmIzAzOTt1dGlsaXNhdGV1ciBkb2l0IGF2b2lyIGxlcyBkcm9pdHMgbiZlYWN1dGU7Y2Vzc2FpcmVzIDogJiMwMzk7PC9lbT5Nb2RpZnkgQ29tcGFueSBEaXJlY3Rvcnk8L2VtPiYjMDM5OyAuPC9wPg0KPHA+QWZpbiBkZSBtb2RpZmllciBsZXMgZ2FiYXJpdHMgZGUgYmFzZSBxdWkgY29udHImb2NpcmM7bGVudCBsJiMwMzk7YWZmaWNoYWdlIGRlIGNlIG1vZHVsZSwgbCYjMDM5O3V0aWxpc2F0ZXVyIGRvaXQgYXZvaXIgbGVzIGRyb2l0cyBuJmVhY3V0ZTtjZXNzYWlyZXMgOiAmIzAzOTs8ZW0+TW9kaWZ5IFRlbXBsYXRlczwvZW0+JiMwMzk7LjwvcD4NCjxwPlBvdXIgbW9kaWZpZXIgbGVzIHBhcmFtJmVncmF2ZTt0cmVzIGR1IG1vZHVsZXMgbCYjMDM5O3V0aWxpc2F0ZXVyIGRvaXQgYXZvaXIgbGVzIGRyb2l0cyBuJmVhY3V0ZTtjZXNzYWlyZXMgOiAmIzAzOTs8ZW0+TW9kaWZ5IFNpdGUgUHJlZmVyZW5jZXM8L2VtPiYjMDM5Oy48L3A+DQo8aDM+UHJldHR5IFVSTFM8L2gzPg0KPHA+TGVzIGZvbmN0aW9ubmFsaXQmZWFjdXRlO3MgZXQgbGEgZmxleGliaWxpdCZlYWN1dGU7IGR1IG1vZHVsZSBlc3QgciZlYWN1dGU7ZHVpdGUgc2kgdm91cyB1dGlsaXNleiBsZSBtJmVhY3V0ZTtjYW5pc21lIGRlICYjMDM5O1ByZXR0eSBVUkxzJiMwMzk7LiBQYXIgZXhlbXBsZSwgc2kgdm91cyB1dGlsaXNleiBsZXMgcHJldHR5IFVSTHMgYXZlYyBjZSBtb2R1bGUsIHZvdXMgZGV2cmlleiBwbGFjZXIgbGUgdGFnIGRlIGNlIG1vZHVsZSBkYW5zIGxlIGJsb2MgcGFyIGQmZWFjdXRlO2ZhdXQgKGRlZmF1bHQgY29udGVudCBibG9jayA6IHtjb250ZW50fSApLCBldCBsb3JzcXVlIGwmIzAzOTtvbiBjbGlxdWUgc3VyIHVuIGxpZW4gb3UgbG9yc3F1ZSBsJiMwMzk7b24gc291bWV0IHVuZSBpbmZvcm1hdGlvbiB2aWEgY2UgbW9kdWxlLCAgbGUgciZlYWN1dGU7c3VsdGF0IHJlbXBsYWNlcmEgY2V0dGUgYmFsaXNlLjwvcD4nOwokbGFuZ1snaWQnXSA9ICdJRCc7CiRsYW5nWydpbmZvX2Ryb3Bkb3duX29wdGlvbnMnXSA9ICdTcCZlYWN1dGU7Y2lmaWUgbGVzIG9wdGlvbnMgcG91ciBsZSBtZW51IGQmZWFjdXRlO3JvdWxhbnQuIFVuZSBsaWduZSBwYXIgZW50ciZlYWN1dGU7ZS4gUyZlYWN1dGU7cGFyZXIgbGVzIGNsZWZzIGRlcyB2YWxldXJzIGF2ZWMgbGUgJnF1b3Q7PSZxdW90Oy4gRXggOiBjbGVmPXZhbGV1cic7CiRsYW5nWydpbWFnZWN1cnJlbnRoaWRkZW4nXSA9ICcnOwokbGFuZ1snaW1hZ2V0ZXh0J10gPSAnSW1hZ2UmbmJzcDsnOwokbGFuZ1snaW1wb3J0Y3N2J10gPSAnSW1wb3J0ZXIgQ1NWJzsKJGxhbmdbJ2xhdGl0dWRlJ10gPSAnTGF0aXR1ZGUgJzsKJGxhbmdbJ2xhc3RwYWdlJ10gPSAnPj4nOwokbGFuZ1snbG9nb2N1cnJlbnRoaWRkZW4nXSA9ICcnOwokbGFuZ1snbG9nb3RleHQnXSA9ICdMb2dvJzsKJGxhbmdbJ2xvbmdpdHVkZSddID0gJ0xvbmdpdHVkZSc7CiRsYW5nWydsb29rdXAnXSA9ICdMb29rdXAgQ29vcmRpbmF0ZXMnOwokbGFuZ1snbWF4bGVuZ3RoJ10gPSAnTG9uZ2V1ciBNYXgnOwokbGFuZ1snbWF4X2xlbmd0aCddID0gJ0xvbmdldXIgTWF4JzsKJGxhbmdbJ21heGxlbmd0aHRleHQnXSA9ICdMb25nZXVyIE1heCc7CiRsYW5nWydtb2RpZmllZGRhdGUnXSA9ICdEZXJuaSZlZ3JhdmU7cmUgbW9kaWZpY2F0aW9uIGxlJzsKJGxhbmdbJ25hbWUnXSA9ICdOb20nOwokbGFuZ1snbmFtZXRleHQnXSA9ICdOb20nOwokbGFuZ1snbmVlZHBlcm1pc3Npb24nXSA9ICdWb3VzIGRldmV6IGF2b2lyIGxhIHBlcm1pc3Npb24gJiMwMzk7JXMmIzAzOTsgcG91ciBlZmZlY3R1ZXIgY2V0dGUgYWN0aW9uLic7CiRsYW5nWydubyddID0gJ05vbic7CiRsYW5nWydub2NvbXBhbnluYW1lZ2l2ZW4nXSA9ICdBdWN1biBOb20gZCYjMDM5O0VudHJlcHJpc2UgZm91cm5pJzsKJGxhbmdbJ25vbmFtZWdpdmVuJ10gPSAnQXVjdW4gTm9tIGZvdXJuaSc7CiRsYW5nWydub3RhbnVtYmVyJ10gPSAnQ2UgbiYjMDM5O2VzdCBwYXMgdW4gbm9tYnJlJzsKJGxhbmdbJ25leHRwYWdlJ10gPSAnPiAnOwokbGFuZ1snb2YnXSA9ICdEZSc7CiRsYW5nWydwYWdlJ10gPSAnUGFnZSc7CiRsYW5nWydwYXJhbV9hY3Rpb24nXSA9ICdEZXRlcm1pbmUgbGUgY29tcG9ydGVtZW50IHByaW1haXJlIGRlIGNlIG1vZHVsZS4gTGVzIHZhbGV1cnMgcG9zc2libGVzIHNvbnQgOg0KPHVsPg0KICA8bGk+Y2F0ZWdvcnlsaXN0IC0tIEFmZmljaGUgbGEgbGlzdGUgZGVzIGNhdCZlYWN1dGU7Z29yaWVzLiBMZXMgdXRpbGlzYXRldXJzIHBldXZlbnQgcGFzc2VyIGF1IG1vZGUgU29tbWFpcmUgcHVpcyBhdSBtb2RlIEQmZWFjdXRlO3RhaWwuPC9saT4NCiAgPGxpPjxzdHJvbmc+ZGVmYXVsdDwvc3Ryb25nPiAtLSBBZmZpY2hlIGxlcyBlbnRyZXByaXNlcyBlbiBtb2RlIFNvbW1haXJlLjwvbGk+DQogIDxsaT5kZXRhaWxzIC0tIEFmZmljaGUgbGVzIGluZm9ybWF0aW9ucyBEJmVhY3V0ZTt0YWlsbCZlYWN1dGU7ZXMgZCYjMDM5O3VuZSBlbnRyZXByaXNlIChtb2RlIEQmZWFjdXRlO3RhaWwpLjwvbGk+DQogIDxsaT5mZV9lZGl0IC0tIEFmZmljaGUgdW4gZm9ybXVsYWlyZSBwZXJtZXR0YW50IGRlIG1ldHRyZSAmYWdyYXZlOyBqb3VyIGxlcyBpbmZvcm1hdGlvbnMgZCYjMDM5O3VuZSBlbnRyZXByaXNlLjwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ3BhcmFtX2lubGluZSddID0gJ0FwcGxpY2FibGUgb25seSB0byB0aGUgPGVtPmRlZmF1bHQ8L2VtPiBzdW1tYXJ5LCBhbmQgPGVtPnNlYXJjaDwvZW0+IG1vZGVzLCB0aGlzIHBhcmFtZXRlciBhbGxvd3Mgc3BlY2lmeWluZyB3ZXRoZXIgdGhlIHJlc3VsdGluZyBkYXRhIHNob3VsZCByZXBsYWNlIHRoZSBkZWZhdWx0IGNvbnRlbnQgYmxvY2ssIG9yIHNob3VsZCByZXBsYWNlIHRoZSBvcmlnaW5hbCB0YWcgKGlubGluZSkuJzsKJGxhbmdbJ3BhcmFtX3NlYXJjaGZvcm10ZW1wbGF0ZSddID0gJ0FwcGxpY2FibGUgb25seSB0byB0aGUgPGVtPnNlYXJjaDwvZW0+IG1vZGUsIHRoaXMgcGFyYW1ldGVyIGFsbG93cyBzcGVjaWZ5aW5nIGEgbm9uIGRlZmF1bHQgc2VhcmNoIGZvcm0gdGVtcGxhdGUuJzsKJGxhbmdbJ3BhcmFtX3BhZ2VsaW1pdCddID0gJ1doZW4gdXNlZCB3aXRoIHRoZSA8ZW0+ZGVmYXVsdDwvZW0+IHN1bW1hcnkgbW9kZSwgb3IgdGhlIDxlbT5zZWFyY2g8L2VtPiBtb2RlLCB0aGlzIHdpbGwgbGltaXQgdGhlIHJlc3VsdHMgdG8gYSBzcGVjaWZpZWQgbnVtYmVyLic7CiRsYW5nWydwYXJhbV9jYXRlZ29yeSddID0gJ0xvcnNxdSYjMDM5O3V0aWxpcyZlYWN1dGU7IGF2ZWMgbGUgbW9kZSBTb21tYWlyZSA8ZW0+ZGVmYXVsdDwvZW0+LCBjZSBwYXJhbSZlZ3JhdmU7dHJlLCBxdWkgZG9pdCBjb3JyZXNwb25kcmUgYXUgbm9tIGQmIzAzOTt1bmUgY2F0JmVhY3V0ZTtnb3JpZSBleGlzdGFudGUsIHNlcmEgdXRpbGlzJmVhY3V0ZTsgcG91ciBhZmZpY2hlciBzZXVsZW1lbnQgbGVzIGVudHJlcHJpc2VzIGRlIGNldHRlIGNhdCZlYWN1dGU7Z29yaWUuIChVbmUgbGlzdGUgcyZlYWN1dGU7cGFyJmVhY3V0ZTtlIHBhciBkZXMgdmlyZ3VsZXMgcGV1dCAmZWNpcmM7dHJlIHNwJmVhY3V0ZTtjaWZpJmVhY3V0ZTtlKS4nOwokbGFuZ1sncGFyYW1fY2F0ZWdvcnlsaXN0dGVtcGxhdGUnXSA9ICdTcCZlYWN1dGU7Y2lmaWUgdW4gZ2FiYXJpdCAocGFyIG5vbSkgJmFncmF2ZTsgdXRpbGlzZXIgbG9ycyBkZSBsJiMwMzk7YWZmaWNoYWdlIGRlIGxhIFZ1ZSBlbiBMaXN0ZSBkZSBsYSBDYXQmZWFjdXRlO2dvcmllLic7CiRsYW5nWydwYXJhbV9jb21wYW55aWQnXSA9ICdSZXF1aXMgcG91ciBsZXMgbW9kZXMgZCZlYWN1dGU7dGFpbCBldCAmZWFjdXRlO2RpdGlvbiBkdSBGcm9udEVuZCwgY2UgcGFyYW0mZWdyYXZlO3RyZSBkJmVhY3V0ZTt0ZXJtaW5lIHF1ZWwgZW5yZWdpc3RyZW1lbnQgZCYjMDM5O2VudHJlcHJpc2UgZG9pdCAmZWNpcmM7dHJlICZlYWN1dGU7ZGl0JmVhY3V0ZTsgb3UgdnUuJzsKJGxhbmdbJ3BhcmFtX2RldGFpbHBhZ2UnXSA9ICdTcCZlYWN1dGU7Y2lmaWUgdW4gYWxpYXMgZGUgcGFnZSAocGFyIG5vbSkgJmFncmF2ZTsgdXRpbGlzZXIgcG91ciBhZmZpY2hlciBsZSBkJmVhY3V0ZTt0YWlsIGQmIzAzOTt1biBlbnJlZ2lzdHJlbWVudC4gPHN0cm9uZz5Ob3RlIDo8L3N0cm9uZz4gQ2UgcGFyYW0mZWdyYXZlO3RyZSBuJiMwMzk7ZXN0IHBhcyBjb21wYXRpYmxlIGF2ZWMgbGVzIHByZXR0eSB1cmxzLic7CiRsYW5nWydwYXJhbV9kZXRhaWx0ZW1wbGF0ZSddID0gJ1NwJmVhY3V0ZTtjaWZpZSB1biBnYWJhcml0IChwYXIgbm9tKSAmYWdyYXZlOyB1dGlsaXNlciBsb3JzIGRlIGwmIzAzOTthZmZpY2hhZ2UgZGUgbGEgdnVlIGRlIEQmZWFjdXRlO3RhaWwuICA8c3Ryb25nPk5vdGUgOjwvc3Ryb25nPiBDZSBwYXJhbSZlZ3JhdmU7dHJlIG4mIzAzOTtlc3QgcGFzIGNvbXBhdGlibGUgYXZlYyBsZXMgcHJldHR5IHVybHMuJzsKJGxhbmdbJ3BhcmFtX2Zyb250ZW5kZm9ybXRlbXBsYXRlJ10gPSAnU3AmZWFjdXRlO2NpZmllIHVuIGdhYmFyaXQgKHBhciBub20pICZhZ3JhdmU7IHV0aWxpc2VyIGxvcnMgZGUgbCYjMDM5O2FmZmljaGFnZSBkdSBmb3JtdWxhaXJlIGQmIzAzOTsmZWFjdXRlO2RpdGlvbiBkJiMwMzk7ZW50cmVwcmlzZSBzdXIgbGUgRnJvbnRFbmQuJzsKJGxhbmdbJ3BhcmFtX3Nob3dhbGwnXSA9ICdBcHBsaWNhYmxlIHNldWxlbWVudCAmYWdyYXZlOyBsJiMwMzk7YWN0aW9uICYjMDM5O2NhdGVnb3J5bGlzdCYjMDM5Oywgc2kgY2UgcGFyYW0mZWdyYXZlO3RyZSBlc3Qgc3AmZWFjdXRlO2NpZmkmZWFjdXRlOywgdG91dGVzIGxlcyBjYXQmZWFjdXRlO2dvcmllcyBzZXJvbnQgYWZmaWNoJmVhY3V0ZTtlcywgbSZlY2lyYzttZSBjZWxsZXMgc2FucyBlbnRyZXByaXNlLic7CiRsYW5nWydwYXJhbV9zb3J0b3JkZXInXSA9ICdTcGVjaWZpZSBsJiMwMzk7b3JkcmUgZGUgdHJpIGRlcyBjaGFtcHMgZGFucyBsYSB2dWUgU29tbWFpcmUuIFZhbGV1cnMgcG9zc2libGVzIDoNCjx1bD4NCiAgPGxpPjxzdHJvbmc+YXNjPC9zdHJvbmc+IC0tIE9yZHJlIEFzY2VuZGFudDwvbGk+DQogIDxsaT5kZXNjIC0tIE9yZHJlIERlc2NlbmRhbnQ8L2xpPg0KPC91bD4nOwokbGFuZ1sncGFyYW1fc29ydGJ5J10gPSAnQXBwbGljYWJsZSBzZXVsZW1lbnQgZW4gbW9kZSBTb21tYWlyZSwgY2UgcGFyYW0mZWdyYXZlO3RyZSBkJmVhY3V0ZTt0ZXJtaW5lIGxlIHRyaSBwb3VyIGwmIzAzOTthZmZpY2hhZ2UgZGVzIGVudHJlcHJpc2VzLiBWYWxldXJzIHBvc3NpYmxlcyA6DQo8dWw+DQogIDxsaT48c3Ryb25nPmNvbXBhbnlfbmFtZTwvc3Ryb25nPiAtLSBOb20gZGUgbCYjMDM5O2VudHJlcHJpc2U8L2xpPg0KICA8bGk+cGhvbmUgLS0gVCZlYWN1dGU7bCZlYWN1dGU7cGhvbmU8L2xpPg0KICA8bGk+ZmF4IC0tIFQmZWFjdXRlO2wmZWFjdXRlO2NvcGllPC9saT4NCiAgPGxpPmVtYWlsIC0tIENvdXJyaWVsPC9saT4NCiAgPGxpPndlYnNpdGUgLS0gQWRyZXNzZSBkdSBzaXRlIGludGVybmV0PC9saT4NCiAgPGxpPmNyZWF0ZWQgLS0gRGF0ZSBkZSBjciZlYWN1dGU7YXRpb248L2xpPg0KICA8bGk+bW9kaWZpZWQgLS0gRGF0ZSBkZSBtb2RpZmljYXRpb248L2xpPg0KPC91bD4nOwokbGFuZ1sncGFyYW1fc3VtbWFyeXRlbXBsYXRlJ10gPSAnU3BlY2lmaWUgdW4gZ2FiYXJpdCAocGFyIG5vbSkgJmFncmF2ZTsgdXRpbGlzZXIgcG91ciBhZmZpY2hlciBsYSB2dWUgU29tbWFpcmUuIDxzdHJvbmc+Tm90ZSA6PC9zdHJvbmc+IENlIHBhcmFtJmVncmF2ZTt0cmUgbiYjMDM5O2VzdCBwYXMgY29tcGF0aWJsZSBhdmVjIGxlcyBwcmV0dHkgdXJscy4nOwokbGFuZ1sncG9zdGFsX2NvZGUnXSA9ICdDb2RlIFBvc3RhbCc7CiRsYW5nWydwb3N0aW5zdGFsbCddID0gJ0xlIG1vZHVsZSAmIzAzOTtBbm51YWlyZSBkJiMwMzk7ZW50cmVwcmlzZSYjMDM5OyBhICZlYWN1dGU7dCZlYWN1dGU7IGluc3RhbGwmZWFjdXRlOy4nOwokbGFuZ1sncG9zdHVuaW5zdGFsbCddID0gJ0xlIG1vZHVsZSAmIzAzOTtBbm51YWlyZSBkJiMwMzk7ZW50cmVwcmlzZSYjMDM5OyBhICZlYWN1dGU7dCZlYWN1dGU7IGQmZWFjdXRlO3NpbnN0YWxsJmVhY3V0ZTsuIFRvdXRlcyBsZXMgZW50cmVwcmlzZXMgb250ICZlYWN1dGU7dCZlYWN1dGU7IGVmZmFjJmVhY3V0ZTtlcy4nOwokbGFuZ1sncHJldW5pbnN0YWxsJ10gPSAnJkVjaXJjO3Rlcy12b3VzIHMmdWNpcmM7ciBkZSB2b3Vsb2lyIGQmZWFjdXRlO3NpbnN0YWxsZXIgY2UgbW9kdWxlID8gTGEgZCZlYWN1dGU7c2luc3RhbGxhdGlvbiBlZmZhY2VyYSB0b3V0ZXMgbGVzIGVudHJlcHJpc2VzIGNyJmVhY3V0ZTtlcyBldCBsZXVycyBpbmZvcm1hdGlvbnMgYXNzb2NpJmVhY3V0ZTtlcy4nOwokbGFuZ1sncHJldnBhZ2UnXSA9ICc8JzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yaWVzX2ltcG9ydGVkJ10gPSAnQ2F0JmVhY3V0ZTtnb3JpZXMgaW1wb3J0JmVhY3V0ZTtlcyc7CiRsYW5nWydwcm9tcHRfY2hlY2tfZHVwbGljYXRlcyddID0gJ1JlY2hlcmNoZXIgZGVzIG5vbXMgZGUgY29tcGFnbmllIGVuIGRvdWJsb24gPyc7CiRsYW5nWydwcm9tcHRfY29sbGVjdHN0YXRzJ10gPSAnQ29sbGVjdCBTZWFyY2ggU3RhdGlzdGljcyc7CiRsYW5nWydwcm9tcHRfY29tcGFuaWVzX2ltcG9ydGVkJ10gPSAnRW50cmVwcmlzZXMgaW1wb3J0JmVhY3V0ZTtlcyc7CiRsYW5nWydwcm9tcHRfZGVsaW1ldGVyJ10gPSAnRCZlYWN1dGU7bGltaXRhdGV1ciBkZSBjaGFtcCc7CiRsYW5nWydwcm9tcHRfZGV0YWlscGFnZSddID0gJ0xhIHBhZ2UgcGFyIGQmZWFjdXRlO2ZhdXQgc3VyIGxhcXVlbGxlIGxhIHJlZGlyZWN0aW9uIHNlcmEgcGFyYW0mZWFjdXRlO3RyJmVhY3V0ZTtlIGVuIG1vZGUgRCZlYWN1dGU7dGFpbCc7CiRsYW5nWydwcm9tcHRfZHJvcGRvd25fb3B0aW9ucyddID0gJ09wdGlvbnMgZHUgbWVudSBkJmVhY3V0ZTtyb3VsYW50JzsKJGxhbmdbJ3Byb21wdF9maWVsZGRlZnNfaW1wb3J0ZWQnXSA9ICdEJmVhY3V0ZTtmaW5pdGlvbnMgZGUgY2hhbXBzIGltcG9ydCZlYWN1dGU7ZXMnOwokbGFuZ1sncHJvbXB0X2ltcG9ydF9jYXRlZ29yeWRlZnMnXSA9ICdDcmVhdGUgbWlzc2luZyBjYXRlZ29yaWVzIG9uIGltcG9ydCc7CiRsYW5nWydwcm9tcHRfaW1wb3J0X2NhdGVnb3J5dmFscyddID0gJ1BvcHVwbGF0ZSBjYXRlZ29yeSB2YWx1ZXMgb24gaW1wb3J0JzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRfY3N2ZmlsZSddID0gJ0ltcG9ydGVyIHVuIGZpY2hpZXIgQ1NWJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRfZmllbGRkZWZzJ10gPSAnQ3JlYXRlIG1pc3NpbmcgJnF1b3Q7YWRkaXRpb25hbCBmaWVsZCZxdW90OyBkZWZpbml0aW9ucyBvbiBpbXBvcnQnOwokbGFuZ1sncHJvbXB0X2ltcG9ydF9maWVsZHZhbHMnXSA9ICdQb3B1bGF0ZSAmcXVvdDthZGRpdGlvbmFsIGZpZWxkJnF1b3Q7IHZhbHVlcyBvbiBpbXBvcnQnOwokbGFuZ1sncHJvbXB0X2ltcG9ydF9sb29rdXBsYXRsb25nJ10gPSAnTG9va3VwIGxhdGl0dWRlIGFuZCBsb25naXR1ZGUgdmFsdWVzIGlmIG1pc3NpbmcnOwokbGFuZ1sncHJvbXB0X3BhZ2VsaW1pdCddID0gJ0xlIG5vbWJyZSBkJiMwMzk7ZW5yZWdpc3RyZW1lbnRzICZhZ3JhdmU7IGFmZmljaGVyIGVuIG1vZGUgU29tbWFpcmUnOwokbGFuZ1sncHJvbXB0X3N1bW1hcnlzb3J0aW5nJ10gPSAnT3JkcmUgZGUgdHJpIHBhciBkJmVhY3V0ZTtmYXV0IGVuIG1vZGUgU29tbWFpcmUnOwokbGFuZ1sncHJvbXB0X3N1bW1hcnlzb3J0b3JkZXInXSA9ICdMJiMwMzk7b3JkcmUgZGUgdHJpIHBhciBkJmVhY3V0ZTtmYXV0IGVuIG1vZGUgU29tbWFpcmUgPGVtPihuZSBzJiMwMzk7YXBwbGlxdWUgcGFzIHNpIGwmIzAzOTtvcmRyZSBlc3QgJiMwMzk7cmFuZG9tJiMwMzk7IG91ICYjMDM5O2FsJmVhY3V0ZTthdG9pcmUmIzAzOTs8L2VtPic7CiRsYW5nWydwcm9tcHRfdGVtcGxhdGUnXSA9ICdHYWJhcml0JzsKJGxhbmdbJ3B1YmxpYyddID0gJ1B1YmxpcXVlJzsKJGxhbmdbJ3B1Ymxpc2hlZCddID0gJ1B1YmxpJmVhY3V0ZTsnOwokbGFuZ1sncHJlZmVyZW5jZXMnXSA9ICdQciZlYWN1dGU7ZiZlYWN1dGU7cmVuY2VzJzsKJGxhbmdbJ3JhZGl1cyddID0gJ1JheW9uJzsKJGxhbmdbJ3JhbmRvbSddID0gJ0FsJmVhY3V0ZTthdG9pcmUnOwokbGFuZ1sncmV0dXJuJ10gPSAnUmV0b3VyJzsKJGxhbmdbJ3Jlc2V0dG9mYWN0b3J5J10gPSAnUmVzdGF1cmVyIGxlcyBQYXJhbSZlZ3JhdmU7dHJlcyBwYXIgZCZlYWN1dGU7ZmF1dCc7CiRsYW5nWydyZXN0b3JldG9kZWZhdWx0c21zZyddID0gJ0NldHRlIG9wJmVhY3V0ZTtyYXRpb24gdmEgciZlYWN1dGU7aW5pdGlhbGlzZXIgbGUgY29udGVudSBkdSBnYWJhcml0IGF2ZWMgY2VsdWkgcGFyIGQmZWFjdXRlO2ZhdXQuIFZvdWxlei12b3VzIGNvbnRpbnVlciA/JzsKJGxhbmdbJ3NlYXJjaCddID0gJ1JlY2hlcmNoZXInOwokbGFuZ1snc2VhcmNoZXMnXSA9ICdSZWNoZXJjaGVzJzsKJGxhbmdbJ3NlYXJjaGZvcm10ZW1wbGF0ZXMnXSA9ICdHYWJhcml0IGRlIGZvcm11bGFpcmUgZGUgcmVjaGVyY2hlJzsKJGxhbmdbJ3NlYXJjaGZvcm10ZW1wbGF0ZV9hZGRlZGl0J10gPSAnQWRkL0VkaXQgYSBTZWFyY2ggRm9ybSBUZW1wbGF0ZSc7CiRsYW5nWydzdGF0dXMnXSA9ICdTdGF0dXQnOwokbGFuZ1snc3VibWl0J10gPSAnRW52b3llcic7CiRsYW5nWydzdW1tYXJ5dGVtcGxhdGVfYWRkZWRpdCddID0gJ0Fqb3V0ZXIvTW9kaWZpZXIgR2FiYXJpdCBkZSBTb21tYWlyZSc7CiRsYW5nWydzdW1tYXJ5dGVtcGxhdGVzJ10gPSAnR2FiYXJpdHMgZGUgU29tbWFpcmUnOwokbGFuZ1snc3VtbWFyeXRlbXBsYXRldXBkYXRlZCddID0gJ0dhYmFyaXQgZGUgU29tbWFpcmUgTWlzICZhZ3JhdmU7IGpvdXInOwokbGFuZ1snc3lzZGVmYXVsdHMnXSA9ICdSZXN0YXVyZXIgbGVzIFBhcmFtJmVncmF2ZTt0cmVzIHBhciBkJmVhY3V0ZTtmYXV0JzsKJGxhbmdbJ3RlbGVwaG9uZSddID0gJ1QmZWFjdXRlO2wmZWFjdXRlO3Bob25lJzsKJGxhbmdbJ3RlbGVwaG9uZXRleHQnXSA9ICdUJmVhY3V0ZTtsJmVhY3V0ZTtwaG9uZSc7CiRsYW5nWyd0aXRsZV9jYXRlZ29yeWxpc3RfZGZsdHRlbXBsYXRlJ10gPSAnR2FiYXJpdCBwYXIgZCZlYWN1dGU7ZmF1dCBkZSBMaXN0ZSBkZSBDYXQmZWFjdXRlO2dvcmllJzsKJGxhbmdbJ3RpdGxlX2RldGFpbF9kZmx0dGVtcGxhdGUnXSA9ICdHYWJhcml0IHBhciBkJmVhY3V0ZTtmYXV0IGRlIEQmZWFjdXRlO3RhaWwnOwokbGFuZ1sndGl0bGVfZnJvbnRlbmRmb3JtX2RmbHR0ZW1wbGF0ZSddID0gJ0dhYmFyaXQgcGFyIGQmZWFjdXRlO2ZhdXQgZHUgZm9ybXVsYWlyZSBGcm9udEVuZCc7CiRsYW5nWyd0aXRsZV9pbXBvcnRfcmVwb3J0J10gPSAnUmFwcG9ydCBkJiMwMzk7aW1wb3J0YXRpb24gQ1NWJzsKJGxhbmdbJ3RpdGxlX3NlYXJjaGZvcm1fZGZsdHRlbXBsYXRlJ10gPSAnR2FiYXJpdCBwYXIgZCZlYWN1dGU7ZmF1dCBkZSBsYSBSZWNoZXJjaGUnOwokbGFuZ1sndGl0bGVfc3VtbWFyeV9kZmx0dGVtcGxhdGUnXSA9ICdHYWJhcml0IHBhciBkJmVhY3V0ZTtmYXV0IGR1IFNvbW1haXJlJzsKJGxhbmdbJ3R5cGUnXSA9ICdUeXBlJzsKJGxhbmdbJ3R5cGV0ZXh0J10gPSAnVHlwZSc7CiRsYW5nWyd1cCddID0gJ0hhdXQnOwokbGFuZ1snd2Vic2l0ZSddID0gJ1NpdGUgV2ViJzsKJGxhbmdbJ3dlYnNpdGV0ZXh0J10gPSAnU2l0ZSBXZWInOwokbGFuZ1sneWVzJ10gPSAnT3VpJzsKJGxhbmdbJ3FjYSddID0gJ1AwLTE3NzYxODc0NTktMTI4Nzc1ODE4Nzc3Nyc7CiRsYW5nWyd1dG1hJ10gPSAnMTU2ODYxMzUzLjEyMzI1MzMxMDcuMTMyMzM0MjM0MS4xMzIzNjg3OTA4LjEzMjM3MDQxMTUuNCc7CiRsYW5nWyd1dG16J10gPSAnMTU2ODYxMzUzLjEzMjMzNDIzNDEuMS4xLnV0bWNzcj0oZGlyZWN0KXx1dG1jY249KGRpcmVjdCl8dXRtY21kPShub25lKSc7CiRsYW5nWyd1dG1jJ10gPSAnMTU2ODYxMzUzJzsKJGxhbmdbJ3V0bWInXSA9ICcxNTY4NjEzNTMuMS4xMC4xMzIzNzA0MTE1JzsKPz4=]]></data>
	</file>
	<file>
	  <filename>/lang/ext/it_IT.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2FjdGl2ZSddID0gJ0F0dGl2byc7CiRsYW5nWydhZGRsaW5rJ10gPSAnQWdnaXVuZ2kgQ29sbGVnYW1lbnRvJzsKJGxhbmdbJ2FkZHJlc3MnXSA9ICdJbmRpcml6em8nOwokbGFuZ1snYWRkcmVzc3RleHQnXSA9ICdJbmRpcml6em8nOwokbGFuZ1snYWRkY2F0ZWdvcnknXSA9ICdBZ2dpdW5naSBDYXRlZ29yaWEnOwokbGFuZ1snYWRkY29tcGFueSddID0gJ0FnZ2l1bmdpIENvbXBhZ25pYSc7CiRsYW5nWydhZGRmaWVsZGRlZiddID0gJ0FnZ2l1bmdpIERlZmluaXppb25lIENhbXBvJzsKJGxhbmdbJ2FkbWluX29ubHknXSA9ICdWaXNpYmlsZSBTb2xvIGFnbGkgQW1taW5pc3RyYXRvcmknOwokbGFuZ1snYXJleW91c3VyZSddID0gJ1NpZXRlIGNlcnRpIGRpIHZvbGVyZSByaW11b3ZlcmUgcXVlc3RvIGVsZW1lbnRvPyc7CiRsYW5nWydhc2NlbmRpbmcnXSA9ICdBc2NlbmRlbnRlJzsKJGxhbmdbJ2NhbmNlbCddID0gJ0FubnVsbGEnOwokbGFuZ1snY2FudXNlcmVkaXQnXSA9ICdDYW1wbyBtb2RpZmljYWJpbGUgZGFnbGkgdXRlbnRpIGZyb250ZW5kPyc7CiRsYW5nWydjYW51c2VydmlldyddID0gJ0NhbXBvIHZpc2liaWxlIGFnbGkgdXRlbnRpIGZyb250ZW5kPyc7CiRsYW5nWydjYXRlZ29yeSddID0gJ0NhdGVnb3JpYSc7CiRsYW5nWydjYXRlZ29yaWVzJ10gPSAnQ2F0ZWdvcmllJzsKJGxhbmdbJ2NhdGVnb3J5dGV4dCddID0gJ0NhdGVnb3JpYSc7CiRsYW5nWydjYXRlZ29yeWFkZGVkJ10gPSAnQ2F0ZWdvcmlhIEFnZ2l1bnRhJzsKJGxhbmdbJ2NhdGVnb3J5dXBkYXRlZCddID0gJ0NhdGVnb3JpYSBBZ2dpb3JuYXRhJzsKJGxhbmdbJ2NhdGVnb3J5bGlzdHRlbXBsYXRlX2FkZGVkaXQnXSA9ICdBZ2dpdW5naS9Nb2RpZmljYSBNb2RlbGxvIExpc3RhIENhdGVnb3JpZSc7CiRsYW5nWydjYXRlZ29yeWxpc3R0ZW1wbGF0ZXMnXSA9ICdNb2RlbGxpIExpc3RhIENhdGVnb3JpZSc7CiRsYW5nWydjYXRlZ29yeWxpc3R0ZW1wbGF0ZXVwZGF0ZWQnXSA9ICdMaXN0YSBDYXRlZ29yaWUgQWdnaW9ybmF0YSc7CiRsYW5nWydjaGFuZ2Vsb2cnXSA9ICc8dWw+DQogIDxsaT4xLjEuNiAtIEp1bHksIDIwMDggPGVtPihjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKTwvZW0+DQogICAgPHVsPg0KICAgICAgPGxpPkFkZCB0aGUgc2hvd2FsbCBwYXJhbWV0ZXIgdG8gdGhlIGNhdGVnb3J5bGlzdCBhY3Rpb24uPC9saT4NCiAgICAgIDxsaT5TcGxpdCBvdXQgYSBjb3VwbGUgb2YgbW9yZSBmaWxlcy48L2xpPg0KICAgIDwvdWw+DQogIDwvbGk+DQogIDxsaT4xLjEuNSAtIEp1bmUsIDIwMDggPGVtPihjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKTwvZW0+DQogICAgPHVsPg0KICAgICAgPGxpPkZpeCBhIG1pbm9yIGlzc3VlIHdpdGggcHJlZmVyZW5jZXM8L2xpPg0KICAgICAgPGxpPkZpeCBzb21lIHF1ZXJpZXMgdGhhdCB3ZXJlIG5vdCB1c2luZyBjbXNfZGJfcHJlZml4PC9saT4NCiAgICA8L3VsPg0KICA8L2xpPg0KICA8bGk+MS4xLjQgLSBKdW5lLCAyMDA4IDxlbT4oY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZyk8L2VtPg0KICAgIDx1bD4NCiAgICAgIDxsaT5GaXggdG8gdGhlIHRhYnM8L2xpPg0KICAgICAgPGxpPk1pbm9yIGZpeCB0byB0aGUgc3RhdHVzIGZpZWxkIHdoZW4gZWRpdGluZyBhIGNvbXBhbnkuPC9saT4NCiAgICAgIDxsaT5NaW5vciBmaXggdG8gdGhlIGNoZWNrYm94IGN1c3RvbSBmaWVsZHMgd2hlbiBlZGl0aW5nIGEgY29tcGFueS48L2xpPg0KICAgICAgPGxpPkZpeCB0byBDU1YgRXhwb3J0LjwvbGk+DQogICAgICA8bGk+Rml4IHRvIHRoZSBwcmVmZXJlbmNlcyB0YWIuPC9saT4NCiAgICA8L3VsPg0KICA8L2xpPg0KICA8bGk+MS4xLjMgLSBGZWJydWFyeSwgMjAwOCA8ZW0+KHJjYW1wYmVsbEBza2lubnlmaXNobWVkaWEuY29tKTwvZW0+DQogICAgPHVsPg0KICAgICAgPGxpPkFkZHMgcGFnaW5hdGlvbiB0byBzdW1tYXJ5IHZpZXc8L2xpPg0KICAgICAgPGxpPkZpeGVzIGEgcHJvYmxlbSB3aXRoIHByZXR0eSB1cmxzIGluIHN1bW1hcnkgdmlldzwvbGk+DQogICAgICA8bGk+Rml4ZXMgYSBwcm9ibGVtIHdpdGggdGhlIHNvcnQgb3JkZXIgcHJlZmVyZW5jZXM8L2xpPg0KICAgICAgPGxpPihfU2pHKSAtIEltcGxlbWVudHMgdHN3JiMwMzk7cyBwYXRjaCBmb3IgY3VzdG9tIGZpZWxkcyBpbiB0aGUgc3VtbWFyeSB0ZW1wbGF0ZTwvbGk+DQogICAgPC91bD4NCiAgPC9saT4NCiAgPGxpPjEuMS4yIC0gTm92ZW1iZXIsIDIwMDcgPGVtPihyY2FtcGJlbGxAc2tpbm55ZmlzaG1lZGlhLmNvbSk8L2VtPg0KICAgIDx1bD4NCiAgICAgIDxsaT5Ob3cgdXNlIGNtc19tb3ZlX3VwbG9hZGVkX2ZpbGUgaW5zdGVhZCBvZiBtb3ZlX3VwbG9hZGVkX2ZpbGU8L2xpPg0KICAgICAgPGxpPlJlcXVpcmUgQ01TIDEuMi4xIG9yIGxhdGVyPC9saT4NCiAgICA8L3VsPg0KICA8L2xpPg0KICA8bGk+MS4xLjEgLSBOb3ZlbWJlciwgMjAwNyA8ZW0+KHJjYW1wYmVsbEBza2lubnlmaXNobWVkaWEuY29tKTwvZW0+DQogICAgPHVsPg0KICAgICAgPGxpPkZpeGVkIGEgcHJvYmxlbSB3aXRoIHRoZSBkZXRhaWwgbGlua3MgaW4gc3VtbWFyeSBtb2RlIHdoZW4gcHJldHR5IHVybHMgd2VyZSBkaXNhYmxlZC48L2xpPg0KICAgIDwvdWw+DQogIDwvbGk+DQogIDxsaT4xLjEgLSBTZXB0ZW1iZXIsIDIwMDcgPGVtPihyY2FtcGJlbGxAc2tpbm55ZmlzaG1lZGlhLmNvbSk8L2VtPg0KICAgIDx1bD4NCiAgICAgIDxsaT5BZGRlZCBzdXBwb3J0IGZvciBwcmV0dHkgdXJsczwvbGk+DQogICAgICA8bGk+RmlsbGVkIG91dCB0aGUgaGVscDwvbGk+DQogICAgICA8bGk+QWRkZWQgYSBjYXRlZ29yeSBsaXN0IG1vZGU8L2xpPg0KICAgICAgPGxpPkFkZGVkIHN1cHBvcnQgZm9yIGZyb250ZW5kIGVkaXRpbmcgb2YgY29tcGFuaWVzPC9saT4NCiAgICAgIDxsaT5BZGRlZCBzdXBwb3J0IGZvciBwdWJsaWMgYW5kIGFkbWluIG9ubHkgZmllbGRzIGluIGNvbXBhbmllczwvbGk+DQogICAgICA8bGk+QWRkZWQgZGlmZmVyZW50IHNvcnRpbmcgY2FwYWJpbGl0aWVzIGluIHN1bW1hcnkgdmlldzwvbGk+DQogICAgICA8bGk+Q2hhbmdlZCBNaW5pbXVtIENNUyBWZXJzaW9uIGFuZCBhZGRlZCBzdXBwb3J0IGZvciB0aGUgMS4xIHNlcmllczwvbGk+DQogICAgPC91bD4NCiAgPC9saT4NCjwvdWw+DQonOwokbGFuZ1snY29tcGFueSddID0gJ0NvbXBhZ25pYSc7CiRsYW5nWydjb21wYW55YWRkZWQnXSA9ICdDb21wYWduaWEgQWdnaXVudGEnOwokbGFuZ1snY29tcGFueW5hbWUnXSA9ICdOb21lIENvbXBhZ25pYSc7CiRsYW5nWydjb21wYW55dXBkYXRlZCddID0gJ0NvbXBhZ25pYSBBZ2dpb3JuYXRhJzsKJGxhbmdbJ2NvbXBhbmllcyddID0gJ0NvbXBhZ25pZSc7CiRsYW5nWydjb21wYW55dGV4dCddID0gJ0NvbXBhZ25pYSc7CiRsYW5nWydjb21wYW55ZGlyZWN0b3J5J10gPSAnQ29tcGFueSBEaXJlY3RvcnknOwokbGFuZ1snY29udGFjdGVtYWlsJ10gPSAnRW1haWwgcGVyIENvbnRhdHRpJzsKJGxhbmdbJ2NyZWF0ZWRkYXRlJ10gPSAnRGF0YSBkaSBpbnNlcmltZW50byc7CiRsYW5nWydkZWZhdWx0dGVtcGxhdGVzJ10gPSAnTW9kZWxsaSBQcmVkZWZpbml0aSc7CiRsYW5nWydkZWZhdWx0X3RlbXBsYXRlX25vdGljZSddID0gJzxzdHJvbmc+Tm90YTo8L3N0cm9uZz4gSSBjb250ZW51dGkgZGkgcXVlc3RlIGFyZWUgZGkgdGVzdG8gc29ubyB1dGlsaXp6YXRpIHBlciBkZXRlcm1pbmFyZSBpbCBjb250ZW51dG8gcHJlZGVmaW5pdG8gZGVpIG1vZGVsbGkgcXVhbmRvIHNpIHNlbGV6aW9uYSAmcXVvdDtBZ2dpdW5naSBNb2RlbGxvJnF1b3Q7IG5lbCBwYW5uZWxsbyBkZWkgbW9kZWxsaSBjb3JyaXNwb25kZW50ZS4gTW9kaWZpY2FyZSB1bmEgZGkgcXVlc3RlIGFyZWUgZGkgdGVzdG8gbm9uIGNvbXBvcnRlciZhZ3JhdmU7IGVmZmV0dGkgaW1tZWRpYXRpIHN1bCB2b3N0cm8gc2l0byc7CiRsYW5nWydkZWxldGUnXSA9ICdFbGltaW5hJzsKJGxhbmdbJ2RlbGV0ZWNhdGVnb3J5J10gPSAnRWxpbWluYSBDYXRlZ29yaWEnOwokbGFuZ1snZGVsZXRlY29tcGFueSddID0gJ0VsaW1pbmEgQ29tcGFnbmlhJzsKJGxhbmdbJ2RlbGV0ZWZpZWxkZGVmJ10gPSAnRWxpbWluYSBEZWZpbml6aW9uZSBDYW1wbyc7CiRsYW5nWydkZXNjZW5kaW5nJ10gPSAnRGlzY2VuZGVudGUnOwokbGFuZ1snZGVzY3JpcHRpb24nXSA9ICdEZXNjcml6aW9uZSc7CiRsYW5nWydkZXRhaWxzJ10gPSAnRGV0dGFnbGknOwokbGFuZ1snZGV0YWlsc3RleHQnXSA9ICdEZXR0YWdsaSc7CiRsYW5nWydkZXRhaWx0ZW1wbGF0ZV9hZGRlZGl0J10gPSAnQWdnaXVuZ2kvTW9kaWZpY2EgTW9kZWxsbyBEZXR0YWdsaSc7CiRsYW5nWydkZXRhaWx0ZW1wbGF0ZXMnXSA9ICdNb2RlbGxpIERldHRhZ2xpJzsKJGxhbmdbJ2RldGFpbHRlbXBsYXRldXBkYXRlZCddID0gJ01vZGVsbG8gRGV0dGFnbGkgQWdnaW9ybmF0byc7CiRsYW5nWydkaXNhYmxlZCddID0gJ0Rpc2FiaWxpdGF0byc7CiRsYW5nWydkb3duJ10gPSAnR2kmdWdyYXZlOyc7CiRsYW5nWydkcmFmdCddID0gJ0JvenphJzsKJGxhbmdbJ2VkaXQnXSA9ICdNb2RpZmljYSc7CiRsYW5nWydlZGl0Y2F0ZWdvcnknXSA9ICdNb2RpZmljYSBjYXRlZ29yaWEnOwokbGFuZ1snZWRpdGNvbXBhbnknXSA9ICdNb2RpZmljYSBDb21wYWduaWEnOwokbGFuZ1snZWRpdGZpZWxkZGVmJ10gPSAnTW9kaWZpY2EgRGVmaW5pemlvbmUgQ2FtcG8nOwokbGFuZ1snZW1haWx0ZXh0J10gPSAnRS1tYWlsJzsKJGxhbmdbJ2Vycm9yX2NvbXBhbnluYW1lJ10gPSAnSWwgTm9tZSBkZWxsYSBDb21wYWduaWEgbm9uICZlZ3JhdmU7IHZhbGlkbyc7CiRsYW5nWydlcnJvcl9jb21wYW55bmFtZV9pbnVzZSddID0gJ0VzaXN0ZSBnaSZhZ3JhdmU7IHVuYSBDb21wYWduaWEgY29uIHF1ZXN0byBub21lIG5lbCBEYXRhYmFzZSc7CiRsYW5nWydlcnJvcl9ub2ZldSddID0gJ05vbiByaWVzY28gYSB0cm92YXJlIGlsIG1vZHVsbyBGcm9udEVuZFVzZXJzJzsKJGxhbmdbJ2V4cG9ydGNzdiddID0gJ0VzcG9ydGEgQ1NWJzsKJGxhbmdbJ2ZheCddID0gJ0ZheCc7CiRsYW5nWydmYXh0ZXh0J10gPSAnRmF4JzsKJGxhbmdbJ2ZpZWxkZGVmJ10gPSAnRGVmaW5pemlvbmUgQ2FtcG8nOwokbGFuZ1snZmllbGRkZWZzJ10gPSAnRGVmaW5pemlvbmkgQ2FtcG8nOwokbGFuZ1snZmllbGRkZWZ0ZXh0J10gPSAnRGVmaW5pemlvbmUgQ2FtcG8nOwokbGFuZ1snZmllbGRkZWZhZGRlZCddID0gJ0RlZmluaXppb25lIENhbXBvIEFnZ2l1bnRhJzsKJGxhbmdbJ2ZpZWxkZGVmdXBkYXRlZCddID0gJ0RlZmluaXppb25lIENhbXBvIEFnZ2lvcm5hdGEnOwokbGFuZ1snZmllbGRkZWZkZWxldGVkJ10gPSAnRGVmaW5pemlvbmUgQ2FtcG8gRWxpbWluYXRhJzsKJGxhbmdbJ2ZpcnN0cGFnZSddID0gJzw8JzsKJGxhbmdbJ2Zyb250ZW5kZm9ybXRlbXBsYXRlX2FkZGVkaXQnXSA9ICdBZ2dpdW5naS9Nb2RpZmljYSBNb2RlbGxvIGRlbCBNb2R1bG8gSW50ZXJmYWNjaWEgVXRlbnRlICc7CiRsYW5nWydmcm9udGVuZGZvcm10ZW1wbGF0ZXMnXSA9ICdNb2RpZmljYSBNb2RlbGxvIENvbXBhZ25pYSc7CiRsYW5nWydmcm9udGVuZGZvcm10ZW1wbGF0ZXVwZGF0ZWQnXSA9ICdNb2RpZmljYSBNb2RlbGxvIEFnZ2lvcm5hdG8gQ29tcGFnbmlhJzsKJGxhbmdbJ2hlbHAnXSA9ICc8aDM+Q29zYSBmYT88L2gzPg0KPHA+UXVlc3RvIG1vZHVsbyBmb3JuaXNjZSB1biBtb2RvIHBlciByYWNjb2dsaWVyZSwgb3JnYW5penphcmUgZSB2aXN1YWxpenphcmUgaW5mb3JtYXppb25pIHN1bGxlIGNvbXBhZ25pZS4gU29saXRhbWVudGUgc2kgdHJhdHRhIGRlbGxlIGluZm9ybWF6aW9uaSBkaSBjb250YXR0byBlIGlsIGxvZ28sIG1hICZlZ3JhdmU7IGFiYmFzdGFuemEgZmxlc3NpYmlsZSBkYSBwZXJtZXR0ZXJlIGNhbXBpIGVzdGVuZGliaWxpIGUgc3VkZGl2aWRlcmUgaSBkYXRpIHB1YmJsaWNpIGRhIHF1ZWxsaSBwcml2YXRpLjwvcD4NCjxwPlF1ZXN0byBtb2R1bG8gcHUmb2dyYXZlOyBlc3NlcmUgdXNhdG8gcGVyIHVuIGdyYW4gbnVtZXJvIGRpIHNjb3BpLCBkYSB1bmEgbGlzdGEgZm9ybml0b3JpIGFkIHVuYSBsaXN0YSBjb250YXR0aS4gRSYjMDM5OyBzdWZmaWNpZW50ZW1lbnRlIGZsZXNzaWJpbGUgZGEgcG90ZXJlIGVzc2VyZSByaXV0aWxpenphdG8gaW4gdmFyaSBtb2RpLjwvcD4NCjxoMz5Db21lIHNpIHVzYTwvaDM+DQo8cD5JbCBtb2RvIHBpJnVncmF2ZTsgc2VtcGxpY2UgJmVncmF2ZTsgcXVlbGxvIGRpIGluc2VyaXJlIGlsIHRhZyA8Y29kZT57Q29tcGFueURpcmVjdG9yeX08L2NvZGU+IGFsbCYjMDM5O2ludGVybm8gZGVsIGNvbnRlbnV0byBkZWwgdm9zdHJvIG1vZGVsbG8gbyBwYWdpbmEuIERvcG9kaWNoJmVncmF2ZTsgbW9kaWZpY2hlcmV0ZSBsZSBpbmZvcm1hemlvbmkgYWxsJiMwMzk7aW50ZXJubyBkZWxsJiMwMzk7aW50ZXJmYWNjaWEgZGkgYW1taW5pc3RyYXppb25lICZxdW90O0NvbXBhbnkgRGlyZWN0b3J5JnF1b3Q7LiAgRXNwbG9yYXRlIGkgdmFyaSBwYXJhbWV0cmkgKGRlc2NyaXR0aSBxdWkgc290dG8pIHBlciBwZXJzb25hbGl6emFyZSBpbCBjb21wb3J0YW1lbnRvIGRlbCBtb2R1bG8uPC9wPg0KPGgzPlNpY3VyZXp6YTwvaDM+DQo8cD5QZXIgZ2VzdGlyZSBsZSBjb21wYWduaWUgYWxsJiMwMzk7aW50ZXJubyBkZWwgbW9kdWxvLCBsJiMwMzk7YW1taW5pc3RyYXRvcmUgZGV2ZSBhdmVyZSBpIHBlcm1lc3NpICYjMDM5OzwvZW0+TW9kaWZpY2EgQ29tcGFueSBEaXJlY3Rvcnk8L2VtPiYjMDM5Oy48L3A+DQo8cD5QZXIgbW9kaWZpY2FyZSBpIG1vZGVsbGkgcHJlaW1wb3N0YXRpIGNoZSBjb250cm9sbGFubyBsJiMwMzk7aW1wYWdpbmF6aW9uZSBkZWxsZSBpbmZvcm1hemlvbmkgZGVsIG1vZHVsbywgbCYjMDM5O2FtbWluaXN0cmF0b3JlIGRldmUgYXZlcmUgaSBwZXJtZXNzaSAmIzAzOTs8ZW0+TW9kaWZpY2EgTW9kZWxsaTwvZW0+JiMwMzk7LjwvcD4NCjxwPlBlciBhZ2dpdXN0YXJlIGxlIHZhcmllIGltcG9zdGF6aW9uaSBzb25vIG5lY2Vzc2FyaSBpIHBlcm1lc3NpICYjMDM5OzxlbT5Nb2RpZmljYSBQcmVmZXJlbnplIFNpdG88L2VtPiYjMDM5Oy48L3A+DQo8aDM+UHJldHR5IFVSTFM8L2gzPg0KPHA+TGEgZnVuemlvbmFsaXQmYWdyYXZlOyBlIGZsZXNzaWJpbGl0JmFncmF2ZTsgdmVuZ29ubyByaWRvdHRlIHF1YW5kbyBzaSB1c2FubyBpIHByZXR0eSB1cmxzLiAgQWQgZXNlbXBpbywgc2Ugc2kgdXNhbm8gaSBwcmV0dHkgdXJscyBjb24gcXVlc3RvIG1vZHVsbywgZG92cmVzdGUgaW5zZXJpcmUgaWwgdGFnIHBlciBxdWVzdG8gbW9kdWxvIGFsbCYjMDM5O2ludGVybm8gZGVsIGJsb2NjbyBkaSBjb250ZW51dG8gcHJlZGVmaW5pdG8sIHF1YW5kbyBjbGljY2F0ZSBzdSB1biBjb2xsZWdhbWVudG8gbyBzdSB1biBwdWxzYW50ZSBkYSBxdWVzdG8gbW9kdWxvLCBpIGRhdGkgcmlzdWx0YW50aSBzb3N0aXR1aXJhbm5vIHNlbXByZSBpbCBibG9jY28gZGkgY29udGVudXRvIHByZWRlZmluaXRvLjwvcD4nOwokbGFuZ1snaWQnXSA9ICdJRCc7CiRsYW5nWydpbWFnZWN1cnJlbnRoaWRkZW4nXSA9ICcnOwokbGFuZ1snaW1hZ2V0ZXh0J10gPSAnSW1tYWdpbmUnOwokbGFuZ1snbGFzdHBhZ2UnXSA9ICc+Pic7CiRsYW5nWydsb2dvY3VycmVudGhpZGRlbiddID0gJyc7CiRsYW5nWydsb2dvdGV4dCddID0gJ0xvZ28nOwokbGFuZ1snbWF4bGVuZ3RoJ10gPSAnTHVuZ2hlenphIE1heCc7CiRsYW5nWydtYXhfbGVuZ3RoJ10gPSAnTHVuZ2hlenphIE1heCc7CiRsYW5nWydtYXhsZW5ndGh0ZXh0J10gPSAnTHVuZ2hlenphIE1heCc7CiRsYW5nWydtb2RpZmllZGRhdGUnXSA9ICdEYXRhIFVsdGltYSBNb2RpZmljYSc7CiRsYW5nWyduYW1lJ10gPSAnTm9tZSc7CiRsYW5nWyduYW1ldGV4dCddID0gJ05vbWUnOwokbGFuZ1snbmVlZHBlcm1pc3Npb24nXSA9ICdQZXIgYWNjZWRlcmUgYWxsYSBmdW56aW9uZSBzZXJ2b25vIGkgcGVybWVzc2kgJiMwMzk7JXMmIzAzOTsuJzsKJGxhbmdbJ25vY29tcGFueW5hbWVnaXZlbiddID0gJ05lc3N1biBub21lIENvbXBhZ25pYSBpbnNlcml0byc7CiRsYW5nWydub25hbWVnaXZlbiddID0gJ05lc3N1biBOb21lIGluc2VyaXRvJzsKJGxhbmdbJ25vdGFudW1iZXInXSA9ICdOb24gJmVncmF2ZTsgdW4gbnVtZXJvJzsKJGxhbmdbJ25leHRwYWdlJ10gPSAnPic7CiRsYW5nWydvZiddID0gJ0RpJzsKJGxhbmdbJ3BhZ2UnXSA9ICdQYWdpbmEnOwokbGFuZ1sncGFyYW1fYWN0aW9uJ10gPSAnRGV0ZXJtaW5hIGlsIGNvbXBvcnRhbWVudG8gcHJpbWFyaW8gZGVsIG1vZHVsby4gSSB2YWxvcmkgcG9zc2liaWxpIHBlciBxdWVzdG8gcGFyYW1ldHJvIHNvbm86DQo8dWw+DQogIDxsaT5jYXRlZ29yeWxpc3QgLS0gVmlzdWFsaXp6YSB1bmEgbGlzdGEgZGVsbGUgY2F0ZWdvcmllLiBHbGkgdXRlbnRpIHBvc3Nvbm8gc2NvcnJlcmUgdHJhIGxhIG1vZGFsaXQmYWdyYXZlOyBzb21tYXJpbyBlIGxhIG1vZGFsaXQmYWdyYXZlOyBkZXR0YWdsaS48L2xpPg0KICA8bGk+PHN0cm9uZz5kZWZhdWx0PC9zdHJvbmc+IC0tIFZpc3VhbGl6emEgbGUgQ29tcGFnbmllIGluIG1vZGFsaXQmYWdyYXZlOyBzb21tYXJpby48L2xpPg0KICA8bGk+ZGV0YWlscyAtLSBWaXN1YWxpenphIGluZm9ybWF6aW9uaSBkZXR0YWdsaWF0ZSBzdSB1bmEgY29tcGFnbmlhIHNwZWNpZmljYS48L2xpPg0KICA8bGk+ZmVfZWRpdCAtLSBWaXN1YWxpenphIHVuIG1vZHVsbyBjaGUgcGVybWV0dGUgbGEgbW9kaWZpY2EgZGVsbGUgaW5mb3JtYXppb25pIHN1IHVuYSBjb21wYWduaWEgc3BlY2lmaWNhLjwvbGk+DQo8L3VsPic7CiRsYW5nWydwYXJhbV9jYXRlZ29yeSddID0gJ1F1YW5kbyBxdWVzdG8gcGFyYW1ldHJvIChjaGUgZG92cmViYmUgY29ycmlzcG9uZGVyZSBhbCBub21lIGRpIHVuYSBjYXRlZ29yaWEgZXNpc3RlbnRlKSB2aWVuZSB1dGlsaXp6YXRvIG5lbGxhIG1vZGFsaXQmYWdyYXZlOyBzb21tYXJpbyA8ZW0+ZGVmYXVsdDwvZW0+LCB2ZXJyYW5ubyB2aXN1YWxpenphdGUgc29sbyBsZSBjb21wYWduaWUgcHJlc2VudGkgaW4gcXVlbGxhIGNhdGVnb3JpYS4gKHB1Jm9ncmF2ZTsgZXNzZXJlIGRhdGEgdW5hIGxpc3RhIHNlcGFyYXRhIGRhIHZpcmdvbGUpJzsKJGxhbmdbJ3BhcmFtX2NhdGVnb3J5bGlzdHRlbXBsYXRlJ10gPSAnU3BlY2lmaWNhIHVuIE1vZGVsbG8gKGlsIG5vbWUpIGRhIHV0aWxpenphcmUgcXVhbmRvIHNpIHVzYSBsYSB2aXN0YSBsaXN0YSBkaSBjYXRlZ29yaWEuJzsKJGxhbmdbJ3BhcmFtX2NvbXBhbnlpZCddID0gJ05lY2Vzc2FyaW8gcGVyIGxlIG1vZGFsaXQmYWdyYXZlOyBkZXR0YWdsaW8gZSBtb2RpZmljYSBpbnRlcmZhY2NpYSwgcXVlc3RvIHBhcmFtZXRybyBkZXRlcm1pbmEgcXVhbGUgcmVjb3JkIGRpIGNvbXBhZ25pYSBtb2RpZmljYXJlIG8gdmlzdWFsaXp6YXJlJzsKJGxhbmdbJ3BhcmFtX2RldGFpbHBhZ2UnXSA9ICdTcGVjaWZpY2EgdW4gYWxpYXMgZGkgcGFnaW5hIChpbCBub21lKSBkYSB1dGlsaXp6YXJlIHBlciB2aXN1YWxpenphcmUgaSBkZXR0YWdsaSBkaSB1biByZWNvcmQuIDxzdHJvbmc+Tm90YTo8L3N0cm9uZz4gUXVlc3RvIHBhcmFtZXRybyBkaSB0YWcgbm9uICZlZ3JhdmU7IGNvbXBhdGliaWxlIGNvbiBpIHByZXR0eSB1cmxzLic7CiRsYW5nWydwYXJhbV9kZXRhaWx0ZW1wbGF0ZSddID0gJ1NwZWNpZmljYSB1biBtb2RlbGxvIGRhIHVzYXJlIG5lbGxhIHZpc3RhIGRldHRhZ2xpLiAgPHN0cm9uZz5Ob3RhOjwvc3Ryb25nPiBRdWVzdG8gcGFyYW1ldHJvIGRpIHRhZyBub24gJmVncmF2ZTsgY29tcGF0aWJpbGUgY29uIGkgcHJldHR5IHVybHMuJzsKJGxhbmdbJ3BhcmFtX2Zyb250ZW5kZm9ybXRlbXBsYXRlJ10gPSAnU3BlY2lmaWNhIHVuIG1vZGVsbG8gKGlsIG5vbWUpIGRhIHV0aWxpenphcmUgcXVhbmRvIHNpIHZpc3VhbGl6emEgaWwgbW9kdWxvIGRpIG1vZGlmaWNhIGludGVyZmFjY2lhIGNvbXBhZ25pYSc7CiRsYW5nWydwYXJhbV9zZWxlY3RjYXRlZ29yeSddID0gJ1NlIHF1ZXN0byBwYXJhbWV0cm8gJmVncmF2ZTsgaW1wb3N0YXRvIHZlcnImYWdyYXZlOyBnZW5lcmF0byB1biBtb2R1bG8gY2hlIHBlcm1ldHRlIGFnbGkgdXRlbnRpIGRpIGZpbHRyYXJlIGludGVyYXR0aXZhbWVudGUgaSByZWNvcmQgZGVsbGUgY29tcGFnbmllIGluIHVuYSBzaW5nb2xhIGNhdGVnb3JpYS4gUXVlc3RvIGNvbnRyYXNzZWdubyBub24gZGV2ZSBlc3NlcmUgdXRpbGl6emF0byBpbiBjb250ZW1wb3JhbmVhbWVudGUgYWwgcGFyYW1ldHJvICZxdW90O2NhdGVnb3J5JnF1b3Q7Lic7CiRsYW5nWydwYXJhbV9zaG93YWxsJ10gPSAnQXBwbGljYWJpbGUgc29sbyBhbGwmIzAzOTthemlvbmUgY2F0ZWdvcnlsaXN0LCBzZSBxdWVzdG8gcGFyYW1ldHJvICZlZ3JhdmU7IGNvbmZpZ3VyYXRvLCBhbGxvcmEgYW5jaGUgbGUgY2F0ZWdvcmllIGNoZSBub24gY29pbmNpZG9ubyBjb24gbGUgY29tcGFnbmllIHNhcmFubm8gdmlzdWFsaXp6YXRlIG5lbGwmIzAzOTt1c2NpdGEnOwokbGFuZ1sncGFyYW1fc29ydG9yZGVyJ10gPSAnU3BlY2lmaWNhIGwmIzAzOTtvcmRpbmUgZGVpIGNhbXBpIGluIHZpc3RhIHNvbW1hcmlvLiBJIHZhbG9yaSBwZXJtZXNzaSBzb25vOg0KPHVsPg0KICA8bGk+PHN0cm9uZz5hc2M8L3N0cm9uZz4gLS0gT3JkaW5lIGFzY2VuZGVudGU8L2xpPg0KICA8bGk+ZGVzYyAtLSBPcmRpbmUgZGlzY2VuZGVudGU8L2xpPg0KPC91bD4nOwokbGFuZ1sncGFyYW1fc29ydGJ5J10gPSAnQXBwbGljYWJpbGUgc29sbyBpbiBtb2RhbGl0JmFncmF2ZTsgc29tbWFyaW8sIHF1ZXN0byBwYXJhbWV0cm8gZGV0ZXJtaW5hIGwmIzAzOTtvcmRpbmFtZW50byBkZWxsZSBjb21wYWduaWUgdmlzdWFsaXp6YXRlLiBJIHZhbG9yaSBwb3NzaWJpbGkgc29ubzoNCjx1bD4NCiAgPGxpPjxzdHJvbmc+Y29tcGFueV9uYW1lPC9zdHJvbmc+PC9saT4NCiAgPGxpPnBob25lPC9saT4NCiAgPGxpPmZheDwvbGk+DQogIDxsaT5lbWFpbDwvbGk+DQogIDxsaT53ZWJzaXRlIC0tIGwmIzAzOTtpbmRpcml6em8gZGVsIHNpdG8gd2ViPC9saT4NCiAgPGxpPmNyZWF0ZWQgLS0gbGEgZGF0YSBkaSBjcmVhemlvbmUgZGVsIHJlY29yZCBkaSBxdWVzdGEgY29tcGFnbmlhPC9saT4NCiAgPGxpPm1vZGlmaWVkIC0tIExhIGRhdGEgZGkgbW9kaWZpY2EgZGVsIHJlY29yZCBkaSBxdWVzdGEgY29tcGFnbmlhPC9saT4NCjwvdWw+JzsKJGxhbmdbJ3BhcmFtX3N1bW1hcnl0ZW1wbGF0ZSddID0gJ1NwZWNpZmljYSB1biBtb2RlbGxvIChpbCBub21lKSBkYSB1dGlsaXp6YXJlIHF1YW5kbyBzaSB1c2EgbGEgdmlzdGEgc29tbWFyaW8uIDxzdHJvbmc+Tm90YTo8L3N0cm9uZz4gUXVlc3RvIHBhcmFtZXRybyBkaSB0YWcgbm9uICZlZ3JhdmU7IGNvbXBhdGliaWxlIGNvbiBpIHByZXR0eSB1cmxzLic7CiRsYW5nWydwb3N0aW5zdGFsbCddID0gJ01vZHVsbyBDb21wYW55IERpcmVjdG9yeSBpbnN0YWxsYXRvIGNvcnJldHRhbWVudGUnOwokbGFuZ1sncG9zdHVuaW5zdGFsbCddID0gJ01vZHVsbyBDb21wYW55IERpcmVjdG9yeSBkaXNpbnN0YWxsYXRvIGNvcnJldHRhbWVudGUuIFR1dHRpIGkgZGF0aSBkZWxsZSBjb21wYWduaWUgY29sbGVnYXRlIHNvbm8gc3RhdGkgY2FuY2VsbGF0aSc7CiRsYW5nWydwcmV1bmluc3RhbGwnXSA9ICdTaWV0ZSBzaWN1cmkgZGkgdm9sZXJlIGRpc2luc3RhbGxhcmUgcXVlc3RvIG1vZHVsbz8gRmFjZW5kb2xvIGVsaW1pbmVyZXRlIHBlcm1hbmVudGVtZW50ZSB0dXR0aSBpIGRhdGkgZGVsbGUgY29tcGFnbmllIGNvbGxlZ2F0aS4nOwokbGFuZ1sncHJldnBhZ2UnXSA9ICc8JzsKJGxhbmdbJ3Byb21wdF9kZXRhaWxwYWdlJ10gPSAnTGEgcGFnaW5hIHByZWRlZmluaXRhIGEgY3VpIHJlaW5kaXJpenphcmUgaW4gbW9kYWxpdCZhZ3JhdmU7IGRldHRhZ2xpJzsKJGxhbmdbJ3Byb21wdF9wYWdlbGltaXQnXSA9ICdJbCBudW1lcm8gZGkgcmVjb3JkIGRhIHZpc3VhbGl6emFyZSBpbiBtb2RhbGl0JmFncmF2ZTsgc29tbWFyaW8nOwokbGFuZ1sncHJvbXB0X3N1bW1hcnlzb3J0aW5nJ10gPSAnT3JkaW5hbWVudG8gcHJlZGVmaW5pdG8gaW4gbW9kYWxpdCZhZ3JhdmU7IHNvbW1hcmlvJzsKJGxhbmdbJ3Byb21wdF9zdW1tYXJ5c29ydG9yZGVyJ10gPSAnTCYjMDM5O29yZGluYW1lbnRvIHByZWRlZmluaXRvIGluIG1vZGFsaXQmYWdyYXZlOyBzb21tYXJpbyA8ZW0+KG5vbiBhcHBsaWNhYmlsZSBxdWFuZG8gbCYjMDM5O29yZGluYW1lbnRvICZlZ3JhdmU7ICYjMDM5O3JhbmRvbSYjMDM5Oyk8L2VtPic7CiRsYW5nWydwcm9tcHRfdGVtcGxhdGUnXSA9ICdNb2RlbGxvJzsKJGxhbmdbJ3B1YmxpYyddID0gJ1B1YmJsaWNvJzsKJGxhbmdbJ3B1Ymxpc2hlZCddID0gJ1B1YmJsaWNhdG8nOwokbGFuZ1sncHJlZmVyZW5jZXMnXSA9ICdQcmVmZXJlbnplJzsKJGxhbmdbJ3JhbmRvbSddID0gJ0Nhc3VhbGUnOwokbGFuZ1sncmVzZXR0b2ZhY3RvcnknXSA9ICdSZWltcG9zdGEgaSB2YWxvcmkgcHJlZGVmaW5pdGknOwokbGFuZ1sncmVzdG9yZXRvZGVmYXVsdHNtc2cnXSA9ICdRdWVzdGEgb3BlcmF6aW9uZSByaXBvcnRlciZhZ3JhdmU7IGkgY29udGVudXRpIGRlbCBtb2RlbGxvIGFpIHZhbG9yaSBwcmVkZWZpbml0aSBkaSBzaXN0ZW1hLiAgU2lldGUgY2VydGkgZGkgdm9sZXJlIHByb2NlZGVyZT8nOwokbGFuZ1snc2VhcmNoJ10gPSAnQ2VyY2EnOwokbGFuZ1snc3RhdHVzJ10gPSAnU3RhdG8nOwokbGFuZ1snc3VibWl0J10gPSAnSW52aWEnOwokbGFuZ1snc3VtbWFyeXRlbXBsYXRlX2FkZGVkaXQnXSA9ICdBZ2dpdW5naS9Nb2RpZmljYSBNb2RlbGxvIFNvbW1hcmlvJzsKJGxhbmdbJ3N1bW1hcnl0ZW1wbGF0ZXMnXSA9ICdNb2RlbGxvIFNvbW1hcmlvJzsKJGxhbmdbJ3N1bW1hcnl0ZW1wbGF0ZXVwZGF0ZWQnXSA9ICdNb2RlbGxvIFNvbW1hcmlvIEFnZ2lvcm5hdG8nOwokbGFuZ1snc3lzZGVmYXVsdHMnXSA9ICdSZWltcG9zdGEgYWkgdmFsb3JpIHByZWRlZmluaXRpJzsKJGxhbmdbJ3RlbGVwaG9uZSddID0gJ1RlbGVmb25vJzsKJGxhbmdbJ3RlbGVwaG9uZXRleHQnXSA9ICdUZWxlZm9ubyc7CiRsYW5nWyd0aXRsZV9jYXRlZ29yeWxpc3RfZGZsdHRlbXBsYXRlJ10gPSAnTW9kZWxsbyBMaXN0YSBDYXRlZ29yaWEgcHJlZGVmaW5pdG8nOwokbGFuZ1sndGl0bGVfZGV0YWlsX2RmbHR0ZW1wbGF0ZSddID0gJ01vZGVsbG8gRGV0dGFnbGkgUHJlZGVmaW5pdG8nOwokbGFuZ1sndGl0bGVfZnJvbnRlbmRmb3JtX2RmbHR0ZW1wbGF0ZSddID0gJ01vZGVsbG8gTW9kdWxvIEludGVyZmFjY2lhIFByZWRlZmluaXRvJzsKJGxhbmdbJ3RpdGxlX3N1bW1hcnlfZGZsdHRlbXBsYXRlJ10gPSAnTW9kZWxsbyBTb21tYXJpbyBQcmVkZWZpbml0byc7CiRsYW5nWyd0eXBlJ10gPSAnVGlwbyc7CiRsYW5nWyd0eXBldGV4dCddID0gJ1RpcG8nOwokbGFuZ1sndXAnXSA9ICdTdSc7CiRsYW5nWyd3ZWJzaXRlJ10gPSAnU2l0byB3ZWInOwokbGFuZ1snd2Vic2l0ZXRleHQnXSA9ICdTaXRvIHdlYic7CiRsYW5nWyd1dG16J10gPSAnMTU2ODYxMzUzLjEyMjE0MTAyMDguNTYyLjkyLnV0bWNjbj0ocmVmZXJyYWwpfHV0bWNzcj1mb3J1bS5jbXNtYWRlc2ltcGxlLm9yZ3x1dG1jY3Q9L2luZGV4LnBocC90b3BpYywyNTcwNC4wLmh0bWx8dXRtY21kPXJlZmVycmFsJzsKJGxhbmdbJ3V0bWEnXSA9ICcxNTY4NjEzNTMuMTgwNzE1MTY0MC4xMTgyOTYwNDU2LjEyMjE5NDEyNjguMTIyMjExMTk0Ni41NjQnOwokbGFuZ1sndXRtYiddID0gJzE1Njg2MTM1Myc7CiRsYW5nWyd1dG1jJ10gPSAnMTU2ODYxMzUzJzsKPz4=]]></data>
	</file>
	<file>
	  <filename>/lang/ext/nb_NO.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2V4cGlyZXMnXSA9ICdVdGwmb3NsYXNoO3Blcic7CiRsYW5nWydyZXNldF90b19mYWN0b3J5J10gPSAnVGlsYmFrZXN0aWxsIHRpbCBzdGFuZGFyZGlubnN0aWxsaW5nZW5lJzsKJGxhbmdbJ3Byb21wdF9lbWFpbF9pc2h0bWwnXSA9ICdFLXBvc3QgZXIgSFRNTC1mb3JtYXQnOwokbGFuZ1sncHJvbXB0X2VtYWlsX3N1YmplY3QnXSA9ICdFLXBvc3QgZW1uZSc7CiRsYW5nWydwcm9tcHRfZW1haWxfdGVtcGxhdGUnXSA9ICdFLXBvc3QgbWFsJzsKJGxhbmdbJ2VtYWlsX3RlbXBsYXRlJ10gPSAnRS1wb3N0IG1hbCc7CiRsYW5nWydmZWVkaXRfZW1haWxfc3ViamVjdCddID0gJ0VuIGVuZHJpbmcgaGFyIGZ1bm5ldCBzdGVkIGZvciBlbiBDb21wYW55RGlyZWN0b3J5IHBvc3QnOwokbGFuZ1sncHJvbXB0X2ZldV9lbWFpbGdyb3VwJ10gPSAnQWRtaW5pc3RyYXNqb25zZ3J1cHBlIHNvbSBza2FsIG1vdHRhIHZhcnNsaW5nIGUtcG9zdGVyPyc7CiRsYW5nWydwcm9tcHRfZmV1X2VtYWlsb25hZGQnXSA9ICdTZW5kIGVuIGUtcG9zdCBuJmFyaW5nO3IgZW4gZnJvbnRlbmRicnVrZXIgbGVnZ2VyIHRpbCBlbiBueSBmaXJtcG9zdChDb21wYW55RGlyZWN0b3J5KSc7CiRsYW5nWydwcm9tcHRfZmV1X2VtYWlsb25lZGl0J10gPSAnU2VuZCBlbiBlLXBvc3QgbiZhcmluZztyIGVuIGZyb250ZW5kYnJ1a2VyIGVuZHJlciBlbiBla3Npc3RlcmVuZGUgZmlybXBvc3QoQ29tcGFueURpcmVjdG9yeSkgcG9zdCc7CiRsYW5nWydwcm9tcHRfZmV1X2VtYWlsb25ncm91cCddID0gJ0FkbWluZ3J1cHBlICZhcmluZzsgc2VuZGUgZS1wb3N0IHRpbCc7CiRsYW5nWydwcm9tcHRfZmV1X2Rpc3BsYXlfc2V0dGluZ3MnXSA9ICdGcm9udGVuZCB2aXNuaW5nc2lubnN0aWxsaW5nZXInOwokbGFuZ1sncHJvbXB0X2Zyb250ZW5kX3Nob3dleHBpcmVkJ10gPSAnVmlzIHBvc3RlciBzb20gZXIgZWlldCBhdiB1dGwmb3NsYXNoO3B0ZSBGcm9udGVuZCBicnVrZXJlJzsKJGxhbmdbJ2ZpZWxkX2ltYWdlJ10gPSAnQmlsZGUnOwokbGFuZ1snZXh0cmExJ10gPSAnRWtzdHJhZGF0YSAxJzsKJGxhbmdbJ2V4dHJhMiddID0gJ0Vrc3RyYWRhdGEgMic7CiRsYW5nWydleHRyYTMnXSA9ICdFa3N0cmFkYXRhIDMnOwokbGFuZ1snbGJsX2JhY2snXSA9ICdUaWxiYWtlJzsKJGxhbmdbJ21zZ19jb21wYW55Y29waWVkJ10gPSAnRmlybWEga29waWVydC4uLiB2ZW5ubGlnc3QgcmVkaWdlciBkZXRhbGplbmUgZm9yIGRlbiBueWUgZmlybWFvcHBmJm9zbGFzaDtyaW5nZW4nOwokbGFuZ1snY29weSddID0gJ0tvcGllcic7CiRsYW5nWydtb2RkZXNjcmlwdGlvbiddID0gJ0VuIG1vZHVsIGF2IGthdGFsb2d0eXBlbiBmb3IgYmVkcmlmdGVyLiBUaWxhbHRlciAmYXJpbmc7IGxlZ2dlIHRpbC9yZWRpZ2VyZS9pbXBvcnRlcmUvZWtzcG9ydGVyZSBiZWRyaWZ0c2RlZmluaXNqb25lciwgb2cgZm9yc2tqZWxsaWdlIG0mYXJpbmc7dGVyICZhcmluZzsgdmlzZSBiZWRyZnNvcHBmJm9zbGFzaDtyaW5nZW5lIGlua2x1ZGVydCBzJm9zbGFzaDtrLiBEZW5uZSBtb2R1bGVuIGludGVncmVyZXIgc2VnIGdvZHQgbWVkIENHR29vZ2xlTWFwcyBtb2R1bGVuLic7CiRsYW5nWydtc2dfaW1wb3J0X2NvbXBsZXRlJ10gPSAnSW1wb3J0IG9wZXJhc2pvbiB2ZWxseWtrZXQnOwokbGFuZ1sncHJvbXB0X2hpZXJhcmNoaWVzX2ltcG9ydGVkJ10gPSAnSGllcmFya2lwb3Npc2pvbmVyIG9wcHJldHRldCc7CiRsYW5nWydwcm9tcHRfaW1wb3J0X2hpZXJhcmNoeWRlZnMnXSA9ICdJbXBvcnQgaGllcmFya2lwb3N0ZXInOwokbGFuZ1sncHJvbXB0X2ltcG9ydF9oaWVyYXJjaHl2YWxzJ10gPSAnSW1wb3J0IGhpZXJhcmtpdmVyZGllcic7CiRsYW5nWydlcnJvcl9pbnNlcnRfaGllcmFyY2h5J10gPSAnRmVpbCB2ZWQgb3BwcmV0dGVsc2UgYXYgaGllcmFya2kgJnF1b3Q7JXMmcXVvdDsnOwokbGFuZ1snZXJyb3JfZHVwbGljYXRlX2hpZXJhcmNoeSddID0gJ0hpZXJhcmtpIG1lZCBmdWxsdCBuYXZuICZxdW90OyVzJnF1b3Q7IGVrc2lzdGVyZXIgYWxsZXJlZGUuJzsKJGxhbmdbJ2NvbXBhbnlkZWxldGVkJ10gPSAnRmlybWEgc2xldHRldCc7CiRsYW5nWydlcnJvcl91cGxvYWQnXSA9ICdGaWxvcHBsYXN0aW5nIGZlaWxldCc7CiRsYW5nWydlcnJvcl9kZWxpbWl0ZXInXSA9ICdEdSBtJmFyaW5nOyBzcGVzaWZpc2VyZSBldCBmZWx0c2tpbGxldGVnbic7CiRsYW5nWydlcnJvcl9ub3Nwb3RzbGVmdCddID0gJ0R1IGhhciBpbmdlbiBnamVudiZhZWxpZztyZW5kZSBmaXJtYS0mYXJpbmc7cG5pbmdlcic7CiRsYW5nWydtc2dfc2xvdHN1c2VkJ10gPSAnRHUgYWhyIGJlbnl0dGV0ICVkIGF2ICVkIGZpcm1hLSZhcmluZztwbmluZ2VyJzsKJGxhbmdbJ2ltcG9ydF9maWxlbmFtZSddID0gJ1ZlbGcgQ1NWLWZpbCc7CiRsYW5nWydkZWxpbWl0ZXInXSA9ICdGZWx0c2tpbGxldGVnbic7CiRsYW5nWydpbmZvX2NzdmZpbGUnXSA9ICdEZXQgZXIgbXVsaWcgJmFyaW5nOyBpbXBvcnRlcmUgZmlybWFpbmZvcm1hc2pvbiBkaXJla3RlIGZyYSBlbiBBU0NJSS1maWwuJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRfdGVtcGxhdGUnXSA9ICdEZW5uZSBtYWxlbiBiZXNrcml2ZXIgZXQgc2tqZW1hIHNvbSBicnVrZXMgZm9yICZhcmluZzsgdGlsbGF0ZSBhdXRvcmlzZXJ0ZSBmcm9udGVuZCBicnVrZXJlICZhcmluZzsgaW1wb3J0ZXJlIGRhdGEgZnJhIGVuIHJpa3RpZyBmb3JtYXRlcnQgQ1NWLWZpbCc7CiRsYW5nWydmcm9udGVuZGltcG9ydHRlbXBsYXRlJ10gPSAnRnJvbnRlbmQgQ1NWIGltcG9ydG1hbCc7CiRsYW5nWydwcm9tcHRfZmV1X2ltcG9ydCddID0gJ1RpbGxhdCBGcm9udGVuZFVzZXJzICZhcmluZzsgaW1wb3J0ZXJlIHBvc3RlciBmcmEgQ1NWPyc7CiRsYW5nWydwYXJhbV9oaWVybGlzdHRlbXBsYXRlJ10gPSAnU3Blc2lmaXNlciBlbiBtYWwgKGV0dGVyIG5hdm4pICZhcmluZzsgYmVueXR0ZSBuJmFyaW5nO3IgZW4gaGllcmFya2lsaXN0ZSBza2FsIHZpc2VzJzsKJGxhbmdbJ2hpZXJsaXN0dGVtcGxhdGVfYWRkZWRpdCddID0gJ0xlZ2cgdGlsL3JlZGlnZXIgaGllcmFya2lsaXN0ZW1hbCc7CiRsYW5nWyd0aXRsZV9oaWVybGlzdF9kZmx0dGVtcGxhdGUnXSA9ICdTdGFuZGFyZCBoaWVyYXJraWxpc3RlbWFsJzsKJGxhbmdbJ2hpZXJhcmNoeWxpc3R0ZW1wbGF0ZXMnXSA9ICdIaWVyYXJraWxpc3RlbWFsZXInOwokbGFuZ1sncGFyYW1faGllciddID0gJ0dqZWxkZXIgdGlsIDxlbT5zdGFuZGFyZDwvIGVtPiBvZyA8ZW0+aGllcmxpc3Q8LyBlbT4gaGFuZGxpbmdlbmUuIERlbm5lIHBhcmFtZXRlcmVuIGthbiBhbmdpIGV0IGhpZXJhcmtpbmF2biBwJmFyaW5nOyBzZWxza2FwZXIgc29tIHNrYWwgdmlzZXMuIEkgc3RhbmRhcmQgaGFuZGxpbmcgZXIgSm9rZXJlIGFrc2VwdGVydCwgZHZzOiAmcXVvdDsqIHNvbWVoaWVyYXJjaHluYW1lIComcXVvdDsuIE1lbiBpIGhpZXJsaXN0IGhhbmRsaW5nZW4sIG0mYXJpbmc7IGRlbm5lIHBhcmFtZXRlcmVuIGlubmVob2xkZSB1bmlrZSBuYXZuIHAmYXJpbmc7IGV0IGhpZXJhcmtpIHBvc2lzam9uLCBvZyB2aWwgYW5naSBzdGFydCBwbGFzc2VyaW5nZW4gYXYgaGllcmFya2lldCB2aXN0Lic7CiRsYW5nWydtc2dfaGllcmRlbGV0ZWQnXSA9ICdIaWVyYXJraXBvc2lzam9uIHNsZXR0ZXQnOwokbGFuZ1snbXNnX2hpZXJ1cGRhdGVkJ10gPSAnSGllcmFya2lwb3Npc2pvbiBvcHBkYXRlcnQnOwokbGFuZ1snbXNnX2hpZXJhZGRlZCddID0gJ0hpZXJhcmtpcG9zaXNqb24gbGFndCB0aWwnOwokbGFuZ1snYWRkaGllciddID0gJ0xlZ2cgdGlsIGhpZXJhcmtpJzsKJGxhbmdbJ2hpZXJhcmNoeSddID0gJ0hpZXJhcmtpJzsKJGxhbmdbJ2FkZF9lZGl0X2NhdGVnb3J5J10gPSAnTGVnZyB0aWwvcmVkaWdlciBrYXRlZ29yaSc7CiRsYW5nWydsYmxfc2V0dGluZ3MnXSA9ICdJbm5zdGlsbGluZ2VyJzsKJGxhbmdbJ2xibF90ZW1wbGF0ZXMnXSA9ICdNYWxlcic7CiRsYW5nWydub25lJ10gPSAnSW5nZW4nOwokbGFuZ1snb3duZXInXSA9ICdFaWVyJzsKJGxhbmdbJ2NyZWF0ZWQnXSA9ICdPcHByZXR0ZXQnOwokbGFuZ1snbW9kaWZpZWQnXSA9ICdFbmRyZXQnOwokbGFuZ1snZnJvbnRlbmRsaXN0dGVtcGxhdGVfYWRkZWRpdCddID0gJ0xlZ2cgdGlsIGVsbGVyIHJlZGlnZXIgZW4gRnJvbnRlbmQgTGlzdGVtYWwnOwokbGFuZ1sncHJvbXB0X2ZldV9jaGFuZ2Vfc3RhdHVzJ10gPSAnS2FuIGZyb250ZW5kLWJydWtlcmUgZW5kcmUgZXQgZmlybWFzIHN0YXR1cz8nOwokbGFuZ1sncHJvbXB0X2ZldV9uZXdfc3RhdHVzJ10gPSAnU3RhbmRhcmQgc3RhdHVzIGZvciBueWUgcG9zdGVyIG9wcHJldHRldCBmcmEgZnJvbnRlbmRlbic7CiRsYW5nWyd0aXRsZV9mcm9udGVuZGxpc3RfZGZsdHRlbXBsYXRlJ10gPSAnU3RhbmRhcmQgRnJvbnRlbmQgTGlzdGVtYWwnOwokbGFuZ1snZnJvbnRlbmRsaXN0dGVtcGxhdGVzJ10gPSAnRnJvbnRlbmQgTGlzdGVtYWxlcic7CiRsYW5nWydwcm9tcHRfZ2VuZXJhbF9zZXR0aW5ncyddID0gJ0dlbmVyZWxsZSBpbm5zdGlsbGluZ2VyJzsKJGxhbmdbJ3Byb21wdF9mZXVfZWRpdF9zZXR0aW5ncyddID0gJ0Zyb250ZW5kIFJlZGlnZXJpbmdzaW5uc3RpbGxpbmdlcic7CiRsYW5nWydwcm9tcHRfZmV1X2NyZWF0ZSddID0gJ0thbiBGcm9udEVuZFVzZXJzIG9wcHJldHRlIG55ZSBwb3N0ZXI/JzsKJGxhbmdbJ3Byb21wdF9mZXVfbnVtcmVjb3JkcyddID0gJ01ha3NpbXVtIGFudGFsbCBwc290ZXIgc29tIGthbiBhc3Nvc2llcmVzIG1lZCBlbiBGRVUta29udG8nOwokbGFuZ1sncHJvbXB0X251bWltcG9ydGVkJ10gPSAnQW50YWxsIGltcG9ydGVydGUgcG9zdGVyJzsKJGxhbmdbJ3Byb21wdF9kdXBsaWNhdGVfbmFtZSddID0gJ1Rlc3QgZm9yIGR1cGxpa2F0ZSBmaXJtYW5hdm4nOwokbGFuZ1sncHJvbXB0X3N0YXR1cyddID0gJ1N0YXR1cyBmb3IgaW1wb3J0ZXJ0IHBvc3QnOwokbGFuZ1sncHJvbXB0X2lnbm9yZV9hZGRyZXNzJ10gPSAnSWdub3JlciBhZHJlc3NlZmVsdCc7CiRsYW5nWydwcm9tcHRfY29udmVydF9hZGRyZXNzJ10gPSAnS29udmVydGVyIGFkcmVzc2VyIHRpbCBrb29yZGluYXRlciAob20gaW5nZW4ga29vcmRpbmF0ZXIgZXIgdGlsc3RlZGUpJzsKJGxhbmdbJ3Byb21wdF9rbWxmaWxlJ10gPSAnS01MLWZpbCAmYXJpbmc7IGltcG9ydGVyZSc7CiRsYW5nWydpbXBvcnRrbWwnXSA9ICdJbXBvcnRlciBLTUwnOwokbGFuZ1snaW1wb3J0X2ttbCddID0gJ0ltcG9ydGVyIEtNTC1maWwnOwokbGFuZ1snc2VsZWN0b25lJ10gPSAnVmVsZyBlbic7CiRsYW5nWydlcnJvcl9mZXVfbG9nZ2VkaW4nXSA9ICdGb3IgJmFyaW5nOyBiZW55dHRlIGRlbm5lIGZ1bmtzam9uZW4gbSZhcmluZzsgZHUgdiZhZWxpZztyZSBpbm5sb2dnZXQgcCZhcmluZzsgbmV0dHN0ZWRldHMgZnJvbnRlbmQnOwokbGFuZ1snYWN0aXZlJ10gPSAnQWt0aXYnOwokbGFuZ1snYWRkbGluayddID0gJ0xlZ2cgdGlsIGxlbmtlJzsKJGxhbmdbJ2FkZHJlc3MnXSA9ICdBZHJlc3NlJzsKJGxhbmdbJ2FkZHJlc3N0ZXh0J10gPSAnQWRyZXNzZSc7CiRsYW5nWydhZGRjYXRlZ29yeSddID0gJ0xlZ2cgdGlsIGthdGVnb3JpJzsKJGxhbmdbJ2FkZGNvbXBhbnknXSA9ICdMZWdnIHRpbCBGaXJtYSc7CiRsYW5nWydhZGRmaWVsZGRlZiddID0gJ0xlZ2cgdGlsIGZlbHRkZWZpbmlzam9uJzsKJGxhbmdbJ2FkbWluX29ubHknXSA9ICdTeW5saWcga3VuIGZvciBBZG1pbic7CiRsYW5nWydhcmV5b3VzdXJlJ10gPSAnRXIgZHUgc2lra2VyIHAmYXJpbmc7IGF0IGR1IHZpbCBzbGV0dGUgZGV0dGU/JzsKJGxhbmdbJ2FzY2VuZGluZyddID0gJ1N0aWdlbmRlJzsKJGxhbmdbJ2NhbmNlbCddID0gJ0F2YnJ5dCc7CiRsYW5nWydjYW51c2VyZWRpdCddID0gJ0thbiBmb3JudGVuZGJydWtlcmUgcmVkaWdlcmUgZGV0dGUgZmVsdGV0Pyc7CiRsYW5nWydjYW51c2VydmlldyddID0gJ0thbiBmb3JudGVuZGJydWtlcmUgc2UgZGV0dGUgZmVsdGV0Pyc7CiRsYW5nWydjYXRlZ29yeSddID0gJ0thdGVnb3JpJzsKJGxhbmdbJ2NhdGVnb3JpZXMnXSA9ICdLYXRlZ29yaWVyJzsKJGxhbmdbJ2NhdGVnb3J5dGV4dCddID0gJ0thdGVnb3JpJzsKJGxhbmdbJ2NhdGVnb3J5YWRkZWQnXSA9ICdLYXRlZ29yaSBsYWd0IHRpbCc7CiRsYW5nWydjYXRlZ29yeXVwZGF0ZWQnXSA9ICdLYXRlZ29yaSBvcHBkYXRlcnQnOwokbGFuZ1snY2F0ZWdvcnlsaXN0dGVtcGxhdGVfYWRkZWRpdCddID0gJ0xlZ2cgdGlsL3JlZGlnZXIga2F0ZWdvcmkgTGlzdGVtYWwnOwokbGFuZ1snY2F0ZWdvcnlsaXN0dGVtcGxhdGVzJ10gPSAnS2F0ZWdvcmlsaXN0ZSBtYWwnOwokbGFuZ1snY2F0ZWdvcnlsaXN0dGVtcGxhdGV1cGRhdGVkJ10gPSAnS2F0ZWdvcmlsaXN0ZSBvcHBkYXRlcnQnOwokbGFuZ1snY29tcGFueSddID0gJ0Zpcm1hJzsKJGxhbmdbJ2NvbXBhbnlhZGRlZCddID0gJ0Zpcm1hIGxhZ3QgdGlsJzsKJGxhbmdbJ2NvbXBhbnluYW1lJ10gPSAnRmlybWFuYXZuJzsKJGxhbmdbJ2NvbXBhbnl1cGRhdGVkJ10gPSAnRmlybWEgb3BwZGF0ZXJ0JzsKJGxhbmdbJ2NvbXBhbmllcyddID0gJ0Zpcm1hJzsKJGxhbmdbJ2NvbXBhbnl0ZXh0J10gPSAnRmlybWEnOwokbGFuZ1snY29tcGFueWRpcmVjdG9yeSddID0gJ0Zpcm1ha2F0YWxvZyc7CiRsYW5nWydjb250YWN0ZW1haWwnXSA9ICdLb250YWt0LWVwb3N0JzsKJGxhbmdbJ2NyZWF0ZWRkYXRlJ10gPSAnRGF0byBvcHByZXR0ZXQnOwokbGFuZ1snZGVmYXVsdHRlbXBsYXRlcyddID0gJ1N0YW5kYXJkIG1hbCc7CiRsYW5nWydkZWZhdWx0X3RlbXBsYXRlX25vdGljZSddID0gJzxzdHJvbmc+TWVyazo8L3N0cm9uZz4gSW5uaG9sZGV0IGkgZGlzc2UgdGVrc3RvbXImYXJpbmc7ZGVuZSBiZW55dHRlcyBmb3IgJmFyaW5nOyBiZXN0ZW1tZSBzdGFuZGFyZCBpbm5ob2xkIGkgbWFsZW5lIG4mYXJpbmc7ciBkdSBrbGlra2VyICZxdW90O0xlZ2cgdGlsIG1hbCZxdW90OyBpIGRlbiBha3R1ZWxsZSBtYWwgZmxpa2VuLiBSZWRpZ2VyaW5nIGF2IGVuIGF2IGRpc3NlIHRla3N0b21yJmFyaW5nO2RlbmUgdmlsIGlra2UgaGEgbm9lbiB1bWlkZGVsYmFyIGVmZmVrdCBwJmFyaW5nOyBkaW4gbmV0dHNpZGUuJzsKJGxhbmdbJ2RlbGV0ZSddID0gJ1NsZXR0JzsKJGxhbmdbJ2RlbGV0ZWNhdGVnb3J5J10gPSAnU2xldHQga2F0ZWdvcmknOwokbGFuZ1snZGVsZXRlY29tcGFueSddID0gJ1NsZXR0IGZpcm1hJzsKJGxhbmdbJ2RlbGV0ZWZpZWxkZGVmJ10gPSAnU2xldHQgZmVsdGRlZmluaXNqb24nOwokbGFuZ1snZGVzY2VuZGluZyddID0gJ1N5bmtlbmRlJzsKJGxhbmdbJ2Rlc2NyaXB0aW9uJ10gPSAnQmVza3JpdmVsc2UnOwokbGFuZ1snZGV0YWlscyddID0gJ0RldGFsamVyJzsKJGxhbmdbJ2RldGFpbHN0ZXh0J10gPSAnRGV0YWxqZXInOwokbGFuZ1snZGV0YWlsdGVtcGxhdGVfYWRkZWRpdCddID0gJ0xlZ2cgdGlsL3JlZGlnZXIgZGV0YWxqbWFsJzsKJGxhbmdbJ2RldGFpbHRlbXBsYXRlcyddID0gJ0RldGFsam1hbGVyJzsKJGxhbmdbJ2RldGFpbHRlbXBsYXRldXBkYXRlZCddID0gJ0RldGFsam1hbCBvcHBkYXRlcnQnOwokbGFuZ1snZGlzYWJsZWQnXSA9ICdJbmFrdGl2ZXJ0JzsKJGxhbmdbJ2Rvd24nXSA9ICdOZWQnOwokbGFuZ1snZHJhZnQnXSA9ICdLbGFkZCc7CiRsYW5nWydlZGl0J10gPSAnUmVkaWdlcic7CiRsYW5nWydlZGl0Y2F0ZWdvcnknXSA9ICdSRWRpZ2VyIGthdGVnb3JpJzsKJGxhbmdbJ2VkaXRjb21wYW55J10gPSAnUmVkaWdlciBmaXJtYSc7CiRsYW5nWydlZGl0ZmllbGRkZWYnXSA9ICdSZWRpZ2VyIGZlbHRkZWZpbmlzam9uJzsKJGxhbmdbJ2VtYWlsdGV4dCddID0gJ0Vwb3N0JzsKJGxhbmdbJ2Vycm9yX2JhZHVwbG9hZCddID0gJ0V0IHByb2JsZW0gb3Bwc3RvZCBtZWQgZGVuIG9wcGxhc3RlZGUgZmlsZW4nOwokbGFuZ1snZXJyb3JfY29tcGFueW5hbWUnXSA9ICdGaXJtYW5hdm5ldCBlciB1Z3lsZGlnJzsKJGxhbmdbJ2Vycm9yX2NvbXBhbnluYW1lX2ludXNlJ10gPSAnRXQgZmlybWEgbWVkIGRldCBuYXZuZXQgZmlubmVzIGFsbGVyZWRlIGkgZGF0YWJhc2VuJzsKJGxhbmdbJ2Vycm9yX2R1cGxpY2F0ZV9jYXRlZ29yeSddID0gJ0VuIGthdGVnb3JpIG1lZCBkZXQgbmF2bmV0IGVrc2lzdGVyZXIgYWxsZXJlZGUnOwokbGFuZ1snZXJyb3JfZHVwbGljYXRlX2NvbXBhbnknXSA9ICdFdCBmaXJtYSBtZWQgZGV0IG5hdm5ldCBla3Npc3RlcmVyIGFsbGVyZWRlJzsKJGxhbmdbJ2Vycm9yX2R1cGxpY2F0ZV9maWVsZGRlZiddID0gJ0V0IGZlbHQgbWVkIGRldCBuYXZuZXQgZWtzaXN0ZXJlciBhbGxlcmVkZSc7CiRsYW5nWydlcnJvcl9pbXBvcnRfYmFkbGluZSddID0gJ1VneWxkaWcgcG9zdCBmdW5uZXQgcCZhcmluZzsgbGluamUgJWQuIEVyIGRldCBlbiByZWdlbCBzb20gbWFuZ2xlcj8nOwokbGFuZ1snZXJyb3JfaW1wb3J0X2JhZHZhbHVlJ10gPSAnRW4gdWd5bGRpZyByZWdlbCBibGUgZnVubmV0IGZvciBlbiBhdiBmZWx0ZW5lJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydF9kdXBsaWNhdGVydWxlJ10gPSAnRHVwbGlrYXRlICVzIHJlZ2xlciBwJmFyaW5nOyBsaW5qZSAlZCc7CiRsYW5nWydlcnJvcl9pbXBvcnRfZHVwbGljYXRlcnVsZV9pZGVudGlmaWVyJ10gPSAnRHVwbGlrYXRlIHJlZ2VsaWRlbnRpZmlrYXRvcmVyIHAmYXJpbmc7IGxpbmplICVkJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydF91bmtub3ducm93J10gPSAnRm9yc3QmYXJpbmc7ciBpa2tlIGh2b3JkYW4gbGluamUgJWQgbWVkIHJlZ2VsaWRlbnRpZmlrYXRvcmVuICVzIHNrYWwgYmVoYW5kbGVzJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydF91bmtub3ducnVsZSddID0gJ1VramVudCByZWdlbCBwJmFyaW5nOyBsaW5qZSAlZCc7CiRsYW5nWydlcnJvcl9pbnNlcnRfY2F0ZWdvcnknXSA9ICdFbiBkYXRhYmFzZWZlaWwgb3Bwc3RvZCB1bmRlciBmb3JzJm9zbGFzaDtrIHAmYXJpbmc7ICZhcmluZzsgc2V0dGUgaW5uIGthdGVnb3JpZGVmaW5pc2pvbmVuJzsKJGxhbmdbJ2Vycm9yX2luc2VydF9jb21wYW55J10gPSAnRW4gZGF0YWJhc2VmZWlsIG9wcHN0b2QgdW5kZXIgZm9ycyZvc2xhc2g7ayBwJmFyaW5nOyAmYXJpbmc7IHNldHRlIGlubiBmaXJtYWRlZmluaXNqb25lbic7CiRsYW5nWydlcnJvcl9pbnNlcnRfZmllbGRkZWYnXSA9ICdFbiBkYXRhYmFzZWZlaWwgb3Bwc3RvZCB1bmRlciBmb3JzJm9zbGFzaDtrIHAmYXJpbmc7ICZhcmluZzsgc2V0dGUgaW5uIGZlbHRkZWZpbmlzam9uZW4nOwokbGFuZ1snZXJyb3JfaW52YWxpZF9wYXJhbSddID0gJ1ZlcmRpZW4gc3Blc2lmaXNlcnQgZm9yICVzIGVyIHVneWxkaWcnOwokbGFuZ1snZXJyb3JfbWlzc2luZ3VwbG9hZCddID0gJ0luZ2VuIGZpbCBibGUgbGFzdGV0IG9wcCc7CiRsYW5nWydlcnJvcl9taXNzaW5ncGFyYW0nXSA9ICdFbiBwJmFyaW5nO2tyZXZkIHBhcmFtZXRlciBtYW5nbGV0IGZyYSBza2plbWF1dGZ5bGxpbmdlbic7CiRsYW5nWydlcnJvcl9ub2Ryb3Bkb3dub3B0aW9ucyddID0gJ0luZ2VuIG5lZHRyZWtrc29wc2pvbmVyIGVyIG9wcGdpdHQnOwokbGFuZ1snZXJyb3Jfbm9mZXUnXSA9ICdLdW5uZSBpa2tlIGZpbm5lIEZyb250RW5kVXNlci1tb2R1bGVuJzsKJGxhbmdbJ2Vycm9yX25vbGVuZ3RoJ10gPSAnSW5nZW4gbWFrc2ltYWxsZW5nZGUgZm9yIGZlbHQgb3BwZ2l0dCc7CiRsYW5nWydlcnJvcl9ub3Jlc3VsdHNmb3VuZCddID0gJ0luZ2VuIHBvc3RlciBzb20gc2Ftc3ZhcnRlIG1lZCBrcml0ZXJpZW5lIGRpbmUgYmxlIGZ1bm5ldCBpIGRhdGFiYXNlbic7CiRsYW5nWydlcnJvcl9wb3N0Y29kZV9sb29rdXAnXSA9ICdLdW5uZSBpa2tlIGZpbm5lIG5vZW4gZGF0YSBmb3IgcG9zdG51bW1lciAlcyc7CiRsYW5nWydlcnJvcl9wcmVmaXhfbXNnJ10gPSAnRW4gZmVpbCBvcHBzdG9kIHAmYXJpbmc7IGxpbmplICVkOiAlcyc7CiRsYW5nWydleHBvcnRjc3YnXSA9ICdFa3Nwb3J0ZXIgQ1NWJzsKJGxhbmdbJ2ZheCddID0gJ0Zha3MnOwokbGFuZ1snZmF4dGV4dCddID0gJ0Zha3MnOwokbGFuZ1snZmllbGRkZWYnXSA9ICdGZWx0ZGVmaW5pc2pvbic7CiRsYW5nWydmaWVsZGRlZnMnXSA9ICdGZWx0ZGVmaW5pc2pvbmVyJzsKJGxhbmdbJ2ZpZWxkZGVmdGV4dCddID0gJ0ZlbHRkZWZpbmlzam9uJzsKJGxhbmdbJ2ZpZWxkZGVmYWRkZWQnXSA9ICdGZWx0ZGVmaW5pc2pvbiBsYWd0IHRpbCc7CiRsYW5nWydmaWVsZGRlZnVwZGF0ZWQnXSA9ICdGZWx0ZGVmaW5pc2pvbiBvcHBkYXRlcnQnOwokbGFuZ1snZmllbGRkZWZkZWxldGVkJ10gPSAnRmVsdGRlZmluaXNqb24gc2xldHRldCc7CiRsYW5nWydmaWVsZF9jaGVja2JveCddID0gJ0F2a3J5c25pbmdzYm9rcyc7CiRsYW5nWydmaWVsZF9kcm9wZG93biddID0gJ05lZHRyZWtrJzsKJGxhbmdbJ2ZpZWxkX3RleHRhcmVhJ10gPSAnVGVrc3RvbXImYXJpbmc7ZGUnOwokbGFuZ1snZmllbGRfdGV4dGJveCddID0gJ1Rla3N0aW5uc2tyaXZpbmcnOwokbGFuZ1snZmlyc3RwYWdlJ10gPSAnPDwgJzsKJGxhbmdbJ2Zyb250ZW5kZm9ybXRlbXBsYXRlX2FkZGVkaXQnXSA9ICdMZWdnIHRpbC9yZWRpZ2VyIEZyb250ZW5kc2tqZW1hIG1hbCc7CiRsYW5nWydmcm9udGVuZGZvcm10ZW1wbGF0ZXMnXSA9ICdSZWRpZ2VyIGZpcm1hbWFsZXInOwokbGFuZ1snZnJvbnRlbmRmb3JtdGVtcGxhdGV1cGRhdGVkJ10gPSAnUmVkaWdlciBmaXJtYW1hbCBvcHBkYXRlcnQnOwokbGFuZ1snaGVscCddID0gJzxoMz5XaGF0IGRvZXMgdGhpcyBkbz88L2gzPg0KPHA+VGhpcyBtb2R1bGUgcHJvdmlkZXMgYSB3YXkgdG8gY29sbGVjdCwgb3JnYW5pemUsIGFuZCBkaXNwbGF5IGluZm9ybWF0aW9uIGFib3V0IGNvbXBhbmllcy4gIFVzdWFsbHkgdGhpcyBpcyB0aGUgY29udGFjdCBpbmZvcm1hdGlvbiBhbmQgYSBsb2dvLCBidXQgaXQgaXMgZmxleGliaWxlIGVub3VnaCB0byBhbGxvdyBmb3IgZXh0ZW5kYWJsZSBmaWVsZHMsIGFuZCBkaXNjZW1pbmF0aW5nIHB1YmxpYyBmcm9tIHByaXZhdGUgZGF0YS48L3A+DQo8cD5UaGlzIG1vZHVsZSBjb3VsZCBiZSB1c2VkIGZvciBhIHZhcmlldHkgb2YgcHVycG9zZXMuIEZyb20gYSBzdXBwbGllcnMgbGlzdCB0byBhIGNvbnRhY3QgbGlzdC4gIEl0IGlzIGZsZXhpYmxlIGVub3VnaCB0aGF0IGl0IGNvdWxkIGJlIHJlLXVzZWQgZm9yIG1hbnkgZGlmZmVyZW50IHB1cnBvc2VzLjwvcD4NCjxoMz5Ib3cgRG8gSSBVc2UgSXQ8L2gzPg0KPHA+VGhlIGVhc2llc3Qgd2F5IHRvIHVzZSB0aGlzIG1vZHVsZSBpcyBieSBwbGFjaW5nIHRoZSA8Y29kZT57Q29tcGFueURpcmVjdG9yeX08L2NvZGU+IHRhZyBpbnRvIGVpdGhlciB5b3VyIHBhZ2UgdGVtcGxhdGUgb3IgcGFnZSBjb250ZW50LiAgWW91IHdvdWxkIHRoZW4gc3RhcnQgZWRpdGluZyByZWNvcmRzIGluIHRoZSAmYW1wO3F1b3Q7Q29tcGFueSBEaXJlY3RvcnkmYW1wO3F1b3Q7IGFkbWluIGludGVyZmFjZS4gIEV4cGxvcmUgdGhlIHZhcmlvdXMgcGFyYW1ldGVycyAoZGVzY3JpYmVkIGJlbG93KSBmb3Igd2F5cyB0byBjdXN0b21pemUgdGhlIGJlaGF2aW91ciBvZiB0aGUgbW9kdWxlLjwvcD4NCjxoMz5TZWN1cml0eTwvaDM+DQo8cD5JbiBvcmRlciB0byBtYW5hZ2UgdGhlIGNvbXBhbmllcyBpbnNpZGUgdGhpcyBtb2R1bGUsIHRoZSBhZG1pbmlzdHJhdG9yIG11c3QgaGF2ZSB0aGUgJiMwMzk7PC9lbT5Nb2RpZnkgQ29tcGFueSBEaXJlY3Rvcnk8L2VtPiYjMDM5OyBwZXJtaXNzaW9uLjwvcD4NCjxwPkluIG9yZGVyIHRvIGVkaXQgdGhlIGJ1aWx0IGluIHRlbXBsYXRlcyB0aGF0IGNvbnRyb2wgdGhlIGxheW91dCBvZiB0aGUgY29tcGFueWRpcmVjdG9yeSBpbmZvcm1hdGlvbiwgdGhlIGFkbWluaXN0cmF0b3IgbmVlZHMgdGhlICYjMDM5OzxlbT5Nb2RpZnkgVGVtcGxhdGVzPC9lbT4mIzAzOTsgcGVybWlzc2lvbi48L3A+DQo8cD5UbyBhZGp1c3QgdGhlIHZhcmlvdXMgc2V0dGluZ3MsIHRoZSAmIzAzOTs8ZW0+TW9kaWZ5IFNpdGUgUHJlZmVyZW5jZXM8L2VtPiYjMDM5OyBwZXJtaXNzaW9uIGlzIHJlcXVpcmVkLjwvcD4NCjxoMz5QcmV0dHkgVVJMUzwvaDM+DQo8cD5GdW5jdGlvbmFsaXR5IGFuZCBmbGV4aWJpbGl0eSBpcyByZWR1Y2VkIHdoZW4gdXNpbmcgcHJldHR5IHVybHMuICBGb3IgZXhhbXBsZSwgaWYgdXNpbmcgcHJldHR5IFVSTFMgd2l0aCB0aGlzIG1vZHVsZSwgeW91IHNob3VsZCBwb3N0IHRoZSB0YWcgZm9yIHRoaXMgbW9kdWxlIGluIHRoZSBkZWZhdWx0IGNvbnRlbnQgYmxvY2ssIGFuZCB3aGVuIGNsaWNraW5nIG9uIGEgbGluayBvciBzdWJtaXR0aW5nIGEgYnV0dG9uIGZyb20gdGhpcyBtb2R1bGUsIGl0JiMwMzk7cyByZXN1bHRzIHdpbGwgYWx3YXlzIHJlcGxhY2UgdGhlIGRlZmF1bHQgY29udGVudCBibG9jay48L3A+JzsKJGxhbmdbJ2lkJ10gPSAnSUQnOwokbGFuZ1snaW5mb19kcm9wZG93bl9vcHRpb25zJ10gPSAnU3Blc2lmaXNlciBvcHNqb25lbmUgZm9yIG5lZHRyZWtrc2tvbnRyb2xsZXJlbi4gKkVuIGxpbmplIHBlciBpbm5sZWdnLiBBZHNraWxsIG4mb3NsYXNoO2tsZXIgZnJhIHZlcmRpZXIgbWVkICA9ICB0ZWduLiBGLmVrcy4gbiZvc2xhc2g7a2tlbD12ZXJkaSc7CiRsYW5nWydpbWFnZWN1cnJlbnRoaWRkZW4nXSA9ICcgJzsKJGxhbmdbJ2ltYWdldGV4dCddID0gJ0JpbGRlJzsKJGxhbmdbJ2ltcG9ydGNzdiddID0gJ0ltcG9ydGVyIENTVic7CiRsYW5nWydsYXRpdHVkZSddID0gJ0JyZWRlZ3JhZChMYXRpdHVkZSknOwokbGFuZ1snbGFzdHBhZ2UnXSA9ICcgPj4nOwokbGFuZ1snbG9nb2N1cnJlbnRoaWRkZW4nXSA9ICcgJzsKJGxhbmdbJ2xvZ290ZXh0J10gPSAnTG9nbyAnOwokbGFuZ1snbG9uZ2l0dWRlJ10gPSAnTGVuZ2RlZ3JhZChMb25naXR1ZGUpJzsKJGxhbmdbJ2xvb2t1cCddID0gJ1NsJmFyaW5nOyBvcHAga29vcmRpbmF0ZW5lJzsKJGxhbmdbJ21heGxlbmd0aCddID0gJ01ha3MgbGVuZ2RlJzsKJGxhbmdbJ21heF9sZW5ndGgnXSA9ICdNYWtzIGxlbmdkZSc7CiRsYW5nWydtYXhsZW5ndGh0ZXh0J10gPSAnTWFrcyBsZW5nZGUnOwokbGFuZ1snbW9kaWZpZWRkYXRlJ10gPSAnRGF0byBzaXN0IGVuZHJldCc7CiRsYW5nWyduYW1lJ10gPSAnTmF2bic7CiRsYW5nWyduYW1ldGV4dCddID0gJ05hdm4nOwokbGFuZ1snbmVlZHBlcm1pc3Npb24nXSA9ICdEdSB0cmVuZ2VyICYjMDM5OyVzJiMwMzk7IHRpbGxhdGVsc2UgZm9yICZhcmluZzsgdXRmJm9zbGFzaDtyZSBkZW4gZnVua3Nqb25lbi4nOwokbGFuZ1snbm8nXSA9ICdOZWknOwokbGFuZ1snbm9jb21wYW55bmFtZWdpdmVuJ10gPSAnSW5nZW4gZmlybWFuYXZuIG9wcGdpdHQnOwokbGFuZ1snbm9uYW1lZ2l2ZW4nXSA9ICdJbmdlbiBuYXZuIG9wcGdpdHQnOwokbGFuZ1snbm90YW51bWJlciddID0gJ0VyIGlra2UgZXQgbnVtbWVyJzsKJGxhbmdbJ25leHRwYWdlJ10gPSAnID4nOwokbGFuZ1snb2YnXSA9ICdhdic7CiRsYW5nWydwYWdlJ10gPSAnU2lkZSc7CiRsYW5nWydwYXJhbV9hY3Rpb24nXSA9ICdEZWZpbmVyZXIgZGVuIHByaW0mYWVsaWc7cmUgb3BwZiZvc2xhc2g7cnNlbGVuIGZvciBtb2R1bGVuLiBNdWxpZyB2ZXJkaWVyIGZvciBkZW5uZSBwYXJhbWV0ZXIgZXI6DQo8dWw+DQogIDxsaT5jYXRlZ29yeWxpc3QgLS0gVmlzIGVuIGxpc3RlIG1lZCBrYXRlZ29pZXIuIEJydWtlcmUga2FuIGRyaWxsZSBuZWQgdGlsIHNhbW1lbmRyYWdzbW9kdXMsIG9nIHMmYXJpbmc7IHRpbCBkZXRhbGptb2R1cy48L2xpPg0KICA8bGk+PHN0cm9uZz5kZWZhdWx0PC9zdHJvbmc+IC0tIFZpcyBiZWRyaWZ0ZXIgaSBzYW1tZW5kcmFnc21vZHVzLjwvbGk+DQogIDxsaT5kZXRhaWxzIC0tIFZpcyBkZXRhbGplcnQgaW5mb3JtYXNqb24gb20gZW4gc3Blc2lmaWtrIGJlZHJpZnQuPC9saT4NCiAgPGxpPmZlX2VkaXQgLS0gVmlzIGV0IHNramVtYSBzb20gdGlsbGF0ZXIgJmFyaW5nOyByZWRpZ2VyZSBpbmZvcm1hc2pvbiBvbSBlbiBzcGVzaWZpa2sgYmVkcmlmdC48L2xpPg0KPGxpPmZyb250ZW5kbGlzdCAtLSBWaSBsaXN0ZSBtZWQgYWxsZSBiZWRyZnRzb3BwZiZvc2xhc2g7cmluZ2VyIGZvciBlbiBicnVrZXIgcCZhcmluZzsgZnJvbnRlbmRlbiwgbWVkIHZhbGdmcmkgbXVsaWdoZXQgdGlsICZhcmluZzsgbGVnZ2UgdGlsIGZsZXJlLjwvbGk+DQogIDxsaT5zZWFyY2ggIC0tIFZpcyBldCBza2plbWEgZm9yICZhcmluZzsgdGlsbGF0ZSBzJm9zbGFzaDtrIGV0dGVyIHNwZXNpZmlra2UgYmVkcmlmdGVyLjwvbGk+DQogIDxsaT5icm93c2VoaWVyIC0tIFZpcyBlbiBsaXN0ZSBtZWQgaGllcmFya2llci4gQnJ1a2VyZSBrYW4gZHJpbGxlIG5lZCB0aWwgc2FtbWVuZHJhZ3Ntb2R1cyBvZyBzJmFyaW5nOyB0aWwgZGV0YWxqbW9kdXMuPC9saT4NCiAgIA0KPC91bD4nOwokbGFuZ1sncGFyYW1faW5saW5lJ10gPSAnR2plbGRlciBiYXJlIGZvciA8ZW0+c3RhbmRhcmQ8L2VtPiBzYW1tZW5kcmFnIG9nIDxlbT5zJm9zbGFzaDtrZSA8L2VtPiBtb2R1c2VuZSwgZGVubmUgcGFyYW1ldGVyZW4ga2FuIGFuZ2kgb20gZGUgcmVzdWx0ZXJlbmRlIGRhdGFlbmUgc2thbCBlcnN0YXR0ZSBzdGFuZGFyZGlubmhvbGRzYmxva2sgZWxsZXIgb20gZGUgc2thbCBlcnN0YXR0ZSBkZW4gb3BwcmlubmVsaWdlIGtvZGVuIChpbmxpbmUpLic7CiRsYW5nWydwYXJhbV9zZWFyY2hmb3JtdGVtcGxhdGUnXSA9ICdHamVsZGVyIGJhcmUgZm9yIDxlbT5zJm9zbGFzaDtrZTwvZW0+IG1vZHVzLCBkZW5uZSBwYXJhbWV0ZXJlbiBrYW4gYW5naSBlbiBzJm9zbGFzaDtramVza2plbWEgbWFsIHNvbSBpa2tlIGVyIHN0YW5kYXJkLic7CiRsYW5nWydwYXJhbV9wYWdlbGltaXQnXSA9ICdOJmFyaW5nO3IgZGV0IGJydWtlcyBtZWQgPGVtPnN0YW5kYXJkPC9lbT4gc2FtbWVuZHJhZywgZWxsZXIgPGVtPnMmb3NsYXNoO2tlPC9lbT4tbW9kdXMsIHZpbCBkZXR0ZSBiZWdyZW5zZSByZXN1bHRhdGVuZSB0aWwgZXQgYW5naXR0IGFudGFsbC4nOwokbGFuZ1sncGFyYW1fY2F0ZWdvcnknXSA9ICdCZW55dHRldCBpIDxlbT5zdGFuZGFyZDwvZW0+IHNhbW1lbmRyYWdzbW9kdXMsIHZpbCBkZW5uZSBwYXJhbWV0ZXJlbiwgc29tIHNrYWwgaGEgc2FtbWUgbmF2biBzb20gZW4gZWtzaXN0ZXJlbmRlIGthdGVnb3JpLCBibGkgYmVueXR0ZXQgZm9yICZhcmluZzsgdmlzZSBrdW4gZGUgZmlybWEgc29tIGVyIGkgZGVuIGthdGVnb3JpZW4uIChlbiBrb21tYXNlcGFyZXJ0IGxpc3RlIGthbiBhbmdpcyknOwokbGFuZ1sncGFyYW1fY2F0ZWdvcnlsaXN0dGVtcGxhdGUnXSA9ICdPcHBnaSBlbiBtYWwgKHZlZCBuYXZuKSBzb20gc2thbCBiZW55dHRlcyB2ZWQgdmlzbmluZyBhdiBrYXRlZ29yaWxpc3RlLic7CiRsYW5nWydwYXJhbV9jb21wYW55aWQnXSA9ICdLcmV2ZXMgZm9yIGZyb250ZW5kIHJlZGlnZXJpbmcgb2cgZGV0YWxqIG1vZHVzLCBodm9yIGRlbm5lIHBhcmFtZXRlciBiZXN0ZW1tZXIgaHZpbGtlbiBmaXJtYXBvc3Qgc29tIHNrYWwgcmVkaWdlcmVzIGVsbGVyIHZpc2VzLic7CiRsYW5nWydwYXJhbV9kZXRhaWxwYWdlJ10gPSAnU3Blc2lmaXNlciBlbiBzaWRlYWxpYXMgKHZlZCBuYXZuKSAmYXJpbmc7IGJlbnl0dGUgdGlsICZhcmluZzsgdmlzZSBkZXRhbGpwb3N0ZW4uIDxzdHJvbmc+TWVyazo8L3N0cm9uZz4gRGVubmUgdGFnZ3BhcmFtZXRlcmVuIGVyIGlra2Uga29tcGF0aWJlbCBtZWQgdmFrcmUgdXJsJiMwMzk7ZXIuJzsKJGxhbmdbJ3BhcmFtX2RldGFpbHRlbXBsYXRlJ10gPSAnT3BwZ2kgZW4gbWFsICh2ZWQgbmF2bikgc29tIHNrYWwgYmVueXR0ZXMgdmVkIHZpc25pbmcgYXYgZGV0YWxqdmlzbmluZyA8c3Ryb25nPk1lcms6PC9zdHJvbmc+IERlbm5lIHRhZ2dwYXJhbWV0ZXJlbiBlciBpa2tlIGtvbXBhdGliZWwgbWVkIHZha3JlIHVybCYjMDM5O2VyLic7CiRsYW5nWydwYXJhbV9mcm9udGVuZGZvcm10ZW1wbGF0ZSddID0gJ09wcGdpIGVuIG1hbCAodmVkIG5hdm4pIHNvbSBza2FsIGJlbnl0dGVzIHZlZCB2aXNuaW5nICAgYXYgZnJvbnRlbmQgZmlybWFyZWRpZ2VyaW5ncyBza2plbWEuJzsKJGxhbmdbJ3BhcmFtX3NlbGVjdGNhdGVnb3J5J10gPSAnT20gZGVubmUgcGFyYW1ldGVyZW4gZXIgc2F0dCwgcyZhcmluZzsgdmlsIGV0IHNramVtYSBibGkgZ2VuZXJlcnQgc29tIHRpbGxhdGVyIGJydWtlcmUgaW50ZXJha3RpdnQgJmFyaW5nOyBmaWx0cmVyZSBmaXJtYXBvc3RlciBwJmFyaW5nOyBlbiBlbmtlbHQga2F0ZWdvcmkuIERldHRlIGZsYWdnZXQgc2thbCBpa2tlIGJlbnl0dGVzIHNhbW1lbiBtZWQgJiMwMzk7a2F0ZWdvcmkoY2F0ZWdvcnkpJiMwMzk7IHBhcmFtZXRlcmVuLic7CiRsYW5nWydwYXJhbV9zaG93YWxsJ10gPSAnS3VuIGd5bGRpZyBmb3IgY2F0ZWdvcnlsaXN0IGhhbmRsaW5nZW4sIG9tIGRlbm5lIHBhcmFtZXRlciBlciBzYXR0LCBkYSB2aWwgb2dzJmFyaW5nOyBrYXRlZ29yaWVyIHV0ZW4gc2Ftc3ZhcmVuZGUgZmlybWEgYmxpIHZpc3QgaSByZXN1bHRhdGV0JzsKJGxhbmdbJ3BhcmFtX3NvcnRvcmRlciddID0gJ1NwZXNpZmlzZXIgcmVra2VmJm9zbGFzaDtsZ2VuIHAmYXJpbmc7IHNvcnRlcnRlIGZlbHRlciBpIHNhbW1lbmRyYWdzdmlzbmluZy4gTXVsaWdlIHZlcmRpZXIgZXI6DQo8dWw+DQogIDxsaT48c3Ryb25nPmFzYzwvc3Ryb25nPiAtLSBTdGlnZW5kZSByZWtrZWYmb3NsYXNoO2xnZTwvbGk+DQogIDxsaT5kZXNjIC0tIFN5bmtlbmRlIHJla2tlZiZvc2xhc2g7bGdlPC9saT4NCjwvdWw+JzsKJGxhbmdbJ3BhcmFtX3NvcnRieSddID0gJ0t1biBneWxkaWcgZm9yIHNhbW1lbmRyYWdzbW9kdXMsIGh2b3IgZGVubmUgcGFyYW1ldGVyIGF2Z2omb3NsYXNoO3Igc29ydGVyaW5nZW4gYXYgdXRkYXRhIGZpcm1hZXIuIERlIG11bGlnZSB2ZXJkaWVuZSBlcjoNCjx1bD4NCjxsaT5pZCAtLSBEZW4gaW50ZXJuZSBmaXJtYSBJRDwvbGk+DQogIDxsaT48c3Ryb25nPmNvbXBhbnlfbmFtZTwvc3Ryb25nPjwvbGk+DQogIDxsaT5waG9uZTwvbGk+DQogIDxsaT5mYXg8L2xpPg0KICA8bGk+ZW1haWw8L2xpPg0KICA8bGk+d2Vic2l0ZSAtLSBOZXR0c3RlZGV0cyB1cmw8L2xpPg0KICA8bGk+Y3JlYXRlZCAtLSBPcHByZXR0ZWxzZXNkYXRvIGZvciBkZW5uZSBmaXJtYSBwb3N0ZW48L2xpPg0KICA8bGk+bW9kaWZpZWQgLS0gRW5kcmluZ3NkYXRvIGZvciBkZW5uZSBmaXJtYSBwb3N0ZW48L2xpPg0KICA8bGk+c3RhdHVzPC9saT4NCiAgPGxpPnJhbmRvbSAtLSBTb3J0ZXIgcG9zdGVuZSB0aWxmZWxkaWcuPC9saT4NCiAgPGxpPmY6ZmllbGQgbmFtZSAtLSBTb3J0ZXIgZXR0ZXIgb2ZmZW50bGlnZSBlZ2VuZGVmaW5lcnRlIGZlbHRlci4gVXRkYXRhIHZpbCBibGkgc29ydGVydCBldHRlciBkZXQgbmF2bmdpdHRlIGVnZW5kZWZpbmVydGUgZmVsdGV0Ljxici8+DQogICA8c3Ryb25nPiBNZXJrOiA8LyBzdHJvbmc+IER1IG0mYXJpbmc7IGthbnNramUgYnJ1a2Ugc2l0YXRlciBkZXJzb20gZmVsdG5hdm5ldCBlciBtZWxsb21yb20gPGJyLz4uDQogICA8c3Ryb25nPiBNZXJrOiA8L3N0cm9uZz4gRGV0IGZlbHRldCBzb20gZXIgYW5naXR0IG0mYXJpbmc7IG1lcmtlcyBzb20gb2ZmZW50bGlnIDwvbGk+Lg0KICAgPHN0cm9uZz4gTWVyazogPC9zdHJvbmc+IE4mYXJpbmc7ciBkdSBicnVrZXIgZWdlbmRlZmluZXJ0IGZlbHQgc29ydGVyaW5nLCBrYW4gZHUgb2dzJmFyaW5nOyBhbmdpIGV0IGZsYWdnIGV0dGVyIGZlbHRuYXZuZXQgZm9yICZhcmluZzsgdmlzZSBhdCBoZWx0YWxsL2ludGVnZXIgc29ydGVyaW5nIHNrYWwgdXRmJm9zbGFzaDtyZXMuIGkuZTogPGNvZGU+IHNvcnRieT1mOmN1c3RvbV9vcmRlcmluZzppPC8gY29kZT4gPGJyLz4NCjwvIHVsPic7CiRsYW5nWydwYXJhbV9zdW1tYXJ5dGVtcGxhdGUnXSA9ICdPcHBnaSBlbiBtYWwgKHZlZCBuYXZuKSAmYXJpbmc7IGJlbnl0dGUgbiZhcmluZztyIHNhbW1lbmRyYWcgc2thbCB2aXNlcy4gIDxzdHJvbmc+TWVyazo8L3N0cm9uZz4gRGVubmUgdGFnZ3BhcmFtZXRlcmVuIGVyIGlra2Uga29tcGF0aWJlbCBtZWQgdmFrcmUgdXJsJiMwMzk7ZXIuJzsKJGxhbmdbJ3Bvc3RhbF9jb2RlJ10gPSAnUG9zdG51bW1lcic7CiRsYW5nWydwb3N0aW5zdGFsbCddID0gJ0Zpcm1ha2F0YWxvZyBtb2R1bGVuIGJsZSB2ZWxseWtrZXQgaW5zdGFsbGVydCc7CiRsYW5nWydwb3N0dW5pbnN0YWxsJ10gPSAnQ29tcGFueSBEaXJlY3RvcnkgbW9kdWxlbiBibGUgYXZpbnN0YWxsZXJ0LiBBbGwgYXNzb3NpZXJ0IGZpcm1hZGF0YSBoYXIgYmxpdHQgc2xldHRldCc7CiRsYW5nWydwcmV1bmluc3RhbGwnXSA9ICdFciBkdSBzaWtrZXIgcCZhcmluZzsgYXQgZHUgdmlsIGF2aW5zdGFsbGVyZSBkZW5uZSBtb2R1bGVuPyAmQXJpbmc7IGF2aW5zdGFsbGVyZSBkZW5uZSBtb2R1bGVuIHZpbCBwZXJtYW5lbnQgc2xldHRlIGFsbCBhc3Nvc2llcnQgZmlybWFkYXRhIGkgZGVubmUgbW9kdWxlbi4gJzsKJGxhbmdbJ3ByZXZwYWdlJ10gPSAnPCAnOwokbGFuZ1sncHJvbXB0X2NhdGVnb3JpZXNfaW1wb3J0ZWQnXSA9ICdLYXRlZ29yaWVyIGltcG9ydGVydCc7CiRsYW5nWydwcm9tcHRfY2hlY2tfZHVwbGljYXRlcyddID0gJ1Rlc3QgZm9yIGR1cGxpa2F0ZSBmaXJtYW5hdm4/JzsKJGxhbmdbJ3Byb21wdF9jb2xsZWN0c3RhdHMnXSA9ICdTYW1sZSBzJm9zbGFzaDtrZXN0YXRpc3Rpa2snOwokbGFuZ1sncHJvbXB0X2NvbXBhbmllc19pbXBvcnRlZCddID0gJ0Zpcm1hZXIgaW1wb3J0ZXJ0JzsKJGxhbmdbJ3Byb21wdF9kZWxpbWV0ZXInXSA9ICdGZWx0IHNraWxsZXRlZ24nOwokbGFuZ1sncHJvbXB0X2RldGFpbHBhZ2UnXSA9ICdTdGFuZGFyZHNpZGUgJmFyaW5nOyByZXR1cm5lcmUgdGlsIGkgZGV0YWxqbW9kdXMnOwokbGFuZ1sncHJvbXB0X2Ryb3Bkb3duX29wdGlvbnMnXSA9ICdOZWR0cmVra3NvcHNqb25lcic7CiRsYW5nWydwcm9tcHRfZmllbGRkZWZzX2ltcG9ydGVkJ10gPSAnRmVsdGRlZmluaXNqb25lciBpbXBvcnRlcnQnOwokbGFuZ1sncHJvbXB0X2ltcG9ydF9jYXRlZ29yeWRlZnMnXSA9ICdPcHByZXR0IG1hbmdsZW5kZSBrYXRlZ29yaWVyIHZlZCBpbXBvcnQnOwokbGFuZ1sncHJvbXB0X2ltcG9ydF9jYXRlZ29yeXZhbHMnXSA9ICdGeWxsIGthdGVnb3JpdmVyZGllciB2ZWQgaW1wb3J0JzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRfY3N2ZmlsZSddID0gJ0xhc3Qgb3BwIENTViBGaWwnOwokbGFuZ1sncHJvbXB0X2ltcG9ydF9maWVsZGRlZnMnXSA9ICdPcHByZXR0IG1hbmdsZW5kZSAmcXVvdDthZGRpdGlvbmFsIGZpZWxkJnF1b3Q7IGRlZmluaXNqb25lciB2ZWQgaW1wb3J0JzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRfZmllbGR2YWxzJ10gPSAnRnlsbCAmcXVvdDthZGRpdGlvbmFsIGZpZWxkJnF1b3Q7IHZlcmRpZXIgdmVkIGltcG9ydCc7CiRsYW5nWydwcm9tcHRfaW1wb3J0X2xvb2t1cGxhdGxvbmcnXSA9ICdTbCZhcmluZzsgb3BwIGxhdGl0dWRlIG9nIGxvbmdpdHVkZSB2ZXJkaWVyIG9tIGRlIG1hbmdsZXInOwokbGFuZ1sncHJvbXB0X3BhZ2VsaW1pdCddID0gJ0FudGFsbCBwb3N0ZXIgJmFyaW5nOyB2aXNlIHByLiBzaWRlIGkgc2FtbWVuZHJhZ3Ntb2R1cyc7CiRsYW5nWydwcm9tcHRfc3VtbWFyeXNvcnRpbmcnXSA9ICdTdGFuZGFyZCBzb3J0ZXJpbmcgaSBzYW1tZW5kcmFnc21vZHVzJzsKJGxhbmdbJ3Byb21wdF9zdW1tYXJ5c29ydG9yZGVyJ10gPSAnU3RhbmRhcmQgc29ydGVyaW5nIGkgc2FtbWVuZHJhZ3Ntb2R1cyA8ZW0+KGhhciBpbmdlbiBmdW5rc2pvbiBuJmFyaW5nO3Igc29ydGVyaW5nIGVyICYjMDM5O3RpbGZlbGRpZyhyYW5kb20pJiMwMzk7PC9lbT4nOwokbGFuZ1sncHJvbXB0X3RlbXBsYXRlJ10gPSAnTWFsJzsKJGxhbmdbJ3B1YmxpYyddID0gJ09mZmVudGxpZyc7CiRsYW5nWydwdWJsaXNoZWQnXSA9ICdQdWJsaXNlcnQnOwokbGFuZ1sncHJlZmVyZW5jZXMnXSA9ICdJbm5zdGlsbGluZ2VyJzsKJGxhbmdbJ3JhZGl1cyddID0gJ1JhZGl1cyAnOwokbGFuZ1sncmFuZG9tJ10gPSAnVGlsZmVsZGlnJzsKJGxhbmdbJ3JldHVybiddID0gJ1RpbGJha2UnOwokbGFuZ1sncmVzZXR0b2ZhY3RvcnknXSA9ICdTZXR0IHRpbGJha2UgdGlsIGZhYnJpa2tpbm5zdGlsbGluZ2VyJzsKJGxhbmdbJ3Jlc3RvcmV0b2RlZmF1bHRzbXNnJ10gPSAnRGVubmUgb3BlcmFzam9uIHZpbCBzZXR0ZSBtYWxlbnMgaW5uaG9sZCB0aWxiYWtlIHRpbCBzeXN0ZW0gc3RhbmRhcmQuIEVyIGR1IHNpa2tlciBwJmFyaW5nOyBkdSB2aWwgZm9ydHNldHRlPyc7CiRsYW5nWydzZWFyY2gnXSA9ICdTJm9zbGFzaDtrJzsKJGxhbmdbJ3NlYXJjaGVzJ10gPSAnUyZvc2xhc2g7ayc7CiRsYW5nWydzZWFyY2hmb3JtdGVtcGxhdGVzJ10gPSAnUyZvc2xhc2g7ayBza2plbWFtYWxlcic7CiRsYW5nWydzZWFyY2hmb3JtdGVtcGxhdGVfYWRkZWRpdCddID0gJ0xlZ2cgdGlsL3JlZGlnZXIgcyZvc2xhc2g7a2Vza2plbWEgbWFsJzsKJGxhbmdbJ3N0YXR1cyddID0gJ1N0YXR1cyAnOwokbGFuZ1snc3VibWl0J10gPSAnVXJmJm9zbGFzaDtyJzsKJGxhbmdbJ3N1bW1hcnl0ZW1wbGF0ZV9hZGRlZGl0J10gPSAnTGVnZyB0aWwvcmVkaWdlciBzYW1tZW5kcmFnc21hbCc7CiRsYW5nWydzdW1tYXJ5dGVtcGxhdGVzJ10gPSAnU2FtbWVuZHJhZ3NtYWwnOwokbGFuZ1snc3VtbWFyeXRlbXBsYXRldXBkYXRlZCddID0gJ1NhbW1lbmRyYWdzbWFsIG9wcGRhdGVydCc7CiRsYW5nWydzeXNkZWZhdWx0cyddID0gJ1RpbGJha2VzdGlsbCB0aWwgc3RhbmRhcmQnOwokbGFuZ1sndGVsZXBob25lJ10gPSAnVGVsZWZvbic7CiRsYW5nWyd0ZWxlcGhvbmV0ZXh0J10gPSAnVGVsZWZvbic7CiRsYW5nWyd0aXRsZV9jYXRlZ29yeWxpc3RfZGZsdHRlbXBsYXRlJ10gPSAnU3RhbmRhcmQga2F0ZWdvcmlsaXN0ZSBtYWwnOwokbGFuZ1sndGl0bGVfZGV0YWlsX2RmbHR0ZW1wbGF0ZSddID0gJ1N0YW5kYXJkIGRldGFsam1hbCc7CiRsYW5nWyd0aXRsZV9mcm9udGVuZGZvcm1fZGZsdHRlbXBsYXRlJ10gPSAnU3RhbmRhcmQgRm9ybnRlbmRza2plbWEgbWFsJzsKJGxhbmdbJ3RpdGxlX2ltcG9ydF9yZXBvcnQnXSA9ICdDU1YgaW1wb3J0IHJhcHBvcnQnOwokbGFuZ1sndGl0bGVfc2VhcmNoZm9ybV9kZmx0dGVtcGxhdGUnXSA9ICdTdGFuZGFyZCBzJm9zbGFzaDtrZXNramVtYSBtYWwnOwokbGFuZ1sndGl0bGVfc3VtbWFyeV9kZmx0dGVtcGxhdGUnXSA9ICdTdGFuZGFyZCBzYW1tZW5kcmFnc21hbCc7CiRsYW5nWyd0eXBlJ10gPSAnVHlwZSAnOwokbGFuZ1sndHlwZXRleHQnXSA9ICdUeXBlICc7CiRsYW5nWyd1cCddID0gJ09wcCc7CiRsYW5nWyd3ZWJzaXRlJ10gPSAnTmV0dHN0ZWQnOwokbGFuZ1snd2Vic2l0ZXRleHQnXSA9ICdOZXR0c3RlZCc7CiRsYW5nWyd5ZXMnXSA9ICdKYSc7CiRsYW5nWydxY2EnXSA9ICdQMC01MzY4NDkxMTUtMTMwNzk4MzQ5NTIxMCc7CiRsYW5nWyd1dG1hJ10gPSAnMTU2ODYxMzUzLjIwMjE0NjQ5MjguMTMxMDgxMDA4Ni4xMzEwODEwMDg2LjEzMTA4MTM5MzkuMic7CiRsYW5nWyd1dG16J10gPSAnMTU2ODYxMzUzLjEzMTA4MTAwODYuMS4xLnV0bWNzcj0oZGlyZWN0KXx1dG1jY249KGRpcmVjdCl8dXRtY21kPShub25lKSc7CiRsYW5nWyd1dG1jJ10gPSAnMTU2ODYxMzUzJzsKJGxhbmdbJ3V0bWInXSA9ICcxNTY4NjEzNTMuMS4xMC4xMzEwODEzOTM5JzsKPz4=]]></data>
	</file>
	<file>
	  <filename>/lang/ext/nl_NL.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2ludXNlJ10gPSAnaW4gZ2VicnVpayc7CiRsYW5nWydpbmZvX2ZpbHRlcl9oaWVyYXJjaHknXSA9ICdTcGVjaWZ5IGEgaGllcmFyY2h5IHN0cmluZyAob3IgcG9ydGlvbikgdG8gc2VhcmNoIG9uLiAgV2lsZGNhcmQgY2hhcmFjdGVycyBhcmUgYWNjZXB0ZWQsIGFuZCBtYXkgaW5jbHVkZSBjaGlsZCBoaWVyYXJjaGllcy4gIGkuZTogJnF1b3Q7Q2FycyomcXVvdDsuIFRoaXMgZmllbGQgaXMgbm90IGNhc2Ugc2Vuc2l0aXZlICc7CiRsYW5nWydpbmZvX2ZpbHRlcl9hZGRyZXNzJ10gPSAnU3BlY2lmeSBhbiBhZGRyZXNzIHN0cmluZyB0byBzZWFyY2ggb24uICBXaWxkY2FyZCBjaGFyYWN0ZXJzIGFyZSBhY2NlcHRlZC4gIGkuZTogJnF1b3Q7KlRleGFzKiZxdW90Oy4gVGhpcyBmaWVsZCBpcyBub3QgY2FzZSBzZW5zaXRpdmUgJzsKJGxhbmdbJ2luZm9fZmlsdGVyX25hbWUnXSA9ICdTcGVjaWZ5IGEgY29tcGFueSBuYW1lIChvciBwYXJ0aWFsIGNvbXBhbnkgbmFtZSB0byBzZWFyY2ggb24uICBXaWxkY2FyZCBjaGFyYWN0ZXJzIGFyZSBhY2NlcHRlZC4gIGkuZTogJnF1b3Q7KnJlc3RhcmF1bnQmcXVvdDsgVGhpcyBmaWVsZCBpcyBub3QgY2FzZSBzZW5zaXRpdmUgJzsKJGxhbmdbJ2Vycm9yX25vZmlsdGVybWF0Y2hlcyddID0gJ0VyIHppam4gZ2VlbiBkYXRhYmFzZSByZWNvcmRzIGdldm9uZGVuIGRpZSB2b2xkb2VuIGFhbiBkZSBvcGdlZ2V2ZW4gY3JpdGVyZWEuJzsKJGxhbmdbJ2VkaXRfZmlsdGVyJ10gPSAnV2lqemlnIEZpbHRlcic7CiRsYW5nWydzb3J0YnknXSA9ICdTb3J0ZWVyIG9wJzsKJGxhbmdbJ3BhZ2VsaW1pdCddID0gJ0l0ZW1zIFBlciBQYWdpbmEnOwokbGFuZ1snZmlsdGVyJ10gPSAnIEZpbHRlcic7CiRsYW5nWydyZXNldCddID0gJyBSZXNldCc7CiRsYW5nWydwYXJhbV9jYXRlZ29yeTInXSA9ICdBcHBsaWNhYmxlIG9ubHkgdG8gdGhlIDxlbT5kZWZhdWx0PC9lbT4gc3VtbWFyeSB2aWV3LCBhbmQgb25seSB3aGVuIHRoZSA8ZW0+Y2F0ZWdvcnk8L2VtPiBwYXJhbWV0ZXIgaXMgYWxzbyBzdXBwbGllZCB0aGlzIHBhcmFtZXRlciBhbGxvd3Mgc3BlY2lmeWluZyBhbiBhZGRpdGlvbmFsIEFORCBleHByZXNzaW9uIHRvIGluZGljYXRlIGFkZGl0aW9uYWwgKGNvbW1hIHNlcGFyYXRlZCkgY2F0ZWdvcmllcyB0aGF0IHRoZSByZXN1bHQgc2hvdWxkIGJlIGEgbWVtYmVyIG9mLiAgaS5lOiB7Q29tcGFueURpcmVjdG9yeSBjYXRlZ29yeT0mIzAzOTtyZWdpb25fbm9ydGgscmVnaW9uX3NvdXRoJiMwMzk7IGNhdGVnb3J5Mj0mIzAzOTtjYXJzLHRydWNrcyYjMDM5O30gd291bGQgcmV0dXJuIG9ubHkgdGhvc2UgY29tcGFuaWVzIHRoYXQgd2VyZSBpbiB0aGUgZWl0aGVyIG9mIHRoZSByZWdpb24gbm9ydGggb3IgcmVnaW9uIHNvdXRoIGNhdGVnb3JpZXMgQU5EIEFMU08gaW4gZWl0aGVyIG9mIHRoZSBjYXJzIG9yIHRydWNrcyBjYXRlZ29yaWVzJzsKJGxhbmdbJ3BhcmFtX2NhdGVnb3J5MyddID0gJ0FwcGxpY2FibGUgb25seSB0byB0aGUgPGVtPmRlZmF1bHQ8L2VtPiBzdW1tYXJ5IHZpZXcsIGFuZCBvbmx5IHdoZW4gdGhlIDxlbT5jYXRlZ29yeTI8L2VtPiBwYXJhbWV0ZXIgaXMgYWxzbyBzdXBwbGllZCB0aGlzIHBhcmFtZXRlciBhbGxvd3Mgc3BlY2lmeWluZyB5ZXQgYW4gYWRkaXRpb25hbCBBTkQgZXhwcmVzc2lvbiB0byBpbmRpY2F0ZSBhZGRpdGlvbmFsIChjb21tYSBzZXBhcmF0ZWQpIGNhdGVnb3JpZXMgdGhhdCB0aGUgcmVzdWx0IHNob3VsZCBiZSBhIG1lbWJlciBvZi4gU2VlIHRoZSBoZWxwIGZvciB0aGUgY2F0ZWdvcnkyIHBhcmFtZXRlciBmb3IgbW9yZSBpbmZvcm1hdGlvbiAnOwokbGFuZ1snYmFkbmFtZWdpdmVuJ10gPSAnRGV6ZSBuYWFtIGlzIG9uZ2VsZGlnIChuYW1lbiBtb2V0ZW4gVVJMLXZyaWVuZGVsaWprIHppam4pJzsKJGxhbmdbJ2N1cnJlbnRfdmFsdWUnXSA9ICdIdWlkaWdlIHdhYXJkZSc7CiRsYW5nWydwYXJhbV9mcm9udGVuZGxpc3R0ZW1wbGF0ZSddID0gJ0FwcGxpY2FibGUgb25seSB0byB0aGUgPGVtPmZyb250ZW5kbGlzdDwvZW0+IGFjdGlvbiwgdGhpcyBwYXJhbWV0ZXIgYWxsb3dzIHNwZWNpZnlpbmcgYSBub24gZGVmYXVsdCBmcm9udGVuZCBsaXN0IHRlbXBsYXRlIHRvIHVzZSBmb3IgcmVuZGVyaW5nIHRoZSBvdXRwdXQgJzsKJGxhbmdbJ3BhcmFtX3Jlc3VsdHBhZ2UnXSA9ICdBcHBsaWNhYmxlIHRvIHRoZSA8ZW0+c2VhcmNoPC9lbT4gYWN0aW9uLCB0aGlzIHBhcmFtZXRlciBhbGxvd3Mgc3BlY2lmeWluZyB3aGF0IHBhZ2Ugc2hvdWxkIGJlIHVzZWQgZm9yIGRpc3BsYXlpbmcgbWF0Y2hpbmcgcmVzdWx0cy4gJzsKJGxhbmdbJ3BhcmFtX25hbWUnXSA9ICdBcHBsaWNhYmxlIG9ubHkgdG8gdGhlIGRlZmF1bHQgPGVtPihzdW1tYXJ5KTwvZW0+IGFjdGlvbiwgdGhpcyBwYXJhbWV0ZXIgYWxsb3dzIGZpbHRlcmluZyBjb21wYW5pZXMgYnkgdGhlaXIgbmFtZS4gIFdpbGRjYXJkIGNoYXJhY3RlcnMgYXJlIGFsbG93ZWQuICBpLmU6IG5hbWU9JnF1b3Q7YSomcXVvdDsgJzsKJGxhbmdbJ2Vycm9yX2R1cGxpY2F0ZSddID0gJ0ZvdXQgYmlqIGhldCBhYW5tYWtlbiAobWFhciBnYWF0IGRvb3IpJzsKJGxhbmdbJ2Vycm9yX3VwZGF0ZV9jb21wYW55J10gPSAnRm91dCBiaWogaGV0IGJpandlcmtlbiB2YW4gZWVuIGJlZHJpamZzcmVjb3JkJzsKJGxhbmdbJ2lnbm9yZSddID0gJ05lZ2Vlcic7CiRsYW5nWydvdmVyd3JpdGUnXSA9ICdPdmVyc2NocmlqZic7CiRsYW5nWydjYXRlZ29yeWRlbGV0ZWQnXSA9ICdDYXRlZ29yaWUgdmVyd2lqZGVyZCc7CiRsYW5nWydwcm9tcHRfY3JlYXRlX3VybCddID0gJ01hYWsgVVJMIHZvb3IgcmVjb3JkcyB6b25kZXIgVVJMJzsKJGxhbmdbJ2luZm9fY3JlYXRlX3VybCddID0gJ0FscyBlciBnZWVuIFVSTCBpcyBvcGdlZ2V2ZW4gdm9vciBlZW4gcmVjb3JkLCBkYW4gem9yZ3QgZGV6ZSBvcHRpZSBkYXQgZGUgVVJMIGFsc25vZyBhYW5nZW1hYWt0IHdvcmR0LiBJbmRpZW4gZGUgJiMwMzk7VmVyZWlzIFVSTCYjMDM5Oy1pbnN0ZWxsaW5nIGlzIGluZ2VzY2hha2VsZCwgZGFuIHp1bGxlbiBlciBVUkwmIzAzOTtzIHdvcmRlbiBhYW5nZW1hYWt0LCBvbmdlYWNodCBkZSB3YWFyZGUgdmFuIGRlemUgaW5zdGVsbGluZy4nOwokbGFuZ1sndXJsX2NyZWF0ZW9uY29weSddID0gJ0NyZSZldW1sO2VyIFVSTCYjMDM5O3MgYmlqIGhldCBrb3BpZXJlbic7CiRsYW5nWydpbmZvX3VybF9jcmVhdGVvbmNvcHknXSA9ICdXYW5uZWVyIHUgYmVkcmlqdmVuIGtvcGllZXJ0LCBkYW4gemFsIGVyIGVlbiBVUkwgd29yZGVuIGFhbmdlbWFha3Qgdm9vciBoZXQgYmVzdGVtbWluZ3NyZWNvcmQuIERpdCBpcyBhbGxlZW4gdmFuIHRvZXBhc3NpbmcgYWxzIFVSTCYjMDM5O3MgbmlldCB2ZXJlaXN0IHppam4uJzsKJGxhbmdbJ2Vycm9yX2JhdGNodXJsY3JlYXRlJ10gPSAnQmF0Y2ggVVJMIENyZWF0aW9uIHZlcm9vcnphYWt0ZSAlZCBmb3V0ZW4nOwokbGFuZ1snaW5mb19iYXRjaHVybGNyZWF0ZSddID0gJ0JhdGNoIFVSTCBDcmVhdGlvbiBoZWVmdCAlZCByZWNvcmRzIGJpamdld2Vya3QnOwokbGFuZ1snZXJyb3JfaW52YWxpZHVybCddID0gJ0RlIG9wZ2VnZXZlbiAob2YgYmVyZWtlbmRlKSBVUkwgaXMgb25nZWxkaWcnOwokbGFuZ1snZXJyb3JfaW52YWxpZG5hbWUnXSA9ICdEZSBiZWRyaWpmc25hYW0gaXMgb25nZWxkaWcnOwokbGFuZ1snZXJyb3JfdXJsbm90ZW1wdHknXSA9ICdIZXQgVVJMIHZlbGQgaXMgbmlldCBsZWVnLi4uIGthbiBnZWVuIGJlc3RhYW5kZSB3YWFyZGVuIG92ZXJzY2hyaWp2ZW4nOwokbGFuZ1snZXJyb3JfdXJscmVxdWlyZWQnXSA9ICdFZW4gVVJMIGludm9lcmVuIGlzIHZlcnBsaWNodCc7CiRsYW5nWydnZXR1cmwnXSA9ICdHZW5lcmVlciBVUkwnOwokbGFuZ1sndXJsX3JlcXVpcmVkJ10gPSAnRWVuIFVSTCBpbnZvZXJlbiBpcyB2ZXJwbGljaHQnOwokbGFuZ1snaW5mb191cmxfcmVxdWlyZWQnXSA9ICdNb2V0IGhldCBVUkwgdmVsZCB2b2xkb2VuIGFhbiBlZW4gZ2VsZGlnaGVpZHN2ZXJlaXN0ZSBiaWogaGV0IHRvZXZvZWdlbiBvZiBiZXdlcmtlbiB2YW4gZWVuIGJlZHJpamY/JzsKJGxhbmdbJ2NoZWNrJ10gPSAnQ29udHJvbGVlcic7CiRsYW5nWyd1cmwnXSA9ICdVUkwgJzsKJGxhbmdbJ2NyZWF0ZXVybHMnXSA9ICdNYWFrIFVSTCYjMDM5O3MnOwokbGFuZ1snY29uZmlybV9hdXRvY3JlYXRlX3VybCddID0gJ0NyZSZldW1sO2VyIGF1dG9tYXRpc2NoIFVSTCYjMDM5O3Mgdm9vciBiZXN0YWFuZGUgcmVjb3JkcyB6b25kZXIgVVJMJzsKJGxhbmdbJ3VybF9yZWRpcmVjdG9sZCddID0gJ1ZlcnpvcmcgZWVuIDMwMSByZWRpcmVjdCBuYWFyIGRlIG5pZXV3ZSBVUkwmIzAzOTtzJzsKJGxhbmdbJ2luZm9fdXJsX3JlZGlyZWN0b2xkJ10gPSAnT24gYW4gaW5jb21pbmcgcmVxdWVzdCBmb3IgYSBjb21wYW55IHVzaW5nIHRoZSBvbGQgVVJMIHBhdHRlcm5zLCBwZXJmb3JtIGEgMzAxIHJlZGlyZWN0IHRvIHRoZSBuZXcgVVJMLiAgVGhpcyB3aWxsIG9ubHkgd29yayBmb3IgZW50cmllcyB0aGF0IGhhdmUgVVJMUyBjcmVhdGVkLic7CiRsYW5nWydpbmZvX3VybF9hdXRvY3JlYXRlJ10gPSAnV2hlbiBhZGRpbmcgb3IgZWRpdGluZyBhIGNvbXBhbnkgZGVmaW5pdGlvbiwgaWYgdGhlIFVSTCBmaWVsZCBpcyBibGFuayBvbmUgd2lsbCBiZSBjcmVhdGVkIGF1dG9tYXRpY2FsbHkgZnJvbSB0aGUgY29tcGFueSBuYW1lLiAgVGhpcyBkb2VzIG5vdCBhcHBseSB0byBmcm9udGVuZCBlZGl0aW5nJzsKJGxhbmdbJ3VybF9hdXRvY3JlYXRlJ10gPSAnQ3JlZSZldW1sO3IgYXV0b21hdGlzY2ggdW5pZWtlIFVSTCYjMDM5O3MnOwokbGFuZ1sndXJscyddID0gJ1VybCYjMDM5O3MnOwokbGFuZ1sncGFyYW1fc2VhcmNoYWRkcmVzcyddID0gJ1doZW4gZG9pbmcgYSBwb3N0YWwgY29kZSBzZWFyY2gsIHVzaW5nIHRoZSBzZWFyY2ggYWN0aW9uLCBpZiB0aGlzIG9wdGlvbiBpcyBlbmFibGVkLCB0aGUgYWRkcmVzcyBmaWVsZCB3aWxsIGFsc28gYmUgc2VhcmNoZWQgZm9yIHRoZSBtYXRjaGluZyBzdHJpbmcnOwokbGFuZ1sncGFyYW1fcG9zdGFsY2hhcnMnXSA9ICdXaGVuIGRvaW5nIGEgcG9zdGFsIGNvZGUgc2VhcmNoLCB1c2luZyB0aGUgc2VhcmNoIGFjdGlvbiwgdGhpcyBvcHRpb24gYWxsb3dzIGxpbWl0aW5nIHRoZSBlZmZlY3RpdmUgbnVtYmVyIG9mIGNoYXJhY3RlcnMgb25mIHRoZSBwb3N0YWwgY29kZSc7CiRsYW5nWydsYWJlbF9pbmNsdWRlY2hpbGRyZW4nXSA9ICdJbmNsdWRlIENoaWxkIEhpZXJhcmNoaWVzJzsKJGxhbmdbJ2FueSddID0gJ0FsbGUnOwokbGFuZ1snaW5mb19jYXRlZ29yeWNvbHVtbiddID0gJ1NwZWNpZnkgdGhlIG5hbWUgb2YgYSBjb2x1bW4gdGhhdCBzcGVjaWZpZXMgb25lIG9yIG1vcmUgY2F0ZWdvcnkgbmFtZXMgKHNlcGFyYXRlZCBieSBhIGNvbW1hIDxlbT4oLCk8ZW0+IFRoYXQgY2FuIGJlIHVzZWQgdG8gcXVpY2tseSBwb3B1bGF0ZSB0aGUgY2F0ZWdvcmllcyBmb3IgZWFjaCByZWNvcmQuJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeWNvbHVtbiddID0gJ0NhdGVnb3JpZSBLb2xvbSc7CiRsYW5nWydlcnJvcl9jYXRlZ29yeWNvbHVtbl9ub3Rmb3VuZCddID0gJ0NhdGVnb3JpZSBrb2xvbSAlcyBuaWV0IGdldm9uZGVuJzsKJGxhbmdbJ2V4cGlyZXMnXSA9ICdWZXJsb29wdCc7CiRsYW5nWydyZXNldF90b19mYWN0b3J5J10gPSAnUmVzZXQgbmFhciBzeXN0ZWVtIHN0YW5kYWFyZCc7CiRsYW5nWydwcm9tcHRfZW1haWxfaXNodG1sJ10gPSAnRS1tYWlsIGlzIGluIEhUTUwgb3Bib3V3JzsKJGxhbmdbJ3Byb21wdF9lbWFpbF9zdWJqZWN0J10gPSAnRS1tYWlsIE9uZGVyd2VycCc7CiRsYW5nWydwcm9tcHRfZW1haWxfdGVtcGxhdGUnXSA9ICdFLW1haWwgU2phYmxvb24nOwokbGFuZ1snZW1haWxfdGVtcGxhdGUnXSA9ICdFLW1haWwgU2phYmxvb24nOwokbGFuZ1snZmVlZGl0X2VtYWlsX3N1YmplY3QnXSA9ICdFciBpcyBlZW4gd2lqemlnaW5nIGFhbmdlYnJhY2h0IGFhbiBlZW4gQ29tcGFueURpcmVjdG9yeSBiZWRyaWpmJzsKJGxhbmdbJ3Byb21wdF9mZXVfZW1haWxncm91cCddID0gJ1dlbGtlIGFkbWluaXN0cmF0aWV2ZSBncm9lcCBtb2V0IG5vdGlmaWNhdGllIGUtbWFpbHMgb250dmFuZ2VuPyc7CiRsYW5nWydwcm9tcHRfZmV1X2VtYWlsb25hZGQnXSA9ICdWZXJzdHV1ciBlZW4gRS1tYWlsIGFscyBlZW4gRnJvbnRlbmQgZ2VicnVpa2VyIGVlbiBuaWV1dyBiZWRyaWpmIGFhbm1hYWt0JzsKJGxhbmdbJ3Byb21wdF9mZXVfZW1haWxvbmVkaXQnXSA9ICdWZXJzdHV1ciBlZW4gRS1tYWlsIGFscyBlZW4gRnJvbnRlbmQgZ2VicnVpa2VyIGVlbiBiZXN0YWFuZCBiZWRyaWpmIHdpanppZ3QnOwokbGFuZ1sncHJvbXB0X2ZldV9lbWFpbG9uZ3JvdXAnXSA9ICdBZG1pbiBncm9lcCBvbSBFLW1haWxzIG5hYXIgdGUgdmVyemVuZGVuJzsKJGxhbmdbJ3Byb21wdF9mZXVfZGlzcGxheV9zZXR0aW5ncyddID0gJ0Zyb250ZW5kIFNjaGVybSBJbnN0ZWxsaW5nZW4nOwokbGFuZ1sncHJvbXB0X2Zyb250ZW5kX3Nob3dleHBpcmVkJ10gPSAnVG9vbiBiZWRyaWp2ZW4gZGllIGFhbmdlbWFha3QgemlqbiBkb29yIHZlcmxvcGVuIEZyb250ZW5kIFVzZXJzJzsKJGxhbmdbJ2ZpZWxkX2ltYWdlJ10gPSAnQWZiZWVsZGluZyc7CiRsYW5nWydleHRyYTEnXSA9ICdFeHRyYSBkYXRhIDEnOwokbGFuZ1snZXh0cmEyJ10gPSAnRXh0cmEgZGF0YSAyJzsKJGxhbmdbJ2V4dHJhMyddID0gJ0V4dHJhIGRhdGEgMyc7CiRsYW5nWydsYmxfYmFjayddID0gJ1RlcnVnJzsKJGxhbmdbJ21zZ19jb21wYW55Y29waWVkJ10gPSAnQmVkcmlqZiBnZWtvcGllZXJkLi4uIHdpanppZyBkZSBiZWRyaWpmc2dlZ2V2ZW5zIHZvb3IgZGl0IG5pZXV3ZSBiZWRyaWpmJzsKJGxhbmdbJ2NvcHknXSA9ICdLb3BpZWVyJzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnRWVuIG1vZHVsZSB2b29yIGhldCBiaWpob3VkZW4gdmFuIGJlZHJpamZzZ2VnZXZlbnMuIEhpZXJtZWUga3VudCB1IGJlZHJpamZzZ2VnZXZlbnMgYmlqaG91ZGVuLCBpbXBvcnRlbiwgZXhwb3J0ZXJlbiwgZG9vcnpvZWtlbiwgZW4gaW4gdmVyc2NoaWxsZW5kZSBtYW5pZXJlbiBvcCBkZSB3ZWJzaXRlIHRvbmVuLiBEZXplIG1vZHVsZSB3ZXJrdCBnb2VkIHNhbWVuIG1ldCBDR0dvb2dsZU1hcHMuJzsKJGxhbmdbJ21zZ19pbXBvcnRfY29tcGxldGUnXSA9ICdJbXBvcnRlcmVuIGdlc2xhYWdkJzsKJGxhbmdbJ3Byb21wdF9oaWVyYXJjaGllc19pbXBvcnRlZCddID0gJ0hpZXJhcmNoaWUgUG9zaXRpZXMgQWFuZ2VtYWFrdCc7CiRsYW5nWydwcm9tcHRfaW1wb3J0X2hpZXJhcmNoeWRlZnMnXSA9ICdJbXBvcnRlZXIgSGllcmFyY2hpZSBSZWNvcmRzJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRfaGllcmFyY2h5dmFscyddID0gJ0ltcG9ydGVlciBIaWVyYXJjaGllIFdhYXJkZW4nOwokbGFuZ1snZXJyb3JfaW5zZXJ0X2hpZXJhcmNoeSddID0gJ0ZvdXQgYmlqIGhldCBhYW5tYWtlbiB2YW4gaGllcmFyY2hpZSAmcXVvdDslcyZxdW90Oyc7CiRsYW5nWydlcnJvcl9kdXBsaWNhdGVfaGllcmFyY2h5J10gPSAnRWVuIGhpZXJhcmNoaWUgbWV0IGRlIG5hYW0gJnF1b3Q7JXMmcXVvdDsgYmVzdGFhdCBhbC4nOwokbGFuZ1snY29tcGFueWRlbGV0ZWQnXSA9ICdCZWRyaWpmIHZlcndpamRlcmQnOwokbGFuZ1snZXJyb3JfdXBsb2FkJ10gPSAnRm91dCBvcGdldHJlZGVuIGJpaiBoZXQgdXBsb2FkZW4gdmFuIGhldCBiZXN0YW5kJzsKJGxhbmdbJ2Vycm9yX2RlbGltaXRlciddID0gJ1UgbW9ldCBlZW4gdmVsZHNjaGVpZGluZ3N0ZWtlbiBiZW5vZW1lbic7CiRsYW5nWydlcnJvcl9ub3Nwb3RzbGVmdCddID0gJ1UgaGVlZnQgZ2VlbiBsZWdlIGJlZHJpamZzcGxhYXRzZW4gbWVlcic7CiRsYW5nWydtc2dfc2xvdHN1c2VkJ10gPSAnVSBoZWVmdCAlZCB2YW4gJWQgYmVkcmlqZnNwbGFhdHNlbiBnZWJydWlrdCc7CiRsYW5nWydpbXBvcnRfZmlsZW5hbWUnXSA9ICdTZWxlY3RlZXIgQ1NWIEJlc3RhbmQnOwokbGFuZ1snZGVsaW1pdGVyJ10gPSAnU2NoZWlkaW5nc3Rla2VuIHZlbGRlbic7CiRsYW5nWydpbmZvX2NzdmZpbGUnXSA9ICdIZXQgaXMgbW9nZWxpamsgb20gYmVkcmlqZnNpbmZvcm1hdGllIHJlY2h0c3RyZWVrcyB0ZSBpbXBvcnRlcmVuIHVpdCBlZW4gQVNDSUkgYmVzdGFuZC4nOwokbGFuZ1sncHJvbXB0X2ltcG9ydF90ZW1wbGF0ZSddID0gJ0RpdCBzamFibG9vbiBpcyBlZW4gZm9ybXVsaWVyIGRpZSBnZWJydWlrdCB3b3JkdCBkb29yIGdlYXV0b3Jpc2VlcmRlIGZyb250ZW5kIHVzZXJzIG9tIGRhdGEgdGUgaW1wb3J0ZXJlbiB1aXQgZWVuIGdvZWQgb3BnZXN0ZWxkIENTViBiZXN0YW5kJzsKJGxhbmdbJ2Zyb250ZW5kaW1wb3J0dGVtcGxhdGUnXSA9ICdGcm9udGVuZCBDU1YgSW1wb3J0ZWVyIFNqYWJsb29uJzsKJGxhbmdbJ3Byb21wdF9mZXVfaW1wb3J0J10gPSAnU3RhIEZyb250ZW5kVXNlcnMgdG9lIG9tIG1ldCBDU1YgcmVjb3JkcyB0ZSBpbXBvcnRlcmVuPyc7CiRsYW5nWydwYXJhbV9oaWVybGlzdHRlbXBsYXRlJ10gPSAnU3BlY2lmaWNlZXIgZWVuIHNqYWJsb29uIChuYWFtKSBvbSB0ZSBnZWJydWlrZW4gaW4gZGUgaGllcmFyY2hpZSBsaWpzdCBvdmVyemljaHRlbi4nOwokbGFuZ1snaGllcmxpc3R0ZW1wbGF0ZV9hZGRlZGl0J10gPSAnVG9ldm9lZ2VuL3dpanppZ2VuIEhpZXJhcmNoaWUgTGlqc3QgU2phYmxvbmVuJzsKJGxhbmdbJ3RpdGxlX2hpZXJsaXN0X2RmbHR0ZW1wbGF0ZSddID0gJ1N0YW5kYWFyZCBIaWVyYXJjaGllIExpanN0IFNqYWJsb25lbic7CiRsYW5nWydoaWVyYXJjaHlsaXN0dGVtcGxhdGVzJ10gPSAnSGllcmFyY2hpZSBMaWpzdCBTamFibG9uZW4nOwokbGFuZ1sncGFyYW1faGllciddID0gJ1RvZXBhc2JhYXIgaW4gZGUgPGVtPmRlZmF1bHQ8L2VtPiBlbiA8ZW0+aGllcmxpc3Q8L2VtPiBhY3RpZXMsIGRlemUgcGFyYW1ldGVyIHN0YWF0IGhldCBiZW5vZW1lbiB2YW4gZWVuIGhpZXJhcmNoaWUgbmFhbSB2YW4gYmVkcmlqdmVuIHRvZS4gIEluIGRlIGRlZmF1bHQgYWN0aWUsIHdvcmRlbiB3aWxkY2FyZHMgZ2VhY2NlcHRlZXJkLCBiaWp2LjogJnF1b3Q7KnNvbWVoaWVyYXJjaHluYW1lKiZxdW90Oy4gIEFsIGhvZXdlbCBpbiBkZSBoaWVybGlzdCBhY3RpZSwgZGV6ZSBwYXJhbWV0ZXIgZWVuIHVuaWVrZSBuYWFtIG9mIGhpZXJhcmNoeSBwb3NpdGllIG1vZXQgYmV2YXR0ZW4sIGVuIHphbCBkZSBzdGFydCBsb2NhdGllIHZhbiBoZXQgb3ZlcnppY2h0IGJlcGFsZW4uJzsKJGxhbmdbJ21zZ19oaWVyZGVsZXRlZCddID0gJ0hpZXJhcmNoaWUgcG9zaXRpZSB2ZXJ3aWpkZXJkJzsKJGxhbmdbJ21zZ19oaWVydXBkYXRlZCddID0gJ0hpZXJhcmNoaWUgcG9zaXRpZSBiaWpnZXdlcmt0JzsKJGxhbmdbJ21zZ19oaWVyYWRkZWQnXSA9ICdIaWVyYXJjaGllIHBvc2l0aWUgdG9lZ2V2b2VnZCc7CiRsYW5nWydhZGRoaWVyJ10gPSAnSGllcmFyY2hpZSB0b2V2b2VnZW4nOwokbGFuZ1snaGllcmFyY2h5J10gPSAnSGllcmFyY2hpZSc7CiRsYW5nWydhZGRfZWRpdF9jYXRlZ29yeSddID0gJ1RvZXZvZWdlbi93aWp6aWdlbiBDYXRlZ29yaWUnOwokbGFuZ1snbGJsX3NldHRpbmdzJ10gPSAnSW5zdGVsbGluZ2VuJzsKJGxhbmdbJ2xibF90ZW1wbGF0ZXMnXSA9ICdTamFibG9uZW4nOwokbGFuZ1snbm9uZSddID0gJ0dlZW4nOwokbGFuZ1snb3duZXInXSA9ICdFaWdlbmFhcic7CiRsYW5nWydjcmVhdGVkJ10gPSAnR2VtYWFrdCc7CiRsYW5nWydtb2RpZmllZCddID0gJ0dld2lqemlnZCc7CiRsYW5nWydmcm9udGVuZGxpc3R0ZW1wbGF0ZV9hZGRlZGl0J10gPSAnVG9ldm9lZ2VuIG9mIHdpanppZ2VuIHZhbiBlZW4gRnJvbnRlbmQgTGlqc3QgU2phYmxvb24nOwokbGFuZ1sncHJvbXB0X2ZldV9jaGFuZ2Vfc3RhdHVzJ10gPSAnTWFnIGVlbiBmcm9udGVuZCBnZWJydWlrZXIgZGUgc3RhdHVzIHZhbiBlZW4gYmVkcmlqZiB3aWp6aWdlbj8nOwokbGFuZ1sncHJvbXB0X2ZldV9uZXdfc3RhdHVzJ10gPSAnU3RhbmRhYXJkIHN0YXR1cyB2b29yIG5pZXV3ZSByZWNvcmRzIGFhbmdlbWFha3QgdmlhIGRlIGZyb250ZW5kJzsKJGxhbmdbJ3RpdGxlX2Zyb250ZW5kbGlzdF9kZmx0dGVtcGxhdGUnXSA9ICdTdGFuZGFhcmQgRnJvbnRlbmQgTGlqc3QgU2phYmxvb24nOwokbGFuZ1snZnJvbnRlbmRsaXN0dGVtcGxhdGVzJ10gPSAnRnJvbnRlbmQgTGlqc3QgU2phYmxvbmVuJzsKJGxhbmdbJ3Byb21wdF9nZW5lcmFsX3NldHRpbmdzJ10gPSAnQWxnZW1lbmUgaW5zdGVsbGluZ2VuJzsKJGxhbmdbJ3Byb21wdF9mZXVfZWRpdF9zZXR0aW5ncyddID0gJ0Zyb250ZW5kIFdpanppZ2luZ3NpbnN0ZWxsaW5nZW4nOwokbGFuZ1sncHJvbXB0X2ZldV9jcmVhdGUnXSA9ICdNYWcgZWVuIEZyb250RW5kVXNlcnMgbmlldXdlIHJlY29yZHMgYWFubWFrZW4/JzsKJGxhbmdbJ3Byb21wdF9mZXVfbnVtcmVjb3JkcyddID0gJ01heGltYWFsIGFhbnRhbCByZWNvcmRzIGRhdCBrYW4gd29yZGVuIGdlYXNzb2NpZWVyZCBtZXQgZWVuIEZFVSBhY2NvdW50JzsKJGxhbmdbJ3Byb21wdF9udW1pbXBvcnRlZCddID0gJ0FhbnRhbCB0ZSBpbXBvcnRlcmVuIHJlY29yZHMnOwokbGFuZ1sncHJvbXB0X2R1cGxpY2F0ZV9uYW1lJ10gPSAnQ29udHJvbGVlciBvcCBkdWJiZWxlIGJlZHJpamZzbmFtZW4nOwokbGFuZ1sncHJvbXB0X3N0YXR1cyddID0gJ1N0YXR1cyB2YW4gZGUgZ2UmaXVtbDttcG9ydGVlcmRlIHJlY29yZCc7CiRsYW5nWydwcm9tcHRfaWdub3JlX2FkZHJlc3MnXSA9ICdOZWdlZXIgYWRyZXN2ZWxkJzsKJGxhbmdbJ3Byb21wdF9jb252ZXJ0X2FkZHJlc3MnXSA9ICdDb252ZXJ0ZWVyIGFkcmVzc2VuIG5hYXIgY28mb3VtbDtyZGluYXRlbiAoYWxzIGVyIGdlZW4gY28mb3VtbDtyZGluYXRlbiB6aWpuIGluZ2V2b2VyZCknOwokbGFuZ1sncHJvbXB0X2ttbGZpbGUnXSA9ICdUZSBpbXBvcnRlcmVuIEtNTCBiZXN0YW5kJzsKJGxhbmdbJ2ltcG9ydGttbCddID0gJ0ltcG9ydGVlciBLTUwnOwokbGFuZ1snaW1wb3J0X2ttbCddID0gJ0ltcG9ydGVlciBLTUwgQmVzdGFuZCc7CiRsYW5nWydzZWxlY3RvbmUnXSA9ICdLaWVzICZlYWN1dGU7JmVhY3V0ZTtuJzsKJGxhbmdbJ2Vycm9yX2ZldV9sb2dnZWRpbiddID0gJ09tIGRlemUgZnVuY3RpZSB0ZSBnZWJydWlrZW4gbW9ldCB1IGluZ2Vsb2dkIHppam4gb3AgZGUgd2Vic2l0ZSc7CiRsYW5nWydhY3RpdmUnXSA9ICdBY3RpZWYnOwokbGFuZ1snYWRkbGluayddID0gJ0xpbmsgdG9ldm9lZ2VuJzsKJGxhbmdbJ2FkZHJlc3MnXSA9ICdBZHJlcyc7CiRsYW5nWydhZGRyZXNzdGV4dCddID0gJ0FkcmVzJzsKJGxhbmdbJ2FkZGNhdGVnb3J5J10gPSAnQ2F0ZWdvcmllIHRvZXZvZWdlbic7CiRsYW5nWydhZGRjb21wYW55J10gPSAnQmVkcmlqZiB0b2V2b2VnZW4nOwokbGFuZ1snYWRkZmllbGRkZWYnXSA9ICdWZWxkZGVmaW5pdGllIHRvZXZvZWdlbic7CiRsYW5nWydhZG1pbl9vbmx5J10gPSAnQWxsZWVuIHppY2h0YmFhciB2b29yIGJlaGVlcmRlcic7CiRsYW5nWydhcmV5b3VzdXJlJ10gPSAnV2VldCB1IHpla2VyIGRhdCB1IGRpdCB3aWx0IHZlcndpamRlcmVuPyc7CiRsYW5nWydhc2NlbmRpbmcnXSA9ICdPcGxvcGVuZCc7CiRsYW5nWydjYW5jZWwnXSA9ICdBbm51bGVyZW4nOwokbGFuZ1snY2FudXNlcmVkaXQnXSA9ICdLdW5uZW4gZnJvbnRlbmQgZ2VicnVpa2VycyBkaXQgdmVsZCBiZXdlcmtlbj8nOwokbGFuZ1snY2FudXNlcnZpZXcnXSA9ICdLdW5uZW4gZnJvbnRlbmQgZ2VicnVpa2VycyBkaXQgdmVsZCB6aWVuPyc7CiRsYW5nWydjYXRlZ29yeSddID0gJ0NhdGVnb3JpZSc7CiRsYW5nWydjYXRlZ29yaWVzJ10gPSAnQ2F0ZWdvcmllJmV1bWw7bic7CiRsYW5nWydjYXRlZ29yeXRleHQnXSA9ICdDYXRlZ29yaWUnOwokbGFuZ1snY2F0ZWdvcnlhZGRlZCddID0gJ0NhdGVnb3JpZSB0b2VnZXZvZWdkJzsKJGxhbmdbJ2NhdGVnb3J5dXBkYXRlZCddID0gJ0NhdGVnb3JpZSBiaWpnZXdlcmt0JzsKJGxhbmdbJ2NhdGVnb3J5bGlzdHRlbXBsYXRlX2FkZGVkaXQnXSA9ICdDYXRlZ29yaWVsaWpzdHNqYWJsb29uIHRvZXZvZWdlbi9iZXdlcmtlbic7CiRsYW5nWydjYXRlZ29yeWxpc3R0ZW1wbGF0ZXMnXSA9ICdDYXRlZ29yaWVsaWpzdHNqYWJsb29uJzsKJGxhbmdbJ2NhdGVnb3J5bGlzdHRlbXBsYXRldXBkYXRlZCddID0gJ0NhdGVnb3JpZWxpanN0IGJpamdld2Vya3QnOwokbGFuZ1snY29tcGFueSddID0gJ0JlZHJpamYnOwokbGFuZ1snY29tcGFueWFkZGVkJ10gPSAnQmVkcmlqZiB0b2VnZXZvZWdkJzsKJGxhbmdbJ2NvbXBhbnluYW1lJ10gPSAnQmVkcmlqZnNuYWFtJzsKJGxhbmdbJ2NvbXBhbnl1cGRhdGVkJ10gPSAnQmVkcmlqZiBiaWpnZXdlcmt0JzsKJGxhbmdbJ2NvbXBhbmllcyddID0gJ0JlZHJpanZlbic7CiRsYW5nWydjb21wYW55dGV4dCddID0gJ0JlZHJpamYnOwokbGFuZ1snY29tcGFueWRpcmVjdG9yeSddID0gJ0NvbXBhbnkgRGlyZWN0b3J5ICc7CiRsYW5nWydjb250YWN0ZW1haWwnXSA9ICdDb250YWN0IEUtbWFpbCc7CiRsYW5nWydjcmVhdGVkZGF0ZSddID0gJ0RhdHVtIHRvZWdldm9lZ2QnOwokbGFuZ1snZGVmYXVsdHRlbXBsYXRlcyddID0gJ1N0YW5kYWFyZHNqYWJsb25lbic7CiRsYW5nWydkZWZhdWx0X3RlbXBsYXRlX25vdGljZSddID0gJzxzdHJvbmc+T3BtZXJraW5nOjwvc3Ryb25nPiBEZSBpbmhvdWQgdmFuIGRlemUgdGVrc3R2ZWxkZW4gd29yZGVuIGdlYnJ1aWt0IG9tIGRlIHN0YW5kYWFyZCBpbmhvdWQgdmFuIGRlIHNqYWJsb25lbiB0ZSBiZXBhbGVuIGFscyB1ICZxdW90O1NqYWJsb29uIHRvZXZvZWdlbiZxdW90OyBrbGlrdCwgaW4gaGV0IGp1aXN0ZSBzamFibG9vbiB0YWJibGFkLiBCZXdlcmtlbiB2YW4gZWVuIHZhbiBkZXplIHRla3N0ZW4gemFsIGdlZW4gZGlyZWN0IGVmZmVjdCBoZWJiZW4gb3AgdXcgd2Vic2l0ZS4gJzsKJGxhbmdbJ2RlbGV0ZSddID0gJ1ZlcndpamRlcmVuJzsKJGxhbmdbJ2RlbGV0ZWNhdGVnb3J5J10gPSAnQ2F0ZWdvcmllIHZlcndpamRlcmVuJzsKJGxhbmdbJ2RlbGV0ZWNvbXBhbnknXSA9ICdCZWRyaWpmIHZlcndpamRlcmVuJzsKJGxhbmdbJ2RlbGV0ZWZpZWxkZGVmJ10gPSAnVmVsZGRlZmluaXRpZSB2ZXJ3aWpkZXJlbic7CiRsYW5nWydkZXNjZW5kaW5nJ10gPSAnQWZsb3BlbmQnOwokbGFuZ1snZGVzY3JpcHRpb24nXSA9ICdCZXNjaHJpanZpbmcnOwokbGFuZ1snZGV0YWlscyddID0gJ0RldGFpbHMgJzsKJGxhbmdbJ2RldGFpbHN0ZXh0J10gPSAnRGV0YWlscyAnOwokbGFuZ1snZGV0YWlsdGVtcGxhdGVfYWRkZWRpdCddID0gJ0RldGFpbHNqYWJsb29uIHRvZXZvZWdlbi9iZXdlcmtlbic7CiRsYW5nWydkZXRhaWx0ZW1wbGF0ZXMnXSA9ICdEZXRhaWxzamFibG9vbic7CiRsYW5nWydkZXRhaWx0ZW1wbGF0ZXVwZGF0ZWQnXSA9ICdEZXRhaWxzamFibG9vbiBiaWpnZXdlcmt0JzsKJGxhbmdbJ2Rpc2FibGVkJ10gPSAnVWl0Z2VzY2hha2VsZCc7CiRsYW5nWydkb3duJ10gPSAnTmVlcic7CiRsYW5nWydkcmFmdCddID0gJ0NvbmNlcHQnOwokbGFuZ1snZWRpdCddID0gJ0Jld2Vya2VuJzsKJGxhbmdbJ2VkaXRjYXRlZ29yeSddID0gJ0NhdGVnb3JpZSBiZXdlcmtlbic7CiRsYW5nWydlZGl0Y29tcGFueSddID0gJ0JlZHJpamYgYmV3ZXJrZW4nOwokbGFuZ1snZWRpdGZpZWxkZGVmJ10gPSAnVmVsZGRlZmluaXRpZSBiZXdlcmtlbic7CiRsYW5nWydlbWFpbHRleHQnXSA9ICdFLW1haWwgJzsKJGxhbmdbJ2Vycm9yX2JhZHVwbG9hZCddID0gJ0VyIGlzIGVlbiBwcm9ibGVlbSBvcGdldHJlZGVuIGJpaiBoZXQgdXBsb2FkZW4gdmFuIGhldCBiZXN0YW5kJzsKJGxhbmdbJ2Vycm9yX2NvbXBhbnluYW1lJ10gPSAnQmVkcmlqZnNuYWFtIGlzIG9uZ2VsZGlnJzsKJGxhbmdbJ2Vycm9yX2NvbXBhbnluYW1lX2ludXNlJ10gPSAnRWVuIGJlZHJpamYgbWV0IGRlemUgbmFhbSBiZXN0YWF0IGFsIGluIGRlIGRhdGFiYXNlJzsKJGxhbmdbJ2Vycm9yX2R1cGxpY2F0ZV9jYXRlZ29yeSddID0gJ0VyIGJlc3RhYXQgYWwgZWVuIGNhdGVnb3JpZSBtZXQgZGV6ZSBuYWFtJzsKJGxhbmdbJ2Vycm9yX2R1cGxpY2F0ZV9jb21wYW55J10gPSAnRXIgYmVzdGFhdCBhbCBlZW4gYmVkcmlqZiBtZXQgZGV6ZSBuYWFtICglcyknOwokbGFuZ1snZXJyb3JfZHVwbGljYXRlX2ZpZWxkZGVmJ10gPSAnRXIgYmVzdGFhdCBhbCBlZW4gdmVsZCBtZXQgZGV6ZSBuYWFtJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydF9iYWRsaW5lJ10gPSAnRm91dGUgcmVjb3JkIGdldm9uZGVuIGluIHJlZ2VsICVkLiAgTWlzdCBlciBlZW4gcmVnZWw/JzsKJGxhbmdbJ2Vycm9yX2ltcG9ydF9iYWR2YWx1ZSddID0gJ0VyIGlzIGVlbiB2ZXJrZWVyZGUgd2FhcmRlIGdldm9uZGVuIHZvb3IgaGV0ICVzIHZlbGQnOwokbGFuZ1snZXJyb3JfaW1wb3J0X2R1cGxpY2F0ZXJ1bGUnXSA9ICdEdWJiZWxlICVzIHJlZ2VsIGJpaiByZWdlbCAlZCc7CiRsYW5nWydlcnJvcl9pbXBvcnRfZHVwbGljYXRlcnVsZV9pZGVudGlmaWVyJ10gPSAnRHViYmVsZSByZWdlbCBnZXZvbmRlbiBiaWogcmVnZWwgJWQnOwokbGFuZ1snZXJyb3JfaW1wb3J0X3Vua25vd25yb3cnXSA9ICdPbmR1aWRlbGlqayBob2UgcmVnZWwgJWQgbWV0IHJlZ2VsIHNsZXV0ZWwgJXMgdmVyd2Vya3QgZGllbnQgdGUgd29yZGVuJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydF91bmtub3ducnVsZSddID0gJ09uYmVrZW5kZSByZWdlbCBiaWogcmVnZWwgJWQnOwokbGFuZ1snZXJyb3JfaW5zZXJ0X2NhdGVnb3J5J10gPSAnRWVuIGRhdGFiYXNlIGZvdXQgaXMgb3BnZXRyZWRlbiB0aWpkZW5zIGhldCBhYW5tYWtlbiB2YW4gZWVuIGNhdGVnb3JpZSBkZWZpbml0aWUnOwokbGFuZ1snZXJyb3JfaW5zZXJ0X2NvbXBhbnknXSA9ICdFZW4gZGF0YWJhc2UgZm91dCBpcyBvcGdldHJlZGVuIHRpamRlbnMgaGV0IGFhbm1ha2VuIHZhbiBlZW4gYmVkcmlqZiBkZWZpbml0aWUnOwokbGFuZ1snZXJyb3JfaW5zZXJ0X2ZpZWxkZGVmJ10gPSAnRWVuIGRhdGFiYXNlIGZvdXQgaXMgb3BnZXRyZWRlbiB0aWpkZW5zIGhldCBhYW5tYWtlbiB2YW4gZWVuIHZlbGQgZGVmaW5pdGllJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRfcGFyYW0nXSA9ICdEZSBnZXNwZWNpZmljZWVyZGUgd2FhcmRlIHZvb3IgJXMgaXMgbmlldCBjb3JyZWN0JzsKJGxhbmdbJ2Vycm9yX21pc3Npbmd1cGxvYWQnXSA9ICdFciBpcyBnZWVuIGJlc3RhbmQgZ2UmdXVtbDtwbG9hZCc7CiRsYW5nWydlcnJvcl9taXNzaW5ncGFyYW0nXSA9ICdFZW4gdmVycGxpY2h0ZSB3YWFyZGUgaXMgbmlldCBhYW53ZXppZyBiaWogZGUgZm9ybXVsaWVyaW5nYXZlJzsKJGxhbmdbJ2Vycm9yX25vZHJvcGRvd25vcHRpb25zJ10gPSAnR2VlbiBkcm9wZG93biBvcHRpZXMgaW5nZXZvZXJkJzsKJGxhbmdbJ2Vycm9yX25vZmV1J10gPSAnS2FuIGRlIEZyb250RW5kVXNlcnMtbW9kdWxlIG5pZXQgdmluZGVuJzsKJGxhbmdbJ2Vycm9yX25vbGVuZ3RoJ10gPSAnR2VlbiBtYXhpbXVtIHZlbGRsZW5ndGUgaW5nZXZvZXJkJzsKJGxhbmdbJ2Vycm9yX25vcmVzdWx0c2ZvdW5kJ10gPSAnRXIga2FuIGdlZW4gcmVjb3JkIHdvcmRlbiBnZXZvbmRlbiBpbiBkZSBkYXRhYmFzZSBkaWUgYWFuIHV3IGNyaXRlcmlhIHZvbGRvZXQnOwokbGFuZ1snZXJyb3JfcG9zdGNvZGVfbG9va3VwJ10gPSAnS2FuIGdlZW4gaW5mb3JtYXRpZSB2aW5kZW4gYmlqIGRlIHBvc3Rjb2RlICVzJzsKJGxhbmdbJ2Vycm9yX3ByZWZpeF9tc2cnXSA9ICdFciBpcyBlZW4gZm91dCBvcGdldHJlZGVuIGJpaiByZWdlbCAlZDogJXMnOwokbGFuZ1snZXhwb3J0Y3N2J10gPSAnRXhwb3J0ZXJlbiBuYWFyIENTVic7CiRsYW5nWydmYXgnXSA9ICdGYXggJzsKJGxhbmdbJ2ZheHRleHQnXSA9ICdGYXggJzsKJGxhbmdbJ2ZpZWxkZGVmJ10gPSAnVmVsZGRlZmluaXRpZSc7CiRsYW5nWydmaWVsZGRlZnMnXSA9ICdWZWxkZGVmaW5pdGllcyc7CiRsYW5nWydmaWVsZGRlZnRleHQnXSA9ICdWZWxkZGVmaW5pdGllJzsKJGxhbmdbJ2ZpZWxkZGVmYWRkZWQnXSA9ICdWZWxkZGVmaW5pdGllIHRvZWdldm9lZ2QnOwokbGFuZ1snZmllbGRkZWZ1cGRhdGVkJ10gPSAnVmVsZGRlZmluaXRpZSBiaWpnZXdlcmt0JzsKJGxhbmdbJ2ZpZWxkZGVmZGVsZXRlZCddID0gJ1ZlbGRkZWZpbml0aWUgdmVyd2lqZGVyZCc7CiRsYW5nWydmaWVsZF9jaGVja2JveCddID0gJ1Zpbmt2YWtqZSc7CiRsYW5nWydmaWVsZF9kcm9wZG93biddID0gJ0Ryb3Bkb3duICc7CiRsYW5nWydmaWVsZF90ZXh0YXJlYSddID0gJ1Rla3N0IHJ1aW10ZSc7CiRsYW5nWydmaWVsZF90ZXh0Ym94J10gPSAnVGVrc3QgSW52b2VyJzsKJGxhbmdbJ2ZpcnN0cGFnZSddID0gJzw8ICc7CiRsYW5nWydmcm9udGVuZGZvcm10ZW1wbGF0ZV9hZGRlZGl0J10gPSAnRnJvbnRlbmQtZm9ybXVsaWVyc2phYmxvb24gdG9lZ2V2b2VnZC9iaWpnZXdlcmt0JzsKJGxhbmdbJ2Zyb250ZW5kZm9ybXRlbXBsYXRlcyddID0gJ0JlZHJpamZzc2phYmxvbmVuIGJld2Vya2VuJzsKJGxhbmdbJ2Zyb250ZW5kZm9ybXRlbXBsYXRldXBkYXRlZCddID0gJ0JlZHJpamZzc2phYmxvb24gYmlqZ2V3ZXJrdCc7CiRsYW5nWydoZWxwJ10gPSAnPGgzPldhdCBkb2V0IGhldD88L2gzPg0KPHA+RGV6ZSBtb2R1bGUgbWFha3QgaGV0IG1vZ2VsaWprIGluZm9ybWF0aWUgb3ZlciBiZWRyaWp2ZW4gdGUgdmVyemFtZWxlbiwgdGUgb3JnYW5pc2VyZW4gZW4gdGUgdG9uZW4uIE1lZXN0YWwgYmVzdGFhdCBkaXQgdWl0IGRlIGNvbnRhY3RpbmZvcm1hdGllIGVuIGVlbiBsb2dvLCBtYWFyIGRlIG1vZHVsZSBpcyBmbGV4aWJlbCBnZW5vZWcgb20gdWl0YnJlaWRiYXJlIHZlbGRlbiB0ZSBoZWJiZW4gZW4gcHVibGlla2UgZW4gcHJpdiZlYWN1dGU7IGluZm9ybWF0aWUgdGUgc2NoZWlkZW4uPC9wPg0KPHA+RGV6ZSBtb2R1bGUga2FuIHZvb3IgdmVyc2NoaWxsZW5kZSBkb2VsZW4gZ2VicnVpa3Qgd29yZGVuOiB2YW4gZWVuIGxldmVyYW5jaWVyc2xpanN0IHRvdCBlZW4gY29udGFjdGVubGlqc3QuPC9wPg0KPGgzPkhvZSBnZWJydWlrdCB1IGhldD88L2gzPg0KPHA+RGUgZWVudm91ZGlnc3RlIG1hbmllciBvbSBkZSBtb2R1bGUgdGUgZ2VicnVpa2VuIGlzIGRlIHRhZyA8Y29kZT57Q29tcGFueURpcmVjdG9yeX08L2NvZGU+IGluIGVlbiBzamFibG9vbiBvZiBwYWdpbmEgdGUgcGxhYXRzZW4uIFZlcnZvbGdlbnMga3VudCB1IHJlY29yZHMgZ2FhbiBiZXdlcmtlbiB2aWEgaGV0IGJlaGVlcnBhbmVlbC4gQmVraWprIGRlIHZlcnNjaGlsbGVuZGUgcGFyYW1ldGVycyAoaGllcm9uZGVyIGJlc2NocmV2ZW4pIHZvb3IgbWFuaWVyZW4gb20gaGV0IGdlZHJhZyB2YW4gZGUgbW9kdWxlIGFhbiB0ZSBwYXNzZW4uPC9wPg0KPGgzPkJldmVpbGlnaW5nPC9oMz4NCjxwPk9tIGJlZHJpanZlbiBiaW5uZW4gZGV6ZSBtb2R1bGUgdGUga3VubmVuIGJlaGVyZW4gbW9ldCBkZSBiZWhlcmVuZCBnZWJydWlrZXIgaGV0ICYjMDM5OzwvZW0+TW9kaWZ5IENvbXBhbnkgRGlyZWN0b3J5PC9lbT4mIzAzOTsgcmVjaHQgaGViYmVuLjwvcD4NCjxwPkhldCBiZXdlcmtlbiB2YW4gZGUgaW5nZWJvdXdkZSBzamFibG9uZW4sIHdhYXJtZWUgZGUgb3BtYWFrIHZhbiBkZSBiZWRyaWpmc2dpZHMgaW5mb3JtYXRpZSB3b3JkdCBiZWhlZXJzdCwgdmVyZWlzdCBoZXQgJiMwMzk7PGVtPk1vZGlmeSBUZW1wbGF0ZXM8L2VtPiYjMDM5OyByZWNodC48L3A+DQo8cD5PbSBkZSB2ZXJzY2hpbGxlbmRlIGluc3RlbGxpbmdlbiB0ZSBrdW5uZW4gYWFucGFzc2VuIGlzIGhldCAmIzAzOTs8ZW0+TW9kaWZ5IFNpdGUgUHJlZmVyZW5jZXM8L2VtPiYjMDM5OyByZWNodCB2ZXJlaXN0LjwvcD4NCjxoMz5QcmV0dHkgVVJMUzwvaDM+DQo8cD5EZSBmdW5jdGlvbmFsaXRlaXQgZW4gZGUgZmxleGliaWxpdGVpdCB3b3JkdCBnZXJlZHVjZWVyZCBhbHMgdSBwcmV0dHkgdXJsJiMwMzk7cyBnZWJydWlrdC4gSW4gZGF0IGdldmFsIG1vZXQgdSBiaWp2b29yYmVlbGQgZGUgdGFnIHZvb3IgZGV6ZSBtb2R1bGUgaW4gaGV0IHN0YW5kYWFyZCBpbmhvdWRzdGVrc3RnZWJpZWQgcGxhYXRzZW4gZW4gYWxzIHUgb3AgZWVuIGxpbmsga2xpa3Qgb2YgZWVuIGtub3AgdmFudWl0IGRlemUgbW9kdWxlIHZlcnplbmR0LCBkYW4ga29tdCB1IGFsdGlqZCB1aXQgb3AgaW4gc3RhbmRhYXJkIGluaG91ZHN0ZWtzdGdlYmllZC48L3A+JzsKJGxhbmdbJ2lkJ10gPSAnSUQnOwokbGFuZ1snaW5mb19kcm9wZG93bl9vcHRpb25zJ10gPSAnU3BlY2lmaWNlZXIgZGUgb3B0aWVzIHZvb3IgZGUgZHJvcGRvd24gY29udHJvbGUuICBFZW4gcmVnZWwgcGVyIG9wdGllLiAgU2NoZWlkdCBkZSB2YXJpYWJlbGVuIHZhbiBkZSB3YWFyZGVzIG1ldCBlZW4gPS4gIGJpanYuOiB2YXJpYWJlbGU9d2FhcmRlJzsKJGxhbmdbJ2ltYWdlY3VycmVudGhpZGRlbiddID0gJyAnOwokbGFuZ1snaW1hZ2V0ZXh0J10gPSAnQWZiZWVsZGluZyc7CiRsYW5nWydpbXBvcnRjc3YnXSA9ICdJbXBvcnRlZXIgQ1NWJzsKJGxhbmdbJ2xhdGl0dWRlJ10gPSAnTGF0aXR1ZGUgJzsKJGxhbmdbJ2xhc3RwYWdlJ10gPSAnPj4gJzsKJGxhbmdbJ2xvZ29jdXJyZW50aGlkZGVuJ10gPSAnICc7CiRsYW5nWydsb2dvdGV4dCddID0gJ0xvZ28gJzsKJGxhbmdbJ2xvbmdpdHVkZSddID0gJ0xvbmdpdHVkZSAnOwokbGFuZ1snbG9va3VwJ10gPSAnQ28mb3VtbDtyZGluYXRlbiBvcHpvZWtlbic7CiRsYW5nWydtYXhsZW5ndGgnXSA9ICdNYXguIGxlbmd0ZSc7CiRsYW5nWydtYXhfbGVuZ3RoJ10gPSAnTWF4LiBsZW5ndGUnOwokbGFuZ1snbWF4bGVuZ3RodGV4dCddID0gJ01heC4gbGVuZ3RlJzsKJGxhbmdbJ21vZGlmaWVkZGF0ZSddID0gJ0RhdHVtIGxhYXRzdGUgYWFucGFzc2luZyc7CiRsYW5nWyduYW1lJ10gPSAnTmFhbSc7CiRsYW5nWyduYW1ldGV4dCddID0gJ05hYW0nOwokbGFuZ1snbmVlZHBlcm1pc3Npb24nXSA9ICdVIGhlZWZ0ICYjMDM5OyVzJiMwMzk7IHJlY2h0ZW4gbm9kaWcgb20gZGV6ZSBmdW5jdGllIHVpdCB0ZSB2b2VyZW4uJzsKJGxhbmdbJ25vJ10gPSAnTmVlJzsKJGxhbmdbJ25vY29tcGFueW5hbWVnaXZlbiddID0gJ0dlZW4gYmVkcmlqZnNuYWFtIG9wZ2VnZXZlbic7CiRsYW5nWydub25hbWVnaXZlbiddID0gJ0dlZW4gbmFhbSBvcGdlZ2V2ZW4nOwokbGFuZ1snbm90YW51bWJlciddID0gJ0dlZW4gbnVtbWVyJzsKJGxhbmdbJ25leHRwYWdlJ10gPSAnPiAnOwokbGFuZ1snb2YnXSA9ICdWYW4nOwokbGFuZ1sncGFnZSddID0gJ1BhZ2luYSc7CiRsYW5nWydwYXJhbV9hY3Rpb24nXSA9ICdCZXBhYWwgaGV0IGhvb2ZkZ2VkcmFnIHZhbiBkZXplIG1vZHVsZS4gTW9nZWxpamtlIHdhYXJkZW4gdm9vciBkZXplIHBhcmFtZXRlciB6aWpuOg0KPHVsPg0KICA8bGk+Y2F0ZWdvcnlsaXN0IC0tIERpc3BsYXkgYSBsaXN0IG9mIGNhdGVnb3JpZXMuICBVc2VycyBjYW4gZHJpbGwgZG93biB0byBzdW1tYXJ5IG1vZGUsIGFuZCB0aGVuIHRvIGRldGFpbCBtb2RlLjwvbGk+DQogIDxsaT48c3Ryb25nPmRlZmF1bHQ8L3N0cm9uZz4gLS0gRGlzcGxheSBjb21wYW5pZXMgaW4gYSBzdW1tYXJ5IG1vZGUuPC9saT4NCiAgPGxpPmRldGFpbHMgLS0gRGlzcGxheSBkZXRhaWxlZCBpbmZvcm1hdGlvbiBhYm91dCBhIHNwZWNpZmljIGNvbXBhbnkuPC9saT4NCiAgPGxpPmZlX2VkaXQgLS0gRGlzcGxheSBhIGZvcm0gdG8gYWxsb3cgZWRpdGluZyBpbmZvcm1hdGlvbiBhYm91dCBhIHNwZWNpZmljIGNvbXBhbnkuPC9saT4NCjxsaT5mcm9udGVuZGxpc3QgLS0gRGlzcGxheSBsaXN0IG9mIGFsbCBvZiBhIHVzZXJzIGNvbXBhbnkgZW50cmllcyBvbiB0aGUgZnJvbnRlbmQsIHdpdGggdGhlIG9wdGlvbmFsIGFiaWxpdHkgdG8gYWRkIGl0ZW1zLjwvbGk+DQogIDxsaT5zZWFyY2ggIC0tIERpc3BsYXkgYSBmb3JtIHRvIGFsbG93IHNlYXJjaGluZyBmb3Igc3BlY2lmaWMgY29tcGFuaWVzLjwvbGk+DQogIDxsaT5icm93c2VoaWVyIC0tIERpc3BsYXkgYSBsaXN0IG9mIGhpZXJhcmNoaWVzLiAgVXNlcnMgY2FuIGRyaWxsIGRvd24gdG8gc3VtbWFyeSBtb2RlIGFuZCB0aGVuIHRvIGRldGFpbCBtb2RlLjwvbGk+DQogICANCjwvdWw+DQoNCic7CiRsYW5nWydwYXJhbV9pbmxpbmUnXSA9ICdBbGxlZW4gdG9lcGFzYmFhciBpbiBkZSA8ZW0+ZGVmYXVsdDwvZW0+IHN1bW1hcnksIGVuIDxlbT5zZWFyY2g8L2VtPiBtb2R1cywgZGV6ZSBwYXJhbWV0ZXIgbWFha3QgaGV0IG1vZ2VsaWprIG9tIHRlIHNwZWNpZmljZXJlbiBvZiBkZSByZXN1bHRhYXQgZ2VnZXZlbnMgaGV0IHN0YW5kYWFyZCBpbmhvdWRzIGJsb2sgZGllbnQgdGUgb3ZlcnNjaHJpanZlbiBvciBkZSBvcmlnaW5lbGUgdGFnIChpbmxpbmUpLic7CiRsYW5nWydwYXJhbV9zZWFyY2hmb3JtdGVtcGxhdGUnXSA9ICdBbGxlZW4gdG9lcGFzYmFhciBpbiBkZSA8ZW0+c2VhcmNoPC9lbT4gbW9kdXMsIGRlemUgcGFyYW1ldGVyIHN0YWF0IGhldCBzcGVjaWZpY2VyZW4gdmFuIGVlbiBuaWV0LXN0YW5kYWFyZCB6b2VrZm9ybXVsaWVyIHNqYWJsb29uIHRvZS4nOwokbGFuZ1sncGFyYW1fcGFnZWxpbWl0J10gPSAnSW5kaWVuIGdlYnJ1aWt0IGluIGRlIDxlbT5kZWZhdWx0PC9lbT4gc3VtbWFyeSBtb2R1cywgb2YgaW4gZGUgPGVtPnNlYXJjaDwvZW0+IG1vZHVzLCB6YWwgZGl0IGhldCByZXN1bHRhYXQgbGltaXRlcmVuIHRvdCBlZW4gZ2VzcGVjaWZpY2VlcmQgYWFudGFsLic7CiRsYW5nWydwYXJhbV9jYXRlZ29yeSddID0gJ0FscyBkZXplIHBhcmFtZXRlciwgd2FhcnZhbiBkZSBuYWFtIGdlbGlqayBtb2V0IHppam4gYWFuIGVlbiBiZXN0YWFuZGUgY2F0ZWdvcmllLCBpbiBkZSA8ZW0+c3RhbmRhYXJkPC9lbT5zYW1lbnZhdHRpbmdzbW9kdXMgd29yZHQgZ2VicnVpa3QsIGRhbiB3b3JkdCBkZXplIHBhcmFtZXRlciBhbGxlZW4gYmVudXQgb20gZGllIGJlZHJpanZlbiB0ZSB0b25lbiBkaWUgaW4gZGUgY2F0ZWdvcmllIHppdHRlbiAoZWVuIGtvbW1hZ2VzY2hlaWRlbiBsaWpzdCBrYW4gaGllciB3b3JkZW4gZ2VicnVpa3QpLic7CiRsYW5nWydwYXJhbV9jYXRlZ29yeWxpc3R0ZW1wbGF0ZSddID0gJ0dlZWYgZWVuIHNqYWJsb29uIChkZSBuYWFtKSBvcCBkaWUgZ2VicnVpa3Qgd29yZHQgYWxzIGRlIGNhdGVnb3JpZWxpanN0d2VlcmdhdmUgd29yZHQgZ2V0b29uZC4nOwokbGFuZ1sncGFyYW1fY29tcGFueWlkJ10gPSAnVmVyZWlzdCB2b29yIGRlIGZyb250LWVuZCBiZXdlcmstIGVuIGRldGFpbG1vZGkuIERlemUgcGFyYW1ldGVyIGJlcGFhbHQgd2VsayBiZWRyaWp2ZW5yZWNvcmQgYmV3ZXJrdCBvZiBiZWtla2VuIHdvcmR0Lic7CiRsYW5nWydwYXJhbV9kZXRhaWxwYWdlJ10gPSAnU3BlY2lmaWNlZXIgZWVuIHBhZ2luYS1hbGlhcyAoZGUgbmFhbSkgb20gdGUgZ2VicnVpa2VuIHZvb3Igd2VlcmdhdmUgdmFuIGVlbiBkZXRhaWxyZWNvcmQuIDxzdHJvbmc+TWVyayBvcDo8L3N0cm9uZz4gZGV6ZSB0YWctcGFyYW1ldGVyIGlzIG5pZXQgY29tcGF0aWJsZSBtZXQgcHJldHR5IHVybHMuJzsKJGxhbmdbJ3BhcmFtX2RldGFpbHRlbXBsYXRlJ10gPSAnU3BlY2lmaWNlZXIgZWVuIHNqYWJsb29uIChkZSBuYWFtKSBvbSB0ZSBnZWJydWlrZW4gdm9vciBkZSB3ZWVyZ2F2ZSB2YW4gZGUgZGV0YWlsd2VlcmdhdmUuICA8c3Ryb25nPk1lcmsgb3A6PC9zdHJvbmc+IGRlemUgdGFnLXBhcmFtZXRlciBpcyBuaWV0IGNvbXBhdGlibGUgbWV0IHByZXR0eSB1cmxzLic7CiRsYW5nWydwYXJhbV9mcm9udGVuZGZvcm10ZW1wbGF0ZSddID0gJ1NwZWNpZmljZWVyIGVlbiBzamFibG9vbiAoZGUgbmFhbSkgb20gdGUgZ2VicnVpa2VuIHZvb3IgaGV0IGZyb250LWVuZCBiZWRyaWp2ZW5iZXdlcmtmb3JtdWxpZXIuJzsKJGxhbmdbJ3BhcmFtX3Nob3dhbGwnXSA9ICdFbmtlbCB0b2VwYXNiYWFyIG9wIGRlIGNhdGVnb3J5bGlzdCBha3RpZS4gQWxzIGRlemUgcGFyYW1ldGVyIHdvcmR0IGdlemV0LCB3b3JkZW4gb29rIGNhdGVnb3JpZW4gdmFuIG5pZXQgbWF0Y2hlbmRlIGJlZHJpanZlbiB3ZWVyZ2VnZXZlbic7CiRsYW5nWydwYXJhbV9zb3J0b3JkZXInXSA9ICdTcGVjaWZpY2VlciBkZSB2b2xnb3JkZSB2YW4gZGUgc29ydGVlcnZlbGRlbiBpbiBkZSBzYW1lbnZhdHRpbmdzd2VlcmdhdmUuIE1vZ2VsaWprIHdhYXJkZW4gemlqbjoNCjx1bD4NCiAgPGxpPjxzdHJvbmc+YXNjPC9zdHJvbmc+IC0tIG9wbG9wZW5kZSB2b2xnb3JkZTwvbGk+DQogIDxsaT5kZXNjIC0tIGFmbG9wZW5kZSB2b2xnb3JkZTwvbGk+DQo8L3VsPic7CiRsYW5nWydwYXJhbV9zb3J0YnknXSA9ICdBbGxlZW4gdG9lcGFzYmFhciBpbiBkZSBzYW1lbnZhdHRpbmdzbW9kdXMsIGJlcGFhbHQgZGV6ZSBwYXJhbWV0ZXIgaGV0IHNvcnRlcmVuIHZhbiBkZSBiZWRyaWp2ZW51aXR2b2VyLiBNb2dlbGlqayB3YWFyZGVuIHppam46DQo8dWw+DQo8bGk+aWQgLS0gVGhlIGludGVybmFsIGNvbXBhbnkgaWQ8L2xpPg0KICA8bGk+PHN0cm9uZz5jb21wYW55X25hbWU8L3N0cm9uZz48L2xpPg0KICA8bGk+cGhvbmU8L2xpPg0KICA8bGk+ZmF4PC9saT4NCiAgPGxpPmVtYWlsPC9saT4NCiAgPGxpPndlYnNpdGUgLS0gVGhlIHdlYnNpdGUgdXJsPC9saT4NCiAgPGxpPmNyZWF0ZWQgLS0gVGhlIGNyZWF0aW9uIGRhdGUgZm9yIHRoaXMgY29tcGFueSByZWNvcmQ8L2xpPg0KICA8bGk+bW9kaWZpZWQgLS0gVGhlIG1vZGlmaWVkIGRhdGUgZm9yIHRoaXMgY29tcGFueSByZWNvcmQ8L2xpPg0KICA8bGk+c3RhdHVzPC9saT4NCiAgPGxpPnJhbmRvbSAtLSBTb3J0IHRoZSBpdGVtIHNyYW5kb21seS48L2xpPg0KICA8bGk+ZjpmaWVsZCBuYW1lIC0tIFNvcnQgYnkgcHVibGljIGN1c3RvbSBmaWVsZHMuIFRoZSBvdXRwdXQgd2lsbCBiZSBzb3J0ZWQgYnkgdGhlIG5hbWVkIGN1c3RvbSBmaWVsZC48YnIvPg0KICA8c3Ryb25nPk5vdGU6IDwvc3Ryb25nPiBZb3UgbWF5IG5lZWQgdG8gdXNlIHF1b3RlcyBpZiB0aGUgZmllbGQgbmFtZSBoYXMgc3BhY2VzLjxici8+DQogIDxzdHJvbmc+Tm90ZTogPC9zdHJvbmc+IFRoZSBmaWVsZCBzcGVjaWZpZWQgbXVzdCBiZSBtYXJrZWQgYXMgcHVibGljLjwvbGk+DQogIDxzdHJvbmc+Tm90ZTogPC9zdHJvbmc+IFdoZW4gdXNpbmcgY3VzdG9tIGZpZWxkIHNvcnRpbmcsIFlvdSBtYXkgYWxzbyBzcGVjaWZ5IGEgZmxhZyBhZnRlciB0aGUgZmllbGQgbmFtZSB0byBpbmRpY2F0ZSB0aGF0IGludGVnZXIgc29ydGluZyBzaG91bGQgYmUgcGVyZm9ybWVkLiAgaS5lOiA8Y29kZT5zb3J0Ynk9ZjpjdXN0b21fb3JkZXJpbmc6aTwvY29kZT48YnIvPg0KPC91bD4nOwokbGFuZ1sncGFyYW1fc3VtbWFyeXRlbXBsYXRlJ10gPSAnU3BlY2lmaWNlZXIgZWVuIHNqYWJsb29uIChkZSBuYWFtKSBvbSB0ZSBnZWJydWlrZW4gdm9vciBkZSB3ZWVyZ2F2ZSB2YW4gZGUgc2FtZW52YXR0aW5nc3dlZXJnYXZlLiAgPHN0cm9uZz5NZXJrIG9wOjwvc3Ryb25nPiBkZXplIHRhZy1wYXJhbWV0ZXIgaXMgbmlldCBjb21wYXRpYmxlIG1ldCBwcmV0dHkgdXJscy4nOwokbGFuZ1sncG9zdGFsX2NvZGUnXSA9ICdQb3N0Y29kZSc7CiRsYW5nWydwb3N0aW5zdGFsbCddID0gJ0RlIENvbXBhbnkgRGlyZWN0b3J5IG1vZHVsZSBpcyBnZSZpdW1sO25zdGFsbGVlcmQnOwokbGFuZ1sncG9zdHVuaW5zdGFsbCddID0gJ0RlIENvbXBhbnkgRGlyZWN0b3J5IG1vZHVsZSBpcyBnZWRlJml1bWw7bnN0YWxsZWVyZC4gQWxsZSBnZWtvcHBlbGRlIGJlZHJpamZzZ2VnZXZlbnMgemlqbiB2ZXJ3aWpkZXJkJzsKJGxhbmdbJ3ByZXVuaW5zdGFsbCddID0gJ1dlZXQgdSB6ZWtlciBkYXQgZGV6ZSBtb2R1bGUgZ2VkZSZpdW1sO25zdGFsbGVlcmQgbW9ldCB3b3JkZW4/IERlJml1bWw7bnN0YWxsZXJlbiB2ZXJ3aWpkZXJ0IGFsbGUgZ2Vrb3BwZWxkZSBiZWRyaWpmc2dlZ2V2ZW5zIHBlcm1hbmVudCEnOwokbGFuZ1sncHJldnBhZ2UnXSA9ICc8ICc7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcmllc19pbXBvcnRlZCddID0gJ0NhdGVnb3JpJmV1bWw7biBHZSZpdW1sO21wb3J0ZWVyZCc7CiRsYW5nWydwcm9tcHRfY2hlY2tfZHVwbGljYXRlcyddID0gJ0NvbnRyb2xlcmVuIG9wIGR1YmJlbGUgYmVkcmlqZnNuYW1lbj8nOwokbGFuZ1sncHJvbXB0X2NvbGxlY3RzdGF0cyddID0gJ1ZlcnphbWVsIFpvZWsgU3RhdGlzdGlla2VuJzsKJGxhbmdbJ3Byb21wdF9jb21wYW5pZXNfaW1wb3J0ZWQnXSA9ICdCZWRyaWp2ZW4gZ2UmaXVtbDttcG9ydGVlcmQnOwokbGFuZ1sncHJvbXB0X2RlbGltZXRlciddID0gJ1ZlbGQgU2NoZWlkaW5nc3Rla2VuJzsKJGxhbmdbJ3Byb21wdF9kZXRhaWxwYWdlJ10gPSAnRGUgc3RhbmRhYXJkcGFnaW5hIHdhYXJuYWFyIHdvcmR0IHZlcndlemVuIGluIGRlIGRldGFpbG1vZHVzJzsKJGxhbmdbJ3Byb21wdF9kcm9wZG93bl9vcHRpb25zJ10gPSAnRHJvcGRvd24gT3B0aWVzJzsKJGxhbmdbJ3Byb21wdF9maWVsZGRlZnNfaW1wb3J0ZWQnXSA9ICdWZWxkIGRlZmluaXRpZXMgZ2UmaXVtbDttcG9ydGVlcmQnOwokbGFuZ1sncHJvbXB0X2ltcG9ydF9jYXRlZ29yeWRlZnMnXSA9ICdOaWV0IGFhbndlemlnZSBjYXRlZ29yaSZldW1sO24gY3JlJmV1bWw7cmVuIGJpaiBoZXQgaW1wb3J0ZXJlbic7CiRsYW5nWydwcm9tcHRfaW1wb3J0X2NhdGVnb3J5dmFscyddID0gJ1Z1bGxlbiB2YW4gY2F0ZWdvcmllIHdhYXJkZW4gYmlqIGltcG9ydGVyZW4nOwokbGFuZ1sncHJvbXB0X2ltcG9ydF9jc3ZmaWxlJ10gPSAnVXBsb2FkIENTViBCZXN0YW5kJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRfZmllbGRkZWZzJ10gPSAnQWFubWFrZW4gbmlldCBhYW53ZXppZ2UgJnF1b3Q7YWRkaXRpb25hbCBmaWVsZCZxdW90OyBkZWZpbml0aWVzIHRpamRlbnMgaGV0IGltcG9ydGVyZW4nOwokbGFuZ1sncHJvbXB0X2ltcG9ydF9maWVsZHZhbHMnXSA9ICdWdWxsZW4gdmFuICZxdW90O2FkZGl0aW9uYWwgZmllbGQmcXVvdDsgd2FhcmRlbiBiaWogaW1wb3J0ZXJlbic7CiRsYW5nWydwcm9tcHRfaW1wb3J0X2xvb2t1cGxhdGxvbmcnXSA9ICdMYXRpdHVkZSBlbiBsb25naXR1ZGUgd2FhcmRlbiBvcHpvZWtlbiBpbmRpZW4gbmlldCBhYW53ZXppZyc7CiRsYW5nWydwcm9tcHRfcGFnZWxpbWl0J10gPSAnSGV0IGFhbnRhbCB3ZWVydGVnZXZlbiByZWNvcmRzIHBlciBwYWdpbmEgaW4gZGUgc2FtZW52YXR0aW5nc21vZHVzICc7CiRsYW5nWydwcm9tcHRfc3VtbWFyeXNvcnRpbmcnXSA9ICdTdGFuZGFhcmRzb3J0ZXJpbmcgaW4gZGUgc2FtZW52YXR0aW5nc21vZHVzJzsKJGxhbmdbJ3Byb21wdF9zdW1tYXJ5c29ydG9yZGVyJ10gPSAnRGUgc3RhbmRhYXJkc29ydGVlcnZvbGdvcmRlIGluIGRlIHNhbWVudmF0dGluZ3Ntb2R1cyA8ZW0+KGdlbGR0IG5pZXQgYWxzIGhldCBzb3J0ZXJlbiAmIzAzOTtyYW5kb20mIzAzOTsgaXM8L2VtPic7CiRsYW5nWydwcm9tcHRfdGVtcGxhdGUnXSA9ICdTamFibG9vbic7CiRsYW5nWydwdWJsaWMnXSA9ICdQdWJsaWVrJzsKJGxhbmdbJ3B1Ymxpc2hlZCddID0gJ0dlcHVibGljZWVyZCc7CiRsYW5nWydwcmVmZXJlbmNlcyddID0gJ1Zvb3JrZXVyZW4nOwokbGFuZ1sncmFkaXVzJ10gPSAnUmFkaXVzICc7CiRsYW5nWydyYW5kb20nXSA9ICdXaWxsZWtldXJpZyc7CiRsYW5nWydyZXR1cm4nXSA9ICdUZXJ1Zyc7CiRsYW5nWydyZXNldHRvZmFjdG9yeSddID0gJ0hlcnN0ZWwgbmFhciBzdGFuZGFhcmQnOwokbGFuZ1sncmVzdG9yZXRvZGVmYXVsdHNtc2cnXSA9ICdEZXplIGJld2Vya2luZyB6YWwgZGUgc2phYmxvb25pbmhvdWQgaGVyc3RlbGxlbiBuYWFyIGRlIHN5c3RlZW1zdGFuZGFhcmQuIFdlZXQgdSB6ZWtlciBkYXQgdSB2ZXJkZXIgd2lsdCBnYWFuPyc7CiRsYW5nWydzZWFyY2gnXSA9ICdab2VrJzsKJGxhbmdbJ3NlYXJjaGVzJ10gPSAnWm9la29wZHJhY2h0ZW4nOwokbGFuZ1snc2VhcmNoZm9ybXRlbXBsYXRlcyddID0gJ1pvZWsgRm9ybXVsaWVyIFNqYWJsb25lbic7CiRsYW5nWydzZWFyY2hmb3JtdGVtcGxhdGVfYWRkZWRpdCddID0gJ1RvZXZvZWdlbiAvIHdpanppZ2VuIHZhbiBlZW4gWm9layBGb3JtdWxpZXIgU2phYmxvb24nOwokbGFuZ1snc3RhdHVzJ10gPSAnU3RhdHVzICc7CiRsYW5nWydzdWJtaXQnXSA9ICdWZXJzdHVyZW4nOwokbGFuZ1snc3VtbWFyeXRlbXBsYXRlX2FkZGVkaXQnXSA9ICdTYW1lbnZhdHRpbmdzc2phYmxvb24gdG9ldm9lZ2VuL2Jld2Vya2VuJzsKJGxhbmdbJ3N1bW1hcnl0ZW1wbGF0ZXMnXSA9ICdTYW1lbnZhdHRpbmdzc2FibG9uZW4nOwokbGFuZ1snc3VtbWFyeXRlbXBsYXRldXBkYXRlZCddID0gJ1NhbWVudmF0dGluZ3NzamFibG9vbiBiaWpnZXdlcmt0JzsKJGxhbmdbJ3N5c2RlZmF1bHRzJ10gPSAnU3RhbmRhYXJkd2FhcmRlbiBoZXJzdGVsbGVuJzsKJGxhbmdbJ3RlbGVwaG9uZSddID0gJ1RlbGVmb29uJzsKJGxhbmdbJ3RlbGVwaG9uZXRleHQnXSA9ICdUZWxlZm9vbic7CiRsYW5nWyd0aXRsZV9jYXRlZ29yeWxpc3RfZGZsdHRlbXBsYXRlJ10gPSAnU3RhbmRhYXJkIENhdGVnb3JpZWxpanN0c2phYmxvb24nOwokbGFuZ1sndGl0bGVfZGV0YWlsX2RmbHR0ZW1wbGF0ZSddID0gJ1N0YW5kYWFyZCBEZXRhaWxzamFibG9vbic7CiRsYW5nWyd0aXRsZV9mcm9udGVuZGZvcm1fZGZsdHRlbXBsYXRlJ10gPSAnU3RhbmRhYXJkIEZyb250ZW5kIGZvcm11bGllcnNqYWJsb29uJzsKJGxhbmdbJ3RpdGxlX2ltcG9ydF9yZXBvcnQnXSA9ICdDU1YgSW1wb3J0IFJhcHBvcnQnOwokbGFuZ1sndGl0bGVfc2VhcmNoZm9ybV9kZmx0dGVtcGxhdGUnXSA9ICdTdGFuZGFhcmQgWm9layBGb3JtdWxpZXIgU2phYmxvb24nOwokbGFuZ1sndGl0bGVfc3VtbWFyeV9kZmx0dGVtcGxhdGUnXSA9ICdTdGFuZGFhcmQgU2FtZW52YXR0aW5nc3NqYWJsb29uJzsKJGxhbmdbJ3R5cGUnXSA9ICdUeXBlICc7CiRsYW5nWyd0eXBldGV4dCddID0gJ1R5cGUgJzsKJGxhbmdbJ3VwJ10gPSAnT3AnOwokbGFuZ1snd2Vic2l0ZSddID0gJ1dlYnNpdGUgJzsKJGxhbmdbJ3dlYnNpdGV0ZXh0J10gPSAnV2Vic2l0ZSAnOwokbGFuZ1sneWVzJ10gPSAnSmEnOwokbGFuZ1sndXRtYSddID0gJzE1Njg2MTM1My40MTY0NzM1NTIuMTMyMjkwMDg5Ny4xMzIzNjk0NzQxLjEzMjM3MDIyNzEuNic7CiRsYW5nWyd1dG16J10gPSAnMTU2ODYxMzUzLjEzMjI5MDA4OTcuMS4xLnV0bWNjbj0oZGlyZWN0KXx1dG1jc3I9KGRpcmVjdCl8dXRtY21kPShub25lKSc7CiRsYW5nWydxY2EnXSA9ICdQMC04NTY2MTc0NjctMTMxMDM3MDM1MjU4OCc7CiRsYW5nWyd1dG1iJ10gPSAnMTU2ODYxMzUzJzsKJGxhbmdbJ3V0bWMnXSA9ICcxNTY4NjEzNTMnOwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lang/ext/pl_PL.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2FjdGl2ZSddID0gJ0FrdHl3bnknOwokbGFuZ1snYWRkbGluayddID0gJ0RvZGFqIGxpbmsnOwokbGFuZ1snYWRkcmVzcyddID0gJ0FkcmVzJzsKJGxhbmdbJ2FkZHJlc3N0ZXh0J10gPSAnQWRyZXMnOwokbGFuZ1snYWRkY2F0ZWdvcnknXSA9ICdEb2RhaiBrYXRlZ29yacSZJzsKJGxhbmdbJ2FkZGNvbXBhbnknXSA9ICdEb2RhaiBmaXJtxJknOwokbGFuZ1snYWRkZmllbGRkZWYnXSA9ICdEb2RhaiBkZWZpbmljasSZIHBvbGEnOwokbGFuZ1snYWRtaW5fb25seSddID0gJ1dpZG9jem5lIHR5bGtvIGRsYSBBZG1pbmEnOwokbGFuZ1snYXJleW91c3VyZSddID0gJ0N6eSBuYSBwZXdubyBjaGNlc3ogdG8gdXN1bsSFxIc/JzsKJGxhbmdbJ2FzY2VuZGluZyddID0gJ1Jvc27EhWNvJzsKJGxhbmdbJ2NhbmNlbCddID0gJ1dyJm9hY3V0ZTvEhyc7CiRsYW5nWydjYW51c2VyZWRpdCddID0gJ0N6eSBVxbx5dGtvd25pY3kgRkVVIG1vZ8SFIGVkeXRvd2HEhyB0byBwb2xlPyc7CiRsYW5nWydjYW51c2VydmlldyddID0gJ0N6eSBVxbx5dGtvd25pY3kgRkVVIG1vZ8SFIG9nbMSFZGHEhyB0byBwb2xlPyc7CiRsYW5nWydjYXRlZ29yeSddID0gJ0thdGVnb3JpYSc7CiRsYW5nWydjYXRlZ29yaWVzJ10gPSAnS2F0ZWdvcmllJzsKJGxhbmdbJ2NhdGVnb3J5dGV4dCddID0gJ0thdGVnb3JpYSc7CiRsYW5nWydjYXRlZ29yeWFkZGVkJ10gPSAnS2F0ZWdvcmlhIHpvc3RhxYJhIGRvZGFuYSc7CiRsYW5nWydjYXRlZ29yeXVwZGF0ZWQnXSA9ICdLYXRlZ29yaWEgem9zdGHFgmEgemFrdHVhbGl6b3dhbmEnOwokbGFuZ1snY2F0ZWdvcnlsaXN0dGVtcGxhdGVfYWRkZWRpdCddID0gJ0RvZGFqL0VkeXR1aiBzemFibG9uIGxpc3R5IGthdGVnb3JpaSc7CiRsYW5nWydjYXRlZ29yeWxpc3R0ZW1wbGF0ZXMnXSA9ICdTemFibG9ueSBsaXN0eSBrYXRlZ29yaWknOwokbGFuZ1snY2F0ZWdvcnlsaXN0dGVtcGxhdGV1cGRhdGVkJ10gPSAnTGlzdGEga2F0ZWdvcmlpIHpvc3RhxYJhIHpha3R1YWxpem93YW5hJzsKJGxhbmdbJ2NoYW5nZWxvZyddID0gJzx1bD4NCiAgPGxpPjEuMS42IC0gSnVseSwgMjAwOCA8ZW0+KGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpPC9lbT4NCiAgICA8dWw+DQogICAgICA8bGk+QWRkIHRoZSBzaG93YWxsIHBhcmFtZXRlciB0byB0aGUgY2F0ZWdvcnlsaXN0IGFjdGlvbi48L2xpPg0KICAgICAgPGxpPlNwbGl0IG91dCBhIGNvdXBsZSBvZiBtb3JlIGZpbGVzLjwvbGk+DQogICAgPC91bD4NCiAgPC9saT4NCiAgPGxpPjEuMS41IC0gSnVuZSwgMjAwOCA8ZW0+KGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpPC9lbT4NCiAgICA8dWw+DQogICAgICA8bGk+Rml4IGEgbWlub3IgaXNzdWUgd2l0aCBwcmVmZXJlbmNlczwvbGk+DQogICAgICA8bGk+Rml4IHNvbWUgcXVlcmllcyB0aGF0IHdlcmUgbm90IHVzaW5nIGNtc19kYl9wcmVmaXg8L2xpPg0KICAgIDwvdWw+DQogIDwvbGk+DQogIDxsaT4xLjEuNCAtIEp1bmUsIDIwMDggPGVtPihjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKTwvZW0+DQogICAgPHVsPg0KICAgICAgPGxpPkZpeCB0byB0aGUgdGFiczwvbGk+DQogICAgICA8bGk+TWlub3IgZml4IHRvIHRoZSBzdGF0dXMgZmllbGQgd2hlbiBlZGl0aW5nIGEgY29tcGFueS48L2xpPg0KICAgICAgPGxpPk1pbm9yIGZpeCB0byB0aGUgY2hlY2tib3ggY3VzdG9tIGZpZWxkcyB3aGVuIGVkaXRpbmcgYSBjb21wYW55LjwvbGk+DQogICAgICA8bGk+Rml4IHRvIENTViBFeHBvcnQuPC9saT4NCiAgICAgIDxsaT5GaXggdG8gdGhlIHByZWZlcmVuY2VzIHRhYi48L2xpPg0KICAgIDwvdWw+DQogIDwvbGk+DQogIDxsaT4xLjEuMyAtIEZlYnJ1YXJ5LCAyMDA4IDxlbT4ocmNhbXBiZWxsQHNraW5ueWZpc2htZWRpYS5jb20pPC9lbT4NCiAgICA8dWw+DQogICAgICA8bGk+QWRkcyBwYWdpbmF0aW9uIHRvIHN1bW1hcnkgdmlldzwvbGk+DQogICAgICA8bGk+Rml4ZXMgYSBwcm9ibGVtIHdpdGggcHJldHR5IHVybHMgaW4gc3VtbWFyeSB2aWV3PC9saT4NCiAgICAgIDxsaT5GaXhlcyBhIHByb2JsZW0gd2l0aCB0aGUgc29ydCBvcmRlciBwcmVmZXJlbmNlczwvbGk+DQogICAgICA8bGk+KF9TakcpIC0gSW1wbGVtZW50cyB0c3cmIzAzOTtzIHBhdGNoIGZvciBjdXN0b20gZmllbGRzIGluIHRoZSBzdW1tYXJ5IHRlbXBsYXRlPC9saT4NCiAgICA8L3VsPg0KICA8L2xpPg0KICA8bGk+MS4xLjIgLSBOb3ZlbWJlciwgMjAwNyA8ZW0+KHJjYW1wYmVsbEBza2lubnlmaXNobWVkaWEuY29tKTwvZW0+DQogICAgPHVsPg0KICAgICAgPGxpPk5vdyB1c2UgY21zX21vdmVfdXBsb2FkZWRfZmlsZSBpbnN0ZWFkIG9mIG1vdmVfdXBsb2FkZWRfZmlsZTwvbGk+DQogICAgICA8bGk+UmVxdWlyZSBDTVMgMS4yLjEgb3IgbGF0ZXI8L2xpPg0KICAgIDwvdWw+DQogIDwvbGk+DQogIDxsaT4xLjEuMSAtIE5vdmVtYmVyLCAyMDA3IDxlbT4ocmNhbXBiZWxsQHNraW5ueWZpc2htZWRpYS5jb20pPC9lbT4NCiAgICA8dWw+DQogICAgICA8bGk+Rml4ZWQgYSBwcm9ibGVtIHdpdGggdGhlIGRldGFpbCBsaW5rcyBpbiBzdW1tYXJ5IG1vZGUgd2hlbiBwcmV0dHkgdXJscyB3ZXJlIGRpc2FibGVkLjwvbGk+DQogICAgPC91bD4NCiAgPC9saT4NCiAgPGxpPjEuMSAtIFNlcHRlbWJlciwgMjAwNyA8ZW0+KHJjYW1wYmVsbEBza2lubnlmaXNobWVkaWEuY29tKTwvZW0+DQogICAgPHVsPg0KICAgICAgPGxpPkFkZGVkIHN1cHBvcnQgZm9yIHByZXR0eSB1cmxzPC9saT4NCiAgICAgIDxsaT5GaWxsZWQgb3V0IHRoZSBoZWxwPC9saT4NCiAgICAgIDxsaT5BZGRlZCBhIGNhdGVnb3J5IGxpc3QgbW9kZTwvbGk+DQogICAgICA8bGk+QWRkZWQgc3VwcG9ydCBmb3IgZnJvbnRlbmQgZWRpdGluZyBvZiBjb21wYW5pZXM8L2xpPg0KICAgICAgPGxpPkFkZGVkIHN1cHBvcnQgZm9yIHB1YmxpYyBhbmQgYWRtaW4gb25seSBmaWVsZHMgaW4gY29tcGFuaWVzPC9saT4NCiAgICAgIDxsaT5BZGRlZCBkaWZmZXJlbnQgc29ydGluZyBjYXBhYmlsaXRpZXMgaW4gc3VtbWFyeSB2aWV3PC9saT4NCiAgICAgIDxsaT5DaGFuZ2VkIE1pbmltdW0gQ01TIFZlcnNpb24gYW5kIGFkZGVkIHN1cHBvcnQgZm9yIHRoZSAxLjEgc2VyaWVzPC9saT4NCiAgICA8L3VsPg0KICA8L2xpPg0KPC91bD4nOwokbGFuZ1snY29tcGFueSddID0gJ0Zpcm1hJzsKJGxhbmdbJ2NvbXBhbnlhZGRlZCddID0gJ0Zpcm1hIGRvZGFuYSc7CiRsYW5nWydjb21wYW55bmFtZSddID0gJ05hendhIGZpcm15JzsKJGxhbmdbJ2NvbXBhbnl1cGRhdGVkJ10gPSAnRmlybWEgemFrdHVhbGl6b3dhbmEnOwokbGFuZ1snY29tcGFuaWVzJ10gPSAnRmlybXknOwokbGFuZ1snY29tcGFueXRleHQnXSA9ICdGaXJtYSc7CiRsYW5nWydjb21wYW55ZGlyZWN0b3J5J10gPSAnS2F0YWxvZyBmaXJtJzsKJGxhbmdbJ2NvbnRhY3RlbWFpbCddID0gJ0VtYWlsIGtvbnRha3Rvd3knOwokbGFuZ1snY3JlYXRlZGRhdGUnXSA9ICdXcGlzYW5hIGRhdGEnOwokbGFuZ1snZGVmYXVsdHRlbXBsYXRlcyddID0gJ1N6YWJsb255IGRvbXnFm2xuZSc7CiRsYW5nWydkZWZhdWx0X3RlbXBsYXRlX25vdGljZSddID0gJzxzdHJvbmc+VXdhZ2E6PC9zdHJvbmc+IFRyZcWbxIcgdHljaCBwJm9hY3V0ZTtsIHRla3N0b3d5Y2ggamVzdCB1xbx5d2FuYSBieSBva3JlxZtsacSHIGRvbXnFm2xuxIUgdHJlxZvEhyBzemFibG9udSBzdHJvbnksIGt0Jm9hY3V0ZTtyYSBwb2thxbxlIHNpxJksIGdkeSBrbGlrbmllc3ogJnF1b3Q7RG9kYWogc3phYmxvbiZxdW90OyB3IG9kcG93aWVkbmllaiB6YWvFgmFkY2Ugc3phYmxvbiZvYWN1dGU7dy4gRWR5dG93YW5pZSBqZWRuZWdvIHogcG9uacW8c3p5Y2ggcCZvYWN1dGU7bCB0ZWtzdG93eWNoIG5pZSBixJlkemllIG1pYcWCbyBvZHp3aWVyY2llZGxlbmlhIG5hIFR3b2plaiBzdHJvbmllIGludGVybmV0b3dlaiAoaW5ueW1pIHPFgm93eTogYsSZZHppZSBkb3R5Y3p5xYJvIGplZHluaWUgcGFuZWx1IGFkbWluaXN0cmFjeWpuZWdvKS4nOwokbGFuZ1snZGVsZXRlJ10gPSAnVXN1xYQnOwokbGFuZ1snZGVsZXRlY2F0ZWdvcnknXSA9ICdVc3XFhCBrYXRlZ29yacSZJzsKJGxhbmdbJ2RlbGV0ZWNvbXBhbnknXSA9ICdVc3XFhCBmaXJtxJknOwokbGFuZ1snZGVsZXRlZmllbGRkZWYnXSA9ICdVc3XFhCBkZWZpbmljasSZIHBvbGEnOwokbGFuZ1snZGVzY2VuZGluZyddID0gJ01hbGVqxIVjbyc7CiRsYW5nWydkZXNjcmlwdGlvbiddID0gJ09waXMnOwokbGFuZ1snZGV0YWlscyddID0gJ1N6Y3plZyZvYWN1dGU7xYJ5JzsKJGxhbmdbJ2RldGFpbHN0ZXh0J10gPSAnU3pjemVnJm9hY3V0ZTvFgnknOwokbGFuZ1snZGV0YWlsdGVtcGxhdGVfYWRkZWRpdCddID0gJ0RvZGFqL2VkeXR1aiBzemFibG9uIHN6Y3plZyZvYWN1dGU7xYJvd3knOwokbGFuZ1snZGV0YWlsdGVtcGxhdGVzJ10gPSAnU3phYmxvbnkgc3pjemVnJm9hY3V0ZTvFgm93ZSc7CiRsYW5nWydkZXRhaWx0ZW1wbGF0ZXVwZGF0ZWQnXSA9ICdTemFibG9uIHN6Y3plZyZvYWN1dGU7xYJvd3kgemFrdHVhbGl6b3dhbnknOwokbGFuZ1snZGlzYWJsZWQnXSA9ICdXecWCxIVjem9uZSc7CiRsYW5nWydkb3duJ10gPSAnRG8gZG/FgnUnOwokbGFuZ1snZHJhZnQnXSA9ICdLb3BpYSByb2JvY3phJzsKJGxhbmdbJ2VkaXQnXSA9ICdFZHl0dWonOwokbGFuZ1snZWRpdGNhdGVnb3J5J10gPSAnRWR5dHVqIGthdGVnb3JpxJknOwokbGFuZ1snZWRpdGNvbXBhbnknXSA9ICdFZHl0dWogZmlybcSZJzsKJGxhbmdbJ2VkaXRmaWVsZGRlZiddID0gJ0VkeXR1aiBkZWZpbmljasSZIHBvbGEnOwokbGFuZ1snZW1haWx0ZXh0J10gPSAnRS1tYWlsJzsKJGxhbmdbJ2Vycm9yX2NvbXBhbnluYW1lJ10gPSAnTmF6d2EgZmlybXkgamVzdCBuaWVwcmF3aWTFgm93YSc7CiRsYW5nWydlcnJvcl9jb21wYW55bmFtZV9pbnVzZSddID0gJ0Zpcm1hIG8gdGFraWVqIG5hendpZSBqdcW8IGlzdG5pZWplIHcga2F0YWxvZ3UnOwokbGFuZ1snZXJyb3Jfbm9mZXUnXSA9ICdOaWUgem5hbGV6aW9ubyBtb2R1xYJ1IFXFvHl0a293bmlrJm9hY3V0ZTt3IEZFVSAtIEZyb250RW5kVXNlcnMnOwokbGFuZ1snZXhwb3J0Y3N2J10gPSAnRWtzcG9ydCBDU1YnOwokbGFuZ1snZmF4J10gPSAnRmFrcyc7CiRsYW5nWydmYXh0ZXh0J10gPSAnRmFrcyc7CiRsYW5nWydmaWVsZGRlZiddID0gJ0RlZmluaWNqYSBwb2xhJzsKJGxhbmdbJ2ZpZWxkZGVmcyddID0gJ0RlZmluaWNqZSBwJm9hY3V0ZTtsJzsKJGxhbmdbJ2ZpZWxkZGVmdGV4dCddID0gJ0RlZmluaWNqYSBwb2xhJzsKJGxhbmdbJ2ZpZWxkZGVmYWRkZWQnXSA9ICdEZWZpbmljamEgcG9sYSBkb2RhbmEnOwokbGFuZ1snZmllbGRkZWZ1cGRhdGVkJ10gPSAnRGVmaW5pY2phIHBvbGEgemFrdHVhbGl6b3dhbmEnOwokbGFuZ1snZmllbGRkZWZkZWxldGVkJ10gPSAnRGVmaW5pY2phIHBvbGEgc2thc2tvd2FuYSc7CiRsYW5nWydmaXJzdHBhZ2UnXSA9ICc8PCc7CiRsYW5nWydmcm9udGVuZGZvcm10ZW1wbGF0ZV9hZGRlZGl0J10gPSAnRG9kYWovZWR5dHVqIFN6YWJsb24gZm9ybXVsYXJ6YSB1xbx5dGtvd25payZvYWN1dGU7dyc7CiRsYW5nWydmcm9udGVuZGZvcm10ZW1wbGF0ZXMnXSA9ICdFZHl0dWogc3phYmxvbnkgZmlybSc7CiRsYW5nWydmcm9udGVuZGZvcm10ZW1wbGF0ZXVwZGF0ZWQnXSA9ICdTemFibG9uIGZpcm0gemFrdHVhbGl6b3dhbnknOwokbGFuZ1snaGVscCddID0gJzxoMz5XaGF0IGRvZXMgdGhpcyBkbz88L2gzPg0KPHA+VGhpcyBtb2R1bGUgcHJvdmlkZXMgYSB3YXkgdG8gY29sbGVjdCwgb3JnYW5pemUsIGFuZCBkaXNwbGF5IGluZm9ybWF0aW9uIGFib3V0IGNvbXBhbmllcy4gIFVzdWFsbHkgdGhpcyBpcyB0aGUgY29udGFjdCBpbmZvcm1hdGlvbiBhbmQgYSBsb2dvLCBidXQgaXQgaXMgZmxleGliaWxlIGVub3VnaCB0byBhbGxvdyBmb3IgZXh0ZW5kYWJsZSBmaWVsZHMsIGFuZCBkaXNjZW1pbmF0aW5nIHB1YmxpYyBmcm9tIHByaXZhdGUgZGF0YS48L3A+DQo8cD5UaGlzIG1vZHVsZSBjb3VsZCBiZSB1c2VkIGZvciBhIHZhcmlldHkgb2YgcHVycG9zZXMuIEZyb20gYSBzdXBwbGllcnMgbGlzdCB0byBhIGNvbnRhY3QgbGlzdC4gIEl0IGlzIGZsZXhpYmxlIGVub3VnaCB0aGF0IGl0IGNvdWxkIGJlIHJlLXVzZWQgZm9yIG1hbnkgZGlmZmVyZW50IHB1cnBvc2VzLjwvcD4NCjxoMz5Ib3cgRG8gSSBVc2UgSXQ8L2gzPg0KPHA+VGhlIGVhc2llc3Qgd2F5IHRvIHVzZSB0aGlzIG1vZHVsZSBpcyBieSBwbGFjaW5nIHRoZSA8Y29kZT57Q29tcGFueURpcmVjdG9yeX08L2NvZGU+IHRhZyBpbnRvIGVpdGhlciB5b3VyIHBhZ2UgdGVtcGxhdGUgb3IgcGFnZSBjb250ZW50LiAgWW91IHdvdWxkIHRoZW4gc3RhcnQgZWRpdGluZyByZWNvcmRzIGluIHRoZSAmcXVvdDtDb21wYW55IERpcmVjdG9yeSZxdW90OyBhZG1pbiBpbnRlcmZhY2UuICBFeHBsb3JlIHRoZSB2YXJpb3VzIHBhcmFtZXRlcnMgKGRlc2NyaWJlZCBiZWxvdykgZm9yIHdheXMgdG8gY3VzdG9taXplIHRoZSBiZWhhdmlvdXIgb2YgdGhlIG1vZHVsZS48L3A+DQo8aDM+U2VjdXJpdHk8L2gzPg0KPHA+SW4gb3JkZXIgdG8gbWFuYWdlIHRoZSBjb21wYW5pZXMgaW5zaWRlIHRoaXMgbW9kdWxlLCB0aGUgYWRtaW5pc3RyYXRvciBtdXN0IGhhdmUgdGhlICYjMDM5OzwvZW0+TW9kaWZ5IENvbXBhbnkgRGlyZWN0b3J5PC9lbT4mIzAzOTsgcGVybWlzc2lvbi48L3A+DQo8cD5JbiBvcmRlciB0byBlZGl0IHRoZSBidWlsdCBpbiB0ZW1wbGF0ZXMgdGhhdCBjb250cm9sIHRoZSBsYXlvdXQgb2YgdGhlIGNvbXBhbnlkaXJlY3RvcnkgaW5mb3JtYXRpb24sIHRoZSBhZG1pbmlzdHJhdG9yIG5lZWRzIHRoZSAmIzAzOTs8ZW0+TW9kaWZ5IFRlbXBsYXRlczwvZW0+JiMwMzk7IHBlcm1pc3Npb24uPC9wPg0KPHA+VG8gYWRqdXN0IHRoZSB2YXJpb3VzIHNldHRpbmdzLCB0aGUgJiMwMzk7PGVtPk1vZGlmeSBTaXRlIFByZWZlcmVuY2VzPC9lbT4mIzAzOTsgcGVybWlzc2lvbiBpcyByZXF1aXJlZC48L3A+DQo8aDM+UHJldHR5IFVSTFM8L2gzPg0KPHA+RnVuY3Rpb25hbGl0eSBhbmQgZmxleGliaWxpdHkgaXMgcmVkdWNlZCB3aGVuIHVzaW5nIHByZXR0eSB1cmxzLiAgRm9yIGV4YW1wbGUsIGlmIHVzaW5nIHByZXR0eSBVUkxTIHdpdGggdGhpcyBtb2R1bGUsIHlvdSBzaG91bGQgcG9zdCB0aGUgdGFnIGZvciB0aGlzIG1vZHVsZSBpbiB0aGUgZGVmYXVsdCBjb250ZW50IGJsb2NrLCBhbmQgd2hlbiBjbGlja2luZyBvbiBhIGxpbmsgb3Igc3VibWl0dGluZyBhIGJ1dHRvbiBmcm9tIHRoaXMgbW9kdWxlLCBpdCYjMDM5O3MgcmVzdWx0cyB3aWxsIGFsd2F5cyByZXBsYWNlIHRoZSBkZWZhdWx0IGNvbnRlbnQgYmxvY2suPC9wPic7CiRsYW5nWydpZCddID0gJ0lEJzsKJGxhbmdbJ2ltYWdlY3VycmVudGhpZGRlbiddID0gJyc7CiRsYW5nWydpbWFnZXRleHQnXSA9ICdPYnJhemVrJzsKJGxhbmdbJ2xhc3RwYWdlJ10gPSAnPj4nOwokbGFuZ1snbG9nb2N1cnJlbnRoaWRkZW4nXSA9ICcnOwokbGFuZ1snbG9nb3RleHQnXSA9ICdMb2dvJzsKJGxhbmdbJ21heGxlbmd0aCddID0gJ01heCBkxYJ1Z2/Fm8SHJzsKJGxhbmdbJ21heF9sZW5ndGgnXSA9ICdNYXggZMWCdWdvxZvEhyc7CiRsYW5nWydtYXhsZW5ndGh0ZXh0J10gPSAnTWF4IGTFgnVnb8WbxIcnOwokbGFuZ1snbW9kaWZpZWRkYXRlJ10gPSAnRGF0YSBvc3RhdG5pZWogbW9keWZpa2FjamknOwokbGFuZ1snbmFtZSddID0gJ05hendhJzsKJGxhbmdbJ25hbWV0ZXh0J10gPSAnTmF6d2EnOwokbGFuZ1snbmVlZHBlcm1pc3Npb24nXSA9ICdQb3RyemVidWplc3ogdXByYXduaWVuaWEgJiMwMzk7JXMmIzAzOTsgYnkgd3lrb25hxIcgdMSZIG9wZXJhY2rEmSc7CiRsYW5nWydub2NvbXBhbnluYW1lZ2l2ZW4nXSA9ICdOaWUgcG9kYW5vIG5hend5IGZpcm15JzsKJGxhbmdbJ25vbmFtZWdpdmVuJ10gPSAnTmllIHBvZGFubyBuYXp3eSc7CiRsYW5nWydub3RhbnVtYmVyJ10gPSAnVG8gbmllIG51bWVyISAoTmFOKSc7CiRsYW5nWyduZXh0cGFnZSddID0gJz4nOwokbGFuZ1snb2YnXSA9ICd6JzsKJGxhbmdbJ3BhZ2UnXSA9ICdTdHJvbmEnOwokbGFuZ1sncGFyYW1fYWN0aW9uJ10gPSAnRGV0ZXJtaW5lIHRoZSBwcmltYXJ5IGJlaGF2aW91ciBvZiB0aGUgbW9kdWxlLiAgUG9zc2libGUgdmFsdWVzIGZvciB0aGlzIHBhcmFtZXRlciBhcmU6DQo8dWw+DQogIDxsaT5jYXRlZ29yeWxpc3QgLS0gRGlzcGxheSBhIGxpc3Qgb2YgY2F0ZWdvcmllcy4gIFVzZXJzIGNhbiBkcmlsbCBkb3duIHRvIHN1bW1hcnkgbW9kZSwgYW5kZCB0aGVuIHRvIGRldGFpbCBtb2RlLjwvbGk+DQogIDxsaT48c3Ryb25nPmRlZmF1bHQ8L3N0cm9uZz4gLS0gRGlzcGxheSBjb21wYW5pZXMgaW4gYSBzdW1tYXJ5IG1vZGUuPC9saT4NCiAgPGxpPmRldGFpbHMgLS0gRGlzcGxheSBkZXRhaWxlZCBpbmZvcm1hdGlvbiBhYm91dCBhIHNwZWNpZmljIGNvbXBhbnkuPC9saT4NCiAgPGxpPmZlX2VkaXQgLS0gRGlzcGxheSBhIGZvcm0gdG8gYWxsb3cgZWRpdGluZyBpbmZvcm1hdGlvbiBhYm91dCBhIHNwZWNpZmljIGNvbXBhbnkuPC9saT4NCiAgIA0KPC91bD4NCic7CiRsYW5nWydwYXJhbV9jYXRlZ29yeSddID0gJ1doZW4gdXNlZCBpbiB0aGUgPGVtPmRlZmF1bHQ8L2VtPiBzdW1tYXJ5IG1vZGUsIHRoaXMgcGFyYW1ldGVyLCB3aGljaCBzaG91bGQgbWF0Y2ggdGhlIG5hbWUgb2YgYW4gZXhpc3RpbmcgY2F0ZWdvcnkgd2lsbCBiZSB1c2VkIHRvIGRpc3BsYXkgb25seSB0aG9zZSBjb21wYW5pZXMgdGhhdCBhcmUgaW4gdGhhdCBjYXRlZ29vcnkuIChhIGNvbW1hIHNlcGVyYXRlZCBsaXN0IGNhbiBiZSBzdXBwbGllZCknOwokbGFuZ1sncGFyYW1fY2F0ZWdvcnlsaXN0dGVtcGxhdGUnXSA9ICdXeWJpZXJ6IHN6YWJsb24gKHBvIG5hendpZSksIGt0Jm9hY3V0ZTtyeSBixJlkemllIHXFvHl3YW55IHBvZGN6YXMgd3nFm3dpZXRsYW5pYSBsaXN0eWthdGVnb3JpaSc7CiRsYW5nWydwYXJhbV9jb21wYW55aWQnXSA9ICdSZXF1aXJlZCBmb3IgdGhlIGZyb250ZW5kIGVkaXRpbmcgYW5kIGRldGFpbCBtb2RlcywgdGhpcyBwYXJhbWV0ZXIgZGV0ZXJtaW5lcyB3aGljaCBjb21wYW55IHJlY29yZCB0byBlZGl0IG9yIHZpZXcuJzsKJGxhbmdbJ3BhcmFtX2RldGFpbHBhZ2UnXSA9ICdTcGVjaWZ5IGEgcGFnZSBhbGlhcyAoYnkgbmFtZSkgdG8gdXNlIGZvciBkaXNwbGF5aW5nIGEgZGV0YWlsIHJlY29yZC4gPHN0cm9uZz5Ob3RlOjwvc3Ryb25nPiBUaGlzIHRhZyBwYXJhbWV0ZXIgaXMgbm90IGNvbXBhdGlibGUgd2l0aCBwcmV0dHkgdXJscy4nOwokbGFuZ1sncGFyYW1fZGV0YWlsdGVtcGxhdGUnXSA9ICdTcGVjaWZ5IGEgdGVtcGxhdGUgKGJ5IG5hbWUpIHRvIHVzZSB3aGVuIGRpc3BsYXlpbmcgdGhlIGRldGFpbCB2aWV3LiAgPHN0cm9uZz5Ob3RlOjwvc3Ryb25nPiBUaGlzIHRhZyBwYXJhbWV0ZXIgaXMgbm90IGNvbXBhdGlibGUgd2l0aCBwcmV0dHkgdXJscy4nOwokbGFuZ1sncGFyYW1fZnJvbnRlbmRmb3JtdGVtcGxhdGUnXSA9ICdTcGVjaWZ5IGEgdGVtcGxhdGUgKGJ5IG5hbWUpIHRvIHVzZSB3aGVuIGRpc3BsYXlpbmcgdGhlIGZyb250IGVuZCBjb21wYW55IGVkaXQgZm9ybS4nOwokbGFuZ1sncGFyYW1fc2VsZWN0Y2F0ZWdvcnknXSA9ICdJZiB0aGlzIHBhcmFtZXRlciBpcyBzZXQsIHRoZW4gYSBmb3JtIHdpbGwgYmUgZ2VuZXJhdGVkIGFsbG93aW5nIHVzZXJzIHRvIGludGVyYWN0aXZlbHkgZmlsdGVyIGNvbXBhbnkgcmVjb3JkcyBvbiBhIHNpbmdsZSBjYXRlZ29yeS4gIFRoaXMgZmxhZyBzaG91bGQgbm90IGJlIHVzZWQgaW4gY29uanVuY3Rpb24gd2l0aCB0aGUgJiMwMzk7Y2F0ZWdvcnkmIzAzOTsgcGFyYW1ldGVyLic7CiRsYW5nWydwYXJhbV9zaG93YWxsJ10gPSAnUm8gdXN0YXdpZW5pZSBtYSB0eWxrbyB6bmFjemVuaWUgZGxhIHdpZG9rdSBsaXN0eSBrYXRlZ29yaWkuIEdkeSB0YSBvcGNqYSBqZXN0IHfFgsSFY3pvbmEsIGthdGVnb3JpZSBiZXogcGFzdWrEhWN5Y2ggZmlybSwgdGFrxbxlIGLEmWTEhSB3ecWbd2lldGxhbmUuJzsKJGxhbmdbJ3BhcmFtX3NvcnRvcmRlciddID0gJ1NwZWNpZnkgdGhlIG9yZGVyIG9mIHNvcnRlZCBmaWVsZHMgaW4gc3VtbWFyeSB2aWV3LiAgUG9zc2libGUgdmFsdWVzIGFyZToNCjx1bD4NCiAgPGxpPjxzdHJvbmc+YXNjPC9zdHJvbmc+IC0tIEFzY2VuZGluZyBvcmRlcjwvbGk+DQogIDxsaT5kZXNjIC0tIERlc2NlbmRpbmcgb3JkZXI8L2xpPg0KPC91bD4nOwokbGFuZ1sncGFyYW1fc29ydGJ5J10gPSAnQXBwbGljYWJsZSBvbmx5IGluIHN1bW1hcnkgbW9kZSwgdGhpcyBwYXJhbWV0ZXIgZGV0ZXJtaW5lcyB0aGUgc29ydGluZyBvZiB0aGUgb3V0cHV0IGNvbXBhbmllcy4gIFBvc3NpYmxlIHZhbHVlcyBhcmU6DQo8dWw+DQogIDxsaT48c3Ryb25nPmNvbXBhbnlfbmFtZTwvc3Ryb25nPjwvbGk+DQogIDxsaT5waG9uZTwvbGk+DQogIDxsaT5mYXg8L2xpPg0KICA8bGk+ZW1haWw8L2xpPg0KICA8bGk+d2Vic2l0ZSAtLSBUaGUgd2Vic2l0ZSB1cmw8L2xpPg0KICA8bGk+Y3JlYXRlZCAtLSBUaGUgY3JlYXRpb24gZGF0ZSBmb3IgdGhpcyBjb21wYW55IHJlY29yZDwvbGk+DQogIDxsaT5tb2RpZmllZCAtLSBUaGUgbW9kaWZpZWQgZGF0ZSBmb3IgdGhpcyBjb21wYW55IHJlY29yZDwvbGk+DQo8L3VsPic7CiRsYW5nWydwYXJhbV9zdW1tYXJ5dGVtcGxhdGUnXSA9ICdTcGVjaWZ5IGEgdGVtcGxhdGUgKGJ5IG5hbWUpIHRvIHVzZSB3aGVuIGRpc3BsYXlpbmcgdGhlIHN1bW1hcnkgdmlldy4gIDxzdHJvbmc+Tm90ZTo8L3N0cm9uZz4gVGhpcyB0YWcgcGFyYW1ldGVyIGlzIG5vdCBjb21wYXRpYmxlIHdpdGggcHJldHR5IHVybHMuJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsJ10gPSAnTW9kdcWCIEthdGFsb2cgZmlybSB6b3N0YcWCIHBvbXnFm2xuaWUgemFpbnN0YWxvd2FueSc7CiRsYW5nWydwb3N0dW5pbnN0YWxsJ10gPSAnTW9kdcWCIEthdGFsb2cgZmlybSB6b3N0YcWCIHBvbXnFm2xuaWUgb2RpbnN0YWxvd2FueS4gV3N6eXN0a2llIGRhbmUgd3Byb3dhZHpvbmUgZG8ga2F0YWxvZ3Ugem9zdGHFgnkgc2thc293YW5lIHogYmF6eSBkYW55Y2guJzsKJGxhbmdbJ3ByZXVuaW5zdGFsbCddID0gJ0N6eSBuYSBwZXdubyBjaGNlc3ogb2RpbnN0YWxvd2HEhyB0ZW4gbW9kdcWCPyBPZGluc3RhbG93YW5pZSB0ZWdvIG1vZHXFgnUgdXN1bmllIGJlenBvd3JvdG5pZSB3c3p5c3RraWUgZGFuZSwga3Qmb2FjdXRlO3JlIHpvc3RhxYJ5IGp1xbwgd3Byb3dhZHpvbmUgZG8gS2F0YWxvZ3UgZmlybS4nOwokbGFuZ1sncHJldnBhZ2UnXSA9ICc8JzsKJGxhbmdbJ3Byb21wdF9kZXRhaWxwYWdlJ10gPSAnRG9tecWbbG5hIHN0cm9uYSBwcnpla2llcm93YW5pYSB3IHdpZG9rdSBzemN6ZWcmb2FjdXRlO8WCJm9hY3V0ZTt3JzsKJGxhbmdbJ3Byb21wdF9wYWdlbGltaXQnXSA9ICdMaWN6YmEgcmVrb3JkJm9hY3V0ZTt3IG5hIGplZG5laiBzdHJvbmllIHcgd2lkb2t1IG9nJm9hY3V0ZTtsbnltJzsKJGxhbmdbJ3Byb21wdF9zdW1tYXJ5c29ydGluZyddID0gJ0RvbXnFm2xuZSBzb3J0b3dhbmllIHcgd2lkb2t1IG9nJm9hY3V0ZTtsbnltJzsKJGxhbmdbJ3Byb21wdF9zdW1tYXJ5c29ydG9yZGVyJ10gPSAnRG9tecWbbG55IHBvcnrEhWRlayBzb3J0b3dhbmlhIHcgd2lkb2t1IG9nJm9hY3V0ZTtsbnltIDxlbT4obmllIG1hIHpuYWN6ZW5pYSwgZ2R5IHVzdGF3aW9uZSBqZXN0IHNvcnRvd2FuaWUgdyB0cnliaWUgJiMwMzk7bG9zb3dvJiMwMzk7KTwvZW0+JzsKJGxhbmdbJ3Byb21wdF90ZW1wbGF0ZSddID0gJ1N6YWJsb24nOwokbGFuZ1sncHVibGljJ10gPSAnUHVibGljem55JzsKJGxhbmdbJ3B1Ymxpc2hlZCddID0gJ09wdWJsaWtvd2FueSc7CiRsYW5nWydwcmVmZXJlbmNlcyddID0gJ1VzdGF3aWVuaWEnOwokbGFuZ1sncmFuZG9tJ10gPSAnTG9zb3d5JzsKJGxhbmdbJ3Jlc2V0dG9mYWN0b3J5J10gPSAnUHJ6eXdyJm9hY3V0ZTvEhyB1c3Rhd2llbmlhIGRvbXnFm2xuZSc7CiRsYW5nWydyZXN0b3JldG9kZWZhdWx0c21zZyddID0gJ1RhIG9wZXJhY2phIG9kdHdvcnp5IHN5c3RlbW93ZSBzemFibG9ueSBkb215xZtsbmUgdGVnbyBtb2R1xYJ1LCBrYXN1asSFYyBld2VudHVhbG5lIHptaWFueS4gQ3p5IG5hIHBld25vIGNoY2VzeiB3eWtvbmHEhyB0xJkgb3BlcmFjasSZPyc7CiRsYW5nWydzZWFyY2gnXSA9ICdTenVrYWonOwokbGFuZ1snc3RhdHVzJ10gPSAnU3RhdHVzJzsKJGxhbmdbJ3N1Ym1pdCddID0gJ1d5xZtsaWonOwokbGFuZ1snc3VtbWFyeXRlbXBsYXRlX2FkZGVkaXQnXSA9ICdEb2Rhai9lZHl0dWogc3phYmxvbiBvZyZvYWN1dGU7bG55JzsKJGxhbmdbJ3N1bW1hcnl0ZW1wbGF0ZXMnXSA9ICdTemFibG9ueSBvZyZvYWN1dGU7bG5lJzsKJGxhbmdbJ3N1bW1hcnl0ZW1wbGF0ZXVwZGF0ZWQnXSA9ICdTemFibG9uIG9nJm9hY3V0ZTtsbnkgemFrdHVhbGl6b3dhbnknOwokbGFuZ1snc3lzZGVmYXVsdHMnXSA9ICdQcnp5d3Imb2FjdXRlO8SHIGRvbXnFm2xuZSc7CiRsYW5nWyd0ZWxlcGhvbmUnXSA9ICdUZWxlZm9uJzsKJGxhbmdbJ3RlbGVwaG9uZXRleHQnXSA9ICdUZWxlZm9uJzsKJGxhbmdbJ3RpdGxlX2NhdGVnb3J5bGlzdF9kZmx0dGVtcGxhdGUnXSA9ICdEb215xZtsbnkgc3phYmxvbiBsaXN0eSBrYXRlZ29yaWknOwokbGFuZ1sndGl0bGVfZGV0YWlsX2RmbHR0ZW1wbGF0ZSddID0gJ0RvbXnFm2xueSBzemFibG9uIHN6Y3plZyZvYWN1dGU7xYJvd3knOwokbGFuZ1sndGl0bGVfZnJvbnRlbmRmb3JtX2RmbHR0ZW1wbGF0ZSddID0gJ0RvbXnFm2xueSBzemFibG9uIGZvcm11bGFyemEgdcW8eXRrb3duaWthJzsKJGxhbmdbJ3RpdGxlX3N1bW1hcnlfZGZsdHRlbXBsYXRlJ10gPSAnRG9tecWbbG55IHN6YWJsb24gb2cmb2FjdXRlO2xueSc7CiRsYW5nWyd0eXBlJ10gPSAnVHlwJzsKJGxhbmdbJ3R5cGV0ZXh0J10gPSAnVHlwJzsKJGxhbmdbJ3VwJ10gPSAnRG8gZyZvYWN1dGU7cnknOwokbGFuZ1snd2Vic2l0ZSddID0gJ1N0cm9uYSB3d3cnOwokbGFuZ1snd2Vic2l0ZXRleHQnXSA9ICdTdHJvbmEgd3d3JzsKJGxhbmdbJ3V0bWEnXSA9ICcxNTY4NjEzNTMuMjM1OTE0NTQ5Nzg3ODY3NjUwMC4xMjEzMjAwMjc4LjEyMTkwNTg2NTkuMTIxOTA2Mjc0MS44OCc7CiRsYW5nWyd1dG16J10gPSAnMTU2ODYxMzUzLjEyMTkwNTg2NTkuODcuMTYudXRtY2NuPShyZWZlcnJhbCl8dXRtY3NyPWRldi5jbXNtYWRlc2ltcGxlLm9yZ3x1dG1jY3Q9L3x1dG1jbWQ9cmVmZXJyYWwnOwokbGFuZ1sndXRtYyddID0gJzE1Njg2MTM1Myc7CiRsYW5nWyd1dG1iJ10gPSAnMTU2ODYxMzUzJzsKPz4=]]></data>
	</file>
	<file>
	  <filename>/lang/ext/ru_RU.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2FjdGl2ZSddID0gJ9CQ0LrRgtC40LLQvdC+JzsKJGxhbmdbJ2FkZGxpbmsnXSA9ICfQlNC+0LHQsNCy0LjRgtGMINGB0YHRi9C70LrRgyc7CiRsYW5nWydhZGRyZXNzJ10gPSAn0JDQtNGA0LXRgSc7CiRsYW5nWydhZGRyZXNzdGV4dCddID0gJ9CQ0LTRgNC10YEnOwokbGFuZ1snYWRkY2F0ZWdvcnknXSA9ICfQlNC+0LHQsNCy0LjRgtGMINC60LDRgtC10LPQvtGA0LjRjic7CiRsYW5nWydhZGRjb21wYW55J10gPSAn0JTQvtCx0LDQstC40YLRjCDQutC+0LzQv9Cw0L3QuNGOJzsKJGxhbmdbJ2FkZGZpZWxkZGVmJ10gPSAn0JTQvtCx0LDQstC40YLRjCDQvtC/0YDQtdC00LXQu9C10L3QuNC1INC/0L7Qu9GPJzsKJGxhbmdbJ2FkbWluX29ubHknXSA9ICfQktC40LTQuNGCINGC0L7Qu9GM0LrQviDQkNC00LzQuNC90LjRgdGC0YDQsNGC0L7RgCc7CiRsYW5nWydhcmV5b3VzdXJlJ10gPSAn0JLRiyDQtNC10LnRgdGC0LLQuNGC0LXQu9GM0L3QviDRhdC+0YLQuNGC0LUg0YPQtNCw0LvQuNGC0Ywg0Y3RgtC+Pyc7CiRsYW5nWydhc2NlbmRpbmcnXSA9ICfQn9C+INCy0L7Qt9GA0LDRgdGC0LDQvdC40Y4nOwokbGFuZ1snY2FuY2VsJ10gPSAn0J7RgtC80LXQvdCwJzsKJGxhbmdbJ2NhbnVzZXJlZGl0J10gPSAn0J/QvtC70YzQt9C+0LLQsNGC0LXQu9C4INGE0YDQvtC90YLQtdC90LTQsCDQvNC+0LPRg9GCINGA0LXQtNCw0LrRgtC40YDQvtCy0LDRgtGMINGN0YLQviDQv9C+0LvQtT8nOwokbGFuZ1snY2FudXNlcnZpZXcnXSA9ICfQn9C+0LvRjNC30L7QstCw0YLQtdC70Lgg0YTRgNC+0L3RgtC10L3QtNCwINC80L7Qs9GD0YIg0LLQuNC00LXRgtGMINGN0YLQviDQv9C+0LvQtT8nOwokbGFuZ1snY2F0ZWdvcnknXSA9ICfQmtCw0YLQtdCz0L7RgNC40Y8nOwokbGFuZ1snY2F0ZWdvcmllcyddID0gJ9Ca0LDRgtC10LPQvtGA0LjQuCc7CiRsYW5nWydjYXRlZ29yeXRleHQnXSA9ICfQmtCw0YLQtdCz0L7RgNC40Y8nOwokbGFuZ1snY2F0ZWdvcnlhZGRlZCddID0gJ9Ca0LDRgtC10LPQvtGA0LjRjyDQtNC+0LHQsNCy0LvQtdC90LAnOwokbGFuZ1snY2F0ZWdvcnl1cGRhdGVkJ10gPSAn0JrQsNGC0LXQs9C+0YDQuNGPINC+0LHQvdC+0LLQu9C10L3QsCc7CiRsYW5nWydjYXRlZ29yeWxpc3R0ZW1wbGF0ZV9hZGRlZGl0J10gPSAn0JTQvtCx0LDQstC40YLRjC/QoNC10LTQsNC60YLQuNGA0L7QstCw0YLRjCDRgdC/0LjRgdC+0Log0YjQsNCx0LvQvtC90L7QsiDQutCw0YLQtdCz0L7RgNC40LgnOwokbGFuZ1snY2F0ZWdvcnlsaXN0dGVtcGxhdGVzJ10gPSAn0KHQv9C40YHQvtC6INGI0LDQsdC70L7QvdC+0LIg0LrQsNGC0LXQs9C+0YDQuNC4JzsKJGxhbmdbJ2NhdGVnb3J5bGlzdHRlbXBsYXRldXBkYXRlZCddID0gJ9Ch0L/QuNGB0L7QuiDQutCw0YLQtdCz0L7RgNC40Lkg0L7QsdC90L7QstC70ZHQvSc7CiRsYW5nWydjaGFuZ2Vsb2cnXSA9ICc8dWw+DQogIDxsaT4xLjEuMyAtIEphbnVhcnksIDIwMDggPGVtPihyY2FtcGJlbGxAc2tpbm55ZmlzaG1lZGlhLmNvbSk8L2VtPg0KICAgIDx1bD4NCiAgICAgIDxsaT5BZGRzIHBhZ2luYXRpb24gdG8gc3VtbWFyeSB2aWV3PC9saT4NCiAgICAgIDxsaT5GaXhlcyBhIHByb2JsZW0gd2l0aCBwcmV0dHkgdXJscyBpbiBzdW1tYXJ5IHZpZXc8L2xpPg0KICAgIDwvdWw+DQogIDwvbGk+DQogIDxsaT4xLjEuMiAtIE5vdmVtYmVyLCAyMDA3IDxlbT4ocmNhbXBiZWxsQHNraW5ueWZpc2htZWRpYS5jb20pPC9lbT4NCiAgICA8dWw+DQogICAgICA8bGk+Tm93IHVzZSBjbXNfbW92ZV91cGxvYWRlZF9maWxlIGluc3RlYWQgb2YgbW92ZV91cGxvYWRlZF9maWxlPC9saT4NCiAgICAgIDxsaT5SZXF1aXJlIENNUyAxLjIuMSBvciBsYXRlcjwvbGk+DQogICAgPC91bD4NCiAgPC9saT4NCiAgPGxpPjEuMS4xIC0gTm92ZW1iZXIsIDIwMDcgPGVtPihyY2FtcGJlbGxAc2tpbm55ZmlzaG1lZGlhLmNvbSk8L2VtPg0KICAgIDx1bD4NCiAgICAgIDxsaT5GaXhlZCBhIHByb2JsZW0gd2l0aCB0aGUgZGV0YWlsIGxpbmtzIGluIHN1bW1hcnkgbW9kZSB3aGVuIHByZXR0eSB1cmxzIHdlcmUgZGlzYWJsZWQuPC9saT4NCiAgICA8L3VsPg0KICA8L2xpPg0KICA8bGk+MS4xIC0gU2VwdGVtYmVyLCAyMDA3IDxlbT4ocmNhbXBiZWxsQHNraW5ueWZpc2htZWRpYS5jb20pPC9lbT4NCiAgICA8dWw+DQogICAgICA8bGk+QWRkZWQgc3VwcG9ydCBmb3IgcHJldHR5IHVybHM8L2xpPg0KICAgICAgPGxpPkZpbGxlZCBvdXQgdGhlIGhlbHA8L2xpPg0KICAgICAgPGxpPkFkZGVkIGEgY2F0ZWdvcnkgbGlzdCBtb2RlPC9saT4NCiAgICAgIDxsaT5BZGRlZCBzdXBwb3J0IGZvciBmcm9udGVuZCBlZGl0aW5nIG9mIGNvbXBhbmllczwvbGk+DQogICAgICA8bGk+QWRkZWQgc3VwcG9ydCBmb3IgcHVibGljIGFuZCBhZG1pbiBvbmx5IGZpZWxkcyBpbiBjb21wYW5pZXM8L2xpPg0KICAgICAgPGxpPkFkZGVkIGRpZmZlcmVudCBzb3J0aW5nIGNhcGFiaWxpdGllcyBpbiBzdW1tYXJ5IHZpZXc8L2xpPg0KICAgICAgPGxpPkNoYW5nZWQgTWluaW11bSBDTVMgVmVyc2lvbiBhbmQgYWRkZWQgc3VwcG9ydCBmb3IgdGhlIDEuMSBzZXJpZXM8L2xpPg0KICAgIDwvdWw+DQogIDwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2NvbXBhbnknXSA9ICfQmtC+0LzQv9Cw0L3QuNGPJzsKJGxhbmdbJ2NvbXBhbnlhZGRlZCddID0gJ9Ca0L7QvNC/0LDQvdC40Y8g0LTQvtCx0LDQstC70LXQvdCwJzsKJGxhbmdbJ2NvbXBhbnluYW1lJ10gPSAn0J3QsNC30LLQsNC90LjQtSDQutC+0LzQv9Cw0L3QuNC4JzsKJGxhbmdbJ2NvbXBhbnl1cGRhdGVkJ10gPSAn0JrQvtC80L/QsNC90LjRjyDQvtCx0L3QvtCy0LvQtdC90LAnOwokbGFuZ1snY29tcGFuaWVzJ10gPSAn0JrQvtC80L/QsNC90LjQuCc7CiRsYW5nWydjb21wYW55dGV4dCddID0gJ9Ca0L7QvNC/0LDQvdC40Y8nOwokbGFuZ1snY29tcGFueWRpcmVjdG9yeSddID0gJ9Ca0LDRgtCw0LvQvtCzINC60L7QvNC/0LDQvdC40LknOwokbGFuZ1snY29udGFjdGVtYWlsJ10gPSAn0JrQvtC90YLQsNC60YLQvdGL0LkgRW1haWwnOwokbGFuZ1snY3JlYXRlZGRhdGUnXSA9ICfQlNCw0YLQsCDQt9Cw0L/QuNGB0LgnOwokbGFuZ1snZGVmYXVsdHRlbXBsYXRlcyddID0gJ9Co0LDQsdC70L7QvSDQv9C+INGD0LzQvtC70YfQsNC90LjRjic7CiRsYW5nWydkZWZhdWx0X3RlbXBsYXRlX25vdGljZSddID0gJzxzdHJvbmc+0J/RgNC40LzQtdGH0LDQvdC40LU6PC9zdHJvbmc+INCh0L7QtNC10YDQttCw0L3QuNC1INGN0YLQuNGFINGC0LXQutGB0YLQvtCy0YvRhSDQvtCx0LvQsNGB0YLQtdC5INC40YHQv9C+0LvRjNC30YPQtdGC0YHRjyDQtNC70Y8g0L7Qv9GA0LXQtNC10LvQtdC90LjRjyDRgdC+0LTQtdGA0LbQsNC90LjRjyDRiNCw0LHQu9C+0L3QsCDQv9C+INGD0LzQvtC70YfQsNC90LjRjiwg0L3QsNC20LzQuNGC0LUg0LrQvdC+0L/QutGDICAmcXVvdDtBZGQgVGVtcGxhdGUmcXVvdDsg0LIg0YHQvtC+0YLQstC10YLRgdGC0LLRg9GO0YnQtdC8INGI0LDQsdC70L7QvSDQvdCwINCy0LrQu9Cw0LTQutC1LiDQmNC30LzQtdC90LXQvdC40LUg0YLQtdC60YHRgtCwINC+0LTQvdC+0Lkg0LjQtyDRjdGC0LjRhSDQvtCx0LvQsNGB0YLQtdC5INGC0LXQutGB0YIg0L3QtSDQsdGD0LTQtdGCINC40LzQtdGC0Ywg0L3QtdC/0L7RgdGA0LXQtNGB0YLQstC10L3QvdC+0LUg0LLQu9C40Y/QvdC40LUg0L3QsCDQktCw0Ygg0YHQsNC50YIuJzsKJGxhbmdbJ2RlbGV0ZSddID0gJ9Cj0LTQsNC70LjRgtGMJzsKJGxhbmdbJ2RlbGV0ZWNhdGVnb3J5J10gPSAn0KPQtNCw0LvQuNGC0Ywg0LrQsNGC0LXQs9C+0YDQuNGOJzsKJGxhbmdbJ2RlbGV0ZWNvbXBhbnknXSA9ICfQo9C00LDQu9C40YLRjCDQutC+0LzQv9Cw0L3QuNGOJzsKJGxhbmdbJ2RlbGV0ZWZpZWxkZGVmJ10gPSAn0KPQtNCw0LvQuNGC0Ywg0L7Qv9GA0LXQtNC10LvQtdC90LjQtSDQv9C+0LvRjyc7CiRsYW5nWydkZXNjZW5kaW5nJ10gPSAn0J/QviDRg9Cx0YvQstCw0L3QuNGOJzsKJGxhbmdbJ2Rlc2NyaXB0aW9uJ10gPSAn0J7Qv9C40YHQsNC90LjQtSc7CiRsYW5nWydkZXRhaWxzJ10gPSAn0J/QvtC00YDQvtCx0L3QvtGB0YLQuCc7CiRsYW5nWydkZXRhaWxzdGV4dCddID0gJ9Cf0L7QtNGA0L7QsdC90L7RgdGC0LgnOwokbGFuZ1snZGV0YWlsdGVtcGxhdGVfYWRkZWRpdCddID0gJ9CU0L7QsdCw0LLQuNGC0Ywv0KDQtdC00LDQutGC0LjRgNC+0LLQsNGC0Ywg0YjQsNCx0LvQvtC9IERldGFpbCc7CiRsYW5nWydkZXRhaWx0ZW1wbGF0ZXMnXSA9ICfQqNCw0LHQu9C+0L0gRGV0YWlsJzsKJGxhbmdbJ2RldGFpbHRlbXBsYXRldXBkYXRlZCddID0gJ9Co0LDQsdC70L7QvSBEZXRhaWwg0L7QsdC90L7QstC70ZHQvSc7CiRsYW5nWydkaXNhYmxlZCddID0gJ9Ce0YLQutC70Y7Rh9C10L3Qvic7CiRsYW5nWydkb3duJ10gPSAn0JLQvdC40LcnOwokbGFuZ1snZHJhZnQnXSA9ICfQp9C10YDQvdC+0LLQuNC6JzsKJGxhbmdbJ2VkaXQnXSA9ICfQoNC10LTQsNC60YLQuNGA0L7QstCw0L3QuNC1JzsKJGxhbmdbJ2VkaXRjYXRlZ29yeSddID0gJ9Cg0LXQtNCw0LrRgtC40YDQvtCy0LDRgtGMINC60LDRgtC10LPQvtGA0LjRjic7CiRsYW5nWydlZGl0Y29tcGFueSddID0gJ9Cg0LXQtNCw0LrRgtC40YDQvtCy0LDRgtGMINC60L7QvNC/0LDQvdC40Y4nOwokbGFuZ1snZWRpdGZpZWxkZGVmJ10gPSAnRWRpdCBGaWVsZCBEZWZpbml0aW9uJzsKJGxhbmdbJ2VtYWlsdGV4dCddID0gJ0VtYWlsJzsKJGxhbmdbJ2Vycm9yX2NvbXBhbnluYW1lJ10gPSAn0J3QsNC30LLQsNC90LjQtSDQutC+0LzQv9Cw0L3QuNC4INC90LUg0LLQtdGA0L3Qvic7CiRsYW5nWydlcnJvcl9jb21wYW55bmFtZV9pbnVzZSddID0gJ9Ca0L7QvNC/0LDQvdC40Y8g0YEg0YLQsNC60LjQvCDQvdCw0LfQstCw0L3QuNC10Lwg0YPQttC1INC90LDRhdC+0LTQuNGC0YHRjyDQsiDQsdCw0LfQtSDQtNCw0L3QvdGL0YUnOwokbGFuZ1snZXJyb3Jfbm9mZXUnXSA9ICfQndC1INGD0LTQsNC70L7RgdGMINC90LDQudGC0Lgg0LzQvtC00YPQu9GMIEZyb250RW5kVXNlcnMnOwokbGFuZ1snZXhwb3J0Y3N2J10gPSAn0K3QutGB0L/QvtGA0YIg0LIgQ1NWJzsKJGxhbmdbJ2ZheCddID0gJ9Ck0LDQutGBJzsKJGxhbmdbJ2ZheHRleHQnXSA9ICfQpNCw0LrRgSc7CiRsYW5nWydmaWVsZGRlZiddID0gJ0ZpZWxkIERlZmluaXRpb24nOwokbGFuZ1snZmllbGRkZWZzJ10gPSAnRmllbGQgRGVmaW5pdGlvbnMnOwokbGFuZ1snZmllbGRkZWZ0ZXh0J10gPSAnRmllbGQgRGVmaW5pdGlvbic7CiRsYW5nWydmaWVsZGRlZmFkZGVkJ10gPSAnRmllbGQgRGVmaW5pdGlvbiBBZGRlZCc7CiRsYW5nWydmaWVsZGRlZnVwZGF0ZWQnXSA9ICdGaWVsZCBEZWZpbml0aW9uIFVwZGF0ZWQnOwokbGFuZ1snZmllbGRkZWZkZWxldGVkJ10gPSAnRmllbGQgRGVmaW5pdGlvbiBEZWxldGVkJzsKJGxhbmdbJ2ZpcnN0cGFnZSddID0gJzw8JzsKJGxhbmdbJ2Zyb250ZW5kZm9ybXRlbXBsYXRlX2FkZGVkaXQnXSA9ICdBZGQvRWRpdCBGcm9udGVuZCBGb3JtIFRlbXBsYXRlJzsKJGxhbmdbJ2Zyb250ZW5kZm9ybXRlbXBsYXRlcyddID0gJ0VkaXQgQ29tcGFueSBUZW1wbGF0ZXMnOwokbGFuZ1snZnJvbnRlbmRmb3JtdGVtcGxhdGV1cGRhdGVkJ10gPSAnRWRpdCBDb21wYW55IFRlbXBsYXRlIFVwZGF0ZWQnOwokbGFuZ1snaGVscCddID0gJzxoMz5XaGF0IGRvZXMgdGhpcyBkbz88L2gzPg0KPHA+VGhpcyBtb2R1bGUgcHJvdmlkZXMgYSB3YXkgdG8gY29sbGVjdCwgb3JnYW5pemUsIGFuZCBkaXNwbGF5IGluZm9ybWF0aW9uIGFib3V0IGNvbXBhbmllcy4gIFVzdWFsbHkgdGhpcyBpcyB0aGUgY29udGFjdCBpbmZvcm1hdGlvbiBhbmQgYSBsb2dvLCBidXQgaXQgaXMgZmxleGliaWxlIGVub3VnaCB0byBhbGxvdyBmb3IgZXh0ZW5kYWJsZSBmaWVsZHMsIGFuZCBkaXNjZW1pbmF0aW5nIHB1YmxpYyBmcm9tIHByaXZhdGUgZGF0YS48L3A+DQo8cD5UaGlzIG1vZHVsZSBjb3VsZCBiZSB1c2VkIGZvciBhIHZhcmlldHkgb2YgcHVycG9zZXMuIEZyb20gYSBzdXBwbGllcnMgbGlzdCB0byBhIGNvbnRhY3QgbGlzdC4gIEl0IGlzIGZsZXhpYmxlIGVub3VnaCB0aGF0IGl0IGNvdWxkIGJlIHJlLXVzZWQgZm9yIG1hbnkgZGlmZmVyZW50IHB1cnBvc2VzLjwvcD4NCjxoMz5Ib3cgRG8gSSBVc2UgSXQ8L2gzPg0KPHA+VGhlIGVhc2llc3Qgd2F5IHRvIHVzZSB0aGlzIG1vZHVsZSBpcyBieSBwbGFjaW5nIHRoZSA8Y29kZT57Q29tcGFueURpcmVjdG9yeX08L2NvZGU+IHRhZyBpbnRvIGVpdGhlciB5b3VyIHBhZ2UgdGVtcGxhdGUgb3IgcGFnZSBjb250ZW50LiAgWW91IHdvdWxkIHRoZW4gc3RhcnQgZWRpdGluZyByZWNvcmRzIGluIHRoZSAiQ29tcGFueSBEaXJlY3RvcnkiIGFkbWluIGludGVyZmFjZS4gIEV4cGxvcmUgdGhlIHZhcmlvdXMgcGFyYW1ldGVycyAoZGVzY3JpYmVkIGJlbG93KSBmb3Igd2F5cyB0byBjdXN0b21pemUgdGhlIGJlaGF2aW91ciBvZiB0aGUgbW9kdWxlLjwvcD4NCjxoMz5TZWN1cml0eTwvaDM+DQo8cD5JbiBvcmRlciB0byBtYW5hZ2UgdGhlIGNvbXBhbmllcyBpbnNpZGUgdGhpcyBtb2R1bGUsIHRoZSBhZG1pbmlzdHJhdG9yIG11c3QgaGF2ZSB0aGUgXCc8L2VtPk1vZGlmeSBDb21wYW55IERpcmVjdG9yeTwvZW0+XCcgcGVybWlzc2lvbi48L3A+DQo8cD5JbiBvcmRlciB0byBlZGl0IHRoZSBidWlsdCBpbiB0ZW1wbGF0ZXMgdGhhdCBjb250cm9sIHRoZSBsYXlvdXQgb2YgdGhlIGNvbXBhbnlkaXJlY3RvcnkgaW5mb3JtYXRpb24sIHRoZSBhZG1pbmlzdHJhdG9yIG5lZWRzIHRoZSBcJzxlbT5Nb2RpZnkgVGVtcGxhdGVzPC9lbT5cJyBwZXJtaXNzaW9uLjwvcD4NCjxwPlRvIGFkanVzdCB0aGUgdmFyaW91cyBzZXR0aW5ncywgdGhlIFwnPGVtPk1vZGlmeSBTaXRlIFByZWZlcmVuY2VzPC9lbT5cJyBwZXJtaXNzaW9uIGlzIHJlcXVpcmVkLjwvcD4NCjxoMz5QcmV0dHkgVVJMUzwvaDM+DQo8cD5GdW5jdGlvbmFsaXR5IGFuZCBmbGV4aWJpbGl0eSBpcyByZWR1Y2VkIHdoZW4gdXNpbmcgcHJldHR5IHVybHMuICBGb3IgZXhhbXBsZSwgaWYgdXNpbmcgcHJldHR5IFVSTFMgd2l0aCB0aGlzIG1vZHVsZSwgeW91IHNob3VsZCBwb3N0IHRoZSB0YWcgZm9yIHRoaXMgbW9kdWxlIGluIHRoZSBkZWZhdWx0IGNvbnRlbnQgYmxvY2ssIGFuZCB3aGVuIGNsaWNraW5nIG9uIGEgbGluayBvciBzdWJtaXR0aW5nIGEgYnV0dG9uIGZyb20gdGhpcyBtb2R1bGUsIGl0XCdzIHJlc3VsdHMgd2lsbCBhbHdheXMgcmVwbGFjZSB0aGUgZGVmYXVsdCBjb250ZW50IGJsb2NrLjwvcD4nOwokbGFuZ1snaWQnXSA9ICdJZCc7CiRsYW5nWydpbWFnZWN1cnJlbnRoaWRkZW4nXSA9ICcnOwokbGFuZ1snaW1hZ2V0ZXh0J10gPSAn0JjQt9C+0LHRgNCw0LbQtdC90LjQtSc7CiRsYW5nWydsYXN0cGFnZSddID0gJz4+JzsKJGxhbmdbJ2xvZ29jdXJyZW50aGlkZGVuJ10gPSAnJzsKJGxhbmdbJ2xvZ290ZXh0J10gPSAn0JvQvtCz0L4nOwokbGFuZ1snbWF4bGVuZ3RoJ10gPSAn0JzQsNC60YEuINC00LvQuNC90LAnOwokbGFuZ1snbWF4X2xlbmd0aCddID0gJ9Cc0LDQutGBLiDQtNC70LjQvdCwJzsKJGxhbmdbJ21heGxlbmd0aHRleHQnXSA9ICfQnNCw0LrRgS4g0LTQu9C40L3QsCc7CiRsYW5nWydtb2RpZmllZGRhdGUnXSA9ICfQlNCw0YLQsCDQv9C+0YHQu9C10LTQvdC10LPQviDQuNC30LzQtdC90LXQvdC40Y8nOwokbGFuZ1snbmFtZSddID0gJ9Cd0LDQt9Cy0LDQvdC40LUnOwokbGFuZ1snbmFtZXRleHQnXSA9ICfQndCw0LfQstCw0L3QuNC1JzsKJGxhbmdbJ25lZWRwZXJtaXNzaW9uJ10gPSAn0JLQsNC8INC90YPQttC90L4g0LjQvNC10YLRjCDQv9GA0LDQstCwIFwnJXNcJyDQtNC70Y8g0Y3RgtC+0LPQviDQtNC10LnRgdGC0LLQuNGPLic7CiRsYW5nWydub2NvbXBhbnluYW1lZ2l2ZW4nXSA9ICfQndC1INC30LDQtNCw0L3QviDQvdCw0LfQstCw0L3QuNC1INC60L7QvNC/0LDQvdC40LgnOwokbGFuZ1snbm9uYW1lZ2l2ZW4nXSA9ICfQndC1INC30LDQtNCw0L3QviDQvdCw0LfQstCw0L3QuNC1JzsKJGxhbmdbJ25vdGFudW1iZXInXSA9ICfQndC1INGH0LjRgdC70L4nOwokbGFuZ1snbmV4dHBhZ2UnXSA9ICc+JzsKJGxhbmdbJ29mJ10gPSAn0JjQtyc7CiRsYW5nWydwYWdlJ10gPSAn0KHRgtGA0LDQvdC40YbQsCc7CiRsYW5nWydwYXJhbV9hY3Rpb24nXSA9ICdEZXRlcm1pbmUgdGhlIHByaW1hcnkgYmVoYXZpb3VyIG9mIHRoZSBtb2R1bGUuICBQb3NzaWJsZSB2YWx1ZXMgZm9yIHRoaXMgcGFyYW1ldGVyIGFyZToNCjx1bD4NCiAgPGxpPmNhdGVnb3J5bGlzdCAtLSBEaXNwbGF5IGEgbGlzdCBvZiBjYXRlZ29yaWVzLiAgVXNlcnMgY2FuIGRyaWxsIGRvd24gdG8gc3VtbWFyeSBtb2RlLCBhbmRkIHRoZW4gdG8gZGV0YWlsIG1vZGUuPC9saT4NCiAgPGxpPjxzdHJvbmc+ZGVmYXVsdDwvc3Ryb25nPiAtLSBEaXNwbGF5IGNvbXBhbmllcyBpbiBhIHN1bW1hcnkgbW9kZS48L2xpPg0KICA8bGk+ZGV0YWlscyAtLSBEaXNwbGF5IGRldGFpbGVkIGluZm9ybWF0aW9uIGFib3V0IGEgc3BlY2lmaWMgY29tcGFueS48L2xpPg0KICA8bGk+ZmVfZWRpdCAtLSBEaXNwbGF5IGEgZm9ybSB0byBhbGxvdyBlZGl0aW5nIGluZm9ybWF0aW9uIGFib3V0IGEgc3BlY2lmaWMgY29tcGFueS48L2xpPg0KICAgDQo8L3VsPg0KJzsKJGxhbmdbJ3BhcmFtX2NhdGVnb3J5J10gPSAnV2hlbiB1c2VkIGluIHRoZSA8ZW0+ZGVmYXVsdDwvZW0+IHN1bW1hcnkgbW9kZSwgdGhpcyBwYXJhbWV0ZXIsIHdoaWNoIHNob3VsZCBtYXRjaCB0aGUgbmFtZSBvZiBhbiBleGlzdGluZyBjYXRlZ29yeSB3aWxsIGJlIHVzZWQgdG8gZGlzcGxheSBvbmx5IHRob3NlIGNvbXBhbmllcyB0aGF0IGFyZSBpbiB0aGF0IGNhdGVnb29yeS4gKGEgY29tbWEgc2VwZXJhdGVkIGxpc3QgY2FuIGJlIHN1cHBsaWVkKSc7CiRsYW5nWydwYXJhbV9jYXRlZ29yeWxpc3R0ZW1wbGF0ZSddID0gJ1NwZWNpZnkgYSB0ZW1wbGF0ZSAoYnkgbmFtZSkgdG8gdXNlIHdoZW4gZGlzcGxheWluZyB0aGUgY2F0ZWdvcnkgbGlzdCB2aWV3Lic7CiRsYW5nWydwYXJhbV9jb21wYW55aWQnXSA9ICdSZXF1aXJlZCBmb3IgdGhlIGZyb250ZW5kIGVkaXRpbmcgYW5kIGRldGFpbCBtb2RlcywgdGhpcyBwYXJhbWV0ZXIgZGV0ZXJtaW5lcyB3aGljaCBjb21wYW55IHJlY29yZCB0byBlZGl0IG9yIHZpZXcuJzsKJGxhbmdbJ3BhcmFtX2RldGFpbHBhZ2UnXSA9ICdTcGVjaWZ5IGEgcGFnZSBhbGlhcyAoYnkgbmFtZSkgdG8gdXNlIGZvciBkaXNwbGF5aW5nIGEgZGV0YWlsIHJlY29yZC4gPHN0cm9uZz5Ob3RlOjwvc3Ryb25nPiBUaGlzIHRhZyBwYXJhbWV0ZXIgaXMgbm90IGNvbXBhdGlibGUgd2l0aCBwcmV0dHkgdXJscy4nOwokbGFuZ1sncGFyYW1fZGV0YWlsdGVtcGxhdGUnXSA9ICdTcGVjaWZ5IGEgdGVtcGxhdGUgKGJ5IG5hbWUpIHRvIHVzZSB3aGVuIGRpc3BsYXlpbmcgdGhlIGRldGFpbCB2aWV3LiAgPHN0cm9uZz5Ob3RlOjwvc3Ryb25nPiBUaGlzIHRhZyBwYXJhbWV0ZXIgaXMgbm90IGNvbXBhdGlibGUgd2l0aCBwcmV0dHkgdXJscy4nOwokbGFuZ1sncGFyYW1fZnJvbnRlbmRmb3JtdGVtcGxhdGUnXSA9ICdTcGVjaWZ5IGEgdGVtcGxhdGUgKGJ5IG5hbWUpIHRvIHVzZSB3aGVuIGRpc3BsYXlpbmcgdGhlIGZyb250IGVuZCBjb21wYW55IGVkaXQgZm9ybS4nOwokbGFuZ1sncGFyYW1fc2VsZWN0Y2F0ZWdvcnknXSA9ICdJZiB0aGlzIHBhcmFtZXRlciBpcyBzZXQsIHRoZW4gYSBmb3JtIHdpbGwgYmUgZ2VuZXJhdGVkIGFsbG93aW5nIHVzZXJzIHRvIGludGVyYWN0aXZlbHkgZmlsdGVyIGNvbXBhbnkgcmVjb3JkcyBvbiBhIHNpbmdsZSBjYXRlZ29yeS4gIFRoaXMgZmxhZyBzaG91bGQgbm90IGJlIHVzZWQgaW4gY29uanVuY3Rpb24gd2l0aCB0aGUgXCdjYXRlZ29yeVwnIHBhcmFtZXRlci4nOwokbGFuZ1sncGFyYW1fc29ydG9yZGVyJ10gPSAnU3BlY2lmeSB0aGUgb3JkZXIgb2Ygc29ydGVkIGZpZWxkcyBpbiBzdW1tYXJ5IHZpZXcuICBQb3NzaWJsZSB2YWx1ZXMgYXJlOg0KPHVsPg0KICA8bGk+PHN0cm9uZz5hc2M8L3N0cm9uZz4gLS0gQXNjZW5kaW5nIG9yZGVyPC9saT4NCiAgPGxpPmRlc2MgLS0gRGVzY2VuZGluZyBvcmRlcjwvbGk+DQo8L3VsPic7CiRsYW5nWydwYXJhbV9zb3J0YnknXSA9ICdBcHBsaWNhYmxlIG9ubHkgaW4gc3VtbWFyeSBtb2RlLCB0aGlzIHBhcmFtZXRlciBkZXRlcm1pbmVzIHRoZSBzb3J0aW5nIG9mIHRoZSBvdXRwdXQgY29tcGFuaWVzLiAgUG9zc2libGUgdmFsdWVzIGFyZToNCjx1bD4NCiAgPGxpPjxzdHJvbmc+Y29tcGFueV9uYW1lPC9zdHJvbmc+PC9saT4NCiAgPGxpPnBob25lPC9saT4NCiAgPGxpPmZheDwvbGk+DQogIDxsaT5lbWFpbDwvbGk+DQogIDxsaT53ZWJzaXRlIC0tIFRoZSB3ZWJzaXRlIHVybDwvbGk+DQogIDxsaT5jcmVhdGVkIC0tIFRoZSBjcmVhdGlvbiBkYXRlIGZvciB0aGlzIGNvbXBhbnkgcmVjb3JkPC9saT4NCiAgPGxpPm1vZGlmaWVkIC0tIFRoZSBtb2RpZmllZCBkYXRlIGZvciB0aGlzIGNvbXBhbnkgcmVjb3JkPC9saT4NCjwvdWw+JzsKJGxhbmdbJ3BhcmFtX3N1bW1hcnl0ZW1wbGF0ZSddID0gJ9Cj0LrQsNC20LjRgtC1INGI0LDQsdC70L7QvSAo0L/QviDQvdCw0LfQstCw0L3QuNGOKSwg0YfRgtC+0LHRiyDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0L/RgNC4INC+0YLQvtCx0YDQsNC20LXQvdC40Lgg0YDQtdC30Y7QvNC1LiA8c3Ryb25nPtCf0YDQuNC80LXRh9Cw0L3QuNC1Ojwvc3Ryb25nPiDQrdGC0L7RgiDQv9Cw0YDQsNC80LXRgtGAINGC0LXQs9CwINC90LUg0YHQvtCy0LzQtdGB0YLQuNC8INGBINC60YDQsNGB0LjQstGL0LzQuCBVUkwuJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsJ10gPSAn0JzQvtC00YPQu9GMIENvbXBhbnkgRGlyZWN0b3J5INGD0YHQv9C10YjQvdC+INGD0YHRgtCw0L3QvtCy0LvQtdC9JzsKJGxhbmdbJ3Bvc3R1bmluc3RhbGwnXSA9ICfQnNC+0LTRg9C70YwgQ29tcGFueSBEaXJlY3Rvcnkg0YPRgdC/0LXRiNC90L4g0YPQtNCw0LvRkdC9LiDQktGB0LUg0YHQstGP0LfQsNC90L3Ri9C1INC00LDQvdC90YvQtSDQutC+0LzQv9Cw0L3QuNC5INCx0YvQu9C4INGB0YLRkdGA0YLRiyc7CiRsYW5nWydwcmV1bmluc3RhbGwnXSA9ICfQktGLINGD0LLQtdGA0LXQvdGLLCDRh9GC0L4g0YXQvtGC0LjRgtC1INGD0LTQsNC70LjRgtGMINGN0YLQvtGCINC80L7QtNGD0LvRjD8g0KPQtNCw0LvQtdC90LjQtSDRjdGC0L7Qs9C+INC80L7QtNGD0LvRjyDQvdCw0LLRgdC10LPQtNCwINGB0L7RgtGA0ZHRgiDQstGB0LUg0YHQstGP0LfQsNC90L3Ri9C1INGBINC90LjQvCDQtNCw0L3QvdGL0LUg0LrQvtC80L/QsNC90LjQuS4nOwokbGFuZ1sncHJldnBhZ2UnXSA9ICc8JzsKJGxhbmdbJ3Byb21wdF9kZXRhaWxwYWdlJ10gPSAn0KHRgtGA0LDQvdC40YbQsCDQv9C+INGD0LzQvtC70YfQsNC90LjRjiDQtNC70Y8g0L/QtdGA0LXQvdCw0L/RgNCw0LLQu9C10L3QuNGPINCyINGA0LXQttC40Lwg0L/QvtC00YDQvtCx0L3Qvic7CiRsYW5nWydwcm9tcHRfcGFnZWxpbWl0J10gPSAn0KfQuNGB0LvQviDQt9Cw0L/QuNGB0LXQuSDQvdCwINGB0YLRgNCw0L3QuNGG0LUg0LTQu9GPINC/0YDQvtGB0LzQvtGC0YDQsCDQsiDRgNC10LbQuNC80LUg0YDQtdC30Y7QvNC1JzsKJGxhbmdbJ3Byb21wdF9zdW1tYXJ5c29ydGluZyddID0gJ9Ch0L7RgNGC0LjRgNC+0LLQutCwINC/0L4g0YPQvNC+0LvRh9Cw0L3QuNGOINCyINGA0LXQttC40LzQtSDRgNC10LfRjtC80LUnOwokbGFuZ1sncHJvbXB0X3N1bW1hcnlzb3J0b3JkZXInXSA9ICdUaGUgZGVmYXVsdCBzb3J0IG9yZGVyIGluIHN1bW1hcnkgbW9kZSA8ZW0+KGRvZXMgbm90IGFwcGx5IHdoZW4gc29ydGluZyBpcyBcJ3JhbmRvbVwnPC9lbT4nOwokbGFuZ1sncHJvbXB0X3RlbXBsYXRlJ10gPSAn0KjQsNCx0LvQvtC9JzsKJGxhbmdbJ3B1YmxpYyddID0gJ9Ce0LHRidC40LknOwokbGFuZ1sncHVibGlzaGVkJ10gPSAn0J7Qv9GD0LHQu9C40LrQvtCy0LDQvdC+JzsKJGxhbmdbJ3ByZWZlcmVuY2VzJ10gPSAn0J/QsNGA0LDQvNC10YLRgNGLJzsKJGxhbmdbJ3JhbmRvbSddID0gJ9Ch0LvRg9GH0LDQudC90L4nOwokbGFuZ1sncmVzZXR0b2ZhY3RvcnknXSA9ICfQodCx0YDQvtGB0LjRgtGMINC30L3QsNGH0LXQvdC40Y8g0L/QviDRg9C80L7Qu9GH0LDQvdC40Y4nOwokbGFuZ1sncmVzdG9yZXRvZGVmYXVsdHNtc2cnXSA9ICfQrdGC0LAg0L7Qv9C10YDQsNGG0LjRjyDQstC+0YHRgdGC0LDQvdC+0LLQuNGCINGB0L7QtNC10YDQttCw0L3QuNC1INGI0LDQsdC70L7QvdCwINC/0L4g0YPQvNC+0LvRh9Cw0L3QuNGOINC40Lcg0YHQuNGB0YLQtdC80YsuINCS0Ysg0YPQstC10YDQtdC90YssINGH0YLQviDRhdC+0YLQuNGC0LUg0L/RgNC+0LTQvtC70LbQuNGC0Yw/JzsKJGxhbmdbJ3NlYXJjaCddID0gJ9Cf0L7QuNGB0LonOwokbGFuZ1snc3RhdHVzJ10gPSAn0KHRgtCw0YLRg9GBJzsKJGxhbmdbJ3N1Ym1pdCddID0gJ9Ce0YLQv9GA0LDQstC40YLRjCc7CiRsYW5nWydzdW1tYXJ5dGVtcGxhdGVfYWRkZWRpdCddID0gJ9CU0L7QsdCw0LLQuNGC0Ywv0KDQtdC00LDQutGC0LjRgNC+0LLQsNGC0Ywg0YjQsNCx0LvQvtC9INGA0LXQt9GO0LzQtSc7CiRsYW5nWydzdW1tYXJ5dGVtcGxhdGVzJ10gPSAn0KjQsNCx0LvQvtC90Ysg0YDQtdC30Y7QvNC1JzsKJGxhbmdbJ3N1bW1hcnl0ZW1wbGF0ZXVwZGF0ZWQnXSA9ICfQqNCw0LHQu9C+0L0g0YDQtdC30Y7QvNC1INC+0LHQvdC+0LLQu9GR0L0nOwokbGFuZ1snc3lzZGVmYXVsdHMnXSA9ICfQktC+0YHRgdGC0LDQvdC+0LLQuNGC0Ywg0LfQvdCw0YfQtdC90LjRjyDQv9C+INGD0LzQvtC70YfQsNC90LjRjic7CiRsYW5nWyd0ZWxlcGhvbmUnXSA9ICfQotC10LvQtdGE0L7QvSc7CiRsYW5nWyd0ZWxlcGhvbmV0ZXh0J10gPSAn0KLQtdC70LXRhNC+0L0nOwokbGFuZ1sndGl0bGVfY2F0ZWdvcnlsaXN0X2RmbHR0ZW1wbGF0ZSddID0gJ9Ca0LDRgtC10LPQvtGA0LjRjyDQv9C+INGD0LzQvtC70YfQsNC90LjRjiDRgdC/0LjRgdC60LAg0YjQsNCx0LvQvtC90L7Qsic7CiRsYW5nWyd0aXRsZV9kZXRhaWxfZGZsdHRlbXBsYXRlJ10gPSAn0KjQsNCx0LvQvtC9INC/0L4g0YPQvNC+0LvRh9Cw0L3QuNGOINC00LvRjyDQv9C+0LTRgNC+0LHQvdC+JzsKJGxhbmdbJ3RpdGxlX2Zyb250ZW5kZm9ybV9kZmx0dGVtcGxhdGUnXSA9ICfQpNC+0YDQvNCwINGI0LDQsdC70L7QvdCwINC/0L4g0YPQvNC+0LvRh9Cw0L3QuNGOINC00LvRjyDRhNGA0L7QvdGC0LXQvdC00LAnOwokbGFuZ1sndGl0bGVfc3VtbWFyeV9kZmx0dGVtcGxhdGUnXSA9ICfQqNCw0LHQu9C+0L0g0L/QviDRg9C80L7Qu9GH0LDQvdC40Y4g0LTQu9GPINGA0LXQt9GO0LzQtSc7CiRsYW5nWyd0eXBlJ10gPSAn0KLQuNC/JzsKJGxhbmdbJ3R5cGV0ZXh0J10gPSAn0KLQuNC/JzsKJGxhbmdbJ3VwJ10gPSAn0JLQstC10YDRhSc7CiRsYW5nWyd3ZWJzaXRlJ10gPSAn0JLQtdCxLdGB0LDQudGCJzsKJGxhbmdbJ3dlYnNpdGV0ZXh0J10gPSAn0JLQtdCxLdGB0LDQudGCJzsKJGxhbmdbJ3V0bXonXSA9ICcxNTY4NjEzNTMuMTE5OTI3MzY5MS4yMC43LnV0bWNjbj0ocmVmZXJyYWwpfHV0bWNzcj1kZXYuY21zbWFkZXNpbXBsZS5vcmd8dXRtY2N0PS9mb3J1bS9mb3J1bS5waHB8dXRtY21kPXJlZmVycmFsJzsKJGxhbmdbJ3V0bWEnXSA9ICcxNTY4NjEzNTMuMTA0NTU2NjYwMC4xMTkzMTY0NDQwLjExOTk2NzcwNTkuMTE5OTY4NTU0My4zOCc7CiRsYW5nWyd1dG1jJ10gPSAnMTU2ODYxMzUzJzsKPz4=]]></data>
	</file>
	<file>
	  <filename>/lang/ext/sv_SE.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnQSBkaXJlY3RvcnkgbGlrZSBtb2R1bGUgZm9yIGNvbXBhbmllcy4gIEFsbG93cyBhZGRpbmcvZWRpdGluZy9pbXBvcnRpbmcvZXhwb3J0aW5nIGNvbXBhbnkgZGVmaW5pdGlvbnMsIGFuZCB2YXJpb3VzIHdheXMgb2YgZGlzcGxheWluZyB0aGUgY29tcGFueSBlbnRyaWVzIGluY2x1ZGluZyBzZWFyY2guICBUaGlzIG1vZHVsZSBpbnRlZ3JhdGVzIHdlbGwgd2l0aCBDR0dvb2dsZU1hcHMuJzsKJGxhbmdbJ21zZ19pbXBvcnRfY29tcGxldGUnXSA9ICdJbXBvcnRlcmluZ3Nwcm9jZXNzIGx5Y2thZGVzJzsKJGxhbmdbJ3Byb21wdF9oaWVyYXJjaGllc19pbXBvcnRlZCddID0gJ0hpZXJhcmtpIFBvc2l0aW9uZXIgU2thcGFkZSc7CiRsYW5nWydwcm9tcHRfaW1wb3J0X2hpZXJhcmNoeWRlZnMnXSA9ICdJbXBvcnQgSGllcmFyY2h5IFJlY29yZHMnOwokbGFuZ1sncHJvbXB0X2ltcG9ydF9oaWVyYXJjaHl2YWxzJ10gPSAnSW1wb3J0IEhpZXJhcmNoeSBWYWx1ZXMnOwokbGFuZ1snZXJyb3JfaW5zZXJ0X2hpZXJhcmNoeSddID0gJ0Vycm9yIGNyZWF0aW5nIGhpZXJhcmNoeSAmcXVvdDslcyZxdW90Oyc7CiRsYW5nWydlcnJvcl9kdXBsaWNhdGVfaGllcmFyY2h5J10gPSAnSGllcmFyY2h5IHdpdGggbG9uZyBuYW1lICZxdW90OyVzJnF1b3Q7IGFscmVhZHkgZXhpc3RzLic7CiRsYW5nWydjb21wYW55ZGVsZXRlZCddID0gJ0Ymb3VtbDtyZXRhZyByYWRlcmF0JzsKJGxhbmdbJ2Vycm9yX3VwbG9hZCddID0gJ0ZlbCB2aWQgZmlsdXBwbGFkZG5pbmcnOwokbGFuZ1snZXJyb3JfZGVsaW1pdGVyJ10gPSAnRHUgbSZhcmluZztzdGUgc3BlY2lmaWNlcmEgZW4gZiZhdW1sO2x0YXZnciZhdW1sO25zYXJlJzsKJGxhbmdbJ2Vycm9yX25vc3BvdHNsZWZ0J10gPSAnWW91IGhhdmUgbm8gcmVtYWluaW5nIGNvbXBhbnkgc2xvdHMnOwokbGFuZ1snbXNnX3Nsb3RzdXNlZCddID0gJ1lvdSBoYXZlIHVzZWQgJWQgb2YgJWQgY29tcGFueSBzbG90cyc7CiRsYW5nWydpbXBvcnRfZmlsZW5hbWUnXSA9ICdWJmF1bWw7bGogQ1NWIGZpbCc7CiRsYW5nWydkZWxpbWl0ZXInXSA9ICdGJmF1bWw7bHRhdmdyJmF1bWw7bnNhcmUnOwokbGFuZ1snaW5mb19jc3ZmaWxlJ10gPSAnRGV0ICZhdW1sO3IgbSZvdW1sO2psaWd0IGF0dCBpbXBvcnRlcmEgZiZvdW1sO3JldGFnc2luZm9ybWF0aW9uIGZyJmFyaW5nO24gZW4gQVNDSUkgZmlsLic7CiRsYW5nWydwcm9tcHRfaW1wb3J0X3RlbXBsYXRlJ10gPSAnVGhpcyB0ZW1wbGF0ZSBkZXNjcmliZXMgYSBmb3JtIHRoYXQgaXMgdXNlZCB0byBhbGxvdyBhdXRob3JpemVkIGZyb250ZW5kIHVzZXJzIHRvIGltcG9ydCBkYXRhIGZyb20gYSBwcm9wZXJseSBmb3JtYXR0ZWQgQ1NWIGZpbGUnOwokbGFuZ1snZnJvbnRlbmRpbXBvcnR0ZW1wbGF0ZSddID0gJ0Zyb250ZW5kIENTViBJbXBvcnQgVGVtcGxhdGUnOwokbGFuZ1sncHJvbXB0X2ZldV9pbXBvcnQnXSA9ICdBbGxvdyBGcm9udGVuZFVzZXJzIHRvIGltcG9ydCByZWNvcmRzIGZyb20gQ1NWPyc7CiRsYW5nWydwYXJhbV9oaWVybGlzdHRlbXBsYXRlJ10gPSAnU3BlY2lmeSBhIHRlbXBsYXRlIChieSBuYW1lKSB0byB1c2Ugd2hlbiBkaXNwbGF5aW5nIHRoZSBoaWVyYXJjaHkgbGlzdCB2aWV3Lic7CiRsYW5nWydoaWVybGlzdHRlbXBsYXRlX2FkZGVkaXQnXSA9ICdBZGQvRWRpdCBIaWVyYXJjaHkgTGlzdCBUZW1wbGF0ZSc7CiRsYW5nWyd0aXRsZV9oaWVybGlzdF9kZmx0dGVtcGxhdGUnXSA9ICdEZWZhdWx0IEhpZXJhcmNoeSBMaXN0IFRlbXBsYXRlJzsKJGxhbmdbJ2hpZXJhcmNoeWxpc3R0ZW1wbGF0ZXMnXSA9ICdIaWVyYXJjaHkgTGlzdCBUZW1wbGF0ZXMnOwokbGFuZ1sncGFyYW1faGllciddID0gJ0FwcGxpY2FibGUgdG8gdGhlIDxlbT5kZWZhdWx0PC9lbT4gYW5kIDxlbT5oaWVybGlzdDwvZW0+IGFjdGlvbnMsIHRoaXMgcGFyYW1ldGVyIGFsbG93cyBzcGVjaWZ5aW5nIGEgaGllcmFyY2h5IG5hbWUgb2YgY29tcGFuaWVzIHRvIGRpc3BsYXkuICBJbiB0aGUgZGVmYXVsdCBhY3Rpb24sIFdpbGRjYXJkcyBhcmUgYWNjZXB0ZWQsIGkuZTogJnF1b3Q7KnNvbWVoaWVyYXJjaHluYW1lKiZxdW90Oy4gIEhvd2V2ZXIgaW4gdGhlIGhpZXJsaXN0IGFjdGlvbiwgdGhpcyBwYXJhbWV0ZXIgbXVzdCBjb250YWluIHRoZSB1bmlxdWUgbmFtZSBvZiBhIGhpZXJhcmNoeSBwb3NpdGlvbiwgYW5kIHdpbGwgc3BlY2lmeSB0aGUgc3RhcnRpbmcgbG9jYXRpb24gb2YgdGhlIGhpZXJhcmNoeSBkaXNwbGF5Lic7CiRsYW5nWydtc2dfaGllcmRlbGV0ZWQnXSA9ICdIaWVyYXJjaHkgcG9zaXRpb24gZGVsZXRlZCc7CiRsYW5nWydtc2dfaGllcnVwZGF0ZWQnXSA9ICdIaWVyYXJjaHkgcG9zaXRpb24gdXBkYXRlZCc7CiRsYW5nWydtc2dfaGllcmFkZGVkJ10gPSAnSGllcmFyY2h5IHBvc2l0aW9uIGFkZGVkJzsKJGxhbmdbJ2FkZGhpZXInXSA9ICdBZGQgSGllcmFyY2h5JzsKJGxhbmdbJ2hpZXJhcmNoeSddID0gJ0hpZXJhcmNoeSc7CiRsYW5nWydhZGRfZWRpdF9jYXRlZ29yeSddID0gJ0wmYXVtbDtnZyB0aWxsL1JlZGlnZXJhIGthdGVnb3JpJzsKJGxhbmdbJ2xibF9zZXR0aW5ncyddID0gJ0luc3QmYXVtbDtsbG5pbmdhcic7CiRsYW5nWydsYmxfdGVtcGxhdGVzJ10gPSAnTWFsbGFyJzsKJGxhbmdbJ25vbmUnXSA9ICdJbmdhJzsKJGxhbmdbJ293bmVyJ10gPSAnJkF1bWw7Z2FyZSc7CiRsYW5nWydjcmVhdGVkJ10gPSAnU2thcGFkJzsKJGxhbmdbJ21vZGlmaWVkJ10gPSAnJkF1bWw7bmRyYWQnOwokbGFuZ1snZnJvbnRlbmRsaXN0dGVtcGxhdGVfYWRkZWRpdCddID0gJ0FkZCBvciBFZGl0IGEgRnJvbnRlbmQgTGlzdCBUZW1wbGF0ZSc7CiRsYW5nWydwcm9tcHRfZmV1X2NoYW5nZV9zdGF0dXMnXSA9ICdDYW4gZnJvbnRlbmQgdXNlcnMgY2hhbmdlIGEgY29tbXBhbnkgc3RhdHVzPyc7CiRsYW5nWydwcm9tcHRfZmV1X25ld19zdGF0dXMnXSA9ICdEZWZhdWx0IHN0YXR1cyBmb3IgbmV3IHJlY29yZHMgY3JlYXRlZCBvbiB0aGUgZnJvbnRlbmQnOwokbGFuZ1sndGl0bGVfZnJvbnRlbmRsaXN0X2RmbHR0ZW1wbGF0ZSddID0gJ0RlZmF1bHQgRnJvbnRlbmQgTGlzdCBUZW1wbGF0ZSc7CiRsYW5nWydmcm9udGVuZGxpc3R0ZW1wbGF0ZXMnXSA9ICdGcm9udGVuZCBMaXN0IFRlbXBsYXRlcyc7CiRsYW5nWydwcm9tcHRfZ2VuZXJhbF9zZXR0aW5ncyddID0gJ0FsbG0mYXVtbDtubmEgSW5zdCZhdW1sO2xsbmluZ2FyJzsKJGxhbmdbJ3Byb21wdF9mZXVfZWRpdF9zZXR0aW5ncyddID0gJ0Zyb250ZW5kIEVkaXRpbmcgU2V0dGluZ3MnOwokbGFuZ1sncHJvbXB0X2ZldV9jcmVhdGUnXSA9ICdDYW4gRnJvbnRFbmRVc2VycyBDcmVhdGUgbmV3IFJlY29yZHM/JzsKJGxhbmdbJ3Byb21wdF9mZXVfbnVtcmVjb3JkcyddID0gJ01heGltdW0gbnVtYmVyIG9mIHJlY29yZHMgdGhhdCBjYW4gYmUgYXNzb2NpYXRlZCB3aXRoIGEgRkVVIGFjY291bnQnOwokbGFuZ1sncHJvbXB0X251bWltcG9ydGVkJ10gPSAnTnVtYmVyIG9mIEltcG9ydGVkIFJlY29yZHMnOwokbGFuZ1sncHJvbXB0X2R1cGxpY2F0ZV9uYW1lJ10gPSAnQ2hlY2sgZm9yIGR1cGxpY2F0ZSBjb21wYW55IG5hbWVzJzsKJGxhbmdbJ3Byb21wdF9zdGF0dXMnXSA9ICdTdGF0dXMgZm9yIGltcG9ydGVkIHJlY29yZCc7CiRsYW5nWydwcm9tcHRfaWdub3JlX2FkZHJlc3MnXSA9ICdJZ25vcmUgYWRkcmVzcyBmaWVsZCc7CiRsYW5nWydwcm9tcHRfY29udmVydF9hZGRyZXNzJ10gPSAnQ29udmVydCBBZGRyZXNzZXMgdG8gY29vcmRpbmF0ZXMgKGlmIHRoZXJlIGFyZSBubyBjb29yZGluYXRlcyknOwokbGFuZ1sncHJvbXB0X2ttbGZpbGUnXSA9ICdLTUwgRmlsZSB0byBJbXBvcnQnOwokbGFuZ1snaW1wb3J0a21sJ10gPSAnSW1wb3J0ZXJhIEtNTCc7CiRsYW5nWydpbXBvcnRfa21sJ10gPSAnSW1vcHJ0ZXJhIEtNTCBmaWwnOwokbGFuZ1snc2VsZWN0b25lJ10gPSAnViZhdW1sO2xqIEVuJzsKJGxhbmdbJ2Vycm9yX2ZldV9sb2dnZWRpbiddID0gJ1RvIHVzZSB0aGlzIGZ1bmN0aW9uIHlvdSBtdXN0IGJlIGxvZ2dlZCBpbiB0byB0aGUgZnJvbnRlbmQgb2YgdGhlIHdlYnNpdGUnOwokbGFuZ1snYWN0aXZlJ10gPSAnQWt0aXYnOwokbGFuZ1snYWRkbGluayddID0gJ0wmYXVtbDtnZyB0aWxsIGwmYXVtbDtuayc7CiRsYW5nWydhZGRyZXNzJ10gPSAnQWRyZXNzJzsKJGxhbmdbJ2FkZHJlc3N0ZXh0J10gPSAnQWRyZXNzJzsKJGxhbmdbJ2FkZGNhdGVnb3J5J10gPSAnTCZhdW1sO2dnIHRpbGwga2F0ZWdvcmknOwokbGFuZ1snYWRkY29tcGFueSddID0gJ0wmYXVtbDtnZyB0aWxsIGYmb3VtbDtyZXRhZyc7CiRsYW5nWydhZGRmaWVsZGRlZiddID0gJ0wmYXVtbDtnZyB0aWxsIGYmYXVtbDtsdGRlZmluaXRpb24nOwokbGFuZ1snYWRtaW5fb25seSddID0gJ0VuZGFzdCBzeW5saWcgZiZvdW1sO3IgYWRtaW4nOwokbGFuZ1snYXJleW91c3VyZSddID0gJyZBdW1sO3IgZHUgcyZhdW1sO2tlciBwJmFyaW5nOyBhdHQgZHUgdmlsbCB0YSBib3J0IGRldHRhPyc7CiRsYW5nWydhc2NlbmRpbmcnXSA9ICdTdGlnYW5kZSc7CiRsYW5nWydjYW5jZWwnXSA9ICcmQXJpbmc7bmdyYSc7CiRsYW5nWydjYW51c2VyZWRpdCddID0gJ0thbiBmcmFtc2lkZWFudiZhdW1sO25kYXJlICZhdW1sO25kcmEgZGV0dGEgZiZhdW1sO2x0ZXQ/JzsKJGxhbmdbJ2NhbnVzZXJ2aWV3J10gPSAnS2FuIGZyYW1zaWRlYW52JmF1bWw7bmRhcmUgc2UgZGV0dGEgZiZhdW1sO2x0ZXQ/JzsKJGxhbmdbJ2NhdGVnb3J5J10gPSAnS2F0ZWdvcmknOwokbGFuZ1snY2F0ZWdvcmllcyddID0gJ0thdGVnb3JpZXInOwokbGFuZ1snY2F0ZWdvcnl0ZXh0J10gPSAnS2F0ZWdvcmknOwokbGFuZ1snY2F0ZWdvcnlhZGRlZCddID0gJ0thdGVnb3JpIHRpbGxhZ2QnOwokbGFuZ1snY2F0ZWdvcnl1cGRhdGVkJ10gPSAnS2F0ZWdvcmkgdXBwZGF0ZXJhZCc7CiRsYW5nWydjYXRlZ29yeWxpc3R0ZW1wbGF0ZV9hZGRlZGl0J10gPSAnTCZhdW1sO2dnIHRpbGwvJmF1bWw7bmRyYSBtYWxsZW4gZiZvdW1sO3Iga2F0ZWdvcmlsaXN0YSc7CiRsYW5nWydjYXRlZ29yeWxpc3R0ZW1wbGF0ZXMnXSA9ICdNYWxsIGYmb3VtbDtyIGthdGVnb3JpbGlzdGEnOwokbGFuZ1snY2F0ZWdvcnlsaXN0dGVtcGxhdGV1cGRhdGVkJ10gPSAnS2F0ZWdvcmlsaXN0YSB1cHBkYXRlcmFkJzsKJGxhbmdbJ2NvbXBhbnknXSA9ICdGJm91bWw7cmV0YWcnOwokbGFuZ1snY29tcGFueWFkZGVkJ10gPSAnRiZvdW1sO3JldGFnIHRpbGxhZ3QnOwokbGFuZ1snY29tcGFueW5hbWUnXSA9ICdGJm91bWw7cmV0YWdzbmFtbic7CiRsYW5nWydjb21wYW55dXBkYXRlZCddID0gJ0Ymb3VtbDtyZXRhZyB1cHBkYXRlcmF0JzsKJGxhbmdbJ2NvbXBhbmllcyddID0gJ0Ymb3VtbDtyZXRhZyc7CiRsYW5nWydjb21wYW55dGV4dCddID0gJ0Ymb3VtbDtyZXRhZyc7CiRsYW5nWydjb21wYW55ZGlyZWN0b3J5J10gPSAnRiZvdW1sO3JldGFnc2thdGFsb2cnOwokbGFuZ1snY29udGFjdGVtYWlsJ10gPSAnRS1wb3N0YWRyZXNzJzsKJGxhbmdbJ2NyZWF0ZWRkYXRlJ10gPSAnRGF0dW0gdGlsbGFnZCc7CiRsYW5nWydkZWZhdWx0dGVtcGxhdGVzJ10gPSAnU3RhbmRhcmRtYWxsYXInOwokbGFuZ1snZGVmYXVsdF90ZW1wbGF0ZV9ub3RpY2UnXSA9ICc8c3Ryb25nPk5vdGU6PC9zdHJvbmc+IElubmVoJmFyaW5nO2xsZXQgaSBkZXNzYSB0ZXh0cnV0b3IgYW52JmF1bWw7bmRzIGYmb3VtbDtyIGF0dCBhbmdlIHN0YW5kYXJkaW5uZWgmYXJpbmc7bGxldCBmJm91bWw7ciBtYWxsYXJuYSBuJmF1bWw7ciBkdSBrbGlja2FyIHAmYXJpbmc7ICZhbXA7cXVvdDtMJmF1bWw7Z2cgdGlsbCBtYWxsJmFtcDtxdW90OyBpIHJlc3Bla3RpdmUgbWFsbGZsaWsuIEF0dCAmYXVtbDtuZHJhIGRlc3NhIHRleHRydXRvciBoYXIgZGV0IGludGUgbiZhcmluZztnb24gJm91bWw7Z29uYmxpY2tsaWcgcCZhcmluZzt2ZXJrYW4gcCZhcmluZzsgZGluIHdlYmJzaWRhLic7CiRsYW5nWydkZWxldGUnXSA9ICdUYSBib3J0JzsKJGxhbmdbJ2RlbGV0ZWNhdGVnb3J5J10gPSAnVGEgYm9ydCBrYXRlZ29yaSc7CiRsYW5nWydkZWxldGVjb21wYW55J10gPSAnVGEgYm9ydCBmJm91bWw7cmV0YWcnOwokbGFuZ1snZGVsZXRlZmllbGRkZWYnXSA9ICdUYSBib3J0IGYmYXVtbDtsdGRlZmluaXRpb24nOwokbGFuZ1snZGVzY2VuZGluZyddID0gJ0ZhbGxhbmRlJzsKJGxhbmdbJ2Rlc2NyaXB0aW9uJ10gPSAnQmVza3Jpdm5pbmcnOwokbGFuZ1snZGV0YWlscyddID0gJ0RldGFsamVyJzsKJGxhbmdbJ2RldGFpbHN0ZXh0J10gPSAnRGV0YWxqZXInOwokbGFuZ1snZGV0YWlsdGVtcGxhdGVfYWRkZWRpdCddID0gJ0wmYXVtbDtnZyB0aWxsL3RhIGJvcnQgbWFsbCc7CiRsYW5nWydkZXRhaWx0ZW1wbGF0ZXMnXSA9ICdEZXRhbGptYWxsYXInOwokbGFuZ1snZGV0YWlsdGVtcGxhdGV1cGRhdGVkJ10gPSAnRGV0YWxqbWFsbCB1cHBkYXRlcmFkJzsKJGxhbmdbJ2Rpc2FibGVkJ10gPSAnQXZha3RpdmVyYWQnOwokbGFuZ1snZG93biddID0gJ05lZCc7CiRsYW5nWydkcmFmdCddID0gJ1V0a2FzdCc7CiRsYW5nWydlZGl0J10gPSAnJkF1bWw7bmRyYSc7CiRsYW5nWydlZGl0Y2F0ZWdvcnknXSA9ICcmQXVtbDtuZHJhIGthdGVnb3JpJzsKJGxhbmdbJ2VkaXRjb21wYW55J10gPSAnJkF1bWw7bmRyYSBmJm91bWw7cmV0YWcnOwokbGFuZ1snZWRpdGZpZWxkZGVmJ10gPSAnJkF1bWw7bmRyYSBmJmF1bWw7bHRkZWZpbml0aW9uJzsKJGxhbmdbJ2VtYWlsdGV4dCddID0gJ0UtcG9zdCc7CiRsYW5nWydlcnJvcl9iYWR1cGxvYWQnXSA9ICdFdHQgZmVsIHVwcHN0b2QgbWVkIGRlbiB1cHBsYWRkYWRlIGZpbGVuJzsKJGxhbmdbJ2Vycm9yX2NvbXBhbnluYW1lJ10gPSAnRiZvdW1sO3JldGFnc25hbW5ldCAmYXVtbDtyIGludGUgZ2lsdGlndCc7CiRsYW5nWydlcnJvcl9jb21wYW55bmFtZV9pbnVzZSddID0gJ0V0dCBmJm91bWw7cmV0YWcgbWVkIGRldCBuYW1uZXQgZmlubnMgcmVkYW4gaSBkYXRhYmFzZW4nOwokbGFuZ1snZXJyb3JfZHVwbGljYXRlX2NhdGVnb3J5J10gPSAnRW4ga2F0ZWdvcmkgbWVkIGRldCBuYW1uZXQgZXhpc3RlcmFyIHJlZGFuJzsKJGxhbmdbJ2Vycm9yX2R1cGxpY2F0ZV9jb21wYW55J10gPSAnRXR0IGYmb3VtbDtyZXRhZyBtZWQgZGV0IG5hbW5ldCAoJXMpIGV4aXN0ZXJhciByZWRhbic7CiRsYW5nWydlcnJvcl9kdXBsaWNhdGVfZmllbGRkZWYnXSA9ICdFdHQgZiZhdW1sO2x0IG1lZCBkZXQgbmFtbmV0IGV4aXN0ZXJhciByZWRhbic7CiRsYW5nWydlcnJvcl9pbXBvcnRfYmFkbGluZSddID0gJ0JhZCByZWNvcmQgZm91bmQgYXQgbGluZSAlZC4gIElzIHRoZXJlIGEgcnVsZSBtaXNzaW5nPyc7CiRsYW5nWydlcnJvcl9pbXBvcnRfYmFkdmFsdWUnXSA9ICdBIGJhZCB2YWx1ZSB3YXMgZm91bmQgZm9yIHRoZSAlcyBmaWVsZCc7CiRsYW5nWydlcnJvcl9pbXBvcnRfZHVwbGljYXRlcnVsZSddID0gJ0R1cGxpY2F0ZSAlcyBydWxlIGF0IGxpbmUgJWQnOwokbGFuZ1snZXJyb3JfaW1wb3J0X2R1cGxpY2F0ZXJ1bGVfaWRlbnRpZmllciddID0gJ0R1cGxpY2F0ZSBydWxlIGlkZW50aWZpZXIgYXQgbGluZSAlZCc7CiRsYW5nWydlcnJvcl9pbXBvcnRfdW5rbm93bnJvdyddID0gJ0RvbnQga25vdyBob3cgdG8gaGFuZGxlIGxpbmUgJWQgd2l0aCB0aGUgcnVsZSBpZGVudGlmaWVyICVzJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydF91bmtub3ducnVsZSddID0gJ09rJmF1bWw7bmQgcmVnZWwgcCZhcmluZzsgcmFkICVkJzsKJGxhbmdbJ2Vycm9yX2luc2VydF9jYXRlZ29yeSddID0gJ0EgZGF0YWJhc2UgZXJyb3Igb2NjdXJyZWQgdHJ5aW5nIHRvIGluc2VydCB0aGUgY2F0ZWdvcnkgZGVmaW5pdGlvbic7CiRsYW5nWydlcnJvcl9pbnNlcnRfY29tcGFueSddID0gJ0EgZGF0YWJhc2UgZXJyb3Igb2NjdXJyZWQgdHJ5aW5nIHRvIGluc2VydCB0aGUgY29tcGFueSBkZWZpbml0aW9uJzsKJGxhbmdbJ2Vycm9yX2luc2VydF9maWVsZGRlZiddID0gJ0EgZGF0YWJhc2UgZXJyb3Igb2NjdXJyZWQgdHJ5aW5nIHRvIGluc2VydCB0aGUgZmllbGQgZGVmaW5pdGlvbic7CiRsYW5nWydlcnJvcl9pbnZhbGlkX3BhcmFtJ10gPSAnVGhlIHZhbHVlIHNwZWNpZmllZCBmb3IgJXMgaXMgaW52YWxpZCc7CiRsYW5nWydlcnJvcl9taXNzaW5ndXBsb2FkJ10gPSAnSW5nZW4gZmlsIGxhZGRhZGVzIHVwcCc7CiRsYW5nWydlcnJvcl9taXNzaW5ncGFyYW0nXSA9ICdBIHJlcXVpcmVkIHZhbHVlIHdhcyBtaXNzaW5nIGZyb20gdGhlIGZvcm0gaW5wdXQnOwokbGFuZ1snZXJyb3Jfbm9kcm9wZG93bm9wdGlvbnMnXSA9ICdObyBEcm9wZG93biBvcHRpb25zIHN1cHBsaWVkJzsKJGxhbmdbJ2Vycm9yX25vZmV1J10gPSAnS3VuZGUgaW50ZSBoaXR0YSBtb2R1bGVuIEZyb250RW5kVXNlcnMnOwokbGFuZ1snZXJyb3Jfbm9sZW5ndGgnXSA9ICdObyBtYXhpbXVtIGxlbmd0aCBmaWVsZCBzdXBwbGllZCc7CiRsYW5nWydlcnJvcl9ub3Jlc3VsdHNmb3VuZCddID0gJ05vIHJlY29yZHMgbWF0Y2hpbmcgeW91ciBjcml0ZXJpYSBjb3VsZCBiZSBmb3VuZCBpbiB0aGUgZGF0YWJhc2UnOwokbGFuZ1snZXJyb3JfcG9zdGNvZGVfbG9va3VwJ10gPSAnS3VuZGUgaW50ZSBoaXR0YSBuJmFyaW5nO2dvbiBpbmZvcm1hdGlvbiBmJm91bWw7ciBwb3N0bnVtbWVyICVzJzsKJGxhbmdbJ2Vycm9yX3ByZWZpeF9tc2cnXSA9ICdFdHQgZmVsIHVwcHN0b2QgcCZhcmluZzsgcmVhZCAlZDogJXMnOwokbGFuZ1snZXhwb3J0Y3N2J10gPSAnRXhwb3J0ZXJhIENTVi1maWwnOwokbGFuZ1snZmF4J10gPSAnRmF4bnVtbWVyJzsKJGxhbmdbJ2ZheHRleHQnXSA9ICdGYXhudW1tZXInOwokbGFuZ1snZmllbGRkZWYnXSA9ICdGJmF1bWw7bHRkZWZpbml0aW9uJzsKJGxhbmdbJ2ZpZWxkZGVmcyddID0gJ0YmYXVtbDtsdGRlZmluaXRpb25lcic7CiRsYW5nWydmaWVsZGRlZnRleHQnXSA9ICdGJmF1bWw7bHRkZWZpbml0aW9uJzsKJGxhbmdbJ2ZpZWxkZGVmYWRkZWQnXSA9ICdGJmF1bWw7bHRkZWZpbml0aW9uIHRpbGxhZ2QnOwokbGFuZ1snZmllbGRkZWZ1cGRhdGVkJ10gPSAnRiZhdW1sO2x0ZGVmaW5pdGlvbiB1cHBkYXRlcmFkJzsKJGxhbmdbJ2ZpZWxkZGVmZGVsZXRlZCddID0gJ0YmYXVtbDtsdGRlZmluaXRpb24gYm9ydHRhZ2VuJzsKJGxhbmdbJ2ZpZWxkX2NoZWNrYm94J10gPSAnQ2hlY2tib3gnOwokbGFuZ1snZmllbGRfZHJvcGRvd24nXSA9ICdEcm9wZG93bic7CiRsYW5nWydmaWVsZF90ZXh0YXJlYSddID0gJ1RleHQgQXJlYSc7CiRsYW5nWydmaWVsZF90ZXh0Ym94J10gPSAnVGV4dCBJbnB1dCc7CiRsYW5nWydmaXJzdHBhZ2UnXSA9ICc8PCc7CiRsYW5nWydmcm9udGVuZGZvcm10ZW1wbGF0ZV9hZGRlZGl0J10gPSAnTCZhdW1sO2dnIHRpbGwvJmF1bWw7bmRyYSBtYWxsIGYmb3VtbDtyIGZyYW1zaWRlZm9ybXVsJmF1bWw7cic7CiRsYW5nWydmcm9udGVuZGZvcm10ZW1wbGF0ZXMnXSA9ICdNYWxsYXIgZiZvdW1sO3IgJmF1bWw7bmRyYSBmJm91bWw7cmV0YWcnOwokbGFuZ1snZnJvbnRlbmRmb3JtdGVtcGxhdGV1cGRhdGVkJ10gPSAnTWFsbGFyIGYmb3VtbDtyICZhdW1sO25kcmEgZiZvdW1sO3JldGFnIHVwcGRhdGVyYWRlJzsKJGxhbmdbJ2hlbHAnXSA9ICc8aDM+VmFkIGcmb3VtbDtyIGRlbm5hIG1vZHVsPzwvaDM+DQo8cD5EZW5uYSBtb2R1bCBnJm91bWw7ciBkZXQgbSZvdW1sO2psaWd0IGF0dCBzYW1sYSwgb3JnYW5pc2VyYSBvY2ggdmlzYSBpbmZvcm1hdGlvbiBvbSBmJm91bWw7cmV0YWcuIFZhbmxpZ3R2aXMgaGFuZGxhciBkZXQgb20ga29udGFrdGluZm9ybWF0aW9uIG9jaCBlbiBsb2dvdHlwLCBtZW4gbW9kdWxlbiAmYXVtbDtyIGZsZXhpYmVsIG5vZyBmJm91bWw7ciBhdHQgdGlsbCZhcmluZzt0YSBleHRyYWYmYXVtbDtsdCBvY2ggYXR0IGYmb3VtbDtyaGluZHJhIGFsbG0mYXVtbDtuaGV0ZW4gZnImYXJpbmc7biBhdHQga29tbWEgJmFyaW5nO3QgcHJpdmF0YSBkYXRhLjwvcD4NCjxwPkRlbm5hIG1vZHVsIGthbiBhbnYmYXVtbDtuZGFzIGYmb3VtbDtyIGV0dCBmbGVydGFsICZhdW1sO25kYW0mYXJpbmc7bCwgZnImYXJpbmc7biBlbiBsZXZlcmFudCZvdW1sO3JzbGlzdGEgdGlsbCBlbiBrb250YWt0bGlzdGEuIERlbiAmYXVtbDtyIGZsZXhpYmVsIG5vZyBmJm91bWw7ciBhdHQga3VubmEgJmFyaW5nO3RlcmFudiZhdW1sO25kYXMgZiZvdW1sO3IgZmxlcmEgb2xpa2EgJmF1bWw7bmRhbSZhcmluZztsLjwvcD4NCjxoMz5IdXIgYW52JmF1bWw7bmRlciBqYWcgZGVuPzwvaDM+DQo8cD5EZXQgZW5rbGFzdGUgcyZhdW1sO3R0ZXQgYXR0IGFudiZhdW1sO25kYSBkZW5uYSBtb2R1bGVuICZhdW1sO3IgZ2Vub20gYXR0IHBsYWNlcmEgdGFnZ2VuIDxjb2RlPntDb21wYW55RGlyZWN0b3J5fTwvY29kZT4gYW50aW5nZW4gaSBkaW4gc2lkbWFsbCBlbGxlciBpIHNpZGFucyBpbm5laCZhcmluZztsbC4gRHUgYiZvdW1sO3JqYXIgZCZhcmluZzsgbWVkIGF0dCAmYXVtbDtuZHJhIHBvc3RlciBpIGFkbWluaXN0cmF0aW9uc2dyJmF1bWw7bnNzbml0dGV0IGYmb3VtbDtyICZhbXA7cXVvdDtGJm91bWw7cmV0YWdza2F0YWxvZ21vZHVsZW4mYW1wO3F1b3Q7PC9wPg0KPGgzPlMmYXVtbDtrZXJoZXQ8L2gzPg0KPHA+RiZvdW1sO3IgYXR0IGhhbnRlcmEgZiZvdW1sO3JldGFnZW4gaSBkZW5uYSBtb2R1bCBtJmFyaW5nO3N0ZSBhZG1pbmlzdHJhdCZvdW1sO3JlbiBoYSByJmF1bWw7dHRpZ2hldGVuICYjMDM5OzxlbT5Nb2RpZmllcmEgRiZvdW1sO3JldGFnc2thdGFsb2c8L2VtPiYjMDM5Oy48L3A+DQo8cD5GJm91bWw7ciBhdHQgJmF1bWw7bmRyYSBkZSBtZWRmJm91bWw7bGphbmRlIG1hbGxhcm5hIHNvbSBrb250cm9sbGVyYSBsYXlvdXRlbiBwJmFyaW5nOyBmJm91bWw7cmV0YWdza2F0YWxvZ2VucyBpbmZvcm1hdGlvbiwgbSZhcmluZztzdGUgYWRtaW5pc3RyYXQmb3VtbDtyZW4gaGEgciZhdW1sO3R0aWdoZXRlbiAmIzAzOTs8ZW0+TW9kaWZpZXJhIG1hbGxhcjwvZW0+JiMwMzk7LjwvcD4NCjxwPkYmb3VtbDtyIGF0dCAmYXVtbDtuZHJhIGRlIG9saWthIGluc3QmYXVtbDtsbG5pbmdhcm5hIGtyJmF1bWw7dnMgciZhdW1sO3R0aWdoZXRlbiAmIzAzOTs8ZW0+TW9kaWZpZXJhIHdlYmJzaWRlaW5zdCZhdW1sO2xsbmluZ2FyPC9lbT4uPC9wPic7CiRsYW5nWydpZCddID0gJ0lEJzsKJGxhbmdbJ2luZm9fZHJvcGRvd25fb3B0aW9ucyddID0gJ1NwZWNpZnkgdGhlIG9wdGlvbnMgZm9yIHRoZSBkcm9wZG93biBjb250cm9sLiAgT25lIGxpbmUgcGVyIGVudHJ5LiAgU2VwZXJhdGUga2V5cyBmcm9tIHZhbHVlcyB3aXRoIHRoZSA9LiAgaS5lOiBrZXk9dmFsdWUnOwokbGFuZ1snaW1hZ2VjdXJyZW50aGlkZGVuJ10gPSAnJzsKJGxhbmdbJ2ltYWdldGV4dCddID0gJ0JpbGQnOwokbGFuZ1snaW1wb3J0Y3N2J10gPSAnSW1vcHJ0ZXJhIENTVic7CiRsYW5nWydsYXRpdHVkZSddID0gJ0xhdGl0dWQnOwokbGFuZ1snbGFzdHBhZ2UnXSA9ICc+Pic7CiRsYW5nWydsb2dvY3VycmVudGhpZGRlbiddID0gJyc7CiRsYW5nWydsb2dvdGV4dCddID0gJ0xvZ290eXAnOwokbGFuZ1snbG9uZ2l0dWRlJ10gPSAnTG9uZ2l0dWQnOwokbGFuZ1snbG9va3VwJ10gPSAnTG9va3VwIENvb3JkaW5hdGVzJzsKJGxhbmdbJ21heGxlbmd0aCddID0gJ01heGwmYXVtbDtuZ2QnOwokbGFuZ1snbWF4X2xlbmd0aCddID0gJ01heGwmYXVtbDtuZ2QnOwokbGFuZ1snbWF4bGVuZ3RodGV4dCddID0gJ01heGwmYXVtbDtuZ2QnOwokbGFuZ1snbW9kaWZpZWRkYXRlJ10gPSAnRGF0dW0gZiZvdW1sO3Igc2VuYXN0ICZhdW1sO25kcmFkJzsKJGxhbmdbJ25hbWUnXSA9ICdOYW1uJzsKJGxhbmdbJ25hbWV0ZXh0J10gPSAnTmFtbic7CiRsYW5nWyduZWVkcGVybWlzc2lvbiddID0gJ0R1IGJlaCZvdW1sO3ZlciByJmF1bWw7dHRpZ2hldGVuICYjMDM5OyVzJiMwMzk7IGYmb3VtbDtyIGF0dCB1dGYmb3VtbDtyYSBkZW4gaCZhdW1sO3IgZnVua3Rpb25lbic7CiRsYW5nWydubyddID0gJ05vJzsKJGxhbmdbJ25vY29tcGFueW5hbWVnaXZlbiddID0gJ0luZ2V0IGYmb3VtbDtyZXRhZ3NuYW1uIGFuZ2V0dCc7CiRsYW5nWydub25hbWVnaXZlbiddID0gJ0luZ2V0IG5hbW4gYW5nZXR0JzsKJGxhbmdbJ25vdGFudW1iZXInXSA9ICdJbnRlIGV0dCBudW1tZXInOwokbGFuZ1snbmV4dHBhZ2UnXSA9ICc+JzsKJGxhbmdbJ29mJ10gPSAnQXYnOwokbGFuZ1sncGFnZSddID0gJ1NpZGEnOwokbGFuZ1sncGFyYW1fYWN0aW9uJ10gPSAnQW5nZXIgbW9kdWxlbnMgcHJpbSZhdW1sO3JhIGJldGVlbmRlLiBNJm91bWw7amxpZ2EgdiZhdW1sO3JkZW4gZiZvdW1sO3IgZGVubmEgcGFyYW1ldGVyICZhdW1sO3I6DQo8dWw+DQogIDxsaT5jYXRlZ29yeWxpc3QgLS0gVmlzYXIgZW4gbGlzdGEgbWVkIGthdGVnb3JpZXIuIEFudiZhdW1sO25kYXJlIGthbiBnJmFyaW5nOyB2aWRhcmUgbmVyIHRpbGwgc2FtbWFuZmF0dGluZ3NsJmF1bWw7Z2V0IG9jaCBzZWRhbiB0aWxsIGRldGFsamwmYXVtbDtnZXQuPC9saT4NCiAgPGxpPjxzdHJvbmc+ZGVmYXVsdDwvc3Ryb25nPiAtLSBWaXNhciBmJm91bWw7cmV0YWcgaSBzYW1tYW5mYXR0bmluZ3NsJmF1bWw7Z2UuPC9saT4NCiAgPGxpPmRldGFpbHMgLS0gVmlzYXIgZGV0YWxqZXJhZCBpbmZvcm1hdGlvbiBvbSBldHQgc3BlY2lmaWt0IGYmb3VtbDtyZXRhZy48L2xpPg0KICA8bGk+ZmVfZWRpdCAtLSBWaXNhciBldHQgZm9ybXVsJmF1bWw7ciBmJm91bWw7ciBhdHQgdGlsbCZhcmluZzt0YSByZWRpZ2VyaW5nIGF2IGV0dCBzcGVjaWZpa3QgZiZvdW1sO3JldGFnLjwvbGk+DQogICANCjwvdWw+DQonOwokbGFuZ1sncGFyYW1faW5saW5lJ10gPSAnQXBwbGljYWJsZSBvbmx5IHRvIHRoZSA8ZW0+ZGVmYXVsdDwvZW0+IHN1bW1hcnksIGFuZCA8ZW0+c2VhcmNoPC9lbT4gbW9kZXMsIHRoaXMgcGFyYW1ldGVyIGFsbG93cyBzcGVjaWZ5aW5nIHdldGhlciB0aGUgcmVzdWx0aW5nIGRhdGEgc2hvdWxkIHJlcGxhY2UgdGhlIGRlZmF1bHQgY29udGVudCBibG9jaywgb3Igc2hvdWxkIHJlcGxhY2UgdGhlIG9yaWdpbmFsIHRhZyAoaW5saW5lKS4nOwokbGFuZ1sncGFyYW1fc2VhcmNoZm9ybXRlbXBsYXRlJ10gPSAnQXBwbGljYWJsZSBvbmx5IHRvIHRoZSA8ZW0+c2VhcmNoPC9lbT4gbW9kZSwgdGhpcyBwYXJhbWV0ZXIgYWxsb3dzIHNwZWNpZnlpbmcgYSBub24gZGVmYXVsdCBzZWFyY2ggZm9ybSB0ZW1wbGF0ZS4nOwokbGFuZ1sncGFyYW1fcGFnZWxpbWl0J10gPSAnV2hlbiB1c2VkIHdpdGggdGhlIDxlbT5kZWZhdWx0PC9lbT4gc3VtbWFyeSBtb2RlLCBvciB0aGUgPGVtPnNlYXJjaDwvZW0+IG1vZGUsIHRoaXMgd2lsbCBsaW1pdCB0aGUgcmVzdWx0cyB0byBhIHNwZWNpZmllZCBudW1iZXIuJzsKJGxhbmdbJ3BhcmFtX2NhdGVnb3J5J10gPSAnTiZhdW1sO3IgZGVuIGFudiZhdW1sO25kcyBpIGRldCA8ZW0+dXJzcHJ1bmdsaWdhIDwvZW0+IHNhbW1hbmZhdHRuaW5nc2wmYXVtbDtnZXQsIGFudiZhdW1sO25kcyBkZW5uYSBwYXJhbWV0ZXIsIHZpbGtlbiBiJm91bWw7ciBtYXRjaGEgbmFtbmV0IHAmYXJpbmc7IGVuIGJlZmludGxpZyBrYXRlZ29yaSwgZiZvdW1sO3IgYXR0IHZpc2EgZW5iYXJ0IGRlIGYmb3VtbDtyZXRhZyBzb20gZmlubnMgaSBkZW4ga2F0ZWdvcmluIChlbiBrb21tYXNlcGFyZXJhZCBsaXN0YSBrYW4gc2tpY2thcyBtZWQpLic7CiRsYW5nWydwYXJhbV9jYXRlZ29yeWxpc3R0ZW1wbGF0ZSddID0gJ0FuZ2UgZW4gbWFsbCAobWVkIG5hbW4pIGF0dCBhbnYmYXVtbDtuZGEgbiZhdW1sO3Iga2F0ZWdvcmlsaXN0dnluIHZpc2FzLic7CiRsYW5nWydwYXJhbV9jb21wYW55aWQnXSA9ICdLciZhdW1sO3ZzIGYmb3VtbDtyIGZyYW1zaWRlcmVkaWdlcmluZ3NsJmF1bWw7Z2V0IG9jaCBkZXRhbGpsJmF1bWw7Z2V0LiBEZW5uYSBwYXJhbWV0ZXIgYW5nZXIgdmlsa2VuIGYmb3VtbDtyZXRhZ3Nwb3N0IHNvbSBza2EgcmVkaWdlcmFzIGVsbGVyIHZpc2FzLic7CiRsYW5nWydwYXJhbV9kZXRhaWxwYWdlJ10gPSAnQW5nZSBldHQgc2lkYWxpYXMgKG1lZCBuYW1uKSBhdHQgYW52JmF1bWw7bmRhIGYmb3VtbDtyIGF0dCB2aXNhIGVuIGRldGFsanBvc3QuIDxzdHJvbmc+T0JTITwvc3Ryb25nPiBEZW5uYSBwYXJhbWV0ZXIgJmF1bWw7ciBpbnRlIGtvbXBhdGliZWwgbWVkIHByZXR0eSBVUkxzLic7CiRsYW5nWydwYXJhbV9kZXRhaWx0ZW1wbGF0ZSddID0gJ0FuZ2UgZW4gbWFsbCAobWVkIG5hbW4pIGF0dCBhbnYmYXVtbDtuZGEgbiZhdW1sO3IgZGV0YWlsanZ5biB2aXNhcy4gPHN0cm9uZz5PQlMhPC9zdHJvbmc+IERlbm5hIHRhZ2dwYXJhbWV0ZXIgJmF1bWw7ciBpbnRlIGtvbXBhdGliZWwgbWVkIHByZXR0eSBVUkxzLic7CiRsYW5nWydwYXJhbV9mcm9udGVuZGZvcm10ZW1wbGF0ZSddID0gJ0FuZ2UgZW4gbWFsbCAobWVkIG5hbW4pIGF0dCBhbnYmYXVtbDtuZGEgbiZhdW1sO3IgZm9ybXVsJmF1bWw7cmV0IGYmb3VtbDtyICZhdW1sO25kcmluZyBhdiBmJm91bWw7cmV0YWcgZnImYXJpbmc7biBmcmFtc2lkYW4gdmlzYXMuJzsKJGxhbmdbJ3BhcmFtX3NlbGVjdGNhdGVnb3J5J10gPSAnT20gZGVubmEgcGFyYW1ldGVyIGFudiZhdW1sO25kcyBrb21tZXIgZXR0IGZvcm11bCZhdW1sO3IgYXR0IGdlbmVyZXJhcyBzb20gbCZhcmluZzt0ZXIgYW52JmF1bWw7bmRhcmUgaW50ZXJha3RpdnQgZmlsdHJlcmEgZiZvdW1sO3JldGFnc3Bvc3RlciBlZnRlciBlbiB2aXNzIGthdGVnb3JpLiBEZW5uYSBmbGFnZ2EgYiZvdW1sO3IgaW50ZSBhbnYmYXVtbDtuZGFzIHRpbGxzYW1tYW5zIG1lZCAmIzAzOTtrYXRlZ29yaSYjMDM5Oy1wYXJhbWV0ZXJuLic7CiRsYW5nWydwYXJhbV9zaG93YWxsJ10gPSAnRyZhdW1sO2xsZXIgZW5kYXN0IGYmb3VtbDtyIGNhdGVnb3J5bGlzdCBhY3Rpb24sIG9tIGRlbm5hIHBhcmFtZXRlciAmYXVtbDtyIGluc3QmYXVtbDtsbGQsIGQmYXJpbmc7IGtvbW1lciAmYXVtbDt2ZW4ga2F0ZWdvcmllciBtZWQgSW5nYSBtYXRjaGFuZGUgZiZvdW1sO3JldGFnIGF0dCB2aXNhcyBpIHV0ZGF0YW4nOwokbGFuZ1sncGFyYW1fc29ydG9yZGVyJ10gPSAnQW5nZSBvcmRuaW5nZW4gZiZvdW1sO3Igc29ydGVyYWRlIGYmYXVtbDtsdCBpIHNhbW1hbmZhdHRuaW5nc3Z5bi4gTSZvdW1sO2psaWdhIHYmYXVtbDtyZGVuICZhdW1sO3I6DQo8dWw+DQogIDxsaT48c3Ryb25nPmFzYzwvc3Ryb25nPiAtLSBTdGlnYW5kZTwvbGk+DQogIDxsaT5kZXNjIC0tIEZhbGxhbmRlPC9saT4NCjwvdWw+JzsKJGxhbmdbJ3BhcmFtX3NvcnRieSddID0gJ0thbiBlbmRhc3QgYW52JmF1bWw7bmRhcyBpIHNhbW1hbmZhdHRuaW5nc2wmYXVtbDtnZXQuIERlbm5hIHBhcmFtZXRlciBhbmdlciBzb3J0ZXJpbmdlbiBhdiBmJm91bWw7cmV0YWdlbiBzb20gbGlzdGFzLiBNJm91bWw7amxpZ2EgdiZhdW1sO3JkZW4gJmF1bWw7cjoNCjx1bD4NCiAgPGxpPjxzdHJvbmc+Y29tcGFueV9uYW1lPC9zdHJvbmc+IC0tIEYmb3VtbDtyZXRhZ3NuYW1uPC9saT4NCiAgPGxpPnBob25lIC0tIFRlbGVmb25udW1lcjwvbGk+DQogIDxsaT5mYXggLS0gRmF4bnVtbWVyPC9saT4NCiAgPGxpPmVtYWlsIC0tIEUtcG9zdGFkcmVzczwvbGk+DQogIDxsaT53ZWJzaXRlIC0tIFVSTCBmJm91bWw7ciB3ZWJic2lkYTwvbGk+DQogIDxsaT5jcmVhdGVkIC0tIERhdHVtZXQgZCZhcmluZzsgZGVubmEgZiZvdW1sO3JldGFnc3Bvc3Qgc2thcGFkZXM8L2xpPg0KICA8bGk+bW9kaWZpZWQgLS0gRGF0dW1ldCBkJmFyaW5nOyBkZW5uYSBmJm91bWw7cmV0YWdzcG9zdCAmYXVtbDtuZHJhZGVzPC9saT4NCjwvdWw+JzsKJGxhbmdbJ3BhcmFtX3N1bW1hcnl0ZW1wbGF0ZSddID0gJ0FuZ2UgZW4gbWFsbCAobWVkIG5hbW4pIGF0dCBhbnYmYXVtbDtuZGEgbiZhdW1sO3Igc2FtbWFuZmF0dG5pbmdzdnluIHZpc2FzLiA8c3Ryb25nPk9CUyE8L3N0cm9uZz4gRGVubmEgdGFnZ3BhcmFtZXRlciAmYXVtbDtyIGludGUga29tcGF0aWJlbCBtZWQgcHJldHR5IHVybHMuJzsKJGxhbmdbJ3Bvc3RhbF9jb2RlJ10gPSAnUG9zdG51bW1lcic7CiRsYW5nWydwb3N0aW5zdGFsbCddID0gJ0Ymb3VtbDtyZXRhZ3NrYXRhbG9nc21vZHVsZW4gaW5zdGFsbGVyYWRlcyBmcmFtZyZhcmluZztuZ3NyaWt0JzsKJGxhbmdbJ3Bvc3R1bmluc3RhbGwnXSA9ICdDb21wYW55IERpcmVjdG9yeSBtb2R1bGVuIGF2aW5zdGFsbGVyYWQuICBBbGxhIGJvbGFnIG1lZCBhc3NvY2llcmFkZSBkYXRhIGhhciByYWRlcmF0cyc7CiRsYW5nWydwcmV1bmluc3RhbGwnXSA9ICcmQXVtbDtyIGR1IHMmYXVtbDtrZXIgcCZhcmluZzsgYXR0IGR1IHZpbGwgYXZpbnN0YWxsZXJhIGRlbm5hIG1vZHVsPyBWaWQgYXZpbnN0YWxsYXRpb24gYXYgZGVubmEgbW9kdWwgcyZhcmluZzsga29tbWVyIGRlbiBhdHQgcGVybWFuZW50IHJhZGVyYSBhbGxhIG4mYXVtbDtyc3QmYXJpbmc7ZW5kZSBib2xhZyB1cHBnaWZ0ZXIuJzsKJGxhbmdbJ3ByZXZwYWdlJ10gPSAnPCc7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcmllc19pbXBvcnRlZCddID0gJ0thdGVnb3JpZXIgSW1wb3J0ZXJhZGUnOwokbGFuZ1sncHJvbXB0X2NoZWNrX2R1cGxpY2F0ZXMnXSA9ICdDaGVjayBmb3IgZHVwbGljYXRlIGNvbXBhbnkgbmFtZXM/JzsKJGxhbmdbJ3Byb21wdF9jb2xsZWN0c3RhdHMnXSA9ICdTYW1sYSBTJm91bWw7a3N0YXRpc3Rpayc7CiRsYW5nWydwcm9tcHRfY29tcGFuaWVzX2ltcG9ydGVkJ10gPSAnRiZvdW1sO3JldGFnIEltcG9ydGVyYWRlJzsKJGxhbmdbJ3Byb21wdF9kZWxpbWV0ZXInXSA9ICdGJmF1bWw7bHRhdmdyJmF1bWw7bnNhcmUnOwokbGFuZ1sncHJvbXB0X2RldGFpbHBhZ2UnXSA9ICdTdGFuZGFyZHNpZGFuIHNvbSBza2Egb21kaXJpZ2VyYXMgdGlsbCBpIGRldGFsamwmYXVtbDtnZXQnOwokbGFuZ1sncHJvbXB0X2Ryb3Bkb3duX29wdGlvbnMnXSA9ICdEcm9wZG93biBPcHRpb25zJzsKJGxhbmdbJ3Byb21wdF9maWVsZGRlZnNfaW1wb3J0ZWQnXSA9ICdGJmF1bWw7bHRkZWZpbml0aW9uZXIgSW1wb3J0ZXJhZGUnOwokbGFuZ1sncHJvbXB0X2ltcG9ydF9jYXRlZ29yeWRlZnMnXSA9ICdDcmVhdGUgbWlzc2luZyBjYXRlZ29yaWVzIG9uIGltcG9ydCc7CiRsYW5nWydwcm9tcHRfaW1wb3J0X2NhdGVnb3J5dmFscyddID0gJ1BvcHVwbGF0ZSBjYXRlZ29yeSB2YWx1ZXMgb24gaW1wb3J0JzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRfY3N2ZmlsZSddID0gJ0xhZGRhIHVwcCBDU1YgZmlsJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRfZmllbGRkZWZzJ10gPSAnQ3JlYXRlIG1pc3NpbmcgJnF1b3Q7YWRkaXRpb25hbCBmaWVsZCZxdW90OyBkZWZpbml0aW9ucyBvbiBpbXBvcnQnOwokbGFuZ1sncHJvbXB0X2ltcG9ydF9maWVsZHZhbHMnXSA9ICdQb3B1bGF0ZSAmcXVvdDthZGRpdGlvbmFsIGZpZWxkJnF1b3Q7IHZhbHVlcyBvbiBpbXBvcnQnOwokbGFuZ1sncHJvbXB0X2ltcG9ydF9sb29rdXBsYXRsb25nJ10gPSAnTG9va3VwIGxhdGl0dWRlIGFuZCBsb25naXR1ZGUgdmFsdWVzIGlmIG1pc3NpbmcnOwokbGFuZ1sncHJvbXB0X3BhZ2VsaW1pdCddID0gJ0FudGFsZXQgcG9zdGVyIGF0dCB2aXNhIHBlciBzaWRhIGkgc2FtbWFuZmF0dG5pbmdzbCZhdW1sO2dldCc7CiRsYW5nWydwcm9tcHRfc3VtbWFyeXNvcnRpbmcnXSA9ICdTdGFuZGFyZHNvcnRlcmluZyBpIHNhbW1hbmZhdHRuaW5nc2wmYXVtbDtnZXQnOwokbGFuZ1sncHJvbXB0X3N1bW1hcnlzb3J0b3JkZXInXSA9ICdTdGFuZGFyZHNvcnRlcmluZ3NvcmRuaW5nIGkgc2FtbWFuZmF0dG5pbmdzbCZhdW1sO2dldCA8ZW0+KGcmYXVtbDtsbGVyIGludGUgbiZhdW1sO3Igc29ydGVyaW5nICZhdW1sO3IgJiMwMzk7c2x1bXB2aXMmIzAzOTspPC9lbT4nOwokbGFuZ1sncHJvbXB0X3RlbXBsYXRlJ10gPSAnTWFsbCc7CiRsYW5nWydwdWJsaWMnXSA9ICdBbGxtJmF1bWw7bic7CiRsYW5nWydwdWJsaXNoZWQnXSA9ICdQdWJsaWNlcmFkJzsKJGxhbmdbJ3ByZWZlcmVuY2VzJ10gPSAnSW5zdCZhdW1sO2xsbmluZ2FyJzsKJGxhbmdbJ3JhZGl1cyddID0gJ1JhZGllJzsKJGxhbmdbJ3JhbmRvbSddID0gJ1NsdW1wdmlzJzsKJGxhbmdbJ3JldHVybiddID0gJyZBcmluZzt0ZXJ2JmF1bWw7bmQnOwokbGFuZ1sncmVzZXR0b2ZhY3RvcnknXSA9ICcmQXJpbmc7dGVyc3QmYXVtbDtsbCB0aWxsIHN0YW5kYXJkdiZhdW1sO3JkZW4nOwokbGFuZ1sncmVzdG9yZXRvZGVmYXVsdHNtc2cnXSA9ICdEZW5uYSAmYXJpbmc7dGcmYXVtbDtyZCBrb21tZXIgYXR0ICZhcmluZzt0ZXJzdCZhdW1sO2xsYSBtYWxsYXJuYXMgaW5uZWgmYXJpbmc7bGwgdGlsbCBzeXN0ZW1zdGFuZGFyZGluc3QmYXVtbDtsbG5pbmdlbi4gJkF1bWw7ciBkdSBzJmF1bWw7a2VyIHAmYXJpbmc7IGF0dCBkdSB2aWxsIGZvcnRzJmF1bWw7dHRhPyc7CiRsYW5nWydzZWFyY2gnXSA9ICdTJm91bWw7ayc7CiRsYW5nWydzZWFyY2hlcyddID0gJ1Mmb3VtbDtrbmluZ2FyJzsKJGxhbmdbJ3NlYXJjaGZvcm10ZW1wbGF0ZXMnXSA9ICdTZWFyY2ggRm9ybSBUZW1wbGF0ZXMnOwokbGFuZ1snc2VhcmNoZm9ybXRlbXBsYXRlX2FkZGVkaXQnXSA9ICdBZGQvRWRpdCBhIFNlYXJjaCBGb3JtIFRlbXBsYXRlJzsKJGxhbmdbJ3N0YXR1cyddID0gJ1N0YXR1cyc7CiRsYW5nWydzdWJtaXQnXSA9ICdTa2lja2EnOwokbGFuZ1snc3VtbWFyeXRlbXBsYXRlX2FkZGVkaXQnXSA9ICdMJmF1bWw7Z2cgdGlsbC9yZWRpZ2VyYSBtYWxsJzsKJGxhbmdbJ3N1bW1hcnl0ZW1wbGF0ZXMnXSA9ICdTYW1tYW5mYXR0bmluZ3NtYWxsJzsKJGxhbmdbJ3N1bW1hcnl0ZW1wbGF0ZXVwZGF0ZWQnXSA9ICdTYW1tYW5mYXR0bmluZ3NtYWxsIHVwcGRhdGVyYWQnOwokbGFuZ1snc3lzZGVmYXVsdHMnXSA9ICcmQXJpbmc7dGVyc3QmYXVtbDtsbCB0aWxsIHN0YW5kYXJkaW5zdCZhdW1sO2xsbmluZyc7CiRsYW5nWyd0ZWxlcGhvbmUnXSA9ICdUZWxlZm9uJzsKJGxhbmdbJ3RlbGVwaG9uZXRleHQnXSA9ICdUZWxlZm9uJzsKJGxhbmdbJ3RpdGxlX2NhdGVnb3J5bGlzdF9kZmx0dGVtcGxhdGUnXSA9ICdTdGFuZGFyZG1hbGwgZiZvdW1sO3Iga2F0ZWdvcmlsaXN0YSc7CiRsYW5nWyd0aXRsZV9kZXRhaWxfZGZsdHRlbXBsYXRlJ10gPSAnU3RhbmRhcmRtYWxsIGYmb3VtbDtyIGRldGFsamVyJzsKJGxhbmdbJ3RpdGxlX2Zyb250ZW5kZm9ybV9kZmx0dGVtcGxhdGUnXSA9ICdTdGFuZGFyZG1hbGwgZiZvdW1sO3IgZnJhbXNpZGVmb3JtdWwmYXVtbDtyJzsKJGxhbmdbJ3RpdGxlX2ltcG9ydF9yZXBvcnQnXSA9ICdDU1YgSW1wb3J0ZXJpbmdzcmFwcG9ydCc7CiRsYW5nWyd0aXRsZV9zZWFyY2hmb3JtX2RmbHR0ZW1wbGF0ZSddID0gJ0RlZmF1bHQgU2VhcmNoIEZvcm0gVGVtcGxhdGUnOwokbGFuZ1sndGl0bGVfc3VtbWFyeV9kZmx0dGVtcGxhdGUnXSA9ICdTdGFuZGFyZG1hbGwgZiZvdW1sO3Igc2FtbWFmYXR0bmluZyc7CiRsYW5nWyd0eXBlJ10gPSAnVHlwJzsKJGxhbmdbJ3R5cGV0ZXh0J10gPSAnVHlwJzsKJGxhbmdbJ3VwJ10gPSAnVXBwJzsKJGxhbmdbJ3dlYnNpdGUnXSA9ICdXZWJic2lkYSc7CiRsYW5nWyd3ZWJzaXRldGV4dCddID0gJ1dlYmJzaWRhJzsKJGxhbmdbJ3llcyddID0gJ0phJzsKJGxhbmdbJ3FjYSddID0gJ1AwLTEyMzE4NzIzMjUtMTI2OTM1OTMyMTE5NSc7CiRsYW5nWyd1dG1hJ10gPSAnMTU2ODYxMzUzLjEyNjk3Nzc2MDMuMTI2OTM1OTM0Mi4xMjY5Nzc4NTI5LjEyNzAwNTE4MTkuNic7CiRsYW5nWyd1dG16J10gPSAnMTU2ODYxMzUzLjEyNzAwNTE4MTkuNi41LnV0bWNjbj0ocmVmZXJyYWwpfHV0bWNzcj1mb3J1bS5jbXNtYWRlc2ltcGxlLm9yZ3x1dG1jY3Q9L2luZGV4LnBocHx1dG1jbWQ9cmVmZXJyYWwnOwokbGFuZ1sndXRtYiddID0gJzE1Njg2MTM1My4xLjEwLjEyNzAwNTE4MTknOwokbGFuZ1sndXRtYyddID0gJzE1Njg2MTM1Myc7Cj8+]]></data>
	</file>
	<file>
	  <filename>/lang/ext/tr_TR.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2V4dHJhMSddID0gJ0Vrc3RyYSBEYXRhIDEnOwokbGFuZ1snZXh0cmEyJ10gPSAnRWtzdHJhIERhdGEgMic7CiRsYW5nWydleHRyYTMnXSA9ICdFa3N0cmEgRGF0YSAzJzsKJGxhbmdbJ2xibF9iYWNrJ10gPSAnR2VyaSc7CiRsYW5nWydtc2dfY29tcGFueWNvcGllZCddID0gJ0Zpcm1hIGtvcHlhbGFuZMSxLi4uIGwmdXVtbDt0ZmVuIHllbmkgZmlybWEga2F5ZMSxbsSxbiBheXLEsW50xLFsYXLEsW7EsSBkJnV1bWw7emVubGV5aW5peic7CiRsYW5nWydjb3B5J10gPSAnS29weWFsYSc7CiRsYW5nWydtb2RkZXNjcmlwdGlvbiddID0gJ0EgZGlyZWN0b3J5IGxpa2UgbW9kdWxlIGZvciBjb21wYW5pZXMuICBBbGxvd3MgYWRkaW5nL2VkaXRpbmcvaW1wb3J0aW5nL2V4cG9ydGluZyBjb21wYW55IGRlZmluaXRpb25zLCBhbmQgdmFyaW91cyB3YXlzIG9mIGRpc3BsYXlpbmcgdGhlIGNvbXBhbnkgZW50cmllcyBpbmNsdWRpbmcgc2VhcmNoLiAgVGhpcyBtb2R1bGUgaW50ZWdyYXRlcyB3ZWxsIHdpdGggQ0dHb29nbGVNYXBzLic7CiRsYW5nWydtc2dfaW1wb3J0X2NvbXBsZXRlJ10gPSAnaSZjY2VkaWw7ZSBha3Rhcm1hIGnFn2xlbWkgYmHFn2FyxLFsxLEnOwokbGFuZ1sncHJvbXB0X2hpZXJhcmNoaWVzX2ltcG9ydGVkJ10gPSAnSGllcmFyY2h5IFBvc2l0aW9ucyBDcmVhdGVkJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRfaGllcmFyY2h5ZGVmcyddID0gJ0ltcG9ydCBIaWVyYXJjaHkgUmVjb3Jkcyc7CiRsYW5nWydwcm9tcHRfaW1wb3J0X2hpZXJhcmNoeXZhbHMnXSA9ICdJbXBvcnQgSGllcmFyY2h5IFZhbHVlcyc7CiRsYW5nWydlcnJvcl9pbnNlcnRfaGllcmFyY2h5J10gPSAnRXJyb3IgY3JlYXRpbmcgaGllcmFyY2h5ICZxdW90OyVzJnF1b3Q7JzsKJGxhbmdbJ2Vycm9yX2R1cGxpY2F0ZV9oaWVyYXJjaHknXSA9ICdIaWVyYXJjaHkgd2l0aCBsb25nIG5hbWUgJnF1b3Q7JXMmcXVvdDsgYWxyZWFkeSBleGlzdHMuJzsKJGxhbmdbJ2NvbXBhbnlkZWxldGVkJ10gPSAnRmlybWEgc2lsaW5kaSc7CiRsYW5nWydlcnJvcl91cGxvYWQnXSA9ICdFcnJvciB1cGxvYWRpbmcgZmlsZSc7CiRsYW5nWydlcnJvcl9kZWxpbWl0ZXInXSA9ICdZb3UgbXVzdCBzcGVjaWZ5IGEgZmllbGQgZGVsaW1pdGVyJzsKJGxhbmdbJ2Vycm9yX25vc3BvdHNsZWZ0J10gPSAnWW91IGhhdmUgbm8gcmVtYWluaW5nIGNvbXBhbnkgc2xvdHMnOwokbGFuZ1snbXNnX3Nsb3RzdXNlZCddID0gJ1lvdSBoYXZlIHVzZWQgJWQgb2YgJWQgY29tcGFueSBzbG90cyc7CiRsYW5nWydpbXBvcnRfZmlsZW5hbWUnXSA9ICdTZWxlY3QgQ1NWIEZpbGUnOwokbGFuZ1snZGVsaW1pdGVyJ10gPSAnRmllbGQgRGVsaW1pdGVyJzsKJGxhbmdbJ2luZm9fY3N2ZmlsZSddID0gJ0l0IGlzIHBvc3NpYmxlIHRvIGltcG9ydCBjb21wYW55IGluZm9ybWF0aW9uIGRpcmVjdGx5IGZyb20gYW4gQVNDSUkgZmlsZS4nOwokbGFuZ1sncHJvbXB0X2ltcG9ydF90ZW1wbGF0ZSddID0gJ1RoaXMgdGVtcGxhdGUgZGVzY3JpYmVzIGEgZm9ybSB0aGF0IGlzIHVzZWQgdG8gYWxsb3cgYXV0aG9yaXplZCBmcm9udGVuZCB1c2VycyB0byBpbXBvcnQgZGF0YSBmcm9tIGEgcHJvcGVybHkgZm9ybWF0dGVkIENTViBmaWxlJzsKJGxhbmdbJ2Zyb250ZW5kaW1wb3J0dGVtcGxhdGUnXSA9ICdGcm9udGVuZCBDU1YgSW1wb3J0IFRlbXBsYXRlJzsKJGxhbmdbJ3Byb21wdF9mZXVfaW1wb3J0J10gPSAnQWxsb3cgRnJvbnRlbmRVc2VycyB0byBpbXBvcnQgcmVjb3JkcyBmcm9tIENTVj8nOwokbGFuZ1sncGFyYW1faGllcmxpc3R0ZW1wbGF0ZSddID0gJ1NwZWNpZnkgYSB0ZW1wbGF0ZSAoYnkgbmFtZSkgdG8gdXNlIHdoZW4gZGlzcGxheWluZyB0aGUgaGllcmFyY2h5IGxpc3Qgdmlldy4nOwokbGFuZ1snaGllcmxpc3R0ZW1wbGF0ZV9hZGRlZGl0J10gPSAnQWRkL0VkaXQgSGllcmFyY2h5IExpc3QgVGVtcGxhdGUnOwokbGFuZ1sndGl0bGVfaGllcmxpc3RfZGZsdHRlbXBsYXRlJ10gPSAnRGVmYXVsdCBIaWVyYXJjaHkgTGlzdCBUZW1wbGF0ZSc7CiRsYW5nWydoaWVyYXJjaHlsaXN0dGVtcGxhdGVzJ10gPSAnSGllcmFyY2h5IExpc3QgVGVtcGxhdGVzJzsKJGxhbmdbJ3BhcmFtX2hpZXInXSA9ICdBcHBsaWNhYmxlIHRvIHRoZSA8ZW0+ZGVmYXVsdDwvZW0+IGFuZCA8ZW0+aGllcmxpc3Q8L2VtPiBhY3Rpb25zLCB0aGlzIHBhcmFtZXRlciBhbGxvd3Mgc3BlY2lmeWluZyBhIGhpZXJhcmNoeSBuYW1lIG9mIGNvbXBhbmllcyB0byBkaXNwbGF5LiAgSW4gdGhlIGRlZmF1bHQgYWN0aW9uLCBXaWxkY2FyZHMgYXJlIGFjY2VwdGVkLCBpLmU6ICZxdW90Oypzb21laGllcmFyY2h5bmFtZSomcXVvdDsuICBIb3dldmVyIGluIHRoZSBoaWVybGlzdCBhY3Rpb24sIHRoaXMgcGFyYW1ldGVyIG11c3QgY29udGFpbiB0aGUgdW5pcXVlIG5hbWUgb2YgYSBoaWVyYXJjaHkgcG9zaXRpb24sIGFuZCB3aWxsIHNwZWNpZnkgdGhlIHN0YXJ0aW5nIGxvY2F0aW9uIG9mIHRoZSBoaWVyYXJjaHkgZGlzcGxheS4nOwokbGFuZ1snbXNnX2hpZXJkZWxldGVkJ10gPSAnSGllcmFyY2h5IHBvc2l0aW9uIGRlbGV0ZWQnOwokbGFuZ1snbXNnX2hpZXJ1cGRhdGVkJ10gPSAnSGllcmFyY2h5IHBvc2l0aW9uIHVwZGF0ZWQnOwokbGFuZ1snbXNnX2hpZXJhZGRlZCddID0gJ0hpZXJhcmNoeSBwb3NpdGlvbiBhZGRlZCc7CiRsYW5nWydhZGRoaWVyJ10gPSAnQWRkIEhpZXJhcmNoeSc7CiRsYW5nWydoaWVyYXJjaHknXSA9ICdIaWVyYXJjaHknOwokbGFuZ1snYWRkX2VkaXRfY2F0ZWdvcnknXSA9ICdBZGQvRWRpdCBDYXRlZ29yeSc7CiRsYW5nWydsYmxfc2V0dGluZ3MnXSA9ICdBeWFybGFyJzsKJGxhbmdbJ2xibF90ZW1wbGF0ZXMnXSA9ICfFnmFibG9ubGFyJzsKJGxhbmdbJ25vbmUnXSA9ICdZb2snOwokbGFuZ1snb3duZXInXSA9ICdTYWhpcCc7CiRsYW5nWydjcmVhdGVkJ10gPSAnT2x1xZ90dXJ1bGR1JzsKJGxhbmdbJ21vZGlmaWVkJ10gPSAnRCZ1dW1sO3plbmxlbmRpJzsKJGxhbmdbJ2Zyb250ZW5kbGlzdHRlbXBsYXRlX2FkZGVkaXQnXSA9ICdBZGQgb3IgRWRpdCBhIEZyb250ZW5kIExpc3QgVGVtcGxhdGUnOwokbGFuZ1sncHJvbXB0X2ZldV9jaGFuZ2Vfc3RhdHVzJ10gPSAnQ2FuIGZyb250ZW5kIHVzZXJzIGNoYW5nZSBhIGNvbW1wYW55IHN0YXR1cz8nOwokbGFuZ1sncHJvbXB0X2ZldV9uZXdfc3RhdHVzJ10gPSAnRGVmYXVsdCBzdGF0dXMgZm9yIG5ldyByZWNvcmRzIGNyZWF0ZWQgb24gdGhlIGZyb250ZW5kJzsKJGxhbmdbJ3RpdGxlX2Zyb250ZW5kbGlzdF9kZmx0dGVtcGxhdGUnXSA9ICdEZWZhdWx0IEZyb250ZW5kIExpc3QgVGVtcGxhdGUnOwokbGFuZ1snZnJvbnRlbmRsaXN0dGVtcGxhdGVzJ10gPSAnRnJvbnRlbmQgTGlzdCBUZW1wbGF0ZXMnOwokbGFuZ1sncHJvbXB0X2dlbmVyYWxfc2V0dGluZ3MnXSA9ICdHZW5lbCBBeWFybGFyJzsKJGxhbmdbJ3Byb21wdF9mZXVfZWRpdF9zZXR0aW5ncyddID0gJ0Zyb250ZW5kIEVkaXRpbmcgU2V0dGluZ3MnOwokbGFuZ1sncHJvbXB0X2ZldV9jcmVhdGUnXSA9ICdDYW4gRnJvbnRFbmRVc2VycyBDcmVhdGUgbmV3IFJlY29yZHM/JzsKJGxhbmdbJ3Byb21wdF9mZXVfbnVtcmVjb3JkcyddID0gJ01heGltdW0gbnVtYmVyIG9mIHJlY29yZHMgdGhhdCBjYW4gYmUgYXNzb2NpYXRlZCB3aXRoIGEgRkVVIGFjY291bnQnOwokbGFuZ1sncHJvbXB0X251bWltcG9ydGVkJ10gPSAnTnVtYmVyIG9mIEltcG9ydGVkIFJlY29yZHMnOwokbGFuZ1sncHJvbXB0X2R1cGxpY2F0ZV9uYW1lJ10gPSAnQ2hlY2sgZm9yIGR1cGxpY2F0ZSBjb21wYW55IG5hbWVzJzsKJGxhbmdbJ3Byb21wdF9zdGF0dXMnXSA9ICdTdGF0dXMgZm9yIGltcG9ydGVkIHJlY29yZCc7CiRsYW5nWydwcm9tcHRfaWdub3JlX2FkZHJlc3MnXSA9ICdJZ25vcmUgYWRkcmVzcyBmaWVsZCc7CiRsYW5nWydwcm9tcHRfY29udmVydF9hZGRyZXNzJ10gPSAnQ29udmVydCBBZGRyZXNzZXMgdG8gY29vcmRpbmF0ZXMgKGlmIHRoZXJlIGFyZSBubyBjb29yZGluYXRlcyknOwokbGFuZ1sncHJvbXB0X2ttbGZpbGUnXSA9ICdLTUwgRmlsZSB0byBJbXBvcnQnOwokbGFuZ1snaW1wb3J0a21sJ10gPSAnSW1wb3J0IEtNTCc7CiRsYW5nWydpbXBvcnRfa21sJ10gPSAnSW1wb3J0IEtNTCBGaWxlJzsKJGxhbmdbJ3NlbGVjdG9uZSddID0gJ1NlJmNjZWRpbDtpbml6JzsKJGxhbmdbJ2Vycm9yX2ZldV9sb2dnZWRpbiddID0gJ1RvIHVzZSB0aGlzIGZ1bmN0aW9uIHlvdSBtdXN0IGJlIGxvZ2dlZCBpbiB0byB0aGUgZnJvbnRlbmQgb2YgdGhlIHdlYnNpdGUnOwokbGFuZ1snYWN0aXZlJ10gPSAnQWt0aWYnOwokbGFuZ1snYWRkbGluayddID0gJ0xpbmsgRWtsZSc7CiRsYW5nWydhZGRyZXNzJ10gPSAnQWRyZXMnOwokbGFuZ1snYWRkcmVzc3RleHQnXSA9ICdBZHJlcyc7CiRsYW5nWydhZGRjYXRlZ29yeSddID0gJ0thdGVnb3JpIEVrbGUnOwokbGFuZ1snYWRkY29tcGFueSddID0gJ0Zpcm1hIEVrbGUnOwokbGFuZ1snYWRkZmllbGRkZWYnXSA9ICdZZW5pIGFsYW4gZWtsZSc7CiRsYW5nWydhZG1pbl9vbmx5J10gPSAnVmlzaWJsZSBUbyBBZG1pbiBPbmx5JzsKJGxhbmdbJ2FyZXlvdXN1cmUnXSA9ICdLYWxkxLFybWFrIGlzdGVkacSfaW5pemUgZW1pbiBtaXNpbml6Pyc7CiRsYW5nWydhc2NlbmRpbmcnXSA9ICdBcnRhbic7CiRsYW5nWydjYW5jZWwnXSA9ICfEsHB0YWwnOwokbGFuZ1snY2FudXNlcmVkaXQnXSA9ICdDYW4gZnJvbnRlbmQgdXNlcnMgZWRpdCB0aGlzIGZpZWxkPyc7CiRsYW5nWydjYW51c2VydmlldyddID0gJ0NhbiBmcm9udGVuZCB1c2VycyB2aWV3IHRoaXMgZmllbGQ/JzsKJGxhbmdbJ2NhdGVnb3J5J10gPSAnS2F0ZWdvcmknOwokbGFuZ1snY2F0ZWdvcmllcyddID0gJ0thdGVnb3JpbGVyJzsKJGxhbmdbJ2NhdGVnb3J5dGV4dCddID0gJ0thdGVnb3JpJzsKJGxhbmdbJ2NhdGVnb3J5YWRkZWQnXSA9ICdLYXRlZ29yaSBFa2xlbmRpJzsKJGxhbmdbJ2NhdGVnb3J5dXBkYXRlZCddID0gJ0thdGVnb3JpIEcmdXVtbDtuY2VsbGVuZGknOwokbGFuZ1snY2F0ZWdvcnlsaXN0dGVtcGxhdGVfYWRkZWRpdCddID0gJ0thdGVnb3JpIExpc3Rlc2kgxZ5hYmxvbnUgRWtsZS9EJnV1bWw7emVubGUnOwokbGFuZ1snY2F0ZWdvcnlsaXN0dGVtcGxhdGVzJ10gPSAnS2F0ZWdvcmkgTGlzdGVzaSDFnmFibG9udSc7CiRsYW5nWydjYXRlZ29yeWxpc3R0ZW1wbGF0ZXVwZGF0ZWQnXSA9ICdLYXRlZ29yaSBMaXN0ZXNpIEcmdXVtbDtuY2VsbGVuZGknOwokbGFuZ1snY29tcGFueSddID0gJ0Zpcm1hJzsKJGxhbmdbJ2NvbXBhbnlhZGRlZCddID0gJ0Zpcm1hIGVrbGVuZGknOwokbGFuZ1snY29tcGFueW5hbWUnXSA9ICdGaXJtYSBhZMSxJzsKJGxhbmdbJ2NvbXBhbnl1cGRhdGVkJ10gPSAnRmlybWEgZyZ1dW1sO25jZWxsZW5kaSc7CiRsYW5nWydjb21wYW5pZXMnXSA9ICdGaXJtYWxhcic7CiRsYW5nWydjb21wYW55dGV4dCddID0gJ0Zpcm1hJzsKJGxhbmdbJ2NvbXBhbnlkaXJlY3RvcnknXSA9ICdGaXJtYSBEaXppbmknOwokbGFuZ1snY29udGFjdGVtYWlsJ10gPSAnRW1haWwnOwokbGFuZ1snY3JlYXRlZGRhdGUnXSA9ICdHaXJpxZ8gVGFyaWhpJzsKJGxhbmdbJ2RlZmF1bHR0ZW1wbGF0ZXMnXSA9ICdWYXJzYXnEsWxhbiDFnmFibG9ubGFyJzsKJGxhbmdbJ2RlZmF1bHRfdGVtcGxhdGVfbm90aWNlJ10gPSAnPHN0cm9uZz5Ob3RlOjwvc3Ryb25nPiBUaGUgY29udGVudHMgb2YgdGhlc2UgdGV4dCBhcmVhcyBhcmUgdXNlZCB0byBkZXRlcm1pbmUgdGhlIGRlZmF1bHQgY29udGVudCBvZiB0ZW1wbGF0ZXMgd2hlbiB5b3UgY2xpY2sgJnF1b3Q7QWRkIFRlbXBsYXRlJnF1b3Q7IGluIHRoZSBhcHByb3ByaWF0ZSB0ZW1wbGF0ZSB0YWIuICBFZGl0aW5nIG9uZSBvZiB0aGVzZSB0ZXh0IGFyZWFzIHdpbGwgaGF2ZSBubyBpbW1lZGlhdGUgZWZmZWN0IG9uIHlvdXIgd2Vic2l0ZS4nOwokbGFuZ1snZGVsZXRlJ10gPSAnU2lsJzsKJGxhbmdbJ2RlbGV0ZWNhdGVnb3J5J10gPSAnS2F0ZWdvcmkgU2lsJzsKJGxhbmdbJ2RlbGV0ZWNvbXBhbnknXSA9ICdGaXJtYSBTaWwnOwokbGFuZ1snZGVsZXRlZmllbGRkZWYnXSA9ICdUYW7EsW1sxLEgQWxhbiBTaWwnOwokbGFuZ1snZGVzY2VuZGluZyddID0gJ0F6YWxhbic7CiRsYW5nWydkZXNjcmlwdGlvbiddID0gJ0EmY2NlZGlsO8Sxa2xhbWEnOwokbGFuZ1snZGV0YWlscyddID0gJ0F5csSxbnTEsWxhcic7CiRsYW5nWydkZXRhaWxzdGV4dCddID0gJ0F5csSxbnTEsWxhcic7CiRsYW5nWydkZXRhaWx0ZW1wbGF0ZV9hZGRlZGl0J10gPSAnQWRkL0VkaXQgYSBEZXRhaWwgVGVtcGxhdGUnOwokbGFuZ1snZGV0YWlsdGVtcGxhdGVzJ10gPSAnQXlyxLFudMSxIMWeYWJsb25sYXLEsSc7CiRsYW5nWydkZXRhaWx0ZW1wbGF0ZXVwZGF0ZWQnXSA9ICdBeXLEsW50xLEgxZ5hYmxvbnUgRyZ1dW1sO25jZWxsZW5kaSc7CiRsYW5nWydkaXNhYmxlZCddID0gJ1Bhc2lmJzsKJGxhbmdbJ2Rvd24nXSA9ICdBxZ9hxJ/EsSc7CiRsYW5nWydkcmFmdCddID0gJ0RyYWZ0JzsKJGxhbmdbJ2VkaXQnXSA9ICdEJnV1bWw7emVubGUnOwokbGFuZ1snZWRpdGNhdGVnb3J5J10gPSAnS2F0ZWdvcmkgRCZ1dW1sO3plbmxlJzsKJGxhbmdbJ2VkaXRjb21wYW55J10gPSAnRmlybWEgRCZ1dW1sO3plbmxlJzsKJGxhbmdbJ2VkaXRmaWVsZGRlZiddID0gJ0FsYW4gRCZ1dW1sO3plbmxlJzsKJGxhbmdbJ2VtYWlsdGV4dCddID0gJ0VtYWlsJzsKJGxhbmdbJ2Vycm9yX2JhZHVwbG9hZCddID0gJ0EgcHJvYmxlbSBvY2N1cnJlZCB3aXRoIHRoZSB1cGxvYWRlZCBmaWxlJzsKJGxhbmdbJ2Vycm9yX2NvbXBhbnluYW1lJ10gPSAnRmlybWEgQWTEsSBIYXRhbMSxJzsKJGxhbmdbJ2Vycm9yX2NvbXBhbnluYW1lX2ludXNlJ10gPSAnRmlybWEgYWTEsSB2ZXJpdGFiYW7EsW5kYSB6YXRlbiB2YXInOwokbGFuZ1snZXJyb3JfZHVwbGljYXRlX2NhdGVnb3J5J10gPSAnS2F0ZWdvcmkgemF0ZW4gdmFyJzsKJGxhbmdbJ2Vycm9yX2R1cGxpY2F0ZV9jb21wYW55J10gPSAnQSBjb21wYW55IHdpdGggdGhhdCBuYW1lICglcykgYWxyZWFkeSBleGlzdHMnOwokbGFuZ1snZXJyb3JfZHVwbGljYXRlX2ZpZWxkZGVmJ10gPSAnQSBmaWVsZCBieSB0aGF0IG5hbWUgYWxyZWFkeSBleGlzdHMnOwokbGFuZ1snZXJyb3JfaW1wb3J0X2JhZGxpbmUnXSA9ICdCYWQgcmVjb3JkIGZvdW5kIGF0IGxpbmUgJWQuICBJcyB0aGVyZSBhIHJ1bGUgbWlzc2luZz8nOwokbGFuZ1snZXJyb3JfaW1wb3J0X2JhZHZhbHVlJ10gPSAnQSBiYWQgdmFsdWUgd2FzIGZvdW5kIGZvciB0aGUgJXMgZmllbGQnOwokbGFuZ1snZXJyb3JfaW1wb3J0X2R1cGxpY2F0ZXJ1bGUnXSA9ICdEdXBsaWNhdGUgJXMgcnVsZSBhdCBsaW5lICVkJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydF9kdXBsaWNhdGVydWxlX2lkZW50aWZpZXInXSA9ICdEdXBsaWNhdGUgcnVsZSBpZGVudGlmaWVyIGF0IGxpbmUgJWQnOwokbGFuZ1snZXJyb3JfaW1wb3J0X3Vua25vd25yb3cnXSA9ICdEb250IGtub3cgaG93IHRvIGhhbmRsZSBsaW5lICVkIHdpdGggdGhlIHJ1bGUgaWRlbnRpZmllciAlcyc7CiRsYW5nWydlcnJvcl9pbXBvcnRfdW5rbm93bnJ1bGUnXSA9ICdVbmtub3duIHJ1bGUgYXQgbGluZSAlZCc7CiRsYW5nWydlcnJvcl9pbnNlcnRfY2F0ZWdvcnknXSA9ICdBIGRhdGFiYXNlIGVycm9yIG9jY3VycmVkIHRyeWluZyB0byBpbnNlcnQgdGhlIGNhdGVnb3J5IGRlZmluaXRpb24nOwokbGFuZ1snZXJyb3JfaW5zZXJ0X2NvbXBhbnknXSA9ICdBIGRhdGFiYXNlIGVycm9yIG9jY3VycmVkIHRyeWluZyB0byBpbnNlcnQgdGhlIGNvbXBhbnkgZGVmaW5pdGlvbic7CiRsYW5nWydlcnJvcl9pbnNlcnRfZmllbGRkZWYnXSA9ICdBIGRhdGFiYXNlIGVycm9yIG9jY3VycmVkIHRyeWluZyB0byBpbnNlcnQgdGhlIGZpZWxkIGRlZmluaXRpb24nOwokbGFuZ1snZXJyb3JfaW52YWxpZF9wYXJhbSddID0gJ1RoZSB2YWx1ZSBzcGVjaWZpZWQgZm9yICVzIGlzIGludmFsaWQnOwokbGFuZ1snZXJyb3JfbWlzc2luZ3VwbG9hZCddID0gJ0hpJmNjZWRpbDsgZG9zeWEgeSZ1dW1sO2tsZW5tZWRpJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdwYXJhbSddID0gJ0EgcmVxdWlyZWQgdmFsdWUgd2FzIG1pc3NpbmcgZnJvbSB0aGUgZm9ybSBpbnB1dCc7CiRsYW5nWydlcnJvcl9ub2Ryb3Bkb3dub3B0aW9ucyddID0gJ05vIERyb3Bkb3duIG9wdGlvbnMgc3VwcGxpZWQnOwokbGFuZ1snZXJyb3Jfbm9mZXUnXSA9ICdDb3VsZCBub3QgZmluZCB0aGUgRnJvbnRFbmRVc2VycyBtb2R1bGUnOwokbGFuZ1snZXJyb3Jfbm9sZW5ndGgnXSA9ICdObyBtYXhpbXVtIGxlbmd0aCBmaWVsZCBzdXBwbGllZCc7CiRsYW5nWydlcnJvcl9ub3Jlc3VsdHNmb3VuZCddID0gJ05vIHJlY29yZHMgbWF0Y2hpbmcgeW91ciBjcml0ZXJpYSBjb3VsZCBiZSBmb3VuZCBpbiB0aGUgZGF0YWJhc2UnOwokbGFuZ1snZXJyb3JfcG9zdGNvZGVfbG9va3VwJ10gPSAnQ291bGQgbm90IGZpbmQgYW55IGluZm9ybWF0aW9uIGZvciBwb3N0YWwvemlwIGNvZGUgJXMnOwokbGFuZ1snZXJyb3JfcHJlZml4X21zZyddID0gJ0FuIGVycm9yIG9jY3VycmVkIGF0IGxpbmUgJWQ6ICVzJzsKJGxhbmdbJ2V4cG9ydGNzdiddID0gJ0V4cG9ydCBDU1YnOwokbGFuZ1snZmF4J10gPSAnRmFrcyc7CiRsYW5nWydmYXh0ZXh0J10gPSAnRmFrcyc7CiRsYW5nWydmaWVsZGRlZiddID0gJ0FsYW4gVGFuxLFtbGFtYSc7CiRsYW5nWydmaWVsZGRlZnMnXSA9ICdBbGFuIFRhbsSxbWFsYWxhcsSxJzsKJGxhbmdbJ2ZpZWxkZGVmdGV4dCddID0gJ0FsYW4gVGFuxLFtbGFtYSc7CiRsYW5nWydmaWVsZGRlZmFkZGVkJ10gPSAnWWVuaSBhbGFuIGVrbGVuZGknOwokbGFuZ1snZmllbGRkZWZ1cGRhdGVkJ10gPSAnVGFuxLFtbMSxIEFsYW4gZyZ1dW1sO25jZWxsZW5kaSc7CiRsYW5nWydmaWVsZGRlZmRlbGV0ZWQnXSA9ICdUYW7EsW1sxLEgQWxhbiBzaWxpbmRpJzsKJGxhbmdbJ2ZpZWxkX2NoZWNrYm94J10gPSAnQ2hlY2tib3gnOwokbGFuZ1snZmllbGRfZHJvcGRvd24nXSA9ICdEcm9wZG93bic7CiRsYW5nWydmaWVsZF90ZXh0YXJlYSddID0gJ1RleHQgQXJlYSc7CiRsYW5nWydmaWVsZF90ZXh0Ym94J10gPSAnVGV4dCBJbnB1dCc7CiRsYW5nWydmaXJzdHBhZ2UnXSA9ICc8PCc7CiRsYW5nWydmcm9udGVuZGZvcm10ZW1wbGF0ZV9hZGRlZGl0J10gPSAnQWRkL0VkaXQgYSBGcm9udGVuZCBGb3JtIFRlbXBsYXRlJzsKJGxhbmdbJ2Zyb250ZW5kZm9ybXRlbXBsYXRlcyddID0gJ0VkaXQgQ29tcGFueSBUZW1wbGF0ZXMnOwokbGFuZ1snZnJvbnRlbmRmb3JtdGVtcGxhdGV1cGRhdGVkJ10gPSAnRWRpdCBDb21wYW55IFRlbXBsYXRlIFVwZGF0ZWQnOwokbGFuZ1snaGVscCddID0gJzxoMz5XaGF0IGRvZXMgdGhpcyBkbz88L2gzPg0KPHA+VGhpcyBtb2R1bGUgcHJvdmlkZXMgYSB3YXkgdG8gY29sbGVjdCwgb3JnYW5pemUsIGFuZCBkaXNwbGF5IGluZm9ybWF0aW9uIGFib3V0IGNvbXBhbmllcy4gIFVzdWFsbHkgdGhpcyBpcyB0aGUgY29udGFjdCBpbmZvcm1hdGlvbiBhbmQgYSBsb2dvLCBidXQgaXQgaXMgZmxleGliaWxlIGVub3VnaCB0byBhbGxvdyBmb3IgZXh0ZW5kYWJsZSBmaWVsZHMsIGFuZCBkaXNjcmltaW5hdGluZyBwdWJsaWMgZnJvbSBwcml2YXRlIGRhdGEuPC9wPg0KPHA+VGhpcyBtb2R1bGUgY291bGQgYmUgdXNlZCBmb3IgYSB2YXJpZXR5IG9mIHB1cnBvc2VzLiBGcm9tIGEgc3VwcGxpZXJzIGxpc3QgdG8gYSBjb250YWN0IGxpc3QuICBJdCBpcyBmbGV4aWJsZSBlbm91Z2ggdGhhdCBpdCBjb3VsZCBiZSByZS11c2VkIGZvciBtYW55IGRpZmZlcmVudCBwdXJwb3Nlcy48L3A+DQo8aDM+SG93IERvIEkgVXNlIEl0PC9oMz4NCjxwPlRoZSBlYXNpZXN0IHdheSB0byB1c2UgdGhpcyBtb2R1bGUgaXMgYnkgcGxhY2luZyB0aGUgPGNvZGU+e0NvbXBhbnlEaXJlY3Rvcnl9PC9jb2RlPiB0YWcgaW50byBlaXRoZXIgeW91ciBwYWdlIHRlbXBsYXRlIG9yIHBhZ2UgY29udGVudC4gIFlvdSB3b3VsZCB0aGVuIHN0YXJ0IGVkaXRpbmcgcmVjb3JkcyBpbiB0aGUgJnF1b3Q7Q29tcGFueSBEaXJlY3RvcnkmcXVvdDsgYWRtaW4gaW50ZXJmYWNlLiAgRXhwbG9yZSB0aGUgdmFyaW91cyBwYXJhbWV0ZXJzIChkZXNjcmliZWQgYmVsb3cpIGZvciB3YXlzIHRvIGN1c3RvbWl6ZSB0aGUgYmVoYXZpb3VyIG9mIHRoZSBtb2R1bGUuPC9wPg0KPGgzPlNlY3VyaXR5PC9oMz4NCjxwPkluIG9yZGVyIHRvIG1hbmFnZSB0aGUgY29tcGFuaWVzIGluc2lkZSB0aGlzIG1vZHVsZSwgdGhlIGFkbWluaXN0cmF0b3IgbXVzdCBoYXZlIHRoZSAmIzAzOTs8L2VtPk1vZGlmeSBDb21wYW55IERpcmVjdG9yeTwvZW0+JiMwMzk7IHBlcm1pc3Npb24uPC9wPg0KPHA+SW4gb3JkZXIgdG8gZWRpdCB0aGUgYnVpbHQgaW4gdGVtcGxhdGVzIHRoYXQgY29udHJvbCB0aGUgbGF5b3V0IG9mIHRoZSBjb21wYW55ZGlyZWN0b3J5IGluZm9ybWF0aW9uLCB0aGUgYWRtaW5pc3RyYXRvciBuZWVkcyB0aGUgJiMwMzk7PGVtPk1vZGlmeSBUZW1wbGF0ZXM8L2VtPiYjMDM5OyBwZXJtaXNzaW9uLjwvcD4NCjxwPlRvIGFkanVzdCB0aGUgdmFyaW91cyBzZXR0aW5ncywgdGhlICYjMDM5OzxlbT5Nb2RpZnkgU2l0ZSBQcmVmZXJlbmNlczwvZW0+JiMwMzk7IHBlcm1pc3Npb24gaXMgcmVxdWlyZWQuPC9wPg0KPGgzPlByZXR0eSBVUkxTPC9oMz4NCjxwPkZ1bmN0aW9uYWxpdHkgYW5kIGZsZXhpYmlsaXR5IGlzIHJlZHVjZWQgd2hlbiB1c2luZyBwcmV0dHkgdXJscy4gIEZvciBleGFtcGxlLCBpZiB1c2luZyBwcmV0dHkgVVJMUyB3aXRoIHRoaXMgbW9kdWxlLCB5b3Ugc2hvdWxkIHBvc3QgdGhlIHRhZyBmb3IgdGhpcyBtb2R1bGUgaW4gdGhlIGRlZmF1bHQgY29udGVudCBibG9jaywgYW5kIHdoZW4gY2xpY2tpbmcgb24gYSBsaW5rIG9yIHN1Ym1pdHRpbmcgYSBidXR0b24gZnJvbSB0aGlzIG1vZHVsZSwgaXQmIzAzOTtzIHJlc3VsdHMgd2lsbCBhbHdheXMgcmVwbGFjZSB0aGUgZGVmYXVsdCBjb250ZW50IGJsb2NrLjwvcD4nOwokbGFuZ1snaWQnXSA9ICdJZCc7CiRsYW5nWydpbmZvX2Ryb3Bkb3duX29wdGlvbnMnXSA9ICdTcGVjaWZ5IHRoZSBvcHRpb25zIGZvciB0aGUgZHJvcGRvd24gY29udHJvbC4gIE9uZSBsaW5lIHBlciBlbnRyeS4gIFNlcGVyYXRlIGtleXMgZnJvbSB2YWx1ZXMgd2l0aCB0aGUgPS4gIGkuZToga2V5PXZhbHVlJzsKJGxhbmdbJ2ltYWdlY3VycmVudGhpZGRlbiddID0gJyc7CiRsYW5nWydpbWFnZXRleHQnXSA9ICdSZXNpbSc7CiRsYW5nWydpbXBvcnRjc3YnXSA9ICdJbXBvcnQgQ1NWJzsKJGxhbmdbJ2xhdGl0dWRlJ10gPSAnTGF0aXR1ZGUnOwokbGFuZ1snbGFzdHBhZ2UnXSA9ICc+Pic7CiRsYW5nWydsb2dvY3VycmVudGhpZGRlbiddID0gJyc7CiRsYW5nWydsb2dvdGV4dCddID0gJ0xvZ28nOwokbGFuZ1snbG9uZ2l0dWRlJ10gPSAnTG9uZ2l0dWRlJzsKJGxhbmdbJ2xvb2t1cCddID0gJ0xvb2t1cCBDb29yZGluYXRlcyc7CiRsYW5nWydtYXhsZW5ndGgnXSA9ICdNYXggTGVuZ3RoJzsKJGxhbmdbJ21heF9sZW5ndGgnXSA9ICdNYXggTGVuZ3RoJzsKJGxhbmdbJ21heGxlbmd0aHRleHQnXSA9ICdNYXggTGVuZ3RoJzsKJGxhbmdbJ21vZGlmaWVkZGF0ZSddID0gJ0RhdGUgTGFzdCBNb2RpZmllZCc7CiRsYW5nWyduYW1lJ10gPSAnQWTEsSc7CiRsYW5nWyduYW1ldGV4dCddID0gJ0FkxLEnOwokbGFuZ1snbmVlZHBlcm1pc3Npb24nXSA9ICdZb3UgbmVlZCB0aGUgJiMwMzk7JXMmIzAzOTsgcGVybWlzc2lvbiB0byBwZXJmb3JtIHRoYXQgZnVuY3Rpb24uJzsKJGxhbmdbJ25vJ10gPSAnSGF5xLFyJzsKJGxhbmdbJ25vY29tcGFueW5hbWVnaXZlbiddID0gJ0Zpcm1hIGFkxLEgdmVyaWxtZWRpJzsKJGxhbmdbJ25vbmFtZWdpdmVuJ10gPSAnxLBzaW0gdmVyaWxtZWRpJzsKJGxhbmdbJ25vdGFudW1iZXInXSA9ICdSYWthbSBvbGFtYXonOwokbGFuZ1snbmV4dHBhZ2UnXSA9ICc+JzsKJGxhbmdbJ29mJ10gPSAnLSc7CiRsYW5nWydwYWdlJ10gPSAnU2F5ZmEnOwokbGFuZ1sncGFyYW1fYWN0aW9uJ10gPSAnRGV0ZXJtaW5lIHRoZSBwcmltYXJ5IGJlaGF2aW91ciBvZiB0aGUgbW9kdWxlLiAgUG9zc2libGUgdmFsdWVzIGZvciB0aGlzIHBhcmFtZXRlciBhcmU6DQo8dWw+DQogIDxsaT5jYXRlZ29yeWxpc3QgLS0gRGlzcGxheSBhIGxpc3Qgb2YgY2F0ZWdvcmllcy4gIFVzZXJzIGNhbiBkcmlsbCBkb3duIHRvIHN1bW1hcnkgbW9kZSwgYW5kIHRoZW4gdG8gZGV0YWlsIG1vZGUuPC9saT4NCiAgPGxpPjxzdHJvbmc+ZGVmYXVsdDwvc3Ryb25nPiAtLSBEaXNwbGF5IGNvbXBhbmllcyBpbiBhIHN1bW1hcnkgbW9kZS48L2xpPg0KICA8bGk+ZGV0YWlscyAtLSBEaXNwbGF5IGRldGFpbGVkIGluZm9ybWF0aW9uIGFib3V0IGEgc3BlY2lmaWMgY29tcGFueS48L2xpPg0KICA8bGk+ZmVfZWRpdCAtLSBEaXNwbGF5IGEgZm9ybSB0byBhbGxvdyBlZGl0aW5nIGluZm9ybWF0aW9uIGFib3V0IGEgc3BlY2lmaWMgY29tcGFueS48L2xpPg0KPGxpPmZyb250ZW5kbGlzdCAtLSBEaXNwbGF5IGxpc3Qgb2YgYWxsIG9mIGEgdXNlcnMgY29tcGFueSBlbnRyaWVzIG9uIHRoZSBmcm9udGVuZCwgd2l0aCB0aGUgb3B0aW9uYWwgYWJpbGl0eSB0byBhZGQgaXRlbXMuPC9saT4NCiAgPGxpPnNlYXJjaCAgLS0gRGlzcGxheSBhIGZvcm0gdG8gYWxsb3cgc2VhcmNoaW5nIGZvciBzcGVjaWZpYyBjb21wYW5pZXMuPC9saT4NCiAgPGxpPmJyb3dzZWhpZXIgLS0gRGlzcGxheSBhIGxpc3Qgb2YgaGllcmFyY2hpZXMuICBVc2VycyBjYW4gZHJpbGwgZG93biB0byBzdW1tYXJ5IG1vZGUgYW5kIHRoZW4gdG8gZGV0YWlsIG1vZGUuPC9saT4NCiAgIA0KPC91bD4NCic7CiRsYW5nWydwYXJhbV9pbmxpbmUnXSA9ICdBcHBsaWNhYmxlIG9ubHkgdG8gdGhlIDxlbT5kZWZhdWx0PC9lbT4gc3VtbWFyeSwgYW5kIDxlbT5zZWFyY2g8L2VtPiBtb2RlcywgdGhpcyBwYXJhbWV0ZXIgYWxsb3dzIHNwZWNpZnlpbmcgd2V0aGVyIHRoZSByZXN1bHRpbmcgZGF0YSBzaG91bGQgcmVwbGFjZSB0aGUgZGVmYXVsdCBjb250ZW50IGJsb2NrLCBvciBzaG91bGQgcmVwbGFjZSB0aGUgb3JpZ2luYWwgdGFnIChpbmxpbmUpLic7CiRsYW5nWydwYXJhbV9zZWFyY2hmb3JtdGVtcGxhdGUnXSA9ICdBcHBsaWNhYmxlIG9ubHkgdG8gdGhlIDxlbT5zZWFyY2g8L2VtPiBtb2RlLCB0aGlzIHBhcmFtZXRlciBhbGxvd3Mgc3BlY2lmeWluZyBhIG5vbiBkZWZhdWx0IHNlYXJjaCBmb3JtIHRlbXBsYXRlLic7CiRsYW5nWydwYXJhbV9wYWdlbGltaXQnXSA9ICdXaGVuIHVzZWQgd2l0aCB0aGUgPGVtPmRlZmF1bHQ8L2VtPiBzdW1tYXJ5IG1vZGUsIG9yIHRoZSA8ZW0+c2VhcmNoPC9lbT4gbW9kZSwgdGhpcyB3aWxsIGxpbWl0IHRoZSByZXN1bHRzIHRvIGEgc3BlY2lmaWVkIG51bWJlci4nOwokbGFuZ1sncGFyYW1fY2F0ZWdvcnknXSA9ICdXaGVuIHVzZWQgaW4gdGhlIDxlbT5kZWZhdWx0PC9lbT4gc3VtbWFyeSBtb2RlLCB0aGlzIHBhcmFtZXRlciwgd2hpY2ggc2hvdWxkIG1hdGNoIHRoZSBuYW1lIG9mIGFuIGV4aXN0aW5nIGNhdGVnb3J5IHdpbGwgYmUgdXNlZCB0byBkaXNwbGF5IG9ubHkgdGhvc2UgY29tcGFuaWVzIHRoYXQgYXJlIGluIHRoYXQgY2F0ZWdvb3J5LiAoYSBjb21tYSBzZXBlcmF0ZWQgbGlzdCBjYW4gYmUgc3VwcGxpZWQpLic7CiRsYW5nWydwYXJhbV9jYXRlZ29yeWxpc3R0ZW1wbGF0ZSddID0gJ1NwZWNpZnkgYSB0ZW1wbGF0ZSAoYnkgbmFtZSkgdG8gdXNlIHdoZW4gZGlzcGxheWluZyB0aGUgY2F0ZWdvcnkgbGlzdCB2aWV3Lic7CiRsYW5nWydwYXJhbV9jb21wYW55aWQnXSA9ICdSZXF1aXJlZCBmb3IgdGhlIGZyb250ZW5kIGVkaXRpbmcgYW5kIGRldGFpbCBtb2RlcywgdGhpcyBwYXJhbWV0ZXIgZGV0ZXJtaW5lcyB3aGljaCBjb21wYW55IHJlY29yZCB0byBlZGl0IG9yIHZpZXcuJzsKJGxhbmdbJ3BhcmFtX2RldGFpbHBhZ2UnXSA9ICdTcGVjaWZ5IGEgcGFnZSBhbGlhcyAoYnkgbmFtZSkgdG8gdXNlIGZvciBkaXNwbGF5aW5nIGEgZGV0YWlsIHJlY29yZC4gPHN0cm9uZz5Ob3RlOjwvc3Ryb25nPiBUaGlzIHRhZyBwYXJhbWV0ZXIgaXMgbm90IGNvbXBhdGlibGUgd2l0aCBwcmV0dHkgdXJscy4nOwokbGFuZ1sncGFyYW1fZGV0YWlsdGVtcGxhdGUnXSA9ICdTcGVjaWZ5IGEgdGVtcGxhdGUgKGJ5IG5hbWUpIHRvIHVzZSB3aGVuIGRpc3BsYXlpbmcgdGhlIGRldGFpbCB2aWV3LiAgPHN0cm9uZz5Ob3RlOjwvc3Ryb25nPiBUaGlzIHRhZyBwYXJhbWV0ZXIgaXMgbm90IGNvbXBhdGlibGUgd2l0aCBwcmV0dHkgdXJscy4nOwokbGFuZ1sncGFyYW1fZnJvbnRlbmRmb3JtdGVtcGxhdGUnXSA9ICdTcGVjaWZ5IGEgdGVtcGxhdGUgKGJ5IG5hbWUpIHRvIHVzZSB3aGVuIGRpc3BsYXlpbmcgdGhlIGZyb250IGVuZCBjb21wYW55IGVkaXQgZm9ybS4nOwokbGFuZ1sncGFyYW1fc2VsZWN0Y2F0ZWdvcnknXSA9ICdJZiB0aGlzIHBhcmFtZXRlciBpcyBzZXQsIHRoZW4gYSBmb3JtIHdpbGwgYmUgZ2VuZXJhdGVkIGFsbG93aW5nIHVzZXJzIHRvIGludGVyYWN0aXZlbHkgZmlsdGVyIGNvbXBhbnkgcmVjb3JkcyBvbiBhIHNpbmdsZSBjYXRlZ29yeS4gIFRoaXMgZmxhZyBzaG91bGQgbm90IGJlIHVzZWQgaW4gY29uanVuY3Rpb24gd2l0aCB0aGUgJiMwMzk7Y2F0ZWdvcnkmIzAzOTsgcGFyYW1ldGVyLic7CiRsYW5nWydwYXJhbV9zaG93YWxsJ10gPSAnQXBwbGljYWJsZSBvbmx5IHRvIHRoZSBjYXRlZ29yeWxpc3QgYWN0aW9uLCBpZiB0aGlzIHBhcmFtZXRlciBpcyBzZXQsIHRoZW4gZXZlbiBjYXRlZ29yaWVzIHdpdGggbm8gbWF0Y2hpbmcgY29tcGFuaWVzIHdpbGwgYmUgZGlzcGxheWVkIGluIHRoZSBvdXRwdXQnOwokbGFuZ1sncGFyYW1fc29ydG9yZGVyJ10gPSAnU3BlY2lmeSB0aGUgb3JkZXIgb2Ygc29ydGVkIGZpZWxkcyBpbiBzdW1tYXJ5IHZpZXcuICBQb3NzaWJsZSB2YWx1ZXMgYXJlOg0KPHVsPg0KICA8bGk+PHN0cm9uZz5hc2M8L3N0cm9uZz4gLS0gQXNjZW5kaW5nIG9yZGVyPC9saT4NCiAgPGxpPmRlc2MgLS0gRGVzY2VuZGluZyBvcmRlcjwvbGk+DQo8L3VsPic7CiRsYW5nWydwYXJhbV9zb3J0YnknXSA9ICdBcHBsaWNhYmxlIG9ubHkgaW4gc3VtbWFyeSBtb2RlLCB0aGlzIHBhcmFtZXRlciBkZXRlcm1pbmVzIHRoZSBzb3J0aW5nIG9mIHRoZSBvdXRwdXQgY29tcGFuaWVzLiAgUG9zc2libGUgdmFsdWVzIGFyZToNCjx1bD4NCiAgPGxpPjxzdHJvbmc+Y29tcGFueV9uYW1lPC9zdHJvbmc+PC9saT4NCiAgPGxpPnBob25lPC9saT4NCiAgPGxpPmZheDwvbGk+DQogIDxsaT5lbWFpbDwvbGk+DQogIDxsaT53ZWJzaXRlIC0tIFRoZSB3ZWJzaXRlIHVybDwvbGk+DQogIDxsaT5jcmVhdGVkIC0tIFRoZSBjcmVhdGlvbiBkYXRlIGZvciB0aGlzIGNvbXBhbnkgcmVjb3JkPC9saT4NCiAgPGxpPm1vZGlmaWVkIC0tIFRoZSBtb2RpZmllZCBkYXRlIGZvciB0aGlzIGNvbXBhbnkgcmVjb3JkPC9saT4NCiAgPGxpPmY6ZmllbGQgbmFtZSAtLSBTb3J0IGJ5IHB1YmxpYyBjdXN0b20gZmllbGRzLiBUaGUgb3V0cHV0IHdpbGwgYmUgc29ydGVkIGJ5IHRoZSBuYW1lZCBjdXN0b20gZmllbGQuPGJyLz4NCiAgPHN0cm9uZz5Ob3RlOiA8L3N0cm9uZz4gWW91IG1heSBuZWVkIHRvIHVzZSBxdW90ZXMgaWYgdGhlIGZpZWxkIG5hbWUgaGFzIHNwYWNlcy48YnIvPg0KICA8c3Ryb25nPk5vdGU6IDwvc3Ryb25nPiBUaGUgZmllbGQgc3BlY2lmaWVkIG11c3QgYmUgbWFya2VkIGFzIHB1YmxpYy48L2xpPg0KPC91bD4nOwokbGFuZ1sncGFyYW1fc3VtbWFyeXRlbXBsYXRlJ10gPSAnU3BlY2lmeSBhIHRlbXBsYXRlIChieSBuYW1lKSB0byB1c2Ugd2hlbiBkaXNwbGF5aW5nIHRoZSBzdW1tYXJ5IHZpZXcuICA8c3Ryb25nPk5vdGU6PC9zdHJvbmc+IFRoaXMgdGFnIHBhcmFtZXRlciBpcyBub3QgY29tcGF0aWJsZSB3aXRoIHByZXR0eSB1cmxzLic7CiRsYW5nWydwb3N0YWxfY29kZSddID0gJ1Bvc3RhIEtvZHUnOwokbGFuZ1sncG9zdGluc3RhbGwnXSA9ICdDb21wYW55IERpcmVjdG9yeSBtb2R1bGUgc3VjY2Vzc2Z1bGx5IGluc3RhbGxlZCc7CiRsYW5nWydwb3N0dW5pbnN0YWxsJ10gPSAnVGhlIENvbXBhbnkgRGlyZWN0b3J5IG1vZHVsZSBzdWNjZXNzZnVsbHkgdW5pbnN0YWxsZWQuICBBbGwgYXNzb2NpYXRlZCBjb21wYW55IGRhdGEgaGFzIGJlZW4gZXJhc2VkJzsKJGxhbmdbJ3ByZXVuaW5zdGFsbCddID0gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byB1bmluc3RhbGwgdGhpcyBtb2R1bGU/IFVuaW5zdGFsbGluZyB0aGlzIG1vZHVsZSB3aWxsIHBlcm1hbmVudGx5IGVyYXNlIGFsbCBhc3NvY2lhdGVkIGNvbXBhbnkgZGF0YS4nOwokbGFuZ1sncHJldnBhZ2UnXSA9ICc8JzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yaWVzX2ltcG9ydGVkJ10gPSAnQ2F0ZWdvcmllcyBJbXBvcnRlZCc7CiRsYW5nWydwcm9tcHRfY2hlY2tfZHVwbGljYXRlcyddID0gJ0NoZWNrIGZvciBkdXBsaWNhdGUgY29tcGFueSBuYW1lcz8nOwokbGFuZ1sncHJvbXB0X2NvbGxlY3RzdGF0cyddID0gJ0FyYW1hIGlzdGF0aXN0aWtsZXJpbmkga2F5ZGV0JzsKJGxhbmdbJ3Byb21wdF9jb21wYW5pZXNfaW1wb3J0ZWQnXSA9ICdDb21wYW5pZXMgSW1wb3J0ZWQnOwokbGFuZ1sncHJvbXB0X2RlbGltZXRlciddID0gJ0ZpZWxkIERlbGltZXRlcic7CiRsYW5nWydwcm9tcHRfZGV0YWlscGFnZSddID0gJ1RoZSBkZWZhdWx0IHBhZ2UgdG8gcmVkaXJlY3QgdG8gaW4gZGV0YWlsIG1vZGUnOwokbGFuZ1sncHJvbXB0X2Ryb3Bkb3duX29wdGlvbnMnXSA9ICdEcm9wZG93biBTZSZjY2VkaWw7ZW5la2xlcmknOwokbGFuZ1sncHJvbXB0X2ZpZWxkZGVmc19pbXBvcnRlZCddID0gJ0ZpZWxkIERlZmluaXRpb25zIEltcG9ydGVkJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRfY2F0ZWdvcnlkZWZzJ10gPSAnQ3JlYXRlIG1pc3NpbmcgY2F0ZWdvcmllcyBvbiBpbXBvcnQnOwokbGFuZ1sncHJvbXB0X2ltcG9ydF9jYXRlZ29yeXZhbHMnXSA9ICdQb3B1cGxhdGUgY2F0ZWdvcnkgdmFsdWVzIG9uIGltcG9ydCc7CiRsYW5nWydwcm9tcHRfaW1wb3J0X2NzdmZpbGUnXSA9ICdVcGxvYWQgQ1NWIEZpbGUnOwokbGFuZ1sncHJvbXB0X2ltcG9ydF9maWVsZGRlZnMnXSA9ICdDcmVhdGUgbWlzc2luZyAmcXVvdDthZGRpdGlvbmFsIGZpZWxkJnF1b3Q7IGRlZmluaXRpb25zIG9uIGltcG9ydCc7CiRsYW5nWydwcm9tcHRfaW1wb3J0X2ZpZWxkdmFscyddID0gJ1BvcHVsYXRlICZxdW90O2FkZGl0aW9uYWwgZmllbGQmcXVvdDsgdmFsdWVzIG9uIGltcG9ydCc7CiRsYW5nWydwcm9tcHRfaW1wb3J0X2xvb2t1cGxhdGxvbmcnXSA9ICdMb29rdXAgbGF0aXR1ZGUgYW5kIGxvbmdpdHVkZSB2YWx1ZXMgaWYgbWlzc2luZyc7CiRsYW5nWydwcm9tcHRfcGFnZWxpbWl0J10gPSAnVGhlIG51bWJlciBvZiByZWNvcmRzIHRvIHZpZXcgcGVyIHBhZ2UgaW4gc3VtbWFyeSBtb2RlJzsKJGxhbmdbJ3Byb21wdF9zdW1tYXJ5c29ydGluZyddID0gJ0RlZmF1bHQgc29ydGluZyBpbiBzdW1tYXJ5IG1vZGUnOwokbGFuZ1sncHJvbXB0X3N1bW1hcnlzb3J0b3JkZXInXSA9ICdUaGUgZGVmYXVsdCBzb3J0IG9yZGVyIGluIHN1bW1hcnkgbW9kZSA8ZW0+KGRvZXMgbm90IGFwcGx5IHdoZW4gc29ydGluZyBpcyAmIzAzOTtyYW5kb20mIzAzOTs8L2VtPic7CiRsYW5nWydwcm9tcHRfdGVtcGxhdGUnXSA9ICfFnmFibG9uJzsKJGxhbmdbJ3B1YmxpYyddID0gJ0dlbmVsJzsKJGxhbmdbJ3B1Ymxpc2hlZCddID0gJ1lhecSxbmxhbmTEsSc7CiRsYW5nWydwcmVmZXJlbmNlcyddID0gJ0F5YXJsYXInOwokbGFuZ1sncmFkaXVzJ10gPSAnUmFkaXVzJzsKJGxhbmdbJ3JhbmRvbSddID0gJ1Jhc3RnZWxlJzsKJGxhbmdbJ3JldHVybiddID0gJ0dlcmkgZCZvdW1sO24nOwokbGFuZ1sncmVzZXR0b2ZhY3RvcnknXSA9ICdWYXJzYXnEsWxhbmxhcmEgc8SxZsSxcmxhJzsKJGxhbmdbJ3Jlc3RvcmV0b2RlZmF1bHRzbXNnJ10gPSAnVGhpcyBvcGVyYXRpb24gd2lsbCByZXN0b3JlIHRoZSB0ZW1wbGF0ZSBjb250ZW50cyB0byB0aGVpciBzeXN0ZW0gZGVmYXVsdHMuICBBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gcHJvY2VkZT8nOwokbGFuZ1snc2VhcmNoJ10gPSAnQXJhbWEnOwokbGFuZ1snc2VhcmNoZXMnXSA9ICdBcmFtYWxhcic7CiRsYW5nWydzZWFyY2hmb3JtdGVtcGxhdGVzJ10gPSAnQXJhbWEgRm9ybSDFnmFibG9ubGFyxLEnOwokbGFuZ1snc2VhcmNoZm9ybXRlbXBsYXRlX2FkZGVkaXQnXSA9ICdBcmFtYSBGb3JtIMWeYWJsb251IEVrbGUvRCZ1dW1sO3plbmxlJzsKJGxhbmdbJ3N0YXR1cyddID0gJ0R1cnVtJzsKJGxhbmdbJ3N1Ym1pdCddID0gJ0cmb3VtbDtuZGVyJzsKJGxhbmdbJ3N1bW1hcnl0ZW1wbGF0ZV9hZGRlZGl0J10gPSAnJk91bWw7emV0IMWeYWJsb251IEVrbGUvRCZ1dW1sO3plbmxlJzsKJGxhbmdbJ3N1bW1hcnl0ZW1wbGF0ZXMnXSA9ICcmT3VtbDt6ZXQgxZ5hYmxvbmxhcsSxJzsKJGxhbmdbJ3N1bW1hcnl0ZW1wbGF0ZXVwZGF0ZWQnXSA9ICcmT3VtbDt6ZXQgxZ9hYmxvbnUgRyZ1dW1sO25jZWxsZW5kaSc7CiRsYW5nWydzeXNkZWZhdWx0cyddID0gJ1ZhcnNhecSxbGFubGFyYSBTxLFmxLFybGEnOwokbGFuZ1sndGVsZXBob25lJ10gPSAnVGVsZWZvbic7CiRsYW5nWyd0ZWxlcGhvbmV0ZXh0J10gPSAnVGVsZWZvbic7CiRsYW5nWyd0aXRsZV9jYXRlZ29yeWxpc3RfZGZsdHRlbXBsYXRlJ10gPSAnRGVmYXVsdCBDYXRlZ29yeSBMaXN0IFRlbXBsYXRlJzsKJGxhbmdbJ3RpdGxlX2RldGFpbF9kZmx0dGVtcGxhdGUnXSA9ICdEZWZhdWx0IERldGFpbCBUZW1wbGF0ZSc7CiRsYW5nWyd0aXRsZV9mcm9udGVuZGZvcm1fZGZsdHRlbXBsYXRlJ10gPSAnRGVmYXVsdCBGcm9udGVuZCBGb3JtIFRlbXBsYXRlJzsKJGxhbmdbJ3RpdGxlX2ltcG9ydF9yZXBvcnQnXSA9ICdDU1YgSW1wb3J0IFJlcG9ydCc7CiRsYW5nWyd0aXRsZV9zZWFyY2hmb3JtX2RmbHR0ZW1wbGF0ZSddID0gJ0RlZmF1bHQgU2VhcmNoIEZvcm0gVGVtcGxhdGUnOwokbGFuZ1sndGl0bGVfc3VtbWFyeV9kZmx0dGVtcGxhdGUnXSA9ICdEZWZhdWx0IFN1bW1hcnkgVGVtcGxhdGUnOwokbGFuZ1sndHlwZSddID0gJ1RpcCc7CiRsYW5nWyd0eXBldGV4dCddID0gJ1RpcCc7CiRsYW5nWyd1cCddID0gJ1l1a2FyxLEnOwokbGFuZ1snd2Vic2l0ZSddID0gJ1dlYnNpdGUnOwokbGFuZ1snd2Vic2l0ZXRleHQnXSA9ICdXZWJzaXRlJzsKJGxhbmdbJ3llcyddID0gJ0V2ZXQnOwokbGFuZ1sndXRtYSddID0gJzE1Njg2MTM1My4xNjY0ODk3NTY1LjEyNzI3NTkxNjMuMTI3Nzc2MTI1NC4xMjc3NzY1NjkxLjMyJzsKJGxhbmdbJ3V0bXonXSA9ICcxNTY4NjEzNTMuMTI3Nzc2NTY5MS4zMi41LnV0bWNjbj0ocmVmZXJyYWwpfHV0bWNzcj1kZXYuY21zbWFkZXNpbXBsZS5vcmd8dXRtY2N0PS9wcm9qZWN0L2ZpbGVzLzI1MHx1dG1jbWQ9cmVmZXJyYWwnOwokbGFuZ1sncWNhJ10gPSAnUDAtMTk2MDc1NjM2MS0xMjcyNzU5MTYzMzcwJzsKJGxhbmdbJ3V0bWMnXSA9ICcxNTY4NjEzNTMnOwokbGFuZ1sndXRtYiddID0gJzE1Njg2MTM1Myc7Cj8+]]></data>
	</file>
	<file>
	  <filename>/lib/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/class.cd_ascii_importer.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgpjbGFzcyBjZF9hc2NpaV9pbXBvcnRlcgp7CiAgcHJpdmF0ZSAkX2Vycm9yczsKICBwcml2YXRlICRfZGVsaW1pdGVyOwogIHByaXZhdGUgJF9tb2Q7CiAgcHJpdmF0ZSAkX2RvX2ZpZWxkZGVmczsKICBwcml2YXRlICRfZG9fZmllbGR2YWxzOwogIHByaXZhdGUgJF9kb19jYXRlZ29yeWRlZnM7CiAgcHJpdmF0ZSAkX2RvX2NhdGVnb3J5dmFsczsKICBwcml2YXRlICRfZG9fbGF0bG9uZ19sb29rdXA7CiAgcHJpdmF0ZSAkX2NyZWF0ZV91cmwgPSAwOwogIHByaXZhdGUgJF9jaGVja19kdXBsaWNhdGVfY29tcGFuaWVzOwogIHByaXZhdGUgJF9tYXhfcmVjb3JkczsKICBwcml2YXRlICRfZG9faGllcmRlZnM7CiAgcHJpdmF0ZSAkX2RvX2hpZXJ2YWxzOwogIHByaXZhdGUgJF90aGVfdXNlcjsKICBwcml2YXRlICRfY2F0ZWdvcnljb2x1bW47CgogIHByaXZhdGUgJF9udW1fY29tcGFuaWVzOwogIHByaXZhdGUgJF9udW1faGllcjsKICBwcml2YXRlICRfbnVtX2NhdGVnb3JpZXM7CiAgcHJpdmF0ZSAkX251bV9maWVsZGRlZnM7CiAgcHJpdmF0ZSAkX251bV9saW5lczsKICBwcml2YXRlICRfbGluZW51bTsKCiAgcHJpdmF0ZSAkX2hpZXJfY2FjaGU7CiAgcHJpdmF0ZSAkX2ZpZWxkZGVmX2NhY2hlOwogIHByaXZhdGUgJF9jYXRlZ29yeV9jYWNoZTsKCiAgcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KCYkbW9kLCRkZWxpbWl0ZXIgPSAnfCcpCiAgewogICAgJHRoaXMtPl9lcnJvcnMgPSBhcnJheSgpOwoKICAgICR0aGlzLT5fZG9fZmllbGRkZWZzID0gMDsKICAgICR0aGlzLT5fZG9fZmllbGR2YWxzID0gMDsKICAgICR0aGlzLT5fdGhlX3VzZXIgPSBudWxsOwogICAgCiAgICAkdGhpcy0+X2RvX2NhdGVnb3J5ZGVmcyA9IDA7CiAgICAkdGhpcy0+X2RvX2NhdGVnb3J5dmFscyA9IDA7CgogICAgJHRoaXMtPl9kb19oaWVyZGVmcyA9IDA7CiAgICAkdGhpcy0+X2RvX2hpZXJ2YWxzID0gMDsKCiAgICAkdGhpcy0+X2RvX2xhdGxvbmdfbG9va3VwID0gMDsKICAgICR0aGlzLT5fY2hlY2tfZHVwbGljYXRlX2NvbXBhbmllcyA9ICdlcnJvcic7CiAgICAkdGhpcy0+X21vZCA9JiAkbW9kOwogICAgJHRoaXMtPl9kZWxpbWl0ZXIgPSAkZGVsaW1pdGVyOwogICAgJHRoaXMtPl9tYXhfcmVjb3JkcyA9IDA7CgogICAgJHRoaXMtPl9udW1fY29tcGFuaWVzID0gMDsKICAgICR0aGlzLT5fbnVtX2NhdGVnb3JpZXMgPSAwOwogICAgJHRoaXMtPl9udW1fZmllbGRkZWZzID0gMDsKICAgICR0aGlzLT5fbnVtX2hpZXIgPSAwOwogICAgJHRoaXMtPl9udW1fbGluZXMgPSAwOwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIGdldF9yZXN1bHRzKCkKICB7CiAgICByZXR1cm4gYXJyYXkoJ251bV9jb21wYW5pZXMnPT4kdGhpcy0+X251bV9jb21wYW5pZXMsCgkJICdudW1fY2F0ZWdvcmllcyc9PiR0aGlzLT5fbnVtX2NhdGVnb3JpZXMsCgkJICdudW1fZmllbGRkZWZzJz0+JHRoaXMtPl9udW1fZmllbGRkZWZzLAoJCSAnbnVtX2hpZXInPT4kdGhpcy0+X251bV9oaWVyLAoJCSAnbnVtX2xpbmVzJz0+JHRoaXMtPl9udW1fbGluZXMpOwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIHNldF91c2VyKCR1aWQpCiAgewogICAgJHRoaXMtPl90aGVfdXNlciA9ICR1aWQ7CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gc2V0X2RlbGltaXRlcigkY2hhcikKICB7CiAgICAkdGhpcy0+X2RlbGltaXRlciA9ICRjaGFyOwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIHNldF9tYXhfY29tcGFuaWVzKCRudW0pCiAgewogICAgJHRoaXMtPl9tYXhfcmVjb3JkcyA9ICRudW07CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gZG9fZmllbGRkZWZzKCRmbGFnID0gdHJ1ZSkKICB7CiAgICAkdGhpcy0+X2RvX2ZpZWxkZGVmcyA9ICRmbGFnOwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIGRvX2ZpZWxkdmFscygkZmxhZyA9IHRydWUpCiAgewogICAgJHRoaXMtPl9kb19maWVsZHZhbHMgPSAkZmxhZzsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBkb19jYXRlZ29yeWRlZnMoJGZsYWcgPSB0cnVlKQogIHsKICAgICR0aGlzLT5fZG9fY2F0ZWdvcnlkZWZzID0gJGZsYWc7CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gZG9fY2F0ZWdvcnl2YWxzKCRmbGFnID0gdHJ1ZSkKICB7CiAgICAkdGhpcy0+X2RvX2NhdGVnb3J5dmFscyA9ICRmbGFnOwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIGRvX2xhdGxvbmdfbG9va3VwKCRmbGFnID0gdHJ1ZSApCiAgewogICAgJHRoaXMtPl9kb19sYXRsb25nX2xvb2t1cCA9ICRmbGFnOwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIGNyZWF0ZV91cmwoJGZsYWcgPSB0cnVlKQogIHsKCSR0aGlzLT5fY3JlYXRlX3VybCA9ICRmbGFnOwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIGNoZWNrX2R1cGxpY2F0ZV9jb21wYW5pZXMoJGZsYWcgPSB0cnVlKQogIHsKCSR0bXAgPSBzdHJ0b2xvd2VyKCRmbGFnKTsKCXN3aXRjaCggJHRtcCApCgkgIHsKCSAgY2FzZSAnZXJyb3InOgoJCS8vIGdlbmVyYXRlIGFuIGVycm9yIG9uIGR1cGxpY2F0ZSBjb21wYW5pZXMKCSAgY2FzZSAnaWdub3JlJzoKCQkvLyBqdXN0IGlnbm9yZSB0aGUgd2hvbGUgcmVjb3JkLCBzaWxlbnRseQoJICBjYXNlICd1cGRhdGUnOgoJCS8vIHVwZGF0ZSB0aGUgY29tcGFueS4KCQkkdGhpcy0+X2NoZWNrX2R1cGxpY2F0ZV9jb21wYW5pZXMgPSAkdG1wOwoJCWJyZWFrOwoJICB9CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gZG9faGllcmFyY2h5dmFscygkZmxhZyA9IHRydWUpCiAgewogICAgJHRoaXMtPl9kb19oaWVydmFscyA9ICRmbGFnOwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIGRvX2hpZXJhcmNoeWRlZnMoJGZsYWcgPSB0cnVlKQogIHsKICAgICR0aGlzLT5fZG9faGllcmRlZnMgPSAkZmxhZzsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBzZXRfY2F0ZWdvcnljb2x1bW4oJHN0ciA9IG51bGwpCiAgewoJJHRoaXMtPl9jYXRlZ29yeWNvbHVtbiA9ICRzdHI7CiAgfQoKICBwcm90ZWN0ZWQgZnVuY3Rpb24gc2V0X2Vycm9yKCRtc2cpCiAgewogICAgJHN0ciA9ICR0aGlzLT5fbW9kLT5MYW5nKCdlcnJvcl9wcmVmaXhfbXNnJywkdGhpcy0+X2xpbmVudW0sJG1zZyk7CiAgICAkdGhpcy0+X2Vycm9yc1tdID0gJHN0cjsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfZXJyb3JzKCkKICB7CiAgICByZXR1cm4gJHRoaXMtPl9lcnJvcnM7CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gY2xlYXJfZXJyb3JzKCkKICB7CiAgICAkdGhpcy0+X2Vycm9ycyA9IGFycmF5KCk7CiAgfQoKICBwcm90ZWN0ZWQgZnVuY3Rpb24gZ2V0X2ZpZWxkZGVmX2lkKCRuYW1lLCRpbnNlcnQgPSBmYWxzZSkKICB7CiAgICBnbG9iYWwgJGdDbXM7CiAgICAkZGIgPSYgJGdDbXMtPkdldERiKCk7CgogICAgaWYoICFpc19hcnJheSgkdGhpcy0+X2ZpZWxkZGVmX2NhY2hlKSApCiAgICAgIHsKCQkkcXVlcnkgPSAnU0VMRUNUIGlkLG5hbWUgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfZmllbGRkZWZzIE9SREVSIEJZIGl0ZW1fb3JkZXInOwoJCSR0bXAgPSAkZGItPkdldEFycmF5KCRxdWVyeSk7CgkJaWYoIGlzX2FycmF5KCR0bXApICkKCQkgIHsKCQkJJHRoaXMtPl9maWVsZGRlZl9jYWNoZSA9IGNnZV9hcnJheTo6dG9faGFzaCgkdG1wLCduYW1lJyk7CgkJICB9CiAgICAgIH0KCiAgICBpZiggaXNfYXJyYXkoJHRoaXMtPl9maWVsZGRlZl9jYWNoZSkgJiYgaXNzZXQoJHRoaXMtPl9maWVsZGRlZl9jYWNoZVskbmFtZV0pICkKICAgICAgewoJCXJldHVybiAkdGhpcy0+X2ZpZWxkZGVmX2NhY2hlWyRuYW1lXVsnaWQnXTsKICAgICAgfQoKCWlmKCAkaW5zZXJ0ICkKCSAgewoJCS8vIGluc2VydCB0aGF0IHJlY29yZAoJCSRpdGVtX29yZGVyID0gJGRiLT5HZXRPbmUoJ1NFTEVDVCBtYXgoaXRlbV9vcmRlcikgKyAxIEZST00gJyAuIGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfY29tcGRpcl9maWVsZGRlZnMnKTsKCQkkcXVlcnkgPSAiSU5TRVJUIElOVE8gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9jb21wZGlyX2ZpZWxkZGVmcwogICAgICAgICAgICAgKG5hbWUsIHR5cGUsIG1heF9sZW5ndGgsIGFkbWluX29ubHksIHB1YmxpYywgaXRlbV9vcmRlciwgY3JlYXRlX2RhdGUsIG1vZGlmaWVkX2RhdGUpCiAgICAgICAgICAgIFZBTFVFUyAoPyw/LD8sPyw/LD8sTk9XKCksTk9XKCkpIjsKCQkkZGJyID0gJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkbmFtZSwndGV4dGJveCcsMjU1LDAsMSwkaXRlbV9vcmRlcikpOwoJCWlmKCAhJGRiciApCgkJICB7CgkJCWRlYnVnX2Rpc3BsYXkoJGRiLT5zcWwpOwoJCQlkZWJ1Z19kaXNwbGF5KCRkYi0+RXJyb3JNc2coKSk7CgkJCWRpZSgpOwoJCSAgfQoJCQoJCSRmZF9pZCA9ICRkYi0+SW5zZXJ0X0lEKCk7CgkJJHRoaXMtPl9maWVsZGRlZl9jYWNoZVskbmFtZV1bJ2lkJ10gPSAkZmRfaWQ7CgkJJHRoaXMtPl9udW1fZmllbGRkZWZzKys7CgkJcmV0dXJuICRmZF9pZDsKCSAgfQoKICAgIHJldHVybiBGQUxTRTsKICB9CgogIAogIHByb3RlY3RlZCBmdW5jdGlvbiBnZXRfaGllcl9pZCgkbG9uZ19uYW1lLCRyZWZyZXNoX2NhY2hlID0gZmFsc2UpCiAgewogICAgZ2xvYmFsICRnQ21zOwogICAgJGRiID0mICRnQ21zLT5HZXREYigpOwoKICAgIGlmKCAhaXNfYXJyYXkoJHRoaXMtPl9oaWVyX2NhY2hlKSB8fCAkcmVmcmVzaF9jYWNoZSA9PSB0cnVlICkKICAgIHsKICAgICAgJHF1ZXJ5ID0gJ1NFTEVDVCAqIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9jb21wZGlyX2hpZXIgT1JERVIgQlkgaGllcmFyY2h5JzsKICAgICAgJHRtcCA9ICRkYi0+R2V0QXJyYXkoJHF1ZXJ5KTsKICAgICAgaWYoIGlzX2FycmF5KCR0bXApICkKCXsKCSAgJHRtcDIgPSBjZ2VfYXJyYXk6OnRvX2hhc2goJHRtcCwnbG9uZ19uYW1lJyk7CgkgICR0aGlzLT5faGllcl9jYWNoZSA9ICR0bXAyOwoJfQogICAgICBlbHNlCgl7CgkgIHJldHVybiBGQUxTRTsKCX0KICAgIH0KCiAgICBpZiggIWlzc2V0KCR0aGlzLT5faGllcl9jYWNoZVskbG9uZ19uYW1lXSkgKSByZXR1cm4gRkFMU0U7CiAgICByZXR1cm4gJHRoaXMtPl9oaWVyX2NhY2hlWyRsb25nX25hbWVdWydpZCddOwogIH0KCgogIHByb3RlY3RlZCBmdW5jdGlvbiBpbnNlcnRfaGllcigkbG9uZ19uYW1lKQogIHsKICAgIGlmKCBlbXB0eSgkbG9uZ19uYW1lKSApIHJldHVybjsKCiAgICBnbG9iYWwgJGdDbXM7CiAgICAkZGIgPSYgJGdDbXMtPkdldERiKCk7CiAgICAkcXVlcnkgPSAnSU5TRVJUIElOVE8gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9jb21wZGlyX2hpZXIKICAgICAgICAgICAgIChuYW1lLHBhcmVudF9pZCxsb25nX25hbWUpIFZBTFVFUyAoPyw/LD8pJzsKICAgICRwb3MgPSBjZ2VfYXJyYXk6OnNtYXJ0X2V4cGxvZGUoJGxvbmdfbmFtZSwnIHwgJyk7CiAgICAkdG1wID0gYXJyYXkoKTsKICAgICRwYXJlbnQgPSAtMTsKICAgIGZvciggJGkgPSAwOyAkaSA8IGNvdW50KCRwb3MpOyAkaSsrICkKICAgICAgewoJJHRtcFtdID0gJHBvc1skaV07CgkkdG1wMiA9IGltcGxvZGUoJyB8ICcsJHRtcCk7CgkkbmFtZSA9IHRyaW0oJHBvc1skaV0pOwoJJHRoaXNfaWQgPSAkdGhpcy0+Z2V0X2hpZXJfaWQoJHRtcDIsdHJ1ZSk7CglpZiggJHRoaXNfaWQgPT09IEZBTFNFICYmICRuYW1lICE9ICcnKQoJICB7CgkgICAgLy8gZ290dGEgaW5zZXJ0IGl0LgoJICAgICRkYnIgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KCRuYW1lLCRwYXJlbnQsJHRtcDIpKTsKCSAgICAkdGhpcy0+X251bV9oaWVyKys7CgkgIH0KCSRwYXJlbnQgPSAkdGhpcy0+Z2V0X2hpZXJfaWQoJHRtcDIsdHJ1ZSk7CiAgICAgIH0KICB9CgoKICBwcm90ZWN0ZWQgZnVuY3Rpb24gZ2V0X2NhdGVnb3J5X2lkKCRuYW1lLCRpbnNlcnQgPSBmYWxzZSkKICB7CiAgICBnbG9iYWwgJGdDbXM7CiAgICAkZGIgPSYgJGdDbXMtPkdldERiKCk7CgogICAgaWYoICFpc19hcnJheSgkdGhpcy0+X2NhdGVnb3J5X2NhY2hlKSApCiAgICAgIHsKCQkkcXVlcnkgPSAnU0VMRUNUIGlkLG5hbWUgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfY2F0ZWdvcmllcyc7CgkJJHRtcCA9ICRkYi0+R2V0QXJyYXkoJHF1ZXJ5KTsKCQlpZiggaXNfYXJyYXkoJHRtcCkgKQoJCSAgewoJCQkkdGhpcy0+X2NhdGVnb3J5X2NhY2hlID0gY2dlX2FycmF5Ojp0b19oYXNoKCR0bXAsJ25hbWUnKTsKCQkgIH0KICAgICAgfQoKICAgIGlmKCBpc19hcnJheSgkdGhpcy0+X2NhdGVnb3J5X2NhY2hlKSAmJiBpc3NldCgkdGhpcy0+X2NhdGVnb3J5X2NhY2hlWyRuYW1lXSkgKQogICAgICB7CgkJcmV0dXJuICR0aGlzLT5fY2F0ZWdvcnlfY2FjaGVbJG5hbWVdWydpZCddOwogICAgICB9CgoJaWYoICRpbnNlcnQgKQoJICB7CgkJJHF1ZXJ5ID0gJ0lOU0VSVCBJTlRPICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfY29tcGRpcl9jYXRlZ29yaWVzIAogICAgICAgICAgICAgICAgICAobmFtZSxjcmVhdGVfZGF0ZSxtb2RpZmllZF9kYXRlKQogICAgICAgICAgICAgICAgICBWQUxVRVMgKD8sTk9XKCksTk9XKCkpJzsKCQkkZGJyID0gJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkbmFtZSkpOwoJCWlmKCAhJGRiciApCgkJICB7CgkJCWRlYnVnX2Rpc3BsYXkoJGRiLT5zcWwpOwoJCQlkZWJ1Z19kaXNwbGF5KCRkYi0+RXJyb3JNc2coKSk7CgkJCWRpZSgpOwoJCSAgfQoJCSRuZXdfaWQgPSAkZGItPkluc2VydF9JRCgpOwoKCQkkdGhpcy0+X2NhdGVnb3J5X2NhY2hlWyRuYW1lXSA9IGFycmF5KCdpZCc9PiRuZXdfaWQsJ25hbWUnPT4kbmFtZSk7CgkJJHRoaXMtPl9udW1fY2F0ZWdvcmllcysrOwoJCXJldHVybiAkbmV3X2lkOwoJICB9CgogICAgcmV0dXJuIEZBTFNFOwogIH0KCgogIHByaXZhdGUgZnVuY3Rpb24gdW5wcm9jZXNzX2RhdGEoJGRhdGEpCiAgewogICAgLy8gc3RyaXAgcXVvdGVzCiAgICAkZGF0YSA9IHRyaW0oJGRhdGEsJyInKTsKICAgIAogICAgLy8gbmV3bGluZXMKICAgICRkYXRhID0gc3RyX3JlcGxhY2UoIl5eIiwiXG4iLCRkYXRhKTsKICAgICRkYXRhID0gc3RyX3JlcGxhY2UoIi0lJS0iLCR0aGlzLT5fZGVsaW1pdGVyLCRkYXRhKTsKICAgIAogICAgcmV0dXJuICRkYXRhOwogIH0KCgogIHByaXZhdGUgZnVuY3Rpb24gcHJvY2Vzc19maWVsZGRlZigkbGluZSwkcnVsZSkKICB7CiAgICBnbG9iYWwgJGdDbXM7CiAgICAkZGIgPSYgJGdDbXMtPkdldERiKCk7CgogICAgLy8gYnJlYWsgdGhlIGxpbmUgaW50byBmaWVsZHMgYWdhaW4KICAgICRmaWVsZHMgPSBjZ2VfYXJyYXk6OnNtYXJ0X2V4cGxvZGUoJGxpbmUsJHRoaXMtPl9kZWxpbWl0ZXIpOwoKICAgIC8vIGJ1aWxkIGEgbmV3IHJlY29yZAogICAgJHJlY29yZCA9IGFycmF5KCk7CiAgICAkcmVjb3JkWydkcm9wZG93bl9kYXRhJ10gPSAnJzsKICAgIGZvciggJGZsZCA9IDE7ICRmbGQgPCBjb3VudCgkcnVsZVsnZmxkcyddKTsgJGZsZCsrICkKICAgICAgewoJCWlmKCAhaXNzZXQoJGZpZWxkc1skZmxkXSkgKSBjb250aW51ZTsKCQkkZm5hbWUgPSAkcnVsZVsnZmxkcyddWyRmbGRdOwoJCSRyZWNvcmRbJGZuYW1lXSA9ICR0aGlzLT51bnByb2Nlc3NfZGF0YSgkZmllbGRzWyRmbGRdKTsKICAgICAgfQoKICAgIC8vIGNoZWNrIGZvciBkdXBsaWNhdGUKICAgICR0bXAgPSAkdGhpcy0+Z2V0X2ZpZWxkZGVmX2lkKCRyZWNvcmRbJ25hbWUnXSk7CiAgICBpZiggJHRtcCApIAogICAgICB7CgkJJHRoaXMtPnNldF9lcnJvcigkdGhpcy0+X21vZC0+TGFuZygnZXJyb3JfZHVwbGljYXRlX2ZpZWxkZGVmJykpOwoJCXJldHVybiBGQUxTRTsKICAgICAgfQoKICAgIC8vIGluc2VydCB0aGF0IHJlY29yZAogICAgJG5vdyA9ICRkYi0+RGJUaW1lU3RhbXAodGltZSgpKTsKICAgICRpdGVtX29yZGVyID0gJGRiLT5HZXRPbmUoJ1NFTEVDVCBtYXgoaXRlbV9vcmRlcikgKyAxIEZST00gJyAuIGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfY29tcGRpcl9maWVsZGRlZnMnKTsKICAgICRxdWVyeSA9ICJJTlNFUlQgSU5UTyAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2NvbXBkaXJfZmllbGRkZWZzCiAgICAgICAgICAgICAobmFtZSwgdHlwZSwgbWF4X2xlbmd0aCwgYWRtaW5fb25seSwgcHVibGljLCBkcm9wZG93bl9kYXRhLCBpdGVtX29yZGVyLCBjcmVhdGVfZGF0ZSwgbW9kaWZpZWRfZGF0ZSkKICAgICAgICAgICAgVkFMVUVTICg/LD8sPyw/LD8sPyw/LCRub3csJG5vdykiOwogICAgJGRiciA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkoJHJlY29yZFsnbmFtZSddLCRyZWNvcmRbJ3R5cGUnXSwkcmVjb3JkWydtYXhfbGVuZ3RoJ10sCgkJCQkgICAgICRyZWNvcmRbJ2FkbWluX29ubHknXSwkcmVjb3JkWydwdWJsaWMnXSwKCQkJCSAgICAgJHJlY29yZFsnZHJvcGRvd25fZGF0YSddLCRpdGVtX29yZGVyKSk7CgogICAgLy8gdHJhcCB0aGUgZXJyb3IuCiAgICBpZiggISRkYnIgKQogICAgICB7CgkJJHRoaXMtPnNldF9lcnJvcigkdGhpcy0+X21vZC0+TGFuZygnZXJyb3JfaW5zZXJ0X2ZpZWxkZGVmJykpOwoJCXJldHVybiBGQUxTRTsKICAgICAgfQoKCSRmZF9pZCA9ICRkYi0+SW5zZXJ0X0lEKCk7CglpZiggIWlzX2FycmF5KCAkdGhpcy0+X2ZpZWxkZGVmX2NhY2hlICkgKQoJICB7CgkJJHRoaXMtPl9maWVsZGRlZl9jYWNoZSA9IGFycmF5KCk7CgkgIH0KCSR0aGlzLT5fZmllbGRkZWZfY2FjaGVbJHJlY29yZFsnbmFtZSddXSA9IGFycmF5KCdpZCc9PiRmZF9pZCk7CgkkdGhpcy0+X251bV9maWVsZGRlZnMrKzsKICAgIHJldHVybiBUUlVFOwogIH0KCiAgCiAgcHJpdmF0ZSBmdW5jdGlvbiBwcm9jZXNzX2hpZXJhcmNoeSgkbGluZSwkcnVsZSkKICB7CiAgICBnbG9iYWwgJGdDbXM7CiAgICAkZGIgPSYgJGdDbXMtPkdldERiKCk7CiAgICAkZmllbGRzID0gZXhwbG9kZSgkdGhpcy0+X2RlbGltaXRlciwkbGluZSk7CgogICAgJHJlY29yZCA9IGFycmF5KCk7CiAgICBmb3IoICRmbGQgPSAxOyAkZmxkIDwgY291bnQoJHJ1bGVbJ2ZsZHMnXSk7ICRmbGQrKyApCiAgICAgIHsKCQlpZiggIWlzc2V0KCRmaWVsZHNbJGZsZF0pICkgY29udGludWU7CgkJJGZuYW1lID0gJHJ1bGVbJ2ZsZHMnXVskZmxkXTsKCQkkcmVjb3JkWyRmbmFtZV0gPSAkdGhpcy0+dW5wcm9jZXNzX2RhdGEoJGZpZWxkc1skZmxkXSk7CiAgICAgIH0KCiAgICAvLyBjaGVjayBmb3IgZHVwbGljYXRlCiAgICAkdG1wID0gJHRoaXMtPmdldF9oaWVyX2lkKCRyZWNvcmRbJ2xvbmdfbmFtZSddKTsKICAgIGlmKCAkdG1wICkKICAgICAgewoJJHRoaXMtPnNldF9lcnJvcigkdGhpcy0+X21vZC0+TGFuZygnZXJyb3JfZHVwbGljYXRlX2hpZXJhcmNoeScsJHJlY29yZFsnbG9uZ19uYW1lJ10pKTsKCXJldHVybiBGQUxTRTsKICAgICAgfQoKICAgIC8vIGluc2VydCB0aGUgcmVjb3JkCiAgICAkdG1wID0gJHRoaXMtPmluc2VydF9oaWVyKCRyZWNvcmRbJ2xvbmdfbmFtZSddKTsKICAgIGlmKCAkdG1wICkKICAgICAgewoJJHRoaXMtPnNldF9lcnJvcigkdGhpcy0+X21vZC0+TGFuZygnZXJyb3JfaW5zZXJ0X2hpZXJhcmNoeScsJHJlY29yZFsnbG9uZ19uYW1lJ10pKTsKCXJldHVybiBGQUxTRTsKICAgICAgfQoKICAgIHJldHVybiBUUlVFOwogIH0KCgogIHByaXZhdGUgZnVuY3Rpb24gcHJvY2Vzc19jYXRlZ29yeSgkbGluZSwkcnVsZSkKICB7CiAgICBnbG9iYWwgJGdDbXM7CiAgICAkZGIgPSYgJGdDbXMtPkdldERiKCk7CgogICAgLy8gYnJlYWsgdGhlIGxpbmUgaW50byBmaWVsZHMgYWdhaW4KICAgICRmaWVsZHMgPSBleHBsb2RlKCR0aGlzLT5fZGVsaW1pdGVyLCRsaW5lKTsKCiAgICAvLyBidWlsZCBhIG5ldyByZWNvcmQKICAgICRyZWNvcmQgPSBhcnJheSgpOwogICAgZm9yKCAkZmxkID0gMTsgJGZsZCA8IGNvdW50KCRydWxlWydmbGRzJ10pOyAkZmxkKysgKQogICAgICB7CglpZiggIWlzc2V0KCRmaWVsZHNbJGZsZF0pICkgY29udGludWU7CgkkZm5hbWUgPSAkcnVsZVsnZmxkcyddWyRmbGRdOwoJJHJlY29yZFskZm5hbWVdID0gJHRoaXMtPnVucHJvY2Vzc19kYXRhKCRmaWVsZHNbJGZsZF0pOwogICAgICB9CgogICAgLy8gY2hlY2sgZm9yIGR1cGxpY2F0ZQogICAgJHRtcCA9ICR0aGlzLT5nZXRfY2F0ZWdvcnlfaWQoJHJlY29yZFsnbmFtZSddKTsKICAgIGlmKCAkdG1wICkgCiAgICAgIHsKCQkkdGhpcy0+c2V0X2Vycm9yKCR0aGlzLT5fbW9kLT5MYW5nKCdlcnJvcl9kdXBsaWNhdGVfY2F0ZWdvcnknKSk7CgkJcmV0dXJuIEZBTFNFOwogICAgICB9CiAgCiAgICAvLyBpbnNlcnQgdGhhdCByZWNvcmQKICAgICRub3cgPSAkZGItPkRiVGltZVN0YW1wKHRpbWUoKSk7CiAgICAkcXVlcnkgPSAiSU5TRVJUIElOVE8gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9jb21wZGlyX2NhdGVnb3JpZXMgKG5hbWUsY3JlYXRlX2RhdGUsbW9kaWZpZWRfZGF0ZSkKICAgICAgICAgICAgIFZBTFVFUyAoPywkbm93LCRub3cpIjsKICAgICRkYnIgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KCRyZWNvcmRbJ25hbWUnXSkpOwogIAogICAgLy8gdHJhcCB0aGUgZXJyb3IuCiAgICBpZiggISRkYnIgKQogICAgICB7CgkJJHRoaXMtPnNldF9lcnJvcigkdGhpcy0+X21vZC0+TGFuZygnZXJyb3JfaW5zZXJ0X2NhdGVnb3J5JykpOwoJCXJldHVybiBGQUxTRTsKICAgICAgfQoKCSRjYXRfaWQgPSAkZGItPkluc2VydF9JRCgpOwoJaWYoIGlzX2FycmF5KCR0aGlzLT5fY2F0ZWdvcnlfY2FjaGUpICkKCSAgewoJCSR0aGlzLT5fY2F0ZWdvcnlfY2FjaGUgPSBhcnJheSgpOwoJICB9CgkkdGhpcy0+X2NhdGVnb3J5X2NhY2hlWyRyZWNvcmRbJ25hbWUnXV0gPSBhcnJheSgnaWQnPT4kY2F0X2lkKTsKCSR0aGlzLT5fbnVtX2NhdGVnb3JpZXMrKzsKICAgIHJldHVybiBUUlVFOwogIH0KCiAgCiAgcHJpdmF0ZSBmdW5jdGlvbiBwcm9jZXNzX2NvbXBhbnkoJGZpZWxkcywkcnVsZSkKICB7CiAgICAkZGIgPSBjbXNtcygpLT5HZXREYigpOwogICAgJHVzZXJpZCA9ICR0aGlzLT5fdGhlX3VzZXI7CgogICAgLy8gYnVpbGQgYSBuZXcgcmVjb3JkCiAgICAkcmVjb3JkID0gYXJyYXkoKTsKICAgICRyZWNvcmRbJ2NvbnRhY3RfZW1haWwnXSA9ICcnOwoJJHJlY29yZFsndXJsJ10gPSAnJzsKICAgICRyZWNvcmRbJ2RldGFpbHMnXSA9ICcnOwogICAgJHJlY29yZFsnc3RhdHVzJ10gPSAncHVibGlzaGVkJzsKICAgICRyZWNvcmRbJ2xhdGl0dWRlJ10gPSAnJzsKICAgICRyZWNvcmRbJ2xvbmdpdHVkZSddID0gJyc7CiAgICAkcmVjb3JkWydoaWVyX2lkJ10gPSBudWxsOwoJJHJlY29yZFsndGVsZXBob25lJ10gPSAnJzsKCSRyZWNvcmRbJ3dlYnNpdGUnXSA9ICcnOwoJJHJlY29yZFsnZmF4J10gPSAnJzsKCiAgICAkZmllbGR2YWxzID0gYXJyYXkoKTsKICAgICRjYXRlZ29yaWVzID0gYXJyYXkoKTsKICAgIGZvciggJGZsZCA9IDE7ICRmbGQgPCBjb3VudCgkcnVsZVsnZmxkcyddKTsgJGZsZCsrICkKICAgICAgewoJCWlmKCAhaXNzZXQoJGZpZWxkc1skZmxkXSkgKSBjb250aW51ZTsKCQkkZm5hbWUgPSAkcnVsZVsnZmxkcyddWyRmbGRdOwoJCQoJCS8vIHByaW1hcnkgY29sdW1uIGhhbmRsaW5nLgoJCWlmKCBzdGFydHN3aXRoKHN0cnRvdXBwZXIoJGZuYW1lKSwnRklFTEQ6JykgKQoJCSAgewoJCQkkZmllbGR2YWxzW3N1YnN0cigkZm5hbWUsNildID0gJGZpZWxkc1skZmxkXTsKCQkgIH0KCQllbHNlIGlmKCBzdGFydHN3aXRoKHN0cnRvdXBwZXIoJGZuYW1lKSwnQ0FUOicpICkKCQkgIHsKCQkJJGNhdGVnb3JpZXNbc3Vic3RyKCRmbmFtZSw0KV0gPSAkZmllbGRzWyRmbGRdOwoJCSAgfQoJCWVsc2UgaWYoICRmbmFtZSA9PSAnaGllcmFyY2h5JyAmJiAkdGhpcy0+X2RvX2hpZXJ2YWxzKQoJCSAgewoJCQkkdG1wID0gJHRoaXMtPnVucHJvY2Vzc19kYXRhKCRmaWVsZHNbJGZsZF0pOwoJCQkkaGllcl9pZCA9ICR0aGlzLT5nZXRfaGllcl9pZCgkdG1wKTsKCQkJaWYoICRoaWVyX2lkID09PSBGQUxTRSAmJiAkdGhpcy0+X2RvX2hpZXJ2YWxzICkKCQkJICB7CgkJCQkkdGhpcy0+aW5zZXJ0X2hpZXIoJHRtcCk7CgkJCSAgfQoJCQkkaGllcl9pZCA9ICR0aGlzLT5nZXRfaGllcl9pZCgkdG1wKTsKCQkJaWYoICRoaWVyX2lkICE9PSBGQUxTRSApCgkJCSAgJHJlY29yZFsnaGllcl9pZCddID0gJGhpZXJfaWQ7CgkJICB9CgkJZWxzZSAKCQkgIHsKCQkJJHJlY29yZFskZm5hbWVdID0gJHRoaXMtPnVucHJvY2Vzc19kYXRhKCRmaWVsZHNbJGZsZF0pOwoJCSAgfQoKCQkvLyBhZGRpdGlvbmFsIGhhbmRsaW5nIG9mIHRoaXMgY29sdW1uCgkJaWYoICR0aGlzLT5fY2F0ZWdvcnljb2x1bW4gIT0gJycgJiYgJGZuYW1lID09ICR0aGlzLT5fY2F0ZWdvcnljb2x1bW4gKQoJCSAgewoJCQkkY2F0cyA9IGNnZV9hcnJheTo6c21hcnRfZXhwbG9kZSgkZmllbGRzWyRmbGRdLCcsJyk7CgkJCWZvcmVhY2goICRjYXRzIGFzICRvbmUgKQoJCQkgIHsKCQkJCSRjYXRlZ29yaWVzWyRvbmVdID0gMTsKCQkJICB9CgkJICB9CgogICAgICB9IC8vZm9yCgogIAogICAgLy8gZGF0YSB2YWxpZGF0aW9uCiAgICBpZiggIWlzc2V0KCRyZWNvcmRbJ2NvbXBhbnlfbmFtZSddKSB8fCBlbXB0eSgkcmVjb3JkWydjb21wYW55X25hbWUnXSkgKQogICAgICB7CgkJJHRoaXMtPnNldF9lcnJvcigkdGhpcy0+X21vZC0+TGFuZygnZXJyb3JfaW1wb3J0X2JhZHZhbHVlJywnY29tcGFueV9uYW1lJykpOwoJCXJldHVybiBGQUxTRTsKICAgICAgfQoKICAgIC8vIGRvIG9wdGlvbmFsIGxhdC9sb25nIGxvb2t1cAogICAgJHJlY29yZFsnbGF0aXR1ZGUnXSA9ICcnOwogICAgJHJlY29yZFsnbG9uZ2l0dWRlJ10gPSAnJzsKICAgIGlmKCAkdGhpcy0+X2RvX2xhdGxvbmdfbG9va3VwICkKICAgICAgewoJCWlmKCBlbXB0eSgkcmVjb3JkWydsYXRpdHVkZSddKSB8fCBlbXB0eSgkcmVjb3JkWydsb25naXR1ZGUnXSkgJiYgIWVtcHR5KCRyZWNvcmRbJ2FkZHJlc3MnXSkgKQoJCSAgewoJCQkkY2dnbSA9IGNnZV91dGlsczo6Z2V0X21vZHVsZSgnQ0dHb29nbGVNYXBzJyk7CgkJCSRkYXRhID0gJGNnZ20tPkdldENvb3Jkc0Zyb21BZGRyZXNzKCRyZWNvcmRbJ2FkZHJlc3MnXSk7CgkJCWlmKCAkZGF0YSApCgkJCSAgewoJCQkJJHJlY29yZFsnbGF0aXR1ZGUnXSA9ICRkYXRhWydsYXQnXTsKCQkJCSRyZWNvcmRbJ2xvbmdpdHVkZSddID0gJGRhdGFbJ2xvbiddOwoJCQkgIH0KCQkgIH0KICAgICAgfQoKCS8vIGhhbmRsZSB1cmwKCWlmKCAkcmVjb3JkWyd1cmwnXSA9PSAnJyAmJiAkdGhpcy0+X2NyZWF0ZV91cmwgKQoJICB7CgkJJHJlY29yZFsndXJsJ10gPSBjZF91dGlsczo6Z2VuZXJhdGVfdXJsKCRyZWNvcmRbJ2NvbXBhbnlfbmFtZSddKTsKCSAgfQoJaWYoICRyZWNvcmRbJ3VybCddICE9ICcnICkKCSAgewoJCXdoaWxlKCAhY2RfdXRpbHM6OnZhbGlkYXRlX3VybCgkcmVjb3JkWyd1cmwnXSxUUlVFKSApCgkJICB7CgkJCSRyZWNvcmRbJ3VybCddID0gY2RfdXRpbHM6OmdlbmVyYXRlX3VybCgkcmVjb3JkWydjb21wYW55X25hbWUnXSk7CgkJICB9CgkgIH0KCQogICAgLy8gY2hlY2sgZm9yIGR1cGxpY2F0ZT8KCSRxdWVyeSA9ICdTRUxFQ1QgaWQgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfY29tcGFuaWVzIFdIRVJFIGNvbXBhbnlfbmFtZSA9ID8nOwoJJGVpZCA9ICRkYi0+R2V0T25lKCRxdWVyeSxhcnJheSgkcmVjb3JkWydjb21wYW55X25hbWUnXSkpOwoJaWYoICRlaWQgKSAKCSAgewoJCXN3aXRjaCggJHRoaXMtPl9jaGVja19kdXBsaWNhdGVfY29tcGFuaWVzICkKCQkgIHsKCQkgIGNhc2UgJ2Vycm9yJzoKCQkJJHRoaXMtPnNldF9lcnJvcigkdGhpcy0+X21vZC0+TGFuZygnZXJyb3JfZHVwbGljYXRlX2NvbXBhbnknLCRyZWNvcmRbJ2NvbXBhbnlfbmFtZSddKSk7CgkJCXJldHVybiBGQUxTRTsKCQkgIGNhc2UgJ2lnbm9yZSc6CgkJCXJldHVybiBGQUxTRTsKCQkgIGNhc2UgJ3VwZGF0ZSc6CgkJCS8vIG92ZXJ3cml0aW5nLi4uIGtlZXAgZ29pbmcuCgkJCWJyZWFrOwoJCSAgfQoJICB9CiAgCiAgICAvLyBpbnNlcnQgdGhhdCByZWNvcmQKICAgICRub3cgPSAkZGItPkRiVGltZVN0YW1wKHRpbWUoKSk7CgkkZGJyID0gVFJVRTsKCWlmKCAkZWlkICkKCSAgewoJCSRxdWVyeSA9ICdVUERBVEUgJy5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9jb21wZGlyX2NvbXBhbmllcyAKICAgICAgICAgICAgICAgICAgU0VUIHVybCA9ID8sIGFkZHJlc3MgPSA/LCB0ZWxlcGhvbmUgPSA/LCBmYXggPSA/LCBjb250YWN0X2VtYWlsID0gPywgd2Vic2l0ZSA9ID8sIGRldGFpbHMgPSA/LCBzdGF0dXMgPSA/LCBsYXRpdHVkZSA9ID8sCiAgICAgICAgICAgICAgICAgICAgICBsb25naXR1ZGUgPSA/LCBvd25lcl9pZCA9ID8sIGhpZXJfaWQgPSA/LCBtb2RpZmllZF9kYXRlID0gPyBXSEVSRSBpZCA9ID8iOwoJCSRkYnIgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KCRyZWNvcmRbJ3VybCddLCRyZWNvcmRbJ2FkZHJlc3MnXSwkcmVjb3JkWyd0ZWxlcGhvbmUnXSwkcmVjb3JkWydmYXgnXSwKCQkJCQkJCQkJCSAkcmVjb3JkWydjb250YWN0X2VtYWlsJ10sJHJlY29yZFsnd2Vic2l0ZSddLCRyZWNvcmRbJ2RldGFpbHMnXSwkcmVjb3JkWydzdGF0dXMnXSwKCQkJCQkJCQkJCSAkcmVjb3JkWydsYXRpdHVkZSddLCRyZWNvcmRbJ2xvbmdpdHVkZSddLAoJCQkJCQkJCQkJICR1c2VyaWQsJHJlY29yZFsnaGllcl9pZCddLCRub3csJGVpZCkpOwoKCQlpZiggISRkYnIgKSB7CgkJICAkdGhpcy0+c2V0X2Vycm9yKCR0aGlzLT5fbW9kLT5MYW5nKCdlcnJvcl91cGRhdGVfY29tcGFueScpKTsKCQkgIHJldHVybiBGQUxTRTsKCQl9CgoJCSRxdWVyeSA9ICdERUxFVEUgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfZmllbGR2YWxzIFdIRVJFIGNvbXBhbnlfaWQgPSA/JzsKCQkkZGJyID0gJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkZWlkKSk7CgoJCSRxdWVyeSA9ICdERUxFVEUgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfY29tcGFueV9jYXRlZ29yaWVzIFdIRVJFIGNvbXBhbnlfaWQgPSA/JzsKCQkkZGJyID0gJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkZWlkKSk7CgoJCSRjb21wYW55X2lkID0gJGVpZDsKCSAgfQoJZWxzZQoJICB7CgkJJHF1ZXJ5ID0gICJJTlNFUlQgSU5UTyAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2NvbXBkaXJfY29tcGFuaWVzIAogICAgICAgICAgICAgICAgICAgKGNvbXBhbnlfbmFtZSx1cmwsYWRkcmVzcyx0ZWxlcGhvbmUsZmF4LGNvbnRhY3RfZW1haWwsd2Vic2l0ZSxkZXRhaWxzLHN0YXR1cyxsYXRpdHVkZSxsb25naXR1ZGUsCiAgICAgICAgICAgICAgICAgICBvd25lcl9pZCwgaGllcl9pZCxjcmVhdGVfZGF0ZSwgbW9kaWZpZWRfZGF0ZSkKICAgICAgICAgICAgICAgICAgIFZBTFVFUyAoPyw/LD8sPyw/LD8sPyw/LD8sPyw/LD8sPywkbm93LCRub3cpIjsKCQkkZGJyID0gJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkcmVjb3JkWydjb21wYW55X25hbWUnXSwkcmVjb3JkWyd1cmwnXSwkcmVjb3JkWydhZGRyZXNzJ10sCgkJCQkJCQkJCQkgJHJlY29yZFsndGVsZXBob25lJ10sJHJlY29yZFsnZmF4J10sCgkJCQkJCQkJCQkgJHJlY29yZFsnY29udGFjdF9lbWFpbCddLCRyZWNvcmRbJ3dlYnNpdGUnXSwKCQkJCQkJCQkJCSAkcmVjb3JkWydkZXRhaWxzJ10sJHJlY29yZFsnc3RhdHVzJ10sCgkJCQkJCQkJCQkgJHJlY29yZFsnbGF0aXR1ZGUnXSwkcmVjb3JkWydsb25naXR1ZGUnXSwKCQkJCQkJCQkJCSAkdXNlcmlkLCRyZWNvcmRbJ2hpZXJfaWQnXSkpOwoJCWlmKCAhJGRiciApIHsKCQkgICR0aGlzLT5zZXRfZXJyb3IoJHRoaXMtPl9tb2QtPkxhbmcoJ2Vycm9yX2luc2VydF9jb21wYW55JykpOwoJCSAgcmV0dXJuIEZBTFNFOwoJCX0KCQkkY29tcGFueV9pZCA9ICRkYi0+SW5zZXJ0X0lEKCk7CgkgIH0KCgkvLyBpbnNlcnQgZmllbGR2YWxzCglpZiggY291bnQoJGZpZWxkdmFscykgJiYgJHRoaXMtPl9kb19maWVsZHZhbHMgKQoJICB7CgkJZm9yZWFjaCggJGZpZWxkdmFscyBhcyAkbmFtZSA9PiAkdmFsdWUgKQoJCSAgewoJCQlpZiggZW1wdHkoJHZhbHVlKSApIGNvbnRpbnVlOwoJCQkkZmllbGRkZWZfaWQgPSAkdGhpcy0+Z2V0X2ZpZWxkZGVmX2lkKCRuYW1lLCR0aGlzLT5fZG9fZmllbGRkZWZzKTsKCQkJaWYoICRmaWVsZGRlZl9pZCA9PT0gRkFMU0UgKSBjb250aW51ZTsKCQkJCgkJCSRxdWVyeSA9ICdJTlNFUlQgSU5UTyAnLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2NvbXBkaXJfZmllbGR2YWxzIAogICAgICAgICAgICAgICAgICAgICAoY29tcGFueV9pZCwgZmllbGRkZWZfaWQsIHZhbHVlLCBjcmVhdGVfZGF0ZSwgbW9kaWZpZWRfZGF0ZSkKICAgICAgICAgICAgICAgICAgICBWQUxVRVMgKD8sPyw/LCRub3csJG5vdykiOwoJCQkkZGJyID0gJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkY29tcGFueV9pZCwkZmllbGRkZWZfaWQsJHZhbHVlKSk7CgkJICB9CgkgIH0KICAKCS8vIGluc2VydCBjYXRlZ29yaWVzCglpZiggY291bnQoJGNhdGVnb3JpZXMpICYmICR0aGlzLT5fZG9fY2F0ZWdvcnl2YWxzICkKCSAgewoJCWZvcmVhY2goJGNhdGVnb3JpZXMgYXMgJG5hbWUgPT4gJHZhbHVlICkKCQkgIHsKCQkJaWYoICR2YWx1ZSA9PSAwICkgY29udGludWU7CgkJCSRjYXRlZ29yeV9pZCA9ICR0aGlzLT5nZXRfY2F0ZWdvcnlfaWQoJG5hbWUsJHRoaXMtPl9kb19jYXRlZ29yeWRlZnMpOwoJCQlpZiggJGNhdGVnb3J5X2lkID09PSBGQUxTRSApIGNvbnRpbnVlOwoJCQkKCQkJJHF1ZXJ5ID0gJ0lOU0VSVCBJTlRPICcuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfY29tcGRpcl9jb21wYW55X2NhdGVnb3JpZXMKICAgICAgICAgICAgICAgICAgICAgKGNvbXBhbnlfaWQsY2F0ZWdvcnlfaWQsY3JlYXRlX2RhdGUsbW9kaWZpZWRfZGF0ZSkKICAgICAgICAgICAgICAgICAgICBWQUxVRVMgKD8sPywkbm93LCRub3cpIjsKCQkJJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkY29tcGFueV9pZCwkY2F0ZWdvcnlfaWQpKTsKCQkgIH0KICAgICAgfQoJCiAgICByZXR1cm4gVFJVRTsKICB9CgogIAogIHB1YmxpYyBmdW5jdGlvbiBpbXBvcnRfZmlsZSgkZmlsZW5hbWUpCiAgewogICAgJHRoaXMtPl9saW5lbnVtID0gMDsKCSRydWxlcyA9IGFycmF5KCk7CiAgICAkZmggPSBmb3BlbigkZmlsZW5hbWUsJ3InKTsKICAgIGlmKCAhJGZoICkKICAgICAgewoJCSR0aGlzLT5zZXRfZXJyb3IoJHRoaXMtPl9tb2QtPkxhbmcoJ2Vycm9yX2JhZHVwbG9hZCcpKTsKCQlyZXR1cm4gRkFMU0U7CiAgICAgIH0KICAgIHdoaWxlKCAhZmVvZigkZmgpICkKICAgICAgewoJCSRsaW5lID0gZmdldHMoJGZoKTsKCQkkdGhpcy0+X2xpbmVudW0rKzsKCQkKCQkvLyBzdHJpcCBvZmYgZXh0cmEgd2hpdGVzcGFjZQoJCSRsaW5lID0gdHJpbSgkbGluZSk7CgkJCgkJLy8gc2tpcCBlbXB0eSBsaW5lcwoJCWlmICgkbGluZSA9PSAnJykgewoJCSAgY29udGludWU7Cgl9CgoJLy8KCS8vIGhhbmRsZSBkZWZpbml0aW9uIGxpbmVzCgkvLwoJJGZpZWxkcyA9IGNnZV9hcnJheTo6c21hcnRfZXhwbG9kZSgkbGluZSwkdGhpcy0+X2RlbGltaXRlcik7CglpZihzdGFydHN3aXRoKCRmaWVsZHNbMF0sJyNDT01QQU5ZJykpCgkgIHsKCSAgICAvLyBjb21wYW55IHJ1bGUKCSAgICBpZiggaXNzZXQoJHJ1bGVzWydjb21wYW55J10pICkKCSAgICAgIHsKCQkJLy8gdGhpcyBpcyBiYWQuCgkJCSR0aGlzLT5zZXRfZXJyb3IoJHRoaXMtPl9tb2QtPkxhbmcoJ2Vycm9yX2ltcG9ydF9kdXBsaWNhdGVydWxlJywnQ09NUEFOWScsJHRoaXMtPl9saW5lbnVtKSk7CgkJCWNvbnRpbnVlOwoJICAgICAgfQoKCQlpZiggJHRoaXMtPl9jYXRlZ29yeWNvbHVtbiAhPSAnJyAmJiAhaW5fYXJyYXkoJHRoaXMtPl9jYXRlZ29yeWNvbHVtbiwkZmllbGRzKSApCgkJICB7CgkJCSR0aGlzLT5zZXRfZXJyb3IoJHRoaXMtPl9tb2QtPkxhbmcoJ2Vycm9yX2NhdGVnb3J5Y29sdW1uX25vdGZvdW5kJywkdGhpcy0+X2NhdGVnb3J5Y29sdW1uKSk7CgkJICB9CgkgICAgJHRtcCA9IGV4cGxvZGUoJz0nLCRmaWVsZHNbMF0sMik7CgkgICAgJGlkZW50aWZpZXIgPSAkdG1wWzFdOwoKCSAgICAkcnVsZXNbJ2NvbXBhbnknXSA9IGFycmF5KCk7CgkgICAgJHJ1bGVzWydjb21wYW55J11bJ3J1bGUnXSA9ICRsaW5lOwoJICAgICRydWxlc1snY29tcGFueSddWydpZGVudGlmaWVyJ10gPSAkaWRlbnRpZmllcjsKCSAgICAkcnVsZXNbJ2NvbXBhbnknXVsnZmxkcyddID0gJGZpZWxkczsKCSAgICBjb250aW51ZTsKCSAgfQoJZWxzZSBpZiggc3RhcnRzd2l0aCgkZmllbGRzWzBdLCcjRklFTERERUYnKSkKCSAgewoJICAgIC8vIGZpZWxkZGVmIHJ1bGUKCSAgICBpZiggaXNzZXQoJHJ1bGVzWydmaWVsZGRlZiddKSApCgkgICAgICB7CgkJLy8gdGhpcyBpcyBiYWQuCgkJJHRoaXMtPnNldF9lcnJvcigkdGhpcy0+X21vZC0+TGFuZygnZXJyb3JfaW1wb3J0X2R1cGxpY2F0ZXJ1bGUnLCdGSUVMRERFRicsJHRoaXMtPl9saW5lbnVtKSk7CgkJY29udGludWU7CgkgICAgICB9CgoJICAgICR0bXAgPSBleHBsb2RlKCc9JywkZmllbGRzWzBdLDIpOwoJICAgICRpZGVudGlmaWVyID0gJHRtcFsxXTsKCgkgICAgJHJ1bGVzWydmaWVsZGRlZiddID0gYXJyYXkoKTsKCSAgICAkcnVsZXNbJ2ZpZWxkZGVmJ11bJ3J1bGUnXSA9ICRsaW5lOwoJICAgICRydWxlc1snZmllbGRkZWYnXVsnaWRlbnRpZmllciddID0gJGlkZW50aWZpZXI7CgkgICAgJHJ1bGVzWydmaWVsZGRlZiddWydmbGRzJ10gPSAkZmllbGRzOwoJICAgIGNvbnRpbnVlOwoJICAgIC8vIGZpZWxkZGVmIHJ1bGUKCSAgfQoJZWxzZSBpZiggc3RhcnRzd2l0aCgkZmllbGRzWzBdLCcjQ0FURUdPUlknKSkKCSAgewoJICAgIC8vIGNhdGVnb3J5IHJ1bGUKCSAgICBpZiggaXNzZXQoJHJ1bGVzWydjYXRlZ29yeSddKSApCgkgICAgICB7CgkJLy8gdGhpcyBpcyBiYWQuCgkJJHRoaXMtPnNldF9lcnJvcigkdGhpcy0+X21vZC0+TGFuZygnZXJyb3JfaW1wb3J0X2R1cGxpY2F0ZXJ1bGUnLCdDQVRFR09SWScsJHRoaXMtPl9saW5lbnVtKSk7CgkJY29udGludWU7CgkgICAgICB9CgkgICAgJHRtcCA9IGV4cGxvZGUoJz0nLCRmaWVsZHNbMF0sMik7CgkgICAgJGlkZW50aWZpZXIgPSAkdG1wWzFdOwoKCSAgICAkcnVsZXNbJ2NhdGVnb3J5J10gPSBhcnJheSgpOwoJICAgICRydWxlc1snY2F0ZWdvcnknXVsncnVsZSddID0gJGxpbmU7CgkgICAgJHJ1bGVzWydjYXRlZ29yeSddWydpZGVudGlmaWVyJ10gPSAkaWRlbnRpZmllcjsKCSAgICAkcnVsZXNbJ2NhdGVnb3J5J11bJ2ZsZHMnXSA9ICRmaWVsZHM7CgkgICAgY29udGludWU7CgkgICAgLy8gY2F0ZWdvcnkgcnVsZS4KCSAgfQoJZWxzZSBpZiggc3RhcnRzd2l0aCgkZmllbGRzWzBdLCcjSElFUkFSQ0hZJykpCgkgIHsKCSAgICAvLyBoaWVyYXJjaHkgcnVsZQoJICAgIGlmKCBpc3NldCgkcnVsZXNbJ2hpZXJhcmNoeSddKSApCgkgICAgICB7CgkJLy8gdGhpcyBpcyBiYWQuCgkJJHRoaXMtPnNldF9lcnJvcigkdGhpcy0+X21vZC0+TGFuZygnZXJyb3JfaW1wb3J0X2R1cGxpY2F0ZXJ1bGUnLCdISUVSQVJDSFknLCR0aGlzLT5fbGluZW51bSkpOwoJCWNvbnRpbnVlOwoJICAgICAgfQoJICAgICR0bXAgPSBleHBsb2RlKCc9JywkZmllbGRzWzBdLDIpOwoJICAgICRpZGVudGlmaWVyID0gJHRtcFsxXTsKCgkgICAgJHJ1bGVzWydoaWVyYXJjaHknXSA9IGFycmF5KCk7CgkgICAgJHJ1bGVzWydoaWVyYXJjaHknXVsncnVsZSddID0gJGxpbmU7CgkgICAgJHJ1bGVzWydoaWVyYXJjaHknXVsnaWRlbnRpZmllciddID0gJGlkZW50aWZpZXI7CgkgICAgJHJ1bGVzWydoaWVyYXJjaHknXVsnZmxkcyddID0gJGZpZWxkczsKCSAgICBjb250aW51ZTsKCSAgICAvLyBoaWVyYXJjaHkgcnVsZS4KCSAgfQoJZWxzZSBpZiggc3RhcnRzd2l0aCgkbGluZSwnIycpICkKCSAgewoJICAgIC8vIGRvbid0IGtub3cgdGhpcyBvbmUuCgkgICAgJHRoaXMtPnNldF9lcnJvcigkdGhpcy0+X21vZC0+TGFuZygnZXJyb3JfaW1wb3J0X3Vua25vd25ydWxlJywkdGhpcy0+X2xpbmVudW0pKTsKCSAgICBjb250aW51ZTsKCSAgfQoKCS8vCgkvLyBkbyByZWFsIGltcG9ydGluZwoJLy8KCSRyb3d0eXBlID0gJyc7Cglmb3JlYWNoKCAkcnVsZXMgYXMgJG5hbWUgPT4gJGRhdGEgKQoJICB7CgkgICAgaWYoICRmaWVsZHNbMF0gPT0gJHJ1bGVzWyRuYW1lXVsnaWRlbnRpZmllciddICkKCSAgICAgIHsKCQkJJHJvd3R5cGUgPSAkbmFtZTsKCQkJYnJlYWs7CgkgICAgICB9CgkgIH0KCWlmKCBlbXB0eSgkcm93dHlwZSkgKQoJICB7CgkgICAgJHRoaXMtPnNldF9lcnJvcigkdGhpcy0+X21vZC0+TGFuZygnZXJyb3JfaW1wb3J0X3Vua25vd25yb3cnLCR0aGlzLT5fbGluZW51bSwkZmllbGRzWzBdKSk7CgkgICAgY29udGludWU7CgkgIH0KCgkkcmV0ID0gJyc7Cglzd2l0Y2goICRyb3d0eXBlICkKCSAgewoJICBjYXNlICdjb21wYW55JzoKCSAgICBpZiggKCR0aGlzLT5fbWF4X3JlY29yZHMgPiAwICYmICR0aGlzLT5fbnVtX2NvbXBhbmllcyA8ICR0aGlzLT5fbWF4X3JlY29yZHMpCgkJfHwgJHRoaXMtPl9tYXhfcmVjb3JkcyA9PSAwICkKCSAgICAgIHsKCQkkcmV0ID0gJHRoaXMtPnByb2Nlc3NfY29tcGFueSgkZmllbGRzLCRydWxlc1snY29tcGFueSddKTsKCQlpZiggJHJldCA9PT0gVFJVRSApCgkJICB7CgkJICAgICR0aGlzLT5fbnVtX2NvbXBhbmllcysrOwoJCSAgfQoJICAgICAgfQoJICAgIGNvbnRpbnVlOwoJICAgIGJyZWFrOwoKCSAgY2FzZSAnY2F0ZWdvcnknOgoJICAgIGlmKCAkdGhpcy0+X2RvX2NhdGVnb3J5ZGVmcyApCgkgICAgICB7CgkJCSRyZXQgPSAkdGhpcy0+cHJvY2Vzc19jYXRlZ29yeSgkbGluZSwkcnVsZXNbJ2NhdGVnb3J5J10pOwoJCQlpZiggJHJldCA9PT0gVFJVRSApCgkJCSAgewoJCQkJJHRoaXMtPl9udW1fY2F0ZWdvcmllcysrOwoJCQkgIH0KCSAgICAgIH0KCSAgICBjb250aW51ZTsKCSAgICBicmVhazsKCgkgIGNhc2UgJ2ZpZWxkZGVmJzoKCSAgICBpZiggJHRoaXMtPl9kb19maWVsZGRlZnMgKQoJICAgICAgewoJCQkkcmV0ID0gJHRoaXMtPnByb2Nlc3NfZmllbGRkZWYoJGxpbmUsJHJ1bGVzWydmaWVsZGRlZiddKTsKCQkJaWYoICRyZXQgPT09IFRSVUUgKQoJCQkgIHsKCQkJCSR0aGlzLT5fbnVtX2ZpZWxkZGVmcysrOwoJCQkgIH0KCSAgICAgIH0KCSAgICBjb250aW51ZTsKCSAgICBicmVhazsKCgkgIGNhc2UgJ2hpZXJhcmNoeSc6CgkgICAgaWYoICR0aGlzLT5fZG9faGllcmRlZnMgKQoJICAgICAgewoJCQkkcmV0ID0gJHRoaXMtPnByb2Nlc3NfaGllcmFyY2h5KCRsaW5lLCRydWxlc1snaGllcmFyY2h5J10pOwoJCQlpZiggJHJldCA9PT0gVFJVRSApCgkJCSAgewoJCQkJJHRoaXMtPl9udW1faGllcisrOwoJCQkgIH0KCSAgICAgIH0KCSAgICBjb250aW51ZTsKCSAgICBicmVhazsKCgkgIGRlZmF1bHQ6CgkJaWYoICRyb3d0eXBlICE9ICcnICkKCQkgIHsKCQkJJHRoaXMtPnNldF9lcnJvcigkdGhpcy0+X21vZC0+TGFuZygnZXJyb3JfaW1wb3J0X3Vua25vd25yb3cnLCR0aGlzLT5fbGluZW51bSwkZmllbGRzWzBdKSk7CgkJICB9CgkgICAgY29udGludWU7CgkgICAgYnJlYWs7CgkgIH0KICAgICAgfQogICAgJHRoaXMtPl9udW1fbGluZXMgPSAkdGhpcy0+X2xpbmVudW07CiAgICByZXR1cm4gVFJVRTsKICB9Cgp9CgojCiMgRU9GCiMKPz4K]]></data>
	</file>
	<file>
	  <filename>/lib/class.cd_company_filter.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgpjbGFzcyBjZF9jb21wYW55X2ZpbHRlciBpbXBsZW1lbnRzIEFycmF5QWNjZXNzCnsKICBwcml2YXRlICRfb3JpZ3BhcmFtczsKICBwcml2YXRlICRfZGF0YSA9IGFycmF5KCk7CiAgcHJpdmF0ZSBzdGF0aWMgJF9rZXlzID0gYXJyYXkoJ3JldHVybmlkJywnbmFtZScsJ3NvcnRieScsJ3NvcnRvcmRlcicsJ2NhdGVnb3J5JywnY2F0ZWdvcnkyJywnY2F0ZWdvcnkzJywnY2F0ZWdvcnlpZCcsJ2hpZXInLCdwYWdlJywncGFnZWxpbWl0JywnZXhwaXJlZG93bmVycycsJ2RlZXAnLCdvbmx5Y291bnQnLCdpbmxpbmUnLCdkZXRhaWxwYWdlJywnZGV0YWlsdGVtcGxhdGUnLCdpbmxpbmUnLCdzaG93YWxsJywnbWF0Y2hhbGwnLCdhZGRyZXNzJywnbGF0JywnbG9uZycsJ3JhZGl1cycsJ2lkJywnc3RhdHVzJyk7CiAgcHJpdmF0ZSAkX3NvcnRieV9mbGQgPSBudWxsOwoKICBwdWJsaWMgZnVuY3Rpb24gX19jb25zdHJ1Y3QoJGRhdGEgPSBhcnJheSgpKQogIHsKCSR0aGlzLT5fb3JpZ3BhcmFtcyA9ICRkYXRhOwogICAgJGNkbW9kID0gY21zX3V0aWxzOjpnZXRfbW9kdWxlKCdDb21wYW55RGlyZWN0b3J5Jyk7CgkkdGhpcy0+X2RhdGFbJ2lkJ10gPSAnY2QnOyAvLyB1c2VkIGluIGxpbmtzLgogICAgJHRoaXMtPl9kYXRhWydzb3J0YnknXSA9ICRjZG1vZC0+R2V0UHJlZmVyZW5jZSgnc29ydGJ5JywnY29tcGFueV9uYW1lJyk7CiAgICAkdGhpcy0+X2RhdGFbJ3NvcnRvcmRlciddID0gJGNkbW9kLT5HZXRQcmVmZXJlbmNlKCdzb3J0b3JkZXInLCdhc2MnKTsKICAgICR0aGlzLT5fZGF0YVsncGFnZWxpbWl0J10gPSAxMDAwMDsKICAgICR0aGlzLT5fZGF0YVsncGFnZSddID0gMTsKICAgICR0aGlzLT5fZGF0YVsnZXhwaXJlZG93bmVycyddID0gJGNkbW9kLT5HZXRQcmVmZXJlbmNlKCdmcm9udGVuZF9zaG93ZXhwaXJlZCcsMCk7CiAgICAkdGhpcy0+X2RhdGFbJ2RlZXAnXSA9IDE7CiAgICAkdGhpcy0+X2RhdGFbJ29ubHljb3VudCddID0gMDsKCSR0aGlzLT5fZGF0YVsnZGV0YWlscGFnZSddID0gJGNkbW9kLT5HZXRQcmVmZXJlbmNlKCdkZXRhaWxwYWdlJywtMSk7CgkkdGhpcy0+X2RhdGFbJ2lubGluZSddID0gMDsKCSR0aGlzLT5fZGF0YVsnc2hvd2FsbCddID0gMDsKCSR0aGlzLT5fZGF0YVsnbWF0Y2hhbGwnXSA9IDE7CgkkdGhpcy0+X2RhdGFbJ3N0YXR1cyddID0gLTE7CgogICAgZm9yZWFjaCggJGRhdGEgYXMgJGtleSA9PiAkdmFsdWUgKQogICAgICB7CgkJaWYoIGluX2FycmF5KCRrZXksc2VsZjo6JF9rZXlzKSApCgkJICB7CgkJCSR0aGlzWyRrZXldID0gJHZhbHVlOwoJCSAgfQogICAgICB9CiAgfQoKCiAgcHVibGljIGZ1bmN0aW9uIG9mZnNldEdldCgka2V5KQogIHsKICAgIGlmKCAhaW5fYXJyYXkoJGtleSxzZWxmOjokX2tleXMpICkKICAgICAgdGhyb3cgbmV3IEV4Y2VwdGlvbignR2V0IGludmFsaWQga2V5ICcuJGtleS4nIHNwZWNpZmllZCBmb3IgY2RfY29tcGFueV9maWx0ZXInKTsKCiAgICBpZiggaXNzZXQoJHRoaXMtPl9kYXRhWyRrZXldKSApCgkgIHJldHVybiAkdGhpcy0+X2RhdGFbJGtleV07CiAgfQoKCiAgcHVibGljIGZ1bmN0aW9uIG9mZnNldFNldCgka2V5LCR2YWx1ZSkKICB7CiAgICAkY2Rtb2QgPSBjbXNfdXRpbHM6OmdldF9tb2R1bGUoJ0NvbXBhbnlEaXJlY3RvcnknKTsKCiAgICBpZiggIWluX2FycmF5KCRrZXksc2VsZjo6JF9rZXlzKSApCiAgICAgIHRocm93IG5ldyBFeGNlcHRpb24oJ1NldDogSW52YWxpZCBLZXkgJy4ka2V5LicgIHNwZWNpZmllZCBmb3IgY2RfY29tcGFueV9maWx0ZXInKTsKCiAgICAvLyB2YWxpZGF0ZSBkYXRhLgogICAgc3dpdGNoKCAka2V5ICkKICAgICAgewoJICBjYXNlICdzdGF0dXMnOgoJCSR2YWx1ZSA9IHRyaW0oc3RydG9sb3dlcigkdmFsdWUpKTsKCQlicmVhazsKCiAgICAgIGNhc2UgJ3NvcnRieSc6CgkJJHYyID0gc3RydG9sb3dlcih0cmltKCR2YWx1ZSkpOwoJCXN3aXRjaCggJHYyICkKCQkgIHsKCQkgIGNhc2UgJ25hbWUnOgoJCQkkdmFsdWUgPSAnY29tcGFueV9uYW1lJzsKCQkJYnJlYWs7CgoJCSAgY2FzZSAnaWQnOgoJCSAgY2FzZSAnYWRkcmVzcyc6CgkJICBjYXNlICdvd25lcic6CgkJICBjYXNlICdjb21wYW55X25hbWUnOgoJCSAgY2FzZSAncGhvbmUnOgoJCSAgY2FzZSAnZmF4JzoKCQkgIGNhc2UgJ2VtYWlsJzoKCQkgIGNhc2UgJ3dlYnNpdGUnOgoJCSAgY2FzZSAnY3JlYXRlZCc6CgkJICBjYXNlICdtb2RpZmllZCc6CgkJICBjYXNlICdyYW5kb20nOgoJCSAgY2FzZSAnZGlzdGFuY2UnOgoJCQlicmVhazsKCgkJICBkZWZhdWx0OgoJCQkkZ29vZCA9IGZhbHNlOwoJCQlpZiggc3RhcnRzd2l0aCgkdmFsdWUsJ2Y6JykgKQoJCQkgIHsKCQkJCS8vIHZhbGlkYXRlIGN1c3RvbSBmaWVsZC4KCQkJCWxpc3QoJGp1bmssJGZuYW1lLCRmdHlwZSkgPSBleHBsb2RlKCc6JywkdmFsdWUsMyk7CgkJCQkkZmllbGRkZWZzID0gJGNkbW9kLT5HZXRGaWVsZERlZnMoKTsKCQkJCWZvciggJGkgPSAwOyAkaSA8IGNvdW50KCRmaWVsZGRlZnMpOyAkaSsrICkKCQkJCSAgewoJCQkJCWlmKCAkZmllbGRkZWZzWyRpXVsnbmFtZSddID09ICRmbmFtZSApIAoJCQkJCSAgewoJCQkJCQkkdGhpcy0+X3NvcnRieV9mbGQgPSAkZmllbGRkZWZzWyRpXTsKCQkJCQkJJGdvb2QgPSB0cnVlOwoJCQkJCQlicmVhazsKCQkJCQkgIH0KCQkJCSAgfQoJCQkJaWYoICRnb29kICYmICRmdHlwZSAhPSAnJyAmJiAkZnR5cGUgIT0gJ2knICYmICRmdHlwZSAhPSAnZicpCgkJCQkgIHsKCQkJCQkkZ29vZCA9IGZhbHNlOwoJCQkJICB9CgkJCSAgfQoJCQlpZiggISRnb29kICkgCiAgICAgICAgICAgICAgICAgICAgICAgIHsKCQkgIAkgIHRocm93IG5ldyBleGNlcHRpb24oJ0ludmFsaWQgU29ydGJ5IEZpZWxkJyk7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KCQkJYnJlYWs7CgkJICB9CgkJYnJlYWs7CgogICAgICBjYXNlICdzb3J0b3JkZXInOgoJCSR2YWx1ZSA9IHN0cnRvbG93ZXIodHJpbSgkdmFsdWUpKTsKCQlpZiggJHZhbHVlICE9ICdhc2MnICYmICR2YWx1ZSAhPSAnZGVzYycgKQoJCSAgdGhyb3cgbmV3IGV4Y2VwdGlvbignSW52YWxpZCBTb3J0YnkgRmllbGQnKTsKCQlicmVhazsKCQogICAgICBjYXNlICdjYXRlZ29yeSc6CiAgICAgIGNhc2UgJ2NhdGVnb3J5Mic6CiAgICAgIGNhc2UgJ2NhdGVnb3J5Myc6CgkJLy8gdG9kbzogY2hlY2sgaWYgaXQncyBhIHZhbGlkIGNhdGVnb3J5LgoJCWJyZWFrOwoKICAgICAgY2FzZSAnY2F0ZWdvcnlpZCc6CgkJLy8gdG9kbzogY2hlY2sgaWYgaXRzIGEgdmFsaWQgY2F0ZWdvcnkgaWQuCgkJYnJlYWs7CgogICAgICBjYXNlICdoaWVyJzoKCQkvLyB0b2RvOiBjaGVjayBpZiBpdCdzIGEgdmFsaWQgaGllcmFyY2h5CgkJYnJlYWs7CgoJICBjYXNlICdhZGRyZXNzJzoKCSAgY2FzZSAnaWQnOgoJCSR2YWx1ZSA9IHRyaW0oJHZhbHVlKTsKCQlicmVhazsKCiAgICAgIGNhc2UgJ25hbWUnOgoJCS8vIG5hbWUuLgoJCWJyZWFrOwoKCSAgY2FzZSAnbGF0JzoKCSAgY2FzZSAnbG9uZyc6CgkgIGNhc2UgJ3JhZGl1cyc6CgkJLy8gdmFsaWRhdGlvbiBzaG91bGQgaGFuZGxlIHRoaXMuCgkJYnJlYWs7CgoJICBjYXNlICdkZXRhaWx0ZW1wbGF0ZSc6CgkJLy8gZG9uJ3QgYm90aGVyIGNoZWNraW5nIGl0CgkJYnJlYWs7CgoJICBjYXNlICdkZXRhaWxwYWdlJzoKCQlpZiggIWlzX251bWVyaWMoJHZhbHVlKSApCgkJICB7CgkJCS8vIHJlc29sdmUgdGhlIHZhbHVlIHRvIGEgcGFnZSBpZC4uLiBvciB1c2UgLTEKCQkJJHZhbHVlID0gJGNkbW9kLT5yZXNvbHZlX2FsaWFzX29yX2lkKCR2YWx1ZSk7CgkJCWlmKCAhJHZhbHVlICkgJHZhbHVlID0gLTE7CgkJICB9CQkKCQlicmVhazsKCgkgIGNhc2UgJ3Nob3dhbGwnOgoJICBjYXNlICdyZXR1cm5pZCc6CgkgIGNhc2UgJ2lubGluZSc6CiAgICAgIGNhc2UgJ29ubHljb3VudCc6CiAgICAgIGNhc2UgJ2RlZXAnOgogICAgICBjYXNlICdleHBpcmVkb3duZXJzJzoKCSAgY2FzZSAnbWF0Y2hhbGwnOgoJCSR2YWx1ZSA9IChpbnQpJHZhbHVlOwoJCWJyZWFrOwoKICAgICAgY2FzZSAncGFnZSc6CiAgICAgIGNhc2UgJ3BhZ2VsaW1pdCc6CgkJJHZhbHVlID0gKGludCkkdmFsdWU7CgkJJHZhbHVlID0gbWF4KDEsJHZhbHVlKTsKCQlicmVhazsKICAgICAgfQogICAgJHRoaXMtPl9kYXRhWyRrZXldID0gJHZhbHVlOwogIH0KCgogIHB1YmxpYyBmdW5jdGlvbiBvZmZzZXRFeGlzdHMoJGtleSkKICB7CiAgICBpZiggIWluX2FycmF5KCRrZXksc2VsZjo6JF9rZXlzKSApCiAgICAgIHRocm93IG5ldyBFeGNlcHRpb24oJ0V4aXN0czogSW52YWxpZCBLZXkgJy4ka2V5Licgc3BlY2lmaWVkIGZvciBjZF9jb21wYW55X2ZpbHRlcicpOwoKICAgIHJldHVybiBpc3NldCgkdGhpcy0+X2RhdGFbJGtleV0pOwogIH0KCgogIHB1YmxpYyBmdW5jdGlvbiBvZmZzZXRVbnNldCgka2V5KQogIHsKICAgIGlmKCAhaW5fYXJyYXkoJGtleSxzZWxmOjokX2tleXMpICkKICAgICAgdGhyb3cgbmV3IEV4Y2VwdGlvbignVW5zZXQ6IEludmFsaWQgS2V5ICcuJGtleS4nIHNwZWNpZmllZCBmb3IgY2RfY29tcGFueV9maWx0ZXInKTsKICAgIHJldHVybiBGQUxTRTsKICB9CgoKICBwdWJsaWMgZnVuY3Rpb24gdmFsaWRhdGUoKQogIHsKCS8vIGNoZWNrIHNvcnRieSBhZ2FpbnN0IGNvb3JkcwoJaWYoICR0aGlzLT5fZGF0YVsnc29ydGJ5J10gPT0gJ2Rpc3RhbmNlJyAmJiAhJHRoaXMtPmhhdmVfY29vcmRzKCkgKQoJICB7CgkJdGhyb3cgbmV3IEV4Y2VwdGlvbignQ2Fubm90IHNvcnRieSBkaXN0YW5jZSB3aXRob3V0IHNwZWNpZnlpbmcgY29vcmRpbmF0ZXMnKTsKCSAgfQoKCS8vIHRvZG86IGhlcmUgd2Ugc2hvdWxkIHZhbGlkYXRlIGhpZXJhcmNoeSwgYW5kIGNhdGVnb3JpZShzKQogIH0KCgogIHB1YmxpYyBmdW5jdGlvbiAmZ2V0X3NvcnRfZmxkKCkKICB7CiAgICByZXR1cm4gJHRoaXMtPl9zb3J0YnlfZmxkOwogIH0KCgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfc29ydGJ5KCkKICB7CiAgICBzd2l0Y2goICR0aGlzLT5fZGF0YVsnc29ydGJ5J10gKQogICAgICB7CiAgICAgIGNhc2UgJ2VtYWlsJzoKCQlyZXR1cm4gJ2NvbnRhY3RfZW1haWwnOwogICAgICBjYXNlICdwaG9uZSc6CgkJcmV0dXJuICd0ZWxlcGhvbmUnOwogICAgICBjYXNlICdjcmVhdGVkJzoKCQlyZXR1cm4gJ2NyZWF0ZV9kYXRlJzsKICAgICAgY2FzZSAnbW9kaWZpZWQnOgoJCXJldHVybiAnbW9kaWZpZWRfZGF0ZSc7CiAgICAgIGNhc2UgJ3JhbmRvbSc6CgkJcmV0dXJuICdSQU5EKCknOwogICAgICBjYXNlICdpZCc6CiAgICAgIGNhc2UgJ2NvbXBhbnlfbmFtZSc6CiAgICAgIGNhc2UgJ2ZheCc6CiAgICAgIGNhc2UgJ3dlYnNpdGUnOgogICAgICBjYXNlICdzdGF0dXMnOgogICAgICBkZWZhdWx0OgoJCXJldHVybiAkdGhpcy0+X2RhdGFbJ3NvcnRieSddOwogICAgICB9CiAgfQoKCiAgcHVibGljIGZ1bmN0aW9uIGdldF9zb3J0b3JkZXIoKQogIHsKICAgIGlmKCAkdGhpcy0+X2RhdGFbJ3NvcnRieSddID09ICdyYW5kb20nICkKICAgICAgcmV0dXJuICcnOwoKICAgIHJldHVybiAkdGhpcy0+X2RhdGFbJ3NvcnRvcmRlciddOwogIH0KCgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfcGFyYW1zKCkKICB7CglyZXR1cm4gJHRoaXMtPl9vcmlncGFyYW1zOwogIH0KCgogIHB1YmxpYyBmdW5jdGlvbiBoYXZlX2Nvb3JkcygpCiAgewoJaWYoICFpc3NldCgkdGhpcy0+X2RhdGFbJ2xhdCddKSB8fCAhaXNzZXQoJHRoaXMtPl9kYXRhWydsb25nJ10pICkKCSAgcmV0dXJuIEZBTFNFOwoKCWlmKCAhaXNfbnVtZXJpYygkdGhpcy0+X2RhdGFbJ2xhdCddKSB8fCAhaXNfbnVtZXJpYygkdGhpcy0+X2RhdGFbJ2xvbmcnXSkgKSAKCSAgcmV0dXJuIEZBTFNFOwoKCXJldHVybiBUUlVFOwogIH0KCgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfcmFkaXVzX21pbGVzKCkKICB7CgkkdG1wID0gJyc7CgkkdmFsID0gMTsKCSRzdWZmaXggPSAnbWknOwoJaWYoIHByZWdfbWF0Y2goJy9eKFswLTldKykoLiopJC8nLCR0aGlzLT5fZGF0YVsncmFkaXVzJ10sJHRtcCkgKQoJICB7CgkJaWYoIGNvdW50KCR0bXApID4gMSApCgkJICB7CgkJCSR2YWwgPSAoZmxvYXQpJHRtcFsxXTsKCQkgIH0KCQlpZiggY291bnQoJHRtcFsyXSkgKQoJCSAgewoJCQkkc3VmZml4ID0gdHJpbSgkdG1wWzJdKTsKCQkgIH0KCSAgfQoKCSRzdWZmaXggPSBzdHJ0b2xvd2VyKCRzdWZmaXgpOwoJc3dpdGNoKCAkc3VmZml4ICkKCSAgewoJICBjYXNlICdtaSc6CgkgIGNhc2UgJ21pbGUnOgoJICBjYXNlICdtaWxlcyc6CgkJYnJlYWs7CgoJICBjYXNlICdrbSc6CgkgIGNhc2UgJ2snOgoJCSR2YWwgPSAoZmxvYXQpJHZhbCAqIDAuNjIxMzcxMTkyOwoJCWJyZWFrOwoKCSAgZGVmYXVsdDoKCQlpZiggJHN1ZmZpeCApCgkJICB0aHJvdyBuZXcgRXhjZXB0aW9uKCdJbnZhbGlkIHZhbHVlIHNwZWNpZmllZCBmb3IgY29tcGFueSBzZWFyY2ggcmFkaXVzICcuJHRoaXMtPl9kYXRhWydyYWRpdXMnXS4iIDogJHN1ZmZpeC8kbiIpOwoJICB9CgoJcmV0dXJuICR2YWw7CiAgfQoKCiAgcHVibGljIGZ1bmN0aW9uIGdldF9jb29yZHMoKQogIHsKCSRyZXMgPSBhcnJheSgpOwoJJHJlc1snbGF0J10gPSBmbG9hdHZhbCgkdGhpcy0+X2RhdGFbJ2xhdCddKTsKCSRyZXNbJ2xvbmcnXSA9IGZsb2F0dmFsKCR0aGlzLT5fZGF0YVsnbG9uZyddKTsKCglyZXR1cm4gJHJlczsKICB9Cn0gLy8gZW5kIG9mIGNsYXNzCgojCiMgRU9GCiMKPz4K]]></data>
	</file>
	<file>
	  <filename>/lib/class.cd_company_query.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgpjbGFzcyBjZF9jb21wYW55X3F1ZXJ5CnsKICBwcml2YXRlICRfZmlsdGVyOwogIHByaXZhdGUgJF9xdWVyaWVkOwogIHByaXZhdGUgJF9jb3VudDsKICBwcml2YXRlICRfcmVzdWx0c2V0OwogIHByaXZhdGUgc3RhdGljICRfY2F0ZWdvcnluYW1lc3RvaWRzOwoKICBwdWJsaWMgZnVuY3Rpb24gX19jb25zdHJ1Y3QoY2RfY29tcGFueV9maWx0ZXIgJGZpbHRlcikKICB7CiAgICAkdGhpcy0+X2ZpbHRlciA9ICRmaWx0ZXI7CiAgfQoKICBwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIGdldF9jYXRlZ29yeV9pZHMoJG5hbWVzKQogIHsKCWlmKCAhaXNfYXJyYXkoJG5hbWVzKSApCgkgIHsKCQkkbmFtZXMgPSBleHBsb2RlKCcsJywkbmFtZXMpOwoJICB9CgkKCWlmKCAhaXNfYXJyYXkoJG5hbWVzKSB8fCBjb3VudCgkbmFtZXMpID09IDAgKSByZXR1cm47CgoJaWYoICFpc19hcnJheShzZWxmOjokX2NhdGVnb3J5bmFtZXN0b2lkcykgKQoJICB7CgkJc2VsZjo6JF9jYXRlZ29yeW5hbWVzdG9pZHMgPSBhcnJheSgpOwoJCSRjZG1vZCA9IGNtc191dGlsczo6Z2V0X21vZHVsZSgnQ29tcGFueURpcmVjdG9yeScpOwoJCSRhbGxjYXRlZ29yaWVzID0gJGNkbW9kLT5HZXRDYXRlZ29yaWVzKCk7IC8vIHVzZXMgY2FjaGluZy4uCgkJJHRtcGhhc2ggPSBhcnJheSgpOwoJCWZvciggJGogPSAwOyAkaiA8IGNvdW50KCRhbGxjYXRlZ29yaWVzKTsgJGorKyApCgkJICB7CgkJCXNlbGY6OiRfY2F0ZWdvcnluYW1lc3RvaWRzWyRhbGxjYXRlZ29yaWVzWyRqXS0+bmFtZV0gPSAoaW50KSRhbGxjYXRlZ29yaWVzWyRqXS0+aWQ7CgkJICB9CgkgIH0KCWlmKCAhaXNfYXJyYXkoc2VsZjo6JF9jYXRlZ29yeW5hbWVzdG9pZHMpIHx8IGNvdW50KHNlbGY6OiRfY2F0ZWdvcnluYW1lc3RvaWRzKSA9PSAwICkgcmV0dXJuOwoKCSRyZXN1bHQgPSBhcnJheSgpOwoJZm9yKCAkaSA9IDA7ICRpIDwgY291bnQoJG5hbWVzKTsgJGkrKyApCgkgIHsKCQkkbmFtZSA9IHRyaW0oJG5hbWVzWyRpXSk7CgkJaWYoICRuYW1lID09PSAnJyApIGNvbnRpbnVlOwoKCQlpZiggaXNzZXQoc2VsZjo6JF9jYXRlZ29yeW5hbWVzdG9pZHNbJG5hbWVdKSApCgkJICB7CgkJCSRyZXN1bHRbXSA9IHNlbGY6OiRfY2F0ZWdvcnluYW1lc3RvaWRzWyRuYW1lXTsKCQkgIH0KCSAgfQoJJHJlc3VsdCA9IGFycmF5X3VuaXF1ZSgkcmVzdWx0KTsKCWlmKCBjb3VudCgkcmVzdWx0KSApIHJldHVybiAkcmVzdWx0OwogIH0KCiAgcHJpdmF0ZSBmdW5jdGlvbiBfcXVlcnkoKQogIHsKICAgICRkYiA9IGNtc21zKCktPkdldERiKCk7CiAgICAkcXVlcnkgPSAnRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfY29tcGFuaWVzIEMnOwogICAgJHF1ZXJ5MiA9ICdTRUxFQ1QgQ09VTlQoKikgQVMgY291bnQgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfY29tcGFuaWVzIEMnOwoKCSR0aGlzLT5fZmlsdGVyLT52YWxpZGF0ZSgpOwoKCSRyZXFfd2hlcmUgPSBhcnJheSgpOwoJJGNvbHVtbnMgPSBhcnJheSgnQy4qJyk7CiAgICAkd2hlcmUgPSBhcnJheSgpOwoJJGhhdmluZyA9IGFycmF5KCk7CiAgICAkam9pbnMgPSBhcnJheSgpOwogICAgJGpvaW5zMiA9IGFycmF5KCk7CiAgICAkcGFybXMgPSBhcnJheSgpOwogICAgJHNvcnRieSA9ICR0aGlzLT5fZmlsdGVyLT5nZXRfc29ydGJ5KCk7CiAgICAkc29ydG9yZGVyID0gJHRoaXMtPl9maWx0ZXItPmdldF9zb3J0b3JkZXIoKTsKCiAgICBpZiggISR0aGlzLT5fZmlsdGVyWydzaG93YWxsJ10gfHwgJHRoaXMtPl9maWx0ZXJbJ3N0YXR1cyddID09ICdwdWJsaXNoZWQnICkKICAgICAgewoJCS8vIHNob3cgb25seSBwdWJsaXNoZWQgY29tcGFuaWVzLgoJCSRyZXFfd2hlcmVbXSA9ICdDLnN0YXR1cyA9ID8nOwoJCSRwYXJtc1tdID0gJ3B1Ymxpc2hlZCc7CiAgICAgIH0KCWVsc2UgaWYoICR0aGlzLT5fZmlsdGVyWydzdGF0dXMnXSAhPSAtMSApCgkgIHsKCQkkcmVxX3doZXJlW10gPSAnQy5zdGF0dXMgPSA/JzsKCQkkcGFybXNbXSA9ICR0aGlzLT5fZmlsdGVyWydzdGF0dXMnXTsKCSAgfQoKICAgIGlmKCAhJHRoaXMtPl9maWx0ZXJbJ2V4cGlyZWRvd25lcnMnXSApCiAgICAgIHsKCQkkZmV1ID0gY21zX3V0aWxzOjpnZXRfbW9kdWxlKCdGcm9udEVuZFVzZXJzJyk7CgkJaWYoICRmZXUgKQoJCSAgewoJCQkkc3RyID0gJyBMRUZUIE9VVEVSIEpPSU4gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX3VzZXJzIGZ1IE9OIGZ1LmlkID0gQy5vd25lcl9pZCc7CgkJCSRxdWVyeSAuPSAgJHN0cjsKCQkJJHF1ZXJ5MiAuPSAkc3RyOwoJCQkkc3RyID0gJyc7CgkJCSRyZXFfd2hlcmVbXSA9ICcoQ09BTEVTQ0UoQy5vd25lcl9pZCwtMSkgPCAwIE9SIGZ1LmV4cGlyZXMgPiBOT1coKSknOwoJCSAgfQogICAgICB9CgoJaWYoICR0aGlzLT5fZmlsdGVyLT5oYXZlX2Nvb3JkcygpICkKCSAgewoJCSRyYWQgPSAkdGhpcy0+X2ZpbHRlci0+Z2V0X3JhZGl1c19taWxlcygpOwoJCSRjb29yZHMgPSAkdGhpcy0+X2ZpbHRlci0+Z2V0X2Nvb3JkcygpOwoKCQkkY29sdW1uc1tdID0gJyhTRUxFQ1QgMzk1OSAqIGFjb3MoY29zKHJhZGlhbnMoJy4kY29vcmRzWydsYXQnXS4nKSkgCiAgICAgICAgICAgICAgICAgICAgICAgKiBjb3MocmFkaWFucyhDLmxhdGl0dWRlKSkgCiAgICAgICAgICAgICAgICAgICAgICAgKiBjb3MocmFkaWFucyhDLmxvbmdpdHVkZSkgLSByYWRpYW5zKCcuJGNvb3Jkc1snbG9uZyddLicpKSAKICAgICAgICAgICAgICAgICAgICAgICArIHNpbihyYWRpYW5zKCcuJGNvb3Jkc1snbGF0J10uJykpCiAgICAgICAgICAgICAgICAgICAgICAgKiBzaW4ocmFkaWFucyhDLmxhdGl0dWRlKSkpKSBBUyBkaXN0YW5jZSc7CgkJJGhhdmluZ1tdID0gJ2Rpc3RhbmNlIDw9ICcuKGludCkkcmFkOwoJICB9CgogICAgaWYoIGlzc2V0KCR0aGlzLT5fZmlsdGVyWyduYW1lJ10pICYmICR0aGlzLT5fZmlsdGVyWyduYW1lJ10gIT0gJycpCiAgICAgIHsKCQkkc3RyID0gJHRoaXMtPl9maWx0ZXJbJ25hbWUnXTsKCQkkc3RyID0gc3RyX3JlcGxhY2UoJyonLCclJywkc3RyKTsKCQkkd2hlcmVbXSA9ICdDLmNvbXBhbnlfbmFtZSBMSUtFID8nOwoJCSRwYXJtc1tdID0gJHN0cjsKICAgICAgfQoKICAgIGlmKCBpc3NldCgkdGhpcy0+X2ZpbHRlclsnYWRkcmVzcyddKSAmJiAkdGhpcy0+X2ZpbHRlclsnYWRkcmVzcyddICE9ICcnKQogICAgICB7CgkJJHN0ciA9ICR0aGlzLT5fZmlsdGVyWydhZGRyZXNzJ107CgkJJHN0ciA9IHN0cl9yZXBsYWNlKCcqJywnJScsJHN0cik7CgkJJHdoZXJlW10gPSAnQy5hZGRyZXNzIExJS0UgPyc7CgkJJHBhcm1zW10gPSAkc3RyOwogICAgICB9CgogICAgJGZsZCA9ICR0aGlzLT5fZmlsdGVyLT5nZXRfc29ydF9mbGQoKTsKICAgIGlmKCBpc19hcnJheSgkZmxkKSApCiAgICAgIHsKCQkvLyBzb3J0IGJ5IGN1c3RvbSBmaWVsZC4KCQkkc3RyID0gJyBMRUZUIEpPSU4gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9jb21wZGlyX2ZpZWxkdmFscyBGVkEgT04gQy5pZCA9IEZWQS5jb21wYW55X2lkIEFORCBGVkEuZmllbGRkZWZfaWQgPSAnLiRkYi0+cXN0cigkZmxkWydpZCddKTsKCQkkcXVlcnkgLj0gJHN0cjsKCQkkcXVlcnkyIC49ICRzdHI7CgkJJHNvcnRieSA9ICdGVkEudmFsdWUnOwogICAgICB9CgogICAgaWYoIGlzc2V0KCR0aGlzLT5fZmlsdGVyWydoaWVyJ10pICYmICR0aGlzLT5fZmlsdGVyWydoaWVyJ10gIT0gJycgKQogICAgICB7CgkJJHN0ciA9ICcgTEVGVCBPVVRFUiBKT0lOICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfY29tcGRpcl9oaWVyIENICiAgICAgICAgICAgICAgIE9OIENILmlkID0gQy5oaWVyX2lkJzsKCQkkcXVlcnkgLj0gJHN0cjsKCQkkcXVlcnkyIC49ICRzdHI7CgkJJGhpZXJhcmNoeSA9IGNtc19odG1sX2VudGl0eV9kZWNvZGUodHJpbSgkdGhpcy0+X2ZpbHRlclsnaGllciddKSk7CgkJJGhpZXJhcmNoeSA9IHRyaW0oJGhpZXJhcmNoeSk7CgkJJGhpZXJhcmNoeSA9IHRyaW0oc3RyX3JlcGxhY2UoIiciLCdfJywkaGllcmFyY2h5KSk7CgkJaWYgKHN0cnBvcygkaGllcmFyY2h5LCAnfCcpICE9PSBGQUxTRSB8fCBzdHJwb3MoJGhpZXJhcmNoeSwgJyonKSAhPT0gRkFMU0UpCgkJICB7CgkJCS8vIHdpbGRjYXJkIGNhdGVnb3J5CgkJCSRoaWVyYXJjaHkgPSB0cmltKHN0cl9yZXBsYWNlKCcqJywnJScsJGhpZXJhcmNoeSkpOwoJCQkkd2hlcmVbXSA9ICJ1cHBlcihDSC5sb25nX25hbWUpIExJS0UgdXBwZXIoPykiOwoJCSAgfQoJCWVsc2UKCQkgIHsKCQkJLy8gaGFyZCBjb2RlZCBjYXRlZ29yeSBuYW1lCgkJCSR3aGVyZVtdID0gJ0NILm5hbWUgPSA/JzsKCQkgIH0KCQkkcGFybXNbXSA9ICRoaWVyYXJjaHk7CiAgICAgIH0KCiAgICBpZiggaXNzZXQoJHRoaXMtPl9maWx0ZXJbJ2NhdGVnb3J5aWQnXSkgJiYgJHRoaXMtPl9maWx0ZXJbJ2NhdGVnb3J5aWQnXSA+IDAgKQogICAgICB7CgkJJHN0ciA9ICcgSU5ORVIgSk9JTiAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfY29tcGFueV9jYXRlZ29yaWVzIENDIE9OIENDLmNvbXBhbnlfaWQgPSBDLmlkJzsKCQkkcXVlcnkgLj0gJHN0cjsKCQkkcXVlcnkyIC49ICRzdHI7CgkJJHdoZXJlW10gPSAnQ0MuY2F0ZWdvcnlfaWQgPSA/JzsgLy8gdGhpcyBBTkQgY291bGQgZ28gaW4gdGhlIGpvaW4/CgkJJHBhcm1zW10gPSAoaW50KSR0aGlzLT5fZmlsdGVyWydjYXRlZ29yeWlkJ107CiAgICAgIH0KICAgIGVsc2UgaWYoIGlzc2V0KCR0aGlzLT5fZmlsdGVyWydjYXRlZ29yeSddKSAmJiAkdGhpcy0+X2ZpbHRlclsnY2F0ZWdvcnknXSAhPSAnJyApCiAgICAgIHsKCQkvLyBnZXQgdGhlIGxpc3Qgb2YgY2F0ZWdvcmllcy4KCQkkaWRzID0gc2VsZjo6Z2V0X2NhdGVnb3J5X2lkcygkdGhpcy0+X2ZpbHRlclsnY2F0ZWdvcnknXSk7CgkJaWYoIGlzX2FycmF5KCRpZHMpICYmIGNvdW50KCRpZHMpICkKCQkgIHsKCQkJJHN0ciA9ICcgSU5ORVIgSk9JTiAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfY29tcGFueV9jYXRlZ29yaWVzIENDIE9OIENDLmNvbXBhbnlfaWQgPSBDLmlkIEFORCBDQy5jYXRlZ29yeV9pZCBJTiAoJy5pbXBsb2RlKCcsJywkaWRzKS4nKSc7CgkJCSRxdWVyeSAuPSAkc3RyOwoJCQkkcXVlcnkyIC49ICRzdHI7CgkJCS8vJHdoZXJlW10gPSAnQ0MuY2F0ZWdvcnlfaWQgIElOICgnLmltcGxvZGUoJywnLCRpZHMpLicpJzsKCgkJCWlmKCBpc3NldCgkdGhpcy0+X2ZpbHRlclsnY2F0ZWdvcnkyJ10pICYmICR0aGlzLT5fZmlsdGVyWydjYXRlZ29yeTInXSAhPSAnJyAgKQoJCQkgIHsKCQkJCS8vIHNwZWNpZnkgYW4gYW5kIG9wZXJhdGlvbiBmb3IgY2F0ZWdvcmllcy4KCQkJCSRpZHMyID0gc2VsZjo6Z2V0X2NhdGVnb3J5X2lkcygkdGhpcy0+X2ZpbHRlclsnY2F0ZWdvcnkyJ10pOwoJCQkJaWYoIGlzX2FycmF5KCRpZHMyKSAmJiBjb3VudCgkaWRzMikgKQoJCQkJICB7CgkJCQkJJHN0ciA9ICcgSU5ORVIgSk9JTiAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfY29tcGFueV9jYXRlZ29yaWVzIENDMiBPTiBDQzIuY29tcGFueV9pZCA9IEMuaWQgQU5EIENDMi5jYXRlZ29yeV9pZCBJTiAoJy5pbXBsb2RlKCcsJywkaWRzMikuJyknOwoJCQkJCSRxdWVyeSAuPSAkc3RyOwoJCQkJCSRxdWVyeTIgLj0gJHN0cjsKCQkJCQkvLyR3aGVyZVtdID0gJ0NDLmNhdGVnb3J5X2lkICBJTiAoJy5pbXBsb2RlKCcsJywkaWRzMikuJyknOwoJCQkJICB9CgoJCQkJaWYoIGlzc2V0KCR0aGlzLT5fZmlsdGVyWydjYXRlZ29yeTMnXSkgJiYgJHRoaXMtPl9maWx0ZXJbJ2NhdGVnb3J5MyddICE9ICcnICApCgkJCQkgIHsKCQkJCQkvLyBhbiBhbmQgb24gbW9yZSBjYXRlZ29yaWVzCgkJCQkJJGlkczMgPSBzZWxmOjpnZXRfY2F0ZWdvcnlfaWRzKCR0aGlzLT5fZmlsdGVyWydjYXRlZ29yeTMnXSk7CgkJCQkJaWYoIGlzX2FycmF5KCRpZHMzKSAmJiBjb3VudCgkaWRzMykgKQoJCQkJCSAgewoJCQkJCQkkc3RyID0gJyBJTk5FUiBKT0lOICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfY29tcGRpcl9jb21wYW55X2NhdGVnb3JpZXMgQ0MzIE9OIENDMy5jb21wYW55X2lkID0gQy5pZCBBTkQgQ0MzLmNhdGVnb3J5X2lkIElOICgnLmltcGxvZGUoJywnLCRpZHMzKS4nKSc7CgkJCQkJCSRxdWVyeSAuPSAkc3RyOwoJCQkJCQkkcXVlcnkyIC49ICRzdHI7CgkJCQkJCS8vJHdoZXJlW10gPSAnQ0MuY2F0ZWdvcnlfaWQgIElOICgnLmltcGxvZGUoJywnLCRpZHMzKS4nKSc7CgkJCQkJICB9CgkJCQkgIH0KCQkJICB9CgkJICB9CiAgICAgIH0KCgkvLyBidWlsZCB0aGUgcXVlcnkKCSRxdWVyeSA9ICdTRUxFQ1QgJy5pbXBsb2RlKCcsJywkY29sdW1ucykuJyAnLiRxdWVyeTsKCgkvLyBidWlsZCB0aGUgcG9zdCBmaWx0ZXIgY29uZGl0aW9ucy4KCWlmKCBjb3VudCgkcmVxX3doZXJlKSB8fCBjb3VudCgkd2hlcmUpICkKCSAgewoJCSRxdWVyeSA9ICRxdWVyeSAuICcgV0hFUkUgJzsKCQkkcXVlcnkyID0gJHF1ZXJ5MiAuICcgV0hFUkUgJzsKCgkJaWYoIGNvdW50KCRyZXFfd2hlcmUpICkKCQkgIHsKCQkJJHF1ZXJ5ID0gJHF1ZXJ5IC4gJygnLmltcGxvZGUoJyBBTkQgJywkcmVxX3doZXJlKS4nKSc7CgkJCSRxdWVyeTIgPSAkcXVlcnkyIC4gJygnLiBpbXBsb2RlKCcgQU5EICcsJHJlcV93aGVyZSkuJyknOwoJCSAgfQoKCQlpZiggY291bnQoJHdoZXJlKSApCgkJICB7CgkJCWlmKCBjb3VudCgkcmVxX3doZXJlKSApCgkJCSAgewoJCQkJJHF1ZXJ5ID0gJHF1ZXJ5IC4gJyBBTkQgJzsKCQkJCSRxdWVyeTIgPSAkcXVlcnkyIC4gJyBBTkQgJzsKCQkJICB9CgkJCSRleHByID0gJyBBTkQgJzsKCQkJaWYoICEkdGhpcy0+X2ZpbHRlclsnbWF0Y2hhbGwnXSApCgkJCSAgewoJCQkJJGV4cHIgPSAnIE9SICc7CgkJCSAgfQoJCQkkcXVlcnkgPSAkcXVlcnkgLiAnKCcuaW1wbG9kZSgkZXhwciwkd2hlcmUpLicpJzsKCQkJJHF1ZXJ5MiA9ICRxdWVyeTIgLiAnKCcgLiBpbXBsb2RlKCRleHByLCR3aGVyZSkuJyknOwoJCSAgfQoJICB9CgoJLy8gbm93IGRvIGhhdmluZyBzdHVmZi4uCglpZiggY291bnQoJGhhdmluZykgKQoJICB7CgkJJHF1ZXJ5IC49ICcgSEFWSU5HICcuaW1wbG9kZSgnIEFORCAnLCRoYXZpbmcpOwoJCSRxdWVyeTIgLj0gJyBIQVZJTkcgJy5pbXBsb2RlKCcgQU5EICcsJGhhdmluZyk7CgkgIH0KCiAgICAvLyBub3cgZG8gc29ydGluZyBzdHVmZi4KICAgICRjYXN0ID0gJyc7CiAgICBpZiggaXNfb2JqZWN0KCRmbGQpICkKICAgICAgewoJCWxpc3QoJGp1bmssJGZpZWxkLCRzb3J0X3R5cGUpID0gZXhwbG9kZSgnOicsJHNvcnRieSk7CgkJaWYoICRzb3J0X3R5cGUgPT0gJ2knICkKCQkgIHsKCQkJJGNhc3QgPSAnU0lHTkVEIElOVEVHRVInOwoJCSAgfQoJCWVsc2UgaWYoICRzb3J0X3R5cGUgPT0gJ2YnICkKCQkgIHsKCQkJJGNhc3QgPSAnREVDSU1BTCc7CgkJICB9CiAgICAgIH0KCiAgICBpZiggJGNhc3QgKQogICAgICB7CgkJJHF1ZXJ5IC49ICIgT1JERVIgQlkgQ0FTVCh7JHNvcnRieX0gQVMgeyRjYXN0fSAkc29ydG9yZGVyIjsKICAgICAgfQogICAgZWxzZQogICAgICB7CgkJJHF1ZXJ5IC49ICIgT1JERVIgQlkgJHNvcnRieSAkc29ydG9yZGVyIjsKICAgICAgfQoKICAgICR0aGlzLT5fY291bnQgPSAkZGItPkdldE9uZSgkcXVlcnkyLCRwYXJtcyk7CiAgICAkdGhpcy0+X3F1ZXJpZWQgPSBUUlVFOwogICAgaWYoICEkdGhpcy0+X2ZpbHRlclsnb25seWNvdW50J10gKQogICAgICB7CgkJJG9mZnNldCA9ICgkdGhpcy0+X2ZpbHRlclsncGFnZSddLTEpKiR0aGlzLT5fZmlsdGVyWydwYWdlbGltaXQnXTsKCQkkdGhpcy0+X3Jlc3VsdHNldCA9ICRkYi0+U2VsZWN0TGltaXQoJHF1ZXJ5LCAkdGhpcy0+X2ZpbHRlclsncGFnZWxpbWl0J10sICRvZmZzZXQsICRwYXJtcyk7CiAgICAgIH0KICB9CgoKICBwdWJsaWMgZnVuY3Rpb24gZ2V0X3RvdGFsX21hdGNoZXMoKQogIHsKICAgIGlmKCAhJHRoaXMtPl9xdWVyaWVkICkgCiAgICAgIHsKCQkkdGhpcy0+X3F1ZXJ5KCk7CiAgICAgIH0KICAgIHJldHVybiAkdGhpcy0+X2NvdW50OwogIH0KCgogIHB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gZ2V0X2NvbXBhbnkoJGRhdGEsJGRldGFpbHBhZ2UsJGRlZXAgPSBGQUxTRSkKICB7CgkkY29uZmlnID0gY21zbXMoKS0+R2V0Q29uZmlnKCk7CgkkY2Rtb2QgPSBjbXNfdXRpbHM6OmdldF9tb2R1bGUoJ0NvbXBhbnlEaXJlY3RvcnknKTsKCgkkcm93ID0gY2dlX2FycmF5Ojp0b19vYmplY3QoJGRhdGEpOwoJJGltYWdlZGlyID0gY21zX2pvaW5fcGF0aCgkY29uZmlnWyd1cGxvYWRzX3BhdGgnXS4nL2NvbXBhbnlkaXJlY3RvcnknLCdpZCcuJHJvdy0+aWQpOwoJJGltYWdldXJsID0gJGNvbmZpZ1sndXBsb2Fkc191cmwnXS4iL2NvbXBhbnlkaXJlY3RvcnkvaWR7JHJvdy0+aWR9IjsKCSRwYXJtcyA9IGFycmF5KCk7CgkkcGFybXNbJ2NvbXBhbnlpZCddID0gJHJvdy0+aWQ7CgljZ2VfdG1wZGF0YTo6c2V0KCdjb21wYW55ZGlyXycuJHJvdy0+aWQsJHJvdyk7CglpZiggJGRldGFpbHBhZ2UgPiAwICkgJHJvdy0+ZGV0YWlsX3VybCA9ICRjZG1vZC0+Y3JlYXRlX3VybCgnY2RfJywnZGV0YWlscycsJGRldGFpbHBhZ2UsJHBhcm1zKTsKCSRyb3ctPnBpY3R1cmVfcGF0aCA9ICRjb25maWdbJ3Jvb3RfdXJsJ10uJy91cGxvYWRzL2NvbXBhbnlkaXJlY3RvcnkvaWQnLiRyb3ctPmlkLicvJy4kcm93LT5waWN0dXJlX2xvY2F0aW9uOwoJJHJvdy0+bG9nb19wYXRoID0gJGNvbmZpZ1sncm9vdF91cmwnXS4nL3VwbG9hZHMvY29tcGFueWRpcmVjdG9yeS9pZCcuJHJvdy0+aWQuJy8nLiRyb3ctPmxvZ29fbG9jYXRpb247CglpZiggISRkZWVwICkgcmV0dXJuICRyb3c7CgoJJGZpZWxkZGVmcyA9ICRjZG1vZC0+R2V0RmllbGREZWZzRm9yQ29tcGFueSgkcm93LT5pZCk7CglpZiggaXNfYXJyYXkoJGZpZWxkZGVmcykgJiYgY291bnQoJGZpZWxkZGVmcykgKQoJICB7CgkJJGZkYXJyYXkgPSBhcnJheSgpOwoJCWZvciggJGkgPSAwOyAkaSA8IGNvdW50KCRmaWVsZGRlZnMpOyAkaSsrICkKCQkgIHsKCQkJJG9uZWRlZiA9JiAkZmllbGRkZWZzWyRpXTsKCQkJJHRtcHYgPSAnJzsKCQkJaWYoIGlzc2V0KCRvbmVkZWYtPmRyb3Bkb3duX2RhdGEpICYmICFlbXB0eSgkb25lZGVmLT5kcm9wZG93bl9kYXRhKSApCgkJCSAgewoJCQkJJG9uZWRlZi0+ZHJvcGRvd25fZGF0YSA9IGNkX3V0aWxzOjpkZWNvZGVfZHJvcGRvd25fZGF0YSgkb25lZGVmLT5kcm9wZG93bl9kYXRhKTsKCQkJCSR0bXB2ID0gYXJyYXlfZmxpcCgkb25lZGVmLT5kcm9wZG93bl9kYXRhKTsKCQkJICB9CgoJCQkkdmFsdWUgPSAkb25lZGVmLT52YWx1ZTsKCQkJJHRtcCA9IGFycmF5KCd0aHVtYl8nLCdwcmV2aWV3XycsJycpOwoJCQlmb3JlYWNoKCAkdG1wIGFzICRvbmUgKQoJCQkgIHsKCQkJCSRmbiA9IGNtc19qb2luX3BhdGgoJGltYWdlZGlyLCRvbmUuJHZhbHVlKTsKCQkJCWlmKCBmaWxlX2V4aXN0cygkZm4pICkKCQkJCSAgewoJCQkJCSRvbmVkZWYtPnRodW1iX3VybCA9ICRpbWFnZXVybC4nLycuJG9uZS4kdmFsdWU7CgkJCQkgIH0KCQkJICB9CgoJCQlpZiggaXNfYXJyYXkoJHRtcHYpICYmIGNvdW50KCR0bXB2KSApCgkJCSAgewoJCQkJJG9uZWRlZi0+ZHJvcGRvd25fdmFsdWUgPSAkdG1wdlskb25lZGVmLT52YWx1ZV07CgkJCSAgfQoJCQkkZmRhcnJheVskb25lZGVmLT5uYW1lXSA9ICRvbmVkZWY7CgkJICB9CgkJJHJvdy0+ZmllbGRzID0gJGZkYXJyYXk7CgkgIH0KCgkvLyBnZXQgdGhlIGNhdGVnb3JpZXMuCgkkY2F0ZWdvcmllcyA9ICRjZG1vZC0+R2V0Q2F0ZWdvcmllc0ZvckNvbXBhbnkoJHJvdy0+aWQpOwoJaWYoIGNvdW50KCRjYXRlZ29yaWVzKSA+IDAgKQoJICB7CgkJJHJlcyA9IGFycmF5KCk7CgkJZm9yZWFjaCggJGNhdGVnb3JpZXMgYXMgJG9uZWNhdCApCgkJICB7CgkJCWlmKCAhJG9uZWNhdC0+dmFsdWUgKSBjb250aW51ZTsKCgkJCSRwYXJtcyA9IGFycmF5KCk7CgkJCSRwYXJtc1snY2F0ZWdvcnlpZCddID0gJG9uZWNhdC0+aWQ7CgkJCSRvbmVjYXQtPnVybCA9ICRjZG1vZC0+Y3JlYXRlX3VybCgkaWQsJ2RlZmF1bHQnLCRzdW1tYXJ5cGFnZSwkcGFybXMpOwoJCQkkcmVzWyRvbmVjYXQtPm5hbWVdID0gJG9uZWNhdDsKCQkgIH0KCQlpZiggY291bnQoJHJlcykgKQoJCSAgewoJCQkkcm93LT5jYXRlZ29yaWVzID0gJHJlczsKCQkgIH0KCSAgfQoKCXJldHVybiAkcm93OwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIGdldF9yZXN1bHRzKCRpZCA9ICdjZF8nLCRzdW1tYXJ5cGFnZSA9ICcnLCRkZXRhaWxwYWdlID0gJycpCiAgewogICAgaWYoICEkdGhpcy0+X3F1ZXJpZWQgKSAKICAgICAgewoJCSR0aGlzLT5fcXVlcnkoKTsKICAgICAgfQogICAgaWYoIGlzX251bGwoJHRoaXMtPl9yZXN1bHRzZXQpICkKICAgICAgewoJCXRocm93IG5ldyBFeGNlcHRpb24oJ1Jlc3VsdCBzZXQgZG9lcyBub3QgZXhpc3QnKTsKICAgICAgfQoKCSRjZG1vZCA9IGNtc191dGlsczo6Z2V0X21vZHVsZSgnQ29tcGFueURpcmVjdG9yeScpOwoJaWYoIChpbnQpJHN1bW1hcnlwYWdlIDwgMSApCgkgIHsKCQlpZiggaXNzZXQoJHRoaXMtPl9maWx0ZXJbJ3JldHVybmlkJ10pICkKCQkgIHsKCQkJJHN1bW1hcnlwYWdlID0gKGludCkkdGhpcy0+X2ZpbHRlclsncmV0dXJuaWQnXTsKCQkgIH0KCQllbHNlCgkJICB7CgkJCSRzdW1tYXJ5cGFnZSA9IGNtc21zKCktPkdldENvbnRlbnRPcGVyYXRpb25zKCktPkdldERlZmF1bHRDb250ZW50KCk7CgkJICB9CgkgIH0KCWdsb2JhbCAkQ01TX0FETUlOX1BBR0U7CglpZiggKGludCkkZGV0YWlscGFnZSA8IDEgJiYgIWlzc2V0KCRDTVNfQURNSU5fUEFHRSkgKQoJICB7CgkJaWYoIGlzc2V0KCR0aGlzLT5fZmlsdGVyWydkZXRhaWxwYWdlJ10pICYmICR0aGlzLT5fZmlsdGVyWydkZXRhaWxwYWdlJ10gPiAwICkKCQkgIHsKCQkJJGRldGFpbHBhZ2UgPSAoaW50KSR0aGlzLT5fZmlsdGVyWydkZXRhaWxwYWdlJ107CgkJICB9CgkJZWxzZQoJCSAgewoJCQkkdG1wID0gJGNkbW9kLT5HZXRQcmVmZXJlbmNlKCdkZXRhaWxwYWdlJywtMSk7CgkJCWlmKCAkdG1wID4gMCkgCgkJCSAgJGRldGFpbHBhZ2UgPSAkdG1wOwoJCQllbHNlCgkJCSAgJGRldGFpbHBhZ2UgPSBjbXNtcygpLT5HZXRDb250ZW50T3BlcmF0aW9ucygpLT5HZXREZWZhdWx0Q29udGVudCgpOwoJCSAgfQoJICB9CgoJJGNvbmZpZyA9IGNtc21zKCktPkdldENvbmZpZygpOwogICAgJHJlc3VsdCA9IGFycmF5KCk7CglpZiggISR0aGlzLT5fZmlsdGVyWydkZWVwJ10gKQoJICB7CgkJd2hpbGUoICR0aGlzLT5fcmVzdWx0c2V0ICYmICEkdGhpcy0+X3Jlc3VsdHNldC0+RU9GICkKCQkgIHsKCQkJJGRhdGEgPSAkdGhpcy0+X3Jlc3VsdHNldC0+ZmllbGRzOwoJCQkkcmVzdWx0WyRkYXRhWydpZCddXSA9IHNlbGY6OmdldF9jb21wYW55KCRkYXRhLCRkZXRhaWxwYWdlKTsKCQkJJHRoaXMtPl9yZXN1bHRzZXQtPk1vdmVOZXh0KCk7CgkJICB9CgkgIH0KCWVsc2UKCSAgewoJCSRpZHMgPSBhcnJheSgpOwoJCXdoaWxlKCAkdGhpcy0+X3Jlc3VsdHNldCAmJiAhJHRoaXMtPl9yZXN1bHRzZXQtPkVPRiApCgkJICB7CgkJCSRkYXRhID0gJHRoaXMtPl9yZXN1bHRzZXQtPmZpZWxkczsKCQkJJGlkc1tdID0gJGRhdGFbJ2lkJ107CgkJCSR0aGlzLT5fcmVzdWx0c2V0LT5Nb3ZlTmV4dCgpOwoJCSAgfQoJCSR0aGlzLT5fcmVzdWx0c2V0LT5Nb3ZlRmlyc3QoKTsKCgkJaWYoIGNvdW50KCRpZHMpICkKCQkgIHsKCQkJJGNkbW9kLT5wcmVsb2FkRmllbGREYXRhKCRpZHMpOwoJCQkkY2Rtb2QtPnByZWxvYWRDYXRlZ29yeURhdGEoJGlkcyk7CgkJCQoJCQl3aGlsZSggISR0aGlzLT5fcmVzdWx0c2V0LT5FT0YgKQoJCQkgIHsKCQkJCSRkYXRhID0gJHRoaXMtPl9yZXN1bHRzZXQtPmZpZWxkczsKCQkJCSRyZXN1bHRbJGRhdGFbJ2lkJ11dID0gc2VsZjo6Z2V0X2NvbXBhbnkoJGRhdGEsJGRldGFpbHBhZ2UsVFJVRSk7CgkJCQkkdGhpcy0+X3Jlc3VsdHNldC0+TW92ZU5leHQoKTsKCQkJICB9CgkJICB9CgkgIH0KCiAgICByZXR1cm4gJHJlc3VsdDsKICB9CgoKICBwdWJsaWMgZnVuY3Rpb24gZ2V0X3Jlc3VsdF9jb3VudCgpCiAgewoJaWYoICEkdGhpcy0+X3F1ZXJpZWQgKSAkdGhpcy0+X3F1ZXJ5KCk7CglyZXR1cm4gJHRoaXMtPl9yZXN1bHRzZXQtPlJlY29yZENvdW50KCk7CiAgfQoKCiAgcHVibGljIGZ1bmN0aW9uICZnZXRfcGFnaW5hdGlvbigpCiAgewoJaWYoICEkdGhpcy0+X3F1ZXJpZWQgKSAkdGhpcy0+X3F1ZXJ5KCk7CgkKCSRwYWdpbmF0aW9uID0gbmV3IGNkX3N1bW1hcnlfcGFnaW5hdGlvbigkdGhpcy0+X2ZpbHRlciwkdGhpcyk7CglyZXR1cm4gJHBhZ2luYXRpb247CiAgfQp9IC8vIGVuZCBvZiBjbGFzcwoKIwojIEVPRgojCj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/lib/class.cd_summary_pagination.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LTIwMTEgYnkgUm9iZXJ0IENhbXBiZWxsIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgYW5kIHZhcmlvdXMgd2F5cyB0byBkaXNwbGF5CiMgIGNvbXBhbnkgaW5mb3JtYXRpb24gZm9yIHVzZSBpbiBkaXJlY3RvcmllcyBldGMuCiMgCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1LTIwMTAgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBIb3dldmVyLCBhcyBhIHNwZWNpYWwgZXhjZXB0aW9uIHRvIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgZGlzdHJpYnV0ZWQKIyBhcyBhbiBhZGRvbiBtb2R1bGUgdG8gQ01TIE1hZGUgU2ltcGxlLiAgWW91IG1heSBub3QgdXNlIHRoaXMgc29mdHdhcmUKIyBpbiBhbnkgTm9uIEdQTCB2ZXJzaW9uIG9mIENNUyBNYWRlIHNpbXBsZSwgb3IgaW4gYW55IHZlcnNpb24gb2YgQ01TCiMgTWFkZSBzaW1wbGUgdGhhdCBkb2VzIG5vdCBpbmRpY2F0ZSBjbGVhcmx5IGFuZCBvYnZpb3VzbHkgaW4gaXRzIGFkbWluIAojIHNlY3Rpb24gdGhhdCB0aGUgc2l0ZSB3YXMgYnVpbHQgd2l0aCBDTVMgTWFkZSBzaW1wbGUuCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojRU5EX0xJQ0VOU0UKCmNsYXNzIGNkX3N1bW1hcnlfcGFnaW5hdGlvbgp7CiAgcHJpdmF0ZSBzdGF0aWMgJF9rZXlzID0gYXJyYXkoJ3BhZ2Vjb3VudCcsJ3BhZ2UnLCdwYWdlbGltaXQnKTsKICBwcml2YXRlICRfaW5saW5lX2xpbmtzID0gMDsKICBwcml2YXRlICRfaWQgPSAnY2QnOwogIHByaXZhdGUgJF9hY3Rpb24gPSAnZGVmYXVsdCc7CiAgcHJpdmF0ZSAkX3JldHVybmlkOwogIHByaXZhdGUgJF9maWx0ZXI7CiAgcHJpdmF0ZSAkX3F1ZXJ5OwogIHByaXZhdGUgJF9ucGFnZXM7CiAgcHJpdmF0ZSAkX2NiOwoKCgogIHB1YmxpYyBmdW5jdGlvbiBfX2NvbnN0cnVjdChjZF9jb21wYW55X2ZpbHRlciAkZmlsdGVyLCBjZF9jb21wYW55X3F1ZXJ5ICRxdWVyeSkKICB7CgkkdGhpcy0+X2lkID0gJGZpbHRlclsnaWQnXTsKCWdsb2JhbCAkQ01TX0FETUlOX1BBR0U7CglpZiggIWlzc2V0KCRDTVNfQURNSU5fUEFHRSkgKQoJICB7CgkJJHRoaXMtPl9yZXR1cm5pZCA9IChpbnQpJGZpbHRlclsncmV0dXJuaWQnXTsKCSAgfQoJZWxzZQoJICB7CgkJJHRoaXMtPl9pZCA9ICdtMV8nOwoJICB9CiAgICAkdGhpcy0+X2ZpbHRlciAgID0gJGZpbHRlcjsKICAgICR0aGlzLT5fcXVlcnkgICAgPSAkcXVlcnk7CiAgfQoKCiAgcHVibGljIGZ1bmN0aW9uIHNldF9hY3Rpb24oJGFjdGlvbikKICB7CglpZiggJGFjdGlvbiApICR0aGlzLT5fYWN0aW9uID0gJGFjdGlvbjsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBzZXRfaW5saW5lX2xpbmtzKCRmbGFnID0gVFJVRSkKICB7CgkkdGhpcy0+X2lubGluZV9saW5rcyA9ICRmbGFnOwogIH0KCgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfcGFnZV9jb3VudCgpCiAgewogICAgaWYoIGlzX251bGwoJHRoaXMtPl9ucGFnZXMpICkKICAgICAgewoJCSRuaXRlbXMgPSAkdGhpcy0+X3F1ZXJ5LT5nZXRfdG90YWxfbWF0Y2hlcygpOwoJCSRsaW1pdCA9ICR0aGlzLT5fZmlsdGVyWydwYWdlbGltaXQnXTsKCQkKCQkkbnBhZ2VzID0gKGludCkoJG5pdGVtcyAvICRsaW1pdCk7CgkJaWYoICRuaXRlbXMgJSAkbGltaXQgKSAkbnBhZ2VzKys7CgkJCgkJJHRoaXMtPl9ucGFnZXMgPSAkbnBhZ2VzOwogICAgICB9CiAgICByZXR1cm4gJHRoaXMtPl9ucGFnZXM7CiAgfQoKCiAgcHVibGljIGZ1bmN0aW9uIGdldF9jdXJyZW50X3BhZ2UoKQogIHsKICAgIHJldHVybiAoaW50KSgkdGhpcy0+X2ZpbHRlclsncGFnZSddKTsKICB9CgoKICBwdWJsaWMgZnVuY3Rpb24gZ2V0X3BhZ2VsaW1pdCgpCiAgewogICAgcmV0dXJuICR0aGlzLT5fZmlsdGVyWydwYWdlbGltaXQnXTsKICB9CgoKICBwdWJsaWMgZnVuY3Rpb24gZ2V0X2ZpcnN0cGFnZV91cmwoKQogIHsKICAgIHJldHVybiAkdGhpcy0+Z2V0X3BhZ2VfdXJsKDEpOwogIH0KCgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfcHJldnBhZ2VfdXJsKCkKICB7CiAgICByZXR1cm4gJHRoaXMtPmdldF9wYWdlX3VybCgkdGhpcy0+Z2V0X2N1cnJlbnRfcGFnZSgpLTEpOwogIH0KCgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfbmV4dHBhZ2VfdXJsKCkKICB7CiAgICByZXR1cm4gJHRoaXMtPmdldF9wYWdlX3VybCgkdGhpcy0+Z2V0X2N1cnJlbnRfcGFnZSgpKzEpOwogIH0KCgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfbGFzdHBhZ2VfdXJsKCkKICB7CiAgICByZXR1cm4gJHRoaXMtPmdldF9wYWdlX3VybCgkdGhpcy0+Z2V0X3BhZ2VfY291bnQoKSk7CiAgfQoKCiAgcHVibGljIGZ1bmN0aW9uIGdldF9wYWdlX3VybCgkcGFnZW51bSkKICB7CiAgICAkcGFnZW51bSA9IChpbnQpJHBhZ2VudW07CiAgICAkcGFnZW51bSA9IG1heCgxLCRwYWdlbnVtKTsKICAgICRwYWdlbnVtID0gbWluKCRwYWdlbnVtLCR0aGlzLT5nZXRfcGFnZV9jb3VudCgpKTsKICAgICRwYXJtcyA9ICR0aGlzLT5fZmlsdGVyLT5nZXRfcGFyYW1zKCk7CiAgICAkcGFybXNbJ3BhZ2UnXSA9ICRwYWdlbnVtOwogICAgCiAgICAkbW9kID0gY21zX3V0aWxzOjpnZXRfbW9kdWxlKCdDb21wYW55RGlyZWN0b3J5Jyk7CiAgICAkdXJsID0gJG1vZC0+Y3JlYXRlX3VybCgkdGhpcy0+X2lkLCR0aGlzLT5fYWN0aW9uLCR0aGlzLT5fcmV0dXJuaWQsJHBhcm1zLCR0aGlzLT5faW5saW5lX2xpbmtzKTsKICAgIHJldHVybiAkdXJsOwogIH0KCgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfcGFnZV9saW5rKCRwYWdlbnVtLCR0ZXh0KQogIHsKICAgICRwYWdlbnVtID0gKGludCkkcGFnZW51bTsKICAgICRwYWdlbnVtID0gbWF4KDEsJHBhZ2VudW0pOwogICAgJHBhZ2VudW0gPSBtaW4oJHBhZ2VudW0sJHRoaXMtPmdldF9wYWdlX2NvdW50KCkpOwogICAgJHBhcm1zID0gJHRoaXMtPl9maWx0ZXItPmdldF9wYXJhbXMoKTsKICAgICRwYXJtc1sncGFnZSddID0gJHBhZ2VudW07CiAgICAKICAgICRtb2QgPSBjbXNfdXRpbHM6OmdldF9tb2R1bGUoJ0NvbXBhbnlEaXJlY3RvcnknKTsKCSRsaW5rID0gJG1vZC0+Q3JlYXRlTGluaygkdGhpcy0+X2lkLCR0aGlzLT5fYWN0aW9uLCR0aGlzLT5fcmV0dXJuaWQsJHRleHQsJHBhcm1zLCcnLGZhbHNlLCR0aGlzLT5faW5saW5lX2xpbmtzKTsKCXJldHVybiAkbGluazsKICB9Cgp9IC8vIHN1bW1hcnkgcGFnaW5hdGlvbgoKIwojIEVPRgojCj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/lib/class.cd_utils.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgpjbGFzcyBjZF91dGlscwp7CiAgcHJpdmF0ZSBzdGF0aWMgJF9yb3V0ZXNfbG9hZGVkID0gRkFMU0U7CgogIHByaXZhdGUgc3RhdGljIGZ1bmN0aW9uIGxvYWRfcm91dGVzKCkKICB7CglpZiggc2VsZjo6JF9yb3V0ZXNfbG9hZGVkICkgcmV0dXJuOwoKCWNtc19yb3V0ZV9tYW5hZ2VyOjpsb2FkX3JvdXRlcygpOwoJc2VsZjo6JF9yb3V0ZXNfbG9hZGVkID0gVFJVRTsKICB9CgoKICBwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIGdlbmVyYXRlX3VybCgkdG5hbWUpCiAgewoJJHR1cmwgPSAnJzsKCWlmKCAkdG5hbWUgPT0gJycgKSByZXR1cm4gJHR1cmw7CgoJJHN1ZmZpeCA9ICcnOwoJJGNvdW50ID0gMTsKCXNlbGY6OmxvYWRfcm91dGVzKCk7CgkkdG5hbWUgPSBtdW5nZV9zdHJpbmdfdG9fdXJsKCR0bmFtZSxmYWxzZSx0cnVlKTsKCXdoaWxlKCAkdHVybCA9PSAnJyAmJiAkY291bnQgPCAxMDAgKQoJICB7CgkJJHRtcCA9IHN0cnRvbG93ZXIoJHRuYW1lKTsKCQkkdG1wIC49ICRzdWZmaXg7CgkJJHRtcCA9IHRyaW0oJHRtcCwiIC9cdFxyXG5cMFx4MDgiKTsKCQkKCQkvLyBtYWtlIHN1cmUgdGhpcyB1cmwgaXNuJ3QgdGFrZW4uCgkJJHJvdXRlID0gY21zX3JvdXRlX21hbmFnZXI6OmZpbmRfbWF0Y2goJHRtcCk7CgkJaWYoICRyb3V0ZSApCgkJICB7CgkJCSRjb3VudCsrOwoJCQkkc3VmZml4ID0gJy0nLiRjb3VudDsKCQkgIH0KCQllbHNlCgkJICB7CgkJCS8vIGZvdW5kIG9uZS4KCQkJJHR1cmwgPSAkdG1wOwoJCQlicmVhazsKCQkgIH0KCSAgfQoKCXJldHVybiAkdHVybDsKICB9CgoKICBwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIHZhbGlkYXRlX3VybCgkdHVybCwkY2hlY2tfZXhpc3RzID0gZmFsc2UpCiAgewoJLy8gY2hlY2sgdGhlIHByb3ZpZGVkL2dlbmVyYXRlZCB1cmwuCgkkdHVybCA9IHRyaW0oJHR1cmwsIiAvXHRcclxuXDBceDA4Iik7CglpZiggZW1wdHkoJHR1cmwpIHx8IHN0YXJ0c3dpdGgoJHR1cmwsJy8nKSB8fCBlbmRzd2l0aCgkdHVybCwnLycpICkKCSAgewoJCXJldHVybiBGQUxTRTsKCSAgfQoKCS8vIGNoZWNrIGZvciBpbnZhbGlkIGNoYXJzLgoJJHRyYW5zbGF0ZWQgPSBtdW5nZV9zdHJpbmdfdG9fdXJsKCR0dXJsLGZhbHNlLHRydWUpOwoJaWYoIHN0cnRvbG93ZXIoJHRyYW5zbGF0ZWQpICE9IHN0cnRvbG93ZXIoJHR1cmwpICkKCSAgewoJCXJldHVybiBGQUxTRTsKCSAgfQoKCWlmKCAkY2hlY2tfZXhpc3RzICYmIGNtc19yb3V0ZV9tYW5hZ2VyOjpmaW5kX21hdGNoKCR0dXJsLFRSVUUpICkKCSAgewoJCXJldHVybiBGQUxTRTsKCSAgfQoJcmV0dXJuIFRSVUU7CiAgfQoKCiAgcHVibGljIHN0YXRpYyBmdW5jdGlvbiBkZWNvZGVfZHJvcGRvd25fZGF0YSgkc3RyKQogIHsKCWlmKCAhaXNfYXJyYXkoJHN0cikgKQoJICB7CgkJJHRtcCA9IGV4cGxvZGUoIlxuIiwkc3RyKTsKCSAgfQoJZWxzZQoJICB7CgkJcmV0dXJuICRzdHI7CgkgIH0KCgkkdG1wMiA9IGFycmF5KCk7CiAgICBmb3IoICRpID0gMDsgJGkgPCBjb3VudCgkdG1wKTsgJGkrKyApCiAgICAgIHsKCQlpZiggc3RycG9zKCR0bXBbJGldLCc9JykgPT09IEZBTFNFICkKCQkgIHsKCQkJJHRtcDJbdHJpbSgkdG1wWyRpXSldID0gdHJpbSgkdG1wWyRpXSk7CgkJICB9CgkJZWxzZQoJCSAgewoJCQlsaXN0KCRva2V5LCRvdmFsdWUpID0gZXhwbG9kZSgnPScsJHRtcFskaV0sMik7CgkJCSR0bXAyW3RyaW0oJG92YWx1ZSldID0gdHJpbSgkb2tleSk7CgkJICB9CiAgICAgIH0KCXJldHVybiAkdG1wMjsKICB9CgoKICBwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIGdldF9oaWVyYXJjaHkoJGFzX3RyZWUgPSBGQUxTRSwkcGFyZW50X2lkID0gLTEpCiAgewoJJGRiID0gY21zbXMoKS0+R2V0RGIoKTsKCglpZiggISRhc190cmVlICkKCSAgewoJCSRxdWVyeSA9ICdTRUxFQ1QgKiBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfY29tcGRpcl9oaWVyIE9SREVSIEJZIGhpZXJhcmNoeSc7CgkJJHRtcCA9ICRkYi0+R2V0QXJyYXkoJHF1ZXJ5KTsKCQlpZiggaXNfYXJyYXkoJHRtcCkgKSByZXR1cm4gJHRtcDsKCQlyZXR1cm47CgkgIH0KCgkkcXVlcnkgPSAnU0VMRUNUICogRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfaGllciBXSEVSRSBwYXJlbnRfaWQgPSA/IE9SREVSIEJZIGhpZXJhcmNoeSc7CgkkZGF0YSA9ICRkYi0+R2V0QXJyYXkoJHF1ZXJ5LGFycmF5KCRwYXJlbnRfaWQpKTsKCQoJaWYoIGlzX2FycmF5KCRkYXRhKSApCgkgIHsKCQlmb3IoICRpID0gMDsgJGkgPCBjb3VudCgkZGF0YSk7ICRpKysgKQoJCSAgewoJCQkkdG1wID0gc2VsZjo6Z2V0X2hpZXJhcmNoeSgkYXNfdHJlZSwkZGF0YVskaV1bJ2lkJ10pOwoJCQlpZiggaXNfYXJyYXkoJHRtcCkgJiYgY291bnQoJHRtcCkgKQoJCQkgIHsKCQkJCSRkYXRhWyRpXVsnY2hpbGRyZW4nXSA9ICR0bXA7CgkJCSAgfQoJCSAgfQoKCQlyZXR1cm4gJGRhdGE7CgkgIH0KICB9CgoKICBwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIGdldF9jb21wYW55KCRjb21wYW55X2lkLCRkZXRhaWxwYWdlID0gJycsJGRlZXAgPSBGQUxTRSkKICB7CglpZiggJGNvbXBhbnlfaWQgPD0gMCApIHJldHVybiBGQUxTRTsKCQoJJGRiID0gY21zbXMoKS0+R2V0RGIoKTsKCSRxdWVyeSA9ICdTRUxFQ1QgKiBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfY29tcGRpcl9jb21wYW5pZXMgV0hFUkUgaWQgPSA/JzsKCSRkYXRhID0gJGRiLT5HZXRSb3coJHF1ZXJ5LGFycmF5KChpbnQpJGNvbXBhbnlfaWQpKTsKCglpZiggaXNfYXJyYXkoJGRhdGEpICkKCSAgewoJCXJldHVybiBjZF9jb21wYW55X3F1ZXJ5OjpnZXRfY29tcGFueSgkZGF0YSwkZGV0YWlscGFnZSwkZGVlcCk7CgkgIH0KICB9CgoKICBwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIGdldF9oaWVyYXJjaHlfbGlzdCgkaGllcmlkID0gLTEpCiAgewoJJGRiID0gY21zbXMoKS0+R2V0RGIoKTsKCSRjZG1vZCA9IGNtc191dGlsczo6Z2V0X21vZHVsZSgnQ29tcGFueURpcmVjdG9yeScpOwogICAgICAKCSRsb25nbmFtZSA9ICcnOwoJJGl0ZW1zWycoJy4kY2Rtb2QtPkxhbmcoJ25vbmUnKS4nKSddID0gJy0xJzsKICAgICAgCgkkcXVlcnkgPSAiU0VMRUNUIGhpZXJhcmNoeSwgbG9uZ19uYW1lIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9jb21wZGlyX2hpZXIgV0hFUkUgaWQgPSA/IjsKCSRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksIGFycmF5KCRoaWVyaWQpKTsKCXdoaWxlICgkZGJyZXN1bHQgJiYgJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKSkKCSAgewoJCSRsb25nbmFtZSA9ICRyb3dbJ2hpZXJhcmNoeSddIC4gJyUnOwoJICB9CiAgICAgIAoJJHF1ZXJ5ID0gIlNFTEVDVCBpZCwgbmFtZSwgaGllcmFyY2h5LCBsb25nX25hbWUgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2NvbXBkaXJfaGllciBXSEVSRSBoaWVyYXJjaHkgbm90IGxpa2UgPyBPUkRFUiBieSBoaWVyYXJjaHkiOwoJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSwgYXJyYXkoJGxvbmduYW1lKSk7Cgl3aGlsZSAoJGRicmVzdWx0ICYmICRyb3cgPSAkZGJyZXN1bHQtPkZldGNoUm93KCkpCgkgIHsKCQkkaXRlbXNbJHJvd1snbG9uZ19uYW1lJ11dID0gJHJvd1snaWQnXTsKCSAgfQoKCXJldHVybiAkaXRlbXM7CiAgfQp9IC8vIGVuZCBvZiBjbGFzcwoKIwojIEVPRgojCj8+]]></data>
	</file>
	<file>
	  <filename>/method.install.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmICghaXNzZXQoJGdDbXMpKSBleGl0OwoKJGRiID0mICR0aGlzLT5HZXREYigpOwoKJGRpY3QgPSBOZXdEYXRhRGljdGlvbmFyeSgkZGIpOwokZmxkcyA9ICIKCWlkIEkgS0VZIEFVVE8sCgljb21wYW55X25hbWUgQygyNTUpIE5PVCBOVUxMLAoJYWRkcmVzcyBYLAoJdGVsZXBob25lIEMoNTApLAoJZmF4IEMoNTApLAoJY29udGFjdF9lbWFpbCBDKDI1NSksCgl3ZWJzaXRlIEMoMjU1KSwKCWRldGFpbHMgWCwKCXBpY3R1cmVfbG9jYXRpb24gQygyNTUpLAoJbG9nb19sb2NhdGlvbiBDKDI1NSksCgljcmVhdGVfZGF0ZSAiIC4gQ01TX0FET0RCX0RUIC4gIiwKCW1vZGlmaWVkX2RhdGUgIiAuIENNU19BRE9EQl9EVCAuICIsCiAgICBzdGF0dXMgQyg1MCksCiAgICBsYXRpdHVkZSBGLAogICAgbG9uZ2l0dWRlIEYsCiAgICBvd25lcl9pZCBJLAogICAgaGllcl9pZCBJLAogICAgdXJsIEMoMjU1KQoiOwoKJHRhYm9wdGFycmF5ID0gYXJyYXkoJ215c3FsJyA9PiAnVFlQRT1NeUlTQU0nKTsKJHNxbGFycmF5ID0gJGRpY3QtPkNyZWF0ZVRhYmxlU1FMKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2NvbXBkaXJfY29tcGFuaWVzIiwgCgkJJGZsZHMsICR0YWJvcHRhcnJheSk7CiRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKCiRmbGRzID0gIgoJaWQgSSBLRVkgQVVUTywKCW5hbWUgQygyNTUpIE5PVCBOVUxMLAogICAgICAgIGV4dHJhMSAgQygyNTUpLAogICAgICAgIGV4dHJhMiAgQygyNTUpLAogICAgICAgIGV4dHJhMyAgQygyNTUpLAoJY3JlYXRlX2RhdGUgIiAuIENNU19BRE9EQl9EVCAuICIsCgltb2RpZmllZF9kYXRlICIgLiBDTVNfQURPREJfRFQgLiAiCiI7CgokdGFib3B0YXJyYXkgPSBhcnJheSgnbXlzcWwnID0+ICdUWVBFPU15SVNBTScpOwokc3FsYXJyYXkgPSAkZGljdC0+Q3JlYXRlVGFibGVTUUwoY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfY29tcGRpcl9jYXRlZ29yaWVzIiwgCgkJJGZsZHMsICR0YWJvcHRhcnJheSk7CiRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKCiRmbGRzID0gIgoJY29tcGFueV9pZCBJIEtFWSBOT1QgTlVMTCwKCWNhdGVnb3J5X2lkIEkgS0VZIE5PVCBOVUxMLAogICAgaW1hZ2UgIEMoMjU1KSwKICAgIGRlc2NyaXB0aW9uIFgsCiAgICBleHRyYTEgQygyNTUpLAogICAgZXh0cmEyIEMoMjU1KSwKICAgIGV4dHJhMyBDKDI1NSksCgljcmVhdGVfZGF0ZSAiIC4gQ01TX0FET0RCX0RUIC4gIiwKCW1vZGlmaWVkX2RhdGUgIiAuIENNU19BRE9EQl9EVCAuICIKIjsKCiR0YWJvcHRhcnJheSA9IGFycmF5KCdteXNxbCcgPT4gJ1RZUEU9TXlJU0FNJyk7CiRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNRTChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9jb21wZGlyX2NvbXBhbnlfY2F0ZWdvcmllcyIsIAoJCSRmbGRzLCAkdGFib3B0YXJyYXkpOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CgokZmxkcyA9ICIKCWlkIEkgS0VZIEFVVE8sCgluYW1lIEMoMjU1KSBOT1QgTlVMTCwKCXR5cGUgQyg1MCksCgltYXhfbGVuZ3RoIEksCgljcmVhdGVfZGF0ZSAiIC4gQ01TX0FET0RCX0RUIC4gIiwKCW1vZGlmaWVkX2RhdGUgIiAuIENNU19BRE9EQl9EVCAuICIsCiAgICAgICAgaXRlbV9vcmRlciBJLAogICAgICAgIGFkbWluX29ubHkgSSwKICAgICAgICBwdWJsaWMgSSwKICAgICAgICBkcm9wZG93bl9kYXRhIFgKIjsKCiR0YWJvcHRhcnJheSA9IGFycmF5KCdteXNxbCcgPT4gJ1RZUEU9TXlJU0FNJyk7CiRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNRTChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9jb21wZGlyX2ZpZWxkZGVmcyIsIAoJCSRmbGRzLCAkdGFib3B0YXJyYXkpOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CgokZmxkcyA9ICIKCWNvbXBhbnlfaWQgSSBLRVkgTk9UIE5VTEwsCglmaWVsZGRlZl9pZCBJIEtFWSBOT1QgTlVMTCwKCXZhbHVlIFgsCgljcmVhdGVfZGF0ZSAiIC4gQ01TX0FET0RCX0RUIC4gIiwKCW1vZGlmaWVkX2RhdGUgIiAuIENNU19BRE9EQl9EVCAuICIKIjsKCiR0YWJvcHRhcnJheSA9IGFycmF5KCdteXNxbCcgPT4gJ1RZUEU9TXlJU0FNJyk7CiRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNRTChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9jb21wZGlyX2ZpZWxkdmFscyIsIAoJCSRmbGRzLCAkdGFib3B0YXJyYXkpOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CgoKJGZsZHMgPSAiCgljb21wYW55X2lkIEkgS0VZIE5PVCBOVUxMLAoJZGF0ZV9zZWFyY2hlZCAiLkNNU19BRE9EQl9EVC4iIE5PVCBOVUxMLAogICAgICAgIHBvc3Rjb2RlIEMoMjApCiI7CiRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNRTChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9jb21wZGlyX3NlYXJjaHN0YXRzIiwgCgkJCQkgICRmbGRzLCAkdGFib3B0YXJyYXkpOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CgokZmxkcyA9ICIKCWlkIEkgS0VZIEFVVE8sCgluYW1lIEMoMjU1KSwKCXBhcmVudF9pZCBJLAoJaGllcmFyY2h5IEMoMjU1KSwKCWxvbmdfbmFtZSBYCiI7CiRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNRTChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9jb21wZGlyX2hpZXIiLCAKCQkkZmxkcywgJHRhYm9wdGFycmF5KTsKJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwoKIyBJbmRleGVzCiRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVJbmRleFNRTCgnY29tcGRpcl9jb21wX25hbWUnLAoJCQkJICBjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9jb21wZGlyX2NvbXBhbmllcycsCgkJCQkgICdjb21wYW55X25hbWUnKTsKJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwoKJHNxbGFycmF5ID0gJGRpY3QtPkNyZWF0ZUluZGV4U1FMKCdjb21wZGlyX2NhdGdfbmFtZScsCgkJCQkgIGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfY2F0ZWdvcmllcycsCgkJCQkgICduYW1lJyk7CiRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKCiRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVJbmRleFNRTCgnY29tcGRpcl9jb21wY2F0JywKCQkJCSAgY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfY29tcGRpcl9jb21wYW55X2NhdGVnb3JpZXMnLAoJCQkJICAnY2F0ZWdvcnlfaWQsY29tcGFueV9pZCcpOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7Cgokc3FsYXJyYXkgPSAkZGljdC0+Q3JlYXRlSW5kZXhTUUwoJ2NvbXBkaXJfZmllbGRkZWYnLAoJCQkJICBjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9jb21wZGlyX2ZpZWxkZGVmcycsCgkJCQkgICduYW1lLGlkJyk7CiRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKCiRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVJbmRleFNRTCgnY2Rfc3RhdHVzJyxjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9jb21wZGlyX2NvbXBhbmllcycsJ3N0YXR1cycpOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7Cgokc3FsYXJyYXkgPSAkZGljdC0+Q3JlYXRlSW5kZXhTUUwoJ2NkX2ZsZF9uYW1lJyxjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9jb21wZGlyX2ZpZWxkZGVmcycsJ25hbWUnKTsKJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwoKJHNxbGFycmF5ID0gJGRpY3QtPkNyZWF0ZUluZGV4U1FMKCdjZF9mbGRfb3JkZXInLGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfZmllbGRkZWZzJywnaXRlbV9vcmRlcicpOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7Cgokc3FsYXJyYXkgPSAkZGljdC0+Q3JlYXRlSW5kZXhTUUwoJ2NkX2ZsZF9wdWJsaWMnLGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfZmllbGRkZWZzJywncHVibGljJyk7CiRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKCiMKIyBUZW1wbGF0ZXMKIwoKCiMgU2V0dXAgc3VtbWFyeSB0ZW1wbGF0ZQokZm4gPSBjbXNfam9pbl9wYXRoKGRpcm5hbWUoX19GSUxFX18pLCd0ZW1wbGF0ZXMnLCdvcmlnX3N1bW1hcnlfdGVtcGxhdGUudHBsJyk7CmlmKCBmaWxlX2V4aXN0cyggJGZuICkgKQogIHsKICAgICR0ZW1wbGF0ZSA9IGZpbGVfZ2V0X2NvbnRlbnRzKCAkZm4gKTsKICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKENPTVBBTllESVJfUFJFRl9ORVdTVU1NQVJZX1RFTVBMQVRFLCR0ZW1wbGF0ZSk7CiAgICAkdGhpcy0+U2V0VGVtcGxhdGUoJ3N1bW1hcnlfU2FtcGxlJywkdGVtcGxhdGUpOwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoQ09NUEFOWURJUl9QUkVGX0RGTFRTVU1NQVJZX1RFTVBMQVRFLCdTYW1wbGUnKTsKICB9CgojIFNldHVwIGRldGFpbCB0ZW1wbGF0ZQokZm4gPSBjbXNfam9pbl9wYXRoKGRpcm5hbWUoX19GSUxFX18pLCd0ZW1wbGF0ZXMnLCdvcmlnX2RldGFpbF90ZW1wbGF0ZS50cGwnKTsKaWYoIGZpbGVfZXhpc3RzKCAkZm4gKSApCiAgewogICAgJHRlbXBsYXRlID0gZmlsZV9nZXRfY29udGVudHMoICRmbiApOwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoQ09NUEFOWURJUl9QUkVGX05FV0RFVEFJTF9URU1QTEFURSwkdGVtcGxhdGUpOwogICAgJHRoaXMtPlNldFRlbXBsYXRlKCdkZXRhaWxfU2FtcGxlJywkdGVtcGxhdGUpOwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoQ09NUEFOWURJUl9QUkVGX0RGTFRERVRBSUxfVEVNUExBVEUsJ1NhbXBsZScpOwogIH0KCiMgU2V0dXAgZGVmYXVsdCBjYXRlZ29yeSBsaXN0IHRlbXBsYXRlCiRmbiA9IGNtc19qb2luX3BhdGgoZGlybmFtZShfX0ZJTEVfXyksJ3RlbXBsYXRlcycsJ29yaWdfY2F0ZWdvcnlsaXN0X3RlbXBsYXRlLnRwbCcpOwppZiggZmlsZV9leGlzdHMoICRmbiApICkKICB7CiAgICAkdGVtcGxhdGUgPSBmaWxlX2dldF9jb250ZW50cyggJGZuICk7CiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZShDT01QQU5ZRElSX1BSRUZfTkVXQ0FURUdPUllMSVNUX1RFTVBMQVRFLCR0ZW1wbGF0ZSk7CiAgICAkdGhpcy0+U2V0VGVtcGxhdGUoJ2NhdGVnb3J5bGlzdF9TYW1wbGUnLCR0ZW1wbGF0ZSk7CiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZShDT01QQU5ZRElSX1BSRUZfREZMVENBVEVHT1JZTElTVF9URU1QTEFURSwnU2FtcGxlJyk7CiAgfQoKIyBTZXR1cCBkZWZhdWx0IGhpZXJhcmNoeSBsaXN0IHRlbXBsYXRlCiRmbiA9IGNtc19qb2luX3BhdGgoZGlybmFtZShfX0ZJTEVfXyksJ3RlbXBsYXRlcycsJ29yaWdfaGllcmxpc3RfdGVtcGxhdGUudHBsJyk7CmlmKCBmaWxlX2V4aXN0cyggJGZuICkgKQogIHsKICAgICR0ZW1wbGF0ZSA9IGZpbGVfZ2V0X2NvbnRlbnRzKCAkZm4gKTsKICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKENPTVBBTllESVJfUFJFRl9ORVdISUVSTElTVF9URU1QTEFURSwkdGVtcGxhdGUpOwogICAgJHRoaXMtPlNldFRlbXBsYXRlKCdoaWVybGlzdF9TYW1wbGUnLCR0ZW1wbGF0ZSk7CiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZShDT01QQU5ZRElSX1BSRUZfREZMVEhJRVJMSVNUX1RFTVBMQVRFLCdTYW1wbGUnKTsKICB9CgojIFNldHVwIGRlZmF1bHQgc2VhcmNoIGZvcm0gdGVtcGxhdGUKJGZuID0gY21zX2pvaW5fcGF0aChkaXJuYW1lKF9fRklMRV9fKSwndGVtcGxhdGVzJywnb3JpZ19zZWFyY2hmb3JtX3RlbXBsYXRlLnRwbCcpOwppZiggZmlsZV9leGlzdHMoICRmbiApICkKICB7CiAgICAkdGVtcGxhdGUgPSBmaWxlX2dldF9jb250ZW50cyggJGZuICk7CiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZShDT01QQU5ZRElSX1BSRUZfTkVXU0VBUkNIRk9STV9URU1QTEFURSwkdGVtcGxhdGUpOwogICAgJHRoaXMtPlNldFRlbXBsYXRlKCdzZWFyY2hmb3JtX1NhbXBsZScsJHRlbXBsYXRlKTsKICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKENPTVBBTllESVJfUFJFRl9ERkxUU0VBUkNIRk9STV9URU1QTEFURSwnU2FtcGxlJyk7CiAgfQoKIyBTZXR1cCBkZWZhdWx0IGZyb250IGVuZCBmb3JtIHRlbXBsYXRlCiRmbiA9IGNtc19qb2luX3BhdGgoZGlybmFtZShfX0ZJTEVfXyksJ3RlbXBsYXRlcycsJ29yaWdfZnJvbnRlbmRmb3JtX3RlbXBsYXRlLnRwbCcpOwppZiggZmlsZV9leGlzdHMoICRmbiApICkKICB7CiAgICAkdGVtcGxhdGUgPSBmaWxlX2dldF9jb250ZW50cyggJGZuICk7CiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZShDT01QQU5ZRElSX1BSRUZfTkVXRlJPTlRFTkRGT1JNX1RFTVBMQVRFLCR0ZW1wbGF0ZSk7CiAgICAkdGhpcy0+U2V0VGVtcGxhdGUoJ2Zyb250ZW5kZm9ybV9TYW1wbGUnLCR0ZW1wbGF0ZSk7CiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZShDT01QQU5ZRElSX1BSRUZfREZMVEZST05URU5ERk9STV9URU1QTEFURSwnU2FtcGxlJyk7CiAgfQoKCiMgU2V0dXAgZGVmYXVsdCBmcm9udCBlbmQgbGlzdCB0ZW1wbGF0ZQokZm4gPSBjbXNfam9pbl9wYXRoKGRpcm5hbWUoX19GSUxFX18pLCd0ZW1wbGF0ZXMnLCdvcmlnX2Zyb250ZW5kbGlzdF90ZW1wbGF0ZS50cGwnKTsKaWYoIGZpbGVfZXhpc3RzKCAkZm4gKSApCiAgewogICAgJHRlbXBsYXRlID0gZmlsZV9nZXRfY29udGVudHMoICRmbiApOwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoQ09NUEFOWURJUl9QUkVGX05FV0ZST05URU5ETElTVF9URU1QTEFURSwkdGVtcGxhdGUpOwogICAgJHRoaXMtPlNldFRlbXBsYXRlKCdmcm9udGVuZGxpc3RfU2FtcGxlJywkdGVtcGxhdGUpOwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoQ09NUEFOWURJUl9QUkVGX0RGTFRGUk9OVEVORExJU1RfVEVNUExBVEUsJ1NhbXBsZScpOwogIH0KCiMgU2V0dXAgZGVmYXVsdCBmcm9udGVuZCBpbXBvcnQgdGVtcGxhdGUKJGZuID0gY21zX2pvaW5fcGF0aChkaXJuYW1lKF9fRklMRV9fKSwndGVtcGxhdGVzJywnb3JpZ19mcm9udGVuZGltcG9ydF90ZW1wbGF0ZS50cGwnKTsKaWYoIGZpbGVfZXhpc3RzKCAkZm4gKSApCiAgewogICAgJHRlbXBsYXRlID0gZmlsZV9nZXRfY29udGVudHMoICRmbiApOwogICAgJHRoaXMtPlNldFRlbXBsYXRlKENPTVBBTllESVJfRlJPTlRFTkRJTVBPUlRfVEVNUExBVEUsJHRlbXBsYXRlKTsKICB9CgokZm4gPSBkaXJuYW1lKF9fRklMRV9fKS4nL3RlbXBsYXRlcy9vcmlnX2FkbWluX2ZlZWRpdF9lbWFpbF90ZW1wbGF0ZS50cGwnOwppZiggZmlsZV9leGlzdHMoJGZuKSApCiAgewogICAgJHRlbXBsYXRlID0gQGZpbGVfZ2V0X2NvbnRlbnRzKCRmbik7CiAgICAkdGhpcy0+U2V0VGVtcGxhdGUoJ2FkbWluX2ZlZWRpdF9lbWFpbF90ZW1wbGF0ZScsJHRlbXBsYXRlKTsKICB9CgojU2V0IFBlcm1pc3Npb24KJHRoaXMtPkNyZWF0ZVBlcm1pc3Npb24oJ01vZGlmeSBDb21wYW55IERpcmVjdG9yeScsICdNb2RpZnkgQ29tcGFueSBEaXJlY3RvcnknKTsKCiMgUHJlZmVyZW5jZXMKJHRoaXMtPlNldFByZWZlcmVuY2UoJ2ltcG9ydF9kZWxpbWV0ZXInLCd8Jyk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdpbXBvcnRfZmllbGRkZWZzJywxKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ2ltcG9ydF9maWVsZHZhbHMnLDEpOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnaW1wb3J0X2NhdGVnb3J5ZGVmcycsMSk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdpbXBvcnRfY2F0ZWdvcnl2YWxzJywxKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ2ltcG9ydF9sb29rdXBsYXRsb25nJywwKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ2ltcG9ydF9jaGVja2R1cGxpY2F0ZXMnLDEpOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnYWRtaW5fZmVlZGl0X2VtYWlsX3N1YmplY3QnLCR0aGlzLT5MYW5nKCdmZWVkaXRfZW1haWxfc3ViamVjdCcpKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ2FkbWluX2ZlZWRpdF9lbWFpbF9pc2h0bWwnLDEpOwoKPz4K]]></data>
	</file>
	<file>
	  <filename>/method.uninstall.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgppZiAoIWlzc2V0KCRnQ21zKSkgZXhpdDsKCiRkYiA9JiAkdGhpcy0+R2V0RGIoKTsKCiRkaWN0ID0gTmV3RGF0YURpY3Rpb25hcnkoICRkYiApOwoKJHNxbGFycmF5ID0gJGRpY3QtPkRyb3BUYWJsZVNRTCggY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfY29tcGRpcl9jb21wYW5pZXMiICk7CiRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKCiRzcWxhcnJheSA9ICRkaWN0LT5Ecm9wVGFibGVTUUwoIGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2NvbXBkaXJfY2F0ZWdvcmllcyIgKTsKJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwoKJHNxbGFycmF5ID0gJGRpY3QtPkRyb3BUYWJsZVNRTCggY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfY29tcGRpcl9jb21wYW55X2NhdGVnb3JpZXMiICk7CiRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKCiRzcWxhcnJheSA9ICRkaWN0LT5Ecm9wVGFibGVTUUwoIGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2NvbXBkaXJfZmllbGRkZWZzIiApOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7Cgokc3FsYXJyYXkgPSAkZGljdC0+RHJvcFRhYmxlU1FMKCBjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9jb21wZGlyX2ZpZWxkdmFscyIgKTsKJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwoKJHNxbGFycmF5ID0gJGRpY3QtPkRyb3BUYWJsZVNRTCggY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfY29tcGRpcl9oaWVyIiApOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CgokdGhpcy0+RGVsZXRlVGVtcGxhdGUoKTsKJHRoaXMtPlJlbW92ZVByZWZlcmVuY2UoKTsKJHRoaXMtPlJlbW92ZVBlcm1pc3Npb24oJ01vZGlmeSBDb21wYW55IERpcmVjdG9yeScpOwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/method.upgrade.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgIC8qIC0qLSBNb2RlOiBQSFA7IHRhYi13aWR0aDogNDsgYy1iYXNpYy1vZmZzZXQ6IDIgLSotICovCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBDb21wYW55RGlyZWN0b3J5IChjKSAyMDA0LTYgYnkgVGVkIEt1bHAgKHRlZEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgCiMgIENvcHlyaWdodCAyMDA2LDIwMDgsMjAwOSwyMDEwIGJ5IFJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIwojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGFuZCB2YXJpb3VzIHdheXMgdG8gZGlzcGxheQojICBjb21wYW55IGluZm9ybWF0aW9uIGZvciB1c2UgaW4gZGlyZWN0b3JpZXMgZXRjLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNS0yMDEwIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmICghaXNzZXQoJGdDbXMpKSBleGl0OwoKJGRiID0gJHRoaXMtPkdldERiKCk7CiRkaWN0ID0gTmV3RGF0YURpY3Rpb25hcnkoJGRiKTsKJGN1cnJlbnRfdmVyc2lvbiA9ICRvbGR2ZXJzaW9uOwoKc3dpdGNoKCRjdXJyZW50X3ZlcnNpb24pCnsKIGNhc2UgIjEuMC40IjoKICAgewogICAgICRzcWxhcnJheSA9ICRkaWN0LT5BZGRDb2x1bW5TUUwoY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfY29tcGRpcl9maWVsZGRlZnMiLCAiaXRlbV9vcmRlciBJIik7CiAgICAgJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwogICAgIAogICAgICRjb3VudCA9IDA7CiAgICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCdTRUxFQ1QgKiBGUk9NICcgLiBjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlX2NvbXBkaXJfZmllbGRkZWZzJyk7CiAgICAgd2hpbGUgKCRkYnJlc3VsdCAmJiAkcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdygpKQogICAgICAgewoJICRkYi0+RXhlY3V0ZSgnVVBEQVRFICcgLiBjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlX2NvbXBkaXJfZmllbGRkZWZzIFNFVCBpdGVtX29yZGVyID0gPyBXSEVSRSBpZCA9ID8nLCBhcnJheSgkY291bnQsICRyb3dbJ2lkJ10pKTsKCSAkY291bnQrKzsKICAgICAgIH0KICAgfQogICAKIGNhc2UgIjEuMC41IjoKICAgewogICAgICRzcWxhcnJheSA9ICRkaWN0LT5BZGRDb2x1bW5TUUwoY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfY29tcGRpcl9maWVsZGRlZnMiLCAidXNlcl9lZGl0YWJsZSBJLCB1c2VyX3ZpZXdhYmxlIEkiKTsKICAgICAkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CiAgICAgJHNxbGFycmF5ID0gJGRpY3QtPkFkZENvbHVtblNRTChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9jb21wZGlyX2NvbXBhbmllcyIsICJzdGF0dXMgQyg1MCkiKTsKICAgICAkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CiAgICAgJGRiLT5FeGVjdXRlKCAnVVBEQVRFICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfY29tcGRpcl9maWVsZGRlZnMgU0VUIGFkbWluX29ubHkgPSAxLCBwdWJsaWMgPSAxJyApOwogICAKICAgICAvLyBjb252ZXJ0IGRpc3BsYXlzdW1tYXJ5IHRvIHN1bW1hcnlfYmxhaCBhbmQgbWFyayBpdCBhcyBkZWZhdWx0CiAgICAgJHRlbXBsYXRlID0gJHRoaXMtPkdldFRlbXBsYXRlKCdkaXNwbGF5c3VtbWFyeScpOwogICAgICR0aGlzLT5TZXRUZW1wbGF0ZSgnc3VtbWFyeV9fZGZsdCcsJHRlbXBsYXRlKTsKICAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZShDT01QQU5ZRElSX1BSRUZfREZMVFNVTU1BUllfVEVNUExBVEUsJ19kZmx0Jyk7CiAgICAgJHRoaXMtPkRlbGV0ZVRlbXBsYXRlKCdkaXNwbGF5c3VtbWFyeScpOwogICAKICAgICAvLyBjb252ZXJ0IGRpc3BsYXlkZXRhaWwgdG8gZGV0YWlsX2JsYWggYW5kIG1hcmsgaXQgYXMgZGVmYXVsdAogICAgICR0ZW1wbGF0ZSA9ICR0aGlzLT5HZXRUZW1wbGF0ZSgnZGlzcGxheWRldGFpbCcpOwogICAgICR0aGlzLT5TZXRUZW1wbGF0ZSgnZGV0YWlsX19kZmx0JywkdGVtcGxhdGUpOwogICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKENPTVBBTllESVJfUFJFRl9ERkxUREVUQUlMX1RFTVBMQVRFLCdfZGZsdCcpOwogICAgICR0aGlzLT5EZWxldGVUZW1wbGF0ZSgnZGlzcGxheWRldGFpbCcpOwogICAKICAgICAvLyBTZXR1cCBkZWZhdWx0IGNhdGVnb3J5IGxpc3QgdGVtcGxhdGUKICAgICAkZm4gPSBjbXNfam9pbl9wYXRoKGRpcm5hbWUoX19GSUxFX18pLCd0ZW1wbGF0ZXMnLCdvcmlnX2NhdGVnb3J5bGlzdF90ZW1wbGF0ZS50cGwnKTsKICAgICBpZiggZmlsZV9leGlzdHMoICRmbiApICkKICAgICAgIHsKCSAkdGVtcGxhdGUgPSBmaWxlX2dldF9jb250ZW50cyggJGZuICk7CgkgJHRoaXMtPlNldFByZWZlcmVuY2UoQ09NUEFOWURJUl9QUkVGX05FV0NBVEVHT1JZTElTVF9URU1QTEFURSwkdGVtcGxhdGUpOwoJICR0aGlzLT5TZXRUZW1wbGF0ZSgnY2F0ZWdvcnlsaXN0X1NhbXBsZScsJHRlbXBsYXRlKTsKCSAkdGhpcy0+U2V0UHJlZmVyZW5jZShDT01QQU5ZRElSX1BSRUZfREZMVENBVEVHT1JZTElTVF9URU1QTEFURSwnU2FtcGxlJyk7CiAgICAgICB9CiAgIAogICAgIC8vIFNldHVwIGRlZmF1bHQgZnJvbnQgZW5kIGZvcm0gdGVtcGxhdGUKICAgICAkZm4gPSBjbXNfam9pbl9wYXRoKGRpcm5hbWUoX19GSUxFX18pLCd0ZW1wbGF0ZXMnLCdvcmlnX2Zyb250ZW5kZm9ybV90ZW1wbGF0ZS50cGwnKTsKICAgICBpZiggZmlsZV9leGlzdHMoICRmbiApICkKICAgICAgIHsKCSAkdGVtcGxhdGUgPSBmaWxlX2dldF9jb250ZW50cyggJGZuICk7CgkgJHRoaXMtPlNldFByZWZlcmVuY2UoQ09NUEFOWURJUl9QUkVGX05FV0ZST05URU5ERk9STV9URU1QTEFURSwkdGVtcGxhdGUpOwoJICR0aGlzLT5TZXRUZW1wbGF0ZSgnZnJvbnRlbmRmb3JtX1NhbXBsZScsJHRlbXBsYXRlKTsKCSAkdGhpcy0+U2V0UHJlZmVyZW5jZShDT01QQU5ZRElSX1BSRUZfREZMVEZST05URU5ERk9STV9URU1QTEFURSwnU2FtcGxlJyk7CiAgICAgICB9CiAgIH0KCiBjYXNlICcxLjEuNic6CiAgIHsKICAgICAkc3FsYXJyYXkgPSAkZGljdC0+QWRkQ29sdW1uU1FMKGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfZmllbGRkZWZzJywnZHJvcGRvd25fZGF0YSBYJyk7CiAgICAgJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwogICAgICRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVJbmRleFNRTCgnY29tcGRpcl9jb21wX25hbWUnLAoJCQkJICAgICAgIGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfY29tcGFuaWVzJywKCQkJCSAgICAgICAnY29tcGFueV9uYW1lJyk7CiAgICAgJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwogICAgICRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVJbmRleFNRTCgnY29tcGRpcl9jYXRnX25hbWUnLAoJCQkJICAgICAgIGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfY2F0ZWdvcmllcycsCgkJCQkgICAgICAgJ25hbWUnKTsKICAgICAkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CiAgICAgJHNxbGFycmF5ID0gJGRpY3QtPkNyZWF0ZUluZGV4U1FMKCdjb21wZGlyX2NvbXBjYXQnLAoJCQkJICAgICAgIGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfY29tcGFueV9jYXRlZ29yaWVzJywKCQkJCSAgICAgICAnY2F0ZWdvcnlfaWQsY29tcGFueV9pZCcpOwogICAgICRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKICAgICAkc3FsYXJyYXkgPSAkZGljdC0+Q3JlYXRlSW5kZXhTUUwoJ2NvbXBkaXJfZmllbGRkZWYnLAoJCQkJICAgICAgIGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfY29tcGFueV9maWVsZGRlZnMnLAoJCQkJICAgICAgICduYW1lLGlkJyk7CiAgICAgJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwogICB9CgogY2FzZSAnMS4xLjcnOgogICB7CiAgICAgJHNxbGFycmF5ID0gJGRpY3QtPkNyZWF0ZUluZGV4U1FMKCdjZF9zdGF0dXMnLAoJCQkJICAgICAgIGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfY29tcGFuaWVzJywKCQkJCSAgICAgICAnc3RhdHVzJyk7CiAgICAgJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwogICAKICAgICAkc3FsYXJyYXkgPSAkZGljdC0+Q3JlYXRlSW5kZXhTUUwoJ2NkX2ZsZF9uYW1lJywKCQkJCSAgICAgICBjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9jb21wZGlyX2ZpZWxkZGVmcycsCgkJCQkgICAgICAgJ25hbWUnKTsKICAgICAkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CiAgIAogICAgICRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVJbmRleFNRTCgnY2RfZmxkX29yZGVyJywKCQkJCSAgICAgICBjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9jb21wZGlyX2ZpZWxkZGVmcycsCgkJCQkgICAgICAgJ2l0ZW1fb3JkZXInKTsKICAgICAkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CiAgIAogICAgICRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVJbmRleFNRTCgnY2RfZmxkX3B1YmxpYycsCgkJCQkgICAgICAgY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfY29tcGRpcl9maWVsZGRlZnMnLAoJCQkJICAgICAgICdwdWJsaWMnKTsKICAgICAkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CiAgIH0KCiBjYXNlICcxLjEuNyc6CiBjYXNlICcxLjEuOCc6CiAgIHsKICAgICAkc3FsYXJyYXkgPSAkZGljdC0+QWRkQ29sdW1uU1FMKGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfY29tcGFuaWVzJywnbGF0aXR1ZGUgRiwgbG9uZ2l0dWRlIEYsb3duZXJfaWQgSScpOwogICAgICRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKCiAgICAgJHNxbGFycmF5ID0gJGRpY3QtPkNyZWF0ZUluZGV4U1FMKCdjZF9mbGRfY29vcmRzJywKCQkJCSAgICAgICBjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9jb21wZGlyX2NvbXBhbmllcycsCgkJCQkgICAgICAgJ2xhdGl0dWRlLCBsb25naXR1ZGUnKTsKICAgICAkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CgogICAgICRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVJbmRleFNRTCgnY2RfZmxkX293bmVyJywKCQkJCSAgICAgICBjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9jb21wZGlyX2NvbXBhbmllcycsCgkJCQkgICAgICAgJ293bmVyX2lkJyk7CiAgICAgJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwoKICAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgnaW1wb3J0X2RlbGltZXRlcicsJ3wnKTsKICAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgnaW1wb3J0X2ZpZWxkZGVmcycsMSk7CiAgICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ2ltcG9ydF9maWVsZHZhbHMnLDEpOwogICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdpbXBvcnRfY2F0ZWdvcnlkZWZzJywxKTsKICAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgnaW1wb3J0X2NhdGVnb3J5dmFscycsMSk7CiAgICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ2ltcG9ydF9sb29rdXBsYXRsb25nJywwKTsKICAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgnaW1wb3J0X2NoZWNrZHVwbGljYXRlcycsMSk7CgogICAgIC8vIFNldHVwIGRlZmF1bHQgc2VhcmNoIGZvcm0gdGVtcGxhdGUKICAgICAkZm4gPSBjbXNfam9pbl9wYXRoKGRpcm5hbWUoX19GSUxFX18pLCd0ZW1wbGF0ZXMnLCdvcmlnX3NlYXJjaGZvcm1fdGVtcGxhdGUudHBsJyk7CiAgICAgaWYoIGZpbGVfZXhpc3RzKCAkZm4gKSApCiAgICAgICB7CgkgJHRlbXBsYXRlID0gZmlsZV9nZXRfY29udGVudHMoICRmbiApOwoJICR0aGlzLT5TZXRQcmVmZXJlbmNlKENPTVBBTllESVJfUFJFRl9ORVdTRUFSQ0hGT1JNX1RFTVBMQVRFLCR0ZW1wbGF0ZSk7CgkgJHRoaXMtPlNldFRlbXBsYXRlKCdzZWFyY2hmb3JtX1NhbXBsZScsJHRlbXBsYXRlKTsKCSAkdGhpcy0+U2V0UHJlZmVyZW5jZShDT01QQU5ZRElSX1BSRUZfREZMVFNFQVJDSEZPUk1fVEVNUExBVEUsJ1NhbXBsZScpOwogICAgICAgfQogICB9CgogY2FzZSAnMS4yJzoKICAgewogICAgICRmbGRzID0gIgoJY29tcGFueV9pZCBJIEtFWSBOT1QgTlVMTCwKCWRhdGVfc2VhcmNoZWQgIi5DTVNfQURPREJfRFQuIiBOT1QgTlVMTCwKICAgICAgICBwb3N0Y29kZSBDKDIwKSI7CiAgICAgJHNxbGFycmF5ID0gJGRpY3QtPkNyZWF0ZVRhYmxlU1FMKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2NvbXBkaXJfc2VhcmNoc3RhdHMiLCAKCQkJCSAgICAgICAkZmxkcywgJHRhYm9wdGFycmF5KTsKICAgICAkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CiAgIH0KCiBjYXNlICcxLjQuMSc6CiAgIHsKICAgICAkZm4gPSBjbXNfam9pbl9wYXRoKGRpcm5hbWUoX19GSUxFX18pLCd0ZW1wbGF0ZXMnLCdvcmlnX2Zyb250ZW5kbGlzdF90ZW1wbGF0ZS50cGwnKTsKICAgICBpZiggZmlsZV9leGlzdHMoICRmbiApICkKICAgICAgIHsKCSAkdGVtcGxhdGUgPSBmaWxlX2dldF9jb250ZW50cyggJGZuICk7CgkgJHRoaXMtPlNldFByZWZlcmVuY2UoQ09NUEFOWURJUl9QUkVGX05FV0ZST05URU5ETElTVF9URU1QTEFURSwkdGVtcGxhdGUpOwoJICR0aGlzLT5TZXRUZW1wbGF0ZSgnZnJvbnRlbmRsaXN0X1NhbXBsZScsJHRlbXBsYXRlKTsKCSAkdGhpcy0+U2V0UHJlZmVyZW5jZShDT01QQU5ZRElSX1BSRUZfREZMVEZST05URU5ETElTVF9URU1QTEFURSwnU2FtcGxlJyk7CiAgICAgICB9CgogICAgICRmbGRzID0gIgoJaWQgSSBLRVkgQVVUTywKCW5hbWUgQygyNTUpLAoJcGFyZW50X2lkIEksCgloaWVyYXJjaHkgQygyNTUpLAoJbG9uZ19uYW1lIFgKICAgICAgICAiOwogICAgICRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNRTChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9jb21wZGlyX2hpZXIiLCAKCQkJCSAgICAgICAkZmxkcywgJHRhYm9wdGFycmF5KTsKICAgICAkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CgogICAgICRzcWxhcnJheSA9ICRkaWN0LT5BZGRDb2x1bW5TUUwoY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfY29tcGRpcl9jb21wYW5pZXMnLCdoaWVyX2lkIEknKTsKICAgICAkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CgogICB9CgogY2FzZSAnMS41JzoKICAgewogICAgICMgU2V0dXAgZGVmYXVsdCBoaWVyYXJjaHkgbGlzdCB0ZW1wbGF0ZQogICAgICRmbiA9IGNtc19qb2luX3BhdGgoZGlybmFtZShfX0ZJTEVfXyksJ3RlbXBsYXRlcycsJ29yaWdfaGllcmxpc3RfdGVtcGxhdGUudHBsJyk7CiAgICAgaWYoIGZpbGVfZXhpc3RzKCAkZm4gKSApCiAgICAgICB7CgkgJHRlbXBsYXRlID0gZmlsZV9nZXRfY29udGVudHMoICRmbiApOwoJICR0aGlzLT5TZXRQcmVmZXJlbmNlKENPTVBBTllESVJfUFJFRl9ORVdISUVSTElTVF9URU1QTEFURSwkdGVtcGxhdGUpOwoJICR0aGlzLT5TZXRUZW1wbGF0ZSgnaGllcmxpc3RfU2FtcGxlJywkdGVtcGxhdGUpOwoJICR0aGlzLT5TZXRQcmVmZXJlbmNlKENPTVBBTllESVJfUFJFRl9ERkxUSElFUkxJU1RfVEVNUExBVEUsJ1NhbXBsZScpOwogICAgICAgfQogICB9CgogY2FzZSAnMS41LjEnOgogICB7CiAgICAgIyBTZXR1cCBkZWZhdWx0IGZyb250ZW5kIGltcG9ydCB0ZW1wbGF0ZQogICAgICRmbiA9IGNtc19qb2luX3BhdGgoZGlybmFtZShfX0ZJTEVfXyksJ3RlbXBsYXRlcycsJ29yaWdfZnJvbnRlbmRpbXBvcnRfdGVtcGxhdGUudHBsJyk7CiAgICAgaWYoIGZpbGVfZXhpc3RzKCAkZm4gKSApCiAgICAgICB7CgkgJHRlbXBsYXRlID0gZmlsZV9nZXRfY29udGVudHMoICRmbiApOwoJICR0aGlzLT5TZXRUZW1wbGF0ZShDT01QQU5ZRElSX0ZST05URU5ESU1QT1JUX1RFTVBMQVRFLCR0ZW1wbGF0ZSk7CiAgICAgICB9CiAgIH0KCiBjYXNlICcxLjUuMic6CiBjYXNlICcxLjUuMyc6CiBjYXNlICcxLjUuNCc6CiBjYXNlICcxLjUuNSc6CiBjYXNlICcxLjUuNic6CiBjYXNlICcxLjUuNyc6CiBjYXNlICcxLjUuOCc6CiBjYXNlICcxLjYnOgogICB7CiAgICAgJHNxbGFycmF5ID0gJGRpY3QtPkFkZENvbHVtblNRTChjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9jb21wZGlyX2NhdGVnb3JpZXMnLAoJCQkJICAgICAnZXh0cmExIEMoMjU1KSwgZXh0cmEyIEMoMjU1KSwgZXh0cmEzIEMoMjU1KScpOwogICAgICRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKICAgfQoKIGNhc2UgJzEuNi4xJzoKIGNhc2UgJzEuNi4yJzoKIGNhc2UgJzEuNi4zJzoKIGNhc2UgJzEuNi40JzoKIGNhc2UgJzEuNyc6CiBjYXNlICcxLjcuMSc6CiBjYXNlICcxLjcuMic6CiAgIHsKICAgICAvLyBjb3BpZWQgZnJvbSBhYm92ZSB0byBzb2x2ZSBhbiBpc3N1ZS4uLiBzaG91bGQgc2lsZW50bHkgZmFpbCBpZiBmaWVsZHMgYWxyZWFkeSBleGlzdCc7CiAgICAgJHNxbGFycmF5ID0gJGRpY3QtPkFkZENvbHVtblNRTChjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9jb21wZGlyX2NvbXBhbmllcycsJ2xhdGl0dWRlIEYsIGxvbmdpdHVkZSBGLG93bmVyX2lkIEksaGllcl9pZCBJJyk7CiAgICAgJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwogICAgIAogICAgICRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVJbmRleFNRTCgnY2RfZmxkX2Nvb3JkcycsCgkJCQkgICAgICAgY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfY29tcGRpcl9jb21wYW5pZXMnLAoJCQkJICAgICAgICdsYXRpdHVkZSwgbG9uZ2l0dWRlJyk7CiAgICAgJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwogICAgIAogICAgICRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVJbmRleFNRTCgnY2RfZmxkX293bmVyJywKCQkJCSAgICAgICBjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9jb21wZGlyX2NvbXBhbmllcycsCgkJCQkgICAgICAgJ293bmVyX2lkJyk7CiAgICAgJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwoKICAgICAvLyBuZXcgc3R1ZmYuLi4uCiAgICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ2FkbWluX2ZlZWRpdF9lbWFpbF9zdWJqZWN0JywkdGhpcy0+TGFuZygnZmVlZGl0X2VtYWlsX3N1YmplY3QnKSk7CiAgICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ2FkbWluX2ZlZWRpdF9lbWFpbF9pc2h0bWwnLDEpOwoKICAgICAkc3FsYXJyYXkgPSAkZGljdC0+QWRkQ29sdW1uU1FMKGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfY29tcGFueV9jYXRlZ29yaWVzJywKCQkJCSAgICAgJ2V4dHJhMSBDKDI1NSksIGV4dHJhMiBDKDI1NSksIGV4dHJhMyBDKDI1NSknKTsKICAgICAkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CgogICAgICRmbiA9IGRpcm5hbWUoX19GSUxFX18pLicvdGVtcGxhdGVzL29yaWdfYWRtaW5fZmVlZGl0X2VtYWlsX3RlbXBsYXRlLnRwbCc7CiAgICAgaWYoIGZpbGVfZXhpc3RzKCRmbikgKQogICAgICAgewoJCSAkdGVtcGxhdGUgPSBAZmlsZV9nZXRfY29udGVudHMoJGZuKTsKCQkgJHRoaXMtPlNldFRlbXBsYXRlKCdhZG1pbl9mZWVkaXRfZW1haWxfdGVtcGxhdGUnLCR0ZW1wbGF0ZSk7CiAgICAgICB9CgogICB9CgogY2FzZSAnMS43LjMnOgogewogICAkc3FsYXJyYXkgPSAkZGljdC0+QWRkQ29sdW1uU1FMKGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfY29tcGFuaWVzJywndXJsIEMoMjU1KScpOwogICAkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CgogICAkcXVlcnkgPSAnVVBEQVRFICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfY29tcGRpcl9jb21wYW5pZXMgU0VUIHVybCA9ID8nOwogICAkZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KCcnKSk7CiB9CiB9CgppZiggdmVyc2lvbl9jb21wYXJlKCRvbGR2ZXJzaW9uLCcxLjEyJykgPCAwICkKICB7Cgkkc3FsYXJyYXkgPSAkZGljdC0+QWRkQ29sdW1uU1FMKGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2NvbXBkaXJfY2F0ZWdvcmllcycsJ2ltYWdlIEMoMjU1KSxkZXNjcmlwdGlvbiBYJyk7CgkkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CiAgfQo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/templates/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/templates/admin_email_template_tab.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogYWRtaW4gZW1haWwgZm9ybSAqfQp7JGZvcm1zdGFydH0KPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfZW1haWxfc3ViamVjdCcpfTo8L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9ZW1haWxfc3ViamVjdCIgc2l6ZT0iODAiIG1heGxlbmd0aD0iMjU1IiB2YWx1ZT0ieyRlbWFpbF9zdWJqZWN0fSIvPgogIDwvcD4KPC9kaXY+CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X2VtYWlsX2lzaHRtbCcpfTo8L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJ7JGFjdGlvbmlkfWVtYWlsX2lzaHRtbCIgdmFsdWU9IjAiLz4KICAgIDxpbnB1dCB0eXBlPSJjaGVja2JveCIgbmFtZT0ieyRhY3Rpb25pZH1lbWFpbF9pc2h0bWwiIHZhbHVlPSIxIiB7aWYgJGVtYWlsX2lzaHRtbH1jaGVja2VkPSJjaGVja2VkInsvaWZ9Lz4KICA8L3A+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9lbWFpbF90ZW1wbGF0ZScpfTo8L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgPHRleHRhcmVhIG5hbWU9InskYWN0aW9uaWR9ZW1haWxfdGVtcGxhdGUiPnskZW1haWxfdGVtcGxhdGV9PC90ZXh0YXJlYT4KICA8L3A+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+PC9wPgogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgPGlucHV0IHR5cGU9InN1Ym1pdCIgbmFtZT0ieyRhY3Rpb25pZH1zdWJtaXQiIHZhbHVlPSJ7JG1vZC0+TGFuZygnc3VibWl0Jyl9Ii8+CiAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiBuYW1lPSJ7JGFjdGlvbmlkfXJlc2V0IiB2YWx1ZT0ieyRtb2QtPkxhbmcoJ3Jlc2V0X3RvX2ZhY3RvcnknKX0iLz4KICA8L3A+CjwvZGl2Pgp7JGZvcm1lbmR9]]></data>
	</file>
	<file>
	  <filename>/templates/admin_urlstab.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyRmb3Jtc3RhcnR9CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygndXJsX3JlcXVpcmVkJyl9PHA+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICB7Y2dlX3llc25vX29wdGlvbnMgcHJlZml4PSRhY3Rpb25pZCBuYW1lPSd1cmxfcmVxdWlyZWQnIHNlbGVjdGVkPSR1cmxfcmVxdWlyZWR9CiAgICA8YnIvPgogICAgeyRtb2QtPkxhbmcoJ2luZm9fdXJsX3JlcXVpcmVkJyl9CiAgPC9wPgo8L2Rpdj4KPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCd1cmxfYXV0b2NyZWF0ZScpfTxwPgogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAge2NnZV95ZXNub19vcHRpb25zIHByZWZpeD0kYWN0aW9uaWQgbmFtZT0ndXJsX2F1dG9jcmVhdGUnIHNlbGVjdGVkPSR1cmxfYXV0b2NyZWF0ZX0KICAgIDxici8+CiAgICB7JG1vZC0+TGFuZygnaW5mb191cmxfYXV0b2NyZWF0ZScpfQogIDwvcD4KPC9kaXY+CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygndXJsX2NyZWF0ZW9uY29weScpfTxwPgogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAge2NnZV95ZXNub19vcHRpb25zIHByZWZpeD0kYWN0aW9uaWQgbmFtZT0ndXJsX2NyZWF0ZW9uY29weScgc2VsZWN0ZWQ9JHVybF9jcmVhdGVvbmNvcHl9CiAgICA8YnIvPgogICAgeyRtb2QtPkxhbmcoJ2luZm9fdXJsX2NyZWF0ZW9uY29weScpfQogIDwvcD4KPC9kaXY+CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygndXJsX3JlZGlyZWN0b2xkJyl9PHA+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICB7Y2dlX3llc25vX29wdGlvbnMgcHJlZml4PSRhY3Rpb25pZCBuYW1lPSd1cmxfcmVkaXJlY3RvbGQnIHNlbGVjdGVkPSR1cmxfcmVkaXJlY3RvbGR9CiAgICA8YnIvPgogICAgeyRtb2QtPkxhbmcoJ2luZm9fdXJsX3JlZGlyZWN0b2xkJyl9CiAgPC9wPgo8L2Rpdj4KPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICA8cCBjbGFzcz0icGFnZXRleHQiPjwvcD4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9InskYWN0aW9uaWR9c3VibWl0IiB2YWx1ZT0ieyRtb2QtPkxhbmcoJ3N1Ym1pdCcpfSIvPgogICAgPGlucHV0IHR5cGU9InN1Ym1pdCIgbmFtZT0ieyRhY3Rpb25pZH1jcmVhdGV1cmxzIiB2YWx1ZT0ieyRtb2QtPkxhbmcoJ2NyZWF0ZXVybHMnKX0iIG9uY2xpY2s9InJldHVybiBjb25maXJtKCd7JG1vZC0+TGFuZygnY29uZmlybV9hdXRvY3JlYXRlX3VybCcpfScpOyIvPgogIDwvcD4KPC9kaXY+CnskZm9ybWVuZH0=]]></data>
	</file>
	<file>
	  <filename>/templates/categorylist.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyoKI0NNUyAtIENNUyBNYWRlIFNpbXBsZQojKGMpMjAwNC02IGJ5IFRlZCBLdWxwICh0ZWRAY21zbWFkZXNpbXBsZS5vcmcpCiNUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL2Ntc21hZGVzaW1wbGUub3JnCiMKI1RoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiNpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyhhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKI1RoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKI01FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKI0dOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiNZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKI0ZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BICAwMjExMS0xMzA3ICBVU0EKIwojJElkJAkKKn0KCntpZiAkaXRlbWNvdW50ID4gMH0KPHRhYmxlIGNlbGxzcGFjaW5nPSIwIiBjbGFzcz0icGFnZXRhYmxlIj4KCTx0aGVhZD4KCQk8dHI+CgkJCTx0aD57JGNhdGVnb3J5dGV4dH08L3RoPgoJCQk8dGggY2xhc3M9InBhZ2VpY29uIj4mbmJzcDs8L3RoPgoJCQk8dGggY2xhc3M9InBhZ2VpY29uIj4mbmJzcDs8L3RoPgoJCTwvdHI+Cgk8L3RoZWFkPgoJPHRib2R5Pgp7Zm9yZWFjaCBmcm9tPSRpdGVtcyBpdGVtPWVudHJ5fQoJCTx0ciBjbGFzcz0ieyRlbnRyeS0+cm93Y2xhc3N9IiBvbm1vdXNlb3Zlcj0idGhpcy5jbGFzc05hbWU9J3skZW50cnktPnJvd2NsYXNzfWhvdmVyJzsiIG9ubW91c2VvdXQ9InRoaXMuY2xhc3NOYW1lPSd7JGVudHJ5LT5yb3djbGFzc30nOyI+CgkJCTx0ZD57JGVudHJ5LT5uYW1lfTwvdGQ+CgkJCTx0ZD57JGVudHJ5LT5lZGl0bGlua308L3RkPgoJCQk8dGQ+eyRlbnRyeS0+ZGVsZXRlbGlua308L3RkPgoJCTwvdHI+CnsvZm9yZWFjaH0KCTwvdGJvZHk+CjwvdGFibGU+CnsvaWZ9Cgo8ZGl2IGNsYXNzPSJwYWdlb3B0aW9ucyI+PHAgY2xhc3M9InBhZ2VvcHRpb25zIj57JGFkZGxpbmt9PC9wPjwvZGl2Pgo=]]></data>
	</file>
	<file>
	  <filename>/templates/companylist.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyoKI0NNUyAtIENNUyBNYWRlIFNpbXBsZQojKGMpMjAwNC02IGJ5IFRlZCBLdWxwICh0ZWRAY21zbWFkZXNpbXBsZS5vcmcpCiNUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL2Ntc21hZGVzaW1wbGUub3JnCiMKI1RoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiNpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyhhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKI1RoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKI01FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKI0dOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiNZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKI0ZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BICAwMjExMS0xMzA3ICBVU0EKIwojJElkJAkKKn0KCjxmaWVsZHNldCBpZD0iY29tcGFueWZpbHRlcnMiIHN0eWxlPSJkaXNwbGF5OiBub25lOyI+CjxsZWdlbmQ+eyRtb2QtPkxhbmcoJ2ZpbHRlcicpfTo8L2xlZ2VuZD4KPHRhYmxlIGNsYXNzPSJwYWdldGFibGUiIGNlbGxzcGFjaW5nPSIwIiBib3JkZXI9IjAiIHN0eWxlPSJib3JkZXI6IG5vbmU7Ij4KeyRmaWx0ZXJfZm9ybXN0YXJ0fQo8dHI+CiAgPHRkPgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCduYW1lJyl9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1maWx0ZXJfbmFtZSIgc2l6ZT0iNDAiIHZhbHVlPSJ7JGZpbHRlci5uYW1lfSIvPgogICAgICA8YnIvPgogICAgICB7JG1vZC0+TGFuZygnaW5mb19maWx0ZXJfbmFtZScpfQogICAgPC9wPgogIDwvZGl2PgogIDwvdGQ+CgogIDx0ZD4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygnc3RhdHVzJyl9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgICA8c2VsZWN0IG5hbWU9InskYWN0aW9uaWR9ZmlsdGVyX3N0YXR1cyI+CiAgICAgICAge2h0bWxfb3B0aW9ucyBvcHRpb25zPSRzdGF0dXNlcyBzZWxlY3RlZD0kZmlsdGVyLnN0YXR1c30KICAgICAgPHNlbGVjdD4KICAgIDwvcD4KICA8L2Rpdj4KICA8dGQ+CjwvdHI+Cjx0cj4KICA8dGQ+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ2FkZHJlc3MnKX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGFjdGlvbmlkfWZpbHRlcl9hZGRyZXNzIiBzaXplPSI0MCIgdmFsdWU9InskZmlsdGVyLmFkZHJlc3N9Ii8+CiAgICAgIDxici8+CiAgICAgIHskbW9kLT5MYW5nKCdpbmZvX2ZpbHRlcl9hZGRyZXNzJyl9CiAgICA8L3A+CiAgPC9kaXY+CiAgPC90ZD4KCiAgPHRkPgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwYWdlbGltaXQnKX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgIDxzZWxlY3QgbmFtZT0ieyRhY3Rpb25pZH1maWx0ZXJfcGFnZWxpbWl0Ij4KICAgICAgICB7aHRtbF9vcHRpb25zIG9wdGlvbnM9JHBhZ2VsaW1pdHMgc2VsZWN0ZWQ9JGZpbHRlci5wYWdlbGltaXR9CiAgICAgIDxzZWxlY3Q+CiAgICA8L3A+CiAgPC9kaXY+CiAgPHRkPgo8L3RyPgoKPHRyPgogIDx0ZD4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygnY2F0ZWdvcnknKX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgIDxzZWxlY3QgbmFtZT0ieyRhY3Rpb25pZH1maWx0ZXJfY2F0ZWdvcnlpZCI+CiAgICAgICAge2h0bWxfb3B0aW9ucyBvcHRpb25zPSRjYXRlZ29yaWVzIHNlbGVjdGVkPSRmaWx0ZXIuY2F0ZWdvcnlpZH0KICAgICAgPC9zZWxlY3Q+CiAgICA8L3A+CiAgPC9kaXY+CiAgPC90ZD4KCiAgPHRkPgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdzb3J0YnknKX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgIDxzZWxlY3QgbmFtZT0ieyRhY3Rpb25pZH1maWx0ZXJfc29ydGJ5Ij4KICAgICAgICB7aHRtbF9vcHRpb25zIG9wdGlvbnM9JHNvcnRpbmdzIHNlbGVjdGVkPSRmaWx0ZXIuc29ydGJ5fQogICAgICA8L3NlbGVjdD4KICAgIDwvcD4KICA8L2Rpdj4KICA8L3RkPgo8L3RyPgoKPHRyPgogIDx0ZD4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygnaGllcmFyY2h5Jyl9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1maWx0ZXJfaGllcmFyY2h5IiBzaXplPSI0MCIgdmFsdWU9InskZmlsdGVyLmhpZXJ9Ii8+CiAgICAgIDxici8+CiAgICAgIHskbW9kLT5MYW5nKCdpbmZvX2ZpbHRlcl9oaWVyYXJjaHknKX0KICAgIDwvcD4KICA8L2Rpdj4KICA8L3RkPgoKICA8dGQ+CiAgPC90ZD4KPC90cj4KCjx0cj4KICA8dGQgY29sc3Bhbj0iMiI+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9InskYWN0aW9uaWR9ZmlsdGVyX3N1Ym1pdCIgdmFsdWU9InskbW9kLT5MYW5nKCdzdWJtaXQnKX0iLz4KICAgICAgPGlucHV0IHR5cGU9InN1Ym1pdCIgbmFtZT0ieyRhY3Rpb25pZH1maWx0ZXJfcmVzZXQiIHZhbHVlPSJ7JG1vZC0+TGFuZygncmVzZXQnKX0iLz4KICAgIDwvcD4KICA8L2Rpdj4KICA8L3RkPgo8L3RyPgoKeyRmaWx0ZXJfZm9ybWVuZH0KPC90YWJsZT4KPC9maWVsZHNldD4KCjxkaXYgY2xhc3M9InBhZ2VvcHRpb25zIj48cCBjbGFzcz0icGFnZW9wdGlvbnMiPgogIDxpbnB1dCB0eXBlPSJjaGVja2JveCIgaWQ9InRvZ2dsZV9maWx0ZXIiIHZhbHVlPSIxIiBvbmNsaWNrPSIkKCcjY29tcGFueWZpbHRlcnMnKS50b2dnbGUoKSIvPjxsYWJlbCBmb3I9InRvZ2dsZV9maWx0ZXIiPnskbW9kLT5MYW5nKCdlZGl0X2ZpbHRlcicpfXtpZiBpc3NldCgkZmlsdGVyLmFwcGxpZWQpfSZuYnNwOyh7JG1vZC0+TGFuZygnaW51c2UnKX0pey9pZn08L2xhYmVsPiZuYnNwOwogIHskYWRkbGlua317aWYgaXNzZXQoJGV4cG9ydGNzdil9Jm5ic3A7Jm5ic3A7eyRleHBvcnRjc3Z9ey9pZn0mbmJzcDsmbmJzcDt7JGltcG9ydGNzdn0mbmJzcDsmbmJzcDt7JGltcG9ydGttbH0KICB7aWYgaXNzZXQoJG5hdil9CiAgPHNwYW4gc3R5bGU9ImZsb2F0OiByaWdodDsiPgogICAge2lmICRuYXYtPmdldF9jdXJyZW50X3BhZ2UoKSA+IDF9CiAgICA8YSBocmVmPSJ7JG5hdi0+Z2V0X2ZpcnN0cGFnZV91cmwoKX0iPnskbW9kLT5MYW5nKCdmaXJzdHBhZ2UnKX08L2E+Jm5ic3A7CiAgICA8YSBocmVmPSJ7JG5hdi0+Z2V0X3ByZXZwYWdlX3VybCgpfSI+eyRtb2QtPkxhbmcoJ3ByZXZwYWdlJyl9PC9hPiZuYnNwOwogICAgey9pZn0KICAgIDxzcGFuIHN0eWxlPSJjb2xvcjogZ3JlZW47Ij57JG1vZC0+TGFuZygncGFnZScpfSB7JG5hdi0+Z2V0X2N1cnJlbnRfcGFnZSgpfSB7JG1vZC0+TGFuZygnb2YnKX0geyRuYXYtPmdldF9wYWdlX2NvdW50KCl9PHNwYW4+CiAgICB7aWYgJG5hdi0+Z2V0X2N1cnJlbnRfcGFnZSgpIDwgJG5hdi0+Z2V0X3BhZ2VfY291bnQoKX0KICAgIDxhIGhyZWY9InskbmF2LT5nZXRfbmV4dHBhZ2VfdXJsKCl9Ij57JG1vZC0+TGFuZygnbmV4dHBhZ2UnKX08L2E+Jm5ic3A7CiAgICA8YSBocmVmPSJ7JG5hdi0+Z2V0X2xhc3RwYWdlX3VybCgpfSI+eyRtb2QtPkxhbmcoJ2xhc3RwYWdlJyl9PC9hPiZuYnNwOwogICAgey9pZn0KICA8L3NwYW4+CiAgey9pZn0KPC9wPjwvZGl2PgoKe2lmICRpdGVtY291bnQgPiAwfQo8dGFibGUgY2VsbHNwYWNpbmc9IjAiIGNsYXNzPSJwYWdldGFibGUiPgoJPHRoZWFkPgoJCTx0cj4KCQkJPHRoPnskaWR0ZXh0fTwvdGg+CgkJCTx0aD57JGNvbXBhbnl0ZXh0fTwvdGg+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0aD57JG1vZC0+TGFuZygnb3duZXInKX08L3RoPgoJCQk8dGg+eyR3ZWJzaXRldGV4dH08L3RoPgoJCQk8dGg+eyRtb2QtPkxhbmcoJ3VybCcpfTwvdGg+CgkJCTx0aD57JG1vZC0+TGFuZygnc3RhdHVzJyl9PC90aD4KCQkJPHRoIGNsYXNzPSJwYWdlaWNvbiI+Jm5ic3A7PC90aD4KCQkJPHRoIGNsYXNzPSJwYWdlaWNvbiI+Jm5ic3A7PC90aD4KCQkJPHRoIGNsYXNzPSJwYWdlaWNvbiI+Jm5ic3A7PC90aD4KCQk8L3RyPgoJPC90aGVhZD4KCTx0Ym9keT4Ke2ZvcmVhY2ggZnJvbT0kaXRlbXMgaXRlbT1lbnRyeX0KCXtjeWNsZSB2YWx1ZXM9InJvdzEscm93MiIgYXNzaWduPSdyb3djbGFzcyd9CgkJPHRyIGNsYXNzPSJ7JHJvd2NsYXNzfSIgb25tb3VzZW92ZXI9InRoaXMuY2xhc3NOYW1lPSd7JHJvd2NsYXNzfWhvdmVyJzsiIG9ubW91c2VvdXQ9InRoaXMuY2xhc3NOYW1lPSd7JHJvd2NsYXNzfSc7Ij4KCQkJPHRkPnskZW50cnktPmlkfTwvdGQ+CgkJCTx0ZD57JGVudHJ5LT5jb21wYW55X25hbWV9PC90ZD4KCSAgICAgICAgICAgICAgICA8dGQ+e2lmIGlzc2V0KCRlbnRyeS0+b3duZXIpfXskZW50cnktPm93bmVyfXsvaWZ9PC90ZD4KCQkJPHRkPnskZW50cnktPndlYnNpdGV9PC90ZD4KCQkJPHRkPnskZW50cnktPnVybH08L3RkPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQ+eyRtb2QtPkxhbmcoJGVudHJ5LT5zdGF0dXMpfTwvdGQ+CgkJCTx0ZD57JGVudHJ5LT5jb3B5bGlua308L3RkPgoJCQk8dGQ+eyRlbnRyeS0+ZWRpdGxpbmt9PC90ZD4KCQkJPHRkPnskZW50cnktPmRlbGV0ZWxpbmt9PC90ZD4KCQk8L3RyPgp7L2ZvcmVhY2h9Cgk8L3Rib2R5Pgo8L3RhYmxlPgp7ZWxzZX0KPGRpdiBjbGFzcz0icGFnZWVycm9yY29udGFpbmVyIj4KeyRtb2QtPkxhbmcoJ2Vycm9yX25vZmlsdGVybWF0Y2hlcycpfQo8L2Rpdj4Key9pZn0KCntpZiAkaXRlbWNvdW50ID4gMTAgb3IgaXNzZXQoJG5hdil9CjxkaXYgY2xhc3M9InBhZ2VvcHRpb25zIj48cCBjbGFzcz0icGFnZW9wdGlvbnMiPgogIHskYWRkbGlua317aWYgaXNzZXQoJGV4cG9ydGNzdil9Jm5ic3A7Jm5ic3A7eyRleHBvcnRjc3Z9ey9pZn0mbmJzcDsmbmJzcDt7JGltcG9ydGNzdn0mbmJzcDsmbmJzcDt7JGltcG9ydGttbH0KPC9wPjwvZGl2Pgp7L2lmfQo=]]></data>
	</file>
	<file>
	  <filename>/templates/dflt_templates.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyR4Zm9ybXN0YXJ0fQo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIHskaW5mb19kZmx0X3RlbXBsYXRlfQo8L2Rpdj4KCjxmaWVsZHNldD4KICA8bGVnZW5kPnskbGVnZW5kX3N1bW1hcnl0ZW1wbGF0ZX08L2xlZ2VuZD4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF9zdW1tYXJ5dGVtcGxhdGV9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfc3VtbWFyeXRlbXBsYXRlfTwvcD4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij4mbmJzcDs8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JHN1Ym1pdF9zdW1tYXJ5dGVtcGxhdGV9Jm5ic3A7eyRyZXNldF9zdW1tYXJ5dGVtcGxhdGV9PC9wPgogIDwvZGl2Pgo8L2ZpZWxkc2V0PgoKPGZpZWxkc2V0PgogIDxsZWdlbmQ+eyRsZWdlbmRfZGV0YWlsdGVtcGxhdGV9PC9sZWdlbmQ+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfZGV0YWlsdGVtcGxhdGV9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfZGV0YWlsdGVtcGxhdGV9PC9wPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPiZuYnNwOzwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskc3VibWl0X2RldGFpbHRlbXBsYXRlfSZuYnNwO3skcmVzZXRfZGV0YWlsdGVtcGxhdGV9PC9wPgogIDwvZGl2Pgo8L2ZpZWxkc2V0PgoKPGZpZWxkc2V0PgogIDxsZWdlbmQ+eyRsZWdlbmRfY2F0ZWdvcnlsaXN0dGVtcGxhdGV9PC9sZWdlbmQ+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfY2F0ZWdvcnlsaXN0dGVtcGxhdGV9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfY2F0ZWdvcnlsaXN0dGVtcGxhdGV9PC9wPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPiZuYnNwOzwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskc3VibWl0X2NhdGVnb3J5bGlzdHRlbXBsYXRlfSZuYnNwO3skcmVzZXRfY2F0ZWdvcnlsaXN0dGVtcGxhdGV9PC9wPgogIDwvZGl2Pgo8L2ZpZWxkc2V0PgoKCjxmaWVsZHNldD4KICA8bGVnZW5kPnskbGVnZW5kX2hpZXJsaXN0dGVtcGxhdGV9PC9sZWdlbmQ+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfaGllcmxpc3R0ZW1wbGF0ZX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9oaWVybGlzdHRlbXBsYXRlfTwvcD4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij4mbmJzcDs8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JHN1Ym1pdF9oaWVybGlzdHRlbXBsYXRlfSZuYnNwO3skcmVzZXRfaGllcmxpc3R0ZW1wbGF0ZX08L3A+CiAgPC9kaXY+CjwvZmllbGRzZXQ+Cgo8ZmllbGRzZXQ+CiAgPGxlZ2VuZD57JGxlZ2VuZF9zZWFyY2hmb3JtdGVtcGxhdGV9PC9sZWdlbmQ+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfc2VhcmNoZm9ybXRlbXBsYXRlfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X3NlYXJjaGZvcm10ZW1wbGF0ZX08L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+Jm5ic3A7PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRzdWJtaXRfc2VhcmNoZm9ybXRlbXBsYXRlfSZuYnNwO3skcmVzZXRfc2VhcmNoZm9ybXRlbXBsYXRlfTwvcD4KICA8L2Rpdj4KPC9maWVsZHNldD4KCjxmaWVsZHNldD4KICA8bGVnZW5kPnskbGVnZW5kX2Zyb250ZW5kZm9ybXRlbXBsYXRlfTwvbGVnZW5kPgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X2Zyb250ZW5kZm9ybXRlbXBsYXRlfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2Zyb250ZW5kZm9ybXRlbXBsYXRlfTwvcD4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij4mbmJzcDs8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JHN1Ym1pdF9mcm9udGVuZGZvcm10ZW1wbGF0ZX0mbmJzcDt7JHJlc2V0X2Zyb250ZW5kZm9ybXRlbXBsYXRlfTwvcD4KICA8L2Rpdj4KPC9maWVsZHNldD4KCjxmaWVsZHNldD4KICA8bGVnZW5kPnskbGVnZW5kX2Zyb250ZW5kbGlzdHRlbXBsYXRlfTwvbGVnZW5kPgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X2Zyb250ZW5kbGlzdHRlbXBsYXRlfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2Zyb250ZW5kbGlzdHRlbXBsYXRlfTwvcD4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij4mbmJzcDs8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JHN1Ym1pdF9mcm9udGVuZGxpc3R0ZW1wbGF0ZX0mbmJzcDt7JHJlc2V0X2Zyb250ZW5kbGlzdHRlbXBsYXRlfTwvcD4KICA8L2Rpdj4KPC9maWVsZHNldD4KCnskeGZvcm1lbmR9]]></data>
	</file>
	<file>
	  <filename>/templates/do_importcsv.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGgzPnskbW9kLT5MYW5nKCd0aXRsZV9pbXBvcnRfcmVwb3J0Jyl9PC9oMz4KCgp7aWYgaXNzZXQoJGVycm9ycyl9CiAgPGRpdiBjbGFzcz0icGFnZWVycm9yY29udGFpbmVyIj4KICA8dWw+CiAge2ZvcmVhY2ggZnJvbT0kZXJyb3JzIGl0ZW09J29uZSd9CiAgICA8bGk+eyRvbmV9PC9saT4KICB7L2ZvcmVhY2h9CiAgPC91bD4KICA8L2Rpdj4Key9pZn0KCjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHRhYmxlIGNsYXNzPSJwYWdldGFibGUiIGJvcmRlcj0iMCI+CiAgICA8dHI+CiAgICAgIDx0ZD57JG1vZC0+TGFuZygncHJvbXB0X2NvbXBhbmllc19pbXBvcnRlZCcpfTo8L3RkPgogICAgICA8dGQgYWxpZ249ImxlZnQiPnskbnVtX2NvbXBhbmllc308L3RkPgogICAgPC90cj4KICAgIDx0cj4KICAgICAgPHRkPnskbW9kLT5MYW5nKCdwcm9tcHRfZmllbGRkZWZzX2ltcG9ydGVkJyl9OjwvdGQ+CiAgICAgIDx0ZCBhbGlnbj0ibGVmdCI+eyRudW1fZmllbGRkZWZzfTwvdGQ+CiAgICA8L3RyPgogICAgPHRyPgogICAgICA8dGQ+eyRtb2QtPkxhbmcoJ3Byb21wdF9jYXRlZ29yaWVzX2ltcG9ydGVkJyl9OjwvdGQ+CiAgICAgIDx0ZCBhbGlnbj0ibGVmdCI+eyRudW1fY2F0ZWdvcmllc308L3RkPgogICAgPC90cj4KICAgIDx0cj4KICAgICAgPHRkPnskbW9kLT5MYW5nKCdwcm9tcHRfaGllcmFyY2hpZXNfaW1wb3J0ZWQnKX06PC90ZD4KICAgICAgPHRkIGFsaWduPSJsZWZ0Ij57JG51bV9oaWVyfTwvdGQ+CiAgICA8L3RyPgogIDwvdGFibGU+CjwvZGl2PgoKPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgIDxhIGhyZWY9InskcmV0dXJuX3VybH0iIHRpdGxlPSJ7JG1vZC0+TGFuZygncmV0dXJuJyl9Ij57JG1vZC0+TGFuZygncmV0dXJuJyl9PC9hPgogIDwvcD4KPC9kaXY+]]></data>
	</file>
	<file>
	  <filename>/templates/editcategory.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyoKI0NNUyAtIENNUyBNYWRlIFNpbXBsZQojKGMpMjAwNC02IGJ5IFRlZCBLdWxwICh0ZWRAY21zbWFkZXNpbXBsZS5vcmcpCiNUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL2Ntc21hZGVzaW1wbGUub3JnCiMKI1RoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiNpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyhhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKI1RoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKI01FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKI0dOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiNZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKI0ZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BICAwMjExMS0xMzA3ICBVU0EKIwojJElkJAkKKn0KCjxoND57JG1vZC0+TGFuZygnYWRkX2VkaXRfY2F0ZWdvcnknKX08L2g0Pgp7JHN0YXJ0Zm9ybX0KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CgkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij4qeyRuYW1ldGV4dH06PC9wPgoJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRuYW1lfTwvcD4KCTwvZGl2PgoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCQk8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdkZXNjcmlwdGlvbicpfTo8L3A+CgkJPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgICAgICAgICAgICAgIHtjZ2VfdGV4dGFyZWEgd3lzaXd5Zz0xIHByZWZpeD0kYWN0aW9uaWQgbmFtZT0nZGVzY3JpcHRpb24nIGNvbnRlbnQ9JGRlc2NyaXB0aW9ufQogICAgICAgICAgICAgICAgPC9wPgoJPC9kaXY+Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJCTxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ2ltYWdldGV4dCcpfTo8L3A+CgkJPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJmaWxlIiBuYW1lPSJ7JGFjdGlvbmlkfWltYWdlIiBzaXplPSI0MCIgbWF4bGVuZ3RoPSIyNTUiLz4KICAgICAgICAgICAgICAgICAge2lmICRpbWFnZSAhPSAnJ30gCiAgICAgICAgICAgICAgICAgIDxici8+eyRtb2QtPkxhbmcoJ2N1cnJlbnRfdmFsdWUnKX06IHskaW1hZ2V9CiAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJjaGVja2JveCIgdmFsdWU9IjEiIG5hbWU9InskYWN0aW9uaWR9ZGVsaW1hZ2UiPiZuYnNwO3skbW9kLT5MYW5nKCdkZWxldGUnKX0KICAgICAgICAgICAgICAgICAgey9pZn0KICAgICAgICAgICAgICAgIDwvcD4KCTwvZGl2PgoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCQk8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdleHRyYTEnKX06PC9wPgoJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRleHRyYTF9PC9wPgoJPC9kaXY+Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJCTxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ2V4dHJhMicpfTo8L3A+CgkJPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dGV4dHJhMn08L3A+Cgk8L2Rpdj4KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CgkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygnZXh0cmEzJyl9OjwvcD4KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0ZXh0cmEzfTwvcD4KCTwvZGl2PgoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCQk8cCBjbGFzcz0icGFnZXRleHQiPiZuYnNwOzwvcD4KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JGhpZGRlbn17JHN1Ym1pdH17JGNhbmNlbH08L3A+Cgk8L2Rpdj4KeyRlbmRmb3JtfQo=]]></data>
	</file>
	<file>
	  <filename>/templates/editcompany.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyoKI0NNUyAtIENNUyBNYWRlIFNpbXBsZQojKGMpMjAwNC02IGJ5IFRlZCBLdWxwICh0ZWRAY21zbWFkZXNpbXBsZS5vcmcpCiNUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL2Ntc21hZGVzaW1wbGUub3JnCiMKI1RoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiNpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyhhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKI1RoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKI01FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKI0dOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiNZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKI0ZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BICAwMjExMS0xMzA3ICBVU0EKIwojJElkJAkKKn0KCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij57anNtaW59CnZhciBjb21waWQgPSAneyRjb21waWR9JzsKdmFyIGFjdGlvbmlkID0gJ3skYWN0aW9uaWR9JzsKdmFyIGNoZWNrdXJsdXJsID0gJ3ttb2R1bGVfYWN0aW9uX2xpbmsgbW9kdWxlPSdDb21wYW55RGlyZWN0b3J5JyBhY3Rpb249J2NoZWNrdXJsJyB1cmxvbmx5PTF9JyArICcmc3VwcHJlc3NvdXRwdXQ9ZmFsc2UnOwp2YXIgZ2VvY29kZXVybCAgPSAne21vZHVsZV9hY3Rpb25fbGluayBtb2R1bGU9J0NHR29vZ2xlTWFwcycgYWN0aW9uPSdnZXRnZW9jb2RlJyB1cmxvbmx5PTF9JyArICcmc3VwcHJlc3NvdXRwdXQ9ZmFsc2UnOwp7bGl0ZXJhbH0KZnVuY3Rpb24gZ2V0X3VybCgpCnsKICBpZiggdHlwZW9mIGpRdWVyeSA9PSAndW5kZWZpbmVkJykgCiAgewogICAgcmV0dXJuIGZhbHNlOwogIH0KCiAgdmFyIG5hbWUgPSBlbmNvZGVVUklDb21wb25lbnQoalF1ZXJ5KCcjbmFtZXRleHQnKS52YWwoKSk7CiAgdmFyIHR1cmwgPSBlbmNvZGVVUklDb21wb25lbnQoalF1ZXJ5KCcjdXJsdGV4dCcpLnZhbCgpKTsKICBpZiggdHVybCAhPSAnJyApCiAgewogICAgYWxlcnQoJ3svbGl0ZXJhbH17JG1vZC0+TGFuZygnZXJyb3JfdXJsbm90ZW1wdHknKX17bGl0ZXJhbH0nKTsKICAgIHJldHVybjsKICB9CgogIHZhciB1cmwgPSBjaGVja3VybHVybC5yZXBsYWNlKC9hbXA7L2csJycpOwogIGpRdWVyeS5wb3N0KHVybCwnbTFfY2RfbmFtZT0nK25hbWUsCiAgCWZ1bmN0aW9uKGRhdGEpIHsKCSAgaWYoIGRhdGEuc3RhdHVzID09ICdPSycgKSB7CiAgICAgICAgICAgIGpRdWVyeSgnI3VybHRleHQnKS52YWwoZGF0YS51cmwpOwogICAgICAgICAgfQogICAgICAgIH0sICdqc29uJyApOwp9CgpmdW5jdGlvbiBjaGVja191cmwoKQp7CiAgaWYoIHR5cGVvZiBqUXVlcnkgPT0gJ3VuZGVmaW5lZCcpIAogIHsKICAgIHJldHVybiBmYWxzZTsKICB9CgogIHZhciBuYW1lID0gZW5jb2RlVVJJQ29tcG9uZW50KGpRdWVyeSgnI25hbWV0ZXh0JykudmFsKCkpOwogIHZhciB0dXJsID0gZW5jb2RlVVJJQ29tcG9uZW50KGpRdWVyeSgnI3VybHRleHQnKS52YWwoKSk7CiAgaWYoIHR1cmwgPT0gJycgKSByZXR1cm47CgogIHZhciB1cmwgPSBjaGVja3VybHVybC5yZXBsYWNlKC9hbXA7L2csJycpOwogIGpRdWVyeS5wb3N0KHVybCwnbTFfY2RfbmFtZT0nK25hbWUrJyZtMV9jZF91cmw9Jyt0dXJsLAoJZnVuY3Rpb24oZGF0YSkgewogICAgICAgICAgYWxlcnQoJ3N0YXR1cyAnK2RhdGEuc3RhdHVzKTsKICAgICAgICB9LCAnanNvbicgKTsKfQoKZnVuY3Rpb24gZ2VvY29kZV9sb29rdXAoKQp7CiAgaWYoIHR5cGVvZiBqUXVlcnkgPT0gJ3VuZGVmaW5lZCcpIAogIHsKICAgIHJldHVybiBmYWxzZTsKICB9CgogIC8vIDEuICBHZXQgdGhlIGFkZHJlc3MKICB2YXIgdG1wID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeU5hbWUoYWN0aW9uaWQrJ2FkZHJlc3MnKTsKICB2YXIgYWRkcmVzcyA9IHRtcFswXS52YWx1ZTsKCiAgLy8gMi4gIGRvIHRoZSBhamF4IHJlcXVlc3QKICB2YXIgdXJsID0gZ2VvY29kZXVybC5yZXBsYWNlKC9hbXA7L2csJycpOwogIHZhciBsYXQgPSAwOwogIHZhciBsb25nID0gMDsKICBqUXVlcnkucG9zdCh1cmwsICdtMV9hZGRyZXNzPScrYWRkcmVzcywKCWZ1bmN0aW9uKGRhdGEpIHsgCiAgICAgICAgICBpZiggZGF0YS5zdGF0dXMgPT0gJ3N1Y2Nlc3MnICkgewogICAgICAgICAgICBsYXQgPSBkYXRhLmxhdDsgbG9uZz1kYXRhLmxvbjsKICAgICAgICAgCiAgICAgICAgICAgIHZhciBsYXRmaWVsZCA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlOYW1lKGFjdGlvbmlkKydsYXRpdHVkZScpWzBdOwogICAgICAgICAgICB2YXIgbG9uZ2ZpZWxkID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeU5hbWUoYWN0aW9uaWQrJ2xvbmdpdHVkZScpWzBdOwkKCSAgICBsYXRmaWVsZC52YWx1ZSA9IGxhdDsKCSAgICBsb25nZmllbGQudmFsdWUgPSBsb25nOwogICAgICAgICAgfQoJfSwgImpzb24iICk7CgogIC8vIDMuICBwYXJzZSB0aGUgcmVzdWx0CiAgLy8gNC4gIHBvcHVsYXRlIGZpZWxkcy4KCiAgcmV0dXJuIGZhbHNlOwp9CgpqUXVlcnkoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uKCl7CiAgalF1ZXJ5KCcuZXhwYW5kaXQnKS5jbGljayhmdW5jdGlvbigpewogICAgalF1ZXJ5KHRoaXMpLnBhcmVudCgpLm5leHQoJy5leHBhbmRhYmxlJykuc2xpZGVUb2dnbGUoMTAwMCk7CiAgfSk7CiAgLyogalF1ZXJ5KCdhLmZhbmN5Ym94JykuZmFuY3lib3goKTsgKi8KfSk7Cgp7L2xpdGVyYWx9CnsvanNtaW59PC9zY3JpcHQ+Cgp7JHN0YXJ0Zm9ybX0Ke2lmIGlzc2V0KCRjb21waWQpfQoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCQk8cCBjbGFzcz0icGFnZXRleHQiPnskaWR0ZXh0fTo8L3A+CgkJPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRjb21waWR9PC9wPgoJPC9kaXY+CnsvaWZ9CntpZiBpc3NldCgkZmV1X3VzZXJzKX0KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CgkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygnb3duZXInKX06PC9wPgoJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgICAgICAgICAgICAgICA8c2VsZWN0IG5hbWU9InskYWN0aW9uaWR9b3duZXJfaWQiPgogICAgICAgICAgICAgICAgICB7aHRtbF9vcHRpb25zIG9wdGlvbnM9JGZldV91c2VycyBzZWxlY3RlZD0kb3duZXJfaWR9CiAgICAgICAgICAgICAgICAgIDwvc2VsZWN0PgogICAgICAgICAgICAgICAgPC9wPgoJPC9kaXY+CnsvaWZ9Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJCTxwIGNsYXNzPSJwYWdldGV4dCI+KnskbmFtZXRleHR9OjwvcD4KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9InRleHQiIGlkPSJuYW1ldGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1jb21wYW55X25hbWUiIHZhbHVlPSJ7JGNvbXBhbnlfbmFtZX0iIHNpemU9IjMwIiBtYXhsZW5ndGg9IjI1NSIvPgogICAgICAgICAgICAgICAgPC9wPgoJPC9kaXY+Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJCTxwIGNsYXNzPSJwYWdldGV4dCI+e2lmICR1cmxfcmVxdWlyZWR9KnsvaWZ9eyRtb2QtPkxhbmcoJ3VybCcpfTo8L3A+CgkJPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBpZD0idXJsdGV4dCIgbmFtZT0ieyRhY3Rpb25pZH11cmwiIHZhbHVlPSJ7JHVybH0iIHNpemU9IjMwIiBtYXhsZW5ndGg9IjI1NSI+Jm5ic3A7CiAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9ImNoZWNrIiB2YWx1ZT0ieyRtb2QtPkxhbmcoJ2dldHVybCcpfSIgb25jbGljaz0iZ2V0X3VybCgpOyByZXR1cm4gZmFsc2U7Ij4KICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9InN1Ym1pdCIgbmFtZT0iY2hlY2siIHZhbHVlPSJ7JG1vZC0+TGFuZygnY2hlY2snKX0iIG9uY2xpY2s9ImNoZWNrX3VybCgpOyByZXR1cm4gZmFsc2U7Ij4KICAgICAgICAgICAgICAgIDwvcD4KCTwvZGl2PgoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCQk8cCBjbGFzcz0icGFnZXRleHQiPnskYWRkcmVzc3RleHR9OjwvcD4KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0YWRkcmVzc30mbmJzcDsKICAgICAgICAgICAgICAgICAge2lmIGlzc2V0KCRjYW5fZ2VvY29kZSl9CiAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9InskYWN0aW9uaWR9bG9va3VwIiB2YWx1ZT0ieyRtb2QtPkxhbmcoJ2xvb2t1cCcpfSIgb25jbGljaz0iZ2VvY29kZV9sb29rdXAoKTsgcmV0dXJuIGZhbHNlOyIvPgogICAgICAgICAgICAgICAgICB7L2lmfQogICAgICAgICAgICAgICAgPC9wPgoJPC9kaXY+Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJCTxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ2xhdGl0dWRlJyl9OjwvcD4KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0bGF0aXR1ZGV9PC9wPgoJPC9kaXY+Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJCTxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ2xvbmdpdHVkZScpfTo8L3A+CgkJPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dGxvbmdpdHVkZX08L3A+Cgk8L2Rpdj4KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CgkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHRlbGVwaG9uZXRleHR9OjwvcD4KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0dGVsZXBob25lfTwvcD4KCTwvZGl2PgoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCQk8cCBjbGFzcz0icGFnZXRleHQiPnskZmF4dGV4dH06PC9wPgoJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRmYXh9PC9wPgoJPC9kaXY+Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJCTxwIGNsYXNzPSJwYWdldGV4dCI+eyRlbWFpbHRleHR9OjwvcD4KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0ZW1haWx9PC9wPgoJPC9kaXY+Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJCTxwIGNsYXNzPSJwYWdldGV4dCI+eyR3ZWJzaXRldGV4dH06PC9wPgoJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXR3ZWJzaXRlfTwvcD4KCTwvZGl2PgoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCQk8cCBjbGFzcz0icGFnZXRleHQiPnskc3RhdHVzdGV4dH06PC9wPgoJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRzdGF0dXN9PC9wPgoJPC9kaXY+Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJCTxwIGNsYXNzPSJwYWdldGV4dCI+eyRkZXRhaWxzdGV4dH06PC9wPgoJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRkZXRhaWxzfTwvcD4KCTwvZGl2PgoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCQk8cCBjbGFzcz0icGFnZXRleHQiPnskaW1hZ2V0ZXh0fTo8L3A+CgkJPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbWFnZXVwbG9hZH0ge2lmICRpbWFnZWN1cnJlbnQgbmUgJyd9eyRtb2QtPkxhbmcoJ2N1cnJlbnRfdmFsdWUnKX06IHskaW1hZ2VjdXJyZW50fXskaW1hZ2VjdXJyZW50aGlkZGVufXsvaWZ9PC9wPgoJPC9kaXY+Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJCTxwIGNsYXNzPSJwYWdldGV4dCI+eyRsb2dvdGV4dH06PC9wPgoJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskbG9nb3VwbG9hZH0ge2lmICRsb2dvY3VycmVudCBuZSAnJ317JG1vZC0+TGFuZygnY3VycmVudF92YWx1ZScpfTogeyRsb2dvY3VycmVudH17JGxvZ29jdXJyZW50aGlkZGVufXsvaWZ9PC9wPgoJPC9kaXY+Cgl7aWYgJGN1c3RvbWZpZWxkc2NvdW50IGd0IDB9CgkJe2ZvcmVhY2ggZnJvbT0kY3VzdG9tZmllbGRzIGl0ZW09Y3VzdG9tZmllbGR9CgkJCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CgkJCQk8cCBjbGFzcz0icGFnZXRleHQiPnskY3VzdG9tZmllbGQtPm5hbWV9OjwvcD4KCQkJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskY3VzdG9tZmllbGQtPmlucHV0X2JveH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7aWYgaXNzZXQoJGN1c3RvbWZpZWxkLT50aHVtYl91cmwpfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxici8+PGEgY2xhc3M9ImZhbmN5Ym94IiBocmVmPSJ7JGN1c3RvbWZpZWxkLT5pbWFnZV91cmx9Ij48aW1nIHNyYz0ieyRjdXN0b21maWVsZC0+dGh1bWJfdXJsfSI+PC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsvaWZ9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPgoJCQk8L2Rpdj4KCQl7L2ZvcmVhY2h9Cgl7L2lmfQogICAgICAgIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICAgICAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdoaWVyYXJjaHknKX06PC9wPgogICAgICAgICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dGhpZXJwb3N9PC9wPgogICAgICAgIDwvZGl2PgoJe2lmICRjYXRlZ29yaWVzY291bnQgZ3QgMH0KCQl7Zm9yZWFjaCBmcm9tPSRjYXRlZ29yaWVzIGl0ZW09Y2F0ZWdvcnl9CgkJCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CgkJCQk8cCBjbGFzcz0icGFnZXRleHQiPnskY2F0ZWdvcnktPm5hbWV9OjwvcD4KCQkJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskY2F0ZWdvcnktPmNoZWNrYm94fSZuYnNwO3tjZ2ltYWdlIGltYWdlPSdpY29ucy9zeXN0ZW0vZXhwYW5kLmdpZicgYWx0PSdleHBhbmQnIGNsYXNzPSdleHBhbmRpdCcgd2lkdGg9JzE2JyBoZWlnaHQ9JzE2J308L3A+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InBhZ2VpbnB1dCBleHBhbmRhYmxlIiBzdHlsZT0iZGlzcGxheTogbm9uZTsiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtpZiBpc3NldCgkY2F0ZWdvcnktPmV4dHJhMSl9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJyLz4mbmJzcDsmbmJzcDsmbmJzcDt7JG1vZC0+TGFuZygnZXh0cmExJyl9OiB7JGNhdGVnb3J5LT5leHRyYTF9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgey9pZn0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7aWYgaXNzZXQoJGNhdGVnb3J5LT5leHRyYTIpfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxici8+Jm5ic3A7Jm5ic3A7Jm5ic3A7eyRtb2QtPkxhbmcoJ2V4dHJhMicpfTogeyRjYXRlZ29yeS0+ZXh0cmEyfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsvaWZ9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2lmIGlzc2V0KCRjYXRlZ29yeS0+ZXh0cmEzKX0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnIvPiZuYnNwOyZuYnNwOyZuYnNwO3skbW9kLT5MYW5nKCdleHRyYTMnKX06IHskY2F0ZWdvcnktPmV4dHJhM30KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7L2lmfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD4KCQkJPC9kaXY+CgkJey9mb3JlYWNofQoJey9pZn0KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CgkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij4mbmJzcDs8L3A+CgkJPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRoaWRkZW59eyRzdWJtaXR9e2lmIGlzc2V0KCRjYW5jZWwpfXskY2FuY2VsfXsvaWZ9PC9wPgoJPC9kaXY+CnskZW5kZm9ybX0K]]></data>
	</file>
	<file>
	  <filename>/templates/editfielddef.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgovKjwhW0NEQVRBWyovCmZ1bmN0aW9uIG9uY2hhbmdlX2ZsZHR5cGUoZWxlbSkKe2xkZWxpbX0KICB2YXIgaWR4ID0gZWxlbS5zZWxlY3RlZEluZGV4OwogIHZhciB2YWwgPSBlbGVtW2lkeF0udmFsdWU7CiAgCiAgdmFyIG1sID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ21heGxlbmd0aCcpOwogIHZhciBvcHRzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2Ryb3Bkb3duX29wdGlvbnMnKTsKICBpZiggdmFsID09ICd0ZXh0Ym94JyApCiAgICB7bGRlbGltfQogICAgICBtbC5zdHlsZS5kaXNwbGF5ID0gJ2Jsb2NrJzsKICAgICAgb3B0cy5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnOwogICAge3JkZWxpbX0KICBlbHNlIGlmKCB2YWwgPT0gJ2Ryb3Bkb3duJyApCiAgICB7bGRlbGltfQogICAgICBtbC5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnOwogICAgICBvcHRzLnN0eWxlLmRpc3BsYXkgPSAnYmxvY2snOwogICAge3JkZWxpbX0KICBlbHNlCiAgICB7bGRlbGltfQogICAgICBtbC5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnOwogICAgICBvcHRzLnN0eWxlLmRpc3BsYXkgPSAnbm9uZSc7CiAgICB7cmRlbGltfQp7cmRlbGltfQoKe2xpdGVyYWx9CmpRdWVyeSgnI2ZsZHR5cGUnKS5yZWFkeShmdW5jdGlvbigkKQp7IAogIHZhciBlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2ZsZHR5cGUnKTsKICBvbmNoYW5nZV9mbGR0eXBlKGUpOwp9KTsKey9saXRlcmFsfQovKl1dPiAqLwo8L3NjcmlwdD4KCnskc3RhcnRmb3JtfQo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+KnskbmFtZXRleHR9OjwvcD4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0bmFtZX08L3A+CjwvZGl2PgoKPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICA8cCBjbGFzcz0icGFnZXRleHQiPip7JHR5cGV0ZXh0fTo8L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICA8c2VsZWN0IGlkPSdmbGR0eXBlJyBuYW1lPSJ7JGFjdGlvbmlkfXR5cGUiIG9uY2hhbmdlPSJvbmNoYW5nZV9mbGR0eXBlKHRoaXMpOyI+CiAgICAgIHtodG1sX29wdGlvbnMgb3B0aW9ucz0kZmllbGR0eXBlcyBzZWxlY3RlZD0kZmxkdHlwZX0KICAgIDwvc2VsZWN0PgogIDwvcD4KPC9kaXY+Cgo8ZGl2IGlkPSJtYXhsZW5ndGgiIGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJPHAgY2xhc3M9InBhZ2V0ZXh0Ij4qeyRtYXhsZW5ndGh0ZXh0fTo8L3A+Cgk8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0bWF4bGVuZ3RofTwvcD4KPC9kaXY+CjxkaXYgaWQ9ImRyb3Bkb3duX29wdGlvbnMiIGNsYXNzPSJwYWdlb3ZlcmZsb3ciIHN0eWxlPSJkaXNwbGF5OiBub25lOyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij4qeyRtb2QtPkxhbmcoJ3Byb21wdF9kcm9wZG93bl9vcHRpb25zJyl9OjwvcD4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgIDx0ZXh0YXJlYSBuYW1lPSJ7JGFjdGlvbmlkfWRyb3Bkb3duX29wdGlvbnMiPnskZHJvcGRvd25fZGF0YX08L3RleHRhcmVhPgogICAgPGJyLz4KICAgIHskbW9kLT5MYW5nKCdpbmZvX2Ryb3Bkb3duX29wdGlvbnMnKX0KICA8L3A+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJPHAgY2xhc3M9InBhZ2V0ZXh0Ij4qeyR1c2VyZWRpdHRleHR9OjwvcD4KCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfdXNlcmVkaXR9PC9wPgo8L2Rpdj4KPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCTxwIGNsYXNzPSJwYWdldGV4dCI+KnskdXNlcnZpZXd0ZXh0fTo8L3A+Cgk8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X3VzZXJ2aWV3fTwvcD4KPC9kaXY+CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+Cgk8cCBjbGFzcz0icGFnZXRleHQiPiZuYnNwOzwvcD4KCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaGlkZGVufXskc3VibWl0fXskY2FuY2VsfTwvcD4KPC9kaXY+CnskZW5kZm9ybX0K]]></data>
	</file>
	<file>
	  <filename>/templates/edithier.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyRzdGFydGZvcm19Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJCTxwIGNsYXNzPSJwYWdldGV4dCI+KnskbmFtZXRleHR9OjwvcD4KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0bmFtZX08L3A+Cgk8L2Rpdj4KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CgkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHBhcmVudHRleHR9OjwvcD4KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JHBhcmVudGRyb3Bkb3dufTwvcD4KCTwvZGl2PgoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCQk8cCBjbGFzcz0icGFnZXRleHQiPiZuYnNwOzwvcD4KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JGhpZGRlbn17JHN1Ym1pdH17JGNhbmNlbH08L3A+Cgk8L2Rpdj4KeyRlbmRmb3JtfQo=]]></data>
	</file>
	<file>
	  <filename>/templates/fielddeflist.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyoKI0NNUyAtIENNUyBNYWRlIFNpbXBsZQojKGMpMjAwNC02IGJ5IFRlZCBLdWxwICh0ZWRAY21zbWFkZXNpbXBsZS5vcmcpCiNUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL2Ntc21hZGVzaW1wbGUub3JnCiMKI1RoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiNpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyhhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKI1RoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKI01FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKI0dOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiNZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKI0ZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BICAwMjExMS0xMzA3ICBVU0EKIwojJElkJAkKKn0KCntpZiAkaXRlbWNvdW50ID4gMH0KPHRhYmxlIGNlbGxzcGFjaW5nPSIwIiBjbGFzcz0icGFnZXRhYmxlIj4KCTx0aGVhZD4KCQk8dHI+CgkJCTx0aD57JGZpZWxkZGVmdGV4dH08L3RoPgoJCQk8dGg+eyR0eXBldGV4dH08L3RoPgoJCQk8dGggY2xhc3M9Im1vdmUiPiZuYnNwOzwvdGg+CgkJCTx0aCBjbGFzcz0icGFnZWljb24iPiZuYnNwOzwvdGg+CgkJCTx0aCBjbGFzcz0icGFnZWljb24iPiZuYnNwOzwvdGg+CgkJPC90cj4KCTwvdGhlYWQ+Cgk8dGJvZHk+Cntmb3JlYWNoIGZyb209JGl0ZW1zIGl0ZW09ZW50cnl9Cgl7Y3ljbGUgdmFsdWVzPSJyb3cxLHJvdzIiIGFzc2lnbj0ncm93Y2xhc3MnfQoJCTx0ciBjbGFzcz0ieyRyb3djbGFzc30iIG9ubW91c2VvdmVyPSJ0aGlzLmNsYXNzTmFtZT0neyRyb3djbGFzc31ob3Zlcic7IiBvbm1vdXNlb3V0PSJ0aGlzLmNsYXNzTmFtZT0neyRyb3djbGFzc30nOyI+CgkJCTx0ZD57JGVudHJ5LT5uYW1lfTwvdGQ+CgkJCTx0ZD57Y2FwdHVyZSBhc3NpZ249J3RtcCd9ZmllbGRfeyRlbnRyeS0+dHlwZX17L2NhcHR1cmV9eyRtb2QtPkxhbmcoJHRtcCl9PC90ZD4KCQkJPHRkPnskZW50cnktPnVwbGlua30geyRlbnRyeS0+ZG93bmxpbmt9PC90ZD4KCQkJPHRkPnskZW50cnktPmVkaXRsaW5rfTwvdGQ+CgkJCTx0ZD57JGVudHJ5LT5kZWxldGVsaW5rfTwvdGQ+CgkJPC90cj4Key9mb3JlYWNofQoJPC90Ym9keT4KPC90YWJsZT4Key9pZn0KCjxkaXYgY2xhc3M9InBhZ2VvcHRpb25zIj48cCBjbGFzcz0icGFnZW9wdGlvbnMiPnskYWRkbGlua308L3A+PC9kaXY+Cg==]]></data>
	</file>
	<file>
	  <filename>/templates/frontendimport_form.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyRpZm9ybXN0YXJ0fQo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9pbXBvcnRfdGVtcGxhdGUnKX08L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICA8dGV4dGFyZWEgbmFtZT0ieyRhY3Rpb25pZH1mZWltcG9ydF90ZW1wbGF0ZSI+eyRmZWltcG9ydF90ZW1wbGF0ZX08L3RleHRhcmVhPgogICAgPGJyLz4KICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9InskYWN0aW9uaWR9ZmVpbXBvcnRfc3VibWl0IiB2YWx1ZT0ieyRtb2QtPkxhbmcoJ3N1Ym1pdCcpfSIvPgogICAgPGlucHV0IHR5cGU9InN1Ym1pdCIgbmFtZT0ieyRhY3Rpb25pZH1mZWltcG9ydF9yZXNldCIgdmFsdWU9InskbW9kLT5MYW5nKCdyZXNldHRvZmFjdG9yeScpfSIvPgogIDwvcD4KPC9kaXY+CnskaWZvcm1lbmR9]]></data>
	</file>
	<file>
	  <filename>/templates/hierlist.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[e2lmICRpdGVtY291bnQgPiAwfQo8dGFibGUgY2VsbHNwYWNpbmc9IjAiIGNsYXNzPSJwYWdldGFibGUiPgoJPHRoZWFkPgoJCTx0cj4KCQkJPHRoPnskY2F0ZWdvcnl0ZXh0fTwvdGg+CgkJCTx0aCBjbGFzcz0icGFnZWljb24iPiZuYnNwOzwvdGg+CgkJCTx0aCBjbGFzcz0icGFnZWljb24iPiZuYnNwOzwvdGg+CgkJPC90cj4KCTwvdGhlYWQ+Cgk8dGJvZHk+Cntmb3JlYWNoIGZyb209JGl0ZW1zIGl0ZW09ZW50cnl9CiAgICAgICAgICAgICAgICB7Y3ljbGUgYXNzaWduPSdyb3djbGFzcycgdmFsdWVzPSdyb3cxLHJvdzInfQoJCTx0ciBjbGFzcz0ieyRyb3djbGFzc30iIG9ubW91c2VvdmVyPSJ0aGlzLmNsYXNzTmFtZT0neyRyb3djbGFzc31ob3Zlcic7IiBvbm1vdXNlb3V0PSJ0aGlzLmNsYXNzTmFtZT0neyRyb3djbGFzc30nOyI+CgkJCTx0ZD57JGVudHJ5LT5uYW1lfTwvdGQ+CgkJCTx0ZD57JGVudHJ5LT5lZGl0bGlua308L3RkPgoJCQk8dGQ+eyRlbnRyeS0+ZGVsZXRlbGlua308L3RkPgoJCTwvdHI+CnsvZm9yZWFjaH0KCTwvdGJvZHk+CjwvdGFibGU+CnsvaWZ9Cgo8ZGl2IGNsYXNzPSJwYWdlb3B0aW9ucyI+PHAgY2xhc3M9InBhZ2VvcHRpb25zIj57JGFkZGxpbmt9PC9wPjwvZGl2Pgo=]]></data>
	</file>
	<file>
	  <filename>/templates/importcsv.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGgzPnskbW9kLT5MYW5nKCdpbXBvcnRjc3YnKX08L2gzPgoKeyRmb3Jtc3RhcnR9CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X2RlbGltZXRlcicpfTwvcD4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9ZGVsaW1ldGVyIiB2YWx1ZT0ieyRtb2QtPkdldFByZWZlcmVuY2UoJ2ltcG9ydF9kZWxpbWV0ZXInKX0iIHNpemU9IjQiIG1heGxlbmd0aD0iNCIvPgogIDwvcD4KPC9kaXY+Cgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9jaGVja19kdXBsaWNhdGVzJyl9PC9wPgogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgPHNlbGVjdCBuYW1lPSJ7JGFjdGlvbmlkfWNoZWNrX2R1cGxpY2F0ZXMiPgogICAgICB7aHRtbF9vcHRpb25zIG9wdGlvbnM9JGR1cGxpY2F0ZV9vcHRzIHNlbGVjdGVkPSRtb2QtPkdldFByZWZlcmVuY2UoJ2ltcG9ydF9jaGVja2R1cGxpY2F0ZXMnKX0KICAgIDwvc2VsZWN0PgogIDwvcD4KPC9kaXY+Cgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9pbXBvcnRfZmllbGRkZWZzJyl9PC9wPgogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgPHNlbGVjdCBuYW1lPSJ7JGFjdGlvbmlkfWRvX2ZpZWxkZGVmcyI+CiAgICAgIHtodG1sX29wdGlvbnMgb3B0aW9ucz0keWVzbm9vcHRzIHNlbGVjdGVkPSRtb2QtPkdldFByZWZlcmVuY2UoJ2ltcG9ydF9maWVsZGRlZnMnKX0KICAgIDwvc2VsZWN0PgogIDwvcD4KPC9kaXY+CgoKPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfaW1wb3J0X2ZpZWxkdmFscycpfTwvcD4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgIDxzZWxlY3QgbmFtZT0ieyRhY3Rpb25pZH1kb19maWVsZHZhbHMiPgogICAgICB7aHRtbF9vcHRpb25zIG9wdGlvbnM9JHllc25vb3B0cyBzZWxlY3RlZD0kbW9kLT5HZXRQcmVmZXJlbmNlKCdpbXBvcnRfZmllbGR2YWxzJyl9CiAgICA8L3NlbGVjdD4KICA8L3A+CjwvZGl2PgoKPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfaW1wb3J0X2NhdGVnb3J5ZGVmcycpfTwvcD4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgIDxzZWxlY3QgbmFtZT0ieyRhY3Rpb25pZH1kb19jYXRlZ29yeWRlZnMiPgogICAgICB7aHRtbF9vcHRpb25zIG9wdGlvbnM9JHllc25vb3B0cyBzZWxlY3RlZD0kbW9kLT5HZXRQcmVmZXJlbmNlKCdpbXBvcnRfY2F0ZWdvcnlkZWZzJyl9CiAgICA8L3NlbGVjdD4KICA8L3A+CjwvZGl2PgoKPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfaW1wb3J0X2NhdGVnb3J5dmFscycpfTo8L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICA8c2VsZWN0IG5hbWU9InskYWN0aW9uaWR9ZG9fY2F0ZWdvcnl2YWxzIj4KICAgICAge2h0bWxfb3B0aW9ucyBvcHRpb25zPSR5ZXNub29wdHMgc2VsZWN0ZWQ9JG1vZC0+R2V0UHJlZmVyZW5jZSgnaW1wb3J0X2NhdGVnb3J5dmFscycpfQogICAgPC9zZWxlY3Q+CiAgPC9wPgo8L2Rpdj4KCjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X2NhdGVnb3J5Y29sdW1uJyl9OjwvcD4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGFjdGlvbmlkfWNhdGVnb3J5Y29sdW1uIiBzaXplPSIyMCIgdmFsdWU9InskbW9kLT5HZXRQcmVmZXJlbmNlKCdpbXBvcnRfY2F0ZWdvcnljb2x1bW4nKX0iLz4KICAgIDxici8+CiAgICB7JG1vZC0+TGFuZygnaW5mb19jYXRlZ29yeWNvbHVtbicpfQogIDwvcD4KPC9kaXY+Cgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9pbXBvcnRfaGllcmFyY2h5ZGVmcycpfTo8L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICA8c2VsZWN0IG5hbWU9InskYWN0aW9uaWR9ZG9faGllcmFyY2h5ZGVmcyI+CiAgICAgIHtodG1sX29wdGlvbnMgb3B0aW9ucz0keWVzbm9vcHRzIHNlbGVjdGVkPSRtb2QtPkdldFByZWZlcmVuY2UoJ2ltcG9ydF9oaWVyYXJjaHlkZWZzJyl9CiAgICA8L3NlbGVjdD4KICA8L3A+CjwvZGl2PgoKPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfaW1wb3J0X2hpZXJhcmNoeXZhbHMnKX08L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICA8c2VsZWN0IG5hbWU9InskYWN0aW9uaWR9ZG9faGllcmFyY2h5dmFscyI+CiAgICAgIHtodG1sX29wdGlvbnMgb3B0aW9ucz0keWVzbm9vcHRzIHNlbGVjdGVkPSRtb2QtPkdldFByZWZlcmVuY2UoJ2ltcG9ydF9oaWVyYXJjaHl2YWxzJyl9CiAgICA8L3NlbGVjdD4KICA8L3A+CjwvZGl2PgoKe2lmICRjYW5fbG9va3VwfQo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9pbXBvcnRfbG9va3VwbGF0bG9uZycpfTwvcD4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgIDxzZWxlY3QgbmFtZT0ieyRhY3Rpb25pZH1kb19sb29rdXAiPgogICAgICB7aHRtbF9vcHRpb25zIG9wdGlvbnM9JHllc25vb3B0cyBzZWxlY3RlZD0kbW9kLT5HZXRQcmVmZXJlbmNlKCdpbXBvcnRfbG9va3VwbGF0bG9uZycpfQogICAgPC9zZWxlY3Q+CiAgPC9wPgo8L2Rpdj4Key9pZn0KCntpZiAkdXJsX29wdGlvbmFsfQo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9jcmVhdGVfdXJsJyl9PC9wPgogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgPHNlbGVjdCBuYW1lPSJ7JGFjdGlvbmlkfWNyZWF0ZV91cmwiPgogICAgICB7aHRtbF9vcHRpb25zIG9wdGlvbnM9JHllc25vb3B0cyBzZWxlY3RlZD0kbW9kLT5HZXRQcmVmZXJlbmNlKCdpbXBvcnRfY3JlYXRlX3VybCcpfQogICAgPC9zZWxlY3Q+CiAgICA8YnIvPgogICAgeyRtb2QtPkxhbmcoJ2luZm9fY3JlYXRlX3VybCcpfQogIDwvcD4KPC9kaXY+CnsvaWZ9Cgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9pbXBvcnRfY3N2ZmlsZScpfTwvcD4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgIDxpbnB1dCB0eXBlPSJmaWxlIiBuYW1lPSJ7JGFjdGlvbmlkfWNzdmZpbGUiIHNpemU9IjQwIi8+CiAgPC9wPgo8L2Rpdj4KCgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+Jm5ic3A7PC9wPgogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICA8aW5wdXQgdHlwZT0ic3VibWl0IiBuYW1lPSJ7JGFjdGlvbmlkfXN1Ym1pdCIgdmFsdWU9InskbW9kLT5MYW5nKCdzdWJtaXQnKX0iLz4KICAgPGlucHV0IHR5cGU9InN1Ym1pdCIgbmFtZT0ieyRhY3Rpb25pZH1jYW5jZWwiIHZhbHVlPSJ7JG1vZC0+TGFuZygnY2FuY2VsJyl9Ii8+CiAgPC9wPgo8L2Rpdj4KeyRmb3JtZW5kfQ==]]></data>
	</file>
	<file>
	  <filename>/templates/importkml.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGgzPnskbW9kLT5MYW5nKCdpbXBvcnRfa21sJyl9PC9oMz4KCntpZiBpc3NldCgkZmluaXNoZWQpfQo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIHR5cGU9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X251bWltcG9ydGVkJyl9PC9wPgogIDxwIHR5cGU9InBhZ2VpbnB1dCI+eyRpbXBvcnRlZH08L3A+CjwvZGl2Pgp7aWYgaXNzZXQoJGVycm9yY291bnQpfQo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIHR5cGU9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X251bWVycm9ycycpfTwvcD4KICA8cCB0eXBlPSJwYWdlaW5wdXQiPnskZXJyb3Jjb3VudH08L3A+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIHR5cGU9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X2Vycm9ycycpfTwvcD4KICA8cCB0eXBlPSJwYWdlaW5wdXQiPgogICAgeyc8YnIvPid8ZXhwbG9kZTokZXJyb3JzfQogIDwvcD4KPC9kaXY+CnsvaWZ9CjxkaXYgY2xhc3M9ImhyIj48L2Rpdj4Key9pZn0KCnskZm9ybXN0YXJ0fQo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIHR5cGU9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X2ttbGZpbGUnKX08L3A+CiAgPHAgdHlwZT0icGFnZWlucHV0Ij4KICAgIDxpbnB1dCB0eXBlPSJmaWxlIiBuYW1lPSJ7JGFjdGlvbmlkfWttbGZpbGUiIHNpemU9IjUwIi8+CiAgPC9wPgo8L2Rpdj4KCjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgdHlwZT0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfaWdub3JlX2FkZHJlc3MnKX08L3A+CiAgPHAgdHlwZT0icGFnZWlucHV0Ij4KICAgIDxpbnB1dCB0eXBlPSJjaGVja2JveCIgbmFtZT0ieyRhY3Rpb25pZH1pZ25vcmVfYWRkcmVzcyIgdmFsdWU9IjEiLz4KICA8L3A+CjwvZGl2PgoKe2lmICRjYW5fZG9fbG9va3VwcyA9PSAxfQo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIHR5cGU9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X2NvbnZlcnRfYWRkcmVzcycpfTwvcD4KICA8cCB0eXBlPSJwYWdlaW5wdXQiPgogICAgPGlucHV0IHR5cGU9ImNoZWNrYm94IiBuYW1lPSJ7JGFjdGlvbmlkfWRvX2NvbnZlcnRfYWRkcmVzcyIgdmFsdWU9IjEiLz4KICA8L3A+CjwvZGl2Pgp7L2lmfQoKPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICA8cCB0eXBlPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9kdXBsaWNhdGVfbmFtZScpfTwvcD4KICA8cCB0eXBlPSJwYWdlaW5wdXQiPgogICAgPGlucHV0IHR5cGU9ImNoZWNrYm94IiBuYW1lPSJ7JGFjdGlvbmlkfWNoZWNrX2R1cGxpY2F0ZV9uYW1lIiB2YWx1ZT0iMSIvPgogIDwvcD4KPC9kaXY+Cgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIHR5cGU9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X3N0YXR1cycpfTwvcD4KICA8cCB0eXBlPSJwYWdlaW5wdXQiPnskaW5wdXRzdGF0dXN9PC9wPgo8L2Rpdj4KCjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgdHlwZT0icGFnZXRleHQiPjwvcD4KICA8cCB0eXBlPSJwYWdlaW5wdXQiPgogICAgPGlucHV0IHR5cGU9InN1Ym1pdCIgbmFtZT0ieyRhY3Rpb25pZH1zdWJtaXQiIHZhbHVlPSJ7JG1vZC0+TGFuZygnc3VibWl0Jyl9Ii8+CiAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiBuYW1lPSJ7JGFjdGlvbmlkfWNhbmNlbCIgdmFsdWU9InskbW9kLT5MYW5nKCdjYW5jZWwnKX0iLz4KICA8L3A+CjwvZGl2Pgp7JGZvcm1lbmR9]]></data>
	</file>
	<file>
	  <filename>/templates/orig_admin_feedit_email_template.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogZW1haWwgc2VudCB0byBhbiBhZG1pbmlzdHJhdG9yIHdoZW4gYW4gRkVVIGFkZHMgb3IgY2hhbmdlcyBhIHJlY29yZCAqfQoKPGgzPkNvbXBhbnkgaW5mb3JtYXRpb24gaGFzIGJlZW4gY2hhbmdlZDwvaDM+Cgo8dGFibGU+Cjx0cj4KIDx0ZD57JG1vZC0+TGFuZygnY29tcGFueW5hbWUnKX06PC90ZD4KIDx0ZD57JGNvbXBhbnlfbmFtZX08L3RkPgo8L3RyPgo8dHI+CiA8dGQ+eyRtb2QtPkxhbmcoJ3dlYnNpdGUnKX06PC90ZD4KIDx0ZD48YSBocmVmPSJ7JHdlYnNpdGV9Ij57JHdlYnNpdGV9PC9hPjwvdGQ+CjwvdHI+Cjx0cj4KIDx0ZD57JG1vZC0+TGFuZygnY29udGFjdGVtYWlsJyl9OjwvdGQ+CiA8dGQ+eyRjb250YWN0ZW1haWx9PC90ZD4KPC90cj4KPHRyPgogPHRkPnskbW9kLT5MYW5nKCdvd25lcicpfTo8L3RkPgogPHRkPnskdWluZm8udXNlcm5hbWV9Jm5ic3A7KHskbW9kLT5MYW5nKCdleHBpcmVzJyl9IHskdWluZm8uZXhwaXJlc3xjbXNfZGF0ZV9mb3JtYXR9KTwvdGQ+CjwvdHI+Cjx0cj4KIDx0ZD57JG1vZC0+TGFuZygndGVsZXBob25lJyl9OjwvdGQ+CiA8dGQ+eyR0ZWxlcGhvbmV9PC90ZD4KPC90cj4KPHRyPgogPHRkPnskbW9kLT5MYW5nKCdmYXgnKX06PC90ZD4KIDx0ZD57JGZheH08L3RkPgo8L3RyPgo8dHI+CiA8dGQ+eyRtb2QtPkxhbmcoJ2FkZHJlc3MnKX06PC90ZD4KIDx0ZD57JGFkZHJlc3N9PC90ZD4KPC90cj4KPHRyPgogPHRkPnskbW9kLT5MYW5nKCdsYXRpdHVkZScpfTo8L3RkPgogPHRkPnskbGF0aXR1ZGV9PC90ZD4KPC90cj4KPHRyPgogPHRkPnskbW9kLT5MYW5nKCdsb25naXR1ZGUnKX06PC90ZD4KIDx0ZD57JGxvbmdpdHVkZX08L3RkPgo8L3RyPgp7aWYgaXNzZXQoJGZpZWxkZGVmcyl9Cntmb3JlYWNoIGZyb209JGZpZWxkZGVmcyBpdGVtPSdvbmUnfQo8dHI+CiA8dGQ+eyRmaWVsZGRlZi0+bmFtZX06PC90ZD4KIDx0ZD57JGZpZWxkZGVmLT52YWx1ZX08L3RkPgo8L3RyPgp7L2ZvcmVhY2h9CnsvaWZ9Cgp7aWYgaXNzZXQoJGNhdGVnb3JpZXMpfQo8dHI+CiAgPHRkPnskbW9kLT5MYW5nKCdjYXRlZ29yaWVzJyl9OjwvdGQ+CiAgPHRkPnsnLCAnfGltcGxvZGU6JGNhdGVnb3JpZXN9PC90ZD4KPC90cj4Key9pZn0KPC90YWJsZT4KCjxwcmU+Cjxjb2RlPgp7JHRlc3R8QHByaW50X3J9CjwvY29kZT4KPC9wcmU+Cgo=]]></data>
	</file>
	<file>
	  <filename>/templates/orig_categorylist_template.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[e2ZvcmVhY2ggZnJvbT0kY2F0ZWdvcnlsaXN0IGl0ZW09J29iaid9CiAgPGRpdiBjbGFzcz0iQ29tcGFueURpcmVjdG9yeUNhdGVnb3J5Ij4KICB7aWYgaXNzZXQoJG9iai0+Y291bnQpICYmICRvYmotPmNvdW50IGd0IDB9CiAgICA8YSBocmVmPSJ7JG9iai0+c3VtbWFyeV91cmx9Ij57JG9iai0+bmFtZX08L2E+KHskb2JqLT5jb3VudH0pCiAge2Vsc2V9CiAgICB7JG9iai0+bmFtZX0gKDApCiAgey9pZn0KICA8L2Rpdj4Key9mb3JlYWNofQ==]]></data>
	</file>
	<file>
	  <filename>/templates/orig_detail_template.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGRpdiBjbGFzcz0iQ29tcGFueURpcmVjdG9yeUl0ZW0iPgoKTmFtZTogeyRlbnRyeS0+Y29tcGFueV9uYW1lfTxiciAvPgoKe2lmICRlbnRyeS0+YWRkcmVzcyBuZSAnJ30KQWRkcmVzczogeyRlbnRyeS0+YWRkcmVzc308YnIgLz4Key9pZn0KCntpZiAkZW50cnktPnRlbGVwaG9uZSBuZSAnJ30KVGVsZXBob25lOiB7JGVudHJ5LT50ZWxlcGhvbmV9PGJyIC8+CnsvaWZ9Cgp7aWYgJGVudHJ5LT5mYXggbmUgJyd9CkZheDogeyRlbnRyeS0+ZmF4fQp7L2lmfQoKe2lmICRlbnRyeS0+Y29udGFjdF9lbWFpbCBuZSAnJ30KQ29udGFjdCBFbWFpbDogPGEgaHJlZj0ibWFpbHRvOnskZW50cnktPmNvbnRhY3RfZW1haWx9Ij57JGVudHJ5LT5jb250YWN0X2VtYWlsfTwvYT48YnIgLz4Key9pZn0KCntpZiAkZW50cnktPndlYnNpdGUgbmUgJyd9CldlYnNpdGU6IDxhIGhyZWY9InskZW50cnktPndlYnNpdGV9Ij57JGVudHJ5LT53ZWJzaXRlfTwvYT48YnIgLz4Key9pZn0KCntpZiAkZW50cnktPmRldGFpbHMgbmUgJyd9CkRldGFpbHM6PGJyIC8+CnskZW50cnktPmRldGFpbHN9PGJyIC8+CnsvaWZ9Cgp7aWYgJGVudHJ5LT5waWN0dXJlX2xvY2F0aW9uIG5lICcnfQpQaWN0dXJlOiA8aW1nIHNyYz0ieyRlbnRyeS0+cGljdHVyZV9wYXRofSIgLz48YnIgLz4Key9pZn0KCntpZiAkZW50cnktPmxvZ29fbG9jYXRpb24gbmUgJyd9CkxvZ286IDxpbWcgc3JjPSJ7JGVudHJ5LT5sb2dvX3BhdGh9IiAvPjxiciAvPgp7L2lmfQoKe2lmIGlzc2V0KCRlbnRyeS0+ZmllbGRzKSB9CiAge2ZvcmVhY2ggZnJvbT0kZW50cnktPmZpZWxkcyBrZXk9J2ZpZWxkX25hbWUnIGl0ZW09Y3VzdG9tZmllbGR9Cgl7JGN1c3RvbWZpZWxkLT5uYW1lfTogeyRjdXN0b21maWVsZC0+dmFsdWV9PGJyIC8+CiAgey9mb3JlYWNofQp7L2lmfQoKe2lmICRjYXRlZ29yeXRleHQgbmUgJyd9CkNhdGVnb3JpZXM6IHskY2F0ZWdvcnl0ZXh0fTxiciAvPgp7L2lmfQoKPC9kaXY+Cg==]]></data>
	</file>
	<file>
	  <filename>/templates/orig_frontendform_template.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[e2lmICRjb21wYW55aWQgPiAxfQo8aDQ+eyRtb2QtPkxhbmcoJ2VkaXRjb21wYW55Jyl9PC9oND4Ke2Vsc2V9CjxoND57JG1vZC0+TGFuZygnYWRkY29tcGFueScpfTwvaDQ+CnsvaWZ9Cgp7Y2dlcnJvcn17JG1lc3NhZ2V9ey9jZ2Vycm9yfQoKeyRzdGFydGZvcm19Cgk8ZGl2IGNsYXNzPSJwYWdlcm93Ij4KCQk8ZGl2IGNsYXNzPSJyb3d0ZXh0Ij57JG5hbWV0ZXh0fTwvZGl2PgoJCTxkaXYgY2xhc3M9InJvd2lucHV0Ij57JGlucHV0bmFtZX08L2Rpdj4KCTwvZGl2PgoKICAgICAgICB7aWYgaXNzZXQoJGlucHV0c3RhdHVzKX0KICAgICAgICA8ZGl2IGNsYXNzPSJwYWdlcm93Ij4KCQkgICA8ZGl2IGNsYXNzPSJyb3d0ZXh0Ij57JG1vZC0+TGFuZygnc3RhdHVzJyl9PC9kaXY+CgkJICAgPGRpdiBjbGFzcz0icm93aW5wdXQiPnskaW5wdXRzdGF0dXN9PC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgICAgey9pZn0KCiAgICAgICAgPGRpdiBjbGFzcz0icGFnZXJvdyI+CgkJICAgPGRpdiBjbGFzcz0icm93dGV4dCI+eyRhZGRyZXNzdGV4dH08L2Rpdj4KCQkgICA8ZGl2IGNsYXNzPSJyb3dpbnB1dCI+eyRpbnB1dGFkZHJlc3N9PC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0icGFnZXJvdyI+CgkJICAgPGRpdiBjbGFzcz0icm93dGV4dCI+eyRtb2QtPkxhbmcoJ2xhdGl0dWRlJyl9PC9kaXY+CgkJICAgPGRpdiBjbGFzcz0icm93aW5wdXQiPnskaW5wdXRsYXRpdHVkZX08L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJwYWdlcm93Ij4KCQkgICA8ZGl2IGNsYXNzPSJyb3d0ZXh0Ij57JG1vZC0+TGFuZygnbG9uZ2l0dWRlJyl9PC9kaXY+CgkJICAgPGRpdiBjbGFzcz0icm93aW5wdXQiPnskaW5wdXRsb25naXR1ZGV9PC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0icGFnZXJvdyI+CgkJICAgPGRpdiBjbGFzcz0icm93dGV4dCI+eyR0ZWxlcGhvbmV0ZXh0fTwvZGl2PgoJCSAgIDxkaXYgY2xhc3M9InJvd2lucHV0Ij57JGlucHV0dGVsZXBob25lfTwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9InBhZ2Vyb3ciPgoJCSAgIDxkaXYgY2xhc3M9InJvd3RleHQiPnskZmF4dGV4dH08L2Rpdj4KCQkgICA8ZGl2IGNsYXNzPSJyb3dpbnB1dCI+eyRpbnB1dGZheH08L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJwYWdlcm93Ij4KCQkgICA8ZGl2IGNsYXNzPSJyb3d0ZXh0Ij57JGVtYWlsdGV4dH08L2Rpdj4KCQkgICA8ZGl2IGNsYXNzPSJyb3dpbnB1dCI+eyRpbnB1dGVtYWlsfTwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9InBhZ2Vyb3ciPgoJCSAgIDxkaXYgY2xhc3M9InJvd3RleHQiPnskd2Vic2l0ZXRleHR9PC9kaXY+CgkJICAgPGRpdiBjbGFzcz0icm93aW5wdXQiPnskaW5wdXR3ZWJzaXRlfTwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9InBhZ2Vyb3ciPgoJCSAgIDxkaXYgY2xhc3M9InJvd3RleHQiPnskZGV0YWlsc3RleHR9PC9kaXY+CgkJICAgPGRpdiBjbGFzcz0icm93aW5wdXQiPnskaW5wdXRkZXRhaWxzfTwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9InBhZ2Vyb3ciPgoJCSAgIDxkaXYgY2xhc3M9InJvd3RleHQiPnskaW1hZ2V0ZXh0fTwvZGl2PgoJCSAgIDxkaXYgY2xhc3M9InJvd2lucHV0Ij57JGltYWdlY3VycmVudH17JGltYWdlY3VycmVudGhpZGRlbn17JGltYWdldXBsb2FkfXskZGVsZXRldGV4dH17JGltYWdlY3VycmVudGRlbGV0ZX08L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJwYWdlcm93Ij4KCQkgICA8ZGl2IGNsYXNzPSJyb3d0ZXh0Ij57JGxvZ290ZXh0fTwvZGl2PgoJCSAgIDxkaXYgY2xhc3M9InJvd2lucHV0Ij57JGxvZ29jdXJyZW50fXskbG9nb2N1cnJlbnRoaWRkZW59eyRsb2dvdXBsb2FkfXskZGVsZXRldGV4dH17JGxvZ29jdXJyZW50ZGVsZXRlfTwvZGl2PgogICAgICAgIDwvZGl2PgoJICAgIHtpZiAkY3VzdG9tZmllbGRzY291bnQgZ3QgMH0KCQkgICAge2ZvcmVhY2ggZnJvbT0kY3VzdG9tZmllbGRzIGl0ZW09Y3VzdG9tZmllbGR9CgkJCTxkaXYgY2xhc3M9InBhZ2Vyb3ciPgoJCQkJPHAgY2xhc3M9InJvd3RleHQiPnskY3VzdG9tZmllbGQtPm5hbWV9OjwvcD4KCQkJCTxwIGNsYXNzPSJyb3dpbnB1dCI+eyRjdXN0b21maWVsZC0+aW5wdXRfYm94fTwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7aWYgaXNzZXQoJGN1c3RvbWZpZWxkLT50aHVtYl91cmwpfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGNsYXNzPSJmYW5jeWJveCIgaHJlZj0ieyRjdXN0b21maWVsZC0+aW1hZ2VfdXJsfSI+PGltZyBzcmM9InskY3VzdG9tZmllbGQtPnRodW1iX3VybH0iPjwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7L2lmfQoJCQk8L2Rpdj4KCQkgICAgey9mb3JlYWNofQogIAkgICAgey9pZn0KICAgICAgICA8ZGl2IGNsYXNzPSJwYWdlcm93Ij4KCQkgICA8ZGl2IGNsYXNzPSJyb3d0ZXh0Ij57JG1vZC0+TGFuZygnaGllcmFyY2h5Jyl9OjwvZGl2PgoJCSAgIDxkaXYgY2xhc3M9InJvd2lucHV0Ij57JGlucHV0aGllcn08L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgCSAgICB7aWYgJGNhdGVnb3JpZXNjb3VudCBndCAwfQogICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwYWdlcm93Ij4KICAgCQkgICAgIDxwIGNsYXNzPSJyb3d0ZXh0Ij57JG1vZC0+TGFuZygnY2F0ZWdvcmllcycpfTo8L3A+CiAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJyb3dpbnB1dCI+CiAgICAgICAgICAgICAgICAgICAgICAgPHNlbGVjdCBuYW1lPSJ7JGFjdGlvbmlkfWNkX2NhdGVnb3JpZXNbXSIgbXVsdGlwbGU9Im11bHRpcGxlIiBzaXplPSI1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgIHtodG1sX29wdGlvbnMgb3B0aW9ucz0kY2F0bmFtZXMgc2VsZWN0ZWQ9JHNlbF9jYXRlZ29yaWVzIn0KICAgICAgICAgICAgICAgICAgICAgICA8L3NlbGVjdD4KICAgICAgICAgICAgICAgICAgICAgPC9wPgogICAgICAgICAgICAgICAgICA8L2Rpdj4KCSAgICB7L2lmfQoJICAgIDxkaXYgY2xhc3M9InBhZ2Vyb3ciPgoJCSAgPHAgY2xhc3M9InJvd3RleHQiPiZuYnNwOzwvcD4KICAJCSAgPHAgY2xhc3M9InJvd2lucHV0Ij57JHN1Ym1pdH08L3A+CgkgICAgPC9kaXY+CiAgICAgIHskZW5kZm9ybX0=]]></data>
	</file>
	<file>
	  <filename>/templates/orig_frontendimport_template.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogZnJvbnRlbmQgY3N2IGltcG9ydCB0ZW1wbGF0ZSAqfQp7aWYgaXNzZXQoJG1lc3NhZ2UpfQo8cD48c3Ryb25nPnskbWVzc2FnZX08L3N0cm9uZz48L3A+Cjxoci8+CnsvaWZ9CntpZiBpc3NldCgkZXJyb3JzKX0KPGRpdiBjbGFzcz0iZXJyb3IiPgo8dWw+CiAge2ZvcmVhY2ggZnJvbT0kZXJyb3JzIGl0ZW09J2Vycm9yJ30KICAgIDxsaT57JGVycm9yfTwvbGk+CiAgey9mb3JlYWNofQo8L3VsPgo8L2Rpdj4Key9pZn0KCnskZm9ybXN0YXJ0fQo8cD57JG1vZC0+TGFuZygnaW5mb19jc3ZmaWxlJyl9PC9wPgp7aWYgJG1heHJlY29yZHMgPiAwfTxwPnskbW9kLT5MYW5nKCdtc2dfc2xvdHN1c2VkJywkbnVtcmVjb3JkcywkbWF4cmVjb3Jkcyl9PC9wPnsvaWZ9CjxkaXYgY2xhc3M9InBhZ2Vyb3ciPgogIDxwIGNsYXNzPSJmb3JtcHJvbXB0Ij57JG1vZC0+TGFuZygnZGVsaW1pdGVyJyl9PC9wPgogIDxwIGNsYXNzPSJmb3JtaW5wdXQiPgogICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9Y2RfZGVsaW1pdGVyIiBzaXplPSIzIiBtYXhsZW5ndGg9IjMiIHZhbHVlPSIsIi8+CiAgPC9wPgo8L2Rpdj4KPGRpdiBjbGFzcz0icGFnZXJvdyI+CiAgPHAgY2xhc3M9ImZvcm1wcm9tcHQiPnskbW9kLT5MYW5nKCdpbXBvcnRfZmlsZW5hbWUnKX08L3A+CiAgPHAgY2xhc3M9ImZvcm1pbnB1dCI+CiAgICA8aW5wdXQgdHlwZT0iZmlsZSIgbmFtZT0ieyRhY3Rpb25pZH1jZF9jc3ZmaWxlIiBzaXplPSI1MCIvPgogIDwvcD4KPC9kaXY+CjxkaXYgY2xhc3M9InBhZ2Vyb3ciPgogIDxwIGNsYXNzPSJmb3JtcHJvbXB0Ij48L3A+CiAgPHAgY2xhc3M9ImZvcm1pbnB1dCI+CiAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiBuYW1lPSJ7JGFjdGlvbmlkfWNkX3N1Ym1pdCIgdmFsdWU9InskbW9kLT5MYW5nKCdzdWJtaXQnKX0iLz4KICA8L3A+CjwvZGl2PgoKeyRmb3JtZW5kfQ==]]></data>
	</file>
	<file>
	  <filename>/templates/orig_frontendlist_template.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogdGVtcGxhdGUgdG8gbGlzdCBhIHBhcnRpY3VsYXIgdXNlcnMgY29tcGFuaWVzIGFuZCBvcHRpb25hbGx5IGFsbG93IGVkaXRpbmcgKn0KPGRpdiBpZD0iY29tcGRpcl9mcm9udGVuZF9saXN0Ij4Ke2lmIGlzc2V0KCRyZWNvcmRzKX0KPHRhYmxlPgogIDx0aGVhZD4KICAgIDx0cj4KICAgICAgPHRoPnskbW9kLT5MYW5nKCdpZCcpfTwvdGg+CiAgICAgIDx0aD57JG1vZC0+TGFuZygnbmFtZScpfTwvdGg+CiAgICAgIDx0aD57JG1vZC0+TGFuZygnc3RhdHVzJyl9PC90aD4KICAgICAgPHRoPnskbW9kLT5MYW5nKCdjcmVhdGVkJyl9PC90aD4KICAgICAgPHRoPnskbW9kLT5MYW5nKCdtb2RpZmllZCcpfTwvdGg+CiAgICAgIDx0aCBjbGFzcz0iaWNvbiI+PC90aD4KICAgICAgPHRoIGNsYXNzPSJpY29uIj48L3RoPgogICAgPC90cj4KICA8L3RoZWFkPgogIDx0Ym9keT4KICB7Zm9yZWFjaCBmcm9tPSRyZWNvcmRzIGl0ZW09J29uZXJlY29yZCd9CiAgICA8dHI+CiAgICAgIDx0ZD57JG9uZXJlY29yZC5pZH08L3RkPgogICAgICA8dGQ+eyRvbmVyZWNvcmQuY29tcGFueV9uYW1lfTwvdGQ+CiAgICAgIDx0ZD57JG1vZC0+TGFuZygkb25lcmVjb3JkLnN0YXR1cyl9PC90ZD4KICAgICAgPHRkPnskb25lcmVjb3JkLmNyZWF0ZV9kYXRlfGNtc19kYXRlX2Zvcm1hdH08L3RkPgogICAgICA8dGQ+eyRvbmVyZWNvcmQubW9kaWZpZWRfZGF0ZXxjbXNfZGF0ZV9mb3JtYXR9PC90ZD4KICAgICAgPHRkPjxhIGhyZWY9Inskb25lcmVjb3JkLmVkaXRfdXJsfSI+eyRtb2QtPkxhbmcoJ2VkaXQnKX08L3RkPgogICAgICA8dGQ+PGEgaHJlZj0ieyRvbmVyZWNvcmQuZGVsZXRlX3VybH0iPnskbW9kLT5MYW5nKCdkZWxldGUnKX08L3RkPgogICAgPC90cj4KICB7L2ZvcmVhY2h9CiAgPC90Ym9keT4KPC90YWJsZT4KPGJyLz4Key9pZn0Ke2lmIGlzc2V0KCRmZV9hZGRfdXJsKX0KPGEgY2xhc3M9ImxpbmsiIGhyZWY9InskZmVfYWRkX3VybH0iPkFkZCBOZXcgUmVjb3JkPC9hPgp7aWYgaXNzZXQoJGZlX2ltcG9ydF91cmwpfQo8YnIvPgo8YSBjbGFzcz0ibGluayIgaHJlZj0ieyRmZV9pbXBvcnRfdXJsfSI+SW1wb3J0IEZyb20gQVNDSUk8L2E+CnsvaWZ9CnsvaWZ9CjwvZGl2Pg==]]></data>
	</file>
	<file>
	  <filename>/templates/orig_hierlist_template.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[e2lmICFpc3NldCgkZGF0YWtleSl9CiAge2Fzc2lnbiB2YXI9J2RhdGFrZXknIHZhbHVlPSdub2RlJ30Key9pZn0Ke2lmICFpc3NldCgkaGRlcHRoKX17YXNzaWduIHZhcj0naGRlcHRoJyB2YWx1ZT0xfXsvaWZ9Cntmb3JlYWNoIGZyb209JGhpZXJkYXRhIGtleT0na2V5JyBpdGVtPSdpdGVtJ30KICA8dWwgY2xhc3M9ImNkX2hpZXIteyRoZGVwdGh9Ij4KICB7aWYgJGtleSA9PSAkZGF0YWtleX0KICAgIHsqIGl0J3MgYSBub2RlLCB3ZSBkaXNwbGF5IGl0ICp9CiAgICA8bGk+e2lmICRpdGVtLmNvdW50IGd0IDB9CiAgICAgICAgIDxhIGhyZWY9InskaXRlbS51cmx9Ij57JGl0ZW0ubmFtZX0gKHskaXRlbS5jb3VudH0pPC9hPgogICAgICAgIHtlbHNlfQogICAgICAgICB7JGl0ZW0ubmFtZX0gKHskaXRlbS5jb3VudH0pCiAgICAgICAgey9pZn0KICAgIDwvbGk+CiAge2Vsc2V9CiAgICB7KiBpdCdzIGEgY2hpbGQgLS0gY2FsbCB0aGlzIHRlbXBsYXRlIGFnYWluIHdpdGggdGhlIG5vZGUgKn0KICAgIHtpbmNsdWRlIGZpbGU9JHNtYXJ0eS50ZW1wbGF0ZSBoaWVyZGF0YT0kaXRlbSBkYXRha2V5PSdub2RlJyBoZGVwdGg9JGhkZXB0aCsxfQogIHsvaWZ9CiAgPC91bD4Key9mb3JlYWNofQ==]]></data>
	</file>
	<file>
	  <filename>/templates/orig_searchform_template.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogc2VhcmNoIGZvcm0gdGVtcGxhdGUgKn0KeyogdmFsaWQgZmllbGRzIGFyZToKICAgeyRhY3Rpb25pZH1jZF9zdWJtaXQgLSAoc3RyaW5nKSBmb3IgYSBzdWJtaXQgYnV0dG9uCiAgIHskYWN0aW9uaWR9Y2RfY2FuY2VsIC0gKHN0cmluZykgZm9yIGEgY2FuY2VsIGJ1dHRvbgogICB7JGFjdGlvbmlkfWNkX2xhdGl0dWRlIC0gKGZsb2F0KSAtIHNwZWNpZnkgYSBsb25naXR1ZGUgYW5kIGxvbmdpdHVkZQogICB7JGFjdGlvbmlkfWNkX2xvbmdpdHVkZSAtIChmbG9hdCkgLSBzcGVjaWZ5IGEgbG9uZ2l0dWRlIGFuZCBsb25naXR1ZGUKICAgeyRhY3Rpb25pZH1jZF9jb3VudHJ5IC0gKHN0cmluZykgZm9yIGEgcG9zdGFsIGNvZGUgKHZhbGlkIG9ubHkgaWYgdGhlIFBvc3Rjb2RlcyBtb2R1bGUgaXMgaW5zdGFsbGVkKSAodXNlIHR3byBsZXR0ZXIgY291bnRyeSBjb2RlKQogICAgICAoZGVmYXVsdCA9IFVTKQogICB7JGFjdGlvbmlkfWNkX3Bvc3RhbCAgLSAoc3RyaW5nKSBmb3IgYSBwb3N0YWwgY29kZSAodmFsaWQgb25seSBpZiB0aGUgUG9zdGNvZGVzIG1vZHVsZSBpcyBpbnN0YWxsZWQpICAgCiAgIHskYWN0aW9uaWR9Y2RfYWRkcmVzcyAtIChzdHJpbmcpIGZvciBhbiBhZGRyZXNzCiAgICAgIChkZWZhdWx0ID0gRU1QVFkpCiAgIHskYWN0aW9uaWR9Y2RfcmFkaXVzIC0gKGludCkgZm9yIGEgZGlzdGFuY2Ugc2VhcmNoICh2YWxpZCBvbmx5IGlmIHRoZSBQb3N0Y29kZXMgbW9kdWxlIGlzIGluc3RhbGxlZCkgICAKICAgICAgKGRlZmF1bHQgPSA1MCkKICAgeyRhY3Rpb25pZH1jZF91bml0cyAgLSAoc3RyaW5nKSBmb3IgYSBkaXN0YW5jZSBzZWFyY2ggKHZhbGlkIG9ubHkgaWYgdGhlIFBvc3Rjb2RlcyBtb2R1bGUgaXMgaW5zdGFsbGVkKSAoImttIiBvciAibWlsZXMiKQogICAgICAoZGVmYXVsdCA9IG1pbGVzKQogICB7JGFjdGlvbmlkfWNkX25hbWUgICAtIChzdHJpbmcpIGZvciBhIGNvbXBhbnkgbmFtZQogICAgICAoZGVmYXVsdCA9IEVNUFRZKQogICB7JGFjdGlvbmlkfWNkX25hbWVfdHlwZSAtIChzdHJpbmcpIGNvbnRyb2xzIGhvdyB0aGUgbmFtZSBpcyB1c2VkICgiZXhhY3QiIG9yICJsaWtlIikKICAgICAgKGRlZmF1bHQgPSBleGFjdCkKICAgeyRhY3Rpb25pZH1jZF91c2VfY2F0ZWdvcmllc1tdIC0gKGFycmF5IG9mIGludGVnZXJzKSB0byBmaWx0ZXIgb24gY2F0ZWdvcmllcy4gIFVzZSB0aGUgeyRjYXRlZ29yaWVzfSBhcnJheSB0byBidWlsZCBjaGVja2JveGVzLgogICAgICAoZGVmYXVsdCA9IEVNUFRZKQogICB7JGFjdGlvbmlkfWNkX2lubGluZSAtIChpbnQpIHRvIHNwZWNpZnkgdGhhdCB0aGUgZGV0YWlsIGxpbmtzIG9uIHJlc3VsdHMgc2hvdWxkIGJlIGNyZWF0ZWQgaW5saW5lIAogICAgICAoZGVmYXVsdCA9IDApCiAgIHskYWN0aW9uaWR9Y2RfaGllciAgIC0gKGludCkgdG8gc3BlY2lmeSBhIGhpZXJhcmNoeSBpZCB0aGF0IHJlc3VsdHMgbXVzdCBiZWxvbmcgaW4uCiAgIHskYWN0aW9uaWR9Y2RfaGllcl9jaGlsZHJlbiAtIChpbnQpIHNwZWNpZnkgYSBub24gemVybyB2YWx1ZSB0byBpbmRpY2F0ZSB0aGF0IGNoaWxkIGhpZXJhcmNoaWVzIHNob3VsZCBiZSBpbmNsdWRlZCBpbiB0aGUgc2VhcmNoLgogICBOb3RlczogIElmIGEgcG9zdGFsL3ppcCBjb2RlIGlzIHNwZWNpZmllZCwgYW5kIHRoZSBQb3N0Y29kZSBtb2R1bGUsIGFuZCBDR0dvb2dsZU1hcHMgbW9kdWxlcyBhcmUgaW5zdGFsbGVkLCB0aGVuIHRoZSBwb3RhbC96aXAgY29kZSB3aWxsIGJlIHVzZWQgZmlyc3QgdG8gY2FsY3VsYXRlIGEgZ2VvZ3JhcGhpYyBzZWFyY2ggYXJlYS4KKn0KCjxkaXYgaWQ9ImNkX3NlYXJjaGZvcm0iPgp7JGZvcm1zdGFydH0KCjxkaXYgY2xhc3M9InJvdyI+CiAgPHAgY2xhc3M9ImNvbDMwIj57JG1vZC0+TGFuZygncG9zdGFsX2NvZGUnKX08L3A+CiAgPHAgY2xhc3M9ImNvbDcwIj4KICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGFjdGlvbmlkfWNkX3Bvc3RhbCIgc2l6ZT0iMjAiIG1heGxlbmd0aD0iMjAiLz4KICAgIHsqIHlvdSBjb3VsZCBhbHNvIHVzZSB0aGUgeyRpbnB1dF9jb3VudHJ5fSB2YXJpYWJsZSB0byBkaXNwbGF5IGEgY291bnRyeSBkcm9wZG93biAqfQogICAgPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0ieyRhY3Rpb25pZH1jZF9jb3VudHJ5IiB2YWx1ZT0iVVMiLz4KICA8L3A+CjwvZGl2PgoKPGRpdiBjbGFzcz0icm93Ij4KICA8cCBjbGFzcz0iY29sMzAiPnskbW9kLT5MYW5nKCdyYWRpdXMnKX08L3A+CiAgPHAgY2xhc3M9ImNvbDcwIj4KICAgIDxzZWxlY3QgbmFtZT0ieyRhY3Rpb25pZH1jZF9yYWRpdXMiPgogICAgICA8b3B0aW9uIHZhbHVlPSIxMCI+MTA8L29wdGlvbj4KICAgICAgPG9wdGlvbiB2YWx1ZT0iMjUiPjI1PC9vcHRpb24+CiAgICAgIDxvcHRpb24gdmFsdWU9IjUwIj41MDwvb3B0aW9uPgogICAgICA8b3B0aW9uIHZhbHVlPSIxMDAiPjEwMDwvb3B0aW9uPgogICAgPC9zZWxlY3Q+CiAgICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJ7JGFjdGlvbmlkfWNkX3VuaXRzIiB2YWx1ZT0ibWlsZXMiLz4KICA8L3A+CjwvZGl2PgoKe2lmIGlzc2V0KCRoaWVyYXJjaGllcyl9CjxkaXYgY2xhc3M9InJvdyI+CiAgPHAgY2xhc3M9ImNvbDMwIj57JG1vZC0+TGFuZygnaGllcmFyY2h5Jyl9OjwvcD4KICA8cCBjbGFzcz0iY29sNzAiPgogICAgPHNlbGVjdCBuYW1lPSJ7JGFjdGlvbmlkfWNkX2hpZXIiPgogICAgICB7aHRtbF9vcHRpb25zIG9wdGlvbnM9JGhpZXJhcmNoaWVzfQogICAgPC9zZWxlY3Q+CiAgICAmbmJzcDsKICAgIHskbW9kLT5MYW5nKCdsYWJlbF9pbmNsdWRlY2hpbGRyZW4nKX06Jm5ic3A7CiAgICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJ7JGFjdGlvbmlkfWNkX2hpZXJfY2hpbGRyZW4iIHZhbHVlPSIwIi8+IAogICAgPGlucHV0IHR5cGU9ImNoZWNrYm94IiBuYW1lPSJ7JGFjdGlvbmlkfWNkX2hpZXJfY2hpbGRyZW4iIHZhbHVlPSIxIi8+CiAgPC9wPgo8L2Rpdj4Key9pZn0KCntpZiBpc3NldCgkY2F0ZWdvcmllcyl9CjxkaXYgY2xhc3M9InJvdyI+CiAgPHAgY2xhc3M9ImNvbDMwIj57JG1vZC0+TGFuZygnY2F0ZWdvcmllcycpfTo8L3A+CiAgPHAgY2xhc3M9ImNvbDcwIj4KICAgIHtjYXB0dXJlIGFzc2lnbj0ndG1wJ317JGFjdGlvbmlkfWNkX3VzZV9jYXRlZ29yaWVzey9jYXB0dXJlfQogICAge2h0bWxfY2hlY2tib3hlcyBuYW1lPSR0bXAgb3B0aW9ucz0kY2F0ZWdvcmllcyBzZXBhcmF0b3I9Jzxici8+J30KICA8L3A+CjwvZGl2Pgp7L2lmfQoKPGRpdiBjbGFzcz0icm93Ij4KICA8cCBjbGFzcz0iY29sMzAiPjwvcD4KICA8cCBjbGFzcz0iY29sNzAiPgogICAgPGlucHV0IHR5cGU9InN1Ym1pdCIgbmFtZT0ieyRhY3Rpb25pZH1jZF9zdWJtaXQiIHZhbHVlPSJ7JG1vZC0+TGFuZygnc3VibWl0Jyl9Ii8+CiAgPC9wPgo8L2Rpdj4KeyRmb3JtZW5kfQo8L2Rpdj4=]]></data>
	</file>
	<file>
	  <filename>/templates/orig_summary_template.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[e2lmIGlzc2V0KCRtZXNzYWdlcyl9CjxkaXYgY2xhc3M9IkNvbXBhbnlEaXJlY3RvcnlNZXNzYWdlIj4KIDx1bD4KICAge2ZvcmVhY2ggZnJvbT0kbWVzc2FnZXMgaXRlbT0nb25lJ30KICAgICA8bGk+eyRvbmV9PC9saT4KICAgey9mb3JlYWNofQogPC91bD4KPC9kaXY+CnsvaWZ9Cgp7aWYgaXNzZXQoJGVycm9ycyl9CjxkaXYgY2xhc3M9IkNvbXBhbnlEaXJlY3RvcnlFcnJvciI+CiA8dWw+CiAgIHtmb3JlYWNoIGZyb209JGVycm9ycyBpdGVtPSdvbmUnfQogICAgIDxsaT57JG9uZX08L2xpPgogICB7L2ZvcmVhY2h9CiA8L3VsPgo8L2Rpdj4Key9pZn0KCntpZiBpc3NldCgkaXRlbXMpfQogIDxkaXY+CiAgeyRmaXJzdGxpbmt9Jm5ic3A7eyRwcmV2bGlua30mbmJzcDsmbmJzcDt7JHBhZ2V0ZXh0fSB7JGN1cnBhZ2V9IHskb2Z0ZXh0fSB7JHBhZ2Vjb3VudH0mbmJzcDsmbmJzcDt7JG5leHRsaW5rfSZuYnNwO3skbGFzdGxpbmt9CiAgPC9kaXY+CgogIHtmb3JlYWNoIGZyb209JGl0ZW1zIGl0ZW09ZW50cnl9CiAgPGRpdiBjbGFzcz0iQ29tcGFueURpcmVjdG9yeUl0ZW0iPgogIE5hbWU6IDxhIGhyZWY9InskZW50cnktPmRldGFpbF91cmx9Ij57JGVudHJ5LT5jb21wYW55X25hbWV9PC9hPjxiciAvPgoKICB7aWYgJGVudHJ5LT5hZGRyZXNzIG5lICcnfQogIEFkZHJlc3M6IHskZW50cnktPmFkZHJlc3N9PGJyIC8+CiAgey9pZn0KCiAge2lmICRlbnRyeS0+d2Vic2l0ZSBuZSAnJ30KICBXZWJzaXRlOiA8YSBocmVmPSJodHRwOi8veyRlbnRyeS0+d2Vic2l0ZX0iPnskZW50cnktPndlYnNpdGV9PC9hPjxici8+CiAgey9pZn0KCiAgeyogc2FtcGxlIG9mIGFkZHJlc3NpbmcgYSBjdXN0b20gZmllbGQgZGlyZWN0bHkgKn0KICB7aWYgaXNzZXQoJGVudHJ5LT5maWVsZHMuZm9vKSAmJiAkZW50cnktPmZpZWxkcy5mb28tPnZhbHVlICE9ICcnfQogICAgRm9vOiB7JGVudHJ5LT5maWVsZHMuZm9vLT52YWx1ZX08YnIvPgogIHsvaWZ9CgogIHsqIHNhbXBsZSBvZiBhZGRyZXNzaW5nIGEgZmllbGQgd2l0aCBzcGFjZXMgb3Igb3RoZXIgY2hhcnMgaW4gdGhlIG5hbWUgKn0KICBTcGVjaWFsIEZpZWxkOiB7YXNzaWduIHZhcj0ndG1wJyB2YWx1ZT0nVGhlIEZpZWxkIE5hbWUnfXskZW50cnktPmZpZWxkcy4kdG1wLT52YWx1ZX08YnIvPgogIAogIHsqIHNhbXBsZSBvZiBhZGRyZXNzaW5nIHRoZSB2YWx1ZSBvZiBhIGRyb3Bkb3duIGZpZWxkOiAqfQogIHtpZiBpc3NldCgkZW50cnktPmZpZWxkcy5teWRyb3Bkb3duKSAmJiAkZW50cnktPmZpZWxkcy5teWRyb3Bkb3duLT5kcm9wZG93bl92YWx1ZSAhPSAnJ30KICAgIFNhbXBsZSBEcm9wZG93bjogeyRlbnRyeS0+ZmllbGRzLm15ZHJvcGRvd24tPmRyb3Bkb3duX3ZhbHVlfTxici8+CiAgey9pZn0KCiAgeyogc2FtcGxlIG9mIGxvb3BpbmcgdGhyb3VnaCB0aGUgZmllbGRzIGFzc29jaWF0aXZlIGFycmF5ICp9CiAge2ZvcmVhY2ggZnJvbT0kZW50cnktPmZpZWxkcyBrZXk9J2ZpZWxkbmFtZScgaXRlbT0nZmllbGQnfQogICAgeyRmaWVsZC0+bmFtZX0gKHskZmllbGQtPnR5cGV9KTogeyRmaWVsZC0+dmFsdWV9PGJyLz4KICB7L2ZvcmVhY2h9CiAgPC9kaXY+CiAgey9mb3JlYWNofQp7L2lmfQ==]]></data>
	</file>
	<file>
	  <filename>/templates/prefs.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyRzdGFydGZvcm19CjxmaWVsZHNldD4KPGxlZ2VuZD57JG1vZC0+TGFuZygncHJvbXB0X2dlbmVyYWxfc2V0dGluZ3MnKX08L2xlZ2VuZD4KPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfY29sbGVjdHN0YXRzJyl9OjwvcD4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2NvbGxlY3RzdGF0c308L3A+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfZGV0YWlscGFnZX06PC9wPgogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfZGV0YWlscGFnZX08L3A+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfc3VtbWFyeXNvcnRvcmRlcn06PC9wPgogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfc3VtbWFyeXNvcnRvcmRlcn08L3A+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfc3VtbWFyeXNvcnRpbmd9OjwvcD4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X3N1bW1hcnlzb3J0aW5nfTwvcD4KPC9kaXY+CjwvZmllbGRzZXQ+Cgp7aWYgaXNzZXQoJGlucHV0X2Zyb250ZW5kY3JlYXRlKX0KPGZpZWxkc2V0Pgo8bGVnZW5kPnskbW9kLT5MYW5nKCdwcm9tcHRfZmV1X2VkaXRfc2V0dGluZ3MnKX08L2xlZ2VuZD4KPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfZmV1X2NyZWF0ZScpfTo8L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9mcm9udGVuZGNyZWF0ZX08L3A+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9mZXVfbmV3X3N0YXR1cycpfTo8L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9mcm9udGVuZG5ld3N0YXR1c308L3A+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9mZXVfY2hhbmdlX3N0YXR1cycpfTo8L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9mcm9udGVuZGNoYW5nZXN0YXR1c308L3A+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9mZXVfbnVtcmVjb3JkcycpfTo8L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9mcm9udGVuZG51bXJlY29yZHN9PC9wPgo8L2Rpdj4KPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfZmV1X2ltcG9ydCcpfTo8L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9hbGxvd2ZldWltcG9ydH08L3A+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9mZXVfZW1haWxvbmFkZCcpfTo8L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9mcm9udGVuZF9lbWFpbG9uYWRkfTwvcD4KPC9kaXY+CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X2ZldV9lbWFpbG9uZWRpdCcpfTo8L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9mcm9udGVuZF9lbWFpbG9uZWRpdH08L3A+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9mZXVfZW1haWxncm91cCcpfTo8L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICA8c2VsZWN0IG5hbWU9InskYWN0aW9uaWR9ZnJvbnRlbmRfZW1haWxncm91cCI+CiAgICB7aHRtbF9vcHRpb25zIG9wdGlvbnM9JGdyb3VwbGlzdCBzZWxlY3RlZD0kZnJvbnRlbmRfZW1haWxncm91cH0KICAgIDwvc2VsZWN0PgogIDwvcD4KPC9kaXY+CjwvZmllbGRzZXQ+Cgo8ZmllbGRzZXQ+CjxsZWdlbmQ+eyRtb2QtPkxhbmcoJ3Byb21wdF9mZXVfZGlzcGxheV9zZXR0aW5ncycpfTwvbGVnZW5kPgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9mcm9udGVuZF9zaG93ZXhwaXJlZCcpfTo8L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9mcm9udGVuZF9zaG93ZXhwaXJlZH08L3A+CjwvZGl2PgoKPC9maWVsZHNldD4Key9pZn0KCjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij4mbmJzcDs8L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRzdWJtaXR9PC9wPgo8L2Rpdj4KCnskZW5kZm9ybX0=]]></data>
	</file>
</module>
