<?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>Uploads</name>
	<version>1.4.1</version>
  <mincmsversion>1.5.2</mincmsversion>
	<help>CjxoMz5XaGF0IERvZXMgVGhpcyBEbz88L2gzPgo8cD5JdCBpcyBhIG1vZHVsZSBmb3IgYWxsb3dpbmcgcGVvcGxlIHRvIHVwbG9hZCBhbmQgZG93bmxvYWQgZmlsZXMgdG8gYW5kIGZyb20geW91ciBzaXRlLiAgSXQga2VlcHMgdHJhY2sgb2Ygd2hvIHVwbG9hZGVkIGEgZmlsZSwgYW5kIHdobyBoYXMgZG93bmxvYWRlZCBpdC4gIEFzIHdlbGwsIHlvdSBjYW4gc29ydCBmaWxlcyBpbnRvIGNhdGVnb3JpZXMsIGFuZCBtYW5hZ2UgdGhlIGZpbGVzIHRoYXQgd2VyZSB1cGxvYWRlZCBsaWtlIGV2ZXJ5IGFkbWluaXN0cmF0b3Igd291bGQgZG88L3A+IAo8aDM+SG93IERvIEkgVXNlIEl0PC9oMz4KPHA+PHN0cm9uZz5XYXJuaW5nPC9zdHJvbmc+IC0gVGhlIHByb3BlciBiZWhhdmlvdXIgb2YgdGhpcyBtb2R1bGUgZGVwZW5kcyBvbiBudW1lcm91cyBwaHAgY29uZmlndXJhdGlvbiB2YXJpYWJsZXMuICBUaGVzZSBpbmNsdWRlIDxlbT4oYnV0IGFyZSBub3QgbGltaXRlZCB0byk8L2VtPiwgcGhwJ3MgbWVtb3J5X2xpbWl0LCBzYWZlX21vZGUsIGZpbGVfdXBsb2FkcywgdXBsb2Fkc19tYXhfZmlsZXNpemUsIGFuZCBtYXhfZXhlY3V0aW9uX3RpbWUuICBUaGVzZSB2YXJpYWJsZXMgbWF5IG5lZWQgYWRqdXN0bWVudCBmb3IgdGhpcyBtb2R1bGUgdG8gd29yayBwcm9wZXJseSBvbiB5b3VyIHNpdGUuICBJdCBpcyBhZHZpc2VkIHRoYXQgeW91IHdvcmsgd2l0aCB5b3VyIHN5c3RlbSBhZG1pbmlzdHJhdG9yIG9yIGhvc3QgcHJvdmlkZXIgdG8gdHVuZSB0aGVzZSBzZXR0aW5ncyBmb3IgeW91ciByZXF1aXJlbWVudHMuPC9wPgo8cD5UbyB1c2UgdGhpcyBtb2R1bGUsIHRvIGFsbG93IHVzZXJzIHRvIHVwbG9hZCBmaWxlcyB0byB5b3VyIHNpdGUsIHlvdSBzaG91bGQgaW5zdGFsbCB0aGUgbW9kdWxlLCBhbmQgdGhlbiBjcmVhdGUgb25lIG9yIG1vcmUgY2F0ZWdvcmllcyAoYS5rLmEpIGRpcmVjdG9yaWVzIGZvciB0aGUgdXBsb2FkZWQgZmlsZXMgdG8gZ28gaW50by4gVGhlbiBhZGQgYSB0YWcgaW50byBhIHBhZ2Ugb3IgdGVtcGxhdGUgc29tZXdoZXJlIGxpa2Uge2Ntc19tb2R1bGUgbW9kdWxlPSJVcGxvYWRzIiBjYXRlZ29yeT0ic29tZWNhdGVnb3J5IiBtb2RlPSJzb21lbW9kZSJ9LiAgV2hlcmUgbW9kZSBtYXRjaGVzIG9uZSBvZiB0aGUgbW9kZXMgbGlzdGVkIGJlbG93LiAgVGhlIG91dHB1dCB3aWxsIGRpZmZlciBkZXBlbmRpbmcgdXBvbiB3aGljaCBtb2RlIHlvdSBzZWxlY3QuPC9wPgo8cD5UaGlzIG1vZHVsZSBjYW4gdXNlIHRoZSBGcm9udGVuZFVzZXJzIG1vZHVsZSAob3B0aW9uYWwpIHRvIGdldCBpbmZvcm1hdGlvbiBhYm91dCBhbnkgY3VycmVudGx5IGxvZ2dlZCBpbiB1c2VycyB0byBwYXJ0bHkgZmlsbCBpbiB0aGUgZm9ybSB3aGVuIHVwbG9hZGluZyBmaWxlczs8L3A+CjxoMz5QZXJtaXNzaW9uczwvaDM+Cjx1bD4KPGxpPjxlbT5NYW5hZ2UgVXBsb2FkczwvZW0+IHBlcm1pc3Npb24gaXMgbmVlZGVkIHRvIG1hbmFnZSBjYXRlZ29yaWVzLCBhbmQgdGhlIGZpbGVzIHdpdGhpbiB0aGVtLjwvbGk+CjxsaT48ZW0+TW9kaWZ5IFRlbXBsYXRlczwvZW0+IHBlcm1pc3Npb24gaXMgbmVlZGVkIGVkaXQgYW55IG9mIHRoZSB0ZW1wbGF0ZXMuPC9saT4KPGxpPjxlbT5Nb2RpZnkgU2l0ZSBQcmVmZXJlbmNlczwvZW0+IHBlcm1pc3Npb24gaXMgbmVlZGVkIGFueSBvZiB0aGUgZmlsZSBzZXR0aW5ncy48L2xpPgo8L3VsPgo8aDM+Q2F0ZWdvcnkgQnJvd3Npbmc8L2gzPgo8cD5QbGFjaW5nIGEgdGFnIGxpa2Uge2Ntc19tb2R1bGUgbW9kdWxlPSJVcGxvYWRzIiBhY3Rpb249ImNhdGVnb3J5c3VtbWFyeSIgdGVtcGxhdGU9InN1bW1hcnl0ZW1wbGF0ZSIgc29ydG9yZGVyPSJuYW1lX2FzYyIgbGlzdGluZ3RlbXBsYXRlPSJsaXN0dGVtcGxhdGUiIGxpc3Rpbmdzb3J0b3JkZXI9Imxpc3Rzb3J0b3JkZXIifQphbGxvd3MgeW91IHRvIGRpc3BsYXkgYW4gaW50ZXJhY3RpdmUgY2F0ZWdvcnkgYnJvd3Nlci4gc29ydG9yZGVyIGNhbiBiZTogbmFtZV9hc2MsIG5hbWVfZGVzYywgc3VtbV9hc2MsIHN1bW1fZGVzYywgb3IgcmFuZG9tLgpsaXN0aW5ndGVtcGxhdGUgYW5kIGxpc3Rpbmdzb3J0b3JkZXIgYXJlIGlkZW50aWNhbCB0byB0aGUgdGVtcGxhdGUgYW5kIHNvcnRvcmRlciBwYXJhbWV0ZXJzIGZvcgp0aGUgInN1bW1hcnkiIG1vZGUuPC9wPgo8aDM+RW1haWxpbmc8L2gzPgo8cD5UaGlzIG1vZHVsZSBpcyBjYXBhYmxlIG9mIHNlbmRpbmcgYW4gZW1haWwgd2hlbmV2ZXIgYSBmaWxlIGlzIHVwbG9hZGVkLCBzZWUgdGhlIHByZWZlcmVuY2VzIHRhYi4gIEhvd2V2ZXIsIHRvIGRvIHRoaXMgdGhlIDxiPkNNU01haWxlcjwvYj4gcGFja2FnZSBtdXN0IGJlIGluc3RhbGxlZCBhbmQgY29uZmlndXJlZC4gIFRoaXMgaXMgYW4gPGVtPm9wdGlvbmFsPC9lbT4gc3RlcCwgYW5kIGlmIHRoZSBDTVNNYWlsZXIgbW9kdWxlIGlzIG5vdCBpbnN0YWxsZWQsIG5vdGhpbmcgd2lsbCBiZSBkaXNwbGF5ZWQgdG8gdGhlIHVzZXIsIG9ubHkgYSBsb2cgbWVzc2FnZSB3aWxsIGJlIHBsYWNlZCBpbnRvIHRoZSBhZG1pbiBsb2c8L3A+CjxoMz5TeXN0ZW0gU2V0dGluZ3M8L2gzPgo8cD48Yj5Ob3RlOjwvYj4gVGhpcyBtb2R1bGUgZG9lcyBub3QgYnlwYXNzIG9yIGdldCBwYXN0IGFueSBmaWxlIHNpemUgbGltaXRhdGlvbnMgaW4gcGhwLiAgSXQgd29ya3MgaW4gY29uanVuY3Rpb24gd2l0aCB0aGVtLiAgVGhlcmVmb3JlIHlvdSBtYXkgbmVlZCB0byBtb2RpZnkgeW91ciBwaHAuaW5pIGZpbGUgYW5kL29yIHlvdXIgaHR0cGQuY29uZiBmaWxlKHMpIHRvIGFsbG93IHlvdSB0byB1cGxvYWQgZmlsZXMgYXMgbGFyZ2UgYXMgd2hhdCB5b3UgaGF2ZSBzZXQgaW4gdGhlIHVwbG9hZHMgbW9kdWxlIHByZWZlcmVuY2VzLjwvcD4KPGgzPkFwYWNoZSBOb3RlczwvaDM+CjxwPkluIG9yZGVyIHRvIGFsbG93IGxhcmdlIGZpbGUgdXBsb2FkcywgeW91IG1heSBuZWVkIHRvIG1vZGlmeSB0aGUgdXBsb2FkX21heF9maWxlc2l6ZSBwYXJhbWV0ZXIgaW4geW91ciBwaHAuaW5pICBJbiBhZGRpdGlvbiwgdGhlIExpbWl0UmVxdWVzdEJvZHkgcGFyYW1ldGVyIGluIHlvdXIgYXBhY2hlIGNvbmZpZ3VyYXRpb24sIG1heSBuZWVkIHRvIGJlIGFkanVzdGVkIHRvIG1hdGNoIHRoZSB1cGxvYWRfbWF4X2ZpbGVzaXplIHBhcmFtZXRlcjwvcD4KPHA+Tm90ZTogIHRoZSB1cGxvYWRfbWF4X2ZpbGVzaXplIHBhcmFtZXRlciBjYW4gYmUgc3BlY2lmaWVkIGluIGJ5dGVzLCBraWxvYnl0ZXMsIG9yIG1lZ2FieXRlcywgaG93ZXZlciB0aGUgTGltaXRSZXF1ZXRCb2R5IHBhcmFtZXRlciBpcyBvbmx5IHNwZWNpZmllZCBpbiBieXRlczwvcD4KPGgzPlBhcmFtZXRlcnM8L2gzPjx1bD48bGk+PGVtPihvcHRpb25hbCk8L2VtPiBsYW5nPSJlbl9VUyIgLSBQYXJhbWV0ZXIgaXMgdXNlZCB0byBzcGVjaWZ5IHdoYXQgbGFuZ3VhZ2UgdG8gdXNlIGZvciBkaXNwbGF5IG9uIHRoZSBmcm9udGVuZC4gTm90IGFsbCBtb2R1bGVzIHN1cHBvcnQgb3IgbmVlZCB0aGlzLjwvbGk+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4ga2V5PSJ2YWx1ZSIgLSBQcm92aWRlIGFuIGFkZGl0aW9uYWwga2V5IHRvIHRoZSBtb2R1bGUgZm9yIGZ1cnRoZXIgb3JnYW5pemluZyB1cGxvYWRzLiAgVGhpcyBrZXkgY291bGQgYmUgYW4gZW5jb2RlZCBzdHJpbmcgbGlrZTogJ2ZldXNlcnM6dWlkJywgZXRjLiAgVGhpcyBwYXJhbWV0ZXIgaXMgdXN1YWxseSBvbmx5IG5lZWRlZCB3aGVuIGVtYmVkZGluZyB0aGUgdXBsb2FkcyBtb2R1bGUgaW50byBhbm90aGVyIG1vZHVsZTwvbGk+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gbm9hdXRob3I9IjEiIC0gSGlkZSB0aGUgYXV0aG9yIGZpZWxkIGZyb20gdGhlIHVwbG9hZCBmb3JtLiAgVGhpcyBwYXJhbWV0ZXIgaXMgb25seSB2YWxpZCB3aGVuIG1vZGU9J3VwbG9hZCcuICBJZiBUaGUgRnJvbnRlbmRVc2VycyBtb2R1bGUgaXMgcHJlc2VudCwgYW5kIGEgdXNlciBpcyBjdXJyZW50bHkgbG9nZ2VkIGluLCBhIGhpZGRlbiBmaWVsZCB3aWxsIGhvbGQgdGhlIGN1cnJlbnRseSBsb2dnZWQgaW4gdXNlcm5hbWU8L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IHVwbG9hZF9pZD0iaWQiIC0gCnVwbG9hZF9pZD0iaWQiIC0gc3BlY2lmeSBhIHNpbmdsZSBmaWxlIGZvciB0aGUgdXJsL2xpbmssZGV0YWlsZWQgb3Igc2luZ2xlIG1vZGVzIChhYm92ZSk8L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGNvdW50PSIiIC0gCmNvdW50PSJOIgo8cD5BIHBhcmFtZXRlciB0byBsaXN0IG9ubHkgdGhlIGZpcnN0IE4gcmVzdWx0cyBvZiB0aGUgcXVlcnkuICBQYWdpbmF0aW9uIHdvdWxkIGJlIGJldHRlciwgYnV0IHRoaXMgd2lsbCBkbyB0aGUgdHJpY2sgZm9yIG5vdzwvcD48L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IHNvcnRvcmRlcj0iZGF0ZV9hc2MiIC0gCiAgPHA+U29ydCBPcmRlcnMKICA8dWw+CiAgPGxpPjxlbT5kYXRlX2FzYzwvZW0+IC0gU29ydCBieSBhc2NlbmRpbmcgZGF0ZTwvbGk+CiAgPGxpPjxlbT5kYXRlX2Rlc2M8L2VtPiAtIFNvcnQgYnkgZGVzY2VuZGluZyBkYXRlPC9saT4KICA8bGk+PGVtPm5hbWVfYXNjPC9lbT4gLSBTb3J0IGJ5IGFzY2VuZGluZyBuYW1lPC9saT4KICA8bGk+PGVtPm5hbWVfZGVzYzwvZW0+IC0gU29ydCBieSBkZXNjZW5kaW5nIG5hbWU8L2xpPgogIDxsaT48ZW0+c2l6ZV9hc2M8L2VtPiAtIFNvcnQgYnkgYXNjZW5kaW5nIHNpemU8L2xpPgogIDxsaT48ZW0+c2l6ZV9kZXNjPC9lbT4gLSBTb3J0IGJ5IGRlc2NlbmRpbmcgc2l6ZTwvbGk+CiAgPGxpPjxlbT5hdXRob3JfYXNjPC9lbT4gLSBTb3J0IGJ5IGFzY2VuZGluZyBhdXRob3I8L2xpPgogIDxsaT48ZW0+YXV0aG9yX2Rlc2M8L2VtPiAtIFNvcnQgYnkgZGVzY2VuZGluZyBhdXRob3I8L2xpPgogIDxsaT48ZW0+aXBfYXNjPC9lbT4gLSBTb3J0IGJ5IGFzY2VuZGluZyBpcCBhZGRyZXNzPC9saT4KICA8bGk+PGVtPmlwX2Rlc2M8L2VtPiAtIFNvcnQgYnkgZGVzY2VuZGluZyBpcCBhZGRyZXNzPC9saT4KICA8bGk+PGVtPmRlc2NfYXNjPC9lbT4gLSBTb3J0IGJ5IGFzY2VuZGluZyBkZXNjcmlwdGlvbjwvbGk+CiAgPGxpPjxlbT5kZXNjX2Rlc2M8L2VtPiAtIFNvcnQgYnkgZGVzY2VuZGluZyBkZXNjcmlwdGlvbjwvbGk+CiAgPGxpPjxlbT5yYW5kb208L2VtPiAtIFJhbmRvbSBzb3J0IG9yZGVyPC9saT4KICA8L3VsPgogIDwvcD48L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGZpbGVfZXh0ZW5zaW9ucz0iZXh0MSxleHQyLGV4dDMiIC0gIApmaWxlX2V4dGVuc2lvbnM9ImV4dDEsZXh0MixleHQzIgo8cD52YWxpZCBvbmx5IHdoZW4gbW9kZT11cGxvYWQsIHRoaXMgcGFyYW1ldGVyIGxpbWl0cyB0aGUgdHlwZXMgb2YgZmlsZXMgdGhhdCBjYW4gYmUgdXBsb2FkZWQuICBJdCBvdmVycmlkZXMgYW55IHNldHRpbmdzIGluIHRoZSBtb2R1bGUgcHJlZmVyZW5jZXMuPC9wPjwvbGk+PGxpPmNhdGVnb3J5PSJ1cGxvYWRfY2F0ZWdvcnkiIC0gCmNhdGVnb3J5PSJuYW1lIgo8cD48Yj5Ob3RlOjwvYj4gQ2F0ZWdvcnkgY2FuIGJlICJhbGwiLCB3aGljaCB3aWxsIGxpc3QgYWxsIG9mIHRoZSB1cGxvYWRzIGZyb20gYWxsIDxlbT5saXN0YWJsZTwvZW0+IGNhdGVnb3JpZXM8L3A+PC9saT48bGk+PGVtPihvcHRpb25hbCk8L2VtPiBmaWx0ZXI9IiIgLSBEaXNwbGF5IHRoZSBmaWx0ZXJpbmcgZm9ybS4gIElmIHRoaXMgcGFyYW1ldGVyIGlzIHNldCB0byBhbnkgdmFsdWU8L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IG5vX2luaXRpYWw9IjEiIC0gRG8gbm90IGRpc3BsYXkgYW55IGluaXRpYWwgcmVzdWx0cyB3aGVuIHRoZSBmaWx0ZXIgaXMgb248L2xpPjxsaT5tb2RlPSJzdW1tYXJ5IiAtIAogIDx1bD4KICA8bGk+PGVtPmRldGFpbGVkPC9lbT4gLSBEaXNwbGF5IGEgZGV0YWlsZWQgcmVwb3J0IGZvciBhIHNpbmdsZSB1cGxvYWQuPC9saT4KICA8bGk+PGVtPnNpbmdsZTwvZW0+IC0gQWxpYXMgZm9yIHRoZSBkZXRhaWxlZCBtb2RlLjwvbGk+CiAgPGxpPjxlbT51cGxvYWQ8L2VtPiAtIERpc3BsYXkgYSBmb3JtIHRvIGFsbG93IGEgZnJvbnRlbmQgdXNlciB0byB1cGxvYWQgYSBmaWxlPC9saT4KICA8bGk+PGVtPnVybCA8aT5vcjwvaT4gbGluazwvZW0+IC0gRGlzcGxheSBhIGxpbmsgdG8gYSBmaWxlPC9saT4KICA8bGk+PGVtPnN1bW1hcnk8L2VtPiAtIERpc3BsYXkgYSBzdW1tYXJpemVkIGxpc3Qgb2YgYWxsIGZpbGVzIGluIHRoZSBzcGVjaWZpZWQgY2F0ZWdvcnk8L2xpPgogIDwvdWw+PC9saT48bGk+PGVtPihvcHRpb25hbCk8L2VtPiB0ZW1wbGF0ZT0iIiAtIFVzZSBhIHRlbXBsYXRlIHdpdGggdGhpcyBuYW1lIGZvciB0aGlzIHJlcG9ydCBvciBmb3JtLiAgVGhlIG1vZGUgaXMgdXNlZCB0byBkZXRlcm1pbmUgd2hhdCB0eXBlIG9mIHRlbXBsYXRlIGlzIHJlcXVpcmVyZCwgYW5kIHRoZW4gYSBuYW1lIG1hdGNoIGlzIHBlcmZvcm1lZCB3aXRoaW4gdGhhdCB0eXBlLjwvbGk+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gZGV0YWlsdGVtcGxhdGU9IiIgLSBVc2UgYSB0ZW1wbGF0ZSB3aXRoIHRoaXMgbmFtZSBmb3IgdGhlIGRldGFpbCByZXBvcnQuPC9saT48bGk+PGVtPihvcHRpb25hbCk8L2VtPiBub2NhcHRjaGE9IiIgLSBEaXNhYmxlIGNhcHRjaGEgc3VwcG9ydCAob24gYnkgZGVmYXVsdCkgaW4gdGhlIHVwbG9hZCBmb3JtPC9saT48bGk+PGVtPihvcHRpb25hbCk8L2VtPiBmaWxldHlwZXM9IiIgLSBEaXNwbGF5IG9ubHkgZmlsZXMgd2hvc2UgdHlwZSBtYXRjaGVzIHRoaXMgY29tbWEgc2VwYXJhdGVkIGxpc3Q8L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IHNlbGVjdG5hbWU9IiIgLSB3aGVuIHVzaW5nIHRoZSAnc2VsZWN0JyBtb2RlLCB0aGlzIHBhcmFtZXRlciBzcGVjaWZpZXMgdGhlIG5hbWUgb2YgdGhlIGZpZWxkPC9saT48bGk+PGVtPihvcHRpb25hbCk8L2VtPiBzZWxlY3Rub25lPSIiIC0gV2hlbiB1c2luZyB0aGUgJ3NlbGVjdCcgbW9kZSwgdGhpcyBwYXJhbWV0ZXIgc3BlY2lmaWVzIHdldGhlciAnbm9uZScgaXMgYSB2YWxpZCBjaG9pY2UuPC9saT48bGk+PGVtPihvcHRpb25hbCk8L2VtPiBzZWxlY3R2YWx1ZT0iIiAtIFdoZW4gdXNpbmcgdGhlICdzZWxlY3QnIG1vZGUsIHRoaXMgcGFyYW1ldGVyIHNwZWNpZmllcyB0aGUgZGVmYXVsdCBmaWVsZCB2YWx1ZTwvbGk+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gc2VsZWN0Zm9ybT0iIiAtIFdoZW4gdXNpbmcgdGhlICdzZWxlY3QnIG1vZGUsIHRoaXMgcGFyYW1ldGVyIGlzIHRoZSBmb3JtaWQgb2YgdGhlIHBhcmVudCBmb3JtLiAgVXNlZCB0byBoYW5kbGUgcGFyYW1ldGVyIHBhc3Npbmc8L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IHByZWZpeD0iMCIgLSBBIGJvb2xlYW4gdGhhdCBpbmRpY2F0ZXMgd2V0aGVyIGZpbGUgbmFtZXMgc2hvdWxkIGJlIHByZWZpeGVkPC9saT48bGk+PGVtPihvcHRpb25hbCk8L2VtPiBwcmVmaXhfZmV1PSIwIiAtIEEgYm9vbGVhbiBwYXJhbWV0ZXIgdGhhdCBpbmRpY2F0ZXMgdGhhdCB0aGUgcHJlZml4IHNob3VsZCBiZSB0YWtlbiBmcm9tIHRoZSBjdXJyZW50IGF1dGhvciwgaWYgbm90IHNwZWNpZmllZCwgdGhlIHByZWZpeCBpcyB0aGUgY3VycmVudCB0aW1lIChpbiBkZWNoZXggZm9ybWF0KTwvbGk+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gZGV0YWlscGFnZT0iIiAtIFVzZWZ1bCBmb3IgZGlzcGxheWluZyBhIGRldGFpbCByZXBvcnQgdXNpbmcgYSBkaWZmZXJlbnQgcGFnZSB0ZW1wbGF0ZSwgdGhpcyBwYXJhbWV0ZXIgdGFrZXMgdGhlIHBhZ2UgaWQgb3IgcGFnZSBhbGlhcyBvZiBhIHBhZ2UgdGhhdCBzaG91bGQgYmUgdXNlZCB0byBkaXNwbGF5IHRoZSBkZXRhaWwgcmVwb3J0PC9saT48bGk+PGVtPihvcHRpb25hbCk8L2VtPiBsaXN0aW5ndGVtcGxhdGU9IiIgLSBUZW1wbGF0ZSB0byB1c2UgZm9yIGNhdGVnb3J5IGxpc3RpbmdzIGFmdGVyIGNsaWNrdGhyb3VnaCBmcm9tIENhdGVnb3J5IFN1bW1hcnkgcGFnZTwvbGk+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gbGlzdGluZ3NvcnRvcmRlcj0iIiAtIFNvcnQgb3JkZXIgKGFsYSBwYXJhbV9zb3J0b3JkZXIpIHRvIHVzZSBmb3IgY2F0ZWdvcnkgbGlzdGluZ3MgYWZ0ZXIgY2xpY2t0aHJvdWdoIGZyb20gQ2F0ZWdvcnkgU3VtbWFyeSBwYWdlPC9saT48L3VsPg==</help>
	<about>PGJyIC8+QXV0aG9yOiBjYWxndXkxMDAwICZsdDtyb2JAdGVjaGNvbS5keW5kbnMub3JnJmd0OzxiciAvPjxiciAvPlZlcnNpb246IDEuNC4xPGJyIC8+PGJyIC8+Q2hhbmdlIEhpc3Rvcnk6PGJyIC8+PHVsPgo8bGk+CjxwPlZlcnNpb24gMS4wLiAtIFNlcHRlbWJlciAyMDA1LjwvcD4KPHA+IEluaXRpYWwgUmVsZWFzZS48L3A+CjwvbGk+CjxsaT4KPHA+VmVyc2lvbiAxLjAxLiAtIFNlcHRlbWJlciAyMDA1PC9wPgo8cD5NaW5vciBmaXhlcy48L3A+PC9saT4KPGxpPgo8cD5WZXJzaW9uIDEuMDIuIC0gU2VwdGVtYmVyIDIwMDU8L3A+CjxwPkFkZGVkIGFiaWxpdHkgdG8gc3BlY2lmeSBzb3J0IG9yZGVyPC9wPgo8L2xpPgo8bGk+CjxwPlZlcnNpb24gMS4wMy4gLSBTZXB0ZW1iZXIgMjAwNTwvcD4KPHA+Rml4IHJlZ2FyZGluZyBjb25mbGljdCBpbiB0ZW1wbGF0ZSBuYW1lczwvcD4KPC9saT4KPGxpPgo8cD5WZXJzaW9uIDEuMDQuIC0gU2VwdGVtYmVyIDIwMDU8L3A+CjxwPkFkZGVkIGFiaWxpdHkgdG8gcmUtc2NhbiBhIGRpcmVjdG9yeSwgYW5kIHRvIHVwbG9hZCBmaWxlcyBmcm9tIHRoZSBhZG1pbiBwYWdlPC9wPgo8L2xpPgo8bGk+CjxwPlZlcnNpb24gMS4wNS4gLSBTZXB0ZW1iZXIgMjAwNTwvcD4KPHA+Rml4ZWQgc29tZSBQSFAgdmFyaWFibGUgaXNzdWVzPC9wPgo8L2xpPgo8bGk+CjxwPlZlcnNpb24gMS4wNi4gLSBTZXB0ZW1iZXIgMjAwNTwvcD4KPHA+QWRkZWQgYXV0aG9yIGZpZWxkIHRvIHRoZSBhZG1pbiBwYW5lbCB1cGxvYWQgZm9ybSwgYWRkZWQgYSBzdW1tYXJ5IGZpZWxkLCBhbmQgbWFkZSBkZXNjcmlwdGlvbiBhIHRleHQgYXJlYSwgYW5kIGFsbG93IHRoZSB1c2VyIHRvIHNwZWNpZnkgYSBkZXN0aW5hdGlvbiBmaWxlIG5hbWU8L3A+CjwvbGk+CjxsaT4KPHA+VmVyc2lvbiAxLjA3LiAtIFNlcHRlbWJlciAyMDA1PC9wPgo8cD5BZGRlZCB0aGUgYWJpbGl0eSB0byByZW5hbWUgZmlsZXMgYW5kIGZpeGVkIGEgc2NhbiBlcnJvcjwvcD4KPC9saT4KPGxpPgo8cD5WZXJzaW9uIDEuMDguIC0gU2VwdGVtYmVyIDIwMDU8L3A+CjxwPkJldHRlciBoYW5kbGluZyBvZiBuYW1lcyB3aXRoIHNwYWNlcywgYW5kIGEgZmV3IG1pbm9yIGVycm9ycyBmaXhlZC4gIEFkZGVkIHN3ZWRpc2ggdHJhbnNsYXRpb24gKHRoYW5rcyB3ZXN0aXMpPC9wPjwvbGk+CjxsaT4KPHA+VmVyc2lvbiAxLjEuMC4gLSBPY3RvYmVyIDIwMDU8L3A+CiA8dWw+CiAgIDxsaT5Nb2RpZmllZCBBdHRlbXB0VXBsb2FkIGZ1bmN0aW9uIHNvIGl0IGNvdWxkIGJlIGNhbGxlZCBleHRlcm5hbGx5PC9saT4KICAgPGxpPkFkZGVkIEdldFVwbG9hZERldGFpbHMgZnVuY3Rpb24gdGhhdCByZXR1cm5zIGFsbCBvZiB0aGUgZGV0YWlscyBhYm91dCBhIG1vZHVsZSwgaW5jbHVkaW5nIGEgbGluazwvbGk+CiAgIDxsaT5BZGRlZCBSZWRpcmVjdHMgc28gdGhhdCB3b3JraW5nIHdpdGggdGhlIG1vZHVsZSBpcyBhbG90IG5pY2VyLCBpdCByZXR1cm5zIHRvIHRoZSByaWdodCB0YWI8L2xpPgogICA8bGk+Q2hhbmdlZCB0aGUgZnJvbnQgdGVtcGxhdGUgdG8gbG9vayBhIGxpdHRsZSBiZXR0ZXIgYW5kIG1ha2UgbW9yZSBzZW5zZTwvbGk+CiAgIDxsaT5GaXhlcyB0byB0aGUgdXBsb2FkcyBzdHVmZiBzbyB0aGF0IHRoZSBkZXNjcmlwdGlvbiBpcyBzZXQsIGFuZCBuYW1lIGFuZCBzdW1tYXJ5IGFyZSBwdXQgaW4gdGhlIHJpZ2h0IHBsYWNlPC9saT4KICAgPGxpPkZpeGVzIHRvIGV2ZW4gYmV0dGVyIGhhbmRsZSBzcGFjZXMgaW4gbmFtZXM8L2xpPgogICA8bGk+T3B0aW9uYWx5IHBsYWNlIGR1bW15IGluZGV4Lmh0bWwgZmlsZXMgaW4gZWFjaCB1cGxvYWQgZGlyZWN0b3J5PC9saT4KICAgPGxpPklmIHNwZWNpZnlpbmcgYSBkZXN0aW5hdGlvbiBuYW1lLCBhbmQgbm8gZXh0ZW5zaW9uIGlzIGdpdmVuLCB0aGUgZXh0ZW5zaW9uIG9mIHRoZSBvcmlnaW5hdGluZyBmaWxlIChpZiBhbnkgZXhpc3RzIGlzIHVzZWQ8L2xpPgogPC91bD4KIDxwPjxlbT48Yj5JbXBvcnRhbnQhPC9iPjwvZW0+PGJyLz5JdCBpcyBub3QgcG9zc2libGUgdG8gdXBncmFkZSBmcm9tIGFueSBvdGhlciB2ZXJzaW9uIG9mIHRoZSBVcGxvYWRzIG1vZHVsZSB0byAxLjEuMC4gIFRoaXMgaXMgZHVlIHRvIHNvbWUgZXJyb3JzIHRoYXQgd2VyZSBtYWRlIGluIHRoZSBkYXRhYmFzZSByb3V0aW5lcywgYW5kIGV2ZW4gaW4gdGhlIHVwZ3JhZGUgcm91dGluZSBpbiAxLjAuNi4gIFlvdSBtdXN0IGRlLWluc3RhbGwgdGhlIG9sZCB2ZXJzaW9uLCBhbmQgdGhlbiByZS1pbnN0YWxsIHRoZSBuZXcgdmVyZXNpb24uIFRoaXMgd2lsbCBjYXVzZSBzaWduaWZpY2FudCBkaWZmaWN1bHR5IGlmIHlvdSBoYXZlIGRzY3JpcHRpb25zLCBldGMsIGluIHlvdXIgdGFibGVzPC9wPgo8L2xpPgo8bGk+CjxwPlZlcnNpb24gMS4xLjEuIC0gT2N0b2JlciwgMjAwNTwvcD4KPHA+Rml4ZWQgYSBjb3VwbGUgb2YgbWlub3IgYnVncyBpbiB0aGUgR2V0VXBsb2FkRGV0YWlscyBhbmQgYWRkZWQgYW5vdGhlciBsaW5rIChvciBhIHVybCkgdG8gdGhlIHVwbG9hZGVkIGZpbGUuPC9wPgo8L2xpPgo8bGk+CjxwPlZlcnNpb24gMS4xLjIuIC0gT2N0b2JlciwgMjAwNTwvcD4KPHA+Rml4ZWQgdGhlIFVSTCBmaWVsZCBpbiBHZXRVcGxvYWREZXRhaWxzIHRvIHJldHVybiBhIGRvd25sb2FkIGxpbmsgYW5kIGFkZGVkIGFuIGFic3VybCBmaWVsZCB3aGljaCByZXR1cm5zIHRoZSBhYnNvbHV0ZSBwYXRoIHRvIHRoZSBmaWxlIG9uIHRoZSB3ZWJzZXJ2ZXIuICBDbGlja3Mgb24gdGhpcyBsaW5rIHdpbGwgbm90IGJlIGNvdW50ZWQ8L3A+CjwvbGk+CjxsaT4KPHA+VmVyc2lvbiAxLjEuMy4gLSBPY3RvYmVyLCAyMDA1PC9wPgo8cD5GaXhlZCB0aGUgdXBncmFkZSBwcm9ibGVtIGZyb20gdGhlIDEuMC54IHNlcmllcy4gIFVzZXJzIG9mIHRoZSAxLjAueCBzZXJpZXMgc2hvdWxkIGJlIGFibGUgdG8gdXBncmFkZSB0byAxLjEuMyBub3cgd2l0aCBubyBkaWZmaWN1bHR5LiA8Yj5UaG9zZSBhcmUgZmFtb3VzIGxhc3Qgd29yZHMsIHBsZWFzZSBiYWNrdXAgZmlyc3Q8L2I+LiBGaXhlZCB0aGUgY29udGVudCByZWRpcmVjdCB0aGluZ3MgdGhhdCB3ZXJlIGlycml0YXRpbmcgbWUuICBBbHNvIGFkZGVkIGNhdGVnb3J5PWFsbCB0byBsaXN0IGFsbCBvZiB0aGUgdXBsb2FkcyBpbiBhbGwgbGlzdGFibGUgY2F0ZWdvcmllcyA8ZW0+KGxldHMgYWxsIGhvcGUgSSBnb3QgdGhlIHNxbCBmaWd1cmVkIG91dCBwcm9wZXJseSk8L2VtPi48L3A+CjwvbGk+CjxsaT4KPHA+VmVyc2lvbiAxLjEuNC4gLSBPY3RvYmVyLCAyMDA1PC9wPgo8cD5BZGRlZCB0aGUgY291bnQgcGFyYW1ldGVyIHRvIGxpc3Qgb25seSB0aGUgZmlyc3QgTiByZWNvcmRzLCBhbmQgYWRkZWQgInN1bW1hcnlsaW5rIiwgYW5kICJjYXRlZ29yeSIgdG8gdGhlIHRlbXBsYXRlcyBmb3Igd2VzdGlzLiAgRm9yIGV4YW1wbGVzIG9uIGhvdyB0byB1c2UgdGhlbSByZXNldCB5b3VyIHRlbXBsYXRlcyBiYWNrIHRvIGRlZmF1bHQuPC9wPjwvbGk+CjxsaT4KPHA+VmVyc2lvbiAxLjEuNS4gLSBOb3ZlbWJlciwgMjAwNTwvcD4KPHA+QWRkZWQgZW1haWwgbm90aWZpY2F0aW9uIGFuZCBzb21lIGJ1ZyBmaXhlczwvcD4KPC9saT4KPGxpPgo8cD5WZXJzaW9uIDEuMS42LiAtIE5vdmVtYmVyLCAyMDA1PC9wPgo8cD5BZGRlZCBhbiBhcGkgZnVuY3Rpb24gYW5kIGZpeGVkIHNvbWUgcmVkaXJlY3Rpb24gc3R1ZmY8L3A+CjwvbGk+CjxsaT4KPHA+VmVyc2lvbiAxLjEuNy4gLSBOb3ZlbWJlciwgMjAwNTwvcD4KPHA+TW9yZSBBUEkgZnVuY3Rpb25zLCBhbmQgbm93IGlnbm9yZSBkb3QgZmlsZXMgd2hlbiBzY2FubmluZy4gIEVtYWlsIG5vdGlmaWNhdGlvbiBpcyBub3cgaW4uPC9wPgo8L2xpPgo8bGk+CjxwPlZlcnNpb24gMS4xLjguIC0gSmFudWFyeSwgMjAwNjwvcD4KPHA+KiBJbXByb3ZlZCBkb2NzIHdydCBhcGFjaGUgYW5kIHBocCBjb25maWdzLjwvcD4KPHA+KiBGaXhlZCBwcm9ibGVtIHdoZXJlIGZpbGVzaXplIHdhcyBzaG93aW5nIHVwIGFzIDAuPC9wPgo8cD4qIE1vZGlmaWVkIHBlcm1pc3Npb25zIHRvIGJlIG1vcmUgZ3JhbnVsYXI8L3A+CjxwPiogQWRkZWQgc29tZSBjb21tZW50cyBhbmQgdmVyYm9zaXR5IHRvIHRoZSBjYXRlZ29yeSBhbmQgdXBsb2FkcyBmb3JtcyBpbiB0aGUgYWRtaW4gc2VjdGlvbjwvcD4KPHA+KiBBZGRlZCAicmFuZG9tIiBzb3J0IG9yZGVyPC9wPgo8cD4qIFNvbWUgUEhQNSBmaXhlczwvcD4KPC9saT4KPGxpPgo8cD5WZXJzaW9uIDEuMS45LiAtIEphbnVhcnksIDIwMDY8L3A+CjxwPiogQWRkZWQgdGhlIGFiaWxpdHkgdG8gdXBsb2FkIGEgdGh1bWJuYWlsIGltYWdlPC9wPgo8cD4qIFNvbWUgaW1wcm92ZWQgYXVkaXRpbmc8L3A+CjxwPiogeG1sIG5vdyBhZGRlZCB0byB0aGUgZGVmYXVsdCBmaWxlIHR5cGVzIChuZXcgaW5zdGFsbHMgb25seSk8L3A+CjxwPiogQWRkZWQgYSBjb25maXJtYXRpb24gbWVzc2FnZSB0byB0aGUgcmVzZXQgdG8gZGVmYXVsdHMgYnV0dG9ucyBvZiB0aGUgdGVtcGxhdGUgcGFnZXMuPC9wPgo8cD4qIEFkZGVkIHRoZSBmaWxlX2V4dGVuc2lvbnMgcGFyYW1ldGVyIGZvciB0aGUgdXBsb2FkIGZvcm08L3A+CjxwPiogVGhlIGN1cnJlbnQgY2F0ZWdvcnkgc2VsZWN0ZWQgaW4gdGhlIGZpbGVzIGZpbHRlciBpcyBzdGlja3kuCjxwPiogQWRkZWQgYSBwcmVmZXJlbmNlIHRvIGVuZm9yaWNlIGZpbGVuYW1lIGV4dGVuc2lvbnMgKGRlZmF1bHRzIHRvIG9uKTwvcD4KPHA+KiBBZGRlZCBhIGxpbmsgdG8gdGhlIGVkaXQgcGFnZSwgaW4gdGhlIG5hbWUgY29sdW1uIG9mIHRoZSBmaWxlcyBsaXN0LjwvcD4KPHA+KiBNaW5vciBjaGFuZ2VzIHRvIHRoZSBsYXlvdXQgYW5kIHRleHQgdG8gYWRkIGNsYXJpdHkuPC9wPgo8cD4qIEFkZGVkIGRvd25sb2FkX3VybCBhcyBhbiBhdmFpbGFibGUgc21hcnR5IHRhZyBpbiB0aGUgdGVtcGxhdGVzPC9wPgo8bGk+CjxwPlZlcnNpb24gMS4xLjEwLiAtIEZlYnJ1YXJ5LCAyMDA2PC9wPgo8cD4qIFN1bW1hcnkgbm93IGRlZmF1bHRzIHRvIHRoZSBmaWxlbmFtZSAod2l0aG91dCB0aGUgZXh0ZW5zaW9uKSBpZiBub25lIGlzIHNwZWNpZmllZDwvcD4KPHA+KiBOb3cgY29ycmVjdGx5IGhhbmRsZSBpZiB0aGUgdGh1bWJuYWlsIGV4dGVuc2lvbiBpcyBub3QgaW4gdGhlIGFjY2VwdGVkIGV4dGVuc2lvbiBsaXN0PC9wPgo8cD4qIE5vIGxvbmdlciBkaXNwbGF5IGFueSBjb250ZW50IGluIHRoZSBmaWxlcyB0YWIgaWYgdGhlcmUgYXJlIG5vIGNhdGVnb3JpZXMgZGVmaW5lZDwvcD4KPHA+KiBEaXNwbGF5IGEgbGluayBpbiB0aGUgZXJyb3IgcGFnZSB0aGF0IHRha2VzIHlvdSBiYWNrIHRvIHRoZSBtYWluIGFkbWluIHBhbmVsPC9wPgo8cD4qIEFsbG93IGZvciByZXBsYWNpbmcgb2YgdXBsb2FkZWQgZmlsZXM8L3A+CjwvbGk+CjxsaT4KPHA+VmVyc2lvbiAxLjEuMTEuIC0gTWFyY2gsIDIwMDY8L3A+CjxwPkFkZGVkIHRoZSBhYmlsaXR5IGZvciBhIGxpbmsgdG8gYSBkZXRhaWxlZCBwYWdlIHdoZW4gaW4gc3VtbWFyeSBtb2RlLjwvcD4KPHA+U3BsaXQgdGhlIGRlZmF1bHQgYWN0aW9uIGFuZCBkZWZhdWx0YWRtaW4gYWN0aW9ucyBpbnRvIHNlcGFyYXRlIGZpbGVzLCBmb3IgYSBiaXQgb2YgbWVtb3J5IGltcHJvdmVtZW50LCBob3BlZnVsbHk8L3A+CjxwPkFkZCB0aGUgYWJpbGl0eSB0byByZWRpcmVjdCB0byBhbm90aGVyIHBhZ2UgYWZ0ZXIgYSBmcm9udGVuZCB1c2VyIHVwbG9hZGVkIGEgZmlsZTwvcD4KPC9saT4KPGxpPgo8cD5WZXJzaW9uIDEuMS4xMi4gLSBNYXJjaCwgMjAwNjwvcD4KPHA+QWRkZWQgdGhlIHNpbmdsZXN1bW1hcnkgbW9kZSB0byBkaXNwbGF5IGEgc2luZ2xlIHVwbG9hZCBpbiBzdW1tYXJ5IG1vZGU8L1A+CjwvbGk+CjxsaT4KPHA+VmVyc2lvbiAxLjEuMTMuIC0gQXByaWwsIDIwMDY8L3A+CjxwPkFkZGVkIG9wdGlvbmFsIGZpbHRlcmluZyBvbiB0aGUgZnJvbnRlbmQsIGFuZCBhIGNvdXBsZSBvZiBleHRyYSBwYXJhbWV0ZXJzIHRvIGdvIHdpdGggaXQ8L3A+CjxwPkZpeGVkIGEgcHJvYmxlbSB3aGVyZSBpdCB3b3VsZCBhbGxvdyB5b3UgdG8gZW50ZXIgYSBibGFuayBwYXRoIHdoZW4gY3JlYXRpbmcgYSBjYXRlZ29yeTwvcD4KPHA+U3BsaXQgc3R1ZmYgaW50byAoc29tZSkgc2VwYXJhdGUgYWN0aW9uIGZpbGVzIGZvciBzb21lIGhvcGVmdWwgcGVyZm9ybWFuY2UgaW5jcmVhc2VzPC9wPgo8cD5BZGRlZCBjb3B5cmlnaHQgbm90aWNlczwvcD4KPHA+Q2hhbmdlZCAob3B0aW9uYWwpIGRlcGVuZGVuY3kgZnJvbSBVc2VySUQgdG8gRnJvbnRFbmRVc2VycyBNb2R1bGUuPC9wPgo8L2xpPgo8bGk+CjxwPlZlcnNpb24gMS4yLjEgLSBBcHJpbCwgMjAwNjwvcD4KPHA+Q2hhbmdlZCBfc2NhbkRpcmVjdG9yeSB0byBhbiBBUEkgZnVuY3Rpb24gU2NhbkRpcmVjdG9yeSBhbmQgdGhlbiBhZGRlZCBTbWFydFNjYW5EaXJlY3RvcnkgdG8gc2NhbiB0aGUgZGlyZWN0b3J5IGJlZm9yZSBkaXNwbGF5aW5nIHRoZSBzdW1tYXJ5IG9yIGRldGFpbCBsaXN0aW5nIHRvIGhhbmRsZSB0aGUKY2FzZSB3aGVyZSBzb21lYm9keSB1cGxvYWRlZCBmaWxlcyB2aWEgRlRQIG9yIHNvbWV0aGluZyBhbmQgZGlkIG5vdCBnbyBpbnRvIHRoZSBhZG1pbiBzZWN0aW9uIHRvIHVwZGF0ZSB0aGUgY2F0ZWdvcmllcy48L3A+CjxwPkNvcnJlY3Rpb24gdG8gYWxsIGRiIGFjY2VzcyBzdHVmZi4gSG9wZWZ1bGx5IHByb3ZpZGVzIGEgcGVyZm9ybWFuY2UgaW5jcmVhc2UuPC9wPgo8cD5GaXhlcyB0byB0aGUgYWJvdXQgc3R1ZmYsIG5vdyB1c2UgQ3JlYXRlUGFyYW1ldGVyPC9wPgo8cD5BZGRlZCB0aGUgdXBsb2FkX3RlbXBsYXRlLCBzdW1tYXJ5X3RlbXBsYXRlLCBhbmQgZGV0YWlsX3RlbXBsYXRlIChvcHRpb25hbCkgcGFyYW1ldGVyPC9wPgo8cD5BZGRlZCB0aGUgbm9hdXRob3IgcGFyYW1ldGVyLCBhbmQgdGhlIGtleSBwYXJhbWV0ZXIuICBUaGUga2V5IHBhcmFtZXRlciBhbGxvd3MgdGhlIHVwbG9hZHMgbW9kdWxlIHRvIGJlIGVtYmVkZGVkIGludG8gb3RoZXIgbW9kdWxlczwvcD4KPHA+TW92ZWQgdG8gdW5kZXIgdGhlIGNvbnRlbnQgbWVudSwgYW5kIGVudGl0bGVkIFwnRmlsZXMgKFVwbG9hZCBNb2R1bGUpXCc8L3A+Owo8L2xpPgo8bGk+CjxwPlZlcnNpb24gMS4yLjIgLSBKdW5lLCAyMDA2CjxwPkFkZGVkIHRoZSBhYmlsaXR5IHRvIGhhdmUgbXVsdGlwbGUgZGF0YWJhc2UgdGVtcGxhdGVzLCBhbmQgdG8gc2VsZWN0IG9uZSBvbiB0aGUgdGFnIHdpdGggdGhlIHRlbXBsYXRlIHBhcmFtZXRlci48L3A+CjxwPkZpeGVkIGFuIGlzc3VlIHdoZXJlIGZpbGVzIHdlcmUgZ2V0dGluZyBjb3JydXB0ZWQgb24gZG93bmxvYWQ8L3A+CjwvbGk+CjxsaT4KPHA+VmVyc2lvbiAxLjIuMyAtIEp1bmUsIDIwMDYKPHA+Rml4ZXMgdG8gdXNlIGFkb2RiLWxpdGUgcHJvcGVyLCByYXRoZXIgdGhhbiB0ZWRzIGhhY2s8L3A+CjxwPkRldGFpbCBsaW5rIG5vdyBkaXNwbGF5cyBpbmxpbmU8L3A+CjxwPk90aGVyIG1pbm9yIHR3ZWFrcyB0aGF0IEkgY2FudCByZW1lbWJlcjwvcD4KPC9saT4KPGxpPlZlcnNpb24gMS4zLjAgLSBTZXB0ZW1iZXIsIDIwMDcKPHVsPgo8bGk+Rml4ZXMgdG8gdGhlIERUIGZpZWxkIHR5cGU8L2xpPgo8bGk+VXNlIHRoZSBGRVUgdXNlcm5hbWUgKG9wdGlvbmFsbHkpIHNvIHRoYXQgd2UgY2FuIHRyYWNrIHdoZW4gYSBsb2dnZWQgaW4gdXNlciB1cGxvYWRzIGEgZmlsZTwvbGk+CjxsaT5BZGQgZmlsZXR5cGUgY2FwYWJpbGl0aWVzIHRvIGFzc29jaWF0ZSBhbiBpY29uIHdpdGggYSBwYXJ0aWN1bGFyIHVwbG9hZC4gIEFsc28gc3VwcG9ydCBhbiB1bmtub3duIGZpbGUgdHlwZSBmb3IgYW55dGhpbmcgdGhhdCBkb2VzIG5vdCBtYXRjaC48L2xpPgo8bGk+Q29tcGxldGVseSByZS13b3JrZWQgdGhlIG11bHRpcGxlIGRhdGFiYXNlIHRlbXBsYXRlIHN0dWZmLjwvbGk+CjxsaT5BZGp1c3RtZW50cyB0byB0aGUgZGVmYXVsdCB0ZW1wbGF0ZXM8L2xpPgo8bGk+Rml4ZXMgdG8gdXNpbmcgY2F0ZWdvcnk9ImFsbCI8L2xpPgo8bGk+R2VuZXJhdGUgdGh1bWJuYWlscyBhdXRvbWF0aWNhbGx5IChvcHRpb25hbGx5KSBmb3IgY2VydGFpbiBmaWxlIHR5cGVzLCBvbiB1cGxvYWQsIGFuZCBvbiBzY2FuLjwvbGk+CjxsaT5BZGQgY2FwdGNoYSBzdXBwb3J0IHRvIHRoZSB1cGxvYWQgZm9ybTwvbGk+CjxsaT5BZGQgYSBzYWZlIG1vZGUgd2FybmluZyBpbiB0aGUgYWRtaW4gcGFuZWw8L2xpPgo8bGk+VXNlcyBjaHVua2VkIGRvd25sb2Fkcy48L2xpPgo8bGk+QWRkcyBwcmVmaXggYW5kIHByZWZpeF9mZXUgY2FwYWJpbGl0eSB0byB1cGxvYWRlZCBmaWxlcy48L2xpPgo8bGk+QWRkZWQgdGhlIGRldGFpbHBhZ2UgcGFyYW0uPC9saT4KPGxpPkFkZGVkIHRoZSBhYmlsaXR5IHRvIGRpc3BsYXkgYW4gaW1hZ2UgaW4gZnVsbCBzaXplIChvciB3aGF0ZXZlciBzaXplIHdlIHdhbnQpLCBzbyB0aGF0IHRoZSB1cGxvYWRzIG1vZHVsZSBjYW4gYmUgdXNlZCBhcyBhIGdhbGxlcnkuPC9saT4KPGxpPkFkZGVkIHNlY3VyaXR5ICh2aWEgdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlKSB0byBjYXRlZ29yaWVzPC9saT4KPGxpPkFkZGVkIGEgc2VsZWN0IG1vZGUgdG8gZ2VuZXJhdGUgYSBwdWxsZG93biBvZiBmaWxlcyBpbiBhIGNhdGVnb3J5LCBmb3IgdXNlIHdoZW4gYXR0YWNoaW5nIHVwbG9hZHMgbW9kdWxlIHRvIHNvbWUgb3RoZXIgbW9kdWxlLjwvbGk+CjxsaT5BZGRzIGEgY2F0ZWdvcnkgYnJvd3NlciwgZml4ZXMgYSByZXcgbWlub3IgaXNzdWVzLCBhbmQgdHdlYWtzIHRoZSBhdmFpbGFibGUgZmlsZSB0eXBlIGljb25zPC9saT4KPC91bD4KPC9saT4KCjxsaT5WZXJzaW9uIDEuNCAtIE5vdmVtYmVyIDIwMDgKPHVsPgo8bGk+TWFqb3IgY2xlYW51cCBvZiB0aGUgZGVmYXVsdCBhY3Rpb248L2xpPgo8bGk+QWRkcyBwYWdpbmF0aW9uIHRvIHN1bW1hcnkgdmlldzwvbGk+CjxsaT5BZGRzIHByZXR0eSB1cmxzIGZvciBmaWxlIGxpbmtzPC9saT4KPGxpPkFkZHMgdGhlIGFiaWxpdHkgdG8gcmVwbGFjZSB0aHVtYm5haWxzIGFmdGVyIHRoZSBmaWxlIGlzIHVwbG9hZWQuPC9saT4KPGxpPkNoYW5nZSB0aHVtYm5haWxzIGZyb20gdXNpbmcgYSAudGh1bWJzIGRpcmVjdG9yeSB0byB1c2luZyBhIHN0YW5kYXJkIHRodW1iXyBwcmVmaXguPC9saT4KPGxpPk51bWVyb3VzIEJ1Z2ZpeGVzPC9saT4KPC91bD4KPC9saT4KCjxsaT5WZXJzaW9uIDEuNCAtIEZlYnJ1YXJ5IDIwMDkKICA8dWw+CiAgICAgPGxpPkZpeCBwcm9ibGVtIHdpdGggc2Nhbm5pbmcgZGlyZWN0b3JpZXMsIGFuZCBjcmVhdGluZyB0aHVtYm5haWxzLjwvbGk+CiAgPC91bD4KPC9saT4KCjwvdWw+CjxiciAvPg==</about>
	<description>A module that allows users to upload files, and allows you to manage them.</description>
	<file>
	  <filename>/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/action.addcategory.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgPSBhbGxvdyB1c2VycyB0byB1cGxvYWQgc3R1ZmYsIGEgcHNldWRvIGZpbGUgbWFuYWdlciBtb2R1bGUKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6CS8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKaWYoICEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uICgnTWFuYWdlIFVwbG9hZHMnKSApCiAgewogICAgcmV0dXJuOwogIH0KCi8vIHBvcHVsYXRlIHRoZSB0ZW1wbGF0ZQokc21hcnR5LT5hc3NpZ24gKCd0aXRsZScsICR0aGlzLT5MYW5nICgnYWRkY2F0ZWdvcnknKSk7CiRzbWFydHktPmFzc2lnbiAoJ3N0YXJ0Zm9ybScsCgkJICR0aGlzLT5DcmVhdGVGb3JtU3RhcnQgKCRpZCwKCQkJCQkgJ2RvX2FkZGNhdGVnb3J5JywKCQkJCQkgJHJldHVybmlkKSk7CiRzbWFydHktPmFzc2lnbiAoJ2VuZGZvcm0nLCAkdGhpcy0+Q3JlYXRlRm9ybUVuZCAoKSk7CiRzbWFydHktPmFzc2lnbiAoJ3N1Ym1pdCcsCgkJICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCAoJGlkLCAnc3VibWl0JywKCQkJCQkgICAkdGhpcy0+TGFuZygnc3VibWl0JykpKTsKJHNtYXJ0eS0+YXNzaWduICgnY2FuY2VsJywKCQkgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0ICgkaWQsICdjYW5jZWwnLAoJCQkJCSAgICR0aGlzLT5MYW5nKCdjYW5jZWwnKSkpOwoKJHNtYXJ0eS0+YXNzaWduICgncHJvbXB0X2NhdGVnb3J5bmFtZScsCgkJICR0aGlzLT5MYW5nICgncHJvbXB0X2NhdGVnb3J5bmFtZScpKTsKJHNtYXJ0eS0+YXNzaWduICgnaW5wdXRfY2F0ZWdvcnluYW1lJywKCQkgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCAoJGlkLCAnaW5wdXRfY2F0ZWdvcnluYW1lJywKCQkJCQkgIiIsIDIwLCA4MCkpOwokc21hcnR5LT5hc3NpZ24gKCdpbmZvX2NhdGVnb3J5bmFtZScsICR0aGlzLT5MYW5nKCdpbmZvX2NhdGVnb3J5bmFtZScpKTsKJHNtYXJ0eS0+YXNzaWduICgncHJvbXB0X2NhdGVnb3J5ZGVzYycsICAkdGhpcy0+TGFuZyAoJ3Byb21wdF9jYXRlZ29yeWRlc2MnKSk7CiRzbWFydHktPmFzc2lnbiAoJ2lucHV0X2NhdGVnb3J5ZGVzYycsCgkJICR0aGlzLT5DcmVhdGVJbnB1dFRleHQgKCRpZCwgJ2lucHV0X2NhdGVnb3J5ZGVzYycsCgkJCQkJICIiLCA4MCwgMjU1KSk7CiRzbWFydHktPmFzc2lnbiAoJ2luZm9fY2F0ZWdvcnlkZXNjJywgJHRoaXMtPkxhbmcoJ2luZm9fY2F0ZWdvcnlkZXNjJykpOwokc21hcnR5LT5hc3NpZ24gKCdwcm9tcHRfY2F0ZWdvcnlwYXRoJywKCQkgJHRoaXMtPkxhbmcgKCdwcm9tcHRfY2F0ZWdvcnlwYXRoJykpOwokc21hcnR5LT5hc3NpZ24gKCdpbnB1dF9jYXRlZ29yeXBhdGgnLAoJCSAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0ICgkaWQsICdpbnB1dF9jYXRlZ29yeXBhdGgnLAoJCQkJCSAiIiwgNDAsIDI1NSkpOwokc21hcnR5LT5hc3NpZ24gKCdpbmZvX2NhdGVnb3J5cGF0aCcsICR0aGlzLT5MYW5nKCdpbmZvX2NhdGVnb3J5cGF0aCcpKTsKJHNtYXJ0eS0+YXNzaWduICgncGF0aG1lc3NhZ2UnLCAkdGhpcy0+TGFuZyAoJ3BhdGhpbnVwbG9hZHMnKSk7Cgokc21hcnR5LT5hc3NpZ24gKCdwcm9tcHRfY2F0ZWdvcnlsaXN0YWJsZScsCgkJICR0aGlzLT5MYW5nICgncHJvbXB0X2NhdGVnb3J5bGlzdGFibGUnKSk7CiRzbWFydHktPmFzc2lnbiAoJ2lucHV0X2NhdGVnb3J5bGlzdGFibGUnLAoJCSAkdGhpcy0+Q3JlYXRlSW5wdXRDaGVja2JveCAoJGlkLAoJCQkJCSAgICAgJ2lucHV0X2NhdGVnb3J5bGlzdGFibGUnLAoJCQkJCSAgICAgMSwwKSk7CgokZmV1c2VycyA9ICR0aGlzLT5HZXRNb2R1bGVJbnN0YW5jZSgnRnJvbnRFbmRVc2VycycpOwppZiggJGZldXNlcnMgKQogIHsKICAgIC8vIGdldCBhIGxpc3Qgb2YgdGhlIGdyb3VwcyBpbiB0aGUgRnJvbnRFbmRVc2VycyBtb2R1bGUKICAgICRncm91cHMgPSAkZmV1c2Vycy0+R2V0R3JvdXBMaXN0KCk7CiAgICBpZiggY291bnQoJGdyb3VwcykgPiAwICkKICAgICAgewoJJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfZ3JvdXBsaXN0JywkdGhpcy0+TGFuZygncHJvbXB0X2dyb3VwbGlzdCcpKTsKCSRzbWFydHktPmFzc2lnbignaW5wdXRfZ3JvdXBsaXN0JywKCQkJJHRoaXMtPkNyZWF0ZUlucHV0U2VsZWN0TGlzdCgkaWQsJ2lucHV0X2dyb3VwbGlzdFtdJywKCQkJCQkJICAgICAkZ3JvdXBzKSk7Cgkkc21hcnR5LT5hc3NpZ24oJ2luZm9fZ3JvdXBsaXN0JywkdGhpcy0+TGFuZygnaW5mb19ncm91cGxpc3QnKSk7CiAgICAgIH0KICB9CgovLyBEaXNwbGF5IHRoZSBwb3B1bGF0ZWQgdGVtcGxhdGUKZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlICgnYWRkY2F0ZWdvcnkudHBsJyk7CgovLyBFT0YKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.addfiletype.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojIEF1dGhvcjogUm9iZXJ0IENhbXBiZWxsIDxyb2JAdGVjaGNvbS5keW5kbnMub3JnPgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDoJLy93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgppZiggISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01hbmFnZSBVcGxvYWRzJykgKQogIHsKICAgIHJldHVybjsKICB9CgppZiggaXNzZXQoJHBhcmFtc1snY2FuY2VsJ10pICkKICB7CiAgICAkdGhpcy0+UmVkaXJlY3QoJGlkLCdkZWZhdWx0YWRtaW4nLCRyZXR1cm5pZCwkcGFyYW1zKTsKICB9CgokaWNvbmxpc3QgPSBhcnJheSgpOwokZGlyID0gZGlybmFtZShfX0ZJTEVfXykuRElSRUNUT1JZX1NFUEFSQVRPUi4naW1hZ2VzJzsKaWYoIGlzX2RpciggJGRpciApICkKICB7CiAgICBpZiggJGRoID0gb3BlbmRpcigkZGlyKSApCiAgICAgIHsKCXdoaWxlKCgkZmlsZSA9IHJlYWRkaXIoJGRoKSkgIT09IGZhbHNlKQoJICB7CgkgICAgaWYoIGlzX2ZpbGUoICRkaXIuRElSRUNUT1JZX1NFUEFSQVRPUi4kZmlsZSApICkKCSAgICAgIHsKCQkkaWNvbmxpc3RbJGZpbGVdID0gJGZpbGU7CgkgICAgICB9CgkgIH0KCWNsb3NlZGlyKCRkaCk7CiAgICAgIH0KCiAgfQoKJGhpZGRlbiA9ICcnOwokbmFtZSA9ICcnOwokZXh0ZW5zaW9ucyA9ICcnOwokZGVzY3JpcHRpb24gPSAnJzsKJGljb24gPSAnJzsKaWYoIGlzc2V0KCAkcGFyYW1zWyd0eXBlaWQnXSApICkKICB7CiAgICAvLyBnZXQgdGhlIGRhdGEgb3V0IG9mIHRoZSBkYXRhYmFzZSwgd2UncmUgb2J2aW91c2x5IGVkaXRpbmcgc29tZXRoaW5nCiAgICAkaGlkZGVuIC49ICR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsJ3R5cGVpZCcsJHBhcmFtc1sndHlwZWlkJ10pOwogICAgJHEgPSAiU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfZmlsZXR5cGVzIAogICAgICAgICAgIFdIRVJFIGlkID0gPyI7CiAgICAkZGIgPSYgJHRoaXMtPkdldERiKCk7CiAgICAkcm93ID0gJGRiLT5HZXRSb3coICRxLCBhcnJheSggJHBhcmFtc1sndHlwZWlkJ10gKSApOwogICAgaWYoICEkcm93ICkKICAgICAgewoJJHRoaXMtPlNob3dFcnJvcnMoJHRoaXMtPkxhbmcoJ2Vycm9yX25vc3VjaHJvdycpKTsKCXJldHVybjsKICAgICAgfQogICAgJG5hbWUgPSAkcm93WyduYW1lJ107CiAgICAkZGVzY3JpcHRpb24gPSAkcm93WydkZXNjcmlwdGlvbiddOwogICAgJGV4dGVuc2lvbnMgPSAkcm93WydleHRlbnNpb25zJ107CiAgICAkaWNvbiA9ICRyb3dbJ2ljb24nXTsKICB9CgovLyBpZiBpbiB0aGUgcGFyYW1zIGFycmF5LCB0aGVuIHRoZSB2YWx1ZXMgaW4gdGhlcmUKLy8gd2lsbCBvdmVycmlkZSB0aG9zZSBpbiB0aGUgZGF0YWJhc2UKaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0X25hbWUnXSkgKQogIHsKICAgICRuYW1lID0gJHBhcmFtc1snaW5wdXRfbmFtZSddOwogIH0KaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0X2Rlc2NyaXB0aW9uJ10pICkKICB7CiAgICAkZGVzY3JpcHRpb24gPSAkcGFyYW1zWydpbnB1dF9kZXNjcmlwdGlvbiddOwogIH0KaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0X2V4dGVuc2lvbnMnXSkgKQogIHsKICAgICRleHRlbnNpb25zID0gJHBhcmFtc1snaW5wdXRfZXh0ZW5zaW9ucyddOwogIH0KaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0X2ljb24nXSkgKQogIHsKICAgICRpY29uID0gJHBhcmFtc1snaW5wdXRfaWNvbiddOwogIH0KCmlmKCBpc3NldCgkcGFyYW1zWydzdWJtaXQnXSkgKQogIHsKICAgIC8vIHRoZSBmb3JtIHdhcyBzdWJtaXR0ZWQKICAgIGlmKCB0cmltKCRuYW1lKSA9PSAnJyApCiAgICAgIHsKCSR0aGlzLT5TaG93RXJyb3JzKCdlcnJvcl9taXNzaW5nbmFtZScpOwogICAgICB9CiAgICBlbHNlIGlmKCB0cmltKCRleHRlbnNpb25zKSA9PSAnJyApCiAgICAgIHsKCSR0aGlzLT5TaG93RXJyb3JzKCdlcnJvcl9taXNzaW5nZXh0ZW5zaW9ucycpOwogICAgICB9CiAgICBlbHNlIGlmKCB0cmltKCRpY29uKSA9PSAnJyApCiAgICAgIHsKCSR0aGlzLT5TaG93RXJyb3JzKCdlcnJvcl9taXNzaW5naWNvbicpOwogICAgICB9CiAgICBlbHNlCiAgICAgIHsKCWlmKCBpc3NldCgkcGFyYW1zWyd0eXBlaWQnXSkgKQoJICB7CgkgICAgLy8gVXBkYXRlIGFuIGV4aXN0aW5nIHJlY29yZAoJICAgICRxID0gIlVQREFURSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfZmlsZXR5cGVzCiAgICAgICAgICAgICAgICAgICAgIFNFVCBuYW1lPT8sZGVzY3JpcHRpb249PyxleHRlbnNpb25zPT8saW1hZ2U9PwogICAgICAgICAgICAgICAgICAgV0hFUkUgaWQgPSA/IjsKCSAgICAkZGItPkV4ZWN1dGUoICRxLCBhcnJheSggdHJpbSgkbmFtZSksIHRyaW0oJGRlc2NyaXB0aW9uKSwgCgkJCQkgICAgIHRyaW0oJGV4dGVuc2lvbnMpLCB0cmltKCRpY29uKSwKCQkJCSAgICAgJHBhcmFtc1sndHlwZWlkJ10gKSApOwoJICB9CgllbHNlCgkgIHsKCSAgICAvLwoJICAgIC8vIEluc2VydCBhIG5ldyByZWNvcmQKCSAgICAvLwoKCSAgICAvLyBHZXQgYSBuZXcgSUQKCSAgICAkbmV3aWQgPSAkZGItPkdlbklEKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfZmlsZXR5cGVzX3NlcSIpOwoJICAgIAoJICAgIC8vIEZpbmQgdGhlIG1heGltdW0gc29ydCBvcmRlcgoJICAgICR0cSA9ICJTRUxFQ1QgbWF4KHNvcnRvcmRlcikgYXMgc29ydG9yZGVyIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX2ZpbGV0eXBlcyI7CgkgICAgJHJvdyA9ICRkYi0+R2V0Um93KCAkdHEgKTsKCSAgICAKCSAgICAkcSA9ICJJTlNFUlQgSU5UTyAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfZmlsZXR5cGVzCiAgICAgICAgICAgICAgKGlkLHNvcnRvcmRlcixuYW1lLGRlc2NyaXB0aW9uLGV4dGVuc2lvbnMsaW1hZ2UpIFZBTFVFUyAoPyw/LD8sPyw/LD8pIjsKCSAgICAkZGItPkV4ZWN1dGUoICRxLCBhcnJheSgkbmV3aWQsJHJvd1snc29ydG9yZGVyJ10rMSwKCQkJCSAgICB0cmltKCRuYW1lKSx0cmltKCRkZXNjcmlwdGlvbiksCgkJCQkgICAgdHJpbSgkZXh0ZW5zaW9ucyksdHJpbSgkaWNvbikpKTsKCSAgfQoKCS8vIHJlZGlyZWN0IGJhY2sgdG8gdGhlIHRhYgoJJHRoaXMtPlJlZGlyZWN0KCRpZCwnZGVmYXVsdGFkbWluJywkcmV0dXJuaWQsJHBhcmFtcyk7CiAgICAgIH0KICB9Cgokc21hcnR5ID0mICR0aGlzLT5zbWFydHk7Cgokc21hcnR5LT5hc3NpZ24oJ3N0YXJ0Zm9ybScsJHRoaXMtPkNyZWF0ZUZvcm1TdGFydCgkaWQsJHBhcmFtc1snYWN0aW9uJ10sJHJldHVybmlkLAoJCQkJCQkgICAnbXVsdGlwYXJ0L2Zvcm0tZGF0YScpKTsKJHNtYXJ0eS0+YXNzaWduKCdlbmRmb3JtJywkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsKJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfbmFtZScsJHRoaXMtPkxhbmcoJ25hbWUnKSk7CiRzbWFydHktPmFzc2lnbigncHJvbXB0X2Rlc2NyaXB0aW9uJywkdGhpcy0+TGFuZygnZGVzY3JpcHRpb24nKSk7CiRzbWFydHktPmFzc2lnbigncHJvbXB0X2V4dGVuc2lvbnMnLCR0aGlzLT5MYW5nKCdleHRlbnNpb25zJykpOwokc21hcnR5LT5hc3NpZ24oJ3Byb21wdF9pY29uJywkdGhpcy0+TGFuZygnaWNvbicpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9uYW1lJywkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwnaW5wdXRfbmFtZScsJG5hbWUsNDApKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9kZXNjcmlwdGlvbicsJHRoaXMtPkNyZWF0ZVRleHRBcmVhKHRydWUsJGlkLCRkZXNjcmlwdGlvbiwnaW5wdXRfZGVzY3JpcHRpb24nKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfZXh0ZW5zaW9ucycsJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsJ2lucHV0X2V4dGVuc2lvbnMnLCRleHRlbnNpb25zLDQwKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfaWNvbicsJHRoaXMtPkNyZWF0ZUlucHV0RHJvcGRvd24oJGlkLCdpbnB1dF9pY29uJywkaWNvbmxpc3QsLTEsJGljb24pKTsKaWYoIGlzc2V0KCRwYXJhbXNbJ2FjdGl2ZV90YWInXSkgKQogIHsKICAgICRoaWRkZW4gLj0gJHRoaXMtPkNyZWF0ZUlucHV0SGlkZGVuKCRpZCwnYWN0aXZlX3RhYicsJHBhcmFtc1snYWN0aXZlX3RhYiddKTsKICB9CiRzbWFydHktPmFzc2lnbignaGlkZGVuJywkaGlkZGVuKTsKJHNtYXJ0eS0+YXNzaWduKCdzdWJtaXQnLCR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsJ3N1Ym1pdCcsJHRoaXMtPkxhbmcoJ3N1Ym1pdCcpKSk7CiRzbWFydHktPmFzc2lnbignY2FuY2VsJywkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCdjYW5jZWwnLCR0aGlzLT5MYW5nKCdjYW5jZWwnKSkpOwoKZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCdhZGRmaWxldHlwZS50cGwnKTsKLy8gRU9GCj8+]]></data>
	</file>
	<file>
	  <filename>/action.categorysummary.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLXNldC1zdHlsZTpsaW51eDsgdGFiLXdpZHRoOjI7IGluZGVudC10YWJzLW1vZGU6dDsgYy1iYXNpYy1vZmZzZXQ6IDI7IC0qLQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogVXBsb2FkcyAtPSBhbGxvdyB1c2VycyB0byB1cGxvYWQgc3R1ZmYsIGEgcHNldWRvIGZpbGUgbWFuYWdlciIgbW9kdWxlCiMgQXV0aG9yOiBSb2JlcnQgQ2FtcGJlbGwgPHJvYkB0ZWNoY29tLmR5bmRucy5vcmc+CiMgVGhpcyBhY3Rpb24gYWRkZWQgYnkgU2pHLCBzbyBpZiBpdCdzIHNjcmV3ZWQgdXAsIHlvdSBrbm93IHdobyB0byBibGFtZQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6CS8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKICAgICAvLyB0cnkgdG8gZmlndXJlIG91dCBhIHNvcnQgb3JkZXIKICAgICAkc29ydG9yZGVyID0gIk9SREVSIEJZIHVwbG9hZF9kYXRlIEFTQyI7CiAgICAgaWYoIGlzc2V0KCRwYXJhbXNbJ3NvcnRvcmRlciddKSApIHsKICAgICAgIHN3aXRjaCggdHJpbSgkcGFyYW1zWydzb3J0b3JkZXInXSkgKSB7CiAgICAgICBjYXNlICJuYW1lX2FzYyI6CgkJCQkgLy8gYXNjZW5kaW5nIG5hbWUKCQkJCSAkc29ydG9yZGVyID0gIk9SREVSIEJZIHVwbG9hZF9jYXRlZ29yeV9uYW1lIEFTQyI7CgkJCQkgYnJlYWs7CiAgICAgICBjYXNlICJuYW1lX2Rlc2MiOgoJCQkJIC8vIGRlc2NlbmRpbmcgbmFtZQoJCQkJICRzb3J0b3JkZXIgPSAiT1JERVIgQlkgdXBsb2FkX2NhdGVnb3J5X25hbWUgREVTQyI7CgkJCQkgYnJlYWs7CiAgICAgICBjYXNlICJzdW1tX2FzYyI6CgkJCQkgLy8gYXNjZW5kaW5nIHN1bW1hcnkKCQkJCSAkc29ydG9yZGVyID0gIk9SREVSIEJZIHVwbG9hZF9jYXRlZ29yeV9kZXNjcmlwdGlvbiBBU0MiOwoJCQkJIGJyZWFrOwogICAgICAgY2FzZSAic3VtbV9kZXNjIjoKCQkJCSAvLyBkZXNjZW5kaW5nIHN1bW1hcnkKCQkJCSAkc29ydG9yZGVyID0gIk9SREVSIEJZIHVwbG9hZF9jYXRlZ29yeV9kZXNjcmlwdGlvbiBERVNDIjsKCQkJCSBicmVhazsKICAgICBjYXNlICJyYW5kb20iOgoJCQkJIC8vIHJhbmRvbQoJCQkJICRzb3J0b3JkZXIgPSAiT1JERVIgQlkgcmFuZCgpIjsKICAgICAgIH0KICAgICB9CiAgICAgJHNvcnRvcmRlciA9ICIgIi4kc29ydG9yZGVyOwoKICAgICAvLyBkZXRlcm1pbmUgaG93IG1hbnkgd2UncmUgZ29pbmcgdG8gZGlzcGxheQogICAgICRjb3VudCA9ICIiOwogICAgIGlmKCBpc3NldCggJHBhcmFtc1snY291bnQnXSApICkKICAgICAgIHsKCQkJCSAkY291bnQgPSAiIExJTUlUIDAsIi4oaW50KXRyaW0oJHBhcmFtc1snY291bnQnXSk7CiAgICAgICB9CgoJCQkJIAoJICAkcXBhcm1zID0gYXJyYXkoKTsKCSAgJHF1ZXJ5ID0gIlNFTEVDVCB1cGxvYWRfY2F0ZWdvcnlfaWQsIHVwbG9hZF9jYXRlZ29yeV9uYW1lLCB1cGxvYWRfY2F0ZWdvcnlfZGVzY3JpcHRpb24gRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfY2F0ZWdvcmllcyBXSEVSRSB1cGxvYWRfY2F0ZWdvcnlfbGlzdGFibGUgPSAxIjsKCSAgJHF1ZXJ5IC49ICRzb3J0b3JkZXIuJGNvdW50OwoKCSAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcXVlcnkpOwoKCSAgaWYoICRkYnJlc3VsdCAmJiAkZGJyZXN1bHQtPlJlY29yZENvdW50KCkgKQoJCSB7CgkJICRtYXRjaGVzID0gJGRicmVzdWx0LT5SZWNvcmRDb3VudCgpOwoJCSB9CgoJICAvLyBzZXR1cCBzdHJpbmdzIC0gYXNzaWduIGEgYnVuY2ggYXMgYmxhbmssIGp1c3QgaW4gY2FzZSBzb21lb25lCgkgIC8vIHVzZXMgYSBzdGFuZGFyZCBzdW1tYXJ5IHRlbXBsYXRlCgkgICR0aGlzLT5zbWFydHktPmFzc2lnbignY2F0ZWdvcnknLCR0aGlzLT5MYW5nKCdjYXRlZ29yeScpKTsKCSAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdpZCcsJHRoaXMtPkxhbmcoJ2lkJykpOwoJICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ25hbWUnLCR0aGlzLT5MYW5nKCduYW1lJykpOwoJICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2RhdGUnLCcnKTsKCSAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdhdXRob3InLCcnKTsKCSAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3NpemUnLCcnKTsKCSAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2RldGFpbHMnLCcnKTsKCSAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3N1bW1hcnknLCR0aGlzLT5MYW5nKCdzdW1tYXJ5JykpOwoJICR0aGlzLT5zbWFydHktPmFzc2lnbignZGVzY3JpcHRpb24nLCR0aGlzLT5MYW5nKCdkZXNjcmlwdGlvbicpKTsKCSAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RodW1ibmFpbCcsJycpOwoJICR0aGlzLT5zbWFydHktPmFzc2lnbignaWNvbicsJycpOwoJICR0aGlzLT5zbWFydHktPmFzc2lnbignaW1hZ2UnLCcnKTsKICAgICAkdGVtcGxhdGUgPSAnc3VtbWFyeXJwdF8nLihpc3NldCgkcGFyYW1zWyd0ZW1wbGF0ZSddKT8kcGFyYW1zWyd0ZW1wbGF0ZSddOidkZWZhdWx0Jyk7CiAgICAkcm93YXJyYXk9YXJyYXkoKTsKCQkgJHJvd2NsYXNzID0gJ3JvdzEnOwoJCSB3aGlsZSAoJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKSkKCQkJewoJCQkkb25lcm93ID0gbmV3IHN0ZENsYXNzICgpOwoJCQkkb25lcm93LT5pZCA9ICRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9pZCddOwoJCQkkb25lcm93LT5uYW1lID0gJHJvd1sndXBsb2FkX2NhdGVnb3J5X25hbWUnXTsKCQkJJG9uZXJvdy0+Y2F0ZWdvcnkgPSAnJzsKCQkJJG9uZXJvdy0+ZG93bmxvYWRfdXJsID0gJyc7CgkJCSRvbmVyb3ctPm5hbWVsaW5rID0gJHRoaXMtPkNyZWF0ZUxpbmsgKCRpZCwgJ2RlZmF1bHQnLCAkcmV0dXJuaWQsCiAgICAgICAgICAgICRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9uYW1lJ10sYXJyYXkgKCdjYXRlZ29yeSc9PiRvbmVyb3ctPm5hbWUsCiAgICAgICAgICAgICdtb2RlJz0+J3N1bW1hcnknLAogICAgICAgICAgICAnc29ydG9yZGVyJz0+KAogICAgICAgICAgICAgICBpc3NldCgkcGFyYW1zWydsaXN0aW5nc29ydG9yZGVyJ10pPyRwYXJhbXNbJ2xpc3Rpbmdzb3J0b3JkZXInXTonZGF0ZV9hc2MnKSwKICAgICAgICAgICAgJ3RlbXBsYXRlJz0+KAogICAgICAgICAgICAgICBpc3NldCgkcGFyYW1zWydsaXN0aW5ndGVtcGxhdGUnXSk/JHBhcmFtc1snbGlzdGluZ3RlbXBsYXRlJ106J2RlZmF1bHQnKSwKICAgICAgICAgICAgKSk7CgkJCSRvbmVyb3ctPmF1dGhvciA9ICcnOwoJCQkkb25lcm93LT5kZXRhaWxsaW5rID0gJyc7CgkJCSRvbmVyb3ctPmRldGFpbHVybCA9ICcnOwoJCQkkb25lcm93LT5zdW1tYXJ5ID0gJHJvd1sndXBsb2FkX2NhdGVnb3J5X2Rlc2NyaXB0aW9uJ107CgkJCSRvbmVyb3ctPnN1bW1hcnlsaW5rID0gJyc7CgkJCSRvbmVyb3ctPnRodW1ibmFpbF91cmwgPSAnJzsKCQkJJG9uZXJvdy0+aW1hZ2VfdXJsID0gJyc7CgkJCSRvbmVyb3ctPmljb251cmwgPSAnJzsKCQkJJG9uZXJvdy0+ZmlsZXR5cGUgPSAnJzsKCQkJJG9uZXJvdy0+ZGVzY3JpcHRpb24gPSAkcm93Wyd1cGxvYWRfY2F0ZWdvcnlfZGVzY3JpcHRpb24nXTsKCQkJJG9uZXJvdy0+aXAgPSAnJzsKCQkJJG9uZXJvdy0+c2l6ZSA9ICcnOyAvLyBjb3VsZCBwb3B1bGF0ZSB3aXRoIGNvdW50Li4uCgkJCSRvbmVyb3ctPmRhdGUgPSAnJzsgLy8gY291bGQgcG9wdWxhdGUgd2l0aCBkYXRhIC4uLgoJCQkkb25lcm93LT5yb3djbGFzcyA9ICRyb3djbGFzczsKCQkgICAgIAoJCQlhcnJheV9wdXNoICgkcm93YXJyYXksICRvbmVyb3cpOwoJCSAgICAoJHJvd2NsYXNzID09ICJyb3cxIiA/ICRyb3djbGFzcyA9ICJyb3cyIiA6ICRyb3djbGFzcyA9ICJyb3cxIik7CgkJCX0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24gKCdpdGVtcycsICRyb3dhcnJheSk7CgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgnaXRlbWNvdW50JywgY291bnQoJHJvd2FycmF5KSk7CgokdGhpcy0+c21hcnR5LT5hc3NpZ24oICdtYXRjaGVzJywgJG1hdGNoZXMgKTsKCi8vIERpc3BsYXkgdGhlIHBvcHVsYXRlZCB0ZW1wbGF0ZQplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGVGcm9tRGF0YWJhc2UgKCR0ZW1wbGF0ZSk7CiAKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.default.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLXNldC1zdHlsZTpsaW51eDsgdGFiLXdpZHRoOjI7IGluZGVudC10YWJzLW1vZGU6dDsgYy1iYXNpYy1vZmZzZXQ6IDI7IC0qLQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogVXBsb2FkcyAtPSBhbGxvdyB1c2VycyB0byB1cGxvYWQgc3R1ZmYsIGEgcHNldWRvIGZpbGUgbWFuYWdlciIgbW9kdWxlCiMgQXV0aG9yOiBSb2JlcnQgQ2FtcGJlbGwgPHJvYkB0ZWNoY29tLmR5bmRucy5vcmc+CiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOgkvL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KaWYoICFpc3NldCgkZ0NtcykgKSBleGl0Owp7CgkkdG1wX3BhcmFtcyA9IGFycmF5KCk7CglpZiAoaXNzZXQgKCRwYXJhbXNbJ2hpZGRlbl9wYXJhbXMnXSkgKQoJCXsKCQkJJHRtcF9wYXJhbXMgPSAkdGhpcy0+ZXhwbG9kZV93aXRoX2tleSgkcGFyYW1zWydoaWRkZW5fcGFyYW1zJ10pOwoJCX0KCSRwYXJhbXMgPSBhcnJheV9tZXJnZSggJHBhcmFtcywgJHRtcF9wYXJhbXMgKTsKfQoKLy8gY2hlY2sgZm9yIHJlcXVpcmVkIGFyZ3VtZW50cwppZiAoIWlzc2V0ICgkcGFyYW1zWydtb2RlJ10pICkKICB7CiAgICAkcGFyYW1zWydtb2RlJ10gPSAnc3VtbWFyeSc7CiAgfQogICAgICAgIAovLyBzZXR1cAokdGVtcGxhdGUgPSAnc3VtbWFyeXJwdF8nLiR0aGlzLT5HZXRQcmVmZXJlbmNlKCdkZWZhdWx0X3N1bW1hcnlycHQnKTsKaWYoIGlzc2V0KCAkcGFyYW1zWyd0ZW1wbGF0ZSddICkgKQoJewoJCSR0ZW1wbGF0ZSA9ICdzdW1tYXJ5cnB0XycuJHBhcmFtc1sndGVtcGxhdGUnXTsKCX0KCi8vIGhhbmRsZSB0aGUgZGV0YWlscGFnZSBwYXJhbWV0ZXIKJGRldGFpbHBhZ2UgPSAnJzsKaWYoIGlzc2V0KCRwYXJhbXNbJ2RldGFpbHBhZ2UnXSkgKQoJewoJCWdsb2JhbCAkZ0NtczsKCQkkbWFuYWdlciA9JiAkZ0Ntcy0+R2V0SGllcmFyY2h5TWFuYWdlcigpOwoJCSRub2RlID0mICRtYW5hZ2VyLT5zdXJlR2V0Tm9kZUJ5QWxpYXMoJHBhcmFtc1snZGV0YWlscGFnZSddKTsKCQlpZiAoaXNzZXQoJG5vZGUpKQoJCQl7CgkJCQkkY29udGVudCA9JiAkbm9kZS0+R2V0Q29udGVudCgpOwoJCQkJaWYgKGlzc2V0KCRjb250ZW50KSkKCQkJCQl7CgkJCQkJCSRkZXRhaWxwYWdlID0gJGNvbnRlbnQtPklkKCk7CgkJCQkJfQoJCQl9CgkJZWxzZQoJCQl7CgkJCQkkbm9kZSA9JiAkbWFuYWdlci0+c3VyZUdldE5vZGVCeUlkKCRwYXJhbXNbJ2RldGFpbHBhZ2UnXSk7CgkJCQlpZiAoaXNzZXQoJG5vZGUpKQoJCQkJCXsKCQkJCQkJJGRldGFpbHBhZ2UgPSAkcGFyYW1zWydkZXRhaWxwYWdlJ107CgkJCQkJfQoJCQl9CgkJdW5zZXQoICRwYXJhbXNbJ2RldGFpbHBhZ2UnXSApOwoJfQppZiggJGRldGFpbHBhZ2UgIT0gJycgKQoJewoJCSRyZXR1cm5pZCA9ICRkZXRhaWxwYWdlOwoJfQoJCQkJCQkJIAoKLy8gbW9kZSBpcyBzZXQsIG5vdyBkZWNpZGUgd2hhdCB0byBkbwovLyBoYW5kbGUgdGhlIHNpbXBsZSBzdHVmZiAob25lIHNpbmdsZSBsaW5rKQppZiAoJHBhcmFtc1snbW9kZSddID09ICd1cGxvYWQnKQogIHsKCQlpbmNsdWRlKGRpcm5hbWUoX19GSUxFX18pLicvZnVuY3Rpb24uZGVmYXVsdF91cGxvYWRtb2RlLnBocCcpOwoJCXJldHVybjsKICB9CmVsc2UgaWYoICRwYXJhbXNbJ21vZGUnXSA9PSAnc2luZ2xlJyB8fCAKCQkJCSAkcGFyYW1zWydtb2RlJ10gPT0gJ2RldGFpbGVkJyB8fAoJCQkJICRwYXJhbXNbJ21vZGUnXSA9PSAnZGV0YWlsJyB8fAoJCQkJICRwYXJhbXNbJ21vZGUnXSA9PSAnc2luZ2xlc3VtbWFyeScgfHwKCQkJCSAkcGFyYW1zWydtb2RlJ10gPT0gJ2xpbmsnIHx8IAoJCQkJICRwYXJhbXNbJ21vZGUnXSA9PSAndXJsJyApCgl7CgkJaW5jbHVkZShkaXJuYW1lKF9fRklMRV9fKS4nL2FjdGlvbi5kZXRhaWwucGhwJyk7CgkJcmV0dXJuOwoJfQoKLy8KLy8gU2V0dXAgZGF0YSBmb3IgdGhlIGRlZmF1bHQgc3VtbWFyeSBtb2RlCi8vCiRzZWxlY3Rmb3JtID0gJGlkOwppZiggaXNzZXQoICRwYXJhbXNbJ3NlbGVjdGZvcm0nXSApICkKCXsKCQkkc2VsZWN0Zm9ybSA9IHRyaW0oJHBhcmFtc1snc2VsZWN0Zm9ybSddKTsKCX0KCQkKJHNlbGVjdG5hbWUgPSAnZmlsZSc7CmlmKCBpc3NldCggJHBhcmFtc1snc2VsZWN0bmFtZSddICkgKQoJewoJCSRzZWxlY3RuYW1lID0gdHJpbSgkcGFyYW1zWydzZWxlY3RuYW1lJ10pOwoJfQokc2VsZWN0dmFsdWUgPSAtMTsKaWYoIGlzc2V0KCAkcGFyYW1zWydzZWxlY3R2YWx1ZSddICkgKSB7Cgkkc2VsZWN0dmFsdWUgPSB0cmltKCRwYXJhbXNbJ3NlbGVjdHZhbHVlJ10pOwogfQoJCQokZmlsZXR5cGVzID0gbnVsbDsKaWYoIGlzc2V0KCAkcGFyYW1zWydmaWxldHlwZXMnXSApICkKCXsKCQkkZmlsZXR5cGVzID0gdHJpbSgkcGFyYW1zWydmaWxldHlwZXMnXSk7Cgl9Cgoka2V5ID0gbnVsbDsKaWYoIGlzc2V0KCAkcGFyYW1zWydrZXknXSApICkKCXsKCQkka2V5ID0gdHJpbSgkcGFyYW1zWydrZXknXSk7Cgl9CgkJIAppZiggIWlzc2V0KCAkcGFyYW1zWydjYXRlZ29yeSddICkgKQoJewoJCS8vIGlmIG1vZGUgb3IgY2F0ZWdvcnkgaXNuJ3Qgc2V0Li4uIHdlIGRvbid0IGRpc3BsYXkgYW55dGhpbmcKCQkkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UgKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLAoJCQkJCQkJCQkJCQkJCQkkdGhpcy0+TGFuZyAoJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcycsJ2NhdGVnb3J5JykpOwoJCXJldHVybjsKCX0KCi8vIHRyeSB0byBmaWd1cmUgb3V0IGEgc29ydCBvcmRlcgokc29ydG9yZGVyID0gIk9SREVSIEJZIHVwbG9hZF9kYXRlIEFTQyI7CmlmKCBpc3NldCgkcGFyYW1zWydzb3J0b3JkZXInXSkgKSB7Cglzd2l0Y2goIHRyaW0oJHBhcmFtc1snc29ydG9yZGVyJ10pICkgewoJY2FzZSAiZGF0ZV9hc2MiOgoJCS8vIGFzY2VuZGluZyBkYXRlCgkJJHNvcnRvcmRlciA9ICJPUkRFUiBCWSB1cGxvYWRfZGF0ZSBBU0MiOwoJCWJyZWFrOwoJY2FzZSAiZGF0ZV9kZXNjIjoKCQkvLyBkZXNjZW5kaW5nIGRhdGUKCQkkc29ydG9yZGVyID0gIk9SREVSIEJZIHVwbG9hZF9kYXRlIERFU0MiOwoJCWJyZWFrOwoJY2FzZSAibmFtZV9hc2MiOgoJCS8vIGFzY2VuZGluZyBuYW1lCgkJJHNvcnRvcmRlciA9ICJPUkRFUiBCWSB1cGxvYWRfbmFtZSBBU0MiOwoJCWJyZWFrOwoJY2FzZSAibmFtZV9kZXNjIjoKCQkvLyBkZXNjZW5kaW5nIG5hbWUKCQkkc29ydG9yZGVyID0gIk9SREVSIEJZIHVwbG9hZF9uYW1lIERFU0MiOwoJCWJyZWFrOwoJY2FzZSAic2l6ZV9hc2MiOgoJCS8vIGFzY2VuZGluZyBzaXplCgkJJHNvcnRvcmRlciA9ICJPUkRFUiBCWSB1cGxvYWRfc2l6ZSBBU0MiOwoJCWJyZWFrOwoJY2FzZSAic2l6ZV9kZXNjIjoKCQkvLyBkZXNjZW5kaW5nIHNpemUKCQkkc29ydG9yZGVyID0gIk9SREVSIEJZIHVwbG9hZF9zaXplIERFU0MiOwoJCWJyZWFrOwoJY2FzZSAic3VtbV9hc2MiOgoJCS8vIGFzY2VuZGluZyBzdW1tYXJ5CgkJJHNvcnRvcmRlciA9ICJPUkRFUiBCWSB1cGxvYWRfc3VtbWFyeSBBU0MiOwoJCWJyZWFrOwoJY2FzZSAic3VtbV9kZXNjIjoKCQkvLyBkZXNjZW5kaW5nIHN1bW1hcnkKCQkkc29ydG9yZGVyID0gIk9SREVSIEJZIHVwbG9hZF9zdW1tYXJ5IERFU0MiOwoJCWJyZWFrOwoJY2FzZSAiYXV0aG9yX2FzYyI6CgkJLy8gYXNjZW5kaW5nIGF1dGhvcgoJCSRzb3J0b3JkZXIgPSAiT1JERVIgQlkgdXBsb2FkX2F1dGhvciBBU0MiOwoJCWJyZWFrOwoJY2FzZSAiYXV0aG9yX2Rlc2MiOgoJCS8vIGRlc2NlbmRpbmcgYXV0aG9yCgkJJHNvcnRvcmRlciA9ICJPUkRFUiBCWSB1cGxvYWRfYXV0aG9yIERFU0MiOwoJCWJyZWFrOwoJY2FzZSAiaXBfYXNjIjoKCQkvLyBhc2NlbmRpbmcgaXAKCQkkc29ydG9yZGVyID0gIk9SREVSIEJZIHVwbG9hZF9pcCBBU0MiOwoJCWJyZWFrOwoJY2FzZSAiaXBfZGVzYyI6CgkJLy8gZGVzY2VuZGluZyBpcAoJCSRzb3J0b3JkZXIgPSAiT1JERVIgQlkgdXBsb2FkX2lwIERFU0MiOwoJCWJyZWFrOwoJY2FzZSAiZGVzY19hc2MiOgoJCS8vIGFzY2VuZGluZyBhdXRob3IKCQkkc29ydG9yZGVyID0gIk9SREVSIEJZIHVwbG9hZF9kZXNjcmlwdGlvbiBBU0MiOwoJCWJyZWFrOwoJY2FzZSAiZGVzY19kZXNjIjoKCQkvLyBkZXNjZW5kaW5nIGF1dGhvcgoJCSRzb3J0b3JkZXIgPSAiT1JERVIgQlkgdXBsb2FkX2Rlc2NyaXB0aW9uIERFU0MiOwoJCWJyZWFrOwoJY2FzZSAicmFuZG9tIjoKCQkvLyByYW5kb20KCQkkc29ydG9yZGVyID0gIk9SREVSIEJZIHJhbmQoKSI7Cgl9CiB9CiRzb3J0b3JkZXIgPSAiICIuJHNvcnRvcmRlcjsKCi8vIGRldGVybWluZSBob3cgbWFueSB3ZSdyZSBnb2luZyB0byBkaXNwbGF5CiRsaW1pdHN0ciA9ICIiOwokcGFnZWxpbWl0ID0gMTAwMDAwOwokcGFnZW51bSA9IDE7CiRudW1wYWdlcyA9IDE7CmlmKCBpc3NldCggJHBhcmFtc1snY291bnQnXSApICkKCXsKCQkkcGFnZWxpbWl0ID0gKGludCkkcGFyYW1zWydjb3VudCddOwoJfQppZiggaXNzZXQoICRwYXJhbXNbJ3BhZ2VudW0nXSApICkKCXsKCQkkcGFnZW51bSA9IChpbnQpJHBhcmFtc1sncGFnZW51bSddOwoJfQokbGltaXRzdHIgPSAiIExJTUlUIDAsJHBhZ2VsaW1pdCI7CgovLyBnZXQgdGhlIGNhdGVnb3J5IGlkCiRjYXRlZ29yeSA9IGFycmF5KCk7CmlmKCB0cmltKCRwYXJhbXNbJ2NhdGVnb3J5J10pICE9ICdhbGwnICkKCXsKCQkkY2F0ZWdvcnkgPSAkdGhpcy0+Z2V0Q2F0ZWdvcnlGcm9tTmFtZSggdHJpbSgkcGFyYW1zWydjYXRlZ29yeSddKSApOwoJCWlmKCAhJGNhdGVnb3J5ICkKCQkJewoJCQkJJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlICgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwKCQkJCQkJCQkJCQkJCQkJCQkkdGhpcy0+TGFuZyAoJ2Vycm9yX2NhdGVnb3J5bm90Zm91bmQnKSk7CgkJCQlyZXR1cm47CgkJCX0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2NhdGVnb3J5X25hbWUnLCRwYXJhbXNbJ2NhdGVnb3J5J10pOwoJfQoKLy8gZ2V0IHRoZSBmaWx0ZXIgc3RyaW5nCiRmaWx0ZXIgPSAnJzsKaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0X2ZpbHRlciddKSAmJiAkcGFyYW1zWydpbnB1dF9maWx0ZXInXSAhPSAnJyApCgl7CgkJJGZpbHRlciA9IHRyaW0oJHBhcmFtc1snaW5wdXRfZmlsdGVyJ10pOwoJfQppZiggJGZpbHRlciA9PSAnJyApCgl7CgkJdW5zZXQoJHBhcmFtc1snaGlkZGVuX3BhcmFtcyddKTsKCX0KCQkKaWYoIGlzc2V0KCRwYXJhbXNbJ2ZpbHRlciddKSApCgl7CgkJLy8gb3B0aW9uYWxseSBkaXNwbGF5IHRoZSBmaWx0ZXIgZm9ybQoJCSR0aGlzLT5zbWFydHktPmFzc2lnbignc3RhcnRmb3JtJywgJHRoaXMtPkNyZWF0ZUZvcm1TdGFydCgkaWQsJ2RlZmF1bHQnLCRyZXR1cm5pZCwKCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCSRtZXRob2Q9J3Bvc3QnLCAnJywgdHJ1ZSkpOwoJCSR0aGlzLT5zbWFydHktPmFzc2lnbigncHJvbXB0X2ZpbHRlcicsJHRoaXMtPkxhbmcoJ2ZpbHRlcicpKTsKCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2lucHV0X2ZpbHRlcicsCgkJCQkJCQkJCQkJCQkkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwnaW5wdXRfZmlsdGVyJywkZmlsdGVyLDE1KSk7CgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdpbnB1dF9zdWJtaXQnLAoJCQkJCQkJCQkJCQkJJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwnaW5wdXRfc3VibWl0JywKCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCSAkdGhpcy0+TGFuZygnc3VibWl0JykpKTsKCQl1bnNldCggJHBhcmFtc1snaW5wdXRfZmlsdGVyJ10gKTsKCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2hpZGRlbl9wYXJhbXMnLAoJCQkJCQkJCQkJCQkJJHRoaXMtPkNyZWF0ZUlucHV0SGlkZGVuKCRpZCwnaGlkZGVuX3BhcmFtcycsCgkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkgJHRoaXMtPmltcGxvZGVfd2l0aF9rZXkoJHBhcmFtcykpKTsKCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2VuZGZvcm0nLCR0aGlzLT5DcmVhdGVGb3JtRW5kKCkpOwoJfQoJCSAKJGRvX3F1ZXJ5ID0gdHJ1ZTsKaWYoIChpc3NldCggJHBhcmFtc1snbm9faW5pdGlhbCddICkgJiYgJHBhcmFtc1snbm9faW5pdGlhbCddICE9ICcnKSAmJgoJCShpc3NldCggJHBhcmFtc1snaGlkZGVuX3BhcmFtcyddKSA9PSBmYWxzZSkgKQoJewoJCSRkb19xdWVyeSA9IGZhbHNlOwoJfQoJCSAKLy8gYWRqdXN0IHRoZSBmaWx0ZXIKJGFkanVzdGVkX2ZpbHRlciA9ICRmaWx0ZXI7CmlmKCAkZmlsdGVyICE9ICcnICkKCXsKCQkkdG1wID0gZXhwbG9kZSgnICcsJGFkanVzdGVkX2ZpbHRlcik7CgkJJGFkanVzdGVkX2ZpbHRlciA9ICclJy4kdG1wWzBdLiclJzsKCX0KCQkgCi8vIGdldCByZWFkeSBmb3IgYXJyYXkgcHJvY2Vzc2luZwokcm93YXJyYXkgPSBhcnJheSgpOwokcXVlcnkgPSAnJzsKJHF1ZXJ5MSA9ICcnOwokZGJyZXN1bHQgPSBmYWxzZTsKJHFwYXJtcyA9IGFycmF5KCk7CiAgICAgCmlmKCB0cmltKCRwYXJhbXNbJ2NhdGVnb3J5J10pID09ICdhbGwnICkKCXsKCQkvLwoJCS8vIGhhbmRsZSBkaXNwbGF5IGFsbCBsaXN0YWJsZSBjYXRlZ29yaWVzCgkJLy8KCgkJLy8gYXNzdW1lIHN1bW1hcnkgbW9kZS4KCQkkcGFyYW1zWydtb2RlJ10gPSAnc3VtbWFyeSc7CgogICAgJHF1ZXJ5MSA9ICJTRUxFQ1QgY291bnQodXBsb2FkX2lkKSBBUyBjb3VudAogICAgICAgICAgICAgICAgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfY2F0ZWdvcmllcyBBUyBBLCIuCgkJCSAgICAgICAgICAgIGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHMgQVMgQiAKICAgICAgICAgICAgICAgIFdIRVJFIHVwbG9hZF9jYXRlZ29yeV9saXN0YWJsZSA9IDEiOwoJCSRxdWVyeSAgPSAiU0VMRUNUIHVwbG9hZF9pZCwgQS51cGxvYWRfY2F0ZWdvcnlfaWQgQVMKICAgICAgICAgICAgICAgICAgdXBsb2FkX2NhdGVnb3J5X2lkLCB1cGxvYWRfbmFtZSwgdXBsb2FkX2F1dGhvciwgCiAgICAgICAgICAgICAgICAgIHVwbG9hZF9zdW1tYXJ5LCB1cGxvYWRfZGVzY3JpcHRpb24sCiAgICAgICAgICAgICAgICAgIHVwbG9hZF9pcCwgdXBsb2FkX3NpemUsIHVwbG9hZF9kYXRlLCB1cGxvYWRfY2F0ZWdvcnlfbmFtZSwKICAgICAgICAgICAgICAgICAgdXBsb2FkX3RodW1ibmFpbAogICAgICAgICAgICAgICAgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfY2F0ZWdvcmllcyBBUyBBLCIuCgkJCSAgICAgICAgICAgIGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHMgQVMgQiAKICAgICAgICAgICAgICAgIFdIRVJFIHVwbG9hZF9jYXRlZ29yeV9saXN0YWJsZSA9IDEiOwoJCWlmKCAka2V5ICE9IG51bGwgKQoJCQl7CgkJCQkkcXVlcnkxIC49ICIgQU5EIHVwbG9hZF9rZXkgPSA/IjsKCQkJCSRxdWVyeSAuPSAiIEFORCB1cGxvYWRfa2V5ID0gPyI7CgkJCQkkcXBhcm1zW10gPSAka2V5OwoJCQl9CgkJaWYoICRhZGp1c3RlZF9maWx0ZXIgIT0gJycgKQoJCQl7CgkJCQkkcXVlcnkxIC49ICIgQU5EIHVwbG9hZF9uYW1lIExJS0UgPyAiOwoJCQkJJHF1ZXJ5IC49ICIgQU5EIHVwbG9hZF9uYW1lIExJS0UgPyAiOwoJCQkJJHFwYXJtc1tdID0gJGFkanVzdGVkX2ZpbHRlcjsKCQkJfQoJIAoJCSRxdWVyeTEgLj0gIiBBTkQgQS51cGxvYWRfY2F0ZWdvcnlfaWQgPSBCLnVwbG9hZF9jYXRlZ29yeV9pZCIuJHNvcnRvcmRlcjsKCQkkcXVlcnkgLj0gIiBBTkQgQS51cGxvYWRfY2F0ZWdvcnlfaWQgPSBCLnVwbG9hZF9jYXRlZ29yeV9pZCIuJHNvcnRvcmRlcjsKCQkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxdWVyeSwgJHFwYXJtcyApOwoJfQogZWxzZSB7CgkgLy8KCSAvLyBEZWFsaW5nIHdpdGggYSBzcGVjaWZpYyBjYXRlZ29yeQoJIC8vCgoJIC8vIGlmIHRoZSBjYXRlZ29yeSBpc24ndCBsaXN0YWJsZSwgd2UgY2FuIHN0b3AgaGVyZQoJIGlmKCAkY2F0ZWdvcnlbJ3VwbG9hZF9jYXRlZ29yeV9saXN0YWJsZSddID09IDAgKSB7CgkJIHJldHVybjsKCSB9CgkgJGNhdGVnb3J5X2lkID0gJGNhdGVnb3J5Wyd1cGxvYWRfY2F0ZWdvcnlfaWQnXTsKCgkgLy8gY2hlY2sgZm9yIHBlcm1pc3Npb24sIGlmIEZFVSBtb2R1bGUgZXhpc3RzLCBhbmQgdGhlIAoJIC8vIHVwbG9hZHMgZ3JvdXBsaXN0IGlzCgkgLy8gbm90IG51bGwsIGFuZCB0aGUgcmV0dXJuaWQgaXMgbm90IGVtcHR5ICh3ZSdyZSBvbiB0aGUgZnJvbnRlbmQpCgkgJHJlc3VsdCA9ICR0aGlzLT5fQ2hlY2tEb3dubG9hZFNlY3VyaXR5KCRjYXRlZ29yeSwkcmV0dXJuaWQpOwoJIGlmKCAhJHJlc3VsdCApCgkJIHsKCQkJICR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSggJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsCgkJCQkJCQkJCQkJCQkJCQkgJHRoaXMtPkxhbmcoJ2Vycm9yX3Blcm1pc3Npb25kZW5pZWQnKSApOwoJCQkgcmV0dXJuOwoJCSB9CgoJIC8vIHdlJ3JlIGdvbm5hIHNjYW4gdGhlIGRpcmVjdG9yeSBhbmQgc2VlIGlmIGFueWJvZHkgdXBsb2FkZWQKCSAvLyBhbnkgZmlsZXMgdmlhIGZ0cCBvciBzY3Agb3IgYW55dGhpbmcgc2lsbHkuCgkgJGNhdHBhdGgxID0gJHRoaXMtPmdldENhdGVnb3J5UGF0aEZyb21JRCgkY2F0ZWdvcnlfaWQpOwoJICRkaXIgPSAkdGhpcy0+X2NhdGVnb3J5UGF0aCggJGNhdHBhdGgxICk7CgkgJHRoaXMtPlNtYXJ0U2NhbkRpcmVjdG9yeSggJGNhdGVnb3J5X2lkLCAkZGlyICk7CgoJIC8vIE5vdyBoYW5kbGUgb3VyIG1vZGUKCSBzd2l0Y2goIHRyaW0oJHBhcmFtc1snbW9kZSddICkgKSB7CgkgY2FzZSAnc2VsZWN0JzoKCQkgewoJCQkgLy8gZGlzcGxheSBhIGRyb3Bkb3duIGxpc3Qgb2YgYWxsIG9mIHRoZSBtYXRjaGluZyBmaWxlcwoJCQkgJHF1ZXJ5ID0gIlNFTEVDVCAqIEZST00gIi5jbXNfZGJfcHJlZml4KCkuCgkJCQkgIm1vZHVsZV91cGxvYWRzIFdIRVJFIHVwbG9hZF9jYXRlZ29yeV9pZCA9ID8iOwoJCQkgJHFwYXJtc1tdID0gJGNhdGVnb3J5X2lkOwoJCQkgaWYoICRrZXkgIT0gTlVMTCApCgkJCQkgewoJCQkJCSAkcXVlcnkgLj0gIiBBTkQgdXBsb2FkX2tleSA9ID8iOwoJCQkJCSAkcXBhcm1zW10gPSAka2V5OwoJCQkJIH0KCQkJICRxdWVyeSAuPSAkc29ydG9yZGVyLiRsaW1pdHN0cjsKCQkJICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSAoJHF1ZXJ5LCAkcXBhcm1zKTsKCQkJICRpdGVtcyA9IGFycmF5KCk7CgkJCSBpZiggaXNzZXQoJHBhcmFtc1snc2VsZWN0bm9uZSddKSApCgkJCQkgewoJCQkJCSAkaXRlbXNbJHRoaXMtPkxhbmcoJ25vbmUnKV0gPSAtMTsKCQkJCSB9CgkJCSB3aGlsZSggJGRicmVzdWx0ICYmICgkcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdygpKSApIHsKCQkJCSAkaXRlbXNbJHJvd1sndXBsb2FkX25hbWUnXV0gPSAkcm93Wyd1cGxvYWRfaWQnXTsKCQkJIH0KCQkJIGVjaG8gJHRoaXMtPkNyZWF0ZUlucHV0RHJvcGRvd24oJHNlbGVjdGZvcm0sJHNlbGVjdG5hbWUsCgkJCQkJCQkJCQkJCQkJCQkJCQkgJGl0ZW1zLC0xLCRzZWxlY3R2YWx1ZSk7CgkJCSAkZG9fcXVlcnkgPSBmYWxzZTsKCQkgfQoJCSBicmVhazsKCgkgY2FzZSAnc3VtbWFyeSc6CgkJIHsKCQkJIC8vIGRpc3BsYXkgaW5mbyBhYm91dCBhbGwgb2YgdGhlIGZpbGVzIGluIHRoZSBjYXRlZ29yeQoJCQkgLy8gcG9zc2libHkgbGltaXRlZCBieSBmaWxlcyBvZiBhIHNwZWNpZmMgdHlwZQoJCQkgJHFwYXJtcyA9IGFycmF5KCRjYXRlZ29yeV9pZCk7CgkJCSAkcXVlcnkxID0KCQkJCSAiU0VMRUNUIGNvdW50KHVwbG9hZF9pZCkgQVMgY291bnQKICAgICAgICAgICAgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHMgCiAgICAgICAgICAgV0hFUkUgdXBsb2FkX2NhdGVnb3J5X2lkID0gPyI7CgkJCSAkcXVlcnkgPQoJCQkJICJTRUxFQ1QgKiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2FkcyAKICAgICAgICAgICBXSEVSRSB1cGxvYWRfY2F0ZWdvcnlfaWQgPSA/IjsKCQkJIGlmKCAka2V5ICE9IG51bGwgKQoJCQkJIHsKCQkJCQkgJHF1ZXJ5MSAuPSAiIEFORCB1cGxvYWRfa2V5ID0gPyI7CgkJCQkJICRxdWVyeSAuPSAiIEFORCB1cGxvYWRfa2V5ID0gPyI7CgkJCQkJICRxcGFybXNbXSA9ICRrZXk7CgkJCQkgfQoJCQkgaWYoICRhZGp1c3RlZF9maWx0ZXIgIT0gJycgKQoJCQkJIHsKCQkJCQkgJHF1ZXJ5MSAuPSAiIEFORCB1cGxvYWRfbmFtZSBMSUtFID8iOwoJCQkJCSAkcXVlcnkgLj0gIiBBTkQgdXBsb2FkX25hbWUgTElLRSA/IjsKCQkJCQkgJHFwYXJtc1tdID0gJGFkanVzdGVkX2ZpbHRlcjsKCQkJCSB9CgkJCSAvLyBibGFoIGJsYWgKCQkJICRxdWVyeTEgLj0gJHNvcnRvcmRlcjsKCQkJICRxdWVyeSAuPSAkc29ydG9yZGVyOwoJCSB9CgkJIGJyZWFrOwoJIH0gLy8gc3dpdGNoCiB9CgoKJG1hdGNoZXMgPSAwOwoKaWYoICRkb19xdWVyeSA9PSB0cnVlICkKCXsKCQkvLyBnZXQgdGhlIHRvdGFsIG51bWJlciBvZiByb3dzCgkJJG1hdGNoZXMgPSAkZGItPkdldE9uZSgkcXVlcnkxLCAkcXBhcm1zKTsKCgkJLy8gY2FsY3VsYXRlIHRoZSBudW1iZXIgb2YgcGFnZXMKCQkkbnVtcGFnZXMgPSAoaW50KSgkbWF0Y2hlcyAvICRwYWdlbGltaXQpOwoJCWlmKCAkbWF0Y2hlcyAlICRwYWdlbGltaXQgPiAwICkKCQkJewoJCQkJJG51bXBhZ2VzKys7CgkJCX0KCQkkc3RhcnRvZmZzZXQgPSAoJHBhZ2VudW0tMSkgKiAkcGFnZWxpbWl0OwoKCQkkZGJyZXN1bHQgPSAkZGItPlNlbGVjdExpbWl0KCRxdWVyeSwkcGFnZWxpbWl0LCRzdGFydG9mZnNldCwkcXBhcm1zKTsKCgkJLy8gc2V0dXAgc3RyaW5ncwoJCSRzbWFydHktPmFzc2lnbignbnVtcGFnZXMnLCRudW1wYWdlcyk7CgkJJHNtYXJ0eS0+YXNzaWduKCdwYWdlbnVtJywkcGFnZW51bSk7CgkJJHNtYXJ0eS0+YXNzaWduKCdwYWdlbGltaXQnLCRwYWdlbGltaXQpOwoJCSRzbWFydHktPmFzc2lnbignbWF0Y2hlcycsICRtYXRjaGVzICk7CgkJaWYoICRwYWdlbnVtID4gMSApCgkJCXsKCQkJCSRwYXJtcyA9ICRwYXJhbXM7CgkJCQkkcGFybXNbJ3BhZ2VudW0nXSA9IDE7CgkJCQkkc21hcnR5LT5hc3NpZ24oJ2ZpcnN0cGFnZV91cmwnLAoJCQkJCQkJCQkJCQkkdGhpcy0+Q3JlYXRlTGluaygkaWQsJ2RlZmF1bHQnLCRyZXR1cm5pZCwnJywKCQkJCQkJCQkJCQkJCQkJCQkJCQkJJHBhcm1zLCcnLHRydWUpKTsKCQkJCSRwYXJtcyA9ICRwYXJhbXM7CgkJCQkkcGFybXNbJ3BhZ2VudW0nXSA9ICRwYWdlbnVtIC0gMTsKCQkJCSRzbWFydHktPmFzc2lnbigncHJldnBhZ2VfdXJsJywKCQkJCQkJCQkJCQkJJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCdkZWZhdWx0JywkcmV0dXJuaWQsJycsCgkJCQkJCQkJCQkJCQkJCQkJCQkJCSRwYXJtcywnJyx0cnVlKSk7CgkJCX0KCQlpZiggJHBhZ2VudW0gPCAkbnVtcGFnZXMgKQoJCQl7CgkJCQkkcGFybXMgPSAkcGFyYW1zOwoJCQkJJHBhcm1zWydwYWdlbnVtJ10gPSAkbnVtcGFnZXM7CgkJCQkkc21hcnR5LT5hc3NpZ24oJ2xhc3RwYWdlX3VybCcsCgkJCQkJCQkJCQkJCSR0aGlzLT5DcmVhdGVMaW5rKCRpZCwnZGVmYXVsdCcsJHJldHVybmlkLCcnLAoJCQkJCQkJCQkJCQkJCQkJCQkJCQkkcGFybXMsJycsdHJ1ZSkpOwoKCQkJCSRwYXJtcyA9ICRwYXJhbXM7CgkJCQkkcGFybXNbJ3BhZ2VudW0nXSA9ICRwYWdlbnVtICsgMTsKCQkJCSRzbWFydHktPmFzc2lnbignbmV4dHBhZ2VfdXJsJywKCQkJCQkJCQkJCQkJJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCdkZWZhdWx0JywkcmV0dXJuaWQsJycsCgkJCQkJCQkJCQkJCQkJCQkJCQkJCSRwYXJtcywnJyx0cnVlKSk7CgkJCX0KCQkkc21hcnR5LT5hc3NpZ24oJ2ZpcnN0cGFnZScsJHRoaXMtPkxhbmcoJ2ZpcnN0cGFnZScpKTsKCQkkc21hcnR5LT5hc3NpZ24oJ2ZpcnN0cGFnZV9hcnJvdycsJHRoaXMtPkxhbmcoJ2ZpcnN0cGFnZV9hcnJvdycpKTsKCQkkc21hcnR5LT5hc3NpZ24oJ3ByZXZwYWdlJywkdGhpcy0+TGFuZygncHJldnBhZ2UnKSk7CgkJJHNtYXJ0eS0+YXNzaWduKCdwcmV2cGFnZV9hcnJvdycsJHRoaXMtPkxhbmcoJ3ByZXZwYWdlX2Fycm93JykpOwoJCSRzbWFydHktPmFzc2lnbignbmV4dHBhZ2UnLCR0aGlzLT5MYW5nKCduZXh0cGFnZScpKTsKCQkkc21hcnR5LT5hc3NpZ24oJ25leHRwYWdlX2Fycm93JywkdGhpcy0+TGFuZygnbmV4dHBhZ2VfYXJyb3cnKSk7CgkJJHNtYXJ0eS0+YXNzaWduKCdsYXN0cGFnZScsJHRoaXMtPkxhbmcoJ2xhc3RwYWdlJykpOwoJCSRzbWFydHktPmFzc2lnbignbGFzdHBhZ2VfYXJyb3cnLCR0aGlzLT5MYW5nKCdsYXN0cGFnZV9hcnJvdycpKTsKCQkkc21hcnR5LT5hc3NpZ24oJ3BhZ2V0ZXh0JywkdGhpcy0+TGFuZygncGFnZScpKTsKCQkkc21hcnR5LT5hc3NpZ24oJ29mdGV4dCcsJHRoaXMtPkxhbmcoJ29mJykpOwoJCSRzbWFydHktPmFzc2lnbignbWF0Y2hlc3RleHQnLCR0aGlzLT5MYW5nKCdtYXRjaGVzZm91bmQnKSk7CgkJJHNtYXJ0eS0+YXNzaWduKCdjYXRlZ29yeScsJHRoaXMtPkxhbmcoJ2NhdGVnb3J5JykpOwoJCSRzbWFydHktPmFzc2lnbignaWQnLCR0aGlzLT5MYW5nKCdpZCcpKTsKCQkkc21hcnR5LT5hc3NpZ24oJ25hbWUnLCR0aGlzLT5MYW5nKCduYW1lJykpOwoJCSRzbWFydHktPmFzc2lnbignZGF0ZScsJHRoaXMtPkxhbmcoJ2RhdGUnKSk7CgkJJHNtYXJ0eS0+YXNzaWduKCdhdXRob3InLCR0aGlzLT5MYW5nKCdhdXRob3InKSk7CgkJJHNtYXJ0eS0+YXNzaWduKCdzaXplJywkdGhpcy0+TGFuZygnc2l6ZWtiJykpOwoJCSRzbWFydHktPmFzc2lnbignZGV0YWlscycsJHRoaXMtPkxhbmcoJ2RldGFpbHMnKSk7CgkJJHNtYXJ0eS0+YXNzaWduKCdzdW1tYXJ5JywkdGhpcy0+TGFuZygnc3VtbWFyeScpKTsKCQkkc21hcnR5LT5hc3NpZ24oJ2Rlc2NyaXB0aW9uJywkdGhpcy0+TGFuZygnZGVzY3JpcHRpb24nKSk7CgkJJHNtYXJ0eS0+YXNzaWduKCd0aHVtYm5haWwnLCR0aGlzLT5MYW5nKCd0aHVtYm5haWwnKSk7CgkJJHNtYXJ0eS0+YXNzaWduKCdpY29uJywkdGhpcy0+TGFuZygnaWNvbicpKTsKCQkkc21hcnR5LT5hc3NpZ24oJ2ltYWdlJywkdGhpcy0+TGFuZygnaW1hZ2UnKSk7CgoJCWlmICghJGRicmVzdWx0KQoJCQl7CgkJCQkvLyBtYXliZSB0aGVyZSBhcmUgbm8gZmlsZXMgaW4gdGhpcyBjYXRlZ29yeQoJCQkJJHNtYXJ0eS0+YXNzaWduICgnbWVzc2FnZScsICR0aGlzLT5MYW5nICgnZXJyb3Jfbm9maWxlcycpKTsKCQkJfQoKCQkvLyBkbyB0aGUgbGlzdAoJCSRyb3djbGFzcyA9ICdyb3cxJzsKCQl3aGlsZSAoJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKSkKCQkJewoJCQkJJG9uZXJvdyA9IG5ldyBTdGRDbGFzcyAoKTsKCQkJCWZvcmVhY2goICRyb3cgYXMgJGtleSA9PiAkdmFsdWUgKQoJCQkJCXsKCQkJCQkJJG9uZXJvdy0+JGtleSA9ICR2YWx1ZTsKCQkJCQl9CgoJCQkJaWYoICRwYXJhbXNbJ2NhdGVnb3J5J10gPT0gJ2FsbCcgKQoJCQkJCXsKCQkJCQkJJG9uZXJvdy0+Y2F0ZWdvcnkgPSAkcm93Wyd1cGxvYWRfY2F0ZWdvcnlfbmFtZSddOwoJCQkJCX0KCQkJCWVsc2UgCgkJCQkJewoJCQkJCQkkb25lcm93LT5jYXRlZ29yeSA9ICRwYXJhbXNbJ2NhdGVnb3J5J107CgkJCQkJfQoJCQkJJG9uZXJvdy0+ZG93bmxvYWRfdXJsID0KCQkJCQkkdGhpcy0+Q3JlYXRlTGluayAoJGlkLCAnZ2V0ZmlsZScsICRyZXR1cm5pZCwgJycsIAoJCQkJCQkJCQkJCQkJCSBhcnJheSAoJ3VwbG9hZF9pZCcgPT4gJHJvd1sndXBsb2FkX2lkJ10pLCAKCQkJCQkJCQkJCQkJCQkgJycsIHRydWUsIHRydWUsICcnLCBmYWxzZSwKCQkJCQkJCQkJCQkJCQkgJHRoaXMtPl9nZXRGaWxlVVJMKCRyb3dbJ3VwbG9hZF9pZCddLCRyb3dbJ3VwbG9hZF9uYW1lJ10pKTsKCQkJCSRvbmVyb3ctPm5hbWVsaW5rID0KCQkJCQkkdGhpcy0+Q3JlYXRlTGluayAoJGlkLCAnZ2V0ZmlsZScsICRyZXR1cm5pZCwgJHJvd1sndXBsb2FkX25hbWUnXSwKCQkJCQkJCQkJCQkJCQkgYXJyYXkgKCd1cGxvYWRfaWQnID0+ICRyb3dbJ3VwbG9hZF9pZCddKSwKCQkJCQkJCQkJCQkJCQkgJycsIGZhbHNlLCB0cnVlLCAnJywgZmFsc2UsCgkJCQkJCQkJCQkJCQkJICR0aGlzLT5fZ2V0RmlsZVVSTCgkcm93Wyd1cGxvYWRfaWQnXSwkcm93Wyd1cGxvYWRfbmFtZSddKSk7CgkJCQkkb25lcm93LT5hdXRob3IgPSAkcm93Wyd1cGxvYWRfYXV0aG9yJ107CgkJCQl7CgkJCQkJJHBhcm1zID0gJHBhcmFtczsKCQkJCQkkcGFybXNbJ21vZGUnXSA9ICdzaW5nbGUnOwoJCQkJCSRwYXJtc1sndXBsb2FkX2lkJ10gPSAkcm93Wyd1cGxvYWRfaWQnXTsKCQkJCQkJCSAKCQkJCQkvLyBub3cgaGFuZGxlIHRoZSBkZXRhaWwgbGluaywgZGV0YWlsIHVybAoJCQkJCSRvbmVyb3ctPmRldGFpbGxpbmsgPQoJCQkJCQkkdGhpcy0+Q3JlYXRlRnJvbnRlbmRMaW5rICgkaWQsICRyZXR1cm5pZCwgJ2RlZmF1bHQnLCAKCQkJCQkJCQkJCQkJCQkJCQkJCSAkdGhpcy0+TGFuZygnZGV0YWlscycpLAoJCQkJCQkJCQkJCQkJCQkJCQkJICRwYXJtcywgJycsIGZhbHNlLCB0cnVlLCAnJywgZmFsc2UKCQkJCQkJCQkJCQkJCQkJCQkJCSApOwoJCQkJCSRvbmVyb3ctPmRldGFpbHVybCA9CgkJCQkJCSR0aGlzLT5DcmVhdGVGcm9udGVuZExpbmsgKCRpZCwgJHJldHVybmlkLCAnZGVmYXVsdCcsIAoJCQkJCQkJCQkJCQkJCQkJCQkJICR0aGlzLT5MYW5nKCdkZXRhaWxzJyksCgkJCQkJCQkJCQkJCQkJCQkJCQkgJHBhcm1zLCAnJywgdHJ1ZSwgZmFsc2UpOwoJCQkJfQoJCQkJJG9uZXJvdy0+c3VtbWFyeSA9ICRyb3dbJ3VwbG9hZF9zdW1tYXJ5J107CgkJCQlpZiggaXNzZXQoICRyb3dbJ3VwbG9hZF9zdW1tYXJ5J10gKSAmJiAkcm93Wyd1cGxvYWRfc3VtbWFyeSddICE9ICIiICkKCQkJCQl7CgkJCQkJCSRvbmVyb3ctPnN1bW1hcnlsaW5rID0KCQkJCQkJCSR0aGlzLT5DcmVhdGVMaW5rICgkaWQsICdnZXRmaWxlJywgJHJldHVybmlkLCAkcm93Wyd1cGxvYWRfc3VtbWFyeSddLAoJCQkJCQkJCQkJCQkJCQkJIGFycmF5ICgndXBsb2FkX2lkJyA9PiAkcm93Wyd1cGxvYWRfaWQnXSksCgkJCQkJCQkJCQkJCQkJCQkgJycsIGZhbHNlLCB0cnVlLCAnJywgZmFsc2UsCgkJCQkJCQkJCQkJCQkJCQkgJHRoaXMtPl9nZXRGaWxlVVJMKCRyb3dbJ3VwbG9hZF9pZCddLCRyb3dbJ3VwbG9hZF9uYW1lJ10pKTs7CgkJCQkJfQoJCQkJCQkgCgkJCQkvLyB0aHVtYm5haWwKCQkJCWlmKCAhZW1wdHkoJHJvd1sndXBsb2FkX3RodW1ibmFpbCddKSApCgkJCQkJewoJCQkJCQkkY2F0cGF0aCA9ICR0aGlzLT5nZXRDYXRlZ29yeVBhdGhGcm9tRmlsZUlEKCRyb3dbJ3VwbG9hZF9pZCddKTsKCQkJCQkJJHRuZmlsZSA9ICR0aGlzLT5fY2F0ZWdvcnlQYXRoKCAkY2F0cGF0aC5ESVJFQ1RPUllfU0VQQVJBVE9SLiRyb3dbJ3VwbG9hZF90aHVtYm5haWwnXSApOwoJCQkJCQlpZiggZmlsZV9leGlzdHMoICR0bmZpbGUgKSApCgkJCQkJCQl7CgkJCQkJCQkJJHRudXJsID0gJHRoaXMtPmNtcy0+Y29uZmlnWyd1cGxvYWRzX3VybCddLiIvIi4kY2F0cGF0aC4iLyIuJHJvd1sndXBsb2FkX3RodW1ibmFpbCddOwoJCQkJCQkJCSRvbmVyb3ctPnRodW1ibmFpbF91cmwgPSAkdG51cmw7CgkJCQkJCQl9CgkJCQkJfQoJCQkJCQkgCgkJCQkvLyBnZXQgdGhlIGZpbGVzIGV4dGVuc2lvbgoJCQkJLy8gc2VlIGlmIHdlJ3JlIGFsbG93ZWQgdG8gZGlzcGxheSBpdCBhcyBhbiBpbWFnZQoJCQkJLy8gaWYgd2UgYXJlIHRoZW4gY3JlYXRlIHRoZSBpbWFnZV91cmwKCQkJCSRmaWxlZXh0ZW5zaW9uID0gc3RydG9sb3dlcihzdHJyY2hyKCRyb3dbJ3VwbG9hZF9uYW1lJ10sJy4nKSk7CgkJCQkkdGh1bWJfZXh0X2FyciA9IGV4cGxvZGUoIiwiLAoJCQkJCQkJCQkJCQkJCQkJICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdhdXRvdGh1bWJuYWlsX2V4dGVuc2lvbnMnKSk7CgkJCQlnbG9iYWwgJGdDbXM7CgkJCQkJCSAKCQkJCWZvcmVhY2goICR0aHVtYl9leHRfYXJyIGFzICR0aHVtYl9leHQgKQoJCQkJCXsKCQkJCQkJaWYoICIuIi4kdGh1bWJfZXh0ID09ICRmaWxlZXh0ZW5zaW9uICkKCQkJCQkJCXsKCQkJCQkJCQkkb25lcm93LT5pbWFnZV91cmwgPQoJCQkJCQkJCQkkdGhpcy0+Q3JlYXRlTGluayAoJGlkLCAnZ2V0aW1hZ2UnLCAkcmV0dXJuaWQsICcnLAoJCQkJCQkJCQkJCQkJCQkJCQkgYXJyYXkgKCdzaG93dGVtcGxhdGUnPT4nZmFsc2UnLAoJCQkJCQkJCQkJCQkJCQkJCQkJCQkJJ3VwbG9hZF9pZCc9PiRyb3dbJ3VwbG9hZF9pZCddKSwKCQkJCQkJCQkJCQkJCQkJCQkJICcnLCB0cnVlICk7CgkJCQkJCQkJYnJlYWs7CgkJCQkJCQl9CgkJCQkJfQoJCQkJCQkgCgkJCQkvLyBmaWxldHlwZQoJCQkJJGZpbGV0eXBlID0gJHRoaXMtPl9HZXRGaWxlVHlwZSggJHJvd1sndXBsb2FkX25hbWUnXSApOwoJCQkJaWYoICRmaWxldHlwZXMgIT0gJycgKQoJCQkJCXsKCQkJCQkJJHJlcyA9IGFycmF5X3NlYXJjaCggJGZpbGV0eXBlWyduYW1lJ10sIGV4cGxvZGUoJywnLCRmaWxldHlwZXMgKSApOwoJCQkJCQlpZiggJHJlcyA9PT0gTlVMTCB8fCAkcmVzID09PSBGQUxTRSApCgkJCQkJCQl7CgkJCQkJCQkJLy8gd2UgaGF2ZSBmb3VuZCBhIGZpbGUgdGhhdCBpc24ndCBhIHR5cGUgd2UgcmVxdWVzdGVkLgoJCQkJCQkJCWNvbnRpbnVlOwoJCQkJCQkJfQoJCQkJCX0KCQkJCQkJIAoJCQkJJGltZ3BhdGggPSAnbW9kdWxlcy8nLmJhc2VuYW1lKGRpcm5hbWUoX19GSUxFX18pKS4nL2ltYWdlcy8nOwoJCQkJaWYoICRmaWxldHlwZSAhPT0gZmFsc2UgKQoJCQkJCXsKCQkJCQkJJG9uZXJvdy0+aWNvbnVybCA9ICRpbWdwYXRoLiRmaWxldHlwZVsnaW1hZ2UnXTsKCQkJCQkJJG9uZXJvdy0+ZmlsZXR5cGUgPSAkZmlsZXR5cGU7CgkJCQkJfQoJCQkJZWxzZQoJCQkJCXsKCQkJCQkJJG9uZXJvdy0+aWNvbnVybCA9ICRpbWdwYXRoLid1bmtub3duLnBuZyc7CgkJCQkJfQoJCQkJCQkgCgkJCQkkb25lcm93LT5kZXNjcmlwdGlvbiA9ICRyb3dbJ3VwbG9hZF9kZXNjcmlwdGlvbiddOwoJCQkJJG9uZXJvdy0+aXAgPSAkcm93Wyd1cGxvYWRfaXAnXTsKCQkJCSRvbmVyb3ctPnNpemUgPSBpbnR2YWwoJHJvd1sndXBsb2FkX3NpemUnXSAvIDEwMjQuMCArIDAuNSk7CgkJCQkkb25lcm93LT5kYXRlID0gJHJvd1sndXBsb2FkX2RhdGUnXTsKCQkJCSRvbmVyb3ctPnJvd2NsYXNzID0gJHJvd2NsYXNzOwoJCQkJCQkgCgkJCQkkcm93YXJyYXlbXSA9ICRvbmVyb3c7CgkJCQkoJHJvd2NsYXNzID09ICJyb3cxIiA/ICRyb3djbGFzcyA9ICJyb3cyIiA6ICRyb3djbGFzcyA9ICJyb3cxIik7CgkJCX0KCQkJCSAKCQkkc21hcnR5LT5hc3NpZ24gKCdpdGVtcycsICRyb3dhcnJheSk7CgkJJHNtYXJ0eS0+YXNzaWduICgnaXRlbWNvdW50JywgY291bnQoJHJvd2FycmF5KSk7Cgl9CgoKLy8gRGlzcGxheSB0aGUgcG9wdWxhdGVkIHRlbXBsYXRlCmlmKCRwYXJhbXNbJ21vZGUnXSAhPSAnc2VsZWN0JykKCXsKCQllY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGVGcm9tRGF0YWJhc2UgKCR0ZW1wbGF0ZSk7Cgl9Cgo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/action.defaultadmin.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojIEF1dGhvcjogUm9iZXJ0IENhbXBiZWxsIDxyb2JAdGVjaGNvbS5keW5kbnMub3JnPgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDoJLy93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgppZiAoISR0aGlzLT5DaGVja1Blcm1pc3Npb24gKCdNYW5hZ2UgVXBsb2FkcycpKQogIHsKICAgIC8vIGRvIG5vdGhpbmcsIHRvZG86IHRoaXMgc2hvdWxkIHByb2JhYmx5IGJlIGNoYW5nZWQKICAgIHJldHVybjsKICB9CgoKLy8gZ2V0IHRoZSBjdXJyZW50IGNhdGVnb3J5IGZvciB0aGUgZmlsdGVyCiRjdXJjYXRlZ29yeSA9CiAgICAoaXNzZXQgKCRwYXJhbXNbJ2N1cmNhdGVnb3J5J10pID8gJHBhcmFtc1snY3VyY2F0ZWdvcnknXSA6ICcnKTsKaWYgKGlzc2V0ICgkcGFyYW1zWydzdWJtaXRjYXRlZ29yeSddKSkKICB7CiAgICAkY3VyY2F0ZWdvcnkgPQogICAgICAoaXNzZXQgKCRwYXJhbXNbJ2lucHV0X2NhdGVnb3J5J10pID8gJHBhcmFtc1snaW5wdXRfY2F0ZWdvcnknXSA6CiAgICAgICAnJyk7CiAgfQoKLy8gYXJlIHdlIHVwbG9hZGluZyBhIGZpbGUgICAgICAKaWYgKGlzc2V0KCAkcGFyYW1zWydzdWJtaXR1cGxvYWQnXSApICkKICB7CiAgICAkdXNlcmlkID0gZ2V0X3VzZXJpZCgpOwogICAgJHVzZXJuYW1lID0gJF9TRVNTSU9OWyJjbXNfYWRtaW5fdXNlcm5hbWUiXTsKICAgICRwYXJhbXNbJ2NhdGVnb3J5X2lkJ10gPSAkY3VyY2F0ZWdvcnk7CiAgICAKICAgICRyZXQgPSAkdGhpcy0+QXR0ZW1wdFVwbG9hZCggJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQgKTsKICAgIGlmKCAkcmV0WzBdID09IGZhbHNlICkKICAgICAgewoJJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlKCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwKCQkJCSAgJHJldFsxXSApOwoJcmV0dXJuOwogICAgICB9CiAgfQoKJGFjdGl2ZV90YWIgPSAtMTsKaWYoIGlzc2V0KCRwYXJhbXNbJ2FjdGl2ZV90YWInXSkpCiAgewogICAgJGFjdGl2ZV90YWIgPSAkcGFyYW1zWydhY3RpdmVfdGFiJ107CiAgfQoKaWYoIGlzc2V0KCRwYXJhbXNbJ2Vycm9ycyddKSApCiAgewogICAgZWNobyAkdGhpcy0+U2hvd0Vycm9ycygkcGFyYW1zWydlcnJvcnMnXSk7CiAgfQoKaWYoIGluaV9nZXRfYm9vbGVhbignc2FmZV9tb2RlJykgKQogIHsKICAgIGVjaG8gJzxkaXYgY2xhc3M9InBhZ2VlcnJvcmNvbnRhaW5lciI+PGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij48cCBjbGFzcz0icGFnZWVycm9yIj4nLiR0aGlzLT5MYW5nKCd3YXJuaW5nX3NhZmVfbW9kZScpLic8L3A+PC9kaXY+PC9kaXY+JzsKICB9CiAgICAKLy9UaGUgdGFicwplY2hvICR0aGlzLT5TdGFydFRhYkhlYWRlcnMgKCk7CmlmICgkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uICgnTWFuYWdlIFVwbG9hZHMnKSkKICB7CiAgICBlY2hvICR0aGlzLT5TZXRUYWJIZWFkZXIgKCdmaWxlcycsICR0aGlzLT5MYW5nICgnZmlsZXMnKSwKCQkJICAgICAgKCRhY3RpdmVfdGFiID09ICdmaWxlcycpKTsKICAgIGVjaG8gJHRoaXMtPlNldFRhYkhlYWRlciAoJ2NhdGVnb3JpZXMnLCAkdGhpcy0+TGFuZyAoJ2NhdGVnb3JpZXMnKSwKCQkJICAgICAgKCRhY3RpdmVfdGFiID09ICdjYXRlZ29yaWVzJykpOwogIH0KaWYgKCR0aGlzLT5DaGVja1Blcm1pc3Npb24gKCdNb2RpZnkgVGVtcGxhdGVzJykgKQogIHsKICAgIGVjaG8gJHRoaXMtPlNldFRhYkhlYWRlciAoJ3VwbG9hZGZvcm1fdGVtcGxhdGUnLAoJCQkgICAgICAkdGhpcy0+TGFuZyAoJ3VwbG9hZGZvcm1fdGVtcGxhdGUnKSwKCQkJICAgICAgKCRhY3RpdmVfdGFiID09ICd1cGxvYWRmb3JtX3RlbXBsYXRlJykpOwogICAgZWNobyAkdGhpcy0+U2V0VGFiSGVhZGVyICgnc3VtbWFyeV90ZW1wbGF0ZScsCgkJCSAgICAgICR0aGlzLT5MYW5nICgnc3VtbWFyeV90ZW1wbGF0ZScpLAoJCQkgICAgICAoJGFjdGl2ZV90YWIgPT0gJ3N1bW1hcnlfdGVtcGxhdGUnKSk7CiAgICBlY2hvICR0aGlzLT5TZXRUYWJIZWFkZXIgKCdkZXRhaWxfdGVtcGxhdGUnLAoJCQkgICAgICAkdGhpcy0+TGFuZyAoJ2RldGFpbF90ZW1wbGF0ZScpLAoJCQkgICAgICAoJGFjdGl2ZV90YWIgPT0gJ2RldGFpbF90ZW1wbGF0ZScpKTsKICAgIGVjaG8gJHRoaXMtPlNldFRhYkhlYWRlciAoJ2VtYWlsX3RlbXBsYXRlJywKCQkJICAgICAgJHRoaXMtPkxhbmcgKCdlbWFpbF90ZW1wbGF0ZScpLAoJCQkgICAgICAoJGFjdGl2ZV90YWIgPT0gJ2VtYWlsX3RlbXBsYXRlJykpOwogIH0KaWYgKCR0aGlzLT5DaGVja1Blcm1pc3Npb24gKCdNYW5hZ2UgVXBsb2FkcycpKQogIHsKICAgIGVjaG8gJHRoaXMtPlNldFRhYkhlYWRlciggJ2ZpbGVfdHlwZXMnLAoJCQkgICAgICAkdGhpcy0+TGFuZyggJ2ZpbGVfdHlwZXMnKSwKCQkJICAgICAgKCRhY3RpdmVfdGFiID09ICdmaWxlX3R5cGVzJykpOwogIH0KaWYgKCR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBTaXRlIFByZWZlcmVuY2VzJykgKQogIHsKICAgIGVjaG8gJHRoaXMtPlNldFRhYkhlYWRlciAoJ2FkbWluX3ByZWZzJywKCQkJICAgICAgJHRoaXMtPkxhbmcgKCdwcmVmZXJlbmNlcycpLAoJCQkgICAgICAoJGFjdGl2ZV90YWIgPT0gJ2FkbWluX3ByZWZzJykpOwogIH0KZWNobyAkdGhpcy0+RW5kVGFiSGVhZGVycyAoKTsKICAgIAovL1RoZSBjb250ZW50IG9mIHRoZSB0YWJzCmVjaG8gJHRoaXMtPlN0YXJ0VGFiQ29udGVudCAoKTsKCmlmICgkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uICgnTWFuYWdlIFVwbG9hZHMnKSkKICB7CiAgICAvLyB0aGUgZmlsZXMgdGFiCiAgICBlY2hvICR0aGlzLT5TdGFydFRhYiAoImZpbGVzIik7CiAgICBpbmNsdWRlKGRpcm5hbWUoX19GSUxFX18pLicvZnVuY3Rpb24uYWRtaW5fZmlsZXN0YWIucGhwJyk7CiAgICBlY2hvICR0aGlzLT5FbmRUYWIgKCk7CgogICAgZWNobyAkdGhpcy0+U3RhcnRUYWIgKCJjYXRlZ29yaWVzIik7CiAgICBpbmNsdWRlKGRpcm5hbWUoX19GSUxFX18pLicvZnVuY3Rpb24uYWRtaW5fY2F0ZWdvcmllc3RhYi5waHAnKTsKICAgIGVjaG8gJHRoaXMtPkVuZFRhYiAoKTsKICB9CgppZiAoJHRoaXMtPkNoZWNrUGVybWlzc2lvbiAoJ01vZGlmeSBUZW1wbGF0ZXMnKSkKICB7CiAgICAvLyB0aGUgdXBsb2FkIGZvcm0gdGVtcGxhdGUgdGFiCiAgICBlY2hvICR0aGlzLT5TdGFydFRhYiAoInVwbG9hZGZvcm1fdGVtcGxhdGUiKTsKICAgIHsKICAgICAgJHRoaXMtPl9BZG1pbkVkaXREZWZhdWx0VGVtcGxhdGVGb3JtKCRpZCwkcmV0dXJuaWQsJ3VwbG9hZGZvcm1fc3lzZGVmYXVsdCcsCgkJCQkJICAgJ3VwbG9hZGZvcm1fdGVtcGxhdGUnLAoJCQkJCSAgICR0aGlzLT5MYW5nKCd0aXRsZV91cGxvYWRmb3JtX3N5c2RlZmF1bHQnKSwKCQkJCQkgICAnb3JpZ191cGxvYWRmb3JtX3RlbXBsYXRlLnRwbCcsCgkJCQkJICAgJHRoaXMtPkxhbmcoJ2luZm9fc3lzZGVmYXVsdCcpKTsKCiAgICAgICR0aGlzLT5fQWRtaW5DcmVhdGVUZW1wbGF0ZUxpc3QoICRpZCwgJHJldHVybmlkLCAndXBsb2FkZm9ybV8nLAoJCQkJICAgICAgICd1cGxvYWRmb3JtX3N5c2RlZmF1bHQnLCAndXBsb2FkZm9ybV90ZW1wbGF0ZScsCgkJCQkgICAgICAgJ2RlZmF1bHRfdXBsb2FkZm9ybScsCgkJCQkgICAgICAgJHRoaXMtPkxhbmcoJ3RpdGxlX3VwbG9hZGZvcm1fdGVtcGxhdGUnKSk7CiAgICB9CiAgICBlY2hvICR0aGlzLT5FbmRUYWIoKTsKCQogICAgLy8gdGhlIHN1bW1hcnkgdGVtcGxhdGUgdGFiCiAgICBlY2hvICR0aGlzLT5TdGFydFRhYiAoInN1bW1hcnlfdGVtcGxhdGUiKTsKICAgIHsKICAgICAgJHRoaXMtPl9BZG1pbkVkaXREZWZhdWx0VGVtcGxhdGVGb3JtKCRpZCwkcmV0dXJuaWQsJ3N1bW1hcnlycHRfc3lzZGVmYXVsdCcsCgkJCQkJICAgJ3N1bW1hcnlycHRfdGVtcGxhdGUnLAoJCQkJCSAgICR0aGlzLT5MYW5nKCd0aXRsZV9zdW1tYXJ5cnB0X3N5c2RlZmF1bHQnKSwKCQkJCQkgICAnb3JpZ19zdW1tYXJ5cnB0X3RlbXBsYXRlLnRwbCcsCgkJCQkJICAgJHRoaXMtPkxhbmcoJ2luZm9fc3lzZGVmYXVsdCcpKTsKCiAgICAgICR0aGlzLT5fQWRtaW5DcmVhdGVUZW1wbGF0ZUxpc3QoICRpZCwgJHJldHVybmlkLCAnc3VtbWFyeXJwdF8nLAoJCQkJICAgICAgICdzdW1tYXJ5cnB0X3N5c2RlZmF1bHQnLCAnc3VtbWFyeV90ZW1wbGF0ZScsCgkJCQkgICAgICAgJ2RlZmF1bHRfc3VtbWFyeXJwdCcsCgkJCQkgICAgICAgJHRoaXMtPkxhbmcoJ3RpdGxlX3N1bW1hcnlycHRfdGVtcGxhdGUnKSk7CiAgICB9CiAgICBlY2hvICR0aGlzLT5FbmRUYWIgKCk7CgkKICAgIC8vIHRoZSBkZXRhaWwgdGVtcGxhdGUgdGFiCiAgICBlY2hvICR0aGlzLT5TdGFydFRhYiAoImRldGFpbF90ZW1wbGF0ZSIpOwogICAgewogICAgICAkdGhpcy0+X0FkbWluRWRpdERlZmF1bHRUZW1wbGF0ZUZvcm0oJGlkLCRyZXR1cm5pZCwnZGV0YWlscnB0X3N5c2RlZmF1bHQnLAoJCQkJCSAgICdkZXRhaWxycHRfdGVtcGxhdGUnLAoJCQkJCSAgICR0aGlzLT5MYW5nKCd0aXRsZV9kZXRhaWxycHRfc3lzZGVmYXVsdCcpLAoJCQkJCSAgICdvcmlnX2RldGFpbHJwdF90ZW1wbGF0ZS50cGwnLAoJCQkJCSAgICR0aGlzLT5MYW5nKCdpbmZvX3N5c2RlZmF1bHQnKSk7CgogICAgICAkdGhpcy0+X0FkbWluQ3JlYXRlVGVtcGxhdGVMaXN0KCAkaWQsICRyZXR1cm5pZCwgJ2RldGFpbHJwdF8nLAoJCQkJICAgICAgICdkZXRhaWxycHRfc3lzZGVmYXVsdCcsICdkZXRhaWxfdGVtcGxhdGUnLAoJCQkJICAgICAgICdkZWZhdWx0X2RldGFpbHJwdCcsCgkJCQkgICAgICAgJHRoaXMtPkxhbmcoJ3RpdGxlX2RldGFpbHJwdF90ZW1wbGF0ZScpKTsKICAgIH0KICAgIGVjaG8gJHRoaXMtPkVuZFRhYiAoKTsKCQogICAgLy8gdGhlIGVtYWlsIHRlbXBsYXRlIHRhYgogICAgZWNobyAkdGhpcy0+U3RhcnRUYWIoJ2VtYWlsX3RlbXBsYXRlJyk7CiAgICB7CiAgICAgIGVjaG8gJHRoaXMtPkNyZWF0ZUZvcm1TdGFydCAoJGlkLCAndXBkYXRlZW1haWx0ZW1wbGF0ZScpOwogICAgICBlY2hvICc8YnIvPjxwPicuJHRoaXMtPkNyZWF0ZVRleHRBcmVhIChmYWxzZSwgJGlkLAoJCQkJCSAgICAgJHRoaXMtPgoJCQkJCSAgICAgR2V0VGVtcGxhdGUgKCd1cGxvYWRfZW1haWx0ZW1wbGF0ZScpLAoJCQkJCSAgICAgJ3RlbXBsYXRlY29udGVudCcsICcnKS4nPC9wPic7CiAgICAgIGVjaG8gJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0ICgkaWQsICdzdWJtaXRidXR0b24nLAoJCQkJICAgICAkdGhpcy0+TGFuZyAoJ3N1Ym1pdCcpKTsKICAgICAgZWNobyAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQgKCRpZCwgJ2RlZmF1bHRidXR0b24nLCAkdGhpcy0+TGFuZyAoJ2RlZmF1bHQnKSwgJycsICcnLCAKCQkJCSAgICAgJHRoaXMtPkxhbmcoJ3Jlc3RvcmVkZWZhdWx0c2NvbmZpcm0nKSk7CiAgICAgIGVjaG8gJHRoaXMtPkNyZWF0ZUZvcm1FbmQgKCk7CiAgICB9CiAgICBlY2hvICR0aGlzLT5FbmRUYWIoKTsKICB9CgppZiAoJHRoaXMtPkNoZWNrUGVybWlzc2lvbiAoJ01hbmFnZSBVcGxvYWRzJykpCiAgewogICAgZWNobyAkdGhpcy0+U3RhcnRUYWIoJ2ZpbGVfdHlwZXMnKTsKICAgIGluY2x1ZGUoZGlybmFtZShfX0ZJTEVfXykuJy9mdW5jdGlvbi5hZG1pbl9maWxldHlwZXN0YWIucGhwJyk7CiAgICBlY2hvICR0aGlzLT5FbmRUYWIoKTsKICB9CgppZiggJHRoaXMtPkNoZWNrUGVybWlzc2lvbignTW9kaWZ5IFNpdGUgUHJlZmVyZW5jZXMnKSApCiAgewogICAgZWNobyAkdGhpcy0+U3RhcnRUYWIoICdhZG1pbl9wcmVmcycgKTsKICAgIGluY2x1ZGUoZGlybmFtZShfX0ZJTEVfXykuJy9mdW5jdGlvbi5hZG1pbl9wcmVmc3RhYi5waHAnKTsKICAgIGVjaG8gJHRoaXMtPkVuZFRhYiAoKTsKICB9CgovLyBkb25lIHRhYnMKZWNobyAkdGhpcy0+RW5kVGFiQ29udGVudCAoKTsKcmV0dXJuOwoKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.deletetemplate.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKCiAgaWYoICEgJHRoaXMtPkNoZWNrUGVybWlzc2lvbignTW9kaWZ5IFRlbXBsYXRlcycpICkKICAgIHsKICAgICAgLy8gdG9kbywgcGVybWlzc2lvbnMgbWVzc2FnZSBoZXJlCiAgICAgIHJldHVybjsKICAgIH0KCiAgaWYoICEoaXNzZXQoJHBhcmFtc1sndGVtcGxhdGUnXSkpICkKICAgIHsKICAgICAgJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlKCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwgCgkJCQkkdGhpcy0+TGFuZygnZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJywndGVtcGxhdGUnKSk7CiAgICAgIHJldHVybjsKICAgIH0KCiAgJHRoaXMtPkRlbGV0ZVRlbXBsYXRlKCRwYXJhbXNbJ3RlbXBsYXRlJ10pOwogICR0aGlzLT5teVJlZGlyZWN0VG9UYWIoJGlkLCAndXBsb2FkZm9ybV90ZW1wbGF0ZScpOwoKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.deletetype.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojIEF1dGhvcjogUm9iZXJ0IENhbXBiZWxsIDxyb2JAdGVjaGNvbS5keW5kbnMub3JnPgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDoJLy93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgppZiggISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01hbmFnZSBVcGxvYWRzJykgKQogIHsKICAgIHJldHVybjsKICB9CgppZiggIWlzc2V0KCAkcGFyYW1zWyd0eXBlaWQnXSApICkKICB7CiAgICAkdGhpcy0+U2hvd0Vycm9ycygkdGhpcy0+TGFuZygnZXJyb3JfbWlzc2luZ3BhcmFtcycpKTsKICB9CgokdHlwZWlkID0gdHJpbSgkcGFyYW1zWyd0eXBlaWQnXSk7CiRkYiA9JiAkdGhpcy0+R2V0RGIoKTsKCiRkYi0+RXhlY3V0ZSggIkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc19maWxldHlwZXMgCiAgICAgICAgICAgICAgICBXSEVSRSBpZCA9ID8iLCBhcnJheSggJHBhcmFtc1sndHlwZWlkJ10gKSApOwokdGhpcy0+UmVkaXJlY3QoJGlkLCdkZWZhdWx0YWRtaW4nLCRyZXR1cm5pZCwkcGFyYW1zKTsKCi8vIEVPRgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.detail.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLXNldC1zdHlsZTpsaW51eDsgdGFiLXdpZHRoOjI7IGluZGVudC10YWJzLW1vZGU6dDsgYy1iYXNpYy1vZmZzZXQ6IDI7IC0qLQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogVXBsb2FkcyAtPSBhbGxvdyB1c2VycyB0byB1cGxvYWQgc3R1ZmYsIGEgcHNldWRvIGZpbGUgbWFuYWdlciIgbW9kdWxlCiMgQXV0aG9yOiBSb2JlcnQgQ2FtcGJlbGwgPHJvYkB0ZWNoY29tLmR5bmRucy5vcmc+CiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOgkvL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KaWYoICFpc3NldCgkZ0NtcykgKSBleGl0OwokY29uZmlnID0mICRnQ21zLT5HZXRDb25maWcoKTsKCi8vIGNoZWNrIGlucHV0IGRhdGEKaWYoICFpc3NldCgkcGFyYW1zWyd1cGxvYWRfaWQnXSkgKQoJewoJCSR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSAoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsCgkJCQkJCQkJCQkJCQkJCSR0aGlzLT5MYW5nICgnZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJywndXBsb2FkX2lkJykpOwoJCXJldHVybjsKCX0KCi8vIGdldCB0aGUgdGVtcGxhdGUKJHRlbXBsYXRlID0gJ2RldGFpbHJwdF8nLiR0aGlzLT5HZXRQcmVmZXJlbmNlKCdkZWZhdWx0X2RldGFpbHJwdCcpOwppZiggaXNzZXQoICRwYXJhbXNbJ2RldGFpbHRlbXBsYXRlJ10gKSApCgl7CgkJJHRlbXBsYXRlID0gJ2RldGFpbHJwdF8nLiRwYXJhbXNbJ2RldGFpbHRlbXBsYXRlJ107Cgl9CmVsc2UgaWYoIGlzc2V0KCRwYXJhbXNbJ3RlbXBsYXRlJ10pICkKCXsKCQkkdGVtcGxhdGUgPSAnZGV0YWlscnB0XycuJHBhcmFtc1sndGVtcGxhdGUnXTsKCX0KCi8vCi8vIEdldCB0aGUgZGF0YQovLwokaW1ncGF0aCA9ICdtb2R1bGVzLycuYmFzZW5hbWUoZGlybmFtZShfX0ZJTEVfXykpLicvaW1hZ2VzLyc7CiRxdWVyeSA9ICdTRUxFQ1QgKiBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2FkcwogICAgICAgICAgIFdIRVJFIHVwbG9hZF9pZCA9ID8nOwokZGF0YSA9ICRkYi0+R2V0Um93KCRxdWVyeSxhcnJheSgkcGFyYW1zWyd1cGxvYWRfaWQnXSkpOwokY2F0ZWdvcnkgPSAnJzsKaWYoICEkZGF0YSApCgl7CgkJJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlICgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwKCQkJCQkJCQkJCQkJCQkJJHRoaXMtPkxhbmcgKCdlcnJvcl9ub3N1Y2hyb3cnKSk7CgkJcmV0dXJuOwoJfQokcXVlcnkgPSAnU0VMRUNUICogRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHNfY2F0ZWdvcmllcwogICAgICAgICAgV0hFUkUgdXBsb2FkX2NhdGVnb3J5X2lkID0gPyc7CiRjYXRlZ29yeSA9ICRkYi0+R2V0Um93KCRxdWVyeSxhcnJheSgkZGF0YVsndXBsb2FkX2NhdGVnb3J5X2lkJ10pKTsKJHJvdyA9IG5ldyBTdGRDbGFzcygpOwpmb3JlYWNoKCAkZGF0YSBhcyAka2V5ID0+ICR2YWx1ZSApCnsKCWlmKCBzdGFydHN3aXRoKCRrZXksJ3VwbG9hZF8nKSApCgkJewoJCQkka2V5ID0gc3Vic3RyKCRrZXksNyk7CgkJfQoJaWYoICFlbXB0eSgkdmFsdWUpICkKCQl7CgkJCSRyb3ctPiRrZXkgPSAkdmFsdWU7CgkJfQp9CiRyb3ctPmNhdGVnb3J5ID0gJGNhdGVnb3J5Wyd1cGxvYWRfY2F0ZWdvcnlfbmFtZSddOwokcm93LT5kb3dubG9hZF91cmwgPSAKCSR0aGlzLT5DcmVhdGVGcm9udGVuZExpbmsoJGlkLCRyZXR1cm5pZCwnZ2V0ZmlsZScsJycsCgkJCQkJCQkJCQkJCQkJYXJyYXkoJ3VwbG9hZF9pZCc9PiRwYXJhbXNbJ3VwbG9hZF9pZCddKSwKCQkJCQkJCQkJCQkJCQknJywgdHJ1ZSwgdHJ1ZSwgJycsIGZhbHNlLAoJCQkJCQkJCQkJCQkJCSR0aGlzLT5fZ2V0RmlsZVVSTCgkZGF0YVsndXBsb2FkX2lkJ10sJGRhdGFbJ3VwbG9hZF9uYW1lJ10pKTsKJGZpbGV0eXBlID0gJHRoaXMtPl9HZXRGaWxldHlwZSggJGRhdGFbJ3VwbG9hZF9uYW1lJ10gKTsKaWYoICRyb3ctPmZpbGV0eXBlICE9PSBmYWxzZSApCgl7CgkJJHJvdy0+aWNvbnVybCA9ICRpbWdwYXRoLiRmaWxldHlwZVsnaW1hZ2UnXTsKCX0KZWxzZQoJewoJCSRvbmVyb3ctPmljb251cmwgPSAkaW1ncGF0aC4ndW5rbm93bi5wbmcnOwoJfQppZiggIWVtcHR5KCRkYXRhWyd1cGxvYWRfdGh1bWJuYWlsJ10pICkKCXsKCQkkdG5maWxlID0gJHRoaXMtPl9jYXRlZ29yeVBhdGgoICRjYXRlZ29yeVsndXBsb2FkX2NhdGVnb3J5X3BhdGgnXS4nLycuJGRhdGFbJ3VwbG9hZF90aHVtYm5haWwnXSk7CgkJaWYoIEBmaWxlX2V4aXN0cygkdG5maWxlKSApCgkJCXsKCQkJCSR0bnVybCA9ICRjb25maWdbJ3VwbG9hZHNfdXJsJ10uJy8nLiRjYXRlZ29yeVsndXBsb2FkX2NhdGVnb3J5X3BhdGgnXS4nLycuJGRhdGFbJ3VwbG9hZF90aHVtYm5haWwnXTsKCQkJCSRyb3ctPnRodW1ibmFpbF91cmwgPSAkdG51cmw7CgkJCX0KCX0KCgpzd2l0Y2goJHBhcmFtc1snbW9kZSddKQoJewoJY2FzZSAnbGluayc6CgkJZWNobyAkdGhpcy0+Q3JlYXRlRnJvbnRlbmRMaW5rKCRpZCwkcmV0dXJuaWQsJ2dldGZpbGUnLAoJCQkJCQkJCQkJCQkJCQkJCSAkcm93LT5uYW1lLAoJCQkJCQkJCQkJCQkJCQkJCSBhcnJheSgndXBsb2FkX2lkJz0+JHBhcmFtc1sndXBsb2FkX2lkJ10pLAoJCQkJCQkJCQkJCQkJCQkJCSAnJywgZmFsc2UsIHRydWUsICcnLCBmYWxzZSwKCQkJCQkJCQkJCQkJCQkJCQkgJHRoaXMtPl9nZXRGaWxlVVJMKCRyb3ctPmlkLCRyb3ctPm5hbWUpKTsKCQlyZXR1cm47CgoJY2FzZSAndXJsJzoKCQllY2hvICRyb3ctPmRvd25sb2FkX3VybDsKCQlyZXR1cm47CgoJZGVmYXVsdDoKCQkkaXRlbXMgPSBhcnJheSgpOwoJCSRpdGVtc1tdID0gJHJvdzsKCQkkc21hcnR5LT5hc3NpZ24oJ2l0ZW1zJywkaXRlbXMpOyAvLyBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eS4KCQkkc21hcnR5LT5hc3NpZ24oJ2VudHJ5Jywkcm93KTsKCX0KCi8vCi8vIEdpdmUgZXZlcnl0aGluZyB0byBzbWFydHkKLy8KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdjYXRlZ29yeScsJHRoaXMtPkxhbmcoJ2NhdGVnb3J5JykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2lkJywkdGhpcy0+TGFuZygnaWQnKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignbmFtZScsJHRoaXMtPkxhbmcoJ25hbWUnKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignZGF0ZScsJHRoaXMtPkxhbmcoJ2RhdGUnKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignYXV0aG9yJywkdGhpcy0+TGFuZygnYXV0aG9yJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3NpemUnLCR0aGlzLT5MYW5nKCdzaXpla2InKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignZGV0YWlscycsJHRoaXMtPkxhbmcoJ2RldGFpbHMnKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignc3VtbWFyeScsJHRoaXMtPkxhbmcoJ3N1bW1hcnknKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignZGVzY3JpcHRpb24nLCR0aGlzLT5MYW5nKCdkZXNjcmlwdGlvbicpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0aHVtYm5haWwnLCR0aGlzLT5MYW5nKCd0aHVtYm5haWwnKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignaWNvbicsJHRoaXMtPkxhbmcoJ2ljb24nKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignaW1hZ2UnLCR0aGlzLT5MYW5nKCdpbWFnZScpKTsKCi8vCi8vIFByb2Nlc3MgVGhlIHRlbXBsYXRlCi8vCmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhYmFzZSgkdGVtcGxhdGUpOwojCiMgRU9GCiMKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.do_addcategory.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojIEF1dGhvcjogUm9iZXJ0IENhbXBiZWxsIDxyb2JAdGVjaGNvbS5keW5kbnMub3JnPgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDoJLy93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCmlmICghJHRoaXMtPkNoZWNrUGVybWlzc2lvbiAoJ01hbmFnZSBVcGxvYWRzJykpCiAgewogICAgLy8gZG8gbm90aGluZywgdG9kbzogdGhpcyBzaG91bGQgcHJvYmFibHkgYmUgY2hhbmdlZAogICAgcmV0dXJuOwogIH0KCi8vIGFyZSB3ZSBjYW5jZWxsaW5nCmlmIChpc3NldCAoJHBhcmFtc1snY2FuY2VsJ10pKQogIHsKICAgICR0aGlzLT5teVJlZGlyZWN0VG9UYWIoJGlkLCdjYXRlZ29yaWVzJyk7CiAgfQoKJGVycm9yID0gZmFsc2U7CgovLyBtYWtlIHN1cmUgd2UgaGF2ZSBzb21ldGhpbmcgdG8gd29yayB3aXRoCmlmICghaXNzZXQgKCRwYXJhbXNbJ2lucHV0X2NhdGVnb3J5bmFtZSddKQogICAgfHwgJHBhcmFtc1snaW5wdXRfY2F0ZWdvcnluYW1lJ10gPT0gIiIpCiAgewogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgnZXJyb3InLCAiMSIpOwogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgnbWVzc2FnZScsICR0aGlzLT5MYW5nICgiZXJyb3JfZW1wdHljYXRlZ29yeSIpKTsKICAgICRlcnJvciA9IHRydWU7CiAgfQogZWxzZSBpZiAoIWlzc2V0ICgkcGFyYW1zWydpbnB1dF9jYXRlZ29yeXBhdGgnXSkgfHwgdHJpbSgkcGFyYW1zWydpbnB1dF9jYXRlZ29yeXBhdGgnXSkgPT0gIiIpCiAgIHsKICAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24gKCdlcnJvcicsICIxIik7CiAgICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgnbWVzc2FnZScsICR0aGlzLT5MYW5nICgiZXJyb3JfZW1wdHlwYXRoIikpOwogICAgICRlcnJvciA9IHRydWU7CiAgIH0KIGVsc2UKICAgewogICAgIC8vIGNoZWNrIGlmIHRoZSBjYXRlZ29yeSBkb2Vzbid0IGFscmVhZHkgZXhpc3QKICAgICAkZGIgPSYgJHRoaXMtPkdldERiKCk7CiAgICAgJHF1ZXJ5ID0KICAgICAgICJTRUxFQ1QgKiBmcm9tICIuY21zX2RiX3ByZWZpeCAoKS4KICAgICAgICJtb2R1bGVfdXBsb2Fkc19jYXRlZ29yaWVzIFdIRVJFIHVwbG9hZF9jYXRlZ29yeV9uYW1lID0gPyI7CiAgICAgJGRicmVzdWx0ID0KICAgICAgICRkYi0+RXhlY3V0ZSAoJHF1ZXJ5LCBhcnJheSAoJHBhcmFtc1snaW5wdXRfY2F0ZWdvcnluYW1lJ10pKTsKICAgICAKICAgICAvLyB5ZXAgaXQgZG9lcwogICAgIGlmICgkZGJyZXN1bHQtPkZldGNoUm93ICgpKQogICAgICAgewoJICR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ2Vycm9yJywgIjEiKTsKCSAkdGhpcy0+c21hcnR5LT5hc3NpZ24gKCdtZXNzYWdlJywKCQkJCSR0aGlzLT5MYW5nICgiZXJyb3JfY2F0ZWdvcnlleGlzdHMiKSk7CgkgJGVycm9yID0gdHJ1ZTsKICAgICAgIH0KICAgICBlbHNlCiAgICAgICB7CgkgLy8gY2hlY2sgaWYgdGhlIGRpcmVjdG9yeSBpcyBhbHJlYWR5IGluIHVzZQoJICRxdWVyeSA9CgkgICAiU0VMRUNUICogZnJvbSAiLmNtc19kYl9wcmVmaXggKCkuCgkgICAibW9kdWxlX3VwbG9hZHNfY2F0ZWdvcmllcyBXSEVSRSB1cGxvYWRfY2F0ZWdvcnlfcGF0aCA9ID8iOwoJICRkYnJlc3VsdCA9CgkgICAkZGItPkV4ZWN1dGUgKCRxdWVyeSwgYXJyYXkgKCRwYXJhbXNbJ2lucHV0X2NhdGVnb3J5cGF0aCddKSk7CgkgCgkgaWYgKCRkYnJlc3VsdC0+RmV0Y2hSb3cgKCkpCgkgICB7CgkgICAgICR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ2Vycm9yJywgIjEiKTsKCSAgICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgnbWVzc2FnZScsICR0aGlzLT5MYW5nICgiZXJyb3JfcGF0aGludXNlIikpOwoJICAgICAkZXJyb3IgPSB0cnVlOwoJICAgfQoJIGVsc2UKCSAgIHsKCSAgICAgLy8gQ3JlYXRlIHRoZSBkaXJlY3RvcnkgaWYgaXQgZG9lc24ndCBleGlzdAoJICAgICAkZG9fc2NhbiA9IGZhbHNlOwoJICAgICAkZGlyID0gJHRoaXMtPl9jYXRlZ29yeVBhdGgoJHBhcmFtc1snaW5wdXRfY2F0ZWdvcnlwYXRoJ10pOwoJICAgICAKCSAgICAgaWYoIGZpbGVfZXhpc3RzKCAkZGlyICkgKSAKCSAgICAgICB7CgkJICRkb19zY2FuID0gdHJ1ZTsKCSAgICAgICB9CgkgICAgIGVsc2UKCSAgICAgICB7CgkJIC8vIGNyZWF0ZSB0aGUgZGlyZWN0b3J5CgkJICRyZXN1bHQgPSAkdGhpcy0+X21rZGlyciAoJGRpcik7CgkJIGlmICgkcmVzdWx0ID09IGZhbHNlKSAKCQkgICB7CgkJICAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24gKCdlcnJvcicsICIxIik7CgkJICAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24gKCdtZXNzYWdlJywKCQkJCQkgICAgJHRoaXMtPkxhbmcgKCJlcnJvcl9jYXRlZ29yeWV4aXN0cyIpKTsKCQkgICAgICRlcnJvciA9IHRydWU7CgkJICAgfQoJCSAvLyBjcmVhdGUgYW4gaW5kZXguaHRtbCBmaWxlIChlbXB0eSkKCQkgaWYoICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdjcmVhdGVfZHVtbXlfaW5kZXhfaHRtbCcpICkKCQkgICB7CgkJICAgICB0b3VjaCggJGRpci5ESVJFQ1RPUllfU0VQQVJBVE9SLiJpbmRleC5odG1sIiApOwoJCSAgIH0KCSAgICAgICB9CgkgICAgIAoJICAgICBpZiggISRlcnJvciApCgkgICAgICAgewoJCSAkZ3JvdXBzID0gbnVsbDsKCQkgaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0X2dyb3VwbGlzdCddKSApCgkJICAgewoJCSAgICAgJGdyb3VwcyA9IGltcGxvZGUoJywnLCRwYXJhbXNbJ2lucHV0X2dyb3VwbGlzdCddKTsKCQkgICB9CgkJIC8vIEFkZCB0aGUgcmVjb3JkIHRvIHRoZSBjYXRlZ29yeSB0YWJsZQoJCSAkY2F0aWQgPQoJCSAgICRkYi0+R2VuSUQgKGNtc19kYl9wcmVmaXggKCkuIm1vZHVsZV91cGxvYWRzX2NhdGVnb3JpZXNfc2VxIik7CgkJICRwYXJhbXNbJ2NhdGVnb3J5X2lkJ10gPSAkY2F0aWQ7CgkJICRxdWVyeSA9CgkJICAgIklOU0VSVCBJTlRPICIuY21zX2RiX3ByZWZpeCAoKS4KCQkgICAibW9kdWxlX3VwbG9hZHNfY2F0ZWdvcmllcyBWQUxVRVMgKD8sPyw/LD8sPyw/KSI7CgkJICRkYnJlc3VsdCA9CgkJICAgJGRiLT5FeGVjdXRlICgkcXVlcnksCgkJCQkgYXJyYXkgKCRjYXRpZCwKCQkJCQkkcGFyYW1zWyJpbnB1dF9jYXRlZ29yeW5hbWUiXSwKCQkJCQkkcGFyYW1zWyJpbnB1dF9jYXRlZ29yeWRlc2MiXSwKCQkJCQkkcGFyYW1zWyJpbnB1dF9jYXRlZ29yeXBhdGgiXSwKCQkJCQkkcGFyYW1zWyJpbnB1dF9jYXRlZ29yeWxpc3RhYmxlIl0sCgkJCQkJJGdyb3VwcykpOwoJCSBpZiAoISRkYnJlc3VsdCkKCQkgICB7CgkJICAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24gKCdlcnJvcicsICIxIik7CgkJICAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24gKCdtZXNzYWdlJywKCQkJCQkgICAgJHRoaXMtPkxhbmcgKCJtZXNzYWdlX2NhdGVnb3J5YWRkZWQiKSk7CgkJICAgICAkZXJyb3IgPSB0cnVlOwoJCSAgIH0KCQkgZWxzZQoJCSAgIHsKCQkgICAgIGlmKCAkZG9fc2NhbiApCgkJICAgICAgIHsKCQkJIC8vIGNhdGVnb3J5IGlzIGFkZGVkLCBhbmQgdGhlIGRpcmVjdG9yeSBhbHJlYWR5IGV4aXN0ZWQuLi4gc28gbm93CgkJCSAvLyB3ZSdyZSBnb25uYSBzY2FuIHRoZSBkaXJlY3RvcnkgYW5kIGFkZCBmaWxlcyB0byB0aGUgZGF0YWJhc2UKCQkJICR0aGlzLT5TY2FuRGlyZWN0b3J5KCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwgJGRpciApOwoJCSAgICAgICB9CgkJICAgICAKCQkgICAgIC8vIHNlbmQgYW4gZXZlbnQKCQkgICAgICRwYXJtcyA9IGFycmF5KCk7CgkJICAgICAkcGFybXNbJ25hbWUnXSA9ICRwYXJhbXNbJ2lucHV0X2NhdGVnb3J5bmFtZSddOwoJCSAgICAgJHBhcm1zWydkZXNjcmlwdGlvbiddID0gJHBhcmFtc1snaW5wdXRfY2F0ZWdvcnlkZXNjJ107CgkJICAgICAkcGFybXNbJ3BhdGgnXSA9ICRwYXJhbXNbJ2lucHV0X2NhdGVnb3J5cGF0aCddOwoJCSAgICAgJHBhcm1zWydsaXN0YWJsZSddID0gJHBhcmFtc1snaW5wdXRfY2F0ZWdvcnlsaXN0YWJsZSddOwoJCSAgICAgJHRoaXMtPlNlbmRFdmVudCggJ09uQ3JlYXRlQ2F0ZWdvcnknLCAkcGFybXMgKTsKCQkgICB9CgkgICAgICAgfQoJICAgfQogICAgICAgfQogICB9CgppZiAoJGVycm9yKQogIHsKICAgIGVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSAoJ2FkZGNhdGVnb3J5LnRwbCcpOwogIH0KIGVsc2UKICAgewogICAgICR0aGlzLT5teVJlZGlyZWN0VG9UYWIgKCRpZCwgJ2NhdGVnb3JpZXMnKTsKICAgfQo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/action.do_addtemplate.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKaWYoICEkZ0NtcyApIGV4aXQoKTsKCmlmKCBpc3NldCggJHBhcmFtc1snY2FuY2VsJ10gKSApCiAgewogICAgaWYoIGlzc2V0KCAkcGFyYW1zWydhY3RpdmVfdGFiJ10gKSAmJiAkcGFyYW1zWydhY3RpdmVfdGFiJ10gIT0gJycgKQogICAgICB7CgkkdGhpcy0+bXlSZWRpcmVjdFRvVGFiKCRpZCwgJHBhcmFtc1snYWN0aXZlX3RhYiddKTsKICAgICAgfQogICAgJHRoaXMtPlJlZGlyZWN0KCRpZCwnZGVmYXVsdGFkbWluJyk7CiAgfQoKaWYoICEgJHRoaXMtPkNoZWNrUGVybWlzc2lvbignTW9kaWZ5IFRlbXBsYXRlcycpICkKICB7CiAgICAvLyB0b2RvLCBwZXJtaXNzaW9ucyBtZXNzYWdlIGhlcmUKICAgIHJldHVybjsKICB9CgokdGVtcGxhdGUgPSAiIjsKaWYoIGlzc2V0KCAkcGFyYW1zWyd0ZW1wbGF0ZSddICkgKQogIHsKICAgICR0ZW1wbGF0ZSA9IHRyaW0oJHBhcmFtc1sndGVtcGxhdGUnXSk7CiAgfQogIAokcHJlZml4ID0gIiI7CmlmKCBpc3NldCggJHBhcmFtc1sncHJlZml4J10gKSApCiAgewogICAgJHByZWZpeCA9IHRyaW0oJHBhcmFtc1sncHJlZml4J10pOwogIH0KCmlmKCAhaXNzZXQoICRwYXJhbXNbJ3RlbXBsYXRlY29udGVudCddICkgKQogIHsKICAgICRwYXJhbXNbJ2Vycm9ycyddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcycsJ3RlbXBsYXRlY29udGVudCcpOwogICAgJHRoaXMtPlJlZGlyZWN0KCRpZCwkcGFyYW1zWydvcmlnYWN0aW9uJ10sJycsJHBhcmFtcyk7CiAgICByZXR1cm47CiAgfQoKaWYoICR0ZW1wbGF0ZSA9PSAiIiB8fCAkcHJlZml4ID09ICIiICkKICB7CiAgICAkcGFyYW1zWydlcnJvcnMnXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9pbnN1ZmZpY2llbnRwYXJhbXMnLCcodGVtcGxhdGUgb3IgcHJlZml4KScpOwogICAgJHRoaXMtPlJlZGlyZWN0KCRpZCwkcGFyYW1zWydvcmlnYWN0aW9uJ10sJycsJHBhcmFtcyk7CiAgICByZXR1cm47CiAgfQoKCiRuZXd0ZW1wbGF0ZSA9ICRwcmVmaXggLiAkdGVtcGxhdGU7CgovLyBjaGVjayBpZiB0aGlzIHRlbXBsYXRlIGFscmVhZHkgZXhpc3RzCiR0eHQgPSB0cmltKCR0aGlzLT5HZXRUZW1wbGF0ZSgkbmV3dGVtcGxhdGUpKTsKaWYoICR0eHQgIT0gIiIgKQogIHsKICAgICRwYXJhbXNbJ2Vycm9ycyddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX3RlbXBsYXRlbmFtZWV4aXN0cycpOwogICAgJHRoaXMtPlJlZGlyZWN0KCRpZCwkcGFyYW1zWydvcmlnYWN0aW9uJ10sJycsJHBhcmFtcyk7CiAgICByZXR1cm47CiAgfQoKLy8gd2UncmUgcmVhZHkgdG8gc2V0IGl0CiR0aGlzLT5TZXRUZW1wbGF0ZSgkbmV3dGVtcGxhdGUsJHBhcmFtc1sndGVtcGxhdGVjb250ZW50J10pOwoKaWYoIGlzc2V0KCAkcGFyYW1zWydhY3RpdmVfdGFiJ10gKSAmJiAkcGFyYW1zWydhY3RpdmVfdGFiJ10gIT0gJycgKQogIHsKICAgICR0aGlzLT5teVJlZGlyZWN0VG9UYWIoJGlkLCAkcGFyYW1zWydhY3RpdmVfdGFiJ10gKTsKICB9CiR0aGlzLT5SZWRpcmVjdCgkaWQsJ2RlZmF1bHRhZG1pbicpOwoKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.do_editcategory.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgPSBhbGxvdyB1c2VycyB0byB1cGxvYWQgc3R1ZmYsIGEgcHNldWRvIGZpbGUgbWFuYWdlciBtb2R1bGUKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6CS8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKaWYgKCEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uICgnTWFuYWdlIFVwbG9hZHMnKSkKICB7CiAgICByZXR1cm47CiAgfQoKJGRiID0mICR0aGlzLT5HZXREYigpOwogICAgCi8vIGFyZSB3ZSBjYW5jZWxsaW5nCmlmIChpc3NldCAoJHBhcmFtc1snY2FuY2VsJ10pKQogIHsKICAgICR0aGlzLT5teVJlZGlyZWN0VG9UYWIoJGlkLCAnY2F0ZWdvcmllcycpOwogIH0KICAgIAovLyBtYWtlIHN1cmUgd2UgaGF2ZSBzb21ldGhpbmcgdG8gd29yayB3aXRoCmlmICghaXNzZXQgKCRwYXJhbXNbJ2NhdGVnb3J5X2lkJ10pIHx8ICRwYXJhbXNbJ2NhdGVnb3J5X2lkJ10gPT0gIiIpCiAgewogICAgJHRoaXMtPl9EaXNwbGF5RXJyb3JNZXNzYWdlKCR0aGlzLT5MYW5nKCdlcnJvcl9ub2NhdGVnb3J5aWQnKSk7CiAgfQplbHNlIGlmICghaXNzZXQgKCRwYXJhbXNbJ2lucHV0X2NhdGVnb3J5bmFtZSddKQoJIHx8ICRwYXJhbXNbJ2lucHV0X2NhdGVnb3J5bmFtZSddID09ICIiKQogIHsKICAgICR0aGlzLT5fRGlzcGxheUVycm9yTWVzc2FnZSgkdGhpcy0+TGFuZygnZXJyb3JfZW1wdHljYXRlZ29yeScpKTsKICB9CmVsc2UgaWYgKCFpc3NldCAoJHBhcmFtc1snaW5wdXRfY2F0ZWdvcnlwYXRoJ10pCgkgfHwgJHBhcmFtc1snaW5wdXRfY2F0ZWdvcnlkZXNjJ10gPT0gIiIpCiAgewogICAgJHRoaXMtPl9EaXNwbGF5RXJyb3JNZXNzYWdlKCR0aGlzLT5MYW5nKCdlcnJvcl9lbXB0eXBhdGgnKSk7CiAgfQplbHNlIGlmIChpc3NldCggJHBhcmFtc1snc2NhbiddICkgKQogIHsKICAgICRxdWVyeSA9ICJTRUxFQ1QgKiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc19jYXRlZ29yaWVzCiAgICAgICAgICAgIFdIRVJFIHVwbG9hZF9jYXRlZ29yeV9pZCA9ID8iOwogICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcXVlcnksIGFycmF5KCRwYXJhbXNbJ2NhdGVnb3J5X2lkJ10pICk7CiAgICBpZiggISRkYnJlc3VsdCApCiAgICAgIHsKCSR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ2Vycm9yJywgIjEiKTsKCSR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ21lc3NhZ2UnLCAkdGhpcy0+TGFuZyAoImVycm9yX2RiZXJyb3IiKSk7CiAgICAgIH0gCiAgICBlbHNlIAogICAgICB7Cgkkcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdygpOwoJaWYoICEkcm93ICkgCgkgIHsKCSAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24gKCdlcnJvcicsICIxIik7CgkgICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgnbWVzc2FnZScsICR0aGlzLT5MYW5nICgiZXJyb3JfZGJlcnJvciIpKTsKCSAgfSAKCWVsc2UgCgkgIHsKCSAgICBAc2V0X3RpbWVfbGltaXQoMCk7CgkgICAgJGRpciA9ICR0aGlzLT5fY2F0ZWdvcnlQYXRoKCAkcm93Wyd1cGxvYWRfY2F0ZWdvcnlfcGF0aCddICk7CgkgICAgJHRoaXMtPlNjYW5EaXJlY3RvcnkoICRwYXJhbXNbJ2NhdGVnb3J5X2lkJ10sICRkaXIgKTsKCSAgICAkdGhpcy0+bXlSZWRpcmVjdFRvVGFiKCRpZCwgJ2ZpbGVzJywgYXJyYXkoJ2lucHV0X2NhdGVnb3J5JyA9PiAkcGFyYW1zWydjYXRlZ29yeV9pZCddKSApOwoJICAgIHJldHVybjsKCSAgfSAKICAgICAgfQogIH0KZWxzZQogIHsKICAgIC8vIG5vdyBwcmVwYXJlIHRvIHVwZGF0ZSB0aGUgcmVjb3JkCiAgICAkZ3JvdXBzID0gbnVsbDsKICAgIGlmKCBpc3NldCgkcGFyYW1zWydpbnB1dF9ncm91cGxpc3QnXSkgJiYKCWlzX2FycmF5KCAkcGFyYW1zWydpbnB1dF9ncm91cGxpc3QnXSApICkKICAgICAgewoJJGdyb3VwcyA9IGltcGxvZGUoJywnLCRwYXJhbXNbJ2lucHV0X2dyb3VwbGlzdCddKTsKICAgICAgfQogICAgJHF1ZXJ5ID0KICAgICAgIlVQREFURSAiLmNtc19kYl9wcmVmaXggKCkuCiAgICAgICJtb2R1bGVfdXBsb2Fkc19jYXRlZ29yaWVzIFNFVCB1cGxvYWRfY2F0ZWdvcnlfbmFtZSA9ID8sIi4KICAgICAgInVwbG9hZF9jYXRlZ29yeV9kZXNjcmlwdGlvbiA9ID8sIHVwbG9hZF9jYXRlZ29yeV9saXN0YWJsZSA9ID8sCiAgICAgICAgdXBsb2FkX2NhdGVnb3J5X2dyb3VwcyA9ID8gV0hFUkUgdXBsb2FkX2NhdGVnb3J5X2lkID0gPyI7CiAgICAkZGJyZXN1bHQgPQogICAgICAkZGItPkV4ZWN1dGUgKCRxdWVyeSwKCQkgICAgYXJyYXkgKCRwYXJhbXNbJ2lucHV0X2NhdGVnb3J5bmFtZSddLAoJCQkgICAkcGFyYW1zWydpbnB1dF9jYXRlZ29yeWRlc2MnXSwKCQkJICAgKGlzc2V0KCRwYXJhbXNbJ2lucHV0X2NhdGVnb3J5bGlzdGFibGUnXSkpPzE6MCwKCQkJICAgJGdyb3VwcywKCQkJICAgJHBhcmFtc1snY2F0ZWdvcnlfaWQnXSkpOwogICAgaWYgKCEkZGJyZXN1bHQpCiAgICAgIHsKCSR0aGlzLT5fRGlzcGxheUVycm9yTWVzc2FnZSgkdGhpcy0+TGFuZygnZXJyb3InKS4nOiAnLiRkYi0+RXJyb3JNc2coKSk7CiAgICAgIH0KICAgIGVsc2UKICAgICAgewoJJHRoaXMtPm15UmVkaXJlY3RUb1RhYigkaWQsJ2NhdGVnb3JpZXMnKTsKCXJldHVybjsKICAgICAgfQogIH0KCiR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUgKCJhZGRjYXRlZ29yeS50cGwiKTsKCi8vIEVPRgo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/action.do_edittemplate.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFF1ZXN0aW9ucyAtIGEgc2ltcGxlIFF1ZXN0aW9ucyAmIEFuc3dlciBtb2R1bGUKIyBWZXJzaW9uOiAxLjAsIGNhbGd1eTEwMDAgPGNhbGd1eTEwMDBAaG90bWFpbC5jb20+CiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMgVGhlIG1vZHVsZSdzIGhvbWVwYWdlIGlzOiBodHRwOi8vZGV2LmNtc21hZGVzaW1wbGUub3JnL3Byb2plY3RzL3NrZWxldG9uLwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCmlmKCAhaXNzZXQoICRnQ21zICkgKSBleGl0KCk7CgppZiggaXNzZXQoICRwYXJhbXNbJ2NhbmNlbCddICkgKQogIHsKICAgIGlmKCBpc3NldCggJHBhcmFtc1snYWN0aXZlX3RhYiddICkgJiYgJHBhcmFtc1snYWN0aXZlX3RhYiddICE9ICcnICkKICAgICAgewoJJHRoaXMtPm15UmVkaXJlY3RUb1RhYigkaWQsICRwYXJhbXNbJ2FjdGl2ZV90YWInXSk7CiAgICAgIH0KICAgICR0aGlzLT5teVJlZGlyZWN0KCRpZCwnZGVmYXVsdGFkbWluJyk7CiAgfQoKaWYoICEgJHRoaXMtPkNoZWNrUGVybWlzc2lvbignTW9kaWZ5IFRlbXBsYXRlcycpICkKICB7CiAgICAvLyB0b2RvLCBwZXJtaXNzaW9ucyBtZXNzYWdlIGhlcmUKICAgIHJldHVybjsKICB9CgppZiggIWlzc2V0KCAkcGFyYW1zWyd0ZW1wbGF0ZWNvbnRlbnQnXSApICkKICB7CiAgICAkcGFyYW1zWydlcnJvcnMnXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9pbnN1ZmZpY2llbnRwYXJhbXMnLCd0ZW1wbGF0ZWNvbnRlbnQnKTsKICAgICR0aGlzLT5SZWRpcmVjdCgkaWQsJHBhcmFtc1snb3JpZ2FjdGlvbiddLCcnLCRwYXJhbXMpOwogICAgcmV0dXJuOwogIH0KCmlmKCAhaXNzZXQoICRwYXJhbXNbJ3RlbXBsYXRlJ10gKSApCiAgewogICAgJHBhcmFtc1snZXJyb3JzJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJywndGVtcGxhdGUnKTsKICAgICR0aGlzLT5SZWRpcmVjdCgkaWQsJHBhcmFtc1snb3JpZ2FjdGlvbiddLCcnLCRwYXJhbXMpOwogICAgcmV0dXJuOwogIH0KCiR0aGlzLT5TZXRUZW1wbGF0ZSggJHBhcmFtc1sncHJlZml4J10uJHBhcmFtc1sndGVtcGxhdGUnXSwgJHBhcmFtc1sndGVtcGxhdGVjb250ZW50J10gKTsKaWYoIGlzc2V0KCAkcGFyYW1zWydhY3RpdmVfdGFiJ10gKSAmJiAkcGFyYW1zWydhY3RpdmVfdGFiJ10gIT0gJycgKQogIHsKICAgICR0aGlzLT5teVJlZGlyZWN0VG9UYWIoJGlkLCAkcGFyYW1zWydhY3RpdmVfdGFiJ10pOwogIH0KJHRoaXMtPm15UmVkaXJlY3QoJGlkLCdkZWZhdWx0YWRtaW4nKTsKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.do_editupload.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLWZpbGUtc3R5bGU6bGludXg7IHRhYi13aWR0aDoyOyBpbmRlbnQtdGFicy1tb2RlOnQ7IGMtYmFzaWMtb2Zmc2V0OiAyOyAtKi0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojIFZlcnNpb246IDEuMy4wLWJldGExLCBjYWxndXkxMDAwCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOgkvL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCmlmICghJHRoaXMtPkNoZWNrUGVybWlzc2lvbiAoJ01hbmFnZSBVcGxvYWRzJykpCiAgewogICAgcmV0dXJuOwogIH0KCi8vIG1ha2Ugc3VyZSB3ZSBoYXZlIGFsbCB0aGUgcGFyYW1ldGVycyB3ZSBuZWVkCmlmKCAhaXNzZXQoJHBhcmFtc1sndXBsb2FkX2lkJ10pIHx8CiAgICAhaXNzZXQoJHBhcmFtc1snaW5wdXRfdXBsb2FkZGVzYyddKSB8fAogICAgIWlzc2V0KCRwYXJhbXNbJ2lucHV0X21vdmVjYXRlZ29yeSddKSApIAogIHsKICAgICR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSAoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsCgkJCQkJCQkJCQkJCQkJCSR0aGlzLT5MYW5nICgnZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJywndXBsb2FkX2lkPz8nKSk7CiAgICByZXR1cm47CiAgfQogIAogCi8vIG5vdyBzZWUgaWYgd2UgY2FuIGZpbmQgdGhlIGRldGFpbHMgYWJvdXQgdGhpcyB1cGxvYWQKJGRvX3VwZGF0ZSA9IGZhbHNlOwokZGIgPSYgJHRoaXMtPkdldERiKCk7CiRxdWVyeSA9ICJTRUxFQ1QgKiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2FkcyBXSEVSRSB1cGxvYWRfaWQgPSA/IjsKJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcXVlcnksIGFycmF5KCAkcGFyYW1zWyd1cGxvYWRfaWQnXSApICk7CmlmKCAhJGRicmVzdWx0ICkgewogICR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSAoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsCgkJCSAgICAkdGhpcy0+TGFuZyAoJ2Vycm9yX2RiZXJyb3InKSk7CiAgcmV0dXJuOwogfQokcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdygpOwppZiggISRyb3cgKSB7CiAgJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlICgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwKCQkJICAgICR0aGlzLT5MYW5nICgnZXJyb3JfZGJlcnJvcicpKTsKICByZXR1cm47CiB9CiRuZXduYW1lID0gJHJvd1sndXBsb2FkX25hbWUnXTsKJG5ld2NhdGVnb3J5ID0gJHJvd1sndXBsb2FkX2NhdGVnb3J5X2lkJ107CiRuZXdhdXRob3IgPSAkcm93Wyd1cGxvYWRfYXV0aG9yJ107CiRuZXdkZXNjID0gJHJvd1sndXBsb2FkX2Rlc2NyaXB0aW9uJ107CiRuZXdzdW1tYXJ5ID0gJHJvd1sndXBsb2FkX3N1bW1hcnknXTsKJG5ld3RodW1iID0gJHJvd1sndXBsb2FkX3RodW1ibmFpbCddOwoKLy8gR2V0IHRoZSBjYXRlZ29yeSBwYXRoIGZyb20gdGhlIGNhdGVnb3J5IGlkCiRjYXRwYXRoID0gJyc7CnsKICAkcSA9ICJTRUxFQ1QgKiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc19jYXRlZ29yaWVzCiAgICAgICAgIFdIRVJFIHVwbG9hZF9jYXRlZ29yeV9pZCA9ID8iOwogICRyb3cyID0gJGRiLT5HZXRSb3coICRxLCBhcnJheSgkcm93Wyd1cGxvYWRfY2F0ZWdvcnlfaWQnXSkpOwogIGlmKCAhJHJvdzIgKQogICAgewogICAgICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UgKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLAoJCQkJJHRoaXMtPkxhbmcgKCdlcnJvcl9kYmVycm9yJykpOwogICAgICByZXR1cm47CiAgICB9CgogICRjYXRwYXRoID0gJHJvdzJbJ3VwbG9hZF9jYXRlZ29yeV9wYXRoJ107Cn0KCiRmcm9tZmlsZSA9ICR0aGlzLT5fdXBsb2FkUGF0aCggJGNhdHBhdGgsIHRyaW0oJHJvd1sndXBsb2FkX25hbWUnXSkgKTsKCmlmKCBpc3NldCgkcGFyYW1zWyd0aHVtYm5haWwnXSkgKQogIHsKICAgIC8vIHdlJ3JlIChyZSljcmVhdGluZyBhIHRodW1ibmFpbCBmb3IgdGhpcyBpbWFnZQogICAgJHRuZGlyID0gJHRoaXMtPl9jYXRlZ29yeVBhdGgoJGNhdHBhdGgpOwoKICAgIGdsb2JhbCAkZ0NtczsKCQkkZmlsZWV4dGVuc2lvbiA9IHN0cnRvbG93ZXIoc3RycmNocigkcm93Wyd1cGxvYWRfbmFtZSddLCcuJykpOwogICAgJGRlc3QgPSAkdG5kaXIuRElSRUNUT1JZX1NFUEFSQVRPUi4ndGh1bWJfJy4kcm93Wyd1cGxvYWRfbmFtZSddOwoJCSR0aHVtYl9leHRfYXJyID0gZXhwbG9kZSgiLCIsCgkJCQkJCQkJCQkJCQkJICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdhdXRvdGh1bWJuYWlsX2V4dGVuc2lvbnMnKSk7CgkJZm9yZWFjaCggJHRodW1iX2V4dF9hcnIgYXMgJHRodW1iX2V4dCApCgkJCXsKCQkJCWlmKCAiLiIuJHRodW1iX2V4dCA9PSAkZmlsZWV4dGVuc2lvbiApCgkJCQkJewoJCQkJCQkvLyBkZWxldGUgYW55IHByZXZpb3VzIHRodW1ibmFpbAoJCQkJCQlpZiggIWVtcHR5KCRyb3dbJ3VwbG9hZF90aHVtYm5haWwnXSkgKQoJCQkJCQkJewoJCQkJCQkJCSRvbGRmaWxlID0gJHRuZGlyLkRJUkVDVE9SWV9TRVBBUkFUT1IuJ3RodW1iXycuJHJvd1sndXBsb2FkX3RodW1ibmFpbCddOwoJCQkJCQkJCWlmKCBmaWxlX2V4aXN0cygkb2xkZmlsZSkgKQoJCQkJCQkJCQl7CgkJCQkJCQkJCQlAdW5saW5rKCRvbGRmaWxlKTsKCQkJCQkJCQkJfQoJCQkJCQkJfQoKCQkJCQkJLy8gZ2VuZXJhdGUgaXQuCgkJCQkJCSR0aGlzLT5pbWFnZVRyYW5zZm9ybSgkZnJvbWZpbGUsJGRlc3QsCgkJCQkJCQkJCQkJCQkJCQkJJHRoaXMtPkdldFByZWZlcmVuY2UoJ2F1dG90aHVtYm5haWxfc2l6ZScpKTsKCgkJCQkJCS8vIHVwZGF0ZSB0aGUgcmVjb3JkLgoJCQkJCQkkZG9fdXBkYXRlID0gdHJ1ZTsKCQkJCQkJJG5ld3RodW1iID0gJ3RodW1iXycuJHJvd1sndXBsb2FkX25hbWUnXTsKCQkJCQkJYnJlYWs7CgkJCQkJfQoJCQl9CiAgICAkdGhpcy0+bXlSZWRpcmVjdFRvVGFiKCRpZCwgJ2ZpbGVzJywgYXJyYXkoICdjdXJjYXRlZ29yeScgPT4gJHBhcmFtc1snY2F0ZWdvcnlfaWQnXSkgKTsKICB9CgoKLy8gd293IHdlIGRpZC4uLiBub3cgYWxsIHdlIGhhdmUgdG8gZG8gaXMgY29tcGFyZSBjb21tZW50cywgYW5kIHRoZSBjYXRlZ29yaWVzLCBhbmQgb2ZmIHdlIGdvLgppZiggJHBhcmFtc1snaW5wdXRfbW92ZWNhdGVnb3J5J10gIT0gJHJvd1sndXBsb2FkX2NhdGVnb3J5X2lkJ10gfHwKICAgICRwYXJhbXNbJ2lucHV0X3VwbG9hZG5hbWUnXSAhPSAkcm93Wyd1cGxvYWRfbmFtZSddICkgewogIC8vIGxvb2tzIGxpa2Ugd2UgaGF2ZSB0byBtb3ZlIGl0CiAgLy8gZ2V0IHRoZSBpbmZvIGZvciB0aGUgbmV3IGNhdGVnb3J5CiAgJHF1ZXJ5ID0gIlNFTEVDVCAqIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX2NhdGVnb3JpZXMgV0hFUkUgdXBsb2FkX2NhdGVnb3J5X2lkID0gPyI7CiAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcXVlcnksIGFycmF5KCAkcGFyYW1zWydpbnB1dF9tb3ZlY2F0ZWdvcnknXSApICk7CiAgJGNhdDFyb3cgPSAkZGJyZXN1bHQtPkZldGNoUm93KCk7CiAgaWYoICEkY2F0MXJvdyApIHsKICAgICR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSAoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsICR0aGlzLT5MYW5nICgnZXJyb3JfZGJlcnJvcicpKTsKICAgIHJldHVybjsKICB9CgogIC8vIGFuZCB0aGUgb2xkIGNhdGVnb3J5CiAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcXVlcnksIGFycmF5KCAkcm93Wyd1cGxvYWRfY2F0ZWdvcnlfaWQnXSApICk7CiAgJGNhdDJyb3cgPSAkZGJyZXN1bHQtPkZldGNoUm93KCk7CiAgaWYoICEkY2F0MnJvdyApIHsKICAgICR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSAoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsICR0aGlzLT5MYW5nICgnZXJyb3JfZGJlcnJvcicpKTsKICAgIHJldHVybjsKICB9CiAgICAgIAogIC8vIG5vdyB3ZSBjYW4gbW92ZSB0aGUgZmlsZSBmcm9tIGRpcmVjdG9yeSBvbmUgdG8gdHdvLgogIC8vIGlmIGl0IGRvZXNuJ3QgYWxyZWFkeSBleGlzdCBpbiB0aGUgZGVzdGluYXRpb24gZGlyZWN0b3J5CiAgJHRvZmlsZSAgID0gJHRoaXMtPl91cGxvYWRQYXRoKCAkY2F0MXJvd1sndXBsb2FkX2NhdGVnb3J5X3BhdGgnXSwgdHJpbSgkcGFyYW1zWydpbnB1dF91cGxvYWRuYW1lJ10pICk7CgogIC8vIG1vdmUgdGhlIGZpbGUKICBpZiggZmlsZV9leGlzdHMoICR0b2ZpbGUgKSApIHsKICAgICR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSAoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsICR0aGlzLT5MYW5nICgnZXJyb3JfZmlsZWV4aXN0cycsJHRvZmlsZSkpOwogICAgcmV0dXJuOwogIH0KICBpZiggIXJlbmFtZSggJGZyb21maWxlLCAkdG9maWxlICkgKSB7CiAgICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UgKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAkdGhpcy0+TGFuZyAoJ2Vycm9yX2Nhbm5vdHJlbmFtZScpKTsKICAgIHJldHVybjsKICB9CgogIC8vIGFuZCBtb3ZlIGFueSB0aHVtYm5haWwKCWlmKCAhZW1wdHkoJHJvd1sndXBsb2FkX3RodW1ibmFpbCddKSApCgkJewoJCQkkdG5fZnJvbWZpbGUgPSAkdGhpcy0+X2NhdGVnb3J5UGF0aCggJGNhdDJyb3dbJ3VwbG9hZF9jYXRlZ29yeV9wYXRoJ10uRElSRUNUT1JZX1NFUEFSQVRPUi4KCQkJCQkJCQkJCQkJCQkJCQkJCQkJICRyb3dbJ3VwbG9hZF90aHVtYm5haWwnXSApOwoJCQkkdGh1bWJfZXh0ID0gc3RycmNocigkcm93Wyd1cGxvYWRfdGh1bWJuYWlsJ10sJy4nKTsKCQkJJGZuID0gdHJpbSgkcGFyYW1zWydpbnB1dF91cGxvYWRuYW1lJ10pOwoJCQkkdG1wID0gc3RycnBvcygkZm4sJy4nKTsKCQkJaWYoICR0bXAgIT09IEZBTFNFICkKCQkJCXsKCQkJCQkkZm4gPSBzdWJzdHIoJGZuLDAsJHRtcCk7CgkJCQl9CiAJCQkkbmV3dGh1bWIgPSAndGh1bWJfJy4kZm4uJHRodW1iX2V4dDsKCQkJJHRuX3RvZmlsZSAgID0gJHRoaXMtPl9jYXRlZ29yeVBhdGgoICRjYXQxcm93Wyd1cGxvYWRfY2F0ZWdvcnlfcGF0aCddLkRJUkVDVE9SWV9TRVBBUkFUT1IuCgkJCQkJCQkJCQkJCQkJCQkJCQkJCSAkbmV3dGh1bWIpOwoJCQkvLyBhbmQgcmVuYW1lIHRoZSB0aHVtYm5haWwKCQkJQHJlbmFtZSggJHRuX2Zyb21maWxlLCAkdG5fdG9maWxlICk7CiAgICB9CgogICRkb191cGRhdGUgPSB0cnVlOwogICRuZXdjYXRlZ29yeSA9ICRwYXJhbXNbJ2lucHV0X21vdmVjYXRlZ29yeSddOwogICR0aGlzLT5BdWRpdCggMCwgJHRoaXMtPkxhbmcoJ2ZyaWVuZGx5bmFtZScpLAoJCSR0aGlzLT5MYW5nKCdtb3ZlZGZpbGUnLCAkZnJvbWZpbGUsICR0b2ZpbGUgKSk7CiB9CgppZiggJHBhcmFtc1snaW5wdXRfdXBsb2FkZGVzYyddICE9ICRyb3dbJ3VwbG9hZF9kZXNjcmlwdGlvbiddICkgewogICRkb191cGRhdGUgPSB0cnVlOwogICRuZXdkZXNjID0gdHJpbSgkcGFyYW1zWydpbnB1dF91cGxvYWRkZXNjJ10pOwogfQppZiggJHBhcmFtc1snaW5wdXRfdXBsb2FkbmFtZSddICE9ICRyb3dbJ3VwbG9hZF9uYW1lJ10gKSB7CiAgJGRvX3VwZGF0ZSA9IHRydWU7CiAgJG5ld25hbWUgPSB0cmltKCRwYXJhbXNbJ2lucHV0X3VwbG9hZG5hbWUnXSk7CiB9CmlmKCAkcGFyYW1zWydpbnB1dF91cGxvYWRzdW1tYXJ5J10gIT0gJHJvd1sndXBsb2FkX3N1bW1hcnknXSApIHsKICAkZG9fdXBkYXRlID0gdHJ1ZTsKICAkbmV3c3VtbWFyeSA9IHRyaW0oJHBhcmFtc1snaW5wdXRfdXBsb2Fkc3VtbWFyeSddKTsKIH0KaWYoICRwYXJhbXNbJ2lucHV0X3VwbG9hZGF1dGhvciddICE9ICRyb3dbJ3VwbG9hZF9hdXRob3InXSApIHsKICAkZG9fdXBkYXRlID0gdHJ1ZTsKICAkbmV3YXV0aG9yID0gdHJpbSgkcGFyYW1zWydpbnB1dF91cGxvYWRhdXRob3InXSk7CiB9CgppZiggJGRvX3VwZGF0ZSApIHsKICAkcXVlcnkgPSAiVVBEQVRFICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2FkcyBTRVQKICAgICAgICAgICAgICAgICAgdXBsb2FkX25hbWUgPSA/LCB1cGxvYWRfYXV0aG9yID0gPywKICAgICAgICAgICAgICAgICAgdXBsb2FkX3N1bW1hcnkgPSA/LCB1cGxvYWRfZGVzY3JpcHRpb24gPSA/LAogICAgICAgICAgICAgICAgICB1cGxvYWRfY2F0ZWdvcnlfaWQgPSA/ICwKICAgICAgICAgICAgICAgICAgdXBsb2FkX3RodW1ibmFpbCA9ID8KICAgICAgICAgICAgIFdIRVJFIHVwbG9hZF9pZCA9ID8iOwogICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHF1ZXJ5LCBhcnJheSggJG5ld25hbWUsICRuZXdhdXRob3IsICRuZXdzdW1tYXJ5LCAkbmV3ZGVzYywgJG5ld2NhdGVnb3J5LCAKCQkJCQkJCQkJCQkJCQkJCQkJCQkJICRuZXd0aHVtYiwgJHBhcmFtc1sndXBsb2FkX2lkJ10gKSApOwogfQoKIyBhbGxvdyBuZXcgdGh1bWJuYWlsIHRvIGJlIHVwbG9hZGVkCiR0bXAgPSAkaWQuJ2lucHV0X25ld3RodW1ibmFpbCc7CmlmKCBpc3NldCgkX0ZJTEVTWyR0bXBdKSAmJiAhZW1wdHkoJF9GSUxFU1skdG1wXVsnbmFtZSddKSAmJgoJCSRfRklMRVNbJHRtcF1bJ3NpemUnXSA+IDAgJiYKCQkkX0ZJTEVTWyR0bXBdWydlcnJvciddID09IDAgKQoJewoJCSRuYW1lID0gJHJvd1sndXBsb2FkX25hbWUnXTsKCQkkdGh1bWJfZXh0ID0gc3RycmNocigkX0ZJTEVTWyR0bXBdWyduYW1lJ10sJy4nKTsKCQkkZmlsZV9leHQgPSBzdHJyY2hyKCRuYW1lLCcuJyk7CgkJJGZuYW1lID0gc3Vic3RyKCRuYW1lLDAsc3RybGVuKCRuYW1lKS1zdHJsZW4oJGZpbGVfZXh0KSk7CgkJJHRodW1iX25hbWUgPSAndGh1bWJfJy4kZm5hbWUuJHRodW1iX2V4dDsKCQkkdG5fb2xkZmlsZSA9ICR0aGlzLT5fY2F0ZWdvcnlQYXRoKCAkY2F0cGF0aC5ESVJFQ1RPUllfU0VQQVJBVE9SLiRyb3dbJ3VwbG9hZF90aHVtYm5haWwnXSk7CgoKCQlpZiggZmlsZV9leGlzdHMoICR0bl9vbGRmaWxlICkgKQoJCQl7CgkJCQlAdW5saW5rKCR0bl9vbGRmaWxlKTsKCQkJfQoJCSR0bl9uZXdmaWxlICAgPSAkdGhpcy0+X2NhdGVnb3J5UGF0aCggJGNhdHBhdGguRElSRUNUT1JZX1NFUEFSQVRPUi4KCQkJCQkJCQkJCQkJCQkJCQkJCQkgJHRodW1iX25hbWUpOwoJCWlmKCBmaWxlX2V4aXN0cygkdG5fbmV3ZmlsZSkgKQoJCQl7CgkJCQlAdW5saW5rKCR0bl9uZXdmaWxlKTsKCQkJfQoJCWNtc19tb3ZlX3VwbG9hZGVkX2ZpbGUoICRfRklMRVNbJHRtcF1bJ3RtcF9uYW1lJ10sJHRuX25ld2ZpbGUgKTsKCgkJJHF1ZXJ5ID0gJ1VQREFURSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHMgCiAgICAgICAgICAgICAgICAgU0VUIHVwbG9hZF90aHVtYm5haWwgPSA/CiAgICAgICAgICAgICAgIFdIRVJFIHVwbG9hZF9pZCA9ID8nOwoJCSRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkoJHRodW1iX25hbWUsJHJvd1sndXBsb2FkX2lkJ10pKTsKCX0KCgovLyBkb25lLgokdGhpcy0+bXlSZWRpcmVjdFRvVGFiKCRpZCwgJ2ZpbGVzJywgYXJyYXkoICdjdXJjYXRlZ29yeScgPT4gJHBhcmFtc1snY2F0ZWdvcnlfaWQnXSkgKTsKCi8vIEVPRgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.editcategory.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLWZpbGUtc3R5bGU6bGludXg7IHRhYi13aWR0aDoyOyBpbmRlbnQtdGFicy1tb2RlOnQ7IGMtYmFzaWMtb2Zmc2V0OiAyOyAtKi0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgPSBhbGxvdyB1c2VycyB0byB1cGxvYWQgc3R1ZmYsIGEgcHNldWRvIGZpbGUgbWFuYWdlciBtb2R1bGUKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6CS8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKaWYgKCEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uICgnTWFuYWdlIFVwbG9hZHMnKSkKICB7CiAgICByZXR1cm47CiAgfQoKJGRiID0mICR0aGlzLT5HZXREYigpOwokc21hcnR5LT5hc3NpZ24gKCd0aXRsZScsICR0aGlzLT5MYW5nICgnZWRpdGNhdGVnb3J5JykpOwoKLy8gY2hlY2sgdGhpbmdzIG91dAppZiAoIWlzc2V0ICgkcGFyYW1zWydjYXRlZ29yeV9pZCddKSkKICB7CiAgICAkc21hcnR5LT5hc3NpZ24gKCdtZXNzYWdlJywgJHRoaXMtPkxhbmcgKCdlcnJvcl9ub2NhdGVnb3J5JykpOwogICAgJHNtYXJ0eS0+YXNzaWduICgnZXJyb3InLCAxKTsKICAgIGVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSAoJ2FkZGNhdGVnb3J5LnRwbCcpOwogICAgcmV0dXJuOwogIH0KCi8vIGdldCB0aGUgY2F0ZWdvcnkgaW5mbyBmcm9tIHRoZSBkYXRhYmFzZSAoZm9yIHRoaXMgY2F0ZWdvcnkpCiRxdWVyeSA9CiAgIlNFTEVDVCAqIEZST00gIi5jbXNfZGJfcHJlZml4ICgpLgogICJtb2R1bGVfdXBsb2Fkc19jYXRlZ29yaWVzIFdIRVJFIHVwbG9hZF9jYXRlZ29yeV9pZCA9ID8iOwokZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUgKCRxdWVyeSwgYXJyYXkoJHBhcmFtc1snY2F0ZWdvcnlfaWQnXSkpOwppZiAoISRkYnJlc3VsdCkKICB7CiAgICAkc21hcnR5LT5hc3NpZ24gKCdtZXNzYWdlJywgJHRoaXMtPkxhbmcgKCdlcnJvcl9kYmVycm9yJykpOwogICAgJHNtYXJ0eS0+YXNzaWduICgnZXJyb3InLCAxKTsKICAgIGVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSAoJ2FkZGNhdGVnb3J5LnRwbCcpOwogICAgcmV0dXJuOwogIH0KJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3cgKCk7CmlmICghJHJvdykKICB7CiAgICAkc21hcnR5LT5hc3NpZ24gKCdtZXNzYWdlJywgJHRoaXMtPkxhbmcgKCdlcnJvcl9kYmVycm9yJykpOwogICAgJHNtYXJ0eS0+YXNzaWduICgnZXJyb3InLCAxKTsKICAgIGVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSAoJ2FkZGNhdGVnb3J5LnRwbCcpOwogICAgcmV0dXJuOwogIH0KCi8vIHBvcHVsYXRlIHRoZSB0ZW1wbGF0ZQokc21hcnR5LT5hc3NpZ24gKCJzdGFydGZvcm0iLAoJCQkJCQkJCSAkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0ICgkaWQsICdkb19lZGl0Y2F0ZWdvcnknLCAkcmV0dXJuaWQsCgkJCQkJCQkJCQkJCQkJCQkJCQkJICdwb3N0JywnJyxmYWxzZSwnJywkcGFyYW1zKSk7CiRzbWFydHktPmFzc2lnbiAoJ3N1Ym1pdCcsCgkJCQkJCQkJICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCAoJGlkLCAnc3VibWl0JywgJHRoaXMtPkxhbmcoJ3N1Ym1pdCcpKSk7CiRzbWFydHktPmFzc2lnbiAoJ2NhbmNlbCcsCgkJCQkJCQkJICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCAoJGlkLCAnY2FuY2VsJywgJHRoaXMtPkxhbmcoJ2NhbmNlbCcpKSk7ICAgIAoKJGFkZHRleHRfdGh1bWJuYWlscyA9ICd0aXRsZT0iJy4kdGhpcy0+TGFuZygndGl0bGVfY3JlYXRlX3RodW1ibmFpbHMnKS4nIic7CiRzbWFydHktPmFzc2lnbiAoJ3RodW1ibmFpbHMnLAoJCQkJCQkJCSAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoICRpZCwgJ3RodW1ibmFpbHMnLCAKCQkJCQkJCQkJCQkJCQkJCQkJCQkJICR0aGlzLT5MYW5nKCdjcmVhdGVfdGh1bWJuYWlscycpLAoJCQkJCQkJCQkJCQkJCQkJCQkJCQkgJGFkZHRleHRfdGh1bWJuYWlscyApKTsKCiRhZGR0ZXh0X3NjYW4gPSAndGl0bGU9IicuJHRoaXMtPkxhbmcoJ3RpdGxlX3NjYW4nKS4nIic7CiRzbWFydHktPmFzc2lnbiAoJ3NjYW4nLAoJCQkJCQkJCSAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoICRpZCwgJ3NjYW4nLCAKCQkJCQkJCQkJCQkJCQkJCQkJCQkJICR0aGlzLT5MYW5nKCdzY2FuJyksCgkJCQkJCQkJCQkJCQkJCQkJCQkJCSAkYWRkdGV4dF9zY2FuKSk7CiRzbWFydHktPmFzc2lnbiAoJ2VuZGZvcm0nLCAkdGhpcy0+Q3JlYXRlRm9ybUVuZCAoKSk7Cgokc21hcnR5LT5hc3NpZ24gKCdwcm9tcHRfY2F0ZWdvcnluYW1lJywgCgkJCQkJCQkJICR0aGlzLT5MYW5nICgncHJvbXB0X2NhdGVnb3J5bmFtZScpKTsKJHNtYXJ0eS0+YXNzaWduICgnaW5wdXRfY2F0ZWdvcnluYW1lJywgCgkJCQkJCQkJICR0aGlzLT5DcmVhdGVJbnB1dFRleHQgKCRpZCwgJ2lucHV0X2NhdGVnb3J5bmFtZScsCgkJCQkJCQkJCQkJCQkJCSRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9uYW1lJ10sIDIwLCA4MCkpOwokc21hcnR5LT5hc3NpZ24gKCdpbmZvX2NhdGVnb3J5bmFtZScsICR0aGlzLT5MYW5nKCdpbmZvX2NhdGVnb3J5bmFtZScpKTsKJHNtYXJ0eS0+YXNzaWduICgncHJvbXB0X2NhdGVnb3J5ZGVzYycsICR0aGlzLT5MYW5nICgncHJvbXB0X2NhdGVnb3J5ZGVzYycpKTsKJHNtYXJ0eS0+YXNzaWduICgnaW5wdXRfY2F0ZWdvcnlkZXNjJywKCQkgICAgICAgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCAoJGlkLCAnaW5wdXRfY2F0ZWdvcnlkZXNjJywKCQkJCQkgICAgICAgJHJvd1sndXBsb2FkX2NhdGVnb3J5X2Rlc2NyaXB0aW9uJ10sIDgwLCAyNTUpKTsKJHNtYXJ0eS0+YXNzaWduICgnaW5mb19jYXRlZ29yeWRlc2MnLCAkdGhpcy0+TGFuZygnaW5mb19jYXRlZ29yeWRlc2MnKSk7CiRzbWFydHktPmFzc2lnbiAoJ3Byb21wdF9jYXRlZ29yeXBhdGgnLCR0aGlzLT5MYW5nICgncHJvbXB0X2NhdGVnb3J5cGF0aCcpKTsKJHNtYXJ0eS0+YXNzaWduICgnaW5wdXRfY2F0ZWdvcnlwYXRoJywKCQkgICAgICAgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCAoJGlkLCAnaW5wdXRfY2F0ZWdvcnlwYXRoJywKCQkJCQkJCQkJCQkJCQkJCQkgJHJvd1sndXBsb2FkX2NhdGVnb3J5X3BhdGgnXSwKCQkJCQkJCQkJCQkJCQkJCQkgNDAsIDI1NSwgInJlYWRvbmx5IikpOwokc21hcnR5LT5hc3NpZ24gKCdpbmZvX2NhdGVnb3J5cGF0aCcsICR0aGlzLT5MYW5nKCdpbmZvX2NhdGVnb3J5cGF0aCcpKTsKJHNtYXJ0eS0+YXNzaWduICgncHJvbXB0X2NhdGVnb3J5bGlzdGFibGUnLCAKCQkJCQkJCQkgJHRoaXMtPkxhbmcgKCdwcm9tcHRfY2F0ZWdvcnlsaXN0YWJsZScpKTsKJHNtYXJ0eS0+YXNzaWduICgnaW5wdXRfY2F0ZWdvcnlsaXN0YWJsZScsCgkJICAgICAgICR0aGlzLT5DcmVhdGVJbnB1dENoZWNrYm94ICgkaWQsCgkJCQkJCSAgICdpbnB1dF9jYXRlZ29yeWxpc3RhYmxlJywgMSwgJHJvd1sndXBsb2FkX2NhdGVnb3J5X2xpc3RhYmxlJ10pKTsKJHNtYXJ0eS0+YXNzaWduICgncGF0aG1lc3NhZ2UnLCAkdGhpcy0+TGFuZyAoJ2Nhbm5vdG1vZGlmeXBhdGgnKSk7CiRzbWFydHktPmFzc2lnbiAoJ2hpZGRlbicsCgkJICAgICAgICR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbiAoJGlkLCAnY2F0ZWdvcnlfaWQnLAoJCQkJCQkgJHBhcmFtc1snY2F0ZWdvcnlfaWQnXSkpOwoKJGZldXNlcnMgPSAkdGhpcy0+R2V0TW9kdWxlSW5zdGFuY2UoJ0Zyb250RW5kVXNlcnMnKTsKaWYoICRmZXVzZXJzICkKICB7CiAgICAvLyBnZXQgYSBsaXN0IG9mIHRoZSBncm91cHMgaW4gdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlCiAgICAkZ3JvdXBzID0gJGZldXNlcnMtPkdldEdyb3VwTGlzdCgpOwoJCSRzZWxncm91cHMgPSBhcnJheSgpOwoJCWlmKCBpc3NldCgkcm93Wyd1cGxvYWRfY2F0ZWdvcnlfZ3JvdXBzJ10pICYmIAoJCQkJJHJvd1sndXBsb2FkX2NhdGVnb3J5X2dyb3VwcyddICE9ICcnICkKCQkJewoJCQkJJHNlbGdyb3VwcyA9IGV4cGxvZGUoJywnLCRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9ncm91cHMnXSk7CgkJCX0KICAgIGlmKCBjb3VudCgkZ3JvdXBzKSA+IDAgKQogICAgICB7CgkJCQkkc21hcnR5LT5hc3NpZ24oJ3Byb21wdF9ncm91cGxpc3QnLCR0aGlzLT5MYW5nKCdwcm9tcHRfZ3JvdXBsaXN0JykpOwoJCQkJJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9ncm91cGxpc3QnLAoJCQkJCQkJCQkJCQkkdGhpcy0+Q3JlYXRlSW5wdXRTZWxlY3RMaXN0KCRpZCwnaW5wdXRfZ3JvdXBsaXN0W10nLAoJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCSAkZ3JvdXBzLCRzZWxncm91cHMpKTsKCQkJCSRzbWFydHktPmFzc2lnbignaW5mb19ncm91cGxpc3QnLAoJCQkJCQkJCQkJCQkkdGhpcy0+TGFuZygnaW5mb19ncm91cGxpc3QnKSk7CiAgICAgIH0KICB9CiAgICAKZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlICgnYWRkY2F0ZWdvcnkudHBsJyk7CgovLyBFT0YKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.edittemplate.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKCmlmKCAhJGdDbXMgKSBleGl0KCk7CgppZiggISAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdNb2RpZnkgVGVtcGxhdGVzJykgKQogIHsKICAgIC8vIHRvZG8sIHBlcm1pc3Npb25zIG1lc3NhZ2UgaGVyZQogICAgcmV0dXJuOwogIH0KCgovLyBjaGVjayBpZiB3ZSBoYXZlIGEgdGVtcGxhdGUgbmFtZQppZiggIShpc3NldCgkcGFyYW1zWyd0ZW1wbGF0ZSddKSB8fCBpc3NldCgkcGFyYW1zWydwcmVmaXgnXSkpICkKICB7CiAgICAkcGFyYW1zWydlcnJvcnMnXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9pbnN1ZmZpY2llbnRwYXJhbXMnLCcodGVtcGxhdGUgb3IgcHJlZml4KScpOwogICAgJHRoaXMtPlJlZGlyZWN0KCRpZCwnZGVmYXVsdGFkbWluJywnJywkcGFyYW1zKTsKICAgIHJldHVybjsKICB9CmlmKCAhaXNzZXQoJHBhcmFtc1snbW9kZSddKSB8fCAhaXNzZXQoJHBhcmFtc1sndGl0bGUnXSkgKQogIHsKICAgICRwYXJhbXNbJ2Vycm9ycyddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcycsJyhtb2RlIG9yIHRpdGxlKScpOwogICAgJHRoaXMtPlJlZGlyZWN0KCRpZCwnZGVmYXVsdGFkbWluJywnJywkcGFyYW1zKTsKICAgIHJldHVybjsKICB9CgovLyBoYW5kbGUgZXJyb3JzLgppZiggaXNzZXQoJHBhcmFtc1snZXJyb3JzJ10pICkKICB7CiAgICBlY2hvICR0aGlzLT5TaG93RXJyb3JzKCRwYXJhbXNbJ2Vycm9ycyddKTsKICB9CgokcGFyYW1zWydvcmlnYWN0aW9uJ10gPSAkcGFyYW1zWydhY3Rpb24nXTsKJGNvbnRlbnRzID0gIiI7CmlmKCAkcGFyYW1zWydtb2RlJ10gPT0gJ2FkZCcgKQogIHsKICAgICR0aGlzLT5zbWFydHktPmFzc2lnbignZm9ybXN0YXJ0JywKCQkJICAgICR0aGlzLT5DcmVhdGVGb3JtU3RhcnQgKCRpZCwgJ2RvX2FkZHRlbXBsYXRlJywkcmV0dXJuaWQsJ3Bvc3QnLCcnLAoJCQkJCQkgICAgZmFsc2UsICcnLCAkcGFyYW1zKSk7CiAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RlbXBsYXRlbmFtZScsCgkJCSAgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCggJGlkLCAndGVtcGxhdGUnLCAiIiwgNDAgKSk7CiAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2hpZGRlbicsCgkJCSAgJHRoaXMtPkNyZWF0ZUlucHV0SGlkZGVuKCRpZCwgJ3ByZWZpeCcsICRwYXJhbXNbJ3ByZWZpeCddICkpOwogICAgaWYoIGlzc2V0KCRwYXJhbXNbJ2RlZmF1bHR0ZW1wbGF0ZXByZWYnXSkgJiYgJHBhcmFtc1snZGVmYXVsdHRlbXBsYXRlcHJlZiddICE9ICcnICkKICAgICAgewoJJGNvbnRlbnRzID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJHBhcmFtc1snZGVmYXVsdHRlbXBsYXRlcHJlZiddKTsKICAgICAgfQogIH0KIGVsc2UgCiAgIHsKICAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2Zvcm1zdGFydCcsCgkJCSAgICAkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0ICgkaWQsICdkb19lZGl0dGVtcGxhdGUnLCRyZXR1cm5pZCwncG9zdCcsJycsCgkJCQkJCSAgICBmYWxzZSwgJycsICRwYXJhbXMpKTsKICAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RlbXBsYXRlbmFtZScsJHBhcmFtc1sndGVtcGxhdGUnXSk7CiAgICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdoaWRkZW4nLAoJCQkgICAkdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLCAndGVtcGxhdGUnLCAkcGFyYW1zWyd0ZW1wbGF0ZSddICkpOwogICAgICRjb250ZW50cyA9ICR0aGlzLT5HZXRUZW1wbGF0ZSgkcGFyYW1zWydwcmVmaXgnXS4kcGFyYW1zWyd0ZW1wbGF0ZSddKTsKICAgfQoKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0aXRsZScsJHBhcmFtc1sndGl0bGUnXSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbigncHJvbXB0X3RlbXBsYXRlbmFtZScsJHRoaXMtPkxhbmcoJ3Byb21wdF90ZW1wbGF0ZW5hbWUnKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbigncHJvbXB0X3RlbXBsYXRlJywkdGhpcy0+TGFuZygncHJvbXB0X3RlbXBsYXRlJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RlbXBsYXRlJywKCQkgICAgICAkdGhpcy0+Q3JlYXRlVGV4dEFyZWEgKGZhbHNlLCAkaWQsCgkJCQkJICAgICAkY29udGVudHMsICd0ZW1wbGF0ZWNvbnRlbnQnLCAnJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3N1Ym1pdCcsJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0ICgkaWQsICdzdWJtaXRidXR0b24nLAoJCQkJCQkJICR0aGlzLT5MYW5nICgnc3VibWl0JykpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdjYW5jZWwnLCR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCAoJGlkLCAnY2FuY2VsJywgCgkJCQkJCQkgJHRoaXMtPkxhbmcgKCdjYW5jZWwnKSkpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2Zvcm1lbmQnLCR0aGlzLT5DcmVhdGVGb3JtRW5kKCkpOwplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ2VkaXR0ZW1wbGF0ZS50cGwnKTsKCj8+]]></data>
	</file>
	<file>
	  <filename>/action.editupload.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLWZpbGUtc3R5bGU6bGludXg7IHRhYi13aWR0aDoyOyBpbmRlbnQtdGFicy1tb2RlOnQ7IGMtYmFzaWMtb2Zmc2V0OiAyOyAtKi0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojIFZlcnNpb246IDEuMy4wLWJldGExLCBjYWxndXkxMDAwCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOgkvL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCmlmICghJHRoaXMtPkNoZWNrUGVybWlzc2lvbiAoJ01hbmFnZSBVcGxvYWRzJykpCiAgewogICAgcmV0dXJuOwogIH0KCiRkYiA9JiAkdGhpcy0+R2V0RGIoKTsKJHNtYXJ0eS0+YXNzaWduICgndGl0bGUnLCAkdGhpcy0+TGFuZyAoJ2VkaXR1cGxvYWQnKSk7CiAgICAKLy8gY2hlY2sgdGhpbmdzIG91dAppZiAoIWlzc2V0ICgkcGFyYW1zWyd1cGxvYWRfaWQnXSkpCiAgewogICAgJHNtYXJ0eS0+YXNzaWduICgnbWVzc2FnZScsICR0aGlzLT5MYW5nICgnZXJyb3Jfbm9pZCcpKTsKICAgICRzbWFydHktPmFzc2lnbiAoJ2Vycm9yJywgMSk7CiAgICBlY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUgKCdlZGl0dXBsb2FkLnRwbCcpOwogICAgcmV0dXJuOwogIH0KCi8vIGdldCB0aGUgaW5mbyBmcm9tIHRoZSBkYXRhYmFzZSAoZm9yIHRoaXMgZmlsZSkKJHF1ZXJ5ID0KICAiU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXggKCkuCiAgIm1vZHVsZV91cGxvYWRzIFdIRVJFIHVwbG9hZF9pZCA9ID8iOwokZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUgKCRxdWVyeSwgYXJyYXkoJHBhcmFtc1sndXBsb2FkX2lkJ10pKTsKaWYgKCEkZGJyZXN1bHQpCiAgewogICAgJHNtYXJ0eS0+YXNzaWduICgnbWVzc2FnZScsICR0aGlzLT5MYW5nICgnZXJyb3JfZGJlcnJvcicpKTsKICAgICRzbWFydHktPmFzc2lnbiAoJ2Vycm9yJywgMSk7CiAgICBlY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUgKCdlZGl0dXBsb2FkLnRwbCcpOwogICAgcmV0dXJuOwogIH0KJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3cgKCk7CmlmICghJHJvdykKICB7CiAgICAkc21hcnR5LT5hc3NpZ24gKCdtZXNzYWdlJywgJHRoaXMtPkxhbmcgKCdlcnJvcl9kYmVycm9yJykpOwogICAgJHNtYXJ0eS0+YXNzaWduICgnZXJyb3InLCAxKTsKICAgIGVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSAoJ2VkaXR1cGxvYWQudHBsJyk7CiAgICByZXR1cm47CiAgfQoKLy8gR2V0IHRoZSBmaWxlbmFtZSBhbmQgZXh0ZW5zaW9uIG9mIHRoaXMgZmlsZQokZmlsZWV4dGVuc2lvbiA9IHN0cnRvbG93ZXIoc3RycmNocigkcm93Wyd1cGxvYWRfbmFtZSddLCcuJykpOwokY2FuX2dlbl90aHVtYm5haWwgPSAwOwp7CiAgJHRodW1iX2V4dF9hcnIgPSBleHBsb2RlKCIsIiwKCQkJICAgJHRoaXMtPkdldFByZWZlcmVuY2UoJ2F1dG90aHVtYm5haWxfZXh0ZW5zaW9ucycpKTsKICBmb3JlYWNoKCAkdGh1bWJfZXh0X2FyciBhcyAkdGh1bWJfZXh0ICkKICAgIHsKICAgICAgaWYoICIuIi4kdGh1bWJfZXh0ID09ICRmaWxlZXh0ZW5zaW9uICkKCXsKCSAgJGNhbl9nZW5fdGh1bWJuYWlsID0gMTsKCSAgYnJlYWs7Cgl9CiAgICB9Cn0KCi8vIGFuZCB0aGUgY2F0ZWdvcnkgaW5mbyBmb3IgdGhpcyBjYXRlZ29yeQokY2F0cGF0aCA9ICR0aGlzLT5nZXRDYXRlZ29yeVBhdGhGcm9tSUQoJHJvd1sndXBsb2FkX2NhdGVnb3J5X2lkJ10pOwoKLy8gZ2V0IHRoZSBjYXRlZ29yeSBsaXN0CiRjYXRlZ29yeWxpc3QgPSBhcnJheSAoKTsKJHF1ZXJ5ID0KICAiU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXggKCkuCiAgIm1vZHVsZV91cGxvYWRzX2NhdGVnb3JpZXMgT1JERVIgQlkgdXBsb2FkX2NhdGVnb3J5X25hbWUgQVNDIjsKJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlICgkcXVlcnkpOwppZiAoISRkYnJlc3VsdCkKICB7CiAgICAkc21hcnR5LT5hc3NpZ24gKCdlcnJvcicsIDEpOwogICAgJHNtYXJ0eS0+YXNzaWduICgnbWVzc2FnZScsICR0aGlzLT5MYW5nICgnZXJyb3Jfbm9jYXRlZ29yaWVzJykpOwogIH0KIGVsc2UKICAgewogICAgIC8vIHRoaXMgY291bGQgcHJvYmFibHkgYmUgZG9uZSB3aXRoIGEgZm9yX2VhY2gsIGJ1dCB3aGF0IHRoZSBoZWxsCiAgICAgd2hpbGUgKCRyb3cyID0gJGRicmVzdWx0LT5GZXRjaFJvdyAoKSkKICAgICAgIHsKCSAkY2F0ZWdvcnlsaXN0WyRyb3cyWyd1cGxvYWRfY2F0ZWdvcnlfbmFtZSddXSA9CgkgICAkcm93MlsndXBsb2FkX2NhdGVnb3J5X2lkJ107CiAgICAgICB9CiAgIH0KCi8vIHBvcHVsYXRlIHRoZSB0ZW1wbGF0ZQokc21hcnR5LT5hc3NpZ24gKCJzdGFydGZvcm0iLAoJCSAkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0ICgkaWQsICdkb19lZGl0dXBsb2FkJywgJHJldHVybmlkLCAncG9zdCcsICdtdWx0aXBhcnQvZm9ybS1kYXRhJykpOwovLyB0b2RvIGNoZWNrIHRoaXMgdG8gc2VlIGlmIHRoZXJlIGFyZSBzcGFjZXMgaW4gdGhlIG5hbWUKJGFkZHRleHRfdGh1bWJuYWlsID0gJ3RpdGxlPSInLiR0aGlzLT5MYW5nKCd0aXRsZV9jcmVhdGVfdGh1bWJuYWlsJykuJyInOwokc21hcnR5LT5hc3NpZ24gKCdmaXgnLAoJCSAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQgKCRpZCwgJ2ZpeCcsICR0aGlzLT5MYW5nKCdmaXhtZScpKSk7CiRzbWFydHktPmFzc2lnbiAoJ3RodW1ibmFpbCcsCgkJICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCAoJGlkLCAndGh1bWJuYWlsJywgCgkJCQkJICAgJHRoaXMtPkxhbmcoJ2NyZWF0ZV90aHVtYm5haWwnKSwKCQkJCQkgICAkYWRkdGV4dF90aHVtYm5haWwpKTsKJHNtYXJ0eS0+YXNzaWduICgnc3VibWl0JywKCQkgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0ICgkaWQsICdzdWJtaXQnLCAkdGhpcy0+TGFuZygnc3VibWl0JykpKTsKJHNtYXJ0eS0+YXNzaWduICgnY2FuY2VsJywKCQkgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0ICgkaWQsICdjYW5jZWwnLCAkdGhpcy0+TGFuZygnY2FuY2VsJykpKTsKJHNtYXJ0eS0+YXNzaWduICgnZW5kZm9ybScsICR0aGlzLT5DcmVhdGVGb3JtRW5kICgpKTsKICAgIAoKJHNtYXJ0eS0+YXNzaWduICgncHJvbXB0X3VwbG9hZG5hbWUnLCAkdGhpcy0+TGFuZygnbmFtZScpKTsKJHNtYXJ0eS0+YXNzaWduICgnaW5wdXRfdXBsb2FkbmFtZScsIAoJCSAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwnaW5wdXRfdXBsb2FkbmFtZScsCgkJCQkJJHJvd1sndXBsb2FkX25hbWUnXSwgMjAsIDI1NSApKTsKLy8gdGh1bWJuYWlsPwokdG5maWxlID0gJHRoaXMtPl9jYXRlZ29yeVBhdGgoICRjYXRwYXRoLkRJUkVDVE9SWV9TRVBBUkFUT1IuJHJvd1sndXBsb2FkX3RodW1ibmFpbCddICk7CmlmKCBmaWxlX2V4aXN0cyggJHRuZmlsZSApICkKCXsKCQkkdG51cmwgPSAkdGhpcy0+Y21zLT5jb25maWdbJ3VwbG9hZHNfdXJsJ10uIi8iLiRjYXRwYXRoLicvJy4kcm93Wyd1cGxvYWRfdGh1bWJuYWlsJ107CgkJJHNtYXJ0eS0+YXNzaWduICgncHJvbXB0X3RodW1ibmFpbCcsICR0aGlzLT5MYW5nKCd0aHVtYm5haWwnKS4nOicpOwoJCSRzbWFydHktPmFzc2lnbiAoJ3Byb21wdF9uZXd0aHVtYm5haWwnLCAkdGhpcy0+TGFuZygnbmV3dGh1bWJuYWlsJykuJzonKTsKICAgICRzbWFydHktPmFzc2lnbiggJ2lucHV0X25ld3RodW1ibmFpbCcsCgkJCQkJCQkJCQkgJHRoaXMtPkNyZWF0ZUZpbGVVcGxvYWRJbnB1dCgkaWQsJ2lucHV0X25ld3RodW1ibmFpbCcsJycsNTApICk7CiAgICAkc21hcnR5LT5hc3NpZ24gKCdwaWNfdGh1bWJuYWlsJywgJzxpbWcgc3JjPSInLiR0bnVybC4nIiBib3JkZXI9IjAiLz4nKTsKICB9CiRzbWFydHktPmFzc2lnbiAoJ25hbWVtZXNzYWdlJywgJHRoaXMtPkxhbmcoJ3JlbmFtZW1lc3NhZ2UnKSk7CiRzbWFydHktPmFzc2lnbiAoJ3Byb21wdF91cGxvYWRkYXRlJywgJHRoaXMtPkxhbmcoJ2RhdGV1cGxvYWRlZCcpKTsKJHNtYXJ0eS0+YXNzaWduICgnZGF0YV91cGxvYWRkYXRlJywgJHJvd1sndXBsb2FkX2RhdGUnXSk7CiRzbWFydHktPmFzc2lnbiAoJ3Byb21wdF91cGxvYWRzaXplJywgJHRoaXMtPkxhbmcoJ3NpemVrYicpKTsKJHNtYXJ0eS0+YXNzaWduICgnZGF0YV91cGxvYWRzaXplJywgaW50dmFsKCRyb3dbJ3VwbG9hZF9zaXplJ10gLyAxMDI0LjAgKyAwLjUpKTsKJHNtYXJ0eS0+YXNzaWduICgncHJvbXB0X3VwbG9hZGF1dGhvcicsICR0aGlzLT5MYW5nKCdhdXRob3InKSk7CiRzbWFydHktPmFzc2lnbiAoJ2lucHV0X3VwbG9hZGF1dGhvcicsIAoJCSAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwgJ2lucHV0X3VwbG9hZGF1dGhvcicsCgkJCQkJJHJvd1sndXBsb2FkX2F1dGhvciddLCAyMCwgMjU1KSk7CiRzbWFydHktPmFzc2lnbiAoJ3Byb21wdF9tb3ZlY2F0ZWdvcnknLCAkdGhpcy0+TGFuZyAoJ3Byb21wdF9jYXRlZ29yeW5hbWUnKSk7CiRzbWFydHktPmFzc2lnbiAoJ2lucHV0X21vdmVjYXRlZ29yeScsCgkJICR0aGlzLT5DcmVhdGVJbnB1dERyb3BEb3duICgkaWQsICJpbnB1dF9tb3ZlY2F0ZWdvcnkiLCAkY2F0ZWdvcnlsaXN0LCAtMSwKCQkJCQkgICAgICRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9pZCddKSk7CiRzbWFydHktPmFzc2lnbiAoJ3BhdGhtZXNzYWdlJywgJHRoaXMtPkxhbmcoJ3BhdGhtZXNzYWdlJykpOwoKJHNtYXJ0eS0+YXNzaWduICgncHJvbXB0X3VwbG9hZHN1bW1hcnknLCAkdGhpcy0+TGFuZyAoJ3N1bW1hcnknKSk7CiRzbWFydHktPmFzc2lnbiAoJ2lucHV0X3VwbG9hZHN1bW1hcnknLAoJCSAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0ICgkaWQsICdpbnB1dF91cGxvYWRzdW1tYXJ5JywKCQkJCQkgJHJvd1sndXBsb2FkX3N1bW1hcnknXSwgODAsIDI1NSkpOwoKJHNtYXJ0eS0+YXNzaWduICgncHJvbXB0X3VwbG9hZGRlc2MnLCAkdGhpcy0+TGFuZyAoJ2Rlc2NyaXB0aW9uJykpOwokc21hcnR5LT5hc3NpZ24gKCdpbnB1dF91cGxvYWRkZXNjJywKCQkgJHRoaXMtPkNyZWF0ZVRleHRBcmVhIChmYWxzZSwgJGlkLCAkcm93Wyd1cGxvYWRfZGVzY3JpcHRpb24nXSwgJ2lucHV0X3VwbG9hZGRlc2MnICkpOwoKJHNtYXJ0eS0+YXNzaWduICgnaGlkZGVuJywKCQkgJHRoaXMtPkNyZWF0ZUlucHV0SGlkZGVuICgkaWQsICd1cGxvYWRfaWQnLCRwYXJhbXNbJ3VwbG9hZF9pZCddKS4KCQkgJHRoaXMtPkNyZWF0ZUlucHV0SGlkZGVuICgkaWQsICdjYXRlZ29yeV9pZCcsJHBhcmFtc1snY2F0ZWdvcnlfaWQnXSkpOwogICAgCi8vIHBvcHVsYXRlIHRoZSByb3dzIG9mIGRvd25sb2FkIGluZm9ybWF0aW9uCiRxdWVyeSA9ICJTRUxFQ1QgKiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc19kb3dubG9hZHMgV0hFUkUgZmlsZV9pZCA9ID8iOwokZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxdWVyeSwgYXJyYXkoICRwYXJhbXNbJ3VwbG9hZF9pZCddICkgKTsKCiRzbWFydHktPmFzc2lnbignZGF0ZXRleHQnLCAkdGhpcy0+TGFuZygnZGF0ZScpKTsKJHNtYXJ0eS0+YXNzaWduKCdpcHRleHQnLCAkdGhpcy0+TGFuZygnaXBfYWRkcmVzcycpKTsKJHNtYXJ0eS0+YXNzaWduKCd1c2VydGV4dCcsICR0aGlzLT5MYW5nKCd1c2VybmFtZScpKTsKJHJvd2FycmF5ID0gYXJyYXkoKTsKJHJvd2NsYXNzID0gJ3JvdzEnOwp3aGlsZSggJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKSApCiAgewogICAgJG9uZXJvdyA9IG5ldyBzdGRDbGFzcygpOwogICAgJG9uZXJvdy0+ZGF0ZSA9ICRyb3dbJ2Rvd25sb2FkX2RhdGUnXTsKICAgICRvbmVyb3ctPmlwICAgPSAkcm93Wydkb3dubG9hZF9pcCddOwogICAgJG9uZXJvdy0+dXNlciA9ICRyb3dbJ2Rvd25sb2FkX3VzZXInXTsKICAgICRvbmVyb3ctPnJvd2NsYXNzID0gJHJvd2NsYXNzOwkJCSAgICAgCgogICAgYXJyYXlfcHVzaCggJHJvd2FycmF5LCAkb25lcm93KTsKICAgICgkcm93Y2xhc3MgPT0gInJvdzEiID8gJHJvd2NsYXNzID0gInJvdzIiIDogJHJvd2NsYXNzID0gInJvdzEiKTsKICB9Cgokc21hcnR5LT5hc3NpZ24gKCdpdGVtcycsICRyb3dhcnJheSk7CiRzbWFydHktPmFzc2lnbiAoJ2l0ZW1jb3VudCcsIGNvdW50KCRyb3dhcnJheSkpOwoKZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlICgnZWRpdHVwbG9hZC50cGwnKTsKCi8vIEVPRgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.getfile.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojIEF1dGhvcjogUm9iZXJ0IENhbXBiZWxsIDxyb2JAdGVjaGNvbS5keW5kbnMub3JnPgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDoJLy93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgogICAgaWYoICFpc3NldCggJHBhcmFtc1sndXBsb2FkX2lkJ10gKSApCiAgICAgIHsKCS8vIHRvZG8gZGlzcGxheSBlcnJvcgoJJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlICgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwKCQkJCSAgJHRoaXMtPkxhbmcgKCdlcnJvcl9pbnN1ZmZpY2llbnRwYXJhbXMnLCd1cGxvYWRfaWQnKSk7CiAgICAgIH0KCiAgICAvLyBnZXQgdGhlIGlkCiAgICAkZmlsZV9pZCA9ICRwYXJhbXNbJ3VwbG9hZF9pZCddOwogICAgCiAgICAvLyBnZXQgdGhlIGRldGFpbHMKICAgICRmaWxlX2RldGFpbHMgPSAkdGhpcy0+X2dldFVwbG9hZEZpbGVEZXRhaWxzKCAkZmlsZV9pZCApOwogICAgaWYoICEkZmlsZV9kZXRhaWxzWyd1cGxvYWRfbmFtZSddICkgCiAgICAgIHsKCS8vIHRvZG8gZGlzcGxheSBlcnJvcgoJJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlKCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwKCQkJCSAgJHRoaXMtPkxhbmcoICdlcnJvcl9maWxlbm90Zm91bmQnLCAkZmlsZV9pZCApICk7CglyZXR1cm47CiAgICAgIH0KICAgICRjYXRlZ29yeV9kZXRhaWxzID0gJHRoaXMtPl9nZXRVcGxvYWRDYXRlZ29yeURldGFpbHMoICRmaWxlX2RldGFpbHNbJ3VwbG9hZF9jYXRlZ29yeV9pZCddICk7CiAgICAkcGF0aCA9ICcvJzsKICAgIGlmKCAhJGNhdGVnb3J5X2RldGFpbHNbJ3VwbG9hZF9jYXRlZ29yeV9wYXRoJ10gKSAKICAgICAgewoJLy8gdG9kbyBkaXNwbGF5IGVycm9yCgkkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UoICRpZCwgJHBhcmFtcywgJHJldHVybmlkLAoJCQkJICR0aGlzLT5MYW5nKCAnZXJyb3JfZGJlcnJvcicgKSApOwoJcmV0dXJuOwogICAgICB9CgogICAgCiAgICAkZmlsZSA9ICR0aGlzLT5fdXBsb2FkUGF0aCggJGNhdGVnb3J5X2RldGFpbHNbJ3VwbG9hZF9jYXRlZ29yeV9wYXRoJ10sCgkJCSAgICAgICBzdHJfcmVwbGFjZSggYXJyYXkoJyAnLCclMjAnKSxhcnJheSgnXycsJ18nKSwkZmlsZV9kZXRhaWxzWyd1cGxvYWRfbmFtZSddICkgKTsKICAgCiAgICBpZiggIWZpbGVfZXhpc3RzKCAkZmlsZSApIHx8ICFpc19yZWFkYWJsZSggJGZpbGUgKSApCiAgICAgIHsKCS8vIHRvZG8gZGlzcGxheSBlcnJvcgoJJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlKCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwKCQkJCSAkdGhpcy0+TGFuZyggJ2Vycm9yX2ZpbGVub3Rmb3VuZCcsICRmaWxlICkgKTsKCXJldHVybjsKICAgICAgfQoKCi8vIGNoZWNrIGZvciBwZXJtaXNzaW9uLCBpZiBGRVUgbW9kdWxlIGV4aXN0cywgYW5kIHRoZSB1cGxvYWRzIGdyb3VwbGlzdCBpcwovLyBub3QgbnVsbCwgYW5kIHRoZSByZXR1cm5pZCBpcyBub3QgZW1wdHkgKHdlJ3JlIG9uIHRoZSBmcm9udGVuZCkKJHJlc3VsdCA9ICR0aGlzLT5fQ2hlY2tEb3dubG9hZFNlY3VyaXR5KCRjYXRlZ29yeV9kZXRhaWxzLCRyZXR1cm5pZCk7CmlmKCAhJHJlc3VsdCApCiAgewogICAgJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlKCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwKCQkJICAgICAgJHRoaXMtPkxhbmcoJ2Vycm9yX3Blcm1pc3Npb25kZW5pZWQnKSApOwogICAgcmV0dXJuOwogIH0KCi8vIHR1cm4gb2ZmIHpsaWIgY29tcHJlc3Npb24gCmlmKGluaV9nZXQoJ3psaWIub3V0cHV0X2NvbXByZXNzaW9uJykpCiAgewogICAgaW5pX3NldCgnemxpYi5vdXRwdXRfY29tcHJlc3Npb24nLCAnT2ZmJyk7CiAgfQoKaWYoIWluaV9nZXRfYm9vbGVhbignc2FmZV9tb2RlJykpCiAgewogICAgc2V0X3RpbWVfbGltaXQoMCk7CiAgfQoKJGNodW5rc2l6ZSA9IGludHZhbCgkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZG93bmxvYWRfY2h1bmtzaXplJyw4KSkgKiAxMDI0OwokYm4gPSBiYXNlbmFtZSgkZmlsZSk7CgokaGFuZGxlcnMgPSBvYl9saXN0X2hhbmRsZXJzKCk7IApmb3IgKCRjbnQgPSAwOyAkY250IDwgc2l6ZW9mKCRoYW5kbGVycyk7ICRjbnQrKykgeyBvYl9lbmRfY2xlYW4oKTsgfQovLyAgICAgQG9iX2NsZWFuKCk7Ci8vICAgICBAb2JfY2xlYW4oKTsKaGVhZGVyKCdQcmFnbWE6IHB1YmxpYycpOwpoZWFkZXIoJ0V4cGlyZXM6IDAnKTsKaGVhZGVyKCdDYWNoZS1Db250cm9sOiBtdXN0LXJldmFsaWRhdGUsIHBvc3QtY2hlY2s9MCwgcHJlLWNoZWNrPTAnKTsKaGVhZGVyKCdDYWNoZS1Db250cm9sOiBwcml2YXRlJyxmYWxzZSk7CmhlYWRlcignQ29udGVudC1EZXNjcmlwdGlvbjogRmlsZSBUcmFuc2ZlcicpOwpoZWFkZXIoJ0NvbnRlbnQtVHlwZTogYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtJyk7CmhlYWRlcigiQ29udGVudC1EaXNwb3NpdGlvbjogYXR0YWNobWVudDsgZmlsZW5hbWU9XCIkYm5cIiIgKTsKaGVhZGVyKCdDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiBiaW5hcnknKTsKaGVhZGVyKCdDb250ZW50LUxlbmd0aDogJyAuIGZpbGVzaXplKCRmaWxlKSk7CgokaGFuZGxlPWZvcGVuKCRmaWxlLCdyYicpOwokY29udGVudHMgPSAnJzsKZG8gewogICRkYXRhID0gZnJlYWQoJGhhbmRsZSwkY2h1bmtzaXplKTsKICBpZiggc3RybGVuKCRkYXRhKSA9PSAwICkgYnJlYWs7CiAgcHJpbnQoJGRhdGEpOyAKIH0gd2hpbGUodHJ1ZSk7CmZjbG9zZSgkaGFuZGxlKTsKCi8vIG5vdyB0byBhZGQgdGhlIGRvd25sb2FkIHNodHVmZiB0byB0aGUgZGF0YWJhc2UKLy8gaWYgd2UgYXJlIG5vdCBleGNsdWRpbmcgdGhpcyBzdWJuZXQKJHN1Ym5ldHMgPSBzcGxpdCgiLCIsJHRoaXMtPkdldFByZWZlcmVuY2UoInN1Ym5ldF9leGNsdXNpb24iKSk7CiR0ZXN0ID0gMDsKZm9yZWFjaCgkc3VibmV0cyBhcyAkc3VibmV0KQp7CiAgJHRlc3QgPSAkdGhpcy0+X3Rlc3RpcCggJHN1Ym5ldCwgZ2V0ZW52KCJSRU1PVEVfQUREUiIgKSApOwogIGlmKCAkdGVzdCApCiAgICB7CiAgICAgIC8vIGRvbid0IGFsbG93IGFueSBtb3JlIHByb2Nlc3NpbmcKICAgICAgZXhpdCgpOwogICAgfQp9CgovLyBnZXQgYSBuZXcgdmFsdWUgZnJvbSB0aGUgc2VxdWVuY2UgZGF0YWJhc2UKJGRiID0mICR0aGlzLT5HZXREYigpOwokbmV3aWQgPSAkZGItPkdlbklEKCBjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX2Rvd25sb2Fkc19zZXEiICk7CgovLyBnZXQgYSB1c2VybmFtZQokdXNlcm5hbWUgPSAndW5rbm93bic7CiRmZXVzZXJzID0gJHRoaXMtPkdldE1vZHVsZUluc3RhbmNlKCdGcm9udEVuZFVzZXJzJyk7CmlmKCAkZmV1c2VycyApCiAgewogICAgJG5hbWUgPSAkZmV1c2Vycy0+TG9nZ2VkaW5OYW1lKCk7CiAgICBpZiggJG5hbWUgIT0gIiIgKQogICAgICB7CgkkdXNlcm5hbWUgPSAkbmFtZTsKICAgICAgfQogIH0KCi8vIGluc2VydCB0aGUgZG93bmxvYWQgcmVjb3JkCiRxdWVyeSA9ICJJTlNFUlQgSU5UTyAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfZG93bmxvYWRzIFZBTFVFUyAoPyw/LD8sPyw/KSI7CiRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHF1ZXJ5LCAKCQkJICBhcnJheSggJG5ld2lkLCAkZmlsZV9pZCwgCgkJCQkgdHJpbSgkZGItPkRCVGltZVN0YW1wKHRpbWUoKSksIiciKSwKCQkJCSBnZXRlbnYoIlJFTU9URV9BRERSIiksICR1c2VybmFtZSkgKTsKLyogSSB3b3VsZCBub3JtYWxseSBkaXNwbGF5IGFuIGVycm9yIG1lc3NhZ2UsIGJ1dCBkb24ndCB3YW50IHBlb3BsZSB0byBuZWNlc3NhcmlseSBrbm93IEkgYW0gdHJhY2tpbmcgdGhlbSAqLwokdGhpcy0+QXVkaXQoIDAsICR0aGlzLT5sYW5nKCdmcmllbmRseW5hbWUnKSwKCSAgICAgICR0aGlzLT5sYW5nKCdkb3dubG9hZGVkJywgJGZpbGUpICk7CgovLyBzZW5kIGFuIGV2ZW50CiRwYXJtcyA9IGFycmF5KCk7CiRwYXJtc1snaWQnXSA9ICRmaWxlX2lkOwokcGFybXNbJ25hbWUnXSA9ICRmaWxlOwokcGFybXNbJ2lwJ10gPSBnZXRlbnYoIlJFTU9URV9BRERSIik7CiR0aGlzLT5TZW5kRXZlbnQoICdPbkRvd25sb2FkJywgJHBhcm1zICk7CgovLyBkb24ndCBhbGxvdyBhbnkgbW9yZSBwcm9jZXNzaW5nCmV4aXQoKTsKPz4K]]></data>
	</file>
	<file>
	  <filename>/action.getimage.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojIEF1dGhvcjogUm9iZXJ0IENhbXBiZWxsIDxyb2JAdGVjaGNvbS5keW5kbnMub3JnPgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDoJLy93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgovLyBOb3RlOiBUaGlzIGZpbGUgaXMgdmlydHVhbGx5IGlkZW50aWNhbCB0byBhY3Rpb24uZ2V0ZmlsZS5waHAKLy8gYW5kIHRoaXMgc2hvdWxkIGJlIG9wdGltaXplZAoKaWYoICFpc3NldCggJHBhcmFtc1sndXBsb2FkX2lkJ10gKSApCiAgewogICAgLy8gdG9kbywgYWRkIHNvbWV0aGluZyB0byBhbiBlcnJvciBsb2cKICAgIHJldHVybjsKICB9CgovLyBnZXQgdGhlIGlkCiRmaWxlX2lkID0gJHBhcmFtc1sndXBsb2FkX2lkJ107CgovLyBnZXQgdGhlIGRldGFpbHMKJGZpbGVfZGV0YWlscyA9ICR0aGlzLT5fZ2V0VXBsb2FkRmlsZURldGFpbHMoICRmaWxlX2lkICk7CmlmKCAhJGZpbGVfZGV0YWlsc1sndXBsb2FkX25hbWUnXSApIAogIHsKICAgIC8vIHRvZG8gZGlzcGxheSBlcnJvcgogICAgcmV0dXJuOwogIH0KJGNhdGVnb3J5X2RldGFpbHMgPSAkdGhpcy0+X2dldFVwbG9hZENhdGVnb3J5RGV0YWlscyggJGZpbGVfZGV0YWlsc1sndXBsb2FkX2NhdGVnb3J5X2lkJ10gKTsKJHBhdGggPSAnLyc7CmlmKCAhJGNhdGVnb3J5X2RldGFpbHNbJ3VwbG9hZF9jYXRlZ29yeV9wYXRoJ10gKSAKICB7CiAgICAvLyB0b2RvIGRpc3BsYXkgZXJyb3IKICAgIHJldHVybjsKICB9CgoKJGZpbGUgPSAkdGhpcy0+X3VwbG9hZFBhdGgoICRjYXRlZ29yeV9kZXRhaWxzWyd1cGxvYWRfY2F0ZWdvcnlfcGF0aCddLAoJCQkgICAgc3RyX3JlcGxhY2UoIGFycmF5KCcgJywnJTIwJyksYXJyYXkoJ18nLCdfJyksJGZpbGVfZGV0YWlsc1sndXBsb2FkX25hbWUnXSApICk7CgppZiggIWZpbGVfZXhpc3RzKCAkZmlsZSApIHx8ICFpc19yZWFkYWJsZSggJGZpbGUgKSApCiAgewogICAgLy8gdG9kbyBkaXNwbGF5IGVycm9yCiAgICByZXR1cm47CiAgfQoKLy8gY2hlY2sgZm9yIHBlcm1pc3Npb24sIGlmIEZFVSBtb2R1bGUgZXhpc3RzLCBhbmQgdGhlIHVwbG9hZHMgZ3JvdXBsaXN0IGlzCi8vIG5vdCBudWxsLCBhbmQgdGhlIHJldHVybmlkIGlzIG5vdCBlbXB0eSAod2UncmUgb24gdGhlIGZyb250ZW5kKQokcmVzdWx0ID0gJHRoaXMtPl9DaGVja0Rvd25sb2FkU2VjdXJpdHkoJGNhdGVnb3J5X2RldGFpbHMsJHJldHVybmlkKTsKaWYoICEkcmVzdWx0ICkKICB7CiAgICAvLyB0b2RvLCBkaXNwbGF5IGVycm9yIHNvbWVob3cKICAgIHJldHVybjsKICB9CgovLyB0dXJuIG9mZiB6bGliIGNvbXByZXNzaW9uIAppZihAaW5pX2dldCgnemxpYi5vdXRwdXRfY29tcHJlc3Npb24nKSkKICB7CiAgICBAaW5pX3NldCgnemxpYi5vdXRwdXRfY29tcHJlc3Npb24nLCAnT2ZmJyk7CiAgfQoKaWYoIUBpbmlfZ2V0X2Jvb2xlYW4oJ3NhZmVfbW9kZScpKQogIHsKICAgIEBzZXRfdGltZV9saW1pdCgwKTsKICB9CgokY2h1bmtzaXplID0gaW50dmFsKCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdkb3dubG9hZF9jaHVua3NpemUnLDgpKSAqIDEwMjQ7CgokaGFuZGxlcnMgPSBvYl9saXN0X2hhbmRsZXJzKCk7IApmb3IgKCRjbnQgPSAwOyAkY250IDwgc2l6ZW9mKCRoYW5kbGVycyk7ICRjbnQrKykgeyBvYl9lbmRfY2xlYW4oKTsgfQoKaGVhZGVyKCdDb250ZW50LVR5cGU6IGltYWdlLyonKTsKaGVhZGVyKCdDb250ZW50LUxlbmd0aDogJyAuIGZpbGVzaXplKCRmaWxlKSk7CiRoYW5kbGU9Zm9wZW4oJGZpbGUsJ3JiJyk7CiRjb250ZW50cyA9ICcnOwpkbyB7CiAgJGRhdGEgPSBmcmVhZCgkaGFuZGxlLCRjaHVua3NpemUpOwogIGlmKCBzdHJsZW4oJGRhdGEpID09IDAgKSBicmVhazsKICBwcmludCgkZGF0YSk7IAogfSB3aGlsZSh0cnVlKTsKZmNsb3NlKCRoYW5kbGUpOwoKLy8gbm93IHRvIGFkZCB0aGUgZG93bmxvYWQgc2h0dWZmIHRvIHRoZSBkYXRhYmFzZQovLyBpZiB3ZSBhcmUgbm90IGV4Y2x1ZGluZyB0aGlzIHN1Ym5ldAokc3VibmV0cyA9IHNwbGl0KCIsIiwkdGhpcy0+R2V0UHJlZmVyZW5jZSgic3VibmV0X2V4Y2x1c2lvbiIpKTsKJHRlc3QgPSAwOwpmb3JlYWNoKCRzdWJuZXRzIGFzICRzdWJuZXQpCnsKICAkdGVzdCA9ICR0aGlzLT5fdGVzdGlwKCAkc3VibmV0LCBnZXRlbnYoIlJFTU9URV9BRERSIiApICk7CiAgaWYoICR0ZXN0ICkKICAgIHsKICAgICAgLy8gZG9uJ3QgYWxsb3cgYW55IG1vcmUgcHJvY2Vzc2luZwogICAgICBleGl0KCk7CiAgICB9Cn0KCi8vIGdldCBhIG5ldyB2YWx1ZSBmcm9tIHRoZSBzZXF1ZW5jZSBkYXRhYmFzZQokZGIgPSYgJHRoaXMtPkdldERiKCk7CiRuZXdpZCA9ICRkYi0+R2VuSUQoIGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfZG93bmxvYWRzX3NlcSIgKTsKCi8vIGdldCBhIHVzZXJuYW1lCiR1c2VybmFtZSA9ICd1bmtub3duJzsKJGZldXNlcnMgPSAkdGhpcy0+R2V0TW9kdWxlSW5zdGFuY2UoJ0Zyb250RW5kVXNlcnMnKTsKaWYoICRmZXVzZXJzICkKICB7CiAgICAkbmFtZSA9ICRmZXVzZXJzLT5Mb2dnZWRpbk5hbWUoKTsKICAgIGlmKCAkbmFtZSAhPSAiIiApCiAgICAgIHsKCSR1c2VybmFtZSA9ICRuYW1lOwogICAgICB9CiAgfQoKLy8gaW5zZXJ0IHRoZSBkb3dubG9hZCByZWNvcmQKJHF1ZXJ5ID0gIklOU0VSVCBJTlRPICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc19kb3dubG9hZHMgVkFMVUVTICg/LD8sPyw/LD8pIjsKJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcXVlcnksIAoJCQkgIGFycmF5KCAkbmV3aWQsICRmaWxlX2lkLCAKCQkJCSB0cmltKCRkYi0+REJUaW1lU3RhbXAodGltZSgpKSwiJyIpLAoJCQkJIGdldGVudigiUkVNT1RFX0FERFIiKSwgJHVzZXJuYW1lKSApOwovKiBJIHdvdWxkIG5vcm1hbGx5IGRpc3BsYXkgYW4gZXJyb3IgbWVzc2FnZSwgYnV0IGRvbid0IHdhbnQgcGVvcGxlIHRvIG5lY2Vzc2FyaWx5IGtub3cgSSBhbSB0cmFja2luZyB0aGVtICovCiR0aGlzLT5BdWRpdCggMCwgJHRoaXMtPmxhbmcoJ2ZyaWVuZGx5bmFtZScpLAoJICAgICAgJHRoaXMtPmxhbmcoJ2Rvd25sb2FkZWQnLCAkZmlsZSkgKTsKCi8vIGRvbid0IGFsbG93IGFueSBtb3JlIHByb2Nlc3NpbmcKZXhpdCgpOwoKLy8gRU9GCj8+]]></data>
	</file>
	<file>
	  <filename>/action.makedefaulttemplate.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFF1ZXN0aW9ucyAtIGEgc2ltcGxlIFF1ZXN0aW9ucyAmIEFuc3dlciBtb2R1bGUKIyBWZXJzaW9uOiAxLjAsIGNhbGd1eTEwMDAgPGNhbGd1eTEwMDBAaG90bWFpbC5jb20+CiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMgVGhlIG1vZHVsZSdzIGhvbWVwYWdlIGlzOiBodHRwOi8vZGV2LmNtc21hZGVzaW1wbGUub3JnL3Byb2plY3RzL3NrZWxldG9uLwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCmlmKCAhaXNzZXQoICRnQ21zICkgKSBleGl0KCk7CgoKaWYoICEgJHRoaXMtPkNoZWNrUGVybWlzc2lvbignTW9kaWZ5IFRlbXBsYXRlcycpICkKICB7CiAgICAvLyB0b2RvLCBwZXJtaXNzaW9ucyBtZXNzYWdlIGhlcmUKICAgIHJldHVybjsKICB9CgppZiggIWlzc2V0KCAkcGFyYW1zWyd0ZW1wbGF0ZSddICkgKQogIHsKICAgICRwYXJhbXNbJ2Vycm9ycyddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcycsJ3RlbXBsYXRlJyk7CiAgICAkdGhpcy0+bXlSZWRpcmVjdFRvVGFiKCRpZCwkcGFyYW1zWydhY3RpdmVfdGFiJ10sJycsJHBhcmFtcyk7CiAgICByZXR1cm47CiAgfQoKaWYoICFpc3NldCggJHBhcmFtc1snZGVmYXVsdHByZWZuYW1lJ10gKSApCiAgewogICAgJHBhcmFtc1snZXJyb3JzJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJywnZGVmYXVsdHByZWZuYW1lJyk7CiAgICAkdGhpcy0+bXlSZWRpcmVjdFRvVGFiKCRpZCwkcGFyYW1zWydhY3RpdmVfdGFiJ10sJycsJHBhcmFtcyk7CiAgICByZXR1cm47CiAgfQoKJHRoaXMtPlNldFByZWZlcmVuY2UoJHBhcmFtc1snZGVmYXVsdHByZWZuYW1lJ10sJHBhcmFtc1sndGVtcGxhdGUnXSk7CiR0aGlzLT5teVJlZGlyZWN0VG9UYWIoJGlkLCRwYXJhbXNbJ2FjdGl2ZV90YWInXSk7Ci8vIEVPRgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.save_admin_prefs.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIgbW9kdWxlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOgkvL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCmlmICghJHRoaXMtPkNoZWNrUGVybWlzc2lvbiAoJ01vZGlmeSBTaXRlIFByZWZlcmVuY2VzJykpCiAgewogICAgcmV0dXJuOwogIH0KCiR0aGlzLT5TZXRQcmVmZXJlbmNlICgnbWF4X3VwbG9hZHNpemUnLAoJCSAgICAgIGlzc2V0ICgkcGFyYW1zWydtYXhfdXBsb2Fkc2l6ZSddKSA/CgkJICAgICAgJHBhcmFtc1snbWF4X3VwbG9hZHNpemUnXSA6ICcwJyk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlICgndmFsaWRfdXBsb2FkZXh0ZW5zaW9ucycsCgkJICAgICAgaXNzZXQgKCRwYXJhbXNbJ3ZhbGlkX3VwbG9hZGV4dGVuc2lvbnMnXSkgPwoJCSAgICAgICRwYXJhbXNbJ3ZhbGlkX3VwbG9hZGV4dGVuc2lvbnMnXSA6ICcwJyk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlICgnc3VibmV0X2V4Y2x1c2lvbnMnLAoJCSAgICAgIGlzc2V0ICgkcGFyYW1zWydzdWJuZXRfZXhjbHVzaW9ucyddKSA/CgkJICAgICAgJHBhcmFtc1snc3VibmV0X2V4Y2x1c2lvbnMnXSA6ICcwJyk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlICgncmVxdWlyZWZpbGVuYW1lX2V4dGVuc2lvbnMnLAoJCSAgICAgIGlzc2V0ICgkcGFyYW1zWydpbnB1dF9lbmZvcmNlZXh0ZW5zaW9ucyddKSA/CgkJICAgICAgJHBhcmFtc1snaW5wdXRfZW5mb3JjZWV4dGVuc2lvbnMnXSA6ICcwJyk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlICgnY3JlYXRlX2R1bW15X2luZGV4X2h0bWwnLAoJCSAgICAgIGlzc2V0ICgkcGFyYW1zWydpbnB1dF9kdW1teV9pbmRleF9odG1sJ10pID8KCQkgICAgICAkcGFyYW1zWydpbnB1dF9kdW1teV9pbmRleF9odG1sJ10gOiAnMCcpOwokdGhpcy0+c2V0UHJlZmVyZW5jZSAoJ3NlbmRfdXBsb2FkX25vdGlmaWNhdGlvbnNfdG8nLAoJCSAgICAgIGlzc2V0ICgkcGFyYW1zWydlbWFpbF9vbl91cGxvYWQnXSkgPwoJCSAgICAgICRwYXJhbXNbJ2VtYWlsX29uX3VwbG9hZCddIDogJycgKTsgICAgCiR0aGlzLT5TZXRQcmVmZXJlbmNlICgncmVkaXJlY3Rfb25fdXBsb2FkJywKCQkgICAgICBpc3NldCAoJHBhcmFtc1sncmVkaXJlY3Rfb25fdXBsb2FkJ10pID8KCQkgICAgICAkcGFyYW1zWydyZWRpcmVjdF9vbl91cGxvYWQnXSA6ICcnICk7ICAgIAokdGhpcy0+U2V0UHJlZmVyZW5jZSAoJ3VzZXJ0YWdfb251cGxvYWQnLAoJCSAgICAgIGlzc2V0ICgkcGFyYW1zWydpbnB1dF91c2VydGFnX29udXBsb2FkJ10pID8KCQkgICAgICAkcGFyYW1zWydpbnB1dF91c2VydGFnX29udXBsb2FkJ10gOiAnJyApOwokdGhpcy0+U2V0UHJlZmVyZW5jZSAoJ2F1dG90aHVtYm5haWxfZXh0ZW5zaW9ucycsCgkJICAgICAgaXNzZXQgKCRwYXJhbXNbJ2F1dG90aHVtYm5haWxfZXh0ZW5zaW9ucyddKSA/CgkJICAgICAgJHBhcmFtc1snYXV0b3RodW1ibmFpbF9leHRlbnNpb25zJ10gOiAnJyApOwokdGhpcy0+U2V0UHJlZmVyZW5jZSAoJ2F1dG90aHVtYm5haWxfc2l6ZScsCgkJICAgICAgaXNzZXQgKCRwYXJhbXNbJ2F1dG90aHVtYm5haWxfc2l6ZSddKSA/CgkJICAgICAgJHBhcmFtc1snYXV0b3RodW1ibmFpbF9zaXplJ10gOiAnJyApOwokdGhpcy0+U2V0UHJlZmVyZW5jZSAoJ2Rvd25sb2FkX2NodW5rc2l6ZScsCgkJICAgICAgaXNzZXQgKCRwYXJhbXNbJ2Rvd25sb2FkX2NodW5rc2l6ZSddKSA/CgkJICAgICAgJHBhcmFtc1snZG93bmxvYWRfY2h1bmtzaXplJ10gOiA4ICk7CiR0aGlzLT5teVJlZGlyZWN0VG9UYWIoICRpZCwgJ2FkbWluX3ByZWZzJyApOwoKLy8gRU9GCj8+]]></data>
	</file>
	<file>
	  <filename>/action.setdefaulttemplate.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojIEF1dGhvcjogUm9iZXJ0IENhbXBiZWxsIDxyb2JAdGVjaGNvbS5keW5kbnMub3JnPgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDoJLy93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgppZiggaXNzZXQoJHBhcmFtc1sncmVzZXR0b2RlZmF1bHQnXSkgJiYKICAgIGlzc2V0KCRwYXJhbXNbJ3ByZWZuYW1lJ10pICYmCiAgICBpc3NldCgkcGFyYW1zWydmaWxlbmFtZSddKSApCiAgewogICAgJGZuID0gZGlybmFtZShfX0ZJTEVfXykuRElSRUNUT1JZX1NFUEFSQVRPUi4KICAgICAgJ3RlbXBsYXRlcycuRElSRUNUT1JZX1NFUEFSQVRPUi4kcGFyYW1zWydmaWxlbmFtZSddOwogICAgaWYoIGZpbGVfZXhpc3RzKCAkZm4gKSApCiAgICAgIHsKCSR0ZW1wbGF0ZSA9IEBmaWxlX2dldF9jb250ZW50cygkZm4pOwoJJHRoaXMtPlNldFByZWZlcmVuY2UoJHBhcmFtc1sncHJlZm5hbWUnXSwkdGVtcGxhdGUpOwogICAgICB9CiAgfQogZWxzZSBpZiggaXNzZXQoJHBhcmFtc1snc3VibWl0J10pICYmCgkgIGlzc2V0KCRwYXJhbXNbJ3ByZWZuYW1lJ10pICkKICAgewogICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCRwYXJhbXNbJ3ByZWZuYW1lJ10sJHBhcmFtc1snaW5wdXRfdGVtcGxhdGUnXSk7CiAgIH0KCmlmKCBpc3NldCggJHBhcmFtc1snYWN0aXZlX3RhYiddICkgKQogIHsKICAgICR0aGlzLT5teVJlZGlyZWN0VG9UYWIoJGlkLCRwYXJhbXNbJ2FjdGl2ZV90YWInXSk7CiAgfQokdGhpcy0+bXlSZWRpcmVjdCgkaWQsJ2RlZmF1bHRhZG1pbicpOwoKLy8gRU9GCj8+]]></data>
	</file>
	<file>
	  <filename>/action.uploadicon.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojIEF1dGhvcjogUm9iZXJ0IENhbXBiZWxsIDxyb2JAdGVjaGNvbS5keW5kbnMub3JnPgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDoJLy93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgppZiggISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01hbmFnZSBVcGxvYWRzJykgKQogIHsKICAgIHJldHVybjsKICB9CgokZGlyID0gZGlybmFtZShfX0ZJTEVfXykuRElSRUNUT1JZX1NFUEFSQVRPUi4naW1hZ2VzJy5ESVJFQ1RPUllfU0VQQVJBVE9SOwoKJHJldCA9ICR0aGlzLT5faGFuZGxlVXBsb2FkKCRkaXIsCgkJCSAgICAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnbWF4X3VwbG9hZHNpemUnLDEwMDAwMDApKjEwMjQsCgkJCSAgICAkaWQuJ2lucHV0X3VwbG9hZF9pY29uJyk7CgokcGFybXMgPSBhcnJheSgpOwppZiggaXNfYXJyYXkoICRyZXQgKSAmJiAkcmV0WzBdID09PSBmYWxzZSApCiAgewogICAgJHBhcm1zWydlcnJvcnMnXT0kcmV0WzFdOwogIH0KJHRoaXMtPm15UmVkaXJlY3RUb1RhYigkaWQsJHBhcmFtc1snYWN0aXZlX3RhYiddLCRwYXJtcyk7CgovLyBFT0YKPz4=]]></data>
	</file>
	<file>
	  <filename>/changelog.inc</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PHVsPgo8bGk+CjxwPlZlcnNpb24gMS4wLiAtIFNlcHRlbWJlciAyMDA1LjwvcD4KPHA+IEluaXRpYWwgUmVsZWFzZS48L3A+CjwvbGk+CjxsaT4KPHA+VmVyc2lvbiAxLjAxLiAtIFNlcHRlbWJlciAyMDA1PC9wPgo8cD5NaW5vciBmaXhlcy48L3A+PC9saT4KPGxpPgo8cD5WZXJzaW9uIDEuMDIuIC0gU2VwdGVtYmVyIDIwMDU8L3A+CjxwPkFkZGVkIGFiaWxpdHkgdG8gc3BlY2lmeSBzb3J0IG9yZGVyPC9wPgo8L2xpPgo8bGk+CjxwPlZlcnNpb24gMS4wMy4gLSBTZXB0ZW1iZXIgMjAwNTwvcD4KPHA+Rml4IHJlZ2FyZGluZyBjb25mbGljdCBpbiB0ZW1wbGF0ZSBuYW1lczwvcD4KPC9saT4KPGxpPgo8cD5WZXJzaW9uIDEuMDQuIC0gU2VwdGVtYmVyIDIwMDU8L3A+CjxwPkFkZGVkIGFiaWxpdHkgdG8gcmUtc2NhbiBhIGRpcmVjdG9yeSwgYW5kIHRvIHVwbG9hZCBmaWxlcyBmcm9tIHRoZSBhZG1pbiBwYWdlPC9wPgo8L2xpPgo8bGk+CjxwPlZlcnNpb24gMS4wNS4gLSBTZXB0ZW1iZXIgMjAwNTwvcD4KPHA+Rml4ZWQgc29tZSBQSFAgdmFyaWFibGUgaXNzdWVzPC9wPgo8L2xpPgo8bGk+CjxwPlZlcnNpb24gMS4wNi4gLSBTZXB0ZW1iZXIgMjAwNTwvcD4KPHA+QWRkZWQgYXV0aG9yIGZpZWxkIHRvIHRoZSBhZG1pbiBwYW5lbCB1cGxvYWQgZm9ybSwgYWRkZWQgYSBzdW1tYXJ5IGZpZWxkLCBhbmQgbWFkZSBkZXNjcmlwdGlvbiBhIHRleHQgYXJlYSwgYW5kIGFsbG93IHRoZSB1c2VyIHRvIHNwZWNpZnkgYSBkZXN0aW5hdGlvbiBmaWxlIG5hbWU8L3A+CjwvbGk+CjxsaT4KPHA+VmVyc2lvbiAxLjA3LiAtIFNlcHRlbWJlciAyMDA1PC9wPgo8cD5BZGRlZCB0aGUgYWJpbGl0eSB0byByZW5hbWUgZmlsZXMgYW5kIGZpeGVkIGEgc2NhbiBlcnJvcjwvcD4KPC9saT4KPGxpPgo8cD5WZXJzaW9uIDEuMDguIC0gU2VwdGVtYmVyIDIwMDU8L3A+CjxwPkJldHRlciBoYW5kbGluZyBvZiBuYW1lcyB3aXRoIHNwYWNlcywgYW5kIGEgZmV3IG1pbm9yIGVycm9ycyBmaXhlZC4gIEFkZGVkIHN3ZWRpc2ggdHJhbnNsYXRpb24gKHRoYW5rcyB3ZXN0aXMpPC9wPjwvbGk+CjxsaT4KPHA+VmVyc2lvbiAxLjEuMC4gLSBPY3RvYmVyIDIwMDU8L3A+CiA8dWw+CiAgIDxsaT5Nb2RpZmllZCBBdHRlbXB0VXBsb2FkIGZ1bmN0aW9uIHNvIGl0IGNvdWxkIGJlIGNhbGxlZCBleHRlcm5hbGx5PC9saT4KICAgPGxpPkFkZGVkIEdldFVwbG9hZERldGFpbHMgZnVuY3Rpb24gdGhhdCByZXR1cm5zIGFsbCBvZiB0aGUgZGV0YWlscyBhYm91dCBhIG1vZHVsZSwgaW5jbHVkaW5nIGEgbGluazwvbGk+CiAgIDxsaT5BZGRlZCBSZWRpcmVjdHMgc28gdGhhdCB3b3JraW5nIHdpdGggdGhlIG1vZHVsZSBpcyBhbG90IG5pY2VyLCBpdCByZXR1cm5zIHRvIHRoZSByaWdodCB0YWI8L2xpPgogICA8bGk+Q2hhbmdlZCB0aGUgZnJvbnQgdGVtcGxhdGUgdG8gbG9vayBhIGxpdHRsZSBiZXR0ZXIgYW5kIG1ha2UgbW9yZSBzZW5zZTwvbGk+CiAgIDxsaT5GaXhlcyB0byB0aGUgdXBsb2FkcyBzdHVmZiBzbyB0aGF0IHRoZSBkZXNjcmlwdGlvbiBpcyBzZXQsIGFuZCBuYW1lIGFuZCBzdW1tYXJ5IGFyZSBwdXQgaW4gdGhlIHJpZ2h0IHBsYWNlPC9saT4KICAgPGxpPkZpeGVzIHRvIGV2ZW4gYmV0dGVyIGhhbmRsZSBzcGFjZXMgaW4gbmFtZXM8L2xpPgogICA8bGk+T3B0aW9uYWx5IHBsYWNlIGR1bW15IGluZGV4Lmh0bWwgZmlsZXMgaW4gZWFjaCB1cGxvYWQgZGlyZWN0b3J5PC9saT4KICAgPGxpPklmIHNwZWNpZnlpbmcgYSBkZXN0aW5hdGlvbiBuYW1lLCBhbmQgbm8gZXh0ZW5zaW9uIGlzIGdpdmVuLCB0aGUgZXh0ZW5zaW9uIG9mIHRoZSBvcmlnaW5hdGluZyBmaWxlIChpZiBhbnkgZXhpc3RzIGlzIHVzZWQ8L2xpPgogPC91bD4KIDxwPjxlbT48Yj5JbXBvcnRhbnQhPC9iPjwvZW0+PGJyLz5JdCBpcyBub3QgcG9zc2libGUgdG8gdXBncmFkZSBmcm9tIGFueSBvdGhlciB2ZXJzaW9uIG9mIHRoZSBVcGxvYWRzIG1vZHVsZSB0byAxLjEuMC4gIFRoaXMgaXMgZHVlIHRvIHNvbWUgZXJyb3JzIHRoYXQgd2VyZSBtYWRlIGluIHRoZSBkYXRhYmFzZSByb3V0aW5lcywgYW5kIGV2ZW4gaW4gdGhlIHVwZ3JhZGUgcm91dGluZSBpbiAxLjAuNi4gIFlvdSBtdXN0IGRlLWluc3RhbGwgdGhlIG9sZCB2ZXJzaW9uLCBhbmQgdGhlbiByZS1pbnN0YWxsIHRoZSBuZXcgdmVyZXNpb24uIFRoaXMgd2lsbCBjYXVzZSBzaWduaWZpY2FudCBkaWZmaWN1bHR5IGlmIHlvdSBoYXZlIGRzY3JpcHRpb25zLCBldGMsIGluIHlvdXIgdGFibGVzPC9wPgo8L2xpPgo8bGk+CjxwPlZlcnNpb24gMS4xLjEuIC0gT2N0b2JlciwgMjAwNTwvcD4KPHA+Rml4ZWQgYSBjb3VwbGUgb2YgbWlub3IgYnVncyBpbiB0aGUgR2V0VXBsb2FkRGV0YWlscyBhbmQgYWRkZWQgYW5vdGhlciBsaW5rIChvciBhIHVybCkgdG8gdGhlIHVwbG9hZGVkIGZpbGUuPC9wPgo8L2xpPgo8bGk+CjxwPlZlcnNpb24gMS4xLjIuIC0gT2N0b2JlciwgMjAwNTwvcD4KPHA+Rml4ZWQgdGhlIFVSTCBmaWVsZCBpbiBHZXRVcGxvYWREZXRhaWxzIHRvIHJldHVybiBhIGRvd25sb2FkIGxpbmsgYW5kIGFkZGVkIGFuIGFic3VybCBmaWVsZCB3aGljaCByZXR1cm5zIHRoZSBhYnNvbHV0ZSBwYXRoIHRvIHRoZSBmaWxlIG9uIHRoZSB3ZWJzZXJ2ZXIuICBDbGlja3Mgb24gdGhpcyBsaW5rIHdpbGwgbm90IGJlIGNvdW50ZWQ8L3A+CjwvbGk+CjxsaT4KPHA+VmVyc2lvbiAxLjEuMy4gLSBPY3RvYmVyLCAyMDA1PC9wPgo8cD5GaXhlZCB0aGUgdXBncmFkZSBwcm9ibGVtIGZyb20gdGhlIDEuMC54IHNlcmllcy4gIFVzZXJzIG9mIHRoZSAxLjAueCBzZXJpZXMgc2hvdWxkIGJlIGFibGUgdG8gdXBncmFkZSB0byAxLjEuMyBub3cgd2l0aCBubyBkaWZmaWN1bHR5LiA8Yj5UaG9zZSBhcmUgZmFtb3VzIGxhc3Qgd29yZHMsIHBsZWFzZSBiYWNrdXAgZmlyc3Q8L2I+LiBGaXhlZCB0aGUgY29udGVudCByZWRpcmVjdCB0aGluZ3MgdGhhdCB3ZXJlIGlycml0YXRpbmcgbWUuICBBbHNvIGFkZGVkIGNhdGVnb3J5PWFsbCB0byBsaXN0IGFsbCBvZiB0aGUgdXBsb2FkcyBpbiBhbGwgbGlzdGFibGUgY2F0ZWdvcmllcyA8ZW0+KGxldHMgYWxsIGhvcGUgSSBnb3QgdGhlIHNxbCBmaWd1cmVkIG91dCBwcm9wZXJseSk8L2VtPi48L3A+CjwvbGk+CjxsaT4KPHA+VmVyc2lvbiAxLjEuNC4gLSBPY3RvYmVyLCAyMDA1PC9wPgo8cD5BZGRlZCB0aGUgY291bnQgcGFyYW1ldGVyIHRvIGxpc3Qgb25seSB0aGUgZmlyc3QgTiByZWNvcmRzLCBhbmQgYWRkZWQgInN1bW1hcnlsaW5rIiwgYW5kICJjYXRlZ29yeSIgdG8gdGhlIHRlbXBsYXRlcyBmb3Igd2VzdGlzLiAgRm9yIGV4YW1wbGVzIG9uIGhvdyB0byB1c2UgdGhlbSByZXNldCB5b3VyIHRlbXBsYXRlcyBiYWNrIHRvIGRlZmF1bHQuPC9wPjwvbGk+CjxsaT4KPHA+VmVyc2lvbiAxLjEuNS4gLSBOb3ZlbWJlciwgMjAwNTwvcD4KPHA+QWRkZWQgZW1haWwgbm90aWZpY2F0aW9uIGFuZCBzb21lIGJ1ZyBmaXhlczwvcD4KPC9saT4KPGxpPgo8cD5WZXJzaW9uIDEuMS42LiAtIE5vdmVtYmVyLCAyMDA1PC9wPgo8cD5BZGRlZCBhbiBhcGkgZnVuY3Rpb24gYW5kIGZpeGVkIHNvbWUgcmVkaXJlY3Rpb24gc3R1ZmY8L3A+CjwvbGk+CjxsaT4KPHA+VmVyc2lvbiAxLjEuNy4gLSBOb3ZlbWJlciwgMjAwNTwvcD4KPHA+TW9yZSBBUEkgZnVuY3Rpb25zLCBhbmQgbm93IGlnbm9yZSBkb3QgZmlsZXMgd2hlbiBzY2FubmluZy4gIEVtYWlsIG5vdGlmaWNhdGlvbiBpcyBub3cgaW4uPC9wPgo8L2xpPgo8bGk+CjxwPlZlcnNpb24gMS4xLjguIC0gSmFudWFyeSwgMjAwNjwvcD4KPHA+KiBJbXByb3ZlZCBkb2NzIHdydCBhcGFjaGUgYW5kIHBocCBjb25maWdzLjwvcD4KPHA+KiBGaXhlZCBwcm9ibGVtIHdoZXJlIGZpbGVzaXplIHdhcyBzaG93aW5nIHVwIGFzIDAuPC9wPgo8cD4qIE1vZGlmaWVkIHBlcm1pc3Npb25zIHRvIGJlIG1vcmUgZ3JhbnVsYXI8L3A+CjxwPiogQWRkZWQgc29tZSBjb21tZW50cyBhbmQgdmVyYm9zaXR5IHRvIHRoZSBjYXRlZ29yeSBhbmQgdXBsb2FkcyBmb3JtcyBpbiB0aGUgYWRtaW4gc2VjdGlvbjwvcD4KPHA+KiBBZGRlZCAicmFuZG9tIiBzb3J0IG9yZGVyPC9wPgo8cD4qIFNvbWUgUEhQNSBmaXhlczwvcD4KPC9saT4KPGxpPgo8cD5WZXJzaW9uIDEuMS45LiAtIEphbnVhcnksIDIwMDY8L3A+CjxwPiogQWRkZWQgdGhlIGFiaWxpdHkgdG8gdXBsb2FkIGEgdGh1bWJuYWlsIGltYWdlPC9wPgo8cD4qIFNvbWUgaW1wcm92ZWQgYXVkaXRpbmc8L3A+CjxwPiogeG1sIG5vdyBhZGRlZCB0byB0aGUgZGVmYXVsdCBmaWxlIHR5cGVzIChuZXcgaW5zdGFsbHMgb25seSk8L3A+CjxwPiogQWRkZWQgYSBjb25maXJtYXRpb24gbWVzc2FnZSB0byB0aGUgcmVzZXQgdG8gZGVmYXVsdHMgYnV0dG9ucyBvZiB0aGUgdGVtcGxhdGUgcGFnZXMuPC9wPgo8cD4qIEFkZGVkIHRoZSBmaWxlX2V4dGVuc2lvbnMgcGFyYW1ldGVyIGZvciB0aGUgdXBsb2FkIGZvcm08L3A+CjxwPiogVGhlIGN1cnJlbnQgY2F0ZWdvcnkgc2VsZWN0ZWQgaW4gdGhlIGZpbGVzIGZpbHRlciBpcyBzdGlja3kuCjxwPiogQWRkZWQgYSBwcmVmZXJlbmNlIHRvIGVuZm9yaWNlIGZpbGVuYW1lIGV4dGVuc2lvbnMgKGRlZmF1bHRzIHRvIG9uKTwvcD4KPHA+KiBBZGRlZCBhIGxpbmsgdG8gdGhlIGVkaXQgcGFnZSwgaW4gdGhlIG5hbWUgY29sdW1uIG9mIHRoZSBmaWxlcyBsaXN0LjwvcD4KPHA+KiBNaW5vciBjaGFuZ2VzIHRvIHRoZSBsYXlvdXQgYW5kIHRleHQgdG8gYWRkIGNsYXJpdHkuPC9wPgo8cD4qIEFkZGVkIGRvd25sb2FkX3VybCBhcyBhbiBhdmFpbGFibGUgc21hcnR5IHRhZyBpbiB0aGUgdGVtcGxhdGVzPC9wPgo8bGk+CjxwPlZlcnNpb24gMS4xLjEwLiAtIEZlYnJ1YXJ5LCAyMDA2PC9wPgo8cD4qIFN1bW1hcnkgbm93IGRlZmF1bHRzIHRvIHRoZSBmaWxlbmFtZSAod2l0aG91dCB0aGUgZXh0ZW5zaW9uKSBpZiBub25lIGlzIHNwZWNpZmllZDwvcD4KPHA+KiBOb3cgY29ycmVjdGx5IGhhbmRsZSBpZiB0aGUgdGh1bWJuYWlsIGV4dGVuc2lvbiBpcyBub3QgaW4gdGhlIGFjY2VwdGVkIGV4dGVuc2lvbiBsaXN0PC9wPgo8cD4qIE5vIGxvbmdlciBkaXNwbGF5IGFueSBjb250ZW50IGluIHRoZSBmaWxlcyB0YWIgaWYgdGhlcmUgYXJlIG5vIGNhdGVnb3JpZXMgZGVmaW5lZDwvcD4KPHA+KiBEaXNwbGF5IGEgbGluayBpbiB0aGUgZXJyb3IgcGFnZSB0aGF0IHRha2VzIHlvdSBiYWNrIHRvIHRoZSBtYWluIGFkbWluIHBhbmVsPC9wPgo8cD4qIEFsbG93IGZvciByZXBsYWNpbmcgb2YgdXBsb2FkZWQgZmlsZXM8L3A+CjwvbGk+CjxsaT4KPHA+VmVyc2lvbiAxLjEuMTEuIC0gTWFyY2gsIDIwMDY8L3A+CjxwPkFkZGVkIHRoZSBhYmlsaXR5IGZvciBhIGxpbmsgdG8gYSBkZXRhaWxlZCBwYWdlIHdoZW4gaW4gc3VtbWFyeSBtb2RlLjwvcD4KPHA+U3BsaXQgdGhlIGRlZmF1bHQgYWN0aW9uIGFuZCBkZWZhdWx0YWRtaW4gYWN0aW9ucyBpbnRvIHNlcGFyYXRlIGZpbGVzLCBmb3IgYSBiaXQgb2YgbWVtb3J5IGltcHJvdmVtZW50LCBob3BlZnVsbHk8L3A+CjxwPkFkZCB0aGUgYWJpbGl0eSB0byByZWRpcmVjdCB0byBhbm90aGVyIHBhZ2UgYWZ0ZXIgYSBmcm9udGVuZCB1c2VyIHVwbG9hZGVkIGEgZmlsZTwvcD4KPC9saT4KPGxpPgo8cD5WZXJzaW9uIDEuMS4xMi4gLSBNYXJjaCwgMjAwNjwvcD4KPHA+QWRkZWQgdGhlIHNpbmdsZXN1bW1hcnkgbW9kZSB0byBkaXNwbGF5IGEgc2luZ2xlIHVwbG9hZCBpbiBzdW1tYXJ5IG1vZGU8L1A+CjwvbGk+CjxsaT4KPHA+VmVyc2lvbiAxLjEuMTMuIC0gQXByaWwsIDIwMDY8L3A+CjxwPkFkZGVkIG9wdGlvbmFsIGZpbHRlcmluZyBvbiB0aGUgZnJvbnRlbmQsIGFuZCBhIGNvdXBsZSBvZiBleHRyYSBwYXJhbWV0ZXJzIHRvIGdvIHdpdGggaXQ8L3A+CjxwPkZpeGVkIGEgcHJvYmxlbSB3aGVyZSBpdCB3b3VsZCBhbGxvdyB5b3UgdG8gZW50ZXIgYSBibGFuayBwYXRoIHdoZW4gY3JlYXRpbmcgYSBjYXRlZ29yeTwvcD4KPHA+U3BsaXQgc3R1ZmYgaW50byAoc29tZSkgc2VwYXJhdGUgYWN0aW9uIGZpbGVzIGZvciBzb21lIGhvcGVmdWwgcGVyZm9ybWFuY2UgaW5jcmVhc2VzPC9wPgo8cD5BZGRlZCBjb3B5cmlnaHQgbm90aWNlczwvcD4KPHA+Q2hhbmdlZCAob3B0aW9uYWwpIGRlcGVuZGVuY3kgZnJvbSBVc2VySUQgdG8gRnJvbnRFbmRVc2VycyBNb2R1bGUuPC9wPgo8L2xpPgo8bGk+CjxwPlZlcnNpb24gMS4yLjEgLSBBcHJpbCwgMjAwNjwvcD4KPHA+Q2hhbmdlZCBfc2NhbkRpcmVjdG9yeSB0byBhbiBBUEkgZnVuY3Rpb24gU2NhbkRpcmVjdG9yeSBhbmQgdGhlbiBhZGRlZCBTbWFydFNjYW5EaXJlY3RvcnkgdG8gc2NhbiB0aGUgZGlyZWN0b3J5IGJlZm9yZSBkaXNwbGF5aW5nIHRoZSBzdW1tYXJ5IG9yIGRldGFpbCBsaXN0aW5nIHRvIGhhbmRsZSB0aGUKY2FzZSB3aGVyZSBzb21lYm9keSB1cGxvYWRlZCBmaWxlcyB2aWEgRlRQIG9yIHNvbWV0aGluZyBhbmQgZGlkIG5vdCBnbyBpbnRvIHRoZSBhZG1pbiBzZWN0aW9uIHRvIHVwZGF0ZSB0aGUgY2F0ZWdvcmllcy48L3A+CjxwPkNvcnJlY3Rpb24gdG8gYWxsIGRiIGFjY2VzcyBzdHVmZi4gSG9wZWZ1bGx5IHByb3ZpZGVzIGEgcGVyZm9ybWFuY2UgaW5jcmVhc2UuPC9wPgo8cD5GaXhlcyB0byB0aGUgYWJvdXQgc3R1ZmYsIG5vdyB1c2UgQ3JlYXRlUGFyYW1ldGVyPC9wPgo8cD5BZGRlZCB0aGUgdXBsb2FkX3RlbXBsYXRlLCBzdW1tYXJ5X3RlbXBsYXRlLCBhbmQgZGV0YWlsX3RlbXBsYXRlIChvcHRpb25hbCkgcGFyYW1ldGVyPC9wPgo8cD5BZGRlZCB0aGUgbm9hdXRob3IgcGFyYW1ldGVyLCBhbmQgdGhlIGtleSBwYXJhbWV0ZXIuICBUaGUga2V5IHBhcmFtZXRlciBhbGxvd3MgdGhlIHVwbG9hZHMgbW9kdWxlIHRvIGJlIGVtYmVkZGVkIGludG8gb3RoZXIgbW9kdWxlczwvcD4KPHA+TW92ZWQgdG8gdW5kZXIgdGhlIGNvbnRlbnQgbWVudSwgYW5kIGVudGl0bGVkIFwnRmlsZXMgKFVwbG9hZCBNb2R1bGUpXCc8L3A+Owo8L2xpPgo8bGk+CjxwPlZlcnNpb24gMS4yLjIgLSBKdW5lLCAyMDA2CjxwPkFkZGVkIHRoZSBhYmlsaXR5IHRvIGhhdmUgbXVsdGlwbGUgZGF0YWJhc2UgdGVtcGxhdGVzLCBhbmQgdG8gc2VsZWN0IG9uZSBvbiB0aGUgdGFnIHdpdGggdGhlIHRlbXBsYXRlIHBhcmFtZXRlci48L3A+CjxwPkZpeGVkIGFuIGlzc3VlIHdoZXJlIGZpbGVzIHdlcmUgZ2V0dGluZyBjb3JydXB0ZWQgb24gZG93bmxvYWQ8L3A+CjwvbGk+CjxsaT4KPHA+VmVyc2lvbiAxLjIuMyAtIEp1bmUsIDIwMDYKPHA+Rml4ZXMgdG8gdXNlIGFkb2RiLWxpdGUgcHJvcGVyLCByYXRoZXIgdGhhbiB0ZWRzIGhhY2s8L3A+CjxwPkRldGFpbCBsaW5rIG5vdyBkaXNwbGF5cyBpbmxpbmU8L3A+CjxwPk90aGVyIG1pbm9yIHR3ZWFrcyB0aGF0IEkgY2FudCByZW1lbWJlcjwvcD4KPC9saT4KPGxpPlZlcnNpb24gMS4zLjAgLSBTZXB0ZW1iZXIsIDIwMDcKPHVsPgo8bGk+Rml4ZXMgdG8gdGhlIERUIGZpZWxkIHR5cGU8L2xpPgo8bGk+VXNlIHRoZSBGRVUgdXNlcm5hbWUgKG9wdGlvbmFsbHkpIHNvIHRoYXQgd2UgY2FuIHRyYWNrIHdoZW4gYSBsb2dnZWQgaW4gdXNlciB1cGxvYWRzIGEgZmlsZTwvbGk+CjxsaT5BZGQgZmlsZXR5cGUgY2FwYWJpbGl0aWVzIHRvIGFzc29jaWF0ZSBhbiBpY29uIHdpdGggYSBwYXJ0aWN1bGFyIHVwbG9hZC4gIEFsc28gc3VwcG9ydCBhbiB1bmtub3duIGZpbGUgdHlwZSBmb3IgYW55dGhpbmcgdGhhdCBkb2VzIG5vdCBtYXRjaC48L2xpPgo8bGk+Q29tcGxldGVseSByZS13b3JrZWQgdGhlIG11bHRpcGxlIGRhdGFiYXNlIHRlbXBsYXRlIHN0dWZmLjwvbGk+CjxsaT5BZGp1c3RtZW50cyB0byB0aGUgZGVmYXVsdCB0ZW1wbGF0ZXM8L2xpPgo8bGk+Rml4ZXMgdG8gdXNpbmcgY2F0ZWdvcnk9ImFsbCI8L2xpPgo8bGk+R2VuZXJhdGUgdGh1bWJuYWlscyBhdXRvbWF0aWNhbGx5IChvcHRpb25hbGx5KSBmb3IgY2VydGFpbiBmaWxlIHR5cGVzLCBvbiB1cGxvYWQsIGFuZCBvbiBzY2FuLjwvbGk+CjxsaT5BZGQgY2FwdGNoYSBzdXBwb3J0IHRvIHRoZSB1cGxvYWQgZm9ybTwvbGk+CjxsaT5BZGQgYSBzYWZlIG1vZGUgd2FybmluZyBpbiB0aGUgYWRtaW4gcGFuZWw8L2xpPgo8bGk+VXNlcyBjaHVua2VkIGRvd25sb2Fkcy48L2xpPgo8bGk+QWRkcyBwcmVmaXggYW5kIHByZWZpeF9mZXUgY2FwYWJpbGl0eSB0byB1cGxvYWRlZCBmaWxlcy48L2xpPgo8bGk+QWRkZWQgdGhlIGRldGFpbHBhZ2UgcGFyYW0uPC9saT4KPGxpPkFkZGVkIHRoZSBhYmlsaXR5IHRvIGRpc3BsYXkgYW4gaW1hZ2UgaW4gZnVsbCBzaXplIChvciB3aGF0ZXZlciBzaXplIHdlIHdhbnQpLCBzbyB0aGF0IHRoZSB1cGxvYWRzIG1vZHVsZSBjYW4gYmUgdXNlZCBhcyBhIGdhbGxlcnkuPC9saT4KPGxpPkFkZGVkIHNlY3VyaXR5ICh2aWEgdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlKSB0byBjYXRlZ29yaWVzPC9saT4KPGxpPkFkZGVkIGEgc2VsZWN0IG1vZGUgdG8gZ2VuZXJhdGUgYSBwdWxsZG93biBvZiBmaWxlcyBpbiBhIGNhdGVnb3J5LCBmb3IgdXNlIHdoZW4gYXR0YWNoaW5nIHVwbG9hZHMgbW9kdWxlIHRvIHNvbWUgb3RoZXIgbW9kdWxlLjwvbGk+CjxsaT5BZGRzIGEgY2F0ZWdvcnkgYnJvd3NlciwgZml4ZXMgYSByZXcgbWlub3IgaXNzdWVzLCBhbmQgdHdlYWtzIHRoZSBhdmFpbGFibGUgZmlsZSB0eXBlIGljb25zPC9saT4KPC91bD4KPC9saT4KCjxsaT5WZXJzaW9uIDEuNCAtIE5vdmVtYmVyIDIwMDgKPHVsPgo8bGk+TWFqb3IgY2xlYW51cCBvZiB0aGUgZGVmYXVsdCBhY3Rpb248L2xpPgo8bGk+QWRkcyBwYWdpbmF0aW9uIHRvIHN1bW1hcnkgdmlldzwvbGk+CjxsaT5BZGRzIHByZXR0eSB1cmxzIGZvciBmaWxlIGxpbmtzPC9saT4KPGxpPkFkZHMgdGhlIGFiaWxpdHkgdG8gcmVwbGFjZSB0aHVtYm5haWxzIGFmdGVyIHRoZSBmaWxlIGlzIHVwbG9hZWQuPC9saT4KPGxpPkNoYW5nZSB0aHVtYm5haWxzIGZyb20gdXNpbmcgYSAudGh1bWJzIGRpcmVjdG9yeSB0byB1c2luZyBhIHN0YW5kYXJkIHRodW1iXyBwcmVmaXguPC9saT4KPGxpPk51bWVyb3VzIEJ1Z2ZpeGVzPC9saT4KPC91bD4KPC9saT4KCjxsaT5WZXJzaW9uIDEuNCAtIEZlYnJ1YXJ5IDIwMDkKICA8dWw+CiAgICAgPGxpPkZpeCBwcm9ibGVtIHdpdGggc2Nhbm5pbmcgZGlyZWN0b3JpZXMsIGFuZCBjcmVhdGluZyB0aHVtYm5haWxzLjwvbGk+CiAgPC91bD4KPC9saT4KCjwvdWw+Cg==]]></data>
	</file>
	<file>
	  <filename>/function.admin_categoriestab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgPSBhbGxvdyB1c2VycyB0byB1cGxvYWQgc3R1ZmYsIGEgcHNldWRvIGZpbGUgbWFuYWdlciBtb2R1bGUKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6CS8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKaWYgKCEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uICgnTWFuYWdlIFVwbG9hZHMnKSkKICB7CiAgICByZXR1cm47CiAgfQoKZ2xvYmFsICRnQ21zOwokZGIgPSYgJHRoaXMtPkdldERiKCk7CiAgICAKJHJvd2FycmF5ID0gYXJyYXkgKCk7CiRxdWVyeSA9ICcnOwokZGJyZXN1bHQgPSAnJzsKICAgIAokcXVlcnkgPSAiU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXggKCkuIm1vZHVsZV91cGxvYWRzX2NhdGVnb3JpZXMiOwokZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUgKCRxdWVyeSk7CiRyb3djbGFzcyA9ICdyb3cxJzsKICAgIAp3aGlsZSAoJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3cgKCkpCiAgewogICAgJG9uZXJvdyA9IG5ldyBzdGRDbGFzcyAoKTsKICAgICRvbmVyb3ctPmlkID0gJHJvd1sidXBsb2FkX2NhdGVnb3J5X2lkIl07CiAgICAkb25lcm93LT5uYW1lID0gJHRoaXMtPkNyZWF0ZUxpbmsoICRpZCwgJ2VkaXRjYXRlZ29yeScsICRyZXR1cm5pZCwgCgkJCSAkcm93WyJ1cGxvYWRfY2F0ZWdvcnlfbmFtZSJdLAoJCQkgYXJyYXkoJ2NhdGVnb3J5X2lkJz0+JHJvd1sndXBsb2FkX2NhdGVnb3J5X2lkJ10pKTsKCiAgICAkb25lcm93LT5kZXNjcmlwdGlvbiA9ICRyb3dbInVwbG9hZF9jYXRlZ29yeV9kZXNjcmlwdGlvbiJdOwogICAgJG9uZXJvdy0+cGF0aCA9ICRyb3dbInVwbG9hZF9jYXRlZ29yeV9wYXRoIl07CiAgICAkb25lcm93LT5yb3djbGFzcyA9ICRyb3djbGFzczsKCiAgICAkb25lcm93LT5lZGl0bGluayA9ICR0aGlzLT5DcmVhdGVMaW5rICgkaWQsICdlZGl0Y2F0ZWdvcnknLCAkcmV0dXJuaWQsCgkJCSAkZ0Ntcy0+dmFyaWFibGVzWydhZG1pbnRoZW1lJ10tPgoJCQkgRGlzcGxheUltYWdlICgnaWNvbnMvc3lzdGVtL2VkaXQuZ2lmJywKCQkJIAkkdGhpcy0+TGFuZyAoJ2VkaXQnKSwgJycsICcnLCAnc3lzdGVtaWNvbicpLAoJCQkgYXJyYXkgKCdjYXRlZ29yeV9pZCcgPT4gJHJvd1sndXBsb2FkX2NhdGVnb3J5X2lkJ10pKTsKICAgICRvbmVyb3ctPmRlbGV0ZWxpbmsgPSAkdGhpcy0+Q3JlYXRlTGluayAoJGlkLCAnZGVsZXRlY2F0ZWdvcnknLCAkcmV0dXJuaWQsCgkJCSAkZ0Ntcy0+dmFyaWFibGVzWydhZG1pbnRoZW1lJ10tPgoJCQkgRGlzcGxheUltYWdlICgnaWNvbnMvc3lzdGVtL2RlbGV0ZS5naWYnLAoJCQkJICAgICAgICR0aGlzLT5MYW5nICgnZGVsZXRlJyksICcnLCAnJywgJ3N5c3RlbWljb24nKSwKCQkJIGFycmF5ICgnY2F0ZWdvcnlfaWQnID0+ICRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9pZCddKSwKCQkJICR0aGlzLT5MYW5nICgnYXJleW91c3VyZScpKTsKCiAgICBhcnJheV9wdXNoICgkcm93YXJyYXksICRvbmVyb3cpOwogICAgKCRyb3djbGFzcyA9PSAicm93MSIgPyAkcm93Y2xhc3MgPSAicm93MiIgOiAkcm93Y2xhc3MgPSAicm93MSIpOwogIH0KCiR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ2NhdGVnb3J5dGV4dCcsICR0aGlzLT5MYW5nICgnY2F0ZWdvcnknKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ25hbWV0ZXh0JywgJHRoaXMtPkxhbmcgKCduYW1lJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24gKCdwYXRodGV4dCcsICR0aGlzLT5MYW5nICgncGF0aCcpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgnaXRlbXMnLCAkcm93YXJyYXkpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24gKCdpdGVtY291bnQnLCBjb3VudCAoJHJvd2FycmF5KSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ2FkZGxpbmsnLCAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdhZGRjYXRlZ29yeScsIAoJJHJldHVybmlkLCAKCSRnQ21zLT52YXJpYWJsZXNbJ2FkbWludGhlbWUnXS0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vbmV3b2JqZWN0LmdpZicsIAoJCSR0aGlzLT5MYW5nKCdhZGRjYXRlZ29yeScpLCcnLCcnLCdzeXN0ZW1pY29uJyksIAoJCWFycmF5KCksICcnLCBmYWxzZSwgZmFsc2UsICcnKSAuJyAnLiAKCQkkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdhZGRjYXRlZ29yeScsIAoJCQkkcmV0dXJuaWQsICR0aGlzLT5MYW5nKCdhZGRjYXRlZ29yeScpLCAKCQkJYXJyYXkoKSwgJycsIGZhbHNlLCBmYWxzZSwgJ2NsYXNzPSJwYWdlb3B0aW9ucyInKSk7CgplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUgKCdjYXRlZ29yeWxpc3QudHBsJyk7CgovLyBFT0YKPz4=]]></data>
	</file>
	<file>
	  <filename>/function.admin_filestab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgPSBhbGxvdyB1c2VycyB0byB1cGxvYWQgc3R1ZmYsIGEgcHNldWRvIGZpbGUgbWFuYWdlciBtb2R1bGUKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6CS8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKaWYgKCEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uICgnTWFuYWdlIFVwbG9hZHMnKSkKICB7CiAgICByZXR1cm47CiAgfQoKZ2xvYmFsICRnQ21zOwokZGIgPSYgJHRoaXMtPkdldERiKCk7CgovLyBnZXQgdGhlIGN1cnJlbnQgY2F0ZWdvcnkgZm9yIHRoZSBmaWx0ZXIKaWYgKGlzc2V0ICgkcGFyYW1zWydzdWJtaXRjYXRlZ29yeSddKSkKICB7CiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgnY3VycmVudF9jYXRlZ29yeScsCgkJCSAoaXNzZXQgKCRwYXJhbXNbJ2lucHV0X2NhdGVnb3J5J10pID8gJHBhcmFtc1snaW5wdXRfY2F0ZWdvcnknXSA6CgkJCSAgJycpKTsKICB9CiRjdXJjYXRlZ29yeSA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdjdXJyZW50X2NhdGVnb3J5JywnJyk7CiAgICAgICAgCi8vIGdldCB0aGUgY2F0ZWdvcmllcyBmb3IgdGhlIGZpbHRlcgokY2F0ZWdvcnlsaXN0ID0gYXJyYXkgKCk7CiRxdWVyeSA9CiAgIlNFTEVDVCAqIEZST00gIi5jbXNfZGJfcHJlZml4ICgpLgogICJtb2R1bGVfdXBsb2Fkc19jYXRlZ29yaWVzIE9SREVSIEJZIHVwbG9hZF9jYXRlZ29yeV9uYW1lIEFTQyI7CiRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSAoJHF1ZXJ5KTsKaWYgKCEkZGJyZXN1bHQpCiAgewogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgnZXJyb3InLCAxKTsKICAgICR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ21lc3NhZ2UnLCAkdGhpcy0+TGFuZyAoJ2Vycm9yX25vY2F0ZWdvcmllcycpKTsKICB9CiBlbHNlCiAgIHsKICAgICB3aGlsZSAoJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3cgKCkpCiAgICAgICB7CgkgaWYoICRjdXJjYXRlZ29yeSA9PSAnJyApIHsKCSAgICRjdXJjYXRlZ29yeSA9ICRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9pZCddOwoJIH0KCSAkY2F0ZWdvcnlsaXN0WyRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9uYW1lJ11dID0KCSAgICRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9pZCddOwogICAgICAgfQogICB9CgkgIAovLyBpZiB0aGVyZSBhcmUgbm8gY2F0ZWdvcmllcywgcHV0IGEgbWVzc2FnZSBvdXQsIGFuZAovLyBub3RoaW5nIGVsc2UKaWYoICFjb3VudCggJGNhdGVnb3J5bGlzdCApICkgCiAgewogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdlcnJvcicsMSk7CiAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ25vZm9ybScsMSk7CiAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ21lc3NhZ2UnLCR0aGlzLT5MYW5nKCdlcnJvcl9ub2NhdGVnb3JpZXMnKSk7CiAgICBlY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ3VwbG9hZGxpc3QudHBsJyk7CiAgICByZXR1cm47CiAgfQoKLy8gc2V0dXAgdGhlIGZvcm0gcGFydCBvZiB0aGUgdGVtcGxhdGUKJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgnbGVnZW5kX3VwbG9hZGZvcm0nLCR0aGlzLT5MYW5nKCdsZWdlbmRfdXBsb2FkZm9ybScpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgnc3RhcnRmb3JtJywKCQkgICAgICAgJHRoaXMtPkNyZWF0ZUZvcm1TdGFydCAoJGlkLCAnZGVmYXVsdGFkbWluJywgJHJldHVybmlkLCAncG9zdCcsICdtdWx0aXBhcnQvZm9ybS1kYXRhJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24gKCdjYXRlZ29yeScsICR0aGlzLT5MYW5nICgnY2F0ZWdvcnknKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ2lucHV0X2NhdGVnb3J5JywKCQkgICAgICAgJHRoaXMtPkNyZWF0ZUlucHV0RHJvcERvd24gKCRpZCwgImlucHV0X2NhdGVnb3J5IiwgJGNhdGVnb3J5bGlzdCwgLTEsCgkJCQkJCSAgICRjdXJjYXRlZ29yeSkpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24gKCdpbnB1dF9zZWxlY3QnLAoJCSAgICAgICAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQgKCRpZCwgJ3N1Ym1pdGNhdGVnb3J5JywKCQkJCQkJICR0aGlzLT5MYW5nKCdzZWxlY3RjYXRlZ29yeScpKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ2lucHV0X2hpZGRlbicsCgkJICAgICAgICR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbiAoJGlkLCAnY3VyY2F0ZWdvcnknLAoJCQkJCQkgJGN1cmNhdGVnb3J5KSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbigncHJvbXB0X2Jyb3dzZScsICR0aGlzLT5MYW5nKCd1cGxvYWQnKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbiggJ2lucHV0X2Jyb3dzZScsCgkJICAgICAgICR0aGlzLT5DcmVhdGVGaWxlVXBsb2FkSW5wdXQgKCRpZCwnaW5wdXRfYnJvd3NlJywnJyw1MCkpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3Byb21wdF9yZXBsYWNlJywgJHRoaXMtPkxhbmcoJ3Byb21wdF9yZXBsYWNlJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2lucHV0X3JlcGxhY2UnLCAKCQkgICAgICAkdGhpcy0+Q3JlYXRlSW5wdXRDaGVja2JveCggJGlkLCAnaW5wdXRfcmVwbGFjZScsIDEgKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignaW5mb19yZXBsYWNlJywKCQkgICAgICAkdGhpcy0+TGFuZygnaW5mb19yZXBsYWNlJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3Byb21wdF90aHVtYm5haWwnLCAkdGhpcy0+TGFuZygndGh1bWJuYWlsJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oICdpbnB1dF90aHVtYm5haWwnLAoJCSAgICAgICAkdGhpcy0+Q3JlYXRlRmlsZVVwbG9hZElucHV0ICgkaWQsJ2lucHV0X3RodW1ibmFpbCcsJycsNTApKTsKCSAgCiR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ3Byb21wdF9kZXN0bmFtZScsCgkJICAgICAgICR0aGlzLT5MYW5nICgnZGVzdG5hbWUnKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ2lucHV0X2Rlc3RuYW1lJywKCQkgICAgICAgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCAoJGlkLCAnaW5wdXRfZGVzdG5hbWUnLAoJCQkJCSAgICAgICAnJywgNDAsIDI1NSkpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24gKCdpbmZvX2Rlc3RuYW1lJywKCQkgICAgICAgJHRoaXMtPkxhbmcoJ2luZm9fZGVzdG5hbWUnKSk7CgkgIAokdGhpcy0+c21hcnR5LT5hc3NpZ24gKCdwcm9tcHRfc3VtbWFyeScsCgkJICAgICAgICR0aGlzLT5MYW5nICgnc3VtbWFyeScpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgnaW5wdXRfc3VtbWFyeScsCgkJICAgICAgICR0aGlzLT5DcmVhdGVJbnB1dFRleHQgKCRpZCwgJ2lucHV0X3N1bW1hcnknLAoJCQkJCSAgICAgICAnJywgODAsIDI1NSkpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24gKCdpbmZvX3N1bW1hcnknLAoJCSAgICAgICAkdGhpcy0+TGFuZygnaW5mb19zdW1tYXJ5JykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3Byb21wdF9hdXRob3InLCR0aGlzLT5MYW5nKCdhdXRob3InKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbiggJ2lucHV0X2F1dGhvcicsCgkJICAgICAgICR0aGlzLT5jcmVhdGVJbnB1dFRleHQoICRpZCwgJ2lucHV0X2F1dGhvcicsICRfU0VTU0lPTlsiY21zX2FkbWluX3VzZXJuYW1lIl0sCgkJCQkJICAgICAgIDIwLCAyNTUpKTsKCSAgCiR0aGlzLT5zbWFydHktPmFzc2lnbiggJ2lucHV0X3N1Ym1pdCcsCgkJICAgICAgICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCggJGlkLCAnc3VibWl0dXBsb2FkJywgJHRoaXMtPkxhbmcoJ3VwbG9hZCcpKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ2VuZGZvcm0nLCAkdGhpcy0+Q3JlYXRlRm9ybUVuZCAoKSk7CgkgIAokZGJyZXN1bHQgPSAnJzsKJHJvd2FycmF5ID0gYXJyYXkgKCk7CmlmICgkY3VyY2F0ZWdvcnkgPT0gJycpCiAgewogICAgJHF1ZXJ5ID0gIlNFTEVDVCAqIEZST00gIi5jbXNfZGJfcHJlZml4ICgpLgogICAgICAibW9kdWxlX3VwbG9hZHMgT1JERVIgQlkgdXBsb2FkX2RhdGUiOwogICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlICgkcXVlcnkpOwogIH0KIGVsc2UKICAgewogICAgICRxdWVyeSA9CiAgICAgICAiU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXggKCkuCiAgICAgICAibW9kdWxlX3VwbG9hZHMgV0hFUkUgdXBsb2FkX2NhdGVnb3J5X2lkID0gPyBPUkRFUiBCWSB1cGxvYWRfZGF0ZSI7CiAgICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlICgkcXVlcnksIGFycmF5ICgkY3VyY2F0ZWdvcnkpKTsKICAgfQoJICAKLy8gbm93IHNldHVwIHRoZSByZXN0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAokcm93Y2xhc3MgPSAncm93MSc7CgkgIAppZiAoJGRicmVzdWx0KQogIHsKICAgICR0aGlzLT5zbWFydHktPmFzc2lnbignaWR0ZXh0JywkdGhpcy0+TGFuZygnbmFtZScpKTsKICAgICR0aGlzLT5zbWFydHktPmFzc2lnbigndGl0bGV0ZXh0JywkdGhpcy0+TGFuZygnbmFtZScpKTsKICAgICR0aGlzLT5zbWFydHktPmFzc2lnbignc3VtbWFyeXRleHQnLCR0aGlzLT5MYW5nKCdzdW1tYXJ5JykpOwogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdkZXNjdGV4dCcsJHRoaXMtPkxhbmcoJ2Rlc2NyaXB0aW9uJykpOwogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzaXpldGV4dCcsJHRoaXMtPkxhbmcoJ3NpemVrYicpKTsKICAgICR0aGlzLT5zbWFydHktPmFzc2lnbignYXV0aG9ydGV4dCcsJHRoaXMtPkxhbmcoJ2F1dGhvcicpKTsKICAgICR0aGlzLT5zbWFydHktPmFzc2lnbignaXB0ZXh0JywkdGhpcy0+TGFuZygnaXBfYWRkcmVzcycpKTsKICAgICR0aGlzLT5zbWFydHktPmFzc2lnbignZGx0ZXh0JywkdGhpcy0+TGFuZygnZG93bmxvYWRzJykpOwogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdwb3N0ZGF0ZXRleHQnLCR0aGlzLT5MYW5nKCdkYXRlJykpOwogICAgd2hpbGUgKCRyb3cgPSAkZGJyZXN1bHQtPkZldGNoUm93ICgpKQogICAgICB7Cgkkb25lcm93ID0gbmV3IHN0ZENsYXNzICgpOwoJJG9uZXJvdy0+aWQgPSAkcm93Wyd1cGxvYWRfaWQnXTsKCSR0eXBlID0gJHRoaXMtPl9HZXRGaWxlVHlwZSggJHJvd1sndXBsb2FkX25hbWUnXSApOwoJJGltZ3BhdGggPSAnLi4vbW9kdWxlcy8nLmJhc2VuYW1lKGRpcm5hbWUoX19GSUxFX18pKS4nL2ltYWdlcy8nOwoJaWYoICR0eXBlICE9IGZhbHNlICkKCSAgewoJICAgICRvbmVyb3ctPmljb24gPSAkaW1ncGF0aC4kdHlwZVsnaW1hZ2UnXTsKCSAgfQoJZWxzZQoJICB7CgkgICAgJG9uZXJvdy0+aWNvbiA9ICRpbWdwYXRoLid1bmtub3duLnBuZyc7CgkgIH0KCSRvbmVyb3ctPm5hbWUgPSAkcm93Wyd1cGxvYWRfbmFtZSddOwoJJG9uZXJvdy0+c2l6ZSA9IGludHZhbCgkcm93Wyd1cGxvYWRfc2l6ZSddIC8gMTAyNC4wICsgMC41KTsKCSRvbmVyb3ctPmF1dGhvciA9ICRyb3dbJ3VwbG9hZF9hdXRob3InXTsKCSRvbmVyb3ctPmlwID0gJHJvd1sndXBsb2FkX2lwJ107Cgkkb25lcm93LT5zdW1tYXJ5ID0gJHJvd1sndXBsb2FkX3N1bW1hcnknXTsKCSRvbmVyb3ctPmRlc2NyaXB0aW9uID0gJHJvd1sndXBsb2FkX2Rlc2NyaXB0aW9uJ107Cgkkb25lcm93LT5kYXRlID0gJHJvd1sndXBsb2FkX2RhdGUnXTsKCSRvbmVyb3ctPnJvd2NsYXNzID0gJHJvd2NsYXNzOwoJCQoJLy8gaG93IG1hbnkgdGltZXMgaGFzIHRoaXMgaXRlbSBiZWVuIGRvd25sb2FkZWQKCSRxdWVyeSA9ICJTRUxFQ1QgQ09VTlQoZG93bmxvYWRfaWQpIGFzIGNvdW50IEZST00gIi4KCSAgY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc19kb3dubG9hZHMgV0hFUkUgZmlsZV9pZCA9ID8iOwoJJGRicmVzdWx0MiA9ICRkYi0+RXhlY3V0ZSggJHF1ZXJ5LCBhcnJheSggJHJvd1sndXBsb2FkX2lkJ10gKSApOwoJJHJvdzIgPSAkZGJyZXN1bHQyLT5GZXRjaFJvdygpOwoJJG9uZXJvdy0+ZG93bmxvYWRzID0gMDsKCWlmKCAkcm93MiApIHsKCSAgJG9uZXJvdy0+ZG93bmxvYWRzID0gJHJvdzJbJ2NvdW50J107Cgl9CgkJCgkkb25lcm93LT5lZGl0dXJsID0KCSAgJHRoaXMtPkNyZWF0ZUxpbmsgKCRpZCwgJ2VkaXR1cGxvYWQnLCAkcmV0dXJuaWQsICcnLCAKCQkJICAgICBhcnJheSAoJ3VwbG9hZF9pZCcgPT4gJHJvd1sndXBsb2FkX2lkJ10sCgkJCQkgICAgJ2NhdGVnb3J5X2lkJyA9PiAkY3VyY2F0ZWdvcnkpLAoJCQkgICAgICcnLCB0cnVlICk7CgoJJG9uZXJvdy0+ZWRpdGxpbmsgPQoJICAkdGhpcy0+Q3JlYXRlTGluayAoJGlkLCAnZWRpdHVwbG9hZCcsICRyZXR1cm5pZCwKCQkJICAgICAkZ0Ntcy0+dmFyaWFibGVzWydhZG1pbnRoZW1lJ10tPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL2VkaXQuZ2lmJywKCQkJCQkJCQkJICAkdGhpcy0+TGFuZyAoJ2VkaXQnKSwgJycsICcnLCAnc3lzdGVtaWNvbicpLAoJCQkgICAgIGFycmF5ICgndXBsb2FkX2lkJyA9PiAkcm93Wyd1cGxvYWRfaWQnXSwKCQkJCSAgICAnY2F0ZWdvcnlfaWQnID0+ICRjdXJjYXRlZ29yeSkpOwoJCQoJJG9uZXJvdy0+ZGVsZXRlbGluayA9ICR0aGlzLT5DcmVhdGVMaW5rICgkaWQsJ2RvX2RlbGV0ZXVwbG9hZCcsJHJldHVybmlkLAoJCQkJCQkgJGdDbXMtPnZhcmlhYmxlc1snYWRtaW50aGVtZSddLT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9kZWxldGUuZ2lmJywKCQkJCQkJCQkJCQkgICAgICAkdGhpcy0+TGFuZyAoJ2RlbGV0ZScpLCAnJywgJycsICdzeXN0ZW1pY29uJyksCgkJCQkJCSBhcnJheSAoJ3VwbG9hZF9pZCcgPT4gJHJvd1sndXBsb2FkX2lkJ10sCgkJCQkJCQknY2F0ZWdvcnlfaWQnID0+ICRjdXJjYXRlZ29yeSksCgkJCQkJCSAkdGhpcy0+TGFuZyAoJ2FyZXlvdXN1cmUnKSk7CglhcnJheV9wdXNoICgkcm93YXJyYXksICRvbmVyb3cpOwoJKCRyb3djbGFzcyA9PSAicm93MSIgPyAkcm93Y2xhc3MgPSAicm93MiIgOiAkcm93Y2xhc3MgPSAicm93MSIpOwogICAgICB9CiAgfQoKJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgnaXRlbXMnLCAkcm93YXJyYXkpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24gKCdpdGVtY291bnQnLCBjb3VudCAoJHJvd2FycmF5KSk7CmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSAoJ3VwbG9hZGxpc3QudHBsJyk7CgovLyBFT0YKPz4=]]></data>
	</file>
	<file>
	  <filename>/function.admin_filetypestab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojIEF1dGhvcjogUm9iZXJ0IENhbXBiZWxsIDxyb2JAdGVjaGNvbS5keW5kbnMub3JnPgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDoJLy93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgppZiggISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01hbmFnZSBVcGxvYWRzJykgKQogIHsKICAgIHJldHVybjsKICB9CgppZiggaXNzZXQoJHBhcmFtc1snZGlyZWN0aW9uJ10pICYmIGlzc2V0KCRwYXJhbXNbJ3Jvd2lkJ10pICkKICB7CiAgICBzd2l0Y2goICRwYXJhbXNbJ2RpcmVjdGlvbiddICkKICAgICAgewogICAgICBjYXNlICd1cCc6CgkkcSA9ICJVUERBVEUgIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX2ZpbGV0eXBlcwogICAgICAgICAgICAgICAgIFNFVCBzb3J0b3JkZXIgPSAoc29ydG9yZGVyICsgMSkKICAgICAgICAgICAgICAgV0hFUkUgc29ydG9yZGVyID0gPyI7CgkkZGItPkV4ZWN1dGUoICRxLCBhcnJheSggJHBhcmFtc1snc29ydG9yZGVyJ10gLSAxICkgKTsKCSRxID0gIlVQREFURSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfZmlsZXR5cGVzCiAgICAgICAgICAgICAgICAgU0VUIHNvcnRvcmRlciA9IChzb3J0b3JkZXIgLSAxKQogICAgICAgICAgICAgICBXSEVSRSBpZCA9ID8iOwoJJGRiLT5FeGVjdXRlKCAkcSwgYXJyYXkoICRwYXJhbXNbJ3Jvd2lkJ10gKSApOwoJYnJlYWs7CgogICAgICBjYXNlICdkb3duJzoKCSRxID0gIlVQREFURSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfZmlsZXR5cGVzCiAgICAgICAgICAgICAgICAgU0VUIHNvcnRvcmRlciA9IChzb3J0b3JkZXIgLSAxKQogICAgICAgICAgICAgICBXSEVSRSBzb3J0b3JkZXIgPSA/IjsKCSRkYi0+RXhlY3V0ZSggJHEsIGFycmF5KCAkcGFyYW1zWydzb3J0b3JkZXInXSArIDEgKSApOwoJJHEgPSAiVVBEQVRFICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc19maWxldHlwZXMKICAgICAgICAgICAgICAgICBTRVQgc29ydG9yZGVyID0gKHNvcnRvcmRlciArIDEpCiAgICAgICAgICAgICAgIFdIRVJFIGlkID0gPyI7CgkkZGItPkV4ZWN1dGUoICRxLCBhcnJheSggJHBhcmFtc1sncm93aWQnXSApICk7CglicmVhazsKICAgICAgfQogIH0KCiRzbWFydHkgPSYgJHRoaXMtPnNtYXJ0eTsKJGRiID0mICR0aGlzLT5HZXREYigpOwokcXVlcnkgPSAiU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfZmlsZXR5cGVzCiAgICAgICAgICBPUkRFUiBCWSBzb3J0b3JkZXIiOwokZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxdWVyeSApOwoKZ2xvYmFsICRnQ21zOwokdGhlbWVPYmplY3QgPSYgJGdDbXMtPnZhcmlhYmxlc1snYWRtaW50aGVtZSddOwokZG93bkltZyA9ICR0aGVtZU9iamVjdC0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vYXJyb3ctZC5naWYnLCBsYW5nKCdkb3duJyksJycsJycsJ3N5c3RlbWljb24nKTsKJHVwSW1nID0gJHRoZW1lT2JqZWN0LT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9hcnJvdy11LmdpZicsIGxhbmcoJ3VwJyksJycsJycsJ3N5c3RlbWljb24nKTsKJGVkaXRJbWcgPSAkdGhlbWVPYmplY3QtPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL2VkaXQuZ2lmJywgbGFuZygnZWRpdCcpLCcnLCcnLCdzeXN0ZW1pY29uJyk7CiRkZWxldGVJbWcgPSAkdGhlbWVPYmplY3QtPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL2RlbGV0ZS5naWYnLCBsYW5nKCdkZWxldGUnKSwnJywnJywnc3lzdGVtaWNvbicpOwokbmV3T2JqZWN0ID0gJHRoZW1lT2JqZWN0LT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9uZXdvYmplY3QuZ2lmJywkdGhpcy0+TGFuZygnYWRkZmlsZXR5cGUnKSwnJywnJywnc3lzdGVtaWNvbicpOwoKCiRyb3djbGFzcyA9ICdyb3cxJzsKJGVudHJpZXMgPSBhcnJheSgpOwokY291bnQgPSAwOwp3aGlsZSggJGRicmVzdWx0ICYmICRyb3cgPSAkZGJyZXN1bHQtPkZldGNoUm93KCkgKQogIHsKICAgICRvYmogPSBuZXcgU3RkQ2xhc3MoKTsKICAgIGZvcmVhY2goICRyb3cgYXMgJGtleT0+JHZhbHVlICkKICAgICAgewoJJG9iai0+JGtleSA9ICR2YWx1ZTsKICAgICAgfQoKICAgICRvYmotPmljb24gPSAnPGltZyBzcmM9Ii4uL21vZHVsZXMvJy5iYXNlbmFtZShkaXJuYW1lKF9fRklMRV9fKSkuJy9pbWFnZXMvJy4kb2JqLT5pbWFnZS4nIiBhbHQ9IicuJG9iai0+bmFtZS4nIi8+JzsKICAgIGlmKCAkY291bnQgIT0gMCApCiAgICAgIHsKCSRvYmotPnVwbGluayA9ICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwnZGVmYXVsdGFkbWluJywkcmV0dXJuaWQsJHVwSW1nLAoJCQkJCSBhcnJheSgnYWN0aXZlX3RhYic9PidmaWxlX3R5cGVzJywKCQkJCQkgICAgICAgJ2RpcmVjdGlvbic9Pid1cCcsCgkJCQkJICAgICAgICdzb3J0b3JkZXInPT4kcm93Wydzb3J0b3JkZXInXSwKCQkJCQkgICAgICAgJ3Jvd2lkJz0+JHJvd1snaWQnXSkpOwogICAgICB9CiAgICBpZiggJGNvdW50IDwgKCRkYnJlc3VsdC0+UmVjb3JkQ291bnQoKSAtIDEpICkKICAgICAgewoJJG9iai0+ZG93bmxpbmsgPSAkdGhpcy0+Q3JlYXRlTGluaygkaWQsJ2RlZmF1bHRhZG1pbicsJHJldHVybmlkLCRkb3duSW1nLAoJCQkJCSAgIGFycmF5KCdhY3RpdmVfdGFiJz0+J2ZpbGVfdHlwZXMnLAoJCQkJCQkgJ2RpcmVjdGlvbic9Pidkb3duJywKCQkJCQkJICdzb3J0b3JkZXInPT4kcm93Wydzb3J0b3JkZXInXSwKCQkJCQkJICdyb3dpZCc9PiRyb3dbJ2lkJ10pKTsKICAgICAgfQogICAgJG9iai0+ZWRpdGxpbmsgPSAkdGhpcy0+Q3JlYXRlTGluaygkaWQsJ2FkZGZpbGV0eXBlJywkcmV0dXJuaWQsJGVkaXRJbWcsCgkJCQkgICAgICAgYXJyYXkoJ2FjdGl2ZV90YWInPT4nZmlsZV90eXBlcycsCgkJCQkJICAgICAndHlwZWlkJz0+JHJvd1snaWQnXSkpOwogICAgJG9iai0+ZGVsZXRlbGluayA9ICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwnZGVsZXRldHlwZScsJHJldHVybmlkLCRkZWxldGVJbWcsCgkJCQkJIGFycmF5KCdhY3RpdmVfdGFiJz0+J2ZpbGVfdHlwZXMnLAoJCQkJCSAgICAgICAndHlwZWlkJz0+JHJvd1snaWQnXSkpOwogICAgJG9iai0+cm93Y2xhc3MgPSAkcm93Y2xhc3M7CiAgICAkY291bnQrKzsKICAgICRyb3djbGFzcyA9ICgkcm93Y2xhc3MgPT0gJ3JvdzEnKSA/ICdyb3cyJyA6ICdyb3cxJzsKICAgICRlbnRyaWVzW10gPSAkb2JqOwogIH0KCi8vIHRoZSB1bmtub3duIHJvdwokb2JqID0gbmV3IFN0ZENsYXNzKCk7CiRvYmotPm5hbWUgPSAnPHN0cm9uZz4nLiR0aGlzLT5MYW5nKCduYW1lX3Vua25vd24nKS4nPC9zdHJvbmc+JzsKJG9iai0+ZGVzY3JpcHRpb24gPSAnPGVtPicuJHRoaXMtPkxhbmcoJ2Rlc2NyaXB0aW9uX3Vua25vd24nKS4nPC9lbT4nOwokb2JqLT5yb3djbGFzcyA9ICdyb3czJzsKJG9iai0+aWNvbiA9ICc8aW1nIHNyYz0iLi4vbW9kdWxlcy8nLmJhc2VuYW1lKGRpcm5hbWUoX19GSUxFX18pKS4nL2ltYWdlcy91bmtub3duLnBuZyIgYWx0PSInLiRvYmotPm5hbWUuJyIvPic7CiRlbnRyaWVzW10gPSAkb2JqOwokc21hcnR5LT5hc3NpZ24oJ2l0ZW1zJywkZW50cmllcyk7CiRzbWFydHktPmFzc2lnbignaXRlbWNvdW50Jyxjb3VudCgkZW50cmllcykpOwoKJHNtYXJ0eS0+YXNzaWduKCdhZGRsaW5rJywKCQkkdGhpcy0+Q3JlYXRlTGluaygkaWQsJ2FkZGZpbGV0eXBlJywkcmV0dXJuaWQsJG5ld09iamVjdCwKCQkJCSAgYXJyYXkoJ2FjdGl2ZV90YWInPT4nZmlsZV90eXBlcycpKS4KCQkkdGhpcy0+Q3JlYXRlTGluaygkaWQsJ2FkZGZpbGV0eXBlJywkcmV0dXJuaWQsJHRoaXMtPkxhbmcoJ2FkZGZpbGV0eXBlJyksCgkJCQkgIGFycmF5KCdhY3RpdmVfdGFiJz0+J2ZpbGVfdHlwZXMnKSkpOwoKJHNtYXJ0eS0+YXNzaWduKCdzdGFydGZvcm0nLAoJCSR0aGlzLT5DcmVhdGVGb3JtU3RhcnQoJGlkLCd1cGxvYWRpY29uJywkcmV0dXJuaWQsJ3Bvc3QnLAoJCQkJICAgICAgICdtdWx0aXBhcnQvZm9ybS1kYXRhJyxmYWxzZSwnJywKCQkJCSAgICAgICBhcnJheSgnYWN0aXZlX3RhYic9PidmaWxlX3R5cGVzJykpKTsKJHNtYXJ0eS0+YXNzaWduKCdlbmRmb3JtJywKCQkkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsKJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfdXBsb2FkX2ljb24nLAoJCSR0aGlzLT5MYW5nKCdwcm9tcHRfdXBsb2FkX2ljb24nKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfdXBsb2FkX2ljb24nLAoJCSR0aGlzLT5DcmVhdGVGaWxlVXBsb2FkSW5wdXQoJGlkLCdpbnB1dF91cGxvYWRfaWNvbicsJycsNTApKTsKJHNtYXJ0eS0+YXNzaWduKCdzdWJtaXQnLAoJCSR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsJ3N1Ym1pdCcsJHRoaXMtPkxhbmcoJ3N1Ym1pdCcpKSk7CmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSgnZmlsZXR5cGVzLnRwbCcpOwoKLy8gRU9GCj8+]]></data>
	</file>
	<file>
	  <filename>/function.admin_prefstab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIgbW9kdWxlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOgkvL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCmlmICghJHRoaXMtPkNoZWNrUGVybWlzc2lvbiAoJ01vZGlmeSBTaXRlIFByZWZlcmVuY2VzJykpCiAgewogICAgcmV0dXJuOwogIH0KCi8vIENyZWF0ZUZvcm1TdGFydCBzZXRzIHVwIGEgcHJvcGVyIGZvcm0gdGFnIHRoYXQgd2lsbCBjYXVzZSB0aGUgc3VibWl0IHRvCi8vIHJldHVybiBjb250cm9sIHRvIHRoaXMgbW9kdWxlIGZvciBwcm9jZXNzaW5nLgokdGhpcy0+c21hcnR5LT5hc3NpZ24gKCdzdGFydGZvcm0nLAoJCSAgICAgICAkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0ICgkaWQsCgkJCQkJICAgICAgICdzYXZlX2FkbWluX3ByZWZzJywKCQkJCQkgICAgICAgJHJldHVybmlkKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ2VuZGZvcm0nLCAkdGhpcy0+Q3JlYXRlRm9ybUVuZCAoKSk7CgokdGhpcy0+c21hcnR5LT5hc3NpZ24gKCdzdWJtaXQnLAoJCSAgICAgICAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQgKCRpZCwgJ3N1Ym1pdCcsCgkJCQkJCSAkdGhpcy0+TGFuZygnc3VibWl0JyksICcnLCcnLAoJCQkJCQkgJHRoaXMtPkxhbmcoJ2NvbmZpcm1fcHJlZmVyZW5jZXMnKSkpOyAgICAKICAgIAovLyBpdCdzIGdvb2QgcHJhY3RpY2UgdG8gc2V0IGV2ZW4gc3RhdGljIHRpdGxlcyB1c2luZyBzbWFydHksIAovLyBzbyBsb2NhbGl6YXRpb24gaXMgZWFzaWVyLgokdGhpcy0+c21hcnR5LT5hc3NpZ24gKCd0aXRsZV9tYXhfdXBsb2Fkc2l6ZScsCgkJICAgICAgICR0aGlzLT5MYW5nICgncHJvbXB0X21heF91cGxvYWRzaXplJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24gKCd0aXRsZV92YWxpZF91cGxvYWRleHRlbnNpb25zJywKCQkgICAgICAgJHRoaXMtPkxhbmcgKCd0aXRsZV92YWxpZF91cGxvYWRleHRlbnNpb25zJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24gKCd0aXRsZV9zdWJuZXRfZXhjbHVzaW9ucycsCgkJICAgICAgICR0aGlzLT5MYW5nICgndGl0bGVfc3VibmV0X2V4Y2x1c2lvbnMnKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ3RpdGxlX3NlY3Rpb24nLAoJCSAgICAgICAkdGhpcy0+TGFuZyAoJ3RpdGxlX21vZF9wcmVmcycpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgndGl0bGVfZHVtbXlfaW5kZXhfaHRtbCcsCgkJICAgICAgICR0aGlzLT5MYW5nICgndGl0bGVfZHVtbXlfaW5kZXhfaHRtbCcpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgndGl0bGVfZW1haWxfb25fdXBsb2FkJywKCQkgICAgICAgJHRoaXMtPkxhbmcgKCd0aXRsZV9lbWFpbF9vbl91cGxvYWQnKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ3RpdGxlX2VuZm9yY2VleHRlbnNpb25zJywKCQkgICAgICAgJHRoaXMtPkxhbmcoJ3RpdGxlX2VuZm9yY2VleHRlbnNpb25zJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24gKCd0aXRsZV9yZWRpcmVjdF9vbl91cGxvYWQnLAoJCSAgICAgICAkdGhpcy0+TGFuZygndGl0bGVfcmVkaXJlY3RvbnVwbG9hZCcpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgndGl0bGVfYXV0b3RodW1ibmFpbF9leHRlbnNpb25zJywKCQkgICAgICAgJHRoaXMtPkxhbmcoJ3RpdGxlX2F1dG90aHVtYm5haWxfZXh0ZW5zaW9ucycpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgndGl0bGVfYXV0b3RodW1ibmFpbF9zaXplJywKCQkgICAgICAgJHRoaXMtPkxhbmcoJ3RpdGxlX2F1dG90aHVtYm5haWxfc2l6ZScpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgndGl0bGVfZG93bmxvYWRfY2h1bmtzaXplJywKCQkgICAgICAgJHRoaXMtPkxhbmcoJ3RpdGxlX2Rvd25sb2FkX2NodW5rc2l6ZScpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgnaW5mb19kb3dubG9hZF9jaHVua3NpemUnLAoJCSAgICAgICAkdGhpcy0+TGFuZygnaW5mb19kb3dubG9hZF9jaHVua3NpemUnKSk7CgovLyB5b3UnbGwgb2Z0ZW4gd2FudCB0byBkbyB0aGluZ3MgbGlrZSB0aGlzIHRvIHByb3ZpZGUgZmVlZGJhY2s6CiR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ2lucHV0X21heF91cGxvYWRzaXplJywKCQkgICAgICAgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCAoJGlkLCAnbWF4X3VwbG9hZHNpemUnLAoJCQkJCSAgICAgICAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnbWF4X3VwbG9hZHNpemUnLAoJCQkJCQkJCSAgICAnMTAwMDAwMCcpLCAnMTInLCAnMTInKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ2lucHV0X3ZhbGlkX3VwbG9hZGV4dGVuc2lvbnMnLAoJCSAgICAgICAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0ICgkaWQsICd2YWxpZF91cGxvYWRleHRlbnNpb25zJywKCQkJCQkgICAgICAgJHRoaXMtPkdldFByZWZlcmVuY2UgKCd2YWxpZF91cGxvYWRleHRlbnNpb25zJywKCQkJCQkJCQkgICAgICJ6aXAsZ3osdGFyIiksICczMCcsICcyNTUnKSk7CgokdGhpcy0+c21hcnR5LT5hc3NpZ24gKCdpbnB1dF9lbmZvcmNlZXh0ZW5zaW9ucycsCgkJICAgICAgICR0aGlzLT5DcmVhdGVJbnB1dENoZWNrYm94KCAkaWQsICdpbnB1dF9lbmZvcmNlZXh0ZW5zaW9ucycsCgkJCQkJCSAgIDEsICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdyZXF1aXJlZmlsZW5hbWVfZXh0ZW5zaW9ucycsMSkpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgnaW5wdXRfc3VibmV0X2V4Y2x1c2lvbnMnLAoJCSAgICAgICAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCAkaWQsICdzdWJuZXRfZXhjbHVzaW9ucycsCgkJCQkJICAgICAgICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdzdWJuZXRfZXhjbHVzaW9ucycsIiIpLDUwLDI1NSkpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24gKCdpbnB1dF9kdW1teV9pbmRleF9odG1sJywKCQkgICAgICAgJHRoaXMtPkNyZWF0ZUlucHV0Q2hlY2tib3goICRpZCwgJ2lucHV0X2R1bW15X2luZGV4X2h0bWwnLAoJCQkJCQkgICAxLCAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnY3JlYXRlX2R1bW15X2luZGV4X2h0bWwnKSkpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24gKCdpbnB1dF9lbWFpbF9vbl91cGxvYWQnLAoJCSAgICAgICAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCAkaWQsICdlbWFpbF9vbl91cGxvYWQnLAoJCQkJCSAgICAgICAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnc2VuZF91cGxvYWRfbm90aWZpY2F0aW9uc190bycpLAoJCQkJCSAgICAgICAzMCwgODAgKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ2lucHV0X3JlZGlyZWN0X29uX3VwbG9hZCcsCgkJICAgICAgICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoICRpZCwgJ3JlZGlyZWN0X29uX3VwbG9hZCcsCgkJCQkJICAgICAgICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdyZWRpcmVjdF9vbl91cGxvYWQnLCcnKSwzMCw4MCkpOwoKJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgnaW5wdXRfYXV0b3RodW1ibmFpbF9leHRlbnNpb25zJywKCQkgICAgICAgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCggJGlkLCAnYXV0b3RodW1ibmFpbF9leHRlbnNpb25zJywKCQkJCQkgICAgICAgJHRoaXMtPkdldFByZWZlcmVuY2UoJ2F1dG90aHVtYm5haWxfZXh0ZW5zaW9ucycsJycpLDQwKSk7CgokdGhpcy0+c21hcnR5LT5hc3NpZ24gKCdpbnB1dF9hdXRvdGh1bWJuYWlsX3NpemUnLAoJCSAgICAgICAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCAkaWQsICdhdXRvdGh1bWJuYWlsX3NpemUnLAoJCQkJCSAgICAgICAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnYXV0b3RodW1ibmFpbF9zaXplJywnJyksMykpOwoKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9kb3dubG9hZF9jaHVua3NpemUnLAoJCSR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCdkb3dubG9hZF9jaHVua3NpemUnLAoJCQkJICAgICAgICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdkb3dubG9hZF9jaHVua3NpemUnLDgpLDUsNSkpOwoKJHVzZXJ0YWdzID0gYXJyYXkoICR0aGlzLT5MYW5nKCdub25lJykgPT4gJycgKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgndGl0bGVfdXNlcnRhZ19vbnVwbG9hZCcsCgkJICAgICAgICR0aGlzLT5MYW5nKCd0aXRsZV91c2VydGFnX29udXBsb2FkJykpOwokdG1wID0gJHRoaXMtPkxpc3RVc2VyVGFncygpOwokcHJlZiA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCd1c2VydGFnX29udXBsb2FkJyk7CmZvcmVhY2goICR0bXAgYXMgJGsgPT4gJHYgKQp7CiAgJHVzZXJ0YWdzWyRrXSA9ICR2Owp9CiR0aGlzLT5zbWFydHktPmFzc2lnbiggJ2lucHV0X3VzZXJ0YWdfb251cGxvYWQnLAoJCSAgICAgICAkdGhpcy0+Q3JlYXRlSW5wdXREcm9wRG93bigkaWQsICdpbnB1dF91c2VydGFnX29udXBsb2FkJywgJHVzZXJ0YWdzLCAtMSwgJHByZWYgKSk7CgkJCQkgIAoKLy8gRGlzcGxheSB0aGUgcG9wdWxhdGVkIHRlbXBsYXRlCmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSAoJ2FkbWlucHJlZnMudHBsJyk7CgovLyBFT0YKPz4=]]></data>
	</file>
	<file>
	  <filename>/function.default_uploadmode.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLXNldC1zdHlsZTpsaW51eDsgdGFiLXdpZHRoOjI7IGluZGVudC10YWJzLW1vZGU6dDsgYy1iYXNpYy1vZmZzZXQ6IDI7IC0qLQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogVXBsb2FkcyAtPSBhbGxvdyB1c2VycyB0byB1cGxvYWQgc3R1ZmYsIGEgcHNldWRvIGZpbGUgbWFuYWdlciIgbW9kdWxlCiMgQXV0aG9yOiBSb2JlcnQgQ2FtcGJlbGwgPHJvYkB0ZWNoY29tLmR5bmRucy5vcmc+CiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOgkvL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCmlmKCAhaXNzZXQoICRwYXJhbXNbJ2NhdGVnb3J5J10gKSApCgl7CgkJLy8gaWYgbW9kZSBvciBjYXRlZ29yeSBpc24ndCBzZXQuLi4gd2UgZG9uJ3QgZGlzcGxheSBhbnl0aGluZwoJCSR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSAoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsCgkJCQkJCQkJCQkJCQkJCSR0aGlzLT5MYW5nICgnZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJywnY2F0ZWdvcnknKSk7CgkJcmV0dXJuOwoJfQoKLy8gZGlzcGxheSBhIGZvcm0gdG8gYWxsb3cgdGhlIHVzZXIgdG8gdXBsb2FkIGEgZmlsZS4uLi4gYnV0IG1heSBoYXZlIHRvIGhhdmUgcGVybWlzc2lvbiBmaXJzdAovLyBobW1tLCBJJ2xsIHRoaW5rIGFib3V0IHRoZSBwZXJtaXNzaW9uIHN0dWZmIGxhdGVyLgokdGVtcGxhdGUgPSAndXBsb2FkZm9ybV8nLiR0aGlzLT5HZXRQcmVmZXJlbmNlKCdkZWZhdWx0X3VwbG9hZGZvcm0nKTsKaWYoIGlzc2V0KCAkcGFyYW1zWyd0ZW1wbGF0ZSddICkgKQoJewoJCSR0ZW1wbGF0ZSA9ICd1cGxvYWRmb3JtXycuJHBhcmFtc1sndGVtcGxhdGUnXTsKCX0KCiRzbWFydHktPmFzc2lnbiAoJ3N0YXJ0Zm9ybScsCgkJCQkgJHRoaXMtPkNyZWF0ZUZvcm1TdGFydCAoJGlkLCAnZG9fdXBsb2FkJywKCQkJCQkJCQkJCSAkcmV0dXJuaWQsJ3Bvc3QnLCAKCQkJCQkJCQkJCSAnbXVsdGlwYXJ0L2Zvcm0tZGF0YScsCgkJCQkJCQkJCQkgJHBhcmFtcykpOwokc21hcnR5LT5hc3NpZ24gKCdwcm9tcHRfdXBsb2FkJywgJHRoaXMtPkxhbmcgKCd1cGxvYWQnKSk7CgovLyBpcyB0aGVyZSBhIGtleQppZiggaXNzZXQoICRwYXJhbXNbJ2tleSddICkgKQoJewoJCSRzbWFydHktPmFzc2lnbignaW5wdXRfa2V5JywKCQkJCQkJJHRoaXMtPkNyZWF0ZUlucHV0SGlkZGVuKCRpZCwgJ2lucHV0X2tleScsICRwYXJhbXNbJ2tleSddKSk7Cgl9CgovLyBhdHRlbXB0IHRvIGdldCBhbiBhdXRob3IKJGF1dGhvciA9ICcnOwokZmV1c2VycyA9ICR0aGlzLT5HZXRNb2R1bGVJbnN0YW5jZSgnRnJvbnRFbmRVc2VycycpOwppZiggJGZldXNlcnMgKQoJewoJCSRhdXRob3IgPSAkZmV1c2Vycy0+TG9nZ2VkSW5OYW1lKCk7Cgl9CgppZiggaXNzZXQoICRwYXJhbXNbJ25vYXV0aG9yJ10gKSApCgl7CgkJJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9hdXRob3InLAoJCQkJCQkkdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLCAnaW5wdXRfYXV0aG9yJywgJGF1dGhvcikpOwoJCSRzbWFydHktPmFzc2lnbignbm9hdXRob3InLDEpOwoJCQkJCQkgICAgICAgCgl9CiBlbHNlCgkgewoJCSAkc21hcnR5LT5hc3NpZ24gKCdwcm9tcHRfYXV0aG9yJywgJHRoaXMtPkxhbmcgKCdhdXRob3InKSk7CgkJICRzbWFydHktPmFzc2lnbiAoJ2lucHV0X2F1dGhvcicsCgkJCQkJCQkJCQkJJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCAoJGlkLCAnaW5wdXRfYXV0aG9yJywgCgkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJJGF1dGhvciwgMjAsIDI1NSkpOwoJIH0KJHNtYXJ0eS0+YXNzaWduICgncHJvbXB0X3N1bW1hcnknLAoJCQkJCQkJCSAkdGhpcy0+TGFuZyAoJ3N1bW1hcnknKSk7CiRzbWFydHktPmFzc2lnbiAoJ2lucHV0X3N1bW1hcnknLAoJCQkJCQkJCSAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0ICgkaWQsICdpbnB1dF9zdW1tYXJ5JywKCQkJCQkJCQkJCQkJCQkJCQkJCQkgJycsIDQwLCAyNTUpKTsKJHNtYXJ0eS0+YXNzaWduICgncHJvbXB0X2Rlc3RuYW1lJywKCQkJCQkJCQkgJHRoaXMtPkxhbmcgKCdkZXN0bmFtZScpKTsKJHNtYXJ0eS0+YXNzaWduICgnaW5wdXRfZGVzdG5hbWUnLAoJCQkJCQkJCSAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0ICgkaWQsICdpbnB1dF9kZXN0bmFtZScsCgkJCQkJCQkJCQkJCQkJCQkJCQkJICcnLCA0MCwgMjU1KSk7CiRzbWFydHktPmFzc2lnbiAoJ2luZm9fZGVzdG5hbWUnLAoJCQkJCQkJCSAkdGhpcy0+TGFuZyAoJ2luZm9fZGVzdG5hbWUnKSk7Cgokc21hcnR5LT5hc3NpZ24gKCdwcm9tcHRfZGVzY3JpcHRpb24nLAoJCQkJCQkJCSAkdGhpcy0+TGFuZyAoJ2Rlc2NyaXB0aW9uJykpOwokc21hcnR5LT5hc3NpZ24gKCdpbnB1dF9kZXNjcmlwdGlvbicsCgkJCQkJCQkJICR0aGlzLT5DcmVhdGVUZXh0QXJlYShmYWxzZSwgJGlkLCAnJywgJ2lucHV0X2Rlc2NyaXB0aW9uJyApKTsKJGhpZGRlbiA9IAoJJHRoaXMtPkNyZWF0ZUlucHV0SGlkZGVuICgkaWQsICdNQVhfRklMRV9TSVpFJywKCQkJCQkJCQkJCQkJCQkkdGhpcy0+R2V0UHJlZmVyZW5jZSgnbWF4X3VwbG9hZHNpemUnLCcxMDAwMDAwJykpLgoJJHRoaXMtPkNyZWF0ZUlucHV0SGlkZGVuKCAkaWQsICdjYXRlZ29yeScsCgkJCQkJCQkJCQkJCQkJJHBhcmFtc1snY2F0ZWdvcnknXSk7IAppZiggaXNzZXQoICRwYXJhbXNbJ2ZpbGVfZXh0ZW5zaW9ucyddICkgKQoJewoJCSRoaWRkZW4gLj0gCgkJCSR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbiggJGlkLCAnZmlsZV9leHRlbnNpb25zJywKCQkJCQkJCQkJCQkJCQkJCSRwYXJhbXNbJ2ZpbGVfZXh0ZW5zaW9ucyddICk7Cgl9CiRjYXB0Y2hhID0mICR0aGlzLT5HZXRNb2R1bGVJbnN0YW5jZSgnQ2FwdGNoYScpOwppZiggaXNfb2JqZWN0KCRjYXB0Y2hhKSAmJiAhaXNzZXQoJHBhcmFtc1snbm9jYXB0Y2hhJ10pICkKCXsKCQkkc21hcnR5LT5hc3NpZ24oJ2NhcHRjaGFfdGl0bGUnLCAkdGhpcy0+TGFuZygnY2FwdGNoYV90aXRsZScpKTsKCQkkc21hcnR5LT5hc3NpZ24oJ2lucHV0X2NhcHRjaGEnLAoJCQkJCQkJCQkJJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsJ2lucHV0X2NhcHRjaGEnLCcnLDEwKSk7CgkJJHNtYXJ0eS0+YXNzaWduKCdjYXB0Y2hhJywgJGNhcHRjaGEtPmdldENhcHRjaGEoKSk7Cgl9CiRzbWFydHktPmFzc2lnbiAoJ2hpZGRlbicsICRoaWRkZW4gKTsKJHNtYXJ0eS0+YXNzaWduICgnaW5wdXRfYnJvd3NlJywKCQkJCQkJCQkgJHRoaXMtPkNyZWF0ZUZpbGVVcGxvYWRJbnB1dCAoJGlkLCdpbnB1dF9icm93c2UnLCcnLDUwKSk7CiRzbWFydHktPmFzc2lnbigncHJvbXB0X3JlcGxhY2UnLCAkdGhpcy0+TGFuZygncHJvbXB0X3JlcGxhY2UnKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfcmVwbGFjZScsIAoJCQkJCQkJCSR0aGlzLT5DcmVhdGVJbnB1dENoZWNrYm94KCAkaWQsICdpbnB1dF9yZXBsYWNlJywgMSApKTsKJHNtYXJ0eS0+YXNzaWduKCdpbmZvX3JlcGxhY2UnLAoJCQkJCQkJCSR0aGlzLT5MYW5nKCdpbmZvX3JlcGxhY2UnKSk7CiRzbWFydHktPmFzc2lnbiAoJ3Byb21wdF90aHVtYm5haWwnLAoJCQkJCQkJCSAkdGhpcy0+TGFuZyAoJ3RodW1ibmFpbCcpKTsKJHNtYXJ0eS0+YXNzaWduICgnaW5mb190aHVtYm5haWwnLAoJCQkJCQkJCSAkdGhpcy0+TGFuZyAoJ2luZm9fdGh1bWJuYWlsJykpOwokc21hcnR5LT5hc3NpZ24gKCdpbnB1dF90aHVtYm5haWwnLAoJCQkJCQkJCSAkdGhpcy0+Q3JlYXRlRmlsZVVwbG9hZElucHV0ICgkaWQsJ2lucHV0X3RodW1ibmFpbCcsJycsNTApKTsKJHNtYXJ0eS0+YXNzaWduICgnaW5wdXRfc3VibWl0JywkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQgKCRpZCwgJ2RvX3VwbG9hZGZpbGUnLAoJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCSR0aGlzLT5MYW5nICgnc3VibWl0JykpKTsKJHNtYXJ0eS0+YXNzaWduICgnZW5kZm9ybScsICR0aGlzLT5DcmVhdGVGb3JtRW5kICgpKTsKCmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhYmFzZSgkdGVtcGxhdGUpOwovLyBFT0YKPz4=]]></data>
	</file>
	<file>
	  <filename>/images/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/images/image.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAACXBIWXMAAAsTAAALEwEAmpwYAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAAG2klEQVR42mL8//8/Q35+/gUFBUW133/+/AFyEQDEYYRQMC4IMDKCeVBBOAuv2H8owQgE/////f/82bMrU6ZMsQIIIBaQOBMjI3thYQEnA53Ay/ffGRqqCrlAbIAAYkFyN8Pa478ZTFWYGHg4GRluv/jNIMTNxPDkzW+GP//+M/z++59BUoCF4f6rnwybz3xi+PnnL1js128gDWT/+vOf4efff2A2MBwhckD+rz//IDRQ3c9ffxj+MTIzXO/TY2CE2gkQQCzILgNpevzmLwMTE9AwoCHX3/9i+AcMd2ag6p9Agx6//QUWZ2NhBIozQqMFRDPC4wYEmWDRBOUzgmiQuv9MDP8ZmaBRCAEAAcSCHE8OOqwM/4C+/QvEIEW//zIzwIz/C3QIKA0wA003VeYEOwyUfkDqwfj/P4QYiAaLMUDlQGr+gc1lZmZh4OdkBsuBAEAAsSAnLgkBJN+AATOemPyPFHn/kISg4v9AJBQipWImJiZglCDsAAggFlIT0H+oL0GYkRERDTBL/kG9ho0PCgVgDmBgZWWFmwcQQDgd8OvXL7AGNjY2sKthAByfUIt//vzJ8OXLF7hlMIchOxYUDhBH/Gfg5OQEmsUM1w8CAAGE4oAfP34wvHnzhuH8+fMMFy5cAKbmPwzy8vIMDg4OYIegG/7u3TsGdnZ2qE//ofgUlIj+g2hwsAMT7b+/DG/ffWTQ09OF6wEBgABCccCNGzcYhIWFGTQ0NBjU1dXBhoEc8fv3bzANCUKIL0FiIEdxcXGBQwjkK1CIgIIXJP7nz29gImZgeP+djeHjL2aGL18/MzB8f8rw9etXBl5eXridAAGE4gAeHh4GWVlZsAWgKABZAsIgg2GO+Pv3L8P379/BQS8iIsIgKirKwMHBAXYcSM3r168Znjx5wvDv7x8GDh4hhlWnvjCce/iLQU/sN4O7EiM4NJABQAChOICFhQUenMi+hcU7OAUDHfb582cGTU1NBiEhIXA0PH78GGw5MzMzg5iYGIOKigrDwwcPGP7++sYQYMTD4GPAysDFAixH7j1By2UMDAABhFoQAQ15+/YtOC3AfA/zNchiEP3t2zcGLS0tBgEBAYarV6+CfQxyJCiUQPK3bt0CpxsxcXGwIwT5WcDR8gdYQv4Floiw6IIBgABCccDHjx8Z7ty5AzcMhkE+AwU7zHJQsN+7dw+s7iswbhfMn8fw4sVLBjs7GwYTU0uGa9eugUOQj4+P4e37D+B09efvP3guQgYAAcSEK48jY1iUgByipKQEDhVwiADpvLxihruvBRmktEMZ+qetZjh4YB84lT9//hysF+QBUEiilx0wABBAKCGAHvcwPsxxoOADxfunT5/AvtqxdR3DvU+yDAmB0xgkxDgYZJ/wMuzbP4nB0ckZHFqwaIOVFaCoRS5TQAAggLA6AB3DfAJLJyAxUILl5OJh4OEA5hLmbwzf2DgYODi/M3BzccGDGqQOVK6A0gWIDQo5d3d3FAcABBCKA2B5HR3DQgCWzUAp/f379wye3gEMV6/dYvj6cAYDx18FBk3O8wy2MdHAtPGLgZubG2weKLRA6QdWiKFHAUAA4YwCdBrmgLt37zJISEiADQcVraVl5QzXrlxk+Ay0yDkmDFzn//4NcQCo0AGFACjtgNTDsjIyAAggFvREiO4IWAiAaJBmUHBKSUmBcwKoDABFhbKqBjjOQaECjGmg5VxgS0E5BeQImKXYEiFAAKE4BznrYcMgR4Cy3sGDB8GlHagEBCUskMWghAayCFQ0gywBWf4AWA7APALSj80BAAHEgi0bwuIKZCDIJyAxGA0r848ePQrOkuLAAgc59ECl5IsXL8BpBeRAmO9BIQVyBHpBBBBALMh1N6gE09PTA8c1zMfIvof5ApaiYfEKq7pBloBKyIsXL8ItgkUnzNLZs2fDchTYUoAAwkiEoEQDy3YgC2BsZMuRHYScc2CFDkgM2NQHJ0TkUAUVUKDStqam5u3MmTMjZsyYwQAQQCgOAIUAKNH8R+kcMKA0RpBDDBd4+PAhOARgwQ8LDVB6qaurewvsDzgBhW+C5AACCKM25Ofnp6jND7IIlF5A0QKrXUE+B6WbysrKt5MmTXIGCl2CqQcIIBZsbT5KAawhA3IEqHECSpj19fUgy12A0heR1QIEEAutej+wohuUPVtaWt5OnjzZGd1yEAAIIBZscUxpFIAb9MBoAPm8u7sbp+UgABBAKA4AaaIGACU6kM8nTpwIS3CXcKkFCCBGUHzl5uZeU1NT00RvVpMbAqBiGVhSvp06daojUOgyvrQCEEBgBwBTvgqwpeoIjDcmUO+ZwgQIjgNgaXgUSF0hlFgBAgwAfCHGv3udsccAAAAASUVORK5CYII=]]></data>
	</file>
	<file>
	  <filename>/images/pdf.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAACXBIWXMAAAsTAAALEwEAmpwYAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAAHDUlEQVR42mL8//8/Q35+/gVFBQW1P79//2EA8sEASkN5qOD/fww+ssh/XOqAgBEI/gAtffb8+eUpU6ZYAwQQC1iQiYm9IDmZk+HXLwYGJiYGhr9/IapBfHZ2BoZXrxgYvn+HGPjvHyoGqQXRaA4H2oTd4SwsDD91dRnyq6u5QEIAAcQCd/GfPwwMFy4wMDAzMzC8f8/A8OEDA4O2NgPD/fsMDEuXMjC8fg1R8+MHxDEgGhmDHEEM4OFh+H/vHtyBAAHEghQ2DAx37zIw3LzJwAB0IQMHBwPDiRMMDDduMDD8/Anhg2iYz0G+gWEQ+P0ba5CjAFBoAUMAbBdULUAAscCDhp+fgcHNDYJBfJBikKEgPgjALAXS///9BYYaKKqASQao5j9Q7B8seoD0P6Qg/wd1JMg6kDpWUJRycsIdABBACAeA4l5RkWAI/ofh378gUcfKxvAXXQ5mIYiGYZDDQf4A2sMK8hgUAAQQCwMJAGQQKPj+nznC8K8ug+GPuAzD756lDBz8Agz/gaHBALUMnh5gUYTE/wNks4CiEwoAAoiJFMv/gywHGvB3SjPDnyfAhHThBMPn6xcZ/gJ9BfMpA5LvGZBCA8b+C4xaRqQcAhBATAwkgv+ghAjKIfyCDIzABPX/+1egB/8jfI8eYkjgDzAX/UPLLQABxERyFIASkJIKA9OLZ5AEyQ5KUP/g2eo/FodA0vA/YJr+jeJ7EAAIICaigx8pLhmtXCCGcnEz/OcXZmBEshQl6JEwyHIQzcSEaiVAALGQ5HtYKrf3YmCUV2b4w8LGwCSIcAC6IxDZ/y8YMwMLOXQHAAQQE9G+hxn8B5jpRMUZ/pvYMbA+usvA9Pguwz8WVkyHQvWBLAbFPchiUPCjRwFAAJGWC8A5AVrqvXrOwPrpFwP7qlkMP4AJkxGaE9DjHWQ5zGJsDgAIICZCloIMQTb4PyPQorevGP4Dff5TXZmB+8Amhp/H9jL8ARZIyL6H+RzdcnQHAAQQEzFBj1LtMgENuHWZ4f/XLwzvsuoZGDm5GTjndjF8e/+BgQkYFbDUDsvvhBwAEEBMRCU8WPDD6q3Thxh+AcuBf/beDP8TChl4jh5i+L9mDsN3YOj8hVbluCxHdwRAADEhW/blyxdgE+AXPNjRXQuuL0AF0fG9DN/1LRlYObkY/kZmMvw1N2fgm9XK8P3sUYb/fMACiocPWO3yAUOHC5g28IcAQAChZEOQ5SAMyy4gxcjZ5j8bOwMjMPiZ799i+BqezcDz/y/DLz4BBqammQxcia4MfL3lDL9SKxi43r5gYPj2leGvmg7DXwNLYHAgGiroDgAIIBZUDzKhJKL/6JpY2RnYdm1g+CEiwfDXwpkBVKUwAaOD+egehj/8QgwcV84xcJREMfxU02Vg+v2TgfXlM4aPM7cz8KppAbPvb6wOAAggFpiFIAmQz7EVo+DEB8rrwHKf5cgOhk/6VgwCe9YycOzfyPDrzUuGz2r6DL8yahl43r9m4J5az8D88gkDo4gkwzd1fYafwCjhh0UfkidhACCAWNAajAxYWpEM/zk4waHItHMLOAfwvnvD8OPVE4bXDv4M/23cGNil5Bj4gA0NkP5fOkYMTLvWMXwDtm8/BSQwCIqJA5sukJoUmx0AAYTXAf/Z2MAuZz26m4Fx5SwGpsM7GT5buzN8iStiYNPSBzbv+BhY//0Gt57+//wOduw/QyuGuacuQXLDgSMMDPsPoYQqKJR/ghIytCkKEEA4HfAfWNEwP7zNwDyxjuH7y+cMjF8/M7Dy8DK8Bwa1iK4xA/tfYG75/QNFL1j/zx8Mf4EJOTEpiYELWHMiV7+cQP4rYAu7oaHh5cyZM4NnzJjBABBATOgOABsCtJxl3yYGpqwAhrfi8gyfk8sYWH79YHidUsnAo6zOwAG0HNQwwZfHWYA+BfmWlZUV2LJnB1v+8eNHhqamppfTp0+3ASq5D1IHEECYIQCMb6aD2xn+A5tcr/NaGdiBcSpSk8jw2jGA4X9AHAM/Oxv2MgKqH5bIQNkZxubi4gK29N8z1NTUvJw2bZotUOgOTA9AAKGFABO4XcF49jC4shHYspSBrySS4Y2FOwNDUjGDOA8XqC1MVCkHSgOwMuXly5fIlt9GthMggNBCAFTTARuX8QXAFrI6wz+gIz4aWDGw65ky8LCyQBokIEtwFN3IoQKqiDiAjU9QnHd2doIst0H2OQwABBBmgwTY5mcQEGZgCooHFzScoFYMlrYcIcACbC+CfD5hwoQX6MGODAACCMUBbKBsh6UcAKYkkiwHBfvbt28ZJk+e/AKY4HBaDgIAAcQISlC5ubnXVFRUNIHx9p+BQgCKhm/fvjE+ffoUZLkdepyj17YAAQR2AD8/vzIPD4890AGMuHrkpLgB5JE3b94cxmc5zAEAAQYABPJ6/Je6JoMAAAAASUVORK5CYII=]]></data>
	</file>
	<file>
	  <filename>/images/presentation.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAMAAABEpIrGAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAADJUExURXabzPjOtNBwTcnW6JxKNLK4yvi8oOpiJbheP/voy6GktOnq/PvbwJKr0y1MXlgTFIGn7PX+/v37/vaud2d3ivf06PWETLXJ8tvy+v70/f/s9snH4e3+/srq+IQsHvP1/7TF1fGQdtvs/kNOcf388tPl/PL79daXbtPo7KO03NLe9Of8/v/e/C8/ZuX59Mrh5v+jXNzp8uXy/oiax9Du9P/18+v18d/g/NaBYeLx8/jd2+7x/9vi6r7f/qt/V+99N4GV7pTC0gAAAKF5LHMAAABDdFJOU////////////////////////////////////////////////////////////////////////////////////////wBBYgTvAAACgElEQVR42nyTfZtqQBjGo/E6WiHylkEonE20NiHK9/9QZzrRtv+ce8Z1YX7zPPc8MzMbhuG02m4//+lj1Ofje7vFY8MMP9TcWlsxFr981+rzBUjJPklC3fdDP8RKws11fb0uf4Dcvly+0/0+h3ne5kmb6Os028w+fiLAxErWMR/fFqfFbXlbrk7zbH778ZAjCJEEYfH10GazKRIYhhOwU3ZaRZIkIFmWBQD48AxDn/i63kYPnkJ7inLE0jStZ8B9dprxi+x8WY4eKlo1DamAZVnK57pjESpgE+6T+QTsFGG3q6pKY0HXCUcnTPQi36Qwv40AqQRSoJothwNZHAPidXw6xRnMpzpUioQI1tl2dF2qQu8YpoFTXN48HBEB/hxEx9nVIsE4jQnTxk/hCyCPKlubgUhqJFFznRPHizsf7+H3cqxDdwwA63XA6x1axLkMubaRfoBFPEXQZCAoCukdHU7lWCdSDSQ1zeGyGAFWa7vOUzxSA7RIs07x3RTtGdp6PK6C7UsO4EpoDi3UAhBd18L9XOjx6AH0NSdUDuhoAgs4adrgUjaRP0VgesRlpkDUAiFwNCvaUYkiJEeHySTwBK6uM0EQaEKggXj5NstDg6IvdzLJ9JXG9HizSZZhGdG2ZVlC6PLysMLHgHUeEv8p27TItWLKjd8OrSTJBm629GiSzK+wth+rF5DhEyhbljV38VuWwcXcdalnhieA5+H5OLWUprquS3e/uF6f408giiKEd9nAhPTIwePr4QxvQCAHpamaqhoEQRREMiW14/wJkPBfwzBKFVOtiqj5avgFFHb6WAdOkqY4D+L54RewsCiXpyjqfn90norvw2/gv/orwACBnpaqvpTKMAAAAABJRU5ErkJggg==]]></data>
	</file>
	<file>
	  <filename>/images/sound.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAACXBIWXMAAAsTAAALEwEAmpwYAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAAHFElEQVR42mL8//8/Q35+/gUFRUW137///AFyoeA/nIILgbhABYyMDCgAv57/CBJIMALBv7+//7948eLylClTrAEC8DQGKQDCMBDcxIDoA/yCXxO8CJ48+G21UlOTFHraZFlmxHsm6pd1G+4EaKkSNknKJX5hIGulihCeV3GlL8S+VWdrTbWMHqWxWtrBHWOeCOexj+7+BRALzHV/gbrvvfjLwMPxn+HVx79Ay/8xiPIxMdx8+otBS5aVgZ2NieHd578MLz78ZvgOdMCWsx8Yfv76y/Ab6MjfQM0g9SD61x+YGBAD2b/AciCxf0B9fxm4OdgZLnRowMMHIIBYYAxQqH76AXItRDMzMJyfvP3LIMrPzHDjyW8GDjYGcNCzMDMyvP38BxRqDKws0LgAsoERAwpesEmMECGoqSCSCRyiILPZWZmgwozgWAEIIBZYPHGxMzDoybEAQwIUtMxAA/4DffOfgZUZFBWgoP0HcTGQryHNxuBhwAMP1n9QGsT/+x9Co8r9A4pDzGBnY2PgAoYmDAAEEAssEYEcJcIH4jEzkAdAEf0XlBigiRCSZmCOAVkC8jIz0AffQT6CAoAAYiHVGpAvPn36xPDu3TuGr1+/gg3n5ORk4OfnZxAQEGBgZWVl+PX7F1jdf2j2gIUeOAf9/geNKggACCCiHfD9+3eG69evMzx//pzh9+/fDExMTAzMzMxwC/78+QMWExcXZ9DU1GTg4eFh+PnzJzTbMkKjBGI5TB8IAAQQUQ64c+cOw8mTJxlERETAmkGOePjwIcOXL1/ABnNzczPIycmB8cePHxnWrVvHoKOjw2BoaAh3BMwBLCwsKCEAEEAEHXDhwgWGq1evMmhoaDCcO3cOzAYZCgpqGPj8+TNY3ZUrVxh0dXUZTE1NGW7evAl2jL29PcOPHz9QQgAZAAQQXgeAfAmy1MLCgmHLli3geAfFM8iQv3//gjE42QJDBYRBlty/f5/h9evXDH5+fgwXL15kuHTpEjg0vn37Bs2xqA4ACCC8Djh8+DCDvr4+2Gcgw0HxC4tzISEhMB8U7yAL37x5A49vUHo4ffo0g6WlJcPx48cZFBUVweLoloMAQADhdMCzZ8/AQcfOzg4OYlFRUbgF2traYAySAyVIUFoA+RyUSEGhAlIDEgc5hIuLi+Hu3bvghAkSQ3cEQADhdMDTp0/BmkGGgFI0KPGAfA5KiCAfgRwHClaQo0DZkpeXl0FBQQEcGqBQAVkGUgOKMmDFA44GkFmwHAEDAAGE0wEgX4N8wwYsuQQFBcGGgisuIA1KG8gGgRzy69cvsBhILQiA9HJwcIBpmM9hGNkBAAGE0wF8fHzgBAQCwsLC8BQM8g0oepDLAFiCBIWYvLw83AyQ41+9egWOPpDDsaUDgADC6QBQnn7//j04z6uqqoKDE2QpyKJ79+6BsyLMETAfmpmZgRMnLORAlj958oTB2NgY7gF0BwAEEIoDQJaA4hpksJiYGDhOjx07BmbLyMiA4xAUpyDDT506xfDy5Ut4jgDlfRUVFbAFIN+CcgVIDShtKCkpgfViAwABqCiDGwCgCIZ2G6OINWxkGXebGOWnkh6+q0OLV58BOhcoFHF3VBW6GxEBM7sHREGmgJzwnoSUidAQ3NDMYHeRmdcTI2JJ9QQQigNAkrBiE6QBlM/j4uIY5syZw7B06VIGAwMDcPEKChlQAgOlDRgAqX/8+DG44AKlHVApGB4eDi5BQY6CBT16FAAEENY0AFMEimctLS2GlJQUhsWLFzNs3boVXMCAogPkOFBCBQFQOQBKmKD4BmVJUJSFhIQwmJiYwH2ObjYMAAQQC6yaxCYJC1KQZVFRUQyTJ08GWwTKCbDgBOkFpRlQSgdFESjuAwICwI4DOQwUPcjZDql2BFsGEEAs2HyOLgbSBMrfiYmJDCtXrgQHr5SUFIOysjK4hJOUlASrBQW9mpoaw86dO+EOg+mHOQKUyEHtCFAOBhEAAUTQASAASsmgBArK46BEBUrdoCwKK7BAwQ5yFCjrSktLM5w9e5YhPT0dnE5gjREQAPFBCbO9vf3JrFmz/GfMmMEAEEBEtQdAQQ1K+aA0ATIE5GOQhSCfgBwGSuWgohaUc2ANFRCNjkFlSkdHB8hyC1BpDzIbIICICgFkH4AsAwUnKFSQ4xbW0oEVNsiJD9RgAeWQlpaWx1DLn8H0AQQQSQ6AqYElQGT1yE0vEIY10UDFM6hc6OzsfIJuOQgABBALAwUAOQTQAcgBoMYqqJru7+/HajkIAAQQySFAKHRgAFRigmpNYNZFiXN0ABBAKA5Abq1SAkBZDVQoAVM5XstBACCAGEHBmJOTcwXYyNAGpmhgxwZPuBIXCozAJjwjMMU/mzlzpiVQ6Am+KAQIIEZo4hEB8nWg3aL/FAYAI9SMG9jiHN0BAAEGAFSDxYXqY3MTAAAAAElFTkSuQmCC]]></data>
	</file>
	<file>
	  <filename>/images/spreadsheet.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAACXBIWXMAAAsTAAALEwEAmpwYAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAAGQklEQVR42mL8//8/Q35+/gV5RUW1H7///GFkYGAAYRD4Dyb+M2AF/6HyWAX+I5EMKAoZgeD/vz//nz19enXq1KmWAAHEAhJkZmRkD8wp4Hz3m4FBno2B4cUvBobnPxkYmJAN+I/GJsRHsxgGmICG6vL9ZqgtyeUE8QECiAWm8t8/Boat7xkYiiQYGJa9YGBovwc1ACjO8BeK/yHhP0jif/GoQwskdlYGhocx/+GhDBBALDA5kNrL3xgYNrxlYDj9mQHsfWZsvoLxmVE9yciIxGeE8hlRtf0DcphZUN0EEEAsMMvlgEGfKQ7UA1RULc/A0KiAIzhBUQ00CZR2EOx/8ND6BxL/B/E6RBih9h9QgJWFhYGXlRHsGBAACCAWWDpjB9JOvAxEAuSkygAJLnh4gyxjhBgKTcD//v5n+Pv7N9gxTIz/GP4yssF1AgQQCzbjf/z4wfDw4UNggoEnQ4Y/f/4wMDMzgzEI/P37FywGUsPKygr25W+gJSBxmDqYGA8PD4OwsDAwYICW//3DwMWFcABAALbJFQdgAIShZPc/JQLC1+GXVk0MCW15ps8fwN3J7jIMATBWFcG6W8yMOuxwV1WJCALBh+fuLjNDb2aifgSC5juvAMLqAJBibm5uBl5eXjgG+YKPjw9sIQiD2CA1IPHv37+DHQtSx8XFBRYDWcYCjG8QG0TDQvHfP9SsARBALLhiGeT6X79+wR305MkTsO85ODjABt68eZPh27dv4CiQlpYGqwHp+fLlC5gWFBSEmwNOB0CLQQ4HqWdkRKQfgADC6QCQb0AWgRwhKioKtlxPT4+Bn58fbBjIEFDQS0lJMXBygssUsINA6uTl5eFqQGKg9ASyHBQqyOkKBAACiAVXFLCzs4MVgzSCLADxQUEOswwEQKHBxsYGToQgAFID4sOCHCYGcgwswaI7ACCAsDoA5Ovr16/DU+779+/BQQtKfCBLYT4BJTyQA0GWgsDPnz8ZPn78CJaHhQAo4YLMA6lHj38QAAggnA4QEREBJyCQoZKSkgwfPnwABzeyA0By4uLi8FABJUaQ70FpApQoQQ4AiYFyFXLoIgOAAMIZBTCLQBjEBmUtkOEgDHMAshjYMCANKwNAZoAwSAyW8LBFAUAAYXUAKEhBQS4kJAT2HShPg/iPHz8Gy8EcAEpwoLiFRQEo5EBRAEv1sCiApX6YGDIACCCsDgAlKgkJCbCBIM2ysrLgQkdGRgbsIJgDQJaDogc5CkCJDjkXgMRu374NDxF0BwAEENwBIENhBoA0Q4pNREkIS1ggMVjUgDCID8Kw4hmEYepAlsHkcDkAIIBY0OsAkIWgRANK+aA8DwoNUFEKigJQVCBHAajYBbHRowAU78hRAMuCILXoDgAIIBbU1gqilALlApBGkKGgoAdFASgqQAkSXr8DLQFFFUwMZBmIDVKH7ClQFCCHAjIACCAWWPCDJGCpF1YAgTDIEaDsBnMMzCcgGsSHicHKARAfpBYWBSAxmOeQaRgACCAW9OwHw6CgBEUBKDhhZTwoFJCjAKQG5GjkgghUXoDSEcxToHSFHgXIoQAQQDgdACpgQBaAfKKiogJOB6ACBjkKQHIgdehRsHnzZnjZD4omkMP27dsHDwFolQxurQAEEFYHwCoWmKs/f/4M9glIDJYjQHLIYjAHgPggC2NjY8F1B8zXsMQKSuA1NTVvZ86cGTljxgwGgADCGQKgoATV+bACBxQFoLIfFgUgNaCcgi0XgHwPyj2wSgqWuEEOq6urezt58mRnoPANkBxAAOF0ACjlgywGBbOGhgbYckVFRZQoAKUP9CgApRdQGgA5BlZEg/ggyysrK99NmjTJBSh0EWYGQADhjAJQsMPaf58+fSI6CkBBDGsvghwBCh2QWfX19TDLLyDbCRBAGA4AAVAtCGrRwBwAsgBUL4CiBSUFA32ILgbSA2ucggAo6lpbW0GWO6NbDgIAAYRRF8DiFBTc2OTQHYwsBgtBUNyDHAKyvKurCxTnLtgsBwGAAGJBrwWpAUDRA4qa/v7+t1OmTHFGjnN0ABBAjCAf5ObmXlNXV9eEBRslANYOfPr0KchyJ6DQJVxqQXYDBBDYAcDspgrEjkAHgHvPlDgAaB44Qbx48eIYqLtJQC0DQIABAAtA57jciQkeAAAAAElFTkSuQmCC]]></data>
	</file>
	<file>
	  <filename>/images/tar.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAACXBIWXMAAAsTAAALEwEAmpwYAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAAIOElEQVR42mL8//8/Q35+/kUFRUXV37///mVg+A9GDIxACkSDmEA2iAPlggFEDiGCxmWAq0YRAxsLxP8Znzx5fGXq1KkWAAHEApJgYmRkz8wp4Pz5i4Hhz9//DP+AYr///GfgYGNk+PHrP8P3X//AFoIc+w9I/wM5BsoGi4MgUNM/Bqj4P5gaqB4GBiRxBgY1CVaG5ppCLpDdAAGYIHcTAIEgiI5wRYipNmCplmQFBmJygWBgC+rdfnQ8EAwWdhh2ebzwwYkC86YEMHRNQNwFbR0wrRfG5aCFm1COZI6sxt2QmJWgYv+OI1aymJcu8+d7k8RxChCHnhaq4uYRQDAHgIPm9Yd/DHzcDAzXH/9mYGZiYLhw/yfD1x//GDiBIfHnH8hHjAx/QQH4HxQ/EJoRFq7ggIUEMCNIHAQZGcEOZ2RkggY9IhpgACCAWGBxw8PBwGCtzQYMpn/gaGACqvr7j4WBCegQex0uaHD+gwTnv/+QIGZgAVrKxPDvz0+Gv0BfgkT+gRwKxH+RownM/wemGYDqhXlYwPpBACCAWJAcwyDGB04RDMSCf58fM/x6d4+BXcaSgZEZ6IP/fyC++Q9xICwVgxPkPwjNxAQKRQQACCBICPz/z0AK+PP9I8OXO9sY/ny6ycDAwszw4elVBiGTZKAjWBn+/v7FADMTZi6MDcMcHMxwswACiIkUi/8Dg/rLrW0MH89PYGDjZ2QQ0PdkEDGNZOAEBt2zQxMY/vz4wsDEwo7XQ6AoRgYAAUScA4Dx9/3xMYb3p3qAnGcMQmZhDFxyjgx/f3xj+PvzEwO/iguDoLIyw6P9vQw/P71kYGblwPA1JBv+w3AcQACx4Lf3D8OP5+cYvj85xMDKycAgoOfIwMQjBkydP4Feec/w+8sbBmY2NgYGtrcM/Ip64AT7YH8fg5RlJgOPmALDn5/fkAqu/+CEysSE6meAAMLpgL9fXjJ8vDQHmCQ/MnBLajKw8kkw/P30jOHP23uQZAV03M/XzxhY/n9jYPkrwcAA9DWvtDyDMtMfhhsHJzJImKUwCMvrMPwGRguy7yFZE5ERAQIIpwN+vDjPwMrLxsAr787AAHTM/5/vGUCK/7NANDMyczFwsgPLjqMLGX4xAbMPtzgwXUgw8IvLMijqqTLcODSZ4YdRLIOEminDn98/wZaDfI8eAgABhDsKmJiBwQvMWqxAW4Dhz/jlBbTAgrqehYXhzxdg0CvoA7MVK8P3L98Yfnx4wfDs7SsGNm5+BjllCYbLOzqBlhcySGpZMTD++wGtVxhRrAEIINwOACr8D4rrXx/AWY2BnYeB4f1DSLEFKnz+/WX49+s7A7+kHDA0mBkExWE1F9CHwOhhYPzJ8FKUjeHj6xcM0kBf/8VhDUAAseBJ+MAMD6qdvgPxT4gjeEUYGN7cBlvwF1i2M/39wcD4/Q0DuJZhAhoFCt5/wML+P9A6bh6gpcyguIIXy9hCACCAcDrgH6g8/wt0wN9vEIeADAVVEAIyDAyvrjH8+fiOgR1Y8ADDHWgxK8TFYDWgXMEFpv/9h1rOxIhhMQwABBDuEADlXVgIgBwCrm//MoArCREFBiZg3c3KAPTtH2Dc/vsKCQE2bkiaYQE6goUVGFmMkBhDSvnoiRAggFB4P378YPj9+zc8BP6DLP7zDYFBofH7E9DEfwzsEsoMTL8+A9PIF0i8s0AtBoUKKBSAGBQFoNhhxFPWAAQQSgiACoo/f4Btgv8sDD9//mZgBwUpOApAjoIGMSwUfvyCWswBtxBsOROUZgFFAaQaRs5+6CEAEEAoDgBJQspqUCuGheHb+/cMgmLckCgAi/+DpnBoCwJkKSj+WVihlkNpKAbVvsygEGDCnQgBAogJvTZkZIQEPb+iBcM3VgOGx9fuAaMfVPQC08Lvb5A0AaJBaQIc12wIS2EOAZaKDOzAsuHbN2CI/gUHGCwdoJeEAAHEhJr1oQqAIcAMTEyydjkM33k9GK5ffAXMCECL/3+HZsvv0BTPjgh+sGOAfB5uhh8/fzIc33ya4cMPcQZZTV2G379+g0MWhEHRjNQIYwAIIBZ0ByCywV9wU0rJIY7h2RUVhkvnpjNoqfxk4GABRsFfUNjyoiY6Tk6gRf8Zrh27wbDxDDsDC5ckAxe/IMOmnfuAgbUb3jhmBhZav379AoU6uF4GCCDcDoC2Zf4CfSOtYwX0LC/DuUN9DHoKrxl4uH5BWj8swPzOzg5ObHcuPWK4/ZiNQVzLh4FX/DZDRmYWAysLM0r9zwasOd8D01VNTc3rmTNnhs6YMYMBIICIag/8ATpCUlWXQdm1juHMHRmGt++AwcgBaloxMTy485Jh7/7XDG9ZHBlsYtoYTFx8wIn5D7RlBGKDfA2y/PPnzwx1dXWvp02bZg+Uug2SBwggAiGA5AhgsInJKTKwBjQwnN/YwSD0+gHD26//GdjFbRkMQ30ZRCQkwE16UDYGJWpQMMOyHCcwekA+r62tfQXsjIAsvwEzFyCAWEhpkv0GGiooLsFgElzNcPvsYQYjQ2sGIVFxYOsZYiEsjkEOADkEJMYOjKI3b94wNDU1vUa3HAQAAgijHCDUQP0LNJhXUJjBxC0I3AQHWYRcwMBokDgHBwfY5+3t7VgtBwGAACIpBJAbluiNS3TAysrK8Pz5c4YpU6bALL+OTR1AALEg50lQ8FEDsAAbK7du3fq7aNGiZ7Nnz3bD5nMYAAggRlCQ5+TkXJaVldUC+grYnyCxk4DekAL2PL5//w7y/ROg5eZAoVf4alyAAGKENhSFgXwNUCCgdqjJAoyQSgPs6zd4W91AuwECDAB5pb2L+BJ+bgAAAABJRU5ErkJggg==]]></data>
	</file>
	<file>
	  <filename>/images/txt.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH1AccDAgsHo/fIQAABG9JREFUeNq9l89vVFUUxz/3/epMp9BO27G1VkIBIaQEFTH+CgYxopu6EBe4MHGjYcHehf+DKwMdSYyNCbIxEZCYGBYksyBhIz+MiNGIUKBk6M/pzHt99717XAwzdPqm7bQqJ3l5M2fOe9/v+Z5zz72jRIR8Pi88Zjt27Ji6cuUKiAijo6PyOG10dFSALSKCs5jVNxdCtj+puHE34vVhl+8ulnl2yOXibz5hZAhjg46qV+1zGBl0vOS+XGxsuHn8pQYlrKXSVEKhd6PiVjEi7SnmffO/lqJBgYPPORiplkUEhvocROD5obaqH8EIGGMwRoiNQWrfH95jI4gIRpr/viKBvi5rVcZVctULo4knL8PGneCkH/mXxC32r0hgrWZd/wgd7WGmcJKpcZ/Bw5/hZfuXBWzmWxOBhmzKf0D3DVKpDfRv/ZRev8yvx48ydPRLnI5sMr6VHlgNfLGp25+j+q7BPQ9K7+CYQ2wZ7qMy8RcdW7sS8SJCHMdJFdejAOEDVMdliDtg8iqIB9fPMVOcY8O2Pcn4h6a1Xh+BRPZ/f4HKXIPp3VXH/CAm/QTsPNRUchEhiqLmfbTm+kc+yrsAIjAzAW1b4dY9iqVOul8eadovNfmVUmsnkMj+zhiq8xaU9oFZAL0DSXcT9L8BqKbZa61RSq2PQGM2Biv+CdAwF4HXB3enmApz9B74MBFvjCGKojr4mgksraeaOIvqnoPgFYhKoHaBm2HGHUa5bYlBVJN93QSWErHmvwe7AqV2cDqh6DMX5ci9/UlDfBzHTcHXRCDRzdOXUDkL9E7QU+DsArEolrpwOrJ1yeM4RkSagq9KIAzDpk0kIliTJ8Gdh/lesDIwp/DJkX3z47rctc1mOfBmBBomYRAEBEGA4zjYto1lWdVs/JtYPe0QD0I4Cd520CUmxiN6XhusT7ilAL6/QKUSICJksxuxbWtlArUX1GpYs9Sdr2BTDLP9YIUQZNC2S2rv/gSoMYZKJaBSCTDmkZqzs/P09HSuYy/Q0zjdHSCAngXvaZiLmPjzAV3v7Vk0ZiPKZZ+FBd1089E6IggW8DxvdQUaAornUAObYcEHaxyiHozjozYPo5QiCELKZR+toxXfU+2xCNu210ZAmQpE+8FcBScHvuH+73dx931AsThdl3nxs+fP/7i+I1lTAkrA8qBtL3gRtwvfMuNtp70crPjikZERHMd5eHwziAiu62KM4fTp0wDllghoX6hV7ebZr5nf8AyZ3W+tmlkul8N13YQ/n89z5MiRARG531ITlmZjLhV+YWCiQLzpVdq3vbhsbCrlkcmk60u6tpJqjXfixIka+L2WS7DgC+Wff4ADh0kP7EhOMkuRTqfIZNIN61xrXZc9DEPGxsYS4C0RaOvcxK53D+L0PNUwnm3bpr09RTrd1rx0WmPbNmEYcurUqabgLZUg+8L76zsxWxaVSoUzZ84sC54g4LruiifY1UwpVd8PisUihUJhRfAEAd/3/zWBWjlaAW8gkM/n/9P/fK2AA/wDBrxkMKMQfQgAAAAASUVORK5CYII=]]></data>
	</file>
	<file>
	  <filename>/images/unknown.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAACXBIWXMAAAsTAAALEwEAmpwYAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAADPElEQVR42mL8//8/w8yZM/8z0BlUVlbKvXv37jFAALHABNLT0+lmOdDDDKysrNJA5mOAAGJBlli6l4EBGCAMv/8wMPwC4b9A9m8Ghr9/oew/CPwLSv8BiQPxnz8QvfjAv39AO6ohbEbGP2DVAAGE4gCQyL//EIPgmAFK/0MVQ9aDrB4nYETVBwMAAYTiADN1iCEgR/wD+uovjP0PiqHsP0AJEPsvkADx/4LV/gM7Euasf/9gzgOZ+R8aAiCaA8UBAAGE4gA1GWJiEBxOyP5HYHhQ/IN4BKTuH8QBMAxzwO/frGAaIIBYSE1AEDsYwYZBfAQNNSQ2TB5BQ+IARLNxQsxhhdjPABBATKRZ/h/NNwwobGxqkfn//v3DUAcQQEzkZCNsjsAmjiwHAn9AWQUNAAQQE7mWYrMAl+Uw3/8G5WkogLEBAoiJ0kIFW1RgY4N8jy2qAAKIiZy4JzYdIAqgf8Cs+peBiQnTOoAAYiE36AmFBAzDgp6RkRGM0QFAALEQYzmxIYGuB2Q5KOixWQwDAAHEQko8EwoRZDFQkMNSPT4HAAQQC6mJDFvco2OQxSDf47MYBgACiIWY4CclHcBSOzGWgwBAAKE4AJRYWGFlJAmJE5bKYSUdsZaDAEAAoTjgy5cvDMzMzAwsLCzgLIOcbbClbpClyCFDisUwABBAKA4AGQAy+OfPn3DD0A3FFg3kWAwDAAHEgs0gfAZSYhkIgDyHDAACiIWahsOLV2DU4TILFMWQ6hiS1gACiAVdklBKJwYsXbqUmEQMdiFAAFE1BED6QQkTBHx9fcGJGZSmQBjkMZCvQezGxsZdr169ugdSBxBAVHcAzAxRUVGsWbq+vn7PjBkzkoHMVyA+QADRzAE/fvyAhwYbGxuYrq2t3dPW1pYIZD6B6QEIICYGGgFQofbr1y9w0IPo6upqDMtBACCAaBYCIAeAEjXI8tbW1j3d3d0YloMAQABR3QGw0hNEf/v2jaGnp2dPX18fVstBACCAUBwASrWUZENYSQoCr1+/Zqirq1uwdu3aGiD3KS49AAGE4oDv379T7ABYKBYWFk7ctWtXBSg94tMDEEAsyD1WagKg5bWELAcBgAADAJLuk5yS/dPUAAAAAElFTkSuQmCC]]></data>
	</file>
	<file>
	  <filename>/images/video.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAACXBIWXMAAAsTAAALEwEAmpwYAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAAHYklEQVR42mL8//8/Q35+/gUFBQXV379//wXxQRgG0NmMjIwMyABZHh1gkwPqZwSK/3/+/PnlKVOmWAMEYHSMUgCGQRgadDDoUTxZr+F99VuQVoZl+19+Eh4h5HrhPecc7v6VQESICDAzMvPwzmaGtRb23qiq43/Vh3pXRKCqo9kjgFhgEiBDr1+/zsDNzQ228NOnT2DDJSQkGM6ePQuWf/fuHcPDhw8Ztm3bBrb869evDD9//mQgBbCysjLcv38fzgcIIBYYA2QgyAKQoSAsJCTE8Pr1a7AcyDEcHBwMoqKiDOfOnWPg5ORkAEYX3PcgvfiiCCYGUs/CwoKiBiCA4CHAy8vLYG1tDVYE4oMUqqqqgoNMX18fbCGIDVIDokHqYGqRHYBsMYwPY4PUsbGxMfDz88PlAAIIHgIgQ2VkZBioDdAdAbIHFMUwcYAAYiHHQGTfgRLmxYsXGUAJ2NbWFhy8oPQCk0cOHVh0gEIXBgACiIkc38ByCsjyTZs2Mdjb2zM4OzszNDQ0gA2HWYCeJkB89FwDEEBkhQDIUBBev349Q2xsLIOenh6DibERw6SJE8G5oqOjA5zaYUGNnAbQAUAAsZAa9DDL161bx5CYmMigra3N4Ofry2BgasOgqWfEUFKQw3Dt2jWGpUuXMvDx8YHLEmTfgxyGDAACiIlcn6elpTGoqakx2NpYMUgpaTPI6tow+IYnMcyZvxhYbpxhCA4OZvj8+TM4+yL7Hj2bAgQQEyklGEjzhg0bGLKyssA5Rltbi0FZ25zB0M6bgYWZkeH3HwYGN99ghh279zM8f/6MISAggOHLly9gX4N8j245CAAEEBOxPgeBFStWMBQUFDAICwszSIiLMfwFpnZ5dS1g6cnMwAj0IEjVr98MDOo62gxbtu0AFtuvGQIDA8GOAIUELASQHQIQQAQdAFPc0tLCUFxcDC6Qvn79zGBu68LgG5bIcO7QDoZXj58wgMxnYoQ4AhTtSooKDLt37QaXrjExMeC0gF4KggBAABEVBSDLFyxYACyCORiePXvGYO3gwZCSW8Lg5OnCYGHrzHBy30aGd69eMrCygRwMLBuApn79/odBUkqKYcaMGQyHDh0CJ0x2dnYMBwAEEAuhKhVk+ZIlSxh+/PjB8PTpUwYnN1+Glt5pDKwswNryKwODnrExAxfQYVdO7mPgtHVnEBETYvj59QsDE+s/hi9/mcBlA6j4BuUWUAEFSkvIACCA8GbD5uZmhlWrVjF8+/YNmKieg2vKf/+A5f8/kEHM4CD/A6ypVbW0Gbi4OBke3DzP8OurHAM3BwvDb2DCA5URoCgDJVweHh5wuQAqvJABQAAxISc2UCECK6lAlq9duxaclR4/fsxQ19zOcPfZBwYpKQmG5MhAhs+fvjJwsEPi/C8w9cspKYEt+frhNcN3oIOjo6PBZoFKSlDlA2tToAOAAEIJD5AGUBCBChGQz0EJB1T/d3R2M9RXlTHw87IwTJk1h0FWTp4hLz2R4d2nbwzsnAzgBHj/1k1glHxmeA1ssIAsB/l048aN4MIIZDnIXBhGBgABhMKD5XUQBoUGiB8VFcVQXlbC8AsYMMBkAPQxI0P35KkM0sAEVlOcw/Dw2WeGvTv3Mlw9d4Lh5cuXDLm5eQxiYmIMa9asgVsOMxM9C4IAQABhpAGQr8PDw8Gto5UrV4ITzunTZxhMTU0YvjNC8vl/RiaGus4JDN1NtQx58X4MXz59ZBAQ4Ge4e/cuQ1BQEENvby84SmGWY8vWMAAQQEzYJEFRAUoDIIecPHmSob+/n+HU+cvgoAZlmD9AR7AAi3QFJRWGv7++A33Kw3D+/HmG0NBQsFpQsYtc5+MrXwACiAVdEIRBBoBSL8gRIEMWLlzIwMnByRAWm8RgYmXFAMwIDDs2bmE4uncTg4SkJMPx4yfAdUNXVxdY3/Tp01FqPvT2Ayh6gfJgAYAAwuoAWEMCZBioHACxQY74DcxzP37/BUfTkd0bGHh5eBn27tsHLulAlsNayiAcFxcHzhXIDgEVx69evQKVDS9mzZoVNHPmTAaAAMJbDoA0g9JAW1sb2OWTJk0C8n8zKAOzHC8vDzB/bwRHU3d3N9hykFqYB5BTPQx/+PAB1Bx/CQwhW6CSByB1AAEEDpqcnJzroCAB+vg/MHgwMEgcBIAl4n9JScn/7u7u/5WUlP6XlpaCxYEWw9UC4/5/X1/ff6BP/wMrITAGmQ1sYf8H1qLPgXaqIEcNQAAxYYsCdAzrN4DyN6hsBxXLKSkpDJ2dnfBgR89mIHFQFIJCDlSK1tXVvZg2bZoNUOoOsp0AAURSiwjkCF9g68fHxwccpMiNT3QAK/dfvHgBSh8voMF+F10dQACxYPM9oXQBUgMrsnHlc1AjBGT5hAkTQJbbYLMcBAACiAW9JEQvKskBoHof1EwHdj5x+hwGAAII1FNlyM7OvqKoqKgN9B2od/yfEstBvV9gYmQEthteAdOLLXqco0crQAAxQptcIkC+DqicAIlToUPECLX4IaF0BRBgAG4Y+/r2qXM2AAAAAElFTkSuQmCC]]></data>
	</file>
	<file>
	  <filename>/images/wordprocessing.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAACXBIWXMAAAsTAAALEwEAmpwYAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAAH+UlEQVR42mL8//8/Q35+/gUFBUW133/+/AFyGRgZGRhA4iAApcBiDFD2fyQSREFZeMX+QwlGIPj//+//58+eXZkyZYoVQACxgMSZGBnZ07MLOD99Y2BgA4r8+P0fTP8E0iCLQXZ//fkP7CiQQf/+QWkg/98/kLlACBT7B7IDREMdAJIH6QHzoWpBhqmJszA0VBVygewGCEADlRsBCMMwcbABJTswKmsxQqhoqJgA4i8oQNxYJ8k+2UNLpw6sm2IaAfeCS+NXCvZTkI6bwQLGbdmC/oCwCwfVnJg8uYr5R+oF0jz++bIYouuRlvk9qtYjAE1krAMgEMLQtrCYOPj//+eqi+PdIZwnCQOFhPTVf1Al9GC+I86r4diJ+xmQgH1zmAueLjg4qYhYdAKWgzTATlhqzQIqR3Nf99lRuQpBfXGuegWgkYxSAIRhGBrsWLuJ+CfiHbz/xTZ0zoq1YL5K8xNeEv6eJgH2rfidFkUSxjp2x6iq5kWknFFLxXk1Q0oWKjijdjTcqp5oIELvHcKCyOz/b0eP8VejRxQwJ/JaPr0CEEnGOgjCABB9ajvQgiN1cGDp/3+UJA6g2LQTtEpLInzAJe/enfgfrVCl8MB9HEpV/GLFOcaS5DUOGGO4tR399CS8R6SUG5AQF+bTArm19x5d13mmBXu3NFfNtwDs58xmstI5HQpWAcTCgAS+AX3CxsEJiQpgXDECw/PTp/cM7BzcDD9+/mG4d/8Rw8+fPxk4ufkYfvz4wfD1+y+wb0FBrK2tDXQ4Fzi0QAkOJPbtx2+k3PQfyv7LwMbGBrcTIIBQHGBsbAxng4IMZAjMAEZoxP0DJ2UEgFkI8hlIDQswWkBqQGLMwOhAdgBI/A8oVJEAQACqyBgHACACgldS7v8/qdGoZCQuoUIWgwMQEbMZjdx9TkoRPs2wqvoQ6HaYmb3MHCDeQ54a4gVHJ+kAtADCcMD379/BmniAcQnS9O7dOwZubm4wBlkOCnKYQ0C+BvkIZDlIHOQAWJTAMChEQBaDxEFYSEgIxQEAAaiiYxQAABCGgf//tdwQqC4KSo31AbgeIXH0Ls9SSwgBMQcQaI5Y5re5IuvT2bqXFCeAUBygoaEBDnY+Pj54vLEDsxLMQFAiA7FBNAjw8vKC+U+fPgU78MuXL2AHfvv2DRw6/Pz84FABJVwYHxaVMAAQQCgOAAURzJf///8DF07A+gFsCD8fPzDv/oMUjkDHfPyISC8fP34ERx8oNEAOBvkW5BgQBoUgKFpBjgaZDeIjA4AAQuGBFDx/+Ybh3aev8FoIlI9BFr37+A0SfFDxX79+MMjJSoMtAxkKCgGQA0COBQEQH5Q+QNEIUgMKAZB+kBhyKAAEEKoDgPj560/A0uw7vCYEhcTfP8A0wfoL5BwGmBtYGP8yyMsywLMVKJhBoQGKFpAYyNeg3AAKBRANcgQoFNCjACCAUBwACnJ+HnYGVmhBAS5CwQmNAVgYscNDAFzT/f0NrvlAvoelGZjPQVEJSpCwwgfkAJAYyHGgkEAGAAGE6gCgD1SVZIAK+aAWgbLPH3D5z8/PB04D4EIHWKGA4v3fv7/g8h5UTMMKGliCZUSqcWAFFShkkMVBACCAUBwACjZQLvj/H9Eg+fsXlAi/MTAyIQodkCFfgSkdlKrBlQy0sEHPYjCL/0MrNGwAIIBQHPAPWG+Dgo6NjRVsCcinoNoM1ADhAeYMcAgA2SDHgBwG8zEoG4LiFsYHeQRWNINCChT3oDQiLS3NICsrCy/MQAAggFDzBNDgZ8Bc8PbDF2h8M4At/fnzB8Prd5/g8Q9KLX9+/wQmQil4IQMK3k+fPsGzHSh0YGUCKHeA0sGLFy/AJSEoq8IAQACxoAQdkH755jOwFvyBFI6gXPCbgeXTH5T2HQvjP3AuADkAlE1BloIwqCQVEBAAR+VfcOhB0gTI0vfv32MkQoAAQgkBkKQgHycwF7Cj1Irfv30F5gI2RAsV7K6/8MQmKioKDgFYigflBBEREXi+h9UHoFCBlawwABBAGLlASV4SnF1giQ0UX+/ff2AQA1oC0whyKCi4YSEnISEB1w8SmzFjBkrCRE6cIL3QNAAWBAggFAeAXAoqOD5//gLXBEv5n798QWkbgIpoLmAcgwxEbyOAfB0XFwct0hEOAPkeZH5NTc3bmTNnRoAcChBAKA4ABR8okcB8D/MRMo1c28HiE7kRAhMHiYHMg/kallbq6ureAvsDTkDhmyA5gABiQc6zFy5cALseFkygLAlKUCDNX6AhALIIFPxSUlJgPihhgcp7UGkISvGghAiqD0DmgLIezOcgdmVl5dtJkyY5A4UuwewFCCAm9IIDZBDIAWJiYuC8DTIMlJdBCQjkIxAflK9BqRyUvUCJDWQ4yIGw1hAIgxwAkgcBkFqo5S5A7kVkOwECCCUKQBpAjoA1SBCl4V+Gt2/fgh0HK2xAGFbZwBomIIfDqmhYIgTJt7S0vJ08ebIzuuUgABBAGGkAFOyw5hjIEJClr169glugpqbG8Pr1a3BWAwUtrHqF1XSwFhIoDYB83t3djdNyEAAIIBbkLAhKtSBHwJpRsAYKyHCQRaB4B6kBFan4wM6dO8HpZOLEibAEdwmXWoAAYgRZkJubew3oM03kJjR6+YAuhtNAUH8AmBifPHnydurUqY5Aocu41ILMBAggRmgJpQIsfByBQc4E6j0zUACA5oHrW2C5fxRIXSGglgEgwAAnIungv6dsbwAAAABJRU5ErkJggg==]]></data>
	</file>
	<file>
	  <filename>/images/zip.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAAK/INwWK6QAAAZxJREFUeJzt1r9LVWEcx/H3Oc9zO5pYgSKCk1BERD9GhxxcIiHFhGthDUqLk9fBazfScPJG/QElbQ7heAVncQgR7yCCdRGx5YIhkXJ/1dXjc74tqTSYQzxn6bzWB573Z/zCKXoZTTVz5dpp71b1M/o6U7cqjbR0hh6Pk0jnB0uy8mBTLtB8L9R4n0qkt57siiyKfOz5bMIYoI/jtYn0VO/LVFN7DaXcT4JKgLJd/z1ADTSm0lPxiWTD1RjVgo8uKjzluaAc6wPu8Gi4qzWe3ChucZD1BXHQh9rJf9sxBiO2Bzgx6m6AuW4wDqijoAMEAdUlIG97RCQSiUQikf+b9ZOrg4d3+72RzqoqHV9X2tdO2T9Ub3n+3nafbmfwzV7qQAofKrI3U5YfM/uyfvOr9DCUg9gtffYX/0bOUcUI5rshhmZ7ucz4p8lshukEsGZ9gFsD/m6ADmD7S4Wx+fHsnJkeBpYBXNsD0C71lz2KxvBsYSI755/EQxng1Wu3JIbk7IuVTOHdH/FQ3L/09NXjprEc0BZq+Mh5Lt7+W/wXG9yT6kNdK40AAAAASUVORK5CYII=]]></data>
	</file>
	<file>
	  <filename>/index.html</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[]]></data>
	</file>
	<file>
	  <filename>/lang/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lang/en_US.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2ZpcnN0cGFnZSddID0gJ0ZpcnN0IFBhZ2UnOwokbGFuZ1sncHJldnBhZ2UnXSA9ICdQcmV2aW91cyBQYWdlJzsKJGxhbmdbJ25leHRwYWdlJ10gPSAnTmV4dCBQYWdlJzsKJGxhbmdbJ2xhc3RwYWdlJ10gPSAnTGFzdCBQYWdlJzsKJGxhbmdbJ2ZpcnN0cGFnZV9hcnJvdyddID0gJyZsdDsmbHQ7JzsKJGxhbmdbJ3ByZXZwYWdlX2Fycm93J10gPSAnJmx0Oyc7CiRsYW5nWyduZXh0cGFnZV9hcnJvdyddID0gJyZndDsnOwokbGFuZ1snbGFzdHBhZ2VfYXJyb3cnXSA9ICcmZ3Q7Jmd0Oyc7CiRsYW5nWydwYWdlJ10gPSAnUGFnZSc7CiRsYW5nWydvZiddID0gJ29mJzsKJGxhbmdbJ3Byb21wdF9ncm91cGxpc3QnXSA9ICdBdXRob3JpemVkIEZFVSBHcm91cHMnOwokbGFuZ1snaW5mb19ncm91cGxpc3QnXSA9ICdTZWxlY3QgdGhlIEZFVSBncm91cHMgdGhhdCBhcmUgYWxsb3dlZCBhY2Nlc3MgdG8gZmlsZXMgaW4gdGhpcyBjYXRlZ29yeS4gIERlc2VsZWN0IGFsbCBlbnRyaWVzIHRvIGFsbG93IGFsbCBhY2Nlc3MnOwokbGFuZ1sndGl0bGVfc2NhbiddID0gJ1NjYW4gZm9yIG5ldyBmaWxlcyBpbiB0aGlzIGNhdGVnb3J5JzsKJGxhbmdbJ3RpdGxlX2NyZWF0ZV90aHVtYm5haWxzJ10gPSAnQ3JlYXRlIG1pc3NpbmcgdGh1bWJuYWlscyBmb3IgZmlsZXMgaW4gdGhpcyBjYXRlZ29yeS4nOwokbGFuZ1snY3JlYXRlX3RodW1ibmFpbHMnXSA9ICdDcmVhdGUgVGh1bWJuYWlscyc7CiRsYW5nWyd0aXRsZV9jcmVhdGVfdGh1bWJuYWlsJ10gPSAnKHJlKUNyZWF0ZSB0aGUgdGh1bWJuYWlsIGZvciB0aGlzIGZpbGUnOwokbGFuZ1snY3JlYXRlX3RodW1ibmFpbCddID0gJ0NyZWF0ZSBUaHVtYm5haWwnOwokbGFuZ1snZXJyb3JfcGF0aGVycm9yJ10gPSAnQ291bGQgbm90IG9wZW4gZGlyZWN0b3J5IChwZXJtaXNzaW9ucyBwcm9ibGVtPyknOwokbGFuZ1sndGl0bGVfZG93bmxvYWRfY2h1bmtzaXplJ10gPSAnU2l6ZSBvZiBlYWNoIGRvd25sb2FkIGNodW5rJzsKJGxhbmdbJ2luZm9fZG93bmxvYWRfY2h1bmtzaXplJ10gPSAnQWRqdXN0aW5nIHRoaXMgcGFyYW1ldGVyIHdpbGwgZWZmZWN0IGRvd25sb2FkIHNwZWVkLCBhbmQgbWF5IGhlbHAgaW4gbG93ZXIgbWVtb3J5IGVudmlyb25tZW50cyc7CiRsYW5nWyd3YXJuaW5nX3NhZmVfbW9kZSddID0gJ1BIUFwncyBzYWZlIG1vZGUgaXMgZW5hYmxlZC4gIFRoaXMgbWF5IGNhdXNlIHByb2JsZW1zIHdpdGggdXBsb2FkaW5nIGZpbGVzIChwZXJtaXNzaW9ucyksIGFuZCBtYXkgYWxzbyBpbnRlcmZlcmUgd2l0aCB0aGlzIG1vZHVsZVwncyBhYmlsaXR5IHRvIHNlbmQgc29tZSBmaWxlcyBkdWUgdG8gYW4gaW5hYmlsaXR5IHRvIG92ZXJyaWRlIHNvbWUgaW5pIHNldHRpbmdzLiAgWW91IGFyZSBhZHZpc2VkIHRvIGNvbnRhY3QgeW91ciBwcm92aWRlciB0byBzZWUgYWJvdXQgZGlzYWJsaW5nIHNhZmUgbW9kZS4nOwokbGFuZ1sncGFyYW1fZGV0YWlscGFnZSddID0gJ1VzZWZ1bCBmb3IgZGlzcGxheWluZyBhIGRldGFpbCByZXBvcnQgdXNpbmcgYSBkaWZmZXJlbnQgcGFnZSB0ZW1wbGF0ZSwgdGhpcyBwYXJhbWV0ZXIgdGFrZXMgdGhlIHBhZ2UgaWQgb3IgcGFnZSBhbGlhcyBvZiBhIHBhZ2UgdGhhdCBzaG91bGQgYmUgdXNlZCB0byBkaXNwbGF5IHRoZSBkZXRhaWwgcmVwb3J0JzsKJGxhbmdbJ3BhcmFtX3ByZWZpeCddID0gJ0EgYm9vbGVhbiB0aGF0IGluZGljYXRlcyB3ZXRoZXIgZmlsZSBuYW1lcyBzaG91bGQgYmUgcHJlZml4ZWQnOwokbGFuZ1sncGFyYW1fcHJlZml4X2ZldSddID0gJ0EgYm9vbGVhbiBwYXJhbWV0ZXIgdGhhdCBpbmRpY2F0ZXMgdGhhdCB0aGUgcHJlZml4IHNob3VsZCBiZSB0YWtlbiBmcm9tIHRoZSBjdXJyZW50IGF1dGhvciwgaWYgbm90IHNwZWNpZmllZCwgdGhlIHByZWZpeCBpcyB0aGUgY3VycmVudCB0aW1lIChpbiBkZWNoZXggZm9ybWF0KSc7CiRsYW5nWydwYXJhbV9ub2NhcHRjaGEnXSA9ICdEaXNhYmxlIGNhcHRjaGEgc3VwcG9ydCAob24gYnkgZGVmYXVsdCkgaW4gdGhlIHVwbG9hZCBmb3JtJzsKJGxhbmdbJ3RpdGxlX3VwbG9hZGZvcm1fdGVtcGxhdGUnXSA9ICdFZGl0IFVwbG9hZCBGb3JtIFRlbXBsYXRlJzsKJGxhbmdbJ2NhcHRjaGFfdGl0bGUnXSA9ICdFbnRlciB0aGUgdGV4dCBkaXNwbGF5ZWQgaW4gdGhpcyBpbWFnZSc7CiRsYW5nWydlcnJvcl9jYXB0Y2hhbWlzbWF0Y2gnXSA9ICdUZXh0IGVudGVyZWQgZGlkIG5vdCBtYXRjaCB0aGUgaW1hZ2UgZGlzcGxheWVkJzsKJGxhbmdbJ3RpdGxlX2F1dG90aHVtYm5haWxfZXh0ZW5zaW9ucyddID0gJ0NyZWF0ZSB0aHVtYm5haWxzIGZvciBmaWxlcyB3aXRoIHRoZXNlIGV4dGVuc2lvbnMnOwokbGFuZ1sndGl0bGVfYXV0b3RodW1ibmFpbF9zaXplJ10gPSAnTWF4aW11bSBzaXplIChwaXhlbHMpIG9mIHRoZSBnZW5lcmF0ZWQgdGh1bWJuYWlsJzsKJGxhbmdbJ3Byb21wdF91cGxvYWRfaWNvbiddID0gJ1VwbG9hZCBBbiBJY29uJzsKJGxhbmdbJ2luZm9fc3lzZGVmYXVsdCddID0gJ1RoaXMgdGV4dCBpcyB1c2VkIHdoZW4gY3JlYXRpbmcgYSBuZXcgdGVtcGxhdGUgb2YgdGhpcyB0eXBlJzsKJGxhbmdbJ3RpdGxlX2RldGFpbHJwdF9zeXNkZWZhdWx0J10gPSAnU3lzdGVtIERlZmF1bHQgRGV0YWlsIFJlcG9ydCBUZW1wbGF0ZSc7CiRsYW5nWyd0aXRsZV9zdW1tYXJ5cnB0X3N5c2RlZmF1bHQnXSA9ICdTeXN0ZW0gRGVmYXVsdCBTdW1tYXJ5IFJlcG9ydCBUZW1wbGF0ZSc7CiRsYW5nWyd0aXRsZV91cGxvYWRmb3JtX3N5c2RlZmF1bHQnXSA9ICdTeXN0ZW0gRGVmYXVsdCBVcGxvYWQgRm9ybSBUZW1wbGF0ZSc7CiRsYW5nWyd0ZW1wbGF0ZSddID0gJ1RlbXBsYXRlJzsKJGxhbmdbJ3Jlc2V0dG9kZWZhdWx0J10gPSAnUmVzZXQgdG8gRGVmYXVsdHMnOwokbGFuZ1sndGl0bGVfc3VtbWFyeXJwdF90ZW1wbGF0ZSddID0gJ1N1bW1hcnkgUmVwb3J0IFRlbXBsYXRlJzsKJGxhbmdbJ3RpdGxlX2RldGFpbHJwdF90ZW1wbGF0ZSddID0gJ0RldGFpbCBSZXBvcnQgVGVtcGxhdGUnOwokbGFuZ1sncHJvbXB0X25hbWUnXSA9ICdOYW1lJzsKJGxhbmdbJ3Byb21wdF9kZWZhdWx0J10gPSAnRGVmYXVsdCc7CiRsYW5nWydsZWdlbmRfdXBsb2FkZm9ybSddID0gJ1VwbG9hZCBBIEZpbGUnOwokbGFuZ1snZXJyb3JfbWlzc2luZ3BhcmFtJ10gPSAnQSByZXF1aXJlZCBwYXJhbWV0ZXIgaXMgbWlzc2luZyc7CiRsYW5nWydlcnJvcl9taXNzaW5nbmFtZSddID0gJ0EgbmFtZSBmb3IgdGhlIGZpbGUgdHlwZSBtdXN0IGJlIHNwZWNpZmllZCc7CiRsYW5nWydlcnJvcl9taXNzaW5nZXh0ZW5zaW9ucyddID0gJ0F0IGxlYXN0IG9uZSBmaWxlIGV4dGVuc2lvbiBtdXN0IGJlIHNwZWNpZmllZCc7CiRsYW5nWydlcnJvcl9taXNzaW5naWNvbiddID0gJ0FuIGljb24gbXVzdCBiZSBzcGVjaWZpZWQnOwokbGFuZ1snZXJyb3Jfbm9zdWNocm93J10gPSAnVGhlIHNwZWNpZmllZCByb3cgY291bGQgbm90IGJlIGZvdW5kJzsKJGxhbmdbJ25hbWVfdW5rbm93biddID0gJ1Vua25vd24nOwokbGFuZ1snZGVzY3JpcHRpb25fdW5rbm93biddID0gJ0ZpbGUgdHlwZSBkZXNjcmlwdGlvbiBmb3IgdW5tYXRjaGVkIGZpbGVzJzsKJGxhbmdbJ2ltYWdlJ10gPSAnSW1hZ2UnOwokbGFuZ1snaWNvbiddID0gJ0ljb24nOwokbGFuZ1snZXh0ZW5zaW9ucyddID0gJ0ZpbGUgRXh0ZW5zaW9ucyc7CiRsYW5nWydhZGRmaWxldHlwZSddID0gJ0FkZCBOZXcgRmlsZSBUeXBlJzsKJGxhbmdbJ2ZpbGVfdHlwZXMnXSA9ICdGaWxlIFR5cGVzJzsKJGxhbmdbJ2Vycm9yX25vY2F0ZWdvcnlpZCddID0gJ05vIENhdGVnb3J5IGlkIHdhcyBzdXBwbGllZCc7CiRsYW5nWydlcnJvcl9ub2NhdGVnb3J5J10gPSAnTm8gQ2F0ZWdvcnkgaWQgd2FzIHN1cHBsaWVkJzsKJGxhbmdbJ2Vycm9yX3RlbXBsYXRlbmFtZWV4aXN0cyddID0gJ0EgdGVtcGxhdGUgYnkgdGhhdCBuYW1lIGFscmVhZHkgZXhpc3RzJzsKJGxhbmdbJ3Byb21wdF90ZW1wbGF0ZW5hbWUnXSA9ICdUZW1wbGF0ZSBOYW1lJzsKJGxhbmdbJ3Byb21wdF90ZW1wbGF0ZSddID0gJ1RlbXBsYXRlJzsKJGxhbmdbJ3Byb21wdF9uZXd0ZW1wbGF0ZSddID0gJ0NyZWF0ZSBhIG5ldyB0ZW1wbGF0ZSc7CiRsYW5nWydoZWxwX09uRG93bmxvYWQnXSA9ICcKPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGZpbmlzaGVzIGRvd25sb2FkaW5nIGEgZmlsZTwvcD4KPGg0PlBhcmFtZXRlcnM8L2g0Pgo8dWw+CjxsaT48ZW0+aWQ8L2VtPiAtIFVwbG9hZCBJRDwvbGk+CjxsaT48ZW0+bmFtZTwvZW0+IC0gRmlsZSBuYW1lPC9saT4KPGxpPjxlbT5pcDwvZW0+IC0gVGhlIElQIEFkZHJlc3Mgb2YgdGhlIGRvd25sb2FkZXI8L2xpPgo8L3VsPgonOwokbGFuZ1snaGVscF9PbkRlbGV0ZUNhdGVnb3J5J10gPSAnCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgY2F0ZWdvcnkgaXMgRGVsZXRlZDwvcD4KPGg0PlBhcmFtZXRlcnM8L2g0Pgo8dWw+CjxsaT48ZW0+bmFtZTwvZW0+IC0gQ2F0ZWdvcnkgbmFtZTwvbGk+CjxsaT48ZW0+cGF0aDwvZW0+IC0gQ2F0ZWdvcnkgcGF0aDwvbGk+CjwvdWw+Cic7CiRsYW5nWydoZWxwX09uQ3JlYXRlQ2F0ZWdvcnknXSA9ICcKPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBjYXRlZ29yeSBpcyBDcmVhdGVkPC9wPgo8aDQ+UGFyYW1ldGVyczwvaDQ+Cjx1bD4KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgbmFtZSBvZiB0aGUgY2F0ZWdvcnk8L2xpPgo8bGk+PGVtPmRlc2NyaXB0aW9uPC9lbT4gLSBUaGUgY2F0ZWdvcnkgZGVzY3JpcHRpb248L2xpPgo8bGk+PGVtPnBhdGg8L2VtPiAtIFRoZSBjYXRlZ29yeSBwYXRoPC9saT4KPGxpPjxlbT5wYXRoPC9lbT4gLSBBIGZsYWcgaW5kaWNhdGluZyBpZiB0aGUgY2F0ZWdvcnkgaXMgbGlzdGFibGU8L2xpPgo8L3VsPgonOwokbGFuZ1snaGVscF9PblJlbW92ZSddID0gJwo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIGZpbGUgaXMgcmVtb3ZlZCB2aWEgdGhlIGFkbWluIG9yIGZyb250ZW5kIGludGVyZmFjZXM8L3A+CjxoND5QYXJhbWV0ZXJzPC9oND4KPHVsPgo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSBuYW1lIG9mIHRoZSByZW1vdmVkIGZpbGU8L2xpPgo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgaWQgb2YgdGhlIHJlbW92ZWQgZmlsZTwvbGk+CjxsaT48ZW0+Y2F0ZWdvcnlfaWQ8L2VtPiAtIFRoZSBpZCBvZiB0aGUgY2F0ZWdvcnk8L2xpPgo8L3VsPgonOwokbGFuZ1snaGVscF9PblVwbG9hZCddID0gJwo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIG5ldyBmaWxlIGlzIHVwbG9hZGVkIHZpYSB0aGUgYWRtaW4gb3IgZnJvbnRlbmQgaW50ZXJmYWNlczwvcD4KPGg0PlBhcmFtZXRlcnM8L2g0Pgo8dWw+CjxsaT48ZW0+Y2F0ZWdvcnk8L2VtPiAtIFRoZSBjYXRlZ29yeSBuYW1lPC9saT4KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgbmFtZSBvZiB0aGUgdXBsb2FkZWQgZmlsZTwvbGk+CjxsaT48ZW0+c2l6ZTwvZW0+IC0gVGhlIHNpemUgb2YgdGhlIHVwbG9hZGVkIGZpbGU8L2xpPgo8bGk+PGVtPnN1bW1hcnk8L2VtPiAtIFRoZSBzaG9ydCBkZXNjcmlwdGlvbiBmb3IgdGhlIHVwbG9hZGVkIGZpbGUgKG1heSBiZSBlbXB0eSk8L2VtPjwvbGk+CjxsaT48ZW0+ZGVzY3JpcHRpb248L2VtPiAtIFRoZSBsb25nIGRlc2NyaXB0aW9uIGZvciB0aGUgdXBsb2FkZWQgZmlsZSAobWF5IGJlIGVtcHR5KTwvZW0+PC9saT4KPGxpPjxlbT5hdXRob3I8L2VtPiAtIFRoZSBhdXRob3Igb2YgdGhlIHVwbG9hZGVkIGZpbGUgKGlmIGF2YWlsYWJsZSk8L2VtPjwvbGk+CjxsaT48ZW0+aXBfYWRkcmVzczwvZW0+IC0gVGhlIGludGVybmV0IGFkZHJlc3Mgb2YgdGhlIGNsaWVudCB0aGF0IHVwbG9hZGVkIHRoZSBmaWxlPC9saT4KPC91bD4KJzsKJGxhbmdbJ2luZm9fZXZlbnRfb25kZWxldGVjYXRlZ29yeSddID0gJ0V2ZW50IGdlbmVyYXRlZCB3aGVuIGEgY2F0ZWdvcnkgaXMgZGVsZXRlZCc7CiRsYW5nWydpbmZvX2V2ZW50X29uY3JlYXRlY2F0ZWdvcnknXSA9ICdFdmVudCBnZW5lcmF0ZWQgd2hlbiBhIGNhdGVnb3J5IGlzIGNyZWF0ZWQnOwokbGFuZ1snaW5mb19ldmVudF9vbmRvd25sb2FkJ10gPSAnRXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBmaWxlIGlzIGRvd25sb2FkZWQnOwokbGFuZ1snaW5mb19ldmVudF9vbnVwbG9hZCddID0gJ0V2ZW50IGdlbmVyYXRlZCB3aGVuIGEgbmV3IGZpbGUgaXMgdXBsb2FkZWQnOwokbGFuZ1snaW5mb19ldmVudF9vbnJlbW92ZSddID0gJ0V2ZW50IGdlbmVyYXRlZCB3aGVuIGEgZmlsZSBpcyByZW1vdmVkJzsKJGxhbmdbJ3RpdGxlX3VzZXJ0YWdfb251cGxvYWQnXSA9ICdVc2VyIGRlZmluZWQgdGFnIHRvIGNhbGwgYWZ0ZXIgdXBsb2FkIGlzIGNvbXBsZXRlJzsKJGxhbmdbJ25vbmUnXSA9ICdOb25lJzsKJGxhbmdbJ21hdGNoZXNmb3VuZCddID0gJ01hdGNoZXMgZm91bmQnOwokbGFuZ1snZmlsdGVyJ10gPSAnRmlsdGVyJzsKJGxhbmdbJ3RpdGxlX3JlZGlyZWN0b251cGxvYWQnXSA9ICdSZWRpcmVjdCB0byBwYWdlIGlkL2FsaWFzIG9uIHVzZXIgdXBsb2FkJzsKJGxhbmdbJ2RldGFpbHMnXSA9ICdEZXRhaWxzJzsKJGxhbmdbJ2NvbmZpcm1fcHJlZmVyZW5jZXMnXSA9ICdBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gYWRqdXN0IHRoZSBwcmVmZXJlbmNlcz8nOwokbGFuZ1snZXJyb3Jfbm9maWxlc3VwbG9hZGVkJ10gPSAnTm8gZmlsZXMgd2VyZSB1cGxvYWRlZC4nOwokbGFuZ1sncHJvbXB0X3JlcGxhY2UnXSA9ICdBbGxvdyBPdmVyd3JpdGUnOwokbGFuZ1snaW5mb19yZXBsYWNlJ10gPSAnUmVwbGFjZSBhbnkgZmlsZSB3aXRoIHRoZSBzYW1lIG5hbWUgKGRvZXMgbm90IGNoYW5nZSBpZCknOwokbGFuZ1sncGFyYW1fbm9faW5pdGlhbCddID0gJ0RvIG5vdCBkaXNwbGF5IGFueSBpbml0aWFsIHJlc3VsdHMgd2hlbiB0aGUgZmlsdGVyIGlzIG9uJzsKJGxhbmdbJ3BhcmFtX2tleSddID0gJ1Byb3ZpZGUgYW4gYWRkaXRpb25hbCBrZXkgdG8gdGhlIG1vZHVsZSBmb3IgZnVydGhlciBvcmdhbml6aW5nIHVwbG9hZHMuICBUaGlzIGtleSBjb3VsZCBiZSBhbiBlbmNvZGVkIHN0cmluZyBsaWtlOiBcJ2ZldXNlcnM6dWlkXCcsIGV0Yy4gIFRoaXMgcGFyYW1ldGVyIGlzIHVzdWFsbHkgb25seSBuZWVkZWQgd2hlbiBlbWJlZGRpbmcgdGhlIHVwbG9hZHMgbW9kdWxlIGludG8gYW5vdGhlciBtb2R1bGUnOwokbGFuZ1sncGFyYW1fbm9hdXRob3InXSA9ICdIaWRlIHRoZSBhdXRob3IgZmllbGQgZnJvbSB0aGUgdXBsb2FkIGZvcm0uICBUaGlzIHBhcmFtZXRlciBpcyBvbmx5IHZhbGlkIHdoZW4gbW9kZT1cJ3VwbG9hZFwnLiAgSWYgVGhlIEZyb250ZW5kVXNlcnMgbW9kdWxlIGlzIHByZXNlbnQsIGFuZCBhIHVzZXIgaXMgY3VycmVudGx5IGxvZ2dlZCBpbiwgYSBoaWRkZW4gZmllbGQgd2lsbCBob2xkIHRoZSBjdXJyZW50bHkgbG9nZ2VkIGluIHVzZXJuYW1lJzsKJGxhbmdbJ3BhcmFtX3VwbG9hZF9pZCddID0gJwp1cGxvYWRfaWQ9ImlkIiAtIHNwZWNpZnkgYSBzaW5nbGUgZmlsZSBmb3IgdGhlIHVybC9saW5rLGRldGFpbGVkIG9yIHNpbmdsZSBtb2RlcyAoYWJvdmUpJzsKJGxhbmdbJ3BhcmFtX2RldGFpbHRlbXBsYXRlJ10gPSAnVXNlIGEgdGVtcGxhdGUgd2l0aCB0aGlzIG5hbWUgZm9yIHRoZSBkZXRhaWwgcmVwb3J0Lic7CiRsYW5nWydwYXJhbV90ZW1wbGF0ZSddID0gJ1VzZSBhIHRlbXBsYXRlIHdpdGggdGhpcyBuYW1lIGZvciB0aGlzIHJlcG9ydCBvciBmb3JtLiAgVGhlIG1vZGUgaXMgdXNlZCB0byBkZXRlcm1pbmUgd2hhdCB0eXBlIG9mIHRlbXBsYXRlIGlzIHJlcXVpcmVyZCwgYW5kIHRoZW4gYSBuYW1lIG1hdGNoIGlzIHBlcmZvcm1lZCB3aXRoaW4gdGhhdCB0eXBlLic7CiRsYW5nWydwYXJhbV9maWx0ZXInXSA9ICdEaXNwbGF5IHRoZSBmaWx0ZXJpbmcgZm9ybS4gIElmIHRoaXMgcGFyYW1ldGVyIGlzIHNldCB0byBhbnkgdmFsdWUnOwokbGFuZ1sncGFyYW1fbm9faW50aXRpYWwnXSA9ICdPbmx5IHVzZWZ1bCB3aGVuIHRoZSBmaWx0ZXIgcGFyYW1ldGVyIGlzIHN1cHBsaWVkLCBvciBvbiBieSBkZWZhdWx0LCB0aGlzIHBhcmFtZXRlciBpbmRpY2F0ZXMgd2V0aGVyIGluaXRpYWwgcmVzdWx0cyBzaG91bGQgYmUgcmV0dXJuZWQnOwokbGFuZ1sncGFyYW1fZmlsZXR5cGVzJ10gPSAnRGlzcGxheSBvbmx5IGZpbGVzIHdob3NlIHR5cGUgbWF0Y2hlcyB0aGlzIGNvbW1hIHNlcGFyYXRlZCBsaXN0JzsKJGxhbmdbJ3BhcmFtX3NvcnRvcmRlciddID0gJwogIDxwPlNvcnQgT3JkZXJzCiAgPHVsPgogIDxsaT48ZW0+ZGF0ZV9hc2M8L2VtPiAtIFNvcnQgYnkgYXNjZW5kaW5nIGRhdGU8L2xpPgogIDxsaT48ZW0+ZGF0ZV9kZXNjPC9lbT4gLSBTb3J0IGJ5IGRlc2NlbmRpbmcgZGF0ZTwvbGk+CiAgPGxpPjxlbT5uYW1lX2FzYzwvZW0+IC0gU29ydCBieSBhc2NlbmRpbmcgbmFtZTwvbGk+CiAgPGxpPjxlbT5uYW1lX2Rlc2M8L2VtPiAtIFNvcnQgYnkgZGVzY2VuZGluZyBuYW1lPC9saT4KICA8bGk+PGVtPnNpemVfYXNjPC9lbT4gLSBTb3J0IGJ5IGFzY2VuZGluZyBzaXplPC9saT4KICA8bGk+PGVtPnNpemVfZGVzYzwvZW0+IC0gU29ydCBieSBkZXNjZW5kaW5nIHNpemU8L2xpPgogIDxsaT48ZW0+YXV0aG9yX2FzYzwvZW0+IC0gU29ydCBieSBhc2NlbmRpbmcgYXV0aG9yPC9saT4KICA8bGk+PGVtPmF1dGhvcl9kZXNjPC9lbT4gLSBTb3J0IGJ5IGRlc2NlbmRpbmcgYXV0aG9yPC9saT4KICA8bGk+PGVtPmlwX2FzYzwvZW0+IC0gU29ydCBieSBhc2NlbmRpbmcgaXAgYWRkcmVzczwvbGk+CiAgPGxpPjxlbT5pcF9kZXNjPC9lbT4gLSBTb3J0IGJ5IGRlc2NlbmRpbmcgaXAgYWRkcmVzczwvbGk+CiAgPGxpPjxlbT5kZXNjX2FzYzwvZW0+IC0gU29ydCBieSBhc2NlbmRpbmcgZGVzY3JpcHRpb248L2xpPgogIDxsaT48ZW0+ZGVzY19kZXNjPC9lbT4gLSBTb3J0IGJ5IGRlc2NlbmRpbmcgZGVzY3JpcHRpb248L2xpPgogIDxsaT48ZW0+cmFuZG9tPC9lbT4gLSBSYW5kb20gc29ydCBvcmRlcjwvbGk+CiAgPC91bD4KICA8L3A+JzsKJGxhbmdbJ3BhcmFtX2xpc3Rpbmd0ZW1wbGF0ZSddPSdUZW1wbGF0ZSB0byB1c2UgZm9yIGNhdGVnb3J5IGxpc3RpbmdzIGFmdGVyIGNsaWNrdGhyb3VnaCBmcm9tIENhdGVnb3J5IFN1bW1hcnkgcGFnZSc7CiRsYW5nWydwYXJhbV9saXN0aW5nc29ydG9yZGVyJ109J1NvcnQgb3JkZXIgKGFsYSBwYXJhbV9zb3J0b3JkZXIpIHRvIHVzZSBmb3IgY2F0ZWdvcnkgbGlzdGluZ3MgYWZ0ZXIgY2xpY2t0aHJvdWdoIGZyb20gQ2F0ZWdvcnkgU3VtbWFyeSBwYWdlJzsKJGxhbmdbJ3BhcmFtX2ZpbGVleHRlbnNpb25zJ10gPSAnIApmaWxlX2V4dGVuc2lvbnM9ImV4dDEsZXh0MixleHQzIgo8cD52YWxpZCBvbmx5IHdoZW4gbW9kZT11cGxvYWQsIHRoaXMgcGFyYW1ldGVyIGxpbWl0cyB0aGUgdHlwZXMgb2YgZmlsZXMgdGhhdCBjYW4gYmUgdXBsb2FkZWQuICBJdCBvdmVycmlkZXMgYW55IHNldHRpbmdzIGluIHRoZSBtb2R1bGUgcHJlZmVyZW5jZXMuPC9wPic7CiRsYW5nWydwYXJhbV9jb3VudCddID0gJwpjb3VudD0iTiIKPHA+QSBwYXJhbWV0ZXIgdG8gbGlzdCBvbmx5IHRoZSBmaXJzdCBOIHJlc3VsdHMgb2YgdGhlIHF1ZXJ5LiAgUGFnaW5hdGlvbiB3b3VsZCBiZSBiZXR0ZXIsIGJ1dCB0aGlzIHdpbGwgZG8gdGhlIHRyaWNrIGZvciBub3c8L3A+JzsKJGxhbmdbJ3BhcmFtX2NhdGVnb3J5J10gPSAnCmNhdGVnb3J5PSJuYW1lIgo8cD48Yj5Ob3RlOjwvYj4gQ2F0ZWdvcnkgY2FuIGJlICJhbGwiLCB3aGljaCB3aWxsIGxpc3QgYWxsIG9mIHRoZSB1cGxvYWRzIGZyb20gYWxsIDxlbT5saXN0YWJsZTwvZW0+IGNhdGVnb3JpZXM8L3A+JzsKJGxhbmdbJ3BhcmFtX21vZGUnXSA9ICcKICA8dWw+CiAgPGxpPjxlbT5kZXRhaWxlZDwvZW0+IC0gRGlzcGxheSBhIGRldGFpbGVkIHJlcG9ydCBmb3IgYSBzaW5nbGUgdXBsb2FkLjwvbGk+CiAgPGxpPjxlbT5zaW5nbGU8L2VtPiAtIEFsaWFzIGZvciB0aGUgZGV0YWlsZWQgbW9kZS48L2xpPgogIDxsaT48ZW0+dXBsb2FkPC9lbT4gLSBEaXNwbGF5IGEgZm9ybSB0byBhbGxvdyBhIGZyb250ZW5kIHVzZXIgdG8gdXBsb2FkIGEgZmlsZTwvbGk+CiAgPGxpPjxlbT51cmwgPGk+b3I8L2k+IGxpbms8L2VtPiAtIERpc3BsYXkgYSBsaW5rIHRvIGEgZmlsZTwvbGk+CiAgPGxpPjxlbT5zdW1tYXJ5PC9lbT4gLSBEaXNwbGF5IGEgc3VtbWFyaXplZCBsaXN0IG9mIGFsbCBmaWxlcyBpbiB0aGUgc3BlY2lmaWVkIGNhdGVnb3J5PC9saT4KICA8L3VsPic7CiRsYW5nWydwYXJhbV9zZWxlY3Rmb3JtJ10gPSAnV2hlbiB1c2luZyB0aGUgXCdzZWxlY3RcJyBtb2RlLCB0aGlzIHBhcmFtZXRlciBpcyB0aGUgZm9ybWlkIG9mIHRoZSBwYXJlbnQgZm9ybS4gIFVzZWQgdG8gaGFuZGxlIHBhcmFtZXRlciBwYXNzaW5nJzsKJGxhbmdbJ3BhcmFtX3NlbGVjdG5hbWUnXSA9ICd3aGVuIHVzaW5nIHRoZSBcJ3NlbGVjdFwnIG1vZGUsIHRoaXMgcGFyYW1ldGVyIHNwZWNpZmllcyB0aGUgbmFtZSBvZiB0aGUgZmllbGQnOwokbGFuZ1sncGFyYW1fc2VsZWN0dmFsdWUnXSA9ICdXaGVuIHVzaW5nIHRoZSBcJ3NlbGVjdFwnIG1vZGUsIHRoaXMgcGFyYW1ldGVyIHNwZWNpZmllcyB0aGUgZGVmYXVsdCBmaWVsZCB2YWx1ZSc7CiRsYW5nWydwYXJhbV9zZWxlY3Rub25lJ10gPSAnV2hlbiB1c2luZyB0aGUgXCdzZWxlY3RcJyBtb2RlLCB0aGlzIHBhcmFtZXRlciBzcGVjaWZpZXMgd2V0aGVyIFwnbm9uZVwnIGlzIGEgdmFsaWQgY2hvaWNlLic7CiRsYW5nWydyZXR1cm50b21vZHVsZSddID0gJ1JldHVybiB0byBtb2R1bGUgcGFuZWwnOwokbGFuZ1snZXJyb3Jfbm9jYXRlZ29yaWVzJ10gPSAnVGhlcmUgYXJlIG5vIGRlZmluZWQgY2F0ZWdvcmllcyc7CiRsYW5nWyd0aXRsZV9lbmZvcmNlZXh0ZW5zaW9ucyddID0gJ1JlcXVpcmUgZXh0ZW5zaW9ucyBvbiBhbGwgdXBsb2FkZWQgZmlsZXMnOwokbGFuZ1sncmVzdG9yZWRlZmF1bHRzY29uZmlybSddID0gJ1RoaXMgb3BlcmF0aW9uIHdpbGwgcmVzdG9yZSB0aGUgdGVtcGxhdGUgdG8gc3lzdGVtIGRlZmF1bHRzLiAgQW55IGNoYW5nZXMgeW91IGhhdmUgbWFkZSB3aWxsIGJlIGxvc3QuICBBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gcHJvY2VlZD8nOwokbGFuZ1snaW5mb190aHVtYm5haWwnXSA9ICdBbiBvcHRpb25hbCB0aHVtYm5haWwgZmlsZSc7CiRsYW5nWyd0aHVtYm5haWwnXSA9ICdUaHVtYm5haWwnOwokbGFuZ1snbmV3dGh1bWJuYWlsJ10gPSAnVXBsb2FkIGEgbmV3IHRodW1ibmFpbCc7CiRsYW5nWydpbmZvX3N1bW1hcnknXSA9ICdBIGJyaWVmIGRlc2NyaXB0aW9uIG9mIHRoZSBmaWxlIChpZiBlbXB0eSwgdGhlIGZpbGUgbmFtZSBpcyB1c2VkIHdpdGhvdXQgdGhlIGV4dGVuc2lvbiknOwokbGFuZ1snaW5mb19jYXRlZ29yeW5hbWUnXSA9ICdBIGJyaWVmIG5hbWUgZm9yIHlvdXIgY2F0ZWdvcnkgKGh1bWFuIHJlYWRhYmxlKSc7CiRsYW5nWydpbmZvX2NhdGVnb3J5ZGVzYyddID0gJ0EgZGVzY3JpcHRpb24gZm9yIHlvdXIgY2F0ZWdvcnknOwokbGFuZ1snaW5mb19jYXRlZ29yeXBhdGgnXSA9ICdUaGUgZGlyZWN0b3J5IG5hbWUgaW5zaWRlIHRoZSB1cGxvYWRzIGRpcmVjdG9yeSB0aGF0IHdpbGwgYmUgdXNlZCB0byBzdG9yZSBmaWxlcyBpbiB0aGlzIGNhdGVnb3J5LiAgSWYgdGhlIGRpcmVjdG9yeSBvZiB0aGlzIG5hbWUgZG9lcyBub3QgYWxyZWFkeSBleGlzdCwgaXQgbWF5IGJlIGNyZWF0ZWQnOwokbGFuZ1snaW5mb19kZXN0bmFtZSddID0gJ1VzZSB0aGUgXCdVcGxvYWQgQXNcJyBmaWVsZCB0byBjaGFuZ2UgdGhlIG5hbWUgb2YgdGhlIGZpbGUgb24gdXBsb2FkLiAgTGVhdmUgYmxhbmsgdG8gcHJlc2VydmUgdGhlIGZpbGVuYW1lIGFzLWlzLic7CiRsYW5nWydlcnJvcl9jYW50Y3JlYXRlZGlyZWN0b3J5J10gPSAnQ291bGQgbm90IGNyZWF0ZSBkaXJlY3RvcnknOwokbGFuZ1snZXJyb3Jfbm9tYWlsZXJtb2R1bGUnXSA9ICdUaGUgQ01TTWFpbGVyIG1vZHVsZSBjb3VsZCBub3QgYmUgaW5zdGFudGlhdGVkJzsKJGxhbmdbJ3VwbG9hZF9ub3RpZmljYXRpb24nXSA9ICdBIG5ldyBmaWxlIGhhcyBiZWVuIHVwbG9hZGVkJzsKJGxhbmdbJ3RpdGxlX2VtYWlsX29uX3VwbG9hZCddID0gJ1NlbmQgdXBsb2FkIG5vdGlmaWNhdGlvbiB0bzonOwokbGFuZ1snZW1haWxfdGVtcGxhdGUnXSA9ICdFbWFpbCBUZW1wbGF0ZSc7CiRsYW5nWyd0aXRsZV9kdW1teV9pbmRleF9odG1sJ10gPSAnQ3JlYXRlIGR1bW15IGluZGV4Lmh0bWwgZmlsZXMgaW4gZWFjaCBkaXJlY3Rvcnk/PGJyLz48ZW0+QW55IGV4aXN0aW5nIGluZGV4Lmh0bWwgZmlsZXMgd2lsbCByZW1haW48L2VtPic7CiRsYW5nWydhYm91dCddID0gJ0Fib3V0JzsKJGxhbmdbJ2Vycm9yX3Blcm1pc3Npb25kZW5pZWQnXSA9ICdBY2Nlc3MgRGVuaWVkLiBQbGVhc2UgY2hlY2sgeW91ciBwZXJtaXNzaW9ucy4nOwokbGFuZ1snZXJyb3JfY291bGRub3R3cml0ZSddID0gJ0NvdWxkIG5vdCB3cml0ZSc7CiRsYW5nWydhZGRjYXRlZ29yeSddID0gJ0FkZCBDYXRlZ29yeSc7CiRsYW5nWydhbGwnXSA9ICdBbGwnOwokbGFuZ1snYXJleW91c3VyZSddID0gJ0FyZSBZb3UgU3VyZT8nOwokbGFuZ1snYXV0aG9yJ10gPSAnQXV0aG9yJzsKJGxhbmdbJ2NhbmNlbCddID0gJ0NhbmNlbCc7CiRsYW5nWydjYW5ub3Rtb2RpZnlwYXRoJ10gPSAnKFRoZSBwYXRoIGNhbm5vdCBiZSBtb2RpZmllZCknOwokbGFuZ1snY2F0ZWdvcmllcyddID0gJ0NhdGVnb3JpZXMnOwokbGFuZ1snY2F0ZWdvcnknXSA9ICdDYXRlZ29yeSc7CiRsYW5nWydtZXNzYWdlX2NhdGVnb3J5YWRkZWQnXSA9ICdDYXRlZ29yeSBzdWNjZXNzZnVsbHkgYWRkZWQnOwokbGFuZ1snZGF0ZSddID0gJ0RhdGUnOwokbGFuZ1snZGF0ZXVwbG9hZGVkJ10gPSAnRGF0ZSBVcGxvYWRlZCc7CiRsYW5nWydkZWZhdWx0J10gPSAnRGVmYXVsdHMnOwokbGFuZ1snZGVsZXRlJ10gPSAnRGVsZXRlJzsKJGxhbmdbJ2Rlc2NyaXB0aW9uJ10gPSAnRGVzY3JpcHRpb24nOwokbGFuZ1snZGVzdG5hbWUnXSA9ICdVcGxvYWQgQXMnOwokbGFuZ1snZGV0YWlsX3RlbXBsYXRlJ10gPSAnRGV0YWlsIFRlbXBsYXRlcyc7CiRsYW5nWydkb3dubG9hZGVkJ10gPSAnRmlsZSAlcyB3YXMgZG93bmxvYWRlZC4nOwokbGFuZ1snZG93bmxvYWRzJ10gPSAnRG93bmxvYWRzJzsKJGxhbmdbJ2VkaXQnXSA9ICdFZGl0JzsKJGxhbmdbJ2VkaXRjYXRlZ29yeSddID0gJ0VkaXQgQ2F0ZWdvcnknOwokbGFuZ1snZWRpdHVwbG9hZCddID0gJ0VkaXQgVXBsb2FkJzsKJGxhbmdbJ2Vycm9yJ10gPSAnRXJyb3IhJzsKJGxhbmdbJ2Vycm9yX3BhdGhpbnVzZSddID0gJ0EgY2F0ZWdvcnkgdXNpbmcgdGhhdCBwYXRoIGFscmVhZHkgZXhpc3RzJzsKJGxhbmdbJ2Vycm9yX2NhdGVnb3J5ZXhpc3RzJ10gPSAnRXJyb3I6IENhdGVnb3J5IGFscmVhZHkgZXhpc3RzJzsKJGxhbmdbJ2Vycm9yX2NhdGVnb3J5bm90ZW1wdHknXSA9ICdFcnJvciEgQ2Fubm90IGRlbGV0ZSBhIGNhdGVnb3J5IHRoYXQgaXMgbm90IGVtcHR5JzsKJGxhbmdbJ2Vycm9yX2NhdGVnb3J5bm90Zm91bmQnXSA9ICdFcnJvcjogQ2F0ZWdvcnkgbm90IGZvdW5kISc7CiRsYW5nWydlcnJvcl9kYmVycm9yJ10gPSAnRXJyb3I6IERhdGFiYXNlIGVycm9yISc7CiRsYW5nWydlcnJvcl9lbXB0eWNhdGVnb3J5J10gPSAnRXJyb3I6IEVtcHR5IENhdGVnb3J5ISc7CiRsYW5nWydlcnJvcl9lbXB0eXBhdGgnXSA9ICdFcnJvcjogRW1wdHkgUGF0aCEnOwokbGFuZ1snZXJyb3JfZmlsZWV4aXN0cyddID0gJ0Vycm9yISBGaWxlICVzIGFscmVhZHkgZXhpc3RzLic7CiRsYW5nWydlcnJvcl9maWxlbm90Zm91bmQnXSA9ICdFcnJvciEgRmlsZSAlcyB3YXMgbm90IGZvdW5kLic7CiRsYW5nWydlcnJvcl9pbnN1ZmZpY2llbnRwYXJhbXMnXSA9ICdFcnJvcjogSW5zdWZmaWNpZW50IHBhcmFtZXRlcnMgc3VwcGxpZWQgdG8gbW9kdWxlITxici8+TWlzc2luZyBwYXJhbSBpczogJXMnOwokbGFuZ1snZXJyb3JfaW52YWxpZGF1dGhvciddID0gJ0Vycm9yOiBJbnZhbGlkIChvciBlbXB0eSkgYXV0aG9yLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkY2F0ZWdvcnknXSA9ICdFcnJvcjogSW52YWxpZCAob3IgZW1wdHkpIGNhdGVnb3J5Lic7CiRsYW5nWydlcnJvcl9pbnZhbGlkZGVzY3JpcHRpb24nXSA9ICdFcnJvcjogSW52YWxpZCAob3IgZW1wdHkpIGRlc2NyaXB0aW9uLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkZmlsZSddID0gJ0Vycm9yOiBJbnZhbGlkIChvciBlbXB0eSkgZmlsZW5hbWUuJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1cGxvYWRmaWxlbmFtZSddID0gJ0Vycm9yOiBGaWxlcyB3aXRoIHRoYXQgbmFtZSAocHJvYmFibHkgZXh0ZW5zaW9uKSBhcmUgbm90IGFsbG93ZWQgKCVzKS4nOwokbGFuZ1snZXJyb3JfaW52YWxpZHVwbG9hZGlkJ10gPSAnRXJyb3I6IEludmFsaWQgdXBsb2FkIGlkJzsKJGxhbmdbJ2Vycm9yX25vZmlsZXMnXSA9ICdFcnJvcjogTm8gTWF0Y2hpbmcgRmlsZXMhJzsKJGxhbmdbJ2ZpbGVzJ10gPSAnRmlsZXMnOwokbGFuZ1snZml4bWUnXSA9ICdGaXggU3BhY2VzJzsKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ0Zyb250IEVuZCBGaWxlIE1hbmFnZW1lbnQgKFVwbG9hZHMpJzsKJGxhbmdbJ2hlbHAnXSA9ICcKPGgzPldoYXQgRG9lcyBUaGlzIERvPzwvaDM+CjxwPkl0IGlzIGEgbW9kdWxlIGZvciBhbGxvd2luZyBwZW9wbGUgdG8gdXBsb2FkIGFuZCBkb3dubG9hZCBmaWxlcyB0byBhbmQgZnJvbSB5b3VyIHNpdGUuICBJdCBrZWVwcyB0cmFjayBvZiB3aG8gdXBsb2FkZWQgYSBmaWxlLCBhbmQgd2hvIGhhcyBkb3dubG9hZGVkIGl0LiAgQXMgd2VsbCwgeW91IGNhbiBzb3J0IGZpbGVzIGludG8gY2F0ZWdvcmllcywgYW5kIG1hbmFnZSB0aGUgZmlsZXMgdGhhdCB3ZXJlIHVwbG9hZGVkIGxpa2UgZXZlcnkgYWRtaW5pc3RyYXRvciB3b3VsZCBkbzwvcD4gCjxoMz5Ib3cgRG8gSSBVc2UgSXQ8L2gzPgo8cD48c3Ryb25nPldhcm5pbmc8L3N0cm9uZz4gLSBUaGUgcHJvcGVyIGJlaGF2aW91ciBvZiB0aGlzIG1vZHVsZSBkZXBlbmRzIG9uIG51bWVyb3VzIHBocCBjb25maWd1cmF0aW9uIHZhcmlhYmxlcy4gIFRoZXNlIGluY2x1ZGUgPGVtPihidXQgYXJlIG5vdCBsaW1pdGVkIHRvKTwvZW0+LCBwaHBcJ3MgbWVtb3J5X2xpbWl0LCBzYWZlX21vZGUsIGZpbGVfdXBsb2FkcywgdXBsb2Fkc19tYXhfZmlsZXNpemUsIGFuZCBtYXhfZXhlY3V0aW9uX3RpbWUuICBUaGVzZSB2YXJpYWJsZXMgbWF5IG5lZWQgYWRqdXN0bWVudCBmb3IgdGhpcyBtb2R1bGUgdG8gd29yayBwcm9wZXJseSBvbiB5b3VyIHNpdGUuICBJdCBpcyBhZHZpc2VkIHRoYXQgeW91IHdvcmsgd2l0aCB5b3VyIHN5c3RlbSBhZG1pbmlzdHJhdG9yIG9yIGhvc3QgcHJvdmlkZXIgdG8gdHVuZSB0aGVzZSBzZXR0aW5ncyBmb3IgeW91ciByZXF1aXJlbWVudHMuPC9wPgo8cD5UbyB1c2UgdGhpcyBtb2R1bGUsIHRvIGFsbG93IHVzZXJzIHRvIHVwbG9hZCBmaWxlcyB0byB5b3VyIHNpdGUsIHlvdSBzaG91bGQgaW5zdGFsbCB0aGUgbW9kdWxlLCBhbmQgdGhlbiBjcmVhdGUgb25lIG9yIG1vcmUgY2F0ZWdvcmllcyAoYS5rLmEpIGRpcmVjdG9yaWVzIGZvciB0aGUgdXBsb2FkZWQgZmlsZXMgdG8gZ28gaW50by4gVGhlbiBhZGQgYSB0YWcgaW50byBhIHBhZ2Ugb3IgdGVtcGxhdGUgc29tZXdoZXJlIGxpa2Uge2Ntc19tb2R1bGUgbW9kdWxlPSJVcGxvYWRzIiBjYXRlZ29yeT0ic29tZWNhdGVnb3J5IiBtb2RlPSJzb21lbW9kZSJ9LiAgV2hlcmUgbW9kZSBtYXRjaGVzIG9uZSBvZiB0aGUgbW9kZXMgbGlzdGVkIGJlbG93LiAgVGhlIG91dHB1dCB3aWxsIGRpZmZlciBkZXBlbmRpbmcgdXBvbiB3aGljaCBtb2RlIHlvdSBzZWxlY3QuPC9wPgo8cD5UaGlzIG1vZHVsZSBjYW4gdXNlIHRoZSBGcm9udGVuZFVzZXJzIG1vZHVsZSAob3B0aW9uYWwpIHRvIGdldCBpbmZvcm1hdGlvbiBhYm91dCBhbnkgY3VycmVudGx5IGxvZ2dlZCBpbiB1c2VycyB0byBwYXJ0bHkgZmlsbCBpbiB0aGUgZm9ybSB3aGVuIHVwbG9hZGluZyBmaWxlczs8L3A+CjxoMz5QZXJtaXNzaW9uczwvaDM+Cjx1bD4KPGxpPjxlbT5NYW5hZ2UgVXBsb2FkczwvZW0+IHBlcm1pc3Npb24gaXMgbmVlZGVkIHRvIG1hbmFnZSBjYXRlZ29yaWVzLCBhbmQgdGhlIGZpbGVzIHdpdGhpbiB0aGVtLjwvbGk+CjxsaT48ZW0+TW9kaWZ5IFRlbXBsYXRlczwvZW0+IHBlcm1pc3Npb24gaXMgbmVlZGVkIGVkaXQgYW55IG9mIHRoZSB0ZW1wbGF0ZXMuPC9saT4KPGxpPjxlbT5Nb2RpZnkgU2l0ZSBQcmVmZXJlbmNlczwvZW0+IHBlcm1pc3Npb24gaXMgbmVlZGVkIGFueSBvZiB0aGUgZmlsZSBzZXR0aW5ncy48L2xpPgo8L3VsPgo8aDM+Q2F0ZWdvcnkgQnJvd3Npbmc8L2gzPgo8cD5QbGFjaW5nIGEgdGFnIGxpa2Uge2Ntc19tb2R1bGUgbW9kdWxlPSJVcGxvYWRzIiBhY3Rpb249ImNhdGVnb3J5c3VtbWFyeSIgdGVtcGxhdGU9InN1bW1hcnl0ZW1wbGF0ZSIgc29ydG9yZGVyPSJuYW1lX2FzYyIgbGlzdGluZ3RlbXBsYXRlPSJsaXN0dGVtcGxhdGUiIGxpc3Rpbmdzb3J0b3JkZXI9Imxpc3Rzb3J0b3JkZXIifQphbGxvd3MgeW91IHRvIGRpc3BsYXkgYW4gaW50ZXJhY3RpdmUgY2F0ZWdvcnkgYnJvd3Nlci4gc29ydG9yZGVyIGNhbiBiZTogbmFtZV9hc2MsIG5hbWVfZGVzYywgc3VtbV9hc2MsIHN1bW1fZGVzYywgb3IgcmFuZG9tLgpsaXN0aW5ndGVtcGxhdGUgYW5kIGxpc3Rpbmdzb3J0b3JkZXIgYXJlIGlkZW50aWNhbCB0byB0aGUgdGVtcGxhdGUgYW5kIHNvcnRvcmRlciBwYXJhbWV0ZXJzIGZvcgp0aGUgInN1bW1hcnkiIG1vZGUuPC9wPgo8aDM+RW1haWxpbmc8L2gzPgo8cD5UaGlzIG1vZHVsZSBpcyBjYXBhYmxlIG9mIHNlbmRpbmcgYW4gZW1haWwgd2hlbmV2ZXIgYSBmaWxlIGlzIHVwbG9hZGVkLCBzZWUgdGhlIHByZWZlcmVuY2VzIHRhYi4gIEhvd2V2ZXIsIHRvIGRvIHRoaXMgdGhlIDxiPkNNU01haWxlcjwvYj4gcGFja2FnZSBtdXN0IGJlIGluc3RhbGxlZCBhbmQgY29uZmlndXJlZC4gIFRoaXMgaXMgYW4gPGVtPm9wdGlvbmFsPC9lbT4gc3RlcCwgYW5kIGlmIHRoZSBDTVNNYWlsZXIgbW9kdWxlIGlzIG5vdCBpbnN0YWxsZWQsIG5vdGhpbmcgd2lsbCBiZSBkaXNwbGF5ZWQgdG8gdGhlIHVzZXIsIG9ubHkgYSBsb2cgbWVzc2FnZSB3aWxsIGJlIHBsYWNlZCBpbnRvIHRoZSBhZG1pbiBsb2c8L3A+CjxoMz5TeXN0ZW0gU2V0dGluZ3M8L2gzPgo8cD48Yj5Ob3RlOjwvYj4gVGhpcyBtb2R1bGUgZG9lcyBub3QgYnlwYXNzIG9yIGdldCBwYXN0IGFueSBmaWxlIHNpemUgbGltaXRhdGlvbnMgaW4gcGhwLiAgSXQgd29ya3MgaW4gY29uanVuY3Rpb24gd2l0aCB0aGVtLiAgVGhlcmVmb3JlIHlvdSBtYXkgbmVlZCB0byBtb2RpZnkgeW91ciBwaHAuaW5pIGZpbGUgYW5kL29yIHlvdXIgaHR0cGQuY29uZiBmaWxlKHMpIHRvIGFsbG93IHlvdSB0byB1cGxvYWQgZmlsZXMgYXMgbGFyZ2UgYXMgd2hhdCB5b3UgaGF2ZSBzZXQgaW4gdGhlIHVwbG9hZHMgbW9kdWxlIHByZWZlcmVuY2VzLjwvcD4KPGgzPkFwYWNoZSBOb3RlczwvaDM+CjxwPkluIG9yZGVyIHRvIGFsbG93IGxhcmdlIGZpbGUgdXBsb2FkcywgeW91IG1heSBuZWVkIHRvIG1vZGlmeSB0aGUgdXBsb2FkX21heF9maWxlc2l6ZSBwYXJhbWV0ZXIgaW4geW91ciBwaHAuaW5pICBJbiBhZGRpdGlvbiwgdGhlIExpbWl0UmVxdWVzdEJvZHkgcGFyYW1ldGVyIGluIHlvdXIgYXBhY2hlIGNvbmZpZ3VyYXRpb24sIG1heSBuZWVkIHRvIGJlIGFkanVzdGVkIHRvIG1hdGNoIHRoZSB1cGxvYWRfbWF4X2ZpbGVzaXplIHBhcmFtZXRlcjwvcD4KPHA+Tm90ZTogIHRoZSB1cGxvYWRfbWF4X2ZpbGVzaXplIHBhcmFtZXRlciBjYW4gYmUgc3BlY2lmaWVkIGluIGJ5dGVzLCBraWxvYnl0ZXMsIG9yIG1lZ2FieXRlcywgaG93ZXZlciB0aGUgTGltaXRSZXF1ZXRCb2R5IHBhcmFtZXRlciBpcyBvbmx5IHNwZWNpZmllZCBpbiBieXRlczwvcD4KJzsKJGxhbmdbJ2lkJ10gPSAnSWQnOwokbGFuZ1snaW5zdGFsbGVkJ10gPSAnTW9kdWxlIHZlcnNpb24gJXMgaW5zdGFsbGVkLic7CiRsYW5nWydpcF9hZGRyZXNzJ10gPSAnSVAgQWRkcmVzcyc7CiRsYW5nWydtb2RkZXNjcmlwdGlvbiddID0gJ0EgbW9kdWxlIHRoYXQgYWxsb3dzIHVzZXJzIHRvIHVwbG9hZCBmaWxlcywgYW5kIGFsbG93cyB5b3UgdG8gbWFuYWdlIHRoZW0uJzsKJGxhbmdbJ25hbWUnXSA9ICdOYW1lJzsKJGxhbmdbJ3JlbmFtZW1lc3NhZ2UnXSA9ICdDaGFuZ2UgdGhlIG5hbWUgaGVyZSB0byBleGVjdXRlIGEgcmVuYW1lJzsKJGxhbmdbJ3BhdGgnXSA9ICdQYXRoJzsKJGxhbmdbJ3BhdGhtZXNzYWdlJ10gPSAnQ2hhbmdlIHRoZSBjYXRlZ29yeSBoZXJlIHRvIG1vdmUgdGhlIGZpbGUgdG8gYW5vdGhlciBkaXJlY3RvcnknOwokbGFuZ1sncGF0aGludXBsb2FkcyddID0gJyhSZWxhdGl2ZSB0byB0aGUgdXBsb2FkcyBkaXJlY3RvcnkpJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsJ10gPSAnPHA+VGhlIHVwbG9hZHMgbW9kdWxlIGhhcyBiZWVuIHN1Y2Nlc3NmdWxseSBpbnN0YWxsZWQuIEJlIHN1cmUgdG8gc2V0ICJNYW5hZ2UgVXBsb2FkcyIgcGVybWlzc2lvbnMgdG8gdXNlIHRoaXMgbW9kdWxlITwvcD4KPHA+PHN0cm9uZz5XYXJuaW5nPC9zdHJvbmc+IC0gVGhlIHByb3BlciBiZWhhdmlvdXIgb2YgdGhpcyBtb2R1bGUgZGVwZW5kcyBvbiBudW1lcm91cyBwaHAgY29uZmlndXJhdGlvbiB2YXJpYWJsZXMuICBUaGVzZSBpbmNsdWRlIDxlbT4oYnV0IGFyZSBub3QgbGltaXRlZCB0byk8L2VtPiwgcGhwXCdzIG1lbW9yeV9saW1pdCwgc2FmZV9tb2RlLCBmaWxlX3VwbG9hZHMsIHVwbG9hZHNfbWF4X2ZpbGVzaXplLCBhbmQgbWF4X2V4ZWN1dGlvbl90aW1lLiAgVGhlc2UgdmFyaWFibGVzIG1heSBuZWVkIGFkanVzdG1lbnQgZm9yIHRoaXMgbW9kdWxlIHRvIHdvcmsgcHJvcGVybHkgb24geW91ciBzaXRlLiAgSXQgaXMgYWR2aXNlZCB0aGF0IHlvdSB3b3JrIHdpdGggeW91ciBzeXN0ZW0gYWRtaW5pc3RyYXRvciBvciBob3N0IHByb3ZpZGVyIHRvIHR1bmUgdGhlc2Ugc2V0dGluZ3MgZm9yIHlvdXIgcmVxdWlyZW1lbnRzLjwvcD4nOwokbGFuZ1sncG9zdHVuaW5zdGFsbCddID0gJ1RoZSBVcGxvYWRzIG1vZHVsZSBoYXMgYmVlbiBzdWNjZXNzZnVsbHkgcmVtb3ZlZC4gIE5vIGZpbGVzIGhhdmUgYmVlbiByZW1vdmVkIGZyb20geW91ciB1cGxvYWRzIGRpcmVjdG9yeSwgYW5kIGZpbGUgaW50ZWdyaXR5IGlzIGludGFjdCc7CiRsYW5nWydwcmVmZXJlbmNlcyddID0gJ1ByZWZlcmVuY2VzJzsKJGxhbmdbJ3ByZWZzdXBkYXRlZCddID0gJ01vZHVsZSBwcmVmZXJlbmNlcyB1cGRhdGVkLic7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnlkZXNjJ10gPSAnRGVzY3JpcHRpb24nOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5bGlzdGFibGUnXSA9ICdGaWxlcyBpbiB0aGlzIGRpcmVjdG9yeSBjYW4gYmUgbGlzdGVkJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeW5hbWUnXSA9ICdDYXRlZ29yeSBOYW1lJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeXBhdGgnXSA9ICdTZXJ2ZXIgUGF0aCc7CiRsYW5nWydwcm9tcHRfZGVsZXRlZGlyZWN0b3J5J10gPSAnRGVsZXRlIGNhdGVnb3J5IGRpcmVjdG9yeT8nOwokbGFuZ1sncHJvbXB0X21heF91cGxvYWRzaXplJ10gPSAnTWF4aW11bSBmaWxlIHNpemUgYWxsb3dlZCAoS2IpJzsKJGxhbmdbJ3Byb21wdF92YWxpZF91cGxvYWRleHRlbnNpb25zJ10gPSAnVmFsaWQgdXBsb2FkIGV4dGVuc2lvbnMnOwokbGFuZ1snc2NhbiddID0gJ1NjYW4nOwokbGFuZ1snc2VsZWN0Y2F0ZWdvcnknXSA9ICdTZWxlY3QgQ2F0ZWdvcnknOwokbGFuZ1snc2l6ZSddID0gJ1NpemUnOwokbGFuZ1snc2l6ZWtiJ10gPSAnU2l6ZSAoS2IpJzsKJGxhbmdbJ3N1Ym1pdCddID0gJ1N1Ym1pdCc7CiRsYW5nWydzdW1tYXJ5X3RlbXBsYXRlJ10gPSAnU3VtbWFyeSBUZW1wbGF0ZXMnOwokbGFuZ1snc3VtbWFyeSddID0gJ1N1bW1hcnknOwokbGFuZ1sndGl0bGVfYWRtaW5fcGFuZWwnXSA9ICdVcGxvYWRzIE1vZHVsZSc7CiRsYW5nWyd0aXRsZV9tb2RfYWRtaW4nXSA9ICdNb2R1bGUgQWRtaW4gUGFuZWwnOwokbGFuZ1sndGl0bGVfbW9kX3ByZWZzJ10gPSAnTW9kdWxlIFByZWZlcmVuY2VzJzsKJGxhbmdbJ3RpdGxlX3N1Ym5ldF9leGNsdXNpb25zJ10gPSAnRXhjbHVkZSBzdWJuZXRzIGZyb20gc3RhdGlzdGljcyc7CiRsYW5nWyd0aXRsZV92YWxpZF91cGxvYWRleHRlbnNpb25zJ10gPSAnVmFsaWQgRXh0ZW5zaW9ucyc7CiRsYW5nWyd1bmluc3RhbGxlZCddID0gJ01vZHVsZSBVbmluc3RhbGxlZC4nOwokbGFuZ1sndXBncmFkZWQnXSA9ICdNb2R1bGUgdXBncmFkZWQgdG8gdmVyc2lvbiAlcy4nOwokbGFuZ1sndXBsb2FkJ10gPSAnVXBsb2FkJzsKJGxhbmdbJ3VwbG9hZGVkJ10gPSAnRmlsZSAlcyB3YXMgdXBsb2FkZWQgYnkgJXMuJzsKJGxhbmdbJ3JlcGxhY2VkJ10gPSAnRmlsZSAlcyB3YXMgcmVwbGFjZWQgYnkgJXMuJzsKJGxhbmdbJ2RlbGV0ZWQnXSA9ICdGaWxlICVzIHdhcyBkZWxldGVkLic7CiRsYW5nWyd1cGxvYWRmb3JtX3RlbXBsYXRlJ10gPSAnVXBsb2FkIFRlbXBsYXRlcyc7CiRsYW5nWyd1c2VybmFtZSddID0gJ1VzZXJuYW1lJzsKJGxhbmdbJ3dhcm5pbmdfZGVsZXRlY2F0ZWdvcnknXSA9ICdXQVJOSU5HOiBVc2UgY2F1dGlvbiB3aGVuIGRlbGV0aW5nIGNhdGVnb3JpZXMuICBGaWxlcyBtYXkgYmUgbG9zdCc7CiRsYW5nWyd3ZWxjb21lX3RleHQnXSA9ICc8cD5XZWxjb21lIHRvIHRoZSBVcGxvYWRzIE1vZHVsZSBhZG1pbiBzZWN0aW9uLiBTb21ldGhpbmcgZWxzZSB3b3VsZCBwcm9iYWJseSBnbyBoZXJlIGlmIHRoZSBtb2R1bGUgYWN0dWFsbHkgZGlkIHNvbWV0aGluZy48L3A+JzsKPz4K]]></data>
	</file>
	<file>
	  <filename>/lang/ext/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lang/ext/cs_CZ.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ3Byb21wdF9ncm91cGxpc3QnXSA9ICdBdXRob3Jpem92YW4mZWFjdXRlOyBGRVUgU2t1cGlueSc7CiRsYW5nWydpbmZvX2dyb3VwbGlzdCddID0gJ1Z5YmVybnRlIEZFVSBTa3VwaW55LCBrdGVyJmVhY3V0ZTsgbWFqJmlhY3V0ZTsgcG92b2xlbiBwxZkmaWFjdXRlO3N0dXAgayBzb3Vib3LFr20gdiB0JmVhY3V0ZTt0byBrYXRlZ29yaWkuICBacnUmc2Nhcm9uO2VuJmlhY3V0ZTttIHYmeWFjdXRlO2LEm3J1IHYmc2Nhcm9uO2VjaCBwb2xvxb5layBkb3ZvbCZpYWN1dGU7dGUgcMWZJmlhY3V0ZTtzdHVwIHYmc2Nhcm9uO2VtJzsKJGxhbmdbJ3RpdGxlX3NjYW4nXSA9ICdWeWhsZWRhdCBub3YmZWFjdXRlOyBzb3Vib3J5IHYgdCZlYWN1dGU7dG8ga2F0ZWdvcmlpJzsKJGxhbmdbJ3RpdGxlX2NyZWF0ZV90aHVtYm5haWxzJ10gPSAnVnl0dm/FmWl0IHNjaCZhYWN1dGU7emVqJmlhY3V0ZTtjJmlhY3V0ZTsgbiZhYWN1dGU7aGxlZHkgayBzb3Vib3J1bSB2IHQmZWFjdXRlO3RvIGthdGVnb3JpaS4nOwokbGFuZ1snY3JlYXRlX3RodW1ibmFpbHMnXSA9ICdWeXR2b8WZaXQgbiZhYWN1dGU7aGxlZHknOwokbGFuZ1sndGl0bGVfY3JlYXRlX3RodW1ibmFpbCddID0gJyh6bm92dSlWeXR2b8WZaXQgbiZhYWN1dGU7aGxlZCBwcm8gdGVudG8gc291Ym9yJzsKJGxhbmdbJ2NyZWF0ZV90aHVtYm5haWwnXSA9ICdWeXR2b8WZaXQgbiZhYWN1dGU7aGxlZCc7CiRsYW5nWydlcnJvcl9wYXRoZXJyb3InXSA9ICdOZW1vxb5ub3N0IG90ZXbFmWVuJmlhY3V0ZTsgYWRyZXMmYWFjdXRlO8WZZSAocHJvYmwmZWFjdXRlO20gcyBvcHImYWFjdXRlO3ZuxJtuJmlhY3V0ZTttPyknOwokbGFuZ1sndGl0bGVfZG93bmxvYWRfY2h1bmtzaXplJ10gPSAnU2l6ZSBvZiBlYWNoIGRvd25sb2FkIGNodW5rJzsKJGxhbmdbJ2luZm9fZG93bmxvYWRfY2h1bmtzaXplJ10gPSAnVXByYXZlbiZpYWN1dGU7IHRvaG90byBwYXJhbWV0cnUgYnVkZSBtJmlhY3V0ZTt0ICZ1YWN1dGU7xI1pbmVrIG5hIHJ5Y2hsb3N0aSBzdGFob3YmYWFjdXRlO24maWFjdXRlOyBhIG3Fr8W+ZSBwb21vY3QgbmEgc3lzdCZlYWN1dGU7bWVjaCBzIG0mZWFjdXRlO27EmyBwYW3Em3RpJzsKJGxhbmdbJ3dhcm5pbmdfc2FmZV9tb2RlJ10gPSAnUEhQJiMwMzk7cyBzYWZlIG1vZGUgamUgYWt0aXZuJmlhY3V0ZTsuICBNxa/FvmUgcMWvc29iaXQgcHJvYmwmZWFjdXRlO215IHMgbmFociZhYWN1dGU7diZhYWN1dGU7biZpYWN1dGU7bSBzb3Vib3LFryAob3ByJmFhY3V0ZTt2bsSbbiZpYWN1dGU7bSkgYSBtxa/FvmUgdGFreSBwxa9zb2JpdCBwcm9ibCZlYWN1dGU7bXkgcyBvZGVzJmlhY3V0ZTtsJmFhY3V0ZTtuJmlhY3V0ZTttIHNvdWJvcsWvLiBKZSBkb3BvcnXEjWVubyBhYnkganN0ZSBuZXBvdcW+JmlhY3V0ZTt2YWxpIHNhZmUgbW9kLic7CiRsYW5nWydwYXJhbV9kZXRhaWxwYWdlJ10gPSAnVXNlZnVsIGZvciBkaXNwbGF5aW5nIGEgZGV0YWlsIHJlcG9ydCB1c2luZyBhIGRpZmZlcmVudCBwYWdlIHRlbXBsYXRlLCB0aGlzIHBhcmFtZXRlciB0YWtlcyB0aGUgcGFnZSBpZCBvciBwYWdlIGFsaWFzIG9mIGEgcGFnZSB0aGF0IHNob3VsZCBiZSB1c2VkIHRvIGRpc3BsYXkgdGhlIGRldGFpbCByZXBvcnQnOwokbGFuZ1sncGFyYW1fcHJlZml4J10gPSAnQm9vbGVhbiwga3RlciZ5YWN1dGU7bSBuYXN0YXZ1amV0ZSB6ZGEgbSZhYWN1dGU7IG0maWFjdXRlO3Qgc291Ym9yIHByZWZpeCc7CiRsYW5nWydwYXJhbV9wcmVmaXhfZmV1J10gPSAnQSBib29sZWFuIHBhcmFtZXRlciB0aGF0IGluZGljYXRlcyB0aGF0IHRoZSBwcmVmaXggc2hvdWxkIGJlIHRha2VuIGZyb20gdGhlIGN1cnJlbnQgYXV0aG9yLCBpZiBub3Qgc3BlY2lmaWVkLCB0aGUgcHJlZml4IGlzIHRoZSBjdXJyZW50IHRpbWUgKGluIGRlY2hleCBmb3JtYXQpJzsKJGxhbmdbJ3BhcmFtX25vY2FwdGNoYSddID0gJ1Z5cG5vdXQgcG9kcG9ydSBDQVRDSHkgdiBuYWhyJmFhY3V0ZTt2YWMmaWFjdXRlO20gZm9ybXVsJmFhY3V0ZTvFmWkgKHZlIHYmeWFjdXRlO2Nob3omaWFjdXRlO20gc3RhdnUgemFwbnV0byknOwokbGFuZ1sndGl0bGVfdXBsb2FkZm9ybV90ZW1wbGF0ZSddID0gJ1VwcmF2aXQgJnNjYXJvbjthYmxvbnUgbmFociZhYWN1dGU7dmFjJmlhY3V0ZTtobyBmb3JtdWwmYWFjdXRlO8WZZSc7CiRsYW5nWydjYXB0Y2hhX3RpdGxlJ10gPSAnVmxvxb50ZSB0ZXh0IHpvYnJhemVuJnlhY3V0ZTsgdiB0b210byBvYnImYWFjdXRlO3prdSc7CiRsYW5nWydlcnJvcl9jYXB0Y2hhbWlzbWF0Y2gnXSA9ICdUZXh0IGt0ZXImeWFjdXRlOyBqc3RlIHZsb8W+aWxpIHNlIG5lc2Nob2R1amUgcyB0ZXh0ZW0geiBvYnImYWFjdXRlO3prdSc7CiRsYW5nWyd0aXRsZV9hdXRvdGh1bWJuYWlsX2V4dGVuc2lvbnMnXSA9ICdWeXR2JmFhY3V0ZTvFmWV0IG4mYWFjdXRlO2hsZWR5IHBybyBzb3Vib3J5IHMgdMSbbWl0byBwxZkmaWFjdXRlO3BvbmFtaSc7CiRsYW5nWyd0aXRsZV9hdXRvdGh1bWJuYWlsX3NpemUnXSA9ICdNYXhpbSZhYWN1dGU7bG4maWFjdXRlOyB2ZWxpa29zdCAodiBwaXhlbGVjaCkgZ2VuZXJvdmFuJnlhY3V0ZTtjaCBuJmFhY3V0ZTtobGVkxa8nOwokbGFuZ1sncHJvbXB0X3VwbG9hZF9pY29uJ10gPSAnTmFociZhYWN1dGU7dCBpa29udSc7CiRsYW5nWydpbmZvX3N5c2RlZmF1bHQnXSA9ICdUZW50byB0ZXh0IGplIHBvdcW+aXQgcMWZaSB2eXR2JmFhY3V0ZTvFmWVuJmlhY3V0ZTsgbm92JmVhY3V0ZTsgJnNjYXJvbjthYmxvbnkgdG9ob3RvIHR5cHUnOwokbGFuZ1sndGl0bGVfZGV0YWlscnB0X3N5c2RlZmF1bHQnXSA9ICdWJnlhY3V0ZTtjaG96JmlhY3V0ZTsgc3lzdCZlYWN1dGU7bW92JmFhY3V0ZTsgJnNjYXJvbjthYmxvbmEgZGVhaWxuJmlhY3V0ZTtobyB6b2JyYXplbiZpYWN1dGU7JzsKJGxhbmdbJ3RpdGxlX3N1bW1hcnlycHRfc3lzZGVmYXVsdCddID0gJ1YmeWFjdXRlO2Nob3omaWFjdXRlOyBzeXN0JmVhY3V0ZTttb3YmYWFjdXRlOyAmc2Nhcm9uO2FibG9uYSBzaHJudWomaWFjdXRlO2MmaWFjdXRlO2hvIHpvYnJhemVuJmlhY3V0ZTsnOwokbGFuZ1sndGl0bGVfdXBsb2FkZm9ybV9zeXNkZWZhdWx0J10gPSAnViZ5YWN1dGU7Y2hveiZpYWN1dGU7IHN5c3QmZWFjdXRlO21vdiZhYWN1dGU7ICZzY2Fyb247YWJsb25hIG5haHImYWFjdXRlO3ZhYyZpYWN1dGU7aG8gZm9ybXVsJmFhY3V0ZTvFmWUnOwokbGFuZ1sndGVtcGxhdGUnXSA9ICcmU2Nhcm9uO2FibG9uYSc7CiRsYW5nWydyZXNldHRvZGVmYXVsdCddID0gJ1Jlc2V0b3ZhdCBuYSB2JnlhY3V0ZTtjaG96JmlhY3V0ZTsnOwokbGFuZ1sndGl0bGVfc3VtbWFyeXJwdF90ZW1wbGF0ZSddID0gJyZTY2Fyb247YWJsb25hIHNocm51aiZpYWN1dGU7YyZpYWN1dGU7aG8gem9icmF6ZW4maWFjdXRlOyc7CiRsYW5nWyd0aXRsZV9kZXRhaWxycHRfdGVtcGxhdGUnXSA9ICcmU2Nhcm9uO2FibG9uYSBkZXRhaWxuJmlhY3V0ZTtobyB6b2JyYXplbiZpYWN1dGU7JzsKJGxhbmdbJ3Byb21wdF9uYW1lJ10gPSAnSm0mZWFjdXRlO25vJzsKJGxhbmdbJ3Byb21wdF9kZWZhdWx0J10gPSAnViZ5YWN1dGU7Y2hveiZpYWN1dGU7JzsKJGxhbmdbJ2xlZ2VuZF91cGxvYWRmb3JtJ10gPSAnTmFociZhYWN1dGU7dCBzb3Vib3InOwokbGFuZ1snZXJyb3JfbWlzc2luZ3BhcmFtJ10gPSAnUG90xZllYm4meWFjdXRlOyBwYXJhbWV0ciBjaHliJmlhY3V0ZTsnOwokbGFuZ1snZXJyb3JfbWlzc2luZ25hbWUnXSA9ICdKbSZlYWN1dGU7bm8gcHJvIHRlbnRvIHNvdWJvciZ5YWN1dGU7IHR5cCBtdXMmaWFjdXRlOyBiJnlhY3V0ZTt0IHNwZWNpZmlrb3YmYWFjdXRlO25vJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdleHRlbnNpb25zJ10gPSAnTWluaW0mYWFjdXRlO2xuxJsgamVkbmEgcMWZJmlhY3V0ZTtwb25hIG11cyZpYWN1dGU7IGImeWFjdXRlO3Qgc3BlY2lmaWtvdiZhYWN1dGU7bm8nOwokbGFuZ1snZXJyb3JfbWlzc2luZ2ljb24nXSA9ICdJa29uYSBtdXMmaWFjdXRlOyBiJnlhY3V0ZTt0IHNwZWNpZmlrb3YmYWFjdXRlO25hJzsKJGxhbmdbJ2Vycm9yX25vc3VjaHJvdyddID0gJ1VyxI1lbiZhYWN1dGU7IMWZYWRhIG5lbcWvxb5lIGImeWFjdXRlO3QgbmFsZXplbmEnOwokbGFuZ1snbmFtZV91bmtub3duJ10gPSAnTmV6biZhYWN1dGU7bSZ5YWN1dGU7JzsKJGxhbmdbJ2Rlc2NyaXB0aW9uX3Vua25vd24nXSA9ICdQb3Bpc2VrIHR5cHUgc291Ym9yxa8gcHJvIG5lemppJnNjYXJvbjt0xJtuJnlhY3V0ZTsgdHlwJzsKJGxhbmdbJ2ltYWdlJ10gPSAnT2JyJmFhY3V0ZTt6ZWsnOwokbGFuZ1snaWNvbiddID0gJ0lrb25hJzsKJGxhbmdbJ2V4dGVuc2lvbnMnXSA9ICdQxZkmaWFjdXRlO3Bvbnkgc291Ym9yxa8nOwokbGFuZ1snYWRkZmlsZXR5cGUnXSA9ICdQxZlpZGF0IG5vdiZ5YWN1dGU7IHR5cCBzb3Vib3J1JzsKJGxhbmdbJ2ZpbGVfdHlwZXMnXSA9ICdUeXB5IHNvdWJvcsWvJzsKJGxhbmdbJ2Vycm9yX25vY2F0ZWdvcnlpZCddID0gJ05lYnlsbyB6YWQmYWFjdXRlO25vIElEIGthdGVnb3JpZSc7CiRsYW5nWydlcnJvcl9ub2NhdGVnb3J5J10gPSAnTmVieWxvIHphZCZhYWN1dGU7bm8gSUQga2F0ZWdvcmllJzsKJGxhbmdbJ2Vycm9yX3RlbXBsYXRlbmFtZWV4aXN0cyddID0gJyZTY2Fyb247YWJsb25hIHRvaG90byBqbSZlYWN1dGU7bmEgamnFviBleGlzdHVqZSc7CiRsYW5nWydwcm9tcHRfdGVtcGxhdGVuYW1lJ10gPSAnSm0mZWFjdXRlO25vICZTY2Fyb247YWJsb255JzsKJGxhbmdbJ3Byb21wdF90ZW1wbGF0ZSddID0gJyZTY2Fyb247YWJsb25hJzsKJGxhbmdbJ3Byb21wdF9uZXd0ZW1wbGF0ZSddID0gJ1Z5dHZvxZlpdCBub3ZvdSAmc2Nhcm9uO2FibG9udSc7CiRsYW5nWydoZWxwX09uRG93bmxvYWQnXSA9ICc8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgZmluaXNoZXMgZG93bmxvYWRpbmcgYSBmaWxlPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5pZDwvZW0+IC0gVXBsb2FkIElEPC9saT4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gRmlsZSBuYW1lPC9saT4NCjxsaT48ZW0+aXA8L2VtPiAtIFRoZSBJUCBBZGRyZXNzIG9mIHRoZSBkb3dubG9hZGVyPC9saT4NCjwvdWw+JzsKJGxhbmdbJ2hlbHBfT25EZWxldGVDYXRlZ29yeSddID0gJzxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgY2F0ZWdvcnkgaXMgRGVsZXRlZDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gQ2F0ZWdvcnkgbmFtZTwvbGk+DQo8bGk+PGVtPnBhdGg8L2VtPiAtIENhdGVnb3J5IHBhdGg8L2xpPg0KPC91bD4nOwokbGFuZ1snaGVscF9PbkNyZWF0ZUNhdGVnb3J5J10gPSAnPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBjYXRlZ29yeSBpcyBDcmVhdGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgbmFtZSBvZiB0aGUgY2F0ZWdvcnk8L2xpPg0KPGxpPjxlbT5kZXNjcmlwdGlvbjwvZW0+IC0gVGhlIGNhdGVnb3J5IGRlc2NyaXB0aW9uPC9saT4NCjxsaT48ZW0+cGF0aDwvZW0+IC0gVGhlIGNhdGVnb3J5IHBhdGg8L2xpPg0KPGxpPjxlbT5wYXRoPC9lbT4gLSBBIGZsYWcgaW5kaWNhdGluZyBpZiB0aGUgY2F0ZWdvcnkgaXMgbGlzdGFibGU8L2xpPg0KPC91bD4nOwokbGFuZ1snaGVscF9PblJlbW92ZSddID0gJzxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgZmlsZSBpcyByZW1vdmVkIHZpYSB0aGUgYWRtaW4gb3IgZnJvbnRlbmQgaW50ZXJmYWNlczwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIHJlbW92ZWQgZmlsZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgaWQgb2YgdGhlIHJlbW92ZWQgZmlsZTwvbGk+DQo8bGk+PGVtPmNhdGVnb3J5X2lkPC9lbT4gLSBUaGUgaWQgb2YgdGhlIGNhdGVnb3J5PC9saT4NCjwvdWw+JzsKJGxhbmdbJ2hlbHBfT25VcGxvYWQnXSA9ICc8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIG5ldyBmaWxlIGlzIHVwbG9hZGVkIHZpYSB0aGUgYWRtaW4gb3IgZnJvbnRlbmQgaW50ZXJmYWNlczwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+Y2F0ZWdvcnk8L2VtPiAtIFRoZSBjYXRlZ29yeSBuYW1lPC9saT4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIHVwbG9hZGVkIGZpbGU8L2xpPg0KPGxpPjxlbT5zaXplPC9lbT4gLSBUaGUgc2l6ZSBvZiB0aGUgdXBsb2FkZWQgZmlsZTwvbGk+DQo8bGk+PGVtPnN1bW1hcnk8L2VtPiAtIFRoZSBzaG9ydCBkZXNjcmlwdGlvbiBmb3IgdGhlIHVwbG9hZGVkIGZpbGUgKG1heSBiZSBlbXB0eSk8L2VtPjwvbGk+DQo8bGk+PGVtPmRlc2NyaXB0aW9uPC9lbT4gLSBUaGUgbG9uZyBkZXNjcmlwdGlvbiBmb3IgdGhlIHVwbG9hZGVkIGZpbGUgKG1heSBiZSBlbXB0eSk8L2VtPjwvbGk+DQo8bGk+PGVtPmF1dGhvcjwvZW0+IC0gVGhlIGF1dGhvciBvZiB0aGUgdXBsb2FkZWQgZmlsZSAoaWYgYXZhaWxhYmxlKTwvZW0+PC9saT4NCjxsaT48ZW0+aXBfYWRkcmVzczwvZW0+IC0gVGhlIGludGVybmV0IGFkZHJlc3Mgb2YgdGhlIGNsaWVudCB0aGF0IHVwbG9hZGVkIHRoZSBmaWxlPC9saT4NCjwvdWw+JzsKJGxhbmdbJ2luZm9fZXZlbnRfb25kZWxldGVjYXRlZ29yeSddID0gJ1VkJmFhY3V0ZTtsb3N0IGdlbmVyb3ZhbiZhYWN1dGU7IGtkecW+IGplIHNtYXomYWFjdXRlO25hIGthdGVnb3JpZSc7CiRsYW5nWydpbmZvX2V2ZW50X29uY3JlYXRlY2F0ZWdvcnknXSA9ICdVZCZhYWN1dGU7bG9zdCBnZW5lcm92YW4mYWFjdXRlOywga2R5xb4gamUgdnl0dm/FmWVuYSBrYXRlZ29yaWUnOwokbGFuZ1snaW5mb19ldmVudF9vbmRvd25sb2FkJ10gPSAnVWQmYWFjdXRlO2xvc3QgZ2VuZXJvdmFuJmFhY3V0ZTssIGtkecW+IGplIHN0YcW+ZW4gc291Ym9yJzsKJGxhbmdbJ2luZm9fZXZlbnRfb251cGxvYWQnXSA9ICdVZCZhYWN1dGU7bG9zdCBnZW5lcm92YW4mYWFjdXRlOywga2R5xb4gamUgbmFociZhYWN1dGU7biBub3YmeWFjdXRlOyBzb3Vib3InOwokbGFuZ1snaW5mb19ldmVudF9vbnJlbW92ZSddID0gJ1VkJmFhY3V0ZTtsb3N0IGdlbmVyb3ZhbiZhYWN1dGU7LCBrZHnFviBqZSBvZGViciZhYWN1dGU7biBzb3Vib3InOwokbGFuZ1sndGl0bGVfdXNlcnRhZ19vbnVwbG9hZCddID0gJ1XFvml2YXRlbHNrJnlhY3V0ZTsgdGFnLCBrdGVyJnlhY3V0ZTsgbSZhYWN1dGU7IGImeWFjdXRlO3Qgdm9sJmFhY3V0ZTtuIHBvIGRva29uxI1lbiZpYWN1dGU7IG5haHImYWFjdXRlO24maWFjdXRlOyc7CiRsYW5nWydub25lJ10gPSAnxb0mYWFjdXRlO2RuJnlhY3V0ZTsnOwokbGFuZ1snbWF0Y2hlc2ZvdW5kJ10gPSAnWiZhYWN1dGU7em5hbXkgbmFsZXplbnknOwokbGFuZ1snZmlsdGVyJ10gPSAnRmlsdHInOwokbGFuZ1sndGl0bGVfcmVkaXJlY3RvbnVwbG9hZCddID0gJ1DFmWVzbcSbcm92YXQgbmEgc3RyJmFhY3V0ZTtua3UgaWQvYWxpYXMgcG8gdcW+aXZhdGVsc2smZWFjdXRlO20gdXBsb2FkdSc7CiRsYW5nWydkZXRhaWxzJ10gPSAnRGV0YWlseSc7CiRsYW5nWydjb25maXJtX3ByZWZlcmVuY2VzJ10gPSAnSnN0ZSBzaSBqaXN0aSAmdWFjdXRlO3ByYXZvdSBwcmVmZXJlbmMmaWFjdXRlOz8nOwokbGFuZ1snZXJyb3Jfbm9maWxlc3VwbG9hZGVkJ10gPSAnxb0mYWFjdXRlO2RuJmVhY3V0ZTsgc291Ym9yeSBuZWJ5bHkgbmFociZhYWN1dGU7bnkuJzsKJGxhbmdbJ3Byb21wdF9yZXBsYWNlJ10gPSAnUG92b2xpdCBwxZllcHMmYWFjdXRlO24maWFjdXRlOyc7CiRsYW5nWydpbmZvX3JlcGxhY2UnXSA9ICdSZXBsYWNlIGFueSBmaWxlIHdpdGggdGhlIHNhbWUgbmFtZSAoZG9lcyBub3QgY2hhbmdlIGlkKSc7CiRsYW5nWydwYXJhbV9ub19pbml0aWFsJ10gPSAnRG8gbm90IGRpc3BsYXkgYW55IGluaXRpYWwgcmVzdWx0cyB3aGVuIHRoZSBmaWx0ZXIgaXMgb24nOwokbGFuZ1sncGFyYW1fa2V5J10gPSAnUHJvdmlkZSBhbiBhZGRpdGlvbmFsIGtleSB0byB0aGUgbW9kdWxlIGZvciBmdXJ0aGVyIG9yZ2FuaXppbmcgdXBsb2Fkcy4gIFRoaXMga2V5IGNvdWxkIGJlIGFuIGVuY29kZWQgc3RyaW5nIGxpa2U6ICYjMDM5O2ZldXNlcnM6dWlkJiMwMzk7LCBldGMuICBUaGlzIHBhcmFtZXRlciBpcyB1c3VhbGx5IG9ubHkgbmVlZGVkIHdoZW4gZW1iZWRkaW5nIHRoZSB1cGxvYWRzIG1vZHVsZSBpbnRvIGFub3RoZXIgbW9kdWxlJzsKJGxhbmdbJ3BhcmFtX25vYXV0aG9yJ10gPSAnSGlkZSB0aGUgYXV0aG9yIGZpZWxkIGZyb20gdGhlIHVwbG9hZCBmb3JtLiAgVGhpcyBwYXJhbWV0ZXIgaXMgb25seSB2YWxpZCB3aGVuIG1vZGU9JiMwMzk7dXBsb2FkJiMwMzk7LiAgSWYgVGhlIEZyb250ZW5kVXNlcnMgbW9kdWxlIGlzIHByZXNlbnQsIGFuZCBhIHVzZXIgaXMgY3VycmVudGx5IGxvZ2dlZCBpbiwgYSBoaWRkZW4gZmllbGQgd2lsbCBob2xkIHRoZSBjdXJyZW50bHkgbG9nZ2VkIGluIHVzZXJuYW1lJzsKJGxhbmdbJ3BhcmFtX3VwbG9hZF9pZCddID0gJ3VwbG9hZF9pZD0mcXVvdDtpZCZxdW90OyAtIHNwZWNpZnkgYSBzaW5nbGUgZmlsZSBmb3IgdGhlIHVybC9saW5rIG9yIHNpbmdsZSBtb2RlcyAoYWJvdmUpJzsKJGxhbmdbJ3BhcmFtX3VzZV9zdHJpY3RfcmVnZXhwJ10gPSAnVGhlIGZpbHRlciBmaWVsZCBpcyB1c2VkIGFzIGEgc3RyaWN0IHJlZ2V4cCB3aXRob3V0IHByZXByb2Nlc3Npbmcgb2Ygc3BhY2VzJzsKJGxhbmdbJ3BhcmFtX2RldGFpbHRlbXBsYXRlJ10gPSAnVXNlIGEgdGVtcGxhdGUgd2l0aCB0aGlzIG5hbWUgZm9yIHRoZSBkZXRhaWxlZCByZXBvcnQuJzsKJGxhbmdbJ3BhcmFtX3RlbXBsYXRlJ10gPSAnVXNlIGEgdGVtcGxhdGUgd2l0aCB0aGlzIG5hbWUgZm9yIHRoaXMgcmVwb3J0IG9yIGZvcm0uICBUaGUgbW9kZSBpcyB1c2VkIHRvIGRldGVybWluZSB3aGF0IHR5cGUgb2YgdGVtcGxhdGUgaXMgcmVxdWlyZXJkLCBhbmQgdGhlbiBhIG5hbWUgbWF0Y2ggaXMgcGVyZm9ybWVkIHdpdGhpbiB0aGF0IHR5cGUuJzsKJGxhbmdbJ3BhcmFtX2ZpbHRlciddID0gJ1pvYnJheml0IGZpbHRyb3ZhYyZpYWN1dGU7IGZvcm11bCZhYWN1dGU7xZknOwokbGFuZ1sncGFyYW1fbm9faW50aXRpYWwnXSA9ICdPbmx5IHVzZWZ1bCB3aGVuIHRoZSBmaWx0ZXIgcGFyYW1ldGVyIGlzIHN1cHBsaWVkLCBvciBvbiBieSBkZWZhdWx0LCB0aGlzIHBhcmFtZXRlciBpbmRpY2F0ZXMgd2V0aGVyIGluaXRpYWwgcmVzdWx0cyBzaG91bGQgYmUgcmV0dXJuZWQnOwokbGFuZ1sncGFyYW1fZmlsZXR5cGVzJ10gPSAnWm9icmF6aXQgcG91emUgc291Ym9yeSwgamVqaWNoxb4gdHlwIGplIG9ic2HFvmVuIHYgc2V6bmFtdSwgb2RkxJtsb3ZhbiZlYWN1dGU7bSDEjSZhYWN1dGU7cmthbWknOwokbGFuZ1sncGFyYW1fc29ydG9yZGVyJ10gPSAnICA8cD5Tb3J0IE9yZGVycw0KICA8dWw+DQogIDxsaT48ZW0+ZGF0ZV9hc2M8L2VtPiAtIFNvcnQgYnkgYXNjZW5kaW5nIGRhdGU8L2xpPg0KICA8bGk+PGVtPmRhdGVfZGVzYzwvZW0+IC0gU29ydCBieSBkZXNjZW5kaW5nIGRhdGU8L2xpPg0KICA8bGk+PGVtPm5hbWVfYXNjPC9lbT4gLSBTb3J0IGJ5IGFzY2VuZGluZyBuYW1lPC9saT4NCiAgPGxpPjxlbT5uYW1lX2Rlc2M8L2VtPiAtIFNvcnQgYnkgZGVzY2VuZGluZyBuYW1lPC9saT4NCiAgPGxpPjxlbT5zaXplX2FzYzwvZW0+IC0gU29ydCBieSBhc2NlbmRpbmcgc2l6ZTwvbGk+DQogIDxsaT48ZW0+c2l6ZV9kZXNjPC9lbT4gLSBTb3J0IGJ5IGRlc2NlbmRpbmcgc2l6ZTwvbGk+DQogIDxsaT48ZW0+ZGVzY19hc2M8L2VtPiAtIFNvcnQgYnkgYXNjZW5kaW5nIGRlc2NyaXB0aW9uPC9saT4NCiAgPGxpPjxlbT5kZXNjX2Rlc2M8L2VtPiAtIFNvcnQgYnkgZGVzY2VuZGluZyBkZXNjcmlwdGlvbjwvbGk+DQogIDxsaT48ZW0+YXV0aG9yX2FzYzwvZW0+IC0gU29ydCBieSBhc2NlbmRpbmcgYXV0aG9yPC9saT4NCiAgPGxpPjxlbT5hdXRob3JfZGVzYzwvZW0+IC0gU29ydCBieSBkZXNjZW5kaW5nIGF1dGhvcjwvbGk+DQogIDxsaT48ZW0+aXBfYXNjPC9lbT4gLSBTb3J0IGJ5IGFzY2VuZGluZyBpcCBhZGRyZXNzPC9saT4NCiAgPGxpPjxlbT5pcF9kZXNjPC9lbT4gLSBTb3J0IGJ5IGRlc2NlbmRpbmcgaXAgYWRkcmVzczwvbGk+DQogIDxsaT48ZW0+cmFuZG9tPC9lbT4gLSBSYW5kb20gc29ydCBvcmRlcjwvbGk+DQogIDwvdWw+DQogIDwvcD4nOwokbGFuZ1sncGFyYW1fbGlzdGluZ3RlbXBsYXRlJ10gPSAnJlNjYXJvbjthYmxvbmEsIGplxb4gYnVkZSBwb3XFvml0YSBwcm8gem9icmF6ZW4maWFjdXRlOyBzZXpuYW11IHNvdWJvcsWvLCBqZXN0bGnFvmUgamUgdGF0byB6b2JyYXplbmEgcG8ga2xpa251dCZpYWN1dGU7IG5hIGthdGVnb3JpaSB2IHDFmWVobGVkdSBrYXRlZ29yaSZpYWN1dGU7JzsKJGxhbmdbJ3BhcmFtX2xpc3Rpbmdzb3J0b3JkZXInXSA9ICdacMWvc29iLCBrdGVyJnlhY3V0ZTttIGJ1ZGUgxZlhemVuIG9ic2FoIGthdGVnb3JpZSBwbyBwxZllY2hvZHUgeiBwxZllaGxlZHUga2F0ZWdvcmkmaWFjdXRlOyAoYWxhIHBhcmFtX3NvcnRvcmRlcikuJzsKJGxhbmdbJ3BhcmFtX2ZpbGVleHRlbnNpb25zJ10gPSAnIA0KZmlsZV9leHRlbnNpb25zPSZxdW90O2V4dDEsZXh0MixleHQzJnF1b3Q7DQo8cD52YWxpZCBvbmx5IHdoZW4gbW9kZT11cGxvYWQsIHRoaXMgcGFyYW1ldGVyIGxpbWl0cyB0aGUgdHlwZXMgb2YgZmlsZXMgdGhhdCBjYW4gYmUgdXBsb2FkZWQuICBJdCBvdmVycmlkZXMgYW55IHNldHRpbmdzIGluIHRoZSBtb2R1bGUgcHJlZmVyZW5jZXMuPC9wPm1vZHVsZSBwcmVmZXJlbmNlcy48L3A+JzsKJGxhbmdbJ3BhcmFtX2NvdW50J10gPSAnY291bnQ9JnF1b3Q7TiZxdW90Ow0KPHA+QSBwYXJhbWV0ZXIgdG8gbGlzdCBvbmx5IHRoZSBmaXJzdCBOIHJlc3VsdHMgb2YgdGhlIHF1ZXJ5LiAgUGFnaW5hdGlvbiB3b3VsZCBiZSBiZXR0ZXIsIGJ1dCB0aGlzIHdpbGwgZG8gdGhlIHRyaWNrIGZvciBub3c8L3A+JzsKJGxhbmdbJ3BhcmFtX2NhdGVnb3J5J10gPSAnY2F0ZWdvcnk9JnF1b3Q7bmFtZSZxdW90Ow0KPHA+PGI+Tm90ZTo8L2I+IENhdGVnb3J5IGNhbiBiZSAmcXVvdDthbGwmcXVvdDssIHdoaWNoIHdpbGwgbGlzdCBhbGwgb2YgdGhlIHVwbG9hZHMgZnJvbSBhbGwgPGVtPmxpc3RhYmxlPC9lbT4gY2F0ZWdvcmllczwvcD4nOwokbGFuZ1sncGFyYW1fbW9kZSddID0gJyAgPHVsPg0KICA8bGk+PGVtPmRldGFpbGVkPC9lbT4gLSBEaXNwbGF5IGEgZGV0YWlsZWQgbGlzdCBvZiBhbGwgZmlsZXMgaW4gdGhlIGNhdGVnb3J5PC9saT4NCiAgPGxpPjxlbT51cGxvYWQ8L2VtPiAtIERpc3BsYXkgYSBmb3JtIHRvIGFsbG93IGEgZnJvbnRlbmQgdXNlciB0byB1cGxvYWQgYSBmaWxlPC9saT4NCiAgPGxpPjxlbT51cmwgPGk+b3I8L2k+IGxpbms8L2VtPiAtIERpc3BsYXkgYSBsaW5rIHRvIGEgZmlsZTwvbGk+DQogIDxsaT48ZW0+c3VtbWFyeTwvZW0+IC0gRGlzcGxheSBhIHN1bW1hcml6ZWQgbGlzdCBvZiBhbGwgZmlsZXMgaW4gdGhlIGNhdGVnb3J5PC9saT4NCiAgPGxpPjxlbT5zaW5nbGU8L2VtPiAtIERpc3BsYXkgYSBkZXRhaWxlZCByZXBvcnQgYWJvdXQgYSBzaW5nbGUgdXBsb2FkPC9saT4NCiAgPGxpPjxlbT5zaW5nbGVzdW1tYXJ5PC9lbT4gLSBEaXNwbGF5IGEgc3VtbWFyaXplZCByZXBvcnQgYWJvdXQgYSBzaW5nbGUgdXBsb2FkL2xpPg0KICA8L3VsPic7CiRsYW5nWydwYXJhbV9zZWxlY3Rmb3JtJ10gPSAnV2hlbiB1c2luZyB0aGUgJiMwMzk7c2VsZWN0JiMwMzk7IG1vZGUsIHRoaXMgcGFyYW1ldGVyIGlzIHRoZSBmb3JtaWQgb2YgdGhlIHBhcmVudCBmb3JtLiAgVXNlZCB0byBoYW5kbGUgcGFyYW1ldGVyIHBhc3NpbmcnOwokbGFuZ1sncGFyYW1fc2VsZWN0bmFtZSddID0gJ3doZW4gdXNpbmcgdGhlICYjMDM5O3NlbGVjdCYjMDM5OyBtb2RlLCB0aGlzIHBhcmFtZXRlciBzcGVjaWZpZXMgdGhlIG5hbWUgb2YgdGhlIGZpZWxkJzsKJGxhbmdbJ3BhcmFtX3NlbGVjdHZhbHVlJ10gPSAnV2hlbiB1c2luZyB0aGUgJiMwMzk7c2VsZWN0JiMwMzk7IG1vZGUsIHRoaXMgcGFyYW1ldGVyIHNwZWNpZmllcyB0aGUgZGVmYXVsdCBmaWVsZCB2YWx1ZSc7CiRsYW5nWydwYXJhbV9zZWxlY3Rub25lJ10gPSAnV2hlbiB1c2luZyB0aGUgJiMwMzk7c2VsZWN0JiMwMzk7IG1vZGUsIHRoaXMgcGFyYW1ldGVyIHNwZWNpZmllcyB3ZXRoZXIgJiMwMzk7bm9uZSYjMDM5OyBpcyBhIHZhbGlkIGNob2ljZS4nOwokbGFuZ1sncmV0dXJudG9tb2R1bGUnXSA9ICdWciZhYWN1dGU7dGl0IHNlIG5hIHBhbmVsIG1vZHVsdSc7CiRsYW5nWydlcnJvcl9ub2NhdGVnb3JpZXMnXSA9ICdOZWpzb3Ugxb4mYWFjdXRlO2RuJmVhY3V0ZTsgbmFkZWZpbm92YW4mZWFjdXRlOyBrYXRlZ29yaWUnOwokbGFuZ1sndGl0bGVfZW5mb3JjZWV4dGVuc2lvbnMnXSA9ICdQb8W+YWRvdmF0IHDFmSZpYWN1dGU7cG9ueSB1IHYmc2Nhcm9uO2VjaCBuYWhyJmFhY3V0ZTt2YW4meWFjdXRlO2NoIHNvdWJvcsWvJzsKJGxhbmdbJ3Jlc3RvcmVkZWZhdWx0c2NvbmZpcm0nXSA9ICdUaGlzIG9wZXJhdGlvbiB3aWxsIHJlc3RvcmUgdGhlIHRlbXBsYXRlIHRvIHN5c3RlbSBkZWZhdWx0cy4gIEFueSBjaGFuZ2VzIHlvdSBoYXZlIG1hZGUgd2lsbCBiZSBsb3N0LiAgQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIHByb2NlZWQ/JzsKJGxhbmdbJ2luZm9fdGh1bWJuYWlsJ10gPSAnSmluJnlhY3V0ZTsgbiZhYWN1dGU7aGxlZG92JnlhY3V0ZTsgc291Ym9yLic7CiRsYW5nWyd0aHVtYm5haWwnXSA9ICdOJmFhY3V0ZTtobGVkJzsKJGxhbmdbJ25ld3RodW1ibmFpbCddID0gJ05haHImYWFjdXRlO3Qgbm92JnlhY3V0ZTsgbiZhYWN1dGU7aGxlZCc7CiRsYW5nWydpbmZvX3N1bW1hcnknXSA9ICdBIGJyaWVmIGRlc2NyaXB0aW9uIG9mIHRoZSBmaWxlIChpZiBlbXB0eSwgdGhlIGZpbGUgbmFtZSBpcyB1c2VkIHdpdGhvdXQgdGhlIGV4dGVuc2lvbiknOwokbGFuZ1snaW5mb19jYXRlZ29yeW5hbWUnXSA9ICdLciZhYWN1dGU7dGsmZWFjdXRlOyBqbSZlYWN1dGU7bm8gcHJvIGthdGVnb3JpaSc7CiRsYW5nWydpbmZvX2NhdGVnb3J5ZGVzYyddID0gJ1BvcGlzIGthdGVnb3JpZSc7CiRsYW5nWydpbmZvX2NhdGVnb3J5cGF0aCddID0gJ0ptJmVhY3V0ZTtubyBhZHJlcyZhYWN1dGU7xZllLCBrdGVyJmVhY3V0ZTsgYnVkZSBwb3XFvml0byBwcm8gdWtsJmFhY3V0ZTtkJmFhY3V0ZTtuJmlhY3V0ZTsgc291Ym9yxa8gcHJvIHR1dG8ga2F0ZWdvcmlpKGFkcmVzJmFhY3V0ZTvFmSBidWRlIHYgdXBsb2FkcykuIFBva3VkIGFkcmVzJmFhY3V0ZTvFmSBzdGVqbiZlYWN1dGU7aG8gam0mZWFjdXRlO25hIG5lZXhpc3R1amUgYnVkZSB2eXR2b8WZZW4uJzsKJGxhbmdbJ2luZm9fZGVzdG5hbWUnXSA9ICdQb3XFviZpYWN1dGU7dmVqdGUgJiMwMzk7TmFociZhYWN1dGU7dCBqYWtvJiMwMzk7IGplbm9tIHYgcMWZJmlhY3V0ZTtwYWTEmywgxb5lIGNoY2V0ZSB6bcSbbml0IG4mYWFjdXRlO3pldiBzb3Vib3J1LiBOZWNodGUgcHImYWFjdXRlO3pkbiZlYWN1dGU7IHBva3VkIGNoY2V0ZSBuZWNoYXQgbiZhYWN1dGU7emV2IHNvdWJvcnUsIHRhayBqYWsgamUuJzsKJGxhbmdbJ2Vycm9yX2NhbnRjcmVhdGVkaXJlY3RvcnknXSA9ICdOZW1vaHUgdnl0dm/FmWl0IGFkcmVzJmFhY3V0ZTvFmSc7CiRsYW5nWydlcnJvcl9ub21haWxlcm1vZHVsZSddID0gJ1RoZSBDTVNNYWlsZXIgbW9kdWxlIGNvdWxkIG5vdCBiZSBpbnN0YW50aWF0ZWQnOwokbGFuZ1sndXBsb2FkX25vdGlmaWNhdGlvbiddID0gJ05vdiZ5YWN1dGU7IHNvdWJvciBieWwgbmFociZhYWN1dGU7bic7CiRsYW5nWyd0aXRsZV9lbWFpbF9vbl91cGxvYWQnXSA9ICdPZGVzbGF0IG96biZhYWN1dGU7bWVuJmlhY3V0ZTsgbyBuYWhyJmFhY3V0ZTtuJmlhY3V0ZTsgc291Ym9ydSBuYTonOwokbGFuZ1snZW1haWxfdGVtcGxhdGUnXSA9ICcmU2Nhcm9uO2FibG9uYSBlLW1haWx1JzsKJGxhbmdbJ3RpdGxlX2R1bW15X2luZGV4X2h0bWwnXSA9ICdWeXR2JmFhY3V0ZTvFmWV0IGluZGV4Lmh0bWwgc291Ym9yeSB2IGthxb5kJmVhY3V0ZTttIGFkcmVzJmFhY3V0ZTvFmWk/PGJyLz48ZW0+SmnFviBleGlzdHVqJmlhY3V0ZTtjJmlhY3V0ZTsgaW5kZXguaHRtbCBzb3Vib3J5IGJ1ZG91IHphY2hvdiZhYWN1dGU7bnkuPC9lbT4nOwokbGFuZ1snYWJvdXQnXSA9ICdPIHBvbG/FvmNlJzsKJGxhbmdbJ2Vycm9yX3Blcm1pc3Npb25kZW5pZWQnXSA9ICdQxZkmaWFjdXRlO3N0dXAgemFtJmlhY3V0ZTt0bnV0LiBQcm9zJmlhY3V0ZTttIHprb250cm9sdWp0ZSBWYSZzY2Fyb247ZSBvcHImYWFjdXRlO3ZuxJtuJmlhY3V0ZTsuJzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90d3JpdGUnXSA9ICdOZXBvZGHFmWlsbyBzZSB6YXBzYXQnOwokbGFuZ1snYWRkY2F0ZWdvcnknXSA9ICdQxZlpZGF0IGthdGVnb3JpaSc7CiRsYW5nWydhbGwnXSA9ICdWJnNjYXJvbjtlJzsKJGxhbmdbJ2FyZXlvdXN1cmUnXSA9ICdKc3RlIHNpIGppc3RpPyc7CiRsYW5nWydhdXRob3InXSA9ICdBdXRvcic7CiRsYW5nWydjYW5jZWwnXSA9ICdacnUmc2Nhcm9uO2l0JzsKJGxhbmdbJ2Nhbm5vdG1vZGlmeXBhdGgnXSA9ICcoQ2VzdGEgbmVtxa/FvmUgYiZ5YWN1dGU7dCB1cHJhdmVuYSknOwokbGFuZ1snY2F0ZWdvcmllcyddID0gJ0thdGVnb3JpZSc7CiRsYW5nWydjYXRlZ29yeSddID0gJ0thdGVnb3JpZSc7CiRsYW5nWydtZXNzYWdlX2NhdGVnb3J5YWRkZWQnXSA9ICdLYXRlZ29yaWUgYnlsYSAmdWFjdXRlO3NwxJsmc2Nhcm9uO27EmyBwxZlpZCZhYWN1dGU7bmEnOwokbGFuZ1snY2hhbmdlbG9nJ10gPSAnPHVsPg0KPGxpPg0KPHA+VmVyc2lvbiAxLjAuIC0gU2VwdGVtYmVyIDIwMDUuPC9wPg0KPHA+IEluaXRpYWwgUmVsZWFzZS48L3A+DQo8L2xpPg0KPGxpPg0KPHA+VmVyc2lvbiAxLjAxLiAtIFNlcHRlbWJlciAyMDA1PC9wPg0KPHA+TWlub3IgZml4ZXMuPC9wPjwvbGk+DQo8bGk+DQo8cD5WZXJzaW9uIDEuMDIuIC0gU2VwdGVtYmVyIDIwMDU8L3A+DQo8cD5BZGRlZCBhYmlsaXR5IHRvIHNwZWNpZnkgc29ydCBvcmRlcjwvcD4NCjwvbGk+DQo8bGk+DQo8cD5WZXJzaW9uIDEuMDMuIC0gU2VwdGVtYmVyIDIwMDU8L3A+DQo8cD5GaXggcmVnYXJkaW5nIGNvbmZsaWN0IGluIHRlbXBsYXRlIG5hbWVzPC9wPg0KPC9saT4NCjxsaT4NCjxwPlZlcnNpb24gMS4wNC4gLSBTZXB0ZW1iZXIgMjAwNTwvcD4NCjxwPkFkZGVkIGFiaWxpdHkgdG8gcmUtc2NhbiBhIGRpcmVjdG9yeSwgYW5kIHRvIHVwbG9hZCBmaWxlcyBmcm9tIHRoZSBhZG1pbiBwYWdlPC9wPg0KPC9saT4NCjxsaT4NCjxwPlZlcnNpb24gMS4wNS4gLSBTZXB0ZW1iZXIgMjAwNTwvcD4NCjxwPkZpeGVkIHNvbWUgUEhQIHZhcmlhYmxlIGlzc3VlczwvcD4NCjwvbGk+DQo8bGk+DQo8cD5WZXJzaW9uIDEuMDYuIC0gU2VwdGVtYmVyIDIwMDU8L3A+DQo8cD5BZGRlZCBhdXRob3IgZmllbGQgdG8gdGhlIGFkbWluIHBhbmVsIHVwbG9hZCBmb3JtLCBhZGRlZCBhIHN1bW1hcnkgZmllbGQsIGFuZCBtYWRlIGRlc2NyaXB0aW9uIGEgdGV4dCBhcmVhLCBhbmQgYWxsb3cgdGhlIHVzZXIgdG8gc3BlY2lmeSBhIGRlc3RpbmF0aW9uIGZpbGUgbmFtZTwvcD4NCjwvbGk+DQo8bGk+DQo8cD5WZXJzaW9uIDEuMDcuIC0gU2VwdGVtYmVyIDIwMDU8L3A+DQo8cD5BZGRlZCB0aGUgYWJpbGl0eSB0byByZW5hbWUgZmlsZXMgYW5kIGZpeGVkIGEgc2NhbiBlcnJvcjwvcD4NCjwvbGk+DQo8bGk+DQo8cD5WZXJzaW9uIDEuMDguIC0gU2VwdGVtYmVyIDIwMDU8L3A+DQo8cD5CZXR0ZXIgaGFuZGxpbmcgb2YgbmFtZXMgd2l0aCBzcGFjZXMsIGFuZCBhIGZldyBtaW5vciBlcnJvcnMgZml4ZWQuICBBZGRlZCBzd2VkaXNoIHRyYW5zbGF0aW9uICh0aGFua3Mgd2VzdGlzKTwvcD48L2xpPg0KPGxpPg0KPHA+VmVyc2lvbiAxLjEuMC4gLSBPY3RvYmVyIDIwMDU8L3A+DQogPHVsPg0KICAgPGxpPk1vZGlmaWVkIEF0dGVtcHRVcGxvYWQgZnVuY3Rpb24gc28gaXQgY291bGQgYmUgY2FsbGVkIGV4dGVybmFsbHk8L2xpPg0KICAgPGxpPkFkZGVkIEdldFVwbG9hZERldGFpbHMgZnVuY3Rpb24gdGhhdCByZXR1cm5zIGFsbCBvZiB0aGUgZGV0YWlscyBhYm91dCBhIG1vZHVsZSwgaW5jbHVkaW5nIGEgbGluazwvbGk+DQogICA8bGk+QWRkZWQgUmVkaXJlY3RzIHNvIHRoYXQgd29ya2luZyB3aXRoIHRoZSBtb2R1bGUgaXMgYWxvdCBuaWNlciwgaXQgcmV0dXJucyB0byB0aGUgcmlnaHQgdGFiPC9saT4NCiAgIDxsaT5DaGFuZ2VkIHRoZSBmcm9udCB0ZW1wbGF0ZSB0byBsb29rIGEgbGl0dGxlIGJldHRlciBhbmQgbWFrZSBtb3JlIHNlbnNlPC9saT4NCiAgIDxsaT5GaXhlcyB0byB0aGUgdXBsb2FkcyBzdHVmZiBzbyB0aGF0IHRoZSBkZXNjcmlwdGlvbiBpcyBzZXQsIGFuZCBuYW1lIGFuZCBzdW1tYXJ5IGFyZSBwdXQgaW4gdGhlIHJpZ2h0IHBsYWNlPC9saT4NCiAgIDxsaT5GaXhlcyB0byBldmVuIGJldHRlciBoYW5kbGUgc3BhY2VzIGluIG5hbWVzPC9saT4NCiAgIDxsaT5PcHRpb25hbHkgcGxhY2UgZHVtbXkgaW5kZXguaHRtbCBmaWxlcyBpbiBlYWNoIHVwbG9hZCBkaXJlY3Rvcnk8L2xpPg0KICAgPGxpPklmIHNwZWNpZnlpbmcgYSBkZXN0aW5hdGlvbiBuYW1lLCBhbmQgbm8gZXh0ZW5zaW9uIGlzIGdpdmVuLCB0aGUgZXh0ZW5zaW9uIG9mIHRoZSBvcmlnaW5hdGluZyBmaWxlIChpZiBhbnkgZXhpc3RzIGlzIHVzZWQ8L2xpPg0KIDwvdWw+DQogPHA+PGVtPjxiPkltcG9ydGFudCE8L2I+PC9lbT48YnIvPkl0IGlzIG5vdCBwb3NzaWJsZSB0byB1cGdyYWRlIGZyb20gYW55IG90aGVyIHZlcnNpb24gb2YgdGhlIFVwbG9hZHMgbW9kdWxlIHRvIDEuMS4wLiAgVGhpcyBpcyBkdWUgdG8gc29tZSBlcnJvcnMgdGhhdCB3ZXJlIG1hZGUgaW4gdGhlIGRhdGFiYXNlIHJvdXRpbmVzLCBhbmQgZXZlbiBpbiB0aGUgdXBncmFkZSByb3V0aW5lIGluIDEuMC42LiAgWW91IG11c3QgZGUtaW5zdGFsbCB0aGUgb2xkIHZlcnNpb24sIGFuZCB0aGVuIHJlLWluc3RhbGwgdGhlIG5ldyB2ZXJlc2lvbi4gVGhpcyB3aWxsIGNhdXNlIHNpZ25pZmljYW50IGRpZmZpY3VsdHkgaWYgeW91IGhhdmUgZHNjcmlwdGlvbnMsIGV0YywgaW4geW91ciB0YWJsZXM8L3A+DQo8L2xpPg0KPGxpPg0KPHA+VmVyc2lvbiAxLjEuMS4gLSBPY3RvYmVyLCAyMDA1PC9wPg0KPHA+Rml4ZWQgYSBjb3VwbGUgb2YgbWlub3IgYnVncyBpbiB0aGUgR2V0VXBsb2FkRGV0YWlscyBhbmQgYWRkZWQgYW5vdGhlciBsaW5rIChvciBhIHVybCkgdG8gdGhlIHVwbG9hZGVkIGZpbGUuPC9wPg0KPC9saT4NCjxsaT4NCjxwPlZlcnNpb24gMS4xLjIuIC0gT2N0b2JlciwgMjAwNTwvcD4NCjxwPkZpeGVkIHRoZSBVUkwgZmllbGQgaW4gR2V0VXBsb2FkRGV0YWlscyB0byByZXR1cm4gYSBkb3dubG9hZCBsaW5rIGFuZCBhZGRlZCBhbiBhYnN1cmwgZmllbGQgd2hpY2ggcmV0dXJucyB0aGUgYWJzb2x1dGUgcGF0aCB0byB0aGUgZmlsZSBvbiB0aGUgd2Vic2VydmVyLiAgQ2xpY2tzIG9uIHRoaXMgbGluayB3aWxsIG5vdCBiZSBjb3VudGVkPC9wPg0KPC9saT4NCjxsaT4NCjxwPlZlcnNpb24gMS4xLjMuIC0gT2N0b2JlciwgMjAwNTwvcD4NCjxwPkZpeGVkIHRoZSB1cGdyYWRlIHByb2JsZW0gZnJvbSB0aGUgMS4wLnggc2VyaWVzLiAgVXNlcnMgb2YgdGhlIDEuMC54IHNlcmllcyBzaG91bGQgYmUgYWJsZSB0byB1cGdyYWRlIHRvIDEuMS4zIG5vdyB3aXRoIG5vIGRpZmZpY3VsdHkuIDxiPlRob3NlIGFyZSBmYW1vdXMgbGFzdCB3b3JkcywgcGxlYXNlIGJhY2t1cCBmaXJzdDwvYj4uIEZpeGVkIHRoZSBjb250ZW50IHJlZGlyZWN0IHRoaW5ncyB0aGF0IHdlcmUgaXJyaXRhdGluZyBtZS4gIEFsc28gYWRkZWQgY2F0ZWdvcnk9YWxsIHRvIGxpc3QgYWxsIG9mIHRoZSB1cGxvYWRzIGluIGFsbCBsaXN0YWJsZSBjYXRlZ29yaWVzIDxlbT4obGV0cyBhbGwgaG9wZSBJIGdvdCB0aGUgc3FsIGZpZ3VyZWQgb3V0IHByb3Blcmx5KTwvZW0+LjwvcD4NCjwvbGk+DQo8bGk+DQo8cD5WZXJzaW9uIDEuMS40LiAtIE9jdG9iZXIsIDIwMDU8L3A+DQo8cD5BZGRlZCB0aGUgY291bnQgcGFyYW1ldGVyIHRvIGxpc3Qgb25seSB0aGUgZmlyc3QgTiByZWNvcmRzLCBhbmQgYWRkZWQgJnF1b3Q7c3VtbWFyeWxpbmsmcXVvdDssIGFuZCAmcXVvdDtjYXRlZ29yeSZxdW90OyB0byB0aGUgdGVtcGxhdGVzIGZvciB3ZXN0aXMuICBGb3IgZXhhbXBsZXMgb24gaG93IHRvIHVzZSB0aGVtIHJlc2V0IHlvdXIgdGVtcGxhdGVzIGJhY2sgdG8gZGVmYXVsdC48L3A+PC9saT4NCjxsaT4NCjxwPlZlcnNpb24gMS4xLjUuIC0gTm92ZW1iZXIsIDIwMDU8L3A+DQo8cD5BZGRlZCBlbWFpbCBub3RpZmljYXRpb24gYW5kIHNvbWUgYnVnIGZpeGVzPC9wPg0KPC9saT4NCjxsaT4NCjxwPlZlcnNpb24gMS4xLjYuIC0gTm92ZW1iZXIsIDIwMDU8L3A+DQo8cD5BZGRlZCBhbiBhcGkgZnVuY3Rpb24gYW5kIGZpeGVkIHNvbWUgcmVkaXJlY3Rpb24gc3R1ZmY8L3A+DQo8L2xpPg0KPGxpPg0KPHA+VmVyc2lvbiAxLjEuNy4gLSBOb3ZlbWJlciwgMjAwNTwvcD4NCjxwPk1vcmUgQVBJIGZ1bmN0aW9ucywgYW5kIG5vdyBpZ25vcmUgZG90IGZpbGVzIHdoZW4gc2Nhbm5pbmcuICBFbWFpbCBub3RpZmljYXRpb24gaXMgbm93IGluLjwvcD4NCjwvbGk+DQo8bGk+DQo8cD5WZXJzaW9uIDEuMS44LiAtIEphbnVhcnksIDIwMDY8L3A+DQo8cD4qIEltcHJvdmVkIGRvY3Mgd3J0IGFwYWNoZSBhbmQgcGhwIGNvbmZpZ3MuPC9wPg0KPHA+KiBGaXhlZCBwcm9ibGVtIHdoZXJlIGZpbGVzaXplIHdhcyBzaG93aW5nIHVwIGFzIDAuPC9wPg0KPHA+KiBNb2RpZmllZCBwZXJtaXNzaW9ucyB0byBiZSBtb3JlIGdyYW51bGFyPC9wPg0KPHA+KiBBZGRlZCBzb21lIGNvbW1lbnRzIGFuZCB2ZXJib3NpdHkgdG8gdGhlIGNhdGVnb3J5IGFuZCB1cGxvYWRzIGZvcm1zIGluIHRoZSBhZG1pbiBzZWN0aW9uPC9wPg0KPHA+KiBBZGRlZCAmcXVvdDtyYW5kb20mcXVvdDsgc29ydCBvcmRlcjwvcD4NCjxwPiogU29tZSBQSFA1IGZpeGVzPC9wPg0KPC9saT4NCjxsaT4NCjxwPlZlcnNpb24gMS4xLjkuIC0gSmFudWFyeSwgMjAwNjwvcD4NCjxwPiogQWRkZWQgdGhlIGFiaWxpdHkgdG8gdXBsb2FkIGEgdGh1bWJuYWlsIGltYWdlPC9wPg0KPHA+KiBTb21lIGltcHJvdmVkIGF1ZGl0aW5nPC9wPg0KPHA+KiB4bWwgbm93IGFkZGVkIHRvIHRoZSBkZWZhdWx0IGZpbGUgdHlwZXMgKG5ldyBpbnN0YWxscyBvbmx5KTwvcD4NCjxwPiogQWRkZWQgYSBjb25maXJtYXRpb24gbWVzc2FnZSB0byB0aGUgcmVzZXQgdG8gZGVmYXVsdHMgYnV0dG9ucyBvZiB0aGUgdGVtcGxhdGUgcGFnZXMuPC9wPg0KPHA+KiBBZGRlZCB0aGUgZmlsZV9leHRlbnNpb25zIHBhcmFtZXRlciBmb3IgdGhlIHVwbG9hZCBmb3JtPC9wPg0KPHA+KiBUaGUgY3VycmVudCBjYXRlZ29yeSBzZWxlY3RlZCBpbiB0aGUgZmlsZXMgZmlsdGVyIGlzIHN0aWNreS4NCjxwPiogQWRkZWQgYSBwcmVmZXJlbmNlIHRvIGVuZm9yaWNlIGZpbGVuYW1lIGV4dGVuc2lvbnMgKGRlZmF1bHRzIHRvIG9uKTwvcD4NCjxwPiogQWRkZWQgYSBsaW5rIHRvIHRoZSBlZGl0IHBhZ2UsIGluIHRoZSBuYW1lIGNvbHVtbiBvZiB0aGUgZmlsZXMgbGlzdC48L3A+DQo8cD4qIE1pbm9yIGNoYW5nZXMgdG8gdGhlIGxheW91dCBhbmQgdGV4dCB0byBhZGQgY2xhcml0eS48L3A+DQo8cD4qIEFkZGVkIGRvd25sb2FkX3VybCBhcyBhbiBhdmFpbGFibGUgc21hcnR5IHRhZyBpbiB0aGUgdGVtcGxhdGVzPC9wPg0KPGxpPg0KPHA+VmVyc2lvbiAxLjEuMTAuIC0gRmVicnVhcnksIDIwMDY8L3A+DQo8cD4qIFN1bW1hcnkgbm93IGRlZmF1bHRzIHRvIHRoZSBmaWxlbmFtZSAod2l0aG91dCB0aGUgZXh0ZW5zaW9uKSBpZiBub25lIGlzIHNwZWNpZmllZDwvcD4NCjxwPiogTm93IGNvcnJlY3RseSBoYW5kbGUgaWYgdGhlIHRodW1ibmFpbCBleHRlbnNpb24gaXMgbm90IGluIHRoZSBhY2NlcHRlZCBleHRlbnNpb24gbGlzdDwvcD4NCjxwPiogTm8gbG9uZ2VyIGRpc3BsYXkgYW55IGNvbnRlbnQgaW4gdGhlIGZpbGVzIHRhYiBpZiB0aGVyZSBhcmUgbm8gY2F0ZWdvcmllcyBkZWZpbmVkPC9wPg0KPHA+KiBEaXNwbGF5IGEgbGluayBpbiB0aGUgZXJyb3IgcGFnZSB0aGF0IHRha2VzIHlvdSBiYWNrIHRvIHRoZSBtYWluIGFkbWluIHBhbmVsPC9wPg0KPHA+KiBBbGxvdyBmb3IgcmVwbGFjaW5nIG9mIHVwbG9hZGVkIGZpbGVzPC9wPg0KPC9saT4NCjxsaT4NCjxwPlZlcnNpb24gMS4xLjExLiAtIE1hcmNoLCAyMDA2PC9wPg0KPHA+QWRkZWQgdGhlIGFiaWxpdHkgZm9yIGEgbGluayB0byBhIGRldGFpbGVkIHBhZ2Ugd2hlbiBpbiBzdW1tYXJ5IG1vZGUuPC9wPg0KPHA+U3BsaXQgdGhlIGRlZmF1bHQgYWN0aW9uIGFuZCBkZWZhdWx0YWRtaW4gYWN0aW9ucyBpbnRvIHNlcGFyYXRlIGZpbGVzLCBmb3IgYSBiaXQgb2YgbWVtb3J5IGltcHJvdmVtZW50LCBob3BlZnVsbHk8L3A+DQo8cD5BZGQgdGhlIGFiaWxpdHkgdG8gcmVkaXJlY3QgdG8gYW5vdGhlciBwYWdlIGFmdGVyIGEgZnJvbnRlbmQgdXNlciB1cGxvYWRlZCBhIGZpbGU8L3A+DQo8L2xpPg0KPGxpPg0KPHA+VmVyc2lvbiAxLjEuMTIuIC0gTWFyY2gsIDIwMDY8L3A+DQo8cD5BZGRlZCB0aGUgc2luZ2xlc3VtbWFyeSBtb2RlIHRvIGRpc3BsYXkgYSBzaW5nbGUgdXBsb2FkIGluIHN1bW1hcnkgbW9kZTwvUD4NCjwvbGk+DQo8bGk+DQo8cD5WZXJzaW9uIDEuMS4xMy4gLSBBcHJpbCwgMjAwNjwvcD4NCjxwPkFkZGVkIG9wdGlvbmFsIGZpbHRlcmluZyBvbiB0aGUgZnJvbnRlbmQsIGFuZCBhIGNvdXBsZSBvZiBleHRyYSBwYXJhbWV0ZXJzIHRvIGdvIHdpdGggaXQ8L3A+DQo8cD5GaXhlZCBhIHByb2JsZW0gd2hlcmUgaXQgd291bGQgYWxsb3cgeW91IHRvIGVudGVyIGEgYmxhbmsgcGF0aCB3aGVuIGNyZWF0aW5nIGEgY2F0ZWdvcnk8L3A+DQo8cD5TcGxpdCBzdHVmZiBpbnRvIChzb21lKSBzZXBhcmF0ZSBhY3Rpb24gZmlsZXMgZm9yIHNvbWUgaG9wZWZ1bCBwZXJmb3JtYW5jZSBpbmNyZWFzZXM8L3A+DQo8cD5BZGRlZCBjb3B5cmlnaHQgbm90aWNlczwvcD4NCjxwPkNoYW5nZWQgKG9wdGlvbmFsKSBkZXBlbmRlbmN5IGZyb20gVXNlcklEIHRvIEZyb250RW5kVXNlcnMgTW9kdWxlLjwvcD4NCjwvbGk+DQo8bGk+DQo8cD5WZXJzaW9uIDEuMi4xIC0gQXByaWwsIDIwMDY8L3A+DQo8cD5DaGFuZ2VkIF9zY2FuRGlyZWN0b3J5IHRvIGFuIEFQSSBmdW5jdGlvbiBTY2FuRGlyZWN0b3J5IGFuZCB0aGVuIGFkZGVkIFNtYXJ0U2NhbkRpcmVjdG9yeSB0byBzY2FuIHRoZSBkaXJlY3RvcnkgYmVmb3JlIGRpc3BsYXlpbmcgdGhlIHN1bW1hcnkgb3IgZGV0YWlsIGxpc3RpbmcgdG8gaGFuZGxlIHRoZQ0KY2FzZSB3aGVyZSBzb21lYm9keSB1cGxvYWRlZCBmaWxlcyB2aWEgRlRQIG9yIHNvbWV0aGluZyBhbmQgZGlkIG5vdCBnbyBpbnRvIHRoZSBhZG1pbiBzZWN0aW9uIHRvIHVwZGF0ZSB0aGUgY2F0ZWdvcmllcy48L3A+DQo8cD5Db3JyZWN0aW9uIHRvIGFsbCBkYiBhY2Nlc3Mgc3R1ZmYuIEhvcGVmdWxseSBwcm92aWRlcyBhIHBlcmZvcm1hbmNlIGluY3JlYXNlLjwvcD4NCjxwPkZpeGVzIHRvIHRoZSBhYm91dCBzdHVmZiwgbm93IHVzZSBDcmVhdGVQYXJhbWV0ZXI8L3A+DQo8cD5BZGRlZCB0aGUgdXBsb2FkX3RlbXBsYXRlLCBzdW1tYXJ5X3RlbXBsYXRlLCBhbmQgZGV0YWlsX3RlbXBsYXRlIChvcHRpb25hbCkgcGFyYW1ldGVyPC9wPg0KPHA+QWRkZWQgdGhlIG5vYXV0aG9yIHBhcmFtZXRlciwgYW5kIHRoZSBrZXkgcGFyYW1ldGVyLiAgVGhlIGtleSBwYXJhbWV0ZXIgYWxsb3dzIHRoZSB1cGxvYWRzIG1vZHVsZSB0byBiZSBlbWJlZGRlZCBpbnRvIG90aGVyIG1vZHVsZXM8L3A+DQo8cD5Nb3ZlZCB0byB1bmRlciB0aGUgY29udGVudCBtZW51LCBhbmQgZW50aXRsZWQgJiMwMzk7RmlsZXMgKFVwbG9hZCBNb2R1bGUpJiMwMzk7PC9wPjsNCjwvbGk+DQo8bGk+DQo8cD5WZXJzaW9uIDEuMi4yIC0gSnVuZSwgMjAwNg0KPHA+QWRkZWQgdGhlIGFiaWxpdHkgdG8gaGF2ZSBtdWx0aXBsZSBkYXRhYmFzZSB0ZW1wbGF0ZXMsIGFuZCB0byBzZWxlY3Qgb25lIG9uIHRoZSB0YWcgd2l0aCB0aGUgdGVtcGxhdGUgcGFyYW1ldGVyLjwvcD4NCjxwPkZpeGVkIGFuIGlzc3VlIHdoZXJlIGZpbGVzIHdlcmUgZ2V0dGluZyBjb3JydXB0ZWQgb24gZG93bmxvYWQ8L3A+DQo8L2xpPg0KPGxpPg0KPHA+VmVyc2lvbiAxLjIuMyAtIEp1bmUsIDIwMDYNCjxwPkZpeGVzIHRvIHVzZSBhZG9kYi1saXRlIHByb3BlciwgcmF0aGVyIHRoYW4gdGVkcyBoYWNrPC9wPg0KPHA+RGV0YWlsIGxpbmsgbm93IGRpc3BsYXlzIGlubGluZTwvcD4NCjxwPk90aGVyIG1pbm9yIHR3ZWFrcyB0aGF0IEkgY2FudCByZW1lbWJlcjwvcD4NCjwvbGk+DQo8bGk+VmVyc2lvbiAxLjMuMCAtIFNlcHRlbWJlciwgMjAwNw0KPHA+Rml4ZXMgdG8gdGhlIERUIGZpZWxkIHR5cGU8L3A+DQo8cD5Vc2UgdGhlIEZFVSB1c2VybmFtZSAob3B0aW9uYWxseSkgc28gdGhhdCB3ZSBjYW4gdHJhY2sgd2hlbiBhIGxvZ2dlZCBpbiB1c2VyIHVwbG9hZHMgYSBmaWxlPC9wPg0KPHA+QWRkIGZpbGV0eXBlIGNhcGFiaWxpdGllcyB0byBhc3NvY2lhdGUgYW4gaWNvbiB3aXRoIGEgcGFydGljdWxhciB1cGxvYWQuICBBbHNvIHN1cHBvcnQgYW4gdW5rbm93biBmaWxlIHR5cGUgZm9yIGFueXRoaW5nIHRoYXQgZG9lcyBub3QgbWF0Y2guPC9wPg0KPHA+Q29tcGxldGVseSByZS13b3JrZWQgdGhlIG11bHRpcGxlIGRhdGFiYXNlIHRlbXBsYXRlIHN0dWZmLjwvcD4NCjxwPkFkanVzdG1lbnRzIHRvIHRoZSBkZWZhdWx0IHRlbXBsYXRlczwvcD4NCjxwPkZpeGVzIHRvIHVzaW5nIGNhdGVnb3J5PSZxdW90O2FsbCZxdW90OzwvcD4NCjxwPkdlbmVyYXRlIHRodW1ibmFpbHMgYXV0b21hdGljYWxseSAob3B0aW9uYWxseSkgZm9yIGNlcnRhaW4gZmlsZSB0eXBlcywgb24gdXBsb2FkLCBhbmQgb24gc2Nhbi48L3A+DQo8cD5BZGQgY2FwdGNoYSBzdXBwb3J0IHRvIHRoZSB1cGxvYWQgZm9ybTwvcD4NCjxwPkFkZCBhIHNhZmUgbW9kZSB3YXJuaW5nIGluIHRoZSBhZG1pbiBwYW5lbDwvcD4NCjxwPlVzZXMgY2h1bmtlZCBkb3dubG9hZHMuPC9wPg0KPHA+QWRkcyBwcmVmaXggYW5kIHByZWZpeF9mZXUgY2FwYWJpbGl0eSB0byB1cGxvYWRlZCBmaWxlcy48L3A+DQo8cD5BZGRlZCB0aGUgZGV0YWlscGFnZSBwYXJhbS48L3A+DQo8cD5BZGRlZCB0aGUgYWJpbGl0eSB0byBkaXNwbGF5IGFuIGltYWdlIGluIGZ1bGwgc2l6ZSAob3Igd2hhdGV2ZXIgc2l6ZSB3ZSB3YW50KSwgc28gdGhhdCB0aGUgdXBsb2FkcyBtb2R1bGUgY2FuIGJlIHVzZWQgYXMgYSBnYWxsZXJ5LjwvcD4NCjxwPkFkZGVkIHNlY3VyaXR5ICh2aWEgdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlKSB0byBjYXRlZ29yaWVzPC9wPg0KPHA+QWRkZWQgYSBzZWxlY3QgbW9kZSB0byBnZW5lcmF0ZSBhIHB1bGxkb3duIG9mIGZpbGVzIGluIGEgY2F0ZWdvcnksIGZvciB1c2Ugd2hlbiBhdHRhY2hpbmcgdXBsb2FkcyBtb2R1bGUgdG8gc29tZSBvdGhlciBtb2R1bGUuPC9wPg0KPC9saT4NCjwvdWw+JzsKJGxhbmdbJ2RhdGUnXSA9ICdEYXR1bSc7CiRsYW5nWydkYXRldXBsb2FkZWQnXSA9ICdEYXR1bSBuYWhyJmFhY3V0ZTtuJmlhY3V0ZTsnOwokbGFuZ1snZGVmYXVsdCddID0gJ1YmeWFjdXRlO2Nob3omaWFjdXRlOyc7CiRsYW5nWydkZWxldGUnXSA9ICdTbWF6YXQnOwokbGFuZ1snZGVzY3JpcHRpb24nXSA9ICdQb3Bpcyc7CiRsYW5nWydkZXN0bmFtZSddID0gJ05haHImYWFjdXRlO3QgamFrbyc7CiRsYW5nWydkZXRhaWxfdGVtcGxhdGUnXSA9ICdEZXRhaWwgVGVtcGxhdGUnOwokbGFuZ1snZG93bmxvYWRlZCddID0gJ1NvdWJvciAlcyBieWwgc3Rhxb5lbi4nOwokbGFuZ1snZG93bmxvYWRzJ10gPSAnU3QmYWFjdXRlO2hudXQmaWFjdXRlOyc7CiRsYW5nWydlZGl0J10gPSAnVXByYXZpdCc7CiRsYW5nWydlZGl0Y2F0ZWdvcnknXSA9ICdVcHJhdml0IGthdGVnb3JpaSc7CiRsYW5nWydlZGl0dXBsb2FkJ10gPSAnVXByYXZpdCBVcGxvYWQnOwokbGFuZ1snZXJyb3InXSA9ICdDaHliYSEnOwokbGFuZ1snZXJyb3JfcGF0aGludXNlJ10gPSAnS2F0ZWdvcmllIHBvdcW+JmlhY3V0ZTt2YWomaWFjdXRlO2MmaWFjdXRlOyB0dXRvIGNlc3R1IHXFviBleGlzdHVqZSc7CiRsYW5nWydlcnJvcl9jYXRlZ29yeWV4aXN0cyddID0gJ0NoeWJhOiBLYXRlZ29yaWUgdcW+IGV4aXN0dWplJzsKJGxhbmdbJ2Vycm9yX2NhdGVnb3J5bm90ZW1wdHknXSA9ICdDaHliYSEgTmVtxa/FvnUgc21hemF0IGthdGVnb3JpaSwgcHJvdG/FvmUgbmVuJmlhY3V0ZTsgcHImYWFjdXRlO3pkbiZhYWN1dGU7JzsKJGxhbmdbJ2Vycm9yX2NhdGVnb3J5bm90Zm91bmQnXSA9ICdDaHliYTogS2F0ZWdvcmllIG5lbmFsZXplbmEhJzsKJGxhbmdbJ2Vycm9yX2RiZXJyb3InXSA9ICdDaHliYTogQ2h5YmEgZGF0YWImYWFjdXRlO3plISc7CiRsYW5nWydlcnJvcl9lbXB0eWNhdGVnb3J5J10gPSAnQ2h5YmE6IFByJmFhY3V0ZTt6ZG4mYWFjdXRlOyBrYXRlZ29yaWUhJzsKJGxhbmdbJ2Vycm9yX2VtcHR5cGF0aCddID0gJ0NoeWJhOiBQciZhYWN1dGU7emRuJmFhY3V0ZTsgY2VzdGEhJzsKJGxhbmdbJ2Vycm9yX2ZpbGVleGlzdHMnXSA9ICdDaHliYSEgU291Ym9yICVzIGppxb4gZXhpc3R1amUuJzsKJGxhbmdbJ2Vycm9yX2ZpbGVub3Rmb3VuZCddID0gJ0NoeWJhISBTb3Vib3IgJXMgbmVieWwgbmFsZXplbi4nOwokbGFuZ1snZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJ10gPSAnQ2h5YmE6IE5lZG9zdGF0ZWsgcGFyYW1ldHLFryBwcm8gYsSbaCBtb2R1bHUhJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRhdXRob3InXSA9ICdDaHliYTogJlNjYXJvbjtwYXRuJnlhY3V0ZTsgKG5lYm8gcHImYWFjdXRlO3pkbiZ5YWN1dGU7KSBhdXRvci4nOwokbGFuZ1snZXJyb3JfaW52YWxpZGNhdGVnb3J5J10gPSAnQ2h5YmE6ICZTY2Fyb247cGF0biZhYWN1dGU7IChuZWJvIHByJmFhY3V0ZTt6ZG4mYWFjdXRlOykga2F0ZWdvcmllLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkZGVzY3JpcHRpb24nXSA9ICdDaHliYTogJlNjYXJvbjtwYXRuJnlhY3V0ZTsgKG5lYm8gcHImYWFjdXRlO3pkbiZ5YWN1dGU7KSBwb3Bpcy4nOwokbGFuZ1snZXJyb3JfaW52YWxpZGZpbGUnXSA9ICdDaHliYTogJlNjYXJvbjtwYXRuJmVhY3V0ZTsgKG5lYm8gcHImYWFjdXRlO3pkbiZlYWN1dGU7KSBqbSZlYWN1dGU7bm8gc291Ym9ydS4nOwokbGFuZ1snZXJyb3JfaW52YWxpZHVwbG9hZGZpbGVuYW1lJ10gPSAnQ2h5YmE6IFNvdWJvcnkgcyB0JmlhY3V0ZTttdG8gam0mZWFjdXRlO25lbSAocHJhdmTEm3BvZG9ibsSbIHDFmSZpYWN1dGU7cG9ub3UpIG5lanNvdSBwb3ZvbGVueSAoJXMpLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXBsb2FkaWQnXSA9ICdDaHliYTogJlNjYXJvbjtwYXRuJmVhY3V0ZTsgdXBsb2FkIGlkJzsKJGxhbmdbJ2Vycm9yX25vZmlsZXMnXSA9ICdDaHliYTogTm8gTWF0Y2hpbmcgRmlsZXMhJzsKJGxhbmdbJ2ZpbGVzJ10gPSAnU291Ym9yeSc7CiRsYW5nWydmaXhtZSddID0gJ09wcmF2aXQgbWV6ZXJ5JzsKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ1VwbG9hZCBNb2R1bGUnOwokbGFuZ1snaGVscCddID0gJzxoMz5XaGF0IERvZXMgVGhpcyBEbz88L2gzPg0KPHA+SXQgaXMgYSBtb2R1bGUgZm9yIGFsbG93aW5nIHBlb3BsZSB0byB1cGxvYWQgYW5kIGRvd25sb2FkIGZpbGVzIHRvIGFuZCBmcm9tIHlvdXIgc2l0ZS4gIEl0IGtlZXBzIHRyYWNrIG9mIHdobyB1cGxvYWRlZCBhIGZpbGUsIGFuZCB3aG8gaGFzIGRvd25sb2FkZWQgaXQuICBBcyB3ZWxsLCB5b3UgY2FuIHNvcnQgZmlsZXMgaW50byBjYXRlZ29yaWVzLCBhbmQgbWFuYWdlIHRoZSBmaWxlcyB0aGF0IHdlcmUgdXBsb2FkZWQgbGlrZSBldmVyeSBhZG1pbmlzdHJhdG9yIHdvdWxkIGRvPC9wPiANCjxoMz5Ib3cgRG8gSSBVc2UgSXQ8L2gzPg0KPHA+VG8gdXNlIHRoaXMgbW9kdWxlLCB0byBhbGxvdyB1c2VycyB0byB1cGxvYWQgZmlsZXMgdG8geW91ciBzaXRlLCB5b3Ugc2hvdWxkIGluc3RhbGwgdGhlIG1vZHVsZSwgYW5kIHRoZW4gY3JlYXRlIG9uZSBvciBtb3JlIGNhdGVnb3JpZXMgKGEuay5hKSBkaXJlY3RvcmllcyBmb3IgdGhlIHVwbG9hZGVkIGZpbGVzIHRvIGdvIGludG8uIFRoZW4gYWRkIGEgdGFnIGludG8gYSBwYWdlIG9yIHRlbXBsYXRlIHNvbWV3aGVyZSBsaWtlIHtjbXNfbW9kdWxlIG1vZHVsZT0mcXVvdDtVcGxvYWRzJnF1b3Q7IGNhdGVnb3J5PSZxdW90O3NvbWVjYXRlZ29yeSZxdW90OyBtb2RlPSZxdW90O3NvbWVtb2RlJnF1b3Q7fS4gIFdoZXJlIG1vZGUgbWF0Y2hlcyBvbmUgb2YgdGhlIG1vZGVzIGxpc3RlZCBiZWxvdy4gIFRoZSBvdXRwdXQgd2lsbCBkaWZmZXIgZGVwZW5kaW5nIHVwb24gd2hpY2ggbW9kZSB5b3Ugc2VsZWN0LjwvcD4NCjxwPlRoaXMgbW9kdWxlIGNhbiB1c2UgdGhlIEZyb250ZW5kVXNlcnMgbW9kdWxlIChvcHRpb25hbCkgdG8gZ2V0IGluZm9ybWF0aW9uIGFib3V0IGFueSBjdXJyZW50bHkgbG9nZ2VkIGluIHVzZXJzIHRvIHBhcnRseSBmaWxsIGluIHRoZSBmb3JtIHdoZW4gdXBsb2FkaW5nIGZpbGVzOzwvcD4NCjxoMz5QZXJtaXNzaW9uczwvaDM+DQo8dWw+DQo8bGk+PGVtPk1hbmFnZSBVcGxvYWRzPC9lbT4gcGVybWlzc2lvbiBpcyBuZWVkZWQgdG8gbWFuYWdlIGNhdGVnb3JpZXMsIGFuZCB0aGUgZmlsZXMgd2l0aGluIHRoZW0uPC9saT4NCjxsaT48ZW0+TW9kaWZ5IFRlbXBsYXRlczwvZW0+IHBlcm1pc3Npb24gaXMgbmVlZGVkIGVkaXQgYW55IG9mIHRoZSB0ZW1wbGF0ZXMuPC9saT4NCjxsaT48ZW0+TW9kaWZ5IFNpdGUgUHJlZmVyZW5jZXMvZW0+IHBlcm1pc3Npb24gaXMgbmVlZGVkIGFueSBvZiB0aGUgZmlsZSBzZXR0aW5ncy48L2xpPg0KPC91bD4NCjxoMz5FbWFpbGluZzwvaDM+DQo8cD5UaGlzIG1vZHVsZSBpcyBjYXBhYmxlIG9mIHNlbmRpbmcgYW4gZW1haWwgd2hlbmV2ZXIgYSBmaWxlIGlzIHVwbG9hZGVkLCBzZWUgdGhlIHByZWZlcmVuY2VzIHRhYi4gIEhvd2V2ZXIsIHRvIGRvIHRoaXMgdGhlIDxiPkNNU01haWxlcjwvYj4gcGFja2FnZSBtdXN0IGJlIGluc3RhbGxlZCBhbmQgY29uZmlndXJlZC4gIFRoaXMgaXMgYW4gPGVtPm9wdGlvbmFsPC9lbT4gc3RlcCwgYW5kIGlmIHRoZSBDTVNNYWlsZXIgbW9kdWxlIGlzIG5vdCBpbnN0YWxsZWQsIG5vdGhpbmcgd2lsbCBiZSBkaXNwbGF5ZWQgdG8gdGhlIHVzZXIsIG9ubHkgYSBsb2cgbWVzc2FnZSB3aWxsIGJlIHBsYWNlZCBpbnRvIHRoZSBhZG1pbiBsb2c8L3A+DQo8aDM+U3lzdGVtIFNldHRpbmdzPC9oMz4NCjxwPjxiPk5vdGU6PC9iPiBUaGlzIG1vZHVsZSBkb2VzIG5vdCBieXBhc3Mgb3IgZ2V0IHBhc3QgYW55IGZpbGUgc2l6ZSBsaW1pdGF0aW9ucyBpbiBwaHAuICBJdCB3b3JrcyBpbiBjb25qdW5jdGlvbiB3aXRoIHRoZW0uICBUaGVyZWZvcmUgeW91IG1heSBuZWVkIHRvIG1vZGlmeSB5b3VyIHBocC5pbmkgZmlsZSBhbmQvb3IgeW91ciBodHRwZC5jb25mIGZpbGUocykgdG8gYWxsb3cgeW91IHRvIHVwbG9hZCBmaWxlcyBhcyBsYXJnZSBhcyB3aGF0IHlvdSBoYXZlIHNldCBpbiB0aGUgdXBsb2FkcyBtb2R1bGUgcHJlZmVyZW5jZXMuPC9wPg0KPGgzPkFwYWNoZSBOb3RlczwvaDM+DQo8cD5JbiBvcmRlciB0byBhbGxvdyBsYXJnZSBmaWxlIHVwbG9hZHMsIHlvdSBtYXkgbmVlZCB0byBtb2RpZnkgdGhlIHVwbG9hZF9tYXhfZmlsZXNpemUgcGFyYW1ldGVyIGluIHlvdXIgcGhwLmluaSAgSW4gYWRkaXRpb24sIHRoZSBMaW1pdFJlcXVlc3RCb2R5IHBhcmFtZXRlciBpbiB5b3VyIGFwYWNoZSBjb25maWd1cmF0aW9uLCBtYXkgbmVlZCB0byBiZSBhZGp1c3RlZCB0byBtYXRjaCB0aGUgdXBsb2FkX21heF9maWxlc2l6ZSBwYXJhbWV0ZXI8L3A+DQo8cD5Ob3RlOiAgdGhlIHVwbG9hZF9tYXhfZmlsZXNpemUgcGFyYW1ldGVyIGNhbiBiZSBzcGVjaWZpZWQgaW4gYnl0ZXMsIGtpbG9ieXRlcywgb3IgbWVnYWJ5dGVzLCBob3dldmVyIHRoZSBMaW1pdFJlcXVldEJvZHkgcGFyYW1ldGVyIGlzIG9ubHkgc3BlY2lmaWVkIGluIGJ5dGVzPC9wPg0KJzsKJGxhbmdbJ2lkJ10gPSAnSWQnOwokbGFuZ1snaW5zdGFsbGVkJ10gPSAnTW9kdWwgdmVyemUgJXMgbmFpbnN0YWxvdiZhYWN1dGU7bi4nOwokbGFuZ1snaXBfYWRkcmVzcyddID0gJ0lQIEFkZHJlc2EnOwokbGFuZ1snbW9kZGVzY3JpcHRpb24nXSA9ICdNb2R1bCwga3RlciZ5YWN1dGU7IGRvdm9sdWplIHXFvml2YXRlbMWvbSBuYWhyJmFhY3V0ZTt2YXQgc291Ym9yeS4gQSB2JmFhY3V0ZTttIGplIGRvdm9sdWplIHNwcmF2b3ZhdC4nOwokbGFuZ1snbmFtZSddID0gJ0ptJmVhY3V0ZTtubyc7CiRsYW5nWydyZW5hbWVtZXNzYWdlJ10gPSAnWm3Em8WIdGUgam0mZWFjdXRlO25vIGsgcHJvdmVkZW4maWFjdXRlOyBwxZllam1lbm92JmFhY3V0ZTtuJmlhY3V0ZTsnOwokbGFuZ1sncGF0aCddID0gJ0Nlc3RhJzsKJGxhbmdbJ3BhdGhtZXNzYWdlJ10gPSAnWm3Em8WIdGUgemRlIGptJmVhY3V0ZTtubyBrYXRlZ29yaWUgcHJvIHDFmWVzdW4gc291Ym9ydSBkbyBqaW4mZWFjdXRlO2hvIGFkcmVzJmFhY3V0ZTvFmWUnOwokbGFuZ1sncGF0aGludXBsb2FkcyddID0gJyhSZWxhdGl2biZpYWN1dGU7IGsgdXBsb2FkIGFkcmVzJmFhY3V0ZTvFmWkpJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsJ10gPSAnPHA+VGhlIHVwbG9hZHMgbW9kdWxlIGhhcyBiZWVuIHN1Y2Nlc3NmdWxseSBpbnN0YWxsZWQuIEJlIHN1cmUgdG8gc2V0ICZxdW90O01hbmFnZSBVcGxvYWRzJnF1b3Q7IHBlcm1pc3Npb25zIHRvIHVzZSB0aGlzIG1vZHVsZSE8L3A+DQo8cD48c3Ryb25nPldhcm5pbmc8L3N0cm9uZz4gLSBUaGUgcHJvcGVyIGJlaGF2aW91ciBvZiB0aGlzIG1vZHVsZSBkZXBlbmRzIG9uIG51bWVyb3VzIHBocCBjb25maWd1cmF0aW9uIHZhcmlhYmxlcy4gIFRoZXNlIGluY2x1ZGUgPGVtPihidXQgYXJlIG5vdCBsaW1pdGVkIHRvKTwvZW0+LCBwaHAmIzAzOTtzIG1lbW9yeV9saW1pdCwgc2FmZV9tb2RlLCBmaWxlX3VwbG9hZHMsIHVwbG9hZHNfbWF4X2ZpbGVzaXplLCBhbmQgbWF4X2V4ZWN1dGlvbl90aW1lLiAgVGhlc2UgdmFyaWFibGVzIG1heSBuZWVkIGFkanVzdG1lbnQgZm9yIHRoaXMgbW9kdWxlIHRvIHdvcmsgcHJvcGVybHkgb24geW91ciBzaXRlLiAgSXQgaXMgYWR2aXNlZCB0aGF0IHlvdSB3b3JrIHdpdGggeW91ciBzeXN0ZW0gYWRtaW5pc3RyYXRvciBvciBob3N0IHByb3ZpZGVyIHRvIHR1bmUgdGhlc2Ugc2V0dGluZ3MgZm9yIHlvdXIgcmVxdWlyZW1lbnRzLjwvcD4nOwokbGFuZ1sncG9zdHVuaW5zdGFsbCddID0gJ1VwbG9hZHMgbW9kdWxlIGJ5bCAmdWFjdXRlO3NwxJsmc2Nhcm9uO27EmyBvZHRyYW7Em24uIMW9JmFhY3V0ZTtkbiZlYWN1dGU7IHNvdWJvcnkgbmVieWx5IHNtYXomYWFjdXRlO255JzsKJGxhbmdbJ3ByZWZlcmVuY2VzJ10gPSAnUMWZZWR2b2xieSc7CiRsYW5nWydwcmVmc3VwZGF0ZWQnXSA9ICdQxZllZHZvbGJ5IG1vZHVsdSBieWx5IGFrdHVhbGl6b3YmYWFjdXRlO255JzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeWRlc2MnXSA9ICdQb3Bpcyc7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnlsaXN0YWJsZSddID0gJ1NvdWJvcnkgdiB0b210byBhZHJlcyZhYWN1dGU7xZlpIG1vaG91IGImeWFjdXRlO3QgdXZlZGVueSc7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnluYW1lJ10gPSAnSm0mZWFjdXRlO25vIGthdGVnb3JpZSc7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnlwYXRoJ10gPSAnQ2VzdGEgbmEgc2VydmVydSc7CiRsYW5nWydwcm9tcHRfZGVsZXRlZGlyZWN0b3J5J10gPSAnU21hemF0IGFkcmVzJmFhY3V0ZTvFmSBrYXRlZ29yaWU/JzsKJGxhbmdbJ3Byb21wdF9tYXhfdXBsb2Fkc2l6ZSddID0gJ01heGltJmFhY3V0ZTtsbiZpYWN1dGU7IHBvdm9sZW4mYWFjdXRlOyB2ZWxpa29zdCBzb3Vib3J1IChLYiknOwokbGFuZ1sncHJvbXB0X3ZhbGlkX3VwbG9hZGV4dGVuc2lvbnMnXSA9ICdQb3ZvbGVuJmVhY3V0ZTsgbmFociZhYWN1dGU7dmFuJmVhY3V0ZTsgcMWZaXBvbnknOwokbGFuZ1snc2NhbiddID0gJ1Byb2hsZWRhdCc7CiRsYW5nWydzZWxlY3RjYXRlZ29yeSddID0gJ1Z5YnJhdCBrYXRlZ29yaWknOwokbGFuZ1snc2l6ZSddID0gJ1ZlbGlrb3N0JzsKJGxhbmdbJ3NpemVrYiddID0gJ1ZlbGlrb3N0IChLYiknOwokbGFuZ1snc3VibWl0J10gPSAnT2Rlc2xhdCc7CiRsYW5nWydzdW1tYXJ5X3RlbXBsYXRlJ10gPSAnJlNjYXJvbjthYmxvbmEgc2hybnV0JmlhY3V0ZTsnOwokbGFuZ1snc3VtbWFyeSddID0gJ1Nocm51dCZpYWN1dGU7JzsKJGxhbmdbJ3RpdGxlX2FkbWluX3BhbmVsJ10gPSAnVXBsb2FkcyBNb2R1bGUnOwokbGFuZ1sndGl0bGVfbW9kX2FkbWluJ10gPSAnTW9kdWxlIEFkbWluIFBhbmVsJzsKJGxhbmdbJ3RpdGxlX21vZF9wcmVmcyddID0gJ1DFmWVkdm9sYnkgbW9kdWx1JzsKJGxhbmdbJ3RpdGxlX3NpbmdfbG91ZGx5J10gPSAnU2luZyBMb3VkbHk/JzsKJGxhbmdbJ3RpdGxlX3N1Ym5ldF9leGNsdXNpb25zJ10gPSAnVnluZWNoYXQgc3VicyZpYWN1dGU7dMSbIHplIHN0YXRpc3Rpa3knOwokbGFuZ1sndGl0bGVfdmFsaWRfdXBsb2FkZXh0ZW5zaW9ucyddID0gJ1Bvdm9sZW4mZWFjdXRlOyBwxZkmaWFjdXRlO3BvbnknOwokbGFuZ1sndW5pbnN0YWxsZWQnXSA9ICdNb2R1bCBvZGluc3RhbG92JmFhY3V0ZTtuLic7CiRsYW5nWyd1cGdyYWRlZCddID0gJ01vZHVsIHVwZ3JhZG92JmFhY3V0ZTtuIG5hIHZlcnppICVzLic7CiRsYW5nWyd1cGxvYWQnXSA9ICdOYWhyJmFhY3V0ZTt0JzsKJGxhbmdbJ3VwbG9hZGVkJ10gPSAnU291Ym9yICVzIGJ5bCBuYWhyJmFhY3V0ZTtuICVzLic7CiRsYW5nWydyZXBsYWNlZCddID0gJ1NvdWJvciAlcyBieWwgbmFocmF6ZW4gJXMuJzsKJGxhbmdbJ2RlbGV0ZWQnXSA9ICdTb3Vicm8gJXMgYnlsIHNtYXomYWFjdXRlO24uJzsKJGxhbmdbJ3VwbG9hZGZvcm1fdGVtcGxhdGUnXSA9ICdVcGxvYWQgVGVtcGxhdGUnOwokbGFuZ1sndXNlcm5hbWUnXSA9ICdVxb5pdmF0ZWxzayZlYWN1dGU7IGptJmVhY3V0ZTtubyc7CiRsYW5nWyd3YXJuaW5nX2RlbGV0ZWNhdGVnb3J5J10gPSAnVkFST1YmQWFjdXRlO04mSWFjdXRlOzogT3BhdHJuxJsgcMWZaSBtYXomYWFjdXRlO24maWFjdXRlOyBrYXRlZ29yaSZpYWN1dGU7LiBTb3Vib3J5IG1vaG91IGImeWFjdXRlO3Qgc3RyYWNlbnknOwokbGFuZ1snd2VsY29tZV90ZXh0J10gPSAnPHA+V2VsY29tZSB0byB0aGUgVXBsb2FkcyBNb2R1bGUgYWRtaW4gc2VjdGlvbi4gU29tZXRoaW5nIGVsc2Ugd291bGQgcHJvYmFibHkgZ28gaGVyZSBpZiB0aGUgbW9kdWxlIGFjdHVhbGx5IGRpZCBzb21ldGhpbmcuPC9wPic7CiRsYW5nWyd1dG1hJ10gPSAnMTU2ODYxMzUzLjIyMTc4OTY4NTI2NDYzMjM1MDAuMTIxNzE5MDEzOC4xMjE4OTYzNTk2LjEyMTg5NzYyNjcuMTMnOwokbGFuZ1sndXRteiddID0gJzE1Njg2MTM1My4xMjE4OTYzNTk2LjEyLjUudXRtY2NuPShyZWZlcnJhbCl8dXRtY3NyPWRldi5jbXNtYWRlc2ltcGxlLm9yZ3x1dG1jY3Q9L3x1dG1jbWQ9cmVmZXJyYWwnOwokbGFuZ1sndXRtYyddID0gJzE1Njg2MTM1Myc7CiRsYW5nWyd1dG1iJ10gPSAnMTU2ODYxMzUzJzsKPz4=]]></data>
	</file>
	<file>
	  <filename>/lang/ext/de_DE.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2ZpcnN0cGFnZSddID0gJ0Vyc3RlIFNlaXRlJzsKJGxhbmdbJ3ByZXZwYWdlJ10gPSAnVm9yaGVyaWdlIFNlaXRlJzsKJGxhbmdbJ25leHRwYWdlJ10gPSAnTiZhdW1sO2Noc3RlIFNlaXRlJzsKJGxhbmdbJ2xhc3RwYWdlJ10gPSAnTGV0enRlIFNlaXRlJzsKJGxhbmdbJ2ZpcnN0cGFnZV9hcnJvdyddID0gJzw8JzsKJGxhbmdbJ3ByZXZwYWdlX2Fycm93J10gPSAnPCc7CiRsYW5nWyduZXh0cGFnZV9hcnJvdyddID0gJz4nOwokbGFuZ1snbGFzdHBhZ2VfYXJyb3cnXSA9ICc+Pic7CiRsYW5nWydwYWdlJ10gPSAnU2VpdGUnOwokbGFuZ1snb2YnXSA9ICd2b24nOwokbGFuZ1sncHJvbXB0X2dyb3VwbGlzdCddID0gJ0F1dG9yaXNpZXJ0ZSBGRVUtR3J1cHBlbic7CiRsYW5nWydpbmZvX2dyb3VwbGlzdCddID0gJ1cmYXVtbDtobGVuIFNpZSBkaWUgR3J1cHBlbiBkZXMgRnJvbnRlbmRVc2Vycy1Nb2R1bHMsIGRpZSBadWdyaWZmIGF1ZiBkaWVzZSBLYXRlZ29yaWUgaGFiZW4gc29sbGVuLiBXZW5uIFNpZSBhbGxlIEVpbnRyJmF1bWw7Z2UgYWJ3JmF1bWw7aGxlbiwgZXJsYXViZW4gU2llIGFsbGVuIGRlbiBadWdyaWZmLic7CiRsYW5nWyd0aXRsZV9zY2FuJ10gPSAnRGllc2UgS2F0ZWdvcmllIGF1ZiBuZXVlIERhdGVpZW4gcHImdXVtbDtmZW4nOwokbGFuZ1sndGl0bGVfY3JlYXRlX3RodW1ibmFpbHMnXSA9ICdGZWhsZW5kZSBWb3JzY2hhdWJpbGRlciBmJnV1bWw7ciBkaWUgRGF0ZWllbiBkaWVzZXIgS2F0ZWdvcmllJzsKJGxhbmdbJ2NyZWF0ZV90aHVtYm5haWxzJ10gPSAnVm9yc2NoYXViaWxkZXIgZXJ6ZXVnZW4nOwokbGFuZ1sndGl0bGVfY3JlYXRlX3RodW1ibmFpbCddID0gJ0VpbiBWb3JzY2hhdWJpbGQgZiZ1dW1sO3IgZGllc2UgRGF0ZWkgZXJ6ZXVnZW4nOwokbGFuZ1snY3JlYXRlX3RodW1ibmFpbCddID0gJ0VpbiBWb3JzY2hhdWJpbGQgZXJ6ZXVnZW4nOwokbGFuZ1snZXJyb3JfcGF0aGVycm9yJ10gPSAnS29ubnRlIGRhcyBWZXJ6ZWljaG5pcyBuaWNodCAmb3VtbDtmZm5lbiAoQmVyZWNodGlndW5ncy1Qcm9ibGVtPyknOwokbGFuZ1sndGl0bGVfZG93bmxvYWRfY2h1bmtzaXplJ10gPSAnR3Imb3VtbDsmc3psaWc7ZSBkZXMgRG93bmxvYWRzJzsKJGxhbmdbJ2luZm9fZG93bmxvYWRfY2h1bmtzaXplJ10gPSAnRGllIFZlcndlbmR1bmcgZGllc2VzIFBhcmFtZXRlcnMgaGF0IEF1c3dpcmt1bmdlbiBhdWYgZGllIEdlc2Nod2luZGlna2VpdCBiZWltIEhlcnVudGVybGFkZW4gdW5kIGthbm4gaGVsZmVuLCB3ZW5uIG51ciB3ZW5pZyBTcGVpY2hlciB6dXIgVmVyZiZ1dW1sO2d1bmcgc3RlaHQuJzsKJGxhbmdbJ3dhcm5pbmdfc2FmZV9tb2RlJ10gPSAnRGVyIFBIUC1TYWZlLU1vZHVzIGlzdCBha3RpdmllcnQuIEF1ZmdydW5kIGRlc3NlbiBrYW5uIGVzIGJlaW0gSG9jaGxhZGVuIHZvbiBEYXRlaWVuIHp1IFByb2JsZW1lbiBrb21tZW4gKEJlcmVjaHRpZ3VuZ2VuKS4gQXUmc3psaWc7ZXJkZW0ga2FubiBlcyBtaXQgZGVyIEYmYXVtbDtoaWdrZWl0IGRlcyBNb2R1bHMsIGVpbmlnZSBFaW5zdGVsbHVuZ2VuIGluIGRlciBpbmktRGF0ZWkgJnV1bWw7YmVyc2NocmVpYmVuIHp1IGsmb3VtbDtubmVuLCB6dSB1bmVydyZ1dW1sO25zY2h0ZW4gJlV1bWw7YmVyc2NobmVpZHVuZ2VuIGtvbW1lbi4gU2llIHNvbGx0ZW4gc2ljaCBkYWhlciBtaXQgSWhyZW0gUHJvdmlkZXIgaW4gVmVyYmluZHVuZyBzZXR6ZW4sIG9iIGVyIGRlbiBTYWZlLU1vZHVzIGRlYWt0aXZpZXJlbiBrYW5uLic7CiRsYW5nWydwYXJhbV9kZXRhaWxwYWdlJ10gPSAnRGllcyBpc3QgaW5zYmVzb25kZXJlIGRhbm4gbiZ1dW1sO3R6bGljaCwgd2VubiBkaWUgRGV0YWlscyBtaXQgZWluZW0gYW5kZXJlbiBTZWl0ZW4tVGVtcGxhdGUgYW5nZXplaWd0IHdlcmRlbiBzb2xsZW4uIERpZXNlciBQYXJhbWV0ZXIgYmVuJm91bWw7dGlndCBlbnR3ZWRlciBkaWUgSUQgb2RlciBkZW4gQWxpYXMgZGVyIFNlaXRlLCBkaWUgenVyIEFuemVpZ2UgZGVyIERldGFpbHMgdmVyd2VuZGV0IHdlcmRlbiBzb2xsLic7CiRsYW5nWydwYXJhbV9wcmVmaXgnXSA9ICdFaW4gYm9vbHNjaGVyIFdlcnQsIGRlciBhbnplaWd0LCBtaXQgd2VsY2hlbSBQcmVmaXggZGllIERhdGVpZW4gZ2VrZW5uemVpY2huZXQgd2VyZGVuIHNvbGxlbic7CiRsYW5nWydwYXJhbV9wcmVmaXhfZmV1J10gPSAnRWluIGJvb2xzY2hlciBXZXJ0LCBkZXIgYW56ZWlndCwgbWl0IHdlbGNoZW0gUHJlZml4IGRpZSBEYXRlaWVuIGRlcyBha3R1ZWxsZW4gQXV0b3JzIGdla2VubnplaWNobmV0IHdlcmRlbiBzb2xsZW4uIE9obmUgVm9yZ2FiZSB3aXJkIGRpZSBha3R1ZWxsZSBaZWl0IGFscyBQcmVmaXggdmVyd2VuZGV0IChpbSBkZWNoZXgtRm9ybWF0KSc7CiRsYW5nWydwYXJhbV9ub2NhcHRjaGEnXSA9ICdDYXB0Y2hhLVN1cHBvcnQgKHN0YW5kYXJkbWEmc3psaWc7aWcgYWt0aXZpZXJ0KSBiZWltIEhvY2hsYWRlbiBkZWFrdGl2aWVyZW4nOwokbGFuZ1sndGl0bGVfdXBsb2FkZm9ybV90ZW1wbGF0ZSddID0gJ1RlbXBsYXRlIGYmdXVtbDtyIGRhcyBGb3JtdWxhciB6dW0gSG9jaGxhZGVuIHZvbiBEYXRlaWVuIGJlYXJiZWl0ZW4nOwokbGFuZ1snY2FwdGNoYV90aXRsZSddID0gJ0JpdHRlIGdlYmVuIFNpZSBkZW4gVGV4dCBlaW4sIGRlciBpbiBkaWVzZW0gQmlsZCBhbmdlemVpZ3Qgd2lyZCc7CiRsYW5nWydlcnJvcl9jYXB0Y2hhbWlzbWF0Y2gnXSA9ICdEZXIgVGV4dCwgZGVuIFNpZSBlaW5nZWdlYmVuIGhhYmVuLCBlbnRzcHJpY2h0IG5pY2h0IGRlbSBhbmdlemVpZ3RlbiBCaWxkJzsKJGxhbmdbJ3RpdGxlX2F1dG90aHVtYm5haWxfZXh0ZW5zaW9ucyddID0gJ0YmdXVtbDtyIERhdGVpZW4gbWl0IGRpZXNlciBOYW1lbnNlcndlaXRlcnVuZyBWb3JzY2hhdWJpbGRlciBlcnpldWdlbic7CiRsYW5nWyd0aXRsZV9hdXRvdGh1bWJuYWlsX3NpemUnXSA9ICdNYXhpbWFsZSBHciZvdW1sOyZzemxpZztlIGYmdXVtbDtyIGRpZSBlcnpldWd0ZW4gVm9yc2NoYXViaWxkZXIgKGluIFBpeGVsKSc7CiRsYW5nWydwcm9tcHRfdXBsb2FkX2ljb24nXSA9ICdFaW4gSWNvbiBob2NobGFkZW4nOwokbGFuZ1snaW5mb19zeXNkZWZhdWx0J10gPSAnRGllc2VyIFRleHQgd2lyZCB2ZXJ3ZW5kZXQsIHdlbm4gZWluIG5ldWVzIFRlbXBsYXRlIGRpZXNlcyBUeXBzIGVyc3RlbGx0IHdpcmQnOwokbGFuZ1sndGl0bGVfZGV0YWlscnB0X3N5c2RlZmF1bHQnXSA9ICdUZW1wbGF0ZSBmJnV1bWw7ciBkZW4gZGV0YWlsaWVydGVuIEJlcmljaHQgKE1vZHVsc3RhbmRhcmQpJzsKJGxhbmdbJ3RpdGxlX3N1bW1hcnlycHRfc3lzZGVmYXVsdCddID0gJ1RlbXBsYXRlIGYmdXVtbDtyIGRlbiBLdXJ6YmVyaWNodCAoTW9kdWxzdGFuZGFyZCknOwokbGFuZ1sndGl0bGVfdXBsb2FkZm9ybV9zeXNkZWZhdWx0J10gPSAnVGVtcGxhdGUgZiZ1dW1sO3IgZGFzIEhvY2hsYWRlbiB2b24gRGF0ZWllbiAoTW9kdWxzdGFuZGFyZCknOwokbGFuZ1sndGVtcGxhdGUnXSA9ICdUZW1wbGF0ZSc7CiRsYW5nWydyZXNldHRvZGVmYXVsdCddID0gJ0F1ZiBkZW4gTW9kdWxzdGFuZGFyZCB6dXImdXVtbDtja3NldHplbic7CiRsYW5nWyd0aXRsZV9zdW1tYXJ5cnB0X3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUgZiZ1dW1sO3IgZGVuIEt1cnpiZXJpY2h0JzsKJGxhbmdbJ3RpdGxlX2RldGFpbHJwdF90ZW1wbGF0ZSddID0gJ1RlbXBsYXRlIGYmdXVtbDtyIGRlbiBkZXRhaWxpZXJ0ZW4gQmVyaWNodCc7CiRsYW5nWydwcm9tcHRfbmFtZSddID0gJ05hbWUnOwokbGFuZ1sncHJvbXB0X2RlZmF1bHQnXSA9ICdTdGFuZGFyZCc7CiRsYW5nWydsZWdlbmRfdXBsb2FkZm9ybSddID0gJ0VpbmUgRGF0ZWkgaG9jaGxhZGVuJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdwYXJhbSddID0gJ0VzIGZlaGx0IGVpbiBlcmZvcmRlcmxpY2hlciBQYXJhbWV0ZXInOwokbGFuZ1snZXJyb3JfbWlzc2luZ25hbWUnXSA9ICdGJnV1bWw7ciBkZW4gRGF0ZWl0eXBlbiBtdXNzIGVpbiBOYW1lIGZlc3RnZWxlZ3Qgd2VyZGVuJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdleHRlbnNpb25zJ10gPSAnRXMgbXVzcyBtaW5kZXN0ZW5zIGVpbmUgRGF0ZWluYW1lbnNlcndlaXRlcnVuZyBmZXN0Z2VsZWd0IHdlcmRlbic7CiRsYW5nWydlcnJvcl9taXNzaW5naWNvbiddID0gJ0RhZiZ1dW1sO3IgbXVzcyBlaW4gSWNvbiBmZXN0Z2VsZWd0IHdlcmRlbic7CiRsYW5nWydlcnJvcl9ub3N1Y2hyb3cnXSA9ICdEaWUgZmVzdGdlbGVndGUgWmVpbGUga29ubnRlIG5pY2h0IGdlZnVuZGVuIHdlcmRlbic7CiRsYW5nWyduYW1lX3Vua25vd24nXSA9ICdVbmJla2FubnQnOwokbGFuZ1snZGVzY3JpcHRpb25fdW5rbm93biddID0gJ0Jlc2NocmVpYnVuZyBkZXIgRGF0ZWl0eXBlbiBmJnV1bWw7ciBuaWNodCAmdXVtbDtiZXJlaW5zdGltbWVuZGUgRGF0ZWllbic7CiRsYW5nWydpbWFnZSddID0gJ0JpbGQnOwokbGFuZ1snaWNvbiddID0gJ0ljb24nOwokbGFuZ1snZXh0ZW5zaW9ucyddID0gJ0RhdGVpbmFtZW5zZXJ3ZWl0ZXJ1bmdlbic7CiRsYW5nWydhZGRmaWxldHlwZSddID0gJ0VpbmVuIG5ldWVuIERhdGVpdHlwZW4gaGluenVmJnV1bWw7Z2VuJzsKJGxhbmdbJ2ZpbGVfdHlwZXMnXSA9ICdEYXRlaXR5cGVuJzsKJGxhbmdbJ2Vycm9yX25vY2F0ZWdvcnlpZCddID0gJ0VzIHd1cmRlIGtlaW5lIEthdGVnb3JpZS1JRCBlaW5nZWdlYmVuJzsKJGxhbmdbJ2Vycm9yX25vY2F0ZWdvcnknXSA9ICdFcyB3dXJkZSBrZWluZSBLYXRlZ29yaWUtSUQgZWluZ2VnZWJlbic7CiRsYW5nWydlcnJvcl90ZW1wbGF0ZW5hbWVleGlzdHMnXSA9ICdFcyBleGlzdGllcnQgYmVyZWl0cyBlaW4gVGVtcGxhdGUgbWl0IGRpZXNlbSBOYW1lbi4nOwokbGFuZ1sncHJvbXB0X3RlbXBsYXRlbmFtZSddID0gJ1RlbXBsYXRlLU5hbWUnOwokbGFuZ1sncHJvbXB0X3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUnOwokbGFuZ1sncHJvbXB0X25ld3RlbXBsYXRlJ10gPSAnRWluIG5ldWVzIFRlbXBsYXRlIGVyc3RlbGxlbic7CiRsYW5nWydoZWxwX09uRG93bmxvYWQnXSA9ICc8cD5FaW4gRXJlaWduaXMsIHdlbm4gZWluIFVzZXIgZWluZSBEYXRlaSBoZXJ1bnRlcmdlbGFkZW4gaGF0PC9wPg0KPGg0PlBhcmFtZXRlcjwvaDQ+DQo8dWw+DQo8bGk+PGVtPmlkPC9lbT4gLSBJRCBkZXIgaG9jaGdlbGFkZW5lbiBEYXRlaTwvbGk+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIERhdGVpbmFtZTwvbGk+DQo8bGk+PGVtPmlwPC9lbT4gLSBJUC1BZHJlc3NlIGRlcyBoZXJ1bnRlcmxhZGVuZGVuIFVzZXJzPC9saT4NCjwvdWw+DQonOwokbGFuZ1snaGVscF9PbkRlbGV0ZUNhdGVnb3J5J10gPSAnPHA+RWluIEVyZWlnbmlzLCB3ZW5uIGVpbmUgS2F0ZWdvcmllIGdlbCZvdW1sO3NjaHQgd3VyZGU8L3A+DQo8aDQ+UGFyYW1ldGVyPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gTmFtZSBkZXIgS2F0ZWdvcmllPC9saT4NCjxsaT48ZW0+cGF0aDwvZW0+IC0gUGZhZCBkZXIgS2F0ZWdvcmllPC9saT4NCjwvdWw+DQonOwokbGFuZ1snaGVscF9PbkNyZWF0ZUNhdGVnb3J5J10gPSAnPHA+RWluIEVyZWlnbmlzLCB3ZW5uIGVpbmUgS2F0ZWdvcmllIGVyc3RlbGx0IHd1cmRlPC9wPg0KPGg0PlBhcmFtZXRlcjwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIE5hbWUgZGVyIEthdGVnb3JpZTwvbGk+DQo8bGk+PGVtPmRlc2NyaXB0aW9uPC9lbT4gLSBCZXNjaHJlaWJ1bmcgZGVyIEthdGVnb3JpZTwvbGk+DQo8bGk+PGVtPnBhdGg8L2VtPiAtIEthdGVnb3JpZXBmYWQ8L2xpPg0KPGxpPjxlbT5wYXRoPC9lbT4gLSBFaW4gRmxhZywgZGVyIGFuemVpZ3QsIG9iIGRpZSBLYXRlZ29yaWUgZ2VsaXN0ZXQgd2VyZGVuIHNvbGw8L2xpPg0KPC91bD4NCic7CiRsYW5nWydoZWxwX09uUmVtb3ZlJ10gPSAnPHA+RWluIEVyZWlnbmlzLCB3ZW5uIGVpbmUgRGF0ZWkgJnV1bWw7YmVyIGRpZSBBZG1pbmlzdHJhdGlvbiBvZGVyIGRhcyBGcm9udGVuZCBlbnRmZXJudCB3dXJkZTwvcD4NCjxoND5QYXJhbWV0ZXI8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBOYW1lIGRlciBlbnRmZXJudGVuIERhdGVpPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIElEIGRlciBlbnRmZXJudGVuIERhdGVpPC9saT4NCjxsaT48ZW0+Y2F0ZWdvcnlfaWQ8L2VtPiAtIElEIGRlciBLYXRlZ29yaWU8L2xpPg0KPC91bD4NCic7CiRsYW5nWydoZWxwX09uVXBsb2FkJ10gPSAnPHA+RWluIEVyZWlnbmlzLCB3ZW5uIGVpbmUgRGF0ZWkgJnV1bWw7YmVyIGRpZSBBZG1pbmlzdHJhdGlvbiBvZGVyIGRhcyBGcm9udGVuZCBob2NoZ2VsYWRlbiB3dXJkZTwvcD4NCjxoND5QYXJhbWV0ZXI8L2g0Pg0KPHVsPg0KPGxpPjxlbT5jYXRlZ29yeTwvZW0+IC0gTmFtZSBkZXIgS2F0ZWdvcmllPC9saT4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gTmFtZSBkZXIgaG9jaGdlbGFkZW5lbiBEYXRlaTwvbGk+DQo8bGk+PGVtPnNpemU8L2VtPiAtIEdyJm91bWw7JnN6bGlnO2UgZGVyIGhvY2hnZWxhZGVuZW4gRGF0ZWk8L2xpPg0KPGxpPjxlbT5zdW1tYXJ5PC9lbT4gLSBLdXJ6YmVzY2hyZWlidW5nIGRlciBob2NoZ2VsYWRlbmVuIERhdGVpIChrYW5uIGxlZXIgc2Vpbik8L2VtPjwvbGk+DQo8bGk+PGVtPmRlc2NyaXB0aW9uPC9lbT4gLSBkaWUgbGFuZ2UgQmVzY2hyZWlidW5nIGRlciBob2NoZ2VsYWRlbmVuIERhdGVpIChrYW5uIGxlZXIgc2Vpbik8L2VtPjwvbGk+DQo8bGk+PGVtPmF1dGhvcjwvZW0+IC0gQXV0b3IgZGVyIGhvY2hnZWxhZGVuZW4gRGF0ZWkgKGZhbGxzIHZlcmYmdXVtbDtnYmFyKTwvZW0+PC9saT4NCjxsaT48ZW0+aXBfYWRkcmVzczwvZW0+IC0gSW50ZXJuZXQtQWRyZXNzZSBkZXMgQ2xpZW50cywgZGVyIGRpZSBEYXRlaSBob2NoZ2VsYWRlbiBoYXQ8L2xpPg0KPC91bD4nOwokbGFuZ1snaW5mb19ldmVudF9vbmRlbGV0ZWNhdGVnb3J5J10gPSAnRXJlaWduaXMsIHdlbm4gZWluZSBLYXRlZ29yaWUgZ2VsJm91bWw7c2NodCB3dXJkZSc7CiRsYW5nWydpbmZvX2V2ZW50X29uY3JlYXRlY2F0ZWdvcnknXSA9ICdFcmVpZ25pcywgd2VubiBlaW5lIEthdGVnb3JpZSBlcnN0ZWxsdCB3dXJkZSc7CiRsYW5nWydpbmZvX2V2ZW50X29uZG93bmxvYWQnXSA9ICdFcmVpZ25pcywgd2VubiBlaW5lIERhdGVpIGhlcnVudGVyIGdlbGFkZW4gd3VyZGUnOwokbGFuZ1snaW5mb19ldmVudF9vbnVwbG9hZCddID0gJ0VyZWlnbmlzLCB3ZW5uIGVpbmUgbmV1ZSBEYXRlaSBob2NoZ2VsYWRlbiB3dXJkZSc7CiRsYW5nWydpbmZvX2V2ZW50X29ucmVtb3ZlJ10gPSAnRXJlaWduaXMsIHdlbm4gZWluZSBEYXRlaSBlbnRmZXJudCB3dXJkZSc7CiRsYW5nWyd0aXRsZV91c2VydGFnX29udXBsb2FkJ10gPSAnQmVudXR6ZXJkZWZpbmllcnRlciBUYWcsIGRlciBhdWZnZXJ1ZmVuIHdpcmQsIHdlbm4gZGllIERhdGVpIHZvbGxzdCZhdW1sO25kaWcgaG9jaGdlbGFkZW4gaXN0JzsKJGxhbmdbJ25vbmUnXSA9ICdOaWNodHMnOwokbGFuZ1snbWF0Y2hlc2ZvdW5kJ10gPSAnJlV1bWw7YmVyZWluc3RpbW11bmdlbiBnZWZ1bmRlbic7CiRsYW5nWydmaWx0ZXInXSA9ICdGaWx0ZXInOwokbGFuZ1sndGl0bGVfcmVkaXJlY3RvbnVwbG9hZCddID0gJ0RlbiBCZW51dHplciBuYWNoIGRlbSBIb2NobGFkZW4gZWluZXIgRGF0ZWkgYXVmIGRpZXNlIFNlaXRlIHdlaXRlcmxlaXRlbiAoSUQvQWxpYXMpJzsKJGxhbmdbJ2RldGFpbHMnXSA9ICdEZXRhaWxzJzsKJGxhbmdbJ2NvbmZpcm1fcHJlZmVyZW5jZXMnXSA9ICdXb2xsZW4gU2llIHdpcmtsaWNoIGRpZSBFaW5zdGVsbHVuZ2VuICZhdW1sO25kZXJuPyc7CiRsYW5nWydlcnJvcl9ub2ZpbGVzdXBsb2FkZWQnXSA9ICdFcyB3dXJkZW4ga2VpbmUgRGF0ZWllbiBob2NoZ2VsYWRlbi4nOwokbGFuZ1sncHJvbXB0X3JlcGxhY2UnXSA9ICcmVXVtbDtiZXJzY2hyZWliZW4gZXJsYXViZW4nOwokbGFuZ1snaW5mb19yZXBsYWNlJ10gPSAnRXJzZXR6dCBlaW5lIERhdGVpIG1pdCBkZW0gZ2xlaWNoZW4gTmFtZW4gKG9obmUgJkF1bWw7bmRlcnVuZyBkZXIgSUQpJzsKJGxhbmdbJ3BhcmFtX25vX2luaXRpYWwnXSA9ICdLZWluZSBlaW5sZWl0ZW5kZW4gRXJnZWJuaXNzZSBhbnplaWdlbiwgd2VubiBkZXIgRmlsdGVyIGFrdGl2aWVydCBpc3QnOwokbGFuZ1sncGFyYW1fa2V5J10gPSAnRWluIHp1cyZhdW1sO3R6bGljaGVyIFNjaGwmdXVtbDtzc2VsIGYmdXVtbDtyIGRpZSBrJnV1bWw7bmZ0aWdlIFZlcndhbHR1bmcgdm9uIGhvY2hnZWxhZGVuZW4gRGF0ZWllbi4gRGllc2VyIFNjaGwmdXVtbDtzc2VsIGthbm4gZWluIGVuY29kaWVydGVyIFN0cmluZyB3aWUgZXR3YTogJiMwMzk7ZmV1c2Vyczp1aWQmIzAzOTsgb2RlciAmYXVtbDtobmxpY2ggc2VpbiBrYW5uLiAgRGllc2VyIFBhcmFtZXRlciB3aXJkIG51ciBiZW4mb3VtbDt0aWd0LCB3ZW5uIGRhcyBVcGxvYWRzLU1vZHVsIGluIGVpbmVtIGFuZGVyZW4gTW9kdWwgZWluZ2ViZXR0ZXQgd2lyZCc7CiRsYW5nWydwYXJhbV9ub2F1dGhvciddID0gJ1ZlcmJpcmd0IGRhcyBGZWxkIEF1dG9yIGltIEZvcm11bGFyIHp1bSBIb2NobGFkZW4uIERpZXNlciBQYXJhbWV0ZXIgaXN0IG51ciBtJm91bWw7Z2xpY2gsIHdlbm4gZGVyIE1vZHVzICYjMDM5O3VwbG9hZCYjMDM5OyBpc3QuIFdlbm4gZGFzIEZyb250ZW5kVXNlcnMtTW9kdWwgaW5zdGFsbGllcnQgdW5kIGVpbiBCZW51dHplciBha3R1ZWxsIGFuZ2VtZWxkZXQgaXN0LCBlbnRoJmF1bWw7bHQgZGFzIHZlcmJvcmdlbmUgRmVsZCBkZXNzZW4gTmFtZW4nOwokbGFuZ1sncGFyYW1fdXBsb2FkX2lkJ10gPSAndXBsb2FkX2lkPSZxdW90O2lkJnF1b3Q7IC0gZGVmaW5pZXJ0IGVpbmUgZWluemVsbmUgRGF0ZWkgZiZ1dW1sO3IgZWluZW4gTGluayBvZGVyIGYmdXVtbDtyIGRlbiBTaW5nbGUtTW9kdXM8L2xpPic7CiRsYW5nWydwYXJhbV9kZXRhaWx0ZW1wbGF0ZSddID0gJ0VpbiBUZW1wbGF0ZSBtaXQgZGllc2VtIE5hbWVuIGYmdXVtbDtyIGRlbiBkZXRhaWxpZXJ0ZW4gQmVyaWNodCB2ZXJ3ZW5kZW4uJzsKJGxhbmdbJ3BhcmFtX3RlbXBsYXRlJ10gPSAnVmVyd2VuZGV0IGVpbiBUZW1wbGF0ZSBtaXQgZGllc2VtIE5hbWVuIGYmdXVtbDtyIGRpZXNlbiBCZXJpY2h0IGJ6dy4gZGFzIEZvcm11bGFyLiBEaWVzZXMgVGVtcGxhdGUgcnVmdCBlbnRzcHJlY2hlbmQgZGVtIGZlc3RnZWxlZ3RlbiBNb2R1cyBhdXRvbWF0aXNjaCBlaW4gd2VpdGVyZXMgVGVtcGxhdGUgbWl0IGRlbSB2b3JnZWdlYmVuZW4gTmFtZW4gYXVmJzsKJGxhbmdbJ3BhcmFtX2ZpbHRlciddID0gJ0RhcyBGaWx0ZXItRm9ybXVsYXIgYW56ZWlnZW4nOwokbGFuZ1sncGFyYW1fbm9faW50aXRpYWwnXSA9ICdOdXIgbiZ1dW1sO3R6bGljaCwgd2VubiBkZXIgRmlsdGVyLVBhcmFtZXRlciBnZXNldHp0IHd1cmRlLiBTdGFuZGFyZG0mYXVtbDsmc3psaWc7aWcgemVpZ3QgZGllc2VyIFBhcmFtZXRlciBhbiwgd2VsY2hlIGVpbmxlaXRlbmRlbiBFcmdlYm5pc3NlIHp1ciZ1dW1sO2NrZ2VnZWJlbiB3ZXJkZW4gc29sbGVuLic7CiRsYW5nWydwYXJhbV9maWxldHlwZXMnXSA9ICdaZWlndCBudXIgRGF0ZWllbiBhbiwgZGVyZW4gVHlwIGluIGRlciBtaXQgS29tbWF0YSBnZXRyZW5udGVuIExpc3RlIGF1ZmdlZiZ1dW1sO2hydCBpc3QnOwokbGFuZ1sncGFyYW1fc29ydG9yZGVyJ10gPSAnICANCiAgPHA+U29ydGllcnJlaWhlbmZvbGdlDQogIDx1bD4NCiAgPGxpPjxlbT5kYXRlX2FzYzwvZW0+IC0gc29ydGllcnQgYXVmc3RlaWdlbmQgbmFjaCBEYXR1bTwvbGk+DQogIDxsaT48ZW0+ZGF0ZV9kZXNjPC9lbT4gLSBzb3J0aWVydCBhYnN0ZWlnZW5kIG5hY2ggRGF0dW08L2xpPg0KICA8bGk+PGVtPm5hbWVfYXNjPC9lbT4gLSBzb3J0aWVydCBhdWZzdGVpZ2VuZCBuYWNoIE5hbWU8L2xpPg0KICA8bGk+PGVtPm5hbWVfZGVzYzwvZW0+IC0gc29ydGllcnQgYWJzdGVpZ2VuZCBuYWNoIE5hbWU8L2xpPg0KICA8bGk+PGVtPnNpemVfYXNjPC9lbT4gLSBzb3J0aWVydCBhdWZzdGVpZ2VuZCBuYWNoIEdyJm91bWw7JnN6bGlnO2U8L2xpPg0KICA8bGk+PGVtPnNpemVfZGVzYzwvZW0+IC0gc29ydGllcnQgYWJzdGVpZ2VuZCBuYWNoIEdyJm91bWw7JnN6bGlnO2U8L2xpPg0KICA8bGk+PGVtPmRlc2NfYXNjPC9lbT4gLSBzb3J0aWVydCBhdWZzdGVpZ2VuZCBuYWNoIEJlc2NocmVpYnVuZzwvbGk+DQogIDxsaT48ZW0+ZGVzY19kZXNjPC9lbT4gLSBzb3J0aWVydCBhYnN0ZWlnZW5kIG5hY2ggQmVzY2hyZWlidW5nPC9saT4NCiAgPGxpPjxlbT5hdXRob3JfYXNjPC9lbT4gLSBzb3J0aWVydCBhdWZzdGVpZ2VuZCBuYWNoIEF1dG9yPC9saT4NCiAgPGxpPjxlbT5hdXRob3JfZGVzYzwvZW0+IC0gc29ydGllcnQgYWJzdGVpZ2VuZCBuYWNoIEF1dG9yPC9saT4NCiAgPGxpPjxlbT5pcF9hc2M8L2VtPiAtIHNvcnRpZXJ0IGF1ZnN0ZWlnZW5kIG5hY2ggSVAtQWRyZXNzZTwvbGk+DQogIDxsaT48ZW0+aXBfZGVzYzwvZW0+IC0gc29ydGllcnQgYWJzdGVpZ2VuZCBuYWNoIElQLUFkcmVzc2U8L2xpPg0KICA8bGk+PGVtPnJhbmRvbTwvZW0+IC0genVmJmF1bWw7bGxpZ2UgUmVpaGVuZm9sZ2U8L2xpPg0KICA8L3VsPg0KICA8L3A+JzsKJGxhbmdbJ3BhcmFtX2xpc3Rpbmd0ZW1wbGF0ZSddID0gJ0RhcyBUZW1wbGF0ZSwgd2VsY2hlcyBmJnV1bWw7ciBkaWUgS2F0ZWdvcmllbGlzdGUgdmVyd2VuZGV0IHdlcmRlbiBzb2xsLCBuYWNoZGVtIGRpZSBLYXRlZ29yaWUtWnVzYW1tZW5mYXNzdW5nc3NlaXRlIGdla2xpY2t0IHd1cmRlJzsKJGxhbmdbJ3BhcmFtX2xpc3Rpbmdzb3J0b3JkZXInXSA9ICdEaWUgU29ydGllcnJlaWhlbmZvbGdlIChzaWVoZSBwYXJhbV9zb3J0b3JkZXIpLCBkaWUgZiZ1dW1sO3IgZGllIEthdGVnb3JpZWxpc3RlIHZlcndlbmRldCB3ZXJkZW4gc29sbCwgbmFjaGRlbSBkaWUgS2F0ZWdvcmllbi1adXNhbW1lbmZhc3N1bmdzc2VpdGUgZ2VrbGlja3Qgd3VyZGUnOwokbGFuZ1sncGFyYW1fZmlsZWV4dGVuc2lvbnMnXSA9ICdmaWxlX2V4dGVuc2lvbnM9JnF1b3Q7ZXh0MSxleHQyLGV4dDMmcXVvdDsNCjxwPmlzdCBudXIgZyZ1dW1sO2x0aWcsIHdlbm4gZGVyIFBhcmFtZXRlciBtb2RlPXVwbG9hZCBpc3QsIGRpZXNlciBQYXJhbWV0ZXIgYmVzY2hyJmF1bWw7bmt0IGRpZSBEYXRlaXR5cGVuLCBkaWUgaG9jaGdlbGFkZW4gd2VyZGVuIGsmb3VtbDtubmVuLiAgRGllIFZvcmVpbnN0ZWxsdW5nZW4gZGVzIE1vZHVscyB3ZXJkZW4gZGFiZWkgJnV1bWw7YmVyc2NocmllYmVuLjwvcD4nOwokbGFuZ1sncGFyYW1fY291bnQnXSA9ICdjb3VudD0mcXVvdDtOJnF1b3Q7DQo8cD5FaW4gUGFyYW1ldGVyLCB1bSBudXIgZGllIGVyc3RlbiAmcXVvdDtOJnF1b3Q7IEVyZ2Vibmlzc2UgZWluZXIgQWJmcmFnZSBhdWZ6dWxpc3Rlbi4gRWluIFNlaXRlbnVtYnJ1Y2ggdyZhdW1sO3JlIHp3YXIgYmVzc2VyLCBhYmVyIGJpcyBkYWhpbiBnaWJ0cyBkaWVzZW4gVHJpY2suPC9wPic7CiRsYW5nWydwYXJhbV9jYXRlZ29yeSddID0gJ2NhdGVnb3J5PSZxdW90O25hbWUmcXVvdDsNCjxwPjxiPkhpbndlaXM6PC9iPiBjYXRlZ29yeSBrYW5uIGF1Y2ggZGVuIFdlcnQgJnF1b3Q7YWxsJnF1b3Q7IGhhYmVuLiBEYW5uIHdlcmRlbiBhbGxlIGhvY2hnZWxhZGVuZW4gRGF0ZWllbiBpbiBhbGxlbiA8ZW0+Z2VsaXN0ZXRlbjwvZW0+IEthdGVnb3JpZW4gYW5nZXplaWd0LjwvcD4nOwokbGFuZ1sncGFyYW1fbW9kZSddID0gJyANCiA8dWw+DQogIDxsaT48ZW0+ZGV0YWlsZWQ8L2VtPiAtIHplaWd0IGVpbmUgZGV0YWlsbGllcnRlIExpc3RlIGFsbGVyIERhdGVpZW4gZGllc2VyIEthdGVnb3JpZTwvbGk+DQogIDxsaT48ZW0+dXBsb2FkPC9lbT4gLSB6ZWlndCBlaW4gRm9ybXVsYXIsIHVtIEJlc3VjaGVybiBkZXIgU2l0ZSBkYXMgSG9jaGxhZGVuIGVpbmVyIERhdGVpIHp1IGVybSZvdW1sO2dsaWNoZW48L2xpPg0KICA8bGk+PGVtPnVybCA8aT5vcjwvaT4gbGluazwvZW0+IC0gemVpZ3QgZWluZW4gTGluayB6dSBlaW5lciBEYXRlaTwvbGk+DQogIDxsaT48ZW0+c3VtbWFyeTwvZW0+IC0gemVpZ3QgZWluZSB6dXNhbW1lbmdlZmFzc3RlIExpc3RlIGFsbGVyIERhdGVpZW4gZGllc2VyIEthdGVnb3JpZTwvbGk+DQogIDxsaT48ZW0+c2luZ2xlPC9lbT4gLSB6ZWlndCBlaW5lbiBkZXRhaWxsaWVydGVuIEJlcmljaHQgJnV1bWw7YmVyIGVpbmUgYmVzdGltbXRlLCBob2NoZ2VsYWRlbmUgRGF0ZWk8L2xpPg0KICA8L3VsPic7CiRsYW5nWydwYXJhbV9zZWxlY3Rmb3JtJ10gPSAnSW0gJiMwMzk7c2VsZWN0JiMwMzk7LU1vZHVzIGVudGgmYXVtbDtsdCBkaWVzZXIgUGFyYW1ldGVyIGRpZSBGb3JtdWxhci1JRCBkZXMgJnV1bWw7YmVyZ2VvcmRuZXRlbiBGb3JtdWxhcnMuIEthbm4gdmVyd2VuZGV0IHdlcmRlbiwgdW0gYmVzdGltbXRlIFBhcmFtZXRlciB3ZWl0ZXJ6dWdlYmVuLic7CiRsYW5nWydwYXJhbV9zZWxlY3RuYW1lJ10gPSAnSW0gJiMwMzk7c2VsZWN0JiMwMzk7LU1vZHVzIGthbm4gbWl0IGRpZXNlbSBQYXJhbWV0ZXIgZGVyIE5hbWVzIGRlcyBGZWxkZXMgZmVzdGdlbGVndCB3ZXJkZW4uJzsKJGxhbmdbJ3BhcmFtX3NlbGVjdHZhbHVlJ10gPSAnSW0gJiMwMzk7c2VsZWN0JiMwMzk7LU1vZHVzIGthbm4gbWl0IGRpZXNlbSBQYXJhbWV0ZXIgZGVyIHZvcmVpbmdlc3RlbGx0ZSBXZXJ0IGRlcyBGZWxkZXMgZmVzdGdlbGVndCB3ZXJkZW4uJzsKJGxhbmdbJ3BhcmFtX3NlbGVjdG5vbmUnXSA9ICdJbSAmIzAzOTtzZWxlY3QmIzAzOTstTW9kdXMga2FubiBtaXQgZGllc2VtIFBhcmFtZXRlciBmZXN0Z2VsZWd0IHdlcmRlbiwgb2IgJiMwMzk7bm9uZSYjMDM5OyBlaW5lIGcmdXVtbDtsdGlnZSBBdXN3YWhsIGlzdC4nOwokbGFuZ1sncmV0dXJudG9tb2R1bGUnXSA9ICdadXImdXVtbDtjayB6dXIgTW9kdWxvYmVyZmwmYXVtbDtjaGUnOwokbGFuZ1snZXJyb3Jfbm9jYXRlZ29yaWVzJ10gPSAnRXMgd3VyZGVuIGtlaW5lIEthdGVnb3JpZW4gZGVmaW5pZXJ0Lic7CiRsYW5nWyd0aXRsZV9lbmZvcmNlZXh0ZW5zaW9ucyddID0gJ0VyZm9yZGVydCBOYW1lbnNlcndlaXRlcnVuZ2VuIGYmdXVtbDtyIGFsbGUgaG9jaGdlbGFkZW5lbiBEYXRlaWVuJzsKJGxhbmdbJ3Jlc3RvcmVkZWZhdWx0c2NvbmZpcm0nXSA9ICdEaWVzIHNldHp0IGRhcyBUZW1wbGF0ZSBhdWYgZGVuIFN5c3RlbXN0YW5kYXJkIHp1ciZ1dW1sO2NrLiBBbGxlICZBdW1sO25kZXJ1bmdlbiBnZWhlbiBkYWJlaSB2ZXJsb3Jlbi4gV29sbGVuIFNpZSBkYXMgd2lya2xpY2g/JzsKJGxhbmdbJ2luZm9fdGh1bWJuYWlsJ10gPSAnRWluIG9wdGlvbmFsZXMgVm9yc2NoYXViaWxkJzsKJGxhbmdbJ3RodW1ibmFpbCddID0gJ1ZvcnNjaGF1YmlsZCc7CiRsYW5nWyduZXd0aHVtYm5haWwnXSA9ICdFaW4gbmV1ZXMgVm9yc2NoYXViaWxkIGhvY2hsYWRlbic7CiRsYW5nWydpbmZvX3N1bW1hcnknXSA9ICdFaW5lIGt1cnplIEJlc2NocmVpYnVuZyBkZXIgRGF0ZWkgKHdpcmQgZGllcyBsZWVyIGdlbGFzc2VuLCB3aXJkIGRlciBEYXRlaW5hbWUgb2huZSBFcndlaXRlcnVuZyB2ZXJ3ZW5kZXQpJzsKJGxhbmdbJ2luZm9fY2F0ZWdvcnluYW1lJ10gPSAnRWluIGt1cnplciBOYW1lIGYmdXVtbDtyIElocmUgS2F0ZWdvcmllJzsKJGxhbmdbJ2luZm9fY2F0ZWdvcnlkZXNjJ10gPSAnRWluZSBCZXNjaHJlaWJ1bmcgSWhyZXIgS2F0ZWdvcmllJzsKJGxhbmdbJ2luZm9fY2F0ZWdvcnlwYXRoJ10gPSAnRGFzIFVudGVydmVyemVpY2huaXMgaW0gVmVyemVpY2huaXMgL3VwbG9hZHMsIHdlbGNoZXMgZiZ1dW1sO3IgZGllIFNwZWljaGVydW5nIGRlciBEYXRlaWVuIGRpZXNlciBLYXRlZ29yaWUgdmVyd2VuZGV0IHdlcmRlbiBzb2xsLiBGYWxscyBkaWVzZXMgVmVyemVpY2huaXMgbm9jaCBuaWNodCBleGlzdGllcnQsIHdpcmQgZXMgZXJ6ZXVndC4nOwokbGFuZ1snaW5mb19kZXN0bmFtZSddID0gJ1ZlcndlbmRlbiBTaWUgZGFzIEZlbGQgJiMwMzk7SG9jaGxhZGVuIGFscyYjMDM5OywgdW0gZGVuIE5hbWVuIGRlciBob2NoZ2VsYWRlbmVuIERhdGVpIHp1IHZlciZhdW1sO25kZXJuLiBPaG5lIFZvcmdhYmUgd2lyZCBkZXIgRGF0ZWluYW1lIG5pY2h0IHZlciZhdW1sO25kZXJ0Lic7CiRsYW5nWydlcnJvcl9jYW50Y3JlYXRlZGlyZWN0b3J5J10gPSAnRGFzIFZlcnplaWNobmlzIGtvbm50ZSBuaWNodCBlcnN0ZWxsdCB3ZXJkZW4uJzsKJGxhbmdbJ2Vycm9yX25vbWFpbGVybW9kdWxlJ10gPSAnRGllIFZlcmJpbmR1bmcgenVtIENNU01haWxlci1Nb2R1bCBrb25udGUgbmljaHQgaGVyZ2VzdGVsbHQgd2VyZGVuLic7CiRsYW5nWyd1cGxvYWRfbm90aWZpY2F0aW9uJ10gPSAnRXMgd3VyZGUgZWluZSBuZXVlIERhdGVpIGhvY2hnZWxhZGVuLic7CiRsYW5nWyd0aXRsZV9lbWFpbF9vbl91cGxvYWQnXSA9ICdEaWUgQmVuYWNocmljaHRpZ3VuZyAmdXVtbDtiZXIgZWluZSBob2NoZ2VsYWRlbmUgRGF0ZWkgc2VuZGVuIGFuOic7CiRsYW5nWydlbWFpbF90ZW1wbGF0ZSddID0gJ0VtYWlsLVRlbXBsYXRlJzsKJGxhbmdbJ3RpdGxlX2R1bW15X2luZGV4X2h0bWwnXSA9ICdTb2xsIGluIGplZGVtIFZlcnplaWNobmlzIGVpbmUgRHVtbXktaW5kZXguaHRtbC1EYXRlaSBlcnN0ZWxsdCB3ZXJkZW4/PGJyLz48ZW0+QmVyZWl0cyBleGlzdGllcmVuZGUgaW5kZXguaHRtbC1EYXRlaWVuIGJsZWliZW4gZXJoYWx0ZW48L2VtPic7CiRsYW5nWydhYm91dCddID0gJyZVdW1sO2Jlcic7CiRsYW5nWydlcnJvcl9wZXJtaXNzaW9uZGVuaWVkJ10gPSAnWnVncmlmZiB2ZXJ3ZWlnZXJ0LiBCaXR0ZSBwciZ1dW1sO2ZlbiBTaWUgSWhyZSBCZXJlY2h0aWd1bmdlbi4nOwokbGFuZ1snZXJyb3JfY291bGRub3R3cml0ZSddID0gJ0tvbm50ZSBuaWNodCBnZXNjaHJpZWJlbiB3ZXJkZW4uJzsKJGxhbmdbJ2FkZGNhdGVnb3J5J10gPSAnS2F0ZWdvcmllIGhpbnp1ZiZ1dW1sO2dlbic7CiRsYW5nWydhbGwnXSA9ICdBbGxlJzsKJGxhbmdbJ2FyZXlvdXN1cmUnXSA9ICdXb2xsZW4gU2llIGRhcyB3aXJrbGljaD8nOwokbGFuZ1snYXV0aG9yJ10gPSAnQXV0b3InOwokbGFuZ1snY2FuY2VsJ10gPSAnQWJicmVjaGVuJzsKJGxhbmdbJ2Nhbm5vdG1vZGlmeXBhdGgnXSA9ICcoRGVyIFBmYWQga29ubnRlIG5pY2h0IGdlJmF1bWw7bmRlcnQgd2VyZGVuLiknOwokbGFuZ1snY2F0ZWdvcmllcyddID0gJ0thdGVnb3JpZW4nOwokbGFuZ1snY2F0ZWdvcnknXSA9ICdLYXRlZ29yaWUnOwokbGFuZ1snbWVzc2FnZV9jYXRlZ29yeWFkZGVkJ10gPSAnRGllIEthdGVnb3JpZSB3dXJkZSBlcmZvbGdyZWljaCBoaW56dWdlZiZ1dW1sO2d0Lic7CiRsYW5nWydkYXRlJ10gPSAnRGF0dW0nOwokbGFuZ1snZGF0ZXVwbG9hZGVkJ10gPSAnSG9jaGdlbGFkZW4gYW0nOwokbGFuZ1snZGVmYXVsdCddID0gJ1ZvcmVpbnN0ZWxsdW5nZW4nOwokbGFuZ1snZGVsZXRlJ10gPSAnTCZvdW1sO3NjaGVuJzsKJGxhbmdbJ2Rlc2NyaXB0aW9uJ10gPSAnQmVzY2hyZWlidW5nJzsKJGxhbmdbJ2Rlc3RuYW1lJ10gPSAnSG9jaGxhZGVuIGFscyc7CiRsYW5nWydkZXRhaWxfdGVtcGxhdGUnXSA9ICdEZXRhaWwtVGVtcGxhdGUnOwokbGFuZ1snZG93bmxvYWRlZCddID0gJ0RpZSBEYXRlaSAlcyB3dXJkZSBoZXJ1bnRlcmdlbGFkZW4uJzsKJGxhbmdbJ2Rvd25sb2FkcyddID0gJ0hlcnVudGVyZ2VsYWRlbmUgRGF0ZWllbic7CiRsYW5nWydlZGl0J10gPSAnQmVhcmJlaXRlbic7CiRsYW5nWydlZGl0Y2F0ZWdvcnknXSA9ICdLYXRlZ29yaWUgYmVhcmJlaXRlbic7CiRsYW5nWydlZGl0dXBsb2FkJ10gPSAnSG9jaGdlbGFkZW5lIERhdGVpIGJlYXJiZWl0ZW4nOwokbGFuZ1snZXJyb3InXSA9ICdGZWhsZXIhJzsKJGxhbmdbJ2Vycm9yX3BhdGhpbnVzZSddID0gJ0VzIGV4aXN0aWVydCBiZXJlaXRzIGVpbmUgS2F0ZWdvcmllIG1pdCBkaWVzZW0gUGZhZC4nOwokbGFuZ1snZXJyb3JfY2F0ZWdvcnlleGlzdHMnXSA9ICdGZWhsZXI6IERpZSBLYXRlZ29yaWUgZXhpc3RpZXJ0IGJlcmVpdHMnOwokbGFuZ1snZXJyb3JfY2F0ZWdvcnlub3RlbXB0eSddID0gJ0ZlaGxlcjogRGllIEthdGVnb3JpZSBrYW5uIG5pY2h0IGdlbCZvdW1sO3NjaHQgd2VyZGVuLCBkYSBzaWUgbmljaHQgbGVlciBpc3QhJzsKJGxhbmdbJ2Vycm9yX2NhdGVnb3J5bm90Zm91bmQnXSA9ICdGZWhsZXI6IEthdGVnb3JpZSBuaWNodCBnZWZ1bmRlbiEnOwokbGFuZ1snZXJyb3JfZGJlcnJvciddID0gJ0ZlaGxlcjogRGF0ZW5iYW5rZmVobGVyISc7CiRsYW5nWydlcnJvcl9lbXB0eWNhdGVnb3J5J10gPSAnRmVobGVyOiBLYXRlZ29yaWUtRmVsZCBsZWVyISc7CiRsYW5nWydlcnJvcl9lbXB0eXBhdGgnXSA9ICdGZWhsZXI6IFBmYWQgbGVlciEnOwokbGFuZ1snZXJyb3JfZmlsZWV4aXN0cyddID0gJ0ZlaGxlcjogRGllIERhdGVpICVzIGV4aXN0aWVydCBiZXJlaXRzLic7CiRsYW5nWydlcnJvcl9maWxlbm90Zm91bmQnXSA9ICdGZWhsZXI6IERpZSBEYXRlaSAlcyB3dXJkZSBuaWNodCBnZWZ1bmRlbi4nOwokbGFuZ1snZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJ10gPSAnRmVobGVyOiBEYXMgTW9kdWwgd3VyZGUgbWl0IG5pY2h0IGF1c3JlaWNoZW5kZW4gUGFyYW1ldGVybiBhdWZnZXJ1ZmVuISA8YnIvPkRlciBmZWhsZW5kZSBQYXJhbWV0ZXIgaXN0OiAlcyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkYXV0aG9yJ10gPSAnRmVobGVyOiBBdXRvciB1bmcmdXVtbDtsdGlnIChvZGVyIGxlZXIpLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkY2F0ZWdvcnknXSA9ICdGZWhsZXI6IEthdGVnb3JpZSB1bmcmdXVtbDtsdGlnIChvZGVyIGxlZXIpLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkZGVzY3JpcHRpb24nXSA9ICdGZWhsZXI6IEJlc2NocmVpYnVuZyB1bmcmdXVtbDtsdGlnIChvZGVyIGxlZXIpLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkZmlsZSddID0gJ0ZlaGxlcjogRGF0ZWluYW1lIHVuZyZ1dW1sO2x0aWcgKG9kZXIgbGVlcikuJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1cGxvYWRmaWxlbmFtZSddID0gJ0ZlaGxlcjogRGF0ZWllbiBtaXQgZGllc2VyIE5hbWVuc2Vyd2VpdGVydW5nIHNpbmQgbmljaHQgZXJsYXVidCAoJXMpLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXBsb2FkaWQnXSA9ICdGZWhsZXI6IFVuZyZ1dW1sO2x0aWdlIElEJzsKJGxhbmdbJ2Vycm9yX25vZmlsZXMnXSA9ICdGZWhsZXI6IEtlaW5lIGVudHNwZWNoZW5kZW4gRGF0ZWllbiEnOwokbGFuZ1snZmlsZXMnXSA9ICdEYXRlaWVuJzsKJGxhbmdbJ2ZpeG1lJ10gPSAnTGVlcnplaWNoZW4gZW50ZmVybmVuJzsKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ0RhdGVpZW4gKFVwbG9hZHMtTW9kdWwpJzsKJGxhbmdbJ2hlbHAnXSA9ICc8aDM+V2FzIG1hY2h0IGRpZXNlcyBNb2R1bD88L2gzPg0KPHA+RGFzIE1vZHVsIGVybGF1YnQgZGVuIEJlc3VjaGVybiBJaHJlciBIb21lcGFnZSwgYXVmIElocmVyIFNlaXRlIERhdGVpZW4gaG9jaC0gdW5kIHJ1bnRlcnp1bGFkZW4uIERhYmVpIHdpcmQgcHJvdG9rb2xsaWVydCwgd2VyIGVpbmUgRGF0ZWkgaG9jaGdlbGFkZW4gdW5kIHdlciBlaW5lIERhdGVpIGhlcnVudGVyZ2VsYWRlbiBoYXQuIERlc3dlaXRlcmVuIGsmb3VtbDtubmVuIGRpZSBEYXRlaWVuIGthdGVnb3Jpc2llcnQgd2VyZGVuLiBEaWUgaG9jaGdlbGFkZW5lbiBEYXRlaWVuIGsmb3VtbDtubmVuIHNvIHZlcndhbHRldCB3ZXJkZW4sIHdpZSBkaWVzIGVpbiBBZG1pbmlzdHJhdG9yIGsmb3VtbDtubnRlLjwvcD4gDQo8aDM+V2llIHdpcmQgZXMgZWluZ2VzZXR6dCA/PC9oMz4NCjxwPjxzdHJvbmc+QWNodHVuZzwvc3Ryb25nPiAtIERpZSBGdW5rdGlvbnNmJmF1bWw7aGlna2VpdCBkaWVzZXMgTW9kdWxzIGlzdCB2b24gdmVyc2NoaWVkZW5lbiBXZXJ0ZW4gSWhyZXIgUEhQLUtvbmZpZ3VyYXRpb24gd2llIHp1bSBCZWlzcGllbCBwaHAmIzAzOTtzIG1lbW9yeV9saW1pdCwgc2FmZV9tb2RlLCBmaWxlX3VwbG9hZHMsIHVwbG9hZHNfbWF4X2ZpbGVzaXplIHVuZCBtYXhfZXhlY3V0aW9uX3RpbWUgYWJoJmF1bWw7bmdpZy4gVW50ZXIgVW1zdCZhdW1sO25kZW4gbSZ1dW1sO3NzZW4gZGllc2UgV2VydGUgZiZ1dW1sO3IgZGllIEZ1bmt0aW9uc2YmYXVtbDtoaWdrZWl0IGRpZXNlcyBNb2R1bHMgYW5nZXBhc3N0IHdlcmRlbi4gU2llIHNvbGx0ZW4gZGFoZXIgZ2VnZWJlbmVuZmFsbHMgS29udGFrdCBtaXQgSWhyZW0gUHJvdmlkZXIgYXVmbmVobWVuLCB1bSBkaWVzZSBFaW5zdGVsbHVuZ2VuIGVudHNwcmVjaGVuZCBJaHJlbiBCZWQmdXVtbDtyZm5pc3NlbiBhbnp1cGFzc2VuLjwvcD4NCjxwPlVtIGRlbiBCZXN1Y2hlcm4gSWhyZXIgU2VpdGUgZGFzIEhvY2hsYWRlbiB2b24gRGF0ZWllbiB6dSBlcmxhdWJlbiwgc29sbHRlbiBTaWUgZGFzIE1vZHVsIHp1biZhdW1sO2Noc3QgaW5zdGFsbGllcmVuIHVuZCBkYW5uIGVpbmUgb2RlciBtZWhyZXJlIEthdGVnb3JpZW4gKD1WZXJ6ZWljaG5pc3NlKSBmJnV1bWw7ciBkaWUgaG9jaHp1bGFkZW5kZW4gRGF0ZWllbiBlcnN0ZWxsZW4uIERhbm4gZiZ1dW1sO2dlbiBTaWUgZGVuIFRhZyB7Y21zX21vZHVsZSBtb2R1bGU9JnF1b3Q7VXBsb2FkcyZxdW90OyBjYXRlZ29yeT0mcXVvdDtLYXRlZ29yaWUmcXVvdDsgbW9kZT0mcXVvdDtNb2R1cyZxdW90O30gaW4gZWluZSBTZWl0ZSBvZGVyIGVpbiBUZW1wbGF0ZSBlaW4sIHdvYmVpIE1vZHVzIGpld2VpbHMgZWluZW0gZGVyIHVudGVuIGF1ZmdlZiZ1dW1sO2hydGVuIE1vZGkgZW50c3ByaWNodC4gSmUgbmFjaCBhdXNnZXcmYXVtbDtobHRlbSBNb2R1cyB3ZXJkZW4gdW50ZXJzY2hpZWRsaWNoZSBJbmZvcm1hdGlvbmVuIGF1c2dlZ2ViZW4uPC9wPg0KPHA+RGllc2VzIE1vZHVsIGthbm4gb3B0aW9uYWwgZGFzIEZyb250ZW5kVXNlci1Nb2R1bCB2ZXJ3ZW5kZW4sIHVtIEluZm9ybWF0aW9uZW4gJnV1bWw7YmVyIGRpZSBha3R1ZWxsIGVpbmdlbG9nZ3RlbiBVc2VyIHp1IGVyaGFsdGVuLCBkaWUgZGFubiBpbiBkYXMgRm9ybXVsYXIgYmVpbSBIb2NobGFkZW4gdm9uIERhdGVpZW4gZWluZ2V0cmFnZW4gd2VyZGVuLjwvcD4NCjxoMz5CZXJlY2h0aWd1bmdlbjwvaDM+DQo8dWw+DQo8bGk+RGllIEJlcmVjaHRpZ3VuZyA8ZW0+TWFuYWdlIFVwbG9hZHM8L2VtPiB3aXJkIGJlbiZvdW1sO3RpZ3QsIHVtIGRpZSBLYXRlZ29yaWVuIHVuZCBkaWUgZGFyaW4gYmVmaW5kbGljaGVuIERhdGVpZW4genUgdmVyd2FsdGVuLjwvbGk+DQo8bGk+RGllIEJlcmVjaHRpZ3VuZyA8ZW0+TW9kaWZ5IFRlbXBsYXRlczwvZW0+ICB3aXJkIGJlbiZvdW1sO3RpZ3QsIHVtIFRlbXBsYXRlcyB6dSBiZWFyYmVpdGVuLjwvbGk+DQo8bGk+PGVtPk1vZGlmeSBTaXRlIFByZWZlcmVuY2VzPC9lbT4gZGllc2UgQmVyZWNodGlndW5nIHdpcmQgYmVuJm91bWw7dGlndCwgdW0gZGF0ZWliZXpvZ2VuZSBFaW5zdGVsbHVuZ2VuIHp1IHZlciZhdW1sO25kZXJuLjwvbGk+DQo8L3VsPg0KPGgzPkthdGVnb3JpZS0mVXVtbDtiZXJzaWNodDwvaDM+DQo8cD5XZW5uIFNpZSBlaW5lbiBUYWcgd2llIGV0d2Ege2Ntc19tb2R1bGUgbW9kdWxlPSZxdW90O1VwbG9hZHMmcXVvdDsgYWN0aW9uPSZxdW90O2NhdGVnb3J5c3VtbWFyeSZxdW90OyB0ZW1wbGF0ZT0mcXVvdDtzdW1tYXJ5dGVtcGxhdGUmcXVvdDsgc29ydG9yZGVyPSZxdW90O25hbWVfYXNjJnF1b3Q7IGxpc3Rpbmd0ZW1wbGF0ZT0mcXVvdDtsaXN0dGVtcGxhdGUmcXVvdDsgbGlzdGluZ3NvcnRvcmRlcj0mcXVvdDtsaXN0c29ydG9yZGVyJnF1b3Q7fSB2ZXJ3ZW5kZW4sIHdpcmQgZWluZSBpbnRlcmFrdGl2ZSBLYXRlZ29yaWVuLSZVdW1sO2JlcnNpY2h0IGFuZ2V6ZWlndC4gRGllIFNvcnRpZXJyZWloZW5mb2xnZSAoc29ydG9yZGVyKSBrYW5uIHNlaW46IG5hbWVfYXNjIChhdWZzdGVpZ2VuZCBuYWNoIE5hbWVuKSwgbmFtZV9kZXNjIChhYnN0ZWlnZW5kIG5hY2ggTmFtZW4pLCBzdW1tX2FzYyAoYXVmc3RlaWdlbmQgbmFjaCBkZXIgWnVzYW1tZW5mYXNzdW5nKSwgc3VtbV9kZXNjIChhYnN0ZWlnZW5kIG5hY2ggZGVyIFp1c2FtbWVuZmFzc3VuZykgb2RlciByYW5kb20gKHp1ZiZhdW1sO2xsaWdlIEF1c3dhaGwpLg0KRGllIFBhcmFtZXRlciBmJnV1bWw7ciBsaXN0aW5ndGVtcGxhdGUgdW5kIGxpc3Rpbmdzb3J0b3JkZXIgc2luZCBpZGVudGlzY2ggbWl0IGRlbiB0ZW1wbGF0ZS0gdW5kIHNvcnRvcmRlci1QYXJhbWV0ZXJuIGRlcyBadXNhbW1lbmZhc3N1bmdzbW9kdXMuPC9wPg0KPGgzPkVtYWlsdmVyc2FuZDwvaDM+DQo8cD5NaXQgZGllc2VtIE1vZHVsIGlzdCBlcyBtJm91bWw7Z2xpY2gsIGVpbmUgRW1haWwgenUgdmVyc2VuZGVuLCB3ZW5uIGltbWVyIGVpbmUgRGF0ZWkgaG9jaGdlbGFkZW4gd3VyZGUuIFNjaGF1ZW4gU2llIGhpZXJ6dSBpbiBkaWUgRWluc3RlbGx1bmdlbi4gRGFmJnV1bWw7ciBtdXNzIGRhcyA8Yj5DTVNNYWlsZXI8L2I+LU1vZHVsIGluc3RhbGxpZXJ0IHVuZCBrb25maWd1cmllcnQgc2Vpbi4gRGllc2UgTSZvdW1sO2dsaWNoa2VpdCBpc3QgbnVyIDxlbT5vcHRpb25hbDwvZW0+LiBXZW5uIGRhcyBDTVNNYWlsZXItTW9kdWwgbmljaHQgaW5zdGFsbGllcnQgaXN0LCB3aXJkIGRlbSBVc2VyIG5pY2h0cyBhbmdlemVpZ3QsIHNvbmRlcm4gbnVyIGVpbiBFaW50cmFnIGltIExvZ2J1Y2ggZGVzIEFkbWluaXN0cmF0b3JzIGVyc3RlbGx0LjwvcD4NCjxoMz5TeXN0ZW1laW5zdGVsbHVuZ2VuPC9oMz4NCjxwPjxiPkhpbndlaXM6PC9iPiBEYXMgTW9kdWwgdW1nZWh0IG5pY2h0IGRpZSBCZXNjaHImYXVtbDtua3VuZ2VuIGhpbnNpY2h0bGljaCBkZXIgRGF0ZWlnciZvdW1sOyZzemxpZztlIGluIFBIUC4gRXMgZnVua3Rpb25pZXJ0IG51ciBpbiBWZXJiaW5kdW5nIG1pdCBkaWVzZW0uIFdlbm4gU2llIGdyJm91bWw7JnN6bGlnO2VyZSBEYXRlaWVuIHp1bSBIb2NobGFkZW4genVsYXNzZW4gbSZvdW1sO2NodGVuLCBtJnV1bWw7c3NlbiBTaWUgSWhyZSBwaHAuaW5pLURhdGVpIHVuZC9vZGVyIGh0dHBkLmNvbmYgRGF0ZWkoZW4pIHNvd2llIGRpZSBWb3JlaW5zdGVsbHVuZ2VuIGRlcyBNb2R1bHMgZW50c3ByZWNoZW5kIGJlYXJiZWl0ZW4uDQo8aDQ+SGlud2Vpc2UgZiZ1dW1sO3IgZGVuIEFwYWNoZS1TZXJ2ZXI8L2g0Pg0KPHA+VW0gZGFzIEhvY2hsYWRlbiB2b24gZ3Imb3VtbDsmc3psaWc7ZXJlbiBEYXRlaWVuIHp1IGVybGF1YmVuLCBtJnV1bWw7c3NlbiBTaWUgZGVuIFBhcmFtZXRlciB1cGxvYWRfbWF4X2ZpbGVzaXplIGluIGlocmVyIHBocC5pbmkgYmVhcmJlaXRlbi4gWnVzJmF1bWw7dHpsaWNoIG11c3MgZGVyIFBhcmFtZXRlciBMaW1pdFJlcXVlc3RCb2R5IGluIElocmVyIEFwYWNoZS1Lb25maWd1cmF0aW9uIGFuIGRlbiBQYXJhbWV0ZXIgdXBsb2FkX21heF9maWxlc2l6ZSBhbmdlcGFzc3Qgd2VyZGVuLjwvcD4NCjxwPkhpbndlaXM6ICBkZXIgUGFyYW1ldGVyIHVwbG9hZF9tYXhfZmlsZXNpemUga2FubiBpbiBCeXRlcywgS2lsb2J5dGVzIG9kZXIgTWVnYWJ5dGVzIGFuZ2VnZWJlbiB3ZXJkZW4sIHcmYXVtbDtocmVuZGRlc3NlbiBkZXIgUGFyYW1ldGVyIExpbWl0UmVxdWVzdEJvZHkgbnVyIGluIEJ5dGVzIGZlc3RnZWxlZ3Qgd2VyZGVuIGthbm4uPC9wPic7CiRsYW5nWydpZCddID0gJ0lEJzsKJGxhbmdbJ2luc3RhbGxlZCddID0gJ01vZHVsdmVyc2lvbiAlcyBpbnN0YWxsaWVydC4nOwokbGFuZ1snaXBfYWRkcmVzcyddID0gJ0lQLUFkcmVzc2UnOwokbGFuZ1snbW9kZGVzY3JpcHRpb24nXSA9ICdFaW4gTW9kdWwsIHdlbGNoZXMgZGVuIEJlbnV0emVybiBkYXMgSG9jaGxhZGVuIHVuZCBkYXMgVmVyd2FsdGVuIHZvbiBEYXRlaWVuIGVybSZvdW1sO2dsaWNodC4nOwokbGFuZ1snbmFtZSddID0gJ05hbWUnOwokbGFuZ1sncmVuYW1lbWVzc2FnZSddID0gJyZBdW1sO25kZXJuIFNpZSBoaWVyIGRlbiBOYW1lbiwgdW0gZGllIERhdGVpIHVtenViZW5lbm5lbic7CiRsYW5nWydwYXRoJ10gPSAnUGZhZCc7CiRsYW5nWydwYXRobWVzc2FnZSddID0gJyZBdW1sO25kZXJuIFNpZSBoaWVyIGRpZSBLYXRlZ29yaWUsIHVtIGRpZSBEYXRlaSBpbiBlaW4gYW5kZXJlcyBWZXJ6ZWljaG5pcyB6dSB2ZXJzY2hpZWJlbi4nOwokbGFuZ1sncGF0aGludXBsb2FkcyddID0gJyhyZWxhdGl2IHp1bSAvdXBsb2FkcyBWZXJ6ZWljaG5pcyknOwokbGFuZ1sncG9zdGluc3RhbGwnXSA9ICc8cD5EYXMgVXBsb2Fkcy1Nb2R1bCB3dXJkZSBlcmZvbGdyZWljaCBpbnN0YWxsaWVydC4gU3RlbGxlbiBTaWUgc2ljaGVyLCBkYXNzIHp1ciBWZXJ3ZW5kdW5nIGRpZXNlcyBNb2R1bHMgZGllIEJlcmVjaHRpZ3VuZyAmcXVvdDtNYW5hZ2UgVXBsb2FkcyZxdW90OyBnZXNldHp0IHd1cmRlITwvcD4NCjxwPjxzdHJvbmc+QWNodHVuZzwvc3Ryb25nPiAtIERpZSBGdW5rdGlvbnNmJmF1bWw7aGlna2VpdCBkaWVzZXMgTW9kdWxzIGlzdCB2b24gdmVyc2NoaWVkZW5lbiBXZXJ0ZW4gSWhyZXIgUEhQLUtvbmZpZ3VyYXRpb24gd2llIHp1bSBCZWlzcGllbCBwaHAmIzAzOTtzIG1lbW9yeV9saW1pdCwgc2FmZV9tb2RlLCBmaWxlX3VwbG9hZHMsIHVwbG9hZHNfbWF4X2ZpbGVzaXplIHVuZCBtYXhfZXhlY3V0aW9uX3RpbWUgYWJoJmF1bWw7bmdpZy4gVW50ZXIgVW1zdCZhdW1sO25kZW4gbSZ1dW1sO3NzZW4gZGllc2UgV2VydGUgZiZ1dW1sO3IgZGllIEZ1bmt0aW9uc2YmYXVtbDtoaWdrZWl0IGRpZXNlcyBNb2R1bHMgYW5nZXBhc3N0IHdlcmRlbi4gU2llIHNvbGx0ZW4gZGFoZXIgZ2VnZWJlbmVuZmFsbHMgS29udGFrdCBtaXQgSWhyZW0gUHJvdmlkZXIgYXVmbmVobWVuLCB1bSBkaWVzZSBFaW5zdGVsbHVuZ2VuIGVudHNwcmVjaGVuZCBJaHJlbiBCZWQmdXVtbDtyZm5pc3NlbiBhbnp1cGFzc2VuLjwvcD4nOwokbGFuZ1sncG9zdHVuaW5zdGFsbCddID0gJ0RhcyBVcGxvYWRzLU1vZHVsZSB3dXJkZSBlbnRmZXJudC4gRXMgd3VyZGVuIGtlaW5lIERhdGVpZW4gYXVzIGRlbSAvdXBsb2Fkcy1WZXJ6ZWljaG5pcyBlbnRmZXJudCBvZGVyIGJlc2NoJmF1bWw7ZGlndC4nOwokbGFuZ1sncHJlZmVyZW5jZXMnXSA9ICdFaW5zdGVsbHVuZ2VuJzsKJGxhbmdbJ3ByZWZzdXBkYXRlZCddID0gJ01vZHVsZWluc3RlbGx1bmdlbiBha3R1YWxpc2llcnQuJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeWRlc2MnXSA9ICdCZXNjaHJlaWJ1bmcnOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5bGlzdGFibGUnXSA9ICdEaWUgRGF0ZWllbiBpbiBkaWVzZW0gVmVyemVpY2huaXMgayZvdW1sO25uZW4gYW5nZXplaWd0IHdlcmRlbi4nOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5bmFtZSddID0gJ05hbWUgZGVyIEthdGVnb3JpZSc7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnlwYXRoJ10gPSAnU2VydmVycGZhZCc7CiRsYW5nWydwcm9tcHRfZGVsZXRlZGlyZWN0b3J5J10gPSAnS2F0ZWdvcmlldmVyemVpY2huaXMgbCZvdW1sO3NjaGVuPyc7CiRsYW5nWydwcm9tcHRfbWF4X3VwbG9hZHNpemUnXSA9ICdNYXhpbWFsIGVybGF1YnRlIERhdGVpZ3Imb3VtbDsmc3psaWc7ZSAoS2IpJzsKJGxhbmdbJ3Byb21wdF92YWxpZF91cGxvYWRleHRlbnNpb25zJ10gPSAnRyZ1dW1sO2x0aWdlIERhdGVpbmVyd2VpdGVydW5nZW4nOwokbGFuZ1snc2NhbiddID0gJ1NjYW5uZW4nOwokbGFuZ1snc2VsZWN0Y2F0ZWdvcnknXSA9ICdLYXRlZ29yaWUgYXVzdyZhdW1sO2hsZW4nOwokbGFuZ1snc2l6ZSddID0gJ0dyJm91bWw7JnN6bGlnO2UnOwokbGFuZ1snc2l6ZWtiJ10gPSAnR3Imb3VtbDsmc3psaWc7ZSAoS2IpJzsKJGxhbmdbJ3N1Ym1pdCddID0gJ0Fic2VuZGVuJzsKJGxhbmdbJ3N1bW1hcnlfdGVtcGxhdGUnXSA9ICdadXNhbW1lbmZhc3N1bmdzLVRlbXBsYXRlJzsKJGxhbmdbJ3N1bW1hcnknXSA9ICdadXNhbW1lbmZhc3N1bmcnOwokbGFuZ1sndGl0bGVfYWRtaW5fcGFuZWwnXSA9ICdVcGxvYWRzLU1vZHVsJzsKJGxhbmdbJ3RpdGxlX21vZF9hZG1pbiddID0gJ01vZHVsLUFkbWluaXN0cmF0aW9uJzsKJGxhbmdbJ3RpdGxlX21vZF9wcmVmcyddID0gJ01vZHVsZWluc3RlbGx1bmdlbic7CiRsYW5nWyd0aXRsZV9zdWJuZXRfZXhjbHVzaW9ucyddID0gJ1N1Ym5ldHMgdm9uIGRlciBTdGF0aXN0aWsgYXVzc2NobGllJnN6bGlnO2VuJzsKJGxhbmdbJ3RpdGxlX3ZhbGlkX3VwbG9hZGV4dGVuc2lvbnMnXSA9ICdHJnV1bWw7bHRpZ2UgTmFtZW5zZXJ3ZWl0ZXJ1bmdlbic7CiRsYW5nWyd1bmluc3RhbGxlZCddID0gJ01vZHVsIGRlaW5zdGFsbGllcnQuJzsKJGxhbmdbJ3VwZ3JhZGVkJ10gPSAnTW9kdWwgYXVmIFZlcnNpb24gJXMgYWt0dWFsaXNpZXJ0Lic7CiRsYW5nWyd1cGxvYWQnXSA9ICdIb2NobGFkZW4nOwokbGFuZ1sndXBsb2FkZWQnXSA9ICdEaWUgRGF0ZWkgJXMgd3VyZGUgdm9uICVzIGhvY2hnZWxhZGVuLic7CiRsYW5nWydyZXBsYWNlZCddID0gJ0RpZSBEYXRlaSAlcyB3dXJkZSBkdXJjaCAlcyBlcnNldHp0Lic7CiRsYW5nWydkZWxldGVkJ10gPSAnRGllIERhdGVpICVzIHd1cmRlIGdlbCZvdW1sO3NjaHQuJzsKJGxhbmdbJ3VwbG9hZGZvcm1fdGVtcGxhdGUnXSA9ICdUZW1wbGF0ZSBob2NobGFkZW4nOwokbGFuZ1sndXNlcm5hbWUnXSA9ICdCZW51dHplcm5hbWUnOwokbGFuZ1snd2FybmluZ19kZWxldGVjYXRlZ29yeSddID0gJ1dBUk5VTkc6IFNlaWVuIFNpZSB2b3JzaWNodGlnLCB3ZW5uIFNpZSBLYXRlZ29yaWVuIGwmb3VtbDtzY2hlbi4gRGllIERhdGVpZW4gayZvdW1sO25uZW4gZGFiZWkgdmVybG9yZW4gZ2VoZW4uJzsKJGxhbmdbJ3dlbGNvbWVfdGV4dCddID0gJzxwPldpbGxrb21tZW4gaW4gZGVyIEFtaW5pc3RyYXRpb24gZGVzIFVwbG9hZHMtTW9kdWxzLiBXZW5uIGRhcyBNb2R1bCBlaW5lIEZ1bmt0aW9uIGF1c2YmdXVtbDtocmVuIHcmdXVtbDtyZGUsIHN0JnV1bWw7bmRlIGhpZXIgd2FocnNjaGVpbmxpY2ggZXR3YSBhbmRlcmVzLjwvcD4nOwokbGFuZ1sndXRtYSddID0gJzE1Njg2MTM1My43MTc0NjI3MzYuMTE0NzUxMTg1Ni4xMjEzNzgwNjIwLjEyMTM3ODI3NjQuMzIwJzsKPz4=]]></data>
	</file>
	<file>
	  <filename>/lang/ext/fi_FI.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ3Byb21wdF9ncm91cGxpc3QnXSA9ICdBdXRvcmlzb2lkdXQgRkVVLXJ5aG0mYXVtbDt0JzsKJGxhbmdbJ2luZm9fZ3JvdXBsaXN0J10gPSAnVmFsaXRzZSBGRVUtcnlobSZhdW1sO3QsIGpvaWxsYSBvbiBvaWtldXMgdCZhdW1sO20mYXVtbDtuIGthdGVnb3JpYW4gdGllZG9zdG9paGluLiBKJmF1bWw7dCZhdW1sOyB2YWxpbnRhIHR5aGomYXVtbDtrc2kgYW50YWFrc2VzaSBvaWtldWRldCBrYWlraWxsZS4nOwokbGFuZ1sndGl0bGVfc2NhbiddID0gJ0V0c2kgdXVzaWEgdGllZG9zdG9qYSB0JmF1bWw7c3QmYXVtbDsga2F0ZWdvcmlhc3RhJzsKJGxhbmdbJ3RpdGxlX2NyZWF0ZV90aHVtYm5haWxzJ10gPSAnTHVvIHB1dXR0dXZhdCBwaWVub2lza3V2YXQgdCZhdW1sO20mYXVtbDtuIGthdGVnb3JpYW4gdGllZG9zdG9pbGxlJzsKJGxhbmdbJ2NyZWF0ZV90aHVtYm5haWxzJ10gPSAnTHVvIHBpZW5vaXNrdXZhdCc7CiRsYW5nWyd0aXRsZV9jcmVhdGVfdGh1bWJuYWlsJ10gPSAnKHV1ZGVsbGVlbilMdW8gcGllbm9pc2t1dmEgdCZhdW1sO2xsZSB0aWVkb3N0b2xsZSc7CiRsYW5nWydjcmVhdGVfdGh1bWJuYWlsJ10gPSAnTHVvIHBpZW5vaXNrdXZhJzsKJGxhbmdbJ2Vycm9yX3BhdGhlcnJvciddID0gJ0hha2VtaXN0b2EgZWkgdm9pZGEgbHVrZWEgKHRpZWRvc3RvLW9pa2V1c29uZ2VsbWE/KSc7CiRsYW5nWyd0aXRsZV9kb3dubG9hZF9jaHVua3NpemUnXSA9ICdMYWRhdHRhdmFuIHBhbGFuIGtva28nOwokbGFuZ1snaW5mb19kb3dubG9hZF9jaHVua3NpemUnXSA9ICdUJmF1bWw7bSZhdW1sOyBhc2V0dXMgdmFpa3V0dGFhIGxhdGF1a3NlbiBrb2tvb24gamEgc2FhdHRhYSBhdXR0YWEgbXVpc3RpbmsmYXVtbDt5dCZvdW1sO3NzJmF1bWw7JzsKJGxhbmdbJ3dhcm5pbmdfc2FmZV9tb2RlJ10gPSAnUEhQbiBTYWZlIE1vZGUgb24gayZhdW1sO3l0Jm91bWw7c3MmYXVtbDssIHQmYXVtbDttJmF1bWw7IHNhYXR0YWEgYWloZXV0dGFhIG9uZ2VsbWlhIHVwbG9hZGVpc3NhICh0aWVkb3N0byBvaWtldWRldCkgamEgc2FhdHRhYSBhaWhldXR0YWEgb25nZWxtaWEgbGF0YXVrc2lzc2EuIFN1b3NpdHRlbGVtbWUgb3R0YW1hYW4geWh0ZXl0dCZhdW1sOyBzZXJ2ZXJpbiB5bGwmYXVtbDtwaXQmYXVtbDtqJmF1bWw7JmF1bWw7biBqb3Mgb25nZWxtaWEgZXNpaW50eXkuJzsKJGxhbmdbJ3BhcmFtX2RldGFpbHBhZ2UnXSA9ICdVc2VmdWwgZm9yIGRpc3BsYXlpbmcgYSBkZXRhaWwgcmVwb3J0IHVzaW5nIGEgZGlmZmVyZW50IHBhZ2UgdGVtcGxhdGUsIHRoaXMgcGFyYW1ldGVyIHRha2VzIHRoZSBwYWdlIGlkIG9yIHBhZ2UgYWxpYXMgb2YgYSBwYWdlIHRoYXQgc2hvdWxkIGJlIHVzZWQgdG8gZGlzcGxheSB0aGUgZGV0YWlsIHJlcG9ydCc7CiRsYW5nWydwYXJhbV9wcmVmaXgnXSA9ICdBIGJvb2xlYW4gdGhhdCBpbmRpY2F0ZXMgd2V0aGVyIGZpbGUgbmFtZXMgc2hvdWxkIGJlIHByZWZpeGVkJzsKJGxhbmdbJ3BhcmFtX3ByZWZpeF9mZXUnXSA9ICdBIGJvb2xlYW4gcGFyYW1ldGVyIHRoYXQgaW5kaWNhdGVzIHRoYXQgdGhlIHByZWZpeCBzaG91bGQgYmUgdGFrZW4gZnJvbSB0aGUgY3VycmVudCBhdXRob3IsIGlmIG5vdCBzcGVjaWZpZWQsIHRoZSBwcmVmaXggaXMgdGhlIGN1cnJlbnQgdGltZSAoaW4gZGVjaGV4IGZvcm1hdCknOwokbGFuZ1sncGFyYW1fbm9jYXB0Y2hhJ10gPSAnUG9pc3RhIENhcGNoYSBrJmF1bWw7eXQmb3VtbDtzdCZhdW1sOyAob2xldHVrc2VuYSBwJmF1bWw7JmF1bWw7bGwmYXVtbDspIHVwbG9hZCBmb3JtaXNzYSc7CiRsYW5nWyd0aXRsZV91cGxvYWRmb3JtX3RlbXBsYXRlJ10gPSAnTXVva2thYSB1cGxvYWQtbG9tYWtldHRhJzsKJGxhbmdbJ2NhcHRjaGFfdGl0bGUnXSA9ICdTeSZvdW1sO3QmYXVtbDsgdGFya2lzdGVrdXZhbiB0ZWtzdGknOwokbGFuZ1snZXJyb3JfY2FwdGNoYW1pc21hdGNoJ10gPSAnVGFya2lzdGVrdXZhbiB0ZWtzdGkgZWkgdCZhdW1sO3NtJmF1bWw7JmF1bWw7JzsKJGxhbmdbJ3RpdGxlX2F1dG90aHVtYm5haWxfZXh0ZW5zaW9ucyddID0gJ0x1byBwaWtrdWt1dmF0IHRpZWRvc3RvaWxsZSwgam9pbGxhIG9uIG4mYXVtbDttJmF1bWw7IHAmYXVtbDsmYXVtbDt0dGVldCc7CiRsYW5nWyd0aXRsZV9hdXRvdGh1bWJuYWlsX3NpemUnXSA9ICdNYWtzaW1pIHBpZW5vaXNrdXZhbiBrb2tvIChwaWtzZWxlaW4mYXVtbDspJzsKJGxhbmdbJ3Byb21wdF91cGxvYWRfaWNvbiddID0gJ1NpaXJyJmF1bWw7IGlrb25pIHBhbHZlbGltZWxsZSc7CiRsYW5nWydpbmZvX3N5c2RlZmF1bHQnXSA9ICdUJmF1bWw7dCZhdW1sOyB0ZWtzdGkmYXVtbDsgayZhdW1sO3l0ZXQmYXVtbDsmYXVtbDtuIHV1ZGVuIHRlbXBsYXRlbiBsdW9ubmlzc2EnOwokbGFuZ1sndGl0bGVfZGV0YWlscnB0X3N5c2RlZmF1bHQnXSA9ICdPbGV0dXMgeWtzaXR5aXNrb2h0YWlzZW4gcmFwb3J0aW4gcG9oamEnOwokbGFuZ1sndGl0bGVfc3VtbWFyeXJwdF9zeXNkZWZhdWx0J10gPSAnT2xldHVzIHlodGVlbnZldG9yYXBvcnRpbiBwb2hqYSc7CiRsYW5nWyd0aXRsZV91cGxvYWRmb3JtX3N5c2RlZmF1bHQnXSA9ICdPbGV0dXMgdXBsb2FkLWxvbWFrZXBvaGphJzsKJGxhbmdbJ3RlbXBsYXRlJ10gPSAnUG9oamEnOwokbGFuZ1sncmVzZXR0b2RlZmF1bHQnXSA9ICdQYWxhdXRhIG9sZXR1a3NldCc7CiRsYW5nWyd0aXRsZV9zdW1tYXJ5cnB0X3RlbXBsYXRlJ10gPSAnWWh0ZWVudmV0b3JhcG9ydGluIHBvaGphJzsKJGxhbmdbJ3RpdGxlX2RldGFpbHJwdF90ZW1wbGF0ZSddID0gJ1lrc2l0eWlza29odGFpc2VuIHJhcG9ydGluIHBvaGphJzsKJGxhbmdbJ3Byb21wdF9uYW1lJ10gPSAnTmltaSc7CiRsYW5nWydwcm9tcHRfZGVmYXVsdCddID0gJ09sZXR1cyc7CiRsYW5nWydsZWdlbmRfdXBsb2FkZm9ybSddID0gJ0xhdGFhIHRpZWRvc3RvJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdwYXJhbSddID0gJ1ZhYWRpdHR1IHBhcmFtZXRyaSBwdXV0dHV1JzsKJGxhbmdbJ2Vycm9yX21pc3NpbmduYW1lJ10gPSAnVGllZG9zdG9uIG5pbWkgdHVsZWUgYW50YWEnOwokbGFuZ1snZXJyb3JfbWlzc2luZ2V4dGVuc2lvbnMnXSA9ICdUYXJ2aXRhYW4gdiZhdW1sO2hpbnQmYXVtbDsmYXVtbDtuIHlrc2kgdGllZG9zdG9wJmF1bWw7JmF1bWw7dGUnOwokbGFuZ1snZXJyb3JfbWlzc2luZ2ljb24nXSA9ICdJa29uaSB0dWxlZSBtJmF1bWw7JmF1bWw7cml0dCZhdW1sOyZhdW1sOyc7CiRsYW5nWydlcnJvcl9ub3N1Y2hyb3cnXSA9ICdNJmF1bWw7JmF1bWw7cml0ZXR0eSZhdW1sOyByaXZpJmF1bWw7IGVpIGwmb3VtbDt5dHlueXQnOwokbGFuZ1snbmFtZV91bmtub3duJ10gPSAnVHVudGVtYXRvbic7CiRsYW5nWydkZXNjcmlwdGlvbl91bmtub3duJ10gPSAnVGllZG9zdG9uIHR5eXBwaSBrdXZhdXMgdHVudGVtYXR0b21pbGxlIHRpZWRvc3RvaWxsZSc7CiRsYW5nWydpbWFnZSddID0gJ0t1dmEnOwokbGFuZ1snaWNvbiddID0gJ0lrb25pJzsKJGxhbmdbJ2V4dGVuc2lvbnMnXSA9ICdUaWVkb3N0b3AmYXVtbDsmYXVtbDt0dGVldCc7CiRsYW5nWydhZGRmaWxldHlwZSddID0gJ0xpcyZhdW1sOyZhdW1sOyB1dXNpIHRpZWRvc3RvdHl5cHBpJzsKJGxhbmdbJ2ZpbGVfdHlwZXMnXSA9ICdUaWVkb3N0b3R5eXBpdCc7CiRsYW5nWydlcnJvcl9ub2NhdGVnb3J5aWQnXSA9ICdLYXRlZ29yaWFuIElEdCZhdW1sOyBlaSBhbm5ldHR1JzsKJGxhbmdbJ2Vycm9yX25vY2F0ZWdvcnknXSA9ICdLYXRlZ29yaWFuIElEdCZhdW1sOyBlaSBhbm5ldHR1JzsKJGxhbmdbJ2Vycm9yX3RlbXBsYXRlbmFtZWV4aXN0cyddID0gJ1NhbWFsbGEgbmltZWxsJmF1bWw7IG9uIGpvIG9sZW1hc3NhIHBvaGphJzsKJGxhbmdbJ3Byb21wdF90ZW1wbGF0ZW5hbWUnXSA9ICdQb2hqYW4gbmltaSc7CiRsYW5nWydwcm9tcHRfdGVtcGxhdGUnXSA9ICdQb2hqYSc7CiRsYW5nWydwcm9tcHRfbmV3dGVtcGxhdGUnXSA9ICdMdW8gdXVzaSBwb2hqYSc7CiRsYW5nWydoZWxwX09uRG93bmxvYWQnXSA9ICc8aDM+T25Eb3dubG9hZDwvaDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgZmluaXNoZXMgZG93bmxvYWRpbmcgYSBmaWxlPC9wPg0KPHVsPg0KPGxpPjxlbT5pZDwvZW0+IC0gVXBsb2FkIElEPC9saT4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gRmlsZSBuYW1lPC9saT4NCjxsaT48ZW0+aXA8L2VtPiAtIFRoZSBJUCBBZGRyZXNzIG9mIHRoZSBkb3dubG9hZGVyPC9saT4NCjwvdWw+DQonOwokbGFuZ1snaGVscF9PbkRlbGV0ZUNhdGVnb3J5J10gPSAnPGgzPk9uRGVsZXRlQ2F0ZWdvcnk8L2gzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBjYXRlZ29yeSBpcyBEZWxldGVkPC9wPg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBDYXRlZ29yeSBuYW1lPC9saT4NCjxsaT48ZW0+cGF0aDwvZW0+IC0gQ2F0ZWdvcnkgcGF0aDwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2hlbHBfT25DcmVhdGVDYXRlZ29yeSddID0gJzxoMz5PbkNyZWF0ZUNhdGVnb3J5PC9oMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgY2F0ZWdvcnkgaXMgQ3JlYXRlZDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIGNhdGVnb3J5PC9saT4NCjxsaT48ZW0+ZGVzY3JpcHRpb248L2VtPiAtIFRoZSBjYXRlZ29yeSBkZXNjcmlwdGlvbjwvbGk+DQo8bGk+PGVtPnBhdGg8L2VtPiAtIFRoZSBjYXRlZ29yeSBwYXRoPC9saT4NCjxsaT48ZW0+cGF0aDwvZW0+IC0gQSBmbGFnIGluZGljYXRpbmcgaWYgdGhlIGNhdGVnb3J5IGlzIGxpc3RhYmxlPC9saT4NCjwvdWw+DQonOwokbGFuZ1snaGVscF9PblJlbW92ZSddID0gJzxoMz5PblJlbW92ZTwvaDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIGZpbGUgaXMgcmVtb3ZlZCB2aWEgdGhlIGFkbWluIG9yIGZyb250ZW5kIGludGVyZmFjZXM8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSBuYW1lIG9mIHRoZSByZW1vdmVkIGZpbGU8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIGlkIG9mIHRoZSByZW1vdmVkIGZpbGU8L2xpPg0KPGxpPjxlbT5jYXRlZ29yeV9pZDwvZW0+IC0gVGhlIGlkIG9mIHRoZSBjYXRlZ29yeTwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2hlbHBfT25VcGxvYWQnXSA9ICc8aDM+T25VcGxvYWQ8L2gzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBuZXcgZmlsZSBpcyB1cGxvYWRlZCB2aWEgdGhlIGFkbWluIG9yIGZyb250ZW5kIGludGVyZmFjZXM8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPmNhdGVnb3J5PC9lbT4gLSBUaGUgY2F0ZWdvcnkgbmFtZTwvbGk+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSBuYW1lIG9mIHRoZSB1cGxvYWRlZCBmaWxlPC9saT4NCjxsaT48ZW0+c2l6ZTwvZW0+IC0gVGhlIHNpemUgb2YgdGhlIHVwbG9hZGVkIGZpbGU8L2xpPg0KPGxpPjxlbT5zdW1tYXJ5PC9lbT4gLSBUaGUgc2hvcnQgZGVzY3JpcHRpb24gZm9yIHRoZSB1cGxvYWRlZCBmaWxlIChtYXkgYmUgZW1wdHkpPC9lbT48L2xpPg0KPGxpPjxlbT5kZXNjcmlwdGlvbjwvZW0+IC0gVGhlIGxvbmcgZGVzY3JpcHRpb24gZm9yIHRoZSB1cGxvYWRlZCBmaWxlIChtYXkgYmUgZW1wdHkpPC9lbT48L2xpPg0KPGxpPjxlbT5hdXRob3I8L2VtPiAtIFRoZSBhdXRob3Igb2YgdGhlIHVwbG9hZGVkIGZpbGUgKGlmIGF2YWlsYWJsZSk8L2VtPjwvbGk+DQo8bGk+PGVtPmlwX2FkZHJlc3M8L2VtPiAtIFRoZSBpbnRlcm5ldCBhZGRyZXNzIG9mIHRoZSBjbGllbnQgdGhhdCB1cGxvYWRlZCB0aGUgZmlsZTwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2luZm9fZXZlbnRfb25kZWxldGVjYXRlZ29yeSddID0gJ0V2ZW50IGdlbmVyYXRlZCB3aGVuIGEgY2F0ZWdvcnkgaXMgZGVsZXRlZCc7CiRsYW5nWydpbmZvX2V2ZW50X29uY3JlYXRlY2F0ZWdvcnknXSA9ICdFdmVudCBnZW5lcmF0ZWQgd2hlbiBhIGNhdGVnb3J5IGlzIGNyZWF0ZWQnOwokbGFuZ1snaW5mb19ldmVudF9vbmRvd25sb2FkJ10gPSAnRXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBmaWxlIGlzIGRvd25sb2FkZWQnOwokbGFuZ1snaW5mb19ldmVudF9vbnVwbG9hZCddID0gJ0V2ZW50IGdlbmVyYXRlZCB3aGVuIGEgbmV3IGZpbGUgaXMgdXBsb2FkZWQnOwokbGFuZ1snaW5mb19ldmVudF9vbnJlbW92ZSddID0gJ0V2ZW50IGdlbmVyYXRlZCB3aGVuIGEgZmlsZSBpcyByZW1vdmVkJzsKJGxhbmdbJ3RpdGxlX3VzZXJ0YWdfb251cGxvYWQnXSA9ICdLJmF1bWw7eXR0JmF1bWw7aiZhdW1sO24gbHVvbWEgdGFnaSwgam90YSBrdXRzdXRhYW4ga3VuIHNpaXJ0byBvbiB2YWxtaXMnOwokbGFuZ1snbm9uZSddID0gJ0VpIG1pdCZhdW1sOyZhdW1sO24nOwokbGFuZ1snbWF0Y2hlc2ZvdW5kJ10gPSAnT3N1bWFhIGwmb3VtbDt5ZGV0dHknOwokbGFuZ1snZmlsdGVyJ10gPSAnU3VvZGF0YSc7CiRsYW5nWyd0aXRsZV9yZWRpcmVjdG9udXBsb2FkJ10gPSAnT2hqYWEgc2l2dWxsZSAoaWQgLyBhbGlhcykgbGF0YXVrc2VuIGomYXVtbDtsa2Vlbic7CiRsYW5nWydkZXRhaWxzJ10gPSAnTGlzJmF1bWw7dGllZG90JzsKJGxhbmdbJ2NvbmZpcm1fcHJlZmVyZW5jZXMnXSA9ICdIYWx1YXRrbyB2YXJtYXN0aSBtdXV0dGFhIGFzZXR1a3NpYT8nOwokbGFuZ1snZXJyb3Jfbm9maWxlc3VwbG9hZGVkJ10gPSAnVGllZG9zdG9hIGVpIGxhZGF0dHUnOwokbGFuZ1sncHJvbXB0X3JlcGxhY2UnXSA9ICdTYWxsaSB5bGlraXJqb2l0dXMnOwokbGFuZ1snaW5mb19yZXBsYWNlJ10gPSAnS29ydmFhIHRpZWRvc3RvIHNhbWFubmltaXNlbGxhIChlaSB2YWloZGEgSUQ6dGEpJzsKJGxhbmdbJ3BhcmFtX25vX2luaXRpYWwnXSA9ICcmQXVtbDtsJmF1bWw7IG4mYXVtbDt5dCZhdW1sOyBhbHVzc2EgdHVsb2tzaWEsIGpvcyBzdW9kYXR1cyBvbiBwJmF1bWw7JmF1bWw7bGwmYXVtbDsnOwokbGFuZ1sncGFyYW1fa2V5J10gPSAnUHJvdmlkZSBhbiBhZGRpdGlvbmFsIGtleSB0byB0aGUgbW9kdWxlIGZvciBmdXJ0aGVyIG9yZ2FuaXppbmcgdXBsb2Fkcy4gIFRoaXMga2V5IGNvdWxkIGJlIGFuIGVuY29kZWQgc3RyaW5nIGxpa2U6ICYjMDM5O2ZldXNlcnM6dWlkJiMwMzk7LCBldGMuICBUaGlzIHBhcmFtZXRlciBpcyB1c3VhbGx5IG9ubHkgbmVlZGVkIHdoZW4gZW1iZWRkaW5nIHRoZSB1cGxvYWRzIG1vZHVsZSBpbnRvIGFub3RoZXIgbW9kdWxlJzsKJGxhbmdbJ3BhcmFtX25vYXV0aG9yJ10gPSAnSGlkZSB0aGUgYXV0aG9yIGZpZWxkIGZyb20gdGhlIHVwbG9hZCBmb3JtLiAgVGhpcyBwYXJhbWV0ZXIgaXMgb25seSB2YWxpZCB3aGVuIG1vZGU9JiMwMzk7dXBsb2FkJiMwMzk7LiAgSWYgVGhlIEZyb250ZW5kVXNlcnMgbW9kdWxlIGlzIHByZXNlbnQsIGFuZCBhIHVzZXIgaXMgY3VycmVudGx5IGxvZ2dlZCBpbiwgYSBoaWRkZW4gZmllbGQgd2lsbCBob2xkIHRoZSBjdXJyZW50bHkgbG9nZ2VkIGluIHVzZXJuYW1lJzsKJGxhbmdbJ3BhcmFtX3VwbG9hZF9pZCddID0gJ3VwbG9hZF9pZD0mcXVvdDtpZCZxdW90OyAtIHNwZWNpZnkgYSBzaW5nbGUgZmlsZSBmb3IgdGhlIHVybC9saW5rIG9yIHNpbmdsZSBtb2RlcyAoYWJvdmUpJzsKJGxhbmdbJ3BhcmFtX3VzZV9zdHJpY3RfcmVnZXhwJ10gPSAnU3VvZGF0dXMgayZhdW1sO3l0dCZhdW1sOyZhdW1sOyB0aXVra2FhIHMmYXVtbDsmYXVtbDtubiZvdW1sO2xsaXN0JmF1bWw7IGxhdXNla2V0dGEnOwokbGFuZ1sncGFyYW1fZGV0YWlsdGVtcGxhdGUnXSA9ICdLJmF1bWw7eXQmYXVtbDsgdCZhdW1sO20mYXVtbDtuIG5pbWlzdCZhdW1sOyBwb2hqYWEgeWtzaXR5aXNrb2h0YWlzZWVuIHJhcG9ydHRpaW4nOwokbGFuZ1sncGFyYW1fdGVtcGxhdGUnXSA9ICdVc2UgYSB0ZW1wbGF0ZSB3aXRoIHRoaXMgbmFtZSBmb3IgdGhpcyByZXBvcnQgb3IgZm9ybS4gIFRoZSBtb2RlIGlzIHVzZWQgdG8gZGV0ZXJtaW5lIHdoYXQgdHlwZSBvZiB0ZW1wbGF0ZSBpcyByZXF1aXJlcmQsIGFuZCB0aGVuIGEgbmFtZSBtYXRjaCBpcyBwZXJmb3JtZWQgd2l0aGluIHRoYXQgdHlwZS4nOwokbGFuZ1sncGFyYW1fZmlsdGVyJ10gPSAnTiZhdW1sO3l0JmF1bWw7IHN1b2RhdHVza2FhdmFrZSc7CiRsYW5nWydwYXJhbV9ub19pbnRpdGlhbCddID0gJ0smYXVtbDt5dCZhdW1sO25uJm91bWw7bGxpbmVuIHZhaW4gam9zIHN1b2RhdHVzcGFyYW1ldHJpIG9uIGFubmV0dHUsIFZhaWt1dHRhYSB0dWxva3NpaW4gaWxtYW4gc3VvZGF0dXN0YQ0KJzsKJGxhbmdbJ3BhcmFtX2ZpbGV0eXBlcyddID0gJ04mYXVtbDt5dCZhdW1sOyB2YWluIHRpZWRvc3RvdCwgam9pZGVuIHR5eXBwaSB2YXN0YWEgdCZhdW1sO3QmYXVtbDsgcGlsa3VsbGEgZXJvdGV0dHVhIGxpc3RhYSc7CiRsYW5nWydwYXJhbV9zb3J0b3JkZXInXSA9ICcgIDxwPlNvcnQgT3JkZXJzDQogIDx1bD4NCiAgPGxpPjxlbT5kYXRlX2FzYzwvZW0+IC0gU29ydCBieSBhc2NlbmRpbmcgZGF0ZTwvbGk+DQogIDxsaT48ZW0+ZGF0ZV9kZXNjPC9lbT4gLSBTb3J0IGJ5IGRlc2NlbmRpbmcgZGF0ZTwvbGk+DQogIDxsaT48ZW0+bmFtZV9hc2M8L2VtPiAtIFNvcnQgYnkgYXNjZW5kaW5nIG5hbWU8L2xpPg0KICA8bGk+PGVtPm5hbWVfZGVzYzwvZW0+IC0gU29ydCBieSBkZXNjZW5kaW5nIG5hbWU8L2xpPg0KICA8bGk+PGVtPnNpemVfYXNjPC9lbT4gLSBTb3J0IGJ5IGFzY2VuZGluZyBzaXplPC9saT4NCiAgPGxpPjxlbT5zaXplX2Rlc2M8L2VtPiAtIFNvcnQgYnkgZGVzY2VuZGluZyBzaXplPC9saT4NCiAgPGxpPjxlbT5kZXNjX2FzYzwvZW0+IC0gU29ydCBieSBhc2NlbmRpbmcgZGVzY3JpcHRpb248L2xpPg0KICA8bGk+PGVtPmRlc2NfZGVzYzwvZW0+IC0gU29ydCBieSBkZXNjZW5kaW5nIGRlc2NyaXB0aW9uPC9saT4NCiAgPGxpPjxlbT5hdXRob3JfYXNjPC9lbT4gLSBTb3J0IGJ5IGFzY2VuZGluZyBhdXRob3I8L2xpPg0KICA8bGk+PGVtPmF1dGhvcl9kZXNjPC9lbT4gLSBTb3J0IGJ5IGRlc2NlbmRpbmcgYXV0aG9yPC9saT4NCiAgPGxpPjxlbT5pcF9hc2M8L2VtPiAtIFNvcnQgYnkgYXNjZW5kaW5nIGlwIGFkZHJlc3M8L2xpPg0KICA8bGk+PGVtPmlwX2Rlc2M8L2VtPiAtIFNvcnQgYnkgZGVzY2VuZGluZyBpcCBhZGRyZXNzPC9saT4NCiAgPGxpPjxlbT5yYW5kb208L2VtPiAtIFJhbmRvbSBzb3J0IG9yZGVyPC9saT4NCiAgPC91bD4NCiAgPC9wPic7CiRsYW5nWydwYXJhbV9saXN0aW5ndGVtcGxhdGUnXSA9ICdUZW1wbGF0ZSB0byB1c2UgZm9yIGNhdGVnb3J5IGxpc3RpbmdzIGFmdGVyIGNsaWNrdGhyb3VnaCBmcm9tIENhdGVnb3J5IFN1bW1hcnkgcGFnZSc7CiRsYW5nWydwYXJhbV9saXN0aW5nc29ydG9yZGVyJ10gPSAnU29ydCBvcmRlciAoYWxhIHBhcmFtX3NvcnRvcmRlcikgdG8gdXNlIGZvciBjYXRlZ29yeSBsaXN0aW5ncyBhZnRlciBjbGlja3Rocm91Z2ggZnJvbSBDYXRlZ29yeSBTdW1tYXJ5IHBhZ2UnOwokbGFuZ1sncGFyYW1fZmlsZWV4dGVuc2lvbnMnXSA9ICcgDQpmaWxlX2V4dGVuc2lvbnM9JnF1b3Q7ZXh0MSxleHQyLGV4dDMmcXVvdDsNCjxwPk1pdCZhdW1sOyB0aWVkb3N0byBwJmF1bWw7JmF1bWw7dHRlaXQmYXVtbDsgdm9pZGFhbiBsYWRhdGEsIHZhYXRpaSBtb2RlPSZxdW90O3VwbG9hZCZxdW90OyBwYXJhbWV0cmluLiBZbGlraXJqb2l0dGFhIG1vZHVsaW4gcGVydXNhc2V0dWtzZXQ8L3A+JzsKJGxhbmdbJ3BhcmFtX2NvdW50J10gPSAnY291bnQ9JnF1b3Q7TiZxdW90Ow0KPHA+TiZhdW1sO3l0dCZhdW1sOyZhdW1sOyBOIGthcHBhbGV0dGEgdHVsb2tzaWE8L3A+JzsKJGxhbmdbJ3BhcmFtX2NhdGVnb3J5J10gPSAnY2F0ZWdvcnk9JnF1b3Q7bmFtZSZxdW90Ow0KPHA+PGI+SHVvbWFhOjwvYj4gVm9pIG9sbGEgbXkmb3VtbDtzICZxdW90O2FsbCZxdW90Oywgam9rYSBuJmF1bWw7eXR0JmF1bWw7JmF1bWw7IGthaWtraSA8ZW0+bGlzdGF0dGF2aXNzYSBvbGV2YXQ8L2VtPiBrYXRlZ29yaWF0PC9wPic7CiRsYW5nWydwYXJhbV9tb2RlJ10gPSAnICA8dWw+DQogIDxsaT48ZW0+ZGV0YWlsZWQ8L2VtPiAtIERpc3BsYXkgYSBkZXRhaWxlZCBsaXN0IG9mIGFsbCBmaWxlcyBpbiB0aGUgY2F0ZWdvcnk8L2xpPg0KICA8bGk+PGVtPnVwbG9hZDwvZW0+IC0gRGlzcGxheSBhIGZvcm0gdG8gYWxsb3cgYSBmcm9udGVuZCB1c2VyIHRvIHVwbG9hZCBhIGZpbGU8L2xpPg0KICA8bGk+PGVtPnVybCA8aT5vcjwvaT4gbGluazwvZW0+IC0gRGlzcGxheSBhIGxpbmsgdG8gYSBmaWxlPC9saT4NCiAgPGxpPjxlbT5zdW1tYXJ5PC9lbT4gLSBEaXNwbGF5IGEgc3VtbWFyaXplZCBsaXN0IG9mIGFsbCBmaWxlcyBpbiB0aGUgY2F0ZWdvcnk8L2xpPg0KICA8bGk+PGVtPnNpbmdsZTwvZW0+IC0gRGlzcGxheSBhIGRldGFpbGVkIHJlcG9ydCBhYm91dCBhIHNpbmdsZSB1cGxvYWQ8L2xpPg0KICA8bGk+PGVtPnNpbmdsZXN1bW1hcnk8L2VtPiAtIERpc3BsYXkgYSBzdW1tYXJpemVkIHJlcG9ydCBhYm91dCBhIHNpbmdsZSB1cGxvYWQvbGk+DQogIDwvdWw+JzsKJGxhbmdbJ3BhcmFtX3NlbGVjdGZvcm0nXSA9ICdXaGVuIHVzaW5nIHRoZSAmIzAzOTtzZWxlY3QmIzAzOTsgbW9kZSwgdGhpcyBwYXJhbWV0ZXIgaXMgdGhlIGZvcm1pZCBvZiB0aGUgcGFyZW50IGZvcm0uICBVc2VkIHRvIGhhbmRsZSBwYXJhbWV0ZXIgcGFzc2luZyc7CiRsYW5nWydwYXJhbV9zZWxlY3RuYW1lJ10gPSAnd2hlbiB1c2luZyB0aGUgJiMwMzk7c2VsZWN0JiMwMzk7IG1vZGUsIHRoaXMgcGFyYW1ldGVyIHNwZWNpZmllcyB0aGUgbmFtZSBvZiB0aGUgZmllbGQnOwokbGFuZ1sncGFyYW1fc2VsZWN0dmFsdWUnXSA9ICdXaGVuIHVzaW5nIHRoZSAmIzAzOTtzZWxlY3QmIzAzOTsgbW9kZSwgdGhpcyBwYXJhbWV0ZXIgc3BlY2lmaWVzIHRoZSBkZWZhdWx0IGZpZWxkIHZhbHVlJzsKJGxhbmdbJ3BhcmFtX3NlbGVjdG5vbmUnXSA9ICdXaGVuIHVzaW5nIHRoZSAmIzAzOTtzZWxlY3QmIzAzOTsgbW9kZSwgdGhpcyBwYXJhbWV0ZXIgc3BlY2lmaWVzIHdldGhlciAmIzAzOTtub25lJiMwMzk7IGlzIGEgdmFsaWQgY2hvaWNlLic7CiRsYW5nWydyZXR1cm50b21vZHVsZSddID0gJ1BhbGFhIG1vZHV1bGlpbic7CiRsYW5nWydlcnJvcl9ub2NhdGVnb3JpZXMnXSA9ICdFaSB5aHQmYXVtbDsmYXVtbDtuIG0mYXVtbDsmYXVtbDtyaXRlbHR5JmF1bWw7IGthdGVnb3JpYWEnOwokbGFuZ1sndGl0bGVfZW5mb3JjZWV4dGVuc2lvbnMnXSA9ICdWYWFkaSBwJmF1bWw7JmF1bWw7dGUga2Fpa2lsbGUgbGFkYXR1aWxsZSB0aWVkb3N0b2lsbGUnOwokbGFuZ1sncmVzdG9yZWRlZmF1bHRzY29uZmlybSddID0gJ09sZXRrbyB2YXJtYSBldHQmYXVtbDsgaGFsdWF0IHBhbGF1dHRhYSBrYWlra2kgcG9oamF0IG9sZXR1cyBwb2hqaWtzaS4gS2Fpa2tpIG11dXRva3NldCBqb2l0YSBvbGV0IHRlaG55dCBoJmF1bWw7dmkmYXVtbDt2JmF1bWw7dCEnOwokbGFuZ1snaW5mb190aHVtYm5haWwnXSA9ICdWYWxpbm5haW5lbiBwaWVub3NrdXZhdGllZG9zdG8nOwokbGFuZ1sndGh1bWJuYWlsJ10gPSAnUGllbm9pc2t1dmEnOwokbGFuZ1snbmV3dGh1bWJuYWlsJ10gPSAnU2lpcnImYXVtbDsgdXVzaSBwaWVub2lza3V2YSc7CiRsYW5nWydpbmZvX3N1bW1hcnknXSA9ICdMeWh5dCBrdXZhdXMgdGllZG9zdG9zdGEnOwokbGFuZ1snaW5mb19jYXRlZ29yeW5hbWUnXSA9ICdMeWh5dCBrdXZhdXMga2F0ZWdvcmlhc3RhJzsKJGxhbmdbJ2luZm9fY2F0ZWdvcnlkZXNjJ10gPSAnS3V2YXVzIGthdGVnb3JpYXN0YSc7CiRsYW5nWydpbmZvX2NhdGVnb3J5cGF0aCddID0gJ1RoZSBkaXJlY3RvcnkgbmFtZSBpbnNpZGUgdGhlIHVwbG9hZHMgZGlyZWN0b3J5IHRoYXQgd2lsbCBiZSB1c2VkIHRvIHN0b3JlIGZpbGVzIGluIHRoaXMgY2F0ZWdvcnkuICBJZiB0aGUgZGlyZWN0b3J5IG9mIHRoaXMgbmFtZSBkb2VzIG5vdCBhbHJlYWR5IGV4aXN0LCBpdCBtYXkgYmUgY3JlYXRlZCc7CiRsYW5nWydpbmZvX2Rlc3RuYW1lJ10gPSAnVXNlIHRoZSAmIzAzOTtVcGxvYWQgQXMmIzAzOTsgZmllbGQgdG8gY2hhbmdlIHRoZSBuYW1lIG9mIHRoZSBmaWxlIG9uIHVwbG9hZC4gIExlYXZlIGJsYW5rIHRvIHByZXNlcnZlIHRoZSBmaWxlbmFtZSBhcy1pcy4nOwokbGFuZ1snZXJyb3JfY2FudGNyZWF0ZWRpcmVjdG9yeSddID0gJ0VpIHZvaWRhIGx1b2RhIGhha2VtaXN0b2EnOwokbGFuZ1snZXJyb3Jfbm9tYWlsZXJtb2R1bGUnXSA9ICdDTVNNYWlsZXIgbW9kdWxpYSBlaSB2b2l0dSBhbHVzdGFhJzsKJGxhbmdbJ3VwbG9hZF9ub3RpZmljYXRpb24nXSA9ICdVdXNpIHRpZWRvc3RvIG9uIHVwbG9hZGF0dHUnOwokbGFuZ1sndGl0bGVfZW1haWxfb25fdXBsb2FkJ10gPSAnTCZhdW1sO2hldCZhdW1sOyB1cGxvYWQgaWxtb2l0dXMgb3NvaXR0ZWVzZWVuOic7CiRsYW5nWydlbWFpbF90ZW1wbGF0ZSddID0gJ0VtYWlsIHBvaGphJzsKJGxhbmdbJ3RpdGxlX2R1bW15X2luZGV4X2h0bWwnXSA9ICdDcmVhdGUgZHVtbXkgaW5kZXguaHRtbCBmaWxlcyBpbiBlYWNoIGRpcmVjdG9yeT88YnIvPjxlbT5BbnkgZXhpc3RpbmcgaW5kZXguaHRtbCBmaWxlcyB3aWxsIHJlbWFpbjwvZW0+JzsKJGxhbmdbJ2Fib3V0J10gPSAnVGlldG9qYSc7CiRsYW5nWydlcnJvcl9wZXJtaXNzaW9uZGVuaWVkJ10gPSAnUCZhdW1sOyZhdW1sO3N5IGV2JmF1bWw7dHR5LCB0YXJraXN0YSBvaWtldXRlc2kuJzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90d3JpdGUnXSA9ICdFaSB2b2l0dSBraXJqb2l0dGFhJzsKJGxhbmdbJ2FkZGNhdGVnb3J5J10gPSAnTGlzJmF1bWw7JmF1bWw7IGthdGVnb3JpYSc7CiRsYW5nWydhbGwnXSA9ICdLYWlra2knOwokbGFuZ1snYXJleW91c3VyZSddID0gJ09sZXRrbyB2YXJtYT8nOwokbGFuZ1snYXV0aG9yJ10gPSAnVGVraWomYXVtbDsnOwokbGFuZ1snY2FuY2VsJ10gPSAnUGVydXV0YSc7CiRsYW5nWydjYW5ub3Rtb2RpZnlwYXRoJ10gPSAnKFBvbGt1YSBlaSB2b2lkYSBtdXV0dGFhKSc7CiRsYW5nWydjYXRlZ29yaWVzJ10gPSAnS2F0ZWdvcmlhdCc7CiRsYW5nWydjYXRlZ29yeSddID0gJ0thdGVnb3JpYSc7CiRsYW5nWydtZXNzYWdlX2NhdGVnb3J5YWRkZWQnXSA9ICdLYXRlZ29yaWEgbGlzJmF1bWw7dHR5JzsKJGxhbmdbJ2NoYW5nZWxvZyddID0gJzx1bD4NCjxsaT4NCjxwPlZlcnNpb24gMS4wLiAtIFNlcHRlbWJlciAyMDA1LjwvcD4NCjxwPiBJbml0aWFsIFJlbGVhc2UuPC9wPg0KPC9saT4NCjxsaT4NCjxwPlZlcnNpb24gMS4wMS4gLSBTZXB0ZW1iZXIgMjAwNTwvcD4NCjxwPk1pbm9yIGZpeGVzLjwvcD48L2xpPg0KPGxpPg0KPHA+VmVyc2lvbiAxLjAyLiAtIFNlcHRlbWJlciAyMDA1PC9wPg0KPHA+QWRkZWQgYWJpbGl0eSB0byBzcGVjaWZ5IHNvcnQgb3JkZXI8L3A+DQo8L2xpPg0KPGxpPg0KPHA+VmVyc2lvbiAxLjAzLiAtIFNlcHRlbWJlciAyMDA1PC9wPg0KPHA+Rml4IHJlZ2FyZGluZyBjb25mbGljdCBpbiB0ZW1wbGF0ZSBuYW1lczwvcD4NCjwvbGk+DQo8bGk+DQo8cD5WZXJzaW9uIDEuMDQuIC0gU2VwdGVtYmVyIDIwMDU8L3A+DQo8cD5BZGRlZCBhYmlsaXR5IHRvIHJlLXNjYW4gYSBkaXJlY3RvcnksIGFuZCB0byB1cGxvYWQgZmlsZXMgZnJvbSB0aGUgYWRtaW4gcGFnZTwvcD4NCjwvbGk+DQo8bGk+DQo8cD5WZXJzaW9uIDEuMDUuIC0gU2VwdGVtYmVyIDIwMDU8L3A+DQo8cD5GaXhlZCBzb21lIFBIUCB2YXJpYWJsZSBpc3N1ZXM8L3A+DQo8L2xpPg0KPGxpPg0KPHA+VmVyc2lvbiAxLjA2LiAtIFNlcHRlbWJlciAyMDA1PC9wPg0KPHA+QWRkZWQgYXV0aG9yIGZpZWxkIHRvIHRoZSBhZG1pbiBwYW5lbCB1cGxvYWQgZm9ybSwgYWRkZWQgYSBzdW1tYXJ5IGZpZWxkLCBhbmQgbWFkZSBkZXNjcmlwdGlvbiBhIHRleHQgYXJlYSwgYW5kIGFsbG93IHRoZSB1c2VyIHRvIHNwZWNpZnkgYSBkZXN0aW5hdGlvbiBmaWxlIG5hbWU8L3A+DQo8L2xpPg0KPGxpPg0KPHA+VmVyc2lvbiAxLjA3LiAtIFNlcHRlbWJlciAyMDA1PC9wPg0KPHA+QWRkZWQgdGhlIGFiaWxpdHkgdG8gcmVuYW1lIGZpbGVzIGFuZCBmaXhlZCBhIHNjYW4gZXJyb3I8L3A+DQo8L2xpPg0KPGxpPg0KPHA+VmVyc2lvbiAxLjA4LiAtIFNlcHRlbWJlciAyMDA1PC9wPg0KPHA+QmV0dGVyIGhhbmRsaW5nIG9mIG5hbWVzIHdpdGggc3BhY2VzLCBhbmQgYSBmZXcgbWlub3IgZXJyb3JzIGZpeGVkLiAgQWRkZWQgc3dlZGlzaCB0cmFuc2xhdGlvbiAodGhhbmtzIHdlc3Rpcyk8L3A+PC9saT4NCjxsaT4NCjxwPlZlcnNpb24gMS4xLjAuIC0gT2N0b2JlciAyMDA1PC9wPg0KIDx1bD4NCiAgIDxsaT5Nb2RpZmllZCBBdHRlbXB0VXBsb2FkIGZ1bmN0aW9uIHNvIGl0IGNvdWxkIGJlIGNhbGxlZCBleHRlcm5hbGx5PC9saT4NCiAgIDxsaT5BZGRlZCBHZXRVcGxvYWREZXRhaWxzIGZ1bmN0aW9uIHRoYXQgcmV0dXJucyBhbGwgb2YgdGhlIGRldGFpbHMgYWJvdXQgYSBtb2R1bGUsIGluY2x1ZGluZyBhIGxpbms8L2xpPg0KICAgPGxpPkFkZGVkIFJlZGlyZWN0cyBzbyB0aGF0IHdvcmtpbmcgd2l0aCB0aGUgbW9kdWxlIGlzIGFsb3QgbmljZXIsIGl0IHJldHVybnMgdG8gdGhlIHJpZ2h0IHRhYjwvbGk+DQogICA8bGk+Q2hhbmdlZCB0aGUgZnJvbnQgdGVtcGxhdGUgdG8gbG9vayBhIGxpdHRsZSBiZXR0ZXIgYW5kIG1ha2UgbW9yZSBzZW5zZTwvbGk+DQogICA8bGk+Rml4ZXMgdG8gdGhlIHVwbG9hZHMgc3R1ZmYgc28gdGhhdCB0aGUgZGVzY3JpcHRpb24gaXMgc2V0LCBhbmQgbmFtZSBhbmQgc3VtbWFyeSBhcmUgcHV0IGluIHRoZSByaWdodCBwbGFjZTwvbGk+DQogICA8bGk+Rml4ZXMgdG8gZXZlbiBiZXR0ZXIgaGFuZGxlIHNwYWNlcyBpbiBuYW1lczwvbGk+DQogICA8bGk+T3B0aW9uYWx5IHBsYWNlIGR1bW15IGluZGV4Lmh0bWwgZmlsZXMgaW4gZWFjaCB1cGxvYWQgZGlyZWN0b3J5PC9saT4NCiAgIDxsaT5JZiBzcGVjaWZ5aW5nIGEgZGVzdGluYXRpb24gbmFtZSwgYW5kIG5vIGV4dGVuc2lvbiBpcyBnaXZlbiwgdGhlIGV4dGVuc2lvbiBvZiB0aGUgb3JpZ2luYXRpbmcgZmlsZSAoaWYgYW55IGV4aXN0cyBpcyB1c2VkPC9saT4NCiA8L3VsPg0KIDxwPjxlbT48Yj5JbXBvcnRhbnQhPC9iPjwvZW0+PGJyLz5JdCBpcyBub3QgcG9zc2libGUgdG8gdXBncmFkZSBmcm9tIGFueSBvdGhlciB2ZXJzaW9uIG9mIHRoZSBVcGxvYWRzIG1vZHVsZSB0byAxLjEuMC4gIFRoaXMgaXMgZHVlIHRvIHNvbWUgZXJyb3JzIHRoYXQgd2VyZSBtYWRlIGluIHRoZSBkYXRhYmFzZSByb3V0aW5lcywgYW5kIGV2ZW4gaW4gdGhlIHVwZ3JhZGUgcm91dGluZSBpbiAxLjAuNi4gIFlvdSBtdXN0IGRlLWluc3RhbGwgdGhlIG9sZCB2ZXJzaW9uLCBhbmQgdGhlbiByZS1pbnN0YWxsIHRoZSBuZXcgdmVyZXNpb24uIFRoaXMgd2lsbCBjYXVzZSBzaWduaWZpY2FudCBkaWZmaWN1bHR5IGlmIHlvdSBoYXZlIGRzY3JpcHRpb25zLCBldGMsIGluIHlvdXIgdGFibGVzPC9wPg0KPC9saT4NCjxsaT4NCjxwPlZlcnNpb24gMS4xLjEuIC0gT2N0b2JlciwgMjAwNTwvcD4NCjxwPkZpeGVkIGEgY291cGxlIG9mIG1pbm9yIGJ1Z3MgaW4gdGhlIEdldFVwbG9hZERldGFpbHMgYW5kIGFkZGVkIGFub3RoZXIgbGluayAob3IgYSB1cmwpIHRvIHRoZSB1cGxvYWRlZCBmaWxlLjwvcD4NCjwvbGk+DQo8bGk+DQo8cD5WZXJzaW9uIDEuMS4yLiAtIE9jdG9iZXIsIDIwMDU8L3A+DQo8cD5GaXhlZCB0aGUgVVJMIGZpZWxkIGluIEdldFVwbG9hZERldGFpbHMgdG8gcmV0dXJuIGEgZG93bmxvYWQgbGluayBhbmQgYWRkZWQgYW4gYWJzdXJsIGZpZWxkIHdoaWNoIHJldHVybnMgdGhlIGFic29sdXRlIHBhdGggdG8gdGhlIGZpbGUgb24gdGhlIHdlYnNlcnZlci4gIENsaWNrcyBvbiB0aGlzIGxpbmsgd2lsbCBub3QgYmUgY291bnRlZDwvcD4NCjwvbGk+DQo8bGk+DQo8cD5WZXJzaW9uIDEuMS4zLiAtIE9jdG9iZXIsIDIwMDU8L3A+DQo8cD5GaXhlZCB0aGUgdXBncmFkZSBwcm9ibGVtIGZyb20gdGhlIDEuMC54IHNlcmllcy4gIFVzZXJzIG9mIHRoZSAxLjAueCBzZXJpZXMgc2hvdWxkIGJlIGFibGUgdG8gdXBncmFkZSB0byAxLjEuMyBub3cgd2l0aCBubyBkaWZmaWN1bHR5LiA8Yj5UaG9zZSBhcmUgZmFtb3VzIGxhc3Qgd29yZHMsIHBsZWFzZSBiYWNrdXAgZmlyc3Q8L2I+LiBGaXhlZCB0aGUgY29udGVudCByZWRpcmVjdCB0aGluZ3MgdGhhdCB3ZXJlIGlycml0YXRpbmcgbWUuICBBbHNvIGFkZGVkIGNhdGVnb3J5PWFsbCB0byBsaXN0IGFsbCBvZiB0aGUgdXBsb2FkcyBpbiBhbGwgbGlzdGFibGUgY2F0ZWdvcmllcyA8ZW0+KGxldHMgYWxsIGhvcGUgSSBnb3QgdGhlIHNxbCBmaWd1cmVkIG91dCBwcm9wZXJseSk8L2VtPi48L3A+DQo8L2xpPg0KPGxpPg0KPHA+VmVyc2lvbiAxLjEuNC4gLSBPY3RvYmVyLCAyMDA1PC9wPg0KPHA+QWRkZWQgdGhlIGNvdW50IHBhcmFtZXRlciB0byBsaXN0IG9ubHkgdGhlIGZpcnN0IE4gcmVjb3JkcywgYW5kIGFkZGVkICZxdW90O3N1bW1hcnlsaW5rJnF1b3Q7LCBhbmQgJnF1b3Q7Y2F0ZWdvcnkmcXVvdDsgdG8gdGhlIHRlbXBsYXRlcyBmb3Igd2VzdGlzLiAgRm9yIGV4YW1wbGVzIG9uIGhvdyB0byB1c2UgdGhlbSByZXNldCB5b3VyIHRlbXBsYXRlcyBiYWNrIHRvIGRlZmF1bHQuPC9wPjwvbGk+DQo8bGk+DQo8cD5WZXJzaW9uIDEuMS41LiAtIE5vdmVtYmVyLCAyMDA1PC9wPg0KPHA+QWRkZWQgZW1haWwgbm90aWZpY2F0aW9uIGFuZCBzb21lIGJ1ZyBmaXhlczwvcD4NCjwvbGk+DQo8bGk+DQo8cD5WZXJzaW9uIDEuMS42LiAtIE5vdmVtYmVyLCAyMDA1PC9wPg0KPHA+QWRkZWQgYW4gYXBpIGZ1bmN0aW9uIGFuZCBmaXhlZCBzb21lIHJlZGlyZWN0aW9uIHN0dWZmPC9wPg0KPC9saT4NCjxsaT4NCjxwPlZlcnNpb24gMS4xLjcuIC0gTm92ZW1iZXIsIDIwMDU8L3A+DQo8cD5Nb3JlIEFQSSBmdW5jdGlvbnMsIGFuZCBub3cgaWdub3JlIGRvdCBmaWxlcyB3aGVuIHNjYW5uaW5nLiAgRW1haWwgbm90aWZpY2F0aW9uIGlzIG5vdyBpbi48L3A+DQo8L2xpPg0KPGxpPg0KPHA+VmVyc2lvbiAxLjEuOC4gLSBKYW51YXJ5LCAyMDA2PC9wPg0KPHA+KiBJbXByb3ZlZCBkb2NzIHdydCBhcGFjaGUgYW5kIHBocCBjb25maWdzLjwvcD4NCjxwPiogRml4ZWQgcHJvYmxlbSB3aGVyZSBmaWxlc2l6ZSB3YXMgc2hvd2luZyB1cCBhcyAwLjwvcD4NCjxwPiogTW9kaWZpZWQgcGVybWlzc2lvbnMgdG8gYmUgbW9yZSBncmFudWxhcjwvcD4NCjxwPiogQWRkZWQgc29tZSBjb21tZW50cyBhbmQgdmVyYm9zaXR5IHRvIHRoZSBjYXRlZ29yeSBhbmQgdXBsb2FkcyBmb3JtcyBpbiB0aGUgYWRtaW4gc2VjdGlvbjwvcD4NCjxwPiogQWRkZWQgJnF1b3Q7cmFuZG9tJnF1b3Q7IHNvcnQgb3JkZXI8L3A+DQo8cD4qIFNvbWUgUEhQNSBmaXhlczwvcD4NCjwvbGk+DQo8bGk+DQo8cD5WZXJzaW9uIDEuMS45LiAtIEphbnVhcnksIDIwMDY8L3A+DQo8cD4qIEFkZGVkIHRoZSBhYmlsaXR5IHRvIHVwbG9hZCBhIHRodW1ibmFpbCBpbWFnZTwvcD4NCjxwPiogU29tZSBpbXByb3ZlZCBhdWRpdGluZzwvcD4NCjxwPiogeG1sIG5vdyBhZGRlZCB0byB0aGUgZGVmYXVsdCBmaWxlIHR5cGVzIChuZXcgaW5zdGFsbHMgb25seSk8L3A+DQo8cD4qIEFkZGVkIGEgY29uZmlybWF0aW9uIG1lc3NhZ2UgdG8gdGhlIHJlc2V0IHRvIGRlZmF1bHRzIGJ1dHRvbnMgb2YgdGhlIHRlbXBsYXRlIHBhZ2VzLjwvcD4NCjxwPiogQWRkZWQgdGhlIGZpbGVfZXh0ZW5zaW9ucyBwYXJhbWV0ZXIgZm9yIHRoZSB1cGxvYWQgZm9ybTwvcD4NCjxwPiogVGhlIGN1cnJlbnQgY2F0ZWdvcnkgc2VsZWN0ZWQgaW4gdGhlIGZpbGVzIGZpbHRlciBpcyBzdGlja3kuDQo8cD4qIEFkZGVkIGEgcHJlZmVyZW5jZSB0byBlbmZvcmljZSBmaWxlbmFtZSBleHRlbnNpb25zIChkZWZhdWx0cyB0byBvbik8L3A+DQo8cD4qIEFkZGVkIGEgbGluayB0byB0aGUgZWRpdCBwYWdlLCBpbiB0aGUgbmFtZSBjb2x1bW4gb2YgdGhlIGZpbGVzIGxpc3QuPC9wPg0KPHA+KiBNaW5vciBjaGFuZ2VzIHRvIHRoZSBsYXlvdXQgYW5kIHRleHQgdG8gYWRkIGNsYXJpdHkuPC9wPg0KPHA+KiBBZGRlZCBkb3dubG9hZF91cmwgYXMgYW4gYXZhaWxhYmxlIHNtYXJ0eSB0YWcgaW4gdGhlIHRlbXBsYXRlczwvcD4NCjxsaT4NCjxwPlZlcnNpb24gMS4xLjEwLiAtIEZlYnJ1YXJ5LCAyMDA2PC9wPg0KPHA+KiBTdW1tYXJ5IG5vdyBkZWZhdWx0cyB0byB0aGUgZmlsZW5hbWUgKHdpdGhvdXQgdGhlIGV4dGVuc2lvbikgaWYgbm9uZSBpcyBzcGVjaWZpZWQ8L3A+DQo8cD4qIE5vdyBjb3JyZWN0bHkgaGFuZGxlIGlmIHRoZSB0aHVtYm5haWwgZXh0ZW5zaW9uIGlzIG5vdCBpbiB0aGUgYWNjZXB0ZWQgZXh0ZW5zaW9uIGxpc3Q8L3A+DQo8cD4qIE5vIGxvbmdlciBkaXNwbGF5IGFueSBjb250ZW50IGluIHRoZSBmaWxlcyB0YWIgaWYgdGhlcmUgYXJlIG5vIGNhdGVnb3JpZXMgZGVmaW5lZDwvcD4NCjxwPiogRGlzcGxheSBhIGxpbmsgaW4gdGhlIGVycm9yIHBhZ2UgdGhhdCB0YWtlcyB5b3UgYmFjayB0byB0aGUgbWFpbiBhZG1pbiBwYW5lbDwvcD4NCjxwPiogQWxsb3cgZm9yIHJlcGxhY2luZyBvZiB1cGxvYWRlZCBmaWxlczwvcD4NCjwvbGk+DQo8bGk+DQo8cD5WZXJzaW9uIDEuMS4xMS4gLSBNYXJjaCwgMjAwNjwvcD4NCjxwPkFkZGVkIHRoZSBhYmlsaXR5IGZvciBhIGxpbmsgdG8gYSBkZXRhaWxlZCBwYWdlIHdoZW4gaW4gc3VtbWFyeSBtb2RlLjwvcD4NCjxwPlNwbGl0IHRoZSBkZWZhdWx0IGFjdGlvbiBhbmQgZGVmYXVsdGFkbWluIGFjdGlvbnMgaW50byBzZXBhcmF0ZSBmaWxlcywgZm9yIGEgYml0IG9mIG1lbW9yeSBpbXByb3ZlbWVudCwgaG9wZWZ1bGx5PC9wPg0KPHA+QWRkIHRoZSBhYmlsaXR5IHRvIHJlZGlyZWN0IHRvIGFub3RoZXIgcGFnZSBhZnRlciBhIGZyb250ZW5kIHVzZXIgdXBsb2FkZWQgYSBmaWxlPC9wPg0KPC9saT4NCjxsaT4NCjxwPlZlcnNpb24gMS4xLjEyLiAtIE1hcmNoLCAyMDA2PC9wPg0KPHA+QWRkZWQgdGhlIHNpbmdsZXN1bW1hcnkgbW9kZSB0byBkaXNwbGF5IGEgc2luZ2xlIHVwbG9hZCBpbiBzdW1tYXJ5IG1vZGU8L1A+DQo8L2xpPg0KPGxpPg0KPHA+VmVyc2lvbiAxLjEuMTMuIC0gQXByaWwsIDIwMDY8L3A+DQo8cD5BZGRlZCBvcHRpb25hbCBmaWx0ZXJpbmcgb24gdGhlIGZyb250ZW5kLCBhbmQgYSBjb3VwbGUgb2YgZXh0cmEgcGFyYW1ldGVycyB0byBnbyB3aXRoIGl0PC9wPg0KPHA+Rml4ZWQgYSBwcm9ibGVtIHdoZXJlIGl0IHdvdWxkIGFsbG93IHlvdSB0byBlbnRlciBhIGJsYW5rIHBhdGggd2hlbiBjcmVhdGluZyBhIGNhdGVnb3J5PC9wPg0KPHA+U3BsaXQgc3R1ZmYgaW50byAoc29tZSkgc2VwYXJhdGUgYWN0aW9uIGZpbGVzIGZvciBzb21lIGhvcGVmdWwgcGVyZm9ybWFuY2UgaW5jcmVhc2VzPC9wPg0KPHA+QWRkZWQgY29weXJpZ2h0IG5vdGljZXM8L3A+DQo8cD5DaGFuZ2VkIChvcHRpb25hbCkgZGVwZW5kZW5jeSBmcm9tIFVzZXJJRCB0byBGcm9udEVuZFVzZXJzIE1vZHVsZS48L3A+DQo8cD5DaGFuZ2VkIF9zY2FuRGlyZWN0b3J5IHRvIGFuIEFQSSBmdW5jdGlvbiBTY2FuRGlyZWN0b3J5IGFuZCB0aGVuIGFkZGVkIFNtYXJ0U2NhbkRpcmVjdG9yeSB0byBzY2FuIHRoZSBkaXJlY3RvcnkgYmVmb3JlIGRpc3BsYXlpbmcgdGhlIHN1bW1hcnkgb3IgZGV0YWlsIGxpc3RpbmcgdG8gaGFuZGxlIHRoZQ0KY2FzZSB3aGVyZSBzb21lYm9keSB1cGxvYWRlZCBmaWxlcyB2aWEgRlRQIG9yIHNvbWV0aGluZyBhbmQgZGlkIG5vdCBnbyBpbnRvIHRoZSBhZG1pbiBzZWN0aW9uIHRvIHVwZGF0ZSB0aGUgY2F0ZWdvcmllcy48L3A+DQo8cD5Db3JyZWN0aW9uIHRvIGFsbCBkYiBhY2Nlc3Mgc3R1ZmYuIEhvcGVmdWxseSBwcm92aWRlcyBhIHBlcmZvcm1hbmNlIGluY3JlYXNlLjwvcD4NCjxwPkZpeGVzIHRvIHRoZSBhYm91dCBzdHVmZiwgbm93IHVzZSBDcmVhdGVQYXJhbWV0ZXI8L3A+DQo8L2xpPg0KPC91bD4nOwokbGFuZ1snZGF0ZSddID0gJ1AmYXVtbDtpdiZhdW1sO20mYXVtbDsmYXVtbDtyJmF1bWw7JzsKJGxhbmdbJ2RhdGV1cGxvYWRlZCddID0gJ0xpcyZhdW1sO3lzIHAmYXVtbDtpdiZhdW1sO20mYXVtbDsmYXVtbDtyJmF1bWw7JzsKJGxhbmdbJ2RlZmF1bHQnXSA9ICdPbGV0dWtzZXQnOwokbGFuZ1snZGVsZXRlJ10gPSAnUG9pc3RhJzsKJGxhbmdbJ2Rlc2NyaXB0aW9uJ10gPSAnS3V2YXVzJzsKJGxhbmdbJ2Rlc3RuYW1lJ10gPSAnVXBsb2FkIEFzJzsKJGxhbmdbJ2RldGFpbF90ZW1wbGF0ZSddID0gJ0RldGFpbCBUZW1wbGF0ZSc7CiRsYW5nWydkb3dubG9hZGVkJ10gPSAnVGllZG9zdCAlcyBvbiBsYWRhdHR1Lic7CiRsYW5nWydkb3dubG9hZHMnXSA9ICdMYXRhdWtzZXQnOwokbGFuZ1snZWRpdCddID0gJ011b2trYWEnOwokbGFuZ1snZWRpdGNhdGVnb3J5J10gPSAnTXVra2FhIGthdGVnb3JpYWEnOwokbGFuZ1snZWRpdHVwbG9hZCddID0gJ011b2trYWEgdXBsb2FkaWEnOwokbGFuZ1snZXJyb3InXSA9ICdWaXJoZSEnOwokbGFuZ1snZXJyb3JfcGF0aGludXNlJ10gPSAnS2F0ZWdvcmlhIHNhbWFsbGEgcG9sdWxsYSBvbiBqbyBvbGVtYXNzYS4nOwokbGFuZ1snZXJyb3JfY2F0ZWdvcnlleGlzdHMnXSA9ICdWaXJoZTogS2F0ZWdvcmlhIG9uIGpvIG9sZW1hc3NhISc7CiRsYW5nWydlcnJvcl9jYXRlZ29yeW5vdGVtcHR5J10gPSAnVmlyaGU6IEVpIHZvaWRhIHR1aG90YSBrYXRlZ29yaWFhIGpva2EgZWkgb2xlIHR5aGomYXVtbDshJzsKJGxhbmdbJ2Vycm9yX2NhdGVnb3J5bm90Zm91bmQnXSA9ICdWaXJoZTogS2F0ZWdvcmlhYSBlaSBsJm91bWw7eWR5ISc7CiRsYW5nWydlcnJvcl9kYmVycm9yJ10gPSAnVmlyaGU6IFRpZXRva2FudGEgdmlyaGUhJzsKJGxhbmdbJ2Vycm9yX2VtcHR5Y2F0ZWdvcnknXSA9ICdWaXJoZTogVHloaiZhdW1sOyBrYXRlZ29yaWEhJzsKJGxhbmdbJ2Vycm9yX2VtcHR5cGF0aCddID0gJ1ZpcmhlOiBUeWhqJmF1bWw7IHBvbGt1ISc7CiRsYW5nWydlcnJvcl9maWxlZXhpc3RzJ10gPSAnVmlyaGU6IFRpZWRvc3RvICVzIG9uIGpvIG9sZW1hc3NhISc7CiRsYW5nWydlcnJvcl9maWxlbm90Zm91bmQnXSA9ICdWaXJoZTogVGllZG9zdG9hICVzIGVpIGwmb3VtbDt5ZHkhJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ1ZpcmhlOiBLYWlra2lhIHBhcmFtZXRyZWphIGVpIG9sZSBtJmF1bWw7JmF1bWw7cml0ZWx0eSBtb2R1bGkga3V0c3Vzc2EhJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRhdXRob3InXSA9ICdWaXJoZTogdmlyaGVlbGxpbmVuICh0YWkgdHloaiZhdW1sOykgdGVraWomYXVtbDsnOwokbGFuZ1snZXJyb3JfaW52YWxpZGNhdGVnb3J5J10gPSAnVmlyaGU6IHZpcmhlZWxsaW5lbiAodGFpIHR5aGomYXVtbDspIGthdGVnb3JpYSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZGVzY3JpcHRpb24nXSA9ICdWaXJoZTogdmlyaGVlbGxpbmVuICh0YWkgdHloaiZhdW1sOykga3V2YXVzJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRmaWxlJ10gPSAnVmlyaGU6IHZpcmhlZWxsaW5lbiAodGFpIHR5aGomYXVtbDspIHRpZWRvc3RvbmltaSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXBsb2FkZmlsZW5hbWUnXSA9ICdWaXJoZTogdmlyaGVlbGxpbmVuIHRpZWRvc3RvbmltaSAodGFpIHAmYXVtbDsmYXVtbDt0ZSkgKCVzKSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXBsb2FkaWQnXSA9ICdWaXJoZTogdmlyaGVlbGxpbmVuIGxhdGF1cyBpZCc7CiRsYW5nWydlcnJvcl9ub2ZpbGVzJ10gPSAnVmlyaGU6IGVpIHZhc3RhYXZpYSB0aWVkb3N0b2phISc7CiRsYW5nWydmaWxlcyddID0gJ1RpZWRvc3RvdCc7CiRsYW5nWydmaXhtZSddID0gJ0tvcmphYSB2JmF1bWw7bGlseSZvdW1sO25uaXQnOwokbGFuZ1snZnJpZW5kbHluYW1lJ10gPSAnVGllZG9zdG90IChVcGxvYWRzIE1vZHVsZSknOwokbGFuZ1snaGVscCddID0gJzxoMz5XaGF0IERvZXMgVGhpcyBEbz88L2gzPg0KPHA+SXQgaXMgYSBtb2R1bGUgZm9yIGFsbG93aW5nIHBlb3BsZSB0byB1cGxvYWQgYW5kIGRvd25sb2FkIGZpbGVzIHRvIGFuZCBmcm9tIHlvdXIgc2l0ZS4gIEl0IGtlZXBzIHRyYWNrIG9mIHdobyB1cGxvYWRlZCBhIGZpbGUsIGFuZCB3aG8gaGFzIGRvd25sb2FkZWQgaXQuICBBcyB3ZWxsLCB5b3UgY2FuIHNvcnQgZmlsZXMgaW50byBjYXRlZ29yaWVzLCBhbmQgbWFuYWdlIHRoZSBmaWxlcyB0aGF0IHdlcmUgdXBsb2FkZWQgbGlrZSBldmVyeSBhZG1pbmlzdHJhdG9yIHdvdWxkIGRvPC9wPiANCjxoMz5Ib3cgRG8gSSBVc2UgSXQ8L2gzPg0KPHA+VG8gdXNlIHRoaXMgbW9kdWxlLCB0byBhbGxvdyB1c2VycyB0byB1cGxvYWQgZmlsZXMgdG8geW91ciBzaXRlLCB5b3Ugc2hvdWxkIGluc3RhbGwgdGhlIG1vZHVsZSwgYW5kIHRoZW4gY3JlYXRlIG9uZSBvciBtb3JlIGNhdGVnb3JpZXMgKGEuay5hKSBkaXJlY3RvcmllcyBmb3IgdGhlIHVwbG9hZGVkIGZpbGVzIHRvIGdvIGludG8uIFRoZW4gYWRkIGEgdGFnIGludG8gYSBwYWdlIG9yIHRlbXBsYXRlIHNvbWV3aGVyZSBsaWtlIHtjbXNfbW9kdWxlIG1vZHVsZT0mcXVvdDtVcGxvYWRzJnF1b3Q7IGNhdGVnb3J5PSZxdW90O3NvbWVjYXRlZ29yeSZxdW90OyBtb2RlPSZxdW90O3NvbWVtb2RlJnF1b3Q7fS4gIFdoZXJlIG1vZGUgbWF0Y2hlcyBvbmUgb2YgdGhlIG1vZGVzIGxpc3RlZCBiZWxvdy4gIFRoZSBvdXRwdXQgd2lsbCBkaWZmZXIgZGVwZW5kaW5nIHVwb24gd2hpY2ggbW9kZSB5b3Ugc2VsZWN0LjwvcD4NCjxwPlRoaXMgbW9kdWxlIGNhbiB1c2UgdGhlIEZyb250ZW5kVXNlcnMgbW9kdWxlIChvcHRpb25hbCkgdG8gZ2V0IGluZm9ybWF0aW9uIGFib3V0IGFueSBjdXJyZW50bHkgbG9nZ2VkIGluIHVzZXJzIHRvIHBhcnRseSBmaWxsIGluIHRoZSBmb3JtIHdoZW4gdXBsb2FkaW5nIGZpbGVzOzwvcD4NCjxoMz5QZXJtaXNzaW9uczwvaDM+DQo8dWw+DQo8bGk+PGVtPk1hbmFnZSBVcGxvYWRzPC9lbT4gcGVybWlzc2lvbiBpcyBuZWVkZWQgdG8gbWFuYWdlIGNhdGVnb3JpZXMsIGFuZCB0aGUgZmlsZXMgd2l0aGluIHRoZW0uPC9saT4NCjxsaT48ZW0+TW9kaWZ5IFRlbXBsYXRlczwvZW0+IHBlcm1pc3Npb24gaXMgbmVlZGVkIGVkaXQgYW55IG9mIHRoZSB0ZW1wbGF0ZXMuPC9saT4NCjxsaT48ZW0+TW9kaWZ5IFNpdGUgUHJlZmVyZW5jZXMvZW0+IHBlcm1pc3Npb24gaXMgbmVlZGVkIGFueSBvZiB0aGUgZmlsZSBzZXR0aW5ncy48L2xpPg0KPC91bD4NCjxoMz5FbWFpbGluZzwvaDM+DQo8cD5UaGlzIG1vZHVsZSBpcyBjYXBhYmxlIG9mIHNlbmRpbmcgYW4gZW1haWwgd2hlbmV2ZXIgYSBmaWxlIGlzIHVwbG9hZGVkLCBzZWUgdGhlIHByZWZlcmVuY2VzIHRhYi4gIEhvd2V2ZXIsIHRvIGRvIHRoaXMgdGhlIDxiPkNNU01haWxlcjwvYj4gcGFja2FnZSBtdXN0IGJlIGluc3RhbGxlZCBhbmQgY29uZmlndXJlZC4gIFRoaXMgaXMgYW4gPGVtPm9wdGlvbmFsPC9lbT4gc3RlcCwgYW5kIGlmIHRoZSBDTVNNYWlsZXIgbW9kdWxlIGlzIG5vdCBpbnN0YWxsZWQsIG5vdGhpbmcgd2lsbCBiZSBkaXNwbGF5ZWQgdG8gdGhlIHVzZXIsIG9ubHkgYSBsb2cgbWVzc2FnZSB3aWxsIGJlIHBsYWNlZCBpbnRvIHRoZSBhZG1pbiBsb2c8L3A+DQo8aDM+U3lzdGVtIFNldHRpbmdzPC9oMz4NCjxwPjxiPk5vdGU6PC9iPiBUaGlzIG1vZHVsZSBkb2VzIG5vdCBieXBhc3Mgb3IgZ2V0IHBhc3QgYW55IGZpbGUgc2l6ZSBsaW1pdGF0aW9ucyBpbiBwaHAuICBJdCB3b3JrcyBpbiBjb25qdW5jdGlvbiB3aXRoIHRoZW0uICBUaGVyZWZvcmUgeW91IG1heSBuZWVkIHRvIG1vZGlmeSB5b3VyIHBocC5pbmkgZmlsZSBhbmQvb3IgeW91ciBodHRwZC5jb25mIGZpbGUocykgdG8gYWxsb3cgeW91IHRvIHVwbG9hZCBmaWxlcyBhcyBsYXJnZSBhcyB3aGF0IHlvdSBoYXZlIHNldCBpbiB0aGUgdXBsb2FkcyBtb2R1bGUgcHJlZmVyZW5jZXMuPC9wPg0KPGgzPkFwYWNoZSBOb3RlczwvaDM+DQo8cD5JbiBvcmRlciB0byBhbGxvdyBsYXJnZSBmaWxlIHVwbG9hZHMsIHlvdSBtYXkgbmVlZCB0byBtb2RpZnkgdGhlIHVwbG9hZF9tYXhfZmlsZXNpemUgcGFyYW1ldGVyIGluIHlvdXIgcGhwLmluaSAgSW4gYWRkaXRpb24sIHRoZSBMaW1pdFJlcXVlc3RCb2R5IHBhcmFtZXRlciBpbiB5b3VyIGFwYWNoZSBjb25maWd1cmF0aW9uLCBtYXkgbmVlZCB0byBiZSBhZGp1c3RlZCB0byBtYXRjaCB0aGUgdXBsb2FkX21heF9maWxlc2l6ZSBwYXJhbWV0ZXI8L3A+DQo8cD5Ob3RlOiAgdGhlIHVwbG9hZF9tYXhfZmlsZXNpemUgcGFyYW1ldGVyIGNhbiBiZSBzcGVjaWZpZWQgaW4gYnl0ZXMsIGtpbG9ieXRlcywgb3IgbWVnYWJ5dGVzLCBob3dldmVyIHRoZSBMaW1pdFJlcXVldEJvZHkgcGFyYW1ldGVyIGlzIG9ubHkgc3BlY2lmaWVkIGluIGJ5dGVzPC9wPic7CiRsYW5nWydpZCddID0gJ0lkJzsKJGxhbmdbJ2luc3RhbGxlZCddID0gJ01vZHV1bGluIHZlcnNpbyAlcyBhc2VubmV0dHUuJzsKJGxhbmdbJ2lwX2FkZHJlc3MnXSA9ICdJUCBvc29pdGUnOwokbGFuZ1snbW9kZGVzY3JpcHRpb24nXSA9ICdNb2R1dWxpLCBqb2thIHNhbGxpaSBrJmF1bWw7eXR0JmF1bWw7amllbiBsYWRhdGEgdGllZG9zdG9qYSBzaXZ1c3RvbGxlIGphIHlsbCZhdW1sO3BpdCZhdW1sO2omYXVtbDtuIGhhbGxpdGEgbiZhdW1sO2l0JmF1bWw7IHRpZWRvc3RvamEgJzsKJGxhbmdbJ25hbWUnXSA9ICdOaW1pJzsKJGxhbmdbJ3JlbmFtZW1lc3NhZ2UnXSA9ICdWYWloZGEgbmltaSB0YWkgdGVlIHV1ZGVsbGVlbm5pbWUmYXVtbDttaW5lbic7CiRsYW5nWydwYXRoJ10gPSAnUG9sa3UnOwokbGFuZ1sncGF0aG1lc3NhZ2UnXSA9ICdWYWloZGEga2F0ZWdvcmlhbiBuaW1pIHRhaSBzaWlyciZhdW1sOyB0aWVkb3N0byB0b2lzZWVuIGhha2VtaXN0b29uJzsKJGxhbmdbJ3BhdGhpbnVwbG9hZHMnXSA9ICcoU3VodGVlbGxpbmVuIHBvbGt1IHVwbG9hZHMtaGFrZW1pc3Rvb24gbiZhdW1sO2hkZW4pJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsJ10gPSAnUG9zdCBJbnN0YWxsIE1lc3NhZ2UsIGUuZy4sIEJlIHN1cmUgdG8gc2V0ICZxdW90O01hbmFnZSBVcGxvYWRzJnF1b3Q7IHBlcm1pc3Npb25zIHRvIHVzZSB0aGlzIG1vZHVsZSEnOwokbGFuZ1sncG9zdHVuaW5zdGFsbCddID0gJ1RoZSBVcGxvYWRzIG1vZHVsZSBoYXMgYmVlbiBzdWNjZXNzZnVsbHkgcmVtb3ZlZC4gIE5vIGZpbGVzIGhhdmUgYmVlbiByZW1vdmVkIGZyb20geW91ciB1cGxvYWRzIGRpcmVjdG9yeSwgYW5kIGZpbGUgaW50ZWdyaXR5IGlzIGludGFjdCc7CiRsYW5nWydwcmVmZXJlbmNlcyddID0gJ0FzZXR1a3NldCc7CiRsYW5nWydwcmVmc3VwZGF0ZWQnXSA9ICdNb2R1bGluIGFzZXR1a3NldCBwJmF1bWw7aXZpdGV0dHknOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5ZGVzYyddID0gJ0t1dmF1cyc7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnlsaXN0YWJsZSddID0gJ1RpZWRvc3RvdCB0JmF1bWw7c3MmYXVtbDsgaGFrZW1pc3Rvc3NhIHZvaWRhYW4gbGlzdGF0YSc7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnluYW1lJ10gPSAnS2F0ZWdvcmlhbiBuaW1pJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeXBhdGgnXSA9ICdQYWx2ZWxpbWVuIHBvbGt1JzsKJGxhbmdbJ3Byb21wdF9kZWxldGVkaXJlY3RvcnknXSA9ICdUdWhvYSBrYXRlZ29yaWFuIGhha2VtaXN0bz8nOwokbGFuZ1sncHJvbXB0X21heF91cGxvYWRzaXplJ10gPSAnTWFrc2ltaSB0aWVkb3N0b2tva28gKEtiKSc7CiRsYW5nWydwcm9tcHRfdmFsaWRfdXBsb2FkZXh0ZW5zaW9ucyddID0gJ0h5diZhdW1sO2tzeXR5dCB0aWVkb3N0b3AmYXVtbDsmYXVtbDt0dGVldCc7CiRsYW5nWydzY2FuJ10gPSAnU2thbm5hYSc7CiRsYW5nWydzZWxlY3RjYXRlZ29yeSddID0gJ1ZhbGl0c2Uga2F0ZWdvcmlhJzsKJGxhbmdbJ3NpemUnXSA9ICdLb2tvJzsKJGxhbmdbJ3NpemVrYiddID0gJ0tva28gKEtiKSc7CiRsYW5nWydzdWJtaXQnXSA9ICdMJmF1bWw7aGV0JmF1bWw7JzsKJGxhbmdbJ3N1bW1hcnlfdGVtcGxhdGUnXSA9ICdLb29zdGUgcG9oamEnOwokbGFuZ1snc3VtbWFyeSddID0gJ0tvb3N0ZSc7CiRsYW5nWyd0aXRsZV9hZG1pbl9wYW5lbCddID0gJ1VwbG9hZHMgTW9kdWxlJzsKJGxhbmdbJ3RpdGxlX21vZF9hZG1pbiddID0gJ01vZHVsaW4gaGFsbGludGFwYW5lZWxpJzsKJGxhbmdbJ3RpdGxlX21vZF9wcmVmcyddID0gJ01vZHVsaW4gYXNldHVrc2V0JzsKJGxhbmdbJ3RpdGxlX3NpbmdfbG91ZGx5J10gPSAnU2luZyBMb3VkbHk/JzsKJGxhbmdbJ3RpdGxlX3N1Ym5ldF9leGNsdXNpb25zJ10gPSAnJkF1bWw7bCZhdW1sOyBrZXImYXVtbDsmYXVtbDsgc3RhdGlzdGlpa2thIGFsaXZlcmtvaXN0YSc7CiRsYW5nWyd0aXRsZV92YWxpZF91cGxvYWRleHRlbnNpb25zJ10gPSAnSHl2JmF1bWw7a3N5dHl0IHRpZWRvc3RvcCZhdW1sOyZhdW1sO3R0ZWV0JzsKJGxhbmdbJ3VuaW5zdGFsbGVkJ10gPSAnTW9kdWxpIHBvaXN0ZXR0dSc7CiRsYW5nWyd1cGdyYWRlZCddID0gJ01vZHVsaSBwJmF1bWw7aXZpdGV0dHkgdmVyc2lvb24gJXMuJzsKJGxhbmdbJ3VwbG9hZCddID0gJ0xhdGFhJzsKJGxhbmdbJ3VwbG9hZGVkJ10gPSAnVGllZG9zdG8gJXMgb24gdXBsb2FkYXR0dSBrJmF1bWw7eXR0JmF1bWw7aiZhdW1sO24gJXMgdG9pbWVzdGEuJzsKJGxhbmdbJ3JlcGxhY2VkJ10gPSAnVGllZG9zdG8gJXMgb24ga29ydmF0dHUgdGllZG9zdG9sbGEgJXMuJzsKJGxhbmdbJ2RlbGV0ZWQnXSA9ICdUaWVkb3N0byAlcyBvbiBwb2lzdGV0dHUuJzsKJGxhbmdbJ3VwbG9hZGZvcm1fdGVtcGxhdGUnXSA9ICdVcGxvYWQgVGVtcGxhdGUnOwokbGFuZ1sndXNlcm5hbWUnXSA9ICdLJmF1bWw7eXR0JmF1bWw7aiZhdW1sO25pbWknOwokbGFuZ1snd2FybmluZ19kZWxldGVjYXRlZ29yeSddID0gJ1ZBUk9JVFVTOiBLYXRlZ29yaW9pZGVuIHR1aG9hbWluZW4gc2FhdHRhYSBrYWRvdHRhYSB0aWVkb3N0b2phJzsKJGxhbmdbJ3dlbGNvbWVfdGV4dCddID0gJzxwPldlbGNvbWUgdG8gdGhlIFVwbG9hZHMgTW9kdWxlIGFkbWluIHNlY3Rpb24uIFNvbWV0aGluZyBlbHNlIHdvdWxkIHByb2JhYmx5IGdvIGhlcmUgaWYgdGhlIG1vZHVsZSBhY3R1YWxseSBkaWQgc29tZXRoaW5nLjwvcD4nOwokbGFuZ1sndXRtYSddID0gJzE1Njg2MTM1My4xOTU5NTQ3MTkzLjEyMTM4NjU3ODMuMTIxMzg3NzY0Ny4xMjEzODgxMzU3LjUnOwokbGFuZ1sndXRtYyddID0gJzE1Njg2MTM1Myc7CiRsYW5nWyd1dG16J10gPSAnMTU2ODYxMzUzLjEyMTM4ODEzNTcuNS4zLnV0bWNjbj0ocmVmZXJyYWwpfHV0bWNzcj1kZXYuY21zbWFkZXNpbXBsZS5vcmd8dXRtY2N0PS9mb3J1bS9mb3J1bS5waHB8dXRtY21kPXJlZmVycmFsJzsKJGxhbmdbJ3V0bWInXSA9ICcxNTY4NjEzNTMnOwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lang/ext/fr_FR.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2ZpcnN0cGFnZSddID0gJ1ByZW1pJmVncmF2ZTtyZSBwYWdlJzsKJGxhbmdbJ3ByZXZwYWdlJ10gPSAnUGFnZSBwciZlYWN1dGU7YyZlYWN1dGU7ZGVudGUnOwokbGFuZ1snbmV4dHBhZ2UnXSA9ICdQQWdlIHN1aXZhbnRlJzsKJGxhbmdbJ2xhc3RwYWdlJ10gPSAnRGVybmkmZWdyYXZlO3JlIHBhZ2UnOwokbGFuZ1snZmlyc3RwYWdlX2Fycm93J10gPSAnPDwnOwokbGFuZ1sncHJldnBhZ2VfYXJyb3cnXSA9ICc8JzsKJGxhbmdbJ25leHRwYWdlX2Fycm93J10gPSAnPic7CiRsYW5nWydsYXN0cGFnZV9hcnJvdyddID0gJz4+JzsKJGxhbmdbJ3BhZ2UnXSA9ICdQYWdlICc7CiRsYW5nWydvZiddID0gJ0RlJzsKJGxhbmdbJ3Byb21wdF9ncm91cGxpc3QnXSA9ICdHcm91cGUgRkVVIGF1dG9yaXMmZWFjdXRlOyc7CiRsYW5nWydpbmZvX2dyb3VwbGlzdCddID0gJ1MmZWFjdXRlO2xlY3Rpb25uZXogbGVzIGdyb3VwZXMgRkVVIHF1aSBzb250IGF1dG9yaXMmZWFjdXRlO3MgJmFncmF2ZTsgYWNjJmVhY3V0ZTtkZXIgJmFncmF2ZTsgZGVzIGZpY2hpZXJzIGRhbnMgY2V0dGUgY2F0JmVhY3V0ZTtnb3JpZS4gRCZlYWN1dGU7cyZlYWN1dGU7bGVjdGlvbm5lciB0b3V0ZXMgbGVzIGVudHImZWFjdXRlO2VzIHBvdXIgcGVybWV0dHJlICZhZ3JhdmU7IHRvdXMgbCBhY2MmZWFjdXRlO3MnOwokbGFuZ1sndGl0bGVfc2NhbiddID0gJ0JhbGF5YWdlIHBvdXIgbGVzIG5vdXZlYXV4IGZpY2hpZXJzIGRhbnMgY2V0dGUgY2F0JmVhY3V0ZTtnb3JpZSc7CiRsYW5nWyd0aXRsZV9jcmVhdGVfdGh1bWJuYWlscyddID0gJ0JhbGF5YWdlIHBvdXIgbGVzIG5vdXZlYXV4IGZpY2hpZXJzIGRhbnMgY2V0dGUgY2F0JmVhY3V0ZTtnb3JpZS4nOwokbGFuZ1snY3JlYXRlX3RodW1ibmFpbHMnXSA9ICdDciZlYWN1dGU7ZXIgdmlnbmV0dGVzJzsKJGxhbmdbJ3RpdGxlX2NyZWF0ZV90aHVtYm5haWwnXSA9ICcocmUpQ3ImZWFjdXRlO2VyIGxhIHZpZ25ldHRlIHBvdXIgY2UgZmljaGllcic7CiRsYW5nWydjcmVhdGVfdGh1bWJuYWlsJ10gPSAnQ3ImZWFjdXRlO2VyIHZpZ25ldHRlcyc7CiRsYW5nWydlcnJvcl9wYXRoZXJyb3InXSA9ICdSJmVhY3V0ZTtwZXJ0b2lyZSBpbXBvc3NpYmxlICZhZ3JhdmU7IG91dnJpciAoIHByb2JsZW1lIGRlIGRyb2l0cyA/KSc7CiRsYW5nWyd0aXRsZV9kb3dubG9hZF9jaHVua3NpemUnXSA9ICdUYWlsbGUgZGUgY2hhcXVlIG1vcmNlYXUgdCZlYWN1dGU7bCZlYWN1dGU7Y2hhcmdlciZuYnNwOyc7CiRsYW5nWydpbmZvX2Rvd25sb2FkX2NodW5rc2l6ZSddID0gJ0FqdXN0ZXIgY2UgcGFyYW0mZWdyYXZlO3RyZSBhZmYmZWFjdXRlO2N0ZXJhIGxhIHZpdGVzc2UgZGUgdCZlYWN1dGU7bCZlYWN1dGU7Y2hhcmdlbWVudCBldCBwZXV0IGFpZGVyIGRhbnMgbGVzIGVudmlyb25uZW1lbnRzICZhZ3JhdmU7IGZhaWJsZSBtJmVhY3V0ZTttb2lyZSc7CiRsYW5nWyd3YXJuaW5nX3NhZmVfbW9kZSddID0gJ1BIUCYjMDM5O3MgTW9kZSBkZSBzZWNvdXIgYWN0aXYmZWFjdXRlOy4gQ2VsYSBwZXV0IHBvc2VyIHVuIHByb2JsJmVncmF2ZTttZSBhdSBjaGFyZ2VtZW50IChwZXJtaXNzaW9ucyksIGV0IHBldXQgYXVzc2kgaW50ZXJmJmVhY3V0ZTtyJmVhY3V0ZTsgYXZlYyBsYSBjYXBhY2l0JmVhY3V0ZTsgZHUgbW9kdWxlICZhZ3JhdmU7IGxpcmUgbGUgZmljaGllciBpbmkuIFZvdXMgZXRlcyBpbnZpdCZlYWN1dGU7ICZhZ3JhdmU7IGNvbnRhY3QmZWFjdXRlOyB2b3RyZSBwcm92aWRlciBwb3VyIHImZWFjdXRlO3NvdWRyZSBjZSBwcm9ibCZlZ3JhdmU7bWUuJzsKJGxhbmdbJ3BhcmFtX2RldGFpbHBhZ2UnXSA9ICdVdGlsZSBwb3VyIGwmIzAzOTthZmZpY2hhZ2UgZCYjMDM5O3VuIHJhcHBvcnQgZCZlYWN1dGU7dGFpbGwmZWFjdXRlOyBlbiB1dGlsaXNhbnQgdW4gYXV0cmUgbW9kJmVncmF2ZTtsZSBkZSBwYWdlLCBjZSBwYXJhbSZlZ3JhdmU7dHJlIHByZW5kIGwmIzAzOTtpZGVudGlmaWFudCAoaWQpIGRlIGxhIHBhZ2Ugb3UgbCYjMDM5O0FsaWFzIGRlIGxhIHBhZ2UgZCYjMDM5O3VuZSBwYWdlIHF1aSBkb2l0ICZlY2lyYzt0cmUgdXRpbGlzJmVhY3V0ZTsgcG91ciBhZmZpY2hlciBsZSBkJmVhY3V0ZTt0YWlsIGRlIHJhcHBvcnQnOwokbGFuZ1sncGFyYW1fcHJlZml4J10gPSAndW4gYm9vbCZlYWN1dGU7ZW4gcXVpIGluZGlxdWUgc2kgbGUgbm9tIGR1IGZpY2hpZXIgZG9pdCAmZWNpcmM7dHJlIHByJmVhY3V0ZTtmaXgmZWFjdXRlOyc7CiRsYW5nWydwYXJhbV9wcmVmaXhfZmV1J10gPSAnVW4gcGFyYW0mZWdyYXZlO3RyZSBib29sJmVhY3V0ZTtlbiBxdWkgaW5kaXF1ZSBxdWUgbGUgcHJlZml4ZSBkb2l2ZW50ICZlY2lyYzt0cmUgcHJpcyAmYWdyYXZlOyBsJiMwMzk7YXV0ZXVyLCBzJiMwMzk7aWwgbiYjMDM5O2VzdCBwYXMgc3AmZWFjdXRlO2NpZmkmZWFjdXRlOywgbGUgcHJlZml4ZSBlc3QgbCYjMDM5O2hldXJlIGFjdHVlbGxlIChkYW5zIGxlIGZvcm1hdCBkZWNoZXgpJzsKJGxhbmdbJ3BhcmFtX25vY2FwdGNoYSddID0gJ0QmZWFjdXRlO3NhY3RpdmVyIENhcHRjaGEgKHBhciBkJmVhY3V0ZTtmYXV0KSBkYW5zIGxlIGZvcm11bGFpcmUgZCYjMDM5O2Vudm9pJzsKJGxhbmdbJ3RpdGxlX3VwbG9hZGZvcm1fdGVtcGxhdGUnXSA9ICdNb2RpZmllciBsZSBtb2QmZWdyYXZlO2xlIGRlIGZvcm11bGFpcmUgZCYjMDM5O2Vudm9pJzsKJGxhbmdbJ2NhcHRjaGFfdGl0bGUnXSA9ICdTYWlzaXNzZXogbGUgdGV4dGUgJmFncmF2ZTsgYWZmaWNoJmVhY3V0ZTsgZGFucyBjZXR0ZSBpbWFnZSc7CiRsYW5nWydlcnJvcl9jYXB0Y2hhbWlzbWF0Y2gnXSA9ICdMZSB0ZXh0ZSBlbnRyJmVhY3V0ZTsgbmUgY29ycmVzcG9uZCAmYWdyYXZlOyBsJiMwMzk7aW1hZ2UgYWZmaWNoJmVhY3V0ZTtlJzsKJGxhbmdbJ3RpdGxlX2F1dG90aHVtYm5haWxfZXh0ZW5zaW9ucyddID0gJ0NyJmVhY3V0ZTtlciBkZXMgdmlnbmV0dGVzIHBvdXIgbGVzIGZpY2hpZXJzIGF2ZWMgY2VzIGV4dGVuc2lvbnMmbmJzcDsnOwokbGFuZ1sndGl0bGVfYXV0b3RodW1ibmFpbF9zaXplJ10gPSAnVGFpbGxlIG1heGltdW0gKHBpeGVscykgZGUgbGEgdmlnbmV0dGUgZyZlYWN1dGU7biZlYWN1dGU7ciZlYWN1dGU7ZSZuYnNwOyc7CiRsYW5nWydwcm9tcHRfdXBsb2FkX2ljb24nXSA9ICdVcGxvYWQgdW5lIGljJm9jaXJjO25lJzsKJGxhbmdbJ2luZm9fc3lzZGVmYXVsdCddID0gJ0NlIHRleHRlIGVzdCB1dGlsaXMmZWFjdXRlOyBsb3JzIGRlIGxhIGNyJmVhY3V0ZTthdGlvbiBkJiMwMzk7dW4gbm91dmVhdSBtb2QmZWdyYXZlO2xlIGRlIGNlIHR5cGUnOwokbGFuZ1sndGl0bGVfZGV0YWlscnB0X3N5c2RlZmF1bHQnXSA9ICdNb2QmZWdyYXZlO2xlIHBhciBkJmVhY3V0ZTtmYXV0IGR1IHJhcHBvcnQgZCZlYWN1dGU7dGFpbGwmZWFjdXRlOyc7CiRsYW5nWyd0aXRsZV9zdW1tYXJ5cnB0X3N5c2RlZmF1bHQnXSA9ICdNb2QmZWdyYXZlO2xlIHNvbW1haXJlIHBhciBkJmVhY3V0ZTtmYXV0JzsKJGxhbmdbJ3RpdGxlX3VwbG9hZGZvcm1fc3lzZGVmYXVsdCddID0gJ01vZCZlZ3JhdmU7bGUgZGUgY2hhcmdlbWVudCBwYXIgZCZlYWN1dGU7ZmF1dCc7CiRsYW5nWyd0ZW1wbGF0ZSddID0gJ01vZCZlZ3JhdmU7bGUmbmJzcDsnOwokbGFuZ1sncmVzZXR0b2RlZmF1bHQnXSA9ICdSZXN0YXVyZXIgbGVzIHBhcmFtJmVncmF2ZTt0cmVzIHBhciBkJmVhY3V0ZTtmYXV0JzsKJGxhbmdbJ3RpdGxlX3N1bW1hcnlycHRfdGVtcGxhdGUnXSA9ICdNb2QmZWdyYXZlO2xlIGRlIHJhcHBvcnQgcmVzdW0mZWFjdXRlOyc7CiRsYW5nWyd0aXRsZV9kZXRhaWxycHRfdGVtcGxhdGUnXSA9ICdNb2QmZWdyYXZlO2xlIGR1IHJhcHBvcnQgZGV0YWlsbCZlYWN1dGU7JzsKJGxhbmdbJ3Byb21wdF9uYW1lJ10gPSAnTm9tJzsKJGxhbmdbJ3Byb21wdF9kZWZhdWx0J10gPSAnUGFyIGQmZWFjdXRlO2ZhdXQnOwokbGFuZ1snbGVnZW5kX3VwbG9hZGZvcm0nXSA9ICdVcGxvYWRlciB1biBmaWNoaWVyJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdwYXJhbSddID0gJ1VuIHBhcmFtJmVncmF2ZTt0cmUgcmVxdWlzIGVzdCBtYW5xdWFudCc7CiRsYW5nWydlcnJvcl9taXNzaW5nbmFtZSddID0gJ1VuIG5vbSBwb3VyIGxlIHR5cGUgZGUgZmljaGllciBkb2l0ICZlY2lyYzt0cmUgc3AmZWFjdXRlO2NpZmkmZWFjdXRlOyc7CiRsYW5nWydlcnJvcl9taXNzaW5nZXh0ZW5zaW9ucyddID0gJ0F1IG1vaW5zIHVuZSBleHRlbnNpb24gZGUgZmljaGllciBkb2l0ICZlY2lyYzt0cmUgc3AmZWFjdXRlO2NpZmkmZWFjdXRlOyc7CiRsYW5nWydlcnJvcl9taXNzaW5naWNvbiddID0gJ1VuZSBpYyZvY2lyYztuZSBkb2l0ICZlY2lyYzt0cmUgc3AmZWFjdXRlO2NpZmkmZWFjdXRlO2UnOwokbGFuZ1snZXJyb3Jfbm9zdWNocm93J10gPSAnTGEgbGlnbmUgc3AmZWFjdXRlO2NpZmkmZWFjdXRlO2UgbiYjMDM5O2EgcGFzIHB1ICZlY2lyYzt0cmUgdHJvdXYmZWFjdXRlO2UnOwokbGFuZ1snbmFtZV91bmtub3duJ10gPSAnSW5jb25udSc7CiRsYW5nWydkZXNjcmlwdGlvbl91bmtub3duJ10gPSAnRGVzY3JpcHRpb24gZHUgdHlwZSBkZSBmaWNoaWVyIHBvdXIgbGVzIGZpY2hpZXJzIGRpZmYmZWFjdXRlO3JlbnRzJzsKJGxhbmdbJ2ltYWdlJ10gPSAnSW1hZ2UgJzsKJGxhbmdbJ2ljb24nXSA9ICdJYyZvY2lyYztuZSc7CiRsYW5nWydleHRlbnNpb25zJ10gPSAnRXh0ZW5zaW9ucyBkZSBmaWNoaWVyJzsKJGxhbmdbJ2FkZGZpbGV0eXBlJ10gPSAnQWpvdXRlciB1biBub3V2ZWF1IHR5cGUgZGUgZmljaGllcic7CiRsYW5nWydmaWxlX3R5cGVzJ10gPSAnVHlwZXMgZGUgZmljaGllcnMnOwokbGFuZ1snZXJyb3Jfbm9jYXRlZ29yeWlkJ10gPSAnSWRlbnRpZmlhbnQgZGUgY2F0JmVhY3V0ZTtnb3JpZSBub24gc3AmZWFjdXRlO2NpZiZlYWN1dGU7JzsKJGxhbmdbJ2Vycm9yX25vY2F0ZWdvcnknXSA9ICdDYXQmZWFjdXRlO2dvcmllIG1hbnF1YW50ZSc7CiRsYW5nWydlcnJvcl90ZW1wbGF0ZW5hbWVleGlzdHMnXSA9ICdVbiBtb2QmZWdyYXZlO2xlIGRlIGNlIG5vbSAmZWFjdXRlO3hpc3RlIGQmZWFjdXRlO2omYWdyYXZlOyc7CiRsYW5nWydwcm9tcHRfdGVtcGxhdGVuYW1lJ10gPSAnTm9tIGR1IG1vZCZlZ3JhdmU7bGUmbmJzcDsnOwokbGFuZ1sncHJvbXB0X3RlbXBsYXRlJ10gPSAnTm9tIGR1IG1vZCZlZ3JhdmU7bGUmbmJzcDsnOwokbGFuZ1sncHJvbXB0X25ld3RlbXBsYXRlJ10gPSAnQ3ImZWFjdXRlO2VyIHVuIG5vdXZlYXUgbW9kJmVncmF2ZTtsZSc7CiRsYW5nWydoZWxwX09uRG93bmxvYWQnXSA9ICc8cD5VbiAmZWFjdXRlO3ZlbmVtZW50IGcmZWFjdXRlO24mZWFjdXRlO3ImZWFjdXRlOyBsb3JzcXUmIzAzOTt1biB1dGlsaXNhdGV1ciB0ZXJtaW5lIGxlIHQmZWFjdXRlO2wmZWFjdXRlO2NoYXJnZW1lbnQgZCYjMDM5O3VuIGZpY2hpZXI8L3A+DQo8aDQ+UGFyYW0mZWdyYXZlO3RyZXM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5pZDwvZW0+IC0gVXBsb2FkIElEPC9saT4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gTm9tIGR1IGZpY2hpZXI8L2xpPg0KPGxpPjxlbT5pcDwvZW0+IC0gQWRyZXNzZSBJUCBkdSB0JmVhY3V0ZTtsJmVhY3V0ZTtjaGFyZ2V1cjwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2hlbHBfT25EZWxldGVDYXRlZ29yeSddID0gJzxwPlVuICZlYWN1dGU7diZlYWN1dGU7bmVtZW50IGcmZWFjdXRlO24mZWFjdXRlO3ImZWFjdXRlOyBsb3JzcXUmIzAzOTt1biB1dGlsaXNhdGV1ciBzdXBwcmltZSB1bmUgY2F0JmVhY3V0ZTtnb3JpZTwvcD4NCjxoND5QYXJhbSZlZ3JhdmU7dHJlczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIE5vbSBkZSBsYSBjYXQmZWFjdXRlO2dvcmllPC9saT4NCjxsaT48ZW0+cGF0aDwvZW0+IC0gQ2hlbWluIGRlIGxhIGNhdCZlYWN1dGU7Z29yaWU8L2xpPg0KPC91bD4NCic7CiRsYW5nWydoZWxwX09uQ3JlYXRlQ2F0ZWdvcnknXSA9ICc8cD5VbiAmZWFjdXRlO3YmZWFjdXRlO25lbWVudCBnJmVhY3V0ZTtuJmVhY3V0ZTtyJmVhY3V0ZTsgJmFncmF2ZTsgbGEgY3ImZWFjdXRlO2F0aW9uIGQmIzAzOTt1bmUgY2F0JmVhY3V0ZTtnb3JpZTwvcD4NCjxoND5QYXJhbSZlZ3JhdmU7dHJlczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIExlIG5vbSBkZSBsYSBjYXQmZWFjdXRlO2dvcmllPC9saT4NCjxsaT48ZW0+ZGVzY3JpcHRpb248L2VtPiAtIExhIGQmZWFjdXRlO3NjcmlwdGlvbiBkZSBsYSBjYXQmZWFjdXRlO2dvcmllPC9saT4NCjxsaT48ZW0+cGF0aDwvZW0+IC0gTGUgY2hlbWluIGRlIGxhIGNhdCZlYWN1dGU7Z29yaWU8L2xpPg0KPGxpPjxlbT5wYXRoPC9lbT4gLSBVbiBmbGFnIHF1aSBpbmRpcXVlIHNpIGxhIGNhdCZlYWN1dGU7Z29yaWUgZXN0IGxpc3RhYmxlPC9saT4NCjwvdWw+DQonOwokbGFuZ1snaGVscF9PblJlbW92ZSddID0gJzxwPkFuICZFYWN1dGU7dmVuZW1lbnQgZyZlYWN1dGU7biZlYWN1dGU7ciZlYWN1dGU7IHF1YW5kIHVuIGZpY2hpZXIgZXN0IHN1cHByaW0mZWFjdXRlOyB2aWEgbCYjMDM5O2FkbWluIG91IGwmIzAzOTtpbnRlcmZhY2UgJnF1b3Q7ZnJvbnRlbmQmcXVvdDs8L3A+DQo8aDQ+UGFyYW0mZWdyYXZlO3RyZXM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBOb20gZHUgZmljaGllciBzdXBwcmltJmVhY3V0ZTs8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gSWRlbnRpZmlhbnQgZHUgZmljaGllciBzdXBwcmltJmVhY3V0ZTs8L2xpPg0KPGxpPjxlbT5jYXRlZ29yeV9pZDwvZW0+IC0gSWRlbnRpZmlhbnQgZGUgbGEgY2F0JmVhY3V0ZTtnb3JpZXk8L2xpPg0KPC91bD4NCic7CiRsYW5nWydoZWxwX09uVXBsb2FkJ10gPSAnPHA+dW4gJmVhY3V0ZTt2ZW5lbWVudCBnJmVhY3V0ZTtuJmVhY3V0ZTtyJmVhY3V0ZTsgcXVhbmQgdW4gZmljaGllciBlc3QgY2hhcmcmZWFjdXRlOyB2aWEgbCYjMDM5O2ludGVyZmFjZSBhZG1pbiBvdSAgbCYjMDM5O2ludGVyZmFjZSAmcXVvdDtmcm9udGVuZCZxdW90OzwvcD4NCjxoND5QYXJhbSZlZ3JhdmU7dHJlczwvaDQ+DQo8dWw+DQo8bGk+PGVtPmNhdGVnb3J5PC9lbT4gLSBMZSBub20gZGUgbGEgY2F0JmVhY3V0ZTtnb3JpZTwvbGk+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIExlIG5vbSBkdSBmaWNoaWVyIGNoYXJnJmVhY3V0ZTs8L2xpPg0KPGxpPjxlbT5zaXplPC9lbT4gLSBMYSB0YWlsbGUgZHUgZmljaGllciBjaGFyZyZlYWN1dGU7PC9saT4NCjxsaT48ZW0+c3VtbWFyeTwvZW0+IC0gTGEgZCZlYWN1dGU7c2NyaXB0aW9uIGNvdXJ0ZSBkdSBmaWNoaWVyIGNoYXJnJmVhY3V0ZTsgKHBldXQgJmVjaXJjO3RyZSB2aWRlKTwvZW0+PC9saT4NCjxsaT48ZW0+ZGVzY3JpcHRpb248L2VtPiAtIExhIGQmZWFjdXRlO3NjcmlwdGlvbiBsb25ndWUgZHUgZmljaGllciBjaGFyZyZlYWN1dGU7IChwZXV0ICZlY2lyYzt0cmUgdmlkZSk8L2VtPjwvbGk+DQo8bGk+PGVtPmF1dGhvcjwvZW0+IC1MJiMwMzk7YXV0ZXVyIGR1IGZpY2hpZXIgY2hhcmcmZWFjdXRlOyAoc2kgZGlzcG9uaWJsZSk8L2VtPjwvbGk+DQo8bGk+PGVtPmlwX2FkZHJlc3M8L2VtPiAtICBMJiMwMzk7YWRyZXNzZSBJUCBkdSBjbGllbnQgcXVpICZhZ3JhdmU7IGNoYXJnJmVhY3V0ZTsgbGUgZmljaGllcjwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2luZm9fZXZlbnRfb25kZWxldGVjYXRlZ29yeSddID0gJ0V2JmVhY3V0ZTtuZW1lbnQgZyZlYWN1dGU7biZlYWN1dGU7ciZlYWN1dGU7IGxvcnNxdWUgbGEgY2F0JmVhY3V0ZTtnb3JpZSBlc3Qgc3VwcHJpbSZlYWN1dGU7ZSc7CiRsYW5nWydpbmZvX2V2ZW50X29uY3JlYXRlY2F0ZWdvcnknXSA9ICdFdiZlYWN1dGU7bmVtZW50IGcmZWFjdXRlO24mZWFjdXRlO3ImZWFjdXRlOyBsb3JzcXVlIGxhIGNhdCZlYWN1dGU7Z29yaWUgZXN0IGNyJmVhY3V0ZTtlJzsKJGxhbmdbJ2luZm9fZXZlbnRfb25kb3dubG9hZCddID0gJ0V2JmVhY3V0ZTtubWVudCBnJmVhY3V0ZTtuJmVhY3V0ZTtyZSBxdWFuZCBsZSBmaWNoaWVyIGVzdCB0JmVhY3V0ZTtsJmVhY3V0ZTtjaGFyZyZlYWN1dGU7JzsKJGxhbmdbJ2luZm9fZXZlbnRfb251cGxvYWQnXSA9ICdFdiZlYWN1dGU7bmVtZW50IGcmZWFjdXRlO24mZWFjdXRlO3ImZWFjdXRlOyBxdWFuZCB1biBub3V2ZWF1IGZpY2hpZXIgZXN0IGNoYXJnJmVhY3V0ZTsnOwokbGFuZ1snaW5mb19ldmVudF9vbnJlbW92ZSddID0gJ0V2JmVhY3V0ZTtuZW1lbnQgZyZlYWN1dGU7biZlYWN1dGU7ciZlYWN1dGU7IHF1YW5kIHVuIGZpY2hpZXIgZXN0IHN1cHByaW0mZWFjdXRlOyc7CiRsYW5nWyd0aXRsZV91c2VydGFnX29udXBsb2FkJ10gPSAnVGFnIGQmZWFjdXRlO2ZpbmkgcGFyIGwmIzAzOTt1dGlsaXNhdGV1ciAmYWdyYXZlOyBhcHBlbGwmZWFjdXRlOyBhcHImZWFjdXRlO3MgdW4gY2hhcmdlbWVudCBmaW5pJm5ic3A7JzsKJGxhbmdbJ25vbmUnXSA9ICdBdWN1bic7CiRsYW5nWydtYXRjaGVzZm91bmQnXSA9ICdSJmVhY3V0ZTtzdWx0YXRzIHRyb3V2JmVhY3V0ZTtzJzsKJGxhbmdbJ2ZpbHRlciddID0gJ0ZpbHRyZSc7CiRsYW5nWyd0aXRsZV9yZWRpcmVjdG9udXBsb2FkJ10gPSAncmVkaXJpZyZlYWN1dGU7IHZlcnMgbGEgcGFnZSBpZC9hbGlhcyBhdSBjaGFyZ2VtZW50IHV0aWxpc2F0ZXVyJm5ic3A7JzsKJGxhbmdbJ2RldGFpbHMnXSA9ICdEJmVhY3V0ZTt0YWlscyc7CiRsYW5nWydjb25maXJtX3ByZWZlcmVuY2VzJ10gPSAnJkVjaXJjO3Rlcy12b3VzIHN1ciBkZSB2b3Vsb2lyIGFqdXN0ZXIgbGVzIHByJmVhY3V0ZTtmJmVhY3V0ZTtyZW5jZXMgPyc7CiRsYW5nWydlcnJvcl9ub2ZpbGVzdXBsb2FkZWQnXSA9ICdQYXMgZGUgZmljaGllcnMgdCZlYWN1dGU7bCZlYWN1dGU7Y2hhcmcmZWFjdXRlO3MuJzsKJGxhbmdbJ3Byb21wdF9yZXBsYWNlJ10gPSAnQXVydG9yaXMmZWFjdXRlOyBsYSBzdXImZWFjdXRlO2NyaXR1cmUnOwokbGFuZ1snaW5mb19yZXBsYWNlJ10gPSAnUmVtcGxhY2VyIHRvdXMgbGVzIGZpY2hpZXJzIHBvcnRhbnQgbGUgbSZlY2lyYzttZSBub20gKGwmIzAzOTtpZGVudGlmaWFudCBuZSBjaGFuZ2UgcGFzKSc7CiRsYW5nWydwYXJhbV9ub19pbml0aWFsJ10gPSAnTmUgcGFzIGFmZmljaGVyIGxlcyBwcmVtaWVycyByJmVhY3V0ZTtzdWx0YXRzIGxvcnNxdWUgbGUgZmlsdHJlIGVzdCBhY3RpZic7CiRsYW5nWydwYXJhbV9rZXknXSA9ICdQcm92aWRlIGFuIGFkZGl0aW9uYWwga2V5IHRvIHRoZSBtb2R1bGUgZm9yIGZ1cnRoZXIgb3JnYW5pemluZyB1cGxvYWRzLiAgVGhpcyBrZXkgY291bGQgYmUgYW4gZW5jb2RlZCBzdHJpbmcgbGlrZTogJiMwMzk7ZmV1c2Vyczp1aWQmIzAzOTssIGV0Yy4gIFRoaXMgcGFyYW1ldGVyIGlzIHVzdWFsbHkgb25seSBuZWVkZWQgd2hlbiBlbWJlZGRpbmcgdGhlIHVwbG9hZHMgbW9kdWxlIGludG8gYW5vdGhlciBtb2R1bGUnOwokbGFuZ1sncGFyYW1fbm9hdXRob3InXSA9ICdNYXNxdWUgbGUgY2hhbXAgYXV0ZXVyIGR1IGZvcm11bGFpcmUgZGUgY2hhcmdlbWVudC4gY2UgcGFyYW0mZWdyYXZlO3RyZSBlc3QgdmFsYWJsZSB1bmlxdWVtZW50IGVuID0gbW9kZT0mIzAzOTt1cGxvYWQmIzAzOTsuIFNpIGxlIG1vZHVsZSBGRVUgZXN0IGluc3RhbGwmZWFjdXRlOyBldCBxdSYjMDM5O3VuIHV0aWxpc2F0ZXVyIGVzdCBsb2d1JmVhY3V0ZTssIFVuIGNoYW1wIGNhY2gmZWFjdXRlOyB2YSBtYWludGVuaXIgbGUgbm9tIGQmIzAzOTt1dGlsaXNhdGV1ciBhY3R1ZWxsZW1lbnQgY29ubmVjdCZlYWN1dGU7JzsKJGxhbmdbJ3BhcmFtX3VwbG9hZF9pZCddID0gJ1VwbG9hZF9pZCA9ICZxdW90O2lkZW50aWZpYW50JnF1b3Q7IC0gc3AmZWFjdXRlO2NpZmllIHVuIGZpY2hpZXIgdW5pcXVlIHBvdXIgbCYjMDM5O1VSTCBvdSBsZSBsaWVuIG91IG1vZGVzIChjaS1kZXNzdXMpJzsKJGxhbmdbJ3BhcmFtX2RldGFpbHRlbXBsYXRlJ10gPSAnVXRpbGlzZXIgdW4gbW9kJmVncmF2ZTtsZSBkZSBjZSBub20gcG91ciBsZSByYXBwb3J0IGQmZWFjdXRlO3RhaWxsJmVhY3V0ZTsuJzsKJGxhbmdbJ3BhcmFtX3RlbXBsYXRlJ10gPSAnVXRpbGlzZXIgdW4gbW9kJmVncmF2ZTtsZSBkZSBjZSBub20gcG91ciBjZSByYXBwb3J0IG91IGZvcm11bGFpcmUuIExlIG1vZGUgZXN0IHV0aWxpcyZlYWN1dGU7IHBvdXIgZGV0ZXJtaW5lciBxdWVsIHR5cGUgZGUgbW9kJmVncmF2ZTtsZSBlc3QgcmVxdWlzLCBwdWlzIHVuIG5vbSBjb3JyZXNwb25kYW50IGVzdCBlZmZlY3R1JmVhY3V0ZTsgYXUgc2VpbiBkZSBjZSB0eXBlLic7CiRsYW5nWydwYXJhbV9maWx0ZXInXSA9ICdBZmZpY2hlIGxlIGZvcm11bGFpcmUgZGUgZmlsdHJhZ2UnOwokbGFuZ1sncGFyYW1fbm9faW50aXRpYWwnXSA9ICdTZXVsZW1lbnQgdXRpbGllIHF1YW5kIGxlIHBhcmFtJmVncmF2ZTt0cmUgZmlsdHJlIGVzdCBmb3VybmlzLCBvdSBvbiBwYXIgZCZlYWN1dGU7ZmF1bHQsIHRoaXMgcGFyYW1ldGVyIGluZGljYXRlcyB3ZXRoZXIgaW5pdGlhbCByZXN1bHRzIHNob3VsZCBiZSByZXR1cm5lZCc7CiRsYW5nWydwYXJhbV9maWxldHlwZXMnXSA9ICdBZmZpY2hlIHVuaXF1ZW1lbnQgbGVzIGZpY2hpZXJzIGRvbnQgbGUgdHlwZSBjb3JyZXNwb25kICZhZ3JhdmU7IGNldHRlIGxpc3RlIHNlcGFyJmVhY3V0ZTtlIHBhciBkZXMgdmlyZ3VsZXMnOwokbGFuZ1sncGFyYW1fc29ydG9yZGVyJ10gPSAnICA8cD5PcmRyZSBkZSB0cmkNCiAgPHVsPg0KICA8bGk+PGVtPmRhdGVfYXNjPC9lbT4gLSBUcmkmZWFjdXRlOyBwYXIgZGF0ZSBjcm9pc3NhbnRlPC9saT4NCiAgPGxpPjxlbT5kYXRlX2Rlc2M8L2VtPiAtIFRyaSZlYWN1dGU7IHBhciBkYXRlIGQmZWFjdXRlO2Nyb2lzc2FudGU8L2xpPg0KICA8bGk+PGVtPm5hbWVfYXNjPC9lbT4gLSBUcmkmZWFjdXRlOyBhbHBoYWImZWFjdXRlO3RpcXVlbWVudCBwYXIgb3JkZSBjcm9pc3NhbnQ8L2xpPg0KICA8bGk+PGVtPm5hbWVfZGVzYzwvZW0+IC1UcmkmZWFjdXRlOyBhbHBoYWImZWFjdXRlO3RpcXVlbWVudCBwYXIgb3JkZSBkJmVhY3V0ZTtjcm9pc3NhbnQ8L2xpPg0KICA8bGk+PGVtPnNpemVfYXNjPC9lbT4gLSBUcmkmZWFjdXRlOyBwYXIgdGFpbGxlIGNyb2lzc2FudGU8L2xpPg0KICA8bGk+PGVtPnNpemVfZGVzYzwvZW0+IC0gVHJpJmVhY3V0ZTsgcGFyIHRhaWxsZSBkJmVhY3V0ZTtjcm9pc3NhbnRlPC9saT4NCiAgPGxpPjxlbT5kZXNjX2FzYzwvZW0+IC0gVHJpJmVhY3V0ZTsgcGFyIGQmZWFjdXRlO3NjcmlwdGlvbiBjcm9pc3NhbnRlL2xpPg0KICA8bGk+PGVtPmRlc2NfZGVzYzwvZW0+IC0gVHJpJmVhY3V0ZTsgcGFyIGQmZWFjdXRlO3NjcmlwdGlvbiBkJmVhY3V0ZTtjcm9pc3NhbnRlPC9saT4NCiAgPGxpPjxlbT5hdXRob3JfYXNjPC9lbT4gLSBUcmkmZWFjdXRlOyBwYXIgYXV0ZXVyIGNyb2lzc2FudDwvbGk+DQogIDxsaT48ZW0+YXV0aG9yX2Rlc2M8L2VtPiAtIFRyaSZlYWN1dGU7IHBhciBhdXRldXIgZCZlYWN1dGU7Y3JvaXNzYW50PC9saT4NCiAgPGxpPjxlbT5pcF9hc2M8L2VtPiAtIFRyaSZlYWN1dGU7IHBhciBhZHJlc3NlIElQIGNyb2lzc2FudGU8L2xpPg0KICA8bGk+PGVtPmlwX2Rlc2M8L2VtPiAtIFRyaSZlYWN1dGU7IHBhciBhZHJlc3NlIElQIGQmZWFjdXRlO2Nyb2lzc2FudGU8L2xpPg0KICA8bGk+PGVtPnJhbmRvbTwvZW0+IC0gUmFuVHJpIGFsJmVhY3V0ZTthdG9pcmU8L2xpPg0KICA8L3VsPg0KICA8L3A+JzsKJGxhbmdbJ3BhcmFtX2xpc3Rpbmd0ZW1wbGF0ZSddID0gJ0dhYmFyaXQgJmFncmF2ZTsgdXRpbGlzZXIgcG91ciBsaXN0ZXIgbGVzIGNhdCZlYWN1dGU7Z29yaWVzIGFwciZlZ3JhdmU7cyB1biBjbGlxdWUgZGVwdWlzIGxhIHBhZ2UgZGUgciZlYWN1dGU7c3VtJmVhY3V0ZTsgZGVzIGNhdCZlYWN1dGU7Z29yaWVzJzsKJGxhbmdbJ3BhcmFtX2xpc3Rpbmdzb3J0b3JkZXInXSA9ICdPcmRyZSBkZSB0cmkgKGZhJmNjZWRpbDtvbiBwYXJhbV9zb3J0b3JkZXIpICZhZ3JhdmU7IHV0aWxpc2VyIHBvdXIgbGEgbGlzdGUgZGVzIGNhdCZlYWN1dGU7Z29yaWVzIGFwciZlZ3JhdmU7cyB1biBjbGlxdWUgZGVwdWlzIGxhIHBhZ2UgZGUgciZlYWN1dGU7c3VtJmVhY3V0ZTsgZGVzIGNhdCZlYWN1dGU7Z29yaWVzJzsKJGxhbmdbJ3BhcmFtX2ZpbGVleHRlbnNpb25zJ10gPSAnIA0KZmlsZV9leHRlbnNpb25zPSZxdW90O2V4dDEsZXh0MixleHQzJnF1b3Q7DQo8cD5WYWxpZGUgc2V1bGVtZW50IGVuIG1vZGUgY2hhcmdlbWVudCwgY2UgcGFyYW0mZWdyYXZlO3RyZSBsaW1pdGUgbGUgdHlwZSBkZSBmaWNoaWVycyBxdWkgcGV1dmVudCAmZWNpcmM7dHJlIGNoYXJnJmVhY3V0ZTsuIElsIHN1cnBhc3NlIHRvdXQgciZlYWN1dGU7Z2xhZ2UgZGVzIHByJmVhY3V0ZTtmJmVhY3V0ZTtyZW5jZXMgZHUgbW9kdWxlLjwvcD4nOwokbGFuZ1sncGFyYW1fY291bnQnXSA9ICdjb3VudD0mcXVvdDtOJnF1b3Q7DQo8cD5VbiBwYXJhbSZlZ3JhdmU7dHJlIHBvdXIgbGlzdGVyIHNldWxlbWVudCBsZXMgcHJlbWllcnMgTiByJmVhY3V0ZTtzdWx0YXRzIGRlIGxhIHJlY2hlcmNoZS4gTGEgbWlzZSBlbiBwYWdlIHNlcmEgbWVpbGxldXJlLi4uPC9wPic7CiRsYW5nWydwYXJhbV9jYXRlZ29yeSddID0gJ2NhdGVnb3J5PSZxdW90O25hbWUmcXVvdDsNCjxwPjxiPk5vdGU6PC9iPiBDYXRlZ29yeSBwZXV0ICZlY2lyYzt0cmUgJnF1b3Q7YWxsJnF1b3Q7LCBwb3VyIGFmZmljaGVyIHRvdXRlcyBsZXMgY2F0JmVhY3V0ZTtnb3JpZXMgPGVtPmxpc3RhYmxlczwvZW0+PC9wPic7CiRsYW5nWydwYXJhbV9tb2RlJ10gPSAnICA8dWw+DQogIDxsaT48ZW0+ZGV0YWlsZWQ8L2VtPiAtIEFmZmljaGUgdW5lIGxpc3RlIGQmZWFjdXRlO3RhaWxsJmVhY3V0ZTsgZGUgdG91dCBsZXMgZmljaGllcnMgZGFucyB1bmUgY2F0JmVhY3V0ZTtnb3JpZTwvbGk+DQogIDxsaT48ZW0+dXBsb2FkPC9lbT4gLSBBZmZpY2hlIHVuIGZvcm11bGFpcmUgcG91ciBwZXJtJmVncmF2ZTt0dHJlIGF1eCBGRVUgZGUgY2hhcmdlciBkZXMgZmljaGllcnM8L2xpPg0KICA8bGk+PGVtPnVybCA8aT5vcjwvaT4gbGluazwvZW0+IC0gQWZmaWNoZSB1biBsaWVuIHZlcnMgdW4gZmljaGllcjwvbGk+DQogIDxsaT48ZW0+c3VtbWFyeTwvZW0+IC0gQWZmaWNoZSB1bmUgbGlzdGUgciZlYWN1dGU7c3VtJmVhY3V0ZTtlIGRlIHRvdXMgbGVzIGZpY2hpZXJzIGRhbnMgdW5lIGNhdCZlYWN1dGU7Z29yaWU8L2xpPg0KICA8bGk+PGVtPnNpbmdsZTwvZW0+IC0gQWZmaWNoZSB1biByYXBwb3J0IGQmZWFjdXRlO3RhaWxsJmVhY3V0ZTsgY29uJmNjZWRpbDtlcm5hbnQgdW4gc2V1bCBjaGFyZ2VtZW50PC9saT4NCiAgPGxpPjxlbT5zaW5nbGVzdW1tYXJ5PC9lbT4gLSBBZmZpY2hlIHVuIHJhcHBvcnQgc29tbWFpcmUgY29uJmNjZWRpbDtlcm5hbnQgdW4gc2V1bCBjaGFyZ2VtZW50PC9saT4NCiAgPC91bD4nOwokbGFuZ1sncGFyYW1fc2VsZWN0Zm9ybSddID0gJ1F1YW5kIGxlIG1vZGUgJiMwMzk7c2VsZWN0JiMwMzk7IGVzdCB1dGlsaXMmZWFjdXRlOywgY2UgcGFyYW0mZWdyYXZlO3RyZSBzcCZlYWN1dGU7Y2lmaWUgbGUgbCYjMDM5O2lkIChpZGVudGlmaWFudCkgb2YgZGUgbGEgZmV1aWxsZSBwYXJlbnQuIFV0aWxpc2VyIHBvdXIgcGFzc2VyIGxlIHBhcmFtJmVncmF2ZTt0cmUuJzsKJGxhbmdbJ3BhcmFtX3NlbGVjdG5hbWUnXSA9ICdRdWFuZCBsZSBtb2RlICYjMDM5O3NlbGVjdCYjMDM5OyBlc3QgdXRpbGlzJmVhY3V0ZTssIGNlIHBhcmFtJmVncmF2ZTt0cmUgc3AmZWFjdXRlO2NpZmllIGxlIG5vbSBkdSBjaGFtcCc7CiRsYW5nWydwYXJhbV9zZWxlY3R2YWx1ZSddID0gJ1F1YW5kIGxlIG1vZGUgJiMwMzk7c2VsZWN0JiMwMzk7IGVzdCB1dGlsaXMmZWFjdXRlOywgY2UgcGFyYW0mZWdyYXZlO3RyZSBzcCZlYWN1dGU7Y2lmaWUgbGEgdmFsZXVyIHBhciBkJmVhY3V0ZTtmYXV0IGR1IGNoYW1wJzsKJGxhbmdbJ3BhcmFtX3NlbGVjdG5vbmUnXSA9ICdRdWFuZCBsZSBtb2RlICYjMDM5O3NlbGVjdCYjMDM5OyBlc3QgdXRpbGlzJmVhY3V0ZTssIGNlIHBhcmFtJmVncmF2ZTt0cmUgaW5kaXF1ZSBzaSAmIzAzOTtub25lJiMwMzk7IGVzdCB1biBjaG9peCB2YWxpZGUnOwokbGFuZ1sncmV0dXJudG9tb2R1bGUnXSA9ICdSZXRvdXIgYXUgcGFubmVhdSBkdSBtb2R1bGUnOwokbGFuZ1snZXJyb3Jfbm9jYXRlZ29yaWVzJ10gPSAnSWwgbiYjMDM5O3kgYSBwYXMgZGUgY2F0JmVhY3V0ZTtnb3JpZXMgZCZlYWN1dGU7ZmluaWVzJzsKJGxhbmdbJ3RpdGxlX2VuZm9yY2VleHRlbnNpb25zJ10gPSAnRXhpZ2VyIGRlcyBleHRlbnNpb25zIHN1ciB0b3VzIGxlcyBmaWNoaWVycyBjaGFyZyZlYWN1dGU7cyZuYnNwOyc7CiRsYW5nWydyZXN0b3JlZGVmYXVsdHNjb25maXJtJ10gPSAnQ2V0dGUgb3AmZWFjdXRlO3JhdGlvbiB2YSByJmVhY3V0ZTtzdGF1cmVyIGxlIG1vZCZlZ3JhdmU7bGUgcGFyIGQmZWFjdXRlO2ZhdXQuIHRvdXQgbGVzIGNoYW5nZW1lbnRzIHNlcm9udCBwZXJkdXMuICZFY2lyYzt0ZXMgdm91cyBzdXIgPyc7CiRsYW5nWydpbmZvX3RodW1ibmFpbCddID0gJ1VuIGZpY2hpZXIgdmlnbmV0dGUgZmFjdWx0YXRpZic7CiRsYW5nWyd0aHVtYm5haWwnXSA9ICdWaWduZXR0ZSc7CiRsYW5nWyduZXd0aHVtYm5haWwnXSA9ICdVcGxvZGVyIHVuZSBub3V2ZWxsZSB2aWduZXR0ZSc7CiRsYW5nWydpbmZvX3N1bW1hcnknXSA9ICdVbmUgZGVzY3JpcHRpb24gYnJldmUgZHUgZmljaGllciAoU2kgdmlkZSwgTGUgbm9tIGR1IGZpY2hpZXIgc2FucyBsJiMwMzk7ZXh0ZW5zaW9uIGVzdCB1dGlsaXMmZWFjdXRlOyknOwokbGFuZ1snaW5mb19jYXRlZ29yeW5hbWUnXSA9ICdVbiBub20gY291cnQgZGUgdm90cmUgY2F0JmVhY3V0ZTtnb3JpZSAoaHVtYWluZW1lbnQgY29tcHImZWFjdXRlO2hlbnNpYmxlKSc7CiRsYW5nWydpbmZvX2NhdGVnb3J5ZGVzYyddID0gJ1VuZSBkJmVhY3V0ZTtzY3JpcHRpb24gcG91ciB2b3RyZSBjYXQmZWFjdXRlO2dvcmllJzsKJGxhbmdbJ2luZm9fY2F0ZWdvcnlwYXRoJ10gPSAnTGUgbm9tIGRlIHImZWFjdXRlO3BlcnRvaXJlICZhZ3JhdmU7IGwmIzAzOTtpbnQmZWFjdXRlO3JpZXVyIGR1IHImZWFjdXRlO3BlcnRvaXJlIGRlIGNoYXJnZW1lbnQgIHF1aSBzZXJhIHV0aWxpcyZlYWN1dGU7IHBvdXIgc3RvY2tlciBsZXMgZmljaGllcnMgZGFucyBjZXR0ZSBjYXQmZWFjdXRlO2dvcmllLiBTaSBsZSByJmVhY3V0ZTtwZXJ0b2lyZSBuJiMwMzk7JmVhY3V0ZTt4aXN0ZSBwYXMgZCZlYWN1dGU7aiZhZ3JhdmU7LCBpbCBwZXV0ICZlY2lyYzt0cmUgY3ImZWFjdXRlO2UuJzsKJGxhbmdbJ2luZm9fZGVzdG5hbWUnXSA9ICdVdGlsaXNleiBsZSBjaGFtcHMgJiMwMzk7VXBsb2FkIEFzJiMwMzk7ICgmIzAzOTtUcmFuc2YmZWFjdXRlO3JlciBDb21tZSYjMDM5OykgcG91ciBjaGFuZ2VyIGxlIG5vbSBkdSBmaWNoaWVyIGF1IHQmZWFjdXRlO2wmZWFjdXRlO2NoYXJnZW1lbnQuIExhaXNzZXIgdmlkZSBwb3VyIHByJmVhY3V0ZTtzZXJ2ZXIgbGUgbm9tIGRlIGZpY2hpZXIgdGVsIHF1ZWwuLi4nOwokbGFuZ1snZXJyb3JfY2FudGNyZWF0ZWRpcmVjdG9yeSddID0gJ0ltcG9zc2libGUgZGUgY3ImZWFjdXRlO2VyIGNlIHImZWFjdXRlO3BlcnRvaXJlJzsKJGxhbmdbJ2Vycm9yX25vbWFpbGVybW9kdWxlJ10gPSAnTGUgbW9kdWxlIENNU21haWxlciBuZSBwZXV0ICZlY2lyYzt0cmUgY29udGFjdCZlYWN1dGU7JzsKJGxhbmdbJ3VwbG9hZF9ub3RpZmljYXRpb24nXSA9ICdVbiBub3V2ZWF1IGZpY2hpZXIgJmFncmF2ZTsgJmVhY3V0ZTt0JmVhY3V0ZTsgY2hhcmcmZWFjdXRlOyAhJzsKJGxhbmdbJ3RpdGxlX2VtYWlsX29uX3VwbG9hZCddID0gJ0Vudm95ZXIgbm90aWZpY2F0aW9uIGRlIGNoYXJnZW1lbnQgYSZuYnNwOyc7CiRsYW5nWydlbWFpbF90ZW1wbGF0ZSddID0gJ01vZGVsZSBkZSBjb3VycmllbCc7CiRsYW5nWyd0aXRsZV9kdW1teV9pbmRleF9odG1sJ10gPSAnQ3ImZWFjdXRlO2F0aW9uIGQmIzAzOTt1biBpbmRleC5odG1sIGRhbnMgY2hhcXVlIHImZWFjdXRlO3BlcnRvaXJlID88YnIvPjxlbT51biBpbmRleC5odG1sIGV4aXN0YW50LCByZXN0ZXJhPC9lbT4mbmJzcDsnOwokbGFuZ1snYWJvdXQnXSA9ICdBIHByb3BvcyBkZSc7CiRsYW5nWydlcnJvcl9wZXJtaXNzaW9uZGVuaWVkJ10gPSAnQWNjJmVhY3V0ZTtzIHJlZnVzJmVhY3V0ZTsuIFYmZWFjdXRlO3JpZmllciB2b3MgZHJvaXRzLic7CiRsYW5nWydlcnJvcl9jb3VsZG5vdHdyaXRlJ10gPSAnSW1wb3NzaWJsZSBkJiMwMzk7JmVhY3V0ZTtjcmlyZSc7CiRsYW5nWydhZGRjYXRlZ29yeSddID0gJ0Fqb3V0ZXIgdW5lIGNhdCZlYWN1dGU7Z29yaWUnOwokbGFuZ1snYWxsJ10gPSAnVG91dChlKXMnOwokbGFuZ1snYXJleW91c3VyZSddID0gJyZFY2lyYzt0ZXMgdm91cyBzdXIgPyc7CiRsYW5nWydhdXRob3InXSA9ICdBdXRldXInOwokbGFuZ1snY2FuY2VsJ10gPSAnQW5udWxlcic7CiRsYW5nWydjYW5ub3Rtb2RpZnlwYXRoJ10gPSAnKGxlIGNoZW1pbiBuZSBwZXV0ICZlY2lyYzt0cmUgbW9kaWZpJmVhY3V0ZTspJzsKJGxhbmdbJ2NhdGVnb3JpZXMnXSA9ICdDYXQmZWFjdXRlO2dvcmllcyc7CiRsYW5nWydjYXRlZ29yeSddID0gJ0NhdCZlYWN1dGU7Z29yaWUnOwokbGFuZ1snbWVzc2FnZV9jYXRlZ29yeWFkZGVkJ10gPSAnQ2F0JmVhY3V0ZTtnb3JpZSBham91dCZlYWN1dGU7ZSBhdmVjIHN1Y2MmZWdyYXZlO3MnOwokbGFuZ1snZGF0ZSddID0gJ0RhdGUgJzsKJGxhbmdbJ2RhdGV1cGxvYWRlZCddID0gJ0RhdGUgZGUgY2hhcmdlbWVudCc7CiRsYW5nWydkZWZhdWx0J10gPSAnUGFyIGQmZWFjdXRlO2ZhdXQnOwokbGFuZ1snZGVsZXRlJ10gPSAnU3VwcHJpbSZlYWN1dGU7JzsKJGxhbmdbJ2Rlc2NyaXB0aW9uJ10gPSAnRGVzY3JpcHRpb24gJzsKJGxhbmdbJ2Rlc3RuYW1lJ10gPSAnQ2hhcmdlciBlbiB0YW50IHF1ZS4uLic7CiRsYW5nWydkZXRhaWxfdGVtcGxhdGUnXSA9ICdNb2QmZWdyYXZlO2xlIGRlIGQmZWdyYXZlO3RhaWxzJzsKJGxhbmdbJ2Rvd25sb2FkZWQnXSA9ICdMZSBmaWNoaWVyICVzICZhZ3JhdmU7ICZlYWN1dGU7dCZlYWN1dGU7IHQmZWFjdXRlO2wmZWFjdXRlO2NoYXJnJmVhY3V0ZTsuJzsKJGxhbmdbJ2Rvd25sb2FkcyddID0gJ1QmZWFjdXRlO2wmZWFjdXRlO2NoYXJnZW1lbnRzJzsKJGxhbmdbJ2VkaXQnXSA9ICdNb2RpZmllcic7CiRsYW5nWydlZGl0Y2F0ZWdvcnknXSA9ICdNb2RpZmllciBjYXQmZWFjdXRlO2dvcmllJzsKJGxhbmdbJ2VkaXR1cGxvYWQnXSA9ICdNb2RpZmllciBjaGFyZ2VtZW50JzsKJGxhbmdbJ2Vycm9yJ10gPSAnRXJyZXVyISc7CiRsYW5nWydlcnJvcl9wYXRoaW51c2UnXSA9ICdVbmUgY2F0JmVhY3V0ZTtnb3JpZSB1dGlsaXNhbnQgY2UgY2hlbWluIGV4aXN0ZSBkJmVhY3V0ZTtqJmFncmF2ZTsnOwokbGFuZ1snZXJyb3JfY2F0ZWdvcnlleGlzdHMnXSA9ICdFcnJldXIgOiBDZXR0ZSBjYXQmZWFjdXRlO2dvcmllIGV4aXN0ZSBkJmVhY3V0ZTtqJmFncmF2ZTsnOwokbGFuZ1snZXJyb3JfY2F0ZWdvcnlub3RlbXB0eSddID0gJ0VycmV1ciAhIEltcG9zc2libGUgZGUgc3VwcHJpbWVyIHVuZSBjYXQmZWFjdXRlO2dvcmllIHF1aSBuJiMwMzk7ZXN0IHBhcyB2aWRlJzsKJGxhbmdbJ2Vycm9yX2NhdGVnb3J5bm90Zm91bmQnXSA9ICdFcnJyZXVyIDogQ2F0JmVhY3V0ZTtnb3JpZSBub24gdHJvdXYmZWFjdXRlO2UgISc7CiRsYW5nWydlcnJvcl9kYmVycm9yJ10gPSAnRXJyZXVyIDogRXJyZXVyIGRlIGJhc2UgZGUgZG9ubiZlYWN1dGU7ZXMgISc7CiRsYW5nWydlcnJvcl9lbXB0eWNhdGVnb3J5J10gPSAnRXJyZXVyIDogY2F0JmVhY3V0ZTtnb3JpZSB2aWRlICEnOwokbGFuZ1snZXJyb3JfZW1wdHlwYXRoJ10gPSAnRXJyZXVyIDogQ2hlbWluIHZpZGUgISc7CiRsYW5nWydlcnJvcl9maWxlZXhpc3RzJ10gPSAnRXJyZXVyICEgTGUgZmljaGllciAlcyBleGlzdGUgZGVqYS4nOwokbGFuZ1snZXJyb3JfZmlsZW5vdGZvdW5kJ10gPSAnRXJyZXVyICEgTGUgZmljaGllciAlcyBuJiMwMzk7YSBwYXMgJmVhY3V0ZTt0JmVhY3V0ZTsgdHJvdXYmZWFjdXRlOy4nOwokbGFuZ1snZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJ10gPSAnRXJyZXVyIDogSW5zdWZmaXNhbmNlIGRlIHBhcmFtJmVncmF2ZTt0cmVzIGZvdXJuaXMgYXUgbW9kdWxlICEnOwokbGFuZ1snZXJyb3JfaW52YWxpZGF1dGhvciddID0gJ0VycmV1ciA6IEF1dGV1ciBub24gdmFsaWRlIChvdSB2aWRlKS4nOwokbGFuZ1snZXJyb3JfaW52YWxpZGNhdGVnb3J5J10gPSAnRXJyZXVyIDogY2F0JmVhY3V0ZTtnb3JpZSBub24gdmFsaWRlIChvdSB2aWRlKS4nOwokbGFuZ1snZXJyb3JfaW52YWxpZGRlc2NyaXB0aW9uJ10gPSAnRXJyZXVyIDogRCZlYWN1dGU7c2NyaXB0aW9uIGludmFsaWRlIChvdSB2aWRlKS4nOwokbGFuZ1snZXJyb3JfaW52YWxpZGZpbGUnXSA9ICdFcnJldXIgOiBOb20gZGUgZmljaGllciBub24gdmFsaWRlIChvdSB2aWRlKS4nOwokbGFuZ1snZXJyb3JfaW52YWxpZHVwbG9hZGZpbGVuYW1lJ10gPSAnRXJyZXVyIDogTGVzIGZpY2hpZXJzIGF2ZWMgY2Ugbm9tIChwcm9iYWJsZW1lbnQgZXh0ZW5zaW9uKSBuZSBzb250IHBhcyBhdXRvcmlzJmVhY3V0ZTtlcyAoJXMpLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXBsb2FkaWQnXSA9ICdFcnJldXIgOiBJZGVudGlmaWFudCBkZSBjaGFyZ2VtZW50IGludmFsaWRlJzsKJGxhbmdbJ2Vycm9yX25vZmlsZXMnXSA9ICdFcnJldXIgOiBQYXMgZGUgRmljaGllcnMgY29yciZlYWN1dGU7c3BvbmRhbnQgISc7CiRsYW5nWydmaWxlcyddID0gJ0ZpY2hpZXJzJzsKJGxhbmdbJ2ZpeG1lJ10gPSAnRml4ZSBsZXMgRXNwYWNlcyc7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdHZXN0aW9uIGRlIGZpY2hpZXJzIChjaGFyZ2VtZW50L3VwbG9hZCknOwokbGFuZ1snaGVscCddID0gJzxoMz5RdWUgZmFpdCBjZSBtb2R1bGUgPzwvaDM+DQo8cD5JbCBzJiMwMzk7YWdpdCBkJiMwMzk7dW4gbW9kdWxlIHBvdXIgcGVybWV0dHJlIGF1eCB1dGlsaXNhdGV1cnMgZGUgdHJhbnNmJmVhY3V0ZTtyZXIgZXQgZGUgdCZlYWN1dGU7bCZlYWN1dGU7Y2hhcmdlciBkZXMgZmljaGllcnMgdmVycyBldCAmYWdyYXZlOyBwYXJ0aXIgZGUgdm90cmUgc2l0ZS4gSWwgZ2FyZGUgbGEgdHJhY2UgZGUgcXVpIGEgdHJhbnNmZXImZWFjdXRlOyB1biBmaWNoaWVyLCBldCBxdWkgYSB0ZWxlY2hhcmcmZWFjdXRlOy4gRGUgcGx1cywgdm91cyBwb3V2ZXogdHJpZXIgbGVzIGRvc3NpZXJzIGVuIGNhdGVnb3JpZXMsIGV0IGdlcmVyIGxlcyBmaWNoaWVycyBxdWkgb250IGV0ZSB0cmFuc2ZlciZlYWN1dGU7cyBjb21tZSBjaGFxdWUgYWRtaW5pc3RyYXRldXIgYWltZSBsZSBmYWlyZTwvcD4gDQo8aDM+Q29tbWVudCBsJiMwMzk7dXRpbGlzZXIgPzwvaDM+DQo8cD48c3Ryb25nPkF0dGVudGlvbjwvc3Ryb25nPiAtIExhIGJvbm5lIG1hcmNoZSBkZSBjZSBtb2R1bGUgZCZlYWN1dGU7cGVuZCBkZSBwbHVzaWV1cnMgdmFyaWFibGVzIHBocC4gQ2VsYSBpbmNsdXMgPGVtPihtYWlzIHBhcyBzZXVsZW1lbnQpPC9lbT4sIHBocCYjMDM5O3MgbWVtb3J5X2xpbWl0LCBzYWZlX21vZGUsIGZpbGVfdXBsb2FkcywgdXBsb2Fkc19tYXhfZmlsZXNpemUsIGFuZCBtYXhfZXhlY3V0aW9uX3RpbWUuIENlcyB2YXJpYWJsZXMgZGV2cm9udCBwZXV0LSZlY2lyYzt0cmUgJmVjaXJjO3RyZSBhanVzdGVyIHBvdXIgcXVlIGxlIG1vZHVsZSBmb25jdGlvbm5lIGNvcnJlY3RlbWVudCBzdXIgdm90cmUgc2l0ZS4gSWwgdm91cyBlc3QgY29ubnNlaWxsJmVhY3V0ZTsgZGUgdHJhdmFpbGxlciBhdmVjIHZvdHJlIGgmZWFjdXRlO2JlcmdldXIgb3UgYWRtaW5pc3RyYXRldXIgcG91ciByJmVhY3V0ZTtnbGVyIGNlcyBwYXJhbSZlZ3JhdmU7dHJlcy48L3A+DQo8cD5Qb3VyIHV0aWxpc2VyIGNlIG1vZHVsZSwgZXQgcGVybWV0dHJlIGF1eCB1dGlsaXNhdGV1cnMgZGUgY2hhcmdlciBkZXMgZmljaGllcnMgc3VyIHZvdHJlIHNpdGUsIHZvdXMgZGV2cmlleiBpbnN0YWxsZXIgbGUgbW9kdWxlLCBldCBlbnN1aXRlIGNyJmVhY3V0ZTtlciB1bmUgb3UgcGx1c2lldXJzIGNhdCZlYWN1dGU7Z29yaWUgbiYjMDM5O291YmxpZXogcGFzIGRlIGNyJmVhY3V0ZTtlciBkJiMwMzk7YWJvcmQgbGVzIHImZWFjdXRlO3BlcnRvaXJlcy4gRW5zdWl0ZSBham91dGVyIHN1ciB2b3MgcGFnZSB1biB0YWcgKGJhbGlzZSkgZHUgc3R5bGUge2Ntc19tb2R1bGUgbW9kdWxlPSZxdW90O1VwbG9hZHMmcXVvdDsgY2F0ZWdvcnk9JnF1b3Q7c29tZWNhdGVnb3J5JnF1b3Q7IG1vZGU9JnF1b3Q7c29tZW1vZGUmcXVvdDt9LiBPJnVncmF2ZTsgbW9kZSBjb3JyZXNwb25kICZhZ3JhdmU7IHVuIGRlcyBtb2RlIGxpc3QmZWFjdXRlOyBlbiBiYXMuIExlIHImZWFjdXRlO3N1bHRhdCBzZXJhIGRpZmYmZWFjdXRlO3JlbnRzIGVuIGZvbmN0aW9uIGR1IG1vZGUgY2hvaXNpLjwvcD4NCjxwPkNlIG1vZHVsZSBwZXV0IHV0aWxpc2VyIGxlIG1vZHVsZSBGcm9udEVuZFVzZXIgKEZFVSkgKG9wdGlvbmVsKSBwb3VyIHImZWFjdXRlO2N1cGVyZXIgbGVzIGluZm9ybWF0aW9ucyBjb24mY2NlZGlsO2VybmFudCBsZXMgdXRpbGlzYXRldXJzIGFjdHVlbGxlbWVudCBjb25uZWN0JmVhY3V0ZTtzPC9wPg0KPGgzPlBlcm1pc3Npb25zPC9oMz4NCjx1bD4NCjxsaT48ZW0+TWFuYWdlIFVwbG9hZHM8L2VtPiBQZXJtaXNzaW9uIHJlcXVpc2VzIHBvdXIgZyZlYWN1dGU7cmVyIGxlcyBjYXQmZWFjdXRlO2dvcmllcyBldCBsZXMgZmljaGllcnMuPC9saT4NCjxsaT48ZW0+TW9kaWZ5IFRlbXBsYXRlczwvZW0+IFBlcm1pc3Npb24gcmVxdWlzZSBwb3VyICZlYWN1dGU7ZGl0ZXIgbGVzIHRlbXBsYXRlcy48L2xpPg0KPGxpPjxlbT5Nb2RpZnkgU2l0ZSBQcmVmZXJlbmNlczwvZW0+IFBlcm1pc3Npb24gcmVxdWlzZSBwb3VyIGxhIGNvbmZpZ3VyYXRpb24uPC9saT4NCjwvdWw+DQo8aDM+RW1haWxpbmc8L2gzPg0KPHA+Q2UgbW9kdWxlIGVzdCBjYXBhYmxlIGQmIzAzOTtlbnZveWVyIHVuIGVtYWlsIHF1YW5kIHVuIGZpY2hpZXIgZXN0IGNoYXJnJmVhY3V0ZTssIHZveWV6IGwmIzAzOTtvbmdsZXQgcHImZWFjdXRlO2YmZWFjdXRlO3JlbmNlcy4gUG91ciBjZWxhICBsZSBtb2R1bGUgPGI+Q01TTWFpbGVyPC9iPiBkb2l0ICZlY2lyYzt0cmUgaW5zdGFsbCZlYWN1dGU7IGV0IGNvbmZpZ3VyJmVhY3V0ZTsuIEMmIzAzOTtlc3QgdW5lICZlYWN1dGU7dGFwZSA8ZW0+b3B0aW9uZWxsZTwvZW0+IGV0IHNpIGxlIG1vZHVsZSBDTVNNYWlsZXIgbiYjMDM5O2VzdCBwYXMgaW5zdGFsbGwmZWFjdXRlOywgbCYjMDM5O3V0aWxpc2F0ZXVyIG5lIHNlIHJlbmRyYSBjb21wdGUgZGUgcmllbiwgU2V1bCB1biBtZXNzYWdlIGRlIGxvZyBzZXJhIGFqb3V0JmVhY3V0ZTsgYXV4IGxvZ3MgZCYjMDM5O2FkbWluaXN0YXRpb24uPC9wPg0KPGgzPkNvbmZpZ3VyYXRpb24gU3lzdCZlZ3JhdmU7bWU8L2gzPg0KPHA+PGI+Tm90ZSA6PC9iPiBDZSBtb2R1bGUgdHJhdmFpbGxlIGVuIGNvbmpvbmN0aW9ucyBhdmVjIGxlcyByJmVhY3V0ZTtnbGFnZXMgZGUgUEhQIGV0IG5lIHBldXQgbGVzIG91dHJlcGFzc2VyLiBWb3VzIHBvdXJyaWV6IGF2b2lyIGJlc29pbnMgZGUgbW9kaWZpZXIgdm90cmUgZmljaGllciAmIzAzOTtwaHAuaW5pJiMwMzk7IGV0L291IHZvdHJlIGZpY2hpZXIgJiMwMzk7aHR0cGQuY29uZiYjMDM5OyBwb3VyIHZvdXMgcGVybWV0dHJlIGRlIGNoYXJnZXIgZGVzIGZpY2hpZXJzIGRlIGxhIHRhaWxsZSBkJmVhY3V0ZTtmaW5pcyBkYW5zIGxlcyBwciZlYWN1dGU7ZiZlYWN1dGU7cmVuY2VzIGR1IG1vZHVsZS48L3A+DQo8aDM+Tm90ZXMgQXBhY2hlPC9oMz4NCjxwPkRhbnMgbCYjMDM5O29yZHJlIHBvdXIgYXV0b3Jpc2VyIGxlIGNoYXJnZW1lbnQgZGUgZmljaGllciBkZSBncmFuZGUgdGFpbGxlLCB2b3VzIGRldnJleiBtb2RpZmllciBsZSBwYXJhbSZlZ3JhdmU7dHJlICYjMDM5O3VwbG9hZF9tYXhfZmlsZXNpemUmIzAzOTsgZGUgdm90cmUgJiMwMzk7cGhwLmluaSYjMDM5Oy4gRGUgcGx1cywgbGUgcHJhbSZlZ3JhdmU7dHJlIExpbWl0UmVxdWVzdEJvZHkgZGFucyB2b3RyZSBjb25maWd1cmF0aW9uIGFwYWNoZSwgZG9pdCAmZWNpcmM7dHJlIGFqdXN0JmVhY3V0ZTsgcG91ciBjb3JyZXNwb25kcmUgYXUgcGFyYW0mZWdyYXZlO3RyZSB1cGxvYWRfbWF4X2ZpbGVzaXplLjwvcD4NCjxwPk5vdGUgOiBsYSBkaXJlY3RpdmUgJiMwMzk7dXBsb2FkX21heF9maWxlc2l6ZSYjMDM5OyBwZXV0ICZlY2lyYzt0cmUgc3AmZWFjdXRlO2NpZmkmZWFjdXRlOyBlbiBvY3RldHMsIGtpbG8tb2N0ZXRzIG91IG0mZWFjdXRlO2dhLW9jdGV0cywgbWFpcyBsZSBwYXJhbSZlZ3JhdmU7dHJlICYjMDM5O0xpbWl0UmVxdWV0Qm9keSYjMDM5OyBlc3Qgc2V1bGVtZW50IHNwJmVhY3V0ZTtjaWZpJmVhY3V0ZTsgZW4gb2N0ZXRzPC9wPg0KJzsKJGxhbmdbJ2lkJ10gPSAnSWRlbnRpZmlhbnQnOwokbGFuZ1snaW5zdGFsbGVkJ10gPSAnVmVyc2lvbiAlcyBkdSBtb2R1bGUgaW5zdGFsbCZlYWN1dGU7Lic7CiRsYW5nWydpcF9hZGRyZXNzJ10gPSAnQWRyZXNzZSBJUCc7CiRsYW5nWydtb2RkZXNjcmlwdGlvbiddID0gJ1VuIG1vZHVsZSBxdWkgcGVybWV0IGF1eCB1dGlsaXNhdGV1cnMgZGUgdHJhbnNmJmVhY3V0ZTtyZXIgZGVzIGZpY2hpZXJzLCBldCB2b3VzIHBlcm1ldCBkZSBsZXMgZyZlYWN1dGU7cmVyLic7CiRsYW5nWyduYW1lJ10gPSAnTm9tJzsKJGxhbmdbJ3JlbmFtZW1lc3NhZ2UnXSA9ICdDaGFuZ2VyIGxlIG5vbSBpY2kgcG91ciAmZWFjdXRlO3gmZWFjdXRlO2N1dGVyIHVuIHJlbm9tbWFnZSc7CiRsYW5nWydwYXRoJ10gPSAnQ2hlbWluJzsKJGxhbmdbJ3BhdGhtZXNzYWdlJ10gPSAnQ2hhbmdlciBsYSBjYXQmZWFjdXRlO2dvcmllIGljaSBwb3VyIGQmZWFjdXRlO3BsYWNlciBsZXMgZmljaGllcnMgZGFucyB1biBhdXRyZSByJmVhY3V0ZTtwZXJ0b2lyZSc7CiRsYW5nWydwYXRoaW51cGxvYWRzJ10gPSAnKFBhciByYXBwb3J0IGF1IHImZWFjdXRlO3BlcnRvaXJlIGRlIGNoYXJnZW1lbnQgJiMwMzk7dXBsb2FkcyYjMDM5OyknOwokbGFuZ1sncG9zdGluc3RhbGwnXSA9ICc8cD5MZSBtb2R1bGUgZCYjMDM5O3VwbG9hZCAmYWdyYXZlOyAmZWFjdXRlO3QmZWFjdXRlOyBpbnN0YWxsJmVhY3V0ZTsgYXZlYyBzdWNjJmVhY3V0ZTtlLiBBc3N1cmV6LXZvdXMgZGUgciZlYWN1dGU7Z2xlciBsZXMgcCZlYWN1dGU7cm1pc3Npb25zICZxdW90O01hbmFnZSBVcGxvYWRzJnF1b3Q7IHBvdXIgdXRpbGlzZXIgY2UgbW9kdWxlICE8L3A+DQo8cD48c3Ryb25nPkF0dGVudGlvbjwvc3Ryb25nPiAtIGxhIGJvbm5lIG1hcmNoZSBkZSBjZSBtb2R1bGUgZCZlYWN1dGU7cGVuZCBkZSBwbHVzaWV1cnMgdmFyaWFibGVzIHBocC4gQ2VsYSBpbmNsdXMgPGVtPihtYWlzIHBhcyBzZXVsZW1lbnQpPC9lbT4sIHBocCYjMDM5O3MgbWVtb3J5X2xpbWl0LCBzYWZlX21vZGUsIGZpbGVfdXBsb2FkcywgdXBsb2Fkc19tYXhfZmlsZXNpemUsIGFuZCBtYXhfZXhlY3V0aW9uX3RpbWUuIENlcyB2YXJpYWJsZXMgZGV2cm9udCBwZXV0LSZlY2lyYzt0cmUgJmVjaXJjO3RyZSBhanVzdGVyIHBvdXIgcXVlIGxlIG1vZHVsZSBmb25jdGlvbm5lIGNvcnJlY3RlbWVudCBzdXIgdm90cmUgc2l0ZS4gSWwgdm91cyBlc3QgY29ubnNlaWxsJmVhY3V0ZTsgZGUgdHJhdmFpbGxlciBhdmVjIHZvdHJlIGgmZWFjdXRlO2JlcmdldXIgb3UgYWRtaW5pc3RyYXRldXIgcG91ciByJmVhY3V0ZTtnbGVyIGNlcyBwYXJhbSZlZ3JhdmU7dHJlcy48L3A+JzsKJGxhbmdbJ3Bvc3R1bmluc3RhbGwnXSA9ICdMZSBtb2R1bGUgdXBsb2FkIGEgJmVhY3V0ZTt0JmVhY3V0ZTsgc3VwcHJpbSZlYWN1dGU7LiBBdWN1biBmaWNoaWVyIG4mIzAzOTthICZlYWN1dGU7dCZlYWN1dGU7IHN1cHByaW0mZWFjdXRlOyBkZSB2b3RyZSByJmVhY3V0ZTtwZXJ0b2lyZSBkZSBjaGFyZ2VtZW50LCBldCBsJiMwMzk7aW50ZWdyaXQmZWFjdXRlOyBkZXMgZmljaGllcnMgZXN0IGludGFjdGUuJzsKJGxhbmdbJ3ByZWZlcmVuY2VzJ10gPSAnUHImZWFjdXRlO2YmZWFjdXRlO3JlbmNlcyc7CiRsYW5nWydwcmVmc3VwZGF0ZWQnXSA9ICdQciZlYWN1dGU7ZiZlYWN1dGU7cmVuY2VzIGR1IE1vZHVsZSBtaXNlICZhZ3JhdmU7IGpvdXIuJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeWRlc2MnXSA9ICdEZXNjcmlwdGlvbiAnOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5bGlzdGFibGUnXSA9ICdMZXMgZmljaGllcnMgZGUgY2UgciZlYWN1dGU7cGVydG9pcmUgcGV1dmVudCAmZWNpcmM7dHJlIGxpc3QmZWFjdXRlO3MnOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5bmFtZSddID0gJ05vbSBkZSBsYSBjYXQmZWFjdXRlO2dvcmllJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeXBhdGgnXSA9ICdDaGVtaW4gZCYjMDM5O2FjYyZlZ3JhdmU7cyBkdSBzZXJ2ZXVyJzsKJGxhbmdbJ3Byb21wdF9kZWxldGVkaXJlY3RvcnknXSA9ICdTdXBwcmltZXIgbGUgcmVwZXJ0b2lyZSBkZSBsYSBjYXQmZWFjdXRlO2dvcmllID8nOwokbGFuZ1sncHJvbXB0X21heF91cGxvYWRzaXplJ10gPSAnVGFpbGxlIGRlIGZpY2hpZXIgbWF4aW1hbGUgYXV0b3JpcyZlYWN1dGU7ZSAoS28pJm5ic3A7JzsKJGxhbmdbJ3Byb21wdF92YWxpZF91cGxvYWRleHRlbnNpb25zJ10gPSAnRXh0ZW5zaW9ucyB2YWxpZGUgcG91ciBsJiMwMzk7dXBsb2FkJzsKJGxhbmdbJ3NjYW4nXSA9ICdQYXJjb3VyaXInOwokbGFuZ1snc2VsZWN0Y2F0ZWdvcnknXSA9ICdTJmVhY3V0ZTtsZWN0aW9ubmUgdW5lIGNhdCZlYWN1dGU7Z29yaWUnOwokbGFuZ1snc2l6ZSddID0gJ3RhaWxsZSc7CiRsYW5nWydzaXpla2InXSA9ICdUYWlsbGUgKEtiKSc7CiRsYW5nWydzdWJtaXQnXSA9ICdFbnZveWVyJzsKJGxhbmdbJ3N1bW1hcnlfdGVtcGxhdGUnXSA9ICdNb2QmZWdyYXZlO2xlIGRlIHNvbW1haXJlJzsKJGxhbmdbJ3N1bW1hcnknXSA9ICdTb21tYWlyZSc7CiRsYW5nWyd0aXRsZV9hZG1pbl9wYW5lbCddID0gJ01vZHVsZSBkZSBjaGFyZ2VtZW50JzsKJGxhbmdbJ3RpdGxlX21vZF9hZG1pbiddID0gJ1Bhbm5lYXUgQWRtaW4gZHUgbW9kdWxlJzsKJGxhbmdbJ3RpdGxlX21vZF9wcmVmcyddID0gJ1ByJmVhY3V0ZTtmJmVhY3V0ZTtyZW5jZSBkdSBtb2R1bGUnOwokbGFuZ1sndGl0bGVfc3VibmV0X2V4Y2x1c2lvbnMnXSA9ICdFeGNsdXJlIHNvdXMtciZlYWN1dGU7c2VhdXggZGVzIHN0YXRpc3RpcXVlcyZuYnNwOyc7CiRsYW5nWyd0aXRsZV92YWxpZF91cGxvYWRleHRlbnNpb25zJ10gPSAnRXh0ZW5zaW9ucyB2YWxpZGVzJm5ic3A7JzsKJGxhbmdbJ3VuaW5zdGFsbGVkJ10gPSAnTW9kdWxlIGQmZWFjdXRlO3NpbnN0YWxsJmVhY3V0ZTsuJzsKJGxhbmdbJ3VwZ3JhZGVkJ10gPSAnTW9kdWxlIG1pc2UgJmFncmF2ZTsgam91ciB2ZXJzIGxhIHZlcnNpb24gJXMuJzsKJGxhbmdbJ3VwbG9hZCddID0gJ0NoYXJnZXInOwokbGFuZ1sndXBsb2FkZWQnXSA9ICdGaWNoaWVyICVzICZhZ3JhdmU7ICZlYWN1dGU7dCZlYWN1dGU7IGNoYXJnJmVhY3V0ZTsgJXMuJzsKJGxhbmdbJ3JlcGxhY2VkJ10gPSAnRmljaGllciAlcyAmYWdyYXZlOyAmZWFjdXRlO3QmZWFjdXRlOyByZW1wbGFjJmVhY3V0ZTsgcGFyICVzLic7CiRsYW5nWydkZWxldGVkJ10gPSAnRmljaGllciAlcyAmYWdyYXZlOyAmZWFjdXRlO3QmZWFjdXRlOyBzdXBwcmltJmVhY3V0ZTsuJzsKJGxhbmdbJ3VwbG9hZGZvcm1fdGVtcGxhdGUnXSA9ICdNb2QmZWdyYXZlO2xlIGQmIzAzOTt1cGxvYWQnOwokbGFuZ1sndXNlcm5hbWUnXSA9ICdOb20gZCYjMDM5O3V0aWxpc2F0ZXVyJzsKJGxhbmdbJ3dhcm5pbmdfZGVsZXRlY2F0ZWdvcnknXSA9ICdBVkVSVElTU0VNRU5UIDogU295ZXogcHJ1ZGVudCBsb3JzcXVlIHZvdXMgc3VwcHJpbWV6IGRlcyBjYXQmZWFjdXRlO2dvcmllcy4gTGVzIGZpY2hpZXJzIHBldXZlbnQgJmVjaXJjO3RyZSBwZXJkdXMnOwokbGFuZ1snd2VsY29tZV90ZXh0J10gPSAnPHA+QmllbnZlbnVlIHNhbnMgbGEgc2VjdGlvbiBhZG1pbiBkdSBtb2R1bGUgZGUgY2hhcmdlbWVudCAoVXBsb2FkKTwvcD4nOwokbGFuZ1sndXRtYSddID0gJzE1Njg2MTM1My43MjAzMTUwNDAuMTIzNDE5NTgzNi4xMjM0MzU1NTIyLjEyMzQzNjE0MjUuOCc7CiRsYW5nWyd1dG1jJ10gPSAnMTU2ODYxMzUzJzsKJGxhbmdbJ3V0bXonXSA9ICcxNTY4NjEzNTMuMTIzNDM0NTA0Mi41LjQudXRtY2NuPShvcmdhbmljKXx1dG1jc3I9Z29vZ2xlfHV0bWN0cj1jbXMgbWFkZSBzaW1wbGUgIHdpa2l8dXRtY21kPW9yZ2FuaWMnOwokbGFuZ1sndXRtYiddID0gJzE1Njg2MTM1Myc7Cj8+]]></data>
	</file>
	<file>
	  <filename>/lang/ext/it_IT.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2ZpcnN0cGFnZSddID0gJ1ByaW1hIHBhZ2luYSc7CiRsYW5nWydwcmV2cGFnZSddID0gJ1BhZ2luYSBwcmVjZWRlbnRlJzsKJGxhbmdbJ25leHRwYWdlJ10gPSAnUGFnaW5hIHNlZ3VlbnRlJzsKJGxhbmdbJ2xhc3RwYWdlJ10gPSAnVWx0aW1hIHBhZ2luYSc7CiRsYW5nWydmaXJzdHBhZ2VfYXJyb3cnXSA9ICc8PCc7CiRsYW5nWydwcmV2cGFnZV9hcnJvdyddID0gJzwnOwokbGFuZ1snbmV4dHBhZ2VfYXJyb3cnXSA9ICc+JzsKJGxhbmdbJ2xhc3RwYWdlX2Fycm93J10gPSAnPj4nOwokbGFuZ1sncGFnZSddID0gJ1BhZ2luYSc7CiRsYW5nWydvZiddID0gJ2RpJzsKJGxhbmdbJ3Byb21wdF9ncm91cGxpc3QnXSA9ICdHcnVwcGkgRkVVIGF1dG9yaXp6YXRpJzsKJGxhbmdbJ2luZm9fZ3JvdXBsaXN0J10gPSAnU2VsZXppb25hIGlsIGdydXBwaSBGRVUgcGVybWVzc2kgYWQgYWNjZWRlcmUgYWkgZmlsZXMgaW4gcXVlc3RhIGNhdGVnb3JpYS4gRGVzZWxlemlvbmEgdHV0dG8gcGVyIHBlcm1ldHRlcmUgbCYjMDM5O2FjY2Vzc28gYSB0dXR0aSc7CiRsYW5nWyd0aXRsZV9zY2FuJ10gPSAnU2NhbiBwZXIgbnVvdmkgZmlsZXMgaW4gcXVlc3RhIGNhdGVnb3JpYSc7CiRsYW5nWyd0aXRsZV9jcmVhdGVfdGh1bWJuYWlscyddID0gJ0NyZWEgTWluaWF0dXJlIG1hbmNhbnRpIHBlciBpIGZpbGVzIGluIHF1ZXN0YSBjYXRlZ29yaWEuJzsKJGxhbmdbJ2NyZWF0ZV90aHVtYm5haWxzJ10gPSAnQ3JlYSBNaW5pYXR1cmUnOwokbGFuZ1sndGl0bGVfY3JlYXRlX3RodW1ibmFpbCddID0gJyhyZSlDcmVhIGxhIE1pbmlhdHVyYSBwZXIgcXVlc3RvIGZpbGUnOwokbGFuZ1snY3JlYXRlX3RodW1ibmFpbCddID0gJ0NyZWEgTWluaWF0dXJhJzsKJGxhbmdbJ2Vycm9yX3BhdGhlcnJvciddID0gJ05vbiBwb3NzbyBhcHJpcmUgbGEgZGlyZWN0b3J5IChwcm9ibGVtaSBkaSBwZXJtZXNzaT8pJzsKJGxhbmdbJ3RpdGxlX2Rvd25sb2FkX2NodW5rc2l6ZSddID0gJ0RpbWVuc2lvbmUgZGVsIHBlenpvIGRpIGNpYXNjdW4gZG93bmxvYWQnOwokbGFuZ1snaW5mb19kb3dubG9hZF9jaHVua3NpemUnXSA9ICdNb2RpZmljYW5kbyBxdWVzdG8gcGFyYW1ldHJvIGF2ciZhZ3JhdmU7IGVmZmV0dG8gc3VsbGEgdmVsb2NpdCZhZ3JhdmU7IGRpIGRvd25sb2FkLCBlIHB1Jm9ncmF2ZTsgYWl1dGFyZSBpbiB1biBhbWJpZW50aSBjb24gcG9jYSBtZW1vcmlhJzsKJGxhbmdbJ3dhcm5pbmdfc2FmZV9tb2RlJ10gPSAnUEhQIHNhZmUgbW9kZSAmZWdyYXZlOyBhYmlsaXRhdG8uIFF1ZXN0byBwdSZvZ3JhdmU7IGNhdXNhcmUgcHJvYmxlbWkgY29uIHVwbG9hZGluZyAocGVybWVzc2kpLCBlZCBpbnRlcmZlcmlyZSBjb24gbCYjMDM5O2FiaWxpdCZhZ3JhdmU7IGRpIHF1ZXN0byBtb2R1bG8gZGkgc3BlZGlyZSBmaWxlcyBwZXIgbGEgbm9uIHBvc3NpYmlsaXQmYWdyYXZlOyBkaSBzb3ZyYXNjcml2ZXJlIGFsY3VuaSBzZXR0YWdnaS4gU2lldGUgYXZ2aXNhdGkgZGkgY29udGF0dGFyZSBpbCBWb3N0cm8gcHJvdmlkZXIgcGVyIHZlZGVyZSBkaSBkaXNhYmlsaXRhcmUgaWwgc2FmZSBtb2RlLic7CiRsYW5nWydwYXJhbV9kZXRhaWxwYWdlJ10gPSAnVXRpbGUgcGVyIHZpc3VhbGl6emFyZSB1biByZXBvcnQgZGV0dGFnbGlhdG8gdXNhbmRvIHVuYSBwYWdpbmEgKGV2ZW50dWFsbWVudGUgY29uIGFsdHJvIE1vZGVsbG8pIGRpZmZlcmVudGUsIHF1ZXN0byBwYXJhbWV0cm8gcHJlbmRlIGlkIG8gYWxpYXMgZGkgcGFnaW5hIGNoZSBkb3ZyZWJiZSBlc3NlcmUgdXNhdGEgcGVyIHZpc3VhbGl6emFyZSBpbCByZXBvcnQgZGkgZGV0dGFnbGlvJzsKJGxhbmdbJ3BhcmFtX3ByZWZpeCddID0gJ1VuIGJvb2xlYW5vIGNoZSBpbmRpY2Egc2UgaSBub21pIGRlaSBmaWxlIGRvdnJlYmJlcm8gZXNzZXJlIHByZWZpc3NhdGknOwokbGFuZ1sncGFyYW1fcHJlZml4X2ZldSddID0gJ1VuIGJvb2xlYW5vIGNoZSBpbmRpY2EgIGNoZSBpbCBwcmVmaXNzbyBkb3ZyZWJiZSBlc3NlcmUgcHJlc28gZGFsbCYjMDM5O2F1dG9yZSBjb3JyZW50ZSwgc2Ugbm9uIHNwZWNpZmljYXRvLCBpbCBwcmVmaXNzbyAmZWdyYXZlOyBpbCB0ZW1wbyBjb3JyZW50ZSAoaW4gZm9ybWF0byBkZWNoZXgpJzsKJGxhbmdbJ3BhcmFtX25vY2FwdGNoYSddID0gJ0Rpc2FiaWxpdGEgaWwgc3VwcG9ydG8gY2FwdGNoYSAoYXR0aXZvIGRpIGRlZmF1bHQpIG5lbCBtb2R1bG8gZGkgdXBsb2FkJzsKJGxhbmdbJ3RpdGxlX3VwbG9hZGZvcm1fdGVtcGxhdGUnXSA9ICdNb2RpZmljYSBpbCBNb2RlbGxvIGRlbCBNb2R1bG8gZGkgVXBsb2FkJzsKJGxhbmdbJ2NhcHRjaGFfdGl0bGUnXSA9ICdJbnNlcml0ZSBpbCB0ZXN0byBjb250ZW51dG8gbmVsbCYjMDM5O2ltbWFnaW5lJzsKJGxhbmdbJ2Vycm9yX2NhcHRjaGFtaXNtYXRjaCddID0gJ0lsIHRlc3RvIGluc2VyaXRvIG5vbiBjb3JyaXNwb25kZSBjb24gbCYjMDM5O2ltbWFnaW5lIHZpc3VhbGl6emF0YSc7CiRsYW5nWyd0aXRsZV9hdXRvdGh1bWJuYWlsX2V4dGVuc2lvbnMnXSA9ICdDcmVhIGFudGVwcmltZSBwZXIgaSBmaWxlIGNvbiBxdWVzdGUgZXN0ZW5zaW9uaSc7CiRsYW5nWyd0aXRsZV9hdXRvdGh1bWJuYWlsX3NpemUnXSA9ICdEaW1lbnNpb25lIG1hc3NpbWEgKGluIHBpeGVsKSBkZWxsJiMwMzk7YW50ZXByaW1hIGdlbmVyYXRhJzsKJGxhbmdbJ3Byb21wdF91cGxvYWRfaWNvbiddID0gJ0NhcmljYSB1biBJY29uYSc7CiRsYW5nWydpbmZvX3N5c2RlZmF1bHQnXSA9ICdRdWVzdG8gdGVzdG8gdmllbmUgdXNhdG8gcXVhbmRvIHNpIGNyZWEgdW4gbnVvdm8gbW9kZWxsbyBkaSBxdWVzdG8gdGlwbyc7CiRsYW5nWyd0aXRsZV9kZXRhaWxycHRfc3lzZGVmYXVsdCddID0gJ0RlZmF1bHQgZGkgU2lzdGVtYSBkZWwgTW9kZWxsbyBkaSBSYXBwb3J0byBEZXR0YWdsaSc7CiRsYW5nWyd0aXRsZV9zdW1tYXJ5cnB0X3N5c2RlZmF1bHQnXSA9ICdEZWZhdWx0IGRpIFNpc3RlbWEgZGVsIE1vZGVsbG8gZGkgUmFwcG9ydG8gU29tbWFyaW8nOwokbGFuZ1sndGl0bGVfdXBsb2FkZm9ybV9zeXNkZWZhdWx0J10gPSAnRGVmYXVsdCBkaSBTaXN0ZW1hIGRlbCBNb2RlbGxvIGRlbCBNb2R1bG8gZGkgdXBsb2FkJzsKJGxhbmdbJ3RlbXBsYXRlJ10gPSAnTW9kZWxsbyc7CiRsYW5nWydyZXNldHRvZGVmYXVsdCddID0gJ1JpcHJpc3RpbmEgdmFsb3JpIHByZWRlZmluaXRpJzsKJGxhbmdbJ3RpdGxlX3N1bW1hcnlycHRfdGVtcGxhdGUnXSA9ICdNb2RlbGxvIGRpIFJhcHBvcnRvIFNvbW1hcmlvJzsKJGxhbmdbJ3RpdGxlX2RldGFpbHJwdF90ZW1wbGF0ZSddID0gJ01vZGVsbG8gZGkgUmFwcG9ydG8gRGV0dGFnbGknOwokbGFuZ1sncHJvbXB0X25hbWUnXSA9ICdOb21lJzsKJGxhbmdbJ3Byb21wdF9kZWZhdWx0J10gPSAnUHJlZGVmaW5pdG8nOwokbGFuZ1snbGVnZW5kX3VwbG9hZGZvcm0nXSA9ICdDYXJpY2EgdW4gRmlsZSc7CiRsYW5nWydlcnJvcl9taXNzaW5ncGFyYW0nXSA9ICdNYW5jYSB1biBwYXJhbWV0cm8gZXNzZW56aWFsZSc7CiRsYW5nWydlcnJvcl9taXNzaW5nbmFtZSddID0gJ0RldmUgZXNzZXJlIHNwZWNpZmljYXRvIHVuIG5vbWUgcGVyIGlsIGZpbGUnOwokbGFuZ1snZXJyb3JfbWlzc2luZ2V4dGVuc2lvbnMnXSA9ICdEZXZlIGVzc2VyZSBzcGVjaWZpY2F0YSBhbG1lbm8gdW4mIzAzOTtlc3RlbnNpb25lIGRpIGZpbGUnOwokbGFuZ1snZXJyb3JfbWlzc2luZ2ljb24nXSA9ICdEZXZlIGVzc2VyZSBzcGVjaWZpY2F0YSB1biYjMDM5O2ljb25hJzsKJGxhbmdbJ2Vycm9yX25vc3VjaHJvdyddID0gJ05vbiAmZWdyYXZlOyBwb3NzaWJpbGllIHRyb3ZhcmUgbGEgcmlnYSBzcGVjaWZpY2F0YSAnOwokbGFuZ1snbmFtZV91bmtub3duJ10gPSAnU2Nvbm9zY2l1dG8nOwokbGFuZ1snZGVzY3JpcHRpb25fdW5rbm93biddID0gJ0Rlc2NyaXppb25lIGRlbCB0aXBvIGRpIGZpbGUgcGVyIGZpbGUgbm9uIGNvcnJpc3BvbmRlbnRpJzsKJGxhbmdbJ2ltYWdlJ10gPSAnSW1tYWdpbmUnOwokbGFuZ1snaWNvbiddID0gJ0ljb25hJzsKJGxhbmdbJ2V4dGVuc2lvbnMnXSA9ICdFc3RlbnNpb25lIEZpbGUnOwokbGFuZ1snYWRkZmlsZXR5cGUnXSA9ICdBZ2dpdW5naSB1biBOdW92byBUaXBvIGRpIEZpbGUnOwokbGFuZ1snZmlsZV90eXBlcyddID0gJ1RpcGkgZGkgRmlsZSc7CiRsYW5nWydlcnJvcl9ub2NhdGVnb3J5aWQnXSA9ICdOZXNzdW4gSUQgZGkgQ2F0ZWdvcmlhIGZvcm5pdG8nOwokbGFuZ1snZXJyb3Jfbm9jYXRlZ29yeSddID0gJ05lc3N1biBJRCBkaSBDYXRlZ29yaWEgZm9ybml0byc7CiRsYW5nWydlcnJvcl90ZW1wbGF0ZW5hbWVleGlzdHMnXSA9ICdFc2lzdGUgZ2kmYWdyYXZlOyB1biBtb2RlbGxvIGNvbiBsbyBzdGVzc28gbm9tZSc7CiRsYW5nWydwcm9tcHRfdGVtcGxhdGVuYW1lJ10gPSAnTm9tZSBNb2RlbGxvJzsKJGxhbmdbJ3Byb21wdF90ZW1wbGF0ZSddID0gJ01vZGVsbG8nOwokbGFuZ1sncHJvbXB0X25ld3RlbXBsYXRlJ10gPSAnQ3JlYSB1biBudW92byBNb2RlbGxvJzsKJGxhbmdbJ2hlbHBfT25Eb3dubG9hZCddID0gJzxwPlVuIGV2ZW50byBnZW5lcmF0byBxaWFuZG8gdW4gdXRlbnRlIHRlcm1pbmEgaWwgZG93bmxvYWQgZGkgdW4gZmlsZTwvcD4NCjxoND5QYXJhbWV0cmk8L2g0Pg0KPHVsPg0KPGxpPjxlbT5pZDwvZW0+IC0gSUQgZGkgVXBsb2FkPC9saT4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gTm9tZSBmaWxlPC9saT4NCjxsaT48ZW0+aXA8L2VtPiAtIEwmIzAzOTtpbmRpcml6em8gSVAgZGkgY2hpIGVmZmV0dHVhIGlsIGRvd25sb2FkPC9saT4NCjwvdWw+DQonOwokbGFuZ1snaGVscF9PbkRlbGV0ZUNhdGVnb3J5J10gPSAnPHA+VW4gZXZlbnRvIGdlbmVyYXRvIHF1YW5kbyB2aWVuZSBjYW5jZWxsYXRhIHVuYSBDYXRlZ29yaWE8L3A+DQo8aDQ+UGFyYW1ldHJpPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gTm9tZSBDYXRlZ29yaWE8L2xpPg0KPGxpPjxlbT5wYXRoPC9lbT4gLSBQZXJjb3JzbyBkZWxsYSBDYXRlZ29yaWE8L2xpPg0KPC91bD4NCic7CiRsYW5nWydoZWxwX09uQ3JlYXRlQ2F0ZWdvcnknXSA9ICc8cD5VbiBldmVudG8gZ2VuZXJhdG8gcXVhbmRvIHZpZW5lIGNyZWF0YSB1bmEgQ2F0ZWdvcmlhPC9wPg0KPGg0PlBhcmFtZXRyaTwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIElsIG5vbWUgZGVsbGEgY2F0ZWdvcmlhPC9saT4NCjxsaT48ZW0+ZGVzY3JpcHRpb248L2VtPiAtIExhIGRlc2NyaXppb25lIGRlbGxhIGNhdGVnb3JpYTwvbGk+DQo8bGk+PGVtPnBhdGg8L2VtPiAtIElsIHBlcmNvcnNvIGRlbGxhIGNhdGVnb3JpYTwvbGk+DQo8bGk+PGVtPnBhdGg8L2VtPiAtIFVuIG9wemlvbmUgY2hlIGluZGljYSBzZSBsYSBjYXRlZ29yaWEgJmVncmF2ZTsgZWxlbmNhYmlsZTwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2hlbHBfT25SZW1vdmUnXSA9ICc8cD5VbiBldmVudG8gZ2VuZXJhdG8gcXVhbmRvIHVuIGZpbGUgdmllbmUgcmltb3NzbyB0cmFtaXRlIGwmIzAzOTtpbnRlcmZhY2NpYSBhbW1pbmlzdHJhdG9yZSBvIHV0ZW50ZTwvcD4NCjxoND5QYXJhbWV0cmk8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBJbCBub21lIGRlbCBmaWxlIHJpbW9zc288L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gTCYjMDM5O2lkIGRlbCBmaWxlIHJpbW9zc288L2xpPg0KPGxpPjxlbT5jYXRlZ29yeV9pZDwvZW0+IC0gTCYjMDM5O2lkIGRlbGxhIGNhdGVnb3JpYTwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2hlbHBfT25VcGxvYWQnXSA9ICc8cD5VbiBldmVudG8gZ2VuZXJhdG8gcXVhbmRvIHVuIGZpbGUgdmllbmUgY2FyaWNhdG8gdHJhbWl0ZSBsJiMwMzk7aW50ZXJmYWNjaWEgYW1taW5pc3RyYXRvcmUgbyB1dGVudGU8L3A+DQo8aDQ+UGFyYW1ldHJpPC9oND4NCjx1bD4NCjxsaT48ZW0+Y2F0ZWdvcnk8L2VtPiAtIElsIG5vbWUgZGVsbGEgY2F0ZWdvcmlhPC9saT4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gSWwgbm9tZSBkZWwgZmlsZSBjYXJpY2F0bzwvbGk+DQo8bGk+PGVtPnNpemU8L2VtPiAtIExhIGRpbWVuc2lvbmUgZGVsIGZpbGUgY2FyaWNhdG88L2xpPg0KPGxpPjxlbT5zdW1tYXJ5PC9lbT4gLSBMYSBkZXNjcml6aW9uZSBicmV2ZSBkZWwgZmlsZSBjYXJpY2F0byAocHUmb2dyYXZlOyBlc3NlcmUgdnVvdGEpPC9lbT48L2xpPg0KPGxpPjxlbT5kZXNjcmlwdGlvbjwvZW0+IC0gTGEgZGVzY3JpemlvbmUgY29tcGxldGEgcGVyIGlsIGZpbGUgY2FyaWNhdG8gKHB1Jm9ncmF2ZTsgZXNzZXJlIHZ1b3RhKTwvZW0+PC9saT4NCjxsaT48ZW0+YXV0aG9yPC9lbT4gLSBMJiMwMzk7YXV0b3JlIGRlbCBmaWxlIGNhcmljYXRvIChzZSBkaXNwb25pYmlsZSk8L2VtPjwvbGk+DQo8bGk+PGVtPmlwX2FkZHJlc3M8L2VtPiAtIEwmIzAzOTtpbmRpcml6em8gaW50ZXJuZXQgZGVsIGNsaWVudCBjaGUgaGEgY2FyaWNhdG8gaWwgZmlsZTwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2luZm9fZXZlbnRfb25kZWxldGVjYXRlZ29yeSddID0gJ0V2ZW50byBnZW5lcmF0byBkb3BvIGxhIGNhbmNlbGxhemlvbmUgZGkgdW5hIGNhdGVnb3JpYSc7CiRsYW5nWydpbmZvX2V2ZW50X29uY3JlYXRlY2F0ZWdvcnknXSA9ICdFdmVudG8gZ2VuZXJhdG8gZG9wbyBsYSBjcmVhemlvbmUgZGkgdW5hIGNhdGVnb3JpYSc7CiRsYW5nWydpbmZvX2V2ZW50X29uZG93bmxvYWQnXSA9ICdFdmVudG8gZ2VuZXJhdG8gZG9wbyBsbyBzY2FyaWNhbWVudG8gZGkgdW4gZmlsZSc7CiRsYW5nWydpbmZvX2V2ZW50X29udXBsb2FkJ10gPSAnRXZlbnRvIGdlbmVyYXRvIGRvcG8gaWwgY2FyaWNhbWVudG8gZGkgdW4gbnVvdm8gZmlsZSc7CiRsYW5nWydpbmZvX2V2ZW50X29ucmVtb3ZlJ10gPSAnRXZlbnRvIGdlbmVyYXRvIHF1YW5kbyB1biBmaWxlIHZpZW5lIHJpbW9zc28nOwokbGFuZ1sndGl0bGVfdXNlcnRhZ19vbnVwbG9hZCddID0gJ1RhZyBkZWZpbml0byBkYWxsJiMwMzk7dXRlbnRlIGRhIGludm9jYXJlIGFsIHRlcm1pbmUgZGVsIGNhcmljYW1lbnRvIGZpbGUnOwokbGFuZ1snbm9uZSddID0gJ05lc3N1bm8nOwokbGFuZ1snbWF0Y2hlc2ZvdW5kJ10gPSAnQ29ycmlzcG9uZGVuemUgdHJvdmF0ZSc7CiRsYW5nWydmaWx0ZXInXSA9ICdGaWx0cm8nOwokbGFuZ1sndGl0bGVfcmVkaXJlY3RvbnVwbG9hZCddID0gJ1JlZGlyZXppb25hIGFsbCYjMDM5OyBpZC9hbGlhcyBkZWxsYSBwYWdpbmEgYWwgY2FyaWNhbWVudG8gZGVsbCYjMDM5O3V0ZW50ZSc7CiRsYW5nWydkZXRhaWxzJ10gPSAnRGV0dGFnbGknOwokbGFuZ1snY29uZmlybV9wcmVmZXJlbmNlcyddID0gJ1NpZXRlIGNlcnRpIGRpIHZvbGVyZSBjb3JyZWdnZXJlIGxlIHByZWZlcmVuemU/JzsKJGxhbmdbJ2Vycm9yX25vZmlsZXN1cGxvYWRlZCddID0gJ05lc3N1biBmaWxlIGNhcmljYXRvLic7CiRsYW5nWydwcm9tcHRfcmVwbGFjZSddID0gJ1Blcm1ldHRpIFNvdnJhc2NyaXR0dXJhJzsKJGxhbmdbJ2luZm9fcmVwbGFjZSddID0gJ1Nvc3RpdHVpc2NpIHF1YWxzaWFzaSBmaWxlIGNvbiBsbyBzdGVzc28gbm9tZSAobm9uIG1vZGlmaWNhIGwmIzAzOTtJRCknOwokbGFuZ1sncGFyYW1fbm9faW5pdGlhbCddID0gJ05vbiBtb3N0cmEgbmVzc3VuIHJpc3VsdGF0byBpbml6aWFsZSBxdWFuZG8gaWwgZmlsdHJvICZlZ3JhdmU7IGF0dGl2YXRvJzsKJGxhbmdbJ3BhcmFtX2tleSddID0gJ0Zvcm5pc2NlIHVuYSBjaGlhdmUgYWdnaXVudGl2YSBhbCBtb2R1bG8gcGVyIHVuYSBzdWNjZXNzaXZhIG9yZ2FuaXp6YXppb25lIGRlZ2xpIHVwbG9hZC4gIFF1ZXN0YSBjaGlhdmUgcHUmb2dyYXZlOyBlc3NlcmUgdW5hIHN0cmluZ2EgY29kaWZpY2F0YSBjb21lOiAmIzAzOTtmZXVzZXJzOnVpZCYjMDM5OywgZXRjLiAgUXVlc3RvIHBhcmFtZXRybyBzb2xpdGFtZW50ZSAmZWdyYXZlOyBuZWNlc3NhcmlvIHNvbG8gcXVhbmRvIHZpZW5lIGluY29ycG9yYXRvIGlsIG1vZHVsbyBVcGxvYWRzIGluIHVuIGFsdHJvIG1vZHVsbyc7CiRsYW5nWydwYXJhbV9ub2F1dGhvciddID0gJ05hc2NvbmRlIGlsIGNhbXBvIGF1dG9yZSBkYWwgbW9kdWxvIGRpIFVwbG9hZC4gUXVlc3RvIHBhcmFtZXRybyAmZWdyYXZlOyB2YWxpZG8gc29sbyBxdWFuZG8gJmVncmF2ZTsgaW1wb3N0YXRvIG1vZGU9JiMwMzk7dXBsb2FkJiMwMzk7LiAgU2UgcHJlc2VudGUgaWwgbW9kdWxvIEZyb250ZW5kVXNlcnMgZSB1biB1dGVudGUgJmVncmF2ZTsgYXR0dWFsbWVudGUgbG9nZ2F0bywgaWwgbm9tZSB1dGVudGUgdmVyciZhZ3JhdmU7IGNvbnNlcnZhdG8gaW4gdW4gY2FtcG8gbmFzY29zdG8nOwokbGFuZ1sncGFyYW1fdXBsb2FkX2lkJ10gPSAndXBsb2FkX2lkPSZxdW90O2lkJnF1b3Q7IC0gc3BlY2lmaWNhIHVuIGZpbGUgc2luZ29sbyBwZXIgbGUgbW9kYWxpdCZhZ3JhdmU7IHVybC9saW5rIG8gc2luZ29sbyAoc29wcmEpJzsKJGxhbmdbJ3BhcmFtX2RldGFpbHRlbXBsYXRlJ10gPSAnVXRpbGl6emFyZSB1biBtb2RlbGxvIGNvbiBxdWVzdG8gbm9tZSBwZXIgaWwgcmFwcG9ydG8gZGV0dGFnbGlhdG8uJzsKJGxhbmdbJ3BhcmFtX3RlbXBsYXRlJ10gPSAnVXRpbGl6emFyZSB1biBtb2RlbGxvIGNvbiBxdWVzdG8gbm9tZSBwZXIgcXVlc3RvIHJhcHBvcnRvIG8gbW9kdWxvLiBRdWVzdG8gbW9kZWxsbyBpbnNlcmlzY2UgYXV0b21hdGljYW1lbnRlIHVuIG1vZGVsbG8gY29uIGlsIG5vbWUgY29ycmlzcG9uZGVudGUgZGFsbGEgbGlzdGEgYXBwcm9wcmlhdGEgYmFzYXRhIHN1bGxhIG1vZGFsaXQmYWdyYXZlOyBzcGVjaWZpY2F0YSc7CiRsYW5nWydwYXJhbV9maWx0ZXInXSA9ICdWaXN1YWxpenphIGlsIG1vZHVsbyBkaSBmaWx0cmFnZ2lvJzsKJGxhbmdbJ3BhcmFtX25vX2ludGl0aWFsJ10gPSAnRSYjMDM5OyB1dGlsZSBzb2xvIHF1YW5kbyBpbCBwYXJhbWV0cm8gZmlsdHJvIHZpZW5lIGZvcm5pdG8sIG8gJmVncmF2ZTsgYXR0aXZvIGNvbWUgdmFsb3JlIHByZWRlZmluaXRvLCBxdWVzdG8gcGFyYW1ldHJvIGluZGljYSBzZSBkZWJiYW5ubyBlc3NlcmUgcmVzdGl0dWl0aSBpIHZhbG9yaSBpbml6aWFsaSc7CiRsYW5nWydwYXJhbV9maWxldHlwZXMnXSA9ICdWaXN1YWxpenphIHNvbG8gaSBmaWxlIGlsIGN1aSB0aXBvIGNvcnJpc3BvbmRlIGNvbiBxdWVzdGEgbGlzdGEgc2VwYXJhdGEgZGEgdmlyZ29sYSc7CiRsYW5nWydwYXJhbV9zb3J0b3JkZXInXSA9ICcgIDxwPlRpcGkgZGkgb3JkaW5hbWVudG8NCiAgPHVsPg0KICA8bGk+PGVtPmRhdGVfYXNjPC9lbT4gLSBPcmRpbmEgcGVyIGRhdGEgYXNjZW5kZW50ZTwvbGk+DQogIDxsaT48ZW0+ZGF0ZV9kZXNjPC9lbT4gLSBPcmRpbmEgcGVyIGRhdGEgZGlzY2VuZGV0ZTwvbGk+DQogIDxsaT48ZW0+bmFtZV9hc2M8L2VtPiAtIE9yZGluYSBwZXIgbm9tZSBhc2NlbmRlbnRlPC9saT4NCiAgPGxpPjxlbT5uYW1lX2Rlc2M8L2VtPiAtIE9yZGluYSBwZXIgbm9tZSBkaXNjZW5kZW50ZTwvbGk+DQogIDxsaT48ZW0+c2l6ZV9hc2M8L2VtPiAtIE9yZGluYSBwZXIgZGltZW5zaW9uZSBhc2NlbmRlbnRlPC9saT4NCiAgPGxpPjxlbT5zaXplX2Rlc2M8L2VtPiAtIE9yZGluYSBwZXIgZGltZW5zaW9uZSBkaXNjZW5kZW50ZTwvbGk+DQogIDxsaT48ZW0+ZGVzY19hc2M8L2VtPiAtIE9yZGluYSBwZXIgZGVzY3JpemlvbmUgYXNjZW5kZW50ZTwvbGk+DQogIDxsaT48ZW0+ZGVzY19kZXNjPC9lbT4gLSBPcmRpbmEgcGVyIGRlc2NyaXppb25lIGRpc2NlbmRlbnRlPC9saT4NCiAgPGxpPjxlbT5hdXRob3JfYXNjPC9lbT4gLSBPcmRpbmEgcGVyIGF1dG9yZSBhc2NlbmRlbnRlPC9saT4NCiAgPGxpPjxlbT5hdXRob3JfZGVzYzwvZW0+IC0gT3JkaW5hIHBlciBhdXRvcmUgZGlzY2VuZGVudGU8L2xpPg0KICA8bGk+PGVtPmlwX2FzYzwvZW0+IC0gT3JkaW5hIHBlciBpbmRpcml6em8gaXAgYXNjZW5kZW50ZTwvbGk+DQogIDxsaT48ZW0+aXBfZGVzYzwvZW0+IC0gT3JkaW5hIHBlciBpbmRpcml6em8gaXAgZGlzY2VuZGVudGU8L2xpPg0KICA8bGk+PGVtPnJhbmRvbTwvZW0+IC0gT3JkaW5lIGNhc3VhbGU8L2xpPg0KICA8L3VsPg0KICA8L3A+JzsKJGxhbmdbJ3BhcmFtX2xpc3Rpbmd0ZW1wbGF0ZSddID0gJ1RlbXBsYXRlIHVzYXRvIHBlciBsYSBsaXN0YSBkZWxsZSBjYXRlZ29yaWUgZG9wbyBsYSBwYWdpbmEgU29tbWFyaW8gQ2F0ZWdvcmlhJzsKJGxhbmdbJ3BhcmFtX2xpc3Rpbmdzb3J0b3JkZXInXSA9ICdPcmRpbmFtZW50byAoY29tZSBwYXJhbV9zb3J0b3JkZXIpIHVzYXRvIHBlciBsYSBsaXN0YSBkZWxsZSBjYXRlZ29yaWUgZG9wbyBsYSBwYWdpbmEgU29tbWFyaW8gQ2F0ZWdvcmlhJzsKJGxhbmdbJ3BhcmFtX2ZpbGVleHRlbnNpb25zJ10gPSAnZmlsZV9leHRlbnNpb25zPSZxdW90O2V4dDEsZXh0MixleHQzJnF1b3Q7DQo8cD52YWxpZG8gc29sbyBjb24gbW9kZT11cGxvYWQsIHF1ZXN0byBwYXJhbWV0cm8gbGltaXRhIGkgdGlwaSBkaSBmaWxlIGNoZSBwb3Nzb25vIGVzc2VyZSBjYXJpY2F0aS4gIFNvdnJhc2NyaXZlIHF1YWxzaWFzaSBpbXBvc3RhemlvbmUgbmVsbGUgcHJlZmVyZW56ZSBkZWwgbW9kdWxvLjwvcD4nOwokbGFuZ1sncGFyYW1fY291bnQnXSA9ICdjb3VudD0mcXVvdDtOJnF1b3Q7DQo8cD5VbiBwYXJhbWV0cm8gcGVyIGVsZW5jYXJlIHNvbG8gaSBwcmltaSBOIHJpc3VsdGF0aSBkZWxsYSBxdWVyeS4gIEwmIzAzOTtpbXBhZ2luYXppb25lIHNhcmViYmUgbWlnbGlvcmUsIG1hIHBlciBvcmEgcXVlc3RvIHJpc29sdmVyJmFncmF2ZTsgaWwgcHJvYmxlbWEuPC9wPic7CiRsYW5nWydwYXJhbV9jYXRlZ29yeSddID0gJ2NhdGVnb3J5PSZxdW90O25hbWUmcXVvdDsNCjxwPjxiPk5vdGE6PC9iPiBMYSBDYXRlZ29yaWEgcHUmb2dyYXZlOyBlc3NlcmUgJnF1b3Q7YWxsJnF1b3Q7LCBjaGUgZWxlbmNoZXImYWdyYXZlOyB0dXR0aSBnbGkgdXBsb2FkIGRhIHR1dHRlIGxlIGNhdGVnaXJpZSA8ZW0+ZWxlbmNhYmlsaTwvZW0+PC9wPic7CiRsYW5nWydwYXJhbV9tb2RlJ10gPSAnICA8dWw+DQogIDxsaT48ZW0+ZGV0YWlsZWQ8L2VtPiAtIFZpc3VhbGl6emEgdW4gZWxlbmNvIGRldHRhZ2xpYXRvIGRpIHR1dHRpIGkgZmlsZSBuZWxsYSBjYXRlZ29yaWE8L2xpPg0KICA8bGk+PGVtPnVwbG9hZDwvZW0+IC0gVmlzdWFsaXp6YSB1biBtb2R1bG8gY2hlIHBlcm1ldHRhIGFkIHVuIFV0ZW50ZSBGcm9udGVuZCBkaSBjYXJpY2FyZSB1biBmaWxlPC9saT4NCiAgPGxpPjxlbT51cmwgPGk+b3I8L2k+IGxpbms8L2VtPiAtIFZpc3VhbGl6emEgaWwgbGluayBhZCB1biBmaWxlPC9saT4NCiAgPGxpPjxlbT5zdW1tYXJ5PC9lbT4gLSBWaXN1YWxpenphIHVuYSBsaXN0YSBhIHNvbW1hcmlvIGRpIHR1dHRpIGkgZmlsZSBuZWxsYSBjYXRlZ29yaWE8L2xpPg0KICA8bGk+PGVtPnNpbmdsZTwvZW0+IC0gVmlzdWFsaXp6YSB1biByYXBwb3J0byBkZXR0YWdsaWF0byBzdSB1biB1cGxvYWQgc2luZ29sbzwvbGk+DQogIDwvdWw+JzsKJGxhbmdbJ3BhcmFtX3NlbGVjdGZvcm0nXSA9ICdXaGVuIHVzaW5nIHRoZSAmIzAzOTtzZWxlY3QmIzAzOTsgbW9kZSwgdGhpcyBwYXJhbWV0ZXIgaXMgdGhlIGZvcm1pZCBvZiB0aGUgcGFyZW50IGZvcm0uICBVc2VkIHRvIGhhbmRsZSBwYXJhbWV0ZXIgcGFzc2luZyc7CiRsYW5nWydwYXJhbV9zZWxlY3RuYW1lJ10gPSAnd2hlbiB1c2luZyB0aGUgJiMwMzk7c2VsZWN0JiMwMzk7IG1vZGUsIHRoaXMgcGFyYW1ldGVyIHNwZWNpZmllcyB0aGUgbmFtZSBvZiB0aGUgZmllbGQnOwokbGFuZ1sncGFyYW1fc2VsZWN0dmFsdWUnXSA9ICdXaGVuIHVzaW5nIHRoZSAmIzAzOTtzZWxlY3QmIzAzOTsgbW9kZSwgdGhpcyBwYXJhbWV0ZXIgc3BlY2lmaWVzIHRoZSBkZWZhdWx0IGZpZWxkIHZhbHVlJzsKJGxhbmdbJ3BhcmFtX3NlbGVjdG5vbmUnXSA9ICdXaGVuIHVzaW5nIHRoZSAmIzAzOTtzZWxlY3QmIzAzOTsgbW9kZSwgdGhpcyBwYXJhbWV0ZXIgc3BlY2lmaWVzIHdldGhlciAmIzAzOTtub25lJiMwMzk7IGlzIGEgdmFsaWQgY2hvaWNlLic7CiRsYW5nWydyZXR1cm50b21vZHVsZSddID0gJ1Rvcm5hIGFsIHBhbm5lbGxvIGRlbCBtb2R1bG8nOwokbGFuZ1snZXJyb3Jfbm9jYXRlZ29yaWVzJ10gPSAnTm9uIGNpIHNvbm8gY2F0ZWdvcmllIGRlZmluaXRlJzsKJGxhbmdbJ3RpdGxlX2VuZm9yY2VleHRlbnNpb25zJ10gPSAnRXN0ZW5zaW9uZSBuZWNlc3NhcmlhIHBlciB0dXR0aSBpIGZpbGUgY2FyaWNhdGknOwokbGFuZ1sncmVzdG9yZWRlZmF1bHRzY29uZmlybSddID0gJ1F1ZXN0YSBvcGVyYXppb25lIHJpcHJpc3RpbmVyJmFncmF2ZTsgaWwgbW9kZWxsbyBhbCBwcmVkZWZpbml0byBkaSBzaXN0ZW1hLiBPZ25pIG1vZGlmaWNhIGZhdHRhIHZlcnImYWdyYXZlOyBwZXJzYS4gIFNpZXRlIGNlcnRpIGRpIHZvbGVyZSBwcm9jZWRlcmU/JzsKJGxhbmdbJ2luZm9fdGh1bWJuYWlsJ10gPSAnVW4gZmlsZSBkaSBhbnRlcHJpbWEgb3B6aW9uYWxlJzsKJGxhbmdbJ3RodW1ibmFpbCddID0gJ0FudGVwcmltYSc7CiRsYW5nWyduZXd0aHVtYm5haWwnXSA9ICdVcGxvYWQgbnVvdmEgTWluaWF0dXJhJzsKJGxhbmdbJ2luZm9fc3VtbWFyeSddID0gJ1VuYSBicmV2ZSBkZXNjcml6aW9uZSBkZWwgZmlsZSAoc2UgdnVvdG8sIGlsIG5vbWUgZGVsIGZpbGUgdmllbmUgdXRpbGl6emF0byBzZW56YSBlc3RlbnNpb25lKSc7CiRsYW5nWydpbmZvX2NhdGVnb3J5bmFtZSddID0gJ1VuIG5vbWUgYnJldmUgcGVyIGxhIHZvc3RyYSBjYXRlZ29yaWEgKGxlZ2dpYmlsZSknOwokbGFuZ1snaW5mb19jYXRlZ29yeWRlc2MnXSA9ICdVbmEgZGVzY3JpemlvbmUgcGVyIGxhIHZvc3RyYSBjYXRlZ29yaWEnOwokbGFuZ1snaW5mb19jYXRlZ29yeXBhdGgnXSA9ICdJbCBub21lIGRlbGxhIGNhcnRlbGxhIGRlbnRybyBsYSBjYXJ0ZWxsYSBkaSB1cGxvYWQgY2hlIHZlcnImYWdyYXZlOyB1dGlsaXp6YXRhIHBlciBjb250ZW5lcmUgaSBmaWxlIGRpIHF1ZXN0YSBjYXRlZ29yaWEuIFNlIGxhIGNhcnRlbGxhIGNvbiBxdWVzdG8gbm9tZSBub24gZXNpc3RlIHB1Jm9ncmF2ZTsgZXNzZXJlIGNyZWF0YS4nOwokbGFuZ1snaW5mb19kZXN0bmFtZSddID0gJ1V0aWxpenphIGlsIGNhbXBvICYjMDM5O1VwbG9hZCBBcyYjMDM5OyAoQ2FyaWNhIENvbWUpIHBlciBtb2RpZmljYXJlIGlsIG5vbWUgZGVsIGZpbGUgbmVsIGNhcmljYW1lbnRvLiAgTGFzY2lhdGUgdnVvdG8gcGVyIG1hbnRlbmVyZSBsbyBzdGVzc28gbm9tZSBkaSBmaWxlLic7CiRsYW5nWydlcnJvcl9jYW50Y3JlYXRlZGlyZWN0b3J5J10gPSAnTm9uIHBvc3NvIGNyZWFyZSBsYSBjYXJ0ZWxsYSc7CiRsYW5nWydlcnJvcl9ub21haWxlcm1vZHVsZSddID0gJ05vbiByaWVzY28gYSBpbml6aWFsaXp6YXJlIGlsIG1vZHVsbyBDTVNNYWlsZXInOwokbGFuZ1sndXBsb2FkX25vdGlmaWNhdGlvbiddID0gJ0UmIzAzOTsgc3RhdG8gY2FyaWNhdG8gdW4gbnVvdm8gZmlsZSc7CiRsYW5nWyd0aXRsZV9lbWFpbF9vbl91cGxvYWQnXSA9ICdJbnZpYSBub3RpZmljYSBkaSB1cGxvYWQgYTonOwokbGFuZ1snZW1haWxfdGVtcGxhdGUnXSA9ICdNb2RlbGxvIGRpIEUtbWFpbCc7CiRsYW5nWyd0aXRsZV9kdW1teV9pbmRleF9odG1sJ10gPSAnQ3JlYXJlIHVuIGZpbGUgaW5kZXguaHRtbCBpbiBvZ25pIGNhcnRlbGxhP0NyZWF0ZSBkdW1teSBpbmRleC5odG1sIGZpbGVzIGluIGVhY2ggZGlyZWN0b3J5Pzxici8+PGVtPk9nbmkgZmlsZSBpbmRleC5odG1sIGVzaXN0ZW50ZSB2ZXJyJmFncmF2ZTsgY29uc2VydmF0bzwvZW0+JzsKJGxhbmdbJ2Fib3V0J10gPSAnSW5mb3JtYXppb25pIHN1JzsKJGxhbmdbJ2Vycm9yX3Blcm1pc3Npb25kZW5pZWQnXSA9ICdBY2Nlc3NvIE5lZ2F0by4gVmVyaWZpY2F0ZSBpIHZvc3RyaSBwZXJtZXNzaS4nOwokbGFuZ1snZXJyb3JfY291bGRub3R3cml0ZSddID0gJ05vbiBwb3NzbyBzY3JpdmVyZSc7CiRsYW5nWydhZGRjYXRlZ29yeSddID0gJ0FnZ2l1bmdpIENhdGVnb3JpYSc7CiRsYW5nWydhbGwnXSA9ICdUdXR0byc7CiRsYW5nWydhcmV5b3VzdXJlJ10gPSAnU2lldGUgU2ljdXJpPyc7CiRsYW5nWydhdXRob3InXSA9ICdBdXRvcmUnOwokbGFuZ1snY2FuY2VsJ10gPSAnQW5udWxsYSc7CiRsYW5nWydjYW5ub3Rtb2RpZnlwYXRoJ10gPSAnKElsIHBlcmNvcnNvIG5vbiBwdSZvZ3JhdmU7IGVzc2VyZSBtb2RpZmljYXRvKSc7CiRsYW5nWydjYXRlZ29yaWVzJ10gPSAnQ2F0ZWdvcmllJzsKJGxhbmdbJ2NhdGVnb3J5J10gPSAnQ2F0ZWdvcmlhJzsKJGxhbmdbJ21lc3NhZ2VfY2F0ZWdvcnlhZGRlZCddID0gJ0NhdGVnb3JpYSBhZ2dpdW50YSBjb24gc3VjY2Vzc28nOwokbGFuZ1snZGF0ZSddID0gJ0RhdGEnOwokbGFuZ1snZGF0ZXVwbG9hZGVkJ10gPSAnRGF0YSBDYXJpY2FtZW50byc7CiRsYW5nWydkZWZhdWx0J10gPSAnVmFsb3JpIHByZWRlZmluaXRpJzsKJGxhbmdbJ2RlbGV0ZSddID0gJ0VsaW1pbmEnOwokbGFuZ1snZGVzY3JpcHRpb24nXSA9ICdEZXNjcml6aW9uZSc7CiRsYW5nWydkZXN0bmFtZSddID0gJ0NhcmljYSBDb21lJzsKJGxhbmdbJ2RldGFpbF90ZW1wbGF0ZSddID0gJ01vZGVsbG8gRGV0dGFnbGknOwokbGFuZ1snZG93bmxvYWRlZCddID0gJ0lsIGZpbGUgJXMgJmVncmF2ZTsgc3RhdG8gc2NhcmljYXRvLic7CiRsYW5nWydkb3dubG9hZHMnXSA9ICdEb3dubG9hZCc7CiRsYW5nWydlZGl0J10gPSAnTW9kaWZpY2EnOwokbGFuZ1snZWRpdGNhdGVnb3J5J10gPSAnTW9kaWZpY2EgQ2F0ZWdvcmlhJzsKJGxhbmdbJ2VkaXR1cGxvYWQnXSA9ICdNb2RpZmljYSBVcGxvYWQnOwokbGFuZ1snZXJyb3InXSA9ICdFcnJvcmUhJzsKJGxhbmdbJ2Vycm9yX3BhdGhpbnVzZSddID0gJ0UmIzAzOTsgZ2kmYWdyYXZlOyBwcmVzZW50ZSB1bmEgY2F0ZWdvcmlhIGNoZSB1dGlsaXp6YSBxdWVzdG8gcGVyY29yc28nOwokbGFuZ1snZXJyb3JfY2F0ZWdvcnlleGlzdHMnXSA9ICdFcnJvcmU6IGxhIENhdGVnb3JpYSBlaXN0ZSBnaSZhZ3JhdmU7JzsKJGxhbmdbJ2Vycm9yX2NhdGVnb3J5bm90ZW1wdHknXSA9ICdFcnJvcmUhIE5vbiBwb3NzbyBlbGltaW5hcmUgdW5hIGNhdGVnb3JpYSBjaGUgbm9uIHNpYSB2dW90YSc7CiRsYW5nWydlcnJvcl9jYXRlZ29yeW5vdGZvdW5kJ10gPSAnRXJyb3JlOiBDYXRlZ29yaWEgbm9uIHRyb3ZhdGEhJzsKJGxhbmdbJ2Vycm9yX2RiZXJyb3InXSA9ICdFcnJvcmU6IEVycm9yZSBkZWwgRGF0YWJhc2UhJzsKJGxhbmdbJ2Vycm9yX2VtcHR5Y2F0ZWdvcnknXSA9ICdFcnJvcmU6IENhdGdvcmlhIHZ1b3RhISc7CiRsYW5nWydlcnJvcl9lbXB0eXBhdGgnXSA9ICdFcnJvcmU6IFBlcmNvcnNvIHZ1b3RvISc7CiRsYW5nWydlcnJvcl9maWxlZXhpc3RzJ10gPSAnRXJyb3JlISBJbCBmaWxlICVzICZlZ3JhdmU7IGdpJmFncmF2ZTsgcHJlc2VudGUuJzsKJGxhbmdbJ2Vycm9yX2ZpbGVub3Rmb3VuZCddID0gJ0Vycm9yZSEgTm9uICZlZ3JhdmU7IHBvc3NpYmlsZSB0cm92YXJlIGlsIGZpbGUgJXMuJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ0Vycm9yZTogUGFyYW1ldHJpIGluc3VmZmljaWVudGkgcGFzc2F0aSBhbCBtb2R1bG8hJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRhdXRob3InXSA9ICdFcnJvcmU6IEF1dG9yZSBub24gdmFsaWRvIChvIHZ1b3RvKS4nOwokbGFuZ1snZXJyb3JfaW52YWxpZGNhdGVnb3J5J10gPSAnRXJyb3JlOiBDYXRlZ29yaWEgbm9uIHZhbGlkYSAobyB2dW90YSkuJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRkZXNjcmlwdGlvbiddID0gJ0Vycm9yZTogRGVzY3JpemlvbmUgbm9uIHZhbGlkYSAobyB2dW90YSkuJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRmaWxlJ10gPSAnRXJyb3JlOiBOb21lIEZpbGUgbm9uIHZhbGlkbyAobyB2dW90bykuJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1cGxvYWRmaWxlbmFtZSddID0gJ0Vycm9yZTogRmlsZSBjb24gcXVlc3RvIG5vbWUgKHByb2JhYmlsbWVudGUgbCYjMDM5O2VzdGVuc2lvbmUpIG5vbiBzb25vIGNvbnNlbnRpdGkgKCVzKS4nOwokbGFuZ1snZXJyb3JfaW52YWxpZHVwbG9hZGlkJ10gPSAnRXJyb3JlOiBpZCBkaSBjYXJpY2FtZW50byBub24gdmFsaWRvJzsKJGxhbmdbJ2Vycm9yX25vZmlsZXMnXSA9ICdFcnJvcmU6IE5lc3N1biBGaWxlIENvcnJpc3BvbmRlbnRlISc7CiRsYW5nWydmaWxlcyddID0gJ0ZpbGUnOwokbGFuZ1snZml4bWUnXSA9ICdDb3JyZWdnaSBTcGF6aSc7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdHZXN0aW9uZSBkaSBGcm9udGVuZCBkZWkgRmlsZSAoTW9kdWxvIFVwbG9hZHMpJzsKJGxhbmdbJ2hlbHAnXSA9ICc8aDM+V2hhdCBEb2VzIFRoaXMgRG8/PC9oMz4NCjxwPkl0IGlzIGEgbW9kdWxlIGZvciBhbGxvd2luZyBwZW9wbGUgdG8gdXBsb2FkIGFuZCBkb3dubG9hZCBmaWxlcyB0byBhbmQgZnJvbSB5b3VyIHNpdGUuICBJdCBrZWVwcyB0cmFjayBvZiB3aG8gdXBsb2FkZWQgYSBmaWxlLCBhbmQgd2hvIGhhcyBkb3dubG9hZGVkIGl0LiAgQXMgd2VsbCwgeW91IGNhbiBzb3J0IGZpbGVzIGludG8gY2F0ZWdvcmllcywgYW5kIG1hbmFnZSB0aGUgZmlsZXMgdGhhdCB3ZXJlIHVwbG9hZGVkIGxpa2UgZXZlcnkgYWRtaW5pc3RyYXRvciB3b3VsZCBkbzwvcD4gDQo8aDM+SG93IERvIEkgVXNlIEl0PC9oMz4NCjxwPjxzdHJvbmc+V2FybmluZzwvc3Ryb25nPiAtIFRoZSBwcm9wZXIgYmVoYXZpb3VyIG9mIHRoaXMgbW9kdWxlIGRlcGVuZHMgb24gbnVtZXJvdXMgcGhwIGNvbmZpZ3VyYXRpb24gdmFyaWFibGVzLiAgVGhlc2UgaW5jbHVkZSA8ZW0+KGJ1dCBhcmUgbm90IGxpbWl0ZWQgdG8pPC9lbT4sIHBocCYjMDM5O3MgbWVtb3J5X2xpbWl0LCBzYWZlX21vZGUsIGZpbGVfdXBsb2FkcywgdXBsb2Fkc19tYXhfZmlsZXNpemUsIGFuZCBtYXhfZXhlY3V0aW9uX3RpbWUuICBUaGVzZSB2YXJpYWJsZXMgbWF5IG5lZWQgYWRqdXN0bWVudCBmb3IgdGhpcyBtb2R1bGUgdG8gd29yayBwcm9wZXJseSBvbiB5b3VyIHNpdGUuICBJdCBpcyBhZHZpc2VkIHRoYXQgeW91IHdvcmsgd2l0aCB5b3VyIHN5c3RlbSBhZG1pbmlzdHJhdG9yIG9yIGhvc3QgcHJvdmlkZXIgdG8gdHVuZSB0aGVzZSBzZXR0aW5ncyBmb3IgeW91ciByZXF1aXJlbWVudHMuPC9wPg0KPHA+VG8gdXNlIHRoaXMgbW9kdWxlLCB0byBhbGxvdyB1c2VycyB0byB1cGxvYWQgZmlsZXMgdG8geW91ciBzaXRlLCB5b3Ugc2hvdWxkIGluc3RhbGwgdGhlIG1vZHVsZSwgYW5kIHRoZW4gY3JlYXRlIG9uZSBvciBtb3JlIGNhdGVnb3JpZXMgKGEuay5hKSBkaXJlY3RvcmllcyBmb3IgdGhlIHVwbG9hZGVkIGZpbGVzIHRvIGdvIGludG8uIFRoZW4gYWRkIGEgdGFnIGludG8gYSBwYWdlIG9yIHRlbXBsYXRlIHNvbWV3aGVyZSBsaWtlIHtjbXNfbW9kdWxlIG1vZHVsZT0mcXVvdDtVcGxvYWRzJnF1b3Q7IGNhdGVnb3J5PSZxdW90O3NvbWVjYXRlZ29yeSZxdW90OyBtb2RlPSZxdW90O3NvbWVtb2RlJnF1b3Q7fS4gIFdoZXJlIG1vZGUgbWF0Y2hlcyBvbmUgb2YgdGhlIG1vZGVzIGxpc3RlZCBiZWxvdy4gIFRoZSBvdXRwdXQgd2lsbCBkaWZmZXIgZGVwZW5kaW5nIHVwb24gd2hpY2ggbW9kZSB5b3Ugc2VsZWN0LjwvcD4NCjxwPlRoaXMgbW9kdWxlIGNhbiB1c2UgdGhlIEZyb250ZW5kVXNlcnMgbW9kdWxlIChvcHRpb25hbCkgdG8gZ2V0IGluZm9ybWF0aW9uIGFib3V0IGFueSBjdXJyZW50bHkgbG9nZ2VkIGluIHVzZXJzIHRvIHBhcnRseSBmaWxsIGluIHRoZSBmb3JtIHdoZW4gdXBsb2FkaW5nIGZpbGVzOzwvcD4NCjxoMz5QZXJtaXNzaW9uczwvaDM+DQo8dWw+DQo8bGk+PGVtPk1hbmFnZSBVcGxvYWRzPC9lbT4gcGVybWlzc2lvbiBpcyBuZWVkZWQgdG8gbWFuYWdlIGNhdGVnb3JpZXMsIGFuZCB0aGUgZmlsZXMgd2l0aGluIHRoZW0uPC9saT4NCjxsaT48ZW0+TW9kaWZ5IFRlbXBsYXRlczwvZW0+IHBlcm1pc3Npb24gaXMgbmVlZGVkIGVkaXQgYW55IG9mIHRoZSB0ZW1wbGF0ZXMuPC9saT4NCjxsaT48ZW0+TW9kaWZ5IFNpdGUgUHJlZmVyZW5jZXM8L2VtPiBwZXJtaXNzaW9uIGlzIG5lZWRlZCBhbnkgb2YgdGhlIGZpbGUgc2V0dGluZ3MuPC9saT4NCjwvdWw+DQo8aDM+Q2F0ZWdvcnkgQnJvd3Npbmc8L2gzPg0KPHA+UGxhY2luZyBhIHRhZyBsaWtlIHtjbXNfbW9kdWxlIG1vZHVsZT0mcXVvdDtVcGxvYWRzJnF1b3Q7IGFjdGlvbj0mcXVvdDtjYXRlZ29yeXN1bW1hcnkmcXVvdDsgdGVtcGxhdGU9JnF1b3Q7c3VtbWFyeXRlbXBsYXRlJnF1b3Q7IHNvcnRvcmRlcj0mcXVvdDtuYW1lX2FzYyZxdW90OyBsaXN0aW5ndGVtcGxhdGU9JnF1b3Q7bGlzdHRlbXBsYXRlJnF1b3Q7IGxpc3Rpbmdzb3J0b3JkZXI9JnF1b3Q7bGlzdHNvcnRvcmRlciZxdW90O30NCmFsbG93cyB5b3UgdG8gZGlzcGxheSBhbiBpbnRlcmFjdGl2ZSBjYXRlZ29yeSBicm93c2VyLiBzb3J0b3JkZXIgY2FuIGJlOiBuYW1lX2FzYywgbmFtZV9kZXNjLCBzdW1tX2FzYywgc3VtbV9kZXNjLCBvciByYW5kb20uDQpsaXN0aW5ndGVtcGxhdGUgYW5kIGxpc3Rpbmdzb3J0b3JkZXIgYXJlIGlkZW50aWNhbCB0byB0aGUgdGVtcGxhdGUgYW5kIHNvcnRvcmRlciBwYXJhbWV0ZXJzIGZvcg0KdGhlICZxdW90O3N1bW1hcnkmcXVvdDsgbW9kZS48L3A+DQo8aDM+RW1haWxpbmc8L2gzPg0KPHA+VGhpcyBtb2R1bGUgaXMgY2FwYWJsZSBvZiBzZW5kaW5nIGFuIGVtYWlsIHdoZW5ldmVyIGEgZmlsZSBpcyB1cGxvYWRlZCwgc2VlIHRoZSBwcmVmZXJlbmNlcyB0YWIuICBIb3dldmVyLCB0byBkbyB0aGlzIHRoZSA8Yj5DTVNNYWlsZXI8L2I+IHBhY2thZ2UgbXVzdCBiZSBpbnN0YWxsZWQgYW5kIGNvbmZpZ3VyZWQuICBUaGlzIGlzIGFuIDxlbT5vcHRpb25hbDwvZW0+IHN0ZXAsIGFuZCBpZiB0aGUgQ01TTWFpbGVyIG1vZHVsZSBpcyBub3QgaW5zdGFsbGVkLCBub3RoaW5nIHdpbGwgYmUgZGlzcGxheWVkIHRvIHRoZSB1c2VyLCBvbmx5IGEgbG9nIG1lc3NhZ2Ugd2lsbCBiZSBwbGFjZWQgaW50byB0aGUgYWRtaW4gbG9nPC9wPg0KPGgzPlN5c3RlbSBTZXR0aW5nczwvaDM+DQo8cD48Yj5Ob3RlOjwvYj4gVGhpcyBtb2R1bGUgZG9lcyBub3QgYnlwYXNzIG9yIGdldCBwYXN0IGFueSBmaWxlIHNpemUgbGltaXRhdGlvbnMgaW4gcGhwLiAgSXQgd29ya3MgaW4gY29uanVuY3Rpb24gd2l0aCB0aGVtLiAgVGhlcmVmb3JlIHlvdSBtYXkgbmVlZCB0byBtb2RpZnkgeW91ciBwaHAuaW5pIGZpbGUgYW5kL29yIHlvdXIgaHR0cGQuY29uZiBmaWxlKHMpIHRvIGFsbG93IHlvdSB0byB1cGxvYWQgZmlsZXMgYXMgbGFyZ2UgYXMgd2hhdCB5b3UgaGF2ZSBzZXQgaW4gdGhlIHVwbG9hZHMgbW9kdWxlIHByZWZlcmVuY2VzLjwvcD4NCjxoMz5BcGFjaGUgTm90ZXM8L2gzPg0KPHA+SW4gb3JkZXIgdG8gYWxsb3cgbGFyZ2UgZmlsZSB1cGxvYWRzLCB5b3UgbWF5IG5lZWQgdG8gbW9kaWZ5IHRoZSB1cGxvYWRfbWF4X2ZpbGVzaXplIHBhcmFtZXRlciBpbiB5b3VyIHBocC5pbmkgIEluIGFkZGl0aW9uLCB0aGUgTGltaXRSZXF1ZXN0Qm9keSBwYXJhbWV0ZXIgaW4geW91ciBhcGFjaGUgY29uZmlndXJhdGlvbiwgbWF5IG5lZWQgdG8gYmUgYWRqdXN0ZWQgdG8gbWF0Y2ggdGhlIHVwbG9hZF9tYXhfZmlsZXNpemUgcGFyYW1ldGVyPC9wPg0KPHA+Tm90ZTogIHRoZSB1cGxvYWRfbWF4X2ZpbGVzaXplIHBhcmFtZXRlciBjYW4gYmUgc3BlY2lmaWVkIGluIGJ5dGVzLCBraWxvYnl0ZXMsIG9yIG1lZ2FieXRlcywgaG93ZXZlciB0aGUgTGltaXRSZXF1ZXRCb2R5IHBhcmFtZXRlciBpcyBvbmx5IHNwZWNpZmllZCBpbiBieXRlczwvcD4nOwokbGFuZ1snaWQnXSA9ICdJRCc7CiRsYW5nWydpbnN0YWxsZWQnXSA9ICdWZXJzaW9uZSAlcyBkZWwgTW9kdWxvIGluc3RhbGxhdGEuJzsKJGxhbmdbJ2lwX2FkZHJlc3MnXSA9ICdJbmRpcml6em8gSVAnOwokbGFuZ1snbW9kZGVzY3JpcHRpb24nXSA9ICdVbiBtb2R1bG8gY2hlIHBlcm1ldHRlIGFnbGkgdXRlbnRpIGRpIGNhcmljYXJlIGZpbGUsIGUgcGVybWV0dGUgYSB2b2kgZGkgZ2VzdGlybGkuJzsKJGxhbmdbJ25hbWUnXSA9ICdOb21lJzsKJGxhbmdbJ3JlbmFtZW1lc3NhZ2UnXSA9ICdNb2RpZmljYSBpbCBub21lIHF1aSBwZXIgcmlub21pbmFybG8nOwokbGFuZ1sncGF0aCddID0gJ1BlcmNvcnNvJzsKJGxhbmdbJ3BhdGhtZXNzYWdlJ10gPSAnTW9kaWZpY2EgbGEgY2F0ZWdvcmlhIHF1aSBwZXIgc3Bvc3RhcmUgaWwgZmlsZSBpbiB1biYjMDM5O2FsdHJhIGNhcnRlbGxhJzsKJGxhbmdbJ3BhdGhpbnVwbG9hZHMnXSA9ICcoUmVsYXRpdm8gYWxsYSBjYXJ0ZWxsYSBkZWdsaSB1cGxvYWQpJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsJ10gPSAnPHA+VGhlIHVwbG9hZHMgbW9kdWxlIGhhcyBiZWVuIHN1Y2Nlc3NmdWxseSBpbnN0YWxsZWQuIEJlIHN1cmUgdG8gc2V0ICZxdW90O01hbmFnZSBVcGxvYWRzJnF1b3Q7IHBlcm1pc3Npb25zIHRvIHVzZSB0aGlzIG1vZHVsZSE8L3A+DQo8cD48c3Ryb25nPldhcm5pbmc8L3N0cm9uZz4gLSBUaGUgcHJvcGVyIGJlaGF2aW91ciBvZiB0aGlzIG1vZHVsZSBkZXBlbmRzIG9uIG51bWVyb3VzIHBocCBjb25maWd1cmF0aW9uIHZhcmlhYmxlcy4gIFRoZXNlIGluY2x1ZGUgPGVtPihidXQgYXJlIG5vdCBsaW1pdGVkIHRvKTwvZW0+LCBwaHAmIzAzOTtzIG1lbW9yeV9saW1pdCwgc2FmZV9tb2RlLCBmaWxlX3VwbG9hZHMsIHVwbG9hZHNfbWF4X2ZpbGVzaXplLCBhbmQgbWF4X2V4ZWN1dGlvbl90aW1lLiAgVGhlc2UgdmFyaWFibGVzIG1heSBuZWVkIGFkanVzdG1lbnQgZm9yIHRoaXMgbW9kdWxlIHRvIHdvcmsgcHJvcGVybHkgb24geW91ciBzaXRlLiAgSXQgaXMgYWR2aXNlZCB0aGF0IHlvdSB3b3JrIHdpdGggeW91ciBzeXN0ZW0gYWRtaW5pc3RyYXRvciBvciBob3N0IHByb3ZpZGVyIHRvIHR1bmUgdGhlc2Ugc2V0dGluZ3MgZm9yIHlvdXIgcmVxdWlyZW1lbnRzLjwvcD4nOwokbGFuZ1sncG9zdHVuaW5zdGFsbCddID0gJ0lsIG1vZHVsbyBVcGxvYWRzICZlZ3JhdmU7IHN0YXRvIHJpbW9zc28gY29uIHN1Y2Nlc3NvLiAgTmVzc3VuIGZpbGUgJmVncmF2ZTsgc3RhdG8gcmltb3NzbyBkYWxsYSB2b3N0cmEgY2FydGVsbGEgZGkgdXBsb2FkIGUgbCYjMDM5O2ludGVncml0JmFncmF2ZTsgZGVpIGZpbGUgJmVncmF2ZTsgaW50YXR0YSc7CiRsYW5nWydwcmVmZXJlbmNlcyddID0gJ1ByZWZlcmVuemUnOwokbGFuZ1sncHJlZnN1cGRhdGVkJ10gPSAnUHJlZmVyZW56ZSBkZWwgbW9kdWxvIGFnZ2lvcm5hdGUuJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeWRlc2MnXSA9ICdEZXNjcml6aW9uZSc7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnlsaXN0YWJsZSddID0gJ0kgZmlsZSBpbiBxdWVzdGEgY2FydGVsbGEgcG9zc29ubyBlc3NlcmUgZWxlbmNhdGknOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5bmFtZSddID0gJ05vbWUgZGVsbGEgQ2F0ZWdvcmlhJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeXBhdGgnXSA9ICdQZXJjb3JzbyBkZWwgU2VydmVyJzsKJGxhbmdbJ3Byb21wdF9kZWxldGVkaXJlY3RvcnknXSA9ICdFbGltaW5hcmUgY2FydGVsbGEgZGVsbGEgY2F0ZWdvcmlhPyc7CiRsYW5nWydwcm9tcHRfbWF4X3VwbG9hZHNpemUnXSA9ICdEaW1lbnNpb25lIG1hc3NpbWEgZGVsIGZpbGUgcGVybWVzc2EgKEtiKSc7CiRsYW5nWydwcm9tcHRfdmFsaWRfdXBsb2FkZXh0ZW5zaW9ucyddID0gJ0VzdGVuc2lvbmkgdmFsaWRlIHBlciBsJiMwMzk7dXBsb2FkJzsKJGxhbmdbJ3NjYW4nXSA9ICdFc2FtaW5hJzsKJGxhbmdbJ3NlbGVjdGNhdGVnb3J5J10gPSAnU2VsZXppb25hIENhdGVnb3JpYSc7CiRsYW5nWydzaXplJ10gPSAnRGltZW5zaW9uZSc7CiRsYW5nWydzaXpla2InXSA9ICdEaW1lbnNpb25lIChLYiknOwokbGFuZ1snc3VibWl0J10gPSAnSW52aWEnOwokbGFuZ1snc3VtbWFyeV90ZW1wbGF0ZSddID0gJ01vZGVsbG8gZGVsIFNvbW1hcmlvJzsKJGxhbmdbJ3N1bW1hcnknXSA9ICdTb21tYXJpbyc7CiRsYW5nWyd0aXRsZV9hZG1pbl9wYW5lbCddID0gJ01vZHVsbyBVcGxvYWRzJzsKJGxhbmdbJ3RpdGxlX21vZF9hZG1pbiddID0gJ1Bhbm5lbGxvIGRpIEFtbWluaXN0cmF6aW9uZSBNb2R1bG8nOwokbGFuZ1sndGl0bGVfbW9kX3ByZWZzJ10gPSAnUHJlZmVyZW56ZSBkZWwgTW9kdWxvJzsKJGxhbmdbJ3RpdGxlX3NpbmdfbG91ZGx5J10gPSAnTWV0dGVyZSBpbiBFdmlkZW56YT8nOwokbGFuZ1sndGl0bGVfc3VibmV0X2V4Y2x1c2lvbnMnXSA9ICdFc2NsdWRlcmUgbGUgc290dG9yZXRpIGRhbGxhIHN0YXRpc3RpY2hlJzsKJGxhbmdbJ3RpdGxlX3ZhbGlkX3VwbG9hZGV4dGVuc2lvbnMnXSA9ICdFc3RlbnNpb25pIFZhbGlkZSc7CiRsYW5nWyd1bmluc3RhbGxlZCddID0gJ01vZHVsbyBEaXNpbnN0YWxsYXRvLic7CiRsYW5nWyd1cGdyYWRlZCddID0gJ01vZHVsbyBhZ2dpb3JuYXRvIGFsbGEgdmVyc2lvbmUgJXMuJzsKJGxhbmdbJ3VwbG9hZCddID0gJ0NhcmljYSc7CiRsYW5nWyd1cGxvYWRlZCddID0gJ0ZpbGUgJXMgY2FyaWNhdG8gZGEgJXMuJzsKJGxhbmdbJ3JlcGxhY2VkJ10gPSAnRmlsZSAlcyBzb3N0aXR1aXRvIGRhICVzLic7CiRsYW5nWydkZWxldGVkJ10gPSAnSWwgRmlsZSAlcyAmZWdyYXZlOyBzdGF0byBjYW5jZWxsYXRvLic7CiRsYW5nWyd1cGxvYWRmb3JtX3RlbXBsYXRlJ10gPSAnTW9kZWxsbyBkaSBVcGxvYWQnOwokbGFuZ1sndXNlcm5hbWUnXSA9ICdVc2VybmFtZSc7CiRsYW5nWyd3YXJuaW5nX2RlbGV0ZWNhdGVnb3J5J10gPSAnQVRURU5aSU9ORTogVXNhdGUgY2F1dGVsYSBxdWFuZG8gY2FuY2VsbGF0ZSBjYXRlZ29yaWUuIEUmIzAzOTsgcG9zc2liaWxlIHBlcmRlcmUgZmlsZSc7CiRsYW5nWyd3ZWxjb21lX3RleHQnXSA9ICc8cD5XZWxjb21lIHRvIHRoZSBVcGxvYWRzIE1vZHVsZSBhZG1pbiBzZWN0aW9uLiBTb21ldGhpbmcgZWxzZSB3b3VsZCBwcm9iYWJseSBnbyBoZXJlIGlmIHRoZSBtb2R1bGUgYWN0dWFsbHkgZGlkIHNvbWV0aGluZy48L3A+JzsKJGxhbmdbJ3V0bXonXSA9ICcxNTY4NjEzNTMuMTIyODE2ODczMy42MDkuMTIxLnV0bWNjbj0ocmVmZXJyYWwpfHV0bWNzcj1mb3J1bS5jbXNtYWRlc2ltcGxlLm9yZ3x1dG1jY3Q9L2luZGV4LnBocHx1dG1jbWQ9cmVmZXJyYWwnOwokbGFuZ1sndXRtYSddID0gJzE1Njg2MTM1My4xODA3MTUxNjQwLjExODI5NjA0NTYuMTIyNzc0MDI0Mi4xMjI4MTY4NzMzLjYwOSc7CiRsYW5nWyd1dG1iJ10gPSAnMTU2ODYxMzUzJzsKJGxhbmdbJ3V0bWMnXSA9ICcxNTY4NjEzNTMnOwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lang/ext/lt_LT.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ3Byb21wdF9ncm91cGxpc3QnXSA9ICdBdXRob3JpemVkIEZFVSBHcm91cHMnOwokbGFuZ1snaW5mb19ncm91cGxpc3QnXSA9ICdTZWxlY3QgdGhlIEZFVSBncm91cHMgdGhhdCBhcmUgYWxsb3dlZCBhY2Nlc3MgdG8gZmlsZXMgaW4gdGhpcyBjYXRlZ29yeS4gIERlc2VsZWN0IGFsbCBlbnRyaWVzIHRvIGFsbG93IGFsbCBhY2Nlc3MnOwokbGFuZ1sndGl0bGVfc2NhbiddID0gJ1NrYW51b3RpICZzY2Fyb247acSFIGthdGVnb3JpasSFIGTEl2wgbmF1asWzIGJ5bMWzJzsKJGxhbmdbJ3RpdGxlX2NyZWF0ZV90aHVtYm5haWxzJ10gPSAnQ3JlYXRlIG1pc3NpbmcgdGh1bWJuYWlscyBmb3IgZmlsZXMgaW4gdGhpcyBjYXRlZ29yeS4nOwokbGFuZ1snY3JlYXRlX3RodW1ibmFpbHMnXSA9ICdDcmVhdGUgVGh1bWJuYWlscyc7CiRsYW5nWyd0aXRsZV9jcmVhdGVfdGh1bWJuYWlsJ10gPSAnKHJlKUNyZWF0ZSB0aGUgdGh1bWJuYWlsIGZvciB0aGlzIGZpbGUnOwokbGFuZ1snY3JlYXRlX3RodW1ibmFpbCddID0gJ0NyZWF0ZSBUaHVtYm5haWwnOwokbGFuZ1snZXJyb3JfcGF0aGVycm9yJ10gPSAnQ291bGQgbm90IG9wZW4gZGlyZWN0b3J5IChwZXJtaXNzaW9ucyBwcm9ibGVtPyknOwokbGFuZ1sndGl0bGVfZG93bmxvYWRfY2h1bmtzaXplJ10gPSAnU2l6ZSBvZiBlYWNoIGRvd25sb2FkIGNodW5rJzsKJGxhbmdbJ2luZm9fZG93bmxvYWRfY2h1bmtzaXplJ10gPSAnQWRqdXN0aW5nIHRoaXMgcGFyYW1ldGVyIHdpbGwgZWZmZWN0IGRvd25sb2FkIHNwZWVkLCBhbmQgbWF5IGhlbHAgaW4gbG93ZXIgbWVtb3J5IGVudmlyb25tZW50cyc7CiRsYW5nWyd3YXJuaW5nX3NhZmVfbW9kZSddID0gJ1BIUCYjMDM5O3Mgc2FmZSBtb2RlIGlzIGVuYWJsZWQuICBUaGlzIG1heSBjYXVzZSBwcm9ibGVtcyB3aXRoIHVwbG9hZGluZyBmaWxlcyAocGVybWlzc2lvbnMpLCBhbmQgbWF5IGFsc28gaW50ZXJmZXJlIHdpdGggdGhpcyBtb2R1bGUmIzAzOTtzIGFiaWxpdHkgdG8gc2VuZCBzb21lIGZpbGVzIGR1ZSB0byBhbiBpbmFiaWxpdHkgdG8gb3ZlcnJpZGUgc29tZSBpbmkgc2V0dGluZ3MuICBZb3UgYXJlIGFkdmlzZWQgdG8gY29udGFjdCB5b3VyIHByb3ZpZGVyIHRvIHNlZSBhYm91dCBkaXNhYmxpbmcgc2FmZSBtb2RlLic7CiRsYW5nWydwYXJhbV9kZXRhaWxwYWdlJ10gPSAnVXNlZnVsIGZvciBkaXNwbGF5aW5nIGEgZGV0YWlsIHJlcG9ydCB1c2luZyBhIGRpZmZlcmVudCBwYWdlIHRlbXBsYXRlLCB0aGlzIHBhcmFtZXRlciB0YWtlcyB0aGUgcGFnZSBpZCBvciBwYWdlIGFsaWFzIG9mIGEgcGFnZSB0aGF0IHNob3VsZCBiZSB1c2VkIHRvIGRpc3BsYXkgdGhlIGRldGFpbCByZXBvcnQnOwokbGFuZ1sncGFyYW1fcHJlZml4J10gPSAnQSBib29sZWFuIHRoYXQgaW5kaWNhdGVzIHdldGhlciBmaWxlIG5hbWVzIHNob3VsZCBiZSBwcmVmaXhlZCc7CiRsYW5nWydwYXJhbV9wcmVmaXhfZmV1J10gPSAnQSBib29sZWFuIHBhcmFtZXRlciB0aGF0IGluZGljYXRlcyB0aGF0IHRoZSBwcmVmaXggc2hvdWxkIGJlIHRha2VuIGZyb20gdGhlIGN1cnJlbnQgYXV0aG9yLCBpZiBub3Qgc3BlY2lmaWVkLCB0aGUgcHJlZml4IGlzIHRoZSBjdXJyZW50IHRpbWUgKGluIGRlY2hleCBmb3JtYXQpJzsKJGxhbmdbJ3BhcmFtX25vY2FwdGNoYSddID0gJ0Rpc2FibGUgY2FwdGNoYSBzdXBwb3J0IChvbiBieSBkZWZhdWx0KSBpbiB0aGUgdXBsb2FkIGZvcm0nOwokbGFuZ1sndGl0bGVfdXBsb2FkZm9ybV90ZW1wbGF0ZSddID0gJ0VkaXQgVXBsb2FkIEZvcm0gVGVtcGxhdGUnOwokbGFuZ1snY2FwdGNoYV90aXRsZSddID0gJ0VudGVyIHRoZSB0ZXh0IGRpc3BsYXllZCBpbiB0aGlzIGltYWdlJzsKJGxhbmdbJ2Vycm9yX2NhcHRjaGFtaXNtYXRjaCddID0gJ1RleHQgZW50ZXJlZCBkaWQgbm90IG1hdGNoIHRoZSBpbWFnZSBkaXNwbGF5ZWQnOwokbGFuZ1sndGl0bGVfYXV0b3RodW1ibmFpbF9leHRlbnNpb25zJ10gPSAnQ3JlYXRlIHRodW1ibmFpbHMgZm9yIGZpbGVzIHdpdGggdGhlc2UgZXh0ZW5zaW9ucyc7CiRsYW5nWyd0aXRsZV9hdXRvdGh1bWJuYWlsX3NpemUnXSA9ICdNYXhpbXVtIHNpemUgKHBpeGVscykgb2YgdGhlIGdlbmVyYXRlZCB0aHVtYm5haWwnOwokbGFuZ1sncHJvbXB0X3VwbG9hZF9pY29uJ10gPSAnVXBsb2FkIEFuIEljb24nOwokbGFuZ1snaW5mb19zeXNkZWZhdWx0J10gPSAnVGhpcyB0ZXh0IGlzIHVzZWQgd2hlbiBjcmVhdGluZyBhIG5ldyB0ZW1wbGF0ZSBvZiB0aGlzIHR5cGUnOwokbGFuZ1sndGl0bGVfZGV0YWlscnB0X3N5c2RlZmF1bHQnXSA9ICdTeXN0ZW0gRGVmYXVsdCBEZXRhaWwgUmVwb3J0IFRlbXBsYXRlJzsKJGxhbmdbJ3RpdGxlX3N1bW1hcnlycHRfc3lzZGVmYXVsdCddID0gJ1N5c3RlbSBEZWZhdWx0IFN1bW1hcnkgUmVwb3J0IFRlbXBsYXRlJzsKJGxhbmdbJ3RpdGxlX3VwbG9hZGZvcm1fc3lzZGVmYXVsdCddID0gJ1N5c3RlbSBEZWZhdWx0IFVwbG9hZCBGb3JtIFRlbXBsYXRlJzsKJGxhbmdbJ3RlbXBsYXRlJ10gPSAnJlNjYXJvbjthYmxvbmFzJzsKJGxhbmdbJ3Jlc2V0dG9kZWZhdWx0J10gPSAnQXRzdGF0eXRpIMSvIMSucHJhc3R1cyc7CiRsYW5nWyd0aXRsZV9zdW1tYXJ5cnB0X3RlbXBsYXRlJ10gPSAnU3VtbWFyeSBSZXBvcnQgVGVtcGxhdGUnOwokbGFuZ1sndGl0bGVfZGV0YWlscnB0X3RlbXBsYXRlJ10gPSAnRGV0YWlsIFJlcG9ydCBUZW1wbGF0ZSc7CiRsYW5nWydwcm9tcHRfbmFtZSddID0gJ1BhdmFkaW5pbWFzJzsKJGxhbmdbJ3Byb21wdF9kZWZhdWx0J10gPSAnxK5wcmFzdGFzJzsKJGxhbmdbJ2xlZ2VuZF91cGxvYWRmb3JtJ10gPSAnQXRzacWzc3RpIGJ5bMSFJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdwYXJhbSddID0gJ1Ryxatrc3RhIHByaXZhbG9tbyBwYXJhbWV0cm8nOwokbGFuZ1snZXJyb3JfbWlzc2luZ25hbWUnXSA9ICdBIG5hbWUgZm9yIHRoZSBmaWxlIHR5cGUgbXVzdCBiZSBzcGVjaWZpZWQnOwokbGFuZ1snZXJyb3JfbWlzc2luZ2V4dGVuc2lvbnMnXSA9ICdBdCBsZWFzdCBvbmUgZmlsZSBleHRlbnNpb24gbXVzdCBiZSBzcGVjaWZpZWQnOwokbGFuZ1snZXJyb3JfbWlzc2luZ2ljb24nXSA9ICdBbiBpY29uIG11c3QgYmUgc3BlY2lmaWVkJzsKJGxhbmdbJ2Vycm9yX25vc3VjaHJvdyddID0gJ1RoZSBzcGVjaWZpZWQgcm93IGNvdWxkIG5vdCBiZSBmb3VuZCc7CiRsYW5nWyduYW1lX3Vua25vd24nXSA9ICdOZcW+aW5vbWFzJzsKJGxhbmdbJ2Rlc2NyaXB0aW9uX3Vua25vd24nXSA9ICdGaWxlIHR5cGUgZGVzY3JpcHRpb24gZm9yIHVubWF0Y2hlZCBmaWxlcyc7CiRsYW5nWydpbWFnZSddID0gJ1BhdmVpa2zEl2xpcyc7CiRsYW5nWydpY29uJ10gPSAnSWtvbmEnOwokbGFuZ1snZXh0ZW5zaW9ucyddID0gJ0ZpbGUgRXh0ZW5zaW9ucyc7CiRsYW5nWydhZGRmaWxldHlwZSddID0gJ0FkZCBOZXcgRmlsZSBUeXBlJzsKJGxhbmdbJ2ZpbGVfdHlwZXMnXSA9ICdGaWxlIFR5cGVzJzsKJGxhbmdbJ2Vycm9yX25vY2F0ZWdvcnlpZCddID0gJ05vIENhdGVnb3J5IGlkIHdhcyBzdXBwbGllZCc7CiRsYW5nWydlcnJvcl9ub2NhdGVnb3J5J10gPSAnTm8gQ2F0ZWdvcnkgaWQgd2FzIHN1cHBsaWVkJzsKJGxhbmdbJ2Vycm9yX3RlbXBsYXRlbmFtZWV4aXN0cyddID0gJ0EgdGVtcGxhdGUgYnkgdGhhdCBuYW1lIGFscmVhZHkgZXhpc3RzJzsKJGxhbmdbJ3Byb21wdF90ZW1wbGF0ZW5hbWUnXSA9ICdUZW1wbGF0ZSBOYW1lJzsKJGxhbmdbJ3Byb21wdF90ZW1wbGF0ZSddID0gJ1RlbXBsYXRlJzsKJGxhbmdbJ3Byb21wdF9uZXd0ZW1wbGF0ZSddID0gJ0NyZWF0ZSBhIG5ldyB0ZW1wbGF0ZSc7CiRsYW5nWydoZWxwX09uRG93bmxvYWQnXSA9ICc8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgZmluaXNoZXMgZG93bmxvYWRpbmcgYSBmaWxlPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5pZDwvZW0+IC0gVXBsb2FkIElEPC9saT4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gRmlsZSBuYW1lPC9saT4NCjxsaT48ZW0+aXA8L2VtPiAtIFRoZSBJUCBBZGRyZXNzIG9mIHRoZSBkb3dubG9hZGVyPC9saT4NCjwvdWw+DQonOwokbGFuZ1snaGVscF9PbkRlbGV0ZUNhdGVnb3J5J10gPSAnPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBjYXRlZ29yeSBpcyBEZWxldGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBDYXRlZ29yeSBuYW1lPC9saT4NCjxsaT48ZW0+cGF0aDwvZW0+IC0gQ2F0ZWdvcnkgcGF0aDwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2hlbHBfT25DcmVhdGVDYXRlZ29yeSddID0gJzxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgY2F0ZWdvcnkgaXMgQ3JlYXRlZDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIGNhdGVnb3J5PC9saT4NCjxsaT48ZW0+ZGVzY3JpcHRpb248L2VtPiAtIFRoZSBjYXRlZ29yeSBkZXNjcmlwdGlvbjwvbGk+DQo8bGk+PGVtPnBhdGg8L2VtPiAtIFRoZSBjYXRlZ29yeSBwYXRoPC9saT4NCjxsaT48ZW0+cGF0aDwvZW0+IC0gQSBmbGFnIGluZGljYXRpbmcgaWYgdGhlIGNhdGVnb3J5IGlzIGxpc3RhYmxlPC9saT4NCjwvdWw+DQonOwokbGFuZ1snaGVscF9PblJlbW92ZSddID0gJzxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgZmlsZSBpcyByZW1vdmVkIHZpYSB0aGUgYWRtaW4gb3IgZnJvbnRlbmQgaW50ZXJmYWNlczwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIHJlbW92ZWQgZmlsZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgaWQgb2YgdGhlIHJlbW92ZWQgZmlsZTwvbGk+DQo8bGk+PGVtPmNhdGVnb3J5X2lkPC9lbT4gLSBUaGUgaWQgb2YgdGhlIGNhdGVnb3J5PC9saT4NCjwvdWw+DQonOwokbGFuZ1snaGVscF9PblVwbG9hZCddID0gJzxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgbmV3IGZpbGUgaXMgdXBsb2FkZWQgdmlhIHRoZSBhZG1pbiBvciBmcm9udGVuZCBpbnRlcmZhY2VzPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5jYXRlZ29yeTwvZW0+IC0gVGhlIGNhdGVnb3J5IG5hbWU8L2xpPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgbmFtZSBvZiB0aGUgdXBsb2FkZWQgZmlsZTwvbGk+DQo8bGk+PGVtPnNpemU8L2VtPiAtIFRoZSBzaXplIG9mIHRoZSB1cGxvYWRlZCBmaWxlPC9saT4NCjxsaT48ZW0+c3VtbWFyeTwvZW0+IC0gVGhlIHNob3J0IGRlc2NyaXB0aW9uIGZvciB0aGUgdXBsb2FkZWQgZmlsZSAobWF5IGJlIGVtcHR5KTwvZW0+PC9saT4NCjxsaT48ZW0+ZGVzY3JpcHRpb248L2VtPiAtIFRoZSBsb25nIGRlc2NyaXB0aW9uIGZvciB0aGUgdXBsb2FkZWQgZmlsZSAobWF5IGJlIGVtcHR5KTwvZW0+PC9saT4NCjxsaT48ZW0+YXV0aG9yPC9lbT4gLSBUaGUgYXV0aG9yIG9mIHRoZSB1cGxvYWRlZCBmaWxlIChpZiBhdmFpbGFibGUpPC9lbT48L2xpPg0KPGxpPjxlbT5pcF9hZGRyZXNzPC9lbT4gLSBUaGUgaW50ZXJuZXQgYWRkcmVzcyBvZiB0aGUgY2xpZW50IHRoYXQgdXBsb2FkZWQgdGhlIGZpbGU8L2xpPg0KPC91bD4NCic7CiRsYW5nWydpbmZvX2V2ZW50X29uZGVsZXRlY2F0ZWdvcnknXSA9ICdFdmVudCBnZW5lcmF0ZWQgd2hlbiBhIGNhdGVnb3J5IGlzIGRlbGV0ZWQnOwokbGFuZ1snaW5mb19ldmVudF9vbmNyZWF0ZWNhdGVnb3J5J10gPSAnRXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBjYXRlZ29yeSBpcyBjcmVhdGVkJzsKJGxhbmdbJ2luZm9fZXZlbnRfb25kb3dubG9hZCddID0gJ0V2ZW50IGdlbmVyYXRlZCB3aGVuIGEgZmlsZSBpcyBkb3dubG9hZGVkJzsKJGxhbmdbJ2luZm9fZXZlbnRfb251cGxvYWQnXSA9ICdFdmVudCBnZW5lcmF0ZWQgd2hlbiBhIG5ldyBmaWxlIGlzIHVwbG9hZGVkJzsKJGxhbmdbJ2luZm9fZXZlbnRfb25yZW1vdmUnXSA9ICdFdmVudCBnZW5lcmF0ZWQgd2hlbiBhIGZpbGUgaXMgcmVtb3ZlZCc7CiRsYW5nWyd0aXRsZV91c2VydGFnX29udXBsb2FkJ10gPSAnVXNlciBkZWZpbmVkIHRhZyB0byBjYWxsIGFmdGVyIHVwbG9hZCBpcyBjb21wbGV0ZSc7CiRsYW5nWydub25lJ10gPSAnTm9uZSc7CiRsYW5nWydtYXRjaGVzZm91bmQnXSA9ICdNYXRjaGVzIGZvdW5kJzsKJGxhbmdbJ2ZpbHRlciddID0gJ0ZpbHRlcic7CiRsYW5nWyd0aXRsZV9yZWRpcmVjdG9udXBsb2FkJ10gPSAnUmVkaXJlY3QgdG8gcGFnZSBpZC9hbGlhcyBvbiB1c2VyIHVwbG9hZCc7CiRsYW5nWydkZXRhaWxzJ10gPSAnRGV0YWlscyc7CiRsYW5nWydjb25maXJtX3ByZWZlcmVuY2VzJ10gPSAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGFkanVzdCB0aGUgcHJlZmVyZW5jZXM/JzsKJGxhbmdbJ2Vycm9yX25vZmlsZXN1cGxvYWRlZCddID0gJ05vIGZpbGVzIHdlcmUgdXBsb2FkZWQuJzsKJGxhbmdbJ3Byb21wdF9yZXBsYWNlJ10gPSAnQWxsb3cgT3ZlcndyaXRlJzsKJGxhbmdbJ2luZm9fcmVwbGFjZSddID0gJ1JlcGxhY2UgYW55IGZpbGUgd2l0aCB0aGUgc2FtZSBuYW1lIChkb2VzIG5vdCBjaGFuZ2UgaWQpJzsKJGxhbmdbJ3BhcmFtX25vX2luaXRpYWwnXSA9ICdEbyBub3QgZGlzcGxheSBhbnkgaW5pdGlhbCByZXN1bHRzIHdoZW4gdGhlIGZpbHRlciBpcyBvbic7CiRsYW5nWydwYXJhbV9rZXknXSA9ICdQcm92aWRlIGFuIGFkZGl0aW9uYWwga2V5IHRvIHRoZSBtb2R1bGUgZm9yIGZ1cnRoZXIgb3JnYW5pemluZyB1cGxvYWRzLiAgVGhpcyBrZXkgY291bGQgYmUgYW4gZW5jb2RlZCBzdHJpbmcgbGlrZTogJiMwMzk7ZmV1c2Vyczp1aWQmIzAzOTssIGV0Yy4gIFRoaXMgcGFyYW1ldGVyIGlzIHVzdWFsbHkgb25seSBuZWVkZWQgd2hlbiBlbWJlZGRpbmcgdGhlIHVwbG9hZHMgbW9kdWxlIGludG8gYW5vdGhlciBtb2R1bGUnOwokbGFuZ1sncGFyYW1fbm9hdXRob3InXSA9ICdIaWRlIHRoZSBhdXRob3IgZmllbGQgZnJvbSB0aGUgdXBsb2FkIGZvcm0uICBUaGlzIHBhcmFtZXRlciBpcyBvbmx5IHZhbGlkIHdoZW4gbW9kZT0mIzAzOTt1cGxvYWQmIzAzOTsuICBJZiBUaGUgRnJvbnRlbmRVc2VycyBtb2R1bGUgaXMgcHJlc2VudCwgYW5kIGEgdXNlciBpcyBjdXJyZW50bHkgbG9nZ2VkIGluLCBhIGhpZGRlbiBmaWVsZCB3aWxsIGhvbGQgdGhlIGN1cnJlbnRseSBsb2dnZWQgaW4gdXNlcm5hbWUnOwokbGFuZ1sncGFyYW1fdXBsb2FkX2lkJ10gPSAndXBsb2FkX2lkPSZxdW90O2lkJnF1b3Q7IC0gc3BlY2lmeSBhIHNpbmdsZSBmaWxlIGZvciB0aGUgdXJsL2xpbmsgb3Igc2luZ2xlIG1vZGVzIChhYm92ZSknOwokbGFuZ1sncGFyYW1fdXNlX3N0cmljdF9yZWdleHAnXSA9ICdUaGUgZmlsdGVyIGZpZWxkIGlzIHVzZWQgYXMgYSBzdHJpY3QgcmVnZXhwIHdpdGhvdXQgcHJlcHJvY2Vzc2luZyBvZiBzcGFjZXMnOwokbGFuZ1sncGFyYW1fZGV0YWlsdGVtcGxhdGUnXSA9ICdVc2UgYSB0ZW1wbGF0ZSB3aXRoIHRoaXMgbmFtZSBmb3IgdGhlIGRldGFpbGVkIHJlcG9ydC4nOwokbGFuZ1sncGFyYW1fdGVtcGxhdGUnXSA9ICdVc2UgYSB0ZW1wbGF0ZSB3aXRoIHRoaXMgbmFtZSBmb3IgdGhpcyByZXBvcnQgb3IgZm9ybS4gIFRoZSBtb2RlIGlzIHVzZWQgdG8gZGV0ZXJtaW5lIHdoYXQgdHlwZSBvZiB0ZW1wbGF0ZSBpcyByZXF1aXJlcmQsIGFuZCB0aGVuIGEgbmFtZSBtYXRjaCBpcyBwZXJmb3JtZWQgd2l0aGluIHRoYXQgdHlwZS4nOwokbGFuZ1sncGFyYW1fZmlsdGVyJ10gPSAnRGlzcGxheSB0aGUgZmlsdGVyaW5nIGZvcm0nOwokbGFuZ1sncGFyYW1fbm9faW50aXRpYWwnXSA9ICdPbmx5IHVzZWZ1bCB3aGVuIHRoZSBmaWx0ZXIgcGFyYW1ldGVyIGlzIHN1cHBsaWVkLCBvciBvbiBieSBkZWZhdWx0LCB0aGlzIHBhcmFtZXRlciBpbmRpY2F0ZXMgd2V0aGVyIGluaXRpYWwgcmVzdWx0cyBzaG91bGQgYmUgcmV0dXJuZWQnOwokbGFuZ1sncGFyYW1fZmlsZXR5cGVzJ10gPSAnRGlzcGxheSBvbmx5IGZpbGVzIHdob3NlIHR5cGUgbWF0Y2hlcyB0aGlzIGNvbW1hIHNlcGFyYXRlZCBsaXN0JzsKJGxhbmdbJ3BhcmFtX3NvcnRvcmRlciddID0gJyAgPHA+U29ydCBPcmRlcnMNCiAgPHVsPg0KICA8bGk+PGVtPmRhdGVfYXNjPC9lbT4gLSBTb3J0IGJ5IGFzY2VuZGluZyBkYXRlPC9saT4NCiAgPGxpPjxlbT5kYXRlX2Rlc2M8L2VtPiAtIFNvcnQgYnkgZGVzY2VuZGluZyBkYXRlPC9saT4NCiAgPGxpPjxlbT5uYW1lX2FzYzwvZW0+IC0gU29ydCBieSBhc2NlbmRpbmcgbmFtZTwvbGk+DQogIDxsaT48ZW0+bmFtZV9kZXNjPC9lbT4gLSBTb3J0IGJ5IGRlc2NlbmRpbmcgbmFtZTwvbGk+DQogIDxsaT48ZW0+c2l6ZV9hc2M8L2VtPiAtIFNvcnQgYnkgYXNjZW5kaW5nIHNpemU8L2xpPg0KICA8bGk+PGVtPnNpemVfZGVzYzwvZW0+IC0gU29ydCBieSBkZXNjZW5kaW5nIHNpemU8L2xpPg0KICA8bGk+PGVtPmRlc2NfYXNjPC9lbT4gLSBTb3J0IGJ5IGFzY2VuZGluZyBkZXNjcmlwdGlvbjwvbGk+DQogIDxsaT48ZW0+ZGVzY19kZXNjPC9lbT4gLSBTb3J0IGJ5IGRlc2NlbmRpbmcgZGVzY3JpcHRpb248L2xpPg0KICA8bGk+PGVtPmF1dGhvcl9hc2M8L2VtPiAtIFNvcnQgYnkgYXNjZW5kaW5nIGF1dGhvcjwvbGk+DQogIDxsaT48ZW0+YXV0aG9yX2Rlc2M8L2VtPiAtIFNvcnQgYnkgZGVzY2VuZGluZyBhdXRob3I8L2xpPg0KICA8bGk+PGVtPmlwX2FzYzwvZW0+IC0gU29ydCBieSBhc2NlbmRpbmcgaXAgYWRkcmVzczwvbGk+DQogIDxsaT48ZW0+aXBfZGVzYzwvZW0+IC0gU29ydCBieSBkZXNjZW5kaW5nIGlwIGFkZHJlc3M8L2xpPg0KICA8bGk+PGVtPnJhbmRvbTwvZW0+IC0gUmFuZG9tIHNvcnQgb3JkZXI8L2xpPg0KICA8L3VsPg0KICA8L3A+JzsKJGxhbmdbJ3BhcmFtX2ZpbGVleHRlbnNpb25zJ10gPSAnIA0KZmlsZV9leHRlbnNpb25zPSZxdW90O2V4dDEsZXh0MixleHQzJnF1b3Q7DQo8cD52YWxpZCBvbmx5IHdoZW4gbW9kZT11cGxvYWQsIHRoaXMgcGFyYW1ldGVyIGxpbWl0cyB0aGUgdHlwZXMgb2YgZmlsZXMgdGhhdCBjYW4gYmUgdXBsb2FkZWQuICBJdCBvdmVycmlkZXMgYW55IHNldHRpbmdzIGluIHRoZSBtb2R1bGUgcHJlZmVyZW5jZXMuPC9wPic7CiRsYW5nWydwYXJhbV9jb3VudCddID0gJ2NvdW50PSZxdW90O04mcXVvdDsNCjxwPkEgcGFyYW1ldGVyIHRvIGxpc3Qgb25seSB0aGUgZmlyc3QgTiByZXN1bHRzIG9mIHRoZSBxdWVyeS4gIFBhZ2luYXRpb24gd291bGQgYmUgYmV0dGVyLCBidXQgdGhpcyB3aWxsIGRvIHRoZSB0cmljayBmb3Igbm93PC9wPic7CiRsYW5nWydwYXJhbV9jYXRlZ29yeSddID0gJ2NhdGVnb3J5PSZxdW90O25hbWUmcXVvdDsNCjxwPjxiPk5vdGU6PC9iPiBDYXRlZ29yeSBjYW4gYmUgJnF1b3Q7YWxsJnF1b3Q7LCB3aGljaCB3aWxsIGxpc3QgYWxsIG9mIHRoZSB1cGxvYWRzIGZyb20gYWxsIDxlbT5saXN0YWJsZTwvZW0+IGNhdGVnb3JpZXM8L3A+JzsKJGxhbmdbJ3BhcmFtX21vZGUnXSA9ICcgIDx1bD4NCiAgPGxpPjxlbT5kZXRhaWxlZDwvZW0+IC0gRGlzcGxheSBhIGRldGFpbGVkIGxpc3Qgb2YgYWxsIGZpbGVzIGluIHRoZSBjYXRlZ29yeTwvbGk+DQogIDxsaT48ZW0+dXBsb2FkPC9lbT4gLSBEaXNwbGF5IGEgZm9ybSB0byBhbGxvdyBhIGZyb250ZW5kIHVzZXIgdG8gdXBsb2FkIGEgZmlsZTwvbGk+DQogIDxsaT48ZW0+dXJsIDxpPm9yPC9pPiBsaW5rPC9lbT4gLSBEaXNwbGF5IGEgbGluayB0byBhIGZpbGU8L2xpPg0KICA8bGk+PGVtPnN1bW1hcnk8L2VtPiAtIERpc3BsYXkgYSBzdW1tYXJpemVkIGxpc3Qgb2YgYWxsIGZpbGVzIGluIHRoZSBjYXRlZ29yeTwvbGk+DQogIDxsaT48ZW0+c2luZ2xlPC9lbT4gLSBEaXNwbGF5IGEgZGV0YWlsZWQgcmVwb3J0IGFib3V0IGEgc2luZ2xlIHVwbG9hZDwvbGk+DQogIDxsaT48ZW0+c2luZ2xlc3VtbWFyeTwvZW0+IC0gRGlzcGxheSBhIHN1bW1hcml6ZWQgcmVwb3J0IGFib3V0IGEgc2luZ2xlIHVwbG9hZDwvbGk+DQogIDwvdWw+JzsKJGxhbmdbJ3BhcmFtX3NlbGVjdGZvcm0nXSA9ICdXaGVuIHVzaW5nIHRoZSAmIzAzOTtzZWxlY3QmIzAzOTsgbW9kZSwgdGhpcyBwYXJhbWV0ZXIgaXMgdGhlIGZvcm1pZCBvZiB0aGUgcGFyZW50IGZvcm0uICBVc2VkIHRvIGhhbmRsZSBwYXJhbWV0ZXIgcGFzc2luZyc7CiRsYW5nWydwYXJhbV9zZWxlY3RuYW1lJ10gPSAnd2hlbiB1c2luZyB0aGUgJiMwMzk7c2VsZWN0JiMwMzk7IG1vZGUsIHRoaXMgcGFyYW1ldGVyIHNwZWNpZmllcyB0aGUgbmFtZSBvZiB0aGUgZmllbGQnOwokbGFuZ1sncGFyYW1fc2VsZWN0dmFsdWUnXSA9ICdXaGVuIHVzaW5nIHRoZSAmIzAzOTtzZWxlY3QmIzAzOTsgbW9kZSwgdGhpcyBwYXJhbWV0ZXIgc3BlY2lmaWVzIHRoZSBkZWZhdWx0IGZpZWxkIHZhbHVlJzsKJGxhbmdbJ3BhcmFtX3NlbGVjdG5vbmUnXSA9ICdXaGVuIHVzaW5nIHRoZSAmIzAzOTtzZWxlY3QmIzAzOTsgbW9kZSwgdGhpcyBwYXJhbWV0ZXIgc3BlY2lmaWVzIHdldGhlciAmIzAzOTtub25lJiMwMzk7IGlzIGEgdmFsaWQgY2hvaWNlLic7CiRsYW5nWydyZXR1cm50b21vZHVsZSddID0gJ1JldHVybiB0byBtb2R1bGUgcGFuZWwnOwokbGFuZ1snZXJyb3Jfbm9jYXRlZ29yaWVzJ10gPSAnVGhlcmUgYXJlIG5vIGRlZmluZWQgY2F0ZWdvcmllcyc7CiRsYW5nWyd0aXRsZV9lbmZvcmNlZXh0ZW5zaW9ucyddID0gJ1JlcXVpcmUgZXh0ZW5zaW9ucyBvbiBhbGwgdXBsb2FkZWQgZmlsZXMnOwokbGFuZ1sncmVzdG9yZWRlZmF1bHRzY29uZmlybSddID0gJ1RoaXMgb3BlcmF0aW9uIHdpbGwgcmVzdG9yZSB0aGUgdGVtcGxhdGUgdG8gc3lzdGVtIGRlZmF1bHRzLiAgQW55IGNoYW5nZXMgeW91IGhhdmUgbWFkZSB3aWxsIGJlIGxvc3QuICBBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gcHJvY2VlZD8nOwokbGFuZ1snaW5mb190aHVtYm5haWwnXSA9ICdBbiBvcHRpb25hbCB0aHVtYm5haWwgZmlsZSc7CiRsYW5nWyd0aHVtYm5haWwnXSA9ICdUaHVtYm5haWwnOwokbGFuZ1snbmV3dGh1bWJuYWlsJ10gPSAnVXBsb2RhIG5ldyB0aHVtYm5haWwnOwokbGFuZ1snaW5mb19zdW1tYXJ5J10gPSAnQSBicmllZiBkZXNjcmlwdGlvbiBvZiB0aGUgZmlsZSAoaWYgZW1wdHksIHRoZSBmaWxlIG5hbWUgaXMgdXNlZCB3aXRob3V0IHRoZSBleHRlbnNpb24pJzsKJGxhbmdbJ2luZm9fY2F0ZWdvcnluYW1lJ10gPSAnQSBicmllZiBuYW1lIGZvciB5b3VyIGNhdGVnb3J5IChodW1hbiByZWFkYWJsZSknOwokbGFuZ1snaW5mb19jYXRlZ29yeWRlc2MnXSA9ICdBIGRlc2NyaXB0aW9uIGZvciB5b3VyIGNhdGVnb3J5JzsKJGxhbmdbJ2luZm9fY2F0ZWdvcnlwYXRoJ10gPSAnVGhlIGRpcmVjdG9yeSBuYW1lIGluc2lkZSB0aGUgdXBsb2FkcyBkaXJlY3RvcnkgdGhhdCB3aWxsIGJlIHVzZWQgdG8gc3RvcmUgZmlsZXMgaW4gdGhpcyBjYXRlZ29yeS4gIElmIHRoZSBkaXJlY3Rvcnkgb2YgdGhpcyBuYW1lIGRvZXMgbm90IGFscmVhZHkgZXhpc3QsIGl0IG1heSBiZSBjcmVhdGVkJzsKJGxhbmdbJ2luZm9fZGVzdG5hbWUnXSA9ICdVc2UgdGhlICYjMDM5O1VwbG9hZCBBcyYjMDM5OyBmaWVsZCB0byBjaGFuZ2UgdGhlIG5hbWUgb2YgdGhlIGZpbGUgb24gdXBsb2FkLiAgTGVhdmUgYmxhbmsgdG8gcHJlc2VydmUgdGhlIGZpbGVuYW1lIGFzLWlzLic7CiRsYW5nWydlcnJvcl9jYW50Y3JlYXRlZGlyZWN0b3J5J10gPSAnQ291bGQgbm90IGNyZWF0ZSBkaXJlY3RvcnknOwokbGFuZ1snZXJyb3Jfbm9tYWlsZXJtb2R1bGUnXSA9ICdUaGUgQ01TTWFpbGVyIG1vZHVsZSBjb3VsZCBub3QgYmUgaW5zdGFudGlhdGVkJzsKJGxhbmdbJ3VwbG9hZF9ub3RpZmljYXRpb24nXSA9ICdBIG5ldyBmaWxlIGhhcyBiZWVuIHVwbG9hZGVkJzsKJGxhbmdbJ3RpdGxlX2VtYWlsX29uX3VwbG9hZCddID0gJ1NlbmQgdXBsb2FkIG5vdGlmaWNhdGlvbiB0bzonOwokbGFuZ1snZW1haWxfdGVtcGxhdGUnXSA9ICdFbWFpbCBUZW1wbGF0ZSc7CiRsYW5nWyd0aXRsZV9kdW1teV9pbmRleF9odG1sJ10gPSAnQ3JlYXRlIGR1bW15IGluZGV4Lmh0bWwgZmlsZXMgaW4gZWFjaCBkaXJlY3Rvcnk/PGJyLz48ZW0+QW55IGV4aXN0aW5nIGluZGV4Lmh0bWwgZmlsZXMgd2lsbCByZW1haW48L2VtPic7CiRsYW5nWydhYm91dCddID0gJ0Fib3V0JzsKJGxhbmdbJ2Vycm9yX3Blcm1pc3Npb25kZW5pZWQnXSA9ICdBY2Nlc3MgRGVuaWVkLiBQbGVhc2UgY2hlY2sgeW91ciBwZXJtaXNzaW9ucy4nOwokbGFuZ1snZXJyb3JfY291bGRub3R3cml0ZSddID0gJ0NvdWxkIG5vdCB3cml0ZSc7CiRsYW5nWydhZGRjYXRlZ29yeSddID0gJ0FkZCBDYXRlZ29yeSc7CiRsYW5nWydhbGwnXSA9ICdBbGwnOwokbGFuZ1snYXJleW91c3VyZSddID0gJ0FyZSBZb3UgU3VyZT8nOwokbGFuZ1snYXV0aG9yJ10gPSAnQXV0aG9yJzsKJGxhbmdbJ2NhbmNlbCddID0gJ0NhbmNlbCc7CiRsYW5nWydjYW5ub3Rtb2RpZnlwYXRoJ10gPSAnKFRoZSBwYXRoIGNhbm5vdCBiZSBtb2RpZmllZCknOwokbGFuZ1snY2F0ZWdvcmllcyddID0gJ0NhdGVnb3JpZXMnOwokbGFuZ1snY2F0ZWdvcnknXSA9ICdDYXRlZ29yeSc7CiRsYW5nWydtZXNzYWdlX2NhdGVnb3J5YWRkZWQnXSA9ICdDYXRlZ29yeSBzdWNjZXNzZnVsbHkgYWRkZWQnOwokbGFuZ1snY2hhbmdlbG9nJ10gPSAnPHVsPg0KPGxpPg0KPHA+VmVyc2lvbiAxLjAuIC0gU2VwdGVtYmVyIDIwMDUuPC9wPg0KPHA+IEluaXRpYWwgUmVsZWFzZS48L3A+DQo8L2xpPg0KPGxpPg0KPHA+VmVyc2lvbiAxLjAxLiAtIFNlcHRlbWJlciAyMDA1PC9wPg0KPHA+TWlub3IgZml4ZXMuPC9wPjwvbGk+DQo8bGk+DQo8cD5WZXJzaW9uIDEuMDIuIC0gU2VwdGVtYmVyIDIwMDU8L3A+DQo8cD5BZGRlZCBhYmlsaXR5IHRvIHNwZWNpZnkgc29ydCBvcmRlcjwvcD4NCjwvbGk+DQo8bGk+DQo8cD5WZXJzaW9uIDEuMDMuIC0gU2VwdGVtYmVyIDIwMDU8L3A+DQo8cD5GaXggcmVnYXJkaW5nIGNvbmZsaWN0IGluIHRlbXBsYXRlIG5hbWVzPC9wPg0KPC9saT4NCjxsaT4NCjxwPlZlcnNpb24gMS4wNC4gLSBTZXB0ZW1iZXIgMjAwNTwvcD4NCjxwPkFkZGVkIGFiaWxpdHkgdG8gcmUtc2NhbiBhIGRpcmVjdG9yeSwgYW5kIHRvIHVwbG9hZCBmaWxlcyBmcm9tIHRoZSBhZG1pbiBwYWdlPC9wPg0KPC9saT4NCjxsaT4NCjxwPlZlcnNpb24gMS4wNS4gLSBTZXB0ZW1iZXIgMjAwNTwvcD4NCjxwPkZpeGVkIHNvbWUgUEhQIHZhcmlhYmxlIGlzc3VlczwvcD4NCjwvbGk+DQo8bGk+DQo8cD5WZXJzaW9uIDEuMDYuIC0gU2VwdGVtYmVyIDIwMDU8L3A+DQo8cD5BZGRlZCBhdXRob3IgZmllbGQgdG8gdGhlIGFkbWluIHBhbmVsIHVwbG9hZCBmb3JtLCBhZGRlZCBhIHN1bW1hcnkgZmllbGQsIGFuZCBtYWRlIGRlc2NyaXB0aW9uIGEgdGV4dCBhcmVhLCBhbmQgYWxsb3cgdGhlIHVzZXIgdG8gc3BlY2lmeSBhIGRlc3RpbmF0aW9uIGZpbGUgbmFtZTwvcD4NCjwvbGk+DQo8bGk+DQo8cD5WZXJzaW9uIDEuMDcuIC0gU2VwdGVtYmVyIDIwMDU8L3A+DQo8cD5BZGRlZCB0aGUgYWJpbGl0eSB0byByZW5hbWUgZmlsZXMgYW5kIGZpeGVkIGEgc2NhbiBlcnJvcjwvcD4NCjwvbGk+DQo8bGk+DQo8cD5WZXJzaW9uIDEuMDguIC0gU2VwdGVtYmVyIDIwMDU8L3A+DQo8cD5CZXR0ZXIgaGFuZGxpbmcgb2YgbmFtZXMgd2l0aCBzcGFjZXMsIGFuZCBhIGZldyBtaW5vciBlcnJvcnMgZml4ZWQuICBBZGRlZCBzd2VkaXNoIHRyYW5zbGF0aW9uICh0aGFua3Mgd2VzdGlzKTwvcD48L2xpPg0KPGxpPg0KPHA+VmVyc2lvbiAxLjEuMC4gLSBPY3RvYmVyIDIwMDU8L3A+DQogPHVsPg0KICAgPGxpPk1vZGlmaWVkIEF0dGVtcHRVcGxvYWQgZnVuY3Rpb24gc28gaXQgY291bGQgYmUgY2FsbGVkIGV4dGVybmFsbHk8L2xpPg0KICAgPGxpPkFkZGVkIEdldFVwbG9hZERldGFpbHMgZnVuY3Rpb24gdGhhdCByZXR1cm5zIGFsbCBvZiB0aGUgZGV0YWlscyBhYm91dCBhIG1vZHVsZSwgaW5jbHVkaW5nIGEgbGluazwvbGk+DQogICA8bGk+QWRkZWQgUmVkaXJlY3RzIHNvIHRoYXQgd29ya2luZyB3aXRoIHRoZSBtb2R1bGUgaXMgYWxvdCBuaWNlciwgaXQgcmV0dXJucyB0byB0aGUgcmlnaHQgdGFiPC9saT4NCiAgIDxsaT5DaGFuZ2VkIHRoZSBmcm9udCB0ZW1wbGF0ZSB0byBsb29rIGEgbGl0dGxlIGJldHRlciBhbmQgbWFrZSBtb3JlIHNlbnNlPC9saT4NCiAgIDxsaT5GaXhlcyB0byB0aGUgdXBsb2FkcyBzdHVmZiBzbyB0aGF0IHRoZSBkZXNjcmlwdGlvbiBpcyBzZXQsIGFuZCBuYW1lIGFuZCBzdW1tYXJ5IGFyZSBwdXQgaW4gdGhlIHJpZ2h0IHBsYWNlPC9saT4NCiAgIDxsaT5GaXhlcyB0byBldmVuIGJldHRlciBoYW5kbGUgc3BhY2VzIGluIG5hbWVzPC9saT4NCiAgIDxsaT5PcHRpb25hbHkgcGxhY2UgZHVtbXkgaW5kZXguaHRtbCBmaWxlcyBpbiBlYWNoIHVwbG9hZCBkaXJlY3Rvcnk8L2xpPg0KICAgPGxpPklmIHNwZWNpZnlpbmcgYSBkZXN0aW5hdGlvbiBuYW1lLCBhbmQgbm8gZXh0ZW5zaW9uIGlzIGdpdmVuLCB0aGUgZXh0ZW5zaW9uIG9mIHRoZSBvcmlnaW5hdGluZyBmaWxlIChpZiBhbnkgZXhpc3RzIGlzIHVzZWQ8L2xpPg0KIDwvdWw+DQogPHA+PGVtPjxiPkltcG9ydGFudCE8L2I+PC9lbT48YnIvPkl0IGlzIG5vdCBwb3NzaWJsZSB0byB1cGdyYWRlIGZyb20gYW55IG90aGVyIHZlcnNpb24gb2YgdGhlIFVwbG9hZHMgbW9kdWxlIHRvIDEuMS4wLiAgVGhpcyBpcyBkdWUgdG8gc29tZSBlcnJvcnMgdGhhdCB3ZXJlIG1hZGUgaW4gdGhlIGRhdGFiYXNlIHJvdXRpbmVzLCBhbmQgZXZlbiBpbiB0aGUgdXBncmFkZSByb3V0aW5lIGluIDEuMC42LiAgWW91IG11c3QgZGUtaW5zdGFsbCB0aGUgb2xkIHZlcnNpb24sIGFuZCB0aGVuIHJlLWluc3RhbGwgdGhlIG5ldyB2ZXJlc2lvbi4gVGhpcyB3aWxsIGNhdXNlIHNpZ25pZmljYW50IGRpZmZpY3VsdHkgaWYgeW91IGhhdmUgZHNjcmlwdGlvbnMsIGV0YywgaW4geW91ciB0YWJsZXM8L3A+DQo8L2xpPg0KPGxpPg0KPHA+VmVyc2lvbiAxLjEuMS4gLSBPY3RvYmVyLCAyMDA1PC9wPg0KPHA+Rml4ZWQgYSBjb3VwbGUgb2YgbWlub3IgYnVncyBpbiB0aGUgR2V0VXBsb2FkRGV0YWlscyBhbmQgYWRkZWQgYW5vdGhlciBsaW5rIChvciBhIHVybCkgdG8gdGhlIHVwbG9hZGVkIGZpbGUuPC9wPg0KPC9saT4NCjxsaT4NCjxwPlZlcnNpb24gMS4xLjIuIC0gT2N0b2JlciwgMjAwNTwvcD4NCjxwPkZpeGVkIHRoZSBVUkwgZmllbGQgaW4gR2V0VXBsb2FkRGV0YWlscyB0byByZXR1cm4gYSBkb3dubG9hZCBsaW5rIGFuZCBhZGRlZCBhbiBhYnN1cmwgZmllbGQgd2hpY2ggcmV0dXJucyB0aGUgYWJzb2x1dGUgcGF0aCB0byB0aGUgZmlsZSBvbiB0aGUgd2Vic2VydmVyLiAgQ2xpY2tzIG9uIHRoaXMgbGluayB3aWxsIG5vdCBiZSBjb3VudGVkPC9wPg0KPC9saT4NCjxsaT4NCjxwPlZlcnNpb24gMS4xLjMuIC0gT2N0b2JlciwgMjAwNTwvcD4NCjxwPkZpeGVkIHRoZSB1cGdyYWRlIHByb2JsZW0gZnJvbSB0aGUgMS4wLnggc2VyaWVzLiAgVXNlcnMgb2YgdGhlIDEuMC54IHNlcmllcyBzaG91bGQgYmUgYWJsZSB0byB1cGdyYWRlIHRvIDEuMS4zIG5vdyB3aXRoIG5vIGRpZmZpY3VsdHkuIDxiPlRob3NlIGFyZSBmYW1vdXMgbGFzdCB3b3JkcywgcGxlYXNlIGJhY2t1cCBmaXJzdDwvYj4uIEZpeGVkIHRoZSBjb250ZW50IHJlZGlyZWN0IHRoaW5ncyB0aGF0IHdlcmUgaXJyaXRhdGluZyBtZS4gIEFsc28gYWRkZWQgY2F0ZWdvcnk9YWxsIHRvIGxpc3QgYWxsIG9mIHRoZSB1cGxvYWRzIGluIGFsbCBsaXN0YWJsZSBjYXRlZ29yaWVzIDxlbT4obGV0cyBhbGwgaG9wZSBJIGdvdCB0aGUgc3FsIGZpZ3VyZWQgb3V0IHByb3Blcmx5KTwvZW0+LjwvcD4NCjwvbGk+DQo8bGk+DQo8cD5WZXJzaW9uIDEuMS40LiAtIE9jdG9iZXIsIDIwMDU8L3A+DQo8cD5BZGRlZCB0aGUgY291bnQgcGFyYW1ldGVyIHRvIGxpc3Qgb25seSB0aGUgZmlyc3QgTiByZWNvcmRzLCBhbmQgYWRkZWQgJnF1b3Q7c3VtbWFyeWxpbmsmcXVvdDssIGFuZCAmcXVvdDtjYXRlZ29yeSZxdW90OyB0byB0aGUgdGVtcGxhdGVzIGZvciB3ZXN0aXMuICBGb3IgZXhhbXBsZXMgb24gaG93IHRvIHVzZSB0aGVtIHJlc2V0IHlvdXIgdGVtcGxhdGVzIGJhY2sgdG8gZGVmYXVsdC48L3A+PC9saT4NCjxsaT4NCjxwPlZlcnNpb24gMS4xLjUuIC0gTm92ZW1iZXIsIDIwMDU8L3A+DQo8cD5BZGRlZCBlbWFpbCBub3RpZmljYXRpb24gYW5kIHNvbWUgYnVnIGZpeGVzPC9wPg0KPC9saT4NCjxsaT4NCjxwPlZlcnNpb24gMS4xLjYuIC0gTm92ZW1iZXIsIDIwMDU8L3A+DQo8cD5BZGRlZCBhbiBhcGkgZnVuY3Rpb24gYW5kIGZpeGVkIHNvbWUgcmVkaXJlY3Rpb24gc3R1ZmY8L3A+DQo8L2xpPg0KPGxpPg0KPHA+VmVyc2lvbiAxLjEuNy4gLSBOb3ZlbWJlciwgMjAwNTwvcD4NCjxwPk1vcmUgQVBJIGZ1bmN0aW9ucywgYW5kIG5vdyBpZ25vcmUgZG90IGZpbGVzIHdoZW4gc2Nhbm5pbmcuICBFbWFpbCBub3RpZmljYXRpb24gaXMgbm93IGluLjwvcD4NCjwvbGk+DQo8bGk+DQo8cD5WZXJzaW9uIDEuMS44LiAtIEphbnVhcnksIDIwMDY8L3A+DQo8cD4qIEltcHJvdmVkIGRvY3Mgd3J0IGFwYWNoZSBhbmQgcGhwIGNvbmZpZ3MuPC9wPg0KPHA+KiBGaXhlZCBwcm9ibGVtIHdoZXJlIGZpbGVzaXplIHdhcyBzaG93aW5nIHVwIGFzIDAuPC9wPg0KPHA+KiBNb2RpZmllZCBwZXJtaXNzaW9ucyB0byBiZSBtb3JlIGdyYW51bGFyPC9wPg0KPHA+KiBBZGRlZCBzb21lIGNvbW1lbnRzIGFuZCB2ZXJib3NpdHkgdG8gdGhlIGNhdGVnb3J5IGFuZCB1cGxvYWRzIGZvcm1zIGluIHRoZSBhZG1pbiBzZWN0aW9uPC9wPg0KPHA+KiBBZGRlZCAmcXVvdDtyYW5kb20mcXVvdDsgc29ydCBvcmRlcjwvcD4NCjxwPiogU29tZSBQSFA1IGZpeGVzPC9wPg0KPC9saT4NCjxsaT4NCjxwPlZlcnNpb24gMS4xLjkuIC0gSmFudWFyeSwgMjAwNjwvcD4NCjxwPiogQWRkZWQgdGhlIGFiaWxpdHkgdG8gdXBsb2FkIGEgdGh1bWJuYWlsIGltYWdlPC9wPg0KPHA+KiBTb21lIGltcHJvdmVkIGF1ZGl0aW5nPC9wPg0KPHA+KiB4bWwgbm93IGFkZGVkIHRvIHRoZSBkZWZhdWx0IGZpbGUgdHlwZXMgKG5ldyBpbnN0YWxscyBvbmx5KTwvcD4NCjxwPiogQWRkZWQgYSBjb25maXJtYXRpb24gbWVzc2FnZSB0byB0aGUgcmVzZXQgdG8gZGVmYXVsdHMgYnV0dG9ucyBvZiB0aGUgdGVtcGxhdGUgcGFnZXMuPC9wPg0KPHA+KiBBZGRlZCB0aGUgZmlsZV9leHRlbnNpb25zIHBhcmFtZXRlciBmb3IgdGhlIHVwbG9hZCBmb3JtPC9wPg0KPHA+KiBUaGUgY3VycmVudCBjYXRlZ29yeSBzZWxlY3RlZCBpbiB0aGUgZmlsZXMgZmlsdGVyIGlzIHN0aWNreS4NCjxwPiogQWRkZWQgYSBwcmVmZXJlbmNlIHRvIGVuZm9yaWNlIGZpbGVuYW1lIGV4dGVuc2lvbnMgKGRlZmF1bHRzIHRvIG9uKTwvcD4NCjxwPiogQWRkZWQgYSBsaW5rIHRvIHRoZSBlZGl0IHBhZ2UsIGluIHRoZSBuYW1lIGNvbHVtbiBvZiB0aGUgZmlsZXMgbGlzdC48L3A+DQo8cD4qIE1pbm9yIGNoYW5nZXMgdG8gdGhlIGxheW91dCBhbmQgdGV4dCB0byBhZGQgY2xhcml0eS48L3A+DQo8cD4qIEFkZGVkIGRvd25sb2FkX3VybCBhcyBhbiBhdmFpbGFibGUgc21hcnR5IHRhZyBpbiB0aGUgdGVtcGxhdGVzPC9wPg0KPGxpPg0KPHA+VmVyc2lvbiAxLjEuMTAuIC0gRmVicnVhcnksIDIwMDY8L3A+DQo8cD4qIFN1bW1hcnkgbm93IGRlZmF1bHRzIHRvIHRoZSBmaWxlbmFtZSAod2l0aG91dCB0aGUgZXh0ZW5zaW9uKSBpZiBub25lIGlzIHNwZWNpZmllZDwvcD4NCjxwPiogTm93IGNvcnJlY3RseSBoYW5kbGUgaWYgdGhlIHRodW1ibmFpbCBleHRlbnNpb24gaXMgbm90IGluIHRoZSBhY2NlcHRlZCBleHRlbnNpb24gbGlzdDwvcD4NCjxwPiogTm8gbG9uZ2VyIGRpc3BsYXkgYW55IGNvbnRlbnQgaW4gdGhlIGZpbGVzIHRhYiBpZiB0aGVyZSBhcmUgbm8gY2F0ZWdvcmllcyBkZWZpbmVkPC9wPg0KPHA+KiBEaXNwbGF5IGEgbGluayBpbiB0aGUgZXJyb3IgcGFnZSB0aGF0IHRha2VzIHlvdSBiYWNrIHRvIHRoZSBtYWluIGFkbWluIHBhbmVsPC9wPg0KPHA+KiBBbGxvdyBmb3IgcmVwbGFjaW5nIG9mIHVwbG9hZGVkIGZpbGVzPC9wPg0KPC9saT4NCjxsaT4NCjxwPlZlcnNpb24gMS4xLjExLiAtIE1hcmNoLCAyMDA2PC9wPg0KPHA+QWRkZWQgdGhlIGFiaWxpdHkgZm9yIGEgbGluayB0byBhIGRldGFpbGVkIHBhZ2Ugd2hlbiBpbiBzdW1tYXJ5IG1vZGUuPC9wPg0KPHA+U3BsaXQgdGhlIGRlZmF1bHQgYWN0aW9uIGFuZCBkZWZhdWx0YWRtaW4gYWN0aW9ucyBpbnRvIHNlcGFyYXRlIGZpbGVzLCBmb3IgYSBiaXQgb2YgbWVtb3J5IGltcHJvdmVtZW50LCBob3BlZnVsbHk8L3A+DQo8cD5BZGQgdGhlIGFiaWxpdHkgdG8gcmVkaXJlY3QgdG8gYW5vdGhlciBwYWdlIGFmdGVyIGEgZnJvbnRlbmQgdXNlciB1cGxvYWRlZCBhIGZpbGU8L3A+DQo8L2xpPg0KPGxpPg0KPHA+VmVyc2lvbiAxLjEuMTIuIC0gTWFyY2gsIDIwMDY8L3A+DQo8cD5BZGRlZCB0aGUgc2luZ2xlc3VtbWFyeSBtb2RlIHRvIGRpc3BsYXkgYSBzaW5nbGUgdXBsb2FkIGluIHN1bW1hcnkgbW9kZTwvUD4NCjwvbGk+DQo8bGk+DQo8cD5WZXJzaW9uIDEuMS4xMy4gLSBBcHJpbCwgMjAwNjwvcD4NCjxwPkFkZGVkIG9wdGlvbmFsIGZpbHRlcmluZyBvbiB0aGUgZnJvbnRlbmQsIGFuZCBhIGNvdXBsZSBvZiBleHRyYSBwYXJhbWV0ZXJzIHRvIGdvIHdpdGggaXQ8L3A+DQo8cD5GaXhlZCBhIHByb2JsZW0gd2hlcmUgaXQgd291bGQgYWxsb3cgeW91IHRvIGVudGVyIGEgYmxhbmsgcGF0aCB3aGVuIGNyZWF0aW5nIGEgY2F0ZWdvcnk8L3A+DQo8cD5TcGxpdCBzdHVmZiBpbnRvIChzb21lKSBzZXBhcmF0ZSBhY3Rpb24gZmlsZXMgZm9yIHNvbWUgaG9wZWZ1bCBwZXJmb3JtYW5jZSBpbmNyZWFzZXM8L3A+DQo8cD5BZGRlZCBjb3B5cmlnaHQgbm90aWNlczwvcD4NCjxwPkNoYW5nZWQgKG9wdGlvbmFsKSBkZXBlbmRlbmN5IGZyb20gVXNlcklEIHRvIEZyb250RW5kVXNlcnMgTW9kdWxlLjwvcD4NCjwvbGk+DQo8bGk+DQo8cD5WZXJzaW9uIDEuMi4xIC0gQXByaWwsIDIwMDY8L3A+DQo8cD5DaGFuZ2VkIF9zY2FuRGlyZWN0b3J5IHRvIGFuIEFQSSBmdW5jdGlvbiBTY2FuRGlyZWN0b3J5IGFuZCB0aGVuIGFkZGVkIFNtYXJ0U2NhbkRpcmVjdG9yeSB0byBzY2FuIHRoZSBkaXJlY3RvcnkgYmVmb3JlIGRpc3BsYXlpbmcgdGhlIHN1bW1hcnkgb3IgZGV0YWlsIGxpc3RpbmcgdG8gaGFuZGxlIHRoZQ0KY2FzZSB3aGVyZSBzb21lYm9keSB1cGxvYWRlZCBmaWxlcyB2aWEgRlRQIG9yIHNvbWV0aGluZyBhbmQgZGlkIG5vdCBnbyBpbnRvIHRoZSBhZG1pbiBzZWN0aW9uIHRvIHVwZGF0ZSB0aGUgY2F0ZWdvcmllcy48L3A+DQo8cD5Db3JyZWN0aW9uIHRvIGFsbCBkYiBhY2Nlc3Mgc3R1ZmYuIEhvcGVmdWxseSBwcm92aWRlcyBhIHBlcmZvcm1hbmNlIGluY3JlYXNlLjwvcD4NCjxwPkZpeGVzIHRvIHRoZSBhYm91dCBzdHVmZiwgbm93IHVzZSBDcmVhdGVQYXJhbWV0ZXI8L3A+DQo8cD5BZGRlZCB0aGUgdXBsb2FkX3RlbXBsYXRlLCBzdW1tYXJ5X3RlbXBsYXRlLCBhbmQgZGV0YWlsX3RlbXBsYXRlIChvcHRpb25hbCkgcGFyYW1ldGVyPC9wPg0KPHA+QWRkZWQgdGhlIG5vYXV0aG9yIHBhcmFtZXRlciwgYW5kIHRoZSBrZXkgcGFyYW1ldGVyLiAgVGhlIGtleSBwYXJhbWV0ZXIgYWxsb3dzIHRoZSB1cGxvYWRzIG1vZHVsZSB0byBiZSBlbWJlZGRlZCBpbnRvIG90aGVyIG1vZHVsZXM8L3A+DQo8cD5Nb3ZlZCB0byB1bmRlciB0aGUgY29udGVudCBtZW51LCBhbmQgZW50aXRsZWQgJiMwMzk7RmlsZXMgKFVwbG9hZCBNb2R1bGUpJiMwMzk7PC9wPjsNCjwvbGk+DQo8bGk+DQo8cD5WZXJzaW9uIDEuMi4yIC0gSnVuZSwgMjAwNg0KPHA+QWRkZWQgdGhlIGFiaWxpdHkgdG8gaGF2ZSBtdWx0aXBsZSBkYXRhYmFzZSB0ZW1wbGF0ZXMsIGFuZCB0byBzZWxlY3Qgb25lIG9uIHRoZSB0YWcgd2l0aCB0aGUgdGVtcGxhdGUgcGFyYW1ldGVyLjwvcD4NCjxwPkZpeGVkIGFuIGlzc3VlIHdoZXJlIGZpbGVzIHdlcmUgZ2V0dGluZyBjb3JydXB0ZWQgb24gZG93bmxvYWQ8L3A+DQo8L2xpPg0KPGxpPg0KPHA+VmVyc2lvbiAxLjIuMyAtIEp1bmUsIDIwMDYNCjxwPkZpeGVzIHRvIHVzZSBhZG9kYi1saXRlIHByb3BlciwgcmF0aGVyIHRoYW4gdGVkcyBoYWNrPC9wPg0KPHA+RGV0YWlsIGxpbmsgbm93IGRpc3BsYXlzIGlubGluZTwvcD4NCjxwPk90aGVyIG1pbm9yIHR3ZWFrcyB0aGF0IEkgY2FudCByZW1lbWJlcjwvcD4NCjwvbGk+DQo8bGk+VmVyc2lvbiAxLjMuMCAtIFNlcHRlbWJlciwgMjAwNw0KPHA+Rml4ZXMgdG8gdGhlIERUIGZpZWxkIHR5cGU8L3A+DQo8cD5Vc2UgdGhlIEZFVSB1c2VybmFtZSAob3B0aW9uYWxseSkgc28gdGhhdCB3ZSBjYW4gdHJhY2sgd2hlbiBhIGxvZ2dlZCBpbiB1c2VyIHVwbG9hZHMgYSBmaWxlPC9wPg0KPHA+QWRkIGZpbGV0eXBlIGNhcGFiaWxpdGllcyB0byBhc3NvY2lhdGUgYW4gaWNvbiB3aXRoIGEgcGFydGljdWxhciB1cGxvYWQuICBBbHNvIHN1cHBvcnQgYW4gdW5rbm93biBmaWxlIHR5cGUgZm9yIGFueXRoaW5nIHRoYXQgZG9lcyBub3QgbWF0Y2guPC9wPg0KPHA+Q29tcGxldGVseSByZS13b3JrZWQgdGhlIG11bHRpcGxlIGRhdGFiYXNlIHRlbXBsYXRlIHN0dWZmLjwvcD4NCjxwPkFkanVzdG1lbnRzIHRvIHRoZSBkZWZhdWx0IHRlbXBsYXRlczwvcD4NCjxwPkZpeGVzIHRvIHVzaW5nIGNhdGVnb3J5PSZxdW90O2FsbCZxdW90OzwvcD4NCjxwPkdlbmVyYXRlIHRodW1ibmFpbHMgYXV0b21hdGljYWxseSAob3B0aW9uYWxseSkgZm9yIGNlcnRhaW4gZmlsZSB0eXBlcywgb24gdXBsb2FkLCBhbmQgb24gc2Nhbi48L3A+DQo8cD5BZGQgY2FwdGNoYSBzdXBwb3J0IHRvIHRoZSB1cGxvYWQgZm9ybTwvcD4NCjxwPkFkZCBhIHNhZmUgbW9kZSB3YXJuaW5nIGluIHRoZSBhZG1pbiBwYW5lbDwvcD4NCjxwPlVzZXMgY2h1bmtlZCBkb3dubG9hZHMuPC9wPg0KPHA+QWRkcyBwcmVmaXggYW5kIHByZWZpeF9mZXUgY2FwYWJpbGl0eSB0byB1cGxvYWRlZCBmaWxlcy48L3A+DQo8cD5BZGRlZCB0aGUgZGV0YWlscGFnZSBwYXJhbS48L3A+DQo8cD5BZGRlZCB0aGUgYWJpbGl0eSB0byBkaXNwbGF5IGFuIGltYWdlIGluIGZ1bGwgc2l6ZSAob3Igd2hhdGV2ZXIgc2l6ZSB3ZSB3YW50KSwgc28gdGhhdCB0aGUgdXBsb2FkcyBtb2R1bGUgY2FuIGJlIHVzZWQgYXMgYSBnYWxsZXJ5LjwvcD4NCjxwPkFkZGVkIHNlY3VyaXR5ICh2aWEgdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlKSB0byBjYXRlZ29yaWVzPC9wPg0KPHA+QWRkZWQgYSBzZWxlY3QgbW9kZSB0byBnZW5lcmF0ZSBhIHB1bGxkb3duIG9mIGZpbGVzIGluIGEgY2F0ZWdvcnksIGZvciB1c2Ugd2hlbiBhdHRhY2hpbmcgdXBsb2FkcyBtb2R1bGUgdG8gc29tZSBvdGhlciBtb2R1bGUuPC9wPg0KPC9saT4NCjwvdWw+JzsKJGxhbmdbJ2RhdGUnXSA9ICdEYXRlJzsKJGxhbmdbJ2RhdGV1cGxvYWRlZCddID0gJ0RhdGUgVXBsb2FkZWQnOwokbGFuZ1snZGVmYXVsdCddID0gJ0RlZmF1bHRzJzsKJGxhbmdbJ2RlbGV0ZSddID0gJ0RlbGV0ZSc7CiRsYW5nWydkZXNjcmlwdGlvbiddID0gJ0Rlc2NyaXB0aW9uJzsKJGxhbmdbJ2Rlc3RuYW1lJ10gPSAnVXBsb2FkIEFzJzsKJGxhbmdbJ2RldGFpbF90ZW1wbGF0ZSddID0gJ0RldGFpbCBUZW1wbGF0ZXMnOwokbGFuZ1snZG93bmxvYWRlZCddID0gJ0ZpbGUgJXMgd2FzIGRvd25sb2FkZWQuJzsKJGxhbmdbJ2Rvd25sb2FkcyddID0gJ0Rvd25sb2Fkcyc7CiRsYW5nWydlZGl0J10gPSAnRWRpdCc7CiRsYW5nWydlZGl0Y2F0ZWdvcnknXSA9ICdFZGl0IENhdGVnb3J5JzsKJGxhbmdbJ2VkaXR1cGxvYWQnXSA9ICdFZGl0IFVwbG9hZCc7CiRsYW5nWydlcnJvciddID0gJ0Vycm9yISc7CiRsYW5nWydlcnJvcl9wYXRoaW51c2UnXSA9ICdBIGNhdGVnb3J5IHVzaW5nIHRoYXQgcGF0aCBhbHJlYWR5IGV4aXN0cyc7CiRsYW5nWydlcnJvcl9jYXRlZ29yeWV4aXN0cyddID0gJ0Vycm9yOiBDYXRlZ29yeSBhbHJlYWR5IGV4aXN0cyc7CiRsYW5nWydlcnJvcl9jYXRlZ29yeW5vdGVtcHR5J10gPSAnRXJyb3IhIENhbm5vdCBkZWxldGUgYSBjYXRlZ29yeSB0aGF0IGlzIG5vdCBlbXB0eSc7CiRsYW5nWydlcnJvcl9jYXRlZ29yeW5vdGZvdW5kJ10gPSAnRXJyb3I6IENhdGVnb3J5IG5vdCBmb3VuZCEnOwokbGFuZ1snZXJyb3JfZGJlcnJvciddID0gJ0Vycm9yOiBEYXRhYmFzZSBlcnJvciEnOwokbGFuZ1snZXJyb3JfZW1wdHljYXRlZ29yeSddID0gJ0Vycm9yOiBFbXB0eSBDYXRlZ29yeSEnOwokbGFuZ1snZXJyb3JfZW1wdHlwYXRoJ10gPSAnRXJyb3I6IEVtcHR5IFBhdGghJzsKJGxhbmdbJ2Vycm9yX2ZpbGVleGlzdHMnXSA9ICdFcnJvciEgRmlsZSAlcyBhbHJlYWR5IGV4aXN0cy4nOwokbGFuZ1snZXJyb3JfZmlsZW5vdGZvdW5kJ10gPSAnRXJyb3IhIEZpbGUgJXMgd2FzIG5vdCBmb3VuZC4nOwokbGFuZ1snZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJ10gPSAnRXJyb3I6IEluc3VmZmljaWVudCBwYXJhbWV0ZXJzIHN1cHBsaWVkIHRvIG1vZHVsZSEnOwokbGFuZ1snZXJyb3JfaW52YWxpZGF1dGhvciddID0gJ0Vycm9yOiBJbnZhbGlkIChvciBlbXB0eSkgYXV0aG9yLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkY2F0ZWdvcnknXSA9ICdFcnJvcjogSW52YWxpZCAob3IgZW1wdHkpIGNhdGVnb3J5Lic7CiRsYW5nWydlcnJvcl9pbnZhbGlkZGVzY3JpcHRpb24nXSA9ICdFcnJvcjogSW52YWxpZCAob3IgZW1wdHkpIGRlc2NyaXB0aW9uLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkZmlsZSddID0gJ0Vycm9yOiBJbnZhbGlkIChvciBlbXB0eSkgZmlsZW5hbWUuJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1cGxvYWRmaWxlbmFtZSddID0gJ0Vycm9yOiBGaWxlcyB3aXRoIHRoYXQgbmFtZSAocHJvYmFibHkgZXh0ZW5zaW9uKSBhcmUgbm90IGFsbG93ZWQgKCVzKS4nOwokbGFuZ1snZXJyb3JfaW52YWxpZHVwbG9hZGlkJ10gPSAnRXJyb3I6IEludmFsaWQgdXBsb2FkIGlkJzsKJGxhbmdbJ2Vycm9yX25vZmlsZXMnXSA9ICdFcnJvcjogTm8gTWF0Y2hpbmcgRmlsZXMhJzsKJGxhbmdbJ2ZpbGVzJ10gPSAnRmlsZXMnOwokbGFuZ1snZml4bWUnXSA9ICdGaXggU3BhY2VzJzsKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ0Zyb250IEVuZCBGaWxlIE1hbmFnZW1lbnQgKFVwbG9hZHMpJzsKJGxhbmdbJ2hlbHAnXSA9ICc8aDM+V2hhdCBEb2VzIFRoaXMgRG8/PC9oMz4NCjxwPkl0IGlzIGEgbW9kdWxlIGZvciBhbGxvd2luZyBwZW9wbGUgdG8gdXBsb2FkIGFuZCBkb3dubG9hZCBmaWxlcyB0byBhbmQgZnJvbSB5b3VyIHNpdGUuICBJdCBrZWVwcyB0cmFjayBvZiB3aG8gdXBsb2FkZWQgYSBmaWxlLCBhbmQgd2hvIGhhcyBkb3dubG9hZGVkIGl0LiAgQXMgd2VsbCwgeW91IGNhbiBzb3J0IGZpbGVzIGludG8gY2F0ZWdvcmllcywgYW5kIG1hbmFnZSB0aGUgZmlsZXMgdGhhdCB3ZXJlIHVwbG9hZGVkIGxpa2UgZXZlcnkgYWRtaW5pc3RyYXRvciB3b3VsZCBkbzwvcD4gDQo8aDM+SG93IERvIEkgVXNlIEl0PC9oMz4NCjxwPjxzdHJvbmc+V2FybmluZzwvc3Ryb25nPiAtIFRoZSBwcm9wZXIgYmVoYXZpb3VyIG9mIHRoaXMgbW9kdWxlIGRlcGVuZHMgb24gbnVtZXJvdXMgcGhwIGNvbmZpZ3VyYXRpb24gdmFyaWFibGVzLiAgVGhlc2UgaW5jbHVkZSA8ZW0+KGJ1dCBhcmUgbm90IGxpbWl0ZWQgdG8pPC9lbT4sIHBocCYjMDM5O3MgbWVtb3J5X2xpbWl0LCBzYWZlX21vZGUsIGZpbGVfdXBsb2FkcywgdXBsb2Fkc19tYXhfZmlsZXNpemUsIGFuZCBtYXhfZXhlY3V0aW9uX3RpbWUuICBUaGVzZSB2YXJpYWJsZXMgbWF5IG5lZWQgYWRqdXN0bWVudCBmb3IgdGhpcyBtb2R1bGUgdG8gd29yayBwcm9wZXJseSBvbiB5b3VyIHNpdGUuICBJdCBpcyBhZHZpc2VkIHRoYXQgeW91IHdvcmsgd2l0aCB5b3VyIHN5c3RlbSBhZG1pbmlzdHJhdG9yIG9yIGhvc3QgcHJvdmlkZXIgdG8gdHVuZSB0aGVzZSBzZXR0aW5ncyBmb3IgeW91ciByZXF1aXJlbWVudHMuPC9wPg0KPHA+VG8gdXNlIHRoaXMgbW9kdWxlLCB0byBhbGxvdyB1c2VycyB0byB1cGxvYWQgZmlsZXMgdG8geW91ciBzaXRlLCB5b3Ugc2hvdWxkIGluc3RhbGwgdGhlIG1vZHVsZSwgYW5kIHRoZW4gY3JlYXRlIG9uZSBvciBtb3JlIGNhdGVnb3JpZXMgKGEuay5hKSBkaXJlY3RvcmllcyBmb3IgdGhlIHVwbG9hZGVkIGZpbGVzIHRvIGdvIGludG8uIFRoZW4gYWRkIGEgdGFnIGludG8gYSBwYWdlIG9yIHRlbXBsYXRlIHNvbWV3aGVyZSBsaWtlIHtjbXNfbW9kdWxlIG1vZHVsZT0mcXVvdDtVcGxvYWRzJnF1b3Q7IGNhdGVnb3J5PSZxdW90O3NvbWVjYXRlZ29yeSZxdW90OyBtb2RlPSZxdW90O3NvbWVtb2RlJnF1b3Q7fS4gIFdoZXJlIG1vZGUgbWF0Y2hlcyBvbmUgb2YgdGhlIG1vZGVzIGxpc3RlZCBiZWxvdy4gIFRoZSBvdXRwdXQgd2lsbCBkaWZmZXIgZGVwZW5kaW5nIHVwb24gd2hpY2ggbW9kZSB5b3Ugc2VsZWN0LjwvcD4NCjxwPlRoaXMgbW9kdWxlIGNhbiB1c2UgdGhlIEZyb250ZW5kVXNlcnMgbW9kdWxlIChvcHRpb25hbCkgdG8gZ2V0IGluZm9ybWF0aW9uIGFib3V0IGFueSBjdXJyZW50bHkgbG9nZ2VkIGluIHVzZXJzIHRvIHBhcnRseSBmaWxsIGluIHRoZSBmb3JtIHdoZW4gdXBsb2FkaW5nIGZpbGVzOzwvcD4NCjxoMz5QZXJtaXNzaW9uczwvaDM+DQo8dWw+DQo8bGk+PGVtPk1hbmFnZSBVcGxvYWRzPC9lbT4gcGVybWlzc2lvbiBpcyBuZWVkZWQgdG8gbWFuYWdlIGNhdGVnb3JpZXMsIGFuZCB0aGUgZmlsZXMgd2l0aGluIHRoZW0uPC9saT4NCjxsaT48ZW0+TW9kaWZ5IFRlbXBsYXRlczwvZW0+IHBlcm1pc3Npb24gaXMgbmVlZGVkIGVkaXQgYW55IG9mIHRoZSB0ZW1wbGF0ZXMuPC9saT4NCjxsaT48ZW0+TW9kaWZ5IFNpdGUgUHJlZmVyZW5jZXM8L2VtPiBwZXJtaXNzaW9uIGlzIG5lZWRlZCBhbnkgb2YgdGhlIGZpbGUgc2V0dGluZ3MuPC9saT4NCjwvdWw+DQo8aDM+RW1haWxpbmc8L2gzPg0KPHA+VGhpcyBtb2R1bGUgaXMgY2FwYWJsZSBvZiBzZW5kaW5nIGFuIGVtYWlsIHdoZW5ldmVyIGEgZmlsZSBpcyB1cGxvYWRlZCwgc2VlIHRoZSBwcmVmZXJlbmNlcyB0YWIuICBIb3dldmVyLCB0byBkbyB0aGlzIHRoZSA8Yj5DTVNNYWlsZXI8L2I+IHBhY2thZ2UgbXVzdCBiZSBpbnN0YWxsZWQgYW5kIGNvbmZpZ3VyZWQuICBUaGlzIGlzIGFuIDxlbT5vcHRpb25hbDwvZW0+IHN0ZXAsIGFuZCBpZiB0aGUgQ01TTWFpbGVyIG1vZHVsZSBpcyBub3QgaW5zdGFsbGVkLCBub3RoaW5nIHdpbGwgYmUgZGlzcGxheWVkIHRvIHRoZSB1c2VyLCBvbmx5IGEgbG9nIG1lc3NhZ2Ugd2lsbCBiZSBwbGFjZWQgaW50byB0aGUgYWRtaW4gbG9nPC9wPg0KPGgzPlN5c3RlbSBTZXR0aW5nczwvaDM+DQo8cD48Yj5Ob3RlOjwvYj4gVGhpcyBtb2R1bGUgZG9lcyBub3QgYnlwYXNzIG9yIGdldCBwYXN0IGFueSBmaWxlIHNpemUgbGltaXRhdGlvbnMgaW4gcGhwLiAgSXQgd29ya3MgaW4gY29uanVuY3Rpb24gd2l0aCB0aGVtLiAgVGhlcmVmb3JlIHlvdSBtYXkgbmVlZCB0byBtb2RpZnkgeW91ciBwaHAuaW5pIGZpbGUgYW5kL29yIHlvdXIgaHR0cGQuY29uZiBmaWxlKHMpIHRvIGFsbG93IHlvdSB0byB1cGxvYWQgZmlsZXMgYXMgbGFyZ2UgYXMgd2hhdCB5b3UgaGF2ZSBzZXQgaW4gdGhlIHVwbG9hZHMgbW9kdWxlIHByZWZlcmVuY2VzLjwvcD4NCjxoMz5BcGFjaGUgTm90ZXM8L2gzPg0KPHA+SW4gb3JkZXIgdG8gYWxsb3cgbGFyZ2UgZmlsZSB1cGxvYWRzLCB5b3UgbWF5IG5lZWQgdG8gbW9kaWZ5IHRoZSB1cGxvYWRfbWF4X2ZpbGVzaXplIHBhcmFtZXRlciBpbiB5b3VyIHBocC5pbmkgIEluIGFkZGl0aW9uLCB0aGUgTGltaXRSZXF1ZXN0Qm9keSBwYXJhbWV0ZXIgaW4geW91ciBhcGFjaGUgY29uZmlndXJhdGlvbiwgbWF5IG5lZWQgdG8gYmUgYWRqdXN0ZWQgdG8gbWF0Y2ggdGhlIHVwbG9hZF9tYXhfZmlsZXNpemUgcGFyYW1ldGVyPC9wPg0KPHA+Tm90ZTogIHRoZSB1cGxvYWRfbWF4X2ZpbGVzaXplIHBhcmFtZXRlciBjYW4gYmUgc3BlY2lmaWVkIGluIGJ5dGVzLCBraWxvYnl0ZXMsIG9yIG1lZ2FieXRlcywgaG93ZXZlciB0aGUgTGltaXRSZXF1ZXRCb2R5IHBhcmFtZXRlciBpcyBvbmx5IHNwZWNpZmllZCBpbiBieXRlczwvcD4NCic7CiRsYW5nWydpZCddID0gJ0lkJzsKJGxhbmdbJ2luc3RhbGxlZCddID0gJ01vZHVsZSB2ZXJzaW9uICVzIGluc3RhbGxlZC4nOwokbGFuZ1snaXBfYWRkcmVzcyddID0gJ0lQIEFkZHJlc3MnOwokbGFuZ1snbW9kZGVzY3JpcHRpb24nXSA9ICdBIG1vZHVsZSB0aGF0IGFsbG93cyB1c2VycyB0byB1cGxvYWQgZmlsZXMsIGFuZCBhbGxvd3MgeW91IHRvIG1hbmFnZSB0aGVtLic7CiRsYW5nWyduYW1lJ10gPSAnTmFtZSc7CiRsYW5nWydyZW5hbWVtZXNzYWdlJ10gPSAnQ2hhbmdlIHRoZSBuYW1lIGhlcmUgdG8gZXhlY3V0ZSBhIHJlbmFtZSc7CiRsYW5nWydwYXRoJ10gPSAnUGF0aCc7CiRsYW5nWydwYXRobWVzc2FnZSddID0gJ0NoYW5nZSB0aGUgY2F0ZWdvcnkgaGVyZSB0byBtb3ZlIHRoZSBmaWxlIHRvIGFub3RoZXIgZGlyZWN0b3J5JzsKJGxhbmdbJ3BhdGhpbnVwbG9hZHMnXSA9ICcoUmVsYXRpdmUgdG8gdGhlIHVwbG9hZHMgZGlyZWN0b3J5KSc7CiRsYW5nWydwb3N0aW5zdGFsbCddID0gJzxwPlRoZSB1cGxvYWRzIG1vZHVsZSBoYXMgYmVlbiBzdWNjZXNzZnVsbHkgaW5zdGFsbGVkLiBCZSBzdXJlIHRvIHNldCAmcXVvdDtNYW5hZ2UgVXBsb2FkcyZxdW90OyBwZXJtaXNzaW9ucyB0byB1c2UgdGhpcyBtb2R1bGUhPC9wPg0KPHA+PHN0cm9uZz5XYXJuaW5nPC9zdHJvbmc+IC0gVGhlIHByb3BlciBiZWhhdmlvdXIgb2YgdGhpcyBtb2R1bGUgZGVwZW5kcyBvbiBudW1lcm91cyBwaHAgY29uZmlndXJhdGlvbiB2YXJpYWJsZXMuICBUaGVzZSBpbmNsdWRlIDxlbT4oYnV0IGFyZSBub3QgbGltaXRlZCB0byk8L2VtPiwgcGhwJiMwMzk7cyBtZW1vcnlfbGltaXQsIHNhZmVfbW9kZSwgZmlsZV91cGxvYWRzLCB1cGxvYWRzX21heF9maWxlc2l6ZSwgYW5kIG1heF9leGVjdXRpb25fdGltZS4gIFRoZXNlIHZhcmlhYmxlcyBtYXkgbmVlZCBhZGp1c3RtZW50IGZvciB0aGlzIG1vZHVsZSB0byB3b3JrIHByb3Blcmx5IG9uIHlvdXIgc2l0ZS4gIEl0IGlzIGFkdmlzZWQgdGhhdCB5b3Ugd29yayB3aXRoIHlvdXIgc3lzdGVtIGFkbWluaXN0cmF0b3Igb3IgaG9zdCBwcm92aWRlciB0byB0dW5lIHRoZXNlIHNldHRpbmdzIGZvciB5b3VyIHJlcXVpcmVtZW50cy48L3A+JzsKJGxhbmdbJ3Bvc3R1bmluc3RhbGwnXSA9ICdUaGUgVXBsb2FkcyBtb2R1bGUgaGFzIGJlZW4gc3VjY2Vzc2Z1bGx5IHJlbW92ZWQuICBObyBmaWxlcyBoYXZlIGJlZW4gcmVtb3ZlZCBmcm9tIHlvdXIgdXBsb2FkcyBkaXJlY3RvcnksIGFuZCBmaWxlIGludGVncml0eSBpcyBpbnRhY3QnOwokbGFuZ1sncHJlZmVyZW5jZXMnXSA9ICdQcmVmZXJlbmNlcyc7CiRsYW5nWydwcmVmc3VwZGF0ZWQnXSA9ICdNb2R1bGUgcHJlZmVyZW5jZXMgdXBkYXRlZC4nOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5ZGVzYyddID0gJ0Rlc2NyaXB0aW9uJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeWxpc3RhYmxlJ10gPSAnRmlsZXMgaW4gdGhpcyBkaXJlY3RvcnkgY2FuIGJlIGxpc3RlZCc7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnluYW1lJ10gPSAnQ2F0ZWdvcnkgTmFtZSc7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnlwYXRoJ10gPSAnU2VydmVyIFBhdGgnOwokbGFuZ1sncHJvbXB0X2RlbGV0ZWRpcmVjdG9yeSddID0gJ0RlbGV0ZSBjYXRlZ29yeSBkaXJlY3Rvcnk/JzsKJGxhbmdbJ3Byb21wdF9tYXhfdXBsb2Fkc2l6ZSddID0gJ01heGltdW0gZmlsZSBzaXplIGFsbG93ZWQgKEtiKSc7CiRsYW5nWydwcm9tcHRfdmFsaWRfdXBsb2FkZXh0ZW5zaW9ucyddID0gJ1ZhbGlkIHVwbG9hZCBleHRlbnNpb25zJzsKJGxhbmdbJ3NjYW4nXSA9ICdTY2FuJzsKJGxhbmdbJ3NlbGVjdGNhdGVnb3J5J10gPSAnU2VsZWN0IENhdGVnb3J5JzsKJGxhbmdbJ3NpemUnXSA9ICdTaXplJzsKJGxhbmdbJ3NpemVrYiddID0gJ1NpemUgKEtiKSc7CiRsYW5nWydzdWJtaXQnXSA9ICdTdWJtaXQnOwokbGFuZ1snc3VtbWFyeV90ZW1wbGF0ZSddID0gJ1N1bW1hcnkgVGVtcGxhdGVzJzsKJGxhbmdbJ3N1bW1hcnknXSA9ICdTdW1tYXJ5JzsKJGxhbmdbJ3RpdGxlX2FkbWluX3BhbmVsJ10gPSAnVXBsb2FkcyBNb2R1bGUnOwokbGFuZ1sndGl0bGVfbW9kX2FkbWluJ10gPSAnTW9kdWxlIEFkbWluIFBhbmVsJzsKJGxhbmdbJ3RpdGxlX21vZF9wcmVmcyddID0gJ01vZHVsZSBQcmVmZXJlbmNlcyc7CiRsYW5nWyd0aXRsZV9zaW5nX2xvdWRseSddID0gJ1NpbmcgTG91ZGx5Pyc7CiRsYW5nWyd0aXRsZV9zdWJuZXRfZXhjbHVzaW9ucyddID0gJ0V4Y2x1ZGUgc3VibmV0cyBmcm9tIHN0YXRpc3RpY3MnOwokbGFuZ1sndGl0bGVfdmFsaWRfdXBsb2FkZXh0ZW5zaW9ucyddID0gJ1ZhbGlkIEV4dGVuc2lvbnMnOwokbGFuZ1sndW5pbnN0YWxsZWQnXSA9ICdNb2R1bGUgVW5pbnN0YWxsZWQuJzsKJGxhbmdbJ3VwZ3JhZGVkJ10gPSAnTW9kdWxlIHVwZ3JhZGVkIHRvIHZlcnNpb24gJXMuJzsKJGxhbmdbJ3VwbG9hZCddID0gJ1VwbG9hZCc7CiRsYW5nWyd1cGxvYWRlZCddID0gJ0ZpbGUgJXMgd2FzIHVwbG9hZGVkIGJ5ICVzLic7CiRsYW5nWydyZXBsYWNlZCddID0gJ0ZpbGUgJXMgd2FzIHJlcGxhY2VkIGJ5ICVzLic7CiRsYW5nWydkZWxldGVkJ10gPSAnRmlsZSAlcyB3YXMgZGVsZXRlZC4nOwokbGFuZ1sndXBsb2FkZm9ybV90ZW1wbGF0ZSddID0gJ1VwbG9hZCBUZW1wbGF0ZXMnOwokbGFuZ1sndXNlcm5hbWUnXSA9ICdVc2VybmFtZSc7CiRsYW5nWyd3YXJuaW5nX2RlbGV0ZWNhdGVnb3J5J10gPSAnV0FSTklORzogVXNlIGNhdXRpb24gd2hlbiBkZWxldGluZyBjYXRlZ29yaWVzLiAgRmlsZXMgbWF5IGJlIGxvc3QnOwokbGFuZ1snd2VsY29tZV90ZXh0J10gPSAnPHA+V2VsY29tZSB0byB0aGUgVXBsb2FkcyBNb2R1bGUgYWRtaW4gc2VjdGlvbi4gU29tZXRoaW5nIGVsc2Ugd291bGQgcHJvYmFibHkgZ28gaGVyZSBpZiB0aGUgbW9kdWxlIGFjdHVhbGx5IGRpZCBzb21ldGhpbmcuPC9wPic7CiRsYW5nWyd1dG16J10gPSAnMTU2ODYxMzUzLjExOTIzNDczMzIuMTYuNS51dG1jY249KHJlZmVycmFsKXx1dG1jc3I9YWJhLmx0fHV0bWNjdD0vYWRtaW4vbGlzdG1vZHVsZXMucGhwfHV0bWNtZD1yZWZlcnJhbCc7CiRsYW5nWyd1dG1hJ10gPSAnMTU2ODYxMzUzLjE4NDk2MzgxMTUuMTE4NjkzOTA5Ny4xMTkyOTY2MzcwLjExOTI5NzMxNjMuMjAnOwokbGFuZ1sndXRtYyddID0gJzE1Njg2MTM1Myc7Cj8+]]></data>
	</file>
	<file>
	  <filename>/lang/ext/nb_NO.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2ZpcnN0cGFnZSddID0gJ0Ymb3NsYXNoO3JzdGUgc2lkZSc7CiRsYW5nWydwcmV2cGFnZSddID0gJ0ZvcnJpZ2Ugc2lkZSc7CiRsYW5nWyduZXh0cGFnZSddID0gJ05lc3RlIHNpZGUnOwokbGFuZ1snbGFzdHBhZ2UnXSA9ICdTaXN0ZSBzaWRlJzsKJGxhbmdbJ2ZpcnN0cGFnZV9hcnJvdyddID0gJzw8ICc7CiRsYW5nWydwcmV2cGFnZV9hcnJvdyddID0gJzwgJzsKJGxhbmdbJ25leHRwYWdlX2Fycm93J10gPSAnID4nOwokbGFuZ1snbGFzdHBhZ2VfYXJyb3cnXSA9ICcgPj4nOwokbGFuZ1sncGFnZSddID0gJ1NpZGUnOwokbGFuZ1snb2YnXSA9ICdhdic7CiRsYW5nWydwcm9tcHRfZ3JvdXBsaXN0J10gPSAnQXV0b3Jpc2VydGUgRkVVIEdydXBwZXInOwokbGFuZ1snaW5mb19ncm91cGxpc3QnXSA9ICdWZWxnIGRlIEZFVSBncnVwcGVuZSBzb20gZ2lzIHRpbGdhbmcgdGlsIGZpbGVyIGkgZGVubmUga2F0ZWdvcmllbi4gVmVsZyBib3J0IGFsbGUgdmFsZyBmb3IgJmFyaW5nOyBnaSBhbGxlIHRpbGdhbmcnOwokbGFuZ1sndGl0bGVfc2NhbiddID0gJ1NrYW5uIGV0dGVyIG55ZSBmaWxlciBpIGRlbm5lIGthdGVnb3JpJzsKJGxhbmdbJ3RpdGxlX2NyZWF0ZV90aHVtYm5haWxzJ10gPSAnT3BwcmV0dCBtYW5nbGVuZGUgdGh1bWJuYWlscyBmb3IgZmlsZXIgaSBkZW5uZSBrYXRhZ29yaWVuLic7CiRsYW5nWydjcmVhdGVfdGh1bWJuYWlscyddID0gJ09wcHJldHQgdGh1bWJuYWlscyc7CiRsYW5nWyd0aXRsZV9jcmVhdGVfdGh1bWJuYWlsJ10gPSAnKGlnamVuKU9wcHJldHQgdGh1bWJuYWlsIGZvciBkZW5uZSBmaWxlbic7CiRsYW5nWydjcmVhdGVfdGh1bWJuYWlsJ10gPSAnT3BwcmV0dCB0aHVtYm5haWwnOwokbGFuZ1snZXJyb3JfcGF0aGVycm9yJ10gPSAnS3VubmUgaWtrZSAmYXJpbmc7cG5lIGthdGFsb2dlbiAocmV0dGlnaGV0c3Byb2JsZW0/KSc7CiRsYW5nWyd0aXRsZV9kb3dubG9hZF9jaHVua3NpemUnXSA9ICdTdCZvc2xhc2g7cnJlbHNlIHAmYXJpbmc7IGh2ZXIgb3BwbGFzdGluZ3MtYm9sayc7CiRsYW5nWydpbmZvX2Rvd25sb2FkX2NodW5rc2l6ZSddID0gJyZBcmluZzsganVzdGVyZSBkZW5uZSBwYXJhbWV0ZXIgdmlsIHZpcmtlIGlubiBwJmFyaW5nOyBuZWRsYXN0aW5nc2hhc3RpZ2hldGVuIG9nIGthbiBoamVscGUgaSBsYXYtbWlubmUgb21naXZlbHNlci4nOwokbGFuZ1snd2FybmluZ19zYWZlX21vZGUnXSA9ICdQSFAmIzAzOTtzIHNhZmUgbW9kZSBlciBzbCZhcmluZzt0dCBwJmFyaW5nOy4gRGV0dGUga2FuIG1lZGYmb3NsYXNoO3JlIHByb2JsZW1lciBtZWQgb3BwbGFzdGluZyBhdiBmaWxlciAodGlsbGF0ZWxzZXIpLCBvZyBrYW4gb2dzJmFyaW5nOyBpbm52aXJrZSBwJmFyaW5nOyBkZW5uZSBtb2R1bGVucyBtdWxpZ2hldCB0aWwgJmFyaW5nOyBzZW5kZSBmaWxlciBkYSBkZW4gaWtrZSBoYXIgbXVsaWdoZXQgdGlsICZhcmluZzsgb3ZlcnNrcml2ZSB2aXNzZSBpbmkgaW5uc3RpbGxpbmdlci4gRHUgciZhcmluZztkZXMgdGlsICZhcmluZzsga29udGFrdGUgZGluIHRpbGJ5ZGVyIGZvciAmYXJpbmc7IHNlIG9tIHNhZmUgbW9kZSBrYW4gc2wmYXJpbmc7cyBhdi4nOwokbGFuZ1sncGFyYW1fZGV0YWlscGFnZSddID0gJ055dHRpZyBmb3IgdmlzbmluZyBhdiBkZXRhbGpyYXBwb3J0IHZlZCAmYXJpbmc7IGJlbnl0dGUgZW4gYW5uZW4gc2lkZW1hbC4gRGVubmUgcGFyYW1ldGVyZW4gdGFyIHNpZGUgaWQgZWxsZXIgc2lkZSBhbGlhcyBmb3IgZW4gc2lkZSBzb20gc2thbCBiZW55dHRlcyBmb3IgJmFyaW5nOyB2aXNlIGRldGFsanJhcHBvcnRlbic7CiRsYW5nWydwYXJhbV9wcmVmaXgnXSA9ICdFbiBib29sZWFuIHNvbSBpbmRpa2VyZXIgb20gZmlsbmF2biBza2FsIGhhIGZpbGZvcnN0YXZlbHNlIChwcmVmaXgpJzsKJGxhbmdbJ3BhcmFtX3ByZWZpeF9mZXUnXSA9ICdFbiBib29sZWFuc2sgcGFyYW1ldGVyIHNvbSBpbmRpa2VyZXIgYXQgZmlsLWZvcnN0YXZlbHNlbiBza2FsIG9wcGdpcyBhdiBuJmFyaW5nO3YmYWVsaWc7cmVuZGUgb3BwaGF2c21hbm4sIG9tIGlra2Ugc3Blc2lmaXNlcnQsIHMmYXJpbmc7IGVyIGZpbC1mb3JzdGF2ZWxzZW4gbiZhcmluZzt2JmFlbGlnO3JlbmRlIHRpZCAoaSBkZWNoZXggZm9ybWF0KSc7CiRsYW5nWydwYXJhbV9ub2NhcHRjaGEnXSA9ICdTbCZhcmluZzsgYXYgQ2FwdGNoYSBzdCZvc2xhc2g7dHRlIChlciBwJmFyaW5nOyBzb20gc3RhbmRhcmQpIGkgb3BwbGFzdGluZyBza2plbWFldCc7CiRsYW5nWyd0aXRsZV91cGxvYWRmb3JtX3RlbXBsYXRlJ10gPSAnUmVkaWdlciBPcHBsYXN0aW5nIFNramVtYW1hbCc7CiRsYW5nWydjYXB0Y2hhX3RpdGxlJ10gPSAnU2tyaXYgaW5uIHRla3N0ZW4gc29tIHZpc2VzIGkgZGV0dGUgYmlsZGV0JzsKJGxhbmdbJ2Vycm9yX2NhcHRjaGFtaXNtYXRjaCddID0gJ1Rla3N0ZW4gZnJhIGJpbGRldCBibGUgaWtrZSBza3JldmV0IHJpa3RpZyc7CiRsYW5nWyd0aXRsZV9hdXRvdGh1bWJuYWlsX2V4dGVuc2lvbnMnXSA9ICdPcHByZXR0IG1pbmlhdHlyYmlsZGVyIGZvciBmaWxlciBzb20gaGFyIGRpc3NlIGZpbGVuZGVsc2VuZSc7CiRsYW5nWyd0aXRsZV9hdXRvdGh1bWJuYWlsX3NpemUnXSA9ICdNYWtzaW11bSBzdCZvc2xhc2g7cnJlbHNlIChwaXhlbHMpIHAmYXJpbmc7IGdlbmVyZXJ0IG1pbmlhdHlyYmlsZGUnOwokbGFuZ1sncHJvbXB0X3VwbG9hZF9pY29uJ10gPSAnTGFzdCBvcHAgZXQgSWtvbic7CiRsYW5nWydpbmZvX3N5c2RlZmF1bHQnXSA9ICdEZW5uZSB0ZWtzdGVuIGJsaXIgYnJ1a3QgbiZhcmluZztyIGVuIG55IG1hbCBhdiBkZW5uZSB0eXBlIG9wcHJldHRlcyc7CiRsYW5nWyd0aXRsZV9kZXRhaWxycHRfc3lzZGVmYXVsdCddID0gJ1N5c3RlbSBzdGFuZGFyZCBEZXRhbGogUmFwcG9ydCBtYWwnOwokbGFuZ1sndGl0bGVfc3VtbWFyeXJwdF9zeXNkZWZhdWx0J10gPSAnU3lzdGVtIHN0YW5kYXJkIFNhbW1lbmRyYWcgUmFwcG9ydCBtYWwnOwokbGFuZ1sndGl0bGVfdXBsb2FkZm9ybV9zeXNkZWZhdWx0J10gPSAnU3lzdGVtIHN0YW5kYXJkIFVwbG9hZCBTa2plbWEgbWFsJzsKJGxhbmdbJ3RlbXBsYXRlJ10gPSAnTWFsJzsKJGxhbmdbJ3Jlc2V0dG9kZWZhdWx0J10gPSAnU2V0dCB0aWwgU3RhbmRhcmQnOwokbGFuZ1sndGl0bGVfc3VtbWFyeXJwdF90ZW1wbGF0ZSddID0gJ1NhbW1lbmRyYWcgUmFwcG9ydCBtYWwnOwokbGFuZ1sndGl0bGVfZGV0YWlscnB0X3RlbXBsYXRlJ10gPSAnRGV0YWxqIFJhcHBvcnQgbWFsJzsKJGxhbmdbJ3Byb21wdF9uYW1lJ10gPSAnTmF2bic7CiRsYW5nWydwcm9tcHRfZGVmYXVsdCddID0gJ1N0YW5kYXJkJzsKJGxhbmdbJ2xlZ2VuZF91cGxvYWRmb3JtJ10gPSAnTGFzdCBvcHAgZW4gZmlsJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdwYXJhbSddID0gJ0VuIG4mb3NsYXNoO2R2ZW5kaWcgcGFyYW1ldGVyIG1hbmdsZXInOwokbGFuZ1snZXJyb3JfbWlzc2luZ25hbWUnXSA9ICdFdCBuYXZuIHAmYXJpbmc7IGZpbHR5cGVuIG0mYXJpbmc7IHNwZXNpZmlzZXJlcyc7CiRsYW5nWydlcnJvcl9taXNzaW5nZXh0ZW5zaW9ucyddID0gJ01pbnN0IGVuIGZpbGVuZGVsc2UgbSZhcmluZzsgc3Blc2lmaXNlcmVzJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdpY29uJ10gPSAnRXQgaWtvbiBtJmFyaW5nOyBzcGVzaWZpc2VyZXMnOwokbGFuZ1snZXJyb3Jfbm9zdWNocm93J10gPSAnRGVuIHNwZXNpZmlzZXJ0ZSByYWRlbiBibGUgaWtrZSBmdW5uZXQnOwokbGFuZ1snbmFtZV91bmtub3duJ10gPSAnVWtqZW50JzsKJGxhbmdbJ2Rlc2NyaXB0aW9uX3Vua25vd24nXSA9ICdCZXNrcml2ZWxzZSBmb3IgdWtqZW50ZSBmaWx0eXBlcic7CiRsYW5nWydpbWFnZSddID0gJ0JpbGRlJzsKJGxhbmdbJ2ljb24nXSA9ICdJa29uJzsKJGxhbmdbJ2V4dGVuc2lvbnMnXSA9ICdGaWxlbmRlbHNlcic7CiRsYW5nWydhZGRmaWxldHlwZSddID0gJ0xlZ2cgdGlsIG55IGZpbHR5cGUnOwokbGFuZ1snZmlsZV90eXBlcyddID0gJ0ZpbHR5cGVyJzsKJGxhbmdbJ2Vycm9yX25vY2F0ZWdvcnlpZCddID0gJ0luZ2VuIGthdGVnb3JpIGlkIGJsZSBvcHBnaXR0JzsKJGxhbmdbJ2Vycm9yX25vY2F0ZWdvcnknXSA9ICdJbmdlbiBrYXRlZ29yaSBpZCBibGUgb3BwZ2l0dCc7CiRsYW5nWydlcnJvcl90ZW1wbGF0ZW5hbWVleGlzdHMnXSA9ICdFbiBtYWwgbWVkIGRldCBuYXZuZXQgZWtzaXN0ZXJlciBhbGxlcmVkZSc7CiRsYW5nWydwcm9tcHRfdGVtcGxhdGVuYW1lJ10gPSAnTWFsbmF2bic7CiRsYW5nWydwcm9tcHRfdGVtcGxhdGUnXSA9ICdNYWwnOwokbGFuZ1sncHJvbXB0X25ld3RlbXBsYXRlJ10gPSAnTGFnIGVuIG55IG1hbCc7CiRsYW5nWydoZWxwX09uRG93bmxvYWQnXSA9ICc8cD5FbiBoZW5kZWxzZSBnZW5lcmVydCBuJmFyaW5nO3IgZW4gYnJ1a2VyIGF2c2x1dHRlciBuZWRsYXN0aW5nIGF2IGVuIGZpbDwvcD4NCjxoND5QYXJhbWV0ZXJlPC9oND4NCjx1bD4NCjxsaT48ZW0+aWQ8L2VtPiAtIExhc3Qtb3BwIElEPC9saT4NCjxsaT48ZW0+bmF2bjwvZW0+IC0gRmlsbmF2bjwvbGk+DQo8bGk+PGVtPmlwPC9lbT4gLSBJUCBBZHJlc3NlbiB0aWwgZGVuIHNvbSBsYXN0ZXQgbmVkPC9saT4NCjwvdWw+DQonOwokbGFuZ1snaGVscF9PbkRlbGV0ZUNhdGVnb3J5J10gPSAnPHA+RW4gaGVuZGVsc2UgZ2VuZXJlcnQgbiZhcmluZztyIGVuIGthdGVnb3JpIGVyIHNsZXR0ZXQ8L3A+DQo8aDQ+UGFyYW1ldGVyZTwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hdm48L2VtPiAtIEthdGVnb3JpIG5hdm48L2xpPg0KPGxpPjxlbT5zdGk8L2VtPiAtIEthdGVnb3JpIHN0aTwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2hlbHBfT25DcmVhdGVDYXRlZ29yeSddID0gJzxwPkVuIGhlbmRlbHNlIGdlbmVyZXJ0IG4mYXJpbmc7ciBlbiBrYXRlZ29yaSBlciBvcHByZXR0ZXQ8L3A+DQo8aDQ+UGFyYW1ldGVyZTwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hdm48L2VtPiAtIE5hdm5ldCBwJmFyaW5nOyBrYXRlZ29yaWVuPC9saT4NCjxsaT48ZW0+YmVza3JpdmVsc2U8L2VtPiAtIEthdGVnb3JpIGJlc2tyaXZlbHNlbjwvbGk+DQo8bGk+PGVtPnN0aTwvZW0+IC0gS2F0ZWdvcmkgc3RpZW48L2xpPg0KPGxpPjxlbT5zdGk8L2VtPiAtIEV0IGZsYWdnIHNvbSBpbmRpa2VyZXIgb20ga2F0ZWdvcmllbiBlciB1dGxpc3RiYXI8L2xpPg0KPC91bD4NCic7CiRsYW5nWydoZWxwX09uUmVtb3ZlJ10gPSAnPHA+RW4gaGVuZGVsc2UgZ2VuZXJlcnQgbiZhcmluZztyIGVuIGZpbCBlciBmamVybmV0IHZpYSBBZG1pbiBlbGxlciBGcm9udGVuZCBncmVuc2Vzbml0dGVuZTwvcD4NCjxoND5QYXJhbWV0ZXJlPC9oND4NCjx1bD4NCjxsaT48ZW0+bmF2bjwvZW0+IC0gTmF2bmV0IHAmYXJpbmc7IGRlbiBmamVybmVkZSBmaWxhPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIElEJiMwMzk7ZW4gcCZhcmluZzsgZGVuIGZqZXJuZWRlIGZpbGE8L2xpPg0KPGxpPjxlbT5rYXRlZ29yaV9pZDwvZW0+IC0gSUQmIzAzOTtlbiBwJmFyaW5nOyBrYXRlZ29yaWVuPC9saT4NCjwvdWw+DQonOwokbGFuZ1snaGVscF9PblVwbG9hZCddID0gJzxwPkVuIGhlbmRlbHNlIGdlbmVyZXJ0IG4mYXJpbmc7ciBlbiBueSBmaWwgZXIgbGFzdGV0IG9wcCB2aWEgYWRtaW4gZWxsZXIgZnJvbnRlbmQgZ3JlbnNlc25pdHRldDwvcD4NCjxoND5QYXJhbWV0ZXJlPC9oND4NCjx1bD4NCjxsaT48ZW0+a2F0ZWdvcmk8L2VtPiAtIEthdGVnb3JpIG5hdm5ldDwvbGk+DQo8bGk+PGVtPm5hdm48L2VtPiAtIE5hdm5ldCBwJmFyaW5nOyBkZW4gb3BwbGFzdGVkZSBmaWxhPC9saT4NCjxsaT48ZW0+c3Qmb3NsYXNoO3JyZWxzZTwvZW0+IC0gU3Qmb3NsYXNoO3JyZWxzZW4gcCZhcmluZzsgZGVuIG9wcGxhc3RlZGUgZmlsYTwvbGk+DQo8bGk+PGVtPnNhbW1lbmRyYWc8L2VtPiAtIERlbiBrb3J0ZSBiZXNrcml2ZWxzZW4gZm9yIGRlbiBvcHBsYXN0ZWRlIGZpbGEgKGthbiB2JmFlbGlnO3JlIGJsYW5rKTwvZW0+PC9saT4NCjxsaT48ZW0+YmVza3JpdmVsc2U8L2VtPiAtIERlbiBmdWxsZSBiZXNrcml2ZWxzZW4gZm9yIGRlbiBvcHBsYXN0ZWRlIGZpbGEgKGthbiB2JmFlbGlnO3JlIGJsYW5rKTwvZW0+PC9saT4NCjxsaT48ZW0+b3BwaGF2c21hbm48L2VtPiAtIE9wcGhhdnNtYW5uZW4gZm9yIGRlbiBvcHBsYXN0ZWRlIGZpbGEgKGlmIGF2YWlsYWJsZSk8L2VtPjwvbGk+DQo8bGk+PGVtPmlwX2FkcmVzc2U8L2VtPiAtIEludGVybmV0dCBhZHJlc3NlbiBmb3Iga2xpZW50ZW4gc29tIGxhc3RldCBvcHAgZmlsYTwvbGk+DQo8L3VsPic7CiRsYW5nWydpbmZvX2V2ZW50X29uZGVsZXRlY2F0ZWdvcnknXSA9ICdIZW5kZWxzZSBnZW5lcmVydCBuJmFyaW5nO3IgZW4ga2F0ZWdvcmkgZXIgc2xldHRldCc7CiRsYW5nWydpbmZvX2V2ZW50X29uY3JlYXRlY2F0ZWdvcnknXSA9ICdIZW5kZWxzZSBnZW5lcmVydCBuJmFyaW5nO3IgZW4ga2F0ZWdvcmkgZXIgbGFnZXQnOwokbGFuZ1snaW5mb19ldmVudF9vbmRvd25sb2FkJ10gPSAnSGVuZGVsc2UgZ2VuZXJlcnQgbiZhcmluZztyIGVuIGZpbCBlciBsYXN0ZXQgbmVkJzsKJGxhbmdbJ2luZm9fZXZlbnRfb251cGxvYWQnXSA9ICdIZW5kZWxzZSBnZW5lcmVydCBuJmFyaW5nO3IgZW4gbnkgZmlsIGVyIGxhc3RldCBvcHAnOwokbGFuZ1snaW5mb19ldmVudF9vbnJlbW92ZSddID0gJ0hlbmRlbHNlIGdlbmVyZXJ0IG4mYXJpbmc7ciBlbiBmaWwgZXIgZmplcm5ldCc7CiRsYW5nWyd0aXRsZV91c2VydGFnX29udXBsb2FkJ10gPSAnQnJ1a2VyIGRlZmluZXJ0IHRhZ2cgJmFyaW5nOyBraiZvc2xhc2g7cmUgZXR0ZXIgb3BwbGFzdGluZyBlciBmZXJkaWcnOwokbGFuZ1snbm9uZSddID0gJ0luZ2VuJzsKJGxhbmdbJ21hdGNoZXNmb3VuZCddID0gJ1RyZWZmIGZ1bm5ldCc7CiRsYW5nWydmaWx0ZXInXSA9ICdGaWx0ZXIgJzsKJGxhbmdbJ3RpdGxlX3JlZGlyZWN0b251cGxvYWQnXSA9ICdWaWRlcmVzZW5kIHRpbCBzaWRlIGlkL2FsaWFzIHZlZCBicnVrZXJzIG9wcGxhc3RpbmcnOwokbGFuZ1snZGV0YWlscyddID0gJ0RldGFsamVyJzsKJGxhbmdbJ2NvbmZpcm1fcHJlZmVyZW5jZXMnXSA9ICdFciBkdSBzaWtrZXIgcCZhcmluZzsgZHUgdmlsIGVuZHJlIGlubnN0aWxsaW5nZW5lJzsKJGxhbmdbJ2Vycm9yX25vZmlsZXN1cGxvYWRlZCddID0gJ0luZ2VuIGZpbGVyIGJsZSBsYXN0ZXQgb3BwLic7CiRsYW5nWydwcm9tcHRfcmVwbGFjZSddID0gJ1RpbGxhdCBvdmVyc2tyaXZpbmcnOwokbGFuZ1snaW5mb19yZXBsYWNlJ10gPSAnRXJzdGF0dCBlbmh2ZXIgZmlsIG1lZCBzYW1tZSBuYXZuIChlbmRyZXIgaWtrZSBpZCYjMDM5O2VuKSc7CiRsYW5nWydwYXJhbV9ub19pbml0aWFsJ10gPSAnSWtrZSB2aXMgbm9lbiBpbm5sZWRlbmRlIHJlc3VsdGF0ZXIgbiZhcmluZztyIGZpbHRlcmV0IGVyIHAmYXJpbmc7JzsKJGxhbmdbJ3BhcmFtX2tleSddID0gJ1RpbGYmb3NsYXNoO3kgZW4gZWtzdHJhIG4mb3NsYXNoO2trZWwgdGlsIG1vZHVsZW4gZm9yIGVuZGEgYmVkcmUgb3JnYW5pc2VyaW5nIGF2IG9wcGxhc3Rpbmdlci4gIERlbm5lIG4mb3NsYXNoO2trZWwga2FuIHYmYWVsaWc7cmUgZW4ga29kZXQgc3RyZW5nIHNvbTogJiMwMzk7ZmV1c2Vyczp1aWQmIzAzOTssIG9zdi4gIERlbm5lIHBhcmFtZXRlciBlciB2YW5saWd2aXMga3VuIG4mb3NsYXNoO2R2ZW5kaWcgbiZhcmluZztyIGR1IGlubmVzbHV0dGVyIHVwbG9hZHMgbW9kdWxlbiBpIGVuIGFubmVuIG1vZHVsJzsKJGxhbmdbJ3BhcmFtX25vYXV0aG9yJ10gPSAnR2plbSBvcHBoYXZzbWFubihhdXRob3IpIGZlbHRldCBmcmEgb3BwbGFzdGluZyBza2plbWFldC4gRGVubmUgcGFyYW1ldGVyIGVyIGt1biB2aXJrc29tIG9tIG1vZGU9JiMwMzk7dXBsb2FkJiMwMzk7LiBPbSBGcm9udGVuZFVzZXJzIG1vZHVsZW4gZXIgdGlsc3RlZGUsIG9nIGVuIGJydWtlciBlciBpbm5sb2dnZXQsIHZpbCBldCBza2p1bHQgZmVsdCBpbm5laG9sZGUgYnJ1a2VybmF2bmV0IGZvciBuJmFyaW5nO3YmYWVsaWc7cmVuZGUgaW5ubG9nZ2VkZSBicnVrZXInOwokbGFuZ1sncGFyYW1fdXBsb2FkX2lkJ10gPSAndXBsb2FkX2lkPSZxdW90O2lkJnF1b3Q7IC0gc3Blc2lmaXNlcmVyIGVuIGVua2VsdCBmaWwgZm9yIHVybCYjMDM5O2VuL2xpbmtlbiBlbGxlciBlbmtlbC1tb2R1cyAob3ZlcmZvciknOwokbGFuZ1sncGFyYW1fZGV0YWlsdGVtcGxhdGUnXSA9ICdCcnVrIGVuIG1hbCBtZWQgZGV0dGUgbmF2bmV0IGZvciBkZW4gZGV0YWxqZXJ0ZSByYXBwb3J0ZW4uJzsKJGxhbmdbJ3BhcmFtX3RlbXBsYXRlJ10gPSAnQnJ1ayBlbiBtYWwgbWVkIGRldHRlIG5hdm4gZm9yIGRlbm5lIHJhcHBvcnQgZWxsZXIgc2tqZW1hLiBNb2R1c2VuIGVyIGJydWt0IGZvciAmYXJpbmc7IGF2Z2omb3NsYXNoO3JlIGh2YSBzbGFncyBtYWwgc29tIGVyIGtyZXZkLCBvZyBzJmFyaW5nOyB1dGYmb3NsYXNoO3JlcyBlbiBrb2JsaW5nL3NqZWtrIGF2IG5hdm5ldCBtb3QgZGVubmUgdHlwZSBtYWwuJzsKJGxhbmdbJ3BhcmFtX2ZpbHRlciddID0gJ1ZpcyBmaWx0ZXJza2plbWFldCc7CiRsYW5nWydwYXJhbV9ub19pbnRpdGlhbCddID0gJ0t1biBicnVrZWxpZyBuJmFyaW5nO3IgZmlsdGVyIHBhcmFtZXRlciBlciBnaXR0LCBlbGxlciBwJmFyaW5nOyBzb20gc3RhbmRhcmQsIGRlbm5lIHBhcmFtZXRlciBpbmRpa2VyZXIgb20gaW5ubGVkZW5kZSByZXN1bHRhdGVyIHNrYWwgdmlzZXMnOwokbGFuZ1sncGFyYW1fZmlsZXR5cGVzJ10gPSAnVmlzIGt1biBmaWxlciBzb20gc2Ftc3ZhcmVyIG1lZCBkZW5uZSBrb21tYXNlcGFyZXJ0ZSBsaXN0ZW4nOwokbGFuZ1sncGFyYW1fc29ydG9yZGVyJ10gPSAnICA8cD5Tb3J0ZXJpbmdzcmVra2VmJm9zbGFzaDtsZ2VyDQogIDx1bD4NCiAgPGxpPjxlbT5kYXRlX2FzYzwvZW0+IC0gU29ydGVyIGRhdG8gc3RpZ2VuZGU8L2xpPg0KICA8bGk+PGVtPmRhdGVfZGVzYzwvZW0+IC0gU29ydGVyIGRhdG8gc3lua2VuZGU8L2xpPg0KICA8bGk+PGVtPm5hbWVfYXNjPC9lbT4gLSBTb3J0ZXIgbmF2biBzdGlnZW5kZTwvbGk+DQogIDxsaT48ZW0+bmFtZV9kZXNjPC9lbT4gLSBTb3J0ZXIgbmF2biBzeW5rZW5kZTwvbGk+DQogIDxsaT48ZW0+c2l6ZV9hc2M8L2VtPiAtIFNvcnRlciBzdCZvc2xhc2g7cnJlbHNlIHN0aWdlbmRlPC9saT4NCiAgPGxpPjxlbT5zaXplX2Rlc2M8L2VtPiAtIFNvcnRlciBzdCZvc2xhc2g7cnJlbHNlIHN5bmtlbmRlPC9saT4NCiAgPGxpPjxlbT5kZXNjX2FzYzwvZW0+IC0gU29ydGVyIGJlc2tyaXZlbHNlIHN0aWdlbmRlPC9saT4NCiAgPGxpPjxlbT5kZXNjX2Rlc2M8L2VtPiAtIFNvcnRlciBiZXNrcml2ZWxzZSBzeW5rZW5kZTwvbGk+DQogIDxsaT48ZW0+YXV0aG9yX2FzYzwvZW0+IC0gU29ydGVyIG9wcGhhdnNtYW5uL2F1dGhvciBzdGlnZW5kZTwvbGk+DQogIDxsaT48ZW0+YXV0aG9yX2Rlc2M8L2VtPiAtIFNvcnRlciBvcHBoYXZzbWFubi9hdXRob3Igc3lua2VuZGU8L2xpPg0KICA8bGk+PGVtPmlwX2FzYzwvZW0+IC0gU29ydGVyIGlwLWFkcmVzc2Ugc3RpZ2VuZGU8L2xpPg0KICA8bGk+PGVtPmlwX2Rlc2M8L2VtPiAtIFNvcnRlciBpcC1hZHJlc3NlIHN5bmtlbmRlPC9saT4NCiAgPGxpPjxlbT5yYW5kb208L2VtPiAtIFRpbGZlbGRpZyBzb3J0ZXJpbmc8L2xpPg0KICA8L3VsPg0KICA8L3A+JzsKJGxhbmdbJ3BhcmFtX2xpc3Rpbmd0ZW1wbGF0ZSddID0gJ01hbCAmYXJpbmc7IGJlbnl0dGUgZm9yIGthdGVnb3JpbGlzdGluZyBldHRlciBtYW4gaGFyIGtsaWtrZXQgc2VnIGlubiBmcmEgZW4gS2F0ZWdvcmkgc2FtbWVuZHJhZ3NpZGUnOwokbGFuZ1sncGFyYW1fbGlzdGluZ3NvcnRvcmRlciddID0gJ1NvcnRlcmluZ3NyZWtrZWYmb3NsYXNoO2xnZSAoc29tIHBhcmFtX3NvcnRvcmRlcikgJmFyaW5nOyBiZW55dHRlIGZvciBrYXRlZ29yaWxpc3RlciBldHRlciBlbiBoYXIga2xpa2tldCBzZWcgaW5uIGZyYSBlbiBLYXRlZ29yaSBzYW1tZW5kcmFnc2xpc3RlJzsKJGxhbmdbJ3BhcmFtX2ZpbGVleHRlbnNpb25zJ10gPSAnIA0KZmlsZV9leHRlbnNpb25zPSZxdW90O2V4dDEsZXh0MixleHQzJnF1b3Q7DQo8cD5neWxkaWcga3VuIG9tIG1vZGU9dXBsb2FkLCBkZW5uZSBwYXJhbWV0ZXJlbiBiZWdyZW5zZXIgZmlsdHlwZW5lIHNvbSBrYW4gbGFzdGVzIG9wcC4gIE92ZXJzdHlyZXIgZW5odmVyIHZlcmRpIGkgbW9kdWwgaW5uc3RpbGxpbmdlbmUuPC9wPic7CiRsYW5nWydwYXJhbV9jb3VudCddID0gJ2NvdW50PSZxdW90O04mcXVvdDsNCjxwPkVuIHBhcmFtZXRlciBmb3IgJmFyaW5nOyBsaXN0ZSB1dCBrdW4gZGUgZiZvc2xhc2g7cnN0ZSBOIHN2YXIgZnJhIHNwJm9zbGFzaDtycmluZ2VuLiAgU2lkZWZvcm1hdGVyaW5nIHZpbGxlIHYmYWVsaWc7cmUgYmVkcmUsIG1lbiBkZXR0ZSBmJmFyaW5nO3IgaG9sZGUgbiZhcmluZzs8L3A+JzsKJGxhbmdbJ3BhcmFtX2NhdGVnb3J5J10gPSAnY2F0ZWdvcnk9JnF1b3Q7bmFtZSZxdW90Ow0KPHA+PGI+Tm90YXQ6PC9iPiBLYXRlZ29yaSBrYW4gdiZhZWxpZztyZSAmcXVvdDthbGwmcXVvdDssIHNvbSB2aWwgbGlzdGUgdXQgYWxsZSBvcHBsYXN0aW5nZXIgZnJhIGFsbGUgPGVtPmxpc3RhYmxlPC9lbT4ga2F0ZWdvcmllcjwvcD4nOwokbGFuZ1sncGFyYW1fbW9kZSddID0gJyAgPHVsPg0KICA8bGk+PGVtPmRldGFpbGVkPC9lbT4gLSBWaXMgZW4gZGV0YWxqZXJ0IGxpc3RlIG92ZXIgYWxsZSBmaWxlciBpIGthdGVnb3JpZW48L2xpPg0KICA8bGk+PGVtPnVwbG9hZDwvZW0+IC0gVmlzZXIgZXQgc2tqZW1hIHNvbSB0aWxsYXRlciBlbiBmcm9udGVuZCBicnVrZXIgJmFyaW5nOyBsYXN0ZSBvcHAgZW4gZmlsPC9saT4NCiAgPGxpPjxlbT51cmwgPGk+ZWxsZXI8L2k+IGxpbms8L2VtPiAtIFZpc2VyIGVuIGxpbmsgdGlsIGVuIGZpbDwvbGk+DQogIDxsaT48ZW0+c3VtbWFyeTwvZW0+IC0gVmlzZXIgZW4gc3VtbWVydCBsaXN0ZSBvdmVyIGFsbGUgZmlsZXIgaSBrYXRlZ29yaWVuPC9saT4NCiAgPGxpPjxlbT5zaW5nbGU8L2VtPiAtIFZpc2VyIGVuIGRldGFsamVydCByYXBwb3J0IG9tIGVuIGVua2VsdCBvcHBsYXN0aW5nPC9saT4NCiAgPC91bD4nOwokbGFuZ1sncGFyYW1fc2VsZWN0Zm9ybSddID0gJ04mYXJpbmc7ciBlbiBiZW55dHRlciAmIzAzOTtzZWxlY3QmIzAzOTstbW9kZSBlciBkZW5uZSBwYXJhbWV0ZXJlbiBzZWx2ZSBmb3JtaWQgYXYgZm9yZWxkcmUgc2tqZW1hZXQuIEJlbnl0dGVzIGZvciAmYXJpbmc7IGgmYXJpbmc7bmR0ZXJlIHBhcmFtZXRlciBoJmFyaW5nO25kdGVyaW5nJzsKJGxhbmdbJ3BhcmFtX3NlbGVjdG5hbWUnXSA9ICduJmFyaW5nO3IgZW4gYmVueXR0ZXIgJiMwMzk7c2VsZWN0JiMwMzk7LW1vZGUgdmlsIGRlbm5lIHBhcmFtZXRlciBzcGVzaWZpc2VyZSBuYXZuZXQgcCZhcmluZzsgZmVsdGV0JzsKJGxhbmdbJ3BhcmFtX3NlbGVjdHZhbHVlJ10gPSAnTiZhcmluZztyIGVuIGJlbnl0dGVyICYjMDM5O3NlbGVjdCYjMDM5Oy1tb2RlIHZpbCBkZW5uZSBwYXJhbWV0ZXJlbiBzcGVzaWZpc2VyZSBzdGFuZGFyZCBmZWx0dmVyZGknOwokbGFuZ1sncGFyYW1fc2VsZWN0bm9uZSddID0gJ04mYXJpbmc7ciBlbiBiZW55dHRlciAmIzAzOTtzZWxlY3QmIzAzOTstbW9kZSB2aWwgZGVubmUgcGFyYW1ldGVyZW4gc3Blc2lmaXNlcmUgb20gJiMwMzk7bm9uZSYjMDM5OyBlciBldCBneWxkaWcgdmFsZy4nOwokbGFuZ1sncmV0dXJudG9tb2R1bGUnXSA9ICdUaWxiYWtlIHRpbCBNb2R1bCBwYW5lbGV0JzsKJGxhbmdbJ2Vycm9yX25vY2F0ZWdvcmllcyddID0gJ0RldCBlciBpbmdlbiBkZWZpbmVydGUga2F0ZWdvcmllcic7CiRsYW5nWyd0aXRsZV9lbmZvcmNlZXh0ZW5zaW9ucyddID0gJ0tyZXZlciBmaWwtZW5kZWxzZSBwJmFyaW5nOyBhbGxlIG9wcGxhc3RlZGUgZmlsZXInOwokbGFuZ1sncmVzdG9yZWRlZmF1bHRzY29uZmlybSddID0gJ0Rlbm5lIGhhbmRsaW5nIHZpbCB0aWxiYWtlc3RpbGxlIG1hbGVuIHRpbCBzeXN0ZW0gc3RhbmRhcmQuIEVuaHZlciBlbmRyaW5nIGR1IGhhciBnam9ydCB2aWwgYmxpIGJvcnRlLiBFciBkdSBzaWtrZXIgcCZhcmluZzsgYXQgZHUgdmlsIGZvcnRzZXR0ZT8nOwokbGFuZ1snaW5mb190aHVtYm5haWwnXSA9ICdFbiB2YWxnZnJpIG1pbmlhdHlyYmlsZGUgZmlsJzsKJGxhbmdbJ3RodW1ibmFpbCddID0gJ01pbmlhdHlyYmlsZGUgJzsKJGxhbmdbJ25ld3RodW1ibmFpbCddID0gJ0xhc3Qgb3BwIG55dHQgbWluaWF0eXJiaWxkZSc7CiRsYW5nWydpbmZvX3N1bW1hcnknXSA9ICdFbiBrb3J0IGJlc2tyaXZlbHNlIChvbSBibGFuaywgYmxpciBmaWxuYXZuZXQgYnJ1a3QgdXRlbiBmaWwtZW5kZWxzZSknOwokbGFuZ1snaW5mb19jYXRlZ29yeW5hbWUnXSA9ICdFdCBrb3J0IG5hdm4gcCZhcmluZzsgZGluIGthdGVnb3JpIChmb3JzdCZhcmluZztlbGlnIGZvciBodmVybWFuc2VuKSc7CiRsYW5nWydpbmZvX2NhdGVnb3J5ZGVzYyddID0gJ0VuIGJlc2tyaXZlbHNlIGF2IGRpbiBrYXRlZ29yaSc7CiRsYW5nWydpbmZvX2NhdGVnb3J5cGF0aCddID0gJ0thdGFsb2duYXZuZXQgaW5uZSBpIG9wcGxhc3Rpbmcga2F0YWxvZ2VuIHNvbSB2aWwgYmxpIGJydWt0IGZvciAmYXJpbmc7IGxhZ3JlIGZpbGVyIGkgZGVubmUga2F0ZWdvcmkuIE9tIGthdGFsb2dlbiBtZWQgZGV0dGUgbmF2bmV0IGlra2UgZWtzaXN0ZXJlciwgdmlsIGRlbiBibGkgb3BwcmV0dGV0JzsKJGxhbmdbJ2luZm9fZGVzdG5hbWUnXSA9ICdCcnVrICYjMDM5O0xhc3Qgb3BwIHNvbSYjMDM5OyBmZWx0ZXQgZm9yICZhcmluZzsgZW5kcmUgbmF2bmV0IHAmYXJpbmc7IGZpbGEgdmVkIG9wcGxhc3RpbmcuICBMYSB2JmFlbGlnO3JlIGJsYW5rdCBmb3IgJmFyaW5nOyBiZWhvbGRlIG5hdm5ldCBzb20gZGV0IGVyLic7CiRsYW5nWydlcnJvcl9jYW50Y3JlYXRlZGlyZWN0b3J5J10gPSAnS3VubmUgaWtrZSBvcHByZXR0ZSBrYXRhbG9nJzsKJGxhbmdbJ2Vycm9yX25vbWFpbGVybW9kdWxlJ10gPSAnQ01TTWFpbGVyIG1vZHVsZW4ga3VubmUgaWtrZSBzdGFydGVzJzsKJGxhbmdbJ3VwbG9hZF9ub3RpZmljYXRpb24nXSA9ICdFbiBueSBmaWwgaGFyIGJsaXR0IGxhc3RldCBvcHAnOwokbGFuZ1sndGl0bGVfZW1haWxfb25fdXBsb2FkJ10gPSAnU2VuZCBvcHBsYXN0aW5ncy1tZWxkaW5nIHRpbDonOwokbGFuZ1snZW1haWxfdGVtcGxhdGUnXSA9ICdFcG9zdCBtYWwnOwokbGFuZ1sndGl0bGVfZHVtbXlfaW5kZXhfaHRtbCddID0gJ09wcHJldHQgZHVtbXkgaW5kZXguaHRtbCBmaWxlciBpIGh2ZXIga2F0YWxvZz88YnIvPjxlbT5JbmdlbiBla3Npc3RlcmVuZGUgaW5kZXguaHRtbCBmaWxlciB2aWwgYmxpIGlnamVuPC9lbT4nOwokbGFuZ1snYWJvdXQnXSA9ICdPbSc7CiRsYW5nWydlcnJvcl9wZXJtaXNzaW9uZGVuaWVkJ10gPSAnQWRnYW5nIG5la3RldC4gVmVubmxpZ3N0IHNqZWtrIGRpbmUgcmV0dGlnaGV0ZXIuJzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90d3JpdGUnXSA9ICdLdW5uZSBpa2tlIHNrcml2ZSc7CiRsYW5nWydhZGRjYXRlZ29yeSddID0gJ0xlZ2cgdGlsIGthdGVnb3JpJzsKJGxhbmdbJ2FsbCddID0gJ0FsdCc7CiRsYW5nWydhcmV5b3VzdXJlJ10gPSAnRXIgZHUgc2lra2VyPyc7CiRsYW5nWydhdXRob3InXSA9ICdPcHBoYXZzbWFubic7CiRsYW5nWydjYW5jZWwnXSA9ICdBdmJyeXQnOwokbGFuZ1snY2Fubm90bW9kaWZ5cGF0aCddID0gJyhTdGllbiBrYW4gaWtrZSBlbmRyZXMpJzsKJGxhbmdbJ2NhdGVnb3JpZXMnXSA9ICdLYXRlZ29yaWVyJzsKJGxhbmdbJ2NhdGVnb3J5J10gPSAnS2F0ZWdvcmknOwokbGFuZ1snbWVzc2FnZV9jYXRlZ29yeWFkZGVkJ10gPSAnS2F0ZWdvcmkgb3BwcmV0dGV0JzsKJGxhbmdbJ2RhdGUnXSA9ICdEYXRvJzsKJGxhbmdbJ2RhdGV1cGxvYWRlZCddID0gJ0RhdG8gbGFzdGV0IG9wcCc7CiRsYW5nWydkZWZhdWx0J10gPSAnU3RhbmRhcmQnOwokbGFuZ1snZGVsZXRlJ10gPSAnU2xldHQnOwokbGFuZ1snZGVzY3JpcHRpb24nXSA9ICdCZXNrcml2ZWxzZSc7CiRsYW5nWydkZXN0bmFtZSddID0gJ0xhc3Qgb3BwIHNvbSc7CiRsYW5nWydkZXRhaWxfdGVtcGxhdGUnXSA9ICdEZXRhbGogbWFsJzsKJGxhbmdbJ2Rvd25sb2FkZWQnXSA9ICdGaWwgJXMgYmxlIGxhc3RldCBuZWQuJzsKJGxhbmdbJ2Rvd25sb2FkcyddID0gJ05lZGxhc3Rpbmdlcic7CiRsYW5nWydlZGl0J10gPSAnUmVkaWdlcic7CiRsYW5nWydlZGl0Y2F0ZWdvcnknXSA9ICdSZWRpZ2VyIGthdGVnb3JpJzsKJGxhbmdbJ2VkaXR1cGxvYWQnXSA9ICdSZWRpZ2VyIG9wcGxhc3RpbmcnOwokbGFuZ1snZXJyb3InXSA9ICdGZWlsISc7CiRsYW5nWydlcnJvcl9wYXRoaW51c2UnXSA9ICdFbiBrYXRlZ29yaSBzb20gYnJ1a2VyIGRlbiBzdGllbiBla3Npc3RlcmVyIGFsbGVyZWRlJzsKJGxhbmdbJ2Vycm9yX2NhdGVnb3J5ZXhpc3RzJ10gPSAnRmVpbDogS2F0ZWdvcmkgZWtzaXN0ZXJlciBhbGxlcmVkZSc7CiRsYW5nWydlcnJvcl9jYXRlZ29yeW5vdGVtcHR5J10gPSAnRmVpbCEgS2FuIGlra2Ugc2xldHRlIGthdGVnb3JpIGRhIGRlbiBpa2tlIGVyIHRvbSc7CiRsYW5nWydlcnJvcl9jYXRlZ29yeW5vdGZvdW5kJ10gPSAnRmVpbDogS2F0ZWdvcmkgaWtrZSBmdW5uZXQhJzsKJGxhbmdbJ2Vycm9yX2RiZXJyb3InXSA9ICdGZWlsOiBEYXRhYmFzZSBmZWlsISc7CiRsYW5nWydlcnJvcl9lbXB0eWNhdGVnb3J5J10gPSAnRmVpbDogVG9tIGthdGVnb3JpISc7CiRsYW5nWydlcnJvcl9lbXB0eXBhdGgnXSA9ICdGZWlsOiBCbGFuayBzdGkhJzsKJGxhbmdbJ2Vycm9yX2ZpbGVleGlzdHMnXSA9ICdGZWlsISBGaWwgJXMgZWtzaXN0ZXJlciBhbGxlcmVkZS4nOwokbGFuZ1snZXJyb3JfZmlsZW5vdGZvdW5kJ10gPSAnRmVpbCEgRmlsICVzIGJsZSBpa2tlIGZ1bm5ldC4nOwokbGFuZ1snZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJ10gPSAnRmVpbDogTWFuZ2VsZnVsbGUgcGFyYW1ldHJlIGdpdHQgdGlsIG1vZHVsZW4hJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRhdXRob3InXSA9ICdGZWlsOiBVZ3lsZGlnIChlbGxlciBibGFuaykgb3BwaGF2c21hbm4uJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRjYXRlZ29yeSddID0gJ0ZlaWw6IFVneWxkaWcgKGVsbGVyIGJsYW5rKSBrYXRlZ29yaS4nOwokbGFuZ1snZXJyb3JfaW52YWxpZGRlc2NyaXB0aW9uJ10gPSAnRmVpbDogVWd5bGRpZyAoZWxsZXIgYmxhbmspIGJlc2tyaXZlbHNlLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkZmlsZSddID0gJ0ZlaWw6IFVneWxkaWcgKGVsbGVyIGJsYW5rKSBmaWxuYXZuLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXBsb2FkZmlsZW5hbWUnXSA9ICdGZWlsOiBGaWxlciBtZWQgZGV0dGUgbmF2bmV0IChzYW5zeW5saWcgZmlsLWVuZGVsc2VuKSBlciBpa2tlIHRpbGxsYXR0ICglcykuJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1cGxvYWRpZCddID0gJ0ZlaWw6IFVneWxkaWcgb3BwbGFzdGluZ3NJRCc7CiRsYW5nWydlcnJvcl9ub2ZpbGVzJ10gPSAnRmVpbDogSW5nZW4gcGFzc2VuZGUgZmlsZXIhJzsKJGxhbmdbJ2ZpbGVzJ10gPSAnRmlsZXInOwokbGFuZ1snZml4bWUnXSA9ICdGaWtzIG1lbGxvbXJvbSc7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdGaWxlciAoVXBsb2FkcyBNb2R1bGVuKSc7CiRsYW5nWydoZWxwJ10gPSAnPGgzPldoYXQgRG9lcyBUaGlzIERvPzwvaDM+DQo8cD5JdCBpcyBhIG1vZHVsZSBmb3IgYWxsb3dpbmcgcGVvcGxlIHRvIHVwbG9hZCBhbmQgZG93bmxvYWQgZmlsZXMgdG8gYW5kIGZyb20geW91ciBzaXRlLiAgSXQga2VlcHMgdHJhY2sgb2Ygd2hvIHVwbG9hZGVkIGEgZmlsZSwgYW5kIHdobyBoYXMgZG93bmxvYWRlZCBpdC4gIEFzIHdlbGwsIHlvdSBjYW4gc29ydCBmaWxlcyBpbnRvIGNhdGVnb3JpZXMsIGFuZCBtYW5hZ2UgdGhlIGZpbGVzIHRoYXQgd2VyZSB1cGxvYWRlZCBsaWtlIGV2ZXJ5IGFkbWluaXN0cmF0b3Igd291bGQgZG88L3A+IA0KPGgzPkhvdyBEbyBJIFVzZSBJdDwvaDM+DQo8cD48c3Ryb25nPldhcm5pbmc8L3N0cm9uZz4gLSBUaGUgcHJvcGVyIGJlaGF2aW91ciBvZiB0aGlzIG1vZHVsZSBkZXBlbmRzIG9uIG51bWVyb3VzIHBocCBjb25maWd1cmF0aW9uIHZhcmlhYmxlcy4gIFRoZXNlIGluY2x1ZGUgPGVtPihidXQgYXJlIG5vdCBsaW1pdGVkIHRvKTwvZW0+LCBwaHAmIzAzOTtzIG1lbW9yeV9saW1pdCwgc2FmZV9tb2RlLCBmaWxlX3VwbG9hZHMsIHVwbG9hZHNfbWF4X2ZpbGVzaXplLCBhbmQgbWF4X2V4ZWN1dGlvbl90aW1lLiAgVGhlc2UgdmFyaWFibGVzIG1heSBuZWVkIGFkanVzdG1lbnQgZm9yIHRoaXMgbW9kdWxlIHRvIHdvcmsgcHJvcGVybHkgb24geW91ciBzaXRlLiAgSXQgaXMgYWR2aXNlZCB0aGF0IHlvdSB3b3JrIHdpdGggeW91ciBzeXN0ZW0gYWRtaW5pc3RyYXRvciBvciBob3N0IHByb3ZpZGVyIHRvIHR1bmUgdGhlc2Ugc2V0dGluZ3MgZm9yIHlvdXIgcmVxdWlyZW1lbnRzLjwvcD4NCjxwPlRvIHVzZSB0aGlzIG1vZHVsZSwgdG8gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIGZpbGVzIHRvIHlvdXIgc2l0ZSwgeW91IHNob3VsZCBpbnN0YWxsIHRoZSBtb2R1bGUsIGFuZCB0aGVuIGNyZWF0ZSBvbmUgb3IgbW9yZSBjYXRlZ29yaWVzIChhLmsuYSkgZGlyZWN0b3JpZXMgZm9yIHRoZSB1cGxvYWRlZCBmaWxlcyB0byBnbyBpbnRvLiBUaGVuIGFkZCBhIHRhZyBpbnRvIGEgcGFnZSBvciB0ZW1wbGF0ZSBzb21ld2hlcmUgbGlrZSB7Y21zX21vZHVsZSBtb2R1bGU9JnF1b3Q7VXBsb2FkcyZxdW90OyBjYXRlZ29yeT0mcXVvdDtzb21lY2F0ZWdvcnkmcXVvdDsgbW9kZT0mcXVvdDtzb21lbW9kZSZxdW90O30uICBXaGVyZSBtb2RlIG1hdGNoZXMgb25lIG9mIHRoZSBtb2RlcyBsaXN0ZWQgYmVsb3cuICBUaGUgb3V0cHV0IHdpbGwgZGlmZmVyIGRlcGVuZGluZyB1cG9uIHdoaWNoIG1vZGUgeW91IHNlbGVjdC48L3A+DQo8cD5UaGlzIG1vZHVsZSBjYW4gdXNlIHRoZSBGcm9udGVuZFVzZXJzIG1vZHVsZSAob3B0aW9uYWwpIHRvIGdldCBpbmZvcm1hdGlvbiBhYm91dCBhbnkgY3VycmVudGx5IGxvZ2dlZCBpbiB1c2VycyB0byBwYXJ0bHkgZmlsbCBpbiB0aGUgZm9ybSB3aGVuIHVwbG9hZGluZyBmaWxlczs8L3A+DQo8aDM+UGVybWlzc2lvbnM8L2gzPg0KPHVsPg0KPGxpPjxlbT5NYW5hZ2UgVXBsb2FkczwvZW0+IHBlcm1pc3Npb24gaXMgbmVlZGVkIHRvIG1hbmFnZSBjYXRlZ29yaWVzLCBhbmQgdGhlIGZpbGVzIHdpdGhpbiB0aGVtLjwvbGk+DQo8bGk+PGVtPk1vZGlmeSBUZW1wbGF0ZXM8L2VtPiBwZXJtaXNzaW9uIGlzIG5lZWRlZCBlZGl0IGFueSBvZiB0aGUgdGVtcGxhdGVzLjwvbGk+DQo8bGk+PGVtPk1vZGlmeSBTaXRlIFByZWZlcmVuY2VzPC9lbT4gcGVybWlzc2lvbiBpcyBuZWVkZWQgYW55IG9mIHRoZSBmaWxlIHNldHRpbmdzLjwvbGk+DQo8L3VsPg0KPGgzPkNhdGVnb3J5IEJyb3dzaW5nPC9oMz4NCjxwPlBsYWNpbmcgYSB0YWcgbGlrZSB7Y21zX21vZHVsZSBtb2R1bGU9JnF1b3Q7VXBsb2FkcyZxdW90OyBhY3Rpb249JnF1b3Q7Y2F0ZWdvcnlzdW1tYXJ5JnF1b3Q7IHRlbXBsYXRlPSZxdW90O3N1bW1hcnl0ZW1wbGF0ZSZxdW90OyBzb3J0b3JkZXI9JnF1b3Q7bmFtZV9hc2MmcXVvdDsgbGlzdGluZ3RlbXBsYXRlPSZxdW90O2xpc3R0ZW1wbGF0ZSZxdW90OyBsaXN0aW5nc29ydG9yZGVyPSZxdW90O2xpc3Rzb3J0b3JkZXImcXVvdDt9DQphbGxvd3MgeW91IHRvIGRpc3BsYXkgYW4gaW50ZXJhY3RpdmUgY2F0ZWdvcnkgYnJvd3Nlci4gc29ydG9yZGVyIGNhbiBiZTogbmFtZV9hc2MsIG5hbWVfZGVzYywgc3VtbV9hc2MsIHN1bW1fZGVzYywgb3IgcmFuZG9tLg0KbGlzdGluZ3RlbXBsYXRlIGFuZCBsaXN0aW5nc29ydG9yZGVyIGFyZSBpZGVudGljYWwgdG8gdGhlIHRlbXBsYXRlIGFuZCBzb3J0b3JkZXIgcGFyYW1ldGVycyBmb3INCnRoZSAmcXVvdDtzdW1tYXJ5JnF1b3Q7IG1vZGUuPC9wPg0KPGgzPkVtYWlsaW5nPC9oMz4NCjxwPlRoaXMgbW9kdWxlIGlzIGNhcGFibGUgb2Ygc2VuZGluZyBhbiBlbWFpbCB3aGVuZXZlciBhIGZpbGUgaXMgdXBsb2FkZWQsIHNlZSB0aGUgcHJlZmVyZW5jZXMgdGFiLiAgSG93ZXZlciwgdG8gZG8gdGhpcyB0aGUgPGI+Q01TTWFpbGVyPC9iPiBwYWNrYWdlIG11c3QgYmUgaW5zdGFsbGVkIGFuZCBjb25maWd1cmVkLiAgVGhpcyBpcyBhbiA8ZW0+b3B0aW9uYWw8L2VtPiBzdGVwLCBhbmQgaWYgdGhlIENNU01haWxlciBtb2R1bGUgaXMgbm90IGluc3RhbGxlZCwgbm90aGluZyB3aWxsIGJlIGRpc3BsYXllZCB0byB0aGUgdXNlciwgb25seSBhIGxvZyBtZXNzYWdlIHdpbGwgYmUgcGxhY2VkIGludG8gdGhlIGFkbWluIGxvZzwvcD4NCjxoMz5TeXN0ZW0gU2V0dGluZ3M8L2gzPg0KPHA+PGI+Tm90ZTo8L2I+IFRoaXMgbW9kdWxlIGRvZXMgbm90IGJ5cGFzcyBvciBnZXQgcGFzdCBhbnkgZmlsZSBzaXplIGxpbWl0YXRpb25zIGluIHBocC4gIEl0IHdvcmtzIGluIGNvbmp1bmN0aW9uIHdpdGggdGhlbS4gIFRoZXJlZm9yZSB5b3UgbWF5IG5lZWQgdG8gbW9kaWZ5IHlvdXIgcGhwLmluaSBmaWxlIGFuZC9vciB5b3VyIGh0dHBkLmNvbmYgZmlsZShzKSB0byBhbGxvdyB5b3UgdG8gdXBsb2FkIGZpbGVzIGFzIGxhcmdlIGFzIHdoYXQgeW91IGhhdmUgc2V0IGluIHRoZSB1cGxvYWRzIG1vZHVsZSBwcmVmZXJlbmNlcy48L3A+DQo8aDM+QXBhY2hlIE5vdGVzPC9oMz4NCjxwPkluIG9yZGVyIHRvIGFsbG93IGxhcmdlIGZpbGUgdXBsb2FkcywgeW91IG1heSBuZWVkIHRvIG1vZGlmeSB0aGUgdXBsb2FkX21heF9maWxlc2l6ZSBwYXJhbWV0ZXIgaW4geW91ciBwaHAuaW5pICBJbiBhZGRpdGlvbiwgdGhlIExpbWl0UmVxdWVzdEJvZHkgcGFyYW1ldGVyIGluIHlvdXIgYXBhY2hlIGNvbmZpZ3VyYXRpb24sIG1heSBuZWVkIHRvIGJlIGFkanVzdGVkIHRvIG1hdGNoIHRoZSB1cGxvYWRfbWF4X2ZpbGVzaXplIHBhcmFtZXRlcjwvcD4NCjxwPk5vdGU6ICB0aGUgdXBsb2FkX21heF9maWxlc2l6ZSBwYXJhbWV0ZXIgY2FuIGJlIHNwZWNpZmllZCBpbiBieXRlcywga2lsb2J5dGVzLCBvciBtZWdhYnl0ZXMsIGhvd2V2ZXIgdGhlIExpbWl0UmVxdWV0Qm9keSBwYXJhbWV0ZXIgaXMgb25seSBzcGVjaWZpZWQgaW4gYnl0ZXM8L3A+JzsKJGxhbmdbJ2lkJ10gPSAnSUQnOwokbGFuZ1snaW5zdGFsbGVkJ10gPSAnTW9kdWwgdmVyc2pvbiAlcyBpbnN0YWxsZXJ0Lic7CiRsYW5nWydpcF9hZGRyZXNzJ10gPSAnSVAtYWRyZXNzZSc7CiRsYW5nWydtb2RkZXNjcmlwdGlvbiddID0gJ0VuIG1vZHVsIHNvbSB0aWxsYXRlciBicnVrZXJlICZhcmluZzsgbGFzdGUgb3BwIGZpbGVyLCBvZyB0aWxsYXRlciBkZWcgJmFyaW5nOyBoJmFyaW5nO25kdGVyZSBkZW0uJzsKJGxhbmdbJ25hbWUnXSA9ICdOYXZuJzsKJGxhbmdbJ3JlbmFtZW1lc3NhZ2UnXSA9ICdSZWRpZ2VyIG5hdm5ldCBoZXIgZm9yICZhcmluZzsgZ2omb3NsYXNoO3JlIGVuIG5hdm5lZW5kcmluZyc7CiRsYW5nWydwYXRoJ10gPSAnU3RpJzsKJGxhbmdbJ3BhdGhtZXNzYWdlJ10gPSAnRW5kcmUga2F0ZWdvcmkgaGVyIGZvciAmYXJpbmc7IGZseXR0ZSBmaWxlbiB0aWwgZW4gYW5uZW4ga2F0ZWdvcmknOwokbGFuZ1sncGF0aGludXBsb2FkcyddID0gJyhSZWxhdGl2IHRpbCBvcHBsYXN0aW5ncyBrYXRhbG9nZW4pJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsJ10gPSAnPHA+VGhlIHVwbG9hZHMgbW9kdWxlIGhhcyBiZWVuIHN1Y2Nlc3NmdWxseSBpbnN0YWxsZWQuIEJlIHN1cmUgdG8gc2V0ICZxdW90O01hbmFnZSBVcGxvYWRzJnF1b3Q7IHBlcm1pc3Npb25zIHRvIHVzZSB0aGlzIG1vZHVsZSE8L3A+DQo8cD48c3Ryb25nPldhcm5pbmc8L3N0cm9uZz4gLSBUaGUgcHJvcGVyIGJlaGF2aW91ciBvZiB0aGlzIG1vZHVsZSBkZXBlbmRzIG9uIG51bWVyb3VzIHBocCBjb25maWd1cmF0aW9uIHZhcmlhYmxlcy4gIFRoZXNlIGluY2x1ZGUgPGVtPihidXQgYXJlIG5vdCBsaW1pdGVkIHRvKTwvZW0+LCBwaHAmIzAzOTtzIG1lbW9yeV9saW1pdCwgc2FmZV9tb2RlLCBmaWxlX3VwbG9hZHMsIHVwbG9hZHNfbWF4X2ZpbGVzaXplLCBhbmQgbWF4X2V4ZWN1dGlvbl90aW1lLiAgVGhlc2UgdmFyaWFibGVzIG1heSBuZWVkIGFkanVzdG1lbnQgZm9yIHRoaXMgbW9kdWxlIHRvIHdvcmsgcHJvcGVybHkgb24geW91ciBzaXRlLiAgSXQgaXMgYWR2aXNlZCB0aGF0IHlvdSB3b3JrIHdpdGggeW91ciBzeXN0ZW0gYWRtaW5pc3RyYXRvciBvciBob3N0IHByb3ZpZGVyIHRvIHR1bmUgdGhlc2Ugc2V0dGluZ3MgZm9yIHlvdXIgcmVxdWlyZW1lbnRzLjwvcD4nOwokbGFuZ1sncG9zdHVuaW5zdGFsbCddID0gJ1VwbG9hZHMgbW9kdWxlbiBoYXIgYmxpdHQgZmplcm5ldC4gSW5nZW4gZmlsZXIgaGFyIGJsaXR0IGZqZXJuZXQgZnJhIGRpbiBvcHBsYXN0aW5ncyBrYXRhbG9nLCBvZyBmaWwgaW50ZWdyaXRldGVuIGVyIGludGFrdCc7CiRsYW5nWydwcmVmZXJlbmNlcyddID0gJ0lubnN0aWxsaW5nZXInOwokbGFuZ1sncHJlZnN1cGRhdGVkJ10gPSAnTW9kdWwgaW5uc3RpbGxpbmdlciBvcHBkYXRlcnQuJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeWRlc2MnXSA9ICdCZXNrcml2ZWxzZSc7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnlsaXN0YWJsZSddID0gJ0ZpbGVyIGkgZGVubmUga2F0ZWdvcmllbiBrYW4gbGlzdGVzIHV0JzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeW5hbWUnXSA9ICdLYXRlZ29yaSBuYXZuJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeXBhdGgnXSA9ICdTZXJ2ZXIgc3RpJzsKJGxhbmdbJ3Byb21wdF9kZWxldGVkaXJlY3RvcnknXSA9ICdTbGV0dCBrYXRlZ29yaSBtYXBwZT8nOwokbGFuZ1sncHJvbXB0X21heF91cGxvYWRzaXplJ10gPSAnTWFrc2ltdW0gdGlsbGF0dGUgZmlsc3Qmb3NsYXNoO3JyZWxzZSAoS2IpJzsKJGxhbmdbJ3Byb21wdF92YWxpZF91cGxvYWRleHRlbnNpb25zJ10gPSAnR3lsZGlnIG9wcGxhc3RpbmdzIGZpbC1lbmRlbHNlJzsKJGxhbmdbJ3NjYW4nXSA9ICdTa2Fubic7CiRsYW5nWydzZWxlY3RjYXRlZ29yeSddID0gJ1ZlbGcga2F0ZWdvcmknOwokbGFuZ1snc2l6ZSddID0gJ1N0Jm9zbGFzaDtycmVsc2UnOwokbGFuZ1snc2l6ZWtiJ10gPSAnU3Qmb3NsYXNoO3JyZWxzZSAoS2IpJzsKJGxhbmdbJ3N1Ym1pdCddID0gJ1V0ZiZvc2xhc2g7cic7CiRsYW5nWydzdW1tYXJ5X3RlbXBsYXRlJ10gPSAnU2FtbWVuZHJhZ3MgbWFsJzsKJGxhbmdbJ3N1bW1hcnknXSA9ICdTYW1tZW5kcmFnJzsKJGxhbmdbJ3RpdGxlX2FkbWluX3BhbmVsJ10gPSAnVXBsb2FkcyBNb2R1bGVuJzsKJGxhbmdbJ3RpdGxlX21vZF9hZG1pbiddID0gJ01vZHVsIEFkbWluaXN0cmFzam9uc3BhbmVsJzsKJGxhbmdbJ3RpdGxlX21vZF9wcmVmcyddID0gJ01vZHVsIElubnN0aWxsaW5nZXInOwokbGFuZ1sndGl0bGVfc3VibmV0X2V4Y2x1c2lvbnMnXSA9ICdVdGVsdWtrIHN1Ym5ldHQgZnJhIHN0YXRpc3Rpa2tlcic7CiRsYW5nWyd0aXRsZV92YWxpZF91cGxvYWRleHRlbnNpb25zJ10gPSAnR3lsZGlnZSBmaWwtZW5kZWxzZXInOwokbGFuZ1sndW5pbnN0YWxsZWQnXSA9ICdNb2R1bCBhdmluc3RhbGxlcnQuJzsKJGxhbmdbJ3VwZ3JhZGVkJ10gPSAnTW9kdWwgb3BwZ3JhZGVydCB0aWwgdmVyc2pvbiAlcy4nOwokbGFuZ1sndXBsb2FkJ10gPSAnTGFzdCBvcHAnOwokbGFuZ1sndXBsb2FkZWQnXSA9ICdGaWwgJXMgYmxlIGxhc3RldCBvcHAgYXYgJXMuJzsKJGxhbmdbJ3JlcGxhY2VkJ10gPSAnRmlsICVzIGJsZSBlcnN0YXR0ZXQgJXMuJzsKJGxhbmdbJ2RlbGV0ZWQnXSA9ICdGaWwgJXMgYmxlIHNsZXR0ZXQuJzsKJGxhbmdbJ3VwbG9hZGZvcm1fdGVtcGxhdGUnXSA9ICdPcHBsYXN0aW5nIG1hbGVyJzsKJGxhbmdbJ3VzZXJuYW1lJ10gPSAnQnJ1a2VybmF2bic7CiRsYW5nWyd3YXJuaW5nX2RlbGV0ZWNhdGVnb3J5J10gPSAnQURWQVJTRUw6IEZvcnNpa3RpZyBuJmFyaW5nO3IgZHUgc2xldHRlciBrYXRlZ29yaWVyLiAgRmlsZXIga2FuIGJsaSBib3J0ZSc7CiRsYW5nWyd3ZWxjb21lX3RleHQnXSA9ICc8cD5WZWxrb21tZW4gdGlsIFVwbG9hZHMgTW9kdWxlbnMgYWRtaW4gc2Vrc2pvbi48L3A+JzsKJGxhbmdbJ3V0bWEnXSA9ICcxNTY4NjEzNTMuMTc5MDUyNjIzMDg0MTEwMTAwLjEyMTA0MjM1NzcuMTIyOTM3MjIwOS4xMjI5NDY0OTQzLjc1OSc7CiRsYW5nWyd1dG16J10gPSAnMTU2ODYxMzUzLjEyMjc5OTUyODMuNzE2LjIzLnV0bWNzcj10aGVtZXMuY21zbWFkZXNpbXBsZS5vcmd8dXRtY2NuPShyZWZlcnJhbCl8dXRtY21kPXJlZmVycmFsfHV0bWNjdD0vJzsKJGxhbmdbJ3V0bWMnXSA9ICcxNTY4NjEzNTMnOwokbGFuZ1sndXRtYiddID0gJzE1Njg2MTM1My4xLjEwLjEyMjk0NjQ5NDMnOwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lang/ext/nl_NL.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2ZpcnN0cGFnZSddID0gJ0VlcnN0ZSBwYWdpbmEnOwokbGFuZ1sncHJldnBhZ2UnXSA9ICdMYWF0c3RlIHBhZ2luYSc7CiRsYW5nWyduZXh0cGFnZSddID0gJ1ZvbGdlbmRlIHBhZ2luYSc7CiRsYW5nWydsYXN0cGFnZSddID0gJ1ZvcmlnZSBwYWdpbmEnOwokbGFuZ1snZmlyc3RwYWdlX2Fycm93J10gPSAnPDwgJzsKJGxhbmdbJ3ByZXZwYWdlX2Fycm93J10gPSAnPCAnOwokbGFuZ1snbmV4dHBhZ2VfYXJyb3cnXSA9ICc+ICc7CiRsYW5nWydsYXN0cGFnZV9hcnJvdyddID0gJz4+ICc7CiRsYW5nWydwYWdlJ10gPSAnUGFnaW5hJzsKJGxhbmdbJ29mJ10gPSAndmFuJzsKJGxhbmdbJ3Byb21wdF9ncm91cGxpc3QnXSA9ICdHZWF1dG9yaXNlZXJkZSBGRVVzZXJzLWdyb2VwZW4nOwokbGFuZ1snaW5mb19ncm91cGxpc3QnXSA9ICdTZWxlY3RlZXIgZWVuIEZFVS1ncm9lcCBkaWUgdG9lZ2FuZyBtYWcgaGViYmVuIHRvdCBiZXN0YW5kZW4gaW4gZGV6ZSBjYXRlZ29yaWUuICc7CiRsYW5nWyd0aXRsZV9zY2FuJ10gPSAnWm9layBuYWFyIG5pZXV3ZSBiZXN0YW5kZW4gaW4gZGV6ZSBjYXRlZ29yaWUnOwokbGFuZ1sndGl0bGVfY3JlYXRlX3RodW1ibmFpbHMnXSA9ICdDcmUmZXVtbDtlciBvbnRicmVrZW5kZSB0aHVtYm5haWxzIGluIGRlemUgY2F0ZWdvcmllJzsKJGxhbmdbJ2NyZWF0ZV90aHVtYm5haWxzJ10gPSAnQ3JlJmV1bWw7ZXIgdGh1bWJuYWlscyc7CiRsYW5nWyd0aXRsZV9jcmVhdGVfdGh1bWJuYWlsJ10gPSAnTWFhayBkZSB0aHVtYm5haWwgdm9vciBkaXQgYmVzdGFuZCAob3BuaWV1dykgYWFuJzsKJGxhbmdbJ2NyZWF0ZV90aHVtYm5haWwnXSA9ICdDcmUmZXVtbDtlciB0aHVtYm5haWwnOwokbGFuZ1snZXJyb3JfcGF0aGVycm9yJ10gPSAnS2FuIGRlIG1hcCBuaWV0IG9wZW5lbiAocmVjaHRlbnByb2JsZWVtPyknOwokbGFuZ1sndGl0bGVfZG93bmxvYWRfY2h1bmtzaXplJ10gPSAnR3Jvb3R0ZSB2YW4gaWVkZXIgZG93bmxvYWRkZWVsJzsKJGxhbmdbJ2luZm9fZG93bmxvYWRfY2h1bmtzaXplJ10gPSAnSW5zdGVsbGVuIHZhbiBkZXplIHBhcmFtZXRlciBoZWVmdCBpbnZsb2VkIG9wIGRlIGRvd25sb2Fkc25lbGhlaWQgZW4ga2FuIHZvb3JkZWVsIGhlYmJlbiBpbiBvbWdldmluZ2VuIG1ldCB3ZWluaWcgZ2VoZXVnZW4nOwokbGFuZ1snd2FybmluZ19zYWZlX21vZGUnXSA9ICdQSFAmIzAzOTtzIHZlaWxpZ2UgbW9kdXMgKHNhZmUgbW9kZSkgaXMgaW5nZXNjaGFrZWxkLiBEaXQga2FuIHByb2JsZW1lbiBtZXQgaGV0IHVwbG9hZGVuIHZhbiBiZXN0YW5kZW4gdmVyb29yemFrZW4gKHJlY2h0ZW4pIGVuIGthbiBvb2sgZGUgbW9nZWxpamsgdmFuIGRlIG1vZHVsZSB2ZXJzdG9yZW4gb20gYmVzdGFuZGVuIHRlIHZlcnplbmRlbiBkb29yIGRlIGJlcGVya2luZyBlbmtlbGUgaW5zdGVsbGluZ2VuIHRlIG92ZXJzY2hyaWp2ZW4uIE5lZW0gY29udGFjdCBvcCBtZXQgdXcgaG9zdGluZyBwcm92aWRlciBvdmVyIGhldCB1aXRzY2hha2VsZW4gdmFuIGRlIHZlaWxpZ2UgbW9kdXMuJzsKJGxhbmdbJ3BhcmFtX2RldGFpbHBhZ2UnXSA9ICdOdXR0aWcgb20gZWVuIGdlZGV0YWlsbGVlcmQgcmFwcG9ydCB0ZSB0b25lbiBtZXQgZWVuIGFuZGVyIHBhZ2luYXNqYWJsb29uLiBEZXplIHBhcmFtZXRlciBnZWJydWlrdCBkZSBwYWdpbmEtaWQgb2YgcGFnaW5hLWFsaWFzIHZhbiBlZW4gcGFnaW5hIGRpZSBiZW51dCBkaWVudCB0ZSB3b3JkZW4gb20gaGV0IGRldGFpbHJhcHBvcnQgdGUgdG9uZW4uJzsKJGxhbmdbJ3BhcmFtX3ByZWZpeCddID0gJ0VlbiBib29sZWFuIGRpZSBhYW5nZWVmdCBvZiBiZXN0YW5kc25hbWVuIGVlbiBwcmVmaXggbW9ldGVuIGhlYmJlbic7CiRsYW5nWydwYXJhbV9wcmVmaXhfZmV1J10gPSAnRWVuIGJvb2xlYW5wYXJhbWV0ZXIgZGllIGFhbmdlZWZ0IGRhdCBkZSBwcmVmaXggdmFuIGRlIGh1aWRpZ2UgYXV0ZXVyIGdlYnJ1aWt0IG1vZXQgd29yZGVuIG9mLCBhbHMgZGV6ZSBuaWV0IG9wZ2VnZXZlbiBpcywgZGUgcHJlZml4IHZhbiBkZSBodWlkaWdlIHRpamQgKGluIGRlY2hleCBmb3JtYWF0KSc7CiRsYW5nWydwYXJhbV9ub2NhcHRjaGEnXSA9ICdTY2hha2VsIGNhcHRjaGEtb25kZXJzdGV1bmluZyBpbiBoZXQgdXBsb2FkLWZvcm11bGllciB1aXQgKHN0YW5kYWFyZCBhYW4pJzsKJGxhbmdbJ3RpdGxlX3VwbG9hZGZvcm1fdGVtcGxhdGUnXSA9ICdCZXdlcmsgaGV0IHVwbG9hZGZvcm11bGllcnNqYWJsb29uJzsKJGxhbmdbJ2NhcHRjaGFfdGl0bGUnXSA9ICdWb2VyIGRlIHRla3N0IHVpdCBoZXQgcGxhYXRqZSBpbic7CiRsYW5nWydlcnJvcl9jYXB0Y2hhbWlzbWF0Y2gnXSA9ICdJbmdldm9lcmRlIHRla3N0IGtvbXQgbmlldCBvdmVyZWVuIG1ldCBkaWUgaW4gaGV0IHBsYWF0amUnOwokbGFuZ1sndGl0bGVfYXV0b3RodW1ibmFpbF9leHRlbnNpb25zJ10gPSAnQ3JlJmV1bWw7ZXIgdGh1bWJuYWlscyB2b29yIGJlc3RhbmRlbiBtZXQgZGV6ZSBleHRlbnNpZXMnOwokbGFuZ1sndGl0bGVfYXV0b3RodW1ibmFpbF9zaXplJ10gPSAnTWF4aW1hbGUgZ3Jvb3R0ZSAocGl4ZWxzKSB2YW4gZGUgZ2VnZW5lcmVlcmRlIHRodW1ibmFpbHMnOwokbGFuZ1sncHJvbXB0X3VwbG9hZF9pY29uJ10gPSAnVXBsb2FkIGVlbiBpY29vbic7CiRsYW5nWydpbmZvX3N5c2RlZmF1bHQnXSA9ICdEZXplIHRla3N0IHdvcmR0IGdlYnJ1aWt0IGJpaiBoZXQgY3JlJmV1bWw7cmVuIHZhbiBlZW4gbmlldXcgc2phYmxvb24gdmFuIGRpdCB0eXBlJzsKJGxhbmdbJ3RpdGxlX2RldGFpbHJwdF9zeXNkZWZhdWx0J10gPSAnU3lzdGVlbXN0YW5kYWFyZCBkZXRhaWxyYXBwb3J0c2phYmxvb24nOwokbGFuZ1sndGl0bGVfc3VtbWFyeXJwdF9zeXNkZWZhdWx0J10gPSAnU3lzdGVlbXN0YW5kYWFyZCBvbXNjaHJpanZpbmdzc2phYmxvb24nOwokbGFuZ1sndGl0bGVfdXBsb2FkZm9ybV9zeXNkZWZhdWx0J10gPSAnU3lzdGVlbXN0YW5kYWFyZCB1cGxvYWQtZm9ybWxpZXJzamFibG9vbic7CiRsYW5nWyd0ZW1wbGF0ZSddID0gJ1NqYWJsb29uJzsKJGxhbmdbJ3Jlc2V0dG9kZWZhdWx0J10gPSAnSGVyc3RlbCBuYWFyIHN0YW5kYWFyZCc7CiRsYW5nWyd0aXRsZV9zdW1tYXJ5cnB0X3RlbXBsYXRlJ10gPSAnT21zY2hyaWp2aW5nc3NqYWJsb29uJzsKJGxhbmdbJ3RpdGxlX2RldGFpbHJwdF90ZW1wbGF0ZSddID0gJ0RldGFpbHJhcHBvcnRzamFibG9vbic7CiRsYW5nWydwcm9tcHRfbmFtZSddID0gJ05hYW0nOwokbGFuZ1sncHJvbXB0X2RlZmF1bHQnXSA9ICdTdGFuZGFhcmQnOwokbGFuZ1snbGVnZW5kX3VwbG9hZGZvcm0nXSA9ICdVcGxvYWQgZWVuIGJlc3RhbmQnOwokbGFuZ1snZXJyb3JfbWlzc2luZ3BhcmFtJ10gPSAnRWVuIHZlcnBsaWNodGUgcGFyYW1ldGVyIG9udGJyZWVrdCc7CiRsYW5nWydlcnJvcl9taXNzaW5nbmFtZSddID0gJ0VlbiBuYWFtIHZhbiBoZXQgYmVzdGFuZHN0eXBlIG1vZXQgd29yZGVuIG9wZ2VnZXZlbic7CiRsYW5nWydlcnJvcl9taXNzaW5nZXh0ZW5zaW9ucyddID0gJ1Rlbm1pbnN0ZSAmZWFjdXRlOyZlYWN1dGU7biBiZXN0YW5kc2V4dGVuc2llIG1vZXQgd29yZGVuIG9wZ2VnZXZlbic7CiRsYW5nWydlcnJvcl9taXNzaW5naWNvbiddID0gJ0VlbiBpY29vbiBtb2V0IHdvcmRlbiBvcGdlZ2V2ZW4nOwokbGFuZ1snZXJyb3Jfbm9zdWNocm93J10gPSAnRGUgb3BnZWdldmVuIHJpaiBrb24gbmlldCB3b3JkZW4gZ2V2b25kZW4nOwokbGFuZ1snbmFtZV91bmtub3duJ10gPSAnT25iZWtlbmQnOwokbGFuZ1snZGVzY3JpcHRpb25fdW5rbm93biddID0gJ0Jlc3RhbmRzdHlwZWJlc2NocmlqdmluZyB2b29yIG5pZXQtb3ZlcmVlbmtvbWVuZGUgYmVzdGFuZGVuJzsKJGxhbmdbJ2ltYWdlJ10gPSAnUGxhYXRqZSc7CiRsYW5nWydpY29uJ10gPSAnSWNvb24nOwokbGFuZ1snZXh0ZW5zaW9ucyddID0gJ0Jlc3RhbmRzZXh0ZW5zaWVzJzsKJGxhbmdbJ2FkZGZpbGV0eXBlJ10gPSAnVm9lZyBuaWV1dyBiZXN0YW5kc3R5cGUgdG9lJzsKJGxhbmdbJ2ZpbGVfdHlwZXMnXSA9ICdCZXN0YW5kc3R5cGVzJzsKJGxhbmdbJ2Vycm9yX25vY2F0ZWdvcnlpZCddID0gJ0VyIGlzIGdlZW4gY2F0ZWdvcmllLWlkIG9wZ2VnZXZlbic7CiRsYW5nWydlcnJvcl9ub2NhdGVnb3J5J10gPSAnRXIgaXMgZ2VlbiBjYXRlZ29yaWUtaWQgb3BnZWdldmVuJzsKJGxhbmdbJ2Vycm9yX3RlbXBsYXRlbmFtZWV4aXN0cyddID0gJ0VyIGJlc3RhYXQgYWwgZWVuIHNqYWJsb29uIG1ldCBkZXplIG5hYW0nOwokbGFuZ1sncHJvbXB0X3RlbXBsYXRlbmFtZSddID0gJ1NqYWJsb29ubmFhbSc7CiRsYW5nWydwcm9tcHRfdGVtcGxhdGUnXSA9ICdTamFibG9vbic7CiRsYW5nWydwcm9tcHRfbmV3dGVtcGxhdGUnXSA9ICdNYWFrIGVlbiBuaWV1dyBzamFibG9vbic7CiRsYW5nWydoZWxwX09uRG93bmxvYWQnXSA9ICc8cD5HZWdlbmVyZWVyZGUgZ2ViZXVydGVuaXMgbmFkYXQgZWVuIGdlYnJ1aWtlciBrbGFhciBpcyBtZXQgZG93bmxvYWRlbiB2YW4gZWVuIGJlc3RhbmQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPmlkPC9lbT4gLSBVcGxvYWQtaWQ8L2xpPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBCZXN0YW5kc25hYW08L2xpPg0KPGxpPjxlbT5pcDwvZW0+IC0gSVAtYWRyZXMgdmFuIGRlIGRvd25sb2FkZXI8L2xpPg0KPC91bD4NCic7CiRsYW5nWydoZWxwX09uRGVsZXRlQ2F0ZWdvcnknXSA9ICc8cD5HZWdlbmVyZWVyZGUgZ2ViZXVydGVuaXMgYWxzIGVlbiBjYXRlZ29yaWUgaXMgdmVyd2lqZGVyZDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gQ2F0ZWdvcmllbmFhbTwvbGk+DQo8bGk+PGVtPnBhdGg8L2VtPiAtIENhdGVnb3JpZXBhZDwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2hlbHBfT25DcmVhdGVDYXRlZ29yeSddID0gJzxwPkdlZ2VuZXJlZXJkZSBnZWJldXJ0ZW5pcyBhbHMgZWVuIGNhdGVnb3JpZSBpcyBhYW5nZW1hYWt0PC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBDYXRlZ29yaWVuYWFtPC9saT4NCjxsaT48ZW0+ZGVzY3JpcHRpb248L2VtPiAtIENhdGVnb3JpZWJlc2NocmlqdmluZzwvbGk+DQo8bGk+PGVtPnBhdGg8L2VtPiAtIENhdGVnb3JpZXBhZDwvbGk+DQo8bGk+PGVtPnBhdGg8L2VtPiAtIFZsYWcgZGllIGFhbmdlZWZ0IG9mIGRlIGNhdGVnb3JpZSBpbiBlZW4gbGlqc3Qga2FuIHdvcmRlbiBvcGdlbm9tZW48L2xpPg0KPC91bD4NCic7CiRsYW5nWydoZWxwX09uUmVtb3ZlJ10gPSAnPHA+R2VnZW5lcmVlcmRlIGdlYmV1cnRlbmlzIGFscyBlZW4gYmVzdGFuZCB2ZXJ3aWpkZXJkIGlzIHZpYSBkZSBiZWhlZXItIG9mIGRlIGZyb250ZW5kLWludGVyZmFjZTwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gTmFhbSB2YW4gaGV0IHZlcndpamRlcmRlIGJlc3RhbmQ8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gSUQgdmFuIGhldCB2ZXJ3aWpkZXJkZSBiZXN0YW5kPC9saT4NCjxsaT48ZW0+Y2F0ZWdvcnlfaWQ8L2VtPiAtIElEIHZhbiBkZSBjYXRlZ29yaWU8L2xpPg0KPC91bD4NCic7CiRsYW5nWydoZWxwX09uVXBsb2FkJ10gPSAnPHA+R2VnZW5lcmVlcmRlIGdlYmV1cnRlbmlzIGFscyBlZW4gbmlldXcgYmVzdGFuZCBpcyBnZXVwbG9hZCB2aWEgZGUgYmVoZWVyLSBvZiBmcm9udGVuZC1pbnRlcmZhY2U8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPmNhdGVnb3J5PC9lbT4gLSBEZSBjYXRlZ29yaWVuYWFtPC9saT4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gTmFhbSB2YW4gaGV0IGdldXBsb2FkZSBiZXN0YW5kPC9saT4NCjxsaT48ZW0+c2l6ZTwvZW0+IC0gR3Jvb3R0ZSB2YW4gaGV0IGdldXBsb2FkZSBiZXN0YW5kPC9saT4NCjxsaT48ZW0+c3VtbWFyeTwvZW0+IC0gS29ydGUgYmVzY2hyaWp2aW5nIHZhbiBoZXQgZ2V1cGxvYWRlIGJlc3RhbmQgKG9wdGlvbmVlbCk8L2VtPjwvbGk+DQo8bGk+PGVtPmRlc2NyaXB0aW9uPC9lbT4gLSBMYW5nZSBiZXNjaHJpanZpbmcgdmFuIGhldCBnZXVwbG9hZGUgYmVzdGFuZCAob3B0aW9uZWVsKTwvZW0+PC9saT4NCjxsaT48ZW0+YXV0aG9yPC9lbT4gLSBBdXRldXIgdmFuIGhldCBnZXVwbG9hZGUgYmVzdGFuZCAoaW5kaWVuIGJlc2NoaWtiYWFyKTwvZW0+PC9saT4NCjxsaT48ZW0+aXBfYWRkcmVzczwvZW0+IC0gSVAtYWRyZXMgdmFuIGRlIGNsaWVudCBkaWUgaGV0IGJlc3RhbmQgdXBsb2FkZTwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2luZm9fZXZlbnRfb25kZWxldGVjYXRlZ29yeSddID0gJ0dlZ2VuZXJlZXJkZSBnZWJldXJ0ZW5pcyBhbHMgZWVuIGNhdGVnb3JpZSBpcyB2ZXJ3aWpkZXJkJzsKJGxhbmdbJ2luZm9fZXZlbnRfb25jcmVhdGVjYXRlZ29yeSddID0gJ0dlZ2VuZXJlZXJkZSBnZWJldXJ0ZW5pcyBhbHMgZWVuIGNhdGVnb3JpZSBpcyBhYW5nZW1hYWt0JzsKJGxhbmdbJ2luZm9fZXZlbnRfb25kb3dubG9hZCddID0gJ0dlZ2VuZXJlZXJkZSBnZWJldXJ0ZW5pcyBhbHMgZWVuIGJlc3RhbmQgaXMgZ2Vkb3dubG9hZCc7CiRsYW5nWydpbmZvX2V2ZW50X29udXBsb2FkJ10gPSAnR2VnZW5lcmVlcmRlIGdlYmV1cnRlbmlzIGFscyBlZW4gYmVzdGFuZCBpcyBnZXVwbG9hZCc7CiRsYW5nWydpbmZvX2V2ZW50X29ucmVtb3ZlJ10gPSAnR2VnZW5lcmVlcmRlIGdlYmV1cnRlbmlzIGFscyBlZW4gYmVzdGFuZCBpcyB2ZXJ3aWpkZXJkJzsKJGxhbmdbJ3RpdGxlX3VzZXJ0YWdfb251cGxvYWQnXSA9ICdBYW4gdGUgcm9lcGVuIGdlYnJ1aWtlcnNnZWRlZmluaWVlcmQgbGFiZWwgYWxzIGRlIHVwbG9hZCB2b2x0b29pZCBpcyAnOwokbGFuZ1snbm9uZSddID0gJ0dlZW4nOwokbGFuZ1snbWF0Y2hlc2ZvdW5kJ10gPSAnR2VlbiBvdmVyZWVua29tc3RlbiBnZXZvbmRlbic7CiRsYW5nWydmaWx0ZXInXSA9ICdGaWx0ZXIgJzsKJGxhbmdbJ3RpdGxlX3JlZGlyZWN0b251cGxvYWQnXSA9ICdWZXJ3aWpzIG5hYXIgcGFnaW5hLWlkL2FsaWFzIGJpaiBnZWJydWlrZXItdXBsb2FkJzsKJGxhbmdbJ2RldGFpbHMnXSA9ICdEZXRhaWxzICc7CiRsYW5nWydjb25maXJtX3ByZWZlcmVuY2VzJ10gPSAnV2VldCB1IHpla2VyIGRhdCBkZSB2b29ya2V1cmVuIGFhbmdlcGFzdCBtb2V0ZW4gd29yZGVuPyc7CiRsYW5nWydlcnJvcl9ub2ZpbGVzdXBsb2FkZWQnXSA9ICdFciB6aWpuIGdlZW4gYmVzdGFuZGVuIGdldXBsb2FkJzsKJGxhbmdbJ3Byb21wdF9yZXBsYWNlJ10gPSAnU3RhIG92ZXJzY2hyaWp2ZW4gdG9lJzsKJGxhbmdbJ2luZm9fcmVwbGFjZSddID0gJ1ZlcnZhbmcgaWVkZXIgYmVzdGFuZCBtZXQgZGV6ZWxmZGUgbmFhbSAodmVyYW5kZXJ0IGRlIGlkIG5pZXQpJzsKJGxhbmdbJ3BhcmFtX25vX2luaXRpYWwnXSA9ICdUb29uIGdlZW4gaW5pdGkmZXVtbDtsZSByZXN1bHRhdGVuIGFscyBoZXQgZmlsdGVyIGFhbiBzdGFhdCc7CiRsYW5nWydwYXJhbV9rZXknXSA9ICdHZWVmIGVlbiBleHRyYSBtb2R1bGUtc2xldXRlbCBvbSBkZSB1cGxvYWRzIHZlcmRlciB0ZSBjYXRlZ29yaXNlcmVuLiBEZXplIHNsZXV0ZWwga2FuIGVlbiBnZWVuY29kZWVyZGUgc3RyaW5nIHppam4gem9hbHM6ICYjMDM5O2Z1c2Vyczp1aWQmIzAzOTssIGV0Yy4gRGV6ZSBwYXJhbWV0ZXIgaXMgbWVlc3RhbCBhbGxlZW4gbm9kaWcgYWxzIGRlIFVwbG9hZHMtbW9kdWxlIGluIGVlbiBhbmRlcmUgbW9kdWxlIHdvcmR0IG9wZ2Vub21lbi4nOwokbGFuZ1sncGFyYW1fbm9hdXRob3InXSA9ICdWZXJiZXJnIGhldCBhdXRldXJzdmVsZCB1aXQgaGV0IHVwbG9hZC1mb3JtdWxpZXIuIERlemUgcGFyYW1ldGVyIGlzIGFsbGVlbiBnZWxkaWcgYWxzIG1vZGU9JiMwMzk7dXBsb2FkJiMwMzk7LiBBbHMgZGUgRnJvbnRFbmRVc2Vycy1tb2R1bGUgYWFud2V6aWcgaXMgZW4gZWVuIGdlYnJ1aWtlciBpcyBpbmdlbG9nZCBkYW4gemFsIGVlbiB2ZXJib3JnZW4gdmVsZCBkZSBuYWFtIGJldmF0dGVuIHZhbiBkZSBodWlkaWdlLCBpbmdlbG9nZGUgZ2VicnVpa2VyJzsKJGxhbmdbJ3BhcmFtX3VwbG9hZF9pZCddID0gJ3VwbG9hZF9pZD0mcXVvdDtpZCZxdW90OyAtIHNwZWNpZmljZWVyIGVlbiBlbmtlbCBiZXN0YW5kIHZvb3IgZGUgdXJsL2xpbmsgb2YgZW5rZWxlIG1vZHVzIChib3ZlbnN0YWFuZCknOwokbGFuZ1sncGFyYW1fZGV0YWlsdGVtcGxhdGUnXSA9ICdHZWJydWlrIGVlbiBzamFibG9vbiBtZXQgZGV6ZSBuYWFtIHZvb3IgaGV0IGdlZGV0YWlsbGVlcmRlIHJhcHBvcnQnOwokbGFuZ1sncGFyYW1fdGVtcGxhdGUnXSA9ICdHZWJydWlrIGVlbiBzamFibG9vbiBtZXQgZGV6ZSBuYWFtIHZvb3IgZGl0IHJhcHBvcnQgb2YgZm9ybXVsaWVyLiBEZXplIG1vZHVzIHdvcmR0IGdlYnJ1aWt0IG9tIHRlIGJlcGFsZW4gd2Vsa2UgdHlwZSBzamFibG9vbiB2ZXJwbGljaHQgaXMgZW4gdmVydm9sZ2VucyB3b3JkdCBnZXpvY2h0IG9wIGVlbiBvdmVyZWVua29tZW5kZSBuYWFtIGJpbm5lbiBkYXQgdHlwZSc7CiRsYW5nWydwYXJhbV9maWx0ZXInXSA9ICdUb29uIGhldCBmaWx0ZXJmb3JtdWxpZXInOwokbGFuZ1sncGFyYW1fbm9faW50aXRpYWwnXSA9ICdBbGxlZW4gemludm9sIGFscyBkZSBmaWx0ZXJwYXJhbWV0ZXIgb3BnZWdldmVuIGlzIG9mIHN0YW5kYWFyZCBhYW4uIERlemUgcGFyYW1ldGVyIGdlZWZ0IGFhbiBvZiBkZSBpbml0aSZldW1sO2xlIHJlc3VsdGF0ZW4gdGVydWdnZWdldmVuIG1vZXRlbiB3b3JkZW4nOwokbGFuZ1sncGFyYW1fZmlsZXR5cGVzJ10gPSAnVG9vbiBhbGxlZW4gYmVzdGFuZGVuIHdhYXJ2YW4gaGV0IHR5cGUgb3ZlcmVlbmtvbXQgbWV0IGRlemUga29tbWFnZXNjaGVpZGVubGlqc3QnOwokbGFuZ1sncGFyYW1fc29ydG9yZGVyJ10gPSAnICA8cD5Tb3J0ZWVydm9sZ29yZGUNCiAgPHVsPg0KICA8bGk+PGVtPmRhdGVfYXNjPC9lbT4gLSBzb3J0ZWVyIG9wIG9wbG9wZW5kZSBkYXR1bTwvbGk+DQogIDxsaT48ZW0+ZGF0ZV9kZXNjPC9lbT4gLSBzb3J0ZWVyIG9wIGFmbG9wZW5kZSBkYXR1bTwvbGk+DQogIDxsaT48ZW0+bmFtZV9hc2M8L2VtPiAtIHNvcnRlZXIgb3Agb3Bsb3BlbmRlIG5hYW08L2xpPg0KICA8bGk+PGVtPm5hbWVfZGVzYzwvZW0+IC0gc29ydGVlciBvcCBhZmxvcGVuZGUgbmFhbTwvbGk+DQogIDxsaT48ZW0+c2l6ZV9hc2M8L2VtPiAtIHNvcnRlZXIgb3Agb3Bsb3BlbmRlIGdyb290dGU8L2xpPg0KICA8bGk+PGVtPnNpemVfZGVzYzwvZW0+IC0gc29ydGVlciBvcCBhZmxvcGVuZGUgZ3Jvb3R0ZTwvbGk+DQogIDxsaT48ZW0+ZGVzY19hc2M8L2VtPiAtIHNvcnRlZXIgb3Agb3Bsb3BlbmRlIGJlc2NocmlqdmluZzwvbGk+DQogIDxsaT48ZW0+ZGVzY19kZXNjPC9lbT4gLSBzb3J0ZWVyIG9wIGFmbG9wZW5kZSBiZXNjaHJpanZpbmc8L2xpPg0KICA8bGk+PGVtPmF1dGhvcl9hc2M8L2VtPiAtIHNvcnRlZXIgb3Agb3Bsb3BlbmRlIGF1dGV1cjwvbGk+DQogIDxsaT48ZW0+YXV0aG9yX2Rlc2M8L2VtPiAtIHNvcnRlZXIgb3AgYWZsb3BlbmRlIGF1dGV1cjwvbGk+DQogIDxsaT48ZW0+aXBfYXNjPC9lbT4gLSBzb3J0ZWVyIG9wIG9wbG9wZW5kIElQLWFkcmVzPC9saT4NCiAgPGxpPjxlbT5pcF9kZXNjPC9lbT4gLSBzb3J0ZWVyIG9wIGFmbG9wZW5kIElQX2FkcmVzPC9saT4NCiAgPGxpPjxlbT5yYW5kb208L2VtPiAtIHNvcnRlZXIgb3Agd2lsbGVrZXVyaWdlIHNvcnRlZXJ2b2xnb3JkZTwvbGk+DQogIDwvdWw+DQogIDwvcD4nOwokbGFuZ1sncGFyYW1fbGlzdGluZ3RlbXBsYXRlJ10gPSAnU2phYmxvb24gbmEgZG9vcmtsaWtrZW4gdmFuYWYgZGUgQ2F0ZWdvcmllc2FtZW52YXR0aW5ncyBwYWdpbmEnOwokbGFuZ1sncGFyYW1fbGlzdGluZ3NvcnRvcmRlciddID0gJ1NvcnRlZXJ2b2xnb3JkZSAoYWxhIHBhcmFtX3NvcnRvcmRlcikgbmEgZG9vcmtsaWtrZW4gdmFuYWYgZGUgQ2F0ZWdvcmllc2FtZW52YXR0aW5ncyBwYWdpbmEnOwokbGFuZ1sncGFyYW1fZmlsZWV4dGVuc2lvbnMnXSA9ICcgDQpmaWxlX2V4dGVuc2lvbnM9JnF1b3Q7ZXh0MSxleHQyLGV4dDMmcXVvdDsNCjxwPkFsbGVlbiBnZWxkaWcgYWxzIG1vZHVzPXVwbG9hZC4gRGV6ZSBwYXJhbWV0ZXIgYmVwZXJrdCBkZSB0eXBlIGJlc3RhbmRlbiBkaWUga3VubmVuIHdvcmRlbiBnZXVwbG9hZC4gRGl0IG92ZXJzY2hyaWpmdCBpZWRlcmUgaW5zdGVsbGluZyBpbiBkZSBtb2R1bGUtdm9vcmtldXJlbi48L3A+JzsKJGxhbmdbJ3BhcmFtX2NvdW50J10gPSAnY291bnQ9JnF1b3Q7TiZxdW90Ow0KPHA+RWVuIHBhcmFtZXRlciBvbSBhbGxlZW4gZGUgZWVyc3RlIE4gcmVzdWx0YXRlbiB2YW4gZGUgcXVlcnkgdGUgdG9uZW4uIFBhZ2luZXJpbmcgem91IGJldGVyIHppam4sIG1hYXIgZGl0IHdlcmt0IG9vazwvcD4nOwokbGFuZ1sncGFyYW1fY2F0ZWdvcnknXSA9ICdjYXRlZ29yeT0mcXVvdDtuYW1lJnF1b3Q7DQo8cD48Yj5MZXRvcDo8L2I+IENhdGVnb3JpZSBrYW4gJnF1b3Q7YWxsZXMmcXVvdDsgemlqbiwgd2F0IGVlbiBsaWpzdCBvcGxldmVydCBtZXQgYWxsZSB1cGxvYWRzIHZhbiBhbGxlIDxlbT5vcHNvbWJhcmU8L2VtPiBjYXRlZ29yaWUmZXVtbDtuPC9wPic7CiRsYW5nWydwYXJhbV9tb2RlJ10gPSAnICA8dWw+DQogIDxsaT48ZW0+ZGV0YWlsZWQ8L2VtPiAtIFRvb24gZWVuIGdlZGV0YWlsbGVlcmRlIGxpanN0IG1ldCBhbGxlIGJlc3RhbmRlbiBpbiBkZXplIGNhdGVnb3JpZTwvbGk+DQogIDxsaT48ZW0+dXBsb2FkPC9lbT4gLSBUb29uIGVlbiBmb3JtdWxpZXIgb20gZnJvbnRlbmQtZ2VicnVpa2VycyB0b2UgdGUgc3RhYW4gZWVuIGJlc3RhbmQgdGUgdXBsb2FkZW48L2xpPg0KICA8bGk+PGVtPnVybCA8aT5vcjwvaT4gbGluazwvZW0+IC0gVG9vbiBlZW4gbGluayBuYWFyIGVlbiBiZXN0YW5kPC9saT4NCiAgPGxpPjxlbT5zdW1tYXJ5PC9lbT4gLSBUb29uIGVlbiBzYW1lbmdldmF0dGUgbGlqc3QgbWV0IGFsbGUgYmVzdGFuZGVuIGluIGRlIGNhdGVnb3JpZTwvbGk+DQogIDxsaT48ZW0+c2luZ2xlPC9lbT4gLSBUb29uIGVlbiBnZWRldGFpbGxlZXJkIHJhcHBvcnQgb3ZlciBlZW4gaW5kaXZpZHVlbGUgdXBsb2FkPC9saT4NCiAgPGxpPjxlbT5zaW5nbGVzdW1tYXJ5PC9lbT4gLSBUb29uIGVlbiBzYW1lbmdldmF0IHJhcHBvcnQgb3ZlciBlZW4gaW5kaXZpZHVlbGUgdXBsb2FkPC9saT4NCiAgPC91bD4nOwokbGFuZ1sncGFyYW1fc2VsZWN0Zm9ybSddID0gJ0FscyBkZSAmIzAzOTtzZWxlY3RlZXImIzAzOTstbW9kdXMgd29yZHQgZ2VicnVpa3QgYmV2YXQgZGV6ZSBwYXJhbWV0ZXIgaGV0IGZvcm11bGllci1pZCB2YW4gaGV0IGJvdmVubGlnZ2VuZGUgZm9ybXVsaWVyIChwYXJlbnQpLiBXb3JkdCBnZWJydWlrdCBiaWogaGV0IGRvb3JnZXZlbiB2YW4gcGFyYW1ldGVycyc7CiRsYW5nWydwYXJhbV9zZWxlY3RuYW1lJ10gPSAnQWxzIGRlICYjMDM5O3NlbGVjdGVlciYjMDM5Oy1tb2R1cyB3b3JkdCBnZWJydWlrdCBzcGVjaWZpY2VlcnQgZGV6ZSBwYXJhbWV0ZXIgZGUgdmVsZG5hYW0nOwokbGFuZ1sncGFyYW1fc2VsZWN0dmFsdWUnXSA9ICdBbHMgZGUgJiMwMzk7c2VsZWN0ZWVyJiMwMzk7LW1vZHVzIHdvcmR0IGdlYnJ1aWt0IHNwZWNpZmljZWVydCBkZXplIHBhcmFtZXRlciBkZSBzdGFuZGFhcmQgdmVsZHdhYXJkZSc7CiRsYW5nWydwYXJhbV9zZWxlY3Rub25lJ10gPSAnQWxzIGRlICYjMDM5O3NlbGVjdGVlciYjMDM5Oy1tb2R1cyB3b3JkdCBnZWJydWlrdCBzcGVjaWZpY2VlcnQgZGV6ZSBwYXJhbWV0ZXIgb2YgJiMwMzk7Z2VlbiYjMDM5OyBlZW4gZ2VsZGlnZSBrZXV6ZSBpcy4nOwokbGFuZ1sncmV0dXJudG9tb2R1bGUnXSA9ICdLZWVyIHRlcnVnIG5hYXIgaGV0IG1vZHVsZS1zY2hlcm0nOwokbGFuZ1snZXJyb3Jfbm9jYXRlZ29yaWVzJ10gPSAnRXIgemlqbiBnZWVuIGNhdGVnb3JpZSZldW1sO24gZ2VkZWZpbmllZXJkJzsKJGxhbmdbJ3RpdGxlX2VuZm9yY2VleHRlbnNpb25zJ10gPSAnRXh0ZW5zaWVzIGJpaiBhbGxlIGdldXBsb2FkZSBiZXN0YW5kZW4gemlqbiB2ZXJwbGljaHQnOwokbGFuZ1sncmVzdG9yZWRlZmF1bHRzY29uZmlybSddID0gJ0RlemUgaGFuZGVsaW5nIGhlcnN0ZWx0IGRlIHNqYWJsb29uIG5hYXIgZGUgc3lzdGVlbXN0YW5kYWFyZC4gSWVkZXJlIHZlcmFuZGVyaW5nIGRpZSB1IGdlbWFha3QgaGVlZnQgemFsIHZlcmxvcmVuIGdhYW4uIFdlZXQgdSB6ZWtlciBkYXQgdSBkb29yIHdpbHQgZ2Fhbj8nOwokbGFuZ1snaW5mb190aHVtYm5haWwnXSA9ICdFZW4gb3B0aW9uZWVsIHRodW1ibmFpbC1iZXN0YW5kJzsKJGxhbmdbJ3RodW1ibmFpbCddID0gJ1RodW1ibmFpbCAnOwokbGFuZ1snbmV3dGh1bWJuYWlsJ10gPSAnVXBsb2FkIGVlbiBuaWV1d2UgdGh1bWJuYWlsJzsKJGxhbmdbJ2luZm9fc3VtbWFyeSddID0gJ0VlbiBrb3J0ZSBiZXNjaHJpanZpbmcgdmFuIGhldCBiZXN0YW5kIChvcHRpb25lZWwsIGFuZGVycyB3b3JkdCBkZSBiZXN0YW5kc25hYW0gem9uZGVyIGV4dGVuc2llIGdlYnJ1aWt0KSAnOwokbGFuZ1snaW5mb19jYXRlZ29yeW5hbWUnXSA9ICdFZW4ga29ydGUgbmFhbSB2b29yIGRlIGNhdGVnb3JpZSc7CiRsYW5nWydpbmZvX2NhdGVnb3J5ZGVzYyddID0gJ0VlbiBiZXNjaHJpanZpbmcgdmFuIGRlIGNhdGVnb3JpZSc7CiRsYW5nWydpbmZvX2NhdGVnb3J5cGF0aCddID0gJ0RlIG1hcG5hYW0gYmlubmVuIGRlIHVwbG9hZHMtbWFwIGRpZSBnZWJydWlrdCB6YWwgd29yZGVuIG9tIGJlc3RhbmRlbiBpbiBkZXplIGNhdGVnb3JpZSBpbiBvcCB0ZSBzbGFhbi4nOwokbGFuZ1snaW5mb19kZXN0bmFtZSddID0gJ0dlYnJ1aWsgaGV0ICYjMDM5O1VwbG9hZCBhbHMmIzAzOTsgdmVsZCBvbSBkZSBuYWFtIHZhbiBoZXQgYmVzdGFuZCB0aWpkZW5zIGhldCB1cGxvYWRlbiB0ZSB2ZXJhbmRlcmVuLiBMYWF0IGxlZWcgb20gZGUgYmVzdGFhbmRlIGJlc3RhbmRzbmFhbSB0ZSBnZWJydWlrZW4uJzsKJGxhbmdbJ2Vycm9yX2NhbnRjcmVhdGVkaXJlY3RvcnknXSA9ICdLb24gZGUgbWFwIG5pZXQgYWFubWFrZW4nOwokbGFuZ1snZXJyb3Jfbm9tYWlsZXJtb2R1bGUnXSA9ICdFciBrb24gZ2VlbiBpbnN0YW50aWUgdmFuIGRlIENNU01haWxlci1tb2R1bGUgd29yZGVuIGdlbWFha3QnOwokbGFuZ1sndXBsb2FkX25vdGlmaWNhdGlvbiddID0gJ0VlbiBuaWV1dyBiZXN0YW5kIGlzIGdldXBsb2FkJzsKJGxhbmdbJ3RpdGxlX2VtYWlsX29uX3VwbG9hZCddID0gJ1N0dXVyIHVwbG9hZC1zcGVjaWZpY2F0aWVzIG5hYXI6JzsKJGxhbmdbJ2VtYWlsX3RlbXBsYXRlJ10gPSAnRW1haWxzamFibG9vbic7CiRsYW5nWyd0aXRsZV9kdW1teV9pbmRleF9odG1sJ10gPSAnQ3JlJmV1bWw7ZXIgbGVnZSBpbmRleC5odG1sIGJlc3RhbmRlbiBpbiBpZWRlcmUgbWFwPzxici8+PGVtPkJlc3RhYW5kZSBpbmRleC5odG1sIGJlc3RhbmRlbiBibGlqdmVuIGJlaG91ZGVuPC9lbT4nOwokbGFuZ1snYWJvdXQnXSA9ICdPdmVyJzsKJGxhbmdbJ2Vycm9yX3Blcm1pc3Npb25kZW5pZWQnXSA9ICdUb2VnYW5nIGdld2VpZ2VyZC4gQ29udHJvbGVlciB1dyByZWNodGVuLic7CiRsYW5nWydlcnJvcl9jb3VsZG5vdHdyaXRlJ10gPSAnS29uIG5pZXQgc2NocmlqdmVuJzsKJGxhbmdbJ2FkZGNhdGVnb3J5J10gPSAnVm9lZyBjYXRlZ29yaWUgdG9lJzsKJGxhbmdbJ2FsbCddID0gJ0FsbGVzJzsKJGxhbmdbJ2FyZXlvdXN1cmUnXSA9ICdaZWtlciB3ZXRlbj8nOwokbGFuZ1snYXV0aG9yJ10gPSAnQXV0ZXVyJzsKJGxhbmdbJ2NhbmNlbCddID0gJ0FubnVsZWVyJzsKJGxhbmdbJ2Nhbm5vdG1vZGlmeXBhdGgnXSA9ICcoSGV0IHBhZCBrYW4gbmlldCB3b3JkZW4gYWFuZ2VwYXN0KSc7CiRsYW5nWydjYXRlZ29yaWVzJ10gPSAnQ2F0ZWdvcmllJmV1bWw7bic7CiRsYW5nWydjYXRlZ29yeSddID0gJ0NhdGVnb3JpZSc7CiRsYW5nWydtZXNzYWdlX2NhdGVnb3J5YWRkZWQnXSA9ICdDYXRlZ29yaWUgdG9lZ2V2b2VnZCc7CiRsYW5nWydkYXRlJ10gPSAnRGF0dW0nOwokbGFuZ1snZGF0ZXVwbG9hZGVkJ10gPSAnVXBsb2FkLWRhdHVtJzsKJGxhbmdbJ2RlZmF1bHQnXSA9ICdTdGFuZGFhcmRlbic7CiRsYW5nWydkZWxldGUnXSA9ICdWZXJ3aWpkZXInOwokbGFuZ1snZGVzY3JpcHRpb24nXSA9ICdCZXNjaHJpanZpbmcnOwokbGFuZ1snZGVzdG5hbWUnXSA9ICdVcGxvYWQgYWxzJzsKJGxhbmdbJ2RldGFpbF90ZW1wbGF0ZSddID0gJ0RldGFpbHNqYWJsb29uJzsKJGxhbmdbJ2Rvd25sb2FkZWQnXSA9ICdCZXN0YW5kICVzIHdhcyBnZWRvd25sb2FkLic7CiRsYW5nWydkb3dubG9hZHMnXSA9ICdEb3dubG9hZHMgJzsKJGxhbmdbJ2VkaXQnXSA9ICdCZXdlcmsnOwokbGFuZ1snZWRpdGNhdGVnb3J5J10gPSAnQmV3ZXJrIGNhdGVnb3JpZSc7CiRsYW5nWydlZGl0dXBsb2FkJ10gPSAnQmV3ZXJrIFVwbG9hZCc7CiRsYW5nWydlcnJvciddID0gJ0ZvdXQhJzsKJGxhbmdbJ2Vycm9yX3BhdGhpbnVzZSddID0gJ0VlbiBjYXRlZ29yaWUgZGllIGRhdCBwYWQgZ2VicnVpa3QgYmVzdGFhdCBhbCc7CiRsYW5nWydlcnJvcl9jYXRlZ29yeWV4aXN0cyddID0gJ0ZvdXQ6IGNhdGVnb3JpZSBiZXN0YWF0IGFsJzsKJGxhbmdbJ2Vycm9yX2NhdGVnb3J5bm90ZW1wdHknXSA9ICdGb3V0ISBLYW4gZ2VlbiBjYXRlZ29yaWUgdmVyd2lqZGVyZW4gZGllIG5pZXQgbGVlZyBpcyc7CiRsYW5nWydlcnJvcl9jYXRlZ29yeW5vdGZvdW5kJ10gPSAnRm91dDogY2F0ZWdvcmllIG5pZXQgZ2V2b25kZW4nOwokbGFuZ1snZXJyb3JfZGJlcnJvciddID0gJ0ZvdXQ6IERhdGFiYXNlZm91dCEnOwokbGFuZ1snZXJyb3JfZW1wdHljYXRlZ29yeSddID0gJ0ZvdXQ6IExlZ2UgY2F0ZWdvcmllISc7CiRsYW5nWydlcnJvcl9lbXB0eXBhdGgnXSA9ICdGb3V0OiBMZWVnIHBhZCEnOwokbGFuZ1snZXJyb3JfZmlsZWV4aXN0cyddID0gJ0ZvdXQhIEJlc3RhbmQgJXMgYmVzdGFhdCBhbC4nOwokbGFuZ1snZXJyb3JfZmlsZW5vdGZvdW5kJ10gPSAnRm91dCEgQmVzdGFuZCAlcyBpcyBuaWV0IGdldm9uZGVuLic7CiRsYW5nWydlcnJvcl9pbnN1ZmZpY2llbnRwYXJhbXMnXSA9ICdGb3V0OiBPbnZvbGRvZW5kZSBwYXJhbWV0ZXJzIGFhbiBkZSBtb2R1bGUgZ2VnZXZlbiEnOwokbGFuZ1snZXJyb3JfaW52YWxpZGF1dGhvciddID0gJ0ZvdXQ6IE9uZ2VsZGlnZSAob2YgbGVnZSkgYXV0ZXVyLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkY2F0ZWdvcnknXSA9ICdGb3V0OiBPbmdlbGRpZ2UgKG9mIGxlZ2UpIGNhdGVnb3JpZS4nOwokbGFuZ1snZXJyb3JfaW52YWxpZGRlc2NyaXB0aW9uJ10gPSAnRm91dDogT25nZWxkaWdlIChvZiBsZWdlKSBiZXNjaHJpanZpbmcuJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRmaWxlJ10gPSAnRm91dDogT25nZWxkaWdlIChvZiBsZWdlKSBiZXN0YW5kc25hYW0uJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1cGxvYWRmaWxlbmFtZSddID0gJ0ZvdXQ6IEJlc3RhbmRlbiBtb2V0IGRpZSBuYWFtICh3YWFyc2NoaWpubGlqayBkZSBleHRlbnNpZSkgemlqbiBuaWV0IHRvZWdlc3RhYW4gKCVzKS4nOwokbGFuZ1snZXJyb3JfaW52YWxpZHVwbG9hZGlkJ10gPSAnRm91dDogT25nZWxkaWdlIHVwbG9hZC1pZCc7CiRsYW5nWydlcnJvcl9ub2ZpbGVzJ10gPSAnRm91dDogR2VlbiBvdmVyZWVua29tc3RpZ2UgYmVzdGFuZGVuISc7CiRsYW5nWydmaWxlcyddID0gJ0Jlc3RhbmRlbic7CiRsYW5nWydmaXhtZSddID0gJ0hlcnN0ZWwgc3BhdGllcyc7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdCZXN0YW5kZW4gKFVwbG9hZHMtbW9kdWxlKSc7CiRsYW5nWydoZWxwJ10gPSAnPGgzPldhdCBkb2V0IGhldD88L2gzPg0KPHA+RGl0IGlzIGVlbiBtb2R1bGUgd2Fhcm1lZSBiZXN0YW5kZW4gZ2V1cGxvYWQgZW4gZ2Vkb3dubG9hZCBrdW5uZW4gd29yZGVuIG5hYXIgZW4gdmFuIHV3IHdlYnNpdGUuICBIZXQgaG91ZHQgYmlqIGRpZSBiZXN0YW5kZW4gdXBsb2FkIGVuIHdlIHplIGhlZWZ0IGdlZG93bmxvYWQuIE9vayBrdW50IHUgYmVzdGFuZGVuIGluZGVsZW4gaW4gY2F0ZWdvcmllJmV1bWw7biBlbiBkZXplIGJlc3RhbmRlbiBiZWhlcmVuIHpvYWxzIGllZGVyZSBiZWhlZXJkZXIgem91IGRvZW4uPC9wPiANCjxoMz5Ib2UgZ2VicnVpa3QgdSBoZXQ8L2gzPg0KPHA+TmFkYXQgZGUgbW9kdWxlIGlzIGdlaW5zdGFsbGVlcmQgbW9ldCAmZWFjdXRlOyZlYWN1dGU7biBvZiBtZWVyZGVyZSBjYXRlZ29yaWUmZXVtbDtuIChiZWtlbmQgYWxzIG1hcHBlbikgYWFubWFrZW4gd2FhciBkZSBiZXN0YW5kZW4gbmFhcnRvZSBnZXVwbG9hZCBrdW5uZW4gd29yZGVuLiBWZXJ2b2xnZW5zIHBsYWF0c3QgdSBlZW4gdGFnIGluIGVlbiBwYWdpbmEgb2Ygc2phYmxvb24gem9hbHMgYmlqdm9vcmJlZWxkIHtjbXNfbW9kdWxlIG1vZHVsZT0mcXVvdDtVcGxvYWRzJnF1b3Q7IGNhdGVnb3J5PSZxdW90O3NvbWVjYXRlZ29yeSZxdW90OyBtb2RlPSZxdW90O3NvbWVtb2RlJnF1b3Q7fS4gTW9kZSAobW9kdXMpIGtvbXQgZGFhcm1lZSBvdmVyZWVuIG1ldCBlZW4gdmFuIGRlIG9uZGVyc3RhYW5kZSBvcHRpZXMuIERlIHVpdHZvZXIgaXMgYWZoYW5rZWxpamsgdmFuIGRlIG1vZHVzIGRpZSB1IHNlbGVjdGVlcnQuPC9wPg0KPHA+RGV6ZSBtb2R1bGUga2FuIGluIGRlIEZyb250ZW5kVXNlcnMtbW9kdWxlIGdlYnJ1aWt0IHdvcmRlbiAob3B0aW9uZWVsKSBvbSBpbmZvcm1hdGllIHRlIHZlcnphbWVsZW4gb3ZlciBpZWRlcmUgaW5nZWxvZ2RlIGdlYnJ1aWtlciBkaWUgaGV0IGZvcm11bGllciAoZGVlbHMpIGludnVsbGVuIHdhbm5lZXIgemUgYmVzdGFuZGVuIHVwbG9hZGVuLjwvcD4NCjxoMz5SZWNodGVuPC9oMz4NCjx1bD4NCjxsaT48ZW0+TWFuYWdlIFVwbG9hZHM8L2VtPiByZWNodCBpcyBub2RpZyBvbSBkZSBjYXRlZ29yaWUmZXVtbDtuLCBlbiBkZSBkYWFyb25kZXIgdmFsbGVuZGUgYmVzdGFuZGVuLCB0ZSBrdW5uZW4gYmVoZXJlbi48L2xpPg0KPGxpPjxlbT5Nb2RpZnkgVGVtcGxhdGVzPC9lbT4gcmVjaHQgaXMgbm9kaWcgb20gZWVuIHNqYWJsb29uIHRlIGt1bm5lbiBiZXdlcmtlbi48L2xpPg0KPGxpPjxlbT5Nb2RpZnkgU2l0ZSBQcmVmZXJlbmNlcy9lbT4gcmVjaHQgbWFha3QgaGV0IG1vZ2VsaWprIGRlIGJlc3RhbmRzaW5zdGVsbGluZ2VuIGFhbiB0ZSBwYXNzZW4uPC9saT4NCjwvdWw+DQo8aDM+RW1haWxlbjwvaDM+DQo8cD5EZSBtb2R1bGUgaGVlZnQgZGUgbW9nZWxpamtoZWlkIGVtYWlscyB0ZSB2ZXJzdHVyZW4gYWxzIGVlbiBiZXN0YW5kIGlzIGdldXBsb2FkLCB6aWUgb29rIGhldCBWb29ya2V1cmVuLXRhYmJsYWQuIERlIG1vZ2VsaWpraGVpZCBpcyBhbGxlZW4gYmVzY2hpa2JhYXIgYWxzIGRlIDxiPkNNU01haWxlcjwvYj4gbW9kdWxlIGdlJml1bWw7bnN0YWxsZWVyZCBlbiBnZWNvbmZpZ3VyZWVyZCBpcy4gRGl0IGlzIGVlbiA8ZW0+b3B0aW9uZWxlPC9lbT4gc3RhcCBlbiBhbHMgZGUgQ01TTWFpbGVyLW1vZHVsZSBvbnRicmVla3QgemFsIGRlIGdlYnJ1aWtlciBkaWUgbmlldCB2b29yZ2VzY2hvdGVsZCBrcmlqZ2VuLiBFciB3b3JkdCBkYW4gYWxsZWVuIGVlbiBsb2diZXJpY2h0IGluIGhldCBiZWhlZXJsb2dib2VrIGdlc2NocmV2ZW4uPC9wPg0KPGgzPlN5c3RlZW1pbnN0ZWxsaW5nZW48L2gzPg0KPHA+PGI+T3BtZXJraW5nOjwvYj4gRGV6ZSBtb2R1bGUga2FuIG5pZXQgb25kZXIgZW5pZ2UgYmVzdGFuZHNncm9vdHRlYmVwZXJraW5nIHZhbiBQSFAgdmFuZGFhbiBrb21lbi4gQWxzIGRlIGJlc3RhbmRzZ3Jvb3R0ZSBlZW4gcHJvYmxlZW0gaXMsIG1vZXQgdSBoZXQgcGhwLmluaSBiZXN0YW5kIGVuL29mIHV3IGh0dHBkLmNvbmYgYmVzdGFuZChlbikgKGxhdGVuKSBhYW5wYXNzZW4uPC9wPg0KPGgzPkFwYWNoZSBvcG1lcmtpbmdlbjwvaDM+DQo8cD5PbSBncm90ZSBiZXN0YW5kZW4gdGUga3VubmVuIG9wbG9hZGVuIG1vZXQgdSBkZSB1cGxvYWRfbWF4X2ZpbGVzaXplLXBhcmFtZXRlciBpbiB1IHBocC5pbmkgYWFucGFzc2VuLiBEYWFybmFhc3QgaXMgaGV0IG9vayBub2RpZyBkZSBMaW1pdFJlcXVlc3RCb2R5LXBhcmFtZXRlciBpbiB1dyBhcGFjaGUtY29uZmlndXJhdGllIGlzIHRlIHN0ZWxsZW4gem9kYXQgZGV6ZSBvdmVyZWVua29tdCBtZXQgZGUgdXBsb2FkX21heF9maWxlc2l6ZS0gcGFyYW1ldGVyLjwvcD4NCjxwPk9wbWVya2luZzogZGUgdXBsb2FkX21heF9maWxlc2l6ZS1wYXJhbWV0ZXIga2FuIHdvcmRlbiBvcGdlZ2V2ZW4gaXMgYnl0ZXMsIGtpbG9ieXRlcyBvZiBtZWdhYnl0ZXMuIEVjaHRlciwgZGUgTGltaXRSZXF1ZXRCb2R5LXBhcmFtZXRlciBpcyBhbGxlZW4gZ2VnZXZlbiBpbiBieXRlczwvcD4NCic7CiRsYW5nWydpZCddID0gJ0lkICc7CiRsYW5nWydpbnN0YWxsZWQnXSA9ICdNb2R1bGUgdmVyc2llICVzICBpcyBnZSZpdW1sO25zdGFsbGVlcmQuJzsKJGxhbmdbJ2lwX2FkZHJlc3MnXSA9ICdJUC1hZHJlcyc7CiRsYW5nWydtb2RkZXNjcmlwdGlvbiddID0gJ0VlbiBtb2R1bGUgb20gZ2VicnVpa2VycyBiZXN0YW5kZW4gdGUgbGF0ZW4gdXBsb2FkZW4gZW4gb20gZGUgZ2V1cGxvYWRlIGJlc3RhbmRlbiB0ZSBiZWhlcmVuLic7CiRsYW5nWyduYW1lJ10gPSAnTmFhbSc7CiRsYW5nWydyZW5hbWVtZXNzYWdlJ10gPSAnVmVyYW5kZXIgaGllciBkZSBuYWFtIG9tIGRlIGJlc3RhbmRzbmFhbSB0ZSB2ZXJhbmRlcmVuLic7CiRsYW5nWydwYXRoJ10gPSAnUGFkJzsKJGxhbmdbJ3BhdGhtZXNzYWdlJ10gPSAnVmVyYW5kZXIgZGUgY2F0ZWdvcmllIGhpZXIgb20gaGV0IGJlc3RhbmQgbmFhciBlZW4gYW5kZXJlIG1hcCB0ZSB2ZXJwbGFhdHNlbic7CiRsYW5nWydwYXRoaW51cGxvYWRzJ10gPSAnKFJlbGF0aWVmIHRlbiBvcHppY2h0ZSB2YW4gZGUgdXBsb2Fkcy1tYXApJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsJ10gPSAnPHA+RGUgVXBsb2Fkcy1tb2R1bGUgaXMgbWV0IHN1Y2NlcyBnZSZpdW1sO25zdGFsbGVlcmQuIFpvcmcgZGF0IGhldCAgJnF1b3Q7TWFuYWdlIFVwbG9hZHMmcXVvdDsgcmVjaHQgaXMgdG9lZ2VrZW5kITwvcD4NCjxwPjxzdHJvbmc+V2FhcnNjaHV3aW5nPC9zdHJvbmc+IC0gSGV0IGp1aXN0ZSBnZWRyYWcgdmFuIGRlemUgbW9kdWxlIGlzIGFmaGFua2VsaWprIHZhbiB2ZWxlIHBocC1jb25maWd1cmF0aWV2YXJpYWJlbGVuLiBEZXplIGJldmF0dGVuIDxlbT4obWFhciB6aWpuIG5pZXQgYmVwZXJrdCB0b3QpPC9lbT4sIHBocCYjMDM5O3MgbWVtb3J5X2xpbWl0LCBzYWZlX21vZGUsIGZpbGVfdXBsb2FkcywgdXBsb2Fkc19tYXhfZmlsZXNpemUgZW4gbWF4X2V4ZWN1dGlvbl90aW1lLiBEZXplIHZhcmlhYmVsZW4gbW9ldGVuIG1vZ2VsaWprIHdvcmRlbiBhYW5nZXBhc3Qgb20gZGV6ZSBtb2R1bGUgY29ycmVjdCB0ZSBsYXRlbiB3ZXJrZW4uIEhldCB3b3JkdCBnZWFkdmlzZWVyZCBkYXQgdSBzYW1lbiBtZXQgdXcgc3lzdGVlbWJlaGVlcmRlciBvZiBob3N0IHByb3ZpZGVyIGRlemUgaW5zdGVsbGluZ2VuIGFmc3RlbXQgb3AgdXcgd2Vuc2VuLjwvcD4nOwokbGFuZ1sncG9zdHVuaW5zdGFsbCddID0gJ0RlIFVwbG9hZHMtbW9kdWxlIGlzIG1ldCBzdWNjZXMgdmVyd2lqZGVyZC4gRXIgemlqbiBnZWVuIGJlc3RhbmRlbiB2ZXJ3aWpkZXJkIHVpdCBkZSB1cGxvYWRzLW1hcC4nOwokbGFuZ1sncHJlZmVyZW5jZXMnXSA9ICdWb29ya2V1cmVuJzsKJGxhbmdbJ3ByZWZzdXBkYXRlZCddID0gJ01vZHVsZXZvb3JrZXVyZW4gemlqbiBiZXdhYXJkLic7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnlkZXNjJ10gPSAnQmVzY2hyaWp2aW5nJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeWxpc3RhYmxlJ10gPSAnQmVzdGFuZGVuIGluIGRlemUgbWFwIGt1bm5lbiB3b3JkZW4gd2VlcmdlZ2V2ZW4nOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5bmFtZSddID0gJ0NhdGVnb3JpZW5hYW0nOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5cGF0aCddID0gJ1NlcnZlciBwYWQnOwokbGFuZ1sncHJvbXB0X2RlbGV0ZWRpcmVjdG9yeSddID0gJ1ZlcndpamRlciBjYXRlZ29yaWVtYXA/JzsKJGxhbmdbJ3Byb21wdF9tYXhfdXBsb2Fkc2l6ZSddID0gJ01heGltYWxlIHRvZWdlc3RhbmRlIGJlc3RhbmRzZ3Jvb3R0ZSAoS2IpJzsKJGxhbmdbJ3Byb21wdF92YWxpZF91cGxvYWRleHRlbnNpb25zJ10gPSAnR2VsZGlnZSB1cGxvYWQgZXh0ZW50aWVzJzsKJGxhbmdbJ3NjYW4nXSA9ICdab2VrJzsKJGxhbmdbJ3NlbGVjdGNhdGVnb3J5J10gPSAnU2VsZWN0ZWVyIGNhdGVnb3JpZSc7CiRsYW5nWydzaXplJ10gPSAnR3Jvb3R0ZSc7CiRsYW5nWydzaXpla2InXSA9ICdHcm9vdHRlIChLYiknOwokbGFuZ1snc3VibWl0J10gPSAnVmVyemVuZCc7CiRsYW5nWydzdW1tYXJ5X3RlbXBsYXRlJ10gPSAnT21zY2hyaWp2aW5nc3NqYWJsb29uJzsKJGxhbmdbJ3N1bW1hcnknXSA9ICdPbXNjaHJpanZpbmcnOwokbGFuZ1sndGl0bGVfYWRtaW5fcGFuZWwnXSA9ICdVcGxvYWRzLW1vZHVsZSc7CiRsYW5nWyd0aXRsZV9tb2RfYWRtaW4nXSA9ICdNb2R1bGViZWhlZXJwYW5lZWwnOwokbGFuZ1sndGl0bGVfbW9kX3ByZWZzJ10gPSAnTW9kdWxlaW5zdGVsbGluZ2VuJzsKJGxhbmdbJ3RpdGxlX3N1Ym5ldF9leGNsdXNpb25zJ10gPSAnU2x1aXQgZGV6ZSBzdWJuZXR0ZW4gdWl0IHZhbiBkZSBzdGF0aXN0aWVrZW4nOwokbGFuZ1sndGl0bGVfdmFsaWRfdXBsb2FkZXh0ZW5zaW9ucyddID0gJ0dlbGRpZ2UgZXh0ZW5zaWVzJzsKJGxhbmdbJ3VuaW5zdGFsbGVkJ10gPSAnTW9kdWxlIGdlZGVpbnN0YWxsZWVyZC4nOwokbGFuZ1sndXBncmFkZWQnXSA9ICdNb2R1bGUgZ2V1cGdyYWRlIG5hYXIgdmVyc2llICVzLic7CiRsYW5nWyd1cGxvYWQnXSA9ICdVcGxvYWQgJzsKJGxhbmdbJ3VwbG9hZGVkJ10gPSAnQmVzdGFuZCAlcyBpcyBnZXVwbG9hZCBkb29yICVzLic7CiRsYW5nWydyZXBsYWNlZCddID0gJ0Jlc3RhbmQgJXMgaXMgdmVydmFuZ2VuIGRvb3IgJXMuJzsKJGxhbmdbJ2RlbGV0ZWQnXSA9ICdCZXN0YW5kICVzIGlzIHZlcndpamRlcmQuJzsKJGxhbmdbJ3VwbG9hZGZvcm1fdGVtcGxhdGUnXSA9ICdVcGxvYWRzamFibG9vbic7CiRsYW5nWyd1c2VybmFtZSddID0gJ0dlYnJ1aWtlcnNuYWFtJzsKJGxhbmdbJ3dhcm5pbmdfZGVsZXRlY2F0ZWdvcnknXSA9ICdXYWFyc2NodXdpbmc6IHdlZXMgdm9vcnppY2h0aWcgbWV0IGhldCB2ZXJ3aWpkZXJlbiB2YW4gY2F0ZWdvcmllJmV1bWw7bi4gRXIga3VubmVuIGJlc3RhbmRlbiB2ZXJsb3JlbiBnYWFuJzsKJGxhbmdbJ3dlbGNvbWVfdGV4dCddID0gJzxwPldlbGtvbSBiaWogZGUgVXBsb2Fkcy1tb2R1bGViZWhlZXJzZWN0aWUuIElldHMgYW5kZXJzIGtvbXQgaGllciB3YWFyc2NoaWpubGlqayB2b29yIGluIGRlIHBsYWF0cyBhbHMgZGUgbW9kdWxlIGRhYWR3ZXJrZWxpamsgaWV0cyBkZWVkLjwvcD4nOwokbGFuZ1sndXRtYSddID0gJzE1Njg2MTM1My43OTk5NjkwNTAuMTIyNTAyNDA1Ni4xMjM0OTg0MDk2LjEyMzUwMzgzNTAuMTknOwokbGFuZ1sndXRteiddID0gJzE1Njg2MTM1My4xMjMyMzU1Nzg5LjUuMy51dG1jc3I9Zm9ydW0uY21zbWFkZXNpbXBsZS5vcmd8dXRtY2NuPShyZWZlcnJhbCl8dXRtY21kPXJlZmVycmFsfHV0bWNjdD0vaW5kZXgucGhwL3RvcGljLDI5ODY2LjAuaHRtbCc7CiRsYW5nWyd1dG1iJ10gPSAnMTU2ODYxMzUzJzsKJGxhbmdbJ3V0bWMnXSA9ICcxNTY4NjEzNTMnOwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lang/ext/pl_PL.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ3Byb21wdF9ncm91cGxpc3QnXSA9ICdaZXp3YWxhaiBncnVwb20gRkVVICc7CiRsYW5nWydpbmZvX2dyb3VwbGlzdCddID0gJ1d5YmllcnogZ3J1cHkgRkVVLCBrdCZvYWN1dGU7cmUgbW9nxIUgdXBsb2Fkb3dhxIcgcGxpa2kuIE5pZSB3eWJyYXpuaWUgxbxhZG5laiBncnVweSB6ZXp3YWxhIG5hIHVwbG9hZCB3c3p5c3RraW0gZ3J1cG9tJzsKJGxhbmdbJ3RpdGxlX3NjYW4nXSA9ICdTa2FudWogdyBwb3N6dWtpd2FuaXUgbm93eWNoIHBsaWsmb2FjdXRlO3cgdyBrYXRlZ29yaWknOwokbGFuZ1sndGl0bGVfY3JlYXRlX3RodW1ibmFpbHMnXSA9ICdTdHcmb2FjdXRlO3J6IGJyYWt1asSFY2UgbWluaWF0dXJ5IGRsYSBwbGlrJm9hY3V0ZTt3IHcgdGVqIGxhdGVncHJpaSc7CiRsYW5nWydjcmVhdGVfdGh1bWJuYWlscyddID0gJ1N0dyZvYWN1dGU7cnogbWluaWF0dXJ5JzsKJGxhbmdbJ3RpdGxlX2NyZWF0ZV90aHVtYm5haWwnXSA9ICdTdHcmb2FjdXRlO3J6L29kxZt3aWXFvCBtaW5pYXR1csSZIGRsYSB0ZWdvIHBsaWt1JzsKJGxhbmdbJ2NyZWF0ZV90aHVtYm5haWwnXSA9ICdTdHcmb2FjdXRlO3J6IG1pbmlhdHVyxJknOwokbGFuZ1snZXJyb3JfcGF0aGVycm9yJ10gPSAnTmllIG1vxbxuYSBvdHdvcnp5xIcga2F0YWxvZ3UgKHByYmxlbSB6IHVwcmF3bmllbmlhbWknOwokbGFuZ1sndGl0bGVfZG93bmxvYWRfY2h1bmtzaXplJ10gPSAnUm96bWlhciBrYcW8ZGVnbyDFm2NpxIVnYW5lZ28gYmxva3UnOwokbGFuZ1snaW5mb19kb3dubG9hZF9jaHVua3NpemUnXSA9ICdabWlhbmEgdGVnbyBwYXJhbWV0cnUgYsSZZHppZSBtaWHFgmEgd3DFgnl3IG5hIHN6eWJrb8WbxIcgxZtjacSFZ2FuaWEgcGxpa3UsIGFsZSBtb8W8ZSBwb20mb2FjdXRlO2MgdyBrb25maWd1cmFjamFjaCB6IG1uaWVqc3rEhSBpbG/Fm2NpxIUgZG9zdMSZcG5laiBwYW1pxJljaSc7CiRsYW5nWyd3YXJuaW5nX3NhZmVfbW9kZSddID0gJ1NhZmUgbW9kZSB3IFBIUCBqZXN0IHfFgsSFY3pvbmUuIE1vxbxlIHRvIHBvd29kb3dhxIcgcHJvYmxlbXkgeiB1cGxvYWRlbSBwbGlrJm9hY3V0ZTt3ICh1cHJhd25pZW5pYSksIGEgdGFrxbxlIHplIMWbY2nEhWdhbmllbSAoYnJhayB1cHJhd25pZcWEIGRvIHptaWFueSBwYXJhbWV0ciZvYWN1dGU7dyBwaHAuaW5pKS4gU2tvbnRha3R1aiBzacSZIHplIHN3b2ltIGFkbWluaXN0cmF0b3JlbSBpIHphcHl0YWogbyBtb8W8bGl3b8WbxIcgd3nFgsSFY3plbmlhIHRlZ28gdHJ5YnUuJzsKJGxhbmdbJ3BhcmFtX2RldGFpbHBhZ2UnXSA9ICdQcnp5ZGF0bmUgZG8gd3nFm3dpZXRsYW5pYSByYXBvcnR1IHByenkgdcW8eWNpdSByJm9hY3V0ZTvFvG55Y2ggc3phYmxvbiZvYWN1dGU7dy4gTW/FvGVzeiB0dSB3c3Rhd2nEhyBJRCBzdHJvbnkgbHViIGplaiBhbGlhcy4nOwokbGFuZ1sncGFyYW1fcHJlZml4J10gPSAnWm1pZW5uYSB3c2thenVqxIVjYSBjenkgZG8gbmF6dyBwbGlrJm9hY3V0ZTt3IHBvd2luaWVuIGJ5xIcgZG9kYW55IHByZWZpa3MuJzsKJGxhbmdbJ3BhcmFtX3ByZWZpeF9mZXUnXSA9ICdQYXJhbWV0ciBrdCZvYWN1dGU7cnkgd3NrYXp1amUsIGN6eSBwcmVmaWtzIHBvd2luaW5lbiBiecSHIHd6acSZdHkgeiBkYW55Y2ggYXV0b3JhIHVwbG9hZHUsIGN6eSB0ZcW8IChqZcWbbGkgbmljIG5pZSBwb2Rhbm8pLCBvYmxpY3pvbnkgemUgem5hY3puaWthIGFrdHVhbG5lZ28gY3phc3UuJzsKJGxhbmdbJ3BhcmFtX25vY2FwdGNoYSddID0gJ1d5xYLEhWN6IG9ic8WCdWfEmSBDYXB0Y2hhIHcgZm9ybXVsYXJ6dSB1cGxvYWR1ICh3xYLEhWN6b25lIGRvbXnFm2xuaWUpJzsKJGxhbmdbJ3RpdGxlX3VwbG9hZGZvcm1fdGVtcGxhdGUnXSA9ICdFZHl0dWogc3phYmxvbiBmb3JtdWxhcnphIHVwbG9hZHUnOwokbGFuZ1snY2FwdGNoYV90aXRsZSddID0gJ1dwaXN6IHRla3N0IHd5xZt3aWV0bGFueSB3IHR5bSBvYnJhemt1JzsKJGxhbmdbJ2Vycm9yX2NhcHRjaGFtaXNtYXRjaCddID0gJ1dwaXNhbnkgdGVrc3QgbmllIHBhc3VqZSBkbyB3ecWbd2lldGxhbmVnbyBvYnJhemthJzsKJGxhbmdbJ3RpdGxlX2F1dG90aHVtYm5haWxfZXh0ZW5zaW9ucyddID0gJ1N0dyZvYWN1dGU7cnogbWluaWF0dXJ5IGRsYSBwbGlrJm9hY3V0ZTt3IHogdHltaSByb3pzemVyemVuaWFtaSc7CiRsYW5nWyd0aXRsZV9hdXRvdGh1bWJuYWlsX3NpemUnXSA9ICdNYWtzeW1hbG55IHJvem1pYXIgbWluaWF0dXJ5ICh3IHBpa3NlbGFjaCkgJzsKJGxhbmdbJ3Byb21wdF91cGxvYWRfaWNvbiddID0gJ1phxYJhZHVqIGlrb27EmSc7CiRsYW5nWydpbmZvX3N5c2RlZmF1bHQnXSA9ICdUZW4gdGVrc3QgamVzdCB1xbx5d2FueSBwb2RjemFzIHR3b3J6ZW5pYSBub3dlZ28gc3phYmxvbnUgdGVnbyB0eXB1JzsKJGxhbmdbJ3RpdGxlX2RldGFpbHJwdF9zeXNkZWZhdWx0J10gPSAnRG9tecWbbG55IHN6YWJsb24gZGxhIHN6Y3plZyZvYWN1dGU7xYJvd2VnbyByYXBvcnR1JzsKJGxhbmdbJ3RpdGxlX3N1bW1hcnlycHRfc3lzZGVmYXVsdCddID0gJ0RvbXnFm2xueSBzemFibG9uIGRsYSBwb2RzdW1vd3VqxIVjZWdvIHJhcG9ydHUnOwokbGFuZ1sndGl0bGVfdXBsb2FkZm9ybV9zeXNkZWZhdWx0J10gPSAnRG9tecWbbG55IHN6YWJsb24gZGxhIGZvcm11bGFyemEgdXBsb2FkdSc7CiRsYW5nWyd0ZW1wbGF0ZSddID0gJ1N6YWJsb24nOwokbGFuZ1sncmVzZXR0b2RlZmF1bHQnXSA9ICdQcnp5d3Imb2FjdXRlO8SHIGRvbXnFm2xuZSc7CiRsYW5nWyd0aXRsZV9zdW1tYXJ5cnB0X3RlbXBsYXRlJ10gPSAnU3phYmxvbiByYXBvcnR1IHBvZHN1bW93dWrEhWNlZ28nOwokbGFuZ1sndGl0bGVfZGV0YWlscnB0X3RlbXBsYXRlJ10gPSAnU3phYmxvbiByYXBvcnR1IHN6Y3plZyZvYWN1dGU7xYJvd2Vnbyc7CiRsYW5nWydwcm9tcHRfbmFtZSddID0gJ05hendhJzsKJGxhbmdbJ3Byb21wdF9kZWZhdWx0J10gPSAnRG9tecWbbG55JzsKJGxhbmdbJ2xlZ2VuZF91cGxvYWRmb3JtJ10gPSAnWmHFgmFkdWogcGxpayc7CiRsYW5nWydlcnJvcl9taXNzaW5ncGFyYW0nXSA9ICdCcmFrIHd5bWFnYW5lZ28gcGFyYW1ldHJ1JzsKJGxhbmdbJ2Vycm9yX21pc3NpbmduYW1lJ10gPSAnTmF6d2EgdHlwdSBwbGlrdSBtdXNpIGJ5xIcgcG9kYW5hJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdleHRlbnNpb25zJ10gPSAnQ29uYWptbmllaiBqZWRubyByb3pzemVyemVuaWUgbXVzaSBiecSHIHBvZGFuZSc7CiRsYW5nWydlcnJvcl9taXNzaW5naWNvbiddID0gJ011c2lzeiBwb2RhxIcgaWtvbsSZJzsKJGxhbmdbJ2Vycm9yX25vc3VjaHJvdyddID0gJ05pZSBtb8W8bmEgem5hbGXFusSHIHdpZXJzemEnOwokbGFuZ1snbmFtZV91bmtub3duJ10gPSAnTmllem5hbnknOwokbGFuZ1snZGVzY3JpcHRpb25fdW5rbm93biddID0gJ09waXMgdHlwdSBwbGlrdSBkbGEgbmllcGFzdWrEhWN5Y2ggcGxpayZvYWN1dGU7dyc7CiRsYW5nWydpbWFnZSddID0gJ09icmF6ZWsnOwokbGFuZ1snaWNvbiddID0gJ0lrb25hJzsKJGxhbmdbJ2V4dGVuc2lvbnMnXSA9ICdSb3pzemVyemVuaWEgbmF6dyBwbGlrJm9hY3V0ZTt3JzsKJGxhbmdbJ2FkZGZpbGV0eXBlJ10gPSAnRG9kYWogbm93eSB0eXAgcGxpa3UnOwokbGFuZ1snZmlsZV90eXBlcyddID0gJ1R5cHkgcGxpayZvYWN1dGU7dyc7CiRsYW5nWydlcnJvcl9ub2NhdGVnb3J5aWQnXSA9ICdCcmFrIElEIGthdGVnb3JpaSc7CiRsYW5nWydlcnJvcl9ub2NhdGVnb3J5J10gPSAnQnJhayBJRCBrYXRlZ29yaWknOwokbGFuZ1snZXJyb3JfdGVtcGxhdGVuYW1lZXhpc3RzJ10gPSAnU3phYmxvbiB6IHRha8SFIG5henfEhSBqdcW8IGlzdG5pZWplJzsKJGxhbmdbJ3Byb21wdF90ZW1wbGF0ZW5hbWUnXSA9ICdOYXp3YSBzemFibG9udSc7CiRsYW5nWydwcm9tcHRfdGVtcGxhdGUnXSA9ICdTemFibG9uJzsKJGxhbmdbJ3Byb21wdF9uZXd0ZW1wbGF0ZSddID0gJ1N0dyZvYWN1dGU7cnogbm93eSBzemFibG9uJzsKJGxhbmdbJ2hlbHBfT25Eb3dubG9hZCddID0gJzxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBmaW5pc2hlcyBkb3dubG9hZGluZyBhIGZpbGU8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPmlkPC9lbT4gLSBVcGxvYWQgSUQ8L2xpPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBGaWxlIG5hbWU8L2xpPg0KPGxpPjxlbT5pcDwvZW0+IC0gVGhlIElQIEFkZHJlc3Mgb2YgdGhlIGRvd25sb2FkZXI8L2xpPg0KPC91bD4NCic7CiRsYW5nWydoZWxwX09uRGVsZXRlQ2F0ZWdvcnknXSA9ICc8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIGNhdGVnb3J5IGlzIERlbGV0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIENhdGVnb3J5IG5hbWU8L2xpPg0KPGxpPjxlbT5wYXRoPC9lbT4gLSBDYXRlZ29yeSBwYXRoPC9saT4NCjwvdWw+DQonOwokbGFuZ1snaGVscF9PbkNyZWF0ZUNhdGVnb3J5J10gPSAnPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBjYXRlZ29yeSBpcyBDcmVhdGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgbmFtZSBvZiB0aGUgY2F0ZWdvcnk8L2xpPg0KPGxpPjxlbT5kZXNjcmlwdGlvbjwvZW0+IC0gVGhlIGNhdGVnb3J5IGRlc2NyaXB0aW9uPC9saT4NCjxsaT48ZW0+cGF0aDwvZW0+IC0gVGhlIGNhdGVnb3J5IHBhdGg8L2xpPg0KPGxpPjxlbT5wYXRoPC9lbT4gLSBBIGZsYWcgaW5kaWNhdGluZyBpZiB0aGUgY2F0ZWdvcnkgaXMgbGlzdGFibGU8L2xpPg0KPC91bD4NCic7CiRsYW5nWydoZWxwX09uUmVtb3ZlJ10gPSAnPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBmaWxlIGlzIHJlbW92ZWQgdmlhIHRoZSBhZG1pbiBvciBmcm9udGVuZCBpbnRlcmZhY2VzPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgbmFtZSBvZiB0aGUgcmVtb3ZlZCBmaWxlPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSBpZCBvZiB0aGUgcmVtb3ZlZCBmaWxlPC9saT4NCjxsaT48ZW0+Y2F0ZWdvcnlfaWQ8L2VtPiAtIFRoZSBpZCBvZiB0aGUgY2F0ZWdvcnk8L2xpPg0KPC91bD4NCic7CiRsYW5nWydoZWxwX09uVXBsb2FkJ10gPSAnPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBuZXcgZmlsZSBpcyB1cGxvYWRlZCB2aWEgdGhlIGFkbWluIG9yIGZyb250ZW5kIGludGVyZmFjZXM8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPmNhdGVnb3J5PC9lbT4gLSBUaGUgY2F0ZWdvcnkgbmFtZTwvbGk+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSBuYW1lIG9mIHRoZSB1cGxvYWRlZCBmaWxlPC9saT4NCjxsaT48ZW0+c2l6ZTwvZW0+IC0gVGhlIHNpemUgb2YgdGhlIHVwbG9hZGVkIGZpbGU8L2xpPg0KPGxpPjxlbT5zdW1tYXJ5PC9lbT4gLSBUaGUgc2hvcnQgZGVzY3JpcHRpb24gZm9yIHRoZSB1cGxvYWRlZCBmaWxlIChtYXkgYmUgZW1wdHkpPC9lbT48L2xpPg0KPGxpPjxlbT5kZXNjcmlwdGlvbjwvZW0+IC0gVGhlIGxvbmcgZGVzY3JpcHRpb24gZm9yIHRoZSB1cGxvYWRlZCBmaWxlIChtYXkgYmUgZW1wdHkpPC9lbT48L2xpPg0KPGxpPjxlbT5hdXRob3I8L2VtPiAtIFRoZSBhdXRob3Igb2YgdGhlIHVwbG9hZGVkIGZpbGUgKGlmIGF2YWlsYWJsZSk8L2VtPjwvbGk+DQo8bGk+PGVtPmlwX2FkZHJlc3M8L2VtPiAtIFRoZSBpbnRlcm5ldCBhZGRyZXNzIG9mIHRoZSBjbGllbnQgdGhhdCB1cGxvYWRlZCB0aGUgZmlsZTwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2luZm9fZXZlbnRfb25kZWxldGVjYXRlZ29yeSddID0gJ0V2ZW50IGdlbmVyYXRlZCB3aGVuIGEgY2F0ZWdvcnkgaXMgZGVsZXRlZCc7CiRsYW5nWydpbmZvX2V2ZW50X29uY3JlYXRlY2F0ZWdvcnknXSA9ICdFdmVudCBnZW5lcmF0ZWQgd2hlbiBhIGNhdGVnb3J5IGlzIGNyZWF0ZWQnOwokbGFuZ1snaW5mb19ldmVudF9vbmRvd25sb2FkJ10gPSAnRXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBmaWxlIGlzIGRvd25sb2FkZWQnOwokbGFuZ1snaW5mb19ldmVudF9vbnVwbG9hZCddID0gJ0V2ZW50IGdlbmVyYXRlZCB3aGVuIGEgbmV3IGZpbGUgaXMgdXBsb2FkZWQnOwokbGFuZ1snaW5mb19ldmVudF9vbnJlbW92ZSddID0gJ0V2ZW50IGdlbmVyYXRlZCB3aGVuIGEgZmlsZSBpcyByZW1vdmVkJzsKJGxhbmdbJ3RpdGxlX3VzZXJ0YWdfb251cGxvYWQnXSA9ICdabmFjem5payB1xbx5dGtvd25pa2Egd3l3b8WCeXdhbnkgZ2R5IMWCYWRvd2FuaWUgcGxpa3Ugc2nEmSB6YWtvxYRjenknOwokbGFuZ1snbm9uZSddID0gJ0JyYWsnOwokbGFuZ1snbWF0Y2hlc2ZvdW5kJ10gPSAnWm5hbGV6aW9ubyc7CiRsYW5nWydmaWx0ZXInXSA9ICdGaWx0cic7CiRsYW5nWyd0aXRsZV9yZWRpcmVjdG9udXBsb2FkJ10gPSAnUHJ6ZWtpZXJ1aiBkbyBzdHJvbnkgcG8gemHFgmFkb3dhbml1IHBsaWt1IHByemV6IHXFvHl0a293bmlrYSc7CiRsYW5nWydkZXRhaWxzJ10gPSAnU3pjemVnJm9hY3V0ZTvFgnknOwokbGFuZ1snY29uZmlybV9wcmVmZXJlbmNlcyddID0gJ0N6eSBuYXBld25vIGNoY2VzeiB6bWllbmnEhyB1c3Rhd2llbmlhPyc7CiRsYW5nWydlcnJvcl9ub2ZpbGVzdXBsb2FkZWQnXSA9ICdOaWUgemHFgmFkb3dhbmVnbyDFvGFkbnljaCBwbGlrJm9hY3V0ZTt3Lic7CiRsYW5nWydwcm9tcHRfcmVwbGFjZSddID0gJ1Bvencmb2FjdXRlO2wgbmEgbmFkcGlzeXdhbmllIHBsaWsmb2FjdXRlO3cnOwokbGFuZ1snaW5mb19yZXBsYWNlJ10gPSAnTmFkcGlzdWplIHBsaWsgeiB0xIUgc2FtxIUgbmF6d8SFIChhbGUgbmllIHptaWVuaWEgSUQpJzsKJGxhbmdbJ3BhcmFtX25vX2luaXRpYWwnXSA9ICdOaWUgd3nFm3dpZXRsYWogxbxhZG55Y2ggd3N0xJlwbnljaCB3eW5payZvYWN1dGU7dyBnZHkgZmlsdHIgamVzdCB3xYLEhWN6b255JzsKJGxhbmdbJ3BhcmFtX2tleSddID0gJ1BvZGFqIGRvZGF0a293eSBwYXJhbWV0ciwga3Qmb2FjdXRlO3J5cG96d29saSB6b3JnYW5pem93YcSHIHBsaWtpLiBUZW4gcGFyYW1ldHIgbW/FvGUgYnnEhyBucC4gY2nEhWdpZW0gJiMwMzk7ZmV1c2Vyczp1aWQmIzAzOTsgaXRwLiBUZW4gcGFyYW1ldHIgend5a2xlIGplc3QgcG90cnplYm55IHByenkgdcW8eXdhbml1IG1vZHXFgnUgVXBsb2FkcyBwcnpleiBpbm5lIG1vZHXFgnkuJzsKJGxhbmdbJ3BhcmFtX25vYXV0aG9yJ10gPSAnVWtyeWogcG9sZSBhdXRvcmEgeiBmb3JtdWxhcnphIHVwbG9hZHUuIFRlbiBwYXJhbWV0ciBtYSB6YXN0b3Nvd2FuaWUgdHlsa28gcHJ6eSBtb2RlPSYjMDM5O3VwbG9hZCYjMDM5Oy4gR2R5IG1vZHXFgiBGcm9udEVuZFVzZXJzIGplc3QgemFpbnN0YWxvd2FueSBpIHXFvHl0a293bmlrIEZFVSBqZXN0IHphbG9nb3dhbnksIHVrcnl0ZSBwb2xlIHpvc3RhbmllIHd5cGXFgm5pb25lIG5henfEhSBsb2dvd2FuaWEgdGVnbyB1xbx5dGtvd25pa2EuJzsKJGxhbmdbJ3BhcmFtX3VwbG9hZF9pZCddID0gJ3VwbG9hZF9pZD0mcXVvdDtpZCZxdW90OyAtIHNwZWNpZnkgYSBzaW5nbGUgZmlsZSBmb3IgdGhlIHVybC9saW5rIG9yIHNpbmdsZSBtb2RlcyAoYWJvdmUpJzsKJGxhbmdbJ3BhcmFtX3VzZV9zdHJpY3RfcmVnZXhwJ10gPSAnVGhlIGZpbHRlciBmaWVsZCBpcyB1c2VkIGFzIGEgc3RyaWN0IHJlZ2V4cCB3aXRob3V0IHByZXByb2Nlc3Npbmcgb2Ygc3BhY2VzJzsKJGxhbmdbJ3BhcmFtX2RldGFpbHRlbXBsYXRlJ10gPSAnVXNlIGEgdGVtcGxhdGUgd2l0aCB0aGlzIG5hbWUgZm9yIHRoZSBkZXRhaWxlZCByZXBvcnQuJzsKJGxhbmdbJ3BhcmFtX3RlbXBsYXRlJ10gPSAnVXNlIGEgdGVtcGxhdGUgd2l0aCB0aGlzIG5hbWUgZm9yIHRoaXMgcmVwb3J0IG9yIGZvcm0uICBUaGUgbW9kZSBpcyB1c2VkIHRvIGRldGVybWluZSB3aGF0IHR5cGUgb2YgdGVtcGxhdGUgaXMgcmVxdWlyZXJkLCBhbmQgdGhlbiBhIG5hbWUgbWF0Y2ggaXMgcGVyZm9ybWVkIHdpdGhpbiB0aGF0IHR5cGUuJzsKJGxhbmdbJ3BhcmFtX2ZpbHRlciddID0gJ0Rpc3BsYXkgdGhlIGZpbHRlcmluZyBmb3JtJzsKJGxhbmdbJ3BhcmFtX25vX2ludGl0aWFsJ10gPSAnT25seSB1c2VmdWwgd2hlbiB0aGUgZmlsdGVyIHBhcmFtZXRlciBpcyBzdXBwbGllZCwgb3Igb24gYnkgZGVmYXVsdCwgdGhpcyBwYXJhbWV0ZXIgaW5kaWNhdGVzIHdldGhlciBpbml0aWFsIHJlc3VsdHMgc2hvdWxkIGJlIHJldHVybmVkJzsKJGxhbmdbJ3BhcmFtX2ZpbGV0eXBlcyddID0gJ0Rpc3BsYXkgb25seSBmaWxlcyB3aG9zZSB0eXBlIG1hdGNoZXMgdGhpcyBjb21tYSBzZXBhcmF0ZWQgbGlzdCc7CiRsYW5nWydwYXJhbV9zb3J0b3JkZXInXSA9ICcgIDxwPlNvcnQgT3JkZXJzDQogIDx1bD4NCiAgPGxpPjxlbT5kYXRlX2FzYzwvZW0+IC0gU29ydCBieSBhc2NlbmRpbmcgZGF0ZTwvbGk+DQogIDxsaT48ZW0+ZGF0ZV9kZXNjPC9lbT4gLSBTb3J0IGJ5IGRlc2NlbmRpbmcgZGF0ZTwvbGk+DQogIDxsaT48ZW0+bmFtZV9hc2M8L2VtPiAtIFNvcnQgYnkgYXNjZW5kaW5nIG5hbWU8L2xpPg0KICA8bGk+PGVtPm5hbWVfZGVzYzwvZW0+IC0gU29ydCBieSBkZXNjZW5kaW5nIG5hbWU8L2xpPg0KICA8bGk+PGVtPnNpemVfYXNjPC9lbT4gLSBTb3J0IGJ5IGFzY2VuZGluZyBzaXplPC9saT4NCiAgPGxpPjxlbT5zaXplX2Rlc2M8L2VtPiAtIFNvcnQgYnkgZGVzY2VuZGluZyBzaXplPC9saT4NCiAgPGxpPjxlbT5kZXNjX2FzYzwvZW0+IC0gU29ydCBieSBhc2NlbmRpbmcgZGVzY3JpcHRpb248L2xpPg0KICA8bGk+PGVtPmRlc2NfZGVzYzwvZW0+IC0gU29ydCBieSBkZXNjZW5kaW5nIGRlc2NyaXB0aW9uPC9saT4NCiAgPGxpPjxlbT5hdXRob3JfYXNjPC9lbT4gLSBTb3J0IGJ5IGFzY2VuZGluZyBhdXRob3I8L2xpPg0KICA8bGk+PGVtPmF1dGhvcl9kZXNjPC9lbT4gLSBTb3J0IGJ5IGRlc2NlbmRpbmcgYXV0aG9yPC9saT4NCiAgPGxpPjxlbT5pcF9hc2M8L2VtPiAtIFNvcnQgYnkgYXNjZW5kaW5nIGlwIGFkZHJlc3M8L2xpPg0KICA8bGk+PGVtPmlwX2Rlc2M8L2VtPiAtIFNvcnQgYnkgZGVzY2VuZGluZyBpcCBhZGRyZXNzPC9saT4NCiAgPGxpPjxlbT5yYW5kb208L2VtPiAtIFJhbmRvbSBzb3J0IG9yZGVyPC9saT4NCiAgPC91bD4NCiAgPC9wPic7CiRsYW5nWydwYXJhbV9saXN0aW5ndGVtcGxhdGUnXSA9ICdUZW1wbGF0ZSB0byB1c2UgZm9yIGNhdGVnb3J5IGxpc3RpbmdzIGFmdGVyIGNsaWNrdGhyb3VnaCBmcm9tIENhdGVnb3J5IFN1bW1hcnkgcGFnZSc7CiRsYW5nWydwYXJhbV9saXN0aW5nc29ydG9yZGVyJ10gPSAnU29ydCBvcmRlciAoYWxhIHBhcmFtX3NvcnRvcmRlcikgdG8gdXNlIGZvciBjYXRlZ29yeSBsaXN0aW5ncyBhZnRlciBjbGlja3Rocm91Z2ggZnJvbSBDYXRlZ29yeSBTdW1tYXJ5IHBhZ2UnOwokbGFuZ1sncGFyYW1fZmlsZWV4dGVuc2lvbnMnXSA9ICcgDQpmaWxlX2V4dGVuc2lvbnM9JnF1b3Q7ZXh0MSxleHQyLGV4dDMmcXVvdDsNCjxwPnZhbGlkIG9ubHkgd2hlbiBtb2RlPXVwbG9hZCwgdGhpcyBwYXJhbWV0ZXIgbGltaXRzIHRoZSB0eXBlcyBvZiBmaWxlcyB0aGF0IGNhbiBiZSB1cGxvYWRlZC4gIEl0IG92ZXJyaWRlcyBhbnkgc2V0dGluZ3MgaW4gdGhlIG1vZHVsZSBwcmVmZXJlbmNlcy48L3A+JzsKJGxhbmdbJ3BhcmFtX2NvdW50J10gPSAnY291bnQ9JnF1b3Q7TiZxdW90Ow0KPHA+QSBwYXJhbWV0ZXIgdG8gbGlzdCBvbmx5IHRoZSBmaXJzdCBOIHJlc3VsdHMgb2YgdGhlIHF1ZXJ5LiAgUGFnaW5hdGlvbiB3b3VsZCBiZSBiZXR0ZXIsIGJ1dCB0aGlzIHdpbGwgZG8gdGhlIHRyaWNrIGZvciBub3c8L3A+JzsKJGxhbmdbJ3BhcmFtX2NhdGVnb3J5J10gPSAnY2F0ZWdvcnk9JnF1b3Q7bmFtZSZxdW90Ow0KPHA+PGI+Tm90ZTo8L2I+IENhdGVnb3J5IGNhbiBiZSAmcXVvdDthbGwmcXVvdDssIHdoaWNoIHdpbGwgbGlzdCBhbGwgb2YgdGhlIHVwbG9hZHMgZnJvbSBhbGwgPGVtPmxpc3RhYmxlPC9lbT4gY2F0ZWdvcmllczwvcD4nOwokbGFuZ1sncGFyYW1fbW9kZSddID0gJyAgPHVsPg0KICA8bGk+PGVtPmRldGFpbGVkPC9lbT4gLSBEaXNwbGF5IGEgZGV0YWlsZWQgbGlzdCBvZiBhbGwgZmlsZXMgaW4gdGhlIGNhdGVnb3J5PC9saT4NCiAgPGxpPjxlbT51cGxvYWQ8L2VtPiAtIERpc3BsYXkgYSBmb3JtIHRvIGFsbG93IGEgZnJvbnRlbmQgdXNlciB0byB1cGxvYWQgYSBmaWxlPC9saT4NCiAgPGxpPjxlbT51cmwgPGk+b3I8L2k+IGxpbms8L2VtPiAtIERpc3BsYXkgYSBsaW5rIHRvIGEgZmlsZTwvbGk+DQogIDxsaT48ZW0+c3VtbWFyeTwvZW0+IC0gRGlzcGxheSBhIHN1bW1hcml6ZWQgbGlzdCBvZiBhbGwgZmlsZXMgaW4gdGhlIGNhdGVnb3J5PC9saT4NCiAgPGxpPjxlbT5zaW5nbGU8L2VtPiAtIERpc3BsYXkgYSBkZXRhaWxlZCByZXBvcnQgYWJvdXQgYSBzaW5nbGUgdXBsb2FkPC9saT4NCiAgPGxpPjxlbT5zaW5nbGVzdW1tYXJ5PC9lbT4gLSBEaXNwbGF5IGEgc3VtbWFyaXplZCByZXBvcnQgYWJvdXQgYSBzaW5nbGUgdXBsb2FkPC9saT4NCiAgPC91bD4nOwokbGFuZ1sncGFyYW1fc2VsZWN0Zm9ybSddID0gJ1doZW4gdXNpbmcgdGhlICYjMDM5O3NlbGVjdCYjMDM5OyBtb2RlLCB0aGlzIHBhcmFtZXRlciBpcyB0aGUgZm9ybWlkIG9mIHRoZSBwYXJlbnQgZm9ybS4gIFVzZWQgdG8gaGFuZGxlIHBhcmFtZXRlciBwYXNzaW5nJzsKJGxhbmdbJ3BhcmFtX3NlbGVjdG5hbWUnXSA9ICd3aGVuIHVzaW5nIHRoZSAmIzAzOTtzZWxlY3QmIzAzOTsgbW9kZSwgdGhpcyBwYXJhbWV0ZXIgc3BlY2lmaWVzIHRoZSBuYW1lIG9mIHRoZSBmaWVsZCc7CiRsYW5nWydwYXJhbV9zZWxlY3R2YWx1ZSddID0gJ1doZW4gdXNpbmcgdGhlICYjMDM5O3NlbGVjdCYjMDM5OyBtb2RlLCB0aGlzIHBhcmFtZXRlciBzcGVjaWZpZXMgdGhlIGRlZmF1bHQgZmllbGQgdmFsdWUnOwokbGFuZ1sncGFyYW1fc2VsZWN0bm9uZSddID0gJ1doZW4gdXNpbmcgdGhlICYjMDM5O3NlbGVjdCYjMDM5OyBtb2RlLCB0aGlzIHBhcmFtZXRlciBzcGVjaWZpZXMgd2V0aGVyICYjMDM5O25vbmUmIzAzOTsgaXMgYSB2YWxpZCBjaG9pY2UuJzsKJGxhbmdbJ3JldHVybnRvbW9kdWxlJ10gPSAnV3Imb2FjdXRlO8SHIGRvIG1vZHXFgnUgcGFuZWxhJzsKJGxhbmdbJ2Vycm9yX25vY2F0ZWdvcmllcyddID0gJ05JZSBtYSB6ZGVmaW5pb3dhbnljaCBrYXRlZ29yaWknOwokbGFuZ1sndGl0bGVfZW5mb3JjZWV4dGVuc2lvbnMnXSA9ICdXeW1hZ2FqLCBhYnkgd3N6eXN0a2llIMWCYWRvd2FuZSBwbGlraSBtaWHFgnkgcm96c3plcnplbmllJzsKJGxhbmdbJ3Jlc3RvcmVkZWZhdWx0c2NvbmZpcm0nXSA9ICdUYSBvcGVyYWNqYSBwcnp5d3Imb2FjdXRlO2NpIGRvbXnFm2xueSBzYWJsb24uIFdzenlzdGtpZSB6bWlhbnkgZG9rb25hbmUgcHJ6ZXogY2llYmllIGLEmWTEhSBzdHJhY29uZS4gTmFwZXdubyBrb250eW51b3dhxIc/JzsKJGxhbmdbJ2luZm9fdGh1bWJuYWlsJ10gPSAnT3Bjam9uYWxueSBwbGlrIG1pbmlhdHVyeSc7CiRsYW5nWyd0aHVtYm5haWwnXSA9ICdNaW5pYXR1cmEnOwokbGFuZ1snbmV3dGh1bWJuYWlsJ10gPSAnWmHFgmFkdWogbm93xIUgbWluaWF0dXLEmSc7CiRsYW5nWydpbmZvX3N1bW1hcnknXSA9ICdLciZvYWN1dGU7dGtpIG9waXMgcGxpa3UgKGplxZtsaSBwdXN0eSBuYXp3YSBwbGlrdSBiZXogcm96c3plcnplbmlhIGplc3QgdcW8eXdhbmEpJzsKJGxhbmdbJ2luZm9fY2F0ZWdvcnluYW1lJ10gPSAnS3Imb2FjdXRlO3RrYSBuYXp3YSBrYXRlZ29yaWknOwokbGFuZ1snaW5mb19jYXRlZ29yeWRlc2MnXSA9ICdPcGlzIGthdGVnb3JpaSc7CiRsYW5nWydpbmZvX2NhdGVnb3J5cGF0aCddID0gJ05hendhIGthdGFsb2d1IHdld21hdHJ6IC91cGxvYWRzLCBrdCZvYWN1dGU7cnkgYsSZZHppZSB1xbx5dHkgZG8gcHJ6ZWNob3d5d2FuaWEgcGxpayZvYWN1dGU7dyAoamXFm2xpIG5pZSBpc3RuaWVqZSB0byBtb8W8ZSBiecSHIHN0d29yem9ueSknOwokbGFuZ1snaW5mb19kZXN0bmFtZSddID0gJ1XFvHlqIHBvbGEgJiMwMzk7WmHFgmFkdWogamFrbyYjMDM5OyBhYnkgem1pZW5pxIcgbmF6d8SZIHBsaWt1IHBvIHVwbG9hZHppZS4gUG96b3N0YXcgcHVzdGUgYWJ5IHphY2hvd2HEhyBvcnlnaW5hbG7EhSBuYXp3xJknOwokbGFuZ1snZXJyb3JfY2FudGNyZWF0ZWRpcmVjdG9yeSddID0gJ05pZSBtb8W8bmEgc3R3b3J6ecSHIGthdGFsb2d1JzsKJGxhbmdbJ2Vycm9yX25vbWFpbGVybW9kdWxlJ10gPSAnTmllIG1vxbxuYSB6bmFsZcW6xIcgbW9kdcWCdSBDTVNNYWlsZXInOwokbGFuZ1sndXBsb2FkX25vdGlmaWNhdGlvbiddID0gJ05vd3kgcGxpayB6b3N0YcWCIHphxYJhZG93YW55JzsKJGxhbmdbJ3RpdGxlX2VtYWlsX29uX3VwbG9hZCddID0gJ1d5xZtsaWogaW5mb3JtYWNqxJkgbyB6YcWCYWRvd2FuaXUgbm93ZWdvIHBsaWt1IGRvJzsKJGxhbmdbJ2VtYWlsX3RlbXBsYXRlJ10gPSAnU3phYmxvbiBlLW1haWxhJzsKJGxhbmdbJ3RpdGxlX2R1bW15X2luZGV4X2h0bWwnXSA9ICdTdHcmb2FjdXRlO3J6IHB1c3R5IHBsaWsgaW5kZXguaHRtbCB3IGthxbxkeW0ga2F0YWxvZ3UuPGJyIC8+SXN0bmllasSFY2UgcGxpa2kgaW5kZXguaHRtbCB6b3N0YW7EhSB6YWNob3dhbmUnOwokbGFuZ1snYWJvdXQnXSA9ICdJbmZvcm1hY2phJzsKJGxhbmdbJ2Vycm9yX3Blcm1pc3Npb25kZW5pZWQnXSA9ICdEb3N0xJlwIHphYnJvbmlvbnkuIFNwcmF3ZMW6IHN3b2plIHVwcmF3bmllbmlhLic7CiRsYW5nWydlcnJvcl9jb3VsZG5vdHdyaXRlJ10gPSAnTmllIG1vxbxuYSB6YXBpc2HEhyc7CiRsYW5nWydhZGRjYXRlZ29yeSddID0gJ0RvZGFqIGthdGVnb3JpxJknOwokbGFuZ1snYWxsJ10gPSAnV3N6eXN0a2llJzsKJGxhbmdbJ2FyZXlvdXN1cmUnXSA9ICdKZXN0ZcWbIHBld255Pyc7CiRsYW5nWydhdXRob3InXSA9ICdBdXRvcic7CiRsYW5nWydjYW5jZWwnXSA9ICdBbnVsdWonOwokbGFuZ1snY2Fubm90bW9kaWZ5cGF0aCddID0gJ8WaY2llxbxrYSBuaWUgbW/FvGUgYnnEhyB6bWllbmlvbmEnOwokbGFuZ1snY2F0ZWdvcmllcyddID0gJ0thdGVnb3JpZSc7CiRsYW5nWydjYXRlZ29yeSddID0gJ0thdGVnb3JpYSc7CiRsYW5nWydtZXNzYWdlX2NhdGVnb3J5YWRkZWQnXSA9ICdLYXRlZ29yaWEgem9zdGHFgmEgZG9kYW5hJzsKJGxhbmdbJ2NoYW5nZWxvZyddID0gJzx1bD4NCjxsaT4NCjxwPlZlcnNpb24gMS4wLiAtIFNlcHRlbWJlciAyMDA1LjwvcD4NCjxwPiBJbml0aWFsIFJlbGVhc2UuPC9wPg0KPC9saT4NCjxsaT4NCjxwPlZlcnNpb24gMS4wMS4gLSBTZXB0ZW1iZXIgMjAwNTwvcD4NCjxwPk1pbm9yIGZpeGVzLjwvcD48L2xpPg0KPGxpPg0KPHA+VmVyc2lvbiAxLjAyLiAtIFNlcHRlbWJlciAyMDA1PC9wPg0KPHA+QWRkZWQgYWJpbGl0eSB0byBzcGVjaWZ5IHNvcnQgb3JkZXI8L3A+DQo8L2xpPg0KPGxpPg0KPHA+VmVyc2lvbiAxLjAzLiAtIFNlcHRlbWJlciAyMDA1PC9wPg0KPHA+Rml4IHJlZ2FyZGluZyBjb25mbGljdCBpbiB0ZW1wbGF0ZSBuYW1lczwvcD4NCjwvbGk+DQo8bGk+DQo8cD5WZXJzaW9uIDEuMDQuIC0gU2VwdGVtYmVyIDIwMDU8L3A+DQo8cD5BZGRlZCBhYmlsaXR5IHRvIHJlLXNjYW4gYSBkaXJlY3RvcnksIGFuZCB0byB1cGxvYWQgZmlsZXMgZnJvbSB0aGUgYWRtaW4gcGFnZTwvcD4NCjwvbGk+DQo8bGk+DQo8cD5WZXJzaW9uIDEuMDUuIC0gU2VwdGVtYmVyIDIwMDU8L3A+DQo8cD5GaXhlZCBzb21lIFBIUCB2YXJpYWJsZSBpc3N1ZXM8L3A+DQo8L2xpPg0KPGxpPg0KPHA+VmVyc2lvbiAxLjA2LiAtIFNlcHRlbWJlciAyMDA1PC9wPg0KPHA+QWRkZWQgYXV0aG9yIGZpZWxkIHRvIHRoZSBhZG1pbiBwYW5lbCB1cGxvYWQgZm9ybSwgYWRkZWQgYSBzdW1tYXJ5IGZpZWxkLCBhbmQgbWFkZSBkZXNjcmlwdGlvbiBhIHRleHQgYXJlYSwgYW5kIGFsbG93IHRoZSB1c2VyIHRvIHNwZWNpZnkgYSBkZXN0aW5hdGlvbiBmaWxlIG5hbWU8L3A+DQo8L2xpPg0KPGxpPg0KPHA+VmVyc2lvbiAxLjA3LiAtIFNlcHRlbWJlciAyMDA1PC9wPg0KPHA+QWRkZWQgdGhlIGFiaWxpdHkgdG8gcmVuYW1lIGZpbGVzIGFuZCBmaXhlZCBhIHNjYW4gZXJyb3I8L3A+DQo8L2xpPg0KPGxpPg0KPHA+VmVyc2lvbiAxLjA4LiAtIFNlcHRlbWJlciAyMDA1PC9wPg0KPHA+QmV0dGVyIGhhbmRsaW5nIG9mIG5hbWVzIHdpdGggc3BhY2VzLCBhbmQgYSBmZXcgbWlub3IgZXJyb3JzIGZpeGVkLiAgQWRkZWQgc3dlZGlzaCB0cmFuc2xhdGlvbiAodGhhbmtzIHdlc3Rpcyk8L3A+PC9saT4NCjxsaT4NCjxwPlZlcnNpb24gMS4xLjAuIC0gT2N0b2JlciAyMDA1PC9wPg0KIDx1bD4NCiAgIDxsaT5Nb2RpZmllZCBBdHRlbXB0VXBsb2FkIGZ1bmN0aW9uIHNvIGl0IGNvdWxkIGJlIGNhbGxlZCBleHRlcm5hbGx5PC9saT4NCiAgIDxsaT5BZGRlZCBHZXRVcGxvYWREZXRhaWxzIGZ1bmN0aW9uIHRoYXQgcmV0dXJucyBhbGwgb2YgdGhlIGRldGFpbHMgYWJvdXQgYSBtb2R1bGUsIGluY2x1ZGluZyBhIGxpbms8L2xpPg0KICAgPGxpPkFkZGVkIFJlZGlyZWN0cyBzbyB0aGF0IHdvcmtpbmcgd2l0aCB0aGUgbW9kdWxlIGlzIGFsb3QgbmljZXIsIGl0IHJldHVybnMgdG8gdGhlIHJpZ2h0IHRhYjwvbGk+DQogICA8bGk+Q2hhbmdlZCB0aGUgZnJvbnQgdGVtcGxhdGUgdG8gbG9vayBhIGxpdHRsZSBiZXR0ZXIgYW5kIG1ha2UgbW9yZSBzZW5zZTwvbGk+DQogICA8bGk+Rml4ZXMgdG8gdGhlIHVwbG9hZHMgc3R1ZmYgc28gdGhhdCB0aGUgZGVzY3JpcHRpb24gaXMgc2V0LCBhbmQgbmFtZSBhbmQgc3VtbWFyeSBhcmUgcHV0IGluIHRoZSByaWdodCBwbGFjZTwvbGk+DQogICA8bGk+Rml4ZXMgdG8gZXZlbiBiZXR0ZXIgaGFuZGxlIHNwYWNlcyBpbiBuYW1lczwvbGk+DQogICA8bGk+T3B0aW9uYWx5IHBsYWNlIGR1bW15IGluZGV4Lmh0bWwgZmlsZXMgaW4gZWFjaCB1cGxvYWQgZGlyZWN0b3J5PC9saT4NCiAgIDxsaT5JZiBzcGVjaWZ5aW5nIGEgZGVzdGluYXRpb24gbmFtZSwgYW5kIG5vIGV4dGVuc2lvbiBpcyBnaXZlbiwgdGhlIGV4dGVuc2lvbiBvZiB0aGUgb3JpZ2luYXRpbmcgZmlsZSAoaWYgYW55IGV4aXN0cyBpcyB1c2VkPC9saT4NCiA8L3VsPg0KIDxwPjxlbT48Yj5JbXBvcnRhbnQhPC9iPjwvZW0+PGJyLz5JdCBpcyBub3QgcG9zc2libGUgdG8gdXBncmFkZSBmcm9tIGFueSBvdGhlciB2ZXJzaW9uIG9mIHRoZSBVcGxvYWRzIG1vZHVsZSB0byAxLjEuMC4gIFRoaXMgaXMgZHVlIHRvIHNvbWUgZXJyb3JzIHRoYXQgd2VyZSBtYWRlIGluIHRoZSBkYXRhYmFzZSByb3V0aW5lcywgYW5kIGV2ZW4gaW4gdGhlIHVwZ3JhZGUgcm91dGluZSBpbiAxLjAuNi4gIFlvdSBtdXN0IGRlLWluc3RhbGwgdGhlIG9sZCB2ZXJzaW9uLCBhbmQgdGhlbiByZS1pbnN0YWxsIHRoZSBuZXcgdmVyZXNpb24uIFRoaXMgd2lsbCBjYXVzZSBzaWduaWZpY2FudCBkaWZmaWN1bHR5IGlmIHlvdSBoYXZlIGRzY3JpcHRpb25zLCBldGMsIGluIHlvdXIgdGFibGVzPC9wPg0KPC9saT4NCjxsaT4NCjxwPlZlcnNpb24gMS4xLjEuIC0gT2N0b2JlciwgMjAwNTwvcD4NCjxwPkZpeGVkIGEgY291cGxlIG9mIG1pbm9yIGJ1Z3MgaW4gdGhlIEdldFVwbG9hZERldGFpbHMgYW5kIGFkZGVkIGFub3RoZXIgbGluayAob3IgYSB1cmwpIHRvIHRoZSB1cGxvYWRlZCBmaWxlLjwvcD4NCjwvbGk+DQo8bGk+DQo8cD5WZXJzaW9uIDEuMS4yLiAtIE9jdG9iZXIsIDIwMDU8L3A+DQo8cD5GaXhlZCB0aGUgVVJMIGZpZWxkIGluIEdldFVwbG9hZERldGFpbHMgdG8gcmV0dXJuIGEgZG93bmxvYWQgbGluayBhbmQgYWRkZWQgYW4gYWJzdXJsIGZpZWxkIHdoaWNoIHJldHVybnMgdGhlIGFic29sdXRlIHBhdGggdG8gdGhlIGZpbGUgb24gdGhlIHdlYnNlcnZlci4gIENsaWNrcyBvbiB0aGlzIGxpbmsgd2lsbCBub3QgYmUgY291bnRlZDwvcD4NCjwvbGk+DQo8bGk+DQo8cD5WZXJzaW9uIDEuMS4zLiAtIE9jdG9iZXIsIDIwMDU8L3A+DQo8cD5GaXhlZCB0aGUgdXBncmFkZSBwcm9ibGVtIGZyb20gdGhlIDEuMC54IHNlcmllcy4gIFVzZXJzIG9mIHRoZSAxLjAueCBzZXJpZXMgc2hvdWxkIGJlIGFibGUgdG8gdXBncmFkZSB0byAxLjEuMyBub3cgd2l0aCBubyBkaWZmaWN1bHR5LiA8Yj5UaG9zZSBhcmUgZmFtb3VzIGxhc3Qgd29yZHMsIHBsZWFzZSBiYWNrdXAgZmlyc3Q8L2I+LiBGaXhlZCB0aGUgY29udGVudCByZWRpcmVjdCB0aGluZ3MgdGhhdCB3ZXJlIGlycml0YXRpbmcgbWUuICBBbHNvIGFkZGVkIGNhdGVnb3J5PWFsbCB0byBsaXN0IGFsbCBvZiB0aGUgdXBsb2FkcyBpbiBhbGwgbGlzdGFibGUgY2F0ZWdvcmllcyA8ZW0+KGxldHMgYWxsIGhvcGUgSSBnb3QgdGhlIHNxbCBmaWd1cmVkIG91dCBwcm9wZXJseSk8L2VtPi48L3A+DQo8L2xpPg0KPGxpPg0KPHA+VmVyc2lvbiAxLjEuNC4gLSBPY3RvYmVyLCAyMDA1PC9wPg0KPHA+QWRkZWQgdGhlIGNvdW50IHBhcmFtZXRlciB0byBsaXN0IG9ubHkgdGhlIGZpcnN0IE4gcmVjb3JkcywgYW5kIGFkZGVkICZxdW90O3N1bW1hcnlsaW5rJnF1b3Q7LCBhbmQgJnF1b3Q7Y2F0ZWdvcnkmcXVvdDsgdG8gdGhlIHRlbXBsYXRlcyBmb3Igd2VzdGlzLiAgRm9yIGV4YW1wbGVzIG9uIGhvdyB0byB1c2UgdGhlbSByZXNldCB5b3VyIHRlbXBsYXRlcyBiYWNrIHRvIGRlZmF1bHQuPC9wPjwvbGk+DQo8bGk+DQo8cD5WZXJzaW9uIDEuMS41LiAtIE5vdmVtYmVyLCAyMDA1PC9wPg0KPHA+QWRkZWQgZW1haWwgbm90aWZpY2F0aW9uIGFuZCBzb21lIGJ1ZyBmaXhlczwvcD4NCjwvbGk+DQo8bGk+DQo8cD5WZXJzaW9uIDEuMS42LiAtIE5vdmVtYmVyLCAyMDA1PC9wPg0KPHA+QWRkZWQgYW4gYXBpIGZ1bmN0aW9uIGFuZCBmaXhlZCBzb21lIHJlZGlyZWN0aW9uIHN0dWZmPC9wPg0KPC9saT4NCjxsaT4NCjxwPlZlcnNpb24gMS4xLjcuIC0gTm92ZW1iZXIsIDIwMDU8L3A+DQo8cD5Nb3JlIEFQSSBmdW5jdGlvbnMsIGFuZCBub3cgaWdub3JlIGRvdCBmaWxlcyB3aGVuIHNjYW5uaW5nLiAgRW1haWwgbm90aWZpY2F0aW9uIGlzIG5vdyBpbi48L3A+DQo8L2xpPg0KPGxpPg0KPHA+VmVyc2lvbiAxLjEuOC4gLSBKYW51YXJ5LCAyMDA2PC9wPg0KPHA+KiBJbXByb3ZlZCBkb2NzIHdydCBhcGFjaGUgYW5kIHBocCBjb25maWdzLjwvcD4NCjxwPiogRml4ZWQgcHJvYmxlbSB3aGVyZSBmaWxlc2l6ZSB3YXMgc2hvd2luZyB1cCBhcyAwLjwvcD4NCjxwPiogTW9kaWZpZWQgcGVybWlzc2lvbnMgdG8gYmUgbW9yZSBncmFudWxhcjwvcD4NCjxwPiogQWRkZWQgc29tZSBjb21tZW50cyBhbmQgdmVyYm9zaXR5IHRvIHRoZSBjYXRlZ29yeSBhbmQgdXBsb2FkcyBmb3JtcyBpbiB0aGUgYWRtaW4gc2VjdGlvbjwvcD4NCjxwPiogQWRkZWQgJnF1b3Q7cmFuZG9tJnF1b3Q7IHNvcnQgb3JkZXI8L3A+DQo8cD4qIFNvbWUgUEhQNSBmaXhlczwvcD4NCjwvbGk+DQo8bGk+DQo8cD5WZXJzaW9uIDEuMS45LiAtIEphbnVhcnksIDIwMDY8L3A+DQo8cD4qIEFkZGVkIHRoZSBhYmlsaXR5IHRvIHVwbG9hZCBhIHRodW1ibmFpbCBpbWFnZTwvcD4NCjxwPiogU29tZSBpbXByb3ZlZCBhdWRpdGluZzwvcD4NCjxwPiogeG1sIG5vdyBhZGRlZCB0byB0aGUgZGVmYXVsdCBmaWxlIHR5cGVzIChuZXcgaW5zdGFsbHMgb25seSk8L3A+DQo8cD4qIEFkZGVkIGEgY29uZmlybWF0aW9uIG1lc3NhZ2UgdG8gdGhlIHJlc2V0IHRvIGRlZmF1bHRzIGJ1dHRvbnMgb2YgdGhlIHRlbXBsYXRlIHBhZ2VzLjwvcD4NCjxwPiogQWRkZWQgdGhlIGZpbGVfZXh0ZW5zaW9ucyBwYXJhbWV0ZXIgZm9yIHRoZSB1cGxvYWQgZm9ybTwvcD4NCjxwPiogVGhlIGN1cnJlbnQgY2F0ZWdvcnkgc2VsZWN0ZWQgaW4gdGhlIGZpbGVzIGZpbHRlciBpcyBzdGlja3kuDQo8cD4qIEFkZGVkIGEgcHJlZmVyZW5jZSB0byBlbmZvcmljZSBmaWxlbmFtZSBleHRlbnNpb25zIChkZWZhdWx0cyB0byBvbik8L3A+DQo8cD4qIEFkZGVkIGEgbGluayB0byB0aGUgZWRpdCBwYWdlLCBpbiB0aGUgbmFtZSBjb2x1bW4gb2YgdGhlIGZpbGVzIGxpc3QuPC9wPg0KPHA+KiBNaW5vciBjaGFuZ2VzIHRvIHRoZSBsYXlvdXQgYW5kIHRleHQgdG8gYWRkIGNsYXJpdHkuPC9wPg0KPHA+KiBBZGRlZCBkb3dubG9hZF91cmwgYXMgYW4gYXZhaWxhYmxlIHNtYXJ0eSB0YWcgaW4gdGhlIHRlbXBsYXRlczwvcD4NCjxsaT4NCjxwPlZlcnNpb24gMS4xLjEwLiAtIEZlYnJ1YXJ5LCAyMDA2PC9wPg0KPHA+KiBTdW1tYXJ5IG5vdyBkZWZhdWx0cyB0byB0aGUgZmlsZW5hbWUgKHdpdGhvdXQgdGhlIGV4dGVuc2lvbikgaWYgbm9uZSBpcyBzcGVjaWZpZWQ8L3A+DQo8cD4qIE5vdyBjb3JyZWN0bHkgaGFuZGxlIGlmIHRoZSB0aHVtYm5haWwgZXh0ZW5zaW9uIGlzIG5vdCBpbiB0aGUgYWNjZXB0ZWQgZXh0ZW5zaW9uIGxpc3Q8L3A+DQo8cD4qIE5vIGxvbmdlciBkaXNwbGF5IGFueSBjb250ZW50IGluIHRoZSBmaWxlcyB0YWIgaWYgdGhlcmUgYXJlIG5vIGNhdGVnb3JpZXMgZGVmaW5lZDwvcD4NCjxwPiogRGlzcGxheSBhIGxpbmsgaW4gdGhlIGVycm9yIHBhZ2UgdGhhdCB0YWtlcyB5b3UgYmFjayB0byB0aGUgbWFpbiBhZG1pbiBwYW5lbDwvcD4NCjxwPiogQWxsb3cgZm9yIHJlcGxhY2luZyBvZiB1cGxvYWRlZCBmaWxlczwvcD4NCjwvbGk+DQo8bGk+DQo8cD5WZXJzaW9uIDEuMS4xMS4gLSBNYXJjaCwgMjAwNjwvcD4NCjxwPkFkZGVkIHRoZSBhYmlsaXR5IGZvciBhIGxpbmsgdG8gYSBkZXRhaWxlZCBwYWdlIHdoZW4gaW4gc3VtbWFyeSBtb2RlLjwvcD4NCjxwPlNwbGl0IHRoZSBkZWZhdWx0IGFjdGlvbiBhbmQgZGVmYXVsdGFkbWluIGFjdGlvbnMgaW50byBzZXBhcmF0ZSBmaWxlcywgZm9yIGEgYml0IG9mIG1lbW9yeSBpbXByb3ZlbWVudCwgaG9wZWZ1bGx5PC9wPg0KPHA+QWRkIHRoZSBhYmlsaXR5IHRvIHJlZGlyZWN0IHRvIGFub3RoZXIgcGFnZSBhZnRlciBhIGZyb250ZW5kIHVzZXIgdXBsb2FkZWQgYSBmaWxlPC9wPg0KPC9saT4NCjxsaT4NCjxwPlZlcnNpb24gMS4xLjEyLiAtIE1hcmNoLCAyMDA2PC9wPg0KPHA+QWRkZWQgdGhlIHNpbmdsZXN1bW1hcnkgbW9kZSB0byBkaXNwbGF5IGEgc2luZ2xlIHVwbG9hZCBpbiBzdW1tYXJ5IG1vZGU8L1A+DQo8L2xpPg0KPGxpPg0KPHA+VmVyc2lvbiAxLjEuMTMuIC0gQXByaWwsIDIwMDY8L3A+DQo8cD5BZGRlZCBvcHRpb25hbCBmaWx0ZXJpbmcgb24gdGhlIGZyb250ZW5kLCBhbmQgYSBjb3VwbGUgb2YgZXh0cmEgcGFyYW1ldGVycyB0byBnbyB3aXRoIGl0PC9wPg0KPHA+Rml4ZWQgYSBwcm9ibGVtIHdoZXJlIGl0IHdvdWxkIGFsbG93IHlvdSB0byBlbnRlciBhIGJsYW5rIHBhdGggd2hlbiBjcmVhdGluZyBhIGNhdGVnb3J5PC9wPg0KPHA+U3BsaXQgc3R1ZmYgaW50byAoc29tZSkgc2VwYXJhdGUgYWN0aW9uIGZpbGVzIGZvciBzb21lIGhvcGVmdWwgcGVyZm9ybWFuY2UgaW5jcmVhc2VzPC9wPg0KPHA+QWRkZWQgY29weXJpZ2h0IG5vdGljZXM8L3A+DQo8cD5DaGFuZ2VkIChvcHRpb25hbCkgZGVwZW5kZW5jeSBmcm9tIFVzZXJJRCB0byBGcm9udEVuZFVzZXJzIE1vZHVsZS48L3A+DQo8L2xpPg0KPGxpPg0KPHA+VmVyc2lvbiAxLjIuMSAtIEFwcmlsLCAyMDA2PC9wPg0KPHA+Q2hhbmdlZCBfc2NhbkRpcmVjdG9yeSB0byBhbiBBUEkgZnVuY3Rpb24gU2NhbkRpcmVjdG9yeSBhbmQgdGhlbiBhZGRlZCBTbWFydFNjYW5EaXJlY3RvcnkgdG8gc2NhbiB0aGUgZGlyZWN0b3J5IGJlZm9yZSBkaXNwbGF5aW5nIHRoZSBzdW1tYXJ5IG9yIGRldGFpbCBsaXN0aW5nIHRvIGhhbmRsZSB0aGUNCmNhc2Ugd2hlcmUgc29tZWJvZHkgdXBsb2FkZWQgZmlsZXMgdmlhIEZUUCBvciBzb21ldGhpbmcgYW5kIGRpZCBub3QgZ28gaW50byB0aGUgYWRtaW4gc2VjdGlvbiB0byB1cGRhdGUgdGhlIGNhdGVnb3JpZXMuPC9wPg0KPHA+Q29ycmVjdGlvbiB0byBhbGwgZGIgYWNjZXNzIHN0dWZmLiBIb3BlZnVsbHkgcHJvdmlkZXMgYSBwZXJmb3JtYW5jZSBpbmNyZWFzZS48L3A+DQo8cD5GaXhlcyB0byB0aGUgYWJvdXQgc3R1ZmYsIG5vdyB1c2UgQ3JlYXRlUGFyYW1ldGVyPC9wPg0KPHA+QWRkZWQgdGhlIHVwbG9hZF90ZW1wbGF0ZSwgc3VtbWFyeV90ZW1wbGF0ZSwgYW5kIGRldGFpbF90ZW1wbGF0ZSAob3B0aW9uYWwpIHBhcmFtZXRlcjwvcD4NCjxwPkFkZGVkIHRoZSBub2F1dGhvciBwYXJhbWV0ZXIsIGFuZCB0aGUga2V5IHBhcmFtZXRlci4gIFRoZSBrZXkgcGFyYW1ldGVyIGFsbG93cyB0aGUgdXBsb2FkcyBtb2R1bGUgdG8gYmUgZW1iZWRkZWQgaW50byBvdGhlciBtb2R1bGVzPC9wPg0KPHA+TW92ZWQgdG8gdW5kZXIgdGhlIGNvbnRlbnQgbWVudSwgYW5kIGVudGl0bGVkICYjMDM5O0ZpbGVzIChVcGxvYWQgTW9kdWxlKSYjMDM5OzwvcD47DQo8L2xpPg0KPGxpPg0KPHA+VmVyc2lvbiAxLjIuMiAtIEp1bmUsIDIwMDYNCjxwPkFkZGVkIHRoZSBhYmlsaXR5IHRvIGhhdmUgbXVsdGlwbGUgZGF0YWJhc2UgdGVtcGxhdGVzLCBhbmQgdG8gc2VsZWN0IG9uZSBvbiB0aGUgdGFnIHdpdGggdGhlIHRlbXBsYXRlIHBhcmFtZXRlci48L3A+DQo8cD5GaXhlZCBhbiBpc3N1ZSB3aGVyZSBmaWxlcyB3ZXJlIGdldHRpbmcgY29ycnVwdGVkIG9uIGRvd25sb2FkPC9wPg0KPC9saT4NCjxsaT4NCjxwPlZlcnNpb24gMS4yLjMgLSBKdW5lLCAyMDA2DQo8cD5GaXhlcyB0byB1c2UgYWRvZGItbGl0ZSBwcm9wZXIsIHJhdGhlciB0aGFuIHRlZHMgaGFjazwvcD4NCjxwPkRldGFpbCBsaW5rIG5vdyBkaXNwbGF5cyBpbmxpbmU8L3A+DQo8cD5PdGhlciBtaW5vciB0d2Vha3MgdGhhdCBJIGNhbnQgcmVtZW1iZXI8L3A+DQo8L2xpPg0KPGxpPlZlcnNpb24gMS4zLjAgLSBTZXB0ZW1iZXIsIDIwMDcNCjxwPkZpeGVzIHRvIHRoZSBEVCBmaWVsZCB0eXBlPC9wPg0KPHA+VXNlIHRoZSBGRVUgdXNlcm5hbWUgKG9wdGlvbmFsbHkpIHNvIHRoYXQgd2UgY2FuIHRyYWNrIHdoZW4gYSBsb2dnZWQgaW4gdXNlciB1cGxvYWRzIGEgZmlsZTwvcD4NCjxwPkFkZCBmaWxldHlwZSBjYXBhYmlsaXRpZXMgdG8gYXNzb2NpYXRlIGFuIGljb24gd2l0aCBhIHBhcnRpY3VsYXIgdXBsb2FkLiAgQWxzbyBzdXBwb3J0IGFuIHVua25vd24gZmlsZSB0eXBlIGZvciBhbnl0aGluZyB0aGF0IGRvZXMgbm90IG1hdGNoLjwvcD4NCjxwPkNvbXBsZXRlbHkgcmUtd29ya2VkIHRoZSBtdWx0aXBsZSBkYXRhYmFzZSB0ZW1wbGF0ZSBzdHVmZi48L3A+DQo8cD5BZGp1c3RtZW50cyB0byB0aGUgZGVmYXVsdCB0ZW1wbGF0ZXM8L3A+DQo8cD5GaXhlcyB0byB1c2luZyBjYXRlZ29yeT0mcXVvdDthbGwmcXVvdDs8L3A+DQo8cD5HZW5lcmF0ZSB0aHVtYm5haWxzIGF1dG9tYXRpY2FsbHkgKG9wdGlvbmFsbHkpIGZvciBjZXJ0YWluIGZpbGUgdHlwZXMsIG9uIHVwbG9hZCwgYW5kIG9uIHNjYW4uPC9wPg0KPHA+QWRkIGNhcHRjaGEgc3VwcG9ydCB0byB0aGUgdXBsb2FkIGZvcm08L3A+DQo8cD5BZGQgYSBzYWZlIG1vZGUgd2FybmluZyBpbiB0aGUgYWRtaW4gcGFuZWw8L3A+DQo8cD5Vc2VzIGNodW5rZWQgZG93bmxvYWRzLjwvcD4NCjxwPkFkZHMgcHJlZml4IGFuZCBwcmVmaXhfZmV1IGNhcGFiaWxpdHkgdG8gdXBsb2FkZWQgZmlsZXMuPC9wPg0KPHA+QWRkZWQgdGhlIGRldGFpbHBhZ2UgcGFyYW0uPC9wPg0KPHA+QWRkZWQgdGhlIGFiaWxpdHkgdG8gZGlzcGxheSBhbiBpbWFnZSBpbiBmdWxsIHNpemUgKG9yIHdoYXRldmVyIHNpemUgd2Ugd2FudCksIHNvIHRoYXQgdGhlIHVwbG9hZHMgbW9kdWxlIGNhbiBiZSB1c2VkIGFzIGEgZ2FsbGVyeS48L3A+DQo8cD5BZGRlZCBzZWN1cml0eSAodmlhIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZSkgdG8gY2F0ZWdvcmllczwvcD4NCjxwPkFkZGVkIGEgc2VsZWN0IG1vZGUgdG8gZ2VuZXJhdGUgYSBwdWxsZG93biBvZiBmaWxlcyBpbiBhIGNhdGVnb3J5LCBmb3IgdXNlIHdoZW4gYXR0YWNoaW5nIHVwbG9hZHMgbW9kdWxlIHRvIHNvbWUgb3RoZXIgbW9kdWxlLjwvcD4NCjwvbGk+DQo8bGk+DQo8cD5BZGRzIGEgY2F0ZWdvcnkgYnJvd3NlciwgZml4ZXMgYSByZXcgbWlub3IgaXNzdWVzLCBhbmQgdHdlYWtzIHRoZSBhdmFpbGFibGUgZmlsZSB0eXBlIGljb25zPC9wPg0KPC9saT4NCjwvdWw+JzsKJGxhbmdbJ2RhdGUnXSA9ICdEYXRhJzsKJGxhbmdbJ2RhdGV1cGxvYWRlZCddID0gJ0RhdGEgemHFgmFkb3dhbmlhJzsKJGxhbmdbJ2RlZmF1bHQnXSA9ICdEb215xZtsbmUnOwokbGFuZ1snZGVsZXRlJ10gPSAnU2thc3VqJzsKJGxhbmdbJ2Rlc2NyaXB0aW9uJ10gPSAnT3Bpcyc7CiRsYW5nWydkZXN0bmFtZSddID0gJ1phxYJhZHVqIGpha28nOwokbGFuZ1snZGV0YWlsX3RlbXBsYXRlJ10gPSAnU3phYmxvbnkgc3pjemVnJm9hY3V0ZTvFgm93ZSc7CiRsYW5nWydkb3dubG9hZGVkJ10gPSAnUGxpayAlcyB6b3N0YcWCIMWbY2nEhWduacSZdHkuJzsKJGxhbmdbJ2Rvd25sb2FkcyddID0gJ8WaY2nEhWduacSZxIcnOwokbGFuZ1snZWRpdCddID0gJ0VkeXR1aic7CiRsYW5nWydlZGl0Y2F0ZWdvcnknXSA9ICdFZHl0dWoga2F0ZWdvcmnEmSc7CiRsYW5nWydlZGl0dXBsb2FkJ10gPSAnRWR5dHVqIHVwbG9hZCc7CiRsYW5nWydlcnJvciddID0gJ0LFgsSFZCEnOwokbGFuZ1snZXJyb3JfcGF0aGludXNlJ10gPSAnS2F0ZWdvcmlhIHXFvHl3YWrEhWNhIHRlZ28ga2F0YWxvZ3UganXFvCBpc3RuaWVqZSc7CiRsYW5nWydlcnJvcl9jYXRlZ29yeWV4aXN0cyddID0gJ0LFgsSFZDogS2F0ZWdvcmlhIGp1xbwgaXN0bmllamUnOwokbGFuZ1snZXJyb3JfY2F0ZWdvcnlub3RlbXB0eSddID0gJ0LFgsSFZDogTmllIG1vxbxuYSBza2Fzb3dhxIcgbmllcHVzdGVqIGthdGVnb3JpaSc7CiRsYW5nWydlcnJvcl9jYXRlZ29yeW5vdGZvdW5kJ10gPSAnQsWCxIVkOiBOaWUgem5hbGV6aW9uIGthdGVnb3JpaSc7CiRsYW5nWydlcnJvcl9kYmVycm9yJ10gPSAnQsWCxIVkIGJhenkgZGFueWNoISc7CiRsYW5nWydlcnJvcl9lbXB0eWNhdGVnb3J5J10gPSAnQsWCxIVkOiBLYXRlZ29yaWEgamVzdCBwdXN0YSEnOwokbGFuZ1snZXJyb3JfZW1wdHlwYXRoJ10gPSAnQsWCxIVkOiDFmmNpZcW8a2EgamVzdCBwdXN0YSEnOwokbGFuZ1snZXJyb3JfZmlsZWV4aXN0cyddID0gJ0LFgsSFZDogUGxpayAlcyBqdcW8IGlzdG5pZWplLic7CiRsYW5nWydlcnJvcl9maWxlbm90Zm91bmQnXSA9ICdCxYLEhWQ6IFBsaWsgJSBuaWUgem9zdGHFgiBvZG5hbGV6aW9ueS4nOwokbGFuZ1snZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJ10gPSAnQsWCxIVkOiBOaWV3eXN0YXJjemFqxIVjYSBsaWN6YmEgcGFyYW1ldHImb2FjdXRlO3chJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRhdXRob3InXSA9ICdCxYLEhWQ6IE5pZXByYXdpZMWCb3d5IGx1YiBwdXN0eSBhdXRvci4nOwokbGFuZ1snZXJyb3JfaW52YWxpZGNhdGVnb3J5J10gPSAnQsWCxIVkOiBOaWVwcmF3aWTFgm93YSBsdWIgcHVzdGEga2F0ZWdvcmlhLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkZGVzY3JpcHRpb24nXSA9ICdCxYLEhWQ6IE5pZXByYXdpZMWCb3d5IGx1YiBwdXN0eSBvcGlzLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkZmlsZSddID0gJ0LFgsSFZDogTmllcHJhd2lkxYJvd2EgbHViIHB1c3RhIG5hendhIHBsaWt1Lic7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXBsb2FkZmlsZW5hbWUnXSA9ICdCxYLEhWQ6IFBsaWtpIHogdHltIHJvenN6ZXJ6ZW5pZW0gc8SFIG5pZWRvendvbG9uZSAoJXMpLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXBsb2FkaWQnXSA9ICdCxYLEhWQ6IE5pZXByYXdpZMWCb3dlIElEIHVwbG9hZHUnOwokbGFuZ1snZXJyb3Jfbm9maWxlcyddID0gJ0LFgsSFZDogbmllIHpuYWxlemlvbm8gcGFzdWrEhWN5Y2ggcGxpayZvYWN1dGU7dyc7CiRsYW5nWydmaWxlcyddID0gJ1BsaWtpJzsKJGxhbmdbJ2ZpeG1lJ10gPSAnTmFwcmF3IHNwYWNqZSc7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdaYXJ6xIVkemVuaWEgemHFgmFkb3dhbnltaSBwbGlrYW1pIEZFVSc7CiRsYW5nWydoZWxwJ10gPSAnPGgzPldoYXQgRG9lcyBUaGlzIERvPzwvaDM+DQo8cD5JdCBpcyBhIG1vZHVsZSBmb3IgYWxsb3dpbmcgcGVvcGxlIHRvIHVwbG9hZCBhbmQgZG93bmxvYWQgZmlsZXMgdG8gYW5kIGZyb20geW91ciBzaXRlLiAgSXQga2VlcHMgdHJhY2sgb2Ygd2hvIHVwbG9hZGVkIGEgZmlsZSwgYW5kIHdobyBoYXMgZG93bmxvYWRlZCBpdC4gIEFzIHdlbGwsIHlvdSBjYW4gc29ydCBmaWxlcyBpbnRvIGNhdGVnb3JpZXMsIGFuZCBtYW5hZ2UgdGhlIGZpbGVzIHRoYXQgd2VyZSB1cGxvYWRlZCBsaWtlIGV2ZXJ5IGFkbWluaXN0cmF0b3Igd291bGQgZG88L3A+IA0KPGgzPkhvdyBEbyBJIFVzZSBJdDwvaDM+DQo8cD48c3Ryb25nPldhcm5pbmc8L3N0cm9uZz4gLSBUaGUgcHJvcGVyIGJlaGF2aW91ciBvZiB0aGlzIG1vZHVsZSBkZXBlbmRzIG9uIG51bWVyb3VzIHBocCBjb25maWd1cmF0aW9uIHZhcmlhYmxlcy4gIFRoZXNlIGluY2x1ZGUgPGVtPihidXQgYXJlIG5vdCBsaW1pdGVkIHRvKTwvZW0+LCBwaHAmIzAzOTtzIG1lbW9yeV9saW1pdCwgc2FmZV9tb2RlLCBmaWxlX3VwbG9hZHMsIHVwbG9hZHNfbWF4X2ZpbGVzaXplLCBhbmQgbWF4X2V4ZWN1dGlvbl90aW1lLiAgVGhlc2UgdmFyaWFibGVzIG1heSBuZWVkIGFkanVzdG1lbnQgZm9yIHRoaXMgbW9kdWxlIHRvIHdvcmsgcHJvcGVybHkgb24geW91ciBzaXRlLiAgSXQgaXMgYWR2aXNlZCB0aGF0IHlvdSB3b3JrIHdpdGggeW91ciBzeXN0ZW0gYWRtaW5pc3RyYXRvciBvciBob3N0IHByb3ZpZGVyIHRvIHR1bmUgdGhlc2Ugc2V0dGluZ3MgZm9yIHlvdXIgcmVxdWlyZW1lbnRzLjwvcD4NCjxwPlRvIHVzZSB0aGlzIG1vZHVsZSwgdG8gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIGZpbGVzIHRvIHlvdXIgc2l0ZSwgeW91IHNob3VsZCBpbnN0YWxsIHRoZSBtb2R1bGUsIGFuZCB0aGVuIGNyZWF0ZSBvbmUgb3IgbW9yZSBjYXRlZ29yaWVzIChhLmsuYSkgZGlyZWN0b3JpZXMgZm9yIHRoZSB1cGxvYWRlZCBmaWxlcyB0byBnbyBpbnRvLiBUaGVuIGFkZCBhIHRhZyBpbnRvIGEgcGFnZSBvciB0ZW1wbGF0ZSBzb21ld2hlcmUgbGlrZSB7Y21zX21vZHVsZSBtb2R1bGU9JnF1b3Q7VXBsb2FkcyZxdW90OyBjYXRlZ29yeT0mcXVvdDtzb21lY2F0ZWdvcnkmcXVvdDsgbW9kZT0mcXVvdDtzb21lbW9kZSZxdW90O30uICBXaGVyZSBtb2RlIG1hdGNoZXMgb25lIG9mIHRoZSBtb2RlcyBsaXN0ZWQgYmVsb3cuICBUaGUgb3V0cHV0IHdpbGwgZGlmZmVyIGRlcGVuZGluZyB1cG9uIHdoaWNoIG1vZGUgeW91IHNlbGVjdC48L3A+DQo8cD5UaGlzIG1vZHVsZSBjYW4gdXNlIHRoZSBGcm9udGVuZFVzZXJzIG1vZHVsZSAob3B0aW9uYWwpIHRvIGdldCBpbmZvcm1hdGlvbiBhYm91dCBhbnkgY3VycmVudGx5IGxvZ2dlZCBpbiB1c2VycyB0byBwYXJ0bHkgZmlsbCBpbiB0aGUgZm9ybSB3aGVuIHVwbG9hZGluZyBmaWxlczs8L3A+DQo8aDM+UGVybWlzc2lvbnM8L2gzPg0KPHVsPg0KPGxpPjxlbT5NYW5hZ2UgVXBsb2FkczwvZW0+IHBlcm1pc3Npb24gaXMgbmVlZGVkIHRvIG1hbmFnZSBjYXRlZ29yaWVzLCBhbmQgdGhlIGZpbGVzIHdpdGhpbiB0aGVtLjwvbGk+DQo8bGk+PGVtPk1vZGlmeSBUZW1wbGF0ZXM8L2VtPiBwZXJtaXNzaW9uIGlzIG5lZWRlZCBlZGl0IGFueSBvZiB0aGUgdGVtcGxhdGVzLjwvbGk+DQo8bGk+PGVtPk1vZGlmeSBTaXRlIFByZWZlcmVuY2VzPC9lbT4gcGVybWlzc2lvbiBpcyBuZWVkZWQgYW55IG9mIHRoZSBmaWxlIHNldHRpbmdzLjwvbGk+DQo8L3VsPg0KPGgzPkNhdGVnb3J5IEJyb3dzaW5nPC9oMz4NCjxwPlBsYWNpbmcgYSB0YWcgbGlrZSB7Y21zX21vZHVsZSBtb2R1bGU9JnF1b3Q7VXBsb2FkcyZxdW90OyBhY3Rpb249JnF1b3Q7Y2F0ZWdvcnlzdW1tYXJ5JnF1b3Q7IHRlbXBsYXRlPSZxdW90O3N1bW1hcnl0ZW1wbGF0ZSZxdW90OyBzb3J0b3JkZXI9JnF1b3Q7bmFtZV9hc2MmcXVvdDsgbGlzdGluZ3RlbXBsYXRlPSZxdW90O2xpc3R0ZW1wbGF0ZSZxdW90OyBsaXN0aW5nc29ydG9yZGVyPSZxdW90O2xpc3Rzb3J0b3JkZXImcXVvdDt9DQphbGxvd3MgeW91IHRvIGRpc3BsYXkgYW4gaW50ZXJhY3RpdmUgY2F0ZWdvcnkgYnJvd3Nlci4gc29ydG9yZGVyIGNhbiBiZTogbmFtZV9hc2MsIG5hbWVfZGVzYywgc3VtbV9hc2MsIHN1bW1fZGVzYywgb3IgcmFuZG9tLg0KbGlzdGluZ3RlbXBsYXRlIGFuZCBsaXN0aW5nc29ydG9yZGVyIGFyZSBpZGVudGljYWwgdG8gdGhlIHRlbXBsYXRlIGFuZCBzb3J0b3JkZXIgcGFyYW1ldGVycyBmb3INCnRoZSAmcXVvdDtzdW1tYXJ5JnF1b3Q7IG1vZGUuPC9wPg0KPGgzPkVtYWlsaW5nPC9oMz4NCjxwPlRoaXMgbW9kdWxlIGlzIGNhcGFibGUgb2Ygc2VuZGluZyBhbiBlbWFpbCB3aGVuZXZlciBhIGZpbGUgaXMgdXBsb2FkZWQsIHNlZSB0aGUgcHJlZmVyZW5jZXMgdGFiLiAgSG93ZXZlciwgdG8gZG8gdGhpcyB0aGUgPGI+Q01TTWFpbGVyPC9iPiBwYWNrYWdlIG11c3QgYmUgaW5zdGFsbGVkIGFuZCBjb25maWd1cmVkLiAgVGhpcyBpcyBhbiA8ZW0+b3B0aW9uYWw8L2VtPiBzdGVwLCBhbmQgaWYgdGhlIENNU01haWxlciBtb2R1bGUgaXMgbm90IGluc3RhbGxlZCwgbm90aGluZyB3aWxsIGJlIGRpc3BsYXllZCB0byB0aGUgdXNlciwgb25seSBhIGxvZyBtZXNzYWdlIHdpbGwgYmUgcGxhY2VkIGludG8gdGhlIGFkbWluIGxvZzwvcD4NCjxoMz5TeXN0ZW0gU2V0dGluZ3M8L2gzPg0KPHA+PGI+Tm90ZTo8L2I+IFRoaXMgbW9kdWxlIGRvZXMgbm90IGJ5cGFzcyBvciBnZXQgcGFzdCBhbnkgZmlsZSBzaXplIGxpbWl0YXRpb25zIGluIHBocC4gIEl0IHdvcmtzIGluIGNvbmp1bmN0aW9uIHdpdGggdGhlbS4gIFRoZXJlZm9yZSB5b3UgbWF5IG5lZWQgdG8gbW9kaWZ5IHlvdXIgcGhwLmluaSBmaWxlIGFuZC9vciB5b3VyIGh0dHBkLmNvbmYgZmlsZShzKSB0byBhbGxvdyB5b3UgdG8gdXBsb2FkIGZpbGVzIGFzIGxhcmdlIGFzIHdoYXQgeW91IGhhdmUgc2V0IGluIHRoZSB1cGxvYWRzIG1vZHVsZSBwcmVmZXJlbmNlcy48L3A+DQo8aDM+QXBhY2hlIE5vdGVzPC9oMz4NCjxwPkluIG9yZGVyIHRvIGFsbG93IGxhcmdlIGZpbGUgdXBsb2FkcywgeW91IG1heSBuZWVkIHRvIG1vZGlmeSB0aGUgdXBsb2FkX21heF9maWxlc2l6ZSBwYXJhbWV0ZXIgaW4geW91ciBwaHAuaW5pICBJbiBhZGRpdGlvbiwgdGhlIExpbWl0UmVxdWVzdEJvZHkgcGFyYW1ldGVyIGluIHlvdXIgYXBhY2hlIGNvbmZpZ3VyYXRpb24sIG1heSBuZWVkIHRvIGJlIGFkanVzdGVkIHRvIG1hdGNoIHRoZSB1cGxvYWRfbWF4X2ZpbGVzaXplIHBhcmFtZXRlcjwvcD4NCjxwPk5vdGU6ICB0aGUgdXBsb2FkX21heF9maWxlc2l6ZSBwYXJhbWV0ZXIgY2FuIGJlIHNwZWNpZmllZCBpbiBieXRlcywga2lsb2J5dGVzLCBvciBtZWdhYnl0ZXMsIGhvd2V2ZXIgdGhlIExpbWl0UmVxdWV0Qm9keSBwYXJhbWV0ZXIgaXMgb25seSBzcGVjaWZpZWQgaW4gYnl0ZXM8L3A+DQonOwokbGFuZ1snaWQnXSA9ICdJRCc7CiRsYW5nWydpbnN0YWxsZWQnXSA9ICdNb2R1xYIgdyB3ZXJzamkgJXMgem9zdGHFgiB6YWluc3RhbG93YW55Lic7CiRsYW5nWydpcF9hZGRyZXNzJ10gPSAnQWRyZXMgSVAnOwokbGFuZ1snbW9kZGVzY3JpcHRpb24nXSA9ICdNb2R1xYIgcG96d2FsYWrEhWN5IG5hIMWCYWRvd2FuaWUgcGxpayZvYWN1dGU7dyBwcnpleiB1xbx5dGtvd25payZvYWN1dGU7dyBpIHphcnrEhWR6YW5pZSBuaW1pLic7CiRsYW5nWyduYW1lJ10gPSAnTmF6d2EnOwokbGFuZ1sncmVuYW1lbWVzc2FnZSddID0gJ1dwaXN6IG5vd8SFIG5henfEmSBwbGlrdSc7CiRsYW5nWydwYXRoJ10gPSAnxZpjaWXFvGthJzsKJGxhbmdbJ3BhdGhtZXNzYWdlJ10gPSAnV3liaWVyeiBpbm7EhSBrYXRlZ29yacSZLCBhYnkgcHJ6ZW5pZcWbxIcgcGxpayc7CiRsYW5nWydwYXRoaW51cGxvYWRzJ10gPSAnKHcgxZtyb2RrdSBkbyBrYXRhbG9ndSAvdXBsb2FkcyknOwokbGFuZ1sncG9zdGluc3RhbGwnXSA9ICc8cD5UaGUgdXBsb2FkcyBtb2R1bGUgaGFzIGJlZW4gc3VjY2Vzc2Z1bGx5IGluc3RhbGxlZC4gQmUgc3VyZSB0byBzZXQgJnF1b3Q7TWFuYWdlIFVwbG9hZHMmcXVvdDsgcGVybWlzc2lvbnMgdG8gdXNlIHRoaXMgbW9kdWxlITwvcD4NCjxwPjxzdHJvbmc+V2FybmluZzwvc3Ryb25nPiAtIFRoZSBwcm9wZXIgYmVoYXZpb3VyIG9mIHRoaXMgbW9kdWxlIGRlcGVuZHMgb24gbnVtZXJvdXMgcGhwIGNvbmZpZ3VyYXRpb24gdmFyaWFibGVzLiAgVGhlc2UgaW5jbHVkZSA8ZW0+KGJ1dCBhcmUgbm90IGxpbWl0ZWQgdG8pPC9lbT4sIHBocCYjMDM5O3MgbWVtb3J5X2xpbWl0LCBzYWZlX21vZGUsIGZpbGVfdXBsb2FkcywgdXBsb2Fkc19tYXhfZmlsZXNpemUsIGFuZCBtYXhfZXhlY3V0aW9uX3RpbWUuICBUaGVzZSB2YXJpYWJsZXMgbWF5IG5lZWQgYWRqdXN0bWVudCBmb3IgdGhpcyBtb2R1bGUgdG8gd29yayBwcm9wZXJseSBvbiB5b3VyIHNpdGUuICBJdCBpcyBhZHZpc2VkIHRoYXQgeW91IHdvcmsgd2l0aCB5b3VyIHN5c3RlbSBhZG1pbmlzdHJhdG9yIG9yIGhvc3QgcHJvdmlkZXIgdG8gdHVuZSB0aGVzZSBzZXR0aW5ncyBmb3IgeW91ciByZXF1aXJlbWVudHMuPC9wPic7CiRsYW5nWydwb3N0dW5pbnN0YWxsJ10gPSAnTW9kdcWCIFVwbG9hZHMgem9zdGHFgiBvZGluc3RhbG93YW55LiDFu2FkbmUgcGxpa2kgbmllIHpvc3RhxYJ5IHNrYXNvd2FuZSB6IHNlcndlcmEuJzsKJGxhbmdbJ3ByZWZlcmVuY2VzJ10gPSAnVXN0YXdpZW5pYSc7CiRsYW5nWydwcmVmc3VwZGF0ZWQnXSA9ICdVc3Rhd2llbmlhIG5ld3NsZXR0ZXJhIHpvc3RhxYJ5IHVha3R1YWxuaW9uZS4nOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5ZGVzYyddID0gJ09waXMnOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5bGlzdGFibGUnXSA9ICdQbGlraSB3IHR5bSBrYXRhbG9ndSBtb2fEhSBiecSHIHd5bGlzdG93YW5lJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeW5hbWUnXSA9ICdOYXp3YSBrYXRlZ29yaWknOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5cGF0aCddID0gJ8WaY2llxbxrYSBuYSBzZXJ3ZXJ6ZSc7CiRsYW5nWydwcm9tcHRfZGVsZXRlZGlyZWN0b3J5J10gPSAnU2thc293YcSHIGthdGFsb2cga2F0ZWdvcmlpPyc7CiRsYW5nWydwcm9tcHRfbWF4X3VwbG9hZHNpemUnXSA9ICdNYWtzeW1hbG5hIHdpZWxrb8WbxIcgcGxpa3UgKEtiKSc7CiRsYW5nWydwcm9tcHRfdmFsaWRfdXBsb2FkZXh0ZW5zaW9ucyddID0gJ0RvcHVzemN6YWxuZSByb3pzemVyemVuaWEnOwokbGFuZ1snc2NhbiddID0gJ1NrYW51aic7CiRsYW5nWydzZWxlY3RjYXRlZ29yeSddID0gJ1d5Ymllcnoga2F0ZWdvcmnEmSc7CiRsYW5nWydzaXplJ10gPSAnUm96bWlhcic7CiRsYW5nWydzaXpla2InXSA9ICdSb3ptaWFyIChrYiknOwokbGFuZ1snc3VibWl0J10gPSAnWmF0d2llcmTFuic7CiRsYW5nWydzdW1tYXJ5X3RlbXBsYXRlJ10gPSAnU3phYmxvbnkgcG9kc3Vtb3dhbmlhJzsKJGxhbmdbJ3N1bW1hcnknXSA9ICdQb2RzdW1vd2FuaWUnOwokbGFuZ1sndGl0bGVfYWRtaW5fcGFuZWwnXSA9ICdNb2R1xYIgVXBsb2Fkcyc7CiRsYW5nWyd0aXRsZV9tb2RfYWRtaW4nXSA9ICdQYW5lbCBhZG1pbmlzdHJhY3lqbnkgbW9kdcWCdSc7CiRsYW5nWyd0aXRsZV9tb2RfcHJlZnMnXSA9ICdVc3Rhd2llbmlhIG1vZHXFgnUnOwokbGFuZ1sndGl0bGVfc2luZ19sb3VkbHknXSA9ICdTaW5nIExvdWRseT8nOwokbGFuZ1sndGl0bGVfc3VibmV0X2V4Y2x1c2lvbnMnXSA9ICdXeWtsdWN6IHRlIHBvZHNpZWNpIHplIHN0YXR5c3R5ayc7CiRsYW5nWyd0aXRsZV92YWxpZF91cGxvYWRleHRlbnNpb25zJ10gPSAnRG9wdXN6Y3phbG5lIHJvenN6ZXJ6ZW5pYSc7CiRsYW5nWyd1bmluc3RhbGxlZCddID0gJ01vZHXFgiB6b3N0YcWCIG9kaW5zdGFsb3dhbnkuJzsKJGxhbmdbJ3VwZ3JhZGVkJ10gPSAnTW9kdcWCIHpvc3RhxYIgemFrdHVhbGl6b3dhbnkgZG8gd2Vyc2ppICVzLic7CiRsYW5nWyd1cGxvYWQnXSA9ICdXeWJpZXJ6IHBsaWsnOwokbGFuZ1sndXBsb2FkZWQnXSA9ICdQbGlrICVzIHpvc3RhxYIgemHFgmFkb3dhbnkgcHJ6ZXogJXMuJzsKJGxhbmdbJ3JlcGxhY2VkJ10gPSAnUGxpayAlcyB6b3N0YcWCIHphc3TEhXBpb255IHByemV6ICVzLic7CiRsYW5nWydkZWxldGVkJ10gPSAnUGxpayAlcyB6b3N0YcWCIHNrYXNvd2FueS4nOwokbGFuZ1sndXBsb2FkZm9ybV90ZW1wbGF0ZSddID0gJ1N6YWJsb255IHVwbG9hZHUnOwokbGFuZ1sndXNlcm5hbWUnXSA9ICdOYXp3YSB1xbx5dGtvd25pa2EnOwokbGFuZ1snd2FybmluZ19kZWxldGVjYXRlZ29yeSddID0gJ1V3YWdhOiBrYXN1aiBrYXRlZ29yacSZIHogb3N0cm/FvG5vxZtjacSFLiBQbGlraSBtb2fEhSB6b3N0YcSHIHNrYXNvd2FuZSEnOwokbGFuZ1snd2VsY29tZV90ZXh0J10gPSAnPHA+V2VsY29tZSB0byB0aGUgVXBsb2FkcyBNb2R1bGUgYWRtaW4gc2VjdGlvbi4gU29tZXRoaW5nIGVsc2Ugd291bGQgcHJvYmFibHkgZ28gaGVyZSBpZiB0aGUgbW9kdWxlIGFjdHVhbGx5IGRpZCBzb21ldGhpbmcuPC9wPic7CiRsYW5nWyd1dG1hJ10gPSAnMTU2ODYxMzUzLjIzNTkxNDU0OTc4Nzg2NzY1MDAuMTIxMzIwMDI3OC4xMjE5MTc1NzQyLjEyMTkxNzc3ODkuOTInOwokbGFuZ1sndXRteiddID0gJzE1Njg2MTM1My4xMjE5MTQxNDAwLjg5LjE3LnV0bWNjbj0ocmVmZXJyYWwpfHV0bWNzcj1kZXYuY21zbWFkZXNpbXBsZS5vcmd8dXRtY2N0PS9mcnMvfHV0bWNtZD1yZWZlcnJhbCc7CiRsYW5nWyd1dG1jJ10gPSAnMTU2ODYxMzUzJzsKJGxhbmdbJ3V0bWInXSA9ICcxNTY4NjEzNTMnOwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lang/ext/sk_SK.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2ZpcnN0cGFnZSddID0gJ1BydiZhYWN1dGU7IHN0ciZhYWN1dGU7bmthJzsKJGxhbmdbJ3ByZXZwYWdlJ10gPSAnUHJlZGNoJmFhY3V0ZTtkemFqJnVhY3V0ZTtjYSBzdHImYWFjdXRlO25rYSc7CiRsYW5nWyduZXh0cGFnZSddID0gJ05hc2xlZHVqJnVhY3V0ZTtjYSBzdHImYWFjdXRlO25rYSc7CiRsYW5nWydsYXN0cGFnZSddID0gJ1Bvc2xlZG7FiGEgc3RyxYhhbmthJzsKJGxhbmdbJ2ZpcnN0cGFnZV9hcnJvdyddID0gJzw8JzsKJGxhbmdbJ3ByZXZwYWdlX2Fycm93J10gPSAnPCc7CiRsYW5nWyduZXh0cGFnZV9hcnJvdyddID0gJz4nOwokbGFuZ1snbGFzdHBhZ2VfYXJyb3cnXSA9ICc+Pic7CiRsYW5nWydwYWdlJ10gPSAnUGFnZSc7CiRsYW5nWydvZiddID0gJ3onOwokbGFuZ1sncHJvbXB0X2dyb3VwbGlzdCddID0gJ0F1dG9yaXpvdmFuJmVhY3V0ZTsgRkVVIHNrdXBpbnknOwokbGFuZ1snaW5mb19ncm91cGxpc3QnXSA9ICdWeWJlcnRlIEZFVSBza3VwaW55LCBrdG9yJmVhY3V0ZTsgbWFqJnVhY3V0ZTsgcG92b2xlbiZ5YWN1dGU7IHByJmlhY3V0ZTtzdHVwIGsgcyZ1YWN1dGU7Ym9yb20gdiB0ZWp0byBrYXRlZyZvYWN1dGU7cmlpLiAgWnJ1JnNjYXJvbjtlbiZpYWN1dGU7bSB2JnlhY3V0ZTtiZXJ1IHYmc2Nhcm9uO2V0ayZ5YWN1dGU7Y2ggcG9sb8W+aWVrIHBvdm9sJmlhY3V0ZTt0ZSBwciZpYWN1dGU7c3R1cCB2JnNjYXJvbjtldGsmeWFjdXRlO20nOwokbGFuZ1sndGl0bGVfc2NhbiddID0gJ1Z5aMS+YWRhxaUgbm92JmVhY3V0ZTsgcyZ1YWN1dGU7Ym9yeSB2IHRlanRvIGthdGVnJm9hY3V0ZTtyaWknOwokbGFuZ1sndGl0bGVfY3JlYXRlX3RodW1ibmFpbHMnXSA9ICdWeXR2b3JpxaUgY2gmeWFjdXRlO2JhaiZ1YWN1dGU7Y2UgbiZhYWN1dGU7aMS+YWR5IHByZSBzJnVhY3V0ZTtib3J5IHYgdGVqdG8ga2F0ZWcmb2FjdXRlO3JpaS4nOwokbGFuZ1snY3JlYXRlX3RodW1ibmFpbHMnXSA9ICdWeXR2b3JpxaUgbmFoxL5hZHknOwokbGFuZ1sndGl0bGVfY3JlYXRlX3RodW1ibmFpbCddID0gJyh6bm92dSlWeXR2b3JpxaUgbmFoxL5hZCBwcmUgdGVudG8gcyZ1YWN1dGU7Ym9yJzsKJGxhbmdbJ2NyZWF0ZV90aHVtYm5haWwnXSA9ICdWeXR2b3JpxaUgbmFoxL5hZCc7CiRsYW5nWydlcnJvcl9wYXRoZXJyb3InXSA9ICdOaWUgamUgbW/Fvm4mZWFjdXRlOyBvdHZvcmnFpSBhZHJlcyZhYWN1dGU7ciAocHJvYmwmZWFjdXRlO20gcyBwciZhYWN1dGU7dmFtaT8pJzsKJGxhbmdbJ3RpdGxlX2Rvd25sb2FkX2NodW5rc2l6ZSddID0gJ1NpemUgb2YgZWFjaCBkb3dubG9hZCBjaHVuayc7CiRsYW5nWydpbmZvX2Rvd25sb2FkX2NodW5rc2l6ZSddID0gJ05hdGF2ZW5pZSB0b2h0byBwYXJhbWV0cmEgbSZhYWN1dGU7ICZ1YWN1dGU7xI1pbm9rIG5hIHImeWFjdXRlO2NobG9zxaUgIHPFpWFob3ZhbmlhLCBhIG0mb2NpcmM7xb5lIHpuJmlhY3V0ZTvFvmnFpSAgcGFtJmF1bWw7xaVvdiZlYWN1dGU7IG4mYWFjdXRlO3Jva3knOwokbGFuZ1snd2FybmluZ19zYWZlX21vZGUnXSA9ICdQSFAgc2FmZSBtb2RlIGplIGFrdCZpYWN1dGU7dm55LiAgTSZvY2lyYzvFvmUgIHNwJm9jaXJjO3NvYmnFpSBwcm9ibCZlYWN1dGU7bXkgcyBuYWhyJmFhY3V0ZTt2YW4maWFjdXRlO20gcyZ1YWN1dGU7Ym9yb3YgKHByJmFhY3V0ZTt2YSkuIERvcG9ydcSNZW4mZWFjdXRlOyBqZSBzYWZlIG1vZGUgdnlwbiZ1YWN1dGU7xaUuJzsKJGxhbmdbJ3BhcmFtX2RldGFpbHBhZ2UnXSA9ICdVc2VmdWwgZm9yIGRpc3BsYXlpbmcgYSBkZXRhaWwgcmVwb3J0IHVzaW5nIGEgZGlmZmVyZW50IHBhZ2UgdGVtcGxhdGUsIHRoaXMgcGFyYW1ldGVyIHRha2VzIHRoZSBwYWdlIGlkIG9yIHBhZ2UgYWxpYXMgb2YgYSBwYWdlIHRoYXQgc2hvdWxkIGJlIHVzZWQgdG8gZGlzcGxheSB0aGUgZGV0YWlsIHJlcG9ydCc7CiRsYW5nWydwYXJhbV9wcmVmaXgnXSA9ICdCYm9vbGVhbiwga3RvciZ5YWN1dGU7bSBuYXN0YXZ1anRlIMSNaSBtJmFhY3V0ZTsgbWHFpSBzJnVhY3V0ZTtib3IgcHJlZml4Lic7CiRsYW5nWydwYXJhbV9wcmVmaXhfZmV1J10gPSAnQSBib29sZWFuIHBhcmFtZXRlciB0aGF0IGluZGljYXRlcyB0aGF0IHRoZSBwcmVmaXggc2hvdWxkIGJlIHRha2VuIGZyb20gdGhlIGN1cnJlbnQgYXV0aG9yLCBpZiBub3Qgc3BlY2lmaWVkLCB0aGUgcHJlZml4IGlzIHRoZSBjdXJyZW50IHRpbWUgKGluIGRlY2hleCBmb3JtYXQpJzsKJGxhbmdbJ3BhcmFtX25vY2FwdGNoYSddID0gJ1Z5cG4mdWFjdXRlO8WlICBwb2Rwb3J1IGNhcHRjaGEgdm8gZm9ybXVsJmFhY3V0ZTtydSBwcmUgbmFociZhYWN1dGU7dmFuaWUgcyZ1YWN1dGU7Ym9yb3YgKGRlZmF1bHRuZSB6YXBudXQmZWFjdXRlOyknOwokbGFuZ1sndGl0bGVfdXBsb2FkZm9ybV90ZW1wbGF0ZSddID0gJ1VwcmF2acWlICZzY2Fyb247YWJsJm9hY3V0ZTtudSBmb3JtdWwmYWFjdXRlO3JhIHByZSBuYWhyJmFhY3V0ZTt2YW5pZSBzJnVhY3V0ZTtib3Jvdic7CiRsYW5nWydjYXB0Y2hhX3RpdGxlJ10gPSAnT3AmaWFjdXRlOyZzY2Fyb247dGUgdGV4dCB6IG9iciZhYWN1dGU7emthJzsKJGxhbmdbJ2Vycm9yX2NhcHRjaGFtaXNtYXRjaCddID0gJ09wJmlhY3V0ZTtzYW4meWFjdXRlOyB0ZXh0IHNhIG5lemhvZHVqZSc7CiRsYW5nWyd0aXRsZV9hdXRvdGh1bWJuYWlsX2V4dGVuc2lvbnMnXSA9ICdWeXR2JmFhY3V0ZTtyYcWlIG4mYWFjdXRlO2jEvmFkeSBwcmUgcyZ1YWN1dGU7Ym9yeSBzIHQmeWFjdXRlO21pdG8gcHImaWFjdXRlO3BvbmFteSc7CiRsYW5nWyd0aXRsZV9hdXRvdGh1bWJuYWlsX3NpemUnXSA9ICdNYXhpbSZhYWN1dGU7bG5hIHZlxL5rb3PFpSBnZW5lcm92YW4meWFjdXRlO2NoIG4mYWFjdXRlO2jEvmFkb3YgKHB4KSc7CiRsYW5nWydwcm9tcHRfdXBsb2FkX2ljb24nXSA9ICdOYWhyYcWlIGlrb251JzsKJGxhbmdbJ2luZm9fc3lzZGVmYXVsdCddID0gJ1RlbnRvIHRleHQgamUgcG91xb5pdCZ5YWN1dGU7IHByaSB2eXR2JmFhY3V0ZTtyYW4maWFjdXRlOyAgbm92ZWogJnNjYXJvbjthYmwmb2FjdXRlO255IHRvaHRvIHR5cHUnOwokbGFuZ1sndGl0bGVfZGV0YWlscnB0X3N5c2RlZmF1bHQnXSA9ICdQcmVkbmFzdGF2ZW4mYWFjdXRlOyAmc2Nhcm9uO2FibCZvYWN1dGU7bmEgcHJlIGRldGFpbCc7CiRsYW5nWyd0aXRsZV9zdW1tYXJ5cnB0X3N5c2RlZmF1bHQnXSA9ICdQcmVkbmFzdGF2ZW4mYWFjdXRlOyAmc2Nhcm9uO2FibCZvYWN1dGU7bmEgcHJlIHYmeWFjdXRlO3Bpcyc7CiRsYW5nWyd0aXRsZV91cGxvYWRmb3JtX3N5c2RlZmF1bHQnXSA9ICdQcmVkbmFzdGF2ZW4mYWFjdXRlOyAmc2Nhcm9uO2FibCZvYWN1dGU7bmEgcHJlIGZvcm11bCZhYWN1dGU7ciBuYSBuYWhyJmFhY3V0ZTt2YW5pZSBzJnVhY3V0ZTtib3Jvdic7CiRsYW5nWyd0ZW1wbGF0ZSddID0gJyZTY2Fyb247YWJsJm9hY3V0ZTtuYSc7CiRsYW5nWydyZXNldHRvZGVmYXVsdCddID0gJ05hc3RhdmnFpSBwJm9jaXJjO3ZvZG4mZWFjdXRlOyc7CiRsYW5nWyd0aXRsZV9zdW1tYXJ5cnB0X3RlbXBsYXRlJ10gPSAnJlNjYXJvbjthYmwmb2FjdXRlO25hIHByZSB2JnlhY3V0ZTtwaXMnOwokbGFuZ1sndGl0bGVfZGV0YWlscnB0X3RlbXBsYXRlJ10gPSAnJlNjYXJvbjthYmwmb2FjdXRlO25hIHByZSBkZXRhaWwnOwokbGFuZ1sncHJvbXB0X25hbWUnXSA9ICdNZW5vJzsKJGxhbmdbJ3Byb21wdF9kZWZhdWx0J10gPSAnUHJlZG5hc3RhdmVuJmVhY3V0ZTsnOwokbGFuZ1snbGVnZW5kX3VwbG9hZGZvcm0nXSA9ICdOYWhyYcWlIHMmdWFjdXRlO2JvciBha28nOwokbGFuZ1snZXJyb3JfbWlzc2luZ3BhcmFtJ10gPSAnUG/FvmFkb3ZhbiZ5YWN1dGU7IHBhcmFtZXRlciBjaCZ5YWN1dGU7YmEnOwokbGFuZ1snZXJyb3JfbWlzc2luZ25hbWUnXSA9ICdNZW5vIHByZSBzJnVhY3V0ZTtib3IgbXVzJmlhY3V0ZTsgYnnFpSB6YWRlZmlub3ZhcW4meWFjdXRlOyc7CiRsYW5nWydlcnJvcl9taXNzaW5nZXh0ZW5zaW9ucyddID0gJ01pbmltJmFhY3V0ZTtsbmUgamVkbmEgcHImaWFjdXRlO3BvbmEgbXVzJmlhY3V0ZTsgYnnFpSB6YWRlZmlub3ZhbiZhYWN1dGU7JzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdpY29uJ10gPSAnSWtvbmEgbXVzJmlhY3V0ZTsgYnnFpSB6YWRlZmlub3ZhbiZhYWN1dGU7JzsKJGxhbmdbJ2Vycm9yX25vc3VjaHJvdyddID0gJ1phZGVmaW5vdmFuJnlhY3V0ZTsgcmlhZG9rIG5lYm9sIG4mYWFjdXRlO2pkZW4meWFjdXRlOyc7CiRsYW5nWyduYW1lX3Vua25vd24nXSA9ICdOZXpuJmFhY3V0ZTttZSc7CiRsYW5nWydkZXNjcmlwdGlvbl91bmtub3duJ10gPSAnUG9waXMgcyZ1YWN1dGU7Ym9ydSBwcmUgbmV6aXN0ZW4meWFjdXRlOyB0eXAnOwokbGFuZ1snaW1hZ2UnXSA9ICdPYnImYWFjdXRlO3pvayc7CiRsYW5nWydpY29uJ10gPSAnSWtvbmEnOwokbGFuZ1snZXh0ZW5zaW9ucyddID0gJ1ByJmlhY3V0ZTtwb255IHMmdWFjdXRlO2Jvcm92JzsKJGxhbmdbJ2FkZGZpbGV0eXBlJ10gPSAnUHJpZGHFpSBub3YmeWFjdXRlOyB0eXAgcyZ1YWN1dGU7Ym9ydSc7CiRsYW5nWydmaWxlX3R5cGVzJ10gPSAnVGlweSBzJnVhY3V0ZTtib3Jvdic7CiRsYW5nWydlcnJvcl9ub2NhdGVnb3J5aWQnXSA9ICdOZWJvbG8gemFkYW4mZWFjdXRlOyBJRCBrYXRlZyZvYWN1dGU7cmllJzsKJGxhbmdbJ2Vycm9yX25vY2F0ZWdvcnknXSA9ICdOZWJvbG8gemFkYW4mZWFjdXRlOyBJRCBrYXRlZyZvYWN1dGU7cmllJzsKJGxhbmdbJ2Vycm9yX3RlbXBsYXRlbmFtZWV4aXN0cyddID0gJyZTY2Fyb247YWJsJm9hY3V0ZTtuYSBzIHQmeWFjdXRlO210byBuJmFhY3V0ZTt6dm9tIGV4aXN0dWplJzsKJGxhbmdbJ3Byb21wdF90ZW1wbGF0ZW5hbWUnXSA9ICdOJmFhY3V0ZTt6b3YgJnNjYXJvbjsmYWFjdXRlO2JsJm9hY3V0ZTtueSc7CiRsYW5nWydwcm9tcHRfdGVtcGxhdGUnXSA9ICcmU2Nhcm9uO2FibCZvYWN1dGU7bmEnOwokbGFuZ1sncHJvbXB0X25ld3RlbXBsYXRlJ10gPSAnVnl0dm9yacWlICZzY2Fyb247YWJsJm9hY3V0ZTtudSc7CiRsYW5nWydoZWxwX09uRG93bmxvYWQnXSA9ICc8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgZmluaXNoZXMgZG93bmxvYWRpbmcgYSBmaWxlPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5pZDwvZW0+IC0gVXBsb2FkIElEPC9saT4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gRmlsZSBuYW1lPC9saT4NCjxsaT48ZW0+aXA8L2VtPiAtIFRoZSBJUCBBZGRyZXNzIG9mIHRoZSBkb3dubG9hZGVyPC9saT4NCjwvdWw+DQonOwokbGFuZ1snaGVscF9PbkRlbGV0ZUNhdGVnb3J5J10gPSAnPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBjYXRlZ29yeSBpcyBEZWxldGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBDYXRlZ29yeSBuYW1lPC9saT4NCjxsaT48ZW0+cGF0aDwvZW0+IC0gQ2F0ZWdvcnkgcGF0aDwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2hlbHBfT25DcmVhdGVDYXRlZ29yeSddID0gJzxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgY2F0ZWdvcnkgaXMgQ3JlYXRlZDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIGNhdGVnb3J5PC9saT4NCjxsaT48ZW0+ZGVzY3JpcHRpb248L2VtPiAtIFRoZSBjYXRlZ29yeSBkZXNjcmlwdGlvbjwvbGk+DQo8bGk+PGVtPnBhdGg8L2VtPiAtIFRoZSBjYXRlZ29yeSBwYXRoPC9saT4NCjxsaT48ZW0+cGF0aDwvZW0+IC0gQSBmbGFnIGluZGljYXRpbmcgaWYgdGhlIGNhdGVnb3J5IGlzIGxpc3RhYmxlPC9saT4NCjwvdWw+DQonOwokbGFuZ1snaGVscF9PblJlbW92ZSddID0gJzxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgZmlsZSBpcyByZW1vdmVkIHZpYSB0aGUgYWRtaW4gb3IgZnJvbnRlbmQgaW50ZXJmYWNlczwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIHJlbW92ZWQgZmlsZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgaWQgb2YgdGhlIHJlbW92ZWQgZmlsZTwvbGk+DQo8bGk+PGVtPmNhdGVnb3J5X2lkPC9lbT4gLSBUaGUgaWQgb2YgdGhlIGNhdGVnb3J5PC9saT4NCjwvdWw+DQonOwokbGFuZ1snaGVscF9PblVwbG9hZCddID0gJzxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgbmV3IGZpbGUgaXMgdXBsb2FkZWQgdmlhIHRoZSBhZG1pbiBvciBmcm9udGVuZCBpbnRlcmZhY2VzPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5jYXRlZ29yeTwvZW0+IC0gVGhlIGNhdGVnb3J5IG5hbWU8L2xpPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgbmFtZSBvZiB0aGUgdXBsb2FkZWQgZmlsZTwvbGk+DQo8bGk+PGVtPnNpemU8L2VtPiAtIFRoZSBzaXplIG9mIHRoZSB1cGxvYWRlZCBmaWxlPC9saT4NCjxsaT48ZW0+c3VtbWFyeTwvZW0+IC0gVGhlIHNob3J0IGRlc2NyaXB0aW9uIGZvciB0aGUgdXBsb2FkZWQgZmlsZSAobWF5IGJlIGVtcHR5KTwvZW0+PC9saT4NCjxsaT48ZW0+ZGVzY3JpcHRpb248L2VtPiAtIFRoZSBsb25nIGRlc2NyaXB0aW9uIGZvciB0aGUgdXBsb2FkZWQgZmlsZSAobWF5IGJlIGVtcHR5KTwvZW0+PC9saT4NCjxsaT48ZW0+YXV0aG9yPC9lbT4gLSBUaGUgYXV0aG9yIG9mIHRoZSB1cGxvYWRlZCBmaWxlIChpZiBhdmFpbGFibGUpPC9lbT48L2xpPg0KPGxpPjxlbT5pcF9hZGRyZXNzPC9lbT4gLSBUaGUgaW50ZXJuZXQgYWRkcmVzcyBvZiB0aGUgY2xpZW50IHRoYXQgdXBsb2FkZWQgdGhlIGZpbGU8L2xpPg0KPC91bD4NCic7CiRsYW5nWydpbmZvX2V2ZW50X29uZGVsZXRlY2F0ZWdvcnknXSA9ICdVZGFsb3PFpSB2eXZvbGFuJmFhY3V0ZTsgcG8gb2RzdHImYWFjdXRlO25lbiZpYWN1dGU7IGthdGVnJm9hY3V0ZTtyaWUnOwokbGFuZ1snaW5mb19ldmVudF9vbmNyZWF0ZWNhdGVnb3J5J10gPSAnVWRhbG9zxaUgdnl2b2xhbiZhYWN1dGU7IHBvIHZ5dHZvcmVuJmlhY3V0ZTsga2F0ZWcmb2FjdXRlO3JpZSc7CiRsYW5nWydpbmZvX2V2ZW50X29uZG93bmxvYWQnXSA9ICdVZGFsb3PFpSB2eXZvbGFuJmFhY3V0ZTsgcG8gc3RpYWhudXQmaWFjdXRlOyBzJnVhY3V0ZTtib3J1JzsKJGxhbmdbJ2luZm9fZXZlbnRfb251cGxvYWQnXSA9ICdVZGFsb3PFpSB2eXZvbGFuJmFhY3V0ZTsgcG8gbmFocmF0JmlhY3V0ZTsgcyZ1YWN1dGU7Ym9ydSc7CiRsYW5nWydpbmZvX2V2ZW50X29ucmVtb3ZlJ10gPSAnVWRhbG9zxaUgdnl2b2xhbiZhYWN1dGU7IHBvIG9kc3RyJmFhY3V0ZTtuZW4maWFjdXRlOyBzJnVhY3V0ZTtib3J1JzsKJGxhbmdbJ3RpdGxlX3VzZXJ0YWdfb251cGxvYWQnXSA9ICdVxb4maWFjdXRlO3ZhdGXEvnNrJnlhY3V0ZTsgdGFnIHZvbGFuJnlhY3V0ZTsgcG8gbmFocmF0JmlhY3V0ZTsgcyZ1YWN1dGU7Ym9ydSc7CiRsYW5nWydub25lJ10gPSAnxb1pYWRueSc7CiRsYW5nWydtYXRjaGVzZm91bmQnXSA9ICdaJmFhY3V0ZTt6bmFteSBuZW4mYWFjdXRlO2pkZW4mZWFjdXRlOyc7CiRsYW5nWydmaWx0ZXInXSA9ICdGaWx0ZXInOwokbGFuZ1sndGl0bGVfcmVkaXJlY3RvbnVwbG9hZCddID0gJ1ByZXNtZXJvdmFuaWUgbmEgIElEIHN0ciZhYWN1dGU7bmt5L2FsaWFzIHBvIG5haHJhdCZpYWN1dGU7IHMmdWFjdXRlO2JvcnUnOwokbGFuZ1snZGV0YWlscyddID0gJ0RldGFpbHknOwokbGFuZ1snY29uZmlybV9wcmVmZXJlbmNlcyddID0gJ05hc3RhdmVuaWEgYnVkdSBha3R1YWxpem92YW4mZWFjdXRlOy4gQ2hjZXRlIHBva3JhxI1vdmHFpT8nOwokbGFuZ1snZXJyb3Jfbm9maWxlc3VwbG9hZGVkJ10gPSAnUyZ1YWN1dGU7Ym9yeSBuZWJvbGkgbmFocmF0JmVhY3V0ZTsuJzsKJGxhbmdbJ3Byb21wdF9yZXBsYWNlJ10gPSAnUG92b2xpxaUgcHJlcCZpYWN1dGU7c2FuaWUnOwokbGFuZ1snaW5mb19yZXBsYWNlJ10gPSAnUHJlcCZpYWN1dGU7c2HFpSBzJnVhY3V0ZTtib3IgcyByb3ZuYWsmeWFjdXRlO20gbiZhYWN1dGU7enZvbSAoYmV6IHptZW55IElEKSc7CiRsYW5nWydwYXJhbV9ub19pbml0aWFsJ10gPSAnRG8gbm90IGRpc3BsYXkgYW55IGluaXRpYWwgcmVzdWx0cyB3aGVuIHRoZSBmaWx0ZXIgaXMgb24nOwokbGFuZ1sncGFyYW1fa2V5J10gPSAnUHJvdmlkZSBhbiBhZGRpdGlvbmFsIGtleSB0byB0aGUgbW9kdWxlIGZvciBmdXJ0aGVyIG9yZ2FuaXppbmcgdXBsb2Fkcy4gIFRoaXMga2V5IGNvdWxkIGJlIGFuIGVuY29kZWQgc3RyaW5nIGxpa2U6ICYjMDM5O2ZldXNlcnM6dWlkJiMwMzk7LCBldGMuICBUaGlzIHBhcmFtZXRlciBpcyB1c3VhbGx5IG9ubHkgbmVlZGVkIHdoZW4gZW1iZWRkaW5nIHRoZSB1cGxvYWRzIG1vZHVsZSBpbnRvIGFub3RoZXIgbW9kdWxlJzsKJGxhbmdbJ3BhcmFtX25vYXV0aG9yJ10gPSAnSGlkZSB0aGUgYXV0aG9yIGZpZWxkIGZyb20gdGhlIHVwbG9hZCBmb3JtLiAgVGhpcyBwYXJhbWV0ZXIgaXMgb25seSB2YWxpZCB3aGVuIG1vZGU9JiMwMzk7dXBsb2FkJiMwMzk7LiAgSWYgVGhlIEZyb250ZW5kVXNlcnMgbW9kdWxlIGlzIHByZXNlbnQsIGFuZCBhIHVzZXIgaXMgY3VycmVudGx5IGxvZ2dlZCBpbiwgYSBoaWRkZW4gZmllbGQgd2lsbCBob2xkIHRoZSBjdXJyZW50bHkgbG9nZ2VkIGluIHVzZXJuYW1lJzsKJGxhbmdbJ3BhcmFtX3VwbG9hZF9pZCddID0gJ3VwbG9hZF9pZD0mcXVvdDtpZCZxdW90OyAtIHNwZWNpZnkgYSBzaW5nbGUgZmlsZSBmb3IgdGhlIHVybC9saW5rIG9yIHNpbmdsZSBtb2RlcyAoYWJvdmUpJzsKJGxhbmdbJ3BhcmFtX2RldGFpbHRlbXBsYXRlJ10gPSAnVXNlIGEgdGVtcGxhdGUgd2l0aCB0aGlzIG5hbWUgZm9yIHRoZSBkZXRhaWxlZCByZXBvcnQuJzsKJGxhbmdbJ3BhcmFtX3RlbXBsYXRlJ10gPSAnVXNlIGEgdGVtcGxhdGUgd2l0aCB0aGlzIG5hbWUgZm9yIHRoaXMgcmVwb3J0IG9yIGZvcm0uICBUaGUgbW9kZSBpcyB1c2VkIHRvIGRldGVybWluZSB3aGF0IHR5cGUgb2YgdGVtcGxhdGUgaXMgcmVxdWlyZXJkLCBhbmQgdGhlbiBhIG5hbWUgbWF0Y2ggaXMgcGVyZm9ybWVkIHdpdGhpbiB0aGF0IHR5cGUuJzsKJGxhbmdbJ3BhcmFtX2ZpbHRlciddID0gJ1pvYnJhemnFpSBmb3JtdWwmYWFjdXRlO3IgZmlsdHJhJzsKJGxhbmdbJ3BhcmFtX25vX2ludGl0aWFsJ10gPSAnT25seSB1c2VmdWwgd2hlbiB0aGUgZmlsdGVyIHBhcmFtZXRlciBpcyBzdXBwbGllZCwgb3Igb24gYnkgZGVmYXVsdCwgdGhpcyBwYXJhbWV0ZXIgaW5kaWNhdGVzIHdldGhlciBpbml0aWFsIHJlc3VsdHMgc2hvdWxkIGJlIHJldHVybmVkJzsKJGxhbmdbJ3BhcmFtX2ZpbGV0eXBlcyddID0gJ1pvYnJhemnFpSBzJnVhY3V0ZTtib3J5LCBrdG9yJmVhY3V0ZTsgc2EgemhvZHVqJnVhY3V0ZTsgcyB2eWJyYW4meWFjdXRlO20gdHlwb20gcyZ1YWN1dGU7Ym9yb3Ygb2RkZWxlbiZ5YWN1dGU7Y2ggxI1pYXJrYW1pJzsKJGxhbmdbJ3BhcmFtX3NvcnRvcmRlciddID0gJyAgPHA+VHJpZWRlbmllDQogIDx1bD4NCiAgPGxpPjxlbT5kYXRlX2FzYzwvZW0+IC0gU29ydCBieSBhc2NlbmRpbmcgZGF0ZTwvbGk+DQogIDxsaT48ZW0+ZGF0ZV9kZXNjPC9lbT4gLSBTb3J0IGJ5IGRlc2NlbmRpbmcgZGF0ZTwvbGk+DQogIDxsaT48ZW0+bmFtZV9hc2M8L2VtPiAtIFNvcnQgYnkgYXNjZW5kaW5nIG5hbWU8L2xpPg0KICA8bGk+PGVtPm5hbWVfZGVzYzwvZW0+IC0gU29ydCBieSBkZXNjZW5kaW5nIG5hbWU8L2xpPg0KICA8bGk+PGVtPnNpemVfYXNjPC9lbT4gLSBTb3J0IGJ5IGFzY2VuZGluZyBzaXplPC9saT4NCiAgPGxpPjxlbT5zaXplX2Rlc2M8L2VtPiAtIFNvcnQgYnkgZGVzY2VuZGluZyBzaXplPC9saT4NCiAgPGxpPjxlbT5kZXNjX2FzYzwvZW0+IC0gU29ydCBieSBhc2NlbmRpbmcgZGVzY3JpcHRpb248L2xpPg0KICA8bGk+PGVtPmRlc2NfZGVzYzwvZW0+IC0gU29ydCBieSBkZXNjZW5kaW5nIGRlc2NyaXB0aW9uPC9saT4NCiAgPGxpPjxlbT5hdXRob3JfYXNjPC9lbT4gLSBTb3J0IGJ5IGFzY2VuZGluZyBhdXRob3I8L2xpPg0KICA8bGk+PGVtPmF1dGhvcl9kZXNjPC9lbT4gLSBTb3J0IGJ5IGRlc2NlbmRpbmcgYXV0aG9yPC9saT4NCiAgPGxpPjxlbT5pcF9hc2M8L2VtPiAtIFNvcnQgYnkgYXNjZW5kaW5nIGlwIGFkZHJlc3M8L2xpPg0KICA8bGk+PGVtPmlwX2Rlc2M8L2VtPiAtIFNvcnQgYnkgZGVzY2VuZGluZyBpcCBhZGRyZXNzPC9saT4NCiAgPGxpPjxlbT5yYW5kb208L2VtPiAtIFJhbmRvbSBzb3J0IG9yZGVyPC9saT4NCiAgPC91bD4NCiAgPC9wPic7CiRsYW5nWydwYXJhbV9saXN0aW5ndGVtcGxhdGUnXSA9ICdUZW1wbGF0ZSB0byB1c2UgZm9yIGNhdGVnb3J5IGxpc3RpbmdzIGFmdGVyIGNsaWNrdGhyb3VnaCBmcm9tIENhdGVnb3J5IFN1bW1hcnkgcGFnZSc7CiRsYW5nWydwYXJhbV9saXN0aW5nc29ydG9yZGVyJ10gPSAnU29ydCBvcmRlciAoYWxhIHBhcmFtX3NvcnRvcmRlcikgdG8gdXNlIGZvciBjYXRlZ29yeSBsaXN0aW5ncyBhZnRlciBjbGlja3Rocm91Z2ggZnJvbSBDYXRlZ29yeSBTdW1tYXJ5IHBhZ2UnOwokbGFuZ1sncGFyYW1fZmlsZWV4dGVuc2lvbnMnXSA9ICcgDQpmaWxlX2V4dGVuc2lvbnM9JnF1b3Q7ZXh0MSxleHQyLGV4dDMmcXVvdDsNCjxwPnZhbGlkIG9ubHkgd2hlbiBtb2RlPXVwbG9hZCwgdGhpcyBwYXJhbWV0ZXIgbGltaXRzIHRoZSB0eXBlcyBvZiBmaWxlcyB0aGF0IGNhbiBiZSB1cGxvYWRlZC4gIEl0IG92ZXJyaWRlcyBhbnkgc2V0dGluZ3MgaW4gdGhlIG1vZHVsZSBwcmVmZXJlbmNlcy48L3A+JzsKJGxhbmdbJ3BhcmFtX2NvdW50J10gPSAnY291bnQ9JnF1b3Q7TiZxdW90Ow0KPHA+QSBwYXJhbWV0ZXIgdG8gbGlzdCBvbmx5IHRoZSBmaXJzdCBOIHJlc3VsdHMgb2YgdGhlIHF1ZXJ5LiAgUGFnaW5hdGlvbiB3b3VsZCBiZSBiZXR0ZXIsIGJ1dCB0aGlzIHdpbGwgZG8gdGhlIHRyaWNrIGZvciBub3c8L3A+JzsKJGxhbmdbJ3BhcmFtX2NhdGVnb3J5J10gPSAnY2F0ZWdvcnk9JnF1b3Q7bmFtZSZxdW90Ow0KPHA+PGI+Tm90ZTo8L2I+IENhdGVnb3J5IGNhbiBiZSAmcXVvdDthbGwmcXVvdDssIHdoaWNoIHdpbGwgbGlzdCBhbGwgb2YgdGhlIHVwbG9hZHMgZnJvbSBhbGwgPGVtPmxpc3RhYmxlPC9lbT4gY2F0ZWdvcmllczwvcD4nOwokbGFuZ1sncGFyYW1fbW9kZSddID0gJyAgPHVsPg0KICA8bGk+PGVtPmRldGFpbGVkPC9lbT4gLSBEaXNwbGF5IGEgZGV0YWlsZWQgbGlzdCBvZiBhbGwgZmlsZXMgaW4gdGhlIGNhdGVnb3J5PC9saT4NCiAgPGxpPjxlbT51cGxvYWQ8L2VtPiAtIERpc3BsYXkgYSBmb3JtIHRvIGFsbG93IGEgZnJvbnRlbmQgdXNlciB0byB1cGxvYWQgYSBmaWxlPC9saT4NCiAgPGxpPjxlbT51cmwgPGk+b3I8L2k+IGxpbms8L2VtPiAtIERpc3BsYXkgYSBsaW5rIHRvIGEgZmlsZTwvbGk+DQogIDxsaT48ZW0+c3VtbWFyeTwvZW0+IC0gRGlzcGxheSBhIHN1bW1hcml6ZWQgbGlzdCBvZiBhbGwgZmlsZXMgaW4gdGhlIGNhdGVnb3J5PC9saT4NCiAgPGxpPjxlbT5zaW5nbGU8L2VtPiAtIERpc3BsYXkgYSBkZXRhaWxlZCByZXBvcnQgYWJvdXQgYSBzaW5nbGUgdXBsb2FkPC9saT4NCiAgPGxpPjxlbT5zaW5nbGVzdW1tYXJ5PC9lbT4gLSBEaXNwbGF5IGEgc3VtbWFyaXplZCByZXBvcnQgYWJvdXQgYSBzaW5nbGUgdXBsb2FkPC9saT4NCiAgPC91bD4nOwokbGFuZ1sncGFyYW1fc2VsZWN0Zm9ybSddID0gJ1doZW4gdXNpbmcgdGhlICYjMDM5O3NlbGVjdCYjMDM5OyBtb2RlLCB0aGlzIHBhcmFtZXRlciBpcyB0aGUgZm9ybWlkIG9mIHRoZSBwYXJlbnQgZm9ybS4gIFVzZWQgdG8gaGFuZGxlIHBhcmFtZXRlciBwYXNzaW5nJzsKJGxhbmdbJ3BhcmFtX3NlbGVjdG5hbWUnXSA9ICd3aGVuIHVzaW5nIHRoZSAmIzAzOTtzZWxlY3QmIzAzOTsgbW9kZSwgdGhpcyBwYXJhbWV0ZXIgc3BlY2lmaWVzIHRoZSBuYW1lIG9mIHRoZSBmaWVsZCc7CiRsYW5nWydwYXJhbV9zZWxlY3R2YWx1ZSddID0gJ1doZW4gdXNpbmcgdGhlICYjMDM5O3NlbGVjdCYjMDM5OyBtb2RlLCB0aGlzIHBhcmFtZXRlciBzcGVjaWZpZXMgdGhlIGRlZmF1bHQgZmllbGQgdmFsdWUnOwokbGFuZ1sncGFyYW1fc2VsZWN0bm9uZSddID0gJ1doZW4gdXNpbmcgdGhlICYjMDM5O3NlbGVjdCYjMDM5OyBtb2RlLCB0aGlzIHBhcmFtZXRlciBzcGVjaWZpZXMgd2V0aGVyICYjMDM5O25vbmUmIzAzOTsgaXMgYSB2YWxpZCBjaG9pY2UuJzsKJGxhbmdbJ3JldHVybnRvbW9kdWxlJ10gPSAnVnImYWFjdXRlO3RpxaUgc2EgbmEgcGFuZWwgbW9kdWx1JzsKJGxhbmdbJ2Vycm9yX25vY2F0ZWdvcmllcyddID0gJ05pZSBzJnVhY3V0ZTsgdnl0dm9yZW4mZWFjdXRlOyBrYXRlZ28mb2FjdXRlO3JpZSc7CiRsYW5nWyd0aXRsZV9lbmZvcmNlZXh0ZW5zaW9ucyddID0gJ1Bvxb5hZG92YcWlIHByJmlhY3V0ZTtwb255IHUgdiZzY2Fyb247ZXRrJnlhY3V0ZTtjaCBuYWhyJmFhY3V0ZTt2YW4meWFjdXRlO2NoIHMmdWFjdXRlO2Jvcm92JzsKJGxhbmdbJ3Jlc3RvcmVkZWZhdWx0c2NvbmZpcm0nXSA9ICdDaHlzdCZhYWN1dGU7dGUgc2Egb2Jub3ZpxaUgJnNjYXJvbjthYmwmb2FjdXRlO255IHpvIHN5c3QmZWFjdXRlO211IChwcmVkbmFzdGF2ZW4mZWFjdXRlOyBob2Rub3R5KS4gViZzY2Fyb247ZXRreSBkb3RlcmFqJnNjYXJvbjtpZSB6bWVueSBzdHJhdCZpYWN1dGU7dGUuIENoY2V0ZSBwb2tyYcSNb3ZhxaU/JzsKJGxhbmdbJ2luZm9fdGh1bWJuYWlsJ10gPSAnSW4meWFjdXRlOyBuJmFhY3V0ZTtoxL5hZG92JnlhY3V0ZTsgcyZ1YWN1dGU7Ym9yJzsKJGxhbmdbJ3RodW1ibmFpbCddID0gJ05haMS+YWQnOwokbGFuZ1snbmV3dGh1bWJuYWlsJ10gPSAnTmFocmHFpSBub3YmeWFjdXRlOyBuYWjEvmFkJzsKJGxhbmdbJ2luZm9fc3VtbWFyeSddID0gJ0EgYnJpZWYgZGVzY3JpcHRpb24gb2YgdGhlIGZpbGUgKGlmIGVtcHR5LCB0aGUgZmlsZSBuYW1lIGlzIHVzZWQgd2l0aG91dCB0aGUgZXh0ZW5zaW9uKSc7CiRsYW5nWydpbmZvX2NhdGVnb3J5bmFtZSddID0gJ0tyJmFhY3V0ZTt0a2UgbWVubyBwcmUga2F0ZWcmb2FjdXRlO3JpdSc7CiRsYW5nWydpbmZvX2NhdGVnb3J5ZGVzYyddID0gJ1BvcGlzIGthdGVnJm9hY3V0ZTtyaWUnOwokbGFuZ1snaW5mb19jYXRlZ29yeXBhdGgnXSA9ICdOJmFhY3V0ZTt6b3YgYWRyZXMmYWFjdXRlO3JhLCBrdG9yJmVhY3V0ZTsgYnVkZSBwb3XFvml0JmVhY3V0ZTsgcHJlIHVrbGFkYW5pZSBzJnVhY3V0ZTtib3JvdiBwcmUgdCZ1YWN1dGU7dG8ga2F0ZWcmb2FjdXRlO3JpdSAoYWRyZXNhciBidWRldiBhZHJlcyZhYWN1dGU7cmkgdXBsb2FkcykuIFYgcHImaWFjdXRlO3BhZGUsIMW+ZSBhZHJlcyZhYWN1dGU7ciBuZWJ1ZGUgZXhpc3RvdmHFpSwgYnVkZSB2eXR2b3JlbiZ5YWN1dGU7Lic7CiRsYW5nWydpbmZvX2Rlc3RuYW1lJ10gPSAnUG91xb5pdGUgJiMwMzk7TmFocmFqIGFrbyYjMDM5OyBpYmEgdiBwciZpYWN1dGU7cGFkZSwgxb5lIGNoY2V0ZSB6bWVuacWlIG4mYWFjdXRlO3pvdiBzJnVhY3V0ZTtib3J1LiAnOwokbGFuZ1snZXJyb3JfY2FudGNyZWF0ZWRpcmVjdG9yeSddID0gJ05pZSBqZSBtb8W+biZlYWN1dGU7IHZ5dHZvcmnFpSBhZHJlcyZhYWN1dGU7cic7CiRsYW5nWydlcnJvcl9ub21haWxlcm1vZHVsZSddID0gJ0NNU01haWxlciBtb2R1bGUgbmVib2wgbiZhYWN1dGU7amRlbiZ5YWN1dGU7JzsKJGxhbmdbJ3VwbG9hZF9ub3RpZmljYXRpb24nXSA9ICdOb3YmeWFjdXRlOyBzJnVhY3V0ZTtib3IgYm9sIG5haHJhdCZ5YWN1dGU7JzsKJGxhbmdbJ3RpdGxlX2VtYWlsX29uX3VwbG9hZCddID0gJ1Bvc2xhxaUgbm90aWZpayZhYWN1dGU7Y2l1IHBvIG5haHJhdCZpYWN1dGU7Oic7CiRsYW5nWydlbWFpbF90ZW1wbGF0ZSddID0gJyZTY2Fyb247YWJsJm9hY3V0ZTtuYSBwcmUgZS1tYWlsJzsKJGxhbmdbJ3RpdGxlX2R1bW15X2luZGV4X2h0bWwnXSA9ICdWeXR2b3JpxaUgZHVtbXkgaW5kZXguaHRtbCBzJnVhY3V0ZTtib3IgZG8ga2HFvmQmZWFjdXRlO2hvIGFkcmVzJmFhY3V0ZTtyYT88YnIvPjxlbT5FeGlzdHVqJnVhY3V0ZTtjaSBzJnVhY3V0ZTtib3IgYnVkZSBwcmVwJmlhY3V0ZTtzYW4meWFjdXRlOzwvZW0+JzsKJGxhbmdbJ2Fib3V0J10gPSAnTyBwb2xvxb5rZSc7CiRsYW5nWydlcnJvcl9wZXJtaXNzaW9uZGVuaWVkJ10gPSAnUHImaWFjdXRlO3N0dXAgemFtaWV0bnV0JnlhY3V0ZTsuIFNrb250cm9sdWp0ZSBzdm9qZSBwciZhYWN1dGU7dmEuJzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90d3JpdGUnXSA9ICdOZW0mb2NpcmM7xb5lIHphcGlzb3ZhxaUnOwokbGFuZ1snYWRkY2F0ZWdvcnknXSA9ICdQcmlkYcWlIGthdGVnJm9hY3V0ZTtyaXUnOwokbGFuZ1snYWxsJ10gPSAnViZzY2Fyb247ZXRrbyc7CiRsYW5nWydhcmV5b3VzdXJlJ10gPSAnU3RlIHNpIGlzdCZ5YWN1dGU7Pyc7CiRsYW5nWydhdXRob3InXSA9ICdBdXRvcic7CiRsYW5nWydjYW5jZWwnXSA9ICdacnUmc2Nhcm9uO2nFpSc7CiRsYW5nWydjYW5ub3Rtb2RpZnlwYXRoJ10gPSAnKENlc3RhIG5lbSZvY2lyYzvFvmUgYnnFpSB1cHJhdmVuJmFhY3V0ZTspJzsKJGxhbmdbJ2NhdGVnb3JpZXMnXSA9ICdLYXRlZyZvYWN1dGU7cmllJzsKJGxhbmdbJ2NhdGVnb3J5J10gPSAnS2F0ZWcmb2FjdXRlO3JpYSc7CiRsYW5nWydtZXNzYWdlX2NhdGVnb3J5YWRkZWQnXSA9ICdLYXRlZyZvYWN1dGU7cmlhIGJvbGEgJnVhY3V0ZTtzcGUmc2Nhcm9uO25lIG5haHJhdCZhYWN1dGU7JzsKJGxhbmdbJ2RhdGUnXSA9ICdEJmFhY3V0ZTt0dW0nOwokbGFuZ1snZGF0ZXVwbG9hZGVkJ10gPSAnRCZhYWN1dGU7dHVtIG5haHJhdGlhJzsKJGxhbmdbJ2RlZmF1bHQnXSA9ICdQcmVkbmFzdGF2ZW4mZWFjdXRlOyc7CiRsYW5nWydkZWxldGUnXSA9ICdPZHN0ciZhYWN1dGU7bmnFpSc7CiRsYW5nWydkZXNjcmlwdGlvbiddID0gJ1BvcGlzJzsKJGxhbmdbJ2Rlc3RuYW1lJ10gPSAnTmFocmHFpSBha28nOwokbGFuZ1snZGV0YWlsX3RlbXBsYXRlJ10gPSAnJlNjYXJvbjthYiZvYWN1dGU7bmEgcHJlIGRldGFpbCc7CiRsYW5nWydkb3dubG9hZGVkJ10gPSAnUyZ1YWN1dGU7Ym9yICVzIGJvbCBzdGlhaHV0JnlhY3V0ZTsuJzsKJGxhbmdbJ2Rvd25sb2FkcyddID0gJ1N0aWFobnV0aWEnOwokbGFuZ1snZWRpdCddID0gJ1VwcmF2acWlJzsKJGxhbmdbJ2VkaXRjYXRlZ29yeSddID0gJ1VwcmF2acWlIGthdGVnJm9hY3V0ZTtyaXUnOwokbGFuZ1snZWRpdHVwbG9hZCddID0gJ1VwcmF2acWlIHVwbG9hZCc7CiRsYW5nWydlcnJvciddID0gJ0NoeWJhISc7CiRsYW5nWydlcnJvcl9wYXRoaW51c2UnXSA9ICdLYXRlZyZvYWN1dGU7cmlhIHBvdcW+JmlhY3V0ZTt2YWomdWFjdXRlO2NhIHQmdWFjdXRlO3RvIGNlc3R1IHXFviBleGlzdHVqZSc7CiRsYW5nWydlcnJvcl9jYXRlZ29yeWV4aXN0cyddID0gJ0NoeWJhOiBLYXRlZyZvYWN1dGU7cmlhIHXFviBleGlzdHVqZSc7CiRsYW5nWydlcnJvcl9jYXRlZ29yeW5vdGVtcHR5J10gPSAnQ2h5YmEhIE5lbSZvY2lyYzvFvnRlIHptYXphxaUga2F0ZWcmb2FjdXRlO3JpdSwga3RvciZhYWN1dGU7IG5pZSBqZSBwciZhYWN1dGU7emRuYSc7CiRsYW5nWydlcnJvcl9jYXRlZ29yeW5vdGZvdW5kJ10gPSAnQ2h5YmE6IEthdGVnJm9hY3V0ZTtyaWEgbmVuJmFhY3V0ZTtqZGVuJmFhY3V0ZTsnOwokbGFuZ1snZXJyb3JfZGJlcnJvciddID0gJ0NoeWJhOiBWIGRhdGFiJmFhY3V0ZTt6ZSc7CiRsYW5nWydlcnJvcl9lbXB0eWNhdGVnb3J5J10gPSAnQ2h5YmE6IEthdGVnJm9hY3V0ZTtyaWEgcHImYWFjdXRlO3pkYSc7CiRsYW5nWydlcnJvcl9lbXB0eXBhdGgnXSA9ICdDaHliYTogQ2VzdGEgcHImYWFjdXRlO3pkbmEnOwokbGFuZ1snZXJyb3JfZmlsZWV4aXN0cyddID0gJ0NoeWJhISBTJnVhY3V0ZTtib3IgJXMgdcW+IGV4aXN0dWplLic7CiRsYW5nWydlcnJvcl9maWxlbm90Zm91bmQnXSA9ICdDaHliYSEgUyZ1YWN1dGU7Ym9yICVzIG5lYm9sIG4mYWFjdXRlO2pkZW4meWFjdXRlOy4nOwokbGFuZ1snZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJ10gPSAnQ2h5YmE6IG5lZG9zdGF0b2sgcGFyYW1ldHJvdiBwcmUgcG91xb5pdGllIG1vZHVsdSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkYXV0aG9yJ10gPSAnQ2h5YmE6IE5lc3ByJmFhY3V0ZTt2bmUgdnlwbG5lbiZhYWN1dGU7LCBhbGVibyBwciZhYWN1dGU7emRuYSBwb2xvxb5rYSBhdXRvci4nOwokbGFuZ1snZXJyb3JfaW52YWxpZGNhdGVnb3J5J10gPSAnQ2h5YmE6IE5lc3ByJmFhY3V0ZTt2bmUgdnlwbG5lbiZhYWN1dGU7LCBhbGVibyBwciZhYWN1dGU7emRuYSBwb2xvxb5rYSBrYXRlZyZvYWN1dGU7cmlhLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkZGVzY3JpcHRpb24nXSA9ICdDaHliYTogTmVzcHImYWFjdXRlO3ZuZSB2eXBsbmVuJmFhY3V0ZTssIGFsZWJvIHByJmFhY3V0ZTt6ZG5hIHBvbG/FvmthIHBvcGlzLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkZmlsZSddID0gJ0NoeWJhOiBOZXNwciZhYWN1dGU7dm5lIHZ5cGxuZW4mYWFjdXRlOywgYWxlYm8gcHImYWFjdXRlO3pkbmEgcG9sb8W+a2EgbiZhYWN1dGU7em92IHMmdWFjdXRlO2JvcnUuJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1cGxvYWRmaWxlbmFtZSddID0gJ0NoeWJhOiBUaWV0byB0eXBpIHMmdWFjdXRlO2Jvcm92IG5pZSBzJnVhY3V0ZTsgcG9kcG9yb3ZhbiZlYWN1dGU7IChwciZpYWN1dGU7cG9uYSkuJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1cGxvYWRpZCddID0gJ0NoeWJhOiBOZXNwciZhYWN1dGU7dm5lIHVwbG9hZCBpZCc7CiRsYW5nWydlcnJvcl9ub2ZpbGVzJ10gPSAnQ2h5YmE6IMW9aWFkbmUgdnlicmFuJmVhY3V0ZTsgcyZ1YWN1dGU7Ym9yeSc7CiRsYW5nWydmaWxlcyddID0gJ1MmdWFjdXRlO2JvcnknOwokbGFuZ1snZml4bWUnXSA9ICdPJnNjYXJvbjtldHJpxaUgbWVkemVyeSc7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdTJnVhY3V0ZTtib3JvdiZ5YWN1dGU7IG1hbmHFvm1lbnQgKFVwbG9hZHMpJzsKJGxhbmdbJ2hlbHAnXSA9ICc8aDM+V2hhdCBEb2VzIFRoaXMgRG8/PC9oMz4NCjxwPkl0IGlzIGEgbW9kdWxlIGZvciBhbGxvd2luZyBwZW9wbGUgdG8gdXBsb2FkIGFuZCBkb3dubG9hZCBmaWxlcyB0byBhbmQgZnJvbSB5b3VyIHNpdGUuICBJdCBrZWVwcyB0cmFjayBvZiB3aG8gdXBsb2FkZWQgYSBmaWxlLCBhbmQgd2hvIGhhcyBkb3dubG9hZGVkIGl0LiAgQXMgd2VsbCwgeW91IGNhbiBzb3J0IGZpbGVzIGludG8gY2F0ZWdvcmllcywgYW5kIG1hbmFnZSB0aGUgZmlsZXMgdGhhdCB3ZXJlIHVwbG9hZGVkIGxpa2UgZXZlcnkgYWRtaW5pc3RyYXRvciB3b3VsZCBkbzwvcD4gDQo8aDM+SG93IERvIEkgVXNlIEl0PC9oMz4NCjxwPjxzdHJvbmc+V2FybmluZzwvc3Ryb25nPiAtIFRoZSBwcm9wZXIgYmVoYXZpb3VyIG9mIHRoaXMgbW9kdWxlIGRlcGVuZHMgb24gbnVtZXJvdXMgcGhwIGNvbmZpZ3VyYXRpb24gdmFyaWFibGVzLiAgVGhlc2UgaW5jbHVkZSA8ZW0+KGJ1dCBhcmUgbm90IGxpbWl0ZWQgdG8pPC9lbT4sIHBocCYjMDM5O3MgbWVtb3J5X2xpbWl0LCBzYWZlX21vZGUsIGZpbGVfdXBsb2FkcywgdXBsb2Fkc19tYXhfZmlsZXNpemUsIGFuZCBtYXhfZXhlY3V0aW9uX3RpbWUuICBUaGVzZSB2YXJpYWJsZXMgbWF5IG5lZWQgYWRqdXN0bWVudCBmb3IgdGhpcyBtb2R1bGUgdG8gd29yayBwcm9wZXJseSBvbiB5b3VyIHNpdGUuICBJdCBpcyBhZHZpc2VkIHRoYXQgeW91IHdvcmsgd2l0aCB5b3VyIHN5c3RlbSBhZG1pbmlzdHJhdG9yIG9yIGhvc3QgcHJvdmlkZXIgdG8gdHVuZSB0aGVzZSBzZXR0aW5ncyBmb3IgeW91ciByZXF1aXJlbWVudHMuPC9wPg0KPHA+VG8gdXNlIHRoaXMgbW9kdWxlLCB0byBhbGxvdyB1c2VycyB0byB1cGxvYWQgZmlsZXMgdG8geW91ciBzaXRlLCB5b3Ugc2hvdWxkIGluc3RhbGwgdGhlIG1vZHVsZSwgYW5kIHRoZW4gY3JlYXRlIG9uZSBvciBtb3JlIGNhdGVnb3JpZXMgKGEuay5hKSBkaXJlY3RvcmllcyBmb3IgdGhlIHVwbG9hZGVkIGZpbGVzIHRvIGdvIGludG8uIFRoZW4gYWRkIGEgdGFnIGludG8gYSBwYWdlIG9yIHRlbXBsYXRlIHNvbWV3aGVyZSBsaWtlIHtjbXNfbW9kdWxlIG1vZHVsZT0mcXVvdDtVcGxvYWRzJnF1b3Q7IGNhdGVnb3J5PSZxdW90O3NvbWVjYXRlZ29yeSZxdW90OyBtb2RlPSZxdW90O3NvbWVtb2RlJnF1b3Q7fS4gIFdoZXJlIG1vZGUgbWF0Y2hlcyBvbmUgb2YgdGhlIG1vZGVzIGxpc3RlZCBiZWxvdy4gIFRoZSBvdXRwdXQgd2lsbCBkaWZmZXIgZGVwZW5kaW5nIHVwb24gd2hpY2ggbW9kZSB5b3Ugc2VsZWN0LjwvcD4NCjxwPlRoaXMgbW9kdWxlIGNhbiB1c2UgdGhlIEZyb250ZW5kVXNlcnMgbW9kdWxlIChvcHRpb25hbCkgdG8gZ2V0IGluZm9ybWF0aW9uIGFib3V0IGFueSBjdXJyZW50bHkgbG9nZ2VkIGluIHVzZXJzIHRvIHBhcnRseSBmaWxsIGluIHRoZSBmb3JtIHdoZW4gdXBsb2FkaW5nIGZpbGVzOzwvcD4NCjxoMz5QZXJtaXNzaW9uczwvaDM+DQo8dWw+DQo8bGk+PGVtPk1hbmFnZSBVcGxvYWRzPC9lbT4gcGVybWlzc2lvbiBpcyBuZWVkZWQgdG8gbWFuYWdlIGNhdGVnb3JpZXMsIGFuZCB0aGUgZmlsZXMgd2l0aGluIHRoZW0uPC9saT4NCjxsaT48ZW0+TW9kaWZ5IFRlbXBsYXRlczwvZW0+IHBlcm1pc3Npb24gaXMgbmVlZGVkIGVkaXQgYW55IG9mIHRoZSB0ZW1wbGF0ZXMuPC9saT4NCjxsaT48ZW0+TW9kaWZ5IFNpdGUgUHJlZmVyZW5jZXM8L2VtPiBwZXJtaXNzaW9uIGlzIG5lZWRlZCBhbnkgb2YgdGhlIGZpbGUgc2V0dGluZ3MuPC9saT4NCjwvdWw+DQo8aDM+Q2F0ZWdvcnkgQnJvd3Npbmc8L2gzPg0KPHA+UGxhY2luZyBhIHRhZyBsaWtlIHtjbXNfbW9kdWxlIG1vZHVsZT0mcXVvdDtVcGxvYWRzJnF1b3Q7IGFjdGlvbj0mcXVvdDtjYXRlZ29yeXN1bW1hcnkmcXVvdDsgdGVtcGxhdGU9JnF1b3Q7c3VtbWFyeXRlbXBsYXRlJnF1b3Q7IHNvcnRvcmRlcj0mcXVvdDtuYW1lX2FzYyZxdW90OyBsaXN0aW5ndGVtcGxhdGU9JnF1b3Q7bGlzdHRlbXBsYXRlJnF1b3Q7IGxpc3Rpbmdzb3J0b3JkZXI9JnF1b3Q7bGlzdHNvcnRvcmRlciZxdW90O30NCmFsbG93cyB5b3UgdG8gZGlzcGxheSBhbiBpbnRlcmFjdGl2ZSBjYXRlZ29yeSBicm93c2VyLiBzb3J0b3JkZXIgY2FuIGJlOiBuYW1lX2FzYywgbmFtZV9kZXNjLCBzdW1tX2FzYywgc3VtbV9kZXNjLCBvciByYW5kb20uDQpsaXN0aW5ndGVtcGxhdGUgYW5kIGxpc3Rpbmdzb3J0b3JkZXIgYXJlIGlkZW50aWNhbCB0byB0aGUgdGVtcGxhdGUgYW5kIHNvcnRvcmRlciBwYXJhbWV0ZXJzIGZvcg0KdGhlICZxdW90O3N1bW1hcnkmcXVvdDsgbW9kZS48L3A+DQo8aDM+RW1haWxpbmc8L2gzPg0KPHA+VGhpcyBtb2R1bGUgaXMgY2FwYWJsZSBvZiBzZW5kaW5nIGFuIGVtYWlsIHdoZW5ldmVyIGEgZmlsZSBpcyB1cGxvYWRlZCwgc2VlIHRoZSBwcmVmZXJlbmNlcyB0YWIuICBIb3dldmVyLCB0byBkbyB0aGlzIHRoZSA8Yj5DTVNNYWlsZXI8L2I+IHBhY2thZ2UgbXVzdCBiZSBpbnN0YWxsZWQgYW5kIGNvbmZpZ3VyZWQuICBUaGlzIGlzIGFuIDxlbT5vcHRpb25hbDwvZW0+IHN0ZXAsIGFuZCBpZiB0aGUgQ01TTWFpbGVyIG1vZHVsZSBpcyBub3QgaW5zdGFsbGVkLCBub3RoaW5nIHdpbGwgYmUgZGlzcGxheWVkIHRvIHRoZSB1c2VyLCBvbmx5IGEgbG9nIG1lc3NhZ2Ugd2lsbCBiZSBwbGFjZWQgaW50byB0aGUgYWRtaW4gbG9nPC9wPg0KPGgzPlN5c3RlbSBTZXR0aW5nczwvaDM+DQo8cD48Yj5Ob3RlOjwvYj4gVGhpcyBtb2R1bGUgZG9lcyBub3QgYnlwYXNzIG9yIGdldCBwYXN0IGFueSBmaWxlIHNpemUgbGltaXRhdGlvbnMgaW4gcGhwLiAgSXQgd29ya3MgaW4gY29uanVuY3Rpb24gd2l0aCB0aGVtLiAgVGhlcmVmb3JlIHlvdSBtYXkgbmVlZCB0byBtb2RpZnkgeW91ciBwaHAuaW5pIGZpbGUgYW5kL29yIHlvdXIgaHR0cGQuY29uZiBmaWxlKHMpIHRvIGFsbG93IHlvdSB0byB1cGxvYWQgZmlsZXMgYXMgbGFyZ2UgYXMgd2hhdCB5b3UgaGF2ZSBzZXQgaW4gdGhlIHVwbG9hZHMgbW9kdWxlIHByZWZlcmVuY2VzLjwvcD4NCjxoMz5BcGFjaGUgTm90ZXM8L2gzPg0KPHA+SW4gb3JkZXIgdG8gYWxsb3cgbGFyZ2UgZmlsZSB1cGxvYWRzLCB5b3UgbWF5IG5lZWQgdG8gbW9kaWZ5IHRoZSB1cGxvYWRfbWF4X2ZpbGVzaXplIHBhcmFtZXRlciBpbiB5b3VyIHBocC5pbmkgIEluIGFkZGl0aW9uLCB0aGUgTGltaXRSZXF1ZXN0Qm9keSBwYXJhbWV0ZXIgaW4geW91ciBhcGFjaGUgY29uZmlndXJhdGlvbiwgbWF5IG5lZWQgdG8gYmUgYWRqdXN0ZWQgdG8gbWF0Y2ggdGhlIHVwbG9hZF9tYXhfZmlsZXNpemUgcGFyYW1ldGVyPC9wPg0KPHA+Tm90ZTogIHRoZSB1cGxvYWRfbWF4X2ZpbGVzaXplIHBhcmFtZXRlciBjYW4gYmUgc3BlY2lmaWVkIGluIGJ5dGVzLCBraWxvYnl0ZXMsIG9yIG1lZ2FieXRlcywgaG93ZXZlciB0aGUgTGltaXRSZXF1ZXRCb2R5IHBhcmFtZXRlciBpcyBvbmx5IHNwZWNpZmllZCBpbiBieXRlczwvcD4NCic7CiRsYW5nWydpZCddID0gJ0lkJzsKJGxhbmdbJ2luc3RhbGxlZCddID0gJ01vZHVsIHZlcnppYSAlcyBuYWluJnNjYXJvbjt0YWxvdmFuJnlhY3V0ZTsuJzsKJGxhbmdbJ2lwX2FkZHJlc3MnXSA9ICdJUCBhZHJlc2EnOwokbGFuZ1snbW9kZGVzY3JpcHRpb24nXSA9ICdNb2R1bCwga3RvciZ5YWN1dGU7IGRvayZhYWN1dGU7xb5lIG5haHImYWFjdXRlO3ZhxaUgIGEgc3ByYXZvdmHFpSBzJnVhY3V0ZTtib3J5JzsKJGxhbmdbJ25hbWUnXSA9ICdNZW5vJzsKJGxhbmdbJ3JlbmFtZW1lc3NhZ2UnXSA9ICdVcHJhdnRlIG1lbm8gcHJlIHByZW1lbm92YW5pZSc7CiRsYW5nWydwYXRoJ10gPSAnQ2VzdGEnOwokbGFuZ1sncGF0aG1lc3NhZ2UnXSA9ICdVcHJhdnRlIG0mZWFjdXRlO25vIGthdGVnJm9hY3V0ZTtyaWUgcHJlIHByZXN1biBzJnVhY3V0ZTtib3J1IGRvIGluJmVhY3V0ZTtobyBhZHJlcyZhYWN1dGU7cmEnOwokbGFuZ1sncGF0aGludXBsb2FkcyddID0gJyhyZWxhdCZpYWN1dGU7dm5hIGsgdXBsb2FkcyBhZHJlcyZhYWN1dGU7cnUpJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsJ10gPSAnPHA+VGhlIHVwbG9hZHMgbW9kdWxlIGhhcyBiZWVuIHN1Y2Nlc3NmdWxseSBpbnN0YWxsZWQuIEJlIHN1cmUgdG8gc2V0ICZxdW90O01hbmFnZSBVcGxvYWRzJnF1b3Q7IHBlcm1pc3Npb25zIHRvIHVzZSB0aGlzIG1vZHVsZSE8L3A+DQo8cD48c3Ryb25nPldhcm5pbmc8L3N0cm9uZz4gLSBUaGUgcHJvcGVyIGJlaGF2aW91ciBvZiB0aGlzIG1vZHVsZSBkZXBlbmRzIG9uIG51bWVyb3VzIHBocCBjb25maWd1cmF0aW9uIHZhcmlhYmxlcy4gIFRoZXNlIGluY2x1ZGUgPGVtPihidXQgYXJlIG5vdCBsaW1pdGVkIHRvKTwvZW0+LCBwaHAmIzAzOTtzIG1lbW9yeV9saW1pdCwgc2FmZV9tb2RlLCBmaWxlX3VwbG9hZHMsIHVwbG9hZHNfbWF4X2ZpbGVzaXplLCBhbmQgbWF4X2V4ZWN1dGlvbl90aW1lLiAgVGhlc2UgdmFyaWFibGVzIG1heSBuZWVkIGFkanVzdG1lbnQgZm9yIHRoaXMgbW9kdWxlIHRvIHdvcmsgcHJvcGVybHkgb24geW91ciBzaXRlLiAgSXQgaXMgYWR2aXNlZCB0aGF0IHlvdSB3b3JrIHdpdGggeW91ciBzeXN0ZW0gYWRtaW5pc3RyYXRvciBvciBob3N0IHByb3ZpZGVyIHRvIHR1bmUgdGhlc2Ugc2V0dGluZ3MgZm9yIHlvdXIgcmVxdWlyZW1lbnRzLjwvcD4nOwokbGFuZ1sncG9zdHVuaW5zdGFsbCddID0gJ01vZHVsIGJvbCAmdWFjdXRlO3NwZSZzY2Fyb247bmUgb2RzdHImYWFjdXRlO25lbiZ5YWN1dGU7LiAgTmVib2xpIG9kc3RyJmFhY3V0ZTtuZW4mZWFjdXRlOyDFvmlhZG5lIHMmdWFjdXRlO2JvcnknOwokbGFuZ1sncHJlZmVyZW5jZXMnXSA9ICdOYXN0YXZlbmlhJzsKJGxhbmdbJ3ByZWZzdXBkYXRlZCddID0gJ05hc3RhdmVuaWEgbW9kdWx1IGFrdHVhbGl6b3ZhbiZlYWN1dGU7Lic7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnlkZXNjJ10gPSAnUG9waXMnOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5bGlzdGFibGUnXSA9ICdTJnVhY3V0ZTtib3J5IHYgdG9tdG8gYWRyZXMmYWFjdXRlO3J5IG0mb2NpcmM7xb51IGJ5xaUgIHphcmFkZW4mZWFjdXRlOyBkbyB6b3puYW11JzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeW5hbWUnXSA9ICdOJmFhY3V0ZTt6b3Yga2F0ZWdvJm9hY3V0ZTtyaWUnOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5cGF0aCddID0gJ0Nhc3RlIG5hIHNlcnZlcmknOwokbGFuZ1sncHJvbXB0X2RlbGV0ZWRpcmVjdG9yeSddID0gJ09kc3RyJmFhY3V0ZTtpxaUgYWRyZXMmYWFjdXRlO3Iga2F0ZWcmb2FjdXRlO3JpZT8nOwokbGFuZ1sncHJvbXB0X21heF91cGxvYWRzaXplJ10gPSAnTWF4aW0mYWFjdXRlO2xuYSB2ZcS+a29zxaUgbmFociZhYWN1dGU7dmFuJmVhY3V0ZTtobyBzJnVhY3V0ZTtib3J1IChLYiknOwokbGFuZ1sncHJvbXB0X3ZhbGlkX3VwbG9hZGV4dGVuc2lvbnMnXSA9ICdQb2xvdm4mZWFjdXRlOyBuYWhyJmFhY3V0ZTt2YW4mZWFjdXRlOyBwciZpYWN1dGU7cG9ueSc7CiRsYW5nWydzY2FuJ10gPSAnU2tlbm92YcWlJzsKJGxhbmdbJ3NlbGVjdGNhdGVnb3J5J10gPSAnVnlicmHFpSBrYXRlZyZvYWN1dGU7cml1JzsKJGxhbmdbJ3NpemUnXSA9ICdWZcS+a29zxaUnOwokbGFuZ1snc2l6ZWtiJ10gPSAnVmXEvmtvc8WlIChLYiknOwokbGFuZ1snc3VibWl0J10gPSAnT2Rvc2xhxaUnOwokbGFuZ1snc3VtbWFyeV90ZW1wbGF0ZSddID0gJyZTY2Fyb247YWJsJm9hY3V0ZTtueSBwcmUgdiZ5YWN1dGU7cGlzIChzJnVhY3V0ZTtocm4pJzsKJGxhbmdbJ3N1bW1hcnknXSA9ICdTJnVhY3V0ZTtocm4gKHYmeWFjdXRlO3BpcyknOwokbGFuZ1sndGl0bGVfYWRtaW5fcGFuZWwnXSA9ICdVcGxvYWRzIG1vZHVsJzsKJGxhbmdbJ3RpdGxlX21vZF9hZG1pbiddID0gJ0FkbWluIHBhbmVsIG1vZHVsdSc7CiRsYW5nWyd0aXRsZV9tb2RfcHJlZnMnXSA9ICdOYXN0YXZlbmlhJzsKJGxhbmdbJ3RpdGxlX3N1Ym5ldF9leGNsdXNpb25zJ10gPSAnVnluZWNoYcWlIHN1Ym5ldHMgem8gJnNjYXJvbjt0YXRpc3QmaWFjdXRlO2snOwokbGFuZ1sndGl0bGVfdmFsaWRfdXBsb2FkZXh0ZW5zaW9ucyddID0gJ1Bvdm9sZW4mZWFjdXRlOyBwciZpYWN1dGU7cG9ueSc7CiRsYW5nWyd1bmluc3RhbGxlZCddID0gJ01vZHVsIG9kaW4mc2Nhcm9uO3RhbG92YW4meWFjdXRlOyc7CiRsYW5nWyd1cGdyYWRlZCddID0gJ01vZHVsIGFrdHVhbGl6b3ZhbiZ5YWN1dGU7IG5hIHZlcnppdSAlcy4nOwokbGFuZ1sndXBsb2FkJ10gPSAnTmFocmHFpSc7CiRsYW5nWyd1cGxvYWRlZCddID0gJ1MmdWFjdXRlO2JvciAlcyBib2wgbmFocmF0JnlhY3V0ZTsgJXMuJzsKJGxhbmdbJ3JlcGxhY2VkJ10gPSAnUyZ1YWN1dGU7Ym9yICVzIGJvbCBwcmVwJmlhY3V0ZTtzYW4meWFjdXRlOyAlcy4nOwokbGFuZ1snZGVsZXRlZCddID0gJ1MmdWFjdXRlO2JvciAlcyBib2wgb2RzdHImYWFjdXRlO25lbiZ5YWN1dGU7Lic7CiRsYW5nWyd1cGxvYWRmb3JtX3RlbXBsYXRlJ10gPSAnJlNjYXJvbjthYmwmb2FjdXRlO25hIHByZSBmb3JtdWwmYWFjdXRlO3IgcHJlIG5haHJhdGllIHMmdWFjdXRlO2JvcnUnOwokbGFuZ1sndXNlcm5hbWUnXSA9ICdVxb4maWFjdXRlO3ZhdGXEvnNrJmVhY3V0ZTsgbWVubyc7CiRsYW5nWyd3YXJuaW5nX2RlbGV0ZWNhdGVnb3J5J10gPSAnVkFST1ZBTklFOiBEJmFhY3V0ZTt2YWp0ZSBzdSBwb3pvciBwcmkgbWF6YW4maWFjdXRlOyBrYXRlZyZvYWN1dGU7cmlpLCBzJnVhY3V0ZTtib3J5IG0mb2NpcmM7xb51IGJ5xaUgb2RzdHImYWFjdXRlO25lbiZlYWN1dGU7JzsKJGxhbmdbJ3dlbGNvbWVfdGV4dCddID0gJzxwPlZpdGFqIHYgYWRtaW5pc3RyJmFhY3V0ZTtjaWkgVXBsb2FkcyBtb2R1bHUuIFNvbWV0aGluZyBlbHNlIHdvdWxkIHByb2JhYmx5IGdvIGhlcmUgaWYgdGhlIG1vZHVsZSBhY3R1YWxseSBkaWQgc29tZXRoaW5nLjwvcD4nOwokbGFuZ1sndXRteiddID0gJzE1Njg2MTM1My4xMjI4NjkxNjc2LjIyMy4xNS51dG1jY249KHJlZmVycmFsKXx1dG1jc3I9YnVybmVyLmt1em1hbnkuYml6fHV0bWNjdD0vaW5zdGFsbC91cGdyYWRlLnBocHx1dG1jbWQ9cmVmZXJyYWwnOwokbGFuZ1sndXRtYSddID0gJzE1Njg2MTM1My4xNTgyOTEzMzUzMDA0NjYxMDAuMTIyMTkwNjQ3MC4xMjI5NjI4ODA4LjEyMjk2MzQ3NDAuMjQ3JzsKJGxhbmdbJ3V0bWMnXSA9ICcxNTY4NjEzNTMnOwokbGFuZ1sndXRtYiddID0gJzE1Njg2MTM1My4yLjEwLjEyMjk2MzQ3NDAnOwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lang/ext/sv_SE.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2ZpcnN0cGFnZSddID0gJ0Ymb3VtbDtyc3RhIHNpZGFuJzsKJGxhbmdbJ3ByZXZwYWdlJ10gPSAnRiZvdW1sO3JlZyZhcmluZztlbmRlIHNpZGEnOwokbGFuZ1snbmV4dHBhZ2UnXSA9ICdOJmF1bWw7c3RhIHNpZGEnOwokbGFuZ1snbGFzdHBhZ2UnXSA9ICdTaXN0YSBzaWRhbic7CiRsYW5nWydmaXJzdHBhZ2VfYXJyb3cnXSA9ICc8PCc7CiRsYW5nWydwcmV2cGFnZV9hcnJvdyddID0gJzwnOwokbGFuZ1snbmV4dHBhZ2VfYXJyb3cnXSA9ICc+JzsKJGxhbmdbJ2xhc3RwYWdlX2Fycm93J10gPSAnPj4nOwokbGFuZ1sncGFnZSddID0gJ1NpZGEnOwokbGFuZ1snb2YnXSA9ICdhdic7CiRsYW5nWydwcm9tcHRfZ3JvdXBsaXN0J10gPSAnYXVrdG9yaXNlcmFkZSBGcm9udGVuZGFudiZhdW1sO25kYXJlLWdydXBwZXInOwokbGFuZ1snaW5mb19ncm91cGxpc3QnXSA9ICdWJmF1bWw7bGogZGUgRnJvbnRlbmRhbnYmYXVtbDtuZGFyZS1ncnVwcGVyIHNvbSBza2EgdGlsbCZhcmluZzt0YXMga29tbWEgJmFyaW5nO3QgZmlsZXIgaSBkZW4gaCZhdW1sO3Iga2F0ZWdvcmluLiBBdm1hcmtlcmEgYWxsYSBwb3N0ZXIgZiZvdW1sO3IgYXR0IHRpbGwmYXJpbmc7dGEgZnVsbCAmYXJpbmc7dGtvbXN0JzsKJGxhbmdbJ3RpdGxlX3NjYW4nXSA9ICdMZXRhIGVmdGVyIG55YSBmaWxlciBpIGRlbiBoJmF1bWw7ciBrYXRlZ29yaW4nOwokbGFuZ1sndGl0bGVfY3JlYXRlX3RodW1ibmFpbHMnXSA9ICdTa2FwYSBzYWtuYWRlIG1pbmlhdHlyYmlsZGVyIGYmb3VtbDtyIGZpbGVyIGkgZGVuIGgmYXVtbDtyIGthdGVnb3Jpbi4nOwokbGFuZ1snY3JlYXRlX3RodW1ibmFpbHMnXSA9ICdTa2FwYSBtaW5pYXR5cmJpbGRlcic7CiRsYW5nWyd0aXRsZV9jcmVhdGVfdGh1bWJuYWlsJ10gPSAnKCZhcmluZzt0ZXIpc2thcGEgbWluaWF0eXJiaWxkZXIgZiZvdW1sO3IgZGVuIGgmYXVtbDtyIGZpbGVuJzsKJGxhbmdbJ2NyZWF0ZV90aHVtYm5haWwnXSA9ICdTa2FwYSBtaW5pYXR5cmJpbGQnOwokbGFuZ1snZXJyb3JfcGF0aGVycm9yJ10gPSAnS3VuZGUgaW50ZSAmb3VtbDtwcG5hIGthdGFsb2cgKFImYXVtbDt0dGlnaGV0c3Byb2JsZW0/KSc7CiRsYW5nWyd0aXRsZV9kb3dubG9hZF9jaHVua3NpemUnXSA9ICdTdG9ybGVrIHAmYXJpbmc7IHZhcmplIG5lZGxhZGRuaW5ncy1zdHlja2UnOwokbGFuZ1snaW5mb19kb3dubG9hZF9jaHVua3NpemUnXSA9ICdPbSBkdSAmYXVtbDtuZHJhciBkZW4gaCZhdW1sO3IgcGFyYW1ldGVybiBwJmFyaW5nO3ZlcmthciBkZXQgbmVkbGFkZG5pbmdzaGFzdGlnaGV0ZW4sIG9jaCBrYW4gaGomYXVtbDtscGEgdGlsbCBpIG1pbGomb3VtbDtlciBtZWQgbGl0ZSBtaW5uZSc7CiRsYW5nWyd3YXJuaW5nX3NhZmVfbW9kZSddID0gJ1NhZmUgbW9kZSBmJm91bWw7ciBQSFAgJmF1bWw7ciBha3RpdmVyYXQuIERldHRhIGthbiBvcnNha2EgcHJvYmxlbSBtZWQgYXR0IGxhZGRhIHVwcCBmaWxlciAociZhdW1sO3R0aWdoZXRlcikgb2NoIGthbiBvY2tzJmFyaW5nOyBpbnZlcmthIHAmYXJpbmc7IGRlbiBoJmF1bWw7ciBtb2R1bGVucyBtJm91bWw7amxpZ2hldGVyIGF0dCBza2lja2EgbiZhcmluZztncmEgZmlsZXIgcGdhIHN2JmFyaW5nO3JpZ2hldGVyIGF0dCAmb3VtbDt2ZXJza3JpZGEgbiZhcmluZztncmEgYXYgaW5pLWluc3QmYXVtbDtsbG5pbmdhcm5hLiBEdSByZWtvbW1lbmRlcmFzIGF0dCB0YSBrb250YWt0IG1lZCBkaXR0IHdlYmJob3RlbGwgZiZvdW1sO3IgYXR0IHNlIG9tIGR1IGthbiBmJmFyaW5nOyBkZW0gYXR0IGluYWt0aXZlcmEgc2FmZSBtb2RlJzsKJGxhbmdbJ3BhcmFtX2RldGFpbHBhZ2UnXSA9ICdBbnYmYXVtbDtuZGJhcnQgZiZvdW1sO3IgYXR0IHZpc2EgZW4gZGV0YWxqZXJhZCByYXBwb3J0IHNvbSBhbnYmYXVtbDtuZGVyIGVuIGFubmFuIHNpZG1hbGwuIERlbiBoJmF1bWw7ciBwYXJhbWV0ZXJuIGFjY2VwdGVyYXIgc2lkLWlkIGVsbGVyIHNpZGFsaWFzIGYmb3VtbDtyIGVuIHNpZGEgc29tIHNrYSBhbnYmYXVtbDtuZGFzIGYmb3VtbDtyIGF0dCB2aXNhIGRlbiBkZXRhbGplcmFkZSByYXBwb3J0ZW4nOwokbGFuZ1sncGFyYW1fcHJlZml4J10gPSAnRW4gYm9vbGVhbiBzb20gaW5kaWtlcmFyIG9tIGZpbG5hbW5ldCBza2EgaGEgZXR0IHByZWZpeCc7CiRsYW5nWydwYXJhbV9wcmVmaXhfZmV1J10gPSAnRW4gYm9vbGVhbi1wYXJhbWV0ZXIgc29tIGluZGlrZXJhciBhdHQgZXR0IHByZWZpeCBza2EgdGFzIGZyJmFyaW5nO24gZGVuIGFrdHVlbGxhIGYmb3VtbDtyZmF0dGFyZW4uIE9tIGVqIHNwZWNpZmljZXJhdCAmYXVtbDtyIHByZWZpeGV0IGRlbiBha3R1ZWxsYSB0aWRlbiAoaSBkZWNoZXgtZm9ybWF0KSc7CiRsYW5nWydwYXJhbV9ub2NhcHRjaGEnXSA9ICdJbmFrdGl2ZXJhIGNhcHRjaGEtc3Qmb3VtbDtkIChwJmFyaW5nOyBzb20gc3RhbmRhcmQpIGkgdXBwbGFkZG5pbmdzZm9ybXVsJmF1bWw7cmV0JzsKJGxhbmdbJ3RpdGxlX3VwbG9hZGZvcm1fdGVtcGxhdGUnXSA9ICdSZWRpZ2VyYSBVcHBsYWRkbmluZ3Nmb3JtdWwmYXVtbDtybWFsbGVuJzsKJGxhbmdbJ2NhcHRjaGFfdGl0bGUnXSA9ICdTa3JpdiBpbiB0ZXh0ZW4gc29tIHZpc2FzIGkgZGVuIGgmYXVtbDtyIGJpbGRlbic7CiRsYW5nWydlcnJvcl9jYXB0Y2hhbWlzbWF0Y2gnXSA9ICdUZXh0ZW4gc29tIHNrcmV2cyBpbiBtYXRjaGFyIGludGUgYmlsZGVuIHNvbSB2aXNhcyc7CiRsYW5nWyd0aXRsZV9hdXRvdGh1bWJuYWlsX2V4dGVuc2lvbnMnXSA9ICdTa2EgbWluaWF0eXJiaWxkZXIgZiZvdW1sO3IgZmlsZXIgbWVkIGRlIGgmYXVtbDtyIGZpbCZhdW1sO25kZWxzZXJuYSc7CiRsYW5nWyd0aXRsZV9hdXRvdGh1bWJuYWlsX3NpemUnXSA9ICdNYXhpbWFsIHN0b3JsZWsgKHBpeGxhcikgZiZvdW1sO3IgZGVuIGdlbmVyZXJhZGUgbWluaWF0eXJiaWxkZW4nOwokbGFuZ1sncHJvbXB0X3VwbG9hZF9pY29uJ10gPSAnTGFkZGEgdXBwIGVuIGlrb24nOwokbGFuZ1snaW5mb19zeXNkZWZhdWx0J10gPSAnRGVuIGgmYXVtbDtyIHRleHRlbiBhbnYmYXVtbDtuZHMgdmlkIHNrYXBhbmRlIGF2IGVuIG55IG1hbGwgYXYgZGVuIGgmYXVtbDtyIHR5cGVuJzsKJGxhbmdbJ3RpdGxlX2RldGFpbHJwdF9zeXNkZWZhdWx0J10gPSAnU3lzdGVtc3RhbmRhcmRtYWxsIGYmb3VtbDtyIGRldGFsanJhcHBvcnQnOwokbGFuZ1sndGl0bGVfc3VtbWFyeXJwdF9zeXNkZWZhdWx0J10gPSAnU3lzdGVtc3RhbmRhcmRtYWxsIGYmb3VtbDtyIHNhbW1hbmZhdHRuaW5nc3JhcHBvcnQnOwokbGFuZ1sndGl0bGVfdXBsb2FkZm9ybV9zeXNkZWZhdWx0J10gPSAnU3lzdGVtc3RhbmRhcmRtYWxsIGYmb3VtbDtyIHVwcGxhZGRuaW5nc2Zvcm11bCZhdW1sO3InOwokbGFuZ1sndGVtcGxhdGUnXSA9ICdNYWxsJzsKJGxhbmdbJ3Jlc2V0dG9kZWZhdWx0J10gPSAnJkFyaW5nO3RlcnN0JmF1bWw7bGwgdGlsbCBzdGFuZGFyZHYmYXVtbDtyZGVuJzsKJGxhbmdbJ3RpdGxlX3N1bW1hcnlycHRfdGVtcGxhdGUnXSA9ICdNYWxsIGYmb3VtbDtyIHN1bW1lcmluZ3NyYXBwb3J0JzsKJGxhbmdbJ3RpdGxlX2RldGFpbHJwdF90ZW1wbGF0ZSddID0gJ01hbGwgZiZvdW1sO3IgZGV0YWxqZXJhZCByYXBwb3J0JzsKJGxhbmdbJ3Byb21wdF9uYW1lJ10gPSAnTmFtbic7CiRsYW5nWydwcm9tcHRfZGVmYXVsdCddID0gJ1N0YW5kYXJkJzsKJGxhbmdbJ2xlZ2VuZF91cGxvYWRmb3JtJ10gPSAnTGFkZGEgdXBwIGVuIGZpbCc7CiRsYW5nWydlcnJvcl9taXNzaW5ncGFyYW0nXSA9ICdFbiBuJm91bWw7ZHYmYXVtbDtuZGlnIHBhcmFtZXRlciBzYWtuYXMnOwokbGFuZ1snZXJyb3JfbWlzc2luZ25hbWUnXSA9ICdFdHQgbmFtbiBmJm91bWw7ciBmaWxlbiBtJmFyaW5nO3N0ZSBhbmdlcyc7CiRsYW5nWydlcnJvcl9taXNzaW5nZXh0ZW5zaW9ucyddID0gJyZBcmluZzt0bWluc3RvbmUgZW4gZmlsJmF1bWw7bmRlbHNlIG0mYXJpbmc7c3RlIGFuZ2VzJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdpY29uJ10gPSAnRW4gaWtvbiBtJmFyaW5nO3N0ZSBhbmdlcyc7CiRsYW5nWydlcnJvcl9ub3N1Y2hyb3cnXSA9ICdEZW4gc3BlY2lmaWNlcmFkZSByYWRlbiBrdW5kZSBpbnRlIGhpdHRhcyc7CiRsYW5nWyduYW1lX3Vua25vd24nXSA9ICdPayZhdW1sO25kL29rJmF1bWw7bnQnOwokbGFuZ1snZGVzY3JpcHRpb25fdW5rbm93biddID0gJ0ZpbHR5cHNiZXNrcml2bmluZyBmJm91bWw7ciBvbWF0Y2hhZGUgZmlsZXInOwokbGFuZ1snaW1hZ2UnXSA9ICdCaWxkJzsKJGxhbmdbJ2ljb24nXSA9ICdJa29uJzsKJGxhbmdbJ2V4dGVuc2lvbnMnXSA9ICdGaWwmYXVtbDtuZGVsc2VyJzsKJGxhbmdbJ2FkZGZpbGV0eXBlJ10gPSAnTCZhdW1sO2dnIHRpbGwgbnkgZmlsdHlwJzsKJGxhbmdbJ2ZpbGVfdHlwZXMnXSA9ICdGaWx0eXBlcic7CiRsYW5nWydlcnJvcl9ub2NhdGVnb3J5aWQnXSA9ICdJbmdldCBrYXRlZ29yaS1JRCBhbmdhdnMnOwokbGFuZ1snZXJyb3Jfbm9jYXRlZ29yeSddID0gJ0luZ2V0IGthdGVnb3JpLUlEIGFuZ2F2cyc7CiRsYW5nWydlcnJvcl90ZW1wbGF0ZW5hbWVleGlzdHMnXSA9ICdFbiBtYWxsIG1lZCBkZXQgbmFtbmV0IGZpbm5zIHJlZGFuJzsKJGxhbmdbJ3Byb21wdF90ZW1wbGF0ZW5hbWUnXSA9ICdNYWxsbmFtbic7CiRsYW5nWydwcm9tcHRfdGVtcGxhdGUnXSA9ICdNYWxsJzsKJGxhbmdbJ3Byb21wdF9uZXd0ZW1wbGF0ZSddID0gJ1NrYXBhIGVuIG55IG1hbGwnOwokbGFuZ1snaGVscF9PbkRvd25sb2FkJ10gPSAnPHA+RW4gaCZhdW1sO25kZWxzZSBzb20gdXRmJm91bWw7cnMgbiZhdW1sO3IgZW4gYW52JmF1bWw7bmRhcmUgc2x1dGYmb3VtbDtyIG5lZGxhZGRuaW5nIGF2IGVuIGZpbDwvcD4NCjx1bD4NCjxsaT48ZW0+aWQ8L2VtPiAtIFVwcGxhZGRuaW5ncy1JRDwvbGk+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIEZpbG5hbW48L2xpPg0KPGxpPjxlbT5pcDwvZW0+IC0gTmVkbGFkZGFyZW5zIElQLWFkcmVzczwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2hlbHBfT25EZWxldGVDYXRlZ29yeSddID0gJzxwPkVuIGgmYXVtbDtuZGVsc2Ugc29tIHV0ZiZvdW1sO3JzIG4mYXVtbDtyIGVuIGthdGVnb3JpIHRhcyBib3J0PC9wPg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBLYXRlZ29yaW5hbW48L2xpPg0KPGxpPjxlbT5wYXRoPC9lbT4gLSBTJm91bWw7a3YmYXVtbDtnIGYmb3VtbDtyIGthdGVnb3JpPC9saT4NCjwvdWw+DQonOwokbGFuZ1snaGVscF9PbkNyZWF0ZUNhdGVnb3J5J10gPSAnPHA+RW4gaCZhdW1sO25kZWxzZSBzb20gdXRmJm91bWw7cnMgbiZhdW1sO3IgZW4ga2F0ZWdvcmkgc2thcGFzPC9wPg0KPGg0PlBhcmFtZXRyYXI8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBLYXRlZ29yaW5zIG5hbW48L2xpPg0KPGxpPjxlbT5kZXNjcmlwdGlvbjwvZW0+IC0gS2F0ZWdvcmlucyBiZXNrcml2bmluZzwvbGk+DQo8bGk+PGVtPnBhdGg8L2VtPiAtIEthdGVnb3JpbnMgcyZvdW1sO2t2JmF1bWw7ZzwvbGk+DQo8bGk+PGVtPnBhdGg8L2VtPiAtIEVuIGZsYWdnYSBzb20gaW5kaWtlcmFyIG9tIGthdGVnb3JpbiBrYW4gbGlzdGFzPC9saT4NCjwvdWw+DQonOwokbGFuZ1snaGVscF9PblJlbW92ZSddID0gJzxwPkVuIGgmYXVtbDtuZGVsc2Ugc29tIHV0ZiZvdW1sO3JzIG4mYXVtbDtyIGVuIGZpbCB0YXMgYm9ydCB2aWEgYWRtaW5pc3RyYXRpb25lbiBlbGxlciBmcm9udGVuZC1nciZhdW1sO25zc25pdHRldDwvcD4NCjxoND5QYXJhbWV0cmFyPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gTmFtbmV0IHAmYXJpbmc7IGRlbiBib3J0dGFnbmEgZmlsZW48L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gRGVuIGJvcnR0YWduYSBmaWxlbnMgSUQ8L2xpPg0KPGxpPjxlbT5jYXRlZ29yeV9pZDwvZW0+IC0gS2F0ZWdvcmlucyBJRDwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2hlbHBfT25VcGxvYWQnXSA9ICc8cD5FbiBoJmF1bWw7bmRlbHNlIHNvbSB1dGYmb3VtbDtycyBuJmF1bWw7ciBlbiBmaWwgbGFkZGFzIHVwcCB2aWEgYWRtaW5pc3RyYXRpb25lbiBlbGxlciBmcm9udGVuZC1nciZhdW1sO25zc25pdHRldDwvcD4NCjxoND5QYXJhbWV0cmFyPC9oND4NCjx1bD4NCjxsaT48ZW0+Y2F0ZWdvcnk8L2VtPiAtIEthdGVnb3JpbnMgbmFtbjwvbGk+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIERlbiB1cHBsYWRkYWRlIGZpbGVucyBuYW1uPC9saT4NCjxsaT48ZW0+c2l6ZTwvZW0+IC0gU3Rvcmxla2VuIHAmYXJpbmc7IGRlbiB1cHBsYWRkYWRlIGZpbGVuPC9saT4NCjxsaT48ZW0+c3VtbWFyeTwvZW0+IC0gRGVuIHVwcGxhZGRhZGUgZmlsZW5zIGtvcnRmYXR0YWRlIGJlc2tyaXZuaW5nIChrYW4gdmFyYSB0b20pPC9lbT48L2xpPg0KPGxpPjxlbT5kZXNjcmlwdGlvbjwvZW0+IC0gRGVuIHVwcGxhZGRhZGUgZmlsZW5zIGwmYXJpbmc7bmdhIGJlc2tyaXZuaW5nIChrYW4gdmFyYSB0b20pPC9lbT48L2xpPg0KPGxpPjxlbT5hdXRob3I8L2VtPiAtIERlbiB1cHBsYWRkZSBmaWxlbnMgZiZvdW1sO3JmYXR0YXJlIChvbSBuJmFyaW5nO2dvbik8L2VtPjwvbGk+DQo8bGk+PGVtPmlwX2FkZHJlc3M8L2VtPiAtIEludGVybmV0LWFkcmVzc2VuIGYmb3VtbDtyIGRlbiBrbGllbnQgc29tIGxhZGRhZGUgdXBwIGZpbGVuPC9saT4NCjwvdWw+DQonOwokbGFuZ1snaW5mb19ldmVudF9vbmRlbGV0ZWNhdGVnb3J5J10gPSAnSCZhdW1sO25kZWxzZSBzb20gdXRmJm91bWw7cnMgbiZhdW1sO3IgZW4ga2F0ZWdvcmkgdGFzIGJvcnQnOwokbGFuZ1snaW5mb19ldmVudF9vbmNyZWF0ZWNhdGVnb3J5J10gPSAnSCZhdW1sO25kZWxzZSBzb20gdXRmJm91bWw7cnMgbiZhdW1sO3IgZW4ga2F0ZWdvcmkgc2thcGFzJzsKJGxhbmdbJ2luZm9fZXZlbnRfb25kb3dubG9hZCddID0gJ0gmYXVtbDtuZGVsc2Ugc29tIHV0ZiZvdW1sO3JzIG4mYXVtbDtyIGVuIGZpbCBsYWRkYXMgbmVyJzsKJGxhbmdbJ2luZm9fZXZlbnRfb251cGxvYWQnXSA9ICdIJmF1bWw7bmRlbHNlIHNvbSB1dGYmb3VtbDtycyBuJmF1bWw7ciBlbiBueSBmaWwgbGFkZGFzIHVwcCc7CiRsYW5nWydpbmZvX2V2ZW50X29ucmVtb3ZlJ10gPSAnSCZhdW1sO25kZWxzZSBzb20gdXRmJm91bWw7cnMgbiZhdW1sO3IgZW4gZmlsIHRhcyBib3J0JzsKJGxhbmdbJ3RpdGxlX3VzZXJ0YWdfb251cGxvYWQnXSA9ICdBbnYmYXVtbDtuZGFyZGVmaW5pZXJhZGUgdGFnZ2FyIHNvbSBrYWxsYXMgZWZ0ZXIgYXR0IHVwcGxhZGRuaW5nZW4gJmF1bWw7ciBrb21wbGV0dCc7CiRsYW5nWydub25lJ10gPSAnSW5nYSc7CiRsYW5nWydtYXRjaGVzZm91bmQnXSA9ICdUciZhdW1sO2ZmYXIgaGl0dGFkZSc7CiRsYW5nWydmaWx0ZXInXSA9ICdGaWx0ZXIgJzsKJGxhbmdbJ3RpdGxlX3JlZGlyZWN0b251cGxvYWQnXSA9ICdPbWRpcmlnZXJhIHRpbGwgc2lkLUlELy1hbGlhcyBuJmF1bWw7ciBhbnYmYXVtbDtuZGFyZSBsYWRkYXIgdXBwJzsKJGxhbmdbJ2RldGFpbHMnXSA9ICdEZXRhbGplcic7CiRsYW5nWydjb25maXJtX3ByZWZlcmVuY2VzJ10gPSAnJkF1bWw7ciBkdSBzJmF1bWw7a2VyIHAmYXJpbmc7IGF0dCBkdSB2aWxsICZhdW1sO25kcmEgaW5zdCZhdW1sO2xsbmluZ2FybmE/JzsKJGxhbmdbJ2Vycm9yX25vZmlsZXN1cGxvYWRlZCddID0gJ0luZ2EgZmlsZXIgbGFkZGFkZXMgdXBwLic7CiRsYW5nWydwcm9tcHRfcmVwbGFjZSddID0gJ1RpbGwmYXJpbmc7dCBhdHQgc2tyaXZhICZvdW1sO3Zlcic7CiRsYW5nWydpbmZvX3JlcGxhY2UnXSA9ICdFcnMmYXVtbDt0dCBhbGxhIGZpbGVyIG1lZCBzYW1tYSBuYW1uICgmYXVtbDtuZHJhciBpbnRlIGlkLW51bXJldCknOwokbGFuZ1sncGFyYW1fbm9faW5pdGlhbCddID0gJ1Zpc2EgaW50ZSBuJmFyaW5nO2dyYSBpbmxlZGFuZGUgcmVzdWx0YXQgbiZhdW1sO3IgZGV0IGgmYXVtbDtyIGZpbHRyZXQgJmF1bWw7ciBwJmFyaW5nOyc7CiRsYW5nWydwYXJhbV9rZXknXSA9ICdMJmF1bWw7Z2cgdGlsbCB5dHRlcmxpZ2FyZSBlbiBueWNrZWwgZiZvdW1sO3IgbW9kdWxlbiBmJm91bWw7ciB2aWRhcmUgb3JnYW5pc2VyaW5nIGF2IHVwcGxhZGRuaW5nYXIuIERlbm5hIG55Y2tlbCBrYW4gdmFyYSBlbiBrb2RhZCBzdHImYXVtbDtuZyBzb20gJiMwMzk7ZmV1c2Vyczp1aWQmIzAzOTsgb3N2LiBEZW5uYSBwYXJhbWV0ZXIgYmVoJm91bWw7dnMgbm9ybWFsdCBiYXJhIG4mYXVtbDtyIHVwcGxhZGRuaW5nc21vZHVsZW4gYiZhdW1sO2RkYXMgaW4gaSBlbiBhbm5hbiBtb2R1bGUnOwokbGFuZ1sncGFyYW1fbm9hdXRob3InXSA9ICdEJm91bWw7bGogZiZhdW1sO2x0ZXQgZiZvdW1sO3IgZiZvdW1sO3JmYXR0YXJlIGkgdXBwbGFkZG5pbmdzZm9ybXVsJmF1bWw7cmV0LiBEZW5uYSBwYXJhbWV0ZXIgJmF1bWw7ciBiYXJhIGdpbHRpZyBuJmF1bWw7ciBtb2RlPSYjMDM5O3VwbG9hZCYjMDM5Oy4gT20gbW9kdWxlbiBGcm9udGVuZFVzZXJzIGFudiZhdW1sO25kcyBvY2ggZW4gYW52JmF1bWw7bmRhcmUgZiZvdW1sO3IgdGlsbGYmYXVtbDtsbGV0ICZhdW1sO3IgaW5sb2dnYWQsIHNwYXJhcyBkZXQgaW5sb2dnYWRlIGFudiZhdW1sO25kYXJuYW1uZXQgaSBldHQgZG9sdCBmJmF1bWw7bHQuJzsKJGxhbmdbJ3BhcmFtX3VwbG9hZF9pZCddID0gJ3VwbG9hZF9pZD0mcXVvdDtpZCZxdW90OyAtIGFuZ2UgZW4gZW5za2lsZCBmaWwgZiZvdW1sO3IgdXJsL2wmYXVtbDtuayBlbGxlciBzaW5nbGUgbW9kZSAob3ZhbiknOwokbGFuZ1sncGFyYW1fZGV0YWlsdGVtcGxhdGUnXSA9ICdBbnYmYXVtbDtuZCBlbiBtYWxsIG1lZCBkZXR0YSBuYW1uZXQgZiZvdW1sO3IgZGVuIGRldGFsamVyYWRlIHJhcHBvcnRlbi4nOwokbGFuZ1sncGFyYW1fdGVtcGxhdGUnXSA9ICdBbnYmYXVtbDtuZCBlbiBtYWxsIG1lZCBkZXR0YSBuYW1uZXQgZiZvdW1sO3IgZGVuIGgmYXVtbDtyIHJhcHBvcnRlbiBlbGxlciBmb3JtdWwmYXVtbDtyZXQuIERlbm5hIG1hbGxlbiB0YXIgYXV0b21hdGlza3QgbWFsbGVuIG1lZCBtb3RzdmFyYW5kZSBuYW1uIGZyJmFyaW5nO24gcGFzc2FuZGUgbGlzdGEgYmVyb2VuZGUgcCZhcmluZzsgc3RpbCAobW9kZSknOwokbGFuZ1sncGFyYW1fZmlsdGVyJ10gPSAnVmlzYSBmaWx0ZXJmb3JtdWwmYXVtbDtyZXQnOwokbGFuZ1sncGFyYW1fbm9faW50aXRpYWwnXSA9ICdCYXJhIGFudiZhdW1sO25kYmFyIG4mYXVtbDtyIGZpbHRlcnBhcmFtZXRlcm4gYW52JmF1bWw7bmRzLCBlbGxlciBuJmF1bWw7ciBkZW4gJmF1bWw7ciBwJmFyaW5nOyBzb20gc3RhbmRhcmQuIERlbiBoJmF1bWw7ciBwYXJhbWV0ZXJuIGluZGlrZXJhciBvbSBpbmxlZGFuZGUgcmVzdWx0YXQgc2thIHJldHVybmVyYXMnOwokbGFuZ1sncGFyYW1fZmlsZXR5cGVzJ10gPSAnVmlzYSBiYXJhIGZpbGVyIHZhcnMgdHlwIHN0JmF1bWw7bW1lciAmb3VtbDt2ZXJlbnNlIG1lZCBkZW5uYSBrb21tYXNlcGFyZXJhZGUgbGlzdGEnOwokbGFuZ1sncGFyYW1fc29ydG9yZGVyJ10gPSAnICA8cD5Tb3J0ZXJpbmdzb3JkbmluZ2FyDQogIDx1bD4NCiAgPGxpPjxlbT5kYXRlX2FzYzwvZW0+IC0gU29ydGVyYSBlZnRlciBkYXR1bSwgc3RpZ2FuZGU8L2xpPg0KICA8bGk+PGVtPmRhdGVfZGVzYzwvZW0+IC0gU29ydGVyYSBlZnRlciBkYXR1bSwgZmFsbGFuZGU8L2xpPg0KICA8bGk+PGVtPm5hbWVfYXNjPC9lbT4gLSBTb3J0ZXJhIGVmdGVyIG5hbW4sIHN0aWdhbmRlPC9saT4NCiAgPGxpPjxlbT5uYW1lX2Rlc2M8L2VtPiAtIFNvcnRlcmEgZWZ0ZXIgbmFtbiwgZmFsbGFuZGU8L2xpPg0KICA8bGk+PGVtPnNpemVfYXNjPC9lbT4gLSBTb3J0ZXJhIGVmdGVyIHN0b3JsZWssIHN0aWdhbmRlPC9saT4NCiAgPGxpPjxlbT5zaXplX2Rlc2M8L2VtPiAtIFNvcnRlcmEgZWZ0ZXIgc3RvcmxlaywgZmFsbGFuZGU8L2xpPg0KICA8bGk+PGVtPmRlc2NfYXNjPC9lbT4gLSBTb3J0ZXJhIGVmdGVyIGJlc2tyaXZuaW5nLCBzdGlnYW5kZTwvbGk+DQogIDxsaT48ZW0+ZGVzY19kZXNjPC9lbT4gLSBTb3J0ZXJhIGVmdGVyIGJlc2tyaXZuaW5nLCBmYWxsYW5kZTwvbGk+DQogIDxsaT48ZW0+YXV0aG9yX2FzYzwvZW0+IC0gU29ydGVyYSBlZnRlciBmJm91bWw7cmZhdHRhcmUsIHN0aWdhbmRlPC9saT4NCiAgPGxpPjxlbT5hdXRob3JfZGVzYzwvZW0+IC0gU29ydGVyYSBlZnRlciBmJm91bWw7cmZhdHRhcmUsIGZhbGxhbmRlPC9saT4NCiAgPGxpPjxlbT5pcF9hc2M8L2VtPiAtIFNvcnRlcmEgZWZ0ZXIgSVAtYWRyZXNzLCBzdGlnYW5kZTwvbGk+DQogIDxsaT48ZW0+aXBfZGVzYzwvZW0+IC0gU29ydGVyYSBlZnRlciBJUC1hZHJlc3MsIGZhbGxhbmRlPC9saT4NCiAgPGxpPjxlbT5yYW5kb208L2VtPiAtIFNsdW1wdmlzIHNvcnRlcmluZ3NvcmRuaW5nPC9saT4NCiAgPC91bD4NCiAgPC9wPic7CiRsYW5nWydwYXJhbV9saXN0aW5ndGVtcGxhdGUnXSA9ICdNYWxsIGF0dCBhbnYmYXVtbDtuZGEgZiZvdW1sO3Iga2F0ZWdvcmlsaXN0bmluZ2FyIGVmdGVyIGF0dCBoYSBrbGlja2F0IHZpYSBrYXRlZ29yaXNhbW1hbmZhdHRuaW5nc3NpZGFuJzsKJGxhbmdbJ3BhcmFtX2xpc3Rpbmdzb3J0b3JkZXInXSA9ICdTb3J0ZXJpbmdzb3JkbmluZyAocGFyYW1fc29ydG9yZGVyKSBhdHQgYW52JmF1bWw7bmRhIHZpZCBsaXN0bmluZyBhdiBrYXRlZ29yaWVyIGVmdGVyIGF0dCBoYSBrbGlja2F0IHZpYSBrYXRlZ29yaXNhbW1hbmZhdHRuaW5nc3NpZGFuJzsKJGxhbmdbJ3BhcmFtX2ZpbGVleHRlbnNpb25zJ10gPSAnIA0KZmlsZV9leHRlbnNpb25zPSZxdW90O2V4dDEsZXh0MixleHQzJnF1b3Q7DQo8cD5nJmF1bWw7bGxlciBlbmJhcnQgbiZhdW1sO3IgbW9kZT11cGxvYWQuIERlbiBoJmF1bWw7ciBwYXJhbWV0ZXJuIGJlZ3ImYXVtbDtuc2FyIHZpbGthIGZpbHR5cGVyIHNvbSBrYW4gbGFkZGFzIHVwcC4gRGVuIHVwcGgmYXVtbDt2ZXIgaW5zdCZhdW1sO2xsbmluZ2FybmEgaSBtb2R1bGluc3QmYXVtbDtsbG5pbmdhci48L3A+JzsKJGxhbmdbJ3BhcmFtX2NvdW50J10gPSAnY291bnQ9JnF1b3Q7TiZxdW90Ow0KPHA+RW4gcGFyYW1ldGVyIGYmb3VtbDtyIGF0dCBsaXN0YSBlbmJhcnQgZGUgTiBmJm91bWw7cnN0YSByZXN1bHRhdGVuIGkgZW4gZnImYXJpbmc7Z2EuIFNpZGluZGVsbmluZyAocGFnaW5hdGlvbikgc2t1bGxlIHZhcmEgYiZhdW1sO3R0cmUsIG1lbiBkZXQgaCZhdW1sO3IgZnVua2FyIHRpbGxzIHZpZGFyZTwvcD4nOwokbGFuZ1sncGFyYW1fY2F0ZWdvcnknXSA9ICdjYXRlZ29yeT0mcXVvdDtuYW1lJnF1b3Q7DQo8cD48Yj5Ob3RlcmE6PC9iPiBLYXRlZ29yaSBrYW4gdmFyYSAmcXVvdDthbGwmcXVvdDsgKGFsbGEpLCB2aWxrZXQgbGlzdGFyIGFsbGEgdXBwbGFkZG5pbmdhciBmciZhcmluZztuIGFsbGEgPGVtPmxpc3RiYXJhPC9lbT4ga2F0ZWdvcmllcjwvcD4nOwokbGFuZ1sncGFyYW1fbW9kZSddID0gJyAgPHVsPg0KICA8bGk+PGVtPmRldGFpbGVkPC9lbT4gLSBWaXNhIGVuIGRldGFsamVyYWQgbGlzdGEgJm91bWw7dmVyIGFsbGEgZmlsZXIgaSBrYXRlZ29yaW48L2xpPg0KICA8bGk+PGVtPnVwbG9hZDwvZW0+IC0gVmlzYSBldHQgZm9ybXVsJmF1bWw7ciBmJm91bWw7ciBhdHQgbCZhcmluZzt0YSBlbiBhbnYmYXVtbDtuZGFyZSBsYWRkYSB1cHAgZmlsZXIgdmlhIGhlbXNpZGFuPC9saT4NCiAgPGxpPjxlbT51cmwgPGk+b3I8L2k+IGxpbms8L2VtPiAtIFZpc2EgZW4gbCZhdW1sO25rIHRpbGwgZW4gZmlsPC9saT4NCiAgPGxpPjxlbT5zdW1tYXJ5PC9lbT4gLSBWaXNhIGVuIHNhbW1hbmZhdHRhZCBsaXN0YSAmb3VtbDt2ZXIgYWxsYSBmaWxlciBpIGVuIGthdGVnb3JpPC9saT4NCiAgPGxpPjxlbT5zaW5nbGU8L2VtPiAtIFZpc2EgZW4gZGV0YWxqZXJhZCByYXBwb3J0IG9tIGVuIGVuc2tpbGQgdXBwbGFkZG5pbmc8L2xpPg0KICA8L3VsPic7CiRsYW5nWydwYXJhbV9zZWxlY3Rmb3JtJ10gPSAnV2hlbiB1c2luZyB0aGUgJiMwMzk7c2VsZWN0JiMwMzk7IG1vZGUsIHRoaXMgcGFyYW1ldGVyIGlzIHRoZSBmb3JtaWQgb2YgdGhlIHBhcmVudCBmb3JtLiAgVXNlZCB0byBoYW5kbGUgcGFyYW1ldGVyIHBhc3NpbmcnOwokbGFuZ1sncGFyYW1fc2VsZWN0bmFtZSddID0gJ3doZW4gdXNpbmcgdGhlICYjMDM5O3NlbGVjdCYjMDM5OyBtb2RlLCB0aGlzIHBhcmFtZXRlciBzcGVjaWZpZXMgdGhlIG5hbWUgb2YgdGhlIGZpZWxkJzsKJGxhbmdbJ3BhcmFtX3NlbGVjdHZhbHVlJ10gPSAnV2hlbiB1c2luZyB0aGUgJiMwMzk7c2VsZWN0JiMwMzk7IG1vZGUsIHRoaXMgcGFyYW1ldGVyIHNwZWNpZmllcyB0aGUgZGVmYXVsdCBmaWVsZCB2YWx1ZSc7CiRsYW5nWydwYXJhbV9zZWxlY3Rub25lJ10gPSAnV2hlbiB1c2luZyB0aGUgJiMwMzk7c2VsZWN0JiMwMzk7IG1vZGUsIHRoaXMgcGFyYW1ldGVyIHNwZWNpZmllcyB3ZXRoZXIgJiMwMzk7bm9uZSYjMDM5OyBpcyBhIHZhbGlkIGNob2ljZS4nOwokbGFuZ1sncmV0dXJudG9tb2R1bGUnXSA9ICdUaWxsYmFrYSB0aWxsIG1vZHVscGFuZWxlbic7CiRsYW5nWydlcnJvcl9ub2NhdGVnb3JpZXMnXSA9ICdEZXQgZmlubnMgaW5nYSBkZWZpbmllcmFkZSBrYXRlZ29yaWVyJzsKJGxhbmdbJ3RpdGxlX2VuZm9yY2VleHRlbnNpb25zJ10gPSAnS3ImYXVtbDt2ZXIgZmlsdGlsbCZhdW1sO2dnIGYmb3VtbDtyIGFsbGEgdXBwbGFkZGFkZSBmaWxlcic7CiRsYW5nWydyZXN0b3JlZGVmYXVsdHNjb25maXJtJ10gPSAnRGV0dGEgJmFyaW5nO3RlcnN0JmF1bWw7bGxlciBtYWxsYXJuYSB0aWxsIHN5c3RlbXN0YW5kYXJkLiBBbGxhIGYmb3VtbDtyJmF1bWw7bmRyaW5nYXIgc29tIGR1IGhhciBnam9ydCBrb21tZXIgYXR0IGYmb3VtbDtybG9yYXMuICZBdW1sO3IgZHUgcyZhdW1sO2tlciBwJmFyaW5nOyBhdHQgZHUgdmlsbCBmb3J0cyZhdW1sO3R0YT8nOwokbGFuZ1snaW5mb190aHVtYm5haWwnXSA9ICdFbiB2YWxmcmkgZmlsIG1lZCB0dW1uYWdlbGJpbGQnOwokbGFuZ1sndGh1bWJuYWlsJ10gPSAnVHVtbmFnZWxiaWxkJzsKJGxhbmdbJ25ld3RodW1ibmFpbCddID0gJ0xhZGRhIHVwcCBueSB0dW1uYWdlbGJpbGQnOwokbGFuZ1snaW5mb19zdW1tYXJ5J10gPSAnRW4ga29ydCBiZXNrcml2bmluZyBhdiBmaWxlbiAob20gdG9tIGFudiZhdW1sO25kcyBmaWxuYW1uZXQgdXRhbiBkZXNzIGZpbHRpbGwmYXVtbDtnZyknOwokbGFuZ1snaW5mb19jYXRlZ29yeW5hbWUnXSA9ICdFbiBrb3J0IGJlc2tyaXZuaW5nIGF2IGRpbiBrYXRlZ29yaSAoZiZvdW1sO3IgYWxsbSZhdW1sO25oZXRlbiknOwokbGFuZ1snaW5mb19jYXRlZ29yeWRlc2MnXSA9ICdFbiBiZXNrcml2bmluZyBhdiBkaW4ga2F0ZWdvcmknOwokbGFuZ1snaW5mb19jYXRlZ29yeXBhdGgnXSA9ICdOYW1uZXQgcCZhcmluZzsga2F0YWxvZ2VuIHVuZGVyIGthdGFsb2dlbiB1cGxvYWRzLCBzb20gc2thIGFudiZhdW1sO25kYXMgZiZvdW1sO3IgYXR0IHNwYXJhIGZpbGVyIGkgZGVuIGgmYXVtbDtyIGthdGVnb3Jpbi4gT20ga2F0YWxvZ2VuIG1lZCBkZXQgaCZhdW1sO3IgbmFtbmV0IGludGUgZmlubnMsIHMmYXJpbmc7IGthbiBkZW4gc2thcGFzLic7CiRsYW5nWydpbmZvX2Rlc3RuYW1lJ10gPSAnQW52JmF1bWw7bmQgZGV0IGgmYXVtbDtyIGYmYXVtbDtsdGV0IGYmb3VtbDtyIGF0dCAmYXVtbDtuZHJhIG5hbW5ldCBwJmFyaW5nOyBmaWxlbiB2aWQgdXBwbGFkZG5pbmcnOwokbGFuZ1snZXJyb3JfY2FudGNyZWF0ZWRpcmVjdG9yeSddID0gJ0t1bmRlIGludGUgc2thcGEga2F0YWxvZyc7CiRsYW5nWydlcnJvcl9ub21haWxlcm1vZHVsZSddID0gJ01vZHVsZW4gQ01TTWFpbGVyIGt1bmRlIGludGUgc2thcGEgZW4gaW5zdGFucyc7CiRsYW5nWyd1cGxvYWRfbm90aWZpY2F0aW9uJ10gPSAnRW4gbnkgZmlsIGhhciBsYWRkYXRzIHVwcCc7CiRsYW5nWyd0aXRsZV9lbWFpbF9vbl91cGxvYWQnXSA9ICdTa2lja2EgZXBvc3QgdmlkIHVwcGxhZGRuaW5nIHRpbGw6JzsKJGxhbmdbJ2VtYWlsX3RlbXBsYXRlJ10gPSAnRXBvc3RtYWxsJzsKJGxhbmdbJ3RpdGxlX2R1bW15X2luZGV4X2h0bWwnXSA9ICdTa2FwYSBpbmRleC5odG1sLWZpbGVyIGkgdmFyamUgbWFwcD88YnIvPjxlbT5BbGxhIGJlZmludGxpZ2EgaW5kZXguaHRtbC1maWxlciBrb21tZXIgYXR0IGZpbm5hcyBrdmFyPC9lbT4nOwokbGFuZ1snYWJvdXQnXSA9ICdPbSc7CiRsYW5nWydlcnJvcl9wZXJtaXNzaW9uZGVuaWVkJ10gPSAnJkFyaW5nO3Rrb21zdCBuZWthZC4gS29udHJvbGxlcmEgZGluYSByJmF1bWw7dHRpZ2hldGVyLic7CiRsYW5nWydlcnJvcl9jb3VsZG5vdHdyaXRlJ10gPSAnS3VuZGUgaW50ZSBza3JpdmEnOwokbGFuZ1snYWRkY2F0ZWdvcnknXSA9ICdMJmF1bWw7Z2cgdGlsbCBrYXRlZ29yaSc7CiRsYW5nWydhbGwnXSA9ICdBbGxhJzsKJGxhbmdbJ2FyZXlvdXN1cmUnXSA9ICcmQXVtbDtyIGR1IHMmYXVtbDtrZXI/JzsKJGxhbmdbJ2F1dGhvciddID0gJ0Ymb3VtbDtyZmF0dGFyZSc7CiRsYW5nWydjYW5jZWwnXSA9ICcmQXJpbmc7bmdyYSc7CiRsYW5nWydjYW5ub3Rtb2RpZnlwYXRoJ10gPSAnKFMmb3VtbDtrdiZhdW1sO2dlbiBrYW4gaW50ZSAmYXVtbDtuZHJhcyknOwokbGFuZ1snY2F0ZWdvcmllcyddID0gJ0thdGVnb3JpZXInOwokbGFuZ1snY2F0ZWdvcnknXSA9ICdLYXRlZ29yaSc7CiRsYW5nWydtZXNzYWdlX2NhdGVnb3J5YWRkZWQnXSA9ICdLYXRlZ29yaW4gaGFyIGxhZ3RzIHRpbGwnOwokbGFuZ1snZGF0ZSddID0gJ0RhdHVtJzsKJGxhbmdbJ2RhdGV1cGxvYWRlZCddID0gJ0RhdHVtIHVwcGxhZGRhZCc7CiRsYW5nWydkZWZhdWx0J10gPSAnU3RhbmRhcmRpbnN0JmF1bWw7bGxuaW5nYXInOwokbGFuZ1snZGVsZXRlJ10gPSAnVGEgYm9ydCc7CiRsYW5nWydkZXNjcmlwdGlvbiddID0gJ0Jlc2tyaXZuaW5nJzsKJGxhbmdbJ2Rlc3RuYW1lJ10gPSAnTGFkZGEgdXBwIHNvbSc7CiRsYW5nWydkZXRhaWxfdGVtcGxhdGUnXSA9ICdEZXRhbGptYWxsJzsKJGxhbmdbJ2Rvd25sb2FkZWQnXSA9ICdGaWxlbiAlcyAmYXVtbDtyIG5lZGxhZGRhZC4nOwokbGFuZ1snZG93bmxvYWRzJ10gPSAnTmVkbGFkZG5pbmdhcic7CiRsYW5nWydlZGl0J10gPSAnUmVkaWdlcmEnOwokbGFuZ1snZWRpdGNhdGVnb3J5J10gPSAnUmVkaWdlcmEga2F0ZWdvcmknOwokbGFuZ1snZWRpdHVwbG9hZCddID0gJ1JlZGlnZXJhIHVwcGxhZGRuaW5nJzsKJGxhbmdbJ2Vycm9yJ10gPSAnRmVsISc7CiRsYW5nWydlcnJvcl9wYXRoaW51c2UnXSA9ICdFbiBrYXRlZ29yaSBtZWQgZGVuIHMmb3VtbDtrdiZhdW1sO2dlbiBmaW5ucyByZWRhbic7CiRsYW5nWydlcnJvcl9jYXRlZ29yeWV4aXN0cyddID0gJ0ZlbDogS2F0ZWdvcmluIGZpbm5zIHJlZGFuJzsKJGxhbmdbJ2Vycm9yX2NhdGVnb3J5bm90ZW1wdHknXSA9ICdGZWwhIEthbiBpbnRlIHRhIGJvcnQgZW4ga2F0ZWdvcmkgc29tIGludGUgJmF1bWw7ciB0b20nOwokbGFuZ1snZXJyb3JfY2F0ZWdvcnlub3Rmb3VuZCddID0gJ0ZlbDogS2F0ZWdvcmluIGhpdHRhcyBpbnRlISc7CiRsYW5nWydlcnJvcl9kYmVycm9yJ10gPSAnRmVsOiBEYXRhYmFzZmVsISc7CiRsYW5nWydlcnJvcl9lbXB0eWNhdGVnb3J5J10gPSAnRmVsOiBUb20ga2F0ZWdvcmkhJzsKJGxhbmdbJ2Vycm9yX2VtcHR5cGF0aCddID0gJ0ZlbDogVG9tIHMmb3VtbDtrdiZhdW1sO2chJzsKJGxhbmdbJ2Vycm9yX2ZpbGVleGlzdHMnXSA9ICdGZWwhIEVuIGZpbCBtZWQgZGV0dGEgbmFtbmV0IGZpbm5zIHJlZGFuLic7CiRsYW5nWydlcnJvcl9maWxlbm90Zm91bmQnXSA9ICdGZWwhIEZpbGVuICVzIGhpdHRhZGVzIGludGUuJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ0ZlbDogT3RpbGxyJmF1bWw7Y2tsaWdhIHBhcmFtZXRyYXIgYW5naXZuYSBmJm91bWw7ciBtb2R1bGVuISc7CiRsYW5nWydlcnJvcl9pbnZhbGlkYXV0aG9yJ10gPSAnRmVsOiBGZWxha3RpZyAoZWxsZXIgdG9tKSBmJm91bWw7cmZhdHRhcmUuJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRjYXRlZ29yeSddID0gJ0ZlbDogRmVsYWt0aWcgKGVsbGVyIHRvbSkga2F0ZWdvcmkuJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRkZXNjcmlwdGlvbiddID0gJ0ZlbDogRmVsYWt0aWcgKGVsbGVyIHRvbSkgYmVza3Jpdm5pbmcuJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRmaWxlJ10gPSAnRmVsOiBGZWxha3RpZ3QgKGVsbGVyIHRvbXQpIGZpbG5hbW4uJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1cGxvYWRmaWxlbmFtZSddID0gJ0ZlbDogRmlsZXIgbWVkIGRldCBuYW1uZXQgKHRyb2xpZ2VuIG1lZCBkZXQgZmlsdGlsbCZhdW1sO2dnZXQpICZhdW1sO3IgaW50ZSB0aWxsJmFyaW5nO3RuYS4nOwokbGFuZ1snZXJyb3JfaW52YWxpZHVwbG9hZGlkJ10gPSAnRmVsOiBPZ2lsdGlndCB1cHBsYWRkbmluZ3MtaWQnOwokbGFuZ1snZXJyb3Jfbm9maWxlcyddID0gJ0ZlbDogSW5nYSBtYXRjaGFuZGUgZmlsZXIhJzsKJGxhbmdbJ2ZpbGVzJ10gPSAnRmlsZXInOwokbGFuZ1snZml4bWUnXSA9ICdGaXhhIG1lbGxhbnNsYWcnOwokbGFuZ1snZnJpZW5kbHluYW1lJ10gPSAnVXBwbGFkZG5pbmcnOwokbGFuZ1snaGVscCddID0gJzxoMz5WYWQgZyZvdW1sO3IgZGVuIGgmYXVtbDtyIG1vZHVsZW4/PC9oMz4NCjxwPkRldCAmYXVtbDtyIGVuIG1vZHVsIHNvbSBnJm91bWw7ciBkZXQgbSZvdW1sO2psaWd0IGF0dCBsYWRkYSB1cHAgb2NoIGxhZGRhIG5lciBmaWxlciB0aWxsIG9jaCBmciZhcmluZztuIGRpbiB3ZWJic2lkYS4gRGVuIGgmYXJpbmc7bGxlciByZWRhIHAmYXJpbmc7IHZlbSBzb20gbGFkZGFkZSB1cHAgZW4gZmlsIG9jaCB2ZW0gc29tIGhhciBsYWRkYXQgbmVyIGRlbi4NCkRlc3N1dG9tIGthbiBkdSBkZWxhIGluIGZpbGVyIGkga2F0ZWdvcmllciBvY2ggaGFudGVyYSBmaWxlcm5hIHNvbSAmYXVtbDtyIHVwcGxhZGRhZGUgcCZhcmluZzsgc2FtbWEgcyZhdW1sO3R0IHNvbSBhbGxhIGFkbWluaXN0cmF0Jm91bWw7cmVyIHNrYSBrdW5uYSBnJm91bWw7cmEuPC9wPiANCg0KPGgzPkh1ciBhbnYmYXVtbDtuZGVyIGphZyBtb2R1bGVuPzwvaDM+DQo8cD5GJm91bWw7ciBhdHQgYW52JmF1bWw7bmRhIGRlbiBoJmF1bWw7ciBtb2R1bGVuIC0gYWxsdHMmYXJpbmc7IGF0dCB0aWxsJmFyaW5nO3RhIGFudiZhdW1sO25kYXJlIGF0dCBsYWRkYSB1cHAgZmlsZXIgdGlsbCBkaW4gd2ViYnNpZGEgLSBtJmFyaW5nO3N0ZSBkdSBpbnN0YWxsZXJhIG1vZHVsZW4gb2NoIGQmYXVtbDtyZWZ0ZXIgc2thcGEgZW4gZWxsZXIgZmxlcmEga2F0ZWdvcmllci9tYXBwYXINCnNvbSBkZSB1cHBsYWRkYWRlIGZpbGVybmEga2FuIGwmYXVtbDtnZ2FzIGkgKGkgbW9kdWxpbnN0JmF1bWw7bGxuaW5nYXJuYSkuIEwmYXVtbDtnZyBzZWRhbiB0aWxsIGVuIHRhZ2cgcCZhcmluZzsgZW4gc2lkYSBlbGxlciBtYWxsIHVuZ2VmJmF1bWw7ciBzJmFyaW5nOyBoJmF1bWw7ciB7Y21zX21vZHVsZSBtb2R1bGU9JnF1b3Q7VXBsb2FkcyZxdW90OyBjYXRlZ29yeT0mcXVvdDtlbmthdGVnb3JpJnF1b3Q7IG1vZGU9JnF1b3Q7c3RpbCZxdW90O30uIA0KU3RpbGVuIHNrYSBkJmFyaW5nOyBtYXRjaGEgbiZhcmluZztnb24gYXYgc3RpbGFybmEgbmVkYW4uIFZhZCBzb20gc2tyaXZzIHV0IHNraWxqZXIgc2lnIGJlcm9lbmRlIHAmYXJpbmc7IHZpbGtlbiBzdGlsIGR1IHYmYXVtbDtsamVyLjwvcD4NCg0KPHA+RGVuIGgmYXVtbDtyIG1vZHVsZW4ga2FuIGFudiZhdW1sO25kYSBVc2VySUQtbW9kdWxlbiAodmFsZnJpdHQpIGYmb3VtbDtyIGF0dCBmJmFyaW5nOyBpbmZvcm1hdGlvbiBvbSBhbGxhIGlubG9nZ2FkZSBhbnYmYXVtbDtuZGFyZSBmJm91bWw7ciBhdHQgZGVsdmlzIGZ5bGxhIGkgZm9ybXVsJmF1bWw7cmV0IG4mYXVtbDtyIGZpbGVyIGxhZGRhcyB1cHA7PC9wPg0KDQo8aDM+UiZhdW1sO3R0aWdoZXRlcjwvaDM+DQo8dWw+DQo8bGk+PGVtPk1hbmFnZSBVcGxvYWRzPC9lbT4gLSBiZWgmb3VtbDt2cyBmJm91bWw7ciBhdHQgaGFudGVyYSBrYXRlZ29yaWVyIG9jaCBkZXNzIGZpbGVyLjwvbGk+DQo8bGk+PGVtPk1vZGlmeSBUZW1wbGF0ZXM8L2VtPiAtIGJlaCZvdW1sO3ZzIGYmb3VtbDtyIGF0dCAmYXVtbDtuZHJhIG4mYXJpbmc7Z29uIGF2IG1hbGxhcm5hLjwvbGk+DQo8bGk+PGVtPk1vZGlmeSBTaXRlIFByZWZlcmVuY2VzPC9lbT4gLSBiZWgmb3VtbDt2cyBmJm91bWw7ciBhdHQgZiZvdW1sO3IgYXR0ICZhdW1sO2RucmEgZmlsaW5zdCZhdW1sO2xsbmluZ2FyLjwvbGk+DQo8L3VsPg0KDQo8aDM+RXBvc3Q8L2gzPg0KPHA+RGVuIGgmYXVtbDtyIG1vZHVsZW4ga2FuIHNraWNrYSBlLXBvc3QgbiZhdW1sO3IgZW4gZmlsIGhhciBsYWRkYXRzIHVwcCAoc2UgdGFiYmVuIEluc3QmYXVtbDtsbG5pbmdhcikuIE1lbiBmJm91bWw7ciBhdHQgZyZvdW1sO3JhIGRldHRhIGtyJmF1bWw7dnMgYXR0IG1vZHVsZW4gPHN0cm9uZz5DTVNNYWlsZXI8L3N0cm9uZz4gaGFyIGluc3RhbGxlcmF0cyBvY2gga29uZmlndXJlcmF0cy4gRGV0dGEgJmF1bWw7ciA8ZW0+dmFsZnJpdHQ8L2VtPiBvY2ggb20gQ01TTWFpbGVyLW1vZHVsZW4gaW50ZSAmYXVtbDtyIGluc3RhbGxlcmFkIHZpc2FzIGluZ2VudGluZyBmJm91bWw7ciBhbnYmYXVtbDtuZGFyZW4sIGJhcmEgZXR0IGxvZ2dtZWRkZWxhbmRlIGtvbW1lciBhdHQgbCZhdW1sO2dnYXMgdGlsbCBhZG1pbi1sb2dnZW4uPC9wPg0KDQo8aDM+U3lzdGVtaW5zdCZhdW1sO2xsbmluZ2FyPC9oMz4NCjxwPjxzdHJvbmc+Tm90ZXJhOjwvc3Ryb25nPiBEZW4gaCZhdW1sO3IgbW9kdWxlbiBrb21tZXIgaW50ZSBydW50IGVsbGVyIGYmb3VtbDtyYmkgbiZhcmluZztncmEgZmlsc3Rvcmxla3NiZWdyJmF1bWw7bnNuaW5nYXIgaSBwaHAuIERlbiBmdW5nZXJhciB0aWxsc2FtbWFucyBtZWQgZGVtLiANCkQmYXVtbDtyZiZvdW1sO3IgbSZhcmluZztzdGUgZHUgZXZlbnR1ZWxsdCAmYXVtbDtuZHJhIGkgZGluIHBocC5pbmktZmlsIGYmb3VtbDtyIGF0dCB0aWxsJmFyaW5nO3RhIHVwcGxhZGRuaW5nIGF2IGZpbGVyIHMmYXJpbmc7IHN0b3JhIHNvbSBkdSBoYXIgc3QmYXVtbDtsbHQgaW4gaSBpbnN0JmF1bWw7bGxuaW5nYXJuYSBmJm91bWw7ciB1cHBsYWRkbmluZ3Ntb2R1bGVuLjwvcD4NCg0KPGgzPk5vdCBmJm91bWw7ciBBcGFjaGU8L2gzPg0KPHA+RiZvdW1sO3IgYXR0IHRpbGwmYXJpbmc7dGEgc3Qmb3VtbDtycmUgZmlsdXBwbGFkZG5pbmdhciBrYW4gZHUgYmVoJm91bWw7dmEgJmF1bWw7bmRyYSBwYXJhbWV0ZXJuIHVwbG9hZF9tYXhfZmlsZXNpemUgaSBkaW4gcGhwLmluaS1maWwuIERlc3N1dG9tLCBwYXJhbWV0ZXJuIExpbWl0UmVxdWVzdEJvZHkgaW4gZGluIEFwYWNoZS1rb25maWd1cmF0aW9uIGthbiBiZWgmb3VtbDt2YSAmYXVtbDtuZHJhcyBmJm91bWw7ciBhdHQgbWF0Y2hhIHBhcmFtZXRlcm4gdXBsb2FkX21heF9maWxlc2l6ZTwvcD4NCjxwPk5vdGVyYTogcGFyYW1ldGVybiB1cGxvYWRfbWF4X2ZpbGVzaXplIGthbiBzcGVjaWZpY2VyYXMgaSBieXRlcywga2lsb2J5dGVzIGVsbGVyIG1lZ2FieXRlcy4gUGFyYW1ldGVybmEgTGltaXRSZXF1ZXN0Qm9keSBkJmF1bWw7cmVtb3QsIGthbiBiYXJhIHNwZWNpZmljZXJhcyBpIGJ5dGVzPC9wPic7CiRsYW5nWydpZCddID0gJ0lkICc7CiRsYW5nWydpbnN0YWxsZWQnXSA9ICdNb2R1bHZlcnNpb24gJXMgaW5zdGFsbGVyYWQuJzsKJGxhbmdbJ2lwX2FkZHJlc3MnXSA9ICdJUC1hZGRyZXNzJzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnRW4gbW9kdWwgc29tIGwmYXJpbmc7dGVyIGFudiZhdW1sO25kYXJlIGxhZGRhIHVwcCBmaWxlciBvY2ggbCZhcmluZzt0ZXIgZGlnIGhhbnRlcmEgZGVtLic7CiRsYW5nWyduYW1lJ10gPSAnTmFtbic7CiRsYW5nWydyZW5hbWVtZXNzYWdlJ10gPSAnJkF1bWw7bmRyYSBuYW1uZXQgaCZhdW1sO3IgZiZvdW1sO3IgYXR0IGcmb3VtbDtyYSBlbiBuYW1uJmF1bWw7bmRyaW5nJzsKJGxhbmdbJ3BhdGgnXSA9ICdTJm91bWw7a3YmYXVtbDtnJzsKJGxhbmdbJ3BhdGhtZXNzYWdlJ10gPSAnJkF1bWw7bmRyYSBrYXRlZ29yaW4gaCZhdW1sO3IgZiZvdW1sO3IgYXR0IGZseXR0YSBmaWxlbiB0aWxsIGVuIGFubmFuIG1hcHAnOwokbGFuZ1sncGF0aGludXBsb2FkcyddID0gJyhyZWxhdGl2IHRpbGwgdXBwbGFkZG5pbmdzbWFwcGVuKSc7CiRsYW5nWydwb3N0aW5zdGFsbCddID0gJ01lZGRlbGFuZGUgZWZ0ZXIgaW5zdGFsbGF0aW9uLCB0LmV4LiBHbCZvdW1sO20gaW50ZSBhdHQgc3QmYXVtbDtsbGEgaW4gciZhdW1sO3R0aWdoZXRlciBmJm91bWw7ciAmcXVvdDtNYW5hZ2UgVXBsb2FkcyZxdW90OyBmJm91bWw7ciBhdHQgYW52JmF1bWw7bmRhIGRlbiBoJmF1bWw7ciBtb2R1bGVuISc7CiRsYW5nWydwb3N0dW5pbnN0YWxsJ10gPSAnTWVkZGVsYW5kZSBlZnRlciBhdmluc3RhbGxhdGlvbiwgdC5leC4gJnF1b3Q7U2tpdCBvY2tzJmFyaW5nOyEgQmVzZWdyYWQgaWdlbiEmcXVvdDsnOwokbGFuZ1sncHJlZmVyZW5jZXMnXSA9ICdJbnN0JmF1bWw7bGxuaW5nYXInOwokbGFuZ1sncHJlZnN1cGRhdGVkJ10gPSAnTW9kdWxpbnN0JmF1bWw7bGxuaW5nYXIgdXBwZGF0ZXJhZGUuJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeWRlc2MnXSA9ICdCZXNrcml2bmluZyc7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnlsaXN0YWJsZSddID0gJ0ZpbGVybmEgaSBkZW4gaCZhdW1sO3IgbWFwcGVuIGthbiBsaXN0YXMnOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5bmFtZSddID0gJ0thdGVnb3JpbmFtbic7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnlwYXRoJ10gPSAnU2VydmVyLXMmb3VtbDtrdiZhdW1sO2cnOwokbGFuZ1sncHJvbXB0X2RlbGV0ZWRpcmVjdG9yeSddID0gJ1RhIGJvcnQga2F0ZWdvcmltYXBwPyc7CiRsYW5nWydwcm9tcHRfbWF4X3VwbG9hZHNpemUnXSA9ICdNYXhpbWFsIGZpbHN0b3JsZWsgdGlsbCZhcmluZzt0ZW4gKEtiKSc7CiRsYW5nWydwcm9tcHRfdmFsaWRfdXBsb2FkZXh0ZW5zaW9ucyddID0gJ1RpbGwmYXJpbmc7dG5hIGZpbHRpbGwmYXVtbDtnZyBmJm91bWw7ciB1cHBsYWRkYWRlIGZpbGVyJzsKJGxhbmdbJ3NjYW4nXSA9ICdTY2FubmEnOwokbGFuZ1snc2VsZWN0Y2F0ZWdvcnknXSA9ICdWJmF1bWw7bGoga2F0ZWdvcmknOwokbGFuZ1snc2l6ZSddID0gJ1N0b3JsZWsnOwokbGFuZ1snc2l6ZWtiJ10gPSAnU3RvcmxlayAoS2IpJzsKJGxhbmdbJ3N1Ym1pdCddID0gJ0wmYXVtbDtnZyB0aWxsJzsKJGxhbmdbJ3N1bW1hcnlfdGVtcGxhdGUnXSA9ICdTYW1tYW5mYXR0bmluZ3NtYWxsJzsKJGxhbmdbJ3N1bW1hcnknXSA9ICdTYW1tYW5mYXR0bmluZyc7CiRsYW5nWyd0aXRsZV9hZG1pbl9wYW5lbCddID0gJ1VwcGxhZGRuaW5nc21vZHVsJzsKJGxhbmdbJ3RpdGxlX21vZF9hZG1pbiddID0gJ0FkbWluLXBhbmVsIGYmb3VtbDtyIG1vZHVsJzsKJGxhbmdbJ3RpdGxlX21vZF9wcmVmcyddID0gJ0luc3QmYXVtbDtsbG5pbmdhciBmJm91bWw7ciBtb2R1bCc7CiRsYW5nWyd0aXRsZV9zdWJuZXRfZXhjbHVzaW9ucyddID0gJ0V4a2x1ZGVyYSBzdWJuJmF1bWw7dCBmciZhcmluZztuIHN0YXRpc3Rpayc7CiRsYW5nWyd0aXRsZV92YWxpZF91cGxvYWRleHRlbnNpb25zJ10gPSAnVGlsbCZhcmluZzt0bmEgZmlsdGlsbCZhdW1sO2dnJzsKJGxhbmdbJ3VuaW5zdGFsbGVkJ10gPSAnTW9kdWwgYXZpbnN0YWxsZXJhZC4nOwokbGFuZ1sndXBncmFkZWQnXSA9ICdNb2R1bCB1cHBncmFkZXJhZCB0aWxsIHZlcnNpb24gJXMuJzsKJGxhbmdbJ3VwbG9hZCddID0gJ0xhZGRhIHVwcCc7CiRsYW5nWyd1cGxvYWRlZCddID0gJ0ZpbGVuICVzICZhdW1sO3IgdXBwbGFkZGFkLic7CiRsYW5nWydyZXBsYWNlZCddID0gJ0ZpbGVuICVzIGVyc2F0dGVzIGF2ICVzLic7CiRsYW5nWydkZWxldGVkJ10gPSAnRmlsZW4gJXMgJmF1bWw7ciBib3J0dGFnZW4uJzsKJGxhbmdbJ3VwbG9hZGZvcm1fdGVtcGxhdGUnXSA9ICdVcHBsYWRkbmluZ3NtYWxsJzsKJGxhbmdbJ3VzZXJuYW1lJ10gPSAnQW52JmF1bWw7bmRhcm5hbW4nOwokbGFuZ1snd2FybmluZ19kZWxldGVjYXRlZ29yeSddID0gJ1ZBUk5JTkc6IFZhciBmJm91bWw7cnNpa3RpZyBuJmF1bWw7ciBkdSB0YXIgYm9ydCBrYXRlZ29yaWVyLiBGaWxlciBrYW4gZyZhcmluZztyIGYmb3VtbDtybG9yYWRlJzsKJGxhbmdbJ3dlbGNvbWVfdGV4dCddID0gJzxwPlYmYXVtbDtsa29tbWVuIHRpbGwgYWRtaW4tc2VrdGlvbmVuIGYmb3VtbDtyIFVwcGxhZGRuaW5nc21vZHVsZW4uIEgmYXVtbDtyIHNrdWxsZSBkZXQgcyZhdW1sO2tlcnQgc3QmYXJpbmc7IG4mYXJpbmc7Z290IGFubmF0IG9tIG1vZHVsZW4gZmFrdGlza3QgZ2pvcmRlIG4mYXJpbmc7Z290LjwvcD4nOwokbGFuZ1sndXRtYSddID0gJzE1Njg2MTM1My4xNjI4NzY0MDM1LjEyMzQwMDgxMzAuMTIzNDAwODEzMC4xMjM0MDA4MTMwLjEnOwokbGFuZ1sndXRtYiddID0gJzE1Njg2MTM1My4yLjEwLjEyMzQwMDgxMzAnOwokbGFuZ1sndXRtYyddID0gJzE1Njg2MTM1Myc7CiRsYW5nWyd1dG16J10gPSAnMTU2ODYxMzUzLjEyMzQwMDgxMzAuMS4xLnV0bWNzcj0oZGlyZWN0KXx1dG1jY249KGRpcmVjdCl8dXRtY21kPShub25lKSc7Cj8+]]></data>
	</file>
	<file>
	  <filename>/method.install.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDoJLy93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgokZGIgPSYgJHRoaXMtPkdldERiKCk7CgokZGljdCA9IE5ld0RhdGFEaWN0aW9uYXJ5ICgkZGIpOwoKLy8gdGFibGUgc2NoZW1hIGRlc2NyaXB0aW9uCiRmbGRzID0gInVwbG9hZF9pZCBJIEtFWSwKICAgICAgICAgICAgIHVwbG9hZF9jYXRlZ29yeV9pZCBJLAogICAgICAgICAgICAgdXBsb2FkX25hbWUgQygyNTUpLAogICAgICAgICAgICAgdXBsb2FkX2F1dGhvciBDKDI1NSksCiAgICAgICAgICAgICB1cGxvYWRfc3VtbWFyeSBDKDI1NSksIAogICAgICAgICAgICAgdXBsb2FkX2Rlc2NyaXB0aW9uIFgsCiAgICAgICAgICAgICB1cGxvYWRfaXAgQygyNTUpLAogICAgICAgICAgICAgdXBsb2FkX3NpemUgSSwKICAgICAgICAgICAgIHVwbG9hZF9kYXRlICIuQ01TX0FET0RCX0RULiIsCiAgICAgICAgICAgICB1cGxvYWRfa2V5ICBDKDI1NSksCiAgICAgICAgICAgICB1cGxvYWRfdGh1bWJuYWlsIEMoMjU1KQoJICAgICI7CgovLyBjcmVhdGUgaXQuIFRoaXMgc2hvdWxkIGRvIGVycm9yIGNoZWNraW5nLCBidXQgSSdtIGEgbGF6eSBzb2QuCiR0YWJvcHRhcnJheSA9IGFycmF5ICgnbXlzcWwnID0+ICdUWVBFPU15SVNBTScpOwokc3FsYXJyYXkgPSAkZGljdC0+Q3JlYXRlVGFibGVTUUwgKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHMiLAoJCQkJICAgJGZsZHMsICR0YWJvcHRhcnJheSk7CiRkaWN0LT5FeGVjdXRlU1FMQXJyYXkgKCRzcWxhcnJheSk7CiAgICAKLy8gYSB0YWJsZSBmb3IgZG93bmxvYWRzCiRmbGRzID0gImRvd25sb2FkX2lkIEkgS0VZLAogCSAgICAgZmlsZV9pZCAgICAgSSwgCgkgICAgIGRvd25sb2FkX2RhdGUgIi5DTVNfQURPREJfRFQuIiwKICAgICAgICAgICAgIGRvd25sb2FkX2lwICAgQygyNTUpLAogICAgICAgICAgICAgZG93bmxvYWRfdXNlciBDKDI1NSkKCSAgICAiOwoKLy8gY3JlYXRlIGl0LiBUaGlzIHNob3VsZCBkbyBlcnJvciBjaGVja2luZywgYnV0IEknbSBhIGxhenkgc29kLgokdGFib3B0YXJyYXkgPSBhcnJheSAoJ215c3FsJyA9PiAnVFlQRT1NeUlTQU0nKTsKJHNxbGFycmF5ID0KICAkZGljdC0+Q3JlYXRlVGFibGVTUUwgKGNtc19kYl9wcmVmaXggKCkuIm1vZHVsZV91cGxvYWRzX2Rvd25sb2FkcyIsCgkJCSAkZmxkcywgJHRhYm9wdGFycmF5KTsKJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSAoJHNxbGFycmF5KTsKCi8vIGEgdGFibGUgZm9yIGNhdGVnb3JpZXMKJGZsZHMgPSAidXBsb2FkX2NhdGVnb3J5X2lkIEkgS0VZLAoJICAgICB1cGxvYWRfY2F0ZWdvcnlfbmFtZSBDKDI1NSksCgkgICAgIHVwbG9hZF9jYXRlZ29yeV9kZXNjcmlwdGlvbiBYLAogICAgICAgICAgICAgdXBsb2FkX2NhdGVnb3J5X3BhdGggQygyNTUpLAoJICAgICB1cGxvYWRfY2F0ZWdvcnlfbGlzdGFibGUgSSwKICAgICAgICAgICAgIHVwbG9hZF9jYXRlZ29yeV9ncm91cHMgQygyNTUpCgkgICAgIjsKCi8vIGNyZWF0ZSBpdC4gVGhpcyBzaG91bGQgZG8gZXJyb3IgY2hlY2tpbmcsIGJ1dCBJJ20gYSBsYXp5IHNvZC4KJHRhYm9wdGFycmF5ID0gYXJyYXkgKCdteXNxbCcgPT4gJ1RZUEU9TXlJU0FNJyk7CiRzcWxhcnJheSA9CiAgJGRpY3QtPkNyZWF0ZVRhYmxlU1FMIChjbXNfZGJfcHJlZml4ICgpLiJtb2R1bGVfdXBsb2Fkc19jYXRlZ29yaWVzIiwKCQkJICRmbGRzLCAkdGFib3B0YXJyYXkpOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5ICgkc3FsYXJyYXkpOwoKLy8gYSB0YWJsZSBmb3IgZmlsZSB0eXBlcwokZmxkcyA9ICJpZCBJLAogICAgICAgICAgICAgc29ydG9yZGVyIEksCiAgICAgICAgICAgICBuYW1lICBDKDI1NSksCiAgICAgICAgICAgICBkZXNjcmlwdGlvbiBYLAogICAgICAgICAgICAgZXh0ZW5zaW9ucyBDKDI1NSksCiAgICAgICAgICAgICBpbWFnZSBDKDI1NSkKICAgICAgICAgICAgIjsKJHRhYm9wdGFycmF5ID0gYXJyYXkgKCdteXNxbCcgPT4gJ1RZUEU9TXlJU0FNJyk7CiRzcWxhcnJheSA9CiAgJGRpY3QtPkNyZWF0ZVRhYmxlU1FMIChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX2ZpbGV0eXBlcyIsCgkJCSAkZmxkcywgJHRhYm9wdGFycmF5KTsKJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSAoJHNxbGFycmF5KTsKCi8vIGNyZWF0ZSBhIHNlcXVlbmNlCiRkYi0+Q3JlYXRlU2VxdWVuY2UgKGNtc19kYl9wcmVmaXggKCkuIm1vZHVsZV91cGxvYWRzX3NlcSIpOwogICAgCi8vIGFuZCBhbm90aGVyIG9uZQokZGItPkNyZWF0ZVNlcXVlbmNlIChjbXNfZGJfcHJlZml4ICgpLiJtb2R1bGVfdXBsb2Fkc19jYXRlZ29yaWVzX3NlcSIpOwoKLy8gYW5kIGEgdGhpcmQgb25lCiRkYi0+Q3JlYXRlU2VxdWVuY2UgKGNtc19kYl9wcmVmaXggKCkuIm1vZHVsZV91cGxvYWRzX2Rvd25sb2Fkc19zZXEiKTsKCi8vIGFuZCBhIGZvdXJ0aAokZGItPkNyZWF0ZVNlcXVlbmNlIChjbXNfZGJfcHJlZml4ICgpLiJtb2R1bGVfdXBsb2Fkc19maWxldHlwZXNfc2VxIik7CgovLyBjcmVhdGUgYSBwZXJtaXNzaW9uCiR0aGlzLT5DcmVhdGVQZXJtaXNzaW9uICgnTWFuYWdlIFVwbG9hZHMnLCAnTWFuYWdlIFVwbG9hZHMnKTsKCi8vIGNyZWF0ZSBhIHByZWZlcmVuY2UKJHRoaXMtPlNldFByZWZlcmVuY2UgKCJtYXhfdXBsb2Fkc2l6ZSIsIDEwMDAwMDApOwokdGhpcy0+U2V0UHJlZmVyZW5jZSAoInZhbGlkX3VwbG9hZGV4dGVuc2lvbnMiLAoJCSAgICAgICJwbmcsZ2lmLGpwZyxKUEVHLGJtcCx3bWYsd21hLHdtdixtcGcsemlwLHRhcixneixiejIsbXAzLHdhdixhdSxvZ2cseG1sLHBkZiIpOwokdGhpcy0+U2V0UHJlZmVyZW5jZSAoInN1Ym5ldF9leGNsdXNpb25zIiwgIiIgKTsKJHRoaXMtPlNldFByZWZlcmVuY2UgKCdjcmVhdGVfZHVtbXlfaW5kZXhfaHRtbCcsIDEpOwokdGhpcy0+U2V0UHJlZmVyZW5jZSAoJ3NlbmRfdXBsb2FkX25vdGlmaWNhdGlvbnNfdG8nLCcnKTsKJHRoaXMtPlNldFByZWZlcmVuY2UgKCdyZXF1aXJlZmlsZW5hbWVfZXh0ZW5zaW9ucycsMSk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlICgndXNlcnRhZ19vbnVwbG9hZCcsJycpOwokdGhpcy0+U2V0UHJlZmVyZW5jZSAoJ2F1dG90aHVtYm5haWxfZXh0ZW5zaW9ucycsJ2dpZixqcGcsanBlZyxibXAscG5nJyk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlICgnYXV0b3RodW1ibmFpbF9zaXplJyw4MCk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlICgnZG93bmxvYWRfY2h1bmtzaXplJyw4KTsKCiRmbiA9IGRpcm5hbWUoX19GSUxFX18pLkRJUkVDVE9SWV9TRVBBUkFUT1IuCiAgJ3RlbXBsYXRlcycuRElSRUNUT1JZX1NFUEFSQVRPUi4nb3JpZ191cGxvYWRmb3JtX3RlbXBsYXRlLnRwbCc7CmlmKCBmaWxlX2V4aXN0cyggJGZuICkgKQogIHsKICAgICR0ZW1wbGF0ZSA9IEBmaWxlX2dldF9jb250ZW50cygkZm4pOwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ3VwbG9hZGZvcm1fc3lzZGVmYXVsdCcsJHRlbXBsYXRlKTsKICAgICR0aGlzLT5TZXRUZW1wbGF0ZSgndXBsb2FkZm9ybV9kZWZhdWx0JywkdGVtcGxhdGUpOwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ2RlZmF1bHRfdXBsb2FkZm9ybScsJ2RlZmF1bHQnKTsKICB9CgokZm4gPSBkaXJuYW1lKF9fRklMRV9fKS5ESVJFQ1RPUllfU0VQQVJBVE9SLgogICd0ZW1wbGF0ZXMnLkRJUkVDVE9SWV9TRVBBUkFUT1IuJ29yaWdfc3VtbWFyeXJwdF90ZW1wbGF0ZS50cGwnOwppZiggZmlsZV9leGlzdHMoICRmbiApICkKICB7CiAgICAkdGVtcGxhdGUgPSBAZmlsZV9nZXRfY29udGVudHMoJGZuKTsKICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdzdW1tYXJ5cnB0X3N5c2RlZmF1bHQnLCR0ZW1wbGF0ZSk7CiAgICAkdGhpcy0+U2V0VGVtcGxhdGUoJ3N1bW1hcnlycHRfZGVmYXVsdCcsJHRlbXBsYXRlKTsKICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdkZWZhdWx0X3N1bW1hcnlycHQnLCdkZWZhdWx0Jyk7CiAgfQoKJGZuID0gZGlybmFtZShfX0ZJTEVfXykuRElSRUNUT1JZX1NFUEFSQVRPUi4KICAndGVtcGxhdGVzJy5ESVJFQ1RPUllfU0VQQVJBVE9SLidvcmlnX2RldGFpbHJwdF90ZW1wbGF0ZS50cGwnOwppZiggZmlsZV9leGlzdHMoICRmbiApICkKICB7CiAgICAkdGVtcGxhdGUgPSBAZmlsZV9nZXRfY29udGVudHMoJGZuKTsKICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdkZXRhaWxycHRfc3lzZGVmYXVsdCcsJHRlbXBsYXRlKTsKICAgICR0aGlzLT5TZXRUZW1wbGF0ZSgnZGV0YWlscnB0X2RlZmF1bHQnLCR0ZW1wbGF0ZSk7CiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgnZGVmYXVsdF9kZXRhaWxycHQnLCdkZWZhdWx0Jyk7CiAgfQoKLy8gdGVtcGxhdGUgdXNlZCBmb3IgZW1haWwgbm90aWZpY2F0aW9ucwokdGhpcy0+U2V0VGVtcGxhdGUoICd1cGxvYWRfZW1haWx0ZW1wbGF0ZScsICR0aGlzLT5kZmx0X2VtYWlsbm90aWZ5dGVtcGxhdGUgKTsKCi8vIEV2ZW50IGhhbmRsZXJzCiR0aGlzLT5DcmVhdGVFdmVudCggIk9uVXBsb2FkIiApOwokdGhpcy0+Q3JlYXRlRXZlbnQoICJPblJlbW92ZSIgKTsKJHRoaXMtPkNyZWF0ZUV2ZW50KCAiT25Eb3dubG9hZCIgKTsKJHRoaXMtPkNyZWF0ZUV2ZW50KCAiT25DcmVhdGVDYXRlZ29yeSIgKTsKJHRoaXMtPkNyZWF0ZUV2ZW50KCAiT25EZWxldGVDYXRlZ29yeSIgKTsKCi8vIERlZmF1bHQgZmlsZSB0eXBlcwokdGhpcy0+X0luc2VydERlZmF1bHRGaWxlVHlwZXMoKTsKCi8vIHB1dCBtZW50aW9uIGludG8gdGhlIGFkbWluIGxvZwokdGhpcy0+QXVkaXQgKDAsICR0aGlzLT5MYW5nICgnZnJpZW5kbHluYW1lJyksCgkgICAgICAkdGhpcy0+TGFuZyAoJ2luc3RhbGxlZCcsICR0aGlzLT5HZXRWZXJzaW9uICgpKSk7Cgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/method.uninstall.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDoJLy93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgogICAgJGRiID0mICR0aGlzLT5HZXREYigpOwoKICAgIC8vIHJlbW92ZSB0aGUgZGF0YWJhc2UgdGFibGUKICAgICRkaWN0ID0gTmV3RGF0YURpY3Rpb25hcnkgKCRkYik7CiAgICAkc3FsYXJyYXkgPSAkZGljdC0+RHJvcFRhYmxlU1FMIChjbXNfZGJfcHJlZml4ICgpLiJtb2R1bGVfdXBsb2FkcyIpOwogICAgJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSAoJHNxbGFycmF5KTsKCiAgICAvLyByZW1vdmUgdGhlIHNlcXVlbmNlCiAgICAkZGItPkRyb3BTZXF1ZW5jZSAoY21zX2RiX3ByZWZpeCAoKS4ibW9kdWxlX3VwbG9hZHNfc2VxIik7CgogICAgLy8gcmVtb3ZlIHRoZSBjYXRlZ29yeSB0YWJsZQogICAgJHNxbGFycmF5ID0KICAgICAgJGRpY3QtPkRyb3BUYWJsZVNRTCAoY21zX2RiX3ByZWZpeCAoKS4ibW9kdWxlX3VwbG9hZHNfY2F0ZWdvcmllcyIpOwoKICAgIC8vIHJlbW92ZSBpdCdzIHNlcXVlbmNlCiAgICAkZGItPkRyb3BTZXF1ZW5jZSAoY21zX2RiX3ByZWZpeCAoKS4ibW9kdWxlX3VwbG9hZHNfY2F0ZWdvcmllc19zZXEiKTsKICAgICRkaWN0LT5FeGVjdXRlU1FMQXJyYXkgKCRzcWxhcnJheSk7CgogICAgLy8gcmVtb3ZlIHRoZSBkb3dubG9hZHMgdGFibGUKICAgICRzcWxhcnJheSA9CiAgICAgICRkaWN0LT5Ecm9wVGFibGVTUUwgKGNtc19kYl9wcmVmaXggKCkuIm1vZHVsZV91cGxvYWRzX2Rvd25sb2FkcyIpOwoKICAgIC8vIGFuZCBpdCdzIHNlcXVlbmNlCiAgICAkZGItPkRyb3BTZXF1ZW5jZSAoY21zX2RiX3ByZWZpeCAoKS4ibW9kdWxlX3VwbG9hZHNfZG93bmxvYWRzX3NlcSIpOwogICAgJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSAoJHNxbGFycmF5KTsKCiAgICAvLyByZW1vdmUgdGhlIGZpbGV0eXBlcyB0YWJsZQogICAgJHNxbGFycmF5ID0KICAgICAgJGRpY3QtPkRyb3BUYWJsZVNRTCAoY21zX2RiX3ByZWZpeCAoKS4ibW9kdWxlX3VwbG9hZHNfZmlsZXR5cGVzIik7CgogICAgLy8gYW5kIGl0J3Mgc2VxdWVuY2UKICAgICRkYi0+RHJvcFNlcXVlbmNlIChjbXNfZGJfcHJlZml4ICgpLiJtb2R1bGVfdXBsb2Fkc19maWxldHlwZXNfc2VxIik7CiAgICAkZGljdC0+RXhlY3V0ZVNRTEFycmF5ICgkc3FsYXJyYXkpOwoKICAgIC8vIHJlbW92ZSB0aGUgcGVybWlzc2lvbnMKICAgICR0aGlzLT5SZW1vdmVQZXJtaXNzaW9uICgnTWFuYWdlIFVwbG9hZHMnKTsKCiAgICAvLyByZW1vdmUgYWxsIG9mIHRoZSB0aGUgcHJlZmVyZW5jZXMgZm9yIHRoaXMgbW9kdWxlCiAgICAkdGhpcy0+UmVtb3ZlUHJlZmVyZW5jZSAoKTsKCiAgICAvLyByZW1vdmUgdGVtcGxhdGVzCiAgICAkdGVtcGxhdGVzID0gJHRoaXMtPkxpc3RUZW1wbGF0ZXMoKTsKICAgIGZvcmVhY2goICR0ZW1wbGF0ZXMgYXMgJHRwbCApCiAgICAgIHsKCSR0aGlzLT5EZWxldGVUZW1wbGF0ZSgkdHBsKTsKICAgICAgfQoKICAgIC8vIHJlbW92ZSBldmVudHMKICAgICR0aGlzLT5SZW1vdmVFdmVudCgiT25VcGxvYWQiICk7CiAgICAkdGhpcy0+UmVtb3ZlRXZlbnQoIk9uUmVtb3ZlIiApOwogICAgJHRoaXMtPlJlbW92ZUV2ZW50KCJPbkRvd25sb2FkIiApOwogICAgJHRoaXMtPlJlbW92ZUV2ZW50KCJPbkNyZWF0ZUNhdGVnb3J5IiApOwogICAgJHRoaXMtPlJlbW92ZUV2ZW50KCJPbkRlbGV0ZUNhdGVnb3J5IiApOwoKICAgIC8vIHB1dCBtZW50aW9uIGludG8gdGhlIGFkbWluIGxvZwogICAgJHRoaXMtPkF1ZGl0ICgwLCAkdGhpcy0+TGFuZyAoJ2ZyaWVuZGx5bmFtZScpLAoJCSAgJHRoaXMtPkxhbmcgKCd1bmluc3RhbGxlZCcpKTsKPz4=]]></data>
	</file>
	<file>
	  <filename>/method.upgrade.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDoJLy93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgogICAgJGN1cnJlbnRfdmVyc2lvbiA9ICRvbGR2ZXJzaW9uOwogICAgc3dpdGNoKCAkb2xkdmVyc2lvbiApCiAgICAgIHsKICAgICAgY2FzZSAiMS4xLjAiOgogICAgICBjYXNlICIxLjEuMSI6CiAgICAgIGNhc2UgIjEuMS4yIjoKICAgICAgY2FzZSAiMS4xLjMiOgogICAgICBjYXNlICIxLjEuNCI6CiAgICAgIGNhc2UgIjEuMS41IjoKICAgICAgY2FzZSAiMS4xLjYiOgoJJHRoaXMtPlNldFByZWZlcmVuY2UgKCdzZW5kX3VwbG9hZF9ub3RpZmljYXRpb25zX3RvJywnJyk7CgkkdGhpcy0+U2V0VGVtcGxhdGUoICd1cGxvYWRfZW1haWx0ZW1wbGF0ZScsICR0aGlzLT5kZmx0X2VtYWlsbm90aWZ5dGVtcGxhdGUgKTsKCXJldHVybjsKICAgICAgfQoKICAgIHN3aXRjaCAoJG9sZHZlcnNpb24pCiAgICB7CiAgICBjYXNlICIxLjAiOgogICAgY2FzZSAiMS4wLjEiOgogICAgY2FzZSAiMS4wLjIiOgogICAgY2FzZSAiMS4wLjMiOgogICAgY2FzZSAiMS4wLjQiOgogICAgY2FzZSAiMS4wLjUiOgogICAgICB7CgkvLyB0aGVzZSB2ZXJzaW9ucyBkaWRuJ3QgaGF2ZSBhIHN1bW1hcnkgZmllbGQKCS8vIHNvIHdlIGNvbnZlcnQgdGhlIHNjaGVtYSBvZiB0aGUgdXBsb2FkcyB0YWJsZSB0byBoYXZlIGEgc3VtbWFyeSBmaWVsZAoJLy8gYW5kIGNvcHkgdGhlIG9sZCBkZXNjcmlwdGlvbiBpbnRvIHRoZSBuZXcgc3VtbWFyeSBmaWVsZC4KCSR0aGlzLT5fZml4VG9BZGp1c3RUYWJsZVN0cnVjdHVyZTEoKTsKICAgICAgfQogICAgY2FzZSAiMS4wLjYiOgogICAgICB7CgkvLyB0aGlzIG1vZHVsZSB3YXMgdmVyeSB2ZXJ5IG1lc3NlZCB1cC4KCXJldHVybiBmYWxzZTsKICAgICAgfQogICAgY2FzZSAiMS4wLjciOgogICAgY2FzZSAiMS4wLjgiOgogICAgY2FzZSAiMS4wLjkiOgogICAgICB7CgkvLyB0aGVzZSB2ZXJzaW9ucyBoYWQgYSBzdW1tYXJ5IGZpZWxkIGJ1dCBpdCAibWF5IiBoYXZlIGJlZW4gcGxhY2VkIGFzCgkvLyB0aGUgbGFzdCBjb2x1bW4gZHVlIHRvIHVwZ3JhZGluZyBmcm9tIDEuMC42IG9yIGVhcmxpZXIKCS8vIHRoaXMgd2lsbCByZS1jcmVhdGUgdGhlIHRhYmxlIHRvIGVuc3VyZSB0aGF0IHRoZSBkYXRhIHdpbGwgYmUgaW4KCS8vIHRoZSBjb3JyZWN0IG9yZGVyLgoJJHRoaXMtPl9maXhUb0FkanVzdFRhYmxlU3RydWN0dXJlMigpOwogICAgICB9CgogICAgY2FzZSAiMS4xLjEwIjoKICAgIGNhc2UgIjEuMS4xMSI6CiAgICBjYXNlICIxLjEuMTIiOgogICAgY2FzZSAiMS4xLjEzIjoKICAgICAgewoJJHRoaXMtPlNldFByZWZlcmVuY2UoJ3VzZXJ0YWdfb251cGxvYWQnLCcnKTsKICAgICAgfQoKICAgIGNhc2UgIjEuMi4wIjoKICAgICAgewoJJHRoaXMtPlJlbW92ZVByZWZlcmVuY2UoJ3VzZXJ0YWdfb25sdXBsb2FkJyk7CgkkdGhpcy0+Q3JlYXRlRXZlbnQoICJPblVwbG9hZCIgKTsKCSR0aGlzLT5DcmVhdGVFdmVudCggIk9uUmVtb3ZlIiApOwoJJHRoaXMtPkNyZWF0ZUV2ZW50KCAiT25Eb3dubG9hZCIgKTsKCSR0aGlzLT5DcmVhdGVFdmVudCggIk9uQ3JlYXRlQ2F0ZWdvcnkiICk7CgkkdGhpcy0+Q3JlYXRlRXZlbnQoICJPbkRlbGV0ZUNhdGVnb3J5IiApOwogICAgICB9CiAgICBjYXNlICcxLjIuMSc6CiAgICAgIHsKCSRkYiA9JiAkdGhpcy0+R2V0RGIoKTsKCSRkaWN0ID0gTmV3RGF0YURpY3Rpb25hcnkoJGRiKTsKCSRzcWxhcnJheSA9ICRkaWN0LT5BZGRDb2x1bW5TUUwoY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2FkcyIsCgkJCQkJInVwbG9hZF9rZXkgQygyNTUpIik7CgkkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCAkc3FsYXJyYXkgKTsKICAgICAgfQogICAgY2FzZSAnMS4yLjInOgogICAgICB7CgkkdG1wbCA9ICR0aGlzLT5HZXRUZW1wbGF0ZSgndXBsb2FkX3VwbG9hZGZvcm0nKTsKCSR0aGlzLT5EZWxldGVUZW1wbGF0ZSgndXBsb2FkX3VwbG9hZGZvcm0nKTsKCSR0aGlzLT5TZXRUZW1wbGF0ZSgndXBsb2FkZm9ybV9kZWZhdWx0JywkdG1wbCk7CgoJJHRtcGwgPSAkdGhpcy0+R2V0VGVtcGxhdGUoJ3VwbG9hZF9kaXNwbGF5c3VtbWFyeScpOwoJJHRoaXMtPkRlbGV0ZVRlbXBsYXRlKCd1cGxvYWRfZGlzcGxheXN1bW1hcnknKTsKCSR0aGlzLT5TZXRUZW1wbGF0ZSgnc3VtbWFyeXJwdF9kZWZhdWx0JywkdG1wbCk7CgoJJHRtcGwgPSAkdGhpcy0+R2V0VGVtcGxhdGUoJ3VwbG9hZF9kaXNwbGF5ZGV0YWlsJyk7CgkkdGhpcy0+RGVsZXRlVGVtcGxhdGUoJ3VwbG9hZF9kaXNwbGF5ZGV0YWlsJyk7CgkkdGhpcy0+U2V0VGVtcGxhdGUoJ2RldGFpbHJwdF9kZWZhdWx0JywkdG1wbCk7CiAgICAgIH0KICAgIGNhc2UgJzEuMi4zJzoKICAgICAgewoJLy8gYSB0YWJsZSBmb3IgZmlsZSB0eXBlcwoJJGZsZHMgPSAiaWQgSSwKICAgICAgICAgICAgIHNvcnRvcmRlciBJLAogICAgICAgICAgICAgbmFtZSAgQygyNTUpLAogICAgICAgICAgICAgZGVzY3JpcHRpb24gWCwKICAgICAgICAgICAgIGV4dGVuc2lvbnMgQygyNTUpLAogICAgICAgICAgICAgaW1hZ2UgQygyNTUpCiAgICAgICAgICAgICI7CgkkZGIgPSYgJHRoaXMtPkdldERiKCk7CgkkZGljdCA9IE5ld0RhdGFEaWN0aW9uYXJ5ICgkZGIpOwoJJHNxbGFycmF5ID0KCSAgJGRpY3QtPkNyZWF0ZVRhYmxlU1FMIChjbXNfZGJfcHJlZml4ICgpLiJtb2R1bGVfdXBsb2Fkc19maWxldHlwZXMiLAoJCQkJICRmbGRzLCAkdGFib3B0YXJyYXkpOwoJJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSAoJHNxbGFycmF5KTsKCSRkYi0+Q3JlYXRlU2VxdWVuY2UgKGNtc19kYl9wcmVmaXggKCkuIm1vZHVsZV91cGxvYWRzX2ZpbGV0eXBlc19zZXEiKTsKCgkvLyBhbmQgc29tZSBpbml0aWFsIGRhdGEKICAgICAgICAkdGhpcy0+X0luc2VydERlZmF1bHRGaWxlVHlwZXMoKTsKCgkkZm4gPSBkaXJuYW1lKF9fRklMRV9fKS5ESVJFQ1RPUllfU0VQQVJBVE9SLgoJICAndGVtcGxhdGVzJy5ESVJFQ1RPUllfU0VQQVJBVE9SLidvcmlnX3VwbG9hZGZvcm1fdGVtcGxhdGUudHBsJzsKCWlmKCBmaWxlX2V4aXN0cyggJGZuICkgKQoJICB7CgkgICAgJHRlbXBsYXRlID0gQGZpbGVfZ2V0X2NvbnRlbnRzKCRmbik7CgkgICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ3VwbG9hZGZvcm1fc3lzZGVmYXVsdCcsJHRlbXBsYXRlKTsKCSAgICAkdGhpcy0+U2V0VGVtcGxhdGUoJ3VwbG9hZGZvcm1fZGVmYXVsdCcsJHRlbXBsYXRlKTsKCSAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgnZGVmYXVsdF91cGxvYWRmb3JtJywnZGVmYXVsdCcpOwoJICB9CgkKCSRmbiA9IGRpcm5hbWUoX19GSUxFX18pLkRJUkVDVE9SWV9TRVBBUkFUT1IuCgkgICd0ZW1wbGF0ZXMnLkRJUkVDVE9SWV9TRVBBUkFUT1IuJ29yaWdfc3VtbWFyeXJwdF90ZW1wbGF0ZS50cGwnOwoJaWYoIGZpbGVfZXhpc3RzKCAkZm4gKSApCgkgIHsKCSAgICAkdGVtcGxhdGUgPSBAZmlsZV9nZXRfY29udGVudHMoJGZuKTsKCSAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgnc3VtbWFyeXJwdF9zeXNkZWZhdWx0JywkdGVtcGxhdGUpOwoJICAgICR0aGlzLT5TZXRUZW1wbGF0ZSgnc3VtbWFyeXJwdF9kZWZhdWx0JywkdGVtcGxhdGUpOwoJICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdkZWZhdWx0X3N1bW1hcnlycHQnLCdkZWZhdWx0Jyk7CgkgIH0KCQoJJGZuID0gZGlybmFtZShfX0ZJTEVfXykuRElSRUNUT1JZX1NFUEFSQVRPUi4KCSAgJ3RlbXBsYXRlcycuRElSRUNUT1JZX1NFUEFSQVRPUi4nb3JpZ19kZXRhaWxycHRfdGVtcGxhdGUudHBsJzsKCWlmKCBmaWxlX2V4aXN0cyggJGZuICkgKQoJICB7CgkgICAgJHRlbXBsYXRlID0gQGZpbGVfZ2V0X2NvbnRlbnRzKCRmbik7CgkgICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ2RldGFpbHJwdF9zeXNkZWZhdWx0JywkdGVtcGxhdGUpOwoJICAgICR0aGlzLT5TZXRUZW1wbGF0ZSgnZGV0YWlscnB0X2RlZmF1bHQnLCR0ZW1wbGF0ZSk7CgkgICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ2RlZmF1bHRfZGV0YWlscnB0JywnZGVmYXVsdCcpOwoJICB9CgoJJHRoaXMtPlNldFByZWZlcmVuY2UgKCdhdXRvdGh1bWJuYWlsX2V4dGVuc2lvbnMnLAoJCQkgICAgICAnZ2lmLGpwZyxqcGVnLGJtcCxwbmcnKTsKCSR0aGlzLT5TZXRQcmVmZXJlbmNlICgnYXV0b3RodW1ibmFpbF9zaXplJyw4MCk7CiAgICAgIH0KCiAgICBjYXNlICcxLjMuMC1iZXRhMyc6CiAgICAgIHsKCSR0aGlzLT5TZXRQcmVmZXJlbmNlICgnZG93bmxvYWRfY2h1bmtzaXplJyw4KTsKICAgICAgfQogICAgY2FzZSAnMS4zLjAtYmV0YTUnOgogICAgICB7CgkvLyBhZGQgYSBncm91cHMgZmllbGQgdG8gdGhlIGNhdGVnb3JpZXMgdGFibGUKCS8vIGl0IGNvbnRhaW5zIEZFVSBncm91cCBJRCdzIChjb21tYSBzZXBlcmF0ZWQpCgkkZGIgPSYgJHRoaXMtPkdldERiKCk7CgkkZGljdCA9IE5ld0RhdGFEaWN0aW9uYXJ5KCRkYik7Cgkkc3FsYXJyYXkgPSAkZGljdC0+QWRkQ29sdW1uU1FMKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfY2F0ZWdvcmllcyIsCgkJCQkJInVwbG9hZF9jYXRlZ29yeV9ncm91cHMgQygyNTUpIik7CgkkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCAkc3FsYXJyYXkgKTsKICAgICAgfQogICAgY2FzZSAnMS4zLjAnOgogICAgY2FzZSAnMS4zLjEnOgogICAgICB7CgkvLyBhbmQgYW4gdXBsb2FkX3RodW1ibmFpbCBmaWVsZCB0byB0aGUgdXBsb2FkcyB0YWJsZS4KCSRkYiA9JiAkdGhpcy0+R2V0RGIoKTsKCSRkaWN0ID0gTmV3RGF0YURpY3Rpb25hcnkoJGRiKTsKCSRzcWxhcnJheSA9ICRkaWN0LT5BZGRDb2x1bW5TUUwoY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2FkcyIsCgkJCQkJInVwbG9hZF90aHVtYm5haWwgQygyNTUpIik7CgkkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCAkc3FsYXJyYXkgKTsKCgkvLwoJLy8gR2V0IGxpc3Qgb2YgY2F0ZWdvcmllcwoJLy8KCSRxdWVyeSA9ICdTRUxFQ1QgdXBsb2FkX2NhdGVnb3J5X2lkLHVwbG9hZF9jYXRlZ29yeV9wYXRoIAogICAgICAgICAgICAgICAgICAgIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzX2NhdGVnb3JpZXMnOwoJJHRtcCA9ICRkYi0+R2V0QXJyYXkoJHF1ZXJ5KTsKCSRjYXRlZ29yaWVzID0gYXJyYXkoKTsKCWZvcmVhY2goICR0bXAgYXMgJG9uZSApCgkgIHsKCSAgICAkY2F0ZWdvcmllc1skb25lWyd1cGxvYWRfY2F0ZWdvcnlfaWQnXV0gPSAkb25lOwoJICB9CgoJLy8KCS8vIEZvciBlYWNoIGZpbGUKCS8vCgkkbm93ID0gJGRiLT5EYlRpbWVTdGFtcCh0aW1lKCkpOwoJJHF1ZXJ5ID0gJ1NFTEVDVCB1cGxvYWRfY2F0ZWdvcnlfaWQsdXBsb2FkX2lkLHVwbG9hZF9uYW1lIAogICAgICAgICAgICAgICAgICAgIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzJzsKCSRkYnIgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5KTsKCSR1cGRhdGVxdWVyeSA9ICdVUERBVEUgJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzCiAgICAgICAgICAgICAgICAgICAgICAgICAgIFNFVCB1cGxvYWRfdGh1bWJuYWlsID0gPwogICAgICAgICAgICAgICAgICAgICAgICAgV0hFUkUgdXBsb2FkX2lkID0gPyc7Cgl3aGlsZSggJGRiciAmJiAoJHJvdyA9ICRkYnItPkZldGNoUm93KCkpICkKCSAgewoJICAgIC8vIGdldCBwYXRoIHRvIHRodW1ibmFpbAoJICAgICRkaXIgPSBjbXNfam9pbl9wYXRoKCRjb25maWdbJ3VwbG9hZHNfcGF0aCddLAoJCQkJICRjYXRlZ29yaWVzWyRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9pZCddXVsndXBsb2FkX2NhdGVnb3J5X3BhdGgnXSk7CgkgICAgJG9sZHRodW1iID0gY21zX2pvaW5fcGF0aCgkZGlyLCcudGh1bWJzJywKCQkJCSAgICAgICRyb3dbJ3VwbG9hZF9pZCddLidfdGh1bWInKTsKCSAgICBpZiggIWZpbGVfZXhpc3RzKCRvbGR0aHVtYikgKSBjb250aW51ZTsKCgkgICAgJHRtcCA9IEBnZXRpbWFnZXNpemUoJG9sZHRodW1iKTsKCSAgICBpZiggIWlzX2FycmF5KCR0bXApIHx8ICR0bXBbMF0gPT0gMCApIGNvbnRpbnVlOwoKCSAgICAkdGh1bWJ0eXBlID0gJHRtcFsyXTsKCSAgICAkdGh1bWJleHQgPSBAaW1hZ2VfdHlwZV90b19leHRlbnNpb24oJHRodW1idHlwZSk7CgkgICAgJGZuYW1lZXh0ID0gc3RycmNocigkcm93Wyd1cGxvYWRfbmFtZSddLCcuJyk7CgkgICAgJGZuYW1lID0gc3Vic3RyKCRyb3dbJ3VwbG9hZF9uYW1lJ10sMCxzdHJsZW4oJHJvd1sndXBsb2FkX25hbWUnXSktc3RybGVuKCRmbmFtZWV4dCkpOwoJICAgICR0aHVtYm5hbWUgPSAndGh1bWJfJy4kZm5hbWUuJHRodW1iZXh0OwoJICAgICRuZXd0aHVtYiA9IGNtc19qb2luX3BhdGgoJGRpciwkdGh1bWJuYW1lKTsKCSAgICAKCSAgICAvLyByZW5hbWUgdGh1bWJuYWlsIGZpbGVzCgkgICAgQHJlbmFtZSgkb2xkdGh1bWIsJG5ld3RodW1iKTsKCSAgICBAdW5saW5rKCRvbGR0aHVtYik7CgoJICAgIC8vIHVwZGF0ZSB0aGUgZGF0YWJhc2UKCSAgICAkZGItPkV4ZWN1dGUoJHVwZGF0ZXF1ZXJ5LGFycmF5KCR0aHVtYm5hbWUsJHJvd1sndXBsb2FkX2lkJ10pKTsKCSAgfQoKICAgICAgICAvLyByZW1vdmUgdGhlIC50aHVtYnMgZGlyZWN0b3J5IGZvciBlYWNoIGNhdGVnb3J5Cglmb3IoICRpID0gMDsgJGkgPCBjb3VudCgkY2F0ZWdvcmllcyk7ICRpKysgKQoJICB7CgkgICAgJGRpciA9IGNtc19qb2luX3BhdGgoJGNvbmZpZ1sndXBsb2Fkc19wYXRoJ10sCgkJCQkgJGNhdGVnb3JpZXNbJGldWyd1cGxvYWRzX2NhdGVnb3J5X3BhdGgnXSwKCQkJCSAnLnRodW1icycpOwoJICAgIHJlY3Vyc2l2ZV9kZWxldGUoJGRpcik7CgkgIH0KICAgICAgfQogICAgfQoKICAgIC8vIGFueXRoaW5nIHBhc3QgaGVyZSBzaG91bGQgYmUgZmluZS4KICAgIHJldHVybjsKPz4=]]></data>
	</file>
	<file>
	  <filename>/skeleton.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLXNldC1zdHlsZTpsaW51eDsgdGFiLXdpZHRoOjI7IGluZGVudC10YWJzLW1vZGU6dDsgYy1iYXNpYy1vZmZzZXQ6IDI7IC0qLQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogVXBsb2FkcyAtPSBhbGxvdyB1c2VycyB0byB1cGxvYWQgc3R1ZmYsIGEgcHNldWRvIGZpbGUgbWFuYWdlciIgbW9kdWxlCiMgQXV0aG9yOiBSb2JlcnQgQ2FtcGJlbGwgPHJvYkB0ZWNoY29tLmR5bmRucy5vcmc+CiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOgkvL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KaWYoICFpc3NldCgkZ0NtcykgKSBleGl0OwoKIwojIEVPRgojCj8+]]></data>
	</file>
	<file>
	  <filename>/templates/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/templates/addcategory.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyR0aXRsZX0Ke2lmICRtZXNzYWdlICE9ICcnfQogIHtpZiAkZXJyb3IgIT0gJyd9CiAgICA8cD48Zm9udCBjb2xvcj0icmVkIj57JG1lc3NhZ2V9PC9mb250PjwvcD4KICB7ZWxzZX0KICAgIDxwPnskbWVzc2FnZX08L3A+CiAgey9pZn0Ke2Vsc2V9Cnskc3RhcnRmb3JtfQogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X2NhdGVnb3J5bmFtZX08L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2NhdGVnb3J5bmFtZX08YnIvPnskaW5mb19jYXRlZ29yeW5hbWV9PC9wPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X2NhdGVnb3J5ZGVzY308L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2NhdGVnb3J5ZGVzY308YnIvPnskaW5mb19jYXRlZ29yeWRlc2N9PC9wPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X2NhdGVnb3J5cGF0aH08L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2NhdGVnb3J5cGF0aH08L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGluZm9fY2F0ZWdvcnlwYXRofTxici8+eyRwYXRobWVzc2FnZX08L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfY2F0ZWdvcnlsaXN0YWJsZX08L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2NhdGVnb3J5bGlzdGFibGV9PGJyLz57JGluZm9fY2F0ZWdvcnlsaXN0YWJsZX08L3A+CiAgPC9kaXY+CntpZiBpc3NldCgkcHJvbXB0X2dyb3VwbGlzdCl9CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfZ3JvdXBsaXN0fTwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfZ3JvdXBsaXN0fTxici8+eyRpbmZvX2dyb3VwbGlzdH08L3A+CiAgPC9kaXY+CnsvaWZ9CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+Jm5ic3A7PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRoaWRkZW59eyRzY2FufXskdGh1bWJuYWlsc317JHN1Ym1pdH17JGNhbmNlbH08L3A+CiAgPC9kaXY+CnskZW5kZm9ybX0Key9pZn0K]]></data>
	</file>
	<file>
	  <filename>/templates/addfiletype.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyRzdGFydGZvcm19CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfbmFtZX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9uYW1lfTwvcD4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF9kZXNjcmlwdGlvbn06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9kZXNjcmlwdGlvbn08L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfZXh0ZW5zaW9uc306PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9leHRlbnNpb25zfTwvcD4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF9pY29ufTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2ljb259PC9wPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPiZuYnNwOzwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaGlkZGVufXskc3VibWl0fXskY2FuY2VsfTwvcD4KICA8L2Rpdj4KeyRlbmRmb3JtfQ==]]></data>
	</file>
	<file>
	  <filename>/templates/adminpanel.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGgzPnskdGl0bGVfc2VjdGlvbn08L2gzPgo8cD57JGFkbWluX25hdn08L3A+Cnskd2VsY29tZV90ZXh0fQ==]]></data>
	</file>
	<file>
	  <filename>/templates/adminprefs.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[e2lmICRtZXNzYWdlIT0nJ308cD57JG1lc3NhZ2V9PC9wPnsvaWZ9Cnskc3RhcnRmb3JtfQoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCQk8cCBjbGFzcz0icGFnZXRleHQiPnskdGl0bGVfbWF4X3VwbG9hZHNpemV9OjwvcD4KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X21heF91cGxvYWRzaXplfTwvcD4KCTwvZGl2PgoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCQk8cCBjbGFzcz0icGFnZXRleHQiPnskdGl0bGVfdmFsaWRfdXBsb2FkZXh0ZW5zaW9uc306PC9wPgoJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfdmFsaWRfdXBsb2FkZXh0ZW5zaW9uc308L3A+Cgk8L2Rpdj4KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CgkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHRpdGxlX3N1Ym5ldF9leGNsdXNpb25zfTo8L3A+CgkJPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9zdWJuZXRfZXhjbHVzaW9uc308L3A+Cgk8L2Rpdj4KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CgkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHRpdGxlX2R1bW15X2luZGV4X2h0bWx9OjwvcD4KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2R1bW15X2luZGV4X2h0bWx9PC9wPgoJPC9kaXY+Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJCTxwIGNsYXNzPSJwYWdldGV4dCI+eyR0aXRsZV9lbmZvcmNlZXh0ZW5zaW9uc306PC9wPgoJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfZW5mb3JjZWV4dGVuc2lvbnN9PC9wPgoJPC9kaXY+Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJCTxwIGNsYXNzPSJwYWdldGV4dCI+eyR0aXRsZV9lbWFpbF9vbl91cGxvYWR9OjwvcD4KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2VtYWlsX29uX3VwbG9hZH08L3A+Cgk8L2Rpdj4KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CgkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHRpdGxlX3JlZGlyZWN0X29uX3VwbG9hZH06PC9wPgoJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfcmVkaXJlY3Rfb25fdXBsb2FkfTwvcD4KCTwvZGl2PgoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCQk8cCBjbGFzcz0icGFnZXRleHQiPnskdGl0bGVfdXNlcnRhZ19vbnVwbG9hZH06PC9wPgoJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfdXNlcnRhZ19vbnVwbG9hZH08L3A+Cgk8L2Rpdj4KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CgkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHRpdGxlX2F1dG90aHVtYm5haWxfZXh0ZW5zaW9uc306PC9wPgoJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfYXV0b3RodW1ibmFpbF9leHRlbnNpb25zfTwvcD4KCTwvZGl2PgoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCQk8cCBjbGFzcz0icGFnZXRleHQiPnskdGl0bGVfYXV0b3RodW1ibmFpbF9zaXplfTo8L3A+CgkJPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9hdXRvdGh1bWJuYWlsX3NpemV9PC9wPgoJPC9kaXY+Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJCTxwIGNsYXNzPSJwYWdldGV4dCI+eyR0aXRsZV9kb3dubG9hZF9jaHVua3NpemV9OjwvcD4KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2Rvd25sb2FkX2NodW5rc2l6ZX0mbmJzcDt7JGluZm9fZG93bmxvYWRfY2h1bmtzaXplfTwvcD4KCTwvZGl2PgoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCQk8cCBjbGFzcz0icGFnZXRleHQiPiZuYnNwOzwvcD4KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JHN1Ym1pdH08L3A+Cgk8L2Rpdj4KeyRlbmRmb3JtfQo=]]></data>
	</file>
	<file>
	  <filename>/templates/brieflist.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[e2lmICRpdGVtY291bnQgPiAwfQ0KPHRhYmxlIGNlbGxzcGFjaW5nPSIwIiBjbGFzcz0icGFnZXRhYmxlIj4NCgk8dGhlYWQ+DQoJCTx0cj4NCgkJCTx0aD57JG5hbWV0ZXh0fTwvdGg+DQoJCQk8dGg+eyRhdXRob3J0ZXh0fTwvdGg+DQoJCSAgICAgICAgPHRoPnskZGF0ZXRleHR9PC90aD4NCgkJCTx0aD57JHNpemV0ZXh0fTwvdGg+CQ0KCQk8L3RyPg0KCTwvdGhlYWQ+DQoJPHRib2R5Pg0KCXtmb3JlYWNoIGZyb209JGl0ZW1zIGl0ZW09ZW50cnl9DQoJCTx0ciBjbGFzcz0ieyRlbnRyeS0+cm93Y2xhc3N9Ij4NCgkJCTx0ZD57JGVudHJ5LT5uYW1lfTwvdGQ+DQoJCQk8dGQ+eyRlbnRyeS0+YXV0aG9yfTwvdGQ+DQoJCQk8dGQ+eyRlbnRyeS0+ZGF0ZX08L3RkPg0KCQkJPHRkPnskZW50cnktPnNpemV9PC90ZD4NCgkJPC90cj4NCgkJPHRyIGNsYXNzPSJ7JGVudHJ5LT5yb3djbGFzc30iPg0KICAgICAgICAgICAgICAgCQk8dGQgY29sc3Bhbj0iNCI+eyRlbnRyeS0+ZGVzY3JpcHRpb259PC90ZD4gDQoJCTwvdHI+DQoJey9mb3JlYWNofQ0KCTwvdGJvZHk+DQo8L3RhYmxlPg0Key9pZn0NCg==]]></data>
	</file>
	<file>
	  <filename>/templates/categorylist.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGRpdiBjbGFzcz0icGFnZW9wdGlvbnMiPjxwIGNsYXNzPSJwYWdlb3B0aW9ucyI+eyRpdGVtY291bnR9IENhdGVnb3JpZXMgRm91bmQ8L3A+PC9kaXY+DQp7aWYgJGl0ZW1jb3VudCA+IDB9DQo8dGFibGUgY2VsbHNwYWNpbmc9IjAiIGNsYXNzPSJwYWdldGFibGUiPg0KCTx0aGVhZD4NCgkJPHRyPg0KCQkJPHRoIHdpZHRoPSIxNSUiPnskY2F0ZWdvcnl0ZXh0fTwvdGg+DQoJCQk8dGg+eyRuYW1ldGV4dH08L3RoPg0KCQkJPHRoPnskcGF0aHRleHR9PC90aD4NCgkJCTx0aCBjbGFzcz0icGFnZWljb24iPiZuYnNwOzwvdGg+DQoJCQk8dGggY2xhc3M9InBhZ2VpY29uIj4mbmJzcDs8L3RoPg0KCQk8L3RyPg0KCTwvdGhlYWQ+DQoJPHRib2R5Pg0Ke2ZvcmVhY2ggZnJvbT0kaXRlbXMgaXRlbT1lbnRyeX0NCgkJPHRyIGNsYXNzPSJ7JGVudHJ5LT5yb3djbGFzc30iPg0KCQkJPHRkPnskZW50cnktPmlkfTwvdGQ+DQoJCQk8dGQ+eyRlbnRyeS0+bmFtZX08L3RkPg0KCQkJPHRkPnskZW50cnktPnBhdGh9PC90ZD4NCgkJCTx0ZD57JGVudHJ5LT5lZGl0bGlua308L3RkPg0KCQkJPHRkPnskZW50cnktPmRlbGV0ZWxpbmt9PC90ZD4NCgkJPC90cj4NCgkJPHRyIGNsYXNzPSJ7JGVudHJ5LT5yb3djbGFzc30iPiANCgkJCTx0ZD4mbmJzcDs8L3RkPg0KCQkJPHRkIGNvbHNwYW49IjQiPnskZW50cnktPmRlc2NyaXB0aW9ufTwvdGQ+DQoJCTwvdHI+DQoJIA0Key9mb3JlYWNofQ0KCTwvdGJvZHk+DQo8L3RhYmxlPg0Key9pZn0NCjxkaXYgY2xhc3M9InBhZ2VvcHRpb25zIj48cCBjbGFzcz0icGFnZW9wdGlvbnMiPnskYWRkbGlua308L3A+PC9kaXY+DQo=]]></data>
	</file>
	<file>
	  <filename>/templates/deletecategory.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyRzdGFydGZvcm19Cgk8cD57JHdhcm5pbmdfZGVsZXRlY2F0ZWdvcnl9PC9wPgoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCQk8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X2RlbGV0ZWRpcmVjdG9yeX06PC9wPgoJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfZGVsZXRlZGlyZWN0b3J5fTwvcD4KCTwvZGl2PgoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCQk8cCBjbGFzcz0icGFnZXRleHQiPiZuYnNwOzwvcD4KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JGhpZGRlbn17JHN1Ym1pdH08L3A+Cgk8L2Rpdj4KeyRlbmRmb3JtfQo=]]></data>
	</file>
	<file>
	  <filename>/templates/editdefaulttemplate.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyRzdGFydGZvcm19Cgk8aDQ+eyRkZWZhdWx0dGVtcGxhdGVmb3JtX3RpdGxlfTwvaDQ+CiAgICAgICAgPGVtPnskaW5mb190aXRsZX08L2VtPjxici8+Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJCTxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfdGVtcGxhdGV9OjwvcD4KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X3RlbXBsYXRlfTwvcD4KCTwvZGl2PgoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCQk8cCBjbGFzcz0icGFnZXRleHQiPiZuYnNwOzwvcD4KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JHN1Ym1pdH17JHJlc2V0fTwvcD4KCTwvZGl2Pgp7JGVuZGZvcm19Cjxici8+Cg==]]></data>
	</file>
	<file>
	  <filename>/templates/edittemplate.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KPGgzPnskdGl0bGV9PC9oMz4KPC9kaXY+CnskZm9ybXN0YXJ0fXskaGlkZGVufQo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfdGVtcGxhdGVuYW1lfTo8L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyR0ZW1wbGF0ZW5hbWV9PC9wPgo8L2Rpdj4KPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X3RlbXBsYXRlfTo8L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyR0ZW1wbGF0ZX08L3A+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+Jm5ic3A7PC9wPgogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskc3VibWl0fXskY2FuY2VsfTwvcD4KPC9kaXY+CnskZm9ybWVuZH0K]]></data>
	</file>
	<file>
	  <filename>/templates/edittemplates.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KPHRhYmxlIGNlbGxzcGFjaW5nPSIwIiBjbGFzcz0icGFnZXRhYmxlIj4KICA8dGhlYWQ+CiAgICA8dHI+CiAgICAgIDx0aCB3aWR0aD0iNzUlIj57JG5hbWVwcm9tcHR9PC90aD4KICAgICAgPHRoPnskZGVmYXVsdHByb21wdH08L3RoPgogICAgICA8dGggY2xhc3M9InBhZ2VpY29uIj4mbmJzcDs8L3RoPgogICAgICA8dGggY2xhc3M9InBhZ2VpY29uIj4mbmJzcDs8L3RoPgogICAgPC90cj4KICA8L3RoZWFkPgp7Zm9yZWFjaCBmcm9tPSRpdGVtcyBpdGVtPWVudHJ5fQogICA8dHIgY2xhc3M9InskZW50cnktPnJvd2NsYXNzfSI+CiAgICAgPHRkPnskZW50cnktPm5hbWV9PC90ZD4KICAgICA8dGQ+eyRlbnRyeS0+ZGVmYXVsdH08L3RkPgogICAgIDx0ZD57JGVudHJ5LT5lZGl0bGlua308L3RkPgogICAgIDx0ZD57JGVudHJ5LT5kZWxldGVsaW5rfTwvdGQ+CiAgIDwvdHI+CnsvZm9yZWFjaH0KPC90YWJsZT4KPC9kaXY+CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2VvcHRpb25zIj57JG5ld3RlbXBsYXRlbGlua308L3A+CjwvZGl2Pgo=]]></data>
	</file>
	<file>
	  <filename>/templates/editupload.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyR0aXRsZX0Ke2lmICRtZXNzYWdlICE9ICcnfQogIHtpZiAkZXJyb3IgIT0gJyd9CiAgICA8cD48Zm9udCBjb2xvcj0icmVkIj57JG1lc3NhZ2V9PC9mb250PjwvcD4KICB7ZWxzZX0KICAgIDxwPnskbWVzc2FnZX08L3A+CiAgey9pZn0Ke2Vsc2V9Cnskc3RhcnRmb3JtfQogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X3VwbG9hZG5hbWV9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfdXBsb2FkbmFtZX0geyRmaXh9eyRuYW1lbWVzc2FnZX08L3A+CiAgPC9kaXY+CiAge2lmICRwaWNfdGh1bWJuYWlsfQogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X3RodW1ibmFpbH08L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JHBpY190aHVtYm5haWx9PC9wPgogIDwvZGl2PgogIHsvaWZ9CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfbmV3dGh1bWJuYWlsfTwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfbmV3dGh1bWJuYWlsfTwvcD4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF9tb3ZlY2F0ZWdvcnl9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfbW92ZWNhdGVnb3J5fSB7JHBhdGhtZXNzYWdlfTwvcD4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF91cGxvYWRzaXplfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGRhdGFfdXBsb2Fkc2l6ZX08L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfdXBsb2FkZGF0ZX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRkYXRhX3VwbG9hZGRhdGV9PC9wPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X3VwbG9hZGF1dGhvcn06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF91cGxvYWRhdXRob3J9PC9wPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X3VwbG9hZHN1bW1hcnl9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfdXBsb2Fkc3VtbWFyeX08L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfdXBsb2FkZGVzY306PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF91cGxvYWRkZXNjfTwvcD4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij4mbmJzcDs8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGhpZGRlbn17JHRodW1ibmFpbH17JHN1Ym1pdH17JGNhbmNlbH08L3A+CiAgPC9kaXY+CiAge2lmICRpdGVtY291bnQgPiAwfQogICAgPGJyLz4KICAgIDx0YWJsZSBjZWxsc3BhY2luZz0iMCIgY2xhc3M9InBhZ2V0YWJsZSI+CiAgICAgIDx0aGVhZD4KICAgICAgICA8dHI+CiAgICAgICAgICA8dGg+eyRkYXRldGV4dH08L3RoPgogICAgICAgICAgPHRoPnskaXB0ZXh0fTwvdGg+CiAgICAgICAgICA8dGg+eyR1c2VydGV4dH08L3RoPgogICAgICAgIDwvdHI+CiAgICAgIDwvdGhlYWQ+CiAgICAgIDx0Ym9keT4KICAgICAge2ZvcmVhY2ggZnJvbT0kaXRlbXMgaXRlbT1lbnRyeX0KICAgICAgICA8dHIgY2xhc3M9InskZW50cnktPnJvd2NsYXNzfSI+CiAgICAgICAgICA8dGQ+eyRlbnRyeS0+ZGF0ZX08L3RkPgogICAgICAgICAgPHRkPnskZW50cnktPmlwfTwvdGQ+CiAgICAgICAgICA8dGQ+eyRlbnRyeS0+dXNlcn08L3RkPgogICAgICAgIDwvdHI+CiAgICAgIHsvZm9yZWFjaH0KICAgICAgPC90Ym9keT4KICAgIDwvdGFibGU+CiAgey9pZn0KeyRlbmRmb3JtfQp7L2lmfQo=]]></data>
	</file>
	<file>
	  <filename>/templates/error.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGgzPnskdGl0bGVfZXJyb3J9PC9oMz4KPHA+eyRhZG1pbl9uYXZ9PC9wPgp7aWYgJG1lc3NhZ2UhPScnfTxwPnskbWVzc2FnZX08L3A+ey9pZn0Ke2lmICRsaW5rIT0nJ308cD57JGxpbmt9PC9wPnsvaWZ9Cg==]]></data>
	</file>
	<file>
	  <filename>/templates/expandedlist.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyRzdGFydGZvcm19DQo8ZGl2IGNsYXNzPSJwYWdlb3B0aW9ucyI+DQogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRjYXRlZ29yeX08L3A+DQogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfY2F0ZWdvcnl9eyRpbnB1dF9zZWxlY3R9eyRpbnB1dF9oaWRkZW59PC9wPg0KPC9kaXY+DQp7JGVuZGZvcm19DQp7aWYgJGl0ZW1jb3VudCA+IDB9DQo8dGFibGUgY2VsbHNwYWNpbmc9IjAiIGNsYXNzPSJwYWdldGFibGUiPg0KCTx0aGVhZD4NCgkJPHRyPg0KCQkJPHRoPnskdGl0bGV0ZXh0fTwvdGg+DQoJCQk8dGg+eyRwb3N0ZGF0ZXRleHR9PC90aD4NCgkJCTx0aCBjbGFzcz0icGFnZWljb24iPiZuYnNwOzwvdGg+DQoJCQk8dGggY2xhc3M9InBhZ2VpY29uIj4mbmJzcDs8L3RoPg0KCQk8L3RyPg0KCTwvdGhlYWQ+DQoJPHRib2R5Pg0KCXtmb3JlYWNoIGZyb209JGl0ZW1zIGl0ZW09ZW50cnl9DQoJCTx0ciBjbGFzcz0ieyRlbnRyeS0+cm93Y2xhc3N9IiBvbm1vdXNlb3Zlcj0idGhpcy5jbGFzc05hbWU9J3skZW50cnktPnJvd2NsYXNzfWhvdmVyJzsiIG9ubW91c2VvdXQ9InRoaXMuY2xhc3NOYW1lPSd7JGVudHJ5LT5yb3djbGFzc30nOyI+DQoJCQk8dGQ+eyRlbnRyeS0+aWR9PC90ZD4NCgkJCTx0ZD57JGVudHJ5LT5uYW1lfTwvdGQ+DQoJCQk8dGQ+eyRlbnRyeS0+YXV0aG9yfTwvdGQ+DQoJCQk8dGQ+eyRlbnRyeS0+aXB9PC90ZD4NCgkJCTx0ZD57JGVudHJ5LT5kYXRlfTwvdGQ+DQoJCQk8dGQ+eyRlbnRyeS0+ZGVsZXRlbGlua308L3RkPg0KCQk8L3RyPg0KCQk8dHIgY2xhc3M9InskZW50cnktPnJvd2NsYXNzfSIgb25tb3VzZW92ZXI9InRoaXMuY2xhc3NOYW1lPSd7JGVudHJ5LT5yb3djbGFzc31ob3Zlcic7IiBvbm1vdXNlb3V0PSJ0aGlzLmNsYXNzTmFtZT0neyRlbnRyeS0+cm93Y2xhc3N9JzsiPg0KCSAgICAgICAgCTx0ZD4mbmJzcDs8L3RkPg0KICAgICAgICAgICAgICAgCQk8dGQgY29sc3Bhbj0iNSI+eyRlbnRyeS0+ZGVzY3JpcHRpb259PC90ZD4gDQoJCTwvdHI+DQoJey9mb3JlYWNofQ0KCTwvdGJvZHk+DQo8L3RhYmxlPg0Ke2Vsc2V9DQo8L2JyPg0KPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4NCiAgIDxwIGNsYXNzPSJwYWdlb3B0aW9ucyI+Tm8gRmlsZXMgRGV0ZWN0ZWQ8L3A+DQo8L2Rpdj4NCnsvaWZ9DQo=]]></data>
	</file>
	<file>
	  <filename>/templates/filetypes.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[e2lmICRpdGVtY291bnQgPiAwfQo8dGFibGUgY2VsbHNwYWNpbmc9IjAiIGNsYXNzPSJwYWdldGFibGUiPgogIDx0aGVhZD4KICAgIDx0cj4KICAgICAgICA8dGggd2lkdGg9IjQlIj4mbmJzcDs8L3RoPgoJPHRoPnskbmFtZXRleHR9PC90aD4KCTx0aCBjbGFzcz0icGFnZWljb24iPiZuYnNwOzwvdGg+Cgk8dGggY2xhc3M9InBhZ2VpY29uIj4mbmJzcDs8L3RoPgoJPHRoIGNsYXNzPSJwYWdlaWNvbiI+Jm5ic3A7PC90aD4KCTx0aCBjbGFzcz0icGFnZWljb24iPiZuYnNwOzwvdGg+CiAgICA8L3RyPgogIDwvdGhlYWQ+Cntmb3JlYWNoIGZyb209JGl0ZW1zIGl0ZW09ZW50cnl9CiAgICAgPHRyIGNsYXNzPSJ7JGVudHJ5LT5yb3djbGFzc30iPgogICAgICAgIDx0ZD57JGVudHJ5LT5pY29ufTwvdGQ+CiAgICAgICAgPHRkPnskZW50cnktPm5hbWV9PC90ZD4KICAgICAgICA8dGQ+eyRlbnRyeS0+dXBsaW5rfTwvdGQ+CiAgICAgICAgPHRkPnskZW50cnktPmRvd25saW5rfTwvdGQ+CiAgICAgICAgPHRkPnskZW50cnktPmVkaXRsaW5rfTwvdGQ+CiAgICAgICAgPHRkPnskZW50cnktPmRlbGV0ZWxpbmt9PC90ZD4KICAgICA8L3RyPgogICAgIDx0ciBjbGFzcz0ieyRlbnRyeS0+cm93Y2xhc3N9Ij4KICAgICAgICA8dGQ+Jm5ic3A7PC90ZD4KICAgICAgICA8dGQgY29sc3Bhbj0iNSI+eyRlbnRyeS0+ZGVzY3JpcHRpb259PC90ZD4KICAgICA8L3RyPgp7L2ZvcmVhY2h9CjwvdGFibGU+CnsvaWZ9Cjx0YWJsZSB3aWR0aD0iMTAwJSI+CiAgPHRyPgogIDx0ZCB3aXRoPSI1MCUiPgoJPGRpdiBjbGFzcz0icGFnZW9wdGlvbnMiPjxwIGNsYXNzPSJwYWdlb3B0aW9ucyI+eyRhZGRsaW5rfTwvcD48L2Rpdj4KICA8L3RkPgogIDx0ZCBhbGlnbj0icmlnaHQiPgoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCXskc3RhcnRmb3JtfQoJICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JHByb21wdF91cGxvYWRfaWNvbn06Jm5ic3A7eyRpbnB1dF91cGxvYWRfaWNvbn17JHN1Ym1pdH08L3A+CiAgICAgICAgeyRlbmRmb3JtfQoJPC9kaXY+CiAgPC90ZD4KICA8L3RyPgo8L3RhYmxlPgo=]]></data>
	</file>
	<file>
	  <filename>/templates/orig_detailrpt_template.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PCEtLSBTdGFydCBVcGxvYWQgRGV0YWlsIHRlbXBsYXRlIC0tPgo8dGFibGU+CiAgPHRyPgogICAge2lmIGlzc2V0KCRlbnRyeS0+dGh1bWJuYWlsX3VybCl9CiAgICA8dGQ+eyR0aHVtYm5haWx9PC90ZD4KICAgIDx0ZD48aW1nIHNyYz0ieyRlbnRyeS0+dGh1bWJuYWlsX3VybH0iIGJvcmRlcj0iMCIgLz48L3RkPgogICAge2Vsc2V9CiAgICA8dGQ+eyRpY29ufTwvdGQ+CiAgICA8dGQ+PGltZyBzcmM9InskZW50cnktPmljb251cmx9IiBib3JkZXI9IjAiIC8+PC90ZD4KICAgIHsvaWZ9CiAgPC90cj4KICA8dHI+CiAgICA8dGQ+eyRjYXRlZ29yeX08L3RkPgogICAgPHRkPnskZW50cnktPmNhdGVnb3J5fTwvdGQ+CiAgPC90cj4KICA8dHI+CiAgICA8dGQ+eyRpZH08L3RkPgogICAgPHRkPnskZW50cnktPmlkfTwvdGQ+CiAgPC90cj4KICA8dHI+CiAgICA8dGQ+eyRuYW1lfTwvdGQ+CiAgICA8dGQ+PGEgaHJlZj0ieyRlbnRyeS0+ZG93bmxvYWRfdXJsfSIgdGl0bGU9InskZW50cnktPnVwbG9hZF9uYW1lfSI+eyRlbnRyeS0+dXBsb2FkX25hbWV9PC9hPjwvdGQ+CiAgPC90cj4KICA8dHI+CiAgICA8dGQ+eyRkYXRlfTwvdGQ+CiAgICA8dGQ+eyRlbnRyeS0+ZGF0ZX08L3RkPgogIDwvdHI+CiAgPHRyPgogICAgPHRkPnskYXV0aG9yfTwvdGQ+CiAgICA8dGQ+eyRlbnRyeS0+YXV0aG9yfTwvdGQ+CiAgPC90cj4KICA8dHI+CiAgICA8dGQ+eyRzaXplfTwvdGQ+CiAgICA8dGQ+eyRlbnRyeS0+c2l6ZX08L3RkPgogIDwvdHI+CiAgPHRyPgogICAgPHRkPnskc3VtbWFyeX08L3RkPgogICAgPHRkPnskZW50cnktPnN1bW1hcnl9PC90ZD4KICA8L3RyPgogIDx0cj4KICAgIDx0ZD57JGRlc2NyaXB0aW9ufTwvdGQ+CiAgICA8dGQ+eyRlbnRyeS0+ZGVzY3JpcHRpb259PC90ZD4KICA8L3RyPgo8L3RhYmxlPgo8IS0tIEVuZCBVcGxvYWQgRGV0YWlsIHRlbXBsYXRlIC0tPgo=]]></data>
	</file>
	<file>
	  <filename>/templates/orig_summaryrpt_template.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PCEtLSBTdGFydCBVcGxvYWQgU3VtbWFyeSBUZW1wbGF0ZSAtLT4Ke2lmIGlzc2V0KCRpbnB1dF9maWx0ZXIpIH0KeyRzdGFydGZvcm19CnskcHJvbXB0X2ZpbHRlcn17JGlucHV0X2ZpbHRlcn17JGhpZGRlbl9wYXJhbXN9eyRpbnB1dF9zdWJtaXR9CnskZW5kZm9ybX0KPGJyLz4Ke2lmIGlzc2V0KCRtYXRjaGVzKX0KeyRtYXRjaGVzfSZuYnNwO3skbWF0Y2hlc3RleHR9CnsvaWZ9CnsvaWZ9Cgo8ZGl2Pgp7aWYgaXNzZXQoJHByZXZwYWdlX3VybCl9CiAgPGEgaHJlZj0ieyRmaXJzdHBhZ2VfdXJsfSIgdGl0bGU9InskZmlyc3RwYWdlfSI+eyRmaXJzdHBhZ2VfYXJyb3d9PC9hPgogIDxhIGhyZWY9InskcHJldnBhZ2VfdXJsfSIgdGl0bGU9InskcHJldnBhZ2V9Ij57JHByZXZwYWdlX2Fycm93fTwvYT4Key9pZn0Ke2lmICRudW1wYWdlcyA+IDF9CiAgJm5ic3A7Jm5ic3A7eyRwYWdldGV4dH0geyRwYWdlbnVtfSB7JG9mdGV4dH0geyRudW1wYWdlc30mbmJzcDsmbmJzcDsKey9pZn0Ke2lmIGlzc2V0KCRuZXh0cGFnZV91cmwpfQogIDxhIGhyZWY9InskbmV4dHBhZ2VfdXJsfSIgdGl0bGU9InskbmV4dHBhZ2V9Ij57JG5leHRwYWdlX2Fycm93fTwvYT4KICA8YSBocmVmPSJ7JGxhc3RwYWdlX3VybH0iIHRpdGxlPSJ7JGxhc3RwYWdlfSI+eyRsYXN0cGFnZV9hcnJvd308L2E+CnsvaWZ9CjwvZGl2PgoKPHRhYmxlPgogIDx0cj4KICAgIDx0aD57JGNhdGVnb3J5fTwvdGg+CiAgICA8dGg+eyRuYW1lfTwvdGg+CiAgICA8dGg+eyRhdXRob3J9PC90aD4KICAgIDx0aD57JGRhdGV9PC90aD4KICAgIDx0aD57JHNpemV9PC90aD4KICAgIDx0aD57JGRldGFpbHN9PC90aD4KICAgIDx0aD57JHN1bW1hcnl9PC90aD4KICAgIDx0aD57JGRlc2NyaXB0aW9ufTwvdGg+CiAgPC90cj4Ke2ZvcmVhY2ggZnJvbT0kaXRlbXMgaXRlbT1lbnRyeX0KICA8dHIgY2xhc3M9InskZW50cnktPnJvd2NsYXNzfSI+IAogICAgPHRkPnskZW50cnktPmNhdGVnb3J5fTwvdGQ+CiAgICA8dGQ+CiAgICAgIHskZW50cnktPnVwbG9hZF9uYW1lfQogICAgICA8YnIvPgogICAgICB7JGVudHJ5LT5kb3dubG9hZF91cmx9CiAgICAgIHtpZiBpc3NldCgkZW50cnktPnRodW1ibmFpbF91cmwpfQogICAgICAgIDxiciAvPnskdGh1bWJuYWlsfSA8aW1nIHNyYz0ieyRlbnRyeS0+dGh1bWJuYWlsX3VybH0iIGJvcmRlcj0iMCIgLz4KICAgICAge2Vsc2V9CiAgICAgICAgPGJyIC8+PGltZyBzcmM9InskZW50cnktPmljb251cmx9IiBib3JkZXI9IjAiIC8+CiAgICAgIHsvaWZ9CiAgICA8L3RkPgogICAgPHRkPnskZW50cnktPmF1dGhvcn08L3RkPgogICAgPHRkPnskZW50cnktPmRhdGV9PC90ZD4KICAgIDx0ZD57JGVudHJ5LT5zaXplfTwvdGQ+CiAgICA8dGQ+eyRlbnRyeS0+ZGV0YWlsbGlua308L3RkPgogICAgPHRkPnskZW50cnktPnN1bW1hcnl9PC90ZD4KICAgIDx0ZD57JGVudHJ5LT5zdW1tYXJ5bGlua308L3RkPgogIDwvdHI+CnsvZm9yZWFjaH0KPC90YWJsZT4KPCEtLSBFbmQgVXBsb2FkIFN1bW1hcnkgVGVtcGxhdGUgLS0+]]></data>
	</file>
	<file>
	  <filename>/templates/orig_uploadform_template.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PCEtLSBVcGxvYWQgZm9ybSB0ZW1wbGF0ZSAtLT4KeyRzdGFydGZvcm19eyRpbnB1dF9rZXl9CntpZiAkbm9hdXRob3IgfSAKeyRpbnB1dF9hdXRob3J9CntlbHNlfQo8cD57JHByb21wdF9hdXRob3J9Jm5ic3A7eyRpbnB1dF9hdXRob3J9PC9wPgp7L2lmfQo8cD57JHByb21wdF9zdW1tYXJ5fSZuYnNwO3skaW5wdXRfc3VtbWFyeX08L3A+CjxwPnskcHJvbXB0X2Rlc2NyaXB0aW9ufSZuYnNwO3skaW5wdXRfZGVzY3JpcHRpb259PC9wPgo8cD57JHByb21wdF9kZXN0bmFtZX0mbmJzcDt7JGlucHV0X2Rlc3RuYW1lfSZuYnNwO3skaW5mb19kZXN0bmFtZX08L3A+CjxwPnskcHJvbXB0X3RodW1ibmFpbH0mbmJzcDt7JGlucHV0X3RodW1ibmFpbH0mbmJzcDt7JGluZm9fdGh1bWJuYWlsfTwvcD4KPHA+eyRwcm9tcHRfcmVwbGFjZX0mbmJzcDt7JGlucHV0X3JlcGxhY2V9Jm5ic3A7eyRpbmZvX3JlcGxhY2V9PC9wPgo8cD57JHByb21wdF91cGxvYWR9eyRoaWRkZW59eyRpbnB1dF9icm93c2V9PC9wPgo8cD57JGNhcHRjaGFfdGl0bGV9Jm5ic3A7eyRjYXB0Y2hhfTwvcD4KPHA+eyRpbnB1dF9jYXB0Y2hhfTwvcD4KPHA+eyRpbnB1dF9zdWJtaXR9PC9wPgp7JGVuZGZvcm19CjwhLS0gVXBsb2FkIGZvcm0gdGVtcGxhdGUgLS0+Cg==]]></data>
	</file>
	<file>
	  <filename>/templates/uploadform.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[e3N0YXJ0Zm9ybX0KPHA+eyRwcm9tcHRfdXBsb2FkfXskaGlkZGVufXskaW5wdXRfc3VibWl0fTwvcD4Ke2VuZGZvcm19Cg==]]></data>
	</file>
	<file>
	  <filename>/templates/uploadlist.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[e2lmICRtZXNzYWdlICE9ICcnfQogIHtpZiAkZXJyb3IgIT0gJyd9CiAgICA8cD48Zm9udCBjb2xvcj0icmVkIj57JG1lc3NhZ2V9PC9mb250PjwvcD4KICB7ZWxzZX0KICAgIDxwPnskbWVzc2FnZX08L3A+CiAgey9pZn0Key9pZn0Ke2lmICRub2Zvcm0gPT0gJyd9Cnskc3RhcnRmb3JtfQogIDx0YWJsZT4KICAgIDx0cj48dGQ+eyRjYXRlZ29yeX08L3RkPjx0ZD57JGlucHV0X2NhdGVnb3J5fXskaW5wdXRfc2VsZWN0fXskaW5wdXRfaGlkZGVufTxici8+PC90ZD48L3RyPgogIDwvdGFibGU+CjxmaWVsZHNldD4KPGxlZ2VuZD4mbmJzcDt7JGxlZ2VuZF91cGxvYWRmb3JtfTombmJzcDs8L2xlZ2VuZD4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF9hdXRob3J9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfYXV0aG9yfTwvcD4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF9kZXN0bmFtZX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9kZXN0bmFtZX08YnIvPnskaW5mb19kZXN0bmFtZX08L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfc3VtbWFyeX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9zdW1tYXJ5fTxici8+eyRpbmZvX3N1bW1hcnl9PC9wPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X3RodW1ibmFpbH06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF90aHVtYm5haWx9PC9wPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X3JlcGxhY2V9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfcmVwbGFjZX08YnIvPnskaW5mb19yZXBsYWNlfTwvcD4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF9icm93c2V9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfYnJvd3NlfTwvcD4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij4mbmJzcDs8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X3N1Ym1pdH08L3A+CiAgPC9kaXY+CjwvZmllbGRzZXQ+CiAgPGJyLz4KeyRlbmRmb3JtfQp7aWYgJGl0ZW1jb3VudCA+IDB9Cjx0YWJsZSBjZWxsc3BhY2luZz0iMCIgY2xhc3M9InBhZ2V0YWJsZSI+Cgk8dGhlYWQ+CgkJPHRyPgoJCQk8dGg+Jm5ic3A7PC90aD4KCSAgICAgICAgICAgICAgICA8dGg+Jm5ic3A7PC90aD4KCQkJPHRoIHdpZHRoPSIxNSUiPnskdGl0bGV0ZXh0fTwvdGg+CgkJCTx0aCB3aWR0aD0iNDAlIj57JHN1bW1hcnl0ZXh0fTwvdGg+CgkJCTx0aD57JHNpemV0ZXh0fTwvdGg+CgkJCTx0aD57JGF1dGhvcnRleHR9PC90aD4KCQkJPHRoPnskaXB0ZXh0fTwvdGg+CgkJCTx0aD57JHBvc3RkYXRldGV4dH08L3RoPgoJCQk8dGg+eyRkbHRleHR9PC90aD4KCQkJPHRoIGNsYXNzPSJwYWdlaWNvbiI+Jm5ic3A7PC90aD4KCQkJPHRoIGNsYXNzPSJwYWdlaWNvbiI+Jm5ic3A7PC90aD4KCQk8L3RyPgoJPC90aGVhZD4KCTx0Ym9keT4KCXtmb3JlYWNoIGZyb209JGl0ZW1zIGl0ZW09ZW50cnl9CgkJPHRyIGNsYXNzPSJ7JGVudHJ5LT5yb3djbGFzc30iPgoJCQk8dGQ+eyRlbnRyeS0+aWR9PC90ZD4KCQkJPHRkPjxpbWcgc3JjPSJ7JGVudHJ5LT5pY29ufSIgaGVpZ2h0PSIxNiIgd2lkdGg9IjE2IiBhbHQ9InskZW50cnktPmljb259Ii8+PC90ZD4KCQkJPHRkPjxhIGhyZWY9InskZW50cnktPmVkaXR1cmx9Ij57JGVudHJ5LT5uYW1lfTwvYT48L3RkPgoJCQk8dGQ+eyRlbnRyeS0+c3VtbWFyeX08L3RkPgoJCQk8dGQ+eyRlbnRyeS0+c2l6ZX08L3RkPgoJCQk8dGQ+eyRlbnRyeS0+YXV0aG9yfTwvdGQ+CgkJCTx0ZD57JGVudHJ5LT5pcH08L3RkPgoJCQk8dGQ+eyRlbnRyeS0+ZGF0ZX08L3RkPgoJCQk8dGQ+eyRlbnRyeS0+ZG93bmxvYWRzfTwvdGQ+CgkJCTx0ZD57JGVudHJ5LT5lZGl0bGlua308L3RkPgoJCQk8dGQ+eyRlbnRyeS0+ZGVsZXRlbGlua308L3RkPgoJCTwvdHI+Cgl7L2ZvcmVhY2h9Cgk8L3Rib2R5Pgo8L3RhYmxlPgp7ZWxzZX0KPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgPHAgY2xhc3M9InBhZ2VvcHRpb25zIj5ObyBGaWxlcyBEZXRlY3RlZDwvcD4KPC9kaXY+CnsvaWZ9CnsvaWZ9Cg==]]></data>
	</file>
	<file>
	  <filename>/Uploads.module.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLWZpbGUtc3R5bGU6bGludXg7IHRhYi13aWR0aDoyOyBpbmRlbnQtdGFicy1tb2RlOnQ7IGMtYmFzaWMtb2Zmc2V0OiAyOyAtKi0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojIFZlcnNpb246IDEuMy4wLWJldGExLCBjYWxndXkxMDAwCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOgkvL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCmNsYXNzIFVwbG9hZHMgZXh0ZW5kcyBDTVNNb2R1bGUKewoJLyoqCgkqIFRoZSBkZWZhdWx0IHRlbXBsYXRlIHVzZWQgaW4gZW1haWwgbm90aWZpY2F0aW9ucwoJKi8KCXZhciAkZGZsdF9lbWFpbG5vdGlmeXRlbXBsYXRlID0gJwo8IS0tIEVtYWlsIGZvcm0gdGVtcGxhdGUgLS0+CjxwPlRoaXMgbWVzc2FnZSBpcyB0byBub3RpZnkgeW91IHRoYXQgYSBmaWxlIGhhcyBiZWVuIHVwbG9hZGVkIHRvIHlvdXIgd2Vic2l0ZS4gIFRoZSBkZXRhaWxzIG9mIHRoaXMgdXBsb2FkIGFyZSBhcyBmb2xsb3dzOjwvcD4KPHA+TmFtZTogeyRuYW1lfTwvcD4KPHA+U2l6ZTogeyRzaXplfTwvcD4KPHA+U3VtbWFyeTogeyRzdW1tYXJ5fTwvcD4KPHA+RGVzY3JpcHRpb246IHskZGVzY3JpcHRpb259PC9wPgo8cD5BdXRob3I6IHskYXV0aG9yfTwvcD4KPHA+SVAgQWRkcmVzczogeyRpcF9hZGRyZXNzfTwvcD4KPCEtLSBFbWFpbCBmb3JtIHRlbXBsYXRlIC0tPgonOwogIC8vICAvKioKICAvLyAgICAqIFRoZSBkZWZhdWx0IHRlbXBsYXRlIHVzZWQgZm9yIHRoZSB1cGxvYWQgZm9ybQogIC8vICAgICovCiAgLy8gICB2YXIgJGRmbHRfdXBsb2FkZm9ybXRlbXBsYXRlID0gJwogIC8vIDwhLS0gVXBsb2FkIGZvcm0gdGVtcGxhdGUgLS0+CiAgLy8geyRzdGFydGZvcm19eyRpbnB1dF9rZXl9CiAgLy8ge2lmICRub2F1dGhvciB9IAogIC8vIHskaW5wdXRfYXV0aG9yfQogIC8vIHtlbHNlfQogIC8vIDxwPnskcHJvbXB0X2F1dGhvcn0mbmJzcDt7JGlucHV0X2F1dGhvcn08L3A+CiAgLy8gey9pZn0KICAvLyA8cD57JHByb21wdF9zdW1tYXJ5fSZuYnNwO3skaW5wdXRfc3VtbWFyeX08L3A+CiAgLy8gPHA+eyRwcm9tcHRfZGVzY3JpcHRpb259Jm5ic3A7eyRpbnB1dF9kZXNjcmlwdGlvbn08L3A+CiAgLy8gPHA+eyRwcm9tcHRfZGVzdG5hbWV9Jm5ic3A7eyRpbnB1dF9kZXN0bmFtZX0mbmJzcDt7JGluZm9fZGVzdG5hbWV9PC9wPgogIC8vIDxwPnskcHJvbXB0X3RodW1ibmFpbH0mbmJzcDt7JGlucHV0X3RodW1ibmFpbH0mbmJzcDt7JGluZm9fdGh1bWJuYWlsfTwvcD4KICAvLyA8cD57JHByb21wdF9yZXBsYWNlfSZuYnNwO3skaW5wdXRfcmVwbGFjZX0mbmJzcDt7JGluZm9fcmVwbGFjZX08L3A+CiAgLy8gPHA+eyRwcm9tcHRfdXBsb2FkfXskaGlkZGVufXskaW5wdXRfYnJvd3NlfXskaW5wdXRfc3VibWl0fTwvcD4KICAvLyB7JGVuZGZvcm19CiAgLy8gPCEtLSBVcGxvYWQgZm9ybSB0ZW1wbGF0ZSAtLT4nCiAgLy8gOwoKICAvLyAgIC8qCiAgLy8gICAgKiBUaGUgZGVmYXVsdCB0ZW1wbGF0ZSB1c2VkIGZvciB0aGUgc3VtbWFyeSByZXBvcnQKICAvLyAgICAqLwogIC8vICAgdmFyICRkZmx0X3N1bW1hcnl0ZW1wbGF0ZSA9ICcKICAvLyA8IS0tIFN0YXJ0IFVwbG9hZCBEaXNwbGF5IFRlbXBsYXRlIC0tPgogIC8vIHtpZiAkaW5wdXRfZmlsdGVyICE9IFwnXCd9CiAgLy8geyRzdGFydGZvcm19CiAgLy8geyRwcm9tcHRfZmlsdGVyfXskaW5wdXRfZmlsdGVyfXskaGlkZGVuX3BhcmFtc317JGlucHV0X3N1Ym1pdH0KICAvLyB7JGVuZGZvcm19CiAgLy8gPGJyLz4KICAvLyB7JG1hdGNoZXN9Jm5ic3A7eyRtYXRjaGVzdGV4dH0KICAvLyB7L2lmfQogIC8vIDx0YWJsZT4KICAvLyAgIDx0cj4KICAvLyAgICAgPHRoPnskY2F0ZWdvcnl9PC90aD4KICAvLyAgICAgPHRoPnskbmFtZX08L3RoPgogIC8vICAgICA8dGg+eyRhdXRob3J9PC90aD4KICAvLyAgICAgPHRoPnskZGF0ZX08L3RoPgogIC8vICAgICA8dGg+eyRzaXplfTwvdGg+CiAgLy8gICAgIDx0aD57JGRldGFpbHN9PC90aD4KICAvLyAgICAgPHRoPnskc3VtbWFyeX08L3RoPgogIC8vICAgICA8dGg+eyRkZXNjcmlwdGlvbn08L3RoPgogIC8vICAgPC90cj4KICAvLyB7Zm9yZWFjaCBmcm9tPSRpdGVtcyBpdGVtPWVudHJ5fQogIC8vICAgPHRyIGNsYXNzPSJ7JGVudHJ5LT5yb3djbGFzc30iPiAKICAvLyAgICAgPHRoPnskZW50cnktPmNhdGVnb3J5fTwvdGQ+CiAgLy8gICAgIDx0ZD4KICAvLyAgICAgICB7JGVudHJ5LT51cGxvYWRfbmFtZX0KICAvLyAgICAgICA8YnIvPgogIC8vICAgICAgIHskZW50cnktPmRvd25sb2FkX3VybH0KICAvLyAgICAgICB7aWYgaXNzZXQoJGVudHJ5LT50aHVtYm5haWxfdXJsKX0KICAvLyAgICAgICAgIDxici8+eyR0aHVtYm5haWx9Jm5ic3A7PGltZyBzcmM9InskZW50cnktPnRodW1ibmFpbF91cmx9IiBib3JkZXI9IjAiLz4KICAvLyAgICAgICB7ZWxzZX0KICAvLyAgICAgICAgIDxici8+PGltZyBzcmM9InskZW50cnktPmljb251cmx9IiBib3JkZXI9IjAiLz4KICAvLyAgICAgICB7L2lmfQogIC8vICAgICA8L3RkPgogIC8vICAgICA8dGQ+eyRlbnRyeS0+YXV0aG9yfTwvdGQ+CiAgLy8gICAgIDx0ZD57JGVudHJ5LT5kYXRlfTwvdGQ+CiAgLy8gICAgIDx0ZD57JGVudHJ5LT5zaXplfTwvdGQ+CiAgLy8gICAgIDx0ZD57JGVudHJ5LT5kZXRhaWxsaW5rfTwvdGQ+CiAgLy8gICAgIDx0ZD57JGVudHJ5LT5zdW1tYXJ5fTwvdGQ+CiAgLy8gICAgIDx0ZD57JGVudHJ5LT5zdW1tYXJ5bGlua308L3RkPgogIC8vICAgPC90cj4KICAvLyB7L2ZvcmVhY2h9CiAgLy8gPC90YWJsZT4KICAvLyA8IS0tIEVuZCBVcGxvYWQgRGlzcGxheSBUZW1wbGF0ZSAtLT4KICAvLyAnOwoKICAvLyAgIC8qKgogIC8vICAgICogVGhlIGRlZmF1bHQgdGVtcGxhdGUgdXNlZCBmb3IgdGhlIGRldGFpbCByZXBvcnQKICAvLyAgICAqLwogIC8vICAgdmFyICRkZmx0X2RldGFpbHRlbXBsYXRlID0gJwogIC8vIDwhLS0gRGV0YWlsIHRlbXBsYXRlIC0tPgogIC8vIHtpZiAkaW5wdXRfZmlsdGVyICE9IFwnXCd9CiAgLy8geyRzdGFydGZvcm19CiAgLy8geyRwcm9tcHRfZmlsdGVyfXskaW5wdXRfZmlsdGVyfXskaGlkZGVuX3BhcmFtc317JGlucHV0X3N1Ym1pdH0KICAvLyB7JGVuZGZvcm19CiAgLy8gPGJyLz4KICAvLyB7JG1hdGNoZXN9Jm5ic3A7eyRtYXRjaGVzdGV4dH08YnIvPgogIC8vIHsvaWZ9CiAgLy8ge2ZvcmVhY2ggZnJvbT0kaXRlbXMgaXRlbT1lbnRyeX0KICAvLyA8dGFibGU+CiAgLy8gICB7aWYgJGVudHJ5LT50aHVtYm5haWxfdXJsfQogIC8vICAgICA8dHI+CiAgLy8gICAgICAgIDx0ZD57JHRodW1ibmFpbH08L3RkPgogIC8vICAgICAgICA8dGQ+PGltZyBzcmM9InskZW50cnktPnRodW1ibmFpbF91cmx9IiBib3JkZXI9MD48L3RkPgogIC8vICAgICAgPC90cj4KICAvLyAgIHsvaWZ9CiAgLy8gICA8dHI+CiAgLy8gICAgIDx0ZD57JGNhdGVnb3J5fTwvdGQ+CiAgLy8gICAgIDx0ZD57JGVudHJ5LT5jYXRlZ29yeX08L3RkPgogIC8vICAgPC90cj4KICAvLyAgIDx0cj4KICAvLyAgICAgPHRkPnskaWR9PC90ZD4KICAvLyAgICAgPHRkPnskZW50cnktPmlkfTwvdGQ+CiAgLy8gICA8L3RyPgogIC8vICAgPHRyPgogIC8vICAgICA8dGQ+eyRuYW1lfTwvdGQ+CiAgLy8gICAgIDx0ZD57JGVudHJ5LT51cGxvYWRfbmFtZX08YnIvPnskZW50cnktPmRvd25sb2FkX3VybH08L3RkPgogIC8vICAgPC90cj4KICAvLyAgIDx0cj4KICAvLyAgICAgPHRkPnskZGF0ZX08L3RkPgogIC8vICAgICA8dGQ+eyRlbnRyeS0+ZGF0ZX08L3RkPgogIC8vICAgPC90cj4KICAvLyAgIDx0cj4KICAvLyAgICAgPHRkPnskYXV0aG9yfTwvdGQ+CiAgLy8gICAgIDx0ZD57JGVudHJ5LT5hdXRob3J9PC90ZD4KICAvLyAgIDwvdHI+CiAgLy8gICA8dHI+CiAgLy8gICAgIDx0ZD57JHNpemV9PC90ZD4KICAvLyAgICAgPHRkPnskZW50cnktPnNpemV9PC90ZD4KICAvLyAgIDwvdHI+CiAgLy8gICA8dHI+CiAgLy8gICAgIDx0ZD57JHN1bW1hcnl9PC90ZD4KICAvLyAgICAgPHRkPnskZW50cnktPnN1bW1hcnl9PC90ZD4KICAvLyAgIDwvdHI+CiAgLy8gICA8dHI+CiAgLy8gICAgIDx0ZD57JHN1bW1hcnl9PC90ZD4KICAvLyAgICAgPHRkPnskZW50cnktPnN1bW1hcnlsaW5rfTwvdGQ+CiAgLy8gICA8L3RyPgogIC8vICAgPHRyPgogIC8vICAgICA8dGQ+eyRkZXNjcmlwdGlvbn08L3RkPgogIC8vICAgICA8dGQ+eyRlbnRyeS0+ZGVzY3JpcHRpb259PC90ZD4KICAvLyAgIDwvdHI+CiAgLy8gPC90YWJsZT4KICAvLyA8YnIvPgogIC8vIDxici8+CiAgLy8gey9mb3JlYWNofQogIC8vIDwhLS0gRGV0YWlsIHRlbXBsYXRlIC0tPgogIC8vICc7CgoJdmFyICR1cGxvYWRfZXh0ZW5zaW9ucyA9ICcnOwoKCS8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCglfZXhwbG9kZV93aXRoX2tleSggJFN0ciwgJGluZ2x1ZT0nPScsICRvdXRnbHVnPScmJyk7CglOT1QgUEFSVCBPRiBUSEUgTU9EVUxFIEFQSQoJCglFeHBsb2RlIGEgc3RyaW5nIGludG8gYW4gYXNzb2NpYXRpdmUgYXJyYXkKCS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCglmdW5jdGlvbiBleHBsb2RlX3dpdGhfa2V5KCRzdHIsICRpbmdsdWU9Jz0nLCAkb3V0Z2x1ZT0nJicpCgl7CgkJJHJldCA9IGFycmF5KCk7CgkJJGExID0gc3BsaXQoJG91dGdsdWUsJHN0cik7CgkJZm9yZWFjaCggJGExIGFzICRhMiApCgkJewoJCQlsaXN0KCAkaywgJHYgKSA9IHNwbGl0KCAkaW5nbHVlLCAkYTIgKTsKCQkJJHJldFsgJGsgXSA9ICR2OwoJCX0KCQlyZXR1cm4gJHJldDsKCX0KCgoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCV9pbXBsb2RlX3dpdGhfa2V5KCAkU3RyLCAkaW5nbHVlPSc9JywgJG91dHNnbHVnPScmJyk7CglOT1QgUEFSVCBPRiBUSEUgTU9EVUxFIEFQSQoJCglJbXBsb2RlIGFuIGFzc29jaWF0aXZlIGFycmF5IGludG8gYSBzdHJpbmcKCS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCglmdW5jdGlvbiBpbXBsb2RlX3dpdGhfa2V5KCRhc3NvYywgJGluZ2x1ZSA9ICc9JywgJG91dGdsdWUgPSAnJicpCgl7CgkJJHJldHVybiA9IG51bGw7CgkJZm9yZWFjaCAoJGFzc29jIGFzICR0ayA9PiAkdHYpICRyZXR1cm4gLj0gJG91dGdsdWUuJHRrLiRpbmdsdWUuJHR2OwoJCXJldHVybiBzdWJzdHIoJHJldHVybixzdHJsZW4oJG91dGdsdWUpKTsKCX0KCgkvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJX2NhdGVnb3J5UGF0aCggJGNhdGVnb3J5cGF0aCApCglOT1QgUEFSVCBPRiBUSEUgTU9EVUxFIEFQSQoJCglHZW5lcmF0ZSBhIHBhdGggdG8gYSBjZXJ0YWluIGNhdGVnb3J5CgktLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwoJZnVuY3Rpb24gX2NhdGVnb3J5UGF0aCggJGNhdGVnb3J5cGF0aCApCgl7CgkJZ2xvYmFsICRnQ21zOwoJCXJldHVybiAkZ0Ntcy0+Y29uZmlnWyd1cGxvYWRzX3BhdGgnXS5ESVJFQ1RPUllfU0VQQVJBVE9SLiRjYXRlZ29yeXBhdGg7Cgl9CgoKCS8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCglVcGxvYWRQYXRoKCAkY2F0ZWdvcnlwYXRoLCAkZmlsZW5hbWUgKQoJTk9UIFBBUlQgT0YgVEhFIE1PRFVMRSBBUEkKCQoJR2VuZXJhdGUgYSBmaWxlIHNwZWNpZmljYXRpb24gdG8gYSBmaWxlIGluIGEgY2VydGFpbiAKCWNhdGVnb3J5LgoJLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KCWZ1bmN0aW9uIF91cGxvYWRQYXRoKCAkY2F0ZWdvcnlwYXRoLCAkZmlsZW5hbWUgKQoJewoJCXJldHVybiAkdGhpcy0+X2NhdGVnb3J5UGF0aCggJGNhdGVnb3J5cGF0aCApLkRJUkVDVE9SWV9TRVBBUkFUT1IuJGZpbGVuYW1lOwoJfQoKCgkvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJX3Rlc3RpcCgkcmFuZ2UsJGlwKQoJTk9UIFBBUlQgT0YgVEhFIE1PRFVMRSBBUEkKCQoJVGhpcyBpcyBhIGZ1bmN0aW9uIHRvIG1hdGNoIGFuIElQIGFkZHJlc3MgYWdhaW5zdCBhbiAKCWFkZHJlc3MgcmFuZ2Ugc3BlY2lmaWNhdGlvbi4KCS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCglmdW5jdGlvbiBfdGVzdGlwKCRyYW5nZSwkaXApIAoJewoJCSRyZXN1bHQgPSAxOwoJCQoJCSMgSVAgUGF0dGVybiBNYXRjaGVyCgkJIyBKLkFkYW1zIDxqbmFAcmV0aW5hLm5ldD4KCQkjCgkJIyBNYXRjaGVzOgoJCSMKCQkjIHh4eC54eHgueHh4Lnh4eCAgICAgICAgKGV4YWN0KQoJCSMgeHh4Lnh4eC54eHguW3l5eS16enpdICAocmFuZ2UpCgkJIyB4eHgueHh4Lnh4eC54eHgvbm4gICAgKG5uID0gIyBiaXRzLCBjaXNjbyBzdHlsZSAtLSBpLmUuIC8yNCA9IGNsYXNzIEMpCgkJIwoJCSMgRG9lcyBub3QgbWF0Y2g6CgkJIyB4eHgueHh4Lnh4eC54eFt5eXktenp6XSAgKHJhbmdlLCBwYXJ0aWFsIG9jdGV0cyBub3Qgc3VwcG9ydGVkKQoJCQoJCWlmIChlcmVnKCIoWzAtOV0rKVwuKFswLTldKylcLihbMC05XSspXC4oWzAtOV0rKS8oWzAtOV0rKSIsJHJhbmdlLCRyZWdzKSkgewoJCQkjIHBlcmZvcm0gYSBtYXNrIG1hdGNoCgkJCSRpcGwgPSBpcDJsb25nKCRpcCk7CgkJCSRyYW5nZWwgPSBpcDJsb25nKCRyZWdzWzFdIC4gIi4iIC4gJHJlZ3NbMl0gLiAiLiIgLiAkcmVnc1szXSAuICIuIiAuICRyZWdzWzRdKTsKCQkKCQkJJG1hc2tsID0gMDsKCQkKCQkJZm9yICgkaSA9IDA7ICRpPCAzMTsgJGkrKykgewoJCQkJaWYgKCRpIDwgJHJlZ3NbNV0tMSkgewoJCQkJCSRtYXNrbCA9ICRtYXNrbCArIHBvdygyLCgzMC0kaSkpOwoJCQkJfQoJCQl9CgkJCgkJCWlmICgoJG1hc2tsICYgJHJhbmdlbCkgPT0gKCRtYXNrbCAmICRpcGwpKSB7CgkJCQlyZXR1cm4gMTsKCQkJfSBlbHNlIHsKCQkJCXJldHVybiAwOwoJCQl9CgkJfSBlbHNlIHsKCQkJIyByYW5nZSBiYXNlZAoJCQkkbWFza29jdHMgPSBzcGxpdCgiXC4iLCRyYW5nZSk7CgkJCSRpcG9jdHMgPSBzcGxpdCgiXC4iLCRpcCk7CgkJCgkJCSMgcGVyZm9ybSBhIHJhbmdlIG1hdGNoCgkJCWZvciAoJGk9MDsgJGk8NDsgJGkrKykgewoJCQkJaWYgKGVyZWcoIlxbKFswLTldKylcLShbMC05XSspXF0iLCRtYXNrb2N0c1skaV0sJHJlZ3MpKSB7CgkJCQkJaWYgKCAoJGlwb2N0c1skaV0gPiAkcmVnc1syXSkgfHwgKCRpcG9jdHNbJGldIDwgJHJlZ3NbMV0pKSB7CgkJCQkJCSRyZXN1bHQgPSAwOwoJCQkJCX0KCQkJCX0KCQkJCWVsc2UKCQkJCXsKCQkJCQlpZiAoJG1hc2tvY3RzWyRpXSA8PiAkaXBvY3RzWyRpXSkgewoJCQkJCQkkcmVzdWx0ID0gMDsKCQkJCQl9CgkJCQl9CgkJCX0KCQl9CgkJcmV0dXJuICRyZXN1bHQ7Cgl9CgoKCS8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCglnZXRDYXRlZ29yeUZyb21OYW1lKCkKCVBVQkxJQwoJCglyZXR1cm4gdGhlIGNhdGVnb3J5IGlkIGdpdmVuIGEgbmFtZSwgb3IgZmFsc2UKCS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCglmdW5jdGlvbiBnZXRDYXRlZ29yeUZyb21OYW1lKCRuYW1lKQoJewoJCSRkYiA9JiAkdGhpcy0+R2V0RGIoKTsKCQkkcXVlcnkgPSAiU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXggKCkuIm1vZHVsZV91cGxvYWRzX2NhdGVnb3JpZXMiLgoJCSIgV0hFUkUgdXBsb2FkX2NhdGVnb3J5X25hbWUgPSA/IjsKCQkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUgKCRxdWVyeSwgYXJyYXkgKCRuYW1lKSk7CgkJJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKTsKCQlpZiggISRyb3cgKSAKCQl7CgkJCXJldHVybiBmYWxzZTsKCQl9CgkJcmV0dXJuICRyb3c7Cgl9CgoKCS8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCglnZXRDYXRlZ29yeUxpc3QoKQoJUFVCTElDCgkKCXJldHVybiBhIGxpc3Qgb2YgY2F0ZWdvcnkgbmFtZXMgYW5kIGlkJ3MKCS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCglmdW5jdGlvbiBnZXRDYXRlZ29yeUxpc3QoKQoJewoJCSRkYiA9JiAkdGhpcy0+R2V0REIoKTsKCQkkY2F0ZWdvcnlsaXN0ID0gYXJyYXkoKTsKCQkkcXVlcnkgPSAiU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfY2F0ZWdvcmllcyI7CgkJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcXVlcnkgKTsKCQlpZiggISRkYnJlc3VsdCApCgkJewoJCQlyZXR1cm4gJGNhdGVnb3J5bGlzdDsKCQl9CgkJCgkJd2hpbGUoICRyb3cgPSAkZGJyZXN1bHQtPkZldGNoUm93KCkgKQoJCXsKCQkJJGNhdGVnb3J5bGlzdFskcm93Wyd1cGxvYWRfY2F0ZWdvcnlfbmFtZSddXSA9ICRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9pZCddOwoJCX0KCQlyZXR1cm4gJGNhdGVnb3J5bGlzdDsKCX0KCgoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCWdldENhdGVnb3J5UGF0aEZyb21JRCgpCglQVUJMSUMKCQoJcmV0dXJuIHRoZSBjYXRlZ29yeSBwYXRoIGdpdmVuIGEgY2F0ZWdvcnkgaWQKCS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCglmdW5jdGlvbiBnZXRDYXRlZ29yeVBhdGhGcm9tSUQoICRjYXRlZ29yeV9pZCApCgl7CgkJJGRiID0mICR0aGlzLT5HZXREYigpOwoJCSRxdWVyeSA9ICJTRUxFQ1QgKiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc19jYXRlZ29yaWVzIi4KCQkiIFdIRVJFIHVwbG9hZF9jYXRlZ29yeV9pZCA9ID8iOwoJCSRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHF1ZXJ5LCBhcnJheSggJGNhdGVnb3J5X2lkICkgKTsKCQlpZiggISRkYnJlc3VsdCApCgkJewoJCQlyZXR1cm47CgkJfQoJCSRyb3cgPSAkZGJyZXN1bHQtPkZldGNoUm93KCk7CgkJaWYoICEkcm93ICkKCQl7CgkJCXJldHVybjsKCQl9CgkJcmV0dXJuICRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9wYXRoJ107Cgl9CgoKCS8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCglnZXRDYXRlZ29yeVBhdGhGcm9tRmlsZUlEKCkKCVBVQkxJQwoJCglyZXR1cm4gdGhlIGNhdGVnb3J5IHBhdGggZ2l2ZW4gYSBmaWxlIGlkCgktLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwoJZnVuY3Rpb24gZ2V0Q2F0ZWdvcnlQYXRoRnJvbUZpbGVJRCggJGZpbGVfaWQgKQoJewoJCSRkYiA9JiAkdGhpcy0+R2V0RGIoKTsKCQkkcXVlcnkgPSAiU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHMiLgoJCSIgV0hFUkUgdXBsb2FkX2lkID0gPyI7CgkJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcXVlcnksIGFycmF5KCAkZmlsZV9pZCkgKTsKCQlpZiggISRkYnJlc3VsdCApCgkJewoJCQlyZXR1cm47CgkJfQoJCQoJCSRyb3cgPSAkZGJyZXN1bHQtPkZldGNoUm93KCk7CgkJaWYoICEkcm93ICkKCQl7CgkJCXJldHVybjsKCQl9CgkJJGNhdCA9ICRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9pZCddOwoJCSRxdWVyeSA9ICJTRUxFQ1QgKiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc19jYXRlZ29yaWVzIFdIRVJFIHVwbG9hZF9jYXRlZ29yeV9pZCA9ID8iOwoJCSRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHF1ZXJ5LCBhcnJheSggJGNhdCApICk7CgkJaWYoICEkZGJyZXN1bHQgKQoJCXsKCQkJcmV0dXJuOwoJCX0KCQkkcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdygpOwoJCWlmKCAhJHJvdyApCgkJewoJCQlyZXR1cm47CgkJfQoJCXJldHVybiAkcm93Wyd1cGxvYWRfY2F0ZWdvcnlfcGF0aCddOwoJfQoKCgkvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJZ2V0RmlsZUxpc3QoICRjYXRlZ29yeV9pZCApCglQVUJMSUMKCQoJcmV0dXJuIGEgbGlzdCBvZiBmaWxlcyBpbiB0aGUgZ2l2ZW4gY2F0ZWdvcnkKCS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCglmdW5jdGlvbiBnZXRGaWxlTGlzdCggJGNhdGVnb3J5X2lkICkKCXsKCQkkZGIgPSYgJHRoaXMtPkdldERiKCk7CgkJJGZpbGVsaXN0ID0gYXJyYXkoKTsKCQkkcXVlcnkgPSAiU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHMiLgoJCSIgV0hFUkUgdXBsb2FkX2NhdGVnb3J5X2lkID0gPyI7CgkJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcXVlcnksIGFycmF5KCAkY2F0ZWdvcnlfaWQgKSApOwoJCWlmKCAhJGRicmVzdWx0ICkKCQl7CgkJCXJldHVybiAkZmlsZWxpc3Q7CgkJfQoJCQoJCXdoaWxlKCAkcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdygpICkKCQl7CgkJCSRmaWxlbGlzdFskcm93Wyd1cGxvYWRfbmFtZSddXSA9ICRyb3dbJ3VwbG9hZF9pZCddOwoJCX0KCQlyZXR1cm4gJGZpbGVsaXN0OwoJfQoKCgkvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJZ2V0RmlsZU5hbWUoICRmaWxlX2lkICkKCVBVQkxJQwoJCglyZXR1cm4gYSBsaXN0IG9mIGZpbGVzIGluIHRoZSBnaXZlbiBjYXRlZ29yeQoJLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KCWZ1bmN0aW9uIGdldEZpbGVOYW1lKCAkZmlsZV9pZCApCgl7CgkJJGRiID0mICR0aGlzLT5HZXREYigpOwoJCSRxdWVyeSA9ICJTRUxFQ1QgKiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2FkcyIuCgkJIiBXSEVSRSB1cGxvYWRfaWQgPSA/IjsKCQkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxdWVyeSwgYXJyYXkoICRmaWxlX2lkICkgKTsKCQkkcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdygpOwoJCXJldHVybiAkcm93Wyd1cGxvYWRfbmFtZSddOwoJfQoJCgkKCS8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCglnZXRGaWxlRGV0YWlscyggJGZpbGVfaWQgKQoJUFVCTElDCgkKCXJldHVybiBhIGxpc3Qgb2YgZmlsZXMgaW4gdGhlIGdpdmVuIGNhdGVnb3J5CgktLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwoJZnVuY3Rpb24gZ2V0RmlsZURldGFpbHMoICRmaWxlX2lkICkKCXsKCQkkZGIgPSYgJHRoaXMtPkdldERiKCk7CgkJJHF1ZXJ5ID0gIlNFTEVDVCAqIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzIi4KCQkiIFdIRVJFIHVwbG9hZF9pZCA9ID8iOwoJCSRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHF1ZXJ5LCBhcnJheSggJGZpbGVfaWQgKSApOwoJCSRyb3cgPSAkZGJyZXN1bHQtPkZldGNoUm93KCk7CgkJcmV0dXJuICRyb3c7Cgl9CgoJCgkvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJX2ZpeFRvQWRqdXN0VGFibGVTdHJ1Y3R1cmUxKCkKCU5PVCBQQVJUIE9GIFRIRSBNT0RVTEUgQVBJCgkKCS8vIG1vdmUgdGhlIGRlc2NyaXB0aW9uIGZpZWxkLCBldGMsIGludG8gdGhlIHByb3BlciBwbGFjZS4KCS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCglmdW5jdGlvbiBfZml4VG9BZGp1c3RUYWJsZVN0cnVjdHVyZTEoKQoJewoJCSRkYiA9JiAkdGhpcy0+R2V0RGIoKTsKCQoJCS8vIHRhYmxlIHNjaGVtYSBkZXNjcmlwdGlvbgoJCSRmbGRzID0gInVwbG9hZF9pZCBJIEtFWSwKCQkJdXBsb2FkX2NhdGVnb3J5X2lkIEksCgkJCXVwbG9hZF9uYW1lIEMoMjU1KSwKCQkJdXBsb2FkX2F1dGhvciBDKDI1NSksCgkJCXVwbG9hZF9zdW1tYXJ5IEMoMjU1KSwgCgkJCXVwbG9hZF9kZXNjcmlwdGlvbiBYLAoJCQl1cGxvYWRfaXAgQygyNTUpLAoJCQl1cGxvYWRfc2l6ZSBJLAoJCQl1cGxvYWRfZGF0ZSBUCgkJIjsKCQoJCS8vIGNyZWF0ZSBpdC4gVGhpcyBzaG91bGQgZG8gZXJyb3IgY2hlY2tpbmcsIGJ1dCBJJ20gYSBsYXp5IHNvZC4KCQkkdGFib3B0YXJyYXkgPSBhcnJheSAoJ215c3FsJyA9PiAnVFlQRT1NeUlTQU0nKTsKCQkkZGljdCA9IE5ld0RhdGFEaWN0aW9uYXJ5ICgkZGIpOwoJCSRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNRTCAoY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc19uZXciLAoJCSRmbGRzLCAkdGFib3B0YXJyYXkpOwoJCSRkaWN0LT5FeGVjdXRlU1FMQXJyYXkgKCRzcWxhcnJheSk7CgkKCQkvLyBub3cgaGF2ZSB0byB0cmFuc2ZlciB0aGUgZGF0YQoJCSRxID0gIklOU0VSVCBJTlRPICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc19uZXcgCgkJU0VMRUNUIHVwbG9hZF9pZCwgdXBsb2FkX2NhdGVnb3J5X2lkLCB1cGxvYWRfbmFtZSwgdXBsb2FkX2F1dGhvciwgdXBsb2FkX2Rlc2NyaXB0aW9uLCAnJywKCQl1cGxvYWRfaXAsIHVwbG9hZF9zaXplLCB1cGxvYWRfZGF0ZSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2FkcyI7CgkJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcSApOwoJCWlmKCAhJGRicmVzdWx0ICkgewoJCQkkdGhpcy0+U2V0RXJyb3IoICRkYi0+RXJyb3JNc2coKSApOwoJCQlyZXR1cm4gZmFsc2U7CgkJfQoJCgkJLy8gYW5kIGRyb3AgdGhlIG9yaWdpbmFsIHRhYmxlCgkJJHNxbGFycmF5ID0gJGRpY3QtPkRyb3BUYWJsZVNRTCAoY21zX2RiX3ByZWZpeCAoKS4ibW9kdWxlX3VwbG9hZHMiLAoJCQkgJGZsZHMsICR0YWJvcHRhcnJheSk7CgkJJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSggJHNxbGFycmF5ICk7CgkKCQkvLyBhbmQgcmVuYW1lIHRoZSBuZXcgdGFibGUKCQkkc3FsYXJyYXkgPQoJCSRkaWN0LT5SZW5hbWVUYWJsZVNRTCggY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc19uZXciLAoJCQkgY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2FkcyIgKTsKCQkkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCAkc3FsYXJyYXkgKTsKCX0KCgoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCV9maXhUb0FkanVzdFRhYmxlU3RydWN0dXJlMigpCglOT1QgUEFSVCBPRiBUSEUgTU9EVUxFIEFQSQoJCgkvLyBtb3ZlIHRoZSBkZXNjcmlwdGlvbiBmaWVsZCwgZXRjLCBpbnRvIHRoZSBwcm9wZXIgcGxhY2UuCgktLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwoJZnVuY3Rpb24gX2ZpeFRvQWRqdXN0VGFibGVTdHJ1Y3R1cmUyKCkKCXsKCQkkZGIgPSYgJHRoaXMtPkdldERiKCk7CgkJCgkJLy8gdGFibGUgc2NoZW1hIGRlc2NyaXB0aW9uCgkJJGZsZHMgPSAidXBsb2FkX2lkIEkgS0VZLAoJCQl1cGxvYWRfY2F0ZWdvcnlfaWQgSSwKCQkJdXBsb2FkX25hbWUgQygyNTUpLAoJCQl1cGxvYWRfYXV0aG9yIEMoMjU1KSwKCQkJdXBsb2FkX3N1bW1hcnkgQygyNTUpLCAKCQkJdXBsb2FkX2Rlc2NyaXB0aW9uIFgsCgkJCXVwbG9hZF9pcCBDKDI1NSksCgkJCXVwbG9hZF9zaXplIEksCgkJCXVwbG9hZF9kYXRlIFQKCQkiOwoJCQoJCS8vIGNyZWF0ZSBpdC4gVGhpcyBzaG91bGQgZG8gZXJyb3IgY2hlY2tpbmcsIGJ1dCBJJ20gYSBsYXp5IHNvZC4KCQkkdGFib3B0YXJyYXkgPSBhcnJheSAoJ215c3FsJyA9PiAnVFlQRT1NeUlTQU0nKTsKCQkkZGljdCA9IE5ld0RhdGFEaWN0aW9uYXJ5ICgkZGIpOwoJCSRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNRTCAoY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc19uZXciLAoJCQkkZmxkcywgJHRhYm9wdGFycmF5KTsKCQkkZGljdC0+RXhlY3V0ZVNRTEFycmF5ICgkc3FsYXJyYXkpOwoJCQoJCS8vIG5vdyBoYXZlIHRvIHRyYW5zZmVyIHRoZSBkYXRhCgkJJHEgPSAiSU5TRVJUIElOVE8gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX25ldyAKCQlTRUxFQ1QgdXBsb2FkX2lkLCB1cGxvYWRfY2F0ZWdvcnlfaWQsIHVwbG9hZF9uYW1lLCB1cGxvYWRfYXV0aG9yLCAKCQl1cGxvYWRfc3VtbWFyeSwgdXBsb2FkX2Rlc2NyaXB0aW9uLCB1cGxvYWRfaXAsIHVwbG9hZF9zaXplLCB1cGxvYWRfZGF0ZSAKCQlGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2FkcyI7CgkJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcSApOwoJCWlmKCAhJGRicmVzdWx0ICkgewoJCQkkdGhpcy0+U2V0RXJyb3IoICRkYi0+RXJyb3JNc2coKSApOwoJCQlyZXR1cm4gZmFsc2U7CgkJfQoJCQoJCS8vIGFuZCBkcm9wIHRoZSBvcmlnaW5hbCB0YWJsZQoJCSRzcWxhcnJheSA9CgkJJGRpY3QtPkRyb3BUYWJsZVNRTCAoY21zX2RiX3ByZWZpeCAoKS4ibW9kdWxlX3VwbG9hZHMiLAoJCQkkZmxkcywgJHRhYm9wdGFycmF5KTsKCQkkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCAkc3FsYXJyYXkgKTsKCQkKCQkvLyBhbmQgcmVuYW1lIHRoZSBuZXcgdGFibGUKCQkkc3FsYXJyYXkgPSAkZGljdC0+UmVuYW1lVGFibGVTUUwoIGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfbmV3IiwKCQkJY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2FkcyIgKTsKCQkkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCAkc3FsYXJyYXkgKTsKCX0KCgoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCV9nZXRVcGxvYWRDYXRlZ29yeURldGFpbHMoICRjYXRlZ29yeV9pZCApCglOT1QgUEFSVCBPRiBUSEUgTU9EVUxFIEFQSQoJCglyZXR1cm5zIGFuIGFzc29jaWF0aXZlIGFycmF5IHJlcHJlc2VudGluZyB0aGUgc3BlY2lmaWMKCXJvdyBvZiB0aGUgY2F0ZWdvcmllcyBkYXRhYmFzZSBtYXRjaGluZyB0aGUgc3VwcGxpZWQgCgljYXRlZ29yeSBpZAoJLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KCWZ1bmN0aW9uIF9nZXRVcGxvYWRDYXRlZ29yeURldGFpbHMoICRjYXRlZ29yeV9pZCApCgl7CgkJJGRiID0mICR0aGlzLT5HZXREYigpOwoJCSRxdWVyeSA9ICJTRUxFQ1QgKiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc19jYXRlZ29yaWVzIAoJCVdIRVJFIHVwbG9hZF9jYXRlZ29yeV9pZCA9ID8iOwoJCSRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHF1ZXJ5LCBhcnJheSggJGNhdGVnb3J5X2lkICkgKTsKCQlpZiggISRkYnJlc3VsdCApIHsKCQkJcmV0dXJuOwoJCX0KCQoJCSRyb3cgPSAkZGJyZXN1bHQtPkZldGNoUm93KCk7CgkJaWYoICEkcm93ICkgewoJCQlyZXR1cm47CgkJfQoJCXJldHVybiAkcm93OwoJfQoJCgkKCS8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCglfZ2V0VXBsb2FkRmlsZURldGFpbHMoICRjYXRlZ29yeV9pZCApCglOT1QgUEFSVCBPRiBUSEUgTU9EVUxFIEFQSQoJCglyZXR1cm5zIGFuIGFzc29jaWF0aXZlIGFycmF5IG1hdGNoaW5nIHRoZSBzcGVjaWZpYyByb3cgb2YKCXRoZSB1cGxvYWRzIHRhYmxlIG1hdGNoaW5nIHRoZSBzcGVjaWZpZWQgdXBsb2FkIGlkCgktLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwoJZnVuY3Rpb24gX2dldFVwbG9hZEZpbGVEZXRhaWxzKCAkZmlsZV9pZCApCgl7CgkJJGRiID0mICR0aGlzLT5HZXREYigpOwoJCSRxdWVyeSA9ICJTRUxFQ1QgKiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2FkcyAKCQlXSEVSRSB1cGxvYWRfaWQgPSA/IjsKCQkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxdWVyeSwgYXJyYXkoICRmaWxlX2lkICkgKTsKCQlpZiggISRkYnJlc3VsdCApIHsKCQkJcmV0dXJuOwoJCX0KCQkkcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdygpOwoJCWlmKCAhJHJvdyApIHsKCQkJcmV0dXJuOwoJCX0KCQlyZXR1cm4gJHJvdzsKCX0KCQoJCgkvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJX3NjYW5kaXIoICRkaXIsICRzb3J0ICkKCU5PVCBQQVJUIE9GIFRIRSBNT0RVTEUgQVBJCgkKCVNjYW4gYSBkaXJlY3RvcnkgYW5kIHJldHVybiBhIHNvcnRlZCBsaXN0LgoJLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KCWZ1bmN0aW9uIF9zY2FuZGlyKCRkaXIgPSAnLi8nLCAkc29ydCA9IDApCgl7CgkJJGRpcl9vcGVuID0gQG9wZW5kaXIoJGRpcik7CgoJCWlmICghICRkaXJfb3BlbikKCQkJcmV0dXJuIGZhbHNlOwoKCQkkZmlsZXMgPSBhcnJheSgpOwoJCXdoaWxlICgoJGRpcl9jb250ZW50ID0gcmVhZGRpcigkZGlyX29wZW4pKSAhPSBmYWxzZSkKCQl7CgkJCS8vIHdlIGlnbm9yZSBpbmRleC5odG1sIGZpbGVzIGlmIHRoZSBwcmVmZXJlbmNlIGlzIHNldAoJCQlpZiggJGRpcl9jb250ZW50ID09ICdpbmRleC5odG1sJyAmJiAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnY3JlYXRlX2R1bW15X2luZGV4X2h0bWwnKSkKCQkJewoJCQkJY29udGludWU7CgkJCX0KCgkJCS8vIGlnbm9yZSBkb3QgZmlsZXMKCQkJaWYoIHByZWdfbWF0Y2goICIvXlwuLyIsICRkaXJfY29udGVudCApICkKCQkJewoJCQkJY29udGludWU7CgkJCX0KCgkJCSRmaWxlc1tdID0gJGRpcl9jb250ZW50OwoJCX0KCgkJaWYoIGlzX2FycmF5KCAkZmlsZXMgKSApCgkJewoJCQlpZiAoJHNvcnQgPT0gMSkKCQkJCXJzb3J0KCRmaWxlcywgU09SVF9TVFJJTkcpOwoJCQllbHNlCgkJCQlzb3J0KCRmaWxlcywgU09SVF9TVFJJTkcpOwoJCX0KCQlyZXR1cm4gJGZpbGVzOwoJfQoJCgkKCS8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCglfbWtkaXJyKCAkcGF0aG5hbWUsICRtb2RlICkKCU5PVCBQQVJUIE9GIFRIRSBNT0RVTEUgQVBJCgkKCU1ha2UgYSBkaXJlY3RvcnkgcmVjdXJzaXZlbHkKCS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCglmdW5jdGlvbiBfbWtkaXJyICgkcGF0aG5hbWUsICRtb2RlID0gMDc3NykKCXsKCQkvLyBDaGVjayBpZiBkaXJlY3RvcnkgYWxyZWFkeSBleGlzdHMKCQlpZiAoaXNfZGlyICgkcGF0aG5hbWUpIHx8IGVtcHR5ICgkcGF0aG5hbWUpKQoJCXsKCQkJcmV0dXJuIHRydWU7CgkJfQoJCgkJLy8gRW5zdXJlIGEgZmlsZSBkb2VzIG5vdCBhbHJlYWR5IGV4aXN0IHdpdGggdGhlIHNhbWUgbmFtZQoJCWlmIChpc19maWxlICgkcGF0aG5hbWUpKQoJCXsKCQkJLy8gUkM6IE1vZGlmaWNhdGlvbiBzdWNoIHRoYXQgdGhpcyBpc24ndCBhbiBlcnJvcgoJCQlyZXR1cm4gdHJ1ZTsKCQl9CgkKCQkvLyBDcmF3bCB1cCB0aGUgZGlyZWN0b3J5IHRyZWUKCQkkbmV4dF9wYXRobmFtZSA9CgkJc3Vic3RyICgkcGF0aG5hbWUsIDAsIHN0cnJwb3MgKCRwYXRobmFtZSwgRElSRUNUT1JZX1NFUEFSQVRPUikpOwoJCWlmICgkdGhpcy0+X21rZGlyciAoJG5leHRfcGF0aG5hbWUsICRtb2RlKSkKCQl7CgkJCWlmICghZmlsZV9leGlzdHMgKCRwYXRobmFtZSkpCgkJCXsKCQkJCXJldHVybiBta2RpciAoJHBhdGhuYW1lLCAkbW9kZSk7CgkJCX0KCQl9CgkKCQlyZXR1cm4gZmFsc2U7Cgl9CgkKCQoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCV9pc1ZhbGlkRmlsZW5hbWUoICRmaWxlbmFtZSApCglOT1QgUEFSVCBPRiBUSEUgTU9EVUxFIEFQSQoJCglUZXN0IGEgc3RyaW5nIHRvIHNlZSBpZiBpdCBpcyBhIHZhbGlkIGZpbGVuYW1lIChpLmUpIHRoZQoJZXh0ZW5zaW9uIGZhbGxzIGluIG91ciBhbGxvd2VkIGV4dGVuc2lvbnMsIGFuZCB0aGVyZSBhcmUKCW5vIGludmFsaWQgY2hhcmFjdGVycy4KCS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCglmdW5jdGlvbiBfaXNWYWxpZEZpbGVuYW1lICgkZmlsZW5hbWUpCgl7CgkJJGZpbGVfbmFtZSA9IHRyaW0gKCRmaWxlbmFtZSk7CgkJJGV4dGVuc2lvbiA9IHN0cnRvbG93ZXIgKHN0cnJjaHIgKCRmaWxlX25hbWUsICIuIikpOwoJCgkJLy8gYXJyYXkgb2YgZmlsZXMgd2UgZG9uJ3QgYWxsb3cKCQkkZXh0X3N0ciA9ICR0aGlzLT51cGxvYWRfZXh0ZW5zaW9uczsKCQlpZiggJGV4dF9zdHIgPT0gJycgKQoJCXsKCQkJJGV4dF9zdHIgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSAoInZhbGlkX3VwbG9hZGV4dGVuc2lvbnMiKTsKCQl9CgkJJGV4dF9hcnJheSA9IHNwbGl0ICgiLCIsICRleHRfc3RyKTsKCQkkZXh0X2NvdW50ID0gY291bnQgKCRleHRfYXJyYXkpOwoJCgkJaWYgKCEkZmlsZV9uYW1lKQoJCXsKCQkJcmV0dXJuIGZhbHNlOwoJCX0KCQllbHNlCgkJewoJCQlpZiAoISRleHRfYXJyYXkpCgkJCXsKCQkJCXJldHVybiB0cnVlOwoJCQl9CgkJCWVsc2UKCQkJewoJCQkJZm9yZWFjaCAoJGV4dF9hcnJheSBhcyAkdmFsdWUpCgkJCQl7CgkJCQkJJGZpcnN0X2NoYXIgPSBzdWJzdHIgKCR2YWx1ZSwgMCwgMSk7CgkJCQkJaWYgKCRmaXJzdF9jaGFyIDw+ICIuIikKCQkJCQl7CgkJCQkJCSRleHRlbnNpb25zW10gPSAiLiIuc3RydG9sb3dlciAoJHZhbHVlKTsKCQkJCQl9CgkJCQkJZWxzZQoJCQkJCXsKCQkJCQkJJGV4dGVuc2lvbnNbXSA9IHN0cnRvbG93ZXIgKCR2YWx1ZSk7CgkJCQkJfQoJCQkJfQoKCQkJCSR2YWxpZF9leHRlbnNpb24gPSBmYWxzZTsKCQkJCWZvcmVhY2ggKCRleHRlbnNpb25zIGFzICR2YWx1ZSkKCQkJCXsKCQkJCQlpZiAoJHZhbHVlID09ICRleHRlbnNpb24pCgkJCQkJewoJCQkJCQkkdmFsaWRfZXh0ZW5zaW9uID0gdHJ1ZTsKCQkJCQkJYnJlYWs7CgkJCQkJfQoJCQkJfQoJCQlyZXR1cm4gJHZhbGlkX2V4dGVuc2lvbjsKCQl9Cgl9Cn0KCgogIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgRU5EIE9GIFVUSUxJVFkgRlVOQ1RJT05TCiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCgoKICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICBHZXROYW1lKCkKICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KICBmdW5jdGlvbiBHZXROYW1lICgpCiAgewogICAgcmV0dXJuICdVcGxvYWRzJzsKICB9CgoKICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICBHZXRGcmllbmRseU5hbWUoKQogICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwogIGZ1bmN0aW9uIEdldEZyaWVuZGx5TmFtZSAoKQogIHsKICAgIHJldHVybiAkdGhpcy0+TGFuZyAoJ2ZyaWVuZGx5bmFtZScpOwogIH0KCgoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCUdldEV2ZW50RGVzY3JpcHRpb24oICRuYW1lICkKCS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCglmdW5jdGlvbiBHZXRFdmVudERlc2NyaXB0aW9uKCAkbmFtZSApCgl7CgkJc3dpdGNoICggJG5hbWUgKQoJCXsKCQkJY2FzZSAnT25VcGxvYWQnOgoJCQkJcmV0dXJuICR0aGlzLT5MYW5nKCdpbmZvX2V2ZW50X29udXBsb2FkJyk7CgkJCQlicmVhazsKCQkJY2FzZSAnT25SZW1vdmUnOgoJCQkJcmV0dXJuICR0aGlzLT5MYW5nKCdpbmZvX2V2ZW50X29ucmVtb3ZlJyk7CgkJCQlicmVhazsKCQkJY2FzZSAnT25Eb3dubG9hZCc6CgkJCQlyZXR1cm4gJHRoaXMtPkxhbmcoJ2luZm9fZXZlbnRfb25kb3dubG9hZCcpOwoJCQkJYnJlYWs7CgkJCWNhc2UgJ09uQ3JlYXRlQ2F0ZWdvcnknOgoJCQkJcmV0dXJuICR0aGlzLT5MYW5nKCdpbmZvX2V2ZW50X29uY3JlYXRlY2F0ZWdvcnknKTsKCQkJCWJyZWFrOwoJCQljYXNlICdPbkRlbGV0ZUNhdGVnb3J5JzoKCQkJCXJldHVybiAkdGhpcy0+TGFuZygnaW5mb19ldmVudF9vbmRlbGV0ZWNhdGVnb3J5Jyk7CgkJCQlicmVhazsKCQl9CgkJcmV0dXJuICIiOwoJfQoKCgkvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJR2V0VmVyc2lvbigpCgktLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwoJZnVuY3Rpb24gR2V0VmVyc2lvbigpCgl7CgkJcmV0dXJuICcxLjQuMSc7Cgl9CgoKCS8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCglHZXRFdmVudEhlbHAoICRldmVudG5hbWUgKQoJLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KCWZ1bmN0aW9uIEdldEV2ZW50SGVscCAoICRldmVudG5hbWUgKQoJewoJCXJldHVybiAkdGhpcy0+TGFuZyAoJ2hlbHBfJy4kZXZlbnRuYW1lKTsKCX0KCgkvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJR2V0SGVscCgpCgktLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwoJZnVuY3Rpb24gR2V0SGVscCAoKQoJewoJCXJldHVybiAkdGhpcy0+TGFuZyAoJ2hlbHAnKTsKCX0KCgoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCUdldEF1dGhvcigpCgktLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwoJZnVuY3Rpb24gR2V0QXV0aG9yICgpCgl7CgkJcmV0dXJuICdjYWxndXkxMDAwJzsKCX0KCgoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCUdldEF1dGhvckVtYWlsKCkKCS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCglmdW5jdGlvbiBHZXRBdXRob3JFbWFpbCAoKQoJewoJCXJldHVybiAncm9iQHRlY2hjb20uZHluZG5zLm9yZyc7Cgl9CgoKCS8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCglHZXRDaGFuZ2VMb2coKQoJLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KCWZ1bmN0aW9uIEdldENoYW5nZUxvZyAoKQoJewoJCSRmbiA9IGRpcm5hbWUoX19GSUxFX18pLicvY2hhbmdlbG9nLmluYyc7CgkJcmV0dXJuIEBmaWxlX2dldF9jb250ZW50cygkZm4pOwoJfQoKCgkvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJSXNQbHVnaW5Nb2R1bGUoKQoJLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KCWZ1bmN0aW9uIElzUGx1Z2luTW9kdWxlICgpCgl7CgkJcmV0dXJuIHRydWU7Cgl9CgoKCS8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCglIYXNBZG1pbigpCgktLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwoJZnVuY3Rpb24gSGFzQWRtaW4gKCkKCXsKCQlyZXR1cm4gdHJ1ZTsKCX0KCgoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCUdldEFkbWluU2VjdGlvbigpCgktLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwoJZnVuY3Rpb24gR2V0QWRtaW5TZWN0aW9uICgpCgl7CgkJcmV0dXJuICdjb250ZW50JzsKCX0KCgoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCU1pbmltdW1DTVNWZXJzaW9uKCkKCS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCglmdW5jdGlvbiBNaW5pbXVtQ01TVmVyc2lvbiAoKQoJewoJCXJldHVybiAnMS41LjInOwoJfQoKCgkvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJU2V0UGFyYW1ldGVycygpCgktLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwoJZnVuY3Rpb24gU2V0UGFyYW1ldGVycyAoKQoJewoJCSR0aGlzLT5SZWdpc3Rlck1vZHVsZVBsdWdpbigpOwoJCSR0aGlzLT5SZXN0cmljdFVua25vd25QYXJhbXMoKTsKCgkJJHRoaXMtPlJlZ2lzdGVyUm91dGUoJy9bVXVdcGxvYWRzXC8oP1A8dXBsb2FkX2lkPlswLTldKylcLyg/UDxqdW5rPi4qPykkLycsCgkJCWFycmF5KCdzaG93dGVtcGxhdGUnPT4nZmFsc2UnLCAnYWN0aW9uJz0+J2dldGZpbGUnKSk7CgkJCgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcigna2V5JywgJ3ZhbHVlJywgJHRoaXMtPkxhbmcoJ3BhcmFtX2tleScpKTsKCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdub2F1dGhvcicsICcxJywgJHRoaXMtPkxhbmcoJ3BhcmFtX25vYXV0aG9yJykpOwoJCSR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ3VwbG9hZF9pZCcsJ2lkJywkdGhpcy0+TGFuZygncGFyYW1fdXBsb2FkX2lkJykpOwoJCSR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ2NvdW50JywnJywkdGhpcy0+TGFuZygncGFyYW1fY291bnQnKSk7CgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignc29ydG9yZGVyJywnZGF0ZV9hc2MnLCR0aGlzLT5MYW5nKCdwYXJhbV9zb3J0b3JkZXInKSk7CgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignZmlsZV9leHRlbnNpb25zJywnZXh0MSxleHQyLGV4dDMnLCR0aGlzLT5MYW5nKCdwYXJhbV9maWxlZXh0ZW5zaW9ucycpKTsKCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdjYXRlZ29yeScsJ3VwbG9hZF9jYXRlZ29yeScsJHRoaXMtPkxhbmcoJ3BhcmFtX2NhdGVnb3J5JyksZmFsc2UpOwoJCSR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ2ZpbHRlcicsJycsJHRoaXMtPkxhbmcoJ3BhcmFtX2ZpbHRlcicpKTsKCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdub19pbml0aWFsJywnMScsJHRoaXMtPkxhbmcoJ3BhcmFtX25vX2luaXRpYWwnKSk7CgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignbW9kZScsJ3N1bW1hcnknLCR0aGlzLT5MYW5nKCdwYXJhbV9tb2RlJyksZmFsc2UpOwoJCSR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ3RlbXBsYXRlJywnJywkdGhpcy0+TGFuZygncGFyYW1fdGVtcGxhdGUnKSk7CgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignZGV0YWlsdGVtcGxhdGUnLCcnLCR0aGlzLT5MYW5nKCdwYXJhbV9kZXRhaWx0ZW1wbGF0ZScpKTsKCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdub2NhcHRjaGEnLCcnLCR0aGlzLT5MYW5nKCdwYXJhbV9ub2NhcHRjaGEnKSk7CgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignZmlsZXR5cGVzJywnJywkdGhpcy0+TGFuZygncGFyYW1fZmlsZXR5cGVzJykpOwoJCSR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ3NlbGVjdG5hbWUnLCcnLCR0aGlzLT5MYW5nKCdwYXJhbV9zZWxlY3RuYW1lJykpOwoJCSR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ3NlbGVjdG5vbmUnLCcnLCR0aGlzLT5MYW5nKCdwYXJhbV9zZWxlY3Rub25lJykpOwoJCSR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ3NlbGVjdHZhbHVlJywnJywkdGhpcy0+TGFuZygncGFyYW1fc2VsZWN0dmFsdWUnKSk7CgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignc2VsZWN0Zm9ybScsJycsJHRoaXMtPkxhbmcoJ3BhcmFtX3NlbGVjdGZvcm0nKSk7CgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcigncHJlZml4JywwLCR0aGlzLT5MYW5nKCdwYXJhbV9wcmVmaXgnKSk7CgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcigncHJlZml4X2ZldScsMCwkdGhpcy0+TGFuZygncGFyYW1fcHJlZml4X2ZldScpKTsKCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdkZXRhaWxwYWdlJywnJywkdGhpcy0+TGFuZygncGFyYW1fZGV0YWlscGFnZScpKTsKCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdsaXN0aW5ndGVtcGxhdGUnLCcnLCR0aGlzLT5MYW5nKCdwYXJhbV9saXN0aW5ndGVtcGxhdGUnKSk7CgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignbGlzdGluZ3NvcnRvcmRlcicsJycsJHRoaXMtPkxhbmcoJ3BhcmFtX2xpc3Rpbmdzb3J0b3JkZXInKSk7CgkJCgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2tleScsQ0xFQU5fU1RSSU5HKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnbm9hdXRob3InLENMRUFOX0lOVCk7CgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ3VwbG9hZF9pZCcsQ0xFQU5fSU5UKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnY291bnQnLENMRUFOX0lOVCk7CgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ3NvcnRvcmRlcicsQ0xFQU5fU1RSSU5HKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnZmlsZV9leHRlbnNpb25zJyxDTEVBTl9TVFJJTkcpOwoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdjYXRlZ29yeScsIENMRUFOX1NUUklORyk7CgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2ZpbHRlcicsQ0xFQU5fU1RSSU5HKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnbm9faW5pdGlhbCcsQ0xFQU5fSU5UKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnbW9kZScsQ0xFQU5fU1RSSU5HKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgndGVtcGxhdGUnLENMRUFOX1NUUklORyk7CgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2RldGFpbHRlbXBsYXRlJyxDTEVBTl9TVFJJTkcpOwoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdub2NhcHRjaGEnLENMRUFOX0lOVCk7CgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2ZpbGV0eXBlcycsQ0xFQU5fU1RSSU5HKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnc2VsZWN0bmFtZScsQ0xFQU5fU1RSSU5HKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnc2VsZWN0bm9uZScsQ0xFQU5fSU5UKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnc2VsZWN0dmFsdWUnLENMRUFOX1NUUklORyk7CgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ3NlbGVjdGZvcm0nLENMRUFOX1NUUklORyk7CgkJJHRoaXMtPlNldFBhcmFtZXRlcnR5cGUoJ3ByZWZpeCcsQ0xFQU5fSU5UKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVydHlwZSgncHJlZml4X2ZldScsQ0xFQU5fSU5UKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnZGV0YWlscGFnZScsQ0xFQU5fU1RSSU5HKTsKCQkKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnaW5wdXRfa2V5JyxDTEVBTl9TVFJJTkcpOwoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdpbnB1dF9hdXRob3InLENMRUFOX1NUUklORyk7CgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2lucHV0X3N1bW1hcnknLENMRUFOX1NUUklORyk7CgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2lucHV0X2Rlc2NyaXB0aW9uJyxDTEVBTl9TVFJJTkcpOwoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdpbnB1dF9kZXN0bmFtZScsQ0xFQU5fU1RSSU5HKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnaW5wdXRfcmVwbGFjZScsQ0xFQU5fSU5UKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnTUFYX0ZJTEVfU0laRScsQ0xFQU5fSU5UKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnaW5wdXRfY2FwdGNoYScsQ0xFQU5fU1RSSU5HKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnZG9fdXBsb2FkZmlsZScsQ0xFQU5fU1RSSU5HKTsKCQkKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnbGlzdGluZ3RlbXBsYXRlJyxDTEVBTl9TVFJJTkcpOwoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdsaXN0aW5nc29ydG9yZGVyJyxDTEVBTl9TVFJJTkcpOwoJCQoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdpbnB1dF9maWx0ZXInLENMRUFOX1NUUklORyk7CgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2hpZGRlbl9wYXJhbXMnLENMRUFOX1NUUklORyk7CgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2lucHV0X3N1Ym1pdCcsQ0xFQU5fU1RSSU5HKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgncGFnZW51bScsQ0xFQU5fSU5UKTsKCX0KCgoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCUdldEFkbWluRGVzY3JpcHRpb24oKQoJLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KCWZ1bmN0aW9uIEdldEFkbWluRGVzY3JpcHRpb24gKCkKCXsKCQlyZXR1cm4gJHRoaXMtPkxhbmcgKCdtb2RkZXNjcmlwdGlvbicpOwoJfQoKCgkvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJVmlzaWJsZVRvQWRtaW5Vc2VyKCkKCS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCglmdW5jdGlvbiBWaXNpYmxlVG9BZG1pblVzZXIgKCkKCXsKCQlyZXR1cm4gJHRoaXMtPkNoZWNrUGVybWlzc2lvbiAoJ01hbmFnZSBVcGxvYWRzJykgfHwKCQkJJHRoaXMtPkNoZWNrUGVybWlzc2lvbignTW9kaWZ5IFRlbXBsYXRlcycpIHx8CgkJCSR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBTaXRlIFByZWZlcmVuY2VzJyk7Cgl9CgoKCS8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCglHZXREZXBlbmRlbmNpZXMoKQoJLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KCWZ1bmN0aW9uIEdldERlcGVuZGVuY2llcyAoKQoJewoJCXJldHVybiBhcnJheSAoKTsKCX0KCgoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCUluc3RhbGxQb3N0TWVzc2FnZSgpCgktLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwoJZnVuY3Rpb24gSW5zdGFsbFBvc3RNZXNzYWdlICgpCgl7CgkJcmV0dXJuICR0aGlzLT5MYW5nICgncG9zdGluc3RhbGwnKTsKCX0KCgoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCVVuaW5zdGFsbFBvc3RNZXNzYWdlKCkKCS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCglmdW5jdGlvbiBVbmluc3RhbGxQb3N0TWVzc2FnZSAoKQoJewoJCXJldHVybiAkdGhpcy0+TGFuZyAoJ3Bvc3R1bmluc3RhbGwnKTsKCX0KCgoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCURvQWN0aW9uKCRhY3Rpb24sICRpZCwgJHBhcmFtcywgJHJldHVybmlkKQoJLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KCWZ1bmN0aW9uIERvQWN0aW9uICgkYWN0aW9uLCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCA9IC0xKQoJewoJCXN3aXRjaCAoJGFjdGlvbikKCQl7CgkJCWNhc2UgJ2RvX3VwbG9hZCc6CgkJCXsKCQkJCS8vIGEgdXNlciBpcyB0cnlpbmcgdG8gdXBsb2FkIHNvbWV0aGluZwoJCQkJLy8gZmlyc3QgY2hlY2sgaWYgY2FwdGNoYSB3YXMgc2V0CgkJCQkkY2FwdGNoYSA9JiAkdGhpcy0+R2V0TW9kdWxlSW5zdGFuY2UoJ0NhcHRjaGEnKTsKCQkJCWlmKCBpc19vYmplY3QoJGNhcHRjaGEpICYmICFpc3NldCgkcGFyYW1zWydub2NhcHRjaGEnXSkgKSB7CgkJCQkJaWYgKCEkY2FwdGNoYS0+Q2hlY2tDYXB0Y2hhKCRwYXJhbXNbJ2lucHV0X2NhcHRjaGEnXSkpIHsKCQkJCQkJJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlKCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwKCQkJCQkJCSR0aGlzLT5MYW5nKCdlcnJvcl9jYXB0Y2hhbWlzbWF0Y2gnKSk7CgkJCQkJCXJldHVybjsKCQkJCQl9CgkJCQl9CgkJCQkkcmV0ID0gJHRoaXMtPkF0dGVtcHRVcGxvYWQgKCRpZCwgJHBhcmFtcywgJHJldHVybmlkKTsKCQkJCWlmKCAkcmV0WzBdID09IEZBTFNFICkgewoJCQkJCSR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSggJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsCgkJCQkJCSRyZXRbMV0gKTsKCQkJCQlyZXR1cm47CgkJCQl9CgkJCQkkc3RyID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ3JlZGlyZWN0X29uX3VwbG9hZCcpOwoJCQkJJGlkID0gJHJldHVybmlkOwoJCQkJaWYoICRzdHIgIT0gJycgKQoJCQkJewoJCQkJCSRpZCA9IENvbnRlbnRNYW5hZ2VyOjpHZXRQYWdlSURGcm9tQWxpYXMoICRzdHIgKTsKCQkJCQlpZiggISRpZCApCgkJCQkJewoJCQkJCQkvLyBwYWdlIG5vdCBmb3VuZCwgaWdub3JlIGl0CgkJCQkJCSRpZCA9ICRyZXR1cm5pZDsKCQkJCQl9CgkJCQl9CgkJCQkkdGhpcy0+UmVkaXJlY3RDb250ZW50KCAkaWQgKTsKCQkJCWJyZWFrOwoJCQl9CgkJCgkJCWNhc2UgJ2RlbGV0ZWNhdGVnb3J5JzoKCQkJewoJCQkJaWYgKCR0aGlzLT5DaGVja1Blcm1pc3Npb24gKCdNYW5hZ2UgVXBsb2FkcycpKQoJCQkJewoJCQkJCSR0aGlzLT5fQWRtaW5EZWxldGVDYXRlZ29yeSAoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQpOwoJCQkJfQoJCQkJYnJlYWs7CgkJCX0KCQkJCQkKCQkJY2FzZSAnZG9fZGVsZXRlY2F0ZWdvcnknOgoJCQl7CgkJCQkvLyBjaGVjayBwZXJtaXNzaW9ucyBhZ2FpbgoJCQkJaWYgKCR0aGlzLT5DaGVja1Blcm1pc3Npb24gKCdNYW5hZ2UgVXBsb2FkcycpKQoJCQkJewoJCQkJCSR0aGlzLT5fQWRtaW5Eb0RlbGV0ZUNhdGVnb3J5ICgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCk7CgkJCQl9CgkJCQlicmVhazsKCQkJfQoJCgkKCQkJY2FzZSAnZG9fZGVsZXRldXBsb2FkJzoKCQkJewoJCQkJLy8gY2hlY2sgcGVybWlzc2lvbnMgYWdhaW4KCQkJCWlmICgkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uICgnTWFuYWdlIFVwbG9hZHMnKSkKCQkJCXsKCQkJCQkkdGhpcy0+X0FkbWluRG9EZWxldGVVcGxvYWQgKCRpZCwgJHBhcmFtcywgJHJldHVybmlkKTsKCQkJCX0KCQkJCWJyZWFrOwoJCQl9CgkKCQkJY2FzZSAndXBkYXRlZW1haWx0ZW1wbGF0ZSc6CgkJCXsKCQkJCS8vIGNoZWNrIHBlcm1pc3Npb25zIGFnYWluCgkJCQlpZiAoJHRoaXMtPkNoZWNrUGVybWlzc2lvbiAoJ01vZGlmeSBUZW1wbGF0ZXMnKSkKCQkJCXsKCQkJCQlpZiAoaXNzZXQgKCRwYXJhbXNbJ2RlZmF1bHRidXR0b24nXSkpCgkJCQkJewoJCQkJCQkkdGhpcy0+U2V0VGVtcGxhdGUgKCd1cGxvYWRfZW1haWx0ZW1wbGF0ZScsCgkJCQkJCQkkdGhpcy0+ZGZsdF9lbWFpbG5vdGlmeXRlbXBsYXRlKTsKCQkJCQl9CgkJCQkJZWxzZQoJCQkJCXsKCQkJCQkJJHRoaXMtPlNldFRlbXBsYXRlICgndXBsb2FkX2VtYWlsdGVtcGxhdGUnLCAkcGFyYW1zWyd0ZW1wbGF0ZWNvbnRlbnQnXSk7CgkJCQkJfQoJCQkJCSR0aGlzLT5teVJlZGlyZWN0VG9UYWIoJGlkLCAnZW1haWxfdGVtcGxhdGUnKTsKCQkJCX0KCQkJfQoKCQkJZGVmYXVsdDoKCQkJCXBhcmVudDo6RG9BY3Rpb24oICRhY3Rpb24sICRpZCwgJHBhcmFtcywgJHJldHVybmlkICk7CgkJCQlicmVhazsKCQl9Cgl9CgoJZnVuY3Rpb24gU2VhcmNoUmVzdWx0KCRyZXR1cm5pZCwgJGFydGljbGVpZCwgJGF0dHIgPSAnJykKCXsKCQkkZGIgPSYgJHRoaXMtPkdldERiKCk7CgkJJHJlc3VsdCA9IGFycmF5KCk7CgkJaWYoICRhdHRyID09ICd1cGxvYWQnKQoJCXsKCQkJLy8gZ2V0IHRoZSBjYXRlZ29yeSBpZCBmb3IgYW4gdXBsb2FkIGlkCgkJCSRkZXRhaWxzID0gJHRoaXMtPkdldFVwbG9hZERldGFpbHMoJGFydGljbGVpZCwnJyk7CgkKCQkJLy8gbm93IGdldCB0aGUgY2F0ZWdvcnkgbmFtZSBpbnN0ZWFkIG9mIHRoZSBjYXRlZ29yeSBpZCwgZ29kIAoJCQkvLyB3YXMgSSBzdHVwaWQuCgkJCSRxID0gIlNFTEVDVCB1cGxvYWRfY2F0ZWdvcnlfbmFtZSBBUyBuYW1lIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX2NhdGVnb3JpZXMgV0hFUkUgdXBsb2FkX2NhdGVnb3J5X2lkID0gPyI7CgkJCSRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHEsIGFycmF5KCRkZXRhaWxzWyd1cGxvYWRfY2F0ZWdvcnlfaWQnXSkgKTsKCQkJaWYoICEkZGJyZXN1bHQgfHwgISRkYnJlc3VsdC0+UmVjb3JkQ291bnQoKSApCgkJCXsKCQkJCWRpZSggJ2RhdGFiYXNlIGVycm9yJyApOwoJCQkJLy8gdG9kbywgYXVkaXQKCQkJCXJldHVybjsKCQkJfQoJCQkkcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdygpOwoJCQkkcmVzdWx0WzBdID0gJHRoaXMtPkdldEZyaWVuZGx5TmFtZSgpOwoJCQkkcmVzdWx0WzFdID0gJGRldGFpbHNbJ3VwbG9hZF9uYW1lJ107CgkJCSRyZXN1bHRbMl0gPSAkdGhpcy0+Q3JlYXRlTGluayggJGFydGljbGVpZCwgJ2RlZmF1bHQnLCAkcmV0dXJuaWQsICRkZXRhaWxzWyd1cGxvYWRfbmFtZSddLAoJCQkJYXJyYXkoJ21vZGUnPT4nc2luZ2xlJywKCQkJCQkndXBsb2FkX2lkJyA9PiAkYXJ0aWNsZWlkLAoJCQkJCSdjYXRlZ29yeScgPT4gJHJvd1snbmFtZSddICksICcnLCB0cnVlKTsKCQkJcmV0dXJuICRyZXN1bHQ7CgkJfQoJfQoKCWZ1bmN0aW9uIFNlYXJjaFJlSW5kZXgoJiRtb2R1bGUpCgl7CgkJJGRiID0mICR0aGlzLT5HZXREYigpOwoJCQoJCSRxdWVyeSA9ICJTRUxFQ1QgdXBsb2FkX2lkLCB1cGxvYWRfbmFtZSwgdXBsb2FkX2F1dGhvciwgdXBsb2FkX3N1bW1hcnksIHVwbG9hZF9kZXNjcmlwdGlvbiwgdXBsb2FkX2lwLCB1cGxvYWRfZGF0ZSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2FkcyBBLCAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfY2F0ZWdvcmllcyBCIFdIRVJFIEEudXBsb2FkX2NhdGVnb3J5X2lkID0gQi51cGxvYWRfY2F0ZWdvcnlfaWQgQU5EIEIudXBsb2FkX2NhdGVnb3J5X2xpc3RhYmxlID0gPyI7CgkJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcXVlcnksIGFycmF5KCAxICkgKTsKCQlpZiggISRkYnJlc3VsdCApCgkJewoJCQlkaWUoICRkYi0+RXJyb3JNc2coKSApOwoJCX0KCQl3aGlsZSggJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKSApCgkJewoJCQkkc3RyID0gJHJvd1sndXBsb2FkX25hbWUnXS4nICcuJHJvd1sndXBsb2FkX2F1dGhvciddLicgJy4KCQkJJHJvd1sndXBsb2FkX3N1bW1hcnknXS4nICcuJHJvd1sndXBsb2FkX2Rlc2NyaXB0aW9uJ107CgkJCSRtb2R1bGUtPkFkZFdvcmRzKCAkdGhpcy0+R2V0TmFtZSgpLCAkcm93Wyd1cGxvYWRfaWQnXSwgJ3VwbG9hZCcsICRzdHIgKTsKCQl9Cgl9CgogIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgIEJFR0lOIE9GIFVJIFNVUFBPUlQgRlVOQ1RJT05TCiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCgogIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgIF9BZG1pbkVkaXREZWZhdWx0VGVtcGxhdGVGb3JtCiAgIE5PVCBQQVJUIE9GIFRIRSBNT0RVTEUgQVBJCgogICBBIGZ1bmN0aW9uIHRoYXQgcHJvdmlkZXMgYSBmb3JtIGZvciBlZGl0aW5nIGEgZGVmYXVsdCB0ZW1wbGF0ZQogICBhbmQvb3IgcmV0dXJuaW5nIGl0IHRvIHN5c3RlbSBkZWZhdWx0cy4KICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KCWZ1bmN0aW9uIF9BZG1pbkVkaXREZWZhdWx0VGVtcGxhdGVGb3JtKCRpZCwkcmV0dXJuaWQsJHByZWZuYW1lLCRhY3RpdmVfdGFiLCR0aXRsZSwkZmlsZW5hbWUsJGluZm8pCgl7CgkJJHNtYXJ0eSA9JiAkdGhpcy0+c21hcnR5OwoJCSRzbWFydHktPmFzc2lnbignZGVmYXVsdHRlbXBsYXRlZm9ybV90aXRsZScsJHRpdGxlKTsKCQkkc21hcnR5LT5hc3NpZ24oJ2luZm9fdGl0bGUnLCRpbmZvKTsKCQkkc21hcnR5LT5hc3NpZ24oJ3N0YXJ0Zm9ybScsCgkJCSR0aGlzLT5DcmVhdGVGb3JtU3RhcnQoJGlkLCdzZXRkZWZhdWx0dGVtcGxhdGUnLCRyZXR1cm5pZCwncG9zdCcsJycsZmFsc2UsJycsCgkJCQlhcnJheSgncHJlZm5hbWUnPT4kcHJlZm5hbWUsCgkJCQkJJ2FjdGl2ZV90YWInPT4kYWN0aXZlX3RhYiwKCQkJCQknZmlsZW5hbWUnPT4kZmlsZW5hbWUpKSk7CgkJJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfdGVtcGxhdGUnLCR0aGlzLT5MYW5nKCd0ZW1wbGF0ZScpKTsKCQkkc21hcnR5LT5hc3NpZ24oJ2lucHV0X3RlbXBsYXRlJywkdGhpcy0+Q3JlYXRlVGV4dEFyZWEoZmFsc2UsJGlkLAoJCQkkdGhpcy0+R2V0UHJlZmVyZW5jZSgkcHJlZm5hbWUpLCdpbnB1dF90ZW1wbGF0ZScpKTsKCQkkc21hcnR5LT5hc3NpZ24oJ3N1Ym1pdCcsJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwnc3VibWl0JywkdGhpcy0+TGFuZygnc3VibWl0JykpKTsKCQkkc21hcnR5LT5hc3NpZ24oJ3Jlc2V0JywkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCdyZXNldHRvZGVmYXVsdCcsCgkJCSR0aGlzLT5MYW5nKCdyZXNldHRvZGVmYXVsdCcpKSk7CgkJJHNtYXJ0eS0+YXNzaWduKCdlbmRmb3JtJywgJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7CgkJZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCdlZGl0ZGVmYXVsdHRlbXBsYXRlLnRwbCcpOwoJfQoKCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgX0FkbWluQ3JlYXRlVGVtcGxhdGVMaXN0KCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCApCiAgIE5PVCBQQVJUIE9GIFRIRSBNT0RVTEUgQVBJCgogICBBIGZ1bmN0aW9uIHRoYXQgcHJvdmlkZXMgYSBsaXN0IG9mIHRlbXBsYXRlcyBtYXRjaGluZwogICBhIHByZWZpeCwgYW5kIHRoZSBhcHByb3ByaWF0ZSBlZGl0LCBhZGQsIGFuZCBkZWxldGUgbGlua3MuCiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCiAgZnVuY3Rpb24gX0FkbWluQ3JlYXRlVGVtcGxhdGVMaXN0KCAkaWQsICRyZXR1cm5pZCwgJHByZWZpeCwgCiAgCSRkZWZhdWx0dGVtcGxhdGVwcmVmLCAkYWN0aXZlX3RhYiwgJGRlZmF1bHRwcmVmbmFtZSwgJHRpdGxlKQogIHsKICAgIC8vIHdlJ3JlIGdvbm5hIGFsbG93IG11bHRpcGxlIHRlbXBsYXRlcyBoZXJlCiAgICAvLyBidXQgd2UncmUgZ29ubmEgcHJlZml4IHRoZW0gYWxsIHdpdGggc29tZXRoaW5nCiAgICBnbG9iYWwgJGdDbXM7CiAgICAKICAgICRmYWxzZWltYWdlMSA9ICRnQ21zLT52YXJpYWJsZXNbJ2FkbWludGhlbWUnXS0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vZmFsc2UuZ2lmJywnbWFrZSBkZWZhdWx0JywnJywnJywnc3lzdGVtaWNvbicpOwogICAgJHRydWVpbWFnZTEgPSAkZ0Ntcy0+dmFyaWFibGVzWydhZG1pbnRoZW1lJ10tPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL3RydWUuZ2lmJywnZGVmYXVsdCcsJycsJycsJ3N5c3RlbWljb24nKTsKICAgICRhbGx0ZW1wbGF0ZXMgPSAkdGhpcy0+TGlzdFRlbXBsYXRlcygpOwogICAgJHJvd2FycmF5ID0gYXJyYXkoKTsKICAgICRyb3djbGFzcyA9ICdyb3cxJzsKICAgIGZvcmVhY2goICRhbGx0ZW1wbGF0ZXMgYXMgJG9uZXRlbXBsYXRlICkKICAgICAgewoJaWYoICFwcmVnX21hdGNoKCIvXiRwcmVmaXgvIiwgJG9uZXRlbXBsYXRlICkgKQoJICB7CgkgICAgY29udGludWU7CgkgIH0KCQoJJHRtcCA9IHN1YnN0cigkb25ldGVtcGxhdGUsc3RybGVuKCRwcmVmaXgpKTsKCSRyb3cgPSBuZXcgU3RkQ2xhc3MoKTsKCSRyb3ctPm5hbWUgPSAkdGhpcy0+Q3JlYXRlTGluayggJGlkLCAnZWRpdHRlbXBsYXRlJywgJHJldHVybmlkLAoJCQkJCSR0bXAsIGFycmF5KCd0ZW1wbGF0ZScgPT4gJHRtcCwKCQkJCQkJICAgICdhY3RpdmVfdGFiJyA9PiAkYWN0aXZlX3RhYiwKCQkJCQkJICAgICd0aXRsZSc9PiR0aXRsZSwKCQkJCQkJICAgICdwcmVmaXgnPT4kcHJlZml4LAoJCQkJCQkgICAgJ21vZGUnPT4nZWRpdCcpKTsKCSRyb3ctPnJvd2NsYXNzID0gJHJvd2NsYXNzOwoKCSRkZWZhdWx0ID0gKCR0aGlzLT5HZXRQcmVmZXJlbmNlKCRkZWZhdWx0cHJlZm5hbWUpID09ICR0bXApID8gdHJ1ZSA6IGZhbHNlOwoJaWYoICRkZWZhdWx0ICkKCSAgewoJICAgICRyb3ctPmRlZmF1bHQgPSAkdHJ1ZWltYWdlMTsKCSAgfQoJZWxzZQoJICB7CgkgICAgJHJvdy0+ZGVmYXVsdCA9ICR0aGlzLT5DcmVhdGVMaW5rKCAkaWQsICdtYWtlZGVmYXVsdHRlbXBsYXRlJywgJHJldHVybmlkLAoJCQkJCSAgICAgICAkZmFsc2VpbWFnZTEsCgkJCQkJICAgICAgIGFycmF5KCd0ZW1wbGF0ZSc9PiR0bXAsCgkJCQkJCSAgICAgJ2RlZmF1bHRwcmVmbmFtZSc9PiRkZWZhdWx0cHJlZm5hbWUsCgkJCQkJCSAgICAgJ2FjdGl2ZV90YWInID0+ICRhY3RpdmVfdGFiKSk7CgkgIH0KCgkkcm93LT5lZGl0bGluayA9ICR0aGlzLT5DcmVhdGVMaW5rKCAkaWQsICdlZGl0dGVtcGxhdGUnLCAkcmV0dXJuaWQsCgkJCQkJICAgICRnQ21zLT52YXJpYWJsZXNbJ2FkbWludGhlbWUnXS0+CgkJCQkJICAgIERpc3BsYXlJbWFnZSAoJ2ljb25zL3N5c3RlbS9lZGl0LmdpZicsCgkJCQkJCQkgICR0aGlzLT5MYW5nICgnZWRpdCcpLCAnJywgJycsICdzeXN0ZW1pY29uJyksCgkJCQkJICAgIGFycmF5ICgndGVtcGxhdGUnID0+ICR0bXAsCgkJCQkJCSAgICdhY3RpdmVfdGFiJyA9PiAkYWN0aXZlX3RhYiwKCQkJCQkJICAgJ3ByZWZpeCc9PiRwcmVmaXgsCgkJCQkJCSAgICd0aXRsZSc9PiR0aXRsZSwKCQkJCQkJICAgJ21vZGUnPT4nZWRpdCcpKTsKCQoJJHRtcCA9ICRwcmVmaXguImRlZmF1bHQiOwoJaWYoICgkb25ldGVtcGxhdGUgPT0gJHRtcCkgfHwgJGRlZmF1bHQgKQoJICB7CgkgICAgJHJvdy0+ZGVsZXRlbGluayA9ICcmbmJzcDsnOwoJICB9CgllbHNlCgkgIHsKCSAgICAkcm93LT5kZWxldGVsaW5rID0gJHRoaXMtPkNyZWF0ZUxpbmsoICRpZCwgJ2RlbGV0ZXRlbXBsYXRlJywgJHJldHVybmlkLAoJCQkJCQkgICRnQ21zLT52YXJpYWJsZXNbJ2FkbWludGhlbWUnXS0+CgkJCQkJCSAgRGlzcGxheUltYWdlICgnaWNvbnMvc3lzdGVtL2RlbGV0ZS5naWYnLAoJCQkJCQkJCSR0aGlzLT5MYW5nICgnZGVsZXRlJyksICcnLCAnJywgJ3N5c3RlbWljb24nKSwKCQkJCQkJICBhcnJheSAoJ3RlbXBsYXRlJyA9PiAkb25ldGVtcGxhdGUsCgkJCQkJCSAgCQknYWN0aXZlX3RhYicgPT4gJGFjdGl2ZV90YWIpLAoJCQkJCQkgICR0aGlzLT5MYW5nICgnYXJleW91c3VyZScpKTsKCSAgfQoJCglhcnJheV9wdXNoICgkcm93YXJyYXksICRyb3cpOwoJKCRyb3djbGFzcyA9PSAicm93MSIgPyAkcm93Y2xhc3MgPSAicm93MiIgOiAkcm93Y2xhc3MgPSAicm93MSIpOwogICAgICB9CiAgICAKICAgICR0aGlzLT5zbWFydHktPmFzc2lnbignaXRlbXMnLCAkcm93YXJyYXkgKTsKICAgICR0aGlzLT5zbWFydHktPmFzc2lnbignbmFtZXByb21wdCcsICR0aGlzLT5MYW5nKCdwcm9tcHRfbmFtZScpKTsKICAgICR0aGlzLT5zbWFydHktPmFzc2lnbignZGVmYXVsdHByb21wdCcsICR0aGlzLT5MYW5nKCdwcm9tcHRfZGVmYXVsdCcpKTsJCQkJICAgCgkkdGhpcy0+c21hcnR5LT5hc3NpZ24gKCduZXd0ZW1wbGF0ZWxpbmsnLAoJCSR0aGlzLT5DcmVhdGVMaW5rKCRpZCwgJ2VkaXR0ZW1wbGF0ZScsICRyZXR1cm5pZCwKCQkJJGdDbXMtPnZhcmlhYmxlc1snYWRtaW50aGVtZSddLT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9uZXdvYmplY3QuZ2lmJywKCQkJCSR0aGlzLT5MYW5nKCdwcm9tcHRfbmV3dGVtcGxhdGUnKSwnJywnJywnc3lzdGVtaWNvbicpLAoJCQkJCWFycmF5KCdwcmVmaXgnID0+ICRwcmVmaXgsCgkJCQkJCSAgICdhY3RpdmVfdGFiJyA9PiAkYWN0aXZlX3RhYiwKCQkJCQkJICAgJ3RpdGxlJz0+JHRpdGxlLAoJCQkJCQkgICAnbW9kZScgPT4gJ2FkZCcsCgkJCQkJCSAgICdkZWZhdWx0dGVtcGxhdGVwcmVmJyA9PiAkZGVmYXVsdHRlbXBsYXRlcHJlZgoJCQkJCQkgICApLCAnJywgZmFsc2UsIGZhbHNlLCAnJykgLicgJy4KCQkkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdlZGl0dGVtcGxhdGUnLCAkcmV0dXJuaWQsCgkJJHRoaXMtPkxhbmcoJ3Byb21wdF9uZXd0ZW1wbGF0ZScpLAoJCQkJCWFycmF5KCdwcmVmaXgnID0+ICRwcmVmaXgsCgkJCQkJCSAgICdhY3RpdmVfdGFiJyA9PiAkYWN0aXZlX3RhYiwKCQkJCQkJICAgJ3RpdGxlJz0+JHRpdGxlLAoJCQkJCQkgICAnbW9kZScgPT4gJ2FkZCcsCgkJCQkJCSAgICdkZWZhdWx0dGVtcGxhdGVwcmVmJyA9PiAkZGVmYXVsdHRlbXBsYXRlcHJlZgoJCQkJCQkgICApLCAnJywgZmFsc2UsIGZhbHNlLCAnY2xhc3M9InBhZ2VvcHRpb25zIicpKTsKCQkKICAgICR0aGlzLT5zbWFydHktPmFzc2lnbigkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsKICAgIGVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSgnZWRpdHRlbXBsYXRlcy50cGwnKTsKICB9CgoKCS8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCglfQWRtaW5EZWxldGVDYXRlZ29yeSggJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQgKQoJIE5PVCBQQVJUIE9GIFRIRSBNT0RVTEUgQVBJCgoJRnVuY3Rpb24gdGhhdCBwcm92aWRlcyBhIGZvcm0gdG8gYWxsb3cgdGhlIHVzZXIgdG8gZGVsZXRlCglhIGNhdGVnb3J5IGZyb20gdGhlIGRhdGFiYXNlLgoJLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KCWZ1bmN0aW9uIF9BZG1pbkRlbGV0ZUNhdGVnb3J5ICgkaWQsICYkcGFyYW1zLCAkcmV0dXJuaWQpCgl7CgkJaWYoICFpc3NldCggJHBhcmFtc1snY2F0ZWdvcnlfaWQnXSApICkKCQl7CgkJCSR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSAoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsCgkJCQkkdGhpcy0+TGFuZyAoJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcycsJ2NhdGVnb3J5X2lkJykpOwoJCQlyZXR1cm47CgkJfQoKCQkvLyB0ZXN0IHRvIHNlZSBpZiB0aGVyZSBhcmUgc3RpbGwgZmlsZXMgbGVmdCBpbiB0aGlzIGNhdGVnb3J5LCBpZiB0aGVyZSBhcmUsIHRoZW4gcHVrZQoJCS8vIG90aGVyd2lzZSBkZWxldGUgdGhlIGRpcmVjdG9yeSB0b28gKG1heWJlKQoJCSRkYiA9JiAkdGhpcy0+R2V0RGIoKTsKCQkkcXVlcnkgPSAiU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHMgV0hFUkUgdXBsb2FkX2NhdGVnb3J5X2lkID0gPyI7CgkJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcXVlcnksIGFycmF5KCAkcGFyYW1zWydjYXRlZ29yeV9pZCddICkgKTsKCQkkYyA9ICRkYnJlc3VsdC0+UmVjb3JkQ291bnQoKTsKCQlpZiggJGRicmVzdWx0LT5SZWNvcmRDb3VudCgpICkKCQl7CgkJCSR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSAoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsCgkJCQkkdGhpcy0+TGFuZyAoJ2Vycm9yX2NhdGVnb3J5bm90ZW1wdHknKSk7CgkJCXJldHVybjsKCQl9CgoJCS8vIGRpc3BsYXkgc29tZXRoaW5nIHRvIGFsbG93IHRoZSB1c2VyIHRvIGRlbGV0ZSB0aGUgY2F0ZWdvcnkuLi4uIHdpbGwgKG9wdGlvbmFsbHkpIGRlbGV0ZQoJCS8vIGFsbCBvZiB0aGUgKG1hbmFnZWQpIGZpbGVzIGluIHRoZSBkaXJlY3RvcnkgdG9vLgoJCSR0aGlzLT5zbWFydHktPmFzc2lnbiggJ3dhcm5pbmdfZGVsZXRlY2F0ZWdvcnknLAoJCQkkdGhpcy0+TGFuZygnd2FybmluZ19kZWxldGVjYXRlZ29yeScpICk7CgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCAnc3RhcnRmb3JtJyAsCgkJCSR0aGlzLT5DcmVhdGVGb3JtU3RhcnQoICRpZCwgJ2RvX2RlbGV0ZWNhdGVnb3J5JywgJHJldHVybmlkKSk7CgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCAnaGlkZGVuJywKCQkJJHRoaXMtPkNyZWF0ZUlucHV0SGlkZGVuKCAkaWQsICdjYXRlZ29yeV9pZCcsICRwYXJhbXNbJ2NhdGVnb3J5X2lkJ10pKTsKCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oICdwcm9tcHRfZGVsZXRlZGlyZWN0b3J5JywKCQkJJHRoaXMtPkxhbmcoJ3Byb21wdF9kZWxldGVkaXJlY3RvcnknKSApOwoJCSR0aGlzLT5zbWFydHktPmFzc2lnbiggJ2lucHV0X2RlbGV0ZWRpcmVjdG9yeScsCgkJCSR0aGlzLT5DcmVhdGVJbnB1dENoZWNrYm94KCAkaWQsICdpbnB1dF9kZWxldGVkaXJlY3RvcnknLCAxLCAwICkpOwkJCQkJCgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgnc3VibWl0JywgCgkJCSR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCAoJGlkLCAnc3VibWl0JywgJHRoaXMtPkxhbmcoJ3N1Ym1pdCcpKSk7CgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgnZW5kZm9ybScsICR0aGlzLT5DcmVhdGVGb3JtRW5kICgpKTsKCQllY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ2RlbGV0ZWNhdGVnb3J5LnRwbCcpOwoJfQoKCgkvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJX0FkbWluRG9EZWxldGVDYXRlZ29yeSggJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQgKQoJTk9UIFBBUlQgT0YgVEhFIE1PRFVMRSBBUEkKCQoJQSBmdW5jdGlvbiB0aGF0IGFjdHVhbGx5IGRvZXMgdGhlIGRlbGV0aW9uIG9mIHRoZSBjYXRlZ29yeQoJZ2l2ZW4gdGhlIGNhdGVnb3J5IGlkIGluIHRoZSBwYXJhbWV0ZXJzLCBhbmQgYSBmZXcgb3RoZXIKCW5lY2Vzc2FyeSBkZXRhaWxzLiAgVGhpcyBmdW5jdGlvbiBhbHNvIHdpbGwgb3B0aW9uYWxseQoJcmVtb3ZlIGFsbCBmaWxlcyBmcm9tIHRoZSBkaXJlY3RvcnkuLi4gdGhvdWdoIEkgYW0gbm90CgljZXJ0YWluIGlmIHRoaXMgaXMgZ29vZCBjb2RlCgktLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwoJZnVuY3Rpb24gX0FkbWluRG9EZWxldGVDYXRlZ29yeSAoJGlkLCAmJHBhcmFtcywgJHJldHVybmlkKQoJewoJCWlmKCAhaXNzZXQoICRwYXJhbXNbJ2NhdGVnb3J5X2lkJ10gKSApCgkJewoJCQkkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UgKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLAoJCQkJJHRoaXMtPkxhbmcgKCdlcnJvcl9pbnN1ZmZpY2llbnRwYXJhbXMnLCdjYXRlZ29yeV9pZCcpKTsKCQkJcmV0dXJuOwoJCX0KCQoJCS8vIGdldCB0aGUgY2F0ZWdvcnkgZGV0YWlscwoJCSRjYXRlZ29yeSA9ICR0aGlzLT5fZ2V0VXBsb2FkQ2F0ZWdvcnlEZXRhaWxzKCAkcGFyYW1zWydjYXRlZ29yeV9pZCddICk7CgkJaWYoICEkY2F0ZWdvcnkgKSB7CgkJCSR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSAoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsCgkJCQkkdGhpcy0+TGFuZyAoJ2Vycm9yX2RiZXJyb3InKSk7CgkJCXJldHVybjsKCQl9CgoJCWlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfZGVsZXRlZGlyZWN0b3J5J10pICYmICRwYXJhbXNbJ2lucHV0X2RlbGV0ZWRpcmVjdG9yeSddICkKCQl7CgkJCSRwID0gJHRoaXMtPl9jYXRlZ29yeVBhdGgoICRjYXRlZ29yeVsndXBsb2FkX2NhdGVnb3J5X3BhdGgnXSApOwoJCQkkZGlyX29wZW4gPSBAb3BlbmRpciggJHAgKTsKCQkJaWYoICEkZGlyX29wZW4gKSB7CgkJCQkkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UgKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLAoJCQkJJHRoaXMtPkxhbmcgKCdlcnJvcl9wYXRoZXJyb3InKSk7CgkJCQlyZXR1cm47CgkJCX0KCgkJCXdoaWxlKCgkZGlyX2NvbnRlbnQgPSByZWFkZGlyKCRkaXJfb3BlbikpICE9IGZhbHNlKQoJCQl7CgkJCQlpZiggaXNfZmlsZSggJHAuRElSRUNUT1JZX1NFUEFSQVRPUi4kZGlyX2NvbnRlbnQgKSApIHsKCQkJCQl1bmxpbmsoICRwLkRJUkVDVE9SWV9TRVBBUkFUT1IuJGRpcl9jb250ZW50ICk7CgkJCQl9CgkJCX0KCgkJCS8vIG5vdyB0cnkgdG8gdW5saW5rIHRoZSBkaXJlY3RvcnkgaXRzZWxmCgkJCS8vIGJ1dCBpZ25vcmUgYW55IGVycm9ycy4KCQkJcm1kaXIoICRwICk7CgkJfQoKCgkJLy8gZGVsZXRlIHRoZSBkaXJlY3RvcnkgY2F0ZWdvcnkKCQkkZGIgPSYgJHRoaXMtPkdldERiKCk7CgkJJHF1ZXJ5ID0gIkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc19jYXRlZ29yaWVzIFdIRVJFIHVwbG9hZF9jYXRlZ29yeV9pZCA9ID8iOwoJCSRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHF1ZXJ5LCBhcnJheSggJHBhcmFtc1snY2F0ZWdvcnlfaWQnXSApICk7CgkKCQkvLyBzZW5kIGFuIGV2ZW50CgkJJHBhcm1zW10gPSBhcnJheSgpOwoJCSRwYXJtc1snbmFtZSddID0gJGNhdGVnb3J5Wyd1cGxvYWRfY2F0ZWdvcnlfbmFtZSddOwoJCSRwYXJtc1sncGF0aCddID0gJGNhdGVnb3J5Wyd1cGxvYWRfY2F0ZWdvcnlfcGF0aCddOwoJCSR0aGlzLT5TZW5kRXZlbnQoJ09uRGVsZXRlQ2F0ZWdvcnknLCRwYXJtcyk7CgkJCgkJLy8gYW5kIHdlJ3JlIGRvbmUKCQkkdGhpcy0+bXlSZWRpcmVjdFRvVGFiKCAkaWQsICdjYXRlZ29yaWVzJyApOwoJfQoKCgkvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJX0FkbWluRG9EZWxldGVVcGxvYWQoICRpZCwgJHBhcmFtcywgJHJldHVybmlkICkKCU5PVCBQQVJUIE9GIFRIRSBNT0RVTEUgQVBJCgkKCUFjdHVhbGx5IGRlbGV0ZSBhbiB1cGxvYWQgZnJvbSB0aGUgZmlsZXN5c3RlbSBhbmQKCWZyb20gdGhlIGRhdGFiYXNlLgoJLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KCWZ1bmN0aW9uIF9BZG1pbkRvRGVsZXRlVXBsb2FkICgkaWQsICYkcGFyYW1zLCAkcmV0dXJuaWQpCgl7CgkJLy8gd2UncmUgZ29ubmEgcHV0IHNvbWUgdGhvdWdodCBpbnRvIHRoaXMuLi4gdGhlIHVzZXIKCQkvLyBoYXMgYWxyZWFkeSBhbnN3ZXJlZCwgWWVwLCBXZSdyZSBzdXJlIHRoZSBmaWxlIGV4aXN0cywgZG9uJ3QgcmVhbGx5IGNhcmUgYW55d2F5cwoJCS8vIHNvIGFsbCB3ZSBoYXZlIHRvIGRvIGlzIHJlbW92ZSB0aGUgZmlsZSwgYW5kIHJlbW92ZSB0aGUgcmVjb3JkIGZyb20gdGhlIGRhdGFiYXNlLgoJCQoJCWlmKCAhaXNzZXQoICRwYXJhbXNbJ3VwbG9hZF9pZCddICkgKSAKCQl7CgkJCSR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSAoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsCgkJCQkkdGhpcy0+TGFuZyAoJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcycsJ3VwbG9hZF9pZCcpKTsKCQkJcmV0dXJuOwoJCX0KCgkJLy8gZ2V0IHRoZSBpbmZvIGFib3V0IHRoZSB1cGxvYWQgd2UncmUgZ29ubmEgZGVsZXRlCgkJJGRiID0mICR0aGlzLT5HZXREYigpOwoJCSRxdWVyeSA9ICJTRUxFQ1QgKiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2FkcyBXSEVSRSB1cGxvYWRfaWQgPSA/IjsKCQkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxdWVyeSwgYXJyYXkoICRwYXJhbXNbJ3VwbG9hZF9pZCddICkgKTsKCQlpZiggISRkYnJlc3VsdCApIHsKCQkJJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlICgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwKCQkJCSR0aGlzLT5MYW5nICgnZXJyb3JfZGJlcnJvcicpKTsKCQkJcmV0dXJuOwoJCX0KCQkkdXBsb2Fkcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdygpOwoJCWlmKCAhJHVwbG9hZHJvdyApIHsKCQkJJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlICgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwKCQkJCSR0aGlzLT5MYW5nICgnZXJyb3JfZGJlcnJvcicpKTsKCQkJcmV0dXJuOwoJCX0KICAgIAogICAgLy8gYW5kIHRoZSBpbmZvIGFib3V0IGl0J3MgY2F0ZWdvcnkKICAgICRxdWVyeSA9ICJTRUxFQ1QgKiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc19jYXRlZ29yaWVzIFdIRVJFIHVwbG9hZF9jYXRlZ29yeV9pZCA9ID8iOwogICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcXVlcnksIGFycmF5KCAkdXBsb2Fkcm93Wyd1cGxvYWRfY2F0ZWdvcnlfaWQnXSApICk7CiAgICBpZiggISRkYnJlc3VsdCApIHsKICAgICAgJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlICgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwgCgkgIAkkdGhpcy0+TGFuZyAoJ2Vycm9yX2RiZXJyb3InKSk7CiAgICAgIHJldHVybjsKICAgIH0KICAgICRjYXRlZ29yeXJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKTsKICAgIGlmKCAhJGNhdGVnb3J5cm93ICkgewogICAgICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UgKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLAoJICAJJHRoaXMtPkxhbmcgKCdlcnJvcl9kYmVycm9yJykpOwogICAgICByZXR1cm47CiAgICB9CiAgICAKICAgIC8vIG5vdyBidWlsZCB0aGUgcGF0aAogICAgJGZpbGUgPSAkdGhpcy0+X3VwbG9hZFBhdGgoICRjYXRlZ29yeXJvd1sndXBsb2FkX2NhdGVnb3J5X3BhdGgnXSwgJHVwbG9hZHJvd1sndXBsb2FkX25hbWUnXSApOwoKICAgIC8vIGFuZCBkZWxldGUgdGhlIGZpbGUKICAgIEB1bmxpbmsoICRmaWxlICk7CgogICAgLy8gYW5kIHRoZSB0aHVtYm5haWwgaWYgb25lIGV4aXN0cwoJCWlmKCAhZW1wdHkoJHVwbG9hZHJvd1sndXBsb2FkX3RodW1ibmFpbCddKSApCgkJCXsKCQkJCSR0bmZpbGUgPSAkdGhpcy0+X2NhdGVnb3J5UGF0aCggJGNhdGVnb3J5cm93Wyd1cGxvYWRfY2F0ZWdvcnlfcGF0aCddICkuRElSRUNUT1JZX1NFUEFSQVRPUjsKCQkJCSR0bmZpbGUgLj0gJHVwbG9hZHJvd1sndXBsb2FkX3RodW1ibmFpbCddOwoJCQkJQHVubGluayggJHRuZmlsZSApOwoJCQl9CgogICAgLy8gYW5kIHRoZSBkb3dubG9hZHMKICAgICRxdWVyeSA9ICJERUxFVEUgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfZG93bmxvYWRzIFdIRVJFIGZpbGVfaWQgPSA/IjsKICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHF1ZXJ5LCBhcnJheSggJHVwbG9hZHJvd1sndXBsb2FkX2lkJ10gKSApOwoKICAgIC8vIGFuZCB0aGUgcmVjb3JkIGl0c2VsZi4KICAgICRxdWVyeSA9ICJERUxFVEUgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHMgV0hFUkUgdXBsb2FkX2lkID0gPyI7CiAgICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxdWVyeSwgYXJyYXkoICR1cGxvYWRyb3dbJ3VwbG9hZF9pZCddICkgKTsKCiAgICAvLyBhbmQgd2UncmUgZG9uZQogICAgJHRoaXMtPkF1ZGl0KCAwLCAkdGhpcy0+bGFuZygnZnJpZW5kbHluYW1lJyksCgkJCQkJCQkJCSR0aGlzLT5sYW5nKCdkZWxldGVkJywgJHVwbG9hZHJvd1sndXBsb2FkX25hbWUnXSkgKTsKCiAgICAvLyBkZWxldGUgdGhlIHNlYXJjaCBzdHVmZgogICAgJG1vZHVsZSA9JiAkdGhpcy0+R2V0TW9kdWxlSW5zdGFuY2UoJ1NlYXJjaCcpOwogICAgaWYgKCRtb2R1bGUgIT0gRkFMU0UpCiAgICAgIHsKCQkJCSRtb2R1bGUtPkRlbGV0ZVdvcmRzKCR0aGlzLT5HZXROYW1lKCksICR1cGxvYWRyb3dbJ3VwbG9hZF9pZCddLCAndXBsb2FkJyk7CiAgICAgIH0KICAgIAoKICAgIC8vIHNlbmQgYW4gZXZlbnQKICAgICRwYXJtcyA9IGFycmF5KCk7CiAgICAkcGFybXNbJ2lkJ10gPSAkdXBsb2Fkcm93Wyd1cGxvYWRfaWQnXTsKICAgICRwYXJtc1snbmFtZSddID0gJHVwbG9hZHJvd1sndXBsb2FkX25hbWUnXTsKICAgICRwYXJtc1snY2F0ZWdvcnlfaWQnXSA9ICR1cGxvYWRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9pZCddOwogICAgJHRoaXMtPlNlbmRFdmVudCgnT25SZW1vdmUnLCAkcGFybXMgKTsKCiAgICAkdGhpcy0+bXlSZWRpcmVjdFRvVGFiKCRpZCwgJ2ZpbGVzJywgYXJyYXkoICdpbnB1dF9jYXRlZ29yeScgPT4gJHVwbG9hZHJvd1sndXBsb2FkX2NhdGVnb3J5X2lkJ10pKTsKICB9CgoKICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICBfRGlzcGxheUVycm9yUGFnZSgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwgJG1lc3NhZ2UpCiAgIE5PVCBQQVJUIE9GIFRIRSBNT0RVTEUgQVBJCiAgIAogICBUaGlzIGlzIGEgbWV0aG9kIHRvIGRpc3BsYXkKICAgZXJyb3IgaW5mb3JtYXRpb24gb24gdGhlIGFkbWluIHNpZGUuCiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCiAgZnVuY3Rpb24gX0Rpc3BsYXlFcnJvclBhZ2UgKCRpZCwgJiRwYXJhbXMsICRyZXR1cm5pZCwgJG1lc3NhZ2UgPSAnJykKICB7CiAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24gKCd0aXRsZV9lcnJvcicsICR0aGlzLT5MYW5nICgnZXJyb3InKSk7CiAgICBpZiAoJG1lc3NhZ2UgIT0gJycpCiAgICAgIHsKCQkJCSR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ21lc3NhZ2UnLCAkbWVzc2FnZSk7CiAgICAgIH0KICAgIGlmKCAkcmV0dXJuaWQgPT0gJycgKQogICAgICB7CgkJCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2xpbmsnLAoJCQkJCQkJCQkJCQkJCQkkdGhpcy0+Q3JlYXRlTGluaygkaWQsJ2RlZmF1bHRhZG1pbicsJHJldHVybmlkLAoJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkkdGhpcy0+TGFuZygncmV0dXJudG9tb2R1bGUnKSkpOwogICAgICB9CiAgICAKICAgIC8vIERpc3BsYXkgdGhlIHBvcHVsYXRlZCB0ZW1wbGF0ZQogICAgZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlICgnZXJyb3IudHBsJyk7CiAgfQoKCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgR2V0VXBsb2FkRGV0YWlscygkaWQsJHJldHVybmlkKQogICAKICAgUmV0dXJuIHRoZSBkZXRhaWxzIGFib3V0IGEgc3BlY2lmaWMgdXBsb2FkCiAgIHVwbG9hZF9pZAogICB1cGxvYWRfY2F0ZWdvcnlfaWQKICAgdXBsb2FkX25hbWUKICAgdXBsb2FkX2F1dGhvcgogICB1cGxvYWRfc3VtbWFyeQogICB1cGxvYWRfZGVzY3JpcHRpb24KICAgdXBsb2FkX2lwCiAgIHVwbG9hZF9zaXplCiAgIHVwbG9hZF9kYXRlCiAgIHVybAogICBhYnN1cmwKICAgbGluawogICBvciBhbiBhcnJheSAoRkFMU0UsRVJST1JNU0cpCiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCiAgZnVuY3Rpb24gR2V0VXBsb2FkRGV0YWlscyggJGlkLCAkcmV0dXJuaWQgKQogIHsKICAgICRkYiA9JiAkdGhpcy0+R2V0RGIoKTsKICAgICRxID0gIlNFTEVDVCAqIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzCiAgICAgICAgICBXSEVSRSB1cGxvYWRfaWQgPSA/IjsKICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHEsIGFycmF5KCAkaWQgKSApOwogICAgaWYoICEkZGJyZXN1bHQgKQogICAgICB7CgkJCQlyZXR1cm4gYXJyYXkoIEZBTFNFLCAkZGItPkVycm9yTXNnKCkgKTsKICAgICAgfQogICAgaWYoICEkZGJyZXN1bHQtPlJlY29yZENvdW50KCkgKQogICAgICB7CgkJCQlyZXR1cm4gYXJyYXkoIEZBTFNFLCAkdGhpcy0+TGFuZygnZXJyb3JfaW52YWxpZHVwbG9hZGlkJykpOwogICAgICB9CiAgICAkcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdygpOwogICAgaWYoICEkcm93ICkKICAgICAgewoJCQkJcmV0dXJuIGFycmF5KEZBTFNFLCAkZGItPkVycm9yTXNnKCkpOwogICAgICB9CgogICAgLy8gaGF2ZSBkZXRhaWxzIGZyb20gdGhlIHRhYmxlLCBub3cKICAgIC8vIGhhdmUgdG8gYWRkIHNvbWV0aGluZyBzdWNoIHRoYXQgYSBsaW5rIGNhbiBiZSBnZW5lcmF0ZWQKICAgIC8vIHRoYXQgd2lsbCBzdGlsbCBjb3VudCB0aGUgbnVtYmVyIG9mIGRvd25sb2FkcywgZXRjCiAgICAkcm93Wyd1cmwnXSA9ICR0aGlzLT5DcmVhdGVMaW5rICgkaWQsICdnZXRmaWxlJywgJHJldHVybmlkLCAnJywKCQkJCQkJCQkJCQkJCQkJCQkJIGFycmF5ICgndXBsb2FkX2lkJyA9PiAkcm93Wyd1cGxvYWRfaWQnXSksIAoJCQkJCQkJCQkJCQkJCQkJCQkgJycsIHRydWUsIHRydWUsICcnLCBmYWxzZSwKCQkJCQkJCQkJCQkJCQkJCQkJICR0aGlzLT5fZ2V0RmlsZVVSTCgkcm93Wyd1cGxvYWRfaWQnXSwkcm93Wyd1cGxvYWRfbmFtZSddKSk7CiAgICAkcm93WydsaW5rJ10gPSAkdGhpcy0+Q3JlYXRlTGluayAoJGlkLCAnZ2V0ZmlsZScsICRyZXR1cm5pZCwgJHJvd1sndXBsb2FkX25hbWUnXSwKCQkJCQkJCQkJCQkJCQkJCQkJCWFycmF5ICgndXBsb2FkX2lkJyA9PiAkcm93Wyd1cGxvYWRfaWQnXSksCgkJCQkJCQkJCQkJCQkJCQkJCQknJywgZmFsc2UsIHRydWUsICcnLCBmYWxzZSwKCQkJCQkJCQkJCQkJCQkJCQkJCSR0aGlzLT5fZ2V0RmlsZVVSTCgkcm93Wyd1cGxvYWRfaWQnXSwkcm93Wyd1cGxvYWRfbmFtZSddKSk7CiAgICAkcm93WydhYnN1cmwnXSA9ICR0aGlzLT5jbXMtPmNvbmZpZ1sndXBsb2Fkc191cmwnXS4iLyIuCiAgICAgICR0aGlzLT5nZXRDYXRlZ29yeVBhdGhGcm9tRmlsZUlEKCAkcm93Wyd1cGxvYWRfaWQnXSApLiIvIi4KICAgICAgJHJvd1sndXBsb2FkX25hbWUnXTsKICAgIHJldHVybiAkcm93OwogIH0KCgogIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgIEF0dGVtcHRVcGxvYWQoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsICRtZXNzYWdlKQogICBOT1QgUEFSVCBPRiBUSEUgTU9EVUxFIEFQSQogICAKICAgVGhpcyBpcyBhIG1ldGhvZCB0byBhY3R1YWxseSB0cnkgdXBsb2FkaW5nIHRoZSBmaWxlCiAgIGVuc3VyaW5nIGl0IGlzIHZhbGlkLCBhbmQgdGhlbiBhZGRpbmcgdGhlIHN0dWZmIHRvCiAgIHRoZSBkYXRhYmFzZS4KCiAgIFJldHVybnMgYW4gYXJyYXksIGZpcnN0IGVsZW1lbnQgaXMgc3VjY2VzcyAodHJ1ZS9mYWxzZSkKICAgc2Vjb25kIGVsZW1lbnQgaXMgKGlmIGZpcnN0IGVsZW1lbnQgaXMgZmFsc2UpIGFuIGVycm9yIG1lc3NhZ2UsCiAgIG9yIHRoZSBpZCBvZiB0aGUgdXBsb2FkZWQgZmlsZS4KICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KICBmdW5jdGlvbiBBdHRlbXB0VXBsb2FkICgkaWQsICYkcGFyYW1zLCAkcmV0dXJuaWQpCiAgewogICAgJGZpZWxkbmFtZSA9ICRpZC4naW5wdXRfYnJvd3NlJzsKICAgIGlmKCBpc3NldCgkcGFyYW1zWydmaWVsZF9uYW1lJ10pICkKICAgICAgewoJCQkJJGZpZWxkbmFtZSA9ICRwYXJhbXNbJ2ZpZWxkX25hbWUnXTsKICAgICAgfQoKICAgIC8vIGNoZWNrIGZvciB0aGUgZmlsZXR5cGVzIHBhcmFtCiAgICBpZiAoaXNzZXQoICRwYXJhbXNbJ2ZpbGVfZXh0ZW5zaW9ucyddICkgKQogICAgICB7CgkJCQkkdGhpcy0+dXBsb2FkX2V4dGVuc2lvbnMgPSAkcGFyYW1zWydmaWxlX2V4dGVuc2lvbnMnXTsKICAgICAgfQoKICAgIC8vIGNoZWNrIHRoZSBhdXRob3IKICAgIGlmICghaXNzZXQgKCRwYXJhbXNbJ2lucHV0X2F1dGhvciddKSkKICAgICAgewoJCQkJcmV0dXJuIGFycmF5KCBGQUxTRSwgJHRoaXMtPkxhbmcoJ2Vycm9yX2ludmFsaWRhdXRob3InKSApOwogICAgICB9CiAgICAKICAgIC8vIHNlZSBpZiB0aGVyZSdzIGEga2V5CiAgICAka2V5ID0gbnVsbDsKICAgIGlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfa2V5J10gKSApCiAgICAgIHsKCQkJCSRrZXkgPSAkcGFyYW1zWydpbnB1dF9rZXknXTsKICAgICAgfQoKICAgIC8vIHZhbGlkYXRlIHRoZSB1cGxvYWQgbmFtZQogICAgJGRlc3RuYW1lID0gJF9GSUxFU1skZmllbGRuYW1lXVsnbmFtZSddOwogICAgLy8gdmFsaWRhdGUgdGhlIHVwbG9hZCBuYW1lCiAgICAvLyBhZGRlZCBwcmVmaXggd2l0aCAkcGFyYW1zWydwcmVmaXgnXSBhbmQgJHBhcmFtc1sncHJlZml4X2ZldSddCgkJLy8gY3JlZGl0cyB0byBiaWdjYWxtCiAgICBpZiAoaXNzZXQoJHBhcmFtc1sncHJlZml4X2ZldSddKSAmJiAkcGFyYW1zWydwcmVmaXhfZmV1J10gPT0gMSkKICAgIHsKICAgICAgICAkZmlsZVByZWZpeCA9ICRwYXJhbXNbJ2lucHV0X2F1dGhvciddIC4gIl8iOwogICAgfQogICAgZWxzZQogICAgewogICAgICAgICRmaWxlUHJlZml4ID0gZGVjaGV4KHRpbWUoKSkgLiAiXyI7CiAgICB9CiAgICAkZGVzdG5hbWUgPSAoKGlzc2V0KCRwYXJhbXNbJ3ByZWZpeCddKSAmJiAkcGFyYW1zWydwcmVmaXgnXSA9PSAxKSA/ICRmaWxlUHJlZml4IDogTlVMTCkgLiAgJGRlc3RuYW1lOwogICAgaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0X2Rlc3RuYW1lJ10pICYmICRwYXJhbXNbJ2lucHV0X2Rlc3RuYW1lJ10gIT0gJycpCiAgICAgIHsKCQkJCS8vJGRlc3RuYW1lID0gdHJpbShiYXNlbmFtZSgkcGFyYW1zWydpbnB1dF9kZXN0bmFtZSddKSk7CgkJCQkvLyBjcmVkaXQgYmlnY2FsbSBmb3IgdGhlIHByZWZpeCBwYXRjaAoJCQkJJGRlc3RuYW1lID0gKChpc3NldCgkcGFyYW1zWydwcmVmaXgnXSkgJiYgJHBhcmFtc1sncHJlZml4J10gPT0gMSkgPyAkZmlsZVByZWZpeCA6IE5VTEwpIC4gdHJpbShiYXNlbmFtZSgkcGFyYW1zWydpbnB1dF9kZXN0bmFtZSddKSk7CiAgICAgIH0KCiAgICAkcmVwbGFjZV9leGlzdGluZyA9IGZhbHNlOwogICAgaWYoIGlzc2V0KCAkcGFyYW1zWydpbnB1dF9yZXBsYWNlJ10pICYmICRwYXJhbXNbJ2lucHV0X3JlcGxhY2UnXSA9PSAxICkKICAgICAgewoJCQkJJHJlcGxhY2VfZXhpc3RpbmcgPSB0cnVlOwogICAgICB9CgogICAgLy8gY2hlY2sgdGhlIHN1bW1hcnkKICAgIGlmICggIWlzc2V0KCRwYXJhbXNbJ2lucHV0X3N1bW1hcnknXSkgfHwgJHBhcmFtc1snaW5wdXRfc3VtbWFyeSddID09ICcnICkKICAgICAgewoJCQkJLy8gd2UnbGwgY2hlYXQsIGlmIHRoZSBzdW1tYXJ5IGlzIGxlZnQgYXMgZW1wdHkKCQkJCS8vIHdlJ2xsIHVzZSB0aGUgdXBsb2FkIG5hbWUKCQkJCSRwID0gc3RycG9zKCAkZGVzdG5hbWUsICcuJyApOwoJCQkJaWYoICRwICkKCQkJCQl7CgkJCQkJCSRwYXJhbXNbJ2lucHV0X3N1bW1hcnknXSA9IHN1YnN0ciggJGRlc3RuYW1lLCAwLCAkcCApOwoJCQkJCX0KCQkJCWVsc2UKCQkJCQl7CgkJCQkJCSRwYXJhbXNbJ2lucHV0X3N1bW1hcnknXSA9ICRkZXN0bmFtZTsKCQkJCQl9CgkJCQkvL3JldHVybiBhcnJheSggRkFMU0UsICR0aGlzLT5MYW5nKCdlcnJvcl9pbnZhbGlkc3VtbWFyeScpICk7CiAgICAgIH0KCiAgICAvLyBjaGVjayB0aGUgY2F0ZWdvcnkKICAgICRkYiA9JiAkdGhpcy0+R2V0RGIoKTsKICAgICRkYnJlc3VsdCA9ICIiOwogICAgJHJvdyA9IGFycmF5KCk7CiAgICAkY2F0ZWdvcnlfaWQgPSAwOwogICAgaWYgKGlzc2V0KCAkcGFyYW1zWydjYXRlZ29yeV9pZCddICkgKQogICAgICB7CgkJCQkkY2F0ZWdvcnlfaWQgPSAkcGFyYW1zWydjYXRlZ29yeV9pZCddOwoJCQkJJHF1ZXJ5ID0KCQkJCQkiU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4KCQkJCQkibW9kdWxlX3VwbG9hZHNfY2F0ZWdvcmllcyBXSEVSRSB1cGxvYWRfY2F0ZWdvcnlfaWQgPSA/IjsKCQkJCSRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSAoJHF1ZXJ5LCBhcnJheSAoJGNhdGVnb3J5X2lkKSk7CiAgICAgIH0KICAgIGVsc2UgaWYgKGlzc2V0ICgkcGFyYW1zWydjYXRlZ29yeSddKSkKICAgICAgewoJCQkJLy8gZ2V0IHRoZSBjYXRlZ29yeSBpbmZvIGdpdmVuIGl0J3MgbmFtZQoJCQkJJHF1ZXJ5ID0KCQkJCQkiU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4KCQkJCQkibW9kdWxlX3VwbG9hZHNfY2F0ZWdvcmllcyBXSEVSRSB1cGxvYWRfY2F0ZWdvcnlfbmFtZSA9ID8iOwoJCQkJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlICgkcXVlcnksIGFycmF5ICgkcGFyYW1zWydjYXRlZ29yeSddKSk7CiAgICAgIH0KICAgIGlmICghJGRicmVzdWx0KQogICAgICB7CgkJCQlyZXR1cm4gYXJyYXkoIEZBTFNFLCAkdGhpcy0+TGFuZygnZXJyb3JfaW52YWxpZGNhdGVnb3J5JykgKTsKICAgICAgfQogICAgJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3cgKCk7CiAgICBpZiggISRyb3cgKQogICAgICB7CgkJCQlyZXR1cm4gYXJyYXkoIEZBTFNFLCAkdGhpcy0+TGFuZygnZXJyb3JfaW52YWxpZGNhdGVnb3J5JykgKTsKICAgICAgfQogICAgJGNhdGVnb3J5X2lkID0gJHJvd1sndXBsb2FkX2NhdGVnb3J5X2lkJ107CiAgICAkY2F0ZWdvcnlfbmFtZSA9ICRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9uYW1lJ107CiAKICAgIC8vIG5vdyBkbyB0aGUgdXBsb2FkLCBob3BlZnVsbHkKICAgIC8vIGZpcnN0IHRoZSBmaWxlIGl0c2VsZi4KICAgICRkaXIgPSAkdGhpcy0+X2NhdGVnb3J5UGF0aCgkcm93Wyd1cGxvYWRfY2F0ZWdvcnlfcGF0aCddKTsKICAgICRyZXN1bHQgPSAkdGhpcy0+X2hhbmRsZVVwbG9hZCAoJGRpciwKCQkJCQkJCQkJCSR0aGlzLT5HZXRQcmVmZXJlbmNlICgnbWF4X3VwbG9hZHNpemUnLCAxMDAwMDAwKSAqIDEwMjQsIAoJCQkJCQkJCQkJJGZpZWxkbmFtZSwKCQkJCQkJCQkJCWZhbHNlLAoJCQkJCQkJCQkJJGRlc3RuYW1lLAoJCQkJCQkJCQkJdHJ1ZSwKCQkJCQkJCQkJCSRyZXBsYWNlX2V4aXN0aW5nKTsKICAgIGlmICghJHJlc3VsdFswXSkKICAgICAgewoJCQkJcmV0dXJuIGFycmF5KCBGQUxTRSwgJHJlc3VsdFsxXSApOwogICAgICB9CiAgICAkZGVzdG5hbWUgPSAkcmVzdWx0WzFdWyduYW1lJ107CgoKICAgIC8vIGNoZWNrIGZvciBhbiBleGlzdGluZyBkYXRhYmFzZSBlbnRyeQogICAgJHF1ZXJ5ID0gIlNFTEVDVCAqIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzIFdIRVJFIHVwbG9hZF9uYW1lID0gPyBBTkQKCQkJdXBsb2FkX2NhdGVnb3J5X2lkID0gPyI7CiAgICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxdWVyeSwgYXJyYXkoICRkZXN0bmFtZSwgJGNhdGVnb3J5X2lkICkgKTsKICAgIGlmKCAhJGRicmVzdWx0ICkgCiAgICAgIHsKCQkJCXJldHVybiBhcnJheSggRkFMU0UsICR0aGlzLT5MYW5nKCdlcnJvcl9kYmVycm9yJykgKTsKICAgICAgfQogICAgJHJvdzIgPSAkZGJyZXN1bHQtPkZldGNoUm93KCk7CgogICAgJGZpbGVpZCA9ICcnOwogICAgaWYoICRyZXBsYWNlX2V4aXN0aW5nID09IDAgKQogICAgICB7CgkJCQkvLyB3ZXJlIG5vdCBhbGxvd2luZyBvdmVyd3JpdGUKCQkJCWlmKCAkcm93MiApIAoJCQkJCXsKCQkJCQkJLy8gdGhpcyBpYSByZWR1bmRhbnQgZXJyb3IsIGFzIGl0IHNob3VsZCBoYXZlIGhhcHBlbmVkIGluIHRoZSBfaGFuZGxlVXBsb2FkCgkJCQkJCS8vIGJ1dCBvaCB3ZWxsCgkJCQkJCXJldHVybiBhcnJheSggRkFMU0UsICR0aGlzLT5MYW5nKCdlcnJvcl9maWxlZXhpc3RzJykgKTsKCQkJCQl9CiAgICAgIH0KICAgIGVsc2UKICAgICAgewoJCQkJLy8gd2UncmUgYWxsb3dpbmcgb3ZlcndyaXRlCgkJCQkkZmlsZWlkID0gJHJvdzJbJ3VwbG9hZF9pZCddOwoJCQkJJHJlcGxhY2VfZXhpc3RpbmcgPSB0cnVlOwogICAgICB9CiAJICAgICAgIAoKICAgIC8vIGNyZWF0ZSBhIG5ldyB1cGxvYWQgaWQgaGVyZS4KICAgIGlmKCAkZmlsZWlkID09ICcnICkKICAgICAgewoJCQkJJG5ld2lkID0gJGRiLT5HZW5JRCAoY21zX2RiX3ByZWZpeCAoKS4ibW9kdWxlX3VwbG9hZHNfc2VxIik7CiAgICAgIH0KCiAgICAvLyBhbmQgdGhlbiBtYXliZSB0aGUgdGh1bWJuYWlsCiAgICAkdGh1bWJfbmFtZSA9ICcnOwogICAgaWYoIGlzc2V0KCAkX0ZJTEVTWyRpZC4naW5wdXRfdGh1bWJuYWlsJ11bJ25hbWUnXSApICYmCgkJCQkkX0ZJTEVTWyRpZC4naW5wdXRfdGh1bWJuYWlsJ11bJ25hbWUnXSAhPSAnJyAmJiAKCQkJCSRfRklMRVNbJGlkLidpbnB1dF90aHVtYm5haWwnXVsnc2l6ZSddID4gMCkKICAgICAgewoKCQkJCXsKCQkJCQkvLyBidWlsZCB0aGUgdGh1bWJuYWlsIG5hbWUKCQkJCQkkdGh1bWJfZXh0ZW5zaW9uID0gc3RydG9sb3dlcihzdHJyY2hyKCRfRklMRVNbJGlkLidpbnB1dF90aHVtYm5haWwnXVsnbmFtZSddLCcuJykpOwoJCQkJCSRmaWxlZXh0ZW5zaW9uID0gc3RydG9sb3dlcihzdHJyY2hyKCRkZXN0bmFtZSwnLicpKTsKCQkJCQkkZmlsZW5hbWV3b2V4dCA9IHN1YnN0cigkZGVzdG5hbWUsMCxzdHJsZW4oJGRlc3RuYW1lKS1zdHJsZW4oJGZpbGVleHRlbnNpb24pKTsKCQkJCQkkdGh1bWJfbmFtZSA9ICd0aHVtYl8nLiRmaWxlbmFtZXdvZXh0LiR0aHVtYl9leHRlbnNpb247CgkJCQl9CgoJCQkJJGZpZCA9ICRmaWxlaWQ7CgkJCQlpZiggJGZpZCA9PSAnJyApCgkJCQkJewoJCQkJCQkkZmlkID0gJG5ld2lkOwoJCQkJCX0KCQkJCSRyZXN1bHQyID0KCQkJCQkkdGhpcy0+X2hhbmRsZVVwbG9hZCAoJGRpciwkdGhpcy0+R2V0UHJlZmVyZW5jZSAoJ21heF91cGxvYWRzaXplJywgMTAwMDAwMCkgKiAxMDI0LCAKCQkJCQkJCQkJCQkJCQkJCSRpZC4naW5wdXRfdGh1bWJuYWlsJyxmYWxzZSwKCQkJCQkJCQkJCQkJCQkJCSR0aHVtYl9uYW1lLAoJCQkJCQkJCQkJCQkJCQkJZmFsc2UsCgkJCQkJCQkJCQkJCQkJCQkkcmVwbGFjZV9leGlzdGluZyk7CgkJCQlpZiAoISRyZXN1bHQyWzBdKQoJCQkJCXsKCQkJCQkJLy8gdWgtb2gsIHRoZSBzZWNvbmQgdXBsb2FkIGZhaWxlZC4uLi4gbm93IHdlJ3ZlIGdvdHRhIAoJCQkJCQkvLyBkZWxldGUgdGhlIGZpcnN0IGZpbGUgdG8gYXZvaWQgYW55IGNvcnJ1cHRpb24KCQkJCQkJLy8gdG9kbwoJCQkJCQl1bmxpbmsoICRyZXN1bHRbMV1bJ2RpciddLkRJUkVDVE9SWV9TRVBBUkFUT1IuJHJlc3VsdFsxXVsnbmFtZSddICk7CgkJCQkJCXJldHVybiBhcnJheSggRkFMU0UsICRyZXN1bHQyWzFdICk7CgkJCQkJfQogICAgICB9CiAgICBlbHNlIAogICAgICB7CgkJCQkvLyBzZWUgaWYgd2UgY2FuIGF1dG8tY3JlYXRlIGEgdGh1bWJuYWlsCgkJCQlpZiggJHRoaXMtPkdldFByZWZlcmVuY2UoJ2F1dG90aHVtYm5haWxfZXh0ZW5zaW9ucycpICE9ICcnICYmCgkJCQkJCSR0aGlzLT5HZXRQcmVmZXJlbmNlKCdhdXRvdGh1bWJuYWlsX3NpemUnKSAhPSAnJyApCgkJCQkJewoJCQkJCQkkZmlkID0gJGZpbGVpZDsKCQkJCQkJaWYoICRmaWQgPT0gJycgKQoJCQkJCQkJewoJCQkJCQkJCSRmaWQgPSAkbmV3aWQ7CgkJCQkJCQl9CgoJCQkJCQkkZmlsZWV4dGVuc2lvbiA9IHN0cnRvbG93ZXIoc3RycmNocigkZGVzdG5hbWUsJy4nKSk7CgkJCQkJCSR0aHVtYl9leHRfYXJyID0gZXhwbG9kZSgiLCIsCgkJCQkJCQkJCQkJCQkJCQkJCSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnYXV0b3RodW1ibmFpbF9leHRlbnNpb25zJykpOwoKCQkJCQkJZm9yZWFjaCggJHRodW1iX2V4dF9hcnIgYXMgJHRodW1iX2V4dCApCgkJCQkJCQl7CgkJCQkJCQkJaWYoICIuIi4kdGh1bWJfZXh0ID09ICRmaWxlZXh0ZW5zaW9uICkKCQkJCQkJCQkJewoJCQkJCQkJCQkJLy8gd29vaG9vLCB3ZSBjYW4gY3JlYXRlIGEgdGh1bWJuYWlsCgkJCQkJCQkJCQkkZGVzdCA9ICRkaXIuRElSRUNUT1JZX1NFUEFSQVRPUi4ndGh1bWJfJy4kZGVzdG5hbWU7CgkJCQkJCQkJCQkkc3JjICA9ICRkaXIuRElSRUNUT1JZX1NFUEFSQVRPUi4kZGVzdG5hbWU7CgkJCQkJCQkJCQkkdGh1bWJfbmFtZSA9ICd0aHVtYl8nLiRkZXN0bmFtZTsKCQkJCQkJCQkJCSR0aGlzLT5pbWFnZVRyYW5zZm9ybSgkc3JjLCRkZXN0LAoJCQkJCQkJCQkJCQkJCQkJCQkJCQkkdGhpcy0+R2V0UHJlZmVyZW5jZSgnYXV0b3RodW1ibmFpbF9zaXplJykpOwoJCQkJCQkJCQkJYnJlYWs7CgkJCQkJCQkJCX0KCQkJCQkJCX0KCQkJCQl9CiAgICAgIH0KCiAgICAvLyBhcHBhcmVudGx5IHRoZSB1cGxvYWQgc3VjY2VlZGVkLCBub3cgd2UgaGF2ZSB0byBsb2cgaXQKICAgICRkZXNjID0gIiI7CiAgICBpZiggaXNzZXQoICRwYXJhbXNbJ2lucHV0X2Rlc2NyaXB0aW9uJ10gKSApCiAgICAgIHsKCQkJCSRkZXNjID0gJHBhcmFtc1snaW5wdXRfZGVzY3JpcHRpb24nXTsKICAgICAgfQoKICAgIGlmKCAkZmlsZWlkID09ICcnICkKICAgICAgewoJCQkJJHF1ZXJ5ID0KCQkJCQkiSU5TRVJUIElOVE8gIi5jbXNfZGJfcHJlZml4ICgpLiJtb2R1bGVfdXBsb2FkcyAKICAgICAgICAgICAodXBsb2FkX2lkLHVwbG9hZF9jYXRlZ29yeV9pZCx1cGxvYWRfbmFtZSx1cGxvYWRfYXV0aG9yLAogICAgICAgICAgICB1cGxvYWRfc3VtbWFyeSx1cGxvYWRfZGVzY3JpcHRpb24sdXBsb2FkX2lwLHVwbG9hZF9zaXplLAogICAgICAgICAgICB1cGxvYWRfZGF0ZSwgdXBsb2FkX2tleSwgdXBsb2FkX3RodW1ibmFpbCkKICAgICAgICAgICBWQUxVRVMgKD8sPyw/LD8sPyw/LD8sPyw/LD8sPykiOwoJCQkJJGRicmVzdWx0ID0KCQkJCQkkZGItPkV4ZWN1dGUgKCRxdWVyeSwKCQkJCQkJCQkJCQkJYXJyYXkgKCRuZXdpZCwKCQkJCQkJCQkJCQkJCQkJICRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9pZCddLAoJCQkJCQkJCQkJCQkJCQkgJGRlc3RuYW1lLCAKCQkJCQkJCQkJCQkJCQkJICRwYXJhbXNbJ2lucHV0X2F1dGhvciddLAoJCQkJCQkJCQkJCQkJCQkgJHBhcmFtc1snaW5wdXRfc3VtbWFyeSddLAoJCQkJCQkJCQkJCQkJCQkgJGRlc2MsCgkJCQkJCQkJCQkJCQkJCSBnZXRlbnYgKCJSRU1PVEVfQUREUiIpLCAKCQkJCQkJCQkJCQkJCQkJICRyZXN1bHRbMV1bJ3NpemUnXSwKCQkJCQkJCQkJCQkJCQkJIHRyaW0oJGRiLT5EQlRpbWVTdGFtcCAodGltZSAoKSksIiciKSwKCQkJCQkJCQkJCQkJCQkJICRrZXksCgkJCQkJCQkJCQkJCQkJCSAkdGh1bWJfbmFtZQoJCQkJCQkJCQkJCQkJCQkgKSk7CgkJCQkkdGhpcy0+QXVkaXQoIDAsICR0aGlzLT5sYW5nKCdmcmllbmRseW5hbWUnKSwKCQkJCQkJCQkJCQkkdGhpcy0+bGFuZygndXBsb2FkZWQnLCBhcnJheSgkZGVzdG5hbWUsICRwYXJhbXNbJ2lucHV0X2F1dGhvciddKSkgKTsKCiAgICAgIH0KICAgIGVsc2UKICAgICAgewoJCQkJJHF1ZXJ5ID0gIlVQREFURSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHMKICAgICAgICAgICBTRVQgdXBsb2FkX25hbWUgPSA/LCB1cGxvYWRfYXV0aG9yID0gPywKICAgICAgICAgICAgICAgdXBsb2FkX3N1bW1hcnkgPSA/LCB1cGxvYWRfZGVzY3JpcHRpb24gPSA/LAogICAgICAgICAgICAgICB1cGxvYWRfaXAgPSA/LCB1cGxvYWRfc2l6ZSA9ID8sIHVwbG9hZF9kYXRlID0gPywKICAgICAgICAgICAgICAgdXBsb2FkX3RodW1ibmFsID0gPywKICAgICAgICAgICBXSEVSRSB1cGxvYWRfaWQgPSA/IjsKCQkJCSRkYnJlc3VsdCA9CgkJCQkJJGRiLT5FeGVjdXRlKCAkcXVlcnksCgkJCQkJCQkJCQkJCWFycmF5KCAkZGVzdG5hbWUsCgkJCQkJCQkJCQkJCQkJCSAkcGFyYW1zWydpbnB1dF9hdXRob3InXSwKCQkJCQkJCQkJCQkJCQkJICRwYXJhbXNbJ2lucHV0X3N1bW1hcnknXSwKCQkJCQkJCQkJCQkJCQkJICRkZXNjLAoJCQkJCQkJCQkJCQkJCQkgZ2V0ZW52KCAiUkVNT1RFX0FERFIiICksCgkJCQkJCQkJCQkJCQkJCSAkcmVzdWx0WzFdWydzaXplJ10sCgkJCQkJCQkJCQkJCQkJCSB0cmltKCRkYi0+REJUaW1lU3RhbXAodGltZSgpKSwiJyIpLAoJCQkJCQkJCQkJCQkJCQkgJGZpbGVpZCwKCQkJCQkJCQkJCQkJCQkJICR0aHVtYl9uYW1lKSk7CgoJCQkJJG5ld2lkID0gJGZpbGVpZDsKCQkJCSR0aGlzLT5BdWRpdCggMCwgJHRoaXMtPmxhbmcoJ2ZyaWVuZGx5bmFtZScpLAoJCQkJCQkJCQkJCSR0aGlzLT5sYW5nKCdyZXBsYWNlZCcsICRkZXN0bmFtZSwgJHBhcmFtc1snaW5wdXRfYXV0aG9yJ10pICk7CgogICAgICB9CgoKICAgIC8vIHRoYXQgc2hvdWxkIGRvIHRoZSB0cmljawogICAgLy8gbm93IG1heWJlIHdlJ2xsIHNlbmQgYW4gZW1haWwKICAgICR0b19hZGRyZXNzID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ3NlbmRfdXBsb2FkX25vdGlmaWNhdGlvbnNfdG8nKTsKICAgIGlmKCAkdG9fYWRkcmVzcyAmJiAkdG9fYWRkcmVzcyAhPSAnJyApCiAgICAgIHsKCQkJCS8vIGZpbGwgb3V0IHRoZSB0ZW1wbGF0ZSwgYW5kIHNlbmQgYW4gZW1haWwKCQkJCSRjbXNtYWlsZXIgPSAkdGhpcy0+R2V0TW9kdWxlSW5zdGFuY2UoICdDTVNNYWlsZXInICk7CgkJCQlpZiggISRjbXNtYWlsZXIgKQoJCQkJCXsKCQkJCQkJLy8gd2UncmUgbm90IGdvbm5hIHJldHVybiBhbiBlcnJvciwgYnV0IHB1dAoJCQkJCQkvLyBhIG1lc3NhZ2UgaW50byB0aGUgYWRtaW4gbG9nCgkJCQkJCSR0aGlzLT5BdWRpdCggMCwgJHRoaXMtPkxhbmcoJ2ZyaWVuZGx5bmFtZScpLAoJCQkJCQkJCQkJCQkJJHRoaXMtPkxhbmcoJ2Vycm9yX25vbWFpbGVybW9kdWxlJykpOwoJCQkJCX0KCQkJCWVsc2UKCQkJCQl7CgkJCQkJCSR0aGlzLT5zbWFydHktPmFzc2lnbignbmFtZScsICRkZXN0bmFtZSApOwoJCQkJCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3NpemUnLCAkcmVzdWx0WzFdWydzaXplJ10gKTsKCQkJCQkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzdW1tYXJ5JywgJHBhcmFtc1snaW5wdXRfc3VtbWFyeSddICk7CgkJCQkJCSR0aGlzLT5zbWFydHktPmFzc2lnbignZGVzY3JpcHRpb24nLCAkZGVzYyApOwoJCQkJCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2F1dGhvcicsICRwYXJhbXNbJ2lucHV0X2F1dGhvciddICk7CgkJCQkJCSR0aGlzLT5zbWFydHktPmFzc2lnbignaXBfYWRkcmVzcycsIGdldGVudiAoIlJFTU9URV9BRERSIikgKTsKCQkJCQkJJGJvZHkgPSAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlRnJvbURhdGFiYXNlKCd1cGxvYWRfZW1haWx0ZW1wbGF0ZScpOwoJCQkJCQkkY21zbWFpbGVyLT5BZGRBZGRyZXNzKCAkdG9fYWRkcmVzcyApOwoJCQkJCQkkY21zbWFpbGVyLT5TZXRCb2R5KCAkYm9keSApOwoJCQkJCQkkY21zbWFpbGVyLT5Jc0hUTUwodHJ1ZSk7CgkJCQkJCSRjbXNtYWlsZXItPlNldFN1YmplY3QoJHRoaXMtPkxhbmcoJ3VwbG9hZF9ub3RpZmljYXRpb24nKSk7CgkJCQkJCSRjbXNtYWlsZXItPlNlbmQoKTsKCQkJCQl9CiAgICAgIH0KCgogICAgLy8gdXBkYXRlIHNlYXJjaCB3b3JkcwogICAgJHNlYXJjaCA9JiAkdGhpcy0+R2V0TW9kdWxlSW5zdGFuY2UoJ1NlYXJjaCcpOwogICAgaWYgKCRzZWFyY2ggIT0gRkFMU0UpCiAgICAgIHsKCQkJCSRzdHIgPSAkZGVzdG5hbWUuJyAnLiRwYXJhbXNbJ2lucHV0X2F1dGhvciddLicgJy4KCQkJCQkkcGFyYW1zWydpbnB1dF9zdW1tYXJ5J10uJGRlc2M7CgkJCQkkc2VhcmNoLT5BZGRXb3JkcyggJHRoaXMtPkdldE5hbWUoKSwgJG5ld2lkLCAndXBsb2FkJywgJHN0ciApOwogICAgICB9CgogICAgLy8gc2VuZCBhbiBldmVudAogICAgJHBhcm1zID0gYXJyYXkoKTsKICAgICRwYXJtc1snY2F0ZWdvcnknXSA9ICRjYXRlZ29yeV9uYW1lOwogICAgJHBhcm1zWyduYW1lJ10gPSAkZGVzdG5hbWU7CiAgICAkcGFybXNbJ3NpemUnXSA9ICRyZXN1bHRbMV1bJ3NpemUnXTsKICAgICRwYXJtc1snc3VtbWFyeSddID0gJHBhcmFtc1snaW5wdXRfc3VtbWFyeSddOwogICAgJHBhcm1zWydkZXNjcmlwdGlvbiddID0gJGRlc2M7CiAgICAkcGFybXNbJ2F1dGhvciddID0gJHBhcmFtc1snaW5wdXRfYXV0aG9yJ107CiAgICAkcGFybXNbJ2lwX2FkZHJlc3MnXSA9IGdldGVudigiUkVNT1RFX0FERFIiKTsKICAgICR0aGlzLT5TZW5kRXZlbnQoICJPblVwbG9hZCIsICRwYXJhbXMgKTsKCiAgICBpZiggJGZpbGVpZCA9PSAnJyApCiAgICAgIHsKCQkJCXJldHVybiBhcnJheSggVFJVRSwgJG5ld2lkICk7CiAgICAgIH0KICAgIHJldHVybiBhcnJheSggVFJVRSwgJGZpbGVpZCApOwogIH0KCgogIGZ1bmN0aW9uIG15UmVkaXJlY3RUb1RhYiggJGlkLCAkdGFiLCAkcGFyYW1zID0gJycgKQogIHsKICAgICRwYXJtcyA9IGFycmF5KCk7CiAgICBpZiggaXNfYXJyYXkoICRwYXJhbXMgKSApCiAgICAgIHsKCQkJCSRwYXJtcyA9ICRwYXJhbXM7CiAgICAgIH0KICAgICRwYXJtcyA9IGFycmF5KCdhY3RpdmVfdGFiJyA9PiAkdGFiICk7CiAgICAkdGhpcy0+bXlSZWRpcmVjdCggJGlkLCAnZGVmYXVsdGFkbWluJywgJHBhcm1zICk7CiAgfQoKICBmdW5jdGlvbiBteVJlZGlyZWN0KCAkaWQsICRhY3Rpb24sICRwYXJhbXMgPSAnJyApCiAgewogICAgdW5zZXQoICRwYXJhbXNbJ2FjdGlvbiddICk7CiAgICAkdGhpcy0+UmVkaXJlY3QoICRpZCwgJGFjdGlvbiwgJycsICRwYXJhbXMgKTsKICB9CgoKICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICBfaGFuZGxlVXBsb2FkKCAkZGVzdERpciwgJG1heEZpbGVTaXplLCAkZmllbGROYW1lLCAkbmFtZUNhbGxiYWMgKQogICBOT1QgUEFSVCBPRiBUSEUgTU9EVUxFIEFQSQoKICAgVGhpcyBtZXRob2QgaGFuZGxlcyB2YWxpZGF0aW5nIHRoZSB1cGxvYWQgcGFyYW1ldGVycywgYW5kIGNvcHlpbmcKICAgdGhlIGZpbGUgZnJvbSBpdCdzIHRlbXBvcmFyeSBsb2NhdGlvbiB0byBpdCdzIHBlcm1hbmVudCBsb2NhdGlvbi4KICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KICBmdW5jdGlvbiBfaGFuZGxlVXBsb2FkICgkZGVzdERpciwgJG1heEZpbGVTaXplID0KCQkJCQkJCQkJCQkJCWZhbHNlLCAkZmllbGROYW1lID0gJ191cGxvYWQnLCAkbmFtZUNhbGxiYWNrID0gZmFsc2UsCgkJCQkJCQkJCQkJCQkkZGVzdG5hbWUgPSAnJywkZW5mb3JjZWV4dGVuc2lvbiA9IHRydWUsCgkJCQkJCQkJCQkJCQkkcmVwbGFjZV9leGlzdGluZyA9IGZhbHNlKQogIHsKICAgIC8vbWFrZSBzdXJlIHNvbWV0aGluZyBpcyB0aGVyZQogICAgaWYgKCFpc3NldCAoJF9GSUxFU1skZmllbGROYW1lXSkgfHwgIWlzc2V0ICgkX0ZJTEVTKQoJCQkJfHwgIWlzX2FycmF5ICgkX0ZJTEVTWyRmaWVsZE5hbWVdKSB8fCAhJF9GSUxFU1skZmllbGROYW1lXVsnbmFtZSddKQogICAgICB7CgkJCQlyZXR1cm4gYXJyYXkgKGZhbHNlLCAkdGhpcy0+TGFuZygnZXJyb3Jfbm9maWxlc3VwbG9hZGVkJykpOwogICAgICB9CgogICAgLy9ub3JtYWxpemUgdGhlIGZpbGUgdmFyaWFibGUKICAgICRmaWxlID0gJF9GSUxFU1skZmllbGROYW1lXTsKICAgIGlmICghaXNzZXQgKCRmaWxlWyd0eXBlJ10pKQogICAgICAkZmlsZVsndHlwZSddID0gJyc7CiAgICBpZiAoIWlzc2V0ICgkZmlsZVsnc2l6ZSddKSkKICAgICAgJGZpbGVbJ3NpemUnXSA9ICcnOwogICAgaWYgKCFpc3NldCAoJGZpbGVbJ3RtcF9uYW1lJ10pKQogICAgICAkZmlsZVsndG1wX25hbWUnXSA9ICcnOwogICAgJGZpbGVbJ25hbWUnXSA9CiAgICAgIHByZWdfcmVwbGFjZSgnL1teYS16QS1aMC05XC5cJFwlXCdcYFwtXEBce1x9XH5cIVwjXChcKVwmXF9cXl0vJywgJycsCgkJCQkJCQkJCSBzdHJfcmVwbGFjZSAoYXJyYXkgKCcgJywgJyUyMCcpLCBhcnJheSAoJ18nLCAnXycpLCAkZmlsZVsnbmFtZSddKSk7CgogICAgLy8gdmFsaWRhdGUgdGhlIGZpbGVuYW1lCiAgICBpZiAoISR0aGlzLT5faXNWYWxpZEZpbGVuYW1lICgkZmlsZVsnbmFtZSddKSkKICAgICAgewoJCQkJcmV0dXJuIGFycmF5IChmYWxzZSwgJHRoaXMtPkxhbmcgKCdlcnJvcl9pbnZhbGlkdXBsb2FkZmlsZW5hbWUnLCRmaWxlWyduYW1lJ10pKTsKICAgICAgfQoKICAgIC8vd2FzIGl0IHRvIGJpZz8KICAgIGlmICgkbWF4RmlsZVNpemUgJiYgKCRmaWxlWydzaXplJ10gPiAoJG1heEZpbGVTaXplICogMTAyNCkpKQogICAgICByZXR1cm4gYXJyYXkgKGZhbHNlLCAkdGhpcy0+TGFuZyAoJ2Vycm9yX2ZpbGV0b29sYXJnZScpKTsKCiAgICAvL25vcm1hbGl6ZSBkZXN0RGlyCiAgICBpZiAoc3RybGVuICgkZGVzdERpcikgPiAwICYmICRkZXN0RGlyW3N0cmxlbiAoJGRlc3REaXIpIC0gMV0gIT0gIi8iKQogICAgICAkZGVzdERpciA9ICRkZXN0RGlyLicvJzsKCiAgICAvLyBnZXQgdGhlIGRlc3RpbmF0aW9uIG5hbWUKICAgIGlmKCAkZGVzdG5hbWUgPT0gJycgKSB7CiAgICAgICRkZXN0bmFtZSA9ICRmaWxlWyduYW1lJ107CiAgICB9CiAgICAKICAgIC8vc2hvdWxkIHdlIGNoYW5nZSB0aGUgZmlsZW5hbWUgdmlhIGEgY2FsbGJhY2s/CiAgICBpZiAoJG5hbWVDYWxsYmFjaykKICAgICAgewoJCQkJJGRlc3RuYW1lID0KCQkJCQljYWxsX3VzZXJfZnVuY19hcnJheSAoJG5hbWVDYWxsYmFjaywgYXJyYXkgKCRmaWxlLCAkZGVzdERpcikpOwogICAgICB9CgogICAgaWYoICRlbmZvcmNlZXh0ZW5zaW9uID09IHRydWUgJiYgJHRoaXMtPkdldFByZWZlcmVuY2UoJ3JlcXVpcmVmaWxlbmFtZV9leHRlbnNpb25zJywxKSkKICAgICAgewoJCQkJLy8gbWFrZSBzdXJlIGl0IGhhcyBhbiBleHRlbnNpb24KCQkJCS8vIGlmIGl0IGRvZXNuJ3QgaGF2ZSBvbmUsIHdlIGdpdmUgaXQgb25lICh0aGUgb25lIG9mZiB0aGUgaW5wdXQgZmlsZSkKCQkJCWlmKCBzdHJwb3MoJGRlc3RuYW1lLCcuJykgPT0gZmFsc2UgKQoJCQkJCXsKCQkJCQkJaWYoICgkcCA9IHN0cnBvcyggJGZpbGVbJ25hbWUnXSwgJy4nICkgKSAhPSBmYWxzZSApCgkJCQkJCQl7CgkJCQkJCQkJJGRlc3RuYW1lID0gJGRlc3RuYW1lIC4gc3Vic3RyKCAkZmlsZVsnbmFtZSddLCAkcCApOwoJCQkJCQkJfQoJCQkJCX0KICAgICAgfQoKICAgIC8vIGFuZCBjbGVhbiBpdCB1cAogICAgJGRlc3RuYW1lID0gCiAgICAgIHByZWdfcmVwbGFjZSgnL1teYS16QS1aMC05XC5cJFwlXCdcYFwtXEBce1x9XH5cIVwjXChcKVwmXF9cXl0vJywgJycsCgkJCQkJCQkJCSBzdHJfcmVwbGFjZSAoYXJyYXkgKCcgJywgJyUyMCcpLCBhcnJheSAoJ18nLCAnXycpLCAkZGVzdG5hbWUpKTsKCiAgICBpZiggJHJlcGxhY2VfZXhpc3RpbmcgPT0gZmFsc2UgKQogICAgICB7CgkJCQlpZiggZmlsZV9leGlzdHMoICRkZXN0RGlyLiRkZXN0bmFtZSApICYmICRyZXBsYWNlX2V4aXN0aW5nID09IGZhbHNlICkgewoJCQkJCXJldHVybiBhcnJheSggZmFsc2UsICR0aGlzLT5MYW5nKCAnZXJyb3JfZmlsZWV4aXN0cycsICRkZXN0RGlyLiRkZXN0bmFtZSApKTsKCQkJCX0KICAgICAgfQoJCWVsc2UKCQkJewoJCQkJLy8gcmVwbGFjaW5nIGFuIGV4aXN0aW5nIGZpbGUKCQkJCS8vIGRlbGV0ZSBpdCBmaXJzdCwgc28gdGhlIGNvcHkgd2lsbCBzdWNjZWVkLgoJCQkJQHVubGluaygkZGVzdERpci4kZGVzdG5hbWUpOwoJCQl9CgogICAgLy9hbmQgbm93IHRoZSBiaWcgbW9tZW50CiAgICBpZiAoIUBjb3B5ICgkZmlsZVsndG1wX25hbWUnXSwgJGRlc3REaXIuJGRlc3RuYW1lKSkKICAgICAgewoJCQkJcmV0dXJuIGFycmF5IChmYWxzZSwKCQkJCQkJCQkJCQkkdGhpcy0+TGFuZyAoJ2Vycm9yX2NvdWxkbm90d3JpdGUnKS4KCQkJCQkJCQkJCQknOiZuYnNwOycuJGZpbGVbJ25hbWUnXS4iIC0+ICIuJGRlc3REaXIgLiAkZGVzdG5hbWUgLiAiICIuCgkJCQkJCQkJCQkJJHRoaXMtPkxhbmcgKCdlcnJvcl9wZXJtaXNzaW9uZGVuaWVkJykpOwogICAgICB9CiAgICBlbHNlCiAgICAgIHsKCQkJCXJldHVybiBhcnJheSAodHJ1ZSwgYXJyYXkoJ25hbWUnID0+ICRkZXN0bmFtZSwgJ3NpemUnID0+ICRmaWxlWydzaXplJ10sCgkJCQkJCQkJCQkJCQkJCQkJJ2RpcicgPT4gJGRlc3REaXIgKSk7CiAgICAgIH0KICB9CgoKICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICBTY2FuRGlyZWN0b3J5KCRjYXRlZ29yeV9pZCwgJGRpciApCiAgIE5PVCBQQVJUIE9GIFRIRSBNT0RVTEUgQVBJCgogICBBIHV0aWxpdHkgdG8gaW5zZXJ0IHJlY29yZHMgaW50byB0aGUgdXBsb2FkcyBkYXRhYmFzZQogICBmb3IgYWxsIGZpbGVzIHRoYXQgY3VycmVudGx5IGV4aXN0IGluIGEgZGlyZWN0b3J5LgogICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwogIGZ1bmN0aW9uIFNjYW5EaXJlY3RvcnkoJGNhdGVnb3J5X2lkLCAkZGlyICkKICB7CiAgICAkZGIgPSYgJHRoaXMtPkdldERiKCk7CiAgICAkZGVzYyA9ICJQcmUtZXhpc3RpbmcgZmlsZSI7CgkJJG5vdyA9ICRkYi0+RGJUaW1lU3RhbXAodGltZSgpKTsKCiAgICAkZmlsZXMgPSAkdGhpcy0+X3NjYW5kaXIoICRkaXIgKTsKICAgIGlmKCAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnY3JlYWVfZHVtbXlfaW5kZXhfaHRtbCcpICkKICAgICAgewoJCQkJQHRvdWNoKCAkZGlyLkRJUkVDVE9SWV9TRVBBUkFUT1IuImluZGV4Lmh0bWwiICk7CiAgICAgIH0KICAgIGlmKCAkZmlsZXMgKQogICAgICB7CgkJCQlmb3JlYWNoKCAkZmlsZXMgYXMgJGZpbGUgKSB7CgkJCQkJLy8gaWdub3JlIGRpcmVjdG9yaWVzIC4gYW5kIC4uCgkJCQkJaWYoICRmaWxlID09ICIuIiB8fCAkZmlsZSA9PSAiLi4iICkgewoJCQkJCQljb250aW51ZTsKCQkJCQl9CgoJCQkJCS8vIGlnbm9yZSBhbnkgZGlyZWN0b3JpZXMKCQkJCQkkc3JjcCA9ICRkaXIuRElSRUNUT1JZX1NFUEFSQVRPUi4kZmlsZTsKCQkJCQlpZiggaXNfZGlyKCAkc3JjcCApICkgewoJCQkJCQljb250aW51ZTsKCQkJCQl9CgoJCQkJCS8vIGlnbm9yZSB0aHVtYm5haWwgZmlsZXMKCQkJCQlpZiggc3RhcnRzd2l0aCgkZmlsZSwndGh1bWJfJykgKSB7CgkJCQkJCWNvbnRpbnVlOwoJCQkJCX0KCgkJCQkJLy8gZ290IHRoZSBmaWxlLCBub3cgbmVlZCBpdCdzIHNpemUKCQkJCQkkc2l6ZSA9IGZpbGVzaXplKCRzcmNwKTsKCSAgCgkJCQkJLy8gbm93IHdlIG5lZWQgdG8gbWF5YmUgcmVuYW1lIHRoZSBmaWxlLi4uCgkJCQkJLy8gY3V6IGl0IG1heSBoYXZlIHNwYWNlcyBpbiBpdCwgYW5kIGh0dHAgbWF5IG5vdCBsaWtlIHRoYXQKCQkJCQkvLyB3ZSB1c2UgYW4gKG9wdGlvbmFsKSBjb3VudGVyIHRvIG1ha2Ugc3VyZSB0aGF0IHdlCgkJCQkJLy8gY2FuIGhhdmUgbnVtZXJvdXMgZmlsZXMgd2l0aCBzaW1pbGFyIG5hbWVzCgkJCQkJJHBvc3RmaXggPSAiIjsKCQkJCQl3aGlsZSggJHBvc3RmaXggPCAxMDAgKQoJCQkJCQl7CgkJCQkJCQkkZGVzdGZpbGUgPSBzdHJfcmVwbGFjZSAoYXJyYXkgKCcgJywgJyUyMCcpLCBhcnJheSAoJ18nLCAnXycpLCAkZmlsZSApOwoJCQkJCQkJaWYoICRwb3N0Zml4ICE9ICIiICkKCQkJCQkJCQl7CgkJCQkJCQkJCSRkZXN0ZmlsZSAuPSAiXyIgLiAkcG9zdGZpeDsKCQkJCQkJCQl9CgkgICAgICAKCQkJCQkJCWlmKCAkZGVzdGZpbGUgIT0gJGZpbGUgKQoJCQkJCQkJCXsKCQkJCQkJCQkJJGRlc3RwID0gJGRpci5ESVJFQ1RPUllfU0VQQVJBVE9SLiRkZXN0ZmlsZTsKCQkgIAoJCQkJCQkJCQkvLyB5ZXAsIHdlIGdvdHRhIHJlbmFtZSBpdAoJCQkJCQkJCQkvLyBidXQgbWFrZSBzdXJlIHRoZSBmaWxlIGRvZXNuJ3QgYWxyZWFkeSBleGlzdCBmaXJzdAoJCQkJCQkJCQlpZiggZmlsZV9leGlzdHMoICRkZXN0cCApICkKCQkJCQkJCQkJCXsKCQkJCQkJCQkJCQkvLyB1aC1vaCBpdCBleGlzdHMKCQkJCQkJCQkJCQkvLyBpbmNyZW1lbnQgdGhlIHBvc3RmaXgKCQkJCQkJCQkJCQlpZiggJHBvc3RmaXggPT0gIiIgKQoJCQkJCQkJCQkJCQl7CgkJCQkJCQkJCQkJCQkkcG9zdGZpeCA9IDE7CgkJCQkJCQkJCQkJCX0KCQkJCQkJCQkJCQllbHNlCgkJCQkJCQkJCQkJCXsKCQkJCQkJCQkJCQkJCSRwb3N0Zml4Kys7CgkJCQkJCQkJCQkJCX0KCQkJCQkJCQkJCQljb250aW51ZTsKCQkJCQkJCQkJCX0KCQkgIAoJCQkJCQkJCQlyZW5hbWUoICRzcmNwLCAkZGVzdHAgKTsKCQkJCQkJCQkJJGZpbGUgPSAkZGVzdGZpbGU7CgkJCQkJCQkJCSRzcmNwID0gJGRlc3RwOwoJCQkJCQkJCX0KCSAgICAgIAoJCQkJCQkJYnJlYWs7IC8vIGdldCBvdXQgb2YgdGhpcyB3aGlsZSBzdGF0ZW1lbnQKCQkJCQkJfQoJICAKCQkJCQlpZiggJHBvc3RmaXggPj0gMTAwICkKCQkJCQkJewoJCQkJCQkJLy8gZm9yIHNvbWUgb2RkIHJlYXNvbiwgd2UgY291bGQgbm90IGZpbmQgYSByZWFzb25hYmxlCgkJCQkJCQkvLyBmaWxlbmFtZSB0byByZW5hbWUgdG8uCgkJCQkJCQkvLyB3ZSdsbCBqdXN0IHNraXAgdGhpcyBmaWxlCgkJCQkJCQljb250aW51ZTsKCQkJCQkJfQoKCQkJCQkvLyBuZXh0IGNoZWNrIHRvIG1ha2Ugc3VyZSBpdHMgbm90IGFscmVhZHkgaW4gdGhlIGRhdGFiYXNlCgkJCQkJJHEgPSAiU0VMRUNUIHVwbG9hZF9pZCx1cGxvYWRfdGh1bWIgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHMgV0hFUkUKICAgICAgICAgICAgdXBsb2FkX25hbWUgPSA/IEFORCB1cGxvYWRfY2F0ZWdvcnlfaWQgPSA/IjsKCQkJCQkkZmlsZWlkID0gJyc7CgkJCQkJJHRodW1iX25hbWUgPSAnJzsKCQkJCQkkdG1wID0gJGRiLT5HZXRSb3coICRxLCBhcnJheSggJGZpbGUsICRjYXRlZ29yeV9pZCkgKTsKCQkJCQlpZiggJHRtcCApCgkJCQkJCXsKCQkJCQkJCS8vIHdlIGFscmVhZHkga25vdyBhYm91dCB0aGlzIG9uZQoJCQkJCQkJJGZpbGVpZCA9ICR0bXBbJ3VwbG9hZF9pZCddOwoJCQkJCQkJJHRodW1iX25hbWUgPSAkdG1wWyd1cGxvYWRfdGh1bWInXTsKCQkJCQkJfQoJCQkJCWVsc2UgCgkJCQkJCXsKCQkJCQkJCS8vIGl0J3MgYSBuZXcgZmlsZQoJCQkJCQkJJHF1ZXJ5ID0gIklOU0VSVCBJTlRPICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2FkcyAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh1cGxvYWRfaWQsIHVwbG9hZF9jYXRlZ29yeV9pZCwgdXBsb2FkX25hbWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXBsb2FkX2F1dGhvciwgdXBsb2FkX3N1bW1hcnksIHVwbG9hZF9kZXNjcmlwdGlvbiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cGxvYWRfaXAsIHVwbG9hZF9zaXplLCB1cGxvYWRfZGF0ZSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZBTFVFUyAoPyw/LD8sPyw/LD8sPyw/LCRub3cpIjsKCQkJCQkJCSR1c2VyaWQgPSBnZXRfdXNlcmlkKCk7CgkJCQkJCQkkdXNlcm5hbWUgPSAkX1NFU1NJT05bImNtc19hZG1pbl91c2VybmFtZSJdOwoJCQkJCQkJJGZpbGVpZCA9ICRkYi0+R2VuSUQgKGNtc19kYl9wcmVmaXggKCkuIm1vZHVsZV91cGxvYWRzX3NlcSIpOwoJCQkJCQkJJHBhcm1zID0gYXJyYXkoICRmaWxlaWQsIAoJCQkJCQkJCQkJCQkJCQkkY2F0ZWdvcnlfaWQsCgkJCQkJCQkJCQkJCQkJCSRmaWxlLCAKCQkJCQkJCQkJCQkJCQkJJHVzZXJuYW1lLCAKCQkJCQkJCQkJCQkJCQkJJGRlc2MsIAoJCQkJCQkJCQkJCQkJCQkiIiwgCgkJCQkJCQkJCQkJCQkJCSJsb2NhbGhvc3QiLCAKCQkJCQkJCQkJCQkJCQkJJHNpemUgKTsKCQkJCQkJCSRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHF1ZXJ5LCAkcGFybXMgKTsKCQkJCQkJCWlmKCAhJGRicmVzdWx0ICkgCgkJCQkJCQkJewoJCQkJCQkJCQllY2hvICJERUJVRzogIi4kZGItPnNxbC4iPGJyLz4iOwoJCQkJCQkJCQllY2hvICJFUlJPUjogIi4kZGItPkVycm9yTXNnKCkuIjxici8+IjsKCQkJCQkJCQkJZGllKCk7CgkJCQkJCQkJCXJldHVybjsKCQkJCQkJCQl9CgkJCQkJCX0KCgkJCQkJLy8gYW5kIG1heWJlLCBqdXN0IG1heWJlIGNyZWF0ZSBhIHRodW1ibmFpbCBmb3IgaXQKCQkJCQlpZiggZW1wdHkoJHRodW1iX25hbWUpICkKCQkJCQkJewoJCQkJCQkJJHRodW1iX25hbWUgPSAndGh1bWJfJy4kZmlsZTsKCQkJCQkJfQoKCQkJCQkvLyBzZWUgaWYgd2UncmUgZG9pbmcgdGh1bWJuYWlsaW5nIGF0IGFsbAoJCQkJCWlmKCAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnYXV0b3RodW1ibmFpbF9leHRlbnNpb25zJykgIT0gJycgJiYKCQkJCQkJCSR0aGlzLT5HZXRQcmVmZXJlbmNlKCdhdXRvdGh1bWJuYWlsX3NpemUnKSAhPSAnJyApCgkJCQkJCXsKCQkJCQkJCS8vIHNlZSBpZiB0aGlzIGZpbGUgaXMgdGh1bWJuYWlsYWJsZQoJCQkJCQkJJGZpbGVleHRlbnNpb24gPSBzdHJ0b2xvd2VyKHN0cnJjaHIoJGZpbGUsJy4nKSk7CgkJCQkJCQkkdGh1bWJfZXh0X2FyciA9IGV4cGxvZGUoIiwiLAoJCQkJCQkJCQkJCQkJCQkJCQkJICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdhdXRvdGh1bWJuYWlsX2V4dGVuc2lvbnMnKSk7CgoJCQkJCQkJJGlzX2ltYWdlID0gZmFsc2U7CgkJCQkJCQlmb3JlYWNoKCAkdGh1bWJfZXh0X2FyciBhcyAkdGh1bWJfZXh0ICkKCQkJCQkJCQl7CgkJCQkJCQkJCWlmKCAiLiIuJHRodW1iX2V4dCA9PSAkZmlsZWV4dGVuc2lvbiApCgkJCQkJCQkJCQl7CgkJCQkJCQkJCQkJJGlzX2ltYWdlID0gdHJ1ZTsKCQkJCQkJCQkJCQlicmVhazsKCQkJCQkJCQkJCX0KCQkJCQkJCQl9CgoJCQkJCQkJaWYoICRpc19pbWFnZSApCgkJCQkJCQkJewoJCQkJCQkJCQkvLyB5dXAsIHdlIGNhbiB0aHVtYm5haWwgdGhpcyB0aGluZy4KCQkJCQkJCQkJJGRlc3RuYW1lID0gJGRpci5ESVJFQ1RPUllfU0VQQVJBVE9SLiR0aHVtYl9uYW1lOwoJCQkJCQkJCQkkY3JlYXRlZCA9IGZhbHNlOwoJCQkJCQkJCQlpZiggIWZpbGVfZXhpc3RzKCAkZGVzdG5hbWUgKSApCgkJCQkJCQkJCQl7CgkJCQkJCQkJCQkJJHRoaXMtPmltYWdlVHJhbnNmb3JtKCRzcmNwLCRkZXN0bmFtZSwKCQkJCQkJCQkJCQkJCQkJCQkJCQkJCSR0aGlzLT5HZXRQcmVmZXJlbmNlKCdhdXRvdGh1bWJuYWlsX3NpemUnKSk7CgkJCQkJCQkJCQkJaWYoIGZpbGVfZXhpc3RzKCAkZGVzdG5hbWUgKSApCgkJCQkJCQkJCQkJCXsKCQkJCQkJCQkJCQkJCSRjcmVhdGVkID0gdHJ1ZTsKCQkJCQkJCQkJCQkJfQoJCQkJCQkJCQkJfQoKCQkJCQkJCQkJaWYoICRjcmVhdGVkICkKCQkJCQkJCQkJCXsKCQkJCQkJCQkJCQkvLyB3b290LCB3ZSBjcmVhdGVkIGEgbmV3IHRodW1ibmFpbAoJCQkJCQkJCQkJCS8vIG5vdyB1cGRhdGUgdGhlIGRhdGFiYXNlCgkJCQkJCQkJCQkJJHF1ZXJ5ID0gJ1VQREFURSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHMgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU0VUIHVwbG9hZF90aHVtYm5haWwgPSA/CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFdIRVJFIHVwbG9hZF9pZCA9ID8nOwoJCQkJCQkJCQkJCSRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkoJHRodW1iX25hbWUsJGZpbGVpZCkpOwoJCQkJCQkJCQkJfQoJCQkJCQkJCX0KCQkJCQkJfQoJICAKCQkJCX0gLy8gZm9yZWFjaAogICAgICB9IC8vIGlmCiAgfQoKCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgU21hcnRTY2FuRGlyZWN0b3J5KCRjYXRlZ29yeV9pZCwgJGRpciApCiAgIE5PVCBQQVJUIE9GIFRIRSBNT0RVTEUgQVBJCgogICBBIG1ldGhvZCB0byBwZXJmb3JtIGEgc2NhbiBkaXJlY3RvcnkgaWYgdGhlIGNvdW50IG9mIHRoZQogICBmaWxlcyBpbiB0aGUgZGlyZWN0b3J5IGRvZXMgbm90IG1hdGNoIHRoZSBjb3VudCBvZiB0aGUgZmlsZXMKICAgaW4gdGhlIGRhdGFiYXNlCiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCiAgZnVuY3Rpb24gU21hcnRTY2FuRGlyZWN0b3J5KCRjYXRlZ29yeV9pZCwgJGRpciApCiAgewogICAgJGRiID0mICR0aGlzLT5HZXREYigpOwogICAgJHF1ZXJ5ID0gIlNFTEVDVCBDT1VOVCgqKSBBUyBjb3VudCBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2FkcwogICAgICAgICAgICAgIFdIRVJFIHVwbG9hZF9jYXRlZ29yeV9pZCA9ID8iOwogICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcXVlcnksIGFycmF5KCAkY2F0ZWdvcnlfaWQgKSApOwogICAgaWYoICEkZGJyZXN1bHQgKQogICAgICB7CgkJCQllY2hvICRkYi0+RXJyb3JNc2coKS4iPGJyLz4iOwoJCQkJcmV0dXJuOwogICAgICB9CiAgICAkcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdygpOwogICAgJHJvd2NvdW50ID0gJHJvd1snY291bnQnXTsKCiAgICAvLyBnZXQgdGhlIG51bWJlciBvZiBmaWxlcwogICAgJGZpbGVzID0gJHRoaXMtPl9zY2FuZGlyKCAkZGlyICk7CiAgICAkY291bnQgPSAwOwogICAgaWYoICRmaWxlcyApCiAgICAgIHsKCQkJCWZvcmVhY2goICRmaWxlcyBhcyAkZmlsZSApCgkJCQkJewoJCQkJCQkvLyBpZ25vcmUgZGlyZWN0b3JpZXMgLiBhbmQgLi4KCQkJCQkJaWYoICRmaWxlID09ICIuIiB8fCAkZmlsZSA9PSAiLi4iICkgewoJCQkJCQkJY29udGludWU7CgkJCQkJCX0KCSAgICAKCQkJCQkJLy8gaWdub3JlIGFueSBkaXJlY3RvcmllcwoJCQkJCQkkc3JjcCA9ICRkaXIuRElSRUNUT1JZX1NFUEFSQVRPUi4kZmlsZTsKCQkJCQkJaWYoIGlzX2RpciggJHNyY3AgKSApIHsKCQkJCQkJCWNvbnRpbnVlOwoJCQkJCQl9CgkgICAgCgkJCQkJCSRjb3VudCsrOwoJCQkJCX0gLy8gZm9yZWFjaAogICAgICB9CgogICAgaWYoICRjb3VudCAhPSAkcm93Y291bnQgKQogICAgICB7CgkJCQkkdGhpcy0+U2NhbkRpcmVjdG9yeSggJGNhdGVnb3J5X2lkLCAkZGlyICk7CiAgICAgIH0KICB9CgoKICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICBfSW5zZXJ0RGVmYXVsdEZpbGVUeXBlcygpCiAgIE5PVCBQQVJUIE9GIFRIRSBNT0RVTEUgQVBJCiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCiAgZnVuY3Rpb24gX0luc2VydERlZmF1bHRGaWxlVHlwZXMoKQogIHsKICAgIC8vIGRlZmF1bHQgZmlsZSB0eXBlcwogICAgJGZpbGV0eXBlcyA9IGFycmF5KCk7CiAgICAkZmlsZXR5cGVzW10gPSBhcnJheSgnc29ydG9yZGVyJz0+MSwnbmFtZSc9PidTb3VuZCcsCgkJCQkJCQkJCQkJCSAnZGVzY3JpcHRpb24nPT4nU291bmQgZmlsZXMnLAoJCQkJCQkJCQkJCQkgJ2V4dGVuc2lvbnMnPT4nbXAzLG9nZyx3YXYnLAoJCQkJCQkJCQkJCQkgJ2ltYWdlJz0+J3NvdW5kLnBuZycpOwogICAgJGZpbGV0eXBlc1tdID0gYXJyYXkoJ3NvcnRvcmRlcic9PjIsJ25hbWUnPT4nSW1hZ2UnLAoJCQkJCQkJCQkJCQkgJ2Rlc2NyaXB0aW9uJz0+J0ltYWdlIGZpbGVzJywKCQkJCQkJCQkJCQkJICdleHRlbnNpb25zJz0+J3BuZyxnaWYsanBnLGpwZWcsYm1wJywKCQkJCQkJCQkJCQkJICdpbWFnZSc9PidpbWFnZS5wbmcnKTsKICAgICRmaWxldHlwZXNbXSA9IGFycmF5KCdzb3J0b3JkZXInPT4zLCduYW1lJz0+J1BERiBEb2N1bWVudCcsCgkJCQkJCQkJCQkJCSAnZGVzY3JpcHRpb24nPT4nQWRvYmUgQWNyb2JhdCBQREYgRG9jdW1lbnQnLAoJCQkJCQkJCQkJCQkgJ2V4dGVuc2lvbnMnPT4ncGRmJywKCQkJCQkJCQkJCQkJICdpbWFnZSc9PidwZGYucG5nJyk7CiAgICAkZmlsZXR5cGVzW10gPSBhcnJheSgnc29ydG9yZGVyJz0+NCwnbmFtZSc9PidTcHJlYWRzaGVldCcsCgkJCQkJCQkJCQkJCSAnZGVzY3JpcHRpb24nPT4nU3ByZWFkc2hlZXRzJywKCQkJCQkJCQkJCQkJICdleHRlbnNpb25zJz0+J3hscycsCgkJCQkJCQkJCQkJCSAnaW1hZ2UnPT4nc3ByZWFkc2hlZXQucG5nJyk7CiAgICAkZmlsZXR5cGVzW10gPSBhcnJheSgnc29ydG9yZGVyJz0+NSwnbmFtZSc9PidDb21wcmVzc2VkJywKCQkJCQkJCQkJCQkJICdkZXNjcmlwdGlvbic9PidDb21wcmVzc2VkIGZpbGUnLAoJCQkJCQkJCQkJCQkgJ2V4dGVuc2lvbnMnPT4nemlwLHRhcixneixyYXIsYXJqJywKCQkJCQkJCQkJCQkJICdpbWFnZSc9Pid6aXAucG5nJyk7CiAgICAkZmlsZXR5cGVzW10gPSBhcnJheSgnc29ydG9yZGVyJz0+NiwnbmFtZSc9PidUZXh0JywKCQkJCQkJCQkJCQkJICdkZXNjcmlwdGlvbic9PidUZXh0IEZpbGUnLAoJCQkJCQkJCQkJCQkgJ2V4dGVuc2lvbnMnPT4ndHh0LHRleHQnLAoJCQkJCQkJCQkJCQkgJ2ltYWdlJz0+J3R4dC5wbmcnKTsKICAgICRmaWxldHlwZXNbXSA9IGFycmF5KCdzb3J0b3JkZXInPT43LCduYW1lJz0+J1ZpZGVvJywKCQkJCQkJCQkJCQkJICdkZXNjcmlwdGlvbic9PidWaWRlbyBGaWxlcycsCgkJCQkJCQkJCQkJCSAnZXh0ZW5zaW9ucyc9PidhdmksbXBnLndtdicsCgkJCQkJCQkJCQkJCSAnaW1hZ2UnPT4ndmlkZW8ucG5nJyk7CiAgICAkZmlsZXR5cGVzW10gPSBhcnJheSgnc29ydG9yZGVyJz0+OCwnbmFtZSc9PidXb3JkIFByb2Nlc3NpbmcnLAoJCQkJCQkJCQkJCQkgJ2Rlc2NyaXB0aW9uJz0+J1dvcmQgUHJvY2Vzc2luZyBGaWxlcycsCgkJCQkJCQkJCQkJCSAnZXh0ZW5zaW9ucyc9Pidkb2MnLAoJCQkJCQkJCQkJCQkgJ2ltYWdlJz0+J3dvcmRwcm9jZXNzaW5nLnBuZycpOwoKICAgICRkYiA9JiAkdGhpcy0+R2V0RGIoKTsKICAgICRxID0gIklOU0VSVCBJTlRPICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc19maWxldHlwZXMKICAgICAgKGlkLHNvcnRvcmRlcixuYW1lLGRlc2NyaXB0aW9uLGV4dGVuc2lvbnMsaW1hZ2UpIFZBTFVFUyAoPyw/LD8sPyw/LD8pIjsKICAgIGZvcmVhY2goICRmaWxldHlwZXMgYXMgJG9uZWZpbGV0eXBlICkKICAgICAgewoJCQkJJG5ld2lkID0gJGRiLT5HZW5JRChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX2ZpbGV0eXBlc19zZXEiKTsKCQkJCSRkYnJlc3VsdCA9ICAkZGItPkV4ZWN1dGUoICRxLCAKCQkJCQkJCQkJCQkJCQkJCQkgYXJyYXkoICRuZXdpZCwgJG9uZWZpbGV0eXBlWydzb3J0b3JkZXInXSwKCQkJCQkJCQkJCQkJCQkJCQkJCQkJJG9uZWZpbGV0eXBlWyduYW1lJ10sCgkJCQkJCQkJCQkJCQkJCQkJCQkJCSRvbmVmaWxldHlwZVsnZGVzY3JpcHRpb24nXSwKCQkJCQkJCQkJCQkJCQkJCQkJCQkJJG9uZWZpbGV0eXBlWydleHRlbnNpb25zJ10sCgkJCQkJCQkJCQkJCQkJCQkJCQkJCSRvbmVmaWxldHlwZVsnaW1hZ2UnXSApICk7CiAgICAgIH0KICB9CgoKICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICBfR2V0RmlsZVR5cGUoICRmaWxlbmFtZSApCiAgIE5PVCBQQVJUIE9GIFRIRSBNT0RVTEUgQVBJCgogICBHaXZlbiBhIGZpbGVuYW1lLCByZXR1cm4gdGhlIGZpbGUgdHlwZSBpbmZvcm1hdGlvbiBmb3IgdGhhdCAKICAgZmlsZS4KICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KICBmdW5jdGlvbiBfR2V0RmlsZVR5cGUoICRmaWxlbmFtZSApCiAgewogICAgJGRiID0mICR0aGlzLT5HZXREYigpOwoKICAgICR0aGVfZXh0ZW5zaW9uID0gc3RydG9sb3dlcihzdHJyY2hyKCRmaWxlbmFtZSwnLicpKTsKICAgICRxID0gIlNFTEVDVCAqIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX2ZpbGV0eXBlcwogICAgICAgICAgICBPUkRFUiBCWSBzb3J0b3JkZXIiOwogICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcSApOwogICAgd2hpbGUoICRkYnJlc3VsdCAmJiAkcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdygpICkKICAgICAgewoJCQkJJGFyciA9IGV4cGxvZGUoICIsIiwkcm93WydleHRlbnNpb25zJ10gKTsKCQkJCWZvcmVhY2goICRhcnIgYXMgJG9uZWV4dCApCgkJCQkJewoJCQkJCQlpZiggc3RydG9sb3dlciggIi4kb25lZXh0IiApID09ICR0aGVfZXh0ZW5zaW9uICkgCgkJCQkJCQl7CgkJCQkJCQkJcmV0dXJuICRyb3c7CgkJCQkJCQl9CgkJCQkJfQogICAgICB9CiAgICByZXR1cm4gZmFsc2U7CiAgfQoKCglmdW5jdGlvbiBfQ2hlY2tEb3dubG9hZFNlY3VyaXR5KCYkY2F0ZWdvcnlfZGV0YWlscywkcmV0dXJuaWQpCgl7CgkJJGZldXNlcnMgPSAkdGhpcy0+R2V0TW9kdWxlSW5zdGFuY2UoJ0Zyb250RW5kVXNlcnMnKTsKCQlpZiggJGZldXNlcnMgJiYgJGNhdGVnb3J5X2RldGFpbHNbJ3VwbG9hZF9jYXRlZ29yeV9ncm91cHMnXSAhPSAnJyAmJiAKCQkJCSRyZXR1cm5pZCAhPSAnJyApCgkJCXsKCQkJCSR1aWQgPSAkZmV1c2Vycy0+TG9nZ2VkSW5JZCgpOwoJCQkJaWYoICR1aWQgPT0gMCB8fCAkdWlkID09ICcnICkKCQkJCQl7CgkJCQkJCS8vIHVzZXIgaXMgbm90IGxvZ2dlZCBpbgoJCQkJCQlyZXR1cm4gZmFsc2U7CgkJCQkJfQoJCQkJCgkJCQkvLyBub3cgY2hlY2sgaWYgdGhlIHVzZXIgaXMgaW4gdGhlIGdyb3VwCgkJCQkkcGVybWl0dGVkZ3JvdXBzID0gZXhwbG9kZSgnLCcsJGNhdGVnb3J5X2RldGFpbHNbJ3VwbG9hZF9jYXRlZ29yeV9ncm91cHMnXSk7CgkJCQkkcGVybWl0dGVkID0gZmFsc2U7CgkJCQl7CgkJCQkJJG1lbWJlcmdyb3VwczEgPSAkZmV1c2Vycy0+R2V0TWVtYmVyR3JvdXBzQXJyYXkoJHVpZCk7CgkJCQkJZm9yZWFjaCggJG1lbWJlcmdyb3VwczEgYXMgJHJvdyApCgkJCQkJCXsKCQkJCQkJCWZvcmVhY2goICRwZXJtaXR0ZWRncm91cHMgYXMgJHBnICkKCQkJCQkJCQl7CgkJCQkJCQkJCWlmKCAkcGcgPT0gJHJvd1snZ3JvdXBpZCddICkgCgkJCQkJCQkJCQl7CgkJCQkJCQkJCQkJJHBlcm1pdHRlZCA9IHRydWU7CgkJCQkJCQkJCQkJYnJlYWs7CgkJCQkJCQkJCQl9CgkJCQkJCQkJfQoJCQkJCQkJaWYoICRwZXJtaXR0ZWQgPT0gdHJ1ZSApIGJyZWFrOwoJCQkJCQl9CgkJCQl9CgkJCQkKCQkJCWlmKCAkcGVybWl0dGVkID09IGZhbHNlICkKCQkJCQl7CgkJCQkJCS8vIGFjY2VzcyBkZW5pZWQKCQkJCQkJcmV0dXJuIGZhbHNlOwoJCQkJCX0KCQkJfQoKCQlyZXR1cm4gdHJ1ZTsKCX0KCiAgZnVuY3Rpb24gaW1hZ2VUcmFuc2Zvcm0oJHNyY1NwZWMsICRkZXN0U3BlYywgJHNpemUpCiAgewogICAgcmVxdWlyZV9vbmNlKGRpcm5hbWUoX19GSUxFX18pLicvLi4vLi4vbGliL2ZpbGVtYW5hZ2VyL0ltYWdlTWFuYWdlci9DbGFzc2VzL1RyYW5zZm9ybS5waHAnKTsKICAgICAKCQlnbG9iYWwgJGdDbXM7CgkJJGNvbmZpZyA9JiAkZ0Ntcy0+R2V0Q29uZmlnKCk7CiAgICAkaXQgPSBuZXcgSW1hZ2VfVHJhbnNmb3JtOwogICAgJGltZyA9ICRpdC0+ZmFjdG9yeSgkY29uZmlnWydpbWFnZV9tYW5pcHVsYXRpb25fcHJvZyddKTsKICAgICRpbWctPmxvYWQoJHNyY1NwZWMpOwogICAgaWYgKCRpbWctPmltZ194IDwgJGltZy0+aW1nX3kpCiAgICAgIHsKCQkJCSRsb25nX2F4aXMgPSAkaW1nLT5pbWdfeTsKICAgICAgfQogICAgZWxzZQogICAgICB7CgkJCQkkbG9uZ19heGlzID0gJGltZy0+aW1nX3g7CiAgICAgIH0KICAgICAKICAgICR0aGVfZXh0ZW5zaW9uID0gc3Vic3RyKHN0cnRvbG93ZXIoc3RycmNocigkZGVzdFNwZWMsJy4nKSksMSk7CgkJJHR5cGUgPSAnanBnJzsKCQlzd2l0Y2goJHRoZV9leHRlbnNpb24pCgkJCXsKCQkJY2FzZSAnanBnJzoKCQkJY2FzZSAnanBlZyc6CgkJCQkkdHlwZSA9ICdqcGVnJzsKCQkJCWJyZWFrOwoJCQljYXNlICdibXAnOgoJCQkJJHR5cGUgPSAnYm1wJzsKCQkJCWJyZWFrOwoJCQljYXNlICdwbmcnOgoJCQkJJHR5cGUgPSAncG5nJzsKCQkJCWJyZWFrOwoJCQljYXNlICdnaWYnOgoJCQkJJHR5cGUgPSAnZ2lmJzsKCQkJCWJyZWFrOwoJCQl9CgogICAgaWYgKCRsb25nX2F4aXMgPiAkc2l6ZSkKICAgICAgewoJCQkJJGltZy0+c2NhbGVCeUxlbmd0aCgkc2l6ZSk7CgkJCQkkaW1nLT5zYXZlKCRkZXN0U3BlYywgJHR5cGUpOwogICAgICB9CiAgICBlbHNlCiAgICAgIHsKCQkJCSRpbWctPnNhdmUoJGRlc3RTcGVjLCAkdHlwZSk7CiAgICAgIH0KICAgICRpbWctPmZyZWUoKTsKICB9CgoKCWZ1bmN0aW9uIF9nZXRGaWxlVVJMKCR1cGxvYWRfaWQsJHVwbG9hZF9uYW1lKQoJewoJCSR1cmwgPSBzcHJpbnRmKCd1cGxvYWRzLyVkLyVzJywkdXBsb2FkX2lkLG11bmdlX3N0cmluZ190b191cmwoJHVwbG9hZF9uYW1lKSk7CgkJcmV0dXJuICR1cmw7Cgl9Cn0KCi8vIEVPRgo/Pgo=]]></data>
	</file>
</module>
