<?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.10.4</version>
  <mincmsversion>1.6.5</mincmsversion>
	<help>CjxoMz5XaGF0IERvZXMgVGhpcyBEbz88L2gzPgo8cD5JdCBpcyBhIG1vZHVsZSBmb3IgYWxsb3dpbmcgcGVvcGxlIHRvIHVwbG9hZCBhbmQgZG93bmxvYWQgZmlsZXMgdG8gYW5kIGZyb20geW91ciBzaXRlLiAgSXQga2VlcHMgdHJhY2sgb2Ygd2hvIHVwbG9hZGVkIGEgZmlsZSwgYW5kIHdobyBoYXMgZG93bmxvYWRlZCBpdC4gIEFzIHdlbGwsIHlvdSBjYW4gc29ydCBmaWxlcyBpbnRvIGNhdGVnb3JpZXMsIGFuZCBtYW5hZ2UgdGhlIGZpbGVzIHRoYXQgd2VyZSB1cGxvYWRlZCBsaWtlIGV2ZXJ5IGFkbWluaXN0cmF0b3Igd291bGQgZG88L3A+IAo8aDM+SG93IERvIEkgVXNlIEl0PC9oMz4KPHA+PHN0cm9uZz5XYXJuaW5nPC9zdHJvbmc+IC0gVGhlIHByb3BlciBiZWhhdmlvdXIgb2YgdGhpcyBtb2R1bGUgZGVwZW5kcyBvbiBudW1lcm91cyBwaHAgY29uZmlndXJhdGlvbiB2YXJpYWJsZXMuICBUaGVzZSBpbmNsdWRlIDxlbT4oYnV0IGFyZSBub3QgbGltaXRlZCB0byk8L2VtPiwgcGhwJ3MgbWVtb3J5X2xpbWl0LCBzYWZlX21vZGUsIGZpbGVfdXBsb2FkcywgdXBsb2Fkc19tYXhfZmlsZXNpemUsIGFuZCBtYXhfZXhlY3V0aW9uX3RpbWUuICBUaGVzZSB2YXJpYWJsZXMgbWF5IG5lZWQgYWRqdXN0bWVudCBmb3IgdGhpcyBtb2R1bGUgdG8gd29yayBwcm9wZXJseSBvbiB5b3VyIHNpdGUuICBJdCBpcyBhZHZpc2VkIHRoYXQgeW91IHdvcmsgd2l0aCB5b3VyIHN5c3RlbSBhZG1pbmlzdHJhdG9yIG9yIGhvc3QgcHJvdmlkZXIgdG8gdHVuZSB0aGVzZSBzZXR0aW5ncyBmb3IgeW91ciByZXF1aXJlbWVudHMuPC9wPgo8cD5UbyB1c2UgdGhpcyBtb2R1bGUsIHRvIGFsbG93IHVzZXJzIHRvIHVwbG9hZCBmaWxlcyB0byB5b3VyIHNpdGUsIHlvdSBzaG91bGQgaW5zdGFsbCB0aGUgbW9kdWxlLCBhbmQgdGhlbiBjcmVhdGUgb25lIG9yIG1vcmUgY2F0ZWdvcmllcyAoYS5rLmEpIGRpcmVjdG9yaWVzIGZvciB0aGUgdXBsb2FkZWQgZmlsZXMgdG8gZ28gaW50by4gVGhlbiBhZGQgYSB0YWcgaW50byBhIHBhZ2Ugb3IgdGVtcGxhdGUgc29tZXdoZXJlIGxpa2Uge2Ntc19tb2R1bGUgbW9kdWxlPSJVcGxvYWRzIiBjYXRlZ29yeT0ic29tZWNhdGVnb3J5IiBtb2RlPSJzb21lbW9kZSJ9LiAgV2hlcmUgbW9kZSBtYXRjaGVzIG9uZSBvZiB0aGUgbW9kZXMgbGlzdGVkIGJlbG93LiAgVGhlIG91dHB1dCB3aWxsIGRpZmZlciBkZXBlbmRpbmcgdXBvbiB3aGljaCBtb2RlIHlvdSBzZWxlY3QuPC9wPgo8cD5UaGlzIG1vZHVsZSBjYW4gdXNlIHRoZSBGcm9udGVuZFVzZXJzIG1vZHVsZSAob3B0aW9uYWwpIHRvIGdldCBpbmZvcm1hdGlvbiBhYm91dCBhbnkgY3VycmVudGx5IGxvZ2dlZCBpbiB1c2VycyB0byBwYXJ0bHkgZmlsbCBpbiB0aGUgZm9ybSB3aGVuIHVwbG9hZGluZyBmaWxlczs8L3A+CjxoMz5QZXJtaXNzaW9uczwvaDM+Cjx1bD4KPGxpPjxlbT5NYW5hZ2UgVXBsb2FkczwvZW0+IHBlcm1pc3Npb24gaXMgbmVlZGVkIHRvIG1hbmFnZSBjYXRlZ29yaWVzLCBhbmQgdGhlIGZpbGVzIHdpdGhpbiB0aGVtLjwvbGk+CjxsaT48ZW0+TW9kaWZ5IFRlbXBsYXRlczwvZW0+IHBlcm1pc3Npb24gaXMgbmVlZGVkIGVkaXQgYW55IG9mIHRoZSB0ZW1wbGF0ZXMuPC9saT4KPGxpPjxlbT5Nb2RpZnkgU2l0ZSBQcmVmZXJlbmNlczwvZW0+IHBlcm1pc3Npb24gaXMgbmVlZGVkIGFueSBvZiB0aGUgZmlsZSBzZXR0aW5ncy48L2xpPgo8L3VsPgo8aDM+Q2F0ZWdvcnkgQnJvd3Npbmc8L2gzPgo8cD5QbGFjaW5nIGEgdGFnIGxpa2Uge2Ntc19tb2R1bGUgbW9kdWxlPSJVcGxvYWRzIiBhY3Rpb249ImNhdGVnb3J5c3VtbWFyeSIgdGVtcGxhdGU9InN1bW1hcnl0ZW1wbGF0ZSIgc29ydG9yZGVyPSJuYW1lX2FzYyIgbGlzdGluZ3RlbXBsYXRlPSJsaXN0dGVtcGxhdGUiIGxpc3Rpbmdzb3J0b3JkZXI9Imxpc3Rzb3J0b3JkZXIifQphbGxvd3MgeW91IHRvIGRpc3BsYXkgYW4gaW50ZXJhY3RpdmUgY2F0ZWdvcnkgYnJvd3Nlci4gc29ydG9yZGVyIGNhbiBiZTogbmFtZV9hc2MsIG5hbWVfZGVzYywgc3VtbV9hc2MsIHN1bW1fZGVzYywgb3IgcmFuZG9tLgpsaXN0aW5ndGVtcGxhdGUgYW5kIGxpc3Rpbmdzb3J0b3JkZXIgYXJlIGlkZW50aWNhbCB0byB0aGUgdGVtcGxhdGUgYW5kIHNvcnRvcmRlciBwYXJhbWV0ZXJzIGZvcgp0aGUgInN1bW1hcnkiIG1vZGUuPC9wPgo8aDM+QXV0b21hdGljIFNjYW5uaW5nPC9oMz4KPHA+VGhpcyBtb2R1bGUgd2lsbCBhdXRvbWF0aWNhbGx5IHNjYW4gZm9yIG5ldyBmaWxlcyBpbiBhIGRpcmVjdG9yeSB3aGVuIGEgc3VtbWFyeSBtb2RlIHRhZyBmb3IgYSBzcGVjaWZpYyBjYXRlZ29yeSBpcyB1c2VkIG9uIGEgQ01TTVMgcGFnZS4gIGkuZTogPGNvZGU+e1VwbG9hZHMgY2F0ZWdvcnk9Y2F0ZWdvcnlfbmFtZX08L2NvZGU+IHdpbGwgcGVyZm9ybSBhIHNjYW4uICBidXQgPGNvZGU+e1VwbG9hZHMgY2F0ZWdvcnk9YWxsfTwvY29kZT4gd2lsbCBub3QuPC9wPgo8aDM+VGh1bWJuYWlsIEdlbmVyYXRpb248L2gzPgo8cD5UaGlzIG1vZHVsZSBpcyBjYXBhYmxlIG9mIGdlbmVyYXRpbmcgdGh1bWJuYWlscyBmb3IgY2VydGFpbiB0eXBlcyBvZiBmaWxlcy4gIFRoZXJlIGFyZSBwcmVmZXJlbmNlcyBpbiB0aGUgcHJlZmVyZW5jZXMgdGFiIG9mIHRoZSBVcGxvYWRzIG1vZHVsZSBhZG1pbmlzdHJhdGlvbiBwYW5lbCB0byBzcGVjaWZ5IHRoZSB0eXBlcyBvZiBmaWxlcyB0aGF0IGFsbG93IGF1dG9tYXRpYyB0aHVtYm5haWwgZ2VuZXJhdGlvbiwgYW5kIHRoZSBzaXplIG9mIHRoZSBnZW5lcmF0ZWQgdGh1bWJuYWlsIChwcmVzZXJ2aW5nIGFzcGVjdCByYXRpbykuICAgVGh1bWJuYWlscyBhcmUgYXV0b21hdGljYWxseSBnZW5lcmF0ZWQgdXBvbiB1cGxvYWQsIGFuZCBjYW4gYmUgZ2VuZXJhdGVkIG1hbnVhbGx5IGJ5IHNlbGVjdGluZyB0aGUgJnF1b3Q7R2VuZXJhdGUgVGh1bWJuYWlscyZxdW90OyBvcHRpb24gaW4gdGhlIGVkaXQgY2F0ZWdvcnkgZm9ybXMuLi4gYnV0IGFyZSBub3QgZ2VuZXJhdGVkIHdoZW4gbmV3IGZpbGVzIGFyZSBkZXRlY3RlZCBieSBhdXRvbWF0aWMgc2Nhbm5pbmcuPC9wPgo8aDM+WW91IFNlbmQgSXQ8L2gzPgo8cD5JdCBpcyBwb3NzaWJsZSB0byBlbmFibGUgJnF1b3Q7eW91c2VuZGl0JnF1b3Q7IGxpa2UgZnVuY3Rpb25hbGl0eSB0byBhbGxvdyBhdXRvbWF0aWNhbGx5IGVtYWlsaW5nIHNlbGVjdGVkIHBlb3BsZSB3aXRoIGEgbGluayB0byBhIG5ld2x5IHVwbG9hZGVkIGZpbGUuICBUaGlzIGlzIGFjY29tcGxpc2hlZCBieSB1c2luZyBhIHRhZyBsaWtlOiA8Y29kZT57VXBsb2FkcyBhY3Rpb249eW91c2VuZGl0IGNhdGVnb3J5PWNhdGVnb3J5bmFtZX08L2NvZGU+LiAgVGhpcyB3aWxsIGRpc3BsYXkgYSBmb3JtIGFsbG93aW5nIHRoaXMgZnVuY3Rpb25hbGl0eS48L3A+CjxoMz5UaW1lIExpbWl0ZWQgQWNjZXNzPC9oMz4KPHA+VGhpcyBtb2R1bGUgc3VwcG9ydHMgdGhlIG5vdGlvbiBvZiB1bmlxdWUga2V5cyB0byBhbGxvdyB0aW1lIGxpbWl0ZWQgYWNjZXNzIHRvIGNlcnRhaW4gZmlsZXMuICBUaGUgZnVuY3Rpb25hbGl0eSBhbGxvd3Mgc3BlY2lmeWluZyBhIHRpbWUgbGltaXQgKGluIGhvdXJzKSBmb3Igd2hpY2ggdGhlIGtleSBpcyB2YWxpZCwgYW5kIGEgbWF4aW11bSBudW1iZXIgb2YgZG93bmxvYWRzIG9yIGRvd25sb2FkIGF0ZW1wdHMuICBBbiBlbWFpbCBpcyBzZW50IHRvIHRoZSBkZXNpcmVkIHVzZXJzIHdpdGggdGhlIHVuaXF1ZSBVUkwuICBBZnRlciB0aGUgdGltZSBsaW1pdCwgb3IgdGhlIG51bWJlciBvZiBkb3dubG9hZHMgaGFzIGJlZW4gcmVhY2hlZCwgdGhlIFVSTCBpcyBubyBsb25nZXIgdmFsaWQuICBUaGVzZSB1bmlxdWUgdGltZSBsaW1pdGVkIGtleXMgYXJlIGF1dG9tYXRpY2FsbHkgcmVtb3ZlZCBmcm9tIHRoZSBkYXRhYmFzZSBhZnRlciBleHBpcnkuPC9wPgo8aDM+UmVzdHJpY2luZyBBY2Nlc3Mgd2l0aCBGRVU8L2gzPgo8cD5UaGlzIG1vZHVsZSBpcyBjYXBhYmxlIG9mIGludGVncmF0aW5nIHdpdGggdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlIHRvIHJlc3RyaWN0IHRoZSB2aXNpYmlsaXR5IG9mIGNhdGVnb3JpZXMgKGRpcmVjdG9yaWVzKSB0byBjZXJ0YWluIGFsbG93ZWQgRkVVIGdyb3Vwcy4gIFlvdXIgdXNlcnMgd291bGQgaGF2ZSB0byBiZSBsb2dnZWQgaW4gdG8geW91ciB3ZWJzaXRlICh1c2luZyBGRVUpIGFuZCBhbHNvIGEgbWVtYmVyIG9mIG9uZSBvZiB0aGUgYWxsb3dlZCBncm91cHMgdG8gb2J0YWluIGFjY2Vzcy4gIFRoaXMgaXMgYWNjb21wbGlzaGVkIGluIHRoZSBjYXRlZ29yeSBlZGl0IGZvcm0uICBZb3UgY2FuIHNlbGVjdCBhIGxpc3Qgb2YgRkVVIGdyb3VwcyB3aGljaCBhcmUgYWxsb3dlZCB0byB2aWV3IGZpbGVzIGluIHRoaXMgY2F0ZWdvcnkuPC9wPgo8cD5UaGlzIGZ1bmN0aW9uYWxpdHkgYWxzbyBhcHBsaWVzIHRvIHRoZSAmcXVvdFRpbWUgTGltaXRlZCBBY2Nlc3MmcXVvdCBmdW5jdGlvbmFsaXR5LiAgQWxsb3dpbmcgeW91IHRvIHNwZWNpZnkgdGhhdCBjZXJ0YWluIHBlb3BsZSwgd2hvIGFsc28gaGF2ZSB0byBiZSBsb2dnZWQgaW4gdG8geW91ciB3ZWJzaXRlIGNhbiBoYXZlIGFjY2VzcyB0byBjZXJ0YWluIGZpbGVzIGZvciBhIGxpbWl0ZWQgYW1vdW50IG9mIHRpbWUuPC9wPgo8aDM+RW1haWxpbmc8L2gzPgo8cD5UaGlzIG1vZHVsZSBpcyBjYXBhYmxlIG9mIHNlbmRpbmcgYW4gZW1haWwgd2hlbmV2ZXIgYSBmaWxlIGlzIHVwbG9hZGVkLCBzZWUgdGhlIHByZWZlcmVuY2VzIHRhYi4gIEhvd2V2ZXIsIHRvIGRvIHRoaXMgdGhlIDxiPkNNU01haWxlcjwvYj4gcGFja2FnZSBtdXN0IGJlIGluc3RhbGxlZCBhbmQgY29uZmlndXJlZC4gIFRoaXMgaXMgYW4gPGVtPm9wdGlvbmFsPC9lbT4gc3RlcCwgYW5kIGlmIHRoZSBDTVNNYWlsZXIgbW9kdWxlIGlzIG5vdCBpbnN0YWxsZWQsIG5vdGhpbmcgd2lsbCBiZSBkaXNwbGF5ZWQgdG8gdGhlIHVzZXIsIG9ubHkgYSBsb2cgbWVzc2FnZSB3aWxsIGJlIHBsYWNlZCBpbnRvIHRoZSBhZG1pbiBsb2c8L3A+CjxoMz5Db250ZW50IEJsb2NrcyA8ZW0+KENNU01TIDEuNysgT25seSk8L2VtPjwvaDM+CjxwPkZvciBDTVNNUyAxLjcgdGhpcyBtb2R1bGUgaXMgY2FwYWJsZSBvZiBpbnRlcmZhY2luZyB3aXRoIHRoZSBjb250ZW50IGVkaXRvciBhbmQgZXhwb3J0aW5nIGEgY29udGVudCBibG9jayB0aGF0IGFsbG93cyBzZWxlY3RpbmcgYW4gdXBsb2FkcyBjYXRlZ29yeSB3aXRoaW4gdGhlIGVkaXQgY29udGVudCBwYWdlLCBmb3IgbGF0ZXIgdXNlIHdpdGhpbiB0aGUgdGVtcGxhdGUuPC9wPgo8cD5pLmU6IHBsYWNpbmcgdGhlIGZvbGxvd2luZyB0YWcgd2l0aGluIGEgcGFnZSB0ZW1wbGF0ZSA8Y29kZT57Y29udGVudF9tb2R1bGUgbW9kdWxlPSZxdW90O1VwbG9hZHMmcXVvdDsgYmxvY2s9JnF1b3Q7dXBsb2Fkc19jYXRlZ29yeSZxdW90OyB0eXBlPSZxdW90O2NhdGVnb3J5c2VsZWN0JnF1b3Q7fTwvY29kZT4sIHdpbGwgYWRkIGEgZHJvcGRvd24gYm94IGluIHRoZSBlZGl0IGNvbnRlbnQgdmlldyBvZiBhbnkgcGFnZSB1dGlsaXppbmcgdGhhdCBwYWdlIHRlbXBsYXRlLjwvcD4KPHA+VGhpcyBjb250ZW50IGJsb2NrIGFsc28gYWNjZXB0cyBzb21lIG9wdGlvbmFsIHBhcmFtZXRlcnM6PC9wPgo8dWw+CiAgPGxpPjx1PnNlbGVjdG9uZTwvdT4KICAgIDxwPlRoaXMgcGFyYW1ldGVyIGluc2VydHMgYSAmcXVvdDtTZWxlY3QgT25lJnF1b3Q7IGl0ZW0gaW50byB0aGUgbGlzdCBvZiBjYXRlZ29yaWVzLCByZXF1aXJpbmcgdGhlIHVzZXIgdG8gc2VsZWN0IGEgdmFsaWQgY2F0ZWdvcnkgd2hlbiB0aGUgY29udGVudCBwYWdlIGlzIHNhdmVkLjwvcD4KICA8L2xpPgogIDxsaT48dT5hbGxvd2FsbDwvdT4KICAgIDxwPlRoaXMgcGFyYW1ldGVyIGFsbG93cyB0aGUgY29udGVudCBlZGl0b3IgdG8gc2VsZWN0ICZxdW90O0FsbCZxdW90OyBhcyBhIGNhdGVnb3J5IGZvciB0aGUgdXBsb2FkcyBkaXNwbGF5LjwvcD4KICA8L2xpPgo8L3VsPgo8aDQ+SG93IHdvdWxkIEkgdXNlIGl0PzwvaDQ+CjxwPkhlcmUgaXMgc29tZSBleGFtcGxlIGNvZGU6PC9wPgo8cHJlPgp7Y29udGVudF9tb2R1bGUgbW9kdWxlPSZxdW90O1VwbG9hZHMmcXVvdDsgYmxvY2s9JnF1b3Q7Y2F0ZWdvcnlzZWxlY3QmcXVvdDsgbGFiZWw9JnF1b3Q7U2VsZWN0IGFuIHVwbG9hZHMgY2F0ZWdvcnkmcXVvdDsgc2VsZWN0b25lPTEgYXNzaWduPSZxdW90O3RtcCZxdW90O30Ke1VwbG9hZHMgY2F0ZWdvcnk9JHRtcH0KPC9wcmU+Cgo8aDM+U3lzdGVtIFNldHRpbmdzPC9oMz4KPHA+PGI+Tm90ZTo8L2I+IFRoaXMgbW9kdWxlIGRvZXMgbm90IGJ5cGFzcyBvciBnZXQgcGFzdCBhbnkgZmlsZSBzaXplIGxpbWl0YXRpb25zIGluIHBocC4gIEl0IHdvcmtzIGluIGNvbmp1bmN0aW9uIHdpdGggdGhlbS4gIFRoZXJlZm9yZSB5b3UgbWF5IG5lZWQgdG8gbW9kaWZ5IHlvdXIgcGhwLmluaSBmaWxlLCB5b3VyIENNU01TIGNvbmZpZy5waHAgZmlsZSBhbmQvb3IgeW91ciBodHRwZC5jb25mIGZpbGUocykgdG8gYWxsb3cgeW91IHRvIHVwbG9hZCBmaWxlcyBhcyBsYXJnZSBhcyB3aGF0IHlvdSBoYXZlIHNldCBpbiB0aGUgdXBsb2FkcyBtb2R1bGUgcHJlZmVyZW5jZXMuPC9wPgo8aDM+QXBhY2hlIE5vdGVzPC9oMz4KPHA+SW4gb3JkZXIgdG8gYWxsb3cgbGFyZ2UgZmlsZSB1cGxvYWRzLCB5b3UgbWF5IG5lZWQgdG8gbW9kaWZ5IHRoZSB1cGxvYWRfbWF4X2ZpbGVzaXplIHBhcmFtZXRlciBpbiB5b3VyIHBocC5pbmkgIEluIGFkZGl0aW9uLCB0aGUgTGltaXRSZXF1ZXN0Qm9keSBwYXJhbWV0ZXIgaW4geW91ciBhcGFjaGUgY29uZmlndXJhdGlvbiwgbWF5IG5lZWQgdG8gYmUgYWRqdXN0ZWQgdG8gbWF0Y2ggdGhlIHVwbG9hZF9tYXhfZmlsZXNpemUgcGFyYW1ldGVyPC9wPgo8cD5Ob3RlOiAgdGhlIHVwbG9hZF9tYXhfZmlsZXNpemUgcGFyYW1ldGVyIGNhbiBiZSBzcGVjaWZpZWQgaW4gYnl0ZXMsIGtpbG9ieXRlcywgb3IgbWVnYWJ5dGVzLCBob3dldmVyIHRoZSBMaW1pdFJlcXVldEJvZHkgcGFyYW1ldGVyIGlzIG9ubHkgc3BlY2lmaWVkIGluIGJ5dGVzPC9wPgo8aDM+RGVwZW5kZW5jaWVzPC9oMz48dWw+PGxpPkNHRXh0ZW5zaW9ucyA9Jmd0OyAxLjE3LjM8L2xpPjwvdWw+PGgzPlBhcmFtZXRlcnM8L2gzPjx1bD48bGk+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+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gbGlzdGluZ3NvcnRvcmRlcj0iIiAtIFNvcnQgb3JkZXIgKGFsYSBwYXJhbV9zb3J0b3JkZXIpIHRvIHVzZSBmb3IgY2F0ZWdvcnkgbGlzdGluZ3MgYWZ0ZXIgY2xpY2t0aHJvdWdoIGZyb20gQ2F0ZWdvcnkgU3VtbWFyeSBwYWdlPC9saT48bGk+PGVtPihvcHRpb25hbCk8L2VtPiBzZW5kZmlsZXBhZ2U9IiIgLSBTcGVjaWZ5IHRoZSBwYWdlIGlkIG9yIGFsaWFzIG9mIGEgcGFnZSB0aGF0IHNob3VsZCBiZSB1c2VkIGZvciB0aGUgc2VuZCBhIGZpbGUgZm9ybTwvbGk+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gYWN0aW9uPSJkZWZhdWx0IiAtIFNwZWNpZmllcyB0aGUgYmVoYXZpb3VyIG9mIHRoZSBtb2R1bGUgdGFnLiAgUG9zc2libGUgdmFsdWVzIGFyZTogZGVmYXVsdCAtICh0aGUgZGVmYWZhdWx0IGJlaGF2aW9yKSwgZGV0YWlsIC0gdG8gZGlzcGxheSBhIGRldGFpbCB2aWV3IG9mIGEgc2luZ2xlIGZpbGUgYmFzZWQgb24gdGhlIHVwbG9hZF9pZCwgYW5kIHlvdXNlbmRpdCAtIHRvIGRpc3BsYXkgYSBmb3JtIHRvIGFsbG93IHVwbG9hZGluZyBhIGZpbGUsIGFuZCBzZW5kaW5nIGl0IHRvIG51bWVyb3VzIGFkZHJlc3NlcyBpbiBvbmUgc3RlcDwvbGk+PC91bD4=</help>
	<about>PGJyIC8+QXV0aG9yOiBjYWxndXkxMDAwICZsdDtjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnJmd0OzxiciAvPjxiciAvPlZlcnNpb246IDEuMTAuNDxiciAvPjxiciAvPkNoYW5nZSBIaXN0b3J5OjxiciAvPjx1bD4KPGxpPgo8cD5WZXJzaW9uIDEuMC4gLSBTZXB0ZW1iZXIgMjAwNS48L3A+CjxwPiBJbml0aWFsIFJlbGVhc2UuPC9wPgo8L2xpPgo8bGk+CjxwPlZlcnNpb24gMS4wMS4gLSBTZXB0ZW1iZXIgMjAwNTwvcD4KPHA+TWlub3IgZml4ZXMuPC9wPjwvbGk+CjxsaT4KPHA+VmVyc2lvbiAxLjAyLiAtIFNlcHRlbWJlciAyMDA1PC9wPgo8cD5BZGRlZCBhYmlsaXR5IHRvIHNwZWNpZnkgc29ydCBvcmRlcjwvcD4KPC9saT4KPGxpPgo8cD5WZXJzaW9uIDEuMDMuIC0gU2VwdGVtYmVyIDIwMDU8L3A+CjxwPkZpeCByZWdhcmRpbmcgY29uZmxpY3QgaW4gdGVtcGxhdGUgbmFtZXM8L3A+CjwvbGk+CjxsaT4KPHA+VmVyc2lvbiAxLjA0LiAtIFNlcHRlbWJlciAyMDA1PC9wPgo8cD5BZGRlZCBhYmlsaXR5IHRvIHJlLXNjYW4gYSBkaXJlY3RvcnksIGFuZCB0byB1cGxvYWQgZmlsZXMgZnJvbSB0aGUgYWRtaW4gcGFnZTwvcD4KPC9saT4KPGxpPgo8cD5WZXJzaW9uIDEuMDUuIC0gU2VwdGVtYmVyIDIwMDU8L3A+CjxwPkZpeGVkIHNvbWUgUEhQIHZhcmlhYmxlIGlzc3VlczwvcD4KPC9saT4KPGxpPgo8cD5WZXJzaW9uIDEuMDYuIC0gU2VwdGVtYmVyIDIwMDU8L3A+CjxwPkFkZGVkIGF1dGhvciBmaWVsZCB0byB0aGUgYWRtaW4gcGFuZWwgdXBsb2FkIGZvcm0sIGFkZGVkIGEgc3VtbWFyeSBmaWVsZCwgYW5kIG1hZGUgZGVzY3JpcHRpb24gYSB0ZXh0IGFyZWEsIGFuZCBhbGxvdyB0aGUgdXNlciB0byBzcGVjaWZ5IGEgZGVzdGluYXRpb24gZmlsZSBuYW1lPC9wPgo8L2xpPgo8bGk+CjxwPlZlcnNpb24gMS4wNy4gLSBTZXB0ZW1iZXIgMjAwNTwvcD4KPHA+QWRkZWQgdGhlIGFiaWxpdHkgdG8gcmVuYW1lIGZpbGVzIGFuZCBmaXhlZCBhIHNjYW4gZXJyb3I8L3A+CjwvbGk+CjxsaT4KPHA+VmVyc2lvbiAxLjA4LiAtIFNlcHRlbWJlciAyMDA1PC9wPgo8cD5CZXR0ZXIgaGFuZGxpbmcgb2YgbmFtZXMgd2l0aCBzcGFjZXMsIGFuZCBhIGZldyBtaW5vciBlcnJvcnMgZml4ZWQuICBBZGRlZCBzd2VkaXNoIHRyYW5zbGF0aW9uICh0aGFua3Mgd2VzdGlzKTwvcD48L2xpPgo8bGk+CjxwPlZlcnNpb24gMS4xLjAuIC0gT2N0b2JlciAyMDA1PC9wPgogPHVsPgogICA8bGk+TW9kaWZpZWQgQXR0ZW1wdFVwbG9hZCBmdW5jdGlvbiBzbyBpdCBjb3VsZCBiZSBjYWxsZWQgZXh0ZXJuYWxseTwvbGk+CiAgIDxsaT5BZGRlZCBHZXRVcGxvYWREZXRhaWxzIGZ1bmN0aW9uIHRoYXQgcmV0dXJucyBhbGwgb2YgdGhlIGRldGFpbHMgYWJvdXQgYSBtb2R1bGUsIGluY2x1ZGluZyBhIGxpbms8L2xpPgogICA8bGk+QWRkZWQgUmVkaXJlY3RzIHNvIHRoYXQgd29ya2luZyB3aXRoIHRoZSBtb2R1bGUgaXMgYWxvdCBuaWNlciwgaXQgcmV0dXJucyB0byB0aGUgcmlnaHQgdGFiPC9saT4KICAgPGxpPkNoYW5nZWQgdGhlIGZyb250IHRlbXBsYXRlIHRvIGxvb2sgYSBsaXR0bGUgYmV0dGVyIGFuZCBtYWtlIG1vcmUgc2Vuc2U8L2xpPgogICA8bGk+Rml4ZXMgdG8gdGhlIHVwbG9hZHMgc3R1ZmYgc28gdGhhdCB0aGUgZGVzY3JpcHRpb24gaXMgc2V0LCBhbmQgbmFtZSBhbmQgc3VtbWFyeSBhcmUgcHV0IGluIHRoZSByaWdodCBwbGFjZTwvbGk+CiAgIDxsaT5GaXhlcyB0byBldmVuIGJldHRlciBoYW5kbGUgc3BhY2VzIGluIG5hbWVzPC9saT4KICAgPGxpPk9wdGlvbmFseSBwbGFjZSBkdW1teSBpbmRleC5odG1sIGZpbGVzIGluIGVhY2ggdXBsb2FkIGRpcmVjdG9yeTwvbGk+CiAgIDxsaT5JZiBzcGVjaWZ5aW5nIGEgZGVzdGluYXRpb24gbmFtZSwgYW5kIG5vIGV4dGVuc2lvbiBpcyBnaXZlbiwgdGhlIGV4dGVuc2lvbiBvZiB0aGUgb3JpZ2luYXRpbmcgZmlsZSAoaWYgYW55IGV4aXN0cyBpcyB1c2VkPC9saT4KIDwvdWw+CiA8cD48ZW0+PGI+SW1wb3J0YW50ITwvYj48L2VtPjxici8+SXQgaXMgbm90IHBvc3NpYmxlIHRvIHVwZ3JhZGUgZnJvbSBhbnkgb3RoZXIgdmVyc2lvbiBvZiB0aGUgVXBsb2FkcyBtb2R1bGUgdG8gMS4xLjAuICBUaGlzIGlzIGR1ZSB0byBzb21lIGVycm9ycyB0aGF0IHdlcmUgbWFkZSBpbiB0aGUgZGF0YWJhc2Ugcm91dGluZXMsIGFuZCBldmVuIGluIHRoZSB1cGdyYWRlIHJvdXRpbmUgaW4gMS4wLjYuICBZb3UgbXVzdCBkZS1pbnN0YWxsIHRoZSBvbGQgdmVyc2lvbiwgYW5kIHRoZW4gcmUtaW5zdGFsbCB0aGUgbmV3IHZlcmVzaW9uLiBUaGlzIHdpbGwgY2F1c2Ugc2lnbmlmaWNhbnQgZGlmZmljdWx0eSBpZiB5b3UgaGF2ZSBkc2NyaXB0aW9ucywgZXRjLCBpbiB5b3VyIHRhYmxlczwvcD4KPC9saT4KPGxpPgo8cD5WZXJzaW9uIDEuMS4xLiAtIE9jdG9iZXIsIDIwMDU8L3A+CjxwPkZpeGVkIGEgY291cGxlIG9mIG1pbm9yIGJ1Z3MgaW4gdGhlIEdldFVwbG9hZERldGFpbHMgYW5kIGFkZGVkIGFub3RoZXIgbGluayAob3IgYSB1cmwpIHRvIHRoZSB1cGxvYWRlZCBmaWxlLjwvcD4KPC9saT4KPGxpPgo8cD5WZXJzaW9uIDEuMS4yLiAtIE9jdG9iZXIsIDIwMDU8L3A+CjxwPkZpeGVkIHRoZSBVUkwgZmllbGQgaW4gR2V0VXBsb2FkRGV0YWlscyB0byByZXR1cm4gYSBkb3dubG9hZCBsaW5rIGFuZCBhZGRlZCBhbiBhYnN1cmwgZmllbGQgd2hpY2ggcmV0dXJucyB0aGUgYWJzb2x1dGUgcGF0aCB0byB0aGUgZmlsZSBvbiB0aGUgd2Vic2VydmVyLiAgQ2xpY2tzIG9uIHRoaXMgbGluayB3aWxsIG5vdCBiZSBjb3VudGVkPC9wPgo8L2xpPgo8bGk+CjxwPlZlcnNpb24gMS4xLjMuIC0gT2N0b2JlciwgMjAwNTwvcD4KPHA+Rml4ZWQgdGhlIHVwZ3JhZGUgcHJvYmxlbSBmcm9tIHRoZSAxLjAueCBzZXJpZXMuICBVc2VycyBvZiB0aGUgMS4wLnggc2VyaWVzIHNob3VsZCBiZSBhYmxlIHRvIHVwZ3JhZGUgdG8gMS4xLjMgbm93IHdpdGggbm8gZGlmZmljdWx0eS4gPGI+VGhvc2UgYXJlIGZhbW91cyBsYXN0IHdvcmRzLCBwbGVhc2UgYmFja3VwIGZpcnN0PC9iPi4gRml4ZWQgdGhlIGNvbnRlbnQgcmVkaXJlY3QgdGhpbmdzIHRoYXQgd2VyZSBpcnJpdGF0aW5nIG1lLiAgQWxzbyBhZGRlZCBjYXRlZ29yeT1hbGwgdG8gbGlzdCBhbGwgb2YgdGhlIHVwbG9hZHMgaW4gYWxsIGxpc3RhYmxlIGNhdGVnb3JpZXMgPGVtPihsZXRzIGFsbCBob3BlIEkgZ290IHRoZSBzcWwgZmlndXJlZCBvdXQgcHJvcGVybHkpPC9lbT4uPC9wPgo8L2xpPgo8bGk+CjxwPlZlcnNpb24gMS4xLjQuIC0gT2N0b2JlciwgMjAwNTwvcD4KPHA+QWRkZWQgdGhlIGNvdW50IHBhcmFtZXRlciB0byBsaXN0IG9ubHkgdGhlIGZpcnN0IE4gcmVjb3JkcywgYW5kIGFkZGVkICJzdW1tYXJ5bGluayIsIGFuZCAiY2F0ZWdvcnkiIHRvIHRoZSB0ZW1wbGF0ZXMgZm9yIHdlc3Rpcy4gIEZvciBleGFtcGxlcyBvbiBob3cgdG8gdXNlIHRoZW0gcmVzZXQgeW91ciB0ZW1wbGF0ZXMgYmFjayB0byBkZWZhdWx0LjwvcD48L2xpPgo8bGk+CjxwPlZlcnNpb24gMS4xLjUuIC0gTm92ZW1iZXIsIDIwMDU8L3A+CjxwPkFkZGVkIGVtYWlsIG5vdGlmaWNhdGlvbiBhbmQgc29tZSBidWcgZml4ZXM8L3A+CjwvbGk+CjxsaT4KPHA+VmVyc2lvbiAxLjEuNi4gLSBOb3ZlbWJlciwgMjAwNTwvcD4KPHA+QWRkZWQgYW4gYXBpIGZ1bmN0aW9uIGFuZCBmaXhlZCBzb21lIHJlZGlyZWN0aW9uIHN0dWZmPC9wPgo8L2xpPgo8bGk+CjxwPlZlcnNpb24gMS4xLjcuIC0gTm92ZW1iZXIsIDIwMDU8L3A+CjxwPk1vcmUgQVBJIGZ1bmN0aW9ucywgYW5kIG5vdyBpZ25vcmUgZG90IGZpbGVzIHdoZW4gc2Nhbm5pbmcuICBFbWFpbCBub3RpZmljYXRpb24gaXMgbm93IGluLjwvcD4KPC9saT4KPGxpPgo8cD5WZXJzaW9uIDEuMS44LiAtIEphbnVhcnksIDIwMDY8L3A+CjxwPiogSW1wcm92ZWQgZG9jcyB3cnQgYXBhY2hlIGFuZCBwaHAgY29uZmlncy48L3A+CjxwPiogRml4ZWQgcHJvYmxlbSB3aGVyZSBmaWxlc2l6ZSB3YXMgc2hvd2luZyB1cCBhcyAwLjwvcD4KPHA+KiBNb2RpZmllZCBwZXJtaXNzaW9ucyB0byBiZSBtb3JlIGdyYW51bGFyPC9wPgo8cD4qIEFkZGVkIHNvbWUgY29tbWVudHMgYW5kIHZlcmJvc2l0eSB0byB0aGUgY2F0ZWdvcnkgYW5kIHVwbG9hZHMgZm9ybXMgaW4gdGhlIGFkbWluIHNlY3Rpb248L3A+CjxwPiogQWRkZWQgInJhbmRvbSIgc29ydCBvcmRlcjwvcD4KPHA+KiBTb21lIFBIUDUgZml4ZXM8L3A+CjwvbGk+CjxsaT4KPHA+VmVyc2lvbiAxLjEuOS4gLSBKYW51YXJ5LCAyMDA2PC9wPgo8cD4qIEFkZGVkIHRoZSBhYmlsaXR5IHRvIHVwbG9hZCBhIHRodW1ibmFpbCBpbWFnZTwvcD4KPHA+KiBTb21lIGltcHJvdmVkIGF1ZGl0aW5nPC9wPgo8cD4qIHhtbCBub3cgYWRkZWQgdG8gdGhlIGRlZmF1bHQgZmlsZSB0eXBlcyAobmV3IGluc3RhbGxzIG9ubHkpPC9wPgo8cD4qIEFkZGVkIGEgY29uZmlybWF0aW9uIG1lc3NhZ2UgdG8gdGhlIHJlc2V0IHRvIGRlZmF1bHRzIGJ1dHRvbnMgb2YgdGhlIHRlbXBsYXRlIHBhZ2VzLjwvcD4KPHA+KiBBZGRlZCB0aGUgZmlsZV9leHRlbnNpb25zIHBhcmFtZXRlciBmb3IgdGhlIHVwbG9hZCBmb3JtPC9wPgo8cD4qIFRoZSBjdXJyZW50IGNhdGVnb3J5IHNlbGVjdGVkIGluIHRoZSBmaWxlcyBmaWx0ZXIgaXMgc3RpY2t5Lgo8cD4qIEFkZGVkIGEgcHJlZmVyZW5jZSB0byBlbmZvcmljZSBmaWxlbmFtZSBleHRlbnNpb25zIChkZWZhdWx0cyB0byBvbik8L3A+CjxwPiogQWRkZWQgYSBsaW5rIHRvIHRoZSBlZGl0IHBhZ2UsIGluIHRoZSBuYW1lIGNvbHVtbiBvZiB0aGUgZmlsZXMgbGlzdC48L3A+CjxwPiogTWlub3IgY2hhbmdlcyB0byB0aGUgbGF5b3V0IGFuZCB0ZXh0IHRvIGFkZCBjbGFyaXR5LjwvcD4KPHA+KiBBZGRlZCBkb3dubG9hZF91cmwgYXMgYW4gYXZhaWxhYmxlIHNtYXJ0eSB0YWcgaW4gdGhlIHRlbXBsYXRlczwvcD4KPGxpPgo8cD5WZXJzaW9uIDEuMS4xMC4gLSBGZWJydWFyeSwgMjAwNjwvcD4KPHA+KiBTdW1tYXJ5IG5vdyBkZWZhdWx0cyB0byB0aGUgZmlsZW5hbWUgKHdpdGhvdXQgdGhlIGV4dGVuc2lvbikgaWYgbm9uZSBpcyBzcGVjaWZpZWQ8L3A+CjxwPiogTm93IGNvcnJlY3RseSBoYW5kbGUgaWYgdGhlIHRodW1ibmFpbCBleHRlbnNpb24gaXMgbm90IGluIHRoZSBhY2NlcHRlZCBleHRlbnNpb24gbGlzdDwvcD4KPHA+KiBObyBsb25nZXIgZGlzcGxheSBhbnkgY29udGVudCBpbiB0aGUgZmlsZXMgdGFiIGlmIHRoZXJlIGFyZSBubyBjYXRlZ29yaWVzIGRlZmluZWQ8L3A+CjxwPiogRGlzcGxheSBhIGxpbmsgaW4gdGhlIGVycm9yIHBhZ2UgdGhhdCB0YWtlcyB5b3UgYmFjayB0byB0aGUgbWFpbiBhZG1pbiBwYW5lbDwvcD4KPHA+KiBBbGxvdyBmb3IgcmVwbGFjaW5nIG9mIHVwbG9hZGVkIGZpbGVzPC9wPgo8L2xpPgo8bGk+CjxwPlZlcnNpb24gMS4xLjExLiAtIE1hcmNoLCAyMDA2PC9wPgo8cD5BZGRlZCB0aGUgYWJpbGl0eSBmb3IgYSBsaW5rIHRvIGEgZGV0YWlsZWQgcGFnZSB3aGVuIGluIHN1bW1hcnkgbW9kZS48L3A+CjxwPlNwbGl0IHRoZSBkZWZhdWx0IGFjdGlvbiBhbmQgZGVmYXVsdGFkbWluIGFjdGlvbnMgaW50byBzZXBhcmF0ZSBmaWxlcywgZm9yIGEgYml0IG9mIG1lbW9yeSBpbXByb3ZlbWVudCwgaG9wZWZ1bGx5PC9wPgo8cD5BZGQgdGhlIGFiaWxpdHkgdG8gcmVkaXJlY3QgdG8gYW5vdGhlciBwYWdlIGFmdGVyIGEgZnJvbnRlbmQgdXNlciB1cGxvYWRlZCBhIGZpbGU8L3A+CjwvbGk+CjxsaT4KPHA+VmVyc2lvbiAxLjEuMTIuIC0gTWFyY2gsIDIwMDY8L3A+CjxwPkFkZGVkIHRoZSBzaW5nbGVzdW1tYXJ5IG1vZGUgdG8gZGlzcGxheSBhIHNpbmdsZSB1cGxvYWQgaW4gc3VtbWFyeSBtb2RlPC9QPgo8L2xpPgo8bGk+CjxwPlZlcnNpb24gMS4xLjEzLiAtIEFwcmlsLCAyMDA2PC9wPgo8cD5BZGRlZCBvcHRpb25hbCBmaWx0ZXJpbmcgb24gdGhlIGZyb250ZW5kLCBhbmQgYSBjb3VwbGUgb2YgZXh0cmEgcGFyYW1ldGVycyB0byBnbyB3aXRoIGl0PC9wPgo8cD5GaXhlZCBhIHByb2JsZW0gd2hlcmUgaXQgd291bGQgYWxsb3cgeW91IHRvIGVudGVyIGEgYmxhbmsgcGF0aCB3aGVuIGNyZWF0aW5nIGEgY2F0ZWdvcnk8L3A+CjxwPlNwbGl0IHN0dWZmIGludG8gKHNvbWUpIHNlcGFyYXRlIGFjdGlvbiBmaWxlcyBmb3Igc29tZSBob3BlZnVsIHBlcmZvcm1hbmNlIGluY3JlYXNlczwvcD4KPHA+QWRkZWQgY29weXJpZ2h0IG5vdGljZXM8L3A+CjxwPkNoYW5nZWQgKG9wdGlvbmFsKSBkZXBlbmRlbmN5IGZyb20gVXNlcklEIHRvIEZyb250RW5kVXNlcnMgTW9kdWxlLjwvcD4KPC9saT4KPGxpPgo8cD5WZXJzaW9uIDEuMi4xIC0gQXByaWwsIDIwMDY8L3A+CjxwPkNoYW5nZWQgX3NjYW5EaXJlY3RvcnkgdG8gYW4gQVBJIGZ1bmN0aW9uIFNjYW5EaXJlY3RvcnkgYW5kIHRoZW4gYWRkZWQgU21hcnRTY2FuRGlyZWN0b3J5IHRvIHNjYW4gdGhlIGRpcmVjdG9yeSBiZWZvcmUgZGlzcGxheWluZyB0aGUgc3VtbWFyeSBvciBkZXRhaWwgbGlzdGluZyB0byBoYW5kbGUgdGhlCmNhc2Ugd2hlcmUgc29tZWJvZHkgdXBsb2FkZWQgZmlsZXMgdmlhIEZUUCBvciBzb21ldGhpbmcgYW5kIGRpZCBub3QgZ28gaW50byB0aGUgYWRtaW4gc2VjdGlvbiB0byB1cGRhdGUgdGhlIGNhdGVnb3JpZXMuPC9wPgo8cD5Db3JyZWN0aW9uIHRvIGFsbCBkYiBhY2Nlc3Mgc3R1ZmYuIEhvcGVmdWxseSBwcm92aWRlcyBhIHBlcmZvcm1hbmNlIGluY3JlYXNlLjwvcD4KPHA+Rml4ZXMgdG8gdGhlIGFib3V0IHN0dWZmLCBub3cgdXNlIENyZWF0ZVBhcmFtZXRlcjwvcD4KPHA+QWRkZWQgdGhlIHVwbG9hZF90ZW1wbGF0ZSwgc3VtbWFyeV90ZW1wbGF0ZSwgYW5kIGRldGFpbF90ZW1wbGF0ZSAob3B0aW9uYWwpIHBhcmFtZXRlcjwvcD4KPHA+QWRkZWQgdGhlIG5vYXV0aG9yIHBhcmFtZXRlciwgYW5kIHRoZSBrZXkgcGFyYW1ldGVyLiAgVGhlIGtleSBwYXJhbWV0ZXIgYWxsb3dzIHRoZSB1cGxvYWRzIG1vZHVsZSB0byBiZSBlbWJlZGRlZCBpbnRvIG90aGVyIG1vZHVsZXM8L3A+CjxwPk1vdmVkIHRvIHVuZGVyIHRoZSBjb250ZW50IG1lbnUsIGFuZCBlbnRpdGxlZCBcJ0ZpbGVzIChVcGxvYWQgTW9kdWxlKVwnPC9wPjsKPC9saT4KPGxpPgo8cD5WZXJzaW9uIDEuMi4yIC0gSnVuZSwgMjAwNgo8cD5BZGRlZCB0aGUgYWJpbGl0eSB0byBoYXZlIG11bHRpcGxlIGRhdGFiYXNlIHRlbXBsYXRlcywgYW5kIHRvIHNlbGVjdCBvbmUgb24gdGhlIHRhZyB3aXRoIHRoZSB0ZW1wbGF0ZSBwYXJhbWV0ZXIuPC9wPgo8cD5GaXhlZCBhbiBpc3N1ZSB3aGVyZSBmaWxlcyB3ZXJlIGdldHRpbmcgY29ycnVwdGVkIG9uIGRvd25sb2FkPC9wPgo8L2xpPgo8bGk+CjxwPlZlcnNpb24gMS4yLjMgLSBKdW5lLCAyMDA2CjxwPkZpeGVzIHRvIHVzZSBhZG9kYi1saXRlIHByb3BlciwgcmF0aGVyIHRoYW4gdGVkcyBoYWNrPC9wPgo8cD5EZXRhaWwgbGluayBub3cgZGlzcGxheXMgaW5saW5lPC9wPgo8cD5PdGhlciBtaW5vciB0d2Vha3MgdGhhdCBJIGNhbnQgcmVtZW1iZXI8L3A+CjwvbGk+CjxsaT5WZXJzaW9uIDEuMy4wIC0gU2VwdGVtYmVyLCAyMDA3Cjx1bD4KPGxpPkZpeGVzIHRvIHRoZSBEVCBmaWVsZCB0eXBlPC9saT4KPGxpPlVzZSB0aGUgRkVVIHVzZXJuYW1lIChvcHRpb25hbGx5KSBzbyB0aGF0IHdlIGNhbiB0cmFjayB3aGVuIGEgbG9nZ2VkIGluIHVzZXIgdXBsb2FkcyBhIGZpbGU8L2xpPgo8bGk+QWRkIGZpbGV0eXBlIGNhcGFiaWxpdGllcyB0byBhc3NvY2lhdGUgYW4gaWNvbiB3aXRoIGEgcGFydGljdWxhciB1cGxvYWQuICBBbHNvIHN1cHBvcnQgYW4gdW5rbm93biBmaWxlIHR5cGUgZm9yIGFueXRoaW5nIHRoYXQgZG9lcyBub3QgbWF0Y2guPC9saT4KPGxpPkNvbXBsZXRlbHkgcmUtd29ya2VkIHRoZSBtdWx0aXBsZSBkYXRhYmFzZSB0ZW1wbGF0ZSBzdHVmZi48L2xpPgo8bGk+QWRqdXN0bWVudHMgdG8gdGhlIGRlZmF1bHQgdGVtcGxhdGVzPC9saT4KPGxpPkZpeGVzIHRvIHVzaW5nIGNhdGVnb3J5PSJhbGwiPC9saT4KPGxpPkdlbmVyYXRlIHRodW1ibmFpbHMgYXV0b21hdGljYWxseSAob3B0aW9uYWxseSkgZm9yIGNlcnRhaW4gZmlsZSB0eXBlcywgb24gdXBsb2FkLCBhbmQgb24gc2Nhbi48L2xpPgo8bGk+QWRkIGNhcHRjaGEgc3VwcG9ydCB0byB0aGUgdXBsb2FkIGZvcm08L2xpPgo8bGk+QWRkIGEgc2FmZSBtb2RlIHdhcm5pbmcgaW4gdGhlIGFkbWluIHBhbmVsPC9saT4KPGxpPlVzZXMgY2h1bmtlZCBkb3dubG9hZHMuPC9saT4KPGxpPkFkZHMgcHJlZml4IGFuZCBwcmVmaXhfZmV1IGNhcGFiaWxpdHkgdG8gdXBsb2FkZWQgZmlsZXMuPC9saT4KPGxpPkFkZGVkIHRoZSBkZXRhaWxwYWdlIHBhcmFtLjwvbGk+CjxsaT5BZGRlZCB0aGUgYWJpbGl0eSB0byBkaXNwbGF5IGFuIGltYWdlIGluIGZ1bGwgc2l6ZSAob3Igd2hhdGV2ZXIgc2l6ZSB3ZSB3YW50KSwgc28gdGhhdCB0aGUgdXBsb2FkcyBtb2R1bGUgY2FuIGJlIHVzZWQgYXMgYSBnYWxsZXJ5LjwvbGk+CjxsaT5BZGRlZCBzZWN1cml0eSAodmlhIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZSkgdG8gY2F0ZWdvcmllczwvbGk+CjxsaT5BZGRlZCBhIHNlbGVjdCBtb2RlIHRvIGdlbmVyYXRlIGEgcHVsbGRvd24gb2YgZmlsZXMgaW4gYSBjYXRlZ29yeSwgZm9yIHVzZSB3aGVuIGF0dGFjaGluZyB1cGxvYWRzIG1vZHVsZSB0byBzb21lIG90aGVyIG1vZHVsZS48L2xpPgo8bGk+QWRkcyBhIGNhdGVnb3J5IGJyb3dzZXIsIGZpeGVzIGEgcmV3IG1pbm9yIGlzc3VlcywgYW5kIHR3ZWFrcyB0aGUgYXZhaWxhYmxlIGZpbGUgdHlwZSBpY29uczwvbGk+CjwvdWw+CjwvbGk+Cgo8bGk+VmVyc2lvbiAxLjQgLSBOb3ZlbWJlciAyMDA4Cjx1bD4KPGxpPk1ham9yIGNsZWFudXAgb2YgdGhlIGRlZmF1bHQgYWN0aW9uPC9saT4KPGxpPkFkZHMgcGFnaW5hdGlvbiB0byBzdW1tYXJ5IHZpZXc8L2xpPgo8bGk+QWRkcyBwcmV0dHkgdXJscyBmb3IgZmlsZSBsaW5rczwvbGk+CjxsaT5BZGRzIHRoZSBhYmlsaXR5IHRvIHJlcGxhY2UgdGh1bWJuYWlscyBhZnRlciB0aGUgZmlsZSBpcyB1cGxvYWVkLjwvbGk+CjxsaT5DaGFuZ2UgdGh1bWJuYWlscyBmcm9tIHVzaW5nIGEgLnRodW1icyBkaXJlY3RvcnkgdG8gdXNpbmcgYSBzdGFuZGFyZCB0aHVtYl8gcHJlZml4LjwvbGk+CjxsaT5OdW1lcm91cyBCdWdmaXhlczwvbGk+CjwvdWw+CjwvbGk+Cgo8bGk+VmVyc2lvbiAxLjQgLSBGZWJydWFyeSAyMDA5CiAgPHVsPgogICAgIDxsaT5GaXggcHJvYmxlbSB3aXRoIHNjYW5uaW5nIGRpcmVjdG9yaWVzLCBhbmQgY3JlYXRpbmcgdGh1bWJuYWlscy48L2xpPgogIDwvdWw+CjwvbGk+Cgo8bGk+VmVyc2lvbiAxLjUuMSAtIE1heSAyMDA5CiAgPHVsPgogICAgIDxsaT5BZGRzIHRoZSBhYmlsaXR5IHRvIGRlbGV0ZSBmaWxlcyBmcm9tIHRoZSBmcm9udGVuZC48L2xpPgogICAgIDxsaT5GaXhlcyBwcm9ibGVtIHdpdGggc2NhbiBkaXJlY3Rvcnkgd2hlbiBub3QgYWxzbyBsb2dnZWQgaW4gdG8gdGhlIGFkbWluIHBhbmVsIGluIHRoZSBzYW1lIGJyb3dzZXIgc2Vzc2lvbi48L2xpPgogIDwvdWw+CjwvbGk+Cgo8bGk+VmVyc2lvbiAxLjYgLSBGZWJydWFyeSAyMDA5CiAgPHVsPgogICAgIDxsaT5BZGRzIHRoZSBhYmlsaXR5IHRvIGRpc3BsYXkgYSBmb3JtIHRvIHNlbmQgYW4gZW1haWwgdG8gc2VsZWN0ZWQgcGVvcGxlIHdpdGggZGV0YWlscyBhYm91dCBhIGZpbGUuPC9saT4KICAgICA8bGk+QWRkcyB0aGUgeW91c2VuZGl0IGNhcGFiaWxpdHkgdG8gdXBsb2FkIGEgZmlsZSBhbmQgc2ltdWx0YW5vZW91c2x5IHNlbmQgZGV0YWlscyB0byBzZWxlY3RlZCBwZW9wbGUuPC9saT4KICA8L3VsPgo8L2xpPgoKPGxpPlZlcnNpb24gMS43IC0gSnVseSAyMDA5CiAgPHVsPgogICAgIDxsaT5Ob3cgZGVwZW5kcyBvbiBDR0V4dGVuc2lvbnMgZm9yIHRlbXBsYXRpbmc8L2xpPgogICAgIDxsaT5BZGRzIHRpbWUgbGltaXRlZCBVUkxTPC9saT4KICA8L3VsPgo8L2xpPgoKPGxpPlZlcnNpb24gMS43LjEgLSBKdWx5IDIwMDkKICA8dWw+CiAgICAgPGxpPk1pbm9yIGJ1ZyBmaXhlcy48L2xpPgogIDwvdWw+CjwvbGk+Cgo8bGk+VmVyc2lvbiAxLjggLSBKdWx5IDIwMDkKICA8dWw+CiAgICA8bGk+TWlub3IgYnVnIGZpeGVzLjwvbGk+CiAgICA8bGk+QWRkIGEgY2F0ZWdvcnkgc2VsZWN0IGNvbnRlbnQgYmxvY2sgZm9yIENNUyAxLjcuPC9saT4KICA8L3VsPgo8L2xpPgoKPGxpPlZlcnNpb24gMS45IC0gSnVseSAyMDA5CiAgPHVsPgogICAgPGxpPlVwZGF0ZXMgZm9yIENNUyAxLjc8L2xpPgogIDwvdWw+CjwvbGk+Cgo8bGk+VmVyc2lvbiAxLjkuMSAtIFNlcHRlbWJlciAyMDA5CiAgPHVsPgogICAgPGxpPk1pbm9yIGJ1ZyBmaXhlcy48L2xpPgogIDwvdWw+CjwvbGk+Cgo8bGk+VmVyc2lvbiAxLjkuMiAtIFNlcHRlbWJlciAyMDA5CiAgPHVsPgogICAgPGxpPk1pbm9yIGJ1ZyBmaXhlcy48L2xpPgogIDwvdWw+CjwvbGk+Cgo8bGk+VmVyc2lvbiAxLjkuMyAtIE9jdG9iZXIgMjAwOQogIDx1bD4KICAgIDxsaT5PbmUgbWlub3IgYnVnIGZpeC48L2xpPgogIDwvdWw+CjwvbGk+Cgo8bGk+VmVyc2lvbiAxLjkuNCAtIE9jdG9iZXIgMjAwOQogIDx1bD4KICAgIDxsaT5taW5vciBidWcgZml4ZXM8L2xpPgogIDwvdWw+CjwvbGk+Cgo8bGk+VmVyc2lvbiAxLjEwIC0gT2N0b2JlciAyMDA5CiAgPHVsPgogICAgPGxpPkFkZHMgdGhlIGFiaWxpdHkgdG8gYXV0byBkZWxldGUgZmlsZXMgYmVzZWQgb24gYSBtYXggYWdlIHNwZWNpZmllZCBpbiB0aGUgY2F0ZWdvcnk8L2xpPgogICAgPGxpPkFkZHMgdGhlIGFiaWxpdHkgdG8gYWRkIGEgdGltZSBsaW1pdGVkIGtleSwgYW5kIHNlbmQgYW4gZW1haWwgYXV0b21hdGljYWxseSBvbiB1cGxvYWQgaW4gdGhlIGFkbWluLjwvbGk+CiAgPC91bD4KPC9saT4KCjxsaT5WZXJzaW9uIDEuMTAuMSAtIE9jdG9iZXIgMjAwOQogIDx1bD4KICAgPGxpPkZpeGVzIGJ1ZyB3aXRoIGRlbGV0ZWluZyBmaWxlcy4gLSB0aGUgZGVsZXRlIHVybCBpcyBzdGlsbCBub3QgaW4gdGhlIGRlZmF1bHQgc3VtbWFyeSB0ZW1wbGF0ZSAoaW50ZW50b25hbGx5KTwvbGk+CiAgPC91bD4KPC9saT4KCjxsaT5WZXJzaW9uIDEuMTAuMiAtIE9jdG9iZXIgMjAwOQogIDx1bD4KICAgPGxpPkFkZHMgYSBuZXcgcGVybWlzc2lvbiB0aGF0IGFsbG93cyBvbmx5IGFjY2VzcyB0byB0aGUgZnVuY3Rpb25hbGl0eSBvbiB0aGUgZmlsZXMgdGFiLjwvbGk+CiAgPC91bD4KPC9saT4KCjxsaT5WZXJzaW9uIDEuMTAuMyAtIE9jdG9iZXIgMjAwOQogIDx1bD4KICAgPGxpPk1pbm9yIEJ1ZyBGaXhlczwvbGk+CiAgPC91bD4KPC9saT4KCjxsaT5WZXJzaW9uIDEuMTAuNCAtIE9jdG9iZXIgMjAwOQogIDx1bD4KICAgPGxpPk1pbm9yIEJ1ZyBGaXhlczwvbGk+CiAgPC91bD4KPC9saT4KCjwvdWw+CjxiciAvPg==</about>
	<description>A module that allows users to upload files, and allows you to manage them.</description>
	<requires>
	  <requiredname>CGExtensions</requiredname>
	  <requiredversion>1.17.3</requiredversion>
	</requires>
	<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+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLCdpbnB1dF9jYXRlZ29yeWxpc3RhYmxlJywwKS4KCQkgJHRoaXMtPkNyZWF0ZUlucHV0Q2hlY2tib3ggKCRpZCwKCQkJCQkgICAgICdpbnB1dF9jYXRlZ29yeWxpc3RhYmxlJywKCQkJCQkgICAgIDEsMCkpOwokc21hcnR5LT5hc3NpZ24oJ3Byb21wdF9jYXRlZ29yeWRlbGV0YWJsZScsCgkJJHRoaXMtPkxhbmcgKCdwcm9tcHRfY2F0ZWdvcnlkZWxldGFibGUnKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfY2F0ZWdvcnlkZWxldGFibGUnLAoJCSAkdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLCdpbnB1dF9jYXRlZ29yeWRlbGV0YWJsZScsMCkuCgkJJHRoaXMtPkNyZWF0ZUlucHV0Q2hlY2tib3ggKCRpZCwKCQkJCQkgICAgJ2lucHV0X2NhdGVnb3J5ZGVsZXRhYmxlJywKCQkJCQkgICAgMSwwKSk7Cgokc21hcnR5LT5hc3NpZ24oJ2lucHV0X2NhdGVnb3J5X2V4cGlyZXNfaHJzJywKCQkkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwKCQkJCSAgICAgICAnaW5wdXRfY2F0ZWdvcnlfZXhwaXJlc19ocnMnLAoJCQkJICAgICAgICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdjYXRlZ29yeV9leHBpcmVzJywnMCcpLDMsNCkpOwoKJGZldXNlcnMgPSYgJHRoaXMtPkdldE1vZHVsZUluc3RhbmNlKCdGcm9udEVuZFVzZXJzJyk7CmlmKCAkZmV1c2VycyApCiAgewogICAgLy8gZ2V0IGEgbGlzdCBvZiB0aGUgZ3JvdXBzIGluIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZQogICAgJGdyb3VwcyA9ICRmZXVzZXJzLT5HZXRHcm91cExpc3QoKTsKICAgIGlmKCBjb3VudCgkZ3JvdXBzKSA+IDAgKQogICAgICB7Cgkkc21hcnR5LT5hc3NpZ24oJ3Byb21wdF9ncm91cGxpc3QnLCR0aGlzLT5MYW5nKCdwcm9tcHRfZ3JvdXBsaXN0JykpOwoJJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9ncm91cGxpc3QnLAoJCQkkdGhpcy0+Q3JlYXRlSW5wdXRTZWxlY3RMaXN0KCRpZCwnaW5wdXRfZ3JvdXBsaXN0W10nLAoJCQkJCQkgICAgICRncm91cHMpKTsKCSRzbWFydHktPmFzc2lnbignaW5mb19ncm91cGxpc3QnLCR0aGlzLT5MYW5nKCdpbmZvX2dyb3VwbGlzdCcpKTsKICAgICAgfQogIH0KCi8vIERpc3BsYXkgdGhlIHBvcHVsYXRlZCB0ZW1wbGF0ZQplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUgKCdhZGRjYXRlZ29yeS50cGwnKTsKCi8vIEVPRgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.addfiletype.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojIEF1dGhvcjogUm9iZXJ0IENhbXBiZWxsIDxyb2JAdGVjaGNvbS5keW5kbnMub3JnPgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDoJLy93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgppZiggISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01hbmFnZSBVcGxvYWRzJykgKQogIHsKICAgIHJldHVybjsKICB9CgppZiggaXNzZXQoJHBhcmFtc1snY2FuY2VsJ10pICkKICB7CiAgICAkdGhpcy0+UmVkaXJlY3QoJGlkLCdkZWZhdWx0YWRtaW4nLCRyZXR1cm5pZCwkcGFyYW1zKTsKICB9CgokaWNvbmxpc3QgPSBhcnJheSgpOwokZGlyID0gZGlybmFtZShfX0ZJTEVfXykuRElSRUNUT1JZX1NFUEFSQVRPUi4naW1hZ2VzJzsKaWYoIGlzX2RpciggJGRpciApICkKICB7CiAgICBpZiggJGRoID0gb3BlbmRpcigkZGlyKSApCiAgICAgIHsKCXdoaWxlKCgkZmlsZSA9IHJlYWRkaXIoJGRoKSkgIT09IGZhbHNlKQoJICB7CgkgICAgaWYoIGlzX2ZpbGUoICRkaXIuRElSRUNUT1JZX1NFUEFSQVRPUi4kZmlsZSApICkKCSAgICAgIHsKCQkkaWNvbmxpc3RbJGZpbGVdID0gJGZpbGU7CgkgICAgICB9CgkgIH0KCWNsb3NlZGlyKCRkaCk7CiAgICAgIH0KCiAgfQoKJGhpZGRlbiA9ICcnOwokbmFtZSA9ICcnOwokZXh0ZW5zaW9ucyA9ICcnOwokZGVzY3JpcHRpb24gPSAnJzsKJGljb24gPSAnJzsKaWYoIGlzc2V0KCAkcGFyYW1zWyd0eXBlaWQnXSApICkKICB7CiAgICAvLyBnZXQgdGhlIGRhdGEgb3V0IG9mIHRoZSBkYXRhYmFzZSwgd2UncmUgb2J2aW91c2x5IGVkaXRpbmcgc29tZXRoaW5nCiAgICAkaGlkZGVuIC49ICR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsJ3R5cGVpZCcsJHBhcmFtc1sndHlwZWlkJ10pOwogICAgJHEgPSAiU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfZmlsZXR5cGVzIAogICAgICAgICAgIFdIRVJFIGlkID0gPyI7CiAgICAkZGIgPSYgJHRoaXMtPkdldERiKCk7CiAgICAkcm93ID0gJGRiLT5HZXRSb3coICRxLCBhcnJheSggJHBhcmFtc1sndHlwZWlkJ10gKSApOwogICAgaWYoICEkcm93ICkKICAgICAgewoJJHRoaXMtPlNob3dFcnJvcnMoJHRoaXMtPkxhbmcoJ2Vycm9yX25vc3VjaHJvdycpKTsKCXJldHVybjsKICAgICAgfQogICAgJG5hbWUgPSAkcm93WyduYW1lJ107CiAgICAkZGVzY3JpcHRpb24gPSAkcm93WydkZXNjcmlwdGlvbiddOwogICAgJGV4dGVuc2lvbnMgPSAkcm93WydleHRlbnNpb25zJ107CiAgICAkaWNvbiA9ICRyb3dbJ2ltYWdlJ107CiAgfQoKLy8gaWYgaW4gdGhlIHBhcmFtcyBhcnJheSwgdGhlbiB0aGUgdmFsdWVzIGluIHRoZXJlCi8vIHdpbGwgb3ZlcnJpZGUgdGhvc2UgaW4gdGhlIGRhdGFiYXNlCmlmKCBpc3NldCgkcGFyYW1zWydpbnB1dF9uYW1lJ10pICkKICB7CiAgICAkbmFtZSA9ICRwYXJhbXNbJ2lucHV0X25hbWUnXTsKICB9CmlmKCBpc3NldCgkcGFyYW1zWydpbnB1dF9kZXNjcmlwdGlvbiddKSApCiAgewogICAgJGRlc2NyaXB0aW9uID0gJHBhcmFtc1snaW5wdXRfZGVzY3JpcHRpb24nXTsKICB9CmlmKCBpc3NldCgkcGFyYW1zWydpbnB1dF9leHRlbnNpb25zJ10pICkKICB7CiAgICAkZXh0ZW5zaW9ucyA9ICRwYXJhbXNbJ2lucHV0X2V4dGVuc2lvbnMnXTsKICB9CmlmKCBpc3NldCgkcGFyYW1zWydpbnB1dF9pY29uJ10pICkKICB7CiAgICAkaWNvbiA9ICRwYXJhbXNbJ2lucHV0X2ljb24nXTsKICB9CgppZiggaXNzZXQoJHBhcmFtc1snc3VibWl0J10pICkKICB7CiAgICAvLyB0aGUgZm9ybSB3YXMgc3VibWl0dGVkCiAgICBpZiggdHJpbSgkbmFtZSkgPT0gJycgKQogICAgICB7CgkkdGhpcy0+U2hvd0Vycm9ycygnZXJyb3JfbWlzc2luZ25hbWUnKTsKICAgICAgfQogICAgZWxzZSBpZiggdHJpbSgkZXh0ZW5zaW9ucykgPT0gJycgKQogICAgICB7CgkkdGhpcy0+U2hvd0Vycm9ycygnZXJyb3JfbWlzc2luZ2V4dGVuc2lvbnMnKTsKICAgICAgfQogICAgZWxzZSBpZiggdHJpbSgkaWNvbikgPT0gJycgKQogICAgICB7CgkkdGhpcy0+U2hvd0Vycm9ycygnZXJyb3JfbWlzc2luZ2ljb24nKTsKICAgICAgfQogICAgZWxzZQogICAgICB7CglpZiggaXNzZXQoJHBhcmFtc1sndHlwZWlkJ10pICkKCSAgewoJICAgIC8vIFVwZGF0ZSBhbiBleGlzdGluZyByZWNvcmQKCSAgICAkcSA9ICJVUERBVEUgIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX2ZpbGV0eXBlcwogICAgICAgICAgICAgICAgICAgICBTRVQgbmFtZT0/LGRlc2NyaXB0aW9uPT8sZXh0ZW5zaW9ucz0/LGltYWdlPT8KICAgICAgICAgICAgICAgICAgIFdIRVJFIGlkID0gPyI7CgkgICAgJGRiLT5FeGVjdXRlKCAkcSwgYXJyYXkoIHRyaW0oJG5hbWUpLCB0cmltKCRkZXNjcmlwdGlvbiksIAoJCQkJICAgICB0cmltKCRleHRlbnNpb25zKSwgdHJpbSgkaWNvbiksCgkJCQkgICAgICRwYXJhbXNbJ3R5cGVpZCddICkgKTsKCSAgfQoJZWxzZQoJICB7CgkgICAgLy8KCSAgICAvLyBJbnNlcnQgYSBuZXcgcmVjb3JkCgkgICAgLy8KCgkgICAgLy8gR2V0IGEgbmV3IElECgkgICAgJG5ld2lkID0gJGRiLT5HZW5JRChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX2ZpbGV0eXBlc19zZXEiKTsKCSAgICAKCSAgICAvLyBGaW5kIHRoZSBtYXhpbXVtIHNvcnQgb3JkZXIKCSAgICAkdHEgPSAiU0VMRUNUIG1heChzb3J0b3JkZXIpIGFzIHNvcnRvcmRlciBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc19maWxldHlwZXMiOwoJICAgICRyb3cgPSAkZGItPkdldFJvdyggJHRxICk7CgkgICAgCgkgICAgJHEgPSAiSU5TRVJUIElOVE8gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX2ZpbGV0eXBlcwogICAgICAgICAgICAgIChpZCxzb3J0b3JkZXIsbmFtZSxkZXNjcmlwdGlvbixleHRlbnNpb25zLGltYWdlKSBWQUxVRVMgKD8sPyw/LD8sPyw/KSI7CgkgICAgJGRiLT5FeGVjdXRlKCAkcSwgYXJyYXkoJG5ld2lkLCRyb3dbJ3NvcnRvcmRlciddKzEsCgkJCQkgICAgdHJpbSgkbmFtZSksdHJpbSgkZGVzY3JpcHRpb24pLAoJCQkJICAgIHRyaW0oJGV4dGVuc2lvbnMpLHRyaW0oJGljb24pKSk7CgkgIH0KCgkvLyByZWRpcmVjdCBiYWNrIHRvIHRoZSB0YWIKCSR0aGlzLT5SZWRpcmVjdCgkaWQsJ2RlZmF1bHRhZG1pbicsJHJldHVybmlkLCRwYXJhbXMpOwogICAgICB9CiAgfQoKJHNtYXJ0eSA9JiAkdGhpcy0+c21hcnR5OwoKJHNtYXJ0eS0+YXNzaWduKCdzdGFydGZvcm0nLCR0aGlzLT5DcmVhdGVGb3JtU3RhcnQoJGlkLCRwYXJhbXNbJ2FjdGlvbiddLCRyZXR1cm5pZCwKCQkJCQkJICAgJ211bHRpcGFydC9mb3JtLWRhdGEnKSk7CiRzbWFydHktPmFzc2lnbignZW5kZm9ybScsJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7CiRzbWFydHktPmFzc2lnbigncHJvbXB0X25hbWUnLCR0aGlzLT5MYW5nKCduYW1lJykpOwokc21hcnR5LT5hc3NpZ24oJ3Byb21wdF9kZXNjcmlwdGlvbicsJHRoaXMtPkxhbmcoJ2Rlc2NyaXB0aW9uJykpOwokc21hcnR5LT5hc3NpZ24oJ3Byb21wdF9leHRlbnNpb25zJywkdGhpcy0+TGFuZygnZXh0ZW5zaW9ucycpKTsKJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfaWNvbicsJHRoaXMtPkxhbmcoJ2ljb24nKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfbmFtZScsJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsJ2lucHV0X25hbWUnLCRuYW1lLDQwKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfZGVzY3JpcHRpb24nLCR0aGlzLT5DcmVhdGVUZXh0QXJlYSh0cnVlLCRpZCwkZGVzY3JpcHRpb24sJ2lucHV0X2Rlc2NyaXB0aW9uJykpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0X2V4dGVuc2lvbnMnLCR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCdpbnB1dF9leHRlbnNpb25zJywkZXh0ZW5zaW9ucyw0MCkpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0X2ljb24nLCR0aGlzLT5DcmVhdGVJbnB1dERyb3Bkb3duKCRpZCwnaW5wdXRfaWNvbicsJGljb25saXN0LC0xLCRpY29uKSk7CmlmKCBpc3NldCgkcGFyYW1zWydhY3RpdmVfdGFiJ10pICkKICB7CiAgICAkaGlkZGVuIC49ICR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsJ2FjdGl2ZV90YWInLCRwYXJhbXNbJ2FjdGl2ZV90YWInXSk7CiAgfQokc21hcnR5LT5hc3NpZ24oJ2hpZGRlbicsJGhpZGRlbik7CiRzbWFydHktPmFzc2lnbignc3VibWl0JywkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCdzdWJtaXQnLCR0aGlzLT5MYW5nKCdzdWJtaXQnKSkpOwokc21hcnR5LT5hc3NpZ24oJ2NhbmNlbCcsJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwnY2FuY2VsJywkdGhpcy0+TGFuZygnY2FuY2VsJykpKTsKCmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSgnYWRkZmlsZXR5cGUudHBsJyk7Ci8vIEVPRgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.admin_add_field.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IENHVUZlZWRiYWNrIChjKSAyMDA5IGJ5IFJvYmVydCBDYW1wYmVsbAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIHByb3ZpZGUgdGhlIGFiaWxpdHkgdG8gcmF0ZQojICBhbmQgY29tbWVudCBvbiBzcGVjaWZpYyBwYWdlcyBvciBzcGVjaWZpYyBpdGVtcyBpbiBhIG1vZHVsZS4KIyAgSW5jbHVkZXMgbnVtZXJvdXMgc2VvIGZyaWVuZGx5LCBhbmQgZGVzaWduZXIgZnJpZW5kbHkgY2FwYWJpbGl0aWVzLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbgojIHNlY3Rpb24gdGhhdCB0aGUgc2l0ZSB3YXMgYnVpbHQgd2l0aCBDTVMgTWFkZSBzaW1wbGUuCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojRU5EX0xJQ0VOU0UKaWYoICFpc3NldCgkZ0NtcykgKSBleGl0OwppZiggISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBTaXRlIFByZWZlcmVuY2VzJykgKQogIHsKICAgIGRpZSgncGVybWlzc2lvbiBkZW5pZWQnKTsKICB9CgojCiMgSW5pdGlhbGl6YXRpb24KIwokdGhpcy0+U2V0Q3VycmVudFRhYignZmllbGRzJyk7CiRzdGF0dXMgPSAnJzsKJG1zZyA9ICcnOwokZmllbGQgPSBhcnJheSgnbmFtZSc9PicnLCd0eXBlJz0+J3RleHRpbnB1dCcsJ2F0dHJpYnMnPT4nJywnaW9yZGVyJz0+MSwncHVibGljJz0+MSk7CiRmaWVsZFsnYXR0cmliJ10gPSBhcnJheSgpOwokeWVzbm8gPSBhcnJheSgxPT4kdGhpcy0+TGFuZygneWVzJyksMD0+JHRoaXMtPkxhbmcoJ25vJykpOwokdHlwZXMgPSBhcnJheSgndGV4dGlucHV0Jz0+JHRoaXMtPkxhbmcoJ2ZpZWxkdHlwZV90ZXh0aW5wdXQnKSwKCSAgICAgICAndGV4dGFyZWEnPT4kdGhpcy0+TGFuZygnZmllbGR0eXBlX3RleHRhcmVhJyksCgkgICAgICAgJ2NoZWNrYm94Jz0+JHRoaXMtPkxhbmcoJ2ZpZWxkdHlwZV9jaGVja2JveCcpLAoJICAgICAgICdkcm9wZG93bic9PiR0aGlzLT5MYW5nKCdmaWVsZHR5cGVfZHJvcGRvd24nKSwKCSAgICAgICAnbXVsdGlzZWxlY3QnPT4kdGhpcy0+TGFuZygnZmllbGR0eXBlX211bHRpc2VsZWN0JykpOwoKIwojIFNldHVwCiMKCiMKIyBHZXQgdGhlIGRhdGEKIwppZiggaXNzZXQoJHBhcmFtc1snZmlkJ10pICkKICB7CiAgICAkcXVlcnkgPSAnU0VMRUNUICogRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHNfZmllbGRkZWZzIFdIRVJFIGlkID0gPyc7CiAgICAkdG1wID0gJGRiLT5HZXRSb3coJHF1ZXJ5LGFycmF5KChpbnQpJHBhcmFtc1snZmlkJ10pKTsKICAgIGlmKCAkdG1wICkKICAgICAgewoJJGZpZWxkID0gJHRtcDsKCSRmaWVsZFsnYXR0cmliJ10gPSB1bnNlcmlhbGl6ZSgkZmllbGRbJ2F0dHJpYnMnXSk7CiAgICAgIH0KICB9CgojCiMgUHJvY2VzcyBmb3JtIHZhbHVlcwojCmlmKCBpc3NldCgkcGFyYW1zWydjYW5jZWwnXSkgKQogIHsKICAgICR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCk7CiAgfQppZiggaXNzZXQoJHBhcmFtc1snbmFtZSddKSApCiAgewogICAgJGZpZWxkWyduYW1lJ10gPSB0cmltKCRwYXJhbXNbJ25hbWUnXSk7CiAgfQppZiggaXNzZXQoJHBhcmFtc1sndHlwZSddKSApCiAgewogICAgJGZpZWxkWyd0eXBlJ10gPSAkcGFyYW1zWyd0eXBlJ107CiAgfQppZiggaXNzZXQoJHBhcmFtc1sncHVibGljJ10pICkKICB7CiAgICAkZmllbGRbJ3B1YmxpYyddID0gJHBhcmFtc1sncHVibGljJ107CiAgfQpmb3JlYWNoKCAkcGFyYW1zIGFzICRrZXkgPT4gJHZhbHVlICkKewogIGlmKCAhc3RhcnRzd2l0aCgka2V5LCdhdHRyaWJfJykgKSBjb250aW51ZTsKCiAgJGF0dHJpYiA9IHN1YnN0cigka2V5LDcpOwogICRmaWVsZFsnYXR0cmliJ11bJGF0dHJpYl0gPSAkdmFsdWU7Cn0KaWYoIGlzc2V0KCRwYXJhbXNbJ3N1Ym1pdCddKSApCiAgewogICAgLy8gdmFsaWRhdGUKICAgIGlmKCAhaXNzZXQoJGZpZWxkWyduYW1lJ10pIHx8IGVtcHR5KCRmaWVsZFsnbmFtZSddKSApCiAgICAgIHsKCSRzdGF0dXMgPSAkdGhpcy0+TGFuZygnZXJyb3JfbWlzc2luZ3ZhbHVlJywnbmFtZScpOwogICAgICB9CgogICAgaWYoIGVtcHR5KCRzdGF0dXMpICkKICAgICAgewoJc3dpdGNoKCAkZmllbGRbJ3R5cGUnXSApCgkgIHsKCSAgY2FzZSAndGV4dGlucHV0JzoKCSAgICB7CgkgICAgICBpZiggIWlzc2V0KCRmaWVsZFsnYXR0cmliJ11bJ2xlbmd0aCddKSB8fCAkZmllbGRbJ2F0dHJpYiddWydsZW5ndGgnXSA8PSAwICkKCQl7CgkJICAkc3RhdHVzID0gJHRoaXMtPkxhbmcoJ2Vycm9yX21pc3Npbmd2YWx1ZScsJ2xlbmd0aCcpOwoJCX0KCSAgICAgIGVsc2UgaWYoICFpc3NldCgkZmllbGRbJ2F0dHJpYiddWydtYXhsZW5ndGgnXSkgfHwgJGZpZWxkWydhdHRyaWInXVsnbWF4bGVuZ3RoJ10gPD0gMCApCgkJewoJCSAgJHN0YXR1cyA9ICR0aGlzLT5MYW5nKCdlcnJvcl9taXNzaW5ndmFsdWUnLCdtYXhsZW5ndGgnKTsKCQl9CgkgICAgfQoJICAgIGJyZWFrOwovLyAJICBjYXNlICdjaGVja2JveCc6Ci8vIAkgICAgewovLyAJICAgIH0KLy8gCSAgICBicmVhazsKCSAgY2FzZSAnZHJvcGRvd24nOgoJICBjYXNlICdtdWx0aXNlbGVjdCc6CgkgICAgewoJICAgICAgaWYoICFpc3NldCgkZmllbGRbJ2F0dHJpYiddWydvcHRpb25zJ10pICkKCQl7CgkJICAkc3RhdHVzID0gJHRoaXMtPkxhbmcoJ2Vycm9yX21pc3Npbmd2YWx1ZScsJ29wdGlvbnMnKTsKCQl9CgkgICAgICBlbHNlCgkJewoJCSAgJHRtcCA9IGV4cGxvZGUoIlxuIiwkZmllbGRbJ2F0dHJpYiddWydvcHRpb25zJ10pOwoJCSAgJGNvdW50ID0gMDsKCQkgIGZvcmVhY2goICR0bXAgYXMgJG9uZSApCgkJICAgIHsKCQkgICAgICAkeCA9IHRyaW0oJG9uZSk7CgkJICAgICAgaWYoICFlbXB0eSgkeCkgKSAkY291bnQrKzsKCQkgICAgfQoJCSAgaWYoICRjb3VudCA9PSAwICkKCQkgICAgewoJCSAgICAgICRzdGF0dXMgPSAkdGhpcy0+TGFuZygnZXJyb3JfbWlzc2luZ3ZhbHVlJywnb3B0aW9ucycpOwoJCSAgICB9CgkJfQoJICAgIH0KCSAgICBicmVhazsKCSAgfQogICAgICB9CgogICAgaWYoIGVtcHR5KCRzdGF0dXMpICkKICAgICAgewoJLy8gZG91YmxlIGNoZWNrIGEgZmllbGQgYnkgdGhpcyBuYW1lIGRvZXNuJ3QgYWxyZWFkeSBleGlzdAoJaWYoIGlzc2V0KCRmaWVsZFsnaWQnXSkgJiYgJGZpZWxkWydpZCddID4gMCApCgkgIHsKCSAgICAkcXVlcnkgPSAnU0VMRUNUIGlkIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzX2ZpZWxkZGVmcyBXSEVSRSBuYW1lID0gPyBBTkQgaWQgIT0gPyc7CgkgICAgJHRtcCA9ICRkYi0+R2V0T25lKCRxdWVyeSxhcnJheSgkZmllbGRbJ25hbWUnXSwkZmllbGRbJ2lkJ10pKTsKCSAgICBpZiggJHRtcCApCgkgICAgICB7CgkJJHN0YXR1cyA9ICR0aGlzLT5MYW5nKCdlcnJvcl9uYW1lZXhpc3RzJyk7CgkgICAgICB9CgkgIH0KCWVsc2UKCSAgewoJICAgICRxdWVyeSA9ICdTRUxFQ1QgaWQgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHNfZmllbGRkZWZzIFdIRVJFIG5hbWUgPSA/JzsKCSAgICAkdG1wID0gJGRiLT5HZXRPbmUoJHF1ZXJ5LGFycmF5KCRmaWVsZFsnbmFtZSddKSk7CgkgICAgaWYoICR0bXAgKQoJICAgICAgewoJCSRzdGF0dXMgPSAkdGhpcy0+TGFuZygnZXJyb3JfbmFtZWV4aXN0cycpOwoJICAgICAgfQoJICB9CiAgICAgIH0KCiAgICAvLyBub3cgd2UncmUgcmVhZHkgdG8gc2F2ZS4KICAgIGlmKCBlbXB0eSgkc3RhdHVzKSApCiAgICAgIHsKCSRmaWVsZFsnYXR0cmlicyddID0gc2VyaWFsaXplKCRmaWVsZFsnYXR0cmliJ10pOwoJdW5zZXQoJGZpZWxkWydhdHRyaWInXSk7CgoJJGRiciA9ICcnOwoJaWYoIGlzc2V0KCRmaWVsZFsnaWQnXSkgJiYgJGZpZWxkWydpZCddID4gMCApCgkgIHsKCSAgICAvLyBpdCdzIGFuIHVwZGF0ZQoJICAgICRtc2cgPSAkdGhpcy0+TGFuZygnbXNnX2ZpZWxkX3VwZGF0ZWQnKTsKCSAgICAkcXVlcnkgPSAnVVBEQVRFICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2Fkc19maWVsZGRlZnMKICAgICAgICAgICAgICAgICAgICAgICAgIFNFVCBuYW1lID0gPywgdHlwZSA9ID8sIGF0dHJpYnMgPSA/LCBwdWJsaWMgPSA/CiAgICAgICAgICAgICAgICAgICAgICAgV0hFUkUgaWQgPSA/JzsKCSAgICAkZGJyID0gJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkZmllbGRbJ25hbWUnXSwkZmllbGRbJ3R5cGUnXSwkZmllbGRbJ2F0dHJpYnMnXSwkZmllbGRbJ3B1YmxpYyddLCRmaWVsZFsnaWQnXSkpOwoJICB9CgllbHNlCgkgIHsKCSAgICAkbXNnID0gJHRoaXMtPkxhbmcoJ21zZ19maWVsZF9hZGRlZCcpOwoJICAgICRxdWVyeSA9ICdTRUxFQ1QgTUFYKGlvcmRlcikgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHNfZmllbGRkZWZzJzsKCSAgICAkdG1wID0gJGRiLT5HZXRPbmUoJHF1ZXJ5KTsKCSAgICBpZiAoZW1wdHkoJHRtcCkgfHwgJHRtcCA8IDApIHsKCQkJJGZpZWxkWydpb3JkZXInXSA9IDE7CgkJfSBlbHNlIHsKCQkgICAgJGZpZWxkWydpb3JkZXInXSA9ICR0bXAgKyAxOwoJCX0KCSAgICAvLyBpdCdzIGFuIGluc2VydAoJICAgICRxdWVyeSA9ICdJTlNFUlQgSU5UTyAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHNfZmllbGRkZWZzCiAgICAgICAgICAgICAgICAgICAgICAgKG5hbWUsdHlwZSxhdHRyaWJzLGlvcmRlcixwdWJsaWMpCiAgICAgICAgICAgICAgICAgICAgICBWQUxVRVMgKD8sPyw/LD8sPyknOwoJICAgICRkYnIgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KCRmaWVsZFsnbmFtZSddLCRmaWVsZFsndHlwZSddLCRmaWVsZFsnYXR0cmlicyddLCRmaWVsZFsnaW9yZGVyJ10sCgkJCQkJICAgICAkZmllbGRbJ3B1YmxpYyddKSk7CgoJICB9CgoJaWYoICEkZGJyICkKCSAgewoJICAgICRzdGF0dXMgPSAkdGhpcy0+TGFuZygnZXJyb3JfZGJlcnJvcicpLic8YnIvPicuJGRiLT5zcWwuJzxici8+Jy4kZGItPkVycm9yTXNnKCk7CgkgIH0KICAgICAgfQoKICAgIGlmKCBlbXB0eSgkc3RhdHVzKSApCiAgICAgIHsKCS8vIGFsbCBkb25lCgkkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQpOwogICAgICB9CiAgfQoKIwojIEdpdmUgZXZlcnl0aGluZyB0byBzbWFydHkKIwokc21hcnR5LT5hc3NpZ24oJ2Zvcm1zdGFydCcsJHRoaXMtPkNyZWF0ZUZvcm1TdGFydCgkaWQsJ2FkbWluX2FkZF9maWVsZCcsJHJldHVybmlkLCdwb3N0JywnJyxmYWxzZSwnJywkcGFyYW1zKSk7CiRzbWFydHktPmFzc2lnbignZm9ybWVuZCcsJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7CiRzbWFydHktPmFzc2lnbigneWVzbm8nLCR5ZXNubyk7CiRzbWFydHktPmFzc2lnbignZmxkdHlwZXMnLCR0eXBlcyk7CiRzbWFydHktPmFzc2lnbignZmxkJywkZmllbGQpOwoKIwojIFByb2Nlc3MgdGhlIHRlbXBsYXRlCiMKaWYoICFlbXB0eSgkc3RhdHVzKSApCiAgewogICAgZWNobyAkdGhpcy0+U2hvd0Vycm9ycygkc3RhdHVzKTsKICB9CmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSgnYWRtaW5fYWRkX2ZpZWxkLnRwbCcpOwoKIwojIEVPRgojCj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/action.admin_add_timelimited.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLWZpbGUtc3R5bGU6bGludXg7IHRhYi13aWR0aDoyOyBpbmRlbnQtdGFicy1tb2RlOnQ7IGMtYmFzaWMtb2Zmc2V0OiAyOyAtKi0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojIFZlcnNpb246IDEuMy4wLWJldGExLCBjYWxndXkxMDAwCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOgkvL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KaWYoICFpc3NldCgkZ0NtcykgKSBleGl0KCk7CmlmKCAhJHRoaXMtPkNoZWNrUGVybWlzc2lvbignTWFuYWdlIFVwbG9hZHMnKSAmJiAhJHRoaXMtPkNoZWNrUGVybWlzc2lvbignVXBsb2FkIEZpbGVzIHRvIFVwbG9hZHMnKSkKICB7CiAgICByZXR1cm47CiAgfQoKIwojIEluaXRpYWxpemF0aW9uCiMKJHRoaXMtPlNldEN1cnJlbnRUYWIoJ2ZpbGVzJyk7CmlmKCAhaXNzZXQoJHBhcmFtc1sndXBsb2FkX2lkJ10pICkKICB7CiAgICAkdGhpcy0+U2V0RXJyb3IoJHRoaXMtPkxhbmcoJ2Vycm9yX21pc3NpbmdwYXJhbScpKTsKICAgICR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCk7CiAgfQokdXBsb2FkX2lkID0gKGludCkkcGFyYW1zWyd1cGxvYWRfaWQnXTsKJGVtYWlsID0gJyc7CiRob3VycyA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCd0aW1lbGltaXRlZF9ob3VycycsNzIpOwokZG93bmxvYWRzID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ3RpbWVsaW1pdGVkX2Rvd25sb2FkcycsMCk7CiRzZW5kaXQgPSAwOwokZXJyb3JzID0gYXJyYXkoKTsKCiMKIyBTZXR1cAojCiR1cGxvYWQgPSAkdGhpcy0+R2V0VXBsb2FkRGV0YWlscygkdXBsb2FkX2lkKTsKCiMKIyBIYW5kbGUgZm9ybSBkYXRhCiMKaWYoIGlzc2V0KCRwYXJhbXNbJ2NhbmNlbCddKSApCiAgewoJCSR0aGlzLT5SZWRpcmVjdCgkaWQsJ2FkbWluX21hbmFnZV90aW1lbGltaXRlZCcsJHJldHVybmlkLAoJCQkJCQkJCQkJYXJyYXkoJ3VwbG9hZF9pZCc9PiR1cGxvYWRfaWQpKTsKICB9CmVsc2UgaWYoIGlzc2V0KCRwYXJhbXNbJ3N1Ym1pdCddKSApCiAgewogICAgJGhvdXJzID0gKGludCkkcGFyYW1zWydob3VycyddOwogICAgJGRvd25sb2FkcyA9IChpbnQpJHBhcmFtc1snZG93bmxvYWRzJ107CiAgICAkZW1haWwgPSB0cmltKCRwYXJhbXNbJ2VtYWlsJ10pOwoJCWlmKCBpc3NldCgkcGFyYW1zWydzZW5kaXQnXSkgKQoJCQl7CgkJCQkkc2VuZGl0ID0gKGludCkkcGFyYW1zWydzZW5kaXQnXTsKCQkJfQoKICAgIGlmKCBlbXB0eSgkZW1haWwpICkKICAgICAgewoJCQkJJGVycm9yc1tdID0gJHRoaXMtPkxhbmcoJ2Vycm9yX21pc3NpbmdfaW52YWxpZCcsJHRoaXMtPkxhbmcoJ2VtYWlsX2FkZHJlc3MnKSk7CiAgICAgIH0KICAgIGlmKCAkZG93bmxvYWRzIDwgMCApCiAgICAgIHsKCQkJCSRlcnJvcnNbXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9taXNzaW5nX2ludmFsaWQnLCR0aGlzLT5MYW5nKCdudW1fZG93bmxvYWRzJykpOwogICAgICB9CiAgICBpZiggJGhvdXJzIDwgMCApCiAgICAgIHsKCQkJCSRlcnJvcnNbXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9taXNzaW5nX2ludmFsaWQnLCR0aGlzLT5MYW5nKCdudW1faG91cnMnKSk7CiAgICAgIH0KCiAgICBpZiggZW1wdHkoJGVycm9ycykgKQogICAgICB7CgkJCQkkbm93ID0gJGRiLT5EYlRpbWVTdGFtcCh0aW1lKCkpOwoJCQkJJGV4cGlyZXMgPSBudWxsOwoJCQkJaWYoICRob3VycyA+IDAgKQoJCQkJCXsKCQkJCQkJJGV4cGlyZXMgPSAkZGItPkRiVGltZVN0YW1wKHN0cnRvdGltZSgnKycuJGhvdXJzLicgaG91cnMnKSk7CgkJCQkJfQoJCQkJJHVybGtleSA9IHN1YnN0cihzdHJfc2h1ZmZsZShtZDUodGltZSgpLiR1cGxvYWRfaWQuJHVwbG9hZFsndXBsb2FkX25hbWUnXS4kbm93LiRlbWFpbC4kZXhwaXJlcykpLDAsMTYpOwoJCQkJJHF1ZXJ5ID0gJ0lOU0VSVCBJTlRPICcuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc190aW1lbGltaXQgCiAgICAgICAgICAgICAgICAgICAodXBsb2FkX2lkLGVtYWlsLHVybF9rZXksY3JlYXRlZCxleHBpcmVzLG1heF9kb3dubG9hZHMpCiAgICAgICAgICAgICAgICAgIFZBTFVFUyAoPyw/LD8sJG5vdywkZXhwaXJlcyw/KSI7CgkJCQkkZGJyID0gJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkdXBsb2FkX2lkLCRlbWFpbCwkdXJsa2V5LCRkb3dubG9hZHMpKTsKCQkJCQoJCQkJaWYoICEkZGJyICkKCQkJCQl7CgkJCQkJCSRlcnJvcnNbXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9kYmVycm9yJyk7CgkJCQkJfQoJCQl9CgoJCWlmKCBlbXB0eSgkZXJyb3JzKSAmJiAkc2VuZGl0ICkKCQkJewoJCQkJLy8gbWF5YmUgc2VuZCBhbiBlbWFpbAoJCQkJJGNtc21haWxlciA9JiAkdGhpcy0+R2V0TW9kdWxlSW5zdGFuY2UoJ0NNU01haWxlcicpOwoJCQkJaWYoICRjbXNtYWlsZXIgKQoJCQkJCXsKCQkJCQkJJHBhZ2VpZCA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdkZWZhdWx0X3NlbmRmaWxlcGFnZScpOwoJCQkJCQlpZiggJHBhZ2VpZCA8PSAwICkKCQkJCQkJCXsKCQkJCQkJCQkkY29udGVudG9wcyA9JiAkZ0Ntcy0+R2V0Q29udGVudE9wZXJhdGlvbnMoKTsKCQkJCQkJCQkkcGFnZWlkID0gJGNvbnRlbnRvcHMtPkdldERlZmF1bHRDb250ZW50KCk7CgkJCQkJCQl9CgkJCQkJCQoJCQkJCQkkdG1wID0gJHRoaXMtPkdldFVwbG9hZERldGFpbHMoJHVwbG9hZF9pZCwkcGFnZWlkKTsKCQkJCQkJJHRtcFsnZG93bmxvYWRfdXJsJ10gPSAkdGhpcy0+Q3JlYXRlVVJMKCRpZCwnZ2V0ZmlsZScsJHBhZ2VpZCwKCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQlhcnJheSgndXJsX2tleSc9PiR1cmxrZXkpLAoJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCWZhbHNlLAoJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCSR0aGlzLT5fZ2V0VGltZUxpbWl0ZWRVUkwoJHVybGtleSkpOwoKCQkJCQkJJHVwbG9hZF9pbmYgPSBuZXcgU3RkQ2xhc3MoKTsKCQkJCQkJZm9yZWFjaCggJHRtcCBhcyAka2V5ID0+ICR2YWx1ZSApCgkJCQkJCQl7CgkJCQkJCQkJaWYoIHN0YXJ0c3dpdGgoJGtleSwndXBsb2FkXycpICkKCQkJCQkJCQkJewoJCQkJCQkJCQkJJGtleSA9IHN1YnN0cigka2V5LDcpOwoJCQkJCQkJCQl9CgkJCQkJCQkJaWYoICFlbXB0eSgkdmFsdWUpICkKCQkJCQkJCQkJewoJCQkJCQkJCQkJJHVwbG9hZF9pbmZvLT4ka2V5ID0gJHZhbHVlOwoJCQkJCQkJCQl9CgkJCQkJCQl9CgkJCQkJCSRzbWFydHktPmFzc2lnbignZW50cnknLCR1cGxvYWRfaW5mbyk7CgkJCQkJCSRzbWFydHktPmFzc2lnbignbm90ZXMnLCcnKTsKCQkJCQkJaWYoICRkb3dubG9hZHMgKQoJCQkJCQkJewoJCQkJCQkJCSRzbWFydHktPmFzc2lnbignZG93bmxvYWRzJywkZG93bmxvYWRzKTsKCQkJCQkJCX0KCQkJCQkJaWYoICRob3VycyApCgkJCQkJCQl7CgkJCQkJCQkJJHNtYXJ0eS0+YXNzaWduKCdob3VycycsJGhvdXJzKTsKCQkJCQkJCX0KCgkJCQkJCSRzdWJqZWN0X3RwbCA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCd0aW1lbGltaXRlZF9zdWJqZWN0JywKCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJJHRoaXMtPkxhbmcoJ2RmbHRfdGltZWxpbWl0ZWRfc3ViamVjdCcpKTsKCQkJCQkJJHN1YmplY3QgPSAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlRnJvbURhdGEoJHN1YmplY3RfdHBsKTsKCgkJCQkJCSRjbXNtYWlsZXItPnJlc2V0KCk7CgkJCQkJCSRjbXNtYWlsZXItPlNldFN1YmplY3QoJHN1YmplY3QpOwoJCQkJCQkkY21zbWFpbGVyLT5Jc0hUTUwodHJ1ZSk7CgkJCQkJCSRjbXNtYWlsZXItPkFkZEFkZHJlc3MoJGVtYWlsKTsKCQkJCQkJJGJvZHkgPSAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlRnJvbURhdGFiYXNlKCd1cGxvYWRfc2VuZGZpbGVycHQnKTsKCQkJCQkJJGNtc21haWxlci0+U2V0Qm9keSgkYm9keSk7CgkJCQkJCSRjbXNtYWlsZXItPlNlbmQoKTsKCQkJCQl9CgkJCX0KCQkJCQoKCQlpZiggZW1wdHkoJGVycm9ycykgKQoJCQl7CgkJCQkvLyBkb25lLgoJCQkJJHRoaXMtPlNldE1lc3NhZ2UoJHRoaXMtPkxhbmcoJ3RpbWVfbGltaXRlZF9rZXlfYWRkZWQnKSk7CgkJCQkkdGhpcy0+UmVkaXJlY3QoJGlkLCdhZG1pbl9tYW5hZ2VfdGltZWxpbWl0ZWQnLCRyZXR1cm5pZCwKCQkJCQkJCQkJCQkJYXJyYXkoJ3VwbG9hZF9pZCc9PiR1cGxvYWRfaWQpKTsKCQkJfQogIH0KCiMKIyBHaXZlIEV2ZXJ5dGhpbmcgdG8gU21hcnR5CiMKaWYoIGNvdW50KCRlcnJvcnMpICkKICB7CiAgICBlY2hvICR0aGlzLT5TaG93RXJyb3JzKCRlcnJvcnMpOwogIH0KJHNtYXJ0eS0+YXNzaWduKCdmb3Jtc3RhcnQnLCR0aGlzLT5DR0NyZWF0ZUZvcm1TdGFydCgkaWQsJ2FkbWluX2FkZF90aW1lbGltaXRlZCcsJHJldHVybmlkLAoJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCSBhcnJheSgndXBsb2FkX2lkJz0+JHVwbG9hZF9pZCkpKTsKJHNtYXJ0eS0+YXNzaWduKCdmb3JtZW5kJywkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsKJHNtYXJ0eS0+YXNzaWduKCd1cGxvYWQnLCR1cGxvYWQpOwokc21hcnR5LT5hc3NpZ24oJ2VtYWlsJywkZW1haWwpOwokc21hcnR5LT5hc3NpZ24oJ2hvdXJzJywkaG91cnMpOwokc21hcnR5LT5hc3NpZ24oJ2Rvd25sb2FkcycsJGRvd25sb2Fkcyk7CgojCiMgRGlzcGxheSB0aGUgdGVtcGxhdGUKIwplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ2FkbWluX2FkZF90aW1lbGltaXRlZC50cGwnKTsKCiMKIyBFT0YKIwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.admin_copycategory.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLXNldC1zdHlsZTpsaW51eDsgdGFiLXdpZHRoOjI7IGluZGVudC10YWJzLW1vZGU6dDsgYy1iYXNpYy1vZmZzZXQ6IDI7IC0qLQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogVXBsb2FkcyAtPSBhbGxvdyB1c2VycyB0byB1cGxvYWQgc3R1ZmYsIGEgcHNldWRvIGZpbGUgbWFuYWdlciIgbW9kdWxlCiMgQXV0aG9yOiBSb2JlcnQgQ2FtcGJlbGwgPHJvYkB0ZWNoY29tLmR5bmRucy5vcmc+CiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOgkvL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KaWYoICFpc3NldCgkZ0NtcykgKSBleGl0OwppZiAoISR0aGlzLT5DaGVja1Blcm1pc3Npb24gKCdNYW5hZ2UgVXBsb2FkcycpKSBleGl0OwoKLy8KLy8gaW5pdGlhbGl6ZQovLwokdGhpcy0+U2V0Q3VycmVudFRhYignY2F0ZWdvcmllcycpOwokZGVzdF9jYXRuYW1lID0gJyc7CiRkZXN0X2NhdGRlc2MgPSAnJzsKJGRlc3RfY2F0cGF0aCA9ICcnOwokb3JpZ19jYXRfaWQgPSAnJzsKJGNvbmZpZyA9JiAkZ0Ntcy0+R2V0Q29uZmlnKCk7CiRzcmNkaXIgPSAnJzsKJGRlc3RkaXIgPSAnJzsKJGNhdGlkID0gJyc7CiRhdXRob3IgPSAkX1NFU1NJT05bJ2Ntc19hZG1pbl91c2VybmFtZSddOwokY29weWZpbGVzID0gMDsKCi8vCi8vIHNldHVwCi8vCmlmKCAhaXNzZXQoJHBhcmFtc1snY2F0ZWdvcnlfaWQnXSkgKQoJewoJCSR0aGlzLT5TZXRFcnJvcigkdGhpcy0+TGFuZygnZXJyb3JfbWlzc2luZ3BhcmFtJykpOwoJCSR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCk7Cgl9CiRjYXRlZ29yeV9pZCA9IChpbnQpJHBhcmFtc1snY2F0ZWdvcnlfaWQnXTsKJGNhdGVnb3J5ID0gVXBsb2Fkczo6bG9hZF9jYXRlZ29yeV9ieV9pZCgkY2F0ZWdvcnlfaWQpOwppZiggISRjYXRlZ29yeSApCgl7CgkJJHRoaXMtPlNldEVycm9yKCR0aGlzLT5MYW5nKCdlcnJvcl9taXNzaW5ncGFyYW0nKSk7CgkJJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkKTsKCX0KCi8vCi8vIGhhbmRsZSBmb3JtIGRhdGEKLy8KaWYoIGlzc2V0KCRwYXJhbXNbJ2NhbmNlbCddKSApCgl7CgkJJHRoaXMtPlNldE1lc3NhZ2UoJHRoaXMtPkxhbmcoJ29wZXJhdGlvbl9jYW5jZWxsZWQnKSk7CgkJJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkKTsKCX0KZWxzZSBpZiggaXNzZXQoJHBhcmFtc1snc3VibWl0J10pICkKCXsKCQkvLyBzdWJtaXQgcHJlc3NlZC4KCQkKCQkvLyBnZXQgdGhlIHBhcmFtZXRlcnMKCQlpZiggaXNzZXQoJHBhcmFtc1snY2F0ZWdvcnlfbmFtZSddKSApCgkJCXsKCQkJCSRkZXN0X2NhdG5hbWUgPSB0cmltKCRwYXJhbXNbJ2NhdGVnb3J5X25hbWUnXSk7CgkJCX0KCQlpZiggaXNzZXQoJHBhcmFtc1snY2F0ZWdvcnlfZGVzYyddKSApCgkJCXsKCQkJCSRkZXN0X2NhdGRlc2MgPSB0cmltKCRwYXJhbXNbJ2NhdGVnb3J5X2Rlc2MnXSk7CgkJCX0KCQlpZiggaXNzZXQoJHBhcmFtc1snY2F0ZWdvcnlfcGF0aCddKSApCgkJCXsKCQkJCSRkZXN0X2NhdHBhdGggPSB0cmltKCRwYXJhbXNbJ2NhdGVnb3J5X3BhdGgnXSk7CgkJCX0KCQkkY29weWZpbGVzID0gJHBhcmFtc1snY29weWZpbGVzJ107CgoJCVVwbG9hZHM6OmxvYWRfYWRtaW4oKTsKCQkkZXJyb3IgPSBfdXBsb2Fkc19Db3B5Q2F0ZWdvcnkoJHRoaXMsJGNhdGVnb3J5X2lkLAoJCQkJCQkJCQkJCQkJCQkJCSAkZGVzdF9jYXRuYW1lLAoJCQkJCQkJCQkJCQkJCQkJCSAkZGVzdF9jYXRwYXRoLAoJCQkJCQkJCQkJCQkJCQkJCSAkZGVzdF9jYXRkZXNjLAoJCQkJCQkJCQkJCQkJCQkJCSB0cnVlLCB0cnVlKTsKCQlpZiggZW1wdHkoJGVycm9yKSApCgkJCXsKCQkJCSR0aGlzLT5TZXRNZXNzYWdlKCR0aGlzLT5MYW5nKCdjYXRlZ29yeV9jb3BpZWQnKSk7CgkJCQkkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQpOwoJCQl9CgkJCgkJZWNobyAkdGhpcy0+U2hvd0Vycm9ycygkZXJyb3IpOwkJCQoJfSAvLyBvbiBzdWJtaXQKCi8vCi8vIGdpdmUgZXZlcnl0aGluZyB0byBzbWFydHkKLy8KJHNtYXJ0eS0+YXNzaWduKCdjYXRlZ29yeScsJGNhdGVnb3J5KTsKJHNtYXJ0eS0+YXNzaWduKCdmb3Jtc3RhcnQnLCR0aGlzLT5DR0NyZWF0ZUZvcm1TdGFydCgkaWQsJ2FkbWluX2NvcHljYXRlZ29yeScsJHJldHVybmlkLCRwYXJhbXMpKTsKJHNtYXJ0eS0+YXNzaWduKCdmb3JtZW5kJywkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsKCi8vCi8vIGRpc3BsYXkgdGhlIHRlbXBsYXRlCi8vCmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSgnYWRtaW5fY29weWNhdGVnb3J5LnRwbCcpOwoKIwojIEVPRgojCj8+]]></data>
	</file>
	<file>
	  <filename>/action.admin_del_field.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgPSBhbGxvdyB1c2VycyB0byB1cGxvYWQgc3R1ZmYsIGEgcHNldWRvIGZpbGUgbWFuYWdlciBtb2R1bGUKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6CS8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQppZiggIWlzc2V0KCRnQ21zKSApIGV4aXQ7CmlmKCAhJHRoaXMtPkNoZWNrUGVybWlzc2lvbignTW9kaWZ5IFNpdGUgUHJlZmVyZW5jZXMnKSApCiAgewogICAgZGllKCdwZXJtaXNzaW9uIGRlbmllZCcpOwogIH0KCiMKIyBTZXR1cAojCiR0aGlzLT5TZXRDdXJyZW50VGFiKCdmaWVsZHMnKTsKaWYoICFpc3NldCgkcGFyYW1zWydmaWQnXSkgKQogIHsKICAgICR0aGlzLT5TZXRFcnJvcigkdGhpcy0+TGFuZygnZXJyb3JfbWlzc2luZ3BhcmFtJykpOwogICAgJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkKTsKICB9CgokcXVlcnkgPSAnU0VMRUNUIGlvcmRlciBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2Fkc19maWVsZGRlZnMgV0hFUkUgaWQgPSA/JzsKJGlvcmRlciA9ICRkYi0+R2V0T25lKCRxdWVyeSxhcnJheSgoaW50KSRwYXJhbXNbJ2ZpZCddKSk7CmlmKCAkaW9yZGVyICkKICB7CiAgICAkcXVlcnkgPSAnREVMRVRFIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzX2ZpZWxkdmFscyBXSEVSRSBmbGRfaWQgPSA/JzsKICAgICRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkoKGludCkkcGFyYW1zWydmaWQnXSkpOwoKICAgICRxdWVyeSA9ICdERUxFVEUgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHNfZmllbGRkZWZzIFdIRVJFIGlkID0gPyc7CiAgICAkZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KChpbnQpJHBhcmFtc1snZmlkJ10pKTsKCiAgICAkcXVlcnkgPSAnVVBEQVRFICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2Fkc19maWVsZGRlZnMgU0VUIGlvcmRlcj1pb3JkZXItMSBXSEVSRSBpb3JkZXIgPiA/JzsKICAgICRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkoJGlvcmRlcikpOwogIH0KCgokdGhpcy0+U2V0TWVzc2FnZSgkdGhpcy0+TGFuZygnbXNnX2ZpZWxkX2RlbGV0ZWQnKSk7CiR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCk7CgojCiMgRU9GCiMKPz4K]]></data>
	</file>
	<file>
	  <filename>/action.admin_del_timelimited.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLWZpbGUtc3R5bGU6bGludXg7IHRhYi13aWR0aDoyOyBpbmRlbnQtdGFicy1tb2RlOnQ7IGMtYmFzaWMtb2Zmc2V0OiAyOyAtKi0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojIFZlcnNpb246IDEuMy4wLWJldGExLCBjYWxndXkxMDAwCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOgkvL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KaWYoICFpc3NldCgkZ0NtcykgKSBleGl0KCk7CmlmKCAhJHRoaXMtPkNoZWNrUGVybWlzc2lvbignTWFuYWdlIFVwbG9hZHMnKSAmJiAhJHRoaXMtPkNoZWNrUGVybWlzc2lvbignVXBsb2FkIEZpbGVzIHRvIFVwbG9hZHMnKSkKICB7CiAgICByZXR1cm47CiAgfQoKJHRoaXMtPlNldEN1cnJlbnRUYWIoJ2ZpbGVzJyk7CmlmKCAhaXNzZXQoJHBhcmFtc1sndXBsb2FkX2lkJ10pIHx8ICFpc3NldCgkcGFyYW1zWyd0bF9pZCddKSApCiAgewogICAgJHRoaXMtPlNldEVycm9yKCR0aGlzLT5MYW5nKCdlcnJvcl9taXNzaW5ncGFyYW0nKSk7CiAgICAkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQpOwogIH0KJHRsX2lkID0gKGludCkkcGFyYW1zWyd0bF9pZCddOwokdXBsb2FkX2lkID0gKGludCkkcGFyYW1zWyd1cGxvYWRfaWQnXTsKCiRxdWVyeSA9ICdERUxFVEUgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHNfdGltZWxpbWl0IFdIRVJFIHVwbG9hZF9pZCA9ID8gQU5EIHRsa2V5X2lkID0gPyc7CiRkYnIgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KCR1cGxvYWRfaWQsJHRsX2lkKSk7CmlmKCAhJGRiciApCiAgewogICAgZWNobyAkZGItPnNxbC4nPGJyLz4nLiRkYi0+RXJyb3JNc2coKS4nPGJyLz4nOwogICAgZXhpdCgpOwogIH0KCiR0aGlzLT5SZWRpcmVjdCgkaWQsJ2FkbWluX21hbmFnZV90aW1lbGltaXRlZCcsJHJldHVybmlkLGFycmF5KCd1cGxvYWRfaWQnPT4kdXBsb2FkX2lkKSk7CgojCiMgRU9GCiMKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.admin_manage_timelimited.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLWZpbGUtc3R5bGU6bGludXg7IHRhYi13aWR0aDoyOyBpbmRlbnQtdGFicy1tb2RlOnQ7IGMtYmFzaWMtb2Zmc2V0OiAyOyAtKi0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojIFZlcnNpb246IDEuMy4wLWJldGExLCBjYWxndXkxMDAwCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOgkvL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KaWYoICFpc3NldCgkZ0NtcykgKSBleGl0KCk7CmlmKCAhJHRoaXMtPkNoZWNrUGVybWlzc2lvbignTWFuYWdlIFVwbG9hZHMnKSAmJiAhJHRoaXMtPkNoZWNrUGVybWlzc2lvbignVXBsb2FkIEZpbGVzIHRvIFVwbG9hZHMnKSkKICB7CiAgICByZXR1cm47CiAgfQoKJHRoaXMtPlNldEN1cnJlbnRUYWIoJ2ZpbGVzJyk7CmlmKCAhaXNzZXQoJHBhcmFtc1sndXBsb2FkX2lkJ10pICkKCXsKICAgICR0aGlzLT5TZXRFcnJvcigkdGhpcy0+TGFuZygnZXJyb3JfbWlzc2luZ3BhcmFtJykpOwogICAgJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkKTsKCX0KCi8vIGF1dG8gZGVsZXRlIGVudHJpZXMKJG5ob3VycyA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCd0aW1lbGltaXRlZF9hdXRvZGVsZXRlJywwKTsKaWYoICRuaG91cnMgPiAwICkKCXsKCQkkdGltZSA9IHN0cnRvdGltZSgnLSAkbmhvdXJzIGhvdXJzJyk7CgkJJHF1ZXJ5ID0gJ0RFTEVURSBGUk9NICcuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc19kb3dubG9hZHMgCiAgICAgICAgICAgICAgIFdIRVJFIGV4cGlyZXMgPCAkdGltZSI7CgkJJGRiLT5FeGVjdXRlKCRxdWVyeSk7Cgl9CgokdXBsb2FkID0gJHRoaXMtPkdldFVwbG9hZERldGFpbHMoJHBhcmFtc1sndXBsb2FkX2lkJ10pOwokc21hcnR5LT5hc3NpZ24oJ3VwbG9hZCcsJHVwbG9hZCk7CiRzbWFydHktPmFzc2lnbignYWRka2V5X2xpbmsnLAoJCQkJCQkJCSR0aGlzLT5DcmVhdGVJbWFnZUxpbmsoJGlkLCdhZG1pbl9hZGRfdGltZWxpbWl0ZWQnLCRyZXR1cm5pZCwKCQkJCQkJCQkJCQkJCQkJCQkJCSAkdGhpcy0+TGFuZygnYWRkX3RpbWVsaW1pdGVkX2tleScpLAoJCQkJCQkJCQkJCQkJCQkJCQkJICdpY29ucy9zeXN0ZW0vbmV3b2JqZWN0LmdpZicsCgkJCQkJCQkJCQkJCQkJCQkJCQkgJHBhcmFtcywnJywnJyxmYWxzZSkpOwoKJG5vdyA9ICRkYi0+RGJUaW1lU3RhbXAodGltZSgpKTsKJHF1ZXJ5ID0gJ1NFTEVDVCAqIEZST00gJy5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX3RpbWVsaW1pdAogICAgICAgICAgV0hFUkUgdXBsb2FkX2lkID0gPwogICAgICAgICAgQU5EIGV4cGlyZXMgPiAkbm93IjsKJHRkYXRhID0gJGRiLT5HZXRBcnJheSgkcXVlcnksYXJyYXkoJHBhcmFtc1sndXBsb2FkX2lkJ10pKTsKJGRhdGEgPSBhcnJheSgpOwppZiggJHRkYXRhICkKCXsKCQlmb3IoICRpID0gMDsgJGkgPCBjb3VudCgkdGRhdGEpOyAkaSsrICkKCQkJewoJCQkJJHJlYyA9JiAkdGRhdGFbJGldOwoJCQkJaWYoIGlzX251bGwoJHJlY1sndXJsX2tleSddKSApIGNvbnRpbnVlOwoKCQkJCSRxMiA9ICdTRUxFQ1QgQ09VTlQoZmlsZV9pZCkgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHNfZG93bmxvYWRzCiAgICAgICAgICAgICAgICBXSEVSRSBmaWxlX2lkID0gPyBBTkQgdXJsX2tleSA9ID8nOwoJCQkJJHJlY1snZG93bmxvYWRzJ10gPSAkZGItPkdldE9uZSgkcTIsYXJyYXkoJHJlY1sndXBsb2FkX2lkJ10sJHJlY1sndXJsX2tleSddKSk7CgkJCQkkcmVjWydkb3dubG9hZF91cmwnXSA9ICR0aGlzLT5DcmVhdGVVUkwoJGlkLCdnZXRmaWxlJywkcmV0dXJuaWQsCgkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCWFycmF5KCd1cmxfa2V5Jz0+JHJlY1sndXJsX2tleSddKSwKCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJZmFsc2UsCgkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCSR0aGlzLT5fZ2V0VGltZUxpbWl0ZWRVUkwoJHJlY1sndXJsX2tleSddKSk7CgkJCQkkcmVjWydkZWxldGVfbGluayddID0gJHRoaXMtPkNyZWF0ZUltYWdlTGluaygkaWQsJ2FkbWluX2RlbF90aW1lbGltaXRlZCcsCgkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJICRyZXR1cm5pZCwKCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkgJHRoaXMtPkxhbmcoJ2RlbGV0ZScpLAoJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCSAnaWNvbnMvc3lzdGVtL2RlbGV0ZS5naWYnLAoJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCSBhcnJheSgndXBsb2FkX2lkJz0+JHBhcmFtc1sndXBsb2FkX2lkJ10sCgkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJICd0bF9pZCc9PiRyZWNbJ3Rsa2V5X2lkJ10pKTsKCgkJCQkkZGF0YVtdID0gJHJlYzsKCQkJfQoKCQlpZiggJGRhdGEgKQoJCQl7CgkJCQkkc21hcnR5LT5hc3NpZ24oJ2RhdGEnLCRkYXRhKTsKCQkJfQoJfQoKJHNtYXJ0eS0+YXNzaWduKCdiYWNrX2xpbmsnLCR0aGlzLT5DcmVhdGVJbWFnZUxpbmsoJGlkLCdkZWZhdWx0YWRtaW4nLCRyZXR1cm5pZCwKCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCSAkdGhpcy0+TGFuZygnbGJsX2JhY2snKSwKCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCSAnaWNvbnMvc3lzdGVtL2JhY2suZ2lmJywKCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCSBhcnJheSgpLCAnJywgJycsIGZhbHNlKSk7CgplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ2FkbWluX21hbmFnZV90aW1lbGltaXRlZC50cGwnKTsKIwojIEVPRgojCj8+]]></data>
	</file>
	<file>
	  <filename>/action.admin_multicategory.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLXNldC1zdHlsZTpsaW51eDsgdGFiLXdpZHRoOjI7IGluZGVudC10YWJzLW1vZGU6dDsgYy1iYXNpYy1vZmZzZXQ6IDI7IC0qLQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogVXBsb2FkcyAtPSBhbGxvdyB1c2VycyB0byB1cGxvYWQgc3R1ZmYsIGEgcHNldWRvIGZpbGUgbWFuYWdlciIgbW9kdWxlCiMgQXV0aG9yOiBSb2JlcnQgQ2FtcGJlbGwgPHJvYkB0ZWNoY29tLmR5bmRucy5vcmc+CiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOgkvL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KaWYoICFpc3NldCgkZ0NtcykgKSBleGl0OwppZiAoISR0aGlzLT5DaGVja1Blcm1pc3Npb24gKCdNYW5hZ2UgVXBsb2FkcycpKSBleGl0OwoKLy8KLy8gaW5pdGlhbGl6YXRpb24KLy8KJHRoaXMtPlNldEN1cnJlbnRUYWIoJ2NhdGVnb3JpZXMnKTsKaWYoIGlzc2V0KCRwYXJhbXNbJ2NhbmNlbCddKSApCgl7CgkJJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkKTsKCX0KaWYoICFpc3NldCgkcGFyYW1zWydjYXRfbXVsdGlzZWxlY3QnXSkgJiYgIWlzc2V0KCRwYXJhbXNbJ2J1bGtjb3B5X3N1Ym1pdCddKSApCgl7CgkJJHRoaXMtPlNldEVycm9yKCR0aGlzLT5MYW5nKCdlcnJvcl9ub3RoaW5nX3NlbGVjdGVkJykpOwoJCSR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCk7Cgl9Cgpzd2l0Y2goICRwYXJhbXNbJ211bHRpYWN0aW9uJ10gKQoJewoJY2FzZSAnZGVsZXRlJzoKCQlmb3JlYWNoKCAkcGFyYW1zWydjYXRfbXVsdGlzZWxlY3QnXSBhcyAkb25lY2F0ZWdvcnkgKQoJCQl7CgkJCQkkbXNnID0gJHRoaXMtPl9BZG1pbkRvRGVsZXRlQ2F0ZWdvcnkoJG9uZWNhdGVnb3J5KTsKCQkJCWlmKCAkbXNnICkKCQkJCQl7CgkJCQkJCSR0aGlzLT5TZXRFcnJvcigkbXNnKTsKCQkJCQkJJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkKTsKCQkJCQl9CgkJCX0KCQlicmVhazsKCgljYXNlICdjb3B5JzoKCQl7CgkJCWlmKCBpc3NldCgkcGFyYW1zWydidWxrY29weV9zdWJtaXQnXSkgKQoJCQkJewoJCQkJCS8vIGRvIGRhdGEgdmFsaWRhdGlvbgoJCQkJCSRlcnJvciA9ICcnOwoJCQkJCWlmKCAhaXNzZXQoJHBhcmFtc1snY29weWNhdGVnb3J5J10pICkKCQkJCQkJewoJCQkJCQkJJGVycm9yID0gJHRoaXMtPkxhbmcoJ2Vycm9yX21pc3NpbmdfaW52YWxpZCcsJ2NvcHljYXRlZ29yeScpOwoJCQkJCQl9CgoJCQkJCWlmKCBlbXB0eSgkZXJyb3IpICkKCQkJCQkJewoJCQkJCQkJZm9yZWFjaCggJHBhcmFtc1snY29weWNhdGVnb3J5J10gYXMgJGNhdGVnb3J5X2lkID0+ICYkb25lY2F0ICkKCQkJCQkJCQl7CgkJCQkJCQkJCSRvbmVjYXRbJ25hbWUnXSA9IHRyaW0oJG9uZWNhdFsnbmFtZSddKTsKCQkJCQkJCQkJJG9uZWNhdFsncGF0aCddID0gdHJpbSgkb25lY2F0WydwYXRoJ10pOwoKCQkJCQkJCQkJVXBsb2Fkczo6bG9hZF9hZG1pbigpOwoJCQkJCQkJCQkkZXJyb3IgPSBfdXBsb2Fkc19Db3B5Q2F0ZWdvcnkoJHRoaXMsJGNhdGVnb3J5X2lkLAoJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkgJG9uZWNhdFsnbmFtZSddLAoJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkgJG9uZWNhdFsncGF0aCddLAoJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkgJycsCgkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCSAkb25lY2F0Wydkb2ZpbGVzJ10sCgkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCSBmYWxzZSk7CgkJCQkJCQkJCWlmKCAkZXJyb3IgKSBicmVhazsKCQkJCQkJCQl9CgkJCQkJCX0KCgkJCQkJaWYoICFlbXB0eSgkZXJyb3IpICkKCQkJCQkJewoJCQkJCQkJJHRoaXMtPlNldEVycm9yKCRlcnJvcik7CgkJCQkJCX0KCgkJCQkJJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkKTsKCQkJCQkKCQkJCX0gLy8gc3VibWl0CgoJCQkkcXVlcnkgPSAnU0VMRUNUICogRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHNfY2F0ZWdvcmllcwogICAgICAgICAgICAgICAgIFdIRVJFIHVwbG9hZF9jYXRlZ29yeV9pZCBJTiAoJy5pbXBsb2RlKCcsJywkcGFyYW1zWydjYXRfbXVsdGlzZWxlY3QnXSkuJyknOwoJCQkkdG1wID0gJGRiLT5HZXRBcnJheSgkcXVlcnkpOwoJCQkkc21hcnR5LT5hc3NpZ24oJ2NhdGVnb3JpZXMnLCR0bXApOwoJCQkkcGFybXMgPSBhcnJheSgpOwoJCQkkcGFybXNbJ211bHRpYWN0aW9uJ10gPSAkcGFyYW1zWydtdWx0aWFjdGlvbiddOwoJCQlpZiggaXNzZXQoJHBhcmFtc1snY2F0X211bHRpc2VsZWN0J10pICkKCQkJCSRwYXJtc1snY2F0ZWdvcmllcyddID0gIGltcGxvZGUoJywnLCRwYXJhbXNbJ2NhdF9tdWx0aXNlbGVjdCddKTsKCQkJJHNtYXJ0eS0+YXNzaWduKCdjYXRlZ29yeV9pZHMnLCRwYXJhbXNbJ2NhdF9tdWx0aXNlbGVjdCddKTsKCQkJJHNtYXJ0eS0+YXNzaWduKCdmb3Jtc3RhcnQnLCR0aGlzLT5DR0NyZWF0ZUZvcm1TdGFydCgkaWQsJ2FkbWluX211bHRpY2F0ZWdvcnknLCRyZXR1cm5pZCwkcGFybXMpKTsKCQkJJHNtYXJ0eS0+YXNzaWduKCdmb3JtZW5kJywkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsKCQkJZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCdhZG1pbl9jYXRfYnVsa2NvcHkudHBsJyk7CgkJCXJldHVybjsKCQl9CgkJYnJlYWs7CgoJZGVmYXVsdDoKCQkkdGhpcy0+U2V0RXJyb3IoJHRoaXMtPkxhbmcoJ2Vycm9yX21pc3NpbmdfaW52YWxpZCcsJ2NhdGVnb3J5X2lkJykpOwoJCSR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCk7Cgl9CgoKJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkKTsKCiMKIyBFT0YKIwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.admin_order_field.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IENHVUZlZWRiYWNrIChjKSAyMDA5IGJ5IFJvYmVydCBDYW1wYmVsbCAKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBwcm92aWRlIHRoZSBhYmlsaXR5IHRvIHJhdGUKIyAgYW5kIGNvbW1lbnQgb24gc3BlY2lmaWMgcGFnZXMgb3Igc3BlY2lmaWMgaXRlbXMgaW4gYSBtb2R1bGUuCiMgIEluY2x1ZGVzIG51bWVyb3VzIHNlbyBmcmllbmRseSwgYW5kIGRlc2lnbmVyIGZyaWVuZGx5IGNhcGFiaWxpdGllcy4KIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQppZiggIWlzc2V0KCRnQ21zKSApIGV4aXQ7CmlmKCAhJHRoaXMtPkNoZWNrUGVybWlzc2lvbignTW9kaWZ5IFNpdGUgUHJlZmVyZW5jZXMnKSApCiAgewogICAgZGllKCdwZXJtaXNzaW9uIGRlbmllZCcpOwogIH0KCiMKIyBTZXR1cAojCiR0aGlzLT5TZXRDdXJyZW50VGFiKCdmaWVsZHMnKTsKaWYoICFpc3NldCgkcGFyYW1zWydmaWQnXSkgfHwgIWlzc2V0KCRwYXJhbXNbJ2RpciddKSB8fCAhaXNzZXQoJHBhcmFtc1snY3VyJ10pICkKICB7CiAgICAkdGhpcy0+U2V0RXJyb3IoJHRoaXMtPkxhbmcoJ2Vycm9yX21pc3NpbmdwYXJhbScpKTsKICAgICR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCk7CiAgfQoKJGZpZCA9IChpbnQpJHBhcmFtc1snZmlkJ107CiRkaXIgPSBzdHJ0b2xvd2VyKHRyaW0oJHBhcmFtc1snZGlyJ10pKTsKJGN1cm9yZGVyID0gKGludCkkcGFyYW1zWydjdXInXTsKc3dpdGNoKCRkaXIpCiAgewogIGNhc2UgJ3VwJzoKICAgIC8vIHN3YXAgb3JkZXIgaWQgd2l0aCBwcmV2aW91cyBvbmUKICAgIHsKICAgICAgJHF1ZXJ5ID0gJ1NFTEVDVCBpZCBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2Fkc19maWVsZGRlZnMgV0hFUkUgaW9yZGVyID0gPyc7CiAgICAgICRwcmV2X2lkID0gJGRiLT5HZXRPbmUoJHF1ZXJ5LGFycmF5KCRjdXJvcmRlciAtIDEpKTsKICAgICAgaWYoICRwcmV2X2lkICkKCXsKCSAgJHF1ZXJ5ID0gJ1VQREFURSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHNfZmllbGRkZWZzIFNFVCBpb3JkZXIgPSA/IFdIRVJFIGlkID0gPyc7CgkgICRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkoJGN1cm9yZGVyLCRwcmV2X2lkKSk7CgkgICRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkoJGN1cm9yZGVyIC0gMSwkZmlkKSk7Cgl9CiAgICB9CiAgICBicmVhazsKCiAgY2FzZSAnZG93bic6CiAgICAvLyBzd2FwIG9yZGVyIGlkIHdpdGggbmV4dCBvbmUKICAgIHsKICAgICAgJHF1ZXJ5ID0gJ1NFTEVDVCBpZCBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2Fkc19maWVsZGRlZnMgV0hFUkUgaW9yZGVyID0gPyc7CiAgICAgICRwcmV2X2lkID0gJGRiLT5HZXRPbmUoJHF1ZXJ5LGFycmF5KCRjdXJvcmRlciArIDEpKTsKICAgICAgaWYoICRwcmV2X2lkICkKCXsKCSAgJHF1ZXJ5ID0gJ1VQREFURSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHNfZmllbGRkZWZzIFNFVCBpb3JkZXIgPSA/IFdIRVJFIGlkID0gPyc7CgkgICRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkoJGN1cm9yZGVyLCRwcmV2X2lkKSk7CgkgICRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkoJGN1cm9yZGVyICsgMSwkZmlkKSk7Cgl9CiAgICB9CiAgICBicmVhazsKICB9CgokdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQpOwoKIwojIEVPRgojCj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/action.admin_templates.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojIEF1dGhvcjogUm9iZXJ0IENhbXBiZWxsIDxyb2JAdGVjaGNvbS5keW5kbnMub3JnPgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDoJLy93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgplY2hvICc8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciIHN0eWxlPSJ0ZXh0LWFsaWduOiByaWdodDsgd2lkdGg6IDgwJTsiPicuCiR0aGlzLT5DcmVhdGVJbWFnZUxpbmsoJGlkLCdkZWZhdWx0YWRtaW4nLCRyZXR1cm5pZCwKCQkgICAgICAgJHRoaXMtPkxhbmcoJ2xibF9iYWNrJyksJ2ljb25zL3N5c3RlbS9iYWNrLmdpZicsYXJyYXkoKSwnJywnJyxmYWxzZSkuJzwvZGl2Pjxici8+JzsKCmVjaG8gJHRoaXMtPlN0YXJ0VGFiSGVhZGVycyAoKTsKaWYgKCR0aGlzLT5DaGVja1Blcm1pc3Npb24gKCdNb2RpZnkgVGVtcGxhdGVzJykgKQogIHsKICAgIGVjaG8gJHRoaXMtPlNldFRhYkhlYWRlciAoJ3VwbG9hZGZvcm1fdGVtcGxhdGUnLAoJCQkgICAgICAkdGhpcy0+TGFuZyAoJ3VwbG9hZGZvcm1fdGVtcGxhdGUnKSk7CiAgICBlY2hvICR0aGlzLT5TZXRUYWJIZWFkZXIgKCdzdW1tYXJ5X3RlbXBsYXRlJywKCQkJICAgICAgJHRoaXMtPkxhbmcgKCdzdW1tYXJ5X3RlbXBsYXRlJykpOwogICAgZWNobyAkdGhpcy0+U2V0VGFiSGVhZGVyICgnZGV0YWlsX3RlbXBsYXRlJywKCQkJICAgICAgJHRoaXMtPkxhbmcgKCdkZXRhaWxfdGVtcGxhdGUnKSk7CiAgICBlY2hvICR0aGlzLT5TZXRUYWJIZWFkZXIgKCdzZW5kZmlsZWZvcm1fdGVtcGxhdGUnLAoJCQkgICAgICAkdGhpcy0+TGFuZyAoJ3NlbmRmaWxlZm9ybV90ZW1wbGF0ZScpKTsKICAgIGVjaG8gJHRoaXMtPlNldFRhYkhlYWRlciAoJ3lvdXNlbmRpdGZvcm1fdGVtcGxhdGUnLAoJCQkgICAgICAkdGhpcy0+TGFuZyAoJ3lvdXNlbmRpdGZvcm1fdGVtcGxhdGUnKSk7CiAgICBlY2hvICR0aGlzLT5TZXRUYWJIZWFkZXIgKCdlbWFpbF90ZW1wbGF0ZScsCgkJCSAgICAgICR0aGlzLT5MYW5nICgnZW1haWxfdGVtcGxhdGUnKSk7CiAgICBlY2hvICR0aGlzLT5TZXRUYWJIZWFkZXIgKCdkZWZhdWx0X3RlbXBsYXRlcycsCgkJCSAgICAgICR0aGlzLT5MYW5nKCdkZWZhdWx0X3RlbXBsYXRlcycpKTsKICB9CmVjaG8gJHRoaXMtPkVuZFRhYkhlYWRlcnMgKCk7CmVjaG8gJHRoaXMtPlN0YXJ0VGFiQ29udGVudCAoKTsKaWYgKCR0aGlzLT5DaGVja1Blcm1pc3Npb24gKCdNb2RpZnkgVGVtcGxhdGVzJykpCiAgewogICAgLy8gdGhlIHVwbG9hZCBmb3JtIHRlbXBsYXRlIHRhYgogICAgZWNobyAkdGhpcy0+U3RhcnRUYWIgKCJ1cGxvYWRmb3JtX3RlbXBsYXRlIik7CiAgICB7CiAgICAgIGVjaG8gJHRoaXMtPlNob3dUZW1wbGF0ZUxpc3QoICRpZCwgJHJldHVybmlkLCAndXBsb2FkZm9ybV8nLAoJCQkJICAgICd1cGxvYWRmb3JtX3N5c2RlZmF1bHQnLCAndXBsb2FkZm9ybV90ZW1wbGF0ZScsCgkJCQkgICAgJ2RlZmF1bHRfdXBsb2FkZm9ybScsCgkJCQkgICAgJHRoaXMtPkxhbmcoJ3RpdGxlX3VwbG9hZGZvcm1fdGVtcGxhdGUnKSwKCQkJCSAgICAnJywKCQkJCSAgICAnYWRtaW5fdGVtcGxhdGVzJyk7CiAgICB9CiAgICBlY2hvICR0aGlzLT5FbmRUYWIoKTsKCQogICAgLy8gdGhlIHN1bW1hcnkgdGVtcGxhdGUgdGFiCiAgICBlY2hvICR0aGlzLT5TdGFydFRhYiAoInN1bW1hcnlfdGVtcGxhdGUiKTsKICAgIHsKICAgICAgZWNobyAkdGhpcy0+U2hvd1RlbXBsYXRlTGlzdCggJGlkLCAkcmV0dXJuaWQsICdzdW1tYXJ5cnB0XycsCgkJCQkgICAgJ3N1bW1hcnlycHRfc3lzZGVmYXVsdCcsICdzdW1tYXJ5X3RlbXBsYXRlJywKCQkJCSAgICAnZGVmYXVsdF9zdW1tYXJ5cnB0JywKCQkJCSAgICAkdGhpcy0+TGFuZygndGl0bGVfc3VtbWFyeXJwdF90ZW1wbGF0ZScpLAoJCQkJICAgICcnLAoJCQkJICAgICdhZG1pbl90ZW1wbGF0ZXMnKTsKICAgIH0KICAgIGVjaG8gJHRoaXMtPkVuZFRhYiAoKTsKCQogICAgLy8gdGhlIGRldGFpbCB0ZW1wbGF0ZSB0YWIKICAgIGVjaG8gJHRoaXMtPlN0YXJ0VGFiICgiZGV0YWlsX3RlbXBsYXRlIik7CiAgICB7CiAgICAgIGVjaG8gJHRoaXMtPlNob3dUZW1wbGF0ZUxpc3QoICRpZCwgJHJldHVybmlkLCAnZGV0YWlscnB0XycsCgkJCQkgICAgJ2RldGFpbHJwdF9zeXNkZWZhdWx0JywgJ2RldGFpbF90ZW1wbGF0ZScsCgkJCQkgICAgJ2RlZmF1bHRfZGV0YWlscnB0JywKCQkJCSAgICAkdGhpcy0+TGFuZygndGl0bGVfZGV0YWlscnB0X3RlbXBsYXRlJyksCgkJCQkgICAgJycsCgkJCQkgICAgJ2FkbWluX3RlbXBsYXRlcycpOwogICAgfQogICAgZWNobyAkdGhpcy0+RW5kVGFiICgpOwoKICAgIC8vIHRoZSBzZW5kZmlsZWZvcm0gdGVtcGxhdGUgdGFiCiAgICBlY2hvICR0aGlzLT5TdGFydFRhYiAoInNlbmRmaWxlZm9ybV90ZW1wbGF0ZSIpOwogICAgewogICAgICBlY2hvICR0aGlzLT5TaG93VGVtcGxhdGVMaXN0KCAkaWQsICRyZXR1cm5pZCwgJ3NlbmRmaWxlZm9ybV8nLAoJCQkJICAgICdzZW5kZmlsZWZvcm1fc3lzZGVmYXVsdCcsICdzZW5kZmlsZWZvcm1fdGVtcGxhdGUnLAoJCQkJICAgICdkZWZhdWx0X3NlbmRmaWxlZm9ybScsCgkJCQkgICAgJHRoaXMtPkxhbmcoJ3RpdGxlX3NlbmRmaWxlZm9ybV90ZW1wbGF0ZScpLAoJCQkJICAgICcnLAoJCQkJICAgICdhZG1pbl90ZW1wbGF0ZXMnKTsKICAgIH0KICAgIGVjaG8gJHRoaXMtPkVuZFRhYiAoKTsKCiAgICAvLyB0aGUgeW91c2VuZGl0Zm9ybSB0ZW1wbGF0ZSB0YWIKICAgIGVjaG8gJHRoaXMtPlN0YXJ0VGFiICgieW91c2VuZGl0Zm9ybV90ZW1wbGF0ZSIpOwogICAgewogICAgICBlY2hvICR0aGlzLT5TaG93VGVtcGxhdGVMaXN0KCAkaWQsICRyZXR1cm5pZCwgJ3lvdXNlbmRpdGZvcm1fJywKCQkJCSAgICAneW91c2VuZGl0Zm9ybV9zeXNkZWZhdWx0JywgJ3lvdXNlbmRpdGZvcm1fdGVtcGxhdGUnLAoJCQkJICAgICdkZWZhdWx0X3lvdXNlbmRpdGZvcm0nLAoJCQkJICAgICR0aGlzLT5MYW5nKCd0aXRsZV95b3VzZW5kaXRmb3JtX3RlbXBsYXRlJyksCgkJCQkgICAgJycsCgkJCQkgICAgJ2FkbWluX3RlbXBsYXRlcycpOwogICAgfQogICAgZWNobyAkdGhpcy0+RW5kVGFiICgpOwoJCiAgICAvLyB0aGUgZW1haWwgdGVtcGxhdGUgdGFiCiAgICBlY2hvICR0aGlzLT5TdGFydFRhYignZW1haWxfdGVtcGxhdGUnKTsKICAgIHsKICAgICAgaW5jbHVkZShkaXJuYW1lKF9fRklMRV9fKS4nL2Z1bmN0aW9uLmFkbWluX2VtYWlsX3RlbXBsYXRlX3RhYi5waHAnKTsKICAgIH0KICAgIGVjaG8gJHRoaXMtPkVuZFRhYigpOwoKCiAgICAvLyB0aGUgZGVmYXVsdCB0ZW1wbGF0ZXMgdGFiCiAgICBlY2hvICR0aGlzLT5TdGFydFRhYignZGVmYXVsdF90ZW1wbGF0ZXMnKTsKICAgIHsKICAgICAgZWNobyAkdGhpcy0+R2V0RGVmYXVsdFRlbXBsYXRlRm9ybSgkdGhpcywkaWQsJHJldHVybmlkLCd1cGxvYWRmb3JtX3N5c2RlZmF1bHQnLAoJCQkJCSAnYWRtaW5fdGVtcGxhdGVzJywKCQkJCQkgJ2RlZmF1bHRfdGVtcGxhdGVzJywKCQkJCQkgJHRoaXMtPkxhbmcoJ3RpdGxlX3VwbG9hZGZvcm1fc3lzZGVmYXVsdCcpLAoJCQkJCSAnb3JpZ191cGxvYWRmb3JtX3RlbXBsYXRlLnRwbCcsCgkJCQkJICR0aGlzLT5MYW5nKCdpbmZvX3N5c2RlZmF1bHQnKSk7CgogICAgICBlY2hvICc8ZGl2IHN0eWxlPSJib3JkZXItYm90dG9tOiAxcHggc29saWQgYmxhY2s7IHdpZHRoOiA4MCU7Ij48L2Rpdj4nOwoKICAgICAgZWNobyAkdGhpcy0+R2V0RGVmYXVsdFRlbXBsYXRlRm9ybSgkdGhpcywkaWQsJHJldHVybmlkLCdzdW1tYXJ5cnB0X3N5c2RlZmF1bHQnLAoJCQkJCSAnYWRtaW5fdGVtcGxhdGVzJywKCQkJCQkgJ2RlZmF1bHRfdGVtcGxhdGVzJywKCQkJCQkgJHRoaXMtPkxhbmcoJ3RpdGxlX3N1bW1hcnlycHRfc3lzZGVmYXVsdCcpLAoJCQkJCSAnb3JpZ19zdW1tYXJ5cnB0X3RlbXBsYXRlLnRwbCcsCgkJCQkJICR0aGlzLT5MYW5nKCdpbmZvX3N5c2RlZmF1bHQnKSk7CgogICAgICBlY2hvICc8ZGl2IHN0eWxlPSJib3JkZXItYm90dG9tOiAxcHggc29saWQgYmxhY2s7IHdpZHRoOiA4MCU7Ij48L2Rpdj4nOwoKICAgICAgZWNobyAkdGhpcy0+R2V0RGVmYXVsdFRlbXBsYXRlRm9ybSgkdGhpcywkaWQsJHJldHVybmlkLCdkZXRhaWxycHRfc3lzZGVmYXVsdCcsCgkJCQkJICdhZG1pbl90ZW1wbGF0ZXMnLAoJCQkJCSAnZGVmYXVsdF90ZW1wbGF0ZXMnLAoJCQkJCSAkdGhpcy0+TGFuZygndGl0bGVfZGV0YWlscnB0X3N5c2RlZmF1bHQnKSwKCQkJCQkgJ29yaWdfZGV0YWlscnB0X3RlbXBsYXRlLnRwbCcsCgkJCQkJICR0aGlzLT5MYW5nKCdpbmZvX3N5c2RlZmF1bHQnKSk7CgogICAgICBlY2hvICc8ZGl2IHN0eWxlPSJib3JkZXItYm90dG9tOiAxcHggc29saWQgYmxhY2s7IHdpZHRoOiA4MCU7Ij48L2Rpdj4nOwoKICAgICAgZWNobyAkdGhpcy0+R2V0RGVmYXVsdFRlbXBsYXRlRm9ybSgkdGhpcywkaWQsJHJldHVybmlkLCdzZW5kZmlsZWZvcm1fc3lzZGVmYXVsdCcsCgkJCQkJICdhZG1pbl90ZW1wbGF0ZXMnLAoJCQkJCSAnZGVmYXVsdF90ZW1wbGF0ZXMnLAoJCQkJCSAkdGhpcy0+TGFuZygndGl0bGVfc2VuZGZpbGVmb3JtX3N5c2RlZmF1bHQnKSwKCQkJCQkgJ29yaWdfc2VuZGZpbGVmb3JtX3RlbXBsYXRlLnRwbCcsCgkJCQkJICR0aGlzLT5MYW5nKCdpbmZvX3N5c2RlZmF1bHQnKSk7CgogICAgICBlY2hvICc8ZGl2IHN0eWxlPSJib3JkZXItYm90dG9tOiAxcHggc29saWQgYmxhY2s7IHdpZHRoOiA4MCU7Ij48L2Rpdj4nOwoKICAgICAgZWNobyAkdGhpcy0+R2V0RGVmYXVsdFRlbXBsYXRlRm9ybSgkdGhpcywkaWQsJHJldHVybmlkLCd5b3VzZW5kaXRmb3JtX3N5c2RlZmF1bHQnLAoJCQkJCSAnYWRtaW5fdGVtcGxhdGVzJywKCQkJCQkgJ2RlZmF1bHRfdGVtcGxhdGVzJywKCQkJCQkgJHRoaXMtPkxhbmcoJ3RpdGxlX3lvdXNlbmRpdGZvcm1fc3lzZGVmYXVsdCcpLAoJCQkJCSAnb3JpZ195b3VzZW5kaXRmb3JtX3RlbXBsYXRlLnRwbCcsCgkJCQkJICR0aGlzLT5MYW5nKCdpbmZvX3N5c2RlZmF1bHQnKSk7CiAgICAgIAogICAgfQogICAgZWNobyAkdGhpcy0+RW5kVGFiKCk7CiAgfQplY2hvICR0aGlzLT5FbmRUYWJDb250ZW50KCk7CgojCiMgRU9GCiMKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.admin_upload.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDoJLy93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdCgpOwppZiggISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01hbmFnZSBVcGxvYWRzJykgJiYgISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ1VwbG9hZCBGaWxlcyB0byBVcGxvYWRzJykpCiAgewogICAgZGllKCdwZXJtaXNzaW9uIGRlbmllZCcpOwogIH0KCiMKIyBJbml0aWFsaXphdGlvbgojCiR0aGlzLT5TZXRDdXJyZW50VGFiKCdmaWxlcycpOwokcmVjb3JkID0gYXJyYXkoJ2NhdGVnb3J5X2lkJz0+JycsCgkJJ2Rlc3RuYW1lJz0+JycsCgkJJ2F1dGhvcic9PiRfU0VTU0lPTlsnY21zX2FkbWluX3VzZXJuYW1lJ10sCgkJJ3N1bW1hcnknPT4nJywKCQknZGVzY3JpcHRpb24nPT4nJyk7CiRjdXJjYXRlZ29yeSA9ICcnOwoKIwojIFNldHVwCiMKaWYoIGlzc2V0KCRwYXJhbXNbJ2NhdGVnb3J5J10pICkKICB7CiAgICAkY3VyY2F0ZWdvcnkgPSAkcGFyYW1zWydjYXRlZ29yeSddOwogIH0KJGNhdGVnb3J5bGlzdCA9IGFycmF5KCk7CnsKICAkcXVlcnkgPQogICAgIlNFTEVDVCB1cGxvYWRfY2F0ZWdvcnlfaWQgQVMgaWQsIHVwbG9hZF9jYXRlZ29yeV9uYW1lIEFTIG5hbWUgRlJPTSAiLmNtc19kYl9wcmVmaXggKCkuCiAgICAgICAibW9kdWxlX3VwbG9hZHNfY2F0ZWdvcmllcyBPUkRFUiBCWSB1cGxvYWRfY2F0ZWdvcnlfbmFtZSBBU0MiOwogICR0bXAgPSAkZGItPkdldEFycmF5KCRxdWVyeSk7CiAgZm9yKCAkaSA9IDA7ICRpIDwgY291bnQoJHRtcCk7ICRpKysgKQogICAgewogICAgICAkY2F0ZWdvcnlsaXN0WyR0bXBbJGldWydpZCddXSA9ICR0bXBbJGldWyduYW1lJ107CiAgICB9Cn0KCiRmaWVsZHMgPSBhcnJheSgpOwp7CiAgJHF1ZXJ5ID0gJ1NFTEVDVCAqIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzX2ZpZWxkZGVmcyBPUkRFUiBCWSBpb3JkZXInOwogICR0ZmllbGRzID0gJGRiLT5HZXRBcnJheSgkcXVlcnkpOwogIGZvciggJGkgPSAwOyAkaSA8IGNvdW50KCR0ZmllbGRzKTsgJGkrKyApCiAgICB7CiAgICAgICR0ZmllbGRzWyRpXVsnYXR0cmliJ10gPSB1bnNlcmlhbGl6ZSgkdGZpZWxkc1skaV1bJ2F0dHJpYnMnXSk7CiAgICAgIHVuc2V0KCR0ZmllbGRzWyRpXVsnYXR0cmlicyddKTsKICAgICAgCiAgICAgIHN3aXRjaCgkdGZpZWxkc1skaV1bJ3R5cGUnXSkKCXsKCWNhc2UgJ3RleHRhcmVhJzoKCSAgJHRmaWVsZHNbJGldWydpbnB1dCddID0gCgkgICR0aGlzLT5DcmVhdGVUZXh0QXJlYShpc3NldCgkdGZpZWxkc1skaV1bJ2F0dHJpYiddWyd1c2V3eXNpd3lnJ10pICYmICR0ZmllbGRzWyRpXVsnYXR0cmliJ11bJ3VzZXd5c2l3eWcnXSA9PSAxICYmCgkJCQkkdGhpcy0+R2V0UHJlZmVyZW5jZSgnYWxsb3dfY29tbWVudF93eXNpd3lnJywwKSwKCQkJCSRpZCwKCQkJCSR0ZmllbGRzWyRpXVsnYXR0cmliJ11bJ2RmbHRjb250ZW50J10sCgkJCQknZmllbGRfJy4kdGZpZWxkc1skaV1bJ2lkJ10pOwoJICBicmVhazsKCWNhc2UgJ2Ryb3Bkb3duJzoKCWNhc2UgJ211bHRpc2VsZWN0JzoKCSAgaWYoIGlzc2V0KCR0ZmllbGRzWyRpXVsnYXR0cmliJ11bJ29wdGlvbnMnXSkgKQoJICAgIHsKCSAgICAgICR0bXAgPSBleHBsb2RlKCJcbiIsJHRmaWVsZHNbJGldWydhdHRyaWInXVsnb3B0aW9ucyddKTsKCSAgICAgICR0bXAyID0gYXJyYXkoKTsKCSAgICAgIGZvcmVhY2goICR0bXAgYXMgJG9uZSApCgkJewoJCSAgJGtleSA9ICcnOwoJCSAgJHZhbHVlID0gJyc7CgkJICBpZiggc3Ryc3RyKCRvbmUsJz0nKSAhPT0gRkFMU0UgKQoJCSAgICBsaXN0KCRrZXksJHZhbHVlKSA9IGV4cGxvZGUoJz0nLHRyaW0oJG9uZSksMik7CgkJICBlbHNlCgkJICAgIHsKCQkgICAgICAkdmFsdWUgPSAkb25lOwoJCSAgICAgICRrZXkgPSAkb25lOwoJCSAgICB9CgkJICAkdG1wMlt0cmltKCR2YWx1ZSldID0gdHJpbSgka2V5KTsKCQl9CgkgICAgICAkdGZpZWxkc1skaV1bJ2F0dHJpYiddWydvcHRpb25zJ10gPSAkdG1wMjsKCSAgICB9CgkgIGJyZWFrOwoJfQogICAgICAKICAgICAgJGZpZWxkc1skdGZpZWxkc1skaV1bJ2lkJ11dID0gJHRmaWVsZHNbJGldOwogICAgfQp9CgoKIwojIEhhbmRsZSBGb3JtIFN1Ym1pc3Npb24KIwppZiggaXNzZXQoJHBhcmFtc1snY2FuY2VsJ10pICkKICB7CiAgICAkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQpOwogIH0KZWxzZSBpZiggaXNzZXQoJHBhcmFtc1snc3VibWl0J10pICkKICB7CiAgICAkcmVjb3JkWydjYXRlZ29yeV9pZCddID0gKGludCkkcGFyYW1zWydjYXRlZ29yeV9pZCddOwogICAgJHJlY29yZFsnZGVzdG5hbWUnXSA9IHRyaW0oJHBhcmFtc1snaW5wdXRfZGVzdG5hbWUnXSk7CiAgICAkcmVjb3JkWydhdXRob3InXSA9IHRyaW0oJHBhcmFtc1snaW5wdXRfYXV0aG9yJ10pOwogICAgJHJlY29yZFsnc3VtbWFyeSddID0gdHJpbSgkcGFyYW1zWydpbnB1dF9zdW1tYXJ5J10pOwogICAgJHJlY29yZFsnZGVzY3JpcHRpb24nXSA9IHRyaW0oJHBhcmFtc1snaW5wdXRfZGVzY3JpcHRpb24nXSk7CgogICAgJHVzZXJpZCA9IGdldF91c2VyaWQoKTsKICAgICR1c2VybmFtZSA9ICRfU0VTU0lPTlsnY21zX2FkbWluX3VzZXJuYW1lJ107CgogICAgJHJldCA9ICR0aGlzLT5BdHRlbXB0VXBsb2FkKCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCApOwogICAgaWYoICRyZXRbMF0gPT0gZmFsc2UgKQogICAgICB7CgllY2hvICR0aGlzLT5TaG93RXJyb3JzKCRyZXRbMV0pOwogICAgICB9CiAgICBlbHNlCiAgICAgIHsKCSR1cGxvYWRfaWQgPSAkcmV0WzFdOwoJJHRoZW5hbWUgPSAnJzsKCWlmKCBjb3VudCgkcmV0KSA9PSAzICkgJHRoZW5hbWUgPSAkcmV0WzJdOwoKCS8vIGl0IHVwbG9hZGVkLi4uIG5vdyBmb3IgdGhlIHRsIHN0dWZmCglpZiggJHRoaXMtPkdldFByZWZlcmVuY2UoJ2FsbG93X3VwbG9hZF9zZW5kZmlsZScsMCkgJiYKCSAgICBpc3NldCgkcGFyYW1zWyd0bF9lbWFpbCddKSAmJiAhZW1wdHkoJHBhcmFtc1sndGxfZW1haWwnXSkgKQoJICB7CgkgICAgLy8gd2UncmUgY3JlYXRpbmcgdGltZSBsaW1pdGVkIGFjY2VzcyBrZXkuCgkgICAgJGhvdXJzID0gKGludCkkcGFyYW1zWyd0bF9ob3VycyddOwoJICAgICRkb3dubG9hZHMgPSAoaW50KSRwYXJhbXNbJ3RsX2Rvd25sb2FkcyddOwoJICAgICRlbWFpbCA9IHRyaW0oJHBhcmFtc1sndGxfZW1haWwnXSk7CgkgICAgJHNlbmRpdCA9IChpbnQpJHBhcmFtc1sndGxfc2VuZGl0J107CgoJICAgICRkb3dubG9hZHMgPSBtYXgoJGRvd25sb2FkcywwKTsKCSAgICAkaG91cnMgPSBtYXgoJGhvdXJzLDApOwoKCSAgICAkbm93ID0gJGRiLT5EYlRpbWVTdGFtcCh0aW1lKCkpOwoJICAgICRleHBpcmVzID0gbnVsbDsKCSAgICBpZiggJGhvdXJzID4gMCApCgkgICAgICB7CgkJJGV4cGlyZXMgPSAkZGItPkRiVGltZVN0YW1wKHN0cnRvdGltZSgnKycuJGhvdXJzLicgaG91cnMnKSk7CgkgICAgICB9CgkgICAgJHVybGtleSA9IHN1YnN0cihzdHJfc2h1ZmZsZShtZDUodGltZSgpLiR1cGxvYWRfaWQuJHRoZW5hbWUuJG5vdy4kZW1haWwuJGV4cGlyZXMpKSwwLDE2KTsKCSAgICAkcXVlcnkgPSAnSU5TRVJUIElOVE8gJy5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX3RpbWVsaW1pdCAKICAgICAgICAgICAgICAgICAgICh1cGxvYWRfaWQsZW1haWwsdXJsX2tleSxjcmVhdGVkLGV4cGlyZXMsbWF4X2Rvd25sb2FkcykKICAgICAgICAgICAgICAgICAgVkFMVUVTICg/LD8sPywkbm93LCRleHBpcmVzLD8pIjsKCSAgICAkZGJyID0gJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkdXBsb2FkX2lkLCRlbWFpbCwkdXJsa2V5LCRkb3dubG9hZHMpKTsKCSAgICBpZiggJGRiciApCgkgICAgICB7CgkJLy8gbWF5YmUgc2VuZCBhbiBlbWFpbAoJCSRjbXNtYWlsZXIgPSYgJHRoaXMtPkdldE1vZHVsZUluc3RhbmNlKCdDTVNNYWlsZXInKTsKCQlpZiggJGNtc21haWxlciApCgkJICB7CgkJICAgICRjb250ZW50b3BzID0mICRnQ21zLT5HZXRDb250ZW50T3BlcmF0aW9ucygpOwoJCSAgICAkcGFnZWlkID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ2RlZmF1bHRfc2VuZGZpbGVwYWdlJyk7CgkJICAgIGlmKCAkcGFnZWlkIDw9IDAgKQoJCSAgICAgIHsKCQkJJHBhZ2VpZCA9ICRjb250ZW50b3BzLT5HZXREZWZhdWx0Q29udGVudCgpOwoJCSAgICAgIH0KCQkJCQkJCgkJICAgICR0bXAgPSAkdGhpcy0+R2V0VXBsb2FkRGV0YWlscygkdXBsb2FkX2lkLCRwYWdlaWQpOwoJCSAgICAkdG1wWydkb3dubG9hZF91cmwnXSA9ICR0aGlzLT5DcmVhdGVVUkwoJGlkLCdnZXRmaWxlJywkcGFnZWlkLAoJCQkJCQkJICAgIGFycmF5KCd1cmxfa2V5Jz0+JHVybGtleSksCgkJCQkJCQkgICAgZmFsc2UsCgkJCQkJCQkgICAgJHRoaXMtPl9nZXRUaW1lTGltaXRlZFVSTCgkdXJsa2V5KSk7CgoJCSAgICAkdXBsb2FkX2luZiA9IG5ldyBTdGRDbGFzcygpOwoJCSAgICBmb3JlYWNoKCAkdG1wIGFzICRrZXkgPT4gJHZhbHVlICkKCQkgICAgICB7CgkJCWlmKCBzdGFydHN3aXRoKCRrZXksJ3VwbG9hZF8nKSApCgkJCSAgewoJCQkgICAgJGtleSA9IHN1YnN0cigka2V5LDcpOwoJCQkgIH0KCQkJaWYoICFlbXB0eSgkdmFsdWUpICkKCQkJICB7CgkJCSAgICAkdXBsb2FkX2luZm8tPiRrZXkgPSAkdmFsdWU7CgkJCSAgfQoJCSAgICAgIH0KCQkgICAgJHNtYXJ0eS0+YXNzaWduKCdlbnRyeScsJHVwbG9hZF9pbmZvKTsKCQkgICAgJHNtYXJ0eS0+YXNzaWduKCdub3RlcycsJycpOwoJCSAgICBpZiggJGRvd25sb2FkcyApCgkJICAgICAgewoJCQkkc21hcnR5LT5hc3NpZ24oJ2Rvd25sb2FkcycsJGRvd25sb2Fkcyk7CgkJICAgICAgfQoJCSAgICBpZiggJGhvdXJzICkKCQkgICAgICB7CgkJCSRzbWFydHktPmFzc2lnbignaG91cnMnLCRob3Vycyk7CgkJICAgICAgfQoKCQkgICAgJHN1YmplY3RfdHBsID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ3RpbWVsaW1pdGVkX3N1YmplY3QnLAoJCQkJCQkJJHRoaXMtPkxhbmcoJ2RmbHRfdGltZWxpbWl0ZWRfc3ViamVjdCcpKTsKCQkgICAgJHN1YmplY3QgPSAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlRnJvbURhdGEoJHN1YmplY3RfdHBsKTsKCgkJICAgICRjbXNtYWlsZXItPnJlc2V0KCk7CgkJICAgICRjbXNtYWlsZXItPlNldFN1YmplY3QoJHN1YmplY3QpOwoJCSAgICAkY21zbWFpbGVyLT5Jc0hUTUwodHJ1ZSk7CgkJICAgICRjbXNtYWlsZXItPkFkZEFkZHJlc3MoJGVtYWlsKTsKCQkgICAgJGJvZHkgPSAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlRnJvbURhdGFiYXNlKCd1cGxvYWRfc2VuZGZpbGVycHQnKTsKCQkgICAgJGNtc21haWxlci0+U2V0Qm9keSgkYm9keSk7CgkJICAgICRjbXNtYWlsZXItPlNlbmQoKTsKCQkgIH0KCSAgICAgIH0KCgkgIH0KCgkkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQpOwogICAgICB9CiAgfQoKIwojIEdpdmUgZXZlcnl0aGluZyB0byBzbWFydHkKIwokc21hcnR5LT5hc3NpZ24oJ2Zvcm1zdGFydCcsJHRoaXMtPkNHQ3JlYXRlRm9ybVN0YXJ0KCRpZCwnYWRtaW5fdXBsb2FkJywkcmV0dXJuaWQsJHBhcmFtcyxmYWxzZSwncG9zdCcsJ211bHRpcGFydC9mb3JtLWRhdGEnKSk7CiRzbWFydHktPmFzc2lnbignZm9ybWVuZCcsJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7CiRzbWFydHktPmFzc2lnbignY2F0ZWdvcmllcycsJGNhdGVnb3J5bGlzdCk7CmlmKCAhZW1wdHkoJGN1cmNhdGVnb3J5KSApCiAgewogICAgJHNtYXJ0eS0+YXNzaWduKCdjdXJjYXRlZ29yeScsJGN1cmNhdGVnb3J5KTsKICB9CiRzbWFydHktPmFzc2lnbignYWxsb3dfcmVwbGFjZScsMCk7CiRzbWFydHktPmFzc2lnbigndXBsb2FkJywkcmVjb3JkKTsKaWYoIGNvdW50KCRmaWVsZHMpICkKICB7CiAgICAkc21hcnR5LT5hc3NpZ24oJ2ZpZWxkcycsJGZpZWxkcyk7CiAgfQokc21hcnR5LT5hc3NpZ24oJ3RsX2hvdXJzJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgndGltZWxpbWl0ZWRfaG91cnMnLDApKTsKJHNtYXJ0eS0+YXNzaWduKCd0bF9kb3dubG9hZHMnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCd0aW1lbGltaXRlZF9kb3dubG9hZHMnLDApKTsKJHNtYXJ0eS0+YXNzaWduKCdhbGxvd191cGxvYWRfc2VuZGZpbGUnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdhbGxvd191cGxvYWRfc2VuZGZpbGUnLDApKTsKCiMKIyBEaXNwbGF5IHRoZSB0ZW1wbGF0ZQojCmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSgnYWRtaW5fdXBsb2FkLnRwbCcpOwoKIwojIEVPRgojCj8+]]></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+ZXhwbG9kZV93aXRoX2tleSgkcGFyYW1zWydoaWRkZW5fcGFyYW1zJ10pOwoJCX0KCSRwYXJhbXMgPSBhcnJheV9tZXJnZSggJHBhcmFtcywgJHRtcF9wYXJhbXMgKTsKfQoKLy8gY2hlY2sgZm9yIHJlcXVpcmVkIGFyZ3VtZW50cwppZiAoIWlzc2V0ICgkcGFyYW1zWydtb2RlJ10pICkKICB7CiAgICAkcGFyYW1zWydtb2RlJ10gPSAnc3VtbWFyeSc7CiAgfQogICAgICAgIAovLyBzZXR1cAokdGVtcGxhdGUgPSAnc3VtbWFyeXJwdF8nLiR0aGlzLT5HZXRQcmVmZXJlbmNlKCdkZWZhdWx0X3N1bW1hcnlycHQnKTsKaWYoIGlzc2V0KCAkcGFyYW1zWyd0ZW1wbGF0ZSddICkgKQoJewoJCSR0ZW1wbGF0ZSA9ICdzdW1tYXJ5cnB0XycuJHBhcmFtc1sndGVtcGxhdGUnXTsKCX0KJGNvbmZpZyA9JiAkZ0Ntcy0+R2V0Q29uZmlnKCk7CgovLyBoYW5kbGUgdGhlIHNlbmRmaWxlcGFnZSBwYXJhbWV0ZXIKJHNlbmRmaWxlcGFnZSA9ICRyZXR1cm5pZDsKaWYoIGlzc2V0KCRwYXJhbXNbJ3NlbmRmaWxlcGFnZSddKSApCgl7CgkJZ2xvYmFsICRnQ21zOwoJCSRtYW5hZ2VyID0mICRnQ21zLT5HZXRIaWVyYXJjaHlNYW5hZ2VyKCk7CgkJJG5vZGUgPSYgJG1hbmFnZXItPnN1cmVHZXROb2RlQnlBbGlhcygkcGFyYW1zWydzZW5kZmlsZXBhZ2UnXSk7CgkJaWYgKGlzc2V0KCRub2RlKSkKCQkJewoJCQkJJGNvbnRlbnQgPSYgJG5vZGUtPkdldENvbnRlbnQoKTsKCQkJCWlmIChpc3NldCgkY29udGVudCkpCgkJCQkJewoJCQkJCQkkc2VuZGZpbGVwYWdlID0gJGNvbnRlbnQtPklkKCk7CgkJCQkJfQoJCQl9CgkJZWxzZQoJCQl7CgkJCQkkbm9kZSA9JiAkbWFuYWdlci0+c3VyZUdldE5vZGVCeUlkKCRwYXJhbXNbJ3NlbmRmaWxlcGFnZSddKTsKCQkJCWlmIChpc3NldCgkbm9kZSkpCgkJCQkJewoJCQkJCQkkc2VuZGZpbGVwYWdlID0gJHBhcmFtc1snc2VuZGZpbGVwYWdlJ107CgkJCQkJfQoJCQl9Cgl9CmlmKCBlbXB0eSgkc2VuZGZpbGVwYWdlKSApCgl7CgkJJHRtcCA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdkZWZhdWx0X3NlbmRmaWxlcGFnZScsLTEpOwoJCWlmKCAkdG1wID4gMCApCgkJCXsKCQkJCSRzZW5kZmlsZXBhZ2UgPSAkdG1wOwoJCQl9CgkJZWxzZQoJCQl7CgkJCQkkc2VuZGZpbGVwYWdlID0gJHJldHVybmlkOwoJCQl9Cgl9CgoKLy8gaGFuZGxlIHRoZSBkZXRhaWxwYWdlIHBhcmFtZXRlcgokZGV0YWlscGFnZSA9ICcnOwppZiggaXNzZXQoJHBhcmFtc1snZGV0YWlscGFnZSddKSApCgl7CgkJZ2xvYmFsICRnQ21zOwoJCSRtYW5hZ2VyID0mICRnQ21zLT5HZXRIaWVyYXJjaHlNYW5hZ2VyKCk7CgkJJG5vZGUgPSYgJG1hbmFnZXItPnN1cmVHZXROb2RlQnlBbGlhcygkcGFyYW1zWydkZXRhaWxwYWdlJ10pOwoJCWlmIChpc3NldCgkbm9kZSkpCgkJCXsKCQkJCSRjb250ZW50ID0mICRub2RlLT5HZXRDb250ZW50KCk7CgkJCQlpZiAoaXNzZXQoJGNvbnRlbnQpKQoJCQkJCXsKCQkJCQkJJGRldGFpbHBhZ2UgPSAkY29udGVudC0+SWQoKTsKCQkJCQl9CgkJCX0KCQllbHNlCgkJCXsKCQkJCSRub2RlID0mICRtYW5hZ2VyLT5zdXJlR2V0Tm9kZUJ5SWQoJHBhcmFtc1snZGV0YWlscGFnZSddKTsKCQkJCWlmIChpc3NldCgkbm9kZSkpCgkJCQkJewoJCQkJCQkkZGV0YWlscGFnZSA9ICRwYXJhbXNbJ2RldGFpbHBhZ2UnXTsKCQkJCQl9CgkJCX0KCQl1bnNldCggJHBhcmFtc1snZGV0YWlscGFnZSddICk7Cgl9CmlmKCAkZGV0YWlscGFnZSAhPSAnJyApCgl7CgkJJHJldHVybmlkID0gJGRldGFpbHBhZ2U7Cgl9CgkJCQkJCQkgCgovLyBtb2RlIGlzIHNldCwgbm93IGRlY2lkZSB3aGF0IHRvIGRvCi8vIGhhbmRsZSB0aGUgc2ltcGxlIHN0dWZmIChvbmUgc2luZ2xlIGxpbmspCmlmKCAkcGFyYW1zWydtb2RlJ10gPT0gJ3NpbmdsZScgfHwgCgkJJHBhcmFtc1snbW9kZSddID09ICdkZXRhaWxlZCcgfHwKCQkkcGFyYW1zWydtb2RlJ10gPT0gJ2RldGFpbCcgfHwKCQkkcGFyYW1zWydtb2RlJ10gPT0gJ3NpbmdsZXN1bW1hcnknIHx8CgkJJHBhcmFtc1snbW9kZSddID09ICdsaW5rJyB8fCAKCQkkcGFyYW1zWydtb2RlJ10gPT0gJ3VybCcgKQoJewoJCWluY2x1ZGUoZGlybmFtZShfX0ZJTEVfXykuJy9hY3Rpb24uZGV0YWlsLnBocCcpOwoJCXJldHVybjsKCX0KZWxzZSBpZiggJHBhcmFtc1snbW9kZSddID09ICd1cGxvYWQnICkKCXsKCQlpbmNsdWRlKGRpcm5hbWUoX19GSUxFX18pLicvYWN0aW9uLnVwbG9hZC5waHAnKTsKCQlyZXR1cm47Cgl9CgovLwovLyBTZXR1cCBkYXRhIGZvciB0aGUgZGVmYXVsdCBzdW1tYXJ5IG1vZGUKLy8KJHNlbGVjdGZvcm0gPSAkaWQ7CmlmKCBpc3NldCggJHBhcmFtc1snc2VsZWN0Zm9ybSddICkgKQoJewoJCSRzZWxlY3Rmb3JtID0gdHJpbSgkcGFyYW1zWydzZWxlY3Rmb3JtJ10pOwoJfQoJCQokc2VsZWN0bmFtZSA9ICdmaWxlJzsKaWYoIGlzc2V0KCAkcGFyYW1zWydzZWxlY3RuYW1lJ10gKSApCgl7CgkJJHNlbGVjdG5hbWUgPSB0cmltKCRwYXJhbXNbJ3NlbGVjdG5hbWUnXSk7Cgl9CiRzZWxlY3R2YWx1ZSA9IC0xOwppZiggaXNzZXQoICRwYXJhbXNbJ3NlbGVjdHZhbHVlJ10gKSApIHsKCSRzZWxlY3R2YWx1ZSA9IHRyaW0oJHBhcmFtc1snc2VsZWN0dmFsdWUnXSk7CiB9CgkJCiRmaWxldHlwZXMgPSBudWxsOwppZiggaXNzZXQoICRwYXJhbXNbJ2ZpbGV0eXBlcyddICkgKQoJewoJCSRmaWxldHlwZXMgPSB0cmltKCRwYXJhbXNbJ2ZpbGV0eXBlcyddKTsKCX0KCiRrZXkgPSBudWxsOwppZiggaXNzZXQoICRwYXJhbXNbJ2tleSddICkgKQoJewoJCSRrZXkgPSB0cmltKCRwYXJhbXNbJ2tleSddKTsKCX0KCQkgCmlmKCAhaXNzZXQoICRwYXJhbXNbJ2NhdGVnb3J5J10gKSApCgl7CgkJLy8gaWYgbW9kZSBvciBjYXRlZ29yeSBpc24ndCBzZXQuLi4gd2UgZG9uJ3QgZGlzcGxheSBhbnl0aGluZwoJCSR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSAoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsCgkJCQkJCQkJCQkJCQkJCSR0aGlzLT5MYW5nICgnZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJywnY2F0ZWdvcnknKSk7CgkJcmV0dXJuOwoJfQoKLy8gdHJ5IHRvIGZpZ3VyZSBvdXQgYSBzb3J0IG9yZGVyCiRzb3J0b3JkZXIgPSAiT1JERVIgQlkgdXBsb2FkX2RhdGUgQVNDIjsKaWYoIGlzc2V0KCRwYXJhbXNbJ3NvcnRvcmRlciddKSApIHsKCXN3aXRjaCggdHJpbSgkcGFyYW1zWydzb3J0b3JkZXInXSkgKSB7CgljYXNlICJkYXRlX2FzYyI6CgkJLy8gYXNjZW5kaW5nIGRhdGUKCQkkc29ydG9yZGVyID0gIk9SREVSIEJZIHVwbG9hZF9kYXRlIEFTQyI7CgkJYnJlYWs7CgljYXNlICJkYXRlX2Rlc2MiOgoJCS8vIGRlc2NlbmRpbmcgZGF0ZQoJCSRzb3J0b3JkZXIgPSAiT1JERVIgQlkgdXBsb2FkX2RhdGUgREVTQyI7CgkJYnJlYWs7CgljYXNlICJuYW1lX2FzYyI6CgkJLy8gYXNjZW5kaW5nIG5hbWUKCQkkc29ydG9yZGVyID0gIk9SREVSIEJZIHVwbG9hZF9uYW1lIEFTQyI7CgkJYnJlYWs7CgljYXNlICJuYW1lX2Rlc2MiOgoJCS8vIGRlc2NlbmRpbmcgbmFtZQoJCSRzb3J0b3JkZXIgPSAiT1JERVIgQlkgdXBsb2FkX25hbWUgREVTQyI7CgkJYnJlYWs7CgljYXNlICJzaXplX2FzYyI6CgkJLy8gYXNjZW5kaW5nIHNpemUKCQkkc29ydG9yZGVyID0gIk9SREVSIEJZIHVwbG9hZF9zaXplIEFTQyI7CgkJYnJlYWs7CgljYXNlICJzaXplX2Rlc2MiOgoJCS8vIGRlc2NlbmRpbmcgc2l6ZQoJCSRzb3J0b3JkZXIgPSAiT1JERVIgQlkgdXBsb2FkX3NpemUgREVTQyI7CgkJYnJlYWs7CgljYXNlICJzdW1tX2FzYyI6CgkJLy8gYXNjZW5kaW5nIHN1bW1hcnkKCQkkc29ydG9yZGVyID0gIk9SREVSIEJZIHVwbG9hZF9zdW1tYXJ5IEFTQyI7CgkJYnJlYWs7CgljYXNlICJzdW1tX2Rlc2MiOgoJCS8vIGRlc2NlbmRpbmcgc3VtbWFyeQoJCSRzb3J0b3JkZXIgPSAiT1JERVIgQlkgdXBsb2FkX3N1bW1hcnkgREVTQyI7CgkJYnJlYWs7CgljYXNlICJhdXRob3JfYXNjIjoKCQkvLyBhc2NlbmRpbmcgYXV0aG9yCgkJJHNvcnRvcmRlciA9ICJPUkRFUiBCWSB1cGxvYWRfYXV0aG9yIEFTQyI7CgkJYnJlYWs7CgljYXNlICJhdXRob3JfZGVzYyI6CgkJLy8gZGVzY2VuZGluZyBhdXRob3IKCQkkc29ydG9yZGVyID0gIk9SREVSIEJZIHVwbG9hZF9hdXRob3IgREVTQyI7CgkJYnJlYWs7CgljYXNlICJpcF9hc2MiOgoJCS8vIGFzY2VuZGluZyBpcAoJCSRzb3J0b3JkZXIgPSAiT1JERVIgQlkgdXBsb2FkX2lwIEFTQyI7CgkJYnJlYWs7CgljYXNlICJpcF9kZXNjIjoKCQkvLyBkZXNjZW5kaW5nIGlwCgkJJHNvcnRvcmRlciA9ICJPUkRFUiBCWSB1cGxvYWRfaXAgREVTQyI7CgkJYnJlYWs7CgljYXNlICJkZXNjX2FzYyI6CgkJLy8gYXNjZW5kaW5nIGF1dGhvcgoJCSRzb3J0b3JkZXIgPSAiT1JERVIgQlkgdXBsb2FkX2Rlc2NyaXB0aW9uIEFTQyI7CgkJYnJlYWs7CgljYXNlICJkZXNjX2Rlc2MiOgoJCS8vIGRlc2NlbmRpbmcgYXV0aG9yCgkJJHNvcnRvcmRlciA9ICJPUkRFUiBCWSB1cGxvYWRfZGVzY3JpcHRpb24gREVTQyI7CgkJYnJlYWs7CgljYXNlICJyYW5kb20iOgoJCS8vIHJhbmRvbQoJCSRzb3J0b3JkZXIgPSAiT1JERVIgQlkgcmFuZCgpIjsKCX0KIH0KJHNvcnRvcmRlciA9ICIgIi4kc29ydG9yZGVyOwoKLy8gZGV0ZXJtaW5lIGhvdyBtYW55IHdlJ3JlIGdvaW5nIHRvIGRpc3BsYXkKJGxpbWl0c3RyID0gIiI7CiRwYWdlbGltaXQgPSAxMDAwMDA7CiRwYWdlbnVtID0gMTsKJG51bXBhZ2VzID0gMTsKaWYoIGlzc2V0KCAkcGFyYW1zWydjb3VudCddICkgKQoJewoJCSRwYWdlbGltaXQgPSAoaW50KSRwYXJhbXNbJ2NvdW50J107Cgl9CmlmKCBpc3NldCggJHBhcmFtc1sncGFnZW51bSddICkgKQoJewoJCSRwYWdlbnVtID0gKGludCkkcGFyYW1zWydwYWdlbnVtJ107Cgl9CiRsaW1pdHN0ciA9ICIgTElNSVQgMCwkcGFnZWxpbWl0IjsKCi8vIGdldCB0aGUgY2F0ZWdvcnkgaWQKJGNhdGVnb3J5ID0gYXJyYXkoKTsKaWYoIHRyaW0oJHBhcmFtc1snY2F0ZWdvcnknXSkgIT0gJ2FsbCcgKQoJewoJCSRjYXRlZ29yeSA9IFVwbG9hZHM6OmdldENhdGVnb3J5RnJvbU5hbWUoIHRyaW0oJHBhcmFtc1snY2F0ZWdvcnknXSkgKTsKCQlpZiggISRjYXRlZ29yeSApCgkJCXsKCQkJCSR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSAoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsCgkJCQkJCQkJCQkJCQkJCQkJJHRoaXMtPkxhbmcgKCdlcnJvcl9jYXRlZ29yeW5vdGZvdW5kJykpOwoJCQkJcmV0dXJuOwoJCQl9CgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdjYXRlZ29yeV9uYW1lJywkcGFyYW1zWydjYXRlZ29yeSddKTsKCX0KCi8vIGdldCB0aGUgZmlsdGVyIHN0cmluZwokZmlsdGVyID0gJyc7CmlmKCBpc3NldCgkcGFyYW1zWydpbnB1dF9maWx0ZXInXSkgJiYgJHBhcmFtc1snaW5wdXRfZmlsdGVyJ10gIT0gJycgKQoJewoJCSRmaWx0ZXIgPSB0cmltKCRwYXJhbXNbJ2lucHV0X2ZpbHRlciddKTsKCX0KaWYoICRmaWx0ZXIgPT0gJycgKQoJewoJCXVuc2V0KCRwYXJhbXNbJ2hpZGRlbl9wYXJhbXMnXSk7Cgl9CgkJCmlmKCBpc3NldCgkcGFyYW1zWydmaWx0ZXInXSkgKQoJewoJCS8vIG9wdGlvbmFsbHkgZGlzcGxheSB0aGUgZmlsdGVyIGZvcm0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3N0YXJ0Zm9ybScsICR0aGlzLT5DcmVhdGVGb3JtU3RhcnQoJGlkLCdkZWZhdWx0JywkcmV0dXJuaWQsCgkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkkbWV0aG9kPSdwb3N0JywgJycsIHRydWUpKTsKCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3Byb21wdF9maWx0ZXInLCR0aGlzLT5MYW5nKCdmaWx0ZXInKSk7CgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdpbnB1dF9maWx0ZXInLAoJCQkJCQkJCQkJCQkJJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsJ2lucHV0X2ZpbHRlcicsJGZpbHRlciwxNSkpOwoJCSR0aGlzLT5zbWFydHktPmFzc2lnbignaW5wdXRfc3VibWl0JywKCQkJCQkJCQkJCQkJCSR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsJ2lucHV0X3N1Ym1pdCcsCgkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkgJHRoaXMtPkxhbmcoJ3N1Ym1pdCcpKSk7CgkJdW5zZXQoICRwYXJhbXNbJ2lucHV0X2ZpbHRlciddICk7CgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdoaWRkZW5fcGFyYW1zJywKCQkJCQkJCQkJCQkJCSR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsJ2hpZGRlbl9wYXJhbXMnLAoJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJIGNnZV9hcnJheTo6aW1wbG9kZV93aXRoX2tleSgkcGFyYW1zKSkpOwoJCSR0aGlzLT5zbWFydHktPmFzc2lnbignZW5kZm9ybScsJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7Cgl9CgkJIAokZG9fcXVlcnkgPSB0cnVlOwppZiggKGlzc2V0KCAkcGFyYW1zWydub19pbml0aWFsJ10gKSAmJiAkcGFyYW1zWydub19pbml0aWFsJ10gIT0gJycpICYmCgkJKGlzc2V0KCAkcGFyYW1zWydoaWRkZW5fcGFyYW1zJ10pID09IGZhbHNlKSApCgl7CgkJJGRvX3F1ZXJ5ID0gZmFsc2U7Cgl9CgkJIAovLyBhZGp1c3QgdGhlIGZpbHRlcgokYWRqdXN0ZWRfZmlsdGVyID0gJGZpbHRlcjsKaWYoICRmaWx0ZXIgIT0gJycgKQoJewoJCSR0bXAgPSBleHBsb2RlKCcgJywkYWRqdXN0ZWRfZmlsdGVyKTsKCQkkYWRqdXN0ZWRfZmlsdGVyID0gJyUnLiR0bXBbMF0uJyUnOwoJfQoJCSAKLy8gZ2V0IHJlYWR5IGZvciBhcnJheSBwcm9jZXNzaW5nCiRyb3dhcnJheSA9IGFycmF5KCk7CiRxdWVyeSA9ICcnOwokcXVlcnkxID0gJyc7CiRkYnJlc3VsdCA9IGZhbHNlOwokcXBhcm1zID0gYXJyYXkoKTsKICAgICAKaWYoIHRyaW0oJHBhcmFtc1snY2F0ZWdvcnknXSkgPT0gJ2FsbCcgKQoJewoJCS8vCgkJLy8gaGFuZGxlIGRpc3BsYXkgYWxsIGxpc3RhYmxlIGNhdGVnb3JpZXMKCQkvLwoKCQkvLyBhc3N1bWUgc3VtbWFyeSBtb2RlLgoJCSRwYXJhbXNbJ21vZGUnXSA9ICdzdW1tYXJ5JzsKCiAgICAkcXVlcnkxID0gIlNFTEVDVCBjb3VudCh1cGxvYWRfaWQpIEFTIGNvdW50CiAgICAgICAgICAgICAgICBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc19jYXRlZ29yaWVzIEFTIEEsIi4KCQkJICAgICAgICAgICAgY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2FkcyBBUyBCIAogICAgICAgICAgICAgICAgV0hFUkUgdXBsb2FkX2NhdGVnb3J5X2xpc3RhYmxlID0gMSI7CgkJJHF1ZXJ5ICA9ICJTRUxFQ1QgdXBsb2FkX2lkLCBBLnVwbG9hZF9jYXRlZ29yeV9pZCBBUwogICAgICAgICAgICAgICAgICB1cGxvYWRfY2F0ZWdvcnlfaWQsIHVwbG9hZF9uYW1lLCB1cGxvYWRfYXV0aG9yLCAKICAgICAgICAgICAgICAgICAgdXBsb2FkX3N1bW1hcnksIHVwbG9hZF9kZXNjcmlwdGlvbiwKICAgICAgICAgICAgICAgICAgdXBsb2FkX2lwLCB1cGxvYWRfc2l6ZSwgdXBsb2FkX2RhdGUsIHVwbG9hZF9jYXRlZ29yeV9uYW1lLAogICAgICAgICAgICAgICAgICB1cGxvYWRfY2F0ZWdvcnlfZGVsZXRhYmxlLCB1cGxvYWRfdGh1bWJuYWlsCiAgICAgICAgICAgICAgICBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc19jYXRlZ29yaWVzIEFTIEEsIi4KCQkJICAgICAgICAgICAgY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2FkcyBBUyBCIAogICAgICAgICAgICAgICAgV0hFUkUgdXBsb2FkX2NhdGVnb3J5X2xpc3RhYmxlID0gMSI7CgkJaWYoICRrZXkgIT0gbnVsbCApCgkJCXsKCQkJCSRxdWVyeTEgLj0gIiBBTkQgdXBsb2FkX2tleSA9ID8iOwoJCQkJJHF1ZXJ5IC49ICIgQU5EIHVwbG9hZF9rZXkgPSA/IjsKCQkJCSRxcGFybXNbXSA9ICRrZXk7CgkJCX0KCQlpZiggJGFkanVzdGVkX2ZpbHRlciAhPSAnJyApCgkJCXsKCQkJCSRxdWVyeTEgLj0gIiBBTkQgdXBsb2FkX25hbWUgTElLRSA/ICI7CgkJCQkkcXVlcnkgLj0gIiBBTkQgdXBsb2FkX25hbWUgTElLRSA/ICI7CgkJCQkkcXBhcm1zW10gPSAkYWRqdXN0ZWRfZmlsdGVyOwoJCQl9CgkgCgkJJHF1ZXJ5MSAuPSAiIEFORCBBLnVwbG9hZF9jYXRlZ29yeV9pZCA9IEIudXBsb2FkX2NhdGVnb3J5X2lkIi4kc29ydG9yZGVyOwoJCSRxdWVyeSAuPSAiIEFORCBBLnVwbG9hZF9jYXRlZ29yeV9pZCA9IEIudXBsb2FkX2NhdGVnb3J5X2lkIi4kc29ydG9yZGVyOwoJCSRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHF1ZXJ5LCAkcXBhcm1zICk7Cgl9CiBlbHNlIHsKCSAvLwoJIC8vIERlYWxpbmcgd2l0aCBhIHNwZWNpZmljIGNhdGVnb3J5CgkgLy8KCgkgLy8gaWYgdGhlIGNhdGVnb3J5IGlzbid0IGxpc3RhYmxlLCB3ZSBjYW4gc3RvcCBoZXJlCgkgaWYoICRjYXRlZ29yeVsndXBsb2FkX2NhdGVnb3J5X2xpc3RhYmxlJ10gPT0gMCApIHsKCQkgcmV0dXJuOwoJIH0KCSAkY2F0ZWdvcnlfaWQgPSAkY2F0ZWdvcnlbJ3VwbG9hZF9jYXRlZ29yeV9pZCddOwoKCSAvLyBjaGVjayBmb3IgcGVybWlzc2lvbiwgaWYgRkVVIG1vZHVsZSBleGlzdHMsIGFuZCB0aGUgCgkgLy8gdXBsb2FkcyBncm91cGxpc3QgaXMKCSAvLyBub3QgbnVsbCwgYW5kIHRoZSByZXR1cm5pZCBpcyBub3QgZW1wdHkgKHdlJ3JlIG9uIHRoZSBmcm9udGVuZCkKCSAkcmVzdWx0ID0gJHRoaXMtPl9DaGVja0Rvd25sb2FkU2VjdXJpdHkoJGNhdGVnb3J5KTsKCSBpZiggISRyZXN1bHQgKQoJCSB7CgkJCSAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UoICRpZCwgJHBhcmFtcywgJHJldHVybmlkLAoJCQkJCQkJCQkJCQkJCQkJICR0aGlzLT5MYW5nKCdlcnJvcl9wZXJtaXNzaW9uZGVuaWVkJykgKTsKCQkJIHJldHVybjsKCQkgfQoKCSAvLyB3ZSdyZSBnb25uYSBzY2FuIHRoZSBkaXJlY3RvcnkgYW5kIHNlZSBpZiBhbnlib2R5IHVwbG9hZGVkCgkgLy8gYW55IGZpbGVzIHZpYSBmdHAgb3Igc2NwIG9yIGFueXRoaW5nIHNpbGx5LgoJICRjYXRwYXRoMSA9ICR0aGlzLT5nZXRDYXRlZ29yeVBhdGhGcm9tSUQoJGNhdGVnb3J5X2lkKTsKCSAkZGlyID0gJHRoaXMtPl9jYXRlZ29yeVBhdGgoICRjYXRwYXRoMSApOwoJICR0aGlzLT5TbWFydFNjYW5EaXJlY3RvcnkoICRjYXRlZ29yeV9pZCwgJGRpciApOwoKCSAvLyBOb3cgaGFuZGxlIG91ciBtb2RlCgkgc3dpdGNoKCB0cmltKCRwYXJhbXNbJ21vZGUnXSApICkgewoJIGNhc2UgJ3NlbGVjdCc6CgkJIHsKCQkJIC8vIGRpc3BsYXkgYSBkcm9wZG93biBsaXN0IG9mIGFsbCBvZiB0aGUgbWF0Y2hpbmcgZmlsZXMKCQkJICRxdWVyeSA9ICJTRUxFQ1QgVS4qLEMudXBsb2FkX2NhdGVnb3J5X2RlbGV0YWJsZSAKICAgICAgICAgICAgICAgICBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2FkcyBVCiAgICAgICAgICAgICAgICAgTEVGVCBKT0lOICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc19jYXRlZ29yaWVzIEMKICAgICAgICAgICAgICAgICBPTiBVLnVwbG9hZF9jYXRlZ29yeV9pZCA9IEMudXBsb2FkX2NhdGVnb3J5X2lkIAogICAgICAgICAgICAgICAgIFdIRVJFIFUudXBsb2FkX2NhdGVnb3J5X2lkID0gPyI7CgkJCSAkcXBhcm1zW10gPSAkY2F0ZWdvcnlfaWQ7CgkJCSBpZiggJGtleSAhPSBOVUxMICkKCQkJCSB7CgkJCQkJICRxdWVyeSAuPSAiIEFORCB1cGxvYWRfa2V5ID0gPyI7CgkJCQkJICRxcGFybXNbXSA9ICRrZXk7CgkJCQkgfQoJCQkgJHF1ZXJ5IC49ICRzb3J0b3JkZXIuJGxpbWl0c3RyOwoJCQkgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlICgkcXVlcnksICRxcGFybXMpOwoJCQkgJGl0ZW1zID0gYXJyYXkoKTsKCQkJIGlmKCBpc3NldCgkcGFyYW1zWydzZWxlY3Rub25lJ10pICkKCQkJCSB7CgkJCQkJICRpdGVtc1skdGhpcy0+TGFuZygnbm9uZScpXSA9IC0xOwoJCQkJIH0KCQkJIHdoaWxlKCAkZGJyZXN1bHQgJiYgKCRyb3cgPSAkZGJyZXN1bHQtPkZldGNoUm93KCkpICkgewoJCQkJICRpdGVtc1skcm93Wyd1cGxvYWRfbmFtZSddXSA9ICRyb3dbJ3VwbG9hZF9pZCddOwoJCQkgfQoJCQkgZWNobyAkdGhpcy0+Q3JlYXRlSW5wdXREcm9wZG93bigkc2VsZWN0Zm9ybSwkc2VsZWN0bmFtZSwKCQkJCQkJCQkJCQkJCQkJCQkJCSAkaXRlbXMsLTEsJHNlbGVjdHZhbHVlKTsKCQkJICRkb19xdWVyeSA9IGZhbHNlOwoJCSB9CgkJIGJyZWFrOwoKCSBjYXNlICdzdW1tYXJ5JzoKCQkgewoJCQkgLy8gZGlzcGxheSBpbmZvIGFib3V0IGFsbCBvZiB0aGUgZmlsZXMgaW4gdGhlIGNhdGVnb3J5CgkJCSAvLyBwb3NzaWJseSBsaW1pdGVkIGJ5IGZpbGVzIG9mIGEgc3BlY2lmYyB0eXBlCgkJCSAkcXBhcm1zID0gYXJyYXkoJGNhdGVnb3J5X2lkKTsKCQkJICRxdWVyeTEgPQoJCQkJICJTRUxFQ1QgY291bnQodXBsb2FkX2lkKSBBUyBjb3VudAogICAgICAgICAgICBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2FkcyAKICAgICAgICAgICBXSEVSRSB1cGxvYWRfY2F0ZWdvcnlfaWQgPSA/IjsKCQkJICRxdWVyeSA9ICJTRUxFQ1QgVS4qLEMudXBsb2FkX2NhdGVnb3J5X2RlbGV0YWJsZSAKICAgICAgICAgICAgICAgICBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2FkcyBVCiAgICAgICAgICAgICAgICAgTEVGVCBKT0lOICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc19jYXRlZ29yaWVzIEMKICAgICAgICAgICAgICAgICBPTiBVLnVwbG9hZF9jYXRlZ29yeV9pZCA9IEMudXBsb2FkX2NhdGVnb3J5X2lkIAogICAgICAgICAgICAgICAgIFdIRVJFIFUudXBsb2FkX2NhdGVnb3J5X2lkID0gPyI7Ci8vIAkJCSAkcXVlcnkgPQovLyAJCQkJICJTRUxFQ1QgKiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2FkcyAKLy8gICAgICAgICAgICBXSEVSRSB1cGxvYWRfY2F0ZWdvcnlfaWQgPSA/IjsKCQkJIGlmKCAka2V5ICE9IG51bGwgKQoJCQkJIHsKCQkJCQkgJHF1ZXJ5MSAuPSAiIEFORCB1cGxvYWRfa2V5ID0gPyI7CgkJCQkJICRxdWVyeSAuPSAiIEFORCB1cGxvYWRfa2V5ID0gPyI7CgkJCQkJICRxcGFybXNbXSA9ICRrZXk7CgkJCQkgfQoJCQkgaWYoICRhZGp1c3RlZF9maWx0ZXIgIT0gJycgKQoJCQkJIHsKCQkJCQkgJHF1ZXJ5MSAuPSAiIEFORCB1cGxvYWRfbmFtZSBMSUtFID8iOwoJCQkJCSAkcXVlcnkgLj0gIiBBTkQgdXBsb2FkX25hbWUgTElLRSA/IjsKCQkJCQkgJHFwYXJtc1tdID0gJGFkanVzdGVkX2ZpbHRlcjsKCQkJCSB9CgkJCSAvLyBibGFoIGJsYWgKCQkJICRxdWVyeTEgLj0gJHNvcnRvcmRlcjsKCQkJICRxdWVyeSAuPSAkc29ydG9yZGVyOwoJCSB9CgkJIGJyZWFrOwoJIH0gLy8gc3dpdGNoCiB9CgoKJG1hdGNoZXMgPSAwOwoKaWYoICRkb19xdWVyeSA9PSB0cnVlICkKCXsKCQkvLyBnZXQgdGhlIHRvdGFsIG51bWJlciBvZiByb3dzCgkJJG1hdGNoZXMgPSAkZGItPkdldE9uZSgkcXVlcnkxLCAkcXBhcm1zKTsKCgkJLy8gY2FsY3VsYXRlIHRoZSBudW1iZXIgb2YgcGFnZXMKCQkkbnVtcGFnZXMgPSAoaW50KSgkbWF0Y2hlcyAvICRwYWdlbGltaXQpOwoJCWlmKCAkbWF0Y2hlcyAlICRwYWdlbGltaXQgPiAwICkKCQkJewoJCQkJJG51bXBhZ2VzKys7CgkJCX0KCQkkc3RhcnRvZmZzZXQgPSAoJHBhZ2VudW0tMSkgKiAkcGFnZWxpbWl0OwoKCQkkZGJyZXN1bHQgPSAkZGItPlNlbGVjdExpbWl0KCRxdWVyeSwkcGFnZWxpbWl0LCRzdGFydG9mZnNldCwkcXBhcm1zKTsKCgkJLy8gc2V0dXAgc3RyaW5ncwoJCSRzbWFydHktPmFzc2lnbignbnVtcGFnZXMnLCRudW1wYWdlcyk7CgkJJHNtYXJ0eS0+YXNzaWduKCdwYWdlbnVtJywkcGFnZW51bSk7CgkJJHNtYXJ0eS0+YXNzaWduKCdwYWdlbGltaXQnLCRwYWdlbGltaXQpOwoJCSRzbWFydHktPmFzc2lnbignbWF0Y2hlcycsICRtYXRjaGVzICk7CgkJaWYoICRwYWdlbnVtID4gMSApCgkJCXsKCQkJCSRwYXJtcyA9ICRwYXJhbXM7CgkJCQkkcGFybXNbJ3BhZ2VudW0nXSA9IDE7CgkJCQkkc21hcnR5LT5hc3NpZ24oJ2ZpcnN0cGFnZV91cmwnLAoJCQkJCQkJCQkJCQkkdGhpcy0+Q3JlYXRlTGluaygkaWQsJ2RlZmF1bHQnLCRyZXR1cm5pZCwnJywKCQkJCQkJCQkJCQkJCQkJCQkJCQkJJHBhcm1zLCcnLHRydWUpKTsKCQkJCSRwYXJtcyA9ICRwYXJhbXM7CgkJCQkkcGFybXNbJ3BhZ2VudW0nXSA9ICRwYWdlbnVtIC0gMTsKCQkJCSRzbWFydHktPmFzc2lnbigncHJldnBhZ2VfdXJsJywKCQkJCQkJCQkJCQkJJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCdkZWZhdWx0JywkcmV0dXJuaWQsJycsCgkJCQkJCQkJCQkJCQkJCQkJCQkJCSRwYXJtcywnJyx0cnVlKSk7CgkJCX0KCQlpZiggJHBhZ2VudW0gPCAkbnVtcGFnZXMgKQoJCQl7CgkJCQkkcGFybXMgPSAkcGFyYW1zOwoJCQkJJHBhcm1zWydwYWdlbnVtJ10gPSAkbnVtcGFnZXM7CgkJCQkkc21hcnR5LT5hc3NpZ24oJ2xhc3RwYWdlX3VybCcsCgkJCQkJCQkJCQkJCSR0aGlzLT5DcmVhdGVMaW5rKCRpZCwnZGVmYXVsdCcsJHJldHVybmlkLCcnLAoJCQkJCQkJCQkJCQkJCQkJCQkJCQkkcGFybXMsJycsdHJ1ZSkpOwoKCQkJCSRwYXJtcyA9ICRwYXJhbXM7CgkJCQkkcGFybXNbJ3BhZ2VudW0nXSA9ICRwYWdlbnVtICsgMTsKCQkJCSRzbWFydHktPmFzc2lnbignbmV4dHBhZ2VfdXJsJywKCQkJCQkJCQkJCQkJJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCdkZWZhdWx0JywkcmV0dXJuaWQsJycsCgkJCQkJCQkJCQkJCQkJCQkJCQkJCSRwYXJtcywnJyx0cnVlKSk7CgkJCX0KCQkkc21hcnR5LT5hc3NpZ24oJ2ZpcnN0cGFnZScsJHRoaXMtPkxhbmcoJ2ZpcnN0cGFnZScpKTsKCQkkc21hcnR5LT5hc3NpZ24oJ2ZpcnN0cGFnZV9hcnJvdycsJHRoaXMtPkxhbmcoJ2ZpcnN0cGFnZV9hcnJvdycpKTsKCQkkc21hcnR5LT5hc3NpZ24oJ3ByZXZwYWdlJywkdGhpcy0+TGFuZygncHJldnBhZ2UnKSk7CgkJJHNtYXJ0eS0+YXNzaWduKCdwcmV2cGFnZV9hcnJvdycsJHRoaXMtPkxhbmcoJ3ByZXZwYWdlX2Fycm93JykpOwoJCSRzbWFydHktPmFzc2lnbignbmV4dHBhZ2UnLCR0aGlzLT5MYW5nKCduZXh0cGFnZScpKTsKCQkkc21hcnR5LT5hc3NpZ24oJ25leHRwYWdlX2Fycm93JywkdGhpcy0+TGFuZygnbmV4dHBhZ2VfYXJyb3cnKSk7CgkJJHNtYXJ0eS0+YXNzaWduKCdsYXN0cGFnZScsJHRoaXMtPkxhbmcoJ2xhc3RwYWdlJykpOwoJCSRzbWFydHktPmFzc2lnbignbGFzdHBhZ2VfYXJyb3cnLCR0aGlzLT5MYW5nKCdsYXN0cGFnZV9hcnJvdycpKTsKCQkkc21hcnR5LT5hc3NpZ24oJ3BhZ2V0ZXh0JywkdGhpcy0+TGFuZygncGFnZScpKTsKCQkkc21hcnR5LT5hc3NpZ24oJ29mdGV4dCcsJHRoaXMtPkxhbmcoJ29mJykpOwoJCSRzbWFydHktPmFzc2lnbignbWF0Y2hlc3RleHQnLCR0aGlzLT5MYW5nKCdtYXRjaGVzZm91bmQnKSk7CgkJJHNtYXJ0eS0+YXNzaWduKCdjYXRlZ29yeScsJHRoaXMtPkxhbmcoJ2NhdGVnb3J5JykpOwoJCSRzbWFydHktPmFzc2lnbignaWQnLCR0aGlzLT5MYW5nKCdpZCcpKTsKCQkkc21hcnR5LT5hc3NpZ24oJ2RlbGV0ZScsJHRoaXMtPkxhbmcoJ2RlbGV0ZScpKTsKCQkkc21hcnR5LT5hc3NpZ24oJ2FyZXlvdXN1cmUnLCR0aGlzLT5MYW5nKCdhcmV5b3VzdXJlJykpOwoJCSRzbWFydHktPmFzc2lnbignbmFtZScsJHRoaXMtPkxhbmcoJ25hbWUnKSk7CgkJJHNtYXJ0eS0+YXNzaWduKCdkYXRlJywkdGhpcy0+TGFuZygnZGF0ZScpKTsKCQkkc21hcnR5LT5hc3NpZ24oJ2F1dGhvcicsJHRoaXMtPkxhbmcoJ2F1dGhvcicpKTsKCQkkc21hcnR5LT5hc3NpZ24oJ3NpemUnLCR0aGlzLT5MYW5nKCdzaXpla2InKSk7CgkJJHNtYXJ0eS0+YXNzaWduKCdkZXRhaWxzJywkdGhpcy0+TGFuZygnZGV0YWlscycpKTsKCQkkc21hcnR5LT5hc3NpZ24oJ3N1bW1hcnknLCR0aGlzLT5MYW5nKCdzdW1tYXJ5JykpOwoJCSRzbWFydHktPmFzc2lnbignZGVzY3JpcHRpb24nLCR0aGlzLT5MYW5nKCdkZXNjcmlwdGlvbicpKTsKCQkkc21hcnR5LT5hc3NpZ24oJ3RodW1ibmFpbCcsJHRoaXMtPkxhbmcoJ3RodW1ibmFpbCcpKTsKCQkkc21hcnR5LT5hc3NpZ24oJ2ljb24nLCR0aGlzLT5MYW5nKCdpY29uJykpOwoJCSRzbWFydHktPmFzc2lnbignaW1hZ2UnLCR0aGlzLT5MYW5nKCdpbWFnZScpKTsKCgkJaWYgKCEkZGJyZXN1bHQpCgkJCXsKCQkJCS8vIG1heWJlIHRoZXJlIGFyZSBubyBmaWxlcyBpbiB0aGlzIGNhdGVnb3J5CgkJCQkkc21hcnR5LT5hc3NpZ24gKCdtZXNzYWdlJywgJHRoaXMtPkxhbmcgKCdlcnJvcl9ub2ZpbGVzJykpOwoJCQl9CgoJCS8vIGRvIHRoZSBsaXN0CgkJd2hpbGUgKCRyb3cgPSAkZGJyZXN1bHQtPkZldGNoUm93KCkpCgkJCXsKCQkJCSRvbmVyb3cgPSBuZXcgU3RkQ2xhc3MgKCk7CgkJCQlmb3JlYWNoKCAkcm93IGFzICRrZXkgPT4gJHZhbHVlICkKCQkJCQl7CgkJCQkJCSRvbmVyb3ctPiRrZXkgPSAkdmFsdWU7CgkJCQkJfQoKCQkJCWlmKCAkcGFyYW1zWydjYXRlZ29yeSddID09ICdhbGwnICkKCQkJCQl7CgkJCQkJCSRvbmVyb3ctPmNhdGVnb3J5ID0gJHJvd1sndXBsb2FkX2NhdGVnb3J5X25hbWUnXTsKCQkJCQl9CgkJCQllbHNlIAoJCQkJCXsKCQkJCQkJJG9uZXJvdy0+Y2F0ZWdvcnkgPSAkcGFyYW1zWydjYXRlZ29yeSddOwoJCQkJCX0KCgkJCQkkb25lcm93LT5zZW5kZmlsZV91cmwgPQoJCQkJCSR0aGlzLT5DcmVhdGVMaW5rICgkaWQsICdzZW5kZmlsZScsICRzZW5kZmlsZXBhZ2UsICcnLAoJCQkJCQkJCQkJCQkJCSBhcnJheSgndXBsb2FkX2lkJz0+JHJvd1sndXBsb2FkX2lkJ10pLAoJCQkJCQkJCQkJCQkJCSAnJywgdHJ1ZSwgdHJ1ZSwgJycsIGZhbHNlKTsKCgkJCQkkb25lcm93LT5kb3dubG9hZF91cmwgPQoJCQkJCSR0aGlzLT5DcmVhdGVMaW5rICgkaWQsICdnZXRmaWxlJywgJHJldHVybmlkLCAnJywgCgkJCQkJCQkJCQkJCQkJIGFycmF5ICgndXBsb2FkX2lkJyA9PiAkcm93Wyd1cGxvYWRfaWQnXSksIAoJCQkJCQkJCQkJCQkJCSAnJywgdHJ1ZSwgdHJ1ZSwgJycsIGZhbHNlLAoJCQkJCQkJCQkJCQkJCSAkdGhpcy0+X2dldEZpbGVVUkwoJHJvd1sndXBsb2FkX2lkJ10sJHJvd1sndXBsb2FkX25hbWUnXSkpOwoJCQkJJG9uZXJvdy0+bmFtZWxpbmsgPQoJCQkJCSR0aGlzLT5DcmVhdGVMaW5rICgkaWQsICdnZXRmaWxlJywgJHJldHVybmlkLCAkcm93Wyd1cGxvYWRfbmFtZSddLAoJCQkJCQkJCQkJCQkJCSBhcnJheSAoJ3VwbG9hZF9pZCcgPT4gJHJvd1sndXBsb2FkX2lkJ10pLAoJCQkJCQkJCQkJCQkJCSAnJywgZmFsc2UsIHRydWUsICcnLCBmYWxzZSwKCQkJCQkJCQkJCQkJCQkgJHRoaXMtPl9nZXRGaWxlVVJMKCRyb3dbJ3VwbG9hZF9pZCddLCRyb3dbJ3VwbG9hZF9uYW1lJ10pKTsKCgkJCQlpZiggJHRoaXMtPkdldFByZWZlcmVuY2UoJ2FsbG93X2RlbGV0ZScsMCkgPT0gMSAmJgoJCQkJCQkkcm93Wyd1cGxvYWRfY2F0ZWdvcnlfZGVsZXRhYmxlJ10gPT0gMSkKCQkJCQl7CgkJCQkJCSRvbmVyb3ctPmRlbGV0ZV91cmwgPQoJCQkJCQkJJHRoaXMtPkNyZWF0ZUxpbmsoICRpZCwgJ2RlbGV0ZV9maWxlJywgJHJldHVybmlkLCAnJywKCQkJCQkJCQkJCQkJCQkJCSBhcnJheSgndXBsb2FkX2lkJyA9PiAkcm93Wyd1cGxvYWRfaWQnXSksCgkJCQkJCQkJCQkJCQkJCQkgJycsIHRydWUgKTsKCQkJCQl9CgoJCQkJJG9uZXJvdy0+YXV0aG9yID0gJHJvd1sndXBsb2FkX2F1dGhvciddOwoJCQkJewoJCQkJCSRwYXJtcyA9ICRwYXJhbXM7CgkJCQkJJHBhcm1zWydtb2RlJ10gPSAnc2luZ2xlJzsKCQkJCQkkcGFybXNbJ3VwbG9hZF9pZCddID0gJHJvd1sndXBsb2FkX2lkJ107CgkJCQkJCQkgCgkJCQkJLy8gbm93IGhhbmRsZSB0aGUgZGV0YWlsIGxpbmssIGRldGFpbCB1cmwKCQkJCQkkb25lcm93LT5kZXRhaWxsaW5rID0KCQkJCQkJJHRoaXMtPkNyZWF0ZUZyb250ZW5kTGluayAoJGlkLCAkcmV0dXJuaWQsICdkZWZhdWx0JywgCgkJCQkJCQkJCQkJCQkJCQkJCQkgJHRoaXMtPkxhbmcoJ2RldGFpbHMnKSwKCQkJCQkJCQkJCQkJCQkJCQkJCSAkcGFybXMsICcnLCBmYWxzZSwgdHJ1ZSwgJycsIGZhbHNlCgkJCQkJCQkJCQkJCQkJCQkJCQkgKTsKCQkJCQkkb25lcm93LT5kZXRhaWx1cmwgPQoJCQkJCQkkdGhpcy0+Q3JlYXRlRnJvbnRlbmRMaW5rICgkaWQsICRyZXR1cm5pZCwgJ2RlZmF1bHQnLCAKCQkJCQkJCQkJCQkJCQkJCQkJCSAkdGhpcy0+TGFuZygnZGV0YWlscycpLAoJCQkJCQkJCQkJCQkJCQkJCQkJICRwYXJtcywgJycsIHRydWUsIGZhbHNlKTsKCQkJCX0KCQkJCSRvbmVyb3ctPnN1bW1hcnkgPSAkcm93Wyd1cGxvYWRfc3VtbWFyeSddOwoJCQkJaWYoIGlzc2V0KCAkcm93Wyd1cGxvYWRfc3VtbWFyeSddICkgJiYgJHJvd1sndXBsb2FkX3N1bW1hcnknXSAhPSAiIiApCgkJCQkJewoJCQkJCQkkb25lcm93LT5zdW1tYXJ5bGluayA9CgkJCQkJCQkkdGhpcy0+Q3JlYXRlTGluayAoJGlkLCAnZ2V0ZmlsZScsICRyZXR1cm5pZCwgJHJvd1sndXBsb2FkX3N1bW1hcnknXSwKCQkJCQkJCQkJCQkJCQkJCSBhcnJheSAoJ3VwbG9hZF9pZCcgPT4gJHJvd1sndXBsb2FkX2lkJ10pLAoJCQkJCQkJCQkJCQkJCQkJICcnLCBmYWxzZSwgdHJ1ZSwgJycsIGZhbHNlLAoJCQkJCQkJCQkJCQkJCQkJICR0aGlzLT5fZ2V0RmlsZVVSTCgkcm93Wyd1cGxvYWRfaWQnXSwkcm93Wyd1cGxvYWRfbmFtZSddKSk7OwoJCQkJCX0KCgkJCQkvLyBvcmlnaW5hbCBmaWxlIFVSTAoJCQkJJGNhdHBhdGggPSAkdGhpcy0+Z2V0Q2F0ZWdvcnlQYXRoRnJvbUZpbGVJRCgkcm93Wyd1cGxvYWRfaWQnXSk7CgkJCQkkb25lcm93LT5vcmlnZmlsZV91cmwgPSAkY29uZmlnWyd1cGxvYWRzX3VybCddLiIvJGNhdHBhdGgvIi4kcm93Wyd1cGxvYWRfbmFtZSddOwoKCQkJCS8vIHRodW1ibmFpbAoJCQkJaWYoICFlbXB0eSgkcm93Wyd1cGxvYWRfdGh1bWJuYWlsJ10pICkKCQkJCQl7CgkJCQkJCSR0bmZpbGUgPSAkdGhpcy0+X2NhdGVnb3J5UGF0aCggJGNhdHBhdGguRElSRUNUT1JZX1NFUEFSQVRPUi4kcm93Wyd1cGxvYWRfdGh1bWJuYWlsJ10gKTsKCQkJCQkJaWYoIGZpbGVfZXhpc3RzKCAkdG5maWxlICkgKQoJCQkJCQkJewoJCQkJCQkJCSR0bnVybCA9ICRjb25maWdbJ3VwbG9hZHNfdXJsJ10uIi8iLiRjYXRwYXRoLiIvIi4kcm93Wyd1cGxvYWRfdGh1bWJuYWlsJ107CgkJCQkJCQkJJG9uZXJvdy0+dGh1bWJuYWlsX3VybCA9ICR0bnVybDsKCQkJCQkJCX0KCQkJCQl9CgkJCQkJCSAKCQkJCS8vIGdldCB0aGUgZmlsZXMgZXh0ZW5zaW9uCgkJCQkvLyBzZWUgaWYgd2UncmUgYWxsb3dlZCB0byBkaXNwbGF5IGl0IGFzIGFuIGltYWdlCgkJCQkvLyBpZiB3ZSBhcmUgdGhlbiBjcmVhdGUgdGhlIGltYWdlX3VybAoJCQkJJGZpbGVleHRlbnNpb24gPSBzdHJ0b2xvd2VyKHN0cnJjaHIoJHJvd1sndXBsb2FkX25hbWUnXSwnLicpKTsKCQkJCSR0aHVtYl9leHRfYXJyID0gZXhwbG9kZSgiLCIsCgkJCQkJCQkJCQkJCQkJCQkgJHRoaXMtPkdldFByZWZlcmVuY2UoJ2F1dG90aHVtYm5haWxfZXh0ZW5zaW9ucycpKTsKCQkJCWdsb2JhbCAkZ0NtczsKCQkJCQkJIAoJCQkJZm9yZWFjaCggJHRodW1iX2V4dF9hcnIgYXMgJHRodW1iX2V4dCApCgkJCQkJewoJCQkJCQlpZiggIi4iLiR0aHVtYl9leHQgPT0gJGZpbGVleHRlbnNpb24gKQoJCQkJCQkJewoJCQkJCQkJCSRvbmVyb3ctPmltYWdlX3VybCA9CgkJCQkJCQkJCSR0aGlzLT5DcmVhdGVMaW5rICgkaWQsICdnZXRpbWFnZScsICRyZXR1cm5pZCwgJycsCgkJCQkJCQkJCQkJCQkJCQkJCSBhcnJheSAoJ3Nob3d0ZW1wbGF0ZSc9PidmYWxzZScsCgkJCQkJCQkJCQkJCQkJCQkJCQkJCQkndXBsb2FkX2lkJz0+JHJvd1sndXBsb2FkX2lkJ10pLAoJCQkJCQkJCQkJCQkJCQkJCQkgJycsIHRydWUgKTsKCQkJCQkJCQlicmVhazsKCQkJCQkJCX0KCQkJCQl9CgkJCQkJCSAKCQkJCS8vIGZpbGV0eXBlCgkJCQkkZmlsZXR5cGUgPSAkdGhpcy0+X0dldEZpbGVUeXBlKCAkcm93Wyd1cGxvYWRfbmFtZSddICk7CgkJCQlpZiggJGZpbGV0eXBlcyAhPSAnJyApCgkJCQkJewoJCQkJCQkkcmVzID0gYXJyYXlfc2VhcmNoKCAkZmlsZXR5cGVbJ25hbWUnXSwgZXhwbG9kZSgnLCcsJGZpbGV0eXBlcyApICk7CgkJCQkJCWlmKCAkcmVzID09PSBOVUxMIHx8ICRyZXMgPT09IEZBTFNFICkKCQkJCQkJCXsKCQkJCQkJCQkvLyB3ZSBoYXZlIGZvdW5kIGEgZmlsZSB0aGF0IGlzbid0IGEgdHlwZSB3ZSByZXF1ZXN0ZWQuCgkJCQkJCQkJY29udGludWU7CgkJCQkJCQl9CgkJCQkJfQoJCQkJCQkgCgkJCQkkaW1ncGF0aCA9ICdtb2R1bGVzLycuYmFzZW5hbWUoZGlybmFtZShfX0ZJTEVfXykpLicvaW1hZ2VzLyc7CgkJCQlpZiggJGZpbGV0eXBlICE9PSBmYWxzZSApCgkJCQkJewoJCQkJCQkkb25lcm93LT5pY29udXJsID0gJGltZ3BhdGguJGZpbGV0eXBlWydpbWFnZSddOwoJCQkJCQkkb25lcm93LT5maWxldHlwZSA9ICRmaWxldHlwZTsKCQkJCQl9CgkJCQllbHNlCgkJCQkJewoJCQkJCQkkb25lcm93LT5pY29udXJsID0gJGltZ3BhdGguJ3Vua25vd24ucG5nJzsKCQkJCQl9CgkJCQkJCSAKCQkJCSRvbmVyb3ctPmRlc2NyaXB0aW9uID0gJHJvd1sndXBsb2FkX2Rlc2NyaXB0aW9uJ107CgkJCQkkb25lcm93LT5pcCA9ICRyb3dbJ3VwbG9hZF9pcCddOwoJCQkJJG9uZXJvdy0+c2l6ZSA9IGludHZhbCgkcm93Wyd1cGxvYWRfc2l6ZSddIC8gMTAyNC4wICsgMC41KTsKCQkJCSRvbmVyb3ctPmRhdGUgPSAkcm93Wyd1cGxvYWRfZGF0ZSddOwoJCQkJCQkgCgoJCQkJLy8gZ2V0IGV4dHJhIGZpZWxkcy4KCQkJCXsKCQkJCQkkcXVlcnkgPSAnU0VMRUNUIEEuaWQsQS5uYW1lLEEudHlwZSxCLnVwbG9hZF9pZCxCLnZhbHVlIAogICAgICAgICAgICAgIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzX2ZpZWxkZGVmcyBBIAogICAgICAgICAgICAgIExFRlQgSk9JTiAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHNfZmllbGR2YWxzIEIgCiAgICAgICAgICAgICAgICBPTiBBLmlkID0gQi5mbGRfaWQgCiAgICAgICAgICAgICBXSEVSRSBCLnVwbG9hZF9pZCA9ID8gQU5EIEEucHVibGljID0gMQogICAgICAgICAgICAgT1JERVIgQlkgQS5pb3JkZXIgQVNDJzsKCQkJCQkkdG1wID0gJGRiLT5HZXRBcnJheSgkcXVlcnksYXJyYXkoJHJvd1sndXBsb2FkX2lkJ10pKTsKCQkJCQlpZiggJHRtcCApCgkJCQkJCXsKCQkJCQkJCSRvbmVyb3ctPmZpZWxkcyA9ICR0aGlzLT5hcnJheV90b19oYXNoKCR0bXAsJ25hbWUnKTsKCQkJCQkJfQoJCQkJfQoKCgkJCQkkcm93YXJyYXlbXSA9ICRvbmVyb3c7CgkJCX0KCQkJCSAKCQkkc21hcnR5LT5hc3NpZ24gKCdpdGVtcycsICRyb3dhcnJheSk7CgkJJHNtYXJ0eS0+YXNzaWduICgnaXRlbWNvdW50JywgY291bnQoJHJvd2FycmF5KSk7Cgl9CgoKLy8gRGlzcGxheSB0aGUgcG9wdWxhdGVkIHRlbXBsYXRlCmlmKCRwYXJhbXNbJ21vZGUnXSAhPSAnc2VsZWN0JykKCXsKCQllY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGVGcm9tRGF0YWJhc2UgKCR0ZW1wbGF0ZSk7Cgl9Cgo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/action.defaultadmin.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojIEF1dGhvcjogUm9iZXJ0IENhbXBiZWxsIDxyb2JAdGVjaGNvbS5keW5kbnMub3JnPgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDoJLy93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgppZiAoISR0aGlzLT5DaGVja1Blcm1pc3Npb24gKCdNYW5hZ2UgVXBsb2FkcycpKQogIHsKCgovLyBnZXQgdGhlIGN1cnJlbnQgY2F0ZWdvcnkgZm9yIHRoZSBmaWx0ZXIKJGN1cmNhdGVnb3J5ID0KICAgIChpc3NldCAoJHBhcmFtc1snY3VyY2F0ZWdvcnknXSkgPyAkcGFyYW1zWydjdXJjYXRlZ29yeSddIDogJycpOwppZiAoaXNzZXQgKCRwYXJhbXNbJ3N1Ym1pdGNhdGVnb3J5J10pKQogIHsKICAgICRjdXJjYXRlZ29yeSA9CiAgICAgIChpc3NldCAoJHBhcmFtc1snaW5wdXRfY2F0ZWdvcnknXSkgPyAkcGFyYW1zWydpbnB1dF9jYXRlZ29yeSddIDoKICAgICAgICcnKTsKICB9CgovLyBhcmUgd2UgdXBsb2FkaW5nIGEgZmlsZSAgICAgIAppZiAoaXNzZXQoICRwYXJhbXNbJ3N1Ym1pdHVwbG9hZCddICkgKQogIHsKICAgICRwYXJhbXNbJ2NhdGVnb3J5X2lkJ10gPSAkY3VyY2F0ZWdvcnk7CiAgICAKICAgICRyZXQgPSAkdGhpcy0+QXR0ZW1wdFVwbG9hZCggJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQgKTsKICAgIGlmKCAkcmV0WzBdID09IGZhbHNlICkKICAgICAgewoJJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlKCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwKCQkJCSAgJHJldFsxXSApOwoJcmV0dXJuOwogICAgICB9CiAgfQogIH0KCmlmKCBpbmlfZ2V0X2Jvb2xlYW4oJ3NhZmVfbW9kZScpICkKICB7CiAgICBlY2hvICc8ZGl2IGNsYXNzPSJwYWdlZXJyb3Jjb250YWluZXIiPjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+PHAgY2xhc3M9InBhZ2VlcnJvciI+Jy4kdGhpcy0+TGFuZygnd2FybmluZ19zYWZlX21vZGUnKS4nPC9wPjwvZGl2PjwvZGl2Pic7CiAgfQoKLy8gdG9wIG5hdgppZiggJHRoaXMtPkNoZWNrUGVybWlzc2lvbignTW9kaWZ5IFRlbXBsYXRlcycpICkKICB7CiAgICBlY2hvICc8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciIHN0eWxlPSJ0ZXh0LWFsaWduOiByaWdodDsgd2lkdGg6IDgwJTsiPic7CiAgICBlY2hvICR0aGlzLT5DcmVhdGVJbWFnZUxpbmsoJGlkLCdhZG1pbl90ZW1wbGF0ZXMnLCRyZXR1cm5pZCwKCQkJCSR0aGlzLT5MYW5nKCdsYmxfdGVtcGxhdGVzJyksCgkJCQknaWNvbnMvdG9wZmlsZXMvdGVtcGxhdGUuZ2lmJyxhcnJheSgpLCcnLCcnLGZhbHNlKTsKICAgIGVjaG8gJzwvZGl2Pjxici8+JzsKICB9CiAgICAKLy9UaGUgdGFicwplY2hvICR0aGlzLT5TdGFydFRhYkhlYWRlcnMgKCk7CmlmICgkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uICgnTWFuYWdlIFVwbG9hZHMnKSB8fCAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdVcGxvYWQgRmlsZXMgdG8gVXBsb2FkcycpKQogIHsKICAgIGVjaG8gJHRoaXMtPlNldFRhYkhlYWRlciAoJ2ZpbGVzJywgJHRoaXMtPkxhbmcgKCdmaWxlcycpKTsKICB9CmlmICgkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uICgnTWFuYWdlIFVwbG9hZHMnKSkKICB7CiAgICBlY2hvICR0aGlzLT5TZXRUYWJIZWFkZXIgKCdjYXRlZ29yaWVzJywgJHRoaXMtPkxhbmcgKCdjYXRlZ29yaWVzJykpOwogIH0KaWYgKCR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBTaXRlIFByZWZlcmVuY2VzJykgKQogIHsKICAgIGVjaG8gJHRoaXMtPlNldFRhYkhlYWRlciAoJ2ZpZWxkcycsICR0aGlzLT5MYW5nICgnZmllbGRfZGVmaW5pdGlvbnMnKSk7CiAgfQppZiAoJHRoaXMtPkNoZWNrUGVybWlzc2lvbiAoJ01hbmFnZSBVcGxvYWRzJykpCiAgewogICAgZWNobyAkdGhpcy0+U2V0VGFiSGVhZGVyKCAnZmlsZV90eXBlcycsCgkJCSAgICAgICR0aGlzLT5MYW5nKCAnZmlsZV90eXBlcycpKTsKICB9CmlmICgkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdNb2RpZnkgU2l0ZSBQcmVmZXJlbmNlcycpICkKICB7CiAgICBlY2hvICR0aGlzLT5TZXRUYWJIZWFkZXIgKCdhZG1pbl9wcmVmcycsCgkJCSAgICAgICR0aGlzLT5MYW5nICgncHJlZmVyZW5jZXMnKSk7CiAgfQplY2hvICR0aGlzLT5FbmRUYWJIZWFkZXJzICgpOwogICAgCi8vVGhlIGNvbnRlbnQgb2YgdGhlIHRhYnMKZWNobyAkdGhpcy0+U3RhcnRUYWJDb250ZW50ICgpOwoKaWYgKCR0aGlzLT5DaGVja1Blcm1pc3Npb24gKCdNYW5hZ2UgVXBsb2FkcycpIHx8ICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ1VwbG9hZCBGaWxlcyB0byBVcGxvYWRzJykpCiAgewogICAgLy8gdGhlIGZpbGVzIHRhYgogICAgZWNobyAkdGhpcy0+U3RhcnRUYWIgKCJmaWxlcyIpOwogICAgaW5jbHVkZShkaXJuYW1lKF9fRklMRV9fKS4nL2Z1bmN0aW9uLmFkbWluX2ZpbGVzdGFiLnBocCcpOwogICAgZWNobyAkdGhpcy0+RW5kVGFiICgpOwogIH0KaWYgKCR0aGlzLT5DaGVja1Blcm1pc3Npb24gKCdNYW5hZ2UgVXBsb2FkcycpKQogIHsKICAgIGVjaG8gJHRoaXMtPlN0YXJ0VGFiICgiY2F0ZWdvcmllcyIpOwogICAgaW5jbHVkZShkaXJuYW1lKF9fRklMRV9fKS4nL2Z1bmN0aW9uLmFkbWluX2NhdGVnb3JpZXN0YWIucGhwJyk7CiAgICBlY2hvICR0aGlzLT5FbmRUYWIgKCk7CiAgfQppZiAoJHRoaXMtPkNoZWNrUGVybWlzc2lvbignTW9kaWZ5IFNpdGUgUHJlZmVyZW5jZXMnKSApCiAgewogICAgZWNobyAkdGhpcy0+U3RhcnRUYWIgKCJmaWVsZHMiKTsKICAgIGluY2x1ZGUoZGlybmFtZShfX0ZJTEVfXykuJy9mdW5jdGlvbi5hZG1pbl9maWVsZGRlZnN0YWIucGhwJyk7CiAgICBlY2hvICR0aGlzLT5FbmRUYWIgKCk7CiAgfQppZiAoJHRoaXMtPkNoZWNrUGVybWlzc2lvbiAoJ01hbmFnZSBVcGxvYWRzJykpCiAgewogICAgZWNobyAkdGhpcy0+U3RhcnRUYWIoJ2ZpbGVfdHlwZXMnKTsKICAgIGluY2x1ZGUoZGlybmFtZShfX0ZJTEVfXykuJy9mdW5jdGlvbi5hZG1pbl9maWxldHlwZXN0YWIucGhwJyk7CiAgICBlY2hvICR0aGlzLT5FbmRUYWIoKTsKICB9CgppZiggJHRoaXMtPkNoZWNrUGVybWlzc2lvbignTW9kaWZ5IFNpdGUgUHJlZmVyZW5jZXMnKSApCiAgewogICAgZWNobyAkdGhpcy0+U3RhcnRUYWIoICdhZG1pbl9wcmVmcycgKTsKICAgIGluY2x1ZGUoZGlybmFtZShfX0ZJTEVfXykuJy9mdW5jdGlvbi5hZG1pbl9wcmVmc3RhYi5waHAnKTsKICAgIGVjaG8gJHRoaXMtPkVuZFRhYiAoKTsKICB9CgovLyBkb25lIHRhYnMKZWNobyAkdGhpcy0+RW5kVGFiQ29udGVudCAoKTsKcmV0dXJuOwoKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.deletecategory.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLXNldC1zdHlsZTpsaW51eDsgdGFiLXdpZHRoOjI7IGluZGVudC10YWJzLW1vZGU6dDsgYy1iYXNpYy1vZmZzZXQ6IDI7IC0qLQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogVXBsb2FkcyAtPSBhbGxvdyB1c2VycyB0byB1cGxvYWQgc3R1ZmYsIGEgcHNldWRvIGZpbGUgbWFuYWdlciIgbW9kdWxlCiMgQXV0aG9yOiBSb2JlcnQgQ2FtcGJlbGwgPHJvYkB0ZWNoY29tLmR5bmRucy5vcmc+CiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOgkvL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KaWYoICFpc3NldCgkZ0NtcykgKSBleGl0OwppZiggISR0aGlzLT5DaGVja1Blcm1pc3Npb24gKCdNYW5hZ2UgVXBsb2FkcycpICkgZXhpdDsKCgoJCWlmKCAhaXNzZXQoICRwYXJhbXNbJ2NhdGVnb3J5X2lkJ10gKSApCgkJewoJCQkkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UgKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLAoJCQkJJHRoaXMtPkxhbmcgKCdlcnJvcl9pbnN1ZmZpY2llbnRwYXJhbXMnLCdjYXRlZ29yeV9pZCcpKTsKCQkJcmV0dXJuOwoJCX0KCi8vIHRlc3QgdG8gc2VlIGlmIHRoZXJlIGFyZSBzdGlsbCBmaWxlcyBsZWZ0IGluIHRoaXMgY2F0ZWdvcnksIGlmIHRoZXJlIGFyZSwgdGhlbiBwdWtlCi8vIG90aGVyd2lzZSBkZWxldGUgdGhlIGRpcmVjdG9yeSB0b28gKG1heWJlKQokZGIgPSYgJHRoaXMtPkdldERiKCk7CiRxdWVyeSA9ICJTRUxFQ1QgdXBsb2FkX2lkIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzIFdIRVJFIHVwbG9hZF9jYXRlZ29yeV9pZCA9ID8iOwokZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxdWVyeSwgYXJyYXkoICRwYXJhbXNbJ2NhdGVnb3J5X2lkJ10gKSApOwppZiggJGRicmVzdWx0LT5SZWNvcmRDb3VudCgpID4gMCApCgl7CgkJJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlICgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwKCQkJCQkJCQkJCQkJCQkJJHRoaXMtPkxhbmcgKCdlcnJvcl9jYXRlZ29yeW5vdGVtcHR5JykpOwoJCXJldHVybjsKCX0KCi8vIGRpc3BsYXkgc29tZXRoaW5nIHRvIGFsbG93IHRoZSB1c2VyIHRvIGRlbGV0ZSB0aGUgY2F0ZWdvcnkuLi4uIHdpbGwgKG9wdGlvbmFsbHkpIGRlbGV0ZQovLyBhbGwgb2YgdGhlIChtYW5hZ2VkKSBmaWxlcyBpbiB0aGUgZGlyZWN0b3J5IHRvby4KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCAnd2FybmluZ19kZWxldGVjYXRlZ29yeScsCgkJCQkJCQkJCQkJICR0aGlzLT5MYW5nKCd3YXJuaW5nX2RlbGV0ZWNhdGVnb3J5JykgKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCAnc3RhcnRmb3JtJyAsCgkJCQkJCQkJCQkJICR0aGlzLT5DcmVhdGVGb3JtU3RhcnQoICRpZCwgJ2RvX2RlbGV0ZWNhdGVnb3J5JywgJHJldHVybmlkKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbiggJ2hpZGRlbicsCgkJCQkJCQkJCQkJICR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbiggJGlkLCAnY2F0ZWdvcnlfaWQnLCAkcGFyYW1zWydjYXRlZ29yeV9pZCddKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbiggJ3Byb21wdF9kZWxldGVkaXJlY3RvcnknLAoJCQkJCQkJCQkJCSAkdGhpcy0+TGFuZygncHJvbXB0X2RlbGV0ZWRpcmVjdG9yeScpICk7CiR0aGlzLT5zbWFydHktPmFzc2lnbiggJ2lucHV0X2RlbGV0ZWRpcmVjdG9yeScsCgkJCQkJCQkJCQkJICR0aGlzLT5DcmVhdGVJbnB1dENoZWNrYm94KCAkaWQsICdpbnB1dF9kZWxldGVkaXJlY3RvcnknLCAxLCAwICkpOwkJCQkJCiR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ3N1Ym1pdCcsIAoJCQkJCQkJCQkJCSAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQgKCRpZCwgJ3N1Ym1pdCcsICR0aGlzLT5MYW5nKCdzdWJtaXQnKSkpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24gKCdlbmRmb3JtJywgJHRoaXMtPkNyZWF0ZUZvcm1FbmQgKCkpOwplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ2RlbGV0ZWNhdGVnb3J5LnRwbCcpOwoKIwojIEVPRgojCj8+]]></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.delete_file.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLXNldC1zdHlsZTpsaW51eDsgdGFiLXdpZHRoOjI7IGluZGVudC10YWJzLW1vZGU6dDsgYy1iYXNpYy1vZmZzZXQ6IDI7IC0qLQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogVXBsb2FkcyAtPSBhbGxvdyB1c2VycyB0byB1cGxvYWQgc3R1ZmYsIGEgcHNldWRvIGZpbGUgbWFuYWdlciIgbW9kdWxlCiMgQXV0aG9yOiBSb2JlcnQgQ2FtcGJlbGwgPHJvYkB0ZWNoY29tLmR5bmRucy5vcmc+CiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOgkvL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KaWYoICFpc3NldCgkZ0NtcykgKSBleGl0OwoKaWYoICFpc3NldCgkcGFyYW1zWyd1cGxvYWRfaWQnXSkgKSByZXR1cm47CgokdXBsb2FkX2lkID0gKGludCkkcGFyYW1zWyd1cGxvYWRfaWQnXTsKCi8vIDEuICBnZXQgdGhlIHVwbG9hZCBpbmZvCiRxdWVyeSA9ICdTRUxFQ1QgdXBsb2FkX2NhdGVnb3J5X2lkIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzIFdIRVJFIHVwbG9hZF9pZCA9ID8nOwokY2F0ZWdvcnlfaWQgPSAkZGItPkdldE9uZSgkcXVlcnksYXJyYXkoJHVwbG9hZF9pZCkpOwppZiggISRjYXRlZ29yeV9pZCApIHsKCXJldHVybjsKIH0KCi8vIDIuICBnZXQgdGhlIGNhdGVnb3J5CiRxdWVyeSA9ICdTRUxFQ1QgdXBsb2FkX2NhdGVnb3J5X2RlbGV0YWJsZSBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2Fkc19jYXRlZ29yaWVzCiAgICAgICAgICAgV0hFUkUgdXBsb2FkX2NhdGVnb3J5X2lkID0gPyc7CiRkZWxldGFibGUgPSAkZGItPkdldE9uZSgkcXVlcnksYXJyYXkoJGNhdGVnb3J5X2lkKSk7CgovLyAyLiAgY2hlY2sgaWYgd2UgY2FuIGRlbGV0ZQppZiggISR0aGlzLT5HZXRQcmVmZXJlbmNlKCdhbGxvd19kZWxldGUnLDApID09IDEgfHwgISRkZWxldGFibGUgKQoJewoJCSR0aGlzLT5SZWRpcmVjdENvbnRlbnQoJHJldHVybmlkKTsKCX0KCiR0aGlzLT5fQWRtaW5Eb0RlbGV0ZVVwbG9hZCggJHVwbG9hZF9pZCwgJHBhcmFtcywgJHJldHVybmlkLCAwICk7CiR0aGlzLT5SZWRpcmVjdENvbnRlbnQoJHJldHVybmlkKTsKCi8vIAojCiMgRU9GCiMKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.detail.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLXNldC1zdHlsZTpsaW51eDsgdGFiLXdpZHRoOjI7IGluZGVudC10YWJzLW1vZGU6dDsgYy1iYXNpYy1vZmZzZXQ6IDI7IC0qLQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogVXBsb2FkcyAtPSBhbGxvdyB1c2VycyB0byB1cGxvYWQgc3R1ZmYsIGEgcHNldWRvIGZpbGUgbWFuYWdlciIgbW9kdWxlCiMgQXV0aG9yOiBSb2JlcnQgQ2FtcGJlbGwgPHJvYkB0ZWNoY29tLmR5bmRucy5vcmc+CiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOgkvL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KaWYoICFpc3NldCgkZ0NtcykgKSBleGl0OwokY29uZmlnID0mICRnQ21zLT5HZXRDb25maWcoKTsKCi8vIGNoZWNrIGlucHV0IGRhdGEKaWYoICFpc3NldCgkcGFyYW1zWyd1cGxvYWRfaWQnXSkgKQoJewoJCSR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSAoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsCgkJCQkJCQkJCQkJCQkJCSR0aGlzLT5MYW5nICgnZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJywndXBsb2FkX2lkJykpOwoJCXJldHVybjsKCX0KCi8vIGdldCB0aGUgdGVtcGxhdGUKJHRlbXBsYXRlID0gJ2RldGFpbHJwdF8nLiR0aGlzLT5HZXRQcmVmZXJlbmNlKCdkZWZhdWx0X2RldGFpbHJwdCcpOwppZiggaXNzZXQoICRwYXJhbXNbJ2RldGFpbHRlbXBsYXRlJ10gKSApCgl7CgkJJHRlbXBsYXRlID0gJ2RldGFpbHJwdF8nLiRwYXJhbXNbJ2RldGFpbHRlbXBsYXRlJ107Cgl9CmVsc2UgaWYoIGlzc2V0KCRwYXJhbXNbJ3RlbXBsYXRlJ10pICkKCXsKCQkkdGVtcGxhdGUgPSAnZGV0YWlscnB0XycuJHBhcmFtc1sndGVtcGxhdGUnXTsKCX0KCi8vIGhhbmRsZSB0aGUgc2VuZGZpbGVwYWdlIHBhcmFtZXRlcgokc2VuZGZpbGVwYWdlID0gJHJldHVybmlkOwppZiggaXNzZXQoJHBhcmFtc1snc2VuZGZpbGVwYWdlJ10pICkKCXsKCQlnbG9iYWwgJGdDbXM7CgkJJG1hbmFnZXIgPSYgJGdDbXMtPkdldEhpZXJhcmNoeU1hbmFnZXIoKTsKCQkkbm9kZSA9JiAkbWFuYWdlci0+c3VyZUdldE5vZGVCeUFsaWFzKCRwYXJhbXNbJ3NlbmRmaWxlcGFnZSddKTsKCQlpZiAoaXNzZXQoJG5vZGUpKQoJCQl7CgkJCQkkY29udGVudCA9JiAkbm9kZS0+R2V0Q29udGVudCgpOwoJCQkJaWYgKGlzc2V0KCRjb250ZW50KSkKCQkJCQl7CgkJCQkJCSRzZW5kZmlsZXBhZ2UgPSAkY29udGVudC0+SWQoKTsKCQkJCQl9CgkJCX0KCQllbHNlCgkJCXsKCQkJCSRub2RlID0mICRtYW5hZ2VyLT5zdXJlR2V0Tm9kZUJ5SWQoJHBhcmFtc1snc2VuZGZpbGVwYWdlJ10pOwoJCQkJaWYgKGlzc2V0KCRub2RlKSkKCQkJCQl7CgkJCQkJCSRzZW5kZmlsZXBhZ2UgPSAkcGFyYW1zWydzZW5kZmlsZXBhZ2UnXTsKCQkJCQl9CgkJCX0KCX0KaWYoIGVtcHR5KCRzZW5kZmlsZXBhZ2UpICkKCXsKCQkkdG1wID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ2RlZmF1bHRfc2VuZGZpbGVwYWdlJywtMSk7CgkJaWYoICR0bXAgPiAwICkKCQkJewoJCQkJJHNlbmRmaWxlcGFnZSA9ICR0bXA7CgkJCX0KCQllbHNlCgkJCXsKCQkJCSRzZW5kZmlsZXBhZ2UgPSAkcmV0dXJuaWQ7CgkJCX0KCX0KCi8vCi8vIEdldCB0aGUgZGF0YQovLwokaW1ncGF0aCA9ICdtb2R1bGVzLycuYmFzZW5hbWUoZGlybmFtZShfX0ZJTEVfXykpLicvaW1hZ2VzLyc7CiRxdWVyeSA9ICdTRUxFQ1QgKiBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2FkcwogICAgICAgICAgIFdIRVJFIHVwbG9hZF9pZCA9ID8nOwokZGF0YSA9ICRkYi0+R2V0Um93KCRxdWVyeSxhcnJheSgkcGFyYW1zWyd1cGxvYWRfaWQnXSkpOwokY2F0ZWdvcnkgPSAnJzsKaWYoICEkZGF0YSApCgl7CgkJJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlICgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwKCQkJCQkJCQkJCQkJCQkJJHRoaXMtPkxhbmcgKCdlcnJvcl9ub3N1Y2hyb3cnKSk7CgkJcmV0dXJuOwoJfQokcXVlcnkgPSAnU0VMRUNUICogRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHNfY2F0ZWdvcmllcwogICAgICAgICAgV0hFUkUgdXBsb2FkX2NhdGVnb3J5X2lkID0gPyc7CiRjYXRlZ29yeSA9ICRkYi0+R2V0Um93KCRxdWVyeSxhcnJheSgkZGF0YVsndXBsb2FkX2NhdGVnb3J5X2lkJ10pKTsKJHJvdyA9IG5ldyBTdGRDbGFzcygpOwpmb3JlYWNoKCAkZGF0YSBhcyAka2V5ID0+ICR2YWx1ZSApCnsKCWlmKCBzdGFydHN3aXRoKCRrZXksJ3VwbG9hZF8nKSApCgkJewoJCQkka2V5ID0gc3Vic3RyKCRrZXksNyk7CgkJfQoJaWYoICFlbXB0eSgkdmFsdWUpICkKCQl7CgkJCSRyb3ctPiRrZXkgPSAkdmFsdWU7CgkJfQp9CgoKaWYoICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdhbGxvd19kZWxldGUnLDApID09IDEgJiYKCQkkY2F0ZWdvcnlbJ3VwbG9hZF9jYXRlZ29yeV9kZWxldGFibGUnXSA9PSAxKQoJewoJCSRyb3ctPmRlbGV0ZV91cmwgPQoJCQkkdGhpcy0+Q3JlYXRlTGluayggJGlkLCAnZGVsZXRlX2ZpbGUnLCAkcmV0dXJuaWQsICcnLAoJCQkJCQkJCQkJCQkgYXJyYXkoJ3VwbG9hZF9pZCcgPT4gJHJvdy0+aWQpLAoJCQkJCQkJCQkJCQkgJycsIHRydWUgKTsKCX0KCiRvbmUtPnNlbmRmaWxlX3VybCA9CgkkdGhpcy0+Q3JlYXRlTGluayAoJGlkLCAnc2VuZGZpbGUnLCAkc2VuZGZpbGVwYWdlLCAnJywKCQkJCQkJCQkJCSBhcnJheSgndXBsb2FkX2lkJz0+JHJvdy0+aWQpLAoJCQkJCQkJCQkJICcnLCB0cnVlLCB0cnVlLCAnJywgZmFsc2UpOwoKCiRyb3ctPmNhdGVnb3J5ID0gJGNhdGVnb3J5Wyd1cGxvYWRfY2F0ZWdvcnlfbmFtZSddOwokcm93LT5kb3dubG9hZF91cmwgPSAKCSR0aGlzLT5DcmVhdGVGcm9udGVuZExpbmsoJGlkLCRyZXR1cm5pZCwnZ2V0ZmlsZScsJycsCgkJCQkJCQkJCQkJCQkJYXJyYXkoJ3VwbG9hZF9pZCc9PiRwYXJhbXNbJ3VwbG9hZF9pZCddKSwKCQkJCQkJCQkJCQkJCQknJywgdHJ1ZSwgdHJ1ZSwgJycsIGZhbHNlLAoJCQkJCQkJCQkJCQkJCSR0aGlzLT5fZ2V0RmlsZVVSTCgkZGF0YVsndXBsb2FkX2lkJ10sJGRhdGFbJ3VwbG9hZF9uYW1lJ10pKTsKJHJvdy0+ZmlsZXR5cGUgPSAkdGhpcy0+X0dldEZpbGV0eXBlKCAkZGF0YVsndXBsb2FkX25hbWUnXSApOwppZiggJHJvdy0+ZmlsZXR5cGUgIT09IGZhbHNlICkKCXsKCQkkcm93LT5pY29udXJsID0gJGltZ3BhdGguJGZpbGV0eXBlWydpbWFnZSddOwoJfQplbHNlCgl7CgkJJG9uZXJvdy0+aWNvbnVybCA9ICRpbWdwYXRoLid1bmtub3duLnBuZyc7Cgl9Cgokb25lcm93LT5vcmlnZmlsZV91cmwgPSAkY29uZmlnWyd1cGxvYWRzX3VybCddLicvJy4kY2F0ZWdvcnlbJ3VwbG9hZF9jYXRlZ29yeV9wYXRoJ10uJy8nLiRkYXRhWyd1cGxvYWRfbmFtZSddOwoKaWYoICFlbXB0eSgkZGF0YVsndXBsb2FkX3RodW1ibmFpbCddKSApCgl7CgkJJHRuZmlsZSA9ICR0aGlzLT5fY2F0ZWdvcnlQYXRoKCAkY2F0ZWdvcnlbJ3VwbG9hZF9jYXRlZ29yeV9wYXRoJ10uJy8nLiRkYXRhWyd1cGxvYWRfdGh1bWJuYWlsJ10pOwoJCWlmKCBAZmlsZV9leGlzdHMoJHRuZmlsZSkgKQoJCQl7CgkJCQkkdG51cmwgPSAkY29uZmlnWyd1cGxvYWRzX3VybCddLicvJy4kY2F0ZWdvcnlbJ3VwbG9hZF9jYXRlZ29yeV9wYXRoJ10uJy8nLiRkYXRhWyd1cGxvYWRfdGh1bWJuYWlsJ107CgkJCQkkcm93LT50aHVtYm5haWxfdXJsID0gJHRudXJsOwoJCQl9Cgl9CgovLyBnZXQgZXh0cmEgZmllbGRzLgp7CgkkcXVlcnkgPSAnU0VMRUNUIEEuaWQsQS5uYW1lLEEudHlwZSxCLnVwbG9hZF9pZCxCLnZhbHVlIAogICAgICAgICAgICAgIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzX2ZpZWxkZGVmcyBBIAogICAgICAgICAgICAgIExFRlQgSk9JTiAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHNfZmllbGR2YWxzIEIgCiAgICAgICAgICAgICAgICBPTiBBLmlkID0gQi5mbGRfaWQgCiAgICAgICAgICAgICBXSEVSRSBCLnVwbG9hZF9pZCA9ID8gQU5EIEEucHVibGljID0gMQogICAgICAgICAgICAgT1JERVIgQlkgQS5pb3JkZXIgQVNDJzsKCSR0bXAgPSAkZGItPkdldEFycmF5KCRxdWVyeSxhcnJheSgkcGFyYW1zWyd1cGxvYWRfaWQnXSkpOwoJaWYoICR0bXAgKQoJCXsKCQkJJHJvdy0+ZmllbGRzID0gJHRoaXMtPmFycmF5X3RvX2hhc2goJHRtcCwnbmFtZScpOwoJCX0KfQoKc3dpdGNoKCRwYXJhbXNbJ21vZGUnXSkKCXsKCWNhc2UgJ2xpbmsnOgoJCWVjaG8gJHRoaXMtPkNyZWF0ZUZyb250ZW5kTGluaygkaWQsJHJldHVybmlkLCdnZXRmaWxlJywKCQkJCQkJCQkJCQkJCQkJCQkgJHJvdy0+bmFtZSwKCQkJCQkJCQkJCQkJCQkJCQkgYXJyYXkoJ3VwbG9hZF9pZCc9PiRwYXJhbXNbJ3VwbG9hZF9pZCddKSwKCQkJCQkJCQkJCQkJCQkJCQkgJycsIGZhbHNlLCB0cnVlLCAnJywgZmFsc2UsCgkJCQkJCQkJCQkJCQkJCQkJICR0aGlzLT5fZ2V0RmlsZVVSTCgkcm93LT5pZCwkcm93LT5uYW1lKSk7CgkJcmV0dXJuOwoKCWNhc2UgJ3VybCc6CgkJZWNobyAkcm93LT5kb3dubG9hZF91cmw7CgkJcmV0dXJuOwoKCWRlZmF1bHQ6CgkJJGl0ZW1zID0gYXJyYXkoKTsKCQkkaXRlbXNbXSA9ICRyb3c7CgkJJHNtYXJ0eS0+YXNzaWduKCdpdGVtcycsJGl0ZW1zKTsgLy8gYmFja3dhcmRzIGNvbXBhdGliaWxpdHkuCgkJJHNtYXJ0eS0+YXNzaWduKCdlbnRyeScsJHJvdyk7Cgl9CgovLwovLyBHaXZlIGV2ZXJ5dGhpbmcgdG8gc21hcnR5Ci8vCiR0aGlzLT5zbWFydHktPmFzc2lnbignY2F0ZWdvcnknLCR0aGlzLT5MYW5nKCdjYXRlZ29yeScpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdpZCcsJHRoaXMtPkxhbmcoJ2lkJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ25hbWUnLCR0aGlzLT5MYW5nKCduYW1lJykpOwokc21hcnR5LT5hc3NpZ24oJ2FyZXlvdXN1cmUnLCR0aGlzLT5MYW5nKCdhcmV5b3VzdXJlJykpOwokc21hcnR5LT5hc3NpZ24oJ2RlbGV0ZScsJHRoaXMtPkxhbmcoJ2RlbGV0ZScpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdkYXRlJywkdGhpcy0+TGFuZygnZGF0ZScpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdhdXRob3InLCR0aGlzLT5MYW5nKCdhdXRob3InKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignc2l6ZScsJHRoaXMtPkxhbmcoJ3NpemVrYicpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdkZXRhaWxzJywkdGhpcy0+TGFuZygnZGV0YWlscycpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzdW1tYXJ5JywkdGhpcy0+TGFuZygnc3VtbWFyeScpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdkZXNjcmlwdGlvbicsJHRoaXMtPkxhbmcoJ2Rlc2NyaXB0aW9uJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RodW1ibmFpbCcsJHRoaXMtPkxhbmcoJ3RodW1ibmFpbCcpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdpY29uJywkdGhpcy0+TGFuZygnaWNvbicpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdpbWFnZScsJHRoaXMtPkxhbmcoJ2ltYWdlJykpOwoKLy8KLy8gUHJvY2VzcyBUaGUgdGVtcGxhdGUKLy8KaWYoICFpc3NldCgkcGFyYW1zWydub291dHB1dCddKSApCgl7CgkJZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlRnJvbURhdGFiYXNlKCR0ZW1wbGF0ZSk7Cgl9CiMKIyBFT0YKIwo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/action.do_addcategory.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojIEF1dGhvcjogUm9iZXJ0IENhbXBiZWxsIDxyb2JAdGVjaGNvbS5keW5kbnMub3JnPgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDoJLy93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCmlmICghJHRoaXMtPkNoZWNrUGVybWlzc2lvbiAoJ01hbmFnZSBVcGxvYWRzJykpCiAgewogICAgLy8gZG8gbm90aGluZywgdG9kbzogdGhpcyBzaG91bGQgcHJvYmFibHkgYmUgY2hhbmdlZAogICAgcmV0dXJuOwogIH0KCi8vIGFyZSB3ZSBjYW5jZWxsaW5nCmlmIChpc3NldCAoJHBhcmFtc1snY2FuY2VsJ10pKQogIHsKICAgICR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwnY2F0ZWdvcmllcycpOwogIH0KCiRlcnJvciA9IGZhbHNlOwoKLy8gbWFrZSBzdXJlIHdlIGhhdmUgc29tZXRoaW5nIHRvIHdvcmsgd2l0aAppZiAoIWlzc2V0ICgkcGFyYW1zWydpbnB1dF9jYXRlZ29yeW5hbWUnXSkKICAgIHx8ICRwYXJhbXNbJ2lucHV0X2NhdGVnb3J5bmFtZSddID09ICIiKQogIHsKICAgICR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ2Vycm9yJywgIjEiKTsKICAgICR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ21lc3NhZ2UnLCAkdGhpcy0+TGFuZyAoImVycm9yX2VtcHR5Y2F0ZWdvcnkiKSk7CiAgICAkZXJyb3IgPSB0cnVlOwogIH0KIGVsc2UgaWYgKCFpc3NldCAoJHBhcmFtc1snaW5wdXRfY2F0ZWdvcnlwYXRoJ10pIHx8IHRyaW0oJHBhcmFtc1snaW5wdXRfY2F0ZWdvcnlwYXRoJ10pID09ICIiKQogICB7CiAgICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgnZXJyb3InLCAiMSIpOwogICAgICR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ21lc3NhZ2UnLCAkdGhpcy0+TGFuZyAoImVycm9yX2VtcHR5cGF0aCIpKTsKICAgICAkZXJyb3IgPSB0cnVlOwogICB9CiBlbHNlCiAgIHsKICAgICAvLyBjaGVjayBpZiB0aGUgY2F0ZWdvcnkgZG9lc24ndCBhbHJlYWR5IGV4aXN0CiAgICAgJGRiID0mICR0aGlzLT5HZXREYigpOwogICAgICRxdWVyeSA9CiAgICAgICAiU0VMRUNUIHVwbG9hZF9jYXRlZ29yeV9pZCBmcm9tICIuY21zX2RiX3ByZWZpeCAoKS4KICAgICAgICJtb2R1bGVfdXBsb2Fkc19jYXRlZ29yaWVzIFdIRVJFIHVwbG9hZF9jYXRlZ29yeV9uYW1lID0gPyI7CiAgICAgJGRicmVzdWx0ID0KICAgICAgICRkYi0+RXhlY3V0ZSAoJHF1ZXJ5LCBhcnJheSAoJHBhcmFtc1snaW5wdXRfY2F0ZWdvcnluYW1lJ10pKTsKICAgICAKICAgICAvLyB5ZXAgaXQgZG9lcwogICAgIGlmICgkZGJyZXN1bHQtPkZldGNoUm93ICgpKQogICAgICAgewoJICR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ2Vycm9yJywgIjEiKTsKCSAkdGhpcy0+c21hcnR5LT5hc3NpZ24gKCdtZXNzYWdlJywKCQkJCSR0aGlzLT5MYW5nICgiZXJyb3JfY2F0ZWdvcnlleGlzdHMiKS4nIERCJyk7CgkgJGVycm9yID0gdHJ1ZTsKICAgICAgIH0KICAgICBlbHNlCiAgICAgICB7CgkgJHBhcmFtc1snaW5wdXRfY2F0ZWdvcnlwYXRoJ10gPSB0cmltKCRwYXJhbXNbJ2lucHV0X2NhdGVnb3J5cGF0aCddLCcvJyk7CgkgLy8gY2hlY2sgaWYgdGhlIGRpcmVjdG9yeSBpcyBhbHJlYWR5IGluIHVzZQoJICRxdWVyeSA9CgkgICAiU0VMRUNUIHVwbG9hZF9jYXRlZ29yeV9pZCBmcm9tICIuY21zX2RiX3ByZWZpeCAoKS4KCSAgICJtb2R1bGVfdXBsb2Fkc19jYXRlZ29yaWVzIFdIRVJFIHVwbG9hZF9jYXRlZ29yeV9wYXRoID0gPyI7CgkgJGRicmVzdWx0ID0KCSAgICRkYi0+RXhlY3V0ZSAoJHF1ZXJ5LCBhcnJheSAoJHBhcmFtc1snaW5wdXRfY2F0ZWdvcnlwYXRoJ10pKTsKCSAKCSBpZiAoJGRicmVzdWx0LT5GZXRjaFJvdyAoKSkKCSAgIHsKCSAgICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgnZXJyb3InLCAiMSIpOwoJICAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24gKCdtZXNzYWdlJywgJHRoaXMtPkxhbmcgKCJlcnJvcl9wYXRoaW51c2UiKSk7CgkgICAgICRlcnJvciA9IHRydWU7CgkgICB9CgkgZWxzZQoJICAgewoJICAgICAvLyBDcmVhdGUgdGhlIGRpcmVjdG9yeSBpZiBpdCBkb2Vzbid0IGV4aXN0CgkgICAgICRkb19zY2FuID0gZmFsc2U7CgkgICAgICRkaXIgPSAkdGhpcy0+X2NhdGVnb3J5UGF0aCgkcGFyYW1zWydpbnB1dF9jYXRlZ29yeXBhdGgnXSk7CgkgICAgIAoJICAgICBpZiggZmlsZV9leGlzdHMoICRkaXIgKSApIAoJICAgICAgIHsKCQkgJGRvX3NjYW4gPSB0cnVlOwoJICAgICAgIH0KCSAgICAgZWxzZQoJICAgICAgIHsKCQkgLy8gY3JlYXRlIHRoZSBkaXJlY3RvcnkKCQkgJHJlc3VsdCA9ICR0aGlzLT5ta2RpcnIoJGRpcik7CgkJIGlmICgkcmVzdWx0ID09PSBGQUxTRSkgCgkJICAgewoJCSAgICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgnZXJyb3InLCAiMSIpOwoJCSAgICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgnbWVzc2FnZScsCgkJCQkJICAgICR0aGlzLT5MYW5nICgiZXJyb3JfY2F0ZWdvcnlleGlzdHMiKS4nOiAnLiRkaXIpOwoJCSAgICAgJGVycm9yID0gdHJ1ZTsKCQkgICB9CgkJIC8vIGNyZWF0ZSBhbiBpbmRleC5odG1sIGZpbGUgKGVtcHR5KQoJCSBpZiggJHRoaXMtPkdldFByZWZlcmVuY2UoJ2NyZWF0ZV9kdW1teV9pbmRleF9odG1sJykgKQoJCSAgIHsKCQkgICAgIHRvdWNoKCAkZGlyLkRJUkVDVE9SWV9TRVBBUkFUT1IuImluZGV4Lmh0bWwiICk7CgkJICAgfQoJICAgICAgIH0KCSAgICAgCgkgICAgIGlmKCAhJGVycm9yICkKCSAgICAgICB7CgkJICRncm91cHMgPSBudWxsOwoJCSBpZiggaXNzZXQoJHBhcmFtc1snaW5wdXRfZ3JvdXBsaXN0J10pICkKCQkgICB7CgkJICAgICAkZ3JvdXBzID0gaW1wbG9kZSgnLCcsJHBhcmFtc1snaW5wdXRfZ3JvdXBsaXN0J10pOwoJCSAgIH0KCQkgLy8gQWRkIHRoZSByZWNvcmQgdG8gdGhlIGNhdGVnb3J5IHRhYmxlCgkJICRjYXRpZCA9CgkJICAgJGRiLT5HZW5JRCAoY21zX2RiX3ByZWZpeCAoKS4ibW9kdWxlX3VwbG9hZHNfY2F0ZWdvcmllc19zZXEiKTsKCQkgJHBhcmFtc1snY2F0ZWdvcnlfaWQnXSA9ICRjYXRpZDsKCQkgJHF1ZXJ5ID0KCQkgICAiSU5TRVJUIElOVE8gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX2NhdGVnb3JpZXMgCiAgICAgICAgICAgICAgICAgICAgKHVwbG9hZF9jYXRlZ29yeV9pZCwgdXBsb2FkX2NhdGVnb3J5X25hbWUsIHVwbG9hZF9jYXRlZ29yeV9kZXNjcmlwdGlvbiwKICAgICAgICAgICAgICAgICAgICAgdXBsb2FkX2NhdGVnb3J5X3BhdGgsIHVwbG9hZF9jYXRlZ29yeV9saXN0YWJsZSwgdXBsb2FkX2NhdGVnb3J5X2RlbGV0YWJsZSwKICAgICAgICAgICAgICAgICAgICAgdXBsb2FkX2NhdGVnb3J5X2V4cGlyZXNfaHJzLAogICAgICAgICAgICAgICAgICAgICB1cGxvYWRfY2F0ZWdvcnlfZ3JvdXBzKQogICAgICAgICAgICAgICAgICAgIFZBTFVFUyAoPyw/LD8sPyw/LD8sPyw/KSI7CgkJICRkYnJlc3VsdCA9CgkJICAgJGRiLT5FeGVjdXRlICgkcXVlcnksCgkJCQkgYXJyYXkgKCRjYXRpZCwKCQkJCQkkcGFyYW1zWyJpbnB1dF9jYXRlZ29yeW5hbWUiXSwKCQkJCQkkcGFyYW1zWyJpbnB1dF9jYXRlZ29yeWRlc2MiXSwKCQkJCQkkcGFyYW1zWyJpbnB1dF9jYXRlZ29yeXBhdGgiXSwKCQkJCQkkcGFyYW1zWyJpbnB1dF9jYXRlZ29yeWxpc3RhYmxlIl0sCgkJCQkJJHBhcmFtc1siaW5wdXRfY2F0ZWdvcnlkZWxldGFibGUiXSwKCQkJCQkoaW50KSRwYXJhbXNbJ2lucHV0X2NhdGVnb3J5X2V4cGlyZXNfaHJzJ10sCgkJCQkJJGdyb3VwcykpOwoJCSBpZiAoISRkYnJlc3VsdCkKCQkgICB7CgkJICAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24gKCdlcnJvcicsICIxIik7CgkJICAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24gKCdtZXNzYWdlJywKCQkJCQkgICAgJHRoaXMtPkxhbmcgKCJtZXNzYWdlX2NhdGVnb3J5YWRkZWQiKSk7CgkJICAgICAkZXJyb3IgPSB0cnVlOwoJCSAgIH0KCQkgZWxzZQoJCSAgIHsKCQkgICAgIGlmKCAkZG9fc2NhbiApCgkJICAgICAgIHsKCQkJIC8vIGNhdGVnb3J5IGlzIGFkZGVkLCBhbmQgdGhlIGRpcmVjdG9yeSBhbHJlYWR5IGV4aXN0ZWQuLi4gc28gbm93CgkJCSAvLyB3ZSdyZSBnb25uYSBzY2FuIHRoZSBkaXJlY3RvcnkgYW5kIGFkZCBmaWxlcyB0byB0aGUgZGF0YWJhc2UKCQkJICR0aGlzLT5TY2FuRGlyZWN0b3J5KCAkaWQsICRkaXIgKTsKCQkgICAgICAgfQoJCSAgICAgCgkJICAgICAvLyBzZW5kIGFuIGV2ZW50CgkJICAgICAkcGFybXMgPSBhcnJheSgpOwoJCSAgICAgJHBhcm1zWyduYW1lJ10gPSAkcGFyYW1zWydpbnB1dF9jYXRlZ29yeW5hbWUnXTsKCQkgICAgICRwYXJtc1snZGVzY3JpcHRpb24nXSA9ICRwYXJhbXNbJ2lucHV0X2NhdGVnb3J5ZGVzYyddOwoJCSAgICAgJHBhcm1zWydwYXRoJ10gPSAkcGFyYW1zWydpbnB1dF9jYXRlZ29yeXBhdGgnXTsKCQkgICAgICRwYXJtc1snbGlzdGFibGUnXSA9ICRwYXJhbXNbJ2lucHV0X2NhdGVnb3J5bGlzdGFibGUnXTsKCQkgICAgICRwYXJtc1snZGVsZXRhYmxlJ10gPSAkcGFyYW1zWydpbnB1dF9jYXRlZ29yeWRlbGV0YWJsZSddOwoJCSAgICAgJHBhcm1zWydleHBpcmVzX2hycyddID0gJHBhcmFtc1snaW5wdXRfY2F0ZWdvcnlfZXhwaXJlc19ocnMnXTsKCQkgICAgICR0aGlzLT5TZW5kRXZlbnQoICdPbkNyZWF0ZUNhdGVnb3J5JywgJHBhcm1zICk7CgkJICAgfQoJICAgICAgIH0KCSAgIH0KICAgICAgIH0KICAgfQoKaWYgKCRlcnJvcikKICB7CiAgICBlY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUgKCdhZGRjYXRlZ29yeS50cGwnKTsKICB9CiBlbHNlCiAgIHsKICAgICAkdGhpcy0+UmVkaXJlY3RUb1RhYiAoJGlkLCAnY2F0ZWdvcmllcycpOwogICB9Cj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/action.do_addtemplate.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKaWYoICEkZ0NtcyApIGV4aXQoKTsKCmlmKCBpc3NldCggJHBhcmFtc1snY2FuY2VsJ10gKSApCiAgewogICAgaWYoIGlzc2V0KCAkcGFyYW1zWydhY3RpdmVfdGFiJ10gKSAmJiAkcGFyYW1zWydhY3RpdmVfdGFiJ10gIT0gJycgKQogICAgICB7CgkkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsICRwYXJhbXNbJ2FjdGl2ZV90YWInXSk7CiAgICAgIH0KICAgICR0aGlzLT5SZWRpcmVjdCgkaWQsJ2RlZmF1bHRhZG1pbicpOwogIH0KCmlmKCAhICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBUZW1wbGF0ZXMnKSApCiAgewogICAgLy8gdG9kbywgcGVybWlzc2lvbnMgbWVzc2FnZSBoZXJlCiAgICByZXR1cm47CiAgfQoKJHRlbXBsYXRlID0gIiI7CmlmKCBpc3NldCggJHBhcmFtc1sndGVtcGxhdGUnXSApICkKICB7CiAgICAkdGVtcGxhdGUgPSB0cmltKCRwYXJhbXNbJ3RlbXBsYXRlJ10pOwogIH0KICAKJHByZWZpeCA9ICIiOwppZiggaXNzZXQoICRwYXJhbXNbJ3ByZWZpeCddICkgKQogIHsKICAgICRwcmVmaXggPSB0cmltKCRwYXJhbXNbJ3ByZWZpeCddKTsKICB9CgppZiggIWlzc2V0KCAkcGFyYW1zWyd0ZW1wbGF0ZWNvbnRlbnQnXSApICkKICB7CiAgICAkcGFyYW1zWydlcnJvcnMnXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9pbnN1ZmZpY2llbnRwYXJhbXMnLCd0ZW1wbGF0ZWNvbnRlbnQnKTsKICAgICR0aGlzLT5SZWRpcmVjdCgkaWQsJHBhcmFtc1snb3JpZ2FjdGlvbiddLCcnLCRwYXJhbXMpOwogICAgcmV0dXJuOwogIH0KCmlmKCAkdGVtcGxhdGUgPT0gIiIgfHwgJHByZWZpeCA9PSAiIiApCiAgewogICAgJHBhcmFtc1snZXJyb3JzJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJywnKHRlbXBsYXRlIG9yIHByZWZpeCknKTsKICAgICR0aGlzLT5SZWRpcmVjdCgkaWQsJHBhcmFtc1snb3JpZ2FjdGlvbiddLCcnLCRwYXJhbXMpOwogICAgcmV0dXJuOwogIH0KCgokbmV3dGVtcGxhdGUgPSAkcHJlZml4IC4gJHRlbXBsYXRlOwoKLy8gY2hlY2sgaWYgdGhpcyB0ZW1wbGF0ZSBhbHJlYWR5IGV4aXN0cwokdHh0ID0gdHJpbSgkdGhpcy0+R2V0VGVtcGxhdGUoJG5ld3RlbXBsYXRlKSk7CmlmKCAkdHh0ICE9ICIiICkKICB7CiAgICAkcGFyYW1zWydlcnJvcnMnXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl90ZW1wbGF0ZW5hbWVleGlzdHMnKTsKICAgICR0aGlzLT5SZWRpcmVjdCgkaWQsJHBhcmFtc1snb3JpZ2FjdGlvbiddLCcnLCRwYXJhbXMpOwogICAgcmV0dXJuOwogIH0KCi8vIHdlJ3JlIHJlYWR5IHRvIHNldCBpdAokdGhpcy0+U2V0VGVtcGxhdGUoJG5ld3RlbXBsYXRlLCRwYXJhbXNbJ3RlbXBsYXRlY29udGVudCddKTsKCmlmKCBpc3NldCggJHBhcmFtc1snYWN0aXZlX3RhYiddICkgJiYgJHBhcmFtc1snYWN0aXZlX3RhYiddICE9ICcnICkKICB7CiAgICAkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsICRwYXJhbXNbJ2FjdGl2ZV90YWInXSApOwogIH0KJHRoaXMtPlJlZGlyZWN0KCRpZCwnZGVmYXVsdGFkbWluJyk7Cgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.do_editcategory.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgPSBhbGxvdyB1c2VycyB0byB1cGxvYWQgc3R1ZmYsIGEgcHNldWRvIGZpbGUgbWFuYWdlciBtb2R1bGUKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6CS8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKaWYgKCEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uICgnTWFuYWdlIFVwbG9hZHMnKSkKICB7CiAgICByZXR1cm47CiAgfQoKJGRiID0mICR0aGlzLT5HZXREYigpOwogICAgCi8vIGFyZSB3ZSBjYW5jZWxsaW5nCmlmIChpc3NldCAoJHBhcmFtc1snY2FuY2VsJ10pKQogIHsKICAgICR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwgJ2NhdGVnb3JpZXMnKTsKICB9CiAgICAKLy8gbWFrZSBzdXJlIHdlIGhhdmUgc29tZXRoaW5nIHRvIHdvcmsgd2l0aAppZiAoIWlzc2V0ICgkcGFyYW1zWydjYXRlZ29yeV9pZCddKSB8fCAkcGFyYW1zWydjYXRlZ29yeV9pZCddID09ICIiKQogIHsKICAgIGVjaG8gJHRoaXMtPlNob3dFcnJvcnMoJHRoaXMtPkxhbmcoJ2Vycm9yX25vY2F0ZWdvcnlpZCcpKTsKICB9CmVsc2UgaWYgKCFpc3NldCAoJHBhcmFtc1snaW5wdXRfY2F0ZWdvcnluYW1lJ10pCgkgfHwgJHBhcmFtc1snaW5wdXRfY2F0ZWdvcnluYW1lJ10gPT0gIiIpCiAgewogICAgZWNobyAkdGhpcy0+U2hvd0Vycm9ycygkdGhpcy0+TGFuZygnZXJyb3JfZW1wdHljYXRlZ29yeScpKTsKICB9CmVsc2UgaWYgKCFpc3NldCAoJHBhcmFtc1snaW5wdXRfY2F0ZWdvcnlwYXRoJ10pCgkgfHwgJHBhcmFtc1snaW5wdXRfY2F0ZWdvcnlwYXRoJ10gPT0gIiIpCiAgewogICAgZWNobyAkdGhpcy0+U2hvd0Vycm9ycygkdGhpcy0+TGFuZygnZXJyb3JfZW1wdHlwYXRoJykpOwogIH0KZWxzZSBpZiAoaXNzZXQoICRwYXJhbXNbJ3NjYW4nXSApICkKICB7CiAgICAkcXVlcnkgPSAiU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfY2F0ZWdvcmllcwogICAgICAgICAgICBXSEVSRSB1cGxvYWRfY2F0ZWdvcnlfaWQgPSA/IjsKICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHF1ZXJ5LCBhcnJheSgkcGFyYW1zWydjYXRlZ29yeV9pZCddKSApOwogICAgaWYoICEkZGJyZXN1bHQgKQogICAgICB7CgkkdGhpcy0+c21hcnR5LT5hc3NpZ24gKCdlcnJvcicsICIxIik7CgkkdGhpcy0+c21hcnR5LT5hc3NpZ24gKCdtZXNzYWdlJywgJHRoaXMtPkxhbmcgKCJlcnJvcl9kYmVycm9yIikpOwogICAgICB9IAogICAgZWxzZSAKICAgICAgewoJJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKTsKCWlmKCAhJHJvdyApIAoJICB7CgkgICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgnZXJyb3InLCAiMSIpOwoJICAgICR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ21lc3NhZ2UnLCAkdGhpcy0+TGFuZyAoImVycm9yX2RiZXJyb3IiKSk7CgkgIH0gCgllbHNlIAoJICB7CgkgICAgQHNldF90aW1lX2xpbWl0KDApOwoJICAgICRkaXIgPSAkdGhpcy0+X2NhdGVnb3J5UGF0aCggJHJvd1sndXBsb2FkX2NhdGVnb3J5X3BhdGgnXSApOwoJICAgICR0aGlzLT5TY2FuRGlyZWN0b3J5KCAkcGFyYW1zWydjYXRlZ29yeV9pZCddLCAkZGlyICk7CgkgICAgJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkLCAnZmlsZXMnLCBhcnJheSgnaW5wdXRfY2F0ZWdvcnknID0+ICRwYXJhbXNbJ2NhdGVnb3J5X2lkJ10pICk7CgkgICAgcmV0dXJuOwoJICB9IAogICAgICB9CiAgfQplbHNlCiAgewogICAgLy8gbm93IHByZXBhcmUgdG8gdXBkYXRlIHRoZSByZWNvcmQKICAgICRncm91cHMgPSBudWxsOwogICAgaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0X2dyb3VwbGlzdCddKSAmJgoJaXNfYXJyYXkoICRwYXJhbXNbJ2lucHV0X2dyb3VwbGlzdCddICkgKQogICAgICB7CgkkZ3JvdXBzID0gaW1wbG9kZSgnLCcsJHBhcmFtc1snaW5wdXRfZ3JvdXBsaXN0J10pOwogICAgICB9CiAgICAkcXVlcnkgPQogICAgICAiVVBEQVRFICIuY21zX2RiX3ByZWZpeCAoKS4ibW9kdWxlX3VwbG9hZHNfY2F0ZWdvcmllcyAKICAgICAgIFNFVCB1cGxvYWRfY2F0ZWdvcnlfbmFtZSA9ID8sIHVwbG9hZF9jYXRlZ29yeV9kZXNjcmlwdGlvbiA9ID8sIHVwbG9hZF9jYXRlZ29yeV9saXN0YWJsZSA9ID8sCiAgICAgICB1cGxvYWRfY2F0ZWdvcnlfZ3JvdXBzID0gPywgdXBsb2FkX2NhdGVnb3J5X2RlbGV0YWJsZSA9ID8sCiAgICAgICB1cGxvYWRfY2F0ZWdvcnlfZXhwaXJlc19ocnMgPSA/IFdIRVJFIHVwbG9hZF9jYXRlZ29yeV9pZCA9ID8iOwogICAgJGRicmVzdWx0ID0KICAgICAgJGRiLT5FeGVjdXRlICgkcXVlcnksCgkJICAgIGFycmF5ICgkcGFyYW1zWydpbnB1dF9jYXRlZ29yeW5hbWUnXSwKCQkJICAgJHBhcmFtc1snaW5wdXRfY2F0ZWdvcnlkZXNjJ10sCgkJCSAgIChpc3NldCgkcGFyYW1zWydpbnB1dF9jYXRlZ29yeWxpc3RhYmxlJ10pKT8xOjAsCgkJCSAgICRncm91cHMsCgkJCSAgIChpc3NldCgkcGFyYW1zWydpbnB1dF9jYXRlZ29yeWRlbGV0YWJsZSddKSk/MTowLAoJCQkgICAoaW50KSRwYXJhbXNbJ2lucHV0X2NhdGVnb3J5X2V4cGlyZXNfaHJzJ10sCgkJCSAgICRwYXJhbXNbJ2NhdGVnb3J5X2lkJ10pKTsKICAgIGlmICghJGRicmVzdWx0KQogICAgICB7CgllY2hvICR0aGlzLT5TaG93RXJyb3JzKCR0aGlzLT5MYW5nKCdlcnJvcicpLic6ICcuJGRiLT5FcnJvck1zZygpKTsKICAgICAgfQogICAgZWxzZQogICAgICB7CgkkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsJ2NhdGVnb3JpZXMnKTsKCXJldHVybjsKICAgICAgfQogIH0KCiR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUgKCJhZGRjYXRlZ29yeS50cGwiKTsKCi8vIEVPRgo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/action.do_editupload.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLWZpbGUtc3R5bGU6bGludXg7IHRhYi13aWR0aDoyOyBpbmRlbnQtdGFicy1tb2RlOnQ7IGMtYmFzaWMtb2Zmc2V0OiAyOyAtKi0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojIFZlcnNpb246IDEuMy4wLWJldGExLCBjYWxndXkxMDAwCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOgkvL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KaWYoICFpc3NldCgkZ0NtcykgKSBleGl0OwppZiggISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01hbmFnZSBVcGxvYWRzJykgJiYgISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ1VwbG9hZCBGaWxlcyB0byBVcGxvYWRzJykpIGV4aXQ7CgovLyBtYWtlIHN1cmUgd2UgaGF2ZSBhbGwgdGhlIHBhcmFtZXRlcnMgd2UgbmVlZAppZiggIWlzc2V0KCRwYXJhbXNbJ3VwbG9hZF9pZCddKSB8fAogICAgIWlzc2V0KCRwYXJhbXNbJ2lucHV0X3VwbG9hZGRlc2MnXSkgfHwKICAgICFpc3NldCgkcGFyYW1zWydpbnB1dF9tb3ZlY2F0ZWdvcnknXSkgKSAKICB7CiAgICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UgKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLAoJCQkJCQkJCQkJCQkJCQkkdGhpcy0+TGFuZyAoJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcycsJ3VwbG9hZF9pZD8/JykpOwogICAgcmV0dXJuOwogIH0KICAgCi8vIG5vdyBzZWUgaWYgd2UgY2FuIGZpbmQgdGhlIGRldGFpbHMgYWJvdXQgdGhpcyB1cGxvYWQKJHJvdyA9ICR0aGlzLT5HZXRVcGxvYWREZXRhaWxzKCRwYXJhbXNbJ3VwbG9hZF9pZCddKTsKaWYoICEkcm93ICkgewogICR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSAoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsCgkJCSAgICAkdGhpcy0+TGFuZyAoJ2Vycm9yX2RiZXJyb3InKSk7CiAgcmV0dXJuOwogfQoKJG5ld25hbWUgPSAkcm93Wyd1cGxvYWRfbmFtZSddOwokbmV3Y2F0ZWdvcnkgPSAkcm93Wyd1cGxvYWRfY2F0ZWdvcnlfaWQnXTsKJG5ld2F1dGhvciA9ICRyb3dbJ3VwbG9hZF9hdXRob3InXTsKJG5ld2Rlc2MgPSAkcm93Wyd1cGxvYWRfZGVzY3JpcHRpb24nXTsKJG5ld3N1bW1hcnkgPSAkcm93Wyd1cGxvYWRfc3VtbWFyeSddOwokbmV3dGh1bWIgPSAkcm93Wyd1cGxvYWRfdGh1bWJuYWlsJ107CgovLyBHZXQgdGhlIGNhdGVnb3J5IHBhdGggZnJvbSB0aGUgY2F0ZWdvcnkgaWQKJGNhdHBhdGggPSAnJzsKewogICRxID0gIlNFTEVDVCAqIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX2NhdGVnb3JpZXMKICAgICAgICAgV0hFUkUgdXBsb2FkX2NhdGVnb3J5X2lkID0gPyI7CiAgJHJvdzIgPSAkZGItPkdldFJvdyggJHEsIGFycmF5KCRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9pZCddKSk7CiAgaWYoICEkcm93MiApCiAgICB7CiAgICAgICR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSAoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsCgkJCQkkdGhpcy0+TGFuZyAoJ2Vycm9yX2RiZXJyb3InKSk7CiAgICAgIHJldHVybjsKICAgIH0KCiAgJGNhdHBhdGggPSAkcm93MlsndXBsb2FkX2NhdGVnb3J5X3BhdGgnXTsKfQoKJGZyb21maWxlID0gJHRoaXMtPl91cGxvYWRQYXRoKCAkY2F0cGF0aCwgdHJpbSgkcm93Wyd1cGxvYWRfbmFtZSddKSApOwoKaWYoIGlzc2V0KCRwYXJhbXNbJ2NhbmNlbCddKSApCgl7CgkJLy8gb3BlcmF0aW9uIGNhbmNlbGxlZAogICAgJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkLCAnZmlsZXMnLCBhcnJheSggJ2N1cmNhdGVnb3J5JyA9PiAkcGFyYW1zWydjYXRlZ29yeV9pZCddKSApOwoJfQplbHNlIGlmKCBpc3NldCgkcGFyYW1zWydyZXBsYWNlJ10pICkKCXsKCQkvLyByZS11cGxvYWQgZXhpc3RpbmcgZmlsZS4uLiBidXQgd2UncmUgbm90IGdvbm5hIHRvdWNoIHRoZQoJCS8vIG90aGVyIGluZm8gKGxpa2UgYXV0aG9yLi4uLCBvciB0aGUgZmllbGRzKS4KCQkkZmlsZXNfa2V5ID0gJGlkLidyZXBsYWNlX2ZpbGUnOwoJCWlmKCAhaXNzZXQoJF9GSUxFU1skZmlsZXNfa2V5XSkgfHwgCgkJCQkoJF9GSUxFU1skZmlsZXNfa2V5XVsnbmFtZSddID09ICcnKSB8fAoJCQkJKCRfRklMRVNbJGZpbGVzX2tleV1bJ3NpemUnXSA9PSAwKSB8fAoJCQkJKCRfRklMRVNbJGZpbGVzX2tleV1bJ2Vycm9yJ10gIT0gMCApICkKCQkJewoJCQkJJHRoaXMtPlNldEVycm9yKCR0aGlzLT5MYW5nKCdlcnJvcl9ub2ZpbGVzdXBsb2FkZWQnKSk7CgkJCQkkdGhpcy0+Q0dSZWRpcmVjdCgkaWQsJ2VkaXR1cGxvYWQnLCRyZXR1cm5pZCwkcGFyYW1zKTsKCQkJfQoKCQkvLyBtYWtlIHN1cmUgaXQncyBhbiBhbGxvd2VkIGZpbGUgdHlwZQoJCSRuZXdmaWxlZXh0ZW5zaW9uID0gc3RydG9sb3dlcihzdHJyY2hyKCRfRklMRVNbJGZpbGVzX2tleV1bJ25hbWUnXSwnLicpKTsKCQlpZiggISR0aGlzLT5faXNWYWxpZEZpbGVuYW1lKCRfRklMRVNbJGZpbGVzX2tleV1bJ25hbWUnXSkgKQoJCQl7CgkJCQkkdGhpcy0+U2V0RXJyb3IoJHRoaXMtPkxhbmcoJ2Vycm9yX2ludmFsaWR1cGxvYWRmaWxlbmFtZScsCgkJCQkJCQkJCQkJCQkJCQkJCSRfRklMRVNbJGZpbGVzX2tleV1bJ25hbWUnXSkpOwoJCQkJJHRoaXMtPkNHUmVkaXJlY3QoJGlkLCdlZGl0dXBsb2FkJywkcmV0dXJuaWQsJHBhcmFtcyk7CgkJCX0KCgkJJGZpbGVleHRlbnNpb24gPSBzdHJ0b2xvd2VyKHN0cnJjaHIoJGZyb21maWxlLCcuJykpOwoJCWlmKCAkZmlsZWV4dGVuc2lvbiAhPSAkbmV3ZmlsZWV4dGVuc2lvbiApCgkJCXsKCQkJCS8vIHVobSwgeW91IGNhbid0IHJlcGxhY2UgYSBmaWxlIG9mIGEgZGlmZmVyZW50IHR5cGUKCQkJCSR0aGlzLT5TZXRFcnJvcigkdGhpcy0+TGFuZygnZXJyb3JfcmVwbGFjZV9taXNtYXRjaGVkX2ZpbGVleHQnKSk7CgkJCQkkdGhpcy0+Q0dSZWRpcmVjdCgkaWQsJ2VkaXR1cGxvYWQnLCRyZXR1cm5pZCwkcGFyYW1zKTsKCQkJfQoJCQoJCS8vIHdlJ3JlIGFsbCBnb29kIHRvIGdvLgoJCWlmKCBmaWxlX2V4aXN0cygkZnJvbWZpbGUpICkKCQkJewoJCQkJQHVubGluaygkZnJvbWZpbGUpOwoJCQl9CgkJY21zX21vdmVfdXBsb2FkZWRfZmlsZSggJF9GSUxFU1skZmlsZXNfa2V5XVsndG1wX25hbWUnXSwkZnJvbWZpbGUgKTsKCgkJLy8gbm93LCBpZiBpdCdzIGFuIGltYWdlIGZpbGUsIHdlIG1heSB3YW5uYSByZS1jcmVhdGUgdGhlIHRodW1ibmFpbAoJCSR0aHVtYl9leHRfYXJyID0gZXhwbG9kZSgiLCIsCgkJCQkJCQkJCQkJCQkJICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdhdXRvdGh1bWJuYWlsX2V4dGVuc2lvbnMnKSk7CgkJZm9yZWFjaCggJHRodW1iX2V4dF9hcnIgYXMgJHRodW1iX2V4dCApCgkJCXsKCQkJCWlmKCAnLicuJHRodW1iX2V4dCAhPSAkZmlsZWV4dGVuc2lvbiApIGNvbnRpbnVlOwoKCQkJCS8vIGl0J3MgYW4gaW1hZ2UgZmlsZS4KCgkJCQkvLyBkZWxldGUgYW55IHByZXZpb3VzIHRodW1ibmFpbAoJCQkJaWYoICFlbXB0eSgkcm93Wyd1cGxvYWRfdGh1bWJuYWlsJ10pICkKCQkJCQl7CgkJCQkJCSRvbGRmaWxlID0gJHRoaXMtPl91cGxvYWRQYXRoKCRjYXRwYXRoLCRyb3dbJ3VwbG9hZF90aHVtYm5haWwnXSk7CgkJCQkJCUB1bmxpbmsoJG9sZGZpbGUpOwoJCQkJCX0KCgkJCQkvLyBnZW5lcmF0ZSBuZXcgdGh1bWJuYWlsCgkJCQkkdGh1bWJuYW1lID0gJ3RodW1iXycuJHJvd1sndXBsb2FkX25hbWUnXTsKCQkJCSR0aHVtYmZpbGUgPSAkdGhpcy0+X3VwbG9hZFBhdGgoJGNhdHBhdGgsJHRodW1ibmFtZSk7CgkJCQkkdGhpcy0+aW1hZ2VUcmFuc2Zvcm0oJGZyb21maWxlLCR0aHVtYmZpbGUsCgkJCQkJCQkJCQkJCQkJCSR0aGlzLT5HZXRQcmVmZXJlbmNlKCdhdXRvdGh1bWJuYWlsX3NpemUnKSk7CgoJCQkJLy8gdXBkYXRlIHRoZSByZWNvcmQuCgkJCQkkdGh1bWJuYW1lID0gJ3RodW1iXycuJHJvd1sndXBsb2FkX25hbWUnXTsKCQkJCSRxdWVyeSA9ICdVUERBVEUgJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzCiAgICAgICAgICAgICAgICAgICAgICAgICBTRVQgdXBsb2FkX3RodW1ibmFpbCA9ID8KICAgICAgICAgICAgICAgICAgICAgICBXSEVSRSB1cGxvYWRfaWQgPSA/JzsKCQkJCSRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkoJHRodW1ibmFtZSwkcGFyYW1zWyd1cGxvYWRfaWQnXSkpOwoJCQkJYnJlYWs7CgkJCQkKCQkJfQoJfQplbHNlIGlmKCBpc3NldCgkcGFyYW1zWyd0aHVtYm5haWwnXSkgKQogIHsKICAgIC8vIHdlJ3JlIChyZSljcmVhdGluZyBhIHRodW1ibmFpbCBmb3IgdGhpcyBpbWFnZQogICAgJHRuZGlyID0gJHRoaXMtPl9jYXRlZ29yeVBhdGgoJGNhdHBhdGgpOwoKICAgIGdsb2JhbCAkZ0NtczsKCQkkZmlsZWV4dGVuc2lvbiA9IHN0cnRvbG93ZXIoc3RycmNocigkcm93Wyd1cGxvYWRfbmFtZSddLCcuJykpOwogICAgJGRlc3QgPSAkdG5kaXIuRElSRUNUT1JZX1NFUEFSQVRPUi4ndGh1bWJfJy4kcm93Wyd1cGxvYWRfbmFtZSddOwoJCSR0aHVtYl9leHRfYXJyID0gZXhwbG9kZSgiLCIsCgkJCQkJCQkJCQkJCQkJICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdhdXRvdGh1bWJuYWlsX2V4dGVuc2lvbnMnKSk7CgkJZm9yZWFjaCggJHRodW1iX2V4dF9hcnIgYXMgJHRodW1iX2V4dCApCgkJCXsKCQkJCWlmKCAiLiIuJHRodW1iX2V4dCA9PSAkZmlsZWV4dGVuc2lvbiApCgkJCQkJewoJCQkJCQkvLyBkZWxldGUgYW55IHByZXZpb3VzIHRodW1ibmFpbAoJCQkJCQlpZiggIWVtcHR5KCRyb3dbJ3VwbG9hZF90aHVtYm5haWwnXSkgKQoJCQkJCQkJewoJCQkJCQkJCSRvbGRmaWxlID0gJHRuZGlyLkRJUkVDVE9SWV9TRVBBUkFUT1IuJ3RodW1iXycuJHJvd1sndXBsb2FkX3RodW1ibmFpbCddOwoJCQkJCQkJCWlmKCBmaWxlX2V4aXN0cygkb2xkZmlsZSkgKQoJCQkJCQkJCQl7CgkJCQkJCQkJCQlAdW5saW5rKCRvbGRmaWxlKTsKCQkJCQkJCQkJfQoJCQkJCQkJfQoKCQkJCQkJLy8gZ2VuZXJhdGUgaXQuCgkJCQkJCSR0aGlzLT5pbWFnZVRyYW5zZm9ybSgkZnJvbWZpbGUsJGRlc3QsCgkJCQkJCQkJCQkJCQkJCQkJJHRoaXMtPkdldFByZWZlcmVuY2UoJ2F1dG90aHVtYm5haWxfc2l6ZScpKTsKCgkJCQkJCS8vIHVwZGF0ZSB0aGUgcmVjb3JkLgoJCQkJCQkkbmV3dGh1bWIgPSAndGh1bWJfJy4kcm93Wyd1cGxvYWRfbmFtZSddOwoJCQkJCQkkcXVlcnkgPSAnVVBEQVRFICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2FkcwogICAgICAgICAgICAgICAgICAgICAgICAgU0VUIHVwbG9hZHNfdGh1bW5haWwgPSA/CiAgICAgICAgICAgICAgICAgICAgICAgV0hFUkUgdXBsb2FkX2lkID0gPyc7CgkJCQkJCSRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkoJG5ld3RodW1iLCRwYXJhbXNbJ3VwbG9hZF9pZCddKSk7CgkJCQkJCWJyZWFrOwoJCQkJCX0KCQkJfQogICAgJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkLCAnZmlsZXMnLCBhcnJheSggJ2N1cmNhdGVnb3J5JyA9PiAkcGFyYW1zWydjYXRlZ29yeV9pZCddKSApOwogIH0KCgppZiggJHBhcmFtc1snaW5wdXRfbW92ZWNhdGVnb3J5J10gIT0gJHJvd1sndXBsb2FkX2NhdGVnb3J5X2lkJ10gfHwKICAgICRwYXJhbXNbJ2lucHV0X3VwbG9hZG5hbWUnXSAhPSAkcm93Wyd1cGxvYWRfbmFtZSddICkgewogIC8vIGxvb2tzIGxpa2Ugd2UgaGF2ZSB0byBtb3ZlIGl0CiAgLy8gZ2V0IHRoZSBpbmZvIGZvciB0aGUgbmV3IGNhdGVnb3J5CiAgJHF1ZXJ5ID0gIlNFTEVDVCAqIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX2NhdGVnb3JpZXMgV0hFUkUgdXBsb2FkX2NhdGVnb3J5X2lkID0gPyI7CiAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcXVlcnksIGFycmF5KCAkcGFyYW1zWydpbnB1dF9tb3ZlY2F0ZWdvcnknXSApICk7CiAgJGNhdDFyb3cgPSAkZGJyZXN1bHQtPkZldGNoUm93KCk7CiAgaWYoICEkY2F0MXJvdyApIHsKICAgICR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSAoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsICR0aGlzLT5MYW5nICgnZXJyb3JfZGJlcnJvcicpKTsKICAgIHJldHVybjsKICB9CgogIC8vIGFuZCB0aGUgb2xkIGNhdGVnb3J5CiAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcXVlcnksIGFycmF5KCAkcm93Wyd1cGxvYWRfY2F0ZWdvcnlfaWQnXSApICk7CiAgJGNhdDJyb3cgPSAkZGJyZXN1bHQtPkZldGNoUm93KCk7CiAgaWYoICEkY2F0MnJvdyApIHsKICAgICR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSAoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsICR0aGlzLT5MYW5nICgnZXJyb3JfZGJlcnJvcicpKTsKICAgIHJldHVybjsKICB9CiAgICAgIAogIC8vIG5vdyB3ZSBjYW4gbW92ZSB0aGUgZmlsZSBmcm9tIGRpcmVjdG9yeSBvbmUgdG8gdHdvLgogIC8vIGlmIGl0IGRvZXNuJ3QgYWxyZWFkeSBleGlzdCBpbiB0aGUgZGVzdGluYXRpb24gZGlyZWN0b3J5CiAgJHRvZmlsZSAgID0gJHRoaXMtPl91cGxvYWRQYXRoKCAkY2F0MXJvd1sndXBsb2FkX2NhdGVnb3J5X3BhdGgnXSwgdHJpbSgkcGFyYW1zWydpbnB1dF91cGxvYWRuYW1lJ10pICk7CgogIC8vIG1vdmUgdGhlIGZpbGUKICBpZiggZmlsZV9leGlzdHMoICR0b2ZpbGUgKSApIHsKICAgICR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSAoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsICR0aGlzLT5MYW5nICgnZXJyb3JfZmlsZWV4aXN0cycsJHRvZmlsZSkpOwogICAgcmV0dXJuOwogIH0KICBpZiggIXJlbmFtZSggJGZyb21maWxlLCAkdG9maWxlICkgKSB7CiAgICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UgKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAkdGhpcy0+TGFuZyAoJ2Vycm9yX2Nhbm5vdHJlbmFtZScpKTsKICAgIHJldHVybjsKICB9CgogIC8vIGFuZCBtb3ZlIGFueSB0aHVtYm5haWwKCWlmKCAhZW1wdHkoJHJvd1sndXBsb2FkX3RodW1ibmFpbCddKSApCgkJewoJCQkkdG5fZnJvbWZpbGUgPSAkdGhpcy0+X2NhdGVnb3J5UGF0aCggJGNhdDJyb3dbJ3VwbG9hZF9jYXRlZ29yeV9wYXRoJ10uRElSRUNUT1JZX1NFUEFSQVRPUi4KCQkJCQkJCQkJCQkJCQkJCQkJCQkJICRyb3dbJ3VwbG9hZF90aHVtYm5haWwnXSApOwoJCQkkdGh1bWJfZXh0ID0gc3RycmNocigkcm93Wyd1cGxvYWRfdGh1bWJuYWlsJ10sJy4nKTsKCQkJJGZuID0gdHJpbSgkcGFyYW1zWydpbnB1dF91cGxvYWRuYW1lJ10pOwoJCQkkdG1wID0gc3RycnBvcygkZm4sJy4nKTsKCQkJaWYoICR0bXAgIT09IEZBTFNFICkKCQkJCXsKCQkJCQkkZm4gPSBzdWJzdHIoJGZuLDAsJHRtcCk7CgkJCQl9CiAJCQkkbmV3dGh1bWIgPSAndGh1bWJfJy4kZm4uJHRodW1iX2V4dDsKCQkJJGNhdHBhdGggPSAkY2F0MXJvd1sndXBsb2FkX2NhdGVnb3J5X3BhdGgnXTsKCQkJJHRuX3RvZmlsZSAgID0gJHRoaXMtPl9jYXRlZ29yeVBhdGgoICRjYXRwYXRoLkRJUkVDVE9SWV9TRVBBUkFUT1IuCgkJCQkJCQkJCQkJCQkJCQkJCQkJCSAkbmV3dGh1bWIpOwoJCQkvLyBhbmQgcmVuYW1lIHRoZSB0aHVtYm5haWwKCQkJQHJlbmFtZSggJHRuX2Zyb21maWxlLCAkdG5fdG9maWxlICk7CiAgICB9CgogICRuZXdjYXRlZ29yeSA9ICRwYXJhbXNbJ2lucHV0X21vdmVjYXRlZ29yeSddOwogICR0aGlzLT5BdWRpdCggMCwgJHRoaXMtPkxhbmcoJ2ZyaWVuZGx5bmFtZScpLAoJCSR0aGlzLT5MYW5nKCdtb3ZlZGZpbGUnLCAkZnJvbWZpbGUsICR0b2ZpbGUgKSk7CiB9CgppZiggJHBhcmFtc1snaW5wdXRfdXBsb2FkZGVzYyddICE9ICRyb3dbJ3VwbG9hZF9kZXNjcmlwdGlvbiddICkgewogICRuZXdkZXNjID0gdHJpbSgkcGFyYW1zWydpbnB1dF91cGxvYWRkZXNjJ10pOwogfQppZiggJHBhcmFtc1snaW5wdXRfdXBsb2FkbmFtZSddICE9ICRyb3dbJ3VwbG9hZF9uYW1lJ10gKSB7CiAgJG5ld25hbWUgPSB0cmltKCRwYXJhbXNbJ2lucHV0X3VwbG9hZG5hbWUnXSk7CiB9CmlmKCAkcGFyYW1zWydpbnB1dF91cGxvYWRzdW1tYXJ5J10gIT0gJHJvd1sndXBsb2FkX3N1bW1hcnknXSApIHsKICAkbmV3c3VtbWFyeSA9IHRyaW0oJHBhcmFtc1snaW5wdXRfdXBsb2Fkc3VtbWFyeSddKTsKIH0KaWYoICRwYXJhbXNbJ2lucHV0X3VwbG9hZGF1dGhvciddICE9ICRyb3dbJ3VwbG9hZF9hdXRob3InXSApIHsKICAkbmV3YXV0aG9yID0gdHJpbSgkcGFyYW1zWydpbnB1dF91cGxvYWRhdXRob3InXSk7CiB9CgokcXVlcnkgPSAiVVBEQVRFICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2FkcyBTRVQKICAgICAgICAgICAgICAgICB1cGxvYWRfbmFtZSA9ID8sIHVwbG9hZF9hdXRob3IgPSA/LAogICAgICAgICAgICAgICAgIHVwbG9hZF9zdW1tYXJ5ID0gPywgdXBsb2FkX2Rlc2NyaXB0aW9uID0gPywKICAgICAgICAgICAgICAgICB1cGxvYWRfY2F0ZWdvcnlfaWQgPSA/ICwKICAgICAgICAgICAgICAgICB1cGxvYWRfdGh1bWJuYWlsID0gPwogICAgICAgICAgIFdIRVJFIHVwbG9hZF9pZCA9ID8iOwokZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxdWVyeSwgYXJyYXkoICRuZXduYW1lLCAkbmV3YXV0aG9yLCAkbmV3c3VtbWFyeSwgJG5ld2Rlc2MsICRuZXdjYXRlZ29yeSwgCgkJCQkJCQkJCQkJCQkJCQkJCQkJICRuZXd0aHVtYiwgJHBhcmFtc1sndXBsb2FkX2lkJ10gKSApOwoKLy8gZGVsZXRlIGFueSBleGlzdGluZyBjdXN0b20gZmllbGRzCiRxdWVyeSA9ICdERUxFVEUgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHNfZmllbGR2YWxzIAogICAgICAgICAgIFdIRVJFIHVwbG9hZF9pZCA9ID8nOwokZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KCRwYXJhbXNbJ3VwbG9hZF9pZCddKSk7CgovLyBoYW5kbGUgbmV3IGN1c3RvbSBmaWVsZCB2YWx1ZXMuCiRpcXVlcnkgPSAnSU5TRVJUIElOVE8gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzX2ZpZWxkdmFscyAKICAgICAgICAgICAgICAgICAodXBsb2FkX2lkLCBmbGRfaWQsIHZhbHVlKSBWQUxVRVMgKD8sPyw/KSc7CmZvcmVhY2goICRwYXJhbXMgYXMgJGtleSA9PiAkdmFsdWUgKQp7CglpZiggIXN0YXJ0c3dpdGgoJGtleSwnZmllbGRfJykgKQoJCXsKCQkJY29udGludWU7CgkJfQoJCgkkZmllbGRfaWQgPSAoaW50KXN1YnN0cigka2V5LDYpOwoJaWYoIGlzX2FycmF5KCAkdmFsdWUgKSApCgkJewoJCQkkdmFsdWUgPSBpbXBsb2RlKCcsJywkdmFsdWUpOwoJCX0KCSRkYi0+RXhlY3V0ZSgkaXF1ZXJ5LGFycmF5KCRwYXJhbXNbJ3VwbG9hZF9pZCddLCRmaWVsZF9pZCwkdmFsdWUpKTsKfQoKJHRoaXMtPkF1ZGl0KCAwLCAkdGhpcy0+TGFuZygnZnJpZW5kbHluYW1lJyksCgkJCQkJCQkkdGhpcy0+TGFuZygnZWRpdGVkJywgJHJvd1sndXBsb2FkX25hbWUnXSkgKTsKCiMgYWxsb3cgbmV3IHRodW1ibmFpbCB0byBiZSB1cGxvYWRlZAokdG1wID0gJGlkLidpbnB1dF9uZXd0aHVtYm5haWwnOwppZiggaXNzZXQoJF9GSUxFU1skdG1wXSkgJiYgIWVtcHR5KCRfRklMRVNbJHRtcF1bJ25hbWUnXSkgJiYKCQkkX0ZJTEVTWyR0bXBdWydzaXplJ10gPiAwICYmCgkJJF9GSUxFU1skdG1wXVsnZXJyb3InXSA9PSAwICkKCXsKCQkkbmFtZSA9ICRyb3dbJ3VwbG9hZF9uYW1lJ107CgkJJHRodW1iX2V4dCA9IHN0cnJjaHIoJF9GSUxFU1skdG1wXVsnbmFtZSddLCcuJyk7CgkJJGZpbGVfZXh0ID0gc3RycmNocigkbmFtZSwnLicpOwoJCSRmbmFtZSA9IHN1YnN0cigkbmFtZSwwLHN0cmxlbigkbmFtZSktc3RybGVuKCRmaWxlX2V4dCkpOwoJCSR0aHVtYl9uYW1lID0gJ3RodW1iXycuJGZuYW1lLiR0aHVtYl9leHQ7CgkJJHRuX29sZGZpbGUgPSAkdGhpcy0+X2NhdGVnb3J5UGF0aCggJGNhdHBhdGguRElSRUNUT1JZX1NFUEFSQVRPUi4kcm93Wyd1cGxvYWRfdGh1bWJuYWlsJ10pOwoKCQlpZiggZmlsZV9leGlzdHMoICR0bl9vbGRmaWxlICkgKQoJCQl7CgkJCQlAdW5saW5rKCR0bl9vbGRmaWxlKTsKCQkJfQoJCSR0bl9uZXdmaWxlICAgPSAkdGhpcy0+X2NhdGVnb3J5UGF0aCggJGNhdHBhdGguRElSRUNUT1JZX1NFUEFSQVRPUi4KCQkJCQkJCQkJCQkJCQkJCQkJCQkgJHRodW1iX25hbWUpOwoJCWlmKCBmaWxlX2V4aXN0cygkdG5fbmV3ZmlsZSkgKQoJCQl7CgkJCQlAdW5saW5rKCR0bl9uZXdmaWxlKTsKCQkJfQoJCWNtc19tb3ZlX3VwbG9hZGVkX2ZpbGUoICRfRklMRVNbJHRtcF1bJ3RtcF9uYW1lJ10sJHRuX25ld2ZpbGUgKTsKCgkJJHF1ZXJ5ID0gJ1VQREFURSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHMgCiAgICAgICAgICAgICAgICAgU0VUIHVwbG9hZF90aHVtYm5haWwgPSA/CiAgICAgICAgICAgICAgIFdIRVJFIHVwbG9hZF9pZCA9ID8nOwoJCSRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkoJHRodW1iX25hbWUsJHJvd1sndXBsb2FkX2lkJ10pKTsKCX0KCgovLyBkb25lLgokdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsICdmaWxlcycsIGFycmF5KCAnY3VyY2F0ZWdvcnknID0+ICRwYXJhbXNbJ2NhdGVnb3J5X2lkJ10pICk7CgovLyBFT0YKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.do_upload.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLWZpbGUtc3R5bGU6bGludXg7IHRhYi13aWR0aDoyOyBpbmRlbnQtdGFicy1tb2RlOnQ7IGMtYmFzaWMtb2Zmc2V0OiAyOyAtKi0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojIFZlcnNpb246IDEuMy4wLWJldGExLCBjYWxndXkxMDAwCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOgkvL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KaWYoICFpc3NldCgkZ0NtcykgKSBleGl0KCk7CgovLyBhIHVzZXIgaXMgdHJ5aW5nIHRvIHVwbG9hZCBzb21ldGhpbmcKLy8gZmlyc3QgY2hlY2sgaWYgY2FwdGNoYSB3YXMgc2V0CiRjYXB0Y2hhID0mICR0aGlzLT5HZXRNb2R1bGVJbnN0YW5jZSgnQ2FwdGNoYScpOwppZiggaXNfb2JqZWN0KCRjYXB0Y2hhKSAmJiAhaXNzZXQoJHBhcmFtc1snbm9jYXB0Y2hhJ10pICkgewogIGlmICghJGNhcHRjaGEtPkNoZWNrQ2FwdGNoYSgkcGFyYW1zWydpbnB1dF9jYXB0Y2hhJ10pKSB7CiAgICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UoICRpZCwgJHBhcmFtcywgJHJldHVybmlkLAoJCQkgICAgICAkdGhpcy0+TGFuZygnZXJyb3JfY2FwdGNoYW1pc21hdGNoJykpOwogICAgcmV0dXJuOwogIH0KIH0KCiRwYXJhbXNbJ2lucHV0X3JlcGxhY2UnXSA9IDA7IC8vIG5vIHJlcGxhY2luZyBmaWxlcyBhbGxvd2VkLiAKJHJldCA9ICR0aGlzLT5BdHRlbXB0VXBsb2FkICgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCk7CmlmKCAkcmV0WzBdID09IEZBTFNFICkgewogICR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSggJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsCgkJCSAgICAkcmV0WzFdICk7CiAgcmV0dXJuOwogfQokc3RyID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ3JlZGlyZWN0X29uX3VwbG9hZCcpOwokaWQgPSAkcmV0dXJuaWQ7CmlmKCAkc3RyICE9ICcnICkKICB7CiAgICAkaWQgPSBDb250ZW50TWFuYWdlcjo6R2V0UGFnZUlERnJvbUFsaWFzKCAkc3RyICk7CiAgICBpZiggISRpZCApCiAgICAgIHsKCS8vIHBhZ2Ugbm90IGZvdW5kLCBpZ25vcmUgaXQKCSRpZCA9ICRyZXR1cm5pZDsKICAgICAgfQogIH0KJHRoaXMtPlJlZGlyZWN0Q29udGVudCggJGlkICk7CgojCiMgRU9GCiMKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.editcategory.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLWZpbGUtc3R5bGU6bGludXg7IHRhYi13aWR0aDoyOyBpbmRlbnQtdGFicy1tb2RlOnQ7IGMtYmFzaWMtb2Zmc2V0OiAyOyAtKi0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgPSBhbGxvdyB1c2VycyB0byB1cGxvYWQgc3R1ZmYsIGEgcHNldWRvIGZpbGUgbWFuYWdlciBtb2R1bGUKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6CS8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQppZiggIWlzc2V0KCRnQ21zKSApIGV4aXQ7CmlmICghJHRoaXMtPkNoZWNrUGVybWlzc2lvbiAoJ01hbmFnZSBVcGxvYWRzJykpIGV4aXQ7Cgokc21hcnR5LT5hc3NpZ24gKCd0aXRsZScsICR0aGlzLT5MYW5nICgnZWRpdGNhdGVnb3J5JykpOwoKLy8gY2hlY2sgdGhpbmdzIG91dAppZiAoIWlzc2V0ICgkcGFyYW1zWydjYXRlZ29yeV9pZCddKSkKICB7CiAgICAkc21hcnR5LT5hc3NpZ24gKCdtZXNzYWdlJywgJHRoaXMtPkxhbmcgKCdlcnJvcl9ub2NhdGVnb3J5JykpOwogICAgJHNtYXJ0eS0+YXNzaWduICgnZXJyb3InLCAxKTsKICAgIGVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSAoJ2FkZGNhdGVnb3J5LnRwbCcpOwogICAgcmV0dXJuOwogIH0KCi8vIGdldCB0aGUgY2F0ZWdvcnkgaW5mbyBmcm9tIHRoZSBkYXRhYmFzZSAoZm9yIHRoaXMgY2F0ZWdvcnkpCiRxdWVyeSA9CiAgIlNFTEVDVCAqIEZST00gIi5jbXNfZGJfcHJlZml4ICgpLgogICJtb2R1bGVfdXBsb2Fkc19jYXRlZ29yaWVzIFdIRVJFIHVwbG9hZF9jYXRlZ29yeV9pZCA9ID8iOwokZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUgKCRxdWVyeSwgYXJyYXkoJHBhcmFtc1snY2F0ZWdvcnlfaWQnXSkpOwppZiAoISRkYnJlc3VsdCkKICB7CiAgICAkc21hcnR5LT5hc3NpZ24gKCdtZXNzYWdlJywgJHRoaXMtPkxhbmcgKCdlcnJvcl9kYmVycm9yJykpOwogICAgJHNtYXJ0eS0+YXNzaWduICgnZXJyb3InLCAxKTsKICAgIGVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSAoJ2FkZGNhdGVnb3J5LnRwbCcpOwogICAgcmV0dXJuOwogIH0KJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3cgKCk7CmlmICghJHJvdykKICB7CiAgICAkc21hcnR5LT5hc3NpZ24gKCdtZXNzYWdlJywgJHRoaXMtPkxhbmcgKCdlcnJvcl9kYmVycm9yJykpOwogICAgJHNtYXJ0eS0+YXNzaWduICgnZXJyb3InLCAxKTsKICAgIGVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSAoJ2FkZGNhdGVnb3J5LnRwbCcpOwogICAgcmV0dXJuOwogIH0KCi8vIHBvcHVsYXRlIHRoZSB0ZW1wbGF0ZQokc21hcnR5LT5hc3NpZ24gKCJzdGFydGZvcm0iLAoJCQkJCQkJCSAkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0ICgkaWQsICdkb19lZGl0Y2F0ZWdvcnknLCAkcmV0dXJuaWQsCgkJCQkJCQkJCQkJCQkJCQkJCQkJICdwb3N0JywnJyxmYWxzZSwnJywkcGFyYW1zKSk7CiRzbWFydHktPmFzc2lnbiAoJ3N1Ym1pdCcsCgkJCQkJCQkJICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCAoJGlkLCAnc3VibWl0JywgJHRoaXMtPkxhbmcoJ3N1Ym1pdCcpKSk7CiRzbWFydHktPmFzc2lnbiAoJ2NhbmNlbCcsCgkJCQkJCQkJICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCAoJGlkLCAnY2FuY2VsJywgJHRoaXMtPkxhbmcoJ2NhbmNlbCcpKSk7ICAgIAoKJGFkZHRleHRfdGh1bWJuYWlscyA9ICd0aXRsZT0iJy4kdGhpcy0+TGFuZygndGl0bGVfY3JlYXRlX3RodW1ibmFpbHMnKS4nIic7CiRzbWFydHktPmFzc2lnbiAoJ3RodW1ibmFpbHMnLAoJCQkJCQkJCSAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoICRpZCwgJ3RodW1ibmFpbHMnLCAKCQkJCQkJCQkJCQkJCQkJCQkJCQkJICR0aGlzLT5MYW5nKCdjcmVhdGVfdGh1bWJuYWlscycpLAoJCQkJCQkJCQkJCQkJCQkJCQkJCQkgJGFkZHRleHRfdGh1bWJuYWlscyApKTsKCiRhZGR0ZXh0X3NjYW4gPSAndGl0bGU9IicuJHRoaXMtPkxhbmcoJ3RpdGxlX3NjYW4nKS4nIic7CiRzbWFydHktPmFzc2lnbiAoJ3NjYW4nLAoJCQkJCQkJCSAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoICRpZCwgJ3NjYW4nLCAKCQkJCQkJCQkJCQkJCQkJCQkJCQkJICR0aGlzLT5MYW5nKCdzY2FuJyksCgkJCQkJCQkJCQkJCQkJCQkJCQkJCSAkYWRkdGV4dF9zY2FuKSk7CiRzbWFydHktPmFzc2lnbiAoJ2VuZGZvcm0nLCAkdGhpcy0+Q3JlYXRlRm9ybUVuZCAoKSk7Cgokc21hcnR5LT5hc3NpZ24gKCdwcm9tcHRfY2F0ZWdvcnluYW1lJywgCgkJCQkJCQkJICR0aGlzLT5MYW5nICgncHJvbXB0X2NhdGVnb3J5bmFtZScpKTsKJHNtYXJ0eS0+YXNzaWduICgnaW5wdXRfY2F0ZWdvcnluYW1lJywgCgkJCQkJCQkJICR0aGlzLT5DcmVhdGVJbnB1dFRleHQgKCRpZCwgJ2lucHV0X2NhdGVnb3J5bmFtZScsCgkJCQkJCQkJCQkJCQkJCSRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9uYW1lJ10sIDIwLCA4MCkpOwokc21hcnR5LT5hc3NpZ24gKCdpbmZvX2NhdGVnb3J5bmFtZScsICR0aGlzLT5MYW5nKCdpbmZvX2NhdGVnb3J5bmFtZScpKTsKJHNtYXJ0eS0+YXNzaWduICgncHJvbXB0X2NhdGVnb3J5ZGVzYycsICR0aGlzLT5MYW5nICgncHJvbXB0X2NhdGVnb3J5ZGVzYycpKTsKJHNtYXJ0eS0+YXNzaWduICgnaW5wdXRfY2F0ZWdvcnlkZXNjJywKCQkgICAgICAgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCAoJGlkLCAnaW5wdXRfY2F0ZWdvcnlkZXNjJywKCQkJCQkgICAgICAgJHJvd1sndXBsb2FkX2NhdGVnb3J5X2Rlc2NyaXB0aW9uJ10sIDgwLCAyNTUpKTsKJHNtYXJ0eS0+YXNzaWduICgnaW5mb19jYXRlZ29yeWRlc2MnLCAkdGhpcy0+TGFuZygnaW5mb19jYXRlZ29yeWRlc2MnKSk7CiRzbWFydHktPmFzc2lnbiAoJ3Byb21wdF9jYXRlZ29yeXBhdGgnLCR0aGlzLT5MYW5nICgncHJvbXB0X2NhdGVnb3J5cGF0aCcpKTsKJHNtYXJ0eS0+YXNzaWduICgnaW5wdXRfY2F0ZWdvcnlwYXRoJywKCQkgICAgICAgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCAoJGlkLCAnaW5wdXRfY2F0ZWdvcnlwYXRoJywKCQkJCQkJCQkJCQkJCQkJCQkgJHJvd1sndXBsb2FkX2NhdGVnb3J5X3BhdGgnXSwKCQkJCQkJCQkJCQkJCQkJCQkgNDAsIDI1NSwgJ3JlYWRvbmx5PSJyZWFkb25seSInKSk7CiRzbWFydHktPmFzc2lnbiAoJ2luZm9fY2F0ZWdvcnlwYXRoJywgJHRoaXMtPkxhbmcoJ2luZm9fY2F0ZWdvcnlwYXRoJykpOwokc21hcnR5LT5hc3NpZ24gKCdwcm9tcHRfY2F0ZWdvcnlsaXN0YWJsZScsIAoJCQkJCQkJCSAkdGhpcy0+TGFuZyAoJ3Byb21wdF9jYXRlZ29yeWxpc3RhYmxlJykpOwokc21hcnR5LT5hc3NpZ24gKCdpbnB1dF9jYXRlZ29yeWxpc3RhYmxlJywKCQkgICAgICAgJHRoaXMtPkNyZWF0ZUlucHV0Q2hlY2tib3ggKCRpZCwKCQkJCQkJICAgJ2lucHV0X2NhdGVnb3J5bGlzdGFibGUnLCAxLCAkcm93Wyd1cGxvYWRfY2F0ZWdvcnlfbGlzdGFibGUnXSkpOwokc21hcnR5LT5hc3NpZ24oJ3Byb21wdF9jYXRlZ29yeWRlbGV0YWJsZScsCgkJJHRoaXMtPkxhbmcgKCdwcm9tcHRfY2F0ZWdvcnlkZWxldGFibGUnKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfY2F0ZWdvcnlkZWxldGFibGUnLAoJCSR0aGlzLT5DcmVhdGVJbnB1dENoZWNrYm94ICgkaWQsCgkJCQkJICAgICdpbnB1dF9jYXRlZ29yeWRlbGV0YWJsZScsCgkJCQkJICAgIDEsJHJvd1sndXBsb2FkX2NhdGVnb3J5X2RlbGV0YWJsZSddKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfY2F0ZWdvcnlfZXhwaXJlc19ocnMnLAoJCSR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLAoJCQkJCQkJCQkJCQkJICdpbnB1dF9jYXRlZ29yeV9leHBpcmVzX2hycycsCgkJCQkJCQkJCQkJCQkgJHJvd1sndXBsb2FkX2NhdGVnb3J5X2V4cGlyZXNfaHJzJ10sMyw0KSk7Cgokc21hcnR5LT5hc3NpZ24gKCdwYXRobWVzc2FnZScsICR0aGlzLT5MYW5nICgnY2Fubm90bW9kaWZ5cGF0aCcpKTsKJHNtYXJ0eS0+YXNzaWduICgnaGlkZGVuJywKCQkgICAgICAgJHRoaXMtPkNyZWF0ZUlucHV0SGlkZGVuICgkaWQsICdjYXRlZ29yeV9pZCcsCgkJCQkJCSAkcGFyYW1zWydjYXRlZ29yeV9pZCddKSk7CgokZmV1c2VycyA9JiAkdGhpcy0+R2V0TW9kdWxlSW5zdGFuY2UoJ0Zyb250RW5kVXNlcnMnKTsKaWYoICRmZXVzZXJzICkKICB7CiAgICAvLyBnZXQgYSBsaXN0IG9mIHRoZSBncm91cHMgaW4gdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlCiAgICAkZ3JvdXBzID0gJGZldXNlcnMtPkdldEdyb3VwTGlzdCgpOwoJCSRzZWxncm91cHMgPSBhcnJheSgpOwoJCWlmKCBpc3NldCgkcm93Wyd1cGxvYWRfY2F0ZWdvcnlfZ3JvdXBzJ10pICYmIAoJCQkJJHJvd1sndXBsb2FkX2NhdGVnb3J5X2dyb3VwcyddICE9ICcnICkKCQkJewoJCQkJJHNlbGdyb3VwcyA9IGV4cGxvZGUoJywnLCRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9ncm91cHMnXSk7CgkJCX0KICAgIGlmKCBjb3VudCgkZ3JvdXBzKSA+IDAgKQogICAgICB7CgkJCQkkc21hcnR5LT5hc3NpZ24oJ3Byb21wdF9ncm91cGxpc3QnLCR0aGlzLT5MYW5nKCdwcm9tcHRfZ3JvdXBsaXN0JykpOwoJCQkJJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9ncm91cGxpc3QnLAoJCQkJCQkJCQkJCQkkdGhpcy0+Q3JlYXRlSW5wdXRTZWxlY3RMaXN0KCRpZCwnaW5wdXRfZ3JvdXBsaXN0W10nLAoJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCSAkZ3JvdXBzLCRzZWxncm91cHMpKTsKCQkJCSRzbWFydHktPmFzc2lnbignaW5mb19ncm91cGxpc3QnLAoJCQkJCQkJCQkJCQkkdGhpcy0+TGFuZygnaW5mb19ncm91cGxpc3QnKSk7CiAgICAgIH0KICB9CiAgICAKZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlICgnYWRkY2F0ZWdvcnkudHBsJyk7CgovLyBFT0YKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.editupload.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLWZpbGUtc3R5bGU6bGludXg7IHRhYi13aWR0aDoyOyBpbmRlbnQtdGFicy1tb2RlOnQ7IGMtYmFzaWMtb2Zmc2V0OiAyOyAtKi0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojIFZlcnNpb246IDEuMy4wLWJldGExLCBjYWxndXkxMDAwCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOgkvL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KaWYoICFpc3NldCgkZ0NtcykgKSBleGl0OwppZiggISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01hbmFnZSBVcGxvYWRzJykgJiYgISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ1VwbG9hZCBGaWxlcyB0byBVcGxvYWRzJykpCiAgewogICAgcmV0dXJuOwogIH0KCi8vIGNoZWNrIHRoaW5ncyBvdXQKaWYgKCFpc3NldCAoJHBhcmFtc1sndXBsb2FkX2lkJ10pKQogIHsKICAgICRzbWFydHktPmFzc2lnbiAoJ21lc3NhZ2UnLCAkdGhpcy0+TGFuZyAoJ2Vycm9yX25vaWQnKSk7CiAgICAkc21hcnR5LT5hc3NpZ24gKCdlcnJvcicsIDEpOwogICAgZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlICgnZWRpdHVwbG9hZC50cGwnKTsKICAgIHJldHVybjsKICB9CgovLyBnZXQgdGhlIGluZm8gZnJvbSB0aGUgZGF0YWJhc2UgKGZvciB0aGlzIGZpbGUpCiRyb3cgPSAkdGhpcy0+R2V0VXBsb2FkRGV0YWlscygkcGFyYW1zWyd1cGxvYWRfaWQnXSk7CmlmICghJHJvdykKICB7CiAgICAkc21hcnR5LT5hc3NpZ24gKCdtZXNzYWdlJywgJHRoaXMtPkxhbmcgKCdlcnJvcl9kYmVycm9yJykpOwogICAgJHNtYXJ0eS0+YXNzaWduICgnZXJyb3InLCAxKTsKICAgIGVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSAoJ2VkaXR1cGxvYWQudHBsJyk7CiAgICByZXR1cm47CiAgfQoKLy8gR2V0IHRoZSBmaWxlbmFtZSBhbmQgZXh0ZW5zaW9uIG9mIHRoaXMgZmlsZQokZmlsZWV4dGVuc2lvbiA9IHN0cnRvbG93ZXIoc3RycmNocigkcm93Wyd1cGxvYWRfbmFtZSddLCcuJykpOwokY2FuX2dlbl90aHVtYm5haWwgPSAwOwp7CiAgJHRodW1iX2V4dF9hcnIgPSBleHBsb2RlKCIsIiwKCQkJCQkJCQkJCQkJCSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnYXV0b3RodW1ibmFpbF9leHRlbnNpb25zJykpOwogIGZvcmVhY2goICR0aHVtYl9leHRfYXJyIGFzICR0aHVtYl9leHQgKQogICAgewogICAgICBpZiggIi4iLiR0aHVtYl9leHQgPT0gJGZpbGVleHRlbnNpb24gKQoJCQkJewoJCQkJCSRjYW5fZ2VuX3RodW1ibmFpbCA9IDE7CgkJCQkJYnJlYWs7CgkJCQl9CiAgICB9Cn0KCi8vIGFuZCB0aGUgY2F0ZWdvcnkgaW5mbyBmb3IgdGhpcyBjYXRlZ29yeQokY2F0cGF0aCA9ICR0aGlzLT5nZXRDYXRlZ29yeVBhdGhGcm9tSUQoJHJvd1sndXBsb2FkX2NhdGVnb3J5X2lkJ10pOwoKLy8gZ2V0IHRoZSBjYXRlZ29yeSBsaXN0CiRjYXRlZ29yeWxpc3QgPSBhcnJheSAoKTsKewoJJHF1ZXJ5ID0KCQkiU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXggKCkuCgkJIm1vZHVsZV91cGxvYWRzX2NhdGVnb3JpZXMgT1JERVIgQlkgdXBsb2FkX2NhdGVnb3J5X25hbWUgQVNDIjsKCSRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSAoJHF1ZXJ5KTsKCWlmICghJGRicmVzdWx0KQoJCXsKCQkJJHNtYXJ0eS0+YXNzaWduICgnZXJyb3InLCAxKTsKCQkJJHNtYXJ0eS0+YXNzaWduICgnbWVzc2FnZScsICR0aGlzLT5MYW5nICgnZXJyb3Jfbm9jYXRlZ29yaWVzJykpOwoJCX0KCWVsc2UKCQl7CgkJCS8vIHRoaXMgY291bGQgcHJvYmFibHkgYmUgZG9uZSB3aXRoIGEgZm9yX2VhY2gsIGJ1dCB3aGF0IHRoZSBoZWxsCgkJCXdoaWxlICgkcm93MiA9ICRkYnJlc3VsdC0+RmV0Y2hSb3cgKCkpCgkJCQl7CgkJCQkJJGNhdGVnb3J5bGlzdFskcm93MlsndXBsb2FkX2NhdGVnb3J5X25hbWUnXV0gPQoJCQkJCQkkcm93MlsndXBsb2FkX2NhdGVnb3J5X2lkJ107CgkJCQl9CgkJfQp9CgovLyBnZXQgY3VzdG9tIGZpZWxkIGluZm8uCiRmaWVsZHMgPSBhcnJheSgpOwp7CiAgJHF1ZXJ5ID0gJ1NFTEVDVCAqIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzX2ZpZWxkZGVmcyBPUkRFUiBCWSBpb3JkZXInOwogICR0ZmllbGRzID0gJGRiLT5HZXRBcnJheSgkcXVlcnkpOwoKCSRxdWVyeSA9ICdTRUxFQ1QgKiBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2Fkc19maWVsZHZhbHMgV0hFUkUgdXBsb2FkX2lkID0gPyc7CgkkdG1wID0gJGRiLT5HZXRBcnJheSgkcXVlcnksYXJyYXkoJHBhcmFtc1sndXBsb2FkX2lkJ10pKTsKCSR0dmFscyA9ICR0aGlzLT5hcnJheV90b19oYXNoKCR0bXAsJ2ZsZF9pZCcpOwoKICBmb3IoICRpID0gMDsgJGkgPCBjb3VudCgkdGZpZWxkcyk7ICRpKysgKQogICAgewogICAgICAkdGZpZWxkc1skaV1bJ2F0dHJpYiddID0gdW5zZXJpYWxpemUoJHRmaWVsZHNbJGldWydhdHRyaWJzJ10pOwogICAgICB1bnNldCgkdGZpZWxkc1skaV1bJ2F0dHJpYnMnXSk7CgkJCSR0ZmllbGRzWyRpXVsndmFsdWUnXSA9ICR0dmFsc1skdGZpZWxkc1skaV1bJ2lkJ11dWyd2YWx1ZSddOwogICAgICAKICAgICAgc3dpdGNoKCR0ZmllbGRzWyRpXVsndHlwZSddKQoJCQkJewoJCQkJY2FzZSAndGV4dGFyZWEnOgoJCQkJCSR0ZmllbGRzWyRpXVsnaW5wdXQnXSA9IAoJCQkJCQkkdGhpcy0+Q3JlYXRlVGV4dEFyZWEoaXNzZXQoJHRmaWVsZHNbJGldWydhdHRyaWInXVsndXNld3lzaXd5ZyddKSAmJiAkdGZpZWxkc1skaV1bJ2F0dHJpYiddWyd1c2V3eXNpd3lnJ10gPT0gMSAmJgoJCQkJCQkJCQkJCQkJCQkJCSR0aGlzLT5HZXRQcmVmZXJlbmNlKCdhbGxvd19jb21tZW50X3d5c2l3eWcnLDApLAoJCQkJCQkJCQkJCQkJCQkJCSRpZCwKCQkJCQkJCQkJCQkJCQkJCQkkdGZpZWxkc1skaV1bJ3ZhbHVlJ10sCgkJCQkJCQkJCQkJCQkJCQkJJ2ZpZWxkXycuJHRmaWVsZHNbJGldWydpZCddKTsKCQkJCQlicmVhazsKCQkJCWNhc2UgJ2Ryb3Bkb3duJzoKCQkJCWNhc2UgJ211bHRpc2VsZWN0JzoKCQkJCQlpZiggaXNzZXQoJHRmaWVsZHNbJGldWydhdHRyaWInXVsnb3B0aW9ucyddKSApCgkJCQkJCXsKCQkJCQkJCSR0bXAgPSBleHBsb2RlKCJcbiIsJHRmaWVsZHNbJGldWydhdHRyaWInXVsnb3B0aW9ucyddKTsKCQkJCQkJCSR0bXAyID0gYXJyYXkoKTsKCQkJCQkJCWZvcmVhY2goICR0bXAgYXMgJG9uZSApCgkJCQkJCQkJewoJCQkJCQkJCQkka2V5ID0gJHZhbHVlID0gJG9uZTsKCQkJCQkJCQkJaWYoIHN0cnBvcygkb25lLCc9JykgIT09IEZBTFNFICkKCQkJCQkJCQkJCWxpc3QoJGtleSwkdmFsdWUpID0gZXhwbG9kZSgnPScsdHJpbSgkb25lKSwyKTsKCQkJCQkJCQkJJHRtcDJbdHJpbSgkdmFsdWUpXSA9IHRyaW0oJGtleSk7CgkJCQkJCQkJfQoJCQkJCQkJJHRmaWVsZHNbJGldWydhdHRyaWInXVsnb3B0aW9ucyddID0gJHRtcDI7CgkJCQkJCX0KCQkJCQlicmVhazsKCQkJCX0KICAgICAgCiAgICAgICRmaWVsZHNbJHRmaWVsZHNbJGldWydpZCddXSA9ICR0ZmllbGRzWyRpXTsKICAgIH0KfQoKLy8gcG9wdWxhdGUgdGhlIHRlbXBsYXRlCiRzbWFydHktPmFzc2lnbiAoInN0YXJ0Zm9ybSIsCgkJICR0aGlzLT5DcmVhdGVGb3JtU3RhcnQgKCRpZCwgJ2RvX2VkaXR1cGxvYWQnLCAkcmV0dXJuaWQsICdwb3N0JywgJ211bHRpcGFydC9mb3JtLWRhdGEnKSk7Ci8vIHRvZG8gY2hlY2sgdGhpcyB0byBzZWUgaWYgdGhlcmUgYXJlIHNwYWNlcyBpbiB0aGUgbmFtZQokYWRkdGV4dF90aHVtYm5haWwgPSAndGl0bGU9IicuJHRoaXMtPkxhbmcoJ3RpdGxlX2NyZWF0ZV90aHVtYm5haWwnKS4nIic7Ci8vICRzbWFydHktPmFzc2lnbiAoJ2ZpeCcsCi8vIAkJICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCAoJGlkLCAnZml4JywgJHRoaXMtPkxhbmcoJ2ZpeG1lJykpKTsKJHNtYXJ0eS0+YXNzaWduICgndGh1bWJuYWlsJywKCQkgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0ICgkaWQsICd0aHVtYm5haWwnLCAKCQkJCQkgICAkdGhpcy0+TGFuZygnY3JlYXRlX3RodW1ibmFpbCcpLAoJCQkJCSAgICRhZGR0ZXh0X3RodW1ibmFpbCkpOwokc21hcnR5LT5hc3NpZ24gKCdzdWJtaXQnLAoJCSAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQgKCRpZCwgJ3N1Ym1pdCcsICR0aGlzLT5MYW5nKCdzdWJtaXQnKSkpOwokc21hcnR5LT5hc3NpZ24gKCdjYW5jZWwnLAoJCSAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQgKCRpZCwgJ2NhbmNlbCcsICR0aGlzLT5MYW5nKCdjYW5jZWwnKSkpOwokc21hcnR5LT5hc3NpZ24gKCdlbmRmb3JtJywgJHRoaXMtPkNyZWF0ZUZvcm1FbmQgKCkpOwppZiggY291bnQoJGZpZWxkcykgKQoJewoJCSRzbWFydHktPmFzc2lnbignZmllbGRzJywkZmllbGRzKTsKCX0KCiRzbWFydHktPmFzc2lnbiAoJ3RpdGxlJywgJHRoaXMtPkxhbmcgKCdlZGl0dXBsb2FkJykpOyAgICAKJHNtYXJ0eS0+YXNzaWduICgncHJvbXB0X3VwbG9hZG5hbWUnLCAkdGhpcy0+TGFuZygnbmFtZScpKTsKJHNtYXJ0eS0+YXNzaWduICgnaW5wdXRfdXBsb2FkbmFtZScsIAoJCSAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwnaW5wdXRfdXBsb2FkbmFtZScsCgkJCQkJJHJvd1sndXBsb2FkX25hbWUnXSwgMjAsIDI1NSApKTsKLy8gdGh1bWJuYWlsPwokdG5maWxlID0gJHRoaXMtPl9jYXRlZ29yeVBhdGgoICRjYXRwYXRoLkRJUkVDVE9SWV9TRVBBUkFUT1IuJHJvd1sndXBsb2FkX3RodW1ibmFpbCddICk7CmlmKCBmaWxlX2V4aXN0cyggJHRuZmlsZSApICkKCXsKCQkkY29uZmlnID0mICRnQ21zLT5HZXRDb25maWcoKTsKCQkkdG51cmwgPSAkY29uZmlnWyd1cGxvYWRzX3VybCddLiIvIi4kY2F0cGF0aC4nLycuJHJvd1sndXBsb2FkX3RodW1ibmFpbCddOwoJCSRzbWFydHktPmFzc2lnbiAoJ3Byb21wdF90aHVtYm5haWwnLCAkdGhpcy0+TGFuZygndGh1bWJuYWlsJykuJzonKTsKCQkkc21hcnR5LT5hc3NpZ24gKCdwcm9tcHRfbmV3dGh1bWJuYWlsJywgJHRoaXMtPkxhbmcoJ25ld3RodW1ibmFpbCcpLic6Jyk7CiAgICAkc21hcnR5LT5hc3NpZ24oICdpbnB1dF9uZXd0aHVtYm5haWwnLAoJCQkJCQkJCQkJICR0aGlzLT5DcmVhdGVGaWxlVXBsb2FkSW5wdXQoJGlkLCdpbnB1dF9uZXd0aHVtYm5haWwnLCcnLDUwKSApOwoJCSRzbWFydHktPmFzc2lnbigndGh1bWJfdXJsJywkdG51cmwpOwogICAgJHNtYXJ0eS0+YXNzaWduICgncGljX3RodW1ibmFpbCcsICc8aW1nIHNyYz0iJy4kdG51cmwuJyIgYm9yZGVyPSIwIi8+Jyk7CiAgfQokc21hcnR5LT5hc3NpZ24gKCduYW1lbWVzc2FnZScsICR0aGlzLT5MYW5nKCdyZW5hbWVtZXNzYWdlJykpOwokc21hcnR5LT5hc3NpZ24gKCdwcm9tcHRfdXBsb2FkZGF0ZScsICR0aGlzLT5MYW5nKCdkYXRldXBsb2FkZWQnKSk7CiRzbWFydHktPmFzc2lnbiAoJ2RhdGFfdXBsb2FkZGF0ZScsICRyb3dbJ3VwbG9hZF9kYXRlJ10pOwokc21hcnR5LT5hc3NpZ24gKCdwcm9tcHRfdXBsb2Fkc2l6ZScsICR0aGlzLT5MYW5nKCdzaXpla2InKSk7CiRzbWFydHktPmFzc2lnbiAoJ2RhdGFfdXBsb2Fkc2l6ZScsIGludHZhbCgkcm93Wyd1cGxvYWRfc2l6ZSddIC8gMTAyNC4wICsgMC41KSk7CiRzbWFydHktPmFzc2lnbiAoJ3Byb21wdF91cGxvYWRhdXRob3InLCAkdGhpcy0+TGFuZygnYXV0aG9yJykpOwokc21hcnR5LT5hc3NpZ24gKCdpbnB1dF91cGxvYWRhdXRob3InLCAKCQkgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsICdpbnB1dF91cGxvYWRhdXRob3InLAoJCQkJCSRyb3dbJ3VwbG9hZF9hdXRob3InXSwgMjAsIDI1NSkpOwokc21hcnR5LT5hc3NpZ24gKCdwcm9tcHRfbW92ZWNhdGVnb3J5JywgJHRoaXMtPkxhbmcgKCdwcm9tcHRfY2F0ZWdvcnluYW1lJykpOwokc21hcnR5LT5hc3NpZ24gKCdpbnB1dF9tb3ZlY2F0ZWdvcnknLAoJCSAkdGhpcy0+Q3JlYXRlSW5wdXREcm9wRG93biAoJGlkLCAiaW5wdXRfbW92ZWNhdGVnb3J5IiwgJGNhdGVnb3J5bGlzdCwgLTEsCgkJCQkJICAgICAkcm93Wyd1cGxvYWRfY2F0ZWdvcnlfaWQnXSkpOwokc21hcnR5LT5hc3NpZ24gKCdwYXRobWVzc2FnZScsICR0aGlzLT5MYW5nKCdwYXRobWVzc2FnZScpKTsKCiRzbWFydHktPmFzc2lnbiAoJ3Byb21wdF91cGxvYWRzdW1tYXJ5JywgJHRoaXMtPkxhbmcgKCdzdW1tYXJ5JykpOwokc21hcnR5LT5hc3NpZ24gKCdpbnB1dF91cGxvYWRzdW1tYXJ5JywKCQkgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCAoJGlkLCAnaW5wdXRfdXBsb2Fkc3VtbWFyeScsCgkJCQkJICRyb3dbJ3VwbG9hZF9zdW1tYXJ5J10sIDgwLCAyNTUpKTsKCiRzbWFydHktPmFzc2lnbiAoJ3Byb21wdF91cGxvYWRkZXNjJywgJHRoaXMtPkxhbmcgKCdkZXNjcmlwdGlvbicpKTsKJHNtYXJ0eS0+YXNzaWduICgnaW5wdXRfdXBsb2FkZGVzYycsCgkJICR0aGlzLT5DcmVhdGVUZXh0QXJlYSAoZmFsc2UsICRpZCwgJHJvd1sndXBsb2FkX2Rlc2NyaXB0aW9uJ10sICdpbnB1dF91cGxvYWRkZXNjJyApKTsKCiRzbWFydHktPmFzc2lnbiAoJ2hpZGRlbicsCgkJICR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbiAoJGlkLCAndXBsb2FkX2lkJywkcGFyYW1zWyd1cGxvYWRfaWQnXSkuCgkJICR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbiAoJGlkLCAnY2F0ZWdvcnlfaWQnLCRwYXJhbXNbJ2NhdGVnb3J5X2lkJ10pKTsKICAgIAovLyBwb3B1bGF0ZSB0aGUgcm93cyBvZiBkb3dubG9hZCBpbmZvcm1hdGlvbgokcXVlcnkgPSAiU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfZG93bmxvYWRzIFdIRVJFIGZpbGVfaWQgPSA/IjsKJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcXVlcnksIGFycmF5KCAkcGFyYW1zWyd1cGxvYWRfaWQnXSApICk7Cgokc21hcnR5LT5hc3NpZ24oJ2RhdGV0ZXh0JywgJHRoaXMtPkxhbmcoJ2RhdGUnKSk7CiRzbWFydHktPmFzc2lnbignaXB0ZXh0JywgJHRoaXMtPkxhbmcoJ2lwX2FkZHJlc3MnKSk7CiRzbWFydHktPmFzc2lnbigndXNlcnRleHQnLCAkdGhpcy0+TGFuZygndXNlcm5hbWUnKSk7CiRyb3dhcnJheSA9IGFycmF5KCk7CiRyb3djbGFzcyA9ICdyb3cxJzsKd2hpbGUoICRyb3cgPSAkZGJyZXN1bHQtPkZldGNoUm93KCkgKQogIHsKICAgICRvbmVyb3cgPSBuZXcgc3RkQ2xhc3MoKTsKICAgICRvbmVyb3ctPmRhdGUgPSAkcm93Wydkb3dubG9hZF9kYXRlJ107CiAgICAkb25lcm93LT5pcCAgID0gJHJvd1snZG93bmxvYWRfaXAnXTsKICAgICRvbmVyb3ctPnVzZXIgPSAkcm93Wydkb3dubG9hZF91c2VyJ107CiAgICAkb25lcm93LT5yb3djbGFzcyA9ICRyb3djbGFzczsJCQkgICAgIAoKICAgIGFycmF5X3B1c2goICRyb3dhcnJheSwgJG9uZXJvdyk7CiAgICAoJHJvd2NsYXNzID09ICJyb3cxIiA/ICRyb3djbGFzcyA9ICJyb3cyIiA6ICRyb3djbGFzcyA9ICJyb3cxIik7CiAgfQoKJHNtYXJ0eS0+YXNzaWduICgnaXRlbXMnLCAkcm93YXJyYXkpOwokc21hcnR5LT5hc3NpZ24gKCdpdGVtY291bnQnLCBjb3VudCgkcm93YXJyYXkpKTsKCmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSAoJ2VkaXR1cGxvYWQudHBsJyk7CgovLyBFT0YKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.getfile.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojIEF1dGhvcjogUm9iZXJ0IENhbXBiZWxsIDxyb2JAdGVjaGNvbS5keW5kbnMub3JnPgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDoJLy93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgokcGFnZWlkID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ2dldGZpbGVfcmVzdWx0cGFnZScpOwppZiggJHBhZ2VpZCA8PSAwIHx8ICRyZXR1cm5pZCA8PSAwICkKICB7CiAgICAkY29udGVudG9wcyA9JiAkZ0Ntcy0+R2V0Q29udGVudE9wZXJhdGlvbnMoKTsKICAgICRwYWdlaWQgPSAkY29udGVudG9wcy0+R2V0RGVmYXVsdENvbnRlbnQoKTsKICB9CmlmKCAkcGFnZWlkID49IDAgKQogIHsKICAgICRyZXR1cm5pZCA9ICRwYWdlaWQ7CiAgfQoKCmlmKCAhaXNzZXQoJHBhcmFtc1sndXBsb2FkX2lkJ10pICYmICFpc3NldCgkcGFyYW1zWyd1cmxfa2V5J10pICkKICB7CiAgICAkdGhpcy0+UmVkaXJlY3RUb0Vycm9yKCRyZXR1cm5pZCwKCQkJICAgICAgJHRoaXMtPkxhbmcgKCdlcnJvcl9pbnN1ZmZpY2llbnRwYXJhbXMnLCd1cGxvYWRfaWQnKSk7CiAgICByZXR1cm47CiAgfQoKCi8vIGdldCB0aGUgaWQKJGZpbGVfZGV0YWlscyA9ICcnOwokZmlsZV9pZCA9ICcnOwokdXJsX2tleSA9ICcnOwppZiggaXNzZXQoJHBhcmFtc1sndXBsb2FkX2lkJ10pICkKICB7CiAgICAkZmlsZV9pZCA9IChpbnQpJHBhcmFtc1sndXBsb2FkX2lkJ107CiAgfQplbHNlIGlmKCBpc3NldCgkcGFyYW1zWyd1cmxfa2V5J10pICkKICB7CiAgICAkdXJsX2tleSA9IHRyaW0oJHBhcmFtc1sndXJsX2tleSddKTsKICAgICRub3cgPSAkZGItPkRiVGltZVN0YW1wKHRpbWUoKSk7CiAgICAkcXVlcnkgPSAnU0VMRUNUICogRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfdGltZWxpbWl0CiAgICAgICAgICAgICAgIFdIRVJFIHVybF9rZXkgPSA/IEFORCBleHBpcmVzID4gJG5vdyI7CiAgICAkdGltZWxpbWl0X2RldGFpbHMgPSAkZGItPkdldFJvdygkcXVlcnksYXJyYXkoJHVybF9rZXkpKTsKCiAgICBpZiggISR0aW1lbGltaXRfZGV0YWlscyApCiAgICAgIHsKCS8vIGJhZCBvciBleHBpcmVkIGtleQoJJHRoaXMtPlJlZGlyZWN0VG9FcnJvcigkcmV0dXJuaWQsCgkJCQkgICR0aGlzLT5MYW5nICgnZXJyb3JfaW52YWxpZF9rZXknKSk7CglyZXR1cm47CiAgICAgIH0KICAgIAogICAgJHF1ZXJ5ID0gJ1NFTEVDVCBjb3VudChmaWxlX2lkKSBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2Fkc19kb3dubG9hZHMKICAgICAgICAgICAgICAgV0hFUkUgZmlsZV9pZCA9ID8gQU5EIHVybF9rZXkgPSA/JzsKICAgICRjb3VudCA9ICRkYi0+R2V0T25lKCRxdWVyeSxhcnJheSgkdGltZWxpbWl0X2RldGFpbHNbJ3VwbG9hZF9pZCddLCR1cmxfa2V5KSk7CiAgICBpZiggJGNvdW50ID49ICR0aW1lbGltaXRfZGV0YWlsc1snbWF4X2Rvd25sb2FkcyddICYmICR0aW1lbGltaXRfZGV0YWlsc1snbWF4X2Rvd25sb2FkcyddID4gMCApCiAgICAgIHsKCS8vIGJhZCBvciBleHBpcmVkIGtleQoJJHRoaXMtPlJlZGlyZWN0VG9FcnJvcigkcmV0dXJuaWQsCgkJCQkgICR0aGlzLT5MYW5nICgnZXJyb3JfaW52YWxpZF9rZXknKSk7CglyZXR1cm47CiAgICAgIH0KICAgICRmaWxlX2lkID0gJHRpbWVsaW1pdF9kZXRhaWxzWyd1cGxvYWRfaWQnXTsKICB9CgokZmlsZV9kZXRhaWxzID0gJHRoaXMtPkdldFVwbG9hZERldGFpbHMoICRmaWxlX2lkLCAkcmV0dXJuaWQgKTsKICAgIAovLyBnZXQgdGhlIGRldGFpbHMKaWYoICEkZmlsZV9kZXRhaWxzWyd1cGxvYWRfbmFtZSddICkgCiAgewogICAgLy8gdG9kbyBkaXNwbGF5IGVycm9yCiAgICAkdGhpcy0+UmVkaXJlY3RUb0Vycm9yKCRyZXR1cm5pZCwKCQkJICAgICAgJHRoaXMtPkxhbmcoICdlcnJvcl9maWxlbm90Zm91bmQnLCAkZmlsZV9pZCApICk7CiAgICByZXR1cm47CiAgfQoKJGNhdGVnb3J5X2RldGFpbHMgPSAkdGhpcy0+X2dldFVwbG9hZENhdGVnb3J5RGV0YWlscyggJGZpbGVfZGV0YWlsc1sndXBsb2FkX2NhdGVnb3J5X2lkJ10gKTsKJHBhdGggPSAnLyc7CmlmKCAhJGNhdGVnb3J5X2RldGFpbHNbJ3VwbG9hZF9jYXRlZ29yeV9wYXRoJ10gKSAKICB7CiAgICAvLyB0b2RvIGRpc3BsYXkgZXJyb3IKICAgICR0aGlzLT5SZWRpcmVjdFRvRXJyb3IoJHJldHVybmlkLAoJCQkgICAgICR0aGlzLT5MYW5nKCAnZXJyb3JfZGJlcnJvcicgKSApOwogICAgcmV0dXJuOwogIH0KCiAgICAKJGZpbGUgPSAkdGhpcy0+X3VwbG9hZFBhdGgoICRjYXRlZ29yeV9kZXRhaWxzWyd1cGxvYWRfY2F0ZWdvcnlfcGF0aCddLAoJCQkgICAgc3RyX3JlcGxhY2UoIGFycmF5KCcgJywnJTIwJyksYXJyYXkoJ18nLCdfJyksJGZpbGVfZGV0YWlsc1sndXBsb2FkX25hbWUnXSApICk7CmlmKCAhZmlsZV9leGlzdHMoICRmaWxlICkgfHwgIWlzX3JlYWRhYmxlKCAkZmlsZSApICkKICB7CiAgICAkdGhpcy0+UmVkaXJlY3RUb0Vycm9yKCRyZXR1cm5pZCwKCQkJICAgICAkdGhpcy0+TGFuZyggJ2Vycm9yX2ZpbGVub3Rmb3VuZCcsICRmaWxlICkgKTsKICAgIHJldHVybjsKICB9CgoKLy8gY2hlY2sgZm9yIHBlcm1pc3Npb24sIGlmIEZFVSBtb2R1bGUgZXhpc3RzLCBhbmQgdGhlIHVwbG9hZHMgZ3JvdXBsaXN0IGlzCi8vIG5vdCBudWxsLCBhbmQgdGhlIHJldHVybmlkIGlzIG5vdCBlbXB0eSAod2UncmUgb24gdGhlIGZyb250ZW5kKQokcmVzdWx0ID0gJHRoaXMtPl9DaGVja0Rvd25sb2FkU2VjdXJpdHkoJGNhdGVnb3J5X2RldGFpbHMpOwppZiggISRyZXN1bHQgKQogIHsKICAgICR0aGlzLT5SZWRpcmVjdFRvRXJyb3IoJHJldHVybmlkLAoJCQkgICAgICR0aGlzLT5MYW5nKCdlcnJvcl9wZXJtaXNzaW9uZGVuaWVkJykgKTsKICAgIHJldHVybjsKICB9CgovLyB0dXJuIG9mZiB6bGliIGNvbXByZXNzaW9uIAppZihpbmlfZ2V0KCd6bGliLm91dHB1dF9jb21wcmVzc2lvbicpKQogIHsKICAgIGluaV9zZXQoJ3psaWIub3V0cHV0X2NvbXByZXNzaW9uJywgJ09mZicpOwogIH0KCmlmKCFpbmlfZ2V0X2Jvb2xlYW4oJ3NhZmVfbW9kZScpKQogIHsKICAgIHNldF90aW1lX2xpbWl0KDApOwogIH0KCiRjaHVua3NpemUgPSBpbnR2YWwoJHRoaXMtPkdldFByZWZlcmVuY2UoJ2Rvd25sb2FkX2NodW5rc2l6ZScsOCkpICogMTAyNDsKJGJuID0gYmFzZW5hbWUoJGZpbGUpOwoKJGhhbmRsZXJzID0gb2JfbGlzdF9oYW5kbGVycygpOyAKZm9yICgkY250ID0gMDsgJGNudCA8IHNpemVvZigkaGFuZGxlcnMpOyAkY250KyspIHsgb2JfZW5kX2NsZWFuKCk7IH0KLy8gICAgIEBvYl9jbGVhbigpOwovLyAgICAgQG9iX2NsZWFuKCk7CmhlYWRlcignUHJhZ21hOiBwdWJsaWMnKTsKaGVhZGVyKCdFeHBpcmVzOiAwJyk7CmhlYWRlcignQ2FjaGUtQ29udHJvbDogbXVzdC1yZXZhbGlkYXRlLCBwb3N0LWNoZWNrPTAsIHByZS1jaGVjaz0wJyk7CmhlYWRlcignQ2FjaGUtQ29udHJvbDogcHJpdmF0ZScsZmFsc2UpOwpoZWFkZXIoJ0NvbnRlbnQtRGVzY3JpcHRpb246IEZpbGUgVHJhbnNmZXInKTsKaGVhZGVyKCdDb250ZW50LVR5cGU6IGFwcGxpY2F0aW9uL29jdGV0LXN0cmVhbScpOwpoZWFkZXIoIkNvbnRlbnQtRGlzcG9zaXRpb246IGF0dGFjaG1lbnQ7IGZpbGVuYW1lPVwiJGJuXCIiICk7CmhlYWRlcignQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogYmluYXJ5Jyk7CmhlYWRlcignQ29udGVudC1MZW5ndGg6ICcgLiBmaWxlc2l6ZSgkZmlsZSkpOwoKJGhhbmRsZT1mb3BlbigkZmlsZSwncmInKTsKJGNvbnRlbnRzID0gJyc7CmRvIHsKICAkZGF0YSA9IGZyZWFkKCRoYW5kbGUsJGNodW5rc2l6ZSk7CiAgaWYoIHN0cmxlbigkZGF0YSkgPT0gMCApIGJyZWFrOwogIHByaW50KCRkYXRhKTsgCiB9IHdoaWxlKHRydWUpOwpmY2xvc2UoJGhhbmRsZSk7CgovLyBub3cgdG8gYWRkIHRoZSBkb3dubG9hZCBzaHR1ZmYgdG8gdGhlIGRhdGFiYXNlCi8vIGlmIHdlIGFyZSBub3QgZXhjbHVkaW5nIHRoaXMgc3VibmV0CiRzdWJuZXRzID0gc3BsaXQoIiwiLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCJzdWJuZXRfZXhjbHVzaW9uIikpOwokdGVzdCA9IDA7CmZvcmVhY2goJHN1Ym5ldHMgYXMgJHN1Ym5ldCkKewogICR0ZXN0ID0gJHRoaXMtPl90ZXN0aXAoICRzdWJuZXQsIGdldGVudigiUkVNT1RFX0FERFIiICkgKTsKICBpZiggJHRlc3QgKQogICAgewogICAgICAvLyBkb24ndCBhbGxvdyBhbnkgbW9yZSBwcm9jZXNzaW5nCiAgICAgIGV4aXQoKTsKICAgIH0KfQoKLy8gZ2V0IGEgbmV3IHZhbHVlIGZyb20gdGhlIHNlcXVlbmNlIGRhdGFiYXNlCiRkYiA9JiAkdGhpcy0+R2V0RGIoKTsKJG5ld2lkID0gJGRiLT5HZW5JRCggY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc19kb3dubG9hZHNfc2VxIiApOwoKLy8gZ2V0IGEgdXNlcm5hbWUKJHVzZXJuYW1lID0gJ2Fub255bW91cyc7CiRmZXVzZXJzID0gJHRoaXMtPkdldE1vZHVsZUluc3RhbmNlKCdGcm9udEVuZFVzZXJzJyk7CmlmKCAkZmV1c2VycyApCiAgewogICAgJG5hbWUgPSAkZmV1c2Vycy0+TG9nZ2VkaW5OYW1lKCk7CiAgICBpZiggJG5hbWUgIT0gIiIgKQogICAgICB7CgkkdXNlcm5hbWUgPSAkbmFtZTsKICAgICAgfQogIH0KCi8vIGluc2VydCB0aGUgZG93bmxvYWQgcmVjb3JkCiRxdWVyeSA9ICJJTlNFUlQgSU5UTyAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfZG93bmxvYWRzIAogICAgICAgICAgIChkb3dubG9hZF9pZCwgZmlsZV9pZCwgZG93bmxvYWRfZGF0ZSwgZG93bmxvYWRfaXAsIGRvd25sb2FkX3VzZXIsIHVybF9rZXkpCiAgICAgICAgICBWQUxVRVMgKD8sPyw/LD8sPyw/KSI7CiRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHF1ZXJ5LCAKCQkJICBhcnJheSggJG5ld2lkLCAKCQkJCSAkZmlsZV9pZCwgCgkJCQkgdHJpbSgkZGItPkRCVGltZVN0YW1wKHRpbWUoKSksIiciKSwKCQkJCSBnZXRlbnYoIlJFTU9URV9BRERSIiksIAoJCQkJICR1c2VybmFtZSwKCQkJCSAkdXJsX2tleSkgKTsKLyogSSB3b3VsZCBub3JtYWxseSBkaXNwbGF5IGFuIGVycm9yIG1lc3NhZ2UsIGJ1dCBkb24ndCB3YW50IHBlb3BsZSB0byBuZWNlc3NhcmlseSBrbm93IEkgYW0gdHJhY2tpbmcgdGhlbSAqLwokdGhpcy0+QXVkaXQoIDAsICR0aGlzLT5sYW5nKCdmcmllbmRseW5hbWUnKSwKCSAgICAgICR0aGlzLT5sYW5nKCdkb3dubG9hZGVkJywgJGZpbGUpICk7CgovLyBzZW5kIGFuIGV2ZW50CiRwYXJtcyA9IGFycmF5KCk7CiRwYXJtc1snaWQnXSA9ICRmaWxlX2lkOwokcGFybXNbJ25hbWUnXSA9ICRmaWxlOwokcGFybXNbJ2lwJ10gPSBnZXRlbnYoIlJFTU9URV9BRERSIik7CiR0aGlzLT5TZW5kRXZlbnQoICdPbkRvd25sb2FkJywgJHBhcm1zICk7CgovLyBkb24ndCBhbGxvdyBhbnkgbW9yZSBwcm9jZXNzaW5nCmV4aXQoKTsKPz4K]]></data>
	</file>
	<file>
	  <filename>/action.getimage.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojIEF1dGhvcjogUm9iZXJ0IENhbXBiZWxsIDxyb2JAdGVjaGNvbS5keW5kbnMub3JnPgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDoJLy93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgovLyBOb3RlOiBUaGlzIGZpbGUgaXMgdmlydHVhbGx5IGlkZW50aWNhbCB0byBhY3Rpb24uZ2V0ZmlsZS5waHAKLy8gYW5kIHRoaXMgc2hvdWxkIGJlIG9wdGltaXplZAoKaWYoICFpc3NldCggJHBhcmFtc1sndXBsb2FkX2lkJ10gKSApCiAgewogICAgLy8gdG9kbywgYWRkIHNvbWV0aGluZyB0byBhbiBlcnJvciBsb2cKICAgIHJldHVybjsKICB9CgovLyBnZXQgdGhlIGlkCiRmaWxlX2lkID0gJHBhcmFtc1sndXBsb2FkX2lkJ107CgovLyBnZXQgdGhlIGRldGFpbHMKJGZpbGVfZGV0YWlscyA9ICR0aGlzLT5HZXRVcGxvYWREZXRhaWxzKCAkZmlsZV9pZCApOwppZiggISRmaWxlX2RldGFpbHNbJ3VwbG9hZF9uYW1lJ10gKSAKICB7CiAgICAvLyB0b2RvIGRpc3BsYXkgZXJyb3IKICAgIHJldHVybjsKICB9CiRjYXRlZ29yeV9kZXRhaWxzID0gJHRoaXMtPl9nZXRVcGxvYWRDYXRlZ29yeURldGFpbHMoICRmaWxlX2RldGFpbHNbJ3VwbG9hZF9jYXRlZ29yeV9pZCddICk7CiRwYXRoID0gJy8nOwppZiggISRjYXRlZ29yeV9kZXRhaWxzWyd1cGxvYWRfY2F0ZWdvcnlfcGF0aCddICkgCiAgewogICAgLy8gdG9kbyBkaXNwbGF5IGVycm9yCiAgICByZXR1cm47CiAgfQoKCiRmaWxlID0gJHRoaXMtPl91cGxvYWRQYXRoKCAkY2F0ZWdvcnlfZGV0YWlsc1sndXBsb2FkX2NhdGVnb3J5X3BhdGgnXSwKCQkJICAgIHN0cl9yZXBsYWNlKCBhcnJheSgnICcsJyUyMCcpLGFycmF5KCdfJywnXycpLCRmaWxlX2RldGFpbHNbJ3VwbG9hZF9uYW1lJ10gKSApOwoKaWYoICFmaWxlX2V4aXN0cyggJGZpbGUgKSB8fCAhaXNfcmVhZGFibGUoICRmaWxlICkgKQogIHsKICAgIC8vIHRvZG8gZGlzcGxheSBlcnJvcgogICAgcmV0dXJuOwogIH0KCi8vIGNoZWNrIGZvciBwZXJtaXNzaW9uLCBpZiBGRVUgbW9kdWxlIGV4aXN0cywgYW5kIHRoZSB1cGxvYWRzIGdyb3VwbGlzdCBpcwovLyBub3QgbnVsbCwgYW5kIHRoZSByZXR1cm5pZCBpcyBub3QgZW1wdHkgKHdlJ3JlIG9uIHRoZSBmcm9udGVuZCkKJHJlc3VsdCA9ICR0aGlzLT5fQ2hlY2tEb3dubG9hZFNlY3VyaXR5KCRjYXRlZ29yeV9kZXRhaWxzKTsKaWYoICEkcmVzdWx0ICkKICB7CiAgICAvLyB0b2RvLCBkaXNwbGF5IGVycm9yIHNvbWVob3cKICAgIHJldHVybjsKICB9CgovLyB0dXJuIG9mZiB6bGliIGNvbXByZXNzaW9uIAppZihAaW5pX2dldCgnemxpYi5vdXRwdXRfY29tcHJlc3Npb24nKSkKICB7CiAgICBAaW5pX3NldCgnemxpYi5vdXRwdXRfY29tcHJlc3Npb24nLCAnT2ZmJyk7CiAgfQoKaWYoIUBpbmlfZ2V0X2Jvb2xlYW4oJ3NhZmVfbW9kZScpKQogIHsKICAgIEBzZXRfdGltZV9saW1pdCgwKTsKICB9CgokY2h1bmtzaXplID0gaW50dmFsKCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdkb3dubG9hZF9jaHVua3NpemUnLDgpKSAqIDEwMjQ7CgokaGFuZGxlcnMgPSBvYl9saXN0X2hhbmRsZXJzKCk7IApmb3IgKCRjbnQgPSAwOyAkY250IDwgc2l6ZW9mKCRoYW5kbGVycyk7ICRjbnQrKykgeyBvYl9lbmRfY2xlYW4oKTsgfQoKaGVhZGVyKCdDb250ZW50LVR5cGU6IGltYWdlLyonKTsKaGVhZGVyKCdDb250ZW50LUxlbmd0aDogJyAuIGZpbGVzaXplKCRmaWxlKSk7CiRoYW5kbGU9Zm9wZW4oJGZpbGUsJ3JiJyk7CiRjb250ZW50cyA9ICcnOwpkbyB7CiAgJGRhdGEgPSBmcmVhZCgkaGFuZGxlLCRjaHVua3NpemUpOwogIGlmKCBzdHJsZW4oJGRhdGEpID09IDAgKSBicmVhazsKICBwcmludCgkZGF0YSk7IAogfSB3aGlsZSh0cnVlKTsKZmNsb3NlKCRoYW5kbGUpOwoKLy8gbm93IHRvIGFkZCB0aGUgZG93bmxvYWQgc2h0dWZmIHRvIHRoZSBkYXRhYmFzZQovLyBpZiB3ZSBhcmUgbm90IGV4Y2x1ZGluZyB0aGlzIHN1Ym5ldAokc3VibmV0cyA9IHNwbGl0KCIsIiwkdGhpcy0+R2V0UHJlZmVyZW5jZSgic3VibmV0X2V4Y2x1c2lvbiIpKTsKJHRlc3QgPSAwOwpmb3JlYWNoKCRzdWJuZXRzIGFzICRzdWJuZXQpCnsKICAkdGVzdCA9ICR0aGlzLT5fdGVzdGlwKCAkc3VibmV0LCBnZXRlbnYoIlJFTU9URV9BRERSIiApICk7CiAgaWYoICR0ZXN0ICkKICAgIHsKICAgICAgLy8gZG9uJ3QgYWxsb3cgYW55IG1vcmUgcHJvY2Vzc2luZwogICAgICBleGl0KCk7CiAgICB9Cn0KCi8vIGdldCBhIG5ldyB2YWx1ZSBmcm9tIHRoZSBzZXF1ZW5jZSBkYXRhYmFzZQokZGIgPSYgJHRoaXMtPkdldERiKCk7CiRuZXdpZCA9ICRkYi0+R2VuSUQoIGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfZG93bmxvYWRzX3NlcSIgKTsKCi8vIGdldCBhIHVzZXJuYW1lCiR1c2VybmFtZSA9ICd1bmtub3duJzsKJGZldXNlcnMgPSYgJHRoaXMtPkdldE1vZHVsZUluc3RhbmNlKCdGcm9udEVuZFVzZXJzJyk7CmlmKCAkZmV1c2VycyApCiAgewogICAgJG5hbWUgPSAkZmV1c2Vycy0+TG9nZ2VkaW5OYW1lKCk7CiAgICBpZiggJG5hbWUgIT0gIiIgKQogICAgICB7CgkkdXNlcm5hbWUgPSAkbmFtZTsKICAgICAgfQogIH0KCi8vIGluc2VydCB0aGUgZG93bmxvYWQgcmVjb3JkCiRxdWVyeSA9ICJJTlNFUlQgSU5UTyAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfZG93bmxvYWRzIFZBTFVFUyAoPyw/LD8sPyw/KSI7CiRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHF1ZXJ5LCAKCQkJICBhcnJheSggJG5ld2lkLCAkZmlsZV9pZCwgCgkJCQkgdHJpbSgkZGItPkRCVGltZVN0YW1wKHRpbWUoKSksIiciKSwKCQkJCSBnZXRlbnYoIlJFTU9URV9BRERSIiksICR1c2VybmFtZSkgKTsKLyogSSB3b3VsZCBub3JtYWxseSBkaXNwbGF5IGFuIGVycm9yIG1lc3NhZ2UsIGJ1dCBkb24ndCB3YW50IHBlb3BsZSB0byBuZWNlc3NhcmlseSBrbm93IEkgYW0gdHJhY2tpbmcgdGhlbSAqLwokdGhpcy0+QXVkaXQoIDAsICR0aGlzLT5sYW5nKCdmcmllbmRseW5hbWUnKSwKCSAgICAgICR0aGlzLT5sYW5nKCdkb3dubG9hZGVkJywgJGZpbGUpICk7CgovLyBkb24ndCBhbGxvdyBhbnkgbW9yZSBwcm9jZXNzaW5nCmV4aXQoKTsKCi8vIEVPRgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.save_admin_prefs.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIgbW9kdWxlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOgkvL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCmlmICghJHRoaXMtPkNoZWNrUGVybWlzc2lvbiAoJ01vZGlmeSBTaXRlIFByZWZlcmVuY2VzJykpCiAgewogICAgcmV0dXJuOwogIH0KCiR0aGlzLT5TZXRQcmVmZXJlbmNlICgnYXV0b3dhdGVybWFyaycsJHBhcmFtc1snYXV0b3dhdGVybWFyayddKTsKJHRoaXMtPlNldFByZWZlcmVuY2UgKCd2YWxpZF91cGxvYWRleHRlbnNpb25zJywKCQkgICAgICBpc3NldCAoJHBhcmFtc1sndmFsaWRfdXBsb2FkZXh0ZW5zaW9ucyddKSA/CgkJICAgICAgJHBhcmFtc1sndmFsaWRfdXBsb2FkZXh0ZW5zaW9ucyddIDogJzAnKTsKJHRoaXMtPlNldFByZWZlcmVuY2UgKCdzdWJuZXRfZXhjbHVzaW9ucycsCgkJICAgICAgaXNzZXQgKCRwYXJhbXNbJ3N1Ym5ldF9leGNsdXNpb25zJ10pID8KCQkgICAgICAkcGFyYW1zWydzdWJuZXRfZXhjbHVzaW9ucyddIDogJzAnKTsKJHRoaXMtPlNldFByZWZlcmVuY2UgKCdjcmVhdGVfZHVtbXlfaW5kZXhfaHRtbCcsCgkJICAgICAgaXNzZXQgKCRwYXJhbXNbJ2lucHV0X2R1bW15X2luZGV4X2h0bWwnXSkgPwoJCSAgICAgICRwYXJhbXNbJ2lucHV0X2R1bW15X2luZGV4X2h0bWwnXSA6ICcwJyk7CiR0aGlzLT5zZXRQcmVmZXJlbmNlICgnc2VuZF91cGxvYWRfbm90aWZpY2F0aW9uc190bycsCgkJICAgICAgaXNzZXQgKCRwYXJhbXNbJ2VtYWlsX29uX3VwbG9hZCddKSA/CgkJICAgICAgJHBhcmFtc1snZW1haWxfb25fdXBsb2FkJ10gOiAnJyApOyAgICAKJHRoaXMtPlNldFByZWZlcmVuY2UgKCdyZWRpcmVjdF9vbl91cGxvYWQnLAoJCSAgICAgIGlzc2V0ICgkcGFyYW1zWydyZWRpcmVjdF9vbl91cGxvYWQnXSkgPwoJCSAgICAgICRwYXJhbXNbJ3JlZGlyZWN0X29uX3VwbG9hZCddIDogJycgKTsgICAgCiR0aGlzLT5TZXRQcmVmZXJlbmNlICgnYXV0b3RodW1ibmFpbF9leHRlbnNpb25zJywKCQkgICAgICBpc3NldCAoJHBhcmFtc1snYXV0b3RodW1ibmFpbF9leHRlbnNpb25zJ10pID8KCQkgICAgICAkcGFyYW1zWydhdXRvdGh1bWJuYWlsX2V4dGVuc2lvbnMnXSA6ICcnICk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlICgnYXV0b3RodW1ibmFpbF9zaXplJywKCQkgICAgICBpc3NldCAoJHBhcmFtc1snYXV0b3RodW1ibmFpbF9zaXplJ10pID8KCQkgICAgICAkcGFyYW1zWydhdXRvdGh1bWJuYWlsX3NpemUnXSA6ICcnICk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlICgnZG93bmxvYWRfY2h1bmtzaXplJywKCQkgICAgICBpc3NldCAoJHBhcmFtc1snZG93bmxvYWRfY2h1bmtzaXplJ10pID8KCQkgICAgICAkcGFyYW1zWydkb3dubG9hZF9jaHVua3NpemUnXSA6IDggKTsKJHRoaXMtPlNldFByZWZlcmVuY2UgKCdhbGxvd19kZWxldGUnLAoJCSAgICAgIGlzc2V0ICgkcGFyYW1zWydhbGxvd19kZWxldGUnXSkgPyAkcGFyYW1zWydhbGxvd19kZWxldGUnXSA6IDAgKTsKJHRoaXMtPlNldFByZWZlcmVuY2UgKCdyZWRpcmVjdF9vbl9zZW5kZmlsZScsCgkJICAgICAgaXNzZXQgKCRwYXJhbXNbJ3JlZGlyZWN0X29uX3NlbmRmaWxlJ10pID8KCQkgICAgICAkcGFyYW1zWydyZWRpcmVjdF9vbl9zZW5kZmlsZSddIDogJycgKTsgICAgCiR0aGlzLT5TZXRQcmVmZXJlbmNlKCd0aW1lbGltaXRlZF9ob3VycycsKGludCkkcGFyYW1zWyd0aW1lbGltaXRlZF9ob3VycyddKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ3RpbWVsaW1pdGVkX2Rvd25sb2FkcycsKGludCkkcGFyYW1zWyd0aW1lbGltaXRlZF9kb3dubG9hZHMnXSk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdnZXRmaWxlX3Jlc3VsdHBhZ2UnLChpbnQpJHBhcmFtc1snZ2V0ZmlsZV9yZXN1bHRwYWdlJ10pOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgndGltZWxpbWl0ZWRfYXV0b2RlbGV0ZScsKGludCkkcGFyYW1zWyd0aW1lbGltaXRlZF9hdXRvZGVsZXRlJ10pOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgndGltZWxpbWl0ZWRfc3ViamVjdCcsdHJpbSgkcGFyYW1zWyd0aW1lbGltaXRlZF9zdWJqZWN0J10pKTsKCiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdkZWZhdWx0X3NlbmRmaWxlcGFnZScsJHBhcmFtc1snZGVmYXVsdF9zZW5kZmlsZXBhZ2UnXSk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdjYXRlZ29yeV9leHBpcnknLChpbnQpJHBhcmFtc1snY2F0ZWdvcnlfZXhwaXJ5J10pOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnYWxsb3dfdXBsb2FkX3NlbmRmaWxlJywoaW50KSRwYXJhbXNbJ2FsbG93X3VwbG9hZF9zZW5kZmlsZSddKTsKJHRoaXMtPlJlZGlyZWN0VG9UYWIoICRpZCwgJ2FkbWluX3ByZWZzJyApOwoKLy8gRU9GCj8+]]></data>
	</file>
	<file>
	  <filename>/action.sendfile.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLXNldC1zdHlsZTpsaW51eDsgdGFiLXdpZHRoOjI7IGluZGVudC10YWJzLW1vZGU6dDsgYy1iYXNpYy1vZmZzZXQ6IDI7IC0qLQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogVXBsb2FkcyAtPSBhbGxvdyB1c2VycyB0byB1cGxvYWQgc3R1ZmYsIGEgcHNldWRvIGZpbGUgbWFuYWdlciIgbW9kdWxlCiMgQXV0aG9yOiBSb2JlcnQgQ2FtcGJlbGwgPHJvYkB0ZWNoY29tLmR5bmRucy5vcmc+CiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOgkvL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KaWYoICFpc3NldCgkZ0NtcykgKSBleGl0OwppZiggIWlzc2V0KCRwYXJhbXNbJ3VwbG9hZF9pZCddKSApIGV4aXQ7CgovLyBpbml0aWFsaXphdGlvbgokdXBsb2FkX2lkID0gKGludCkkcGFyYW1zWyd1cGxvYWRfaWQnXTsKJHRoZXRlbXBsYXRlID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ2RlZmF1bHRfc2VuZGZpbGVmb3JtJyk7CiRub3RlcyA9ICcnOwokc2VuZHRvID0gJyc7CiRzdWJqZWN0ID0gJyc7CiRlcnJvciA9ICcnOwokbWVzc2FnZSA9ICcnOwoKLy8gc2V0dXAKJHF1ZXJ5ID0gJ1NFTEVDVCAqIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzIAogICAgICAgICAgIFdIRVJFIHVwbG9hZF9pZCA9ID8nOwokdXBsb2FkX2RhdGEgPSAkZGItPkdldFJvdygkcXVlcnksYXJyYXkoJHVwbG9hZF9pZCkpOwppZiggISR1cGxvYWRfZGF0YSApIHJldHVybjsKJHNtYXJ0eS0+YXNzaWduKCdtb2QnLCR0aGlzKTsKJHNtYXJ0eS0+YXNzaWduKCdhY3Rpb25pZCcsJGlkKTsKCi8vIGhhbmRsZSBmb3JtIGRhdGEKaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0X2NhbmNlbCddKSApCiAgewogICAgJHRoaXMtPlJlZGlyZWN0Q29udGVudCgkcmV0dXJuaWQpOwogIH0KZWxzZSBpZiggaXNzZXQoJHBhcmFtc1snaW5wdXRfc3VibWl0J10pICkKICB7CiAgICAkbm90ZXMgPSB0cmltKCRwYXJhbXNbJ2lucHV0X25vdGVzJ10pOwogICAgJHNlbmR0byA9IHRyaW0oJHBhcmFtc1snaW5wdXRfc2VuZHRvJ10pOwogICAgJHN1YmplY3QgPSB0cmltKCRwYXJhbXNbJ2lucHV0X3N1YmplY3QnXSk7CiAgICAkYWRkcmVzc2VzID0gYXJyYXkoKTsKCiAgICAvLyBjaGVjayB0aGUgc3ViamVjdAogICAgaWYoIGVtcHR5KCRzdWJqZWN0KSApCiAgICAgIHsKCSRlcnJvciA9ICR0aGlzLT5MYW5nKCdlcnJvcl9ub3N1YmplY3QnKTsKICAgICAgfQoKICAgIGlmKCBlbXB0eSgkZXJyb3IpICYmIGVtcHR5KCRzZW5kdG8pICkKICAgICAgewoJJGVycm9yID0gJHRoaXMtPkxhbmcoJ2Vycm9yX25vYWRkcmVzc2VzJyk7CiAgICAgIH0KCiAgICBpZiggZW1wdHkoJGVycm9yKSApCiAgICAgIHsKCSR0bXAgPSBleHBsb2RlKCcsJywkc2VuZHRvKTsKCWlmKCAhY291bnQoJHRtcCkgKQoJICB7CgkgICAgJGVycm9yID0gJHRoaXMtPkxhbmcoJ2Vycm9yX25vYWRkcmVzc2VzJyk7CgkgIH0KCWVsc2UKCSAgewoJICAgIGZvciggJGkgPSAwOyAkaSA8IGNvdW50KCR0bXApOyAkaSsrICkKCSAgICAgIHsKCQkkdDIgPSB0cmltKCR0bXBbJGldKTsKCQlpZiggIWVtcHR5KCR0MikgKQoJCSAgewoJCSAgICAkYWRkcmVzc2VzW10gPSAkdDI7CgkJICB9CgkgICAgICB9CgkgICAgaWYoICFjb3VudCgkYWRkcmVzc2VzKSApCgkgICAgICB7CgkJJGVycm9yID0gJHRoaXMtPkxhbmcoJ2Vycm9yX25vYWRkcmVzc2VzJyk7CgkgICAgICB9CgkgIH0KICAgICAgfQoKICAgIC8vIGdvdCBhbGwgdGhlIGFkZHJlc3Nlcy4KICAgIC8vIG5vdyBzZW5kIHRoZSBtYWlsLgogICAgaWYoIGVtcHR5KCRlcnJvcikgKQogICAgICB7CgkkY21zbWFpbGVyID0mICR0aGlzLT5HZXRNb2R1bGVJbnN0YW5jZSgnQ01TTWFpbGVyJyk7CgkKCS8vIGdldCBldmVyeXRoaW5nIGludG8gc21hcnR5LgoJJHBhcmFtc1snbm9vdXRwdXQnXSA9IDE7CglpbmNsdWRlKGRpcm5hbWUoX19GSUxFX18pLicvYWN0aW9uLmRldGFpbC5waHAnKTsKCgkkY21zbWFpbGVyLT5yZXNldCgpOwoJJGNtc21haWxlci0+U2V0U3ViamVjdCgkc3ViamVjdCk7CgkkY21zbWFpbGVyLT5Jc0hUTUwodHJ1ZSk7Cglmb3JlYWNoKCAkYWRkcmVzc2VzIGFzICRvbmUgKQoJICB7CgkgICAgJGNtc21haWxlci0+QWRkQWRkcmVzcygkb25lKTsKCSAgfQoJJGJvZHkgPSAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlRnJvbURhdGFiYXNlKCd1cGxvYWRfc2VuZGZpbGVycHQnKTsKCSRjbXNtYWlsZXItPlNldEJvZHkoJGJvZHkpOwoJJGNtc21haWxlci0+U2VuZCgpOwoJCgkvLyBub3cgdHJ5IHRvIHJlZGlyZWN0IHRvIGEgZGlmZmVyZW50IHBhZ2UKCSRzdHIgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgncmVkaXJlY3Rfb25fc2VuZGZpbGUnKTsKCWlmKCAkc3RyICE9ICcnICkKCSAgewoJICAgICR0bXAgPSBDb250ZW50TWFuYWdlcjo6R2V0UGFnZUlERnJvbUFsaWFzKCRzdHIpOwoJICAgIGlmKCAkdG1wICkKCSAgICAgIHsKCQkJCQkkdGhpcy0+UmVkaXJlY3RDb250ZW50KCR0bXApOwoJCQkJCXJldHVybjsKCSAgICAgIH0KCSAgfQoKCS8vIHJlZGlyZWN0IGlzbid0IHNldC4uLiBzbyBkaXNwbGF5IGEgbmljZSBtZXNzYWdlLgoJJG1lc3NhZ2UgPSAkdGhpcy0+TGFuZygnbXNnX2ZpbGVfc2VudCcpOwogICAgICB9CiAgfQoKLy8gZ2l2ZSBldmVyeXRoaW5nIHRvIHNtYXJ0eQppZiggIWVtcHR5KCRlcnJvcikgKQogIHsKICAgICRzbWFydHktPmFzc2lnbignZXJyb3InLCRlcnJvcik7CiAgfQppZiggIWVtcHR5KCRtZXNzYWdlKSApCiAgewogICAgJHNtYXJ0eS0+YXNzaWduKCdtZXNzYWdlJywkbWVzc2FnZSk7CiAgfQokc21hcnR5LT5hc3NpZ24oJ3VwbG9hZF9pbmZvJywkdXBsb2FkX2RhdGEpOwokc21hcnR5LT5hc3NpZ24oJ2Zvcm1zdGFydCcsJHRoaXMtPkNyZWF0ZUZvcm1TdGFydCgkaWQsJ3NlbmRmaWxlJywkcmV0dXJuaWQsJ3Bvc3QnLCcnLGZhbHNlLCcnLCRwYXJhbXMpKTsKJHNtYXJ0eS0+YXNzaWduKCdmb3JtZW5kJywkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsKJHNtYXJ0eS0+YXNzaWduKCdub3RlcycsJG5vdGVzKTsKJHNtYXJ0eS0+YXNzaWduKCdzZW5kdG8nLCRzZW5kdG8pOwokc21hcnR5LT5hc3NpZ24oJ3N1YmplY3QnLCRzdWJqZWN0KTsKCi8vIGRpc3BsYXkgdGhlIHRlbXBsYXRlCmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhYmFzZSgnc2VuZGZpbGVmb3JtXycuJHRoZXRlbXBsYXRlKTsKCiMgRU9GCj8+]]></data>
	</file>
	<file>
	  <filename>/action.upload.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLXNldC1zdHlsZTpsaW51eDsgdGFiLXdpZHRoOjI7IGluZGVudC10YWJzLW1vZGU6dDsgYy1iYXNpYy1vZmZzZXQ6IDI7IC0qLQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogVXBsb2FkcyAtPSBhbGxvdyB1c2VycyB0byB1cGxvYWQgc3R1ZmYsIGEgcHNldWRvIGZpbGUgbWFuYWdlciIgbW9kdWxlCiMgQXV0aG9yOiBSb2JlcnQgQ2FtcGJlbGwgPHJvYkB0ZWNoY29tLmR5bmRucy5vcmc+CiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOgkvL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KaWYoICFpc3NldCgkZ0NtcykgKSBleGl0KCk7CgppZiggIWlzc2V0KCAkcGFyYW1zWydjYXRlZ29yeSddICkgKQoJewoJCS8vIGlmIG1vZGUgb3IgY2F0ZWdvcnkgaXNuJ3Qgc2V0Li4uIHdlIGRvbid0IGRpc3BsYXkgYW55dGhpbmcKCQkkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UgKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLAoJCQkJCQkJCQkJCQkJCQkkdGhpcy0+TGFuZyAoJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcycsJ2NhdGVnb3J5JykpOwoJCXJldHVybjsKCX0KCi8vIGRpc3BsYXkgYSBmb3JtIHRvIGFsbG93IHRoZSB1c2VyIHRvIHVwbG9hZCBhIGZpbGUuLi4uIGJ1dCBtYXkgaGF2ZSB0byBoYXZlIHBlcm1pc3Npb24gZmlyc3QKLy8gaG1tbSwgSSdsbCB0aGluayBhYm91dCB0aGUgcGVybWlzc2lvbiBzdHVmZiBsYXRlci4KJHRlbXBsYXRlID0gJ3VwbG9hZGZvcm1fJy4kdGhpcy0+R2V0UHJlZmVyZW5jZSgnZGVmYXVsdF91cGxvYWRmb3JtJyk7CmlmKCBpc3NldCggJHBhcmFtc1sndGVtcGxhdGUnXSApICkKCXsKCQkkdGVtcGxhdGUgPSAndXBsb2FkZm9ybV8nLiRwYXJhbXNbJ3RlbXBsYXRlJ107Cgl9Cgp7CgkkcXVlcnkgPSAnU0VMRUNUIHVwbG9hZF9jYXRlZ29yeV9pZCBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2Fkc19jYXRlZ29yaWVzCiAgICAgICAgICBXSEVSRSB1cGxvYWRfY2F0ZWdvcnlfbmFtZSA9ID8nOwoJJHRtcCA9ICRkYi0+R2V0T25lKCRxdWVyeSxhcnJheSgkcGFyYW1zWydjYXRlZ29yeSddKSk7CglpZiggISR0bXAgKSAKCQl7CgkJCSR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSAoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsCgkJCQkJCQkJCQkJCQkJCQkkdGhpcy0+TGFuZyAoJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcycsJ2NhdGVnb3J5JykpOwoJCQlyZXR1cm47CgkJfQoJdW5zZXQoJHBhcmFtc1snY2F0ZWdvcnknXSk7CgkkcGFyYW1zWydjYXRlZ29yeV9pZCddID0gJHRtcDsKfQoKaWYoIGlzc2V0KCRwYXJhbXNbJ2tleSddKSApCgl7CgkJJHBhcmFtc1snaW5wdXRfa2V5J10gPSAkcGFyYW1zWydrZXknXTsKCQl1bnNldCgkcGFyYW1zWydrZXknXSk7Cgl9CiRzbWFydHktPmFzc2lnbiAoJ3N0YXJ0Zm9ybScsCgkJCQkJCQkJICR0aGlzLT5DcmVhdGVGb3JtU3RhcnQgKCRpZCwgJ2RvX3VwbG9hZCcsCgkJCQkJCQkJCQkJCQkJCQkJCQkJICRyZXR1cm5pZCwncG9zdCcsIAoJCQkJCQkJCQkJCQkJCQkJCQkJCSAnbXVsdGlwYXJ0L2Zvcm0tZGF0YScsCgkJCQkJCQkJCQkJCQkJCQkJCQkJICRwYXJhbXMpKTsKJHNtYXJ0eS0+YXNzaWduICgncHJvbXB0X3VwbG9hZCcsICR0aGlzLT5MYW5nICgndXBsb2FkJykpOwoKLy8gZ2V0IGN1c3RvbSBmaWVsZCBpbmZvLgokZmllbGRzID0gYXJyYXkoKTsKewogICRxdWVyeSA9ICdTRUxFQ1QgKiBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2Fkc19maWVsZGRlZnMgV0hFUkUgcHVibGljID0gMSBPUkRFUiBCWSBpb3JkZXInOwogICR0ZmllbGRzID0gJGRiLT5HZXRBcnJheSgkcXVlcnkpOwoKCSRxdWVyeSA9ICdTRUxFQ1QgKiBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2Fkc19maWVsZHZhbHMgV0hFUkUgdXBsb2FkX2lkID0gPyc7CgkkdG1wID0gJGRiLT5HZXRBcnJheSgkcXVlcnksYXJyYXkoJHBhcmFtc1sndXBsb2FkX2lkJ10pKTsKCSR0dmFscyA9ICR0aGlzLT5hcnJheV90b19oYXNoKCR0bXAsJ2ZsZF9pZCcpOwoKICBmb3IoICRpID0gMDsgJGkgPCBjb3VudCgkdGZpZWxkcyk7ICRpKysgKQogICAgewogICAgICAkdGZpZWxkc1skaV1bJ2F0dHJpYiddID0gdW5zZXJpYWxpemUoJHRmaWVsZHNbJGldWydhdHRyaWJzJ10pOwogICAgICB1bnNldCgkdGZpZWxkc1skaV1bJ2F0dHJpYnMnXSk7CgkJCSR0ZmllbGRzWyRpXVsndmFsdWUnXSA9ICR0dmFsc1skdGZpZWxkc1skaV1bJ2lkJ11dWyd2YWx1ZSddOwogICAgICAKICAgICAgc3dpdGNoKCR0ZmllbGRzWyRpXVsndHlwZSddKQoJCQkJewoJCQkJY2FzZSAndGV4dGFyZWEnOgoJCQkJCSR0ZmllbGRzWyRpXVsnaW5wdXQnXSA9IAoJCQkJCQkkdGhpcy0+Q3JlYXRlVGV4dEFyZWEoaXNzZXQoJHRmaWVsZHNbJGldWydhdHRyaWInXVsndXNld3lzaXd5ZyddKSAmJiAkdGZpZWxkc1skaV1bJ2F0dHJpYiddWyd1c2V3eXNpd3lnJ10gPT0gMSAmJgoJCQkJCQkJCQkJCQkJCQkJCSR0aGlzLT5HZXRQcmVmZXJlbmNlKCdhbGxvd19jb21tZW50X3d5c2l3eWcnLDApLAoJCQkJCQkJCQkJCQkJCQkJCSRpZCwKCQkJCQkJCQkJCQkJCQkJCQkkdGZpZWxkc1skaV1bJ3ZhbHVlJ10sCgkJCQkJCQkJCQkJCQkJCQkJJ2ZpZWxkXycuJHRmaWVsZHNbJGldWydpZCddKTsKCQkJCQlicmVhazsKCQkJCWNhc2UgJ2Ryb3Bkb3duJzoKCQkJCWNhc2UgJ211bHRpc2VsZWN0JzoKCQkJCQlpZiggaXNzZXQoJHRmaWVsZHNbJGldWydhdHRyaWInXVsnb3B0aW9ucyddKSApCgkJCQkJCXsKCQkJCQkJCSR0bXAgPSBleHBsb2RlKCJcbiIsJHRmaWVsZHNbJGldWydhdHRyaWInXVsnb3B0aW9ucyddKTsKCQkJCQkJCSR0bXAyID0gYXJyYXkoKTsKCQkJCQkJCWZvcmVhY2goICR0bXAgYXMgJG9uZSApCgkJCQkJCQkJewoJCQkJCQkJCQlsaXN0KCRrZXksJHZhbHVlKSA9IGV4cGxvZGUoJz0nLHRyaW0oJG9uZSksMik7CgkJCQkJCQkJCSR0bXAyW3RyaW0oJHZhbHVlKV0gPSB0cmltKCRrZXkpOwoJCQkJCQkJCX0KCQkJCQkJCSR0ZmllbGRzWyRpXVsnYXR0cmliJ11bJ29wdGlvbnMnXSA9ICR0bXAyOwoJCQkJCQl9CgkJCQkJYnJlYWs7CgkJCQl9CiAgICAgIAogICAgICAkZmllbGRzWyR0ZmllbGRzWyRpXVsnbmFtZSddXSA9ICR0ZmllbGRzWyRpXTsKICAgIH0KfQoKLy8gYXR0ZW1wdCB0byBnZXQgYW4gYXV0aG9yCiRhdXRob3IgPSAnYW5vbnltb3VzJzsKJGZldXNlcnMgPSYgJHRoaXMtPkdldE1vZHVsZUluc3RhbmNlKCdGcm9udEVuZFVzZXJzJyk7CmlmKCAkZmV1c2VycyApCgl7CgkJJHRtcCA9ICRmZXVzZXJzLT5Mb2dnZWRJbk5hbWUoKTsKCQlpZiggJHRtcCApCgkJCXsKCQkJCSRhdXRob3IgPSAkdG1wOwoJCQl9Cgl9Cgokc21hcnR5LT5hc3NpZ24oJ2F1dGhvcicsJGF1dGhvcik7CmlmKCBpc3NldCggJHBhcmFtc1snbm9hdXRob3InXSApICkKCXsKCQkkc21hcnR5LT5hc3NpZ24oJ2lucHV0X2F1dGhvcicsCgkJCQkJCSR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsICdpbnB1dF9hdXRob3InLCAkYXV0aG9yKSk7CgkJJHNtYXJ0eS0+YXNzaWduKCdub2F1dGhvcicsMSk7CgkJCQkJCSAgICAgICAKCX0KCiRzbWFydHktPmFzc2lnbiAoJ3Byb21wdF9hdXRob3InLCAkdGhpcy0+TGFuZyAoJ2F1dGhvcicpKTsKJHNtYXJ0eS0+YXNzaWduICgncHJvbXB0X3N1bW1hcnknLCR0aGlzLT5MYW5nICgnc3VtbWFyeScpKTsKJHNtYXJ0eS0+YXNzaWduICgncHJvbXB0X2Rlc3RuYW1lJywkdGhpcy0+TGFuZyAoJ2Rlc3RuYW1lJykpOwokc21hcnR5LT5hc3NpZ24gKCdpbmZvX2Rlc3RuYW1lJywkdGhpcy0+TGFuZyAoJ2luZm9fZGVzdG5hbWUnKSk7CiRzbWFydHktPmFzc2lnbiAoJ3Byb21wdF9kZXNjcmlwdGlvbicsJHRoaXMtPkxhbmcgKCdkZXNjcmlwdGlvbicpKTsKaWYoIGlzc2V0KCAkcGFyYW1zWydmaWxlX2V4dGVuc2lvbnMnXSApICkKCXsKCQkkaGlkZGVuIC49IAoJCQkkdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oICRpZCwgJ2ZpbGVfZXh0ZW5zaW9ucycsCgkJCQkJCQkJCQkJCQkJCQkkcGFyYW1zWydmaWxlX2V4dGVuc2lvbnMnXSApOwoJfQokY2FwdGNoYSA9JiAkdGhpcy0+R2V0TW9kdWxlSW5zdGFuY2UoJ0NhcHRjaGEnKTsKaWYoIGlzX29iamVjdCgkY2FwdGNoYSkgJiYgIWlzc2V0KCRwYXJhbXNbJ25vY2FwdGNoYSddKSApCgl7CgkJJHNtYXJ0eS0+YXNzaWduKCdjYXB0Y2hhX3RpdGxlJywgJHRoaXMtPkxhbmcoJ2NhcHRjaGFfdGl0bGUnKSk7CgkJJHNtYXJ0eS0+YXNzaWduKCdjYXB0Y2hhJywgJGNhcHRjaGEtPmdldENhcHRjaGEoKSk7Cgl9CiRzbWFydHktPmFzc2lnbiAoJ3Byb21wdF90aHVtYm5haWwnLAoJCQkJCQkJCSAkdGhpcy0+TGFuZyAoJ3RodW1ibmFpbCcpKTsKJHNtYXJ0eS0+YXNzaWduICgnaW5mb190aHVtYm5haWwnLAoJCQkJCQkJCSAkdGhpcy0+TGFuZyAoJ2luZm9fdGh1bWJuYWlsJykpOwokc21hcnR5LT5hc3NpZ24gKCdpbnB1dF9zdWJtaXQnLCR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCAoJGlkLCAnZG9fdXBsb2FkZmlsZScsCgkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJJHRoaXMtPkxhbmcgKCdzdWJtaXQnKSkpOwppZiggY291bnQoJGZpZWxkcykgKQoJewoJCSRzbWFydHktPmFzc2lnbignZmllbGRzJywkZmllbGRzKTsKCX0KJHNtYXJ0eS0+YXNzaWduKCdtYXhfdXBsb2Fkc2l6ZScsJGdDbXMtPmNvbmZpZ1snbWF4X3VwbG9hZF9zaXplJ10pOwoKJHNtYXJ0eS0+YXNzaWduICgnZW5kZm9ybScsICR0aGlzLT5DcmVhdGVGb3JtRW5kICgpKTsKCmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhYmFzZSgkdGVtcGxhdGUpOwovLyBFT0YKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.uploadicon.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojIEF1dGhvcjogUm9iZXJ0IENhbXBiZWxsIDxyb2JAdGVjaGNvbS5keW5kbnMub3JnPgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDoJLy93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdCgpOwppZiggISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01hbmFnZSBVcGxvYWRzJykgKQogIHsKICAgIHJldHVybjsKICB9CgokZGlyID0gZGlybmFtZShfX0ZJTEVfXykuRElSRUNUT1JZX1NFUEFSQVRPUi4naW1hZ2VzJy5ESVJFQ1RPUllfU0VQQVJBVE9SOwoKJHJldCA9ICR0aGlzLT5faGFuZGxlVXBsb2FkKCRkaXIsCgkJCSAgICAkaWQuJ2lucHV0X3VwbG9hZF9pY29uJyk7CgokcGFybXMgPSBhcnJheSgpOwppZiggaXNfYXJyYXkoICRyZXQgKSAmJiAkcmV0WzBdID09PSBmYWxzZSApCiAgewogICAgJHBhcm1zWydlcnJvcnMnXT0kcmV0WzFdOwogIH0KJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkLCRwYXJhbXNbJ2FjdGl2ZV90YWInXSwkcGFybXMpOwoKLy8gRU9GCj8+]]></data>
	</file>
	<file>
	  <filename>/action.yousendit.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLXNldC1zdHlsZTpsaW51eDsgdGFiLXdpZHRoOjI7IGluZGVudC10YWJzLW1vZGU6dDsgYy1iYXNpYy1vZmZzZXQ6IDI7IC0qLQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogVXBsb2FkcyAtPSBhbGxvdyB1c2VycyB0byB1cGxvYWQgc3R1ZmYsIGEgcHNldWRvIGZpbGUgbWFuYWdlciIgbW9kdWxlCiMgQXV0aG9yOiBSb2JlcnQgQ2FtcGJlbGwgPHJvYkB0ZWNoY29tLmR5bmRucy5vcmc+CiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOgkvL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KaWYoICFpc3NldCgkZ0NtcykgKSBleGl0OwoKLy8gZGlzcGxheSBhIGZvcm0gdG8gYWxsb3cgdGhlIHVzZXIgdG8gdXBsb2FkIGEgZmlsZS4uLi4gYnV0IG1heSBoYXZlIHRvIGhhdmUgcGVybWlzc2lvbiBmaXJzdAovLyBobW1tLCBJJ2xsIHRoaW5rIGFib3V0IHRoZSBwZXJtaXNzaW9uIHN0dWZmIGxhdGVyLgoKLy8KLy8gaW5pdGlhbGl6YXRpb24KLy8KJHlzaV90ZW1wbGF0ZSA9ICd5b3VzZW5kaXRmb3JtXycuJHRoaXMtPkdldFByZWZlcmVuY2UoJ2RlZmF1bHRfeW91c2VuZGl0Zm9ybScpOwppZiggaXNzZXQoICRwYXJhbXNbJ3RlbXBsYXRlJ10gKSApCiAgewogICAgJHlzaV90ZW1wbGF0ZSA9ICd5b3VzZW5kaXRmb3JtXycuJHBhcmFtc1sndGVtcGxhdGUnXTsKICB9CiRub3RlcyA9ICcnOwokc2VuZHRvID0gJyc7CiRzdWJqZWN0ID0gJyc7CiRlcnJvciA9IGFycmF5KCk7CiRtZXNzYWdlID0gYXJyYXkoKTsKJGF1dGhvciA9ICdhbm9ueW1vdXMnOwokc3VtbWFyeSA9ICcnOwokZGVzdG5hbWUgPSAnJzsKJGtleSA9ICcnOwokZGVzY3JpcHRpb24gPSAnJzsKJHJlcGxhY2UgPSAwOwokZmV1c2VycyA9JiAkdGhpcy0+R2V0TW9kdWxlSW5zdGFuY2UoJ0Zyb250RW5kVXNlcnMnKTsKaWYoICRmZXVzZXJzICkKICB7CiAgICAkdG1wID0gJGZldXNlcnMtPkxvZ2dlZEluTmFtZSgpOwogICAgaWYoICFlbXB0eSgkdG1wKSApICRhdXRob3IgPSAkdG1wOwogIH0KJHBhcmFtc1snaW5wdXRfYXV0aG9yJ10gPSAkYXV0aG9yOwoKCi8vCi8vIFNldHVwCi8vCmlmKCAhaXNzZXQoICRwYXJhbXNbJ2NhdGVnb3J5J10gKSApCiAgewogICAgLy8gaWYgbW9kZSBvciBjYXRlZ29yeSBpc24ndCBzZXQuLi4gd2UgZG9uJ3QgZGlzcGxheSBhbnl0aGluZwogICAgJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlICgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwKCQkJICAgICAgJHRoaXMtPkxhbmcgKCdlcnJvcl9pbnN1ZmZpY2llbnRwYXJhbXMnLCdjYXRlZ29yeScpKTsKICAgIHJldHVybjsKICB9CmlmKCBpc3NldCggJHBhcmFtc1sna2V5J10gKSApCiAgewogICAgJGtleSA9ICRwYXJhbXNbJ2tleSddOwogICAgJHBhcmFtc1snaW5wdXRfa2V5J10gPSAka2V5OwogICAgdW5zZXQoJHBhcmFtc1sna2V5J10pOwogIH0KZWxzZSBpZiggaXNzZXQoICRwYXJhbXNbJ2lucHV0X2tleSddICkgKQogIHsKICAgICRrZXkgPSAkcGFyYW1zWydpbnB1dF9rZXknXTsKICB9CiRzbWFydHktPmFzc2lnbignbW9kJywkdGhpcyk7CiRzbWFydHktPmFzc2lnbignYWN0aW9uaWQnLCRpZCk7CgoKLy8KLy8gaGFuZGxlIGZvcm0gc3VibWlzc2lvbgovLwppZiggaXNzZXQoJHBhcmFtc1snaW5wdXRfY2FuY2VsJ10pICkKICB7CiAgICAkdGhpcy0+UmVkaXJlY3RDb250ZW50KCRyZXR1cm5pZCk7CiAgfQplbHNlIGlmKCBpc3NldCgkcGFyYW1zWydpbnB1dF9zdWJtaXQnXSkgKQogIHsKICAgIGlmKCBpc3NldCgkcGFyYW1zWydpbnB1dF9hdXRob3InXSkgKQogICAgICB7CgkkYXV0aG9yID0gdHJpbSgkcGFyYW1zWydpbnB1dF9hdXRob3InXSk7CiAgICAgIH0KICAgIGlmKCBpc3NldCgkcGFyYW1zWydpbnB1dF9zdW1tYXJ5J10pICkKICAgICAgewoJJHN1bW1hcnkgPSB0cmltKCRwYXJhbXNbJ2lucHV0X3N1bW1hcnknXSk7CiAgICAgIH0KICAgIGlmKCBpc3NldCgkcGFyYW1zWydpbnB1dF9kZXNjcmlwdGlvbiddKSApCiAgICAgIHsKCSRkZXNjcmlwdGlvbiA9IHRyaW0oJHBhcmFtc1snaW5wdXRfZGVzY3JpcHRpb24nXSk7CiAgICAgIH0KICAgIGlmKCBpc3NldCgkcGFyYW1zWydpbnB1dF9kZXN0bmFtZSddKSApCiAgICAgIHsKCSRkZXN0bmFtZSA9IHRyaW0oJHBhcmFtc1snaW5wdXRfZGVzdG5hbWUnXSk7CiAgICAgIH0KICAgIGlmKCBpc3NldCgkcGFyYW1zWydpbnB1dF9yZXBsYWNlJ10pICkKICAgICAgewoJJHJlcGxhY2UgPSAoaW50KSRwYXJhbXNbJ2lucHV0X3JlcGxhY2UnXTsKICAgICAgfQogICAgaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0X3NlbmR0byddKSApCiAgICAgIHsKCSRzZW5kdG8gPSB0cmltKCRwYXJhbXNbJ2lucHV0X3NlbmR0byddKTsKICAgICAgfQogICAgaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0X3N1YmplY3QnXSkgKQogICAgICB7Cgkkc3ViamVjdCA9IHRyaW0oJHBhcmFtc1snaW5wdXRfc3ViamVjdCddKTsKICAgICAgfQogICAgaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0X25vdGVzJ10pICkKICAgICAgewoJJG5vdGVzID0gdHJpbSgkcGFyYW1zWydpbnB1dF9ub3RlcyddKTsKICAgICAgfQoKICAgIC8vIGVycm9yIGNoZWNraW5nCiAgICBpZiggZW1wdHkoJHNlbmR0bykgKQogICAgICB7CgkkZXJyb3JbXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9ub2FkZHJlc3NlcycpOwogICAgICB9CiAgICAKICAgIGlmKCBlbXB0eSgkc3ViamVjdCkgKQogICAgICB7CgkkZXJyb3JbXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9ub3N1YmplY3QnKTsKICAgICAgfQoKICAgIC8vIHZhbGlkYXRlIGFkZHJlc3NlcwogICAgJGFkZHJlc3NlcyA9IGFycmF5KCk7CiAgICB7CiAgICAgICR0bXAgPSBleHBsb2RlKCcsJywkc2VuZHRvKTsKICAgICAgZm9yKCAkaSA9IDA7ICRpIDwgY291bnQoJHRtcCk7ICRpKysgKQoJewoJICAkdDIgPSB0cmltKCR0bXBbJGldKTsKCSAgaWYoICFlbXB0eSgkdDIpICkgJGFkZHJlc3Nlc1tdID0gJHQyOwoJfQogICAgfQoKICAgIGlmKCAhY291bnQoJGFkZHJlc3NlcykgJiYgIWVtcHR5KCRzZW5kdG8pICkKICAgICAgewoJJGVycm9yW10gPSAkdGhpcy0+TGFuZygnZXJyb3Jfbm9hZGRyZXNzZXMnKS4nIDInOwogICAgICB9CgogICAgLy8gY2hlY2sgdGhlIGNhcHRjaGEKICAgIHsKICAgICAgaWYoIGlzX29iamVjdCgkY2FwdGNoYSkgJiYgIWlzc2V0KCRwYXJhbXNbJ25vY2FwdGNoYSddKSApIHsKCSRjYXB0Y2hhID0mICR0aGlzLT5HZXRNb2R1bGVJbnN0YW5jZSgnQ2FwdGNoYScpOwoJaWYgKCEkY2FwdGNoYS0+Q2hlY2tDYXB0Y2hhKCRwYXJhbXNbJ2lucHV0X2NhcHRjaGEnXSkpIHsKCSAgJGVycm9yW10gPSAkdGhpcy0+TGFuZygnZXJyb3JfY2FwdGNoYW1pc21hdGNoJyk7Cgl9CiAgICAgIH0KICAgIH0KCiAgICAvLyBkbyB0aGUgdXBsb2FkCiAgICBpZiggIWNvdW50KCRlcnJvcikgKQogICAgICB7CgkkcmV0ID0gJHRoaXMtPkF0dGVtcHRVcGxvYWQgKCRpZCwgJHBhcmFtcywgJHJldHVybmlkKTsKCWlmKCAkcmV0WzBdID09IEZBTFNFICkgCgkgIHsKCSAgICAkZXJyb3JbXSA9ICRyZXRbMV07CgkgIH0KCWVsc2UKCSAgewoJICAgICRwYXJhbXNbJ3VwbG9hZF9pZCddID0gJHJldFsxXTsKCSAgICAkbWVzc2FnZVtdID0gJHRoaXMtPkxhbmcoJ2ZpbGVfdXBsb2FkZWQnKTsKCSAgfQogICAgICB9CgogICAgLy8gc2VuZCB0aGUgbWVzc2FnZQogICAgaWYoICFjb3VudCgkZXJyb3IpICkKICAgICAgewoJJGNtc21haWxlciA9JiAkdGhpcy0+R2V0TW9kdWxlSW5zdGFuY2UoJ0NNU01haWxlcicpOwoJCgkvLyBnZXQgZXZlcnl0aGluZyBpbnRvIHNtYXJ0eS4KCSRwYXJhbXNbJ25vb3V0cHV0J10gPSAxOwoJaW5jbHVkZShkaXJuYW1lKF9fRklMRV9fKS4nL2FjdGlvbi5kZXRhaWwucGhwJyk7CgoJJGNtc21haWxlci0+cmVzZXQoKTsKCSRjbXNtYWlsZXItPlNldFN1YmplY3QoJHN1YmplY3QpOwoJJGNtc21haWxlci0+SXNIVE1MKHRydWUpOwoJZm9yZWFjaCggJGFkZHJlc3NlcyBhcyAkb25lICkKCSAgewoJICAgICRjbXNtYWlsZXItPkFkZEFkZHJlc3MoJG9uZSk7CgkgIH0KCgkkc21hcnR5LT5hc3NpZ24oJ2F1dGhvcicsJGF1dGhvcik7Cgkkc21hcnR5LT5hc3NpZ24oJ25vdGVzJywkbm90ZXMpOwoJJHNtYXJ0eS0+YXNzaWduKCdzdWJqZWN0Jywkc3ViamVjdCk7CgkkYm9keSA9ICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGVGcm9tRGF0YWJhc2UoJ3VwbG9hZF9zZW5kZmlsZXJwdCcpOwoJJGNtc21haWxlci0+U2V0Qm9keSgkYm9keSk7CgkkY21zbWFpbGVyLT5TZW5kKCk7CgkKCS8vIG5vdyB0cnkgdG8gcmVkaXJlY3QgdG8gYSBkaWZmZXJlbnQgcGFnZQoJJHN0ciA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdyZWRpcmVjdF9vbl9zZW5kZmlsZScpOwoJaWYoICRzdHIgIT0gJycgKQoJICB7CgkgICAgJHRtcCA9IENvbnRlbnRNYW5hZ2VyOjpHZXRQYWdlSURGcm9tQWxpYXMoJHN0cik7CgkgICAgaWYoICR0bXAgKQoJICAgICAgewoJCQkJCSR0aGlzLT5SZWRpcmVjdENvbnRlbnQoJHRtcCk7CgkJCQkJcmV0dXJuOwoJICAgICAgfQoJICB9CgoJLy8gcmVkaXJlY3QgaXNuJ3Qgc2V0Li4uIHNvIGRpc3BsYXkgYSBuaWNlIG1lc3NhZ2UuCgkkbWVzc2FnZVtdID0gJHRoaXMtPkxhbmcoJ21zZ19maWxlX3NlbnQnKTsKICAgICAgfQoKICB9IC8vIGVuZCBmb3JtIHN1Ym1pc3Npb24KCgoKLy8KLy8gR2l2ZSBFdmVyeXRoaW5nIHRvIHNtYXJ0eQovLwppZiggY291bnQoJGVycm9yKSApCiAgewogICAgJHNtYXJ0eS0+YXNzaWduKCdlcnJvcnMnLCRlcnJvcik7CiAgfQppZiggY291bnQoJG1lc3NhZ2UpICkKICB7CiAgICAkc21hcnR5LT5hc3NpZ24oJ21lc3NhZ2VzJywkbWVzc2FnZSk7CiAgfQokc21hcnR5LT5hc3NpZ24gKCdzdGFydGZvcm0nLAoJCSAkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0ICgkaWQsICd5b3VzZW5kaXQnLCAkcmV0dXJuaWQsICdwb3N0JywgCgkJCQkJICdtdWx0aXBhcnQvZm9ybS1kYXRhJywgZmFsc2UsICcnLAoJCQkJCSAkcGFyYW1zKSk7CiRzbWFydHktPmFzc2lnbiAoJ3Byb21wdF91cGxvYWQnLCAkdGhpcy0+TGFuZyAoJ3VwbG9hZCcpKTsKCi8vIGF0dGVtcHQgdG8gZ2V0IGFuIGF1dGhvcgppZiggIWlzc2V0KCAkcGFyYW1zWydub2F1dGhvciddICkgKQogIHsKICAgICRzbWFydHktPmFzc2lnbiAoJ3Byb21wdF9hdXRob3InLCAkdGhpcy0+TGFuZyAoJ2F1dGhvcicpKTsKICAgICRzbWFydHktPmFzc2lnbiAoJ2lucHV0X2F1dGhvcicsCgkJICAgICAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0ICgkaWQsICdpbnB1dF9hdXRob3InLCAKCQkJCQkgICAgICRhdXRob3IsIDIwLCAyNTUpKTsKICB9CiRzbWFydHktPmFzc2lnbiAoJ3Byb21wdF9zdW1tYXJ5JywkdGhpcy0+TGFuZyAoJ3N1bW1hcnknKSk7CiRzbWFydHktPmFzc2lnbiAoJ2lucHV0X3N1bW1hcnknLCR0aGlzLT5DcmVhdGVJbnB1dFRleHQgKCRpZCwgJ2lucHV0X3N1bW1hcnknLCRzdW1tYXJ5LCA0MCwgMjU1KSk7CiRzbWFydHktPmFzc2lnbiAoJ3Byb21wdF9kZXN0bmFtZScsJHRoaXMtPkxhbmcgKCdkZXN0bmFtZScpKTsKJHNtYXJ0eS0+YXNzaWduICgnaW5wdXRfZGVzdG5hbWUnLCR0aGlzLT5DcmVhdGVJbnB1dFRleHQgKCRpZCwgJ2lucHV0X2Rlc3RuYW1lJywkZGVzdG5hbWUsIDQwLCAyNTUpKTsKJHNtYXJ0eS0+YXNzaWduICgnaW5mb19kZXN0bmFtZScsICR0aGlzLT5MYW5nICgnaW5mb19kZXN0bmFtZScpKTsKJHNtYXJ0eS0+YXNzaWduICgncHJvbXB0X2Rlc2NyaXB0aW9uJywkdGhpcy0+TGFuZyAoJ2Rlc2NyaXB0aW9uJykpOwokc21hcnR5LT5hc3NpZ24gKCdpbnB1dF9kZXNjcmlwdGlvbicsJHRoaXMtPkNyZWF0ZVRleHRBcmVhKGZhbHNlLCAkaWQsICRkZXNjcmlwdGlvbiwgJ2lucHV0X2Rlc2NyaXB0aW9uJyApKTsKCiRjYXB0Y2hhID0mICR0aGlzLT5HZXRNb2R1bGVJbnN0YW5jZSgnQ2FwdGNoYScpOwppZiggaXNfb2JqZWN0KCRjYXB0Y2hhKSAmJiAhaXNzZXQoJHBhcmFtc1snbm9jYXB0Y2hhJ10pICkKICB7CiAgICAkc21hcnR5LT5hc3NpZ24oJ2NhcHRjaGFfdGl0bGUnLCAkdGhpcy0+TGFuZygnY2FwdGNoYV90aXRsZScpKTsKICAgICRzbWFydHktPmFzc2lnbignaW5wdXRfY2FwdGNoYScsCgkJICAgICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCdpbnB1dF9jYXB0Y2hhJywnJywxMCkpOwogICAgJHNtYXJ0eS0+YXNzaWduKCdjYXB0Y2hhJywgJGNhcHRjaGEtPmdldENhcHRjaGEoKSk7CiAgfQoKJHNtYXJ0eS0+YXNzaWduICgncHJvbXB0X3RodW1ibmFpbCcsICR0aGlzLT5MYW5nICgndGh1bWJuYWlsJykpOwokc21hcnR5LT5hc3NpZ24gKCdpbmZvX3RodW1ibmFpbCcsICR0aGlzLT5MYW5nICgnaW5mb190aHVtYm5haWwnKSk7CiRzbWFydHktPmFzc2lnbiAoJ2lucHV0X3RodW1ibmFpbCcsICAkdGhpcy0+Q3JlYXRlRmlsZVVwbG9hZElucHV0ICgkaWQsJ2lucHV0X3RodW1ibmFpbCcsJycsNTApKTsKJHNtYXJ0eS0+YXNzaWduICgnaW5wdXRfc3VibWl0JywkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQgKCRpZCwgJ2RvX3VwbG9hZGZpbGUnLCR0aGlzLT5MYW5nICgnc3VibWl0JykpKTsKJHNtYXJ0eS0+YXNzaWduICgnZW5kZm9ybScsICR0aGlzLT5DcmVhdGVGb3JtRW5kICgpKTsKCiRzbWFydHktPmFzc2lnbignYXV0aG9yJywkYXV0aG9yKTsKJHNtYXJ0eS0+YXNzaWduKCdzdW1tYXJ5Jywkc3VtbWFyeSk7CiRzbWFydHktPmFzc2lnbigna2V5Jywka2V5KTsKJHNtYXJ0eS0+YXNzaWduKCdkZXNjcmlwdGlvbicsJGRlc2NyaXB0aW9uKTsKJHNtYXJ0eS0+YXNzaWduKCdyZXBsYWNlJywkcmVwbGFjZSk7CiRzbWFydHktPmFzc2lnbignbm90ZXMnLCRub3Rlcyk7CiRzbWFydHktPmFzc2lnbignc2VuZHRvJywkc2VuZHRvKTsKJHNtYXJ0eS0+YXNzaWduKCdzdWJqZWN0Jywkc3ViamVjdCk7CgplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGVGcm9tRGF0YWJhc2UoJHlzaV90ZW1wbGF0ZSk7CgojIEVPRgo/Pg==]]></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+CiAgPC91bD4KPC9saT4KCjxsaT5WZXJzaW9uIDEuNS4xIC0gTWF5IDIwMDkKICA8dWw+CiAgICAgPGxpPkFkZHMgdGhlIGFiaWxpdHkgdG8gZGVsZXRlIGZpbGVzIGZyb20gdGhlIGZyb250ZW5kLjwvbGk+CiAgICAgPGxpPkZpeGVzIHByb2JsZW0gd2l0aCBzY2FuIGRpcmVjdG9yeSB3aGVuIG5vdCBhbHNvIGxvZ2dlZCBpbiB0byB0aGUgYWRtaW4gcGFuZWwgaW4gdGhlIHNhbWUgYnJvd3NlciBzZXNzaW9uLjwvbGk+CiAgPC91bD4KPC9saT4KCjxsaT5WZXJzaW9uIDEuNiAtIEZlYnJ1YXJ5IDIwMDkKICA8dWw+CiAgICAgPGxpPkFkZHMgdGhlIGFiaWxpdHkgdG8gZGlzcGxheSBhIGZvcm0gdG8gc2VuZCBhbiBlbWFpbCB0byBzZWxlY3RlZCBwZW9wbGUgd2l0aCBkZXRhaWxzIGFib3V0IGEgZmlsZS48L2xpPgogICAgIDxsaT5BZGRzIHRoZSB5b3VzZW5kaXQgY2FwYWJpbGl0eSB0byB1cGxvYWQgYSBmaWxlIGFuZCBzaW11bHRhbm9lb3VzbHkgc2VuZCBkZXRhaWxzIHRvIHNlbGVjdGVkIHBlb3BsZS48L2xpPgogIDwvdWw+CjwvbGk+Cgo8bGk+VmVyc2lvbiAxLjcgLSBKdWx5IDIwMDkKICA8dWw+CiAgICAgPGxpPk5vdyBkZXBlbmRzIG9uIENHRXh0ZW5zaW9ucyBmb3IgdGVtcGxhdGluZzwvbGk+CiAgICAgPGxpPkFkZHMgdGltZSBsaW1pdGVkIFVSTFM8L2xpPgogIDwvdWw+CjwvbGk+Cgo8bGk+VmVyc2lvbiAxLjcuMSAtIEp1bHkgMjAwOQogIDx1bD4KICAgICA8bGk+TWlub3IgYnVnIGZpeGVzLjwvbGk+CiAgPC91bD4KPC9saT4KCjxsaT5WZXJzaW9uIDEuOCAtIEp1bHkgMjAwOQogIDx1bD4KICAgIDxsaT5NaW5vciBidWcgZml4ZXMuPC9saT4KICAgIDxsaT5BZGQgYSBjYXRlZ29yeSBzZWxlY3QgY29udGVudCBibG9jayBmb3IgQ01TIDEuNy48L2xpPgogIDwvdWw+CjwvbGk+Cgo8bGk+VmVyc2lvbiAxLjkgLSBKdWx5IDIwMDkKICA8dWw+CiAgICA8bGk+VXBkYXRlcyBmb3IgQ01TIDEuNzwvbGk+CiAgPC91bD4KPC9saT4KCjxsaT5WZXJzaW9uIDEuOS4xIC0gU2VwdGVtYmVyIDIwMDkKICA8dWw+CiAgICA8bGk+TWlub3IgYnVnIGZpeGVzLjwvbGk+CiAgPC91bD4KPC9saT4KCjxsaT5WZXJzaW9uIDEuOS4yIC0gU2VwdGVtYmVyIDIwMDkKICA8dWw+CiAgICA8bGk+TWlub3IgYnVnIGZpeGVzLjwvbGk+CiAgPC91bD4KPC9saT4KCjxsaT5WZXJzaW9uIDEuOS4zIC0gT2N0b2JlciAyMDA5CiAgPHVsPgogICAgPGxpPk9uZSBtaW5vciBidWcgZml4LjwvbGk+CiAgPC91bD4KPC9saT4KCjxsaT5WZXJzaW9uIDEuOS40IC0gT2N0b2JlciAyMDA5CiAgPHVsPgogICAgPGxpPm1pbm9yIGJ1ZyBmaXhlczwvbGk+CiAgPC91bD4KPC9saT4KCjxsaT5WZXJzaW9uIDEuMTAgLSBPY3RvYmVyIDIwMDkKICA8dWw+CiAgICA8bGk+QWRkcyB0aGUgYWJpbGl0eSB0byBhdXRvIGRlbGV0ZSBmaWxlcyBiZXNlZCBvbiBhIG1heCBhZ2Ugc3BlY2lmaWVkIGluIHRoZSBjYXRlZ29yeTwvbGk+CiAgICA8bGk+QWRkcyB0aGUgYWJpbGl0eSB0byBhZGQgYSB0aW1lIGxpbWl0ZWQga2V5LCBhbmQgc2VuZCBhbiBlbWFpbCBhdXRvbWF0aWNhbGx5IG9uIHVwbG9hZCBpbiB0aGUgYWRtaW4uPC9saT4KICA8L3VsPgo8L2xpPgoKPGxpPlZlcnNpb24gMS4xMC4xIC0gT2N0b2JlciAyMDA5CiAgPHVsPgogICA8bGk+Rml4ZXMgYnVnIHdpdGggZGVsZXRlaW5nIGZpbGVzLiAtIHRoZSBkZWxldGUgdXJsIGlzIHN0aWxsIG5vdCBpbiB0aGUgZGVmYXVsdCBzdW1tYXJ5IHRlbXBsYXRlIChpbnRlbnRvbmFsbHkpPC9saT4KICA8L3VsPgo8L2xpPgoKPGxpPlZlcnNpb24gMS4xMC4yIC0gT2N0b2JlciAyMDA5CiAgPHVsPgogICA8bGk+QWRkcyBhIG5ldyBwZXJtaXNzaW9uIHRoYXQgYWxsb3dzIG9ubHkgYWNjZXNzIHRvIHRoZSBmdW5jdGlvbmFsaXR5IG9uIHRoZSBmaWxlcyB0YWIuPC9saT4KICA8L3VsPgo8L2xpPgoKPGxpPlZlcnNpb24gMS4xMC4zIC0gT2N0b2JlciAyMDA5CiAgPHVsPgogICA8bGk+TWlub3IgQnVnIEZpeGVzPC9saT4KICA8L3VsPgo8L2xpPgoKPGxpPlZlcnNpb24gMS4xMC40IC0gT2N0b2JlciAyMDA5CiAgPHVsPgogICA8bGk+TWlub3IgQnVnIEZpeGVzPC9saT4KICA8L3VsPgo8L2xpPgoKPC91bD4K]]></data>
	</file>
	<file>
	  <filename>/event.Core.ContentPostRender.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLXNldC1zdHlsZTpsaW51eDsgdGFiLXdpZHRoOjI7IGluZGVudC10YWJzLW1vZGU6dDsgYy1iYXNpYy1vZmZzZXQ6IDI7IC0qLQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogVXBsb2FkcyAtPSBhbGxvdyB1c2VycyB0byB1cGxvYWQgc3R1ZmYsIGEgcHNldWRvIGZpbGUgbWFuYWdlciIgbW9kdWxlCiMgQXV0aG9yOiBSb2JlcnQgQ2FtcGJlbGwgPHJvYkB0ZWNoY29tLmR5bmRucy5vcmc+CiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOgkvL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KaWYoICFpc3NldCgkZ0NtcykgKSBleGl0OwoKLy8gZ2V0IHRoZSBsaXN0IG9mIGNhdGVnb3JpZXMgdGhhdCBoYXZlIGV4cGlyeSBwZXJpb2RzIGdyZWF0ZXIgdGhhbiAwCiRxdWVyeSAgPSAnU0VMRUNUIHVwbG9hZF9jYXRlZ29yeV9pZCx1cGxvYWRfY2F0ZWdvcnlfZXhwaXJlc19ocnMgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHNfY2F0ZWdvcmllcyBXSEVSRSB1cGxvYWRfY2F0ZWdvcnlfZXhwaXJlc19ocnMgPiAwJzsKJGNhdHMgPSAkZGItPkdldEFycmF5KCRxdWVyeSk7CmlmKCAhJGNhdHMgKSByZXR1cm47CgovLyBnZXQgdGhlIHVwbG9hZHMgdGhhdCBuZWVkIHRvIGJlIGRlbGV0ZWQuCiRxdWVyeSA9ICdTRUxFQ1QgVS51cGxvYWRfaWQsVS51cGxvYWRfbmFtZSxDLnVwbG9hZF9jYXRlZ29yeV9wYXRoIAogICAgICAgICAgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHMgVSAKICAgICAgICAgIExFRlQgSk9JTiAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHNfY2F0ZWdvcmllcyBDIAogICAgICAgICAgT04gVS51cGxvYWRfY2F0ZWdvcnlfaWQgPSBDLnVwbG9hZF9jYXRlZ29yeV9pZCAKICAgICAgICAgIFdIRVJFICc7CiRhcmdzID0gYXJyYXkoKTsKJHBhcm1zID0gYXJyYXkoKTsKJG5vdyA9IHRpbWUoKTsKZm9yZWFjaCggJGNhdHMgYXMgJG9uZSApCnsKCSR0aGVkYXRlID0gJG5vdyAtICRvbmVbJ3VwbG9hZF9jYXRlZ29yeV9leHBpcmVzX2hycyddICogMzYwMDsKCSR0aGVkYXRlID0gJGRiLT5EYlRpbWVTdGFtcCgkdGhlZGF0ZSk7CgkkYXJnc1tdID0gIiggVS51cGxvYWRfY2F0ZWdvcnlfaWQgPSA/IEFORCBVLnVwbG9hZF9kYXRlIDwgJHRoZWRhdGUgKSI7CgkkcGFybXNbXSA9ICRvbmVbJ3VwbG9hZF9jYXRlZ29yeV9pZCddOwp9CiRxdWVyeSAuPSBpbXBsb2RlKCcgT1IgJywkYXJncyk7CgokZmlsZXMgPSAkZGItPkdldEFycmF5KCRxdWVyeSwkcGFybXMpOwppZiggISRmaWxlcyApIHJldHVybjsKCi8vIHdlIGhhdmUgc29tZXRoaW5nIHRvIGRlbGV0ZS4KJGNvbmZpZyA9JiAkZ0Ntcy0+R2V0Q29uZmlnKCk7CmZvcmVhY2goICRmaWxlcyBhcyAkb25lZmlsZSApCnsKCSRyZXMgPSAkdGhpcy0+X0FkbWluRG9EZWxldGVVcGxvYWQoJG9uZWZpbGVbJ3VwbG9hZF9pZCddLHRydWUpOwoJaWYoICEkcmVzICkKCQl7CgkJCS8vIHdvb3QsIHdlIGRlbGV0ZWQgdGhlIGZpbGUKCQkJJHRoaXMtPkF1ZGl0KCRvbmVmaWxlWyd1cGxvYWRfaWQnXSwkdGhpcy0+R2V0TmFtZSgpLAoJCQkJCQkJCQkgJHRoaXMtPkxhbmcoJ21zZ19hdXRvX2RlbGV0ZV9maWxlJywkb25lZmlsZVsndXBsb2FkX25hbWUnXSkpOwoJCX0KCWVsc2UKCQl7CgkJCS8vIGZpbGUgbm90IGRlbGV0ZWQsIGRvbid0IGRlbGV0ZSB0aGUgcmVjb3JkLCBqdXN0IGF1ZGl0IGFib3V0IGl0LgoJCQkkdGhpcy0+QXVkaXQoJG9uZWZpbGVbJ3VwbG9hZF9pZCddLCR0aGlzLT5HZXROYW1lKCksCgkJCQkJCQkJCSAkdGhpcy0+TGFuZygnbXNnX2F1dG9fZGVsZXRlX2ZpbGVfZmFpbGVkJywkb25lZmlsZVsndXBsb2FkX25hbWUnXSkpOwoJCX0KfQojCiMgRU9GCiMKPz4=]]></data>
	</file>
	<file>
	  <filename>/function.admin_categoriestab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgPSBhbGxvdyB1c2VycyB0byB1cGxvYWQgc3R1ZmYsIGEgcHNldWRvIGZpbGUgbWFuYWdlciBtb2R1bGUKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6CS8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKaWYgKCEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uICgnTWFuYWdlIFVwbG9hZHMnKSkKICB7CiAgICByZXR1cm47CiAgfQoKZ2xvYmFsICRnQ21zOwokZGIgPSYgJHRoaXMtPkdldERiKCk7CiAgICAKJHJvd2FycmF5ID0gYXJyYXkgKCk7CiRxdWVyeSA9ICcnOwokZGJyZXN1bHQgPSAnJzsKICAgIAokcXVlcnkgPSAiU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXggKCkuIm1vZHVsZV91cGxvYWRzX2NhdGVnb3JpZXMiOwokZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUgKCRxdWVyeSk7CiRyb3djbGFzcyA9ICdyb3cxJzsKICAgIAp3aGlsZSAoJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3cgKCkpCiAgewogICAgJG9uZXJvdyA9IG5ldyBzdGRDbGFzcyAoKTsKICAgICRvbmVyb3ctPmlkID0gJHJvd1sidXBsb2FkX2NhdGVnb3J5X2lkIl07CiAgICAkb25lcm93LT5uYW1lID0gJHRoaXMtPkNyZWF0ZUxpbmsoICRpZCwgJ2VkaXRjYXRlZ29yeScsICRyZXR1cm5pZCwgCgkJCSAkcm93WyJ1cGxvYWRfY2F0ZWdvcnlfbmFtZSJdLAoJCQkgYXJyYXkoJ2NhdGVnb3J5X2lkJz0+JHJvd1sndXBsb2FkX2NhdGVnb3J5X2lkJ10pKTsKCiAgICAkb25lcm93LT5kZXNjcmlwdGlvbiA9ICRyb3dbInVwbG9hZF9jYXRlZ29yeV9kZXNjcmlwdGlvbiJdOwogICAgJG9uZXJvdy0+cGF0aCA9ICRyb3dbInVwbG9hZF9jYXRlZ29yeV9wYXRoIl07CiAgICAkb25lcm93LT5yb3djbGFzcyA9ICRyb3djbGFzczsKCiAgICAkb25lcm93LT5jb3B5bGluayA9ICR0aGlzLT5DcmVhdGVMaW5rICgkaWQsICdhZG1pbl9jb3B5Y2F0ZWdvcnknLCAkcmV0dXJuaWQsCgkJCSAkZ0Ntcy0+dmFyaWFibGVzWydhZG1pbnRoZW1lJ10tPgoJCQkgRGlzcGxheUltYWdlICgnaWNvbnMvc3lzdGVtL2NvcHkuZ2lmJywKCQkJIAkkdGhpcy0+TGFuZyAoJ2NvcHknKSwgJycsICcnLCAnc3lzdGVtaWNvbicpLAoJCQkgYXJyYXkgKCdjYXRlZ29yeV9pZCcgPT4gJHJvd1sndXBsb2FkX2NhdGVnb3J5X2lkJ10pKTsKICAgICRvbmVyb3ctPmVkaXRsaW5rID0gJHRoaXMtPkNyZWF0ZUxpbmsgKCRpZCwgJ2VkaXRjYXRlZ29yeScsICRyZXR1cm5pZCwKCQkJICRnQ21zLT52YXJpYWJsZXNbJ2FkbWludGhlbWUnXS0+CgkJCSBEaXNwbGF5SW1hZ2UgKCdpY29ucy9zeXN0ZW0vZWRpdC5naWYnLAoJCQkgCSR0aGlzLT5MYW5nICgnZWRpdCcpLCAnJywgJycsICdzeXN0ZW1pY29uJyksCgkJCSBhcnJheSAoJ2NhdGVnb3J5X2lkJyA9PiAkcm93Wyd1cGxvYWRfY2F0ZWdvcnlfaWQnXSkpOwogICAgJG9uZXJvdy0+ZGVsZXRlbGluayA9ICR0aGlzLT5DcmVhdGVMaW5rICgkaWQsICdkZWxldGVjYXRlZ29yeScsICRyZXR1cm5pZCwKCQkJICRnQ21zLT52YXJpYWJsZXNbJ2FkbWludGhlbWUnXS0+CgkJCSBEaXNwbGF5SW1hZ2UgKCdpY29ucy9zeXN0ZW0vZGVsZXRlLmdpZicsCgkJCQkgICAgICAgJHRoaXMtPkxhbmcgKCdkZWxldGUnKSwgJycsICcnLCAnc3lzdGVtaWNvbicpLAoJCQkgYXJyYXkgKCdjYXRlZ29yeV9pZCcgPT4gJHJvd1sndXBsb2FkX2NhdGVnb3J5X2lkJ10pLAoJCQkgJHRoaXMtPkxhbmcgKCdhcmV5b3VzdXJlX2RlbGV0ZWNhdGVnb3J5JykpOwoKICAgIGFycmF5X3B1c2ggKCRyb3dhcnJheSwgJG9uZXJvdyk7CiAgICAoJHJvd2NsYXNzID09ICJyb3cxIiA/ICRyb3djbGFzcyA9ICJyb3cyIiA6ICRyb3djbGFzcyA9ICJyb3cxIik7CiAgfQoKJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgnY2F0ZWdvcnl0ZXh0JywgJHRoaXMtPkxhbmcgKCdjYXRlZ29yeScpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgnbmFtZXRleHQnLCAkdGhpcy0+TGFuZyAoJ25hbWUnKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ3BhdGh0ZXh0JywgJHRoaXMtPkxhbmcgKCdwYXRoJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24gKCdpdGVtcycsICRyb3dhcnJheSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ2l0ZW1jb3VudCcsIGNvdW50ICgkcm93YXJyYXkpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgnYWRkbGluaycsICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwgJ2FkZGNhdGVnb3J5JywgCgkkcmV0dXJuaWQsIAoJJGdDbXMtPnZhcmlhYmxlc1snYWRtaW50aGVtZSddLT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9uZXdvYmplY3QuZ2lmJywgCgkJJHRoaXMtPkxhbmcoJ2FkZGNhdGVnb3J5JyksJycsJycsJ3N5c3RlbWljb24nKSwgCgkJYXJyYXkoKSwgJycsIGZhbHNlLCBmYWxzZSwgJycpIC4nICcuIAoJCSR0aGlzLT5DcmVhdGVMaW5rKCRpZCwgJ2FkZGNhdGVnb3J5JywgCgkJCSRyZXR1cm5pZCwgJHRoaXMtPkxhbmcoJ2FkZGNhdGVnb3J5JyksIAoJCQlhcnJheSgpLCAnJywgZmFsc2UsIGZhbHNlLCAnY2xhc3M9InBhZ2VvcHRpb25zIicpKTsKJHNtYXJ0eS0+YXNzaWduKCdmb3Jtc3RhcnQnLAoJCSR0aGlzLT5DR0NyZWF0ZUZvcm1TdGFydCgkaWQsJ2FkbWluX211bHRpY2F0ZWdvcnknLCRyZXR1cm5pZCkpOwokc21hcnR5LT5hc3NpZ24oJ2Zvcm1lbmQnLCR0aGlzLT5DcmVhdGVGb3JtRW5kKCkpOwokc21hcnR5LT5hc3NpZ24oJ2NhdF9tdWx0aWFjdGlvbnMnLAoJCWFycmF5KCdkZWxldGUnPT4kdGhpcy0+TGFuZygnZGVsZXRlJyksCgkJICAgICAgJ2NvcHknPT4kdGhpcy0+TGFuZygnY29weScpKSk7CgplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUgKCdjYXRlZ29yeWxpc3QudHBsJyk7CgovLyBFT0YKPz4=]]></data>
	</file>
	<file>
	  <filename>/function.admin_email_template_tab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojIEF1dGhvcjogUm9iZXJ0IENhbXBiZWxsIDxyb2JAdGVjaGNvbS5keW5kbnMub3JnPgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDoJLy93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgokc21hcnR5LT5hc3NpZ24oJ2Zvcm1zdGFydDEnLCR0aGlzLT5DcmVhdGVGb3JtU3RhcnQgKCRpZCwgJ3VwZGF0ZWVtYWlsdGVtcGxhdGUnKSk7CiRzbWFydHktPmFzc2lnbignZm9ybWVuZDEnLCR0aGlzLT5DcmVhdGVGb3JtRW5kKCkpOwokc21hcnR5LT5hc3NpZ24oJ25vdGlmeV9lbWFpbF90ZW1wbGF0ZScsCgkJJHRoaXMtPkNyZWF0ZVRleHRBcmVhIChmYWxzZSwgJGlkLCAkdGhpcy0+R2V0VGVtcGxhdGUgKCd1cGxvYWRfZW1haWx0ZW1wbGF0ZScpLAoJCQkJICAgICAgICd0ZW1wbGF0ZWNvbnRlbnQnLCAnJykpOyAKJHNtYXJ0eS0+YXNzaWduKCdzdWJtaXQxJywkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQgKCRpZCwgJ3N1Ym1pdGJ1dHRvbicsJHRoaXMtPkxhbmcgKCdzdWJtaXQnKSkpOyAKJHNtYXJ0eS0+YXNzaWduKCdkZWZhdWx0MScsJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0ICgkaWQsICdkZWZhdWx0YnV0dG9uJywgJHRoaXMtPkxhbmcgKCdkZWZhdWx0JyksICcnLCAnJywgCgkJCQkJCSAgICAgJHRoaXMtPkxhbmcoJ3Jlc3RvcmVkZWZhdWx0c2NvbmZpcm0nKSkpOwokc21hcnR5LT5hc3NpZ24oJ3Byb21wdF9ub3RpZnlfZW1haWxfdGVtcGxhdGUnLCR0aGlzLT5MYW5nKCdwcm9tcHRfbm90aWZ5X2VtYWlsX3RlbXBsYXRlJykpOwoKCgokc21hcnR5LT5hc3NpZ24oJ2Zvcm1zdGFydDInLCR0aGlzLT5DcmVhdGVGb3JtU3RhcnQoICRpZCwgJ3VwZGF0ZXNlbmRmaWxlZW1haWwnKSk7CiRzbWFydHktPmFzc2lnbigncHJvbXB0X3NlbmRmaWxlX2VtYWlsX3RlbXBsYXRlJywkdGhpcy0+TGFuZygncHJvbXB0X3NlbmRmaWxlX2VtYWlsX3RlbXBsYXRlJykpOwokc21hcnR5LT5hc3NpZ24oJ3N1Ym1pdDInLCR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCAoJGlkLCAnc3VibWl0YnV0dG9uJywkdGhpcy0+TGFuZyAoJ3N1Ym1pdCcpKSk7IAokc21hcnR5LT5hc3NpZ24oJ2RlZmF1bHQyJywkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQgKCRpZCwgJ2RlZmF1bHRidXR0b24nLCAkdGhpcy0+TGFuZyAoJ2RlZmF1bHQnKSwgJycsICcnLCAKCQkJCQkJICAgICAkdGhpcy0+TGFuZygncmVzdG9yZWRlZmF1bHRzY29uZmlybScpKSk7CiRzbWFydHktPmFzc2lnbignc2VuZGZpbGVfZW1haWxfdGVtcGxhdGUnLAoJCSR0aGlzLT5DcmVhdGVUZXh0QXJlYSAoZmFsc2UsICRpZCwgJHRoaXMtPkdldFRlbXBsYXRlKCd1cGxvYWRfc2VuZGZpbGVycHQnKSwKCQkJCSAgICAgICAndGVtcGxhdGVjb250ZW50JywnJykpOwokc21hcnR5LT5hc3NpZ24oJ2Zvcm1lbmQyJywkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsKCgplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ2FkbWluX2VtYWlsX3RlbXBsYXRlX3RhYi50cGwnKTsKCiMgRU9GCj8+]]></data>
	</file>
	<file>
	  <filename>/function.admin_fielddefstab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgPSBhbGxvdyB1c2VycyB0byB1cGxvYWQgc3R1ZmYsIGEgcHNldWRvIGZpbGUgbWFuYWdlciBtb2R1bGUKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6CS8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKaWYoICFpc3NldCgkZ0NtcykgKSBleGl0OwoKIwojIEluaXRpYWxpemUKIwokdHlwZXMgPSBhcnJheSgndGV4dGlucHV0Jz0+JHRoaXMtPkxhbmcoJ2ZpZWxkdHlwZV90ZXh0aW5wdXQnKSwKCSAgICAgICAndGV4dGFyZWEnPT4kdGhpcy0+TGFuZygnZmllbGR0eXBlX3RleHRhcmVhJyksCgkgICAgICAgJ2NoZWNrYm94Jz0+JHRoaXMtPkxhbmcoJ2ZpZWxkdHlwZV9jaGVja2JveCcpLAoJICAgICAgICdkcm9wZG93bic9PiR0aGlzLT5MYW5nKCdmaWVsZHR5cGVfZHJvcGRvd24nKSwKCSAgICAgICAnbXVsdGlzZWxlY3QnPT4kdGhpcy0+TGFuZygnZmllbGR0eXBlX211bHRpc2VsZWN0JykpOwoKIwojIEdldCB0aGUgZGF0YQojCiRxdWVyeSA9ICdTRUxFQ1QgKiBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2Fkc19maWVsZGRlZnMgT1JERVIgQlkgaW9yZGVyIEFTQyc7CiRkYXRhID0gJGRiLT5HZXRBcnJheSgkcXVlcnkpOwoKIwojIEdpdmUgRXZlcnl0aGluZyB0byBTbWFydHkKIwokc21hcnR5LT5hc3NpZ24oJ2ZpZWxkdHlwZXMnLCR0eXBlcyk7CmlmKCBpc19hcnJheSgkZGF0YSkgJiYgY291bnQoJGRhdGEpID4gMCApCiAgewogICAgZm9yKCAkaSA9IDA7ICRpIDwgY291bnQoJGRhdGEpOyAkaSsrICkKICAgICAgewoJJGVkaXRfdXJsID0gJHRoaXMtPkNyZWF0ZVVSTCgkaWQsJ2FkbWluX2FkZF9maWVsZCcsJHJldHVybmlkLAoJCQkJICAgICBhcnJheSgnZmlkJz0+JGRhdGFbJGldWydpZCddKSk7CgkkZGVsZXRlX3VybCA9ICR0aGlzLT5DcmVhdGVVUkwoJGlkLCdhZG1pbl9kZWxfZmllbGQnLCRyZXR1cm5pZCwKCQkJCSAgICAgYXJyYXkoJ2ZpZCc9PiRkYXRhWyRpXVsnaWQnXSkpOwoJaWYoICRpID4gMCApCgkgIHsKCSAgICAkbW92ZXVwX3VybCA9ICR0aGlzLT5DcmVhdGVVUkwoJGlkLCdhZG1pbl9vcmRlcl9maWVsZCcsJHJldHVybmlkLAoJCQkJCSAgIGFycmF5KCdmaWQnPT4kZGF0YVskaV1bJ2lkJ10sJ2Rpcic9Pid1cCcsJ2N1cic9PiRkYXRhWyRpXVsnaW9yZGVyJ10pKTsKCSAgICAkZGF0YVskaV1bJ21vdmV1cF91cmwnXSA9ICRtb3ZldXBfdXJsOwoJICB9CglpZiggJGkgPCAoY291bnQoJGRhdGEpIC0gMSkgKQoJICB7CgkgICAgJG1vdmVkb3duX3VybCA9ICR0aGlzLT5DcmVhdGVVUkwoJGlkLCdhZG1pbl9vcmRlcl9maWVsZCcsJHJldHVybmlkLAoJCQkJCSAgICAgYXJyYXkoJ2ZpZCc9PiRkYXRhWyRpXVsnaWQnXSwnZGlyJz0+J2Rvd24nLCdjdXInPT4kZGF0YVskaV1bJ2lvcmRlciddKSk7CgkgICAgJGRhdGFbJGldWydtb3ZlZG93bl91cmwnXSA9ICRtb3ZlZG93bl91cmw7CgkgIH0KCSRkYXRhWyRpXVsnZWRpdF91cmwnXSA9ICRlZGl0X3VybDsKCSRkYXRhWyRpXVsnZGVsZXRlX3VybCddID0gJGRlbGV0ZV91cmw7CiAgICAgIH0KICAgICRzbWFydHktPmFzc2lnbignZmllbGRzJywkZGF0YSk7CiAgfQokc21hcnR5LT5hc3NpZ24oJ2FkZGZpZWxkX2xpbmsnLAoJCSR0aGlzLT5DcmVhdGVMaW5rKCRpZCwnYWRtaW5fYWRkX2ZpZWxkJywkcmV0dXJuaWQsCgkJCQkgICRnQ21zLT52YXJpYWJsZXNbJ2FkbWludGhlbWUnXS0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vbmV3b2JqZWN0LmdpZicsCgkJCQkJCQkJCSAgICAgICAkdGhpcy0+TGFuZygncHJvbXB0X2FkZF9maWVsZCcpLCcnLCcnLCdzeXN0ZW1pY29uJyksCgkJCQkgIGFycmF5KCksICcnLCBmYWxzZSwgZmFsc2UsICcnKS4nICcuCgkJJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCdhZG1pbl9hZGRfZmllbGQnLCRyZXR1cm5pZCwKCQkJCSAgJHRoaXMtPkxhbmcoJ3Byb21wdF9hZGRfZmllbGQnKSwKCQkJCSAgYXJyYXkoKSwgJycsIGZhbHNlLCBmYWxzZSwgJ2NsYXNzPSJwYWdlb3B0aW9ucyInKSk7CgojCiMgUHJvY2VzcyBvdXRwdXQKIwplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ2FkbWluX2ZpZWxkc190YWIudHBsJyk7CgojCiMgRU9GCiMKPz4=]]></data>
	</file>
	<file>
	  <filename>/function.admin_filestab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgPSBhbGxvdyB1c2VycyB0byB1cGxvYWQgc3R1ZmYsIGEgcHNldWRvIGZpbGUgbWFuYWdlciBtb2R1bGUKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6CS8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKaWYgKCEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uICgnTWFuYWdlIFVwbG9hZHMnKSAmJiAhJHRoaXMtPkNoZWNrUGVybWlzc2lvbignVXBsb2FkIEZpbGVzIHRvIFVwbG9hZHMnKSkKICB7CiAgICByZXR1cm47CiAgfQoKZ2xvYmFsICRnQ21zOwokZGIgPSYgJHRoaXMtPkdldERiKCk7CgovLyBnZXQgdGhlIGN1cnJlbnQgY2F0ZWdvcnkgZm9yIHRoZSBmaWx0ZXIKaWYgKGlzc2V0ICgkcGFyYW1zWydzdWJtaXRjYXRlZ29yeSddKSkKICB7CiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgnY3VycmVudF9jYXRlZ29yeScsCgkJCSAoaXNzZXQgKCRwYXJhbXNbJ2lucHV0X2NhdGVnb3J5J10pID8gJHBhcmFtc1snaW5wdXRfY2F0ZWdvcnknXSA6CgkJCSAgJycpKTsKICB9CiRjdXJjYXRlZ29yeSA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdjdXJyZW50X2NhdGVnb3J5JywnJyk7CiAgICAgICAgCi8vIGdldCB0aGUgY2F0ZWdvcmllcyBmb3IgdGhlIGZpbHRlcgokY2F0ZWdvcnlsaXN0ID0gYXJyYXkgKCk7CiRxdWVyeSA9CiAgIlNFTEVDVCAqIEZST00gIi5jbXNfZGJfcHJlZml4ICgpLgogICJtb2R1bGVfdXBsb2Fkc19jYXRlZ29yaWVzIE9SREVSIEJZIHVwbG9hZF9jYXRlZ29yeV9uYW1lIEFTQyI7CiRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSAoJHF1ZXJ5KTsKaWYgKCEkZGJyZXN1bHQpCiAgewogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgnZXJyb3InLCAxKTsKICAgICR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ21lc3NhZ2UnLCAkdGhpcy0+TGFuZyAoJ2Vycm9yX25vY2F0ZWdvcmllcycpKTsKICB9CiBlbHNlCiAgIHsKICAgICB3aGlsZSAoJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3cgKCkpCiAgICAgICB7CgkgaWYoICRjdXJjYXRlZ29yeSA9PSAnJyApIHsKCSAgICRjdXJjYXRlZ29yeSA9ICRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9pZCddOwoJIH0KCSAkY2F0ZWdvcnlsaXN0WyRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9uYW1lJ11dID0KCSAgICRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9pZCddOwogICAgICAgfQogICB9CgkgIAovLyBpZiB0aGVyZSBhcmUgbm8gY2F0ZWdvcmllcywgcHV0IGEgbWVzc2FnZSBvdXQsIGFuZAovLyBub3RoaW5nIGVsc2UKaWYoICFjb3VudCggJGNhdGVnb3J5bGlzdCApICkgCiAgewogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdlcnJvcicsMSk7CiAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ25vZm9ybScsMSk7CiAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ21lc3NhZ2UnLCR0aGlzLT5MYW5nKCdlcnJvcl9ub2NhdGVnb3JpZXMnKSk7CiAgICBlY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ3VwbG9hZGxpc3QudHBsJyk7CiAgICByZXR1cm47CiAgfQoKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdlcnJvcicsIiIpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ25vZm9ybScsIiIpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ21lc3NhZ2UnLCIiKTsKCi8vIHNldHVwIHRoZSBmb3JtIHBhcnQgb2YgdGhlIHRlbXBsYXRlCiR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ2xlZ2VuZF91cGxvYWRmb3JtJywkdGhpcy0+TGFuZygnbGVnZW5kX3VwbG9hZGZvcm0nKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ3N0YXJ0Zm9ybScsCgkJICAgICAgICR0aGlzLT5DcmVhdGVGb3JtU3RhcnQgKCRpZCwgJ2RlZmF1bHRhZG1pbicsICRyZXR1cm5pZCwgJ3Bvc3QnLCAnbXVsdGlwYXJ0L2Zvcm0tZGF0YScpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgnY2F0ZWdvcnknLCAkdGhpcy0+TGFuZyAoJ2NhdGVnb3J5JykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24gKCdpbnB1dF9jYXRlZ29yeScsCgkJICAgICAgICR0aGlzLT5DcmVhdGVJbnB1dERyb3BEb3duICgkaWQsICJpbnB1dF9jYXRlZ29yeSIsICRjYXRlZ29yeWxpc3QsIC0xLAoJCQkJCQkgICAkY3VyY2F0ZWdvcnkpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgnaW5wdXRfc2VsZWN0JywKCQkgICAgICAgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0ICgkaWQsICdzdWJtaXRjYXRlZ29yeScsCgkJCQkJCSAkdGhpcy0+TGFuZygnc2VsZWN0Y2F0ZWdvcnknKSkpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24gKCdpbnB1dF9oaWRkZW4nLAoJCSAgICAgICAkdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4gKCRpZCwgJ2N1cmNhdGVnb3J5JywKCQkJCQkJICRjdXJjYXRlZ29yeSkpOwoKLy8gJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfYnJvd3NlJywgJHRoaXMtPkxhbmcoJ3VwbG9hZCcpKTsKLy8gJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCAnaW5wdXRfYnJvd3NlJywKLy8gCQkgICAgICAgJHRoaXMtPkNyZWF0ZUZpbGVVcGxvYWRJbnB1dCAoJGlkLCdpbnB1dF9icm93c2UnLCcnLDUwKSk7Ci8vICR0aGlzLT5zbWFydHktPmFzc2lnbigncHJvbXB0X3JlcGxhY2UnLCAkdGhpcy0+TGFuZygncHJvbXB0X3JlcGxhY2UnKSk7Ci8vICR0aGlzLT5zbWFydHktPmFzc2lnbignaW5wdXRfcmVwbGFjZScsIAovLyAJCSAgICAgICR0aGlzLT5DcmVhdGVJbnB1dENoZWNrYm94KCAkaWQsICdpbnB1dF9yZXBsYWNlJywgMSApKTsKLy8gJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdpbmZvX3JlcGxhY2UnLAovLyAJCSAgICAgICR0aGlzLT5MYW5nKCdpbmZvX3JlcGxhY2UnKSk7Ci8vICR0aGlzLT5zbWFydHktPmFzc2lnbigncHJvbXB0X3RodW1ibmFpbCcsICR0aGlzLT5MYW5nKCd0aHVtYm5haWwnKSk7Ci8vICR0aGlzLT5zbWFydHktPmFzc2lnbiggJ2lucHV0X3RodW1ibmFpbCcsCi8vIAkJICAgICAgICR0aGlzLT5DcmVhdGVGaWxlVXBsb2FkSW5wdXQgKCRpZCwnaW5wdXRfdGh1bWJuYWlsJywnJyw1MCkpOwoJICAKLy8gJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgncHJvbXB0X2Rlc3RuYW1lJywKLy8gCQkgICAgICAgJHRoaXMtPkxhbmcgKCdkZXN0bmFtZScpKTsKLy8gJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgnaW5wdXRfZGVzdG5hbWUnLAovLyAJCSAgICAgICAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0ICgkaWQsICdpbnB1dF9kZXN0bmFtZScsCi8vIAkJCQkJICAgICAgICcnLCA0MCwgMjU1KSk7Ci8vICR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ2luZm9fZGVzdG5hbWUnLAovLyAJCSAgICAgICAkdGhpcy0+TGFuZygnaW5mb19kZXN0bmFtZScpKTsKCSAgCi8vICR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ3Byb21wdF9zdW1tYXJ5JywKLy8gCQkgICAgICAgJHRoaXMtPkxhbmcgKCdzdW1tYXJ5JykpOwovLyAkdGhpcy0+c21hcnR5LT5hc3NpZ24gKCdpbnB1dF9zdW1tYXJ5JywKLy8gCQkgICAgICAgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCAoJGlkLCAnaW5wdXRfc3VtbWFyeScsCi8vIAkJCQkJICAgICAgICcnLCA4MCwgMjU1KSk7Ci8vICR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ2luZm9fc3VtbWFyeScsCi8vIAkJICAgICAgICR0aGlzLT5MYW5nKCdpbmZvX3N1bW1hcnknKSk7Ci8vICR0aGlzLT5zbWFydHktPmFzc2lnbigncHJvbXB0X2F1dGhvcicsJHRoaXMtPkxhbmcoJ2F1dGhvcicpKTsKLy8gJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCAnaW5wdXRfYXV0aG9yJywKLy8gCQkgICAgICAgJHRoaXMtPmNyZWF0ZUlucHV0VGV4dCggJGlkLCAnaW5wdXRfYXV0aG9yJywgJF9TRVNTSU9OWyJjbXNfYWRtaW5fdXNlcm5hbWUiXSwKLy8gCQkJCQkgICAgICAgMjAsIDI1NSkpOwoJICAKLy8gJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCAnaW5wdXRfc3VibWl0JywKLy8gCQkgICAgICAgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCAkaWQsICdzdWJtaXR1cGxvYWQnLCAkdGhpcy0+TGFuZygndXBsb2FkJykpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgnZW5kZm9ybScsICR0aGlzLT5DcmVhdGVGb3JtRW5kICgpKTsKCSAgCiRkYnJlc3VsdCA9ICcnOwokcm93YXJyYXkgPSBhcnJheSAoKTsKaWYgKCRjdXJjYXRlZ29yeSA9PSAnJykKICB7CiAgICAkcXVlcnkgPSAiU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXggKCkuCiAgICAgICJtb2R1bGVfdXBsb2FkcyBPUkRFUiBCWSB1cGxvYWRfZGF0ZSI7CiAgICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUgKCRxdWVyeSk7CiAgfQogZWxzZQogICB7CiAgICAgJHF1ZXJ5ID0KICAgICAgICJTRUxFQ1QgKiBGUk9NICIuY21zX2RiX3ByZWZpeCAoKS4KICAgICAgICJtb2R1bGVfdXBsb2FkcyBXSEVSRSB1cGxvYWRfY2F0ZWdvcnlfaWQgPSA/IE9SREVSIEJZIHVwbG9hZF9kYXRlIjsKICAgICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUgKCRxdWVyeSwgYXJyYXkgKCRjdXJjYXRlZ29yeSkpOwogICB9CgkgIAovLyBub3cgc2V0dXAgdGhlIHJlc3QgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiRyb3djbGFzcyA9ICdyb3cxJzsKCSAgCmlmICgkZGJyZXN1bHQpCiAgewogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdpZHRleHQnLCR0aGlzLT5MYW5nKCduYW1lJykpOwogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0aXRsZXRleHQnLCR0aGlzLT5MYW5nKCduYW1lJykpOwogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzdW1tYXJ5dGV4dCcsJHRoaXMtPkxhbmcoJ3N1bW1hcnknKSk7CiAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2Rlc2N0ZXh0JywkdGhpcy0+TGFuZygnZGVzY3JpcHRpb24nKSk7CiAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3NpemV0ZXh0JywkdGhpcy0+TGFuZygnc2l6ZWtiJykpOwogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdhdXRob3J0ZXh0JywkdGhpcy0+TGFuZygnYXV0aG9yJykpOwogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdpcHRleHQnLCR0aGlzLT5MYW5nKCdpcF9hZGRyZXNzJykpOwogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdkbHRleHQnLCR0aGlzLT5MYW5nKCdkb3dubG9hZHMnKSk7CiAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3Bvc3RkYXRldGV4dCcsJHRoaXMtPkxhbmcoJ2RhdGUnKSk7CiAgICB3aGlsZSAoJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3cgKCkpCiAgICAgIHsKCSRvbmVyb3cgPSBuZXcgc3RkQ2xhc3MgKCk7Cgkkb25lcm93LT5pZCA9ICRyb3dbJ3VwbG9hZF9pZCddOwoJJHR5cGUgPSAkdGhpcy0+X0dldEZpbGVUeXBlKCAkcm93Wyd1cGxvYWRfbmFtZSddICk7CgkkaW1ncGF0aCA9ICcuLi9tb2R1bGVzLycuYmFzZW5hbWUoZGlybmFtZShfX0ZJTEVfXykpLicvaW1hZ2VzLyc7CglpZiggJHR5cGUgIT0gZmFsc2UgKQoJICB7CgkgICAgJG9uZXJvdy0+aWNvbiA9ICRpbWdwYXRoLiR0eXBlWydpbWFnZSddOwoJICB9CgllbHNlCgkgIHsKCSAgICAkb25lcm93LT5pY29uID0gJGltZ3BhdGguJ3Vua25vd24ucG5nJzsKCSAgfQoJJG9uZXJvdy0+bmFtZSA9ICRyb3dbJ3VwbG9hZF9uYW1lJ107Cgkkb25lcm93LT5zaXplID0gaW50dmFsKCRyb3dbJ3VwbG9hZF9zaXplJ10gLyAxMDI0LjAgKyAwLjUpOwoJJG9uZXJvdy0+YXV0aG9yID0gJHJvd1sndXBsb2FkX2F1dGhvciddOwoJJG9uZXJvdy0+aXAgPSAkcm93Wyd1cGxvYWRfaXAnXTsKCSRvbmVyb3ctPnN1bW1hcnkgPSAkcm93Wyd1cGxvYWRfc3VtbWFyeSddOwoJJG9uZXJvdy0+ZGVzY3JpcHRpb24gPSAkcm93Wyd1cGxvYWRfZGVzY3JpcHRpb24nXTsKCSRvbmVyb3ctPmRhdGUgPSAkcm93Wyd1cGxvYWRfZGF0ZSddOwoJJG9uZXJvdy0+cm93Y2xhc3MgPSAkcm93Y2xhc3M7CgkJCgkvLyBob3cgbWFueSB0aW1lcyBoYXMgdGhpcyBpdGVtIGJlZW4gZG93bmxvYWRlZAoJJHF1ZXJ5ID0gIlNFTEVDVCBDT1VOVChkb3dubG9hZF9pZCkgYXMgY291bnQgRlJPTSAiLgoJICBjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX2Rvd25sb2FkcyBXSEVSRSBmaWxlX2lkID0gPyI7CgkkZGJyZXN1bHQyID0gJGRiLT5FeGVjdXRlKCAkcXVlcnksIGFycmF5KCAkcm93Wyd1cGxvYWRfaWQnXSApICk7Cgkkcm93MiA9ICRkYnJlc3VsdDItPkZldGNoUm93KCk7Cgkkb25lcm93LT5kb3dubG9hZHMgPSAwOwoJaWYoICRyb3cyICkgewoJICAkb25lcm93LT5kb3dubG9hZHMgPSAkcm93MlsnY291bnQnXTsKCX0KCQkKCSRvbmVyb3ctPmVkaXR1cmwgPQoJICAkdGhpcy0+Q3JlYXRlTGluayAoJGlkLCAnZWRpdHVwbG9hZCcsICRyZXR1cm5pZCwgJycsIAoJCQkgICAgIGFycmF5ICgndXBsb2FkX2lkJyA9PiAkcm93Wyd1cGxvYWRfaWQnXSwKCQkJCSAgICAnY2F0ZWdvcnlfaWQnID0+ICRjdXJjYXRlZ29yeSksCgkJCSAgICAgJycsIHRydWUgKTsKCgkkb25lcm93LT5lZGl0bGluayA9CgkgICR0aGlzLT5DcmVhdGVMaW5rICgkaWQsICdlZGl0dXBsb2FkJywgJHJldHVybmlkLAoJCQkgICAgICRnQ21zLT52YXJpYWJsZXNbJ2FkbWludGhlbWUnXS0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vZWRpdC5naWYnLAoJCQkJCQkJCQkgICR0aGlzLT5MYW5nICgnZWRpdCcpLCAnJywgJycsICdzeXN0ZW1pY29uJyksCgkJCSAgICAgYXJyYXkgKCd1cGxvYWRfaWQnID0+ICRyb3dbJ3VwbG9hZF9pZCddLAoJCQkJICAgICdjYXRlZ29yeV9pZCcgPT4gJGN1cmNhdGVnb3J5KSk7CgoJJG9uZXJvdy0+dGltZWxpbWl0ZWRfbGluayA9CgkgICR0aGlzLT5DcmVhdGVJbWFnZUxpbmsoJGlkLCdhZG1pbl9tYW5hZ2VfdGltZWxpbWl0ZWQnLCRyZXR1cm5pZCwKCQkJCSAkdGhpcy0+TGFuZygnbWFuYWdlX3RpbWVsaW1pdGVkJyksJ2Nsb2NrX2xpbmsucG5nJywKCQkJCSBhcnJheSgndXBsb2FkX2lkJz0+JHJvd1sndXBsb2FkX2lkJ10pKTsKCQkKCSRvbmVyb3ctPmRlbGV0ZWxpbmsgPSAkdGhpcy0+Q3JlYXRlTGluayAoJGlkLCdkb19kZWxldGV1cGxvYWQnLCRyZXR1cm5pZCwKCQkJCQkJICRnQ21zLT52YXJpYWJsZXNbJ2FkbWludGhlbWUnXS0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vZGVsZXRlLmdpZicsCgkJCQkJCQkJCQkJICAgICAgJHRoaXMtPkxhbmcgKCdkZWxldGUnKSwgJycsICcnLCAnc3lzdGVtaWNvbicpLAoJCQkJCQkgYXJyYXkgKCd1cGxvYWRfaWQnID0+ICRyb3dbJ3VwbG9hZF9pZCddLAoJCQkJCQkJJ2NhdGVnb3J5X2lkJyA9PiAkY3VyY2F0ZWdvcnkpLAoJCQkJCQkgJHRoaXMtPkxhbmcgKCdhcmV5b3VzdXJlJykpOwoJYXJyYXlfcHVzaCAoJHJvd2FycmF5LCAkb25lcm93KTsKCSgkcm93Y2xhc3MgPT0gInJvdzEiID8gJHJvd2NsYXNzID0gInJvdzIiIDogJHJvd2NsYXNzID0gInJvdzEiKTsKICAgICAgfQogIH0KCiR0aGlzLT5zbWFydHktPmFzc2lnbignYWRkZmlsZV9saW5rJywkdGhpcy0+Q3JlYXRlSW1hZ2VMaW5rKCRpZCwnYWRtaW5fdXBsb2FkJywkcmV0dXJuaWQsCgkJCQkJCSAgICAgICAkdGhpcy0+TGFuZygndXBsb2FkX2ZpbGUnKSwnaWNvbnMvc3lzdGVtL25ld29iamVjdC5naWYnLAoJCQkJCQkJICAgIGFycmF5KCdjYXRlZ29yeSc9PiRjdXJjYXRlZ29yeSksJycsJycsZmFsc2UpKTsKCiR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ2l0ZW1zJywgJHJvd2FycmF5KTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgnaXRlbWNvdW50JywgY291bnQgKCRyb3dhcnJheSkpOwplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUgKCd1cGxvYWRsaXN0LnRwbCcpOwoKLy8gRU9GCj8+]]></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/ICdyb3cyJyA6ICdyb3cxJzsKICAgICRlbnRyaWVzW10gPSAkb2JqOwogIH0KCi8vIHRoZSB1bmtub3duIHJvdwokb2JqID0gbmV3IFN0ZENsYXNzKCk7CiRvYmotPm5hbWUgPSAkdGhpcy0+TGFuZygnbmFtZV91bmtub3duJyk7CiRvYmotPmRlc2NyaXB0aW9uID0gJzxlbT4nLiR0aGlzLT5MYW5nKCdkZXNjcmlwdGlvbl91bmtub3duJykuJzwvZW0+JzsKJG9iai0+cm93Y2xhc3MgPSAncm93Myc7CiRvYmotPmljb24gPSAnPGltZyBzcmM9Ii4uL21vZHVsZXMvJy5iYXNlbmFtZShkaXJuYW1lKF9fRklMRV9fKSkuJy9pbWFnZXMvdW5rbm93bi5wbmciIGFsdD0iJy4kb2JqLT5uYW1lLiciLz4nOwokZW50cmllc1tdID0gJG9iajsKJHNtYXJ0eS0+YXNzaWduKCdpdGVtcycsJGVudHJpZXMpOwokc21hcnR5LT5hc3NpZ24oJ2l0ZW1jb3VudCcsY291bnQoJGVudHJpZXMpKTsKCiRzbWFydHktPmFzc2lnbignYWRkbGluaycsCgkJJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCdhZGRmaWxldHlwZScsJHJldHVybmlkLCRuZXdPYmplY3QsCgkJCQkgIGFycmF5KCdhY3RpdmVfdGFiJz0+J2ZpbGVfdHlwZXMnKSkuCgkJJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCdhZGRmaWxldHlwZScsJHJldHVybmlkLCR0aGlzLT5MYW5nKCdhZGRmaWxldHlwZScpLAoJCQkJICBhcnJheSgnYWN0aXZlX3RhYic9PidmaWxlX3R5cGVzJykpKTsKCiRzbWFydHktPmFzc2lnbignc3RhcnRmb3JtJywKCQkkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0KCRpZCwndXBsb2FkaWNvbicsJHJldHVybmlkLCdwb3N0JywKCQkJCSAgICAgICAnbXVsdGlwYXJ0L2Zvcm0tZGF0YScsZmFsc2UsJycsCgkJCQkgICAgICAgYXJyYXkoJ2FjdGl2ZV90YWInPT4nZmlsZV90eXBlcycpKSk7CiRzbWFydHktPmFzc2lnbignZW5kZm9ybScsCgkJJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7CiRzbWFydHktPmFzc2lnbigncHJvbXB0X3VwbG9hZF9pY29uJywKCQkkdGhpcy0+TGFuZygncHJvbXB0X3VwbG9hZF9pY29uJykpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0X3VwbG9hZF9pY29uJywKCQkkdGhpcy0+Q3JlYXRlRmlsZVVwbG9hZElucHV0KCRpZCwnaW5wdXRfdXBsb2FkX2ljb24nLCcnLDUwKSk7CiRzbWFydHktPmFzc2lnbignc3VibWl0JywKCQkkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCdzdWJtaXQnLCR0aGlzLT5MYW5nKCdzdWJtaXQnKSkpOwplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ2ZpbGV0eXBlcy50cGwnKTsKCi8vIEVPRgo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/function.admin_prefstab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIgbW9kdWxlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOgkvL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCmlmICghJHRoaXMtPkNoZWNrUGVybWlzc2lvbiAoJ01vZGlmeSBTaXRlIFByZWZlcmVuY2VzJykpCiAgewogICAgcmV0dXJuOwogIH0KCi8vIENyZWF0ZUZvcm1TdGFydCBzZXRzIHVwIGEgcHJvcGVyIGZvcm0gdGFnIHRoYXQgd2lsbCBjYXVzZSB0aGUgc3VibWl0IHRvCi8vIHJldHVybiBjb250cm9sIHRvIHRoaXMgbW9kdWxlIGZvciBwcm9jZXNzaW5nLgokdGhpcy0+c21hcnR5LT5hc3NpZ24gKCdzdGFydGZvcm0nLAoJCSAgICAgICAkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0ICgkaWQsCgkJCQkJICAgICAgICdzYXZlX2FkbWluX3ByZWZzJywKCQkJCQkgICAgICAgJHJldHVybmlkKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ2VuZGZvcm0nLCAkdGhpcy0+Q3JlYXRlRm9ybUVuZCAoKSk7CgokdGhpcy0+c21hcnR5LT5hc3NpZ24gKCdzdWJtaXQnLAoJCSAgICAgICAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQgKCRpZCwgJ3N1Ym1pdCcsCgkJCQkJCSAkdGhpcy0+TGFuZygnc3VibWl0JyksICcnLCcnLAoJCQkJCQkgJHRoaXMtPkxhbmcoJ2NvbmZpcm1fcHJlZmVyZW5jZXMnKSkpOyAgICAKICAgIAovLyBpdCdzIGdvb2QgcHJhY3RpY2UgdG8gc2V0IGV2ZW4gc3RhdGljIHRpdGxlcyB1c2luZyBzbWFydHksIAovLyBzbyBsb2NhbGl6YXRpb24gaXMgZWFzaWVyLgokc21hcnR5LT5hc3NpZ24oJ2F1dG93YXRlcm1hcmsnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdhdXRvd2F0ZXJtYXJrJywwKSk7CgokdGhpcy0+c21hcnR5LT5hc3NpZ24gKCd0aXRsZV92YWxpZF91cGxvYWRleHRlbnNpb25zJywKCQkgICAgICAgJHRoaXMtPkxhbmcgKCd0aXRsZV92YWxpZF91cGxvYWRleHRlbnNpb25zJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24gKCd0aXRsZV9zdWJuZXRfZXhjbHVzaW9ucycsCgkJICAgICAgICR0aGlzLT5MYW5nICgndGl0bGVfc3VibmV0X2V4Y2x1c2lvbnMnKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ3RpdGxlX3NlY3Rpb24nLAoJCSAgICAgICAkdGhpcy0+TGFuZyAoJ3RpdGxlX21vZF9wcmVmcycpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgndGl0bGVfZHVtbXlfaW5kZXhfaHRtbCcsCgkJICAgICAgICR0aGlzLT5MYW5nICgndGl0bGVfZHVtbXlfaW5kZXhfaHRtbCcpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgndGl0bGVfZW1haWxfb25fdXBsb2FkJywKCQkgICAgICAgJHRoaXMtPkxhbmcgKCd0aXRsZV9lbWFpbF9vbl91cGxvYWQnKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ3RpdGxlX3JlZGlyZWN0X29uX3VwbG9hZCcsCgkJICAgICAgICR0aGlzLT5MYW5nKCd0aXRsZV9yZWRpcmVjdG9udXBsb2FkJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24gKCd0aXRsZV9hdXRvdGh1bWJuYWlsX2V4dGVuc2lvbnMnLAoJCSAgICAgICAkdGhpcy0+TGFuZygndGl0bGVfYXV0b3RodW1ibmFpbF9leHRlbnNpb25zJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24gKCd0aXRsZV9hdXRvdGh1bWJuYWlsX3NpemUnLAoJCSAgICAgICAkdGhpcy0+TGFuZygndGl0bGVfYXV0b3RodW1ibmFpbF9zaXplJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24gKCd0aXRsZV9kb3dubG9hZF9jaHVua3NpemUnLAoJCSAgICAgICAkdGhpcy0+TGFuZygndGl0bGVfZG93bmxvYWRfY2h1bmtzaXplJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24gKCdpbmZvX2Rvd25sb2FkX2NodW5rc2l6ZScsCgkJICAgICAgICR0aGlzLT5MYW5nKCdpbmZvX2Rvd25sb2FkX2NodW5rc2l6ZScpKTsKJHNtYXJ0eS0+YXNzaWduKCd0aXRsZV9hbGxvd19kZWxldGUnLCR0aGlzLT5MYW5nKCd0aXRsZV9hbGxvd19kZWxldGUnKSk7CgokY29udGVudG9wcyA9JiAkZ0Ntcy0+R2V0Q29udGVudE9wZXJhdGlvbnMoKTsKJHNtYXJ0eS0+YXNzaWduKCd0aXRsZV9zZW5kZmlsZXBhZ2UnLCR0aGlzLT5MYW5nKCd0aXRsZV9zZW5kZmlsZXBhZ2UnKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfc2VuZGZpbGVwYWdlJywKCQkkY29udGVudG9wcy0+Q3JlYXRlSGllcmFyY2h5RHJvcGRvd24oJycsJHRoaXMtPkdldFByZWZlcmVuY2UoJ2RlZmF1bHRfc2VuZGZpbGVwYWdlJywtMSksCgkJCQkJCSAgICAgJGlkLidkZWZhdWx0X3NlbmRmaWxlcGFnZScsMSkpOwoKJHNtYXJ0eS0+YXNzaWduKCd0aXRsZV9yZWRpcmVjdF9vbl9zZW5kZmlsZScsJHRoaXMtPkxhbmcoJ3RpdGxlX3JlZGlyZWN0X29uX3NlbmRmaWxlJykpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0X3JlZGlyZWN0X29uX3NlbmRmaWxlJywKCQkkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCAkaWQsICdyZWRpcmVjdF9vbl9zZW5kZmlsZScsCgkJCQkJJHRoaXMtPkdldFByZWZlcmVuY2UoJ3JlZGlyZWN0X29uX3NlbmRmaWxlJywnJyksMzAsODApKTsKCi8vIHlvdSdsbCBvZnRlbiB3YW50IHRvIGRvIHRoaW5ncyBsaWtlIHRoaXMgdG8gcHJvdmlkZSBmZWVkYmFjazoKJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgnaW5wdXRfdmFsaWRfdXBsb2FkZXh0ZW5zaW9ucycsCgkJICAgICAgICR0aGlzLT5DcmVhdGVJbnB1dFRleHQgKCRpZCwgJ3ZhbGlkX3VwbG9hZGV4dGVuc2lvbnMnLAoJCQkJCSAgICAgICAkdGhpcy0+R2V0UHJlZmVyZW5jZSAoJ3ZhbGlkX3VwbG9hZGV4dGVuc2lvbnMnLAoJCQkJCQkJCSAgICAgInppcCxneix0YXIiKSwgJzMwJywgJzI1NScpKTsKCiR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ2lucHV0X3N1Ym5ldF9leGNsdXNpb25zJywKCQkgICAgICAgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCggJGlkLCAnc3VibmV0X2V4Y2x1c2lvbnMnLAoJCQkJCSAgICAgICAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnc3VibmV0X2V4Y2x1c2lvbnMnLCIiKSw1MCwyNTUpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgnaW5wdXRfZHVtbXlfaW5kZXhfaHRtbCcsCgkJICAgICAgICR0aGlzLT5DcmVhdGVJbnB1dENoZWNrYm94KCAkaWQsICdpbnB1dF9kdW1teV9pbmRleF9odG1sJywKCQkJCQkJICAgMSwgJHRoaXMtPkdldFByZWZlcmVuY2UoJ2NyZWF0ZV9kdW1teV9pbmRleF9odG1sJykpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgnaW5wdXRfZW1haWxfb25fdXBsb2FkJywKCQkgICAgICAgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCggJGlkLCAnZW1haWxfb25fdXBsb2FkJywKCQkJCQkgICAgICAgJHRoaXMtPkdldFByZWZlcmVuY2UoJ3NlbmRfdXBsb2FkX25vdGlmaWNhdGlvbnNfdG8nKSwKCQkJCQkgICAgICAgNDAsIDI1NSApKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgnaW5wdXRfcmVkaXJlY3Rfb25fdXBsb2FkJywKCQkgICAgICAgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCggJGlkLCAncmVkaXJlY3Rfb25fdXBsb2FkJywKCQkJCQkgICAgICAgJHRoaXMtPkdldFByZWZlcmVuY2UoJ3JlZGlyZWN0X29uX3VwbG9hZCcsJycpLDMwLDgwKSk7CgokdGhpcy0+c21hcnR5LT5hc3NpZ24gKCdpbnB1dF9hdXRvdGh1bWJuYWlsX2V4dGVuc2lvbnMnLAoJCSAgICAgICAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCAkaWQsICdhdXRvdGh1bWJuYWlsX2V4dGVuc2lvbnMnLAoJCQkJCSAgICAgICAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnYXV0b3RodW1ibmFpbF9leHRlbnNpb25zJywnJyksNDApKTsKCiR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ2lucHV0X2F1dG90aHVtYm5haWxfc2l6ZScsCgkJICAgICAgICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoICRpZCwgJ2F1dG90aHVtYm5haWxfc2l6ZScsCgkJCQkJICAgICAgICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdhdXRvdGh1bWJuYWlsX3NpemUnLCcnKSwzKSk7Cgokc21hcnR5LT5hc3NpZ24oJ2lucHV0X2FsbG93X2RlbGV0ZScsCgkJJHRoaXMtPkNyZWF0ZUlucHV0Y2hlY2tib3goJGlkLCdhbGxvd19kZWxldGUnLDEsCgkJCQkJICAgJHRoaXMtPkdldFByZWZlcmVuY2UoJ2FsbG93X2RlbGV0ZScsMCkpKTsKCiRzbWFydHktPmFzc2lnbignaW5wdXRfZG93bmxvYWRfY2h1bmtzaXplJywKCQkkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwnZG93bmxvYWRfY2h1bmtzaXplJywKCQkJCSAgICAgICAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZG93bmxvYWRfY2h1bmtzaXplJyw4KSw1LDUpKTsKCiRzbWFydHktPmFzc2lnbigndGltZWxpbWl0ZWRfaG91cnMnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCd0aW1lbGltaXRlZF9ob3VycycsNzIpKTsKJHNtYXJ0eS0+YXNzaWduKCd0aW1lbGltaXRlZF9kb3dubG9hZHMnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCd0aW1lbGltaXRlZF9kb3dubG9hZHMnLDApKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9nZXRmaWxlX3Jlc3VsdHBhZ2UnLAoJCSRjb250ZW50b3BzLT5DcmVhdGVIaWVyYXJjaHlEcm9wZG93bignJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZ2V0ZmlsZV9yZXN1bHRwYWdlJyksCgkJCQkJCSAgICAgJGlkLidnZXRmaWxlX3Jlc3VsdHBhZ2UnLDEpKTsKJHNtYXJ0eS0+YXNzaWduKCd0aW1lbGltaXRlZF9hdXRvZGVsZXRlJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgndGltZWxpbWl0ZWRfYXV0b2RlbGV0ZScsMCkpOwokc21hcnR5LT5hc3NpZ24oJ3RpbWVsaW1pdGVkX3N1YmplY3QnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCd0aW1lbGltaXRlZF9zdWJqZWN0JywKCQkJCQkJCSAgICR0aGlzLT5MYW5nKCdkZmx0X3RpbWVsaW1pdGVkX3N1YmplY3QnKSkpOwoKJHNtYXJ0eS0+YXNzaWduKCdjYXRlZ29yeV9leHBpcnknLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdjYXRlZ29yeV9leHBpcnknLDApKTsKJHNtYXJ0eS0+YXNzaWduKCdhbGxvd191cGxvYWRfc2VuZGZpbGUnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdhbGxvd191cGxvYWRfc2VuZGZpbGUnLDApKTsKCi8vIERpc3BsYXkgdGhlIHBvcHVsYXRlZCB0ZW1wbGF0ZQplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUgKCdhZG1pbnByZWZzLnRwbCcpOwoKLy8gRU9GCj8+]]></data>
	</file>
	<file>
	  <filename>/functions.admin_tools.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLWZpbGUtc3R5bGU6bGludXg7IHRhYi13aWR0aDoyOyBpbmRlbnQtdGFicy1tb2RlOnQ7IGMtYmFzaWMtb2Zmc2V0OiAyOyAtKi0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojIFZlcnNpb246IDEuMy4wLWJldGExLCBjYWxndXkxMDAwCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOgkvL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgX0FkbWluRG9EZWxldGVVcGxvYWQoICRpZCwgJHBhcmFtcywgJHJldHVybmlkICkKIE5PVCBQQVJUIE9GIFRIRSBNT0RVTEUgQVBJCgkKIEFjdHVhbGx5IGRlbGV0ZSBhbiB1cGxvYWQgZnJvbSB0aGUgZmlsZXN5c3RlbSBhbmQKIGZyb20gdGhlIGRhdGFiYXNlLgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwpmdW5jdGlvbiBfdXBsb2Fkc19BZG1pbkRvRGVsZXRlVXBsb2FkICgmJG1vZHVsZSwgJHVwbG9hZF9pZCwkdW5saW5rX2ZpbGUgPSBGQUxTRSkKewogIC8vIHdlJ3JlIGdvbm5hIHB1dCBzb21lIHRob3VnaHQgaW50byB0aGlzLi4uIHRoZSB1c2VyCiAgLy8gaGFzIGFscmVhZHkgYW5zd2VyZWQsIFllcCwgV2UncmUgc3VyZSB0aGUgZmlsZSBleGlzdHMsIGRvbid0IHJlYWxseSBjYXJlIGFueXdheXMKICAvLyBzbyBhbGwgd2UgaGF2ZSB0byBkbyBpcyByZW1vdmUgdGhlIGZpbGUsIGFuZCByZW1vdmUgdGhlIHJlY29yZCBmcm9tIHRoZSBkYXRhYmFzZS4KCiAgLy8gZ2V0IHRoZSBpbmZvIGFib3V0IHRoZSB1cGxvYWQgd2UncmUgZ29ubmEgZGVsZXRlCiAgJGRiID0mICRtb2R1bGUtPkdldERiKCk7CiAgJHF1ZXJ5ID0gIlNFTEVDVCB1cGxvYWRfaWQsIHVwbG9hZF9jYXRlZ29yeV9pZCwgdXBsb2FkX25hbWUsIHVwbG9hZF90aHVtYm5haWwgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHMgV0hFUkUgdXBsb2FkX2lkID0gPyI7CgkkdXBsb2Fkcm93ID0gJGRiLT5HZXRSb3coICRxdWVyeSwgYXJyYXkoICR1cGxvYWRfaWQgKSApOwogIGlmKCAhJHVwbG9hZHJvdyApIHsKCQlyZXR1cm4gJG1vZHVsZS0+TGFuZygnZXJyb3JfZGJlcnJvcicpOwogIH0KCglpZiggJHVubGlua19maWxlICkKCQl7CgkJCS8vIGFuZCB0aGUgaW5mbyBhYm91dCBpdCdzIGNhdGVnb3J5CgkJCSRxdWVyeSA9ICJTRUxFQ1QgdXBsb2FkX2NhdGVnb3J5X3BhdGggRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfY2F0ZWdvcmllcyAKICAgICAgICAgICAgICAgICBXSEVSRSB1cGxvYWRfY2F0ZWdvcnlfaWQgPSA/IjsKCQkJJGNhdGVnb3J5cm93ID0gJGRiLT5HZXRSb3coICRxdWVyeSwgYXJyYXkoICR1cGxvYWRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9pZCddICkgKTsKCQkJaWYoICEkY2F0ZWdvcnlyb3cgKSB7CgkJCQlyZXR1cm4gJG1vZHVsZS0+TGFuZygnZXJyb3JfZGJlcnJvcicpOwoJCQl9ICAgIAoKCQkJLy8gbm93IGJ1aWxkIHRoZSBwYXRoCgkJCSRmaWxlID0gJG1vZHVsZS0+X3VwbG9hZFBhdGgoICRjYXRlZ29yeXJvd1sndXBsb2FkX2NhdGVnb3J5X3BhdGgnXSwgJHVwbG9hZHJvd1sndXBsb2FkX25hbWUnXSApOwoKCQkJLy8gYW5kIGRlbGV0ZSB0aGUgZmlsZQoJCQlAdW5saW5rKCAkZmlsZSApOwoKCQkJLy8gYW5kIHRoZSB0aHVtYm5haWwgaWYgb25lIGV4aXN0cwoJCQlpZiggIWVtcHR5KCR1cGxvYWRyb3dbJ3VwbG9hZF90aHVtYm5haWwnXSkgKQoJCQkJewoJCQkJCSR0bmZpbGUgPSAkbW9kdWxlLT5fY2F0ZWdvcnlQYXRoKCAkY2F0ZWdvcnlyb3dbJ3VwbG9hZF9jYXRlZ29yeV9wYXRoJ10gKS5ESVJFQ1RPUllfU0VQQVJBVE9SOwoJCQkJCSR0bmZpbGUgLj0gJHVwbG9hZHJvd1sndXBsb2FkX3RodW1ibmFpbCddOwoJCQkJCUB1bmxpbmsoICR0bmZpbGUgKTsKCQkJCX0KCQl9CgoJLy8gYW5kIGFueSB0aW1lIGxpbWl0ZWQgdXJscwoJJHF1ZXJ5ID0gJ0RFTEVURSBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2Fkc190aW1lbGltaXQgV0hFUkUgdXBsb2FkX2lkID0gPyc7CiAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcXVlcnksIGFycmF5KCAkdXBsb2Fkcm93Wyd1cGxvYWRfaWQnXSApICk7CgogIC8vIGFuZCB0aGUgZmllbGQgdmFsdWVzCiAgJHF1ZXJ5ID0gJ0RFTEVURSBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2Fkc19maWVsZHZhbHMgV0hFUkUgdXBsb2FkX2lkID0gPyc7CiAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcXVlcnksIGFycmF5KCAkdXBsb2Fkcm93Wyd1cGxvYWRfaWQnXSApICk7CgogIC8vIGFuZCB0aGUgZG93bmxvYWRzCiAgJHF1ZXJ5ID0gIkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc19kb3dubG9hZHMgV0hFUkUgZmlsZV9pZCA9ID8iOwogICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHF1ZXJ5LCBhcnJheSggJHVwbG9hZHJvd1sndXBsb2FkX2lkJ10gKSApOwoKICAvLyBhbmQgdGhlIHJlY29yZCBpdHNlbGYuCiAgJHF1ZXJ5ID0gIkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2FkcyBXSEVSRSB1cGxvYWRfaWQgPSA/IjsKICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxdWVyeSwgYXJyYXkoICR1cGxvYWRyb3dbJ3VwbG9hZF9pZCddICkgKTsKCiAgLy8gZGVsZXRlIHRoZSBzZWFyY2ggc3R1ZmYKICAkc2VhcmNoID0mICRtb2R1bGUtPkdldE1vZHVsZUluc3RhbmNlKCdTZWFyY2gnKTsKICBpZiAoJHNlYXJjaCAhPSBGQUxTRSkKICAgIHsKICAgICAgJHNlYXJjaC0+RGVsZXRlV29yZHMoJG1vZHVsZS0+R2V0TmFtZSgpLCAkdXBsb2Fkcm93Wyd1cGxvYWRfaWQnXSwgJ3VwbG9hZCcpOwogICAgfSAgICAKCiAgLy8gc2VuZCBhbiBldmVudAogICRwYXJtcyA9IGFycmF5KCk7CiAgJHBhcm1zWydpZCddID0gJHVwbG9hZHJvd1sndXBsb2FkX2lkJ107CiAgJHBhcm1zWyduYW1lJ10gPSAkdXBsb2Fkcm93Wyd1cGxvYWRfbmFtZSddOwogICRwYXJtc1snY2F0ZWdvcnlfaWQnXSA9ICR1cGxvYWRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9pZCddOwogICRtb2R1bGUtPlNlbmRFdmVudCgnT25SZW1vdmUnLCAkcGFybXMgKTsKCiAgLy8gYW5kIHdlJ3JlIGRvbmUKICAkbW9kdWxlLT5BdWRpdCggMCwgJG1vZHVsZS0+R2V0TmFtZSgpLAoJCSRtb2R1bGUtPmxhbmcoJ2RlbGV0ZWQnLCAkdXBsb2Fkcm93Wyd1cGxvYWRfbmFtZSddKSApOwoKCXJldHVybiBmYWxzZTsKfQoKCmZ1bmN0aW9uIF91cGxvYWRzX0FkbWluRG9EZWxldGVDYXRlZ29yeSAoJiRtb2R1bGUsICRjYXRlZ29yeV9pZCkKewoJLy8gZ2V0IHRoZSBjYXRlZ29yeSBkZXRhaWxzCgkkY2F0ZWdvcnkgPSAkbW9kdWxlLT5fZ2V0VXBsb2FkQ2F0ZWdvcnlEZXRhaWxzKCAkY2F0ZWdvcnlfaWQgKTsKCWlmKCAhJGNhdGVnb3J5ICkgewoJCXJldHVybiAkbW9kdWxlLT5MYW5nKCdlcnJvcl9jYXRlZ29yeW5vdGZvdW5kJyk7Cgl9CgoJLy8gZ2V0IHRoZSBmaWxlcyBmcm9tIHRoZSBjYXRlZ29yeQoJJHF1ZXJ5ID0gJ1NFTEVDVCB1cGxvYWRfaWQgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHMgCiAgICAgICAgICAgICBXSEVSRSB1cGxvYWRfY2F0ZWdvcnlfaWQgPSA/JzsKCSRkYiA9JiAkbW9kdWxlLT5HZXREYigpOwoJJHRtcCA9ICRkYi0+R2V0T25lKCRxdWVyeSxhcnJheSgkY2F0ZWdvcnlfaWQpICk7CglpZiggJHRtcCApCgkJewoJCQlyZXR1cm4gJG1vZHVsZS0+TGFuZygnZXJyb3JfY2F0ZWdvcnlub3RlbXB0eScpOwoJCX0KCgkkZGlyID0gJG1vZHVsZS0+X2NhdGVnb3J5UGF0aCggJGNhdGVnb3J5Wyd1cGxvYWRfY2F0ZWdvcnlfcGF0aCddICk7CgljZ2VfZGlyOjpyZWN1cnNpdmVfcm1kaXIoJGRpcik7CgkKCWlmKCBmaWxlX2V4aXN0cygkZGlyKSApCgkJewoJCQlyZXR1cm4gJG1vZHVsZS0+TGFuZygnZXJyb3JfZGVsZXRlJywkZGlyKTsKCQl9CgoKCS8vIGRlbGV0ZSB0aGUgY2F0ZWdvcnkgZnJvbSB0aGUgZGIKCSRkYiA9JiAkbW9kdWxlLT5HZXREYigpOwoJJHF1ZXJ5ID0gIkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc19jYXRlZ29yaWVzIFdIRVJFIHVwbG9hZF9jYXRlZ29yeV9pZCA9ID8iOwoJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcXVlcnksIGFycmF5KCAkY2F0ZWdvcnlfaWQgKSApOwoJCgkvLyBzZW5kIGFuIGV2ZW50CgkkcGFybXNbXSA9IGFycmF5KCk7CgkkcGFybXNbJ25hbWUnXSA9ICRjYXRlZ29yeVsndXBsb2FkX2NhdGVnb3J5X25hbWUnXTsKCSRwYXJtc1sncGF0aCddID0gJGNhdGVnb3J5Wyd1cGxvYWRfY2F0ZWdvcnlfcGF0aCddOwoJJG1vZHVsZS0+U2VuZEV2ZW50KCdPbkRlbGV0ZUNhdGVnb3J5JywkcGFybXMpOwoJCQoJLy8gYW5kIHdlJ3JlIGRvbmUKCXJldHVybiBGQUxTRTsKfQoKCmZ1bmN0aW9uIF91cGxvYWRzX0NvcHlDYXRlZ29yeSgmJG1vZHVsZSwkb3JpZ19jYXRlZ29yeV9pZCwkZGVzdF9uYW1lLCRkZXN0X3BhdGgsJGRlc3RfZGVzYywkY29weWZpbGVzLCRlZGl0X2Rlc2MgPSB0cnVlKQp7CglnbG9iYWwgJGdDbXM7CgkkY29uZmlnID0mICRnQ21zLT5HZXRDb25maWcoKTsKCgkvLyBnZXQgdGhlIG9yaWdpbmFsIGNhdGVnb3J5Cgkkb3JpZ19jYXRlZ29yeSA9IFVwbG9hZHM6OmxvYWRfY2F0ZWdvcnlfYnlfaWQoJG9yaWdfY2F0ZWdvcnlfaWQpOwoJaWYoICEkb3JpZ19jYXRlZ29yeSApCgkJewoJCQlyZXR1cm4gJG1vZHVsZS0+TGFuZygnZXJyb3JfY2F0ZWdvcnlub3Rmb3VuZCcpOwoJCX0KCSRkZXN0X2NhdGVnb3J5ID0gJG9yaWdfY2F0ZWdvcnk7CgoJaWYoIGVtcHR5KCRkZXN0X25hbWUpICkKCQl7CgkJCXJldHVybiAkbW9kdWxlLT5MYW5nKCdlcnJvcl9taXNzaW5nX2ludmFsaWQnLCduYW1lJyk7CgkJfQoJaWYoIGVtcHR5KCRkZXN0X3BhdGgpICkKCQl7CgkJCXJldHVybiAkbW9kdWxlLT5MYW5nKCdlcnJvcl9taXNzaW5nX2ludmFsaWQnLCdwYXRoJyk7CgkJfQoJJHRtcCA9IFVwbG9hZHM6OmdldENhdGVnb3J5RnJvbU5hbWUoJGRlc3RfbmFtZSk7CglpZiggaXNfYXJyYXkoJHRtcCkgKQoJCXsKCQkJcmV0dXJuICRtb2R1bGUtPkxhbmcoJ2Vycm9yX2NhdGVnb3J5ZXhpc3RzMicsJGRlc3RfbmFtZSk7CgkJfQoJJHRtcDIgPSBVcGxvYWRzOjpjYXRlZ29yeV9wYXRoX2luX3VzZSgkZGVzdF9wYXRoKTsKCWlmKCAkdG1wMiApCgkJewoJCQlyZXR1cm4gJG1vZHVsZS0+TGFuZygnZXJyb3JfcGF0aGludXNlMicsJGRlc3RfcGF0aCk7CgkJfQoKCSRzcmNkaXIgPSBjbXNfam9pbl9wYXRoKCRjb25maWdbJ3VwbG9hZHNfcGF0aCddLCRvcmlnX2NhdGVnb3J5Wyd1cGxvYWRfY2F0ZWdvcnlfcGF0aCddKTsKCSRkZXN0ZGlyID0gY21zX2pvaW5fcGF0aCgkY29uZmlnWyd1cGxvYWRzX3BhdGgnXSwkZGVzdF9wYXRoKTsKCWlmKCBmaWxlX2V4aXN0cygkZGVzdGRpcikgKQoJCXsKCQkJcmV0dXJuICRtb2R1bGUtPkxhbmcoJ2Vycm9yX2ZpbGVleGlzdHMnLCRkZXN0ZGlyKTsKCQl9CglpZiggIWZpbGVfZXhpc3RzKCRzcmNkaXIpICkKCQl7CgkJCXJldHVybiAkbW9kdWxlLT5MYW5nKCdlcnJvcl9maWxlbm90Zm91bmQnLCRzcmNkaXIpOwoJCX0KCgkkZGVzdF9jYXRlZ29yeVsndXBsb2FkX2NhdGVnb3J5X25hbWUnXSA9ICRkZXN0X25hbWU7CgkkZGVzdF9jYXRlZ29yeVsndXBsb2FkX2NhdGVnb3J5X3BhdGgnXSA9ICRkZXN0X3BhdGg7CglpZiggJGVkaXRfZGVzYyApCgkJJGRlc3RfY2F0ZWdvcnlbJ3VwbG9hZF9jYXRlZ29yeV9kZXNjcmlwdGlvbiddID0gJGRlc3RfZGVzYzsKCglnbG9iYWwgJGdDbXM7CgkkZGIgPSYgJGdDbXMtPkdldERiKCk7CgkkY2F0aWQgPQoJCSRkYi0+R2VuSUQgKGNtc19kYl9wcmVmaXggKCkuIm1vZHVsZV91cGxvYWRzX2NhdGVnb3JpZXNfc2VxIik7CgoJJHF1ZXJ5ID0gJ0lOU0VSVCBJTlRPICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2Fkc19jYXRlZ29yaWVzCiAgICAgICAgICAgICAgICh1cGxvYWRfY2F0ZWdvcnlfaWQsdXBsb2FkX2NhdGVnb3J5X25hbWUsCiAgICAgICAgICAgICAgICB1cGxvYWRfY2F0ZWdvcnlfZGVzY3JpcHRpb24sdXBsb2FkX2NhdGVnb3J5X3BhdGgsCiAgICAgICAgICAgICAgICB1cGxvYWRfY2F0ZWdvcnlfbGlzdGFibGUsdXBsb2FkX2NhdGVnb3J5X2dyb3VwcywKICAgICAgICAgICAgICAgIHVwbG9hZF9jYXRlZ29yeV9kZWxldGFibGUpCiAgICAgICAgICAgICAgVkFMVUVTICg/LD8sPyw/LD8sPyw/KSc7CgkkZGJyID0gJGRiLT5FeGVjdXRlKCRxdWVyeSwKCQkJCQkJCQkJCQlhcnJheSgkY2F0aWQsCgkJCQkJCQkJCQkJCQkJJGRlc3RfY2F0ZWdvcnlbJ3VwbG9hZF9jYXRlZ29yeV9uYW1lJ10sCgkJCQkJCQkJCQkJCQkJJGRlc3RfY2F0ZWdvcnlbJ3VwbG9hZF9jYXRlZ29yeV9kZXNjcmlwdGlvbiddLAoJCQkJCQkJCQkJCQkJCSRkZXN0X2NhdGVnb3J5Wyd1cGxvYWRfY2F0ZWdvcnlfcGF0aCddLAoJCQkJCQkJCQkJCQkJCSRkZXN0X2NhdGVnb3J5Wyd1cGxvYWRfY2F0ZWdvcnlfbGlzdGFibGUnXSwKCQkJCQkJCQkJCQkJCQkkZGVzdF9jYXRlZ29yeVsndXBsb2FkX2NhdGVnb3J5X2dyb3VwcyddLAoJCQkJCQkJCQkJCQkJCSRkZXN0X2NhdGVnb3J5Wyd1cGxvYWRfY2F0ZWdvcnlfZGVsZXRhYmxlJ10pKTsKCglpZiggISRkYnIgKQoJCXsKCQkJcmV0dXJuICRtb2R1bGUtPkxhbmcoJ2Vycm9yX2RiZXJyb3InKTsKCQl9CgoJQG1rZGlyKCRkZXN0ZGlyKTsKCWlmKCAhZmlsZV9leGlzdHMoJGRlc3RkaXIpICkKCQl7CgkJCSRxdWVyeSA9ICdERUxFVEUgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHNfY2F0ZWdvcmllcwogICAgICAgICAgICAgICAgIFdIRVJFIHVwbG9hZF9jYXRlZ29yeV9pZCA9ID8nOwoJCQkkZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KCRjYXRpZCkpOwoJCQlyZXR1cm4gJG1vZHVsZS0+TGFuZygnZXJyb3JfY2FudGNyZWF0ZWRpcmVjdG9yeScuJzogJy4kZGVzdGRpcik7CgkJfQoJaWYoICRtb2R1bGUtPkdldFByZWZlcmVuY2UoJ2NyZWF0ZV9kdW1teV9pbmRleF9odG1sJykgKQoJCXsKCQkJQHRvdWNoKCAkZGVzdGRpci5ESVJFQ1RPUllfU0VQQVJBVE9SLiJpbmRleC5odG1sIiApOwoJCX0KCgoJLy8gc2VuZCBhbiBldmVudAoJJHBhcm1zID0gYXJyYXkoKTsKCSRwYXJtc1snbmFtZSddID0gJGRlc3RfY2F0ZWdvcnlbJ3VwbG9hZF9jYXRlZ29yeV9uYW1lJ107CgkkcGFybXNbJ2Rlc2NyaXB0aW9uJ10gPSAkZGVzdF9jYXRlZ29yeVsndXBsb2FkX2NhdGVnb3J5X2Rlc2NyaXB0aW9uJ107CgkkcGFybXNbJ3BhdGgnXSA9ICRkZXN0X2NhdGVnb3J5Wyd1cGxvYWRfY2F0ZWdvcnlfcGF0aCddOwoJJHBhcm1zWydsaXN0YWJsZSddID0gJGRlc3RfY2F0ZWdvcnlbJ3VwbG9hZF9jYXRlZ29yeV9saXN0YWJsZSddOwoJJHBhcm1zWydkZWxldGFibGUnXSA9ICRkZXN0X2NhdGVnb3J5Wyd1cGxvYWRfY2F0ZWdvcnlfZGVsZXRhYmxlJ107CgkkbW9kdWxlLT5TZW5kRXZlbnQoICdPbkNyZWF0ZUNhdGVnb3J5JywgJHBhcm1zICk7CgoJJGVycm9yID0gYXJyYXkoKTsKCWlmKCAkY29weWZpbGVzICkKCQl7CgkJCQkvLyBub3cgY29weSB0aGUgZmlsZXMuCgkJCSRhdXRob3IgPSAkX1NFU1NJT05bJ2Ntc19hZG1pbl91c2VybmFtZSddOwoJCQkkbm93ID0gJGRiLT5EYlRpbWVTVGFtcCh0aW1lKCkpOwoJCQkkZmlsZV9yZWNvcmRzID0gVXBsb2Fkczo6Z2V0X2NhdGVnb3J5X2ZpbGVfbGlzdCggJG9yaWdfY2F0ZWdvcnlfaWQgKTsKCQkJJGlxdWVyeSA9ICdJTlNFUlQgSU5UTyAnLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHMKICAgICAgICAgICAgICAgICAgICAodXBsb2FkX2lkLHVwbG9hZF9jYXRlZ29yeV9pZCx1cGxvYWRfbmFtZSwKICAgICAgICAgICAgICAgICAgICAgdXBsb2FkX2F1dGhvcix1cGxvYWRfc3VtbWFyeSx1cGxvYWRfZGVzY3JpcHRpb24sCiAgICAgICAgICAgICAgICAgICAgIHVwbG9hZF9pcCx1cGxvYWRfc2l6ZSx1cGxvYWRfZGF0ZSwKICAgICAgICAgICAgICAgICAgICAgdXBsb2FkX2tleSx1cGxvYWRfdGh1bWJuYWlsKQogICAgICAgICAgICAgICAgICAgVkFMVUVTKD8sPyw/LD8sPyw/LD8sPywkbm93LD8sPykiOwoJCQkJCgkJCWlmKCAhaXNfYXJyYXkoJGZpbGVfcmVjb3JkcykgKQoJCQkJewoJCQkJCWNvbnRpbnVlOwoJCQkJfQoKCQkJZm9yKCAkaSA9IDA7ICRpIDwgY291bnQoJGZpbGVfcmVjb3Jkcyk7ICRpKysgKQoJCQkJewoJCQkJCWlmKCAhZW1wdHkoJGVycm9yKSApIGJyZWFrOwoJCQkJCQoJCQkJCSRkaWRfY29weV90aHVtYiA9IGZhbHNlOwoJCQkJCSRkZXN0dGh1bWIgPSAnJzsKCQkJCQkkb25lcmVjID0mICRmaWxlX3JlY29yZHNbJGldOwoJCQkJCQoJCQkJCS8vIGdldCB0aGUgZmlsZSBwYXRoCgkJCQkJJHNyY2ZpbGUgPSBjbXNfam9pbl9wYXRoKCRzcmNkaXIsJG9uZXJlY1sndXBsb2FkX25hbWUnXSk7CgkJCQkJJGRlc3RmaWxlID0gY21zX2pvaW5fcGF0aCgkZGVzdGRpciwkb25lcmVjWyd1cGxvYWRfbmFtZSddKTsKCQkJCQkKCQkJCQkvLyBjb3B5IHRoZSBmaWxlCgkJCQkJY29weSgkc3JjZmlsZSwkZGVzdGZpbGUpOwoJCQkJCQoJCQkJCS8vIGNoZWNrIGZvciBhIHRodW1ibmFpbAoJCQkJCSRzcmN0aHVtYiA9IGNtc19qb2luX3BhdGgoJHNyY2RpciwndGh1bWJfJy4kb25lcmVjWyd1cGxvYWRfbmFtZSddKTsKCQkJCQkkZGVzdHRodW1iID0gY21zX2pvaW5fcGF0aCgkZGVzdGRpciwndGh1bWJfJy4kb25lcmVjWyd1cGxvYWRfbmFtZSddKTsKCQkJCQlpZiggZmlsZV9leGlzdHMoJHNyY2RpcikgKQoJCQkJCQl7CgkJCQkJCQkvLyBjb3B5IGl0CgkJCQkJCQkkZGVzdHRodW1iID0gY21zX2pvaW5fcGF0aCgkZGVzdGRpciwndGh1bWJfJy4kb25lcmVjWyd1cGxvYWRfbmFtZSddKTsKCQkJCQkJCWNvcHkoJHNyY3RodW1iLCRkZXN0dGh1bWIpOwoJCQkJCQkJJGRpZF9jb3B5X3RodW1iID0gdHJ1ZTsKCQkJCQkJfQoJCQkJCQkKCQkJCQkvLyBnZW5lcmF0ZSBhIG5ldyBmaWxlIGlkCgkJCQkJJGZpbGVfaWQgPQoJCQkJCQkkZGItPkdlbklEIChjbXNfZGJfcHJlZml4ICgpLiJtb2R1bGVfdXBsb2Fkc19zZXEiKTsKCQkJCQkJCgkJCQkJLy8gYWx0ZXIgdGhlIHJlY29yZAoJCQkJCSRvbmVyZWNbJ3VwbG9hZF9pZCddID0gJGZpbGVfaWQ7CgkJCQkJJG9uZXJlY1sndXBsb2FkX2NhdGVnb3J5X2lkJ10gPSAkY2F0aWQ7CgkJCQkJJG9uZXJlY1sndXBsb2FkX2F1dGhvciddID0gJGF1dGhvcjsKCQkJCQkkb25lcmVjWyd1cGxvYWRfaXAnXSA9IG51bGw7CgoJCQkJCS8vIGluc2VydCBpdC4KCQkJCQkkZGJyID0gJGRiLT5FeGVjdXRlKCRpcXVlcnksCgkJCQkJCQkJCQkJCQkJCWFycmF5KCRmaWxlX2lkLAoJCQkJCQkJCQkJCQkJCQkJCQkkb25lcmVjWyd1cGxvYWRfY2F0ZWdvcnlfaWQnXSwKCQkJCQkJCQkJCQkJCQkJCQkJJG9uZXJlY1sndXBsb2FkX25hbWUnXSwKCQkJCQkJCQkJCQkJCQkJCQkJJG9uZXJlY1sndXBsb2FkX2F1dGhvciddLAoJCQkJCQkJCQkJCQkJCQkJCQkkb25lcmVjWyd1cGxvYWRfc3VtbWFyeSddLAoJCQkJCQkJCQkJCQkJCQkJCQkkb25lcmVjWyd1cGxvYWRfZGVzY3JpcHRpb24nXSwKCQkJCQkJCQkJCQkJCQkJCQkJJG9uZXJlY1sndXBsb2FkX2lwJ10sCgkJCQkJCQkJCQkJCQkJCQkJCSRvbmVyZWNbJ3VwbG9hZF9zaXplJ10sCgkJCQkJCQkJCQkJCQkJCQkJCSRvbmVyZWNbJ3VwbG9hZF9rZXknXSwKCQkJCQkJCQkJCQkJCQkJCQkJJG9uZXJlY1sndXBsb2FkX3RodW1ibmFpbCddKSk7CgkJCQkJCQoJCQkJCS8vIG9uIGVycm9yIGRlbGV0ZSBmaWxlcy4KCQkJCQlpZiggISRkYnIgKQoJCQkJCQl7CgkJCQkJCQlAdW5saW5rKCRkZXN0ZmlsZSk7CgkJCQkJCQlAdW5saW5rKCRkZXN0dGh1bWIpOwoJCQkJCQkJaWYoICFpc19hcnJheSgkZXJyb3IpICkKCQkJCQkJCQl7CgkJCQkJCQkJCSRlcnJvciA9IGFycmF5KCk7CgkJCQkJCQkJfQoJCQkJCQkJJGVycm9yW10gPSAkbW9kdWxlLT5MYW5nKCdlcnJvcl9kYmVycm9yJyk7CgkJCQkJCX0KCQkJCX0KCQl9IC8vIGNvcHkgZmlsZXMKCglpZiggISRlcnJvciApCgkJewoJCQlyZXR1cm4gJGVycm9yOwoJCX0KCXJldHVybiBGQUxTRTsKfQoKCiMKIyBFT0YKIwo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/functions.common_tools.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLWZpbGUtc3R5bGU6bGludXg7IHRhYi13aWR0aDogMjsgaW5kZW50LXRhYnMtbW9kZTp0OyBjLWJhc2ljLW9mZnNldDogMjsgLSotCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBVcGxvYWRzIC09IGFsbG93IHVzZXJzIHRvIHVwbG9hZCBzdHVmZiwgYSBwc2V1ZG8gZmlsZSBtYW5hZ2VyIiBtb2R1bGUKIyBWZXJzaW9uOiAxLjMuMC1iZXRhMSwgY2FsZ3V5MTAwMAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDoJLy93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgogIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgIEF0dGVtcHRVcGxvYWQoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsICRtZXNzYWdlKQogICBOT1QgUEFSVCBPRiBUSEUgTU9EVUxFIEFQSQogICAKICAgVGhpcyBpcyBhIG1ldGhvZCB0byBhY3R1YWxseSB0cnkgdXBsb2FkaW5nIHRoZSBmaWxlCiAgIGVuc3VyaW5nIGl0IGlzIHZhbGlkLCBhbmQgdGhlbiBhZGRpbmcgdGhlIHN0dWZmIHRvCiAgIHRoZSBkYXRhYmFzZS4KCiAgIFJldHVybnMgYW4gYXJyYXksIGZpcnN0IGVsZW1lbnQgaXMgc3VjY2VzcyAodHJ1ZS9mYWxzZSkKICAgc2Vjb25kIGVsZW1lbnQgaXMgKGlmIGZpcnN0IGVsZW1lbnQgaXMgZmFsc2UpIGFuIGVycm9yIG1lc3NhZ2UsCiAgIG9yIHRoZSBpZCBvZiB0aGUgdXBsb2FkZWQgZmlsZS4KICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KZnVuY3Rpb24gX3VwbG9hZHNfQXR0ZW1wdFVwbG9hZCAoJiRtb2QsICRpZCwgJiRwYXJhbXMsICRyZXR1cm5pZCkKewogICRmaWVsZG5hbWUgPSAkaWQuJ2lucHV0X2Jyb3dzZSc7CiAgaWYoIGlzc2V0KCRwYXJhbXNbJ2ZpZWxkX25hbWUnXSkgKQogICAgewogICAgICAkZmllbGRuYW1lID0gJHBhcmFtc1snZmllbGRfbmFtZSddOwogICAgfQoKICAvLyBjaGVjayBmb3IgdGhlIGZpbGV0eXBlcyBwYXJhbQogIGlmIChpc3NldCggJHBhcmFtc1snZmlsZV9leHRlbnNpb25zJ10gKSApCiAgICB7CiAgICAgICRtb2QtPnVwbG9hZF9leHRlbnNpb25zID0gJHBhcmFtc1snZmlsZV9leHRlbnNpb25zJ107CiAgICB9CgogIC8vIGNoZWNrIHRoZSBhdXRob3IKICBpZiAoIWlzc2V0ICgkcGFyYW1zWydpbnB1dF9hdXRob3InXSkpCiAgICB7CiAgICAgIHJldHVybiBhcnJheSggRkFMU0UsICRtb2QtPkxhbmcoJ2Vycm9yX2ludmFsaWRhdXRob3InKSApOwogICAgfQogICAgCiAgLy8gc2VlIGlmIHRoZXJlJ3MgYSBrZXkKICAka2V5ID0gbnVsbDsKICBpZiggaXNzZXQoICRwYXJhbXNbJ2lucHV0X2tleSddICkgKQogICAgewogICAgICAka2V5ID0gJHBhcmFtc1snaW5wdXRfa2V5J107CiAgICB9CgogIC8vIHZhbGlkYXRlIHRoZSB1cGxvYWQgbmFtZQogIGlmKCAhaXNzZXQoJF9GSUxFU1skZmllbGRuYW1lXSkgKQogICAgewogICAgICByZXR1cm4gYXJyYXkoRkFMU0UsJG1vZC0+TGFuZygnZXJyb3Jfbm9maWxlc3VwbG9hZGVkJykpOwogICAgfQoKCS8vIGhhbmRsZSBmaWxlbmFtZSBwcmVmaXgKICAkZmlsZVByZWZpeCA9ICcnOwoJaWYoIGlzc2V0KCRwYXJhbXNbJ3ByZWZpeCddKSAmJiAkcGFyYW1zWydwcmVmaXgnXSA9PSAxICkKCQl7CgkJCSRmaWxlUHJlZml4ID0gZGVjaGV4KHRpbWUoKSkgLiAiXyI7CgkJCWlmIChpc3NldCgkcGFyYW1zWydwcmVmaXhfZmV1J10pICYmICRwYXJhbXNbJ3ByZWZpeF9mZXUnXSA9PSAxKQoJCQkJewoJCQkJCSRmaWxlUHJlZml4ID0gJHBhcmFtc1snaW5wdXRfYXV0aG9yJ10gLiAiXyI7CgkJCQl9CgkJfQoKCS8vIGhhbmRsZSBkZXN0aW5hdGlvbiBuYW1lCgkkZGVzdG5hbWUgPSAnJzsKICBpZiggaXNzZXQoJHBhcmFtc1snaW5wdXRfZGVzdG5hbWUnXSkgJiYgJHBhcmFtc1snaW5wdXRfZGVzdG5hbWUnXSAhPSAnJykKICAgIHsKICAgICAgJGRlc3RuYW1lID0gdHJpbShiYXNlbmFtZSgkcGFyYW1zWydpbnB1dF9kZXN0bmFtZSddKSk7CiAgICB9CgoJLy8gaGFuZGxlIHJlcGxhY2UgZXhpc3RpbmcKICAkcmVwbGFjZV9leGlzdGluZyA9IGZhbHNlOwogIGlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfcmVwbGFjZSddKSAmJiAkcGFyYW1zWydpbnB1dF9yZXBsYWNlJ10gPT0gMSApCiAgICB7CiAgICAgICRyZXBsYWNlX2V4aXN0aW5nID0gdHJ1ZTsKICAgIH0KCiAgLy8gY2hlY2sgdGhlIHN1bW1hcnkKICBpZiAoICFpc3NldCgkcGFyYW1zWydpbnB1dF9zdW1tYXJ5J10pIHx8ICRwYXJhbXNbJ2lucHV0X3N1bW1hcnknXSA9PSAnJyApCiAgICB7CiAgICAgIC8vIHdlJ2xsIGNoZWF0LCBpZiB0aGUgc3VtbWFyeSBpcyBsZWZ0IGFzIGVtcHR5CiAgICAgIC8vIHdlJ2xsIHVzZSB0aGUgdXBsb2FkIG5hbWUKICAgICAgJHAgPSBzdHJwb3MoICRkZXN0bmFtZSwgJy4nICk7CiAgICAgIGlmKCAkcCApCgkJCQl7CgkJCQkJJHBhcmFtc1snaW5wdXRfc3VtbWFyeSddID0gc3Vic3RyKCAkZGVzdG5hbWUsIDAsICRwICk7CgkJCQl9CiAgICAgIGVsc2UKCQkJCXsKCQkJCQkkcGFyYW1zWydpbnB1dF9zdW1tYXJ5J10gPSAkZGVzdG5hbWU7CgkJCQl9CiAgICAgIC8vcmV0dXJuIGFycmF5KCBGQUxTRSwgJG1vZC0+TGFuZygnZXJyb3JfaW52YWxpZHN1bW1hcnknKSApOwogICAgfQoKICAvLyBjaGVjayB0aGUgY2F0ZWdvcnkKICAkZGIgPSYgJG1vZC0+R2V0RGIoKTsKICAkZGJyZXN1bHQgPSAiIjsKICAkcm93ID0gYXJyYXkoKTsKICAkY2F0ZWdvcnlfaWQgPSAwOwogIGlmIChpc3NldCggJHBhcmFtc1snY2F0ZWdvcnlfaWQnXSApICkKICAgIHsKICAgICAgJGNhdGVnb3J5X2lkID0gJHBhcmFtc1snY2F0ZWdvcnlfaWQnXTsKICAgICAgJHF1ZXJ5ID0KCSJTRUxFQ1QgdXBsb2FkX2NhdGVnb3J5X2lkLCB1cGxvYWRfY2F0ZWdvcnlfbmFtZSwgdXBsb2FkX2NhdGVnb3J5X3BhdGggRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4KCSJtb2R1bGVfdXBsb2Fkc19jYXRlZ29yaWVzIFdIRVJFIHVwbG9hZF9jYXRlZ29yeV9pZCA9ID8iOwogICAgICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUgKCRxdWVyeSwgYXJyYXkgKCRjYXRlZ29yeV9pZCkpOwogICAgfQogIGVsc2UgaWYgKGlzc2V0ICgkcGFyYW1zWydjYXRlZ29yeSddKSkKICAgIHsKICAgICAgLy8gZ2V0IHRoZSBjYXRlZ29yeSBpbmZvIGdpdmVuIGl0J3MgbmFtZQogICAgICAkcXVlcnkgPQoJIlNFTEVDVCB1cGxvYWRfY2F0ZWdvcnlfaWQsIHVwbG9hZF9jYXRlZ29yeV9uYW1lLCB1cGxvYWRfY2F0ZWdvcnlfcGF0aCBGUk9NICIuY21zX2RiX3ByZWZpeCgpLgoJIm1vZHVsZV91cGxvYWRzX2NhdGVnb3JpZXMgV0hFUkUgdXBsb2FkX2NhdGVnb3J5X25hbWUgPSA/IjsKICAgICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlICgkcXVlcnksIGFycmF5ICgkcGFyYW1zWydjYXRlZ29yeSddKSk7CiAgICB9CiAgaWYgKCEkZGJyZXN1bHQpCiAgICB7CiAgICAgIHJldHVybiBhcnJheSggRkFMU0UsICRtb2QtPkxhbmcoJ2Vycm9yX2ludmFsaWRjYXRlZ29yeScpICk7CiAgICB9CiAgJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3cgKCk7CiAgaWYoICEkcm93ICkKICAgIHsKICAgICAgcmV0dXJuIGFycmF5KCBGQUxTRSwgJG1vZC0+TGFuZygnZXJyb3JfaW52YWxpZGNhdGVnb3J5JykgKTsKICAgIH0KICAkY2F0ZWdvcnlfaWQgPSAkcm93Wyd1cGxvYWRfY2F0ZWdvcnlfaWQnXTsKICAkY2F0ZWdvcnlfbmFtZSA9ICRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9uYW1lJ107CiAKICAvLyBub3cgZG8gdGhlIHVwbG9hZCwgaG9wZWZ1bGx5CiAgLy8gZmlyc3QgdGhlIGZpbGUgaXRzZWxmLgogICRkaXIgPSAkbW9kLT5fY2F0ZWdvcnlQYXRoKCRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9wYXRoJ10pOwogICRyZXN1bHQgPSAkbW9kLT5faGFuZGxlVXBsb2FkICgkZGlyLAoJCQkJCQkJCQkJCQkJCQkJICRmaWVsZG5hbWUsCgkJCQkJCQkJCQkJCQkJCQkgZmFsc2UsCgkJCQkJCQkJCQkJCQkJCQkgJGRlc3RuYW1lLAoJCQkJCQkJCQkJCQkJCQkJIHRydWUsCgkJCQkJCQkJCQkJCQkJCQkgJHJlcGxhY2VfZXhpc3RpbmcsCgkJCQkJCQkJCQkJCQkJCQkgJGZpbGVQcmVmaXgpOwogIGlmICghJHJlc3VsdFswXSkKICAgIHsKICAgICAgcmV0dXJuIGFycmF5KCBGQUxTRSwgJHJlc3VsdFsxXSApOwogICAgfQogICRkZXN0bmFtZSA9ICRyZXN1bHRbMV1bJ25hbWUnXTsKCQoJLy8gc2VlIGFib3V0IHdhdGVybWFya2luZwoJaWYoICRtb2QtPkdldFByZWZlcmVuY2UoJ2F1dG93YXRlcm1hcmsnLDApICkKCQl7CgkJCSRzcmNuYW1lID0gY21zX2pvaW5fcGF0aCgkZGlyLCRkZXN0bmFtZSk7CgkJCSR3bW5hbWUgPSBjbXNfam9pbl9wYXRoKCRkaXIsJ3dtXycuJGRlc3RuYW1lKTsKCgkJCSR3bW9iaiA9JiAkbW9kLT5HZXRXYXRlcm1hcmtPYmooKTsKCQkJJHJlcyA9ICRtb2QtPkNyZWF0ZVdhdGVybWFya2VkSW1hZ2UoJHNyY25hbWUsJHdtbmFtZSk7CgkJCQoJCQlpZiggRkFMU0UgIT09ICRyZXMgKQoJCQkJewoJCQkJCUB1bmxpbmsoJHNyY25hbWUpOwoJCQkJCUByZW5hbWUoJHdtbmFtZSwkc3JjbmFtZSk7CgkJCQl9CgkJfQoKCiAgLy8gY2hlY2sgZm9yIGFuIGV4aXN0aW5nIGRhdGFiYXNlIGVudHJ5CiAgJHF1ZXJ5ID0gIlNFTEVDVCB1cGxvYWRfaWQgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHMgV0hFUkUgdXBsb2FkX25hbWUgPSA/IEFORAoJCQl1cGxvYWRfY2F0ZWdvcnlfaWQgPSA/IjsKICAkdG1wX2lkID0gJGRiLT5HZXRPbmUoJHF1ZXJ5LCBhcnJheSggJGRlc3RuYW1lLCAkY2F0ZWdvcnlfaWQgKSApOwoKICAkZmlsZWlkID0gJyc7CiAgaWYoICRyZXBsYWNlX2V4aXN0aW5nID09PSBmYWxzZSAmJiAkdG1wX2lkICkKICAgIHsKICAgICAgcmV0dXJuIGFycmF5KCBGQUxTRSwgJG1vZC0+TGFuZygnZXJyb3JfZmlsZWV4aXN0cycpICk7CiAgICB9CiAgZWxzZSBpZiAoJHRtcF9pZCkKICAgIHsKICAgICAgLy8gd2UncmUgYWxsb3dpbmcgb3ZlcndyaXRlCiAgICAgICRmaWxlaWQgPSAkdG1wX2lkOwogICAgICAkcmVwbGFjZV9leGlzdGluZyA9IHRydWU7CgogICAgICAvLyBkZWxldGUgZmllbGQgZGVmaW5pdGlvbnMuCiAgICAgICRxdWVyeSA9ICdERUxFVEUgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHNfZmllbGR2YWxzIFdIRVJFIHVwbG9hZF9pZCA9ID8nOwogICAgICAkZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KCR0bXBfaWQpKTsgICAgICAKICAgIH0KIAkgICAgICAgCgogIC8vIGNyZWF0ZSBhIG5ldyB1cGxvYWQgaWQgaGVyZS4KICBpZiggJGZpbGVpZCA9PSAnJyApCiAgICB7CiAgICAgICRuZXdpZCA9ICRkYi0+R2VuSUQgKGNtc19kYl9wcmVmaXggKCkuIm1vZHVsZV91cGxvYWRzX3NlcSIpOwogICAgfQoKICAvLyBhbmQgdGhlbiBtYXliZSB0aGUgdGh1bWJuYWlsCiAgJHRodW1iX25hbWUgPSAnJzsKICBpZiggaXNzZXQoICRfRklMRVNbJGlkLidpbnB1dF90aHVtYm5haWwnXVsnbmFtZSddICkgJiYKICAgICAgJF9GSUxFU1skaWQuJ2lucHV0X3RodW1ibmFpbCddWyduYW1lJ10gIT0gJycgJiYgCiAgICAgICRfRklMRVNbJGlkLidpbnB1dF90aHVtYm5haWwnXVsnc2l6ZSddID4gMCkKICAgIHsKCiAgICAgIHsKCQkJCS8vIGJ1aWxkIHRoZSB0aHVtYm5haWwgbmFtZQoJCQkJJHRodW1iX2V4dGVuc2lvbiA9IHN0cnRvbG93ZXIoc3RycmNocigkX0ZJTEVTWyRpZC4naW5wdXRfdGh1bWJuYWlsJ11bJ25hbWUnXSwnLicpKTsKCQkJCSRmaWxlZXh0ZW5zaW9uID0gc3RydG9sb3dlcihzdHJyY2hyKCRkZXN0bmFtZSwnLicpKTsKCQkJCSRmaWxlbmFtZXdvZXh0ID0gc3Vic3RyKCRkZXN0bmFtZSwwLHN0cmxlbigkZGVzdG5hbWUpLXN0cmxlbigkZmlsZWV4dGVuc2lvbikpOwoJCQkJJHRodW1iX25hbWUgPSAndGh1bWJfJy4kZmlsZW5hbWV3b2V4dC4kdGh1bWJfZXh0ZW5zaW9uOwogICAgICB9CgogICAgICAkZmlkID0gJGZpbGVpZDsKICAgICAgaWYoICRmaWQgPT0gJycgKQoJewoJICAkZmlkID0gJG5ld2lkOwoJfQogICAgICAkcmVzdWx0MiA9CgkJCQkkbW9kLT5faGFuZGxlVXBsb2FkICgkZGlyLAoJCQkJCQkJCQkJCQkJCSAkaWQuJ2lucHV0X3RodW1ibmFpbCcsZmFsc2UsCgkJCQkJCQkJCQkJCQkJICR0aHVtYl9uYW1lLAoJCQkJCQkJCQkJCQkJCSBmYWxzZSwKCQkJCQkJCQkJCQkJCQkgJHJlcGxhY2VfZXhpc3RpbmcsCgkJCQkJCQkJCQkJCQkJICRmaWxlUHJlZml4KTsKICAgICAgaWYgKCEkcmVzdWx0MlswXSkKCXsKCSAgLy8gdWgtb2gsIHRoZSBzZWNvbmQgdXBsb2FkIGZhaWxlZC4uLi4gbm93IHdlJ3ZlIGdvdHRhIAoJICAvLyBkZWxldGUgdGhlIGZpcnN0IGZpbGUgdG8gYXZvaWQgYW55IGNvcnJ1cHRpb24KCSAgLy8gdG9kbwoJICB1bmxpbmsoICRyZXN1bHRbMV1bJ2RpciddLkRJUkVDVE9SWV9TRVBBUkFUT1IuJHJlc3VsdFsxXVsnbmFtZSddICk7CgkgIHJldHVybiBhcnJheSggRkFMU0UsICRyZXN1bHQyWzFdICk7Cgl9CiAgICB9CiAgZWxzZSAKICAgIHsKICAgICAgLy8gc2VlIGlmIHdlIGNhbiBhdXRvLWNyZWF0ZSBhIHRodW1ibmFpbAogICAgICBpZiggJG1vZC0+R2V0UHJlZmVyZW5jZSgnYXV0b3RodW1ibmFpbF9leHRlbnNpb25zJykgIT0gJycgJiYKCSAgJG1vZC0+R2V0UHJlZmVyZW5jZSgnYXV0b3RodW1ibmFpbF9zaXplJykgIT0gJycgKQoJewoJICAkZmlkID0gJGZpbGVpZDsKCSAgaWYoICRmaWQgPT0gJycgKQoJICAgIHsKCSAgICAgICRmaWQgPSAkbmV3aWQ7CgkgICAgfQoKCSAgJGZpbGVleHRlbnNpb24gPSBzdHJ0b2xvd2VyKHN0cnJjaHIoJGRlc3RuYW1lLCcuJykpOwoJICAkdGh1bWJfZXh0X2FyciA9IGV4cGxvZGUoIiwiLAoJCQkJICAgJG1vZC0+R2V0UHJlZmVyZW5jZSgnYXV0b3RodW1ibmFpbF9leHRlbnNpb25zJykpOwoKCSAgZm9yZWFjaCggJHRodW1iX2V4dF9hcnIgYXMgJHRodW1iX2V4dCApCgkgICAgewoJICAgICAgaWYoICIuIi4kdGh1bWJfZXh0ID09ICRmaWxlZXh0ZW5zaW9uICkKCQl7CgkJICAvLyB3b29ob28sIHdlIGNhbiBjcmVhdGUgYSB0aHVtYm5haWwKCQkgICRkZXN0ID0gJGRpci5ESVJFQ1RPUllfU0VQQVJBVE9SLid0aHVtYl8nLiRkZXN0bmFtZTsKCQkgICRzcmMgID0gJGRpci5ESVJFQ1RPUllfU0VQQVJBVE9SLiRkZXN0bmFtZTsKCQkgICR0aHVtYl9uYW1lID0gJ3RodW1iXycuJGRlc3RuYW1lOwoJCSAgJG1vZC0+aW1hZ2VUcmFuc2Zvcm0oJHNyYywkZGVzdCwKCQkJCQkkbW9kLT5HZXRQcmVmZXJlbmNlKCdhdXRvdGh1bWJuYWlsX3NpemUnKSk7CgkJICBicmVhazsKCQl9CgkgICAgfQoJfQogICAgfQoKICAvLyBhcHBhcmVudGx5IHRoZSB1cGxvYWQgc3VjY2VlZGVkLCBub3cgd2UgaGF2ZSB0byBsb2cgaXQKICAkZGVzYyA9ICIiOwogIGlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfZGVzY3JpcHRpb24nXSApICkKICAgIHsKICAgICAgJGRlc2MgPSAkcGFyYW1zWydpbnB1dF9kZXNjcmlwdGlvbiddOwogICAgfQoKICAkYXVkaXRfbXNnID0gJyc7CiAgaWYoICRmaWxlaWQgPT0gJycgKQogICAgewogICAgICAkcXVlcnkgPQogICAgCSJJTlNFUlQgSU5UTyAiLmNtc19kYl9wcmVmaXggKCkuIm1vZHVsZV91cGxvYWRzIAogICAgICAgICAgICh1cGxvYWRfaWQsdXBsb2FkX2NhdGVnb3J5X2lkLHVwbG9hZF9uYW1lLHVwbG9hZF9hdXRob3IsCiAgICAgICAgICAgIHVwbG9hZF9zdW1tYXJ5LHVwbG9hZF9kZXNjcmlwdGlvbix1cGxvYWRfaXAsdXBsb2FkX3NpemUsCiAgICAgICAgICAgIHVwbG9hZF9kYXRlLCB1cGxvYWRfa2V5LCB1cGxvYWRfdGh1bWJuYWlsKQogICAgICAgICAgIFZBTFVFUyAoPyw/LD8sPyw/LD8sPyw/LD8sPyw/KSI7CiAgICAgICRkYnJlc3VsdCA9CgkJCQkkZGItPkV4ZWN1dGUgKCRxdWVyeSwKCQkJCQkJCQkJCQlhcnJheSAoJG5ld2lkLAoJCQkJCQkJCQkJCQkJCSAkcm93Wyd1cGxvYWRfY2F0ZWdvcnlfaWQnXSwKCQkJCQkJCQkJCQkJCQkgJGRlc3RuYW1lLCAKCQkJCQkJCQkJCQkJCQkgJHBhcmFtc1snaW5wdXRfYXV0aG9yJ10sCgkJCQkJCQkJCQkJCQkJICRwYXJhbXNbJ2lucHV0X3N1bW1hcnknXSwKCQkJCQkJCQkJCQkJCQkgJGRlc2MsCgkJCQkJCQkJCQkJCQkJIGdldGVudiAoIlJFTU9URV9BRERSIiksIAoJCQkJCQkJCQkJCQkJCSAkcmVzdWx0WzFdWydzaXplJ10sCgkJCQkJCQkJCQkJCQkJIHRyaW0oJGRiLT5EQlRpbWVTdGFtcCAodGltZSAoKSksIiciKSwKCQkJCQkJCQkJCQkJCQkgJGtleSwKCQkJCQkJCQkJCQkJCQkgJHRodW1iX25hbWUKCQkJICAgICApKTsKICAgICAgJGF1ZGl0X21zZyA9ICRtb2QtPmxhbmcoJ3VwbG9hZGVkJywgYXJyYXkoJGRlc3RuYW1lLCAkcGFyYW1zWydpbnB1dF9hdXRob3InXSkpOwogICAgfQogIGVsc2UKICAgIHsKICAgICAgJHF1ZXJ5ID0gIlVQREFURSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHMKICAgICAgICAgICBTRVQgdXBsb2FkX25hbWUgPSA/LCB1cGxvYWRfYXV0aG9yID0gPywKICAgICAgICAgICAgICAgdXBsb2FkX3N1bW1hcnkgPSA/LCB1cGxvYWRfZGVzY3JpcHRpb24gPSA/LAogICAgICAgICAgICAgICB1cGxvYWRfaXAgPSA/LCB1cGxvYWRfc2l6ZSA9ID8sIHVwbG9hZF9kYXRlID0gPywKICAgICAgICAgICAgICAgdXBsb2FkX2tleSA9ID8sIHVwbG9hZF90aHVtYm5haWwgPSA/CiAgICAgICAgICAgV0hFUkUgdXBsb2FkX2lkID0gPyI7CiAgICAgICRkYnJlc3VsdCA9CgkJCQkkZGItPkV4ZWN1dGUoICRxdWVyeSwKCQkJCQkJCQkJCQlhcnJheSggJGRlc3RuYW1lLAoJCQkJCQkJCQkJCQkJCSAkcGFyYW1zWydpbnB1dF9hdXRob3InXSwKCQkJCQkJCQkJCQkJCQkgJHBhcmFtc1snaW5wdXRfc3VtbWFyeSddLAoJCQkJCQkJCQkJCQkJCSAkZGVzYywKCQkJCQkJCQkJCQkJCQkgZ2V0ZW52KCAiUkVNT1RFX0FERFIiICksCgkJCQkJCQkJCQkJCQkJICRyZXN1bHRbMV1bJ3NpemUnXSwKCQkJCQkJCQkJCQkJCQkgdHJpbSgkZGItPkRCVGltZVN0YW1wKHRpbWUoKSksIiciKSwKCQkJCQkJCQkJCQkJCQkgJGtleSwKCQkJCQkJCQkJCQkJCQkgJHRodW1iX25hbWUsCgkJCQkJCQkJCQkJCQkJICRmaWxlaWQpKTsKCQkJCiAgICAgICRuZXdpZCA9ICRmaWxlaWQ7CiAgICAgICRhdWRpdF9tc2cgPSAkbW9kLT5sYW5nKCdyZXBsYWNlZCcsICRkZXN0bmFtZSwgJHBhcmFtc1snaW5wdXRfYXV0aG9yJ10pOwogICAgfQoJaWYoICEkZGJyZXN1bHQgKQoJCXsKICAgICAgcmV0dXJuIGFycmF5KCBGQUxTRSwgJG1vZC0+TGFuZygnZXJyb3JfZGJlcnJvcicpICk7CgkJfQoKICAvLyBkbyBjdXN0b20gZmllbGRzLgogICRpcXVlcnkgPSAnSU5TRVJUIElOVE8gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzX2ZpZWxkdmFscyAKICAgICAgICAgICAgICAgICAodXBsb2FkX2lkLCBmbGRfaWQsIHZhbHVlKSBWQUxVRVMgKD8sPyw/KSc7CiAgZm9yZWFjaCggJHBhcmFtcyBhcyAka2V5ID0+ICR2YWx1ZSApCiAgICB7CiAgICAgIGlmKCAhc3RhcnRzd2l0aCgka2V5LCdmaWVsZF8nKSApCgl7CgkgIGNvbnRpbnVlOwoJfQoKICAgICAgJGZpZWxkX2lkID0gKGludClzdWJzdHIoJGtleSw2KTsKICAgICAgaWYoIGlzX2FycmF5KCAkdmFsdWUgKSApCgl7CgkgICR2YWx1ZSA9IGltcGxvZGUoJywnLCR2YWx1ZSk7Cgl9CiAgICAgICRkYi0+RXhlY3V0ZSgkaXF1ZXJ5LGFycmF5KCRuZXdpZCwkZmllbGRfaWQsJHZhbHVlKSk7CiAgICB9CgogICRtb2QtPkF1ZGl0KCAwLCAkbW9kLT5sYW5nKCdmcmllbmRseW5hbWUnKSwkYXVkaXRfbXNnICk7CgogIC8vIHRoYXQgc2hvdWxkIGRvIHRoZSB0cmljawogIC8vIG5vdyBtYXliZSB3ZSdsbCBzZW5kIGFuIGVtYWlsCiAgJHRvX2FkZHJlc3MgPSAkbW9kLT5HZXRQcmVmZXJlbmNlKCdzZW5kX3VwbG9hZF9ub3RpZmljYXRpb25zX3RvJyk7CiAgaWYoICR0b19hZGRyZXNzICYmICR0b19hZGRyZXNzICE9ICcnICkKICAgIHsKICAgICAgLy8gZmlsbCBvdXQgdGhlIHRlbXBsYXRlLCBhbmQgc2VuZCBhbiBlbWFpbAogICAgICAkY21zbWFpbGVyID0gJG1vZC0+R2V0TW9kdWxlSW5zdGFuY2UoICdDTVNNYWlsZXInICk7CiAgICAgIGlmKCAhJGNtc21haWxlciApCgl7CgkgIC8vIHdlJ3JlIG5vdCBnb25uYSByZXR1cm4gYW4gZXJyb3IsIGJ1dCBwdXQKCSAgLy8gYSBtZXNzYWdlIGludG8gdGhlIGFkbWluIGxvZwoJICAkbW9kLT5BdWRpdCggMCwgJG1vZC0+TGFuZygnZnJpZW5kbHluYW1lJyksCgkJCSRtb2QtPkxhbmcoJ2Vycm9yX25vbWFpbGVybW9kdWxlJykpOwoJfQogICAgICBlbHNlCgl7CgkgICRtb2QtPnNtYXJ0eS0+YXNzaWduKCduYW1lJywgJGRlc3RuYW1lICk7CgkgICRtb2QtPnNtYXJ0eS0+YXNzaWduKCdzaXplJywgJHJlc3VsdFsxXVsnc2l6ZSddICk7CgkgICRtb2QtPnNtYXJ0eS0+YXNzaWduKCdzdW1tYXJ5JywgJHBhcmFtc1snaW5wdXRfc3VtbWFyeSddICk7CgkgICRtb2QtPnNtYXJ0eS0+YXNzaWduKCdkZXNjcmlwdGlvbicsICRkZXNjICk7CgkgICRtb2QtPnNtYXJ0eS0+YXNzaWduKCdhdXRob3InLCAkcGFyYW1zWydpbnB1dF9hdXRob3InXSApOwoJICAkbW9kLT5zbWFydHktPmFzc2lnbignaXBfYWRkcmVzcycsIGdldGVudiAoIlJFTU9URV9BRERSIikgKTsKCSAgJGJvZHkgPSAkbW9kLT5Qcm9jZXNzVGVtcGxhdGVGcm9tRGF0YWJhc2UoJ3VwbG9hZF9lbWFpbHRlbXBsYXRlJyk7CgkgICR0bXAgPSBleHBsb2RlKCcsJywkdG9fYWRkcmVzcyk7CgkgIGZvcmVhY2goICR0bXAgYXMgJG9uZSApCgkgICAgewoJICAgICAgJGNtc21haWxlci0+QWRkQWRkcmVzcyggJG9uZSApOwoJICAgIH0KCSAgJGNtc21haWxlci0+U2V0Qm9keSggJGJvZHkgKTsKCSAgJGNtc21haWxlci0+SXNIVE1MKHRydWUpOwoJICAkY21zbWFpbGVyLT5TZXRTdWJqZWN0KCRtb2QtPkxhbmcoJ3VwbG9hZF9ub3RpZmljYXRpb24nKSk7CgkgICRjbXNtYWlsZXItPlNlbmQoKTsKCX0KICAgIH0KCgogIC8vIHVwZGF0ZSBzZWFyY2ggd29yZHMKICAkc2VhcmNoID0mICRtb2QtPkdldE1vZHVsZUluc3RhbmNlKCdTZWFyY2gnKTsKICBpZiAoJHNlYXJjaCAhPSBGQUxTRSkKICAgIHsKICAgICAgJHN0ciA9ICRkZXN0bmFtZS4nICcuJHBhcmFtc1snaW5wdXRfYXV0aG9yJ10uJyAnLgoJJHBhcmFtc1snaW5wdXRfc3VtbWFyeSddLiRkZXNjOwogICAgICAkc2VhcmNoLT5BZGRXb3JkcyggJG1vZC0+R2V0TmFtZSgpLCAkbmV3aWQsICd1cGxvYWQnLCAkc3RyICk7CiAgICB9CgogIC8vIHNlbmQgYW4gZXZlbnQKICAkcGFybXMgPSBhcnJheSgpOwogICRwYXJtc1snY2F0ZWdvcnknXSA9ICRjYXRlZ29yeV9uYW1lOwogICRwYXJtc1snbmFtZSddID0gJGRlc3RuYW1lOwogICRwYXJtc1snc2l6ZSddID0gJHJlc3VsdFsxXVsnc2l6ZSddOwogICRwYXJtc1snc3VtbWFyeSddID0gJHBhcmFtc1snaW5wdXRfc3VtbWFyeSddOwogICRwYXJtc1snZGVzY3JpcHRpb24nXSA9ICRkZXNjOwogICRwYXJtc1snYXV0aG9yJ10gPSAkcGFyYW1zWydpbnB1dF9hdXRob3InXTsKICAkcGFybXNbJ2lwX2FkZHJlc3MnXSA9IGdldGVudigiUkVNT1RFX0FERFIiKTsKICAkbW9kLT5TZW5kRXZlbnQoICJPblVwbG9hZCIsICRwYXJhbXMgKTsKCiAgaWYoICRmaWxlaWQgPT0gJycgKQogICAgewogICAgICByZXR1cm4gYXJyYXkoIFRSVUUsICRuZXdpZCwgJGRlc3RuYW1lICk7CiAgICB9CiAgcmV0dXJuIGFycmF5KCBUUlVFLCAkZmlsZWlkLCAkZGVzdG5hbWUgKTsKfQoKCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgX2hhbmRsZVVwbG9hZCggJGRlc3REaXIsIGZpZWxkTmFtZSwgJG5hbWVDYWxsYmFjICkKICAgTk9UIFBBUlQgT0YgVEhFIE1PRFVMRSBBUEkKCiAgIFRoaXMgbWV0aG9kIGhhbmRsZXMgdmFsaWRhdGluZyB0aGUgdXBsb2FkIHBhcmFtZXRlcnMsIGFuZCBjb3B5aW5nCiAgIHRoZSBmaWxlIGZyb20gaXQncyB0ZW1wb3JhcnkgbG9jYXRpb24gdG8gaXQncyBwZXJtYW5lbnQgbG9jYXRpb24uCiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCmZ1bmN0aW9uIF91cGxvYWRzX2hhbmRsZVVwbG9hZCAoJiRtb2QsICRkZXN0RGlyLCAKCQkJCQkJCQkJCQkJCQkJCSRmaWVsZE5hbWUgPSAnX3VwbG9hZCcsICRuYW1lQ2FsbGJhY2sgPSBmYWxzZSwKCQkJCQkJCQkJCQkJCQkJCSRkZXN0bmFtZSA9ICcnLCRlbmZvcmNlZXh0ZW5zaW9uID0gdHJ1ZSwKCQkJCQkJCQkJCQkJCQkJCSRyZXBsYWNlX2V4aXN0aW5nID0gZmFsc2UsCgkJCQkJCQkJCQkJCQkJCQkkZmlsZW5hbWVQcmVmaXgpCnsKICAvL21ha2Ugc3VyZSBzb21ldGhpbmcgaXMgdGhlcmUKICBpZiAoIWlzc2V0ICgkX0ZJTEVTWyRmaWVsZE5hbWVdKSB8fCAhaXNzZXQgKCRfRklMRVMpCiAgICAgIHx8ICFpc19hcnJheSAoJF9GSUxFU1skZmllbGROYW1lXSkgfHwgISRfRklMRVNbJGZpZWxkTmFtZV1bJ25hbWUnXSkKICAgIHsKICAgICAgcmV0dXJuIGFycmF5IChmYWxzZSwgJG1vZC0+TGFuZygnZXJyb3Jfbm9maWxlc3VwbG9hZGVkJykpOwogICAgfQoKICAvL25vcm1hbGl6ZSB0aGUgZmlsZSB2YXJpYWJsZQogICRmaWxlID0gJF9GSUxFU1skZmllbGROYW1lXTsKICBpZiAoIWlzc2V0ICgkZmlsZVsndHlwZSddKSkKICAgICRmaWxlWyd0eXBlJ10gPSAnJzsKICBpZiAoIWlzc2V0ICgkZmlsZVsnc2l6ZSddKSkKICAgICRmaWxlWydzaXplJ10gPSAnJzsKICBpZiAoIWlzc2V0ICgkZmlsZVsndG1wX25hbWUnXSkpCiAgICAkZmlsZVsndG1wX25hbWUnXSA9ICcnOwogICRmaWxlWyduYW1lJ10gPQogICAgcHJlZ19yZXBsYWNlKCcvW15hLXpBLVowLTlcLlwkXCVcJ1xgXC1cQFx7XH1cflwhXCNcKFwpXCZcX1xeXS8nLCAnJywKCQkgc3RyX3JlcGxhY2UgKGFycmF5ICgnICcsICclMjAnKSwgYXJyYXkgKCdfJywgJ18nKSwgJGZpbGVbJ25hbWUnXSkpOwoKICAvLyB2YWxpZGF0ZSB0aGUgZmlsZW5hbWUKICBpZiAoISRtb2QtPl9pc1ZhbGlkRmlsZW5hbWUgKCRmaWxlWyduYW1lJ10pKQogICAgewogICAgICByZXR1cm4gYXJyYXkgKGZhbHNlLCAkbW9kLT5MYW5nICgnZXJyb3JfaW52YWxpZHVwbG9hZGZpbGVuYW1lJywkZmlsZVsnbmFtZSddKSk7CiAgICB9CgogIC8vd2FzIGl0IHRvIGJpZz8KCWdsb2JhbCAkZ0NtczsKCSRtYXhGaWxlU2l6ZSA9ICRnQ21zLT5jb25maWdbJ21heF91cGxvYWRfc2l6ZSddOwogIGlmICgkZmlsZVsnc2l6ZSddID4gJG1heEZpbGVTaXplKQogICAgcmV0dXJuIGFycmF5IChmYWxzZSwgJG1vZC0+TGFuZyAoJ2Vycm9yX2ZpbGV0b29sYXJnZScpKTsKCiAgLy9ub3JtYWxpemUgZGVzdERpcgogIGlmIChzdHJsZW4gKCRkZXN0RGlyKSA+IDAgJiYgJGRlc3REaXJbc3RybGVuICgkZGVzdERpcikgLSAxXSAhPSAiLyIpCiAgICAkZGVzdERpciA9ICRkZXN0RGlyLicvJzsKCiAgLy8gZ2V0IHRoZSBkZXN0aW5hdGlvbiBuYW1lCiAgaWYoICRkZXN0bmFtZSA9PSAnJyApIHsKICAgICRkZXN0bmFtZSA9ICRmaWxlWyduYW1lJ107CiAgfQoJLy8gYW5kIG9wdGlvbmFsbHkgYWRkIGEgcHJlZml4CgkkZGVzdG5hbWUgPSAkZmlsZW5hbWVQcmVmaXguJGRlc3RuYW1lOwogICAgCiAgLy9zaG91bGQgd2UgY2hhbmdlIHRoZSBmaWxlbmFtZSB2aWEgYSBjYWxsYmFjaz8KICBpZiAoJG5hbWVDYWxsYmFjaykKICAgIHsKICAgICAgJGRlc3RuYW1lID0KCQkJCWNhbGxfdXNlcl9mdW5jX2FycmF5ICgkbmFtZUNhbGxiYWNrLCBhcnJheSAoJGZpbGUsICRkZXN0RGlyKSk7CiAgICB9CgogIC8vIGFuZCBjbGVhbiBpdCB1cAogICRkZXN0bmFtZSA9IAogICAgcHJlZ19yZXBsYWNlKCcvW15hLXpBLVowLTlcLlwkXCVcJ1xgXC1cQFx7XH1cflwhXCNcKFwpXCZcX1xeXS8nLCAnJywKCQkgc3RyX3JlcGxhY2UgKGFycmF5ICgnICcsICclMjAnKSwgYXJyYXkgKCdfJywgJ18nKSwgJGRlc3RuYW1lKSk7CgogIGlmKCAkcmVwbGFjZV9leGlzdGluZyA9PSBmYWxzZSApCiAgICB7CiAgICAgIGlmKCBmaWxlX2V4aXN0cyggJGRlc3REaXIuJGRlc3RuYW1lICkgJiYgJHJlcGxhY2VfZXhpc3RpbmcgPT0gZmFsc2UgKSB7CglyZXR1cm4gYXJyYXkoIGZhbHNlLCAkbW9kLT5MYW5nKCAnZXJyb3JfZmlsZWV4aXN0cycsICRkZXN0RGlyLiRkZXN0bmFtZSApKTsKICAgICAgfQogICAgfQogIGVsc2UKICAgIHsKICAgICAgLy8gcmVwbGFjaW5nIGFuIGV4aXN0aW5nIGZpbGUKICAgICAgLy8gZGVsZXRlIGl0IGZpcnN0LCBzbyB0aGUgY29weSB3aWxsIHN1Y2NlZWQuCiAgICAgIEB1bmxpbmsoJGRlc3REaXIuJGRlc3RuYW1lKTsKICAgIH0KCiAgLy9hbmQgbm93IHRoZSBiaWcgbW9tZW50CiAgaWYgKCFAY29weSAoJGZpbGVbJ3RtcF9uYW1lJ10sICRkZXN0RGlyLiRkZXN0bmFtZSkpCiAgICB7CiAgICAgIHJldHVybiBhcnJheSAoZmFsc2UsCgkJICAgICRtb2QtPkxhbmcgKCdlcnJvcl9jb3VsZG5vdHdyaXRlJykuCgkJICAgICc6Jm5ic3A7Jy4kZmlsZVsnbmFtZSddLiIgLT4gIi4kZGVzdERpciAuICRkZXN0bmFtZSAuICIgIi4KCQkgICAgJG1vZC0+TGFuZyAoJ2Vycm9yX3Blcm1pc3Npb25kZW5pZWQnKSk7CiAgICB9CiAgZWxzZQogICAgewogICAgICByZXR1cm4gYXJyYXkgKHRydWUsIGFycmF5KCduYW1lJyA9PiAkZGVzdG5hbWUsICdzaXplJyA9PiAkZmlsZVsnc2l6ZSddLAoJCQkJJ2RpcicgPT4gJGRlc3REaXIgKSk7CiAgICB9Cn0KCgojCiMgRU9GCiMKPz4=]]></data>
	</file>
	<file>
	  <filename>/images/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/images/clock_link.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAANTSURBVDjLTZJtTFNXGMdvlpgl27Jvi5/2meyLWZbFGBdBBqJpi0njEtzEJUZa7LBGrARwTkvZFFpqodmKMC0CCrG1jSJqfCktl65YkUKtIFVKl6KzlVZa2vJShP/OOXHNbvK7ee5znv/v3HtyOQBc6hb3AUFJ8BIeET6k/f9Dehvfr7sJOf/1uXkrt4GgTo3se5mJ2pEYKY24+4qdxx9kHITYexwP+8T8wpgsujh5Mkbm3YTPmSDSy/2ccO9/tRK+hbnhA/OPTVuTDc4ofh+J4OL4awatz/EzGDd9lY776tLJccUbkhslbOBmL3G/LHhPxsJDB+Zdl7eu6odDuOr9Bz383zBYJ6A3T+CSbQY9Yy9hHLTjWd/OtcVZ87vw9S/8JJvDBdq4bVPtH/n/urAprbbPoNcdgtUexPRsAtFEEnOJFPyhBLrvTcM4FMTVG03w9mxZnmz/1EOyOewgjl+8qam2+NDuDMJEdqPX23gcz1+9xhKpKcl14Hz/NAyOFzhl4vFTh+s3dgb0tq9t1FF1zYfzd/yYJDunV9eRTKfxh7EDESJaWF6G5e4A+OdxnDU9AZ2lmazgu2Y+VtnjQeMVLyKLGbxdXsMKWahV1uGy9QaqT9fhnssNXzyDYwY36CzNZAW7z96JSS+4oewYQyiZIZI1zMYX8GuTloX5sSeYWwUeRzOQNw+DztJMVrDr1DXHXp0ddd2juP80DMvt+9CQsNFoREOjGqOBIJ6GE6hv0LCe6kwjflA0BnJzcz9mgvyqTqVAeR1H2oZwqFqLlpYWhMNhBAIBDA4OQkeeDe1/YnLKz3pOp5PNiEQiNRN8Izd8TZjYLtVAUVUDj8+HE6frUVxcDIlEAr1ej9raWlYLRSKI9x9KUolCoYhn//XNkqZy4V5JRqmqZ4KjzTbkF+yAzWaDx+MBz/OwWCzI/7YQWw6ekVOBSqVaygpcLle+TqfDYbmcCQTfy8hwAYqKiiAWixm0LiwsRGlp6SMqKC8vn2fh/v7+zwjJgYEBuvhOrWla6r7Su2q1WtHa2orKykrU1NSwmvbMZjO0Wm2CfOIzJujq6vqEMNXZ2bkik8n2CASCYFlZWaqiomKJsFJSUvIjoYDUKTl5Q6lUui4UCkN5eXlf/gvG8MXqEEqGrAAAAABJRU5ErkJggg==]]></data>
	</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[PD9waHAKJGxhbmdbJ3Byb21wdF90bF9hY2Nlc3MnXSA9ICdUaW1lIExpbWl0ZWQgQWNjZXNzJzsKJGxhbmdbJ3Byb21wdF9hbGxvd191cGxvYWRfc2VuZGZpbGUnXSA9ICdBbGxvdyBzZW5kaW5nIGZpbGVzIGltbWVkaWF0ZWx5IG9uIGFkbWluIHVwbG9hZCc7CiRsYW5nWydtc2dfYXV0b19kZWxldGVfZmlsZSddID0gJ0F1dG9tYXRpY2FsbHkgZGVsZXRlZCBleHBpcmVkIGZpbGU6ICVzJzsKJGxhbmdbJ21zZ19hdXRvX2RlbGV0ZV9maWxlX2ZhaWxlZCddID0gJ1Blcm1pc3Npb25zIHByb2JsZW0sIGF1dG8gZGVsZXRlIG9mICVzIGZhaWxlZCc7CiRsYW5nWydpbmZvX2NhdGVnb3J5X2V4cGlyZXNfaHJzJ10gPSAnU3BlY2lmeSBhIG51bWJlciBvZiBob3VycyBiZWZvcmUgZmlsZXMgaW4gdGhpcyBjYXRlZ29yeSBjYW4gYmUgZGVsZXRlZC4gIFVzZSBhIHZhbHVlIG9mIDAgdG8gaW5kaWNhdGUgdGhhdCBmaWxlcyBzaG91bGQgbm90IGJlIGRlbGV0ZWQnOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5X2V4cGlyZXNfaHJzJ10gPSAnTnVtYmVyIG9mIGhvdXJzIHVudGlsIGZpbGVzIGluIHRoaXMgY2F0ZWdvcnkgYXJlIGF1dG9tYXRpY2FsbHkgZGVsZXRlZCc7CiRsYW5nWydpbmZvX2RmbHRfY2F0ZWdvcnlfZXhwaXJ5J10gPSAnVGhlIGRlZmF1bHQgdmFsdWUgZm9yIG5ldyBjYXRlZ29yaWVzIHRoYXQgc3BlY2lmaWVzIGhvdyBsb25nIGZpbGVzIGluIHRoaXMgY2F0ZWdvcnkgZXhpc3QgYmVmb3JlIHRoZXkgYXJlIGF1dG9tYXRpY2FsbHkgZGVsZXRlZC4gIFVzZSBhIHZhbHVlIG9mIDAgdG8gaW5kaWNhdGUgbm8gZGVsZXRpb24nOwokbGFuZ1sndGl0bGVfY2F0ZWdvcnlfZXhwaXJ5J10gPSAnQ2F0ZWdvcnkgZXhwaXJ5IHBlcmlvZCA8ZW0+KGhycyk8L2VtPic7CiRsYW5nWydpbmZvX2NhdGVnb3J5ZGVsZXRhYmxlJ10gPSAnQXV0aG9yaXplZCB1c2VycyB3aWxsIGhhdmUgcGVybWlzc2lvbiB0byBkZWxldGUgdGhlc2UgZmlsZXMuICBUaGlzIG1lYW5zIHRoYXQgYSB1cmwgd2lsbCBiZSBwcm92aWRlZCBpbiB0aGUgYXBwcm9wcmlhdGUgdGVtcGxhdGVzIHRvIGFsbG93IGRlbGV0aW5nIG9mIHRoZSBmaWxlLiAgQSB3ZWJzaXRlIGRldmVsb3BlciBjYW4gdXNlIGFwcHJvcHJpYXRlIHNtYXJ0eSBsb2dpYyB0byBzaG93IGEgbGluayB0byBhdXRob3JpemVkIHVzZXJzLic7CiRsYW5nWydjb3B5X2ZpbGVzJ10gPSAnQ29weSBGaWxlcyc7CiRsYW5nWydlcnJvcl9maWxldG9vbGFyZ2UnXSA9ICdUaGUgZmlsZSB5b3UgYXR0ZW1wdGVkIHRvIHVwbG9hZGUgaXMgbGFyZ2VyIHRoYW4gdGhlIENNU01TIG1heGltdW0gdXBsb2FkIGZpbGUgc2l6ZSc7CiRsYW5nWydhcmV5b3VzdXJlX2RlbGV0ZWNhdGVnb3J5J10gPSAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSB0aGlzIGNhdGVnb3J5Pyc7CiRsYW5nWydlcnJvcl9kZWxldGUnXSA9ICdBbiBpdGVtIGNvdW5kIG5vdCBiZSBkZWxldGVkICglcyknOwokbGFuZ1snY29uZmlybV9jYXRfbXVsdGlhY3Rpb24nXSA9ICJBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gcGVyZm9ybSB0aGlzIGFjdGlvbiBvbiB0aGUgc2VsZWN0ZWQgY2F0ZWdvcmllcz8iOwokbGFuZ1snZXJyb3Jfbm90aGluZ19zZWxlY3RlZCddID0gJ0Vycm9yOiBOb3RoaW5nIHNlbGVjdGVkJzsKJGxhbmdbJ3dpdGhfc2VsZWN0ZWQnXSA9ICdXaXRoIFNlbGVjdGVkOic7CiRsYW5nWydlcnJvcl9yZXBsYWNlX21pc21hdGNoZWRfZmlsZWV4dCddID0gJ1doZW4gcmVwbGFjaW5nIGEgZmlsZSwgeW91IG11c3QgdXBsb2FkIGEgZmlsZSBvZiB0aGUgc2FtZSBleGFjdCB0eXBlIChieSBmaWxlIGV4dGVuc2lvbikuICBUaGUgZmlsZSB5b3Ugc2VsZWN0ZWQgZG9lcyBub3QgbWF0Y2ggdGhhdCBvZiB0aGUgb3JpZ2luYWwgZmlsZS4nOwokbGFuZ1sncmVwbGFjZSddID0gJ1JlcGxhY2UnOwokbGFuZ1snaW5mb19yZXBsYWNlZmlsZSddID0gJ1lvdSBtYXkgdXBsb2FkIGEgcmVwbGFjZW1lbnQgZmlsZSwgaWYgdGhlIGZpbGUgaXMgYW4gaW1hZ2UgdHlwZSwgYW5kIHlvdSBoYXZlIG5vdCBzcGVjaWZpZWQgYSByZXBsYWNlbWVudCB0aHVtYm5haWwsIGEgbmV3IHRodW1ibmFpbCB3aWxsIGJlIGdlbmVyYXRlZCc7CiRsYW5nWydwcm9tcHRfcmVwbGFjZWZpbGUnXSA9ICdVcGxvYWQgcmVwbGFjZW1lbnQgZmlsZSc7CiRsYW5nWyd0aXRsZV9maXhzcGFjZXMnXSA9ICdGaXggc3BhY2VzIGluIHRoZSBmaWxlbmFtZSc7CiRsYW5nWydjYXRlZ29yeV9jb3BpZWQnXSA9ICdDYXRlZ29yeSBzdWNjZXNzZnVsbHkgY29waWVkJzsKJGxhbmdbJ2Vycm9yX2R1cGxpY2F0ZXBhdGgnXSA9ICdQbGVhc2Ugc3BlY2lmeSBhIGRpcmVjdG9yeSBuYW1lIHRoYXQgaXMgZGlmZmVyZW50IGZyb20gdGhlIHNvdXJjZSwgYW5kIGlzIG5vdCBhbHJlYWR5IGluIHVzZSc7CiRsYW5nWydvcGVyYXRpb25fY2FuY2VsbGVkJ10gPSAnT3BlcmF0aW9uIENhbmNlbGxlZCc7CiRsYW5nWydzb3VyY2UnXSA9ICdTb3VyY2UnOwokbGFuZ1snZGVzdGluYXRpb24nXSA9ICdEZXN0aW5hdGlvbic7CiRsYW5nWydwcm9tcHRfY29weV9maWxlcyddID0gJ0NvcHkgY2F0ZWdvcnkgRmlsZXMnOwokbGFuZ1snaW5mb19jb3B5X2ZpbGVzJ10gPSAnQ29weSB0aGUgZmlsZXMgZnJvbSB0aGUgc291cmNlIGNhdGVnb3J5IHRvIHRoZSBkZXN0aW5hdGlvbiBjYXRlZ29yeSc7CiRsYW5nWydleHRyYSddID0gJ0V4dHJhJzsKJGxhbmdbJ2NvcHknXSA9ICdDb3B5JzsKJGxhbmdbJ3NlbGVjdG9uZSddID0gJ1NlbGVjdCBPbmUnOwokbGFuZ1snYXV0b3dhdGVybWFyayddID0gJ0F1dG9tYXRpY2FsbCBwbGFjZSB3YXRlcm1hcmtzIG9uIGltYWdlcyc7CiRsYW5nWydpbWFnZV9zZXR0aW5ncyddID0gJ0ltYWdlIFNldHRpbmdzJzsKJGxhbmdbJ3Byb21wdF9nZXRmaWxlX3Jlc3VsdHBhZ2UnXSA9ICdQYWdlIHRvIHVzZSBmb3IgZXJyb3JzIG9yIG90aGVyIG1lc3NhZ2VzIHJlbGF0ZWQgdG8gZmlsZSBkb3dubG9hZGluZyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkX2tleSddID0gJ1RoZSB1cGxvYWQga2V5IHNwZWNpZmllZCBpcyBpbnZhbGlkIChtYXliZSBpdCBoYXMgcmVhY2hlZCBpdHMgbWF4aW11bSBkb3dubG9hZCBjYXBhY2l0eSBvciBoYXMgZXhwaXJlZCknOwokbGFuZ1snZGZsdF90aW1lbGltaXRlZF9zdWJqZWN0J10gPSAneyRzaXRlbmFtZX0gLSBZb3UgaGF2ZSBiZWVuIGdyYW50ZWQgYWNjZXNzIHRvIHskZW50cnktPm5hbWV8c3RyaXBfdGFnc30gZm9yIGEgbGltaXRlZCB0aW1lJzsKJGxhbmdbJ3Byb21wdF90aW1lbGltaXRlZF9zdWJqZWN0J10gPSAnU3ViamVjdCBmb3IgZW1haWwgY3JlYXRlZCB3aGVuIHNlbmRpbmcgYSB0aW1lIGxpbWl0ZWQgVVJMJzsKJGxhbmdbJ3Byb21wdF90aW1lbGltaXRlZF9hdXRvZGVsZXRlJ10gPSAnQXV0byBkZWxldGUgZXhwaXJlZCBlbnRyaWVzIGFmdGVyIE4gaG91cnMgPGVtPihzcGVjaWZ5IDAgdG8gZGlzYWJsZSBhdXRvZGVsZXRlKTwvZW0+Oic7CiRsYW5nWydwcm9tcHRfdGltZWxpbWl0ZWRfc2VuZGl0J10gPSAnU2VuZCB0aGlzIHVybCB0byB0aGUgZGVzaWduYXRlZCBlbWFpbCBhZGRyZXNzPyc7CiRsYW5nWyd1cmxfa2V5J10gPSAnVVJMIEtleSc7CiRsYW5nWydjcmVhdGVkJ10gPSAnQ3JlYXRlZCc7CiRsYW5nWydleHBpcmVzJ10gPSAnRXhwaXJlcyc7CiRsYW5nWydhZGRlZGl0X3RpbWVsaW1pdGVkX2tleSddID0gJ0FkZC9FZGl0IFRpbWUgTGltaXRlZCBLZXknOwokbGFuZ1sndGltZV9saW1pdGVkX2tleV9hZGRlZCddID0gJ1RpbWUgTGltaXRlZCBLZXkgQWRkZWQnOwokbGFuZ1snbnVtX2hvdXJzJ10gPSAnTnVtYmVyIG9mIEhvdXJzJzsKJGxhbmdbJ251bV9kb3dubG9hZHMnXSA9ICdOdW1iZXIgb2YgRG93bmxvYWRzJzsKJGxhbmdbJ2VtYWlsX2FkZHJlc3MnXSA9ICdFbWFpbCBBZGRyZXNzJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdfaW52YWxpZCddID0gJ0EgcmVxdWlyZWQgdmFsdWUgaXMgbWlzc2luZyBvciBpbnZhbGlkOiAlcyc7CiRsYW5nWydhZGRfdGltZWxpbWl0ZWRfa2V5J10gPSAnQWRkIFRpbWUgTGltaXRlZCBLZXknOwokbGFuZ1snZmlsZV9pbmZvMiddID0gJ0ZpbGUgJXMgKGlkPSVkKSc7CiRsYW5nWydpbmZvX3RpbWVsaW1pdGVkX2Rvd25sb2FkcyddPSAnU3BlY2lmeSB0aGUgZGVmYXVsdCBudW1iZXIgb2YgdGltZXMgdGhhdCBhIGZpbGUgaWRlbnRpZmllZCBieSBhIHBhcnRpY3VsYXIga2V5IGNhbiBiZSBkb3dubG9hZGVkJzsKJGxhbmdbJ3Byb21wdF90aW1lbGltaXRlZF9kb3dubG9hZHMnXSA9ICdEZWZhdWx0IE51bWJlciBvZiBEb3dubG9hZHMnOwokbGFuZ1snaW5mb190aW1lbGltaXRlZF9ob3VycyddID0gJ1NwZWNpZnkgdGhlIGRlZmF1bHQgbnVtYmVyIG9mIGhvdXJzIHRoYXQgYSB0aW1lIGxpbWl0ZWQga2V5IGlzIHZhbGlkIGZvci4gIFNwZWNpZnkgMCBmb3IgdW5saW1pdGVkJzsKJGxhbmdbJ3Byb21wdF90aW1lbGltaXRlZF9ob3VycyddID0gJ051bWJlciBvZiBob3VycyBhIFRpbWUgTGltaXRlZCBLZXkgaXMgdmFsaWQgZm9yJzsKJGxhbmdbJ3RpbWVsaW1pdGVkX3VybF9zZXR0aW5ncyddID0gJ1RpbWUgTGltaXRlZCBLZXkgU2V0dGluZ3MnOwokbGFuZ1snbWFuYWdlX3RpbWVsaW1pdGVkJ10gPSAnTWFuYWdlIFRpbWUgTGltaXRlZCBBY2Nlc3MnOwokbGFuZ1sndXBsb2FkaW5nX3NldHRpbmdzJ10gPSAnRmlsZSBVcGxvYWQgU2V0dGluZ3MnOwokbGFuZ1snZ2VuZXJhbF9zZXR0aW5ncyddID0gJ0dlbmVyYWwgU2V0dGluZ3MnOwokbGFuZ1sndGh1bWJuYWlsX3NldHRpbmdzJ10gPSAnVGh1bWJuYWlsIEdlbmVyYXRpb24nOwokbGFuZ1sndGl0bGVfcmVkaXJlY3Rfb25fc2VuZGZpbGUnXSA9ICdQYWdlIHRvIHJlZGlyZWN0IHRvIGFmdGVyIHNlbmRpbmcgYSBmaWxlJzsKJGxhbmdbJ2xibF9iYWNrJ10gPSAnQmFjayc7CiRsYW5nWydsYmxfdGVtcGxhdGVzJ10gPSAnTW9kaWZ5IFRlbXBsYXRlcyc7CiRsYW5nWydwcm9tcHRfcHVibGljX2ZpZWxkJ10gPSAnRmllbGQgaXMgcHVibGljIDxlbT4oY2FuIGJlIHZpZXdlZCBieSBzaXRlIHZpc2l0b3JzKTwvZW0+JzsKJGxhbmdbJ3VwbG9hZF9lZGl0ZWQnXSA9ICdGaWxlIERldGFpbHMgRWRpdGVkIG9uICVzJzsKJGxhbmdbJ2luZm9fdGh1bWJuYWlsJ10gPSAnVXNlIHRoaXMgZmllbGQgdG8gdXBsb2FkIGEgdGh1bWJuYWlsIHRvIGFzc29jaWF0ZSB3aXRoIHRoaXMgZmlsZS4gIFRoaXMgY2FuIGJlIGhhbmR5IGlmIHVwbG9hZGluZyBmaWxlcyBvdGhlciB0aGFuIGltYWdlcyB0aGF0IHRodW1ibmFpbHMgY2Fubm90IGJlIGdlbmVyYXRlZCBmcm9tIGF1dG9tYXRpY2FsbHknOwokbGFuZ1sndXBsb2FkX2ZpbGUnXSA9ICdVcGxvYWQgYSBuZXcgZmlsZSc7CiRsYW5nWydtc2dfZmllbGRfZGVsZXRlZCddID0gJ0ZpZWxkIGRlbGV0ZWQnOwokbGFuZ1snYXNrX2RlbGV0ZV9maWVsZCddID0gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgdGhpcyBmaWVsZCBkZWZpbml0aW9uIGFuZCBhbGwgYXNzb2NpYXRlZCB2YWx1ZXM/JzsKJGxhbmdbJ3llcyddID0gJ1llcyc7CiRsYW5nWydubyddID0gJ05vJzsKJGxhbmdbJ3R5cGUnXSA9ICdUeXBlJzsKJGxhbmdbJ2ZpZWxkdHlwZV9tdWx0aXNlbGVjdCddID0gJ011bHRpc2VsZWN0IExpc3QnOwokbGFuZ1snZmllbGR0eXBlX2Ryb3Bkb3duJ10gPSAnRHJvcGRvd24gTGlzdCc7CiRsYW5nWydmaWVsZHR5cGVfY2hlY2tib3gnXSA9ICdDaGVja2JveCc7CiRsYW5nWydmaWVsZHR5cGVfdGV4dGFyZWEnXSA9ICdUZXh0IEFyZWEnOwokbGFuZ1snZmllbGR0eXBlX3RleHRpbnB1dCddID0gJ1RleHQgSW5wdXQnOwokbGFuZ1sncHJvbXB0X3VzZV93eXNpd3lnJ10gPSAnVXNlIHRoZSB3eXNpd3lnIHdoZW4gZWRpdGluZyB0aGUgdmFsdWUgZm9yIHRoaXMgZmllbGQnOwokbGFuZ1sncHJvbXB0X2RlZmF1bHRfY29udGVudCddID0gJ0RlZmF1bHQgY29udGVudCBmb3IgdGV4dCBhcmVhJzsKJGxhbmdbJ3Byb21wdF9kcm9wZG93bl9vcHRpb25zJ10gPSAnT3B0aW9ucyAob25lIGVudHJ5IHBlciBsaW5lKSc7CiRsYW5nWydwcm9tcHRfZmllbGRfbWF4bGVuZ3RoJ10gPSAnRmllbGQgTWF4aW11bSBMZW5ndGgnOwokbGFuZ1sncHJvbXB0X2ZpZWxkX2xlbmd0aCddID0gJ0ZpZWxkIExlbmd0aCc7CiRsYW5nWydwcm9tcHRfZmllbGRfdHlwZSddID0gJ0ZpZWxkIFR5cGUnOwokbGFuZ1sncHJvbXB0X2ZpZWxkX25hbWUnXSA9ICdGaWVsZCBOYW1lJzsKJGxhbmdbJ3RpdGxlX2FkZF9maWVsZCddID0gJ0FkZCBvciBFZGl0IGEgRmllbGQgRGVmaW5pdGlvbic7CiRsYW5nWydmaWVsZF9kZWZpbml0aW9ucyddID0gJ0ZpZWxkIERlZmluaXRpb25zJzsKJGxhbmdbJ3Byb21wdF9hZGRfZmllbGQnXSA9ICdBZGQgYSBGaWVsZCBEZWZpbml0aW9uJzsKJGxhbmdbJ3BhcmFtX2FjdGlvbiddID0gJ1NwZWNpZmllcyB0aGUgYmVoYXZpb3VyIG9mIHRoZSBtb2R1bGUgdGFnLiAgUG9zc2libGUgdmFsdWVzIGFyZTogZGVmYXVsdCAtICh0aGUgZGVmYWZhdWx0IGJlaGF2aW9yKSwgZGV0YWlsIC0gdG8gZGlzcGxheSBhIGRldGFpbCB2aWV3IG9mIGEgc2luZ2xlIGZpbGUgYmFzZWQgb24gdGhlIHVwbG9hZF9pZCwgYW5kIHlvdXNlbmRpdCAtIHRvIGRpc3BsYXkgYSBmb3JtIHRvIGFsbG93IHVwbG9hZGluZyBhIGZpbGUsIGFuZCBzZW5kaW5nIGl0IHRvIG51bWVyb3VzIGFkZHJlc3NlcyBpbiBvbmUgc3RlcCc7CiRsYW5nWydwYXJhbV9zZW5kZmlsZXBhZ2UnXSA9ICdTcGVjaWZ5IHRoZSBwYWdlIGlkIG9yIGFsaWFzIG9mIGEgcGFnZSB0aGF0IHNob3VsZCBiZSB1c2VkIGZvciB0aGUgc2VuZCBhIGZpbGUgZm9ybSc7CiRsYW5nWydmaWxlX3VwbG9hZGVkJ10gPSAnRmlsZSBTdWNjZXNzZnVsbHkgVXBsb2FkZWQnOwokbGFuZ1sndG8nXSA9ICdUbyc7CiRsYW5nWyd0aXRsZV95b3VzZW5kaXRmb3JtX3RlbXBsYXRlJ10gPSAnQWRkIG9yIEVkaXQgYSAmcXVvdDtZb3UgU2VuZCBJdCZxdW90OyBGb3JtIFRlbXBsYXRlJzsKJGxhbmdbJ3lvdXNlbmRpdGZvcm1fdGVtcGxhdGUnXSA9ICdZb3VTZW5kSXQgRm9ybSBUZW1wbGF0ZXMnOwokbGFuZ1sndGl0bGVfeW91c2VuZGl0Zm9ybV9zeXNkZWZhdWx0J10gPSAnU3lzdGVtIGRlZmF1bHQgJnF1b3Q7eW91IHNlbmQgaXQmcXVvdDsgdGVtcGxhdGUnOwokbGFuZ1snbXNnX2ZpbGVfc2VudCddID0gJ0EgbWVzc2FnZSBoYXMgYmVlbiBzZW50IHRvIHRoZSBzZWxlY3RlZCBhZGRyZXNzZXMgdGhhdCBjb250YWlucyBpbmZvcm1hdGlvbiBhYm91dCB0aGUgZmlsZSBhbmQgaG93IHRvIHJldHJpZXZlIGl0Lic7CiRsYW5nWydlcnJvcl9ub2FkZHJlc3NlcyddID0gJ1lvdSBtdXN0IHN1cHBseSBhdCBsZWFzdCBvbmUgZGVzdGluYXRpb24gYWRkcmVzcyc7CiRsYW5nWydlcnJvcl9ub3N1YmplY3QnXSA9ICdZb3UgbXVzdCBzdXBwbHkgYSBzdWJqZWN0JzsKJGxhbmdbJ3N1YmplY3QnXSA9ICdTdWJqZWN0JzsKJGxhbmdbJ3RpdGxlX3NlbmRmaWxlcGFnZSddID0gJ1BhZ2UgdG8gdXNlIGZvciB0aW1lIGxpbWl0ZWQgb3IgJnF1b3Q7WW91U2VuZEl0JnF1b3Q7IFVSTFMnOwokbGFuZ1snZmlsZV9pbmZvJ10gPSAnRmlsZSBJbmZvJzsKJGxhbmdbJ3NlbmQnXSA9ICdTZW5kJzsKJGxhbmdbJ25vdGVzJ10gPSAnTm90ZXMnOwokbGFuZ1snYWRkcmVzc2VlcyddID0gJ1NlbmQgaW5mb3JtYXRpb24gYWJvdXQgdGhpcyBmaWxlIHRvJzsKJGxhbmdbJ3Byb21wdF9zZW5kZmlsZV9lbWFpbF90ZW1wbGF0ZSddID0gJyZxdW90O1NlbmQgYSBGaWxlJnF1b3Q7IEVtYWlsIFRlbXBsYXRlJzsKJGxhbmdbJ3RpdGxlX3NlbmRmaWxlZm9ybV90ZW1wbGF0ZSddID0gJ0FkZCBvciBFZGl0IGEgJnF1b3Q7U2VuZCBhIEZpbGUmcXVvdDsgRm9ybSBUZW1wbGF0ZSc7CiRsYW5nWydzZW5kZmlsZWZvcm1fdGVtcGxhdGUnXSA9ICcmcXVvdDtTZW5kIGEgRmlsZSZxdW90OyBGb3JtIFRlbXBsYXRlcyc7CiRsYW5nWydwcm9tcHRfbm90aWZ5X2VtYWlsX3RlbXBsYXRlJ10gPSAnRmlsZSB1cGxvYWQgbm90aWZpY2F0aW9uIGVtYWlsIHRlbXBsYXRlJzsKJGxhbmdbJ3RpdGxlX3NlbmRmaWxlZm9ybV9zeXNkZWZhdWx0J10gPSAnU3lzdGVtIGRlZmF1bHQgJnF1b3Q7U2VuZCBhIEZpbGUmcXVvdDsgZm9ybSB0ZW1wbGF0ZSc7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnlkZWxldGFibGUnXSA9ICdGaWxlcyBpbiB0aGlzIGNhdGVnb3J5IGNhbiBiZSBkZWxldGVkJzsKJGxhbmdbJ3RpdGxlX2FsbG93X2RlbGV0ZSddID0gJ0FsbG93IGRlbGV0aW9uIG9mIGZpbGVzIGZyb20gdGhlIGZyb250ZW5kJzsKJGxhbmdbJ2RlZmF1bHRfdGVtcGxhdGVzJ10gPSAnRGVmYXVsdCBUZW1wbGF0ZXMnOwokbGFuZ1snZmlyc3RwYWdlJ10gPSAnRmlyc3QgUGFnZSc7CiRsYW5nWydwcmV2cGFnZSddID0gJ1ByZXZpb3VzIFBhZ2UnOwokbGFuZ1snbmV4dHBhZ2UnXSA9ICdOZXh0IFBhZ2UnOwokbGFuZ1snbGFzdHBhZ2UnXSA9ICdMYXN0IFBhZ2UnOwokbGFuZ1snZmlyc3RwYWdlX2Fycm93J10gPSAnJmx0OyZsdDsnOwokbGFuZ1sncHJldnBhZ2VfYXJyb3cnXSA9ICcmbHQ7JzsKJGxhbmdbJ25leHRwYWdlX2Fycm93J10gPSAnJmd0Oyc7CiRsYW5nWydsYXN0cGFnZV9hcnJvdyddID0gJyZndDsmZ3Q7JzsKJGxhbmdbJ3BhZ2UnXSA9ICdQYWdlJzsKJGxhbmdbJ29mJ10gPSAnb2YnOwokbGFuZ1sncHJvbXB0X2dyb3VwbGlzdCddID0gJ0F1dGhvcml6ZWQgRkVVIEdyb3Vwcyc7CiRsYW5nWydpbmZvX2dyb3VwbGlzdCddID0gJ1NlbGVjdCB0aGUgRkVVIGdyb3VwcyB0aGF0IGFyZSBhbGxvd2VkIGFjY2VzcyB0byBmaWxlcyBpbiB0aGlzIGNhdGVnb3J5LiAgRGVzZWxlY3QgYWxsIGVudHJpZXMgdG8gYWxsb3cgYWxsIGFjY2Vzcyc7CiRsYW5nWyd0aXRsZV9zY2FuJ10gPSAnU2NhbiBmb3IgbmV3IGZpbGVzIGluIHRoaXMgY2F0ZWdvcnknOwokbGFuZ1sndGl0bGVfY3JlYXRlX3RodW1ibmFpbHMnXSA9ICdDcmVhdGUgbWlzc2luZyB0aHVtYm5haWxzIGZvciBmaWxlcyBpbiB0aGlzIGNhdGVnb3J5Lic7CiRsYW5nWydjcmVhdGVfdGh1bWJuYWlscyddID0gJ0NyZWF0ZSBUaHVtYm5haWxzJzsKJGxhbmdbJ3RpdGxlX2NyZWF0ZV90aHVtYm5haWwnXSA9ICcocmUpQ3JlYXRlIHRoZSB0aHVtYm5haWwgZm9yIHRoaXMgZmlsZSc7CiRsYW5nWydjcmVhdGVfdGh1bWJuYWlsJ10gPSAnQ3JlYXRlIFRodW1ibmFpbCc7CiRsYW5nWydlcnJvcl9wYXRoZXJyb3InXSA9ICdDb3VsZCBub3Qgb3BlbiBkaXJlY3RvcnkgKHBlcm1pc3Npb25zIHByb2JsZW0/KSc7CiRsYW5nWyd0aXRsZV9kb3dubG9hZF9jaHVua3NpemUnXSA9ICdTaXplIG9mIGVhY2ggZG93bmxvYWQgY2h1bmsnOwokbGFuZ1snaW5mb19kb3dubG9hZF9jaHVua3NpemUnXSA9ICdBZGp1c3RpbmcgdGhpcyBwYXJhbWV0ZXIgd2lsbCBlZmZlY3QgZG93bmxvYWQgc3BlZWQsIGFuZCBtYXkgaGVscCBpbiBsb3dlciBtZW1vcnkgZW52aXJvbm1lbnRzJzsKJGxhbmdbJ3dhcm5pbmdfc2FmZV9tb2RlJ10gPSAnUEhQXCdzIHNhZmUgbW9kZSBpcyBlbmFibGVkLiAgVGhpcyBtYXkgY2F1c2UgcHJvYmxlbXMgd2l0aCB1cGxvYWRpbmcgZmlsZXMgKHBlcm1pc3Npb25zKSwgYW5kIG1heSBhbHNvIGludGVyZmVyZSB3aXRoIHRoaXMgbW9kdWxlXCdzIGFiaWxpdHkgdG8gc2VuZCBzb21lIGZpbGVzIGR1ZSB0byBhbiBpbmFiaWxpdHkgdG8gb3ZlcnJpZGUgc29tZSBpbmkgc2V0dGluZ3MuICBZb3UgYXJlIGFkdmlzZWQgdG8gY29udGFjdCB5b3VyIHByb3ZpZGVyIHRvIHNlZSBhYm91dCBkaXNhYmxpbmcgc2FmZSBtb2RlLic7CiRsYW5nWydwYXJhbV9kZXRhaWxwYWdlJ10gPSAnVXNlZnVsIGZvciBkaXNwbGF5aW5nIGEgZGV0YWlsIHJlcG9ydCB1c2luZyBhIGRpZmZlcmVudCBwYWdlIHRlbXBsYXRlLCB0aGlzIHBhcmFtZXRlciB0YWtlcyB0aGUgcGFnZSBpZCBvciBwYWdlIGFsaWFzIG9mIGEgcGFnZSB0aGF0IHNob3VsZCBiZSB1c2VkIHRvIGRpc3BsYXkgdGhlIGRldGFpbCByZXBvcnQnOwokbGFuZ1sncGFyYW1fcHJlZml4J10gPSAnQSBib29sZWFuIHRoYXQgaW5kaWNhdGVzIHdldGhlciBmaWxlIG5hbWVzIHNob3VsZCBiZSBwcmVmaXhlZCc7CiRsYW5nWydwYXJhbV9wcmVmaXhfZmV1J10gPSAnQSBib29sZWFuIHBhcmFtZXRlciB0aGF0IGluZGljYXRlcyB0aGF0IHRoZSBwcmVmaXggc2hvdWxkIGJlIHRha2VuIGZyb20gdGhlIGN1cnJlbnQgYXV0aG9yLCBpZiBub3Qgc3BlY2lmaWVkLCB0aGUgcHJlZml4IGlzIHRoZSBjdXJyZW50IHRpbWUgKGluIGRlY2hleCBmb3JtYXQpJzsKJGxhbmdbJ3BhcmFtX25vY2FwdGNoYSddID0gJ0Rpc2FibGUgY2FwdGNoYSBzdXBwb3J0IChvbiBieSBkZWZhdWx0KSBpbiB0aGUgdXBsb2FkIGZvcm0nOwokbGFuZ1sndGl0bGVfdXBsb2FkZm9ybV90ZW1wbGF0ZSddID0gJ0VkaXQgVXBsb2FkIEZvcm0gVGVtcGxhdGUnOwokbGFuZ1snY2FwdGNoYV90aXRsZSddID0gJ0VudGVyIHRoZSB0ZXh0IGRpc3BsYXllZCBpbiB0aGlzIGltYWdlJzsKJGxhbmdbJ2Vycm9yX2NhcHRjaGFtaXNtYXRjaCddID0gJ1RleHQgZW50ZXJlZCBkaWQgbm90IG1hdGNoIHRoZSBpbWFnZSBkaXNwbGF5ZWQnOwokbGFuZ1sndGl0bGVfYXV0b3RodW1ibmFpbF9leHRlbnNpb25zJ10gPSAnQ3JlYXRlIHRodW1ibmFpbHMgZm9yIGZpbGVzIHdpdGggdGhlc2UgZXh0ZW5zaW9ucyc7CiRsYW5nWyd0aXRsZV9hdXRvdGh1bWJuYWlsX3NpemUnXSA9ICdNYXhpbXVtIHNpemUgKHBpeGVscykgb2YgdGhlIGdlbmVyYXRlZCB0aHVtYm5haWwnOwokbGFuZ1sncHJvbXB0X3VwbG9hZF9pY29uJ10gPSAnVXBsb2FkIEFuIEljb24nOwokbGFuZ1snaW5mb19zeXNkZWZhdWx0J10gPSAnVGhpcyB0ZXh0IGlzIHVzZWQgd2hlbiBjcmVhdGluZyBhIG5ldyB0ZW1wbGF0ZSBvZiB0aGlzIHR5cGUnOwokbGFuZ1sndGl0bGVfZGV0YWlscnB0X3N5c2RlZmF1bHQnXSA9ICdTeXN0ZW0gRGVmYXVsdCBEZXRhaWwgUmVwb3J0IFRlbXBsYXRlJzsKJGxhbmdbJ3RpdGxlX3N1bW1hcnlycHRfc3lzZGVmYXVsdCddID0gJ1N5c3RlbSBEZWZhdWx0IFN1bW1hcnkgUmVwb3J0IFRlbXBsYXRlJzsKJGxhbmdbJ3RpdGxlX3VwbG9hZGZvcm1fc3lzZGVmYXVsdCddID0gJ1N5c3RlbSBEZWZhdWx0IFVwbG9hZCBGb3JtIFRlbXBsYXRlJzsKJGxhbmdbJ3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUnOwokbGFuZ1sncmVzZXR0b2RlZmF1bHQnXSA9ICdSZXNldCB0byBEZWZhdWx0cyc7CiRsYW5nWyd0aXRsZV9zdW1tYXJ5cnB0X3RlbXBsYXRlJ10gPSAnU3VtbWFyeSBSZXBvcnQgVGVtcGxhdGUnOwokbGFuZ1sndGl0bGVfZGV0YWlscnB0X3RlbXBsYXRlJ10gPSAnRGV0YWlsIFJlcG9ydCBUZW1wbGF0ZSc7CiRsYW5nWydwcm9tcHRfbmFtZSddID0gJ05hbWUnOwokbGFuZ1sncHJvbXB0X2RlZmF1bHQnXSA9ICdEZWZhdWx0JzsKJGxhbmdbJ2xlZ2VuZF91cGxvYWRmb3JtJ10gPSAnVXBsb2FkIEEgRmlsZSc7CiRsYW5nWydlcnJvcl9taXNzaW5ncGFyYW0nXSA9ICdBIHJlcXVpcmVkIHBhcmFtZXRlciBpcyBtaXNzaW5nJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmduYW1lJ10gPSAnQSBuYW1lIGZvciB0aGUgZmlsZSB0eXBlIG11c3QgYmUgc3BlY2lmaWVkJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdleHRlbnNpb25zJ10gPSAnQXQgbGVhc3Qgb25lIGZpbGUgZXh0ZW5zaW9uIG11c3QgYmUgc3BlY2lmaWVkJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdpY29uJ10gPSAnQW4gaWNvbiBtdXN0IGJlIHNwZWNpZmllZCc7CiRsYW5nWydlcnJvcl9ub3N1Y2hyb3cnXSA9ICdUaGUgc3BlY2lmaWVkIHJvdyBjb3VsZCBub3QgYmUgZm91bmQnOwokbGFuZ1snbmFtZV91bmtub3duJ10gPSAnVW5rbm93bic7CiRsYW5nWydkZXNjcmlwdGlvbl91bmtub3duJ10gPSAnRmlsZSB0eXBlIGRlc2NyaXB0aW9uIGZvciB1bm1hdGNoZWQgZmlsZXMnOwokbGFuZ1snaW1hZ2UnXSA9ICdJbWFnZSc7CiRsYW5nWydpY29uJ10gPSAnSWNvbic7CiRsYW5nWydleHRlbnNpb25zJ10gPSAnRmlsZSBFeHRlbnNpb25zJzsKJGxhbmdbJ2FkZGZpbGV0eXBlJ10gPSAnQWRkIE5ldyBGaWxlIFR5cGUnOwokbGFuZ1snZmlsZV90eXBlcyddID0gJ0ZpbGUgVHlwZXMnOwokbGFuZ1snZXJyb3Jfbm9jYXRlZ29yeWlkJ10gPSAnTm8gQ2F0ZWdvcnkgaWQgd2FzIHN1cHBsaWVkJzsKJGxhbmdbJ2Vycm9yX25vY2F0ZWdvcnknXSA9ICdObyBDYXRlZ29yeSBpZCB3YXMgc3VwcGxpZWQnOwokbGFuZ1snZXJyb3JfdGVtcGxhdGVuYW1lZXhpc3RzJ10gPSAnQSB0ZW1wbGF0ZSBieSB0aGF0IG5hbWUgYWxyZWFkeSBleGlzdHMnOwokbGFuZ1sncHJvbXB0X3RlbXBsYXRlbmFtZSddID0gJ1RlbXBsYXRlIE5hbWUnOwokbGFuZ1sncHJvbXB0X3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUnOwokbGFuZ1sncHJvbXB0X25ld3RlbXBsYXRlJ10gPSAnQ3JlYXRlIGEgbmV3IHRlbXBsYXRlJzsKJGxhbmdbJ2hlbHBfT25Eb3dubG9hZCddID0gJwo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgZmluaXNoZXMgZG93bmxvYWRpbmcgYSBmaWxlPC9wPgo8aDQ+UGFyYW1ldGVyczwvaDQ+Cjx1bD4KPGxpPjxlbT5pZDwvZW0+IC0gVXBsb2FkIElEPC9saT4KPGxpPjxlbT5uYW1lPC9lbT4gLSBGaWxlIG5hbWU8L2xpPgo8bGk+PGVtPmlwPC9lbT4gLSBUaGUgSVAgQWRkcmVzcyBvZiB0aGUgZG93bmxvYWRlcjwvbGk+CjwvdWw+Cic7CiRsYW5nWydoZWxwX09uRGVsZXRlQ2F0ZWdvcnknXSA9ICcKPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBjYXRlZ29yeSBpcyBEZWxldGVkPC9wPgo8aDQ+UGFyYW1ldGVyczwvaDQ+Cjx1bD4KPGxpPjxlbT5uYW1lPC9lbT4gLSBDYXRlZ29yeSBuYW1lPC9saT4KPGxpPjxlbT5wYXRoPC9lbT4gLSBDYXRlZ29yeSBwYXRoPC9saT4KPC91bD4KJzsKJGxhbmdbJ2hlbHBfT25DcmVhdGVDYXRlZ29yeSddID0gJwo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIGNhdGVnb3J5IGlzIENyZWF0ZWQ8L3A+CjxoND5QYXJhbWV0ZXJzPC9oND4KPHVsPgo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSBuYW1lIG9mIHRoZSBjYXRlZ29yeTwvbGk+CjxsaT48ZW0+ZGVzY3JpcHRpb248L2VtPiAtIFRoZSBjYXRlZ29yeSBkZXNjcmlwdGlvbjwvbGk+CjxsaT48ZW0+cGF0aDwvZW0+IC0gVGhlIGNhdGVnb3J5IHBhdGg8L2xpPgo8bGk+PGVtPmxpc3RhYmxlPC9lbT4gLSBBIGZsYWcgaW5kaWNhdGluZyBpZiB0aGUgY2F0ZWdvcnkgaXMgbGlzdGFibGU8L2xpPgo8bGk+PGVtPmRlbGV0YWJsZTwvZW0+IC0gQSBmbGFnIGluZGljYXRpbmcgaWYgZmlsZXMgaW4gdGhlIGNhdGVnb3J5IGFyZSBkZWxldGFibGU8L2xpPgo8L3VsPgonOwokbGFuZ1snaGVscF9PblJlbW92ZSddID0gJwo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIGZpbGUgaXMgcmVtb3ZlZCB2aWEgdGhlIGFkbWluIG9yIGZyb250ZW5kIGludGVyZmFjZXM8L3A+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+CiAgPGxpPjxlbT5zdW1tYXJ5PC9lbT4gLSBEaXNwbGF5IGEgc3VtbWFyaXplZCBsaXN0IG9mIGFsbCBmaWxlcyBpbiB0aGUgc3BlY2lmaWVkIGNhdGVnb3J5PC9saT4KICA8L3VsPic7CiRsYW5nWydwYXJhbV9zZWxlY3Rmb3JtJ10gPSAnV2hlbiB1c2luZyB0aGUgXCdzZWxlY3RcJyBtb2RlLCB0aGlzIHBhcmFtZXRlciBpcyB0aGUgZm9ybWlkIG9mIHRoZSBwYXJlbnQgZm9ybS4gIFVzZWQgdG8gaGFuZGxlIHBhcmFtZXRlciBwYXNzaW5nJzsKJGxhbmdbJ3BhcmFtX3NlbGVjdG5hbWUnXSA9ICd3aGVuIHVzaW5nIHRoZSBcJ3NlbGVjdFwnIG1vZGUsIHRoaXMgcGFyYW1ldGVyIHNwZWNpZmllcyB0aGUgbmFtZSBvZiB0aGUgZmllbGQnOwokbGFuZ1sncGFyYW1fc2VsZWN0dmFsdWUnXSA9ICdXaGVuIHVzaW5nIHRoZSBcJ3NlbGVjdFwnIG1vZGUsIHRoaXMgcGFyYW1ldGVyIHNwZWNpZmllcyB0aGUgZGVmYXVsdCBmaWVsZCB2YWx1ZSc7CiRsYW5nWydwYXJhbV9zZWxlY3Rub25lJ10gPSAnV2hlbiB1c2luZyB0aGUgXCdzZWxlY3RcJyBtb2RlLCB0aGlzIHBhcmFtZXRlciBzcGVjaWZpZXMgd2V0aGVyIFwnbm9uZVwnIGlzIGEgdmFsaWQgY2hvaWNlLic7CiRsYW5nWydyZXR1cm50b21vZHVsZSddID0gJ1JldHVybiB0byBtb2R1bGUgcGFuZWwnOwokbGFuZ1snZXJyb3Jfbm9jYXRlZ29yaWVzJ10gPSAnVGhlcmUgYXJlIG5vIGRlZmluZWQgY2F0ZWdvcmllcyc7CiRsYW5nWyd0aXRsZV9lbmZvcmNlZXh0ZW5zaW9ucyddID0gJ1JlcXVpcmUgZXh0ZW5zaW9ucyBvbiBhbGwgdXBsb2FkZWQgZmlsZXMnOwokbGFuZ1sncmVzdG9yZWRlZmF1bHRzY29uZmlybSddID0gJ1RoaXMgb3BlcmF0aW9uIHdpbGwgcmVzdG9yZSB0aGUgdGVtcGxhdGUgdG8gc3lzdGVtIGRlZmF1bHRzLiAgQW55IGNoYW5nZXMgeW91IGhhdmUgbWFkZSB3aWxsIGJlIGxvc3QuICBBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gcHJvY2VlZD8nOwokbGFuZ1snaW5mb190aHVtYm5haWwnXSA9ICdBbiBvcHRpb25hbCB0aHVtYm5haWwgZmlsZSc7CiRsYW5nWyd0aHVtYm5haWwnXSA9ICdUaHVtYm5haWwnOwokbGFuZ1snbmV3dGh1bWJuYWlsJ10gPSAnVXBsb2FkIGEgbmV3IHRodW1ibmFpbCc7CiRsYW5nWydpbmZvX3N1bW1hcnknXSA9ICdBIGJyaWVmIGRlc2NyaXB0aW9uIG9mIHRoZSBmaWxlIChpZiBlbXB0eSwgdGhlIGZpbGUgbmFtZSBpcyB1c2VkIHdpdGhvdXQgdGhlIGV4dGVuc2lvbiknOwokbGFuZ1snaW5mb19jYXRlZ29yeW5hbWUnXSA9ICdBIGJyaWVmIG5hbWUgZm9yIHlvdXIgY2F0ZWdvcnkgKGh1bWFuIHJlYWRhYmxlKSc7CiRsYW5nWydpbmZvX2NhdGVnb3J5ZGVzYyddID0gJ0EgZGVzY3JpcHRpb24gZm9yIHlvdXIgY2F0ZWdvcnknOwokbGFuZ1snaW5mb19jYXRlZ29yeXBhdGgnXSA9ICdUaGUgZGlyZWN0b3J5IG5hbWUgaW5zaWRlIHRoZSB1cGxvYWRzIGRpcmVjdG9yeSB0aGF0IHdpbGwgYmUgdXNlZCB0byBzdG9yZSBmaWxlcyBpbiB0aGlzIGNhdGVnb3J5LiAgSWYgdGhlIGRpcmVjdG9yeSBvZiB0aGlzIG5hbWUgZG9lcyBub3QgYWxyZWFkeSBleGlzdCwgaXQgbWF5IGJlIGNyZWF0ZWQnOwokbGFuZ1snaW5mb19kZXN0bmFtZSddID0gJ1VzZSB0aGUgXCdVcGxvYWQgQXNcJyBmaWVsZCB0byBjaGFuZ2UgdGhlIG5hbWUgb2YgdGhlIGZpbGUgb24gdXBsb2FkLiAgTGVhdmUgYmxhbmsgdG8gcHJlc2VydmUgdGhlIGZpbGVuYW1lIGFzLWlzLic7CiRsYW5nWydlcnJvcl9jYW50Y3JlYXRlZGlyZWN0b3J5J10gPSAnQ291bGQgbm90IGNyZWF0ZSBkaXJlY3RvcnknOwokbGFuZ1snZXJyb3Jfbm9tYWlsZXJtb2R1bGUnXSA9ICdUaGUgQ01TTWFpbGVyIG1vZHVsZSBjb3VsZCBub3QgYmUgaW5zdGFudGlhdGVkJzsKJGxhbmdbJ3VwbG9hZF9ub3RpZmljYXRpb24nXSA9ICdBIG5ldyBmaWxlIGhhcyBiZWVuIHVwbG9hZGVkJzsKJGxhbmdbJ3RpdGxlX2VtYWlsX29uX3VwbG9hZCddID0gJ1NlbmQgdXBsb2FkIG5vdGlmaWNhdGlvbiB0byc7CiRsYW5nWydlbWFpbF90ZW1wbGF0ZSddID0gJ0VtYWlsIFRlbXBsYXRlcyc7CiRsYW5nWyd0aXRsZV9kdW1teV9pbmRleF9odG1sJ10gPSAnQ3JlYXRlIGR1bW15IGluZGV4Lmh0bWwgZmlsZXMgaW4gZWFjaCBkaXJlY3Rvcnk/PGJyLz48ZW0+QW55IGV4aXN0aW5nIGluZGV4Lmh0bWwgZmlsZXMgd2lsbCByZW1haW48L2VtPic7CiRsYW5nWydhYm91dCddID0gJ0Fib3V0JzsKJGxhbmdbJ2Vycm9yX3Blcm1pc3Npb25kZW5pZWQnXSA9ICdBY2Nlc3MgRGVuaWVkLiBQbGVhc2UgY2hlY2sgeW91ciBwZXJtaXNzaW9ucy4nOwokbGFuZ1snZXJyb3JfY291bGRub3R3cml0ZSddID0gJ0NvdWxkIG5vdCB3cml0ZSc7CiRsYW5nWydhZGRjYXRlZ29yeSddID0gJ0FkZCBDYXRlZ29yeSc7CiRsYW5nWydhbGwnXSA9ICdBbGwnOwokbGFuZ1snYXJleW91c3VyZSddID0gJ0FyZSBZb3UgU3VyZT8nOwokbGFuZ1snYXV0aG9yJ10gPSAnQXV0aG9yJzsKJGxhbmdbJ2NhbmNlbCddID0gJ0NhbmNlbCc7CiRsYW5nWydjYW5ub3Rtb2RpZnlwYXRoJ10gPSAnKFRoZSBwYXRoIGNhbm5vdCBiZSBtb2RpZmllZCknOwokbGFuZ1snY2F0ZWdvcmllcyddID0gJ0NhdGVnb3JpZXMnOwokbGFuZ1snY2F0ZWdvcnknXSA9ICdDYXRlZ29yeSc7CiRsYW5nWydtZXNzYWdlX2NhdGVnb3J5YWRkZWQnXSA9ICdDYXRlZ29yeSBzdWNjZXNzZnVsbHkgYWRkZWQnOwokbGFuZ1snZGF0ZSddID0gJ0RhdGUnOwokbGFuZ1snZGF0ZXVwbG9hZGVkJ10gPSAnRGF0ZSBVcGxvYWRlZCc7CiRsYW5nWydkZWZhdWx0J10gPSAnRGVmYXVsdHMnOwokbGFuZ1snZGVsZXRlJ10gPSAnRGVsZXRlJzsKJGxhbmdbJ2Rlc2NyaXB0aW9uJ10gPSAnRGVzY3JpcHRpb24nOwokbGFuZ1snZGVzdG5hbWUnXSA9ICdVcGxvYWQgQXMnOwokbGFuZ1snZGV0YWlsX3RlbXBsYXRlJ10gPSAnRGV0YWlsIFRlbXBsYXRlcyc7CiRsYW5nWydkb3dubG9hZGVkJ10gPSAnRmlsZSAlcyB3YXMgZG93bmxvYWRlZC4nOwokbGFuZ1snZG93bmxvYWRzJ10gPSAnRG93bmxvYWRzJzsKJGxhbmdbJ2VkaXQnXSA9ICdFZGl0JzsKJGxhbmdbJ2VkaXRjYXRlZ29yeSddID0gJ0VkaXQgQ2F0ZWdvcnknOwokbGFuZ1snZWRpdHVwbG9hZCddID0gJ0VkaXQgVXBsb2FkJzsKJGxhbmdbJ2Vycm9yJ10gPSAnRXJyb3IhJzsKJGxhbmdbJ2Vycm9yX3BhdGhpbnVzZTInXSA9ICdBIGNhdGVnb3J5IHVzaW5nIHRoZSBwYXRoICglcykgYWxyZWFkeSBleGlzdHMnOwokbGFuZ1snZXJyb3JfcGF0aGludXNlJ10gPSAnQSBjYXRlZ29yeSB1c2luZyB0aGF0IHBhdGggYWxyZWFkeSBleGlzdHMnOwokbGFuZ1snZXJyb3JfY2F0ZWdvcnlleGlzdHMyJ10gPSAnRXJyb3I6IENhdGVnb3J5IG5hbWVkICVzIGFscmVhZHkgZXhpc3RzJzsKJGxhbmdbJ2Vycm9yX2NhdGVnb3J5ZXhpc3RzJ10gPSAnRXJyb3I6IENhdGVnb3J5IGFscmVhZHkgZXhpc3RzJzsKJGxhbmdbJ2Vycm9yX2NhdGVnb3J5bm90ZW1wdHknXSA9ICdFcnJvciEgQ2Fubm90IGRlbGV0ZSBhIGNhdGVnb3J5IHRoYXQgaXMgbm90IGVtcHR5JzsKJGxhbmdbJ2Vycm9yX2NhdGVnb3J5bm90Zm91bmQnXSA9ICdFcnJvcjogQ2F0ZWdvcnkgbm90IGZvdW5kISc7CiRsYW5nWydlcnJvcl9kYmVycm9yJ10gPSAnRXJyb3I6IERhdGFiYXNlIGVycm9yISc7CiRsYW5nWydlcnJvcl9lbXB0eWNhdGVnb3J5J10gPSAnRXJyb3I6IEVtcHR5IENhdGVnb3J5ISc7CiRsYW5nWydlcnJvcl9lbXB0eXBhdGgnXSA9ICdFcnJvcjogRW1wdHkgUGF0aCEnOwokbGFuZ1snZXJyb3JfZmlsZWV4aXN0cyddID0gJ0Vycm9yISBGaWxlICVzIGFscmVhZHkgZXhpc3RzLic7CiRsYW5nWydlcnJvcl9maWxlbm90Zm91bmQnXSA9ICdFcnJvciEgRmlsZSAlcyB3YXMgbm90IGZvdW5kLic7CiRsYW5nWydlcnJvcl9pbnN1ZmZpY2llbnRwYXJhbXMnXSA9ICdFcnJvcjogSW5zdWZmaWNpZW50IHBhcmFtZXRlcnMgc3VwcGxpZWQgdG8gbW9kdWxlITxici8+TWlzc2luZyBwYXJhbSBpczogJXMnOwokbGFuZ1snZXJyb3JfaW52YWxpZGF1dGhvciddID0gJ0Vycm9yOiBJbnZhbGlkIChvciBlbXB0eSkgYXV0aG9yLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkY2F0ZWdvcnknXSA9ICdFcnJvcjogSW52YWxpZCAob3IgZW1wdHkpIGNhdGVnb3J5Lic7CiRsYW5nWydlcnJvcl9pbnZhbGlkZGVzY3JpcHRpb24nXSA9ICdFcnJvcjogSW52YWxpZCAob3IgZW1wdHkpIGRlc2NyaXB0aW9uLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkZmlsZSddID0gJ0Vycm9yOiBJbnZhbGlkIChvciBlbXB0eSkgZmlsZW5hbWUuJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1cGxvYWRmaWxlbmFtZSddID0gJ0Vycm9yOiBGaWxlcyB3aXRoIHRoYXQgbmFtZSAocHJvYmFibHkgZXh0ZW5zaW9uKSBhcmUgbm90IGFsbG93ZWQgKCVzKS4nOwokbGFuZ1snZXJyb3JfaW52YWxpZHVwbG9hZGlkJ10gPSAnRXJyb3I6IEludmFsaWQgdXBsb2FkIGlkJzsKJGxhbmdbJ2Vycm9yX25vZmlsZXMnXSA9ICdFcnJvcjogTm8gTWF0Y2hpbmcgRmlsZXMhJzsKJGxhbmdbJ2ZpbGVzJ10gPSAnRmlsZXMnOwokbGFuZ1snZml4bWUnXSA9ICdGaXggU3BhY2VzJzsKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ0Zyb250IEVuZCBGaWxlIE1hbmFnZW1lbnQgKFVwbG9hZHMpJzsKJGxhbmdbJ2hlbHAnXSA9ICcKPGgzPldoYXQgRG9lcyBUaGlzIERvPzwvaDM+CjxwPkl0IGlzIGEgbW9kdWxlIGZvciBhbGxvd2luZyBwZW9wbGUgdG8gdXBsb2FkIGFuZCBkb3dubG9hZCBmaWxlcyB0byBhbmQgZnJvbSB5b3VyIHNpdGUuICBJdCBrZWVwcyB0cmFjayBvZiB3aG8gdXBsb2FkZWQgYSBmaWxlLCBhbmQgd2hvIGhhcyBkb3dubG9hZGVkIGl0LiAgQXMgd2VsbCwgeW91IGNhbiBzb3J0IGZpbGVzIGludG8gY2F0ZWdvcmllcywgYW5kIG1hbmFnZSB0aGUgZmlsZXMgdGhhdCB3ZXJlIHVwbG9hZGVkIGxpa2UgZXZlcnkgYWRtaW5pc3RyYXRvciB3b3VsZCBkbzwvcD4gCjxoMz5Ib3cgRG8gSSBVc2UgSXQ8L2gzPgo8cD48c3Ryb25nPldhcm5pbmc8L3N0cm9uZz4gLSBUaGUgcHJvcGVyIGJlaGF2aW91ciBvZiB0aGlzIG1vZHVsZSBkZXBlbmRzIG9uIG51bWVyb3VzIHBocCBjb25maWd1cmF0aW9uIHZhcmlhYmxlcy4gIFRoZXNlIGluY2x1ZGUgPGVtPihidXQgYXJlIG5vdCBsaW1pdGVkIHRvKTwvZW0+LCBwaHBcJ3MgbWVtb3J5X2xpbWl0LCBzYWZlX21vZGUsIGZpbGVfdXBsb2FkcywgdXBsb2Fkc19tYXhfZmlsZXNpemUsIGFuZCBtYXhfZXhlY3V0aW9uX3RpbWUuICBUaGVzZSB2YXJpYWJsZXMgbWF5IG5lZWQgYWRqdXN0bWVudCBmb3IgdGhpcyBtb2R1bGUgdG8gd29yayBwcm9wZXJseSBvbiB5b3VyIHNpdGUuICBJdCBpcyBhZHZpc2VkIHRoYXQgeW91IHdvcmsgd2l0aCB5b3VyIHN5c3RlbSBhZG1pbmlzdHJhdG9yIG9yIGhvc3QgcHJvdmlkZXIgdG8gdHVuZSB0aGVzZSBzZXR0aW5ncyBmb3IgeW91ciByZXF1aXJlbWVudHMuPC9wPgo8cD5UbyB1c2UgdGhpcyBtb2R1bGUsIHRvIGFsbG93IHVzZXJzIHRvIHVwbG9hZCBmaWxlcyB0byB5b3VyIHNpdGUsIHlvdSBzaG91bGQgaW5zdGFsbCB0aGUgbW9kdWxlLCBhbmQgdGhlbiBjcmVhdGUgb25lIG9yIG1vcmUgY2F0ZWdvcmllcyAoYS5rLmEpIGRpcmVjdG9yaWVzIGZvciB0aGUgdXBsb2FkZWQgZmlsZXMgdG8gZ28gaW50by4gVGhlbiBhZGQgYSB0YWcgaW50byBhIHBhZ2Ugb3IgdGVtcGxhdGUgc29tZXdoZXJlIGxpa2Uge2Ntc19tb2R1bGUgbW9kdWxlPSJVcGxvYWRzIiBjYXRlZ29yeT0ic29tZWNhdGVnb3J5IiBtb2RlPSJzb21lbW9kZSJ9LiAgV2hlcmUgbW9kZSBtYXRjaGVzIG9uZSBvZiB0aGUgbW9kZXMgbGlzdGVkIGJlbG93LiAgVGhlIG91dHB1dCB3aWxsIGRpZmZlciBkZXBlbmRpbmcgdXBvbiB3aGljaCBtb2RlIHlvdSBzZWxlY3QuPC9wPgo8cD5UaGlzIG1vZHVsZSBjYW4gdXNlIHRoZSBGcm9udGVuZFVzZXJzIG1vZHVsZSAob3B0aW9uYWwpIHRvIGdldCBpbmZvcm1hdGlvbiBhYm91dCBhbnkgY3VycmVudGx5IGxvZ2dlZCBpbiB1c2VycyB0byBwYXJ0bHkgZmlsbCBpbiB0aGUgZm9ybSB3aGVuIHVwbG9hZGluZyBmaWxlczs8L3A+CjxoMz5QZXJtaXNzaW9uczwvaDM+Cjx1bD4KPGxpPjxlbT5NYW5hZ2UgVXBsb2FkczwvZW0+IHBlcm1pc3Npb24gaXMgbmVlZGVkIHRvIG1hbmFnZSBjYXRlZ29yaWVzLCBhbmQgdGhlIGZpbGVzIHdpdGhpbiB0aGVtLjwvbGk+CjxsaT48ZW0+TW9kaWZ5IFRlbXBsYXRlczwvZW0+IHBlcm1pc3Npb24gaXMgbmVlZGVkIGVkaXQgYW55IG9mIHRoZSB0ZW1wbGF0ZXMuPC9saT4KPGxpPjxlbT5Nb2RpZnkgU2l0ZSBQcmVmZXJlbmNlczwvZW0+IHBlcm1pc3Npb24gaXMgbmVlZGVkIGFueSBvZiB0aGUgZmlsZSBzZXR0aW5ncy48L2xpPgo8L3VsPgo8aDM+Q2F0ZWdvcnkgQnJvd3Npbmc8L2gzPgo8cD5QbGFjaW5nIGEgdGFnIGxpa2Uge2Ntc19tb2R1bGUgbW9kdWxlPSJVcGxvYWRzIiBhY3Rpb249ImNhdGVnb3J5c3VtbWFyeSIgdGVtcGxhdGU9InN1bW1hcnl0ZW1wbGF0ZSIgc29ydG9yZGVyPSJuYW1lX2FzYyIgbGlzdGluZ3RlbXBsYXRlPSJsaXN0dGVtcGxhdGUiIGxpc3Rpbmdzb3J0b3JkZXI9Imxpc3Rzb3J0b3JkZXIifQphbGxvd3MgeW91IHRvIGRpc3BsYXkgYW4gaW50ZXJhY3RpdmUgY2F0ZWdvcnkgYnJvd3Nlci4gc29ydG9yZGVyIGNhbiBiZTogbmFtZV9hc2MsIG5hbWVfZGVzYywgc3VtbV9hc2MsIHN1bW1fZGVzYywgb3IgcmFuZG9tLgpsaXN0aW5ndGVtcGxhdGUgYW5kIGxpc3Rpbmdzb3J0b3JkZXIgYXJlIGlkZW50aWNhbCB0byB0aGUgdGVtcGxhdGUgYW5kIHNvcnRvcmRlciBwYXJhbWV0ZXJzIGZvcgp0aGUgInN1bW1hcnkiIG1vZGUuPC9wPgo8aDM+QXV0b21hdGljIFNjYW5uaW5nPC9oMz4KPHA+VGhpcyBtb2R1bGUgd2lsbCBhdXRvbWF0aWNhbGx5IHNjYW4gZm9yIG5ldyBmaWxlcyBpbiBhIGRpcmVjdG9yeSB3aGVuIGEgc3VtbWFyeSBtb2RlIHRhZyBmb3IgYSBzcGVjaWZpYyBjYXRlZ29yeSBpcyB1c2VkIG9uIGEgQ01TTVMgcGFnZS4gIGkuZTogPGNvZGU+e1VwbG9hZHMgY2F0ZWdvcnk9Y2F0ZWdvcnlfbmFtZX08L2NvZGU+IHdpbGwgcGVyZm9ybSBhIHNjYW4uICBidXQgPGNvZGU+e1VwbG9hZHMgY2F0ZWdvcnk9YWxsfTwvY29kZT4gd2lsbCBub3QuPC9wPgo8aDM+VGh1bWJuYWlsIEdlbmVyYXRpb248L2gzPgo8cD5UaGlzIG1vZHVsZSBpcyBjYXBhYmxlIG9mIGdlbmVyYXRpbmcgdGh1bWJuYWlscyBmb3IgY2VydGFpbiB0eXBlcyBvZiBmaWxlcy4gIFRoZXJlIGFyZSBwcmVmZXJlbmNlcyBpbiB0aGUgcHJlZmVyZW5jZXMgdGFiIG9mIHRoZSBVcGxvYWRzIG1vZHVsZSBhZG1pbmlzdHJhdGlvbiBwYW5lbCB0byBzcGVjaWZ5IHRoZSB0eXBlcyBvZiBmaWxlcyB0aGF0IGFsbG93IGF1dG9tYXRpYyB0aHVtYm5haWwgZ2VuZXJhdGlvbiwgYW5kIHRoZSBzaXplIG9mIHRoZSBnZW5lcmF0ZWQgdGh1bWJuYWlsIChwcmVzZXJ2aW5nIGFzcGVjdCByYXRpbykuICAgVGh1bWJuYWlscyBhcmUgYXV0b21hdGljYWxseSBnZW5lcmF0ZWQgdXBvbiB1cGxvYWQsIGFuZCBjYW4gYmUgZ2VuZXJhdGVkIG1hbnVhbGx5IGJ5IHNlbGVjdGluZyB0aGUgJnF1b3Q7R2VuZXJhdGUgVGh1bWJuYWlscyZxdW90OyBvcHRpb24gaW4gdGhlIGVkaXQgY2F0ZWdvcnkgZm9ybXMuLi4gYnV0IGFyZSBub3QgZ2VuZXJhdGVkIHdoZW4gbmV3IGZpbGVzIGFyZSBkZXRlY3RlZCBieSBhdXRvbWF0aWMgc2Nhbm5pbmcuPC9wPgo8aDM+WW91IFNlbmQgSXQ8L2gzPgo8cD5JdCBpcyBwb3NzaWJsZSB0byBlbmFibGUgJnF1b3Q7eW91c2VuZGl0JnF1b3Q7IGxpa2UgZnVuY3Rpb25hbGl0eSB0byBhbGxvdyBhdXRvbWF0aWNhbGx5IGVtYWlsaW5nIHNlbGVjdGVkIHBlb3BsZSB3aXRoIGEgbGluayB0byBhIG5ld2x5IHVwbG9hZGVkIGZpbGUuICBUaGlzIGlzIGFjY29tcGxpc2hlZCBieSB1c2luZyBhIHRhZyBsaWtlOiA8Y29kZT57VXBsb2FkcyBhY3Rpb249eW91c2VuZGl0IGNhdGVnb3J5PWNhdGVnb3J5bmFtZX08L2NvZGU+LiAgVGhpcyB3aWxsIGRpc3BsYXkgYSBmb3JtIGFsbG93aW5nIHRoaXMgZnVuY3Rpb25hbGl0eS48L3A+CjxoMz5UaW1lIExpbWl0ZWQgQWNjZXNzPC9oMz4KPHA+VGhpcyBtb2R1bGUgc3VwcG9ydHMgdGhlIG5vdGlvbiBvZiB1bmlxdWUga2V5cyB0byBhbGxvdyB0aW1lIGxpbWl0ZWQgYWNjZXNzIHRvIGNlcnRhaW4gZmlsZXMuICBUaGUgZnVuY3Rpb25hbGl0eSBhbGxvd3Mgc3BlY2lmeWluZyBhIHRpbWUgbGltaXQgKGluIGhvdXJzKSBmb3Igd2hpY2ggdGhlIGtleSBpcyB2YWxpZCwgYW5kIGEgbWF4aW11bSBudW1iZXIgb2YgZG93bmxvYWRzIG9yIGRvd25sb2FkIGF0ZW1wdHMuICBBbiBlbWFpbCBpcyBzZW50IHRvIHRoZSBkZXNpcmVkIHVzZXJzIHdpdGggdGhlIHVuaXF1ZSBVUkwuICBBZnRlciB0aGUgdGltZSBsaW1pdCwgb3IgdGhlIG51bWJlciBvZiBkb3dubG9hZHMgaGFzIGJlZW4gcmVhY2hlZCwgdGhlIFVSTCBpcyBubyBsb25nZXIgdmFsaWQuICBUaGVzZSB1bmlxdWUgdGltZSBsaW1pdGVkIGtleXMgYXJlIGF1dG9tYXRpY2FsbHkgcmVtb3ZlZCBmcm9tIHRoZSBkYXRhYmFzZSBhZnRlciBleHBpcnkuPC9wPgo8aDM+UmVzdHJpY2luZyBBY2Nlc3Mgd2l0aCBGRVU8L2gzPgo8cD5UaGlzIG1vZHVsZSBpcyBjYXBhYmxlIG9mIGludGVncmF0aW5nIHdpdGggdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlIHRvIHJlc3RyaWN0IHRoZSB2aXNpYmlsaXR5IG9mIGNhdGVnb3JpZXMgKGRpcmVjdG9yaWVzKSB0byBjZXJ0YWluIGFsbG93ZWQgRkVVIGdyb3Vwcy4gIFlvdXIgdXNlcnMgd291bGQgaGF2ZSB0byBiZSBsb2dnZWQgaW4gdG8geW91ciB3ZWJzaXRlICh1c2luZyBGRVUpIGFuZCBhbHNvIGEgbWVtYmVyIG9mIG9uZSBvZiB0aGUgYWxsb3dlZCBncm91cHMgdG8gb2J0YWluIGFjY2Vzcy4gIFRoaXMgaXMgYWNjb21wbGlzaGVkIGluIHRoZSBjYXRlZ29yeSBlZGl0IGZvcm0uICBZb3UgY2FuIHNlbGVjdCBhIGxpc3Qgb2YgRkVVIGdyb3VwcyB3aGljaCBhcmUgYWxsb3dlZCB0byB2aWV3IGZpbGVzIGluIHRoaXMgY2F0ZWdvcnkuPC9wPgo8cD5UaGlzIGZ1bmN0aW9uYWxpdHkgYWxzbyBhcHBsaWVzIHRvIHRoZSAmcXVvdFRpbWUgTGltaXRlZCBBY2Nlc3MmcXVvdCBmdW5jdGlvbmFsaXR5LiAgQWxsb3dpbmcgeW91IHRvIHNwZWNpZnkgdGhhdCBjZXJ0YWluIHBlb3BsZSwgd2hvIGFsc28gaGF2ZSB0byBiZSBsb2dnZWQgaW4gdG8geW91ciB3ZWJzaXRlIGNhbiBoYXZlIGFjY2VzcyB0byBjZXJ0YWluIGZpbGVzIGZvciBhIGxpbWl0ZWQgYW1vdW50IG9mIHRpbWUuPC9wPgo8aDM+RW1haWxpbmc8L2gzPgo8cD5UaGlzIG1vZHVsZSBpcyBjYXBhYmxlIG9mIHNlbmRpbmcgYW4gZW1haWwgd2hlbmV2ZXIgYSBmaWxlIGlzIHVwbG9hZGVkLCBzZWUgdGhlIHByZWZlcmVuY2VzIHRhYi4gIEhvd2V2ZXIsIHRvIGRvIHRoaXMgdGhlIDxiPkNNU01haWxlcjwvYj4gcGFja2FnZSBtdXN0IGJlIGluc3RhbGxlZCBhbmQgY29uZmlndXJlZC4gIFRoaXMgaXMgYW4gPGVtPm9wdGlvbmFsPC9lbT4gc3RlcCwgYW5kIGlmIHRoZSBDTVNNYWlsZXIgbW9kdWxlIGlzIG5vdCBpbnN0YWxsZWQsIG5vdGhpbmcgd2lsbCBiZSBkaXNwbGF5ZWQgdG8gdGhlIHVzZXIsIG9ubHkgYSBsb2cgbWVzc2FnZSB3aWxsIGJlIHBsYWNlZCBpbnRvIHRoZSBhZG1pbiBsb2c8L3A+CjxoMz5Db250ZW50IEJsb2NrcyA8ZW0+KENNU01TIDEuNysgT25seSk8L2VtPjwvaDM+CjxwPkZvciBDTVNNUyAxLjcgdGhpcyBtb2R1bGUgaXMgY2FwYWJsZSBvZiBpbnRlcmZhY2luZyB3aXRoIHRoZSBjb250ZW50IGVkaXRvciBhbmQgZXhwb3J0aW5nIGEgY29udGVudCBibG9jayB0aGF0IGFsbG93cyBzZWxlY3RpbmcgYW4gdXBsb2FkcyBjYXRlZ29yeSB3aXRoaW4gdGhlIGVkaXQgY29udGVudCBwYWdlLCBmb3IgbGF0ZXIgdXNlIHdpdGhpbiB0aGUgdGVtcGxhdGUuPC9wPgo8cD5pLmU6IHBsYWNpbmcgdGhlIGZvbGxvd2luZyB0YWcgd2l0aGluIGEgcGFnZSB0ZW1wbGF0ZSA8Y29kZT57Y29udGVudF9tb2R1bGUgbW9kdWxlPSZxdW90O1VwbG9hZHMmcXVvdDsgYmxvY2s9JnF1b3Q7dXBsb2Fkc19jYXRlZ29yeSZxdW90OyB0eXBlPSZxdW90O2NhdGVnb3J5c2VsZWN0JnF1b3Q7fTwvY29kZT4sIHdpbGwgYWRkIGEgZHJvcGRvd24gYm94IGluIHRoZSBlZGl0IGNvbnRlbnQgdmlldyBvZiBhbnkgcGFnZSB1dGlsaXppbmcgdGhhdCBwYWdlIHRlbXBsYXRlLjwvcD4KPHA+VGhpcyBjb250ZW50IGJsb2NrIGFsc28gYWNjZXB0cyBzb21lIG9wdGlvbmFsIHBhcmFtZXRlcnM6PC9wPgo8dWw+CiAgPGxpPjx1PnNlbGVjdG9uZTwvdT4KICAgIDxwPlRoaXMgcGFyYW1ldGVyIGluc2VydHMgYSAmcXVvdDtTZWxlY3QgT25lJnF1b3Q7IGl0ZW0gaW50byB0aGUgbGlzdCBvZiBjYXRlZ29yaWVzLCByZXF1aXJpbmcgdGhlIHVzZXIgdG8gc2VsZWN0IGEgdmFsaWQgY2F0ZWdvcnkgd2hlbiB0aGUgY29udGVudCBwYWdlIGlzIHNhdmVkLjwvcD4KICA8L2xpPgogIDxsaT48dT5hbGxvd2FsbDwvdT4KICAgIDxwPlRoaXMgcGFyYW1ldGVyIGFsbG93cyB0aGUgY29udGVudCBlZGl0b3IgdG8gc2VsZWN0ICZxdW90O0FsbCZxdW90OyBhcyBhIGNhdGVnb3J5IGZvciB0aGUgdXBsb2FkcyBkaXNwbGF5LjwvcD4KICA8L2xpPgo8L3VsPgo8aDQ+SG93IHdvdWxkIEkgdXNlIGl0PzwvaDQ+CjxwPkhlcmUgaXMgc29tZSBleGFtcGxlIGNvZGU6PC9wPgo8cHJlPgp7Y29udGVudF9tb2R1bGUgbW9kdWxlPSZxdW90O1VwbG9hZHMmcXVvdDsgYmxvY2s9JnF1b3Q7Y2F0ZWdvcnlzZWxlY3QmcXVvdDsgbGFiZWw9JnF1b3Q7U2VsZWN0IGFuIHVwbG9hZHMgY2F0ZWdvcnkmcXVvdDsgc2VsZWN0b25lPTEgYXNzaWduPSZxdW90O3RtcCZxdW90O30Ke1VwbG9hZHMgY2F0ZWdvcnk9JHRtcH0KPC9wcmU+Cgo8aDM+U3lzdGVtIFNldHRpbmdzPC9oMz4KPHA+PGI+Tm90ZTo8L2I+IFRoaXMgbW9kdWxlIGRvZXMgbm90IGJ5cGFzcyBvciBnZXQgcGFzdCBhbnkgZmlsZSBzaXplIGxpbWl0YXRpb25zIGluIHBocC4gIEl0IHdvcmtzIGluIGNvbmp1bmN0aW9uIHdpdGggdGhlbS4gIFRoZXJlZm9yZSB5b3UgbWF5IG5lZWQgdG8gbW9kaWZ5IHlvdXIgcGhwLmluaSBmaWxlLCB5b3VyIENNU01TIGNvbmZpZy5waHAgZmlsZSBhbmQvb3IgeW91ciBodHRwZC5jb25mIGZpbGUocykgdG8gYWxsb3cgeW91IHRvIHVwbG9hZCBmaWxlcyBhcyBsYXJnZSBhcyB3aGF0IHlvdSBoYXZlIHNldCBpbiB0aGUgdXBsb2FkcyBtb2R1bGUgcHJlZmVyZW5jZXMuPC9wPgo8aDM+QXBhY2hlIE5vdGVzPC9oMz4KPHA+SW4gb3JkZXIgdG8gYWxsb3cgbGFyZ2UgZmlsZSB1cGxvYWRzLCB5b3UgbWF5IG5lZWQgdG8gbW9kaWZ5IHRoZSB1cGxvYWRfbWF4X2ZpbGVzaXplIHBhcmFtZXRlciBpbiB5b3VyIHBocC5pbmkgIEluIGFkZGl0aW9uLCB0aGUgTGltaXRSZXF1ZXN0Qm9keSBwYXJhbWV0ZXIgaW4geW91ciBhcGFjaGUgY29uZmlndXJhdGlvbiwgbWF5IG5lZWQgdG8gYmUgYWRqdXN0ZWQgdG8gbWF0Y2ggdGhlIHVwbG9hZF9tYXhfZmlsZXNpemUgcGFyYW1ldGVyPC9wPgo8cD5Ob3RlOiAgdGhlIHVwbG9hZF9tYXhfZmlsZXNpemUgcGFyYW1ldGVyIGNhbiBiZSBzcGVjaWZpZWQgaW4gYnl0ZXMsIGtpbG9ieXRlcywgb3IgbWVnYWJ5dGVzLCBob3dldmVyIHRoZSBMaW1pdFJlcXVldEJvZHkgcGFyYW1ldGVyIGlzIG9ubHkgc3BlY2lmaWVkIGluIGJ5dGVzPC9wPgonOwokbGFuZ1snaWQnXSA9ICdJZCc7CiRsYW5nWydpbnN0YWxsZWQnXSA9ICdNb2R1bGUgdmVyc2lvbiAlcyBpbnN0YWxsZWQuJzsKJGxhbmdbJ2lwX2FkZHJlc3MnXSA9ICdJUCBBZGRyZXNzJzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnQSBtb2R1bGUgdGhhdCBhbGxvd3MgdXNlcnMgdG8gdXBsb2FkIGZpbGVzLCBhbmQgYWxsb3dzIHlvdSB0byBtYW5hZ2UgdGhlbS4nOwokbGFuZ1snbmFtZSddID0gJ05hbWUnOwokbGFuZ1sncmVuYW1lbWVzc2FnZSddID0gJ0NoYW5nZSB0aGUgbmFtZSBoZXJlIHRvIGV4ZWN1dGUgYSByZW5hbWUnOwokbGFuZ1sncGF0aCddID0gJ1BhdGgnOwokbGFuZ1sncGF0aG1lc3NhZ2UnXSA9ICdDaGFuZ2UgdGhlIGNhdGVnb3J5IGhlcmUgdG8gbW92ZSB0aGUgZmlsZSB0byBhbm90aGVyIGRpcmVjdG9yeSc7CiRsYW5nWydwYXRoaW51cGxvYWRzJ10gPSAnKFJlbGF0aXZlIHRvIHRoZSB1cGxvYWRzIGRpcmVjdG9yeSknOwokbGFuZ1sncG9zdGluc3RhbGwnXSA9ICc8cD5UaGUgdXBsb2FkcyBtb2R1bGUgaGFzIGJlZW4gc3VjY2Vzc2Z1bGx5IGluc3RhbGxlZC4gQmUgc3VyZSB0byBzZXQgIk1hbmFnZSBVcGxvYWRzIiBwZXJtaXNzaW9ucyB0byB1c2UgdGhpcyBtb2R1bGUhPC9wPgo8cD48c3Ryb25nPldhcm5pbmc8L3N0cm9uZz4gLSBUaGUgcHJvcGVyIGJlaGF2aW91ciBvZiB0aGlzIG1vZHVsZSBkZXBlbmRzIG9uIG51bWVyb3VzIHBocCBjb25maWd1cmF0aW9uIHZhcmlhYmxlcy4gIFRoZXNlIGluY2x1ZGUgPGVtPihidXQgYXJlIG5vdCBsaW1pdGVkIHRvKTwvZW0+LCBwaHBcJ3MgbWVtb3J5X2xpbWl0LCBzYWZlX21vZGUsIGZpbGVfdXBsb2FkcywgdXBsb2Fkc19tYXhfZmlsZXNpemUsIGFuZCBtYXhfZXhlY3V0aW9uX3RpbWUuICBUaGVzZSB2YXJpYWJsZXMgbWF5IG5lZWQgYWRqdXN0bWVudCBmb3IgdGhpcyBtb2R1bGUgdG8gd29yayBwcm9wZXJseSBvbiB5b3VyIHNpdGUuICBJdCBpcyBhZHZpc2VkIHRoYXQgeW91IHdvcmsgd2l0aCB5b3VyIHN5c3RlbSBhZG1pbmlzdHJhdG9yIG9yIGhvc3QgcHJvdmlkZXIgdG8gdHVuZSB0aGVzZSBzZXR0aW5ncyBmb3IgeW91ciByZXF1aXJlbWVudHMuPC9wPic7CiRsYW5nWydwb3N0dW5pbnN0YWxsJ10gPSAnVGhlIFVwbG9hZHMgbW9kdWxlIGhhcyBiZWVuIHN1Y2Nlc3NmdWxseSByZW1vdmVkLiAgTm8gZmlsZXMgaGF2ZSBiZWVuIHJlbW92ZWQgZnJvbSB5b3VyIHVwbG9hZHMgZGlyZWN0b3J5LCBhbmQgZmlsZSBpbnRlZ3JpdHkgaXMgaW50YWN0JzsKJGxhbmdbJ3ByZWZlcmVuY2VzJ10gPSAnUHJlZmVyZW5jZXMnOwokbGFuZ1sncHJlZnN1cGRhdGVkJ10gPSAnTW9kdWxlIHByZWZlcmVuY2VzIHVwZGF0ZWQuJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeWRlc2MnXSA9ICdEZXNjcmlwdGlvbic7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnlsaXN0YWJsZSddID0gJ0ZpbGVzIGluIHRoaXMgZGlyZWN0b3J5IGNhbiBiZSBsaXN0ZWQnOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5bmFtZSddID0gJ0NhdGVnb3J5IE5hbWUnOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5cGF0aCddID0gJ1NlcnZlciBQYXRoJzsKJGxhbmdbJ3Byb21wdF9kZWxldGVkaXJlY3RvcnknXSA9ICdEZWxldGUgY2F0ZWdvcnkgZGlyZWN0b3J5Pyc7CiRsYW5nWydwcm9tcHRfbWF4X3VwbG9hZHNpemUnXSA9ICdNYXhpbXVtIGZpbGUgc2l6ZSBhbGxvd2VkIChLYiknOwokbGFuZ1sncHJvbXB0X3ZhbGlkX3VwbG9hZGV4dGVuc2lvbnMnXSA9ICdWYWxpZCB1cGxvYWQgZXh0ZW5zaW9ucyc7CiRsYW5nWydzY2FuJ10gPSAnU2Nhbic7CiRsYW5nWydzZWxlY3RjYXRlZ29yeSddID0gJ1NlbGVjdCBDYXRlZ29yeSc7CiRsYW5nWydzaXplJ10gPSAnU2l6ZSc7CiRsYW5nWydzaXpla2InXSA9ICdTaXplIChLYiknOwokbGFuZ1snc3VibWl0J10gPSAnU3VibWl0JzsKJGxhbmdbJ3N1bW1hcnlfdGVtcGxhdGUnXSA9ICdTdW1tYXJ5IFRlbXBsYXRlcyc7CiRsYW5nWydzdW1tYXJ5J10gPSAnU3VtbWFyeSc7CiRsYW5nWyd0aXRsZV9hZG1pbl9wYW5lbCddID0gJ1VwbG9hZHMgTW9kdWxlJzsKJGxhbmdbJ3RpdGxlX21vZF9hZG1pbiddID0gJ01vZHVsZSBBZG1pbiBQYW5lbCc7CiRsYW5nWyd0aXRsZV9tb2RfcHJlZnMnXSA9ICdNb2R1bGUgUHJlZmVyZW5jZXMnOwokbGFuZ1sndGl0bGVfc3VibmV0X2V4Y2x1c2lvbnMnXSA9ICdFeGNsdWRlIHN1Ym5ldHMgZnJvbSBzdGF0aXN0aWNzJzsKJGxhbmdbJ3RpdGxlX3ZhbGlkX3VwbG9hZGV4dGVuc2lvbnMnXSA9ICdWYWxpZCBFeHRlbnNpb25zJzsKJGxhbmdbJ3VuaW5zdGFsbGVkJ10gPSAnTW9kdWxlIFVuaW5zdGFsbGVkLic7CiRsYW5nWyd1cGdyYWRlZCddID0gJ01vZHVsZSB1cGdyYWRlZCB0byB2ZXJzaW9uICVzLic7CiRsYW5nWyd1cGxvYWQnXSA9ICdVcGxvYWQnOwokbGFuZ1sndXBsb2FkZWQnXSA9ICdGaWxlICVzIHdhcyB1cGxvYWRlZCBieSAlcy4nOwokbGFuZ1sncmVwbGFjZWQnXSA9ICdGaWxlICVzIHdhcyByZXBsYWNlZCBieSAlcy4nOwokbGFuZ1snZGVsZXRlZCddID0gJ0ZpbGUgJXMgd2FzIGRlbGV0ZWQuJzsKJGxhbmdbJ3VwbG9hZGZvcm1fdGVtcGxhdGUnXSA9ICdVcGxvYWQgVGVtcGxhdGVzJzsKJGxhbmdbJ3VzZXJuYW1lJ10gPSAnVXNlcm5hbWUnOwokbGFuZ1snd2FybmluZ19kZWxldGVjYXRlZ29yeSddID0gJ1dBUk5JTkc6IFVzZSBjYXV0aW9uIHdoZW4gZGVsZXRpbmcgY2F0ZWdvcmllcy4gIEZpbGVzIG1heSBiZSBsb3N0JzsKPz4K]]></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[PD9waHAKJGxhbmdbJ2luZm9fY2F0ZWdvcnlkZWxldGFibGUnXSA9ICdBdXRob3JpemVkIHVzZXJzIHdpbGwgaGF2ZSBwZXJtaXNzaW9uIHRvIGRlbGV0ZSB0aGVzZSBmaWxlcy4gIFRoaXMgbWVhbnMgdGhhdCBhIHVybCB3aWxsIGJlIHByb3ZpZGVkIGluIHRoZSBhcHByb3ByaWF0ZSB0ZW1wbGF0ZXMgdG8gYWxsb3cgZGVsZXRpbmcgb2YgdGhlIGZpbGUuICBBIHdlYnNpdGUgZGV2ZWxvcGVyIGNhbiB1c2UgYXBwcm9wcmlhdGUgc21hcnR5IGxvZ2ljIHRvIHNob3cgYSBsaW5rIHRvIGF1dGhvcml6ZWQgdXNlcnMuJzsKJGxhbmdbJ2NvcHlfZmlsZXMnXSA9ICdDb3B5IEZpbGVzJzsKJGxhbmdbJ2Vycm9yX2ZpbGV0b29sYXJnZSddID0gJ1RoZSBmaWxlIHlvdSBhdHRlbXB0ZWQgdG8gdXBsb2FkZSBpcyBsYXJnZXIgdGhhbiB0aGUgQ01TTVMgbWF4aW11bSB1cGxvYWQgZmlsZSBzaXplJzsKJGxhbmdbJ2FyZXlvdXN1cmVfZGVsZXRlY2F0ZWdvcnknXSA9ICdBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gZGVsZXRlIHRoaXMgY2F0ZWdvcnk/JzsKJGxhbmdbJ2Vycm9yX2RlbGV0ZSddID0gJ0FuIGl0ZW0gY291bmQgbm90IGJlIGRlbGV0ZWQgKCVzKSc7CiRsYW5nWydjb25maXJtX2NhdF9tdWx0aWFjdGlvbiddID0gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBwZXJmb3JtIHRoaXMgYWN0aW9uIG9uIHRoZSBzZWxlY3RlZCBjYXRlZ29yaWVzPyc7CiRsYW5nWydlcnJvcl9ub3RoaW5nX3NlbGVjdGVkJ10gPSAnRXJyb3I6IE5vdGhpbmcgc2VsZWN0ZWQnOwokbGFuZ1snd2l0aF9zZWxlY3RlZCddID0gJ1dpdGggU2VsZWN0ZWQ6JzsKJGxhbmdbJ2Vycm9yX3JlcGxhY2VfbWlzbWF0Y2hlZF9maWxlZXh0J10gPSAnV2hlbiByZXBsYWNpbmcgYSBmaWxlLCB5b3UgbXVzdCB1cGxvYWQgYSBmaWxlIG9mIHRoZSBzYW1lIGV4YWN0IHR5cGUgKGJ5IGZpbGUgZXh0ZW5zaW9uKS4gIFRoZSBmaWxlIHlvdSBzZWxlY3RlZCBkb2VzIG5vdCBtYXRjaCB0aGF0IG9mIHRoZSBvcmlnaW5hbCBmaWxlLic7CiRsYW5nWydyZXBsYWNlJ10gPSAnUmVwbGFjZSc7CiRsYW5nWydpbmZvX3JlcGxhY2VmaWxlJ10gPSAnWW91IG1heSB1cGxvYWQgYSByZXBsYWNlbWVudCBmaWxlLCBpZiB0aGUgZmlsZSBpcyBhbiBpbWFnZSB0eXBlLCBhbmQgeW91IGhhdmUgbm90IHNwZWNpZmllZCBhIHJlcGxhY2VtZW50IHRodW1ibmFpbCwgYSBuZXcgdGh1bWJuYWlsIHdpbGwgYmUgZ2VuZXJhdGVkJzsKJGxhbmdbJ3Byb21wdF9yZXBsYWNlZmlsZSddID0gJ1VwbG9hZCByZXBsYWNlbWVudCBmaWxlJzsKJGxhbmdbJ3RpdGxlX2ZpeHNwYWNlcyddID0gJ0ZpeCBzcGFjZXMgaW4gdGhlIGZpbGVuYW1lJzsKJGxhbmdbJ2NhdGVnb3J5X2NvcGllZCddID0gJ0NhdGVnb3J5IHN1Y2Nlc3NmdWxseSBjb3BpZWQnOwokbGFuZ1snZXJyb3JfZHVwbGljYXRlcGF0aCddID0gJ1BsZWFzZSBzcGVjaWZ5IGEgZGlyZWN0b3J5IG5hbWUgdGhhdCBpcyBkaWZmZXJlbnQgZnJvbSB0aGUgc291cmNlLCBhbmQgaXMgbm90IGFscmVhZHkgaW4gdXNlJzsKJGxhbmdbJ29wZXJhdGlvbl9jYW5jZWxsZWQnXSA9ICdPcGVyYXRpb24gQ2FuY2VsbGVkJzsKJGxhbmdbJ3NvdXJjZSddID0gJ1NvdXJjZSc7CiRsYW5nWydkZXN0aW5hdGlvbiddID0gJ0Rlc3RpbmF0aW9uJzsKJGxhbmdbJ3Byb21wdF9jb3B5X2ZpbGVzJ10gPSAnQ29weSBjYXRlZ29yeSBGaWxlcyc7CiRsYW5nWydpbmZvX2NvcHlfZmlsZXMnXSA9ICdDb3B5IHRoZSBmaWxlcyBmcm9tIHRoZSBzb3VyY2UgY2F0ZWdvcnkgdG8gdGhlIGRlc3RpbmF0aW9uIGNhdGVnb3J5JzsKJGxhbmdbJ2V4dHJhJ10gPSAnRXh0cmEnOwokbGFuZ1snY29weSddID0gJ0NvcHknOwokbGFuZ1snc2VsZWN0b25lJ10gPSAnU2VsZWN0IE9uZSc7CiRsYW5nWydhdXRvd2F0ZXJtYXJrJ10gPSAnQXV0b21hdGljYWxsIHBsYWNlIHdhdGVybWFya3Mgb24gaW1hZ2VzJzsKJGxhbmdbJ2ltYWdlX3NldHRpbmdzJ10gPSAnSW1hZ2UgU2V0dGluZ3MnOwokbGFuZ1sncHJvbXB0X2dldGZpbGVfcmVzdWx0cGFnZSddID0gJ1BhZ2UgdG8gdXNlIGZvciBlcnJvcnMgb3Igb3RoZXIgbWVzc2FnZXMgcmVsYXRlZCB0byBmaWxlIGRvd25sb2FkaW5nJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRfa2V5J10gPSAnVGhlIHVwbG9hZCBrZXkgc3BlY2lmaWVkIGlzIGludmFsaWQgKG1heWJlIGl0IGhhcyByZWFjaGVkIGl0cyBtYXhpbXVtIGRvd25sb2FkIGNhcGFjaXR5IG9yIGhhcyBleHBpcmVkKSc7CiRsYW5nWydkZmx0X3RpbWVsaW1pdGVkX3N1YmplY3QnXSA9ICd7JHNpdGVuYW1lfSAtIFlvdSBoYXZlIGJlZW4gZ3JhbnRlZCBhY2Nlc3MgdG8geyRlbnRyeS0+dXBsb2FkX25hbWV8c3RyaXBfdGFnc30gZm9yIGEgbGltaXRlZCB0aW1lJzsKJGxhbmdbJ3Byb21wdF90aW1lbGltaXRlZF9zdWJqZWN0J10gPSAnU3ViamVjdCBmb3IgZW1haWwgY3JlYXRlZCB3aGVuIHNlbmRpbmcgYSB0aW1lIGxpbWl0ZWQgVVJMJzsKJGxhbmdbJ3Byb21wdF90aW1lbGltaXRlZF9hdXRvZGVsZXRlJ10gPSAnQXV0byBkZWxldGUgZXhwaXJlZCBlbnRyaWVzIGFmdGVyIE4gaG91cnMgPGVtPihzcGVjaWZ5IDAgdG8gZGlzYWJsZSBhdXRvZGVsZXRlKTwvZW0+Oic7CiRsYW5nWydwcm9tcHRfdGltZWxpbWl0ZWRfc2VuZGl0J10gPSAnU2VuZCB0aGlzIHVybCB0byB0aGUgZGVzaWduYXRlZCBlbWFpbCBhZGRyZXNzPyc7CiRsYW5nWyd1cmxfa2V5J10gPSAnVVJMIEtleSc7CiRsYW5nWydjcmVhdGVkJ10gPSAnQ3JlYXRlZCc7CiRsYW5nWydleHBpcmVzJ10gPSAnRXhwaXJlcyc7CiRsYW5nWydhZGRlZGl0X3RpbWVsaW1pdGVkX2tleSddID0gJ0FkZC9FZGl0IFRpbWUgTGltaXRlZCBLZXknOwokbGFuZ1sndGltZV9saW1pdGVkX2tleV9hZGRlZCddID0gJ1RpbWUgTGltaXRlZCBLZXkgQWRkZWQnOwokbGFuZ1snbnVtX2hvdXJzJ10gPSAnTnVtYmVyIG9mIEhvdXJzJzsKJGxhbmdbJ251bV9kb3dubG9hZHMnXSA9ICdOdW1iZXIgb2YgRG93bmxvYWRzJzsKJGxhbmdbJ2VtYWlsX2FkZHJlc3MnXSA9ICdFbWFpbCBBZGRyZXNzJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdfaW52YWxpZCddID0gJ0EgcmVxdWlyZWQgdmFsdWUgaXMgbWlzc2luZyBvciBpbnZhbGlkOiAlcyc7CiRsYW5nWydhZGRfdGltZWxpbWl0ZWRfa2V5J10gPSAnQWRkIFRpbWUgTGltaXRlZCBLZXknOwokbGFuZ1snZmlsZV9pbmZvMiddID0gJ0ZpbGUgJXMgKGlkPSVkKSc7CiRsYW5nWydpbmZvX3RpbWVsaW1pdGVkX2Rvd25sb2FkcyddID0gJ1NwZWNpZnkgdGhlIGRlZmF1bHQgbnVtYmVyIG9mIHRpbWVzIHRoYXQgYSBmaWxlIGlkZW50aWZpZWQgYnkgYSBwYXJ0aWN1bGFyIGtleSBjYW4gYmUgZG93bmxvYWRlZCc7CiRsYW5nWydwcm9tcHRfdGltZWxpbWl0ZWRfZG93bmxvYWRzJ10gPSAnRGVmYXVsdCBOdW1iZXIgb2YgRG93bmxvYWRzJzsKJGxhbmdbJ2luZm9fdGltZWxpbWl0ZWRfaG91cnMnXSA9ICdTcGVjaWZ5IHRoZSBkZWZhdWx0IG51bWJlciBvZiBob3VycyB0aGF0IGEgdGltZSBsaW1pdGVkIGtleSBpcyB2YWxpZCBmb3IuICBTcGVjaWZ5IDAgZm9yIHVubGltaXRlZCc7CiRsYW5nWydwcm9tcHRfdGltZWxpbWl0ZWRfaG91cnMnXSA9ICdOdW1iZXIgb2YgaG91cnMgYSBUaW1lIExpbWl0ZWQgS2V5IGlzIHZhbGlkIGZvcic7CiRsYW5nWyd0aW1lbGltaXRlZF91cmxfc2V0dGluZ3MnXSA9ICdUaW1lIExpbWl0ZWQgS2V5IFNldHRpbmdzJzsKJGxhbmdbJ21hbmFnZV90aW1lbGltaXRlZCddID0gJ01hbmFnZSBUaW1lIExpbWl0ZWQgQWNjZXNzJzsKJGxhbmdbJ3VwbG9hZGluZ19zZXR0aW5ncyddID0gJ0ZpbGUgVXBsb2FkIFNldHRpbmdzJzsKJGxhbmdbJ2dlbmVyYWxfc2V0dGluZ3MnXSA9ICdHZW5lcmFsIFNldHRpbmdzJzsKJGxhbmdbJ3RodW1ibmFpbF9zZXR0aW5ncyddID0gJ1RodW1ibmFpbCBHZW5lcmF0aW9uJzsKJGxhbmdbJ3RpdGxlX3JlZGlyZWN0X29uX3NlbmRmaWxlJ10gPSAnUGFnZSB0byByZWRpcmVjdCB0byBhZnRlciBzZW5kaW5nIGEgZmlsZSc7CiRsYW5nWydsYmxfYmFjayddID0gJ0JhY2snOwokbGFuZ1snbGJsX3RlbXBsYXRlcyddID0gJ01vZGlmeSBUZW1wbGF0ZXMnOwokbGFuZ1sncHJvbXB0X3B1YmxpY19maWVsZCddID0gJ0ZpZWxkIGlzIHB1YmxpYyA8ZW0+KGNhbiBiZSB2aWV3ZWQgYnkgc2l0ZSB2aXNpdG9ycyk8L2VtPic7CiRsYW5nWyd1cGxvYWRfZWRpdGVkJ10gPSAnRmlsZSBEZXRhaWxzIEVkaXRlZCBvbiAlcyc7CiRsYW5nWydpbmZvX3RodW1ibmFpbCddID0gJ0VpbiBvcHRpb25hbGVzIFZvcnNjaGF1YmlsZCc7CiRsYW5nWyd1cGxvYWRfZmlsZSddID0gJ1VwbG9hZCBhIG5ldyBmaWxlJzsKJGxhbmdbJ21zZ19maWVsZF9kZWxldGVkJ10gPSAnRmllbGQgZGVsZXRlZCc7CiRsYW5nWydhc2tfZGVsZXRlX2ZpZWxkJ10gPSAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSB0aGlzIGZpZWxkIGRlZmluaXRpb24gYW5kIGFsbCBhc3NvY2lhdGVkIHZhbHVlcz8nOwokbGFuZ1sneWVzJ10gPSAnWWVzJzsKJGxhbmdbJ25vJ10gPSAnTm8nOwokbGFuZ1sndHlwZSddID0gJ1R5cGUnOwokbGFuZ1snZmllbGR0eXBlX211bHRpc2VsZWN0J10gPSAnTXVsdGlzZWxlY3QgTGlzdCc7CiRsYW5nWydmaWVsZHR5cGVfZHJvcGRvd24nXSA9ICdEcm9wZG93biBMaXN0JzsKJGxhbmdbJ2ZpZWxkdHlwZV9jaGVja2JveCddID0gJ0NoZWNrYm94JzsKJGxhbmdbJ2ZpZWxkdHlwZV90ZXh0YXJlYSddID0gJ1RleHQgQXJlYSc7CiRsYW5nWydmaWVsZHR5cGVfdGV4dGlucHV0J10gPSAnVGV4dCBJbnB1dCc7CiRsYW5nWydwcm9tcHRfdXNlX3d5c2l3eWcnXSA9ICdVc2UgdGhlIHd5c2l3eWcgd2hlbiBlZGl0aW5nIHRoZSB2YWx1ZSBmb3IgdGhpcyBmaWVsZCc7CiRsYW5nWydwcm9tcHRfZGVmYXVsdF9jb250ZW50J10gPSAnRGVmYXVsdCBjb250ZW50IGZvciB0ZXh0IGFyZWEnOwokbGFuZ1sncHJvbXB0X2Ryb3Bkb3duX29wdGlvbnMnXSA9ICdPcHRpb25zIChvbmUgZW50cnkgcGVyIGxpbmUpJzsKJGxhbmdbJ3Byb21wdF9maWVsZF9tYXhsZW5ndGgnXSA9ICdGaWVsZCBNYXhpbXVtIExlbmd0aCc7CiRsYW5nWydwcm9tcHRfZmllbGRfbGVuZ3RoJ10gPSAnRmllbGQgTGVuZ3RoJzsKJGxhbmdbJ3Byb21wdF9maWVsZF90eXBlJ10gPSAnRmllbGQgVHlwZSc7CiRsYW5nWydwcm9tcHRfZmllbGRfbmFtZSddID0gJ0ZpZWxkIE5hbWUnOwokbGFuZ1sndGl0bGVfYWRkX2ZpZWxkJ10gPSAnQWRkIG9yIEVkaXQgYSBGaWVsZCBEZWZpbml0aW9uJzsKJGxhbmdbJ2ZpZWxkX2RlZmluaXRpb25zJ10gPSAnRmllbGQgRGVmaW5pdGlvbnMnOwokbGFuZ1sncHJvbXB0X2FkZF9maWVsZCddID0gJ0FkZCBhIEZpZWxkIERlZmluaXRpb24nOwokbGFuZ1sncGFyYW1fYWN0aW9uJ10gPSAnU3BlY2lmaWVzIHRoZSBiZWhhdmlvdXIgb2YgdGhlIG1vZHVsZSB0YWcuICBQb3NzaWJsZSB2YWx1ZXMgYXJlOiBkZWZhdWx0IC0gKHRoZSBkZWZhZmF1bHQgYmVoYXZpb3IpLCBkZXRhaWwgLSB0byBkaXNwbGF5IGEgZGV0YWlsIHZpZXcgb2YgYSBzaW5nbGUgZmlsZSBiYXNlZCBvbiB0aGUgdXBsb2FkX2lkLCBhbmQgeW91c2VuZGl0IC0gdG8gZGlzcGxheSBhIGZvcm0gdG8gYWxsb3cgdXBsb2FkaW5nIGEgZmlsZSwgYW5kIHNlbmRpbmcgaXQgdG8gbnVtZXJvdXMgYWRkcmVzc2VzIGluIG9uZSBzdGVwJzsKJGxhbmdbJ3BhcmFtX3NlbmRmaWxlcGFnZSddID0gJ1NwZWNpZnkgdGhlIHBhZ2UgaWQgb3IgYWxpYXMgb2YgYSBwYWdlIHRoYXQgc2hvdWxkIGJlIHVzZWQgZm9yIHRoZSBzZW5kIGEgZmlsZSBmb3JtJzsKJGxhbmdbJ2ZpbGVfdXBsb2FkZWQnXSA9ICdEYXRlaSBlcmZvbGdyZWljaCBob2NoZ2VsYWRlbic7CiRsYW5nWyd0byddID0gJ0FuJzsKJGxhbmdbJ3RpdGxlX3lvdXNlbmRpdGZvcm1fdGVtcGxhdGUnXSA9ICdBZGQgb3IgRWRpdCBhICZxdW90O1lvdSBTZW5kIEl0JnF1b3Q7IEZvcm0gVGVtcGxhdGUnOwokbGFuZ1sneW91c2VuZGl0Zm9ybV90ZW1wbGF0ZSddID0gJ1lvdVNlbmRJdCBGb3JtIFRlbXBsYXRlcyc7CiRsYW5nWyd0aXRsZV95b3VzZW5kaXRmb3JtX3N5c2RlZmF1bHQnXSA9ICdTeXN0ZW0gZGVmYXVsdCAmcXVvdDt5b3Ugc2VuZCBpdCZxdW90OyB0ZW1wbGF0ZSc7CiRsYW5nWydtc2dfZmlsZV9zZW50J10gPSAnQSBtZXNzYWdlIGhhcyBiZWVuIHNlbnQgdG8gdGhlIHNlbGVjdGVkIGFkZHJlc3NlcyB0aGF0IGNvbnRhaW5zIGluZm9ybWF0aW9uIGFib3V0IHRoZSBmaWxlIGFuZCBob3cgdG8gcmV0cmlldmUgaXQuJzsKJGxhbmdbJ2Vycm9yX25vYWRkcmVzc2VzJ10gPSAnWW91IG11c3Qgc3VwcGx5IGF0IGxlYXN0IG9uZSBkZXN0aW5hdGlvbiBhZGRyZXNzJzsKJGxhbmdbJ2Vycm9yX25vc3ViamVjdCddID0gJ1lvdSBtdXN0IHN1cHBseSBhIHN1YmplY3QnOwokbGFuZ1snc3ViamVjdCddID0gJ0JldHJlZmYnOwokbGFuZ1sndGl0bGVfc2VuZGZpbGVwYWdlJ10gPSAnU2VpdGUgZiZ1dW1sO3IgZGFzICZxdW90O1NlbmQgYSBGaWxlJnF1b3Q7IEZvcm11bGFyJzsKJGxhbmdbJ2ZpbGVfaW5mbyddID0gJ0RhdGVpIEluZm8nOwokbGFuZ1snc2VuZCddID0gJ1NlbmRlbic7CiRsYW5nWydub3RlcyddID0gJ05vdGl6ZW4nOwokbGFuZ1snYWRkcmVzc2VlcyddID0gJ1NlbmRlIEluZm9ybWF0aW9uZW4gJnV1bWw7YmVyIGRpZXNlIERhdGVpIGFuJzsKJGxhbmdbJ3Byb21wdF9zZW5kZmlsZV9lbWFpbF90ZW1wbGF0ZSddID0gJyZxdW90O1NlbmQgYSBGaWxlJnF1b3Q7IEVtYWlsIFRlbXBsYXRlJzsKJGxhbmdbJ3RpdGxlX3NlbmRmaWxlZm9ybV90ZW1wbGF0ZSddID0gJ0FkZCBvciBFZGl0IGEgJnF1b3Q7U2VuZCBhIEZpbGUmcXVvdDsgRm9ybSBUZW1wbGF0ZSc7CiRsYW5nWydzZW5kZmlsZWZvcm1fdGVtcGxhdGUnXSA9ICcmcXVvdDtTZW5kIGEgRmlsZSZxdW90OyBGb3JtIFRlbXBsYXRlcyc7CiRsYW5nWydwcm9tcHRfbm90aWZ5X2VtYWlsX3RlbXBsYXRlJ10gPSAnRmlsZSB1cGxvYWQgbm90aWZpY2F0aW9uIGVtYWlsIHRlbXBsYXRlJzsKJGxhbmdbJ3RpdGxlX3NlbmRmaWxlZm9ybV9zeXNkZWZhdWx0J10gPSAnU3lzdGVtIGRlZmF1bHQgJnF1b3Q7U2VuZCBhIEZpbGUmcXVvdDsgZm9ybSB0ZW1wbGF0ZSc7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnlkZWxldGFibGUnXSA9ICdEYXRlaWVuIGluIGRpZXNlciBLYXRlZ29yaWUgayZvdW1sO25uZW4gZ2VsJm91bWw7c2NodCB3ZXJkZW4nOwokbGFuZ1sndGl0bGVfYWxsb3dfZGVsZXRlJ10gPSAnRGFzIEwmb3VtbDtzY2hlbiB2b24gRGF0ZWllbiBpbSBGcm9udGVuZCBlcmxhdWJlbic7CiRsYW5nWydkZWZhdWx0X3RlbXBsYXRlcyddID0gJ1N0YW5kYXJkIFRlbXBsYXRlcyc7CiRsYW5nWydmaXJzdHBhZ2UnXSA9ICdFcnN0ZSBTZWl0ZSc7CiRsYW5nWydwcmV2cGFnZSddID0gJ1ZvcmhlcmlnZSBTZWl0ZSc7CiRsYW5nWyduZXh0cGFnZSddID0gJ04mYXVtbDtjaHN0ZSBTZWl0ZSc7CiRsYW5nWydsYXN0cGFnZSddID0gJ0xldHp0ZSBTZWl0ZSc7CiRsYW5nWydmaXJzdHBhZ2VfYXJyb3cnXSA9ICc8PCc7CiRsYW5nWydwcmV2cGFnZV9hcnJvdyddID0gJzwnOwokbGFuZ1snbmV4dHBhZ2VfYXJyb3cnXSA9ICc+JzsKJGxhbmdbJ2xhc3RwYWdlX2Fycm93J10gPSAnPj4nOwokbGFuZ1sncGFnZSddID0gJ1NlaXRlJzsKJGxhbmdbJ29mJ10gPSAndm9uJzsKJGxhbmdbJ3Byb21wdF9ncm91cGxpc3QnXSA9ICdBdXRvcmlzaWVydGUgRkVVLUdydXBwZW4nOwokbGFuZ1snaW5mb19ncm91cGxpc3QnXSA9ICdXJmF1bWw7aGxlbiBTaWUgZGllIEdydXBwZW4gZGVzIEZyb250ZW5kVXNlcnMtTW9kdWxzLCBkaWUgWnVncmlmZiBhdWYgZGllc2UgS2F0ZWdvcmllIGhhYmVuIHNvbGxlbi4gV2VubiBTaWUgYWxsZSBFaW50ciZhdW1sO2dlIGFidyZhdW1sO2hsZW4sIGVybGF1YmVuIFNpZSBhbGxlbiBkZW4gWnVncmlmZi4nOwokbGFuZ1sndGl0bGVfc2NhbiddID0gJ0RpZXNlIEthdGVnb3JpZSBhdWYgbmV1ZSBEYXRlaWVuIHByJnV1bWw7ZmVuJzsKJGxhbmdbJ3RpdGxlX2NyZWF0ZV90aHVtYm5haWxzJ10gPSAnRmVobGVuZGUgVm9yc2NoYXViaWxkZXIgZiZ1dW1sO3IgZGllIERhdGVpZW4gZGllc2VyIEthdGVnb3JpZSc7CiRsYW5nWydjcmVhdGVfdGh1bWJuYWlscyddID0gJ1ZvcnNjaGF1YmlsZGVyIGVyemV1Z2VuJzsKJGxhbmdbJ3RpdGxlX2NyZWF0ZV90aHVtYm5haWwnXSA9ICdFaW4gVm9yc2NoYXViaWxkIGYmdXVtbDtyIGRpZXNlIERhdGVpIGVyemV1Z2VuJzsKJGxhbmdbJ2NyZWF0ZV90aHVtYm5haWwnXSA9ICdFaW4gVm9yc2NoYXViaWxkIGVyemV1Z2VuJzsKJGxhbmdbJ2Vycm9yX3BhdGhlcnJvciddID0gJ0tvbm50ZSBkYXMgVmVyemVpY2huaXMgbmljaHQgJm91bWw7ZmZuZW4gKEJlcmVjaHRpZ3VuZ3MtUHJvYmxlbT8pJzsKJGxhbmdbJ3RpdGxlX2Rvd25sb2FkX2NodW5rc2l6ZSddID0gJ0dyJm91bWw7JnN6bGlnO2UgZGVzIERvd25sb2Fkcyc7CiRsYW5nWydpbmZvX2Rvd25sb2FkX2NodW5rc2l6ZSddID0gJ0RpZSBWZXJ3ZW5kdW5nIGRpZXNlcyBQYXJhbWV0ZXJzIGhhdCBBdXN3aXJrdW5nZW4gYXVmIGRpZSBHZXNjaHdpbmRpZ2tlaXQgYmVpbSBIZXJ1bnRlcmxhZGVuIHVuZCBrYW5uIGhlbGZlbiwgd2VubiBudXIgd2VuaWcgU3BlaWNoZXIgenVyIFZlcmYmdXVtbDtndW5nIHN0ZWh0Lic7CiRsYW5nWyd3YXJuaW5nX3NhZmVfbW9kZSddID0gJ0RlciBQSFAtU2FmZS1Nb2R1cyBpc3QgYWt0aXZpZXJ0LiBBdWZncnVuZCBkZXNzZW4ga2FubiBlcyBiZWltIEhvY2hsYWRlbiB2b24gRGF0ZWllbiB6dSBQcm9ibGVtZW4ga29tbWVuIChCZXJlY2h0aWd1bmdlbikuIEF1JnN6bGlnO2VyZGVtIGthbm4gZXMgbWl0IGRlciBGJmF1bWw7aGlna2VpdCBkZXMgTW9kdWxzLCBlaW5pZ2UgRWluc3RlbGx1bmdlbiBpbiBkZXIgaW5pLURhdGVpICZ1dW1sO2JlcnNjaHJlaWJlbiB6dSBrJm91bWw7bm5lbiwgenUgdW5lcncmdXVtbDtuc2NodGVuICZVdW1sO2JlcnNjaG5laWR1bmdlbiBrb21tZW4uIFNpZSBzb2xsdGVuIHNpY2ggZGFoZXIgbWl0IElocmVtIFByb3ZpZGVyIGluIFZlcmJpbmR1bmcgc2V0emVuLCBvYiBlciBkZW4gU2FmZS1Nb2R1cyBkZWFrdGl2aWVyZW4ga2Fubi4nOwokbGFuZ1sncGFyYW1fZGV0YWlscGFnZSddID0gJ0RpZXMgaXN0IGluc2Jlc29uZGVyZSBkYW5uIG4mdXVtbDt0emxpY2gsIHdlbm4gZGllIERldGFpbHMgbWl0IGVpbmVtIGFuZGVyZW4gU2VpdGVuLVRlbXBsYXRlIGFuZ2V6ZWlndCB3ZXJkZW4gc29sbGVuLiBEaWVzZXIgUGFyYW1ldGVyIGJlbiZvdW1sO3RpZ3QgZW50d2VkZXIgZGllIElEIG9kZXIgZGVuIEFsaWFzIGRlciBTZWl0ZSwgZGllIHp1ciBBbnplaWdlIGRlciBEZXRhaWxzIHZlcndlbmRldCB3ZXJkZW4gc29sbC4nOwokbGFuZ1sncGFyYW1fcHJlZml4J10gPSAnRWluIGJvb2xzY2hlciBXZXJ0LCBkZXIgYW56ZWlndCwgbWl0IHdlbGNoZW0gUHJlZml4IGRpZSBEYXRlaWVuIGdla2VubnplaWNobmV0IHdlcmRlbiBzb2xsZW4nOwokbGFuZ1sncGFyYW1fcHJlZml4X2ZldSddID0gJ0VpbiBib29sc2NoZXIgV2VydCwgZGVyIGFuemVpZ3QsIG1pdCB3ZWxjaGVtIFByZWZpeCBkaWUgRGF0ZWllbiBkZXMgYWt0dWVsbGVuIEF1dG9ycyBnZWtlbm56ZWljaG5ldCB3ZXJkZW4gc29sbGVuLiBPaG5lIFZvcmdhYmUgd2lyZCBkaWUgYWt0dWVsbGUgWmVpdCBhbHMgUHJlZml4IHZlcndlbmRldCAoaW0gZGVjaGV4LUZvcm1hdCknOwokbGFuZ1sncGFyYW1fbm9jYXB0Y2hhJ10gPSAnQ2FwdGNoYS1TdXBwb3J0IChzdGFuZGFyZG1hJnN6bGlnO2lnIGFrdGl2aWVydCkgYmVpbSBIb2NobGFkZW4gZGVha3RpdmllcmVuJzsKJGxhbmdbJ3RpdGxlX3VwbG9hZGZvcm1fdGVtcGxhdGUnXSA9ICdUZW1wbGF0ZSBmJnV1bWw7ciBkYXMgRm9ybXVsYXIgenVtIEhvY2hsYWRlbiB2b24gRGF0ZWllbiBiZWFyYmVpdGVuJzsKJGxhbmdbJ2NhcHRjaGFfdGl0bGUnXSA9ICdCaXR0ZSBnZWJlbiBTaWUgZGVuIFRleHQgZWluLCBkZXIgaW4gZGllc2VtIEJpbGQgYW5nZXplaWd0IHdpcmQnOwokbGFuZ1snZXJyb3JfY2FwdGNoYW1pc21hdGNoJ10gPSAnRGVyIFRleHQsIGRlbiBTaWUgZWluZ2VnZWJlbiBoYWJlbiwgZW50c3ByaWNodCBuaWNodCBkZW0gYW5nZXplaWd0ZW4gQmlsZCc7CiRsYW5nWyd0aXRsZV9hdXRvdGh1bWJuYWlsX2V4dGVuc2lvbnMnXSA9ICdGJnV1bWw7ciBEYXRlaWVuIG1pdCBkaWVzZXIgTmFtZW5zZXJ3ZWl0ZXJ1bmcgVm9yc2NoYXViaWxkZXIgZXJ6ZXVnZW4nOwokbGFuZ1sndGl0bGVfYXV0b3RodW1ibmFpbF9zaXplJ10gPSAnTWF4aW1hbGUgR3Imb3VtbDsmc3psaWc7ZSBmJnV1bWw7ciBkaWUgZXJ6ZXVndGVuIFZvcnNjaGF1YmlsZGVyIChpbiBQaXhlbCknOwokbGFuZ1sncHJvbXB0X3VwbG9hZF9pY29uJ10gPSAnRWluIEljb24gaG9jaGxhZGVuJzsKJGxhbmdbJ2luZm9fc3lzZGVmYXVsdCddID0gJ0RpZXNlciBUZXh0IHdpcmQgdmVyd2VuZGV0LCB3ZW5uIGVpbiBuZXVlcyBUZW1wbGF0ZSBkaWVzZXMgVHlwcyBlcnN0ZWxsdCB3aXJkJzsKJGxhbmdbJ3RpdGxlX2RldGFpbHJwdF9zeXNkZWZhdWx0J10gPSAnVGVtcGxhdGUgZiZ1dW1sO3IgZGVuIGRldGFpbGllcnRlbiBCZXJpY2h0IChNb2R1bHN0YW5kYXJkKSc7CiRsYW5nWyd0aXRsZV9zdW1tYXJ5cnB0X3N5c2RlZmF1bHQnXSA9ICdUZW1wbGF0ZSBmJnV1bWw7ciBkZW4gS3VyemJlcmljaHQgKE1vZHVsc3RhbmRhcmQpJzsKJGxhbmdbJ3RpdGxlX3VwbG9hZGZvcm1fc3lzZGVmYXVsdCddID0gJ1RlbXBsYXRlIGYmdXVtbDtyIGRhcyBIb2NobGFkZW4gdm9uIERhdGVpZW4gKE1vZHVsc3RhbmRhcmQpJzsKJGxhbmdbJ3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUgJzsKJGxhbmdbJ3Jlc2V0dG9kZWZhdWx0J10gPSAnQXVmIGRlbiBNb2R1bHN0YW5kYXJkIHp1ciZ1dW1sO2Nrc2V0emVuJzsKJGxhbmdbJ3RpdGxlX3N1bW1hcnlycHRfdGVtcGxhdGUnXSA9ICdUZW1wbGF0ZSBmJnV1bWw7ciBkZW4gS3VyemJlcmljaHQnOwokbGFuZ1sndGl0bGVfZGV0YWlscnB0X3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUgZiZ1dW1sO3IgZGVuIGRldGFpbGllcnRlbiBCZXJpY2h0JzsKJGxhbmdbJ3Byb21wdF9uYW1lJ10gPSAnTmFtZSAnOwokbGFuZ1sncHJvbXB0X2RlZmF1bHQnXSA9ICdTdGFuZGFyZCc7CiRsYW5nWydsZWdlbmRfdXBsb2FkZm9ybSddID0gJ0VpbmUgRGF0ZWkgaG9jaGxhZGVuJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdwYXJhbSddID0gJ0VzIGZlaGx0IGVpbiBlcmZvcmRlcmxpY2hlciBQYXJhbWV0ZXInOwokbGFuZ1snZXJyb3JfbWlzc2luZ25hbWUnXSA9ICdGJnV1bWw7ciBkZW4gRGF0ZWl0eXBlbiBtdXNzIGVpbiBOYW1lIGZlc3RnZWxlZ3Qgd2VyZGVuJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdleHRlbnNpb25zJ10gPSAnRXMgbXVzcyBtaW5kZXN0ZW5zIGVpbmUgRGF0ZWluYW1lbnNlcndlaXRlcnVuZyBmZXN0Z2VsZWd0IHdlcmRlbic7CiRsYW5nWydlcnJvcl9taXNzaW5naWNvbiddID0gJ0RhZiZ1dW1sO3IgbXVzcyBlaW4gSWNvbiBmZXN0Z2VsZWd0IHdlcmRlbic7CiRsYW5nWydlcnJvcl9ub3N1Y2hyb3cnXSA9ICdEaWUgZmVzdGdlbGVndGUgWmVpbGUga29ubnRlIG5pY2h0IGdlZnVuZGVuIHdlcmRlbic7CiRsYW5nWyduYW1lX3Vua25vd24nXSA9ICdVbmJla2FubnQnOwokbGFuZ1snZGVzY3JpcHRpb25fdW5rbm93biddID0gJ0Jlc2NocmVpYnVuZyBkZXIgRGF0ZWl0eXBlbiBmJnV1bWw7ciBuaWNodCAmdXVtbDtiZXJlaW5zdGltbWVuZGUgRGF0ZWllbic7CiRsYW5nWydpbWFnZSddID0gJ0JpbGQnOwokbGFuZ1snaWNvbiddID0gJ0lrb24nOwokbGFuZ1snZXh0ZW5zaW9ucyddID0gJ0RhdGVpbmFtZW5zZXJ3ZWl0ZXJ1bmdlbic7CiRsYW5nWydhZGRmaWxldHlwZSddID0gJ0VpbmVuIG5ldWVuIERhdGVpdHlwZW4gaGluenVmJnV1bWw7Z2VuJzsKJGxhbmdbJ2ZpbGVfdHlwZXMnXSA9ICdEYXRlaXR5cGVuJzsKJGxhbmdbJ2Vycm9yX25vY2F0ZWdvcnlpZCddID0gJ0VzIHd1cmRlIGtlaW5lIEthdGVnb3JpZS1JRCBlaW5nZWdlYmVuJzsKJGxhbmdbJ2Vycm9yX25vY2F0ZWdvcnknXSA9ICdFcyB3dXJkZSBrZWluZSBLYXRlZ29yaWUtSUQgZWluZ2VnZWJlbic7CiRsYW5nWydlcnJvcl90ZW1wbGF0ZW5hbWVleGlzdHMnXSA9ICdFcyBleGlzdGllcnQgYmVyZWl0cyBlaW4gVGVtcGxhdGUgbWl0IGRpZXNlbSBOYW1lbi4nOwokbGFuZ1sncHJvbXB0X3RlbXBsYXRlbmFtZSddID0gJ1RlbXBsYXRlLU5hbWUnOwokbGFuZ1sncHJvbXB0X3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUgJzsKJGxhbmdbJ3Byb21wdF9uZXd0ZW1wbGF0ZSddID0gJ0VpbiBuZXVlcyBUZW1wbGF0ZSBlcnN0ZWxsZW4nOwokbGFuZ1snaGVscF9PbkRvd25sb2FkJ10gPSAnPHA+RWluIEVyZWlnbmlzLCB3ZW5uIGVpbiBVc2VyIGVpbmUgRGF0ZWkgaGVydW50ZXJnZWxhZGVuIGhhdDwvcD4NCjxoND5QYXJhbWV0ZXI8L2g0Pg0KPHVsPg0KPGxpPjxlbT5pZDwvZW0+IC0gSUQgZGVyIGhvY2hnZWxhZGVuZW4gRGF0ZWk8L2xpPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBEYXRlaW5hbWU8L2xpPg0KPGxpPjxlbT5pcDwvZW0+IC0gSVAtQWRyZXNzZSBkZXMgaGVydW50ZXJsYWRlbmRlbiBVc2VyczwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2hlbHBfT25EZWxldGVDYXRlZ29yeSddID0gJzxwPkVpbiBFcmVpZ25pcywgd2VubiBlaW5lIEthdGVnb3JpZSBnZWwmb3VtbDtzY2h0IHd1cmRlPC9wPg0KPGg0PlBhcmFtZXRlcjwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIE5hbWUgZGVyIEthdGVnb3JpZTwvbGk+DQo8bGk+PGVtPnBhdGg8L2VtPiAtIFBmYWQgZGVyIEthdGVnb3JpZTwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2hlbHBfT25DcmVhdGVDYXRlZ29yeSddID0gJzxwPkVpbiBFcmVpZ25pcywgd2VubiBlaW5lIEthdGVnb3JpZSBlcnN0ZWxsdCB3dXJkZTwvcD4NCjxoND5QYXJhbWV0ZXI8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBOYW1lIGRlciBLYXRlZ29yaWU8L2xpPg0KPGxpPjxlbT5kZXNjcmlwdGlvbjwvZW0+IC0gQmVzY2hyZWlidW5nIGRlciBLYXRlZ29yaWU8L2xpPg0KPGxpPjxlbT5wYXRoPC9lbT4gLSBLYXRlZ29yaWVwZmFkPC9saT4NCjxsaT48ZW0+cGF0aDwvZW0+IC0gRWluIEZsYWcsIGRlciBhbnplaWd0LCBvYiBkaWUgS2F0ZWdvcmllIGdlbGlzdGV0IHdlcmRlbiBzb2xsPC9saT4NCjwvdWw+DQonOwokbGFuZ1snaGVscF9PblJlbW92ZSddID0gJzxwPkVpbiBFcmVpZ25pcywgd2VubiBlaW5lIERhdGVpICZ1dW1sO2JlciBkaWUgQWRtaW5pc3RyYXRpb24gb2RlciBkYXMgRnJvbnRlbmQgZW50ZmVybnQgd3VyZGU8L3A+DQo8aDQ+UGFyYW1ldGVyPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gTmFtZSBkZXIgZW50ZmVybnRlbiBEYXRlaTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBJRCBkZXIgZW50ZmVybnRlbiBEYXRlaTwvbGk+DQo8bGk+PGVtPmNhdGVnb3J5X2lkPC9lbT4gLSBJRCBkZXIgS2F0ZWdvcmllPC9saT4NCjwvdWw+DQonOwokbGFuZ1snaGVscF9PblVwbG9hZCddID0gJzxwPkVpbiBFcmVpZ25pcywgd2VubiBlaW5lIERhdGVpICZ1dW1sO2JlciBkaWUgQWRtaW5pc3RyYXRpb24gb2RlciBkYXMgRnJvbnRlbmQgaG9jaGdlbGFkZW4gd3VyZGU8L3A+DQo8aDQ+UGFyYW1ldGVyPC9oND4NCjx1bD4NCjxsaT48ZW0+Y2F0ZWdvcnk8L2VtPiAtIE5hbWUgZGVyIEthdGVnb3JpZTwvbGk+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIE5hbWUgZGVyIGhvY2hnZWxhZGVuZW4gRGF0ZWk8L2xpPg0KPGxpPjxlbT5zaXplPC9lbT4gLSBHciZvdW1sOyZzemxpZztlIGRlciBob2NoZ2VsYWRlbmVuIERhdGVpPC9saT4NCjxsaT48ZW0+c3VtbWFyeTwvZW0+IC0gS3VyemJlc2NocmVpYnVuZyBkZXIgaG9jaGdlbGFkZW5lbiBEYXRlaSAoa2FubiBsZWVyIHNlaW4pPC9lbT48L2xpPg0KPGxpPjxlbT5kZXNjcmlwdGlvbjwvZW0+IC0gZGllIGxhbmdlIEJlc2NocmVpYnVuZyBkZXIgaG9jaGdlbGFkZW5lbiBEYXRlaSAoa2FubiBsZWVyIHNlaW4pPC9lbT48L2xpPg0KPGxpPjxlbT5hdXRob3I8L2VtPiAtIEF1dG9yIGRlciBob2NoZ2VsYWRlbmVuIERhdGVpIChmYWxscyB2ZXJmJnV1bWw7Z2Jhcik8L2VtPjwvbGk+DQo8bGk+PGVtPmlwX2FkZHJlc3M8L2VtPiAtIEludGVybmV0LUFkcmVzc2UgZGVzIENsaWVudHMsIGRlciBkaWUgRGF0ZWkgaG9jaGdlbGFkZW4gaGF0PC9saT4NCjwvdWw+JzsKJGxhbmdbJ2luZm9fZXZlbnRfb25kZWxldGVjYXRlZ29yeSddID0gJ0VyZWlnbmlzLCB3ZW5uIGVpbmUgS2F0ZWdvcmllIGdlbCZvdW1sO3NjaHQgd3VyZGUnOwokbGFuZ1snaW5mb19ldmVudF9vbmNyZWF0ZWNhdGVnb3J5J10gPSAnRXJlaWduaXMsIHdlbm4gZWluZSBLYXRlZ29yaWUgZXJzdGVsbHQgd3VyZGUnOwokbGFuZ1snaW5mb19ldmVudF9vbmRvd25sb2FkJ10gPSAnRXJlaWduaXMsIHdlbm4gZWluZSBEYXRlaSBoZXJ1bnRlciBnZWxhZGVuIHd1cmRlJzsKJGxhbmdbJ2luZm9fZXZlbnRfb251cGxvYWQnXSA9ICdFcmVpZ25pcywgd2VubiBlaW5lIG5ldWUgRGF0ZWkgaG9jaGdlbGFkZW4gd3VyZGUnOwokbGFuZ1snaW5mb19ldmVudF9vbnJlbW92ZSddID0gJ0VyZWlnbmlzLCB3ZW5uIGVpbmUgRGF0ZWkgZW50ZmVybnQgd3VyZGUnOwokbGFuZ1sndGl0bGVfdXNlcnRhZ19vbnVwbG9hZCddID0gJ0JlbnV0emVyZGVmaW5pZXJ0ZXIgVGFnLCBkZXIgYXVmZ2VydWZlbiB3aXJkLCB3ZW5uIGRpZSBEYXRlaSB2b2xsc3QmYXVtbDtuZGlnIGhvY2hnZWxhZGVuIGlzdCc7CiRsYW5nWydub25lJ10gPSAnTmljaHRzJzsKJGxhbmdbJ21hdGNoZXNmb3VuZCddID0gJyZVdW1sO2JlcmVpbnN0aW1tdW5nZW4gZ2VmdW5kZW4nOwokbGFuZ1snZmlsdGVyJ10gPSAnRmlsdGVyICc7CiRsYW5nWyd0aXRsZV9yZWRpcmVjdG9udXBsb2FkJ10gPSAnRGVuIEJlbnV0emVyIG5hY2ggZGVtIEhvY2hsYWRlbiBlaW5lciBEYXRlaSBhdWYgZGllc2UgU2VpdGUgd2VpdGVybGVpdGVuIChJRC9BbGlhcyknOwokbGFuZ1snZGV0YWlscyddID0gJ0RldGFpbHMgJzsKJGxhbmdbJ2NvbmZpcm1fcHJlZmVyZW5jZXMnXSA9ICdXb2xsZW4gU2llIHdpcmtsaWNoIGRpZSBFaW5zdGVsbHVuZ2VuICZhdW1sO25kZXJuPyc7CiRsYW5nWydlcnJvcl9ub2ZpbGVzdXBsb2FkZWQnXSA9ICdFcyB3dXJkZW4ga2VpbmUgRGF0ZWllbiBob2NoZ2VsYWRlbi4nOwokbGFuZ1sncHJvbXB0X3JlcGxhY2UnXSA9ICcmVXVtbDtiZXJzY2hyZWliZW4gZXJsYXViZW4nOwokbGFuZ1snaW5mb19yZXBsYWNlJ10gPSAnRXJzZXR6dCBlaW5lIERhdGVpIG1pdCBkZW0gZ2xlaWNoZW4gTmFtZW4gKG9obmUgJkF1bWw7bmRlcnVuZyBkZXIgSUQpJzsKJGxhbmdbJ3BhcmFtX25vX2luaXRpYWwnXSA9ICdLZWluZSBlaW5sZWl0ZW5kZW4gRXJnZWJuaXNzZSBhbnplaWdlbiwgd2VubiBkZXIgRmlsdGVyIGFrdGl2aWVydCBpc3QnOwokbGFuZ1sncGFyYW1fa2V5J10gPSAnRWluIHp1cyZhdW1sO3R6bGljaGVyIFNjaGwmdXVtbDtzc2VsIGYmdXVtbDtyIGRpZSBrJnV1bWw7bmZ0aWdlIFZlcndhbHR1bmcgdm9uIGhvY2hnZWxhZGVuZW4gRGF0ZWllbi4gRGllc2VyIFNjaGwmdXVtbDtzc2VsIGthbm4gZWluIGVuY29kaWVydGVyIFN0cmluZyB3aWUgZXR3YTogJiMwMzk7ZmV1c2Vyczp1aWQmIzAzOTsgb2RlciAmYXVtbDtobmxpY2ggc2VpbiBrYW5uLiAgRGllc2VyIFBhcmFtZXRlciB3aXJkIG51ciBiZW4mb3VtbDt0aWd0LCB3ZW5uIGRhcyBVcGxvYWRzLU1vZHVsIGluIGVpbmVtIGFuZGVyZW4gTW9kdWwgZWluZ2ViZXR0ZXQgd2lyZCc7CiRsYW5nWydwYXJhbV9ub2F1dGhvciddID0gJ1ZlcmJpcmd0IGRhcyBGZWxkIEF1dG9yIGltIEZvcm11bGFyIHp1bSBIb2NobGFkZW4uIERpZXNlciBQYXJhbWV0ZXIgaXN0IG51ciBtJm91bWw7Z2xpY2gsIHdlbm4gZGVyIE1vZHVzICYjMDM5O3VwbG9hZCYjMDM5OyBpc3QuIFdlbm4gZGFzIEZyb250ZW5kVXNlcnMtTW9kdWwgaW5zdGFsbGllcnQgdW5kIGVpbiBCZW51dHplciBha3R1ZWxsIGFuZ2VtZWxkZXQgaXN0LCBlbnRoJmF1bWw7bHQgZGFzIHZlcmJvcmdlbmUgRmVsZCBkZXNzZW4gTmFtZW4nOwokbGFuZ1sncGFyYW1fdXBsb2FkX2lkJ10gPSAndXBsb2FkX2lkPSZxdW90O2lkJnF1b3Q7IC0gZGVmaW5pZXJ0IGVpbmUgZWluemVsbmUgRGF0ZWkgZiZ1dW1sO3IgZWluZW4gTGluayBvZGVyIGYmdXVtbDtyIGRlbiBTaW5nbGUtTW9kdXM8L2xpPic7CiRsYW5nWydwYXJhbV9kZXRhaWx0ZW1wbGF0ZSddID0gJ0VpbiBUZW1wbGF0ZSBtaXQgZGllc2VtIE5hbWVuIGYmdXVtbDtyIGRlbiBkZXRhaWxpZXJ0ZW4gQmVyaWNodCB2ZXJ3ZW5kZW4uJzsKJGxhbmdbJ3BhcmFtX3RlbXBsYXRlJ10gPSAnVmVyd2VuZGV0IGVpbiBUZW1wbGF0ZSBtaXQgZGllc2VtIE5hbWVuIGYmdXVtbDtyIGRpZXNlbiBCZXJpY2h0IGJ6dy4gZGFzIEZvcm11bGFyLiBEaWVzZXMgVGVtcGxhdGUgcnVmdCBlbnRzcHJlY2hlbmQgZGVtIGZlc3RnZWxlZ3RlbiBNb2R1cyBhdXRvbWF0aXNjaCBlaW4gd2VpdGVyZXMgVGVtcGxhdGUgbWl0IGRlbSB2b3JnZWdlYmVuZW4gTmFtZW4gYXVmJzsKJGxhbmdbJ3BhcmFtX2ZpbHRlciddID0gJ0RhcyBGaWx0ZXItRm9ybXVsYXIgYW56ZWlnZW4nOwokbGFuZ1sncGFyYW1fbm9faW50aXRpYWwnXSA9ICdOdXIgbiZ1dW1sO3R6bGljaCwgd2VubiBkZXIgRmlsdGVyLVBhcmFtZXRlciBnZXNldHp0IHd1cmRlLiBTdGFuZGFyZG0mYXVtbDsmc3psaWc7aWcgemVpZ3QgZGllc2VyIFBhcmFtZXRlciBhbiwgd2VsY2hlIGVpbmxlaXRlbmRlbiBFcmdlYm5pc3NlIHp1ciZ1dW1sO2NrZ2VnZWJlbiB3ZXJkZW4gc29sbGVuLic7CiRsYW5nWydwYXJhbV9maWxldHlwZXMnXSA9ICdaZWlndCBudXIgRGF0ZWllbiBhbiwgZGVyZW4gVHlwIGluIGRlciBtaXQgS29tbWF0YSBnZXRyZW5udGVuIExpc3RlIGF1ZmdlZiZ1dW1sO2hydCBpc3QnOwokbGFuZ1sncGFyYW1fc29ydG9yZGVyJ10gPSAnICANCiAgPHA+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/JzsKJGxhbmdbJ3RodW1ibmFpbCddID0gJ1ZvcnNjaGF1YmlsZCc7CiRsYW5nWyduZXd0aHVtYm5haWwnXSA9ICdFaW4gbmV1ZXMgVm9yc2NoYXViaWxkIGhvY2hsYWRlbic7CiRsYW5nWydpbmZvX3N1bW1hcnknXSA9ICdFaW5lIGt1cnplIEJlc2NocmVpYnVuZyBkZXIgRGF0ZWkgKHdpcmQgZGllcyBsZWVyIGdlbGFzc2VuLCB3aXJkIGRlciBEYXRlaW5hbWUgb2huZSBFcndlaXRlcnVuZyB2ZXJ3ZW5kZXQpJzsKJGxhbmdbJ2luZm9fY2F0ZWdvcnluYW1lJ10gPSAnRWluIGt1cnplciBOYW1lIGYmdXVtbDtyIElocmUgS2F0ZWdvcmllJzsKJGxhbmdbJ2luZm9fY2F0ZWdvcnlkZXNjJ10gPSAnRWluZSBCZXNjaHJlaWJ1bmcgSWhyZXIgS2F0ZWdvcmllJzsKJGxhbmdbJ2luZm9fY2F0ZWdvcnlwYXRoJ10gPSAnRGFzIFVudGVydmVyemVpY2huaXMgaW0gVmVyemVpY2huaXMgL3VwbG9hZHMsIHdlbGNoZXMgZiZ1dW1sO3IgZGllIFNwZWljaGVydW5nIGRlciBEYXRlaWVuIGRpZXNlciBLYXRlZ29yaWUgdmVyd2VuZGV0IHdlcmRlbiBzb2xsLiBGYWxscyBkaWVzZXMgVmVyemVpY2huaXMgbm9jaCBuaWNodCBleGlzdGllcnQsIHdpcmQgZXMgZXJ6ZXVndC4nOwokbGFuZ1snaW5mb19kZXN0bmFtZSddID0gJ1ZlcndlbmRlbiBTaWUgZGFzIEZlbGQgJiMwMzk7SG9jaGxhZGVuIGFscyYjMDM5OywgdW0gZGVuIE5hbWVuIGRlciBob2NoZ2VsYWRlbmVuIERhdGVpIHp1IHZlciZhdW1sO25kZXJuLiBPaG5lIFZvcmdhYmUgd2lyZCBkZXIgRGF0ZWluYW1lIG5pY2h0IHZlciZhdW1sO25kZXJ0Lic7CiRsYW5nWydlcnJvcl9jYW50Y3JlYXRlZGlyZWN0b3J5J10gPSAnRGFzIFZlcnplaWNobmlzIGtvbm50ZSBuaWNodCBlcnN0ZWxsdCB3ZXJkZW4uJzsKJGxhbmdbJ2Vycm9yX25vbWFpbGVybW9kdWxlJ10gPSAnRGllIFZlcmJpbmR1bmcgenVtIENNU01haWxlci1Nb2R1bCBrb25udGUgbmljaHQgaGVyZ2VzdGVsbHQgd2VyZGVuLic7CiRsYW5nWyd1cGxvYWRfbm90aWZpY2F0aW9uJ10gPSAnRXMgd3VyZGUgZWluZSBuZXVlIERhdGVpIGhvY2hnZWxhZGVuLic7CiRsYW5nWyd0aXRsZV9lbWFpbF9vbl91cGxvYWQnXSA9ICdEaWUgQmVuYWNocmljaHRpZ3VuZyAmdXVtbDtiZXIgZWluZSBob2NoZ2VsYWRlbmUgRGF0ZWkgc2VuZGVuIGFuOic7CiRsYW5nWydlbWFpbF90ZW1wbGF0ZSddID0gJ0VtYWlsLVRlbXBsYXRlJzsKJGxhbmdbJ3RpdGxlX2R1bW15X2luZGV4X2h0bWwnXSA9ICdTb2xsIGluIGplZGVtIFZlcnplaWNobmlzIGVpbmUgRHVtbXktaW5kZXguaHRtbC1EYXRlaSBlcnN0ZWxsdCB3ZXJkZW4/PGJyLz48ZW0+QmVyZWl0cyBleGlzdGllcmVuZGUgaW5kZXguaHRtbC1EYXRlaWVuIGJsZWliZW4gZXJoYWx0ZW48L2VtPic7CiRsYW5nWydhYm91dCddID0gJyZVdW1sO2Jlcic7CiRsYW5nWydlcnJvcl9wZXJtaXNzaW9uZGVuaWVkJ10gPSAnWnVncmlmZiB2ZXJ3ZWlnZXJ0LiBCaXR0ZSBwciZ1dW1sO2ZlbiBTaWUgSWhyZSBCZXJlY2h0aWd1bmdlbi4nOwokbGFuZ1snZXJyb3JfY291bGRub3R3cml0ZSddID0gJ0tvbm50ZSBuaWNodCBnZXNjaHJpZWJlbiB3ZXJkZW4uJzsKJGxhbmdbJ2FkZGNhdGVnb3J5J10gPSAnS2F0ZWdvcmllIGhpbnp1ZiZ1dW1sO2dlbic7CiRsYW5nWydhbGwnXSA9ICdBbGxlJzsKJGxhbmdbJ2FyZXlvdXN1cmUnXSA9ICdXb2xsZW4gU2llIGRhcyB3aXJrbGljaD8nOwokbGFuZ1snYXV0aG9yJ10gPSAnQXV0b3InOwokbGFuZ1snY2FuY2VsJ10gPSAnQWJicmVjaGVuJzsKJGxhbmdbJ2Nhbm5vdG1vZGlmeXBhdGgnXSA9ICcoRGVyIFBmYWQga29ubnRlIG5pY2h0IGdlJmF1bWw7bmRlcnQgd2VyZGVuLiknOwokbGFuZ1snY2F0ZWdvcmllcyddID0gJ0thdGVnb3JpZW4nOwokbGFuZ1snY2F0ZWdvcnknXSA9ICdLYXRlZ29yaWUnOwokbGFuZ1snbWVzc2FnZV9jYXRlZ29yeWFkZGVkJ10gPSAnRGllIEthdGVnb3JpZSB3dXJkZSBlcmZvbGdyZWljaCBoaW56dWdlZiZ1dW1sO2d0Lic7CiRsYW5nWydkYXRlJ10gPSAnRGF0dW0nOwokbGFuZ1snZGF0ZXVwbG9hZGVkJ10gPSAnSG9jaGdlbGFkZW4gYW0nOwokbGFuZ1snZGVmYXVsdCddID0gJ1ZvcmVpbnN0ZWxsdW5nZW4nOwokbGFuZ1snZGVsZXRlJ10gPSAnTCZvdW1sO3NjaGVuJzsKJGxhbmdbJ2Rlc2NyaXB0aW9uJ10gPSAnQmVzY2hyZWlidW5nJzsKJGxhbmdbJ2Rlc3RuYW1lJ10gPSAnSG9jaGxhZGVuIGFscyc7CiRsYW5nWydkZXRhaWxfdGVtcGxhdGUnXSA9ICdEZXRhaWwtVGVtcGxhdGUnOwokbGFuZ1snZG93bmxvYWRlZCddID0gJ0RpZSBEYXRlaSAlcyB3dXJkZSBoZXJ1bnRlcmdlbGFkZW4uJzsKJGxhbmdbJ2Rvd25sb2FkcyddID0gJ0hlcnVudGVyZ2VsYWRlbmUgRGF0ZWllbic7CiRsYW5nWydlZGl0J10gPSAnQmVhcmJlaXRlbic7CiRsYW5nWydlZGl0Y2F0ZWdvcnknXSA9ICdLYXRlZ29yaWUgYmVhcmJlaXRlbic7CiRsYW5nWydlZGl0dXBsb2FkJ10gPSAnSG9jaGdlbGFkZW5lIERhdGVpIGJlYXJiZWl0ZW4nOwokbGFuZ1snZXJyb3InXSA9ICdGZWhsZXIhJzsKJGxhbmdbJ2Vycm9yX3BhdGhpbnVzZTInXSA9ICdFcyBleGlzdGllcnQgYmVyZWl0cyBlaW5lIEthdGVnb3JpZSwgZGllIGRpZXNlbiBQZmFkICglcykgdmVyd2VuZGV0JzsKJGxhbmdbJ2Vycm9yX3BhdGhpbnVzZSddID0gJ0VzIGV4aXN0aWVydCBiZXJlaXRzIGVpbmUgS2F0ZWdvcmllIG1pdCBkaWVzZW0gUGZhZC4nOwokbGFuZ1snZXJyb3JfY2F0ZWdvcnlleGlzdHMyJ10gPSAnRmVobGVyOiBFaW5lIEthdGVnb3JpZSBtaXQgZGVtIE5hbWVuICVzIGV4aXN0aWVydCBiZXJlaXRzJzsKJGxhbmdbJ2Vycm9yX2NhdGVnb3J5ZXhpc3RzJ10gPSAnRmVobGVyOiBEaWUgS2F0ZWdvcmllIGV4aXN0aWVydCBiZXJlaXRzJzsKJGxhbmdbJ2Vycm9yX2NhdGVnb3J5bm90ZW1wdHknXSA9ICdGZWhsZXI6IERpZSBLYXRlZ29yaWUga2FubiBuaWNodCBnZWwmb3VtbDtzY2h0IHdlcmRlbiwgZGEgc2llIG5pY2h0IGxlZXIgaXN0ISc7CiRsYW5nWydlcnJvcl9jYXRlZ29yeW5vdGZvdW5kJ10gPSAnRmVobGVyOiBLYXRlZ29yaWUgbmljaHQgZ2VmdW5kZW4hJzsKJGxhbmdbJ2Vycm9yX2RiZXJyb3InXSA9ICdGZWhsZXI6IERhdGVuYmFua2ZlaGxlciEnOwokbGFuZ1snZXJyb3JfZW1wdHljYXRlZ29yeSddID0gJ0ZlaGxlcjogS2F0ZWdvcmllLUZlbGQgbGVlciEnOwokbGFuZ1snZXJyb3JfZW1wdHlwYXRoJ10gPSAnRmVobGVyOiBQZmFkIGxlZXIhJzsKJGxhbmdbJ2Vycm9yX2ZpbGVleGlzdHMnXSA9ICdGZWhsZXI6IERpZSBEYXRlaSAlcyBleGlzdGllcnQgYmVyZWl0cy4nOwokbGFuZ1snZXJyb3JfZmlsZW5vdGZvdW5kJ10gPSAnRmVobGVyOiBEaWUgRGF0ZWkgJXMgd3VyZGUgbmljaHQgZ2VmdW5kZW4uJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ0ZlaGxlcjogRGFzIE1vZHVsIHd1cmRlIG1pdCBuaWNodCBhdXNyZWljaGVuZGVuIFBhcmFtZXRlcm4gYXVmZ2VydWZlbiEgPGJyLz5EZXIgZmVobGVuZGUgUGFyYW1ldGVyIGlzdDogJXMnOwokbGFuZ1snZXJyb3JfaW52YWxpZGF1dGhvciddID0gJ0ZlaGxlcjogQXV0b3IgdW5nJnV1bWw7bHRpZyAob2RlciBsZWVyKS4nOwokbGFuZ1snZXJyb3JfaW52YWxpZGNhdGVnb3J5J10gPSAnRmVobGVyOiBLYXRlZ29yaWUgdW5nJnV1bWw7bHRpZyAob2RlciBsZWVyKS4nOwokbGFuZ1snZXJyb3JfaW52YWxpZGRlc2NyaXB0aW9uJ10gPSAnRmVobGVyOiBCZXNjaHJlaWJ1bmcgdW5nJnV1bWw7bHRpZyAob2RlciBsZWVyKS4nOwokbGFuZ1snZXJyb3JfaW52YWxpZGZpbGUnXSA9ICdGZWhsZXI6IERhdGVpbmFtZSB1bmcmdXVtbDtsdGlnIChvZGVyIGxlZXIpLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXBsb2FkZmlsZW5hbWUnXSA9ICdGZWhsZXI6IERhdGVpZW4gbWl0IGRpZXNlciBOYW1lbnNlcndlaXRlcnVuZyBzaW5kIG5pY2h0IGVybGF1YnQgKCVzKS4nOwokbGFuZ1snZXJyb3JfaW52YWxpZHVwbG9hZGlkJ10gPSAnRmVobGVyOiBVbmcmdXVtbDtsdGlnZSBJRCc7CiRsYW5nWydlcnJvcl9ub2ZpbGVzJ10gPSAnRmVobGVyOiBLZWluZSBlbnRzcGVjaGVuZGVuIERhdGVpZW4hJzsKJGxhbmdbJ2ZpbGVzJ10gPSAnRGF0ZWllbic7CiRsYW5nWydmaXhtZSddID0gJ0xlZXJ6ZWljaGVuIGVudGZlcm5lbic7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdEYXRlaWVuIChVcGxvYWRzLU1vZHVsKSc7CiRsYW5nWydoZWxwJ10gPSAnPGgzPldhcyBtYWNodCBkaWVzZXMgTW9kdWw/PC9oMz4NCjxwPkRhcyBNb2R1bCBlcmxhdWJ0IGRlbiBCZXN1Y2hlcm4gSWhyZXIgSG9tZXBhZ2UsIGF1ZiBJaHJlciBTZWl0ZSBEYXRlaWVuIGhvY2gtIHVuZCBydW50ZXJ6dWxhZGVuLiBEYWJlaSB3aXJkIHByb3Rva29sbGllcnQsIHdlciBlaW5lIERhdGVpIGhvY2hnZWxhZGVuIHVuZCB3ZXIgZWluZSBEYXRlaSBoZXJ1bnRlcmdlbGFkZW4gaGF0LiBEZXN3ZWl0ZXJlbiBrJm91bWw7bm5lbiBkaWUgRGF0ZWllbiBrYXRlZ29yaXNpZXJ0IHdlcmRlbi4gRGllIGhvY2hnZWxhZGVuZW4gRGF0ZWllbiBrJm91bWw7bm5lbiBzbyB2ZXJ3YWx0ZXQgd2VyZGVuLCB3aWUgZGllcyBlaW4gQWRtaW5pc3RyYXRvciBrJm91bWw7bm50ZS48L3A+IA0KPGgzPldpZSB3aXJkIGVzIGVpbmdlc2V0enQgPzwvaDM+DQo8cD48c3Ryb25nPkFjaHR1bmc8L3N0cm9uZz4gLSBEaWUgRnVua3Rpb25zZiZhdW1sO2hpZ2tlaXQgZGllc2VzIE1vZHVscyBpc3Qgdm9uIHZlcnNjaGllZGVuZW4gV2VydGVuIElocmVyIFBIUC1Lb25maWd1cmF0aW9uIHdpZSB6dW0gQmVpc3BpZWwgcGhwJiMwMzk7cyBtZW1vcnlfbGltaXQsIHNhZmVfbW9kZSwgZmlsZV91cGxvYWRzLCB1cGxvYWRzX21heF9maWxlc2l6ZSB1bmQgbWF4X2V4ZWN1dGlvbl90aW1lIGFiaCZhdW1sO25naWcuIFVudGVyIFVtc3QmYXVtbDtuZGVuIG0mdXVtbDtzc2VuIGRpZXNlIFdlcnRlIGYmdXVtbDtyIGRpZSBGdW5rdGlvbnNmJmF1bWw7aGlna2VpdCBkaWVzZXMgTW9kdWxzIGFuZ2VwYXNzdCB3ZXJkZW4uIFNpZSBzb2xsdGVuIGRhaGVyIGdlZ2ViZW5lbmZhbGxzIEtvbnRha3QgbWl0IElocmVtIFByb3ZpZGVyIGF1Zm5laG1lbiwgdW0gZGllc2UgRWluc3RlbGx1bmdlbiBlbnRzcHJlY2hlbmQgSWhyZW4gQmVkJnV1bWw7cmZuaXNzZW4gYW56dXBhc3Nlbi48L3A+DQo8cD5VbSBkZW4gQmVzdWNoZXJuIElocmVyIFNlaXRlIGRhcyBIb2NobGFkZW4gdm9uIERhdGVpZW4genUgZXJsYXViZW4sIHNvbGx0ZW4gU2llIGRhcyBNb2R1bCB6dW4mYXVtbDtjaHN0IGluc3RhbGxpZXJlbiB1bmQgZGFubiBlaW5lIG9kZXIgbWVocmVyZSBLYXRlZ29yaWVuICg9VmVyemVpY2huaXNzZSkgZiZ1dW1sO3IgZGllIGhvY2h6dWxhZGVuZGVuIERhdGVpZW4gZXJzdGVsbGVuLiBEYW5uIGYmdXVtbDtnZW4gU2llIGRlbiBUYWcge2Ntc19tb2R1bGUgbW9kdWxlPSZxdW90O1VwbG9hZHMmcXVvdDsgY2F0ZWdvcnk9JnF1b3Q7S2F0ZWdvcmllJnF1b3Q7IG1vZGU9JnF1b3Q7TW9kdXMmcXVvdDt9IGluIGVpbmUgU2VpdGUgb2RlciBlaW4gVGVtcGxhdGUgZWluLCB3b2JlaSBNb2R1cyBqZXdlaWxzIGVpbmVtIGRlciB1bnRlbiBhdWZnZWYmdXVtbDtocnRlbiBNb2RpIGVudHNwcmljaHQuIEplIG5hY2ggYXVzZ2V3JmF1bWw7aGx0ZW0gTW9kdXMgd2VyZGVuIHVudGVyc2NoaWVkbGljaGUgSW5mb3JtYXRpb25lbiBhdXNnZWdlYmVuLjwvcD4NCjxwPkRpZXNlcyBNb2R1bCBrYW5uIG9wdGlvbmFsIGRhcyBGcm9udGVuZFVzZXItTW9kdWwgdmVyd2VuZGVuLCB1bSBJbmZvcm1hdGlvbmVuICZ1dW1sO2JlciBkaWUgYWt0dWVsbCBhbmdlbWVsZGV0ZW4gQmVudXR6ZXIgenUgZXJoYWx0ZW4sIGRpZSBkYW5uIGluIGRhcyBGb3JtdWxhciBiZWltIEhvY2hsYWRlbiB2b24gRGF0ZWllbiBlaW5nZXRyYWdlbiB3ZXJkZW4uPC9wPg0KPGgzPkJlcmVjaHRpZ3VuZ2VuPC9oMz4NCjx1bD4NCjxsaT5EaWUgQmVyZWNodGlndW5nIDxlbT5NYW5hZ2UgVXBsb2FkczwvZW0+IHdpcmQgYmVuJm91bWw7dGlndCwgdW0gZGllIEthdGVnb3JpZW4gdW5kIGRpZSBkYXJpbiBiZWZpbmRsaWNoZW4gRGF0ZWllbiB6dSB2ZXJ3YWx0ZW4uPC9saT4NCjxsaT5EaWUgQmVyZWNodGlndW5nIDxlbT5Nb2RpZnkgVGVtcGxhdGVzPC9lbT4gIHdpcmQgYmVuJm91bWw7dGlndCwgdW0gVGVtcGxhdGVzIHp1IGJlYXJiZWl0ZW4uPC9saT4NCjxsaT48ZW0+TW9kaWZ5IFNpdGUgUHJlZmVyZW5jZXM8L2VtPiBkaWVzZSBCZXJlY2h0aWd1bmcgd2lyZCBiZW4mb3VtbDt0aWd0LCB1bSBkYXRlaWJlem9nZW5lIEVpbnN0ZWxsdW5nZW4genUgdmVyJmF1bWw7bmRlcm4uPC9saT4NCjwvdWw+DQo8aDM+S2F0ZWdvcmllLSZVdW1sO2JlcnNpY2h0PC9oMz4NCjxwPldlbm4gU2llIGVpbmVuIFRhZyB3aWUgZXR3YSB7Y21zX21vZHVsZSBtb2R1bGU9JnF1b3Q7VXBsb2FkcyZxdW90OyBhY3Rpb249JnF1b3Q7Y2F0ZWdvcnlzdW1tYXJ5JnF1b3Q7IHRlbXBsYXRlPSZxdW90O3N1bW1hcnl0ZW1wbGF0ZSZxdW90OyBzb3J0b3JkZXI9JnF1b3Q7bmFtZV9hc2MmcXVvdDsgbGlzdGluZ3RlbXBsYXRlPSZxdW90O2xpc3R0ZW1wbGF0ZSZxdW90OyBsaXN0aW5nc29ydG9yZGVyPSZxdW90O2xpc3Rzb3J0b3JkZXImcXVvdDt9IHZlcndlbmRlbiwgd2lyZCBlaW5lIGludGVyYWt0aXZlIEthdGVnb3JpZW4tJlV1bWw7YmVyc2ljaHQgYW5nZXplaWd0LiBEaWUgU29ydGllcnJlaWhlbmZvbGdlIChzb3J0b3JkZXIpIGthbm4gc2VpbjogbmFtZV9hc2MgKGF1ZnN0ZWlnZW5kIG5hY2ggTmFtZW4pLCBuYW1lX2Rlc2MgKGFic3RlaWdlbmQgbmFjaCBOYW1lbiksIHN1bW1fYXNjIChhdWZzdGVpZ2VuZCBuYWNoIGRlciBadXNhbW1lbmZhc3N1bmcpLCBzdW1tX2Rlc2MgKGFic3RlaWdlbmQgbmFjaCBkZXIgWnVzYW1tZW5mYXNzdW5nKSBvZGVyIHJhbmRvbSAoenVmJmF1bWw7bGxpZ2UgQXVzd2FobCkuDQpEaWUgUGFyYW1ldGVyIGYmdXVtbDtyIGxpc3Rpbmd0ZW1wbGF0ZSB1bmQgbGlzdGluZ3NvcnRvcmRlciBzaW5kIGlkZW50aXNjaCBtaXQgZGVuIHRlbXBsYXRlLSB1bmQgc29ydG9yZGVyLVBhcmFtZXRlcm4gZGVzIFp1c2FtbWVuZmFzc3VuZ3Ntb2R1cy48L3A+DQo8aDM+RW1haWx2ZXJzYW5kPC9oMz4NCjxwPk1pdCBkaWVzZW0gTW9kdWwgaXN0IGVzIG0mb3VtbDtnbGljaCwgZWluZSBFbWFpbCB6dSB2ZXJzZW5kZW4sIHdlbm4gaW1tZXIgZWluZSBEYXRlaSBob2NoZ2VsYWRlbiB3dXJkZS4gU2NoYXVlbiBTaWUgaGllcnp1IGluIGRpZSBFaW5zdGVsbHVuZ2VuLiBEYWYmdXVtbDtyIG11c3MgZGFzIDxiPkNNU01haWxlcjwvYj4tTW9kdWwgaW5zdGFsbGllcnQgdW5kIGtvbmZpZ3VyaWVydCBzZWluLiBEaWVzZSBNJm91bWw7Z2xpY2hrZWl0IGlzdCBudXIgPGVtPm9wdGlvbmFsPC9lbT4uIFdlbm4gZGFzIENNU01haWxlci1Nb2R1bCBuaWNodCBpbnN0YWxsaWVydCBpc3QsIHdpcmQgZGVtIFVzZXIgbmljaHRzIGFuZ2V6ZWlndCwgc29uZGVybiBudXIgZWluIEVpbnRyYWcgaW0gTG9nYnVjaCBkZXMgQWRtaW5pc3RyYXRvcnMgZXJzdGVsbHQuPC9wPg0KPGgzPlN5c3RlbWVpbnN0ZWxsdW5nZW48L2gzPg0KPHA+PGI+SGlud2Vpczo8L2I+IERhcyBNb2R1bCB1bWdlaHQgbmljaHQgZGllIEJlc2NociZhdW1sO25rdW5nZW4gaGluc2ljaHRsaWNoIGRlciBEYXRlaWdyJm91bWw7JnN6bGlnO2UgaW4gUEhQLiBFcyBmdW5rdGlvbmllcnQgbnVyIGluIFZlcmJpbmR1bmcgbWl0IGRpZXNlbS4gV2VubiBTaWUgZ3Imb3VtbDsmc3psaWc7ZXJlIERhdGVpZW4genVtIEhvY2hsYWRlbiB6dWxhc3NlbiBtJm91bWw7Y2h0ZW4sIG0mdXVtbDtzc2VuIFNpZSBJaHJlIHBocC5pbmktRGF0ZWkgdW5kL29kZXIgaHR0cGQuY29uZiBEYXRlaShlbikgc293aWUgZGllIFZvcmVpbnN0ZWxsdW5nZW4gZGVzIE1vZHVscyBlbnRzcHJlY2hlbmQgYmVhcmJlaXRlbi4NCjxoND5IaW53ZWlzZSBmJnV1bWw7ciBkZW4gQXBhY2hlLVNlcnZlcjwvaDQ+DQo8cD5VbSBkYXMgSG9jaGxhZGVuIHZvbiBnciZvdW1sOyZzemxpZztlcmVuIERhdGVpZW4genUgZXJsYXViZW4sIG0mdXVtbDtzc2VuIFNpZSBkZW4gUGFyYW1ldGVyIHVwbG9hZF9tYXhfZmlsZXNpemUgaW4gaWhyZXIgcGhwLmluaSBiZWFyYmVpdGVuLiBadXMmYXVtbDt0emxpY2ggbXVzcyBkZXIgUGFyYW1ldGVyIExpbWl0UmVxdWVzdEJvZHkgaW4gSWhyZXIgQXBhY2hlLUtvbmZpZ3VyYXRpb24gYW4gZGVuIFBhcmFtZXRlciB1cGxvYWRfbWF4X2ZpbGVzaXplIGFuZ2VwYXNzdCB3ZXJkZW4uPC9wPg0KPHA+SGlud2VpczogIGRlciBQYXJhbWV0ZXIgdXBsb2FkX21heF9maWxlc2l6ZSBrYW5uIGluIEJ5dGVzLCBLaWxvYnl0ZXMgb2RlciBNZWdhYnl0ZXMgYW5nZWdlYmVuIHdlcmRlbiwgdyZhdW1sO2hyZW5kZGVzc2VuIGRlciBQYXJhbWV0ZXIgTGltaXRSZXF1ZXN0Qm9keSBudXIgaW4gQnl0ZXMgZmVzdGdlbGVndCB3ZXJkZW4ga2Fubi48L3A+JzsKJGxhbmdbJ2lkJ10gPSAnSUQnOwokbGFuZ1snaW5zdGFsbGVkJ10gPSAnTW9kdWx2ZXJzaW9uICVzIGluc3RhbGxpZXJ0Lic7CiRsYW5nWydpcF9hZGRyZXNzJ10gPSAnSVAtQWRyZXNzZSc7CiRsYW5nWydtb2RkZXNjcmlwdGlvbiddID0gJ0VpbiBNb2R1bCwgd2VsY2hlcyBkZW4gQmVudXR6ZXJuIGRhcyBIb2NobGFkZW4gdW5kIGRhcyBWZXJ3YWx0ZW4gdm9uIERhdGVpZW4gZXJtJm91bWw7Z2xpY2h0Lic7CiRsYW5nWyduYW1lJ10gPSAnTmFtZSAnOwokbGFuZ1sncmVuYW1lbWVzc2FnZSddID0gJyZBdW1sO25kZXJuIFNpZSBoaWVyIGRlbiBOYW1lbiwgdW0gZGllIERhdGVpIHVtenViZW5lbm5lbic7CiRsYW5nWydwYXRoJ10gPSAnUGZhZCc7CiRsYW5nWydwYXRobWVzc2FnZSddID0gJyZBdW1sO25kZXJuIFNpZSBoaWVyIGRpZSBLYXRlZ29yaWUsIHVtIGRpZSBEYXRlaSBpbiBlaW4gYW5kZXJlcyBWZXJ6ZWljaG5pcyB6dSB2ZXJzY2hpZWJlbi4nOwokbGFuZ1sncGF0aGludXBsb2FkcyddID0gJyhyZWxhdGl2IHp1bSAvdXBsb2FkcyBWZXJ6ZWljaG5pcyknOwokbGFuZ1sncG9zdGluc3RhbGwnXSA9ICc8cD5EYXMgVXBsb2Fkcy1Nb2R1bCB3dXJkZSBlcmZvbGdyZWljaCBpbnN0YWxsaWVydC4gU3RlbGxlbiBTaWUgc2ljaGVyLCBkYXNzIHp1ciBWZXJ3ZW5kdW5nIGRpZXNlcyBNb2R1bHMgZGllIEJlcmVjaHRpZ3VuZyAmcXVvdDtNYW5hZ2UgVXBsb2FkcyZxdW90OyBnZXNldHp0IHd1cmRlITwvcD4NCjxwPjxzdHJvbmc+QWNodHVuZzwvc3Ryb25nPiAtIERpZSBGdW5rdGlvbnNmJmF1bWw7aGlna2VpdCBkaWVzZXMgTW9kdWxzIGlzdCB2b24gdmVyc2NoaWVkZW5lbiBXZXJ0ZW4gSWhyZXIgUEhQLUtvbmZpZ3VyYXRpb24gd2llIHp1bSBCZWlzcGllbCBwaHAmIzAzOTtzIG1lbW9yeV9saW1pdCwgc2FmZV9tb2RlLCBmaWxlX3VwbG9hZHMsIHVwbG9hZHNfbWF4X2ZpbGVzaXplIHVuZCBtYXhfZXhlY3V0aW9uX3RpbWUgYWJoJmF1bWw7bmdpZy4gVW50ZXIgVW1zdCZhdW1sO25kZW4gbSZ1dW1sO3NzZW4gZGllc2UgV2VydGUgZiZ1dW1sO3IgZGllIEZ1bmt0aW9uc2YmYXVtbDtoaWdrZWl0IGRpZXNlcyBNb2R1bHMgYW5nZXBhc3N0IHdlcmRlbi4gU2llIHNvbGx0ZW4gZGFoZXIgZ2VnZWJlbmVuZmFsbHMgS29udGFrdCBtaXQgSWhyZW0gUHJvdmlkZXIgYXVmbmVobWVuLCB1bSBkaWVzZSBFaW5zdGVsbHVuZ2VuIGVudHNwcmVjaGVuZCBJaHJlbiBCZWQmdXVtbDtyZm5pc3NlbiBhbnp1cGFzc2VuLjwvcD4nOwokbGFuZ1sncG9zdHVuaW5zdGFsbCddID0gJ0RhcyBVcGxvYWRzLU1vZHVsIHd1cmRlIGVudGZlcm50LiBFcyB3dXJkZW4ga2VpbmUgRGF0ZWllbiBhdXMgZGVtIC91cGxvYWRzLVZlcnplaWNobmlzIGVudGZlcm50IG9kZXIgYmVzY2gmYXVtbDtkaWd0Lic7CiRsYW5nWydwcmVmZXJlbmNlcyddID0gJ0VpbnN0ZWxsdW5nZW4nOwokbGFuZ1sncHJlZnN1cGRhdGVkJ10gPSAnTW9kdWxlaW5zdGVsbHVuZ2VuIGFrdHVhbGlzaWVydC4nOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5ZGVzYyddID0gJ0Jlc2NocmVpYnVuZyc7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnlsaXN0YWJsZSddID0gJ0RpZSBEYXRlaWVuIGluIGRpZXNlbSBWZXJ6ZWljaG5pcyBrJm91bWw7bm5lbiBhbmdlemVpZ3Qgd2VyZGVuLic7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnluYW1lJ10gPSAnTmFtZSBkZXIgS2F0ZWdvcmllJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeXBhdGgnXSA9ICdTZXJ2ZXJwZmFkJzsKJGxhbmdbJ3Byb21wdF9kZWxldGVkaXJlY3RvcnknXSA9ICdLYXRlZ29yaWV2ZXJ6ZWljaG5pcyBsJm91bWw7c2NoZW4/JzsKJGxhbmdbJ3Byb21wdF9tYXhfdXBsb2Fkc2l6ZSddID0gJ01heGltYWwgZXJsYXVidGUgRGF0ZWlnciZvdW1sOyZzemxpZztlIChLYiknOwokbGFuZ1sncHJvbXB0X3ZhbGlkX3VwbG9hZGV4dGVuc2lvbnMnXSA9ICdHJnV1bWw7bHRpZ2UgRGF0ZWluZXJ3ZWl0ZXJ1bmdlbic7CiRsYW5nWydzY2FuJ10gPSAnU2Nhbm5lbic7CiRsYW5nWydzZWxlY3RjYXRlZ29yeSddID0gJ0thdGVnb3JpZSBhdXN3JmF1bWw7aGxlbic7CiRsYW5nWydzaXplJ10gPSAnR3Imb3VtbDsmc3psaWc7ZSc7CiRsYW5nWydzaXpla2InXSA9ICdHciZvdW1sOyZzemxpZztlIChLYiknOwokbGFuZ1snc3VibWl0J10gPSAnQWJzZW5kZW4nOwokbGFuZ1snc3VtbWFyeV90ZW1wbGF0ZSddID0gJ1p1c2FtbWVuZmFzc3VuZ3MtVGVtcGxhdGUnOwokbGFuZ1snc3VtbWFyeSddID0gJ1p1c2FtbWVuZmFzc3VuZyc7CiRsYW5nWyd0aXRsZV9hZG1pbl9wYW5lbCddID0gJ1VwbG9hZHMtTW9kdWwnOwokbGFuZ1sndGl0bGVfbW9kX2FkbWluJ10gPSAnTW9kdWwtQWRtaW5pc3RyYXRpb24nOwokbGFuZ1sndGl0bGVfbW9kX3ByZWZzJ10gPSAnTW9kdWxlaW5zdGVsbHVuZ2VuJzsKJGxhbmdbJ3RpdGxlX3N1Ym5ldF9leGNsdXNpb25zJ10gPSAnU3VibmV0cyB2b24gZGVyIFN0YXRpc3RpayBhdXNzY2hsaWUmc3psaWc7ZW4nOwokbGFuZ1sndGl0bGVfdmFsaWRfdXBsb2FkZXh0ZW5zaW9ucyddID0gJ0cmdXVtbDtsdGlnZSBOYW1lbnNlcndlaXRlcnVuZ2VuJzsKJGxhbmdbJ3VuaW5zdGFsbGVkJ10gPSAnTW9kdWwgZGVpbnN0YWxsaWVydC4nOwokbGFuZ1sndXBncmFkZWQnXSA9ICdNb2R1bCBhdWYgVmVyc2lvbiAlcyBha3R1YWxpc2llcnQuJzsKJGxhbmdbJ3VwbG9hZCddID0gJ0hvY2hsYWRlbic7CiRsYW5nWyd1cGxvYWRlZCddID0gJ0RpZSBEYXRlaSAlcyB3dXJkZSB2b24gJXMgaG9jaGdlbGFkZW4uJzsKJGxhbmdbJ3JlcGxhY2VkJ10gPSAnRGllIERhdGVpICVzIHd1cmRlIGR1cmNoICVzIGVyc2V0enQuJzsKJGxhbmdbJ2RlbGV0ZWQnXSA9ICdEaWUgRGF0ZWkgJXMgd3VyZGUgZ2VsJm91bWw7c2NodC4nOwokbGFuZ1sndXBsb2FkZm9ybV90ZW1wbGF0ZSddID0gJ1RlbXBsYXRlIGhvY2hsYWRlbic7CiRsYW5nWyd1c2VybmFtZSddID0gJ0JlbnV0emVybmFtZSc7CiRsYW5nWyd3YXJuaW5nX2RlbGV0ZWNhdGVnb3J5J10gPSAnV0FSTlVORzogU2VpZW4gU2llIHZvcnNpY2h0aWcsIHdlbm4gU2llIEthdGVnb3JpZW4gbCZvdW1sO3NjaGVuLiBEaWUgRGF0ZWllbiBrJm91bWw7bm5lbiBkYWJlaSB2ZXJsb3JlbiBnZWhlbi4nOwokbGFuZ1sncWNhJ10gPSAnUDAtMTkwOTExNjAwMy0xMjU0MTMyMjM1NTY4JzsKJGxhbmdbJ3V0bWEnXSA9ICcxNTY4NjEzNTMuODU4MDk3NjI3LjEyNTQxMzIzMzkuMTI1NDEzMjMzOS4xMjU0MTM2MTkwLjInOwokbGFuZ1sndXRtYyddID0gJzE1Njg2MTM1Myc7CiRsYW5nWyd1dG16J10gPSAnMTU2ODYxMzUzLjEyNTQxMzYxOTAuMi4yLnV0bWNjbj0ocmVmZXJyYWwpfHV0bWNzcj1mb3J1bS5jbXNtYWRlc2ltcGxlLm9yZ3x1dG1jY3Q9L2luZGV4LnBocHx1dG1jbWQ9cmVmZXJyYWwnOwokbGFuZ1sndXRtYiddID0gJzE1Njg2MTM1Myc7Cj8+]]></data>
	</file>
	<file>
	  <filename>/lang/ext/et_EE.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2luZm9fY2F0ZWdvcnlkZWxldGFibGUnXSA9ICdBdXRob3JpemVkIHVzZXJzIHdpbGwgaGF2ZSBwZXJtaXNzaW9uIHRvIGRlbGV0ZSB0aGVzZSBmaWxlcy4gIFRoaXMgbWVhbnMgdGhhdCBhIHVybCB3aWxsIGJlIHByb3ZpZGVkIGluIHRoZSBhcHByb3ByaWF0ZSB0ZW1wbGF0ZXMgdG8gYWxsb3cgZGVsZXRpbmcgb2YgdGhlIGZpbGUuICBBIHdlYnNpdGUgZGV2ZWxvcGVyIGNhbiB1c2UgYXBwcm9wcmlhdGUgc21hcnR5IGxvZ2ljIHRvIHNob3cgYSBsaW5rIHRvIGF1dGhvcml6ZWQgdXNlcnMuJzsKJGxhbmdbJ2NvcHlfZmlsZXMnXSA9ICdDb3B5IEZpbGVzJzsKJGxhbmdbJ2Vycm9yX2ZpbGV0b29sYXJnZSddID0gJ1RoZSBmaWxlIHlvdSBhdHRlbXB0ZWQgdG8gdXBsb2FkZSBpcyBsYXJnZXIgdGhhbiB0aGUgQ01TTVMgbWF4aW11bSB1cGxvYWQgZmlsZSBzaXplJzsKJGxhbmdbJ2FyZXlvdXN1cmVfZGVsZXRlY2F0ZWdvcnknXSA9ICdBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gZGVsZXRlIHRoaXMgY2F0ZWdvcnk/JzsKJGxhbmdbJ2Vycm9yX2RlbGV0ZSddID0gJ0FuIGl0ZW0gY291bmQgbm90IGJlIGRlbGV0ZWQgKCVzKSc7CiRsYW5nWydjb25maXJtX2NhdF9tdWx0aWFjdGlvbiddID0gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBwZXJmb3JtIHRoaXMgYWN0aW9uIG9uIHRoZSBzZWxlY3RlZCBjYXRlZ29yaWVzPyc7CiRsYW5nWydlcnJvcl9ub3RoaW5nX3NlbGVjdGVkJ10gPSAnRXJyb3I6IE5vdGhpbmcgc2VsZWN0ZWQnOwokbGFuZ1snd2l0aF9zZWxlY3RlZCddID0gJ1dpdGggU2VsZWN0ZWQ6JzsKJGxhbmdbJ2Vycm9yX3JlcGxhY2VfbWlzbWF0Y2hlZF9maWxlZXh0J10gPSAnV2hlbiByZXBsYWNpbmcgYSBmaWxlLCB5b3UgbXVzdCB1cGxvYWQgYSBmaWxlIG9mIHRoZSBzYW1lIGV4YWN0IHR5cGUgKGJ5IGZpbGUgZXh0ZW5zaW9uKS4gIFRoZSBmaWxlIHlvdSBzZWxlY3RlZCBkb2VzIG5vdCBtYXRjaCB0aGF0IG9mIHRoZSBvcmlnaW5hbCBmaWxlLic7CiRsYW5nWydyZXBsYWNlJ10gPSAnUmVwbGFjZSc7CiRsYW5nWydpbmZvX3JlcGxhY2VmaWxlJ10gPSAnWW91IG1heSB1cGxvYWQgYSByZXBsYWNlbWVudCBmaWxlLCBpZiB0aGUgZmlsZSBpcyBhbiBpbWFnZSB0eXBlLCBhbmQgeW91IGhhdmUgbm90IHNwZWNpZmllZCBhIHJlcGxhY2VtZW50IHRodW1ibmFpbCwgYSBuZXcgdGh1bWJuYWlsIHdpbGwgYmUgZ2VuZXJhdGVkJzsKJGxhbmdbJ3Byb21wdF9yZXBsYWNlZmlsZSddID0gJ1VwbG9hZCByZXBsYWNlbWVudCBmaWxlJzsKJGxhbmdbJ3RpdGxlX2ZpeHNwYWNlcyddID0gJ0ZpeCBzcGFjZXMgaW4gdGhlIGZpbGVuYW1lJzsKJGxhbmdbJ2NhdGVnb3J5X2NvcGllZCddID0gJ0NhdGVnb3J5IHN1Y2Nlc3NmdWxseSBjb3BpZWQnOwokbGFuZ1snZXJyb3JfZHVwbGljYXRlcGF0aCddID0gJ1BsZWFzZSBzcGVjaWZ5IGEgZGlyZWN0b3J5IG5hbWUgdGhhdCBpcyBkaWZmZXJlbnQgZnJvbSB0aGUgc291cmNlLCBhbmQgaXMgbm90IGFscmVhZHkgaW4gdXNlJzsKJGxhbmdbJ29wZXJhdGlvbl9jYW5jZWxsZWQnXSA9ICdPcGVyYXRpb24gQ2FuY2VsbGVkJzsKJGxhbmdbJ3NvdXJjZSddID0gJ1NvdXJjZSc7CiRsYW5nWydkZXN0aW5hdGlvbiddID0gJ0Rlc3RpbmF0aW9uJzsKJGxhbmdbJ3Byb21wdF9jb3B5X2ZpbGVzJ10gPSAnQ29weSBjYXRlZ29yeSBGaWxlcyc7CiRsYW5nWydpbmZvX2NvcHlfZmlsZXMnXSA9ICdDb3B5IHRoZSBmaWxlcyBmcm9tIHRoZSBzb3VyY2UgY2F0ZWdvcnkgdG8gdGhlIGRlc3RpbmF0aW9uIGNhdGVnb3J5JzsKJGxhbmdbJ2V4dHJhJ10gPSAnRXh0cmEnOwokbGFuZ1snY29weSddID0gJ0NvcHknOwokbGFuZ1snc2VsZWN0b25lJ10gPSAnU2VsZWN0IE9uZSc7CiRsYW5nWydhdXRvd2F0ZXJtYXJrJ10gPSAnQXV0b21hdGljYWxsIHBsYWNlIHdhdGVybWFya3Mgb24gaW1hZ2VzJzsKJGxhbmdbJ2ltYWdlX3NldHRpbmdzJ10gPSAnSW1hZ2UgU2V0dGluZ3MnOwokbGFuZ1sncHJvbXB0X2dldGZpbGVfcmVzdWx0cGFnZSddID0gJ1BhZ2UgdG8gdXNlIGZvciBlcnJvcnMgb3Igb3RoZXIgbWVzc2FnZXMgcmVsYXRlZCB0byBmaWxlIGRvd25sb2FkaW5nJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRfa2V5J10gPSAnVGhlIHVwbG9hZCBrZXkgc3BlY2lmaWVkIGlzIGludmFsaWQgKG1heWJlIGl0IGhhcyByZWFjaGVkIGl0cyBtYXhpbXVtIGRvd25sb2FkIGNhcGFjaXR5IG9yIGhhcyBleHBpcmVkKSc7CiRsYW5nWydkZmx0X3RpbWVsaW1pdGVkX3N1YmplY3QnXSA9ICd7JHNpdGVuYW1lfSAtIFlvdSBoYXZlIGJlZW4gZ3JhbnRlZCBhY2Nlc3MgdG8geyRlbnRyeS0+dXBsb2FkX25hbWV8c3RyaXBfdGFnc30gZm9yIGEgbGltaXRlZCB0aW1lJzsKJGxhbmdbJ3Byb21wdF90aW1lbGltaXRlZF9zdWJqZWN0J10gPSAnU3ViamVjdCBmb3IgZW1haWwgY3JlYXRlZCB3aGVuIHNlbmRpbmcgYSB0aW1lIGxpbWl0ZWQgVVJMJzsKJGxhbmdbJ3Byb21wdF90aW1lbGltaXRlZF9hdXRvZGVsZXRlJ10gPSAnQXV0byBkZWxldGUgZXhwaXJlZCBlbnRyaWVzIGFmdGVyIE4gaG91cnMgPGVtPihzcGVjaWZ5IDAgdG8gZGlzYWJsZSBhdXRvZGVsZXRlKTwvZW0+Oic7CiRsYW5nWydwcm9tcHRfdGltZWxpbWl0ZWRfc2VuZGl0J10gPSAnU2VuZCB0aGlzIHVybCB0byB0aGUgZGVzaWduYXRlZCBlbWFpbCBhZGRyZXNzPyc7CiRsYW5nWyd1cmxfa2V5J10gPSAnVVJMIEtleSc7CiRsYW5nWydjcmVhdGVkJ10gPSAnQ3JlYXRlZCc7CiRsYW5nWydleHBpcmVzJ10gPSAnRXhwaXJlcyc7CiRsYW5nWydhZGRlZGl0X3RpbWVsaW1pdGVkX2tleSddID0gJ0FkZC9FZGl0IFRpbWUgTGltaXRlZCBLZXknOwokbGFuZ1sndGltZV9saW1pdGVkX2tleV9hZGRlZCddID0gJ1RpbWUgTGltaXRlZCBLZXkgQWRkZWQnOwokbGFuZ1snbnVtX2hvdXJzJ10gPSAnTnVtYmVyIG9mIEhvdXJzJzsKJGxhbmdbJ251bV9kb3dubG9hZHMnXSA9ICdOdW1iZXIgb2YgRG93bmxvYWRzJzsKJGxhbmdbJ2VtYWlsX2FkZHJlc3MnXSA9ICdFbWFpbCBBZGRyZXNzJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdfaW52YWxpZCddID0gJ0EgcmVxdWlyZWQgdmFsdWUgaXMgbWlzc2luZyBvciBpbnZhbGlkOiAlcyc7CiRsYW5nWydhZGRfdGltZWxpbWl0ZWRfa2V5J10gPSAnQWRkIFRpbWUgTGltaXRlZCBLZXknOwokbGFuZ1snZmlsZV9pbmZvMiddID0gJ0ZpbGUgJXMgKGlkPSVkKSc7CiRsYW5nWydpbmZvX3RpbWVsaW1pdGVkX2Rvd25sb2FkcyddID0gJ1NwZWNpZnkgdGhlIGRlZmF1bHQgbnVtYmVyIG9mIHRpbWVzIHRoYXQgYSBmaWxlIGlkZW50aWZpZWQgYnkgYSBwYXJ0aWN1bGFyIGtleSBjYW4gYmUgZG93bmxvYWRlZCc7CiRsYW5nWydwcm9tcHRfdGltZWxpbWl0ZWRfZG93bmxvYWRzJ10gPSAnRGVmYXVsdCBOdW1iZXIgb2YgRG93bmxvYWRzJzsKJGxhbmdbJ2luZm9fdGltZWxpbWl0ZWRfaG91cnMnXSA9ICdTcGVjaWZ5IHRoZSBkZWZhdWx0IG51bWJlciBvZiBob3VycyB0aGF0IGEgdGltZSBsaW1pdGVkIGtleSBpcyB2YWxpZCBmb3IuICBTcGVjaWZ5IDAgZm9yIHVubGltaXRlZCc7CiRsYW5nWydwcm9tcHRfdGltZWxpbWl0ZWRfaG91cnMnXSA9ICdOdW1iZXIgb2YgaG91cnMgYSBUaW1lIExpbWl0ZWQgS2V5IGlzIHZhbGlkIGZvcic7CiRsYW5nWyd0aW1lbGltaXRlZF91cmxfc2V0dGluZ3MnXSA9ICdUaW1lIExpbWl0ZWQgS2V5IFNldHRpbmdzJzsKJGxhbmdbJ21hbmFnZV90aW1lbGltaXRlZCddID0gJ01hbmFnZSBUaW1lIExpbWl0ZWQgQWNjZXNzJzsKJGxhbmdbJ3VwbG9hZGluZ19zZXR0aW5ncyddID0gJ0ZpbGUgVXBsb2FkIFNldHRpbmdzJzsKJGxhbmdbJ2dlbmVyYWxfc2V0dGluZ3MnXSA9ICdHZW5lcmFsIFNldHRpbmdzJzsKJGxhbmdbJ3RodW1ibmFpbF9zZXR0aW5ncyddID0gJ1RodW1ibmFpbCBHZW5lcmF0aW9uJzsKJGxhbmdbJ3RpdGxlX3JlZGlyZWN0X29uX3NlbmRmaWxlJ10gPSAnUGFnZSB0byByZWRpcmVjdCB0byBhZnRlciBzZW5kaW5nIGEgZmlsZSc7CiRsYW5nWydsYmxfYmFjayddID0gJ1RhZ2FzaSc7CiRsYW5nWydsYmxfdGVtcGxhdGVzJ10gPSAnTW9kaWZ5IFRlbXBsYXRlcyc7CiRsYW5nWydwcm9tcHRfcHVibGljX2ZpZWxkJ10gPSAnRmllbGQgaXMgcHVibGljIDxlbT4oY2FuIGJlIHZpZXdlZCBieSBzaXRlIHZpc2l0b3JzKTwvZW0+JzsKJGxhbmdbJ3VwbG9hZF9lZGl0ZWQnXSA9ICdGaWxlIERldGFpbHMgRWRpdGVkIG9uICVzJzsKJGxhbmdbJ2luZm9fdGh1bWJuYWlsJ10gPSAnVmFsaWt1bGluZSBwaXNpcGlsZGkgZmFpbCc7CiRsYW5nWyd1cGxvYWRfZmlsZSddID0gJ0xhZSB1dXMgZmFpbCAmdXVtbDtsZXMnOwokbGFuZ1snbXNnX2ZpZWxkX2RlbGV0ZWQnXSA9ICdWJmF1bWw7bGkga3VzdHV0YXR1ZCc7CiRsYW5nWydhc2tfZGVsZXRlX2ZpZWxkJ10gPSAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSB0aGlzIGZpZWxkIGRlZmluaXRpb24gYW5kIGFsbCBhc3NvY2lhdGVkIHZhbHVlcz8nOwokbGFuZ1sneWVzJ10gPSAnSmFoJzsKJGxhbmdbJ25vJ10gPSAnRWknOwokbGFuZ1sndHlwZSddID0gJ1QmdXVtbDsmdXVtbDtwJzsKJGxhbmdbJ2ZpZWxkdHlwZV9tdWx0aXNlbGVjdCddID0gJ011bHRpc2VsZWN0IExpc3QnOwokbGFuZ1snZmllbGR0eXBlX2Ryb3Bkb3duJ10gPSAnRHJvcGRvd24gTGlzdCc7CiRsYW5nWydmaWVsZHR5cGVfY2hlY2tib3gnXSA9ICdDaGVja2JveCc7CiRsYW5nWydmaWVsZHR5cGVfdGV4dGFyZWEnXSA9ICdUZXh0IEFyZWEnOwokbGFuZ1snZmllbGR0eXBlX3RleHRpbnB1dCddID0gJ1RleHQgSW5wdXQnOwokbGFuZ1sncHJvbXB0X3VzZV93eXNpd3lnJ10gPSAnVXNlIHRoZSB3eXNpd3lnIHdoZW4gZWRpdGluZyB0aGUgdmFsdWUgZm9yIHRoaXMgZmllbGQnOwokbGFuZ1sncHJvbXB0X2RlZmF1bHRfY29udGVudCddID0gJ0RlZmF1bHQgY29udGVudCBmb3IgdGV4dCBhcmVhJzsKJGxhbmdbJ3Byb21wdF9kcm9wZG93bl9vcHRpb25zJ10gPSAnT3B0aW9ucyAob25lIGVudHJ5IHBlciBsaW5lKSc7CiRsYW5nWydwcm9tcHRfZmllbGRfbWF4bGVuZ3RoJ10gPSAnViZhdW1sO2xqYSBtYWtzaW1hYWxuZSBwaWtrdXMnOwokbGFuZ1sncHJvbXB0X2ZpZWxkX2xlbmd0aCddID0gJ1YmYXVtbDtsamEgcGlra3VzJzsKJGxhbmdbJ3Byb21wdF9maWVsZF90eXBlJ10gPSAnViZhdW1sO2xqYSB0JnV1bWw7JnV1bWw7cCc7CiRsYW5nWydwcm9tcHRfZmllbGRfbmFtZSddID0gJ1YmYXVtbDtsamEgbmltaSc7CiRsYW5nWyd0aXRsZV9hZGRfZmllbGQnXSA9ICdMaXNhIHYmb3RpbGRlO2kgbXV1ZGEgdiZhdW1sO2xqYSBkZWZpbml0c2lvb25pJzsKJGxhbmdbJ2ZpZWxkX2RlZmluaXRpb25zJ10gPSAnViZhdW1sO2xqYSBkZWZpbml0c2lvb24nOwokbGFuZ1sncHJvbXB0X2FkZF9maWVsZCddID0gJ0xpc2EgdiZhdW1sO2xqYSBkZWZpbml0c2lvb24nOwokbGFuZ1sncGFyYW1fYWN0aW9uJ10gPSAnU3BlY2lmaWVzIHRoZSBiZWhhdmlvdXIgb2YgdGhlIG1vZHVsZSB0YWcuICBQb3NzaWJsZSB2YWx1ZXMgYXJlOiBkZWZhdWx0IC0gKHRoZSBkZWZhZmF1bHQgYmVoYXZpb3IpLCBkZXRhaWwgLSB0byBkaXNwbGF5IGEgZGV0YWlsIHZpZXcgb2YgYSBzaW5nbGUgZmlsZSBiYXNlZCBvbiB0aGUgdXBsb2FkX2lkLCBhbmQgeW91c2VuZGl0IC0gdG8gZGlzcGxheSBhIGZvcm0gdG8gYWxsb3cgdXBsb2FkaW5nIGEgZmlsZSwgYW5kIHNlbmRpbmcgaXQgdG8gbnVtZXJvdXMgYWRkcmVzc2VzIGluIG9uZSBzdGVwJzsKJGxhbmdbJ3BhcmFtX3NlbmRmaWxlcGFnZSddID0gJ1NwZWNpZnkgdGhlIHBhZ2UgaWQgb3IgYWxpYXMgb2YgYSBwYWdlIHRoYXQgc2hvdWxkIGJlIHVzZWQgZm9yIHRoZSBzZW5kIGEgZmlsZSBmb3JtJzsKJGxhbmdbJ2ZpbGVfdXBsb2FkZWQnXSA9ICdGYWlsIGVkdWthbHQgJnV1bWw7bGVzIGxhZXR1ZCc7CiRsYW5nWyd0byddID0gJ1RvJzsKJGxhbmdbJ3RpdGxlX3lvdXNlbmRpdGZvcm1fdGVtcGxhdGUnXSA9ICdBZGQgb3IgRWRpdCBhICZxdW90O1lvdSBTZW5kIEl0JnF1b3Q7IEZvcm0gVGVtcGxhdGUnOwokbGFuZ1sneW91c2VuZGl0Zm9ybV90ZW1wbGF0ZSddID0gJ1lvdVNlbmRJdCBGb3JtIFRlbXBsYXRlcyc7CiRsYW5nWyd0aXRsZV95b3VzZW5kaXRmb3JtX3N5c2RlZmF1bHQnXSA9ICdTeXN0ZW0gZGVmYXVsdCAmcXVvdDt5b3Ugc2VuZCBpdCZxdW90OyB0ZW1wbGF0ZSc7CiRsYW5nWydtc2dfZmlsZV9zZW50J10gPSAnQSBtZXNzYWdlIGhhcyBiZWVuIHNlbnQgdG8gdGhlIHNlbGVjdGVkIGFkZHJlc3NlcyB0aGF0IGNvbnRhaW5zIGluZm9ybWF0aW9uIGFib3V0IHRoZSBmaWxlIGFuZCBob3cgdG8gcmV0cmlldmUgaXQuJzsKJGxhbmdbJ2Vycm9yX25vYWRkcmVzc2VzJ10gPSAnWW91IG11c3Qgc3VwcGx5IGF0IGxlYXN0IG9uZSBkZXN0aW5hdGlvbiBhZGRyZXNzJzsKJGxhbmdbJ2Vycm9yX25vc3ViamVjdCddID0gJ1lvdSBtdXN0IHN1cHBseSBhIHN1YmplY3QnOwokbGFuZ1snc3ViamVjdCddID0gJ1N1YmplY3QnOwokbGFuZ1sndGl0bGVfc2VuZGZpbGVwYWdlJ10gPSAnUGFnZSBmb3IgJnF1b3Q7U2VuZCBhIEZpbGUmcXVvdDsgZm9ybSc7CiRsYW5nWydmaWxlX2luZm8nXSA9ICdGaWxlIEluZm8nOwokbGFuZ1snc2VuZCddID0gJ1NlbmQnOwokbGFuZ1snbm90ZXMnXSA9ICdOb3Rlcyc7CiRsYW5nWydhZGRyZXNzZWVzJ10gPSAnU2VuZCBpbmZvcm1hdGlvbiBhYm91dCB0aGlzIGZpbGUgdG8nOwokbGFuZ1sncHJvbXB0X3NlbmRmaWxlX2VtYWlsX3RlbXBsYXRlJ10gPSAnJnF1b3Q7U2VuZCBhIEZpbGUmcXVvdDsgRW1haWwgVGVtcGxhdGUnOwokbGFuZ1sndGl0bGVfc2VuZGZpbGVmb3JtX3RlbXBsYXRlJ10gPSAnQWRkIG9yIEVkaXQgYSAmcXVvdDtTZW5kIGEgRmlsZSZxdW90OyBGb3JtIFRlbXBsYXRlJzsKJGxhbmdbJ3NlbmRmaWxlZm9ybV90ZW1wbGF0ZSddID0gJyZxdW90O1NlbmQgYSBGaWxlJnF1b3Q7IEZvcm0gVGVtcGxhdGVzJzsKJGxhbmdbJ3Byb21wdF9ub3RpZnlfZW1haWxfdGVtcGxhdGUnXSA9ICdGaWxlIHVwbG9hZCBub3RpZmljYXRpb24gZW1haWwgdGVtcGxhdGUnOwokbGFuZ1sndGl0bGVfc2VuZGZpbGVmb3JtX3N5c2RlZmF1bHQnXSA9ICdTeXN0ZW0gZGVmYXVsdCAmcXVvdDtTZW5kIGEgRmlsZSZxdW90OyBmb3JtIHRlbXBsYXRlJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeWRlbGV0YWJsZSddID0gJ0ZpbGVzIGluIHRoaXMgY2F0ZWdvcnkgY2FuIGJlIGRlbGV0ZWQnOwokbGFuZ1sndGl0bGVfYWxsb3dfZGVsZXRlJ10gPSAnQWxsb3cgZGVsZXRpb24gb2YgZmlsZXMgZnJvbSB0aGUgZnJvbnRlbmQnOwokbGFuZ1snZGVmYXVsdF90ZW1wbGF0ZXMnXSA9ICdEZWZhdWx0IFRlbXBsYXRlcyc7CiRsYW5nWydmaXJzdHBhZ2UnXSA9ICdFc2ltZW5lIGxlaHQnOwokbGFuZ1sncHJldnBhZ2UnXSA9ICdFZWxtaW5lIGxlaHQnOwokbGFuZ1snbmV4dHBhZ2UnXSA9ICdKJmF1bWw7cmdtaW5lIGxlaHQnOwokbGFuZ1snbGFzdHBhZ2UnXSA9ICdWaWltYW5lIGxlaHQnOwokbGFuZ1snZmlyc3RwYWdlX2Fycm93J10gPSAnPDwnOwokbGFuZ1sncHJldnBhZ2VfYXJyb3cnXSA9ICc8JzsKJGxhbmdbJ25leHRwYWdlX2Fycm93J10gPSAnPic7CiRsYW5nWydsYXN0cGFnZV9hcnJvdyddID0gJz4+JzsKJGxhbmdbJ3BhZ2UnXSA9ICdMZWh0JzsKJGxhbmdbJ29mJ10gPSAnb2YnOwokbGFuZ1sncHJvbXB0X2dyb3VwbGlzdCddID0gJ0F1dGhvcml6ZWQgRkVVIEdyb3Vwcyc7CiRsYW5nWydpbmZvX2dyb3VwbGlzdCddID0gJ1NlbGVjdCB0aGUgRkVVIGdyb3VwcyB0aGF0IGFyZSBhbGxvd2VkIGFjY2VzcyB0byBmaWxlcyBpbiB0aGlzIGNhdGVnb3J5LiAgRGVzZWxlY3QgYWxsIGVudHJpZXMgdG8gYWxsb3cgYWxsIGFjY2Vzcyc7CiRsYW5nWyd0aXRsZV9zY2FuJ10gPSAnU2NhbiBmb3IgbmV3IGZpbGVzIGluIHRoaXMgY2F0ZWdvcnknOwokbGFuZ1sndGl0bGVfY3JlYXRlX3RodW1ibmFpbHMnXSA9ICdDcmVhdGUgbWlzc2luZyB0aHVtYm5haWxzIGZvciBmaWxlcyBpbiB0aGlzIGNhdGVnb3J5Lic7CiRsYW5nWydjcmVhdGVfdGh1bWJuYWlscyddID0gJ0xvbyBwaXNpcGlsZGlkJzsKJGxhbmdbJ3RpdGxlX2NyZWF0ZV90aHVtYm5haWwnXSA9ICcocmUpQ3JlYXRlIHRoZSB0aHVtYm5haWwgZm9yIHRoaXMgZmlsZSc7CiRsYW5nWydjcmVhdGVfdGh1bWJuYWlsJ10gPSAnTG9vIHBpc2lwaWx0JzsKJGxhbmdbJ2Vycm9yX3BhdGhlcnJvciddID0gJ0NvdWxkIG5vdCBvcGVuIGRpcmVjdG9yeSAocGVybWlzc2lvbnMgcHJvYmxlbT8pJzsKJGxhbmdbJ3RpdGxlX2Rvd25sb2FkX2NodW5rc2l6ZSddID0gJ1NpemUgb2YgZWFjaCBkb3dubG9hZCBjaHVuayc7CiRsYW5nWydpbmZvX2Rvd25sb2FkX2NodW5rc2l6ZSddID0gJ0FkanVzdGluZyB0aGlzIHBhcmFtZXRlciB3aWxsIGVmZmVjdCBkb3dubG9hZCBzcGVlZCwgYW5kIG1heSBoZWxwIGluIGxvd2VyIG1lbW9yeSBlbnZpcm9ubWVudHMnOwokbGFuZ1snd2FybmluZ19zYWZlX21vZGUnXSA9ICdQSFAmIzAzOTtzIHNhZmUgbW9kZSBpcyBlbmFibGVkLiAgVGhpcyBtYXkgY2F1c2UgcHJvYmxlbXMgd2l0aCB1cGxvYWRpbmcgZmlsZXMgKHBlcm1pc3Npb25zKSwgYW5kIG1heSBhbHNvIGludGVyZmVyZSB3aXRoIHRoaXMgbW9kdWxlJiMwMzk7cyBhYmlsaXR5IHRvIHNlbmQgc29tZSBmaWxlcyBkdWUgdG8gYW4gaW5hYmlsaXR5IHRvIG92ZXJyaWRlIHNvbWUgaW5pIHNldHRpbmdzLiAgWW91IGFyZSBhZHZpc2VkIHRvIGNvbnRhY3QgeW91ciBwcm92aWRlciB0byBzZWUgYWJvdXQgZGlzYWJsaW5nIHNhZmUgbW9kZS4nOwokbGFuZ1sncGFyYW1fZGV0YWlscGFnZSddID0gJ1VzZWZ1bCBmb3IgZGlzcGxheWluZyBhIGRldGFpbCByZXBvcnQgdXNpbmcgYSBkaWZmZXJlbnQgcGFnZSB0ZW1wbGF0ZSwgdGhpcyBwYXJhbWV0ZXIgdGFrZXMgdGhlIHBhZ2UgaWQgb3IgcGFnZSBhbGlhcyBvZiBhIHBhZ2UgdGhhdCBzaG91bGQgYmUgdXNlZCB0byBkaXNwbGF5IHRoZSBkZXRhaWwgcmVwb3J0JzsKJGxhbmdbJ3BhcmFtX3ByZWZpeCddID0gJ0EgYm9vbGVhbiB0aGF0IGluZGljYXRlcyB3ZXRoZXIgZmlsZSBuYW1lcyBzaG91bGQgYmUgcHJlZml4ZWQnOwokbGFuZ1sncGFyYW1fcHJlZml4X2ZldSddID0gJ0EgYm9vbGVhbiBwYXJhbWV0ZXIgdGhhdCBpbmRpY2F0ZXMgdGhhdCB0aGUgcHJlZml4IHNob3VsZCBiZSB0YWtlbiBmcm9tIHRoZSBjdXJyZW50IGF1dGhvciwgaWYgbm90IHNwZWNpZmllZCwgdGhlIHByZWZpeCBpcyB0aGUgY3VycmVudCB0aW1lIChpbiBkZWNoZXggZm9ybWF0KSc7CiRsYW5nWydwYXJhbV9ub2NhcHRjaGEnXSA9ICdEaXNhYmxlIGNhcHRjaGEgc3VwcG9ydCAob24gYnkgZGVmYXVsdCkgaW4gdGhlIHVwbG9hZCBmb3JtJzsKJGxhbmdbJ3RpdGxlX3VwbG9hZGZvcm1fdGVtcGxhdGUnXSA9ICdFZGl0IFVwbG9hZCBGb3JtIFRlbXBsYXRlJzsKJGxhbmdbJ2NhcHRjaGFfdGl0bGUnXSA9ICdFbnRlciB0aGUgdGV4dCBkaXNwbGF5ZWQgaW4gdGhpcyBpbWFnZSc7CiRsYW5nWydlcnJvcl9jYXB0Y2hhbWlzbWF0Y2gnXSA9ICdUZXh0IGVudGVyZWQgZGlkIG5vdCBtYXRjaCB0aGUgaW1hZ2UgZGlzcGxheWVkJzsKJGxhbmdbJ3RpdGxlX2F1dG90aHVtYm5haWxfZXh0ZW5zaW9ucyddID0gJ0NyZWF0ZSB0aHVtYm5haWxzIGZvciBmaWxlcyB3aXRoIHRoZXNlIGV4dGVuc2lvbnMnOwokbGFuZ1sndGl0bGVfYXV0b3RodW1ibmFpbF9zaXplJ10gPSAnTWF4aW11bSBzaXplIChwaXhlbHMpIG9mIHRoZSBnZW5lcmF0ZWQgdGh1bWJuYWlsJzsKJGxhbmdbJ3Byb21wdF91cGxvYWRfaWNvbiddID0gJ1VwbG9hZCBBbiBJY29uJzsKJGxhbmdbJ2luZm9fc3lzZGVmYXVsdCddID0gJ1RoaXMgdGV4dCBpcyB1c2VkIHdoZW4gY3JlYXRpbmcgYSBuZXcgdGVtcGxhdGUgb2YgdGhpcyB0eXBlJzsKJGxhbmdbJ3RpdGxlX2RldGFpbHJwdF9zeXNkZWZhdWx0J10gPSAnU3lzdGVtIERlZmF1bHQgRGV0YWlsIFJlcG9ydCBUZW1wbGF0ZSc7CiRsYW5nWyd0aXRsZV9zdW1tYXJ5cnB0X3N5c2RlZmF1bHQnXSA9ICdTeXN0ZW0gRGVmYXVsdCBTdW1tYXJ5IFJlcG9ydCBUZW1wbGF0ZSc7CiRsYW5nWyd0aXRsZV91cGxvYWRmb3JtX3N5c2RlZmF1bHQnXSA9ICdTeXN0ZW0gRGVmYXVsdCBVcGxvYWQgRm9ybSBUZW1wbGF0ZSc7CiRsYW5nWyd0ZW1wbGF0ZSddID0gJ1RlbXBsYXRlJzsKJGxhbmdbJ3Jlc2V0dG9kZWZhdWx0J10gPSAnUmVzZXQgdG8gRGVmYXVsdHMnOwokbGFuZ1sndGl0bGVfc3VtbWFyeXJwdF90ZW1wbGF0ZSddID0gJ1N1bW1hcnkgUmVwb3J0IFRlbXBsYXRlJzsKJGxhbmdbJ3RpdGxlX2RldGFpbHJwdF90ZW1wbGF0ZSddID0gJ0RldGFpbCBSZXBvcnQgVGVtcGxhdGUnOwokbGFuZ1sncHJvbXB0X25hbWUnXSA9ICdOaW1pJzsKJGxhbmdbJ3Byb21wdF9kZWZhdWx0J10gPSAnVmFpa2ltaXNpJzsKJGxhbmdbJ2xlZ2VuZF91cGxvYWRmb3JtJ10gPSAnTGFlIGZhaWwgJnV1bWw7bGVzJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdwYXJhbSddID0gJ04mb3RpbGRlO3V0dWQgcGFyYW1lZXRlciBwdXVkdWInOwokbGFuZ1snZXJyb3JfbWlzc2luZ25hbWUnXSA9ICdBIG5hbWUgZm9yIHRoZSBmaWxlIHR5cGUgbXVzdCBiZSBzcGVjaWZpZWQnOwokbGFuZ1snZXJyb3JfbWlzc2luZ2V4dGVuc2lvbnMnXSA9ICdBdCBsZWFzdCBvbmUgZmlsZSBleHRlbnNpb24gbXVzdCBiZSBzcGVjaWZpZWQnOwokbGFuZ1snZXJyb3JfbWlzc2luZ2ljb24nXSA9ICdBbiBpY29uIG11c3QgYmUgc3BlY2lmaWVkJzsKJGxhbmdbJ2Vycm9yX25vc3VjaHJvdyddID0gJ1RoZSBzcGVjaWZpZWQgcm93IGNvdWxkIG5vdCBiZSBmb3VuZCc7CiRsYW5nWyduYW1lX3Vua25vd24nXSA9ICdVbmtub3duJzsKJGxhbmdbJ2Rlc2NyaXB0aW9uX3Vua25vd24nXSA9ICdGaWxlIHR5cGUgZGVzY3JpcHRpb24gZm9yIHVubWF0Y2hlZCBmaWxlcyc7CiRsYW5nWydpbWFnZSddID0gJ0ltYWdlJzsKJGxhbmdbJ2ljb24nXSA9ICdJY29uJzsKJGxhbmdbJ2V4dGVuc2lvbnMnXSA9ICdGaWxlIEV4dGVuc2lvbnMnOwokbGFuZ1snYWRkZmlsZXR5cGUnXSA9ICdBZGQgTmV3IEZpbGUgVHlwZSc7CiRsYW5nWydmaWxlX3R5cGVzJ10gPSAnRmlsZSBUeXBlcyc7CiRsYW5nWydlcnJvcl9ub2NhdGVnb3J5aWQnXSA9ICdObyBDYXRlZ29yeSBpZCB3YXMgc3VwcGxpZWQnOwokbGFuZ1snZXJyb3Jfbm9jYXRlZ29yeSddID0gJ05vIENhdGVnb3J5IGlkIHdhcyBzdXBwbGllZCc7CiRsYW5nWydlcnJvcl90ZW1wbGF0ZW5hbWVleGlzdHMnXSA9ICdBIHRlbXBsYXRlIGJ5IHRoYXQgbmFtZSBhbHJlYWR5IGV4aXN0cyc7CiRsYW5nWydwcm9tcHRfdGVtcGxhdGVuYW1lJ10gPSAnVGVtcGxhdGUgTmFtZSc7CiRsYW5nWydwcm9tcHRfdGVtcGxhdGUnXSA9ICdUZW1wbGF0ZSc7CiRsYW5nWydwcm9tcHRfbmV3dGVtcGxhdGUnXSA9ICdDcmVhdGUgYSBuZXcgdGVtcGxhdGUnOwokbGFuZ1snaGVscF9PbkRvd25sb2FkJ10gPSAnPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGZpbmlzaGVzIGRvd25sb2FkaW5nIGEgZmlsZTwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+aWQ8L2VtPiAtIFVwbG9hZCBJRDwvbGk+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIEZpbGUgbmFtZTwvbGk+DQo8bGk+PGVtPmlwPC9lbT4gLSBUaGUgSVAgQWRkcmVzcyBvZiB0aGUgZG93bmxvYWRlcjwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2hlbHBfT25EZWxldGVDYXRlZ29yeSddID0gJzxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgY2F0ZWdvcnkgaXMgRGVsZXRlZDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gQ2F0ZWdvcnkgbmFtZTwvbGk+DQo8bGk+PGVtPnBhdGg8L2VtPiAtIENhdGVnb3J5IHBhdGg8L2xpPg0KPC91bD4NCic7CiRsYW5nWydoZWxwX09uQ3JlYXRlQ2F0ZWdvcnknXSA9ICc8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIGNhdGVnb3J5IGlzIENyZWF0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSBuYW1lIG9mIHRoZSBjYXRlZ29yeTwvbGk+DQo8bGk+PGVtPmRlc2NyaXB0aW9uPC9lbT4gLSBUaGUgY2F0ZWdvcnkgZGVzY3JpcHRpb248L2xpPg0KPGxpPjxlbT5wYXRoPC9lbT4gLSBUaGUgY2F0ZWdvcnkgcGF0aDwvbGk+DQo8bGk+PGVtPnBhdGg8L2VtPiAtIEEgZmxhZyBpbmRpY2F0aW5nIGlmIHRoZSBjYXRlZ29yeSBpcyBsaXN0YWJsZTwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2hlbHBfT25SZW1vdmUnXSA9ICc8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIGZpbGUgaXMgcmVtb3ZlZCB2aWEgdGhlIGFkbWluIG9yIGZyb250ZW5kIGludGVyZmFjZXM8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSBuYW1lIG9mIHRoZSByZW1vdmVkIGZpbGU8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIGlkIG9mIHRoZSByZW1vdmVkIGZpbGU8L2xpPg0KPGxpPjxlbT5jYXRlZ29yeV9pZDwvZW0+IC0gVGhlIGlkIG9mIHRoZSBjYXRlZ29yeTwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2hlbHBfT25VcGxvYWQnXSA9ICc8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIG5ldyBmaWxlIGlzIHVwbG9hZGVkIHZpYSB0aGUgYWRtaW4gb3IgZnJvbnRlbmQgaW50ZXJmYWNlczwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+Y2F0ZWdvcnk8L2VtPiAtIFRoZSBjYXRlZ29yeSBuYW1lPC9saT4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIHVwbG9hZGVkIGZpbGU8L2xpPg0KPGxpPjxlbT5zaXplPC9lbT4gLSBUaGUgc2l6ZSBvZiB0aGUgdXBsb2FkZWQgZmlsZTwvbGk+DQo8bGk+PGVtPnN1bW1hcnk8L2VtPiAtIFRoZSBzaG9ydCBkZXNjcmlwdGlvbiBmb3IgdGhlIHVwbG9hZGVkIGZpbGUgKG1heSBiZSBlbXB0eSk8L2VtPjwvbGk+DQo8bGk+PGVtPmRlc2NyaXB0aW9uPC9lbT4gLSBUaGUgbG9uZyBkZXNjcmlwdGlvbiBmb3IgdGhlIHVwbG9hZGVkIGZpbGUgKG1heSBiZSBlbXB0eSk8L2VtPjwvbGk+DQo8bGk+PGVtPmF1dGhvcjwvZW0+IC0gVGhlIGF1dGhvciBvZiB0aGUgdXBsb2FkZWQgZmlsZSAoaWYgYXZhaWxhYmxlKTwvZW0+PC9saT4NCjxsaT48ZW0+aXBfYWRkcmVzczwvZW0+IC0gVGhlIGludGVybmV0IGFkZHJlc3Mgb2YgdGhlIGNsaWVudCB0aGF0IHVwbG9hZGVkIHRoZSBmaWxlPC9saT4NCjwvdWw+DQonOwokbGFuZ1snaW5mb19ldmVudF9vbmRlbGV0ZWNhdGVnb3J5J10gPSAnRXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBjYXRlZ29yeSBpcyBkZWxldGVkJzsKJGxhbmdbJ2luZm9fZXZlbnRfb25jcmVhdGVjYXRlZ29yeSddID0gJ0V2ZW50IGdlbmVyYXRlZCB3aGVuIGEgY2F0ZWdvcnkgaXMgY3JlYXRlZCc7CiRsYW5nWydpbmZvX2V2ZW50X29uZG93bmxvYWQnXSA9ICdFdmVudCBnZW5lcmF0ZWQgd2hlbiBhIGZpbGUgaXMgZG93bmxvYWRlZCc7CiRsYW5nWydpbmZvX2V2ZW50X29udXBsb2FkJ10gPSAnRXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBuZXcgZmlsZSBpcyB1cGxvYWRlZCc7CiRsYW5nWydpbmZvX2V2ZW50X29ucmVtb3ZlJ10gPSAnRXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBmaWxlIGlzIHJlbW92ZWQnOwokbGFuZ1sndGl0bGVfdXNlcnRhZ19vbnVwbG9hZCddID0gJ1VzZXIgZGVmaW5lZCB0YWcgdG8gY2FsbCBhZnRlciB1cGxvYWQgaXMgY29tcGxldGUnOwokbGFuZ1snbm9uZSddID0gJ05vbmUnOwokbGFuZ1snbWF0Y2hlc2ZvdW5kJ10gPSAnTWF0Y2hlcyBmb3VuZCc7CiRsYW5nWydmaWx0ZXInXSA9ICdGaWx0ZXInOwokbGFuZ1sndGl0bGVfcmVkaXJlY3RvbnVwbG9hZCddID0gJ1JlZGlyZWN0IHRvIHBhZ2UgaWQvYWxpYXMgb24gdXNlciB1cGxvYWQnOwokbGFuZ1snZGV0YWlscyddID0gJ0RldGFpbHMnOwokbGFuZ1snY29uZmlybV9wcmVmZXJlbmNlcyddID0gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBhZGp1c3QgdGhlIHByZWZlcmVuY2VzPyc7CiRsYW5nWydlcnJvcl9ub2ZpbGVzdXBsb2FkZWQnXSA9ICdObyBmaWxlcyB3ZXJlIHVwbG9hZGVkLic7CiRsYW5nWydwcm9tcHRfcmVwbGFjZSddID0gJ0FsbG93IE92ZXJ3cml0ZSc7CiRsYW5nWydpbmZvX3JlcGxhY2UnXSA9ICdSZXBsYWNlIGFueSBmaWxlIHdpdGggdGhlIHNhbWUgbmFtZSAoZG9lcyBub3QgY2hhbmdlIGlkKSc7CiRsYW5nWydwYXJhbV9ub19pbml0aWFsJ10gPSAnRG8gbm90IGRpc3BsYXkgYW55IGluaXRpYWwgcmVzdWx0cyB3aGVuIHRoZSBmaWx0ZXIgaXMgb24nOwokbGFuZ1sncGFyYW1fa2V5J10gPSAnUHJvdmlkZSBhbiBhZGRpdGlvbmFsIGtleSB0byB0aGUgbW9kdWxlIGZvciBmdXJ0aGVyIG9yZ2FuaXppbmcgdXBsb2Fkcy4gIFRoaXMga2V5IGNvdWxkIGJlIGFuIGVuY29kZWQgc3RyaW5nIGxpa2U6ICYjMDM5O2ZldXNlcnM6dWlkJiMwMzk7LCBldGMuICBUaGlzIHBhcmFtZXRlciBpcyB1c3VhbGx5IG9ubHkgbmVlZGVkIHdoZW4gZW1iZWRkaW5nIHRoZSB1cGxvYWRzIG1vZHVsZSBpbnRvIGFub3RoZXIgbW9kdWxlJzsKJGxhbmdbJ3BhcmFtX25vYXV0aG9yJ10gPSAnSGlkZSB0aGUgYXV0aG9yIGZpZWxkIGZyb20gdGhlIHVwbG9hZCBmb3JtLiAgVGhpcyBwYXJhbWV0ZXIgaXMgb25seSB2YWxpZCB3aGVuIG1vZGU9JiMwMzk7dXBsb2FkJiMwMzk7LiAgSWYgVGhlIEZyb250ZW5kVXNlcnMgbW9kdWxlIGlzIHByZXNlbnQsIGFuZCBhIHVzZXIgaXMgY3VycmVudGx5IGxvZ2dlZCBpbiwgYSBoaWRkZW4gZmllbGQgd2lsbCBob2xkIHRoZSBjdXJyZW50bHkgbG9nZ2VkIGluIHVzZXJuYW1lJzsKJGxhbmdbJ3BhcmFtX3VwbG9hZF9pZCddID0gJ3VwbG9hZF9pZD0mcXVvdDtpZCZxdW90OyAtIHNwZWNpZnkgYSBzaW5nbGUgZmlsZSBmb3IgdGhlIHVybC9saW5rLGRldGFpbGVkIG9yIHNpbmdsZSBtb2RlcyAoYWJvdmUpJzsKJGxhbmdbJ3BhcmFtX2RldGFpbHRlbXBsYXRlJ10gPSAnVXNlIGEgdGVtcGxhdGUgd2l0aCB0aGlzIG5hbWUgZm9yIHRoZSBkZXRhaWwgcmVwb3J0Lic7CiRsYW5nWydwYXJhbV90ZW1wbGF0ZSddID0gJ1VzZSBhIHRlbXBsYXRlIHdpdGggdGhpcyBuYW1lIGZvciB0aGlzIHJlcG9ydCBvciBmb3JtLiAgVGhlIG1vZGUgaXMgdXNlZCB0byBkZXRlcm1pbmUgd2hhdCB0eXBlIG9mIHRlbXBsYXRlIGlzIHJlcXVpcmVyZCwgYW5kIHRoZW4gYSBuYW1lIG1hdGNoIGlzIHBlcmZvcm1lZCB3aXRoaW4gdGhhdCB0eXBlLic7CiRsYW5nWydwYXJhbV9maWx0ZXInXSA9ICdEaXNwbGF5IHRoZSBmaWx0ZXJpbmcgZm9ybS4gIElmIHRoaXMgcGFyYW1ldGVyIGlzIHNldCB0byBhbnkgdmFsdWUnOwokbGFuZ1sncGFyYW1fbm9faW50aXRpYWwnXSA9ICdPbmx5IHVzZWZ1bCB3aGVuIHRoZSBmaWx0ZXIgcGFyYW1ldGVyIGlzIHN1cHBsaWVkLCBvciBvbiBieSBkZWZhdWx0LCB0aGlzIHBhcmFtZXRlciBpbmRpY2F0ZXMgd2V0aGVyIGluaXRpYWwgcmVzdWx0cyBzaG91bGQgYmUgcmV0dXJuZWQnOwokbGFuZ1sncGFyYW1fZmlsZXR5cGVzJ10gPSAnRGlzcGxheSBvbmx5IGZpbGVzIHdob3NlIHR5cGUgbWF0Y2hlcyB0aGlzIGNvbW1hIHNlcGFyYXRlZCBsaXN0JzsKJGxhbmdbJ3BhcmFtX3NvcnRvcmRlciddID0gJyAgPHA+U29ydCBPcmRlcnMNCiAgPHVsPg0KICA8bGk+PGVtPmRhdGVfYXNjPC9lbT4gLSBTb3J0IGJ5IGFzY2VuZGluZyBkYXRlPC9saT4NCiAgPGxpPjxlbT5kYXRlX2Rlc2M8L2VtPiAtIFNvcnQgYnkgZGVzY2VuZGluZyBkYXRlPC9saT4NCiAgPGxpPjxlbT5uYW1lX2FzYzwvZW0+IC0gU29ydCBieSBhc2NlbmRpbmcgbmFtZTwvbGk+DQogIDxsaT48ZW0+bmFtZV9kZXNjPC9lbT4gLSBTb3J0IGJ5IGRlc2NlbmRpbmcgbmFtZTwvbGk+DQogIDxsaT48ZW0+c2l6ZV9hc2M8L2VtPiAtIFNvcnQgYnkgYXNjZW5kaW5nIHNpemU8L2xpPg0KICA8bGk+PGVtPnNpemVfZGVzYzwvZW0+IC0gU29ydCBieSBkZXNjZW5kaW5nIHNpemU8L2xpPg0KICA8bGk+PGVtPmF1dGhvcl9hc2M8L2VtPiAtIFNvcnQgYnkgYXNjZW5kaW5nIGF1dGhvcjwvbGk+DQogIDxsaT48ZW0+YXV0aG9yX2Rlc2M8L2VtPiAtIFNvcnQgYnkgZGVzY2VuZGluZyBhdXRob3I8L2xpPg0KICA8bGk+PGVtPmlwX2FzYzwvZW0+IC0gU29ydCBieSBhc2NlbmRpbmcgaXAgYWRkcmVzczwvbGk+DQogIDxsaT48ZW0+aXBfZGVzYzwvZW0+IC0gU29ydCBieSBkZXNjZW5kaW5nIGlwIGFkZHJlc3M8L2xpPg0KICA8bGk+PGVtPmRlc2NfYXNjPC9lbT4gLSBTb3J0IGJ5IGFzY2VuZGluZyBkZXNjcmlwdGlvbjwvbGk+DQogIDxsaT48ZW0+ZGVzY19kZXNjPC9lbT4gLSBTb3J0IGJ5IGRlc2NlbmRpbmcgZGVzY3JpcHRpb248L2xpPg0KICA8bGk+PGVtPnJhbmRvbTwvZW0+IC0gUmFuZG9tIHNvcnQgb3JkZXI8L2xpPg0KICA8L3VsPg0KICA8L3A+JzsKJGxhbmdbJ3BhcmFtX2xpc3Rpbmd0ZW1wbGF0ZSddID0gJ1RlbXBsYXRlIHRvIHVzZSBmb3IgY2F0ZWdvcnkgbGlzdGluZ3MgYWZ0ZXIgY2xpY2t0aHJvdWdoIGZyb20gQ2F0ZWdvcnkgU3VtbWFyeSBwYWdlJzsKJGxhbmdbJ3BhcmFtX2xpc3Rpbmdzb3J0b3JkZXInXSA9ICdTb3J0IG9yZGVyIChhbGEgcGFyYW1fc29ydG9yZGVyKSB0byB1c2UgZm9yIGNhdGVnb3J5IGxpc3RpbmdzIGFmdGVyIGNsaWNrdGhyb3VnaCBmcm9tIENhdGVnb3J5IFN1bW1hcnkgcGFnZSc7CiRsYW5nWydwYXJhbV9maWxlZXh0ZW5zaW9ucyddID0gJyANCmZpbGVfZXh0ZW5zaW9ucz0mcXVvdDtleHQxLGV4dDIsZXh0MyZxdW90Ow0KPHA+dmFsaWQgb25seSB3aGVuIG1vZGU9dXBsb2FkLCB0aGlzIHBhcmFtZXRlciBsaW1pdHMgdGhlIHR5cGVzIG9mIGZpbGVzIHRoYXQgY2FuIGJlIHVwbG9hZGVkLiAgSXQgb3ZlcnJpZGVzIGFueSBzZXR0aW5ncyBpbiB0aGUgbW9kdWxlIHByZWZlcmVuY2VzLjwvcD4nOwokbGFuZ1sncGFyYW1fY291bnQnXSA9ICdjb3VudD0mcXVvdDtOJnF1b3Q7DQo8cD5BIHBhcmFtZXRlciB0byBsaXN0IG9ubHkgdGhlIGZpcnN0IE4gcmVzdWx0cyBvZiB0aGUgcXVlcnkuICBQYWdpbmF0aW9uIHdvdWxkIGJlIGJldHRlciwgYnV0IHRoaXMgd2lsbCBkbyB0aGUgdHJpY2sgZm9yIG5vdzwvcD4nOwokbGFuZ1sncGFyYW1fY2F0ZWdvcnknXSA9ICdjYXRlZ29yeT0mcXVvdDtuYW1lJnF1b3Q7DQo8cD48Yj5Ob3RlOjwvYj4gQ2F0ZWdvcnkgY2FuIGJlICZxdW90O2FsbCZxdW90Oywgd2hpY2ggd2lsbCBsaXN0IGFsbCBvZiB0aGUgdXBsb2FkcyBmcm9tIGFsbCA8ZW0+bGlzdGFibGU8L2VtPiBjYXRlZ29yaWVzPC9wPic7CiRsYW5nWydwYXJhbV9tb2RlJ10gPSAnICA8dWw+DQogIDxsaT48ZW0+ZGV0YWlsZWQ8L2VtPiAtIERpc3BsYXkgYSBkZXRhaWxlZCByZXBvcnQgZm9yIGEgc2luZ2xlIHVwbG9hZC48L2xpPg0KICA8bGk+PGVtPnNpbmdsZTwvZW0+IC0gQWxpYXMgZm9yIHRoZSBkZXRhaWxlZCBtb2RlLjwvbGk+DQogIDxsaT48ZW0+dXBsb2FkPC9lbT4gLSBEaXNwbGF5IGEgZm9ybSB0byBhbGxvdyBhIGZyb250ZW5kIHVzZXIgdG8gdXBsb2FkIGEgZmlsZTwvbGk+DQogIDxsaT48ZW0+dXJsIDxpPm9yPC9pPiBsaW5rPC9lbT4gLSBEaXNwbGF5IGEgbGluayB0byBhIGZpbGU8L2xpPg0KICA8bGk+PGVtPnN1bW1hcnk8L2VtPiAtIERpc3BsYXkgYSBzdW1tYXJpemVkIGxpc3Qgb2YgYWxsIGZpbGVzIGluIHRoZSBzcGVjaWZpZWQgY2F0ZWdvcnk8L2xpPg0KICA8L3VsPic7CiRsYW5nWydwYXJhbV9zZWxlY3Rmb3JtJ10gPSAnV2hlbiB1c2luZyB0aGUgJiMwMzk7c2VsZWN0JiMwMzk7IG1vZGUsIHRoaXMgcGFyYW1ldGVyIGlzIHRoZSBmb3JtaWQgb2YgdGhlIHBhcmVudCBmb3JtLiAgVXNlZCB0byBoYW5kbGUgcGFyYW1ldGVyIHBhc3NpbmcnOwokbGFuZ1sncGFyYW1fc2VsZWN0bmFtZSddID0gJ3doZW4gdXNpbmcgdGhlICYjMDM5O3NlbGVjdCYjMDM5OyBtb2RlLCB0aGlzIHBhcmFtZXRlciBzcGVjaWZpZXMgdGhlIG5hbWUgb2YgdGhlIGZpZWxkJzsKJGxhbmdbJ3BhcmFtX3NlbGVjdHZhbHVlJ10gPSAnV2hlbiB1c2luZyB0aGUgJiMwMzk7c2VsZWN0JiMwMzk7IG1vZGUsIHRoaXMgcGFyYW1ldGVyIHNwZWNpZmllcyB0aGUgZGVmYXVsdCBmaWVsZCB2YWx1ZSc7CiRsYW5nWydwYXJhbV9zZWxlY3Rub25lJ10gPSAnV2hlbiB1c2luZyB0aGUgJiMwMzk7c2VsZWN0JiMwMzk7IG1vZGUsIHRoaXMgcGFyYW1ldGVyIHNwZWNpZmllcyB3ZXRoZXIgJiMwMzk7bm9uZSYjMDM5OyBpcyBhIHZhbGlkIGNob2ljZS4nOwokbGFuZ1sncmV0dXJudG9tb2R1bGUnXSA9ICdSZXR1cm4gdG8gbW9kdWxlIHBhbmVsJzsKJGxhbmdbJ2Vycm9yX25vY2F0ZWdvcmllcyddID0gJ1RoZXJlIGFyZSBubyBkZWZpbmVkIGNhdGVnb3JpZXMnOwokbGFuZ1sndGl0bGVfZW5mb3JjZWV4dGVuc2lvbnMnXSA9ICdSZXF1aXJlIGV4dGVuc2lvbnMgb24gYWxsIHVwbG9hZGVkIGZpbGVzJzsKJGxhbmdbJ3Jlc3RvcmVkZWZhdWx0c2NvbmZpcm0nXSA9ICdUaGlzIG9wZXJhdGlvbiB3aWxsIHJlc3RvcmUgdGhlIHRlbXBsYXRlIHRvIHN5c3RlbSBkZWZhdWx0cy4gIEFueSBjaGFuZ2VzIHlvdSBoYXZlIG1hZGUgd2lsbCBiZSBsb3N0LiAgQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIHByb2NlZWQ/JzsKJGxhbmdbJ3RodW1ibmFpbCddID0gJ1Bpc2lwaWx0JzsKJGxhbmdbJ25ld3RodW1ibmFpbCddID0gJ0xhZSAmdXVtbDtsZXMgdXVzIHBpc2lwaWx0JzsKJGxhbmdbJ2luZm9fc3VtbWFyeSddID0gJ0EgYnJpZWYgZGVzY3JpcHRpb24gb2YgdGhlIGZpbGUgKGlmIGVtcHR5LCB0aGUgZmlsZSBuYW1lIGlzIHVzZWQgd2l0aG91dCB0aGUgZXh0ZW5zaW9uKSc7CiRsYW5nWydpbmZvX2NhdGVnb3J5bmFtZSddID0gJ0EgYnJpZWYgbmFtZSBmb3IgeW91ciBjYXRlZ29yeSAoaHVtYW4gcmVhZGFibGUpJzsKJGxhbmdbJ2luZm9fY2F0ZWdvcnlkZXNjJ10gPSAnQSBkZXNjcmlwdGlvbiBmb3IgeW91ciBjYXRlZ29yeSc7CiRsYW5nWydpbmZvX2NhdGVnb3J5cGF0aCddID0gJ1RoZSBkaXJlY3RvcnkgbmFtZSBpbnNpZGUgdGhlIHVwbG9hZHMgZGlyZWN0b3J5IHRoYXQgd2lsbCBiZSB1c2VkIHRvIHN0b3JlIGZpbGVzIGluIHRoaXMgY2F0ZWdvcnkuICBJZiB0aGUgZGlyZWN0b3J5IG9mIHRoaXMgbmFtZSBkb2VzIG5vdCBhbHJlYWR5IGV4aXN0LCBpdCBtYXkgYmUgY3JlYXRlZCc7CiRsYW5nWydpbmZvX2Rlc3RuYW1lJ10gPSAnS2FzdXRhIHNlZGEgdiZhdW1sO2xqYSBtdXV0bWFrcyBmYWlsaSBuaW1lICZ1dW1sO2xlc2xhYWRpbWlzZWwuIEomYXVtbDt0YSB0JnV1bWw7aGpha3MsIGV0IGomYXVtbDt0dGEgZmFsaW5pbWkgc2VsbGlzZWtzLCBuYWd1IHNlZSBvbi4nOwokbGFuZ1snZXJyb3JfY2FudGNyZWF0ZWRpcmVjdG9yeSddID0gJ0NvdWxkIG5vdCBjcmVhdGUgZGlyZWN0b3J5JzsKJGxhbmdbJ2Vycm9yX25vbWFpbGVybW9kdWxlJ10gPSAnVGhlIENNU01haWxlciBtb2R1bGUgY291bGQgbm90IGJlIGluc3RhbnRpYXRlZCc7CiRsYW5nWyd1cGxvYWRfbm90aWZpY2F0aW9uJ10gPSAnQSBuZXcgZmlsZSBoYXMgYmVlbiB1cGxvYWRlZCc7CiRsYW5nWyd0aXRsZV9lbWFpbF9vbl91cGxvYWQnXSA9ICdTZW5kIHVwbG9hZCBub3RpZmljYXRpb24gdG8nOwokbGFuZ1snZW1haWxfdGVtcGxhdGUnXSA9ICdFbWFpbCBUZW1wbGF0ZXMnOwokbGFuZ1sndGl0bGVfZHVtbXlfaW5kZXhfaHRtbCddID0gJ0NyZWF0ZSBkdW1teSBpbmRleC5odG1sIGZpbGVzIGluIGVhY2ggZGlyZWN0b3J5Pzxici8+PGVtPkFueSBleGlzdGluZyBpbmRleC5odG1sIGZpbGVzIHdpbGwgcmVtYWluPC9lbT4nOwokbGFuZ1snYWJvdXQnXSA9ICdBYm91dCc7CiRsYW5nWydlcnJvcl9wZXJtaXNzaW9uZGVuaWVkJ10gPSAnQWNjZXNzIERlbmllZC4gUGxlYXNlIGNoZWNrIHlvdXIgcGVybWlzc2lvbnMuJzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90d3JpdGUnXSA9ICdDb3VsZCBub3Qgd3JpdGUnOwokbGFuZ1snYWRkY2F0ZWdvcnknXSA9ICdBZGQgQ2F0ZWdvcnknOwokbGFuZ1snYWxsJ10gPSAnQWxsJzsKJGxhbmdbJ2FyZXlvdXN1cmUnXSA9ICdBcmUgWW91IFN1cmU/JzsKJGxhbmdbJ2F1dGhvciddID0gJ0F1dG9yJzsKJGxhbmdbJ2NhbmNlbCddID0gJ1QmdXVtbDtoaXN0YSc7CiRsYW5nWydjYW5ub3Rtb2RpZnlwYXRoJ10gPSAnKFRoZSBwYXRoIGNhbm5vdCBiZSBtb2RpZmllZCknOwokbGFuZ1snY2F0ZWdvcmllcyddID0gJ0thdGVnb29yaWFkJzsKJGxhbmdbJ2NhdGVnb3J5J10gPSAnS2F0ZWdvb3JpYSc7CiRsYW5nWydtZXNzYWdlX2NhdGVnb3J5YWRkZWQnXSA9ICdLYXRlZ29vcmlhIGVkdWthbHQgbGlzYXR1ZCc7CiRsYW5nWydkYXRlJ10gPSAnS3V1cCZhdW1sO2V2JzsKJGxhbmdbJ2RhdGV1cGxvYWRlZCddID0gJyZVdW1sO2xlc2xhYWRpbWlzZSBrdXVwJmF1bWw7ZXYnOwokbGFuZ1snZGVmYXVsdCddID0gJ1ZhaWtpbWlzaSB2JmF1bWw7JmF1bWw7cnR1c2VkJzsKJGxhbmdbJ2RlbGV0ZSddID0gJ0t1c3R1dGEnOwokbGFuZ1snZGVzY3JpcHRpb24nXSA9ICdLaXJqZWxkdXMnOwokbGFuZ1snZGVzdG5hbWUnXSA9ICdMYWUgJnV1bWw7bGVzIG5pbWVnYSc7CiRsYW5nWydkZXRhaWxfdGVtcGxhdGUnXSA9ICdEZXRhaWwgVGVtcGxhdGVzJzsKJGxhbmdbJ2Rvd25sb2FkZWQnXSA9ICdGaWxlICVzIHdhcyBkb3dubG9hZGVkLic7CiRsYW5nWydkb3dubG9hZHMnXSA9ICdEb3dubG9hZHMnOwokbGFuZ1snZWRpdCddID0gJ011dWRhJzsKJGxhbmdbJ2VkaXRjYXRlZ29yeSddID0gJ011dWRhIGthdGVnb29yaWEnOwokbGFuZ1snZWRpdHVwbG9hZCddID0gJ011dWRhICZ1dW1sO2xlc2xhYWRpbWlzdCc7CiRsYW5nWydlcnJvciddID0gJ1ZpZ2EhJzsKJGxhbmdbJ2Vycm9yX3BhdGhpbnVzZTInXSA9ICdLYXRlZ29vcmlhLCBtaXMga2FzdXRhYiB0ZWVkICglcyksIG9uIGp1YmEgb2xlbWFzJzsKJGxhbmdbJ2Vycm9yX3BhdGhpbnVzZSddID0gJ0thdGVnb29yaWEsIG1pcyBrYXN1dGFiIHNlZGEgdGVlZCwgb24ganViYSBvbGVtYXMnOwokbGFuZ1snZXJyb3JfY2F0ZWdvcnlleGlzdHMyJ10gPSAnVmlnYTogS2F0ZWdvb3JpYSBuaW1lZ2EgJXMganViYSBla3Npc3RlZXJpYic7CiRsYW5nWydlcnJvcl9jYXRlZ29yeWV4aXN0cyddID0gJ1ZpZ2E6IEthdGVnb29yaWEganViYSBla2lzdGVlcmliJzsKJGxhbmdbJ2Vycm9yX2NhdGVnb3J5bm90ZW1wdHknXSA9ICdWaWdhISBFaSBzYWEga3VzdHV0YWRhIGthdGVnb29yaWF0LCBtaXMgZWkgb2xlIHQmdXVtbDtoaSc7CiRsYW5nWydlcnJvcl9jYXRlZ29yeW5vdGZvdW5kJ10gPSAnVmlnYTogS2F0ZWdvb3JpYXQgZWkgbGVpdHVkISc7CiRsYW5nWydlcnJvcl9kYmVycm9yJ10gPSAnVmlnYTogQW5kbWViYWFzaSB2aWdhISc7CiRsYW5nWydlcnJvcl9lbXB0eWNhdGVnb3J5J10gPSAnVmlnYTogVCZ1dW1sO2hpIGthdGVnb29yaWEhJzsKJGxhbmdbJ2Vycm9yX2VtcHR5cGF0aCddID0gJ1ZpZ2E6IFQmdXVtbDtoaSB0ZWUhJzsKJGxhbmdbJ2Vycm9yX2ZpbGVleGlzdHMnXSA9ICdWaWdhISBGYWlsICVzIGp1YmEgZWtzaXN0ZWVyaWIuJzsKJGxhbmdbJ2Vycm9yX2ZpbGVub3Rmb3VuZCddID0gJ1ZpZ2EhIEZhaWxpICVzIGVpIGxlaXR1ZC4nOwokbGFuZ1snZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJ10gPSAnVmlnYTogTW9vZHVsaWxlIGVpIGFudHVkIHBpaXNhdmFsdCBwYXJhbWVldHJlaWQhPGJyLz5QdXVkdXYgcGFyYW1lZXRlciBvbjogJXMnOwokbGFuZ1snZXJyb3JfaW52YWxpZGF1dGhvciddID0gJ1ZpZ2E6IFZhbGUgKHYmb3RpbGRlO2kgdCZ1dW1sO2hpKSBhdXRvci4nOwokbGFuZ1snZXJyb3JfaW52YWxpZGNhdGVnb3J5J10gPSAnVmlnYTogVmFsZSAodiZvdGlsZGU7aSB0JnV1bWw7aGkpIGthdGVnb29yaWEuJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRkZXNjcmlwdGlvbiddID0gJ1ZpZ2E6IFZhbGUgKHYmb3RpbGRlO2kgdCZ1dW1sO2hpKSBraXJqZWxkdXMuJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRmaWxlJ10gPSAnVmlnYTogVmFsZSAodiZvdGlsZGU7aSB0JnV1bWw7aGkpIGZhaWxpbmltaS4nOwokbGFuZ1snZXJyb3JfaW52YWxpZHVwbG9hZGZpbGVuYW1lJ10gPSAnVmlnYTogU2VsbGlzZSBuaW1lZ2EgZmFpbGlkICh0Jm90aWxkZTtlbiZhdW1sO29saXNlbHQgbGFpZW5kKSBlaSBvbGUgbHViYXR1ZCAoJXMpLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXBsb2FkaWQnXSA9ICdWaWdhOiBWYWxlICZ1dW1sO2xlc2xhYWRpbWlzZSBpZCc7CiRsYW5nWydlcnJvcl9ub2ZpbGVzJ10gPSAnVmlnYTogRWkgbGVpdHVkIGZhaWxlISc7CiRsYW5nWydmaWxlcyddID0gJ0ZhaWxpZCc7CiRsYW5nWydmaXhtZSddID0gJ0ZpeCBTcGFjZXMnOwokbGFuZ1snZnJpZW5kbHluYW1lJ10gPSAnRnJvbnQgRW5kIEZpbGUgTWFuYWdlbWVudCAoVXBsb2FkcyknOwokbGFuZ1snaGVscCddID0gJzxoMz5XaGF0IERvZXMgVGhpcyBEbz88L2gzPg0KPHA+SXQgaXMgYSBtb2R1bGUgZm9yIGFsbG93aW5nIHBlb3BsZSB0byB1cGxvYWQgYW5kIGRvd25sb2FkIGZpbGVzIHRvIGFuZCBmcm9tIHlvdXIgc2l0ZS4gIEl0IGtlZXBzIHRyYWNrIG9mIHdobyB1cGxvYWRlZCBhIGZpbGUsIGFuZCB3aG8gaGFzIGRvd25sb2FkZWQgaXQuICBBcyB3ZWxsLCB5b3UgY2FuIHNvcnQgZmlsZXMgaW50byBjYXRlZ29yaWVzLCBhbmQgbWFuYWdlIHRoZSBmaWxlcyB0aGF0IHdlcmUgdXBsb2FkZWQgbGlrZSBldmVyeSBhZG1pbmlzdHJhdG9yIHdvdWxkIGRvPC9wPiANCjxoMz5Ib3cgRG8gSSBVc2UgSXQ8L2gzPg0KPHA+PHN0cm9uZz5XYXJuaW5nPC9zdHJvbmc+IC0gVGhlIHByb3BlciBiZWhhdmlvdXIgb2YgdGhpcyBtb2R1bGUgZGVwZW5kcyBvbiBudW1lcm91cyBwaHAgY29uZmlndXJhdGlvbiB2YXJpYWJsZXMuICBUaGVzZSBpbmNsdWRlIDxlbT4oYnV0IGFyZSBub3QgbGltaXRlZCB0byk8L2VtPiwgcGhwJiMwMzk7cyBtZW1vcnlfbGltaXQsIHNhZmVfbW9kZSwgZmlsZV91cGxvYWRzLCB1cGxvYWRzX21heF9maWxlc2l6ZSwgYW5kIG1heF9leGVjdXRpb25fdGltZS4gIFRoZXNlIHZhcmlhYmxlcyBtYXkgbmVlZCBhZGp1c3RtZW50IGZvciB0aGlzIG1vZHVsZSB0byB3b3JrIHByb3Blcmx5IG9uIHlvdXIgc2l0ZS4gIEl0IGlzIGFkdmlzZWQgdGhhdCB5b3Ugd29yayB3aXRoIHlvdXIgc3lzdGVtIGFkbWluaXN0cmF0b3Igb3IgaG9zdCBwcm92aWRlciB0byB0dW5lIHRoZXNlIHNldHRpbmdzIGZvciB5b3VyIHJlcXVpcmVtZW50cy48L3A+DQo8cD5UbyB1c2UgdGhpcyBtb2R1bGUsIHRvIGFsbG93IHVzZXJzIHRvIHVwbG9hZCBmaWxlcyB0byB5b3VyIHNpdGUsIHlvdSBzaG91bGQgaW5zdGFsbCB0aGUgbW9kdWxlLCBhbmQgdGhlbiBjcmVhdGUgb25lIG9yIG1vcmUgY2F0ZWdvcmllcyAoYS5rLmEpIGRpcmVjdG9yaWVzIGZvciB0aGUgdXBsb2FkZWQgZmlsZXMgdG8gZ28gaW50by4gVGhlbiBhZGQgYSB0YWcgaW50byBhIHBhZ2Ugb3IgdGVtcGxhdGUgc29tZXdoZXJlIGxpa2Uge2Ntc19tb2R1bGUgbW9kdWxlPSZxdW90O1VwbG9hZHMmcXVvdDsgY2F0ZWdvcnk9JnF1b3Q7c29tZWNhdGVnb3J5JnF1b3Q7IG1vZGU9JnF1b3Q7c29tZW1vZGUmcXVvdDt9LiAgV2hlcmUgbW9kZSBtYXRjaGVzIG9uZSBvZiB0aGUgbW9kZXMgbGlzdGVkIGJlbG93LiAgVGhlIG91dHB1dCB3aWxsIGRpZmZlciBkZXBlbmRpbmcgdXBvbiB3aGljaCBtb2RlIHlvdSBzZWxlY3QuPC9wPg0KPHA+VGhpcyBtb2R1bGUgY2FuIHVzZSB0aGUgRnJvbnRlbmRVc2VycyBtb2R1bGUgKG9wdGlvbmFsKSB0byBnZXQgaW5mb3JtYXRpb24gYWJvdXQgYW55IGN1cnJlbnRseSBsb2dnZWQgaW4gdXNlcnMgdG8gcGFydGx5IGZpbGwgaW4gdGhlIGZvcm0gd2hlbiB1cGxvYWRpbmcgZmlsZXM7PC9wPg0KPGgzPlBlcm1pc3Npb25zPC9oMz4NCjx1bD4NCjxsaT48ZW0+TWFuYWdlIFVwbG9hZHM8L2VtPiBwZXJtaXNzaW9uIGlzIG5lZWRlZCB0byBtYW5hZ2UgY2F0ZWdvcmllcywgYW5kIHRoZSBmaWxlcyB3aXRoaW4gdGhlbS48L2xpPg0KPGxpPjxlbT5Nb2RpZnkgVGVtcGxhdGVzPC9lbT4gcGVybWlzc2lvbiBpcyBuZWVkZWQgZWRpdCBhbnkgb2YgdGhlIHRlbXBsYXRlcy48L2xpPg0KPGxpPjxlbT5Nb2RpZnkgU2l0ZSBQcmVmZXJlbmNlczwvZW0+IHBlcm1pc3Npb24gaXMgbmVlZGVkIGFueSBvZiB0aGUgZmlsZSBzZXR0aW5ncy48L2xpPg0KPC91bD4NCjxoMz5DYXRlZ29yeSBCcm93c2luZzwvaDM+DQo8cD5QbGFjaW5nIGEgdGFnIGxpa2Uge2Ntc19tb2R1bGUgbW9kdWxlPSZxdW90O1VwbG9hZHMmcXVvdDsgYWN0aW9uPSZxdW90O2NhdGVnb3J5c3VtbWFyeSZxdW90OyB0ZW1wbGF0ZT0mcXVvdDtzdW1tYXJ5dGVtcGxhdGUmcXVvdDsgc29ydG9yZGVyPSZxdW90O25hbWVfYXNjJnF1b3Q7IGxpc3Rpbmd0ZW1wbGF0ZT0mcXVvdDtsaXN0dGVtcGxhdGUmcXVvdDsgbGlzdGluZ3NvcnRvcmRlcj0mcXVvdDtsaXN0c29ydG9yZGVyJnF1b3Q7fQ0KYWxsb3dzIHlvdSB0byBkaXNwbGF5IGFuIGludGVyYWN0aXZlIGNhdGVnb3J5IGJyb3dzZXIuIHNvcnRvcmRlciBjYW4gYmU6IG5hbWVfYXNjLCBuYW1lX2Rlc2MsIHN1bW1fYXNjLCBzdW1tX2Rlc2MsIG9yIHJhbmRvbS4NCmxpc3Rpbmd0ZW1wbGF0ZSBhbmQgbGlzdGluZ3NvcnRvcmRlciBhcmUgaWRlbnRpY2FsIHRvIHRoZSB0ZW1wbGF0ZSBhbmQgc29ydG9yZGVyIHBhcmFtZXRlcnMgZm9yDQp0aGUgJnF1b3Q7c3VtbWFyeSZxdW90OyBtb2RlLjwvcD4NCjxoMz5BdXRvbWF0aWMgU2Nhbm5pbmc8L2gzPg0KPHA+VGhpcyBtb2R1bGUgd2lsbCBhdXRvbWF0aWNhbGx5IHNjYW4gZm9yIG5ldyBmaWxlcyBpbiBhIGRpcmVjdG9yeSB3aGVuIGEgc3VtbWFyeSBtb2RlIHRhZyBmb3IgYSBzcGVjaWZpYyBjYXRlZ29yeSBpcyB1c2VkIG9uIGEgQ01TTVMgcGFnZS4gIGkuZTogPGNvZGU+e1VwbG9hZHMgY2F0ZWdvcnk9Y2F0ZWdvcnlfbmFtZX08L2NvZGU+IHdpbGwgcGVyZm9ybSBhIHNjYW4uICBidXQgPGNvZGU+e1VwbG9hZHMgY2F0ZWdvcnk9YWxsfTwvY29kZT4gd2lsbCBub3QuPC9wPg0KPGgzPlRodW1ibmFpbCBHZW5lcmF0aW9uPC9oMz4NCjxwPlRoaXMgbW9kdWxlIGlzIGNhcGFibGUgb2YgZ2VuZXJhdGluZyB0aHVtYm5haWxzIGZvciBjZXJ0YWluIHR5cGVzIG9mIGZpbGVzLiAgVGhlcmUgYXJlIHByZWZlcmVuY2VzIGluIHRoZSBwcmVmZXJlbmNlcyB0YWIgb2YgdGhlIFVwbG9hZHMgbW9kdWxlIGFkbWluaXN0cmF0aW9uIHBhbmVsIHRvIHNwZWNpZnkgdGhlIHR5cGVzIG9mIGZpbGVzIHRoYXQgYWxsb3cgYXV0b21hdGljIHRodW1ibmFpbCBnZW5lcmF0aW9uLCBhbmQgdGhlIHNpemUgb2YgdGhlIGdlbmVyYXRlZCB0aHVtYm5haWwgKHByZXNlcnZpbmcgYXNwZWN0IHJhdGlvKS4gICBUaHVtYm5haWxzIGFyZSBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlZCB1cG9uIHVwbG9hZCwgYW5kIGNhbiBiZSBnZW5lcmF0ZWQgbWFudWFsbHkgYnkgc2VsZWN0aW5nIHRoZSAmcXVvdDtHZW5lcmF0ZSBUaHVtYm5haWxzJnF1b3Q7IG9wdGlvbiBpbiB0aGUgZWRpdCBjYXRlZ29yeSBmb3Jtcy4uLiBidXQgYXJlIG5vdCBnZW5lcmF0ZWQgd2hlbiBuZXcgZmlsZXMgYXJlIGRldGVjdGVkIGJ5IGF1dG9tYXRpYyBzY2FubmluZy48L3A+DQo8aDM+WW91IFNlbmQgSXQ8L2gzPg0KPHA+SXQgaXMgcG9zc2libGUgdG8gZW5hYmxlICZxdW90O3lvdXNlbmRpdCZxdW90OyBsaWtlIGZ1bmN0aW9uYWxpdHkgdG8gYWxsb3cgYXV0b21hdGljYWxseSBlbWFpbGluZyBzZWxlY3RlZCBwZW9wbGUgd2l0aCBhIGxpbmsgdG8gYSBuZXdseSB1cGxvYWRlZCBmaWxlLiAgVGhpcyBpcyBhY2NvbXBsaXNoZWQgYnkgdXNpbmcgYSB0YWcgbGlrZTogPGNvZGU+e1VwbG9hZHMgYWN0aW9uPXlvdXNlbmRpdCBjYXRlZ29yeT1jYXRlZ29yeW5hbWV9PC9jb2RlPi4gIFRoaXMgd2lsbCBkaXNwbGF5IGEgZm9ybSBhbGxvd2luZyB0aGlzIGZ1bmN0aW9uYWxpdHkuPC9wPg0KPGgzPlRpbWUgTGltaXRlZCBBY2Nlc3M8L2gzPg0KPHA+VGhpcyBtb2R1bGUgc3VwcG9ydHMgdGhlIG5vdGlvbiBvZiB1bmlxdWUga2V5cyB0byBhbGxvdyB0aW1lIGxpbWl0ZWQgYWNjZXNzIHRvIGNlcnRhaW4gZmlsZXMuICBUaGUgZnVuY3Rpb25hbGl0eSBhbGxvd3Mgc3BlY2lmeWluZyBhIHRpbWUgbGltaXQgKGluIGhvdXJzKSBmb3Igd2hpY2ggdGhlIGtleSBpcyB2YWxpZCwgYW5kIGEgbWF4aW11bSBudW1iZXIgb2YgZG93bmxvYWRzIG9yIGRvd25sb2FkIGF0ZW1wdHMuICBBbiBlbWFpbCBpcyBzZW50IHRvIHRoZSBkZXNpcmVkIHVzZXJzIHdpdGggdGhlIHVuaXF1ZSBVUkwuICBBZnRlciB0aGUgdGltZSBsaW1pdCwgb3IgdGhlIG51bWJlciBvZiBkb3dubG9hZHMgaGFzIGJlZW4gcmVhY2hlZCwgdGhlIFVSTCBpcyBubyBsb25nZXIgdmFsaWQuICBUaGVzZSB1bmlxdWUgdGltZSBsaW1pdGVkIGtleXMgYXJlIGF1dG9tYXRpY2FsbHkgcmVtb3ZlZCBmcm9tIHRoZSBkYXRhYmFzZSBhZnRlciBleHBpcnkuPC9wPg0KPGgzPlJlc3RyaWNpbmcgQWNjZXNzIHdpdGggRkVVPC9oMz4NCjxwPlRoaXMgbW9kdWxlIGlzIGNhcGFibGUgb2YgaW50ZWdyYXRpbmcgd2l0aCB0aGUgRnJvbnRFbmRVc2VycyBtb2R1bGUgdG8gcmVzdHJpY3QgdGhlIHZpc2liaWxpdHkgb2YgY2F0ZWdvcmllcyAoZGlyZWN0b3JpZXMpIHRvIGNlcnRhaW4gYWxsb3dlZCBGRVUgZ3JvdXBzLiAgWW91ciB1c2VycyB3b3VsZCBoYXZlIHRvIGJlIGxvZ2dlZCBpbiB0byB5b3VyIHdlYnNpdGUgKHVzaW5nIEZFVSkgYW5kIGFsc28gYSBtZW1iZXIgb2Ygb25lIG9mIHRoZSBhbGxvd2VkIGdyb3VwcyB0byBvYnRhaW4gYWNjZXNzLiAgVGhpcyBpcyBhY2NvbXBsaXNoZWQgaW4gdGhlIGNhdGVnb3J5IGVkaXQgZm9ybS4gIFlvdSBjYW4gc2VsZWN0IGEgbGlzdCBvZiBGRVUgZ3JvdXBzIHdoaWNoIGFyZSBhbGxvd2VkIHRvIHZpZXcgZmlsZXMgaW4gdGhpcyBjYXRlZ29yeS48L3A+DQo8cD5UaGlzIGZ1bmN0aW9uYWxpdHkgYWxzbyBhcHBsaWVzIHRvIHRoZSAmYW1wO3F1b3RUaW1lIExpbWl0ZWQgQWNjZXNzJnF1b3Q7IGZ1bmN0aW9uYWxpdHkuICBBbGxvd2luZyB5b3UgdG8gc3BlY2lmeSB0aGF0IGNlcnRhaW4gcGVvcGxlLCB3aG8gYWxzbyBoYXZlIHRvIGJlIGxvZ2dlZCBpbiB0byB5b3VyIHdlYnNpdGUgY2FuIGhhdmUgYWNjZXNzIHRvIGNlcnRhaW4gZmlsZXMgZm9yIGEgbGltaXRlZCBhbW91bnQgb2YgdGltZS48L3A+DQo8aDM+RW1haWxpbmc8L2gzPg0KPHA+VGhpcyBtb2R1bGUgaXMgY2FwYWJsZSBvZiBzZW5kaW5nIGFuIGVtYWlsIHdoZW5ldmVyIGEgZmlsZSBpcyB1cGxvYWRlZCwgc2VlIHRoZSBwcmVmZXJlbmNlcyB0YWIuICBIb3dldmVyLCB0byBkbyB0aGlzIHRoZSA8Yj5DTVNNYWlsZXI8L2I+IHBhY2thZ2UgbXVzdCBiZSBpbnN0YWxsZWQgYW5kIGNvbmZpZ3VyZWQuICBUaGlzIGlzIGFuIDxlbT5vcHRpb25hbDwvZW0+IHN0ZXAsIGFuZCBpZiB0aGUgQ01TTWFpbGVyIG1vZHVsZSBpcyBub3QgaW5zdGFsbGVkLCBub3RoaW5nIHdpbGwgYmUgZGlzcGxheWVkIHRvIHRoZSB1c2VyLCBvbmx5IGEgbG9nIG1lc3NhZ2Ugd2lsbCBiZSBwbGFjZWQgaW50byB0aGUgYWRtaW4gbG9nPC9wPg0KPGgzPkNvbnRlbnQgQmxvY2tzIDxlbT4oQ01TTVMgMS43KyBPbmx5KTwvZW0+PC9oMz4NCjxwPkZvciBDTVNNUyAxLjcgdGhpcyBtb2R1bGUgaXMgY2FwYWJsZSBvZiBpbnRlcmZhY2luZyB3aXRoIHRoZSBjb250ZW50IGVkaXRvciBhbmQgZXhwb3J0aW5nIGEgY29udGVudCBibG9jayB0aGF0IGFsbG93cyBzZWxlY3RpbmcgYW4gdXBsb2FkcyBjYXRlZ29yeSB3aXRoaW4gdGhlIGVkaXQgY29udGVudCBwYWdlLCBmb3IgbGF0ZXIgdXNlIHdpdGhpbiB0aGUgdGVtcGxhdGUuPC9wPg0KPHA+aS5lOiBwbGFjaW5nIHRoZSBmb2xsb3dpbmcgdGFnIHdpdGhpbiBhIHBhZ2UgdGVtcGxhdGUgPGNvZGU+e2NvbnRlbnRfbW9kdWxlIG1vZHVsZT0mcXVvdDtVcGxvYWRzJnF1b3Q7IGJsb2NrPSZxdW90O3VwbG9hZHNfY2F0ZWdvcnkmcXVvdDsgdHlwZT0mcXVvdDtjYXRlZ29yeXNlbGVjdCZxdW90O308L2NvZGU+LCB3aWxsIGFkZCBhIGRyb3Bkb3duIGJveCBpbiB0aGUgZWRpdCBjb250ZW50IHZpZXcgb2YgYW55IHBhZ2UgdXRpbGl6aW5nIHRoYXQgcGFnZSB0ZW1wbGF0ZS48L3A+DQo8cD5UaGlzIGNvbnRlbnQgYmxvY2sgYWxzbyBhY2NlcHRzIHNvbWUgb3B0aW9uYWwgcGFyYW1ldGVyczo8L3A+DQo8dWw+DQogIDxsaT48dT5zZWxlY3RvbmU8L3U+DQogICAgPHA+VGhpcyBwYXJhbWV0ZXIgaW5zZXJ0cyBhICZxdW90O1NlbGVjdCBPbmUmcXVvdDsgaXRlbSBpbnRvIHRoZSBsaXN0IG9mIGNhdGVnb3JpZXMsIHJlcXVpcmluZyB0aGUgdXNlciB0byBzZWxlY3QgYSB2YWxpZCBjYXRlZ29yeSB3aGVuIHRoZSBjb250ZW50IHBhZ2UgaXMgc2F2ZWQuPC9wPg0KICA8L2xpPg0KICA8bGk+PHU+YWxsb3dhbGw8L3U+DQogICAgPHA+VGhpcyBwYXJhbWV0ZXIgYWxsb3dzIHRoZSBjb250ZW50IGVkaXRvciB0byBzZWxlY3QgJnF1b3Q7QWxsJnF1b3Q7IGFzIGEgY2F0ZWdvcnkgZm9yIHRoZSB1cGxvYWRzIGRpc3BsYXkuPC9wPg0KICA8L2xpPg0KPC91bD4NCjxoND5Ib3cgd291bGQgSSB1c2UgaXQ/PC9oND4NCjxwPkhlcmUgaXMgc29tZSBleGFtcGxlIGNvZGU6PC9wPg0KPHByZT4NCntjb250ZW50X21vZHVsZSBtb2R1bGU9JnF1b3Q7VXBsb2FkcyZxdW90OyBibG9jaz0mcXVvdDtjYXRlZ29yeXNlbGVjdCZxdW90OyBsYWJlbD0mcXVvdDtTZWxlY3QgYW4gdXBsb2FkcyBjYXRlZ29yeSZxdW90OyBzZWxlY3RvbmU9MSBhc3NpZ249JnF1b3Q7dG1wJnF1b3Q7fQ0Ke1VwbG9hZHMgY2F0ZWdvcnk9JHRtcH0NCjwvcHJlPg0KDQo8aDM+U3lzdGVtIFNldHRpbmdzPC9oMz4NCjxwPjxiPk5vdGU6PC9iPiBUaGlzIG1vZHVsZSBkb2VzIG5vdCBieXBhc3Mgb3IgZ2V0IHBhc3QgYW55IGZpbGUgc2l6ZSBsaW1pdGF0aW9ucyBpbiBwaHAuICBJdCB3b3JrcyBpbiBjb25qdW5jdGlvbiB3aXRoIHRoZW0uICBUaGVyZWZvcmUgeW91IG1heSBuZWVkIHRvIG1vZGlmeSB5b3VyIHBocC5pbmkgZmlsZSwgeW91ciBDTVNNUyBjb25maWcucGhwIGZpbGUgYW5kL29yIHlvdXIgaHR0cGQuY29uZiBmaWxlKHMpIHRvIGFsbG93IHlvdSB0byB1cGxvYWQgZmlsZXMgYXMgbGFyZ2UgYXMgd2hhdCB5b3UgaGF2ZSBzZXQgaW4gdGhlIHVwbG9hZHMgbW9kdWxlIHByZWZlcmVuY2VzLjwvcD4NCjxoMz5BcGFjaGUgTm90ZXM8L2gzPg0KPHA+SW4gb3JkZXIgdG8gYWxsb3cgbGFyZ2UgZmlsZSB1cGxvYWRzLCB5b3UgbWF5IG5lZWQgdG8gbW9kaWZ5IHRoZSB1cGxvYWRfbWF4X2ZpbGVzaXplIHBhcmFtZXRlciBpbiB5b3VyIHBocC5pbmkgIEluIGFkZGl0aW9uLCB0aGUgTGltaXRSZXF1ZXN0Qm9keSBwYXJhbWV0ZXIgaW4geW91ciBhcGFjaGUgY29uZmlndXJhdGlvbiwgbWF5IG5lZWQgdG8gYmUgYWRqdXN0ZWQgdG8gbWF0Y2ggdGhlIHVwbG9hZF9tYXhfZmlsZXNpemUgcGFyYW1ldGVyPC9wPg0KPHA+Tm90ZTogIHRoZSB1cGxvYWRfbWF4X2ZpbGVzaXplIHBhcmFtZXRlciBjYW4gYmUgc3BlY2lmaWVkIGluIGJ5dGVzLCBraWxvYnl0ZXMsIG9yIG1lZ2FieXRlcywgaG93ZXZlciB0aGUgTGltaXRSZXF1ZXRCb2R5IHBhcmFtZXRlciBpcyBvbmx5IHNwZWNpZmllZCBpbiBieXRlczwvcD4NCic7CiRsYW5nWydpZCddID0gJ0lkJzsKJGxhbmdbJ2luc3RhbGxlZCddID0gJ01vZHVsZSB2ZXJzaW9uICVzIGluc3RhbGxlZC4nOwokbGFuZ1snaXBfYWRkcmVzcyddID0gJ0lQIEFkZHJlc3MnOwokbGFuZ1snbW9kZGVzY3JpcHRpb24nXSA9ICdBIG1vZHVsZSB0aGF0IGFsbG93cyB1c2VycyB0byB1cGxvYWQgZmlsZXMsIGFuZCBhbGxvd3MgeW91IHRvIG1hbmFnZSB0aGVtLic7CiRsYW5nWyduYW1lJ10gPSAnTmFtZSc7CiRsYW5nWydyZW5hbWVtZXNzYWdlJ10gPSAnQ2hhbmdlIHRoZSBuYW1lIGhlcmUgdG8gZXhlY3V0ZSBhIHJlbmFtZSc7CiRsYW5nWydwYXRoJ10gPSAnUGF0aCc7CiRsYW5nWydwYXRobWVzc2FnZSddID0gJ0NoYW5nZSB0aGUgY2F0ZWdvcnkgaGVyZSB0byBtb3ZlIHRoZSBmaWxlIHRvIGFub3RoZXIgZGlyZWN0b3J5JzsKJGxhbmdbJ3BhdGhpbnVwbG9hZHMnXSA9ICcoUmVsYXRpdmUgdG8gdGhlIHVwbG9hZHMgZGlyZWN0b3J5KSc7CiRsYW5nWydwb3N0aW5zdGFsbCddID0gJzxwPlRoZSB1cGxvYWRzIG1vZHVsZSBoYXMgYmVlbiBzdWNjZXNzZnVsbHkgaW5zdGFsbGVkLiBCZSBzdXJlIHRvIHNldCAmcXVvdDtNYW5hZ2UgVXBsb2FkcyZxdW90OyBwZXJtaXNzaW9ucyB0byB1c2UgdGhpcyBtb2R1bGUhPC9wPg0KPHA+PHN0cm9uZz5XYXJuaW5nPC9zdHJvbmc+IC0gVGhlIHByb3BlciBiZWhhdmlvdXIgb2YgdGhpcyBtb2R1bGUgZGVwZW5kcyBvbiBudW1lcm91cyBwaHAgY29uZmlndXJhdGlvbiB2YXJpYWJsZXMuICBUaGVzZSBpbmNsdWRlIDxlbT4oYnV0IGFyZSBub3QgbGltaXRlZCB0byk8L2VtPiwgcGhwJiMwMzk7cyBtZW1vcnlfbGltaXQsIHNhZmVfbW9kZSwgZmlsZV91cGxvYWRzLCB1cGxvYWRzX21heF9maWxlc2l6ZSwgYW5kIG1heF9leGVjdXRpb25fdGltZS4gIFRoZXNlIHZhcmlhYmxlcyBtYXkgbmVlZCBhZGp1c3RtZW50IGZvciB0aGlzIG1vZHVsZSB0byB3b3JrIHByb3Blcmx5IG9uIHlvdXIgc2l0ZS4gIEl0IGlzIGFkdmlzZWQgdGhhdCB5b3Ugd29yayB3aXRoIHlvdXIgc3lzdGVtIGFkbWluaXN0cmF0b3Igb3IgaG9zdCBwcm92aWRlciB0byB0dW5lIHRoZXNlIHNldHRpbmdzIGZvciB5b3VyIHJlcXVpcmVtZW50cy48L3A+JzsKJGxhbmdbJ3Bvc3R1bmluc3RhbGwnXSA9ICdUaGUgVXBsb2FkcyBtb2R1bGUgaGFzIGJlZW4gc3VjY2Vzc2Z1bGx5IHJlbW92ZWQuICBObyBmaWxlcyBoYXZlIGJlZW4gcmVtb3ZlZCBmcm9tIHlvdXIgdXBsb2FkcyBkaXJlY3RvcnksIGFuZCBmaWxlIGludGVncml0eSBpcyBpbnRhY3QnOwokbGFuZ1sncHJlZmVyZW5jZXMnXSA9ICdQcmVmZXJlbmNlcyc7CiRsYW5nWydwcmVmc3VwZGF0ZWQnXSA9ICdNb2R1bGUgcHJlZmVyZW5jZXMgdXBkYXRlZC4nOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5ZGVzYyddID0gJ0tpcmplbGR1cyc7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnlsaXN0YWJsZSddID0gJ0ZpbGVzIGluIHRoaXMgZGlyZWN0b3J5IGNhbiBiZSBsaXN0ZWQnOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5bmFtZSddID0gJ0NhdGVnb3J5IE5hbWUnOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5cGF0aCddID0gJ1NlcnZlciBQYXRoJzsKJGxhbmdbJ3Byb21wdF9kZWxldGVkaXJlY3RvcnknXSA9ICdEZWxldGUgY2F0ZWdvcnkgZGlyZWN0b3J5Pyc7CiRsYW5nWydwcm9tcHRfbWF4X3VwbG9hZHNpemUnXSA9ICdNYXhpbXVtIGZpbGUgc2l6ZSBhbGxvd2VkIChLYiknOwokbGFuZ1sncHJvbXB0X3ZhbGlkX3VwbG9hZGV4dGVuc2lvbnMnXSA9ICdWYWxpZCB1cGxvYWQgZXh0ZW5zaW9ucyc7CiRsYW5nWydzY2FuJ10gPSAnU2Nhbic7CiRsYW5nWydzZWxlY3RjYXRlZ29yeSddID0gJ1NlbGVjdCBDYXRlZ29yeSc7CiRsYW5nWydzaXplJ10gPSAnU2l6ZSc7CiRsYW5nWydzaXpla2InXSA9ICdTaXplIChLYiknOwokbGFuZ1snc3VibWl0J10gPSAnU2FhZGEnOwokbGFuZ1snc3VtbWFyeV90ZW1wbGF0ZSddID0gJ1N1bW1hcnkgVGVtcGxhdGVzJzsKJGxhbmdbJ3N1bW1hcnknXSA9ICdLb2trdXYmb3RpbGRlO3RlJzsKJGxhbmdbJ3RpdGxlX2FkbWluX3BhbmVsJ10gPSAnVXBsb2FkcyBNb2R1bGUnOwokbGFuZ1sndGl0bGVfbW9kX2FkbWluJ10gPSAnTW9kdWxlIEFkbWluIFBhbmVsJzsKJGxhbmdbJ3RpdGxlX21vZF9wcmVmcyddID0gJ01vZHVsZSBQcmVmZXJlbmNlcyc7CiRsYW5nWyd0aXRsZV9zdWJuZXRfZXhjbHVzaW9ucyddID0gJ0V4Y2x1ZGUgc3VibmV0cyBmcm9tIHN0YXRpc3RpY3MnOwokbGFuZ1sndGl0bGVfdmFsaWRfdXBsb2FkZXh0ZW5zaW9ucyddID0gJ1ZhbGlkIEV4dGVuc2lvbnMnOwokbGFuZ1sndW5pbnN0YWxsZWQnXSA9ICdNb2R1bGUgVW5pbnN0YWxsZWQuJzsKJGxhbmdbJ3VwZ3JhZGVkJ10gPSAnTW9kdWxlIHVwZ3JhZGVkIHRvIHZlcnNpb24gJXMuJzsKJGxhbmdbJ3VwbG9hZCddID0gJ0xhZSAmdXVtbDtsZXMnOwokbGFuZ1sndXBsb2FkZWQnXSA9ICdGaWxlICVzIHdhcyB1cGxvYWRlZCBieSAlcy4nOwokbGFuZ1sncmVwbGFjZWQnXSA9ICdGaWxlICVzIHdhcyByZXBsYWNlZCBieSAlcy4nOwokbGFuZ1snZGVsZXRlZCddID0gJ0ZpbGUgJXMgd2FzIGRlbGV0ZWQuJzsKJGxhbmdbJ3VwbG9hZGZvcm1fdGVtcGxhdGUnXSA9ICdVcGxvYWQgVGVtcGxhdGVzJzsKJGxhbmdbJ3VzZXJuYW1lJ10gPSAnVXNlcm5hbWUnOwokbGFuZ1snd2FybmluZ19kZWxldGVjYXRlZ29yeSddID0gJ1dBUk5JTkc6IFVzZSBjYXV0aW9uIHdoZW4gZGVsZXRpbmcgY2F0ZWdvcmllcy4gIEZpbGVzIG1heSBiZSBsb3N0JzsKJGxhbmdbJ3V0bWEnXSA9ICcxNTY4NjEzNTMuMzIxNTU0NTI2NjczMjAxOTAwMC4xMjQxMDkxNzg3LjEyNTMxODMxNjcuMTI1MzIwNjYwNS4xMTgnOwokbGFuZ1sndXRteiddID0gJzE1Njg2MTM1My4xMjUzMTEyOTg2LjExNS4yNS51dG1jY249KHJlZmVycmFsKXx1dG1jc3I9Zm9ydW0uY21zbWFkZXNpbXBsZS5vcmd8dXRtY2N0PS9pbmRleC5waHAvdG9waWMsMTUzMTguMC5odG1sfHV0bWNtZD1yZWZlcnJhbCc7CiRsYW5nWydxY2EnXSA9ICcxMjQwNjgzNjE1LTU4NDA5OTczLTc5OTE1MzAzJzsKJGxhbmdbJ3V0bWMnXSA9ICcxNTY4NjEzNTMnOwokbGFuZ1sndXRtYiddID0gJzE1Njg2MTM1My4xLjEwLjEyNTMyMDY2MDUnOwo/Pg==]]></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[PD9waHAKJGxhbmdbJ3NlbGVjdG9uZSddID0gJ1NlbGVjdCBPbmUnOwokbGFuZ1snYXV0b3dhdGVybWFyayddID0gJ0F1dG9tYXRpY2FsbCBwbGFjZSB3YXRlcm1hcmtzIG9uIGltYWdlcyc7CiRsYW5nWydpbWFnZV9zZXR0aW5ncyddID0gJ1ImZWFjdXRlO2dsYWdlcyBkZXMgaW1hZ2VzJzsKJGxhbmdbJ3Byb21wdF9nZXRmaWxlX3Jlc3VsdHBhZ2UnXSA9ICdQYWdlIHV0aWxpcyZlYWN1dGU7ZSBwb3VyIGxlcyBlcnJldXJzIG91IGxlcyBtZXNzYWdlcyBlbiBsaWVuIGF2ZWMgbGUgdCZlYWN1dGU7bCZlYWN1dGU7Y2hhcmdlbWVudCBkZSBmaWNoaWVycyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkX2tleSddID0gJ1RoZSB1cGxvYWQga2V5IHNwZWNpZmllZCBpcyBpbnZhbGlkIChtYXliZSBpdCBoYXMgcmVhY2hlZCBpdHMgbWF4aW11bSBkb3dubG9hZCBjYXBhY2l0eSBvciBoYXMgZXhwaXJlZCknOwokbGFuZ1snZGZsdF90aW1lbGltaXRlZF9zdWJqZWN0J10gPSAneyRzaXRlbmFtZX0gLSBZb3UgaGF2ZSBiZWVuIGdyYW50ZWQgYWNjZXNzIHRvIHskZW50cnktPnVwbG9hZF9uYW1lfHN0cmlwX3RhZ3N9IGZvciBhIGxpbWl0ZWQgdGltZSc7CiRsYW5nWydwcm9tcHRfdGltZWxpbWl0ZWRfc3ViamVjdCddID0gJ1N1amV0IHBvdXIgbCYjMDM5O2VtYWlsIGNyJmVhY3V0ZTsmZWFjdXRlOyBxdWFuZCBvbiBlbnZvaSB1bmUgVVJMIGxpbWl0JmVhY3V0ZTtlIGRhbnMgbGUgdGVtcHMnOwokbGFuZ1sncHJvbXB0X3RpbWVsaW1pdGVkX2F1dG9kZWxldGUnXSA9ICdBdXRvIGRlbGV0ZSBleHBpcmVkIGVudHJpZXMgYWZ0ZXIgTiBob3VycyA8ZW0+KHNwZWNpZnkgMCB0byBkaXNhYmxlIGF1dG9kZWxldGUpPC9lbT46JzsKJGxhbmdbJ3Byb21wdF90aW1lbGltaXRlZF9zZW5kaXQnXSA9ICdTZW5kIHRoaXMgdXJsIHRvIHRoZSBkZXNpZ25hdGVkIGVtYWlsIGFkZHJlc3M/JzsKJGxhbmdbJ3VybF9rZXknXSA9ICdDbCZlYWN1dGU7IFVSTCc7CiRsYW5nWydjcmVhdGVkJ10gPSAnQ3ImZWFjdXRlOyZlYWN1dGU7JzsKJGxhbmdbJ2V4cGlyZXMnXSA9ICdFeHBpcmUnOwokbGFuZ1snYWRkZWRpdF90aW1lbGltaXRlZF9rZXknXSA9ICdBam91dGVyL21vZGlmaWVyIHVuZSBjbCZlYWN1dGU7IGxpbWl0JmVhY3V0ZTtlIGRhbnMgbGUgdGVtcHMnOwokbGFuZ1sndGltZV9saW1pdGVkX2tleV9hZGRlZCddID0gJ0NsJmVhY3V0ZTsgbGltaXQmZWFjdXRlO2UgZGFucyBsZSB0ZW1wcyBham91dCZlYWN1dGU7ZSc7CiRsYW5nWydudW1faG91cnMnXSA9ICdOb21icmUgZCYjMDM5O2hldXJlcyc7CiRsYW5nWydudW1fZG93bmxvYWRzJ10gPSAnTm9tYnJlIGRlIHQmZWFjdXRlO2wmZWFjdXRlO2NoYXJnZW1lbnRzJzsKJGxhbmdbJ2VtYWlsX2FkZHJlc3MnXSA9ICdBZHJlc3NlIGVtYWlsJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdfaW52YWxpZCddID0gJ1VuZSB2YWxldXIgbiZlYWN1dGU7Y2Vzc2FpcmUgZXN0IG1hbnF1YW50ZSBvdSBlcnJvbiZlYWN1dGU7ZSA6ICVzJzsKJGxhbmdbJ2FkZF90aW1lbGltaXRlZF9rZXknXSA9ICdBam91dGVyIHVuZSBjbCZlYWN1dGU7IGxpbWl0JmVhY3V0ZTtlIGRhbnMgbGUgdGVtcHMnOwokbGFuZ1snZmlsZV9pbmZvMiddID0gJ0ZpY2hpZXIgJXMgKGlkPSVkKSc7CiRsYW5nWydpbmZvX3RpbWVsaW1pdGVkX2Rvd25sb2FkcyddID0gJ1NwZWNpZnkgdGhlIGRlZmF1bHQgbnVtYmVyIG9mIHRpbWVzIHRoYXQgYSBmaWxlIGlkZW50aWZpZWQgYnkgYSBwYXJ0aWN1bGFyIGtleSBjYW4gYmUgZG93bmxvYWRlZCc7CiRsYW5nWydwcm9tcHRfdGltZWxpbWl0ZWRfZG93bmxvYWRzJ10gPSAnTm9tYnJlIGRlIHQmZWFjdXRlO2wmZWFjdXRlO2NoYXJnZW1lbnRzIHBhciBkJmVhY3V0ZTtmYXV0JzsKJGxhbmdbJ2luZm9fdGltZWxpbWl0ZWRfaG91cnMnXSA9ICdTcGVjaWZ5IHRoZSBkZWZhdWx0IG51bWJlciBvZiBob3VycyB0aGF0IGEgdGltZSBsaW1pdGVkIGtleSBpcyB2YWxpZCBmb3IuICBTcGVjaWZ5IDAgZm9yIHVubGltaXRlZCc7CiRsYW5nWydwcm9tcHRfdGltZWxpbWl0ZWRfaG91cnMnXSA9ICdEdXImZWFjdXRlO2UgZW4gaGV1cmVzIHBvdXIgdW5lIGNsJmVhY3V0ZTsgbGltaXQmZWFjdXRlO2UgZGFucyBsZSB0ZW1wcyc7CiRsYW5nWyd0aW1lbGltaXRlZF91cmxfc2V0dGluZ3MnXSA9ICdUaW1lIExpbWl0ZWQgS2V5IFNldHRpbmdzJzsKJGxhbmdbJ21hbmFnZV90aW1lbGltaXRlZCddID0gJ0cmZWFjdXRlO3JlciBsJiMwMzk7YWNjJmVncmF2ZTtzIGR1cmFudCB1biB0ZW1wcyBsaW1pdCZlYWN1dGU7JzsKJGxhbmdbJ3VwbG9hZGluZ19zZXR0aW5ncyddID0gJ1ImZWFjdXRlO2dsYWdlcyBwb3VyIGwmIzAzOTt1cGxvYWQgZGUgZmljaGllcnMnOwokbGFuZ1snZ2VuZXJhbF9zZXR0aW5ncyddID0gJ1ImZWFjdXRlO2dsYWdlcyBHJmVhY3V0ZTtuJmVhY3V0ZTtyYXV4JzsKJGxhbmdbJ3RodW1ibmFpbF9zZXR0aW5ncyddID0gJ0cmZWFjdXRlO24mZWFjdXRlO3JhdGlvbiBkZSB2aWduZXR0ZXMnOwokbGFuZ1sndGl0bGVfcmVkaXJlY3Rfb25fc2VuZGZpbGUnXSA9ICdQYWdlIG8mdWdyYXZlOyByZWRpcmlnZXIgYXByJmVncmF2ZTtzIGF2b2lyIGVudm95JmVhY3V0ZTsgdW4gZmljaGllcic7CiRsYW5nWydsYmxfYmFjayddID0gJ1JldG91cic7CiRsYW5nWydsYmxfdGVtcGxhdGVzJ10gPSAnTW9kaWZpZXIgbGVzIGdhYmFyaXRzJzsKJGxhbmdbJ3Byb21wdF9wdWJsaWNfZmllbGQnXSA9ICdGaWVsZCBpcyBwdWJsaWMgPGVtPihjYW4gYmUgdmlld2VkIGJ5IHNpdGUgdmlzaXRvcnMpPC9lbT4nOwokbGFuZ1sndXBsb2FkX2VkaXRlZCddID0gJ0ZpbGUgRGV0YWlscyBFZGl0ZWQgb24gJXMnOwokbGFuZ1snaW5mb190aHVtYm5haWwnXSA9ICdVbiBmaWNoaWVyIHZpZ25ldHRlIGZhY3VsdGF0aWYnOwokbGFuZ1sndXBsb2FkX2ZpbGUnXSA9ICdVcGxvYWRlciB1biBub3V2ZWF1IGZpY2hpZXInOwokbGFuZ1snbXNnX2ZpZWxkX2RlbGV0ZWQnXSA9ICdDaGFtcCBlZmZhYyZlYWN1dGU7JzsKJGxhbmdbJ2Fza19kZWxldGVfZmllbGQnXSA9ICdBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gZGVsZXRlIHRoaXMgZmllbGQgZGVmaW5pdGlvbiBhbmQgYWxsIGFzc29jaWF0ZWQgdmFsdWVzPyc7CiRsYW5nWyd5ZXMnXSA9ICdPdWknOwokbGFuZ1snbm8nXSA9ICdOb24nOwokbGFuZ1sndHlwZSddID0gJ1R5cGUnOwokbGFuZ1snZmllbGR0eXBlX211bHRpc2VsZWN0J10gPSAnTXVsdGlzZWxlY3QgTGlzdCc7CiRsYW5nWydmaWVsZHR5cGVfZHJvcGRvd24nXSA9ICdEcm9wZG93biBMaXN0JzsKJGxhbmdbJ2ZpZWxkdHlwZV9jaGVja2JveCddID0gJ0NoZWNrYm94JzsKJGxhbmdbJ2ZpZWxkdHlwZV90ZXh0YXJlYSddID0gJ1RleHQgQXJlYSc7CiRsYW5nWydmaWVsZHR5cGVfdGV4dGlucHV0J10gPSAnVGV4dCBJbnB1dCc7CiRsYW5nWydwcm9tcHRfdXNlX3d5c2l3eWcnXSA9ICdVc2UgdGhlIHd5c2l3eWcgd2hlbiBlZGl0aW5nIHRoZSB2YWx1ZSBmb3IgdGhpcyBmaWVsZCc7CiRsYW5nWydwcm9tcHRfZGVmYXVsdF9jb250ZW50J10gPSAnRGVmYXVsdCBjb250ZW50IGZvciB0ZXh0IGFyZWEnOwokbGFuZ1sncHJvbXB0X2Ryb3Bkb3duX29wdGlvbnMnXSA9ICdPcHRpb25zIChvbmUgZW50cnkgcGVyIGxpbmUpJzsKJGxhbmdbJ3Byb21wdF9maWVsZF9tYXhsZW5ndGgnXSA9ICdGaWVsZCBNYXhpbXVtIExlbmd0aCc7CiRsYW5nWydwcm9tcHRfZmllbGRfbGVuZ3RoJ10gPSAnTG9uZ3VldXIgZHUgY2hhbXAnOwokbGFuZ1sncHJvbXB0X2ZpZWxkX3R5cGUnXSA9ICdUeXBlIGRlIGNoYW1wJzsKJGxhbmdbJ3Byb21wdF9maWVsZF9uYW1lJ10gPSAnTm9tIGR1IGNoYW1wJzsKJGxhbmdbJ3RpdGxlX2FkZF9maWVsZCddID0gJ0Fqb3V0ZXIgb3UgbW9kaWZpZXIgdW5lIGQmZWFjdXRlO2Zpbml0aW9uIGRlIGNoYW1wJzsKJGxhbmdbJ2ZpZWxkX2RlZmluaXRpb25zJ10gPSAnRCZlYWN1dGU7ZmluaXRpb25zIGRlIGNoYW1wJzsKJGxhbmdbJ3Byb21wdF9hZGRfZmllbGQnXSA9ICdBam91dGVyIHVuZSBkJmVhY3V0ZTtmaW5pdGlvbiBkZSBjaGFtcCc7CiRsYW5nWydwYXJhbV9hY3Rpb24nXSA9ICdTcGVjaWZpZXMgdGhlIGJlaGF2aW91ciBvZiB0aGUgbW9kdWxlIHRhZy4gIFBvc3NpYmxlIHZhbHVlcyBhcmU6IGRlZmF1bHQgLSAodGhlIGRlZmFmYXVsdCBiZWhhdmlvciksIGRldGFpbCAtIHRvIGRpc3BsYXkgYSBkZXRhaWwgdmlldyBvZiBhIHNpbmdsZSBmaWxlIGJhc2VkIG9uIHRoZSB1cGxvYWRfaWQsIGFuZCB5b3VzZW5kaXQgLSB0byBkaXNwbGF5IGEgZm9ybSB0byBhbGxvdyB1cGxvYWRpbmcgYSBmaWxlLCBhbmQgc2VuZGluZyBpdCB0byBudW1lcm91cyBhZGRyZXNzZXMgaW4gb25lIHN0ZXAnOwokbGFuZ1sncGFyYW1fc2VuZGZpbGVwYWdlJ10gPSAnU3BlY2lmeSB0aGUgcGFnZSBpZCBvciBhbGlhcyBvZiBhIHBhZ2UgdGhhdCBzaG91bGQgYmUgdXNlZCBmb3IgdGhlIHNlbmQgYSBmaWxlIGZvcm0nOwokbGFuZ1snZmlsZV91cGxvYWRlZCddID0gJ0ZpY2hpZXIgdXBsb2FkJmVhY3V0ZTsgYXZlYyBzdWNjJmVncmF2ZTtzJzsKJGxhbmdbJ3RvJ10gPSAnVG8nOwokbGFuZ1sndGl0bGVfeW91c2VuZGl0Zm9ybV90ZW1wbGF0ZSddID0gJ0FkZCBvciBFZGl0IGEgJnF1b3Q7WW91IFNlbmQgSXQmcXVvdDsgRm9ybSBUZW1wbGF0ZSc7CiRsYW5nWyd5b3VzZW5kaXRmb3JtX3RlbXBsYXRlJ10gPSAnWW91U2VuZEl0IEZvcm0gVGVtcGxhdGVzJzsKJGxhbmdbJ3RpdGxlX3lvdXNlbmRpdGZvcm1fc3lzZGVmYXVsdCddID0gJ1N5c3RlbSBkZWZhdWx0ICZxdW90O3lvdSBzZW5kIGl0JnF1b3Q7IHRlbXBsYXRlJzsKJGxhbmdbJ21zZ19maWxlX3NlbnQnXSA9ICdBIG1lc3NhZ2UgaGFzIGJlZW4gc2VudCB0byB0aGUgc2VsZWN0ZWQgYWRkcmVzc2VzIHRoYXQgY29udGFpbnMgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGZpbGUgYW5kIGhvdyB0byByZXRyaWV2ZSBpdC4nOwokbGFuZ1snZXJyb3Jfbm9hZGRyZXNzZXMnXSA9ICdZb3UgbXVzdCBzdXBwbHkgYXQgbGVhc3Qgb25lIGRlc3RpbmF0aW9uIGFkZHJlc3MnOwokbGFuZ1snZXJyb3Jfbm9zdWJqZWN0J10gPSAnVm91cyBkZXZleiBlbnRyZXIgdW4gc3VqZXQnOwokbGFuZ1snc3ViamVjdCddID0gJ1N1amV0JzsKJGxhbmdbJ3RpdGxlX3NlbmRmaWxlcGFnZSddID0gJ1BhZ2UgZm9yICZxdW90O1NlbmQgYSBGaWxlJnF1b3Q7IGZvcm0nOwokbGFuZ1snZmlsZV9pbmZvJ10gPSAnSW5mb3MgZmljaGllcic7CiRsYW5nWydzZW5kJ10gPSAnRW52b3kmZWFjdXRlOyc7CiRsYW5nWydub3RlcyddID0gJ05vdGVzJzsKJGxhbmdbJ2FkZHJlc3NlZXMnXSA9ICdTZW5kIGluZm9ybWF0aW9uIGFib3V0IHRoaXMgZmlsZSB0byc7CiRsYW5nWydwcm9tcHRfc2VuZGZpbGVfZW1haWxfdGVtcGxhdGUnXSA9ICcmcXVvdDtTZW5kIGEgRmlsZSZxdW90OyBFbWFpbCBUZW1wbGF0ZSc7CiRsYW5nWyd0aXRsZV9zZW5kZmlsZWZvcm1fdGVtcGxhdGUnXSA9ICdBZGQgb3IgRWRpdCBhICZxdW90O1NlbmQgYSBGaWxlJnF1b3Q7IEZvcm0gVGVtcGxhdGUnOwokbGFuZ1snc2VuZGZpbGVmb3JtX3RlbXBsYXRlJ10gPSAnJnF1b3Q7U2VuZCBhIEZpbGUmcXVvdDsgRm9ybSBUZW1wbGF0ZXMnOwokbGFuZ1sncHJvbXB0X25vdGlmeV9lbWFpbF90ZW1wbGF0ZSddID0gJ0ZpbGUgdXBsb2FkIG5vdGlmaWNhdGlvbiBlbWFpbCB0ZW1wbGF0ZSc7CiRsYW5nWyd0aXRsZV9zZW5kZmlsZWZvcm1fc3lzZGVmYXVsdCddID0gJ1N5c3RlbSBkZWZhdWx0ICZxdW90O1NlbmQgYSBGaWxlJnF1b3Q7IGZvcm0gdGVtcGxhdGUnOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5ZGVsZXRhYmxlJ10gPSAnTGVzIGZpY2hpZXJzIGRlIGNldHRlIGNhdCZlYWN1dGU7Z29yaWUgcGV1dmVudCAmZWNpcmM7dHJlIHN1cHByaW0mZWFjdXRlO3MnOwokbGFuZ1sndGl0bGVfYWxsb3dfZGVsZXRlJ10gPSAnQXV0b3Jpc2VyIGxhIHN1cHByZXNzaW9uIGRlIGZpY2hpZXJzIGRlcHVpcyBsZSBmcm9udGVuZCc7CiRsYW5nWydkZWZhdWx0X3RlbXBsYXRlcyddID0gJ01vZCZlZ3JhdmU7bGVzIHBhciBkJmVhY3V0ZTtmYXV0JzsKJGxhbmdbJ2ZpcnN0cGFnZSddID0gJ1ByZW1pJmVncmF2ZTtyZSBwYWdlJzsKJGxhbmdbJ3ByZXZwYWdlJ10gPSAnUGFnZSBwciZlYWN1dGU7YyZlYWN1dGU7ZGVudGUnOwokbGFuZ1snbmV4dHBhZ2UnXSA9ICdQYWdlIHN1aXZhbnRlJzsKJGxhbmdbJ2xhc3RwYWdlJ10gPSAnRGVybmkmZWdyYXZlO3JlIHBhZ2UnOwokbGFuZ1snZmlyc3RwYWdlX2Fycm93J10gPSAnPDwnOwokbGFuZ1sncHJldnBhZ2VfYXJyb3cnXSA9ICc8JzsKJGxhbmdbJ25leHRwYWdlX2Fycm93J10gPSAnPic7CiRsYW5nWydsYXN0cGFnZV9hcnJvdyddID0gJz4+JzsKJGxhbmdbJ3BhZ2UnXSA9ICdQYWdlICc7CiRsYW5nWydvZiddID0gJ0RlJzsKJGxhbmdbJ3Byb21wdF9ncm91cGxpc3QnXSA9ICdHcm91cGVzIEZFVSBhdXRvcmlzJmVhY3V0ZTtzJzsKJGxhbmdbJ2luZm9fZ3JvdXBsaXN0J10gPSAnUyZlYWN1dGU7bGVjdGlvbm5leiBsZXMgZ3JvdXBlcyBGRVUgcXVpIHNvbnQgYXV0b3JpcyZlYWN1dGU7cyAmYWdyYXZlOyBhY2MmZWFjdXRlO2RlciBhdXggZmljaGllcnMgZGUgY2V0dGUgY2F0JmVhY3V0ZTtnb3JpZS4gRCZlYWN1dGU7LXMmZWFjdXRlO2xlY3Rpb25uZXogKEN0cmwgKyBjbGljKSB0b3V0ZXMgbGVzIGVudHImZWFjdXRlO2VzIHBvdXIgcGVybWV0dHJlIGwmIzAzOTthY2MmZWdyYXZlO3MgJmFncmF2ZTsgdG91cy4nOwokbGFuZ1sndGl0bGVfc2NhbiddID0gJ0JhbGF5YWdlIHBvdXIgbGVzIG5vdXZlYXV4IGZpY2hpZXJzIGRhbnMgY2V0dGUgY2F0JmVhY3V0ZTtnb3JpZSc7CiRsYW5nWyd0aXRsZV9jcmVhdGVfdGh1bWJuYWlscyddID0gJ0NyJmVhY3V0ZTtlciBsZXMgdmlnbmV0dGVzIG1hbnF1YW50ZXMgZGVzIGZpY2hpZXJzIGRlIGNldHRlIGNhdCZlYWN1dGU7Z29yaWUnOwokbGFuZ1snY3JlYXRlX3RodW1ibmFpbHMnXSA9ICdDciZlYWN1dGU7ZXIgbGVzIHZpZ25ldHRlcyc7CiRsYW5nWyd0aXRsZV9jcmVhdGVfdGh1bWJuYWlsJ10gPSAnKFJlKWNyJmVhY3V0ZTtlciBsYSB2aWduZXR0ZSBwb3VyIGNlIGZpY2hpZXInOwokbGFuZ1snY3JlYXRlX3RodW1ibmFpbCddID0gJ0NyJmVhY3V0ZTtlciBsYSB2aWduZXR0ZSc7CiRsYW5nWydlcnJvcl9wYXRoZXJyb3InXSA9ICdSJmVhY3V0ZTtwZXJ0b2lyZSBpbXBvc3NpYmxlICZhZ3JhdmU7IG91dnJpciAocHJvYmwmZWdyYXZlO21lIGRlIGRyb2l0cyA/KSc7CiRsYW5nWyd0aXRsZV9kb3dubG9hZF9jaHVua3NpemUnXSA9ICdUYWlsbGUgZGUgY2hhcXVlIG1vcmNlYXUgdCZlYWN1dGU7bCZlYWN1dGU7Y2hhcmcmZWFjdXRlOyZuYnNwOyc7CiRsYW5nWydpbmZvX2Rvd25sb2FkX2NodW5rc2l6ZSddID0gJ0FqdXN0ZXIgY2UgcGFyYW0mZWdyYXZlO3RyZSBhZmZlY3RlcmEgbGEgdml0ZXNzZSBkZSB0JmVhY3V0ZTtsJmVhY3V0ZTtjaGFyZ2VtZW50IChkb3dubG9hZCkgZXQgcGV1dCBhaWRlciBkYW5zIGxlcyBlbnZpcm9ubmVtZW50cyAmYWdyYXZlOyBmYWlibGUgY2FwYWNpdCZlYWN1dGU7IG0mZWFjdXRlO21vaXJlJzsKJGxhbmdbJ3dhcm5pbmdfc2FmZV9tb2RlJ10gPSAnTGUgUEhQICZxdW90O3NhZmUgbW9kZSZxdW90OyBlc3QgYWN0aXYmZWFjdXRlOy4gQ2VsYSBwZXV0IHBvc2VyIHVuIHByb2JsJmVncmF2ZTttZSBhdSB0JmVhY3V0ZTtsJmVhY3V0ZTtjaGFyZ2VtZW50IChwZXJtaXNzaW9ucykgZXQgcGV1dCBhdXNzaSBpbnRlcmYmZWFjdXRlO3JlciBhdmVjIGxhIGNhcGFjaXQmZWFjdXRlOyBkZSBjZSBtb2R1bGUgJmFncmF2ZTsgZW52b3llciBkZXMgZmljaGllcnMgcG91ciBjYXVzZSBkJiMwMzk7aW1wb3NzaWJpbGl0JmVhY3V0ZTsgZGUgbW9kaWZpZXIgZGVzIGNvbmZpZ3VyYXRpb25zIGRlcyBmaWNoaWVycyBpbmkuIFZvdXMgJmVjaXJjO3RlcyBpbnZpdCZlYWN1dGU7ICZhZ3JhdmU7IGNvbnRhY3RlciB2b3RyZSBoJmVhY3V0ZTtiZXJnZXVyIHBvdXIgciZlYWN1dGU7c291ZHJlIGNlIHByb2JsJmVncmF2ZTttZS4nOwokbGFuZ1sncGFyYW1fZGV0YWlscGFnZSddID0gJ1V0aWxlIHBvdXIgbCYjMDM5O2FmZmljaGFnZSBkJiMwMzk7dW4gcmFwcG9ydCBkJmVhY3V0ZTt0YWlsbCZlYWN1dGU7IGVuIHV0aWxpc2FudCB1biBhdXRyZSBtb2QmZWdyYXZlO2xlIGRlIHBhZ2UsIGNlIHBhcmFtJmVncmF2ZTt0cmUgcHJlbmQgbCYjMDM5O2lkZW50aWZpYW50IChpZCkgZGUgbGEgcGFnZSBvdSBsJiMwMzk7YWxpYXMgZGUgbGEgcGFnZSBkJiMwMzk7dW5lIHBhZ2UgcXVpIGRvaXQgJmVjaXJjO3RyZSB1dGlsaXMmZWFjdXRlOyBwb3VyIGFmZmljaGVyIGxlIGQmZWFjdXRlO3RhaWwgZGUgcmFwcG9ydCc7CiRsYW5nWydwYXJhbV9wcmVmaXgnXSA9ICdVbiBib29sJmVhY3V0ZTtlbiBxdWkgaW5kaXF1ZSBzaSBsZSBub20gZHUgZmljaGllciBkb2l0ICZlY2lyYzt0cmUgcHImZWFjdXRlO2ZpeCZlYWN1dGU7JzsKJGxhbmdbJ3BhcmFtX3ByZWZpeF9mZXUnXSA9ICdVbiBwYXJhbSZlZ3JhdmU7dHJlIGJvb2wmZWFjdXRlO2VuIHF1aSBpbmRpcXVlIHF1ZSBsZSBwciZlYWN1dGU7Zml4ZSBkb2l2ZW50ICZlY2lyYzt0cmUgcHJpcyAmYWdyYXZlOyBsJiMwMzk7YXV0ZXVyLCBzJiMwMzk7aWwgbiYjMDM5O2VzdCBwYXMgc3AmZWFjdXRlO2NpZmkmZWFjdXRlOywgbGUgcHImZWFjdXRlO2ZpeGUgZXN0IGwmIzAzOTtoZXVyZSBhY3R1ZWxsZSAoZGFucyBsZSBmb3JtYXQgZGVjaGV4KSc7CiRsYW5nWydwYXJhbV9ub2NhcHRjaGEnXSA9ICdEJmVhY3V0ZTtzYWN0aXZlciBDYXB0Y2hhIChwYXIgZCZlYWN1dGU7ZmF1dCkgZGFucyBsZSBmb3JtdWxhaXJlIGQmIzAzOTtlbnZvaSc7CiRsYW5nWyd0aXRsZV91cGxvYWRmb3JtX3RlbXBsYXRlJ10gPSAnTW9kaWZpZXIgbGUgbW9kJmVncmF2ZTtsZSBkZSBmb3JtdWxhaXJlIGQmIzAzOTtlbnZvaSc7CiRsYW5nWydjYXB0Y2hhX3RpdGxlJ10gPSAnU2Fpc2lzc2V6IGxlIHRleHRlIGEgYWZmaWNoZXIgZGFucyBjZXR0ZSBpbWFnZSc7CiRsYW5nWydlcnJvcl9jYXB0Y2hhbWlzbWF0Y2gnXSA9ICdMZSB0ZXh0ZSBlbnRyJmVhY3V0ZTsgbmUgY29ycmVzcG9uZCAmYWdyYXZlOyBsJiMwMzk7aW1hZ2UgYWZmaWNoJmVhY3V0ZTtlJzsKJGxhbmdbJ3RpdGxlX2F1dG90aHVtYm5haWxfZXh0ZW5zaW9ucyddID0gJ0NyJmVhY3V0ZTtlciBkZXMgdmlnbmV0dGVzIHBvdXIgbGVzIGZpY2hpZXJzIGF2ZWMgY2VzIGV4dGVuc2lvbnMmbmJzcDsnOwokbGFuZ1sndGl0bGVfYXV0b3RodW1ibmFpbF9zaXplJ10gPSAnVGFpbGxlIG1heGltdW0gKHBpeGVscykgZGUgbGEgdmlnbmV0dGUgZyZlYWN1dGU7biZlYWN1dGU7ciZlYWN1dGU7ZSZuYnNwOyc7CiRsYW5nWydwcm9tcHRfdXBsb2FkX2ljb24nXSA9ICdVcGxvYWQgdW5lIGljJm9jaXJjO25lJzsKJGxhbmdbJ2luZm9fc3lzZGVmYXVsdCddID0gJ0NlIHRleHRlIGVzdCB1dGlsaXMmZWFjdXRlOyBsb3JzIGRlIGxhIGNyJmVhY3V0ZTthdGlvbiBkJiMwMzk7dW4gbm91dmVhdSBtb2QmZWdyYXZlO2xlIGRlIGNlIHR5cGUnOwokbGFuZ1sndGl0bGVfZGV0YWlscnB0X3N5c2RlZmF1bHQnXSA9ICdNb2QmZWdyYXZlO2xlIHBhciBkJmVhY3V0ZTtmYXV0IGR1IHJhcHBvcnQgZCZlYWN1dGU7dGFpbGwmZWFjdXRlOyc7CiRsYW5nWyd0aXRsZV9zdW1tYXJ5cnB0X3N5c2RlZmF1bHQnXSA9ICdNb2QmZWdyYXZlO2xlIHNvbW1haXJlIHBhciBkJmVhY3V0ZTtmYXV0JzsKJGxhbmdbJ3RpdGxlX3VwbG9hZGZvcm1fc3lzZGVmYXVsdCddID0gJ01vZCZlZ3JhdmU7bGUgZGUgY2hhcmdlbWVudCBwYXIgZCZlYWN1dGU7ZmF1dCc7CiRsYW5nWyd0ZW1wbGF0ZSddID0gJ01vZCZlZ3JhdmU7bGUmbmJzcDsnOwokbGFuZ1sncmVzZXR0b2RlZmF1bHQnXSA9ICdSZXN0YXVyZXIgbGVzIHBhcmFtJmVncmF2ZTt0cmVzIHBhciBkJmVhY3V0ZTtmYXV0JzsKJGxhbmdbJ3RpdGxlX3N1bW1hcnlycHRfdGVtcGxhdGUnXSA9ICdNb2QmZWdyYXZlO2xlIGRlIHJhcHBvcnQgciZlYWN1dGU7c3VtJmVhY3V0ZTsnOwokbGFuZ1sndGl0bGVfZGV0YWlscnB0X3RlbXBsYXRlJ10gPSAnTW9kJmVncmF2ZTtsZSBkdSByYXBwb3J0IGRldGFpbGwmZWFjdXRlOyc7CiRsYW5nWydwcm9tcHRfbmFtZSddID0gJ05vbSc7CiRsYW5nWydwcm9tcHRfZGVmYXVsdCddID0gJ1BhciBkJmVhY3V0ZTtmYXV0JzsKJGxhbmdbJ2xlZ2VuZF91cGxvYWRmb3JtJ10gPSAnVXBsb2FkZXIgdW4gZmljaGllcic7CiRsYW5nWydlcnJvcl9taXNzaW5ncGFyYW0nXSA9ICdVbiBwYXJhbSZlZ3JhdmU7dHJlIHJlcXVpcyBlc3QgbWFucXVhbnQnOwokbGFuZ1snZXJyb3JfbWlzc2luZ25hbWUnXSA9ICdVbiBub20gcG91ciBsZSB0eXBlIGRlIGZpY2hpZXIgZG9pdCAmZWNpcmM7dHJlIHNwJmVhY3V0ZTtjaWZpJmVhY3V0ZTsnOwokbGFuZ1snZXJyb3JfbWlzc2luZ2V4dGVuc2lvbnMnXSA9ICdBdSBtb2lucyB1bmUgZXh0ZW5zaW9uIGRlIGZpY2hpZXIgZG9pdCAmZWNpcmM7dHJlIHNwJmVhY3V0ZTtjaWZpJmVhY3V0ZTtlJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdpY29uJ10gPSAnVW5lIGljJm9jaXJjO25lIGRvaXQgJmVjaXJjO3RyZSBzcCZlYWN1dGU7Y2lmaSZlYWN1dGU7ZSc7CiRsYW5nWydlcnJvcl9ub3N1Y2hyb3cnXSA9ICdMYSBsaWduZSBzcCZlYWN1dGU7Y2lmaSZlYWN1dGU7ZSBuJiMwMzk7YSBwYXMgcHUgJmVjaXJjO3RyZSB0cm91diZlYWN1dGU7ZSc7CiRsYW5nWyduYW1lX3Vua25vd24nXSA9ICdJbmNvbm51JzsKJGxhbmdbJ2Rlc2NyaXB0aW9uX3Vua25vd24nXSA9ICdEZXNjcmlwdGlvbiBkdSB0eXBlIGRlIGZpY2hpZXIgcG91ciBsZXMgZmljaGllcnMgZGlmZiZlYWN1dGU7cmVudHMnOwokbGFuZ1snaW1hZ2UnXSA9ICdJbWFnZSAnOwokbGFuZ1snaWNvbiddID0gJ0ljJm9jaXJjO25lJzsKJGxhbmdbJ2V4dGVuc2lvbnMnXSA9ICdFeHRlbnNpb25zIGRlIGZpY2hpZXInOwokbGFuZ1snYWRkZmlsZXR5cGUnXSA9ICdBam91dGVyIHVuIG5vdXZlYXUgdHlwZSBkZSBmaWNoaWVyJzsKJGxhbmdbJ2ZpbGVfdHlwZXMnXSA9ICdUeXBlcyBkZSBmaWNoaWVycyc7CiRsYW5nWydlcnJvcl9ub2NhdGVnb3J5aWQnXSA9ICdJZGVudGlmaWFudCBkZSBjYXQmZWFjdXRlO2dvcmllIG5vbiBzcCZlYWN1dGU7Y2lmJmVhY3V0ZTsnOwokbGFuZ1snZXJyb3Jfbm9jYXRlZ29yeSddID0gJ0NhdCZlYWN1dGU7Z29yaWUgbWFucXVhbnRlJzsKJGxhbmdbJ2Vycm9yX3RlbXBsYXRlbmFtZWV4aXN0cyddID0gJ1VuIG1vZCZlZ3JhdmU7bGUgZGUgY2Ugbm9tIGV4aXN0ZSBkJmVhY3V0ZTtqJmFncmF2ZTsnOwokbGFuZ1sncHJvbXB0X3RlbXBsYXRlbmFtZSddID0gJ05vbSBkdSBtb2QmZWdyYXZlO2xlJm5ic3A7JzsKJGxhbmdbJ3Byb21wdF90ZW1wbGF0ZSddID0gJ05vbSBkdSBtb2QmZWdyYXZlO2xlJm5ic3A7JzsKJGxhbmdbJ3Byb21wdF9uZXd0ZW1wbGF0ZSddID0gJ0NyJmVhY3V0ZTtlciB1biBub3V2ZWF1IG1vZCZlZ3JhdmU7bGUnOwokbGFuZ1snaGVscF9PbkRvd25sb2FkJ10gPSAnPHA+VW4gJmVhY3V0ZTt2JmVhY3V0ZTtuZW1lbnQgZyZlYWN1dGU7biZlYWN1dGU7ciZlYWN1dGU7IGxvcnNxdSYjMDM5O3VuIHV0aWxpc2F0ZXVyIHRlcm1pbmUgbGUgdCZlYWN1dGU7bCZlYWN1dGU7Y2hhcmdlbWVudCBkJiMwMzk7dW4gZmljaGllcjwvcD4NCjxoND5QYXJhbSZlZ3JhdmU7dHJlczwvaDQ+DQo8dWw+DQo8bGk+PGVtPmlkPC9lbT4gLSBVcGxvYWQgSUQ8L2xpPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBOb20gZHUgZmljaGllcjwvbGk+DQo8bGk+PGVtPmlwPC9lbT4gLSBBZHJlc3NlIElQIGR1IHQmZWFjdXRlO2wmZWFjdXRlO2NoYXJnZXVyPC9saT4NCjwvdWw+DQonOwokbGFuZ1snaGVscF9PbkRlbGV0ZUNhdGVnb3J5J10gPSAnPHA+VW4gJmVhY3V0ZTt2JmVhY3V0ZTtuZW1lbnQgZyZlYWN1dGU7biZlYWN1dGU7ciZlYWN1dGU7IGxvcnNxdSYjMDM5O3VuIHV0aWxpc2F0ZXVyIHN1cHByaW1lIHVuZSBjYXQmZWFjdXRlO2dvcmllPC9wPg0KPGg0PlBhcmFtJmVncmF2ZTt0cmVzPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gTm9tIGRlIGxhIGNhdCZlYWN1dGU7Z29yaWU8L2xpPg0KPGxpPjxlbT5wYXRoPC9lbT4gLSBDaGVtaW4gZGUgbGEgY2F0JmVhY3V0ZTtnb3JpZTwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2hlbHBfT25DcmVhdGVDYXRlZ29yeSddID0gJzxwPlVuICZlYWN1dGU7diZlYWN1dGU7bmVtZW50IGcmZWFjdXRlO24mZWFjdXRlO3ImZWFjdXRlOyAmYWdyYXZlOyBsYSBjciZlYWN1dGU7YXRpb24gZCYjMDM5O3VuZSBjYXQmZWFjdXRlO2dvcmllPC9wPg0KPGg0PlBhcmFtJmVncmF2ZTt0cmVzPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gTGUgbm9tIGRlIGxhIGNhdCZlYWN1dGU7Z29yaWU8L2xpPg0KPGxpPjxlbT5kZXNjcmlwdGlvbjwvZW0+IC0gTGEgZGVzY3JpcHRpb24gZGUgbGEgY2F0JmVhY3V0ZTtnb3JpZTwvbGk+DQo8bGk+PGVtPnBhdGg8L2VtPiAtIExlIGNoZW1pbiBkZSBsYSBjYXQmZWFjdXRlO2dvcmllPC9saT4NCjxsaT48ZW0+cGF0aDwvZW0+IC0gVW4gZmxhZyBxdWkgaW5kaXF1ZSBzaSBsYSBjYXQmZWFjdXRlO2dvcmllIHBldXQgJmVjaXJjO3RyZSBsaXN0JmVhY3V0ZTtlPC9saT4NCjwvdWw+DQonOwokbGFuZ1snaGVscF9PblJlbW92ZSddID0gJzxwPkFuICZlYWN1dGU7diZlYWN1dGU7bmVtZW50IGcmZWFjdXRlO24mZWFjdXRlO3ImZWFjdXRlOyBsb3JzcXUmIzAzOTt1biBmaWNoaWVyIGVzdCBzdXBwcmltJmVhY3V0ZTsgdmlhIGwmIzAzOTtpbnRlcmZhY2UgYWRtaW4gb3UgJnF1b3Q7ZnJvbnRlbmQmcXVvdDs8L3A+DQo8aDQ+UGFyYW0mZWdyYXZlO3RyZXM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBOb20gZHUgZmljaGllciBzdXBwcmltJmVhY3V0ZTs8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gSWRlbnRpZmlhbnQgZHUgZmljaGllciBzdXBwcmltJmVhY3V0ZTs8L2xpPg0KPGxpPjxlbT5jYXRlZ29yeV9pZDwvZW0+IC0gSWRlbnRpZmlhbnQgZGUgbGEgY2F0JmVhY3V0ZTtnb3JpZTwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2hlbHBfT25VcGxvYWQnXSA9ICc8cD5VbiAmZWFjdXRlO3YmZWFjdXRlO25lbWVudCBnJmVhY3V0ZTtuJmVhY3V0ZTtyJmVhY3V0ZTsgbG9yc3F1JiMwMzk7dW4gZmljaGllciBlc3QgdCZlYWN1dGU7bCZlYWN1dGU7Y2hhcmcmZWFjdXRlOyB2aWEgbCYjMDM5O2ludGVyZmFjZSBhZG1pbiBvdSBsJiMwMzk7aW50ZXJmYWNlICZxdW90O2Zyb250ZW5kJnF1b3Q7PC9wPg0KPGg0PlBhcmFtJmVncmF2ZTt0cmVzPC9oND4NCjx1bD4NCjxsaT48ZW0+Y2F0ZWdvcnk8L2VtPiAtIExlIG5vbSBkZSBsYSBjYXQmZWFjdXRlO2dvcmllPC9saT4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gTGUgbm9tIGR1IGZpY2hpZXIgdCZlYWN1dGU7bCZlYWN1dGU7Y2hhcmcmZWFjdXRlOyA8L2xpPg0KPGxpPjxlbT5zaXplPC9lbT4gLSBMYSB0YWlsbGUgZHUgZmljaGllciB0JmVhY3V0ZTtsJmVhY3V0ZTtjaGFyZyZlYWN1dGU7IDwvbGk+DQo8bGk+PGVtPnN1bW1hcnk8L2VtPiAtIExhIGRlc2NyaXB0aW9uIGNvdXJ0ZSBkdSBmaWNoaWVyIHQmZWFjdXRlO2wmZWFjdXRlO2NoYXJnJmVhY3V0ZTsgKHBldXQgJmVjaXJjO3RyZSB2aWRlKTwvZW0+PC9saT4NCjxsaT48ZW0+ZGVzY3JpcHRpb248L2VtPiAtIExhIGRlc2NyaXB0aW9uIGxvbmd1ZSBkdSBmaWNoaWVyIHQmZWFjdXRlO2wmZWFjdXRlO2NoYXJnJmVhY3V0ZTsgKHBldXQgJmVjaXJjO3RyZSB2aWRlKTwvZW0+PC9saT4NCjxsaT48ZW0+YXV0aG9yPC9lbT4gLSBMJiMwMzk7YXV0ZXVyIGR1IGZpY2hpZXIgdCZlYWN1dGU7bCZlYWN1dGU7Y2hhcmcmZWFjdXRlOyAoc2kgZGlzcG9uaWJsZSk8L2VtPjwvbGk+DQo8bGk+PGVtPmlwX2FkZHJlc3M8L2VtPiAtICBMJiMwMzk7YWRyZXNzZSBJUCBkdSBjbGllbnQgcXVpIGEgdCZlYWN1dGU7bCZlYWN1dGU7Y2hhcmcmZWFjdXRlOyBsZSBmaWNoaWVyPC9saT4NCjwvdWw+DQonOwokbGFuZ1snaW5mb19ldmVudF9vbmRlbGV0ZWNhdGVnb3J5J10gPSAnRXYmZWFjdXRlO25lbWVudCBnJmVhY3V0ZTtuJmVhY3V0ZTtyJmVhY3V0ZTsgbG9yc3F1JiMwMzk7dW5lIGNhdCZlYWN1dGU7Z29yaWUgZXN0IHN1cHByaW0mZWFjdXRlO2UnOwokbGFuZ1snaW5mb19ldmVudF9vbmNyZWF0ZWNhdGVnb3J5J10gPSAnRXYmZWFjdXRlO25lbWVudCBnJmVhY3V0ZTtuJmVhY3V0ZTtyJmVhY3V0ZTsgbG9yc3F1JiMwMzk7dW5lIGNhdCZlYWN1dGU7Z29yaWUgZXN0IGNyJmVhY3V0ZTtlJzsKJGxhbmdbJ2luZm9fZXZlbnRfb25kb3dubG9hZCddID0gJ0V2JmVhY3V0ZTtuZW1lbnQgZyZlYWN1dGU7biZlYWN1dGU7ciZlYWN1dGU7IGxvcnNxdSYjMDM5O3VuIGZpY2hpZXIgZXN0IHQmZWFjdXRlO2wmZWFjdXRlO2NoYXJnJmVhY3V0ZTsnOwokbGFuZ1snaW5mb19ldmVudF9vbnVwbG9hZCddID0gJ0V2JmVhY3V0ZTtuZW1lbnQgZyZlYWN1dGU7biZlYWN1dGU7ciZlYWN1dGU7IGxvcnNxdSYjMDM5O3VuIG5vdXZlYXUgZmljaGllciBlc3QgdCZlYWN1dGU7bCZlYWN1dGU7Y2hhcmcmZWFjdXRlOyc7CiRsYW5nWydpbmZvX2V2ZW50X29ucmVtb3ZlJ10gPSAnRXYmZWFjdXRlO25lbWVudCBnJmVhY3V0ZTtuJmVhY3V0ZTtyJmVhY3V0ZTsgbG9yc3F1JiMwMzk7dW4gZmljaGllciBlc3Qgc3VwcHJpbSZlYWN1dGU7JzsKJGxhbmdbJ3RpdGxlX3VzZXJ0YWdfb251cGxvYWQnXSA9ICdUYWcgZCZlYWN1dGU7ZmluaSBwYXIgbCYjMDM5O3V0aWxpc2F0ZXVyIGEgYXBwZWxsZXIgYXByJmVncmF2ZTtzIHVuIHQmZWFjdXRlO2wmZWFjdXRlO2NoYXJnZW1lbnQgdGVybWluJmVhY3V0ZTsmbmJzcDsnOwokbGFuZ1snbm9uZSddID0gJ0F1Y3VuJzsKJGxhbmdbJ21hdGNoZXNmb3VuZCddID0gJ1ImZWFjdXRlO3N1bHRhdHMgdHJvdXYmZWFjdXRlO3MnOwokbGFuZ1snZmlsdGVyJ10gPSAnRmlsdHJlJzsKJGxhbmdbJ3RpdGxlX3JlZGlyZWN0b251cGxvYWQnXSA9ICdSZWRpcmlnZXIgdmVycyBsYSBwYWdlIGlkL2FsaWFzIGF1IGNoYXJnZW1lbnQgcGFyIGwmIzAzOTt1dGlsaXNhdGV1ciZuYnNwOyc7CiRsYW5nWydkZXRhaWxzJ10gPSAnRCZlYWN1dGU7dGFpbHMnOwokbGFuZ1snY29uZmlybV9wcmVmZXJlbmNlcyddID0gJyZFY2lyYzt0ZXMtdm91cyBzdXIgZGUgdm91bG9pciBtb2RpZmllciBsZXMgcHImZWFjdXRlO2YmZWFjdXRlO3JlbmNlcyA/JzsKJGxhbmdbJ2Vycm9yX25vZmlsZXN1cGxvYWRlZCddID0gJ1BhcyBkZSBmaWNoaWVyIHQmZWFjdXRlO2wmZWFjdXRlO2NoYXJnJmVhY3V0ZTsuJzsKJGxhbmdbJ3Byb21wdF9yZXBsYWNlJ10gPSAnQXV0b3Jpc2VyIGwmIzAzOTsmZWFjdXRlO2NyYXNlbWVudCBkZSBmaWNoaWVyJzsKJGxhbmdbJ2luZm9fcmVwbGFjZSddID0gJ1JlbXBsYWNlciB0b3V0IGZpY2hpZXIgcG9ydGFudCBsZSBtJmVjaXJjO21lIG5vbSAobCYjMDM5O2lkZW50aWZpYW50IG5lIGNoYW5nZSBwYXMpJzsKJGxhbmdbJ3BhcmFtX25vX2luaXRpYWwnXSA9ICdOZSBwYXMgYWZmaWNoZXIgbGVzIHByZW1pZXJzIHImZWFjdXRlO3N1bHRhdHMgbG9yc3F1ZSBsZSBmaWx0cmUgZXN0IGFjdGlmJzsKJGxhbmdbJ3BhcmFtX2tleSddID0gJ0ZvdXJuaSB1bmUgY2xlZiBhZGRpdGlvbm5lbGxlIGF1IG1vZHVsZSBwb3VyIG9yZ2FuaXNlciBsZXMgdXBsb2Fkcy4gQ2V0dGUgY2xlZiBwZXV0ICZlY2lyYzt0cmUgdW5lIGNoYSZpY2lyYztuZSBkZSBjYXJhY3QmZWdyYXZlO3JlIGR1IHR5cGUgOiAmIzAzOTtmZXVzZXJzOnVpZCYjMDM5OyBldGMuPGJyLz4NCkNlIHBhcmFtJmVncmF2ZTt0cmUgZXN0IGhhYml0dWVsbGVtZW50IG4mZWFjdXRlO2Nlc3NhaXJlIHVuaXF1ZW1lbnQgbG9yc3F1ZSBjZSBtb2R1bGUgZXN0IGVtYmFycXUmZWFjdXRlOyBkYW5zIHVuIGF1dHJlIG1vZHVsZS4nOwokbGFuZ1sncGFyYW1fbm9hdXRob3InXSA9ICdNYXNxdWUgbGUgY2hhbXAgYXV0ZXVyIGR1IGZvcm11bGFpcmUgZGUgY2hhcmdlbWVudC4gQ2UgcGFyYW0mZWdyYXZlO3RyZSBlc3QgdmFsYWJsZSB1bmlxdWVtZW50IGVuIG1vZGU9JiMwMzk7dXBsb2FkJiMwMzk7LiBTaSBsZSBtb2R1bGUgRkVVIGVzdCBpbnN0YWxsJmVhY3V0ZTsgZXQgcXUmIzAzOTt1biB1dGlsaXNhdGV1ciBlc3QgY29ubmVjdCZlYWN1dGU7LCB1biBjaGFtcCBjYWNoJmVhY3V0ZTsgdmEgbWFpbnRlbmlyIGxlIG5vbSBkJiMwMzk7dXRpbGlzYXRldXIgYWN0dWVsbGVtZW50IGNvbm5lY3QmZWFjdXRlOyc7CiRsYW5nWydwYXJhbV91cGxvYWRfaWQnXSA9ICdTcCZlYWN1dGU7Y2lmaWUgdW4gZmljaGllciB1bmlxdWUgcG91ciBsJiMwMzk7VVJMIG91IGxlIGxpZW4gb3UgbGUgbW9kZSAoY2YgY2ktZGVzc3VzKSc7CiRsYW5nWydwYXJhbV9kZXRhaWx0ZW1wbGF0ZSddID0gJ1V0aWxpc2VyIHVuIG1vZCZlZ3JhdmU7bGUgZGUgY2Ugbm9tIHBvdXIgbGUgcmFwcG9ydCBkJmVhY3V0ZTt0YWlsbCZlYWN1dGU7Lic7CiRsYW5nWydwYXJhbV90ZW1wbGF0ZSddID0gJ1V0aWxpc2VyIHVuIG1vZCZlZ3JhdmU7bGUgZGUgY2Ugbm9tIHBvdXIgY2UgcmFwcG9ydCBvdSBmb3JtdWxhaXJlLiBMZSBtb2RlIGVzdCB1dGlsaXMmZWFjdXRlOyBwb3VyIGQmZWFjdXRlO3Rlcm1pbmVyIHF1ZWwgdHlwZSBkZSBtb2QmZWdyYXZlO2xlIGVzdCByZXF1aXMsIHB1aXMgdW4gbm9tIGNvcnJlc3BvbmRhbnQgZXN0IGVmZmVjdHUmZWFjdXRlOyBhdSBzZWluIGRlIGNlIHR5cGUuJzsKJGxhbmdbJ3BhcmFtX2ZpbHRlciddID0gJ0FmZmljaGUgbGUgZm9ybXVsYWlyZSBkZSBmaWx0cmFnZSc7CiRsYW5nWydwYXJhbV9ub19pbnRpdGlhbCddID0gJ1V0aWxlIHVuaXF1ZW1lbnQgbG9yc3F1ZSBsZSBwYXJhbSZlZ3JhdmU7dHJlIGZpbHRyZSBlc3QgZm91cm5pLCBvdSBvbiBwYXIgZCZlYWN1dGU7ZmF1dCwgdGhpcyBwYXJhbWV0ZXIgaW5kaWNhdGVzIHdldGhlciBpbml0aWFsIHJlc3VsdHMgc2hvdWxkIGJlIHJldHVybmVkJzsKJGxhbmdbJ3BhcmFtX2ZpbGV0eXBlcyddID0gJ0FmZmljaGUgdW5pcXVlbWVudCBsZXMgZmljaGllcnMgZG9udCBsZSB0eXBlIGNvcnJlc3BvbmQgJmFncmF2ZTsgY2V0dGUgbGlzdGUgc2VwYXImZWFjdXRlO2UgcGFyIGRlcyB2aXJndWxlcyc7CiRsYW5nWydwYXJhbV9zb3J0b3JkZXInXSA9ICcgIDxwPk9yZHJlcyBkZSB0cmkNCiAgPHVsPg0KICA8bGk+PGVtPmRhdGVfYXNjPC9lbT4gLSBUcmkmZWFjdXRlOyBwYXIgZGF0ZSBjcm9pc3NhbnRlPC9saT4NCiAgPGxpPjxlbT5kYXRlX2Rlc2M8L2VtPiAtIFRyaSZlYWN1dGU7IHBhciBkYXRlIGQmZWFjdXRlO2Nyb2lzc2FudGU8L2xpPg0KICA8bGk+PGVtPm5hbWVfYXNjPC9lbT4gLSBUcmkmZWFjdXRlOyBhbHBoYWImZWFjdXRlO3RpcXVlbWVudCBwYXIgb3JkcmUgY3JvaXNzYW50PC9saT4NCiAgPGxpPjxlbT5uYW1lX2Rlc2M8L2VtPiAtVHJpJmVhY3V0ZTsgYWxwaGFiJmVhY3V0ZTt0aXF1ZW1lbnQgcGFyIG9yZHJlIGQmZWFjdXRlO2Nyb2lzc2FudDwvbGk+DQogIDxsaT48ZW0+c2l6ZV9hc2M8L2VtPiAtIFRyaSZlYWN1dGU7IHBhciB0YWlsbGUgY3JvaXNzYW50ZTwvbGk+DQogIDxsaT48ZW0+c2l6ZV9kZXNjPC9lbT4gLSBUcmkmZWFjdXRlOyBwYXIgdGFpbGxlIGQmZWFjdXRlO2Nyb2lzc2FudGU8L2xpPg0KICA8bGk+PGVtPmRlc2NfYXNjPC9lbT4gLSBUcmkmZWFjdXRlOyBwYXIgZGVzY3JpcHRpb24gY3JvaXNzYW50ZS9saT4NCiAgPGxpPjxlbT5kZXNjX2Rlc2M8L2VtPiAtIFRyaSZlYWN1dGU7IHBhciBkZXNjcmlwdGlvbiBkJmVhY3V0ZTtjcm9pc3NhbnRlPC9saT4NCiAgPGxpPjxlbT5hdXRob3JfYXNjPC9lbT4gLSBUcmkmZWFjdXRlOyBwYXIgYXV0ZXVyIGNyb2lzc2FudDwvbGk+DQogIDxsaT48ZW0+YXV0aG9yX2Rlc2M8L2VtPiAtIFRyaSZlYWN1dGU7IHBhciBhdXRldXIgZCZlYWN1dGU7Y3JvaXNzYW50PC9saT4NCiAgPGxpPjxlbT5pcF9hc2M8L2VtPiAtIFRyaSZlYWN1dGU7IHBhciBhZHJlc3NlIElQIGNyb2lzc2FudGU8L2xpPg0KICA8bGk+PGVtPmlwX2Rlc2M8L2VtPiAtIFRyaSZlYWN1dGU7IHBhciBhZHJlc3NlIElQIGQmZWFjdXRlO2Nyb2lzc2FudGU8L2xpPg0KICA8bGk+PGVtPnJhbmRvbTwvZW0+IC0gVHJpIGFsJmVhY3V0ZTthdG9pcmU8L2xpPg0KICA8L3VsPg0KICA8L3A+JzsKJGxhbmdbJ3BhcmFtX2xpc3Rpbmd0ZW1wbGF0ZSddID0gJ01vZCZlZ3JhdmU7bGUgJmFncmF2ZTsgdXRpbGlzZXIgcG91ciBsaXN0ZXIgbGVzIGNhdCZlYWN1dGU7Z29yaWVzIGFwciZlZ3JhdmU7cyB1biBjbGlxdWUgZGVwdWlzIGxhIHBhZ2UgZGUgciZlYWN1dGU7c3VtJmVhY3V0ZTsgZGVzIGNhdCZlYWN1dGU7Z29yaWVzJzsKJGxhbmdbJ3BhcmFtX2xpc3Rpbmdzb3J0b3JkZXInXSA9ICdPcmRyZSBkZSB0cmkgKGZhJmNjZWRpbDtvbiBwYXJhbV9zb3J0b3JkZXIpICZhZ3JhdmU7IHV0aWxpc2VyIHBvdXIgbGEgbGlzdGUgZGVzIGNhdCZlYWN1dGU7Z29yaWVzIGFwciZlZ3JhdmU7cyB1biBjbGlxdWUgZGVwdWlzIGxhIHBhZ2UgZGUgciZlYWN1dGU7c3VtJmVhY3V0ZTsgZGVzIGNhdCZlYWN1dGU7Z29yaWVzJzsKJGxhbmdbJ3BhcmFtX2ZpbGVleHRlbnNpb25zJ10gPSAnVmFsaWRlIHVuaXF1ZW1lbnQgbG9yc3F1ZSBtb2RlPSZxdW90O3VwbG9hZCZxdW90OywgY2UgcGFyYW0mZWdyYXZlO3RyZSBsaW1pdGUgbGUgdHlwZSBkZSBmaWNoaWVycyBxdWkgcGV1dmVudCAmZWNpcmM7dHJlIHQmZWFjdXRlO2wmZWFjdXRlO2NoYXJnJmVhY3V0ZTtzLiBJbCBzdXJwYXNzZSB0b3V0IHImZWFjdXRlO2dsYWdlIGRlcyBwciZlYWN1dGU7ZiZlYWN1dGU7cmVuY2VzIGR1IG1vZHVsZS4nOwokbGFuZ1sncGFyYW1fY291bnQnXSA9ICdQZXJtZXQgZGUgbGlzdGVyIHNldWxlbWVudCBsZXMgTiBwcmVtaWVycyByJmVhY3V0ZTtzdWx0YXRzIGRlIGxhIHJlY2hlcmNoZSAoY291bnQ9JnF1b3Q7TiZxdW90OykgZXQgZCYjMDM5O2FtJmVhY3V0ZTtsaW9yZXIgYWluc2kgbGEgbWlzZSBlbiBwYWdlLic7CiRsYW5nWydwYXJhbV9jYXRlZ29yeSddID0gJ2NhdGVnb3J5PSZxdW90O25hbWUmcXVvdDsNCjxwPjxiPk5vdGU6PC9iPiBDYXRlZ29yeSBwZXV0ICZlY2lyYzt0cmUgJnF1b3Q7YWxsJnF1b3Q7LCBwb3VyIGFmZmljaGVyIHRvdXRlcyBsZXMgY2F0JmVhY3V0ZTtnb3JpZXMgPGVtPmxpc3RhYmxlczwvZW0+PC9wPic7CiRsYW5nWydwYXJhbV9tb2RlJ10gPSAnICA8dWw+DQogIDxsaT48ZW0+ZGV0YWlsZWQ8L2VtPiAtIEFmZmljaGUgdW5lIGxpc3RlIGQmZWFjdXRlO3RhaWxsJmVhY3V0ZTsgZGUgdG91dCBsZXMgZmljaGllcnMgZGFucyB1bmUgY2F0JmVhY3V0ZTtnb3JpZTwvbGk+DQogIDxsaT48ZW0+dXBsb2FkPC9lbT4gLSBBZmZpY2hlIHVuIGZvcm11bGFpcmUgcG91ciBwZXJtZXR0cmUgYXV4IEZFVSBkZSBjaGFyZ2VyIGRlcyBmaWNoaWVyczwvbGk+DQogIDxsaT48ZW0+dXJsIDxpPm9yPC9pPiBsaW5rPC9lbT4gLSBBZmZpY2hlIHVuIGxpZW4gdmVycyB1biBmaWNoaWVyPC9saT4NCiAgPGxpPjxlbT5zdW1tYXJ5PC9lbT4gLSBBZmZpY2hlIHVuZSBsaXN0ZSByJmVhY3V0ZTtzdW0mZWFjdXRlO2UgZGUgdG91cyBsZXMgZmljaGllcnMgZGFucyB1bmUgY2F0JmVhY3V0ZTtnb3JpZTwvbGk+DQogIDxsaT48ZW0+c2luZ2xlPC9lbT4gLSBBZmZpY2hlIHVuIHJhcHBvcnQgZCZlYWN1dGU7dGFpbGwmZWFjdXRlOyBjb25jZXJuYW50IHVuIHNldWwgY2hhcmdlbWVudDwvbGk+DQogIDxsaT48ZW0+c2luZ2xlc3VtbWFyeTwvZW0+IC0gQWZmaWNoZSB1biByYXBwb3J0IHImZWFjdXRlO3N1bSZlYWN1dGU7IGNvbmNlcm5hbnQgdW4gc2V1bCBjaGFyZ2VtZW50PC9saT4NCiAgPC91bD4nOwokbGFuZ1sncGFyYW1fc2VsZWN0Zm9ybSddID0gJ1F1YW5kIGxlIG1vZGUgJiMwMzk7c2VsZWN0JiMwMzk7IGVzdCB1dGlsaXMmZWFjdXRlOywgY2UgcGFyYW0mZWdyYXZlO3RyZSBzcCZlYWN1dGU7Y2lmaWUgbGUgbCYjMDM5O2lkIChpZGVudGlmaWFudCkgZGUgbGEgZmV1aWxsZSBwYXJlbnQuIFV0aWxpc2VyIHBvdXIgcGFzc2VyIGxlIHBhcmFtJmVncmF2ZTt0cmUuJzsKJGxhbmdbJ3BhcmFtX3NlbGVjdG5hbWUnXSA9ICdRdWFuZCBsZSBtb2RlICYjMDM5O3NlbGVjdCYjMDM5OyBlc3QgdXRpbGlzJmVhY3V0ZTssIGNlIHBhcmFtJmVncmF2ZTt0cmUgc3AmZWFjdXRlO2NpZmllIGxlIG5vbSBkdSBjaGFtcCc7CiRsYW5nWydwYXJhbV9zZWxlY3R2YWx1ZSddID0gJ1F1YW5kIGxlIG1vZGUgJiMwMzk7c2VsZWN0JiMwMzk7IGVzdCB1dGlsaXMmZWFjdXRlOywgY2UgcGFyYW0mZWdyYXZlO3RyZSBzcCZlYWN1dGU7Y2lmaWUgbGEgdmFsZXVyIHBhciBkJmVhY3V0ZTtmYXV0IGR1IGNoYW1wJzsKJGxhbmdbJ3BhcmFtX3NlbGVjdG5vbmUnXSA9ICdRdWFuZCBsZSBtb2RlICYjMDM5O3NlbGVjdCYjMDM5OyBlc3QgdXRpbGlzJmVhY3V0ZTssIGNlIHBhcmFtJmVncmF2ZTt0cmUgaW5kaXF1ZSBzaSAmIzAzOTtub25lJiMwMzk7IGVzdCB1biBjaG9peCB2YWxpZGUnOwokbGFuZ1sncmV0dXJudG9tb2R1bGUnXSA9ICdSZXRvdXIgYXUgcGFubmVhdSBkdSBtb2R1bGUnOwokbGFuZ1snZXJyb3Jfbm9jYXRlZ29yaWVzJ10gPSAnSWwgbiYjMDM5O3kgYSBwYXMgZGUgY2F0JmVhY3V0ZTtnb3JpZXMgZCZlYWN1dGU7ZmluaWVzJzsKJGxhbmdbJ3RpdGxlX2VuZm9yY2VleHRlbnNpb25zJ10gPSAnRXhpZ2VyIGRlcyBleHRlbnNpb25zIHN1ciB0b3VzIGxlcyBmaWNoaWVycyBjaGFyZyZlYWN1dGU7cyZuYnNwOyc7CiRsYW5nWydyZXN0b3JlZGVmYXVsdHNjb25maXJtJ10gPSAnQ2V0dGUgb3AmZWFjdXRlO3JhdGlvbiB2YSByZXN0YXVyZXIgbGVzIG1vZCZlZ3JhdmU7bGVzIHBhciBkJmVhY3V0ZTtmYXV0LiBUb3V0ZXMgbGVzIG1vZGlmaWNhdGlvbnMgZGUgdm9zIG1vZCZlZ3JhdmU7bGVzIHNlcm9udCBwZXJkdWVzLiAmRWNpcmM7dGVzLXZvdXMgc3VyID8nOwokbGFuZ1sndGh1bWJuYWlsJ10gPSAnVmlnbmV0dGUnOwokbGFuZ1snbmV3dGh1bWJuYWlsJ10gPSAnVXBsb2RlciB1bmUgbm91dmVsbGUgdmlnbmV0dGUnOwokbGFuZ1snaW5mb19zdW1tYXJ5J10gPSAnVW5lIGRlc2NyaXB0aW9uIGJyJmVncmF2ZTt2ZSBkdSBmaWNoaWVyIChzaSB2aWRlLCBsZSBub20gZHUgZmljaGllciBzYW5zIGwmIzAzOTtleHRlbnNpb24gZXN0IHV0aWxpcyZlYWN1dGU7KSc7CiRsYW5nWydpbmZvX2NhdGVnb3J5bmFtZSddID0gJ1VuIG5vbSBjb3VydCBkZSB2b3RyZSBjYXQmZWFjdXRlO2dvcmllIChodW1haW5lbWVudCBjb21wciZlYWN1dGU7aGVuc2libGUpJzsKJGxhbmdbJ2luZm9fY2F0ZWdvcnlkZXNjJ10gPSAnVW5lIGRlc2NyaXB0aW9uIGRlIHZvdHJlIGNhdCZlYWN1dGU7Z29yaWUnOwokbGFuZ1snaW5mb19jYXRlZ29yeXBhdGgnXSA9ICdMZSBub20gZGUgciZlYWN1dGU7cGVydG9pcmUgJmFncmF2ZTsgbCYjMDM5O2ludCZlYWN1dGU7cmlldXIgZHUgciZlYWN1dGU7cGVydG9pcmUgZGUgY2hhcmdlbWVudCBxdWkgc2VyYSB1dGlsaXMmZWFjdXRlOyBwb3VyIHN0b2NrZXIgbGVzIGZpY2hpZXJzIGRhbnMgY2V0dGUgY2F0JmVhY3V0ZTtnb3JpZS4gU2kgbGUgciZlYWN1dGU7cGVydG9pcmUgbiYjMDM5O2V4aXN0ZSBwYXMgZCZlYWN1dGU7aiZhZ3JhdmU7LCBpbCBwZXV0ICZlY2lyYzt0cmUgY3ImZWFjdXRlOyZlYWN1dGU7Lic7CiRsYW5nWydpbmZvX2Rlc3RuYW1lJ10gPSAnTm91dmVhdSBub20gZGUgZmljaGllciBhcHImZWdyYXZlO3MgdCZlYWN1dGU7bCZlYWN1dGU7Y2hhcmdlbWVudCAocGVybWV0IGRlIHJlbm9tbWVyIGxlIGZpY2hpZXIgYXUgdCZlYWN1dGU7bCZlYWN1dGU7Y2hhcmdlbWVudCkuIExhaXNzZXIgdmlkZSBwb3VyIGNvbnNlcnZlciBsZSBub20gZGUgZmljaGllciBvcmlnaW5hbC4nOwokbGFuZ1snZXJyb3JfY2FudGNyZWF0ZWRpcmVjdG9yeSddID0gJ0ltcG9zc2libGUgZGUgY3ImZWFjdXRlO2VyIGNlIHImZWFjdXRlO3BlcnRvaXJlJzsKJGxhbmdbJ2Vycm9yX25vbWFpbGVybW9kdWxlJ10gPSAnTGUgbW9kdWxlIENNU21haWxlciBuZSBwZXV0ICZlY2lyYzt0cmUgY29udGFjdCZlYWN1dGU7JzsKJGxhbmdbJ3VwbG9hZF9ub3RpZmljYXRpb24nXSA9ICdVbiBub3V2ZWF1IGZpY2hpZXIgYSAmZWFjdXRlO3QmZWFjdXRlOyBjaGFyZyZlYWN1dGU7ICEnOwokbGFuZ1sndGl0bGVfZW1haWxfb25fdXBsb2FkJ10gPSAnRW52b3llciBsZXMgbm90aWZpY2F0aW9ucyBkZSBjaGFyZ2VtZW50ICZhZ3JhdmU7Jm5ic3A7JzsKJGxhbmdbJ2VtYWlsX3RlbXBsYXRlJ10gPSAnTW9kZWxlIGRlIGNvdXJyaWVsJzsKJGxhbmdbJ3RpdGxlX2R1bW15X2luZGV4X2h0bWwnXSA9ICdDciZlYWN1dGU7ZXIgdW4gaW5kZXguaHRtbCBkYW5zIGNoYXF1ZSByJmVhY3V0ZTtwZXJ0b2lyZSA/PGJyLz48ZW0+dW4gaW5kZXguaHRtbCBleGlzdGFudCwgcmVzdGVyYTwvZW0+Jm5ic3A7JzsKJGxhbmdbJ2Fib3V0J10gPSAnQSBwcm9wb3MgZGUnOwokbGFuZ1snZXJyb3JfcGVybWlzc2lvbmRlbmllZCddID0gJ0FjYyZlYWN1dGU7cyByZWZ1cyZlYWN1dGU7LiBWJmVhY3V0ZTtyaWZpZXIgdm9zIGRyb2l0cy4nOwokbGFuZ1snZXJyb3JfY291bGRub3R3cml0ZSddID0gJ0ltcG9zc2libGUgZCYjMDM5OyZlYWN1dGU7Y3JpcmUnOwokbGFuZ1snYWRkY2F0ZWdvcnknXSA9ICdBam91dGVyIHVuZSBjYXQmZWFjdXRlO2dvcmllJzsKJGxhbmdbJ2FsbCddID0gJ1RvdXQoZSlzJzsKJGxhbmdbJ2FyZXlvdXN1cmUnXSA9ICcmRWNpcmM7dGVzLXZvdXMgc3VyID8nOwokbGFuZ1snYXV0aG9yJ10gPSAnQXV0ZXVyJzsKJGxhbmdbJ2NhbmNlbCddID0gJ0FubnVsZXInOwokbGFuZ1snY2Fubm90bW9kaWZ5cGF0aCddID0gJyhsZSBjaGVtaW4gbmUgcGV1dCAmZWNpcmM7dHJlIG1vZGlmaSZlYWN1dGU7KSc7CiRsYW5nWydjYXRlZ29yaWVzJ10gPSAnQ2F0JmVhY3V0ZTtnb3JpZXMnOwokbGFuZ1snY2F0ZWdvcnknXSA9ICdDYXQmZWFjdXRlO2dvcmllJzsKJGxhbmdbJ21lc3NhZ2VfY2F0ZWdvcnlhZGRlZCddID0gJ0NhdCZlYWN1dGU7Z29yaWUgYWpvdXQmZWFjdXRlO2UgYXZlYyBzdWNjJmVncmF2ZTtzJzsKJGxhbmdbJ2RhdGUnXSA9ICdEYXRlICc7CiRsYW5nWydkYXRldXBsb2FkZWQnXSA9ICdEYXRlIGRlIGNoYXJnZW1lbnQnOwokbGFuZ1snZGVmYXVsdCddID0gJ1BhciBkJmVhY3V0ZTtmYXV0JzsKJGxhbmdbJ2RlbGV0ZSddID0gJ1N1cHByaW1lcic7CiRsYW5nWydkZXNjcmlwdGlvbiddID0gJ0Rlc2NyaXB0aW9uICc7CiRsYW5nWydkZXN0bmFtZSddID0gJ1QmZWFjdXRlO2wmZWFjdXRlO2NoYXJnZXIgZW4gdGFudCBxdWUuLi4nOwokbGFuZ1snZGV0YWlsX3RlbXBsYXRlJ10gPSAnTW9kJmVncmF2ZTtsZSBkZSBkJmVncmF2ZTt0YWlscyc7CiRsYW5nWydkb3dubG9hZGVkJ10gPSAnTGUgZmljaGllciAlcyAmYWdyYXZlOyAmZWFjdXRlO3QmZWFjdXRlOyB0JmVhY3V0ZTtsJmVhY3V0ZTtjaGFyZyZlYWN1dGU7Lic7CiRsYW5nWydkb3dubG9hZHMnXSA9ICdUJmVhY3V0ZTtsJmVhY3V0ZTtjaGFyZ2VtZW50cyc7CiRsYW5nWydlZGl0J10gPSAnTW9kaWZpZXInOwokbGFuZ1snZWRpdGNhdGVnb3J5J10gPSAnTW9kaWZpZXIgY2F0JmVhY3V0ZTtnb3JpZSc7CiRsYW5nWydlZGl0dXBsb2FkJ10gPSAnTW9kaWZpZXIgY2hhcmdlbWVudCc7CiRsYW5nWydlcnJvciddID0gJ0VycmV1ciAhJzsKJGxhbmdbJ2Vycm9yX3BhdGhpbnVzZSddID0gJ1VuZSBjYXQmZWFjdXRlO2dvcmllIHV0aWxpc2FudCBjZSBjaGVtaW4gJmVhY3V0ZTt4aXN0ZSBkJmVhY3V0ZTtqJmFncmF2ZTsnOwokbGFuZ1snZXJyb3JfY2F0ZWdvcnlleGlzdHMnXSA9ICdFcnJldXIgOiBDZXR0ZSBjYXQmZWFjdXRlO2dvcmllIGV4aXN0ZSBkJmVhY3V0ZTtqJmFncmF2ZTsnOwokbGFuZ1snZXJyb3JfY2F0ZWdvcnlub3RlbXB0eSddID0gJ0VycmV1ciA6IEltcG9zc2libGUgZGUgc3VwcHJpbWVyIHVuZSBjYXQmZWFjdXRlO2dvcmllIHF1aSBuJiMwMzk7ZXN0IHBhcyB2aWRlJzsKJGxhbmdbJ2Vycm9yX2NhdGVnb3J5bm90Zm91bmQnXSA9ICdFcnJldXIgOiBDYXQmZWFjdXRlO2dvcmllIG5vbiB0cm91diZlYWN1dGU7ZSAhJzsKJGxhbmdbJ2Vycm9yX2RiZXJyb3InXSA9ICdFcnJldXIgOiBFcnJldXIgZGUgYmFzZSBkZSBkb25uJmVhY3V0ZTtlcyAhJzsKJGxhbmdbJ2Vycm9yX2VtcHR5Y2F0ZWdvcnknXSA9ICdFcnJldXIgOiBDYXQmZWFjdXRlO2dvcmllIHZpZGUgISc7CiRsYW5nWydlcnJvcl9lbXB0eXBhdGgnXSA9ICdFcnJldXIgOiBDaGVtaW4gdmlkZSAhJzsKJGxhbmdbJ2Vycm9yX2ZpbGVleGlzdHMnXSA9ICdFcnJldXIgOiBMZSBmaWNoaWVyICVzICZlYWN1dGU7eGlzdGUgZCZlYWN1dGU7aiZhZ3JhdmU7ICEnOwokbGFuZ1snZXJyb3JfZmlsZW5vdGZvdW5kJ10gPSAnRXJyZXVyIDogTGUgZmljaGllciAlcyBuJiMwMzk7YSBwYXMgJmVhY3V0ZTt0JmVhY3V0ZTsgdHJvdXYmZWFjdXRlOyAhJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ0VycmV1ciA6IEluc3VmZmlzYW5jZSBkZSBwYXJhbSZlZ3JhdmU7dHJlcyBmb3VybmlzIGF1IG1vZHVsZSAhJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRhdXRob3InXSA9ICdFcnJldXIgOiBBdXRldXIgbm9uIHZhbGlkZSAob3UgdmlkZSkuJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRjYXRlZ29yeSddID0gJ0VycmV1ciA6IGNhdCZlYWN1dGU7Z29yaWUgbm9uIHZhbGlkZSAob3UgdmlkZSkuJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRkZXNjcmlwdGlvbiddID0gJ0VycmV1ciA6IEQmZWFjdXRlO3NjcmlwdGlvbiBpbnZhbGlkZSAob3UgdmlkZSkuJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRmaWxlJ10gPSAnRXJyZXVyIDogTm9tIGRlIGZpY2hpZXIgbm9uIHZhbGlkZSAob3UgdmlkZSkuJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1cGxvYWRmaWxlbmFtZSddID0gJ0VycmV1ciA6IExlcyBmaWNoaWVycyBhdmVjIGNlIG5vbSAocHJvYmFibGVtZW50IGV4dGVuc2lvbikgbmUgc29udCBwYXMgYXV0b3JpcyZlYWN1dGU7ZXMgKCVzKS4nOwokbGFuZ1snZXJyb3JfaW52YWxpZHVwbG9hZGlkJ10gPSAnRXJyZXVyIDogSWRlbnRpZmlhbnQgZGUgY2hhcmdlbWVudCBpbnZhbGlkZSc7CiRsYW5nWydlcnJvcl9ub2ZpbGVzJ10gPSAnRXJyZXVyIDogUGFzIGRlIEZpY2hpZXJzIGNvcnImZWFjdXRlO3Nwb25kYW50ICEnOwokbGFuZ1snZmlsZXMnXSA9ICdGaWNoaWVycyc7CiRsYW5nWydmaXhtZSddID0gJ0ZpeGUgbGVzIEVzcGFjZXMnOwokbGFuZ1snZnJpZW5kbHluYW1lJ10gPSAnR2VzdGlvbiBkZSBmaWNoaWVycyAoY2hhcmdlbWVudC91cGxvYWQpJzsKJGxhbmdbJ2hlbHAnXSA9ICc8aDM+UXVlIGZhaXQgY2UgbW9kdWxlID88L2gzPg0KPHA+SWwgcyYjMDM5O2FnaXQgZCYjMDM5O3VuIG1vZHVsZSBwb3VyIHBlcm1ldHRyZSBhdXggdXRpbGlzYXRldXJzIGRlIHRyYW5zZiZlYWN1dGU7cmVyIGV0IGRlIHQmZWFjdXRlO2wmZWFjdXRlO2NoYXJnZXIgZGVzIGZpY2hpZXJzIHZlcnMgZXQgJmFncmF2ZTsgcGFydGlyIGRlIHZvdHJlIHNpdGUuIElsIGdhcmRlIGxhIHRyYWNlIGRlIHF1aSBhIHRyYW5zZiZlYWN1dGU7ciZlYWN1dGU7IHVuIGZpY2hpZXIgZXQgcXVpIGEgdCZlYWN1dGU7bCZlYWN1dGU7Y2hhcmcmZWFjdXRlOy4gRGUgcGx1cywgdm91cyBwb3V2ZXogdHJpZXIgbGVzIGRvc3NpZXJzIGVuIGNhdCZlYWN1dGU7Z29yaWVzIGV0IGcmZWFjdXRlO3JlciBsZXMgZmljaGllcnMgcXVpIG9udCAmZWFjdXRlO3QmZWFjdXRlOyB0cmFuc2YmZWFjdXRlO3ImZWFjdXRlO3MgY29tbWUgY2hhcXVlIGFkbWluaXN0cmF0ZXVyIGFpbWUgbGUgZmFpcmUuPC9wPiANCjxoMz5Db21tZW50IGwmIzAzOTt1dGlsaXNlciA/PC9oMz4NCjxwPjxzdHJvbmc+QXR0ZW50aW9uPC9zdHJvbmc+IC0gTGEgYm9ubmUgbWFyY2hlIGRlIGNlIG1vZHVsZSBkJmVhY3V0ZTtwZW5kIGRlIHBsdXNpZXVycyB2YXJpYWJsZXMgcGhwLiBDZWxhIGluY2x1cyA8ZW0+KG1haXMgcGFzIHNldWxlbWVudCk8L2VtPiBwaHAmIzAzOTtzIG1lbW9yeV9saW1pdCwgc2FmZV9tb2RlLCBmaWxlX3VwbG9hZHMsIHVwbG9hZHNfbWF4X2ZpbGVzaXplIGV0IG1heF9leGVjdXRpb25fdGltZS4gQ2VzIHZhcmlhYmxlcyBkZXZyb250IHBldXQtJmVjaXJjO3RyZSAmZWNpcmM7dHJlIGFqdXN0JmVhY3V0ZTtlcyBwb3VyIHF1ZSBsZSBtb2R1bGUgZm9uY3Rpb25uZSBjb3JyZWN0ZW1lbnQgc3VyIHZvdHJlIHNpdGUuIElsIHZvdXMgZXN0IGNvbnNlaWxsJmVhY3V0ZTsgZGUgdHJhdmFpbGxlciBhdmVjIHZvdHJlIGgmZWFjdXRlO2JlcmdldXIgb3UgYWRtaW5pc3RyYXRldXIgcG91ciBjb25maWd1cmVyIGNlcyBwYXJhbSZlZ3JhdmU7dHJlcy48L3A+DQo8cD5Qb3VyIHV0aWxpc2VyIGNlIG1vZHVsZSBldCBwZXJtZXR0cmUgYXV4IHV0aWxpc2F0ZXVycyBkZSBjaGFyZ2VyIGRlcyBmaWNoaWVycyBzdXIgdm90cmUgc2l0ZSwgdm91cyBkZXZyaWV6IGluc3RhbGxlciBsZSBtb2R1bGUgZXQsIGVuc3VpdGUsIGNyJmVhY3V0ZTtlciB1bmUgb3UgcGx1c2lldXJzIGNhdCZlYWN1dGU7Z29yaWVzLiBOJiMwMzk7b3VibGlleiBwYXMgZGUgY3ImZWFjdXRlO2VyIGQmIzAzOTthYm9yZCBsZXMgciZlYWN1dGU7cGVydG9pcmVzLiBFbnN1aXRlIGFqb3V0ZXIgc3VyIHZvcyBwYWdlIHVuIHRhZyAoYmFsaXNlKSBkdSBzdHlsZSB7Y21zX21vZHVsZSBtb2R1bGU9JnF1b3Q7VXBsb2FkcyZxdW90OyBjYXRlZ29yeT0mcXVvdDtzb21lY2F0ZWdvcnkmcXVvdDsgbW9kZT0mcXVvdDtzb21lbW9kZSZxdW90O30uIE8mdWdyYXZlOyBtb2RlIGNvcnJlc3BvbmQgJmFncmF2ZTsgdW4gZGVzIG1vZGVzIGxpc3QmZWFjdXRlO3MgZW4gYmFzLiBMZSByJmVhY3V0ZTtzdWx0YXQgc2VyYSBkaWZmJmVhY3V0ZTtyZW50IGVuIGZvbmN0aW9uIGR1IG1vZGUgY2hvaXNpLjwvcD4NCjxwPkNlIG1vZHVsZSBwZXV0IHV0aWxpc2VyIGxlIG1vZHVsZSBGcm9udEVuZFVzZXIgKEZFVSkgKG9wdGlvbmVsKSBwb3VyIHImZWFjdXRlO2N1cCZlYWN1dGU7cmVyIGxlcyBpbmZvcm1hdGlvbnMgY29uY2VybmFudCBsZXMgdXRpbGlzYXRldXJzIGFjdHVlbGxlbWVudCBjb25uZWN0JmVhY3V0ZTtzLjwvcD4NCjxoMz5QZXJtaXNzaW9uczwvaDM+DQo8dWw+DQo8bGk+PGVtPk1hbmFnZSBVcGxvYWRzPC9lbT4gOiBQZXJtaXNzaW9uIHJlcXVpc2VzIHBvdXIgZyZlYWN1dGU7cmVyIGxlcyBjYXQmZWFjdXRlO2dvcmllcyBldCBsZXMgZmljaGllcnMuPC9saT4NCjxsaT48ZW0+TW9kaWZ5IFRlbXBsYXRlczwvZW0+IDogUGVybWlzc2lvbiByZXF1aXNlIHBvdXIgJmVhY3V0ZTtkaXRlciBsZXMgbW9kJmVncmF2ZTtsZXMuPC9saT4NCjxsaT48ZW0+TW9kaWZ5IFNpdGUgUHJlZmVyZW5jZXM8L2VtPiA6IFBlcm1pc3Npb24gcmVxdWlzZSBwb3VyIG1vZGlmaWVyIGxhIGNvbmZpZ3VyYXRpb24uPC9saT4NCjwvdWw+DQo8aDM+RW52b2kgZCYjMDM5O2VtYWlsPC9oMz4NCjxwPkNlIG1vZHVsZSBlc3QgY2FwYWJsZSBkJiMwMzk7ZW52b3llciB1biBlbWFpbCBxdWFuZCB1biBmaWNoaWVyIGVzdCBjaGFyZyZlYWN1dGU7ICh2b3lleiBsJiMwMzk7b25nbGV0IHByJmVhY3V0ZTtmJmVhY3V0ZTtyZW5jZXMpLiBQb3VyIGNlbGEsIGxlIG1vZHVsZSA8Yj5DTVNNYWlsZXI8L2I+IGRvaXQgJmVjaXJjO3RyZSBpbnN0YWxsJmVhY3V0ZTsgZXQgY29uZmlndXImZWFjdXRlOy4gQyYjMDM5O2VzdCB1bmUgJmVhY3V0ZTt0YXBlIDxlbT5vcHRpb25uZWxsZTwvZW0+IGV0IHNpIGxlIG1vZHVsZSBDTVNNYWlsZXIgbiYjMDM5O2VzdCBwYXMgaW5zdGFsbCZlYWN1dGU7LCBsJiMwMzk7dXRpbGlzYXRldXIgbmUgc2UgcmVuZHJhIGNvbXB0ZSBkZSByaWVuLCBzZXVsIHVuIG1lc3NhZ2UgZGUgbG9nIHNlcmEgYWpvdXQmZWFjdXRlOyBhdXggbG9ncyBkJiMwMzk7YWRtaW5pc3RyYXRpb24uPC9wPg0KPGgzPkNvbmZpZ3VyYXRpb24gc3lzdCZlZ3JhdmU7bWU8L2gzPg0KPHA+PGI+Tm90ZSA6PC9iPiBDZSBtb2R1bGUgdHJhdmFpbGxlIGVuIGNvbmpvbmN0aW9uIGF2ZWMgbGVzIHImZWFjdXRlO2dsYWdlcyBkZSBQSFAgZXQgbmUgcGV1dCBsZXMgb3V0cmVwYXNzZXIuIFZvdXMgcG91cnJpZXogYXZvaXIgYmVzb2lucyBkZSBtb2RpZmllciB2b3RyZSBmaWNoaWVyICYjMDM5O3BocC5pbmkmIzAzOTsgZXQvb3Ugdm90cmUgZmljaGllciAmIzAzOTtodHRwZC5jb25mJiMwMzk7IHBvdXIgdm91cyBwZXJtZXR0cmUgZGUgY2hhcmdlciBkZXMgZmljaGllcnMgZGUgbGEgdGFpbGxlIGQmZWFjdXRlO2ZpbmllIGRhbnMgbGVzIHByJmVhY3V0ZTtmJmVhY3V0ZTtyZW5jZXMgZHUgbW9kdWxlLjwvcD4NCjxoMz5Ob3RlcyBBcGFjaGU8L2gzPg0KPHA+UG91ciBwZXJtZXR0cmUgbGUgdCZlYWN1dGU7bCZlYWN1dGU7Y2hhcmdlbWVudCBkZSBmaWNoaWVyIGRlIGdyYW5kZSB0YWlsbGUsIHZvdXMgZGV2cmV6IG1vZGlmaWVyIGxlIHBhcmFtJmVncmF2ZTt0cmUgJiMwMzk7dXBsb2FkX21heF9maWxlc2l6ZSYjMDM5OyBkZSB2b3RyZSAmIzAzOTtwaHAuaW5pJiMwMzk7LiBEZSBwbHVzLCBsZSBwYXJhbSZlZ3JhdmU7dHJlIExpbWl0UmVxdWVzdEJvZHkgZGFucyB2b3RyZSBjb25maWd1cmF0aW9uIEFwYWNoZSwgZG9pdCAmZWNpcmM7dHJlIGFqdXN0JmVhY3V0ZTsgcG91ciBjb3JyZXNwb25kcmUgYXUgcGFyYW0mZWdyYXZlO3RyZSB1cGxvYWRfbWF4X2ZpbGVzaXplLjwvcD4NCjxwPk5vdGUgOiBsYSBkaXJlY3RpdmUgJiMwMzk7dXBsb2FkX21heF9maWxlc2l6ZSYjMDM5OyBwZXV0ICZlY2lyYzt0cmUgc3AmZWFjdXRlO2NpZmkmZWFjdXRlO2UgZW4gb2N0ZXRzLCBraWxvLW9jdGV0cyBvdSBtJmVhY3V0ZTtnYS1vY3RldHMsIG1haXMgbGUgcGFyYW0mZWdyYXZlO3RyZSAmIzAzOTtMaW1pdFJlcXVldEJvZHkmIzAzOTsgZXN0IHNldWxlbWVudCBzcCZlYWN1dGU7Y2lmaSZlYWN1dGU7IGVuIG9jdGV0cy48L3A+DQonOwokbGFuZ1snaWQnXSA9ICdJZGVudGlmaWFudCc7CiRsYW5nWydpbnN0YWxsZWQnXSA9ICdWZXJzaW9uICVzIGR1IG1vZHVsZSBpbnN0YWxsJmVhY3V0ZTsuJzsKJGxhbmdbJ2lwX2FkZHJlc3MnXSA9ICdBZHJlc3NlIElQJzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnVW4gbW9kdWxlIHF1aSBwZXJtZXQgYXV4IHV0aWxpc2F0ZXVycyBkZSB0cmFuc2YmZWFjdXRlO3JlciBkZXMgZmljaGllcnMsIGV0IHZvdXMgcGVybWV0IGRlIGxlcyBnJmVhY3V0ZTtyZXIuJzsKJGxhbmdbJ25hbWUnXSA9ICdOb20nOwokbGFuZ1sncmVuYW1lbWVzc2FnZSddID0gJ0NoYW5nZXIgbGUgbm9tIGljaSBwb3VyICZlYWN1dGU7eCZlYWN1dGU7Y3V0ZXIgdW4gcmVub21tYWdlJzsKJGxhbmdbJ3BhdGgnXSA9ICdDaGVtaW4nOwokbGFuZ1sncGF0aG1lc3NhZ2UnXSA9ICdDaGFuZ2VyIGxhIGNhdCZlYWN1dGU7Z29yaWUgaWNpIHBvdXIgZCZlYWN1dGU7cGxhY2VyIGxlcyBmaWNoaWVycyBkYW5zIHVuIGF1dHJlIHImZWFjdXRlO3BlcnRvaXJlJzsKJGxhbmdbJ3BhdGhpbnVwbG9hZHMnXSA9ICcoUGFyIHJhcHBvcnQgYXUgciZlYWN1dGU7cGVydG9pcmUgZGUgY2hhcmdlbWVudCAmIzAzOTt1cGxvYWRzJiMwMzk7KSc7CiRsYW5nWydwb3N0aW5zdGFsbCddID0gJzxwPkxlIG1vZHVsZSBVcGxvYWQgJmFncmF2ZTsgJmVhY3V0ZTt0JmVhY3V0ZTsgaW5zdGFsbCZlYWN1dGU7IGF2ZWMgc3VjYyZlZ3JhdmU7cy4gQXNzdXJlei12b3VzIGRlIHImZWFjdXRlO2dsZXIgbGVzIHBlcm1pc3Npb25zICZxdW90O01hbmFnZSBVcGxvYWRzJnF1b3Q7IHBvdXIgdXRpbGlzZXIgY2UgbW9kdWxlICE8L3A+DQo8cD48c3Ryb25nPkF0dGVudGlvbjwvc3Ryb25nPiAtIExhIGJvbm5lIG1hcmNoZSBkZSBjZSBtb2R1bGUgZCZlYWN1dGU7cGVuZCBkZSBwbHVzaWV1cnMgdmFyaWFibGVzIHBocC4gQ2VsYSBpbmNsdXMgPGVtPihtYWlzIHBhcyBzZXVsZW1lbnQpPC9lbT4gcGhwJiMwMzk7cyBtZW1vcnlfbGltaXQsIHNhZmVfbW9kZSwgZmlsZV91cGxvYWRzLCB1cGxvYWRzX21heF9maWxlc2l6ZSBldCBtYXhfZXhlY3V0aW9uX3RpbWUuIENlcyB2YXJpYWJsZXMgZGV2cm9udCBwZXV0LSZlY2lyYzt0cmUgJmVjaXJjO3RyZSBhanVzdCZlYWN1dGU7ZXMgcG91ciBxdWUgbGUgbW9kdWxlIGZvbmN0aW9ubmUgY29ycmVjdGVtZW50IHN1ciB2b3RyZSBzaXRlLiBJbCB2b3VzIGVzdCBjb25zZWlsbCZlYWN1dGU7IGRlIHRyYXZhaWxsZXIgYXZlYyB2b3RyZSBoJmVhY3V0ZTtiZXJnZXVyIG91IGFkbWluaXN0cmF0ZXVyIHBvdXIgY29uZmlndXJlciBjZXMgcGFyYW0mZWdyYXZlO3RyZXMuPC9wPic7CiRsYW5nWydwb3N0dW5pbnN0YWxsJ10gPSAnTGUgbW9kdWxlIFVwbG9hZCBhICZlYWN1dGU7dCZlYWN1dGU7IHN1cHByaW0mZWFjdXRlOy4gQXVjdW4gZmljaGllciBuJiMwMzk7YSAmZWFjdXRlO3QmZWFjdXRlOyBzdXBwcmltJmVhY3V0ZTsgZGUgdm90cmUgciZlYWN1dGU7cGVydG9pcmUgZGUgdCZlYWN1dGU7bCZlYWN1dGU7Y2hhcmdlbWVudCBldCBsJiMwMzk7aW50JmVhY3V0ZTtncml0JmVhY3V0ZTsgZGVzIGZpY2hpZXJzIGVzdCByZXN0JmVhY3V0ZTtlIGludGFjdGUuJzsKJGxhbmdbJ3ByZWZlcmVuY2VzJ10gPSAnUHImZWFjdXRlO2YmZWFjdXRlO3JlbmNlcyc7CiRsYW5nWydwcmVmc3VwZGF0ZWQnXSA9ICdMZXMgcHImZWFjdXRlO2YmZWFjdXRlO3JlbmNlcyBkdSBtb2R1bGUgb250ICZlYWN1dGU7dCZlYWN1dGU7IG1pc2VzICZhZ3JhdmU7IGpvdXIuJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeWRlc2MnXSA9ICdEZXNjcmlwdGlvbiAnOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5bGlzdGFibGUnXSA9ICdMZXMgZmljaGllcnMgZGUgY2UgciZlYWN1dGU7cGVydG9pcmUgcGV1dmVudCAmZWNpcmM7dHJlIGxpc3QmZWFjdXRlO3MnOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5bmFtZSddID0gJ05vbSBkZSBsYSBjYXQmZWFjdXRlO2dvcmllJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeXBhdGgnXSA9ICdDaGVtaW4gZCYjMDM5O2FjYyZlZ3JhdmU7cyBkdSBzZXJ2ZXVyJzsKJGxhbmdbJ3Byb21wdF9kZWxldGVkaXJlY3RvcnknXSA9ICdTdXBwcmltZXIgbGUgciZlYWN1dGU7cGVydG9pcmUgZGUgbGEgY2F0JmVhY3V0ZTtnb3JpZSA/JzsKJGxhbmdbJ3Byb21wdF9tYXhfdXBsb2Fkc2l6ZSddID0gJ1RhaWxsZSBkZSBmaWNoaWVyIG1heGltYWxlIGF1dG9yaXMmZWFjdXRlO2UgKEtvKSZuYnNwOyc7CiRsYW5nWydwcm9tcHRfdmFsaWRfdXBsb2FkZXh0ZW5zaW9ucyddID0gJ0V4dGVuc2lvbnMgdmFsaWRlIHBvdXIgbCYjMDM5O3VwbG9hZCc7CiRsYW5nWydzY2FuJ10gPSAnUGFyY291cmlyJzsKJGxhbmdbJ3NlbGVjdGNhdGVnb3J5J10gPSAnQ2hvaXNpciB1bmUgY2F0JmVhY3V0ZTtnb3JpZSc7CiRsYW5nWydzaXplJ10gPSAndGFpbGxlJzsKJGxhbmdbJ3NpemVrYiddID0gJ1RhaWxsZSAoS2IpJzsKJGxhbmdbJ3N1Ym1pdCddID0gJ0Vudm95ZXInOwokbGFuZ1snc3VtbWFyeV90ZW1wbGF0ZSddID0gJ01vZCZlZ3JhdmU7bGUgZGUgciZlYWN1dGU7c3VtJmVhY3V0ZTsnOwokbGFuZ1snc3VtbWFyeSddID0gJ0Rlc2NyaXB0aW9uJzsKJGxhbmdbJ3RpdGxlX2FkbWluX3BhbmVsJ10gPSAnTW9kdWxlIGRlIGNoYXJnZW1lbnQnOwokbGFuZ1sndGl0bGVfbW9kX2FkbWluJ10gPSAnUGFubmVhdSBBZG1pbiBkdSBtb2R1bGUnOwokbGFuZ1sndGl0bGVfbW9kX3ByZWZzJ10gPSAnUHImZWFjdXRlO2YmZWFjdXRlO3JlbmNlIGR1IG1vZHVsZSc7CiRsYW5nWyd0aXRsZV9zdWJuZXRfZXhjbHVzaW9ucyddID0gJ0V4Y2x1cmUgc291cy1yJmVhY3V0ZTtzZWF1eCBkZXMgc3RhdGlzdGlxdWVzJm5ic3A7JzsKJGxhbmdbJ3RpdGxlX3ZhbGlkX3VwbG9hZGV4dGVuc2lvbnMnXSA9ICdFeHRlbnNpb25zIHZhbGlkZXMmbmJzcDsnOwokbGFuZ1sndW5pbnN0YWxsZWQnXSA9ICdNb2R1bGUgZCZlYWN1dGU7c2luc3RhbGwmZWFjdXRlOy4nOwokbGFuZ1sndXBncmFkZWQnXSA9ICdNb2R1bGUgbWlzZSAmYWdyYXZlOyBqb3VyIHZlcnMgbGEgdmVyc2lvbiAlcy4nOwokbGFuZ1sndXBsb2FkJ10gPSAnVCZlYWN1dGU7bCZlYWN1dGU7Y2hhcmdlbWVudCc7CiRsYW5nWyd1cGxvYWRlZCddID0gJ0ZpY2hpZXIgJXMgJmFncmF2ZTsgJmVhY3V0ZTt0JmVhY3V0ZTsgY2hhcmcmZWFjdXRlOyAlcy4nOwokbGFuZ1sncmVwbGFjZWQnXSA9ICdGaWNoaWVyICVzICZhZ3JhdmU7ICZlYWN1dGU7dCZlYWN1dGU7IHJlbXBsYWMmZWFjdXRlOyBwYXIgJXMuJzsKJGxhbmdbJ2RlbGV0ZWQnXSA9ICdGaWNoaWVyICVzICZhZ3JhdmU7ICZlYWN1dGU7dCZlYWN1dGU7IHN1cHByaW0mZWFjdXRlOy4nOwokbGFuZ1sndXBsb2FkZm9ybV90ZW1wbGF0ZSddID0gJ01vZCZlZ3JhdmU7bGUgZCYjMDM5O3VwbG9hZCc7CiRsYW5nWyd1c2VybmFtZSddID0gJ05vbSBkJiMwMzk7dXRpbGlzYXRldXInOwokbGFuZ1snd2FybmluZ19kZWxldGVjYXRlZ29yeSddID0gJ0FWRVJUSVNTRU1FTlQgOiBTb3lleiBwcnVkZW50IGxvcnNxdWUgdm91cyBzdXBwcmltZXogZGVzIGNhdCZlYWN1dGU7Z29yaWVzLiBMZXMgZmljaGllcnMgcGV1dmVudCAmZWNpcmM7dHJlIHBlcmR1cyc7CiRsYW5nWyd1dG1hJ10gPSAnMTU2ODYxMzUzLjM5MzY2ODMyMjY4Njg0OTQwMDAuMTI0NzA1NTU4My4xMjQ5OTE3NjE5LjEyNDk5MjAzMDkuMzAnOwokbGFuZ1sndXRteiddID0gJzE1Njg2MTM1My4xMjQ5OTE3NjE5LjI5LjE2LnV0bWNzcj1kZXYuY21zbWFkZXNpbXBsZS5vcmd8dXRtY2NuPShyZWZlcnJhbCl8dXRtY21kPXJlZmVycmFsfHV0bWNjdD0vcHJvamVjdC9maWxlcy8zMTUnOwokbGFuZ1sncWNhJ10gPSAnMTI0NjU2MzY3OS05MTUzNzU4MS0yNzQwMDk2JzsKJGxhbmdbJ3V0bWMnXSA9ICcxNTY4NjEzNTMnOwokbGFuZ1sncWNiJ10gPSAnNjI1NzU3NzA1JzsKJGxhbmdbJ3V0bWInXSA9ICcxNTY4NjEzNTMnOwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lang/ext/it_IT.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ3BhcmFtX2FjdGlvbiddID0gJ1NwZWNpZmljYSBpbCBjb21wb3J0YW1lbnRvIGRlbCBtb2R1bG8gdGFnLiBQb3NzaWJpbGkgdmFsb3JpIHNvbm86IGRlZmF1bHQgLSAoaWwgY29tcG9ydGFtcm50byBwcmVkZWZpbml0byksIGRldGFpbCAtIHBlciB2aXN1YWxpenphcmUgaWwgZGV0dGFnbGlvIGRpIHVuIHNpbmdvbG8gZmlsZSBiYXNhdG8gc3VsIHVwbG9hZF9pZCBlIHlvdXNlbmRpdCAtICBwZXIgdmlzdWFsaXp6YXJlIHVuIGZvcm0gcGVyIHBlcm1ldHRlciBsJiMwMzk7dXBsb2FkIGRpIHVuIGZpbGUgZSBzcGVkaXJsbyBhIG51bWVyb3NpIGluZGlyaXp6aSBpbiB1biBzaW5nb2xvIHBhc3NvJzsKJGxhbmdbJ3BhcmFtX3NlbmRmaWxlcGFnZSddID0gJ1NwZWNpZmljYSBsYSBwYWdpbmEgaWQgbyBhbGlhcyBkaSBwYWdpbmEgY2hlIGRvdnJlYmJlIGVzc2VyZSB1c2F0YSBwZXIgc3BlZGlyZSB1biBmaWxlJzsKJGxhbmdbJ2ZpbGVfdXBsb2FkZWQnXSA9ICdGaWxlIFN1Y2Nlc3NmdWxseSBVcGxvYWRlZCc7CiRsYW5nWyd0byddID0gJ0EnOwokbGFuZ1sndGl0bGVfeW91c2VuZGl0Zm9ybV90ZW1wbGF0ZSddID0gJ0FnZ2l1bmdlIG8gTW9kaWZpY2EgdW4gJnF1b3Q7WW91IFNlbmQgSXQmcXVvdDsgRm9ybSBUZW1wbGF0ZSc7CiRsYW5nWyd5b3VzZW5kaXRmb3JtX3RlbXBsYXRlJ10gPSAnWW91U2VuZEl0IEZvcm0gVGVtcGxhdGVzJzsKJGxhbmdbJ3RpdGxlX3lvdXNlbmRpdGZvcm1fc3lzZGVmYXVsdCddID0gJ1RlbXBsYXRlIHByZWRlZmluaXRvICZxdW90O1lvdSBTZW5kIEl0JnF1b3Q7JzsKJGxhbmdbJ21zZ19maWxlX3NlbnQnXSA9ICdVbiBtZXNzYWdnaW8gJmVncmF2ZTsgc3RhdG8gc3BlZGl0byBhZ2xpIGluZGlyaXp6aSBzZWxlemlvbmF0aSBjaGUgY29udGVuZ29ubyBpbmZvcm1hemlvbmkgY2lyY2EgaWwgZmlsZSBlIGNvbWUgcG90ZXJsbyByZWN1cGVyYXJsby4nOwokbGFuZ1snZXJyb3Jfbm9hZGRyZXNzZXMnXSA9ICdWb2kgZG92ZXRlIGluc2VyaXJlIGFsbWVubyB1biBpbmRpcml6em8gZGkgZGVzdGluYXppb25lJzsKJGxhbmdbJ2Vycm9yX25vc3ViamVjdCddID0gJ1ZvaSBkb3ZldGUgaW5zZXJpcmUgdW4gb2dnZXR0byc7CiRsYW5nWydzdWJqZWN0J10gPSAnT2dnZXR0byc7CiRsYW5nWyd0aXRsZV9zZW5kZmlsZXBhZ2UnXSA9ICdQYWdlIGZvciAmcXVvdDtTZW5kIGEgRmlsZSZxdW90OyBmb3JtJzsKJGxhbmdbJ2ZpbGVfaW5mbyddID0gJ0luZm9ybWF6aW9uaSBzdWwgRmlsZSc7CiRsYW5nWydzZW5kJ10gPSAnU3BlZGlyZSc7CiRsYW5nWydub3RlcyddID0gJ05vdGUnOwokbGFuZ1snYWRkcmVzc2VlcyddID0gJ1NwZWRpc2NlIGluZm9ybWF6aW9uaSBzdSBxdWVzdG8gZmlsZSBhJzsKJGxhbmdbJ3Byb21wdF9zZW5kZmlsZV9lbWFpbF90ZW1wbGF0ZSddID0gJyZxdW90O1NwZWRpc2NpIHVuIEZpbGUmcXVvdDsgVGVtcGxhdGUgRW1haWwnOwokbGFuZ1sndGl0bGVfc2VuZGZpbGVmb3JtX3RlbXBsYXRlJ10gPSAnQWdnaXVuZ2UgbyBNb2RpZmljYSB1biAmcXVvdDtTcGVkaXNjaSB1biBGaWxlJnF1b3Q7IEZvcm0gVGVtcGxhdGUnOwokbGFuZ1snc2VuZGZpbGVmb3JtX3RlbXBsYXRlJ10gPSAnJnF1b3Q7U3BlZGlzY2kgdW4gRmlsZSZxdW90OyBGb3JtIFRlbXBsYXRlJzsKJGxhbmdbJ3Byb21wdF9ub3RpZnlfZW1haWxfdGVtcGxhdGUnXSA9ICdFbWFpbCBUZW1wbGF0ZSBkZWwgRmlsZSBub3RpZmljYXppb25lIGRpIHVwbG9hZCc7CiRsYW5nWyd0aXRsZV9zZW5kZmlsZWZvcm1fc3lzZGVmYXVsdCddID0gJ1RlbXBsYXRlIHByZWRlZmluaXRvICZxdW90O1NwZWRpc2NpIHVuIEZpbGUmcXVvdDsnOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5ZGVsZXRhYmxlJ10gPSAnRmlsZSBpbiBxdWVzdGEgY2F0ZWdvcmlhIHBvc3Nvbm8gZXNzZXJlIGNhbmNlbGxhdGknOwokbGFuZ1sndGl0bGVfYWxsb3dfZGVsZXRlJ10gPSAnUGVybWV0dGUgbGEgY2FuY2VsbGF6aW9uZSBkaSBmaWxlIGRhbCBmcm9udGVuZCc7CiRsYW5nWydkZWZhdWx0X3RlbXBsYXRlcyddID0gJ1RlbXBsYXRlIHByZWRlZmluaXRpJzsKJGxhbmdbJ2ZpcnN0cGFnZSddID0gJ1ByaW1hIHBhZ2luYSc7CiRsYW5nWydwcmV2cGFnZSddID0gJ1BhZ2luYSBwcmVjZWRlbnRlJzsKJGxhbmdbJ25leHRwYWdlJ10gPSAnUGFnaW5hIHNlZ3VlbnRlJzsKJGxhbmdbJ2xhc3RwYWdlJ10gPSAnVWx0aW1hIHBhZ2luYSc7CiRsYW5nWydmaXJzdHBhZ2VfYXJyb3cnXSA9ICc8PCc7CiRsYW5nWydwcmV2cGFnZV9hcnJvdyddID0gJzwnOwokbGFuZ1snbmV4dHBhZ2VfYXJyb3cnXSA9ICc+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+LCBwaHAmIzAzOTtzIG1lbW9yeV9saW1pdCwgc2FmZV9tb2RlLCBmaWxlX3VwbG9hZHMsIHVwbG9hZHNfbWF4X2ZpbGVzaXplLCBhbmQgbWF4X2V4ZWN1dGlvbl90aW1lLiAgVGhlc2UgdmFyaWFibGVzIG1heSBuZWVkIGFkanVzdG1lbnQgZm9yIHRoaXMgbW9kdWxlIHRvIHdvcmsgcHJvcGVybHkgb24geW91ciBzaXRlLiAgSXQgaXMgYWR2aXNlZCB0aGF0IHlvdSB3b3JrIHdpdGggeW91ciBzeXN0ZW0gYWRtaW5pc3RyYXRvciBvciBob3N0IHByb3ZpZGVyIHRvIHR1bmUgdGhlc2Ugc2V0dGluZ3MgZm9yIHlvdXIgcmVxdWlyZW1lbnRzLjwvcD4nOwokbGFuZ1sncG9zdHVuaW5zdGFsbCddID0gJ0lsIG1vZHVsbyBVcGxvYWRzICZlZ3JhdmU7IHN0YXRvIHJpbW9zc28gY29uIHN1Y2Nlc3NvLiAgTmVzc3VuIGZpbGUgJmVncmF2ZTsgc3RhdG8gcmltb3NzbyBkYWxsYSB2b3N0cmEgY2FydGVsbGEgZGkgdXBsb2FkIGUgbCYjMDM5O2ludGVncml0JmFncmF2ZTsgZGVpIGZpbGUgJmVncmF2ZTsgaW50YXR0YSc7CiRsYW5nWydwcmVmZXJlbmNlcyddID0gJ1ByZWZlcmVuemUnOwokbGFuZ1sncHJlZnN1cGRhdGVkJ10gPSAnUHJlZmVyZW56ZSBkZWwgbW9kdWxvIGFnZ2lvcm5hdGUuJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeWRlc2MnXSA9ICdEZXNjcml6aW9uZSc7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnlsaXN0YWJsZSddID0gJ0kgZmlsZSBpbiBxdWVzdGEgY2FydGVsbGEgcG9zc29ubyBlc3NlcmUgZWxlbmNhdGknOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5bmFtZSddID0gJ05vbWUgZGVsbGEgQ2F0ZWdvcmlhJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeXBhdGgnXSA9ICdQZXJjb3JzbyBkZWwgU2VydmVyJzsKJGxhbmdbJ3Byb21wdF9kZWxldGVkaXJlY3RvcnknXSA9ICdFbGltaW5hcmUgY2FydGVsbGEgZGVsbGEgY2F0ZWdvcmlhPyc7CiRsYW5nWydwcm9tcHRfbWF4X3VwbG9hZHNpemUnXSA9ICdEaW1lbnNpb25lIG1hc3NpbWEgZGVsIGZpbGUgcGVybWVzc2EgKEtiKSc7CiRsYW5nWydwcm9tcHRfdmFsaWRfdXBsb2FkZXh0ZW5zaW9ucyddID0gJ0VzdGVuc2lvbmkgdmFsaWRlIHBlciBsJiMwMzk7dXBsb2FkJzsKJGxhbmdbJ3NjYW4nXSA9ICdFc2FtaW5hJzsKJGxhbmdbJ3NlbGVjdGNhdGVnb3J5J10gPSAnU2VsZXppb25hIENhdGVnb3JpYSc7CiRsYW5nWydzaXplJ10gPSAnRGltZW5zaW9uZSc7CiRsYW5nWydzaXpla2InXSA9ICdEaW1lbnNpb25lIChLYiknOwokbGFuZ1snc3VibWl0J10gPSAnSW52aWEnOwokbGFuZ1snc3VtbWFyeV90ZW1wbGF0ZSddID0gJ01vZGVsbG8gZGVsIFNvbW1hcmlvJzsKJGxhbmdbJ3N1bW1hcnknXSA9ICdTb21tYXJpbyc7CiRsYW5nWyd0aXRsZV9hZG1pbl9wYW5lbCddID0gJ01vZHVsbyBVcGxvYWRzJzsKJGxhbmdbJ3RpdGxlX21vZF9hZG1pbiddID0gJ1Bhbm5lbGxvIGRpIEFtbWluaXN0cmF6aW9uZSBNb2R1bG8nOwokbGFuZ1sndGl0bGVfbW9kX3ByZWZzJ10gPSAnUHJlZmVyZW56ZSBkZWwgTW9kdWxvJzsKJGxhbmdbJ3RpdGxlX3N1Ym5ldF9leGNsdXNpb25zJ10gPSAnRXNjbHVkZXJlIGxlIHNvdHRvcmV0aSBkYWxsYSBzdGF0aXN0aWNoZSc7CiRsYW5nWyd0aXRsZV92YWxpZF91cGxvYWRleHRlbnNpb25zJ10gPSAnRXN0ZW5zaW9uaSBWYWxpZGUnOwokbGFuZ1sndW5pbnN0YWxsZWQnXSA9ICdNb2R1bG8gRGlzaW5zdGFsbGF0by4nOwokbGFuZ1sndXBncmFkZWQnXSA9ICdNb2R1bG8gYWdnaW9ybmF0byBhbGxhIHZlcnNpb25lICVzLic7CiRsYW5nWyd1cGxvYWQnXSA9ICdDYXJpY2EnOwokbGFuZ1sndXBsb2FkZWQnXSA9ICdGaWxlICVzIGNhcmljYXRvIGRhICVzLic7CiRsYW5nWydyZXBsYWNlZCddID0gJ0ZpbGUgJXMgc29zdGl0dWl0byBkYSAlcy4nOwokbGFuZ1snZGVsZXRlZCddID0gJ0lsIEZpbGUgJXMgJmVncmF2ZTsgc3RhdG8gY2FuY2VsbGF0by4nOwokbGFuZ1sndXBsb2FkZm9ybV90ZW1wbGF0ZSddID0gJ01vZGVsbG8gZGkgVXBsb2FkJzsKJGxhbmdbJ3VzZXJuYW1lJ10gPSAnVXNlcm5hbWUnOwokbGFuZ1snd2FybmluZ19kZWxldGVjYXRlZ29yeSddID0gJ0FUVEVOWklPTkU6IFVzYXRlIGNhdXRlbGEgcXVhbmRvIGNhbmNlbGxhdGUgY2F0ZWdvcmllLiBFJiMwMzk7IHBvc3NpYmlsZSBwZXJkZXJlIGZpbGUnOwokbGFuZ1sndXRtYSddID0gJzE1Njg2MTM1My44ODAxMzA2MjYuMTIzNjM1MzQ2Ny4xMjQyODM3MDI3LjEyNDI4NTQ2NTcuNDAnOwokbGFuZ1sndXRteiddID0gJzE1Njg2MTM1My4xMjQyODU0NjU3LjQwLjM1LnV0bWNjbj0ocmVmZXJyYWwpfHV0bWNzcj1mb3J1bS5jbXNtYWRlc2ltcGxlLm9yZ3x1dG1jY3Q9L2luZGV4LnBocHx1dG1jbWQ9cmVmZXJyYWwnOwokbGFuZ1sndXRtYyddID0gJzE1Njg2MTM1Myc7CiRsYW5nWyd1dG1iJ10gPSAnMTU2ODYxMzUzJzsKPz4=]]></data>
	</file>
	<file>
	  <filename>/lang/ext/lt_LT.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2luZm9fY2F0ZWdvcnlkZWxldGFibGUnXSA9ICdBdXRvcml6dW90aSB2YXJ0b3RvamFpIGdhbMSXcyBpJnNjYXJvbjt0cmludGkgJnNjYXJvbjtpdW9zIGZhaWx1cy4gIFRhaSByZWkmc2Nhcm9uO2tpYSwga2FkIHVybCBidXMgZ2FsaW1hIHBlcmR1b3RpIGF0aXRpbmthbWllbXMgdGVtcGxlaXRhbXMsIGthZCBmYWlsYXMgYsWrdMWzIGkmc2Nhcm9uO3RyaW50YXMuIFB1c2xhcGlvIGFkbWluaXN0cmF0b3JpdXMgZ2FsaSBwZXIgc21hcnR5IGdhbGkgcGF0ZWlrdGkgbnVvcm9kxIUgYXV0b3JpenVvdGllbXMgdmFydG90b2phbXMuJzsKJGxhbmdbJ2NvcHlfZmlsZXMnXSA9ICdLb3BpanVvdGkgRmFpbHVzJzsKJGxhbmdbJ2Vycm9yX2ZpbGV0b29sYXJnZSddID0gJ0ZhaWxhcywga3VyxK8gasWrcyBiYW5kb3RlIGkmc2Nhcm9uO3NpxbNzdGksIHZpciZzY2Fyb247eWphIENNU01TIG51c3RhdHl0xIUgc2l1bsSNaWFtxbMgZmFpbMWzIGR5ZMW+aW8gbGltaXTEhS4nOwokbGFuZ1snYXJleW91c3VyZV9kZWxldGVjYXRlZ29yeSddID0gJ0FyIHRpa3JhaSBub3JpdGUgaSZzY2Fyb247dHJpbnRpICZzY2Fyb247acSFIGthdGVnb3JpasSFPyc7CiRsYW5nWydlcnJvcl9kZWxldGUnXSA9ICdPYmpla3RvIG5lZ2FsaW1hIHBhJnNjYXJvbjthbGludGkgKCVzKSc7CiRsYW5nWydjb25maXJtX2NhdF9tdWx0aWFjdGlvbiddID0gJ0FyIHRpa3JhaSBub3JpdGUgYXRsaWt0aSAmc2Nhcm9uO8SvIHZlaWtzbcSFIHBhc2lyaW5rdG9tcyBrYXRlZ29yaWpvbXM/JzsKJGxhbmdbJ2Vycm9yX25vdGhpbmdfc2VsZWN0ZWQnXSA9ICdLbGFpZGE6IE5pZWtvIG5lcGFzaXJpbmt0YSc7CiRsYW5nWyd3aXRoX3NlbGVjdGVkJ10gPSAnU3UgcGFzaXJpbmt0YWlzOic7CiRsYW5nWydlcnJvcl9yZXBsYWNlX21pc21hdGNoZWRfZmlsZWV4dCddID0gJ1BlcnJhJnNjYXJvbjthbnQgZmFpbHVzLCBuYXVqbyBmYWlsbyBwbMSXdGlueXMgdHVyaSBixat0aSB0b2tzIHBhdCBrYWlwIGlyIGphdSBlZ3ppc3R1b2phbsSNaW8gZmFpbG8uJzsKJGxhbmdbJ3JlcGxhY2UnXSA9ICdQYWtlaXN0aSc7CiRsYW5nWydpbmZvX3JlcGxhY2VmaWxlJ10gPSAnSsWrcyBnYWxpdGUgZmFpbMSFIHXFvnJhJnNjYXJvbjt5dGkgYW50IHZpciZzY2Fyb247YXVzLCBqaWUgZmFpbGFzIHlyYSBwYXZlaWtzbMSXbGlzIGpvIGlrb27El2zElyBidXMgc3VrdXJ0YSBhdXRvbWF0aSZzY2Fyb247a2FpIGlyIHBhcGlsZG9tYWkgc2nFs3N0aSBqb3MgbmVyZWlraWEuJzsKJGxhbmdbJ3Byb21wdF9yZXBsYWNlZmlsZSddID0gJ1NpxbNzdGkgZmFpbMSFIHBha2VpdGltdWknOwokbGFuZ1sndGl0bGVfZml4c3BhY2VzJ10gPSAnSSZzY2Fyb247dGFpc3l0aSB0YXJwdXMgZmFpbG8gcGF2YWRpbmltZSc7CiRsYW5nWydjYXRlZ29yeV9jb3BpZWQnXSA9ICdLYXRlZ29yaWphIHPEl2ttaW5nYWkgbnVrb3BpanVvdGEnOwokbGFuZ1snZXJyb3JfZHVwbGljYXRlcGF0aCddID0gJ1ByYSZzY2Fyb247b20gbnVyb2R5dGkga2F0YWxvZ8SFIGtpdMSFIG5laSAmc2Nhcm9uO2FsdGluaW8sIHRhaXAgcGF0IGthdGFsb2dhcyBuZXR1csSXdMWzIGLFq3RpIG5hdWRvamFtYXMuJzsKJGxhbmdbJ29wZXJhdGlvbl9jYW5jZWxsZWQnXSA9ICdPcGVyYWNpamEgQXQmc2Nhcm9uO2F1a3RhJzsKJGxhbmdbJ3NvdXJjZSddID0gJyZTY2Fyb247YWx0aW5pcyc7CiRsYW5nWydkZXN0aW5hdGlvbiddID0gJ1Rpa3NsYXMnOwokbGFuZ1sncHJvbXB0X2NvcHlfZmlsZXMnXSA9ICdLb3BpanVvdGkga2F0ZWdvcmlqb3MgYnlsYXMnOwokbGFuZ1snaW5mb19jb3B5X2ZpbGVzJ10gPSAnS29waWp1b3RpIHBpcm1vcyBrYXRlZ29yaWpvcyBmYWlsdXMgxK8ga2l0xIUga2F0ZWdvcmlqxIUuJzsKJGxhbmdbJ2V4dHJhJ10gPSAnUGFwaWxkb21hJzsKJGxhbmdbJ2NvcHknXSA9ICdLb3BpanVvdGknOwokbGFuZ1snc2VsZWN0b25lJ10gPSAnUGFzaXJpbmtpdGUgVmllbsSFJzsKJGxhbmdbJ2F1dG93YXRlcm1hcmsnXSA9ICdBbnQgcGF2ZWlrc2xpdWtvIGF1dG9tYXRpJnNjYXJvbjtrYWkgZMSXdGkgdmFuZGVucyDFvmVua2zEhSc7CiRsYW5nWydpbWFnZV9zZXR0aW5ncyddID0gJ1BhdmVpa3NsxJdsaW8gTnVzdGF0eW1haSc7CiRsYW5nWydwcm9tcHRfZ2V0ZmlsZV9yZXN1bHRwYWdlJ10gPSAnUHVzbGFwaXMgbmF1ZG9qYW1hcyBrbGFpZG9tcyBpciBraXRvbXMgxb5pbXV0xJdtcywgc3VzaWp1c2lvbXMgc3UgZmFpbMWzIGF0c2lzaXV0aW11LCBwYXRlaWt0aSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkX2tleSddID0gJ0F0c3Npc2l1bnRpbW8gcmFrdGFzIG5lYmVnYWxpb2phIChwYXNpZWt0YXMgYXRzaXNpbnRpbcWzIGxpbWl0YXMpJzsKJGxhbmdbJ2RmbHRfdGltZWxpbWl0ZWRfc3ViamVjdCddID0gJ3skc2l0ZW5hbWV9IC0gSnVtcyBzdXRlaWt0YSBsYWlraW5hIHRlaXPElyBhdHNpc2nFs3N0aSBmYWlsxIUgeyRlbnRyeS0+dXBsb2FkX25hbWV8c3RyaXBfdGFnc30nOwokbGFuZ1sncHJvbXB0X3RpbWVsaW1pdGVkX3N1YmplY3QnXSA9ICdFbC4gbGFpJnNjYXJvbjtrbyB0ZW1hLCBrdXJpcyBzdWt1cmlhbWFzIGthaSBzaXVuxI1pYW1hIGxhaWtvIHJpYm9qYW1hIG51b3JvZGEuJzsKJGxhbmdbJ3Byb21wdF90aW1lbGltaXRlZF9hdXRvZGVsZXRlJ10gPSAnQXV0b21hdGkmc2Nhcm9uO2thaSBpJnNjYXJvbjt0cmludGkgxK9yYSZzY2Fyb247dXMgcHJhxJdqdXMgTiB2YWxhbmTFsyA8ZW0+KG51cm9kxb5pdXMgIDAgxK9yYSZzY2Fyb247YWkgbmVidXMgdHJpbmFtaSk8L2VtPjonOwokbGFuZ1sncHJvbXB0X3RpbWVsaW1pdGVkX3NlbmRpdCddID0gJ0kmc2Nhcm9uO3NpxatzdGkgJnNjYXJvbjtpxIUgbnVvcm9kxIUgYXRpdGlua2FtdSBlbC4gcGEmc2Nhcm9uO3R1Pyc7CiRsYW5nWyd1cmxfa2V5J10gPSAnVVJMIHJha3Rhcyc7CiRsYW5nWydjcmVhdGVkJ10gPSAnU3VrdXJ0YSc7CiRsYW5nWydleHBpcmVzJ10gPSAnQmFpZ2lhc2knOwokbGFuZ1snYWRkZWRpdF90aW1lbGltaXRlZF9rZXknXSA9ICdQcmlkxJd0aS9SZWRhZ3VvdGkgbGFpa2UgYXByaWJvdMSFIHJha3TEhSc7CiRsYW5nWyd0aW1lX2xpbWl0ZWRfa2V5X2FkZGVkJ10gPSAnTGFpa2UgYXByaWJvdGFzIHJha3RhcyBwcmlkxJd0YXMnOwokbGFuZ1snbnVtX2hvdXJzJ10gPSAnVmFsYW5kxbMgc2thacSNaXVzJzsKJGxhbmdbJ251bV9kb3dubG9hZHMnXSA9ICdBdGlzaXVudGltxbMgc2thacSNaXVzJzsKJGxhbmdbJ2VtYWlsX2FkZHJlc3MnXSA9ICdFbC4gcGEmc2Nhcm9uO3RvIGFkcmVzYWknOwokbGFuZ1snZXJyb3JfbWlzc2luZ19pbnZhbGlkJ10gPSAnVHUmc2Nhcm9uO3RpIGFyYmEgbmV0aW5rYW1haSB1xb5waWxkeXRpIHByaXZhbG9taSBsYXVrYWk6ICVzJzsKJGxhbmdbJ2FkZF90aW1lbGltaXRlZF9rZXknXSA9ICdQcmlkxJd0aSBsYWlrZSBhcHJpYm90xIUgcmFrdMSFJzsKJGxhbmdbJ2ZpbGVfaW5mbzInXSA9ICdGYWlsYXMgJXMgKGlkPSVkKSc7CiRsYW5nWydpbmZvX3RpbWVsaW1pdGVkX2Rvd25sb2FkcyddID0gJ051cm9keXRpIHNrYWnEjWnFsywga3VyaXMgbnVzdGF0eXMgxK9wcmFzdMSFIGF0c2lzaXVudGltxbMgbGltaXTEhSBzdSBhdGl0aW5rYW11IHJha3R1JzsKJGxhbmdbJ3Byb21wdF90aW1lbGltaXRlZF9kb3dubG9hZHMnXSA9ICfErnByYXN0YXMgYXRzaXNpdW50aW3FsyBsaW1pdGFzJzsKJGxhbmdbJ2luZm9fdGltZWxpbWl0ZWRfaG91cnMnXSA9ICdOdXJvZHl0aSDEr3ByYXN0xIUgYXRzaXNpdW50aW1vIHJha3RvIGdhbGlvamltxIUgbGFpa8SFIHZhbGFuZG9taXMuICDErnZlZHVzIDAgYXByaWJvamltxbMgbmVidXMnOwokbGFuZ1sncHJvbXB0X3RpbWVsaW1pdGVkX2hvdXJzJ10gPSAnQXRzaXNpdW50aW1vIHJha3RvIGdhbGlvamltbyBsYWlrYXMgdmFsYW5kb21pcyc7CiRsYW5nWyd0aW1lbGltaXRlZF91cmxfc2V0dGluZ3MnXSA9ICdMYWlrZSBhcHJpYm90byByYWt0byBudXN0YXR5bWFpJzsKJGxhbmdbJ21hbmFnZV90aW1lbGltaXRlZCddID0gJ1JlZGFndW90aSBsYWlrZSBhcHJpYm90xIUgcHJpZWVpZ8SFJzsKJGxhbmdbJ3VwbG9hZGluZ19zZXR0aW5ncyddID0gJ0ZhaWxvIEkmc2Nhcm9uO3NpdW50aW1vIE51c3RhdHltYWknOwokbGFuZ1snZ2VuZXJhbF9zZXR0aW5ncyddID0gJ0JlbmRyaSBOdXN0YXR5bWFpJzsKJGxhbmdbJ3RodW1ibmFpbF9zZXR0aW5ncyddID0gJ0lrb27El2xpxbMgR2VuZXJhdmltYXMnOwokbGFuZ1sndGl0bGVfcmVkaXJlY3Rfb25fc2VuZGZpbGUnXSA9ICdQdXNsYXBpcywgxK8ga3VyxK8gYnVzIG51a3JlaXB0YSBpJnNjYXJvbjtzaXVudHVzIGZhaWzEhSc7CiRsYW5nWydsYmxfYmFjayddID0gJ0F0Z2FsJzsKJGxhbmdbJ2xibF90ZW1wbGF0ZXMnXSA9ICdSZWRhZ3VvdGkgJlNjYXJvbjthYmxvbnVzJzsKJGxhbmdbJ3Byb21wdF9wdWJsaWNfZmllbGQnXSA9ICdWaWUmc2Nhcm9uO2FzIGxhdWthcyA8ZW0+KG1hdG9tYXMgdmlzaWVtcyBsYW5reXRvamFtcyk8L2VtPic7CiRsYW5nWyd1cGxvYWRfZWRpdGVkJ10gPSAnRmFpbG8gxK9wYXR5YsSXcyByZWRhZ3VvdG9zICVzJzsKJGxhbmdbJ2luZm9fdGh1bWJuYWlsJ10gPSAnS2l0YXMgbWluaWF0acWrcm9zIGZhaWxhcyc7CiRsYW5nWyd1cGxvYWRfZmlsZSddID0gJ1NpxbNzdGkgbmF1asSFIGZhaWzEhSc7CiRsYW5nWydtc2dfZmllbGRfZGVsZXRlZCddID0gJ0xhdWtlbGlzIGkmc2Nhcm9uO3RyaW50YXMnOwokbGFuZ1snYXNrX2RlbGV0ZV9maWVsZCddID0gJ0FyIHRpa3JhaSBub3JpdGUgaSZzY2Fyb247dHJpbnRpICZzY2Fyb247xK8gbGF1a2VsxK8gaXIgc3UganVvIHN1c2lqdXNpanVzaWFzIHJlaWsmc2Nhcm9uO21lcz8nOwokbGFuZ1sneWVzJ10gPSAnVGFpcCc7CiRsYW5nWydubyddID0gJ05lJzsKJGxhbmdbJ3R5cGUnXSA9ICdUaXBhcyc7CiRsYW5nWydmaWVsZHR5cGVfbXVsdGlzZWxlY3QnXSA9ICdQYXNpcmlua2ltbyBzxIVyYSZzY2Fyb247YXMnOwokbGFuZ1snZmllbGR0eXBlX2Ryb3Bkb3duJ10gPSAnSSZzY2Fyb247a3JlbnRhbnRpcyBzxIVyYSZzY2Fyb247YXMnOwokbGFuZ1snZmllbGR0eXBlX2NoZWNrYm94J10gPSAnUGFzaXJpbmtpbW8gbGFuZ2VsaXMnOwokbGFuZ1snZmllbGR0eXBlX3RleHRhcmVhJ10gPSAnVGVrc3RvIHNyaXRpcyc7CiRsYW5nWydmaWVsZHR5cGVfdGV4dGlucHV0J10gPSAnVGVrc3RvIMSvdmVzdGlzJzsKJGxhbmdbJ3Byb21wdF91c2Vfd3lzaXd5ZyddID0gJ05hdWRvdGkgICZxdW90O3d5c2l3eWcmcXVvdDsgcmVkYWt0b3JpxbMga2VpxI1pYW50ICZzY2Fyb247aW8gbGF1a28gcmVpayZzY2Fyb247bWVzJzsKJGxhbmdbJ3Byb21wdF9kZWZhdWx0X2NvbnRlbnQnXSA9ICdOdW1hdHl0YXMgdHVyaW55cyB0ZWtzdG8gc3JpdHlqZSc7CiRsYW5nWydwcm9tcHRfZHJvcGRvd25fb3B0aW9ucyddID0gJ1ZhcmlhbnRhaSAocG8gdmllbsSFIGVpbHV0xJdqZSknOwokbGFuZ1sncHJvbXB0X2ZpZWxkX21heGxlbmd0aCddID0gJ0xhdWtlbGlvIE1ha3NpbWFsdXMgSWxnaXMnOwokbGFuZ1sncHJvbXB0X2ZpZWxkX2xlbmd0aCddID0gJ0xhdWtlbGlvIElsZ2lzJzsKJGxhbmdbJ3Byb21wdF9maWVsZF90eXBlJ10gPSAnTGF1a2VsaW8gVGlwYXMnOwokbGFuZ1sncHJvbXB0X2ZpZWxkX25hbWUnXSA9ICdMYXVrZWxpbyBQYXZhZGluaW1hcyc7CiRsYW5nWyd0aXRsZV9hZGRfZmllbGQnXSA9ICdQcmlkxJd0aSBhciBSZWRhZ3VvdGkgTGF1a2VsaW8gQXBpYnLEl8W+aW3EhSc7CiRsYW5nWydmaWVsZF9kZWZpbml0aW9ucyddID0gJ0xhdWtlbGlvIEFwaWJyxJfFvmltYXMnOwokbGFuZ1sncHJvbXB0X2FkZF9maWVsZCddID0gJ1ByaWTEl3RpIExhdWtlbGlvIEFwaWJyxJfFvmltxIUnOwokbGFuZ1sncGFyYW1fYWN0aW9uJ10gPSAnTnVzdGF0byBtb2R1bGlvIGRhcmJvIHLEl8W+aW3EhS4gIEdhbGltb3MgcmVpayZzY2Fyb247bcSXczogZGVmYXVsdCAtICjEr3ByYXN0YXMgdmVpa2ltYXMpLCBkZXRhaWwgLSBwYXJvZHl0aSB2aWVubyBmYWlsbyDEr3BhdHliZXMgcGFnYWwgcGF0ZWlrdMSFIHBhcmFtZXRyxIUgdXBsb2FkX2lkLCB5b3VzZW5kaXQgLSBwYXRlaWt0aSBmb3JtxIUgc3Uga3VyaWEgcGF0ZWlrdGFzIGZhaWxhcyBidXMgdmllbnUga2FydHUgaSZzY2Fyb247c2nFs3N0YXMga2VsaWVtcyBhZHJlc2F0YW1zJzsKJGxhbmdbJ3BhcmFtX3NlbmRmaWxlcGFnZSddID0gJ051cm9keXRpIHB1c2xhcG8gJnF1b3Q7aWQmcXVvdDsgYXIgJnF1b3Q7YWxpYXMmcXVvdDsga3VyaWFtZSBidXMgcGF0ZWlrdGEgJnF1b3Q7c2VuZCBhIGZpbGUmcXVvdDsgZm9ybWEnOwokbGFuZ1snZmlsZV91cGxvYWRlZCddID0gJ0ZhaWxhcyBzxJdrbWluZ2FpIGkmc2Nhcm9uO3NpxbNzdGFzJzsKJGxhbmdbJ3RvJ10gPSAnS2FtJzsKJGxhbmdbJ3RpdGxlX3lvdXNlbmRpdGZvcm1fdGVtcGxhdGUnXSA9ICdQcmlkxJd0aSBhciBSZWRhZ3VvdGkgJmFtcDtxdW90O1lvdSBTZW5kIEl0JmFtcDtxdW90OyBGb3Jtb3MgJlNjYXJvbjthYmxvbsSFJzsKJGxhbmdbJ3lvdXNlbmRpdGZvcm1fdGVtcGxhdGUnXSA9ICdZb3VTZW5kSXQgRm9ybW9zICZTY2Fyb247YWJsb25hcyc7CiRsYW5nWyd0aXRsZV95b3VzZW5kaXRmb3JtX3N5c2RlZmF1bHQnXSA9ICdGb3Jtb3MgJmFtcDtxdW90O3lvdSBzZW5kIGl0JmFtcDtxdW90OyBudW1hdHl0YXNpcyAmc2Nhcm9uO2FibG9uYXMnOwokbGFuZ1snbXNnX2ZpbGVfc2VudCddID0gJ1ByYW5lJnNjYXJvbjtpbWFzIGFwaWUgZmFpbMSFLCBpciBrYWlwIGrEryBwYXNpZWt0aSwgaSZzY2Fyb247c2nFs3N0YXMgcGFzaXJpbmt0aWVtcyBhZHJlc2F0YW1zLic7CiRsYW5nWydlcnJvcl9ub2FkZHJlc3NlcyddID0gJ1JlaWtpYSBwYXRlaWt0aSBiZW50IHZpZW7EhSBhZHJlc8SFJzsKJGxhbmdbJ2Vycm9yX25vc3ViamVjdCddID0gJ1JlaWtpYSBwYXRlaWt0aSB0ZW3EhSAnOwokbGFuZ1snc3ViamVjdCddID0gJ1RlbWEnOwokbGFuZ1sndGl0bGVfc2VuZGZpbGVwYWdlJ10gPSAnUHVzbGFwaXMgJmFtcDtxdW90O1NlbmQgYSBGaWxlJmFtcDtxdW90OyBmb3JtYWknOwokbGFuZ1snZmlsZV9pbmZvJ10gPSAnRmFpbG8gxK9wYXR5YsSXcyc7CiRsYW5nWydzZW5kJ10gPSAnRmFpbG8gxK9wYXR5YsSXcyc7CiRsYW5nWydub3RlcyddID0gJ1ByaWVyYSZzY2Fyb247YWknOwokbGFuZ1snYWRkcmVzc2VlcyddID0gJ1NpxbNzdGkgcHJhbmUmc2Nhcm9uO2ltxIUgaXIgYXBpZSAmc2Nhcm9uO8SvIGZhaWzEhSc7CiRsYW5nWydwcm9tcHRfc2VuZGZpbGVfZW1haWxfdGVtcGxhdGUnXSA9ICcmYW1wO3F1b3Q7U2VuZCBhIEZpbGUmYW1wO3F1b3Q7IEVsLiBsYWkmc2Nhcm9uO2tvICZzY2Fyb247YWJsb25hcyc7CiRsYW5nWyd0aXRsZV9zZW5kZmlsZWZvcm1fdGVtcGxhdGUnXSA9ICdQcmlkxJd0aSBhciBSZWRhZ3VvdGkgICZhbXA7cXVvdDtTZW5kIGEgRmlsZSZhbXA7cXVvdDsgRm9ybW9zICZzY2Fyb247YWJsb27EhSc7CiRsYW5nWydzZW5kZmlsZWZvcm1fdGVtcGxhdGUnXSA9ICcmYW1wO3F1b3Q7U2VuZCBhIEZpbGUmYW1wO3F1b3Q7IEZvcm1vcyAmU2Nhcm9uO2FibG9uYXMnOwokbGFuZ1sncHJvbXB0X25vdGlmeV9lbWFpbF90ZW1wbGF0ZSddID0gJ0VsLiBsYWkmc2Nhcm9uO2tvIGFwaWUgYXRzacWzc3R1cyBmYWlsdXMgJnNjYXJvbjthYmxvbmFzJzsKJGxhbmdbJ3RpdGxlX3NlbmRmaWxlZm9ybV9zeXNkZWZhdWx0J10gPSAnRm9ybW9zICZhbXA7cXVvdDtTZW5kIGEgRmlsZSZhbXA7cXVvdDsgbnVtYXR5dGFzaXMgJnNjYXJvbjthYmxvbmFzJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeWRlbGV0YWJsZSddID0gJyZTY2Fyb247aW9zIGthdGVnb3Jpam9zIGZhaWxhaSBnYWxpIGJ1dGkgdHJpbmFtaSc7CiRsYW5nWyd0aXRsZV9hbGxvd19kZWxldGUnXSA9ICdMZWlzdGkgdHJpbnRpIHB1c2xhcGlvIGxhbmt5dG9qYW1zIHRyaW50aSBmYWlsdXMnOwokbGFuZ1snZGVmYXVsdF90ZW1wbGF0ZXMnXSA9ICdOdW1hdHl0aWVqaSAmc2Nhcm9uO2FibG9uYWknOwokbGFuZ1snZmlyc3RwYWdlJ10gPSAnUGlybWFzJzsKJGxhbmdbJ3ByZXZwYWdlJ10gPSAnQW5rc3Rlc25pcyc7CiRsYW5nWyduZXh0cGFnZSddID0gJ0tpdGFzJzsKJGxhbmdbJ2xhc3RwYWdlJ10gPSAnUGFza3V0aW5pcyc7CiRsYW5nWydmaXJzdHBhZ2VfYXJyb3cnXSA9ICc8PCc7CiRsYW5nWydwcmV2cGFnZV9hcnJvdyddID0gJzwnOwokbGFuZ1snbmV4dHBhZ2VfYXJyb3cnXSA9ICc+JzsKJGxhbmdbJ2xhc3RwYWdlX2Fycm93J10gPSAnPj4nOwokbGFuZ1sncGFnZSddID0gJ1B1c2xhcGlzJzsKJGxhbmdbJ29mJ10gPSAnaSZzY2Fyb247JzsKJGxhbmdbJ3Byb21wdF9ncm91cGxpc3QnXSA9ICdBdXRvcml6dW90xbMgbGFua3l0b2rFsyBncnVwxJdzIChGRVUgR3JvdXBzKSc7CiRsYW5nWydpbmZvX2dyb3VwbGlzdCddID0gJ1Bhc2lyaW5rdGkgbGFua3l0b2rFsyBncnVwZXMgKEZFVSBncm91cHMpLCBrdXJpb21zIGJ1cyBzdXRlaWt0YSBwcmllZWlnYSBwcmllICZzY2Fyb247aW9zIGthdGVnb3Jpam9zIGZhaWzFsy4gIE5lcGHFvnltxJdqdXMgbmVpIHZpZW5vcyBncnVwxJdzIHByaWVlaWdhIG5lYnVzIHJpYm9qYW1hJzsKJGxhbmdbJ3RpdGxlX3NjYW4nXSA9ICdTa2FudW90aSAmc2Nhcm9uO2nEhSBrYXRlZ29yaWrEhSBkxJdsIG5hdWrFsyBieWzFsyc7CiRsYW5nWyd0aXRsZV9jcmVhdGVfdGh1bWJuYWlscyddID0gJ1N1a3VydGkgdHLFq2tzdGFtYXMgaWtvbmFzICZzY2Fyb247aW9qZSBrYXRlZ29yaWpvamUuJzsKJGxhbmdbJ2NyZWF0ZV90aHVtYm5haWxzJ10gPSAnU3VrdXJ0aSBJa29uYXMnOwokbGFuZ1sndGl0bGVfY3JlYXRlX3RodW1ibmFpbCddID0gJyZTY2Fyb247aWFtIGZhaWx1aSBzdWt1cnRpIGlrb27EhSBpJnNjYXJvbjsgbmF1am8nOwokbGFuZ1snY3JlYXRlX3RodW1ibmFpbCddID0gJ1N1a3VydGkgSWtvbsSFJzsKJGxhbmdbJ2Vycm9yX3BhdGhlcnJvciddID0gJ05lcGF2eWtvIGF0dmVydGkga2F0YWxvZ28gKGFyIHRpa3JhaSBwYWthbmthIHRlaXNpxbM/JzsKJGxhbmdbJ3RpdGxlX2Rvd25sb2FkX2NodW5rc2l6ZSddID0gJ0tpZWt2aWVubyBzaXVuxI1pYW1vIGZhaWxvIGRhbGllcyBkeWRpcyc7CiRsYW5nWydpbmZvX2Rvd25sb2FkX2NodW5rc2l6ZSddID0gJ0tlacSNaWFudCAmc2Nhcm9uO8SvIHBhcmFtZXRyxIUgZ2FsaW1hIGtlaXN0aSBzaXVudGltbyBncmVpdMSvLCBnYWxpIGLFq3RpIG5hdWRpbmdhIGthaSB0csWra3N0YSBhdG1pbnRpZXMuJzsKJGxhbmdbJ3dhcm5pbmdfc2FmZV9tb2RlJ10gPSAnUEhQIHNhZmUgbW9kZSB5cmEgxK9qdW5ndGFzLiAgR2FsaSBraWx0aSBuZXNrbGFuZHVtxbMgc2l1bsSNaWFudCBmYWlsdXMsIHRhaXAgcGF0IGthaSBrdXJpxbMgZmFpbMWzIGdhbGkgbmVwYXZ5a3RpIGkmc2Nhcm9uO3NpxbNzdGksIG5lcyBuZWJ1cyBnYWxpbWEgcGFrZWlzdGkgbnVtYXR5dMWzasWzIHBocCBwYXJhbWV0csWzICAgUmVrb21lbmR1b2phbWEgc3VzaXNpZWt0aSBzdSBzZXJ2ZXJpbyBhZG1pbmlzdHJhdG9yaXVtaSwga2FkICZxdW90O3NhZmUgbW9kZSZxdW90OyByxJfFvmltYXMgYsWrdMWzIGkmc2Nhcm9uO2p1bmd0YXMuJzsKJGxhbmdbJ3BhcmFtX2RldGFpbHBhZ2UnXSA9ICdOYXVkaW5nYSBub3JpbnQgaSZzY2Fyb247c2FtxbMgZmFpbG8gYXByYSZzY2Fyb247xIUgcGF0ZWlrdGkgcHVzbGFweWplIHN1IGtpdHUgdGVtcGxlaXR1OyBSZWlrJnNjYXJvbjttxJdzIGdhbGkgYsWrdGkgZWd6aXN0dW9qbsSNaW8gcHVzbGFwaW8gJnF1b3Q7aWQmcXVvdDsgYXJiYSBwdXNsYXBpbyAmcXVvdDthbGlhcyZxdW90Oy4nOwokbGFuZ1sncGFyYW1fcHJlZml4J10gPSAnQSBib29sZWFuIHRoYXQgaW5kaWNhdGVzIHdldGhlciBmaWxlIG5hbWVzIHNob3VsZCBiZSBwcmVmaXhlZCc7CiRsYW5nWydwYXJhbV9wcmVmaXhfZmV1J10gPSAnQSBib29sZWFuIHBhcmFtZXRlciB0aGF0IGluZGljYXRlcyB0aGF0IHRoZSBwcmVmaXggc2hvdWxkIGJlIHRha2VuIGZyb20gdGhlIGN1cnJlbnQgYXV0aG9yLCBpZiBub3Qgc3BlY2lmaWVkLCB0aGUgcHJlZml4IGlzIHRoZSBjdXJyZW50IHRpbWUgKGluIGRlY2hleCBmb3JtYXQpJzsKJGxhbmdbJ3BhcmFtX25vY2FwdGNoYSddID0gJ0kmc2Nhcm9uO3NpdW50aW1vIGZvcm1vamUgbmVuYXVkb2phbXMgJnF1b3Q7Y2FwdGNoYSZxdW90OyAobmVuYXVkb2phbWFzIHBhZ2FsIG51dHlsxJdqaW3EhSkuJzsKJGxhbmdbJ3RpdGxlX3VwbG9hZGZvcm1fdGVtcGxhdGUnXSA9ICdSZWRhZ3VvdGkgRmFpbG8gSSZzY2Fyb247c2l1bnRpbW8gKFVwbG9hZCBGb3JtKSAmc2Nhcm9uO2FibG9uxIUnOwokbGFuZ1snY2FwdGNoYV90aXRsZSddID0gJ8SudmVza2l0ZSB0ZWtzdMSFIGkmc2Nhcm9uOyBwYXZlaWtzbMSXbGlvJzsKJGxhbmdbJ2Vycm9yX2NhcHRjaGFtaXNtYXRjaCddID0gJ1Rla3N0YXMgaSZzY2Fyb247IHBhdmVpa3NsxJdsaW8gxK92ZXN0YXMgbmV0ZWlzaW5nYWknOwokbGFuZ1sndGl0bGVfYXV0b3RodW1ibmFpbF9leHRlbnNpb25zJ10gPSAnRmFpbGFtcyBzdSAmc2Nhcm9uO2lhaXMgcGzEl3RpbmlhaXMgc3VrdXJ0aSBpa29uxJdsZXMnOwokbGFuZ1sndGl0bGVfYXV0b3RodW1ibmFpbF9zaXplJ10gPSAnTWFrc2ltYWx1cyBzdWt1cnRvcyBpa29uxJdsxJdzIGR5ZGlzIChwaWtzZWxpYWlzKS4nOwokbGFuZ1sncHJvbXB0X3VwbG9hZF9pY29uJ10gPSAnQXRzacWzc3RpIGlrb27El2zEmSc7CiRsYW5nWydpbmZvX3N5c2RlZmF1bHQnXSA9ICdQYXRlaWt0YXMgdGVrc3RhcyBidXMgbmF1ZG9qYW1hcyAga3VyaWFudCAmc2Nhcm9uO2lvIHRpcG8gdGVtcGxlaXR1cyc7CiRsYW5nWyd0aXRsZV9kZXRhaWxycHRfc3lzZGVmYXVsdCddID0gJ051bWF0eXRhc2lzIEkmc2Nhcm9uO3NhbWF1cyBGYWlsbyBBcHJhJnNjYXJvbjtvICZTY2Fyb247YWJsb25hcyc7CiRsYW5nWyd0aXRsZV9zdW1tYXJ5cnB0X3N5c2RlZmF1bHQnXSA9ICdOdW1hdHl0YXNpcyBGYWlsxbMgU2FudHJhdWtvcyAmU2Nhcm9uO2FibG9uYXMnOwokbGFuZ1sndGl0bGVfdXBsb2FkZm9ybV9zeXNkZWZhdWx0J10gPSAnTnVtYXR5dGFzaXMgRmFpbG8gSSZzY2Fyb247c2l1bnRpbW8gJlNjYXJvbjthYmxvbmFzJzsKJGxhbmdbJ3RlbXBsYXRlJ10gPSAnJlNjYXJvbjthYmxvbmFzJzsKJGxhbmdbJ3Jlc2V0dG9kZWZhdWx0J10gPSAnQXRzdGF0eXRpIMSvIMSucHJhc3R1cyc7CiRsYW5nWyd0aXRsZV9zdW1tYXJ5cnB0X3RlbXBsYXRlJ10gPSAnRmFpbMWzIFNhbnRyYXVrb3MgJlNjYXJvbjthYmxvbmFzJzsKJGxhbmdbJ3RpdGxlX2RldGFpbHJwdF90ZW1wbGF0ZSddID0gJ0kmc2Nhcm9uO3NhbWF1cyBGYWlsbyBBcHJhJnNjYXJvbjtvICZTY2Fyb247YWJsb25hcyc7CiRsYW5nWydwcm9tcHRfbmFtZSddID0gJ1BhdmFkaW5pbWFzJzsKJGxhbmdbJ3Byb21wdF9kZWZhdWx0J10gPSAnxK5wcmFzdGFzJzsKJGxhbmdbJ2xlZ2VuZF91cGxvYWRmb3JtJ10gPSAnQXRzacWzc3RpIGJ5bMSFJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdwYXJhbSddID0gJ1Ryxatrc3RhIHByaXZhbG9tbyBwYXJhbWV0cm8nOwokbGFuZ1snZXJyb3JfbWlzc2luZ25hbWUnXSA9ICdUcsWra3N0YSBQYXZhZGluaW1vJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdleHRlbnNpb25zJ10gPSAnQXQgbGVhc3Qgb25lIGZpbGUgZXh0ZW5zaW9uIG11c3QgYmUgc3BlY2lmaWVkJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdpY29uJ10gPSAnQW4gaWNvbiBtdXN0IGJlIHNwZWNpZmllZCc7CiRsYW5nWydlcnJvcl9ub3N1Y2hyb3cnXSA9ICdUaGUgc3BlY2lmaWVkIHJvdyBjb3VsZCBub3QgYmUgZm91bmQnOwokbGFuZ1snbmFtZV91bmtub3duJ10gPSAnTmXFvmlub21hcyc7CiRsYW5nWydkZXNjcmlwdGlvbl91bmtub3duJ10gPSAnRmlsZSB0eXBlIGRlc2NyaXB0aW9uIGZvciB1bm1hdGNoZWQgZmlsZXMnOwokbGFuZ1snaW1hZ2UnXSA9ICdQYXZlaWtzbMSXbGlzJzsKJGxhbmdbJ2ljb24nXSA9ICdJa29uYSc7CiRsYW5nWydleHRlbnNpb25zJ10gPSAnRmlsZSBFeHRlbnNpb25zJzsKJGxhbmdbJ2FkZGZpbGV0eXBlJ10gPSAnQWRkIE5ldyBGaWxlIFR5cGUnOwokbGFuZ1snZmlsZV90eXBlcyddID0gJ0ZpbGUgVHlwZXMnOwokbGFuZ1snZXJyb3Jfbm9jYXRlZ29yeWlkJ10gPSAnTm8gQ2F0ZWdvcnkgaWQgd2FzIHN1cHBsaWVkJzsKJGxhbmdbJ2Vycm9yX25vY2F0ZWdvcnknXSA9ICdObyBDYXRlZ29yeSBpZCB3YXMgc3VwcGxpZWQnOwokbGFuZ1snZXJyb3JfdGVtcGxhdGVuYW1lZXhpc3RzJ10gPSAnQSB0ZW1wbGF0ZSBieSB0aGF0IG5hbWUgYWxyZWFkeSBleGlzdHMnOwokbGFuZ1sncHJvbXB0X3RlbXBsYXRlbmFtZSddID0gJ1RlbXBsYXRlIE5hbWUnOwokbGFuZ1sncHJvbXB0X3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUnOwokbGFuZ1sncHJvbXB0X25ld3RlbXBsYXRlJ10gPSAnQ3JlYXRlIGEgbmV3IHRlbXBsYXRlJzsKJGxhbmdbJ2hlbHBfT25Eb3dubG9hZCddID0gJzxwPlBvIGZhaWxvIHRhbHBpbmltbyA8L3A+DQo8aDQ+UGFyYW1ldHJhaTwvaDQ+DQo8dWw+DQo8bGk+PGVtPmlkPC9lbT4gLSBGYWlsbyAmcXVvdDtpZCZxdW90OzwvbGk+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIEZhaWxvIHBhdmFkaW5pbWFzPC9saT4NCjxsaT48ZW0+aXA8L2VtPiAtICBMYW5reXRvam8sIGF0aXNpdW50dXNpbyBmYWlsxIUgSVA8L2xpPg0KPC91bD4NCic7CiRsYW5nWydoZWxwX09uRGVsZXRlQ2F0ZWdvcnknXSA9ICc8cD5QbyBLYXRlZ29yaWpvcyB0cmluaW1vPC9wPg0KPGg0PlBhcmFtZXRyYWk8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBLYXRlZ29yaW9zIHBhdmFkaW5pbWFzPC9saT4NCjxsaT48ZW0+cGF0aDwvZW0+IC0gS2F0ZWdvcmlqYWkgcHJpa2xhdXNhbsSNaW8ga2F0YWxvZ28ga2VsaWFzPC9saT4NCjwvdWw+JzsKJGxhbmdbJ2hlbHBfT25DcmVhdGVDYXRlZ29yeSddID0gJzxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgY2F0ZWdvcnkgaXMgQ3JlYXRlZDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIGNhdGVnb3J5PC9saT4NCjxsaT48ZW0+ZGVzY3JpcHRpb248L2VtPiAtIFRoZSBjYXRlZ29yeSBkZXNjcmlwdGlvbjwvbGk+DQo8bGk+PGVtPnBhdGg8L2VtPiAtIFRoZSBjYXRlZ29yeSBwYXRoPC9saT4NCjxsaT48ZW0+cGF0aDwvZW0+IC0gQSBmbGFnIGluZGljYXRpbmcgaWYgdGhlIGNhdGVnb3J5IGlzIGxpc3RhYmxlPC9saT4NCjwvdWw+DQonOwokbGFuZ1snaGVscF9PblJlbW92ZSddID0gJzxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgZmlsZSBpcyByZW1vdmVkIHZpYSB0aGUgYWRtaW4gb3IgZnJvbnRlbmQgaW50ZXJmYWNlczwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIHJlbW92ZWQgZmlsZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgaWQgb2YgdGhlIHJlbW92ZWQgZmlsZTwvbGk+DQo8bGk+PGVtPmNhdGVnb3J5X2lkPC9lbT4gLSBUaGUgaWQgb2YgdGhlIGNhdGVnb3J5PC9saT4NCjwvdWw+DQonOwokbGFuZ1snaGVscF9PblVwbG9hZCddID0gJzxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgbmV3IGZpbGUgaXMgdXBsb2FkZWQgdmlhIHRoZSBhZG1pbiBvciBmcm9udGVuZCBpbnRlcmZhY2VzPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5jYXRlZ29yeTwvZW0+IC0gVGhlIGNhdGVnb3J5IG5hbWU8L2xpPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgbmFtZSBvZiB0aGUgdXBsb2FkZWQgZmlsZTwvbGk+DQo8bGk+PGVtPnNpemU8L2VtPiAtIFRoZSBzaXplIG9mIHRoZSB1cGxvYWRlZCBmaWxlPC9saT4NCjxsaT48ZW0+c3VtbWFyeTwvZW0+IC0gVGhlIHNob3J0IGRlc2NyaXB0aW9uIGZvciB0aGUgdXBsb2FkZWQgZmlsZSAobWF5IGJlIGVtcHR5KTwvZW0+PC9saT4NCjxsaT48ZW0+ZGVzY3JpcHRpb248L2VtPiAtIFRoZSBsb25nIGRlc2NyaXB0aW9uIGZvciB0aGUgdXBsb2FkZWQgZmlsZSAobWF5IGJlIGVtcHR5KTwvZW0+PC9saT4NCjxsaT48ZW0+YXV0aG9yPC9lbT4gLSBUaGUgYXV0aG9yIG9mIHRoZSB1cGxvYWRlZCBmaWxlIChpZiBhdmFpbGFibGUpPC9lbT48L2xpPg0KPGxpPjxlbT5pcF9hZGRyZXNzPC9lbT4gLSBUaGUgaW50ZXJuZXQgYWRkcmVzcyBvZiB0aGUgY2xpZW50IHRoYXQgdXBsb2FkZWQgdGhlIGZpbGU8L2xpPg0KPC91bD4NCic7CiRsYW5nWydpbmZvX2V2ZW50X29uZGVsZXRlY2F0ZWdvcnknXSA9ICdFdmVudCBnZW5lcmF0ZWQgd2hlbiBhIGNhdGVnb3J5IGlzIGRlbGV0ZWQnOwokbGFuZ1snaW5mb19ldmVudF9vbmNyZWF0ZWNhdGVnb3J5J10gPSAnRXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBjYXRlZ29yeSBpcyBjcmVhdGVkJzsKJGxhbmdbJ2luZm9fZXZlbnRfb25kb3dubG9hZCddID0gJ0V2ZW50IGdlbmVyYXRlZCB3aGVuIGEgZmlsZSBpcyBkb3dubG9hZGVkJzsKJGxhbmdbJ2luZm9fZXZlbnRfb251cGxvYWQnXSA9ICdFdmVudCBnZW5lcmF0ZWQgd2hlbiBhIG5ldyBmaWxlIGlzIHVwbG9hZGVkJzsKJGxhbmdbJ2luZm9fZXZlbnRfb25yZW1vdmUnXSA9ICdFdmVudCBnZW5lcmF0ZWQgd2hlbiBhIGZpbGUgaXMgcmVtb3ZlZCc7CiRsYW5nWyd0aXRsZV91c2VydGFnX29udXBsb2FkJ10gPSAnVXNlciBkZWZpbmVkIHRhZyB0byBjYWxsIGFmdGVyIHVwbG9hZCBpcyBjb21wbGV0ZSc7CiRsYW5nWydub25lJ10gPSAnTm9uZSc7CiRsYW5nWydtYXRjaGVzZm91bmQnXSA9ICdNYXRjaGVzIGZvdW5kJzsKJGxhbmdbJ2ZpbHRlciddID0gJ0ZpbHRlcic7CiRsYW5nWyd0aXRsZV9yZWRpcmVjdG9udXBsb2FkJ10gPSAnUmVkaXJlY3QgdG8gcGFnZSBpZC9hbGlhcyBvbiB1c2VyIHVwbG9hZCc7CiRsYW5nWydkZXRhaWxzJ10gPSAnRGV0YWlscyc7CiRsYW5nWydjb25maXJtX3ByZWZlcmVuY2VzJ10gPSAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGFkanVzdCB0aGUgcHJlZmVyZW5jZXM/JzsKJGxhbmdbJ2Vycm9yX25vZmlsZXN1cGxvYWRlZCddID0gJ05vIGZpbGVzIHdlcmUgdXBsb2FkZWQuJzsKJGxhbmdbJ3Byb21wdF9yZXBsYWNlJ10gPSAnQWxsb3cgT3ZlcndyaXRlJzsKJGxhbmdbJ2luZm9fcmVwbGFjZSddID0gJ1JlcGxhY2UgYW55IGZpbGUgd2l0aCB0aGUgc2FtZSBuYW1lIChkb2VzIG5vdCBjaGFuZ2UgaWQpJzsKJGxhbmdbJ3BhcmFtX25vX2luaXRpYWwnXSA9ICdEbyBub3QgZGlzcGxheSBhbnkgaW5pdGlhbCByZXN1bHRzIHdoZW4gdGhlIGZpbHRlciBpcyBvbic7CiRsYW5nWydwYXJhbV9rZXknXSA9ICdQcm92aWRlIGFuIGFkZGl0aW9uYWwga2V5IHRvIHRoZSBtb2R1bGUgZm9yIGZ1cnRoZXIgb3JnYW5pemluZyB1cGxvYWRzLiAgVGhpcyBrZXkgY291bGQgYmUgYW4gZW5jb2RlZCBzdHJpbmcgbGlrZTogJiMwMzk7ZmV1c2Vyczp1aWQmIzAzOTssIGV0Yy4gIFRoaXMgcGFyYW1ldGVyIGlzIHVzdWFsbHkgb25seSBuZWVkZWQgd2hlbiBlbWJlZGRpbmcgdGhlIHVwbG9hZHMgbW9kdWxlIGludG8gYW5vdGhlciBtb2R1bGUnOwokbGFuZ1sncGFyYW1fbm9hdXRob3InXSA9ICdIaWRlIHRoZSBhdXRob3IgZmllbGQgZnJvbSB0aGUgdXBsb2FkIGZvcm0uICBUaGlzIHBhcmFtZXRlciBpcyBvbmx5IHZhbGlkIHdoZW4gbW9kZT0mIzAzOTt1cGxvYWQmIzAzOTsuICBJZiBUaGUgRnJvbnRlbmRVc2VycyBtb2R1bGUgaXMgcHJlc2VudCwgYW5kIGEgdXNlciBpcyBjdXJyZW50bHkgbG9nZ2VkIGluLCBhIGhpZGRlbiBmaWVsZCB3aWxsIGhvbGQgdGhlIGN1cnJlbnRseSBsb2dnZWQgaW4gdXNlcm5hbWUnOwokbGFuZ1sncGFyYW1fdXBsb2FkX2lkJ10gPSAndXBsb2FkX2lkPSZxdW90O2lkJnF1b3Q7IC0gc3BlY2lmeSBhIHNpbmdsZSBmaWxlIGZvciB0aGUgdXJsL2xpbmsgb3Igc2luZ2xlIG1vZGVzIChhYm92ZSknOwokbGFuZ1sncGFyYW1fZGV0YWlsdGVtcGxhdGUnXSA9ICdVc2UgYSB0ZW1wbGF0ZSB3aXRoIHRoaXMgbmFtZSBmb3IgdGhlIGRldGFpbGVkIHJlcG9ydC4nOwokbGFuZ1sncGFyYW1fdGVtcGxhdGUnXSA9ICdVc2UgYSB0ZW1wbGF0ZSB3aXRoIHRoaXMgbmFtZSBmb3IgdGhpcyByZXBvcnQgb3IgZm9ybS4gIFRoZSBtb2RlIGlzIHVzZWQgdG8gZGV0ZXJtaW5lIHdoYXQgdHlwZSBvZiB0ZW1wbGF0ZSBpcyByZXF1aXJlcmQsIGFuZCB0aGVuIGEgbmFtZSBtYXRjaCBpcyBwZXJmb3JtZWQgd2l0aGluIHRoYXQgdHlwZS4nOwokbGFuZ1sncGFyYW1fZmlsdGVyJ10gPSAnRGlzcGxheSB0aGUgZmlsdGVyaW5nIGZvcm0nOwokbGFuZ1sncGFyYW1fbm9faW50aXRpYWwnXSA9ICdPbmx5IHVzZWZ1bCB3aGVuIHRoZSBmaWx0ZXIgcGFyYW1ldGVyIGlzIHN1cHBsaWVkLCBvciBvbiBieSBkZWZhdWx0LCB0aGlzIHBhcmFtZXRlciBpbmRpY2F0ZXMgd2V0aGVyIGluaXRpYWwgcmVzdWx0cyBzaG91bGQgYmUgcmV0dXJuZWQnOwokbGFuZ1sncGFyYW1fZmlsZXR5cGVzJ10gPSAnRGlzcGxheSBvbmx5IGZpbGVzIHdob3NlIHR5cGUgbWF0Y2hlcyB0aGlzIGNvbW1hIHNlcGFyYXRlZCBsaXN0JzsKJGxhbmdbJ3BhcmFtX3NvcnRvcmRlciddID0gJyAgPHA+U29ydCBPcmRlcnMNCiAgPHVsPg0KICA8bGk+PGVtPmRhdGVfYXNjPC9lbT4gLSBTb3J0IGJ5IGFzY2VuZGluZyBkYXRlPC9saT4NCiAgPGxpPjxlbT5kYXRlX2Rlc2M8L2VtPiAtIFNvcnQgYnkgZGVzY2VuZGluZyBkYXRlPC9saT4NCiAgPGxpPjxlbT5uYW1lX2FzYzwvZW0+IC0gU29ydCBieSBhc2NlbmRpbmcgbmFtZTwvbGk+DQogIDxsaT48ZW0+bmFtZV9kZXNjPC9lbT4gLSBTb3J0IGJ5IGRlc2NlbmRpbmcgbmFtZTwvbGk+DQogIDxsaT48ZW0+c2l6ZV9hc2M8L2VtPiAtIFNvcnQgYnkgYXNjZW5kaW5nIHNpemU8L2xpPg0KICA8bGk+PGVtPnNpemVfZGVzYzwvZW0+IC0gU29ydCBieSBkZXNjZW5kaW5nIHNpemU8L2xpPg0KICA8bGk+PGVtPmRlc2NfYXNjPC9lbT4gLSBTb3J0IGJ5IGFzY2VuZGluZyBkZXNjcmlwdGlvbjwvbGk+DQogIDxsaT48ZW0+ZGVzY19kZXNjPC9lbT4gLSBTb3J0IGJ5IGRlc2NlbmRpbmcgZGVzY3JpcHRpb248L2xpPg0KICA8bGk+PGVtPmF1dGhvcl9hc2M8L2VtPiAtIFNvcnQgYnkgYXNjZW5kaW5nIGF1dGhvcjwvbGk+DQogIDxsaT48ZW0+YXV0aG9yX2Rlc2M8L2VtPiAtIFNvcnQgYnkgZGVzY2VuZGluZyBhdXRob3I8L2xpPg0KICA8bGk+PGVtPmlwX2FzYzwvZW0+IC0gU29ydCBieSBhc2NlbmRpbmcgaXAgYWRkcmVzczwvbGk+DQogIDxsaT48ZW0+aXBfZGVzYzwvZW0+IC0gU29ydCBieSBkZXNjZW5kaW5nIGlwIGFkZHJlc3M8L2xpPg0KICA8bGk+PGVtPnJhbmRvbTwvZW0+IC0gUmFuZG9tIHNvcnQgb3JkZXI8L2xpPg0KICA8L3VsPg0KICA8L3A+JzsKJGxhbmdbJ3BhcmFtX2xpc3Rpbmd0ZW1wbGF0ZSddID0gJ1RlbXBsYXRlIHRvIHVzZSBmb3IgY2F0ZWdvcnkgbGlzdGluZ3MgYWZ0ZXIgY2xpY2t0aHJvdWdoIGZyb20gQ2F0ZWdvcnkgU3VtbWFyeSBwYWdlJzsKJGxhbmdbJ3BhcmFtX2xpc3Rpbmdzb3J0b3JkZXInXSA9ICdTb3J0IG9yZGVyIChhbGEgcGFyYW1fc29ydG9yZGVyKSB0byB1c2UgZm9yIGNhdGVnb3J5IGxpc3RpbmdzIGFmdGVyIGNsaWNrdGhyb3VnaCBmcm9tIENhdGVnb3J5IFN1bW1hcnkgcGFnZSc7CiRsYW5nWydwYXJhbV9maWxlZXh0ZW5zaW9ucyddID0gJyANCmZpbGVfZXh0ZW5zaW9ucz0mcXVvdDtleHQxLGV4dDIsZXh0MyZxdW90Ow0KPHA+dmFsaWQgb25seSB3aGVuIG1vZGU9dXBsb2FkLCB0aGlzIHBhcmFtZXRlciBsaW1pdHMgdGhlIHR5cGVzIG9mIGZpbGVzIHRoYXQgY2FuIGJlIHVwbG9hZGVkLiAgSXQgb3ZlcnJpZGVzIGFueSBzZXR0aW5ncyBpbiB0aGUgbW9kdWxlIHByZWZlcmVuY2VzLjwvcD4nOwokbGFuZ1sncGFyYW1fY291bnQnXSA9ICdjb3VudD0mcXVvdDtOJnF1b3Q7DQo8cD5BIHBhcmFtZXRlciB0byBsaXN0IG9ubHkgdGhlIGZpcnN0IE4gcmVzdWx0cyBvZiB0aGUgcXVlcnkuICBQYWdpbmF0aW9uIHdvdWxkIGJlIGJldHRlciwgYnV0IHRoaXMgd2lsbCBkbyB0aGUgdHJpY2sgZm9yIG5vdzwvcD4nOwokbGFuZ1sncGFyYW1fY2F0ZWdvcnknXSA9ICdjYXRlZ29yeT0mcXVvdDtuYW1lJnF1b3Q7DQo8cD48Yj5Ob3RlOjwvYj4gQ2F0ZWdvcnkgY2FuIGJlICZxdW90O2FsbCZxdW90Oywgd2hpY2ggd2lsbCBsaXN0IGFsbCBvZiB0aGUgdXBsb2FkcyBmcm9tIGFsbCA8ZW0+bGlzdGFibGU8L2VtPiBjYXRlZ29yaWVzPC9wPic7CiRsYW5nWydwYXJhbV9tb2RlJ10gPSAnICA8dWw+DQogIDxsaT48ZW0+ZGV0YWlsZWQ8L2VtPiAtIERpc3BsYXkgYSBkZXRhaWxlZCBsaXN0IG9mIGFsbCBmaWxlcyBpbiB0aGUgY2F0ZWdvcnk8L2xpPg0KICA8bGk+PGVtPnVwbG9hZDwvZW0+IC0gRGlzcGxheSBhIGZvcm0gdG8gYWxsb3cgYSBmcm9udGVuZCB1c2VyIHRvIHVwbG9hZCBhIGZpbGU8L2xpPg0KICA8bGk+PGVtPnVybCA8aT5vcjwvaT4gbGluazwvZW0+IC0gRGlzcGxheSBhIGxpbmsgdG8gYSBmaWxlPC9saT4NCiAgPGxpPjxlbT5zdW1tYXJ5PC9lbT4gLSBEaXNwbGF5IGEgc3VtbWFyaXplZCBsaXN0IG9mIGFsbCBmaWxlcyBpbiB0aGUgY2F0ZWdvcnk8L2xpPg0KICA8bGk+PGVtPnNpbmdsZTwvZW0+IC0gRGlzcGxheSBhIGRldGFpbGVkIHJlcG9ydCBhYm91dCBhIHNpbmdsZSB1cGxvYWQ8L2xpPg0KICA8bGk+PGVtPnNpbmdsZXN1bW1hcnk8L2VtPiAtIERpc3BsYXkgYSBzdW1tYXJpemVkIHJlcG9ydCBhYm91dCBhIHNpbmdsZSB1cGxvYWQ8L2xpPg0KICA8L3VsPic7CiRsYW5nWydwYXJhbV9zZWxlY3Rmb3JtJ10gPSAnV2hlbiB1c2luZyB0aGUgJiMwMzk7c2VsZWN0JiMwMzk7IG1vZGUsIHRoaXMgcGFyYW1ldGVyIGlzIHRoZSBmb3JtaWQgb2YgdGhlIHBhcmVudCBmb3JtLiAgVXNlZCB0byBoYW5kbGUgcGFyYW1ldGVyIHBhc3NpbmcnOwokbGFuZ1sncGFyYW1fc2VsZWN0bmFtZSddID0gJ3doZW4gdXNpbmcgdGhlICYjMDM5O3NlbGVjdCYjMDM5OyBtb2RlLCB0aGlzIHBhcmFtZXRlciBzcGVjaWZpZXMgdGhlIG5hbWUgb2YgdGhlIGZpZWxkJzsKJGxhbmdbJ3BhcmFtX3NlbGVjdHZhbHVlJ10gPSAnV2hlbiB1c2luZyB0aGUgJiMwMzk7c2VsZWN0JiMwMzk7IG1vZGUsIHRoaXMgcGFyYW1ldGVyIHNwZWNpZmllcyB0aGUgZGVmYXVsdCBmaWVsZCB2YWx1ZSc7CiRsYW5nWydwYXJhbV9zZWxlY3Rub25lJ10gPSAnV2hlbiB1c2luZyB0aGUgJiMwMzk7c2VsZWN0JiMwMzk7IG1vZGUsIHRoaXMgcGFyYW1ldGVyIHNwZWNpZmllcyB3ZXRoZXIgJiMwMzk7bm9uZSYjMDM5OyBpcyBhIHZhbGlkIGNob2ljZS4nOwokbGFuZ1sncmV0dXJudG9tb2R1bGUnXSA9ICdSZXR1cm4gdG8gbW9kdWxlIHBhbmVsJzsKJGxhbmdbJ2Vycm9yX25vY2F0ZWdvcmllcyddID0gJ1RoZXJlIGFyZSBubyBkZWZpbmVkIGNhdGVnb3JpZXMnOwokbGFuZ1sndGl0bGVfZW5mb3JjZWV4dGVuc2lvbnMnXSA9ICdSZXF1aXJlIGV4dGVuc2lvbnMgb24gYWxsIHVwbG9hZGVkIGZpbGVzJzsKJGxhbmdbJ3Jlc3RvcmVkZWZhdWx0c2NvbmZpcm0nXSA9ICdUaGlzIG9wZXJhdGlvbiB3aWxsIHJlc3RvcmUgdGhlIHRlbXBsYXRlIHRvIHN5c3RlbSBkZWZhdWx0cy4gIEFueSBjaGFuZ2VzIHlvdSBoYXZlIG1hZGUgd2lsbCBiZSBsb3N0LiAgQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIHByb2NlZWQ/JzsKJGxhbmdbJ3RodW1ibmFpbCddID0gJ1RodW1ibmFpbCc7CiRsYW5nWyduZXd0aHVtYm5haWwnXSA9ICdVcGxvZGEgbmV3IHRodW1ibmFpbCc7CiRsYW5nWydpbmZvX3N1bW1hcnknXSA9ICdBIGJyaWVmIGRlc2NyaXB0aW9uIG9mIHRoZSBmaWxlIChpZiBlbXB0eSwgdGhlIGZpbGUgbmFtZSBpcyB1c2VkIHdpdGhvdXQgdGhlIGV4dGVuc2lvbiknOwokbGFuZ1snaW5mb19jYXRlZ29yeW5hbWUnXSA9ICdBIGJyaWVmIG5hbWUgZm9yIHlvdXIgY2F0ZWdvcnkgKGh1bWFuIHJlYWRhYmxlKSc7CiRsYW5nWydpbmZvX2NhdGVnb3J5ZGVzYyddID0gJ0EgZGVzY3JpcHRpb24gZm9yIHlvdXIgY2F0ZWdvcnknOwokbGFuZ1snaW5mb19jYXRlZ29yeXBhdGgnXSA9ICdUaGUgZGlyZWN0b3J5IG5hbWUgaW5zaWRlIHRoZSB1cGxvYWRzIGRpcmVjdG9yeSB0aGF0IHdpbGwgYmUgdXNlZCB0byBzdG9yZSBmaWxlcyBpbiB0aGlzIGNhdGVnb3J5LiAgSWYgdGhlIGRpcmVjdG9yeSBvZiB0aGlzIG5hbWUgZG9lcyBub3QgYWxyZWFkeSBleGlzdCwgaXQgbWF5IGJlIGNyZWF0ZWQnOwokbGFuZ1snaW5mb19kZXN0bmFtZSddID0gJ1VzZSB0aGUgJiMwMzk7VXBsb2FkIEFzJiMwMzk7IGZpZWxkIHRvIGNoYW5nZSB0aGUgbmFtZSBvZiB0aGUgZmlsZSBvbiB1cGxvYWQuICBMZWF2ZSBibGFuayB0byBwcmVzZXJ2ZSB0aGUgZmlsZW5hbWUgYXMtaXMuJzsKJGxhbmdbJ2Vycm9yX2NhbnRjcmVhdGVkaXJlY3RvcnknXSA9ICdDb3VsZCBub3QgY3JlYXRlIGRpcmVjdG9yeSc7CiRsYW5nWydlcnJvcl9ub21haWxlcm1vZHVsZSddID0gJ1RoZSBDTVNNYWlsZXIgbW9kdWxlIGNvdWxkIG5vdCBiZSBpbnN0YW50aWF0ZWQnOwokbGFuZ1sndXBsb2FkX25vdGlmaWNhdGlvbiddID0gJ0EgbmV3IGZpbGUgaGFzIGJlZW4gdXBsb2FkZWQnOwokbGFuZ1sndGl0bGVfZW1haWxfb25fdXBsb2FkJ10gPSAnU2VuZCB1cGxvYWQgbm90aWZpY2F0aW9uIHRvOic7CiRsYW5nWydlbWFpbF90ZW1wbGF0ZSddID0gJ0VtYWlsIFRlbXBsYXRlJzsKJGxhbmdbJ3RpdGxlX2R1bW15X2luZGV4X2h0bWwnXSA9ICdDcmVhdGUgZHVtbXkgaW5kZXguaHRtbCBmaWxlcyBpbiBlYWNoIGRpcmVjdG9yeT88YnIvPjxlbT5BbnkgZXhpc3RpbmcgaW5kZXguaHRtbCBmaWxlcyB3aWxsIHJlbWFpbjwvZW0+JzsKJGxhbmdbJ2Fib3V0J10gPSAnQWJvdXQnOwokbGFuZ1snZXJyb3JfcGVybWlzc2lvbmRlbmllZCddID0gJ0FjY2VzcyBEZW5pZWQuIFBsZWFzZSBjaGVjayB5b3VyIHBlcm1pc3Npb25zLic7CiRsYW5nWydlcnJvcl9jb3VsZG5vdHdyaXRlJ10gPSAnQ291bGQgbm90IHdyaXRlJzsKJGxhbmdbJ2FkZGNhdGVnb3J5J10gPSAnQWRkIENhdGVnb3J5JzsKJGxhbmdbJ2FsbCddID0gJ0FsbCc7CiRsYW5nWydhcmV5b3VzdXJlJ10gPSAnQXJlIFlvdSBTdXJlPyc7CiRsYW5nWydhdXRob3InXSA9ICdBdXRob3InOwokbGFuZ1snY2FuY2VsJ10gPSAnQ2FuY2VsJzsKJGxhbmdbJ2Nhbm5vdG1vZGlmeXBhdGgnXSA9ICcoVGhlIHBhdGggY2Fubm90IGJlIG1vZGlmaWVkKSc7CiRsYW5nWydjYXRlZ29yaWVzJ10gPSAnQ2F0ZWdvcmllcyc7CiRsYW5nWydjYXRlZ29yeSddID0gJ0NhdGVnb3J5JzsKJGxhbmdbJ21lc3NhZ2VfY2F0ZWdvcnlhZGRlZCddID0gJ0NhdGVnb3J5IHN1Y2Nlc3NmdWxseSBhZGRlZCc7CiRsYW5nWydkYXRlJ10gPSAnRGF0ZSc7CiRsYW5nWydkYXRldXBsb2FkZWQnXSA9ICdEYXRlIFVwbG9hZGVkJzsKJGxhbmdbJ2RlZmF1bHQnXSA9ICdEZWZhdWx0cyc7CiRsYW5nWydkZWxldGUnXSA9ICdEZWxldGUnOwokbGFuZ1snZGVzY3JpcHRpb24nXSA9ICdEZXNjcmlwdGlvbic7CiRsYW5nWydkZXN0bmFtZSddID0gJ1VwbG9hZCBBcyc7CiRsYW5nWydkZXRhaWxfdGVtcGxhdGUnXSA9ICdEZXRhaWwgVGVtcGxhdGVzJzsKJGxhbmdbJ2Rvd25sb2FkZWQnXSA9ICdGaWxlICVzIHdhcyBkb3dubG9hZGVkLic7CiRsYW5nWydkb3dubG9hZHMnXSA9ICdEb3dubG9hZHMnOwokbGFuZ1snZWRpdCddID0gJ0VkaXQnOwokbGFuZ1snZWRpdGNhdGVnb3J5J10gPSAnRWRpdCBDYXRlZ29yeSc7CiRsYW5nWydlZGl0dXBsb2FkJ10gPSAnRWRpdCBVcGxvYWQnOwokbGFuZ1snZXJyb3InXSA9ICdFcnJvciEnOwokbGFuZ1snZXJyb3JfcGF0aGludXNlMiddID0gJ0EgY2F0ZWdvcnkgdXNpbmcgdGhlIHBhdGggKCVzKSBhbHJlYWR5IGV4aXN0cyc7CiRsYW5nWydlcnJvcl9wYXRoaW51c2UnXSA9ICdBIGNhdGVnb3J5IHVzaW5nIHRoYXQgcGF0aCBhbHJlYWR5IGV4aXN0cyc7CiRsYW5nWydlcnJvcl9jYXRlZ29yeWV4aXN0czInXSA9ICdFcnJvcjogQ2F0ZWdvcnkgbmFtZWQgJXMgYWxyZWFkeSBleGlzdHMnOwokbGFuZ1snZXJyb3JfY2F0ZWdvcnlleGlzdHMnXSA9ICdFcnJvcjogQ2F0ZWdvcnkgYWxyZWFkeSBleGlzdHMnOwokbGFuZ1snZXJyb3JfY2F0ZWdvcnlub3RlbXB0eSddID0gJ0Vycm9yISBDYW5ub3QgZGVsZXRlIGEgY2F0ZWdvcnkgdGhhdCBpcyBub3QgZW1wdHknOwokbGFuZ1snZXJyb3JfY2F0ZWdvcnlub3Rmb3VuZCddID0gJ0Vycm9yOiBDYXRlZ29yeSBub3QgZm91bmQhJzsKJGxhbmdbJ2Vycm9yX2RiZXJyb3InXSA9ICdFcnJvcjogRGF0YWJhc2UgZXJyb3IhJzsKJGxhbmdbJ2Vycm9yX2VtcHR5Y2F0ZWdvcnknXSA9ICdFcnJvcjogRW1wdHkgQ2F0ZWdvcnkhJzsKJGxhbmdbJ2Vycm9yX2VtcHR5cGF0aCddID0gJ0Vycm9yOiBFbXB0eSBQYXRoISc7CiRsYW5nWydlcnJvcl9maWxlZXhpc3RzJ10gPSAnRXJyb3IhIEZpbGUgJXMgYWxyZWFkeSBleGlzdHMuJzsKJGxhbmdbJ2Vycm9yX2ZpbGVub3Rmb3VuZCddID0gJ0Vycm9yISBGaWxlICVzIHdhcyBub3QgZm91bmQuJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ0Vycm9yOiBJbnN1ZmZpY2llbnQgcGFyYW1ldGVycyBzdXBwbGllZCB0byBtb2R1bGUhJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRhdXRob3InXSA9ICdFcnJvcjogSW52YWxpZCAob3IgZW1wdHkpIGF1dGhvci4nOwokbGFuZ1snZXJyb3JfaW52YWxpZGNhdGVnb3J5J10gPSAnRXJyb3I6IEludmFsaWQgKG9yIGVtcHR5KSBjYXRlZ29yeS4nOwokbGFuZ1snZXJyb3JfaW52YWxpZGRlc2NyaXB0aW9uJ10gPSAnRXJyb3I6IEludmFsaWQgKG9yIGVtcHR5KSBkZXNjcmlwdGlvbi4nOwokbGFuZ1snZXJyb3JfaW52YWxpZGZpbGUnXSA9ICdFcnJvcjogSW52YWxpZCAob3IgZW1wdHkpIGZpbGVuYW1lLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXBsb2FkZmlsZW5hbWUnXSA9ICdFcnJvcjogRmlsZXMgd2l0aCB0aGF0IG5hbWUgKHByb2JhYmx5IGV4dGVuc2lvbikgYXJlIG5vdCBhbGxvd2VkICglcykuJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1cGxvYWRpZCddID0gJ0Vycm9yOiBJbnZhbGlkIHVwbG9hZCBpZCc7CiRsYW5nWydlcnJvcl9ub2ZpbGVzJ10gPSAnRXJyb3I6IE5vIE1hdGNoaW5nIEZpbGVzISc7CiRsYW5nWydmaWxlcyddID0gJ0ZpbGVzJzsKJGxhbmdbJ2ZpeG1lJ10gPSAnRml4IFNwYWNlcyc7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdGcm9udCBFbmQgRmlsZSBNYW5hZ2VtZW50IChVcGxvYWRzKSc7CiRsYW5nWydoZWxwJ10gPSAnPGgzPldoYXQgRG9lcyBUaGlzIERvPzwvaDM+DQo8cD5JdCBpcyBhIG1vZHVsZSBmb3IgYWxsb3dpbmcgcGVvcGxlIHRvIHVwbG9hZCBhbmQgZG93bmxvYWQgZmlsZXMgdG8gYW5kIGZyb20geW91ciBzaXRlLiAgSXQga2VlcHMgdHJhY2sgb2Ygd2hvIHVwbG9hZGVkIGEgZmlsZSwgYW5kIHdobyBoYXMgZG93bmxvYWRlZCBpdC4gIEFzIHdlbGwsIHlvdSBjYW4gc29ydCBmaWxlcyBpbnRvIGNhdGVnb3JpZXMsIGFuZCBtYW5hZ2UgdGhlIGZpbGVzIHRoYXQgd2VyZSB1cGxvYWRlZCBsaWtlIGV2ZXJ5IGFkbWluaXN0cmF0b3Igd291bGQgZG88L3A+IA0KPGgzPkhvdyBEbyBJIFVzZSBJdDwvaDM+DQo8cD48c3Ryb25nPldhcm5pbmc8L3N0cm9uZz4gLSBUaGUgcHJvcGVyIGJlaGF2aW91ciBvZiB0aGlzIG1vZHVsZSBkZXBlbmRzIG9uIG51bWVyb3VzIHBocCBjb25maWd1cmF0aW9uIHZhcmlhYmxlcy4gIFRoZXNlIGluY2x1ZGUgPGVtPihidXQgYXJlIG5vdCBsaW1pdGVkIHRvKTwvZW0+LCBwaHAmIzAzOTtzIG1lbW9yeV9saW1pdCwgc2FmZV9tb2RlLCBmaWxlX3VwbG9hZHMsIHVwbG9hZHNfbWF4X2ZpbGVzaXplLCBhbmQgbWF4X2V4ZWN1dGlvbl90aW1lLiAgVGhlc2UgdmFyaWFibGVzIG1heSBuZWVkIGFkanVzdG1lbnQgZm9yIHRoaXMgbW9kdWxlIHRvIHdvcmsgcHJvcGVybHkgb24geW91ciBzaXRlLiAgSXQgaXMgYWR2aXNlZCB0aGF0IHlvdSB3b3JrIHdpdGggeW91ciBzeXN0ZW0gYWRtaW5pc3RyYXRvciBvciBob3N0IHByb3ZpZGVyIHRvIHR1bmUgdGhlc2Ugc2V0dGluZ3MgZm9yIHlvdXIgcmVxdWlyZW1lbnRzLjwvcD4NCjxwPlRvIHVzZSB0aGlzIG1vZHVsZSwgdG8gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIGZpbGVzIHRvIHlvdXIgc2l0ZSwgeW91IHNob3VsZCBpbnN0YWxsIHRoZSBtb2R1bGUsIGFuZCB0aGVuIGNyZWF0ZSBvbmUgb3IgbW9yZSBjYXRlZ29yaWVzIChhLmsuYSkgZGlyZWN0b3JpZXMgZm9yIHRoZSB1cGxvYWRlZCBmaWxlcyB0byBnbyBpbnRvLiBUaGVuIGFkZCBhIHRhZyBpbnRvIGEgcGFnZSBvciB0ZW1wbGF0ZSBzb21ld2hlcmUgbGlrZSB7Y21zX21vZHVsZSBtb2R1bGU9JnF1b3Q7VXBsb2FkcyZxdW90OyBjYXRlZ29yeT0mcXVvdDtzb21lY2F0ZWdvcnkmcXVvdDsgbW9kZT0mcXVvdDtzb21lbW9kZSZxdW90O30uICBXaGVyZSBtb2RlIG1hdGNoZXMgb25lIG9mIHRoZSBtb2RlcyBsaXN0ZWQgYmVsb3cuICBUaGUgb3V0cHV0IHdpbGwgZGlmZmVyIGRlcGVuZGluZyB1cG9uIHdoaWNoIG1vZGUgeW91IHNlbGVjdC48L3A+DQo8cD5UaGlzIG1vZHVsZSBjYW4gdXNlIHRoZSBGcm9udGVuZFVzZXJzIG1vZHVsZSAob3B0aW9uYWwpIHRvIGdldCBpbmZvcm1hdGlvbiBhYm91dCBhbnkgY3VycmVudGx5IGxvZ2dlZCBpbiB1c2VycyB0byBwYXJ0bHkgZmlsbCBpbiB0aGUgZm9ybSB3aGVuIHVwbG9hZGluZyBmaWxlczs8L3A+DQo8aDM+UGVybWlzc2lvbnM8L2gzPg0KPHVsPg0KPGxpPjxlbT5NYW5hZ2UgVXBsb2FkczwvZW0+IHBlcm1pc3Npb24gaXMgbmVlZGVkIHRvIG1hbmFnZSBjYXRlZ29yaWVzLCBhbmQgdGhlIGZpbGVzIHdpdGhpbiB0aGVtLjwvbGk+DQo8bGk+PGVtPk1vZGlmeSBUZW1wbGF0ZXM8L2VtPiBwZXJtaXNzaW9uIGlzIG5lZWRlZCBlZGl0IGFueSBvZiB0aGUgdGVtcGxhdGVzLjwvbGk+DQo8bGk+PGVtPk1vZGlmeSBTaXRlIFByZWZlcmVuY2VzPC9lbT4gcGVybWlzc2lvbiBpcyBuZWVkZWQgYW55IG9mIHRoZSBmaWxlIHNldHRpbmdzLjwvbGk+DQo8L3VsPg0KPGgzPkVtYWlsaW5nPC9oMz4NCjxwPlRoaXMgbW9kdWxlIGlzIGNhcGFibGUgb2Ygc2VuZGluZyBhbiBlbWFpbCB3aGVuZXZlciBhIGZpbGUgaXMgdXBsb2FkZWQsIHNlZSB0aGUgcHJlZmVyZW5jZXMgdGFiLiAgSG93ZXZlciwgdG8gZG8gdGhpcyB0aGUgPGI+Q01TTWFpbGVyPC9iPiBwYWNrYWdlIG11c3QgYmUgaW5zdGFsbGVkIGFuZCBjb25maWd1cmVkLiAgVGhpcyBpcyBhbiA8ZW0+b3B0aW9uYWw8L2VtPiBzdGVwLCBhbmQgaWYgdGhlIENNU01haWxlciBtb2R1bGUgaXMgbm90IGluc3RhbGxlZCwgbm90aGluZyB3aWxsIGJlIGRpc3BsYXllZCB0byB0aGUgdXNlciwgb25seSBhIGxvZyBtZXNzYWdlIHdpbGwgYmUgcGxhY2VkIGludG8gdGhlIGFkbWluIGxvZzwvcD4NCjxoMz5TeXN0ZW0gU2V0dGluZ3M8L2gzPg0KPHA+PGI+Tm90ZTo8L2I+IFRoaXMgbW9kdWxlIGRvZXMgbm90IGJ5cGFzcyBvciBnZXQgcGFzdCBhbnkgZmlsZSBzaXplIGxpbWl0YXRpb25zIGluIHBocC4gIEl0IHdvcmtzIGluIGNvbmp1bmN0aW9uIHdpdGggdGhlbS4gIFRoZXJlZm9yZSB5b3UgbWF5IG5lZWQgdG8gbW9kaWZ5IHlvdXIgcGhwLmluaSBmaWxlIGFuZC9vciB5b3VyIGh0dHBkLmNvbmYgZmlsZShzKSB0byBhbGxvdyB5b3UgdG8gdXBsb2FkIGZpbGVzIGFzIGxhcmdlIGFzIHdoYXQgeW91IGhhdmUgc2V0IGluIHRoZSB1cGxvYWRzIG1vZHVsZSBwcmVmZXJlbmNlcy48L3A+DQo8aDM+QXBhY2hlIE5vdGVzPC9oMz4NCjxwPkluIG9yZGVyIHRvIGFsbG93IGxhcmdlIGZpbGUgdXBsb2FkcywgeW91IG1heSBuZWVkIHRvIG1vZGlmeSB0aGUgdXBsb2FkX21heF9maWxlc2l6ZSBwYXJhbWV0ZXIgaW4geW91ciBwaHAuaW5pICBJbiBhZGRpdGlvbiwgdGhlIExpbWl0UmVxdWVzdEJvZHkgcGFyYW1ldGVyIGluIHlvdXIgYXBhY2hlIGNvbmZpZ3VyYXRpb24sIG1heSBuZWVkIHRvIGJlIGFkanVzdGVkIHRvIG1hdGNoIHRoZSB1cGxvYWRfbWF4X2ZpbGVzaXplIHBhcmFtZXRlcjwvcD4NCjxwPk5vdGU6ICB0aGUgdXBsb2FkX21heF9maWxlc2l6ZSBwYXJhbWV0ZXIgY2FuIGJlIHNwZWNpZmllZCBpbiBieXRlcywga2lsb2J5dGVzLCBvciBtZWdhYnl0ZXMsIGhvd2V2ZXIgdGhlIExpbWl0UmVxdWV0Qm9keSBwYXJhbWV0ZXIgaXMgb25seSBzcGVjaWZpZWQgaW4gYnl0ZXM8L3A+DQonOwokbGFuZ1snaWQnXSA9ICdJZCc7CiRsYW5nWydpbnN0YWxsZWQnXSA9ICdNb2R1bGUgdmVyc2lvbiAlcyBpbnN0YWxsZWQuJzsKJGxhbmdbJ2lwX2FkZHJlc3MnXSA9ICdJUCBBZGRyZXNzJzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnQSBtb2R1bGUgdGhhdCBhbGxvd3MgdXNlcnMgdG8gdXBsb2FkIGZpbGVzLCBhbmQgYWxsb3dzIHlvdSB0byBtYW5hZ2UgdGhlbS4nOwokbGFuZ1snbmFtZSddID0gJ05hbWUnOwokbGFuZ1sncmVuYW1lbWVzc2FnZSddID0gJ0NoYW5nZSB0aGUgbmFtZSBoZXJlIHRvIGV4ZWN1dGUgYSByZW5hbWUnOwokbGFuZ1sncGF0aCddID0gJ1BhdGgnOwokbGFuZ1sncGF0aG1lc3NhZ2UnXSA9ICdDaGFuZ2UgdGhlIGNhdGVnb3J5IGhlcmUgdG8gbW92ZSB0aGUgZmlsZSB0byBhbm90aGVyIGRpcmVjdG9yeSc7CiRsYW5nWydwYXRoaW51cGxvYWRzJ10gPSAnKFJlbGF0aXZlIHRvIHRoZSB1cGxvYWRzIGRpcmVjdG9yeSknOwokbGFuZ1sncG9zdGluc3RhbGwnXSA9ICc8cD5UaGUgdXBsb2FkcyBtb2R1bGUgaGFzIGJlZW4gc3VjY2Vzc2Z1bGx5IGluc3RhbGxlZC4gQmUgc3VyZSB0byBzZXQgJnF1b3Q7TWFuYWdlIFVwbG9hZHMmcXVvdDsgcGVybWlzc2lvbnMgdG8gdXNlIHRoaXMgbW9kdWxlITwvcD4NCjxwPjxzdHJvbmc+V2FybmluZzwvc3Ryb25nPiAtIFRoZSBwcm9wZXIgYmVoYXZpb3VyIG9mIHRoaXMgbW9kdWxlIGRlcGVuZHMgb24gbnVtZXJvdXMgcGhwIGNvbmZpZ3VyYXRpb24gdmFyaWFibGVzLiAgVGhlc2UgaW5jbHVkZSA8ZW0+KGJ1dCBhcmUgbm90IGxpbWl0ZWQgdG8pPC9lbT4sIHBocCYjMDM5O3MgbWVtb3J5X2xpbWl0LCBzYWZlX21vZGUsIGZpbGVfdXBsb2FkcywgdXBsb2Fkc19tYXhfZmlsZXNpemUsIGFuZCBtYXhfZXhlY3V0aW9uX3RpbWUuICBUaGVzZSB2YXJpYWJsZXMgbWF5IG5lZWQgYWRqdXN0bWVudCBmb3IgdGhpcyBtb2R1bGUgdG8gd29yayBwcm9wZXJseSBvbiB5b3VyIHNpdGUuICBJdCBpcyBhZHZpc2VkIHRoYXQgeW91IHdvcmsgd2l0aCB5b3VyIHN5c3RlbSBhZG1pbmlzdHJhdG9yIG9yIGhvc3QgcHJvdmlkZXIgdG8gdHVuZSB0aGVzZSBzZXR0aW5ncyBmb3IgeW91ciByZXF1aXJlbWVudHMuPC9wPic7CiRsYW5nWydwb3N0dW5pbnN0YWxsJ10gPSAnVGhlIFVwbG9hZHMgbW9kdWxlIGhhcyBiZWVuIHN1Y2Nlc3NmdWxseSByZW1vdmVkLiAgTm8gZmlsZXMgaGF2ZSBiZWVuIHJlbW92ZWQgZnJvbSB5b3VyIHVwbG9hZHMgZGlyZWN0b3J5LCBhbmQgZmlsZSBpbnRlZ3JpdHkgaXMgaW50YWN0JzsKJGxhbmdbJ3ByZWZlcmVuY2VzJ10gPSAnUHJlZmVyZW5jZXMnOwokbGFuZ1sncHJlZnN1cGRhdGVkJ10gPSAnTW9kdWxlIHByZWZlcmVuY2VzIHVwZGF0ZWQuJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeWRlc2MnXSA9ICdEZXNjcmlwdGlvbic7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnlsaXN0YWJsZSddID0gJ0ZpbGVzIGluIHRoaXMgZGlyZWN0b3J5IGNhbiBiZSBsaXN0ZWQnOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5bmFtZSddID0gJ0NhdGVnb3J5IE5hbWUnOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5cGF0aCddID0gJ1NlcnZlciBQYXRoJzsKJGxhbmdbJ3Byb21wdF9kZWxldGVkaXJlY3RvcnknXSA9ICdEZWxldGUgY2F0ZWdvcnkgZGlyZWN0b3J5Pyc7CiRsYW5nWydwcm9tcHRfbWF4X3VwbG9hZHNpemUnXSA9ICdNYXhpbXVtIGZpbGUgc2l6ZSBhbGxvd2VkIChLYiknOwokbGFuZ1sncHJvbXB0X3ZhbGlkX3VwbG9hZGV4dGVuc2lvbnMnXSA9ICdWYWxpZCB1cGxvYWQgZXh0ZW5zaW9ucyc7CiRsYW5nWydzY2FuJ10gPSAnU2Nhbic7CiRsYW5nWydzZWxlY3RjYXRlZ29yeSddID0gJ1NlbGVjdCBDYXRlZ29yeSc7CiRsYW5nWydzaXplJ10gPSAnU2l6ZSc7CiRsYW5nWydzaXpla2InXSA9ICdTaXplIChLYiknOwokbGFuZ1snc3VibWl0J10gPSAnU3VibWl0JzsKJGxhbmdbJ3N1bW1hcnlfdGVtcGxhdGUnXSA9ICdTdW1tYXJ5IFRlbXBsYXRlcyc7CiRsYW5nWydzdW1tYXJ5J10gPSAnU3VtbWFyeSc7CiRsYW5nWyd0aXRsZV9hZG1pbl9wYW5lbCddID0gJ1VwbG9hZHMgTW9kdWxlJzsKJGxhbmdbJ3RpdGxlX21vZF9hZG1pbiddID0gJ01vZHVsZSBBZG1pbiBQYW5lbCc7CiRsYW5nWyd0aXRsZV9tb2RfcHJlZnMnXSA9ICdNb2R1bGUgUHJlZmVyZW5jZXMnOwokbGFuZ1sndGl0bGVfc3VibmV0X2V4Y2x1c2lvbnMnXSA9ICdFeGNsdWRlIHN1Ym5ldHMgZnJvbSBzdGF0aXN0aWNzJzsKJGxhbmdbJ3RpdGxlX3ZhbGlkX3VwbG9hZGV4dGVuc2lvbnMnXSA9ICdWYWxpZCBFeHRlbnNpb25zJzsKJGxhbmdbJ3VuaW5zdGFsbGVkJ10gPSAnTW9kdWxlIFVuaW5zdGFsbGVkLic7CiRsYW5nWyd1cGdyYWRlZCddID0gJ01vZHVsZSB1cGdyYWRlZCB0byB2ZXJzaW9uICVzLic7CiRsYW5nWyd1cGxvYWQnXSA9ICdVcGxvYWQnOwokbGFuZ1sndXBsb2FkZWQnXSA9ICdGaWxlICVzIHdhcyB1cGxvYWRlZCBieSAlcy4nOwokbGFuZ1sncmVwbGFjZWQnXSA9ICdGaWxlICVzIHdhcyByZXBsYWNlZCBieSAlcy4nOwokbGFuZ1snZGVsZXRlZCddID0gJ0ZpbGUgJXMgd2FzIGRlbGV0ZWQuJzsKJGxhbmdbJ3VwbG9hZGZvcm1fdGVtcGxhdGUnXSA9ICdVcGxvYWQgVGVtcGxhdGVzJzsKJGxhbmdbJ3VzZXJuYW1lJ10gPSAnVXNlcm5hbWUnOwokbGFuZ1snd2FybmluZ19kZWxldGVjYXRlZ29yeSddID0gJ1dBUk5JTkc6IFVzZSBjYXV0aW9uIHdoZW4gZGVsZXRpbmcgY2F0ZWdvcmllcy4gIEZpbGVzIG1heSBiZSBsb3N0JzsKJGxhbmdbJ3V0bWEnXSA9ICcxNTY4NjEzNTMuMTE2ODMxMTMxMi4xMjQ4MDk3NTU4LjEyNTM5NjcxNzAuMTI1NDgzNjA4OC40JzsKJGxhbmdbJ3V0bXonXSA9ICcxNTY4NjEzNTMuMTI1NDgzNjA4OC40LjMudXRtY2NuPShyZWZlcnJhbCl8dXRtY3NyPWZvcnVtLmNtc21hZGVzaW1wbGUub3JnfHV0bWNjdD0vaW5kZXgucGhwL3RvcGljLDM1NzA3Lm1zZzE3OTUyMy5odG1sfHV0bWNtZD1yZWZlcnJhbCc7CiRsYW5nWydxY2EnXSA9ICdQMC01MTkwMzQ2MzEtMTI1MDYwNDg4NzQyOCc7CiRsYW5nWyd1dG1iJ10gPSAnMTU2ODYxMzUzJzsKJGxhbmdbJ3V0bWMnXSA9ICcxNTY4NjEzNTMnOwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lang/ext/nb_NO.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ3Byb21wdF90bF9hY2Nlc3MnXSA9ICdUaWRzYmVncmVuc2V0IHRpbGdhbmcnOwokbGFuZ1sncHJvbXB0X2FsbG93X3VwbG9hZF9zZW5kZmlsZSddID0gJ1RpbGxhdCBzZW5kaW5nIGF2IGZpbGVyIG1lZCBkZXQgc2FtbWUgdmVkIGFkbWluLW9wcGxhc3RpbmcnOwokbGFuZ1snbXNnX2F1dG9fZGVsZXRlX2ZpbGUnXSA9ICdTbGV0dGV0IGF1dG9tYXRpc2sgZm9yZWxkZXQgZmlsOiAlcyc7CiRsYW5nWydtc2dfYXV0b19kZWxldGVfZmlsZV9mYWlsZWQnXSA9ICdSZXR0aWdoZXRzcHJvYmxlbSwgYXV0b3NsZXR0aW5nIGF2ICVzIGZlaWxldCc7CiRsYW5nWydpbmZvX2NhdGVnb3J5X2V4cGlyZXNfaHJzJ10gPSAnU3Blc2lmaXNlciBhbnRhbGwgdGltZXIgc29tIHNrYWwgZyZhcmluZzsgZiZvc2xhc2g7ciBmaWxlciBpIGRlbm5lIGthdGVnb3JpZW4ga2FuIHNsZXR0ZXMuIEJlbnl0dCB2ZXJkaWVuIDAgZm9yICZhcmluZzsgaW5kaWtlcmUgYXQgZmlsZXIgaWtrZSBza2FsIHNsZXR0ZXMnOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5X2V4cGlyZXNfaHJzJ10gPSAnQW50YWxsIHRpbWVyIGYmb3NsYXNoO3IgZmlsZXIgaSBkZW5uZSBrYXRlZ29yaWVuIGF1dG9tYXRpc2sgdmlsIGJsaSBzbGV0dGV0JzsKJGxhbmdbJ2luZm9fZGZsdF9jYXRlZ29yeV9leHBpcnknXSA9ICdTdGFuZGFyZCB2ZXJkaSBmb3IgbnllIGthdGVnb3JpZXIgc29tIHNwZXNpZmlzZXJlciBodm9yIGxlbmdlIGZpbGVyIGkgZGVubmUga2F0ZWdvcmllbiBmJmFyaW5nO3IgbGV2ZSBmJm9zbGFzaDtyIGRlIGF1dG9tYXRpc2sgdmlsIGJsaSBzbGV0dGV0LiBCZW55dHQgdmVyZGllbiAwIGZvciAmYXJpbmc7IGluZGlrZXJlIGluZ2VuIHNsZXR0aW5nJzsKJGxhbmdbJ3RpdGxlX2NhdGVnb3J5X2V4cGlyeSddID0gJ0thdGVnb3JpIGZvcmVsZGVsc2VzcGVyaW9kZSA8ZW0+KGhycyk8L2VtPic7CiRsYW5nWydpbmZvX2NhdGVnb3J5ZGVsZXRhYmxlJ10gPSAnQXV0b3Jpc2VydGUgYnJ1a2VyZSB2aWwgaGEgdGlsZ2FuZyB0aWwgJmFyaW5nOyBzbGV0dGUgZGlzc2UgZmlsZW5lLiBEZXR0ZSBiZXR5ciBhdCBlbiBsZW5rZSB2aWwgdmlzZXMgaSBkZSBha3R1ZWxsZSBtYWxlbmUgZm9yICZhcmluZzsgdGlsbGF0ZSBzbGV0dGluZyBhdiBmaWxlbi4gRW4gbmV0dHN0ZWRzdXR2aWtsZXIga2FuIGJlbnl0dGUgcGFzc2VuZGUgc21hcnR5bG9naWtrIGZvciAmYXJpbmc7IHZpc2UgZW4gbGVua2UgdGlsIGRlIGF1dG9yaXNlcnRlIGJydWtlcm5lLic7CiRsYW5nWydjb3B5X2ZpbGVzJ10gPSAnS29waWVyIGZpbGVyJzsKJGxhbmdbJ2Vycm9yX2ZpbGV0b29sYXJnZSddID0gJ0ZpbGVuIGR1IGZvcnMmb3NsYXNoO2t0ZSAmYXJpbmc7IGxhc3RlIG9wcCBlciBzdCZvc2xhc2g7cnJlIGVubiBkZXQgc29tIGVyIHNhdHQgaSBDTVNNUyBtYWtzaW11bSBvcHBsYXN0aW5nIGZpbHN0Jm9zbGFzaDtycmVsc2UnOwokbGFuZ1snYXJleW91c3VyZV9kZWxldGVjYXRlZ29yeSddID0gJ0VyIGR1IHNpa2tlciBwJmFyaW5nOyBhdCBkdSB2aWwgc2xldHRlIGRlbm5lIGthdGFnb3JpZW4/JzsKJGxhbmdbJ2Vycm9yX2RlbGV0ZSddID0gJ0VuIGVuaGV0IGt1bm5lIGlra2Ugc2xldHRlcyAoJXMpJzsKJGxhbmdbJ2NvbmZpcm1fY2F0X211bHRpYWN0aW9uJ10gPSAnRXIgZHUgc2lra2VyIHAmYXJpbmc7IGF0IGR1IHZpbCB1dGYmb3NsYXNoO3JlIGRlbiB2YWxndGUgaGFuZGxpbmdlbiBwJmFyaW5nOyBkZSB2YWxndGUga2F0ZWdvcmllbmU/JzsKJGxhbmdbJ2Vycm9yX25vdGhpbmdfc2VsZWN0ZWQnXSA9ICdGZWlsOiBJbmdlbnRpbmcgdmFsZ3QnOwokbGFuZ1snd2l0aF9zZWxlY3RlZCddID0gJ01lZCB2YWxndDonOwokbGFuZ1snZXJyb3JfcmVwbGFjZV9taXNtYXRjaGVkX2ZpbGVleHQnXSA9ICdWZWQgZXJzdGF0bmluZyBhdiBlbiBmaWwgcyZhcmluZzsgbSZhcmluZzsgZHUgbGFzdGUgb3BwIGVuIGZpbCBhdiBha2t1cmF0IHNhbW1lIHR5cGUgKHNhdHQgYXYgZmlsZW5kZWxzZW4pLiBGaWxlbiBkdSB2YWxndGUgcGFzc2VyIGlra2UgbWVkIGRlbiBvcmlnaW5hbGUgZmlsZW4uJzsKJGxhbmdbJ3JlcGxhY2UnXSA9ICdFcnN0YXR0JzsKJGxhbmdbJ2luZm9fcmVwbGFjZWZpbGUnXSA9ICdEdSBrYW4gbGFzdGUgb3BwIGVuIGVyc3RhdG5pbmdzZmlsLCBvbSBmaWxlbiBlciBldCBiaWxkZSwgb2cgZHUgaWtrZSBoYXIgc3Blc2lmaXNlcnQgZXQgZXJzdGF0bmluZ3NtaW5pYXR5cmJpbGRlLCB2aWwgZXQgbnl0dCBtaW5pYXR5cmJpbGRlIGJsaSBnZW5lcmVydCc7CiRsYW5nWydwcm9tcHRfcmVwbGFjZWZpbGUnXSA9ICdMYXN0IG9wcCBlcnN0YXRuaW5nc2ZpbCc7CiRsYW5nWyd0aXRsZV9maXhzcGFjZXMnXSA9ICdGaWtzIG1lbGxvbXJvbSBpIGZpbG5hdm5ldCc7CiRsYW5nWydjYXRlZ29yeV9jb3BpZWQnXSA9ICdLYXRlZ29yaWVuIGJsZSBrb3BpZXJ0JzsKJGxhbmdbJ2Vycm9yX2R1cGxpY2F0ZXBhdGgnXSA9ICdWZW5ubGlnc3Qgc3Blc2lmaXNlciBldCBrYXRhbG9nbmF2biBzb20gZXIgZm9yc2tqZWxsaWcgZnJhIGtpbGRlbiwgb2cgc29tIGlra2UgYWxsZXJlZGUgZXIgaSBicnVrJzsKJGxhbmdbJ29wZXJhdGlvbl9jYW5jZWxsZWQnXSA9ICdIYW5kbGluZyBhdmJydXR0JzsKJGxhbmdbJ3NvdXJjZSddID0gJ0tpbGRlJzsKJGxhbmdbJ2Rlc3RpbmF0aW9uJ10gPSAnTSZhcmluZztsJzsKJGxhbmdbJ3Byb21wdF9jb3B5X2ZpbGVzJ10gPSAnS29waWVyIGthdGVnb3JpZmlsZXInOwokbGFuZ1snaW5mb19jb3B5X2ZpbGVzJ10gPSAnS29waWVyIGZpbGVuZSBmcmEga2lsZGVrYXRlZ29yaWVuIG92ZXIgdGlsIG0mYXJpbmc7bGthdGVnb3JpZW4nOwokbGFuZ1snZXh0cmEnXSA9ICdFa3N0cmEnOwokbGFuZ1snY29weSddID0gJ0tvcGllcic7CiRsYW5nWydzZWxlY3RvbmUnXSA9ICdWZWxnIGVuJzsKJGxhbmdbJ2F1dG93YXRlcm1hcmsnXSA9ICdzZXR0IHZhbm5tZXJrZSBhdXRvbWF0aXNrIHAmYXJpbmc7IGJpbGRlcic7CiRsYW5nWydpbWFnZV9zZXR0aW5ncyddID0gJ0JpbGRlaW5uc3RpbGxpbmdlcic7CiRsYW5nWydwcm9tcHRfZ2V0ZmlsZV9yZXN1bHRwYWdlJ10gPSAnU2lkZSAmYXJpbmc7IGJlbnl0dGUgZm9yIGZlaWxtZWxkaW5nZXIgb2cgYW5kcmUgbWVsZGluZ2VyIHJlbGF0ZXJ0IHRpbCBmaWxuZWRsYXN0aW5nJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRfa2V5J10gPSAnT3BwbGFzdGluZ3NuJm9zbGFzaDtra2VsZW4gc29tIGJsZSBvcHBnaXR0IGVyIHVneWxkaWcgKG11bGlnIGRlbiBoYXIgbiZhcmluZztkZCBkZW5zIG1ha3NpbWFsZSBuZWRsYXN0aW5nc21lbmdkZSBlbGxlciBoYXIgdXRsJm9zbGFzaDtwdCknOwokbGFuZ1snZGZsdF90aW1lbGltaXRlZF9zdWJqZWN0J10gPSAneyRzaXRlbmFtZX0gLSBEdSBoYXIgZiZhcmluZzt0dCB0aWxnYW5nIHRpbCB7JGVudHJ5LT51cGxvYWRfbmFtZXxzdHJpcF90YWdzfSBmb3IgZW4gYmVncmVuc2V0IHBlcmlvZGUnOwokbGFuZ1sncHJvbXB0X3RpbWVsaW1pdGVkX3N1YmplY3QnXSA9ICdFbW5lIGZvciBlLXBvc3Qgc29tIG9wcHJldHRlcyBuJmFyaW5nO3IgZGV0IHNlbmRlcyBlbiB0aWRzYmVncmVuc2V0IFVSTCc7CiRsYW5nWydwcm9tcHRfdGltZWxpbWl0ZWRfYXV0b2RlbGV0ZSddID0gJ1NsZXR0IGF1dG9tYXRpc2sgdXRsJm9zbGFzaDtwdGUgaW5ubGVnZyBldHRlciBOIHRpbWVyIDxlbT4ob3BwZ2kgMCBmb3IgJmFyaW5nOyBzbCZhcmluZzsgYXYgYXV0b3NsZXR0aW5nKTwvZW0+Oic7CiRsYW5nWydwcm9tcHRfdGltZWxpbWl0ZWRfc2VuZGl0J10gPSAnU2VuZCBkZW5uZSB1cmwgdGlsIGRlbiBvcHBnaXR0ZSBlLXBvc3RhZHJlc3Nlbj8nOwokbGFuZ1sndXJsX2tleSddID0gJ1VSTC1uJm9zbGFzaDtra2VsJzsKJGxhbmdbJ2NyZWF0ZWQnXSA9ICdPcHByZXR0ZXQnOwokbGFuZ1snZXhwaXJlcyddID0gJ1V0bCZvc2xhc2g7cGVyJzsKJGxhbmdbJ2FkZGVkaXRfdGltZWxpbWl0ZWRfa2V5J10gPSAnTGVnZyB0aWwvcmVkaWdlciBUaWRzYmVncmVuc2V0IG4mb3NsYXNoO2trZWwnOwokbGFuZ1sndGltZV9saW1pdGVkX2tleV9hZGRlZCddID0gJ1RpZHNiZWdyZW5zZXQgbiZvc2xhc2g7a2tlbCBsYWd0IHRpbCc7CiRsYW5nWydudW1faG91cnMnXSA9ICdBbnRhbGwgdGltZXInOwokbGFuZ1snbnVtX2Rvd25sb2FkcyddID0gJ0FudGFsbCBuZWRsYXN0aW5nZXInOwokbGFuZ1snZW1haWxfYWRkcmVzcyddID0gJ0UtcG9zdGFkcmVzc2UnOwokbGFuZ1snZXJyb3JfbWlzc2luZ19pbnZhbGlkJ10gPSAnRW4gcCZhcmluZztrcmV2ZCB2ZXJkaSBtYW5nbGVyIGVsbGVyIGVyIHVneWxkaWc6ICVzJzsKJGxhbmdbJ2FkZF90aW1lbGltaXRlZF9rZXknXSA9ICdMZWdnIHRpbCBUaWRzYmVncmVuc2V0IG4mb3NsYXNoO2trZWwnOwokbGFuZ1snZmlsZV9pbmZvMiddID0gJ0ZpbCAlcyAoaWQ9JWQpJzsKJGxhbmdbJ2luZm9fdGltZWxpbWl0ZWRfZG93bmxvYWRzJ10gPSAnU3Blc2lmaXNlciBzdGFuZGFyZCBhbnRhbGwgZ2FuZ2VyIHNvbSBlbiBmaWwgaWRlbnRpZmlzZXJ0IG1lZCBlbiBzcGVzaWZpayBuJm9zbGFzaDtra2VsIGthbiBsYXN0ZXMgbmVkJzsKJGxhbmdbJ3Byb21wdF90aW1lbGltaXRlZF9kb3dubG9hZHMnXSA9ICdTdGFuZGFyZCBhbnRhbGwgbmVkbGFzdGluZ2VyJzsKJGxhbmdbJ2luZm9fdGltZWxpbWl0ZWRfaG91cnMnXSA9ICdTcGVzaWZpc2VyIHN0YW5kYXJkIGFudGFsbCB0aW1lciBzb20gZW4gVGlkc2JlZ3JlbnNldCBuJm9zbGFzaDtra2VsIGVyIGd5bGRpZy4gT3BwZ2kgMCBmb3IgdWJlZ3JlbnNldCc7CiRsYW5nWydwcm9tcHRfdGltZWxpbWl0ZWRfaG91cnMnXSA9ICdBbnRhbGwgdGltZXIgc29tIGVuIFRpZHNkYmVncmVuc2V0IG4mb3NsYXNoO2trZWwgZXIgZ3lsZGlnJzsKJGxhbmdbJ3RpbWVsaW1pdGVkX3VybF9zZXR0aW5ncyddID0gJ0lubnN0aWxsaW5nZXIgZm9yIFRpZHNiZWdyZW5zZXQgbiZvc2xhc2g7a2tlbCc7CiRsYW5nWydtYW5hZ2VfdGltZWxpbWl0ZWQnXSA9ICdCZWhhbmRsZSBUaWRzYmVncmVuc2V0IGFkZ2FuZyc7CiRsYW5nWyd1cGxvYWRpbmdfc2V0dGluZ3MnXSA9ICdGaWxvcHBsYXN0aW5ncyBpbm5zdGlsbGluZ2VyJzsKJGxhbmdbJ2dlbmVyYWxfc2V0dGluZ3MnXSA9ICdHZW5lcmVsbGUgaW5uc3RpbGxpbmdlcic7CiRsYW5nWyd0aHVtYm5haWxfc2V0dGluZ3MnXSA9ICdNaW5pYXR5cmJpbGRlZ2VuZXJlcmluZyc7CiRsYW5nWyd0aXRsZV9yZWRpcmVjdF9vbl9zZW5kZmlsZSddID0gJ1NpZGUgc29tIGVuIHNrYWwgc2VuZGVzIHRpbCBldHRlciBzZW5kaW5nIGF2IGVuIGZpbCc7CiRsYW5nWydsYmxfYmFjayddID0gJ1RpbGJha2UnOwokbGFuZ1snbGJsX3RlbXBsYXRlcyddID0gJ0VuZHJlIG1hbGVyJzsKJGxhbmdbJ3Byb21wdF9wdWJsaWNfZmllbGQnXSA9ICdEZXR0ZSBmZWx0ZXQgZXIgb2ZmZW50bGlnIDxlbT4oa2FuIHNlZXMgYXYgbmV0dHN0ZWRzYmVzJm9zbGFzaDtrZXJuZSk8L2VtPic7CiRsYW5nWyd1cGxvYWRfZWRpdGVkJ10gPSAnRmlsZGV0YWxqZXIgcmVkaWdlcnQgcCZhcmluZzsgJXMnOwokbGFuZ1snaW5mb190aHVtYm5haWwnXSA9ICdFbiB2YWxnZnJpIG1pbmlhdHlyYmlsZGUgZmlsJzsKJGxhbmdbJ3VwbG9hZF9maWxlJ10gPSAnTGFzdCBvcHAgZW4gbnkgZmlsJzsKJGxhbmdbJ21zZ19maWVsZF9kZWxldGVkJ10gPSAnRmVsdCBzbGV0dGV0JzsKJGxhbmdbJ2Fza19kZWxldGVfZmllbGQnXSA9ICdFciBkdSBzaWtrZXIgcCZhcmluZzsgYXQgZHUgdmlsIGZqZXJuZSBkZW5uZSBmZWx0ZGVmaW5pc2pvbmVuIG9nIGFsbGUgYXNzb3NpZXJ0ZSB2ZXJkaWVyPyc7CiRsYW5nWyd5ZXMnXSA9ICdKYSc7CiRsYW5nWydubyddID0gJ05laSc7CiRsYW5nWyd0eXBlJ10gPSAnVHlwZSAnOwokbGFuZ1snZmllbGR0eXBlX211bHRpc2VsZWN0J10gPSAnRmxlcnZhbGdzbGlzdGUnOwokbGFuZ1snZmllbGR0eXBlX2Ryb3Bkb3duJ10gPSAnTmVkdHJla2tzbGlzdGUnOwokbGFuZ1snZmllbGR0eXBlX2NoZWNrYm94J10gPSAnQXZrcnlzbmluZ3Nib2tzJzsKJGxhbmdbJ2ZpZWxkdHlwZV90ZXh0YXJlYSddID0gJ1Rla3N0b21yJmFyaW5nO2RlJzsKJGxhbmdbJ2ZpZWxkdHlwZV90ZXh0aW5wdXQnXSA9ICdUZWtzdGlubnNrcml2aW5nJzsKJGxhbmdbJ3Byb21wdF91c2Vfd3lzaXd5ZyddID0gJ0Jlbnl0dCB3eXNpd3lnIHJlZGlnZXJlcmVuIG4mYXJpbmc7ciBkZXR0ZSBmZWx0ZXRzIHZlcmRpIHJlZGlnZXJlcyc7CiRsYW5nWydwcm9tcHRfZGVmYXVsdF9jb250ZW50J10gPSAnU3RhbmRhcmQgaW5uaG9sZCBmb3IgZGV0dGUgdGVrc3RvbXImYXJpbmc7ZGV0JzsKJGxhbmdbJ3Byb21wdF9kcm9wZG93bl9vcHRpb25zJ10gPSAnVmFsZyAoZW4gdmVyZGkgcGVyIGxpbmplKSc7CiRsYW5nWydwcm9tcHRfZmllbGRfbWF4bGVuZ3RoJ10gPSAnTWFrc2ltdW0gZmVsdGxlbmdkZSc7CiRsYW5nWydwcm9tcHRfZmllbGRfbGVuZ3RoJ10gPSAnRmVsdGxlbmdkZSc7CiRsYW5nWydwcm9tcHRfZmllbGRfdHlwZSddID0gJ0ZlbHR0eXBlJzsKJGxhbmdbJ3Byb21wdF9maWVsZF9uYW1lJ10gPSAnRmVsdG5hdm4nOwokbGFuZ1sndGl0bGVfYWRkX2ZpZWxkJ10gPSAnTGVnZyB0aWwgZWxsZXIgcmVkaWdlciBlbiBmZWx0ZGVmaW5pc2pvbic7CiRsYW5nWydmaWVsZF9kZWZpbml0aW9ucyddID0gJ0ZlbHRkZWZpbmlzam9uZXInOwokbGFuZ1sncHJvbXB0X2FkZF9maWVsZCddID0gJ0xlZ2cgdGlsIGVuIGZlbHRkZWZpbmlzam9uJzsKJGxhbmdbJ3BhcmFtX2FjdGlvbiddID0gJ1NwZXNpZmlzZXJlciBvcHBmJm9zbGFzaDtyc2VsZW4gdGlsIG1vZHVsdGFnZ2VuLiBNdWxpZ2UgdmVyZGllciBlcjogZGVmYXVsdCAtIChzYW1tZW5kcmFnID0gc3RhbmRhcmQgb3BwZiZvc2xhc2g7cnNlbCksIGRldGFpbCAtIGZvciAmYXJpbmc7IHZpc2UgZGV0YWxqdmlzbmluZyBmb3IgZW4gZW5rZWx0IGZpbCBiYXNlcnQgcCZhcmluZzsgdXBsb2FkX2lkLCBvZyB5b3VzZW5kaXQgLSBmb3IgJmFyaW5nOyB2aXNlIGV0IHNramVtYSBmb3IgJmFyaW5nOyB0aWxsYXRlIG9wcGxhc3RpbmcgYXYgZW4gZmlsIG9nIHNlbmRpbmcgYXYgZGVubmUgdGlsIGZsZXJlIGFkcmVzc2VyIGkgZW4gdmVuZGluZyc7CiRsYW5nWydwYXJhbV9zZW5kZmlsZXBhZ2UnXSA9ICdTcGVzaWZpc2VyIHNpZGUgaWQgZWxsZXIgYWxpYXMgZm9yIHNpZGVuIHNvbSBza2FsIGJlbnl0dGVzIGZvciBTZW5kIGVuIGZpbCBza2plbWFldCc7CiRsYW5nWydmaWxlX3VwbG9hZGVkJ10gPSAnRmlsZW4gYmxlIHZlbGx5a2tldCBsYXN0ZXQgb3BwJzsKJGxhbmdbJ3RvJ10gPSAnVGlsJzsKJGxhbmdbJ3RpdGxlX3lvdXNlbmRpdGZvcm1fdGVtcGxhdGUnXSA9ICdMZWdnIHRpbCBlbGxlciByZWRpZ2VyIGVuICZxdW90O1lvdSBTZW5kIEl0JnF1b3Q7IHNramVtYW1hbCc7CiRsYW5nWyd5b3VzZW5kaXRmb3JtX3RlbXBsYXRlJ10gPSAnWW91U2VuZEl0IHNramVtYW1hbCc7CiRsYW5nWyd0aXRsZV95b3VzZW5kaXRmb3JtX3N5c2RlZmF1bHQnXSA9ICdTeXN0ZW1zdGFuZGFyZCAmcXVvdDt5b3Ugc2VuZCBpdCZxdW90OyBtYWwnOwokbGFuZ1snbXNnX2ZpbGVfc2VudCddID0gJ0VuIG1lbGRpbmcgc29tIGlubmVob2xkZXIgaW5mb3JtYXNqb24gb20gZmlsZW4gb2cgaHZvcmRhbiBmJmFyaW5nOyB0YWsgaSBkZW4gaGFyIGJsaXR0IHNlbmR0IHRpbCBkZSB2YWxndGUgYWRyZXNzZW5lLic7CiRsYW5nWydlcnJvcl9ub2FkZHJlc3NlcyddID0gJ0R1IG0mYXJpbmc7IG9wcGdpIG1pbnN0IGVuIG0mYXJpbmc7bGFkcmVzc2UnOwokbGFuZ1snZXJyb3Jfbm9zdWJqZWN0J10gPSAnRHUgbSZhcmluZzsgb3BwZ2kgZXQgZW1uZSc7CiRsYW5nWydzdWJqZWN0J10gPSAnRW1uZSc7CiRsYW5nWyd0aXRsZV9zZW5kZmlsZXBhZ2UnXSA9ICdTaWRlIGZvciAmIzAzOTtTZW5kIGVuIGZpbCYjMDM5OyBza2plbWEnOwokbGFuZ1snZmlsZV9pbmZvJ10gPSAnRmlsaW5mbyc7CiRsYW5nWydzZW5kJ10gPSAnU2VuZCAnOwokbGFuZ1snbm90ZXMnXSA9ICdOb3RhdGVyJzsKJGxhbmdbJ2FkZHJlc3NlZXMnXSA9ICdTZW5kIGluZm9ybWFzam9uIG9tIGRlbm5lIGZpbGVuIHRpbCc7CiRsYW5nWydwcm9tcHRfc2VuZGZpbGVfZW1haWxfdGVtcGxhdGUnXSA9ICcmcXVvdDtTZW5kIGVuIGZpbCZxdW90OyBlLXBvc3RtYWwnOwokbGFuZ1sndGl0bGVfc2VuZGZpbGVmb3JtX3RlbXBsYXRlJ10gPSAnTGVnZyB0aWwgZWxsZXIgcmVkaWdlciBlbiAmcXVvdDtTZW5kIGVuIGZpbCZxdW90OyBza2plbWFtYWwnOwokbGFuZ1snc2VuZGZpbGVmb3JtX3RlbXBsYXRlJ10gPSAnJnF1b3Q7U2VuZCBlbiBmaWwmcXVvdDsgc2tqZW1hbWFsZXInOwokbGFuZ1sncHJvbXB0X25vdGlmeV9lbWFpbF90ZW1wbGF0ZSddID0gJ0ZpbCBsYXN0ZXQgb3BwIHZhcnNsaW5nIGUtcG9zdG1hbCc7CiRsYW5nWyd0aXRsZV9zZW5kZmlsZWZvcm1fc3lzZGVmYXVsdCddID0gJ1N5c3RlbXN0YW5kYXJkICZxdW90O1NlbmQgZW4gZmlsJnF1b3Q7IHNramVtYW1hbCc7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnlkZWxldGFibGUnXSA9ICdGaWxlciBpIGRlbm5lIGthdGVnb3JpZW4gZiZhcmluZztyIHNsZXR0ZXMnOwokbGFuZ1sndGl0bGVfYWxsb3dfZGVsZXRlJ10gPSAnVGlsbGF0IHNsZXR0aW5nIGF2IGZpbGVyIGZyYSBmb3JzaWRlbic7CiRsYW5nWydkZWZhdWx0X3RlbXBsYXRlcyddID0gJ1N0YW5kYXJkIG1hbGVyJzsKJGxhbmdbJ2ZpcnN0cGFnZSddID0gJ0Ymb3NsYXNoO3JzdGUgc2lkZSc7CiRsYW5nWydwcmV2cGFnZSddID0gJ0ZvcnJpZ2Ugc2lkZSc7CiRsYW5nWyduZXh0cGFnZSddID0gJ05lc3RlIHNpZGUnOwokbGFuZ1snbGFzdHBhZ2UnXSA9ICdTaXN0ZSBzaWRlJzsKJGxhbmdbJ2ZpcnN0cGFnZV9hcnJvdyddID0gJzw8ICc7CiRsYW5nWydwcmV2cGFnZV9hcnJvdyddID0gJzwgJzsKJGxhbmdbJ25leHRwYWdlX2Fycm93J10gPSAnID4nOwokbGFuZ1snbGFzdHBhZ2VfYXJyb3cnXSA9ICcgPj4nOwokbGFuZ1sncGFnZSddID0gJ1NpZGUnOwokbGFuZ1snb2YnXSA9ICdhdic7CiRsYW5nWydwcm9tcHRfZ3JvdXBsaXN0J10gPSAnQXV0b3Jpc2VydGUgRkVVIEdydXBwZXInOwokbGFuZ1snaW5mb19ncm91cGxpc3QnXSA9ICdWZWxnIGRlIEZFVSBncnVwcGVuZSBzb20gZ2lzIHRpbGdhbmcgdGlsIGZpbGVyIGkgZGVubmUga2F0ZWdvcmllbi4gVmVsZyBib3J0IGFsbGUgdmFsZyBmb3IgJmFyaW5nOyBnaSBhbGxlIHRpbGdhbmcnOwokbGFuZ1sndGl0bGVfc2NhbiddID0gJ1NrYW5uIGV0dGVyIG55ZSBmaWxlciBpIGRlbm5lIGthdGVnb3JpJzsKJGxhbmdbJ3RpdGxlX2NyZWF0ZV90aHVtYm5haWxzJ10gPSAnT3BwcmV0dCBtYW5nbGVuZGUgdGh1bWJuYWlscyBmb3IgZmlsZXIgaSBkZW5uZSBrYXRhZ29yaWVuLic7CiRsYW5nWydjcmVhdGVfdGh1bWJuYWlscyddID0gJ09wcHJldHQgdGh1bWJuYWlscyc7CiRsYW5nWyd0aXRsZV9jcmVhdGVfdGh1bWJuYWlsJ10gPSAnKGlnamVuKU9wcHJldHQgdGh1bWJuYWlsIGZvciBkZW5uZSBmaWxlbic7CiRsYW5nWydjcmVhdGVfdGh1bWJuYWlsJ10gPSAnT3BwcmV0dCB0aHVtYm5haWwnOwokbGFuZ1snZXJyb3JfcGF0aGVycm9yJ10gPSAnS3VubmUgaWtrZSAmYXJpbmc7cG5lIGthdGFsb2dlbiAocmV0dGlnaGV0c3Byb2JsZW0/KSc7CiRsYW5nWyd0aXRsZV9kb3dubG9hZF9jaHVua3NpemUnXSA9ICdTdCZvc2xhc2g7cnJlbHNlIHAmYXJpbmc7IGh2ZXIgb3BwbGFzdGluZ3MtYm9sayc7CiRsYW5nWydpbmZvX2Rvd25sb2FkX2NodW5rc2l6ZSddID0gJyZBcmluZzsganVzdGVyZSBkZW5uZSBwYXJhbWV0ZXIgdmlsIHZpcmtlIGlubiBwJmFyaW5nOyBuZWRsYXN0aW5nc2hhc3RpZ2hldGVuIG9nIGthbiBoamVscGUgaSBsYXYtbWlubmUgb21naXZlbHNlci4nOwokbGFuZ1snd2FybmluZ19zYWZlX21vZGUnXSA9ICdQSFAmIzAzOTtzIHNhZmUgbW9kZSBlciBzbCZhcmluZzt0dCBwJmFyaW5nOy4gRGV0dGUga2FuIG1lZGYmb3NsYXNoO3JlIHByb2JsZW1lciBtZWQgb3BwbGFzdGluZyBhdiBmaWxlciAodGlsbGF0ZWxzZXIpLCBvZyBrYW4gb2dzJmFyaW5nOyBpbm52aXJrZSBwJmFyaW5nOyBkZW5uZSBtb2R1bGVucyBtdWxpZ2hldCB0aWwgJmFyaW5nOyBzZW5kZSBmaWxlciBkYSBkZW4gaWtrZSBoYXIgbXVsaWdoZXQgdGlsICZhcmluZzsgb3ZlcnNrcml2ZSB2aXNzZSBpbmkgaW5uc3RpbGxpbmdlci4gRHUgciZhcmluZztkZXMgdGlsICZhcmluZzsga29udGFrdGUgZGluIHRpbGJ5ZGVyIGZvciAmYXJpbmc7IHNlIG9tIHNhZmUgbW9kZSBrYW4gc2wmYXJpbmc7cyBhdi4nOwokbGFuZ1sncGFyYW1fZGV0YWlscGFnZSddID0gJ055dHRpZyBmb3IgdmlzbmluZyBhdiBkZXRhbGpyYXBwb3J0IHZlZCAmYXJpbmc7IGJlbnl0dGUgZW4gYW5uZW4gc2lkZW1hbC4gRGVubmUgcGFyYW1ldGVyZW4gdGFyIHNpZGUgaWQgZWxsZXIgc2lkZSBhbGlhcyBmb3IgZW4gc2lkZSBzb20gc2thbCBiZW55dHRlcyBmb3IgJmFyaW5nOyB2aXNlIGRldGFsanJhcHBvcnRlbic7CiRsYW5nWydwYXJhbV9wcmVmaXgnXSA9ICdFbiBib29sZWFuIHNvbSBpbmRpa2VyZXIgb20gZmlsbmF2biBza2FsIGhhIGZpbGZvcnN0YXZlbHNlIChwcmVmaXgpJzsKJGxhbmdbJ3BhcmFtX3ByZWZpeF9mZXUnXSA9ICdFbiBib29sZWFuc2sgcGFyYW1ldGVyIHNvbSBpbmRpa2VyZXIgYXQgZmlsLWZvcnN0YXZlbHNlbiBza2FsIG9wcGdpcyBhdiBuJmFyaW5nO3YmYWVsaWc7cmVuZGUgb3BwaGF2c21hbm4sIG9tIGlra2Ugc3Blc2lmaXNlcnQsIHMmYXJpbmc7IGVyIGZpbC1mb3JzdGF2ZWxzZW4gbiZhcmluZzt2JmFlbGlnO3JlbmRlIHRpZCAoaSBkZWNoZXggZm9ybWF0KSc7CiRsYW5nWydwYXJhbV9ub2NhcHRjaGEnXSA9ICdTbCZhcmluZzsgYXYgQ2FwdGNoYSBzdCZvc2xhc2g7dHRlIChlciBwJmFyaW5nOyBzb20gc3RhbmRhcmQpIGkgb3BwbGFzdGluZyBza2plbWFldCc7CiRsYW5nWyd0aXRsZV91cGxvYWRmb3JtX3RlbXBsYXRlJ10gPSAnUmVkaWdlciBPcHBsYXN0aW5nc2tqZW1hbWFsJzsKJGxhbmdbJ2NhcHRjaGFfdGl0bGUnXSA9ICdTa3JpdiBpbm4gdGVrc3RlbiBzb20gdmlzZXMgaSBkZXR0ZSBiaWxkZXQnOwokbGFuZ1snZXJyb3JfY2FwdGNoYW1pc21hdGNoJ10gPSAnVGVrc3RlbiBmcmEgYmlsZGV0IGJsZSBpa2tlIHNrcmV2ZXQgcmlrdGlnJzsKJGxhbmdbJ3RpdGxlX2F1dG90aHVtYm5haWxfZXh0ZW5zaW9ucyddID0gJ09wcHJldHQgbWluaWF0eXJiaWxkZXIgZm9yIGZpbGVyIHNvbSBoYXIgZGlzc2UgZmlsZW5kZWxzZW5lJzsKJGxhbmdbJ3RpdGxlX2F1dG90aHVtYm5haWxfc2l6ZSddID0gJ01ha3NpbXVtIHN0Jm9zbGFzaDtycmVsc2UgKHBpeGVscykgcCZhcmluZzsgZ2VuZXJlcnQgbWluaWF0eXJiaWxkZSc7CiRsYW5nWydwcm9tcHRfdXBsb2FkX2ljb24nXSA9ICdMYXN0IG9wcCBldCBJa29uJzsKJGxhbmdbJ2luZm9fc3lzZGVmYXVsdCddID0gJ0Rlbm5lIHRla3N0ZW4gYmxpciBicnVrdCBuJmFyaW5nO3IgZW4gbnkgbWFsIGF2IGRlbm5lIHR5cGUgb3BwcmV0dGVzJzsKJGxhbmdbJ3RpdGxlX2RldGFpbHJwdF9zeXNkZWZhdWx0J10gPSAnU3lzdGVtIHN0YW5kYXJkIERldGFsanJhcHBvcnRtYWwnOwokbGFuZ1sndGl0bGVfc3VtbWFyeXJwdF9zeXNkZWZhdWx0J10gPSAnU3lzdGVtIHN0YW5kYXJkIFNhbW1lbmRyYWdzcmFwcG9ydG1hbCc7CiRsYW5nWyd0aXRsZV91cGxvYWRmb3JtX3N5c2RlZmF1bHQnXSA9ICdTeXN0ZW0gc3RhbmRhcmQgb3BwbGFzdGluZ3NramVtYW1hbCc7CiRsYW5nWyd0ZW1wbGF0ZSddID0gJ01hbCc7CiRsYW5nWydyZXNldHRvZGVmYXVsdCddID0gJ1NldHQgdGlsIFN0YW5kYXJkJzsKJGxhbmdbJ3RpdGxlX3N1bW1hcnlycHRfdGVtcGxhdGUnXSA9ICdTYW1tZW5kcmFnIFJhcHBvcnQgbWFsJzsKJGxhbmdbJ3RpdGxlX2RldGFpbHJwdF90ZW1wbGF0ZSddID0gJ0RldGFsaiBSYXBwb3J0IG1hbCc7CiRsYW5nWydwcm9tcHRfbmFtZSddID0gJ05hdm4nOwokbGFuZ1sncHJvbXB0X2RlZmF1bHQnXSA9ICdTdGFuZGFyZCc7CiRsYW5nWydsZWdlbmRfdXBsb2FkZm9ybSddID0gJ0xhc3Qgb3BwIGVuIGZpbCc7CiRsYW5nWydlcnJvcl9taXNzaW5ncGFyYW0nXSA9ICdFbiBuJm9zbGFzaDtkdmVuZGlnIHBhcmFtZXRlciBtYW5nbGVyJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmduYW1lJ10gPSAnRXQgbmF2biBwJmFyaW5nOyBmaWx0eXBlbiBtJmFyaW5nOyBzcGVzaWZpc2VyZXMnOwokbGFuZ1snZXJyb3JfbWlzc2luZ2V4dGVuc2lvbnMnXSA9ICdNaW5zdCBlbiBmaWxlbmRlbHNlIG0mYXJpbmc7IHNwZXNpZmlzZXJlcyc7CiRsYW5nWydlcnJvcl9taXNzaW5naWNvbiddID0gJ0V0IGlrb24gbSZhcmluZzsgc3Blc2lmaXNlcmVzJzsKJGxhbmdbJ2Vycm9yX25vc3VjaHJvdyddID0gJ0RlbiBzcGVzaWZpc2VydGUgcmFkZW4gYmxlIGlra2UgZnVubmV0JzsKJGxhbmdbJ25hbWVfdW5rbm93biddID0gJ1VramVudCc7CiRsYW5nWydkZXNjcmlwdGlvbl91bmtub3duJ10gPSAnQmVza3JpdmVsc2UgZm9yIHVramVudGUgZmlsdHlwZXInOwokbGFuZ1snaW1hZ2UnXSA9ICdCaWxkZSc7CiRsYW5nWydpY29uJ10gPSAnSWtvbic7CiRsYW5nWydleHRlbnNpb25zJ10gPSAnRmlsZW5kZWxzZXInOwokbGFuZ1snYWRkZmlsZXR5cGUnXSA9ICdMZWdnIHRpbCBueSBmaWx0eXBlJzsKJGxhbmdbJ2ZpbGVfdHlwZXMnXSA9ICdGaWx0eXBlcic7CiRsYW5nWydlcnJvcl9ub2NhdGVnb3J5aWQnXSA9ICdJbmdlbiBrYXRlZ29yaSBpZCBibGUgb3BwZ2l0dCc7CiRsYW5nWydlcnJvcl9ub2NhdGVnb3J5J10gPSAnSW5nZW4ga2F0ZWdvcmkgaWQgYmxlIG9wcGdpdHQnOwokbGFuZ1snZXJyb3JfdGVtcGxhdGVuYW1lZXhpc3RzJ10gPSAnRW4gbWFsIG1lZCBkZXQgbmF2bmV0IGVrc2lzdGVyZXIgYWxsZXJlZGUnOwokbGFuZ1sncHJvbXB0X3RlbXBsYXRlbmFtZSddID0gJ01hbG5hdm4nOwokbGFuZ1sncHJvbXB0X3RlbXBsYXRlJ10gPSAnTWFsJzsKJGxhbmdbJ3Byb21wdF9uZXd0ZW1wbGF0ZSddID0gJ0xhZyBlbiBueSBtYWwnOwokbGFuZ1snaGVscF9PbkRvd25sb2FkJ10gPSAnPHA+RW4gaGVuZGVsc2UgZ2VuZXJlcnQgbiZhcmluZztyIGVuIGJydWtlciBhdnNsdXR0ZXIgbmVkbGFzdGluZyBhdiBlbiBmaWw8L3A+DQo8aDQ+UGFyYW1ldGVyZTwvaDQ+DQo8dWw+DQo8bGk+PGVtPmlkPC9lbT4gLSBMYXN0LW9wcCBJRDwvbGk+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIEZpbG5hdm48L2xpPg0KPGxpPjxlbT5pcDwvZW0+IC0gSVAgQWRyZXNzZW4gdGlsIGRlbiBzb20gbGFzdGV0IG5lZDwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2hlbHBfT25EZWxldGVDYXRlZ29yeSddID0gJzxwPkVuIGhlbmRlbHNlIGdlbmVyZXJ0IG4mYXJpbmc7ciBlbiBrYXRlZ29yaSBlciBzbGV0dGV0PC9wPg0KPGg0PlBhcmFtZXRlcmU8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBLYXRlZ29yaSBuYXZuPC9saT4NCjxsaT48ZW0+cGF0aDwvZW0+IC0gS2F0ZWdvcmkgc3RpPC9saT4NCjwvdWw+DQonOwokbGFuZ1snaGVscF9PbkNyZWF0ZUNhdGVnb3J5J10gPSAnPHA+RW4gaGVuZGVsc2UgZ2VuZXJlcnQgbiZhcmluZztyIGVuIGthdGVnb3JpIGVyIG9wcHJldHRldDwvcD4NCjxoND5QYXJhbWV0ZXJlPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gTmF2bmV0IHAmYXJpbmc7IGthdGVnb3JpZW48L2xpPg0KPGxpPjxlbT5kZXNjcmlwdGlvbjwvZW0+IC0gS2F0ZWdvcmkgYmVza3JpdmVsc2VuPC9saT4NCjxsaT48ZW0+cGF0aDwvZW0+IC0gS2F0ZWdvcmkgc3RpZW48L2xpPg0KPGxpPjxlbT5wYXRoPC9lbT4gLSBFdCBmbGFnZyBzb20gaW5kaWtlcmVyIG9tIGthdGVnb3JpZW4gZXIgdXRsaXN0YmFyPC9saT4NCjwvdWw+DQonOwokbGFuZ1snaGVscF9PblJlbW92ZSddID0gJzxwPkVuIGhlbmRlbHNlIGdlbmVyZXJ0IG4mYXJpbmc7ciBlbiBmaWwgZXIgZmplcm5ldCB2aWEgQWRtaW4gZWxsZXIgRnJvbnRlbmQgZ3JlbnNlc25pdHRlbmU8L3A+DQo8aDQ+UGFyYW1ldGVyZTwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIE5hdm5ldCBwJmFyaW5nOyBkZW4gZmplcm5lZGUgZmlsYTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBJRCYjMDM5O2VuIHAmYXJpbmc7IGRlbiBmamVybmVkZSBmaWxhPC9saT4NCjxsaT48ZW0+Y2F0ZWdvcmlfaWQ8L2VtPiAtIElEJiMwMzk7ZW4gcCZhcmluZzsga2F0ZWdvcmllbjwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2hlbHBfT25VcGxvYWQnXSA9ICc8cD5FbiBoZW5kZWxzZSBnZW5lcmVydCBuJmFyaW5nO3IgZW4gbnkgZmlsIGVyIGxhc3RldCBvcHAgdmlhIGFkbWluIGVsbGVyIGZyb250ZW5kIGdyZW5zZXNuaXR0ZXQ8L3A+DQo8aDQ+UGFyYW1ldGVyZTwvaDQ+DQo8dWw+DQo8bGk+PGVtPmthdGVnb3J5PC9lbT4gLSBLYXRlZ29yaSBuYXZuZXQ8L2xpPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBOYXZuZXQgcCZhcmluZzsgZGVuIG9wcGxhc3RlZGUgZmlsYTwvbGk+DQo8bGk+PGVtPnNpemU8L2VtPiAtIFN0Jm9zbGFzaDtycmVsc2VuIHAmYXJpbmc7IGRlbiBvcHBsYXN0ZWRlIGZpbGE8L2xpPg0KPGxpPjxlbT5zdW1tYXJ5PC9lbT4gLSBEZW4ga29ydGUgYmVza3JpdmVsc2VuIGZvciBkZW4gb3BwbGFzdGVkZSBmaWxhIChrYW4gdiZhZWxpZztyZSBibGFuayk8L2VtPjwvbGk+DQo8bGk+PGVtPmRlc2NyaXB0aW9uPC9lbT4gLSBEZW4gZnVsbGUgYmVza3JpdmVsc2VuIGZvciBkZW4gb3BwbGFzdGVkZSBmaWxhIChrYW4gdiZhZWxpZztyZSBibGFuayk8L2VtPjwvbGk+DQo8bGk+PGVtPmF1dGhvcjwvZW0+IC0gT3BwaGF2c21hbm5lbiBmb3IgZGVuIG9wcGxhc3RlZGUgZmlsYSAoaWYgYXZhaWxhYmxlKTwvZW0+PC9saT4NCjxsaT48ZW0+aXBfYWRkcmVzczwvZW0+IC0gSW50ZXJuZXR0IGFkcmVzc2VuIGZvciBrbGllbnRlbiBzb20gbGFzdGV0IG9wcCBmaWxhPC9saT4NCjwvdWw+JzsKJGxhbmdbJ2luZm9fZXZlbnRfb25kZWxldGVjYXRlZ29yeSddID0gJ0hlbmRlbHNlIGdlbmVyZXJ0IG4mYXJpbmc7ciBlbiBrYXRlZ29yaSBlciBzbGV0dGV0JzsKJGxhbmdbJ2luZm9fZXZlbnRfb25jcmVhdGVjYXRlZ29yeSddID0gJ0hlbmRlbHNlIGdlbmVyZXJ0IG4mYXJpbmc7ciBlbiBrYXRlZ29yaSBlciBsYWdldCc7CiRsYW5nWydpbmZvX2V2ZW50X29uZG93bmxvYWQnXSA9ICdIZW5kZWxzZSBnZW5lcmVydCBuJmFyaW5nO3IgZW4gZmlsIGVyIGxhc3RldCBuZWQnOwokbGFuZ1snaW5mb19ldmVudF9vbnVwbG9hZCddID0gJ0hlbmRlbHNlIGdlbmVyZXJ0IG4mYXJpbmc7ciBlbiBueSBmaWwgZXIgbGFzdGV0IG9wcCc7CiRsYW5nWydpbmZvX2V2ZW50X29ucmVtb3ZlJ10gPSAnSGVuZGVsc2UgZ2VuZXJlcnQgbiZhcmluZztyIGVuIGZpbCBlciBmamVybmV0JzsKJGxhbmdbJ3RpdGxlX3VzZXJ0YWdfb251cGxvYWQnXSA9ICdCcnVrZXIgZGVmaW5lcnQgdGFnZyAmYXJpbmc7IGtqJm9zbGFzaDtyZSBldHRlciBvcHBsYXN0aW5nIGVyIGZlcmRpZyc7CiRsYW5nWydub25lJ10gPSAnSW5nZW4nOwokbGFuZ1snbWF0Y2hlc2ZvdW5kJ10gPSAnVHJlZmYgZnVubmV0JzsKJGxhbmdbJ2ZpbHRlciddID0gJ0ZpbHRlciAnOwokbGFuZ1sndGl0bGVfcmVkaXJlY3RvbnVwbG9hZCddID0gJ1ZpZGVyZXNlbmQgdGlsIHNpZGUgaWQvYWxpYXMgdmVkIGJydWtlcnMgb3BwbGFzdGluZyc7CiRsYW5nWydkZXRhaWxzJ10gPSAnRGV0YWxqZXInOwokbGFuZ1snY29uZmlybV9wcmVmZXJlbmNlcyddID0gJ0VyIGR1IHNpa2tlciBwJmFyaW5nOyBkdSB2aWwgZW5kcmUgaW5uc3RpbGxpbmdlbmUnOwokbGFuZ1snZXJyb3Jfbm9maWxlc3VwbG9hZGVkJ10gPSAnSW5nZW4gZmlsZXIgYmxlIGxhc3RldCBvcHAuJzsKJGxhbmdbJ3Byb21wdF9yZXBsYWNlJ10gPSAnVGlsbGF0IG92ZXJza3JpdmluZyc7CiRsYW5nWydpbmZvX3JlcGxhY2UnXSA9ICdFcnN0YXR0IGVuaHZlciBmaWwgbWVkIHNhbW1lIG5hdm4gKGVuZHJlciBpa2tlIGlkJiMwMzk7ZW4pJzsKJGxhbmdbJ3BhcmFtX25vX2luaXRpYWwnXSA9ICdJa2tlIHZpcyBub2VuIGlubmxlZGVuZGUgcmVzdWx0YXRlciBuJmFyaW5nO3IgZmlsdGVyZXQgZXIgcCZhcmluZzsnOwokbGFuZ1sncGFyYW1fa2V5J10gPSAnVGlsZiZvc2xhc2g7eSBlbiBla3N0cmEgbiZvc2xhc2g7a2tlbCB0aWwgbW9kdWxlbiBmb3IgZW5kYSBiZWRyZSBvcmdhbmlzZXJpbmcgYXYgb3BwbGFzdGluZ2VyLiBEZW5uZSBuJm9zbGFzaDtra2VsIGthbiB2JmFlbGlnO3JlIGVuIGtvZGV0IHN0cmVuZyBzb206ICYjMDM5O2ZldXNlcnM6dWlkJiMwMzk7LCBvc3YuIERlbm5lIHBhcmFtZXRlciBlciB2YW5saWd2aXMga3VuIG4mb3NsYXNoO2R2ZW5kaWcgbiZhcmluZztyIGR1IGlubmVzbHV0dGVyIHVwbG9hZHMgbW9kdWxlbiBpIGVuIGFubmVuIG1vZHVsJzsKJGxhbmdbJ3BhcmFtX25vYXV0aG9yJ10gPSAnR2plbSBvcHBoYXZzbWFubihhdXRob3IpIGZlbHRldCBmcmEgb3BwbGFzdGluZyBza2plbWFldC4gRGVubmUgcGFyYW1ldGVyIGVyIGt1biB2aXJrc29tIG9tIG1vZGU9JiMwMzk7dXBsb2FkJiMwMzk7LiBPbSBGcm9udGVuZFVzZXJzIG1vZHVsZW4gZXIgdGlsc3RlZGUsIG9nIGVuIGJydWtlciBlciBpbm5sb2dnZXQsIHZpbCBldCBza2p1bHQgZmVsdCBpbm5laG9sZGUgYnJ1a2VybmF2bmV0IGZvciBuJmFyaW5nO3YmYWVsaWc7cmVuZGUgaW5ubG9nZ2VkZSBicnVrZXInOwokbGFuZ1sncGFyYW1fdXBsb2FkX2lkJ10gPSAndXBsb2FkX2lkPSZxdW90O2lkJnF1b3Q7IC0gc3Blc2lmaXNlcmVyIGVuIGVua2VsdCBmaWwgZm9yIHVybCYjMDM5O2VuL2xpbmtlbiBlbGxlciBlbmtlbC1tb2R1cyAob3ZlcmZvciknOwokbGFuZ1sncGFyYW1fZGV0YWlsdGVtcGxhdGUnXSA9ICdCcnVrIGVuIG1hbCBtZWQgZGV0dGUgbmF2bmV0IGZvciBkZW4gZGV0YWxqZXJ0ZSByYXBwb3J0ZW4uJzsKJGxhbmdbJ3BhcmFtX3RlbXBsYXRlJ10gPSAnQnJ1ayBlbiBtYWwgbWVkIGRldHRlIG5hdm4gZm9yIGRlbm5lIHJhcHBvcnQgZWxsZXIgc2tqZW1hLiBNb2R1c2VuIGVyIGJydWt0IGZvciAmYXJpbmc7IGF2Z2omb3NsYXNoO3JlIGh2YSBzbGFncyBtYWwgc29tIGVyIGtyZXZkLCBvZyBzJmFyaW5nOyB1dGYmb3NsYXNoO3JlcyBlbiBrb2JsaW5nL3NqZWtrIGF2IG5hdm5ldCBtb3QgZGVubmUgdHlwZSBtYWwuJzsKJGxhbmdbJ3BhcmFtX2ZpbHRlciddID0gJ1ZpcyBmaWx0ZXJza2plbWFldCc7CiRsYW5nWydwYXJhbV9ub19pbnRpdGlhbCddID0gJ0t1biBicnVrZWxpZyBuJmFyaW5nO3IgZmlsdGVyIHBhcmFtZXRlciBlciBnaXR0LCBlbGxlciBwJmFyaW5nOyBzb20gc3RhbmRhcmQsIGRlbm5lIHBhcmFtZXRlciBpbmRpa2VyZXIgb20gaW5ubGVkZW5kZSByZXN1bHRhdGVyIHNrYWwgdmlzZXMnOwokbGFuZ1sncGFyYW1fZmlsZXR5cGVzJ10gPSAnVmlzIGt1biBmaWxlciBzb20gc2Ftc3ZhcmVyIG1lZCBkZW5uZSBrb21tYXNlcGFyZXJ0ZSBsaXN0ZW4nOwokbGFuZ1sncGFyYW1fc29ydG9yZGVyJ10gPSAnICA8cD5Tb3J0ZXJpbmdzcmVra2VmJm9zbGFzaDtsZ2VyDQogIDx1bD4NCiAgPGxpPjxlbT5kYXRlX2FzYzwvZW0+IC0gU29ydGVyIGRhdG8gc3RpZ2VuZGU8L2xpPg0KICA8bGk+PGVtPmRhdGVfZGVzYzwvZW0+IC0gU29ydGVyIGRhdG8gc3lua2VuZGU8L2xpPg0KICA8bGk+PGVtPm5hbWVfYXNjPC9lbT4gLSBTb3J0ZXIgbmF2biBzdGlnZW5kZTwvbGk+DQogIDxsaT48ZW0+bmFtZV9kZXNjPC9lbT4gLSBTb3J0ZXIgbmF2biBzeW5rZW5kZTwvbGk+DQogIDxsaT48ZW0+c2l6ZV9hc2M8L2VtPiAtIFNvcnRlciBzdCZvc2xhc2g7cnJlbHNlIHN0aWdlbmRlPC9saT4NCiAgPGxpPjxlbT5zaXplX2Rlc2M8L2VtPiAtIFNvcnRlciBzdCZvc2xhc2g7cnJlbHNlIHN5bmtlbmRlPC9saT4NCiAgPGxpPjxlbT5hdXRob3JfYXNjPC9lbT4gLSBTb3J0ZXIgb3BwaGF2c21hbm4vYXV0aG9yIHN0aWdlbmRlPC9saT4NCiAgPGxpPjxlbT5hdXRob3JfZGVzYzwvZW0+IC0gU29ydGVyIG9wcGhhdnNtYW5uL2F1dGhvciBzeW5rZW5kZTwvbGk+DQogIDxsaT48ZW0+aXBfYXNjPC9lbT4gLSBTb3J0ZXIgaXAtYWRyZXNzZSBzdGlnZW5kZTwvbGk+DQogIDxsaT48ZW0+aXBfZGVzYzwvZW0+IC0gU29ydGVyIGlwLWFkcmVzc2Ugc3lua2VuZGU8L2xpPg0KICA8bGk+PGVtPmRlc2NfYXNjPC9lbT4gLSBTb3J0ZXIgYmVza3JpdmVsc2Ugc3RpZ2VuZGU8L2xpPg0KICA8bGk+PGVtPmRlc2NfZGVzYzwvZW0+IC0gU29ydGVyIGJlc2tyaXZlbHNlIHN5bmtlbmRlPC9saT4NCiAgPGxpPjxlbT5yYW5kb208L2VtPiAtIFRpbGZlbGRpZyBzb3J0ZXJpbmc8L2xpPg0KICA8L3VsPg0KICA8L3A+JzsKJGxhbmdbJ3BhcmFtX2xpc3Rpbmd0ZW1wbGF0ZSddID0gJ01hbCAmYXJpbmc7IGJlbnl0dGUgZm9yIGthdGVnb3JpbGlzdGluZyBldHRlciBtYW4gaGFyIGtsaWtrZXQgc2VnIGlubiBmcmEgZW4gS2F0ZWdvcmkgc2FtbWVuZHJhZ3NpZGUnOwokbGFuZ1sncGFyYW1fbGlzdGluZ3NvcnRvcmRlciddID0gJ1NvcnRlcmluZ3NyZWtrZWYmb3NsYXNoO2xnZSAoc29tIHBhcmFtX3NvcnRvcmRlcikgJmFyaW5nOyBiZW55dHRlIGZvciBrYXRlZ29yaWxpc3RlciBldHRlciBlbiBoYXIga2xpa2tldCBzZWcgaW5uIGZyYSBlbiBLYXRlZ29yaSBzYW1tZW5kcmFnc2xpc3RlJzsKJGxhbmdbJ3BhcmFtX2ZpbGVleHRlbnNpb25zJ10gPSAnIA0KZmlsZV9leHRlbnNpb25zPSZxdW90O2V4dDEsZXh0MixleHQzJnF1b3Q7DQo8cD5neWxkaWcga3VuIG9tIG1vZGU9dXBsb2FkLCBkZW5uZSBwYXJhbWV0ZXJlbiBiZWdyZW5zZXIgZmlsdHlwZW5lIHNvbSBrYW4gbGFzdGVzIG9wcC4gIE92ZXJzdHlyZXIgZW5odmVyIHZlcmRpIGkgbW9kdWwgaW5uc3RpbGxpbmdlbmUuPC9wPic7CiRsYW5nWydwYXJhbV9jb3VudCddID0gJ2NvdW50PSZxdW90O04mcXVvdDsNCjxwPkVuIHBhcmFtZXRlciBmb3IgJmFyaW5nOyBsaXN0ZSB1dCBrdW4gZGUgZiZvc2xhc2g7cnN0ZSBOIHN2YXIgZnJhIHNwJm9zbGFzaDtycmluZ2VuLiAgU2lkZWZvcm1hdGVyaW5nIHZpbGxlIHYmYWVsaWc7cmUgYmVkcmUsIG1lbiBkZXR0ZSBmJmFyaW5nO3IgaG9sZGUgbiZhcmluZzs8L3A+JzsKJGxhbmdbJ3BhcmFtX2NhdGVnb3J5J10gPSAnY2F0ZWdvcnk9JnF1b3Q7bmFtZSZxdW90Ow0KPHA+PGI+Tm90YXQ6PC9iPiBLYXRlZ29yaSBrYW4gdiZhZWxpZztyZSAmcXVvdDthbGwmcXVvdDssIHNvbSB2aWwgbGlzdGUgdXQgYWxsZSBvcHBsYXN0aW5nZXIgZnJhIGFsbGUgPGVtPnV0bGlzdGJhcmU8L2VtPiBrYXRlZ29yaWVyPC9wPic7CiRsYW5nWydwYXJhbV9tb2RlJ10gPSAnICA8dWw+DQogIDxsaT48ZW0+ZGV0YWlsZWQ8L2VtPiAtIFZpcyBlbiBkZXRhbGplcnQgbGlzdGUgb3ZlciBhbGxlIGZpbGVyIGkga2F0ZWdvcmllbjwvbGk+DQogIDxsaT48ZW0+c2luZ2xlPC9lbT4gLSBWaXNlciBlbiBkZXRhbGplcnQgcmFwcG9ydCBvbSBlbiBlbmtlbHQgb3BwbGFzdGluZzwvbGk+DQogIDxsaT48ZW0+dXBsb2FkPC9lbT4gLSBWaXNlciBldCBza2plbWEgc29tIHRpbGxhdGVyIGVuIGZyb250ZW5kIGJydWtlciAmYXJpbmc7IGxhc3RlIG9wcCBlbiBmaWw8L2xpPg0KICA8bGk+PGVtPnVybCA8aT5lbGxlcjwvaT4gbGluazwvZW0+IC0gVmlzZXIgZW4gbGluayB0aWwgZW4gZmlsPC9saT4NCiAgPGxpPjxlbT5zdW1tYXJ5PC9lbT4gLSBWaXNlciBlbiBzdW1tZXJ0IGxpc3RlIG92ZXIgYWxsZSBmaWxlciBpIGthdGVnb3JpZW48L2xpPg0KICA8L3VsPic7CiRsYW5nWydwYXJhbV9zZWxlY3Rmb3JtJ10gPSAnTiZhcmluZztyIGVuIGJlbnl0dGVyICYjMDM5O3NlbGVjdCYjMDM5Oy1tb2RlIGVyIGRlbm5lIHBhcmFtZXRlcmVuIHNlbHZlIGZvcm1pZCBhdiBmb3JlbGRyZSBza2plbWFldC4gQmVueXR0ZXMgZm9yICZhcmluZzsgaCZhcmluZztuZHRlcmUgcGFyYW1ldGVyIGgmYXJpbmc7bmR0ZXJpbmcnOwokbGFuZ1sncGFyYW1fc2VsZWN0bmFtZSddID0gJ24mYXJpbmc7ciBlbiBiZW55dHRlciAmIzAzOTtzZWxlY3QmIzAzOTstbW9kZSB2aWwgZGVubmUgcGFyYW1ldGVyIHNwZXNpZmlzZXJlIG5hdm5ldCBwJmFyaW5nOyBmZWx0ZXQnOwokbGFuZ1sncGFyYW1fc2VsZWN0dmFsdWUnXSA9ICdOJmFyaW5nO3IgZW4gYmVueXR0ZXIgJiMwMzk7c2VsZWN0JiMwMzk7LW1vZGUgdmlsIGRlbm5lIHBhcmFtZXRlcmVuIHNwZXNpZmlzZXJlIHN0YW5kYXJkIGZlbHR2ZXJkaSc7CiRsYW5nWydwYXJhbV9zZWxlY3Rub25lJ10gPSAnTiZhcmluZztyIGVuIGJlbnl0dGVyICYjMDM5O3NlbGVjdCYjMDM5Oy1tb2RlIHZpbCBkZW5uZSBwYXJhbWV0ZXJlbiBzcGVzaWZpc2VyZSBvbSAmIzAzOTtub25lJiMwMzk7IGVyIGV0IGd5bGRpZyB2YWxnLic7CiRsYW5nWydyZXR1cm50b21vZHVsZSddID0gJ1RpbGJha2UgdGlsIE1vZHVsIHBhbmVsZXQnOwokbGFuZ1snZXJyb3Jfbm9jYXRlZ29yaWVzJ10gPSAnRGV0IGVyIGluZ2VuIGRlZmluZXJ0ZSBrYXRlZ29yaWVyJzsKJGxhbmdbJ3RpdGxlX2VuZm9yY2VleHRlbnNpb25zJ10gPSAnS3JldmVyIGZpbC1lbmRlbHNlIHAmYXJpbmc7IGFsbGUgb3BwbGFzdGVkZSBmaWxlcic7CiRsYW5nWydyZXN0b3JlZGVmYXVsdHNjb25maXJtJ10gPSAnRGVubmUgaGFuZGxpbmcgdmlsIHRpbGJha2VzdGlsbGUgbWFsZW4gdGlsIHN5c3RlbXN0YW5kYXJkLiBFbmh2ZXIgZW5kcmluZyBkdSBoYXIgZ2pvcnQgdmlsIGJsaSBib3J0ZS4gRXIgZHUgc2lra2VyIHAmYXJpbmc7IGF0IGR1IHZpbCBmb3J0c2V0dGU/JzsKJGxhbmdbJ3RodW1ibmFpbCddID0gJ01pbmlhdHlyYmlsZGUgJzsKJGxhbmdbJ25ld3RodW1ibmFpbCddID0gJ0xhc3Qgb3BwIG55dHQgbWluaWF0eXJiaWxkZSc7CiRsYW5nWydpbmZvX3N1bW1hcnknXSA9ICdFbiBrb3J0IGJlc2tyaXZlbHNlIChvbSBibGFuaywgYmxpciBmaWxuYXZuZXQgYnJ1a3QgdXRlbiBmaWwtZW5kZWxzZSknOwokbGFuZ1snaW5mb19jYXRlZ29yeW5hbWUnXSA9ICdFdCBrb3J0IG5hdm4gcCZhcmluZzsgZGluIGthdGVnb3JpIChmb3JzdCZhcmluZztlbGlnIGZvciBodmVybWFuc2VuKSc7CiRsYW5nWydpbmZvX2NhdGVnb3J5ZGVzYyddID0gJ0VuIGJlc2tyaXZlbHNlIGF2IGRpbiBrYXRlZ29yaSc7CiRsYW5nWydpbmZvX2NhdGVnb3J5cGF0aCddID0gJ0thdGFsb2duYXZuZXQgaW5uZSBpIG9wcGxhc3Rpbmdza2F0YWxvZ2VuIHNvbSB2aWwgYmxpIGJydWt0IGZvciAmYXJpbmc7IGxhZ3JlIGZpbGVyIGkgZGVubmUga2F0ZWdvcmkuIE9tIGthdGFsb2dlbiBtZWQgZGV0dGUgbmF2bmV0IGlra2UgZWtzaXN0ZXJlciwgdmlsIGRlbiBibGkgb3BwcmV0dGV0JzsKJGxhbmdbJ2luZm9fZGVzdG5hbWUnXSA9ICdCcnVrICYjMDM5O0xhc3Qgb3BwIHNvbSYjMDM5OyBmZWx0ZXQgZm9yICZhcmluZzsgZW5kcmUgbmF2bmV0IHAmYXJpbmc7IGZpbGEgdmVkIG9wcGxhc3RpbmcuICBMYSB2JmFlbGlnO3JlIGJsYW5rdCBmb3IgJmFyaW5nOyBiZWhvbGRlIG5hdm5ldCBzb20gZGV0IGVyLic7CiRsYW5nWydlcnJvcl9jYW50Y3JlYXRlZGlyZWN0b3J5J10gPSAnS3VubmUgaWtrZSBvcHByZXR0ZSBrYXRhbG9nJzsKJGxhbmdbJ2Vycm9yX25vbWFpbGVybW9kdWxlJ10gPSAnQ01TTWFpbGVyIG1vZHVsZW4ga3VubmUgaWtrZSBzdGFydGVzJzsKJGxhbmdbJ3VwbG9hZF9ub3RpZmljYXRpb24nXSA9ICdFbiBueSBmaWwgaGFyIGJsaXR0IGxhc3RldCBvcHAnOwokbGFuZ1sndGl0bGVfZW1haWxfb25fdXBsb2FkJ10gPSAnU2VuZCBvcHBsYXN0aW5ncy1tZWxkaW5nIHRpbDonOwokbGFuZ1snZW1haWxfdGVtcGxhdGUnXSA9ICdFcG9zdCBtYWwnOwokbGFuZ1sndGl0bGVfZHVtbXlfaW5kZXhfaHRtbCddID0gJ09wcHJldHQgZHVtbXkgaW5kZXguaHRtbCBmaWxlciBpIGh2ZXIga2F0YWxvZz88YnIvPjxlbT5JbmdlbiBla3Npc3RlcmVuZGUgaW5kZXguaHRtbCBmaWxlciB2aWwgYmxpIGlnamVuPC9lbT4nOwokbGFuZ1snYWJvdXQnXSA9ICdPbSc7CiRsYW5nWydlcnJvcl9wZXJtaXNzaW9uZGVuaWVkJ10gPSAnQWRnYW5nIG5la3RldC4gVmVubmxpZ3N0IHNqZWtrIGRpbmUgcmV0dGlnaGV0ZXIuJzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90d3JpdGUnXSA9ICdLdW5uZSBpa2tlIHNrcml2ZSc7CiRsYW5nWydhZGRjYXRlZ29yeSddID0gJ0xlZ2cgdGlsIGthdGVnb3JpJzsKJGxhbmdbJ2FsbCddID0gJ0FsdCc7CiRsYW5nWydhcmV5b3VzdXJlJ10gPSAnRXIgZHUgc2lra2VyPyc7CiRsYW5nWydhdXRob3InXSA9ICdPcHBoYXZzbWFubic7CiRsYW5nWydjYW5jZWwnXSA9ICdBdmJyeXQnOwokbGFuZ1snY2Fubm90bW9kaWZ5cGF0aCddID0gJyhTdGllbiBrYW4gaWtrZSBlbmRyZXMpJzsKJGxhbmdbJ2NhdGVnb3JpZXMnXSA9ICdLYXRlZ29yaWVyJzsKJGxhbmdbJ2NhdGVnb3J5J10gPSAnS2F0ZWdvcmknOwokbGFuZ1snbWVzc2FnZV9jYXRlZ29yeWFkZGVkJ10gPSAnS2F0ZWdvcmkgb3BwcmV0dGV0JzsKJGxhbmdbJ2RhdGUnXSA9ICdEYXRvJzsKJGxhbmdbJ2RhdGV1cGxvYWRlZCddID0gJ0RhdG8gbGFzdGV0IG9wcCc7CiRsYW5nWydkZWZhdWx0J10gPSAnU3RhbmRhcmQnOwokbGFuZ1snZGVsZXRlJ10gPSAnU2xldHQnOwokbGFuZ1snZGVzY3JpcHRpb24nXSA9ICdCZXNrcml2ZWxzZSc7CiRsYW5nWydkZXN0bmFtZSddID0gJ0xhc3Qgb3BwIHNvbSc7CiRsYW5nWydkZXRhaWxfdGVtcGxhdGUnXSA9ICdEZXRhbGogbWFsJzsKJGxhbmdbJ2Rvd25sb2FkZWQnXSA9ICdGaWwgJXMgYmxlIGxhc3RldCBuZWQuJzsKJGxhbmdbJ2Rvd25sb2FkcyddID0gJ05lZGxhc3Rpbmdlcic7CiRsYW5nWydlZGl0J10gPSAnUmVkaWdlcic7CiRsYW5nWydlZGl0Y2F0ZWdvcnknXSA9ICdSZWRpZ2VyIGthdGVnb3JpJzsKJGxhbmdbJ2VkaXR1cGxvYWQnXSA9ICdSZWRpZ2VyIG9wcGxhc3RpbmcnOwokbGFuZ1snZXJyb3InXSA9ICdGZWlsISc7CiRsYW5nWydlcnJvcl9wYXRoaW51c2UyJ10gPSAnZW4ga2F0ZWdvcmkgc29tIGJlbnl0dGVyIHN0aWVuICglcykgZWtzaXN0ZXJlciBhbGxlcmVkZSc7CiRsYW5nWydlcnJvcl9wYXRoaW51c2UnXSA9ICdFbiBrYXRlZ29yaSBzb20gYnJ1a2VyIGRlbiBzdGllbiBla3Npc3RlcmVyIGFsbGVyZWRlJzsKJGxhbmdbJ2Vycm9yX2NhdGVnb3J5ZXhpc3RzMiddID0gJ0ZlaWw6IEVuIGthdGVnb3JpIG1lZCBuYXZuICVzIGVrc2lzdGVyZXIgYWxsZXJlZGUnOwokbGFuZ1snZXJyb3JfY2F0ZWdvcnlleGlzdHMnXSA9ICdGZWlsOiBLYXRlZ29yaSBla3Npc3RlcmVyIGFsbGVyZWRlJzsKJGxhbmdbJ2Vycm9yX2NhdGVnb3J5bm90ZW1wdHknXSA9ICdGZWlsISBLYW4gaWtrZSBzbGV0dGUga2F0ZWdvcmkgZGEgZGVuIGlra2UgZXIgdG9tJzsKJGxhbmdbJ2Vycm9yX2NhdGVnb3J5bm90Zm91bmQnXSA9ICdGZWlsOiBLYXRlZ29yaSBpa2tlIGZ1bm5ldCEnOwokbGFuZ1snZXJyb3JfZGJlcnJvciddID0gJ0ZlaWw6IERhdGFiYXNlIGZlaWwhJzsKJGxhbmdbJ2Vycm9yX2VtcHR5Y2F0ZWdvcnknXSA9ICdGZWlsOiBUb20ga2F0ZWdvcmkhJzsKJGxhbmdbJ2Vycm9yX2VtcHR5cGF0aCddID0gJ0ZlaWw6IEJsYW5rIHN0aSEnOwokbGFuZ1snZXJyb3JfZmlsZWV4aXN0cyddID0gJ0ZlaWwhIEZpbCAlcyBla3Npc3RlcmVyIGFsbGVyZWRlLic7CiRsYW5nWydlcnJvcl9maWxlbm90Zm91bmQnXSA9ICdGZWlsISBGaWwgJXMgYmxlIGlra2UgZnVubmV0Lic7CiRsYW5nWydlcnJvcl9pbnN1ZmZpY2llbnRwYXJhbXMnXSA9ICdGZWlsOiBNYW5nZWxmdWxsZSBwYXJhbWV0cmUgZ2l0dCB0aWwgbW9kdWxlbiEnOwokbGFuZ1snZXJyb3JfaW52YWxpZGF1dGhvciddID0gJ0ZlaWw6IFVneWxkaWcgKGVsbGVyIGJsYW5rKSBvcHBoYXZzbWFubi4nOwokbGFuZ1snZXJyb3JfaW52YWxpZGNhdGVnb3J5J10gPSAnRmVpbDogVWd5bGRpZyAoZWxsZXIgYmxhbmspIGthdGVnb3JpLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkZGVzY3JpcHRpb24nXSA9ICdGZWlsOiBVZ3lsZGlnIChlbGxlciBibGFuaykgYmVza3JpdmVsc2UuJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRmaWxlJ10gPSAnRmVpbDogVWd5bGRpZyAoZWxsZXIgYmxhbmspIGZpbG5hdm4uJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1cGxvYWRmaWxlbmFtZSddID0gJ0ZlaWw6IEZpbGVyIG1lZCBkZXR0ZSBuYXZuZXQgKHNhbnN5bmxpZyBmaWwtZW5kZWxzZW4pIGVyIGlra2UgdGlsbGxhdHQgKCVzKS4nOwokbGFuZ1snZXJyb3JfaW52YWxpZHVwbG9hZGlkJ10gPSAnRmVpbDogVWd5bGRpZyBvcHBsYXN0aW5nc0lEJzsKJGxhbmdbJ2Vycm9yX25vZmlsZXMnXSA9ICdGZWlsOiBJbmdlbiBwYXNzZW5kZSBmaWxlciEnOwokbGFuZ1snZmlsZXMnXSA9ICdGaWxlcic7CiRsYW5nWydmaXhtZSddID0gJ0Zpa3MgbWVsbG9tcm9tJzsKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ0ZpbGVyIChVcGxvYWRzIE1vZHVsZW4pJzsKJGxhbmdbJ2hlbHAnXSA9ICc8aDM+V2hhdCBEb2VzIFRoaXMgRG8/PC9oMz4NCjxwPkl0IGlzIGEgbW9kdWxlIGZvciBhbGxvd2luZyBwZW9wbGUgdG8gdXBsb2FkIGFuZCBkb3dubG9hZCBmaWxlcyB0byBhbmQgZnJvbSB5b3VyIHNpdGUuICBJdCBrZWVwcyB0cmFjayBvZiB3aG8gdXBsb2FkZWQgYSBmaWxlLCBhbmQgd2hvIGhhcyBkb3dubG9hZGVkIGl0LiAgQXMgd2VsbCwgeW91IGNhbiBzb3J0IGZpbGVzIGludG8gY2F0ZWdvcmllcywgYW5kIG1hbmFnZSB0aGUgZmlsZXMgdGhhdCB3ZXJlIHVwbG9hZGVkIGxpa2UgZXZlcnkgYWRtaW5pc3RyYXRvciB3b3VsZCBkbzwvcD4gDQo8aDM+SG93IERvIEkgVXNlIEl0PC9oMz4NCjxwPjxzdHJvbmc+V2FybmluZzwvc3Ryb25nPiAtIFRoZSBwcm9wZXIgYmVoYXZpb3VyIG9mIHRoaXMgbW9kdWxlIGRlcGVuZHMgb24gbnVtZXJvdXMgcGhwIGNvbmZpZ3VyYXRpb24gdmFyaWFibGVzLiAgVGhlc2UgaW5jbHVkZSA8ZW0+KGJ1dCBhcmUgbm90IGxpbWl0ZWQgdG8pPC9lbT4sIHBocCYjMDM5O3MgbWVtb3J5X2xpbWl0LCBzYWZlX21vZGUsIGZpbGVfdXBsb2FkcywgdXBsb2Fkc19tYXhfZmlsZXNpemUsIGFuZCBtYXhfZXhlY3V0aW9uX3RpbWUuICBUaGVzZSB2YXJpYWJsZXMgbWF5IG5lZWQgYWRqdXN0bWVudCBmb3IgdGhpcyBtb2R1bGUgdG8gd29yayBwcm9wZXJseSBvbiB5b3VyIHNpdGUuICBJdCBpcyBhZHZpc2VkIHRoYXQgeW91IHdvcmsgd2l0aCB5b3VyIHN5c3RlbSBhZG1pbmlzdHJhdG9yIG9yIGhvc3QgcHJvdmlkZXIgdG8gdHVuZSB0aGVzZSBzZXR0aW5ncyBmb3IgeW91ciByZXF1aXJlbWVudHMuPC9wPg0KPHA+VG8gdXNlIHRoaXMgbW9kdWxlLCB0byBhbGxvdyB1c2VycyB0byB1cGxvYWQgZmlsZXMgdG8geW91ciBzaXRlLCB5b3Ugc2hvdWxkIGluc3RhbGwgdGhlIG1vZHVsZSwgYW5kIHRoZW4gY3JlYXRlIG9uZSBvciBtb3JlIGNhdGVnb3JpZXMgKGEuay5hKSBkaXJlY3RvcmllcyBmb3IgdGhlIHVwbG9hZGVkIGZpbGVzIHRvIGdvIGludG8uIFRoZW4gYWRkIGEgdGFnIGludG8gYSBwYWdlIG9yIHRlbXBsYXRlIHNvbWV3aGVyZSBsaWtlIHtjbXNfbW9kdWxlIG1vZHVsZT0mcXVvdDtVcGxvYWRzJnF1b3Q7IGNhdGVnb3J5PSZxdW90O3NvbWVjYXRlZ29yeSZxdW90OyBtb2RlPSZxdW90O3NvbWVtb2RlJnF1b3Q7fS4gIFdoZXJlIG1vZGUgbWF0Y2hlcyBvbmUgb2YgdGhlIG1vZGVzIGxpc3RlZCBiZWxvdy4gIFRoZSBvdXRwdXQgd2lsbCBkaWZmZXIgZGVwZW5kaW5nIHVwb24gd2hpY2ggbW9kZSB5b3Ugc2VsZWN0LjwvcD4NCjxwPlRoaXMgbW9kdWxlIGNhbiB1c2UgdGhlIEZyb250ZW5kVXNlcnMgbW9kdWxlIChvcHRpb25hbCkgdG8gZ2V0IGluZm9ybWF0aW9uIGFib3V0IGFueSBjdXJyZW50bHkgbG9nZ2VkIGluIHVzZXJzIHRvIHBhcnRseSBmaWxsIGluIHRoZSBmb3JtIHdoZW4gdXBsb2FkaW5nIGZpbGVzOzwvcD4NCjxoMz5QZXJtaXNzaW9uczwvaDM+DQo8dWw+DQo8bGk+PGVtPk1hbmFnZSBVcGxvYWRzPC9lbT4gcGVybWlzc2lvbiBpcyBuZWVkZWQgdG8gbWFuYWdlIGNhdGVnb3JpZXMsIGFuZCB0aGUgZmlsZXMgd2l0aGluIHRoZW0uPC9saT4NCjxsaT48ZW0+TW9kaWZ5IFRlbXBsYXRlczwvZW0+IHBlcm1pc3Npb24gaXMgbmVlZGVkIGVkaXQgYW55IG9mIHRoZSB0ZW1wbGF0ZXMuPC9saT4NCjxsaT48ZW0+TW9kaWZ5IFNpdGUgUHJlZmVyZW5jZXM8L2VtPiBwZXJtaXNzaW9uIGlzIG5lZWRlZCBhbnkgb2YgdGhlIGZpbGUgc2V0dGluZ3MuPC9saT4NCjwvdWw+DQo8aDM+Q2F0ZWdvcnkgQnJvd3Npbmc8L2gzPg0KPHA+UGxhY2luZyBhIHRhZyBsaWtlIHtjbXNfbW9kdWxlIG1vZHVsZT0mcXVvdDtVcGxvYWRzJnF1b3Q7IGFjdGlvbj0mcXVvdDtjYXRlZ29yeXN1bW1hcnkmcXVvdDsgdGVtcGxhdGU9JnF1b3Q7c3VtbWFyeXRlbXBsYXRlJnF1b3Q7IHNvcnRvcmRlcj0mcXVvdDtuYW1lX2FzYyZxdW90OyBsaXN0aW5ndGVtcGxhdGU9JnF1b3Q7bGlzdHRlbXBsYXRlJnF1b3Q7IGxpc3Rpbmdzb3J0b3JkZXI9JnF1b3Q7bGlzdHNvcnRvcmRlciZxdW90O30NCmFsbG93cyB5b3UgdG8gZGlzcGxheSBhbiBpbnRlcmFjdGl2ZSBjYXRlZ29yeSBicm93c2VyLiBzb3J0b3JkZXIgY2FuIGJlOiBuYW1lX2FzYywgbmFtZV9kZXNjLCBzdW1tX2FzYywgc3VtbV9kZXNjLCBvciByYW5kb20uDQpsaXN0aW5ndGVtcGxhdGUgYW5kIGxpc3Rpbmdzb3J0b3JkZXIgYXJlIGlkZW50aWNhbCB0byB0aGUgdGVtcGxhdGUgYW5kIHNvcnRvcmRlciBwYXJhbWV0ZXJzIGZvcg0KdGhlICZxdW90O3N1bW1hcnkmcXVvdDsgbW9kZS48L3A+DQo8aDM+QXV0b21hdGljIFNjYW5uaW5nPC9oMz4NCjxwPlRoaXMgbW9kdWxlIHdpbGwgYXV0b21hdGljYWxseSBzY2FuIGZvciBuZXcgZmlsZXMgaW4gYSBkaXJlY3Rvcnkgd2hlbiBhIHN1bW1hcnkgbW9kZSB0YWcgZm9yIGEgc3BlY2lmaWMgY2F0ZWdvcnkgaXMgdXNlZCBvbiBhIENNU01TIHBhZ2UuICBpLmU6IDxjb2RlPntVcGxvYWRzIGNhdGVnb3J5PWNhdGVnb3J5X25hbWV9PC9jb2RlPiB3aWxsIHBlcmZvcm0gYSBzY2FuLiAgYnV0IDxjb2RlPntVcGxvYWRzIGNhdGVnb3J5PWFsbH08L2NvZGU+IHdpbGwgbm90LjwvcD4NCjxoMz5UaHVtYm5haWwgR2VuZXJhdGlvbjwvaDM+DQo8cD5UaGlzIG1vZHVsZSBpcyBjYXBhYmxlIG9mIGdlbmVyYXRpbmcgdGh1bWJuYWlscyBmb3IgY2VydGFpbiB0eXBlcyBvZiBmaWxlcy4gIFRoZXJlIGFyZSBwcmVmZXJlbmNlcyBpbiB0aGUgcHJlZmVyZW5jZXMgdGFiIG9mIHRoZSBVcGxvYWRzIG1vZHVsZSBhZG1pbmlzdHJhdGlvbiBwYW5lbCB0byBzcGVjaWZ5IHRoZSB0eXBlcyBvZiBmaWxlcyB0aGF0IGFsbG93IGF1dG9tYXRpYyB0aHVtYm5haWwgZ2VuZXJhdGlvbiwgYW5kIHRoZSBzaXplIG9mIHRoZSBnZW5lcmF0ZWQgdGh1bWJuYWlsIChwcmVzZXJ2aW5nIGFzcGVjdCByYXRpbykuICAgVGh1bWJuYWlscyBhcmUgYXV0b21hdGljYWxseSBnZW5lcmF0ZWQgdXBvbiB1cGxvYWQsIGFuZCBjYW4gYmUgZ2VuZXJhdGVkIG1hbnVhbGx5IGJ5IHNlbGVjdGluZyB0aGUgJmFtcDtxdW90O0dlbmVyYXRlIFRodW1ibmFpbHMmYW1wO3F1b3Q7IG9wdGlvbiBpbiB0aGUgZWRpdCBjYXRlZ29yeSBmb3Jtcy4uLiBidXQgYXJlIG5vdCBnZW5lcmF0ZWQgd2hlbiBuZXcgZmlsZXMgYXJlIGRldGVjdGVkIGJ5IGF1dG9tYXRpYyBzY2FubmluZy48L3A+DQo8aDM+WW91IFNlbmQgSXQ8L2gzPg0KPHA+SXQgaXMgcG9zc2libGUgdG8gZW5hYmxlICZhbXA7cXVvdDt5b3VzZW5kaXQmYW1wO3F1b3Q7IGxpa2UgZnVuY3Rpb25hbGl0eSB0byBhbGxvdyBhdXRvbWF0aWNhbGx5IGVtYWlsaW5nIHNlbGVjdGVkIHBlb3BsZSB3aXRoIGEgbGluayB0byBhIG5ld2x5IHVwbG9hZGVkIGZpbGUuICBUaGlzIGlzIGFjY29tcGxpc2hlZCBieSB1c2luZyBhIHRhZyBsaWtlOiA8Y29kZT57VXBsb2FkcyBhY3Rpb249eW91c2VuZGl0IGNhdGVnb3J5PWNhdGVnb3J5bmFtZX08L2NvZGU+LiAgVGhpcyB3aWxsIGRpc3BsYXkgYSBmb3JtIGFsbG93aW5nIHRoaXMgZnVuY3Rpb25hbGl0eS48L3A+DQo8aDM+VGltZSBMaW1pdGVkIEFjY2VzczwvaDM+DQo8cD5UaGlzIG1vZHVsZSBzdXBwb3J0cyB0aGUgbm90aW9uIG9mIHVuaXF1ZSBrZXlzIHRvIGFsbG93IHRpbWUgbGltaXRlZCBhY2Nlc3MgdG8gY2VydGFpbiBmaWxlcy4gIFRoZSBmdW5jdGlvbmFsaXR5IGFsbG93cyBzcGVjaWZ5aW5nIGEgdGltZSBsaW1pdCAoaW4gaG91cnMpIGZvciB3aGljaCB0aGUga2V5IGlzIHZhbGlkLCBhbmQgYSBtYXhpbXVtIG51bWJlciBvZiBkb3dubG9hZHMgb3IgZG93bmxvYWQgYXRlbXB0cy4gIEFuIGVtYWlsIGlzIHNlbnQgdG8gdGhlIGRlc2lyZWQgdXNlcnMgd2l0aCB0aGUgdW5pcXVlIFVSTC4gIEFmdGVyIHRoZSB0aW1lIGxpbWl0LCBvciB0aGUgbnVtYmVyIG9mIGRvd25sb2FkcyBoYXMgYmVlbiByZWFjaGVkLCB0aGUgVVJMIGlzIG5vIGxvbmdlciB2YWxpZC4gIFRoZXNlIHVuaXF1ZSB0aW1lIGxpbWl0ZWQga2V5cyBhcmUgYXV0b21hdGljYWxseSByZW1vdmVkIGZyb20gdGhlIGRhdGFiYXNlIGFmdGVyIGV4cGlyeS48L3A+DQo8aDM+UmVzdHJpY2luZyBBY2Nlc3Mgd2l0aCBGRVU8L2gzPg0KPHA+VGhpcyBtb2R1bGUgaXMgY2FwYWJsZSBvZiBpbnRlZ3JhdGluZyB3aXRoIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZSB0byByZXN0cmljdCB0aGUgdmlzaWJpbGl0eSBvZiBjYXRlZ29yaWVzIChkaXJlY3RvcmllcykgdG8gY2VydGFpbiBhbGxvd2VkIEZFVSBncm91cHMuICBZb3VyIHVzZXJzIHdvdWxkIGhhdmUgdG8gYmUgbG9nZ2VkIGluIHRvIHlvdXIgd2Vic2l0ZSAodXNpbmcgRkVVKSBhbmQgYWxzbyBhIG1lbWJlciBvZiBvbmUgb2YgdGhlIGFsbG93ZWQgZ3JvdXBzIHRvIG9idGFpbiBhY2Nlc3MuICBUaGlzIGlzIGFjY29tcGxpc2hlZCBpbiB0aGUgY2F0ZWdvcnkgZWRpdCBmb3JtLiAgWW91IGNhbiBzZWxlY3QgYSBsaXN0IG9mIEZFVSBncm91cHMgd2hpY2ggYXJlIGFsbG93ZWQgdG8gdmlldyBmaWxlcyBpbiB0aGlzIGNhdGVnb3J5LjwvcD4NCjxwPlRoaXMgZnVuY3Rpb25hbGl0eSBhbHNvIGFwcGxpZXMgdG8gdGhlICZhbXA7cXVvdFRpbWUgTGltaXRlZCBBY2Nlc3MmYW1wO3F1b3QgZnVuY3Rpb25hbGl0eS4gIEFsbG93aW5nIHlvdSB0byBzcGVjaWZ5IHRoYXQgY2VydGFpbiBwZW9wbGUsIHdobyBhbHNvIGhhdmUgdG8gYmUgbG9nZ2VkIGluIHRvIHlvdXIgd2Vic2l0ZSBjYW4gaGF2ZSBhY2Nlc3MgdG8gY2VydGFpbiBmaWxlcyBmb3IgYSBsaW1pdGVkIGFtb3VudCBvZiB0aW1lLjwvcD4NCjxoMz5FbWFpbGluZzwvaDM+DQo8cD5UaGlzIG1vZHVsZSBpcyBjYXBhYmxlIG9mIHNlbmRpbmcgYW4gZW1haWwgd2hlbmV2ZXIgYSBmaWxlIGlzIHVwbG9hZGVkLCBzZWUgdGhlIHByZWZlcmVuY2VzIHRhYi4gIEhvd2V2ZXIsIHRvIGRvIHRoaXMgdGhlIDxiPkNNU01haWxlcjwvYj4gcGFja2FnZSBtdXN0IGJlIGluc3RhbGxlZCBhbmQgY29uZmlndXJlZC4gIFRoaXMgaXMgYW4gPGVtPm9wdGlvbmFsPC9lbT4gc3RlcCwgYW5kIGlmIHRoZSBDTVNNYWlsZXIgbW9kdWxlIGlzIG5vdCBpbnN0YWxsZWQsIG5vdGhpbmcgd2lsbCBiZSBkaXNwbGF5ZWQgdG8gdGhlIHVzZXIsIG9ubHkgYSBsb2cgbWVzc2FnZSB3aWxsIGJlIHBsYWNlZCBpbnRvIHRoZSBhZG1pbiBsb2c8L3A+DQo8aDM+Q29udGVudCBCbG9ja3MgPGVtPihDTVNNUyAxLjcrIE9ubHkpPC9lbT48L2gzPg0KPHA+Rm9yIENNU01TIDEuNyB0aGlzIG1vZHVsZSBpcyBjYXBhYmxlIG9mIGludGVyZmFjaW5nIHdpdGggdGhlIGNvbnRlbnQgZWRpdG9yIGFuZCBleHBvcnRpbmcgYSBjb250ZW50IGJsb2NrIHRoYXQgYWxsb3dzIHNlbGVjdGluZyBhbiB1cGxvYWRzIGNhdGVnb3J5IHdpdGhpbiB0aGUgZWRpdCBjb250ZW50IHBhZ2UsIGZvciBsYXRlciB1c2Ugd2l0aGluIHRoZSB0ZW1wbGF0ZS48L3A+DQo8cD5pLmU6IHBsYWNpbmcgdGhlIGZvbGxvd2luZyB0YWcgd2l0aGluIGEgcGFnZSB0ZW1wbGF0ZSA8Y29kZT57Y29udGVudF9tb2R1bGUgbW9kdWxlPSZhbXA7cXVvdDtVcGxvYWRzJmFtcDtxdW90OyBibG9jaz0mYW1wO3F1b3Q7dXBsb2Fkc19jYXRlZ29yeSZhbXA7cXVvdDsgdHlwZT0mYW1wO3F1b3Q7Y2F0ZWdvcnlzZWxlY3QmYW1wO3F1b3Q7fTwvY29kZT4sIHdpbGwgYWRkIGEgZHJvcGRvd24gYm94IGluIHRoZSBlZGl0IGNvbnRlbnQgdmlldyBvZiBhbnkgcGFnZSB1dGlsaXppbmcgdGhhdCBwYWdlIHRlbXBsYXRlLjwvcD4NCjxwPlRoaXMgY29udGVudCBibG9jayBhbHNvIGFjY2VwdHMgc29tZSBvcHRpb25hbCBwYXJhbWV0ZXJzOjwvcD4NCjx1bD4NCiAgPGxpPjx1PnNlbGVjdG9uZTwvdT4NCiAgICA8cD5UaGlzIHBhcmFtZXRlciBpbnNlcnRzIGEgJmFtcDtxdW90O1NlbGVjdCBPbmUmYW1wO3F1b3Q7IGl0ZW0gaW50byB0aGUgbGlzdCBvZiBjYXRlZ29yaWVzLCByZXF1aXJpbmcgdGhlIHVzZXIgdG8gc2VsZWN0IGEgdmFsaWQgY2F0ZWdvcnkgd2hlbiB0aGUgY29udGVudCBwYWdlIGlzIHNhdmVkLjwvcD4NCiAgPC9saT4NCiAgPGxpPjx1PmFsbG93YWxsPC91Pg0KICAgIDxwPlRoaXMgcGFyYW1ldGVyIGFsbG93cyB0aGUgY29udGVudCBlZGl0b3IgdG8gc2VsZWN0ICZhbXA7cXVvdDtBbGwmYW1wO3F1b3Q7IGFzIGEgY2F0ZWdvcnkgZm9yIHRoZSB1cGxvYWRzIGRpc3BsYXkuPC9wPg0KICA8L2xpPg0KPC91bD4NCjxoND5Ib3cgd291bGQgSSB1c2UgaXQ/PC9oND4NCjxwPkhlcmUgaXMgc29tZSBleGFtcGxlIGNvZGU6PC9wPg0KPHByZT4NCntjb250ZW50X21vZHVsZSBtb2R1bGU9JmFtcDtxdW90O1VwbG9hZHMmYW1wO3F1b3Q7IGJsb2NrPSZhbXA7cXVvdDtjYXRlZ29yeXNlbGVjdCZhbXA7cXVvdDsgbGFiZWw9JmFtcDtxdW90O1NlbGVjdCBhbiB1cGxvYWRzIGNhdGVnb3J5JmFtcDtxdW90OyBzZWxlY3RvbmU9MSBhc3NpZ249JmFtcDtxdW90O3RtcCZhbXA7cXVvdDt9DQp7VXBsb2FkcyBjYXRlZ29yeT0kdG1wfQ0KPC9wcmU+DQoNCjxoMz5TeXN0ZW0gU2V0dGluZ3M8L2gzPg0KPHA+PGI+Tm90ZTo8L2I+IFRoaXMgbW9kdWxlIGRvZXMgbm90IGJ5cGFzcyBvciBnZXQgcGFzdCBhbnkgZmlsZSBzaXplIGxpbWl0YXRpb25zIGluIHBocC4gIEl0IHdvcmtzIGluIGNvbmp1bmN0aW9uIHdpdGggdGhlbS4gIFRoZXJlZm9yZSB5b3UgbWF5IG5lZWQgdG8gbW9kaWZ5IHlvdXIgcGhwLmluaSBmaWxlLCB5b3VyIENNU01TIGNvbmZpZy5waHAgZmlsZSBhbmQvb3IgeW91ciBodHRwZC5jb25mIGZpbGUocykgdG8gYWxsb3cgeW91IHRvIHVwbG9hZCBmaWxlcyBhcyBsYXJnZSBhcyB3aGF0IHlvdSBoYXZlIHNldCBpbiB0aGUgdXBsb2FkcyBtb2R1bGUgcHJlZmVyZW5jZXMuPC9wPg0KPGgzPkFwYWNoZSBOb3RlczwvaDM+DQo8cD5JbiBvcmRlciB0byBhbGxvdyBsYXJnZSBmaWxlIHVwbG9hZHMsIHlvdSBtYXkgbmVlZCB0byBtb2RpZnkgdGhlIHVwbG9hZF9tYXhfZmlsZXNpemUgcGFyYW1ldGVyIGluIHlvdXIgcGhwLmluaSAgSW4gYWRkaXRpb24sIHRoZSBMaW1pdFJlcXVlc3RCb2R5IHBhcmFtZXRlciBpbiB5b3VyIGFwYWNoZSBjb25maWd1cmF0aW9uLCBtYXkgbmVlZCB0byBiZSBhZGp1c3RlZCB0byBtYXRjaCB0aGUgdXBsb2FkX21heF9maWxlc2l6ZSBwYXJhbWV0ZXI8L3A+DQo8cD5Ob3RlOiAgdGhlIHVwbG9hZF9tYXhfZmlsZXNpemUgcGFyYW1ldGVyIGNhbiBiZSBzcGVjaWZpZWQgaW4gYnl0ZXMsIGtpbG9ieXRlcywgb3IgbWVnYWJ5dGVzLCBob3dldmVyIHRoZSBMaW1pdFJlcXVldEJvZHkgcGFyYW1ldGVyIGlzIG9ubHkgc3BlY2lmaWVkIGluIGJ5dGVzPC9wPg0KJzsKJGxhbmdbJ2lkJ10gPSAnSUQnOwokbGFuZ1snaW5zdGFsbGVkJ10gPSAnTW9kdWwgdmVyc2pvbiAlcyBpbnN0YWxsZXJ0Lic7CiRsYW5nWydpcF9hZGRyZXNzJ10gPSAnSVAtYWRyZXNzZSc7CiRsYW5nWydtb2RkZXNjcmlwdGlvbiddID0gJ0VuIG1vZHVsIHNvbSB0aWxsYXRlciBicnVrZXJlICZhcmluZzsgbGFzdGUgb3BwIGZpbGVyLCBvZyB0aWxsYXRlciBkZWcgJmFyaW5nOyBoJmFyaW5nO25kdGVyZSBkZW0uJzsKJGxhbmdbJ25hbWUnXSA9ICdOYXZuJzsKJGxhbmdbJ3JlbmFtZW1lc3NhZ2UnXSA9ICdSZWRpZ2VyIG5hdm5ldCBoZXIgZm9yICZhcmluZzsgZ2omb3NsYXNoO3JlIGVuIG5hdm5lZW5kcmluZyc7CiRsYW5nWydwYXRoJ10gPSAnU3RpJzsKJGxhbmdbJ3BhdGhtZXNzYWdlJ10gPSAnRW5kcmUga2F0ZWdvcmkgaGVyIGZvciAmYXJpbmc7IGZseXR0ZSBmaWxlbiB0aWwgZW4gYW5uZW4ga2F0ZWdvcmknOwokbGFuZ1sncGF0aGludXBsb2FkcyddID0gJyhSZWxhdGl2IHRpbCBvcHBsYXN0aW5ncyBrYXRhbG9nZW4pJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsJ10gPSAnPHA+VGhlIHVwbG9hZHMgbW9kdWxlIGhhcyBiZWVuIHN1Y2Nlc3NmdWxseSBpbnN0YWxsZWQuIEJlIHN1cmUgdG8gc2V0ICZxdW90O01hbmFnZSBVcGxvYWRzJnF1b3Q7IHBlcm1pc3Npb25zIHRvIHVzZSB0aGlzIG1vZHVsZSE8L3A+DQo8cD48c3Ryb25nPldhcm5pbmc8L3N0cm9uZz4gLSBUaGUgcHJvcGVyIGJlaGF2aW91ciBvZiB0aGlzIG1vZHVsZSBkZXBlbmRzIG9uIG51bWVyb3VzIHBocCBjb25maWd1cmF0aW9uIHZhcmlhYmxlcy4gIFRoZXNlIGluY2x1ZGUgPGVtPihidXQgYXJlIG5vdCBsaW1pdGVkIHRvKTwvZW0+LCBwaHAmIzAzOTtzIG1lbW9yeV9saW1pdCwgc2FmZV9tb2RlLCBmaWxlX3VwbG9hZHMsIHVwbG9hZHNfbWF4X2ZpbGVzaXplLCBhbmQgbWF4X2V4ZWN1dGlvbl90aW1lLiAgVGhlc2UgdmFyaWFibGVzIG1heSBuZWVkIGFkanVzdG1lbnQgZm9yIHRoaXMgbW9kdWxlIHRvIHdvcmsgcHJvcGVybHkgb24geW91ciBzaXRlLiAgSXQgaXMgYWR2aXNlZCB0aGF0IHlvdSB3b3JrIHdpdGggeW91ciBzeXN0ZW0gYWRtaW5pc3RyYXRvciBvciBob3N0IHByb3ZpZGVyIHRvIHR1bmUgdGhlc2Ugc2V0dGluZ3MgZm9yIHlvdXIgcmVxdWlyZW1lbnRzLjwvcD4nOwokbGFuZ1sncG9zdHVuaW5zdGFsbCddID0gJ1VwbG9hZHMgbW9kdWxlbiBoYXIgYmxpdHQgZmplcm5ldC4gSW5nZW4gZmlsZXIgaGFyIGJsaXR0IGZqZXJuZXQgZnJhIGRpbiBvcHBsYXN0aW5ncyBrYXRhbG9nLCBvZyBmaWwgaW50ZWdyaXRldGVuIGVyIGludGFrdCc7CiRsYW5nWydwcmVmZXJlbmNlcyddID0gJ0lubnN0aWxsaW5nZXInOwokbGFuZ1sncHJlZnN1cGRhdGVkJ10gPSAnTW9kdWwgaW5uc3RpbGxpbmdlciBvcHBkYXRlcnQuJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeWRlc2MnXSA9ICdCZXNrcml2ZWxzZSc7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnlsaXN0YWJsZSddID0gJ0ZpbGVyIGkgZGVubmUga2F0ZWdvcmllbiBrYW4gbGlzdGVzIHV0JzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeW5hbWUnXSA9ICdLYXRlZ29yaSBuYXZuJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeXBhdGgnXSA9ICdTZXJ2ZXIgc3RpJzsKJGxhbmdbJ3Byb21wdF9kZWxldGVkaXJlY3RvcnknXSA9ICdTbGV0dCBrYXRlZ29yaSBtYXBwZT8nOwokbGFuZ1sncHJvbXB0X21heF91cGxvYWRzaXplJ10gPSAnTWFrc2ltdW0gdGlsbGF0dGUgZmlsc3Qmb3NsYXNoO3JyZWxzZSAoS2IpJzsKJGxhbmdbJ3Byb21wdF92YWxpZF91cGxvYWRleHRlbnNpb25zJ10gPSAnR3lsZGlnIG9wcGxhc3RpbmdzIGZpbC1lbmRlbHNlJzsKJGxhbmdbJ3NjYW4nXSA9ICdTa2Fubic7CiRsYW5nWydzZWxlY3RjYXRlZ29yeSddID0gJ1ZlbGcga2F0ZWdvcmknOwokbGFuZ1snc2l6ZSddID0gJ1N0Jm9zbGFzaDtycmVsc2UnOwokbGFuZ1snc2l6ZWtiJ10gPSAnU3Qmb3NsYXNoO3JyZWxzZSAoS2IpJzsKJGxhbmdbJ3N1Ym1pdCddID0gJ1V0ZiZvc2xhc2g7cic7CiRsYW5nWydzdW1tYXJ5X3RlbXBsYXRlJ10gPSAnU2FtbWVuZHJhZ3MgbWFsJzsKJGxhbmdbJ3N1bW1hcnknXSA9ICdTYW1tZW5kcmFnJzsKJGxhbmdbJ3RpdGxlX2FkbWluX3BhbmVsJ10gPSAnVXBsb2FkcyBNb2R1bGVuJzsKJGxhbmdbJ3RpdGxlX21vZF9hZG1pbiddID0gJ01vZHVsIEFkbWluaXN0cmFzam9uc3BhbmVsJzsKJGxhbmdbJ3RpdGxlX21vZF9wcmVmcyddID0gJ01vZHVsIElubnN0aWxsaW5nZXInOwokbGFuZ1sndGl0bGVfc3VibmV0X2V4Y2x1c2lvbnMnXSA9ICdVdGVsdWtrIHN1Ym5ldHQgZnJhIHN0YXRpc3Rpa2tlcic7CiRsYW5nWyd0aXRsZV92YWxpZF91cGxvYWRleHRlbnNpb25zJ10gPSAnR3lsZGlnZSBmaWwtZW5kZWxzZXInOwokbGFuZ1sndW5pbnN0YWxsZWQnXSA9ICdNb2R1bCBhdmluc3RhbGxlcnQuJzsKJGxhbmdbJ3VwZ3JhZGVkJ10gPSAnTW9kdWwgb3BwZ3JhZGVydCB0aWwgdmVyc2pvbiAlcy4nOwokbGFuZ1sndXBsb2FkJ10gPSAnTGFzdCBvcHAnOwokbGFuZ1sndXBsb2FkZWQnXSA9ICdGaWwgJXMgYmxlIGxhc3RldCBvcHAgYXYgJXMuJzsKJGxhbmdbJ3JlcGxhY2VkJ10gPSAnRmlsICVzIGJsZSBlcnN0YXR0ZXQgJXMuJzsKJGxhbmdbJ2RlbGV0ZWQnXSA9ICdGaWwgJXMgYmxlIHNsZXR0ZXQuJzsKJGxhbmdbJ3VwbG9hZGZvcm1fdGVtcGxhdGUnXSA9ICdPcHBsYXN0aW5nIG1hbGVyJzsKJGxhbmdbJ3VzZXJuYW1lJ10gPSAnQnJ1a2VybmF2bic7CiRsYW5nWyd3YXJuaW5nX2RlbGV0ZWNhdGVnb3J5J10gPSAnQURWQVJTRUw6IEZvcnNpa3RpZyBuJmFyaW5nO3IgZHUgc2xldHRlciBrYXRlZ29yaWVyLiAgRmlsZXIga2FuIGJsaSBib3J0ZSc7CiRsYW5nWyd1dG16J10gPSAnMTU2ODYxMzUzLjEyNTAyOTczODAuMTc1Mi40Mi51dG1jY249KHJlZmVycmFsKXx1dG1jc3I9aGVsbWluc2VuLm5vfHV0bWNjdD0vaW5zdGFsbC91cGdyYWRlLnBocHx1dG1jbWQ9cmVmZXJyYWwnOwokbGFuZ1sndXRtYSddID0gJzE1Njg2MTM1My4xNzkwNTI2MjMwODQxMTAxMDAuMTIxMDQyMzU3Ny4xMjU0OTQ2NzU2LjEyNTQ5NDkwODkuMTk3MCc7CiRsYW5nWydxY2EnXSA9ICcxMjEwOTcxNjkwLTI3MzA4MDczLTgxOTUyODMyJzsKJGxhbmdbJ3V0bWMnXSA9ICcxNTY4NjEzNTMnOwokbGFuZ1sndXRtYiddID0gJzE1Njg2MTM1My42LjEwLjEyNTQ5NDkwODknOwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lang/ext/nl_NL.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ3Byb21wdF90bF9hY2Nlc3MnXSA9ICdUaWpkZ2VsaW1pdGVlcmRlIHRvZWdhbmcnOwokbGFuZ1sncHJvbXB0X2FsbG93X3VwbG9hZF9zZW5kZmlsZSddID0gJ0FsbG93IHNlbmRpbmcgZmlsZXMgaW1tZWRpYXRlbHkgb24gYWRtaW4gdXBsb2FkJzsKJGxhbmdbJ21zZ19hdXRvX2RlbGV0ZV9maWxlJ10gPSAnQXV0b21hdGlzY2ggdmVyd2lqZGVyZCB2ZXJsb3BlbiBiZXN0YW5kOiAlcyc7CiRsYW5nWydtc2dfYXV0b19kZWxldGVfZmlsZV9mYWlsZWQnXSA9ICdSZWNodGVucHJvYmxlZW0sIGF1dG9tYXRpc2NoIHZlcndpamRlcmVuIHZhbiAlcyBtaXNsdWt0JzsKJGxhbmdbJ2luZm9fY2F0ZWdvcnlfZXhwaXJlc19ocnMnXSA9ICdTcGVjaWZ5IGEgbnVtYmVyIG9mIGhvdXJzIGJlZm9yZSBmaWxlcyBpbiB0aGlzIGNhdGVnb3J5IGNhbiBiZSBkZWxldGVkLiAgVXNlIGEgdmFsdWUgb2YgMCB0byBpbmRpY2F0ZSB0aGF0IGZpbGVzIHNob3VsZCBub3QgYmUgZGVsZXRlZCc7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnlfZXhwaXJlc19ocnMnXSA9ICdOdW1iZXIgb2YgaG91cnMgdW50aWwgZmlsZXMgaW4gdGhpcyBjYXRlZ29yeSBhcmUgYXV0b21hdGljYWxseSBkZWxldGVkJzsKJGxhbmdbJ2luZm9fZGZsdF9jYXRlZ29yeV9leHBpcnknXSA9ICdUaGUgZGVmYXVsdCB2YWx1ZSBmb3IgbmV3IGNhdGVnb3JpZXMgdGhhdCBzcGVjaWZpZXMgaG93IGxvbmcgZmlsZXMgaW4gdGhpcyBjYXRlZ29yeSBleGlzdCBiZWZvcmUgdGhleSBhcmUgYXV0b21hdGljYWxseSBkZWxldGVkLiAgVXNlIGEgdmFsdWUgb2YgMCB0byBpbmRpY2F0ZSBubyBkZWxldGlvbic7CiRsYW5nWyd0aXRsZV9jYXRlZ29yeV9leHBpcnknXSA9ICdDYXRlZ29yeSBleHBpcnkgcGVyaW9kIDxlbT4oaHJzKTwvZW0+JzsKJGxhbmdbJ2luZm9fY2F0ZWdvcnlkZWxldGFibGUnXSA9ICdCZXZvZWdkZSBnZWJydWlrZXJzIGhlYmJlbiBkZSByZWNodGVuIG9tIGRlemUgYmVzdGFuZGVuIHRlIHZlcndpamRlcmVuLiBEaXQgaG91ZHQgaW4gZGF0IGVlbiB1cmwgd29yZGVuIGdlZ2VuZXJlZXJkIGluIGhldCBqdWlzdGUgc2phYmxvb24gZGllIHRvZXN0YWF0IGhldCBiZXN0YW5kIHRlIHZlcndpamRlcmVuLiBFZW4gd2Vic2l0ZSBib3V3ZXIga2FuIGRlIGp1aXN0ZSBzbWFydHkgbG9naWNhIGdlYnJ1aWtlbiBvbSBlZW4gbGluayB0ZSB0b25lbiBhYW4gZGUgZ2VhdXRvcmlzZWVyZGUgZ2VicnVpa2Vycy4nOwokbGFuZ1snY29weV9maWxlcyddID0gJ0tvcGllZXIgYmVzdGFuZGVuJzsKJGxhbmdbJ2Vycm9yX2ZpbGV0b29sYXJnZSddID0gJ0hldCBiZXN0YW5kIGRhdCB1IHByb2JlZXJ0IHRlIHVwbG9hZGVuIGlzIGdyb3RlciBkYW4gaGV0IG1heGltYWFsIHRvZWdlc3RhbmUnOwokbGFuZ1snYXJleW91c3VyZV9kZWxldGVjYXRlZ29yeSddID0gJ1dlZXQgdSB6ZWtlciBkYXQgdSBkZXplIGNhdGVnb3JpZSB3aWx0IHZlcndpamRlcmVuPyc7CiRsYW5nWydlcnJvcl9kZWxldGUnXSA9ICdFZW4gaXRlbSBrb24gbmlldCB3b3JkdCB2ZXJ3aWpkZXJkICglcyknOwokbGFuZ1snY29uZmlybV9jYXRfbXVsdGlhY3Rpb24nXSA9ICdXZWV0IHUgemVrZXIgZGF0IHUgZGV6ZSBhY3RpZSB3aWx0IHVpdHZvZXJlbiBvcCBkZSBnZXNlbGVjdGVlcmRlIGNhdGVnb3JpJmVncmF2ZTtuPyc7CiRsYW5nWydlcnJvcl9ub3RoaW5nX3NlbGVjdGVkJ10gPSAnRm91dDogTmlldHMgZ2VzZWxlY3RlZXJkJzsKJGxhbmdbJ3dpdGhfc2VsZWN0ZWQnXSA9ICdNZXQgZ2VzZWxlY3RlZXJkOic7CiRsYW5nWydlcnJvcl9yZXBsYWNlX21pc21hdGNoZWRfZmlsZWV4dCddID0gJ1RpamRlbnMgaGV0IHZlcnZhbmdlbiB2YW4gZWVuIGJlc3RhbmQsIG1vZXQgdSBlZW4gYmVzdGFuZCB1cGxvYWRlbiBtZXQgZWVuemVsZmRlIGV4dGVudGllLiBIZXQgYmVzdGFuZCBkYXQgdSBzZWxlY3RlZXJkZSBrb210IG5pZXQgb3ZlcmVlbiBtZXQgaGV0IG9yaWdpbmVsZSBiZXN0YW5kJzsKJGxhbmdbJ3JlcGxhY2UnXSA9ICdWZXJ2YW5nJzsKJGxhbmdbJ2luZm9fcmVwbGFjZWZpbGUnXSA9ICdVIG1hZyBlZW4gdmVydmFuZ2VuZCBiZXN0YW5kIHVwbG9hZGVuLiBhbHMgaGV0IGVlbiBhZmJlZWxkaW5nIGlzIGVuIHUgaGVlZnQgZ2VlbiBiaWpiZWhvcmVuZCBtaW5pYXR1dXIgYWFuZ2VnZXZlbiwgZGFuIHphbCBlciBlZW4gbmlldXdlIHdvcmRlbiBnZWdlbmVyZWVyZCc7CiRsYW5nWydwcm9tcHRfcmVwbGFjZWZpbGUnXSA9ICdVcGxvYWQgdmVydmFuZ2luZ3NiZXN0YW5kJzsKJGxhbmdbJ3RpdGxlX2ZpeHNwYWNlcyddID0gJ1ZlcndpamRlciBzcGF0aWVzIGluIGRlIGJlc3RhbmRzbmFhbSc7CiRsYW5nWydjYXRlZ29yeV9jb3BpZWQnXSA9ICdDYXRlZ29yaWUgc3VjY2Vzdm9sIGdla29waWVlcmQnOwokbGFuZ1snZXJyb3JfZHVwbGljYXRlcGF0aCddID0gJ0Jlbm9lbSBlZW4gZGlyZWN0b3J5IG5hYW0gZGllIGFuZGVycyBpcyBhbHMgZGllIHZhbiBkZSBicm9uIGVuIG5vZyBuaWV0IGluIGdlYnJ1aWsgaXMnOwokbGFuZ1snb3BlcmF0aW9uX2NhbmNlbGxlZCddID0gJ0Jld2Vya2luZyBnZWFubnVsZWVyZCc7CiRsYW5nWydzb3VyY2UnXSA9ICdCcm9uJzsKJGxhbmdbJ2Rlc3RpbmF0aW9uJ10gPSAnQmVzdGVtbWluZyc7CiRsYW5nWydwcm9tcHRfY29weV9maWxlcyddID0gJ0tvcGllZXIgY2F0ZWdvcmllIGJlc3RhbmRlbic7CiRsYW5nWydpbmZvX2NvcHlfZmlsZXMnXSA9ICdLb3BpZWVyIGRlIGJlc3RhbmRlbiB2YW4gZGUgYnJvbiBuYWFyIGRlIGJlc3RlbW1pbmdzY2F0ZWdvcmllJzsKJGxhbmdbJ2V4dHJhJ10gPSAnRXh0cmEgJzsKJGxhbmdbJ2NvcHknXSA9ICdLb3BpZWVyJzsKJGxhbmdbJ3NlbGVjdG9uZSddID0gJ0tpZXMgJmVhY3V0ZTsmZWFjdXRlO24nOwokbGFuZ1snYXV0b3dhdGVybWFyayddID0gJ1BsYWF0cyBhdXRvbWF0aXNjaCBlZW4gd2F0ZXJtZXJrIG9wIGRlIGFmYmVlbGRpbmdlbic7CiRsYW5nWydpbWFnZV9zZXR0aW5ncyddID0gJ0FmYmVlbGRpbmcgSW5zdGVsbGluZ2VuJzsKJGxhbmdbJ3Byb21wdF9nZXRmaWxlX3Jlc3VsdHBhZ2UnXSA9ICdQYWdpbmEgZGllIGdlYnJ1aWt0IHdvcmR0IHZvb3IgaGV0IG1lbGRlbiB2YW4gZm91dGVuIGVuIGFuZGVyZSBib29kc2NoYXBwZW4gbWV0IGJldHJla2tpbmcgdG90IGhldCBkb3dubG9hZGVuJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRfa2V5J10gPSAnRGUgaW5nZXZvZXJkZSB1cGxvYWQgc2xldXRlbCBpcyBuaWV0IGNvcnJlY3QgKG1pc3NjaGllbiBkZSBtYXhpbWFsZSBkb3dubG9hZCBjYXBhY2l0ZWl0IGJlcmVpa3Qgb2YgaXMgaGV0IHZlcmxvcGVuKSc7CiRsYW5nWydkZmx0X3RpbWVsaW1pdGVkX3N1YmplY3QnXSA9ICd7JHNpdGVuYW1lfSAtIFUgaGVlZnQgdm9vciBlZW4gZ2VsaW1pdGVlcmRlIHBlcmlvZGUgZGUgdG9lc3RlbW1pbmcgZ2VrcmVnZW4gdG90IHskZW50cnktPnVwbG9hZF9uYW1lfHN0cmlwX3RhZ3N9JzsKJGxhbmdbJ3Byb21wdF90aW1lbGltaXRlZF9zdWJqZWN0J10gPSAnT25kZXJ3ZXJwIHZhbiBkZSBlLW1haWwgd2FubmVlciBlZW4gdGlqZGdlbGltaXRlZXJkZSBVUkwgd29yZHQgdmVyc3R1dXJkJzsKJGxhbmdbJ3Byb21wdF90aW1lbGltaXRlZF9hdXRvZGVsZXRlJ10gPSAnVmVyd2lqZGVyIGF1dG9tYXRpc2NoIHZlcmxvcGVuIHZlcnpvZWtlbiBuYSBOIHV1ciA8ZW0+KG1hYWsgMCBvbSBkZXplIGZ1bmN0aWUgdWl0IHRlIHNjaGFrZWxlbik8L2VtPjonOwokbGFuZ1sncHJvbXB0X3RpbWVsaW1pdGVkX3NlbmRpdCddID0gJ1ZlcnN0dXVyIGRlemUgdXJsIG5hYXIgaGV0IGUtbWFpbCBhZHJlcz8nOwokbGFuZ1sndXJsX2tleSddID0gJ1VSTCBTbGV1dGVsJzsKJGxhbmdbJ2NyZWF0ZWQnXSA9ICdHZW1hYWt0JzsKJGxhbmdbJ2V4cGlyZXMnXSA9ICdWZXJsb29wdCc7CiRsYW5nWydhZGRlZGl0X3RpbWVsaW1pdGVkX2tleSddID0gJ1RvZXZvZWdlbi9XaWp6aWdlbiBUaWpkZ2VsaW1pdGVlcmRlIHNsZXV0ZWwnOwokbGFuZ1sndGltZV9saW1pdGVkX2tleV9hZGRlZCddID0gJ1RpamRnZWxpbWl0ZWVyZGUgc2xldXRlbCBUb2VnZXZvZWdkJzsKJGxhbmdbJ251bV9ob3VycyddID0gJ0FhbnRhbCB1cmVuJzsKJGxhbmdbJ251bV9kb3dubG9hZHMnXSA9ICdIb2V2ZWVsaGVpZCBEb3dubG9hZHMnOwokbGFuZ1snZW1haWxfYWRkcmVzcyddID0gJ0UtbWFpbCBBZHJlcyc7CiRsYW5nWydlcnJvcl9taXNzaW5nX2ludmFsaWQnXSA9ICdFZW4gYmVub2RpZ2RlIHdhYXJkZSBpcyBuaWV0IGNvcnJlY3Qgb2YgYWZ3ZXppZzogJXMnOwokbGFuZ1snYWRkX3RpbWVsaW1pdGVkX2tleSddID0gJ1RpamRnZWxpbWl0ZWVyZGUgc2xldXRlbCBUb2V2b2VnZW4nOwokbGFuZ1snZmlsZV9pbmZvMiddID0gJ0Jlc3RhbmQgJXMgKGlkPSVkKSc7CiRsYW5nWydpbmZvX3RpbWVsaW1pdGVkX2Rvd25sb2FkcyddID0gJ0Jlbm9lbSBoZXQgc3RhbmRhYXJkIGFhbnRhbCBrZXJlbiBkYXQgZWVuIGJlc3RhbmQgZ2Vkb3dubG9hZCBrYW4gd29yZGVuIG1ldCBlZW4gYmVwYWFsZGUgc2xldXRlbCc7CiRsYW5nWydwcm9tcHRfdGltZWxpbWl0ZWRfZG93bmxvYWRzJ10gPSAnU3RhbmRhYXJkIEhvZXZlZWxoZWlkIERvd25sb2Fkcyc7CiRsYW5nWydpbmZvX3RpbWVsaW1pdGVkX2hvdXJzJ10gPSAnQmVub2VtIGhldCBzdGFuZGFhcmQgYWFudGFsIHVyZW4gZGF0IGRlIFRpamRnZWxpbWl0ZWVyZGUgc2xldXRlbCBnZWxkaWcgYmxpamZ0LiBCZW5vZW0gMCB2b29yIG9uZ2VsaW1pdGVlcmQnOwokbGFuZ1sncHJvbXB0X3RpbWVsaW1pdGVkX2hvdXJzJ10gPSAnQWFudGFsIHVyZW4gZGF0IGRlIFRpamRnZWxpbWl0ZWVyZGUgU2xldXRlbCBnZWxkaWcgaXMnOwokbGFuZ1sndGltZWxpbWl0ZWRfdXJsX3NldHRpbmdzJ10gPSAnSW5zdGVsbGluZ2VuIFRpamRnZWxpbWl0ZWVyZGUgc2xldXRlbCc7CiRsYW5nWydtYW5hZ2VfdGltZWxpbWl0ZWQnXSA9ICdCZWhlZXIgVGlqZGdlbGltaXRlZXJkZSBUb2VnYW5nJzsKJGxhbmdbJ3VwbG9hZGluZ19zZXR0aW5ncyddID0gJ0Jlc3RhbmQgVXBsb2FkIEluc3RlbGxpbmdlbic7CiRsYW5nWydnZW5lcmFsX3NldHRpbmdzJ10gPSAnQWxnZW1lbmUgaW5zdGVsbGluZ2VuJzsKJGxhbmdbJ3RodW1ibmFpbF9zZXR0aW5ncyddID0gJ01pbmlhdHV1ciBhYW5tYWFrJzsKJGxhbmdbJ3RpdGxlX3JlZGlyZWN0X29uX3NlbmRmaWxlJ10gPSAnUGFnaW5hIG9tIHRlIHRvbmVuIG5hIGhldCB2ZXJ6ZW5kZW4gdmFuIGVlbiBiZXN0YW5kJzsKJGxhbmdbJ2xibF9iYWNrJ10gPSAnVGVydWcnOwokbGFuZ1snbGJsX3RlbXBsYXRlcyddID0gJ1dpanppZyBTamFibG9uZW4nOwokbGFuZ1sncHJvbXB0X3B1YmxpY19maWVsZCddID0gJ1ZlbGQgaXMgb3BlbmJhYXIgPGVtPihLYW4gZG9vciB3ZWJzaXRlIGJlem9la2VycyB3b3JkZW4gZ2V6aWVuKTwvZW0+JzsKJGxhbmdbJ3VwbG9hZF9lZGl0ZWQnXSA9ICdCZXN0YW5kIERldGFpbHMgR2V3aWp6aWdkIG9wICVzJzsKJGxhbmdbJ2luZm9fdGh1bWJuYWlsJ10gPSAnRWVuIG9wdGlvbmVlbCBtaW5pYXR1dXItYmVzdGFuZCc7CiRsYW5nWyd1cGxvYWRfZmlsZSddID0gJ1VwbG9hZCBlZW4gbmlldXcgYmVzdGFuZCc7CiRsYW5nWydtc2dfZmllbGRfZGVsZXRlZCddID0gJ1ZlbGQgdmVyd2lqZGVyZCc7CiRsYW5nWydhc2tfZGVsZXRlX2ZpZWxkJ10gPSAnV2VldCB1IHpla2VyIGRhdCB1IGRpdCB2ZWxkIGVuIGFsbGUgZ2Vhc3NvY2llZXJkZSBkYXRhIHdpbHQgdmVyd2lqZGVyZW4/JzsKJGxhbmdbJ3llcyddID0gJ0phJzsKJGxhbmdbJ25vJ10gPSAnTmVlJzsKJGxhbmdbJ3R5cGUnXSA9ICdUeXBlICc7CiRsYW5nWydmaWVsZHR5cGVfbXVsdGlzZWxlY3QnXSA9ICdNZWVya2V1emUgTGlqc3QnOwokbGFuZ1snZmllbGR0eXBlX2Ryb3Bkb3duJ10gPSAnRHJvcGRvd24gTGlqc3QnOwokbGFuZ1snZmllbGR0eXBlX2NoZWNrYm94J10gPSAnVmlua3Zha2plJzsKJGxhbmdbJ2ZpZWxkdHlwZV90ZXh0YXJlYSddID0gJ1Rla3N0IHJ1aW10ZSc7CiRsYW5nWydmaWVsZHR5cGVfdGV4dGlucHV0J10gPSAnVGVrc3QgSW5wdXQnOwokbGFuZ1sncHJvbXB0X3VzZV93eXNpd3lnJ10gPSAnR2VicnVpayB3eXNpd3lnIHZvb3IgaGV0IHdpanppZ2VuIHZhbiBkZSBpbmhvdWQgdmFuIGRpdCB2ZWxkJzsKJGxhbmdbJ3Byb21wdF9kZWZhdWx0X2NvbnRlbnQnXSA9ICdTdGFuZGFhcmQgaW5ob3VkIHZvb3IgZGUgdGVrc3RydWltdGUnOwokbGFuZ1sncHJvbXB0X2Ryb3Bkb3duX29wdGlvbnMnXSA9ICdPcHRpZXMgKCZlYWN1dGU7JmVhY3V0ZTtuIHBlciByZWdlbCknOwokbGFuZ1sncHJvbXB0X2ZpZWxkX21heGxlbmd0aCddID0gJ1ZlbGQgTWF4aW11bSBMZW5ndGUnOwokbGFuZ1sncHJvbXB0X2ZpZWxkX2xlbmd0aCddID0gJ1ZlbGQgTGVuZ3RlJzsKJGxhbmdbJ3Byb21wdF9maWVsZF90eXBlJ10gPSAnVmVsZCBUeXBlJzsKJGxhbmdbJ3Byb21wdF9maWVsZF9uYW1lJ10gPSAnVmVsZCBOYWFtJzsKJGxhbmdbJ3RpdGxlX2FkZF9maWVsZCddID0gJ1RvZXZvZWdlbiBvZiB3aWp6aWdlbiB2YW4gZWVuIFZlbGQgRGVmaW5pdGllJzsKJGxhbmdbJ2ZpZWxkX2RlZmluaXRpb25zJ10gPSAnVmVsZCBEZWZpbml0aWVzJzsKJGxhbmdbJ3Byb21wdF9hZGRfZmllbGQnXSA9ICdWZWxkIERlZmluaXRpZXMgVG9ldm9lZ2VuJzsKJGxhbmdbJ3BhcmFtX2FjdGlvbiddID0gJ1NwZWNpZmllcyB0aGUgYmVoYXZpb3VyIG9mIHRoZSBtb2R1bGUgdGFnLiAgUG9zc2libGUgdmFsdWVzIGFyZTogZGVmYXVsdCAtICh0aGUgZGVmYWZhdWx0IGJlaGF2aW9yKSwgZGV0YWlsIC0gdG8gZGlzcGxheSBhIGRldGFpbCB2aWV3IG9mIGEgc2luZ2xlIGZpbGUgYmFzZWQgb24gdGhlIHVwbG9hZF9pZCwgYW5kIHlvdXNlbmRpdCAtIHRvIGRpc3BsYXkgYSBmb3JtIHRvIGFsbG93IHVwbG9hZGluZyBhIGZpbGUsIGFuZCBzZW5kaW5nIGl0IHRvIG51bWVyb3VzIGFkZHJlc3NlcyBpbiBvbmUgc3RlcCAnOwokbGFuZ1sncGFyYW1fc2VuZGZpbGVwYWdlJ10gPSAnQmVub2VtIGVlbiBwYWdpbmEgSUQgb2YgZWVuIGFsaWFzIGRhdCBnZWJydWlrdCBtb2V0IHdvcmRlbiBvbSBoZXQgYmVzdGFuZHNmb3JtdWxpZXIgdGUgdmVyemVuZGVuJzsKJGxhbmdbJ2ZpbGVfdXBsb2FkZWQnXSA9ICdCZXN0YW5kIGNvcnJlY3QgZ2UmdXVtbDtwbG9hZCc7CiRsYW5nWyd0byddID0gJ05hYXInOwokbGFuZ1sndGl0bGVfeW91c2VuZGl0Zm9ybV90ZW1wbGF0ZSddID0gJ1RvZXZvZWdlbiBvZiB3aWp6aWdlbiAmcXVvdDtVIHZlcnN0dXVyZGUgaGV0JnF1b3Q7IEZvcm11bGllciBTamFibG9vbic7CiRsYW5nWyd5b3VzZW5kaXRmb3JtX3RlbXBsYXRlJ10gPSAnJnF1b3Q7VSB2ZXJzdHV1cmRlIGhldCZxdW90OyBGb3JtdWxpZXIgU2phYmxvb24nOwokbGFuZ1sndGl0bGVfeW91c2VuZGl0Zm9ybV9zeXNkZWZhdWx0J10gPSAnU3RhbmRhYXJkICZxdW90O1UgdmVyc3R1dXJkZSBoZXQmcXVvdDsgc2phYmxvb24nOwokbGFuZ1snbXNnX2ZpbGVfc2VudCddID0gJ0VyIGlzIGVlbiBiZXJpY2h0IGdlc3R1dXJkIG5hYXIgZGUgZ2VzZWxlY3RlZXJkZSBhZHJlc3NlbiBkYXQgaW5mb3JtYXRpZSBiZXZhdCBvdmVyIGhldCBiZXN0YW5kIGVuIGhvZSB1IGhldCBrdW50IG9udHZhbmdlbi4nOwokbGFuZ1snZXJyb3Jfbm9hZGRyZXNzZXMnXSA9ICdVIG1vZXQgbWluaW1hYWwgJmVhY3V0ZTsmZWFjdXRlO24gZG9lbCBhZHJlcyBpbnZ1bGxlbic7CiRsYW5nWydlcnJvcl9ub3N1YmplY3QnXSA9ICdVIG1vZXQgZWVuIG9uZGVyd2VycCBpbnZ1bGxlbic7CiRsYW5nWydzdWJqZWN0J10gPSAnT25kZXJ3ZXJwJzsKJGxhbmdbJ3RpdGxlX3NlbmRmaWxlcGFnZSddID0gJ1BhZ2luYSB2b29yIGhldCAmcXVvdDtWZXJzdHV1ciBlZW4gYmVzdGFuZCZxdW90OyBGb3JtdWxpZXInOwokbGFuZ1snZmlsZV9pbmZvJ10gPSAnQmVzdGFuZHNpbmZvJzsKJGxhbmdbJ3NlbmQnXSA9ICdWZXJzdHV1cic7CiRsYW5nWydub3RlcyddID0gJ09wbWVya2luZ2VuJzsKJGxhbmdbJ2FkZHJlc3NlZXMnXSA9ICdWZXJzdHV1ciBpbmZvcm1hdGllIG92ZXIgZGl0IGJlc3RhbmQgbmFhcic7CiRsYW5nWydwcm9tcHRfc2VuZGZpbGVfZW1haWxfdGVtcGxhdGUnXSA9ICcmcXVvdDtWZXJzdHV1ciBlZW4gYmVzdGFuZCZxdW90OyBFLW1haWwgU2phYmxvb24nOwokbGFuZ1sndGl0bGVfc2VuZGZpbGVmb3JtX3RlbXBsYXRlJ10gPSAnVG9ldm9lZ2VuIG9mIHdpanppZ2VuICZxdW90O1ZlcnN0dXVyIGVlbiBiZXN0YW5kJnF1b3Q7IEZvcm11bGllciBTamFibG9vbic7CiRsYW5nWydzZW5kZmlsZWZvcm1fdGVtcGxhdGUnXSA9ICcmcXVvdDtWZXJzdHV1ciBlZW4gYmVzdGFuZCZxdW90OyBGb3JtdWxpZXIgU2phYmxvb24nOwokbGFuZ1sncHJvbXB0X25vdGlmeV9lbWFpbF90ZW1wbGF0ZSddID0gJ0Jlc3RhbmQgdXBsb2FkIG5vdGlmaWNhdGllIGUtbWFpbCBzamFibG9vbic7CiRsYW5nWyd0aXRsZV9zZW5kZmlsZWZvcm1fc3lzZGVmYXVsdCddID0gJ1N0YW5kYWFyZCAmcXVvdDtWZXJzdHV1ciBlZW4gYmVzdGFuZCZxdW90OyBGb3JtdWxpZXIgU2phYmxvb24nOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5ZGVsZXRhYmxlJ10gPSAnQmVzdGFuZGVuIGluIGRlemUgY2F0ZWdvcmllIGt1bm5lbiB3b3JkZW4gdmVyd2lqZGVyZCc7CiRsYW5nWyd0aXRsZV9hbGxvd19kZWxldGUnXSA9ICdTdGEgaGV0IHZlcndpamRlcmVuIHZhbiBiZXN0YW5kZW4gYWFuIGhldCBmcm9udGVuZCB0b2UnOwokbGFuZ1snZGVmYXVsdF90ZW1wbGF0ZXMnXSA9ICdTdGFuZGFhcmQgU2phYmxvbmVuJzsKJGxhbmdbJ2ZpcnN0cGFnZSddID0gJ0VlcnN0ZSBwYWdpbmEnOwokbGFuZ1sncHJldnBhZ2UnXSA9ICdMYWF0c3RlIHBhZ2luYSc7CiRsYW5nWyduZXh0cGFnZSddID0gJ1ZvbGdlbmRlIHBhZ2luYSc7CiRsYW5nWydsYXN0cGFnZSddID0gJ1ZvcmlnZSBwYWdpbmEnOwokbGFuZ1snZmlyc3RwYWdlX2Fycm93J10gPSAnPDwgJzsKJGxhbmdbJ3ByZXZwYWdlX2Fycm93J10gPSAnPCAnOwokbGFuZ1snbmV4dHBhZ2VfYXJyb3cnXSA9ICc+ICc7CiRsYW5nWydsYXN0cGFnZV9hcnJvdyddID0gJz4+ICc7CiRsYW5nWydwYWdlJ10gPSAnUGFnaW5hJzsKJGxhbmdbJ29mJ10gPSAndmFuJzsKJGxhbmdbJ3Byb21wdF9ncm91cGxpc3QnXSA9ICdHZWF1dG9yaXNlZXJkZSBGRVVzZXJzLWdyb2VwZW4nOwokbGFuZ1snaW5mb19ncm91cGxpc3QnXSA9ICdTZWxlY3RlZXIgZWVuIEZFVS1ncm9lcCBkaWUgdG9lZ2FuZyBtYWcgaGViYmVuIHRvdCBiZXN0YW5kZW4gaW4gZGV6ZSBjYXRlZ29yaWUuICc7CiRsYW5nWyd0aXRsZV9zY2FuJ10gPSAnWm9layBuYWFyIG5pZXV3ZSBiZXN0YW5kZW4gaW4gZGV6ZSBjYXRlZ29yaWUnOwokbGFuZ1sndGl0bGVfY3JlYXRlX3RodW1ibmFpbHMnXSA9ICdDcmUmZXVtbDtlciBvbnRicmVrZW5kZSBtaW5pYXR1cmVuIGluIGRlemUgY2F0ZWdvcmllJzsKJGxhbmdbJ2NyZWF0ZV90aHVtYm5haWxzJ10gPSAnQ3JlJmV1bWw7ZXIgbWluaWF0dXJlbic7CiRsYW5nWyd0aXRsZV9jcmVhdGVfdGh1bWJuYWlsJ10gPSAnTWFhayBkZSBtaW5pYXR1dXIgdm9vciBkaXQgYmVzdGFuZCAob3BuaWV1dykgYWFuJzsKJGxhbmdbJ2NyZWF0ZV90aHVtYm5haWwnXSA9ICdDcmUmZXVtbDtlciBtaW5pYXR1dXInOwokbGFuZ1snZXJyb3JfcGF0aGVycm9yJ10gPSAnS2FuIGRlIG1hcCBuaWV0IG9wZW5lbiAocmVjaHRlbnByb2JsZWVtPyknOwokbGFuZ1sndGl0bGVfZG93bmxvYWRfY2h1bmtzaXplJ10gPSAnR3Jvb3R0ZSB2YW4gaWVkZXIgZG93bmxvYWRkZWVsJzsKJGxhbmdbJ2luZm9fZG93bmxvYWRfY2h1bmtzaXplJ10gPSAnSW5zdGVsbGVuIHZhbiBkZXplIHBhcmFtZXRlciBoZWVmdCBpbnZsb2VkIG9wIGRlIGRvd25sb2FkIHNuZWxoZWlkIGVuIGthbiB2b29yZGVlbCBoZWJiZW4gaW4gb21nZXZpbmdlbiBtZXQgd2VpbmlnIGdlaGV1Z2VuJzsKJGxhbmdbJ3dhcm5pbmdfc2FmZV9tb2RlJ10gPSAnUEhQJiMwMzk7cyB2ZWlsaWdlIG1vZHVzIChzYWZlIG1vZGUpIGlzIGluZ2VzY2hha2VsZC4gRGl0IGthbiBwcm9ibGVtZW4gbWV0IGhldCB1cGxvYWRlbiB2YW4gYmVzdGFuZGVuIHZlcm9vcnpha2VuIChyZWNodGVuKSBlbiBrYW4gb29rIGRlIG1vZ2VsaWprIHZhbiBkZSBtb2R1bGUgdmVyc3RvcmVuIG9tIGJlc3RhbmRlbiB0ZSB2ZXJ6ZW5kZW4gZG9vciBkZSBiZXBlcmtpbmcgZW5rZWxlIGluc3RlbGxpbmdlbiB0ZSBvdmVyc2NocmlqdmVuLiBOZWVtIGNvbnRhY3Qgb3AgbWV0IHV3IGhvc3RpbmcgcHJvdmlkZXIgb3ZlciBoZXQgdWl0c2NoYWtlbGVuIHZhbiBkZSB2ZWlsaWdlIG1vZHVzLic7CiRsYW5nWydwYXJhbV9kZXRhaWxwYWdlJ10gPSAnTnV0dGlnIG9tIGVlbiBnZWRldGFpbGxlZXJkIHJhcHBvcnQgdGUgdG9uZW4gbWV0IGVlbiBhbmRlciBwYWdpbmEgc2phYmxvb24uIERlemUgcGFyYW1ldGVyIGdlYnJ1aWt0IGRlIHBhZ2luYS1pZCBvZiBwYWdpbmEtYWxpYXMgdmFuIGVlbiBwYWdpbmEgZGllIGJlbnV0IGRpZW50IHRlIHdvcmRlbiBvbSBoZXQgZGV0YWlsIHJhcHBvcnQgdGUgdG9uZW4uJzsKJGxhbmdbJ3BhcmFtX3ByZWZpeCddID0gJ0VlbiBib29sZWFuIGRpZSBhYW5nZWVmdCBvZiBiZXN0YW5kc25hbWVuIGVlbiBwcmVmaXggbW9ldGVuIGhlYmJlbic7CiRsYW5nWydwYXJhbV9wcmVmaXhfZmV1J10gPSAnRWVuIGJvb2xlYW4gcGFyYW1ldGVyIGRpZSBhYW5nZWVmdCBkYXQgZGUgcHJlZml4IHZhbiBkZSBodWlkaWdlIGF1dGV1ciBnZWJydWlrdCBtb2V0IHdvcmRlbiBvZiwgYWxzIGRlemUgbmlldCBvcGdlZ2V2ZW4gaXMsIGRlIHByZWZpeCB2YW4gZGUgaHVpZGlnZSB0aWpkIChpbiBkZWNoZXggZm9ybWFhdCknOwokbGFuZ1sncGFyYW1fbm9jYXB0Y2hhJ10gPSAnU2NoYWtlbCBjYXB0Y2hhLW9uZGVyc3RldW5pbmcgaW4gaGV0IHVwbG9hZC1mb3JtdWxpZXIgdWl0IChzdGFuZGFhcmQgYWFuKSc7CiRsYW5nWyd0aXRsZV91cGxvYWRmb3JtX3RlbXBsYXRlJ10gPSAnQmV3ZXJrIGhldCBVcGxvYWQgRm9ybXVsaWVyIFNqYWJsb29uJzsKJGxhbmdbJ2NhcHRjaGFfdGl0bGUnXSA9ICdWb2VyIGRlIHRla3N0IHVpdCBoZXQgcGxhYXRqZSBpbic7CiRsYW5nWydlcnJvcl9jYXB0Y2hhbWlzbWF0Y2gnXSA9ICdJbmdldm9lcmRlIHRla3N0IGtvbXQgbmlldCBvdmVyZWVuIG1ldCBkaWUgaW4gaGV0IHBsYWF0amUnOwokbGFuZ1sndGl0bGVfYXV0b3RodW1ibmFpbF9leHRlbnNpb25zJ10gPSAnQ3JlJmV1bWw7ZXIgbWluaWF0dXJlbiB2b29yIGJlc3RhbmRlbiBtZXQgZGV6ZSBleHRlbnNpZXMnOwokbGFuZ1sndGl0bGVfYXV0b3RodW1ibmFpbF9zaXplJ10gPSAnTWF4aW1hbGUgZ3Jvb3R0ZSAocGl4ZWxzKSB2YW4gZGUgZ2VnZW5lcmVlcmRlIHRodW1ibmFpbHMnOwokbGFuZ1sncHJvbXB0X3VwbG9hZF9pY29uJ10gPSAnVXBsb2FkIGVlbiBpY29vbic7CiRsYW5nWydpbmZvX3N5c2RlZmF1bHQnXSA9ICdEZXplIHRla3N0IHdvcmR0IGdlYnJ1aWt0IGJpaiBoZXQgY3JlJmV1bWw7cmVuIHZhbiBlZW4gbmlldXcgc2phYmxvb24gdmFuIGRpdCB0eXBlJzsKJGxhbmdbJ3RpdGxlX2RldGFpbHJwdF9zeXNkZWZhdWx0J10gPSAnU3lzdGVlbXN0YW5kYWFyZCBkZXRhaWxyYXBwb3J0c2phYmxvb24nOwokbGFuZ1sndGl0bGVfc3VtbWFyeXJwdF9zeXNkZWZhdWx0J10gPSAnU3lzdGVlbXN0YW5kYWFyZCBvbXNjaHJpanZpbmdzc2phYmxvb24nOwokbGFuZ1sndGl0bGVfdXBsb2FkZm9ybV9zeXNkZWZhdWx0J10gPSAnU3lzdGVlbXN0YW5kYWFyZCB1cGxvYWQtZm9ybXVsaWVyc2phYmxvb24nOwokbGFuZ1sndGVtcGxhdGUnXSA9ICdTamFibG9vbic7CiRsYW5nWydyZXNldHRvZGVmYXVsdCddID0gJ0hlcnN0ZWwgbmFhciBzdGFuZGFhcmQnOwokbGFuZ1sndGl0bGVfc3VtbWFyeXJwdF90ZW1wbGF0ZSddID0gJ09tc2NocmlqdmluZ3NzamFibG9vbic7CiRsYW5nWyd0aXRsZV9kZXRhaWxycHRfdGVtcGxhdGUnXSA9ICdEZXRhaWxyYXBwb3J0c2phYmxvb24nOwokbGFuZ1sncHJvbXB0X25hbWUnXSA9ICdOYWFtJzsKJGxhbmdbJ3Byb21wdF9kZWZhdWx0J10gPSAnU3RhbmRhYXJkJzsKJGxhbmdbJ2xlZ2VuZF91cGxvYWRmb3JtJ10gPSAnVXBsb2FkIGVlbiBiZXN0YW5kJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdwYXJhbSddID0gJ0VlbiB2ZXJwbGljaHRlIHBhcmFtZXRlciBvbnRicmVla3QnOwokbGFuZ1snZXJyb3JfbWlzc2luZ25hbWUnXSA9ICdFZW4gbmFhbSB2YW4gaGV0IGJlc3RhbmRzdHlwZSBtb2V0IHdvcmRlbiBvcGdlZ2V2ZW4nOwokbGFuZ1snZXJyb3JfbWlzc2luZ2V4dGVuc2lvbnMnXSA9ICdUZW5taW5zdGUgJmVhY3V0ZTsmZWFjdXRlO24gYmVzdGFuZHNleHRlbnNpZSBtb2V0IHdvcmRlbiBvcGdlZ2V2ZW4nOwokbGFuZ1snZXJyb3JfbWlzc2luZ2ljb24nXSA9ICdFZW4gaWNvb24gbW9ldCB3b3JkZW4gb3BnZWdldmVuJzsKJGxhbmdbJ2Vycm9yX25vc3VjaHJvdyddID0gJ0RlIG9wZ2VnZXZlbiByaWoga29uIG5pZXQgd29yZGVuIGdldm9uZGVuJzsKJGxhbmdbJ25hbWVfdW5rbm93biddID0gJ09uYmVrZW5kJzsKJGxhbmdbJ2Rlc2NyaXB0aW9uX3Vua25vd24nXSA9ICdCZXN0YW5kc3R5cGViZXNjaHJpanZpbmcgdm9vciBuaWV0LW92ZXJlZW5rb21lbmRlIGJlc3RhbmRlbic7CiRsYW5nWydpbWFnZSddID0gJ1BsYWF0amUnOwokbGFuZ1snaWNvbiddID0gJ0ljb29uJzsKJGxhbmdbJ2V4dGVuc2lvbnMnXSA9ICdCZXN0YW5kc2V4dGVuc2llcyc7CiRsYW5nWydhZGRmaWxldHlwZSddID0gJ1ZvZWcgbmlldXcgYmVzdGFuZHN0eXBlIHRvZSc7CiRsYW5nWydmaWxlX3R5cGVzJ10gPSAnQmVzdGFuZHN0eXBlcyc7CiRsYW5nWydlcnJvcl9ub2NhdGVnb3J5aWQnXSA9ICdFciBpcyBnZWVuIGNhdGVnb3JpZS1pZCBvcGdlZ2V2ZW4nOwokbGFuZ1snZXJyb3Jfbm9jYXRlZ29yeSddID0gJ0VyIGlzIGdlZW4gY2F0ZWdvcmllLWlkIG9wZ2VnZXZlbic7CiRsYW5nWydlcnJvcl90ZW1wbGF0ZW5hbWVleGlzdHMnXSA9ICdFciBiZXN0YWF0IGFsIGVlbiBzamFibG9vbiBtZXQgZGV6ZSBuYWFtJzsKJGxhbmdbJ3Byb21wdF90ZW1wbGF0ZW5hbWUnXSA9ICdTamFibG9vbm5hYW0nOwokbGFuZ1sncHJvbXB0X3RlbXBsYXRlJ10gPSAnU2phYmxvb24nOwokbGFuZ1sncHJvbXB0X25ld3RlbXBsYXRlJ10gPSAnTWFhayBlZW4gbmlldXcgc2phYmxvb24nOwokbGFuZ1snaGVscF9PbkRvd25sb2FkJ10gPSAnPHA+R2VnZW5lcmVlcmRlIGdlYmV1cnRlbmlzIG5hZGF0IGVlbiBnZWJydWlrZXIga2xhYXIgaXMgbWV0IGRvd25sb2FkZW4gdmFuIGVlbiBiZXN0YW5kPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5pZDwvZW0+IC0gVXBsb2FkLWlkPC9saT4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gQmVzdGFuZHNuYWFtPC9saT4NCjxsaT48ZW0+aXA8L2VtPiAtIElQLWFkcmVzIHZhbiBkZSBkb3dubG9hZGVyPC9saT4NCjwvdWw+DQonOwokbGFuZ1snaGVscF9PbkRlbGV0ZUNhdGVnb3J5J10gPSAnPHA+R2VnZW5lcmVlcmRlIGdlYmV1cnRlbmlzIGFscyBlZW4gY2F0ZWdvcmllIGlzIHZlcndpamRlcmQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIENhdGVnb3JpZW5hYW08L2xpPg0KPGxpPjxlbT5wYXRoPC9lbT4gLSBDYXRlZ29yaWVwYWQ8L2xpPg0KPC91bD4NCic7CiRsYW5nWydoZWxwX09uQ3JlYXRlQ2F0ZWdvcnknXSA9ICc8cD5HZWdlbmVyZWVyZGUgZ2ViZXVydGVuaXMgYWxzIGVlbiBjYXRlZ29yaWUgaXMgYWFuZ2VtYWFrdDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gQ2F0ZWdvcmllbmFhbTwvbGk+DQo8bGk+PGVtPmRlc2NyaXB0aW9uPC9lbT4gLSBDYXRlZ29yaWViZXNjaHJpanZpbmc8L2xpPg0KPGxpPjxlbT5wYXRoPC9lbT4gLSBDYXRlZ29yaWVwYWQ8L2xpPg0KPGxpPjxlbT5wYXRoPC9lbT4gLSBWbGFnIGRpZSBhYW5nZWVmdCBvZiBkZSBjYXRlZ29yaWUgaW4gZWVuIGxpanN0IGthbiB3b3JkZW4gb3BnZW5vbWVuPC9saT4NCjwvdWw+DQonOwokbGFuZ1snaGVscF9PblJlbW92ZSddID0gJzxwPkdlZ2VuZXJlZXJkZSBnZWJldXJ0ZW5pcyBhbHMgZWVuIGJlc3RhbmQgdmVyd2lqZGVyZCBpcyB2aWEgZGUgYmVoZWVyLSBvZiBkZSBmcm9udGVuZC1pbnRlcmZhY2U8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIE5hYW0gdmFuIGhldCB2ZXJ3aWpkZXJkZSBiZXN0YW5kPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIElEIHZhbiBoZXQgdmVyd2lqZGVyZGUgYmVzdGFuZDwvbGk+DQo8bGk+PGVtPmNhdGVnb3J5X2lkPC9lbT4gLSBJRCB2YW4gZGUgY2F0ZWdvcmllPC9saT4NCjwvdWw+DQonOwokbGFuZ1snaGVscF9PblVwbG9hZCddID0gJzxwPkdlZ2VuZXJlZXJkZSBnZWJldXJ0ZW5pcyBhbHMgZWVuIG5pZXV3IGJlc3RhbmQgaXMgZ2V1cGxvYWQgdmlhIGRlIGJlaGVlci0gb2YgZnJvbnRlbmQtaW50ZXJmYWNlPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5jYXRlZ29yeTwvZW0+IC0gRGUgY2F0ZWdvcmllbmFhbTwvbGk+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIE5hYW0gdmFuIGhldCBnZSZ1dW1sO3Bsb2FkZSBiZXN0YW5kPC9saT4NCjxsaT48ZW0+c2l6ZTwvZW0+IC0gR3Jvb3R0ZSB2YW4gaGV0IGdlJnV1bWw7cGxvYWRlIGJlc3RhbmQ8L2xpPg0KPGxpPjxlbT5zdW1tYXJ5PC9lbT4gLSBLb3J0ZSBiZXNjaHJpanZpbmcgdmFuIGhldCBnZSZ1dW1sO3Bsb2FkZSBiZXN0YW5kIChvcHRpb25lZWwpPC9lbT48L2xpPg0KPGxpPjxlbT5kZXNjcmlwdGlvbjwvZW0+IC0gTGFuZ2UgYmVzY2hyaWp2aW5nIHZhbiBoZXQgZ2UmdXVtbDtwbG9hZGUgYmVzdGFuZCAob3B0aW9uZWVsKTwvZW0+PC9saT4NCjxsaT48ZW0+YXV0aG9yPC9lbT4gLSBBdXRldXIgdmFuIGhldCBnZSZ1dW1sO3Bsb2FkZSBiZXN0YW5kIChpbmRpZW4gYmVzY2hpa2JhYXIpPC9lbT48L2xpPg0KPGxpPjxlbT5pcF9hZGRyZXNzPC9lbT4gLSBJUC1hZHJlcyB2YW4gZGUgY2xpZW50IGRpZSBoZXQgYmVzdGFuZCB1cGxvYWRlPC9saT4NCjwvdWw+DQonOwokbGFuZ1snaW5mb19ldmVudF9vbmRlbGV0ZWNhdGVnb3J5J10gPSAnRWVuIHRhZyBkaWUgd29yZHQgYWFuZ2Vyb2VwZW4gYWxzIGVlbiBjYXRlZ29yaWUgaXMgdmVyd2lqZGVyZCc7CiRsYW5nWydpbmZvX2V2ZW50X29uY3JlYXRlY2F0ZWdvcnknXSA9ICdFZW4gdGFnIGRpZSB3b3JkdCBhYW5nZXJvZXBlbiBhbHMgZWVuIGNhdGVnb3JpZSBpcyBhYW5nZW1hYWt0JzsKJGxhbmdbJ2luZm9fZXZlbnRfb25kb3dubG9hZCddID0gJ0VlbiB0YWcgZGllIHdvcmR0IGFhbmdlcm9lcGVuIGFscyBlZW4gYmVzdGFuZCBpcyBnZWRvd25sb2FkJzsKJGxhbmdbJ2luZm9fZXZlbnRfb251cGxvYWQnXSA9ICdFZW4gdGFnIGRpZSB3b3JkdCBhYW5nZXJvZXBlbiBhbHMgZWVuIGJlc3RhbmQgaXMgZ2UmdXVtbDtwbG9hZCc7CiRsYW5nWydpbmZvX2V2ZW50X29ucmVtb3ZlJ10gPSAnRWVuIHRhZyBkaWUgd29yZHQgYWFuZ2Vyb2VwZW4gYWxzIGVlbiBiZXN0YW5kIGlzIHZlcndpamRlcmQnOwokbGFuZ1sndGl0bGVfdXNlcnRhZ19vbnVwbG9hZCddID0gJ0VlbiB0YWcgZGllIHdvcmR0IGFhbmdlcm9lcGVuIGFscyBkZSB1cGxvYWQgdm9sdG9vaWQgaXMgJzsKJGxhbmdbJ25vbmUnXSA9ICdHZWVuJzsKJGxhbmdbJ21hdGNoZXNmb3VuZCddID0gJ092ZXJlZW5rb21zdGVuIGdldm9uZGVuJzsKJGxhbmdbJ2ZpbHRlciddID0gJ0ZpbHRlciAnOwokbGFuZ1sndGl0bGVfcmVkaXJlY3RvbnVwbG9hZCddID0gJ1ZlcndpanMgbmFhciBwYWdpbmEtaWQvYWxpYXMgYmlqIGdlYnJ1aWtlci11cGxvYWQnOwokbGFuZ1snZGV0YWlscyddID0gJ0RldGFpbHMgJzsKJGxhbmdbJ2NvbmZpcm1fcHJlZmVyZW5jZXMnXSA9ICdXZWV0IHUgemVrZXIgZGF0IGRlIHZvb3JrZXVyZW4gYWFuZ2VwYXN0IG1vZXRlbiB3b3JkZW4/JzsKJGxhbmdbJ2Vycm9yX25vZmlsZXN1cGxvYWRlZCddID0gJ0VyIHppam4gZ2VlbiBiZXN0YW5kZW4gZ2UmdXVtbDtwbG9hZCc7CiRsYW5nWydwcm9tcHRfcmVwbGFjZSddID0gJ1N0YSBvdmVyc2NocmlqdmVuIHRvZSc7CiRsYW5nWydpbmZvX3JlcGxhY2UnXSA9ICdWZXJ2YW5nIGllZGVyIGJlc3RhbmQgbWV0IGRlemVsZmRlIG5hYW0gKHZlcmFuZGVydCBkZSBpZCBuaWV0KSc7CiRsYW5nWydwYXJhbV9ub19pbml0aWFsJ10gPSAnVG9vbiBnZWVuIGluaXRpJmV1bWw7bGUgcmVzdWx0YXRlbiBhbHMgaGV0IGZpbHRlciBhYW4gc3RhYXQnOwokbGFuZ1sncGFyYW1fa2V5J10gPSAnR2VlZiBlZW4gZXh0cmEgbW9kdWxlLXNsZXV0ZWwgb20gZGUgdXBsb2FkcyB2ZXJkZXIgdGUgY2F0ZWdvcmlzZXJlbi4gRGV6ZSBzbGV1dGVsIGthbiBlZW4gZ2Vjb2RlZXJkZSBzdHJpbmcgemlqbiB6b2FsczogJiMwMzk7ZnVzZXJzOnVpZCYjMDM5OywgZXRjLiBEZXplIHBhcmFtZXRlciBpcyBtZWVzdGFsIGFsbGVlbiBub2RpZyBhbHMgZGUgVXBsb2Fkcy1tb2R1bGUgaW4gZWVuIGFuZGVyZSBtb2R1bGUgd29yZHQgb3BnZW5vbWVuLic7CiRsYW5nWydwYXJhbV9ub2F1dGhvciddID0gJ1ZlcmJlcmcgaGV0IGF1dGV1cnN2ZWxkIHVpdCBoZXQgdXBsb2FkLWZvcm11bGllci4gRGV6ZSBwYXJhbWV0ZXIgaXMgYWxsZWVuIGdlbGRpZyBhbHMgbW9kZT0mIzAzOTt1cGxvYWQmIzAzOTsuIEFscyBkZSBGcm9udEVuZFVzZXJzLW1vZHVsZSBhYW53ZXppZyBpcyBlbiBlZW4gZ2VicnVpa2VyIGlzIGluZ2Vsb2dkIGRhbiB6YWwgZWVuIHZlcmJvcmdlbiB2ZWxkIGRlIG5hYW0gYmV2YXR0ZW4gdmFuIGRlIGh1aWRpZ2UsIGluZ2Vsb2dkZSBnZWJydWlrZXInOwokbGFuZ1sncGFyYW1fdXBsb2FkX2lkJ10gPSAndXBsb2FkX2lkPSZxdW90O2lkJnF1b3Q7IC0gc3BlY2lmaWNlZXIgZWVuIGVua2VsIGJlc3RhbmQgdm9vciBkZSB1cmwvbGluayBvZiBlbmtlbGUgbW9kdXMgKGJvdmVuc3RhYW5kKSc7CiRsYW5nWydwYXJhbV9kZXRhaWx0ZW1wbGF0ZSddID0gJ0dlYnJ1aWsgZWVuIHNqYWJsb29uIG1ldCBkZXplIG5hYW0gdm9vciBoZXQgZ2VkZXRhaWxsZWVyZGUgcmFwcG9ydCc7CiRsYW5nWydwYXJhbV90ZW1wbGF0ZSddID0gJ0dlYnJ1aWsgZWVuIHNqYWJsb29uIG1ldCBkZXplIG5hYW0gdm9vciBkaXQgcmFwcG9ydCBvZiBmb3JtdWxpZXIuIERlemUgbW9kdXMgd29yZHQgZ2VicnVpa3Qgb20gdGUgYmVwYWxlbiB3ZWxrZSB0eXBlIHNqYWJsb29uIHZlcnBsaWNodCBpcyBlbiB2ZXJ2b2xnZW5zIHdvcmR0IGdlem9jaHQgb3AgZWVuIG92ZXJlZW5rb21lbmRlIG5hYW0gYmlubmVuIGRhdCB0eXBlJzsKJGxhbmdbJ3BhcmFtX2ZpbHRlciddID0gJ1Rvb24gaGV0IGZpbHRlcmZvcm11bGllcic7CiRsYW5nWydwYXJhbV9ub19pbnRpdGlhbCddID0gJ0FsbGVlbiB6aW52b2wgYWxzIGRlIGZpbHRlcnBhcmFtZXRlciBvcGdlZ2V2ZW4gaXMgb2Ygc3RhbmRhYXJkIGFhbi4gRGV6ZSBwYXJhbWV0ZXIgZ2VlZnQgYWFuIG9mIGRlIGluaXRpJmV1bWw7bGUgcmVzdWx0YXRlbiB0ZXJ1Z2dlZ2V2ZW4gbW9ldGVuIHdvcmRlbic7CiRsYW5nWydwYXJhbV9maWxldHlwZXMnXSA9ICdUb29uIGFsbGVlbiBiZXN0YW5kZW4gd2FhcnZhbiBoZXQgdHlwZSBvdmVyZWVua29tdCBtZXQgZGV6ZSBrb21tYWdlc2NoZWlkZW5saWpzdCc7CiRsYW5nWydwYXJhbV9zb3J0b3JkZXInXSA9ICcgIDxwPlNvcnRlZXJ2b2xnb3JkZQ0KICA8dWw+DQogIDxsaT48ZW0+ZGF0ZV9hc2M8L2VtPiAtIHNvcnRlZXIgb3Agb3Bsb3BlbmRlIGRhdHVtPC9saT4NCiAgPGxpPjxlbT5kYXRlX2Rlc2M8L2VtPiAtIHNvcnRlZXIgb3AgYWZsb3BlbmRlIGRhdHVtPC9saT4NCiAgPGxpPjxlbT5uYW1lX2FzYzwvZW0+IC0gc29ydGVlciBvcCBvcGxvcGVuZGUgbmFhbTwvbGk+DQogIDxsaT48ZW0+bmFtZV9kZXNjPC9lbT4gLSBzb3J0ZWVyIG9wIGFmbG9wZW5kZSBuYWFtPC9saT4NCiAgPGxpPjxlbT5zaXplX2FzYzwvZW0+IC0gc29ydGVlciBvcCBvcGxvcGVuZGUgZ3Jvb3R0ZTwvbGk+DQogIDxsaT48ZW0+c2l6ZV9kZXNjPC9lbT4gLSBzb3J0ZWVyIG9wIGFmbG9wZW5kZSBncm9vdHRlPC9saT4NCiAgPGxpPjxlbT5kZXNjX2FzYzwvZW0+IC0gc29ydGVlciBvcCBvcGxvcGVuZGUgYmVzY2hyaWp2aW5nPC9saT4NCiAgPGxpPjxlbT5kZXNjX2Rlc2M8L2VtPiAtIHNvcnRlZXIgb3AgYWZsb3BlbmRlIGJlc2NocmlqdmluZzwvbGk+DQogIDxsaT48ZW0+YXV0aG9yX2FzYzwvZW0+IC0gc29ydGVlciBvcCBvcGxvcGVuZGUgYXV0ZXVyPC9saT4NCiAgPGxpPjxlbT5hdXRob3JfZGVzYzwvZW0+IC0gc29ydGVlciBvcCBhZmxvcGVuZGUgYXV0ZXVyPC9saT4NCiAgPGxpPjxlbT5pcF9hc2M8L2VtPiAtIHNvcnRlZXIgb3Agb3Bsb3BlbmQgSVAtYWRyZXM8L2xpPg0KICA8bGk+PGVtPmlwX2Rlc2M8L2VtPiAtIHNvcnRlZXIgb3AgYWZsb3BlbmQgSVBfYWRyZXM8L2xpPg0KICA8bGk+PGVtPnJhbmRvbTwvZW0+IC0gc29ydGVlciBvcCB3aWxsZWtldXJpZ2Ugc29ydGVlcnZvbGdvcmRlPC9saT4NCiAgPC91bD4NCiAgPC9wPic7CiRsYW5nWydwYXJhbV9saXN0aW5ndGVtcGxhdGUnXSA9ICdTamFibG9vbiBuYSBkb29ya2xpa2tlbiB2YW5hZiBkZSBDYXRlZ29yaWVzYW1lbnZhdHRpbmdzIHBhZ2luYSc7CiRsYW5nWydwYXJhbV9saXN0aW5nc29ydG9yZGVyJ10gPSAnU29ydGVlcnZvbGdvcmRlIChhbGEgcGFyYW1fc29ydG9yZGVyKSBuYSBkb29ya2xpa2tlbiB2YW5hZiBkZSBDYXRlZ29yaWVzYW1lbnZhdHRpbmdzIHBhZ2luYSc7CiRsYW5nWydwYXJhbV9maWxlZXh0ZW5zaW9ucyddID0gJyANCmZpbGVfZXh0ZW5zaW9ucz0mcXVvdDtleHQxLGV4dDIsZXh0MyZxdW90Ow0KPHA+QWxsZWVuIGdlbGRpZyBhbHMgbW9kdXM9dXBsb2FkLiBEZXplIHBhcmFtZXRlciBiZXBlcmt0IGRlIHR5cGUgYmVzdGFuZGVuIGRpZSBrdW5uZW4gd29yZGVuIGdldXBsb2FkLiBEaXQgb3ZlcnNjaHJpamZ0IGllZGVyZSBpbnN0ZWxsaW5nIGluIGRlIG1vZHVsZS12b29ya2V1cmVuLjwvcD4nOwokbGFuZ1sncGFyYW1fY291bnQnXSA9ICdjb3VudD0mcXVvdDtOJnF1b3Q7DQo8cD5FZW4gcGFyYW1ldGVyIG9tIGFsbGVlbiBkZSBlZXJzdGUgTiByZXN1bHRhdGVuIHZhbiBkZSBxdWVyeSB0ZSB0b25lbi4gUGFnaW5lcmluZyB6b3UgYmV0ZXIgemlqbiwgbWFhciBkaXQgd2Vya3Qgb29rPC9wPic7CiRsYW5nWydwYXJhbV9jYXRlZ29yeSddID0gJ2NhdGVnb3J5PSZxdW90O25hbWUmcXVvdDsNCjxwPjxiPkxldCBvcDo8L2I+IENhdGVnb3JpZSBrYW4gJnF1b3Q7YWxsZXMmcXVvdDsgemlqbiwgd2F0IGVlbiBsaWpzdCBvcGxldmVydCBtZXQgYWxsZSB1cGxvYWRzIHZhbiBhbGxlIDxlbT5vcHNvbWJhcmU8L2VtPiBjYXRlZ29yaWUmZXVtbDtuPC9wPic7CiRsYW5nWydwYXJhbV9tb2RlJ10gPSAnICA8dWw+DQogIDxsaT48ZW0+ZGV0YWlsZWQ8L2VtPiAtIFRvb24gZWVuIGdlZGV0YWlsbGVlcmRlIGxpanN0IG1ldCBhbGxlIGJlc3RhbmRlbiBpbiBkZXplIGNhdGVnb3JpZTwvbGk+DQogIDxsaT48ZW0+dXBsb2FkPC9lbT4gLSBUb29uIGVlbiBmb3JtdWxpZXIgb20gZnJvbnRlbmQtZ2VicnVpa2VycyB0b2UgdGUgc3RhYW4gZWVuIGJlc3RhbmQgdGUgdXBsb2FkZW48L2xpPg0KICA8bGk+PGVtPnVybCA8aT5vcjwvaT4gbGluazwvZW0+IC0gVG9vbiBlZW4gbGluayBuYWFyIGVlbiBiZXN0YW5kPC9saT4NCiAgPGxpPjxlbT5zdW1tYXJ5PC9lbT4gLSBUb29uIGVlbiBzYW1lbmdldmF0dGUgbGlqc3QgbWV0IGFsbGUgYmVzdGFuZGVuIGluIGRlIGNhdGVnb3JpZTwvbGk+DQogIDxsaT48ZW0+c2luZ2xlPC9lbT4gLSBUb29uIGVlbiBnZWRldGFpbGxlZXJkIHJhcHBvcnQgb3ZlciBlZW4gaW5kaXZpZHVlbGUgdXBsb2FkPC9saT4NCiAgPC91bD4nOwokbGFuZ1sncGFyYW1fc2VsZWN0Zm9ybSddID0gJ0FscyBkZSAmIzAzOTtzZWxlY3RlZXImIzAzOTstbW9kdXMgd29yZHQgZ2VicnVpa3QgYmV2YXQgZGV6ZSBwYXJhbWV0ZXIgaGV0IGZvcm11bGllci1pZCB2YW4gaGV0IGJvdmVubGlnZ2VuZGUgZm9ybXVsaWVyIChwYXJlbnQpLiBXb3JkdCBnZWJydWlrdCBiaWogaGV0IGRvb3JnZXZlbiB2YW4gcGFyYW1ldGVycyc7CiRsYW5nWydwYXJhbV9zZWxlY3RuYW1lJ10gPSAnQWxzIGRlICYjMDM5O3NlbGVjdGVlciYjMDM5Oy1tb2R1cyB3b3JkdCBnZWJydWlrdCBzcGVjaWZpY2VlcnQgZGV6ZSBwYXJhbWV0ZXIgZGUgdmVsZG5hYW0nOwokbGFuZ1sncGFyYW1fc2VsZWN0dmFsdWUnXSA9ICdBbHMgZGUgJiMwMzk7c2VsZWN0ZWVyJiMwMzk7LW1vZHVzIHdvcmR0IGdlYnJ1aWt0IHNwZWNpZmljZWVydCBkZXplIHBhcmFtZXRlciBkZSBzdGFuZGFhcmQgdmVsZHdhYXJkZSc7CiRsYW5nWydwYXJhbV9zZWxlY3Rub25lJ10gPSAnQWxzIGRlICYjMDM5O3NlbGVjdGVlciYjMDM5Oy1tb2R1cyB3b3JkdCBnZWJydWlrdCBzcGVjaWZpY2VlcnQgZGV6ZSBwYXJhbWV0ZXIgb2YgJiMwMzk7Z2VlbiYjMDM5OyBlZW4gZ2VsZGlnZSBrZXV6ZSBpcy4nOwokbGFuZ1sncmV0dXJudG9tb2R1bGUnXSA9ICdLZWVyIHRlcnVnIG5hYXIgaGV0IG1vZHVsZS1zY2hlcm0nOwokbGFuZ1snZXJyb3Jfbm9jYXRlZ29yaWVzJ10gPSAnRXIgemlqbiBnZWVuIGNhdGVnb3JpZSZldW1sO24gZ2VkZWZpbmllZXJkJzsKJGxhbmdbJ3RpdGxlX2VuZm9yY2VleHRlbnNpb25zJ10gPSAnRXh0ZW5zaWVzIGJpaiBhbGxlIGdldXBsb2FkZSBiZXN0YW5kZW4gemlqbiB2ZXJwbGljaHQnOwokbGFuZ1sncmVzdG9yZWRlZmF1bHRzY29uZmlybSddID0gJ0RlemUgaGFuZGVsaW5nIGhlcnN0ZWx0IGRlIHNqYWJsb29uIG5hYXIgZGUgc3lzdGVlbXN0YW5kYWFyZC4gSWVkZXJlIHZlcmFuZGVyaW5nIGRpZSB1IGdlbWFha3QgaGVlZnQgemFsIHZlcmxvcmVuIGdhYW4uIFdlZXQgdSB6ZWtlciBkYXQgdSBkb29yIHdpbHQgZ2Fhbj8nOwokbGFuZ1sndGh1bWJuYWlsJ10gPSAnTWluaWF0dXVyJzsKJGxhbmdbJ25ld3RodW1ibmFpbCddID0gJ1VwbG9hZCBlZW4gbmlldXdlIG1pbmlhdHV1cic7CiRsYW5nWydpbmZvX3N1bW1hcnknXSA9ICdFZW4ga29ydGUgYmVzY2hyaWp2aW5nIHZhbiBoZXQgYmVzdGFuZCAob3B0aW9uZWVsLCBhbmRlcnMgd29yZHQgZGUgYmVzdGFuZHNuYWFtIHpvbmRlciBleHRlbnNpZSBnZWJydWlrdCkgJzsKJGxhbmdbJ2luZm9fY2F0ZWdvcnluYW1lJ10gPSAnRWVuIGtvcnRlIG5hYW0gdm9vciBkZSBjYXRlZ29yaWUnOwokbGFuZ1snaW5mb19jYXRlZ29yeWRlc2MnXSA9ICdFZW4gYmVzY2hyaWp2aW5nIHZhbiBkZSBjYXRlZ29yaWUnOwokbGFuZ1snaW5mb19jYXRlZ29yeXBhdGgnXSA9ICdEZSBtYXBuYWFtIGJpbm5lbiBkZSB1cGxvYWRzLW1hcCBkaWUgZ2VicnVpa3QgemFsIHdvcmRlbiBvbSBiZXN0YW5kZW4gaW4gZGV6ZSBjYXRlZ29yaWUgaW4gb3AgdGUgc2xhYW4uJzsKJGxhbmdbJ2luZm9fZGVzdG5hbWUnXSA9ICdHZWJydWlrIGhldCAmIzAzOTtVcGxvYWQgYWxzJiMwMzk7IHZlbGQgb20gZGUgbmFhbSB2YW4gaGV0IGJlc3RhbmQgdGlqZGVucyBoZXQgdXBsb2FkZW4gdGUgdmVyYW5kZXJlbi4gTGFhdCBsZWVnIG9tIGRlIGJlc3RhYW5kZSBiZXN0YW5kc25hYW0gdGUgZ2VicnVpa2VuLic7CiRsYW5nWydlcnJvcl9jYW50Y3JlYXRlZGlyZWN0b3J5J10gPSAnS29uIGRlIG1hcCBuaWV0IGFhbm1ha2VuJzsKJGxhbmdbJ2Vycm9yX25vbWFpbGVybW9kdWxlJ10gPSAnRXIga29uIGdlZW4gaW5zdGFudGllIHZhbiBkZSBDTVNNYWlsZXItbW9kdWxlIHdvcmRlbiBnZW1hYWt0JzsKJGxhbmdbJ3VwbG9hZF9ub3RpZmljYXRpb24nXSA9ICdFZW4gbmlldXcgYmVzdGFuZCBpcyBnZSZ1dW1sO3Bsb2FkJzsKJGxhbmdbJ3RpdGxlX2VtYWlsX29uX3VwbG9hZCddID0gJ1N0dXVyIHVwbG9hZC1zcGVjaWZpY2F0aWVzIG5hYXInOwokbGFuZ1snZW1haWxfdGVtcGxhdGUnXSA9ICdFbWFpbCBzamFibG9vbic7CiRsYW5nWyd0aXRsZV9kdW1teV9pbmRleF9odG1sJ10gPSAnQ3JlJmV1bWw7ZXIgbGVnZSBpbmRleC5odG1sIGJlc3RhbmRlbiBpbiBpZWRlcmUgbWFwPzxici8+PGVtPkJlc3RhYW5kZSBpbmRleC5odG1sIGJlc3RhbmRlbiBibGlqdmVuIGJlaG91ZGVuPC9lbT4nOwokbGFuZ1snYWJvdXQnXSA9ICdPdmVyJzsKJGxhbmdbJ2Vycm9yX3Blcm1pc3Npb25kZW5pZWQnXSA9ICdUb2VnYW5nIGdld2VpZ2VyZC4gQ29udHJvbGVlciB1dyByZWNodGVuLic7CiRsYW5nWydlcnJvcl9jb3VsZG5vdHdyaXRlJ10gPSAnS29uIG5pZXQgc2NocmlqdmVuJzsKJGxhbmdbJ2FkZGNhdGVnb3J5J10gPSAnVm9lZyBjYXRlZ29yaWUgdG9lJzsKJGxhbmdbJ2FsbCddID0gJ0FsbGVzJzsKJGxhbmdbJ2FyZXlvdXN1cmUnXSA9ICdXZWV0IHUgaGV0IHpla2VyPyc7CiRsYW5nWydhdXRob3InXSA9ICdBdXRldXInOwokbGFuZ1snY2FuY2VsJ10gPSAnQW5udWxlZXInOwokbGFuZ1snY2Fubm90bW9kaWZ5cGF0aCddID0gJyhIZXQgcGFkIGthbiBuaWV0IHdvcmRlbiBhYW5nZXBhc3QpJzsKJGxhbmdbJ2NhdGVnb3JpZXMnXSA9ICdDYXRlZ29yaWUmZXVtbDtuJzsKJGxhbmdbJ2NhdGVnb3J5J10gPSAnQ2F0ZWdvcmllJzsKJGxhbmdbJ21lc3NhZ2VfY2F0ZWdvcnlhZGRlZCddID0gJ0NhdGVnb3JpZSB0b2VnZXZvZWdkJzsKJGxhbmdbJ2RhdGUnXSA9ICdEYXR1bSc7CiRsYW5nWydkYXRldXBsb2FkZWQnXSA9ICdVcGxvYWQtZGF0dW0nOwokbGFuZ1snZGVmYXVsdCddID0gJ1N0YW5kYWFyZGVuJzsKJGxhbmdbJ2RlbGV0ZSddID0gJ1ZlcndpamRlcic7CiRsYW5nWydkZXNjcmlwdGlvbiddID0gJ0Jlc2NocmlqdmluZyc7CiRsYW5nWydkZXN0bmFtZSddID0gJ1VwbG9hZCBhbHMnOwokbGFuZ1snZGV0YWlsX3RlbXBsYXRlJ10gPSAnRGV0YWlsc2phYmxvb24nOwokbGFuZ1snZG93bmxvYWRlZCddID0gJ0Jlc3RhbmQgJXMgaXMgZ2Vkb3dubG9hZC4nOwokbGFuZ1snZG93bmxvYWRzJ10gPSAnRG93bmxvYWRzICc7CiRsYW5nWydlZGl0J10gPSAnQmV3ZXJrJzsKJGxhbmdbJ2VkaXRjYXRlZ29yeSddID0gJ0Jld2VyayBDYXRlZ29yaWUnOwokbGFuZ1snZWRpdHVwbG9hZCddID0gJ0Jld2VyayBVcGxvYWQnOwokbGFuZ1snZXJyb3InXSA9ICdGb3V0ISc7CiRsYW5nWydlcnJvcl9wYXRoaW51c2UyJ10gPSAnRWVuIGNhdGVnb3JpZSBkaWUgZGl0IHBhZCBnZWJydWlrdCAoJXMpIGJlc3RhYXQgYWwnOwokbGFuZ1snZXJyb3JfcGF0aGludXNlJ10gPSAnRWVuIGNhdGVnb3JpZSBkaWUgZGF0IHBhZCBnZWJydWlrdCBiZXN0YWF0IGFsJzsKJGxhbmdbJ2Vycm9yX2NhdGVnb3J5ZXhpc3RzMiddID0gJ0ZvdXQ6IENhdGVnb3JpZSBnZW5hYW1kICVzIGJlc3RhYXQgYWwnOwokbGFuZ1snZXJyb3JfY2F0ZWdvcnlleGlzdHMnXSA9ICdGb3V0OiBjYXRlZ29yaWUgYmVzdGFhdCBhbCc7CiRsYW5nWydlcnJvcl9jYXRlZ29yeW5vdGVtcHR5J10gPSAnRm91dCEgS2FuIGdlZW4gY2F0ZWdvcmllIHZlcndpamRlcmVuIGRpZSBuaWV0IGxlZWcgaXMnOwokbGFuZ1snZXJyb3JfY2F0ZWdvcnlub3Rmb3VuZCddID0gJ0ZvdXQ6IGNhdGVnb3JpZSBuaWV0IGdldm9uZGVuJzsKJGxhbmdbJ2Vycm9yX2RiZXJyb3InXSA9ICdGb3V0OiBEYXRhYmFzZWZvdXQhJzsKJGxhbmdbJ2Vycm9yX2VtcHR5Y2F0ZWdvcnknXSA9ICdGb3V0OiBMZWdlIGNhdGVnb3JpZSEnOwokbGFuZ1snZXJyb3JfZW1wdHlwYXRoJ10gPSAnRm91dDogTGVlZyBwYWQhJzsKJGxhbmdbJ2Vycm9yX2ZpbGVleGlzdHMnXSA9ICdGb3V0ISBCZXN0YW5kICVzIGJlc3RhYXQgYWwuJzsKJGxhbmdbJ2Vycm9yX2ZpbGVub3Rmb3VuZCddID0gJ0ZvdXQhIEJlc3RhbmQgJXMgaXMgbmlldCBnZXZvbmRlbi4nOwokbGFuZ1snZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJ10gPSAnRm91dDogT252b2xkb2VuZGUgcGFyYW1ldGVycyBhYW4gZGUgbW9kdWxlIGdlZ2V2ZW4hJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRhdXRob3InXSA9ICdGb3V0OiBPbmdlbGRpZ2UgKG9mIGxlZ2UpIGF1dGV1ci4nOwokbGFuZ1snZXJyb3JfaW52YWxpZGNhdGVnb3J5J10gPSAnRm91dDogT25nZWxkaWdlIChvZiBsZWdlKSBjYXRlZ29yaWUuJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRkZXNjcmlwdGlvbiddID0gJ0ZvdXQ6IE9uZ2VsZGlnZSAob2YgbGVnZSkgYmVzY2hyaWp2aW5nLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkZmlsZSddID0gJ0ZvdXQ6IE9uZ2VsZGlnZSAob2YgbGVnZSkgYmVzdGFuZHNuYWFtLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXBsb2FkZmlsZW5hbWUnXSA9ICdGb3V0OiBCZXN0YW5kZW4gbW9ldCBkaWUgbmFhbSAod2FhcnNjaGlqbmxpamsgZGUgZXh0ZW5zaWUpIHppam4gbmlldCB0b2VnZXN0YWFuICglcykuJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1cGxvYWRpZCddID0gJ0ZvdXQ6IE9uZ2VsZGlnZSB1cGxvYWQtaWQnOwokbGFuZ1snZXJyb3Jfbm9maWxlcyddID0gJ0ZvdXQ6IEdlZW4gb3ZlcmVlbmtvbXN0aWdlIGJlc3RhbmRlbiEnOwokbGFuZ1snZmlsZXMnXSA9ICdCZXN0YW5kZW4nOwokbGFuZ1snZml4bWUnXSA9ICdIZXJzdGVsIHNwYXRpZXMnOwokbGFuZ1snZnJpZW5kbHluYW1lJ10gPSAnQmVzdGFuZGVuIChVcGxvYWRzLW1vZHVsZSknOwokbGFuZ1snaGVscCddID0gJzxoMz5XYXQgZG9ldCBoZXQ/PC9oMz4NCjxwPkRpdCBpcyBlZW4gbW9kdWxlIHdhYXJtZWUgYmVzdGFuZGVuIGdldXBsb2FkIGVuIGdlZG93bmxvYWQga3VubmVuIHdvcmRlbiBuYWFyIGVuIHZhbiB1dyB3ZWJzaXRlLiAgSGV0IGhvdWR0IGJpaiBkaWUgYmVzdGFuZGVuIHVwbG9hZCBlbiB3ZSB6ZSBoZWVmdCBnZWRvd25sb2FkLiBPb2sga3VudCB1IGJlc3RhbmRlbiBpbmRlbGVuIGluIGNhdGVnb3JpZSZldW1sO24gZW4gZGV6ZSBiZXN0YW5kZW4gYmVoZXJlbiB6b2FscyBpZWRlcmUgYmVoZWVyZGVyIHpvdSBkb2VuLjwvcD4gDQo8aDM+V2hhdCBEb2VzIFRoaXMgRG8/PC9oMz4NCjxwPkl0IGlzIGEgbW9kdWxlIGZvciBhbGxvd2luZyBwZW9wbGUgdG8gdXBsb2FkIGFuZCBkb3dubG9hZCBmaWxlcyB0byBhbmQgZnJvbSB5b3VyIHNpdGUuICBJdCBrZWVwcyB0cmFjayBvZiB3aG8gdXBsb2FkZWQgYSBmaWxlLCBhbmQgd2hvIGhhcyBkb3dubG9hZGVkIGl0LiAgQXMgd2VsbCwgeW91IGNhbiBzb3J0IGZpbGVzIGludG8gY2F0ZWdvcmllcywgYW5kIG1hbmFnZSB0aGUgZmlsZXMgdGhhdCB3ZXJlIHVwbG9hZGVkIGxpa2UgZXZlcnkgYWRtaW5pc3RyYXRvciB3b3VsZCBkbzwvcD4gDQo8aDM+SG93IERvIEkgVXNlIEl0PC9oMz4NCjxwPjxzdHJvbmc+V2FybmluZzwvc3Ryb25nPiAtIFRoZSBwcm9wZXIgYmVoYXZpb3VyIG9mIHRoaXMgbW9kdWxlIGRlcGVuZHMgb24gbnVtZXJvdXMgcGhwIGNvbmZpZ3VyYXRpb24gdmFyaWFibGVzLiAgVGhlc2UgaW5jbHVkZSA8ZW0+KGJ1dCBhcmUgbm90IGxpbWl0ZWQgdG8pPC9lbT4sIHBocCYjMDM5O3MgbWVtb3J5X2xpbWl0LCBzYWZlX21vZGUsIGZpbGVfdXBsb2FkcywgdXBsb2Fkc19tYXhfZmlsZXNpemUsIGFuZCBtYXhfZXhlY3V0aW9uX3RpbWUuICBUaGVzZSB2YXJpYWJsZXMgbWF5IG5lZWQgYWRqdXN0bWVudCBmb3IgdGhpcyBtb2R1bGUgdG8gd29yayBwcm9wZXJseSBvbiB5b3VyIHNpdGUuICBJdCBpcyBhZHZpc2VkIHRoYXQgeW91IHdvcmsgd2l0aCB5b3VyIHN5c3RlbSBhZG1pbmlzdHJhdG9yIG9yIGhvc3QgcHJvdmlkZXIgdG8gdHVuZSB0aGVzZSBzZXR0aW5ncyBmb3IgeW91ciByZXF1aXJlbWVudHMuPC9wPg0KPHA+VG8gdXNlIHRoaXMgbW9kdWxlLCB0byBhbGxvdyB1c2VycyB0byB1cGxvYWQgZmlsZXMgdG8geW91ciBzaXRlLCB5b3Ugc2hvdWxkIGluc3RhbGwgdGhlIG1vZHVsZSwgYW5kIHRoZW4gY3JlYXRlIG9uZSBvciBtb3JlIGNhdGVnb3JpZXMgKGEuay5hKSBkaXJlY3RvcmllcyBmb3IgdGhlIHVwbG9hZGVkIGZpbGVzIHRvIGdvIGludG8uIFRoZW4gYWRkIGEgdGFnIGludG8gYSBwYWdlIG9yIHRlbXBsYXRlIHNvbWV3aGVyZSBsaWtlIHtjbXNfbW9kdWxlIG1vZHVsZT0mcXVvdDtVcGxvYWRzJnF1b3Q7IGNhdGVnb3J5PSZxdW90O3NvbWVjYXRlZ29yeSZxdW90OyBtb2RlPSZxdW90O3NvbWVtb2RlJnF1b3Q7fS4gIFdoZXJlIG1vZGUgbWF0Y2hlcyBvbmUgb2YgdGhlIG1vZGVzIGxpc3RlZCBiZWxvdy4gIFRoZSBvdXRwdXQgd2lsbCBkaWZmZXIgZGVwZW5kaW5nIHVwb24gd2hpY2ggbW9kZSB5b3Ugc2VsZWN0LjwvcD4NCjxwPlRoaXMgbW9kdWxlIGNhbiB1c2UgdGhlIEZyb250ZW5kVXNlcnMgbW9kdWxlIChvcHRpb25hbCkgdG8gZ2V0IGluZm9ybWF0aW9uIGFib3V0IGFueSBjdXJyZW50bHkgbG9nZ2VkIGluIHVzZXJzIHRvIHBhcnRseSBmaWxsIGluIHRoZSBmb3JtIHdoZW4gdXBsb2FkaW5nIGZpbGVzOzwvcD4NCjxoMz5QZXJtaXNzaW9uczwvaDM+DQo8dWw+DQo8bGk+PGVtPk1hbmFnZSBVcGxvYWRzPC9lbT4gcGVybWlzc2lvbiBpcyBuZWVkZWQgdG8gbWFuYWdlIGNhdGVnb3JpZXMsIGFuZCB0aGUgZmlsZXMgd2l0aGluIHRoZW0uPC9saT4NCjxsaT48ZW0+TW9kaWZ5IFRlbXBsYXRlczwvZW0+IHBlcm1pc3Npb24gaXMgbmVlZGVkIGVkaXQgYW55IG9mIHRoZSB0ZW1wbGF0ZXMuPC9saT4NCjxsaT48ZW0+TW9kaWZ5IFNpdGUgUHJlZmVyZW5jZXM8L2VtPiBwZXJtaXNzaW9uIGlzIG5lZWRlZCBhbnkgb2YgdGhlIGZpbGUgc2V0dGluZ3MuPC9saT4NCjwvdWw+DQo8aDM+Q2F0ZWdvcnkgQnJvd3Npbmc8L2gzPg0KPHA+UGxhY2luZyBhIHRhZyBsaWtlIHtjbXNfbW9kdWxlIG1vZHVsZT0mcXVvdDtVcGxvYWRzJnF1b3Q7IGFjdGlvbj0mcXVvdDtjYXRlZ29yeXN1bW1hcnkmcXVvdDsgdGVtcGxhdGU9JnF1b3Q7c3VtbWFyeXRlbXBsYXRlJnF1b3Q7IHNvcnRvcmRlcj0mcXVvdDtuYW1lX2FzYyZxdW90OyBsaXN0aW5ndGVtcGxhdGU9JnF1b3Q7bGlzdHRlbXBsYXRlJnF1b3Q7IGxpc3Rpbmdzb3J0b3JkZXI9JnF1b3Q7bGlzdHNvcnRvcmRlciZxdW90O30NCmFsbG93cyB5b3UgdG8gZGlzcGxheSBhbiBpbnRlcmFjdGl2ZSBjYXRlZ29yeSBicm93c2VyLiBzb3J0b3JkZXIgY2FuIGJlOiBuYW1lX2FzYywgbmFtZV9kZXNjLCBzdW1tX2FzYywgc3VtbV9kZXNjLCBvciByYW5kb20uDQpsaXN0aW5ndGVtcGxhdGUgYW5kIGxpc3Rpbmdzb3J0b3JkZXIgYXJlIGlkZW50aWNhbCB0byB0aGUgdGVtcGxhdGUgYW5kIHNvcnRvcmRlciBwYXJhbWV0ZXJzIGZvcg0KdGhlICZxdW90O3N1bW1hcnkmcXVvdDsgbW9kZS48L3A+DQo8aDM+QXV0b21hdGljIFNjYW5uaW5nPC9oMz4NCjxwPlRoaXMgbW9kdWxlIHdpbGwgYXV0b21hdGljYWxseSBzY2FuIGZvciBuZXcgZmlsZXMgaW4gYSBkaXJlY3Rvcnkgd2hlbiBhIHN1bW1hcnkgbW9kZSB0YWcgZm9yIGEgc3BlY2lmaWMgY2F0ZWdvcnkgaXMgdXNlZCBvbiBhIENNU01TIHBhZ2UuICBpLmU6IDxjb2RlPntVcGxvYWRzIGNhdGVnb3J5PWNhdGVnb3J5X25hbWV9PC9jb2RlPiB3aWxsIHBlcmZvcm0gYSBzY2FuLiAgYnV0IDxjb2RlPntVcGxvYWRzIGNhdGVnb3J5PWFsbH08L2NvZGU+IHdpbGwgbm90LjwvcD4NCjxoMz5UaHVtYm5haWwgR2VuZXJhdGlvbjwvaDM+DQo8cD5UaGlzIG1vZHVsZSBpcyBjYXBhYmxlIG9mIGdlbmVyYXRpbmcgdGh1bWJuYWlscyBmb3IgY2VydGFpbiB0eXBlcyBvZiBmaWxlcy4gIFRoZXJlIGFyZSBwcmVmZXJlbmNlcyBpbiB0aGUgcHJlZmVyZW5jZXMgdGFiIG9mIHRoZSBVcGxvYWRzIG1vZHVsZSBhZG1pbmlzdHJhdGlvbiBwYW5lbCB0byBzcGVjaWZ5IHRoZSB0eXBlcyBvZiBmaWxlcyB0aGF0IGFsbG93IGF1dG9tYXRpYyB0aHVtYm5haWwgZ2VuZXJhdGlvbiwgYW5kIHRoZSBzaXplIG9mIHRoZSBnZW5lcmF0ZWQgdGh1bWJuYWlsIChwcmVzZXJ2aW5nIGFzcGVjdCByYXRpbykuICAgVGh1bWJuYWlscyBhcmUgYXV0b21hdGljYWxseSBnZW5lcmF0ZWQgdXBvbiB1cGxvYWQsIGFuZCBjYW4gYmUgZ2VuZXJhdGVkIG1hbnVhbGx5IGJ5IHNlbGVjdGluZyB0aGUgJmFtcDtxdW90O0dlbmVyYXRlIFRodW1ibmFpbHMmYW1wO3F1b3Q7IG9wdGlvbiBpbiB0aGUgZWRpdCBjYXRlZ29yeSBmb3Jtcy4uLiBidXQgYXJlIG5vdCBnZW5lcmF0ZWQgd2hlbiBuZXcgZmlsZXMgYXJlIGRldGVjdGVkIGJ5IGF1dG9tYXRpYyBzY2FubmluZy48L3A+DQo8aDM+WW91IFNlbmQgSXQ8L2gzPg0KPHA+SXQgaXMgcG9zc2libGUgdG8gZW5hYmxlICZhbXA7cXVvdDt5b3VzZW5kaXQmYW1wO3F1b3Q7IGxpa2UgZnVuY3Rpb25hbGl0eSB0byBhbGxvdyBhdXRvbWF0aWNhbGx5IGVtYWlsaW5nIHNlbGVjdGVkIHBlb3BsZSB3aXRoIGEgbGluayB0byBhIG5ld2x5IHVwbG9hZGVkIGZpbGUuICBUaGlzIGlzIGFjY29tcGxpc2hlZCBieSB1c2luZyBhIHRhZyBsaWtlOiA8Y29kZT57VXBsb2FkcyBhY3Rpb249eW91c2VuZGl0IGNhdGVnb3J5PWNhdGVnb3J5bmFtZX08L2NvZGU+LiAgVGhpcyB3aWxsIGRpc3BsYXkgYSBmb3JtIGFsbG93aW5nIHRoaXMgZnVuY3Rpb25hbGl0eS48L3A+DQo8aDM+VGltZSBMaW1pdGVkIEFjY2VzczwvaDM+DQo8cD5UaGlzIG1vZHVsZSBzdXBwb3J0cyB0aGUgbm90aW9uIG9mIHVuaXF1ZSBrZXlzIHRvIGFsbG93IHRpbWUgbGltaXRlZCBhY2Nlc3MgdG8gY2VydGFpbiBmaWxlcy4gIFRoZSBmdW5jdGlvbmFsaXR5IGFsbG93cyBzcGVjaWZ5aW5nIGEgdGltZSBsaW1pdCAoaW4gaG91cnMpIGZvciB3aGljaCB0aGUga2V5IGlzIHZhbGlkLCBhbmQgYSBtYXhpbXVtIG51bWJlciBvZiBkb3dubG9hZHMgb3IgZG93bmxvYWQgYXRlbXB0cy4gIEFuIGVtYWlsIGlzIHNlbnQgdG8gdGhlIGRlc2lyZWQgdXNlcnMgd2l0aCB0aGUgdW5pcXVlIFVSTC4gIEFmdGVyIHRoZSB0aW1lIGxpbWl0LCBvciB0aGUgbnVtYmVyIG9mIGRvd25sb2FkcyBoYXMgYmVlbiByZWFjaGVkLCB0aGUgVVJMIGlzIG5vIGxvbmdlciB2YWxpZC4gIFRoZXNlIHVuaXF1ZSB0aW1lIGxpbWl0ZWQga2V5cyBhcmUgYXV0b21hdGljYWxseSByZW1vdmVkIGZyb20gdGhlIGRhdGFiYXNlIGFmdGVyIGV4cGlyeS48L3A+DQo8aDM+UmVzdHJpY2luZyBBY2Nlc3Mgd2l0aCBGRVU8L2gzPg0KPHA+VGhpcyBtb2R1bGUgaXMgY2FwYWJsZSBvZiBpbnRlZ3JhdGluZyB3aXRoIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZSB0byByZXN0cmljdCB0aGUgdmlzaWJpbGl0eSBvZiBjYXRlZ29yaWVzIChkaXJlY3RvcmllcykgdG8gY2VydGFpbiBhbGxvd2VkIEZFVSBncm91cHMuICBZb3VyIHVzZXJzIHdvdWxkIGhhdmUgdG8gYmUgbG9nZ2VkIGluIHRvIHlvdXIgd2Vic2l0ZSAodXNpbmcgRkVVKSBhbmQgYWxzbyBhIG1lbWJlciBvZiBvbmUgb2YgdGhlIGFsbG93ZWQgZ3JvdXBzIHRvIG9idGFpbiBhY2Nlc3MuICBUaGlzIGlzIGFjY29tcGxpc2hlZCBpbiB0aGUgY2F0ZWdvcnkgZWRpdCBmb3JtLiAgWW91IGNhbiBzZWxlY3QgYSBsaXN0IG9mIEZFVSBncm91cHMgd2hpY2ggYXJlIGFsbG93ZWQgdG8gdmlldyBmaWxlcyBpbiB0aGlzIGNhdGVnb3J5LjwvcD4NCjxwPlRoaXMgZnVuY3Rpb25hbGl0eSBhbHNvIGFwcGxpZXMgdG8gdGhlICZhbXA7cXVvdFRpbWUgTGltaXRlZCBBY2Nlc3MmYW1wO3F1b3QgZnVuY3Rpb25hbGl0eS4gIEFsbG93aW5nIHlvdSB0byBzcGVjaWZ5IHRoYXQgY2VydGFpbiBwZW9wbGUsIHdobyBhbHNvIGhhdmUgdG8gYmUgbG9nZ2VkIGluIHRvIHlvdXIgd2Vic2l0ZSBjYW4gaGF2ZSBhY2Nlc3MgdG8gY2VydGFpbiBmaWxlcyBmb3IgYSBsaW1pdGVkIGFtb3VudCBvZiB0aW1lLjwvcD4NCjxoMz5FbWFpbGluZzwvaDM+DQo8cD5UaGlzIG1vZHVsZSBpcyBjYXBhYmxlIG9mIHNlbmRpbmcgYW4gZW1haWwgd2hlbmV2ZXIgYSBmaWxlIGlzIHVwbG9hZGVkLCBzZWUgdGhlIHByZWZlcmVuY2VzIHRhYi4gIEhvd2V2ZXIsIHRvIGRvIHRoaXMgdGhlIDxiPkNNU01haWxlcjwvYj4gcGFja2FnZSBtdXN0IGJlIGluc3RhbGxlZCBhbmQgY29uZmlndXJlZC4gIFRoaXMgaXMgYW4gPGVtPm9wdGlvbmFsPC9lbT4gc3RlcCwgYW5kIGlmIHRoZSBDTVNNYWlsZXIgbW9kdWxlIGlzIG5vdCBpbnN0YWxsZWQsIG5vdGhpbmcgd2lsbCBiZSBkaXNwbGF5ZWQgdG8gdGhlIHVzZXIsIG9ubHkgYSBsb2cgbWVzc2FnZSB3aWxsIGJlIHBsYWNlZCBpbnRvIHRoZSBhZG1pbiBsb2c8L3A+DQo8aDM+U3lzdGVtIFNldHRpbmdzPC9oMz4NCjxwPjxiPk5vdGU6PC9iPiBUaGlzIG1vZHVsZSBkb2VzIG5vdCBieXBhc3Mgb3IgZ2V0IHBhc3QgYW55IGZpbGUgc2l6ZSBsaW1pdGF0aW9ucyBpbiBwaHAuICBJdCB3b3JrcyBpbiBjb25qdW5jdGlvbiB3aXRoIHRoZW0uICBUaGVyZWZvcmUgeW91IG1heSBuZWVkIHRvIG1vZGlmeSB5b3VyIHBocC5pbmkgZmlsZSwgeW91ciBDTVNNUyBjb25maWcucGhwIGZpbGUgYW5kL29yIHlvdXIgaHR0cGQuY29uZiBmaWxlKHMpIHRvIGFsbG93IHlvdSB0byB1cGxvYWQgZmlsZXMgYXMgbGFyZ2UgYXMgd2hhdCB5b3UgaGF2ZSBzZXQgaW4gdGhlIHVwbG9hZHMgbW9kdWxlIHByZWZlcmVuY2VzLjwvcD4NCjxoMz5BcGFjaGUgTm90ZXM8L2gzPg0KPHA+SW4gb3JkZXIgdG8gYWxsb3cgbGFyZ2UgZmlsZSB1cGxvYWRzLCB5b3UgbWF5IG5lZWQgdG8gbW9kaWZ5IHRoZSB1cGxvYWRfbWF4X2ZpbGVzaXplIHBhcmFtZXRlciBpbiB5b3VyIHBocC5pbmkgIEluIGFkZGl0aW9uLCB0aGUgTGltaXRSZXF1ZXN0Qm9keSBwYXJhbWV0ZXIgaW4geW91ciBhcGFjaGUgY29uZmlndXJhdGlvbiwgbWF5IG5lZWQgdG8gYmUgYWRqdXN0ZWQgdG8gbWF0Y2ggdGhlIHVwbG9hZF9tYXhfZmlsZXNpemUgcGFyYW1ldGVyPC9wPg0KPHA+Tm90ZTogIHRoZSB1cGxvYWRfbWF4X2ZpbGVzaXplIHBhcmFtZXRlciBjYW4gYmUgc3BlY2lmaWVkIGluIGJ5dGVzLCBraWxvYnl0ZXMsIG9yIG1lZ2FieXRlcywgaG93ZXZlciB0aGUgTGltaXRSZXF1ZXRCb2R5IHBhcmFtZXRlciBpcyBvbmx5IHNwZWNpZmllZCBpbiBieXRlczwvcD4NCic7CiRsYW5nWydpZCddID0gJ0lEJzsKJGxhbmdbJ2luc3RhbGxlZCddID0gJ01vZHVsZSB2ZXJzaWUgJXMgIGlzIGdlJml1bWw7bnN0YWxsZWVyZC4nOwokbGFuZ1snaXBfYWRkcmVzcyddID0gJ0lQLWFkcmVzJzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnRWVuIG1vZHVsZSBvbSBnZWJydWlrZXJzIGJlc3RhbmRlbiB0ZSBsYXRlbiB1cGxvYWRlbiBlbiBvbSBkZSBnZXVwbG9hZGUgYmVzdGFuZGVuIHRlIGJlaGVyZW4uJzsKJGxhbmdbJ25hbWUnXSA9ICdOYWFtJzsKJGxhbmdbJ3JlbmFtZW1lc3NhZ2UnXSA9ICdWZXJhbmRlciBoaWVyIGRlIG5hYW0gb20gZGUgYmVzdGFuZHNuYWFtIHRlIHZlcmFuZGVyZW4uJzsKJGxhbmdbJ3BhdGgnXSA9ICdQYWQnOwokbGFuZ1sncGF0aG1lc3NhZ2UnXSA9ICdWZXJhbmRlciBkZSBjYXRlZ29yaWUgaGllciBvbSBoZXQgYmVzdGFuZCBuYWFyIGVlbiBhbmRlcmUgbWFwIHRlIHZlcnBsYWF0c2VuJzsKJGxhbmdbJ3BhdGhpbnVwbG9hZHMnXSA9ICcoUmVsYXRpZWYgdGVuIG9wemljaHRlIHZhbiBkZSB1cGxvYWRzLW1hcCknOwokbGFuZ1sncG9zdGluc3RhbGwnXSA9ICc8cD5EZSBVcGxvYWRzLW1vZHVsZSBpcyBtZXQgc3VjY2VzIGdlJml1bWw7bnN0YWxsZWVyZC4gWm9yZyBkYXQgaGV0ICAmcXVvdDtNYW5hZ2UgVXBsb2FkcyZxdW90OyByZWNodCBpcyB0b2VnZWtlbmQhPC9wPg0KPHA+PHN0cm9uZz5XYWFyc2NodXdpbmc8L3N0cm9uZz4gLSBIZXQganVpc3RlIGdlZHJhZyB2YW4gZGV6ZSBtb2R1bGUgaXMgYWZoYW5rZWxpamsgdmFuIHZlbGUgcGhwLWNvbmZpZ3VyYXRpZXZhcmlhYmVsZW4uIERlemUgYmV2YXR0ZW4gPGVtPihtYWFyIHppam4gbmlldCBiZXBlcmt0IHRvdCk8L2VtPiwgcGhwJiMwMzk7cyBtZW1vcnlfbGltaXQsIHNhZmVfbW9kZSwgZmlsZV91cGxvYWRzLCB1cGxvYWRzX21heF9maWxlc2l6ZSBlbiBtYXhfZXhlY3V0aW9uX3RpbWUuIERlemUgdmFyaWFiZWxlbiBtb2V0ZW4gbW9nZWxpamsgd29yZGVuIGFhbmdlcGFzdCBvbSBkZXplIG1vZHVsZSBjb3JyZWN0IHRlIGxhdGVuIHdlcmtlbi4gSGV0IHdvcmR0IGdlYWR2aXNlZXJkIGRhdCB1IHNhbWVuIG1ldCB1dyBzeXN0ZWVtYmVoZWVyZGVyIG9mIGhvc3QgcHJvdmlkZXIgZGV6ZSBpbnN0ZWxsaW5nZW4gYWZzdGVtdCBvcCB1dyB3ZW5zZW4uPC9wPic7CiRsYW5nWydwb3N0dW5pbnN0YWxsJ10gPSAnRGUgVXBsb2Fkcy1tb2R1bGUgaXMgbWV0IHN1Y2NlcyB2ZXJ3aWpkZXJkLiBFciB6aWpuIGdlZW4gYmVzdGFuZGVuIHZlcndpamRlcmQgdWl0IGRlIHVwbG9hZHMtbWFwLic7CiRsYW5nWydwcmVmZXJlbmNlcyddID0gJ1Zvb3JrZXVyZW4nOwokbGFuZ1sncHJlZnN1cGRhdGVkJ10gPSAnTW9kdWxldm9vcmtldXJlbiB6aWpuIGJld2FhcmQuJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeWRlc2MnXSA9ICdCZXNjaHJpanZpbmcnOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5bGlzdGFibGUnXSA9ICdCZXN0YW5kZW4gaW4gZGV6ZSBtYXAga3VubmVuIHdvcmRlbiB3ZWVyZ2VnZXZlbic7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnluYW1lJ10gPSAnQ2F0ZWdvcmllbmFhbSc7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnlwYXRoJ10gPSAnU2VydmVyIHBhZCc7CiRsYW5nWydwcm9tcHRfZGVsZXRlZGlyZWN0b3J5J10gPSAnVmVyd2lqZGVyIGNhdGVnb3JpZW1hcD8nOwokbGFuZ1sncHJvbXB0X21heF91cGxvYWRzaXplJ10gPSAnTWF4aW1hYWwgdG9lZ2VzdGFuZSBiZXN0YW5kc2dyb290dGUgKEtiKSc7CiRsYW5nWydwcm9tcHRfdmFsaWRfdXBsb2FkZXh0ZW5zaW9ucyddID0gJ0dlbGRpZ2UgdXBsb2FkIGV4dGVudGllcyc7CiRsYW5nWydzY2FuJ10gPSAnWm9layc7CiRsYW5nWydzZWxlY3RjYXRlZ29yeSddID0gJ1NlbGVjdGVlciBjYXRlZ29yaWUnOwokbGFuZ1snc2l6ZSddID0gJ0dyb290dGUnOwokbGFuZ1snc2l6ZWtiJ10gPSAnR3Jvb3R0ZSAoS2IpJzsKJGxhbmdbJ3N1Ym1pdCddID0gJ1ZlcnplbmQnOwokbGFuZ1snc3VtbWFyeV90ZW1wbGF0ZSddID0gJ09tc2NocmlqdmluZ3NzamFibG9vbic7CiRsYW5nWydzdW1tYXJ5J10gPSAnT21zY2hyaWp2aW5nJzsKJGxhbmdbJ3RpdGxlX2FkbWluX3BhbmVsJ10gPSAnVXBsb2Fkcy1tb2R1bGUnOwokbGFuZ1sndGl0bGVfbW9kX2FkbWluJ10gPSAnTW9kdWxlYmVoZWVycGFuZWVsJzsKJGxhbmdbJ3RpdGxlX21vZF9wcmVmcyddID0gJ01vZHVsZWluc3RlbGxpbmdlbic7CiRsYW5nWyd0aXRsZV9zdWJuZXRfZXhjbHVzaW9ucyddID0gJ1NsdWl0IGRlemUgc3VibmV0dGVuIHVpdCB2YW4gZGUgc3RhdGlzdGlla2VuJzsKJGxhbmdbJ3RpdGxlX3ZhbGlkX3VwbG9hZGV4dGVuc2lvbnMnXSA9ICdHZWxkaWdlIGV4dGVuc2llcyc7CiRsYW5nWyd1bmluc3RhbGxlZCddID0gJ01vZHVsZSBnZWRlJml1bWw7bnN0YWxsZWVyZC4nOwokbGFuZ1sndXBncmFkZWQnXSA9ICdNb2R1bGUgZ2UmdXVtbDtwZ3JhZGUgbmFhciB2ZXJzaWUgJXMuJzsKJGxhbmdbJ3VwbG9hZCddID0gJ1VwbG9hZCAnOwokbGFuZ1sndXBsb2FkZWQnXSA9ICdCZXN0YW5kICVzIGlzIGdlJnV1bWw7cGxvYWQgZG9vciAlcy4nOwokbGFuZ1sncmVwbGFjZWQnXSA9ICdCZXN0YW5kICVzIGlzIHZlcnZhbmdlbiBkb29yICVzLic7CiRsYW5nWydkZWxldGVkJ10gPSAnQmVzdGFuZCAlcyBpcyB2ZXJ3aWpkZXJkLic7CiRsYW5nWyd1cGxvYWRmb3JtX3RlbXBsYXRlJ10gPSAnVXBsb2Fkc2phYmxvb24nOwokbGFuZ1sndXNlcm5hbWUnXSA9ICdHZWJydWlrZXJzbmFhbSc7CiRsYW5nWyd3YXJuaW5nX2RlbGV0ZWNhdGVnb3J5J10gPSAnV2FhcnNjaHV3aW5nOiB3ZWVzIHZvb3J6aWNodGlnIG1ldCBoZXQgdmVyd2lqZGVyZW4gdmFuIGNhdGVnb3JpZSZldW1sO24uIEVyIGt1bm5lbiBiZXN0YW5kZW4gdmVybG9yZW4gZ2Fhbic7CiRsYW5nWyd1dG1hJ10gPSAnMTU2ODYxMzUzLjExMDIzNTg1MzQuMTI1MjgzMDY5NS4xMjU1NjE0Mjg3LjEyNTU2MTY0NDkuMTE3JzsKJGxhbmdbJ3V0bXonXSA9ICcxNTY4NjEzNTMuMTI1NTYxNDI4Ny4xMTYuMzcudXRtY3NyPWZvcnVtLmNtc21hZGVzaW1wbGUub3JnfHV0bWNjbj0ocmVmZXJyYWwpfHV0bWNtZD1yZWZlcnJhbHx1dG1jY3Q9L2luZGV4LnBocCc7CiRsYW5nWydxY2EnXSA9ICdQMC0xNzg3NTAxNzY3LTEyNTI4MzA2OTU2MDInOwokbGFuZ1sndXRtYyddID0gJzE1Njg2MTM1Myc7CiRsYW5nWyd1dG1iJ10gPSAnMTU2ODYxMzUzLjIuMTAuMTI1NTYxNjQ0OSc7Cj8+]]></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[PD9waHAKJGxhbmdbJ3Byb21wdF90bF9hY2Nlc3MnXSA9ICdUaW1lIExpbWl0ZWQgQWNjZXNzJzsKJGxhbmdbJ3Byb21wdF9hbGxvd191cGxvYWRfc2VuZGZpbGUnXSA9ICdUaWxsJmFyaW5nO3QgYXR0IHNraWNrYSBmaWxlciBkaXJla3QgcCZhcmluZzsgYWRtaW4gdXBsb2FkJzsKJGxhbmdbJ21zZ19hdXRvX2RlbGV0ZV9maWxlJ10gPSAnQXV0b21hdGljYWxseSBkZWxldGVkIGV4cGlyZWQgZmlsZTogJXMnOwokbGFuZ1snbXNnX2F1dG9fZGVsZXRlX2ZpbGVfZmFpbGVkJ10gPSAnUGVybWlzc2lvbnMgcHJvYmxlbSwgYXV0byBkZWxldGUgb2YgJXMgZmFpbGVkJzsKJGxhbmdbJ2luZm9fY2F0ZWdvcnlfZXhwaXJlc19ocnMnXSA9ICdTcGVjaWZ5IGEgbnVtYmVyIG9mIGhvdXJzIGJlZm9yZSBmaWxlcyBpbiB0aGlzIGNhdGVnb3J5IGNhbiBiZSBkZWxldGVkLiAgVXNlIGEgdmFsdWUgb2YgMCB0byBpbmRpY2F0ZSB0aGF0IGZpbGVzIHNob3VsZCBub3QgYmUgZGVsZXRlZCc7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnlfZXhwaXJlc19ocnMnXSA9ICdOdW1iZXIgb2YgaG91cnMgdW50aWwgZmlsZXMgaW4gdGhpcyBjYXRlZ29yeSBhcmUgYXV0b21hdGljYWxseSBkZWxldGVkJzsKJGxhbmdbJ2luZm9fZGZsdF9jYXRlZ29yeV9leHBpcnknXSA9ICdUaGUgZGVmYXVsdCB2YWx1ZSBmb3IgbmV3IGNhdGVnb3JpZXMgdGhhdCBzcGVjaWZpZXMgaG93IGxvbmcgZmlsZXMgaW4gdGhpcyBjYXRlZ29yeSBleGlzdCBiZWZvcmUgdGhleSBhcmUgYXV0b21hdGljYWxseSBkZWxldGVkLiAgVXNlIGEgdmFsdWUgb2YgMCB0byBpbmRpY2F0ZSBubyBkZWxldGlvbic7CiRsYW5nWyd0aXRsZV9jYXRlZ29yeV9leHBpcnknXSA9ICdDYXRlZ29yeSBleHBpcnkgcGVyaW9kIDxlbT4oaHJzKTwvZW0+JzsKJGxhbmdbJ2luZm9fY2F0ZWdvcnlkZWxldGFibGUnXSA9ICdBdXRob3JpemVkIHVzZXJzIHdpbGwgaGF2ZSBwZXJtaXNzaW9uIHRvIGRlbGV0ZSB0aGVzZSBmaWxlcy4gIFRoaXMgbWVhbnMgdGhhdCBhIHVybCB3aWxsIGJlIHByb3ZpZGVkIGluIHRoZSBhcHByb3ByaWF0ZSB0ZW1wbGF0ZXMgdG8gYWxsb3cgZGVsZXRpbmcgb2YgdGhlIGZpbGUuICBBIHdlYnNpdGUgZGV2ZWxvcGVyIGNhbiB1c2UgYXBwcm9wcmlhdGUgc21hcnR5IGxvZ2ljIHRvIHNob3cgYSBsaW5rIHRvIGF1dGhvcml6ZWQgdXNlcnMuJzsKJGxhbmdbJ2NvcHlfZmlsZXMnXSA9ICdLb3BpZXJhIGZpbGVyJzsKJGxhbmdbJ2Vycm9yX2ZpbGV0b29sYXJnZSddID0gJ1RoZSBmaWxlIHlvdSBhdHRlbXB0ZWQgdG8gdXBsb2FkZSBpcyBsYXJnZXIgdGhhbiB0aGUgQ01TTVMgbWF4aW11bSB1cGxvYWQgZmlsZSBzaXplJzsKJGxhbmdbJ2FyZXlvdXN1cmVfZGVsZXRlY2F0ZWdvcnknXSA9ICcmQXVtbDtyIGR1IHMmYXVtbDtrZXIgcCZhcmluZzsgYXR0IGR1IHZpbGwgcmFkZXJhIGRlbm5hIGthdGVnb3JpPyc7CiRsYW5nWydlcnJvcl9kZWxldGUnXSA9ICdFdHQgb2JqZWt0IGt1bmRlIGludGUgcmFkZXJhcyAoJXMpJzsKJGxhbmdbJ2NvbmZpcm1fY2F0X211bHRpYWN0aW9uJ10gPSAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIHBlcmZvcm0gdGhpcyBhY3Rpb24gb24gdGhlIHNlbGVjdGVkIGNhdGVnb3JpZXM/JzsKJGxhbmdbJ2Vycm9yX25vdGhpbmdfc2VsZWN0ZWQnXSA9ICdGZWw6IEluZ2V0IHZhbGRlcyc7CiRsYW5nWyd3aXRoX3NlbGVjdGVkJ10gPSAnTWVkIHZhbGQ6JzsKJGxhbmdbJ2Vycm9yX3JlcGxhY2VfbWlzbWF0Y2hlZF9maWxlZXh0J10gPSAnV2hlbiByZXBsYWNpbmcgYSBmaWxlLCB5b3UgbXVzdCB1cGxvYWQgYSBmaWxlIG9mIHRoZSBzYW1lIGV4YWN0IHR5cGUgKGJ5IGZpbGUgZXh0ZW5zaW9uKS4gIFRoZSBmaWxlIHlvdSBzZWxlY3RlZCBkb2VzIG5vdCBtYXRjaCB0aGF0IG9mIHRoZSBvcmlnaW5hbCBmaWxlLic7CiRsYW5nWydyZXBsYWNlJ10gPSAnUmVwbGFjZSc7CiRsYW5nWydpbmZvX3JlcGxhY2VmaWxlJ10gPSAnWW91IG1heSB1cGxvYWQgYSByZXBsYWNlbWVudCBmaWxlLCBpZiB0aGUgZmlsZSBpcyBhbiBpbWFnZSB0eXBlLCBhbmQgeW91IGhhdmUgbm90IHNwZWNpZmllZCBhIHJlcGxhY2VtZW50IHRodW1ibmFpbCwgYSBuZXcgdGh1bWJuYWlsIHdpbGwgYmUgZ2VuZXJhdGVkJzsKJGxhbmdbJ3Byb21wdF9yZXBsYWNlZmlsZSddID0gJ1VwbG9hZCByZXBsYWNlbWVudCBmaWxlJzsKJGxhbmdbJ3RpdGxlX2ZpeHNwYWNlcyddID0gJ0ZpeGEgbWVsbGFuc2xhZyBpIGZpbG5hbW5ldCc7CiRsYW5nWydjYXRlZ29yeV9jb3BpZWQnXSA9ICdLYXRlZ29yaW4gJmF1bWw7ciBudSBrb3BpZXJhZCc7CiRsYW5nWydlcnJvcl9kdXBsaWNhdGVwYXRoJ10gPSAnUGxlYXNlIHNwZWNpZnkgYSBkaXJlY3RvcnkgbmFtZSB0aGF0IGlzIGRpZmZlcmVudCBmcm9tIHRoZSBzb3VyY2UsIGFuZCBpcyBub3QgYWxyZWFkeSBpbiB1c2UnOwokbGFuZ1snb3BlcmF0aW9uX2NhbmNlbGxlZCddID0gJ09wZXJhdGlvbiBDYW5jZWxsZWQnOwokbGFuZ1snc291cmNlJ10gPSAnSyZhdW1sO2xsYSc7CiRsYW5nWydkZXN0aW5hdGlvbiddID0gJ0Rlc3RpbmF0aW9uJzsKJGxhbmdbJ3Byb21wdF9jb3B5X2ZpbGVzJ10gPSAnS29waWVyYSBrYXRlZ29yaSBmaWxlcic7CiRsYW5nWydpbmZvX2NvcHlfZmlsZXMnXSA9ICdDb3B5IHRoZSBmaWxlcyBmcm9tIHRoZSBzb3VyY2UgY2F0ZWdvcnkgdG8gdGhlIGRlc3RpbmF0aW9uIGNhdGVnb3J5JzsKJGxhbmdbJ2V4dHJhJ10gPSAnRXh0cmEnOwokbGFuZ1snY29weSddID0gJ0tvcGllcmEnOwokbGFuZ1snc2VsZWN0b25lJ10gPSAnViZhdW1sO2xqIGVuJzsKJGxhbmdbJ2F1dG93YXRlcm1hcmsnXSA9ICdBdXRvbWF0aXNrdCBwbGFjZXJhIGV0dCB2YXR0ZW5tJmF1bWw7cmtlIHAmYXJpbmc7IGJpbGRlcm5hJzsKJGxhbmdbJ2ltYWdlX3NldHRpbmdzJ10gPSAnQmlsZGluc3QmYXVtbDtsbG5pbmdhcic7CiRsYW5nWydwcm9tcHRfZ2V0ZmlsZV9yZXN1bHRwYWdlJ10gPSAnUGFnZSB0byB1c2UgZm9yIGVycm9ycyBvciBvdGhlciBtZXNzYWdlcyByZWxhdGVkIHRvIGZpbGUgZG93bmxvYWRpbmcnOwokbGFuZ1snZXJyb3JfaW52YWxpZF9rZXknXSA9ICdUaGUgdXBsb2FkIGtleSBzcGVjaWZpZWQgaXMgaW52YWxpZCAobWF5YmUgaXQgaGFzIHJlYWNoZWQgaXRzIG1heGltdW0gZG93bmxvYWQgY2FwYWNpdHkgb3IgaGFzIGV4cGlyZWQpJzsKJGxhbmdbJ2RmbHRfdGltZWxpbWl0ZWRfc3ViamVjdCddID0gJ3skc2l0ZW5hbWV9IC0gWW91IGhhdmUgYmVlbiBncmFudGVkIGFjY2VzcyB0byB7JGVudHJ5LT51cGxvYWRfbmFtZXxzdHJpcF90YWdzfSBmb3IgYSBsaW1pdGVkIHRpbWUnOwokbGFuZ1sncHJvbXB0X3RpbWVsaW1pdGVkX3N1YmplY3QnXSA9ICdTdWJqZWN0IGZvciBlbWFpbCBjcmVhdGVkIHdoZW4gc2VuZGluZyBhIHRpbWUgbGltaXRlZCBVUkwnOwokbGFuZ1sncHJvbXB0X3RpbWVsaW1pdGVkX2F1dG9kZWxldGUnXSA9ICdBdXRvIGRlbGV0ZSBleHBpcmVkIGVudHJpZXMgYWZ0ZXIgTiBob3VycyA8ZW0+KHNwZWNpZnkgMCB0byBkaXNhYmxlIGF1dG9kZWxldGUpPC9lbT46JzsKJGxhbmdbJ3Byb21wdF90aW1lbGltaXRlZF9zZW5kaXQnXSA9ICdTa2lja2EgZGVuIGgmYXVtbDtyIFVSTGVuIHRpbGwgZGVuIHV0c2VkZGEgZS1wb3N0YWRyZXNzPyc7CiRsYW5nWyd1cmxfa2V5J10gPSAnVVJMIG55Y2tlbCc7CiRsYW5nWydjcmVhdGVkJ10gPSAnU2thcGFkJzsKJGxhbmdbJ2V4cGlyZXMnXSA9ICdGJm91bWw7cmZhbGxlcic7CiRsYW5nWydhZGRlZGl0X3RpbWVsaW1pdGVkX2tleSddID0gJ0FkZC9FZGl0IFRpbWUgTGltaXRlZCBLZXknOwokbGFuZ1sndGltZV9saW1pdGVkX2tleV9hZGRlZCddID0gJ1RpbWUgTGltaXRlZCBLZXkgQWRkZWQnOwokbGFuZ1snbnVtX2hvdXJzJ10gPSAnQW50YWwgdGltbWFyJzsKJGxhbmdbJ251bV9kb3dubG9hZHMnXSA9ICdBbnRhbCBuZWRsYWRkbmluZ2FyJzsKJGxhbmdbJ2VtYWlsX2FkZHJlc3MnXSA9ICdFcG9zdCBhZHJlc3MnOwokbGFuZ1snZXJyb3JfbWlzc2luZ19pbnZhbGlkJ10gPSAnRXR0IHYmYXVtbDtyZGUgc29tIGJlZyZhdW1sO3JkZXMgc2FrbmFzIGVsbGVyICZhdW1sO3Igb2dpbHRpZzogJXMnOwokbGFuZ1snYWRkX3RpbWVsaW1pdGVkX2tleSddID0gJ0FkZCBUaW1lIExpbWl0ZWQgS2V5JzsKJGxhbmdbJ2ZpbGVfaW5mbzInXSA9ICdGaWxlICVzIChpZD0lZCknOwokbGFuZ1snaW5mb190aW1lbGltaXRlZF9kb3dubG9hZHMnXSA9ICdTcGVjaWZ5IHRoZSBkZWZhdWx0IG51bWJlciBvZiB0aW1lcyB0aGF0IGEgZmlsZSBpZGVudGlmaWVkIGJ5IGEgcGFydGljdWxhciBrZXkgY2FuIGJlIGRvd25sb2FkZWQnOwokbGFuZ1sncHJvbXB0X3RpbWVsaW1pdGVkX2Rvd25sb2FkcyddID0gJ0RlZmF1bHQgTnVtYmVyIG9mIERvd25sb2Fkcyc7CiRsYW5nWydpbmZvX3RpbWVsaW1pdGVkX2hvdXJzJ10gPSAnU3BlY2lmeSB0aGUgZGVmYXVsdCBudW1iZXIgb2YgaG91cnMgdGhhdCBhIHRpbWUgbGltaXRlZCBrZXkgaXMgdmFsaWQgZm9yLiAgU3BlY2lmeSAwIGZvciB1bmxpbWl0ZWQnOwokbGFuZ1sncHJvbXB0X3RpbWVsaW1pdGVkX2hvdXJzJ10gPSAnTnVtYmVyIG9mIGhvdXJzIGEgVGltZSBMaW1pdGVkIEtleSBpcyB2YWxpZCBmb3InOwokbGFuZ1sndGltZWxpbWl0ZWRfdXJsX3NldHRpbmdzJ10gPSAnVGltZSBMaW1pdGVkIEtleSBTZXR0aW5ncyc7CiRsYW5nWydtYW5hZ2VfdGltZWxpbWl0ZWQnXSA9ICdNYW5hZ2UgVGltZSBMaW1pdGVkIEFjY2Vzcyc7CiRsYW5nWyd1cGxvYWRpbmdfc2V0dGluZ3MnXSA9ICdGaWxlIFVwbG9hZCBTZXR0aW5ncyc7CiRsYW5nWydnZW5lcmFsX3NldHRpbmdzJ10gPSAnQWxsbSZhdW1sO25uYSBpbnN0JmF1bWw7bGxuaW5nYXInOwokbGFuZ1sndGh1bWJuYWlsX3NldHRpbmdzJ10gPSAnVGh1bWJuYWlsIEdlbmVyYXRpb24nOwokbGFuZ1sndGl0bGVfcmVkaXJlY3Rfb25fc2VuZGZpbGUnXSA9ICdQYWdlIHRvIHJlZGlyZWN0IHRvIGFmdGVyIHNlbmRpbmcgYSBmaWxlJzsKJGxhbmdbJ2xibF9iYWNrJ10gPSAnVGlsbGJha2EnOwokbGFuZ1snbGJsX3RlbXBsYXRlcyddID0gJ1JlZGlnZXJhIG1hbGxhcic7CiRsYW5nWydwcm9tcHRfcHVibGljX2ZpZWxkJ10gPSAnRmllbGQgaXMgcHVibGljIDxlbT4oY2FuIGJlIHZpZXdlZCBieSBzaXRlIHZpc2l0b3JzKTwvZW0+JzsKJGxhbmdbJ3VwbG9hZF9lZGl0ZWQnXSA9ICdGaWxlIERldGFpbHMgRWRpdGVkIG9uICVzJzsKJGxhbmdbJ2luZm9fdGh1bWJuYWlsJ10gPSAnRW4gdmFsZnJpIGZpbCBtZWQgdHVtbmFnZWxiaWxkJzsKJGxhbmdbJ3VwbG9hZF9maWxlJ10gPSAnTGFkZGEgdXBwIGVuIG55IGZpbCc7CiRsYW5nWydtc2dfZmllbGRfZGVsZXRlZCddID0gJ0YmYXVtbDtsdGV0IHJhZGVyYXQnOwokbGFuZ1snYXNrX2RlbGV0ZV9maWVsZCddID0gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgdGhpcyBmaWVsZCBkZWZpbml0aW9uIGFuZCBhbGwgYXNzb2NpYXRlZCB2YWx1ZXM/JzsKJGxhbmdbJ3llcyddID0gJ0phJzsKJGxhbmdbJ25vJ10gPSAnTmVqJzsKJGxhbmdbJ3R5cGUnXSA9ICdUeXAnOwokbGFuZ1snZmllbGR0eXBlX211bHRpc2VsZWN0J10gPSAnTXVsdGlzZWxlY3QgTGlzdCc7CiRsYW5nWydmaWVsZHR5cGVfZHJvcGRvd24nXSA9ICdMaXN0cnV0YSc7CiRsYW5nWydmaWVsZHR5cGVfY2hlY2tib3gnXSA9ICdDaGVja2JveCc7CiRsYW5nWydmaWVsZHR5cGVfdGV4dGFyZWEnXSA9ICdUZXh0YXJlYSc7CiRsYW5nWydmaWVsZHR5cGVfdGV4dGlucHV0J10gPSAnVGV4dGlubWF0bmluZyc7CiRsYW5nWydwcm9tcHRfdXNlX3d5c2l3eWcnXSA9ICdVc2UgdGhlIHd5c2l3eWcgd2hlbiBlZGl0aW5nIHRoZSB2YWx1ZSBmb3IgdGhpcyBmaWVsZCc7CiRsYW5nWydwcm9tcHRfZGVmYXVsdF9jb250ZW50J10gPSAnU3RhbmRhcmQgaW5uZWgmYXJpbmc7bGwgZiZvdW1sO3IgdGV4dGFyZWEnOwokbGFuZ1sncHJvbXB0X2Ryb3Bkb3duX29wdGlvbnMnXSA9ICdWYWwgKGVuIHBvc3QgcGVyIHJhZCknOwokbGFuZ1sncHJvbXB0X2ZpZWxkX21heGxlbmd0aCddID0gJ0ZpZWxkIE1heGltdW0gTGVuZ3RoJzsKJGxhbmdbJ3Byb21wdF9maWVsZF9sZW5ndGgnXSA9ICdGaWVsZCBMZW5ndGgnOwokbGFuZ1sncHJvbXB0X2ZpZWxkX3R5cGUnXSA9ICdGJmF1bWw7bHQgdHlwJzsKJGxhbmdbJ3Byb21wdF9maWVsZF9uYW1lJ10gPSAnRiZhdW1sO2x0bmFtbic7CiRsYW5nWyd0aXRsZV9hZGRfZmllbGQnXSA9ICdBZGQgb3IgRWRpdCBhIEZpZWxkIERlZmluaXRpb24nOwokbGFuZ1snZmllbGRfZGVmaW5pdGlvbnMnXSA9ICdGaWVsZCBEZWZpbml0aW9ucyc7CiRsYW5nWydwcm9tcHRfYWRkX2ZpZWxkJ10gPSAnQWRkIGEgRmllbGQgRGVmaW5pdGlvbic7CiRsYW5nWydwYXJhbV9hY3Rpb24nXSA9ICdTcGVjaWZpZXMgdGhlIGJlaGF2aW91ciBvZiB0aGUgbW9kdWxlIHRhZy4gIFBvc3NpYmxlIHZhbHVlcyBhcmU6IGRlZmF1bHQgLSAodGhlIGRlZmFmYXVsdCBiZWhhdmlvciksIGRldGFpbCAtIHRvIGRpc3BsYXkgYSBkZXRhaWwgdmlldyBvZiBhIHNpbmdsZSBmaWxlIGJhc2VkIG9uIHRoZSB1cGxvYWRfaWQsIGFuZCB5b3VzZW5kaXQgLSB0byBkaXNwbGF5IGEgZm9ybSB0byBhbGxvdyB1cGxvYWRpbmcgYSBmaWxlLCBhbmQgc2VuZGluZyBpdCB0byBudW1lcm91cyBhZGRyZXNzZXMgaW4gb25lIHN0ZXAnOwokbGFuZ1sncGFyYW1fc2VuZGZpbGVwYWdlJ10gPSAnU3BlY2lmeSB0aGUgcGFnZSBpZCBvciBhbGlhcyBvZiBhIHBhZ2UgdGhhdCBzaG91bGQgYmUgdXNlZCBmb3IgdGhlIHNlbmQgYSBmaWxlIGZvcm0nOwokbGFuZ1snZmlsZV91cGxvYWRlZCddID0gJ0ZpbHVwcGxhZGRuaW5nZW4gbHlja2FkZXMnOwokbGFuZ1sndG8nXSA9ICdUaWxsJzsKJGxhbmdbJ3RpdGxlX3lvdXNlbmRpdGZvcm1fdGVtcGxhdGUnXSA9ICdBZGQgb3IgRWRpdCBhICZxdW90O1lvdSBTZW5kIEl0JnF1b3Q7IEZvcm0gVGVtcGxhdGUnOwokbGFuZ1sneW91c2VuZGl0Zm9ybV90ZW1wbGF0ZSddID0gJ1lvdVNlbmRJdCBGb3JtIFRlbXBsYXRlcyc7CiRsYW5nWyd0aXRsZV95b3VzZW5kaXRmb3JtX3N5c2RlZmF1bHQnXSA9ICdTeXN0ZW0gZGVmYXVsdCAmcXVvdDt5b3Ugc2VuZCBpdCZxdW90OyB0ZW1wbGF0ZSc7CiRsYW5nWydtc2dfZmlsZV9zZW50J10gPSAnQSBtZXNzYWdlIGhhcyBiZWVuIHNlbnQgdG8gdGhlIHNlbGVjdGVkIGFkZHJlc3NlcyB0aGF0IGNvbnRhaW5zIGluZm9ybWF0aW9uIGFib3V0IHRoZSBmaWxlIGFuZCBob3cgdG8gcmV0cmlldmUgaXQuJzsKJGxhbmdbJ2Vycm9yX25vYWRkcmVzc2VzJ10gPSAnWW91IG11c3Qgc3VwcGx5IGF0IGxlYXN0IG9uZSBkZXN0aW5hdGlvbiBhZGRyZXNzJzsKJGxhbmdbJ2Vycm9yX25vc3ViamVjdCddID0gJ0R1IG0mYXJpbmc7c3RlIGFuZ2UgZXR0ICZhdW1sO21uZSc7CiRsYW5nWydzdWJqZWN0J10gPSAnJkF1bWw7bW5lJzsKJGxhbmdbJ3RpdGxlX3NlbmRmaWxlcGFnZSddID0gJ1BhZ2UgZm9yICZxdW90O1NlbmQgYSBGaWxlJnF1b3Q7IGZvcm0nOwokbGFuZ1snZmlsZV9pbmZvJ10gPSAnRmlsaW5mbyc7CiRsYW5nWydzZW5kJ10gPSAnU2tpY2thJzsKJGxhbmdbJ25vdGVzJ10gPSAnTm90ZXJpbmdhcic7CiRsYW5nWydhZGRyZXNzZWVzJ10gPSAnU2tpY2thIGluZm9ybWF0aW9uIG9tIGRlbm5hIGZpbCB0aWxsJzsKJGxhbmdbJ3Byb21wdF9zZW5kZmlsZV9lbWFpbF90ZW1wbGF0ZSddID0gJyZxdW90O1NlbmQgYSBGaWxlJnF1b3Q7IEVtYWlsIFRlbXBsYXRlJzsKJGxhbmdbJ3RpdGxlX3NlbmRmaWxlZm9ybV90ZW1wbGF0ZSddID0gJ0FkZCBvciBFZGl0IGEgJnF1b3Q7U2VuZCBhIEZpbGUmcXVvdDsgRm9ybSBUZW1wbGF0ZSc7CiRsYW5nWydzZW5kZmlsZWZvcm1fdGVtcGxhdGUnXSA9ICcmcXVvdDtTZW5kIGEgRmlsZSZxdW90OyBGb3JtIFRlbXBsYXRlcyc7CiRsYW5nWydwcm9tcHRfbm90aWZ5X2VtYWlsX3RlbXBsYXRlJ10gPSAnRmlsZSB1cGxvYWQgbm90aWZpY2F0aW9uIGVtYWlsIHRlbXBsYXRlJzsKJGxhbmdbJ3RpdGxlX3NlbmRmaWxlZm9ybV9zeXNkZWZhdWx0J10gPSAnU3lzdGVtIGRlZmF1bHQgJnF1b3Q7U2VuZCBhIEZpbGUmcXVvdDsgZm9ybSB0ZW1wbGF0ZSc7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnlkZWxldGFibGUnXSA9ICdGaWxlcyBpbiB0aGlzIGNhdGVnb3J5IGNhbiBiZSBkZWxldGVkJzsKJGxhbmdbJ3RpdGxlX2FsbG93X2RlbGV0ZSddID0gJ0FsbG93IGRlbGV0aW9uIG9mIGZpbGVzIGZyb20gdGhlIGZyb250ZW5kJzsKJGxhbmdbJ2RlZmF1bHRfdGVtcGxhdGVzJ10gPSAnU3RhbmRhcmRtYWxsYXInOwokbGFuZ1snZmlyc3RwYWdlJ10gPSAnRiZvdW1sO3JzdGEgc2lkYW4nOwokbGFuZ1sncHJldnBhZ2UnXSA9ICdGJm91bWw7cmVnJmFyaW5nO2VuZGUgc2lkYSc7CiRsYW5nWyduZXh0cGFnZSddID0gJ04mYXVtbDtzdGEgc2lkYSc7CiRsYW5nWydsYXN0cGFnZSddID0gJ1Npc3RhIHNpZGFuJzsKJGxhbmdbJ2ZpcnN0cGFnZV9hcnJvdyddID0gJzw8JzsKJGxhbmdbJ3ByZXZwYWdlX2Fycm93J10gPSAnPCc7CiRsYW5nWyduZXh0cGFnZV9hcnJvdyddID0gJz4nOwokbGFuZ1snbGFzdHBhZ2VfYXJyb3cnXSA9ICc+Pic7CiRsYW5nWydwYWdlJ10gPSAnU2lkYSc7CiRsYW5nWydvZiddID0gJ2F2JzsKJGxhbmdbJ3Byb21wdF9ncm91cGxpc3QnXSA9ICdhdWt0b3Jpc2VyYWRlIEZyb250ZW5kYW52JmF1bWw7bmRhcmUtZ3J1cHBlcic7CiRsYW5nWydpbmZvX2dyb3VwbGlzdCddID0gJ1YmYXVtbDtsaiBkZSBGcm9udGVuZGFudiZhdW1sO25kYXJlLWdydXBwZXIgc29tIHNrYSB0aWxsJmFyaW5nO3RhcyBrb21tYSAmYXJpbmc7dCBmaWxlciBpIGRlbiBoJmF1bWw7ciBrYXRlZ29yaW4uIEF2bWFya2VyYSBhbGxhIHBvc3RlciBmJm91bWw7ciBhdHQgdGlsbCZhcmluZzt0YSBmdWxsICZhcmluZzt0a29tc3QnOwokbGFuZ1sndGl0bGVfc2NhbiddID0gJ0xldGEgZWZ0ZXIgbnlhIGZpbGVyIGkgZGVuIGgmYXVtbDtyIGthdGVnb3Jpbic7CiRsYW5nWyd0aXRsZV9jcmVhdGVfdGh1bWJuYWlscyddID0gJ1NrYXBhIHNha25hZGUgbWluaWF0eXJiaWxkZXIgZiZvdW1sO3IgZmlsZXIgaSBkZW4gaCZhdW1sO3Iga2F0ZWdvcmluLic7CiRsYW5nWydjcmVhdGVfdGh1bWJuYWlscyddID0gJ1NrYXBhIG1pbmlhdHlyYmlsZGVyJzsKJGxhbmdbJ3RpdGxlX2NyZWF0ZV90aHVtYm5haWwnXSA9ICcoJmFyaW5nO3Rlcilza2FwYSBtaW5pYXR5cmJpbGRlciBmJm91bWw7ciBkZW4gaCZhdW1sO3IgZmlsZW4nOwokbGFuZ1snY3JlYXRlX3RodW1ibmFpbCddID0gJ1NrYXBhIG1pbmlhdHlyYmlsZCc7CiRsYW5nWydlcnJvcl9wYXRoZXJyb3InXSA9ICdLdW5kZSBpbnRlICZvdW1sO3BwbmEga2F0YWxvZyAoUiZhdW1sO3R0aWdoZXRzcHJvYmxlbT8pJzsKJGxhbmdbJ3RpdGxlX2Rvd25sb2FkX2NodW5rc2l6ZSddID0gJ1N0b3JsZWsgcCZhcmluZzsgdmFyamUgbmVkbGFkZG5pbmdzLXN0eWNrZSc7CiRsYW5nWydpbmZvX2Rvd25sb2FkX2NodW5rc2l6ZSddID0gJ09tIGR1ICZhdW1sO25kcmFyIGRlbiBoJmF1bWw7ciBwYXJhbWV0ZXJuIHAmYXJpbmc7dmVya2FyIGRldCBuZWRsYWRkbmluZ3NoYXN0aWdoZXRlbiwgb2NoIGthbiBoaiZhdW1sO2xwYSB0aWxsIGkgbWlsaiZvdW1sO2VyIG1lZCBsaXRlIG1pbm5lJzsKJGxhbmdbJ3dhcm5pbmdfc2FmZV9tb2RlJ10gPSAnU2FmZSBtb2RlIGYmb3VtbDtyIFBIUCAmYXVtbDtyIGFrdGl2ZXJhdC4gRGV0dGEga2FuIG9yc2FrYSBwcm9ibGVtIG1lZCBhdHQgbGFkZGEgdXBwIGZpbGVyIChyJmF1bWw7dHRpZ2hldGVyKSBvY2gga2FuIG9ja3MmYXJpbmc7IGludmVya2EgcCZhcmluZzsgZGVuIGgmYXVtbDtyIG1vZHVsZW5zIG0mb3VtbDtqbGlnaGV0ZXIgYXR0IHNraWNrYSBuJmFyaW5nO2dyYSBmaWxlciBwZ2Egc3YmYXJpbmc7cmlnaGV0ZXIgYXR0ICZvdW1sO3ZlcnNrcmlkYSBuJmFyaW5nO2dyYSBhdiBpbmktaW5zdCZhdW1sO2xsbmluZ2FybmEuIER1IHJla29tbWVuZGVyYXMgYXR0IHRhIGtvbnRha3QgbWVkIGRpdHQgd2ViYmhvdGVsbCBmJm91bWw7ciBhdHQgc2Ugb20gZHUga2FuIGYmYXJpbmc7IGRlbSBhdHQgaW5ha3RpdmVyYSBzYWZlIG1vZGUnOwokbGFuZ1sncGFyYW1fZGV0YWlscGFnZSddID0gJ0FudiZhdW1sO25kYmFydCBmJm91bWw7ciBhdHQgdmlzYSBlbiBkZXRhbGplcmFkIHJhcHBvcnQgc29tIGFudiZhdW1sO25kZXIgZW4gYW5uYW4gc2lkbWFsbC4gRGVuIGgmYXVtbDtyIHBhcmFtZXRlcm4gYWNjZXB0ZXJhciBzaWQtaWQgZWxsZXIgc2lkYWxpYXMgZiZvdW1sO3IgZW4gc2lkYSBzb20gc2thIGFudiZhdW1sO25kYXMgZiZvdW1sO3IgYXR0IHZpc2EgZGVuIGRldGFsamVyYWRlIHJhcHBvcnRlbic7CiRsYW5nWydwYXJhbV9wcmVmaXgnXSA9ICdFbiBib29sZWFuIHNvbSBpbmRpa2VyYXIgb20gZmlsbmFtbmV0IHNrYSBoYSBldHQgcHJlZml4JzsKJGxhbmdbJ3BhcmFtX3ByZWZpeF9mZXUnXSA9ICdFbiBib29sZWFuLXBhcmFtZXRlciBzb20gaW5kaWtlcmFyIGF0dCBldHQgcHJlZml4IHNrYSB0YXMgZnImYXJpbmc7biBkZW4gYWt0dWVsbGEgZiZvdW1sO3JmYXR0YXJlbi4gT20gZWogc3BlY2lmaWNlcmF0ICZhdW1sO3IgcHJlZml4ZXQgZGVuIGFrdHVlbGxhIHRpZGVuIChpIGRlY2hleC1mb3JtYXQpJzsKJGxhbmdbJ3BhcmFtX25vY2FwdGNoYSddID0gJ0luYWt0aXZlcmEgY2FwdGNoYS1zdCZvdW1sO2QgKHAmYXJpbmc7IHNvbSBzdGFuZGFyZCkgaSB1cHBsYWRkbmluZ3Nmb3JtdWwmYXVtbDtyZXQnOwokbGFuZ1sndGl0bGVfdXBsb2FkZm9ybV90ZW1wbGF0ZSddID0gJ1JlZGlnZXJhIFVwcGxhZGRuaW5nc2Zvcm11bCZhdW1sO3JtYWxsZW4nOwokbGFuZ1snY2FwdGNoYV90aXRsZSddID0gJ1Nrcml2IGluIHRleHRlbiBzb20gdmlzYXMgaSBkZW4gaCZhdW1sO3IgYmlsZGVuJzsKJGxhbmdbJ2Vycm9yX2NhcHRjaGFtaXNtYXRjaCddID0gJ1RleHRlbiBzb20gc2tyZXZzIGluIG1hdGNoYXIgaW50ZSBiaWxkZW4gc29tIHZpc2FzJzsKJGxhbmdbJ3RpdGxlX2F1dG90aHVtYm5haWxfZXh0ZW5zaW9ucyddID0gJ1NrYSBtaW5pYXR5cmJpbGRlciBmJm91bWw7ciBmaWxlciBtZWQgZGUgaCZhdW1sO3IgZmlsJmF1bWw7bmRlbHNlcm5hJzsKJGxhbmdbJ3RpdGxlX2F1dG90aHVtYm5haWxfc2l6ZSddID0gJ01heGltYWwgc3RvcmxlayAocGl4bGFyKSBmJm91bWw7ciBkZW4gZ2VuZXJlcmFkZSBtaW5pYXR5cmJpbGRlbic7CiRsYW5nWydwcm9tcHRfdXBsb2FkX2ljb24nXSA9ICdMYWRkYSB1cHAgZW4gaWtvbic7CiRsYW5nWydpbmZvX3N5c2RlZmF1bHQnXSA9ICdEZW4gaCZhdW1sO3IgdGV4dGVuIGFudiZhdW1sO25kcyB2aWQgc2thcGFuZGUgYXYgZW4gbnkgbWFsbCBhdiBkZW4gaCZhdW1sO3IgdHlwZW4nOwokbGFuZ1sndGl0bGVfZGV0YWlscnB0X3N5c2RlZmF1bHQnXSA9ICdTeXN0ZW1zdGFuZGFyZG1hbGwgZiZvdW1sO3IgZGV0YWxqcmFwcG9ydCc7CiRsYW5nWyd0aXRsZV9zdW1tYXJ5cnB0X3N5c2RlZmF1bHQnXSA9ICdTeXN0ZW1zdGFuZGFyZG1hbGwgZiZvdW1sO3Igc2FtbWFuZmF0dG5pbmdzcmFwcG9ydCc7CiRsYW5nWyd0aXRsZV91cGxvYWRmb3JtX3N5c2RlZmF1bHQnXSA9ICdTeXN0ZW1zdGFuZGFyZG1hbGwgZiZvdW1sO3IgdXBwbGFkZG5pbmdzZm9ybXVsJmF1bWw7cic7CiRsYW5nWyd0ZW1wbGF0ZSddID0gJ01hbGwnOwokbGFuZ1sncmVzZXR0b2RlZmF1bHQnXSA9ICcmQXJpbmc7dGVyc3QmYXVtbDtsbCB0aWxsIHN0YW5kYXJkdiZhdW1sO3JkZW4nOwokbGFuZ1sndGl0bGVfc3VtbWFyeXJwdF90ZW1wbGF0ZSddID0gJ01hbGwgZiZvdW1sO3Igc3VtbWVyaW5nc3JhcHBvcnQnOwokbGFuZ1sndGl0bGVfZGV0YWlscnB0X3RlbXBsYXRlJ10gPSAnTWFsbCBmJm91bWw7ciBkZXRhbGplcmFkIHJhcHBvcnQnOwokbGFuZ1sncHJvbXB0X25hbWUnXSA9ICdOYW1uJzsKJGxhbmdbJ3Byb21wdF9kZWZhdWx0J10gPSAnU3RhbmRhcmQnOwokbGFuZ1snbGVnZW5kX3VwbG9hZGZvcm0nXSA9ICdMYWRkYSB1cHAgZW4gZmlsJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdwYXJhbSddID0gJ0VuIG4mb3VtbDtkdiZhdW1sO25kaWcgcGFyYW1ldGVyIHNha25hcyc7CiRsYW5nWydlcnJvcl9taXNzaW5nbmFtZSddID0gJ0V0dCBuYW1uIGYmb3VtbDtyIGZpbGVuIG0mYXJpbmc7c3RlIGFuZ2VzJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdleHRlbnNpb25zJ10gPSAnJkFyaW5nO3RtaW5zdG9uZSBlbiBmaWwmYXVtbDtuZGVsc2UgbSZhcmluZztzdGUgYW5nZXMnOwokbGFuZ1snZXJyb3JfbWlzc2luZ2ljb24nXSA9ICdFbiBpa29uIG0mYXJpbmc7c3RlIGFuZ2VzJzsKJGxhbmdbJ2Vycm9yX25vc3VjaHJvdyddID0gJ0RlbiBzcGVjaWZpY2VyYWRlIHJhZGVuIGt1bmRlIGludGUgaGl0dGFzJzsKJGxhbmdbJ25hbWVfdW5rbm93biddID0gJ09rJmF1bWw7bmQvb2smYXVtbDtudCc7CiRsYW5nWydkZXNjcmlwdGlvbl91bmtub3duJ10gPSAnRmlsdHlwc2Jlc2tyaXZuaW5nIGYmb3VtbDtyIG9tYXRjaGFkZSBmaWxlcic7CiRsYW5nWydpbWFnZSddID0gJ0JpbGQnOwokbGFuZ1snaWNvbiddID0gJ0lrb24nOwokbGFuZ1snZXh0ZW5zaW9ucyddID0gJ0ZpbCZhdW1sO25kZWxzZXInOwokbGFuZ1snYWRkZmlsZXR5cGUnXSA9ICdMJmF1bWw7Z2cgdGlsbCBueSBmaWx0eXAnOwokbGFuZ1snZmlsZV90eXBlcyddID0gJ0ZpbHR5cGVyJzsKJGxhbmdbJ2Vycm9yX25vY2F0ZWdvcnlpZCddID0gJ0luZ2V0IGthdGVnb3JpLUlEIGFuZ2F2cyc7CiRsYW5nWydlcnJvcl9ub2NhdGVnb3J5J10gPSAnSW5nZXQga2F0ZWdvcmktSUQgYW5nYXZzJzsKJGxhbmdbJ2Vycm9yX3RlbXBsYXRlbmFtZWV4aXN0cyddID0gJ0VuIG1hbGwgbWVkIGRldCBuYW1uZXQgZmlubnMgcmVkYW4nOwokbGFuZ1sncHJvbXB0X3RlbXBsYXRlbmFtZSddID0gJ01hbGxuYW1uJzsKJGxhbmdbJ3Byb21wdF90ZW1wbGF0ZSddID0gJ01hbGwnOwokbGFuZ1sncHJvbXB0X25ld3RlbXBsYXRlJ10gPSAnU2thcGEgZW4gbnkgbWFsbCc7CiRsYW5nWydoZWxwX09uRG93bmxvYWQnXSA9ICc8cD5FbiBoJmF1bWw7bmRlbHNlIHNvbSB1dGYmb3VtbDtycyBuJmF1bWw7ciBlbiBhbnYmYXVtbDtuZGFyZSBzbHV0ZiZvdW1sO3IgbmVkbGFkZG5pbmcgYXYgZW4gZmlsPC9wPg0KPHVsPg0KPGxpPjxlbT5pZDwvZW0+IC0gVXBwbGFkZG5pbmdzLUlEPC9saT4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gRmlsbmFtbjwvbGk+DQo8bGk+PGVtPmlwPC9lbT4gLSBOZWRsYWRkYXJlbnMgSVAtYWRyZXNzPC9saT4NCjwvdWw+DQonOwokbGFuZ1snaGVscF9PbkRlbGV0ZUNhdGVnb3J5J10gPSAnPHA+RW4gaCZhdW1sO25kZWxzZSBzb20gdXRmJm91bWw7cnMgbiZhdW1sO3IgZW4ga2F0ZWdvcmkgdGFzIGJvcnQ8L3A+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIEthdGVnb3JpbmFtbjwvbGk+DQo8bGk+PGVtPnBhdGg8L2VtPiAtIFMmb3VtbDtrdiZhdW1sO2cgZiZvdW1sO3Iga2F0ZWdvcmk8L2xpPg0KPC91bD4NCic7CiRsYW5nWydoZWxwX09uQ3JlYXRlQ2F0ZWdvcnknXSA9ICc8cD5FbiBoJmF1bWw7bmRlbHNlIHNvbSB1dGYmb3VtbDtycyBuJmF1bWw7ciBlbiBrYXRlZ29yaSBza2FwYXM8L3A+DQo8aDQ+UGFyYW1ldHJhcjwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIEthdGVnb3JpbnMgbmFtbjwvbGk+DQo8bGk+PGVtPmRlc2NyaXB0aW9uPC9lbT4gLSBLYXRlZ29yaW5zIGJlc2tyaXZuaW5nPC9saT4NCjxsaT48ZW0+cGF0aDwvZW0+IC0gS2F0ZWdvcmlucyBzJm91bWw7a3YmYXVtbDtnPC9saT4NCjxsaT48ZW0+cGF0aDwvZW0+IC0gRW4gZmxhZ2dhIHNvbSBpbmRpa2VyYXIgb20ga2F0ZWdvcmluIGthbiBsaXN0YXM8L2xpPg0KPC91bD4NCic7CiRsYW5nWydoZWxwX09uUmVtb3ZlJ10gPSAnPHA+RW4gaCZhdW1sO25kZWxzZSBzb20gdXRmJm91bWw7cnMgbiZhdW1sO3IgZW4gZmlsIHRhcyBib3J0IHZpYSBhZG1pbmlzdHJhdGlvbmVuIGVsbGVyIGZyb250ZW5kLWdyJmF1bWw7bnNzbml0dGV0PC9wPg0KPGg0PlBhcmFtZXRyYXI8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBOYW1uZXQgcCZhcmluZzsgZGVuIGJvcnR0YWduYSBmaWxlbjwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBEZW4gYm9ydHRhZ25hIGZpbGVucyBJRDwvbGk+DQo8bGk+PGVtPmNhdGVnb3J5X2lkPC9lbT4gLSBLYXRlZ29yaW5zIElEPC9saT4NCjwvdWw+DQonOwokbGFuZ1snaGVscF9PblVwbG9hZCddID0gJzxwPkVuIGgmYXVtbDtuZGVsc2Ugc29tIHV0ZiZvdW1sO3JzIG4mYXVtbDtyIGVuIGZpbCBsYWRkYXMgdXBwIHZpYSBhZG1pbmlzdHJhdGlvbmVuIGVsbGVyIGZyb250ZW5kLWdyJmF1bWw7bnNzbml0dGV0PC9wPg0KPGg0PlBhcmFtZXRyYXI8L2g0Pg0KPHVsPg0KPGxpPjxlbT5jYXRlZ29yeTwvZW0+IC0gS2F0ZWdvcmlucyBuYW1uPC9saT4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gRGVuIHVwcGxhZGRhZGUgZmlsZW5zIG5hbW48L2xpPg0KPGxpPjxlbT5zaXplPC9lbT4gLSBTdG9ybGVrZW4gcCZhcmluZzsgZGVuIHVwcGxhZGRhZGUgZmlsZW48L2xpPg0KPGxpPjxlbT5zdW1tYXJ5PC9lbT4gLSBEZW4gdXBwbGFkZGFkZSBmaWxlbnMga29ydGZhdHRhZGUgYmVza3Jpdm5pbmcgKGthbiB2YXJhIHRvbSk8L2VtPjwvbGk+DQo8bGk+PGVtPmRlc2NyaXB0aW9uPC9lbT4gLSBEZW4gdXBwbGFkZGFkZSBmaWxlbnMgbCZhcmluZztuZ2EgYmVza3Jpdm5pbmcgKGthbiB2YXJhIHRvbSk8L2VtPjwvbGk+DQo8bGk+PGVtPmF1dGhvcjwvZW0+IC0gRGVuIHVwcGxhZGRlIGZpbGVucyBmJm91bWw7cmZhdHRhcmUgKG9tIG4mYXJpbmc7Z29uKTwvZW0+PC9saT4NCjxsaT48ZW0+aXBfYWRkcmVzczwvZW0+IC0gSW50ZXJuZXQtYWRyZXNzZW4gZiZvdW1sO3IgZGVuIGtsaWVudCBzb20gbGFkZGFkZSB1cHAgZmlsZW48L2xpPg0KPC91bD4NCic7CiRsYW5nWydpbmZvX2V2ZW50X29uZGVsZXRlY2F0ZWdvcnknXSA9ICdIJmF1bWw7bmRlbHNlIHNvbSB1dGYmb3VtbDtycyBuJmF1bWw7ciBlbiBrYXRlZ29yaSB0YXMgYm9ydCc7CiRsYW5nWydpbmZvX2V2ZW50X29uY3JlYXRlY2F0ZWdvcnknXSA9ICdIJmF1bWw7bmRlbHNlIHNvbSB1dGYmb3VtbDtycyBuJmF1bWw7ciBlbiBrYXRlZ29yaSBza2FwYXMnOwokbGFuZ1snaW5mb19ldmVudF9vbmRvd25sb2FkJ10gPSAnSCZhdW1sO25kZWxzZSBzb20gdXRmJm91bWw7cnMgbiZhdW1sO3IgZW4gZmlsIGxhZGRhcyBuZXInOwokbGFuZ1snaW5mb19ldmVudF9vbnVwbG9hZCddID0gJ0gmYXVtbDtuZGVsc2Ugc29tIHV0ZiZvdW1sO3JzIG4mYXVtbDtyIGVuIG55IGZpbCBsYWRkYXMgdXBwJzsKJGxhbmdbJ2luZm9fZXZlbnRfb25yZW1vdmUnXSA9ICdIJmF1bWw7bmRlbHNlIHNvbSB1dGYmb3VtbDtycyBuJmF1bWw7ciBlbiBmaWwgdGFzIGJvcnQnOwokbGFuZ1sndGl0bGVfdXNlcnRhZ19vbnVwbG9hZCddID0gJ0FudiZhdW1sO25kYXJkZWZpbmllcmFkZSB0YWdnYXIgc29tIGthbGxhcyBlZnRlciBhdHQgdXBwbGFkZG5pbmdlbiAmYXVtbDtyIGtvbXBsZXR0JzsKJGxhbmdbJ25vbmUnXSA9ICdJbmdhJzsKJGxhbmdbJ21hdGNoZXNmb3VuZCddID0gJ1RyJmF1bWw7ZmZhciBoaXR0YWRlJzsKJGxhbmdbJ2ZpbHRlciddID0gJ0ZpbHRlciAnOwokbGFuZ1sndGl0bGVfcmVkaXJlY3RvbnVwbG9hZCddID0gJ09tZGlyaWdlcmEgdGlsbCBzaWQtSUQvLWFsaWFzIG4mYXVtbDtyIGFudiZhdW1sO25kYXJlIGxhZGRhciB1cHAnOwokbGFuZ1snZGV0YWlscyddID0gJ0RldGFsamVyJzsKJGxhbmdbJ2NvbmZpcm1fcHJlZmVyZW5jZXMnXSA9ICcmQXVtbDtyIGR1IHMmYXVtbDtrZXIgcCZhcmluZzsgYXR0IGR1IHZpbGwgJmF1bWw7bmRyYSBpbnN0JmF1bWw7bGxuaW5nYXJuYT8nOwokbGFuZ1snZXJyb3Jfbm9maWxlc3VwbG9hZGVkJ10gPSAnSW5nYSBmaWxlciBsYWRkYWRlcyB1cHAuJzsKJGxhbmdbJ3Byb21wdF9yZXBsYWNlJ10gPSAnVGlsbCZhcmluZzt0IGF0dCBza3JpdmEgJm91bWw7dmVyJzsKJGxhbmdbJ2luZm9fcmVwbGFjZSddID0gJ0VycyZhdW1sO3R0IGFsbGEgZmlsZXIgbWVkIHNhbW1hIG5hbW4gKCZhdW1sO25kcmFyIGludGUgaWQtbnVtcmV0KSc7CiRsYW5nWydwYXJhbV9ub19pbml0aWFsJ10gPSAnVmlzYSBpbnRlIG4mYXJpbmc7Z3JhIGlubGVkYW5kZSByZXN1bHRhdCBuJmF1bWw7ciBkZXQgaCZhdW1sO3IgZmlsdHJldCAmYXVtbDtyIHAmYXJpbmc7JzsKJGxhbmdbJ3BhcmFtX2tleSddID0gJ0wmYXVtbDtnZyB0aWxsIHl0dGVybGlnYXJlIGVuIG55Y2tlbCBmJm91bWw7ciBtb2R1bGVuIGYmb3VtbDtyIHZpZGFyZSBvcmdhbmlzZXJpbmcgYXYgdXBwbGFkZG5pbmdhci4gRGVubmEgbnlja2VsIGthbiB2YXJhIGVuIGtvZGFkIHN0ciZhdW1sO25nIHNvbSAmIzAzOTtmZXVzZXJzOnVpZCYjMDM5OyBvc3YuIERlbm5hIHBhcmFtZXRlciBiZWgmb3VtbDt2cyBub3JtYWx0IGJhcmEgbiZhdW1sO3IgdXBwbGFkZG5pbmdzbW9kdWxlbiBiJmF1bWw7ZGRhcyBpbiBpIGVuIGFubmFuIG1vZHVsZSc7CiRsYW5nWydwYXJhbV9ub2F1dGhvciddID0gJ0Qmb3VtbDtsaiBmJmF1bWw7bHRldCBmJm91bWw7ciBmJm91bWw7cmZhdHRhcmUgaSB1cHBsYWRkbmluZ3Nmb3JtdWwmYXVtbDtyZXQuIERlbm5hIHBhcmFtZXRlciAmYXVtbDtyIGJhcmEgZ2lsdGlnIG4mYXVtbDtyIG1vZGU9JiMwMzk7dXBsb2FkJiMwMzk7LiBPbSBtb2R1bGVuIEZyb250ZW5kVXNlcnMgYW52JmF1bWw7bmRzIG9jaCBlbiBhbnYmYXVtbDtuZGFyZSBmJm91bWw7ciB0aWxsZiZhdW1sO2xsZXQgJmF1bWw7ciBpbmxvZ2dhZCwgc3BhcmFzIGRldCBpbmxvZ2dhZGUgYW52JmF1bWw7bmRhcm5hbW5ldCBpIGV0dCBkb2x0IGYmYXVtbDtsdC4nOwokbGFuZ1sncGFyYW1fdXBsb2FkX2lkJ10gPSAndXBsb2FkX2lkPSZxdW90O2lkJnF1b3Q7IC0gYW5nZSBlbiBlbnNraWxkIGZpbCBmJm91bWw7ciB1cmwvbCZhdW1sO25rIGVsbGVyIHNpbmdsZSBtb2RlIChvdmFuKSc7CiRsYW5nWydwYXJhbV9kZXRhaWx0ZW1wbGF0ZSddID0gJ0FudiZhdW1sO25kIGVuIG1hbGwgbWVkIGRldHRhIG5hbW5ldCBmJm91bWw7ciBkZW4gZGV0YWxqZXJhZGUgcmFwcG9ydGVuLic7CiRsYW5nWydwYXJhbV90ZW1wbGF0ZSddID0gJ0FudiZhdW1sO25kIGVuIG1hbGwgbWVkIGRldHRhIG5hbW5ldCBmJm91bWw7ciBkZW4gaCZhdW1sO3IgcmFwcG9ydGVuIGVsbGVyIGZvcm11bCZhdW1sO3JldC4gRGVubmEgbWFsbGVuIHRhciBhdXRvbWF0aXNrdCBtYWxsZW4gbWVkIG1vdHN2YXJhbmRlIG5hbW4gZnImYXJpbmc7biBwYXNzYW5kZSBsaXN0YSBiZXJvZW5kZSBwJmFyaW5nOyBzdGlsIChtb2RlKSc7CiRsYW5nWydwYXJhbV9maWx0ZXInXSA9ICdWaXNhIGZpbHRlcmZvcm11bCZhdW1sO3JldCc7CiRsYW5nWydwYXJhbV9ub19pbnRpdGlhbCddID0gJ0JhcmEgYW52JmF1bWw7bmRiYXIgbiZhdW1sO3IgZmlsdGVycGFyYW1ldGVybiBhbnYmYXVtbDtuZHMsIGVsbGVyIG4mYXVtbDtyIGRlbiAmYXVtbDtyIHAmYXJpbmc7IHNvbSBzdGFuZGFyZC4gRGVuIGgmYXVtbDtyIHBhcmFtZXRlcm4gaW5kaWtlcmFyIG9tIGlubGVkYW5kZSByZXN1bHRhdCBza2EgcmV0dXJuZXJhcyc7CiRsYW5nWydwYXJhbV9maWxldHlwZXMnXSA9ICdWaXNhIGJhcmEgZmlsZXIgdmFycyB0eXAgc3QmYXVtbDttbWVyICZvdW1sO3ZlcmVuc2UgbWVkIGRlbm5hIGtvbW1hc2VwYXJlcmFkZSBsaXN0YSc7CiRsYW5nWydwYXJhbV9zb3J0b3JkZXInXSA9ICcgIDxwPlNvcnRlcmluZ3NvcmRuaW5nYXINCiAgPHVsPg0KICA8bGk+PGVtPmRhdGVfYXNjPC9lbT4gLSBTb3J0ZXJhIGVmdGVyIGRhdHVtLCBzdGlnYW5kZTwvbGk+DQogIDxsaT48ZW0+ZGF0ZV9kZXNjPC9lbT4gLSBTb3J0ZXJhIGVmdGVyIGRhdHVtLCBmYWxsYW5kZTwvbGk+DQogIDxsaT48ZW0+bmFtZV9hc2M8L2VtPiAtIFNvcnRlcmEgZWZ0ZXIgbmFtbiwgc3RpZ2FuZGU8L2xpPg0KICA8bGk+PGVtPm5hbWVfZGVzYzwvZW0+IC0gU29ydGVyYSBlZnRlciBuYW1uLCBmYWxsYW5kZTwvbGk+DQogIDxsaT48ZW0+c2l6ZV9hc2M8L2VtPiAtIFNvcnRlcmEgZWZ0ZXIgc3Rvcmxlaywgc3RpZ2FuZGU8L2xpPg0KICA8bGk+PGVtPnNpemVfZGVzYzwvZW0+IC0gU29ydGVyYSBlZnRlciBzdG9ybGVrLCBmYWxsYW5kZTwvbGk+DQogIDxsaT48ZW0+ZGVzY19hc2M8L2VtPiAtIFNvcnRlcmEgZWZ0ZXIgYmVza3Jpdm5pbmcsIHN0aWdhbmRlPC9saT4NCiAgPGxpPjxlbT5kZXNjX2Rlc2M8L2VtPiAtIFNvcnRlcmEgZWZ0ZXIgYmVza3Jpdm5pbmcsIGZhbGxhbmRlPC9saT4NCiAgPGxpPjxlbT5hdXRob3JfYXNjPC9lbT4gLSBTb3J0ZXJhIGVmdGVyIGYmb3VtbDtyZmF0dGFyZSwgc3RpZ2FuZGU8L2xpPg0KICA8bGk+PGVtPmF1dGhvcl9kZXNjPC9lbT4gLSBTb3J0ZXJhIGVmdGVyIGYmb3VtbDtyZmF0dGFyZSwgZmFsbGFuZGU8L2xpPg0KICA8bGk+PGVtPmlwX2FzYzwvZW0+IC0gU29ydGVyYSBlZnRlciBJUC1hZHJlc3MsIHN0aWdhbmRlPC9saT4NCiAgPGxpPjxlbT5pcF9kZXNjPC9lbT4gLSBTb3J0ZXJhIGVmdGVyIElQLWFkcmVzcywgZmFsbGFuZGU8L2xpPg0KICA8bGk+PGVtPnJhbmRvbTwvZW0+IC0gU2x1bXB2aXMgc29ydGVyaW5nc29yZG5pbmc8L2xpPg0KICA8L3VsPg0KICA8L3A+JzsKJGxhbmdbJ3BhcmFtX2xpc3Rpbmd0ZW1wbGF0ZSddID0gJ01hbGwgYXR0IGFudiZhdW1sO25kYSBmJm91bWw7ciBrYXRlZ29yaWxpc3RuaW5nYXIgZWZ0ZXIgYXR0IGhhIGtsaWNrYXQgdmlhIGthdGVnb3Jpc2FtbWFuZmF0dG5pbmdzc2lkYW4nOwokbGFuZ1sncGFyYW1fbGlzdGluZ3NvcnRvcmRlciddID0gJ1NvcnRlcmluZ3NvcmRuaW5nIChwYXJhbV9zb3J0b3JkZXIpIGF0dCBhbnYmYXVtbDtuZGEgdmlkIGxpc3RuaW5nIGF2IGthdGVnb3JpZXIgZWZ0ZXIgYXR0IGhhIGtsaWNrYXQgdmlhIGthdGVnb3Jpc2FtbWFuZmF0dG5pbmdzc2lkYW4nOwokbGFuZ1sncGFyYW1fZmlsZWV4dGVuc2lvbnMnXSA9ICcgDQpmaWxlX2V4dGVuc2lvbnM9JnF1b3Q7ZXh0MSxleHQyLGV4dDMmcXVvdDsNCjxwPmcmYXVtbDtsbGVyIGVuYmFydCBuJmF1bWw7ciBtb2RlPXVwbG9hZC4gRGVuIGgmYXVtbDtyIHBhcmFtZXRlcm4gYmVnciZhdW1sO25zYXIgdmlsa2EgZmlsdHlwZXIgc29tIGthbiBsYWRkYXMgdXBwLiBEZW4gdXBwaCZhdW1sO3ZlciBpbnN0JmF1bWw7bGxuaW5nYXJuYSBpIG1vZHVsaW5zdCZhdW1sO2xsbmluZ2FyLjwvcD4nOwokbGFuZ1sncGFyYW1fY291bnQnXSA9ICdjb3VudD0mcXVvdDtOJnF1b3Q7DQo8cD5FbiBwYXJhbWV0ZXIgZiZvdW1sO3IgYXR0IGxpc3RhIGVuYmFydCBkZSBOIGYmb3VtbDtyc3RhIHJlc3VsdGF0ZW4gaSBlbiBmciZhcmluZztnYS4gU2lkaW5kZWxuaW5nIChwYWdpbmF0aW9uKSBza3VsbGUgdmFyYSBiJmF1bWw7dHRyZSwgbWVuIGRldCBoJmF1bWw7ciBmdW5rYXIgdGlsbHMgdmlkYXJlPC9wPic7CiRsYW5nWydwYXJhbV9jYXRlZ29yeSddID0gJ2NhdGVnb3J5PSZxdW90O25hbWUmcXVvdDsNCjxwPjxiPk5vdGVyYTo8L2I+IEthdGVnb3JpIGthbiB2YXJhICZxdW90O2FsbCZxdW90OyAoYWxsYSksIHZpbGtldCBsaXN0YXIgYWxsYSB1cHBsYWRkbmluZ2FyIGZyJmFyaW5nO24gYWxsYSA8ZW0+bGlzdGJhcmE8L2VtPiBrYXRlZ29yaWVyPC9wPic7CiRsYW5nWydwYXJhbV9tb2RlJ10gPSAnICA8dWw+DQogIDxsaT48ZW0+ZGV0YWlsZWQ8L2VtPiAtIFZpc2EgZW4gZGV0YWxqZXJhZCBsaXN0YSAmb3VtbDt2ZXIgYWxsYSBmaWxlciBpIGthdGVnb3JpbjwvbGk+DQogIDxsaT48ZW0+dXBsb2FkPC9lbT4gLSBWaXNhIGV0dCBmb3JtdWwmYXVtbDtyIGYmb3VtbDtyIGF0dCBsJmFyaW5nO3RhIGVuIGFudiZhdW1sO25kYXJlIGxhZGRhIHVwcCBmaWxlciB2aWEgaGVtc2lkYW48L2xpPg0KICA8bGk+PGVtPnVybCA8aT5vcjwvaT4gbGluazwvZW0+IC0gVmlzYSBlbiBsJmF1bWw7bmsgdGlsbCBlbiBmaWw8L2xpPg0KICA8bGk+PGVtPnN1bW1hcnk8L2VtPiAtIFZpc2EgZW4gc2FtbWFuZmF0dGFkIGxpc3RhICZvdW1sO3ZlciBhbGxhIGZpbGVyIGkgZW4ga2F0ZWdvcmk8L2xpPg0KICA8bGk+PGVtPnNpbmdsZTwvZW0+IC0gVmlzYSBlbiBkZXRhbGplcmFkIHJhcHBvcnQgb20gZW4gZW5za2lsZCB1cHBsYWRkbmluZzwvbGk+DQogIDwvdWw+JzsKJGxhbmdbJ3BhcmFtX3NlbGVjdGZvcm0nXSA9ICdXaGVuIHVzaW5nIHRoZSAmIzAzOTtzZWxlY3QmIzAzOTsgbW9kZSwgdGhpcyBwYXJhbWV0ZXIgaXMgdGhlIGZvcm1pZCBvZiB0aGUgcGFyZW50IGZvcm0uICBVc2VkIHRvIGhhbmRsZSBwYXJhbWV0ZXIgcGFzc2luZyc7CiRsYW5nWydwYXJhbV9zZWxlY3RuYW1lJ10gPSAnd2hlbiB1c2luZyB0aGUgJiMwMzk7c2VsZWN0JiMwMzk7IG1vZGUsIHRoaXMgcGFyYW1ldGVyIHNwZWNpZmllcyB0aGUgbmFtZSBvZiB0aGUgZmllbGQnOwokbGFuZ1sncGFyYW1fc2VsZWN0dmFsdWUnXSA9ICdXaGVuIHVzaW5nIHRoZSAmIzAzOTtzZWxlY3QmIzAzOTsgbW9kZSwgdGhpcyBwYXJhbWV0ZXIgc3BlY2lmaWVzIHRoZSBkZWZhdWx0IGZpZWxkIHZhbHVlJzsKJGxhbmdbJ3BhcmFtX3NlbGVjdG5vbmUnXSA9ICdXaGVuIHVzaW5nIHRoZSAmIzAzOTtzZWxlY3QmIzAzOTsgbW9kZSwgdGhpcyBwYXJhbWV0ZXIgc3BlY2lmaWVzIHdldGhlciAmIzAzOTtub25lJiMwMzk7IGlzIGEgdmFsaWQgY2hvaWNlLic7CiRsYW5nWydyZXR1cm50b21vZHVsZSddID0gJ1RpbGxiYWthIHRpbGwgbW9kdWxwYW5lbGVuJzsKJGxhbmdbJ2Vycm9yX25vY2F0ZWdvcmllcyddID0gJ0RldCBmaW5ucyBpbmdhIGRlZmluaWVyYWRlIGthdGVnb3JpZXInOwokbGFuZ1sndGl0bGVfZW5mb3JjZWV4dGVuc2lvbnMnXSA9ICdLciZhdW1sO3ZlciBmaWx0aWxsJmF1bWw7Z2cgZiZvdW1sO3IgYWxsYSB1cHBsYWRkYWRlIGZpbGVyJzsKJGxhbmdbJ3Jlc3RvcmVkZWZhdWx0c2NvbmZpcm0nXSA9ICdEZXR0YSAmYXJpbmc7dGVyc3QmYXVtbDtsbGVyIG1hbGxhcm5hIHRpbGwgc3lzdGVtc3RhbmRhcmQuIEFsbGEgZiZvdW1sO3ImYXVtbDtuZHJpbmdhciBzb20gZHUgaGFyIGdqb3J0IGtvbW1lciBhdHQgZiZvdW1sO3Jsb3Jhcy4gJkF1bWw7ciBkdSBzJmF1bWw7a2VyIHAmYXJpbmc7IGF0dCBkdSB2aWxsIGZvcnRzJmF1bWw7dHRhPyc7CiRsYW5nWyd0aHVtYm5haWwnXSA9ICdUdW1uYWdlbGJpbGQnOwokbGFuZ1snbmV3dGh1bWJuYWlsJ10gPSAnTGFkZGEgdXBwIG55IHR1bW5hZ2VsYmlsZCc7CiRsYW5nWydpbmZvX3N1bW1hcnknXSA9ICdFbiBrb3J0IGJlc2tyaXZuaW5nIGF2IGZpbGVuIChvbSB0b20gYW52JmF1bWw7bmRzIGZpbG5hbW5ldCB1dGFuIGRlc3MgZmlsdGlsbCZhdW1sO2dnKSc7CiRsYW5nWydpbmZvX2NhdGVnb3J5bmFtZSddID0gJ0VuIGtvcnQgYmVza3Jpdm5pbmcgYXYgZGluIGthdGVnb3JpIChmJm91bWw7ciBhbGxtJmF1bWw7bmhldGVuKSc7CiRsYW5nWydpbmZvX2NhdGVnb3J5ZGVzYyddID0gJ0VuIGJlc2tyaXZuaW5nIGF2IGRpbiBrYXRlZ29yaSc7CiRsYW5nWydpbmZvX2NhdGVnb3J5cGF0aCddID0gJ05hbW5ldCBwJmFyaW5nOyBrYXRhbG9nZW4gdW5kZXIga2F0YWxvZ2VuIHVwbG9hZHMsIHNvbSBza2EgYW52JmF1bWw7bmRhcyBmJm91bWw7ciBhdHQgc3BhcmEgZmlsZXIgaSBkZW4gaCZhdW1sO3Iga2F0ZWdvcmluLiBPbSBrYXRhbG9nZW4gbWVkIGRldCBoJmF1bWw7ciBuYW1uZXQgaW50ZSBmaW5ucywgcyZhcmluZzsga2FuIGRlbiBza2FwYXMuJzsKJGxhbmdbJ2luZm9fZGVzdG5hbWUnXSA9ICdBbnYmYXVtbDtuZCBkZXQgaCZhdW1sO3IgZiZhdW1sO2x0ZXQgZiZvdW1sO3IgYXR0ICZhdW1sO25kcmEgbmFtbmV0IHAmYXJpbmc7IGZpbGVuIHZpZCB1cHBsYWRkbmluZyc7CiRsYW5nWydlcnJvcl9jYW50Y3JlYXRlZGlyZWN0b3J5J10gPSAnS3VuZGUgaW50ZSBza2FwYSBrYXRhbG9nJzsKJGxhbmdbJ2Vycm9yX25vbWFpbGVybW9kdWxlJ10gPSAnTW9kdWxlbiBDTVNNYWlsZXIga3VuZGUgaW50ZSBza2FwYSBlbiBpbnN0YW5zJzsKJGxhbmdbJ3VwbG9hZF9ub3RpZmljYXRpb24nXSA9ICdFbiBueSBmaWwgaGFyIGxhZGRhdHMgdXBwJzsKJGxhbmdbJ3RpdGxlX2VtYWlsX29uX3VwbG9hZCddID0gJ1NraWNrYSBlcG9zdCB2aWQgdXBwbGFkZG5pbmcgdGlsbDonOwokbGFuZ1snZW1haWxfdGVtcGxhdGUnXSA9ICdFcG9zdG1hbGwnOwokbGFuZ1sndGl0bGVfZHVtbXlfaW5kZXhfaHRtbCddID0gJ1NrYXBhIGluZGV4Lmh0bWwtZmlsZXIgaSB2YXJqZSBtYXBwPzxici8+PGVtPkFsbGEgYmVmaW50bGlnYSBpbmRleC5odG1sLWZpbGVyIGtvbW1lciBhdHQgZmlubmFzIGt2YXI8L2VtPic7CiRsYW5nWydhYm91dCddID0gJ09tJzsKJGxhbmdbJ2Vycm9yX3Blcm1pc3Npb25kZW5pZWQnXSA9ICcmQXJpbmc7dGtvbXN0IG5la2FkLiBLb250cm9sbGVyYSBkaW5hIHImYXVtbDt0dGlnaGV0ZXIuJzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90d3JpdGUnXSA9ICdLdW5kZSBpbnRlIHNrcml2YSc7CiRsYW5nWydhZGRjYXRlZ29yeSddID0gJ0wmYXVtbDtnZyB0aWxsIGthdGVnb3JpJzsKJGxhbmdbJ2FsbCddID0gJ0FsbGEnOwokbGFuZ1snYXJleW91c3VyZSddID0gJyZBdW1sO3IgZHUgcyZhdW1sO2tlcj8nOwokbGFuZ1snYXV0aG9yJ10gPSAnRiZvdW1sO3JmYXR0YXJlJzsKJGxhbmdbJ2NhbmNlbCddID0gJyZBcmluZztuZ3JhJzsKJGxhbmdbJ2Nhbm5vdG1vZGlmeXBhdGgnXSA9ICcoUyZvdW1sO2t2JmF1bWw7Z2VuIGthbiBpbnRlICZhdW1sO25kcmFzKSc7CiRsYW5nWydjYXRlZ29yaWVzJ10gPSAnS2F0ZWdvcmllcic7CiRsYW5nWydjYXRlZ29yeSddID0gJ0thdGVnb3JpJzsKJGxhbmdbJ21lc3NhZ2VfY2F0ZWdvcnlhZGRlZCddID0gJ0thdGVnb3JpbiBoYXIgbGFndHMgdGlsbCc7CiRsYW5nWydkYXRlJ10gPSAnRGF0dW0nOwokbGFuZ1snZGF0ZXVwbG9hZGVkJ10gPSAnRGF0dW0gdXBwbGFkZGFkJzsKJGxhbmdbJ2RlZmF1bHQnXSA9ICdTdGFuZGFyZGluc3QmYXVtbDtsbG5pbmdhcic7CiRsYW5nWydkZWxldGUnXSA9ICdUYSBib3J0JzsKJGxhbmdbJ2Rlc2NyaXB0aW9uJ10gPSAnQmVza3Jpdm5pbmcnOwokbGFuZ1snZGVzdG5hbWUnXSA9ICdMYWRkYSB1cHAgc29tJzsKJGxhbmdbJ2RldGFpbF90ZW1wbGF0ZSddID0gJ0RldGFsam1hbGwnOwokbGFuZ1snZG93bmxvYWRlZCddID0gJ0ZpbGVuICVzICZhdW1sO3IgbmVkbGFkZGFkLic7CiRsYW5nWydkb3dubG9hZHMnXSA9ICdOZWRsYWRkbmluZ2FyJzsKJGxhbmdbJ2VkaXQnXSA9ICdSZWRpZ2VyYSc7CiRsYW5nWydlZGl0Y2F0ZWdvcnknXSA9ICdSZWRpZ2VyYSBrYXRlZ29yaSc7CiRsYW5nWydlZGl0dXBsb2FkJ10gPSAnUmVkaWdlcmEgdXBwbGFkZG5pbmcnOwokbGFuZ1snZXJyb3InXSA9ICdGZWwhJzsKJGxhbmdbJ2Vycm9yX3BhdGhpbnVzZTInXSA9ICdBIGNhdGVnb3J5IHVzaW5nIHRoZSBwYXRoICglcykgYWxyZWFkeSBleGlzdHMnOwokbGFuZ1snZXJyb3JfcGF0aGludXNlJ10gPSAnRW4ga2F0ZWdvcmkgbWVkIGRlbiBzJm91bWw7a3YmYXVtbDtnZW4gZmlubnMgcmVkYW4nOwokbGFuZ1snZXJyb3JfY2F0ZWdvcnlleGlzdHMyJ10gPSAnRXJyb3I6IENhdGVnb3J5IG5hbWVkICVzIGFscmVhZHkgZXhpc3RzJzsKJGxhbmdbJ2Vycm9yX2NhdGVnb3J5ZXhpc3RzJ10gPSAnRmVsOiBLYXRlZ29yaW4gZmlubnMgcmVkYW4nOwokbGFuZ1snZXJyb3JfY2F0ZWdvcnlub3RlbXB0eSddID0gJ0ZlbCEgS2FuIGludGUgdGEgYm9ydCBlbiBrYXRlZ29yaSBzb20gaW50ZSAmYXVtbDtyIHRvbSc7CiRsYW5nWydlcnJvcl9jYXRlZ29yeW5vdGZvdW5kJ10gPSAnRmVsOiBLYXRlZ29yaW4gaGl0dGFzIGludGUhJzsKJGxhbmdbJ2Vycm9yX2RiZXJyb3InXSA9ICdGZWw6IERhdGFiYXNmZWwhJzsKJGxhbmdbJ2Vycm9yX2VtcHR5Y2F0ZWdvcnknXSA9ICdGZWw6IFRvbSBrYXRlZ29yaSEnOwokbGFuZ1snZXJyb3JfZW1wdHlwYXRoJ10gPSAnRmVsOiBUb20gcyZvdW1sO2t2JmF1bWw7ZyEnOwokbGFuZ1snZXJyb3JfZmlsZWV4aXN0cyddID0gJ0ZlbCEgRW4gZmlsIG1lZCBkZXR0YSBuYW1uZXQgZmlubnMgcmVkYW4uJzsKJGxhbmdbJ2Vycm9yX2ZpbGVub3Rmb3VuZCddID0gJ0ZlbCEgRmlsZW4gJXMgaGl0dGFkZXMgaW50ZS4nOwokbGFuZ1snZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJ10gPSAnRmVsOiBPdGlsbHImYXVtbDtja2xpZ2EgcGFyYW1ldHJhciBhbmdpdm5hIGYmb3VtbDtyIG1vZHVsZW4hJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRhdXRob3InXSA9ICdGZWw6IEZlbGFrdGlnIChlbGxlciB0b20pIGYmb3VtbDtyZmF0dGFyZS4nOwokbGFuZ1snZXJyb3JfaW52YWxpZGNhdGVnb3J5J10gPSAnRmVsOiBGZWxha3RpZyAoZWxsZXIgdG9tKSBrYXRlZ29yaS4nOwokbGFuZ1snZXJyb3JfaW52YWxpZGRlc2NyaXB0aW9uJ10gPSAnRmVsOiBGZWxha3RpZyAoZWxsZXIgdG9tKSBiZXNrcml2bmluZy4nOwokbGFuZ1snZXJyb3JfaW52YWxpZGZpbGUnXSA9ICdGZWw6IEZlbGFrdGlndCAoZWxsZXIgdG9tdCkgZmlsbmFtbi4nOwokbGFuZ1snZXJyb3JfaW52YWxpZHVwbG9hZGZpbGVuYW1lJ10gPSAnRmVsOiBGaWxlciBtZWQgZGV0IG5hbW5ldCAodHJvbGlnZW4gbWVkIGRldCBmaWx0aWxsJmF1bWw7Z2dldCkgJmF1bWw7ciBpbnRlIHRpbGwmYXJpbmc7dG5hLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXBsb2FkaWQnXSA9ICdGZWw6IE9naWx0aWd0IHVwcGxhZGRuaW5ncy1pZCc7CiRsYW5nWydlcnJvcl9ub2ZpbGVzJ10gPSAnRmVsOiBJbmdhIG1hdGNoYW5kZSBmaWxlciEnOwokbGFuZ1snZmlsZXMnXSA9ICdGaWxlcic7CiRsYW5nWydmaXhtZSddID0gJ0ZpeGEgbWVsbGFuc2xhZyc7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdVcHBsYWRkbmluZyc7CiRsYW5nWydoZWxwJ10gPSAnPGgzPlZhZCBnJm91bWw7ciBkZW4gaCZhdW1sO3IgbW9kdWxlbj88L2gzPg0KPHA+RGV0ICZhdW1sO3IgZW4gbW9kdWwgc29tIGcmb3VtbDtyIGRldCBtJm91bWw7amxpZ3QgYXR0IGxhZGRhIHVwcCBvY2ggbGFkZGEgbmVyIGZpbGVyIHRpbGwgb2NoIGZyJmFyaW5nO24gZGluIHdlYmJzaWRhLiBEZW4gaCZhcmluZztsbGVyIHJlZGEgcCZhcmluZzsgdmVtIHNvbSBsYWRkYWRlIHVwcCBlbiBmaWwgb2NoIHZlbSBzb20gaGFyIGxhZGRhdCBuZXIgZGVuLg0KRGVzc3V0b20ga2FuIGR1IGRlbGEgaW4gZmlsZXIgaSBrYXRlZ29yaWVyIG9jaCBoYW50ZXJhIGZpbGVybmEgc29tICZhdW1sO3IgdXBwbGFkZGFkZSBwJmFyaW5nOyBzYW1tYSBzJmF1bWw7dHQgc29tIGFsbGEgYWRtaW5pc3RyYXQmb3VtbDtyZXIgc2thIGt1bm5hIGcmb3VtbDtyYS48L3A+IA0KDQo8aDM+SHVyIGFudiZhdW1sO25kZXIgamFnIG1vZHVsZW4/PC9oMz4NCjxwPkYmb3VtbDtyIGF0dCBhbnYmYXVtbDtuZGEgZGVuIGgmYXVtbDtyIG1vZHVsZW4gLSBhbGx0cyZhcmluZzsgYXR0IHRpbGwmYXJpbmc7dGEgYW52JmF1bWw7bmRhcmUgYXR0IGxhZGRhIHVwcCBmaWxlciB0aWxsIGRpbiB3ZWJic2lkYSAtIG0mYXJpbmc7c3RlIGR1IGluc3RhbGxlcmEgbW9kdWxlbiBvY2ggZCZhdW1sO3JlZnRlciBza2FwYSBlbiBlbGxlciBmbGVyYSBrYXRlZ29yaWVyL21hcHBhcg0Kc29tIGRlIHVwcGxhZGRhZGUgZmlsZXJuYSBrYW4gbCZhdW1sO2dnYXMgaSAoaSBtb2R1bGluc3QmYXVtbDtsbG5pbmdhcm5hKS4gTCZhdW1sO2dnIHNlZGFuIHRpbGwgZW4gdGFnZyBwJmFyaW5nOyBlbiBzaWRhIGVsbGVyIG1hbGwgdW5nZWYmYXVtbDtyIHMmYXJpbmc7IGgmYXVtbDtyIHtjbXNfbW9kdWxlIG1vZHVsZT0mcXVvdDtVcGxvYWRzJnF1b3Q7IGNhdGVnb3J5PSZxdW90O2Vua2F0ZWdvcmkmcXVvdDsgbW9kZT0mcXVvdDtzdGlsJnF1b3Q7fS4gDQpTdGlsZW4gc2thIGQmYXJpbmc7IG1hdGNoYSBuJmFyaW5nO2dvbiBhdiBzdGlsYXJuYSBuZWRhbi4gVmFkIHNvbSBza3JpdnMgdXQgc2tpbGplciBzaWcgYmVyb2VuZGUgcCZhcmluZzsgdmlsa2VuIHN0aWwgZHUgdiZhdW1sO2xqZXIuPC9wPg0KDQo8cD5EZW4gaCZhdW1sO3IgbW9kdWxlbiBrYW4gYW52JmF1bWw7bmRhIFVzZXJJRC1tb2R1bGVuICh2YWxmcml0dCkgZiZvdW1sO3IgYXR0IGYmYXJpbmc7IGluZm9ybWF0aW9uIG9tIGFsbGEgaW5sb2dnYWRlIGFudiZhdW1sO25kYXJlIGYmb3VtbDtyIGF0dCBkZWx2aXMgZnlsbGEgaSBmb3JtdWwmYXVtbDtyZXQgbiZhdW1sO3IgZmlsZXIgbGFkZGFzIHVwcDs8L3A+DQoNCjxoMz5SJmF1bWw7dHRpZ2hldGVyPC9oMz4NCjx1bD4NCjxsaT48ZW0+TWFuYWdlIFVwbG9hZHM8L2VtPiAtIGJlaCZvdW1sO3ZzIGYmb3VtbDtyIGF0dCBoYW50ZXJhIGthdGVnb3JpZXIgb2NoIGRlc3MgZmlsZXIuPC9saT4NCjxsaT48ZW0+TW9kaWZ5IFRlbXBsYXRlczwvZW0+IC0gYmVoJm91bWw7dnMgZiZvdW1sO3IgYXR0ICZhdW1sO25kcmEgbiZhcmluZztnb24gYXYgbWFsbGFybmEuPC9saT4NCjxsaT48ZW0+TW9kaWZ5IFNpdGUgUHJlZmVyZW5jZXM8L2VtPiAtIGJlaCZvdW1sO3ZzIGYmb3VtbDtyIGF0dCBmJm91bWw7ciBhdHQgJmF1bWw7ZG5yYSBmaWxpbnN0JmF1bWw7bGxuaW5nYXIuPC9saT4NCjwvdWw+DQoNCjxoMz5FcG9zdDwvaDM+DQo8cD5EZW4gaCZhdW1sO3IgbW9kdWxlbiBrYW4gc2tpY2thIGUtcG9zdCBuJmF1bWw7ciBlbiBmaWwgaGFyIGxhZGRhdHMgdXBwIChzZSB0YWJiZW4gSW5zdCZhdW1sO2xsbmluZ2FyKS4gTWVuIGYmb3VtbDtyIGF0dCBnJm91bWw7cmEgZGV0dGEga3ImYXVtbDt2cyBhdHQgbW9kdWxlbiA8c3Ryb25nPkNNU01haWxlcjwvc3Ryb25nPiBoYXIgaW5zdGFsbGVyYXRzIG9jaCBrb25maWd1cmVyYXRzLiBEZXR0YSAmYXVtbDtyIDxlbT52YWxmcml0dDwvZW0+IG9jaCBvbSBDTVNNYWlsZXItbW9kdWxlbiBpbnRlICZhdW1sO3IgaW5zdGFsbGVyYWQgdmlzYXMgaW5nZW50aW5nIGYmb3VtbDtyIGFudiZhdW1sO25kYXJlbiwgYmFyYSBldHQgbG9nZ21lZGRlbGFuZGUga29tbWVyIGF0dCBsJmF1bWw7Z2dhcyB0aWxsIGFkbWluLWxvZ2dlbi48L3A+DQoNCjxoMz5TeXN0ZW1pbnN0JmF1bWw7bGxuaW5nYXI8L2gzPg0KPHA+PHN0cm9uZz5Ob3RlcmE6PC9zdHJvbmc+IERlbiBoJmF1bWw7ciBtb2R1bGVuIGtvbW1lciBpbnRlIHJ1bnQgZWxsZXIgZiZvdW1sO3JiaSBuJmFyaW5nO2dyYSBmaWxzdG9ybGVrc2JlZ3ImYXVtbDtuc25pbmdhciBpIHBocC4gRGVuIGZ1bmdlcmFyIHRpbGxzYW1tYW5zIG1lZCBkZW0uIA0KRCZhdW1sO3JmJm91bWw7ciBtJmFyaW5nO3N0ZSBkdSBldmVudHVlbGx0ICZhdW1sO25kcmEgaSBkaW4gcGhwLmluaS1maWwgZiZvdW1sO3IgYXR0IHRpbGwmYXJpbmc7dGEgdXBwbGFkZG5pbmcgYXYgZmlsZXIgcyZhcmluZzsgc3RvcmEgc29tIGR1IGhhciBzdCZhdW1sO2xsdCBpbiBpIGluc3QmYXVtbDtsbG5pbmdhcm5hIGYmb3VtbDtyIHVwcGxhZGRuaW5nc21vZHVsZW4uPC9wPg0KDQo8aDM+Tm90IGYmb3VtbDtyIEFwYWNoZTwvaDM+DQo8cD5GJm91bWw7ciBhdHQgdGlsbCZhcmluZzt0YSBzdCZvdW1sO3JyZSBmaWx1cHBsYWRkbmluZ2FyIGthbiBkdSBiZWgmb3VtbDt2YSAmYXVtbDtuZHJhIHBhcmFtZXRlcm4gdXBsb2FkX21heF9maWxlc2l6ZSBpIGRpbiBwaHAuaW5pLWZpbC4gRGVzc3V0b20sIHBhcmFtZXRlcm4gTGltaXRSZXF1ZXN0Qm9keSBpbiBkaW4gQXBhY2hlLWtvbmZpZ3VyYXRpb24ga2FuIGJlaCZvdW1sO3ZhICZhdW1sO25kcmFzIGYmb3VtbDtyIGF0dCBtYXRjaGEgcGFyYW1ldGVybiB1cGxvYWRfbWF4X2ZpbGVzaXplPC9wPg0KPHA+Tm90ZXJhOiBwYXJhbWV0ZXJuIHVwbG9hZF9tYXhfZmlsZXNpemUga2FuIHNwZWNpZmljZXJhcyBpIGJ5dGVzLCBraWxvYnl0ZXMgZWxsZXIgbWVnYWJ5dGVzLiBQYXJhbWV0ZXJuYSBMaW1pdFJlcXVlc3RCb2R5IGQmYXVtbDtyZW1vdCwga2FuIGJhcmEgc3BlY2lmaWNlcmFzIGkgYnl0ZXM8L3A+JzsKJGxhbmdbJ2lkJ10gPSAnSWQgJzsKJGxhbmdbJ2luc3RhbGxlZCddID0gJ01vZHVsdmVyc2lvbiAlcyBpbnN0YWxsZXJhZC4nOwokbGFuZ1snaXBfYWRkcmVzcyddID0gJ0lQLWFkZHJlc3MnOwokbGFuZ1snbW9kZGVzY3JpcHRpb24nXSA9ICdFbiBtb2R1bCBzb20gbCZhcmluZzt0ZXIgYW52JmF1bWw7bmRhcmUgbGFkZGEgdXBwIGZpbGVyIG9jaCBsJmFyaW5nO3RlciBkaWcgaGFudGVyYSBkZW0uJzsKJGxhbmdbJ25hbWUnXSA9ICdOYW1uJzsKJGxhbmdbJ3JlbmFtZW1lc3NhZ2UnXSA9ICcmQXVtbDtuZHJhIG5hbW5ldCBoJmF1bWw7ciBmJm91bWw7ciBhdHQgZyZvdW1sO3JhIGVuIG5hbW4mYXVtbDtuZHJpbmcnOwokbGFuZ1sncGF0aCddID0gJ1Mmb3VtbDtrdiZhdW1sO2cnOwokbGFuZ1sncGF0aG1lc3NhZ2UnXSA9ICcmQXVtbDtuZHJhIGthdGVnb3JpbiBoJmF1bWw7ciBmJm91bWw7ciBhdHQgZmx5dHRhIGZpbGVuIHRpbGwgZW4gYW5uYW4gbWFwcCc7CiRsYW5nWydwYXRoaW51cGxvYWRzJ10gPSAnKHJlbGF0aXYgdGlsbCB1cHBsYWRkbmluZ3NtYXBwZW4pJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsJ10gPSAnTWVkZGVsYW5kZSBlZnRlciBpbnN0YWxsYXRpb24sIHQuZXguIEdsJm91bWw7bSBpbnRlIGF0dCBzdCZhdW1sO2xsYSBpbiByJmF1bWw7dHRpZ2hldGVyIGYmb3VtbDtyICZxdW90O01hbmFnZSBVcGxvYWRzJnF1b3Q7IGYmb3VtbDtyIGF0dCBhbnYmYXVtbDtuZGEgZGVuIGgmYXVtbDtyIG1vZHVsZW4hJzsKJGxhbmdbJ3Bvc3R1bmluc3RhbGwnXSA9ICdNZWRkZWxhbmRlIGVmdGVyIGF2aW5zdGFsbGF0aW9uLCB0LmV4LiAmcXVvdDtTa2l0IG9ja3MmYXJpbmc7ISBCZXNlZ3JhZCBpZ2VuISZxdW90Oyc7CiRsYW5nWydwcmVmZXJlbmNlcyddID0gJ0luc3QmYXVtbDtsbG5pbmdhcic7CiRsYW5nWydwcmVmc3VwZGF0ZWQnXSA9ICdNb2R1bGluc3QmYXVtbDtsbG5pbmdhciB1cHBkYXRlcmFkZS4nOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5ZGVzYyddID0gJ0Jlc2tyaXZuaW5nJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeWxpc3RhYmxlJ10gPSAnRmlsZXJuYSBpIGRlbiBoJmF1bWw7ciBtYXBwZW4ga2FuIGxpc3Rhcyc7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnluYW1lJ10gPSAnS2F0ZWdvcmluYW1uJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeXBhdGgnXSA9ICdTZXJ2ZXItcyZvdW1sO2t2JmF1bWw7Zyc7CiRsYW5nWydwcm9tcHRfZGVsZXRlZGlyZWN0b3J5J10gPSAnVGEgYm9ydCBrYXRlZ29yaW1hcHA/JzsKJGxhbmdbJ3Byb21wdF9tYXhfdXBsb2Fkc2l6ZSddID0gJ01heGltYWwgZmlsc3RvcmxlayB0aWxsJmFyaW5nO3RlbiAoS2IpJzsKJGxhbmdbJ3Byb21wdF92YWxpZF91cGxvYWRleHRlbnNpb25zJ10gPSAnVGlsbCZhcmluZzt0bmEgZmlsdGlsbCZhdW1sO2dnIGYmb3VtbDtyIHVwcGxhZGRhZGUgZmlsZXInOwokbGFuZ1snc2NhbiddID0gJ1NjYW5uYSc7CiRsYW5nWydzZWxlY3RjYXRlZ29yeSddID0gJ1YmYXVtbDtsaiBrYXRlZ29yaSc7CiRsYW5nWydzaXplJ10gPSAnU3Rvcmxlayc7CiRsYW5nWydzaXpla2InXSA9ICdTdG9ybGVrIChLYiknOwokbGFuZ1snc3VibWl0J10gPSAnTCZhdW1sO2dnIHRpbGwnOwokbGFuZ1snc3VtbWFyeV90ZW1wbGF0ZSddID0gJ1NhbW1hbmZhdHRuaW5nc21hbGwnOwokbGFuZ1snc3VtbWFyeSddID0gJ1NhbW1hbmZhdHRuaW5nJzsKJGxhbmdbJ3RpdGxlX2FkbWluX3BhbmVsJ10gPSAnVXBwbGFkZG5pbmdzbW9kdWwnOwokbGFuZ1sndGl0bGVfbW9kX2FkbWluJ10gPSAnQWRtaW4tcGFuZWwgZiZvdW1sO3IgbW9kdWwnOwokbGFuZ1sndGl0bGVfbW9kX3ByZWZzJ10gPSAnSW5zdCZhdW1sO2xsbmluZ2FyIGYmb3VtbDtyIG1vZHVsJzsKJGxhbmdbJ3RpdGxlX3N1Ym5ldF9leGNsdXNpb25zJ10gPSAnRXhrbHVkZXJhIHN1Ym4mYXVtbDt0IGZyJmFyaW5nO24gc3RhdGlzdGlrJzsKJGxhbmdbJ3RpdGxlX3ZhbGlkX3VwbG9hZGV4dGVuc2lvbnMnXSA9ICdUaWxsJmFyaW5nO3RuYSBmaWx0aWxsJmF1bWw7Z2cnOwokbGFuZ1sndW5pbnN0YWxsZWQnXSA9ICdNb2R1bCBhdmluc3RhbGxlcmFkLic7CiRsYW5nWyd1cGdyYWRlZCddID0gJ01vZHVsIHVwcGdyYWRlcmFkIHRpbGwgdmVyc2lvbiAlcy4nOwokbGFuZ1sndXBsb2FkJ10gPSAnTGFkZGEgdXBwJzsKJGxhbmdbJ3VwbG9hZGVkJ10gPSAnRmlsZW4gJXMgJmF1bWw7ciB1cHBsYWRkYWQuJzsKJGxhbmdbJ3JlcGxhY2VkJ10gPSAnRmlsZW4gJXMgZXJzYXR0ZXMgYXYgJXMuJzsKJGxhbmdbJ2RlbGV0ZWQnXSA9ICdGaWxlbiAlcyAmYXVtbDtyIGJvcnR0YWdlbi4nOwokbGFuZ1sndXBsb2FkZm9ybV90ZW1wbGF0ZSddID0gJ1VwcGxhZGRuaW5nc21hbGwnOwokbGFuZ1sndXNlcm5hbWUnXSA9ICdBbnYmYXVtbDtuZGFybmFtbic7CiRsYW5nWyd3YXJuaW5nX2RlbGV0ZWNhdGVnb3J5J10gPSAnVkFSTklORzogVmFyIGYmb3VtbDtyc2lrdGlnIG4mYXVtbDtyIGR1IHRhciBib3J0IGthdGVnb3JpZXIuIEZpbGVyIGthbiBnJmFyaW5nO3IgZiZvdW1sO3Jsb3JhZGUnOwokbGFuZ1sndXRtYSddID0gJzE1Njg2MTM1My4xMjE1NzMyMTQwLjEyNTQ5NDQxNjYuMTI1NTM4NTkyNC4xMjU1MzkwMTc5LjYnOwokbGFuZ1sndXRteiddID0gJzE1Njg2MTM1My4xMjU0OTUxMTI0LjMuMy51dG1jY249KHJlZmVycmFsKXx1dG1jc3I9Zm9ydW0uY21zbWFkZXNpbXBsZS5vcmd8dXRtY2N0PS9pbmRleC5waHAvdG9waWMsMzIwNDAuMC5odG1sfHV0bWNtZD1yZWZlcnJhbCc7CiRsYW5nWydxY2EnXSA9ICdQMC0xNDkwMDM3Mzg0LTEyNTQ5NDQxNjYwNTYnOwokbGFuZ1sndXRtYyddID0gJzE1Njg2MTM1Myc7CiRsYW5nWyd1dG1iJ10gPSAnMTU2ODYxMzUzLjEuMTAuMTI1NTM5MDE3OSc7Cj8+]]></data>
	</file>
	<file>
	  <filename>/method.install.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDoJLy93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgokZGIgPSYgJHRoaXMtPkdldERiKCk7CgokZGljdCA9IE5ld0RhdGFEaWN0aW9uYXJ5ICgkZGIpOwoKLy8gdGFibGUgc2NoZW1hIGRlc2NyaXB0aW9uCiRmbGRzID0gInVwbG9hZF9pZCBJIEtFWSwKICAgICAgICAgICAgIHVwbG9hZF9jYXRlZ29yeV9pZCBJLAogICAgICAgICAgICAgdXBsb2FkX25hbWUgQygyNTUpLAogICAgICAgICAgICAgdXBsb2FkX2F1dGhvciBDKDI1NSksCiAgICAgICAgICAgICB1cGxvYWRfc3VtbWFyeSBDKDI1NSksIAogICAgICAgICAgICAgdXBsb2FkX2Rlc2NyaXB0aW9uIFgsCiAgICAgICAgICAgICB1cGxvYWRfaXAgQygyNTUpLAogICAgICAgICAgICAgdXBsb2FkX3NpemUgSSwKICAgICAgICAgICAgIHVwbG9hZF9kYXRlICIuQ01TX0FET0RCX0RULiIsCiAgICAgICAgICAgICB1cGxvYWRfa2V5ICBDKDI1NSksCiAgICAgICAgICAgICB1cGxvYWRfdGh1bWJuYWlsIEMoMjU1KQoJICAgICI7CgovLyBjcmVhdGUgaXQuIFRoaXMgc2hvdWxkIGRvIGVycm9yIGNoZWNraW5nLCBidXQgSSdtIGEgbGF6eSBzb2QuCiR0YWJvcHRhcnJheSA9IGFycmF5ICgnbXlzcWwnID0+ICdUWVBFPU15SVNBTScpOwokc3FsYXJyYXkgPSAkZGljdC0+Q3JlYXRlVGFibGVTUUwgKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHMiLAoJCQkJICAgJGZsZHMsICR0YWJvcHRhcnJheSk7CiRkaWN0LT5FeGVjdXRlU1FMQXJyYXkgKCRzcWxhcnJheSk7CiAgICAKLy8gYSB0YWJsZSBmb3IgZG93bmxvYWRzCiRmbGRzID0gImRvd25sb2FkX2lkIEkgS0VZLAogCSAgICAgZmlsZV9pZCAgICAgSSwgCgkgICAgIGRvd25sb2FkX2RhdGUgIi5DTVNfQURPREJfRFQuIiwKICAgICAgICAgICAgIGRvd25sb2FkX2lwICAgQygyNTUpLAogICAgICAgICAgICAgZG93bmxvYWRfdXNlciBDKDI1NSksCiAgICAgICAgICAgICB1cmxfa2V5ICBDKDQwKQoJICAgICI7CgovLyBjcmVhdGUgaXQuIFRoaXMgc2hvdWxkIGRvIGVycm9yIGNoZWNraW5nLCBidXQgSSdtIGEgbGF6eSBzb2QuCiR0YWJvcHRhcnJheSA9IGFycmF5ICgnbXlzcWwnID0+ICdUWVBFPU15SVNBTScpOwokc3FsYXJyYXkgPQogICRkaWN0LT5DcmVhdGVUYWJsZVNRTCAoY21zX2RiX3ByZWZpeCAoKS4ibW9kdWxlX3VwbG9hZHNfZG93bmxvYWRzIiwKCQkJICRmbGRzLCAkdGFib3B0YXJyYXkpOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5ICgkc3FsYXJyYXkpOwoKLy8gYSB0YWJsZSBmb3IgY2F0ZWdvcmllcwokZmxkcyA9ICJ1cGxvYWRfY2F0ZWdvcnlfaWQgSSBLRVksCgkgICAgIHVwbG9hZF9jYXRlZ29yeV9uYW1lIEMoMjU1KSwKCSAgICAgdXBsb2FkX2NhdGVnb3J5X2Rlc2NyaXB0aW9uIFgsCiAgICAgICAgICAgICB1cGxvYWRfY2F0ZWdvcnlfcGF0aCBDKDI1NSkgS0VZLAoJICAgICB1cGxvYWRfY2F0ZWdvcnlfbGlzdGFibGUgSSwKICAgICAgICAgICAgIHVwbG9hZF9jYXRlZ29yeV9ncm91cHMgQygyNTUpLAogICAgICAgICAgICAgdXBsb2FkX2NhdGVnb3J5X2RlbGV0YWJsZSBJLAogICAgICAgICAgICAgdXBsb2FkX2NhdGVnb3J5X2V4cGlyZXNfaHJzIEkKCSAgICAiOwoKLy8gY3JlYXRlIGl0LiBUaGlzIHNob3VsZCBkbyBlcnJvciBjaGVja2luZywgYnV0IEknbSBhIGxhenkgc29kLgokdGFib3B0YXJyYXkgPSBhcnJheSAoJ215c3FsJyA9PiAnVFlQRT1NeUlTQU0nKTsKJHNxbGFycmF5ID0KICAkZGljdC0+Q3JlYXRlVGFibGVTUUwgKGNtc19kYl9wcmVmaXggKCkuIm1vZHVsZV91cGxvYWRzX2NhdGVnb3JpZXMiLAoJCQkgJGZsZHMsICR0YWJvcHRhcnJheSk7CiRkaWN0LT5FeGVjdXRlU1FMQXJyYXkgKCRzcWxhcnJheSk7CgovLyBhIHRhYmxlIGZvciBmaWxlIHR5cGVzCiRmbGRzID0gImlkIEksCiAgICAgICAgICAgICBzb3J0b3JkZXIgSSwKICAgICAgICAgICAgIG5hbWUgIEMoMjU1KSwKICAgICAgICAgICAgIGRlc2NyaXB0aW9uIFgsCiAgICAgICAgICAgICBleHRlbnNpb25zIEMoMjU1KSwKICAgICAgICAgICAgIGltYWdlIEMoMjU1KQogICAgICAgICAgICAiOwokdGFib3B0YXJyYXkgPSBhcnJheSAoJ215c3FsJyA9PiAnVFlQRT1NeUlTQU0nKTsKJHNxbGFycmF5ID0KICAkZGljdC0+Q3JlYXRlVGFibGVTUUwgKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfZmlsZXR5cGVzIiwKCQkJICRmbGRzLCAkdGFib3B0YXJyYXkpOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5ICgkc3FsYXJyYXkpOwoKLy8gYSB0YWJsZSBmb3IgZmllbGQgZGVmaW5pdGlvbnMuCiRmbGRzID0gIgogICAgICAgICBpZCAgICAgIEkgS0VZIEFVVE8sCiAgICAgICAgIG5hbWUgICAgQygyNTUpLAogICAgICAgICB0eXBlICAgIEMoMjApLAogICAgICAgICBhdHRyaWJzIFgsCiAgICAgICAgIGlvcmRlciAgSSwKICAgICAgICAgcHVibGljICBJMSI7CiRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNRTCggY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2Fkc19maWVsZGRlZnMnLAoJCQkJICAgJGZsZHMsICR0YWJvcHRhcnJheSk7CiRkaWN0LT5FeGVjdXRlU1FMQXJyYXkgKCRzcWxhcnJheSk7CgovLyBhIHRhYmxlIGZvciBmaWVsZCB2YWx1ZXMKJGZsZHMgPSAidXBsb2FkX2lkIEkgS0VZLAogICAgICAgICBmbGRfaWQgICAgSSBLRVksCiAgICAgICAgIHZhbHVlICAgICBYIjsKJHNxbGFycmF5ID0gJGRpY3QtPkNyZWF0ZVRhYmxlU1FMKCBjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzX2ZpZWxkdmFscycsCgkJCQkgICAkZmxkcywgJHRhYm9wdGFycmF5KTsKJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSAoJHNxbGFycmF5KTsKCi8vIGEgdGFibGUgZm9yIHRpbWUgbGltaXRlZCB1cmxzCiRmbGRzID0gInRsa2V5X2lkICBJIEtFWSBBVVRPLAogICAgICAgICB1cGxvYWRfaWQgSSwKICAgICAgICAgZW1haWwgICAgIEMoMjU1KSwKICAgICAgICAgdXJsX2tleSAgIEMoMTYpLAogICAgICAgICBjcmVhdGVkICAgIi5DTVNfQURPREJfRFQuIiwKICAgICAgICAgZXhwaXJlcyAgICIuQ01TX0FET0RCX0RULiIsCiAgICAgICAgIG1heF9kb3dubG9hZHMgSSI7CiRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNRTCggY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2Fkc190aW1lbGltaXQnLAoJCQkJICAgJGZsZHMsICR0YWJvcHRhcnJheSk7CiRkaWN0LT5FeGVjdXRlU1FMQXJyYXkgKCRzcWxhcnJheSk7CgovLyBjcmVhdGUgYSBzZXF1ZW5jZQokZGItPkNyZWF0ZVNlcXVlbmNlIChjbXNfZGJfcHJlZml4ICgpLiJtb2R1bGVfdXBsb2Fkc19zZXEiKTsKICAgIAovLyBhbmQgYW5vdGhlciBvbmUKJGRiLT5DcmVhdGVTZXF1ZW5jZSAoY21zX2RiX3ByZWZpeCAoKS4ibW9kdWxlX3VwbG9hZHNfY2F0ZWdvcmllc19zZXEiKTsKCi8vIGFuZCBhIHRoaXJkIG9uZQokZGItPkNyZWF0ZVNlcXVlbmNlIChjbXNfZGJfcHJlZml4ICgpLiJtb2R1bGVfdXBsb2Fkc19kb3dubG9hZHNfc2VxIik7CgovLyBhbmQgYSBmb3VydGgKJGRiLT5DcmVhdGVTZXF1ZW5jZSAoY21zX2RiX3ByZWZpeCAoKS4ibW9kdWxlX3VwbG9hZHNfZmlsZXR5cGVzX3NlcSIpOwoKLy8gY3JlYXRlIGEgcGVybWlzc2lvbgokdGhpcy0+Q3JlYXRlUGVybWlzc2lvbiAoJ01hbmFnZSBVcGxvYWRzJywgJ01hbmFnZSBVcGxvYWRzJyk7CiR0aGlzLT5DcmVhdGVQZXJtaXNzaW9uICgnVXBsb2FkIEZpbGVzIHRvIFVwbG9hZHMnLCAnVXBsb2FkIEZpbGVzIHRvIFVwbG9hZHMnKTsKCi8vIGNyZWF0ZSBhIHByZWZlcmVuY2UKJHRoaXMtPlNldFByZWZlcmVuY2UgKCJ2YWxpZF91cGxvYWRleHRlbnNpb25zIiwKCQkgICAgICAicG5nLGdpZixqcGcsSlBFRyxibXAsd21mLHdtYSx3bXYsbXBnLHppcCx0YXIsZ3osYnoyLG1wMyx3YXYsYXUsb2dnLHhtbCxwZGYiKTsKJHRoaXMtPlNldFByZWZlcmVuY2UgKCJzdWJuZXRfZXhjbHVzaW9ucyIsICIiICk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlICgnY3JlYXRlX2R1bW15X2luZGV4X2h0bWwnLCAxKTsKJHRoaXMtPlNldFByZWZlcmVuY2UgKCdzZW5kX3VwbG9hZF9ub3RpZmljYXRpb25zX3RvJywnJyk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlICgncmVxdWlyZWZpbGVuYW1lX2V4dGVuc2lvbnMnLDEpOwokdGhpcy0+U2V0UHJlZmVyZW5jZSAoJ2F1dG90aHVtYm5haWxfZXh0ZW5zaW9ucycsJ2dpZixqcGcsanBlZyxibXAscG5nJyk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlICgnYXV0b3RodW1ibmFpbF9zaXplJyw4MCk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlICgnZG93bmxvYWRfY2h1bmtzaXplJyw4KTsKJHRoaXMtPlNldFByZWZlcmVuY2UgKCdjYXRlZ29yeV9leHBpcnknLDApOwoKJGZuID0gZGlybmFtZShfX0ZJTEVfXykuRElSRUNUT1JZX1NFUEFSQVRPUi4KICAndGVtcGxhdGVzJy5ESVJFQ1RPUllfU0VQQVJBVE9SLidvcmlnX3VwbG9hZGZvcm1fdGVtcGxhdGUudHBsJzsKaWYoIGZpbGVfZXhpc3RzKCAkZm4gKSApCiAgewogICAgJHRlbXBsYXRlID0gQGZpbGVfZ2V0X2NvbnRlbnRzKCRmbik7CiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgndXBsb2FkZm9ybV9zeXNkZWZhdWx0JywkdGVtcGxhdGUpOwogICAgJHRoaXMtPlNldFRlbXBsYXRlKCd1cGxvYWRmb3JtX2RlZmF1bHQnLCR0ZW1wbGF0ZSk7CiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgnZGVmYXVsdF91cGxvYWRmb3JtJywnZGVmYXVsdCcpOwogIH0KCiRmbiA9IGRpcm5hbWUoX19GSUxFX18pLkRJUkVDVE9SWV9TRVBBUkFUT1IuCiAgJ3RlbXBsYXRlcycuRElSRUNUT1JZX1NFUEFSQVRPUi4nb3JpZ19zdW1tYXJ5cnB0X3RlbXBsYXRlLnRwbCc7CmlmKCBmaWxlX2V4aXN0cyggJGZuICkgKQogIHsKICAgICR0ZW1wbGF0ZSA9IEBmaWxlX2dldF9jb250ZW50cygkZm4pOwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ3N1bW1hcnlycHRfc3lzZGVmYXVsdCcsJHRlbXBsYXRlKTsKICAgICR0aGlzLT5TZXRUZW1wbGF0ZSgnc3VtbWFyeXJwdF9kZWZhdWx0JywkdGVtcGxhdGUpOwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ2RlZmF1bHRfc3VtbWFyeXJwdCcsJ2RlZmF1bHQnKTsKICB9CgokZm4gPSBkaXJuYW1lKF9fRklMRV9fKS5ESVJFQ1RPUllfU0VQQVJBVE9SLgogICd0ZW1wbGF0ZXMnLkRJUkVDVE9SWV9TRVBBUkFUT1IuJ29yaWdfZGV0YWlscnB0X3RlbXBsYXRlLnRwbCc7CmlmKCBmaWxlX2V4aXN0cyggJGZuICkgKQogIHsKICAgICR0ZW1wbGF0ZSA9IEBmaWxlX2dldF9jb250ZW50cygkZm4pOwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ2RldGFpbHJwdF9zeXNkZWZhdWx0JywkdGVtcGxhdGUpOwogICAgJHRoaXMtPlNldFRlbXBsYXRlKCdkZXRhaWxycHRfZGVmYXVsdCcsJHRlbXBsYXRlKTsKICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdkZWZhdWx0X2RldGFpbHJwdCcsJ2RlZmF1bHQnKTsKICB9CgovLyBzZW5kZmlsZSBmb3JtIHRlbXBsYXRlCiRmbiA9IGRpcm5hbWUoX19GSUxFX18pLicvdGVtcGxhdGVzL29yaWdfc2VuZGZpbGVmb3JtX3RlbXBsYXRlLnRwbCc7CmlmKCBmaWxlX2V4aXN0cyggJGZuICkgKQogIHsKICAgICR0ZW1wbGF0ZSA9IEBmaWxlX2dldF9jb250ZW50cygkZm4pOwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ3NlbmRmaWxlZm9ybV9zeXNkZWZhdWx0JywkdGVtcGxhdGUpOwogICAgJHRoaXMtPlNldFRlbXBsYXRlKCdzZW5kZmlsZWZvcm1fZGVmYXVsdCcsJHRlbXBsYXRlKTsKICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdkZWZhdWx0X3NlbmRmaWxlZm9ybScsJ2RlZmF1bHQnKTsKICB9CgovLyB5b3VzZW5kaXRmb3JtIHRlbXBsYXRlCiRmbiA9IGRpcm5hbWUoX19GSUxFX18pLicvdGVtcGxhdGVzL29yaWdfeW91c2VuZGl0Zm9ybV90ZW1wbGF0ZS50cGwnOwppZiggZmlsZV9leGlzdHMoICRmbiApICkKICB7CiAgICAkdGVtcGxhdGUgPSBAZmlsZV9nZXRfY29udGVudHMoJGZuKTsKICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCd5b3VzZW5kaXRmb3JtX3N5c2RlZmF1bHQnLCR0ZW1wbGF0ZSk7CiAgICAkdGhpcy0+U2V0VGVtcGxhdGUoJ3lvdXNlbmRpdGZvcm1fZGVmYXVsdCcsJHRlbXBsYXRlKTsKICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdkZWZhdWx0X3lvdXNlbmRpdGZvcm0nLCdkZWZhdWx0Jyk7CiAgfQoKLy8gdGVtcGxhdGUgdXNlZCBmb3Igc2VuZGZpbGUgZW1haWwKJGZuID0gZGlybmFtZShfX0ZJTEVfXykuJy90ZW1wbGF0ZXMvb3JpZ19zZW5kZmlsZXJwdF90ZW1wbGF0ZS50cGwnOwppZiggZmlsZV9leGlzdHMoJGZuKSApCiAgewogICAgJHRlbXBsYXRlID0gQGZpbGVfZ2V0X2NvbnRlbnRzKCRmbik7CiAgICAkdGhpcy0+U2V0VGVtcGxhdGUoICd1cGxvYWRfc2VuZGZpbGVycHQnLCAkdGVtcGxhdGUpOwogIH0KCi8vIHRlbXBsYXRlIHVzZWQgZm9yIGVtYWlsIG5vdGlmaWNhdGlvbnMKJGZuID0gZGlybmFtZShfX0ZJTEVfXykuJy90ZW1wbGF0ZXMvb3JpZ19lbWFpbG5vdGlmeV90ZW1wbGF0ZS50cGwnOwppZiggZmlsZV9leGlzdHMoJGZuKSApCiAgewogICAgJHRlbXBsYXRlID0gQGZpbGVfZ2V0X2NvbnRlbnRzKCRmbik7CiAgICAkdGhpcy0+U2V0VGVtcGxhdGUoICd1cGxvYWRfZW1haWx0ZW1wbGF0ZScsICR0ZW1wbGF0ZSk7CiAgfQoKLy8gRXZlbnQgaGFuZGxlcnMKJHRoaXMtPkNyZWF0ZUV2ZW50KCAiT25VcGxvYWQiICk7CiR0aGlzLT5DcmVhdGVFdmVudCggIk9uUmVtb3ZlIiApOwokdGhpcy0+Q3JlYXRlRXZlbnQoICJPbkRvd25sb2FkIiApOwokdGhpcy0+Q3JlYXRlRXZlbnQoICJPbkNyZWF0ZUNhdGVnb3J5IiApOwokdGhpcy0+Q3JlYXRlRXZlbnQoICJPbkRlbGV0ZUNhdGVnb3J5IiApOwoKJHRoaXMtPkFkZEV2ZW50SGFuZGxlcignQ29yZScsJ0NvbnRlbnRQb3N0UmVuZGVyJyk7CgovLyBEZWZhdWx0IGZpbGUgdHlwZXMKJHRoaXMtPl9JbnNlcnREZWZhdWx0RmlsZVR5cGVzKCk7CgovLyBwdXQgbWVudGlvbiBpbnRvIHRoZSBhZG1pbiBsb2cKJHRoaXMtPkF1ZGl0ICgwLCAkdGhpcy0+TGFuZyAoJ2ZyaWVuZGx5bmFtZScpLAoJICAgICAgJHRoaXMtPkxhbmcgKCdpbnN0YWxsZWQnLCAkdGhpcy0+R2V0VmVyc2lvbiAoKSkpOwoKPz4=]]></data>
	</file>
	<file>
	  <filename>/method.uninstall.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDoJLy93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgogICAgJGRiID0mICR0aGlzLT5HZXREYigpOwoKICAgIC8vIHJlbW92ZSB0aGUgZGF0YWJhc2UgdGFibGUKICAgICRkaWN0ID0gTmV3RGF0YURpY3Rpb25hcnkgKCRkYik7CiAgICAkc3FsYXJyYXkgPSAkZGljdC0+RHJvcFRhYmxlU1FMIChjbXNfZGJfcHJlZml4ICgpLiJtb2R1bGVfdXBsb2FkcyIpOwogICAgJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSAoJHNxbGFycmF5KTsKCiAgICAvLyByZW1vdmUgdGhlIHNlcXVlbmNlCiAgICAkZGItPkRyb3BTZXF1ZW5jZSAoY21zX2RiX3ByZWZpeCAoKS4ibW9kdWxlX3VwbG9hZHNfc2VxIik7CgogICAgLy8gcmVtb3ZlIHRoZSBjYXRlZ29yeSB0YWJsZQogICAgJHNxbGFycmF5ID0KICAgICAgJGRpY3QtPkRyb3BUYWJsZVNRTCAoY21zX2RiX3ByZWZpeCAoKS4ibW9kdWxlX3VwbG9hZHNfY2F0ZWdvcmllcyIpOwoKICAgIC8vIHJlbW92ZSBpdCdzIHNlcXVlbmNlCiAgICAkZGItPkRyb3BTZXF1ZW5jZSAoY21zX2RiX3ByZWZpeCAoKS4ibW9kdWxlX3VwbG9hZHNfY2F0ZWdvcmllc19zZXEiKTsKICAgICRkaWN0LT5FeGVjdXRlU1FMQXJyYXkgKCRzcWxhcnJheSk7CgogICAgLy8gcmVtb3ZlIHRoZSBkb3dubG9hZHMgdGFibGUKICAgICRzcWxhcnJheSA9CiAgICAgICRkaWN0LT5Ecm9wVGFibGVTUUwgKGNtc19kYl9wcmVmaXggKCkuIm1vZHVsZV91cGxvYWRzX2Rvd25sb2FkcyIpOwoKICAgIC8vIGFuZCBpdCdzIHNlcXVlbmNlCiAgICAkZGItPkRyb3BTZXF1ZW5jZSAoY21zX2RiX3ByZWZpeCAoKS4ibW9kdWxlX3VwbG9hZHNfZG93bmxvYWRzX3NlcSIpOwogICAgJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSAoJHNxbGFycmF5KTsKCiAgICAvLyByZW1vdmUgdGhlIGZpbGV0eXBlcyB0YWJsZQogICAgJHNxbGFycmF5ID0KICAgICAgJGRpY3QtPkRyb3BUYWJsZVNRTCAoY21zX2RiX3ByZWZpeCAoKS4ibW9kdWxlX3VwbG9hZHNfZmlsZXR5cGVzIik7CiAgICAkZGljdC0+RXhlY3V0ZVNRTEFycmF5ICgkc3FsYXJyYXkpOwoKICAgIC8vIGFuZCBpdCdzIHNlcXVlbmNlCiAgICAkZGItPkRyb3BTZXF1ZW5jZSAoY21zX2RiX3ByZWZpeCAoKS4ibW9kdWxlX3VwbG9hZHNfZmlsZXR5cGVzX3NlcSIpOwoKICAgICRzcWxhcnJheSA9CiAgICAgICRkaWN0LT5Ecm9wVGFibGVTUUwgKGNtc19kYl9wcmVmaXggKCkuIm1vZHVsZV91cGxvYWRzX2ZpZWxkZGVmcyIpOwogICAgJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSAoJHNxbGFycmF5KTsKCiAgICAkc3FsYXJyYXkgPQogICAgICAkZGljdC0+RHJvcFRhYmxlU1FMIChjbXNfZGJfcHJlZml4ICgpLiJtb2R1bGVfdXBsb2Fkc19maWVsZHZhbHMiKTsKICAgICRkaWN0LT5FeGVjdXRlU1FMQXJyYXkgKCRzcWxhcnJheSk7CgogICAgJHNxbGFycmF5ID0KICAgICAgJGRpY3QtPkRyb3BUYWJsZVNRTCAoY21zX2RiX3ByZWZpeCAoKS4ibW9kdWxlX3VwbG9hZHNfdGltZWxpbWl0Iik7CiAgICAkZGljdC0+RXhlY3V0ZVNRTEFycmF5ICgkc3FsYXJyYXkpOwoKCiAgICAvLyByZW1vdmUgdGhlIHBlcm1pc3Npb25zCiAgICAkdGhpcy0+UmVtb3ZlUGVybWlzc2lvbiAoJ01hbmFnZSBVcGxvYWRzJyk7CiAgICAkdGhpcy0+UmVtb3ZlUGVybWlzc2lvbiAoJ1VwbG9hZCBGaWxlcyB0byBVcGxvYWRzJyk7CgogICAgLy8gcmVtb3ZlIGFsbCBvZiB0aGUgdGhlIHByZWZlcmVuY2VzIGZvciB0aGlzIG1vZHVsZQogICAgJHRoaXMtPlJlbW92ZVByZWZlcmVuY2UgKCk7CgogICAgLy8gcmVtb3ZlIHRlbXBsYXRlcwogICAgJHRlbXBsYXRlcyA9ICR0aGlzLT5MaXN0VGVtcGxhdGVzKCk7CiAgICBmb3JlYWNoKCAkdGVtcGxhdGVzIGFzICR0cGwgKQogICAgICB7CgkkdGhpcy0+RGVsZXRlVGVtcGxhdGUoJHRwbCk7CiAgICAgIH0KCiAgICAvLyByZW1vdmUgZXZlbnRzCiAgICAkdGhpcy0+UmVtb3ZlRXZlbnQoIk9uVXBsb2FkIiApOwogICAgJHRoaXMtPlJlbW92ZUV2ZW50KCJPblJlbW92ZSIgKTsKICAgICR0aGlzLT5SZW1vdmVFdmVudCgiT25Eb3dubG9hZCIgKTsKICAgICR0aGlzLT5SZW1vdmVFdmVudCgiT25DcmVhdGVDYXRlZ29yeSIgKTsKICAgICR0aGlzLT5SZW1vdmVFdmVudCgiT25EZWxldGVDYXRlZ29yeSIgKTsKICAgICR0aGlzLT5SZW1vdmVFdmVudEhhbmRsZXIoJ0NvcmUnLCdDb250ZW50UG9zdFJlbmRlcicpOwoKICAgIC8vIHB1dCBtZW50aW9uIGludG8gdGhlIGFkbWluIGxvZwogICAgJHRoaXMtPkF1ZGl0ICgwLCAkdGhpcy0+TGFuZyAoJ2ZyaWVuZGx5bmFtZScpLAoJCSAgJHRoaXMtPkxhbmcgKCd1bmluc3RhbGxlZCcpKTsKPz4=]]></data>
	</file>
	<file>
	  <filename>/method.upgrade.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDoJLy93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgokdGFib3B0YXJyYXkgPSBhcnJheSAoJ215c3FsJyA9PiAnVFlQRT1NeUlTQU0nKTsKCiAgICAkY3VycmVudF92ZXJzaW9uID0gJG9sZHZlcnNpb247CiAgICBzd2l0Y2goICRvbGR2ZXJzaW9uICkKICAgICAgewogICAgICBjYXNlICIxLjEuMCI6CiAgICAgIGNhc2UgIjEuMS4xIjoKICAgICAgY2FzZSAiMS4xLjIiOgogICAgICBjYXNlICIxLjEuMyI6CiAgICAgIGNhc2UgIjEuMS40IjoKICAgICAgY2FzZSAiMS4xLjUiOgogICAgICBjYXNlICIxLjEuNiI6CgkkdGhpcy0+U2V0UHJlZmVyZW5jZSAoJ3NlbmRfdXBsb2FkX25vdGlmaWNhdGlvbnNfdG8nLCcnKTsKCSR0aGlzLT5TZXRUZW1wbGF0ZSggJ3VwbG9hZF9lbWFpbHRlbXBsYXRlJywgJHRoaXMtPmRmbHRfZW1haWxub3RpZnl0ZW1wbGF0ZSApOwoJcmV0dXJuOwogICAgICB9CgogICAgc3dpdGNoICgkb2xkdmVyc2lvbikKICAgIHsKICAgIGNhc2UgIjEuMCI6CiAgICBjYXNlICIxLjAuMSI6CiAgICBjYXNlICIxLjAuMiI6CiAgICBjYXNlICIxLjAuMyI6CiAgICBjYXNlICIxLjAuNCI6CiAgICBjYXNlICIxLjAuNSI6CiAgICBjYXNlICIxLjAuNiI6CiAgICBjYXNlICIxLjAuNyI6CiAgICBjYXNlICIxLjAuOCI6CiAgICBjYXNlICIxLjAuOSI6CiAgICBjYXNlICIxLjIuMCI6CiAgICBjYXNlICcxLjIuMSc6CiAgICBjYXNlICcxLjIuMic6CiAgICBjYXNlICcxLjIuMyc6CiAgICAgIHJldHVybiBmYWxzZTsKCiAgICBjYXNlICcxLjMuMC1iZXRhMyc6CiAgICAgIHsKCSR0aGlzLT5TZXRQcmVmZXJlbmNlICgnZG93bmxvYWRfY2h1bmtzaXplJyw4KTsKICAgICAgfQogICAgY2FzZSAnMS4zLjAtYmV0YTUnOgogICAgICB7CgkvLyBhZGQgYSBncm91cHMgZmllbGQgdG8gdGhlIGNhdGVnb3JpZXMgdGFibGUKCS8vIGl0IGNvbnRhaW5zIEZFVSBncm91cCBJRCdzIChjb21tYSBzZXBlcmF0ZWQpCgkkZGIgPSYgJHRoaXMtPkdldERiKCk7CgkkZGljdCA9IE5ld0RhdGFEaWN0aW9uYXJ5KCRkYik7Cgkkc3FsYXJyYXkgPSAkZGljdC0+QWRkQ29sdW1uU1FMKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfY2F0ZWdvcmllcyIsCgkJCQkJInVwbG9hZF9jYXRlZ29yeV9ncm91cHMgQygyNTUpIik7CgkkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCAkc3FsYXJyYXkgKTsKICAgICAgfQogICAgY2FzZSAnMS4zLjAnOgogICAgY2FzZSAnMS4zLjEnOgogICAgICB7CgkvLyBhbmQgYW4gdXBsb2FkX3RodW1ibmFpbCBmaWVsZCB0byB0aGUgdXBsb2FkcyB0YWJsZS4KCSRkYiA9JiAkdGhpcy0+R2V0RGIoKTsKCSRkaWN0ID0gTmV3RGF0YURpY3Rpb25hcnkoJGRiKTsKCSRzcWxhcnJheSA9ICRkaWN0LT5BZGRDb2x1bW5TUUwoY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2FkcyIsCgkJCQkJInVwbG9hZF90aHVtYm5haWwgQygyNTUpIik7CgkkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCAkc3FsYXJyYXkgKTsKCgkvLwoJLy8gR2V0IGxpc3Qgb2YgY2F0ZWdvcmllcwoJLy8KCSRxdWVyeSA9ICdTRUxFQ1QgdXBsb2FkX2NhdGVnb3J5X2lkLHVwbG9hZF9jYXRlZ29yeV9wYXRoIAogICAgICAgICAgICAgICAgICAgIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzX2NhdGVnb3JpZXMnOwoJJHRtcCA9ICRkYi0+R2V0QXJyYXkoJHF1ZXJ5KTsKCSRjYXRlZ29yaWVzID0gYXJyYXkoKTsKCWZvcmVhY2goICR0bXAgYXMgJG9uZSApCgkgIHsKCSAgICAkY2F0ZWdvcmllc1skb25lWyd1cGxvYWRfY2F0ZWdvcnlfaWQnXV0gPSAkb25lOwoJICB9CgoJLy8KCS8vIEZvciBlYWNoIGZpbGUKCS8vCgkkbm93ID0gJGRiLT5EYlRpbWVTdGFtcCh0aW1lKCkpOwoJJHF1ZXJ5ID0gJ1NFTEVDVCB1cGxvYWRfY2F0ZWdvcnlfaWQsdXBsb2FkX2lkLHVwbG9hZF9uYW1lIAogICAgICAgICAgICAgICAgICAgIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzJzsKCSRkYnIgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5KTsKCSR1cGRhdGVxdWVyeSA9ICdVUERBVEUgJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzCiAgICAgICAgICAgICAgICAgICAgICAgICAgIFNFVCB1cGxvYWRfdGh1bWJuYWlsID0gPwogICAgICAgICAgICAgICAgICAgICAgICAgV0hFUkUgdXBsb2FkX2lkID0gPyc7Cgl3aGlsZSggJGRiciAmJiAoJHJvdyA9ICRkYnItPkZldGNoUm93KCkpICkKCSAgewoJICAgIC8vIGdldCBwYXRoIHRvIHRodW1ibmFpbAoJICAgICRkaXIgPSBjbXNfam9pbl9wYXRoKCRjb25maWdbJ3VwbG9hZHNfcGF0aCddLAoJCQkJICRjYXRlZ29yaWVzWyRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9pZCddXVsndXBsb2FkX2NhdGVnb3J5X3BhdGgnXSk7CgkgICAgJG9sZHRodW1iID0gY21zX2pvaW5fcGF0aCgkZGlyLCcudGh1bWJzJywKCQkJCSAgICAgICRyb3dbJ3VwbG9hZF9pZCddLidfdGh1bWInKTsKCSAgICBpZiggIWZpbGVfZXhpc3RzKCRvbGR0aHVtYikgKSBjb250aW51ZTsKCgkgICAgJHRtcCA9IEBnZXRpbWFnZXNpemUoJG9sZHRodW1iKTsKCSAgICBpZiggIWlzX2FycmF5KCR0bXApIHx8ICR0bXBbMF0gPT0gMCApIGNvbnRpbnVlOwoKCSAgICAkdGh1bWJ0eXBlID0gJHRtcFsyXTsKCSAgICAkdGh1bWJleHQgPSBAaW1hZ2VfdHlwZV90b19leHRlbnNpb24oJHRodW1idHlwZSk7CgkgICAgJGZuYW1lZXh0ID0gc3RycmNocigkcm93Wyd1cGxvYWRfbmFtZSddLCcuJyk7CgkgICAgJGZuYW1lID0gc3Vic3RyKCRyb3dbJ3VwbG9hZF9uYW1lJ10sMCxzdHJsZW4oJHJvd1sndXBsb2FkX25hbWUnXSktc3RybGVuKCRmbmFtZWV4dCkpOwoJICAgICR0aHVtYm5hbWUgPSAndGh1bWJfJy4kZm5hbWUuJHRodW1iZXh0OwoJICAgICRuZXd0aHVtYiA9IGNtc19qb2luX3BhdGgoJGRpciwkdGh1bWJuYW1lKTsKCSAgICAKCSAgICAvLyByZW5hbWUgdGh1bWJuYWlsIGZpbGVzCgkgICAgQHJlbmFtZSgkb2xkdGh1bWIsJG5ld3RodW1iKTsKCSAgICBAdW5saW5rKCRvbGR0aHVtYik7CgoJICAgIC8vIHVwZGF0ZSB0aGUgZGF0YWJhc2UKCSAgICAkZGItPkV4ZWN1dGUoJHVwZGF0ZXF1ZXJ5LGFycmF5KCR0aHVtYm5hbWUsJHJvd1sndXBsb2FkX2lkJ10pKTsKCSAgfQoKICAgICAgICAvLyByZW1vdmUgdGhlIC50aHVtYnMgZGlyZWN0b3J5IGZvciBlYWNoIGNhdGVnb3J5Cglmb3IoICRpID0gMDsgJGkgPCBjb3VudCgkY2F0ZWdvcmllcyk7ICRpKysgKQoJICB7CgkgICAgJGRpciA9IGNtc19qb2luX3BhdGgoJGNvbmZpZ1sndXBsb2Fkc19wYXRoJ10sCgkJCQkgJGNhdGVnb3JpZXNbJGldWyd1cGxvYWRzX2NhdGVnb3J5X3BhdGgnXSwKCQkJCSAnLnRodW1icycpOwoJICAgIHJlY3Vyc2l2ZV9kZWxldGUoJGRpcik7CgkgIH0KICAgICAgfQogICAgY2FzZSAnMS40JzoKICAgIGNhc2UgJzEuNC4xJzoKICAgICAgewoJJGRiID0mICR0aGlzLT5HZXREYigpOwoJJGRpY3QgPSBOZXdEYXRhRGljdGlvbmFyeSgkZGIpOwoJJHNxbGFycmF5ID0gJGRpY3QtPkFkZENvbHVtblNRTChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX2NhdGVnb3JpZXMiLAoJCQkJCSJ1cGxvYWRfY2F0ZWdvcnlfZGVsZXRhYmxlIEkiKTsKCSRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoICRzcWxhcnJheSApOwogICAgICB9CgogICAgY2FzZSAnMS41JzoKICAgIGNhc2UgJzEuNS4xJzoKICAgICAgewoJLy8gc2VuZGZpbGUgZm9ybSB0ZW1wbGF0ZQoJJGZuID0gZGlybmFtZShfX0ZJTEVfXykuJy90ZW1wbGF0ZXMvb3JpZ19zZW5kZmlsZWZvcm1fdGVtcGxhdGUudHBsJzsKCWlmKCBmaWxlX2V4aXN0cyggJGZuICkgKQoJICB7CgkgICAgJHRlbXBsYXRlID0gQGZpbGVfZ2V0X2NvbnRlbnRzKCRmbik7CgkgICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ3NlbmRmaWxlZm9ybV9zeXNkZWZhdWx0JywkdGVtcGxhdGUpOwoJICAgICR0aGlzLT5TZXRUZW1wbGF0ZSgnc2VuZGZpbGVmb3JtX2RlZmF1bHQnLCR0ZW1wbGF0ZSk7CgkgICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ2RlZmF1bHRfc2VuZGZpbGVmb3JtJywnZGVmYXVsdCcpOwoJICB9CgoJLy8geW91c2VuZGl0Zm9ybSB0ZW1wbGF0ZQoJJGZuID0gZGlybmFtZShfX0ZJTEVfXykuJy90ZW1wbGF0ZXMvb3JpZ195b3VzZW5kaXRmb3JtX3RlbXBsYXRlLnRwbCc7CglpZiggZmlsZV9leGlzdHMoICRmbiApICkKCSAgewoJICAgICR0ZW1wbGF0ZSA9IEBmaWxlX2dldF9jb250ZW50cygkZm4pOwoJICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCd5b3VzZW5kaXRmb3JtX3N5c2RlZmF1bHQnLCR0ZW1wbGF0ZSk7CgkgICAgJHRoaXMtPlNldFRlbXBsYXRlKCd5b3VzZW5kaXRmb3JtX2RlZmF1bHQnLCR0ZW1wbGF0ZSk7CgkgICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ2RlZmF1bHRfeW91c2VuZGl0Zm9ybScsJ2RlZmF1bHQnKTsKCSAgfQoKCS8vIHRlbXBsYXRlIHVzZWQgZm9yIHNlbmRmaWxlIGVtYWlsCgkkZm4gPSBkaXJuYW1lKF9fRklMRV9fKS4nL3RlbXBsYXRlcy9vcmlnX3NlbmRmaWxlcnB0X3RlbXBsYXRlLnRwbCc7CglpZiggZmlsZV9leGlzdHMoJGZuKSApCgkgIHsKCSAgICAkdGVtcGxhdGUgPSBAZmlsZV9nZXRfY29udGVudHMoJGZuKTsKCSAgICAkdGhpcy0+U2V0VGVtcGxhdGUoICd1cGxvYWRfc2VuZGZpbGVycHQnLCAkdGVtcGxhdGUpOwoJICB9CiAgICAgIH0KCiAgICBjYXNlICcxLjYnOgogICAgICB7CgkkZGIgPSYgJHRoaXMtPkdldERiKCk7CgkkZGljdCA9IE5ld0RhdGFEaWN0aW9uYXJ5KCRkYik7CgoJLy8gYSB0YWJsZSBmb3IgZmllbGQgZGVmaW5pdGlvbnMuCgkkZmxkcyA9ICIKICAgICAgICAgaWQgICAgICBJIEtFWSBBVVRPLAogICAgICAgICBuYW1lICAgIEMoMjU1KSwKICAgICAgICAgdHlwZSAgICBDKDIwKSwKICAgICAgICAgYXR0cmlicyBYLAogICAgICAgICBpb3JkZXIgIEksCiAgICAgICAgIHB1YmxpYyAgSTEiOwoJJHNxbGFycmF5ID0gJGRpY3QtPkNyZWF0ZVRhYmxlU1FMKCBjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzX2ZpZWxkZGVmcycsCgkJCQkJICAgJGZsZHMsICR0YWJvcHRhcnJheSk7CgkkZGljdC0+RXhlY3V0ZVNRTEFycmF5ICgkc3FsYXJyYXkpOwoKCgkvLyBhIHRhYmxlIGZvciBmaWVsZCB2YWx1ZXMKCSRmbGRzID0gInVwbG9hZF9pZCBJIEtFWSwKICAgICAgICAgZmxkX2lkICAgIEkgS0VZLAogICAgICAgICB2YWx1ZSAgICAgWCI7Cgkkc3FsYXJyYXkgPSAkZGljdC0+Q3JlYXRlVGFibGVTUUwoIGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHNfZmllbGR2YWxzJywKCQkJCQkgICAkZmxkcywgJHRhYm9wdGFycmF5KTsKCSRkaWN0LT5FeGVjdXRlU1FMQXJyYXkgKCRzcWxhcnJheSk7CgoJLy8gYSB0YWJsZSBmb3IgdGltZSBsaW1pdGVkIHVybHMKCSRmbGRzID0gIgogICAgICAgICB0bGtleV9pZCAgSSBLRVkgQVVUTywKICAgICAgICAgdXBsb2FkX2lkIEksCiAgICAgICAgIGVtYWlsICAgICBDKDI1NSksCiAgICAgICAgIHVybF9rZXkgICBDKDE2KSwKICAgICAgICAgY3JlYXRlZCAgICIuQ01TX0FET0RCX0RULiIsCiAgICAgICAgIGV4cGlyZXMgICAiLkNNU19BRE9EQl9EVC4iLAogICAgICAgICBtYXhfZG93bmxvYWRzIEkiOwoJJHNxbGFycmF5ID0gJGRpY3QtPkNyZWF0ZVRhYmxlU1FMKCBjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzX3RpbWVsaW1pdCcsCgkJCQkJICAgJGZsZHMsICR0YWJvcHRhcnJheSk7CgkkZGljdC0+RXhlY3V0ZVNRTEFycmF5ICgkc3FsYXJyYXkpOwoKCSRzcWxhcnJheSA9ICRkaWN0LT5BZGRDb2x1bW5TUUwoY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc19kb3dubG9hZHMiLAoJCQkJCSJ1cmxfa2V5IEMoNDApIik7CgkkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCAkc3FsYXJyYXkgKTsKCiAgICAgIH0KCiAgICBjYXNlICcxLjknOgogICAgY2FzZSAnMS45LjEnOgogICAgY2FzZSAnMS45LjInOgogICAgY2FzZSAnMS45LjMnOgogICAgY2FzZSAnMS45LjQnOgogICAgICB7CgkkZGIgPSYgJHRoaXMtPkdldERiKCk7CgkkZGljdCA9IE5ld0RhdGFEaWN0aW9uYXJ5KCRkYik7Cgkkc3FsYXJyYXkgPSAkZGljdC0+QWRkQ29sdW1uU1FMKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfY2F0ZWdvcmllcyIsCgkJCQkJInVwbG9hZF9jYXRlZ29yeV9leHBpcmVzX2hycyBJIik7CgkkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCAkc3FsYXJyYXkgKTsKCgkkdGhpcy0+U2V0UHJlZmVyZW5jZSAoJ2NhdGVnb3J5X2V4cGlyeScsMCk7CgkkdGhpcy0+QWRkRXZlbnRIYW5kbGVyKCdDb3JlJywnQ29udGVudFBvc3RSZW5kZXInKTsKICAgICAgfQoKICAgIGNhc2UgJzEuMTAnOgogICAgY2FzZSAnMS4xMC4xJzoKICAgICAgewoJJHRoaXMtPkNyZWF0ZVBlcm1pc3Npb24gKCdVcGxvYWQgRmlsZXMgdG8gVXBsb2FkcycsICdVcGxvYWQgRmlsZXMgdG8gVXBsb2FkcycpOwogICAgICB9CiAgICB9CiAgICAvLyBhbnl0aGluZyBwYXN0IGhlcmUgc2hvdWxkIGJlIGZpbmUuCiAgICByZXR1cm47Cj8+]]></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+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KIAl7JGlucHV0X2NhdGVnb3J5bGlzdGFibGV9CiAgICA8L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfY2F0ZWdvcnlkZWxldGFibGV9PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgICAJeyRpbnB1dF9jYXRlZ29yeWRlbGV0YWJsZX0KCTxici8+CiAgICAgICAgeyRtb2QtPkxhbmcoJ2luZm9fY2F0ZWdvcnlkZWxldGFibGUnKX0KICAgIDwvcD4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X2NhdGVnb3J5X2V4cGlyZXNfaHJzJyl9PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgICAJeyRpbnB1dF9jYXRlZ29yeV9leHBpcmVzX2hyc30KCTxici8+CiAgICAgICAgeyRtb2QtPkxhbmcoJ2luZm9fY2F0ZWdvcnlfZXhwaXJlc19ocnMnKX0KICAgIDwvcD4KICA8L2Rpdj4Ke2lmIGlzc2V0KCRwcm9tcHRfZ3JvdXBsaXN0KX0KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF9ncm91cGxpc3R9PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9ncm91cGxpc3R9PGJyLz57JGluZm9fZ3JvdXBsaXN0fTwvcD4KICA8L2Rpdj4Key9pZn0KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij4mbmJzcDs8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGhpZGRlbn17JHNjYW59eyR0aHVtYm5haWxzfXskc3VibWl0fXskY2FuY2VsfTwvcD4KICA8L2Rpdj4KeyRlbmRmb3JtfQp7L2lmfQo=]]></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[e2lmICRtZXNzYWdlIT0nJ308cD57JG1lc3NhZ2V9PC9wPnsvaWZ9Cnskc3RhcnRmb3JtfQo8ZmllbGRzZXQ+CjxsZWdlbmQ+eyRtb2QtPkxhbmcoJ3VwbG9hZGluZ19zZXR0aW5ncycpfTo8L2xlZ2VuZD4KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CgkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHRpdGxlX3ZhbGlkX3VwbG9hZGV4dGVuc2lvbnN9OjwvcD4KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X3ZhbGlkX3VwbG9hZGV4dGVuc2lvbnN9PC9wPgoJPC9kaXY+Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJCTxwIGNsYXNzPSJwYWdldGV4dCI+eyR0aXRsZV9lbWFpbF9vbl91cGxvYWR9OjwvcD4KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2VtYWlsX29uX3VwbG9hZH08L3A+Cgk8L2Rpdj4KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CgkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHRpdGxlX3JlZGlyZWN0X29uX3VwbG9hZH06PC9wPgoJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfcmVkaXJlY3Rfb25fdXBsb2FkfTwvcD4KCTwvZGl2PgoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCQk8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfYWxsb3dfdXBsb2FkX3NlbmRmaWxlJyl9OjwvcD4KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0ieyRhY3Rpb25pZH1hbGxvd191cGxvYWRfc2VuZGZpbGUiIHZhbHVlPSIwIi8+CiAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJjaGVja2JveCIgbmFtZT0ieyRhY3Rpb25pZH1hbGxvd191cGxvYWRfc2VuZGZpbGUiIHZhbHVlPSIxIiB7aWYgJGFsbG93X3VwbG9hZF9zZW5kZmlsZX1jaGVja2VkPSJjaGVja2VkInsvaWZ9Lz4KICAgICAgICAgICAgICAgIDwvcD4KCTwvZGl2Pgo8L2ZpZWxkc2V0Pgo8ZmllbGRzZXQ+CjxsZWdlbmQ+eyRtb2QtPkxhbmcoJ2dlbmVyYWxfc2V0dGluZ3MnKX06PC9sZWdlbmQ+Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJCTxwIGNsYXNzPSJwYWdldGV4dCI+eyR0aXRsZV9kdW1teV9pbmRleF9odG1sfTo8L3A+CgkJPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9kdW1teV9pbmRleF9odG1sfTwvcD4KCTwvZGl2PgoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCQk8cCBjbGFzcz0icGFnZXRleHQiPnskdGl0bGVfc2VuZGZpbGVwYWdlfTo8L3A+CgkJPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9zZW5kZmlsZXBhZ2V9PC9wPgoJPC9kaXY+Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJCTxwIGNsYXNzPSJwYWdldGV4dCI+eyR0aXRsZV9yZWRpcmVjdF9vbl9zZW5kZmlsZX06PC9wPgoJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfcmVkaXJlY3Rfb25fc2VuZGZpbGV9PC9wPgoJPC9kaXY+Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJCTxwIGNsYXNzPSJwYWdldGV4dCI+eyR0aXRsZV9kb3dubG9hZF9jaHVua3NpemV9OjwvcD4KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2Rvd25sb2FkX2NodW5rc2l6ZX0mbmJzcDt7JGluZm9fZG93bmxvYWRfY2h1bmtzaXplfTwvcD4KCTwvZGl2PgoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCQk8cCBjbGFzcz0icGFnZXRleHQiPnskdGl0bGVfYWxsb3dfZGVsZXRlfTo8L3A+CgkJPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9hbGxvd19kZWxldGV9PC9wPgoJPC9kaXY+Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJCTxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9nZXRmaWxlX3Jlc3VsdHBhZ2UnKX06PC9wPgoJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgICAgICAgICAgICAgICB7JGlucHV0X2dldGZpbGVfcmVzdWx0cGFnZX0KICAgICAgICAgICAgICAgIDwvcD4KCTwvZGl2PgoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCQk8cCBjbGFzcz0icGFnZXRleHQiPnskdGl0bGVfc3VibmV0X2V4Y2x1c2lvbnN9OjwvcD4KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X3N1Ym5ldF9leGNsdXNpb25zfTwvcD4KCTwvZGl2PgoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCQk8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCd0aXRsZV9jYXRlZ29yeV9leHBpcnknKX06PC9wPgoJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPjxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGFjdGlvbmlkfWNhdGVnb3J5X2V4cGlyeSIgdmFsdWU9InskY2F0ZWdvcnlfZXhwaXJ5fSIgc2l6ZT0iMyIgbWF4bGVuZ3RoPSI0Ii8+PGJyLz57JG1vZC0+TGFuZygnaW5mb19kZmx0X2NhdGVnb3J5X2V4cGlyeScpfTwvcD4KCTwvZGl2Pgo8L2ZpZWxkc2V0PgoKPGZpZWxkc2V0Pgo8bGVnZW5kPnskbW9kLT5MYW5nKCdpbWFnZV9zZXR0aW5ncycpfTo8L2xlZ2VuZD4KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CgkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHRpdGxlX2F1dG90aHVtYm5haWxfZXh0ZW5zaW9uc306PC9wPgoJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfYXV0b3RodW1ibmFpbF9leHRlbnNpb25zfTwvcD4KCTwvZGl2PgoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCQk8cCBjbGFzcz0icGFnZXRleHQiPnskdGl0bGVfYXV0b3RodW1ibmFpbF9zaXplfTo8L3A+CgkJPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9hdXRvdGh1bWJuYWlsX3NpemV9PC9wPgoJPC9kaXY+Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJCTxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ2F1dG93YXRlcm1hcmsnKX06PC9wPgoJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJ7JGFjdGlvbmlkfWF1dG93YXRlcm1hcmsiIHZhbHVlPSIwIi8+CiAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJjaGVja2JveCIgbmFtZT0ieyRhY3Rpb25pZH1hdXRvd2F0ZXJtYXJrIiB2YWx1ZT0iMSJ7aWYgJGF1dG93YXRlcm1hcmsgPT0gMX0gY2hlY2tlZD0iY2hlY2tlZCJ7L2lmfS8+CiAgICAgICAgICAgICAgICA8L3A+Cgk8L2Rpdj4KPC9maWVsZHNldD4KCjxmaWVsZHNldD4KPGxlZ2VuZD57JG1vZC0+TGFuZygndGltZWxpbWl0ZWRfdXJsX3NldHRpbmdzJyl9OiZuYnNwOzwvbGVnZW5kPgoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCQk8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfdGltZWxpbWl0ZWRfaG91cnMnKX06PC9wPgoJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH10aW1lbGltaXRlZF9ob3VycyIgdmFsdWU9InskdGltZWxpbWl0ZWRfaG91cnN9IiBzaXplPSIzIiBtYXhsZW5ndGg9IjMiLz4KICAgICAgICAgICAgICAgICAgPGJyLz4KICAgICAgICAgICAgICAgICAgeyRtb2QtPkxhbmcoJ2luZm9fdGltZWxpbWl0ZWRfaG91cnMnKX0KICAgICAgICAgICAgICAgIDwvcD4KCTwvZGl2PgoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCQk8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfdGltZWxpbWl0ZWRfZG93bmxvYWRzJyl9OjwvcD4KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9dGltZWxpbWl0ZWRfZG93bmxvYWRzIiB2YWx1ZT0ieyR0aW1lbGltaXRlZF9kb3dubG9hZHN9IiBzaXplPSIzIiBtYXhsZW5ndGg9IjMiLz4KICAgICAgICAgICAgICAgICAgPGJyLz4KICAgICAgICAgICAgICAgICAgeyRtb2QtPkxhbmcoJ2luZm9fdGltZWxpbWl0ZWRfZG93bmxvYWRzJyl9CiAgICAgICAgICAgICAgICA8L3A+Cgk8L2Rpdj4KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CgkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X3RpbWVsaW1pdGVkX2F1dG9kZWxldGUnKX06PC9wPgoJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH10aW1lbGltaXRlZF9hdXRvZGVsZXRlIiB2YWx1ZT0ieyR0aW1lbGltaXRlZF9hdXRvZGVsZXRlfSIgc2l6ZT0iMyIgbWF4bGVuZ3RoPSIzIi8+CiAgICAgICAgICAgICAgICA8L3A+Cgk8L2Rpdj4KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CgkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X3RpbWVsaW1pdGVkX3N1YmplY3QnKX06PC9wPgoJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH10aW1lbGltaXRlZF9zdWJqZWN0IiB2YWx1ZT0ieyR0aW1lbGltaXRlZF9zdWJqZWN0fSIgc2l6ZT0iODAiIG1heGxlbmd0aD0iMjU1Ii8+CiAgICAgICAgICAgICAgICA8L3A+Cgk8L2Rpdj4KPC9maWVsZHNldD4KCgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJCTxwIGNsYXNzPSJwYWdldGV4dCI+Jm5ic3A7PC9wPgoJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskc3VibWl0fTwvcD4KCTwvZGl2Pgp7JGVuZGZvcm19Cg==]]></data>
	</file>
	<file>
	  <filename>/templates/admin_add_field.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGgzPnskbW9kLT5MYW5nKCd0aXRsZV9hZGRfZmllbGQnKX08L2gzPgoKeyRmb3Jtc3RhcnR9CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X2ZpZWxkX25hbWUnKX06PC9wPgogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPjxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGFjdGlvbmlkfW5hbWUiIHZhbHVlPSJ7JGZsZC5uYW1lfSIgc2l6ZT0iNTAiIG1heGxlbmd0aD0iMjU1Ii8+PC9wPgo8L2Rpdj4KCjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X2ZpZWxkX3R5cGUnKX06PC9wPgogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgIDxzZWxlY3QgbmFtZT0ieyRhY3Rpb25pZH10eXBlIiBvbmNoYW5nZT0idGhpcy5mb3JtLnN1Ym1pdCgpOyI+CiAgICAgICB7aHRtbF9vcHRpb25zIG9wdGlvbnM9JGZsZHR5cGVzIHNlbGVjdGVkPSRmbGQudHlwZX0KICAgICA8L3NlbGVjdD4KICA8L3A+CjwvZGl2PgoKe2lmICRmbGQudHlwZSA9PSAndGV4dGlucHV0J30KICB7KiB0ZXh0IGZpZWxkIG9yIGVtYWlsIGZpZWxkICp9CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9maWVsZF9sZW5ndGgnKX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij48aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1hdHRyaWJfbGVuZ3RoIiB2YWx1ZT0ieyRmbGQuYXR0cmliLmxlbmd0aH0iIHNpemU9IjMiIG1heGxlbmd0aD0iMyIvPjwvcD4KICA8L2Rpdj4KCiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9maWVsZF9tYXhsZW5ndGgnKX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij48aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1hdHRyaWJfbWF4bGVuZ3RoIiB2YWx1ZT0ieyRmbGQuYXR0cmliLm1heGxlbmd0aH0iIHNpemU9IjQiIG1heGxlbmd0aD0iNCIvPjwvcD4KICA8L2Rpdj4Ke2Vsc2VpZiAkZmxkLnR5cGUgPT0gJ3RleHRhcmVhJ30KICB7KiB0ZXh0IGFyZWEgZmllbGQgKn0KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X2RlZmF1bHRfY29udGVudCcpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPgogICAgICA8dGV4dGFyZWEgbmFtZT0ieyRhY3Rpb25pZH1hdHRyaWJfZGZsdGNvbnRlbnQiIHJvd3M9IjUiPnskZmxkLmF0dHJpYi5kZmx0Y29udGVudH08L3RleHRhcmVhPgogICAgPC9wPgogIDwvZGl2PgoKICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X3VzZV93eXNpd3lnJyl9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+CiAgICAgIDxzZWxlY3QgbmFtZT0ieyRhY3Rpb25pZH1hdHRyaWJfdXNld3lzaXd5ZyI+CiAgICAgICAge2h0bWxfb3B0aW9ucyBvcHRpb25zPSR5ZXNubyBzZWxlY3RlZD0kZmxkcy5hdHRyaWIudXNld3lzaXd5Z30KICAgICAgPC9zZWxlY3Q+CiAgICA8L3A+CiAgPC9kaXY+CntlbHNlaWYgJGZsZC50eXBlID09ICdkcm9wZG93bicgb3IgJGZsZC50eXBlID09ICdtdWx0aXNlbGVjdCd9CiAgeyogZHJvcGRvd24gb3IgbXVsdGlzZWxlY3QgKn0KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X2Ryb3Bkb3duX29wdGlvbnMnKX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij4KICAgICAgPHRleHRhcmVhIG5hbWU9InskYWN0aW9uaWR9YXR0cmliX29wdGlvbnMiIHJvd3M9IjUiPnskZmxkLmF0dHJpYi5vcHRpb25zfTwvdGV4dGFyZWE+CiAgICA8L3A+CiAgPC9kaXY+CnsvaWZ9Cgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9wdWJsaWNfZmllbGQnKX08L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICA8c2VsZWN0IG5hbWU9InskYWN0aW9uaWR9cHVibGljIj4KICAgICAge2h0bWxfb3B0aW9ucyBvcHRpb25zPSR5ZXNubyB2YWx1ZT0kZmxkLnB1YmxpY30KICAgIDwvc2VsZWN0PgogIDwvcD4KPC9kaXY+Cgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+Jm5ic3A7PC9wPgogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgPGlucHV0IHR5cGU9InN1Ym1pdCIgbmFtZT0ieyRhY3Rpb25pZH1zdWJtaXQiIHZhbHVlPSJ7JG1vZC0+TGFuZygnc3VibWl0Jyl9Ii8+CiAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiBuYW1lPSJ7JGFjdGlvbmlkfWNhbmNlbCIgdmFsdWU9InskbW9kLT5MYW5nKCdjYW5jZWwnKX0iLz4KICA8L3A+CjwvZGl2Pgp7JGZvcm1lbmR9]]></data>
	</file>
	<file>
	  <filename>/templates/admin_add_timelimited.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGgzPnskbW9kLT5MYW5nKCdhZGRlZGl0X3RpbWVsaW1pdGVkX2tleScpfTwvaDM+CjxoND57JG1vZC0+TGFuZygnZmlsZV9pbmZvMicsJHVwbG9hZC51cGxvYWRfbmFtZSwkdXBsb2FkLnVwbG9hZF9pZCl9PC9oND4KCnskZm9ybXN0YXJ0fQogPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygnZW1haWxfYWRkcmVzcycpfTwvcD4KICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9ZW1haWwiIHZhbHVlPSJ7JGVtYWlsfSIgc2l6ZT0iNDAiIG1heGxlbmd0aD0iMjU1Ii8+CiAgIDwvcD4KIDwvZGl2PgoKIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF90aW1lbGltaXRlZF9ob3VycycpfTwvcD4KICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9aG91cnMiIHZhbHVlPSJ7JGhvdXJzfSIgc2l6ZT0iMyIgbWF4bGVuZ3RoPSIzIi8+CiAgIDwvcD4KIDwvZGl2PgoKIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF90aW1lbGltaXRlZF9kb3dubG9hZHMnKX08L3A+CiAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGFjdGlvbmlkfWRvd25sb2FkcyIgdmFsdWU9InskZG93bmxvYWRzfSIgc2l6ZT0iMyIgbWF4bGVuZ3RoPSIzIi8+CiAgIDwvcD4KIDwvZGl2PgoKIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF90aW1lbGltaXRlZF9zZW5kaXQnKX08L3A+CiAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgIDxpbnB1dCB0eXBlPSJjaGVja2JveCIgbmFtZT0ieyRhY3Rpb25pZH1zZW5kaXQiIHZhbHVlPSIxIiBjaGVja2VkPSJjaGVja2VkIi8+CiAgIDwvcD4KIDwvZGl2PgoKIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgIDxwIGNsYXNzPSJwYWdldGV4dCI+Jm5ic3A7PC9wPgogICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiBuYW1lPSJ7JGFjdGlvbmlkfXN1Ym1pdCIgdmFsdWU9InskbW9kLT5MYW5nKCdzdWJtaXQnKX0iLz4KICAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiBuYW1lPSJ7JGFjdGlvbmlkfWNhbmNlbCIgdmFsdWU9InskbW9kLT5MYW5nKCdjYW5jZWwnKX0iLz4KICAgPC9wPgogPC9kaXY+CnskZm9ybWVuZH0=]]></data>
	</file>
	<file>
	  <filename>/templates/admin_cat_bulkcopy.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyRmb3Jtc3RhcnR9Cntmb3JlYWNoIGZyb209JGNhdGVnb3JpZXMgaXRlbT0nb25lY2F0J30KPGZpZWxkc2V0Pgo8bGVnZW5kPnskb25lY2F0LnVwbG9hZF9jYXRlZ29yeV9uYW1lfSZuYnNwOyh7JG9uZWNhdC51cGxvYWRfY2F0ZWdvcnlfcGF0aH0pOiZuYnNwOzwvbGVnZW5kPgogPGRpdiBjbGFzcz0icGFnZW92ZXJsb3ciPgogICA8dGFibGUgY2xhc3M9InBhZ2V0YWJsZSIgY2VsbHNwYWNpbmc9IjAiPgogICAgIDx0aGVhZD4KICAgICAgIDx0cj4KICAgICAgICAgPHRoPnskbW9kLT5MYW5nKCduYW1lJyl9OjwvdGg+CiAgICAgICAgIDx0aD57JG1vZC0+TGFuZygncGF0aCcpfTo8L3RoPgogICAgICAgICA8dGg+eyRtb2QtPkxhbmcoJ2NvcHlfZmlsZXMnKX06PC90aD4KICAgICAgIDwvdHI+CiAgICAgPC90aGVhZD4KICAgICA8dGJvZHk+CiAgICAgICA8dHI+CiAgICAgICAgIDx0ZD48aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1jb3B5Y2F0ZWdvcnlbeyRvbmVjYXQudXBsb2FkX2NhdGVnb3J5X2lkfV1bbmFtZV0iIHZhbHVlPSIiIHNpemU9IjUwIiBtYXhsZW5ndGg9IjI1NSIvPjwvdGQ+CiAgICAgICAgIDx0ZD48aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1jb3B5Y2F0ZWdvcnlbeyRvbmVjYXQudXBsb2FkX2NhdGVnb3J5X2lkfV1bcGF0aF0iIHZhbHVlPSIiIHNpemU9IjUwIiBtYXhsZW5ndGg9IjI1NSIvPjwvdGQ+CiAgICAgICAgIDx0ZD4KICAgICAgICAgICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJ7JGFjdGlvbmlkfWNvcHljYXRlZ29yeVt7JG9uZWNhdC51cGxvYWRfY2F0ZWdvcnlfaWR9XVtkb2ZpbGVzXSIgdmFsdWU9IjAiLz4KICAgICAgICAgICA8aW5wdXQgdHlwZT0iY2hlY2tib3giIG5hbWU9InskYWN0aW9uaWR9Y29weWNhdGVnb3J5W3skb25lY2F0LnVwbG9hZF9jYXRlZ29yeV9pZH1dW2RvZmlsZXNdIiB2YWx1ZT0iMSIvPgogICAgICAgICA8L3RkPgogICAgICAgPC90cj4KICAgICA8L3Rib2R5PgogICA8L3RhYmxlPgogPC9kaXY+CjwvZmllbGRzZXQ+CnsvZm9yZWFjaH0KCjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij4mbmJzcDs8L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiBuYW1lPSJ7JGFjdGlvbmlkfWJ1bGtjb3B5X3N1Ym1pdCIgdmFsdWU9InskbW9kLT5MYW5nKCdzdWJtaXQnKX0iLz4KICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9InskYWN0aW9uaWR9Y2FuY2VsIiB2YWx1ZT0ieyRtb2QtPkxhbmcoJ2NhbmNlbCcpfSIvPgogIDwvcD4KPC9kaXY+CnskZm9ybWVuZH0=]]></data>
	</file>
	<file>
	  <filename>/templates/admin_copycategory.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogY29weSBjYXRlZ29yeSB0ZW1wbGF0ZSAqfQp7Kgp7bGl0ZXJhbH0KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgpqUXVlcnkoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uKCl7CiAgalF1ZXJ5KCcjZXh0cmFsaW5rJykuY2xpY2soZnVuY3Rpb24oKXsKICAgIGpRdWVyeSgnI2V4dHJhaW5mbycpLnRvZ2dsZSgpOwogICAgcmV0dXJuIGZhbHNlOwogIH0pOwp9KTsKPC9zY3JpcHQ+CnsvbGl0ZXJhbH0KKn0KCnskZm9ybXN0YXJ0fQogIDxmaWVsZHNldD4KICA8bGVnZW5kPnskbW9kLT5MYW5nKCdzb3VyY2UnKX06Jm5ic3A7PC9sZWdlbmQKICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X2NhdGVnb3J5bmFtZScpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGNhdGVnb3J5LnVwbG9hZF9jYXRlZ29yeV9uYW1lfTwvcD4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X2NhdGVnb3J5ZGVzYycpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGNhdGVnb3J5LnVwbG9hZF9jYXRlZ29yeV9kZXNjcmlwdGlvbn08L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9jYXRlZ29yeXBhdGgnKX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRjYXRlZ29yeS51cGxvYWRfY2F0ZWdvcnlfcGF0aH08L3A+CiAgPC9kaXY+CiAgPC9maWVsZHNldD4KICA8YnIvPgogCiAgPGZpZWxkc2V0PgogIDxsZWdlbmQ+eyRtb2QtPkxhbmcoJ2Rlc3RpbmF0aW9uJyl9OiZuYnNwOzwvbGVnZW5kCiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9jYXRlZ29yeW5hbWUnKX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGFjdGlvbmlkfWNhdGVnb3J5X25hbWUiIHNpemU9IjUwIiBtYXhsZW5ndGg9IjI1NSIvPgogICAgICB7JGlucHV0X2NhdGVnb3J5bmFtZX0KICAgICAgPGJyLz4KICAgICAgeyRtb2QtPkxhbmcoJ2luZm9fY2F0ZWdvcnluYW1lJyl9CiAgICA8L3A+CiAgPC9kaXY+CgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfY2F0ZWdvcnlkZXNjJyl9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1jYXRlZ29yeV9kZXNjIiBzaXplPSI1MCIgbWF4bGVuZ3RoPSIyNTUiIHZhbHVlPSJ7JGNhdGVnb3J5LnVwbG9hZF9jYXRlZ29yeV9kZXNjcmlwdGlvbn0iLz4KICAgICAgeyRpbnB1dF9jYXRlZ29yeW5hbWV9CiAgICAgIDxici8+CiAgICAgIHskbW9kLT5MYW5nKCdpbmZvX2NhdGVnb3J5ZGVzYycpfQogICAgPC9wPgogIDwvZGl2PgoKICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X2NhdGVnb3J5cGF0aCcpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9Y2F0ZWdvcnlfcGF0aCIgc2l6ZT0iNTAiIG1heGxlbmd0aD0iMjU1Ii8+CiAgICAgIHskaW5wdXRfY2F0ZWdvcnluYW1lfQogICAgICA8YnIvPgogICAgICB7JG1vZC0+TGFuZygnaW5mb19jYXRlZ29yeXBhdGgnKX0KICAgIDwvcD4KICA8L2Rpdj4KCiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9jb3B5X2ZpbGVzJyl9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJ7JGFjdGlvbmlkfWNvcHlmaWxlcyIgdmFsdWU9IjAiLz4KICAgICAgPGlucHV0IHR5cGU9ImNoZWNrYm94IiBuYW1lPSJ7JGFjdGlvbmlkfWNvcHlmaWxlcyIgdmFsdWU9IjEiIGNoZWNrZWQ9ImNoZWNrZWQiLz4KICAgICAgPGJyLz4KICAgICAgeyRtb2QtPkxhbmcoJ2luZm9fY29weV9maWxlcycpfQogICAgPC9wPgogIDwvZGl2PgoKICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij4mbmJzcDs8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAgPGlucHV0IHR5cGU9InN1Ym1pdCIgbmFtZT0ieyRhY3Rpb25pZH1zdWJtaXQiIHZhbHVlPSJ7JG1vZC0+TGFuZygnc3VibWl0Jyl9IiAvPgogICAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiBuYW1lPSJ7JGFjdGlvbmlkfWNhbmNlbCIgdmFsdWU9InskbW9kLT5MYW5nKCdjYW5jZWwnKX0iIC8+CiAgICA8L3A+CiAgPC9kaXY+CiAgPC9maWVsZHNldD4KeyRmb3JtZW5kfQ==]]></data>
	</file>
	<file>
	  <filename>/templates/admin_email_template_tab.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGZpZWxkc2V0Pgo8bGVnZW5kPnskcHJvbXB0X3NlbmRmaWxlX2VtYWlsX3RlbXBsYXRlfTwvbGVnZW5kPgp7JGZvcm1zdGFydDJ9CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij4mbmJzcDs8L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRzZW5kZmlsZV9lbWFpbF90ZW1wbGF0ZX08YnIvPnskZGVmYXVsdDJ9PC9wPgo8L2Rpdj4KPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICA8cCBjbGFzcz0icGFnZXRleHQiPiZuYnNwOzwvcD4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JHN1Ym1pdDJ9PC9wPgo8L2Rpdj4KeyRmb3JtZW5kMn0KPC9maWVsZHNldD4KCjxici8+Cgo8ZmllbGRzZXQ+CjxsZWdlbmQ+eyRwcm9tcHRfbm90aWZ5X2VtYWlsX3RlbXBsYXRlfTwvbGVnZW5kPgp7JGZvcm1zdGFydDF9CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij4mbmJzcDs8L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRub3RpZnlfZW1haWxfdGVtcGxhdGV9PGJyLz57JGRlZmF1bHQxfTwvcD4KPC9kaXY+CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij4mbmJzcDs8L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRzdWJtaXQxfTwvcD4KPC9kaXY+CnskZm9ybWVuZDF9CjwvZmllbGRzZXQ+]]></data>
	</file>
	<file>
	  <filename>/templates/admin_fields_tab.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[e2lmIGlzc2V0KCRmaWVsZHMpfQo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDx0YWJsZSBjbGFzcz0icGFnZXRhYmxlIGNtc19zb3J0YWJsZSB0YWJsZXNvcnRlciIgY2VsbHNwYWNpbmc9IjAiPgogICAgPHRoZWFkPgogICAgICA8dHI+CiAgICAgICAgPHRoPnskbW9kLT5MYW5nKCdpZCcpfTwvdGg+CiAgICAgICAgPHRoPnskbW9kLT5MYW5nKCduYW1lJyl9PC90aD4KICAgICAgICA8dGg+eyRtb2QtPkxhbmcoJ3R5cGUnKX08L3RoPgogICAgICAgIDx0aCBjbGFzcz0ie2xpdGVyYWx9e3NvcnRlcjogZmFsc2V9ey9saXRlcmFsfSBwYWdlaWNvbiI+PC90aD4KICAgICAgICA8dGggY2xhc3M9IntsaXRlcmFsfXtzb3J0ZXI6IGZhbHNlfXsvbGl0ZXJhbH0gcGFnZWljb24iPjwvdGg+CiAgICAgICAgPHRoIGNsYXNzPSJ7bGl0ZXJhbH17c29ydGVyOiBmYWxzZX17L2xpdGVyYWx9IHBhZ2VpY29uIj48L3RoPgogICAgICAgIDx0aCBjbGFzcz0ie2xpdGVyYWx9e3NvcnRlcjogZmFsc2V9ey9saXRlcmFsfSBwYWdlaWNvbiI+PC90aD4KICAgICAgPC90cj4KICAgIDwvdGhlYWQ+CiAgICA8dGJvZHk+CiAgICB7Zm9yZWFjaCBmcm9tPSRmaWVsZHMgaXRlbT0nb25lZmllbGQnfQogICAgICB7Y3ljbGUgdmFsdWVzPSJyb3cxLHJvdzIiIGFzc2lnbj0ncm93Y2xhc3MnfQogICAgICA8dHIgY2xhc3M9Inskcm93Y2xhc3N9IiBvbm1vdXNlb3Zlcj0idGhpcy5jbGFzc05hbWU9J3skcm93Y2xhc3N9aG92ZXInOyIgb25tb3VzZW91dD0idGhpcy5jbGFzc05hbWU9J3skcm93Y2xhc3N9JzsiPgogICAgICAgIDx0ZD57JG9uZWZpZWxkLmlkfTwvdGQ+CiAgICAgICAgPHRkPjxhIGhyZWY9Inskb25lZmllbGQuZWRpdF91cmx9IiB0aXRsZT0ieyRtb2QtPkxhbmcoJ2VkaXRfdGhpc19maWVsZCcpfSI+eyRvbmVmaWVsZC5uYW1lfTwvYT48L3RkPgogICAgICAgIDx0ZD57JGZpZWxkdHlwZXNbJG9uZWZpZWxkLnR5cGVdfTwvdGQ+CiAgICAgICAgPHRkPgogICAgICAgICAge2lmIGlzc2V0KCRvbmVmaWVsZC5tb3ZlZG93bl91cmwpfQogICAgICAgICAgICA8YSBocmVmPSJ7JG9uZWZpZWxkLm1vdmVkb3duX3VybH0iIHRpdGxlPSJ7JG1vZC0+TGFuZygnbW92ZV9kb3duJyl9Ij57Y2dpbWFnZSBpbWFnZT0naWNvbnMvc3lzdGVtL3NvcnRfZG93bi5naWYnIGFsdD0kbW9kLT5MYW5nKCdkb3duJyl9PC9hPgogICAgICAgICAgey9pZn0KICAgICAgICA8L3RkPgogICAgICAgIDx0ZD4KICAgICAgICAgIHtpZiBpc3NldCgkb25lZmllbGQubW92ZXVwX3VybCl9CiAgICAgICAgICAgIDxhIGhyZWY9Inskb25lZmllbGQubW92ZXVwX3VybH0iIHRpdGxlPSJ7JG1vZC0+TGFuZygnbW92ZV91cCcpfSI+e2NnaW1hZ2UgaW1hZ2U9J2ljb25zL3N5c3RlbS9zb3J0X3VwLmdpZicgYWx0PSRtb2QtPkxhbmcoJ3VwJyl9PC9hPgogICAgICAgICAgey9pZn0KICAgICAgICA8L3RkPgogICAgICAgIDx0ZD48YSBocmVmPSJ7JG9uZWZpZWxkLmVkaXRfdXJsfSIgdGl0bGU9InskbW9kLT5MYW5nKCdlZGl0X3RoaXNfZmllbGQnKX0iPntjZ2ltYWdlIGltYWdlPSdpY29ucy9zeXN0ZW0vZWRpdC5naWYnIGFsdD0kbW9kLT5MYW5nKCdlZGl0Jyl9PC9hPjwvdGQ+CiAgICAgICAgPHRkPjxhIGhyZWY9Inskb25lZmllbGQuZGVsZXRlX3VybH0iIHRpdGxlPSJ7JG1vZC0+TGFuZygnZGVsZXRlX3RoaXNfZmllbGQnKX0iIG9uY2xpY2s9InJldHVybiBjb25maXJtKCd7JG1vZC0+TGFuZygnYXNrX2RlbGV0ZV9maWVsZCcpfScpOyI+e2NnaW1hZ2UgaW1hZ2U9J2ljb25zL3N5c3RlbS9kZWxldGUuZ2lmJyBhbHQ9JG1vZC0+TGFuZygnZGVsZXRlJyl9PC9hPjwvdGQ+CiAgICAgIDwvdHI+CiAgICB7L2ZvcmVhY2h9CiAgICA8L3Rib2R5PgogIDwvdGFibGU+CjwvZGl2Pgp7L2lmfQoKPHAgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgeyRhZGRmaWVsZF9saW5rfQo8L3A+]]></data>
	</file>
	<file>
	  <filename>/templates/admin_manage_timelimited.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGgzPnskbW9kLT5MYW5nKCdtYW5hZ2VfdGltZWxpbWl0ZWQnKX08L2gzPgo8aDQ+eyRtb2QtPkxhbmcoJ2ZpbGVfaW5mbzInLCR1cGxvYWQudXBsb2FkX25hbWUsJHVwbG9hZC51cGxvYWRfaWQpfTwvaDQ+Cjxici8+Cgo8ZGl2IGNsYXNzPSJwYWdlb3B0aW9ucyI+CnskYmFja19saW5rfQo8L2Rpdj4KCntpZiBpc3NldCgkZGF0YSl9Cjx0YWJsZSBjbGFzcz0icGFnZXRhYmxlIiBjZWxsc3BhY2luZz0iMCI+CiAgPHRoZWFkPgogICAgPHRyPgogICAgICA8dGg+eyRtb2QtPkxhbmcoJ2VtYWlsX2FkZHJlc3MnKX08L3RoPgogICAgICA8dGg+eyRtb2QtPkxhbmcoJ3VybF9rZXknKX08L3RoPgogICAgICA8dGg+eyRtb2QtPkxhbmcoJ2NyZWF0ZWQnKX08L3RoPgogICAgICA8dGg+eyRtb2QtPkxhbmcoJ2V4cGlyZXMnKX08L3RoPgogICAgICA8dGg+eyRtb2QtPkxhbmcoJ2Rvd25sb2FkcycpfTwvdGg+CiAgICAgIDx0aCBjbGFzcz0icGFnZWljb24iPiZuYnNwOzwvdGg+CiAgICA8L3RyPgogIDwvdGhlYWQ+CiAgPHRib2R5PgogIHtmb3JlYWNoIGZyb209JGRhdGEgaXRlbT0nb3RsJ30KICAgIHtjeWNsZSB2YWx1ZXM9J3JvdzEscm93MicgYXNzaWduPSdyb3djbGFzcyd9CiAgICA8dHIgY2xhc3M9Inskcm93Y2xhc3N9IiBvbm1vdXNlb3Zlcj0idGhpcy5jbGFzc05hbWU9J3skcm93Y2xhc3N9aG92ZXInOyIgb25tb3VzZW91dD0idGhpcy5jbGFzc05hbWU9J3skcm93Y2xhc3N9JzsiPgogICAgICA8dGQ+eyRvdGwuZW1haWx9PC90ZD4KICAgICAgPHRkPjxhIGhyZWY9Inskb3RsLmRvd25sb2FkX3VybH0iPnskb3RsLnVybF9rZXl9PC9hPjwvdGQ+CiAgICAgIDx0ZD57JG90bC5jcmVhdGVkfGNtc19kYXRlX2Zvcm1hdH08L3RkPgogICAgICA8dGQ+eyRvdGwuZXhwaXJlc3xjbXNfZGF0ZV9mb3JtYXR9PC90ZD4KICAgICAgPHRkPnskb3RsLmRvd25sb2Fkc30gLyB7JG90bC5tYXhfZG93bmxvYWRzfTwvdGQ+CiAgICAgIDx0ZD57JG90bC5kZWxldGVfbGlua30KICAgIDwvdHI+CiAgey9mb3JlYWNofQogIDwvdGJvZHk+CjwvdGFibGU+CnsvaWZ9CjxkaXYgY2xhc3M9InBhZ2VvcHRpb25zIj4KIHskYWRka2V5X2xpbmt9CjwvZGl2Pgo=]]></data>
	</file>
	<file>
	  <filename>/templates/admin_upload.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGgzPnskbW9kLT5MYW5nKCd1cGxvYWRfZmlsZScpfTwvaDM+Cgp7JGZvcm1zdGFydH0KPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdjYXRlZ29yeScpfTwvcD4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgIDxzZWxlY3QgbmFtZT0ieyRhY3Rpb25pZH1jYXRlZ29yeV9pZCI+CiAgICAgIHtodG1sX29wdGlvbnMgb3B0aW9ucz0kY2F0ZWdvcmllcyBzZWxlY3RlZD0kY3VyY2F0ZWdvcnl9CiAgICA8L3NlbGVjdD4KICA8L3A+CjwvZGl2PgoKPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCd1cGxvYWQnKX08L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICA8aW5wdXQgdHlwZT0iZmlsZSIgbmFtZT0ieyRhY3Rpb25pZH1pbnB1dF9icm93c2UiIHZhbHVlPSIiIHNpemU9IjgwIi8+CiAgPC9wPgo8L2Rpdj4KCjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygndGh1bWJuYWlsJyl9PC9wPgogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgPGlucHV0IHR5cGU9ImZpbGUiIG5hbWU9InskYWN0aW9uaWR9aW5wdXRfdGh1bWJuYWlsIiB2YWx1ZT0iIiBzaXplPSI4MCIvPgogICAgPGJyLz4KICAgIHskbW9kLT5MYW5nKCdpbmZvX3RodW1ibmFpbCcpfQogIDwvcD4KPC9kaXY+Cgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ2Rlc3RuYW1lJyl9PC9wPgogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9aW5wdXRfZGVzdG5hbWUiIHZhbHVlPSJ7JHVwbG9hZC5kZXN0bmFtZX0iIHNpemU9IjUwIiBtYXhsZW5ndGg9IjI1NSIvPgogICAgPGJyLz4KICAgIHskbW9kLT5MYW5nKCdpbmZvX2Rlc3RuYW1lJyl9CiAgPC9wPgo8L2Rpdj4KCjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygnc3VtbWFyeScpfTwvcD4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGFjdGlvbmlkfWlucHV0X3N1bW1hcnkiIHZhbHVlPSJ7JHVwbG9hZC5zdW1tYXJ5fSIgc2l6ZT0iODAiIG1heGxlbmd0aD0iMjU1Ii8+CiAgICA8YnIvPgogICAgeyRtb2QtPkxhbmcoJ2luZm9fc3VtbWFyeScpfQogIDwvcD4KPC9kaXY+Cgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ2F1dGhvcicpfTo8L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1pbnB1dF9hdXRob3IiIHZhbHVlPSJ7JHVwbG9hZC5hdXRob3J9IiBzaXplPSI1MCIgbWF4bGVuZ3RoPSIyNTUiLz4KICA8L3A+CjwvZGl2PgoKPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdkZXNjcmlwdGlvbicpfTwvcD4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgIDx0ZXh0YXJlYSBuYW1lPSJ7JGFjdGlvbmlkfWlucHV0X2Rlc2NyaXB0aW9uIj57JHVwbG9hZC5kZXNjcmlwdGlvbn08L3RleHRhcmVhPgogIDwvcD4KPC9kaXY+Cgp7aWYgaXNzZXQoJGZpZWxkcyl9Cntmb3JlYWNoIGZyb209JGZpZWxkcyBpdGVtPSdvbmUnfQo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRvbmUubmFtZX08L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICB7aWYgaXNzZXQoJG9uZS5pbnB1dCl9CiAgICAgIHskb25lLmlucHV0fQogICAge2Vsc2VpZiAkb25lLnR5cGUgPT0gJ3RleHRpbnB1dCd9CiAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGFjdGlvbmlkfWZpZWxkX3skb25lLmlkfSIgdmFsdWU9Inskb25lLnZhbHVlfSIgc2l6ZT0ieyRvbmUuYXR0cmliLmxlbmd0aH0iIG1heGxlbmd0aD0ieyRvbmUuYXR0cmliLm1heGxlbmd0aH0iLz4KICAgIHtlbHNlaWYgJG9uZS50eXBlID09ICdjaGVja2JveCd9CiAgICAgIDxpbnB1dCB0eXBlPSJjaGVja2JveCIgbmFtZT0ieyRhY3Rpb25pZH1maWVsZF97JG9uZS5pZH0iIHZhbHVlPSIxIntpZiAkb25lLnZhbHVlID09IDF9IGNoZWNrZWQ9ImNoZWNrZWQiey9pZn0vPgogICAge2Vsc2VpZiAkb25lLnR5cGUgPT0gJ2Ryb3Bkb3duJ30KICAgICAgPHNlbGVjdCBuYW1lPSJ7JGFjdGlvbmlkfWZpZWxkX3skb25lLmlkfSI+CiAgICAgICAge2h0bWxfb3B0aW9ucyBvcHRpb25zPSRvbmUuYXR0cmliLm9wdGlvbnN9CiAgICAgIDwvc2VsZWN0PgogICAge2Vsc2VpZiAkb25lLnR5cGUgPT0gJ211bHRpc2VsZWN0J30KICAgICAgPHNlbGVjdCBtdWx0aXBsZT0ibXVsdGlwbGUiIHNpemU9IjQiIG5hbWU9InskYWN0aW9uaWR9ZmllbGRfeyRvbmUuaWR9W10iPgogICAgICAgIHtodG1sX29wdGlvbnMgb3B0aW9ucz0kb25lLmF0dHJpYi5vcHRpb25zfQogICAgICA8L3NlbGVjdD4KICAgIHsvaWZ9CiAgPC9wPgo8L2Rpdj4Key9mb3JlYWNofQp7L2lmfQoKe2lmIGlzc2V0KCRhbGxvd191cGxvYWRfc2VuZGZpbGUpICYmICRhbGxvd191cGxvYWRfc2VuZGZpbGUgPT0gMX0KPGZpZWxkc2V0Pgo8bGVnZW5kPnskbW9kLT5MYW5nKCdwcm9tcHRfdGxfYWNjZXNzJyl9OjwvbGVnZW5kPgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ2VtYWlsX2FkZHJlc3MnKX06PC9wPgogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9dGxfZW1haWwiIHZhbHVlPSIiIHNpemU9IjQwIiBtYXhsZW5ndGg9IjI1NSIvPgogIDwvcD4KPC9kaXY+CgogPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X3RpbWVsaW1pdGVkX2hvdXJzJyl9PC9wPgogICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH10bF9ob3VycyIgdmFsdWU9InskdGxfaG91cnN9IiBzaXplPSIzIiBtYXhsZW5ndGg9IjMiLz4KICAgPC9wPgogPC9kaXY+CgogPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X3RpbWVsaW1pdGVkX2Rvd25sb2FkcycpfTwvcD4KICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9dGxfZG93bmxvYWRzIiB2YWx1ZT0ieyR0bF9kb3dubG9hZHN9IiBzaXplPSIzIiBtYXhsZW5ndGg9IjMiLz4KICAgPC9wPgogPC9kaXY+CgogPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X3RpbWVsaW1pdGVkX3NlbmRpdCcpfTwvcD4KICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0ieyRhY3Rpb25pZH10bF9zZW5kaXQiIHZhbHVlPSIwIi8+CiAgICAgPGlucHV0IHR5cGU9ImNoZWNrYm94IiBuYW1lPSJ7JGFjdGlvbmlkfXRsX3NlbmRpdCIgdmFsdWU9IjEiIGNoZWNrZWQ9ImNoZWNrZWQiLz4KICAgPC9wPgogPC9kaXY+CjwvZmllbGRzZXQ+CnsvaWZ9Cgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+Jm5ic3A7PC9wPgogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0ieyRhY3Rpb25pZH1pbnB1dF9yZXBsYWNlIiB2YWx1ZT0ieyRhbGxvd19yZXBsYWNlfSIvPgogICAgPGlucHV0IHR5cGU9InN1Ym1pdCIgbmFtZT0ieyRhY3Rpb25pZH1zdWJtaXQiIHZhbHVlPSJ7JG1vZC0+TGFuZygnc3VibWl0Jyl9Ii8+CiAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiBuYW1lPSJ7JGFjdGlvbmlkfWNhbmNlbCIgdmFsdWU9InskbW9kLT5MYW5nKCdjYW5jZWwnKX0iLz4KICA8L3A+CjwvZGl2Pgp7JGZvcm1lbmR9]]></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[PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPg0Ke2xpdGVyYWx9DQpqUXVlcnkoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uKCl7DQogIGpRdWVyeSgnI3N1Ym1pdF9jYXRfbXVsdGlhY3Rpb24nKS5jbGljayhmdW5jdGlvbigpew0KICAgIHJldHVybiBjb25maXJtKCd7L2xpdGVyYWx9eyRtb2QtPkxhbmcoJ2NvbmZpcm1fY2F0X211bHRpYWN0aW9uJyl9e2xpdGVyYWx9Jyk7DQogIH0pOw0KICBqUXVlcnkoJyNjYXRfbXVsdGlhY3Rpb24nKS5oaWRlKCk7DQogIGpRdWVyeSgnI2NhdF9zZWxlY3RhbGwnKS5jbGljayhmdW5jdGlvbigpew0KICAgIHZhciB2YWwgPSBqUXVlcnkodGhpcykuYXR0cignY2hlY2tlZCcpOw0KICAgIGlmKCB2YWwgKQ0KICAgIHsNCiAgICAgIGpRdWVyeSgnI2NhdF9tdWx0aWFjdGlvbicpLnNob3coKTsNCiAgICAgDQogICAgfQ0KICAgIGVsc2UNCiAgICB7DQogICAgICBqUXVlcnkoJyNjYXRfbXVsdGlhY3Rpb24nKS5oaWRlKCk7DQogICAgfQ0KDQogICAgalF1ZXJ5KCcuY2F0X3NlbGVjdGFsbCcpLmF0dHIoJ2NoZWNrZWQnLHZhbCk7DQogIH0pOw0KICBqUXVlcnkoJy5jYXRfc2VsZWN0YWxsJykuY2xpY2soZnVuY3Rpb24oKXsNCiAgICB2YXIgYW55ID0gMDsNCiAgICBqUXVlcnkoJy5jYXRfc2VsZWN0YWxsJykuZWFjaChmdW5jdGlvbigpew0KICAgICAgYW55ID0gYW55IHwgalF1ZXJ5KHRoaXMpLmF0dHIoJ2NoZWNrZWQnKTsNCiAgICB9KTsNCiAgICBpZiggYW55ICkNCiAgICB7DQogICAgICBqUXVlcnkoJyNjYXRfbXVsdGlhY3Rpb24nKS5zaG93KCk7DQogICAgfQ0KICAgIGVsc2UNCiAgICB7DQogICAgICBqUXVlcnkoJyNjYXRfbXVsdGlhY3Rpb24nKS5oaWRlKCk7DQogICAgfQ0KICB9KTsNCn0pOw0KDQoNCnsvbGl0ZXJhbH0NCjwvc2NyaXB0Pg0KDQo8ZGl2IGNsYXNzPSJwYWdlb3B0aW9ucyI+PHAgY2xhc3M9InBhZ2VvcHRpb25zIj57JGl0ZW1jb3VudH0gQ2F0ZWdvcmllcyBGb3VuZDwvcD48L2Rpdj4NCntpZiAkaXRlbWNvdW50ID4gMH0NCnskZm9ybXN0YXJ0fQ0KPHRhYmxlIGNlbGxzcGFjaW5nPSIwIiBjbGFzcz0icGFnZXRhYmxlIj4NCgk8dGhlYWQ+DQoJCTx0cj4NCgkJCTx0aCB3aWR0aD0iMTUlIj57JGNhdGVnb3J5dGV4dH08L3RoPg0KCQkJPHRoPnskbmFtZXRleHR9PC90aD4NCgkJCTx0aD57JHBhdGh0ZXh0fTwvdGg+DQoJCQk8dGggY2xhc3M9InBhZ2VpY29uIj4mbmJzcDs8L3RoPg0KCQkJPHRoIGNsYXNzPSJwYWdlaWNvbiI+Jm5ic3A7PC90aD4NCgkJCTx0aCBjbGFzcz0icGFnZWljb24iPiZuYnNwOzwvdGg+DQoJCQk8dGggY2xhc3M9InBhZ2VpY29uIj48aW5wdXQgdHlwZT0iY2hlY2tib3giIGlkPSJjYXRfc2VsZWN0YWxsIiB2YWx1ZT0iMSIvPjwvdGg+DQoJCTwvdHI+DQoJPC90aGVhZD4NCgk8dGJvZHk+DQp7Zm9yZWFjaCBmcm9tPSRpdGVtcyBpdGVtPWVudHJ5fQ0KCQk8dHIgY2xhc3M9InskZW50cnktPnJvd2NsYXNzfSI+DQoJCQk8dGQ+eyRlbnRyeS0+aWR9PC90ZD4NCgkJCTx0ZD57JGVudHJ5LT5uYW1lfTwvdGQ+DQoJCQk8dGQ+eyRlbnRyeS0+cGF0aH08L3RkPg0KCQkJPHRkPnskZW50cnktPmVkaXRsaW5rfTwvdGQ+DQoJCQk8dGQ+eyRlbnRyeS0+Y29weWxpbmt9PC90ZD4NCgkJCTx0ZD57JGVudHJ5LT5kZWxldGVsaW5rfTwvdGQ+DQogICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PGlucHV0IHR5cGU9ImNoZWNrYm94IiBjbGFzcz0iY2F0X3NlbGVjdGFsbCIgdmFsdWU9InskZW50cnktPmlkfSIgbmFtZT0ieyRhY3Rpb25pZH1jYXRfbXVsdGlzZWxlY3RbXSIvPjwvdGQ+DQoJCTwvdHI+DQoJCTx0ciBjbGFzcz0ieyRlbnRyeS0+cm93Y2xhc3N9Ij4gDQoJCQk8dGQ+Jm5ic3A7PC90ZD4NCgkJCTx0ZCBjb2xzcGFuPSI2Ij57JGVudHJ5LT5kZXNjcmlwdGlvbn08L3RkPg0KCQk8L3RyPg0KCSANCnsvZm9yZWFjaH0NCgk8L3Rib2R5Pg0KPC90YWJsZT4NCnsvaWZ9DQo8ZGl2IGNsYXNzPSJwYWdlb3B0aW9ucyI+DQogIDx0YWJsZSB3aWR0aD0iMTAwJSI+DQogICA8dHI+DQogICAgIDx0ZD57JGFkZGxpbmt9PC90ZD4NCg0KICAgICB7aWYgJGl0ZW1jb3VudCA+IDB9DQogICAgIDx0ZCBzdHlsZT0idGV4dC1hbGlnbjogcmlnaHQ7Ij4NCiAgICAgICA8ZGl2IGlkPSJjYXRfbXVsdGlhY3Rpb24iIHN0eWxlPSJ0ZXh0LWFsaWduOiByaWdodDsiPg0KICAgICAgIHskbW9kLT5MYW5nKCd3aXRoX3NlbGVjdGVkJyl9Og0KICAgICAgIDxzZWxlY3QgbmFtZT0ieyRhY3Rpb25pZH1tdWx0aWFjdGlvbiIgaWQ9ImNhdF9tdWx0aWFjdGlvbiI+DQogICAgICAge2h0bWxfb3B0aW9ucyBvcHRpb25zPSRjYXRfbXVsdGlhY3Rpb25zfQ0KICAgICAgIDwvc2VsZWN0Pg0KICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIGlkPSdzdWJtaXRfY2F0X211bHRpYWN0aW9uJyBuYW1lPSJ7JGFjdGlvbmlkfXN1Ym1pdCIgdmFsdWU9InskbW9kLT5MYW5nKCdzdWJtaXQnKX0iIC8+DQogICAgICAgPC9kaXY+DQogICAgIDwvdGQ+DQogICAgIHsvaWZ9DQogICA8L3RyPg0KICA8L3RhYmxlPg0KPC9kaXY+DQoNCntpZiAkaXRlbWNvdW50ID4gMH0NCnskZm9ybWVuZH0NCnsvaWZ9]]></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+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X3VwbG9hZG5hbWV9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfdXBsb2FkbmFtZX0gCiAgICAgIHsqPGlucHV0IHR5cGU9InN1Ym1pdCIgbmFtZT0ieyRhY3Rpb25pZH1maXgiIHZhbHVlPSJ7JG1vZC0+TGFuZygnZml4bWUnKX0iIHRpdGxlPSJ7JG1vZC0+TGFuZygndGl0bGVfZml4c3BhY2VzJyl9Ii8+Kn0KICAgICAgPGJyLz4KICAgICAgeyRtb2QtPkxhbmcoJ3JlbmFtZW1lc3NhZ2UnKX0KICAgIDwvcD4KICA8L2Rpdj4KCiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9yZXBsYWNlZmlsZScpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAgPGlucHV0IHR5cGU9ImZpbGUiIG5hbWU9InskYWN0aW9uaWR9cmVwbGFjZV9maWxlIiB2YWx1ZT0iIiBzaXplPSI1MCIvPgogICAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiBuYW1lPSJ7JGFjdGlvbmlkfXJlcGxhY2UiIHZhbHVlPSJ7JG1vZC0+TGFuZygncmVwbGFjZScpfSIgdGl0bGU9InskbW9kLT5MYW5nKCdpbmZvX3JlcGxhY2UnKX0iLz4KICAgICAgPGJyLz4KICAgICAgeyRtb2QtPkxhbmcoJ2luZm9fcmVwbGFjZWZpbGUnKX0KICAgIDwvcD4KICA8L2Rpdj4KCiAge2lmIGlzc2V0KCR0aHVtYl91cmwpfQogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X3RodW1ibmFpbH08L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAge2lmIGlzc2V0KCRmaWxlX3VybCl9CiAgICAgICAgPGEgaHJlZj0ieyRmaWxlX3VybH0iIGNsYXNzPSJmYW5jeWJveCI+CiAgICAgIHsvaWZ9CiAgICAgIDxpbWcgc3JjPSJ7JHRodW1iX3VybH0iIGFsdD0iIi8+CiAgICAgIHtpZiBpc3NldCgkZmlsZV91cmwpfQogICAgICAgIDwvYT4KICAgICAgey9pZn0KICAgIDwvcD4KICA8L2Rpdj4KICB7L2lmfQogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X25ld3RodW1ibmFpbH08L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X25ld3RodW1ibmFpbH08L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfbW92ZWNhdGVnb3J5fTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X21vdmVjYXRlZ29yeX0KICAgICAgPGJyLz4KICAgICAgeyRtb2QtPkxhbmcoJ3BhdGhtZXNzYWdlJyl9CiAgICA8L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfdXBsb2Fkc2l6ZX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRkYXRhX3VwbG9hZHNpemV9PC9wPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X3VwbG9hZGRhdGV9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskZGF0YV91cGxvYWRkYXRlfTwvcD4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF91cGxvYWRhdXRob3J9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfdXBsb2FkYXV0aG9yfTwvcD4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF91cGxvYWRzdW1tYXJ5fTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X3VwbG9hZHN1bW1hcnl9PC9wPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X3VwbG9hZGRlc2N9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfdXBsb2FkZGVzY308L3A+CiAgPC9kaXY+CgogIHtpZiBpc3NldCgkZmllbGRzKX0KICB7Zm9yZWFjaCBmcm9tPSRmaWVsZHMgaXRlbT0nb25lJ30KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG9uZS5uYW1lfTwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgICB7aWYgaXNzZXQoJG9uZS5pbnB1dCl9CiAgICAgICAgeyRvbmUuaW5wdXR9CiAgICAgIHtlbHNlaWYgJG9uZS50eXBlID09ICd0ZXh0aW5wdXQnfQogICAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGFjdGlvbmlkfWZpZWxkX3skb25lLmlkfSIgdmFsdWU9Inskb25lLnZhbHVlfSIgc2l6ZT0ieyRvbmUuYXR0cmliLmxlbmd0aH0iIG1heGxlbmd0aD0ieyRvbmUuYXR0cmliLm1heGxlbmd0aH0iLz4KICAgICAge2Vsc2VpZiAkb25lLnR5cGUgPT0gJ2NoZWNrYm94J30KICAgICAgICA8aW5wdXQgdHlwZT0iY2hlY2tib3giIG5hbWU9InskYWN0aW9uaWR9ZmllbGRfeyRvbmUuaWR9IiB2YWx1ZT0iMSJ7aWYgJG9uZS52YWx1ZSA9PSAxfSBjaGVja2VkPSJjaGVja2VkInsvaWZ9Lz4KICAgICAge2Vsc2VpZiAkb25lLnR5cGUgPT0gJ2Ryb3Bkb3duJ30KICAgICAgICA8c2VsZWN0IG5hbWU9InskYWN0aW9uaWR9ZmllbGRfeyRvbmUuaWR9Ij4KICAgICAgICAgIHtodG1sX29wdGlvbnMgb3B0aW9ucz0kb25lLmF0dHJpYi5vcHRpb25zIHNlbGVjdGVkPSRvbmUudmFsdWV9CiAgICAgICAgPC9zZWxlY3Q+CiAgICAgIHtlbHNlaWYgJG9uZS50eXBlID09ICdtdWx0aXNlbGVjdCd9CiAgICAgICAgPHNlbGVjdCBtdWx0aXBsZT0ibXVsdGlwbGUiIHNpemU9IjQiIG5hbWU9InskYWN0aW9uaWR9ZmllbGRfeyRvbmUuaWR9W10iPgogICAgICAgICAge2h0bWxfb3B0aW9ucyBvcHRpb25zPSRvbmUuYXR0cmliLm9wdGlvbnMgc2VsZWN0ZWQ9JG9uZS52YWx1ZX0KICAgICAgICA8L3NlbGVjdD4KICAgICAgey9pZn0KICAgIDwvcD4KICA8L2Rpdj4KICB7L2ZvcmVhY2h9CiAgey9pZn0KCiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+Jm5ic3A7PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRoaWRkZW59eyR0aHVtYm5haWx9eyRzdWJtaXR9eyRjYW5jZWx9PC9wPgogIDwvZGl2PgogIHtpZiAkaXRlbWNvdW50ID4gMH0KICAgIDxici8+CiAgICA8dGFibGUgY2VsbHNwYWNpbmc9IjAiIGNsYXNzPSJwYWdldGFibGUiPgogICAgICA8dGhlYWQ+CiAgICAgICAgPHRyPgogICAgICAgICAgPHRoPnskZGF0ZXRleHR9PC90aD4KICAgICAgICAgIDx0aD57JGlwdGV4dH08L3RoPgogICAgICAgICAgPHRoPnskdXNlcnRleHR9PC90aD4KICAgICAgICA8L3RyPgogICAgICA8L3RoZWFkPgogICAgICA8dGJvZHk+CiAgICAgIHtmb3JlYWNoIGZyb209JGl0ZW1zIGl0ZW09ZW50cnl9CiAgICAgICAgPHRyIGNsYXNzPSJ7JGVudHJ5LT5yb3djbGFzc30iPgogICAgICAgICAgPHRkPnskZW50cnktPmRhdGV9PC90ZD4KICAgICAgICAgIDx0ZD57JGVudHJ5LT5pcH08L3RkPgogICAgICAgICAgPHRkPnskZW50cnktPnVzZXJ9PC90ZD4KICAgICAgICA8L3RyPgogICAgICB7L2ZvcmVhY2h9CiAgICAgIDwvdGJvZHk+CiAgICA8L3RhYmxlPgogIHsvaWZ9CnskZW5kZm9ybX0Key9pZn0K]]></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+CiAgPHRyPgogIDx0ZCB3aWR0aD0iNTAlIj4KCTxkaXYgY2xhc3M9InBhZ2VvcHRpb25zIj48cCBjbGFzcz0icGFnZW9wdGlvbnMiPnskYWRkbGlua308L3A+PC9kaXY+CiAgPC90ZD4KICA8dGQgYWxpZ249InJpZ2h0Ij4KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+Cgl7JHN0YXJ0Zm9ybX0KCSAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRwcm9tcHRfdXBsb2FkX2ljb259OiZuYnNwO3skaW5wdXRfdXBsb2FkX2ljb259eyRzdWJtaXR9PC9wPgogICAgICAgIHskZW5kZm9ybX0KCTwvZGl2PgogIDwvdGQ+CiAgPC90cj4KPC90YWJsZT4K]]></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+ZG93bmxvYWRfdXJsfSIgdGl0bGU9InskZW50cnktPm5hbWV9Ij57JGVudHJ5LT5uYW1lfTwvYT4mbmJzcDsmbmJzcDsKICAgICAgICA8YSBocmVmPSJ7JGVudHJ5LT5zZW5kZmlsZV91cmx9IiB0aXRsZT0iIj5TZW5kIHRoaXMgZmlsZTwvYT48YnIvPgogICAgPC90ZD4KICA8L3RyPgogIHtpZiBpc3NldCgkZW50cnktPmRlbGV0ZV91cmwpfQogIDx0cj4KICAgIDx0ZD57JGRlbGV0ZX08L3RkPgogICAgPHRkPjxhIGhyZWY9InskZW50cnktPmRlbGV0ZV91cmx9IiB0aXRsZT0ieyRkZWxldGV9IiBvbmNsaWNrPSJyZXR1cm4gY29uZmlybSgneyRhcmV5b3VzdXJlfScpOyI+eyRlbnRyeS0+bmFtZX08L2E+PC90ZD4KICA8L3RyPgogIHsvaWZ9CiAgPHRyPgogICAgPHRkPnskZGF0ZX08L3RkPgogICAgPHRkPnskZW50cnktPmRhdGV9PC90ZD4KICA8L3RyPgogIDx0cj4KICAgIDx0ZD57JGF1dGhvcn08L3RkPgogICAgPHRkPnskZW50cnktPmF1dGhvcn08L3RkPgogIDwvdHI+CiAgPHRyPgogICAgPHRkPnskc2l6ZX08L3RkPgogICAgPHRkPnskZW50cnktPnNpemV9PC90ZD4KICA8L3RyPgogIDx0cj4KICAgIDx0ZD57JHN1bW1hcnl9PC90ZD4KICAgIDx0ZD57JGVudHJ5LT5zdW1tYXJ5fTwvdGQ+CiAgPC90cj4KICA8dHI+CiAgICA8dGQ+eyRkZXNjcmlwdGlvbn08L3RkPgogICAgPHRkPnskZW50cnktPmRlc2NyaXB0aW9ufTwvdGQ+CiAgPC90cj4KICB7Zm9yZWFjaCBuYW1lPWZpZWxkcyBmcm9tPSRlbnRyeS0+ZmllbGRzIGtleT0nZmxkbmFtZScgaXRlbT0nZmllbGQnfQogIDx0cj4KICAgIDx0ZD57JGZpZWxkLm5hbWV9PC90ZD4KICAgIDx0ZD57JGZpZWxkLnZhbHVlfTwvdGQ+CiAgPC90cj4KICB7L2ZvcmVhY2h9CjwvdGFibGU+CjwhLS0gRW5kIFVwbG9hZCBEZXRhaWwgdGVtcGxhdGUgLS0+Cg==]]></data>
	</file>
	<file>
	  <filename>/templates/orig_emailnotify_template.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PCEtLSBFbWFpbCBub3RpZnkgdGVtcGxhdGUgLS0+CjxwPlRoaXMgbWVzc2FnZSBpcyB0byBub3RpZnkgeW91IHRoYXQgYSBmaWxlIGhhcyBiZWVuIHVwbG9hZGVkIHRvIHlvdXIgd2Vic2l0ZS4gIFRoZSBkZXRhaWxzIG9mIHRoaXMgdXBsb2FkIGFyZSBhcyBmb2xsb3dzOjwvcD4KPHA+TmFtZTogeyRuYW1lfTwvcD4KPHA+U2l6ZTogeyRzaXplfTwvcD4KPHA+U3VtbWFyeTogeyRzdW1tYXJ5fTwvcD4KPHA+RGVzY3JpcHRpb246IHskZGVzY3JpcHRpb259PC9wPgo8cD5BdXRob3I6IHskYXV0aG9yfTwvcD4KPHA+SVAgQWRkcmVzczogeyRpcF9hZGRyZXNzfTwvcD4KPCEtLSBFbWFpbCBub3RpZnkgdGVtcGxhdGUgLS0+Cg==]]></data>
	</file>
	<file>
	  <filename>/templates/orig_sendfileform_template.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogZm9ybSB0byBzZW5kIGEgZmlsZSAqfQp7aWYgaXNzZXQoJG1lc3NhZ2UpfQo8ZGl2IHN0eWxlPSJib3JkZXI6IDFweCBzb2xpZCAjOTlGRDk5OyBjb2xvcjogIzAwMDsgYmFja2dyb3VuZDogI0RBRkVEQTsiPgp7JG1lc3NhZ2V9CjwvZGl2Pgp7L2lmfQoKe2lmIGlzc2V0KCRlcnJvcil9CjxkaXYgc3R5bGU9ImJvcmRlcjogMXB4IGRhc2hlZCAjRkQ5OTk5OyBjb2xvcjogIzAwMDsgYmFja2dyb3VuZDogI0ZFREFEQTsiPgp7JGVycm9yfQo8L2Rpdj4Key9pZn0KCnskZm9ybXN0YXJ0fQo8ZmllbGRzZXQ+CjxsZWdlbmQ+eyRtb2QtPkxhbmcoJ2ZpbGVfaW5mbycpfTombmJzcDs8L2xlZ2VuZD4KPHA+eyRtb2QtPkxhbmcoJ25hbWUnKX06Jm5ic3A7eyR1cGxvYWRfaW5mby51cGxvYWRfbmFtZX0gKHskdXBsb2FkX2luZm8udXBsb2FkX2lkfSk8L3A+CjxwPnskdXBsb2FkX2luZm8udXBsb2FkX3N1bW1hcnl9PC9wPgo8L2ZpZWxkc2V0PgoKPGRpdiBjbGFzcz0icm93IiBzdHlsZT0id2lkdGg6IDgwJTsiPgogIDxwIHN0eWxlPSJtYXJnaW4tbGVmdDogNGVtOyBtYXJnaW4tdG9wOiAxZW07Ij4KICAgIHskbW9kLT5MYW5nKCdhZGRyZXNzZWVzJyl9CiAgPC9wPgogIDxwIHN0eWxlPSJtYXJnaW4tbGVmdDogNGVtOyBtYXJnaW4tdG9wOiAwOyI+CiAgIDx0ZXh0YXJlYSBuYW1lPSJ7JGFjdGlvbmlkfWlucHV0X3NlbmR0byIgcm93cz0iMiIgY29scz0iNTAiPnskc2VuZHRvfTwvdGV4dGFyZWE+CiAgPC9wPgo8L2Rpdj4KCjxkaXYgY2xhc3M9InJvdyIgc3R5bGU9IndpZHRoOiA4MCU7Ij4KICA8cCBzdHlsZT0ibWFyZ2luLWxlZnQ6IDRlbTsgbWFyZ2luLXRvcDogMWVtOyI+CiAgICB7JG1vZC0+TGFuZygnc3ViamVjdCcpfQogIDwvcD4KICA8cCBzdHlsZT0ibWFyZ2luLWxlZnQ6IDRlbTsgbWFyZ2luLXRvcDogMDsiPgogICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9aW5wdXRfc3ViamVjdCIgc2l6ZT0iNTAiIG1heGxlbmd0aD0iNTAiIHZhbHVlPSJ7JHN1YmplY3R9Ii8+CiAgPC9wPgo8L2Rpdj4KCjxkaXYgY2xhc3M9InJvdyIgc3R5bGU9IndpZHRoOiA4MCU7Ij4KICA8cCBzdHlsZT0ibWFyZ2luLWxlZnQ6IDRlbTsgbWFyZ2luLXRvcDogMWVtOyI+CiAgICB7JG1vZC0+TGFuZygnbm90ZXMnKX0KICA8L3A+CiAgPHAgc3R5bGU9Im1hcmdpbi1sZWZ0OiA0ZW07IG1hcmdpbi10b3A6IDA7Ij4KICAgPHRleHRhcmVhIG5hbWU9InskYWN0aW9uaWR9aW5wdXRfbm90ZXMiIHJvd3M9IjUiIGNvbHM9IjUwIj57JG5vdGVzfTwvdGV4dGFyZWE+CiAgPC9wPgo8L2Rpdj4KCjxkaXYgY2xhc3M9InJvdyIgc3R5bGU9IndpZHRoOiA4MCU7Ij4KICA8cCBzdHlsZT0ibWFyZ2luLWxlZnQ6IDRlbTsgbWFyZ2luLXRvcDogMWVtOyI+Jm5ic3A7PC9wPgogIDxwIHN0eWxlPSJtYXJnaW4tbGVmdDogNGVtOyBtYXJnaW4tdG9wOiAwOyI+CiAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiBuYW1lPSJ7JGFjdGlvbmlkfWlucHV0X3N1Ym1pdCIgdmFsdWU9InskbW9kLT5MYW5nKCdzZW5kJyl9Ii8+CiAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiBuYW1lPSJ7JGFjdGlvbmlkfWlucHV0X2NhbmNlbCIgdmFsdWU9InskbW9kLT5MYW5nKCdjYW5jZWwnKX0iLz4KICA8L3A+CjwvZGl2Pgp7JGZvcm1lbmR9]]></data>
	</file>
	<file>
	  <filename>/templates/orig_sendfilerpt_template.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogc2VuZCBmaWxlIGZvcm0gdGVtcGxhdGUgKn0KPGh0bWw+CiAgPGJvZHk+CiAgICA8aDM+R3JlZXRpbmdzPC9oMz4KICAgIDxwPllvdSBhcmUgcmVjZWl2aW5nIHRoaXMgZW1haWwgYmVjYXVzZSBzb21lYm9keSBoYXMgc2VudCB5b3UgaW5mb3JtYXRpb24gYWJvdXQgaG93IHRvIGFjY2VzcyBhIHNwZWNpZmljIGZpbGUgb24gJnF1b3Q7e3NpdGVuYW1lfSZxdW90Oy48L3A+CiAgICA8cD5UaGlzIGZpbGUgaXMgbG9jYXRlZCBvbiBhIHJlbW90ZSBzZXJ2ZXIsIGFuZCBoYXMgbm90IGJlZW4gYXR0YWNoZWQgdG8gdGhpcyBlbWFpbC4gIFRvIHJldHJpZXZlIHRoZSBmaWxlIHlvdSBtdXN0IGNsaWNrIG9uIDxhIGhyZWY9InskZW50cnktPmRvd25sb2FkX3VybH0iPnRoaXMgbGluazwvYT4uICBJZiB5b3UgYXJlIHVuYWJsZSB0byBjbGljayBvbiB0aGlzIGxpbmssIHRoZW4gY29weSB0aGUgZm9sbG93aW5nIFVSTCBpbnRvIHRoZSBhZGRyZXNzIGJhciBvbiB5b3VyIHdlYiBicm93c2VyOjxici8+eyRlbnRyeS0+ZG93bmxvYWRfdXJsfTwvcD4KICAgIHtpZiBpc3NldCgkaG91cnMpfQogICAgICA8cD5BY2Nlc3MgdG8gdGhpcyBmaWxlIGlzIHRpbWUgbGltaXRlZC4gIFlvdSBoYXZlIHskaG91cnN9IGhvdXJzIGZyb20gbm93IHRvIGFjY2VzcyB0aGlzIGZpbGUuPC9wPgogICAgey9pZn0KICAgIHtpZiBpc3NldCgkZG93bmxvYWRzKX0KICAgICAgPHA+WW91IG1heSBkb3dubG9hZCB0aGlzIGZpbGUsIG9yIGF0dGVtcHQgdG8gZG93bmxvYWQgaXQgYSBtYXhpbXVtIG9mIHskZG93bmxvYWRzfSB0aW1lcy48L1AKICAgIHsvaWZ9CgogICAgSWYgeW91IGV4cGVyaWVuY2UgZGlmZmljdWx0eSB3aXRoIHRoZSBsaW5rIHByb3ZpZGVkIGluIHRoaXMgZW1haWwgcGxlYXNlIGNvbnRhY3QgdGhlIGFkbWluaXN0cmF0cm9ycyBhdCB7c2l0ZW5hbWV9CgogICAge2lmIGlzc2V0KCRlbnRyeS0+dGh1bWJuYWlsX3VybCl9CiAgICAgIDxpbWcgc3JjPSJ7JGVudHJ5LT50aHVtYm5haWxfdXJsfSIgYm9yZGVyPSIwIj48YnIvPgogICAgey9pZn0KCiAgICB7aWYgJG5vdGVzICE9ICcnfQogICAgPGg0Pk5vdGVzOjwvaDQ+CiAgICA8cD57JG5vdGVzfTwvcD4KICAgIHsvaWZ9CgogICAgPGg0PkZpbGUgRGV0YWlsczo8L2g0PgogICAgPHRhYmxlIGJvcmRlcj0iMCI+CiAgICAgIDx0cj48dGQ+eyRtb2QtPkxhbmcoJ25hbWUnKX06PC90ZD48dGQ+eyRlbnRyeS0+bmFtZX08L3RkPjwvdHI+CiAgICAgIDx0cj48dGQ+eyRtb2QtPkxhbmcoJ3NpemUnKX06PC90ZD48dGQ+eyRlbnRyeS0+c2l6ZX08L3RkPjwvdHI+CiAgICAgIDx0cj48dGQ+eyRtb2QtPkxhbmcoJ3N1bW1hcnknKX06PC90ZD48dGQ+eyRlbnRyeS0+c3VtbWFyeX08L3RkPjwvdHI+CiAgICAgIDx0cj48dGQ+eyRtb2QtPkxhbmcoJ2F1dGhvcicpfTo8L3RkPjx0ZD57JGVudHJ5LT5hdXRob3J9PC90ZD48L3RyPgogICAgICA8dHI+PHRkPnskbW9kLT5MYW5nKCdkZXNjcmlwdGlvbicpfTo8L3RkPjx0ZD57JGVudHJ5LT5kZXNjcmlwdGlvbn08L3RkPjwvdHI+CiAgICA8L3RhYmxlPgogIDwvYm9keT4KPC9odG1sPg==]]></data>
	</file>
	<file>
	  <filename>/templates/orig_summaryrpt_template.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PCEtLSBTdGFydCBVcGxvYWQgU3VtbWFyeSBUZW1wbGF0ZSAtLT4Ke2lmIGlzc2V0KCRpbnB1dF9maWx0ZXIpIH0KeyRzdGFydGZvcm19CnskcHJvbXB0X2ZpbHRlcn17JGlucHV0X2ZpbHRlcn17JGhpZGRlbl9wYXJhbXN9eyRpbnB1dF9zdWJtaXR9CnskZW5kZm9ybX0KPGJyLz4Ke2lmIGlzc2V0KCRtYXRjaGVzKX0KeyRtYXRjaGVzfSZuYnNwO3skbWF0Y2hlc3RleHR9CnsvaWZ9CnsvaWZ9Cgo8ZGl2Pgp7aWYgaXNzZXQoJHByZXZwYWdlX3VybCl9CiAgPGEgaHJlZj0ieyRmaXJzdHBhZ2VfdXJsfSIgdGl0bGU9InskZmlyc3RwYWdlfSI+eyRmaXJzdHBhZ2VfYXJyb3d9PC9hPgogIDxhIGhyZWY9InskcHJldnBhZ2VfdXJsfSIgdGl0bGU9InskcHJldnBhZ2V9Ij57JHByZXZwYWdlX2Fycm93fTwvYT4Key9pZn0Ke2lmICRudW1wYWdlcyA+IDF9CiAgJm5ic3A7Jm5ic3A7eyRwYWdldGV4dH0geyRwYWdlbnVtfSB7JG9mdGV4dH0geyRudW1wYWdlc30mbmJzcDsmbmJzcDsKey9pZn0Ke2lmIGlzc2V0KCRuZXh0cGFnZV91cmwpfQogIDxhIGhyZWY9InskbmV4dHBhZ2VfdXJsfSIgdGl0bGU9InskbmV4dHBhZ2V9Ij57JG5leHRwYWdlX2Fycm93fTwvYT4KICA8YSBocmVmPSJ7JGxhc3RwYWdlX3VybH0iIHRpdGxlPSJ7JGxhc3RwYWdlfSI+eyRsYXN0cGFnZV9hcnJvd308L2E+CnsvaWZ9CjwvZGl2PgoKe2ZvcmVhY2ggZnJvbT0kaXRlbXMgaXRlbT0nZW50cnknIG5hbWU9J3VwbG9hZHMnfQogIHtpZiAoJHNtYXJ0eS5mb3JlYWNoLnVwbG9hZHMuaW5kZXggPT0gMCkgb3IgKCRzbWFydHkuZm9yZWFjaC51cGxvYWRzLmluZGV4ICUgMyA9PSAwKX0KICAgIDxkaXYgY2xhc3M9InJvdyIgc3R5bGU9IndpZHRoOiAxMDAlOyBwYWRkaW5nLWJvdHRvbTogMTBweDsiPgogIHsvaWZ9CiAKICA8ZGl2IGNsYXNzPSJ1cGxvYWQiIHN0eWxlPSJmbG9hdDogbGVmdDsgd2lkdGg6IDMzJTsiPgogICAgPGEgaHJlZj0ieyRlbnRyeS0+ZGV0YWlsdXJsfSI+eyRlbnRyeS0+dXBsb2FkX25hbWV9PC9hPiZuYnNwOyh7JGVudHJ5LT5zaXplfSk8YnIvPgogICAgPGEgaHJlZj0ieyRlbnRyeS0+ZG93bmxvYWRfdXJsfSIgdGl0bGU9InskZW50cnktPnVwbG9hZF9uYW1lfSI+CiAgICAgIHtpZiBpc3NldCgkZW50cnktPnRodW1ibmFpbF91cmwpfQogICAgICAgIDxpbWcgc3JjPSJ7JGVudHJ5LT50aHVtYm5haWxfdXJsfSIgYWx0PSIiPgogICAgICB7ZWxzZX0KICAgICAgICA8aW1nIHNyYz0ieyRlbnRyeS0+aWNvbnVybH0iIGFsdD0iIj4KICAgICAgey9pZn0KICAgIDwvYT4KICAgIDxici8+CiAgICA8YSBocmVmPSJ7JGVudHJ5LT5zZW5kZmlsZV91cmx9IiB0aXRsZT0iIj5TZW5kIHRoaXMgZmlsZTwvYT48YnIvPgogICAgeyRhdXRob3J9OiB7JGVudHJ5LT5hdXRob3J9PGJyLz4KICAgIHskZGF0ZX06IHskZW50cnktPmRhdGV9PGJyLz4KICAgIHskZW50cnktPnN1bW1hcnl9CiAgPC9kaXY+CgogIHtpZiAoJHNtYXJ0eS5mb3JlYWNoLnVwbG9hZHMuaW5kZXggPT0gMCkgb3IgKCRzbWFydHkuZm9yZWFjaC51cGxvYWRzLmluZGV4ICUgMyA9PSAwKX0KICAgIDwvZGl2PgogIHsvaWZ9CiAge2ZvcmVhY2ggbmFtZT1maWVsZHMgZnJvbT0kZW50cnktPmZpZWxkcyBrZXk9J2ZsZG5hbWUnIGl0ZW09J2ZpZWxkJ30KICAgIHskZmllbGQubmFtZX06IHskZmllbGQudmFsdWV9PGJyLz4KICB7L2ZvcmVhY2h9CnsvZm9yZWFjaH0KPCEtLSBFbmQgVXBsb2FkIFN1bW1hcnkgVGVtcGxhdGUgLS0+Cg==]]></data>
	</file>
	<file>
	  <filename>/templates/orig_uploadform_template.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PCEtLSBVcGxvYWQgZm9ybSB0ZW1wbGF0ZSAtLT4KeyRzdGFydGZvcm19CntpZiBpc3NldCgkbWF4X3VwbG9hZHNpemUpfQo8aW5wdXQgdHlwZT0naGlkZGVuJyBuYW1lPSJNQVhfVVBMT0FEX1NJWkUiIHZhbHVlPSJ7JG1heF91cGxvYWRzaXplfSIvPgp7L2lmfQp7aWYgaXNzZXQoJG5vYXV0aG9yKSB9IAp7JGlucHV0X2F1dGhvcn0Ke2Vsc2V9CjxwPnskcHJvbXB0X2F1dGhvcn06Jm5ic3A7PGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9aW5wdXRfYXV0aG9yIiB2YWx1ZT0ieyRhdXRob3J9IiBzaXplPSIyMCIgbWF4bGVuZ3RoPSIyNTUiLz48L3A+CnsvaWZ9CjxwPnskcHJvbXB0X3VwbG9hZH06Jm5ic3A7PGlucHV0IHR5cGU9ImZpbGUiIG5hbWU9InskYWN0aW9uaWR9aW5wdXRfYnJvd3NlIiB2YWx1ZT0iIiBzaXplPSI1MCIgbWF4bGVuZ3RoPSIyNTUiLz48L3A+CjxwPnskcHJvbXB0X3N1bW1hcnl9Jm5ic3A7PGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9aW5wdXRfc3VtbWFyeSIgdmFsdWU9IiIgc2l6ZT0iNDAiIG1heGxlbmd0aD0iMjU1Ii8+PC9wPgo8L3A+CjxwPnskcHJvbXB0X2Rlc2NyaXB0aW9ufSZuYnNwOzx0ZXh0YXJlYSBuYW1lPSJ7JGFjdGlvbmlkfWlucHV0X2Rlc2NyaXB0aW9uIj48L3RleHRhcmVhPjwvcD4KPHA+eyRwcm9tcHRfZGVzdG5hbWV9Jm5ic3A7PGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9aW5wdXRfZGVzdG5hbWUiIHZhbHVlPSIiIHNpemU9IjQwIiBtYXhsZW5ndGg9IjI1NSIvPiZuYnNwO3skaW5mb19kZXN0bmFtZX08L3A+CjxwPnskcHJvbXB0X3RodW1ibmFpbH0mbmJzcDs8aW5wdXQgdHlwZT0iZmlsZSIgbmFtZT0ieyRhY3Rpb25pZH1pbnB1dF90aHVtYm5haWwiIHZhbHVlPSIiIHNpemU9IjQwIiBtYXhsZW5ndGg9IjI1NSIvPiZuYnNwO3skaW5mb190aHVtYm5haWx9PC9wPgoKe2lmIGlzc2V0KCRmaWVsZHMpfQogIHtmb3JlYWNoIGZyb209JGZpZWxkcyBpdGVtPSdvbmUnIGtleT0nbmFtZSd9CiAge3N0cmlwfTxwPnskb25lLm5hbWV9OiZuYnNwOwogIHtpZiBpc3NldCgkb25lLmlucHV0KX0KICAgIHskb25lLmlucHV0fQogIHtlbHNlaWYgJG9uZS50eXBlID09ICd0ZXh0aW5wdXQnfQogICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9ZmllbGRfeyRvbmUuaWR9IiB2YWx1ZT0ieyRvbmUudmFsdWV9IiBzaXplPSJ7JG9uZS5hdHRyaWIubGVuZ3RofSIgbWF4bGVuZ3RoPSJ7JG9uZS5hdHRyaWIubWF4bGVuZ3RofSIvPgogIHtlbHNlaWYgJG9uZS50eXBlID09ICdjaGVja2JveCd9CiAgICA8aW5wdXQgdHlwZT0iY2hlY2tib3giIG5hbWU9InskYWN0aW9uaWR9ZmllbGRfeyRvbmUuaWR9IiB2YWx1ZT0iMSJ7aWYgJG9uZS52YWx1ZSA9PSAxfSBjaGVja2VkPSJjaGVja2VkInsvaWZ9Lz4KICB7ZWxzZWlmICRvbmUudHlwZSA9PSAnZHJvcGRvd24nfQogICAgPHNlbGVjdCBuYW1lPSJ7JGFjdGlvbmlkfWZpZWxkX3skb25lLmlkfSI+CiAgICAgIHtodG1sX29wdGlvbnMgb3B0aW9ucz0kb25lLmF0dHJpYi5vcHRpb25zfQogICAgPC9zZWxlY3Q+CiAge2Vsc2VpZiAkb25lLnR5cGUgPT0gJ211bHRpc2VsZWN0J30KICAgIDxzZWxlY3QgbXVsdGlwbGU9Im11bHRpcGxlIiBzaXplPSI0IiBuYW1lPSJ7JGFjdGlvbmlkfWZpZWxkX3skb25lLmlkfVtdIj4KICAgICAge2h0bWxfb3B0aW9ucyBvcHRpb25zPSRvbmUuYXR0cmliLm9wdGlvbnN9CiAgICA8L3NlbGVjdD4KICB7L2lmfXsvc3RyaXB9CiAgey9mb3JlYWNofQp7L2lmfQp7aWYgaXNzZXQoJGNhcHRjaGEpfQo8cD57JGNhcHRjaGFfdGl0bGV9Jm5ic3A7eyRjYXB0Y2hhfTwvcD4KPHA+PGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9aW5wdXRfY2FwdGNoYSIgc2l6ZT0iMTAiIG1heGxlbmd0aD0iMTAiLz48L3A+CnsvaWZ9CjxwPjxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9InskYWN0aW9uaWR9aW5wdXRfc3VibWl0IiB2YWx1ZT0ieyRtb2QtPkxhbmcoJ3N1Ym1pdCcpfSIvPjwvcD4KeyRlbmRmb3JtfQo8IS0tIFVwbG9hZCBmb3JtIHRlbXBsYXRlIC0tPgo=]]></data>
	</file>
	<file>
	  <filename>/templates/orig_yousenditform_template.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogeW91c2VuZGl0IGludGVyZmFjZSAqfQp7aWYgaXNzZXQoJG1lc3NhZ2UpfQo8ZGl2IHN0eWxlPSJib3JkZXI6IDFweCBzb2xpZCAjOTlGRDk5OyBjb2xvcjogIzAwMDsgYmFja2dyb3VuZDogI0RBRkVEQTsgbWFyZ2luLWJvdHRvbTogMC41ZW07Ij4KPHVsPgogIHtmb3JlYWNoIGZyb209JG1lc3NhZ2VzIGl0ZW09J29uZSd9CiAgPGxpPnskb25lfTwvbGk+CiAgey9mb3JlYWNofQo8L3VsPgo8L2Rpdj4Key9pZn0KCntpZiBpc3NldCgkZXJyb3JzKX0KPGRpdiBzdHlsZT0iYm9yZGVyOiAxcHggZGFzaGVkICNGRDk5OTk7IGNvbG9yOiAjMDAwOyBiYWNrZ3JvdW5kOiAjRkVEQURBOyA7IG1hcmdpbi1ib3R0b206IDAuNWVtOyI+Cjx1bD4KICB7Zm9yZWFjaCBmcm9tPSRlcnJvcnMgaXRlbT0nb25lJ30KICA8bGk+eyRvbmV9PC9saT4KICB7L2ZvcmVhY2h9CjwvdWw+CjwvZGl2Pgp7L2lmfQoKeyRzdGFydGZvcm19CjxwPnskbW9kLT5MYW5nKCdhdXRob3InKX06Jm5ic3A7CiAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9ImF1dGhvciIgc2l6ZT0iMjAiIG1heGxlbmd0aD0iMjU1IiB2YWx1ZT0ieyRhdXRob3J9Ii8+CjwvcD4KCjxwPnskbW9kLT5MYW5nKCdzdW1tYXJ5Jyl9OgogIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGFjdGlvbmlkfWlucHV0X3N1bW1hcnkiIHNpemU9IjQwIiBtYXhsZW5ndGg9IjI1NSIgdmFsdWU9Inskc3VtbWFyeX0iLz4KPC9wPgoKPHA+eyRtb2QtPkxhbmcoJ2Rlc2NyaXB0aW9uJyl9OiZuYnNwOwogIDx0ZXh0YXJlYSBuYW1lPSJ7JGFjdGlvbmlkfWlucHV0X2Rlc2NyaXB0aW9uIj57JGRlc2NyaXB0aW9ufTwvdGV4dGFyZWE+CjwvcD4KCjxwPnskbW9kLT5MYW5nKCdkZXN0bmFtZScpfTombmJzcDsKICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1pbnB1dF9kZXN0bmFtZSIgc2l6ZT0iNDAiIG1hZXhsZW5ndGg9IjI1NSIgdmFsdWU9InskZGVzdG5hbWV9Ii8+PGJyLz4KICB7JG1vZC0+TGFuZygnaW5mb19kZXN0bmFtZScpfQo8L3A+Cgo8cD57JG1vZC0+TGFuZygndGh1bWJuYWlsJyl9OiZuYnNwOwogIDxpbnB1dCB0eXBlPSJmaWxlIiBuYW1lPSJ7JGFjdGlvbmlkfWlucHV0X3RodW1ibmFpbCIgc2l6ZT0iNTAiLz4KPC9wPgoKPHA+eyRtb2QtPkxhbmcoJ3Byb21wdF9yZXBsYWNlJyl9OiZuYnNwOwogIDxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9InskYWN0aW9uaWR9aW5wdXRfcmVwbGFjZSIgdmFsdWU9IjAiLz4KICA8aW5wdXQgdHlwZT0iY2hlY2tib3giIG5hbWU9InskYWN0aW9uaWR9aW5wdXRfcmVwbGFjZSIgdmFsdWU9IjEiLz48YnIvPgogIHskbW9kLT5MYW5nKCdpbmZvX3JlcGxhY2UnKX0KPC9wPgoKPHA+KnskbW9kLT5MYW5nKCd1cGxvYWQnKX06Jm5ic3A7CiAgPGlucHV0IHR5cGU9ImZpbGUiIG5hbWU9InskYWN0aW9uaWR9aW5wdXRfYnJvd3NlIiBzaXplPSI1MCIvPgo8L3A+Cgo8YnIvPgo8aHIvPgo8YnIvPgoKPHA+KnskbW9kLT5MYW5nKCd0bycpfTombmJzcDsKICA8dGV4dGFyZWEgbmFtZT0ieyRhY3Rpb25pZH1pbnB1dF9zZW5kdG8iIHJvd3M9IjIiIGNvbHM9IjUwIj57JHNlbmR0b308L3RleHRhcmVhPgo8L3A+Cgo8cD4qeyRtb2QtPkxhbmcoJ3N1YmplY3QnKX06Jm5ic3A7CiAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9aW5wdXRfc3ViamVjdCIgdmFsdWU9Inskc3ViamVjdH0iIHNpemU9IjUwIi8+CjwvcD4KCjxwPnskbW9kLT5MYW5nKCdub3RlcycpfTombmJzcDsKICA8dGV4dGFyZWEgbmFtZT0ieyRhY3Rpb25pZH1pbnB1dF9ub3RlcyIgcm93cz0iNSIgY29scz0iNTAiPnskbm90ZXN9PC90ZXh0YXJlYT4KPC9wPgoKPHA+eyRjYXB0Y2hhX3RpdGxlfSZuYnNwO3skY2FwdGNoYX08L3A+CjxwPnskaW5wdXRfY2FwdGNoYX08L3A+CjxwPgogIDxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9InskYWN0aW9uaWR9aW5wdXRfc3VibWl0IiB2YWx1ZT0ieyRtb2QtPkxhbmcoJ3NlbmQnKX0iLz4KICA8aW5wdXQgdHlwZT0ic3VibWl0IiBuYW1lPSJ7JGFjdGlvbmlkfWlucHV0X2NhbmNlbCIgdmFsdWU9InskbW9kLT5MYW5nKCdjYW5jZWwnKX0iLz4KPC9wPgoKeyRlbmRmb3JtfQo8IS0tIFVwbG9hZCBmb3JtIHRlbXBsYXRlIC0tPgo=]]></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+CnsqCjxmaWVsZHNldD4KPGxlZ2VuZD4mbmJzcDt7JGxlZ2VuZF91cGxvYWRmb3JtfTombmJzcDs8L2xlZ2VuZD4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF9hdXRob3J9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfYXV0aG9yfTwvcD4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF9kZXN0bmFtZX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9kZXN0bmFtZX08YnIvPnskaW5mb19kZXN0bmFtZX08L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfc3VtbWFyeX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9zdW1tYXJ5fTxici8+eyRpbmZvX3N1bW1hcnl9PC9wPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X3RodW1ibmFpbH06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF90aHVtYm5haWx9PC9wPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X3JlcGxhY2V9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfcmVwbGFjZX08YnIvPnskaW5mb19yZXBsYWNlfTwvcD4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF9icm93c2V9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfYnJvd3NlfTwvcD4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij4mbmJzcDs8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X3N1Ym1pdH08L3A+CiAgPC9kaXY+CjwvZmllbGRzZXQ+CiAgPGJyLz4KKn0KeyRlbmRmb3JtfQo8ZGl2IGNsYXNzPSJwYWdlb3B0aW9ucyI+CiB7JGFkZGZpbGVfbGlua30KPC9kaXY+CntpZiAkaXRlbWNvdW50ID4gMH0KPHRhYmxlIGNlbGxzcGFjaW5nPSIwIiBjbGFzcz0icGFnZXRhYmxlIj4KCTx0aGVhZD4KCQk8dHI+CgkJCTx0aD4mbmJzcDs8L3RoPgoJICAgICAgICAgICAgICAgIDx0aD4mbmJzcDs8L3RoPgoJCQk8dGggd2lkdGg9IjE1JSI+eyR0aXRsZXRleHR9PC90aD4KCQkJPHRoIHdpZHRoPSI0MCUiPnskc3VtbWFyeXRleHR9PC90aD4KCQkJPHRoPnskc2l6ZXRleHR9PC90aD4KCQkJPHRoPnskYXV0aG9ydGV4dH08L3RoPgoJCQk8dGg+eyRpcHRleHR9PC90aD4KCQkJPHRoPnskcG9zdGRhdGV0ZXh0fTwvdGg+CgkJCTx0aD57JGRsdGV4dH08L3RoPgoJCQk8dGggY2xhc3M9InBhZ2VpY29uIj4mbmJzcDs8L3RoPgoJCQk8dGggY2xhc3M9InBhZ2VpY29uIj4mbmJzcDs8L3RoPgoJCQk8dGggY2xhc3M9InBhZ2VpY29uIj4mbmJzcDs8L3RoPgoJCTwvdHI+Cgk8L3RoZWFkPgoJPHRib2R5PgoJe2ZvcmVhY2ggZnJvbT0kaXRlbXMgaXRlbT1lbnRyeX0KCQk8dHIgY2xhc3M9InskZW50cnktPnJvd2NsYXNzfSI+CgkJCTx0ZD57JGVudHJ5LT5pZH08L3RkPgoJCQk8dGQ+PGltZyBzcmM9InskZW50cnktPmljb259IiBoZWlnaHQ9IjE2IiB3aWR0aD0iMTYiIGFsdD0ieyRlbnRyeS0+aWNvbn0iLz48L3RkPgoJCQk8dGQ+PGEgaHJlZj0ieyRlbnRyeS0+ZWRpdHVybH0iPnskZW50cnktPm5hbWV9PC9hPjwvdGQ+CgkJCTx0ZD57JGVudHJ5LT5zdW1tYXJ5fTwvdGQ+CgkJCTx0ZD57JGVudHJ5LT5zaXplfTwvdGQ+CgkJCTx0ZD57JGVudHJ5LT5hdXRob3J9PC90ZD4KCQkJPHRkPnskZW50cnktPmlwfTwvdGQ+CgkJCTx0ZD57JGVudHJ5LT5kYXRlfTwvdGQ+CgkJCTx0ZD57JGVudHJ5LT5kb3dubG9hZHN9PC90ZD4KCQkJPHRkPnskZW50cnktPnRpbWVsaW1pdGVkX2xpbmt9PC90ZD4KCQkJPHRkPnskZW50cnktPmVkaXRsaW5rfTwvdGQ+CgkJCTx0ZD57JGVudHJ5LT5kZWxldGVsaW5rfTwvdGQ+CgkJPC90cj4KCXsvZm9yZWFjaH0KCTwvdGJvZHk+CjwvdGFibGU+CntpZiAkaXRlbWNvdW50ID4gMTB9CjxkaXYgY2xhc3M9InBhZ2VvcHRpb25zIj4KIHskYWRkZmlsZV9saW5rfQo8L2Rpdj4Key9pZn0Ke2Vsc2V9CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgIDxwIGNsYXNzPSJwYWdlb3B0aW9ucyI+Tm8gRmlsZXMgRGV0ZWN0ZWQ8L3A+CjwvZGl2Pgp7L2lmfQp7L2lmfQo=]]></data>
	</file>
	<file>
	  <filename>/Uploads.module.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLWZpbGUtc3R5bGU6bGludXg7IHRhYi13aWR0aDoyOyBpbmRlbnQtdGFicy1tb2RlOnQ7IGMtYmFzaWMtb2Zmc2V0OiAyOyAtKi0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojIFZlcnNpb246IDEuMy4wLWJldGExLCBjYWxndXkxMDAwCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOgkvL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovLyBUaGlzIG1vZHVsZSBpcyBkZXJpdmVkIGZyb20gQ0dFeHRlbnNpb25zIAokY2dleHRlbnNpb25zID0gY21zX2pvaW5fcGF0aCgkZ0Ntcy0+Y29uZmlnWydyb290X3BhdGgnXSwnbW9kdWxlcycsCgkJCSAgICAgICdDR0V4dGVuc2lvbnMnLCdDR0V4dGVuc2lvbnMubW9kdWxlLnBocCcpOwppZiggIWlzX3JlYWRhYmxlKCAkY2dleHRlbnNpb25zICkgKQp7CiAgZWNobyAnPGgxPjxmb250IGNvbG9yPSJyZWQiPkVSUk9SOiBUaGUgQ0dFeHRlbnNpb25zIG1vZHVsZSBjb3VsZCBub3QgYmUgZm91bmQuPC9mb250PjwvaDE+JzsKICByZXR1cm47Cn0KcmVxdWlyZV9vbmNlKCRjZ2V4dGVuc2lvbnMpOwoKLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCmNsYXNzIFVwbG9hZHMgZXh0ZW5kcyBDR0V4dGVuc2lvbnMKewoJdmFyICR1cGxvYWRfZXh0ZW5zaW9ucyA9ICcnOwoJdmFyICRfZmlsZXR5cGVzID0gJyc7CgoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCWxvYWRfY29tbW9uKCkKCS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCglwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIGxvYWRfY29tbW9uKCkKCXsKCQlyZXF1aXJlX29uY2UoZGlybmFtZShfX0ZJTEVfXykuJy9mdW5jdGlvbnMuY29tbW9uX3Rvb2xzLnBocCcpOwoJfQoKCS8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCglsb2FkX2FkbWluKCkKICBwcml2YXRlCgktLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwoJcHVibGljIHN0YXRpYyBmdW5jdGlvbiBsb2FkX2FkbWluKCkKCXsKCQlyZXF1aXJlX29uY2UoZGlybmFtZShfX0ZJTEVfXykuJy9mdW5jdGlvbnMuYWRtaW5fdG9vbHMucGhwJyk7Cgl9CgoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCV9jYXRlZ29yeVBhdGgoICRjYXRlZ29yeXBhdGggKQogIHByaXZhdGUKCQoJR2VuZXJhdGUgYSBwYXRoIHRvIGEgY2VydGFpbiBjYXRlZ29yeQoJLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KCXB1YmxpYyBmdW5jdGlvbiBfY2F0ZWdvcnlQYXRoKCAkY2F0ZWdvcnlwYXRoICkKCXsKCQlnbG9iYWwgJGdDbXM7CgkJcmV0dXJuICRnQ21zLT5jb25maWdbJ3VwbG9hZHNfcGF0aCddLkRJUkVDVE9SWV9TRVBBUkFUT1IuJGNhdGVnb3J5cGF0aDsKCX0KCgoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCVVwbG9hZFBhdGgoICRjYXRlZ29yeXBhdGgsICRmaWxlbmFtZSApCiAgcHJpdmF0ZQoJCglHZW5lcmF0ZSBhIGZpbGUgc3BlY2lmaWNhdGlvbiB0byBhIGZpbGUgaW4gYSBjZXJ0YWluIAoJY2F0ZWdvcnkuCgktLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwoJcHVibGljIGZ1bmN0aW9uIF91cGxvYWRQYXRoKCAkY2F0ZWdvcnlwYXRoLCAkZmlsZW5hbWUgKQoJewoJCXJldHVybiAkdGhpcy0+X2NhdGVnb3J5UGF0aCggJGNhdGVnb3J5cGF0aCApLkRJUkVDVE9SWV9TRVBBUkFUT1IuJGZpbGVuYW1lOwoJfQoKCgkvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJX3Rlc3RpcCgkcmFuZ2UsJGlwKQoJTk9UIFBBUlQgT0YgVEhFIE1PRFVMRSBBUEkKCQoJVGhpcyBpcyBhIGZ1bmN0aW9uIHRvIG1hdGNoIGFuIElQIGFkZHJlc3MgYWdhaW5zdCBhbiAKCWFkZHJlc3MgcmFuZ2Ugc3BlY2lmaWNhdGlvbi4KCS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCglwcm90ZWN0ZWQgZnVuY3Rpb24gX3Rlc3RpcCgkcmFuZ2UsJGlwKSAKCXsKCQkkcmVzdWx0ID0gMTsKCQkKCQkjIElQIFBhdHRlcm4gTWF0Y2hlcgoJCSMgSi5BZGFtcyA8am5hQHJldGluYS5uZXQ+CgkJIwoJCSMgTWF0Y2hlczoKCQkjCgkJIyB4eHgueHh4Lnh4eC54eHggICAgICAgIChleGFjdCkKCQkjIHh4eC54eHgueHh4Llt5eXktenp6XSAgKHJhbmdlKQoJCSMgeHh4Lnh4eC54eHgueHh4L25uICAgIChubiA9ICMgYml0cywgY2lzY28gc3R5bGUgLS0gaS5lLiAvMjQgPSBjbGFzcyBDKQoJCSMKCQkjIERvZXMgbm90IG1hdGNoOgoJCSMgeHh4Lnh4eC54eHgueHhbeXl5LXp6el0gIChyYW5nZSwgcGFydGlhbCBvY3RldHMgbm90IHN1cHBvcnRlZCkKCQkKCQlpZiAoZXJlZygiKFswLTldKylcLihbMC05XSspXC4oWzAtOV0rKVwuKFswLTldKykvKFswLTldKykiLCRyYW5nZSwkcmVncykpIHsKCQkJIyBwZXJmb3JtIGEgbWFzayBtYXRjaAoJCQkkaXBsID0gaXAybG9uZygkaXApOwoJCQkkcmFuZ2VsID0gaXAybG9uZygkcmVnc1sxXSAuICIuIiAuICRyZWdzWzJdIC4gIi4iIC4gJHJlZ3NbM10gLiAiLiIgLiAkcmVnc1s0XSk7CgkJCgkJCSRtYXNrbCA9IDA7CgkJCgkJCWZvciAoJGkgPSAwOyAkaTwgMzE7ICRpKyspIHsKCQkJCWlmICgkaSA8ICRyZWdzWzVdLTEpIHsKCQkJCQkkbWFza2wgPSAkbWFza2wgKyBwb3coMiwoMzAtJGkpKTsKCQkJCX0KCQkJfQoJCQoJCQlpZiAoKCRtYXNrbCAmICRyYW5nZWwpID09ICgkbWFza2wgJiAkaXBsKSkgewoJCQkJcmV0dXJuIDE7CgkJCX0gZWxzZSB7CgkJCQlyZXR1cm4gMDsKCQkJfQoJCX0gZWxzZSB7CgkJCSMgcmFuZ2UgYmFzZWQKCQkJJG1hc2tvY3RzID0gc3BsaXQoIlwuIiwkcmFuZ2UpOwoJCQkkaXBvY3RzID0gc3BsaXQoIlwuIiwkaXApOwoJCQoJCQkjIHBlcmZvcm0gYSByYW5nZSBtYXRjaAoJCQlmb3IgKCRpPTA7ICRpPDQ7ICRpKyspIHsKCQkJCWlmIChlcmVnKCJcWyhbMC05XSspXC0oWzAtOV0rKVxdIiwkbWFza29jdHNbJGldLCRyZWdzKSkgewoJCQkJCWlmICggKCRpcG9jdHNbJGldID4gJHJlZ3NbMl0pIHx8ICgkaXBvY3RzWyRpXSA8ICRyZWdzWzFdKSkgewoJCQkJCQkkcmVzdWx0ID0gMDsKCQkJCQl9CgkJCQl9CgkJCQllbHNlCgkJCQl7CgkJCQkJaWYgKCRtYXNrb2N0c1skaV0gPD4gJGlwb2N0c1skaV0pIHsKCQkJCQkJJHJlc3VsdCA9IDA7CgkJCQkJfQoJCQkJfQoJCQl9CgkJfQoJCXJldHVybiAkcmVzdWx0OwoJfQoKCgkvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJZ2V0Q2F0ZWdvcnlGcm9tTmFtZSgpCglQVUJMSUMKCQoJcmV0dXJuIHRoZSBjYXRlZ29yeSBpZCBnaXZlbiBhIG5hbWUsIG9yIGZhbHNlCgktLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwoJcHVibGljIHN0YXRpYyBmdW5jdGlvbiBnZXRDYXRlZ29yeUZyb21OYW1lKCRuYW1lKQoJewoJCWdsb2JhbCAkZ0NtczsKCQkkZGIgPSYgJGdDbXMtPkdldERiKCk7CgkJJHF1ZXJ5ID0gIlNFTEVDVCAqIEZST00gIi5jbXNfZGJfcHJlZml4ICgpLiJtb2R1bGVfdXBsb2Fkc19jYXRlZ29yaWVzIi4KCQkiIFdIRVJFIHVwbG9hZF9jYXRlZ29yeV9uYW1lID0gPyI7CgkJJHJvdyA9ICRkYi0+R2V0Um93KCRxdWVyeSxhcnJheSgkbmFtZSkpOwoJCWlmKCAhJHJvdyApIAoJCXsKCQkJcmV0dXJuIGZhbHNlOwoJCX0KCQlyZXR1cm4gJHJvdzsKCX0KCgoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCWxvYWRfY2F0ZWdvcnlfYnlfaWQoKQoJUFVCTElDCgkKCXJldHVybiB0aGUgY2F0ZWdvcnkgaW5mbyBnaXZlbiBhIGNhdGVnb3J5IGlkLCBvciBGQUxTRQoJLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KCXB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gbG9hZF9jYXRlZ29yeV9ieV9pZCgkaWQpCgl7CgkJZ2xvYmFsICRnQ21zOwoJCSRkYiA9JiAkZ0Ntcy0+R2V0RGIoKTsKCQkkcXVlcnkgPSAnU0VMRUNUICogRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHNfY2F0ZWdvcmllcwogICAgICAgICAgICAgICBXSEVSRSB1cGxvYWRfY2F0ZWdvcnlfaWQgPSA/JzsKCQkkcm93ID0gJGRiLT5HZXRSb3coJHF1ZXJ5LGFycmF5KCRpZCkpOwoJCWlmKCAhJHJvdyApIHJldHVybiBmYWxzZTsKCQlyZXR1cm4gJHJvdzsKCX0KCgoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCWNhdGVnb3J5X3BhdGhfaW5fdXNlKCkKCVBVQkxJQwoJCglyZXR1cm5zIFRSVUUgaWYgY2F0ZWdvcnkgcGF0aCBpcyBpbiB1c2UsIEZBTFNFIG90aGVyd2lzZQoJLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KCXB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gY2F0ZWdvcnlfcGF0aF9pbl91c2UoJHBhdGgpCgl7CgkJZ2xvYmFsICRnQ21zOwoJCSRkYiA9JiAkZ0Ntcy0+R2V0RGIoKTsKCgkJJHF1ZXJ5ID0gJ1NFTEVDVCB1cGxvYWRfY2F0ZWdvcnlfaWQgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHNfY2F0ZWdvcmllcwogICAgICAgICAgICAgICBXSEVSRSB1cGxvYWRfY2F0ZWdvcnlfcGF0aCA9ID8nOwoJCSR0bXAgPSAkZGItPkdldE9uZSgkcXVlcnksYXJyYXkoJHBhdGgpKTsKCQlpZiggJHRtcCApIHJldHVybiBUUlVFOwoJCXJldHVybiBGQUxTRTsKCX0KCgoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCWdldENhdGVnb3J5TGlzdCgpCglQVUJMSUMKCQoJcmV0dXJuIGEgbGlzdCBvZiBjYXRlZ29yeSBuYW1lcyBhbmQgaWQncwoJLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KCXB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gZ2V0Q2F0ZWdvcnlMaXN0KCkKCXsKCQlnbG9iYWwgJGdDbXM7CgkJJGRiID0mICRnQ21zLT5HZXREQigpOwoJCSRjYXRlZ29yeWxpc3QgPSBhcnJheSgpOwoJCSRxdWVyeSA9ICJTRUxFQ1QgKiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc19jYXRlZ29yaWVzIjsKCQkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxdWVyeSApOwoJCWlmKCAhJGRicmVzdWx0ICkKCQl7CgkJCXJldHVybiAkY2F0ZWdvcnlsaXN0OwoJCX0KCQkKCQl3aGlsZSggJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKSApCgkJewoJCQkkY2F0ZWdvcnlsaXN0WyRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9uYW1lJ11dID0gJHJvd1sndXBsb2FkX2NhdGVnb3J5X2lkJ107CgkJfQoJCXJldHVybiAkY2F0ZWdvcnlsaXN0OwoJfQoKCgkvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJZ2V0Q2F0ZWdvcnlQYXRoRnJvbUlEKCkKCVBVQkxJQwoJCglyZXR1cm4gdGhlIGNhdGVnb3J5IHBhdGggZ2l2ZW4gYSBjYXRlZ29yeSBpZAoJLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KCXB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gZ2V0Q2F0ZWdvcnlQYXRoRnJvbUlEKCAkY2F0ZWdvcnlfaWQgKQoJewoJCWdsb2JhbCAkZ0NtczsKCQkkZGIgPSYgJGdDbXMtPkdldERiKCk7CgkJJHF1ZXJ5ID0gIlNFTEVDVCAqIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX2NhdGVnb3JpZXMiLgoJCSIgV0hFUkUgdXBsb2FkX2NhdGVnb3J5X2lkID0gPyI7CgkJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcXVlcnksIGFycmF5KCAkY2F0ZWdvcnlfaWQgKSApOwoJCWlmKCAhJGRicmVzdWx0ICkKCQl7CgkJCXJldHVybjsKCQl9CgkJJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKTsKCQlpZiggISRyb3cgKQoJCXsKCQkJcmV0dXJuOwoJCX0KCQlyZXR1cm4gJHJvd1sndXBsb2FkX2NhdGVnb3J5X3BhdGgnXTsKCX0KCgoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCWdldENhdGVnb3J5UGF0aEZyb21GaWxlSUQoKQoJUFVCTElDCgkKCXJldHVybiB0aGUgY2F0ZWdvcnkgcGF0aCBnaXZlbiBhIGZpbGUgaWQKCS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCglwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIGdldENhdGVnb3J5UGF0aEZyb21GaWxlSUQoICRmaWxlX2lkICkKCXsKCQlnbG9iYWwgJGdDbXM7CgkJJGRiID0mICRnQ21zLT5HZXREYigpOwoJCSRxdWVyeSA9ICJTRUxFQ1QgKiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2FkcyIuCgkJIiBXSEVSRSB1cGxvYWRfaWQgPSA/IjsKCQkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxdWVyeSwgYXJyYXkoICRmaWxlX2lkKSApOwoJCWlmKCAhJGRicmVzdWx0ICkKCQl7CgkJCXJldHVybjsKCQl9CgkJCgkJJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKTsKCQlpZiggISRyb3cgKQoJCXsKCQkJcmV0dXJuOwoJCX0KCQkkY2F0ID0gJHJvd1sndXBsb2FkX2NhdGVnb3J5X2lkJ107CgkJJHF1ZXJ5ID0gIlNFTEVDVCAqIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX2NhdGVnb3JpZXMgV0hFUkUgdXBsb2FkX2NhdGVnb3J5X2lkID0gPyI7CgkJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcXVlcnksIGFycmF5KCAkY2F0ICkgKTsKCQlpZiggISRkYnJlc3VsdCApCgkJewoJCQlyZXR1cm47CgkJfQoJCSRyb3cgPSAkZGJyZXN1bHQtPkZldGNoUm93KCk7CgkJaWYoICEkcm93ICkKCQl7CgkJCXJldHVybjsKCQl9CgkJcmV0dXJuICRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9wYXRoJ107Cgl9CgoKCS8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCglnZXRfY2F0ZWdvcnlfZmlsZV9saXN0KCAkY2F0ZWdvcnlfaWQgKQoJUFVCTElDCgkKCXJldHVybiBhIGxpc3Qgb2YgZmlsZXMgaW4gdGhlIGdpdmVuIGNhdGVnb3J5CgktLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwoJcHVibGljIHN0YXRpYyBmdW5jdGlvbiBnZXRfY2F0ZWdvcnlfZmlsZV9saXN0KCAkY2F0ZWdvcnlfaWQgKQoJewoJCWdsb2JhbCAkZ0NtczsKCQkkZGIgPSYgJGdDbXMtPkdldERiKCk7CgkJJHF1ZXJ5ID0gIlNFTEVDVCAqIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzCiAgICAgICAgICAgICAgIFdIRVJFIHVwbG9hZF9jYXRlZ29yeV9pZCA9ID8iOwoJCSRmaWxlbGlzdCA9ICRkYi0+R2V0QXJyYXkoICRxdWVyeSwgYXJyYXkoICRjYXRlZ29yeV9pZCApICk7CgkJaWYoICEkZmlsZWxpc3QgKQoJCXsKCQkJcmV0dXJuIEZBTFNFOwoJCX0KCQlyZXR1cm4gJGZpbGVsaXN0OwoJfQoKCgkvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJZ2V0RmlsZU5hbWUoICRmaWxlX2lkICkKCVBVQkxJQwoJCglyZXR1cm4gYSBsaXN0IG9mIGZpbGVzIGluIHRoZSBnaXZlbiBjYXRlZ29yeQoJLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KCXB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gZ2V0RmlsZU5hbWUoICRmaWxlX2lkICkKCXsKCQlnbG9iYWwgJGdDbXM7CgkJJGRiID0mICRnQ21zLT5HZXREYigpOwoJCSRxdWVyeSA9ICJTRUxFQ1QgKiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2FkcyIuCgkJIiBXSEVSRSB1cGxvYWRfaWQgPSA/IjsKCQkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxdWVyeSwgYXJyYXkoICRmaWxlX2lkICkgKTsKCQkkcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdygpOwoJCXJldHVybiAkcm93Wyd1cGxvYWRfbmFtZSddOwoJfQoJCgkKCS8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCglnZXRGaWxlRGV0YWlscyggJGZpbGVfaWQgKQoJUFVCTElDCgkKCXJldHVybiBhIGxpc3Qgb2YgZmlsZXMgaW4gdGhlIGdpdmVuIGNhdGVnb3J5CgktLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwoJcHVibGljIHN0YXRpYyBmdW5jdGlvbiBnZXRGaWxlRGV0YWlscyggJGZpbGVfaWQgKQoJewoJCWdsb2JhbCAkZ0NtczsKCQkkZGIgPSYgJGdDbXMtPkdldERiKCk7CgkJJHF1ZXJ5ID0gIlNFTEVDVCAqIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzIi4KCQkiIFdIRVJFIHVwbG9hZF9pZCA9ID8iOwoJCSRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHF1ZXJ5LCBhcnJheSggJGZpbGVfaWQgKSApOwoJCSRyb3cgPSAkZGJyZXN1bHQtPkZldGNoUm93KCk7CgkJcmV0dXJuICRyb3c7Cgl9CgoJCgkvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJX2dldFVwbG9hZENhdGVnb3J5RGV0YWlscyggJGNhdGVnb3J5X2lkICkKCU5PVCBQQVJUIE9GIFRIRSBNT0RVTEUgQVBJCgkKCXJldHVybnMgYW4gYXNzb2NpYXRpdmUgYXJyYXkgcmVwcmVzZW50aW5nIHRoZSBzcGVjaWZpYwoJcm93IG9mIHRoZSBjYXRlZ29yaWVzIGRhdGFiYXNlIG1hdGNoaW5nIHRoZSBzdXBwbGllZCAKCWNhdGVnb3J5IGlkCgktLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwoJcHVibGljIHN0YXRpYyBmdW5jdGlvbiBfZ2V0VXBsb2FkQ2F0ZWdvcnlEZXRhaWxzKCAkY2F0ZWdvcnlfaWQgKQoJewoJCWdsb2JhbCAkZ0NtczsKCQkkZGIgPSYgJGdDbXMtPkdldERiKCk7CgkJJHF1ZXJ5ID0gIlNFTEVDVCAqIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX2NhdGVnb3JpZXMgCgkJV0hFUkUgdXBsb2FkX2NhdGVnb3J5X2lkID0gPyI7CgkJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcXVlcnksIGFycmF5KCAkY2F0ZWdvcnlfaWQgKSApOwoJCWlmKCAhJGRicmVzdWx0ICkgewoJCQlyZXR1cm47CgkJfQoJCgkJJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKTsKCQlpZiggISRyb3cgKSB7CgkJCXJldHVybjsKCQl9CgkJcmV0dXJuICRyb3c7Cgl9CgkKCQoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCV9zY2FuZGlyKCAkZGlyLCAkc29ydCApCglOT1QgUEFSVCBPRiBUSEUgTU9EVUxFIEFQSQoJCglTY2FuIGEgZGlyZWN0b3J5IGFuZCByZXR1cm4gYSBzb3J0ZWQgbGlzdC4KCS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCglwcm90ZWN0ZWQgZnVuY3Rpb24gX3NjYW5kaXIoJGRpciA9ICcuLycsICRzb3J0ID0gMCkKCXsKCQkkZGlyX29wZW4gPSBAb3BlbmRpcigkZGlyKTsKCgkJaWYgKCEgJGRpcl9vcGVuKQoJCQlyZXR1cm4gZmFsc2U7CgoJCSRmaWxlcyA9IGFycmF5KCk7CgkJd2hpbGUgKCgkZGlyX2NvbnRlbnQgPSByZWFkZGlyKCRkaXJfb3BlbikpICE9IGZhbHNlKQoJCXsKCQkJLy8gd2UgaWdub3JlIGluZGV4Lmh0bWwgZmlsZXMgaWYgdGhlIHByZWZlcmVuY2UgaXMgc2V0CgkJCWlmKCAkZGlyX2NvbnRlbnQgPT0gJ2luZGV4Lmh0bWwnICYmICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdjcmVhdGVfZHVtbXlfaW5kZXhfaHRtbCcpKQoJCQl7CgkJCQljb250aW51ZTsKCQkJfQoKCQkJLy8gaWdub3JlIGRvdCBmaWxlcwoJCQlpZiggcHJlZ19tYXRjaCggIi9eXC4vIiwgJGRpcl9jb250ZW50ICkgKQoJCQl7CgkJCQljb250aW51ZTsKCQkJfQoKCQkJJGZpbGVzW10gPSAkZGlyX2NvbnRlbnQ7CgkJfQoKCQlpZiggaXNfYXJyYXkoICRmaWxlcyApICkKCQl7CgkJCWlmICgkc29ydCA9PSAxKQoJCQkJcnNvcnQoJGZpbGVzLCBTT1JUX1NUUklORyk7CgkJCWVsc2UKCQkJCXNvcnQoJGZpbGVzLCBTT1JUX1NUUklORyk7CgkJfQoJCXJldHVybiAkZmlsZXM7Cgl9CgkKCQoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCV9pc1ZhbGlkRmlsZW5hbWUoICRmaWxlbmFtZSApCglOT1QgUEFSVCBPRiBUSEUgTU9EVUxFIEFQSQoJCglUZXN0IGEgc3RyaW5nIHRvIHNlZSBpZiBpdCBpcyBhIHZhbGlkIGZpbGVuYW1lIChpLmUpIHRoZQoJZXh0ZW5zaW9uIGZhbGxzIGluIG91ciBhbGxvd2VkIGV4dGVuc2lvbnMsIGFuZCB0aGVyZSBhcmUKCW5vIGludmFsaWQgY2hhcmFjdGVycy4KCS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCglwdWJsaWMgZnVuY3Rpb24gX2lzVmFsaWRGaWxlbmFtZSAoJGZpbGVuYW1lKQoJewoJCSRmaWxlX25hbWUgPSB0cmltICgkZmlsZW5hbWUpOwoJCSRleHRlbnNpb24gPSBzdHJ0b2xvd2VyIChzdHJyY2hyICgkZmlsZV9uYW1lLCAiLiIpKTsKCgkJLy8gY2hlY2sgZm9yIGV4dGVuc2lvbiBvciBkb3QgZmlsZS4KCQlpZiggIXN0cnBvcygkZmlsZV9uYW1lLCcuJykgKSByZXR1cm4gZmFsc2U7CgkKCQkvLyBhcnJheSBvZiBmaWxlcyB3ZSBkb24ndCBhbGxvdwoJCSRleHRfc3RyID0gJHRoaXMtPnVwbG9hZF9leHRlbnNpb25zOwoJCWlmKCAkZXh0X3N0ciA9PSAnJyApCgkJewoJCQkkZXh0X3N0ciA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlICgidmFsaWRfdXBsb2FkZXh0ZW5zaW9ucyIpOwoJCX0KCQkkZXh0X2FycmF5ID0gc3BsaXQgKCIsIiwgJGV4dF9zdHIpOwoJCSRleHRfY291bnQgPSBjb3VudCAoJGV4dF9hcnJheSk7CgkKCQlpZiAoISRmaWxlX25hbWUpCgkJewoJCQlyZXR1cm4gZmFsc2U7CgkJfQoJCWVsc2UKCQl7CgkJCWlmICghJGV4dF9hcnJheSkKCQkJewoJCQkJcmV0dXJuIHRydWU7CgkJCX0KCQkJZWxzZQoJCQl7CgkJCQlmb3JlYWNoICgkZXh0X2FycmF5IGFzICR2YWx1ZSkKCQkJCXsKCQkJCQkkZmlyc3RfY2hhciA9IHN1YnN0ciAoJHZhbHVlLCAwLCAxKTsKCQkJCQlpZiAoJGZpcnN0X2NoYXIgPD4gIi4iKQoJCQkJCXsKCQkJCQkJJGV4dGVuc2lvbnNbXSA9ICIuIi5zdHJ0b2xvd2VyICgkdmFsdWUpOwoJCQkJCX0KCQkJCQllbHNlCgkJCQkJewoJCQkJCQkkZXh0ZW5zaW9uc1tdID0gc3RydG9sb3dlciAoJHZhbHVlKTsKCQkJCQl9CgkJCQl9CgoJCQkJJHZhbGlkX2V4dGVuc2lvbiA9IGZhbHNlOwoJCQkJZm9yZWFjaCAoJGV4dGVuc2lvbnMgYXMgJHZhbHVlKQoJCQkJewoJCQkJCWlmICgkdmFsdWUgPT0gJGV4dGVuc2lvbikKCQkJCQl7CgkJCQkJCSR2YWxpZF9leHRlbnNpb24gPSB0cnVlOwoJCQkJCQlicmVhazsKCQkJCQl9CgkJCQl9CgkJCXJldHVybiAkdmFsaWRfZXh0ZW5zaW9uOwoJCX0KCX0KfQoKCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICBFTkQgT0YgVVRJTElUWSBGVU5DVElPTlMKICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KCgogIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgIEdldEhlYWRlckhUTUwoKQogICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwogIHB1YmxpYyBmdW5jdGlvbiBHZXRIZWFkZXJIVE1MKCkKICB7CiAgICAkdHh0ID0gJyc7CiAgICAkb2JqID0mICR0aGlzLT5HZXRNb2R1bGVJbnN0YW5jZSgnSlF1ZXJ5VG9vbHMnKTsKICAgIGlmKCBpc19vYmplY3QoJG9iaikgKQogICAgICB7CiR0bXBsID0gPDw8RU9UCntKUXVlcnlUb29scyBhY3Rpb249J2luY2pzJyBleGNsdWRlPSdmb3JtJ30Ke0pRdWVyeVRvb2xzIGFjdGlvbj0ncmVhZHknfQpFT1Q7CiAgICAgICR0eHQgLj0gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhKCR0bXBsKTsKCiR0eHQgLj0gPDw8RU9UCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KCWpRdWVyeShkb2N1bWVudCkucmVhZHkoZnVuY3Rpb24oKXsKICAJIGpRdWVyeSgnLmZhbmN5Ym94JykuZmFuY3lib3goKTsKICB9KTsKPC9zY3JpcHQ+CkVPVDsKCiAgICAgIH0KICAgIHJldHVybiAkdHh0OwogIH0JCgoKICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICBHZXROYW1lKCkKICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KICBwdWJsaWMgZnVuY3Rpb24gR2V0TmFtZSAoKQogIHsKICAgIHJldHVybiAnVXBsb2Fkcyc7CiAgfQoKCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgR2V0RnJpZW5kbHlOYW1lKCkKICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KICBwdWJsaWMgZnVuY3Rpb24gR2V0RnJpZW5kbHlOYW1lICgpCiAgewogICAgcmV0dXJuICR0aGlzLT5MYW5nKCdmcmllbmRseW5hbWUnKTsKICB9CgoKCS8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCglHZXRFdmVudERlc2NyaXB0aW9uKCAkbmFtZSApCgktLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwoJcHVibGljIGZ1bmN0aW9uIEdldEV2ZW50RGVzY3JpcHRpb24oICRuYW1lICkKCXsKCQlzd2l0Y2ggKCAkbmFtZSApCgkJewoJCQljYXNlICdPblVwbG9hZCc6CgkJCQlyZXR1cm4gJHRoaXMtPkxhbmcoJ2luZm9fZXZlbnRfb251cGxvYWQnKTsKCQkJCWJyZWFrOwoJCQljYXNlICdPblJlbW92ZSc6CgkJCQlyZXR1cm4gJHRoaXMtPkxhbmcoJ2luZm9fZXZlbnRfb25yZW1vdmUnKTsKCQkJCWJyZWFrOwoJCQljYXNlICdPbkRvd25sb2FkJzoKCQkJCXJldHVybiAkdGhpcy0+TGFuZygnaW5mb19ldmVudF9vbmRvd25sb2FkJyk7CgkJCQlicmVhazsKCQkJY2FzZSAnT25DcmVhdGVDYXRlZ29yeSc6CgkJCQlyZXR1cm4gJHRoaXMtPkxhbmcoJ2luZm9fZXZlbnRfb25jcmVhdGVjYXRlZ29yeScpOwoJCQkJYnJlYWs7CgkJCWNhc2UgJ09uRGVsZXRlQ2F0ZWdvcnknOgoJCQkJcmV0dXJuICR0aGlzLT5MYW5nKCdpbmZvX2V2ZW50X29uZGVsZXRlY2F0ZWdvcnknKTsKCQkJCWJyZWFrOwoJCX0KCQlyZXR1cm4gIiI7Cgl9CgoKCS8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCglHZXRWZXJzaW9uKCkKCS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCglwdWJsaWMgZnVuY3Rpb24gR2V0VmVyc2lvbigpCgl7CgkJcmV0dXJuICcxLjEwLjQnOwoJfQoKCgkvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJR2V0RXZlbnRIZWxwKCAkZXZlbnRuYW1lICkKCS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCglwdWJsaWMgZnVuY3Rpb24gR2V0RXZlbnRIZWxwICggJGV2ZW50bmFtZSApCgl7CgkJcmV0dXJuICR0aGlzLT5MYW5nICgnaGVscF8nLiRldmVudG5hbWUpOwoJfQoKCS8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCglHZXRIZWxwKCkKCS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCglwdWJsaWMgZnVuY3Rpb24gR2V0SGVscCAoKQoJewoJCXJldHVybiAkdGhpcy0+TGFuZyAoJ2hlbHAnKTsKCX0KCgoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCUdldEF1dGhvcigpCgktLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwoJcHVibGljIGZ1bmN0aW9uIEdldEF1dGhvciAoKQoJewoJCXJldHVybiAnY2FsZ3V5MTAwMCc7Cgl9CgoKCS8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCglHZXRBdXRob3JFbWFpbCgpCgktLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwoJcHVibGljIGZ1bmN0aW9uIEdldEF1dGhvckVtYWlsICgpCgl7CgkJcmV0dXJuICdjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnJzsKCX0KCgoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCUdldENoYW5nZUxvZygpCgktLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwoJcHVibGljIGZ1bmN0aW9uIEdldENoYW5nZUxvZyAoKQoJewoJCSRmbiA9IGRpcm5hbWUoX19GSUxFX18pLicvY2hhbmdlbG9nLmluYyc7CgkJcmV0dXJuIEBmaWxlX2dldF9jb250ZW50cygkZm4pOwoJfQoKCgkvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJSXNQbHVnaW5Nb2R1bGUoKQoJLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KCXB1YmxpYyBmdW5jdGlvbiBJc1BsdWdpbk1vZHVsZSAoKQoJewoJCXJldHVybiB0cnVlOwoJfQoKCgkvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJSGFzQWRtaW4oKQoJLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KCXB1YmxpYyBmdW5jdGlvbiBIYXNBZG1pbiAoKQoJewoJCXJldHVybiB0cnVlOwoJfQoKCgkvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJR2V0QWRtaW5TZWN0aW9uKCkKCS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCglwdWJsaWMgZnVuY3Rpb24gR2V0QWRtaW5TZWN0aW9uICgpCgl7CgkJcmV0dXJuICdjb250ZW50JzsKCX0KCgoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCU1pbmltdW1DTVNWZXJzaW9uKCkKCS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCglwdWJsaWMgZnVuY3Rpb24gTWluaW11bUNNU1ZlcnNpb24gKCkKCXsKCQlyZXR1cm4gJzEuNi41JzsKCX0KCgoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCVNldFBhcmFtZXRlcnMoKQoJLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KCXB1YmxpYyBmdW5jdGlvbiBTZXRQYXJhbWV0ZXJzICgpCgl7CiAgICBwYXJlbnQ6OlNldFBhcmFtZXRlcnMoKTsKICAgIAoJCSR0aGlzLT5SZWdpc3Rlck1vZHVsZVBsdWdpbigpOwoJCSR0aGlzLT5SZXN0cmljdFVua25vd25QYXJhbXMoKTsKICAgICR0aGlzLT5BZGRJbWFnZURpcignaW1hZ2VzJyk7CgoJCSR0aGlzLT5SZWdpc3RlclJvdXRlKCcvW1V1XXBsb2Fkc1wvKD9QPHVwbG9hZF9pZD5bMC05XSspXC8oP1A8anVuaz4uKj8pJC8nLAoJCQlhcnJheSgnc2hvd3RlbXBsYXRlJz0+J2ZhbHNlJywgJ2FjdGlvbic9PidnZXRmaWxlJykpOwoJCSR0aGlzLT5SZWdpc3RlclJvdXRlKCcvW1V1XXBsb2Fkc1wvbGltaXRlZFwvKD9QPHVybF9rZXk+Lio/KSQvJywKCQkJCQkJCQkJCQkJIGFycmF5KCdzaG93dGVtcGxhdGUnPT4nZmFsc2UnLCAnYWN0aW9uJz0+J2dldGZpbGUnKSk7CgkJCgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcigna2V5JywgJ3ZhbHVlJywgJHRoaXMtPkxhbmcoJ3BhcmFtX2tleScpKTsKCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdub2F1dGhvcicsICcxJywgJHRoaXMtPkxhbmcoJ3BhcmFtX25vYXV0aG9yJykpOwoJCSR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ3VwbG9hZF9pZCcsJ2lkJywkdGhpcy0+TGFuZygncGFyYW1fdXBsb2FkX2lkJykpOwoJCSR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ2NvdW50JywnJywkdGhpcy0+TGFuZygncGFyYW1fY291bnQnKSk7CgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignc29ydG9yZGVyJywnZGF0ZV9hc2MnLCR0aGlzLT5MYW5nKCdwYXJhbV9zb3J0b3JkZXInKSk7CgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignZmlsZV9leHRlbnNpb25zJywnZXh0MSxleHQyLGV4dDMnLCR0aGlzLT5MYW5nKCdwYXJhbV9maWxlZXh0ZW5zaW9ucycpKTsKCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdjYXRlZ29yeScsJ3VwbG9hZF9jYXRlZ29yeScsJHRoaXMtPkxhbmcoJ3BhcmFtX2NhdGVnb3J5JyksZmFsc2UpOwoJCSR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ2ZpbHRlcicsJycsJHRoaXMtPkxhbmcoJ3BhcmFtX2ZpbHRlcicpKTsKCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdub19pbml0aWFsJywnMScsJHRoaXMtPkxhbmcoJ3BhcmFtX25vX2luaXRpYWwnKSk7CgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignbW9kZScsJ3N1bW1hcnknLCR0aGlzLT5MYW5nKCdwYXJhbV9tb2RlJyksZmFsc2UpOwoJCSR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ3RlbXBsYXRlJywnJywkdGhpcy0+TGFuZygncGFyYW1fdGVtcGxhdGUnKSk7CgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignZGV0YWlsdGVtcGxhdGUnLCcnLCR0aGlzLT5MYW5nKCdwYXJhbV9kZXRhaWx0ZW1wbGF0ZScpKTsKCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdub2NhcHRjaGEnLCcnLCR0aGlzLT5MYW5nKCdwYXJhbV9ub2NhcHRjaGEnKSk7CgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignZmlsZXR5cGVzJywnJywkdGhpcy0+TGFuZygncGFyYW1fZmlsZXR5cGVzJykpOwoJCSR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ3NlbGVjdG5hbWUnLCcnLCR0aGlzLT5MYW5nKCdwYXJhbV9zZWxlY3RuYW1lJykpOwoJCSR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ3NlbGVjdG5vbmUnLCcnLCR0aGlzLT5MYW5nKCdwYXJhbV9zZWxlY3Rub25lJykpOwoJCSR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ3NlbGVjdHZhbHVlJywnJywkdGhpcy0+TGFuZygncGFyYW1fc2VsZWN0dmFsdWUnKSk7CgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignc2VsZWN0Zm9ybScsJycsJHRoaXMtPkxhbmcoJ3BhcmFtX3NlbGVjdGZvcm0nKSk7CgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcigncHJlZml4JywwLCR0aGlzLT5MYW5nKCdwYXJhbV9wcmVmaXgnKSk7CgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcigncHJlZml4X2ZldScsMCwkdGhpcy0+TGFuZygncGFyYW1fcHJlZml4X2ZldScpKTsKCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdkZXRhaWxwYWdlJywnJywkdGhpcy0+TGFuZygncGFyYW1fZGV0YWlscGFnZScpKTsKCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdsaXN0aW5ndGVtcGxhdGUnLCcnLCR0aGlzLT5MYW5nKCdwYXJhbV9saXN0aW5ndGVtcGxhdGUnKSk7CgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignbGlzdGluZ3NvcnRvcmRlcicsJycsJHRoaXMtPkxhbmcoJ3BhcmFtX2xpc3Rpbmdzb3J0b3JkZXInKSk7CgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignc2VuZGZpbGVwYWdlJywnJywkdGhpcy0+TGFuZygncGFyYW1fc2VuZGZpbGVwYWdlJykpOwoJCSR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ2FjdGlvbicsJ2RlZmF1bHQnLCR0aGlzLT5MYW5nKCdwYXJhbV9hY3Rpb24nKSk7CgkJCgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2tleScsQ0xFQU5fU1RSSU5HKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnbm9hdXRob3InLENMRUFOX0lOVCk7CgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ3VwbG9hZF9pZCcsQ0xFQU5fSU5UKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnY291bnQnLENMRUFOX0lOVCk7CgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ3NvcnRvcmRlcicsQ0xFQU5fU1RSSU5HKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnZmlsZV9leHRlbnNpb25zJyxDTEVBTl9TVFJJTkcpOwoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdjYXRlZ29yeScsIENMRUFOX1NUUklORyk7CgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2ZpbHRlcicsQ0xFQU5fU1RSSU5HKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnbm9faW5pdGlhbCcsQ0xFQU5fSU5UKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnbW9kZScsQ0xFQU5fU1RSSU5HKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgndGVtcGxhdGUnLENMRUFOX1NUUklORyk7CgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2RldGFpbHRlbXBsYXRlJyxDTEVBTl9TVFJJTkcpOwoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdub2NhcHRjaGEnLENMRUFOX0lOVCk7CgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2ZpbGV0eXBlcycsQ0xFQU5fU1RSSU5HKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnc2VsZWN0bmFtZScsQ0xFQU5fU1RSSU5HKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnc2VsZWN0bm9uZScsQ0xFQU5fSU5UKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnc2VsZWN0dmFsdWUnLENMRUFOX1NUUklORyk7CgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ3NlbGVjdGZvcm0nLENMRUFOX1NUUklORyk7CgkJJHRoaXMtPlNldFBhcmFtZXRlcnR5cGUoJ3ByZWZpeCcsQ0xFQU5fSU5UKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVydHlwZSgncHJlZml4X2ZldScsQ0xFQU5fSU5UKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnZGV0YWlscGFnZScsQ0xFQU5fU1RSSU5HKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnc2VuZGZpbGVwYWdlJyxDTEVBTl9TVFJJTkcpOwoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCd1cmxfa2V5JyxDTEVBTl9TVFJJTkcpOwoJCQoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdpbnB1dF9rZXknLENMRUFOX1NUUklORyk7CgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2lucHV0X2F1dGhvcicsQ0xFQU5fU1RSSU5HKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnaW5wdXRfc3VtbWFyeScsQ0xFQU5fU1RSSU5HKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnaW5wdXRfZGVzY3JpcHRpb24nLENMRUFOX1NUUklORyk7CgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2lucHV0X2Rlc3RuYW1lJyxDTEVBTl9TVFJJTkcpOwoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdpbnB1dF9yZXBsYWNlJyxDTEVBTl9JTlQpOwoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdpbnB1dF9jYXB0Y2hhJyxDTEVBTl9TVFJJTkcpOwoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdkb191cGxvYWRmaWxlJyxDTEVBTl9TVFJJTkcpOwoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdub291dHB1dCcsQ0xFQU5fSU5UKTsKCQkKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnbGlzdGluZ3RlbXBsYXRlJyxDTEVBTl9TVFJJTkcpOwoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdsaXN0aW5nc29ydG9yZGVyJyxDTEVBTl9TVFJJTkcpOwoJCQoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdpbnB1dF9maWx0ZXInLENMRUFOX1NUUklORyk7CgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2hpZGRlbl9wYXJhbXMnLENMRUFOX1NUUklORyk7CgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2lucHV0X3N1Ym1pdCcsQ0xFQU5fU1RSSU5HKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnaW5wdXRfc2VuZHRvJyxDTEVBTl9TVFJJTkcpOwoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdpbnB1dF9zdWJqZWN0JyxDTEVBTl9TVFJJTkcpOwoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdpbnB1dF9ub3RlcycsQ0xFQU5fU1RSSU5HKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnaW5wdXRfY2FuY2VsJyxDTEVBTl9TVFJJTkcpOwoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdwYWdlbnVtJyxDTEVBTl9JTlQpOwogICAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoQ0xFQU5fUkVHRVhQLicvZmllbGRfLiovJyxDTEVBTl9TVFJJTkcpOwoJfQoKCgkvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJR2V0QWRtaW5EZXNjcmlwdGlvbigpCgktLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwoJcHVibGljIGZ1bmN0aW9uIEdldEFkbWluRGVzY3JpcHRpb24gKCkKCXsKCQlyZXR1cm4gJHRoaXMtPkxhbmcgKCdtb2RkZXNjcmlwdGlvbicpOwoJfQoKCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgQWxsb3dBdXRvSW5zdGFsbCgpCiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCiAgcHVibGljIGZ1bmN0aW9uIEFsbG93QXV0b0luc3RhbGwoKSB7CiAgICByZXR1cm4gRkFMU0U7CiAgfQoKCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgQWxsb3dBdXRvVXBncmFkZSgpCiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCiAgcHVibGljIGZ1bmN0aW9uIEFsbG93QXV0b1VwZ3JhZGUoKSB7CiAgICByZXR1cm4gRkFMU0U7CiAgfQoKCgkvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJVmlzaWJsZVRvQWRtaW5Vc2VyKCkKCS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCglwdWJsaWMgZnVuY3Rpb24gVmlzaWJsZVRvQWRtaW5Vc2VyICgpCgl7CgkJcmV0dXJuICR0aGlzLT5DaGVja1Blcm1pc3Npb24gKCdNYW5hZ2UgVXBsb2FkcycpIHx8CgkJCSR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBUZW1wbGF0ZXMnKSB8fAoJCQkkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdVcGxvYWQgRmlsZXMgdG8gVXBsb2FkcycpIHx8CgkJCSR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBTaXRlIFByZWZlcmVuY2VzJyk7Cgl9CgoKCS8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCglHZXREZXBlbmRlbmNpZXMoKQoJLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KCXB1YmxpYyBmdW5jdGlvbiBHZXREZXBlbmRlbmNpZXMgKCkKCXsKCQlyZXR1cm4gYXJyYXkgKCdDR0V4dGVuc2lvbnMnPT4nMS4xNy4zJyk7Cgl9CgoKCS8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCglJbnN0YWxsUG9zdE1lc3NhZ2UoKQoJLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KCXB1YmxpYyBmdW5jdGlvbiBJbnN0YWxsUG9zdE1lc3NhZ2UgKCkKCXsKCQlyZXR1cm4gJHRoaXMtPkxhbmcgKCdwb3N0aW5zdGFsbCcpOwoJfQoKCgkvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJVW5pbnN0YWxsUG9zdE1lc3NhZ2UoKQoJLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KCXB1YmxpYyBmdW5jdGlvbiBVbmluc3RhbGxQb3N0TWVzc2FnZSAoKQoJewoJCXJldHVybiAkdGhpcy0+TGFuZyAoJ3Bvc3R1bmluc3RhbGwnKTsKCX0KCgoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCURvQWN0aW9uKCRhY3Rpb24sICRpZCwgJHBhcmFtcywgJHJldHVybmlkKQoJLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KCXB1YmxpYyBmdW5jdGlvbiBEb0FjdGlvbiAoJGFjdGlvbiwgJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQgPSAtMSkKCXsKCQlzd2l0Y2ggKCRhY3Rpb24pCgkJewkJCgkJCWNhc2UgJ2RvX2RlbGV0ZWNhdGVnb3J5JzoKCQkJewoJCQkJLy8gY2hlY2sgcGVybWlzc2lvbnMgYWdhaW4KCQkJCWlmICgkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uICgnTWFuYWdlIFVwbG9hZHMnKSkKCQkJCXsKCQkJCQkkZGVsZXRlX2RpciA9IGZhbHNlOwoJCQkJCWlmKCAhaXNzZXQoJHBhcmFtc1snY2F0ZWdvcnlfaWQnXSkgKQoJCQkJCQl7CgkJCQkJCQkkdGhpcy0+U2V0RXJyb3IoJHRoaXMtPkxhbmcoJ2Vycm9yX21pc3NpbmdfaW52YWxpZCcsJ2NhdGVnb3J5X2lkJykpOwoJCQkJCQkJJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkLCdjYXRlZ29yaWVzJyk7CgkJCQkJCX0KCQkJCQlpZiggaXNzZXQoJHBhcmFtc1snaW5wdXRfZGVsZXRlZGlyZWN0b3J5J10pICYmICRwYXJhbXNbJ2lucHV0X2RlbGV0ZWRpcmVjdG9yeSddICkKCQkJCQkJewoJCQkJCQkJJGRlbGV0ZV9kaXIgPSB0cnVlOwoJCQkJCQl9CgkJCQkJJG1zZyA9ICR0aGlzLT5fQWRtaW5Eb0RlbGV0ZUNhdGVnb3J5KCRwYXJhbXNbJ2NhdGVnb3J5X2lkJ10sJGRlbGV0ZV9kaXIpOwoJCQkJCWlmKCAkbXNnICkKCQkJCQkJewoJCQkJCQkJJHRoaXMtPlNldEVycm9yKCRtc2cpOwoJCQkJCQl9CgkJCQkJJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkLCdjYXRlZ29yaWVzJyk7CgkJCQl9CgkJCQlicmVhazsKCQkJfQoJCgkKCQkJY2FzZSAnZG9fZGVsZXRldXBsb2FkJzoKCQkJewoJCQkJLy8gY2hlY2sgcGVybWlzc2lvbnMgYWdhaW4KCQkJCWlmKCAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdNYW5hZ2UgVXBsb2FkcycpIHx8ICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ1VwbG9hZCBGaWxlcyB0byBVcGxvYWRzJykpCgkJCQl7CgkJCQkJaWYoICFpc3NldCggJHBhcmFtc1sndXBsb2FkX2lkJ10gKSApIAoJCQkJCQl7CgkJCQkJCQkkbW9kdWxlLT5fRGlzcGxheUVycm9yUGFnZSAoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsCgkJCQkJCQkJCQkJCQkJCQkJCQkJCSRtb2R1bGUtPkxhbmcgKCdlcnJvcl9pbnN1ZmZpY2llbnRwYXJhbXMnLCd1cGxvYWRfaWQnKSk7CgkJCQkJCQlyZXR1cm47CgkJCQkJCX0KCgkJCQkJJG1zZyA9ICR0aGlzLT5fQWRtaW5Eb0RlbGV0ZVVwbG9hZCgkcGFyYW1zWyd1cGxvYWRfaWQnXSx0cnVlKTsKCQkJCQlpZiggJG1zZyApCgkJCQkJCXsKCQkJCQkJCSR0aGlzLT5TZXRFcnJvcigkbXNnKTsKCQkJCQkJfQoJCQkJCSR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwgJ2ZpbGVzJywgYXJyYXkoICdpbnB1dF9jYXRlZ29yeScgPT4gJHVwbG9hZHJvd1sndXBsb2FkX2NhdGVnb3J5X2lkJ10pKTsKCgkJCQl9CgkJCQlicmVhazsKCQkJfQoJCgkJCWNhc2UgJ3VwZGF0ZWVtYWlsdGVtcGxhdGUnOgoJCQl7CgkJCQkvLyBjaGVjayBwZXJtaXNzaW9ucyBhZ2FpbgoJCQkJaWYgKCR0aGlzLT5DaGVja1Blcm1pc3Npb24gKCdNb2RpZnkgVGVtcGxhdGVzJykpCgkJCQl7CgkJCQkJaWYgKGlzc2V0ICgkcGFyYW1zWydkZWZhdWx0YnV0dG9uJ10pKQoJCQkJCXsKCQkJCQkJJGZuID0gZGlybmFtZShfX0ZJTEVfXykuJy90ZW1wbGF0ZXMvb3JpZ19lbWFpbG5vdGlmeV90ZW1wbGF0ZS50cGwnOwoJCQkJCQlpZiggZmlsZV9leGlzdHMoJGZuKSApCgkJCQkJCQl7CgkJCQkJCQkJJHRlbXBsYXRlID0gQGZpbGVfZ2V0X2NvbnRlbnRzKCRmbik7CgkJCQkJCQkJJHRoaXMtPlNldFRlbXBsYXRlKCAndXBsb2FkX2VtYWlsdGVtcGxhdGUnLCAkdGVtcGxhdGUpOwoJCQkJCQkJfQoJCQkJCX0KCQkJCQllbHNlCgkJCQkJewoJCQkJCQkkdGhpcy0+U2V0VGVtcGxhdGUgKCd1cGxvYWRfZW1haWx0ZW1wbGF0ZScsICRwYXJhbXNbJ3RlbXBsYXRlY29udGVudCddKTsKCQkJCQl9CgkJCQkJJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkLCAnZW1haWxfdGVtcGxhdGUnLCAnJywgJ2FkbWluX3RlbXBsYXRlcycpOwoJCQkJfQoJCQl9CgoJCQljYXNlICd1cGRhdGVzZW5kZmlsZWVtYWlsJzoKCQkJewoJCQkJLy8gY2hlY2sgcGVybWlzc2lvbnMgYWdhaW4KCQkJCWlmICgkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uICgnTW9kaWZ5IFRlbXBsYXRlcycpKQoJCQkJewoJCQkJCWlmIChpc3NldCAoJHBhcmFtc1snZGVmYXVsdGJ1dHRvbiddKSkKCQkJCQl7CgkJCQkJCS8vIHRlbXBsYXRlIHVzZWQgZm9yIHNlbmRmaWxlIGVtYWlsCgkJCQkJCSRmbiA9IGRpcm5hbWUoX19GSUxFX18pLicvdGVtcGxhdGVzL29yaWdfc2VuZGZpbGVycHRfdGVtcGxhdGUudHBsJzsKCQkJCQkJaWYoIGZpbGVfZXhpc3RzKCRmbikgKQoJCQkJCQkJewoJCQkJCQkJCSR0ZW1wbGF0ZSA9IEBmaWxlX2dldF9jb250ZW50cygkZm4pOwoJCQkJCQkJCSR0aGlzLT5TZXRUZW1wbGF0ZSggJ3VwbG9hZF9zZW5kZmlsZXJwdCcsICR0ZW1wbGF0ZSk7CgkJCQkJCQl9CgkJCQkJfQoJCQkJCWVsc2UKCQkJCQl7CgkJCQkJCSR0aGlzLT5TZXRUZW1wbGF0ZSAoJ3VwbG9hZF9zZW5kZmlsZXJwdCcsICRwYXJhbXNbJ3RlbXBsYXRlY29udGVudCddKTsKCQkJCQl9CgkJCQkJJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkLCAnZW1haWxfdGVtcGxhdGUnLCAnJywgJ2FkbWluX3RlbXBsYXRlcycpOwoJCQkJfQoJCQl9CgoJCQlkZWZhdWx0OgoJCQkJcGFyZW50OjpEb0FjdGlvbiggJGFjdGlvbiwgJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQgKTsKCQkJCWJyZWFrOwoJCX0KCX0KCgoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCVNlYXJjaFJlc3VsdCgkcmV0dXJuaWQsJGFydGljbGVpZCwkYXR0cj0nJykKCS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCglwdWJsaWMgZnVuY3Rpb24gU2VhcmNoUmVzdWx0KCRyZXR1cm5pZCwgJGFydGljbGVpZCwgJGF0dHIgPSAnJykKCXsKCQkkZGIgPSYgJHRoaXMtPkdldERiKCk7CgkJJHJlc3VsdCA9IGFycmF5KCk7CgkJaWYoICRhdHRyID09ICd1cGxvYWQnKQoJCXsKCQkJLy8gZ2V0IHRoZSBjYXRlZ29yeSBpZCBmb3IgYW4gdXBsb2FkIGlkCgkJCSRkZXRhaWxzID0gJHRoaXMtPkdldFVwbG9hZERldGFpbHMoJGFydGljbGVpZCwnJyk7CgkKCQkJLy8gbm93IGdldCB0aGUgY2F0ZWdvcnkgbmFtZSBpbnN0ZWFkIG9mIHRoZSBjYXRlZ29yeSBpZCwgZ29kIAoJCQkvLyB3YXMgSSBzdHVwaWQuCgkJCSRxID0gIlNFTEVDVCB1cGxvYWRfY2F0ZWdvcnlfbmFtZSBBUyBuYW1lIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX2NhdGVnb3JpZXMgV0hFUkUgdXBsb2FkX2NhdGVnb3J5X2lkID0gPyI7CgkJCSRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHEsIGFycmF5KCRkZXRhaWxzWyd1cGxvYWRfY2F0ZWdvcnlfaWQnXSkgKTsKCQkJaWYoICEkZGJyZXN1bHQgfHwgISRkYnJlc3VsdC0+UmVjb3JkQ291bnQoKSApCgkJCXsKCQkJCWRpZSggJ2RhdGFiYXNlIGVycm9yJyApOwoJCQkJLy8gdG9kbywgYXVkaXQKCQkJCXJldHVybjsKCQkJfQoJCQkkcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdygpOwoJCQkkcmVzdWx0WzBdID0gJHRoaXMtPkdldEZyaWVuZGx5TmFtZSgpOwoJCQkkcmVzdWx0WzFdID0gJGRldGFpbHNbJ3VwbG9hZF9uYW1lJ107CgkJCSRyZXN1bHRbMl0gPSAkdGhpcy0+Q3JlYXRlTGluayggJGFydGljbGVpZCwgJ2RlZmF1bHQnLCAkcmV0dXJuaWQsICRkZXRhaWxzWyd1cGxvYWRfbmFtZSddLAoJCQkJYXJyYXkoJ21vZGUnPT4nc2luZ2xlJywKCQkJCQkndXBsb2FkX2lkJyA9PiAkYXJ0aWNsZWlkLAoJCQkJCSdjYXRlZ29yeScgPT4gJHJvd1snbmFtZSddICksICcnLCB0cnVlKTsKCQkJcmV0dXJuICRyZXN1bHQ7CgkJfQoJfQoKCgkvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJU2VhcmNoUmVJbmRleCgkbW9kdWxlKQoJLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KCXB1YmxpYyBmdW5jdGlvbiBTZWFyY2hSZUluZGV4KCYkbW9kdWxlKQoJewoJCSRkYiA9JiAkdGhpcy0+R2V0RGIoKTsKCQkKCQkkcXVlcnkgPSAiU0VMRUNUIHVwbG9hZF9pZCwgdXBsb2FkX25hbWUsIHVwbG9hZF9hdXRob3IsIHVwbG9hZF9zdW1tYXJ5LCB1cGxvYWRfZGVzY3JpcHRpb24sIHVwbG9hZF9pcCwgdXBsb2FkX2RhdGUgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHMgQSwgIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX2NhdGVnb3JpZXMgQiBXSEVSRSBBLnVwbG9hZF9jYXRlZ29yeV9pZCA9IEIudXBsb2FkX2NhdGVnb3J5X2lkIEFORCBCLnVwbG9hZF9jYXRlZ29yeV9saXN0YWJsZSA9ID8iOwoJCSRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHF1ZXJ5LCBhcnJheSggMSApICk7CgkJaWYoICEkZGJyZXN1bHQgKQoJCXsKCQkJZGllKCAkZGItPkVycm9yTXNnKCkgKTsKCQl9CgkJd2hpbGUoICRyb3cgPSAkZGJyZXN1bHQtPkZldGNoUm93KCkgKQoJCXsKCQkJJHN0ciA9ICRyb3dbJ3VwbG9hZF9uYW1lJ10uJyAnLiRyb3dbJ3VwbG9hZF9hdXRob3InXS4nICcuCgkJCSRyb3dbJ3VwbG9hZF9zdW1tYXJ5J10uJyAnLiRyb3dbJ3VwbG9hZF9kZXNjcmlwdGlvbiddOwoJCQkkbW9kdWxlLT5BZGRXb3JkcyggJHRoaXMtPkdldE5hbWUoKSwgJHJvd1sndXBsb2FkX2lkJ10sICd1cGxvYWQnLCAkc3RyICk7CgkJfQoJfQoKICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICBCRUdJTiBPRiBVSSBTVVBQT1JUIEZVTkNUSU9OUwogICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwoKCS8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCglfQWRtaW5Eb0RlbGV0ZUNhdGVnb3J5KCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCApCglOT1QgUEFSVCBPRiBUSEUgTU9EVUxFIEFQSQoJCglBIGZ1bmN0aW9uIHRoYXQgYWN0dWFsbHkgZG9lcyB0aGUgZGVsZXRpb24gb2YgdGhlIGNhdGVnb3J5CglnaXZlbiB0aGUgY2F0ZWdvcnkgaWQgaW4gdGhlIHBhcmFtZXRlcnMsIGFuZCBhIGZldyBvdGhlcgoJbmVjZXNzYXJ5IGRldGFpbHMuICBUaGlzIGZ1bmN0aW9uIGFsc28gd2lsbCBvcHRpb25hbGx5CglyZW1vdmUgYWxsIGZpbGVzIGZyb20gdGhlIGRpcmVjdG9yeS4uLiAKCS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCglwcm90ZWN0ZWQgZnVuY3Rpb24gX0FkbWluRG9EZWxldGVDYXRlZ29yeSAoJGNhdGVnb3J5X2lkKQoJewoJCVVwbG9hZHM6OmxvYWRfYWRtaW4oKTsKCQlyZXR1cm4gX3VwbG9hZHNfQWRtaW5Eb0RlbGV0ZUNhdGVnb3J5KCR0aGlzLCRjYXRlZ29yeV9pZCk7Cgl9CgoKCS8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCglfQWRtaW5Eb0RlbGV0ZVVwbG9hZCggJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQgKQoJTk9UIFBBUlQgT0YgVEhFIE1PRFVMRSBBUEkKCQoJQWN0dWFsbHkgZGVsZXRlIGFuIHVwbG9hZCBmcm9tIHRoZSBmaWxlc3lzdGVtIGFuZAoJZnJvbSB0aGUgZGF0YWJhc2UuCgktLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwoJcHJvdGVjdGVkIGZ1bmN0aW9uIF9BZG1pbkRvRGVsZXRlVXBsb2FkICgkdXBsb2FkX2lkLCRkZWxldGVfZmlsZSA9IGZhbHNlKQoJewoJCVVwbG9hZHM6OmxvYWRfYWRtaW4oKTsKCQlyZXR1cm4gX3VwbG9hZHNfQWRtaW5Eb0RlbGV0ZVVwbG9hZCgkdGhpcywkdXBsb2FkX2lkLCRkZWxldGVfZmlsZSk7CiAgfQoKCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgX0Rpc3BsYXlFcnJvclBhZ2UoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsICRtZXNzYWdlKQogICBOT1QgUEFSVCBPRiBUSEUgTU9EVUxFIEFQSQogICAKICAgVGhpcyBpcyBhIG1ldGhvZCB0byBkaXNwbGF5CiAgIGVycm9yIGluZm9ybWF0aW9uIG9uIHRoZSBhZG1pbiBzaWRlLgogICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwogIHB1YmxpYyBmdW5jdGlvbiBfRGlzcGxheUVycm9yUGFnZSAoJGlkLCAmJHBhcmFtcywgJHJldHVybmlkLCAkbWVzc2FnZSA9ICcnKQogIHsKICAgICR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ3RpdGxlX2Vycm9yJywgJHRoaXMtPkxhbmcgKCdlcnJvcicpKTsKICAgIGlmICgkbWVzc2FnZSAhPSAnJykKICAgICAgewoJCQkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgnbWVzc2FnZScsICRtZXNzYWdlKTsKICAgICAgfQogICAgaWYoICRyZXR1cm5pZCA9PSAnJyApCiAgICAgIHsKCQkJCSR0aGlzLT5zbWFydHktPmFzc2lnbignbGluaycsCgkJCQkJCQkJCQkJCQkJCSR0aGlzLT5DcmVhdGVMaW5rKCRpZCwnZGVmYXVsdGFkbWluJywkcmV0dXJuaWQsCgkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCSR0aGlzLT5MYW5nKCdyZXR1cm50b21vZHVsZScpKSk7CiAgICAgIH0KICAgIAogICAgLy8gRGlzcGxheSB0aGUgcG9wdWxhdGVkIHRlbXBsYXRlCiAgICBlY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUgKCdlcnJvci50cGwnKTsKICB9CgoKICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICBHZXRVcGxvYWREZXRhaWxzKCRpZCwkcmV0dXJuaWQpCiAgIAogICBSZXR1cm4gdGhlIGRldGFpbHMgYWJvdXQgYSBzcGVjaWZpYyB1cGxvYWQKICAgdXBsb2FkX2lkCiAgIHVwbG9hZF9jYXRlZ29yeV9pZAogICB1cGxvYWRfbmFtZQogICB1cGxvYWRfYXV0aG9yCiAgIHVwbG9hZF9zdW1tYXJ5CiAgIHVwbG9hZF9kZXNjcmlwdGlvbgogICB1cGxvYWRfaXAKICAgdXBsb2FkX3NpemUKICAgdXBsb2FkX2RhdGUKICAgdXJsCiAgIGFic3VybAogICBsaW5rCiAgIG9yIGFuIGFycmF5IChGQUxTRSxFUlJPUk1TRykKICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KICBwdWJsaWMgZnVuY3Rpb24gR2V0VXBsb2FkRGV0YWlscyggJGlkLCAkcmV0dXJuaWQgPSAnJyApCiAgewoJCWdsb2JhbCAkZ0NtczsKICAgICRkYiA9JiAkdGhpcy0+R2V0RGIoKTsKICAgICRxID0gIlNFTEVDVCAqIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzCiAgICAgICAgICBXSEVSRSB1cGxvYWRfaWQgPSA/IjsKCQkkcm93ID0gJGRiLT5HZXRSb3coJHEsIGFycmF5KCRpZCkgKTsKICAgIGlmKCAhJHJvdyApCiAgICAgIHsKCQkJCXJldHVybiBhcnJheShGQUxTRSwgJGRiLT5FcnJvck1zZygpKTsKICAgICAgfQoKICAgIC8vIGhhdmUgZGV0YWlscyBmcm9tIHRoZSB0YWJsZSwgbm93CiAgICAvLyBoYXZlIHRvIGFkZCBzb21ldGhpbmcgc3VjaCB0aGF0IGEgbGluayBjYW4gYmUgZ2VuZXJhdGVkCiAgICAvLyB0aGF0IHdpbGwgc3RpbGwgY291bnQgdGhlIG51bWJlciBvZiBkb3dubG9hZHMsIGV0YwogICAgJHJvd1sndXJsJ10gPSAkdGhpcy0+Q3JlYXRlTGluayAoJGlkLCAnZ2V0ZmlsZScsICRyZXR1cm5pZCwgJycsCgkJCQkJCQkJCQkJCQkJCQkJCSBhcnJheSAoJ3VwbG9hZF9pZCcgPT4gJHJvd1sndXBsb2FkX2lkJ10pLCAKCQkJCQkJCQkJCQkJCQkJCQkJICcnLCB0cnVlLCB0cnVlLCAnJywgZmFsc2UsCgkJCQkJCQkJCQkJCQkJCQkJCSAkdGhpcy0+X2dldEZpbGVVUkwoJHJvd1sndXBsb2FkX2lkJ10sJHJvd1sndXBsb2FkX25hbWUnXSkpOwoJCSRyb3dbJ2Rvd25sb2FkX3VybCddID0gJHJvd1sndXJsJ107CgogICAgJHJvd1snbGluayddID0gJHRoaXMtPkNyZWF0ZUxpbmsgKCRpZCwgJ2dldGZpbGUnLCAkcmV0dXJuaWQsICRyb3dbJ3VwbG9hZF9uYW1lJ10sCgkJCQkJCQkJCQkJCQkJCQkJCQlhcnJheSAoJ3VwbG9hZF9pZCcgPT4gJHJvd1sndXBsb2FkX2lkJ10pLAoJCQkJCQkJCQkJCQkJCQkJCQkJJycsIGZhbHNlLCB0cnVlLCAnJywgZmFsc2UsCgkJCQkJCQkJCQkJCQkJCQkJCQkkdGhpcy0+X2dldEZpbGVVUkwoJHJvd1sndXBsb2FkX2lkJ10sJHJvd1sndXBsb2FkX25hbWUnXSkpOwoJCSRjb25maWcgPSYgJGdDbXMtPkdldENvbmZpZygpOwogICAgJHJvd1snYWJzdXJsJ10gPSAkY29uZmlnWyd1cGxvYWRzX3VybCddLiIvIi4KICAgICAgJHRoaXMtPmdldENhdGVnb3J5UGF0aEZyb21GaWxlSUQoICRyb3dbJ3VwbG9hZF9pZCddICkuIi8iLgogICAgICAkcm93Wyd1cGxvYWRfbmFtZSddOwogICAgcmV0dXJuICRyb3c7CiAgfQoKCgogIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgIEdldENhdGVnb3J5RmlsZXMoKQogICBOT1QgUEFSVCBPRiBUSEUgTU9EVUxFIEFQSQoKCSBBIG1ldGhvZCB0byBnZXQgYSBsaXN0IG9mIHRoZSBmaWxlIG5hbWVzIGFuZCBmaWxlIGlkJ3MgZ2l2ZW4KCSBhIGNhdGVnb3J5IGlkLgogICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwogIHB1YmxpYyBmdW5jdGlvbiBHZXRDYXRlZ29yeUZpbGVzKCRjYXRlZ29yeV9pZCkKICB7CgkJZ2xvYmFsICRnQ21zOwoJCSRkYiA9JiAkZ0Ntcy0+R2V0RGIoKTsKCgkJJHF1ZXJ5ID0gJ1NFTEVDVCB1cGxvYWRfaWQsdXBsb2FkX25hbWUgCiAgICAgICAgICAgICAgICBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2FkcyBVCiAgICAgICAgICAgICAgIFdIRVJFIHVwbG9hZF9jYXRlZ29yeV9pZCA9ID8nOwoJCSR0bXAgPSAkZGItPkdldEFycmF5KCRxdWVyeSxhcnJheSgkY2F0ZWdvcnlfaWQpKTsKCQlpZiggISR0bXAgKSByZXR1cm4gRkFMU0U7CgoJCSRkYXRhID0gYXJyYXkoKTsKCQlmb3IoICRpID0gMDsgJGkgPCBjb3VudCgkdG1wKTsgJGkrKyApCgkJCXsKCQkJCSRkYXRhWyR0bXBbJGldWyd1cGxvYWRfaWQnXV0gPSAkdG1wWyRpXVsndXBsb2FkX25hbWUnXTsKCQkJfQoJCXJldHVybiAkZGF0YTsKICB9CgkgCiAgCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgQXR0ZW1wdFVwbG9hZCgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwgJG1lc3NhZ2UpCiAgIE5PVCBQQVJUIE9GIFRIRSBNT0RVTEUgQVBJCiAgIAogICBUaGlzIGlzIGEgbWV0aG9kIHRvIGFjdHVhbGx5IHRyeSB1cGxvYWRpbmcgdGhlIGZpbGUKICAgZW5zdXJpbmcgaXQgaXMgdmFsaWQsIGFuZCB0aGVuIGFkZGluZyB0aGUgc3R1ZmYgdG8KICAgdGhlIGRhdGFiYXNlLgoKICAgUmV0dXJucyBhbiBhcnJheSwgZmlyc3QgZWxlbWVudCBpcyBzdWNjZXNzICh0cnVlL2ZhbHNlKQogICBzZWNvbmQgZWxlbWVudCBpcyAoaWYgZmlyc3QgZWxlbWVudCBpcyBmYWxzZSkgYW4gZXJyb3IgbWVzc2FnZSwKICAgb3IgdGhlIGlkIG9mIHRoZSB1cGxvYWRlZCBmaWxlLgogICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwogIHByb3RlY3RlZCBmdW5jdGlvbiBBdHRlbXB0VXBsb2FkICgkaWQsICYkcGFyYW1zLCAkcmV0dXJuaWQpCiAgewoJCVVwbG9hZHM6OmxvYWRfY29tbW9uKCk7CgkJcmV0dXJuIF91cGxvYWRzX0F0dGVtcHRVcGxvYWQoJHRoaXMsJGlkLCRwYXJhbXMsJHJldHVybmlkKTsKICB9CgoKICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICBfaGFuZGxlVXBsb2FkKCAkZGVzdERpciAgJGZpZWxkTmFtZSwgJG5hbWVDYWxsYmFjICkKCSBwcml2YXRlCiAgIE5PVCBQQVJUIE9GIFRIRSBNT0RVTEUgQVBJCgogICBUaGlzIG1ldGhvZCBoYW5kbGVzIHZhbGlkYXRpbmcgdGhlIHVwbG9hZCBwYXJhbWV0ZXJzLCBhbmQgY29weWluZwogICB0aGUgZmlsZSBmcm9tIGl0J3MgdGVtcG9yYXJ5IGxvY2F0aW9uIHRvIGl0J3MgcGVybWFuZW50IGxvY2F0aW9uLgogICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwogIHB1YmxpYyBmdW5jdGlvbiBfaGFuZGxlVXBsb2FkICgkZGVzdERpciwKCQkJCQkJCQkJCQkJCSRmaWVsZE5hbWUgPSAnX3VwbG9hZCcsICRuYW1lQ2FsbGJhY2sgPSBmYWxzZSwKCQkJCQkJCQkJCQkJCSRkZXN0bmFtZSA9ICcnLCRlbmZvcmNlZXh0ZW5zaW9uID0gdHJ1ZSwKCQkJCQkJCQkJCQkJCSRyZXBsYWNlX2V4aXN0aW5nID0gZmFsc2UsCgkJCQkJCQkJCQkJCQkkZmlsZW5hbWVQcmVmaXggPSAnJykKICB7CgkJVXBsb2Fkczo6bG9hZF9jb21tb24oKTsKCQlyZXR1cm4gX3VwbG9hZHNfaGFuZGxlVXBsb2FkKCR0aGlzLCRkZXN0RGlyLAoJCQkJCQkJCQkJCQkJCQkJICRmaWVsZE5hbWUsJG5hbWVDYWxsYmFjaywKCQkJCQkJCQkJCQkJCQkJCSAkZGVzdG5hbWUsCgkJCQkJCQkJCQkJCQkJCQkgJGVuZm9yY2VleHRlbnNpb24sCgkJCQkJCQkJCQkJCQkJCQkgJHJlcGxhY2VfZXhpc3RpbmcsCgkJCQkJCQkJCQkJCQkJCQkgJGZpbGVuYW1lUHJlZml4KTsKICB9CgoKICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICBTY2FuRGlyZWN0b3J5KCRjYXRlZ29yeV9pZCwgJGRpciApCiAgIE5PVCBQQVJUIE9GIFRIRSBNT0RVTEUgQVBJCgogICBBIHV0aWxpdHkgdG8gaW5zZXJ0IHJlY29yZHMgaW50byB0aGUgdXBsb2FkcyBkYXRhYmFzZQogICBmb3IgYWxsIGZpbGVzIHRoYXQgY3VycmVudGx5IGV4aXN0IGluIGEgZGlyZWN0b3J5LgogICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwogIHByb3RlY3RlZCBmdW5jdGlvbiBTY2FuRGlyZWN0b3J5KCRjYXRlZ29yeV9pZCwgJGRpciApCiAgewogICAgJGRiID0mICR0aGlzLT5HZXREYigpOwogICAgJGRlc2MgPSAiUHJlLWV4aXN0aW5nIGZpbGUiOwoJCSRub3cgPSAkZGItPkRiVGltZVN0YW1wKHRpbWUoKSk7CgogICAgJGZpbGVzID0gJHRoaXMtPl9zY2FuZGlyKCAkZGlyICk7CiAgICBpZiggJHRoaXMtPkdldFByZWZlcmVuY2UoJ2NyZWF0ZV9kdW1teV9pbmRleF9odG1sJykgKQogICAgICB7CgkJCQlAdG91Y2goICRkaXIuRElSRUNUT1JZX1NFUEFSQVRPUi4iaW5kZXguaHRtbCIgKTsKICAgICAgfQogICAgaWYoICRmaWxlcyApCiAgICAgIHsKCQkJCWZvcmVhY2goICRmaWxlcyBhcyAkZmlsZSApIHsKCQkJCQkvLyBpZ25vcmUgZGlyZWN0b3JpZXMgLiBhbmQgLi4KCQkJCQlpZiggJGZpbGUgPT0gIi4iIHx8ICRmaWxlID09ICIuLiIgKSB7CgkJCQkJCWNvbnRpbnVlOwoJCQkJCX0KCgkJCQkJLy8gaWdub3JlIGFueSBkaXJlY3RvcmllcwoJCQkJCSRzcmNwID0gJGRpci5ESVJFQ1RPUllfU0VQQVJBVE9SLiRmaWxlOwoJCQkJCWlmKCBpc19kaXIoICRzcmNwICkgKSB7CgkJCQkJCWNvbnRpbnVlOwoJCQkJCX0KCgkJCQkJLy8gaWdub3JlIHRodW1ibmFpbCBmaWxlcwoJCQkJCWlmKCBzdGFydHN3aXRoKCRmaWxlLCd0aHVtYl8nKSApIHsKCQkJCQkJY29udGludWU7CgkJCQkJfQoKCQkJCQkvLyBnb3QgdGhlIGZpbGUsIG5vdyBuZWVkIGl0J3Mgc2l6ZQoJCQkJCSRzaXplID0gZmlsZXNpemUoJHNyY3ApOwoJICAKCQkJCQkvLyBub3cgd2UgbmVlZCB0byBtYXliZSByZW5hbWUgdGhlIGZpbGUuLi4KCQkJCQkvLyBjdXogaXQgbWF5IGhhdmUgc3BhY2VzIGluIGl0LCBhbmQgaHR0cCBtYXkgbm90IGxpa2UgdGhhdAoJCQkJCS8vIHdlIHVzZSBhbiAob3B0aW9uYWwpIGNvdW50ZXIgdG8gbWFrZSBzdXJlIHRoYXQgd2UKCQkJCQkvLyBjYW4gaGF2ZSBudW1lcm91cyBmaWxlcyB3aXRoIHNpbWlsYXIgbmFtZXMKCQkJCQkkcG9zdGZpeCA9ICIiOwoJCQkJCXdoaWxlKCAkcG9zdGZpeCA8IDEwMCApCgkJCQkJCXsKCQkJCQkJCSRkZXN0ZmlsZSA9IHN0cl9yZXBsYWNlIChhcnJheSAoJyAnLCAnJTIwJyksIGFycmF5ICgnXycsICdfJyksICRmaWxlICk7CgkJCQkJCQlpZiggJHBvc3RmaXggIT0gIiIgKQoJCQkJCQkJCXsKCQkJCQkJCQkJJGRlc3RmaWxlIC49ICJfIiAuICRwb3N0Zml4OwoJCQkJCQkJCX0KCSAgICAgIAoJCQkJCQkJaWYoICRkZXN0ZmlsZSAhPSAkZmlsZSApCgkJCQkJCQkJewoJCQkJCQkJCQkkZGVzdHAgPSAkZGlyLkRJUkVDVE9SWV9TRVBBUkFUT1IuJGRlc3RmaWxlOwoJCSAgCgkJCQkJCQkJCS8vIHllcCwgd2UgZ290dGEgcmVuYW1lIGl0CgkJCQkJCQkJCS8vIGJ1dCBtYWtlIHN1cmUgdGhlIGZpbGUgZG9lc24ndCBhbHJlYWR5IGV4aXN0IGZpcnN0CgkJCQkJCQkJCWlmKCBmaWxlX2V4aXN0cyggJGRlc3RwICkgKQoJCQkJCQkJCQkJewoJCQkJCQkJCQkJCS8vIHVoLW9oIGl0IGV4aXN0cwoJCQkJCQkJCQkJCS8vIGluY3JlbWVudCB0aGUgcG9zdGZpeAoJCQkJCQkJCQkJCWlmKCAkcG9zdGZpeCA9PSAiIiApCgkJCQkJCQkJCQkJCXsKCQkJCQkJCQkJCQkJCSRwb3N0Zml4ID0gMTsKCQkJCQkJCQkJCQkJfQoJCQkJCQkJCQkJCWVsc2UKCQkJCQkJCQkJCQkJewoJCQkJCQkJCQkJCQkJJHBvc3RmaXgrKzsKCQkJCQkJCQkJCQkJfQoJCQkJCQkJCQkJCWNvbnRpbnVlOwoJCQkJCQkJCQkJfQoJCSAgCgkJCQkJCQkJCXJlbmFtZSggJHNyY3AsICRkZXN0cCApOwoJCQkJCQkJCQkkZmlsZSA9ICRkZXN0ZmlsZTsKCQkJCQkJCQkJJHNyY3AgPSAkZGVzdHA7CgkJCQkJCQkJfQoJICAgICAgCgkJCQkJCQlicmVhazsgLy8gZ2V0IG91dCBvZiB0aGlzIHdoaWxlIHN0YXRlbWVudAoJCQkJCQl9CgkgIAoJCQkJCWlmKCAkcG9zdGZpeCA+PSAxMDAgKQoJCQkJCQl7CgkJCQkJCQkvLyBmb3Igc29tZSBvZGQgcmVhc29uLCB3ZSBjb3VsZCBub3QgZmluZCBhIHJlYXNvbmFibGUKCQkJCQkJCS8vIGZpbGVuYW1lIHRvIHJlbmFtZSB0by4KCQkJCQkJCS8vIHdlJ2xsIGp1c3Qgc2tpcCB0aGlzIGZpbGUKCQkJCQkJCWNvbnRpbnVlOwoJCQkJCQl9CgoJCQkJCS8vIG5leHQgY2hlY2sgdG8gbWFrZSBzdXJlIGl0cyBub3QgYWxyZWFkeSBpbiB0aGUgZGF0YWJhc2UKCQkJCQkkcSA9ICJTRUxFQ1QgdXBsb2FkX2lkLHVwbG9hZF90aHVtYm5haWwgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHMgV0hFUkUKCQkJCQkJdXBsb2FkX25hbWUgPSA/IEFORCB1cGxvYWRfY2F0ZWdvcnlfaWQgPSA/IjsKCQkJCQkkZmlsZWlkID0gJyc7CgkJCQkJJHRodW1iX25hbWUgPSAnJzsKCQkJCQkkdG1wID0gJGRiLT5HZXRSb3coICRxLCBhcnJheSggJGZpbGUsICRjYXRlZ29yeV9pZCkgKTsKCQkJCQlpZiggJHRtcCApCgkJCQkJCXsKCQkJCQkJCS8vIHdlIGFscmVhZHkga25vdyBhYm91dCB0aGlzIG9uZQoJCQkJCQkJJGZpbGVpZCA9ICR0bXBbJ3VwbG9hZF9pZCddOwoJCQkJCQkJJHRodW1iX25hbWUgPSAkdG1wWyd1cGxvYWRfdGh1bWJuYWlsJ107CgkJCQkJCX0KCQkJCQllbHNlIAoJCQkJCQl7CgkJCQkJCQkvLyBpdCdzIGEgbmV3IGZpbGUKCQkJCQkJCSRxdWVyeSA9ICJJTlNFUlQgSU5UTyAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHMgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAodXBsb2FkX2lkLCB1cGxvYWRfY2F0ZWdvcnlfaWQsIHVwbG9hZF9uYW1lLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVwbG9hZF9hdXRob3IsIHVwbG9hZF9zdW1tYXJ5LCB1cGxvYWRfZGVzY3JpcHRpb24sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXBsb2FkX2lwLCB1cGxvYWRfc2l6ZSwgdXBsb2FkX2RhdGUpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWQUxVRVMgKD8sPyw/LD8sPyw/LD8sPywkbm93KSI7CgkJCQkJCQkkdXNlcmlkID0gZ2V0X3VzZXJpZChmYWxzZSk7CgkJCQkJCQlpZiggISR1c2VyaWQgKQoJCQkJCQkJCXsKCQkJCQkJCQkJLy8gd2UgZG9uJ3Qga25vdyB0aGUgdXNlci4KCQkJCQkJCQkJJHVzZXJpZCA9IDA7CgkJCQkJCQkJfQoJCQkJCQkJJHVzZXJuYW1lID0gJF9TRVNTSU9OWyJjbXNfYWRtaW5fdXNlcm5hbWUiXTsKCQkJCQkJCSRmaWxlaWQgPSAkZGItPkdlbklEIChjbXNfZGJfcHJlZml4ICgpLiJtb2R1bGVfdXBsb2Fkc19zZXEiKTsKCQkJCQkJCSRwYXJtcyA9IGFycmF5KCAkZmlsZWlkLCAKCQkJCQkJCQkJCQkJCQkJJGNhdGVnb3J5X2lkLAoJCQkJCQkJCQkJCQkJCQkkZmlsZSwgCgkJCQkJCQkJCQkJCQkJCSR1c2VybmFtZSwgCgkJCQkJCQkJCQkJCQkJCSRkZXNjLCAKCQkJCQkJCQkJCQkJCQkJIiIsIAoJCQkJCQkJCQkJCQkJCQkibG9jYWxob3N0IiwgCgkJCQkJCQkJCQkJCQkJCSRzaXplICk7CgkJCQkJCQkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxdWVyeSwgJHBhcm1zICk7CgkJCQkJCQlpZiggISRkYnJlc3VsdCApIAoJCQkJCQkJCXsKCQkJCQkJCQkJZWNobyAiREVCVUc6ICIuJGRiLT5zcWwuIjxici8+IjsKCQkJCQkJCQkJZWNobyAiRVJST1I6ICIuJGRiLT5FcnJvck1zZygpLiI8YnIvPiI7CgkJCQkJCQkJCWRpZSgpOwoJCQkJCQkJCQlyZXR1cm47CgkJCQkJCQkJfQoJCQkJCQl9CgoJCQkJCS8vIGFuZCBtYXliZSwganVzdCBtYXliZSBjcmVhdGUgYSB0aHVtYm5haWwgZm9yIGl0CgkJCQkJaWYoIGVtcHR5KCR0aHVtYl9uYW1lKSApCgkJCQkJCXsKCQkJCQkJCSR0aHVtYl9uYW1lID0gJ3RodW1iXycuJGZpbGU7CgkJCQkJCX0KCgkJCQkJLy8gc2VlIGlmIHdlJ3JlIGRvaW5nIHRodW1ibmFpbGluZyBhdCBhbGwKCQkJCQlpZiggJHRoaXMtPkdldFByZWZlcmVuY2UoJ2F1dG90aHVtYm5haWxfZXh0ZW5zaW9ucycpICE9ICcnICYmCgkJCQkJCQkkdGhpcy0+R2V0UHJlZmVyZW5jZSgnYXV0b3RodW1ibmFpbF9zaXplJykgIT0gJycgKQoJCQkJCQl7CgkJCQkJCQkvLyBzZWUgaWYgdGhpcyBmaWxlIGlzIHRodW1ibmFpbGFibGUKCQkJCQkJCSRmaWxlZXh0ZW5zaW9uID0gc3RydG9sb3dlcihzdHJyY2hyKCRmaWxlLCcuJykpOwoJCQkJCQkJJHRodW1iX2V4dF9hcnIgPSBleHBsb2RlKCIsIiwKCQkJCQkJCQkJCQkJCQkJCQkJCSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnYXV0b3RodW1ibmFpbF9leHRlbnNpb25zJykpOwoKCQkJCQkJCSRpc19pbWFnZSA9IGZhbHNlOwoJCQkJCQkJZm9yZWFjaCggJHRodW1iX2V4dF9hcnIgYXMgJHRodW1iX2V4dCApCgkJCQkJCQkJewoJCQkJCQkJCQlpZiggIi4iLiR0aHVtYl9leHQgPT0gJGZpbGVleHRlbnNpb24gKQoJCQkJCQkJCQkJewoJCQkJCQkJCQkJCSRpc19pbWFnZSA9IHRydWU7CgkJCQkJCQkJCQkJYnJlYWs7CgkJCQkJCQkJCQl9CgkJCQkJCQkJfQoKCQkJCQkJCWlmKCAkaXNfaW1hZ2UgKQoJCQkJCQkJCXsKCQkJCQkJCQkJLy8geXVwLCB3ZSBjYW4gdGh1bWJuYWlsIHRoaXMgdGhpbmcuCgkJCQkJCQkJCSRkZXN0bmFtZSA9ICRkaXIuRElSRUNUT1JZX1NFUEFSQVRPUi4kdGh1bWJfbmFtZTsKCQkJCQkJCQkJJGNyZWF0ZWQgPSBmYWxzZTsKCQkJCQkJCQkJaWYoICFmaWxlX2V4aXN0cyggJGRlc3RuYW1lICkgKQoJCQkJCQkJCQkJewoJCQkJCQkJCQkJCSR0aGlzLT5pbWFnZVRyYW5zZm9ybSgkc3JjcCwkZGVzdG5hbWUsCgkJCQkJCQkJCQkJCQkJCQkJCQkJCQkkdGhpcy0+R2V0UHJlZmVyZW5jZSgnYXV0b3RodW1ibmFpbF9zaXplJykpOwoJCQkJCQkJCQkJCWlmKCBmaWxlX2V4aXN0cyggJGRlc3RuYW1lICkgKQoJCQkJCQkJCQkJCQl7CgkJCQkJCQkJCQkJCQkkY3JlYXRlZCA9IHRydWU7CgkJCQkJCQkJCQkJCX0KCQkJCQkJCQkJCX0KCgkJCQkJCQkJCWlmKCAkY3JlYXRlZCApCgkJCQkJCQkJCQl7CgkJCQkJCQkJCQkJLy8gd29vdCwgd2UgY3JlYXRlZCBhIG5ldyB0aHVtYm5haWwKCQkJCQkJCQkJCQkvLyBub3cgdXBkYXRlIHRoZSBkYXRhYmFzZQoJCQkJCQkJCQkJCSRxdWVyeSA9ICdVUERBVEUgJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzIAoJCQkJCQkJCQkJCQlTRVQgdXBsb2FkX3RodW1ibmFpbCA9ID8KCQkJCQkJCQkJCQkJV0hFUkUgdXBsb2FkX2lkID0gPyc7CgkJCQkJCQkJCQkJJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkdGh1bWJfbmFtZSwkZmlsZWlkKSk7CgkJCQkJCQkJCQl9CgkJCQkJCQkJfQoJCQkJCQl9CgkgIAoJCQkJfSAvLyBmb3JlYWNoCiAgICAgIH0gLy8gaWYKICB9CgoKICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICBTbWFydFNjYW5EaXJlY3RvcnkoJGNhdGVnb3J5X2lkLCAkZGlyICkKICAgTk9UIFBBUlQgT0YgVEhFIE1PRFVMRSBBUEkKCiAgIEEgbWV0aG9kIHRvIHBlcmZvcm0gYSBzY2FuIGRpcmVjdG9yeSBpZiB0aGUgY291bnQgb2YgdGhlCiAgIGZpbGVzIGluIHRoZSBkaXJlY3RvcnkgZG9lcyBub3QgbWF0Y2ggdGhlIGNvdW50IG9mIHRoZSBmaWxlcwogICBpbiB0aGUgZGF0YWJhc2UKICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KICBwcm90ZWN0ZWQgZnVuY3Rpb24gU21hcnRTY2FuRGlyZWN0b3J5KCRjYXRlZ29yeV9pZCwgJGRpciApCiAgewogICAgJGRiID0mICR0aGlzLT5HZXREYigpOwogICAgJHF1ZXJ5ID0gIlNFTEVDVCBDT1VOVCgqKSBBUyBjb3VudCBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2FkcwogICAgICAgICAgICAgIFdIRVJFIHVwbG9hZF9jYXRlZ29yeV9pZCA9ID8iOwogICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcXVlcnksIGFycmF5KCAkY2F0ZWdvcnlfaWQgKSApOwogICAgaWYoICEkZGJyZXN1bHQgKQogICAgICB7CgkJCQllY2hvICRkYi0+RXJyb3JNc2coKS4iPGJyLz4iOwoJCQkJcmV0dXJuOwogICAgICB9CiAgICAkcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdygpOwogICAgJHJvd2NvdW50ID0gJHJvd1snY291bnQnXTsKCiAgICAvLyBnZXQgdGhlIG51bWJlciBvZiBmaWxlcwogICAgJGZpbGVzID0gJHRoaXMtPl9zY2FuZGlyKCAkZGlyICk7CiAgICAkY291bnQgPSAwOwogICAgaWYoICRmaWxlcyApCiAgICAgIHsKCQkJCWZvcmVhY2goICRmaWxlcyBhcyAkZmlsZSApCgkJCQkJewoJCQkJCQkvLyBpZ25vcmUgZGlyZWN0b3JpZXMgLiBhbmQgLi4KCQkJCQkJaWYoICRmaWxlID09ICIuIiB8fCAkZmlsZSA9PSAiLi4iICkgewoJCQkJCQkJY29udGludWU7CgkJCQkJCX0KCSAgICAKCQkJCQkJLy8gaWdub3JlIGFueSBkaXJlY3RvcmllcwoJCQkJCQkkc3JjcCA9ICRkaXIuRElSRUNUT1JZX1NFUEFSQVRPUi4kZmlsZTsKCQkJCQkJaWYoIGlzX2RpciggJHNyY3AgKSApIHsKCQkJCQkJCWNvbnRpbnVlOwoJCQkJCQl9CgkgICAgCgkJCQkJCS8vIGlnbm9yZSB0aHVtYm5haWxzCgkJCQkJCWlmKCBzdGFydHN3aXRoKCRzcmNwLCd0aHVtYl8nKSApIHsKCQkJCQkJCWNvbnRpbnVlOwoJCQkJCQl9CgkJCQkJCQoJCQkJCQkkY291bnQrKzsKCQkJCQl9IC8vIGZvcmVhY2gKICAgICAgfQoKICAgIGlmKCAkY291bnQgIT0gJHJvd2NvdW50ICkKICAgICAgewoJCQkJJHRoaXMtPlNjYW5EaXJlY3RvcnkoICRjYXRlZ29yeV9pZCwgJGRpciApOwogICAgICB9CiAgfQoKCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgX0luc2VydERlZmF1bHRGaWxlVHlwZXMoKQogICBOT1QgUEFSVCBPRiBUSEUgTU9EVUxFIEFQSQogICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwogIHByb3RlY3RlZCBmdW5jdGlvbiBfSW5zZXJ0RGVmYXVsdEZpbGVUeXBlcygpCiAgewogICAgLy8gZGVmYXVsdCBmaWxlIHR5cGVzCiAgICAkZmlsZXR5cGVzID0gYXJyYXkoKTsKICAgICRmaWxldHlwZXNbXSA9IGFycmF5KCdzb3J0b3JkZXInPT4xLCduYW1lJz0+J1NvdW5kJywKCQkJCQkJCQkJCQkJICdkZXNjcmlwdGlvbic9PidTb3VuZCBmaWxlcycsCgkJCQkJCQkJCQkJCSAnZXh0ZW5zaW9ucyc9PidtcDMsb2dnLHdhdicsCgkJCQkJCQkJCQkJCSAnaW1hZ2UnPT4nc291bmQucG5nJyk7CiAgICAkZmlsZXR5cGVzW10gPSBhcnJheSgnc29ydG9yZGVyJz0+MiwnbmFtZSc9PidJbWFnZScsCgkJCQkJCQkJCQkJCSAnZGVzY3JpcHRpb24nPT4nSW1hZ2UgZmlsZXMnLAoJCQkJCQkJCQkJCQkgJ2V4dGVuc2lvbnMnPT4ncG5nLGdpZixqcGcsanBlZyxibXAnLAoJCQkJCQkJCQkJCQkgJ2ltYWdlJz0+J2ltYWdlLnBuZycpOwogICAgJGZpbGV0eXBlc1tdID0gYXJyYXkoJ3NvcnRvcmRlcic9PjMsJ25hbWUnPT4nUERGIERvY3VtZW50JywKCQkJCQkJCQkJCQkJICdkZXNjcmlwdGlvbic9PidBZG9iZSBBY3JvYmF0IFBERiBEb2N1bWVudCcsCgkJCQkJCQkJCQkJCSAnZXh0ZW5zaW9ucyc9PidwZGYnLAoJCQkJCQkJCQkJCQkgJ2ltYWdlJz0+J3BkZi5wbmcnKTsKICAgICRmaWxldHlwZXNbXSA9IGFycmF5KCdzb3J0b3JkZXInPT40LCduYW1lJz0+J1NwcmVhZHNoZWV0JywKCQkJCQkJCQkJCQkJICdkZXNjcmlwdGlvbic9PidTcHJlYWRzaGVldHMnLAoJCQkJCQkJCQkJCQkgJ2V4dGVuc2lvbnMnPT4neGxzJywKCQkJCQkJCQkJCQkJICdpbWFnZSc9PidzcHJlYWRzaGVldC5wbmcnKTsKICAgICRmaWxldHlwZXNbXSA9IGFycmF5KCdzb3J0b3JkZXInPT41LCduYW1lJz0+J0NvbXByZXNzZWQnLAoJCQkJCQkJCQkJCQkgJ2Rlc2NyaXB0aW9uJz0+J0NvbXByZXNzZWQgZmlsZScsCgkJCQkJCQkJCQkJCSAnZXh0ZW5zaW9ucyc9Pid6aXAsdGFyLGd6LHJhcixhcmonLAoJCQkJCQkJCQkJCQkgJ2ltYWdlJz0+J3ppcC5wbmcnKTsKICAgICRmaWxldHlwZXNbXSA9IGFycmF5KCdzb3J0b3JkZXInPT42LCduYW1lJz0+J1RleHQnLAoJCQkJCQkJCQkJCQkgJ2Rlc2NyaXB0aW9uJz0+J1RleHQgRmlsZScsCgkJCQkJCQkJCQkJCSAnZXh0ZW5zaW9ucyc9Pid0eHQsdGV4dCcsCgkJCQkJCQkJCQkJCSAnaW1hZ2UnPT4ndHh0LnBuZycpOwogICAgJGZpbGV0eXBlc1tdID0gYXJyYXkoJ3NvcnRvcmRlcic9PjcsJ25hbWUnPT4nVmlkZW8nLAoJCQkJCQkJCQkJCQkgJ2Rlc2NyaXB0aW9uJz0+J1ZpZGVvIEZpbGVzJywKCQkJCQkJCQkJCQkJICdleHRlbnNpb25zJz0+J2F2aSxtcGcud212JywKCQkJCQkJCQkJCQkJICdpbWFnZSc9Pid2aWRlby5wbmcnKTsKICAgICRmaWxldHlwZXNbXSA9IGFycmF5KCdzb3J0b3JkZXInPT44LCduYW1lJz0+J1dvcmQgUHJvY2Vzc2luZycsCgkJCQkJCQkJCQkJCSAnZGVzY3JpcHRpb24nPT4nV29yZCBQcm9jZXNzaW5nIEZpbGVzJywKCQkJCQkJCQkJCQkJICdleHRlbnNpb25zJz0+J2RvYycsCgkJCQkJCQkJCQkJCSAnaW1hZ2UnPT4nd29yZHByb2Nlc3NpbmcucG5nJyk7CgogICAgJGRiID0mICR0aGlzLT5HZXREYigpOwogICAgJHEgPSAiSU5TRVJUIElOVE8gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX2ZpbGV0eXBlcwogICAgICAoaWQsc29ydG9yZGVyLG5hbWUsZGVzY3JpcHRpb24sZXh0ZW5zaW9ucyxpbWFnZSkgVkFMVUVTICg/LD8sPyw/LD8sPykiOwogICAgZm9yZWFjaCggJGZpbGV0eXBlcyBhcyAkb25lZmlsZXR5cGUgKQogICAgICB7CgkJCQkkbmV3aWQgPSAkZGItPkdlbklEKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfZmlsZXR5cGVzX3NlcSIpOwoJCQkJJGRicmVzdWx0ID0gICRkYi0+RXhlY3V0ZSggJHEsIAoJCQkJCQkJCQkJCQkJCQkJCSBhcnJheSggJG5ld2lkLCAkb25lZmlsZXR5cGVbJ3NvcnRvcmRlciddLAoJCQkJCQkJCQkJCQkJCQkJCQkJCQkkb25lZmlsZXR5cGVbJ25hbWUnXSwKCQkJCQkJCQkJCQkJCQkJCQkJCQkJJG9uZWZpbGV0eXBlWydkZXNjcmlwdGlvbiddLAoJCQkJCQkJCQkJCQkJCQkJCQkJCQkkb25lZmlsZXR5cGVbJ2V4dGVuc2lvbnMnXSwKCQkJCQkJCQkJCQkJCQkJCQkJCQkJJG9uZWZpbGV0eXBlWydpbWFnZSddICkgKTsKICAgICAgfQogIH0KCgogIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgIF9HZXRGaWxlVHlwZSggJGZpbGVuYW1lICkKCSBwcml2YXRlCiAgIE5PVCBQQVJUIE9GIFRIRSBNT0RVTEUgQVBJCgogICBHaXZlbiBhIGZpbGVuYW1lLCByZXR1cm4gdGhlIGZpbGUgdHlwZSBpbmZvcm1hdGlvbiBmb3IgdGhhdCAKICAgZmlsZS4KICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KICBwdWJsaWMgZnVuY3Rpb24gX0dldEZpbGVUeXBlKCAkZmlsZW5hbWUgKQogIHsKCQlpZiggJHRoaXMtPl9maWxldHlwZXMgPT0gJycgKQoJCQl7CgkJCQkkZGIgPSYgJHRoaXMtPkdldERiKCk7CgkJCQkKCQkJCSR0aGVfZXh0ZW5zaW9uID0gc3RydG9sb3dlcihzdHJyY2hyKCRmaWxlbmFtZSwnLicpKTsKCQkJCSRxID0gIlNFTEVDVCAqIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX2ZpbGV0eXBlcwogICAgICAgICAgICBPUkRFUiBCWSBzb3J0b3JkZXIiOwoJCQkJJHRoaXMtPl9maWxldHlwZXMgPSAkZGItPkdldEFycmF5KCAkcSApOwoJCQl9CgogICAgJHRoZV9leHRlbnNpb24gPSBzdHJ0b2xvd2VyKHN1YnN0cihzdHJ0b2xvd2VyKHN0cnJjaHIoJGZpbGVuYW1lLCcuJykpLDEpKTsKCQlmb3IoICRpID0gMDsgJGkgPCBjb3VudCgkdGhpcy0+X2ZpbGV0eXBlcyk7ICRpKysgKQoJCQl7CgkJCQkkcm93ID0mICR0aGlzLT5fZmlsZXR5cGVzWyRpXTsKCgkJCQkkYXJyID0gZXhwbG9kZSggIiwiLCRyb3dbJ2V4dGVuc2lvbnMnXSApOwoJCQkJZm9yZWFjaCggJGFyciBhcyAkb25lZXh0ICkKCQkJCQl7CgkJCQkJCWlmKCBzdHJ0b2xvd2VyKCAkb25lZXh0ICkgPT0gJHRoZV9leHRlbnNpb24gKSAKCQkJCQkJCXsKCQkJCQkJCQlyZXR1cm4gJHJvdzsKCQkJCQkJCX0KCQkJCQl9CiAgICAgIH0KICAgIHJldHVybiBmYWxzZTsKICB9CgoKICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICBfQ2hlY2tEb3dubG9hZFNlY3VyaXR5CiAgIE5PVCBQQVJUIE9GIFRIRSBNT0RVTEUgQVBJCgogICBHaXZlbiBpbmZvcm1hdGlvbiBhYm91dCBhIGNhdGVnb3J5LCB0ZXN0IHdldGhlciB0aGUgY3VycmVudGx5IGxvZ2dlZAogICBpbiB1c2VyIGlzIGFsbG93ZWQgdG8gdmlldyB0aGUgZmlsZXMgaW4gdGhhdCBjYXRlZ29yeS4KICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KCXB1YmxpYyBmdW5jdGlvbiBfQ2hlY2tEb3dubG9hZFNlY3VyaXR5KCYkY2F0ZWdvcnlfZGV0YWlscykKCXsKCQkkZmV1c2VycyA9JiAkdGhpcy0+R2V0TW9kdWxlSW5zdGFuY2UoJ0Zyb250RW5kVXNlcnMnKTsKCQlpZiggJGZldXNlcnMgJiYgJGNhdGVnb3J5X2RldGFpbHNbJ3VwbG9hZF9jYXRlZ29yeV9ncm91cHMnXSAhPSAnJykKCQkJewoJCQkJJHVpZCA9ICRmZXVzZXJzLT5Mb2dnZWRJbklkKCk7CgkJCQlpZiggJHVpZCA9PSAwIHx8ICR1aWQgPT0gJycgKQoJCQkJCXsKCQkJCQkJLy8gdXNlciBpcyBub3QgbG9nZ2VkIGluCgkJCQkJCXJldHVybiBmYWxzZTsKCQkJCQl9CgkJCQkKCQkJCS8vIG5vdyBjaGVjayBpZiB0aGUgdXNlciBpcyBpbiB0aGUgZ3JvdXAKCQkJCSRwZXJtaXR0ZWRncm91cHMgPSBleHBsb2RlKCcsJywkY2F0ZWdvcnlfZGV0YWlsc1sndXBsb2FkX2NhdGVnb3J5X2dyb3VwcyddKTsKCQkJCSRwZXJtaXR0ZWQgPSBmYWxzZTsKCQkJCXsKCQkJCQkkbWVtYmVyZ3JvdXBzMSA9ICRmZXVzZXJzLT5HZXRNZW1iZXJHcm91cHNBcnJheSgkdWlkKTsKCQkJCQlmb3JlYWNoKCAkbWVtYmVyZ3JvdXBzMSBhcyAkcm93ICkKCQkJCQkJewoJCQkJCQkJZm9yZWFjaCggJHBlcm1pdHRlZGdyb3VwcyBhcyAkcGcgKQoJCQkJCQkJCXsKCQkJCQkJCQkJaWYoICRwZyA9PSAkcm93Wydncm91cGlkJ10gKSAKCQkJCQkJCQkJCXsKCQkJCQkJCQkJCQkkcGVybWl0dGVkID0gdHJ1ZTsKCQkJCQkJCQkJCQlicmVhazsKCQkJCQkJCQkJCX0KCQkJCQkJCQl9CgkJCQkJCQlpZiggJHBlcm1pdHRlZCA9PSB0cnVlICkgYnJlYWs7CgkJCQkJCX0KCQkJCX0KCQkJCQoJCQkJaWYoICRwZXJtaXR0ZWQgPT0gZmFsc2UgKQoJCQkJCXsKCQkJCQkJLy8gYWNjZXNzIGRlbmllZAoJCQkJCQlyZXR1cm4gZmFsc2U7CgkJCQkJfQoJCQl9CgoJCXJldHVybiB0cnVlOwoJfQoKCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgaW1hZ2VUcmFuc2Zvcm0oKQoJIHByaXZhdGUKICAgTk9UIFBBUlQgT0YgVEhFIE1PRFVMRSBBUEkKCgkgSGFuZGxlcyBnZW5lcmF0aW5nIG9mIHRodW1ibmFpbCBpbWFnZXMuCiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCiAgcHVibGljIGZ1bmN0aW9uIGltYWdlVHJhbnNmb3JtKCRzcmNTcGVjLCAkZGVzdFNwZWMsICRzaXplKQogIHsKICAJLy9UT0RPOiBTb21lIEVycm9yIGhhbmRsaW5nIGlmIFRyYW5zZm9ybWF0aW9uIGNsYXNzIGNhbm5vdCBiZSBmb3VuZCAoPykKICAgIHJlcXVpcmVfb25jZShkaXJuYW1lKF9fRklMRV9fKS4nLy4uLy4uL2xpYi9maWxlbWFuYWdlci9JbWFnZU1hbmFnZXIvQ2xhc3Nlcy9UcmFuc2Zvcm0ucGhwJyk7CiAgICAgCgkJZ2xvYmFsICRnQ21zOwoJCSRjb25maWcgPSYgJGdDbXMtPkdldENvbmZpZygpOwogICAgJGl0ID0gbmV3IEltYWdlX1RyYW5zZm9ybTsKICAgICRpbWcgPSAkaXQtPmZhY3RvcnkoJGNvbmZpZ1snaW1hZ2VfbWFuaXB1bGF0aW9uX3Byb2cnXSk7CiAgICAkaW1nLT5sb2FkKCRzcmNTcGVjKTsKICAgIGlmICgkaW1nLT5pbWdfeCA8ICRpbWctPmltZ195KQogICAgICB7CgkJCQkkbG9uZ19heGlzID0gJGltZy0+aW1nX3k7CiAgICAgIH0KICAgIGVsc2UKICAgICAgewoJCQkJJGxvbmdfYXhpcyA9ICRpbWctPmltZ194OwogICAgICB9CiAgICAgCiAgICAkdGhlX2V4dGVuc2lvbiA9IHN1YnN0cihzdHJ0b2xvd2VyKHN0cnJjaHIoJGRlc3RTcGVjLCcuJykpLDEpOwoJCSR0eXBlID0gJ2pwZyc7CgkJc3dpdGNoKCR0aGVfZXh0ZW5zaW9uKQoJCQl7CgkJCWNhc2UgJ2pwZyc6CgkJCWNhc2UgJ2pwZWcnOgoJCQkJJHR5cGUgPSAnanBlZyc7CgkJCQlicmVhazsKCQkJY2FzZSAnYm1wJzoKCQkJCSR0eXBlID0gJ2JtcCc7CgkJCQlicmVhazsKCQkJY2FzZSAncG5nJzoKCQkJCSR0eXBlID0gJ3BuZyc7CgkJCQlicmVhazsKCQkJY2FzZSAnZ2lmJzoKCQkJCSR0eXBlID0gJ2dpZic7CgkJCQlicmVhazsKCQkJfQoKICAgIGlmICgkbG9uZ19heGlzID4gJHNpemUpCiAgICAgIHsKCQkJCSRpbWctPnNjYWxlQnlMZW5ndGgoJHNpemUpOwoJCQkJJGltZy0+c2F2ZSgkZGVzdFNwZWMsICR0eXBlKTsKICAgICAgfQogICAgZWxzZQogICAgICB7CgkJCQkkaW1nLT5zYXZlKCRkZXN0U3BlYywgJHR5cGUpOwogICAgICB9CiAgICAkaW1nLT5mcmVlKCk7CiAgfQoKCgogIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgIF9nZXRGaWxlVVJMCgkgcHJpdmF0ZQogICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwoJcHVibGljIGZ1bmN0aW9uIF9nZXRGaWxlVVJMKCR1cGxvYWRfaWQsJHVwbG9hZF9uYW1lKQoJewoJCSR1cmwgPSBzcHJpbnRmKCd1cGxvYWRzLyVkLyVzJywkdXBsb2FkX2lkLG11bmdlX3N0cmluZ190b191cmwoJHVwbG9hZF9uYW1lKSk7CgkJcmV0dXJuICR1cmw7Cgl9CgoKCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgX2dldFRpbWVMaW1pdGVkVVJMCgkgcHJpdmF0ZQogICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwoJcHVibGljIGZ1bmN0aW9uIF9nZXRUaW1lTGltaXRlZFVSTCgkdXBsb2FkX2tleSkKCXsKCQkkdXJsID0gc3ByaW50ZigndXBsb2Fkcy9saW1pdGVkLyVzJywkdXBsb2FkX2tleSk7CgkJcmV0dXJuICR1cmw7Cgl9CgoKICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICBIYXNDYXBhYmlsaXR5KCkKICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KICBwdWJsaWMgZnVuY3Rpb24gSGFzQ2FwYWJpbGl0eSgkY2FwYWJpbGl0eSwkcGFyYW1zID0gYXJyYXkoKSkKICB7CiAgICBzd2l0Y2goICRjYXBhYmlsaXR5ICkKICAgICAgewogICAgICBjYXNlICdjb250ZW50YmxvY2tzJzoKCQkJCXJldHVybiBUUlVFOwogICAgICBkZWZhdWx0OgoJCQkJcmV0dXJuIEZBTFNFOwogICAgICB9CiAgfQoKCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgR2V0Q29udGVudEJsb2NrSW5wdXQoKQogICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwogIHB1YmxpYyBmdW5jdGlvbiBHZXRDb250ZW50QmxvY2tJbnB1dCgkYmxvY2tOYW1lLCR2YWx1ZSwkcGFyYW1zLCRhZGRpbmcgPSBmYWxzZSkKICB7CgkJaWYoICFpc3NldCgkcGFyYW1zWyd0eXBlJ10pICkKCQkJewoJCQkJJHBhcmFtc1sndHlwZSddID0gJ2NhdGVnb3J5c2VsZWN0JzsKCQkJfQoKICAgIHN3aXRjaCggJHBhcmFtc1sndHlwZSddICkKICAgICAgewogICAgICBjYXNlICdjYXRlZ29yeXNlbGVjdCc6CgkJCQkkdG1wMSA9IGFycmF5KCk7CgkJCQlpZiggaXNzZXQoJHBhcmFtc1snc2VsZWN0b25lJ10pICkKCQkJCQl7CgkJCQkJCSR0bXAxWyR0aGlzLT5MYW5nKCdzZWxlY3RvbmUnKV0gPSAtMTsKCQkJCQl9CgkJCQlpZiggaXNzZXQoJHBhcmFtc1snYWxsb3dhbGwnXSkgKQoJCQkJCXsKCQkJCQkJJHRtcDFbJHRoaXMtPkxhbmcoJ2FsbCcpXSA9ICdhbGwnOwoJCQkJCX0KCQkJCSRkYiA9JiAkdGhpcy0+R2V0RGIoKTsKCQkJCSRxdWVyeSA9ICdTRUxFQ1QgdXBsb2FkX2NhdGVnb3J5X25hbWUgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHNfY2F0ZWdvcmllcwogICAgICAgICAgICAgICAgICAgV0hFUkUgdXBsb2FkX2NhdGVnb3J5X2xpc3RhYmxlID0gMSc7CgkJCQkkdG1wID0gJGRiLT5HZXRBcnJheSgkcXVlcnkpOwoJCQkJaWYoICR0bXAgKQoJCQkJCXsKCQkJCQkJZm9yKCAkaSA9IDA7ICRpIDwgY291bnQoJHRtcCk7ICRpKysgKQoJCQkJCQkJewoJCQkJCQkJCSRzdHIgPSAkdG1wWyRpXVsndXBsb2FkX2NhdGVnb3J5X25hbWUnXTsKCQkJCQkJCQkkdG1wMVskc3RyXSA9ICRzdHI7CgkJCQkJCQl9CgkJCQkJCXJldHVybiAkdGhpcy0+Q3JlYXRlSW5wdXREcm9wZG93bignJywkYmxvY2tOYW1lLCR0bXAxLC0xLCR2YWx1ZSk7CgkJCQkJfQoJCQkJYnJlYWs7CiAgICAgIH0KICAgIHJldHVybiBGQUxTRTsKICB9CgoKICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICBHZXRDb250ZW50QmxvY2tWYWx1ZSgpCiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCiAgcHVibGljIGZ1bmN0aW9uIEdldENvbnRlbnRCbG9ja1ZhbHVlKCRibG9ja05hbWUsJGJsb2NrUGFyYW1zLCRpbnB1dFBhcmFtcykKICB7CiAgICBpZiggaXNzZXQoJGJsb2NrUGFyYW1zWyd0eXBlJ10pICkKICAgICAgewoJCQkJaWYoIGlzc2V0KCRpbnB1dFBhcmFtc1skYmxvY2tOYW1lXSkgKQoJCQkJCXsKCQkJCQkJcmV0dXJuICRpbnB1dFBhcmFtc1skYmxvY2tOYW1lXTsKCQkJCQl9CiAgICAgIH0KICAgIHJldHVybiAnJzsKICB9CgoKICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICBWYWxpZGF0ZUNvbnRlbnRCbG9ja1ZhbHVlKCkKICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KICBwdWJsaWMgZnVuY3Rpb24gVmFsaWRhdGVDb250ZW50QmxvY2tWYWx1ZSgkYmxvY2tOYW1lLCR2YWx1ZSwkYmxvY2tQYXJhbXMpCiAgewogICAgc3dpdGNoKCRibG9ja1BhcmFtc1sndHlwZSddKQogICAgICB7CiAgICAgIGNhc2UgJ2NhdGVnb3J5c2VsZWN0JzoKCQkJCWlmKCAkdmFsdWUgPT0gLTEgKQoJCQkJCXsKCQkJCQkJcmV0dXJuICR0aGlzLT5MYW5nKCdlcnJvcl9tdXN0c2VsZWN0X2NhdGVnb3J5Jyk7CgkJCQkJfQoJCQkJYnJlYWs7CiAgICAgIH0KICAgIHJldHVybiAnJzsKICB9Cgp9CgovLyBFT0YKPz4K]]></data>
	</file>
</module>
