<?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.16.13</version>
  <mincmsversion>1.11.7</mincmsversion>
	<help><![CDATA[PGgzPldoYXQgRG9lcyBUaGlzIERvPzwvaDM+CjxwPkl0IGlzIGEgbW9kdWxlIGZvciBhbGxvd2luZyBwZW9wbGUgdG8gdXBsb2FkIGFuZCBkb3dubG9hZCBmaWxlcyB0byBhbmQgZnJvbSB5b3VyIHNpdGUuICBJdCBrZWVwcyB0cmFjayBvZiB3aG8gdXBsb2FkZWQgYSBmaWxlLCBhbmQgd2hvIGhhcyBkb3dubG9hZGVkIGl0LiAgQXMgd2VsbCwgeW91IGNhbiBzb3J0IGZpbGVzIGludG8gY2F0ZWdvcmllcywgYW5kIG1hbmFnZSB0aGUgZmlsZXMgdGhhdCB3ZXJlIHVwbG9hZGVkIGxpa2UgZXZlcnkgYWRtaW5pc3RyYXRvciB3b3VsZCBkbzwvcD4gCjxoMz5Ib3cgRG8gSSBVc2UgSXQ8L2gzPgo8cD5UbyB1c2UgdGhpcyBtb2R1bGUsIHRvIGFsbG93IHVzZXJzIHRvIHVwbG9hZCBmaWxlcyB0byB5b3VyIHNpdGUsIHlvdSBzaG91bGQgaW5zdGFsbCB0aGUgbW9kdWxlLCBhbmQgdGhlbiBjcmVhdGUgb25lIG9yIG1vcmUgY2F0ZWdvcmllcyAoYS5rLmEpIGRpcmVjdG9yaWVzIGZvciB0aGUgdXBsb2FkZWQgZmlsZXMgdG8gZ28gaW50by4gVGhlbiBhZGQgYSB0YWcgaW50byBhIHBhZ2Ugb3IgdGVtcGxhdGUgc29tZXdoZXJlIGxpa2Uge2Ntc19tb2R1bGUgbW9kdWxlPSJVcGxvYWRzIiBjYXRlZ29yeT0ic29tZWNhdGVnb3J5IiBtb2RlPSJzb21lbW9kZSJ9LiAgV2hlcmUgbW9kZSBtYXRjaGVzIG9uZSBvZiB0aGUgbW9kZXMgbGlzdGVkIGJlbG93LiAgVGhlIG91dHB1dCB3aWxsIGRpZmZlciBkZXBlbmRpbmcgdXBvbiB3aGljaCBtb2RlIHlvdSBzZWxlY3QuPC9wPgo8cD5UaGlzIG1vZHVsZSBjYW4gdXNlIHRoZSBGcm9udGVuZFVzZXJzIG1vZHVsZSAob3B0aW9uYWwpIHRvIGdldCBpbmZvcm1hdGlvbiBhYm91dCBhbnkgY3VycmVudGx5IGxvZ2dlZCBpbiB1c2VycyB0byBwYXJ0bHkgZmlsbCBpbiB0aGUgZm9ybSB3aGVuIHVwbG9hZGluZyBmaWxlczs8L3A+CjxoMz5QZXJtaXNzaW9uczwvaDM+Cjx1bD4KPGxpPjxlbT5NYW5hZ2UgVXBsb2FkczwvZW0+IHBlcm1pc3Npb24gaXMgbmVlZGVkIHRvIG1hbmFnZSBjYXRlZ29yaWVzLCBhbmQgdGhlIGZpbGVzIHdpdGhpbiB0aGVtLjwvbGk+CjxsaT48ZW0+TW9kaWZ5IFRlbXBsYXRlczwvZW0+IHBlcm1pc3Npb24gaXMgbmVlZGVkIGVkaXQgYW55IG9mIHRoZSB0ZW1wbGF0ZXMuPC9saT4KPGxpPjxlbT5Nb2RpZnkgU2l0ZSBQcmVmZXJlbmNlczwvZW0+IHBlcm1pc3Npb24gaXMgbmVlZGVkIGFueSBvZiB0aGUgZmlsZSBzZXR0aW5ncy48L2xpPgo8L3VsPgo8aDM+Q2F0ZWdvcnkgQnJvd3Npbmc8L2gzPgo8cD5QbGFjaW5nIGEgdGFnIGxpa2Uge2Ntc19tb2R1bGUgbW9kdWxlPSJVcGxvYWRzIiBhY3Rpb249ImNhdGVnb3J5c3VtbWFyeSIgdGVtcGxhdGU9InN1bW1hcnl0ZW1wbGF0ZSIgc29ydG9yZGVyPSJuYW1lX2FzYyIgbGlzdGluZ3RlbXBsYXRlPSJsaXN0dGVtcGxhdGUiIGxpc3Rpbmdzb3J0b3JkZXI9Imxpc3Rzb3J0b3JkZXIifQphbGxvd3MgeW91IHRvIGRpc3BsYXkgYW4gaW50ZXJhY3RpdmUgY2F0ZWdvcnkgYnJvd3Nlci4gc29ydG9yZGVyIGNhbiBiZTogbmFtZV9hc2MsIG5hbWVfZGVzYywgc3VtbV9hc2MsIHN1bW1fZGVzYywgb3IgcmFuZG9tLgpsaXN0aW5ndGVtcGxhdGUgYW5kIGxpc3Rpbmdzb3J0b3JkZXIgYXJlIGlkZW50aWNhbCB0byB0aGUgdGVtcGxhdGUgYW5kIHNvcnRvcmRlciBwYXJhbWV0ZXJzIGZvcgp0aGUgInN1bW1hcnkiIG1vZGUuPC9wPgo8aDM+QXV0b21hdGljIFNjYW5uaW5nPC9oMz4KPHA+VGhpcyBtb2R1bGUgd2lsbCBhdXRvbWF0aWNhbGx5IHNjYW4gZm9yIG5ldyBmaWxlcyBpbiBhIGRpcmVjdG9yeSB3aGVuIGEgc3VtbWFyeSBtb2RlIHRhZyBmb3IgYSBzcGVjaWZpYyBjYXRlZ29yeSBpcyB1c2VkIG9uIGEgQ01TTVMgcGFnZS4gIGkuZTogPGNvZGU+e1VwbG9hZHMgY2F0ZWdvcnk9Y2F0ZWdvcnlfbmFtZX08L2NvZGU+IHdpbGwgcGVyZm9ybSBhIHNjYW4uICBidXQgPGNvZGU+e1VwbG9hZHMgY2F0ZWdvcnk9YWxsfTwvY29kZT4gd2lsbCBub3QuPC9wPgo8aDM+VGh1bWJuYWlsIEdlbmVyYXRpb24gLSBEZXByZWNhdGVkPC9oMz4KPHA+VGhpcyBtb2R1bGUgaXMgY2FwYWJsZSBvZiBnZW5lcmF0aW5nIHRodW1ibmFpbHMgZm9yIGNlcnRhaW4gdHlwZXMgb2YgZmlsZXMuICBUaGVyZSBhcmUgcHJlZmVyZW5jZXMgaW4gdGhlIHByZWZlcmVuY2VzIHRhYiBvZiB0aGUgVXBsb2FkcyBtb2R1bGUgYWRtaW5pc3RyYXRpb24gcGFuZWwgdG8gc3BlY2lmeSB0aGUgdHlwZXMgb2YgZmlsZXMgdGhhdCBhbGxvdyBhdXRvbWF0aWMgdGh1bWJuYWlsIGdlbmVyYXRpb24sIGFuZCB0aGUgc2l6ZSBvZiB0aGUgZ2VuZXJhdGVkIHRodW1ibmFpbCAocHJlc2VydmluZyBhc3BlY3QgcmF0aW8pLiAgIFRodW1ibmFpbHMgYXJlIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIHVwb24gdXBsb2FkLCBhbmQgY2FuIGJlIGdlbmVyYXRlZCBtYW51YWxseSBieSBzZWxlY3RpbmcgdGhlICZxdW90O0dlbmVyYXRlIFRodW1ibmFpbHMmcXVvdDsgb3B0aW9uIGluIHRoZSBlZGl0IGNhdGVnb3J5IGZvcm1zLi4uIGJ1dCBhcmUgbm90IGdlbmVyYXRlZCB3aGVuIG5ldyBmaWxlcyBhcmUgZGV0ZWN0ZWQgYnkgYXV0b21hdGljIHNjYW5uaW5nLjwvcD4KPGgzPllvdSBTZW5kIEl0PC9oMz4KPHA+SXQgaXMgcG9zc2libGUgdG8gZW5hYmxlICZxdW90O3lvdXNlbmRpdCZxdW90OyBsaWtlIGZ1bmN0aW9uYWxpdHkgdG8gYWxsb3cgYXV0b21hdGljYWxseSBlbWFpbGluZyBzZWxlY3RlZCBwZW9wbGUgd2l0aCBhIGxpbmsgdG8gYSBuZXdseSB1cGxvYWRlZCBmaWxlLiAgVGhpcyBpcyBhY2NvbXBsaXNoZWQgYnkgdXNpbmcgYSB0YWcgbGlrZTogPGNvZGU+e1VwbG9hZHMgYWN0aW9uPXlvdXNlbmRpdCBjYXRlZ29yeT1jYXRlZ29yeW5hbWV9PC9jb2RlPi4gIFRoaXMgd2lsbCBkaXNwbGF5IGEgZm9ybSBhbGxvd2luZyB0aGlzIGZ1bmN0aW9uYWxpdHkuPC9wPgo8aDM+VGltZSBMaW1pdGVkIEFjY2VzczwvaDM+CjxwPlRoaXMgbW9kdWxlIHN1cHBvcnRzIHRoZSBub3Rpb24gb2YgdW5pcXVlIGtleXMgdG8gYWxsb3cgdGltZSBsaW1pdGVkIGFjY2VzcyB0byBjZXJ0YWluIGZpbGVzLiAgVGhlIGZ1bmN0aW9uYWxpdHkgYWxsb3dzIHNwZWNpZnlpbmcgYSB0aW1lIGxpbWl0IChpbiBob3VycykgZm9yIHdoaWNoIHRoZSBrZXkgaXMgdmFsaWQsIGFuZCBhIG1heGltdW0gbnVtYmVyIG9mIGRvd25sb2FkcyBvciBkb3dubG9hZCBhdGVtcHRzLiAgQW4gZW1haWwgaXMgc2VudCB0byB0aGUgZGVzaXJlZCB1c2VycyB3aXRoIHRoZSB1bmlxdWUgVVJMLiAgQWZ0ZXIgdGhlIHRpbWUgbGltaXQsIG9yIHRoZSBudW1iZXIgb2YgZG93bmxvYWRzIGhhcyBiZWVuIHJlYWNoZWQsIHRoZSBVUkwgaXMgbm8gbG9uZ2VyIHZhbGlkLiAgVGhlc2UgdW5pcXVlIHRpbWUgbGltaXRlZCBrZXlzIGFyZSBhdXRvbWF0aWNhbGx5IHJlbW92ZWQgZnJvbSB0aGUgZGF0YWJhc2UgYWZ0ZXIgZXhwaXJ5LjwvcD4KPGgzPlJlc3RyaWNpbmcgQWNjZXNzIHdpdGggRkVVPC9oMz4KPHA+VGhpcyBtb2R1bGUgaXMgY2FwYWJsZSBvZiBpbnRlZ3JhdGluZyB3aXRoIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZSB0byByZXN0cmljdCB0aGUgdmlzaWJpbGl0eSBvZiBjYXRlZ29yaWVzIChkaXJlY3RvcmllcykgdG8gY2VydGFpbiBhbGxvd2VkIEZFVSBncm91cHMuICBZb3VyIHVzZXJzIHdvdWxkIGhhdmUgdG8gYmUgbG9nZ2VkIGluIHRvIHlvdXIgd2Vic2l0ZSAodXNpbmcgRkVVKSBhbmQgYWxzbyBhIG1lbWJlciBvZiBvbmUgb2YgdGhlIGFsbG93ZWQgZ3JvdXBzIHRvIG9idGFpbiBhY2Nlc3MuICBUaGlzIGlzIGFjY29tcGxpc2hlZCBpbiB0aGUgY2F0ZWdvcnkgZWRpdCBmb3JtLiAgWW91IGNhbiBzZWxlY3QgYSBsaXN0IG9mIEZFVSBncm91cHMgd2hpY2ggYXJlIGFsbG93ZWQgdG8gdmlldyBmaWxlcyBpbiB0aGlzIGNhdGVnb3J5LjwvcD4KPHA+VGhpcyBmdW5jdGlvbmFsaXR5IGFsc28gYXBwbGllcyB0byB0aGUgJnF1b3RUaW1lIExpbWl0ZWQgQWNjZXNzJnF1b3QgZnVuY3Rpb25hbGl0eS4gIEFsbG93aW5nIHlvdSB0byBzcGVjaWZ5IHRoYXQgY2VydGFpbiBwZW9wbGUsIHdobyBhbHNvIGhhdmUgdG8gYmUgbG9nZ2VkIGluIHRvIHlvdXIgd2Vic2l0ZSBjYW4gaGF2ZSBhY2Nlc3MgdG8gY2VydGFpbiBmaWxlcyBmb3IgYSBsaW1pdGVkIGFtb3VudCBvZiB0aW1lLjwvcD4KPGgzPkVtYWlsaW5nPC9oMz4KPHA+VGhpcyBtb2R1bGUgaXMgY2FwYWJsZSBvZiBzZW5kaW5nIGFuIGVtYWlsIHdoZW5ldmVyIGEgZmlsZSBpcyB1cGxvYWRlZCwgc2VlIHRoZSBwcmVmZXJlbmNlcyB0YWIuICBIb3dldmVyLCB0byBkbyB0aGlzIHRoZSA8Yj5DTVNNYWlsZXI8L2I+IHBhCmNrYWdlIG11c3QgYmUgaW5zdGFsbGVkIGFuZCBjb25maWd1cmVkLiAgVGhpcyBpcyBhbiA8ZW0+b3B0aW9uYWw8L2VtPiBzdGVwLCBhbmQgaWYgdGhlIENNU01haWxlciBtb2R1bGUgaXMgbm90IGluc3RhbGxlZCwgbm90aGluZyB3aWxsIGJlIGRpc3BsYXllZCB0byB0aGUgdXNlciwgb25seSBhIGxvZyBtZXNzYWdlIHdpbGwgYmUgcGxhY2VkIGludG8gdGhlIGFkbWluIGxvZzwvcD4KPGgzPlJlcG9ydGluZzwvaDM+CjxwPlRoaXMgbW9kdWxlIHByb3ZpZGVzIGEgZmxleGlibGUgcmVwb3J0aW5nIG1lY2hhbmlzbSBmb3Igdmlld2luZyBzdGF0aXN0Y3MgYWJvdXQgaG93IGEgZmlsZSBzaGFyZWQgd2l0aCB0aGUgVXBsb2FkcyBtb2R1bGUgd2FzIGRvd25sb2FkZWQuICBJdCBpbmNsdWRlcyB0aGUgYWJpbGl0eSB0byBjdXN0b21pemUgcmVwb3J0IHRlbXBsYXRlcywgb3V0cHV0IGZpZWxkcyBhbmQgZmlsdGVyaW5nLiAgRmlsdGVyaW5nIGlzIHBlcm1pdHRlZCBieSBVcGxvYWRzIGNhdGVnb3J5LCBmaWxlbmFtZSwgZG93bmxvYWQgdXNlciBuYW1lLCBvciB1c2VybmFtZSBwYXR0ZXJuLCBhbmQgYnkgZGF0ZS4gIEhUTUwgcmVwb3J0cyBjYW4gYmUgZ2VuZXJhdGVkIGluIHRoZSBicm93c2VyIHdpbmRvdywgb3IgZW1haWxsZWQuICBBZGRpdGlvbmFsbHkgdGhlIHJlcG9ydGluZyBmdW5jdGlvbmFsaXR5IHN1cHBvcnRzIENTViBleHBvcnQuPC9wPgo8cD48c3Ryb25nPk5vdGU6PC9zdHJvbmc+IEl0IGlzIGltcG9ydGFudCB0byBub3RlIHRoYXQgdGhlIGFiaWxpdHkgdG8gc2VsZWN0IG91dHB1dCBmaWVsZHMgaW4gdGhlIHJlcG9ydHMgbWF5IGdlbmVyYXRlIHNvbWUgY29uZnVzaW5nIG91dHB1dCBkZXBlbmRpbmcgdXBvbiB0aGUgZmllbGRzIGNob3NlbiBhbmQgdGhlIHJlcG9ydCB0eXBlLiAgaS5lOiBpbiBhIHN1bW1hcnkgcmVwb3J0IGl0IGRvZXMgbm90IG1ha2Ugc2Vuc2UgdG8gZGlzcGxheSBmaWVsZHMgbGlrZSBkb3dubG9hZCB1c2VybmFtZS4gIFdoZXJlYXMgaW4gYSBkZXRhaWwgcmVwb3J0IGl0IGRvZXMgbm90IHVzdWFsbHkgbWFrZSBzZW5zZSB0byBkaXNwbGF5IHRoZSBudW1iZXIgb2YgZG93bmxvYWRzLiAgVXNlIGNhdXRpb24gd2hlbiBnZW5lcmF0aW5nIHJlcG9ydHMuPC9wPgo8dWw+CiAgPGxpPkRvd25sb2FkcyBieSBVc2VyCiAgICA8dWw+CiAgICAgIDxsaT5TdW1tYXJ5CiAgICAgICAgPHA+VGhpcyByZXBvcnQgZ2VuZXJhdGVzIG9uZSBsaW5lIHBlciBtYXRjaGluZyB1c2VyICh1c2VyIHdobyBkb3dubG9hZGVkIHNvbWV0aGluZykuICBJdCBpcyBncmVhdCBmb3IgZGlzcGxheWluZyBob3cgbXVjaCBhIHVzZXIgZG93bmxvYWRlZCwgYW5kIHRoZSBsYXN0IHRpbWUgdGhleSBkb3dubG9hZGVkIGFueXRoaW5nLjwvcD4KICAgICAgPC9saT4KICAgICAgPGxpPkRldGFpbAogICAgICAgIDxwPlRoaXMgcmVwb3J0IGdlbmVyYXRlcyBvbmUgbGluZSBwZXIgZG93bmxvYWQuICBJdCBkZXRhaWxzIHdoYXQgdGhlIHNlbGVjdGVkIHVzZXJzIGRvd25sb2FkZWQsIGFuZCB3aGVuLjwvcD4KICAgICAgPC9saT4KICAgIDwvdWw+CiAgPC9saT4KICA8bGk+RG93bmxvYWRzIGJ5IEZpbGUKICAgIDx1bD4KICAgICAgPGxpPlN1bW1hcnkKICAgICAgICA8cD5UaGlzIHJlcG9ydCBnZW5lcmF0ZXMgb25lIGxpbmUgcGVyIG1hdGNoaW5nIGZpbGUuICBJdCBncm91cHMgZXZlcnl0aGluZyBieSB0aGUgZmlsZS4gIEl0IGlzIHVzZWQgZm9yIGRpc3BsYXlpbmcgaG93IG1hbnkgdGltZXMgYSBmaWxlIHdhcyBkb3dubG9hZGVkLjwvcD4KICAgICAgPC9saT4KICAgICAgPGxpPkRldGFpbAogICAgICAgIDxwPlRoaXMgcmVwb3J0IGdlbmVyYXRlcyBvbmUgbGluZSBwZXIgZG93bmxvYWQuICBJdCBkZXRhaWxzIHdobyBkb3dubG9hZGVkIHRoZSBzZWxlY3RlZCBmaWxlcywgYW5kIHdoZW4uPC9wPgogICAgICA8L2xpPgogICAgPC91bD4KICA8L2xpPgo8L3VsPgo8aDM+U21hcnR5IFBsdWdpbnM6PC9oMz4KPHA+VGhpcyBtb2R1bGUgcHJvdmlkZXMgc29tZSBhY2Nlc3Nvcnkgc21hcnR5IHBsdWdpbnMgdGhhdCBhcmUgdXNlZnVsIGZvciB2YXJpb3VzIHB1cnBvc2VzIHdoZW4gd29ya2luZyB3aXRoIGZpbGVzLjwvcD4KPGgzPkNvbnRlbnQgQmxvY2tzIDxlbT4oQ01TTVMgMS43KyBPbmx5KTwvZW0+PC9oMz4KPHVsPgogIDxsaT48c3Ryb25nPnt1cGxvYWRzX2NyZWF0ZV90bF9maWxlfTwvc3Ryb25nPgogICAgPHA+Q29weSBhbiBleGlzdGluZyBzZXJ2ZXIgZmlsZSBpbnRvIHRoZSB1cGxvYWRzIG1vZHVsZSBhbmQgZ2VuZXJhdGUgYSB0aW1lIGxpbWl0ZWQgVVJMIGZvciBpdC4gVGhpcyBwbHVnaW4gd2lsbCBhbHNvIHdhdGVybWFyaywgYW5kIHRodW1ibmFpbCBpbWFnZSBmaWxlcyBhcyBzcGVjaWZpZWQgaW4gdGhlIHByZWZlcmVuY2VzIChkZXByZWNhdGVkKS48L3A+CiAgICA8cD5QYXJhbWV0ZXJzOjwvcD4KICAgIDx1bD4KICAgICAgPGxpPjxzdHJvbmc+c3JjPC9zdHJvbmc+IC0gc3RyaW5nIC0gcmVxdWlyZWQgLSBUaGUgYWJzb2x1dGUgc2VydmVyIGZpbGUgc3BlY2lmaWNhdGlvbiB0byB0aGUgc291cmNlIGZpbGUuPC9saT4KICAgICAgPGxpPjxzdHJvbmc+Y2F0ZWdvcnk8L3N0cm9uZz4gLSBtaXhlZCAtIHJlcXVpcmVkIC0gVGhlIGNhdGVnb3J5IG5hbWUgKHN0cmluZykgb3IgaWQgKGludGVnZXIpIHRvIHRoZSBkZXN0aW5hdGlvbiBVcGxvYWRzIGNhdGVnb3J5LjwvbGk+CiAgICAgIDxsaT5wcmVmaXggLSBib29sZWFuIC0gb3B0aW9uc2wgLSBJbmRpY2F0ZXMgd2V0aGVyIGZpbGVzIHNob3VsZCBiZSBwcmVmaXhlZCB3aXRoIGEgc3RyaW5nIHRoYXQgZGVwZW5kcyBvbiB0aGUgc2VydmVyIHRpbWUgKGRlZmF1bHQgaXMgRkFMU0UpPC9saT4KICAgICAgPGxpPmVtYWlsIC0gc3RyaW5nIC0gb3B0aW9uYWwgLSBUaWUgdGhlIGdlbmVyYXRlZCB1cmwgdG8gdGhlIHN1cHBsaWVkIGVtYWlsIGFkZHJlc3MgKHdvcmsgaW4gcHJvZ3Jlc3MpPC9saT4KICAgICAgPGxpPmhvdXJzIC0gaW50ZWdlciAtIG9wdGlvbmFsIC0gVGhlIG51bWJlciBvZiBob3VycyB0aGlzIFVSTCB3aWxsIGJlIHZhbGlkIGZvciwgaWYgbm90IHNwZWNpZmllZCB0aGUgbW9kdWxlIHByZWZlcmVuY2Ugd2lsbCBiZSB1c2VkLjwvbGk+CiAgICAgIDxsaT5kb3dubG9hZHMgLSBpbnRlZ2VyIC0gb3B0aW9uYWwgLSBUaGUgbWF4aW11bSBudW1iZXIgb2YgdGltZXMgdGhlIGZpbGUgY2FuIGJlIGRvd25sb2FkZWQgdXNpbmcgdGhpcyB1cmwuICBJZiBub3Qgc3BlY2lmaWVkLCB0aGUgbW9kdWxlIHByZWZlcmVuY2Ugd2lsbCBiZSB1c2VkLjwvbGk+CiAgICAgIDxsaT5hc3NpZ24gLSBzdHJpbmcgLSBvcHRpb25hbCAtIEEgc21hcnR5IHZhcmlhYmxlIG5hbWUgdG8gYXNzaWduIHRoZSBvdXRwdXQgdG8uPC9saT4KICAgIDwvdWw+CiAgICA8cD5FeGFtcGxlOjxici8+CiAgICA8cHJlPnt1cGxvYWRzX2NyZWF0ZV90bF9maWxlIHNyYz0mcXVvdDsvdGhlL2NvbXBsZXRlL3BhdGgvdG8vdGhlL2ZpbGUuanBnJnF1b3Q7IHByZWZpeD10cnVlIGRvd25sb2Fkcz01IGhvdXJzPTcyIGNhdGVnb3J5PSZxdW90O3NvbWUgY2F0ZWdvcnkmcXVvdDsgYXNzaWduPSZxdW90O3RoZV91cmwmcXVvdDt9PC9wcmU+CiAgICA8L3A+CiAgPC9saT4KPC91bD4KPHA+Rm9yIENNU01TIDEuNyB0aGlzIG1vZHVsZSBpcyBjYXBhYmxlIG9mIGludGVyZmFjaW5nIHdpdGggdGhlIGNvbnRlbnQgZWRpdG9yIGFuZCBleHBvcnRpbmcgYSBjb250ZW50IGJsb2NrIHRoYXQgYWxsb3dzIHNlbGVjdGluZyBhbiB1cGxvYWRzIGNhdGVnb3J5IHdpdGhpbiB0aGUgZWRpdCBjb250ZW50IHBhZ2UsIGZvciBsYXRlciB1c2Ugd2l0aGluIHRoZSB0ZW1wbGF0ZS48L3A+CjxwPmkuZTogcGxhY2luZyB0aGUgZm9sbG93aW5nIHRhZyB3aXRoaW4gYSBwYWdlIHRlbXBsYXRlIDxjb2RlPntjb250ZW50X21vZHVsZSBtb2R1bGU9JnF1b3Q7VXBsb2FkcyZxdW90OyBibG9jaz0mcXVvdDt1cGxvYWRzX2NhdGVnb3J5JnF1b3Q7IHR5cGU9JnF1b3Q7Y2F0ZWdvcnlzZWxlY3QmcXVvdDt9PC9jb2RlPiwgd2lsbCBhZGQgYSBkcm9wZG93biBib3ggaW4gdGhlIGVkaXQgY29udGVudCB2aWV3IG9mIGFueSBwYWdlIHV0aWxpemluZyB0aGF0IHBhZ2UgdGVtcGxhdGUuPC9wPgo8cD5UaGlzIGNvbnRlbnQgYmxvY2sgYWxzbyBhY2NlcHRzIHNvbWUgb3B0aW9uYWwgcGFyYW1ldGVyczo8L3A+Cjx1bD4KICA8bGk+PHU+c2VsZWN0b25lPC91PgogICAgPHA+VGhpcyBwYXJhbWV0ZXIgaW5zZXJ0cyBhICZxdW90O1NlbGVjdCBPbmUmcXVvdDsgaXRlbSBpbnRvIHRoZSBsaXN0IG9mIGNhdGVnb3JpZXMsIHJlcXVpcmluZyB0aGUgdXNlciB0byBzZWxlY3QgYSB2YWxpZCBjYXRlZ29yeSB3aGVuIHRoZSBjb250ZW50IHBhZ2UgaXMgc2F2ZWQuPC9wPgogIDwvbGk+CiAgPGxpPjx1PmFsbG93YWxsPC91PgogICAgPHA+VGhpcyBwYXJhbWV0ZXIgYWxsb3dzIHRoZSBjb250ZW50IGVkaXRvciB0byBzZWxlY3QgJnF1b3Q7QWxsJnF1b3Q7IGFzIGEgY2F0ZWdvcnkgZm9yIHRoZSB1cGxvYWRzIGRpc3BsYXkuPC9wPgogIDwvbGk+CjwvdWw+CjxoND5Ib3cgd291bGQgSSB1c2UgaXQ/PC9oND4KPHA+SGVyZSBpcyBzb21lIGV4YW1wbGUgY29kZTo8L3A+CjxwcmU+Cntjb250ZW50X21vZHVsZSBtb2R1bGU9JnF1b3Q7VXBsb2FkcyZxdW90OyBibG9jaz0mcXVvdDtjYXRlZ29yeXNlbGVjdCZxdW90OyBsYWJlbD0mcXVvdDtTZWxlY3QgYW4gdXBsb2FkcyBjYXRlZ29yeSZxdW90OyBzZWxlY3RvbmU9MSBhc3NpZ249JnF1b3Q7dG1wJnF1b3Q7fQp7VXBsb2FkcyBjYXRlZ29yeT0kdG1wfQo8L3ByZT4KPGgzPkRlcHJlY2F0ZWQ6PC9oMz4KPHA+PHN0cm9uZz5Ob3RlOjwvc3Ryb25nPiBUaGUgdGh1bWJuYWlsIGFuZCB3YXRlcm1hcmsgY2FwYWJpbGl0aWVzIHRoYXQgZXhpc3QgaW4gdGhpcyBtb2R1bGUgYXJlIGRlcHJlY2F0ZWQsIGFuZCB3aWxsIGJlIHJlbW92ZWQgb3ZlciB0aW1lLiAgVGhlIENHU21hcnRJbWFnZSBtb2R1bGUgcHJvdmlkZXMgZm9yIGJldHRlciBvbiBkZW1hbmQsIGltYWdlIG1hbmlwdWxhdGlvbiwgY2FjaGluZywgYW5kIGVtYmVkZGluZy48L3A+CjxoMz5TeXN0ZW0gU2V0dGluZ3M8L2gzPgo8cD48Yj5Ob3RlOjwvYj4gVGhpcyBtb2R1bGUgZG9lcyBub3QgYnlwYXNzIG9yIGdldCBwYXN0IGFueSBmaWxlIHNpemUgbGltaXRhdGlvbnMgaW4gcGhwLiAgSXQgd29ya3MgaW4gY29uanVuY3Rpb24gd2l0aCB0aGVtLiAgVGhlcmVmb3JlIHlvdSBtYXkgbmVlZCB0byBtb2RpZnkgeW91ciBwaHAuaW5pIGZpbGUsIHlvdXIgQ01TTVMgY29uZmlnLnBocCBmaWxlIGFuZC9vciB5b3VyIGh0dHBkLmNvbmYgZmlsZShzKSB0byBhbGxvdyB5b3UgdG8gdXBsb2FkIGZpbGVzIGFzIGxhcmdlIGFzIHdoYXQgeW91IGhhdmUgc2V0IGluIHRoZSB1cGxvYWRzIG1vZHVsZSBwcmVmZXJlbmNlcy48L3A+CjxoMz5BcGFjaGUgTm90ZXM8L2gzPgo8cD5JbiBvcmRlciB0byBhbGxvdyBsYXJnZSBmaWxlIHVwbG9hZHMsIHlvdSBtYXkgbmVlZCB0byBtb2RpZnkgdGhlIHVwbG9hZF9tYXhfZmlsZXNpemUgcGFyYW1ldGVyIGluIHlvdXIgcGhwLmluaSAgSW4gYWRkaXRpb24sIHRoZSBMaW1pdFJlcXVlc3RCb2R5IHBhcmFtZXRlciBpbiB5b3VyIGFwYWNoZSBjb25maWd1cmF0aW9uLCBtYXkgbmVlZCB0byBiZSBhZGp1c3RlZCB0byBtYXRjaCB0aGUgdXBsb2FkX21heF9maWxlc2l6ZSBwYXJhbWV0ZXI8L3A+CjxwPk5vdGU6ICB0aGUgdXBsb2FkX21heF9maWxlc2l6ZSBwYXJhbWV0ZXIgY2FuIGJlIHNwZWNpZmllZCBpbiBieXRlcywga2lsb2J5dGVzLCBvciBtZWdhYnl0ZXMsIGhvd2V2ZXIgdGhlIExpbWl0UmVxdWV0Qm9keSBwYXJhbWV0ZXIgaXMgb25seSBzcGVjaWZpZWQgaW4gYnl0ZXM8L3A+CjxwPjxzdHJvbmcgc3R5bGU9ImNvbG9yOiByZWQ7Ij5XYXJuaW5nPC9zdHJvbmc+IC0gVGhlIHByb3BlciBiZWhhdmlvdXIgb2YgdGhpcyBtb2R1bGUgZGVwZW5kcyBvbiBudW1lcm91cyBwaHAgY29uZmlndXJhdGlvbiB2YXJpYWJsZXMuICBUaGVzZSBpbmNsdWRlIDxlbT4oYnV0IGFyZSBub3QgbGltaXRlZCB0byk8L2VtPiwgcGhwJ3MgbWVtb3J5X2xpbWl0LCBzYWZlX21vZGUsIGZpbGVfdXBsb2FkcywgdXBsb2Fkc19tYXhfZmlsZXNpemUsIGFuZCBtYXhfZXhlY3V0aW9uX3RpbWUuICBUaGVzZSB2YXJpYWJsZXMgbWF5IG5lZWQgYWRqdXN0bWVudCBmb3IgdGhpcyBtb2R1bGUgdG8gd29yayBwcm9wZXJseSBvbiB5b3VyIHNpdGUuICBJdCBpcyBhZHZpc2VkIHRoYXQgeW91IHdvcmsgd2l0aCB5b3VyIHN5c3RlbSBhZG1pbmlzdHJhdG9yIG9yIGhvc3QgcHJvdmlkZXIgdG8gdHVuZSB0aGVzZSBzZXR0aW5ncyBmb3IgeW91ciByZXF1aXJlbWVudHMuPC9wPgo8cD48c3Ryb25nIHN0eWxlPSJjb2xvcjogcmVkOyI+V2FybmluZzwvc3Ryb25nPiAtIFVzaW5nIHRoaXMgbW9kdWxlIHRvIGFsbG93IHNpdGUgdmlzaXRvcnMgdG8gc2VuZCBmaWxlcyAoZWl0aGVyIHVzaW5nIHRoZSBzdGFuZGFyZCBtZWNoYW5pc20gb3IgdGhlIHlvdXNlbmRpdCBtZWNoYW5pc20pIG1heSBub3Qgd29yayB3aXRoIG91dHB1dCBjb21wcmVzc2lvbiBlbmFibGVkLiAgUGxlYXNlIGVuc3VyZSB0aGF0IG91dHB1dF9jb21wcmVzc2lvbiBpcyBzZXQgdG8gZmFsc2UgaW4gdGhlIGNvbmZpZy5waHAuPC9wPgo8aDM+RGVwZW5kZW5jaWVzPC9oMz48dWw+PGxpPkNHRXh0ZW5zaW9ucyA9Jmd0OyAxLjM2PC9saT48L3VsPjxoMz5QYXJhbWV0ZXJzPC9oMz48dWw+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gbGFuZz0iZW5fVVMiIC0gUGFyYW1ldGVyIGlzIHVzZWQgdG8gc3BlY2lmeSB3aGF0IGxhbmd1YWdlIHRvIHVzZSBmb3IgZGlzcGxheSBvbiB0aGUgZnJvbnRlbmQuIE5vdCBhbGwgbW9kdWxlcyBzdXBwb3J0IG9yIG5lZWQgdGhpcy48L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IG5vY2FjaGU9IjAiIC0gLS0gTWlzc2luZyBMYW5ndWFnZXN0cmluZyAtIG1vZHVsZTpVcGxvYWRzIHN0cmluZzpwYXJhbV9ub2NhY2hlLS08L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGtleT0idmFsdWUiIC0gUHJvdmlkZSBhbiBhZGRpdGlvbmFsIGtleSB0byB0aGUgbW9kdWxlIGZvciBmdXJ0aGVyIG9yZ2FuaXppbmcgdXBsb2Fkcy4gIFRoaXMga2V5IGNvdWxkIGJlIGFuIGVuY29kZWQgc3RyaW5nIGxpa2U6ICdmZXVzZXJzOnVpZCcsIGV0Yy4gIFRoaXMgcGFyYW1ldGVyIGlzIHVzdWFsbHkgb25seSBuZWVkZWQgd2hlbiBlbWJlZGRpbmcgdGhlIHVwbG9hZHMgbW9kdWxlIGludG8gYW5vdGhlciBtb2R1bGU8L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IG5vYXV0aG9yPSIxIiAtIEhpZGUgdGhlIGF1dGhvciBmaWVsZCBmcm9tIHRoZSB1cGxvYWQgZm9ybS4gIFRoaXMgcGFyYW1ldGVyIGlzIG9ubHkgdmFsaWQgd2hlbiBtb2RlPSd1cGxvYWQnLiAgSWYgVGhlIEZyb250ZW5kVXNlcnMgbW9kdWxlIGlzIHByZXNlbnQsIGFuZCBhIHVzZXIgaXMgY3VycmVudGx5IGxvZ2dlZCBpbiwgYSBoaWRkZW4gZmllbGQgd2lsbCBob2xkIHRoZSBjdXJyZW50bHkgbG9nZ2VkIGluIHVzZXJuYW1lPC9saT48bGk+PGVtPihvcHRpb25hbCk8L2VtPiB1cGxvYWRfaWQ9ImlkIiAtIAp1cGxvYWRfaWQ9ImlkIiAtIHNwZWNpZnkgYSBzaW5nbGUgZmlsZSBmb3IgdGhlIHVybC9saW5rLGRldGFpbGVkIG9yIHNpbmdsZSBtb2RlcyAoYWJvdmUpPC9saT48bGk+PGVtPihvcHRpb25hbCk8L2VtPiBjb3VudD0iIiAtIGNvdW50PSJOIiA8cD5BIHBhcmFtZXRlciB0byBsaW1pdCB0aGUgcmVzdWx0cyB0byBOIGVudHJpZXMgcGVyIHBhZ2UuPC9wPjwvbGk+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gc29ydG9yZGVyPSJkYXRlX2FzYyIgLSAKICA8cD5Tb3J0IE9yZGVycwogIDx1bD4KICA8bGk+PGVtPmRhdGVfYXNjPC9lbT4gLSBTb3J0IGJ5IGFzY2VuZGluZyBkYXRlPC9saT4KICA8bGk+PGVtPmRhdGVfZGVzYzwvZW0+IC0gU29ydCBieSBkZXNjZW5kaW5nIGRhdGU8L2xpPgogIDxsaT48ZW0+bmFtZV9hc2M8L2VtPiAtIFNvcnQgYnkgYXNjZW5kaW5nIG5hbWU8L2xpPgogIDxsaT48ZW0+bmFtZV9kZXNjPC9lbT4gLSBTb3J0IGJ5IGRlc2NlbmRpbmcgbmFtZTwvbGk+CiAgPGxpPjxlbT5zaXplX2FzYzwvZW0+IC0gU29ydCBieSBhc2NlbmRpbmcgc2l6ZTwvbGk+CiAgPGxpPjxlbT5zaXplX2Rlc2M8L2VtPiAtIFNvcnQgYnkgZGVzY2VuZGluZyBzaXplPC9saT4KICA8bGk+PGVtPmF1dGhvcl9hc2M8L2VtPiAtIFNvcnQgYnkgYXNjZW5kaW5nIGF1dGhvcjwvbGk+CiAgPGxpPjxlbT5hdXRob3JfZGVzYzwvZW0+IC0gU29ydCBieSBkZXNjZW5kaW5nIGF1dGhvcjwvbGk+CiAgPGxpPjxlbT5pcF9hc2M8L2VtPiAtIFNvcnQgYnkgYXNjZW5kaW5nIGlwIGFkZHJlc3M8L2xpPgogIDxsaT48ZW0+aXBfZGVzYzwvZW0+IC0gU29ydCBieSBkZXNjZW5kaW5nIGlwIGFkZHJlc3M8L2xpPgogIDxsaT48ZW0+ZGVzY19hc2M8L2VtPiAtIFNvcnQgYnkgYXNjZW5kaW5nIGRlc2NyaXB0aW9uPC9saT4KICA8bGk+PGVtPmRlc2NfZGVzYzwvZW0+IC0gU29ydCBieSBkZXNjZW5kaW5nIGRlc2NyaXB0aW9uPC9saT4KICA8bGk+PGVtPmRvd25sb2Fkc19hc2M8L2VtPiAtIFNvcnQgYnkgZG93bmxvYWQgY291bnQgaW4gYXNjZW5kaW5nIG9yZGVyLjwvbGk+CiAgPGxpPjxlbT5kb3dubG9hZHNfZGVzYzwvZW0+IC0gU29ydCBieSBkb3dubG9hZCBjb3VudCBpbiBkZXNjZW5kaW5nIG9yZGVyLjwvbGk+CiAgPGxpPjxlbT5yYW5kb208L2VtPiAtIFJhbmRvbSBzb3J0IG9yZGVyPC9saT4KICA8L3VsPgogIDwvcD48L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGZpbGVfZXh0ZW5zaW9ucz0iZXh0MSxleHQyLGV4dDMiIC0gIApmaWxlX2V4dGVuc2lvbnM9ImV4dDEsZXh0MixleHQzIgo8cD52YWxpZCBvbmx5IHdoZW4gbW9kZT11cGxvYWQsIHRoaXMgcGFyYW1ldGVyIGxpbWl0cyB0aGUgdHlwZXMgb2YgZmlsZXMgdGhhdCBjYW4gYmUgdXBsb2FkZWQuICBJdCBvdmVycmlkZXMgYW55IHNldHRpbmdzIGluIHRoZSBtb2R1bGUgcHJlZmVyZW5jZXMuPC9wPjwvbGk+PGxpPmNhdGVnb3J5PSJ1cGxvYWRfY2F0ZWdvcnkiIC0gCmNhdGVnb3J5PSJuYW1lIgo8cD48Yj5Ob3RlOjwvYj4gQ2F0ZWdvcnkgY2FuIGJlICJhbGwiLCB3aGljaCB3aWxsIGxpc3QgYWxsIG9mIHRoZSB1cGxvYWRzIGZyb20gYWxsIDxlbT5saXN0YWJsZTwvZW0+IGNhdGVnb3JpZXM8L3A+PC9saT48bGk+PGVtPihvcHRpb25hbCk8L2VtPiBmaWx0ZXI9IiIgLSBBcHBsaWNhYmxlIG9ubHkgdG8gdGhlIHN1bW1hcnkgdmlldywgdGhpcyBwYXJhbWV0ZXIgd2lsbCBlbmFibGUgZGlzcGxheSBvZiB0aGUgZmlsdGVyaW5nIGZvcm0uICBJZiB0aGlzIHBhcmFtZXRlciBpcyBzZXQgdG8gYW55IHZhbHVlIDxlbT4oYW5kIHRoZSBmaWVsZHMgc3RpbGwgYXBwZWFyIGluIHRoZSBzdW1tYXJ5IHRlbXBsYXRlKTwvZW0+PC9saT48bGk+PGVtPihvcHRpb25hbCk8L2VtPiBub19pbml0aWFsPSIxIiAtIERvIG5vdCBkaXNwbGF5IGFueSBpbml0aWFsIHJlc3VsdHMgd2hlbiB0aGUgZmlsdGVyIGlzIG9uPC9saT48bGk+bW9kZT0ic3VtbWFyeSIgLSAKICA8dWw+CiAgPGxpPjxlbT5kZXRhaWxlZDwvZW0+IC0gRGlzcGxheSBhIGRldGFpbGVkIHJlcG9ydCBmb3IgYSBzaW5nbGUgdXBsb2FkLjwvbGk+CiAgPGxpPjxlbT5zaW5nbGU8L2VtPiAtIEFsaWFzIGZvciB0aGUgZGV0YWlsZWQgbW9kZS48L2xpPgogIDxsaT48ZW0+dXBsb2FkPC9lbT4gLSBEaXNwbGF5IGEgZm9ybSB0byBhbGxvdyBhIGZyb250ZW5kIHVzZXIgdG8gdXBsb2FkIGEgZmlsZTwvbGk+CiAgPGxpPjxlbT51cmwgPGk+b3I8L2k+IGxpbms8L2VtPiAtIERpc3BsYXkgYSBsaW5rIHRvIGEgZmlsZTwvbGk+CiAgPGxpPjxlbT5zdW1tYXJ5PC9lbT4gLSBEaXNwbGF5IGEgc3VtbWFyaXplZCBsaXN0IG9mIGFsbCBmaWxlcyBpbiB0aGUgc3BlY2lmaWVkIGNhdGVnb3J5PC9saT4KICA8L3VsPjwvbGk+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gdGVtcGxhdGU9IiIgLSBVc2UgYSB0ZW1wbGF0ZSB3aXRoIHRoaXMgbmFtZSBmb3IgdGhpcyByZXBvcnQgb3IgZm9ybS4gIFRoZSBtb2RlIGlzIHVzZWQgdG8gZGV0ZXJtaW5lIHdoYXQgdHlwZSBvZiB0ZW1wbGF0ZSBpcyByZXF1aXJlcmQsIGFuZCB0aGVuIGEgbmFtZSBtYXRjaCBpcyBwZXJmb3JtZWQgd2l0aGluIHRoYXQgdHlwZS48L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGRldGFpbHRlbXBsYXRlPSIiIC0gVXNlIGEgdGVtcGxhdGUgd2l0aCB0aGlzIG5hbWUgZm9yIHRoZSBkZXRhaWwgcmVwb3J0LjwvbGk+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gbm9jYXB0Y2hhPSIiIC0gRGlzYWJsZSBjYXB0Y2hhIHN1cHBvcnQgKG9uIGJ5IGRlZmF1bHQpIGluIHRoZSB1cGxvYWQgZm9ybTwvbGk+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gZmlsZXR5cGVzPSIiIC0gRGlzcGxheSBvbmx5IGZpbGVzIHdob3NlIHR5cGUgbWF0Y2hlcyB0aGlzIGNvbW1hIHNlcGFyYXRlZCBsaXN0PC9saT48bGk+PGVtPihvcHRpb25hbCk8L2VtPiBzZWxlY3RuYW1lPSIiIC0gd2hlbiB1c2luZyB0aGUgJ3NlbGVjdCcgbW9kZSwgdGhpcyBwYXJhbWV0ZXIgc3BlY2lmaWVzIHRoZSBuYW1lIG9mIHRoZSBmaWVsZDwvbGk+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gc2VsZWN0bm9uZT0iIiAtIFdoZW4gdXNpbmcgdGhlICdzZWxlY3QnIG1vZGUsIHRoaXMgcGFyYW1ldGVyIHNwZWNpZmllcyB3ZXRoZXIgJ25vbmUnIGlzIGEgdmFsaWQgY2hvaWNlLjwvbGk+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gc2VsZWN0dmFsdWU9IiIgLSBXaGVuIHVzaW5nIHRoZSAnc2VsZWN0JyBtb2RlLCB0aGlzIHBhcmFtZXRlciBzcGVjaWZpZXMgdGhlIGRlZmF1bHQgZmllbGQgdmFsdWU8L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IHNlbGVjdGZvcm09IiIgLSBXaGVuIHVzaW5nIHRoZSAnc2VsZWN0JyBtb2RlLCB0aGlzIHBhcmFtZXRlciBpcyB0aGUgZm9ybWlkIG9mIHRoZSBwYXJlbnQgZm9ybS4gIFVzZWQgdG8gaGFuZGxlIHBhcmFtZXRlciBwYXNzaW5nPC9saT48bGk+PGVtPihvcHRpb25hbCk8L2VtPiBwcmVmaXg9IjAiIC0gQSBib29sZWFuIHRoYXQgaW5kaWNhdGVzIHdldGhlciBmaWxlIG5hbWVzIHNob3VsZCBiZSBwcmVmaXhlZDwvbGk+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gcHJlZml4X2ZldT0iMCIgLSBBIGJvb2xlYW4gcGFyYW1ldGVyIHRoYXQgaW5kaWNhdGVzIHRoYXQgdGhlIHByZWZpeCBzaG91bGQgYmUgdGFrZW4gZnJvbSB0aGUgY3VycmVudCBhdXRob3IsIGlmIG5vdCBzcGVjaWZpZWQsIHRoZSBwcmVmaXggaXMgdGhlIGN1cnJlbnQgdGltZSAoaW4gZGVjaGV4IGZvcm1hdCk8L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGRldGFpbHBhZ2U9IiIgLSBVc2VmdWwgZm9yIGRpc3BsYXlpbmcgYSBkZXRhaWwgcmVwb3J0IHVzaW5nIGEgZGlmZmVyZW50IHBhZ2UgdGVtcGxhdGUsIHRoaXMgcGFyYW1ldGVyIHRha2VzIHRoZSBwYWdlIGlkIG9yIHBhZ2UgYWxpYXMgb2YgYSBwYWdlIHRoYXQgc2hvdWxkIGJlIHVzZWQgdG8gZGlzcGxheSB0aGUgZGV0YWlsIHJlcG9ydDwvbGk+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gbGlzdGluZ3RlbXBsYXRlPSIiIC0gVGVtcGxhdGUgdG8gdXNlIGZvciBjYXRlZ29yeSBsaXN0aW5ncyBhZnRlciBjbGlja3Rocm91Z2ggZnJvbSBDYXRlZ29yeSBTdW1tYXJ5IHBhZ2U8L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGxpc3Rpbmdzb3J0b3JkZXI9IiIgLSBTb3J0IG9yZGVyIChhbGEgcGFyYW1fc29ydG9yZGVyKSB0byB1c2UgZm9yIGNhdGVnb3J5IGxpc3RpbmdzIGFmdGVyIGNsaWNrdGhyb3VnaCBmcm9tIENhdGVnb3J5IFN1bW1hcnkgcGFnZTwvbGk+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gc2VuZGZpbGVwYWdlPSIiIC0gU3BlY2lmeSB0aGUgcGFnZSBpZCBvciBhbGlhcyBvZiBhIHBhZ2UgdGhhdCBzaG91bGQgYmUgdXNlZCBmb3IgdGhlIHNlbmQgYSBmaWxlIGZvcm08L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGFjdGlvbj0iZGVmYXVsdCIgLSBTcGVjaWZpZXMgdGhlIGJlaGF2aW91ciBvZiB0aGUgbW9kdWxlIHRhZy4gIFBvc3NpYmxlIHZhbHVlcyBhcmU6IGRlZmF1bHQgLSAodGhlIGRlZmFmYXVsdCBiZWhhdmlvciksIGRldGFpbCAtIHRvIGRpc3BsYXkgYSBkZXRhaWwgdmlldyBvZiBhIHNpbmdsZSBmaWxlIGJhc2VkIG9uIHRoZSB1cGxvYWRfaWQsIGFuZCB5b3VzZW5kaXQgLSB0byBkaXNwbGF5IGEgZm9ybSB0byBhbGxvdyB1cGxvYWRpbmcgYSBmaWxlLCBhbmQgc2VuZGluZyBpdCB0byBudW1lcm91cyBhZGRyZXNzZXMgaW4gb25lIHN0ZXA8L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGZpZWxkbmFtZT0iIiAtIC0tIE1pc3NpbmcgTGFuZ3VhZ2VzdHJpbmcgLSBtb2R1bGU6VXBsb2FkcyBzdHJpbmc6cGFyYW1fZmllbGRuYW1lLS08L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGZpZWxkdmFsPSIiIC0gLS0gTWlzc2luZyBMYW5ndWFnZXN0cmluZyAtIG1vZHVsZTpVcGxvYWRzIHN0cmluZzpwYXJhbV9maWVsZHZhbC0tPC9saT48bGk+PGVtPihvcHRpb25hbCk8L2VtPiBmaWVsZG5hbWUyPSIiIC0gLS0gTWlzc2luZyBMYW5ndWFnZXN0cmluZyAtIG1vZHVsZTpVcGxvYWRzIHN0cmluZzpwYXJhbV9maWVsZG5hbWUtLTwvbGk+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gZmllbGR2YWwyPSIiIC0gLS0gTWlzc2luZyBMYW5ndWFnZXN0cmluZyAtIG1vZHVsZTpVcGxvYWRzIHN0cmluZzpwYXJhbV9maWVsZHZhbC0tPC9saT48L3VsPg==]]></help>
	<about><![CDATA[PGJyIC8+QXV0aG9yOiBjYWxndXkxMDAwICZsdDtjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnJmd0OzxiciAvPjxiciAvPlZlcnNpb246IDEuMTYuMTM8YnIgLz48YnIgLz5DaGFuZ2UgSGlzdG9yeTo8YnIgLz4vY2hhbmdlbG9nLmluYzxiciAvPg==]]></about>
	<description><![CDATA[A module that allows users to upload files, and allows you to manage them.]]></description>
	<requires>
	  <requiredname>CGExtensions</requiredname>
	  <requiredversion>1.36</requiredversion>
	</requires>
	<file>
	  <filename>/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/action.addcategory.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgPSBhbGxvdyB1c2VycyB0byB1cGxvYWQgc3R1ZmYsIGEgcHNldWRvIGZpbGUgbWFuYWdlciBtb2R1bGUKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6CS8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQppZiggIWlzc2V0KCRnQ21zKSApIGV4aXQ7CmlmKCAhJHRoaXMtPkNoZWNrUGVybWlzc2lvbiAoJ01hbmFnZSBVcGxvYWRzJykgKSByZXR1cm47CgovLyBwb3B1bGF0ZSB0aGUgdGVtcGxhdGUKJHNtYXJ0eS0+YXNzaWduICgndGl0bGUnLCAkdGhpcy0+TGFuZyAoJ2FkZGNhdGVnb3J5JykpOwokc21hcnR5LT5hc3NpZ24gKCdzdGFydGZvcm0nLCAkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0ICgkaWQsJ2RvX2FkZGNhdGVnb3J5JywkcmV0dXJuaWQpKTsKJHNtYXJ0eS0+YXNzaWduICgnZW5kZm9ybScsICR0aGlzLT5DcmVhdGVGb3JtRW5kICgpKTsKCiRyb3cgPSBhcnJheSgndXBsb2FkX2NhdGVnb3J5X2lkJz0+LTEsCgkgICAgICd1cGxvYWRfY2F0ZWdvcnlfbmFtZSc9PicnLAoJICAgICAndXBsb2FkX2NhdGVnb3J5X2Rlc2NyaXB0aW9uJz0+JycsCgkgICAgICd1cGxvYWRfY2F0ZWdvcnlfcGF0aCc9PicnLAoJICAgICAndXBsb2FkX2NhdGVnb3J5X2xpc3RhYmxlJz0+MSwKCSAgICAgJ3VwbG9hZF9jYXRlZ29yeV9ncm91cHMnPT4nJywKCSAgICAgJ3VwbG9hZF9jYXRlZ29yeV9kZWxldGFibGUnPT4wLAoJICAgICAndXBsb2FkX2NhdGVnb3J5X2V4cGlyZXNfaHJzJz0+MCwKCSAgICAgJ3VwbG9hZF9jYXRlZ29yeV9zY2FubmFibGUnPT4xLAoJICAgICAndXBsb2FkX2NhdGVnb3J5X3VzZXJwZXJtcyc9PjAsCgkgICAgICd1cGxvYWRfY2F0ZWdvcnlfZGZsdHVzZXJwZXJtcyc9PicnCgkgICAgICk7CiRzbWFydHktPmFzc2lnbignZGF0YScsJHJvdyk7CgokZmV1c2VycyA9ICR0aGlzLT5HZXRNb2R1bGVJbnN0YW5jZSgnRnJvbnRFbmRVc2VycycpOwppZiggJGZldXNlcnMgKSB7CiAgLy8gZ2V0IGEgbGlzdCBvZiB0aGUgZ3JvdXBzIGluIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZQogICRncm91cHMgPSAkZmV1c2Vycy0+R2V0R3JvdXBMaXN0KCk7CiAgJHNlbGdyb3VwcyA9IGFycmF5KCk7CiAgaWYoIGNvdW50KCRncm91cHMpID4gMCApIHsKICAgICRzbWFydHktPmFzc2lnbignZ3JvdXBsaXN0Jywkc2VsZ3JvdXBzKTsKICAgICRzbWFydHktPmFzc2lnbignZmV1X2dyb3VwcycsYXJyYXlfZmxpcCgkZ3JvdXBzKSk7CiAgfQp9CgovLyBEaXNwbGF5IHRoZSBwb3B1bGF0ZWQgdGVtcGxhdGUKZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlICgnYWRkY2F0ZWdvcnkudHBsJyk7CgovLyBFT0YKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.addfiletype.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojIEF1dGhvcjogUm9iZXJ0IENhbXBiZWxsIDxyb2JAdGVjaGNvbS5keW5kbnMub3JnPgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDoJLy93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgppZiggISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01hbmFnZSBVcGxvYWRzJykgKQogIHsKICAgIHJldHVybjsKICB9CgppZiggaXNzZXQoJHBhcmFtc1snY2FuY2VsJ10pICkKICB7CiAgICAkdGhpcy0+UmVkaXJlY3QoJGlkLCdkZWZhdWx0YWRtaW4nLCRyZXR1cm5pZCwkcGFyYW1zKTsKICB9CgokaWNvbmxpc3QgPSBhcnJheSgpOwokZGlyID0gZGlybmFtZShfX0ZJTEVfXykuRElSRUNUT1JZX1NFUEFSQVRPUi4naW1hZ2VzJzsKaWYoIGlzX2RpciggJGRpciApICkKICB7CiAgICBpZiggJGRoID0gb3BlbmRpcigkZGlyKSApCiAgICAgIHsKCXdoaWxlKCgkZmlsZSA9IHJlYWRkaXIoJGRoKSkgIT09IGZhbHNlKQoJICB7CgkgICAgaWYoIGlzX2ZpbGUoICRkaXIuRElSRUNUT1JZX1NFUEFSQVRPUi4kZmlsZSApICkKCSAgICAgIHsKCQkkaWNvbmxpc3RbJGZpbGVdID0gJGZpbGU7CgkgICAgICB9CgkgIH0KCWNsb3NlZGlyKCRkaCk7CiAgICAgIH0KCiAgfQoKJGhpZGRlbiA9ICcnOwokbmFtZSA9ICcnOwokZXh0ZW5zaW9ucyA9ICcnOwokZGVzY3JpcHRpb24gPSAnJzsKJGljb24gPSAnJzsKaWYoIGlzc2V0KCAkcGFyYW1zWyd0eXBlaWQnXSApICkKICB7CiAgICAvLyBnZXQgdGhlIGRhdGEgb3V0IG9mIHRoZSBkYXRhYmFzZSwgd2UncmUgb2J2aW91c2x5IGVkaXRpbmcgc29tZXRoaW5nCiAgICAkaGlkZGVuIC49ICR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsJ3R5cGVpZCcsJHBhcmFtc1sndHlwZWlkJ10pOwogICAgJHEgPSAiU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfZmlsZXR5cGVzIAogICAgICAgICAgIFdIRVJFIGlkID0gPyI7CiAgICAkcm93ID0gJGRiLT5HZXRSb3coICRxLCBhcnJheSggJHBhcmFtc1sndHlwZWlkJ10gKSApOwogICAgaWYoICEkcm93ICkKICAgICAgewoJJHRoaXMtPlNob3dFcnJvcnMoJHRoaXMtPkxhbmcoJ2Vycm9yX25vc3VjaHJvdycpKTsKCXJldHVybjsKICAgICAgfQogICAgJG5hbWUgPSAkcm93WyduYW1lJ107CiAgICAkZGVzY3JpcHRpb24gPSAkcm93WydkZXNjcmlwdGlvbiddOwogICAgJGV4dGVuc2lvbnMgPSAkcm93WydleHRlbnNpb25zJ107CiAgICAkaWNvbiA9ICRyb3dbJ2ltYWdlJ107CiAgfQoKLy8gaWYgaW4gdGhlIHBhcmFtcyBhcnJheSwgdGhlbiB0aGUgdmFsdWVzIGluIHRoZXJlCi8vIHdpbGwgb3ZlcnJpZGUgdGhvc2UgaW4gdGhlIGRhdGFiYXNlCmlmKCBpc3NldCgkcGFyYW1zWydpbnB1dF9uYW1lJ10pICkKICB7CiAgICAkbmFtZSA9ICRwYXJhbXNbJ2lucHV0X25hbWUnXTsKICB9CmlmKCBpc3NldCgkcGFyYW1zWydpbnB1dF9kZXNjcmlwdGlvbiddKSApCiAgewogICAgJGRlc2NyaXB0aW9uID0gJHBhcmFtc1snaW5wdXRfZGVzY3JpcHRpb24nXTsKICB9CmlmKCBpc3NldCgkcGFyYW1zWydpbnB1dF9leHRlbnNpb25zJ10pICkKICB7CiAgICAkZXh0ZW5zaW9ucyA9ICRwYXJhbXNbJ2lucHV0X2V4dGVuc2lvbnMnXTsKICB9CmlmKCBpc3NldCgkcGFyYW1zWydpbnB1dF9pY29uJ10pICkKICB7CiAgICAkaWNvbiA9ICRwYXJhbXNbJ2lucHV0X2ljb24nXTsKICB9CgppZiggaXNzZXQoJHBhcmFtc1snc3VibWl0J10pICkKICB7CiAgICAvLyB0aGUgZm9ybSB3YXMgc3VibWl0dGVkCiAgICBpZiggdHJpbSgkbmFtZSkgPT0gJycgKQogICAgICB7CgkkdGhpcy0+U2hvd0Vycm9ycygnZXJyb3JfbWlzc2luZ25hbWUnKTsKICAgICAgfQogICAgZWxzZSBpZiggdHJpbSgkZXh0ZW5zaW9ucykgPT0gJycgKQogICAgICB7CgkkdGhpcy0+U2hvd0Vycm9ycygnZXJyb3JfbWlzc2luZ2V4dGVuc2lvbnMnKTsKICAgICAgfQogICAgZWxzZSBpZiggdHJpbSgkaWNvbikgPT0gJycgKQogICAgICB7CgkkdGhpcy0+U2hvd0Vycm9ycygnZXJyb3JfbWlzc2luZ2ljb24nKTsKICAgICAgfQogICAgZWxzZQogICAgICB7CglpZiggaXNzZXQoJHBhcmFtc1sndHlwZWlkJ10pICkKCSAgewoJICAgIC8vIFVwZGF0ZSBhbiBleGlzdGluZyByZWNvcmQKCSAgICAkcSA9ICJVUERBVEUgIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX2ZpbGV0eXBlcwogICAgICAgICAgICAgICAgICAgICBTRVQgbmFtZT0/LGRlc2NyaXB0aW9uPT8sZXh0ZW5zaW9ucz0/LGltYWdlPT8KICAgICAgICAgICAgICAgICAgIFdIRVJFIGlkID0gPyI7CgkgICAgJGRiLT5FeGVjdXRlKCAkcSwgYXJyYXkoIHRyaW0oJG5hbWUpLCB0cmltKCRkZXNjcmlwdGlvbiksIAoJCQkJICAgICB0cmltKCRleHRlbnNpb25zKSwgdHJpbSgkaWNvbiksCgkJCQkgICAgICRwYXJhbXNbJ3R5cGVpZCddICkgKTsKCSAgfQoJZWxzZQoJICB7CgkgICAgLy8KCSAgICAvLyBJbnNlcnQgYSBuZXcgcmVjb3JkCgkgICAgLy8KCgkgICAgLy8gR2V0IGEgbmV3IElECgkgICAgJG5ld2lkID0gJGRiLT5HZW5JRChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX2ZpbGV0eXBlc19zZXEiKTsKCSAgICAKCSAgICAvLyBGaW5kIHRoZSBtYXhpbXVtIHNvcnQgb3JkZXIKCSAgICAkdHEgPSAiU0VMRUNUIG1heChzb3J0b3JkZXIpIGFzIHNvcnRvcmRlciBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc19maWxldHlwZXMiOwoJICAgICRyb3cgPSAkZGItPkdldFJvdyggJHRxICk7CgkgICAgCgkgICAgJHEgPSAiSU5TRVJUIElOVE8gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX2ZpbGV0eXBlcwogICAgICAgICAgICAgIChpZCxzb3J0b3JkZXIsbmFtZSxkZXNjcmlwdGlvbixleHRlbnNpb25zLGltYWdlKSBWQUxVRVMgKD8sPyw/LD8sPyw/KSI7CgkgICAgJGRiLT5FeGVjdXRlKCAkcSwgYXJyYXkoJG5ld2lkLCRyb3dbJ3NvcnRvcmRlciddKzEsCgkJCQkgICAgdHJpbSgkbmFtZSksdHJpbSgkZGVzY3JpcHRpb24pLAoJCQkJICAgIHRyaW0oJGV4dGVuc2lvbnMpLHRyaW0oJGljb24pKSk7CgkgIH0KCgkvLyByZWRpcmVjdCBiYWNrIHRvIHRoZSB0YWIKCSR0aGlzLT5SZWRpcmVjdCgkaWQsJ2RlZmF1bHRhZG1pbicsJHJldHVybmlkLCRwYXJhbXMpOwogICAgICB9CiAgfQoKJHNtYXJ0eS0+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+R2V0VXBsb2FkRGV0YWlscygkdXBsb2FkX2lkKTsKCiMKIyBIYW5kbGUgZm9ybSBkYXRhCiMKaWYoIGlzc2V0KCRwYXJhbXNbJ2NhbmNlbCddKSApCiAgewoJCSR0aGlzLT5SZWRpcmVjdCgkaWQsJ2FkbWluX21hbmFnZV90aW1lbGltaXRlZCcsJHJldHVybmlkLAoJCQkJCQkJCQkJYXJyYXkoJ3VwbG9hZF9pZCc9PiR1cGxvYWRfaWQpKTsKICB9CmVsc2UgaWYoIGlzc2V0KCRwYXJhbXNbJ3N1Ym1pdCddKSApCiAgewogICAgJGhvdXJzID0gKGludCkkcGFyYW1zWydob3VycyddOwogICAgJGRvd25sb2FkcyA9IChpbnQpJHBhcmFtc1snZG93bmxvYWRzJ107CiAgICAkZW1haWwgPSB0cmltKCRwYXJhbXNbJ2VtYWlsJ10pOwoJCWlmKCBpc3NldCgkcGFyYW1zWydzZW5kaXQnXSkgKQoJCQl7CgkJCQkkc2VuZGl0ID0gKGludCkkcGFyYW1zWydzZW5kaXQnXTsKCQkJfQoKICAgIGlmKCBlbXB0eSgkZW1haWwpICkKICAgICAgewoJCQkJJGVycm9yc1tdID0gJHRoaXMtPkxhbmcoJ2Vycm9yX21pc3NpbmdfaW52YWxpZCcsJHRoaXMtPkxhbmcoJ2VtYWlsX2FkZHJlc3MnKSk7CiAgICAgIH0KICAgIGlmKCAkZG93bmxvYWRzIDwgMCApCiAgICAgIHsKCQkJCSRlcnJvcnNbXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9taXNzaW5nX2ludmFsaWQnLCR0aGlzLT5MYW5nKCdudW1fZG93bmxvYWRzJykpOwogICAgICB9CiAgICBpZiggJGhvdXJzIDwgMCApCiAgICAgIHsKCQkJCSRlcnJvcnNbXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9taXNzaW5nX2ludmFsaWQnLCR0aGlzLT5MYW5nKCdudW1faG91cnMnKSk7CiAgICAgIH0KCiAgICBpZiggZW1wdHkoJGVycm9ycykgKQogICAgICB7CgkJCQkkbm93ID0gJGRiLT5EYlRpbWVTdGFtcCh0aW1lKCkpOwoJCQkJaWYoICRob3VycyA+IDAgKQoJCQkJCXsKCQkJCQkJJGV4cGlyZXMgPSAkZGItPkRiVGltZVN0YW1wKHN0cnRvdGltZSgnKycuJGhvdXJzLicgaG91cnMnKSk7CgkJCQkJfQoJCQkJJHVybGtleSA9IHN1YnN0cihzdHJfc2h1ZmZsZShtZDUodGltZSgpLiR1cGxvYWRfaWQuJHVwbG9hZFsndXBsb2FkX25hbWUnXS4kbm93LiRlbWFpbC4kZXhwaXJlcykpLDAsMTYpOwoJCQkJJGRiciA9ICcnOwoJCQkJaWYoICRob3VycyA+IDAgKQoJCQkJCXsKCQkJCQkJJHF1ZXJ5ID0gJ0lOU0VSVCBJTlRPICcuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc190aW1lbGltaXQgCiAgICAgICAgICAgICAgICAgICAgICAodXBsb2FkX2lkLGVtYWlsLHVybF9rZXksY3JlYXRlZCxleHBpcmVzLG1heF9kb3dubG9hZHMpCiAgICAgICAgICAgICAgICAgICAgICBWQUxVRVMgKD8sPyw/LCRub3csJGV4cGlyZXMsPykiOwoJCQkJCQkkZGJyID0gJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkdXBsb2FkX2lkLCRlbWFpbCwkdXJsa2V5LCRkb3dubG9hZHMpKTsKCQkJCQl9CgkJCQllbHNlCgkJCQkJewoJCQkJCQkkcXVlcnkgPSAnSU5TRVJUIElOVE8gJy5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX3RpbWVsaW1pdCAKICAgICAgICAgICAgICAgICAgICAgICh1cGxvYWRfaWQsZW1haWwsdXJsX2tleSxjcmVhdGVkLG1heF9kb3dubG9hZHMpCiAgICAgICAgICAgICAgICAgICAgICBWQUxVRVMgKD8sPyw/LCRub3csPykiOwoJCQkJCQkkZGJyID0gJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkdXBsb2FkX2lkLCRlbWFpbCwkdXJsa2V5LCRkb3dubG9hZHMpKTsKCQkJCQl9CgkJCQlpZiggISRkYnIgKQoJCQkJCXsKCQkJCQkJZGllKCRkYi0+c3FsLic8YnIvPicuJGRiLT5FcnJvck1zZygpKTsKCQkJCQkJJGVycm9yc1tdID0gJHRoaXMtPkxhbmcoJ2Vycm9yX2RiZXJyb3InKTsKCQkJCQl9CgkJCX0KCgkJaWYoIGVtcHR5KCRlcnJvcnMpICYmICRzZW5kaXQgKQoJCQl7CgkJCQkvLyBtYXliZSBzZW5kIGFuIGVtYWlsCgkJCQkkY21zbWFpbGVyID0gJHRoaXMtPkdldE1vZHVsZUluc3RhbmNlKCdDTVNNYWlsZXInKTsKCQkJCWlmKCAkY21zbWFpbGVyICkKCQkJCQl7CgkJCQkJCSRwYWdlaWQgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZGVmYXVsdF9zZW5kZmlsZXBhZ2UnKTsKCQkJCQkJaWYoICRwYWdlaWQgPD0gMCApCgkJCQkJCQl7CgkJCQkJCQkJJGNvbnRlbnRvcHMgPSAkZ0Ntcy0+R2V0Q29udGVudE9wZXJhdGlvbnMoKTsKCQkJCQkJCQkkcGFnZWlkID0gJGNvbnRlbnRvcHMtPkdldERlZmF1bHRDb250ZW50KCk7CgkJCQkJCQl9CgkJCQkJCQoJCQkJCQkkdG1wID0gJHRoaXMtPkdldFVwbG9hZERldGFpbHMoJHVwbG9hZF9pZCwkcGFnZWlkKTsKCQkJCQkJJHRtcFsnZG93bmxvYWRfdXJsJ10gPSAkdGhpcy0+Q3JlYXRlVVJMKCRpZCwnZ2V0ZmlsZScsJHBhZ2VpZCwKCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQlhcnJheSgndXJsX2tleSc9PiR1cmxrZXkpLAoJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCWZhbHNlLAoJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCSR0aGlzLT5fZ2V0VGltZUxpbWl0ZWRVUkwoJHVybGtleSkpOwoKCQkJCQkJJHVwbG9hZF9pbmYgPSBuZXcgU3RkQ2xhc3MoKTsKCQkJCQkJZm9yZWFjaCggJHRtcCBhcyAka2V5ID0+ICR2YWx1ZSApCgkJCQkJCQl7CgkJCQkJCQkJaWYoIHN0YXJ0c3dpdGgoJGtleSwndXBsb2FkXycpICkKCQkJCQkJCQkJewoJCQkJCQkJCQkJJGtleSA9IHN1YnN0cigka2V5LDcpOwoJCQkJCQkJCQl9CgkJCQkJCQkJaWYoICFlbXB0eSgkdmFsdWUpICkKCQkJCQkJCQkJewoJCQkJCQkJCQkJJHVwbG9hZF9pbmZvLT4ka2V5ID0gJHZhbHVlOwoJCQkJCQkJCQl9CgkJCQkJCQl9CgkJCQkJCSRzbWFydHktPmFzc2lnbignZW50cnknLCR1cGxvYWRfaW5mbyk7CgkJCQkJCSRzbWFydHktPmFzc2lnbignbm90ZXMnLCcnKTsKCQkJCQkJaWYoICRkb3dubG9hZHMgKQoJCQkJCQkJewoJCQkJCQkJCSRzbWFydHktPmFzc2lnbignZG93bmxvYWRzJywkZG93bmxvYWRzKTsKCQkJCQkJCX0KCQkJCQkJaWYoICRob3VycyApCgkJCQkJCQl7CgkJCQkJCQkJJHNtYXJ0eS0+YXNzaWduKCdob3VycycsJGhvdXJzKTsKCQkJCQkJCX0KCgkJCQkJCSRzdWJqZWN0X3RwbCA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCd0aW1lbGltaXRlZF9zdWJqZWN0JywKCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJJHRoaXMtPkxhbmcoJ2RmbHRfdGltZWxpbWl0ZWRfc3ViamVjdCcpKTsKCQkJCQkJJHN1YmplY3QgPSAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlRnJvbURhdGEoJHN1YmplY3RfdHBsKTsKCgkJCQkJCSRjbXNtYWlsZXItPnJlc2V0KCk7CgkJCQkJCSRjbXNtYWlsZXItPlNldFN1YmplY3QoJHN1YmplY3QpOwoJCQkJCQkkY21zbWFpbGVyLT5Jc0hUTUwodHJ1ZSk7CgkJCQkJCSRjbXNtYWlsZXItPkFkZEFkZHJlc3MoJGVtYWlsKTsKCQkJCQkJJGJvZHkgPSAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlRnJvbURhdGFiYXNlKCd1cGxvYWRfc2VuZGZpbGVycHQnKTsKCQkJCQkJJGNtc21haWxlci0+U2V0Qm9keSgkYm9keSk7CgkJCQkJCSRjbXNtYWlsZXItPlNlbmQoKTsKCQkJCQl9CgkJCX0KCQkJCQoKCQlpZiggZW1wdHkoJGVycm9ycykgKQoJCQl7CgkJCQkvLyBkb25lLgoJCQkJJHRoaXMtPlNldE1lc3NhZ2UoJHRoaXMtPkxhbmcoJ3RpbWVfbGltaXRlZF9rZXlfYWRkZWQnKSk7CgkJCQkkdGhpcy0+UmVkaXJlY3QoJGlkLCdhZG1pbl9tYW5hZ2VfdGltZWxpbWl0ZWQnLCRyZXR1cm5pZCwKCQkJCQkJCQkJCQkJYXJyYXkoJ3VwbG9hZF9pZCc9PiR1cGxvYWRfaWQpKTsKCQkJfQogIH0KCiMKIyBHaXZlIEV2ZXJ5dGhpbmcgdG8gU21hcnR5CiMKaWYoIGNvdW50KCRlcnJvcnMpICkKICB7CiAgICBlY2hvICR0aGlzLT5TaG93RXJyb3JzKCRlcnJvcnMpOwogIH0KJHNtYXJ0eS0+YXNzaWduKCdmb3Jtc3RhcnQnLCR0aGlzLT5DR0NyZWF0ZUZvcm1TdGFydCgkaWQsJ2FkbWluX2FkZF90aW1lbGltaXRlZCcsJHJldHVybmlkLAoJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCSBhcnJheSgndXBsb2FkX2lkJz0+JHVwbG9hZF9pZCkpKTsKJHNtYXJ0eS0+YXNzaWduKCdmb3JtZW5kJywkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsKJHNtYXJ0eS0+YXNzaWduKCd1cGxvYWQnLCR1cGxvYWQpOwokc21hcnR5LT5hc3NpZ24oJ2VtYWlsJywkZW1haWwpOwokc21hcnR5LT5hc3NpZ24oJ2hvdXJzJywkaG91cnMpOwokc21hcnR5LT5hc3NpZ24oJ2Rvd25sb2FkcycsJGRvd25sb2Fkcyk7CgojCiMgRGlzcGxheSB0aGUgdGVtcGxhdGUKIwplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ2FkbWluX2FkZF90aW1lbGltaXRlZC50cGwnKTsKCiMKIyBFT0YKIwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.admin_ajax_ops.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojIEF1dGhvcjogUm9iZXJ0IENhbXBiZWxsIDxyb2JAdGVjaGNvbS5keW5kbnMub3JnPgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDoJLy93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKaWYoICFpc3NldCgkcGFyYW1zWydvcCddKSApIHJldHVybjsKCiRvdXRwdXQgPSBudWxsOwpzd2l0Y2goICRwYXJhbXNbJ29wJ10gKSB7CiBjYXNlICd1c2VyX2F1dG9jb21wbGV0ZSc6CiAgICR0ZXJtID0gdHJpbSgkcGFyYW1zWyd0ZXJtJ10pOwogICBpZiggISR0ZXJtICkgYnJlYWs7CiAgICRxdWVyeSA9ICdTRUxFQ1QgdXNlcm5hbWUgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfdXNlcnMgV0hFUkUgdXNlcm5hbWUgTElLRSA/JzsKICAgaWYoIHN0cnBvcygkdGVybiwnKicpID09PSBGQUxTRSApICR0ZXJtIC49ICclJzsKICAgJHRlcm0gPSBzdHJfcmVwbGFjZSgnKicsJyUnLCR0ZXJtKTsKICAgJHRlcm0gPSBzdHJfcmVwbGFjZSgnJSUnLCclJywkdGVybSk7CiAgICRyZXMgPSAkZGItPkdldENvbCgkcXVlcnksYXJyYXkoJHRlcm0pKTsKICAgaWYoIGlzX2FycmF5KCRyZXMpICYmIGNvdW50KCRyZXMpICkgewogICAgICRvdXRwdXQgPSAkcmVzOwogICB9CiAgIGJyZWFrOwoKIGNhc2UgJ2ZpbGVfYXV0b2NvbXBsZXRlJzoKICAgJHRlcm0gPSB0cmltKCRwYXJhbXNbJ3Rlcm0nXSk7CiAgIGlmKCAhJHRlcm0gKSBicmVhazsKICAgJHF1ZXJ5ID0gJ1NFTEVDVCBESVNUSU5DVCB1cGxvYWRfbmFtZSBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2FkcyBXSEVSRSB1cGxvYWRfbmFtZSBMSUtFID8nOwogICBpZiggc3RycG9zKCR0ZXJuLCcqJykgPT09IEZBTFNFICkgJHRlcm0gLj0gJyUnOwogICAkdGVybSA9IHN0cl9yZXBsYWNlKCcqJywnJScsJHRlcm0pOwogICAkdGVybSA9IHN0cl9yZXBsYWNlKCclJScsJyUnLCR0ZXJtKTsKICAgJHJlcyA9ICRkYi0+R2V0Q29sKCRxdWVyeSxhcnJheSgkdGVybSkpOwogICBpZiggaXNfYXJyYXkoJHJlcykgJiYgY291bnQoJHJlcykgKSB7CiAgICAgJG91dHB1dCA9ICRyZXM7CiAgIH0KICAgYnJlYWs7CgogZGVmYXVsdDoKICAgLy8gZG8gbm90aGluZwogICBicmVhazsKfQoKJGhhbmRsZXJzID0gb2JfbGlzdF9oYW5kbGVycygpOyAKZm9yICgkY250ID0gMDsgJGNudCA8IHNpemVvZigkaGFuZGxlcnMpOyAkY250KyspIHsgb2JfZW5kX2NsZWFuKCk7IH0KaWYoIGlzc2V0KCRwYXJhbXNbJ2pzb24nXSkgJiYgJHBhcmFtc1snanNvbiddICkgewogICRvdXRwdXQgPSBqc29uX2VuY29kZSgkb3V0cHV0KTsKICBoZWFkZXIoJ0NvbnRlbnQtVHlwZTogYXBwbGljYXRpb24vanNvbicpOwp9CmVjaG8gJG91dHB1dDsKZXhpdDsKIwojIEVPRgojCj8+]]></data>
	</file>
	<file>
	  <filename>/action.admin_copycategory.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLXNldC1zdHlsZTpsaW51eDsgdGFiLXdpZHRoOjI7IGluZGVudC10YWJzLW1vZGU6dDsgYy1iYXNpYy1vZmZzZXQ6IDI7IC0qLQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogVXBsb2FkcyAtPSBhbGxvdyB1c2VycyB0byB1cGxvYWQgc3R1ZmYsIGEgcHNldWRvIGZpbGUgbWFuYWdlciIgbW9kdWxlCiMgQXV0aG9yOiBSb2JlcnQgQ2FtcGJlbGwgPHJvYkB0ZWNoY29tLmR5bmRucy5vcmc+CiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOgkvL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KaWYoICFpc3NldCgkZ0NtcykgKSBleGl0OwppZiAoISR0aGlzLT5DaGVja1Blcm1pc3Npb24gKCdNYW5hZ2UgVXBsb2FkcycpKSBleGl0OwoKLy8KLy8gaW5pdGlhbGl6ZQovLwokdGhpcy0+U2V0Q3VycmVudFRhYignY2F0ZWdvcmllcycpOwokZGVzdF9jYXRuYW1lID0gJyc7CiRkZXN0X2NhdGRlc2MgPSAnJzsKJGRlc3RfY2F0cGF0aCA9ICcnOwokb3JpZ19jYXRfaWQgPSAnJzsKJGNvbmZpZyA9ICRnQ21zLT5HZXRDb25maWcoKTsKJHNyY2RpciA9ICcnOwokZGVzdGRpciA9ICcnOwokY2F0aWQgPSAnJzsKJGF1dGhvciA9ICRfU0VTU0lPTlsnY21zX2FkbWluX3VzZXJuYW1lJ107CiRjb3B5ZmlsZXMgPSAwOwoKLy8KLy8gc2V0dXAKLy8KaWYoICFpc3NldCgkcGFyYW1zWydjYXRlZ29yeV9pZCddKSApIHsKCSR0aGlzLT5TZXRFcnJvcigkdGhpcy0+TGFuZygnZXJyb3JfbWlzc2luZ3BhcmFtJykpOwoJJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkKTsKfQokY2F0ZWdvcnlfaWQgPSAoaW50KSRwYXJhbXNbJ2NhdGVnb3J5X2lkJ107CiRjYXRlZ29yeSA9IFVwbG9hZHM6OmxvYWRfY2F0ZWdvcnlfYnlfaWQoJGNhdGVnb3J5X2lkKTsKaWYoICEkY2F0ZWdvcnkgKSB7CgkkdGhpcy0+U2V0RXJyb3IoJHRoaXMtPkxhbmcoJ2Vycm9yX21pc3NpbmdwYXJhbScpKTsKCSR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCk7Cn0KCi8vCi8vIGhhbmRsZSBmb3JtIGRhdGEKLy8KaWYoIGlzc2V0KCRwYXJhbXNbJ2NhbmNlbCddKSApIHsKCSR0aGlzLT5TZXRNZXNzYWdlKCR0aGlzLT5MYW5nKCdvcGVyYXRpb25fY2FuY2VsbGVkJykpOwoJJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkKTsKfQplbHNlIGlmKCBpc3NldCgkcGFyYW1zWydzdWJtaXQnXSkgKSB7CgkvLyBzdWJtaXQgcHJlc3NlZC4KCgkvLyBnZXQgdGhlIHBhcmFtZXRlcnMKCWlmKCBpc3NldCgkcGFyYW1zWydjYXRlZ29yeV9uYW1lJ10pICkJJGRlc3RfY2F0bmFtZSA9IHRyaW0oJHBhcmFtc1snY2F0ZWdvcnlfbmFtZSddKTsKCWlmKCBpc3NldCgkcGFyYW1zWydjYXRlZ29yeV9kZXNjJ10pICkgJGRlc3RfY2F0ZGVzYyA9IHRyaW0oJHBhcmFtc1snY2F0ZWdvcnlfZGVzYyddKTsKCWlmKCBpc3NldCgkcGFyYW1zWydjYXRlZ29yeV9wYXRoJ10pICkJJGRlc3RfY2F0cGF0aCA9IHRyaW0oJHBhcmFtc1snY2F0ZWdvcnlfcGF0aCddKTsKCSRjb3B5ZmlsZXMgPSAoaW50KSRwYXJhbXNbJ2NvcHlmaWxlcyddOwoKCVVwbG9hZHM6OmxvYWRfYWRtaW4oKTsKCSRlcnJvciA9IF91cGxvYWRzX0NvcHlDYXRlZ29yeSgkdGhpcywkY2F0ZWdvcnlfaWQsCgkJCQkJCQkJCQkJCQkJCQkgJGRlc3RfY2F0bmFtZSwKCQkJCQkJCQkJCQkJCQkJCSAkZGVzdF9jYXRwYXRoLAoJCQkJCQkJCQkJCQkJCQkJICRkZXN0X2NhdGRlc2MsCgkJCQkJCQkJCQkJCQkJCQkgJGNvcHlmaWxlcywgdHJ1ZSk7CglpZiggZW1wdHkoJGVycm9yKSApIHsKCQkkdGhpcy0+U2V0TWVzc2FnZSgkdGhpcy0+TGFuZygnY2F0ZWdvcnlfY29waWVkJykpOwoJCSR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCk7Cgl9CgkJCgllY2hvICR0aGlzLT5TaG93RXJyb3JzKCRlcnJvcik7CQkJCn0gLy8gb24gc3VibWl0CgovLwovLyBnaXZlIGV2ZXJ5dGhpbmcgdG8gc21hcnR5Ci8vCiRzbWFydHktPmFzc2lnbignY2F0ZWdvcnknLCRjYXRlZ29yeSk7CiRzbWFydHktPmFzc2lnbignZm9ybXN0YXJ0JywkdGhpcy0+Q0dDcmVhdGVGb3JtU3RhcnQoJGlkLCdhZG1pbl9jb3B5Y2F0ZWdvcnknLCRyZXR1cm5pZCwkcGFyYW1zKSk7CiRzbWFydHktPmFzc2lnbignZm9ybWVuZCcsJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7CgovLwovLyBkaXNwbGF5IHRoZSB0ZW1wbGF0ZQovLwplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ2FkbWluX2NvcHljYXRlZ29yeS50cGwnKTsKCiMKIyBFT0YKIwo/Pg==]]></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+RGJUaW1lU3RhbXAodGltZSgpKTsKJHF1ZXJ5ID0gJ1NFTEVDVCAqIEZST00gJy5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX3RpbWVsaW1pdAogICAgICAgICAgV0hFUkUgdXBsb2FkX2lkID0gPwogICAgICAgICAgQU5EICgoZXhwaXJlcyA+ICRub3cpIE9SIChleHBpcmVzIElTIE5VTEwpKSI7CiR0ZGF0YSA9ICRkYi0+R2V0QXJyYXkoJHF1ZXJ5LGFycmF5KCRwYXJhbXNbJ3VwbG9hZF9pZCddKSk7CiRkYXRhID0gYXJyYXkoKTsKaWYoICR0ZGF0YSApCgl7CgkJZm9yKCAkaSA9IDA7ICRpIDwgY291bnQoJHRkYXRhKTsgJGkrKyApCgkJCXsKCQkJCSRyZWMgPSYgJHRkYXRhWyRpXTsKCQkJCWlmKCBpc19udWxsKCRyZWNbJ3VybF9rZXknXSkgKSBjb250aW51ZTsKCgkJCQkkcTIgPSAnU0VMRUNUIENPVU5UKGZpbGVfaWQpIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzX2Rvd25sb2FkcwogICAgICAgICAgICAgICAgV0hFUkUgZmlsZV9pZCA9ID8gQU5EIHVybF9rZXkgPSA/JzsKCQkJCSRyZWNbJ2Rvd25sb2FkcyddID0gJGRiLT5HZXRPbmUoJHEyLGFycmF5KCRyZWNbJ3VwbG9hZF9pZCddLCRyZWNbJ3VybF9rZXknXSkpOwoJCQkJJHJlY1snZG93bmxvYWRfdXJsJ10gPSAkdGhpcy0+Q3JlYXRlVVJMKCRpZCwnZ2V0ZmlsZScsJHJldHVybmlkLAoJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQlhcnJheSgndXJsX2tleSc9PiRyZWNbJ3VybF9rZXknXSksCgkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCWZhbHNlLAoJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkkdGhpcy0+X2dldFRpbWVMaW1pdGVkVVJMKCRyZWNbJ3VybF9rZXknXSkpOwoJCQkJJHJlY1snZGVsZXRlX2xpbmsnXSA9ICR0aGlzLT5DcmVhdGVJbWFnZUxpbmsoJGlkLCdhZG1pbl9kZWxfdGltZWxpbWl0ZWQnLAoJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCSAkcmV0dXJuaWQsCgkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJICR0aGlzLT5MYW5nKCdkZWxldGUnKSwKCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkgJ2ljb25zL3N5c3RlbS9kZWxldGUuZ2lmJywKCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkgYXJyYXkoJ3VwbG9hZF9pZCc9PiRwYXJhbXNbJ3VwbG9hZF9pZCddLAoJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCSAndGxfaWQnPT4kcmVjWyd0bGtleV9pZCddKSk7CgoJCQkJJGRhdGFbXSA9ICRyZWM7CgkJCX0KCgkJaWYoICRkYXRhICkKCQkJewoJCQkJJHNtYXJ0eS0+YXNzaWduKCdkYXRhJywkZGF0YSk7CgkJCX0KCX0KCiRzbWFydHktPmFzc2lnbignYmFja19saW5rJywkdGhpcy0+Q3JlYXRlSW1hZ2VMaW5rKCRpZCwnZGVmYXVsdGFkbWluJywkcmV0dXJuaWQsCgkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkgJHRoaXMtPkxhbmcoJ2xibF9iYWNrJyksCgkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkgJ2ljb25zL3N5c3RlbS9iYWNrLmdpZicsCgkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkgYXJyYXkoKSwgJycsICcnLCBmYWxzZSkpOwoKZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCdhZG1pbl9tYW5hZ2VfdGltZWxpbWl0ZWQudHBsJyk7CiMKIyBFT0YKIwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.admin_multicategory.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLXNldC1zdHlsZTpsaW51eDsgdGFiLXdpZHRoOjI7IGluZGVudC10YWJzLW1vZGU6dDsgYy1iYXNpYy1vZmZzZXQ6IDI7IC0qLQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogVXBsb2FkcyAtPSBhbGxvdyB1c2VycyB0byB1cGxvYWQgc3R1ZmYsIGEgcHNldWRvIGZpbGUgbWFuYWdlciIgbW9kdWxlCiMgQXV0aG9yOiBSb2JlcnQgQ2FtcGJlbGwgPHJvYkB0ZWNoY29tLmR5bmRucy5vcmc+CiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOgkvL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KaWYoICFpc3NldCgkZ0NtcykgKSBleGl0OwppZiAoISR0aGlzLT5DaGVja1Blcm1pc3Npb24gKCdNYW5hZ2UgVXBsb2FkcycpKSBleGl0OwoKLy8KLy8gaW5pdGlhbGl6YXRpb24KLy8KJHRoaXMtPlNldEN1cnJlbnRUYWIoJ2NhdGVnb3JpZXMnKTsKaWYoIGlzc2V0KCRwYXJhbXNbJ2NhbmNlbCddKSApCgl7CgkJJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkKTsKCX0KaWYoICFpc3NldCgkcGFyYW1zWydjYXRfbXVsdGlzZWxlY3QnXSkgJiYgIWlzc2V0KCRwYXJhbXNbJ2J1bGtjb3B5X3N1Ym1pdCddKSApCgl7CgkJJHRoaXMtPlNldEVycm9yKCR0aGlzLT5MYW5nKCdlcnJvcl9ub3RoaW5nX3NlbGVjdGVkJykpOwoJCSR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCk7Cgl9Cgpzd2l0Y2goICRwYXJhbXNbJ211bHRpYWN0aW9uJ10gKQoJewoJY2FzZSAnZGVsZXRlJzoKCQlmb3JlYWNoKCAkcGFyYW1zWydjYXRfbXVsdGlzZWxlY3QnXSBhcyAkb25lY2F0ZWdvcnkgKQoJCQl7CgkJCQkkbXNnID0gJHRoaXMtPl9BZG1pbkRvRGVsZXRlQ2F0ZWdvcnkoJG9uZWNhdGVnb3J5KTsKCQkJCWlmKCAkbXNnICkKCQkJCQl7CgkJCQkJCSR0aGlzLT5TZXRFcnJvcigkbXNnKTsKCQkJCQkJJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkKTsKCQkJCQl9CgkJCX0KCQlicmVhazsKCgljYXNlICdjb3B5JzoKCQl7CgkJCWlmKCBpc3NldCgkcGFyYW1zWydidWxrY29weV9zdWJtaXQnXSkgKQoJCQkJewoJCQkJCS8vIGRvIGRhdGEgdmFsaWRhdGlvbgoJCQkJCSRlcnJvciA9ICcnOwoJCQkJCWlmKCAhaXNzZXQoJHBhcmFtc1snY29weWNhdGVnb3J5J10pICkKCQkJCQkJewoJCQkJCQkJJGVycm9yID0gJHRoaXMtPkxhbmcoJ2Vycm9yX21pc3NpbmdfaW52YWxpZCcsJ2NvcHljYXRlZ29yeScpOwoJCQkJCQl9CgoJCQkJCWlmKCBlbXB0eSgkZXJyb3IpICkKCQkJCQkJewoJCQkJCQkJZm9yZWFjaCggJHBhcmFtc1snY29weWNhdGVnb3J5J10gYXMgJGNhdGVnb3J5X2lkID0+ICYkb25lY2F0ICkKCQkJCQkJCQl7CgkJCQkJCQkJCSRvbmVjYXRbJ25hbWUnXSA9IHRyaW0oJG9uZWNhdFsnbmFtZSddKTsKCQkJCQkJCQkJJG9uZWNhdFsnZGVzY3JpcHRpb24nXSA9IHRyaW0oJG9uZWNhdFsnZGVzY3JpcHRpb24nXSk7CgkJCQkJCQkJCSRvbmVjYXRbJ3BhdGgnXSA9IHRyaW0oJG9uZWNhdFsncGF0aCddKTsKCgkJCQkJCQkJCVVwbG9hZHM6OmxvYWRfYWRtaW4oKTsKCQkJCQkJCQkJJGVycm9yID0gX3VwbG9hZHNfQ29weUNhdGVnb3J5KCR0aGlzLCRjYXRlZ29yeV9pZCwKCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJICRvbmVjYXRbJ25hbWUnXSwKCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJICRvbmVjYXRbJ3BhdGgnXSwKCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJICRvbmVjYXRbJ2Rlc2NyaXB0aW9uJ10sCgkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCSAkb25lY2F0Wydkb2ZpbGVzJ10sCgkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCSB0cnVlKTsKCQkJCQkJCQkJaWYoICRlcnJvciApIGJyZWFrOwoJCQkJCQkJCX0KCQkJCQkJfQoKCQkJCQlpZiggIWVtcHR5KCRlcnJvcikgKQoJCQkJCQl7CgkJCQkJCQkkdGhpcy0+U2V0RXJyb3IoJGVycm9yKTsKCQkJCQkJfQoKCQkJCQkkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQpOwoJCQkJCQoJCQkJfSAvLyBzdWJtaXQKCgkJCSRxdWVyeSA9ICdTRUxFQ1QgKiBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2Fkc19jYXRlZ29yaWVzCiAgICAgICAgICAgICAgICAgV0hFUkUgdXBsb2FkX2NhdGVnb3J5X2lkIElOICgnLmltcGxvZGUoJywnLCRwYXJhbXNbJ2NhdF9tdWx0aXNlbGVjdCddKS4nKSc7CgkJCSR0bXAgPSAkZGItPkdldEFycmF5KCRxdWVyeSk7CgkJCSRzbWFydHktPmFzc2lnbignY2F0ZWdvcmllcycsJHRtcCk7CgkJCSRwYXJtcyA9IGFycmF5KCk7CgkJCSRwYXJtc1snbXVsdGlhY3Rpb24nXSA9ICRwYXJhbXNbJ211bHRpYWN0aW9uJ107CgkJCWlmKCBpc3NldCgkcGFyYW1zWydjYXRfbXVsdGlzZWxlY3QnXSkgKQoJCQkJJHBhcm1zWydjYXRlZ29yaWVzJ10gPSAgaW1wbG9kZSgnLCcsJHBhcmFtc1snY2F0X211bHRpc2VsZWN0J10pOwoJCQkkc21hcnR5LT5hc3NpZ24oJ2NhdGVnb3J5X2lkcycsJHBhcmFtc1snY2F0X211bHRpc2VsZWN0J10pOwoJCQkkc21hcnR5LT5hc3NpZ24oJ2Zvcm1zdGFydCcsJHRoaXMtPkNHQ3JlYXRlRm9ybVN0YXJ0KCRpZCwnYWRtaW5fbXVsdGljYXRlZ29yeScsJHJldHVybmlkLCRwYXJtcykpOwoJCQkkc21hcnR5LT5hc3NpZ24oJ2Zvcm1lbmQnLCR0aGlzLT5DcmVhdGVGb3JtRW5kKCkpOwoJCQllY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ2FkbWluX2NhdF9idWxrY29weS50cGwnKTsKCQkJcmV0dXJuOwoJCX0KCQlicmVhazsKCglkZWZhdWx0OgoJCSR0aGlzLT5TZXRFcnJvcigkdGhpcy0+TGFuZygnZXJyb3JfbWlzc2luZ19pbnZhbGlkJywnY2F0ZWdvcnlfaWQnKSk7CgkJJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkKTsKCX0KCgokdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQpOwoKIwojIEVPRgojCj8+]]></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_report_downloadsbyfile.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojIEF1dGhvcjogUm9iZXJ0IENhbXBiZWxsIDxyb2JAdGVjaGNvbS5keW5kbnMub3JnPgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDoJLy93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKaWYoICEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdDcmVhdGUgVXBsb2FkcyBSZXBvcnRzJykgKSByZXR1cm47CiR0aGlzLT5TZXRDdXJyZW50VGFiKCdyZXBvcnRzJyk7CgovLwovLyBzZXR1cAovLwokZmV1ID0gY21zX3V0aWxzOjpnZXRfbW9kdWxlKE1PRF9GUk9OVEVORFVTRVJTLCcxLjIxLjE1Jyk7CmlmKCAhJGZldSApIHsKICAkdGhpcy0+U2V0RXJyb3IoJHRoaXMtPkxhbmcoJ2Vycm9yX25vZmV1JykpOwogICR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCk7Cn0KCi8vIGdldCB0aGlzIHVzZXJzIGVtYWlsIGFkZHJlc3MuCiR1c2VyZW1haWwgPSAnJzsKJHVzZXIgPSB1c2Vyb3BlcmF0aW9uczo6Z2V0X2luc3RhbmNlKCktPkxvYWRVc2VyQnlJZChnZXRfdXNlcmlkKCkpOwppZiggaXNfb2JqZWN0KCR1c2VyKSAmJiAkdXNlci0+ZW1haWwgIT0gJycgKSAkdXNlcmVtYWlsID0gJHVzZXItPmVtYWlsOwoKJHF1ZXJ5ID0gJ1NFTEVDVCBGLmlkLCBGLm5hbWUsIEYudHlwZSwgRi5hdHRyaWJzLCBGLmlvcmRlciBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2Fkc19maWVsZGRlZnMgRiBPUkRFUiBCWSBpb3JkZXIgQVNDJzsKJGN1c3RvbV9maWVsZHMgPSAkZGItPkdldEFycmF5KCRxdWVyeSk7CgokZmV1X3Byb3BkZWZucyA9ICRmZXUtPkdldFByb3BlcnR5RGVmbnMoKTsKCiRmaWVsZF9pbmZvID0gYXJyYXkoKTsKJGZpZWxkX2luZm9bJ3VwbG9hZF9pZCddID0gYXJyYXkoJ2NvbHVtbic9PidVLnVwbG9hZF9pZCcsJ2xhYmVsJz0+JHRoaXMtPkxhbmcoJ2ZpZWxkX3VwbG9hZF9pZCcpKTsKJGZpZWxkX2luZm9bJ2NhdGVnb3J5X2lkJ10gPSBhcnJheSgnY29sdW1uJz0+J1UudXBsb2FkX2NhdGVnb3J5X2lkIEFTIGNhdGVnb3J5X2lkJywnbGFiZWwnPT4kdGhpcy0+TGFuZygnZmllbGRfdXBsb2FkX2NhdGVnb3J5X2lkJykpOwokZmllbGRfaW5mb1snY2F0ZWdvcnlfbmFtZSddID0gYXJyYXkoJ2NvbHVtbic9PidVQy51cGxvYWRfY2F0ZWdvcnlfbmFtZSBBUyBjYXRlZ29yeV9uYW1lJywnbGFiZWwnPT4kdGhpcy0+TGFuZygnZmllbGRfdXBsb2FkX2NhdGVnb3J5X25hbWUnKSk7CiRmaWVsZF9pbmZvWydjYXRlZ29yeV9wYXRoJ10gPSBhcnJheSgnY29sdW1uJz0+J1VDLnVwbG9hZF9jYXRlZ29yeV9wYXRoIEFTIGNhdGVnb3J5X3BhdGgnLCdsYWJlbCc9PiR0aGlzLT5MYW5nKCdmaWVsZF91cGxvYWRfY2F0ZWdvcnlfcGF0aCcpKTsKJGZpZWxkX2luZm9bJ3VwbG9hZF9uYW1lJ10gPSBhcnJheSgnY29sdW1uJz0+J1UudXBsb2FkX25hbWUnLCdsYWJlbCc9PiR0aGlzLT5MYW5nKCdmaWVsZF91cGxvYWRfbmFtZScpKTsKJGZpZWxkX2luZm9bJ2F1dGhvciddID0gYXJyYXkoJ2NvbHVtbic9PidVLnVwbG9hZF9hdXRob3IgQVMgYXV0aG9yJywnbGFiZWwnPT4kdGhpcy0+TGFuZygnZmllbGRfdXBsb2FkX2F1dGhvcicpKTsKJGZpZWxkX2luZm9bJ3N1bW1hcnknXSA9IGFycmF5KCdjb2x1bW4nPT4nVS51cGxvYWRfc3VtbWFyeSBBUyBzdW1tYXJ5JywnbGFiZWwnPT4kdGhpcy0+TGFuZygnZmllbGRfdXBsb2FkX3N1bW1hcnknKSk7CiRmaWVsZF9pbmZvWydkZXNjcmlwdGlvbiddID0gYXJyYXkoJ2NvbHVtbic9PidVLnVwbG9hZF9kZXNjcmlwdGlvbiBBUyBkZXNjcmlwdGlvbicsJ2xhYmVsJz0+JHRoaXMtPkxhbmcoJ2ZpZWxkX3VwbG9hZF9kZXNjcmlwdGlvbicpKTsKJGZpZWxkX2luZm9bJ3VwbG9hZF9pcCddID0gYXJyYXkoJ2NvbHVtbic9PidVLnVwbG9hZF9pcCcsJ2xhYmVsJz0+JHRoaXMtPkxhbmcoJ2ZpZWxkX3VwbG9hZF9pcCcpKTsKJGZpZWxkX2luZm9bJ3VwbG9hZF9zaXplJ10gPSBhcnJheSgnY29sdW1uJz0+J1UudXBsb2FkX3NpemUnLCdsYWJlbCc9PiR0aGlzLT5MYW5nKCdmaWVsZF91cGxvYWRfc2l6ZScpKTsKJGZpZWxkX2luZm9bJ3VwbG9hZF9kYXRlJ10gPSBhcnJheSgnY29sdW1uJz0+J1UudXBsb2FkX2RhdGUnLCdsYWJlbCc9PiR0aGlzLT5MYW5nKCdmaWVsZF91cGxvYWRfZGF0ZScpKTsKLy8kZmllbGRfaW5mb1snZG93bmxvYWRzJ10gPSBhcnJheSgnY29sdW1uJz0+J0NPVU5UKFVELmRvd25sb2FkX2lkKSBBUyBkb3dubG9hZHMnLCdsYWJlbCc9PiR0aGlzLT5MYW5nKCdmaWVsZF9kb3dubG9hZHMnKSwnZGV0YWlscnB0Jz0+MCk7CiRmaWVsZF9pbmZvWydkb3dubG9hZHMnXSA9IGFycmF5KCdjb2x1bW4nPT4nREMuZG93bmxvYWRzJywKCQkJCSAnbGFiZWwnPT4kdGhpcy0+TGFuZygnZmllbGRfZG93bmxvYWRzJyksCgkJCQkgJ2pvaW4nPT4nTEVGVCBKT0lOIChTRUxFQ1QgZmlsZV9pZCxDT1VOVChkb3dubG9hZF9pZCkgQVMgZG93bmxvYWRzIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzX2Rvd25sb2FkcyBXSEVSRSBkb3dubG9hZF9kYXRlIEJFVFdFRU4gJXN0JSBBTkQgJWV0JSAldXclIEdST1VQIEJZIGZpbGVfaWQpIERDIE9OIERDLmZpbGVfaWQgPSBVLnVwbG9hZF9pZCcpOwokZmllbGRfaW5mb1snZG93bmxvYWRfdXNlciddID0gYXJyYXkoJ2NvbHVtbic9PidVRC5kb3dubG9hZF91c2VyJywnbGFiZWwnPT4kdGhpcy0+TGFuZygnZmllbGRfZG93bmxvYWRfdXNlcicpLCdzdW1tYXJ5cnB0Jz0+MCk7CiRmaWVsZF9pbmZvWydkb3dubG9hZF9kYXRlJ10gPSBhcnJheSgnY29sdW1uJz0+J1VELmRvd25sb2FkX2RhdGUnLCdsYWJlbCc9PiR0aGlzLT5MYW5nKCdmaWVsZF9kb3dubG9hZF9kYXRlJyksJ3N1bW1hcnlycHQnPT4wKTsKJGZpZWxkX2luZm9bJ2xhdGVzdF9kb3dubG9hZCddID0gYXJyYXkoJ2NvbHVtbic9PidNQVgoVUQuZG93bmxvYWRfZGF0ZSkgQVMgbGF0ZXN0X2Rvd25sb2FkJywKCQkJCSAgICAgICAnbGFiZWwnPT4kdGhpcy0+TGFuZygnZmllbGRfbGF0ZXN0X2Rvd25sb2FkJyksCgkJCQkgICAgICAgJ2RldGFpbHJwdCc9PjApOwppZiggaXNfYXJyYXkoJGN1c3RvbV9maWVsZHMpICYmIGNvdW50KCRjdXN0b21fZmllbGRzKSApIHsKICAkaSA9IDE7CiAgZm9yZWFjaCggJGN1c3RvbV9maWVsZHMgYXMgJG9uZSApIHsKICAgICRhbGlhcyA9ICdGVicuJGkrKzsKICAgICRuYW1lID0gc3RyX3JlcGxhY2UoJyAnLCdfJywkb25lWyduYW1lJ10pOwogICAgJGZpZWxkX2luZm9bJ2Y6Jy4kbmFtZV0gPSBhcnJheSgnam9pbic9PidMRUZUIEpPSU4gJy5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX2ZpZWxkdmFscyAkYWxpYXMKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE9OIFUudXBsb2FkX2lkID0geyRhbGlhc30udXBsb2FkX2lkIEFORCB7JGFsaWFzfS5mbGRfaWQgPSAiLihpbnQpJG9uZVsnaWQnXSwKCQkJCSAgICAnY29sdW1uJz0+JGFsaWFzLicudmFsdWUgQVMgJy4kbmFtZSwKCQkJCSAgICAnbGFiZWwnPT4kdGhpcy0+TGFuZygnZmllbGQnKS4nOiAnLiRvbmVbJ25hbWUnXSk7CiAgfQp9CmlmKCBpc19hcnJheSgkZmV1X3Byb3BkZWZucykgJiYgY291bnQoJGZldV9wcm9wZGVmbnMpICkgewogIHVzb3J0KCRmZXVfcHJvcGRlZm5zLGZ1bmN0aW9uKCRhLCRiKXsgcmV0dXJuIHN0cmNtcCgkYVsncHJvbXB0J10sJGJbJ3Byb21wdCddKTsgfSk7CiAgJGkgPSAxOwogIGZvcmVhY2goICRmZXVfcHJvcGRlZm5zIGFzICRrZXkgPT4gJG9uZSApIHsKICAgIGlmKCAkb25lWyd0eXBlJ10gPT0gJGZldTo6RklFTERUWVBFX0RBVEEgKSBjb250aW51ZTsKICAgICRhbGlhcyA9ICdGRVUnLiRpKys7CiAgICAkc3Vic2VsZWN0ID0gIkxFRlQgSk9JTiAoU0VMRUNUIEZFVS51c2VybmFtZSxGRVVWLnRpdGxlLEZFVVAudHlwZSxGRVVWLmRhdGEgRlJPTSBjbXNfbW9kdWxlX2ZldXNlcnNfdXNlcnMgRkVVIExFRlQgSk9JTiBjbXNfbW9kdWxlX2ZldXNlcnNfcHJvcGVydGllcyBGRVVWIE9OIEZFVS5pZCA9IEZFVVYudXNlcmlkIExFRlQgSk9JTiBjbXNfbW9kdWxlX2ZldXNlcnNfcHJvcGRlZm4gRkVVUCBPTiBGRVVQLm5hbWUgPSBGRVVWLnRpdGxlIFdIRVJFIEZFVVAudHlwZSAhPSA5IEFORCBGRVVQLm5hbWUgPSAnJXMnKSAkYWxpYXMiOwogICAgJGZpZWxkX2luZm9bJ3A6Jy4kb25lWyduYW1lJ11dID0gYXJyYXkoJ2NvbHVtbic9PiIkYWxpYXMuZGF0YSBBUyAiLiRvbmVbJ25hbWUnXSwKCQkJCSAgICdqb2luJz0+c3ByaW50Zigkc3Vic2VsZWN0LCRvbmVbJ25hbWUnXSkuIiBPTiBVRC5kb3dubG9hZF91c2VyID0gJGFsaWFzLnVzZXJuYW1lIiwKCQkJCSAgICdsYWJlbCc9PiR0aGlzLT5MYW5nKCd1c2VycHJvcCcpLic6ICcuJG9uZVsncHJvbXB0J10pOwogIH0KfQovLyB0b2RvOiBhZGQgY3VzdG9tIGZpZWxkcyBpbiBoZXJlLgoKJHNvcnRpbmdzID0gYXJyYXkoKTsKJHNvcnRpbmdzWyd1cGxvYWRfaWQnXSA9IGFycmF5KCdsYWJlbCc9PiR0aGlzLT5MYW5nKCdmaWVsZF91cGxvYWRfaWQnKSk7CiRzb3J0aW5nc1snY2F0ZWdvcnlfbmFtZSddID0gYXJyYXkoJ2xhYmVsJz0+JHRoaXMtPkxhbmcoJ2ZpZWxkX3VwbG9hZF9jYXRlZ29yeV9uYW1lJyksJ3NvcnRieSc9PidjYXRlZ29yeV9uYW1lJyk7CiRzb3J0aW5nc1sndXBsb2FkX25hbWUnXSA9IGFycmF5KCdsYWJlbCc9PiR0aGlzLT5MYW5nKCdmaWVsZF91cGxvYWRfbmFtZScpKTsKJHNvcnRpbmdzWydhdXRob3InXSA9IGFycmF5KCdsYWJlbCc9PiR0aGlzLT5MYW5nKCdmaWVsZF91cGxvYWRfYXV0aG9yJyksJ2RldGFpbHJwdCc9PjAsJ3NvcnRieSc9PidhdXRob3InKTsKJHNvcnRpbmdzWyd1cGxvYWRfc2l6ZSddID0gYXJyYXkoJ2RmbHRzb3J0YnknPT4nREVTQycsJ2xhYmVsJz0+JHRoaXMtPkxhbmcoJ2ZpZWxkX3VwbG9hZF9zaXplJykpOwokc29ydGluZ3NbJ3VwbG9hZF9kYXRlJ10gPSBhcnJheSgnZGZsdHNvcnRieSc9PidERVNDJywnbGFiZWwnPT4kdGhpcy0+TGFuZygnZmllbGRfdXBsb2FkX2RhdGUnKSk7CiRzb3J0aW5nc1snc3VtbWFyeSddID0gYXJyYXkoJ2RmbHRzb3J0YnknPT4nQVNDJywnbGFiZWwnPT4kdGhpcy0+TGFuZygnZmllbGRfdXBsb2FkX3N1bW1hcnknKSwnc29ydGJ5Jz0+J3N1bW1hcnknLCdyZXFmaWVsZCc9PidzdW1tYXJ5Jyk7CiRzb3J0aW5nc1snZG93bmxvYWRzJ10gPSBhcnJheSgnbGFiZWwnPT4kdGhpcy0+TGFuZygnZmllbGRfZG93bmxvYWRzJyksJ3JlcWZpZWxkJz0+J2Rvd25sb2FkcycsJ3NvcnRieSc9Pidkb3dubG9hZHMnLCdkZmx0c29ydGJ5Jz0+J0RFU0MnLCdzb3J0YnkyJz0+J3VwbG9hZF9uYW1lJywnZGZsdHNvcnRieTInPT4nQVNDJyk7Ci8vJHNvcnRpbmdzWydkb3dubG9hZHMnXSA9IGFycmF5KCdsYWJlbCc9PiR0aGlzLT5MYW5nKCdmaWVsZF9kb3dubG9hZHMnKSwnc29ydGJ5Jz0+J2Rvd25sb2FkcycsJ2RmbHRzb3J0YnknPT4nREVTQycsJ3NvcnRieTInPT4ndXBsb2FkX25hbWUnLCdkZmx0c29ydGJ5Mic9PidBU0MnKTsKJHNvcnRpbmdzWydkb3dubG9hZF91c2VyJ10gPSBhcnJheSgnbGFiZWwnPT4kdGhpcy0+TGFuZygnZmllbGRfZG93bmxvYWRfdXNlcicpLCdzdW1tYXJ5cnB0Jz0+MCk7CiRzb3J0aW5nc1snZG93bmxvYWRfZGF0ZSddID0gYXJyYXkoJ2RmbHRzb3J0YnknPT4nREVTQycsJ2xhYmVsJz0+JHRoaXMtPkxhbmcoJ2ZpZWxkX2Rvd25sb2FkX2RhdGUnKSwnc3VtbWFyeXJwdCc9PjApOwppZiggaXNfYXJyYXkoJGN1c3RvbV9maWVsZHMpICYmIGNvdW50KCRjdXN0b21fZmllbGRzKSApIHsKICBmb3JlYWNoKCAkY3VzdG9tX2ZpZWxkcyBhcyAkb25lICkgewogICAgJHNvcnRpbmdzWydmOicuJG9uZVsnbmFtZSddXSA9IGFycmF5KCdsYWJlbCc9PiR0aGlzLT5MYW5nKCdmaWVsZCcpLic6ICcuJG9uZVsnbmFtZSddLCdyZXFmaWVsZCc9PidmOicuJG9uZVsnbmFtZSddKTsKICB9Cn0KaWYoIGlzX2FycmF5KCRmZXVfcHJvcGRlZm5zKSAmJiBjb3VudCgkZmV1X3Byb3BkZWZucykgKSB7CiAgZm9yZWFjaCggJGZldV9wcm9wZGVmbnMgYXMgJGtleSA9PiAkb25lICkgewogICAgaWYoICFpbl9hcnJheSgkb25lWyd0eXBlJ10sYXJyYXkoJGZldTo6RklFTERUWVBFX1RFWFQsJGZldTo6RklFTERUWVBFX0VNQUlMLCRmZXU6OkZJRUxEVFlQRV9EUk9QRE9XTiwkZmV1OjpGSUVMRFRZUEVfUkFESU9CVVROUywKCQkJCSAgICAgJGZldTo6RklFTERUWVBFX0RBVEUpKSApIGNvbnRpbnVlOwogICAgJHNvcnRpbmdzWydwOicuJG9uZVsnbmFtZSddXSA9IGFycmF5KCdsYWJlbCc9PiR0aGlzLT5MYW5nKCd1c2VycHJvcCcpLic6ICcuJG9uZVsnbmFtZSddLCdzb3J0YnknPT4kb25lWyduYW1lJ10sJ3JlcWZpZWxkJz0+J3A6Jy4kb25lWyduYW1lJ10pOwogIH0KfQoKJGZldV9ncm91cHMgPSBhcnJheV9mbGlwKCRmZXUtPkdldEdyb3VwTGlzdCgpKTsKJHVwbG9hZF9jYXRlZ29yaWVzID0gYXJyYXlfZmxpcCgkdGhpcy0+Z2V0Q2F0ZWdvcnlMaXN0KCkpOwokcmVwb3J0X3R5cGVzID0gYXJyYXkoJ3N1bW1hcnknPT4kdGhpcy0+TGFuZygncmVwb3J0X3N1bW1hcnknKSwnZGV0YWlsJz0+JHRoaXMtPkxhbmcoJ3JlcG9ydF9kZXRhaWwnKSk7CiRmaXJzdF9kYXlfb2ZfbW9udGggPSBta3RpbWUoMCwwLDAsZGF0ZSgnbScpLDEsZGF0ZSgnWScpKTsKJGxhc3RfZGF5X29mX21vbnRoID0gbWt0aW1lKDIzLDU5LDU5LGRhdGUoJ20nKSsxLDAsZGF0ZSgnWScpKTsKJGRmbHRfZmxkcyA9IGFycmF5KCd1cGxvYWRfbmFtZScsJ3VwbG9hZF9hdXRob3InLCd1cGxvYWRfc2l6ZScsJ3VwbG9hZF9kYXRlJywnZG93bmxvYWRzJywnZG93bmxvYWRfdXNlcicpOwoKLy9idWlsZCB1c2VyIHByb2ZpbGUKJHByb2ZpbGUgPSBhcnJheSgncmVwb3J0X3R5cGUnPT4nc3VtbWFyeScsICdvdXRwdXRfdGVtcGxhdGUnPT4nJywgJ2NhdGVnb3JpZXMnPT5hcnJheSgpLCAnZmlsZXMnPT4nJywKCQkgJ2ZldV9ncm91cHMnPT5hcnJheSgpLCAnZmV1X3VzZXJzJz0+JycsICdzdGFydF9kYXRlJz0+JGZpcnN0X2RheV9vZl9tb250aCwgJ2VuZF9kYXRlJz0+JGxhc3RfZGF5X29mX21vbnRoLAoJCSAndmlld19maWVsZHMnPT5hcnJheV9rZXlzKCRmaWVsZF9pbmZvKSwgJ3ZpZXdfc29ydGluZyc9Pidkb3dubG9hZF91c2VyJywgJ3ZpZXdfc29ydG9yZGVyJz0+JypkZWZhdWx0KicsCgkJICdvdXRwdXRfdHlwZSc9PidodG1sJyk7CiR0bXAgPSBjbXNfdXNlcnByZWZzOjpnZXQoJHRoaXMtPkdldE5hbWUoKS4ncmVwb3J0X2Rvd25sb2Fkc2J5ZmlsZScpOwppZiggJHRtcCApICRwcm9maWxlID0gdW5zZXJpYWxpemUoJHRtcCk7CgovLyBoYW5kbGUgYnV0dG9ucwppZiggaXNzZXQoJHBhcmFtc1snY2FuY2VsJ10pICkgewogICR0aGlzLT5TZXRNZXNzYWdlKCR0aGlzLT5MYW5nKCdvcGVyYXRpb25fY2FuY2VsbGVkJykpOwogICR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCk7Cn0KCi8vCi8vIGdldCB0aGUgcGFyYW1zLgovLwppZiggaXNzZXQoJHBhcmFtc1sncmVwb3J0X3R5cGUnXSkgKSB7CiAgJHByb2ZpbGVbJ3JlcG9ydF90eXBlJ10gPSAkcGFyYW1zWydyZXBvcnRfdHlwZSddOwogICRwcm9maWxlWydvdXRwdXRfdGVtcGxhdGUnXSA9ICRwYXJhbXNbJ291dHB1dF90ZW1wbGF0ZSddOwogIGlmKCBpc3NldCgkcGFyYW1zWydvdXRwdXRfdHlwZSddKSApICRwcm9maWxlWydvdXRwdXRfdHlwZSddID0gJHBhcmFtc1snb3V0cHV0X3R5cGUnXTsKICBpZiggaXNzZXQoJHBhcmFtc1snc3RhcnRfZGF0ZVllYXInXSkgKSB7CiAgICAkcHJvZmlsZVsnc3RhcnRfZGF0ZSddID0gbWt0aW1lKDAsMCwwLChpbnQpJHBhcmFtc1snc3RhcnRfZGF0ZU1vbnRoJ10sKGludCkkcGFyYW1zWydzdGFydF9kYXRlRGF5J10sKGludCkkcGFyYW1zWydzdGFydF9kYXRlWWVhciddKTsKICB9CiAgaWYoIGlzc2V0KCRwYXJhbXNbJ2VuZF9kYXRlWWVhciddKSApIHsKICAgICRwcm9maWxlWydlbmRfZGF0ZSddID0gbWt0aW1lKDIzLDU5LDU5LChpbnQpJHBhcmFtc1snZW5kX2RhdGVNb250aCddLChpbnQpJHBhcmFtc1snZW5kX2RhdGVEYXknXSwoaW50KSRwYXJhbXNbJ2VuZF9kYXRlWWVhciddKTsKICB9CiAgaWYoICRwcm9maWxlWydzdGFydF9kYXRlJ10gIT0gJycgJiYgJHByb2ZpbGVbJ2VuZF9kYXRlJ10gIT0gJycgJiYKICAgICAgJHByb2ZpbGVbJ3N0YXJ0X2RhdGUnXSA+PSAkcHJvZmlsZVsnZW5kX2RhdGUnXSApIHsKICAgIC8vIGVuZCBkYXRlIGJlZm9yZSBzdGFydCBkYXRlLCBiZSBzbWFydCBhbmQganVzdCBzd2FwIGVtLgogICAgJHRtcCA9ICRwcm9maWxlWydzdGFydF9kYXRlJ107CiAgICAkcHJvZmlsZVsnc3RhcnRfZGF0ZSddID0gJHByb2ZpbGVbJ2VuZF9kYXRlJ107CiAgICAkcHJvZmlsZVsnZW5kX2RhdGUnXSA9ICR0bXA7CiAgfQoKICBpZiggaXNzZXQoJHBhcmFtc1sndmlld19maWVsZHMnXSkgKSB7CiAgICAkcHJvZmlsZVsndmlld19maWVsZHMnXSA9ICRwYXJhbXNbJ3ZpZXdfZmllbGRzJ107CiAgfQogIGVsc2UgewogICAgJHByb2ZpbGVbJ3ZpZXdfZmllbGRzJ10gPSAkZGZsdF9mbGRzOwogIH0KICBpZiggaXNzZXQoJHBhcmFtc1sndmlld19zb3J0aW5nJ10pICkgICRwcm9maWxlWyd2aWV3X3NvcnRpbmcnXSA9ICRwYXJhbXNbJ3ZpZXdfc29ydGluZyddOwogIGlmKCBpc3NldCgkcGFyYW1zWyd2aWV3X3NvcnRvcmRlciddKSApICRwcm9maWxlWyd2aWV3X3NvcnRvcmRlciddID0gJHBhcmFtc1sndmlld19zb3J0b3JkZXInXTsKCiAgJHByb2ZpbGVbJ2NhdGVnb3JpZXMnXSA9IGFycmF5KCk7CiAgJHByb2ZpbGVbJ2ZpbGVzJ10gPSAnJzsKICBpZiggaXNzZXQoJHBhcmFtc1snY2F0ZWdvcmllcyddKSAmJiBpc19hcnJheSgkcGFyYW1zWydjYXRlZ29yaWVzJ10pICYmIGNvdW50KCRwYXJhbXNbJ2NhdGVnb3JpZXMnXSkgKSB7CiAgICAkcHJvZmlsZVsnY2F0ZWdvcmllcyddID0gJHBhcmFtc1snY2F0ZWdvcmllcyddOwogIH0KICBlbHNlIGlmKCBpc3NldCgkcGFyYW1zWydmaWxlcyddKSApIHsKICAgICRwcm9maWxlWydmaWxlcyddID0gJHBhcmFtc1snZmlsZXMnXTsKICB9CgogICRwcm9maWxlWydmZXVfZ3JvdXBzJ10gPSBhcnJheSgpOwogICRwcm9maWxlWydmZXVfdXNlcnMnXSA9ICcnOwogIGlmKCBpc3NldCgkcGFyYW1zWydmZXVfZ3JvdXBzJ10pICYmIGlzX2FycmF5KCRwYXJhbXNbJ2ZldV9ncm91cHMnXSkgJiYgY291bnQoJHBhcmFtc1snZmV1X2dyb3VwcyddKSApIHsKICAgICRwcm9maWxlWydmZXVfZ3JvdXBzJ10gPSAkcGFyYW1zWydmZXVfZ3JvdXBzJ107CiAgfQogIGVsc2UgaWYoIGlzc2V0KCRwYXJhbXNbJ2ZldV91c2VycyddKSAmJiAkcGFyYW1zWydmZXVfdXNlcnMnXSAhPSAnJyApIHsKICAgICRwcm9maWxlWydmZXVfdXNlcnMnXSA9ICRwYXJhbXNbJ2ZldV91c2VycyddOwogIH0KfQoKLy8KLy8gaGFuZGxlIHN1Ym1pdAovLwppZiggaXNzZXQoJHBhcmFtc1snc3VibWl0J10pICkgewogIC8vIGlmIHdlIGdvdCBoZXJlLCBldmVyeXRoaW5nIGNoZWNrcyBvdXQKICBjbXNfdXNlcnByZWZzOjpzZXQoJHRoaXMtPkdldE5hbWUoKS4ncmVwb3J0X2Rvd25sb2Fkc2J5ZmlsZScsc2VyaWFsaXplKCRwcm9maWxlKSk7CgogIGlmKCAkcHJvZmlsZVsnb3V0cHV0X3R5cGUnXSAhPSAnaHRtbCcgKSB7CiAgICAvLyBnZW5lcmF0ZSB0aGUgcmVwb3J0IGRpcmVjdGx5LgogICAgJHBhcmFtc1sncmVwb3J0J10gPSAxOwogIH0KICBlbHNlIHsKICAgIC8vIGdvdHRhIG9wZW4gYSBuZXcgd2luZG93IGZpcnN0LgogICAgJHVybCA9ICR0aGlzLT5jcmVhdGVfdXJsKCRpZCwnYWRtaW5fcmVwb3J0X2Rvd25sb2Fkc2J5ZmlsZScsJHJldHVybmlkLGFycmF5KCdyZXBvcnQnPT4xKSk7CiAgICAkdXJsID0gc3RyX3JlcGxhY2UoJyZhbXA7JywnJicsJHVybCkuJyZzaG93dGVtcGxhdGU9ZmFsc2UnOwogICAgJHR4dCA9ICJ3aW5kb3cub3BlbigneyR1cmx9JywncmVwb3J0Jywnc2Nyb2xsYmFycz15ZXMsZGlyZWN0b3JpZXM9MCxsb2NhdGlvbj0wLG1lbnViYXI9MCxzdGF0dXM9MCx0b29sYmFyPTAnKTsiOwogICAgJHNtYXJ0eS0+YXNzaWduKCdleHRyYWpzJywkdHh0KTsKICB9Cn0KCmlmKCBpc3NldCgkcGFyYW1zWydyZXBvcnQnXSkgKSB7CiAgLy8gZ2V0IHRoZSB1c2VybmFtZXMuCiAgJGVycm9yID0gJyc7CiAgJHVzZXJzID0gYXJyYXkoKTsKICAkZG9fdXNlcnMgPSAwOwogIGlmKCBjb3VudCgkcHJvZmlsZVsnZmV1X2dyb3VwcyddKSA+IDAgKSB7CiAgICAvLyBleHBhbmQgZ3JvdXBzIHRvIHVzZXJzCiAgICAkZG9fdXNlcnMgPSAxOwogICAgJHF1ZXJ5ID0gbmV3IGZldV91c2VyX3F1ZXJ5KCk7CiAgICAkcXVlcnktPmFkZF9hbmRfb3B0KGZldV91c2VyX3F1ZXJ5X29wdDo6TUFUQ0hfR1JPVVBJRCwkcHJvZmlsZVsnZmV1X2dyb3VwcyddKTsKICAgICRycyA9ICRxdWVyeS0+ZXhlY3V0ZSgpOwogICAgd2hpbGUoICEkcnMtPkVPRigpICkgewogICAgICAkdXNlcnNbXSA9ICRycy0+ZmllbGRzWyd1c2VybmFtZSddOwogICAgICAkcnMtPk1vdmVOZXh0KCk7CiAgICB9CiAgfQogIGVsc2UgaWYoICRwcm9maWxlWydmZXVfdXNlcnMnXSAhPSAnJyApIHsKICAgICRkb191c2VycyA9IDE7CiAgICAkdG1wID0gcHJlZ19zcGxpdCgnL1tccyxdLycsJHByb2ZpbGVbJ2ZldV91c2VycyddKTsKICAgIGlmKCBpc19hcnJheSgkdG1wKSAmJiBjb3VudCgkdG1wKSApIHsKICAgICAgJHRtcDIgPSBhcnJheSgpOwogICAgICBmb3JlYWNoKCAkdG1wIGFzICRvbmUgKSB7Cgkkb25lID0gdHJpbSgkb25lKTsKCWlmKCAhJG9uZSApIGNvbnRpbnVlOwoJJHRtcDJbXSA9ICRvbmU7CiAgICAgIH0KICAgICAgJHVzZXJzID0gJHRtcDI7CiAgICB9CiAgfQogIGlmKCAkZG9fdXNlcnMgJiYgIWNvdW50KCR1c2VycykgKSAkZXJyb3IgPSAkdGhpcy0+TGFuZygnZXJyb3Jfbm91c2Vyc2ZvdW5kJyk7CgogIGlmKCAkZXJyb3IgPT0gJycgKSB7CiAgICAvLyBnZXQgdGhlIGZpbGVzLgogICAgJGZpbGVzID0gYXJyYXkoKTsKICAgICRkb19maWxlcyA9IDA7CiAgICBpZiggY291bnQoJHByb2ZpbGVbJ2NhdGVnb3JpZXMnXSkgPiAwICkgIHsKICAgICAgJGRvX2ZpbGVzID0gMTsKICAgICAgJHF1ZXJ5ID0gJ1NFTEVDVCBVLnVwbG9hZF9pZCBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2FkcyBVIFdIRVJFIHVwbG9hZF9jYXRlZ29yeV9pZCBJTiAoJy5pbXBsb2RlKCcsJywkcHJvZmlsZVsnY2F0ZWdvcmllcyddKS4nKSc7CiAgICAgICRmaWxlcyA9ICRkYi0+R2V0Q29sKCRxdWVyeSk7CiAgICB9CiAgICBlbHNlIGlmKCAkcHJvZmlsZVsnZmlsZXMnXSAhPSAnJyApIHsKICAgICAgJGRvX2ZpbGVzID0gMTsKICAgICAgJHRtcCA9IHByZWdfc3BsaXQoJy9bXHMsXS8nLCRwcm9maWxlWydmaWxlcyddKTsKICAgICAgaWYoIGlzX2FycmF5KCR0bXApICYmIGNvdW50KCR0bXApICkgewoJJHRtcDIgPSBhcnJheSgpOyAvLyByZWd1bGFyIGZpbGVuYW1lcy4KCSR0bXAzID0gYXJyYXkoKTsgLy8gd2lsZGNhcmQgcGF0dGVybnMuCglmb3JlYWNoKCAkdG1wIGFzICRvbmUgKSB7CgkgICRvbmUgPSB0cmltKCRvbmUpOwoJICBpZiggISRvbmUgKSBjb250aW51ZTsKCSAgaWYoIHN0cnBvcygkb25lLCcqJykgIT09IEZBTFNFIHx8IHN0cnBvcygkb25lLCclJykgIT09IEZBTFNFICkgewoJICAgICRvbmUgPSBzdHJfcmVwbGFjZSgnKicsJyUnLCRvbmUpOwoJICAgICRvbmUgPSBzdHJfcmVwbGFjZSgnJSUnLCclJywkb25lKTsKCSAgICAkdG1wM1tdID0gIih1cGxvYWRfbmFtZSBMSUtFICckb25lJykiOwoJICB9CgkgIGVsc2UgewoJICAgICR0bXAyW10gPSAiJyIuJG9uZS4iJyI7CgkgIH0KCX0KCWlmKCBjb3VudCgkdG1wMikgKSB7CgkgICRxdWVyeSA9ICdTRUxFQ1QgdXBsb2FkX2lkIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzIFdIRVJFIHVwbG9hZF9uYW1lIElOICgnLmltcGxvZGUoJHRtcDIpLicpJzsKCSAgJGRiciA9ICRkYi0+R2V0Q29sKCRxdWVyeSk7CgkgIGlmKCBpc19hcnJheSgkZGJyKSAmJiBjb3VudCgkZGJyKSApICRmaWxlcyA9ICRkYnI7Cgl9CglpZiggY291bnQoJHRtcDMpICkgewoJICAkcXVlcnkgPSAnU0VMRUNUIHVwbG9hZF9pZCBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2FkcyBXSEVSRSAnOwoJICAkcXVlcnkgLj0gaW1wbG9kZSgnIE9SICcsJHRtcDMpOwoJICAkZGJyID0gJGRiLT5HZXRDb2woJHF1ZXJ5KTsKCSAgaWYoIGlzX2FycmF5KCRkYnIpICYmIGNvdW50KCRkYnIpICkgJGZpbGVzID0gYXJyYXlfbWVyZ2UoJGZpbGVzLCRkYnIpOwoJfQoJJGZpbGVzID0gYXJyYXlfdW5pcXVlKCRmaWxlcyk7CiAgICAgIH0KICAgIH0KICAgIGlmKCAkZG9fZmlsZXMgJiYgIWNvdW50KCRmaWxlcykgKSAkZXJyb3IgPSAkdGhpcy0+TGFuZygnZXJyb3JfbWF0Y2hpbmdyZWNvcmRzJyk7CiAgfQoKICBpZiggJGVycm9yID09ICcnICkgewogICAgLy8KICAgIC8vIGJ1aWxkIHRoZSBxdWVyeQogICAgLy8KICAgICRqb2lucyA9IGFycmF5KCk7CiAgICAkd2hlcmUgPSBhcnJheSgpOwogICAgJHdoZXJlcCA9IGFycmF5KCk7CiAgICAkdXNlcndoZXJlID0gbnVsbDsKICAgICRjb2x1bW5zID0gYXJyYXkoKTsKICAgICRyZXF1aXJlZF9jb2x1bW5zID0gYXJyYXkoKTsKICAgIC8vIHZhcmlhYmxlcyB3ZSBjYW4gcmVwbGFjZSBpbiBhbnkgam9pbi4KICAgICRzdCA9ICRkYi0+RGJUaW1lU3RhbXAoJHByb2ZpbGVbJ3N0YXJ0X2RhdGUnXSk7CiAgICAkZXQgPSAkZGItPkRiVGltZVN0YW1wKCRwcm9maWxlWydlbmRfZGF0ZSddKTsKICAgICRyZXBfdmFycyA9IGFycmF5KCk7CiAgICAkcmVwX3ZhcnNbJyVzdCUnXSA9ICRzdDsKICAgICRyZXBfdmFyc1snJWV0JSddID0gJGV0OwogICAgJHJlcF92YXJzWycldXclJ10gPSAnJzsKCiAgICAvLyBidWlsZCBhIHRpbWUgbGltaXRpbmcgd2hlcmUgZXhwcmVzc2lvbgogICAgJHdoZXJlW10gPSAiKGRvd25sb2FkX2RhdGUgQkVUV0VFTiAkc3QgQU5EICRldCkiOwoKICAgIC8vIGJ1aWxkIGEgZmlsZXMgd2hlcmUgZXhwcmVzc2lvbgogICAgaWYoIGNvdW50KCRmaWxlcykgKSAkd2hlcmVbXSA9ICdVLnVwbG9hZF9pZCBJTiAoJy5pbXBsb2RlKCcsJywkZmlsZXMpLicpJzsKCiAgICAvLyBidWlsZCBhIHVzZXJzIHdoZXJlIGV4cHJlc3Npb24KICAgIGlmKCBjb3VudCgkdXNlcnMpICkgewogICAgICAkdG1wMiA9IGFycmF5KCk7IC8vIHJlZ3VsYXIgdXNlcm5hbWVzCiAgICAgICR0bXAzID0gYXJyYXkoKTsgLy8gd2lsZGNhcmQgcGF0dGVybgogICAgICBmb3JlYWNoKCAkdXNlcnMgYXMgJHR1c2VyICkgewoJaWYoIHN0cnBvcygkdHVzZXIsJyonKSAhPT0gRkFMU0UgfHwgc3RycG9zKCR0dXNlciwnJScpICE9PSBGQUxTRSApIHsKCSAgJHR1c2VyID0gc3RyX3JlcGxhY2UoJyonLCclJywkdHVzZXIpOwoJICAkdHVzZXIgPSBzdHJfcmVwbGFjZSgnJSUnLCclJywkdHVzZXIpOwoJICAkdG1wM1tdID0gIlVELmRvd25sb2FkX3VzZXIgTElLRSAnJHR1c2VyJyI7Cgl9CgllbHNlIHsKCSAgJHR1c2VyID0gIiciLiR0dXNlci4iJyI7CgkgICR0bXAyW10gPSAkdHVzZXI7Cgl9CiAgICAgIH0KICAgICAgJHdoID0gYXJyYXkoKTsKICAgICAgaWYoIGNvdW50KCR0bXAyKSApICR3aFtdID0gJ1VELmRvd25sb2FkX3VzZXIgSU4gKCcuaW1wbG9kZSgnLCcsJHRtcDIpLicpJzsKICAgICAgaWYoIGNvdW50KCR0bXAzKSApICR3aCA9IGFycmF5X21lcmdlKCR3aCwkdG1wMyk7CiAgICAgIGlmKCBjb3VudCgkd2gpICkgewoJJHVzZXJ3aGVyZSA9ICcoJy4gaW1wbG9kZSgnIE9SICcsJHdoKS4gJyknOwoJJHJlcF92YXJzWycldXclJ10gPSAnQU5EICcuc3RyX3JlcGxhY2UoJ1VELicsJycsJHVzZXJ3aGVyZSk7Cgkkd2hlcmVbXSA9ICR1c2Vyd2hlcmU7CiAgICAgIH0KICAgIH0KCiAgICAvLyBidWlsZCB0aGUgbGlzdCBvZiBjb2x1bW5zIHRvIGRpc3BsYXkuLiBhbmQgcHJvY2VzcyBjdXN0b20gZmllbGRzLgogICAgLy8gbWFrZSBzdXJlIHVwbG9hZCBpZCwgYW5kIGRvd25sb2FkIG5hbWUgYXJlIGluIHRoZSBsaXN0CiAgICAkdmlld19maWVsZHMgPSAgJHByb2ZpbGVbJ3ZpZXdfZmllbGRzJ107CiAgICBpZiggaXNzZXQoJHNvcnRpbmdzWyRwcm9maWxlWyd2aWV3X3NvcnRpbmcnXV1bJ3JlcWZpZWxkJ10pICYmICFpbl9hcnJheSgkcHJvZmlsZVsndmlld19zb3J0aW5nJ10sJHZpZXdfZmllbGRzKSApIHsKICAgICAgLy8gYWRkcyBjb2x1bW4gdG8gY29sdW1uIGxpc3QgaWYgaXRzIHJlcXVpcmVkIGJ5IHNvcnRpbmcuCiAgICAgICRjb2wgPSAkc29ydGluZ3NbJHByb2ZpbGVbJ3ZpZXdfc29ydGluZyddXVsncmVxZmllbGQnXTsKICAgICAgJHJlcXVpcmVkX2NvbHVtbnNbXSA9ICRjb2w7CiAgICAgICR2aWV3X2ZpZWxkc1tdID0gJGNvbDsKICAgIH0KCiAgICAkdmlld19maWVsZHMgPSBhcnJheV91bmlxdWUoYXJyYXlfbWVyZ2UoYXJyYXkoJ3VwbG9hZF9pZCcsJ3VwbG9hZF9uYW1lJyksJHZpZXdfZmllbGRzKSk7CgogICAgZm9yZWFjaCggJHZpZXdfZmllbGRzIGFzICRvbmUgKSB7CiAgICAgIGlmKCBpc3NldCgkZmllbGRfaW5mb1skb25lXSkgKSB7CgkkY29sdW1uc1tdID0gJGZpZWxkX2luZm9bJG9uZV1bJ2NvbHVtbiddOwoJLy9pZiggc3RhcnRzd2l0aCgkb25lLCdmOicpIHx8IHN0YXJ0c3dpdGgoJG9uZSwncDonKSApIHsKCWlmKCBpc3NldCgkZmllbGRfaW5mb1skb25lXVsnam9pbiddKSApIHsKCSAgJHRtcCA9ICRmaWVsZF9pbmZvWyRvbmVdWydqb2luJ107CgkgICR0bXAgPSBzdHJfcmVwbGFjZShhcnJheV9rZXlzKCRyZXBfdmFycyksYXJyYXlfdmFsdWVzKCRyZXBfdmFycyksJHRtcCk7CgkgICRqb2luc1tdID0gJHRtcDsKCX0KICAgICAgfQogICAgfQoKICAgIC8vIGFzc2VtYmxlIHRoZSBiYXNpYyBxdWVyeQogICAgJHF1ZXJ5ID0gJ1NFTEVDVCAnLmltcGxvZGUoJywnLCRjb2x1bW5zKS4nIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzIFUKICAgICAgICAgICAgICBMRUZUIEpPSU4gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzX2Rvd25sb2FkcyBVRCBPTiBVLnVwbG9hZF9pZCA9IFVELmZpbGVfaWQKICAgICAgICAgICAgICBMRUZUIEpPSU4gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzX2NhdGVnb3JpZXMgVUMgT04gVS51cGxvYWRfY2F0ZWdvcnlfaWQgPSBVQy51cGxvYWRfY2F0ZWdvcnlfaWQnOwogICAgaWYoIGNvdW50KCRqb2lucykgKSAkcXVlcnkgLj0gJyAnLmltcGxvZGUoJyAnLCRqb2lucyk7CiAgICAkcXVlcnkgLj0gJyBXSEVSRSAnLmltcGxvZGUoJyBBTkQgJywkd2hlcmUpOwogICAgaWYoICRwcm9maWxlWydyZXBvcnRfdHlwZSddID09ICdzdW1tYXJ5JyApIHsKICAgICAgLy8kcXVlcnkgLj0gJyBHUk9VUCBCWSBVLnVwbG9hZF9pZCxVRC5kb3dubG9hZF91c2VyICc7CiAgICAgICRxdWVyeSAuPSAnIEdST1VQIEJZIFUudXBsb2FkX2lkICc7CiAgICB9CgogICAgLy8gYWRkIHNvcnRpbmcKICAgICR0bXAgPSBhcnJheSgpOwogICAgJHNvcnRieSA9ICRmaWVsZF9pbmZvWyRwcm9maWxlWyd2aWV3X3NvcnRpbmcnXV1bJ2NvbHVtbiddOwogICAgaWYoIGlzc2V0KCRzb3J0aW5nc1skcHJvZmlsZVsndmlld19zb3J0aW5nJ11dWydzb3J0YnknXSkgKSB7CiAgICAgICRzb3J0YnkgPSAkc29ydGluZ3NbJHByb2ZpbGVbJ3ZpZXdfc29ydGluZyddXVsnc29ydGJ5J107CiAgICB9CiAgICAkc29ydG9yZGVyID0gJHByb2ZpbGVbJ3ZpZXdfc29ydG9yZGVyJ107CiAgICBpZiggJHNvcnRvcmRlciA9PSAnKmRlZmF1bHQqJyApIHsKICAgICAgJHNvcnRvcmRlciA9ICdBU0MnOwogICAgICBpZiggaXNzZXQoJHNvcnRpbmdzWyRwcm9maWxlWyd2aWV3X3NvcnRpbmcnXV1bJ2RmbHRzb3J0YnknXSkgKSAkc29ydG9yZGVyID0gJHNvcnRpbmdzWyRwcm9maWxlWyd2aWV3X3NvcnRpbmcnXV1bJ2RmbHRzb3J0YnknXTsKICAgIH0KICAgIC8vIG5vdGU6IHByZXBlbmRzIHNvcnQgYnkgdXBsb2FkIG5hbWUuCiAgICAvL2lmKCAkcHJvZmlsZVsndmlld19zb3J0aW5nJ10gIT0gJ3VwbG9hZF9uYW1lJyApICR0bXBbXSA9ICRmaWVsZF9pbmZvWyd1cGxvYWRfbmFtZSddWydjb2x1bW4nXS4nIEFTQyc7IAogICAgJHRtcFtdID0gIiRzb3J0YnkgJHNvcnRvcmRlciI7CgogICAgLy8gc2Vjb25kIHNvcnRpbmcKICAgIGlmKCBpc3NldCgkc29ydGluZ3NbJHByb2ZpbGVbJ3ZpZXdfc29ydGluZyddXVsnc29ydGJ5MiddKSApIHsKICAgICAgJHNvcnRieSA9ICRzb3J0aW5nc1skcHJvZmlsZVsndmlld19zb3J0aW5nJ11dWydzb3J0YnkyJ107CiAgICAgICRzb3J0b3JkZXIgPSAkcHJvZmlsZVsndmlld19zb3J0b3JkZXInXTsKICAgICAgaWYoICRzb3J0b3JkZXIgPT0gJypkZWZhdWx0KicgKSB7Cgkkc29ydG9yZGVyID0gJ0FTQyc7CglpZiggaXNzZXQoJHNvcnRpbmdzWyRwcm9maWxlWyd2aWV3X3NvcnRpbmcnXV1bJ2RmbHRzb3J0YnkyJ10pICkgJHNvcnRvcmRlciA9ICRzb3J0aW5nc1skcHJvZmlsZVsndmlld19zb3J0aW5nJ11dWydkZmx0c29ydGJ5J107CiAgICAgIH0KICAgICAgJHRtcFtdID0gIiRzb3J0YnkgJHNvcnRvcmRlciI7CiAgICB9CiAgICAkcXVlcnkgLj0gJyBPUkRFUiBCWSAnLmltcGxvZGUoJywgJywkdG1wKTsKCiAgICAkZGJyID0gJGRiLT5HZXRBcnJheSgkcXVlcnksYXJyYXkoJHdoZXJlcCkpOwogICAgaWYoICFpc19hcnJheSgkZGJyKSB8fCBjb3VudCgkZGJyKSA9PSAwICkgJGVycm9yID0gJHRoaXMtPkxhbmcoJ2Vycm9yX21hdGNoaW5ncmVjb3JkcycpOwogIH0KCiAgc3dpdGNoKCAkcHJvZmlsZVsnb3V0cHV0X3R5cGUnXSApIHsKICBjYXNlICdjc3YnOgogICAgaWYoICRlcnJvciApIHsKICAgICAgZWNobyAkdGhpcy0+U2hvd0Vycm9ycygkZXJyb3IpOwogICAgICBicmVhazsKICAgIH0KICAgICRoYW5kbGVycyA9IG9iX2xpc3RfaGFuZGxlcnMoKTsgCiAgICBmb3IgKCRjbnQgPSAwOyAkY250IDwgc2l6ZW9mKCRoYW5kbGVycyk7ICRjbnQrKykgeyBvYl9lbmRfY2xlYW4oKTsgfQogICAgaGVhZGVyKCJDb250ZW50LWRpc3Bvc2l0aW9uOiBhdHRhY2htZW50OyBmaWxlbmFtZT11cGxvYWRzLiIgLiBkYXRlKCJZLW0tZCIpIC4gIi5jc3YiKTsKICAgIGhlYWRlcigiQ29udGVudC10eXBlOiB0ZXh0L2NzdiIpOwogICAgZmx1c2goKTsKICAgICRoZHIgPSBhcnJheV9rZXlzKCRkYnJbMF0pOwogICAgZWNobyAnIycuY2dlX2FycmF5OjppbXBsb2RlX3F1b3RlZCgkaGRyKS4iXG4iOwogICAgZm9yZWFjaCggJGRiciBhcyAkcmVjICkgewogICAgICBlY2hvIGNnZV9hcnJheTo6aW1wbG9kZV9xdW90ZWQoYXJyYXlfdmFsdWVzKCRyZWMpKS4iXG4iOwogICAgfQogICAgZmx1c2goKTsKICAgIGV4aXQ7CiAgICBicmVhazsKCiAgY2FzZSAnaHRtbCc6CiAgICBpZiggJGVycm9yICkgewogICAgICAkc21hcnR5LT5hc3NpZ24oJ2Vycm9yJywkZXJyb3IpOwogICAgfQogICAgaWYoIGlzc2V0KCRkYnIpICYmIGlzX2FycmF5KCRkYnIpICYmIGNvdW50KCRkYnIpICkgewogICAgICAvLyBjcmVhdGUgbGFiZWxzLgogICAgICAkb3V0ID0gYXJyYXkoKTsKICAgICAgJHJlYyA9IGFycmF5X2tleXMoJGRiclswXSk7CiAgICAgIGZvcmVhY2goICRyZWMgYXMgJiRvbmUgKSB7CglpZiggaXNzZXQoJGZpZWxkX2luZm9bJG9uZV0pICkgewoJICAkb3V0WyRvbmVdID0gJGZpZWxkX2luZm9bJG9uZV1bJ2xhYmVsJ107CgkgIGNvbnRpbnVlOwoJfQoJaWYoIGlzc2V0KCRmaWVsZF9pbmZvWydmOicuJG9uZV0pICkgewoJICAkb3V0WyRvbmVdID0gJGZpZWxkX2luZm9bJ2Y6Jy4kb25lXVsnbGFiZWwnXTsKCSAgY29udGludWU7Cgl9CglpZiggaXNzZXQoJGZpZWxkX2luZm9bJ3A6Jy4kb25lXSkgKSB7CgkgICRvdXRbJG9uZV0gPSAkZmllbGRfaW5mb1sncDonLiRvbmVdWydsYWJlbCddOwoJfQogICAgICB9CiAgICAgICRzbWFydHktPmFzc2lnbignYXV0b19jb2x1bW5zJywkcmVxdWlyZWRfY29sdW1ucyk7CiAgICAgICRzbWFydHktPmFzc2lnbignbGFiZWxzJywkb3V0KTsKICAgICAgJHNtYXJ0eS0+YXNzaWduKCdyZWNvcmRzJywkZGJyKTsKICAgIH0KICAgICRzbWFydHktPmFzc2lnbigndXNlcicsJHVzZXIpOwogICAgJHNtYXJ0eS0+YXNzaWduKCdwcm9maWxlJywkcHJvZmlsZSk7CiAgICBlY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGVGcm9tRGF0YWJhc2UoJ3JkZl8nLiRwcm9maWxlWydvdXRwdXRfdGVtcGxhdGUnXSk7CiAgICBleGl0OwogICAgYnJlYWs7CgogIGNhc2UgJ2h0bWxlbWFpbCc6CiAgICBpZiggJGVycm9yICkgewogICAgICBlY2hvICR0aGlzLT5TaG93RXJyb3JzKCRlcnJvcik7CiAgICAgIGJyZWFrOwogICAgfQogICAgJG91dCA9IGFycmF5KCk7CiAgICAkcmVjID0gYXJyYXlfa2V5cygkZGJyWzBdKTsKICAgIGZvcmVhY2goICRyZWMgYXMgJiRvbmUgKSB7CiAgICAgIGlmKCBpc3NldCgkZmllbGRfaW5mb1skb25lXSkgKSAkb3V0WyRvbmVdID0gJGZpZWxkX2luZm9bJG9uZV1bJ2xhYmVsJ107CiAgICAgIGlmKCBpc3NldCgkZmllbGRfaW5mb1snZjonLiRvbmVdKSApICRvdXRbJG9uZV0gPSAkZmllbGRfaW5mb1snZjonLiRvbmVdWydsYWJlbCddOwogICAgICBpZiggaXNzZXQoJGZpZWxkX2luZm9bJ3A6Jy4kb25lXSkgKSAkb3V0WyRvbmVdID0gJGZpZWxkX2luZm9bJ3A6Jy4kb25lXVsnbGFiZWwnXTsKICAgIH0KICAgICRzbWFydHktPmFzc2lnbignYXV0b19jb2x1bW5zJywkcmVxdWlyZWRfY29sdW1ucyk7CiAgICAkc21hcnR5LT5hc3NpZ24oJ2xhYmVscycsJG91dCk7CiAgICAkc21hcnR5LT5hc3NpZ24oJ3VzZXInLCR1c2VyKTsKICAgICRzbWFydHktPmFzc2lnbigncHJvZmlsZScsJHByb2ZpbGUpOwogICAgJHNtYXJ0eS0+YXNzaWduKCdyZWNvcmRzJywkZGJyKTsKICAgICRvdXQgPSAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlRnJvbURhdGFiYXNlKCdyZGZfJy4kcHJvZmlsZVsnb3V0cHV0X3RlbXBsYXRlJ10pOwogICAgJG1haWxlciA9IGNtc191dGlsczo6Z2V0X21vZHVsZSgnQ01TTWFpbGVyJyk7CiAgICAkbWFpbGVyLT5BZGRBZGRyZXNzKCR1c2VyZW1haWwpOwogICAgJG1haWxlci0+U2V0U3ViamVjdCgkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlRnJvbURhdGEoJ3tzaXRlbmFtZX0gLSBEb3dubG9hZHMgYnkgRmlsZSBSZXBvcnQnKSk7CiAgICAkbWFpbGVyLT5TZXRCb2R5KCRvdXQpOwogICAgJG1haWxlci0+SXNIVE1MKFRSVUUpOwogICAgJG1haWxlci0+U2VuZCgpOwogICAgJG1haWxlci0+cmVzZXQoKTsKICAgIGVjaG8gJHRoaXMtPlNob3dNZXNzYWdlKCR0aGlzLT5MYW5nKCdtc2dfcmVwb3J0X3NlbnQnKSk7CiAgICBicmVhazsKICB9Cn0KCi8vCi8vIGJ1aWxkIHRoZSBmb3JtLgovLwokZmllbGRsaXN0ID0gYXJyYXkoKTsKZm9yZWFjaCggJGZpZWxkX2luZm8gYXMgJGtleSA9PiAkcmVjICkgewogICRzaG93ID0gMTsKICBzd2l0Y2ggKCAkcHJvZmlsZVsncmVwb3J0X3R5cGUnXSApIHsKICBjYXNlICdzdW1tYXJ5JzoKICAgIGlmKCBpc3NldCgkcmVjWydzdW1tYXJ5cnB0J10pICkgJHNob3cgPSAkcmVjWydzdW1tYXJ5cnB0J107CiAgICBicmVhazsKCiAgY2FzZSAnZGV0YWlsJzoKICAgIGlmKCBpc3NldCgkcmVjWydkZXRhaWxycHQnXSkgKSAkc2hvdyA9ICRyZWNbJ2RldGFpbHJwdCddOwogICAgYnJlYWs7CiAgfQogIGlmKCAhJHNob3cgKSBjb250aW51ZTsKICAkZmllbGRsaXN0WyRrZXldID0gJHJlY1snbGFiZWwnXTsKfQokc21hcnR5LT5hc3NpZ24oJ2ZpZWxkbGlzdCcsJGZpZWxkbGlzdCk7Cgokc29ydGxpc3QgPSBhcnJheSgpOwpmb3JlYWNoKCAkc29ydGluZ3MgYXMgJGtleSA9PiAkcmVjICkgewogICRzaG93ID0gMTsKICBzd2l0Y2ggKCAkcHJvZmlsZVsncmVwb3J0X3R5cGUnXSApIHsKICBjYXNlICdzdW1tYXJ5JzoKICAgIGlmKCBpc3NldCgkcmVjWydzdW1tYXJ5cnB0J10pICkgJHNob3cgPSAkcmVjWydzdW1tYXJ5cnB0J107CiAgICBicmVhazsKCiAgY2FzZSAnZGV0YWlsJzoKICAgIGlmKCBpc3NldCgkcmVjWydkZXRhaWxycHQnXSkgKSAkc2hvdyA9ICRyZWNbJ2RldGFpbHJwdCddOwogICAgYnJlYWs7CiAgfQogIGlmKCAhJHNob3cgKSBjb250aW51ZTsKICAkc29ydGxpc3RbJGtleV0gPSAkcmVjWydsYWJlbCddOwp9CiRzbWFydHktPmFzc2lnbignc29ydGxpc3QnLCRzb3J0bGlzdCk7Cgokc29ydGJ5cyA9IGFycmF5KCcqZGVmYXVsdConPT4kdGhpcy0+TGFuZygncHJvbXB0X2RlZmF1bHQnKSwnQVNDJz0+JHRoaXMtPkxhbmcoJ3Byb21wdF9hc2NlbmRpbmcnKSwnREVTQyc9PiR0aGlzLT5MYW5nKCdwcm9tcHRfZGVzY2VuZGluZycpKTsKJHNtYXJ0eS0+YXNzaWduKCdzb3J0b3JkZXJzJywkc29ydGJ5cyk7Cgokc21hcnR5LT5hc3NpZ24oJ3N0YXJ0X3RpbWUnLCRmaXJzdF9kYXlfb2ZfbW9udGgpOwokc21hcnR5LT5hc3NpZ24oJ2VuZF90aW1lJywkbGFzdF9kYXlfb2ZfbW9udGgpOwoKJHVybCA9ICR0aGlzLT5jcmVhdGVfdXJsKCRpZCwnYWRtaW5fYWpheF9vcHMnLCRyZXR1cm5pZCxhcnJheSgnb3AnPT4ndXNlcl9hdXRvY29tcGxldGUnKSkuJyZzaG93dGVtcGxhdGU9ZmFsc2UnOwokc21hcnR5LT5hc3NpZ24oJ3VybF9hamF4X2ZldV91c2Vycycsc3RyX3JlcGxhY2UoJyZhbXA7JywnJicsJHVybCkpOwokdXJsID0gJHRoaXMtPmNyZWF0ZV91cmwoJGlkLCdhZG1pbl9hamF4X29wcycsJHJldHVybmlkLGFycmF5KCdvcCc9PidmaWxlX2F1dG9jb21wbGV0ZScpKS4nJnNob3d0ZW1wbGF0ZT1mYWxzZSc7CiRzbWFydHktPmFzc2lnbigndXJsX2FqYXhfZmlsZXMnLHN0cl9yZXBsYWNlKCcmYW1wOycsJyYnLCR1cmwpKTsKCiRzbWFydHktPmFzc2lnbigncHJvZmlsZScsJHByb2ZpbGUpOwokc21hcnR5LT5hc3NpZ24oJ2ZldV9ncm91cHMnLCRmZXVfZ3JvdXBzKTsKJHNtYXJ0eS0+YXNzaWduKCd1cGxvYWRfY2F0ZWdvcmllcycsJHVwbG9hZF9jYXRlZ29yaWVzKTsKJHNtYXJ0eS0+YXNzaWduKCdyZXBvcnRfdHlwZXMnLCRyZXBvcnRfdHlwZXMpOwokc21hcnR5LT5hc3NpZ24oJ2Zvcm1zdGFydCcsJHRoaXMtPkNHQ3JlYXRlRm9ybVN0YXJ0KCRpZCwnYWRtaW5fcmVwb3J0X2Rvd25sb2Fkc2J5ZmlsZScpKTsKJHNtYXJ0eS0+YXNzaWduKCdmb3JtZW5kJywkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsKCiR0ZW1wbGF0ZXMgPSBjZ2VfdGVtcGxhdGVfdXRpbHM6OmdldF90ZW1wbGF0ZXNfYnlfcHJlZml4KCR0aGlzLCdyZGZfJyk7CmlmKCBpc19hcnJheSgkdGVtcGxhdGVzKSAmJiBjb3VudCgkdGVtcGxhdGVzKSApIHsKICAkb3V0ID0gYXJyYXkoKTsKICBmb3JlYWNoKCAkdGVtcGxhdGVzIGFzICR0cGwgKSB7CiAgICAkdHBsID0gc3Vic3RyKCR0cGwsNCk7CiAgICAkb3V0WyR0cGxdID0gJHRwbDsKICB9CiAgJHNtYXJ0eS0+YXNzaWduKCdvdXRwdXRfdGVtcGxhdGVzJywkb3V0KTsKfQoKJG91dHB1dF90eXBlcyA9IGFycmF5KCdjc3YnPT4kdGhpcy0+TGFuZygnZXhwb3J0X2NzdicpLCdodG1sJz0+JHRoaXMtPkxhbmcoJ2V4cG9ydF9odG1sJykpOwppZiggJHVzZXJlbWFpbCApICRvdXRwdXRfdHlwZXNbJ2h0bWxlbWFpbCddID0gJHRoaXMtPkxhbmcoJ2V4cG9ydF9odG1sZW1haWwnKTsKJHNtYXJ0eS0+YXNzaWduKCdvdXRwdXRfdHlwZXMnLCRvdXRwdXRfdHlwZXMpOwoKZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCdhZG1pbl9yZXBvcnRfZG93bmxvYWRzYnlmaWxlLnRwbCcpOwoKIwojIEVPRgojCj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/action.admin_report_downloadsbyuser.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojIEF1dGhvcjogUm9iZXJ0IENhbXBiZWxsIDxyb2JAdGVjaGNvbS5keW5kbnMub3JnPgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDoJLy93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKaWYoICEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdDcmVhdGUgVXBsb2FkcyBSZXBvcnRzJykgKSByZXR1cm47CiR0aGlzLT5TZXRDdXJyZW50VGFiKCdyZXBvcnRzJyk7CgovLwovLyBzZXR1cAovLwokZmV1ID0gY21zX3V0aWxzOjpnZXRfbW9kdWxlKE1PRF9GUk9OVEVORFVTRVJTLCcxLjIxLjE1Jyk7CmlmKCAhJGZldSApIHsKICAkdGhpcy0+U2V0RXJyb3IoJHRoaXMtPkxhbmcoJ2Vycm9yX25vZmV1JykpOwogICR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCk7Cn0KCi8vIGdldCB0aGlzIHVzZXJzIGVtYWlsIGFkZHJlc3MuCiR1c2VyZW1haWwgPSAnJzsKJHVzZXIgPSB1c2Vyb3BlcmF0aW9uczo6Z2V0X2luc3RhbmNlKCktPkxvYWRVc2VyQnlJZChnZXRfdXNlcmlkKCkpOwppZiggaXNfb2JqZWN0KCR1c2VyKSAmJiAkdXNlci0+ZW1haWwgIT0gJycgKSAkdXNlcmVtYWlsID0gJHVzZXItPmVtYWlsOwoKJHF1ZXJ5ID0gJ1NFTEVDVCBGLmlkLCBGLm5hbWUsIEYudHlwZSwgRi5hdHRyaWJzLCBGLmlvcmRlciBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2Fkc19maWVsZGRlZnMgRiBPUkRFUiBCWSBpb3JkZXIgQVNDJzsKJGN1c3RvbV9maWVsZHMgPSAkZGItPkdldEFycmF5KCRxdWVyeSk7CgokZmV1X3Byb3BkZWZucyA9ICRmZXUtPkdldFByb3BlcnR5RGVmbnMoKTsKJGZpZWxkX2luZm8gPSBhcnJheSgpOwokZmllbGRfaW5mb1sndXBsb2FkX2lkJ10gPSBhcnJheSgnY29sdW1uJz0+J1UudXBsb2FkX2lkJywnbGFiZWwnPT4kdGhpcy0+TGFuZygnZmllbGRfdXBsb2FkX2lkJykpOwokZmllbGRfaW5mb1snY2F0ZWdvcnlfaWQnXSA9IGFycmF5KCdjb2x1bW4nPT4nVS51cGxvYWRfY2F0ZWdvcnlfaWQgQVMgY2F0ZWdvcnlfaWQnLCdsYWJlbCc9PiR0aGlzLT5MYW5nKCdmaWVsZF91cGxvYWRfY2F0ZWdvcnlfaWQnKSk7CiRmaWVsZF9pbmZvWydjYXRlZ29yeV9uYW1lJ10gPSBhcnJheSgnY29sdW1uJz0+J1VDLnVwbG9hZF9jYXRlZ29yeV9uYW1lIEFTIGNhdGVnb3J5X25hbWUnLCdsYWJlbCc9PiR0aGlzLT5MYW5nKCdmaWVsZF91cGxvYWRfY2F0ZWdvcnlfbmFtZScpKTsKJGZpZWxkX2luZm9bJ2NhdGVnb3J5X3BhdGgnXSA9IGFycmF5KCdjb2x1bW4nPT4nVUMudXBsb2FkX2NhdGVnb3J5X3BhdGggQVMgY2F0ZWdvcnlfcGF0aCcsJ2xhYmVsJz0+JHRoaXMtPkxhbmcoJ2ZpZWxkX3VwbG9hZF9jYXRlZ29yeV9wYXRoJykpOwokZmllbGRfaW5mb1sndXBsb2FkX25hbWUnXSA9IGFycmF5KCdjb2x1bW4nPT4nVS51cGxvYWRfbmFtZScsJ2xhYmVsJz0+JHRoaXMtPkxhbmcoJ2ZpZWxkX3VwbG9hZF9uYW1lJykpOwokZmllbGRfaW5mb1snYXV0aG9yJ10gPSBhcnJheSgnY29sdW1uJz0+J1UudXBsb2FkX2F1dGhvciBBUyBhdXRob3InLCdsYWJlbCc9PiR0aGlzLT5MYW5nKCdmaWVsZF91cGxvYWRfYXV0aG9yJykpOwokZmllbGRfaW5mb1snc3VtbWFyeSddID0gYXJyYXkoJ2NvbHVtbic9PidVLnVwbG9hZF9zdW1tYXJ5IEFTIHN1bW1hcnknLCdsYWJlbCc9PiR0aGlzLT5MYW5nKCdmaWVsZF91cGxvYWRfc3VtbWFyeScpKTsKJGZpZWxkX2luZm9bJ2Rlc2NyaXB0aW9uJ10gPSBhcnJheSgnY29sdW1uJz0+J1UudXBsb2FkX2Rlc2NyaXB0aW9uIEFTIGRlc2NyaXB0aW9uJywnbGFiZWwnPT4kdGhpcy0+TGFuZygnZmllbGRfdXBsb2FkX2Rlc2NyaXB0aW9uJykpOwokZmllbGRfaW5mb1sndXBsb2FkX2lwJ10gPSBhcnJheSgnY29sdW1uJz0+J1UudXBsb2FkX2lwJywnbGFiZWwnPT4kdGhpcy0+TGFuZygnZmllbGRfdXBsb2FkX2lwJykpOwokZmllbGRfaW5mb1sndXBsb2FkX3NpemUnXSA9IGFycmF5KCdjb2x1bW4nPT4nVS51cGxvYWRfc2l6ZScsJ2xhYmVsJz0+JHRoaXMtPkxhbmcoJ2ZpZWxkX3VwbG9hZF9zaXplJykpOwokZmllbGRfaW5mb1sndXBsb2FkX2RhdGUnXSA9IGFycmF5KCdjb2x1bW4nPT4nVS51cGxvYWRfZGF0ZScsJ2xhYmVsJz0+JHRoaXMtPkxhbmcoJ2ZpZWxkX3VwbG9hZF9kYXRlJykpOwokZmllbGRfaW5mb1snZG93bmxvYWRzJ10gPSBhcnJheSgnY29sdW1uJz0+J0NPVU5UKFVELmRvd25sb2FkX2lkKSBBUyBkb3dubG9hZHMnLCdsYWJlbCc9PiR0aGlzLT5MYW5nKCdmaWVsZF9kb3dubG9hZHMnKSwnZGV0YWlscnB0Jz0+MCk7CiRmaWVsZF9pbmZvWydkb3dubG9hZF91c2VyJ10gPSBhcnJheSgnY29sdW1uJz0+J1VELmRvd25sb2FkX3VzZXInLCdsYWJlbCc9PiR0aGlzLT5MYW5nKCdmaWVsZF9kb3dubG9hZF91c2VyJykpOwokZmllbGRfaW5mb1snZG93bmxvYWRfZGF0ZSddID0gYXJyYXkoJ2NvbHVtbic9PidVRC5kb3dubG9hZF9kYXRlJywnbGFiZWwnPT4kdGhpcy0+TGFuZygnZmllbGRfZG93bmxvYWRfZGF0ZScpLCdzdW1tYXJ5cnB0Jz0+MCk7CiRmaWVsZF9pbmZvWydsYXRlc3RfZG93bmxvYWQnXSA9IGFycmF5KCdjb2x1bW4nPT4nTUFYKFVELmRvd25sb2FkX2RhdGUpIEFTIGxhdGVzdF9kb3dubG9hZCcsCgkJCQkgICAgICAgJ2xhYmVsJz0+JHRoaXMtPkxhbmcoJ2ZpZWxkX2xhdGVzdF9kb3dubG9hZCcpLAoJCQkJICAgICAgICdkZXRhaWxycHQnPT4wKTsKaWYoIGlzX2FycmF5KCRjdXN0b21fZmllbGRzKSAmJiBjb3VudCgkY3VzdG9tX2ZpZWxkcykgKSB7CiAgJGkgPSAxOwogIGZvcmVhY2goICRjdXN0b21fZmllbGRzIGFzICRvbmUgKSB7CiAgICAkYWxpYXMgPSAnRlYnLiRpKys7CiAgICAkbmFtZSA9IHN0cl9yZXBsYWNlKCcgJywnXycsJG9uZVsnbmFtZSddKTsKICAgICRmaWVsZF9pbmZvWydmOicuJG5hbWVdID0gCiAgICAgIGFycmF5KCdqb2luJz0+J0xFRlQgSk9JTiAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHNfZmllbGR2YWxzICcuJGFsaWFzLicKICAgICAgICAgICAgIE9OIFUudXBsb2FkX2lkID0gJy4kYWxpYXMuJy51cGxvYWRfaWQgQU5EICcuJGFsaWFzLicuZmxkX2lkID0gJy4oaW50KSRvbmVbJ2lkJ10sCgkgICAgJ2NvbHVtbic9PiRhbGlhcy4nLnZhbHVlIEFTICcuJG5hbWUsCgkgICAgJ2xhYmVsJz0+JHRoaXMtPkxhbmcoJ2ZpZWxkJykuJzogJy4kb25lWyduYW1lJ10pOwogIH0KfQppZiggaXNfYXJyYXkoJGZldV9wcm9wZGVmbnMpICYmIGNvdW50KCRmZXVfcHJvcGRlZm5zKSApIHsKICAkaSA9IDE7CiAgdXNvcnQoJGZldV9wcm9wZGVmbnMsZnVuY3Rpb24oJGEsJGIpeyByZXR1cm4gc3RyY21wKCRhWydwcm9tcHQnXSwkYlsncHJvbXB0J10pOyB9KTsKICBmb3JlYWNoKCAkZmV1X3Byb3BkZWZucyBhcyAka2V5ID0+ICRvbmUgKSB7CiAgICBpZiggJG9uZVsndHlwZSddID09ICRmZXU6OkZJRUxEVFlQRV9EQVRBICkgY29udGludWU7CiAgICAkYWxpYXMgPSAnRkVVJy4kaSsrOwogICAgJHN1YnNlbGVjdCA9ICJMRUZUIEpPSU4gKFNFTEVDVCBGRVUudXNlcm5hbWUsRkVVVi50aXRsZSxGRVVQLnR5cGUsRkVVVi5kYXRhIEZST00gY21zX21vZHVsZV9mZXVzZXJzX3VzZXJzIEZFVSBMRUZUIEpPSU4gY21zX21vZHVsZV9mZXVzZXJzX3Byb3BlcnRpZXMgRkVVViBPTiBGRVUuaWQgPSBGRVVWLnVzZXJpZCBMRUZUIEpPSU4gY21zX21vZHVsZV9mZXVzZXJzX3Byb3BkZWZuIEZFVVAgT04gRkVVUC5uYW1lID0gRkVVVi50aXRsZSBXSEVSRSBGRVVQLnR5cGUgIT0gOSBBTkQgRkVVUC5uYW1lID0gJyVzJykgJGFsaWFzIjsKICAgICRmaWVsZF9pbmZvWydwOicuJG9uZVsnbmFtZSddXSA9IAogICAgICBhcnJheSgnY29sdW1uJz0+IiRhbGlhcy5kYXRhIEFTICIuJG9uZVsnbmFtZSddLAoJICAgICdqb2luJz0+c3ByaW50Zigkc3Vic2VsZWN0LCRvbmVbJ25hbWUnXSkuIiBPTiBVRC5kb3dubG9hZF91c2VyID0gJGFsaWFzLnVzZXJuYW1lIiwKCSAgICAnbGFiZWwnPT4kdGhpcy0+TGFuZygndXNlcnByb3AnKS4nOiAnLiRvbmVbJ3Byb21wdCddKTsKICB9Cn0KLy8gdG9kbzogYWRkIGN1c3RvbSBmaWVsZHMgaW4gaGVyZS4KCiRzb3J0aW5ncyA9IGFycmF5KCk7CiRzb3J0aW5nc1sndXBsb2FkX2lkJ10gPSBhcnJheSgnbGFiZWwnPT4kdGhpcy0+TGFuZygnZmllbGRfdXBsb2FkX2lkJykpOwokc29ydGluZ3NbJ2NhdGVnb3J5X25hbWUnXSA9IGFycmF5KCdsYWJlbCc9PiR0aGlzLT5MYW5nKCdmaWVsZF91cGxvYWRfY2F0ZWdvcnlfbmFtZScpKTsKJHNvcnRpbmdzWyd1cGxvYWRfbmFtZSddID0gYXJyYXkoJ2xhYmVsJz0+JHRoaXMtPkxhbmcoJ2ZpZWxkX3VwbG9hZF9uYW1lJykpOwokc29ydGluZ3NbJ2F1dGhvciddID0gYXJyYXkoJ2xhYmVsJz0+JHRoaXMtPkxhbmcoJ2ZpZWxkX3VwbG9hZF9hdXRob3InKSwncmVxZmllbGQnPT4nYXV0aG9yJywnc29ydGJ5Jz0+J2F1dGhvcicpOwokc29ydGluZ3NbJ3NpemUnXSA9IGFycmF5KCdkZmx0c29ydGJ5Jz0+J0RFU0MnLCdsYWJlbCc9PiR0aGlzLT5MYW5nKCdmaWVsZF91cGxvYWRfc2l6ZScpKTsKJHNvcnRpbmdzWydkYXRlJ10gPSBhcnJheSgnZGZsdHNvcnRieSc9PidERVNDJywnbGFiZWwnPT4kdGhpcy0+TGFuZygnZmllbGRfdXBsb2FkX2RhdGUnKSk7CiRzb3J0aW5nc1snc3VtbWFyeSddID0gYXJyYXkoJ2RmbHRzb3J0YnknPT4nQVNDJywnbGFiZWwnPT4kdGhpcy0+TGFuZygnZmllbGRfdXBsb2FkX3N1bW1hcnknKSwnc29ydGJ5Jz0+J3N1bW1hcnknLCdyZXFmaWVsZCc9PidzdW1tYXJ5Jyk7CiRzb3J0aW5nc1snZG93bmxvYWRzJ10gPSBhcnJheSgnbGFiZWwnPT4kdGhpcy0+TGFuZygnZmllbGRfZG93bmxvYWRzJyksJ3JlcWZpZWxkJz0+J2Rvd25sb2FkcycsJ2RldGFpbHJwdCc9PjAsJ3NvcnRieSc9Pidkb3dubG9hZHMnKTsKJHNvcnRpbmdzWydkb3dubG9hZF91c2VyJ10gPSBhcnJheSgnbGFiZWwnPT4kdGhpcy0+TGFuZygnZmllbGRfZG93bmxvYWRfdXNlcicpLCdzdW1tYXJ5cnB0Jz0+MCk7CiRzb3J0aW5nc1snZG93bmxvYWRfZGF0ZSddID0gYXJyYXkoJ2RmbHRzb3J0YnknPT4nREVTQycsJ2xhYmVsJz0+JHRoaXMtPkxhbmcoJ2ZpZWxkX2Rvd25sb2FkX2RhdGUnKSwnc3VtbWFyeXJwdCc9PjApOwppZiggaXNfYXJyYXkoJGN1c3RvbV9maWVsZHMpICYmIGNvdW50KCRjdXN0b21fZmllbGRzKSApIHsKICBmb3JlYWNoKCAkY3VzdG9tX2ZpZWxkcyBhcyAkb25lICkgewogICAgJHNvcnRpbmdzWydmOicuJG9uZVsnbmFtZSddXSA9IAogICAgICBhcnJheSgnbGFiZWwnPT4kdGhpcy0+TGFuZygnZmllbGQnKS4nOiAnLiRvbmVbJ25hbWUnXSwKCSAgICAncmVxZmllbGQnPT4nZjonLiRvbmVbJ25hbWUnXSk7CiAgfQp9CmlmKCBpc19hcnJheSgkZmV1X3Byb3BkZWZucykgJiYgY291bnQoJGZldV9wcm9wZGVmbnMpICkgewogIGZvcmVhY2goICRmZXVfcHJvcGRlZm5zIGFzICRrZXkgPT4gJG9uZSApIHsKICAgIGlmKCAhaW5fYXJyYXkoJG9uZVsndHlwZSddLGFycmF5KCRmZXU6OkZJRUxEVFlQRV9URVhULCRmZXU6OkZJRUxEVFlQRV9FTUFJTCwKCQkJCSAgICAgJGZldTo6RklFTERUWVBFX0RST1BET1dOLCRmZXU6OkZJRUxEVFlQRV9SQURJT0JVVE5TLAoJCQkJICAgICAkZmV1OjpGSUVMRFRZUEVfREFURSkpICkgY29udGludWU7CiAgICAkc29ydGluZ3NbJ3A6Jy4kb25lWyduYW1lJ11dID0gYXJyYXkoJ2xhYmVsJz0+JHRoaXMtPkxhbmcoJ3VzZXJwcm9wJykuJzogJy4kb25lWyduYW1lJ10sCgkJCQkJICdzb3J0YnknPT4kb25lWyduYW1lJ10sICdyZXFmaWVsZCc9PidwOicuJG9uZVsnbmFtZSddKTsKICB9Cn0KLy8gdG9kbzogYWRkIGN1c3RvbSBmaWVsZHMgaGVyZS4KCiRmZXVfZ3JvdXBzID0gYXJyYXlfZmxpcCgkZmV1LT5HZXRHcm91cExpc3QoKSk7CiR1cGxvYWRfY2F0ZWdvcmllcyA9IGFycmF5X2ZsaXAoJHRoaXMtPmdldENhdGVnb3J5TGlzdCgpKTsKJHJlcG9ydF90eXBlcyA9IGFycmF5KCdzdW1tYXJ5Jz0+JHRoaXMtPkxhbmcoJ3JlcG9ydF9zdW1tYXJ5JyksJ2RldGFpbCc9PiR0aGlzLT5MYW5nKCdyZXBvcnRfZGV0YWlsJykpOwokZmlyc3RfZGF5X29mX21vbnRoID0gbWt0aW1lKDAsMCwwLGRhdGUoJ20nKSwxLGRhdGUoJ1knKSk7CiRsYXN0X2RheV9vZl9tb250aCA9IG1rdGltZSgyMyw1OSw1OSxkYXRlKCdtJykrMSwwLGRhdGUoJ1knKSk7CiRkZmx0X2ZsZHMgPSBhcnJheSgndXBsb2FkX25hbWUnLCd1cGxvYWRfYXV0aG9yJywndXBsb2FkX3NpemUnLCd1cGxvYWRfZGF0ZScsJ2Rvd25sb2FkcycsJ2Rvd25sb2FkX3VzZXInKTsKCi8vYnVpbGQgdXNlciBwcm9maWxlCiRwcm9maWxlID0gYXJyYXkoJ3JlcG9ydF90eXBlJz0+J3N1bW1hcnknLCdvdXRwdXRfdGVtcGxhdGUnPT4nJywnZmV1X2dyb3Vwcyc9PmFycmF5KCksJ2NhdGVnb3JpZXMnPT5hcnJheSgpLAoJCSAnZmV1X3VzZXJzJz0+JycsJ3N0YXJ0X2RhdGUnPT4kZmlyc3RfZGF5X29mX21vbnRoLCdlbmRfZGF0ZSc9PiRsYXN0X2RheV9vZl9tb250aCwKCQkgJ3ZpZXdfZmllbGRzJz0+YXJyYXlfa2V5cygkZmllbGRfaW5mbyksJ3ZpZXdfc29ydGluZyc9Pidkb3dubG9hZF91c2VyJywndmlld19zb3J0b3JkZXInPT4nKmRlZmF1bHQqJywKCQkgJ291dHB1dF90eXBlJz0+J2h0bWwnKTsKJHRtcCA9IGNtc191c2VycHJlZnM6OmdldCgkdGhpcy0+R2V0TmFtZSgpLidyZXBvcnRfZG93bmxvYWRzYnl1c2VyJyk7CmlmKCAkdG1wICkgJHByb2ZpbGUgPSB1bnNlcmlhbGl6ZSgkdG1wKTsKCi8vIGhhbmRsZSBidXR0b25zCmlmKCBpc3NldCgkcGFyYW1zWydjYW5jZWwnXSkgKSB7CiAgJHRoaXMtPlNldE1lc3NhZ2UoJHRoaXMtPkxhbmcoJ29wZXJhdGlvbl9jYW5jZWxsZWQnKSk7CiAgJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkKTsKfQoKLy8KLy8gZ2V0IHRoZSBwYXJhbXMuCi8vCmlmKCBpc3NldCgkcGFyYW1zWydyZXBvcnRfdHlwZSddKSApIHsKICAkcHJvZmlsZVsncmVwb3J0X3R5cGUnXSA9ICRwYXJhbXNbJ3JlcG9ydF90eXBlJ107CiAgJHByb2ZpbGVbJ291dHB1dF90ZW1wbGF0ZSddID0gJHBhcmFtc1snb3V0cHV0X3RlbXBsYXRlJ107CiAgaWYoIGlzc2V0KCRwYXJhbXNbJ291dHB1dF90eXBlJ10pICkgJHByb2ZpbGVbJ291dHB1dF90eXBlJ10gPSAkcGFyYW1zWydvdXRwdXRfdHlwZSddOwogIGlmKCBpc3NldCgkcGFyYW1zWydzdGFydF9kYXRlWWVhciddKSApIHsKICAgICRwcm9maWxlWydzdGFydF9kYXRlJ10gPSBta3RpbWUoMCwwLDAsKGludCkkcGFyYW1zWydzdGFydF9kYXRlTW9udGgnXSwoaW50KSRwYXJhbXNbJ3N0YXJ0X2RhdGVEYXknXSwoaW50KSRwYXJhbXNbJ3N0YXJ0X2RhdGVZZWFyJ10pOwogIH0KICBpZiggaXNzZXQoJHBhcmFtc1snZW5kX2RhdGVZZWFyJ10pICkgewogICAgJHByb2ZpbGVbJ2VuZF9kYXRlJ10gPSBta3RpbWUoMjMsNTksNTksKGludCkkcGFyYW1zWydlbmRfZGF0ZU1vbnRoJ10sKGludCkkcGFyYW1zWydlbmRfZGF0ZURheSddLChpbnQpJHBhcmFtc1snZW5kX2RhdGVZZWFyJ10pOwogIH0KICBpZiggJHByb2ZpbGVbJ3N0YXJ0X2RhdGUnXSAhPSAnJyAmJiAkcHJvZmlsZVsnZW5kX2RhdGUnXSAhPSAnJyAmJiAkcHJvZmlsZVsnc3RhcnRfZGF0ZSddID49ICRwcm9maWxlWydlbmRfZGF0ZSddICkgewogICAgLy8gZW5kIGRhdGUgYmVmb3JlIHN0YXJ0IGRhdGUsIGJlIHNtYXJ0IGFuZCBqdXN0IHN3YXAgZW0uCiAgICAkdG1wID0gJHByb2ZpbGVbJ3N0YXJ0X2RhdGUnXTsKICAgICRwcm9maWxlWydzdGFydF9kYXRlJ10gPSAkcHJvZmlsZVsnZW5kX2RhdGUnXTsKICAgICRwcm9maWxlWydlbmRfZGF0ZSddID0gJHRtcDsKICB9CgogIGlmKCBpc3NldCgkcGFyYW1zWyd2aWV3X2ZpZWxkcyddKSApIHsKICAgICRwcm9maWxlWyd2aWV3X2ZpZWxkcyddID0gJHBhcmFtc1sndmlld19maWVsZHMnXTsKICB9CiAgZWxzZSB7CiAgICAkcHJvZmlsZVsndmlld19maWVsZHMnXSA9ICRkZmx0X2ZsZHM7CiAgfQogIGlmKCBpc3NldCgkcGFyYW1zWyd2aWV3X3NvcnRpbmcnXSkgKSAgJHByb2ZpbGVbJ3ZpZXdfc29ydGluZyddID0gJHBhcmFtc1sndmlld19zb3J0aW5nJ107CiAgaWYoIGlzc2V0KCRwYXJhbXNbJ3ZpZXdfc29ydG9yZGVyJ10pICkgJHByb2ZpbGVbJ3ZpZXdfc29ydG9yZGVyJ10gPSAkcGFyYW1zWyd2aWV3X3NvcnRvcmRlciddOwogIGlmKCBpc3NldCgkcGFyYW1zWydjYXRlZ29yaWVzJ10pICkgewogICAgJHByb2ZpbGVbJ2NhdGVnb3JpZXMnXSA9ICRwYXJhbXNbJ2NhdGVnb3JpZXMnXTsKICB9CiAgZWxzZSB7CiAgICAkcHJvZmlsZVsnY2F0ZWdvcmllcyddID0gYXJyYXkoKTsKICB9CgogICRwcm9maWxlWydmZXVfZ3JvdXBzJ10gPSBhcnJheSgpOwogICRwcm9maWxlWydmZXVfdXNlcnMnXSA9ICcnOwogIGlmKCBpc3NldCgkcGFyYW1zWydmZXVfZ3JvdXBzJ10pICYmIGlzX2FycmF5KCRwYXJhbXNbJ2ZldV9ncm91cHMnXSkgJiYgY291bnQoJHBhcmFtc1snZmV1X2dyb3VwcyddKSApIHsKICAgICRwcm9maWxlWydmZXVfZ3JvdXBzJ10gPSAkcGFyYW1zWydmZXVfZ3JvdXBzJ107CiAgfQogIGVsc2UgaWYoIGlzc2V0KCRwYXJhbXNbJ2ZldV91c2VycyddKSAmJiAkcGFyYW1zWydmZXVfdXNlcnMnXSAhPSAnJyApIHsKICAgICRwcm9maWxlWydmZXVfdXNlcnMnXSA9ICRwYXJhbXNbJ2ZldV91c2VycyddOwogIH0KfQoKLy8KLy8gaGFuZGxlIHN1Ym1pdAovLwppZiggaXNzZXQoJHBhcmFtc1snc3VibWl0J10pICkgewogIC8vIGlmIHdlIGdvdCBoZXJlLCBldmVyeXRoaW5nIGNoZWNrcyBvdXQKICBjbXNfdXNlcnByZWZzOjpzZXQoJHRoaXMtPkdldE5hbWUoKS4ncmVwb3J0X2Rvd25sb2Fkc2J5dXNlcicsc2VyaWFsaXplKCRwcm9maWxlKSk7CgogIGlmKCAkcHJvZmlsZVsnb3V0cHV0X3R5cGUnXSAhPSAnaHRtbCcgKSB7CiAgICAvLyBnZW5lcmF0ZSB0aGUgcmVwb3J0IGRpcmVjdGx5LgogICAgJHBhcmFtc1sncmVwb3J0J10gPSAxOwogIH0KICBlbHNlIHsKICAgIC8vIGdvdHRhIG9wZW4gYSBuZXcgd2luZG93IGZpcnN0LgogICAgJHVybCA9ICR0aGlzLT5jcmVhdGVfdXJsKCRpZCwnYWRtaW5fcmVwb3J0X2Rvd25sb2Fkc2J5dXNlcicsJHJldHVybmlkLGFycmF5KCdyZXBvcnQnPT4xKSk7CiAgICAkdXJsID0gc3RyX3JlcGxhY2UoJyZhbXA7JywnJicsJHVybCkuJyZzaG93dGVtcGxhdGU9ZmFsc2UnOwogICAgJHR4dCA9ICJ3aW5kb3cub3BlbigneyR1cmx9JywncmVwb3J0Jywnc2Nyb2xsYmFycz15ZXMsZGlyZWN0b3JpZXM9MCxsb2NhdGlvbj0wLG1lbnViYXI9MCxzdGF0dXM9MCx0b29sYmFyPTAnKTsiOwogICAgJHNtYXJ0eS0+YXNzaWduKCdleHRyYWpzJywkdHh0KTsKICB9Cn0KCmlmKCBpc3NldCgkcGFyYW1zWydyZXBvcnQnXSkgKSB7CiAgLy8gZ2V0IHRoZSB1c2VybmFtZXMuCiAgJGVycm9yID0gJyc7CiAgJHVzZXJzID0gYXJyYXkoKTsKICAkZG9fdXNlcnMgPSAwOwogIGlmKCBjb3VudCgkcHJvZmlsZVsnZmV1X2dyb3VwcyddKSA+IDAgKSB7CiAgICAvLyBleHBhbmQgZ3JvdXBzIHRvIHVzZXJzCiAgICAkZG9fdXNlcnMgPSAxOwogICAgJHF1ZXJ5ID0gbmV3IGZldV91c2VyX3F1ZXJ5KCk7CiAgICAkcXVlcnktPmFkZF9hbmRfb3B0KGZldV91c2VyX3F1ZXJ5X29wdDo6TUFUQ0hfR1JPVVBJRCwkcHJvZmlsZVsnZmV1X2dyb3VwcyddKTsKICAgICRycyA9ICRxdWVyeS0+ZXhlY3V0ZSgpOwogICAgd2hpbGUoICEkcnMtPkVPRigpICkgewogICAgICAkdXNlcnNbXSA9ICRycy0+ZmllbGRzWyd1c2VybmFtZSddOwogICAgICAkcnMtPk1vdmVOZXh0KCk7CiAgICB9CiAgfQogIGVsc2UgaWYoICRwcm9maWxlWydmZXVfdXNlcnMnXSAhPSAnJyApIHsKICAgICRkb191c2VycyA9IDE7CiAgICAkdG1wID0gcHJlZ19zcGxpdCgnL1tccyxdLycsJHByb2ZpbGVbJ2ZldV91c2VycyddKTsKICAgIGlmKCBpc19hcnJheSgkdG1wKSAmJiBjb3VudCgkdG1wKSApIHsKICAgICAgJHRtcDIgPSBhcnJheSgpOwogICAgICBmb3JlYWNoKCAkdG1wIGFzICRvbmUgKSB7Cgkkb25lID0gdHJpbSgkb25lKTsKCWlmKCAhJG9uZSApIGNvbnRpbnVlOwoJJHRtcDJbXSA9ICRvbmU7CiAgICAgIH0KICAgICAgJHVzZXJzID0gJHRtcDI7CiAgICB9CiAgfQogIGlmKCAkZG9fdXNlcnMgJiYgIWNvdW50KCR1c2VycykgKSAkZXJyb3IgPSAkdGhpcy0+TGFuZygnZXJyb3Jfbm91c2Vyc2ZvdW5kJyk7CgogIGlmKCAkZXJyb3IgPT0gJycgKSB7CiAgICAvLwogICAgLy8gYnVpbGQgdGhlIHF1ZXJ5CiAgICAvLwogICAgJGpvaW5zID0gYXJyYXkoKTsKICAgICR3aGVyZSA9IGFycmF5KCk7CiAgICAkd2hlcmVwID0gYXJyYXkoKTsKICAgICRjb2x1bW5zID0gYXJyYXkoKTsKICAgIC8vIHZhcmlhYmxlcyB3ZSBjYW4gcmVwbGFjZSBpbiBhbnkgam9pbi4KICAgICRzdCA9ICRkYi0+RGJUaW1lU3RhbXAoJHByb2ZpbGVbJ3N0YXJ0X2RhdGUnXSk7CiAgICAkZXQgPSAkZGItPkRiVGltZVN0YW1wKCRwcm9maWxlWydlbmRfZGF0ZSddKTsKICAgICRyZXBfdmFycyA9IGFycmF5KCk7CiAgICAkcmVwX3ZhcnNbJyVzdCUnXSA9ICRzdDsKICAgICRyZXBfdmFyc1snJWV0JSddID0gJGV0OwogICAgJHJlcF92YXJzWycldXclJ10gPSAnJzsKCiAgICBpZiggaXNfYXJyYXkoJHByb2ZpbGVbJ2NhdGVnb3JpZXMnXSkgJiYgY291bnQoJHByb2ZpbGVbJ2NhdGVnb3JpZXMnXSkgKSB7CiAgICAgICR3aGVyZVtdID0gJ1UudXBsb2FkX2NhdGVnb3J5X2lkIElOICgnLmltcGxvZGUoJywnLCRwcm9maWxlWydjYXRlZ29yaWVzJ10pLicpJzsKICAgIH0KCiAgICAvLyBidWlsZCB0aGUgbGlzdCBvZiBjb2x1bW5zIHRvIGRpc3BsYXkuLiBhbmQgcHJvY2VzcyBjdXN0b20gZmllbGRzLgogICAgJHZpZXdfZmllbGRzID0gICRwcm9maWxlWyd2aWV3X2ZpZWxkcyddOwogICAgaWYoIGlzc2V0KCRzb3J0aW5nc1skcHJvZmlsZVsndmlld19zb3J0aW5nJ11dWydyZXFmaWVsZCddKSAmJiAhaW5fYXJyYXkoJHByb2ZpbGVbJ3ZpZXdfc29ydGluZyddLCR2aWV3X2ZpZWxkcykgKSB7CiAgICAgIC8vIGFkZHMgY29sdW1uIHRvIGNvbHVtbiBsaXN0IGlmIGl0cyByZXF1aXJlZCBieSBzb3J0aW5nLgogICAgICAkY29sID0gJHNvcnRpbmdzWyRwcm9maWxlWyd2aWV3X3NvcnRpbmcnXV1bJ3JlcWZpZWxkJ107CiAgICAgICRyZXF1aXJlZF9jb2x1bW5zW10gPSAkY29sOwogICAgICAkdmlld19maWVsZHNbXSA9ICRjb2w7CiAgICB9CgogICAgJHZpZXdfZmllbGRzID0gYXJyYXlfdW5pcXVlKGFycmF5X21lcmdlKGFycmF5KCdkb3dubG9hZF91c2VyJywndXBsb2FkX2lkJyksJHZpZXdfZmllbGRzKSk7CgogICAgZm9yZWFjaCggJHZpZXdfZmllbGRzIGFzICRvbmUgKSB7CiAgICAgIGlmKCBpc3NldCgkZmllbGRfaW5mb1skb25lXSkgKSB7CgkkY29sdW1uc1tdID0gJGZpZWxkX2luZm9bJG9uZV1bJ2NvbHVtbiddOwoJaWYoIGlzc2V0KCRmaWVsZF9pbmZvWyRvbmVdWydqb2luJ10pICkgewoJICAkdG1wID0gJGZpZWxkX2luZm9bJG9uZV1bJ2pvaW4nXTsKCSAgJHRtcCA9IHN0cl9yZXBsYWNlKGFycmF5X2tleXMoJHJlcF92YXJzKSxhcnJheV92YWx1ZXMoJHJlcF92YXJzKSwkdG1wKTsKCSAgJGpvaW5zW10gPSAkdG1wOwoJfQogICAgICB9CiAgICB9CgogICAgLy8gcGljayBhIGRlZmF1bHQgc29ydGluZy4KICAgICRzb3J0aW5nID0gJ2Rvd25sb2Fkcyc7CiAgICBpZiggJHByb2ZpbGVbJ3JlcG9ydF90eXBlJ10gPT0gJ3N1bW1hcnknICkgewogICAgICAkc29ydGluZyA9ICRwcm9maWxlWyd2aWV3X3NvcnRpbmcnXTsKICAgIH0KICAgIGVsc2UgewogICAgICAkc29ydGluZyA9ICRwcm9maWxlWyd2aWV3X3NvcnRpbmcnXTsKICAgICAgaWYoICRzb3J0aW5nID09ICdkb3dubG9hZHMnICkgJHNvcnRpbmcgPSAnZG93bmxvYWRfdXNlcic7CiAgICB9CiAgICAkcHJvZmlsZVsndmlld19zb3J0aW5nJ10gPSAkc29ydGluZzsKICAgIGlmKCBpc3NldCgkc29ydGluZ3NbJHNvcnRpbmddWydyZXFmaWVsZCddKSAmJiAhaW5fYXJyYXkoJHNvcnRpbmcsJHZpZXdfZmllbGRzKSApIHsKICAgICAgLy8gYWRkcyBjb2x1bW4gdG8gY29sdW1uIGxpc3QgaWYgaXRzIHJlcXVpcmVkIGJ5IHNvcnRpbmcuCiAgICAgICRjb2wgPSAkc29ydGluZ3NbJHNvcnRpbmddWydyZXFmaWVsZCddOwogICAgICAkY29sdW1uc1tdID0gJGZpZWxkX2luZm9bJGNvbF1bJ2NvbHVtbiddOwogICAgfQoKICAgIC8vIGJ1aWxkIGEgdGltZSBsaW1pdGluZyB3aGVyZSBleHByZXNzaW9uCiAgICAkc3QgPSAkZGItPkRiVGltZVN0YW1wKCRwcm9maWxlWydzdGFydF9kYXRlJ10pOwogICAgJGV0ID0gJGRiLT5EYlRpbWVTdGFtcCgkcHJvZmlsZVsnZW5kX2RhdGUnXSk7CiAgICAkd2hlcmVbXSA9ICIoZG93bmxvYWRfZGF0ZSBCRVRXRUVOICRzdCBBTkQgJGV0KSI7CgogICAgLy8gYnVpbGQgYSB1c2VycyB3aGVyZSBleHByZXNzaW9uCiAgICBpZiggY291bnQoJHVzZXJzKSApIHsKICAgICAgJHRtcDIgPSBhcnJheSgpOyAvLyByZWd1bGFyIHVzZXJuYW1lcwogICAgICAkdG1wMyA9IGFycmF5KCk7IC8vIHdpbGRjYXJkIHBhdHRlcm4KICAgICAgZm9yZWFjaCggJHVzZXJzIGFzICR0dXNlciApIHsKCWlmKCBzdHJwb3MoJHR1c2VyLCcqJykgIT09IEZBTFNFIHx8IHN0cnBvcygkdHVzZXIsJyUnKSAhPT0gRkFMU0UgKSB7CgkgICR0dXNlciA9IHN0cl9yZXBsYWNlKCcqJywnJScsJHR1c2VyKTsKCSAgJHR1c2VyID0gc3RyX3JlcGxhY2UoJyUlJywnJScsJHR1c2VyKTsKCSAgJHRtcDNbXSA9ICJVRC5kb3dubG9hZF91c2VyIExJS0UgJyR0dXNlciciOwoJfQoJZWxzZSB7CgkgICR0dXNlciA9ICInIi4kdHVzZXIuIiciOwoJICAkdG1wMltdID0gJHR1c2VyOwoJfQogICAgICB9CiAgICAgICR3aCA9IGFycmF5KCk7CiAgICAgIGlmKCBjb3VudCgkdG1wMikgKSAkd2hbXSA9ICdVRC5kb3dubG9hZF91c2VyIElOICgnLmltcGxvZGUoJywnLCR0bXAyKS4nKSc7CiAgICAgIGlmKCBjb3VudCgkdG1wMykgKSAkd2ggPSBhcnJheV9tZXJnZSgkd2gsJHRtcDMpOwogICAgICBpZiggY291bnQoJHdoKSApICR3aGVyZVtdID0gJygnLiBpbXBsb2RlKCcgT1IgJywkd2gpLiAnKSc7Ci8vICAgICAgIGZvcmVhY2goICR1c2VycyBhcyAmJHVzZXIgKSAkdXNlciA9ICInIi4kdXNlci4iJyI7Ci8vICAgICAgICR3aGVyZVtdID0gJ1VELmRvd25sb2FkX3VzZXIgSU4gKCcuaW1wbG9kZSgnLCcsJHVzZXJzKS4nKSc7CiAgICB9CgogICAgLy8gYXNzZW1ibGUgdGhlIGJhc2ljIHF1ZXJ5CiAgICAkcXVlcnkgPSAnU0VMRUNUICcuaW1wbG9kZSgnLCcsJGNvbHVtbnMpLicgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHMgVQogICAgICAgICAgICAgIExFRlQgSk9JTiAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHNfZG93bmxvYWRzIFVEIE9OIFUudXBsb2FkX2lkID0gVUQuZmlsZV9pZAogICAgICAgICAgICAgIExFRlQgSk9JTiAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHNfY2F0ZWdvcmllcyBVQyBPTiBVLnVwbG9hZF9jYXRlZ29yeV9pZCA9IFVDLnVwbG9hZF9jYXRlZ29yeV9pZCc7CiAgICBpZiggY291bnQoJGpvaW5zKSApICRxdWVyeSAuPSAnICcuaW1wbG9kZSgnICcsJGpvaW5zKTsKICAgICRxdWVyeSAuPSAnIFdIRVJFICcuaW1wbG9kZSgnIEFORCAnLCR3aGVyZSk7CiAgICAvL2lmKCAkcHJvZmlsZVsncmVwb3J0X3R5cGUnXSA9PSAnc3VtbWFyeScgKSAkcXVlcnkgLj0gJyBHUk9VUCBCWSBVRC5kb3dubG9hZF91c2VyLFUudXBsb2FkX2lkICc7CiAgICBpZiggJHByb2ZpbGVbJ3JlcG9ydF90eXBlJ10gPT0gJ3N1bW1hcnknICkgJHF1ZXJ5IC49ICcgR1JPVVAgQlkgVUQuZG93bmxvYWRfdXNlciAnOwoKICAgIC8vIGFkZCBzb3J0aW5nCiAgICAkc29ydGJ5ID0gJGZpZWxkX2luZm9bJHByb2ZpbGVbJ3ZpZXdfc29ydGluZyddXVsnY29sdW1uJ107CiAgICBpZiggaXNzZXQoJHNvcnRpbmdzWyRwcm9maWxlWyd2aWV3X3NvcnRpbmcnXV1bJ3NvcnRieSddKSApICRzb3J0YnkgPSAkc29ydGluZ3NbJHByb2ZpbGVbJ3ZpZXdfc29ydGluZyddXVsnc29ydGJ5J107CiAgICAkc29ydG9yZGVyID0gJHByb2ZpbGVbJ3ZpZXdfc29ydG9yZGVyJ107CiAgICBpZiggJHNvcnRvcmRlciA9PSAnKmRlZmF1bHQqJyApIHsKICAgICAgJHNvcnRvcmRlciA9ICdBU0MnOwogICAgICBpZiggaXNzZXQoJHNvcnRpbmdzWyRwcm9maWxlWyd2aWV3X3NvcnRpbmcnXV1bJ2RmbHRzb3J0YnknXSkgKSAkc29ydG9yZGVyID0gJHNvcnRpbmdzWyRwcm9maWxlWyd2aWV3X3NvcnRpbmcnXV1bJ2RmbHRzb3J0YnknXTsKICAgIH0KICAgIGlmKCAkcHJvZmlsZVsncmVwb3J0X3R5cGUnXSA9PSAnc3VtbWFyeScgKSB7CiAgICAgICRxdWVyeSAuPSAiIE9SREVSIEJZICRzb3J0YnkgJHNvcnRvcmRlciI7CiAgICAgIGlmKCAkcHJvZmlsZVsndmlld19zb3J0aW5nJ10gIT0gJ3VwbG9hZF9uYW1lJyApICRxdWVyeSAuPSAnLCAnLiRmaWVsZF9pbmZvWyd1cGxvYWRfbmFtZSddWydjb2x1bW4nXS4nIEFTQyc7CiAgICB9CiAgICBlbHNlIHsKICAgICAgJHF1ZXJ5IC49ICIgT1JERVIgQlkgVUQuZG93bmxvYWRfdXNlciwgJHNvcnRieSAkc29ydG9yZGVyIjsKICAgIH0KCiAgICAkZGJyID0gJGRiLT5HZXRBcnJheSgkcXVlcnksYXJyYXkoJHdoZXJlcCkpOwogICAgaWYoICFpc19hcnJheSgkZGJyKSB8fCBjb3VudCgkZGJyKSA9PSAwICkgJGVycm9yID0gJHRoaXMtPkxhbmcoJ2Vycm9yX21hdGNoaW5ncmVjb3JkcycpOwogIH0KCiAgc3dpdGNoKCAkcHJvZmlsZVsnb3V0cHV0X3R5cGUnXSApIHsKICBjYXNlICdjc3YnOgogICAgaWYoICRlcnJvciApIHsKICAgICAgZWNobyAkdGhpcy0+U2hvd0Vycm9ycygpOwogICAgICBicmVhazsKICAgIH0KICAgICRoYW5kbGVycyA9IG9iX2xpc3RfaGFuZGxlcnMoKTsgCiAgICBmb3IgKCRjbnQgPSAwOyAkY250IDwgc2l6ZW9mKCRoYW5kbGVycyk7ICRjbnQrKykgeyBvYl9lbmRfY2xlYW4oKTsgfQogICAgaGVhZGVyKCJDb250ZW50LWRpc3Bvc2l0aW9uOiBhdHRhY2htZW50OyBmaWxlbmFtZT11cGxvYWRzLiIgLiBkYXRlKCJZLW0tZCIpIC4gIi5jc3YiKTsKICAgIGhlYWRlcigiQ29udGVudC10eXBlOiB0ZXh0L2NzdiIpOwogICAgZmx1c2goKTsKICAgICRoZHIgPSBhcnJheV9rZXlzKCRkYnJbMF0pOwogICAgZWNobyAnIycuY2dlX2FycmF5OjppbXBsb2RlX3F1b3RlZCgkaGRyKS4iXG4iOwogICAgZm9yZWFjaCggJGRiciBhcyAkcmVjICkgewogICAgICBlY2hvIGNnZV9hcnJheTo6aW1wbG9kZV9xdW90ZWQoYXJyYXlfdmFsdWVzKCRyZWMpKS4iXG4iOwogICAgfQogICAgZmx1c2goKTsKICAgIGV4aXQ7CiAgICBicmVhazsKCiAgY2FzZSAnaHRtbCc6CiAgICBpZiggJGVycm9yICkgJHNtYXJ0eS0+YXNzaWduKCdlcnJvcicsJGVycm9yKTsKICAgIC8vIGNyZWF0ZSBsYWJlbHMuCiAgICBpZiggaXNfYXJyYXkoJGRicikgJiYgY291bnQoJGRicikgKSB7CiAgICAgICRvdXQgPSBhcnJheSgpOwogICAgICAkcmVjID0gYXJyYXlfa2V5cygkZGJyWzBdKTsKICAgICAgZm9yZWFjaCggJHJlYyBhcyAmJG9uZSApIHsKCWlmKCBpc3NldCgkZmllbGRfaW5mb1skb25lXSkgKSAkb3V0WyRvbmVdID0gJGZpZWxkX2luZm9bJG9uZV1bJ2xhYmVsJ107CglpZiggaXNzZXQoJGZpZWxkX2luZm9bJ2Y6Jy4kb25lXSkgKSAkb3V0WyRvbmVdID0gJGZpZWxkX2luZm9bJ2Y6Jy4kb25lXVsnbGFiZWwnXTsKCWlmKCBpc3NldCgkZmllbGRfaW5mb1sncDonLiRvbmVdKSApICRvdXRbJG9uZV0gPSAkZmllbGRfaW5mb1sncDonLiRvbmVdWydsYWJlbCddOwogICAgICB9CiAgICAgICRzbWFydHktPmFzc2lnbignbGFiZWxzJywkb3V0KTsKICAgICAgJHNtYXJ0eS0+YXNzaWduKCdyZWNvcmRzJywkZGJyKTsKICAgIH0KICAgICRzbWFydHktPmFzc2lnbigndXNlcicsJHVzZXIpOwogICAgJHNtYXJ0eS0+YXNzaWduKCdwcm9maWxlJywkcHJvZmlsZSk7CiAgICAgIGVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhYmFzZSgncmRsXycuJHByb2ZpbGVbJ291dHB1dF90ZW1wbGF0ZSddKTsKICAgIGV4aXQ7CiAgICBicmVhazsKCiAgY2FzZSAnaHRtbGVtYWlsJzoKICAgIGlmKCAkZXJyb3IgKSB7CiAgICAgIGVjaG8gJHRoaXMtPlNob3dFcnJvcnMoKTsKICAgICAgYnJlYWs7CiAgICB9CiAgICAkb3V0ID0gYXJyYXkoKTsKICAgICRyZWMgPSBhcnJheV9rZXlzKCRkYnJbMF0pOwogICAgZm9yZWFjaCggJHJlYyBhcyAmJG9uZSApIHsKICAgICAgaWYoIGlzc2V0KCRmaWVsZF9pbmZvWyRvbmVdKSApICRvdXRbJG9uZV0gPSAkZmllbGRfaW5mb1skb25lXVsnbGFiZWwnXTsKICAgICAgaWYoIGlzc2V0KCRmaWVsZF9pbmZvWydmOicuJG9uZV0pICkgJG91dFskb25lXSA9ICRmaWVsZF9pbmZvWydmOicuJG9uZV1bJ2xhYmVsJ107CiAgICAgIGlmKCBpc3NldCgkZmllbGRfaW5mb1sncDonLiRvbmVdKSApICRvdXRbJG9uZV0gPSAkZmllbGRfaW5mb1sncDonLiRvbmVdWydsYWJlbCddOwogICAgfQogICAgJHNtYXJ0eS0+YXNzaWduKCdsYWJlbHMnLCRvdXQpOwogICAgJHNtYXJ0eS0+YXNzaWduKCd1c2VyJywkdXNlcik7CiAgICAkc21hcnR5LT5hc3NpZ24oJ3Byb2ZpbGUnLCRwcm9maWxlKTsKICAgICRzbWFydHktPmFzc2lnbigncmVjb3JkcycsJGRicik7CiAgICAkb3V0ID0gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhYmFzZSgncmRmXycuJHByb2ZpbGVbJ291dHB1dF90ZW1wbGF0ZSddKTsKICAgICRtYWlsZXIgPSBjbXNfdXRpbHM6OmdldF9tb2R1bGUoJ0NNU01haWxlcicpOwogICAgJG1haWxlci0+QWRkQWRkcmVzcygkdXNlcmVtYWlsKTsKICAgICRtYWlsZXItPlNldFN1YmplY3QoJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhKCd7c2l0ZW5hbWV9IC0gRG93bmxvYWRzIGJ5IEZpbGUgUmVwb3J0JykpOwogICAgJG1haWxlci0+U2V0Qm9keSgkb3V0KTsKICAgICRtYWlsZXItPklzSFRNTChUUlVFKTsKICAgICRtYWlsZXItPlNlbmQoKTsKICAgICRtYWlsZXItPnJlc2V0KCk7CiAgICBlY2hvICR0aGlzLT5TaG93TWVzc2FnZSgkdGhpcy0+TGFuZygnbXNnX3JlcG9ydF9zZW50JykpOwogICAgYnJlYWs7CiAgfQp9CgovLwovLyBidWlsZCB0aGUgZm9ybS4KLy8KJGZpZWxkbGlzdCA9IGFycmF5KCk7CmZvcmVhY2goICRmaWVsZF9pbmZvIGFzICRrZXkgPT4gJHJlYyApIHsKICAkc2hvdyA9IDE7CiAgc3dpdGNoICggJHByb2ZpbGVbJ3JlcG9ydF90eXBlJ10gKSB7CiAgY2FzZSAnc3VtbWFyeSc6CiAgICBpZiggaXNzZXQoJHJlY1snc3VtbWFyeXJwdCddKSApICRzaG93ID0gJHJlY1snc3VtbWFyeXJwdCddOwogICAgYnJlYWs7CgogIGNhc2UgJ2RldGFpbCc6CiAgICBpZiggaXNzZXQoJHJlY1snZGV0YWlscnB0J10pICkgJHNob3cgPSAkcmVjWydkZXRhaWxycHQnXTsKICAgIGJyZWFrOwogIH0KICBpZiggISRzaG93ICkgY29udGludWU7CiAgJGZpZWxkbGlzdFska2V5XSA9ICRyZWNbJ2xhYmVsJ107Cn0KJHNtYXJ0eS0+YXNzaWduKCdmaWVsZGxpc3QnLCRmaWVsZGxpc3QpOwoKJHNvcnRsaXN0ID0gYXJyYXkoKTsKZm9yZWFjaCggJHNvcnRpbmdzIGFzICRrZXkgPT4gJHJlYyApIHsKICAkc2hvdyA9IDE7CiAgc3dpdGNoICggJHByb2ZpbGVbJ3JlcG9ydF90eXBlJ10gKSB7CiAgY2FzZSAnc3VtbWFyeSc6CiAgICBpZiggaXNzZXQoJHJlY1snc3VtbWFyeXJwdCddKSApICRzaG93ID0gJHJlY1snc3VtbWFyeXJwdCddOwogICAgYnJlYWs7CgogIGNhc2UgJ2RldGFpbCc6CiAgICBpZiggaXNzZXQoJHJlY1snZGV0YWlscnB0J10pICkgJHNob3cgPSAkcmVjWydkZXRhaWxycHQnXTsKICAgIGJyZWFrOwogIH0KICBpZiggISRzaG93ICkgY29udGludWU7CiAgJHNvcnRsaXN0WyRrZXldID0gJHJlY1snbGFiZWwnXTsKfQokc21hcnR5LT5hc3NpZ24oJ3NvcnRsaXN0Jywkc29ydGxpc3QpOwoKJHNvcnRieXMgPSBhcnJheSgnKmRlZmF1bHQqJz0+JHRoaXMtPkxhbmcoJ3Byb21wdF9kZWZhdWx0JyksJ0FTQyc9PiR0aGlzLT5MYW5nKCdwcm9tcHRfYXNjZW5kaW5nJyksJ0RFU0MnPT4kdGhpcy0+TGFuZygncHJvbXB0X2Rlc2NlbmRpbmcnKSk7CiRzbWFydHktPmFzc2lnbignc29ydG9yZGVycycsJHNvcnRieXMpOwoKJHNtYXJ0eS0+YXNzaWduKCdzdGFydF90aW1lJywkZmlyc3RfZGF5X29mX21vbnRoKTsKJHNtYXJ0eS0+YXNzaWduKCdlbmRfdGltZScsJGxhc3RfZGF5X29mX21vbnRoKTsKCiR1cmwgPSAkdGhpcy0+Y3JlYXRlX3VybCgkaWQsJ2FkbWluX2FqYXhfb3BzJywkcmV0dXJuaWQsYXJyYXkoJ29wJz0+J3VzZXJfYXV0b2NvbXBsZXRlJykpLicmc2hvd3RlbXBsYXRlPWZhbHNlJzsKJHNtYXJ0eS0+YXNzaWduKCd1cmxfYWpheF9mZXVfdXNlcnMnLHN0cl9yZXBsYWNlKCcmYW1wOycsJyYnLCR1cmwpKTsKCiRzbWFydHktPmFzc2lnbigncHJvZmlsZScsJHByb2ZpbGUpOwokc21hcnR5LT5hc3NpZ24oJ2ZldV9ncm91cHMnLCRmZXVfZ3JvdXBzKTsKJHNtYXJ0eS0+YXNzaWduKCd1cGxvYWRfY2F0ZWdvcmllcycsJHVwbG9hZF9jYXRlZ29yaWVzKTsKJHNtYXJ0eS0+YXNzaWduKCdyZXBvcnRfdHlwZXMnLCRyZXBvcnRfdHlwZXMpOwokc21hcnR5LT5hc3NpZ24oJ2Zvcm1zdGFydCcsJHRoaXMtPkNHQ3JlYXRlRm9ybVN0YXJ0KCRpZCwnYWRtaW5fcmVwb3J0X2Rvd25sb2Fkc2J5dXNlcicpKTsKJHNtYXJ0eS0+YXNzaWduKCdmb3JtZW5kJywkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsKCiR0ZW1wbGF0ZXMgPSBjZ2VfdGVtcGxhdGVfdXRpbHM6OmdldF90ZW1wbGF0ZXNfYnlfcHJlZml4KCR0aGlzLCdyZGxfJyk7CmlmKCBpc19hcnJheSgkdGVtcGxhdGVzKSAmJiBjb3VudCgkdGVtcGxhdGVzKSApIHsKICAkb3V0ID0gYXJyYXkoKTsKICBmb3JlYWNoKCAkdGVtcGxhdGVzIGFzICR0cGwgKSB7CiAgICAkdHBsID0gc3Vic3RyKCR0cGwsNCk7CiAgICAkb3V0WyR0cGxdID0gJHRwbDsKICB9CiAgJHNtYXJ0eS0+YXNzaWduKCdvdXRwdXRfdGVtcGxhdGVzJywkb3V0KTsKfQoKZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCdhZG1pbl9yZXBvcnRfZG93bmxvYWRzYnl1c2VyLnRwbCcpOwoKIwojIEVPRgojCj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/action.admin_templates.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojIENvcHlyaWdodCAoYyk6IDIwMTMKIyBBdXRob3I6IFJvYmVydCBDYW1wYmVsbCA8cm9iQHRlY2hjb20uZHluZG5zLm9yZz4KIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6CS8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQppZiggIWlzc2V0KCRnQ21zKSApIGV4aXQ7CgplY2hvICc8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciIHN0eWxlPSJ0ZXh0LWFsaWduOiByaWdodDsgd2lkdGg6IDgwJTsiPicuCiR0aGlzLT5DcmVhdGVJbWFnZUxpbmsoJGlkLCdkZWZhdWx0YWRtaW4nLCRyZXR1cm5pZCwKCQkgICAgICAgJHRoaXMtPkxhbmcoJ2xibF9iYWNrJyksJ2ljb25zL3N5c3RlbS9iYWNrLmdpZicsYXJyYXkoKSwnJywnJyxmYWxzZSkuJzwvZGl2Pjxici8+JzsKCmlmKCAhJHRoaXMtPkNoZWNrUGVybWlzc2lvbignTW9kaWZ5IFRlbXBsYXRlcycpICkgcmV0dXJuOwoKZWNobyAkdGhpcy0+U3RhcnRUYWJIZWFkZXJzICgpOwplY2hvICR0aGlzLT5TZXRUYWJIZWFkZXIgKCd1cGxvYWRmb3JtX3RlbXBsYXRlJywgJHRoaXMtPkxhbmcgKCd1cGxvYWRmb3JtX3RlbXBsYXRlJykpOwplY2hvICR0aGlzLT5TZXRUYWJIZWFkZXIgKCdzdW1tYXJ5X3RlbXBsYXRlJywgJHRoaXMtPkxhbmcgKCdzdW1tYXJ5X3RlbXBsYXRlJykpOwplY2hvICR0aGlzLT5TZXRUYWJIZWFkZXIgKCdkZXRhaWxfdGVtcGxhdGUnLCAkdGhpcy0+TGFuZyAoJ2RldGFpbF90ZW1wbGF0ZScpKTsKZWNobyAkdGhpcy0+U2V0VGFiSGVhZGVyICgnc2VuZGZpbGVmb3JtX3RlbXBsYXRlJywgJHRoaXMtPkxhbmcgKCdzZW5kZmlsZWZvcm1fdGVtcGxhdGUnKSk7CmVjaG8gJHRoaXMtPlNldFRhYkhlYWRlciAoJ3lvdXNlbmRpdGZvcm1fdGVtcGxhdGUnLCAkdGhpcy0+TGFuZyAoJ3lvdXNlbmRpdGZvcm1fdGVtcGxhdGUnKSk7CmVjaG8gJHRoaXMtPlNldFRhYkhlYWRlciAoJ2VtYWlsX3RlbXBsYXRlJywgJHRoaXMtPkxhbmcgKCdlbWFpbF90ZW1wbGF0ZScpKTsKZWNobyAkdGhpcy0+U2V0VGFiSGVhZGVyICgnZGVmYXVsdF90ZW1wbGF0ZXMnLCAkdGhpcy0+TGFuZygnZGVmYXVsdF90ZW1wbGF0ZXMnKSk7CmVjaG8gJHRoaXMtPlNldFRhYkhlYWRlciAoJ2Rvd25sb2Fkc2J5dXNlcl9ycHQnLCR0aGlzLT5MYW5nKCdycHRfZG93bmxvYWRzYnl1c2VyX3RwbCcpKTsKZWNobyAkdGhpcy0+U2V0VGFiSGVhZGVyICgnZG93bmxvYWRzYnlmaWxlX3JwdCcsJHRoaXMtPkxhbmcoJ3JwdF9kb3dubG9hZHNieWZpbGVfdHBsJykpOwoKZWNobyAkdGhpcy0+RW5kVGFiSGVhZGVycyAoKTsKZWNobyAkdGhpcy0+U3RhcnRUYWJDb250ZW50ICgpOwoKLy8gdGhlIHVwbG9hZCBmb3JtIHRlbXBsYXRlIHRhYgplY2hvICR0aGlzLT5TdGFydFRhYiAoInVwbG9hZGZvcm1fdGVtcGxhdGUiKTsKZWNobyAkdGhpcy0+U2hvd1RlbXBsYXRlTGlzdCggJGlkLCAkcmV0dXJuaWQsICd1cGxvYWRmb3JtXycsCgkJCSAgICAgICd1cGxvYWRmb3JtX3N5c2RlZmF1bHQnLCAndXBsb2FkZm9ybV90ZW1wbGF0ZScsCgkJCSAgICAgICdkZWZhdWx0X3VwbG9hZGZvcm0nLAoJCQkgICAgICAkdGhpcy0+TGFuZygndGl0bGVfdXBsb2FkZm9ybV90ZW1wbGF0ZScpLCcnLAoJCQkgICAgICAnYWRtaW5fdGVtcGxhdGVzJyk7CmVjaG8gJHRoaXMtPkVuZFRhYigpOwoKLy8gdGhlIHN1bW1hcnkgdGVtcGxhdGUgdGFiCmVjaG8gJHRoaXMtPlN0YXJ0VGFiICgic3VtbWFyeV90ZW1wbGF0ZSIpOwplY2hvICR0aGlzLT5TaG93VGVtcGxhdGVMaXN0KCAkaWQsICRyZXR1cm5pZCwgJ3N1bW1hcnlycHRfJywKCQkJICAgICAgJ3N1bW1hcnlycHRfc3lzZGVmYXVsdCcsICdzdW1tYXJ5X3RlbXBsYXRlJywKCQkJICAgICAgJ2RlZmF1bHRfc3VtbWFyeXJwdCcsCgkJCSAgICAgICR0aGlzLT5MYW5nKCd0aXRsZV9zdW1tYXJ5cnB0X3RlbXBsYXRlJyksJycsCgkJCSAgICAgICdhZG1pbl90ZW1wbGF0ZXMnKTsKZWNobyAkdGhpcy0+RW5kVGFiICgpOwoKLy8gdGhlIGRldGFpbCB0ZW1wbGF0ZSB0YWIKZWNobyAkdGhpcy0+U3RhcnRUYWIgKCJkZXRhaWxfdGVtcGxhdGUiKTsKZWNobyAkdGhpcy0+U2hvd1RlbXBsYXRlTGlzdCggJGlkLCAkcmV0dXJuaWQsICdkZXRhaWxycHRfJywKCQkJICAgICAgJ2RldGFpbHJwdF9zeXNkZWZhdWx0JywgJ2RldGFpbF90ZW1wbGF0ZScsCgkJCSAgICAgICdkZWZhdWx0X2RldGFpbHJwdCcsCgkJCSAgICAgICR0aGlzLT5MYW5nKCd0aXRsZV9kZXRhaWxycHRfdGVtcGxhdGUnKSwnJywKCQkJICAgICAgJ2FkbWluX3RlbXBsYXRlcycpOwplY2hvICR0aGlzLT5FbmRUYWIgKCk7CgovLyB0aGUgc2VuZGZpbGVmb3JtIHRlbXBsYXRlIHRhYgplY2hvICR0aGlzLT5TdGFydFRhYiAoInNlbmRmaWxlZm9ybV90ZW1wbGF0ZSIpOwplY2hvICR0aGlzLT5TaG93VGVtcGxhdGVMaXN0KCAkaWQsICRyZXR1cm5pZCwgJ3NlbmRmaWxlZm9ybV8nLAoJCQkgICAgICAnc2VuZGZpbGVmb3JtX3N5c2RlZmF1bHQnLCAnc2VuZGZpbGVmb3JtX3RlbXBsYXRlJywKCQkJICAgICAgJ2RlZmF1bHRfc2VuZGZpbGVmb3JtJywKCQkJICAgICAgJHRoaXMtPkxhbmcoJ3RpdGxlX3NlbmRmaWxlZm9ybV90ZW1wbGF0ZScpLCcnLAoJCQkgICAgICAnYWRtaW5fdGVtcGxhdGVzJyk7CmVjaG8gJHRoaXMtPkVuZFRhYiAoKTsKCi8vIHRoZSB5b3VzZW5kaXRmb3JtIHRlbXBsYXRlIHRhYgplY2hvICR0aGlzLT5TdGFydFRhYiAoInlvdXNlbmRpdGZvcm1fdGVtcGxhdGUiKTsKZWNobyAkdGhpcy0+U2hvd1RlbXBsYXRlTGlzdCggJGlkLCAkcmV0dXJuaWQsICd5b3VzZW5kaXRmb3JtXycsCgkJCSAgICAgICd5b3VzZW5kaXRmb3JtX3N5c2RlZmF1bHQnLCAneW91c2VuZGl0Zm9ybV90ZW1wbGF0ZScsCgkJCSAgICAgICdkZWZhdWx0X3lvdXNlbmRpdGZvcm0nLAoJCQkgICAgICAkdGhpcy0+TGFuZygndGl0bGVfeW91c2VuZGl0Zm9ybV90ZW1wbGF0ZScpLCcnLAoJCQkgICAgICAnYWRtaW5fdGVtcGxhdGVzJyk7CmVjaG8gJHRoaXMtPkVuZFRhYiAoKTsKCi8vIHRoZSBlbWFpbCB0ZW1wbGF0ZSB0YWIKZWNobyAkdGhpcy0+U3RhcnRUYWIoJ2VtYWlsX3RlbXBsYXRlJyk7CmluY2x1ZGUoZGlybmFtZShfX0ZJTEVfXykuJy9mdW5jdGlvbi5hZG1pbl9lbWFpbF90ZW1wbGF0ZV90YWIucGhwJyk7CmVjaG8gJHRoaXMtPkVuZFRhYigpOwoKLy8gdGhlIGRlZmF1bHQgdGVtcGxhdGVzIHRhYgplY2hvICR0aGlzLT5TdGFydFRhYignZGVmYXVsdF90ZW1wbGF0ZXMnKTsKZWNobyAkdGhpcy0+R2V0RGVmYXVsdFRlbXBsYXRlRm9ybSgkdGhpcywkaWQsJHJldHVybmlkLCd1cGxvYWRmb3JtX3N5c2RlZmF1bHQnLAoJCQkJICAgJ2FkbWluX3RlbXBsYXRlcycsCgkJCQkgICAnZGVmYXVsdF90ZW1wbGF0ZXMnLAoJCQkJICAgJHRoaXMtPkxhbmcoJ3RpdGxlX3VwbG9hZGZvcm1fc3lzZGVmYXVsdCcpLAoJCQkJICAgJ29yaWdfdXBsb2FkZm9ybV90ZW1wbGF0ZS50cGwnLAoJCQkJICAgJHRoaXMtPkxhbmcoJ2luZm9fc3lzZGVmYXVsdCcpKTsKCmVjaG8gJzxkaXYgc3R5bGU9ImJvcmRlci1ib3R0b206IDFweCBzb2xpZCBibGFjazsgd2lkdGg6IDgwJTsiPjwvZGl2Pic7CgplY2hvICR0aGlzLT5HZXREZWZhdWx0VGVtcGxhdGVGb3JtKCR0aGlzLCRpZCwkcmV0dXJuaWQsJ3N1bW1hcnlycHRfc3lzZGVmYXVsdCcsCgkJCQkgICAnYWRtaW5fdGVtcGxhdGVzJywKCQkJCSAgICdkZWZhdWx0X3RlbXBsYXRlcycsCgkJCQkgICAkdGhpcy0+TGFuZygndGl0bGVfc3VtbWFyeXJwdF9zeXNkZWZhdWx0JyksCgkJCQkgICAnb3JpZ19zdW1tYXJ5cnB0X3RlbXBsYXRlLnRwbCcsCgkJCQkgICAkdGhpcy0+TGFuZygnaW5mb19zeXNkZWZhdWx0JykpOwoKZWNobyAnPGRpdiBzdHlsZT0iYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGJsYWNrOyB3aWR0aDogODAlOyI+PC9kaXY+JzsKCmVjaG8gJHRoaXMtPkdldERlZmF1bHRUZW1wbGF0ZUZvcm0oJHRoaXMsJGlkLCRyZXR1cm5pZCwnZGV0YWlscnB0X3N5c2RlZmF1bHQnLAoJCQkJICAgJ2FkbWluX3RlbXBsYXRlcycsCgkJCQkgICAnZGVmYXVsdF90ZW1wbGF0ZXMnLAoJCQkJICAgJHRoaXMtPkxhbmcoJ3RpdGxlX2RldGFpbHJwdF9zeXNkZWZhdWx0JyksCgkJCQkgICAnb3JpZ19kZXRhaWxycHRfdGVtcGxhdGUudHBsJywKCQkJCSAgICR0aGlzLT5MYW5nKCdpbmZvX3N5c2RlZmF1bHQnKSk7CgplY2hvICc8ZGl2IHN0eWxlPSJib3JkZXItYm90dG9tOiAxcHggc29saWQgYmxhY2s7IHdpZHRoOiA4MCU7Ij48L2Rpdj4nOwoKZWNobyAkdGhpcy0+R2V0RGVmYXVsdFRlbXBsYXRlRm9ybSgkdGhpcywkaWQsJHJldHVybmlkLCdzZW5kZmlsZWZvcm1fc3lzZGVmYXVsdCcsCgkJCQkgICAnYWRtaW5fdGVtcGxhdGVzJywKCQkJCSAgICdkZWZhdWx0X3RlbXBsYXRlcycsCgkJCQkgICAkdGhpcy0+TGFuZygndGl0bGVfc2VuZGZpbGVmb3JtX3N5c2RlZmF1bHQnKSwKCQkJCSAgICdvcmlnX3NlbmRmaWxlZm9ybV90ZW1wbGF0ZS50cGwnLAoJCQkJICAgJHRoaXMtPkxhbmcoJ2luZm9fc3lzZGVmYXVsdCcpKTsKCmVjaG8gJzxkaXYgc3R5bGU9ImJvcmRlci1ib3R0b206IDFweCBzb2xpZCBibGFjazsgd2lkdGg6IDgwJTsiPjwvZGl2Pic7CgplY2hvICR0aGlzLT5HZXREZWZhdWx0VGVtcGxhdGVGb3JtKCR0aGlzLCRpZCwkcmV0dXJuaWQsJ3lvdXNlbmRpdGZvcm1fc3lzZGVmYXVsdCcsCgkJCQkgICAnYWRtaW5fdGVtcGxhdGVzJywKCQkJCSAgICdkZWZhdWx0X3RlbXBsYXRlcycsCgkJCQkgICAkdGhpcy0+TGFuZygndGl0bGVfeW91c2VuZGl0Zm9ybV9zeXNkZWZhdWx0JyksCgkJCQkgICAnb3JpZ195b3VzZW5kaXRmb3JtX3RlbXBsYXRlLnRwbCcsCgkJCQkgICAkdGhpcy0+TGFuZygnaW5mb19zeXNkZWZhdWx0JykpOwplY2hvICR0aGlzLT5FbmRUYWIoKTsKCi8vIGRvd25sb2FkcyBieSB1c2VyIHJlcG9ydCB0ZW1wbGF0ZXMuCmVjaG8gJHRoaXMtPlN0YXJ0VGFiKCdkb3dubG9hZHNieXVzZXJfcnB0Jyk7CmVjaG8gJHRoaXMtPlNob3dUZW1wbGF0ZUxpc3QoICRpZCwgJHJldHVybmlkLCAncmRsXycsCgkJCSAgICAgICdvcmlnX2h0bWxyZXBvcnRfZG93bmxvYWRzYnl1c2VyLnRwbCcsJ2Rvd25sb2Fkc2J5dXNlcl9ycHQnLCcnLAoJCQkgICAgICAkdGhpcy0+TGFuZygndGl0bGVfZG93bmxvYWRzYnl1c2VyX3RwbCcpLCcnLAoJCQkgICAgICAnYWRtaW5fdGVtcGxhdGVzJyk7CmVjaG8gJHRoaXMtPkVuZFRhYigpOwoKLy8gZG93bmxvYWRzIGJ5IGZpbGUgcmVwb3J0IHRlbXBsYXRlcy4KZWNobyAkdGhpcy0+U3RhcnRUYWIoJ2Rvd25sb2Fkc2J5ZmlsZV9ycHQnKTsKZWNobyAkdGhpcy0+U2hvd1RlbXBsYXRlTGlzdCggJGlkLCAkcmV0dXJuaWQsICdyZGZfJywKCQkJICAgICAgJ29yaWdfaHRtbHJlcG9ydF9kb3dubG9hZHNieWZpbGUudHBsJywnZG93bmxvYWRzYnlmaWxlX3JwdCcsJycsCgkJCSAgICAgICR0aGlzLT5MYW5nKCd0aXRsZV9kb3dubG9hZHNieWZpbGVfdHBsJyksJycsCgkJCSAgICAgICdhZG1pbl90ZW1wbGF0ZXMnKTsKZWNobyAkdGhpcy0+RW5kVGFiKCk7CgplY2hvICR0aGlzLT5FbmRUYWJDb250ZW50KCk7CgojCiMgRU9GCiMKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.admin_upload.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDoJLy93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdCgpOwppZiggISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01hbmFnZSBVcGxvYWRzJykgJiYgISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ1VwbG9hZCBGaWxlcyB0byBVcGxvYWRzJykpIHJldHVybjsKCiMKIyBJbml0aWFsaXphdGlvbgojCiR0aGlzLT5TZXRDdXJyZW50VGFiKCdmaWxlcycpOwokcmVjb3JkID0gYXJyYXkoJ2NhdGVnb3J5X2lkJz0+JycsCgkJJ2Rlc3RuYW1lJz0+JycsCgkJJ2F1dGhvcic9PiRfU0VTU0lPTlsnY21zX2FkbWluX3VzZXJuYW1lJ10sCgkJJ3N1bW1hcnknPT4nJywKCQknZGVzY3JpcHRpb24nPT4nJyk7CiRjdXJjYXRlZ29yeSA9ICcnOwoKIwojIFNldHVwCiMKCmlmKCBpc3NldCgkcGFyYW1zWydjYXRlZ29yeV9pZCddKSApIHsKICAkY3VyY2F0ZWdvcnkgPSAoaW50KSRwYXJhbXNbJ2NhdGVnb3J5X2lkJ107Cn0KZWxzZSBpZiggaXNzZXQoJHBhcmFtc1snY2F0ZWdvcnknXSkgKSB7CiAgJGN1cmNhdGVnb3J5ID0gJHBhcmFtc1snY2F0ZWdvcnknXTsKfQokY2F0ZWdvcnlsaXN0ID0gYXJyYXkoKTsKewogICRxdWVyeSA9CiAgICAiU0VMRUNUIHVwbG9hZF9jYXRlZ29yeV9pZCBBUyBpZCwgdXBsb2FkX2NhdGVnb3J5X25hbWUgQVMgbmFtZSBGUk9NICIuY21zX2RiX3ByZWZpeCAoKS4KICAgICAgICJtb2R1bGVfdXBsb2Fkc19jYXRlZ29yaWVzIE9SREVSIEJZIHVwbG9hZF9jYXRlZ29yeV9uYW1lIEFTQyI7CiAgJHRtcCA9ICRkYi0+R2V0QXJyYXkoJHF1ZXJ5KTsKICBmb3IoICRpID0gMDsgJGkgPCBjb3VudCgkdG1wKTsgJGkrKyApIHsKICAgICRjYXRlZ29yeWxpc3RbJHRtcFskaV1bJ2lkJ11dID0gJHRtcFskaV1bJ25hbWUnXTsKICB9Cn0KCiRmaWVsZHMgPSBhcnJheSgpOwp7CiAgJHF1ZXJ5ID0gJ1NFTEVDVCAqIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzX2ZpZWxkZGVmcyBPUkRFUiBCWSBpb3JkZXInOwogICR0ZmllbGRzID0gJGRiLT5HZXRBcnJheSgkcXVlcnkpOwogIGZvciggJGkgPSAwOyAkaSA8IGNvdW50KCR0ZmllbGRzKTsgJGkrKyApIHsKICAgICR0ZmllbGRzWyRpXVsnYXR0cmliJ10gPSB1bnNlcmlhbGl6ZSgkdGZpZWxkc1skaV1bJ2F0dHJpYnMnXSk7CiAgICB1bnNldCgkdGZpZWxkc1skaV1bJ2F0dHJpYnMnXSk7CiAgICAgIAogICAgc3dpdGNoKCR0ZmllbGRzWyRpXVsndHlwZSddKSB7CiAgICBjYXNlICd0ZXh0YXJlYSc6CiAgICAgICR0ZmllbGRzWyRpXVsnaW5wdXQnXSA9IAoJJHRoaXMtPkNyZWF0ZVRleHRBcmVhKGlzc2V0KCR0ZmllbGRzWyRpXVsnYXR0cmliJ11bJ3VzZXd5c2l3eWcnXSkgJiYgJHRmaWVsZHNbJGldWydhdHRyaWInXVsndXNld3lzaXd5ZyddID09IDEgJiYKCQkJICAgICAgJHRoaXMtPkdldFByZWZlcmVuY2UoJ2FsbG93X2NvbW1lbnRfd3lzaXd5ZycsMCksCgkJCSAgICAgICRpZCwKCQkJICAgICAgJHRmaWVsZHNbJGldWydhdHRyaWInXVsnZGZsdGNvbnRlbnQnXSwKCQkJICAgICAgJ2ZpZWxkXycuJHRmaWVsZHNbJGldWydpZCddKTsKICAgICAgYnJlYWs7CiAgICBjYXNlICdkcm9wZG93bic6CiAgICBjYXNlICdtdWx0aXNlbGVjdCc6CiAgICAgIGlmKCBpc3NldCgkdGZpZWxkc1skaV1bJ2F0dHJpYiddWydvcHRpb25zJ10pICkgewoJJHRtcCA9IGV4cGxvZGUoIlxuIiwkdGZpZWxkc1skaV1bJ2F0dHJpYiddWydvcHRpb25zJ10pOwoJJHRtcDIgPSBhcnJheSgpOwoJZm9yZWFjaCggJHRtcCBhcyAkb25lICkgewoJICAka2V5ID0gJyc7CgkgICR2YWx1ZSA9ICcnOwoJICBpZiggc3Ryc3RyKCRvbmUsJz0nKSAhPT0gRkFMU0UgKQoJICAgIGxpc3QoJGtleSwkdmFsdWUpID0gZXhwbG9kZSgnPScsdHJpbSgkb25lKSwyKTsKCSAgZWxzZSB7CgkgICAgJHZhbHVlID0gJG9uZTsKCSAgICAka2V5ID0gJG9uZTsKCSAgfQoJICAkdG1wMlt0cmltKCR2YWx1ZSldID0gdHJpbSgka2V5KTsKCX0KCSR0ZmllbGRzWyRpXVsnYXR0cmliJ11bJ29wdGlvbnMnXSA9ICR0bXAyOwogICAgICB9CiAgICAgIGJyZWFrOwogICAgfQogICAgICAKICAgICRmaWVsZHNbJHRmaWVsZHNbJGldWydpZCddXSA9ICR0ZmllbGRzWyRpXTsKICB9Cn0KCgojCiMgSGFuZGxlIEZvcm0gU3VibWlzc2lvbgojCmlmKCBpc3NldCgkcGFyYW1zWydjYW5jZWwnXSkgKSB7CiAgJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkKTsKfQplbHNlIGlmKCBpc3NldCgkcGFyYW1zWydzdWJtaXQnXSkgKSB7CiAgJHJlY29yZFsnY2F0ZWdvcnlfaWQnXSA9IChpbnQpJHBhcmFtc1snY2F0ZWdvcnlfaWQnXTsKICAkcmVjb3JkWydkZXN0bmFtZSddID0gdHJpbSgkcGFyYW1zWydpbnB1dF9kZXN0bmFtZSddKTsKICAkcmVjb3JkWydhdXRob3InXSA9IHRyaW0oJHBhcmFtc1snaW5wdXRfYXV0aG9yJ10pOwogICRyZWNvcmRbJ3N1bW1hcnknXSA9IHRyaW0oJHBhcmFtc1snaW5wdXRfc3VtbWFyeSddKTsKICAkcmVjb3JkWydkZXNjcmlwdGlvbiddID0gdHJpbSgkcGFyYW1zWydpbnB1dF9kZXNjcmlwdGlvbiddKTsKCiAgJHVzZXJpZCA9IGdldF91c2VyaWQoKTsKICAkdXNlcm5hbWUgPSAkX1NFU1NJT05bJ2Ntc19hZG1pbl91c2VybmFtZSddOwoKICAkcmV0ID0gJHRoaXMtPkF0dGVtcHRVcGxvYWQoICRpZCwgJHBhcmFtcywgJHJldHVybmlkICk7CiAgaWYoICRyZXRbMF0gPT0gZmFsc2UgKSB7CiAgICBlY2hvICR0aGlzLT5TaG93RXJyb3JzKCRyZXRbMV0pOwogIH0KICBlbHNlIHsKICAgICR1cGxvYWRfaWQgPSAkcmV0WzFdOwogICAgJHRoZW5hbWUgPSAnJzsKICAgIGlmKCBjb3VudCgkcmV0KSA9PSAzICkgJHRoZW5hbWUgPSAkcmV0WzJdOwoKICAgIC8vIGl0IHVwbG9hZGVkLi4uIG5vdyBmb3IgdGhlIHRsIHN0dWZmCiAgICBpZiggJHRoaXMtPkdldFByZWZlcmVuY2UoJ2FsbG93X3VwbG9hZF9zZW5kZmlsZScsMCkgJiYKCWlzc2V0KCRwYXJhbXNbJ3RsX2VtYWlsJ10pICYmICFlbXB0eSgkcGFyYW1zWyd0bF9lbWFpbCddKSApIHsKICAgICAgLy8gd2UncmUgY3JlYXRpbmcgdGltZSBsaW1pdGVkIGFjY2VzcyBrZXkuCiAgICAgICRob3VycyA9IChpbnQpJHBhcmFtc1sndGxfaG91cnMnXTsKICAgICAgJGRvd25sb2FkcyA9IChpbnQpJHBhcmFtc1sndGxfZG93bmxvYWRzJ107CiAgICAgICRlbWFpbCA9IHRyaW0oJHBhcmFtc1sndGxfZW1haWwnXSk7CiAgICAgICRzZW5kaXQgPSAoaW50KSRwYXJhbXNbJ3RsX3NlbmRpdCddOwoKICAgICAgJGRvd25sb2FkcyA9IG1heCgkZG93bmxvYWRzLDApOwogICAgICAkaG91cnMgPSBtYXgoJGhvdXJzLDApOwoKICAgICAgJG5vdyA9ICRkYi0+RGJUaW1lU3RhbXAodGltZSgpKTsKICAgICAgJGV4cGlyZXMgPSBudWxsOwogICAgICBpZiggJGhvdXJzID4gMCApIHsKCSRleHBpcmVzID0gJGRiLT5EYlRpbWVTdGFtcChzdHJ0b3RpbWUoJysnLiRob3Vycy4nIGhvdXJzJykpOwogICAgICB9CiAgICAgICR1cmxrZXkgPSBzdWJzdHIoc3RyX3NodWZmbGUobWQ1KHRpbWUoKS4kdXBsb2FkX2lkLiR0aGVuYW1lLiRub3cuJGVtYWlsLiRleHBpcmVzKSksMCwxNik7CiAgICAgICRxdWVyeSA9ICdJTlNFUlQgSU5UTyAnLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfdGltZWxpbWl0IAogICAgICAgICAgICAgICAgKHVwbG9hZF9pZCxlbWFpbCx1cmxfa2V5LGNyZWF0ZWQsZXhwaXJlcyxtYXhfZG93bmxvYWRzKQogICAgICAgICAgICAgICAgVkFMVUVTICg/LD8sPywkbm93LCRleHBpcmVzLD8pIjsKICAgICAgJGRiciA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkoJHVwbG9hZF9pZCwkZW1haWwsJHVybGtleSwkZG93bmxvYWRzKSk7CiAgICAgIGlmKCAkZGJyICkgewoJLy8gbWF5YmUgc2VuZCBhbiBlbWFpbAoJJGNtc21haWxlciA9ICR0aGlzLT5HZXRNb2R1bGVJbnN0YW5jZSgnQ01TTWFpbGVyJyk7CglpZiggJGNtc21haWxlciApIHsKCSAgJGNvbnRlbnRvcHMgPSAkZ0Ntcy0+R2V0Q29udGVudE9wZXJhdGlvbnMoKTsKCSAgJHBhZ2VpZCA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdkZWZhdWx0X3NlbmRmaWxlcGFnZScpOwoJICBpZiggJHBhZ2VpZCA8PSAwICkgewoJICAgICRwYWdlaWQgPSAkY29udGVudG9wcy0+R2V0RGVmYXVsdENvbnRlbnQoKTsKCSAgfQoKCSAgJHRtcCA9ICR0aGlzLT5HZXRVcGxvYWREZXRhaWxzKCR1cGxvYWRfaWQsJHBhZ2VpZCk7CgkgICR0bXBbJ2Rvd25sb2FkX3VybCddID0gJHRoaXMtPkNyZWF0ZVVSTCgkaWQsJ2dldGZpbGUnLCRwYWdlaWQsCgkJCQkJCSAgYXJyYXkoJ3VybF9rZXknPT4kdXJsa2V5KSwKCQkJCQkJICBmYWxzZSwKCQkJCQkJICAkdGhpcy0+X2dldFRpbWVMaW1pdGVkVVJMKCR1cmxrZXkpKTsKCgkgICR1cGxvYWRfaW5mID0gbmV3IFN0ZENsYXNzKCk7CgkgIGZvcmVhY2goICR0bXAgYXMgJGtleSA9PiAkdmFsdWUgKSB7CgkgICAgaWYoIHN0YXJ0c3dpdGgoJGtleSwndXBsb2FkXycpICkgewoJICAgICAgJGtleSA9IHN1YnN0cigka2V5LDcpOwoJICAgIH0KCSAgICBpZiggIWVtcHR5KCR2YWx1ZSkgKSB7CgkgICAgICAkdXBsb2FkX2luZm8tPiRrZXkgPSAkdmFsdWU7CgkgICAgfQoJICB9CgkgICRzbWFydHktPmFzc2lnbignZW50cnknLCR1cGxvYWRfaW5mbyk7CgkgICRzbWFydHktPmFzc2lnbignbm90ZXMnLCcnKTsKCSAgaWYoICRkb3dubG9hZHMgKSB7CgkgICAgJHNtYXJ0eS0+YXNzaWduKCdkb3dubG9hZHMnLCRkb3dubG9hZHMpOwoJICB9CgkgIGlmKCAkaG91cnMgKSB7CgkgICAgJHNtYXJ0eS0+YXNzaWduKCdob3VycycsJGhvdXJzKTsKCSAgfQoKCSAgJHN1YmplY3RfdHBsID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ3RpbWVsaW1pdGVkX3N1YmplY3QnLAoJCQkJCSAgICAgICR0aGlzLT5MYW5nKCdkZmx0X3RpbWVsaW1pdGVkX3N1YmplY3QnKSk7CgkgICRzdWJqZWN0ID0gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhKCRzdWJqZWN0X3RwbCk7CgoJICAkY21zbWFpbGVyLT5yZXNldCgpOwoJICAkY21zbWFpbGVyLT5TZXRTdWJqZWN0KCRzdWJqZWN0KTsKCSAgJGNtc21haWxlci0+SXNIVE1MKHRydWUpOwoJICAkY21zbWFpbGVyLT5BZGRBZGRyZXNzKCRlbWFpbCk7CgkgICRib2R5ID0gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhYmFzZSgndXBsb2FkX3NlbmRmaWxlcnB0Jyk7CgkgICRjbXNtYWlsZXItPlNldEJvZHkoJGJvZHkpOwoJICAkY21zbWFpbGVyLT5TZW5kKCk7Cgl9CiAgICAgIH0KICAgIH0KCiAgICAkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQpOwogIH0KfQoKIwojIEdpdmUgZXZlcnl0aGluZyB0byBzbWFydHkKIwokc21hcnR5LT5hc3NpZ24oJ2Zvcm1zdGFydCcsJHRoaXMtPkNHQ3JlYXRlRm9ybVN0YXJ0KCRpZCwnYWRtaW5fdXBsb2FkJywkcmV0dXJuaWQsJHBhcmFtcyxmYWxzZSwncG9zdCcsJ211bHRpcGFydC9mb3JtLWRhdGEnKSk7CiRzbWFydHktPmFzc2lnbignZm9ybWVuZCcsJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7CiRzbWFydHktPmFzc2lnbignY2F0ZWdvcmllcycsJGNhdGVnb3J5bGlzdCk7CmlmKCAhZW1wdHkoJGN1cmNhdGVnb3J5KSApIHsKICAkc21hcnR5LT5hc3NpZ24oJ2N1cmNhdGVnb3J5JywkY3VyY2F0ZWdvcnkpOwogICRxdWVyeSA9ICdTRUxFQ1QgKiBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2Fkc19jYXRlZ29yaWVzIAogICAgICAgICAgICBXSEVSRSB1cGxvYWRfY2F0ZWdvcnlfaWQgPSA/JzsKICAkcm93ID0gJGRiLT5HZXRSb3coJHF1ZXJ5LGFycmF5KCRjdXJjYXRlZ29yeSkpOwogIGlmKCAkcm93Wyd1cGxvYWRfY2F0ZWdvcnlfZGZsdHVzZXJwZXJtcyddICE9ICcnICkgewogICAgJHJvd1sndXBsb2FkX2NhdGVnb3J5X2RmbHR1c2VycGVybXMnXSA9IGV4cGxvZGUoJywnLCRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9kZmx0dXNlcnBlcm1zJ10pOwogIH0KICAkc21hcnR5LT5hc3NpZ24oJ2N1cmNhdGVnb3J5JywkY3VyY2F0ZWdvcnkpOwogIGlmKCBpc19hcnJheSgkcm93KSApIHsKICAgICRzbWFydHktPmFzc2lnbignY2F0ZWdvcnlfaW5mbycsJHJvdyk7CiAgfQp9CiRzbWFydHktPmFzc2lnbignYWxsb3dfcmVwbGFjZScsMCk7CiRzbWFydHktPmFzc2lnbigndXBsb2FkJywkcmVjb3JkKTsKaWYoIGNvdW50KCRmaWVsZHMpICkgewogICRzbWFydHktPmFzc2lnbignZmllbGRzJywkZmllbGRzKTsKfQokc21hcnR5LT5hc3NpZ24oJ3RsX2hvdXJzJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgndGltZWxpbWl0ZWRfaG91cnMnLDApKTsKJHNtYXJ0eS0+YXNzaWduKCd0bF9kb3dubG9hZHMnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCd0aW1lbGltaXRlZF9kb3dubG9hZHMnLDApKTsKJHNtYXJ0eS0+YXNzaWduKCdhbGxvd191cGxvYWRfc2VuZGZpbGUnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdhbGxvd191cGxvYWRfc2VuZGZpbGUnLDApKTsKCiRmZXUgPSBjbXNfdXRpbHM6OmdldF9tb2R1bGUoJ0Zyb250RW5kVXNlcnMnKTsKaWYoIGlzX29iamVjdCgkZmV1KSApIHsKICAkZ3JvdXBzID0gJGZldS0+R2V0R3JvdXBMaXN0KCk7CiAgaWYoIGlzX2FycmF5KCRncm91cHMpICYmIGNvdW50KCRncm91cHMpICkgewogICAgJHNtYXJ0eS0+YXNzaWduKCdmZXVfZ3JvdXBsaXN0JyxhcnJheV9mbGlwKCRncm91cHMpKTsKICB9Cn0KIwojIERpc3BsYXkgdGhlIHRlbXBsYXRlCiMKZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCdhZG1pbl91cGxvYWQudHBsJyk7CgojCiMgRU9GCiMKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.categorysummary.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLXNldC1zdHlsZTpsaW51eDsgdGFiLXdpZHRoOjI7IGluZGVudC10YWJzLW1vZGU6dDsgYy1iYXNpYy1vZmZzZXQ6IDI7IC0qLQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogVXBsb2FkcyAtPSBhbGxvdyB1c2VycyB0byB1cGxvYWQgc3R1ZmYsIGEgcHNldWRvIGZpbGUgbWFuYWdlciIgbW9kdWxlCiMgQXV0aG9yOiBSb2JlcnQgQ2FtcGJlbGwgPHJvYkB0ZWNoY29tLmR5bmRucy5vcmc+CiMgVGhpcyBhY3Rpb24gYWRkZWQgYnkgU2pHLCBzbyBpZiBpdCdzIHNjcmV3ZWQgdXAsIHlvdSBrbm93IHdobyB0byBibGFtZQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6CS8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQppZiggIWlzc2V0KCRnQ21zKSApIGV4aXQ7CgovLyB0cnkgdG8gZmlndXJlIG91dCBhIHNvcnQgb3JkZXIKJHNvcnRvcmRlciA9ICJPUkRFUiBCWSB1cGxvYWRfY2F0ZWdvcnlfbmFtZSBBU0MiOwppZiggaXNzZXQoJHBhcmFtc1snc29ydG9yZGVyJ10pICkgewoJc3dpdGNoKCB0cmltKCRwYXJhbXNbJ3NvcnRvcmRlciddKSApIHsKCWNhc2UgIm5hbWVfYXNjIjoKCQkvLyBhc2NlbmRpbmcgbmFtZQoJCSRzb3J0b3JkZXIgPSAiT1JERVIgQlkgdXBsb2FkX2NhdGVnb3J5X25hbWUgQVNDIjsKCQlicmVhazsKCWNhc2UgIm5hbWVfZGVzYyI6CgkJLy8gZGVzY2VuZGluZyBuYW1lCgkJJHNvcnRvcmRlciA9ICJPUkRFUiBCWSB1cGxvYWRfY2F0ZWdvcnlfbmFtZSBERVNDIjsKCQlicmVhazsKCWNhc2UgInN1bW1fYXNjIjoKCQkvLyBhc2NlbmRpbmcgc3VtbWFyeQoJCSRzb3J0b3JkZXIgPSAiT1JERVIgQlkgdXBsb2FkX2NhdGVnb3J5X2Rlc2NyaXB0aW9uIEFTQyI7CgkJYnJlYWs7CgljYXNlICJzdW1tX2Rlc2MiOgoJCS8vIGRlc2NlbmRpbmcgc3VtbWFyeQoJCSRzb3J0b3JkZXIgPSAiT1JERVIgQlkgdXBsb2FkX2NhdGVnb3J5X2Rlc2NyaXB0aW9uIERFU0MiOwoJCWJyZWFrOwoJY2FzZSAicmFuZG9tIjoKCQkvLyByYW5kb20KCQkkc29ydG9yZGVyID0gIk9SREVSIEJZIHJhbmQoKSI7Cgl9CiB9CiRzb3J0b3JkZXIgPSAiICIuJHNvcnRvcmRlcjsKCi8vIGRldGVybWluZSBob3cgbWFueSB3ZSdyZSBnb2luZyB0byBkaXNwbGF5CiRjb3VudCA9ICIiOwppZiggaXNzZXQoICRwYXJhbXNbJ2NvdW50J10gKSApIHsKCSRjb3VudCA9ICIgTElNSVQgMCwiLihpbnQpdHJpbSgkcGFyYW1zWydjb3VudCddKTsKfQoKCQkJCSAKJHFwYXJtcyA9IGFycmF5KCk7CiRxdWVyeSA9ICJTRUxFQ1QgdXBsb2FkX2NhdGVnb3J5X2lkLCB1cGxvYWRfY2F0ZWdvcnlfbmFtZSwgdXBsb2FkX2NhdGVnb3J5X2Rlc2NyaXB0aW9uIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX2NhdGVnb3JpZXMgV0hFUkUgdXBsb2FkX2NhdGVnb3J5X2xpc3RhYmxlID0gMSI7CiRxdWVyeSAuPSAkc29ydG9yZGVyLiRjb3VudDsKCiRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHF1ZXJ5ICk7CmlmKCAkZGJyZXN1bHQgJiYgJGRicmVzdWx0LT5SZWNvcmRDb3VudCgpICkgewoJJG1hdGNoZXMgPSAkZGJyZXN1bHQtPlJlY29yZENvdW50KCk7Cn0KCi8vIHNldHVwIHN0cmluZ3MgLSBhc3NpZ24gYSBidW5jaCBhcyBibGFuaywganVzdCBpbiBjYXNlIHNvbWVvbmUKLy8gdXNlcyBhIHN0YW5kYXJkIHN1bW1hcnkgdGVtcGxhdGUKJHNtYXJ0eS0+YXNzaWduKCdjYXRlZ29yeScsJHRoaXMtPkxhbmcoJ2NhdGVnb3J5JykpOwokc21hcnR5LT5hc3NpZ24oJ2lkJywkdGhpcy0+TGFuZygnaWQnKSk7CiRzbWFydHktPmFzc2lnbignbmFtZScsJHRoaXMtPkxhbmcoJ25hbWUnKSk7CiRzbWFydHktPmFzc2lnbignZGF0ZScsJycpOwokc21hcnR5LT5hc3NpZ24oJ2F1dGhvcicsJycpOwokc21hcnR5LT5hc3NpZ24oJ3NpemUnLCcnKTsKJHNtYXJ0eS0+YXNzaWduKCdkZXRhaWxzJywnJyk7CiRzbWFydHktPmFzc2lnbignc3VtbWFyeScsJHRoaXMtPkxhbmcoJ3N1bW1hcnknKSk7CiRzbWFydHktPmFzc2lnbignZGVzY3JpcHRpb24nLCR0aGlzLT5MYW5nKCdkZXNjcmlwdGlvbicpKTsKJHNtYXJ0eS0+YXNzaWduKCd0aHVtYm5haWwnLCcnKTsKJHNtYXJ0eS0+YXNzaWduKCdpY29uJywnJyk7CiRzbWFydHktPmFzc2lnbignaW1hZ2UnLCcnKTsKJHNtYXJ0eS0+YXNzaWduKCdudW1wYWdlcycsMSk7CgokdGVtcGxhdGUgPSAnc3VtbWFyeXJwdF8nLiR0aGlzLT5HZXRQcmVmZXJlbmNlKCdkZWZhdWx0X3N1bW1hcnlycHQnKTsKaWYoIGlzc2V0KCAkcGFyYW1zWyd0ZW1wbGF0ZSddICkgKSAkdGVtcGxhdGUgPSAnc3VtbWFyeXJwdF8nLiRwYXJhbXNbJ3RlbXBsYXRlJ107Cgokcm93YXJyYXk9YXJyYXkoKTsKd2hpbGUgKCRyb3cgPSAkZGJyZXN1bHQtPkZldGNoUm93KCkpIHsKCSRvbmVyb3cgPSBuZXcgc3RkQ2xhc3MgKCk7Cgkkb25lcm93LT5pZCA9ICRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9pZCddOwoJJG9uZXJvdy0+bmFtZSA9ICRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9uYW1lJ107Cgkkb25lcm93LT5jYXRlZ29yeSA9ICcnOwoJJG9uZXJvdy0+ZG93bmxvYWRfdXJsID0gJyc7CgoJJHBhcm1zID0gYXJyYXkoJ2NhdGVnb3J5Jz0+JG9uZXJvdy0+bmFtZSwnbW9kZSc9PidzdW1tYXJ5Jyk7CglpZiggaXNzZXQoJHBhcmFtc1snbGlzdGluZ29yZGVyJ10pICkgJHBhcm1zWydzb3J0b3JkZXInXSA9ICRwYXJhbXNbJ2xpc3RpbmdvcmRlciddOwoJaWYoIGlzc2V0KCRwYXJhbXNbJ2xpc3Rpbmd0ZW1wbGF0ZSddKSApICRwYXJtc1sndGVtcGxhdGUnXSA9ICRwYXJhbXNbJ2xpc3Rpbmd0ZW1wbGF0ZSddOwoJJG9uZXJvdy0+bmFtZWxpbmsgPSAkdGhpcy0+Q3JlYXRlTGluayAoJGlkLCAnZGVmYXVsdCcsICRyZXR1cm5pZCwkcm93Wyd1cGxvYWRfY2F0ZWdvcnlfbmFtZSddLCAkcGFybXMpOwoJJG9uZXJvdy0+YXV0aG9yID0gJyc7Cgkkb25lcm93LT5kZXRhaWxsaW5rID0gJyc7Cgkkb25lcm93LT5kZXRhaWx1cmwgPSAnJzsKCSRvbmVyb3ctPnN1bW1hcnkgPSAkcm93Wyd1cGxvYWRfY2F0ZWdvcnlfZGVzY3JpcHRpb24nXTsKCSRvbmVyb3ctPnN1bW1hcnlsaW5rID0gJyc7Cgkkb25lcm93LT50aHVtYm5haWxfdXJsID0gJyc7Cgkkb25lcm93LT5pbWFnZV91cmwgPSAnJzsKCSRvbmVyb3ctPmljb251cmwgPSAnJzsKCSRvbmVyb3ctPmZpbGV0eXBlID0gJyc7Cgkkb25lcm93LT5kZXNjcmlwdGlvbiA9ICRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9kZXNjcmlwdGlvbiddOwoJJG9uZXJvdy0+aXAgPSAnJzsKCSRvbmVyb3ctPnNpemUgPSAnJzsgLy8gY291bGQgcG9wdWxhdGUgd2l0aCBjb3VudC4uLgoJJG9uZXJvdy0+ZGF0ZSA9ICcnOyAvLyBjb3VsZCBwb3B1bGF0ZSB3aXRoIGRhdGEgLi4uCgkkcm93YXJyYXlbXSA9ICRvbmVyb3c7Cn0KJHNtYXJ0eS0+YXNzaWduICgnaXRlbXMnLCAkcm93YXJyYXkpOwokc21hcnR5LT5hc3NpZ24gKCdpdGVtY291bnQnLCBjb3VudCgkcm93YXJyYXkpKTsKCiRzbWFydHktPmFzc2lnbiggJ21hdGNoZXMnLCAkbWF0Y2hlcyApOwoKLy8gRGlzcGxheSB0aGUgcG9wdWxhdGVkIHRlbXBsYXRlCmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhYmFzZSAoJHRlbXBsYXRlKTsKIAo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.default.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLXNldC1zdHlsZTpsaW51eDsgdGFiLXdpZHRoOjI7IGluZGVudC10YWJzLW1vZGU6dDsgYy1iYXNpYy1vZmZzZXQ6IDI7IC0qLQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogVXBsb2FkcyAtPSBhbGxvdyB1c2VycyB0byB1cGxvYWQgc3R1ZmYsIGEgcHNldWRvIGZpbGUgbWFuYWdlciIgbW9kdWxlCiMgQXV0aG9yOiBSb2JlcnQgQ2FtcGJlbGwgPHJvYkB0ZWNoY29tLmR5bmRucy5vcmc+CiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOgkvL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KaWYoICFpc3NldCgkZ0NtcykgKSBleGl0OwoKewoJJHRtcF9wYXJhbXMgPSBhcnJheSgpOwoJaWYgKGlzc2V0ICgkcGFyYW1zWydoaWRkZW5fcGFyYW1zJ10pICkgJHRtcF9wYXJhbXMgPSBjZ2VfYXJyYXk6OmV4cGxvZGVfd2l0aF9rZXkoJHBhcmFtc1snaGlkZGVuX3BhcmFtcyddKTsKCSRwYXJhbXMgPSBhcnJheV9tZXJnZSggJHBhcmFtcywgJHRtcF9wYXJhbXMgKTsKfQoKLy8gY2hlY2sgZm9yIHJlcXVpcmVkIGFyZ3VtZW50cwppZiAoIWlzc2V0ICgkcGFyYW1zWydtb2RlJ10pICkgJHBhcmFtc1snbW9kZSddID0gJ3N1bW1hcnknOwogICAgICAgIAovLyBzZXR1cAokdGVtcGxhdGUgPSAnc3VtbWFyeXJwdF8nLiR0aGlzLT5HZXRQcmVmZXJlbmNlKCdkZWZhdWx0X3N1bW1hcnlycHQnKTsKaWYoIGlzc2V0KCAkcGFyYW1zWyd0ZW1wbGF0ZSddICkgKSAkdGVtcGxhdGUgPSAnc3VtbWFyeXJwdF8nLiRwYXJhbXNbJ3RlbXBsYXRlJ107CiRjb25maWcgPSAkZ0Ntcy0+R2V0Q29uZmlnKCk7CgovLyBoYW5kbGUgdGhlIHNlbmRmaWxlcGFnZSBwYXJhbWV0ZXIKJHNlbmRmaWxlcGFnZSA9ICRyZXR1cm5pZDsKaWYoIGlzc2V0KCRwYXJhbXNbJ3NlbmRmaWxlcGFnZSddKSApIHsKCSRtYW5hZ2VyID0gJGdDbXMtPkdldEhpZXJhcmNoeU1hbmFnZXIoKTsKCSRub2RlID0gJG1hbmFnZXItPnN1cmVHZXROb2RlQnlBbGlhcygkcGFyYW1zWydzZW5kZmlsZXBhZ2UnXSk7CglpZiAoaXNzZXQoJG5vZGUpKSB7CgkJJGNvbnRlbnQgPSAkbm9kZS0+R2V0Q29udGVudCgpOwoJCWlmIChpc3NldCgkY29udGVudCkpICRzZW5kZmlsZXBhZ2UgPSAkY29udGVudC0+SWQoKTsKCX0KCWVsc2UgewoJCSRub2RlID0gJG1hbmFnZXItPnN1cmVHZXROb2RlQnlJZCgkcGFyYW1zWydzZW5kZmlsZXBhZ2UnXSk7CgkJaWYgKGlzc2V0KCRub2RlKSkgJHNlbmRmaWxlcGFnZSA9ICRwYXJhbXNbJ3NlbmRmaWxlcGFnZSddOwoJfQp9CmlmKCBlbXB0eSgkc2VuZGZpbGVwYWdlKSApIHsKCSR0bXAgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZGVmYXVsdF9zZW5kZmlsZXBhZ2UnLC0xKTsKCWlmKCAkdG1wID4gMCApIHsKCQkkc2VuZGZpbGVwYWdlID0gJHRtcDsKCX0KCWVsc2UgewoJCSRzZW5kZmlsZXBhZ2UgPSAkcmV0dXJuaWQ7Cgl9Cn0KCi8vIGhhbmRsZSB0aGUgZGV0YWlscGFnZSBwYXJhbWV0ZXIKJGRldGFpbHBhZ2UgPSAnJzsKaWYoIGlzc2V0KCRwYXJhbXNbJ2RldGFpbHBhZ2UnXSkgKSB7CgkkbWFuYWdlciA9ICRnQ21zLT5HZXRIaWVyYXJjaHlNYW5hZ2VyKCk7Cgkkbm9kZSA9ICRtYW5hZ2VyLT5zdXJlR2V0Tm9kZUJ5QWxpYXMoJHBhcmFtc1snZGV0YWlscGFnZSddKTsKCWlmIChpc3NldCgkbm9kZSkpIHsKCQkkY29udGVudCA9ICRub2RlLT5HZXRDb250ZW50KCk7CgkJaWYgKGlzc2V0KCRjb250ZW50KSkgJGRldGFpbHBhZ2UgPSAkY29udGVudC0+SWQoKTsKCX0KCWVsc2UgewoJCSRub2RlID0gJG1hbmFnZXItPnN1cmVHZXROb2RlQnlJZCgkcGFyYW1zWydkZXRhaWxwYWdlJ10pOwoJCWlmIChpc3NldCgkbm9kZSkpICRkZXRhaWxwYWdlID0gJHBhcmFtc1snZGV0YWlscGFnZSddOwoJfQoJdW5zZXQoICRwYXJhbXNbJ2RldGFpbHBhZ2UnXSApOwp9CmlmKCAkZGV0YWlscGFnZSAhPSAnJyApICRyZXR1cm5pZCA9ICRkZXRhaWxwYWdlOwoKLy8gbW9kZSBpcyBzZXQsIG5vdyBkZWNpZGUgd2hhdCB0byBkbwovLyBoYW5kbGUgdGhlIHNpbXBsZSBzdHVmZiAob25lIHNpbmdsZSBsaW5rKQppZiggJHBhcmFtc1snbW9kZSddID09ICdzaW5nbGUnIHx8IAoJCSRwYXJhbXNbJ21vZGUnXSA9PSAnZGV0YWlsZWQnIHx8CgkJJHBhcmFtc1snbW9kZSddID09ICdkZXRhaWwnIHx8CgkJJHBhcmFtc1snbW9kZSddID09ICdzaW5nbGVzdW1tYXJ5JyB8fAoJCSRwYXJhbXNbJ21vZGUnXSA9PSAnbGluaycgfHwgCgkJJHBhcmFtc1snbW9kZSddID09ICd1cmwnICkgewoJaW5jbHVkZShkaXJuYW1lKF9fRklMRV9fKS4nL2FjdGlvbi5kZXRhaWwucGhwJyk7CglyZXR1cm47Cn0KZWxzZSBpZiggJHBhcmFtc1snbW9kZSddID09ICd1cGxvYWQnICkgewoJIGluY2x1ZGUoZGlybmFtZShfX0ZJTEVfXykuJy9hY3Rpb24udXBsb2FkLnBocCcpOwoJIHJldHVybjsKfQoKLy8KLy8gU2V0dXAgZGF0YSBmb3IgdGhlIGRlZmF1bHQgc3VtbWFyeSBtb2RlCi8vCiRzZWxlY3Rmb3JtID0gJGlkOwppZiggaXNzZXQoICRwYXJhbXNbJ3NlbGVjdGZvcm0nXSApICkgJHNlbGVjdGZvcm0gPSB0cmltKCRwYXJhbXNbJ3NlbGVjdGZvcm0nXSk7CgkJCiRzZWxlY3RuYW1lID0gJ2ZpbGUnOwppZiggaXNzZXQoICRwYXJhbXNbJ3NlbGVjdG5hbWUnXSApICkgJHNlbGVjdG5hbWUgPSB0cmltKCRwYXJhbXNbJ3NlbGVjdG5hbWUnXSk7Cgokc2VsZWN0dmFsdWUgPSAtMTsKaWYoIGlzc2V0KCAkcGFyYW1zWydzZWxlY3R2YWx1ZSddICkgKSAkc2VsZWN0dmFsdWUgPSB0cmltKCRwYXJhbXNbJ3NlbGVjdHZhbHVlJ10pOwoJCQokZmlsZXR5cGVzID0gbnVsbDsKaWYoIGlzc2V0KCAkcGFyYW1zWydmaWxldHlwZXMnXSApICkgJGZpbGV0eXBlcyA9IHRyaW0oJHBhcmFtc1snZmlsZXR5cGVzJ10pOwoJCiRmaWVsZF9uYW1lID0gbnVsbDsKaWYoIGlzc2V0KCAkcGFyYW1zWydmaWVsZG5hbWUnXSApICkgJGZpZWxkX25hbWUgPSB0cmltKCRwYXJhbXNbJ2ZpZWxkbmFtZSddKTsKCiRmaWVsZF92YWwgPSBudWxsOwppZiggaXNzZXQoICRwYXJhbXNbJ2ZpZWxkdmFsJ10gKSApICRmaWVsZF92YWwgPSB0cmltKCRwYXJhbXNbJ2ZpZWxkdmFsJ10pOwoKJGZpZWxkX25hbWUyID0gbnVsbDsKaWYoIGlzc2V0KCAkcGFyYW1zWydmaWVsZG5hbWUyJ10gKSApICRmaWVsZF9uYW1lMiA9IHRyaW0oJHBhcmFtc1snZmllbGRuYW1lMiddKTsKCiRmaWVsZF92YWwyID0gbnVsbDsKaWYoIGlzc2V0KCAkcGFyYW1zWydmaWVsZHZhbDInXSApICkgJGZpZWxkX3ZhbDIgPSB0cmltKCRwYXJhbXNbJ2ZpZWxkdmFsMiddKTsKCiRrZXkgPSBudWxsOwppZiggaXNzZXQoICRwYXJhbXNbJ2tleSddICkgKSAka2V5ID0gdHJpbSgkcGFyYW1zWydrZXknXSk7CgppZiggIWlzc2V0KCAkcGFyYW1zWydjYXRlZ29yeSddICkgKSB7CgkvLyBpZiBtb2RlIG9yIGNhdGVnb3J5IGlzbid0IHNldC4uLiB3ZSBkb24ndCBkaXNwbGF5IGFueXRoaW5nCglhdWRpdCgnJywkdGhpcy0+R2V0TmFtZSgpLCdVcGxvYWRzIG1vZHVsZSBzdW1tYXJ5IHZpZXcgY2FsbGVkIHdpdGhvdXQgc3BlY2lmeWluZyBhIGNhdGVnb3J5Jyk7CgkkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UgKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLAoJCQkJCQkJCQkJCQkJCSR0aGlzLT5MYW5nICgnZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJywnY2F0ZWdvcnknKSk7CglyZXR1cm47Cn0KCi8vIHRyeSB0byBmaWd1cmUgb3V0IGEgc29ydCBvcmRlcgokc29ydG9yZGVyID0gIk9SREVSIEJZIHVwbG9hZF9kYXRlIEFTQyI7CmlmKCBpc3NldCgkcGFyYW1zWydzb3J0b3JkZXInXSkgKSB7Cglzd2l0Y2goIHRyaW0oJHBhcmFtc1snc29ydG9yZGVyJ10pICkgewoJY2FzZSAiZGF0ZV9hc2MiOgoJCS8vIGFzY2VuZGluZyBkYXRlCgkJJHNvcnRvcmRlciA9ICJPUkRFUiBCWSB1cGxvYWRfZGF0ZSBBU0MiOwoJCWJyZWFrOwoJY2FzZSAiZGF0ZV9kZXNjIjoKCQkvLyBkZXNjZW5kaW5nIGRhdGUKCQkkc29ydG9yZGVyID0gIk9SREVSIEJZIHVwbG9hZF9kYXRlIERFU0MiOwoJCWJyZWFrOwoJY2FzZSAibmFtZV9hc2MiOgoJCS8vIGFzY2VuZGluZyBuYW1lCgkJJHNvcnRvcmRlciA9ICJPUkRFUiBCWSB1cGxvYWRfbmFtZSBBU0MiOwoJCWJyZWFrOwoJY2FzZSAibmFtZV9kZXNjIjoKCQkvLyBkZXNjZW5kaW5nIG5hbWUKCQkkc29ydG9yZGVyID0gIk9SREVSIEJZIHVwbG9hZF9uYW1lIERFU0MiOwoJCWJyZWFrOwoJY2FzZSAic2l6ZV9hc2MiOgoJCS8vIGFzY2VuZGluZyBzaXplCgkJJHNvcnRvcmRlciA9ICJPUkRFUiBCWSB1cGxvYWRfc2l6ZSBBU0MiOwoJCWJyZWFrOwoJY2FzZSAic2l6ZV9kZXNjIjoKCQkvLyBkZXNjZW5kaW5nIHNpemUKCQkkc29ydG9yZGVyID0gIk9SREVSIEJZIHVwbG9hZF9zaXplIERFU0MiOwoJCWJyZWFrOwoJY2FzZSAic3VtbV9hc2MiOgoJCS8vIGFzY2VuZGluZyBzdW1tYXJ5CgkJJHNvcnRvcmRlciA9ICJPUkRFUiBCWSB1cGxvYWRfc3VtbWFyeSBBU0MiOwoJCWJyZWFrOwoJY2FzZSAic3VtbV9kZXNjIjoKCQkvLyBkZXNjZW5kaW5nIHN1bW1hcnkKCQkkc29ydG9yZGVyID0gIk9SREVSIEJZIHVwbG9hZF9zdW1tYXJ5IERFU0MiOwoJCWJyZWFrOwoJY2FzZSAiYXV0aG9yX2FzYyI6CgkJLy8gYXNjZW5kaW5nIGF1dGhvcgoJCSRzb3J0b3JkZXIgPSAiT1JERVIgQlkgdXBsb2FkX2F1dGhvciBBU0MiOwoJCWJyZWFrOwoJY2FzZSAiYXV0aG9yX2Rlc2MiOgoJCS8vIGRlc2NlbmRpbmcgYXV0aG9yCgkJJHNvcnRvcmRlciA9ICJPUkRFUiBCWSB1cGxvYWRfYXV0aG9yIERFU0MiOwoJCWJyZWFrOwoJY2FzZSAiaXBfYXNjIjoKCQkvLyBhc2NlbmRpbmcgaXAKCQkkc29ydG9yZGVyID0gIk9SREVSIEJZIHVwbG9hZF9pcCBBU0MiOwoJCWJyZWFrOwoJY2FzZSAiaXBfZGVzYyI6CgkJLy8gZGVzY2VuZGluZyBpcAoJCSRzb3J0b3JkZXIgPSAiT1JERVIgQlkgdXBsb2FkX2lwIERFU0MiOwoJCWJyZWFrOwoJY2FzZSAiZGVzY19hc2MiOgoJCS8vIGFzY2VuZGluZyBhdXRob3IKCQkkc29ydG9yZGVyID0gIk9SREVSIEJZIHVwbG9hZF9kZXNjcmlwdGlvbiBBU0MiOwoJCWJyZWFrOwoJY2FzZSAiZGVzY19kZXNjIjoKCQkvLyBkZXNjZW5kaW5nIGF1dGhvcgoJCSRzb3J0b3JkZXIgPSAiT1JERVIgQlkgdXBsb2FkX2Rlc2NyaXB0aW9uIERFU0MiOwoJCWJyZWFrOwogIGNhc2UgJ2Rvd25sb2Fkc19hc2MnOgoJCS8vIGFzY2VuZGluZyBvcmRlciBvZiBkb3dubG9hZCBjb3VudAoJCSRzb3J0b3JkZXIgPSAiT1JERVIgQlkgZG93bmxvYWRzIEFTQyI7CgkJYnJlYWs7CiAgY2FzZSAnZG93bmxvYWRzX2Rlc2MnOgoJCS8vIGRlc2NlbmRpbmcgb3JkZXIgb2YgZG93bmxvYWQgY291bnQKCQkkc29ydG9yZGVyID0gIk9SREVSIEJZIGRvd25sb2FkcyBERVNDIjsKCQlicmVhazsKCWNhc2UgInJhbmRvbSI6CgkJLy8gcmFuZG9tCgkJJHNvcnRvcmRlciA9ICJPUkRFUiBCWSByYW5kKCkiOwoJfQogfQokc29ydG9yZGVyID0gIiAiLiRzb3J0b3JkZXI7CgovLyBkZXRlcm1pbmUgaG93IG1hbnkgd2UncmUgZ29pbmcgdG8gZGlzcGxheQokbGltaXRzdHIgPSAiIjsKJHBhZ2VsaW1pdCA9IDEwMDAwMDsKJHBhZ2VudW0gPSAxOwokbnVtcGFnZXMgPSAxOwppZiggaXNzZXQoICRwYXJhbXNbJ2NvdW50J10gKSApIHsKCSRwYWdlbGltaXQgPSAoaW50KSRwYXJhbXNbJ2NvdW50J107Cn0KaWYoIGlzc2V0KCAkcGFyYW1zWydwYWdlbnVtJ10gKSApICRwYWdlbnVtID0gKGludCkkcGFyYW1zWydwYWdlbnVtJ107CiRsaW1pdHN0ciA9ICIgTElNSVQgMCwkcGFnZWxpbWl0IjsKCi8vIGdldCB0aGUgY2F0ZWdvcnkgaWQKJGNhdGVnb3J5ID0gYXJyYXkoKTsKaWYoIHRyaW0oJHBhcmFtc1snY2F0ZWdvcnknXSkgIT0gJ2FsbCcgKSB7CgkkY2F0ZWdvcnkgPSBVcGxvYWRzOjpnZXRDYXRlZ29yeUZyb21OYW1lKCB0cmltKCRwYXJhbXNbJ2NhdGVnb3J5J10pICk7CglpZiggISRjYXRlZ29yeSApIHsKCQlhdWRpdCgnJywkdGhpcy0+R2V0TmFtZSgpLCdDb3VsZCBub3QgZ2V0IGNhdGVnb3J5IGluZm9ybWF0aW9uIGZvciB1cGxvYWRzIGNhdGVnb3J5ICcuJHBhcmFtc1snY2F0ZWdvcnknXSk7CgkJJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlICgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwKCQkJCQkJCQkJCQkJCQkJJHRoaXMtPkxhbmcgKCdlcnJvcl9jYXRlZ29yeW5vdGZvdW5kJykpOwoJCXJldHVybjsKCX0KCSR0aGlzLT5zbWFydHktPmFzc2lnbignY2F0ZWdvcnlfbmFtZScsJHBhcmFtc1snY2F0ZWdvcnknXSk7Cn0KCi8vIGdldCB0aGUgZmlsdGVyIHN0cmluZwokZmlsdGVyID0gJyc7CmlmKCBpc3NldCgkcGFyYW1zWydpbnB1dF9maWx0ZXInXSkgJiYgJHBhcmFtc1snaW5wdXRfZmlsdGVyJ10gIT0gJycgKSAkZmlsdGVyID0gdHJpbSgkcGFyYW1zWydpbnB1dF9maWx0ZXInXSk7CmlmKCAkZmlsdGVyID09ICcnICkgdW5zZXQoJHBhcmFtc1snaGlkZGVuX3BhcmFtcyddKTsKCQkKaWYoIGlzc2V0KCRwYXJhbXNbJ2ZpbHRlciddKSApIHsKCS8vIG9wdGlvbmFsbHkgZGlzcGxheSB0aGUgZmlsdGVyIGZvcm0KCSR0aGlzLT5zbWFydHktPmFzc2lnbignc3RhcnRmb3JtJywgJHRoaXMtPkNyZWF0ZUZvcm1TdGFydCgkaWQsJ2RlZmF1bHQnLCRyZXR1cm5pZCwkbWV0aG9kPSdwb3N0JywgJycsIHRydWUpKTsKCSR0aGlzLT5zbWFydHktPmFzc2lnbigncHJvbXB0X2ZpbHRlcicsJHRoaXMtPkxhbmcoJ2ZpbHRlcicpKTsKCSR0aGlzLT5zbWFydHktPmFzc2lnbignaW5wdXRfZmlsdGVyJywkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwnaW5wdXRfZmlsdGVyJywkZmlsdGVyLDE1KSk7CgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2lucHV0X3N1Ym1pdCcsJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwnaW5wdXRfc3VibWl0JywkdGhpcy0+TGFuZygnc3VibWl0JykpKTsKCXVuc2V0KCAkcGFyYW1zWydpbnB1dF9maWx0ZXInXSApOwoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdoaWRkZW5fcGFyYW1zJywkdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLCdoaWRkZW5fcGFyYW1zJyxjZ2VfYXJyYXk6OmltcGxvZGVfd2l0aF9rZXkoJHBhcmFtcykpKTsKCSR0aGlzLT5zbWFydHktPmFzc2lnbignZW5kZm9ybScsJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7Cn0KCQkgCiRkb19xdWVyeSA9IHRydWU7CmlmKCAoaXNzZXQoICRwYXJhbXNbJ25vX2luaXRpYWwnXSApICYmICRwYXJhbXNbJ25vX2luaXRpYWwnXSAhPSAnJykgJiYgKGlzc2V0KCAkcGFyYW1zWydoaWRkZW5fcGFyYW1zJ10pID09IGZhbHNlKSApIHsKCSRkb19xdWVyeSA9IGZhbHNlOwp9CgkJIAovLyBhZGp1c3QgdGhlIGZpbHRlcgokYWRqdXN0ZWRfZmlsdGVyID0gJGZpbHRlcjsKaWYoICRmaWx0ZXIgIT0gJycgKSB7CgkkdG1wID0gZXhwbG9kZSgnICcsJGFkanVzdGVkX2ZpbHRlcik7CgkkYWRqdXN0ZWRfZmlsdGVyID0gJyUnLiR0bXBbMF0uJyUnOwp9CgkJIAovLyBnZXQgcmVhZHkgZm9yIGFycmF5IHByb2Nlc3NpbmcKJHJvd2FycmF5ID0gYXJyYXkoKTsKJHF1ZXJ5ID0gJyc7CiRxdWVyeTEgPSAnJzsKJGRicmVzdWx0ID0gZmFsc2U7CiRxcGFybXMgPSBhcnJheSgpOwokdmFsaWRfY2F0cyA9IGFycmF5KCk7CiAgICAgCmlmKCB0cmltKCRwYXJhbXNbJ2NhdGVnb3J5J10pID09ICdhbGwnICkgewoJLy8KCS8vIGhhbmRsZSBkaXNwbGF5IGFsbCBsaXN0YWJsZSBjYXRlZ29yaWVzCgkvLwoKCS8vIGdldCBhIGxpc3Qgb2YgdGhlIGNhdGVnb3JpZXMgd2UncmUgYWxsb3dlZCB0byBzZWUuCgkkcXVlcnkgPSAnU0VMRUNUICogRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHNfY2F0ZWdvcmllcyBXSEVSRSB1cGxvYWRfY2F0ZWdvcnlfbGlzdGFibGUnOwoJJGNhdHMgPSAkZGItPkdldEFycmF5KCRxdWVyeSk7CgkkYWxsb3dlZF9jYXRzID0gYXJyYXkoKTsKCWlmKCBpc19hcnJheSgkY2F0cykgKSB7CgkJZm9yKCAkaSA9IDA7ICRpIDwgY291bnQoJGNhdHMpOyAkaSsrICkgewoJCQkkb25lY2F0ID0gJGNhdHNbJGldOwoJCQlpZiggISRvbmVjYXRbJ3VwbG9hZF9jYXRlZ29yeV9saXN0YWJsZSddICkgY29udGludWU7CgoJCQlpZiggJHRoaXMtPl9DaGVja0Rvd25sb2FkU2VjdXJpdHkoJG9uZWNhdCkgKSB7CgkJCQkvLyB3ZSdyZSBhbGxvd2VkIHRvIHZpZXcgZmlsZXMgaW4gdGhpcyBjYXRlZ29yeS4KCQkJCS8vIGNhc3QgdG8gaW50LCBqdXN0IGZvciBwYXJhbm9pYSBwdXJwb3Nlcy4KCQkJCSRhbGxvd2VkX2NhdHNbXSA9IChpbnQpJG9uZWNhdFsndXBsb2FkX2NhdGVnb3J5X2lkJ107CgkJCQkkdmFsaWRfY2F0c1soaW50KSRvbmVjYXRbJ3VwbG9hZF9jYXRlZ29yeV9pZCddXSA9ICRvbmVjYXQ7CgkJCX0KCgkJCWlmKCAkb25lY2F0Wyd1cGxvYWRfY2F0ZWdvcnlfc2Nhbm5hYmxlJ10gKSB7CgkJCQkvLyBtYXkgYXMgd2VsbCBzY2FuIGl0LgoJCQkJJGRpciA9IGNtc19qb2luX3BhdGgoJGdDbXMtPmNvbmZpZ1sndXBsb2Fkc19wYXRoJ10sJG9uZWNhdFsndXBsb2FkX2NhdGVnb3J5X3BhdGgnXSk7CgkJCQkkdGhpcy0+U21hcnRTY2FuRGlyZWN0b3J5KCRvbmVjYXRbJ3VwbG9hZF9jYXRlZ29yeV9pZCddLCRkaXIpOwoJCQl9CgkJfQoJfQoKCS8vIGFzc3VtZSBzdW1tYXJ5IG1vZGUuCgkkcGFyYW1zWydtb2RlJ10gPSAnc3VtbWFyeSc7CgoJJHF1ZXJ5MSA9ICdTRUxFQ1QgQ09VTlQoQi51cGxvYWRfaWQpCiAgICAgICAgICAgIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzIEInOwoJJHF1ZXJ5ID0gJ1NFTEVDVCBCLnVwbG9hZF9pZCwgQi51cGxvYWRfY2F0ZWdvcnlfaWQsIEIudXBsb2FkX25hbWUsIEIudXBsb2FkX2F1dGhvciwgQi51cGxvYWRfc3VtbWFyeSwgQi51cGxvYWRfZGVzY3JpcHRpb24sIAogICAgICAgICAgICAgICAgICAgQi51cGxvYWRfaXAsIEIudXBsb2FkX3NpemUsIEIudXBsb2FkX2RhdGUsIEIudXBsb2FkX3RodW1ibmFpbCwgQi51cGxvYWRfdXNlcnBlcm1zLCBDLmRvd25sb2FkcyAKICAgICAgICAgICAgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHMgQgogICAgICAgICAgICBMRUZUIE9VVEVSIEpPSU4gKFNFTEVDVCBjb3VudChkb3dubG9hZF9pZCkgQVMgZG93bmxvYWRzLGZpbGVfaWQKICAgICAgICAgICAgICAgICBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2Fkc19kb3dubG9hZHMgR1JPVVAgQlkgZmlsZV9pZCkgQVMgQwogICAgICAgICAgICBPTiBCLnVwbG9hZF9pZCA9IEMuZmlsZV9pZCc7CgoJaWYgKCRmaWVsZF9uYW1lICE9IG51bGwgJiYgJGZpZWxkX3ZhbCAhPSBudWxsKSB7CgkJJHF1ZXJ5MSAuPSAiIElOTkVSIEpPSU4gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX2ZpZWxkdmFscyBmdiBPTiBmdi51cGxvYWRfaWQgPSBCLnVwbG9hZF9pZCAiOwoJCSRxdWVyeTEgLj0gIiBJTk5FUiBKT0lOICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc19maWVsZGRlZnMgZmQgT04gZmQuaWQgPSBmdi5mbGRfaWQgIjsKCQkkcXVlcnkgLj0gIiBJTk5FUiBKT0lOICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc19maWVsZHZhbHMgZnYgT04gZnYudXBsb2FkX2lkID0gQi51cGxvYWRfaWQgIjsKCQkkcXVlcnkgLj0gIiBJTk5FUiBKT0lOICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc19maWVsZGRlZnMgZmQgT04gZmQuaWQgPSBmdi5mbGRfaWQgIjsKCX0KCQkJCQoJaWYgKCRmaWVsZF9uYW1lMiAhPSBudWxsICYmICRmaWVsZF92YWwyICE9IG51bGwpIHsKCQkkcXVlcnkxIC49ICIgSU5ORVIgSk9JTiAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfZmllbGR2YWxzIGZ2MiBPTiBmdjIudXBsb2FkX2lkID0gQi51cGxvYWRfaWQgIjsKCQkkcXVlcnkxIC49ICIgSU5ORVIgSk9JTiAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfZmllbGRkZWZzIGZkMiBPTiBmZDIuaWQgPSBmdjIuZmxkX2lkICI7CgkJJHF1ZXJ5IC49ICIgSU5ORVIgSk9JTiAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfZmllbGR2YWxzIGZ2MiBPTiBmdjIudXBsb2FkX2lkID0gQi51cGxvYWRfaWQgIjsKCQkkcXVlcnkgLj0gIiBJTk5FUiBKT0lOICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc19maWVsZGRlZnMgZmQyIE9OIGZkMi5pZCA9IGZ2Mi5mbGRfaWQgIjsKCX0KCQkJCQoJaWYoIGNvdW50KCRhbGxvd2VkX2NhdHMpICkgewoJCSRxdWVyeTEgLj0gJyBXSEVSRSBCLnVwbG9hZF9jYXRlZ29yeV9pZCBJTiAoJy5pbXBsb2RlKCcsJywkYWxsb3dlZF9jYXRzKS4nKSc7CgkJJHF1ZXJ5IC49ICcgV0hFUkUgQi51cGxvYWRfY2F0ZWdvcnlfaWQgSU4gKCcuaW1wbG9kZSgnLCcsJGFsbG93ZWRfY2F0cykuJyknOwoJfQoJCQkJCglpZiggJGtleSAhPSBudWxsICkgewoJCSRxdWVyeTEgLj0gIiBBTkQgQi51cGxvYWRfa2V5ID0gPyAiOwoJCSRxdWVyeSAuPSAiIEFORCBCLnVwbG9hZF9rZXkgPSA/ICI7CgkJJHFwYXJtc1tdID0gJGtleTsKCX0KCglpZiggJGFkanVzdGVkX2ZpbHRlciAhPSAnJyApIHsKCQkkcXVlcnkxIC49ICIgQU5EIEIudXBsb2FkX25hbWUgTElLRSA/ICI7CgkJJHF1ZXJ5IC49ICIgQU5EIEIudXBsb2FkX25hbWUgTElLRSA/ICI7CgkJJHFwYXJtc1tdID0gJGFkanVzdGVkX2ZpbHRlcjsKCX0KCQkJCQoJaWYgKCRmaWVsZF9uYW1lICE9IG51bGwgJiYgJGZpZWxkX3ZhbCAhPSBudWxsKSB7CgkJJHF1ZXJ5MSAuPSAiIEFORCBmZC5uYW1lID0gPyBBTkQgZnYudmFsdWUgTElLRSA/ICI7CgkJJHF1ZXJ5IC49ICIgQU5EIGZkLm5hbWUgPSA/IEFORCBmdi52YWx1ZSBMSUtFID8gIjsKCQkkcXBhcm1zW10gPSAkZmllbGRfbmFtZTsKCQkkcXBhcm1zW10gPSAnJScgLiAkZmllbGRfdmFsIC4gJyUnOwoJfQoJCQkJCglpZiAoJGZpZWxkX25hbWUyICE9IG51bGwgJiYgJGZpZWxkX3ZhbDIgIT0gbnVsbCkgewoJCSRxdWVyeTEgLj0gIiBBTkQgZmQyLm5hbWUgPSA/IEFORCBmdjIudmFsdWUgTElLRSA/ICI7CgkJJHF1ZXJ5IC49ICIgQU5EIGZkMi5uYW1lID0gPyBBTkQgZnYyLnZhbHVlIExJS0UgPyAiOwoJCSRxcGFybXNbXSA9ICRmaWVsZF9uYW1lMjsKCQkkcXBhcm1zW10gPSAnJScgLiAkZmllbGRfdmFsMiAuICclJzsKCX0KCgkkcXVlcnkgIC49ICIgR1JPVVAgQlkgQi51cGxvYWRfaWQiOwoJJHF1ZXJ5ICAuPSAkc29ydG9yZGVyOwoJJGRvX3F1ZXJ5ID0gdHJ1ZTsKIH0KIGVsc2UgewoJIC8vCgkgLy8gRGVhbGluZyB3aXRoIGEgc3BlY2lmaWMgY2F0ZWdvcnkKCSAvLwoKCSAvLyBpZiB0aGUgY2F0ZWdvcnkgaXNuJ3QgbGlzdGFibGUsIHdlIGNhbiBzdG9wIGhlcmUKCSBpZiggJGNhdGVnb3J5Wyd1cGxvYWRfY2F0ZWdvcnlfbGlzdGFibGUnXSA9PSAwICkgcmV0dXJuOwoJICRjYXRlZ29yeV9pZCA9ICRjYXRlZ29yeVsndXBsb2FkX2NhdGVnb3J5X2lkJ107CgoJIC8vIGNoZWNrIGZvciBwZXJtaXNzaW9uLCBpZiBGRVUgbW9kdWxlIGV4aXN0cywgYW5kIHRoZSAKCSAvLyB1cGxvYWRzIGdyb3VwbGlzdCBpcwoJIC8vIG5vdCBudWxsLCBhbmQgdGhlIHJldHVybmlkIGlzIG5vdCBlbXB0eSAod2UncmUgb24gdGhlIGZyb250ZW5kKQoJICRyZXN1bHQgPSAkdGhpcy0+X0NoZWNrRG93bmxvYWRTZWN1cml0eSgkY2F0ZWdvcnkpOwoJIGlmKCAhJHJlc3VsdCApIHsKCQkgJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlKCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwgJHRoaXMtPkxhbmcoJ2Vycm9yX3Blcm1pc3Npb25kZW5pZWQnKSApOwoJCSByZXR1cm47CgkgfQoKCSAvLyB3ZSdyZSBnb25uYSBzY2FuIHRoZSBkaXJlY3RvcnkgYW5kIHNlZSBpZiBhbnlib2R5IHVwbG9hZGVkCgkgLy8gYW55IGZpbGVzIHZpYSBmdHAgb3Igc2NwIG9yIGFueXRoaW5nIHNpbGx5LgoJICRjYXRwYXRoMSA9ICR0aGlzLT5nZXRDYXRlZ29yeVBhdGhGcm9tSUQoJGNhdGVnb3J5X2lkKTsKCSAkZGlyID0gJHRoaXMtPl9jYXRlZ29yeVBhdGgoICRjYXRwYXRoMSApOwoJIGlmKCAkY2F0ZWdvcnlbJ3VwbG9hZF9jYXRlZ29yeV9zY2FubmFibGUnXSApIHsKCQkgJHRoaXMtPlNtYXJ0U2NhbkRpcmVjdG9yeSggJGNhdGVnb3J5X2lkLCAkZGlyICk7CgkgfQoJCQoJIC8vIE5vdyBoYW5kbGUgb3VyIG1vZGUKCSBzd2l0Y2goIHRyaW0oJHBhcmFtc1snbW9kZSddICkgKSB7CgkgY2FzZSAnc2VsZWN0JzogewoJCSAvLyBkaXNwbGF5IGEgZHJvcGRvd24gbGlzdCBvZiBhbGwgb2YgdGhlIG1hdGNoaW5nIGZpbGVzCgkJICRxdWVyeSA9ICJTRUxFQ1QgVS4qLEMudXBsb2FkX2NhdGVnb3J5X2RlbGV0YWJsZSxjb3VudChELmRvd25sb2FkX2lkKSBBUyBkb3dubG9hZHMgCiAgICAgICAgICAgICAgIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzIFUKICAgICAgICAgICAgICAgTEVGVCBKT0lOICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc19jYXRlZ29yaWVzIEMKICAgICAgICAgICAgICAgT04gVS51cGxvYWRfY2F0ZWdvcnlfaWQgPSBDLnVwbG9hZF9jYXRlZ29yeV9pZCAKICAgICAgICAgICAgICAgTEVGVCBPVVRFUiBKT0lOICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc19kb3dubG9hZHMgRAogICAgICAgICAgICAgICBPTiBVLnVwbG9hZF9pZCA9IEQuZmlsZV9pZCAiOwoKCQkgaWYgKCRmaWVsZF9uYW1lICE9IG51bGwgJiYgJGZpZWxkX3ZhbCAhPSBudWxsKSB7CgkJCSAkcXVlcnkgLj0gIiBJTk5FUiBKT0lOICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc19maWVsZHZhbHMgZnYgT04gZnYudXBsb2FkX2lkID0gVS51cGxvYWRfaWQgIjsKCQkJICRxdWVyeSAuPSAiIElOTkVSIEpPSU4gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX2ZpZWxkZGVmcyBmZCBPTiBmZC5pZCA9IGZ2LmZsZF9pZCAiOwoJCSB9CgkJCQoJCSBpZiAoJGZpZWxkX25hbWUyICE9IG51bGwgJiYgJGZpZWxkX3ZhbDIgIT0gbnVsbCkgewoJCQkgJHF1ZXJ5IC49ICIgSU5ORVIgSk9JTiAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfZmllbGR2YWxzIGZ2MiBPTiBmdjIudXBsb2FkX2lkID0gVS51cGxvYWRfaWQgIjsKCQkJICRxdWVyeSAuPSAiIElOTkVSIEpPSU4gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX2ZpZWxkZGVmcyBmZDIgT04gZmQyLmlkID0gZnYyLmZsZF9pZCAiOwoJCSB9CgoJCSAkcXVlcnkgLj0gIiBXSEVSRSBVLnVwbG9hZF9jYXRlZ29yeV9pZCA9ID8gIjsKCQkgJHFwYXJtc1tdID0gJGNhdGVnb3J5X2lkOwoJCSBpZiggJGtleSAhPSBOVUxMICkgewoJCQkgJHF1ZXJ5IC49ICIgQU5EIHVwbG9hZF9rZXkgPSA/IjsKCQkJICRxcGFybXNbXSA9ICRrZXk7CgkJIH0KCQkgaWYgKCRmaWVsZF9uYW1lICE9IG51bGwgJiYgJGZpZWxkX3ZhbCAhPSBudWxsKSB7CgkJCSAkcXVlcnkgLj0gIiBBTkQgZmQubmFtZSA9ID8gQU5EIGZ2LnZhbHVlIExJS0UgPyAiOwoJCQkgJHFwYXJtc1tdID0gJGZpZWxkX25hbWU7CgkJCSAkcXBhcm1zW10gPSAnJScgLiAkZmllbGRfdmFsIC4gJyUnOwoJCSB9CgkJIGlmICgkZmllbGRfbmFtZTIgIT0gbnVsbCAmJiAkZmllbGRfdmFsMiAhPSBudWxsKSB7CgkJCSAkcXVlcnkgLj0gIiBBTkQgZmQyLm5hbWUgPSA/IEFORCBmdjIudmFsdWUgTElLRSA/ICI7CgkJCSAkcXBhcm1zW10gPSAkZmllbGRfbmFtZTI7CgkJCSAkcXBhcm1zW10gPSAnJScgLiAkZmllbGRfdmFsMiAuICclJzsKCQkgfQoJCSAkcXVlcnkgLj0gIiBHUk9VUCBCWSBVLnVwbG9hZF9pZCI7CgkJICRxdWVyeSAuPSAkc29ydG9yZGVyLiRsaW1pdHN0cjsKCQkgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlICgkcXVlcnksICRxcGFybXMpOwoJCSAkaXRlbXMgPSBhcnJheSgpOwoJCSBpZiggaXNzZXQoJHBhcmFtc1snc2VsZWN0bm9uZSddKSApIHsKCQkJICRpdGVtc1skdGhpcy0+TGFuZygnbm9uZScpXSA9IC0xOwoJCSB9CgkJIHdoaWxlKCAkZGJyZXN1bHQgJiYgKCRyb3cgPSAkZGJyZXN1bHQtPkZldGNoUm93KCkpICkgewoJCQkgJGl0ZW1zWyRyb3dbJ3VwbG9hZF9uYW1lJ11dID0gJHJvd1sndXBsb2FkX2lkJ107CgkJIH0KCQkgZWNobyAkdGhpcy0+Q3JlYXRlSW5wdXREcm9wZG93bigkc2VsZWN0Zm9ybSwkc2VsZWN0bmFtZSwkaXRlbXMsLTEsJHNlbGVjdHZhbHVlKTsKCQkgJGRvX3F1ZXJ5ID0gZmFsc2U7CgkgfQoJIGJyZWFrOwoKCSBjYXNlICdzdW1tYXJ5JzogewoJCSAvLyBkaXNwbGF5IGluZm8gYWJvdXQgYWxsIG9mIHRoZSBmaWxlcyBpbiB0aGUgY2F0ZWdvcnkKCQkgLy8gcG9zc2libHkgbGltaXRlZCBieSBmaWxlcyBvZiBhIHNwZWNpZmMgdHlwZQoJCSAkcXBhcm1zID0gYXJyYXkoJGNhdGVnb3J5X2lkKTsKCQkgJHF1ZXJ5MSA9ICJTRUxFQ1QgY291bnQoVS51cGxvYWRfaWQpIEFTIGNvdW50CiAgICAgICAgICAgICAgICBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2FkcyBVICI7CgkJICRxdWVyeSA9ICJTRUxFQ1QgVS4qLEMudXBsb2FkX2NhdGVnb3J5X2RlbGV0YWJsZSxjb3VudChELmRvd25sb2FkX2lkKSBBUyBkb3dubG9hZHMKICAgICAgICAgICAgICAgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHMgVQogICAgICAgICAgICAgICBMRUZUIEpPSU4gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX2NhdGVnb3JpZXMgQwogICAgICAgICAgICAgICBPTiBVLnVwbG9hZF9jYXRlZ29yeV9pZCA9IEMudXBsb2FkX2NhdGVnb3J5X2lkIAogICAgICAgICAgICAgICBMRUZUIE9VVEVSIEpPSU4gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX2Rvd25sb2FkcyBECiAgICAgICAgICAgICAgIE9OIFUudXBsb2FkX2lkID0gRC5maWxlX2lkIjsKCQkgaWYgKCRmaWVsZF9uYW1lICE9IG51bGwgJiYgJGZpZWxkX3ZhbCAhPSBudWxsKSB7CgkJCSAkcXVlcnkxIC49ICIgSU5ORVIgSk9JTiAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfZmllbGR2YWxzIGZ2IE9OIGZ2LnVwbG9hZF9pZCA9IFUudXBsb2FkX2lkICI7CgkJCSAkcXVlcnkxIC49ICIgSU5ORVIgSk9JTiAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfZmllbGRkZWZzIGZkIE9OIGZkLmlkID0gZnYuZmxkX2lkICI7CgkJCSAkcXVlcnkgLj0gIiBJTk5FUiBKT0lOICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc19maWVsZHZhbHMgZnYgT04gZnYudXBsb2FkX2lkID0gVS51cGxvYWRfaWQgIjsKCQkJICRxdWVyeSAuPSAiIElOTkVSIEpPSU4gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX2ZpZWxkZGVmcyBmZCBPTiBmZC5pZCA9IGZ2LmZsZF9pZCAiOwoJCSB9CgkJIGlmICgkZmllbGRfbmFtZTIgIT0gbnVsbCAmJiAkZmllbGRfdmFsMiAhPSBudWxsKSB7CgkJCSAkcXVlcnkxIC49ICIgSU5ORVIgSk9JTiAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfZmllbGR2YWxzIGZ2MiBPTiBmdjIudXBsb2FkX2lkID0gVS51cGxvYWRfaWQgIjsKCQkJICRxdWVyeTEgLj0gIiBJTk5FUiBKT0lOICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc19maWVsZGRlZnMgZmQyIE9OIGZkMi5pZCA9IGZ2Mi5mbGRfaWQgIjsKCQkJICRxdWVyeSAuPSAiIElOTkVSIEpPSU4gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX2ZpZWxkdmFscyBmdjIgT04gZnYyLnVwbG9hZF9pZCA9IFUudXBsb2FkX2lkICI7CgkJCSAkcXVlcnkgLj0gIiBJTk5FUiBKT0lOICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc19maWVsZGRlZnMgZmQyIE9OIGZkMi5pZCA9IGZ2Mi5mbGRfaWQgIjsKCQkgfQoJCQkKCQkgJHF1ZXJ5IC49ICIgV0hFUkUgVS51cGxvYWRfY2F0ZWdvcnlfaWQgPSA/ICI7CgkJICRxdWVyeTEgLj0gIiBXSEVSRSBVLnVwbG9hZF9jYXRlZ29yeV9pZCA9ID8gIjsKCQkgaWYoICRrZXkgIT0gbnVsbCApIHsKCQkJICRxdWVyeTEgLj0gIiBBTkQgdXBsb2FkX2tleSA9ID8iOwoJCQkgJHF1ZXJ5IC49ICIgQU5EIHVwbG9hZF9rZXkgPSA/IjsKCQkJICRxcGFybXNbXSA9ICRrZXk7CgkJIH0KCQkgaWYoICRhZGp1c3RlZF9maWx0ZXIgIT0gJycgKSB7CgkJCSAkcXVlcnkxIC49ICIgQU5EIHVwbG9hZF9uYW1lIExJS0UgPyI7CgkJCSAkcXVlcnkgLj0gIiBBTkQgdXBsb2FkX25hbWUgTElLRSA/IjsKCQkJICRxcGFybXNbXSA9ICRhZGp1c3RlZF9maWx0ZXI7CgkJIH0KCQkgaWYgKCRmaWVsZF9uYW1lICE9IG51bGwgJiYgJGZpZWxkX3ZhbCAhPSBudWxsKSB7CgkJCSAkcXVlcnkxIC49ICIgQU5EIGZkLm5hbWUgPSA/IEFORCBmdi52YWx1ZSBMSUtFID8gIjsKCQkJICRxdWVyeSAuPSAiIEFORCBmZC5uYW1lID0gPyBBTkQgZnYudmFsdWUgTElLRSA/ICI7CgkJCSAkcXBhcm1zW10gPSAkZmllbGRfbmFtZTsKCQkJICRxcGFybXNbXSA9ICclJyAuICRmaWVsZF92YWwgLiAnJSc7CgkJIH0KCQkgaWYgKCRmaWVsZF9uYW1lMiAhPSBudWxsICYmICRmaWVsZF92YWwyICE9IG51bGwpIHsKCQkJICRxdWVyeTEgLj0gIiBBTkQgZmQyLm5hbWUgPSA/IEFORCBmdjIudmFsdWUgTElLRSA/ICI7CgkJCSAkcXVlcnkgLj0gIiBBTkQgZmQyLm5hbWUgPSA/IEFORCBmdjIudmFsdWUgTElLRSA/ICI7CgkJCSAkcXBhcm1zW10gPSAkZmllbGRfbmFtZTI7CgkJCSAkcXBhcm1zW10gPSAnJScgLiAkZmllbGRfdmFsMiAuICclJzsKCQkgfQoJCSAvLyBibGFoIGJsYWgKCQkgLy8kcXVlcnkxIC49ICIgR1JPVVAgQlkgVS51cGxvYWRfaWQiOwoJCSAvLyRxdWVyeTEgLj0gJHNvcnRvcmRlcjsKCQkgJHF1ZXJ5IC49ICIgR1JPVVAgQlkgVS51cGxvYWRfaWQiOwoJCSAkcXVlcnkgLj0gJHNvcnRvcmRlcjsKCSB9CgkgYnJlYWs7CgkgfSAvLyBzd2l0Y2gKIH0KCiRtYXRjaGVzID0gMDsKaWYoICRkb19xdWVyeSA9PSB0cnVlICkgewoJLy8gZ2V0IHRoZSB0b3RhbCBudW1iZXIgb2Ygcm93cwoJJG1hdGNoZXMgPSAkZGItPkdldE9uZSgkcXVlcnkxLCAkcXBhcm1zKTsKCgkvLyBjYWxjdWxhdGUgdGhlIG51bWJlciBvZiBwYWdlcwoJJG51bXBhZ2VzID0gKGludCkoJG1hdGNoZXMgLyAkcGFnZWxpbWl0KTsKCWlmKCAkbWF0Y2hlcyAlICRwYWdlbGltaXQgPiAwICkgJG51bXBhZ2VzKys7Cgkkc3RhcnRvZmZzZXQgPSAoJHBhZ2VudW0tMSkgKiAkcGFnZWxpbWl0OwoJJGRicmVzdWx0ID0gJGRiLT5TZWxlY3RMaW1pdCgkcXVlcnksJHBhZ2VsaW1pdCwkc3RhcnRvZmZzZXQsJHFwYXJtcyk7CgoJLy8gc2V0dXAgc3RyaW5ncwoJJHNtYXJ0eS0+YXNzaWduKCdudW1wYWdlcycsJG51bXBhZ2VzKTsKCSRzbWFydHktPmFzc2lnbigncGFnZW51bScsJHBhZ2VudW0pOwoJJHNtYXJ0eS0+YXNzaWduKCdwYWdlbGltaXQnLCRwYWdlbGltaXQpOwoJJHNtYXJ0eS0+YXNzaWduKCdtYXRjaGVzJywgJG1hdGNoZXMgKTsKCWlmKCAkcGFnZW51bSA+IDEgKSB7CgkJJHBhcm1zID0gJHBhcmFtczsKCQkkcGFybXNbJ3BhZ2VudW0nXSA9IDE7CgkJJHNtYXJ0eS0+YXNzaWduKCdmaXJzdHBhZ2VfdXJsJywkdGhpcy0+Q3JlYXRlTGluaygkaWQsJ2RlZmF1bHQnLCRyZXR1cm5pZCwnJywkcGFybXMsJycsdHJ1ZSkpOwoJCSRwYXJtcyA9ICRwYXJhbXM7CgkJJHBhcm1zWydwYWdlbnVtJ10gPSAkcGFnZW51bSAtIDE7CgkJJHNtYXJ0eS0+YXNzaWduKCdwcmV2cGFnZV91cmwnLCR0aGlzLT5DcmVhdGVMaW5rKCRpZCwnZGVmYXVsdCcsJHJldHVybmlkLCcnLCRwYXJtcywnJyx0cnVlKSk7Cgl9CglpZiggJHBhZ2VudW0gPCAkbnVtcGFnZXMgKSB7CgkJJHBhcm1zID0gJHBhcmFtczsKCQkkcGFybXNbJ3BhZ2VudW0nXSA9ICRudW1wYWdlczsKCQkkc21hcnR5LT5hc3NpZ24oJ2xhc3RwYWdlX3VybCcsJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCdkZWZhdWx0JywkcmV0dXJuaWQsJycsJHBhcm1zLCcnLHRydWUpKTsKCgkJJHBhcm1zID0gJHBhcmFtczsKCQkkcGFybXNbJ3BhZ2VudW0nXSA9ICRwYWdlbnVtICsgMTsKCQkkc21hcnR5LT5hc3NpZ24oJ25leHRwYWdlX3VybCcsJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCdkZWZhdWx0JywkcmV0dXJuaWQsJycsJHBhcm1zLCcnLHRydWUpKTsKCX0KCSRzbWFydHktPmFzc2lnbignZmlyc3RwYWdlJywkdGhpcy0+TGFuZygnZmlyc3RwYWdlJykpOwoJJHNtYXJ0eS0+YXNzaWduKCdmaXJzdHBhZ2VfYXJyb3cnLCR0aGlzLT5MYW5nKCdmaXJzdHBhZ2VfYXJyb3cnKSk7Cgkkc21hcnR5LT5hc3NpZ24oJ3ByZXZwYWdlJywkdGhpcy0+TGFuZygncHJldnBhZ2UnKSk7Cgkkc21hcnR5LT5hc3NpZ24oJ3ByZXZwYWdlX2Fycm93JywkdGhpcy0+TGFuZygncHJldnBhZ2VfYXJyb3cnKSk7Cgkkc21hcnR5LT5hc3NpZ24oJ25leHRwYWdlJywkdGhpcy0+TGFuZygnbmV4dHBhZ2UnKSk7Cgkkc21hcnR5LT5hc3NpZ24oJ25leHRwYWdlX2Fycm93JywkdGhpcy0+TGFuZygnbmV4dHBhZ2VfYXJyb3cnKSk7Cgkkc21hcnR5LT5hc3NpZ24oJ2xhc3RwYWdlJywkdGhpcy0+TGFuZygnbGFzdHBhZ2UnKSk7Cgkkc21hcnR5LT5hc3NpZ24oJ2xhc3RwYWdlX2Fycm93JywkdGhpcy0+TGFuZygnbGFzdHBhZ2VfYXJyb3cnKSk7Cgkkc21hcnR5LT5hc3NpZ24oJ3BhZ2V0ZXh0JywkdGhpcy0+TGFuZygncGFnZScpKTsKCSRzbWFydHktPmFzc2lnbignb2Z0ZXh0JywkdGhpcy0+TGFuZygnb2YnKSk7Cgkkc21hcnR5LT5hc3NpZ24oJ21hdGNoZXN0ZXh0JywkdGhpcy0+TGFuZygnbWF0Y2hlc2ZvdW5kJykpOwoJJHNtYXJ0eS0+YXNzaWduKCdjYXRlZ29yeScsJHRoaXMtPkxhbmcoJ2NhdGVnb3J5JykpOwoJJHNtYXJ0eS0+YXNzaWduKCdpZCcsJHRoaXMtPkxhbmcoJ2lkJykpOwoJJHNtYXJ0eS0+YXNzaWduKCdkZWxldGUnLCR0aGlzLT5MYW5nKCdkZWxldGUnKSk7Cgkkc21hcnR5LT5hc3NpZ24oJ2FyZXlvdXN1cmUnLCR0aGlzLT5MYW5nKCdhcmV5b3VzdXJlJykpOwoJJHNtYXJ0eS0+YXNzaWduKCduYW1lJywkdGhpcy0+TGFuZygnbmFtZScpKTsKCSRzbWFydHktPmFzc2lnbignZGF0ZScsJHRoaXMtPkxhbmcoJ2RhdGUnKSk7Cgkkc21hcnR5LT5hc3NpZ24oJ2F1dGhvcicsJHRoaXMtPkxhbmcoJ2F1dGhvcicpKTsKCSRzbWFydHktPmFzc2lnbignc2l6ZScsJHRoaXMtPkxhbmcoJ3NpemVrYicpKTsKCSRzbWFydHktPmFzc2lnbignZGV0YWlscycsJHRoaXMtPkxhbmcoJ2RldGFpbHMnKSk7Cgkkc21hcnR5LT5hc3NpZ24oJ3N1bW1hcnknLCR0aGlzLT5MYW5nKCdzdW1tYXJ5JykpOwoJJHNtYXJ0eS0+YXNzaWduKCdkZXNjcmlwdGlvbicsJHRoaXMtPkxhbmcoJ2Rlc2NyaXB0aW9uJykpOwoJJHNtYXJ0eS0+YXNzaWduKCd0aHVtYm5haWwnLCR0aGlzLT5MYW5nKCd0aHVtYm5haWwnKSk7Cgkkc21hcnR5LT5hc3NpZ24oJ2ljb24nLCR0aGlzLT5MYW5nKCdpY29uJykpOwoJJHNtYXJ0eS0+YXNzaWduKCdpbWFnZScsJHRoaXMtPkxhbmcoJ2ltYWdlJykpOwoKCWlmICghJGRicmVzdWx0KSB7CgkJLy8gbWF5YmUgdGhlcmUgYXJlIG5vIGZpbGVzIGluIHRoaXMgY2F0ZWdvcnkKCQkkc21hcnR5LT5hc3NpZ24gKCdtZXNzYWdlJywgJHRoaXMtPkxhbmcgKCdlcnJvcl9ub2ZpbGVzJykpOwoJfQoKCS8vIGRvIHRoZSBsaXN0Cgl3aGlsZSAoJGRicmVzdWx0ICYmICRyb3cgPSAkZGJyZXN1bHQtPkZldGNoUm93KCkpIHsKCQkkb25lcm93ID0gbmV3IFN0ZENsYXNzICgpOwoKCQkvLyBjaGVjayBmaWxlIHBlcm1pc3Npb25zLgoJCSRvbmVyb3ctPnZpZXdhYmxlID0gJHRoaXMtPl9DaGVja0ZpbGVEb3dubG9hZFNlY3VyaXR5KCRyb3cpOwoJCWZvcmVhY2goICRyb3cgYXMgJGtleSA9PiAkdmFsdWUgKSB7CgkJCSRvbmVyb3ctPiRrZXkgPSAkdmFsdWU7CgkJfQoKCQkkb25lcm93LT5zdW1tYXJ5ID0gJHJvd1sndXBsb2FkX3N1bW1hcnknXTsKCQkkb25lcm93LT5hdXRob3IgPSAkcm93Wyd1cGxvYWRfYXV0aG9yJ107CgkJJG9uZXJvdy0+ZGVzY3JpcHRpb24gPSAkcm93Wyd1cGxvYWRfZGVzY3JpcHRpb24nXTsKCQkkb25lcm93LT5pcCA9ICRyb3dbJ3VwbG9hZF9pcCddOwoJCSRvbmVyb3ctPnNpemUgPSBpbnR2YWwoJHJvd1sndXBsb2FkX3NpemUnXSAvIDEwMjQuMCArIDAuNSk7CgkJJG9uZXJvdy0+ZGF0ZSA9ICRyb3dbJ3VwbG9hZF9kYXRlJ107CgoJCWlmKCAkcGFyYW1zWydjYXRlZ29yeSddID09ICdhbGwnICkgewoJCQkkb25lcm93LT5jYXRlZ29yeSA9ICR2YWxpZF9jYXRzWyRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9pZCddXVsndXBsb2FkX2NhdGVnb3J5X25hbWUnXTsKCQl9CgkJZWxzZSB7CgkJCSRvbmVyb3ctPmNhdGVnb3J5ID0gJHBhcmFtc1snY2F0ZWdvcnknXTsKCQl9CgoJCS8vIHRodW1ibmFpbAoJCSRjYXRwYXRoID0gJHRoaXMtPmdldENhdGVnb3J5UGF0aEZyb21GaWxlSUQoJHJvd1sndXBsb2FkX2lkJ10pOwoJCWlmKCAhZW1wdHkoJHJvd1sndXBsb2FkX3RodW1ibmFpbCddKSApIHsKCQkJJHRuZmlsZSA9ICR0aGlzLT5fY2F0ZWdvcnlQYXRoKCAkY2F0cGF0aC5ESVJFQ1RPUllfU0VQQVJBVE9SLiRyb3dbJ3VwbG9hZF90aHVtYm5haWwnXSApOwoJCQlpZiggZmlsZV9leGlzdHMoICR0bmZpbGUgKSApIHsKCQkJCSR0bnVybCA9ICRjb25maWdbJ3VwbG9hZHNfdXJsJ10uIi8iLiRjYXRwYXRoLiIvIi4kcm93Wyd1cGxvYWRfdGh1bWJuYWlsJ107CgkJCQkkb25lcm93LT50aHVtYm5haWxfdXJsID0gJHRudXJsOwoJCQl9CgkJfQoKCQl7CgkJCSRwYXJtcyA9ICRwYXJhbXM7CgkJCSRwYXJtc1snbW9kZSddID0gJ3NpbmdsZSc7CgkJCSRwYXJtc1sndXBsb2FkX2lkJ10gPSAkcm93Wyd1cGxvYWRfaWQnXTsKCgkJCSRwcmV0dHl1cmwgPSAidXBsb2Fkcy9maWxlLyRyZXR1cm5pZC8iLiRyb3dbJ3VwbG9hZF9pZCddLicvJy51cmxlbmNvZGUoJHJvd1sndXBsb2FkX25hbWUnXSk7CgoJCQkvLyBub3cgaGFuZGxlIHRoZSBkZXRhaWwgbGluaywgZGV0YWlsIHVybAoJCQkkb25lcm93LT5kZXRhaWxsaW5rID0KCQkJCSR0aGlzLT5DcmVhdGVGcm9udGVuZExpbmsgKCRpZCwgJHJldHVybmlkLCAnZGVmYXVsdCcsIAoJCQkJCQkJCQkJCQkJCQkJCSAkdGhpcy0+TGFuZygnZGV0YWlscycpLCAkcGFybXMsICcnLCBmYWxzZSwgdHJ1ZSwgJycsIGZhbHNlLCAkcHJldHR5dXJsICk7CgoJCQkkb25lcm93LT5kZXRhaWx1cmwgPQoJCQkJJHRoaXMtPkNyZWF0ZUZyb250ZW5kTGluayAoJGlkLCAkcmV0dXJuaWQsICdkZWZhdWx0JywgCgkJCQkJCQkJCQkJCQkJCQkJICR0aGlzLT5MYW5nKCdkZXRhaWxzJyksICRwYXJtcywgJycsIHRydWUsIGZhbHNlLCAnJywgZmFsc2UsICRwcmV0dHl1cmwgKTsKCQl9CgoKCQkvLyBmaWxldHlwZQoJCSRmaWxldHlwZSA9ICR0aGlzLT5fR2V0RmlsZVR5cGUoICRyb3dbJ3VwbG9hZF9uYW1lJ10gKTsKCQkkaW1ncGF0aCA9ICdtb2R1bGVzLycuYmFzZW5hbWUoZGlybmFtZShfX0ZJTEVfXykpLicvaW1hZ2VzLyc7CgkJaWYoICRmaWxldHlwZSAhPT0gZmFsc2UgKSB7CgkJCSRvbmVyb3ctPmljb251cmwgPSAkaW1ncGF0aC4kZmlsZXR5cGVbJ2ltYWdlJ107CgkJCSRvbmVyb3ctPmZpbGV0eXBlID0gJGZpbGV0eXBlOwoJCX0KCQllbHNlIHsKCQkJJG9uZXJvdy0+aWNvbnVybCA9ICRpbWdwYXRoLid1bmtub3duLnBuZyc7CgkJfQoKCQlpZiggJG9uZXJvdy0+dmlld2FibGUgKSB7CgkJCS8vIGZpbGVzIHRoYXQgYXJlIHZpZXdhYmxlIGhhdmUgdGhlIGRvd25sb2FkLCBzZW5kZmlsZSwgYW5kIGRlbGV0ZSBsaW5rcyBldGMuCgkJCS8vIG90aGVyIGZpbGVzIHlvdSBjYW4gc2VlIHRoZSBpbmZvcm1hdGlvbiBhYm91dCwgYnV0IHRoYXQncyBpdC4KCQkJJG9uZXJvdy0+c2VuZGZpbGVfdXJsID0KCQkJCSR0aGlzLT5DcmVhdGVMaW5rICgkaWQsICdzZW5kZmlsZScsICRzZW5kZmlsZXBhZ2UsICcnLGFycmF5KCd1cGxvYWRfaWQnPT4kcm93Wyd1cGxvYWRfaWQnXSksJycsIHRydWUsIHRydWUsICcnLCBmYWxzZSk7CgkJCSRvbmVyb3ctPmRvd25sb2FkX3VybCA9CgkJCQkkdGhpcy0+Q3JlYXRlTGluayAoJGlkLCAnZ2V0ZmlsZScsICRyZXR1cm5pZCwgJycsIAoJCQkJCQkJCQkJCQkJIGFycmF5ICgndXBsb2FkX2lkJyA9PiAkcm93Wyd1cGxvYWRfaWQnXSksICcnLCB0cnVlLCB0cnVlLCAnJywgZmFsc2UsCgkJCQkJCQkJCQkJCQkgJHRoaXMtPl9nZXRGaWxlVVJMKCRyb3dbJ3VwbG9hZF9pZCddLCRyb3dbJ3VwbG9hZF9uYW1lJ10pKTsKCQkJJG9uZXJvdy0+bmFtZWxpbmsgPQoJCQkJJHRoaXMtPkNyZWF0ZUxpbmsgKCRpZCwgJ2dldGZpbGUnLCAkcmV0dXJuaWQsICRyb3dbJ3VwbG9hZF9uYW1lJ10sCgkJCQkJCQkJCQkJCQkgYXJyYXkgKCd1cGxvYWRfaWQnID0+ICRyb3dbJ3VwbG9hZF9pZCddKSwgJycsIGZhbHNlLCB0cnVlLCAnJywgZmFsc2UsCgkJCQkJCQkJCQkJCQkgJHRoaXMtPl9nZXRGaWxlVVJMKCRyb3dbJ3VwbG9hZF9pZCddLCRyb3dbJ3VwbG9hZF9uYW1lJ10pKTsKCQkJaWYoICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdhbGxvd19kZWxldGUnLDApID09IDEgJiYgJHJvd1sndXBsb2FkX2NhdGVnb3J5X2RlbGV0YWJsZSddID09IDEpIHsKCQkJCSRvbmVyb3ctPmRlbGV0ZV91cmwgPQoJCQkJCSR0aGlzLT5DcmVhdGVMaW5rKCAkaWQsICdkZWxldGVfZmlsZScsICRyZXR1cm5pZCwgJycsIGFycmF5KCd1cGxvYWRfaWQnID0+ICRyb3dbJ3VwbG9hZF9pZCddKSwgJycsIHRydWUgKTsKCQkJfQoKCQkJaWYoIGlzc2V0KCAkcm93Wyd1cGxvYWRfc3VtbWFyeSddICkgJiYgJHJvd1sndXBsb2FkX3N1bW1hcnknXSAhPSAiIiApIHsKCQkJCSRvbmVyb3ctPnN1bW1hcnlsaW5rID0KCQkJCQkkdGhpcy0+Q3JlYXRlTGluayAoJGlkLCAnZ2V0ZmlsZScsICRyZXR1cm5pZCwgJHJvd1sndXBsb2FkX3N1bW1hcnknXSwKCQkJCQkJCQkJCQkJCQkgYXJyYXkgKCd1cGxvYWRfaWQnID0+ICRyb3dbJ3VwbG9hZF9pZCddKSwgJycsIGZhbHNlLCB0cnVlLCAnJywgZmFsc2UsCgkJCQkJCQkJCQkJCQkJICR0aGlzLT5fZ2V0RmlsZVVSTCgkcm93Wyd1cGxvYWRfaWQnXSwkcm93Wyd1cGxvYWRfbmFtZSddKSk7OwoJCQl9CgoJCQkvLyBvcmlnaW5hbCBmaWxlIFVSTAoJCQkkb25lcm93LT5vcmlnZmlsZV91cmwgPSAkY29uZmlnWyd1cGxvYWRzX3VybCddLiIvJGNhdHBhdGgvIi4kcm93Wyd1cGxvYWRfbmFtZSddOwoKCQkJLy8gZ2V0IHRoZSBmaWxlcyBleHRlbnNpb24KCQkJLy8gc2VlIGlmIHdlJ3JlIGFsbG93ZWQgdG8gZGlzcGxheSBpdCBhcyBhbiBpbWFnZQoJCQkvLyBpZiB3ZSBhcmUgdGhlbiBjcmVhdGUgdGhlIGltYWdlX3VybAoJCQkkZmlsZWV4dGVuc2lvbiA9IHN0cnRvbG93ZXIoc3RycmNocigkcm93Wyd1cGxvYWRfbmFtZSddLCcuJykpOwoJCQkkdGh1bWJfZXh0X2FyciA9IGV4cGxvZGUoIiwiLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdhdXRvdGh1bWJuYWlsX2V4dGVuc2lvbnMnKSk7CgoJCQlmb3JlYWNoKCAkdGh1bWJfZXh0X2FyciBhcyAkdGh1bWJfZXh0ICkgewoJCQkJaWYoICIuIi4kdGh1bWJfZXh0ID09ICRmaWxlZXh0ZW5zaW9uICkgewoJCQkJCSRvbmVyb3ctPmltYWdlX3VybCA9CgkJCQkJCSR0aGlzLT5DcmVhdGVMaW5rICgkaWQsICdnZXRpbWFnZScsICRyZXR1cm5pZCwgJycsCgkJCQkJCQkJCQkJCQkJCSBhcnJheSAoJ3Nob3d0ZW1wbGF0ZSc9PidmYWxzZScsJ3VwbG9hZF9pZCc9PiRyb3dbJ3VwbG9hZF9pZCddKSwnJywgdHJ1ZSApOwoJCQkJCWJyZWFrOwoJCQkJfQoJCQl9CgoJCQlpZiggJGZpbGV0eXBlcyAhPSAnJyApIHsKCQkJCSRyZXMgPSBhcnJheV9zZWFyY2goICRmaWxldHlwZVsnbmFtZSddLCBleHBsb2RlKCcsJywkZmlsZXR5cGVzICkgKTsKCQkJCWlmKCAkcmVzID09PSBOVUxMIHx8ICRyZXMgPT09IEZBTFNFICkgewoJCQkJCS8vIHdlIGhhdmUgZm91bmQgYSBmaWxlIHRoYXQgaXNuJ3QgYSB0eXBlIHdlIHJlcXVlc3RlZC4KCQkJCQljb250aW51ZTsKCQkJCX0KCQkJfQoJCX0gLy8gdmlld2FibGUKCgkJLy8gZ2V0IGV4dHJhIGZpZWxkcy4KCQl7CgkJCSRxdWVyeSA9ICdTRUxFQ1QgQS5pZCxBLm5hbWUsQS50eXBlLEIudXBsb2FkX2lkLEIudmFsdWUgCiAgICAgICAgICAgICAgICBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2Fkc19maWVsZGRlZnMgQSAKICAgICAgICAgICAgICAgIExFRlQgSk9JTiAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHNfZmllbGR2YWxzIEIgCiAgICAgICAgICAgICAgICBPTiBBLmlkID0gQi5mbGRfaWQgCiAgICAgICAgICAgICAgICBXSEVSRSBCLnVwbG9hZF9pZCA9ID8gQU5EIEEucHVibGljID0gMQogICAgICAgICAgICAgICAgT1JERVIgQlkgQS5pb3JkZXIgQVNDJzsKCQkJJHRtcCA9ICRkYi0+R2V0QXJyYXkoJHF1ZXJ5LGFycmF5KCRyb3dbJ3VwbG9hZF9pZCddKSk7CgkJCWlmKCAkdG1wICkgewoJCQkJJGhhc2ggPSBjZ2VfYXJyYXk6OnRvX2hhc2goJHRtcCwnbmFtZScpOwoKCQkJCSRvbmVyb3ctPmZpZWxkdmFscyA9IGFycmF5KCk7CgkJCQlmb3JlYWNoICgkaGFzaCBhcyAkayA9PiAkdikgewoJCQkJCSRvbmVyb3ctPmZpZWxkdmFsc1ska10gPSAkdlsndmFsdWUnXTsKCQkJCX0KCQkJCSRvbmVyb3ctPmZpZWxkcyA9ICRoYXNoOwoJCQl9CgkJfQoKCQkkcm93YXJyYXlbXSA9ICRvbmVyb3c7Cgl9CgoJJHNtYXJ0eS0+YXNzaWduICgnaXRlbXMnLCAkcm93YXJyYXkpOwoJJHNtYXJ0eS0+YXNzaWduICgnaXRlbWNvdW50JywgY291bnQoJHJvd2FycmF5KSk7Cn0KCi8vIERpc3BsYXkgdGhlIHBvcHVsYXRlZCB0ZW1wbGF0ZQppZigkcGFyYW1zWydtb2RlJ10gIT0gJ3NlbGVjdCcpIHsKCWVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhYmFzZSAoJHRlbXBsYXRlKTsKfQoKPz4K]]></data>
	</file>
	<file>
	  <filename>/action.defaultadmin.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojIEF1dGhvcjogUm9iZXJ0IENhbXBiZWxsIDxyb2JAdGVjaGNvbS5keW5kbnMub3JnPgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDoJLy93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKCiRmZXUgPSBjbXNfdXRpbHM6OmdldF9tb2R1bGUoJ0Zyb250RW5kVXNlcnMnKTsKCmlmICghJHRoaXMtPkNoZWNrUGVybWlzc2lvbiAoJ01hbmFnZSBVcGxvYWRzJykpIHsKICAvLyBnZXQgdGhlIGN1cnJlbnQgY2F0ZWdvcnkgZm9yIHRoZSBmaWx0ZXIKICAkY3VyY2F0ZWdvcnkgPSAoaXNzZXQgKCRwYXJhbXNbJ2N1cmNhdGVnb3J5J10pID8gJHBhcmFtc1snY3VyY2F0ZWdvcnknXSA6ICcnKTsKICBpZiAoaXNzZXQgKCRwYXJhbXNbJ3N1Ym1pdGNhdGVnb3J5J10pKSB7CiAgICAkY3VyY2F0ZWdvcnkgPSAoaXNzZXQgKCRwYXJhbXNbJ2lucHV0X2NhdGVnb3J5J10pID8gJHBhcmFtc1snaW5wdXRfY2F0ZWdvcnknXSA6ICcnKTsKICB9CgogIC8vIGFyZSB3ZSB1cGxvYWRpbmcgYSBmaWxlICAgICAgCiAgaWYgKGlzc2V0KCAkcGFyYW1zWydzdWJtaXR1cGxvYWQnXSApICkgewogICAgJHBhcmFtc1snY2F0ZWdvcnlfaWQnXSA9ICRjdXJjYXRlZ29yeTsKICAgIAogICAgJHJldCA9ICR0aGlzLT5BdHRlbXB0VXBsb2FkKCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCApOwogICAgaWYoICRyZXRbMF0gPT0gZmFsc2UgKSB7CiAgICAgICR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSggJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsICRyZXRbMV0gKTsKICAgICAgcmV0dXJuOwogICAgfQogIH0KfQoKLy8gdG9wIG5hdgppZiggJHRoaXMtPkNoZWNrUGVybWlzc2lvbignTW9kaWZ5IFRlbXBsYXRlcycpICkgewogIGVjaG8gJzxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyIgc3R5bGU9InRleHQtYWxpZ246IHJpZ2h0OyB3aWR0aDogODAlOyI+JzsKICBlY2hvICR0aGlzLT5DcmVhdGVJbWFnZUxpbmsoJGlkLCdhZG1pbl90ZW1wbGF0ZXMnLCRyZXR1cm5pZCwkdGhpcy0+TGFuZygnbGJsX3RlbXBsYXRlcycpLAoJCQkgICAgICAnaWNvbnMvdG9wZmlsZXMvdGVtcGxhdGUuZ2lmJyxhcnJheSgpLCcnLCcnLGZhbHNlKTsKICBlY2hvICc8L2Rpdj48YnIvPic7Cn0KICAgIAovL1RoZSB0YWJzCmVjaG8gJHRoaXMtPlN0YXJ0VGFiSGVhZGVycyAoKTsKaWYgKCR0aGlzLT5DaGVja1Blcm1pc3Npb24gKCdNYW5hZ2UgVXBsb2FkcycpIHx8ICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ1VwbG9hZCBGaWxlcyB0byBVcGxvYWRzJykpIHsKICBlY2hvICR0aGlzLT5TZXRUYWJIZWFkZXIgKCdmaWxlcycsICR0aGlzLT5MYW5nICgnZmlsZXMnKSk7Cn0KaWYgKCR0aGlzLT5DaGVja1Blcm1pc3Npb24gKCdNYW5hZ2UgVXBsb2FkcycpKSB7CiAgZWNobyAkdGhpcy0+U2V0VGFiSGVhZGVyICgnY2F0ZWdvcmllcycsICR0aGlzLT5MYW5nICgnY2F0ZWdvcmllcycpKTsKfQppZiggJHRoaXMtPkNoZWNrUGVybWlzc2lvbignQ3JlYXRlIFVwbG9hZHMgUmVwb3J0cycpICYmIGlzX29iamVjdCgkZmV1KSApIHsKICBlY2hvICR0aGlzLT5TZXRUYWJIZWFkZXIoJ3JlcG9ydHMnLCR0aGlzLT5MYW5nKCdyZXBvcnRzJykpOwp9CmlmICgkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdNb2RpZnkgU2l0ZSBQcmVmZXJlbmNlcycpICkgewogIGVjaG8gJHRoaXMtPlNldFRhYkhlYWRlciAoJ2ZpZWxkcycsICR0aGlzLT5MYW5nICgnZmllbGRfZGVmaW5pdGlvbnMnKSk7Cn0KaWYgKCR0aGlzLT5DaGVja1Blcm1pc3Npb24gKCdNYW5hZ2UgVXBsb2FkcycpKSB7CiAgZWNobyAkdGhpcy0+U2V0VGFiSGVhZGVyKCAnZmlsZV90eXBlcycsICR0aGlzLT5MYW5nKCAnZmlsZV90eXBlcycpKTsKfQppZiAoJHRoaXMtPkNoZWNrUGVybWlzc2lvbignTW9kaWZ5IFNpdGUgUHJlZmVyZW5jZXMnKSApIHsKICBlY2hvICR0aGlzLT5TZXRUYWJIZWFkZXIgKCdhZG1pbl9wcmVmcycsICR0aGlzLT5MYW5nICgncHJlZmVyZW5jZXMnKSk7Cn0KZWNobyAkdGhpcy0+RW5kVGFiSGVhZGVycyAoKTsKICAgIAovL1RoZSBjb250ZW50IG9mIHRoZSB0YWJzCmVjaG8gJHRoaXMtPlN0YXJ0VGFiQ29udGVudCAoKTsKCmlmICgkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uICgnTWFuYWdlIFVwbG9hZHMnKSB8fCAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdVcGxvYWQgRmlsZXMgdG8gVXBsb2FkcycpKSB7CiAgLy8gdGhlIGZpbGVzIHRhYgogIGVjaG8gJHRoaXMtPlN0YXJ0VGFiICgiZmlsZXMiKTsKICBpbmNsdWRlKGRpcm5hbWUoX19GSUxFX18pLicvZnVuY3Rpb24uYWRtaW5fZmlsZXN0YWIucGhwJyk7CiAgZWNobyAkdGhpcy0+RW5kVGFiICgpOwp9CmlmICgkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uICgnTWFuYWdlIFVwbG9hZHMnKSkgewogIGVjaG8gJHRoaXMtPlN0YXJ0VGFiICgiY2F0ZWdvcmllcyIpOwogIGluY2x1ZGUoZGlybmFtZShfX0ZJTEVfXykuJy9mdW5jdGlvbi5hZG1pbl9jYXRlZ29yaWVzdGFiLnBocCcpOwogIGVjaG8gJHRoaXMtPkVuZFRhYiAoKTsKfQppZiggJHRoaXMtPkNoZWNrUGVybWlzc2lvbignQ3JlYXRlIFVwbG9hZHMgUmVwb3J0cycpICYmIGlzX29iamVjdCgkZmV1KSApIHsKICBlY2hvICR0aGlzLT5TdGFydFRhYiAoInJlcG9ydHMiKTsKICBpbmNsdWRlKGRpcm5hbWUoX19GSUxFX18pLicvZnVuY3Rpb24uYWRtaW5fcmVwb3J0c3RhYi5waHAnKTsKICBlY2hvICR0aGlzLT5FbmRUYWIgKCk7Cn0KaWYgKCR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBTaXRlIFByZWZlcmVuY2VzJykgKSB7CiAgZWNobyAkdGhpcy0+U3RhcnRUYWIgKCJmaWVsZHMiKTsKICBpbmNsdWRlKGRpcm5hbWUoX19GSUxFX18pLicvZnVuY3Rpb24uYWRtaW5fZmllbGRkZWZzdGFiLnBocCcpOwogIGVjaG8gJHRoaXMtPkVuZFRhYiAoKTsKfQppZiAoJHRoaXMtPkNoZWNrUGVybWlzc2lvbiAoJ01hbmFnZSBVcGxvYWRzJykpIHsKICBlY2hvICR0aGlzLT5TdGFydFRhYignZmlsZV90eXBlcycpOwogIGluY2x1ZGUoZGlybmFtZShfX0ZJTEVfXykuJy9mdW5jdGlvbi5hZG1pbl9maWxldHlwZXN0YWIucGhwJyk7CiAgZWNobyAkdGhpcy0+RW5kVGFiKCk7Cn0KCmlmKCAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdNb2RpZnkgU2l0ZSBQcmVmZXJlbmNlcycpICkgewogIGVjaG8gJHRoaXMtPlN0YXJ0VGFiKCAnYWRtaW5fcHJlZnMnICk7CiAgaW5jbHVkZShkaXJuYW1lKF9fRklMRV9fKS4nL2Z1bmN0aW9uLmFkbWluX3ByZWZzdGFiLnBocCcpOwogIGVjaG8gJHRoaXMtPkVuZFRhYiAoKTsKfQoKLy8gZG9uZSB0YWJzCmVjaG8gJHRoaXMtPkVuZFRhYkNvbnRlbnQgKCk7CnJldHVybjsKCj8+]]></data>
	</file>
	<file>
	  <filename>/action.deletecategory.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLXNldC1zdHlsZTpsaW51eDsgdGFiLXdpZHRoOjI7IGluZGVudC10YWJzLW1vZGU6dDsgYy1iYXNpYy1vZmZzZXQ6IDI7IC0qLQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogVXBsb2FkcyAtPSBhbGxvdyB1c2VycyB0byB1cGxvYWQgc3R1ZmYsIGEgcHNldWRvIGZpbGUgbWFuYWdlciIgbW9kdWxlCiMgQXV0aG9yOiBSb2JlcnQgQ2FtcGJlbGwgPHJvYkB0ZWNoY29tLmR5bmRucy5vcmc+CiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOgkvL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KaWYoICFpc3NldCgkZ0NtcykgKSBleGl0OwppZiggISR0aGlzLT5DaGVja1Blcm1pc3Npb24gKCdNYW5hZ2UgVXBsb2FkcycpICkgZXhpdDsKCgoJCWlmKCAhaXNzZXQoICRwYXJhbXNbJ2NhdGVnb3J5X2lkJ10gKSApCgkJewoJCQkkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UgKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLAoJCQkJJHRoaXMtPkxhbmcgKCdlcnJvcl9pbnN1ZmZpY2llbnRwYXJhbXMnLCdjYXRlZ29yeV9pZCcpKTsKCQkJcmV0dXJuOwoJCX0KCi8vIHRlc3QgdG8gc2VlIGlmIHRoZXJlIGFyZSBzdGlsbCBmaWxlcyBsZWZ0IGluIHRoaXMgY2F0ZWdvcnksIGlmIHRoZXJlIGFyZSwgdGhlbiBwdWtlCi8vIG90aGVyd2lzZSBkZWxldGUgdGhlIGRpcmVjdG9yeSB0b28gKG1heWJlKQokcXVlcnkgPSAiU0VMRUNUIHVwbG9hZF9pZCBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2FkcyBXSEVSRSB1cGxvYWRfY2F0ZWdvcnlfaWQgPSA/IjsKJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcXVlcnksIGFycmF5KCAkcGFyYW1zWydjYXRlZ29yeV9pZCddICkgKTsKaWYoICRkYnJlc3VsdC0+UmVjb3JkQ291bnQoKSA+IDAgKQoJewoJCSR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSAoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsCgkJCQkJCQkJCQkJCQkJCSR0aGlzLT5MYW5nICgnZXJyb3JfY2F0ZWdvcnlub3RlbXB0eScpKTsKCQlyZXR1cm47Cgl9CgovLyBkaXNwbGF5IHNvbWV0aGluZyB0byBhbGxvdyB0aGUgdXNlciB0byBkZWxldGUgdGhlIGNhdGVnb3J5Li4uLiB3aWxsIChvcHRpb25hbGx5KSBkZWxldGUKLy8gYWxsIG9mIHRoZSAobWFuYWdlZCkgZmlsZXMgaW4gdGhlIGRpcmVjdG9yeSB0b28uCiR0aGlzLT5zbWFydHktPmFzc2lnbiggJ3dhcm5pbmdfZGVsZXRlY2F0ZWdvcnknLAoJCQkJCQkJCQkJCSAkdGhpcy0+TGFuZygnd2FybmluZ19kZWxldGVjYXRlZ29yeScpICk7CiR0aGlzLT5zbWFydHktPmFzc2lnbiggJ3N0YXJ0Zm9ybScgLAoJCQkJCQkJCQkJCSAkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0KCAkaWQsICdkb19kZWxldGVjYXRlZ29yeScsICRyZXR1cm5pZCkpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oICdoaWRkZW4nLAoJCQkJCQkJCQkJCSAkdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oICRpZCwgJ2NhdGVnb3J5X2lkJywgJHBhcmFtc1snY2F0ZWdvcnlfaWQnXSkpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oICdwcm9tcHRfZGVsZXRlZGlyZWN0b3J5JywKCQkJCQkJCQkJCQkgJHRoaXMtPkxhbmcoJ3Byb21wdF9kZWxldGVkaXJlY3RvcnknKSApOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oICdpbnB1dF9kZWxldGVkaXJlY3RvcnknLAoJCQkJCQkJCQkJCSAkdGhpcy0+Q3JlYXRlSW5wdXRDaGVja2JveCggJGlkLCAnaW5wdXRfZGVsZXRlZGlyZWN0b3J5JywgMSwgMCApKTsJCQkJCQokdGhpcy0+c21hcnR5LT5hc3NpZ24gKCdzdWJtaXQnLCAKCQkJCQkJCQkJCQkgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0ICgkaWQsICdzdWJtaXQnLCAkdGhpcy0+TGFuZygnc3VibWl0JykpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgnZW5kZm9ybScsICR0aGlzLT5DcmVhdGVGb3JtRW5kICgpKTsKZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCdkZWxldGVjYXRlZ29yeS50cGwnKTsKCiMKIyBFT0YKIwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.deletetype.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojIEF1dGhvcjogUm9iZXJ0IENhbXBiZWxsIDxyb2JAdGVjaGNvbS5keW5kbnMub3JnPgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDoJLy93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgppZiggISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01hbmFnZSBVcGxvYWRzJykgKQogIHsKICAgIHJldHVybjsKICB9CgppZiggIWlzc2V0KCAkcGFyYW1zWyd0eXBlaWQnXSApICkKICB7CiAgICAkdGhpcy0+U2hvd0Vycm9ycygkdGhpcy0+TGFuZygnZXJyb3JfbWlzc2luZ3BhcmFtcycpKTsKICB9CgokdHlwZWlkID0gdHJpbSgkcGFyYW1zWyd0eXBlaWQnXSk7CiRkYi0+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+CiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOgkvL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KaWYoICFpc3NldCgkZ0NtcykgKSBleGl0OwokY29uZmlnID0gJGdDbXMtPkdldENvbmZpZygpOwokZGIgPSBjbXNtcygpLT5HZXREYigpOwoKLy8gY2hlY2sgaW5wdXQgZGF0YQppZiggIWlzc2V0KCRwYXJhbXNbJ3VwbG9hZF9pZCddKSApIHsKCSR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSAoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsJHRoaXMtPkxhbmcgKCdlcnJvcl9pbnN1ZmZpY2llbnRwYXJhbXMnLCd1cGxvYWRfaWQnKSk7CglyZXR1cm47Cn0KCi8vIGdldCB0aGUgdGVtcGxhdGUKJHRlbXBsYXRlID0gJ2RldGFpbHJwdF8nLiR0aGlzLT5HZXRQcmVmZXJlbmNlKCdkZWZhdWx0X2RldGFpbHJwdCcpOwppZiggaXNzZXQoICRwYXJhbXNbJ2RldGFpbHRlbXBsYXRlJ10gKSApIHsKCSR0ZW1wbGF0ZSA9ICdkZXRhaWxycHRfJy4kcGFyYW1zWydkZXRhaWx0ZW1wbGF0ZSddOwp9CmVsc2UgaWYoIGlzc2V0KCRwYXJhbXNbJ3RlbXBsYXRlJ10pICkgewoJJHRlbXBsYXRlID0gJ2RldGFpbHJwdF8nLiRwYXJhbXNbJ3RlbXBsYXRlJ107Cn0KCi8vIGhhbmRsZSB0aGUgc2VuZGZpbGVwYWdlIHBhcmFtZXRlcgokc2VuZGZpbGVwYWdlID0gJHJldHVybmlkOwppZiggaXNzZXQoJHBhcmFtc1snc2VuZGZpbGVwYWdlJ10pICkgewoJJG1hbmFnZXIgPSAkZ0Ntcy0+R2V0SGllcmFyY2h5TWFuYWdlcigpOwoJJG5vZGUgPSAkbWFuYWdlci0+c3VyZUdldE5vZGVCeUFsaWFzKCRwYXJhbXNbJ3NlbmRmaWxlcGFnZSddKTsKCWlmIChpc3NldCgkbm9kZSkpIHsKCQkkY29udGVudCA9ICRub2RlLT5HZXRDb250ZW50KCk7CgkJaWYgKGlzc2V0KCRjb250ZW50KSkgewoJCQkkc2VuZGZpbGVwYWdlID0gJGNvbnRlbnQtPklkKCk7CgkJfQoJfQoJZWxzZSB7CgkJJG5vZGUgPSAkbWFuYWdlci0+c3VyZUdldE5vZGVCeUlkKCRwYXJhbXNbJ3NlbmRmaWxlcGFnZSddKTsKCQlpZiAoaXNzZXQoJG5vZGUpKSB7CgkJCSRzZW5kZmlsZXBhZ2UgPSAkcGFyYW1zWydzZW5kZmlsZXBhZ2UnXTsKCQl9Cgl9Cn0KaWYoIGVtcHR5KCRzZW5kZmlsZXBhZ2UpICkgewoJJHRtcCA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdkZWZhdWx0X3NlbmRmaWxlcGFnZScsLTEpOwoJaWYoICR0bXAgPiAwICkgewoJCSRzZW5kZmlsZXBhZ2UgPSAkdG1wOwoJfQoJZWxzZSB7CgkJJHNlbmRmaWxlcGFnZSA9ICRyZXR1cm5pZDsKCX0KfQoKLy8KLy8gR2V0IHRoZSBkYXRhCi8vCiRpbWdwYXRoID0gJ21vZHVsZXMvJy5iYXNlbmFtZShkaXJuYW1lKF9fRklMRV9fKSkuJy9pbWFnZXMvJzsKJHF1ZXJ5ID0gJ1NFTEVDVCBVLiosQ09VTlQoRC5kb3dubG9hZF9pZCkgQVMgbnVtX2Rvd25sb2FkcyBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2FkcyBVIAogICAgICAgICAgTEVGVCBKT0lOICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2Fkc19kb3dubG9hZHMgRAogICAgICAgICAgT04gVS51cGxvYWRfaWQgPSBELmZpbGVfaWQKICAgICAgICAgIFdIRVJFIFUudXBsb2FkX2lkID0gPyc7CiRkYXRhID0gJGRiLT5HZXRSb3coJHF1ZXJ5LGFycmF5KCRwYXJhbXNbJ3VwbG9hZF9pZCddKSk7CiRjYXRlZ29yeSA9ICcnOwppZiggISRkYXRhICkgewoJJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlICgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwkdGhpcy0+TGFuZyAoJ2Vycm9yX25vc3VjaHJvdycpKTsKCXJldHVybjsKfQoKJGNhdGVnb3J5ID0gJHRoaXMtPl9nZXRVcGxvYWRDYXRlZ29yeURldGFpbHMoICRkYXRhWyd1cGxvYWRfY2F0ZWdvcnlfaWQnXSApOwppZiggISR0aGlzLT5fQ2hlY2tEb3dubG9hZFNlY3VyaXR5KCRjYXRlZ29yeSkgKSB7CiAgYXVkaXQoJGRhdGFbJ3VwbG9hZF9pZCddLCR0aGlzLT5HZXROYW1lKCksJ0F0dGVtcHQgdG8gYWNjZXNzIGZpbGUgJy4kZmlsZS4nICB3aXRob3V0IHByb3BlciBwZXJtaXNzaW9ucycpOwoJJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlKCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwgJHRoaXMtPkxhbmcoJ2Vycm9yX3Blcm1pc3Npb25kZW5pZWQnKSApOwogIHJldHVybjsKfQokY2FuX2Rvd25sb2FkID0gJHRoaXMtPl9DaGVja0ZpbGVEb3dubG9hZFNlY3VyaXR5KCRkYXRhKTsKLy8gaWYoICEkdGhpcy0+X0NoZWNrRmlsZURvd25sb2FkU2VjdXJpdHkoJGRhdGEpICkgewovLyAgIGF1ZGl0KCRkYXRhWyd1cGxvYWRfaWQnXSwkdGhpcy0+R2V0TmFtZSgpLCdBdHRlbXB0IHRvIGFjY2VzcyBmaWxlICcuJGZpbGUuJyAgd2l0aG91dCBwcm9wZXIgcGVybWlzc2lvbnMnKTsKLy8gCSR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSggJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsICR0aGlzLT5MYW5nKCdlcnJvcl9wZXJtaXNzaW9uZGVuaWVkJykgKTsKLy8gICByZXR1cm47Ci8vIH0KCiRyb3cgPSBuZXcgU3RkQ2xhc3MoKTsKZm9yZWFjaCggJGRhdGEgYXMgJGtleSA9PiAkdmFsdWUgKSB7CglpZiggc3RhcnRzd2l0aCgka2V5LCd1cGxvYWRfJykgKSAka2V5ID0gc3Vic3RyKCRrZXksNyk7CglpZiggIWVtcHR5KCR2YWx1ZSkgKSAkcm93LT4ka2V5ID0gJHZhbHVlOwp9CiRyb3ctPmNhdGVnb3J5ID0gJGNhdGVnb3J5Wyd1cGxvYWRfY2F0ZWdvcnlfbmFtZSddOwokcm93LT5maWxldHlwZSA9ICR0aGlzLT5fR2V0RmlsZXR5cGUoICRkYXRhWyd1cGxvYWRfbmFtZSddICk7CmlmKCAkcm93LT5maWxldHlwZSAhPT0gZmFsc2UgKSB7Cgkkcm93LT5pY29udXJsID0gJGltZ3BhdGguJHJvdy0+ZmlsZXR5cGVbJ2ltYWdlJ107Cn0KZWxzZSB7Cgkkb25lcm93LT5pY29udXJsID0gJGltZ3BhdGguJ3Vua25vd24ucG5nJzsKfQoKLy8gY2Fub25pY2FsIHVybC4KJHByZXR0eXVybCA9ICJ1cGxvYWRzL2ZpbGUvJHJldHVybmlkLyIuJGRhdGFbJ3VwbG9hZF9pZCddLicvJy51cmxlbmNvZGUoJGRhdGFbJ3VwbG9hZF9uYW1lJ10pOwokcm93LT5jYW5vbmljYWwgPSAkdGhpcy0+Q3JlYXRlRnJvbnRlbmRMaW5rKCRpZCwkcmV0dXJuaWQsJ2RldGFpbCcsJycsCgkJCQkJCQkJCQkJCQkJCQkJCQkJCQlhcnJheSgndXBsb2FkX2lkJz0+JHBhcmFtc1sndXBsb2FkX2lkJ10pLAoJCQkJCQkJCQkJCQkJCQkJCQkJCQkJJycsIHRydWUsIHRydWUsICcnLCBmYWxzZSwKCQkJCQkJCQkJCQkJCQkJCQkJCQkJCSRwcmV0dHl1cmwpOwoKJHJvdy0+dmlld2FibGUgPSAkY2FuX2Rvd25sb2FkOwppZiggJGNhbl9kb3dubG9hZCApIHsKCWlmKCAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnYWxsb3dfZGVsZXRlJywwKSA9PSAxICYmICRjYXRlZ29yeVsndXBsb2FkX2NhdGVnb3J5X2RlbGV0YWJsZSddID09IDEpIHsKCQkkcm93LT5kZWxldGVfdXJsID0gJHRoaXMtPkNyZWF0ZUxpbmsoICRpZCwgJ2RlbGV0ZV9maWxlJywgJHJldHVybmlkLCAnJywgYXJyYXkoJ3VwbG9hZF9pZCcgPT4gJHJvdy0+aWQpLCAnJywgdHJ1ZSApOwoJfQoJJHJvdy0+c2VuZGZpbGVfdXJsID0gJHRoaXMtPkNyZWF0ZUxpbmsgKCRpZCwgJ3NlbmRmaWxlJywgJHNlbmRmaWxlcGFnZSwgJycsIGFycmF5KCd1cGxvYWRfaWQnPT4kcm93LT5pZCksICcnLCB0cnVlLCB0cnVlLCAnJywgZmFsc2UpOwoJJHJvdy0+ZG93bmxvYWRfdXJsID0gCgkJJHRoaXMtPkNyZWF0ZUZyb250ZW5kTGluaygkaWQsJHJldHVybmlkLCdnZXRmaWxlJywnJywKCQkJCQkJCQkJCQkJCQkJYXJyYXkoJ3VwbG9hZF9pZCc9PiRwYXJhbXNbJ3VwbG9hZF9pZCddKSwnJywgdHJ1ZSwgdHJ1ZSwgJycsIGZhbHNlLAoJCQkJCQkJCQkJCQkJCQkkdGhpcy0+X2dldEZpbGVVUkwoJGRhdGFbJ3VwbG9hZF9pZCddLCRkYXRhWyd1cGxvYWRfbmFtZSddKSk7Cgkkcm93LT5vcmlnZmlsZV91cmwgPSAkY29uZmlnWyd1cGxvYWRzX3VybCddLicvJy4kY2F0ZWdvcnlbJ3VwbG9hZF9jYXRlZ29yeV9wYXRoJ10uJy8nLiRkYXRhWyd1cGxvYWRfbmFtZSddOwoKCWlmKCAhZW1wdHkoJGRhdGFbJ3VwbG9hZF90aHVtYm5haWwnXSkgKSB7CgkJJHRuZmlsZSA9ICR0aGlzLT5fY2F0ZWdvcnlQYXRoKCAkY2F0ZWdvcnlbJ3VwbG9hZF9jYXRlZ29yeV9wYXRoJ10uJy8nLiRkYXRhWyd1cGxvYWRfdGh1bWJuYWlsJ10pOwoJCWlmKCBAZmlsZV9leGlzdHMoJHRuZmlsZSkgKSB7CgkJCSR0bnVybCA9ICRjb25maWdbJ3VwbG9hZHNfdXJsJ10uJy8nLiRjYXRlZ29yeVsndXBsb2FkX2NhdGVnb3J5X3BhdGgnXS4nLycuJGRhdGFbJ3VwbG9hZF90aHVtYm5haWwnXTsKCQkJJHJvdy0+dGh1bWJuYWlsX3VybCA9ICR0bnVybDsKCQl9Cgl9Cgp9CgoKLy8gZ2V0IGV4dHJhIGZpZWxkcy4KewoJJHF1ZXJ5ID0gJ1NFTEVDVCBBLmlkLEEubmFtZSxBLnR5cGUsQi51cGxvYWRfaWQsQi52YWx1ZSAKICAgICAgICAgICAgICBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2Fkc19maWVsZGRlZnMgQSAKICAgICAgICAgICAgICBMRUZUIEpPSU4gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzX2ZpZWxkdmFscyBCIAogICAgICAgICAgICAgICAgT04gQS5pZCA9IEIuZmxkX2lkIAogICAgICAgICAgICAgV0hFUkUgQi51cGxvYWRfaWQgPSA/IEFORCBBLnB1YmxpYyA9IDEKICAgICAgICAgICAgIE9SREVSIEJZIEEuaW9yZGVyIEFTQyc7CgkkdG1wID0gJGRiLT5HZXRBcnJheSgkcXVlcnksYXJyYXkoJHBhcmFtc1sndXBsb2FkX2lkJ10pKTsKCWlmKCAkdG1wICkgJHJvdy0+ZmllbGRzID0gY2dlX2FycmF5Ojp0b19oYXNoKCR0bXAsJ25hbWUnKTsKfQoKaWYoICFpc3NldCgkcGFyYW1zWydtb2RlJ10pICkgJHBhcmFtc1snbW9kZSddID0gJ25vcm1hbCc7CnN3aXRjaCgkcGFyYW1zWydtb2RlJ10pIHsKIGNhc2UgJ2xpbmsnOgoJIGVjaG8gJHRoaXMtPkNyZWF0ZUZyb250ZW5kTGluaygkaWQsJHJldHVybmlkLCdnZXRmaWxlJywKCQkJCQkJCQkJCQkJCQkJCQkkcm93LT5uYW1lLAoJCQkJCQkJCQkJCQkJCQkJCWFycmF5KCd1cGxvYWRfaWQnPT4kcGFyYW1zWyd1cGxvYWRfaWQnXSksCgkJCQkJCQkJCQkJCQkJCQkJJycsIGZhbHNlLCB0cnVlLCAnJywgZmFsc2UsCgkJCQkJCQkJCQkJCQkJCQkJJHRoaXMtPl9nZXRGaWxlVVJMKCRyb3ctPmlkLCRyb3ctPm5hbWUpKTsKCSByZXR1cm47CgkgCiBjYXNlICd1cmwnOgoJIGVjaG8gJHJvdy0+ZG93bmxvYWRfdXJsOwoJIHJldHVybjsKCSAKIGRlZmF1bHQ6CgkgJGl0ZW1zID0gYXJyYXkoKTsKCSAkaXRlbXNbXSA9ICRyb3c7CgkgJHNtYXJ0eS0+YXNzaWduKCdpdGVtcycsJGl0ZW1zKTsgLy8gYmFja3dhcmRzIGNvbXBhdGliaWxpdHkuCgkgJHNtYXJ0eS0+YXNzaWduKCdlbnRyeScsJHJvdyk7Cn0KCi8vCi8vIEdpdmUgZXZlcnl0aGluZyB0byBzbWFydHkKLy8KJHNtYXJ0eS0+YXNzaWduKCdjYXRlZ29yeScsJHRoaXMtPkxhbmcoJ2NhdGVnb3J5JykpOwokc21hcnR5LT5hc3NpZ24oJ2lkJywkdGhpcy0+TGFuZygnaWQnKSk7CiRzbWFydHktPmFzc2lnbignbmFtZScsJHRoaXMtPkxhbmcoJ25hbWUnKSk7CiRzbWFydHktPmFzc2lnbignYXJleW91c3VyZScsJHRoaXMtPkxhbmcoJ2FyZXlvdXN1cmUnKSk7CiRzbWFydHktPmFzc2lnbignZGVsZXRlJywkdGhpcy0+TGFuZygnZGVsZXRlJykpOwokc21hcnR5LT5hc3NpZ24oJ2RhdGUnLCR0aGlzLT5MYW5nKCdkYXRlJykpOwokc21hcnR5LT5hc3NpZ24oJ2F1dGhvcicsJHRoaXMtPkxhbmcoJ2F1dGhvcicpKTsKJHNtYXJ0eS0+YXNzaWduKCdzaXplJywkdGhpcy0+TGFuZygnc2l6ZScpKTsKJHNtYXJ0eS0+YXNzaWduKCdkZXRhaWxzJywkdGhpcy0+TGFuZygnZGV0YWlscycpKTsKJHNtYXJ0eS0+YXNzaWduKCdzdW1tYXJ5JywkdGhpcy0+TGFuZygnc3VtbWFyeScpKTsKJHNtYXJ0eS0+YXNzaWduKCdkZXNjcmlwdGlvbicsJHRoaXMtPkxhbmcoJ2Rlc2NyaXB0aW9uJykpOwokc21hcnR5LT5hc3NpZ24oJ3RodW1ibmFpbCcsJHRoaXMtPkxhbmcoJ3RodW1ibmFpbCcpKTsKJHNtYXJ0eS0+YXNzaWduKCdpY29uJywkdGhpcy0+TGFuZygnaWNvbicpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbWFnZScsJHRoaXMtPkxhbmcoJ2ltYWdlJykpOwoKLy8KLy8gUHJvY2VzcyBUaGUgdGVtcGxhdGUKLy8KaWYoICFpc3NldCgkcGFyYW1zWydub291dHB1dCddKSApIGVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhYmFzZSgkdGVtcGxhdGUpOwojCiMgRU9GCiMKPz4K]]></data>
	</file>
	<file>
	  <filename>/action.do_addcategory.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojIEF1dGhvcjogUm9iZXJ0IENhbXBiZWxsIDxyb2JAdGVjaGNvbS5keW5kbnMub3JnPgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDoJLy93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKaWYgKCEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uICgnTWFuYWdlIFVwbG9hZHMnKSkgcmV0dXJuOwoKLy8gYXJlIHdlIGNhbmNlbGxpbmcKaWYgKGlzc2V0ICgkcGFyYW1zWydjYW5jZWwnXSkpIHsKICAkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsJ2NhdGVnb3JpZXMnKTsKfQoKJGVycm9yID0gZmFsc2U7CgovLyBtYWtlIHN1cmUgd2UgaGF2ZSBzb21ldGhpbmcgdG8gd29yayB3aXRoCmlmICghaXNzZXQgKCRwYXJhbXNbJ2lucHV0X2NhdGVnb3J5bmFtZSddKSB8fCAkcGFyYW1zWydpbnB1dF9jYXRlZ29yeW5hbWUnXSA9PSAiIikgewogICR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ2Vycm9yJywgIjEiKTsKICAkdGhpcy0+c21hcnR5LT5hc3NpZ24gKCdtZXNzYWdlJywgJHRoaXMtPkxhbmcgKCJlcnJvcl9lbXB0eWNhdGVnb3J5IikpOwogICRlcnJvciA9IHRydWU7Cn0KZWxzZSBpZiAoIWlzc2V0ICgkcGFyYW1zWydpbnB1dF9jYXRlZ29yeXBhdGgnXSkgfHwgdHJpbSgkcGFyYW1zWydpbnB1dF9jYXRlZ29yeXBhdGgnXSkgPT0gIiIpIHsKICAkdGhpcy0+c21hcnR5LT5hc3NpZ24gKCdlcnJvcicsICIxIik7CiAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgnbWVzc2FnZScsICR0aGlzLT5MYW5nICgiZXJyb3JfZW1wdHlwYXRoIikpOwogICRlcnJvciA9IHRydWU7Cn0KZWxzZSB7CiAgLy8gY2hlY2sgaWYgdGhlIGNhdGVnb3J5IGRvZXNuJ3QgYWxyZWFkeSBleGlzdAogICRxdWVyeSA9ICJTRUxFQ1QgdXBsb2FkX2NhdGVnb3J5X2lkIGZyb20gIi5jbXNfZGJfcHJlZml4ICgpLgogICAgICAgICAgICJtb2R1bGVfdXBsb2Fkc19jYXRlZ29yaWVzIFdIRVJFIHVwbG9hZF9jYXRlZ29yeV9uYW1lID0gPyI7CiAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlICgkcXVlcnksIGFycmF5ICgkcGFyYW1zWydpbnB1dF9jYXRlZ29yeW5hbWUnXSkpOwogICAgIAogIC8vIHllcCBpdCBkb2VzCiAgaWYgKCRkYnJlc3VsdC0+RmV0Y2hSb3cgKCkpIHsKICAgICR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ2Vycm9yJywgIjEiKTsKICAgICR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ21lc3NhZ2UnLCAkdGhpcy0+TGFuZyAoImVycm9yX2NhdGVnb3J5ZXhpc3RzIikuJyBEQicpOwogICAgJGVycm9yID0gdHJ1ZTsKICB9CiAgZWxzZSB7CiAgICAkcGFyYW1zWydpbnB1dF9jYXRlZ29yeXBhdGgnXSA9IHRyaW0oJHBhcmFtc1snaW5wdXRfY2F0ZWdvcnlwYXRoJ10sJy8nKTsKICAgIC8vIGNoZWNrIGlmIHRoZSBkaXJlY3RvcnkgaXMgYWxyZWFkeSBpbiB1c2UKICAgICRxdWVyeSA9ICJTRUxFQ1QgdXBsb2FkX2NhdGVnb3J5X2lkIGZyb20gIi5jbXNfZGJfcHJlZml4ICgpLgogICAgICAgICAgICAgIm1vZHVsZV91cGxvYWRzX2NhdGVnb3JpZXMgV0hFUkUgdXBsb2FkX2NhdGVnb3J5X3BhdGggPSA/IjsKICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSAoJHF1ZXJ5LCBhcnJheSAoJHBhcmFtc1snaW5wdXRfY2F0ZWdvcnlwYXRoJ10pKTsKICAgIGlmICgkZGJyZXN1bHQtPkZldGNoUm93ICgpKSB7CiAgICAgICR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ2Vycm9yJywgIjEiKTsKICAgICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgnbWVzc2FnZScsICR0aGlzLT5MYW5nICgiZXJyb3JfcGF0aGludXNlIikpOwogICAgICAkZXJyb3IgPSB0cnVlOwogICAgfQogICAgZWxzZSB7CiAgICAgIC8vIENyZWF0ZSB0aGUgZGlyZWN0b3J5IGlmIGl0IGRvZXNuJ3QgZXhpc3QKICAgICAgJGRvX3NjYW4gPSBmYWxzZTsKICAgICAgJGRpciA9ICR0aGlzLT5fY2F0ZWdvcnlQYXRoKCRwYXJhbXNbJ2lucHV0X2NhdGVnb3J5cGF0aCddKTsKCiAgICAgIGlmKCBmaWxlX2V4aXN0cyggJGRpciApICkgewoJJGRvX3NjYW4gPSB0cnVlOwogICAgICB9CiAgICAgIGVsc2UgewoJLy8gY3JlYXRlIHRoZSBkaXJlY3RvcnkKCSRyZXN1bHQgPSBjZ2VfZGlyOjpta2RpcnIoJGRpcik7CglpZiAoJHJlc3VsdCA9PT0gRkFMU0UpIHsKCSAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgnZXJyb3InLCAiMSIpOwoJICAkdGhpcy0+c21hcnR5LT5hc3NpZ24gKCdtZXNzYWdlJywkdGhpcy0+TGFuZyAoImVycm9yX2NhdGVnb3J5ZXhpc3RzIikuJzogJy4kZGlyKTsKCSAgJGVycm9yID0gdHJ1ZTsKCX0KCS8vIGNyZWF0ZSBhbiBpbmRleC5odG1sIGZpbGUgKGVtcHR5KQoJaWYoICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdjcmVhdGVfZHVtbXlfaW5kZXhfaHRtbCcpICkgewoJICB0b3VjaCggJGRpci5ESVJFQ1RPUllfU0VQQVJBVE9SLiJpbmRleC5odG1sIiApOwoJfQogICAgICB9CgogICAgICBpZiggISRlcnJvciApIHsKCSRncm91cHMgPSBudWxsOwoJaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0X2dyb3VwbGlzdCddKSApIHsKCSAgJGdyb3VwcyA9IGltcGxvZGUoJywnLCRwYXJhbXNbJ2lucHV0X2dyb3VwbGlzdCddKTsKCX0KCWlmKCBpc3NldCgkcGFyYW1zWydpbnB1dF9jYXRlZ29yeV9kZmx0dXNlcnBlcm1zJ10pICkgewoJICBpZiggaXNfYXJyYXkoJHBhcmFtc1snaW5wdXRfY2F0ZWdvcnlfZGZsdHVzZXJwZXJtcyddKSApIHsKCSAgICAkcGFyYW1zWydpbnB1dF9jYXRlZ29yeV9kZmx0dXNlcnBlcm1zJ10gPSBpbXBsb2RlKCcsJywkcGFyYW1zWydpbnB1dF9jYXRlZ29yeV9kZmx0dXNlcnBlcm1zJ10pOwoJICB9Cgl9CgllbHNlIHsKCSAgJHBhcmFtc1snaW5wdXRfY2F0ZWdvcnlfZGZsdHVzZXJwZXJtcyddID0gJyc7Cgl9CgkvLyBBZGQgdGhlIHJlY29yZCB0byB0aGUgY2F0ZWdvcnkgdGFibGUKCSRjYXRpZCA9ICRkYi0+R2VuSUQgKGNtc19kYl9wcmVmaXggKCkuIm1vZHVsZV91cGxvYWRzX2NhdGVnb3JpZXNfc2VxIik7CgkkcGFyYW1zWydjYXRlZ29yeV9pZCddID0gJGNhdGlkOwoJJHF1ZXJ5ID0gIklOU0VSVCBJTlRPICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc19jYXRlZ29yaWVzIAogICAgICAgICAgICAgICAgICAodXBsb2FkX2NhdGVnb3J5X2lkLCB1cGxvYWRfY2F0ZWdvcnlfbmFtZSwgdXBsb2FkX2NhdGVnb3J5X2Rlc2NyaXB0aW9uLAogICAgICAgICAgICAgICAgICAgdXBsb2FkX2NhdGVnb3J5X3BhdGgsIHVwbG9hZF9jYXRlZ29yeV9saXN0YWJsZSwgdXBsb2FkX2NhdGVnb3J5X2RlbGV0YWJsZSwKICAgICAgICAgICAgICAgICAgIHVwbG9hZF9jYXRlZ29yeV9leHBpcmVzX2hycywgCiAgICAgICAgICAgICAgICAgICB1cGxvYWRfY2F0ZWdvcnlfc2Nhbm5hYmxlLAogICAgICAgICAgICAgICAgICAgdXBsb2FkX2NhdGVnb3J5X2dyb3VwcywKICAgICAgICAgICAgICAgICAgIHVwbG9hZF9jYXRlZ29yeV91c2VycGVybXMsCiAgICAgICAgICAgICAgICAgICB1cGxvYWRfY2F0ZWdvcnlfZGZsdHVzZXJwZXJtcykKICAgICAgICAgICAgICAgICAgVkFMVUVTICg/LD8sPyw/LD8sPyw/LD8sPyw/LD8pIjsKCSRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSAoJHF1ZXJ5LAoJCQkJICBhcnJheSAoJGNhdGlkLAoJCQkJCSAkcGFyYW1zWyJpbnB1dF9jYXRlZ29yeW5hbWUiXSwKCQkJCQkgJHBhcmFtc1siaW5wdXRfY2F0ZWdvcnlkZXNjIl0sCgkJCQkJICRwYXJhbXNbImlucHV0X2NhdGVnb3J5cGF0aCJdLAoJCQkJCSAoaW50KSRwYXJhbXNbImlucHV0X2NhdGVnb3J5bGlzdGFibGUiXSwKCQkJCQkgKGludCkkcGFyYW1zWyJpbnB1dF9jYXRlZ29yeWRlbGV0YWJsZSJdLAoJCQkJCSAoaW50KSRwYXJhbXNbJ2lucHV0X2NhdGVnb3J5X2V4cGlyZXNfaHJzJ10sCgkJCQkJIChpbnQpJHBhcmFtc1snaW5wdXRfY2F0ZWdvcnlfc2Nhbm5hYmxlJ10sCgkJCQkJICRncm91cHMsCgkJCQkJIChpbnQpJHBhcmFtc1snaW5wdXRfY2F0ZWdvcnlfdXNlcnBlcm1zJ10sCgkJCQkJICRwYXJhbXNbJ2lucHV0X2NhdGVnb3J5X2RmbHR1c2VycGVybXMnXSkpOwoJaWYgKCEkZGJyZXN1bHQpIHsKCSAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgnZXJyb3InLCAiMSIpOwoJICAkdGhpcy0+c21hcnR5LT5hc3NpZ24gKCdtZXNzYWdlJywkdGhpcy0+TGFuZyAoIm1lc3NhZ2VfY2F0ZWdvcnlhZGRlZCIpKTsKCSAgJGVycm9yID0gdHJ1ZTsKCX0KCWVsc2UgewoJICBpZiggJGRvX3NjYW4gKSB7CgkgICAgLy8gY2F0ZWdvcnkgaXMgYWRkZWQsIGFuZCB0aGUgZGlyZWN0b3J5IGFscmVhZHkgZXhpc3RlZC4uLiBzbyBub3cKCSAgICAvLyB3ZSdyZSBnb25uYSBzY2FuIHRoZSBkaXJlY3RvcnkgYW5kIGFkZCBmaWxlcyB0byB0aGUgZGF0YWJhc2UKCSAgICAkdGhpcy0+U2NhbkRpcmVjdG9yeSggJGlkLCAkZGlyICk7CgkgIH0KCgkgIC8vIHNlbmQgYW4gZXZlbnQKCSAgJHBhcm1zID0gYXJyYXkoKTsKCSAgJHBhcm1zWyduYW1lJ10gPSAkcGFyYW1zWydpbnB1dF9jYXRlZ29yeW5hbWUnXTsKCSAgJHBhcm1zWydkZXNjcmlwdGlvbiddID0gJHBhcmFtc1snaW5wdXRfY2F0ZWdvcnlkZXNjJ107CgkgICRwYXJtc1sncGF0aCddID0gJHBhcmFtc1snaW5wdXRfY2F0ZWdvcnlwYXRoJ107CgkgICRwYXJtc1snbGlzdGFibGUnXSA9ICRwYXJhbXNbJ2lucHV0X2NhdGVnb3J5bGlzdGFibGUnXTsKCSAgJHBhcm1zWydkZWxldGFibGUnXSA9ICRwYXJhbXNbJ2lucHV0X2NhdGVnb3J5ZGVsZXRhYmxlJ107CgkgICRwYXJtc1snZXhwaXJlc19ocnMnXSA9ICRwYXJhbXNbJ2lucHV0X2NhdGVnb3J5X2V4cGlyZXNfaHJzJ107CgkgICR0aGlzLT5TZW5kRXZlbnQoICdPbkNyZWF0ZUNhdGVnb3J5JywgJHBhcm1zICk7Cgl9CiAgICAgIH0KICAgIH0KICB9Cn0KCmlmICgkZXJyb3IpIHsKICBlY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUgKCdhZGRjYXRlZ29yeS50cGwnKTsKfQplbHNlIHsKICAkdGhpcy0+UmVkaXJlY3RUb1RhYiAoJGlkLCAnY2F0ZWdvcmllcycpOwp9Cj8+]]></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+Q2hlY2tQZXJtaXNzaW9uICgnTWFuYWdlIFVwbG9hZHMnKSkKICB7CiAgICByZXR1cm47CiAgfQoKLy8gYXJlIHdlIGNhbmNlbGxpbmcKaWYgKGlzc2V0ICgkcGFyYW1zWydjYW5jZWwnXSkpCiAgewogICAgJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkLCAnY2F0ZWdvcmllcycpOwogIH0KICAgIAovLyBtYWtlIHN1cmUgd2UgaGF2ZSBzb21ldGhpbmcgdG8gd29yayB3aXRoCmlmICghaXNzZXQgKCRwYXJhbXNbJ2NhdGVnb3J5X2lkJ10pIHx8ICRwYXJhbXNbJ2NhdGVnb3J5X2lkJ10gPT0gIiIpCiAgewogICAgZWNobyAkdGhpcy0+U2hvd0Vycm9ycygkdGhpcy0+TGFuZygnZXJyb3Jfbm9jYXRlZ29yeWlkJykpOwogIH0KZWxzZSBpZiAoIWlzc2V0ICgkcGFyYW1zWydpbnB1dF9jYXRlZ29yeW5hbWUnXSkKCSB8fCAkcGFyYW1zWydpbnB1dF9jYXRlZ29yeW5hbWUnXSA9PSAiIikKICB7CiAgICBlY2hvICR0aGlzLT5TaG93RXJyb3JzKCR0aGlzLT5MYW5nKCdlcnJvcl9lbXB0eWNhdGVnb3J5JykpOwogIH0KZWxzZSBpZiAoIWlzc2V0ICgkcGFyYW1zWydpbnB1dF9jYXRlZ29yeXBhdGgnXSkgfHwgJHBhcmFtc1snaW5wdXRfY2F0ZWdvcnlwYXRoJ10gPT0gIiIpIHsKICBlY2hvICR0aGlzLT5TaG93RXJyb3JzKCR0aGlzLT5MYW5nKCdlcnJvcl9lbXB0eXBhdGgnKSk7CiB9CiBlbHNlIGlmIChpc3NldCggJHBhcmFtc1snc2NhbiddICkgKSB7CiAgICAkcXVlcnkgPSAiU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfY2F0ZWdvcmllcwogICAgICAgICAgICBXSEVSRSB1cGxvYWRfY2F0ZWdvcnlfaWQgPSA/IjsKICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHF1ZXJ5LCBhcnJheSgkcGFyYW1zWydjYXRlZ29yeV9pZCddKSApOwogICAgaWYoICEkZGJyZXN1bHQgKSB7CiAgICAgICR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ2Vycm9yJywgIjEiKTsKICAgICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgnbWVzc2FnZScsICR0aGlzLT5MYW5nICgiZXJyb3JfZGJlcnJvciIpKTsKICAgIH0gCiAgICBlbHNlIHsKICAgICAgJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKTsKICAgICAgaWYoICEkcm93ICkgewoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgnZXJyb3InLCAiMSIpOwoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgnbWVzc2FnZScsICR0aGlzLT5MYW5nICgiZXJyb3JfZGJlcnJvciIpKTsKICAgICAgfSAKICAgICAgZWxzZSB7CglAc2V0X3RpbWVfbGltaXQoMCk7CgkkZGlyID0gJHRoaXMtPl9jYXRlZ29yeVBhdGgoICRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9wYXRoJ10gKTsKCSR0aGlzLT5TY2FuRGlyZWN0b3J5KCAkcGFyYW1zWydjYXRlZ29yeV9pZCddLCAkZGlyICk7CgkkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsICdmaWxlcycsIGFycmF5KCdpbnB1dF9jYXRlZ29yeScgPT4gJHBhcmFtc1snY2F0ZWdvcnlfaWQnXSkgKTsKCXJldHVybjsKICAgICAgfSAKICAgIH0KICB9CmVsc2UKICB7CiAgICAvLyBub3cgcHJlcGFyZSB0byB1cGRhdGUgdGhlIHJlY29yZAogICAgJGdyb3VwcyA9IG51bGw7CiAgICBpZiggaXNzZXQoJHBhcmFtc1snaW5wdXRfZ3JvdXBsaXN0J10pICYmCglpc19hcnJheSggJHBhcmFtc1snaW5wdXRfZ3JvdXBsaXN0J10gKSApCiAgICAgIHsKCSRncm91cHMgPSBpbXBsb2RlKCcsJywkcGFyYW1zWydpbnB1dF9ncm91cGxpc3QnXSk7CiAgICAgIH0KCiAgICBpZiggaXNzZXQoJHBhcmFtc1snaW5wdXRfY2F0ZWdvcnlfZGZsdHVzZXJwZXJtcyddKSApIHsKICAgICAgaWYoIGlzX2FycmF5KCRwYXJhbXNbJ2lucHV0X2NhdGVnb3J5X2RmbHR1c2VycGVybXMnXSkgKSB7CgkkcGFyYW1zWydpbnB1dF9jYXRlZ29yeV9kZmx0dXNlcnBlcm1zJ10gPSBpbXBsb2RlKCcsJywkcGFyYW1zWydpbnB1dF9jYXRlZ29yeV9kZmx0dXNlcnBlcm1zJ10pOwogICAgICB9CiAgICB9CiAgICBlbHNlIHsKICAgICAgJHBhcmFtc1snaW5wdXRfY2F0ZWdvcnlfZGZsdHVzZXJwZXJtcyddID0gJyc7CiAgICB9CgogICAgJHF1ZXJ5ID0KICAgICAgIlVQREFURSAiLmNtc19kYl9wcmVmaXggKCkuIm1vZHVsZV91cGxvYWRzX2NhdGVnb3JpZXMgCiAgICAgICBTRVQgdXBsb2FkX2NhdGVnb3J5X25hbWUgPSA/LCB1cGxvYWRfY2F0ZWdvcnlfZGVzY3JpcHRpb24gPSA/LCB1cGxvYWRfY2F0ZWdvcnlfbGlzdGFibGUgPSA/LAogICAgICAgdXBsb2FkX2NhdGVnb3J5X2dyb3VwcyA9ID8sIHVwbG9hZF9jYXRlZ29yeV9kZWxldGFibGUgPSA/LAogICAgICAgdXBsb2FkX2NhdGVnb3J5X2V4cGlyZXNfaHJzID0gPywgdXBsb2FkX2NhdGVnb3J5X3NjYW5uYWJsZSA9ID8sCiAgICAgICB1cGxvYWRfY2F0ZWdvcnlfdXNlcnBlcm1zID0gPywgdXBsb2FkX2NhdGVnb3J5X2RmbHR1c2VycGVybXMgPSA/CiAgICAgICBXSEVSRSB1cGxvYWRfY2F0ZWdvcnlfaWQgPSA/IjsKICAgICRkYnJlc3VsdCA9CiAgICAgICRkYi0+RXhlY3V0ZSAoJHF1ZXJ5LAoJCSAgICBhcnJheSAoJHBhcmFtc1snaW5wdXRfY2F0ZWdvcnluYW1lJ10sCgkJCSAgICRwYXJhbXNbJ2lucHV0X2NhdGVnb3J5ZGVzYyddLAoJCQkgICAoaW50KSRwYXJhbXNbJ2lucHV0X2NhdGVnb3J5bGlzdGFibGUnXSwKCQkJICAgJGdyb3VwcywKCQkJICAgKGludCkkcGFyYW1zWydpbnB1dF9jYXRlZ29yeWRlbGV0YWJsZSddLAoJCQkgICAoaW50KSRwYXJhbXNbJ2lucHV0X2NhdGVnb3J5X2V4cGlyZXNfaHJzJ10sCgkJCSAgIChpbnQpJHBhcmFtc1snaW5wdXRfY2F0ZWdvcnlfc2Nhbm5hYmxlJ10sCgkJCSAgIChpbnQpJHBhcmFtc1snaW5wdXRfY2F0ZWdvcnlfdXNlcnBlcm1zJ10sCgkJCSAgICRwYXJhbXNbJ2lucHV0X2NhdGVnb3J5X2RmbHR1c2VycGVybXMnXSwKCQkJICAgJHBhcmFtc1snY2F0ZWdvcnlfaWQnXSkpOwogICAgaWYgKCEkZGJyZXN1bHQpCiAgICAgIHsKCWVjaG8gJHRoaXMtPlNob3dFcnJvcnMoJHRoaXMtPkxhbmcoJ2Vycm9yJykuJzogJy4kZGItPkVycm9yTXNnKCkpOwogICAgICB9CiAgICBlbHNlCiAgICAgIHsKCSR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwnY2F0ZWdvcmllcycpOwoJcmV0dXJuOwogICAgICB9CiAgfQoKJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSAoImFkZGNhdGVnb3J5LnRwbCIpOwoKLy8gRU9GCj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/action.do_editupload.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLWZpbGUtc3R5bGU6bGludXg7IHRhYi13aWR0aDoyOyBpbmRlbnQtdGFicy1tb2RlOnQ7IGMtYmFzaWMtb2Zmc2V0OiAyOyAtKi0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojIFZlcnNpb246IDEuMy4wLWJldGExLCBjYWxndXkxMDAwCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOgkvL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KaWYoICFpc3NldCgkZ0NtcykgKSBleGl0OwppZiggISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01hbmFnZSBVcGxvYWRzJykgJiYgISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ1VwbG9hZCBGaWxlcyB0byBVcGxvYWRzJykpIHJldHVybjsKCi8vIG1ha2Ugc3VyZSB3ZSBoYXZlIGFsbCB0aGUgcGFyYW1ldGVycyB3ZSBuZWVkCmlmKCAhaXNzZXQoJHBhcmFtc1sndXBsb2FkX2lkJ10pIHx8ICFpc3NldCgkcGFyYW1zWydpbnB1dF91cGxvYWRkZXNjJ10pIHx8ICFpc3NldCgkcGFyYW1zWydpbnB1dF9tb3ZlY2F0ZWdvcnknXSkgKSB7CgkkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UgKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLCR0aGlzLT5MYW5nICgnZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJywndXBsb2FkX2lkPz8nKSk7CglyZXR1cm47Cn0KICAgCi8vIG5vdyBzZWUgaWYgd2UgY2FuIGZpbmQgdGhlIGRldGFpbHMgYWJvdXQgdGhpcyB1cGxvYWQKJHJvdyA9ICR0aGlzLT5HZXRVcGxvYWREZXRhaWxzKCRwYXJhbXNbJ3VwbG9hZF9pZCddKTsKaWYoICEkcm93ICkgewogICR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSAoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsCgkJCSAgICAkdGhpcy0+TGFuZyAoJ2Vycm9yX2RiZXJyb3InKSk7CiAgcmV0dXJuOwp9CgokbmV3bmFtZSA9ICRyb3dbJ3VwbG9hZF9uYW1lJ107CiRuZXdjYXRlZ29yeSA9ICRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9pZCddOwokbmV3YXV0aG9yID0gJHJvd1sndXBsb2FkX2F1dGhvciddOwokbmV3ZGVzYyA9ICRyb3dbJ3VwbG9hZF9kZXNjcmlwdGlvbiddOwokbmV3c3VtbWFyeSA9ICRyb3dbJ3VwbG9hZF9zdW1tYXJ5J107CiRuZXd0aHVtYiA9ICRyb3dbJ3VwbG9hZF90aHVtYm5haWwnXTsKCi8vIEdldCB0aGUgY2F0ZWdvcnkgcGF0aCBmcm9tIHRoZSBjYXRlZ29yeSBpZAokY2F0cGF0aCA9ICcnOwp7CiAgJHEgPSAiU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfY2F0ZWdvcmllcwogICAgICAgICBXSEVSRSB1cGxvYWRfY2F0ZWdvcnlfaWQgPSA/IjsKICAkcm93MiA9ICRkYi0+R2V0Um93KCAkcSwgYXJyYXkoJHJvd1sndXBsb2FkX2NhdGVnb3J5X2lkJ10pKTsKICBpZiggISRyb3cyICkgewoJCSR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSAoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsJHRoaXMtPkxhbmcgKCdlcnJvcl9kYmVycm9yJykpOwoJCXJldHVybjsKCX0KCiAgJGNhdHBhdGggPSAkcm93MlsndXBsb2FkX2NhdGVnb3J5X3BhdGgnXTsKfQoKJGZyb21maWxlID0gJHRoaXMtPl91cGxvYWRQYXRoKCAkY2F0cGF0aCwgdHJpbSgkcm93Wyd1cGxvYWRfbmFtZSddKSApOwoKaWYoIGlzc2V0KCRwYXJhbXNbJ2NhbmNlbCddKSApIHsKCS8vIG9wZXJhdGlvbiBjYW5jZWxsZWQKCSR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwgJ2ZpbGVzJywgYXJyYXkoICdjdXJjYXRlZ29yeScgPT4gJHBhcmFtc1snY2F0ZWdvcnlfaWQnXSkgKTsKfQplbHNlIGlmKCBpc3NldCgkcGFyYW1zWydyZXBsYWNlJ10pICkgewoJLy8gcmUtdXBsb2FkIGV4aXN0aW5nIGZpbGUuLi4gYnV0IHdlJ3JlIG5vdCBnb25uYSB0b3VjaCB0aGUKCS8vIG90aGVyIGluZm8gKGxpa2UgYXV0aG9yLi4uLCBvciB0aGUgZmllbGRzKS4KCSRmaWxlc19rZXkgPSAkaWQuJ3JlcGxhY2VfZmlsZSc7CglpZiggIWlzc2V0KCRfRklMRVNbJGZpbGVzX2tleV0pIHx8IAoJCQkoJF9GSUxFU1skZmlsZXNfa2V5XVsnbmFtZSddID09ICcnKSB8fAoJCQkoJF9GSUxFU1skZmlsZXNfa2V5XVsnc2l6ZSddID09IDApIHx8CgkJCSgkX0ZJTEVTWyRmaWxlc19rZXldWydlcnJvciddICE9IDAgKSApIHsKCQkkdGhpcy0+U2V0RXJyb3IoJHRoaXMtPkxhbmcoJ2Vycm9yX25vZmlsZXN1cGxvYWRlZCcpKTsKCQkkdGhpcy0+Q0dSZWRpcmVjdCgkaWQsJ2VkaXR1cGxvYWQnLCRyZXR1cm5pZCwkcGFyYW1zKTsKCX0KCgkvLyBtYWtlIHN1cmUgaXQncyBhbiBhbGxvd2VkIGZpbGUgdHlwZQoJJG5ld2ZpbGVleHRlbnNpb24gPSBzdHJ0b2xvd2VyKHN0cnJjaHIoJF9GSUxFU1skZmlsZXNfa2V5XVsnbmFtZSddLCcuJykpOwoJaWYoICEkdGhpcy0+X2lzVmFsaWRGaWxlbmFtZSgkX0ZJTEVTWyRmaWxlc19rZXldWyduYW1lJ10pICkgewoJCSR0aGlzLT5TZXRFcnJvcigkdGhpcy0+TGFuZygnZXJyb3JfaW52YWxpZHVwbG9hZGZpbGVuYW1lJywkX0ZJTEVTWyRmaWxlc19rZXldWyduYW1lJ10pKTsKCQkkdGhpcy0+Q0dSZWRpcmVjdCgkaWQsJ2VkaXR1cGxvYWQnLCRyZXR1cm5pZCwkcGFyYW1zKTsKCX0KCgkkZmlsZWV4dGVuc2lvbiA9IHN0cnRvbG93ZXIoc3RycmNocigkZnJvbWZpbGUsJy4nKSk7CglpZiggJGZpbGVleHRlbnNpb24gIT0gJG5ld2ZpbGVleHRlbnNpb24gKSB7CgkJLy8gdWhtLCB5b3UgY2FuJ3QgcmVwbGFjZSBhIGZpbGUgb2YgYSBkaWZmZXJlbnQgdHlwZQoJCSR0aGlzLT5TZXRFcnJvcigkdGhpcy0+TGFuZygnZXJyb3JfcmVwbGFjZV9taXNtYXRjaGVkX2ZpbGVleHQnKSk7CgkJJHRoaXMtPkNHUmVkaXJlY3QoJGlkLCdlZGl0dXBsb2FkJywkcmV0dXJuaWQsJHBhcmFtcyk7Cgl9CgoJLy8gd2UncmUgYWxsIGdvb2QgdG8gZ28uCglpZiggZmlsZV9leGlzdHMoJGZyb21maWxlKSApIHsKCQlAdW5saW5rKCRmcm9tZmlsZSk7Cgl9CgljbXNfbW92ZV91cGxvYWRlZF9maWxlKCAkX0ZJTEVTWyRmaWxlc19rZXldWyd0bXBfbmFtZSddLCRmcm9tZmlsZSApOwoKCS8vIG5vdywgaWYgaXQncyBhbiBpbWFnZSBmaWxlLCB3ZSBtYXkgd2FubmEgcmUtY3JlYXRlIHRoZSB0aHVtYm5haWwKCSR0aHVtYl9leHRfYXJyID0gZXhwbG9kZSgiLCIsJHRoaXMtPkdldFByZWZlcmVuY2UoJ2F1dG90aHVtYm5haWxfZXh0ZW5zaW9ucycpKTsKCWZvcmVhY2goICR0aHVtYl9leHRfYXJyIGFzICR0aHVtYl9leHQgKSB7CgkJaWYoICcuJy4kdGh1bWJfZXh0ICE9ICRmaWxlZXh0ZW5zaW9uICkgY29udGludWU7CgoJCS8vIGl0J3MgYW4gaW1hZ2UgZmlsZS4KCgkJLy8gZGVsZXRlIGFueSBwcmV2aW91cyB0aHVtYm5haWwKCQlpZiggIWVtcHR5KCRyb3dbJ3VwbG9hZF90aHVtYm5haWwnXSkgKSB7CgkJCSRvbGRmaWxlID0gJHRoaXMtPl91cGxvYWRQYXRoKCRjYXRwYXRoLCRyb3dbJ3VwbG9hZF90aHVtYm5haWwnXSk7CgkJCUB1bmxpbmsoJG9sZGZpbGUpOwoJCX0KCgkJLy8gZ2VuZXJhdGUgbmV3IHRodW1ibmFpbAoJCSR0aHVtYm5hbWUgPSAndGh1bWJfJy4kcm93Wyd1cGxvYWRfbmFtZSddOwoJCSR0aHVtYmZpbGUgPSAkdGhpcy0+X3VwbG9hZFBhdGgoJGNhdHBhdGgsJHRodW1ibmFtZSk7CgkJJHRoaXMtPmltYWdlVHJhbnNmb3JtKCRmcm9tZmlsZSwkdGh1bWJmaWxlLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdhdXRvdGh1bWJuYWlsX3NpemUnKSk7CgoJCS8vIHVwZGF0ZSB0aGUgcmVjb3JkLgoJCSR0aHVtYm5hbWUgPSAndGh1bWJfJy4kcm93Wyd1cGxvYWRfbmFtZSddOwoJCSRxdWVyeSA9ICdVUERBVEUgJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzCiAgICAgICAgICAgICAgU0VUIHVwbG9hZF90aHVtYm5haWwgPSA/CiAgICAgICAgICAgICAgV0hFUkUgdXBsb2FkX2lkID0gPyc7CgkJJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkdGh1bWJuYW1lLCRwYXJhbXNbJ3VwbG9hZF9pZCddKSk7CgkJYnJlYWs7Cgl9Cn0KZWxzZSBpZiggaXNzZXQoJHBhcmFtc1sndGh1bWJuYWlsJ10pICkgewoJLy8gd2UncmUgKHJlKWNyZWF0aW5nIGEgdGh1bWJuYWlsIGZvciB0aGlzIGltYWdlCgkkdG5kaXIgPSAkdGhpcy0+X2NhdGVnb3J5UGF0aCgkY2F0cGF0aCk7CgoJJGZpbGVleHRlbnNpb24gPSBzdHJ0b2xvd2VyKHN0cnJjaHIoJHJvd1sndXBsb2FkX25hbWUnXSwnLicpKTsKCSRkZXN0ID0gJHRuZGlyLkRJUkVDVE9SWV9TRVBBUkFUT1IuJ3RodW1iXycuJHJvd1sndXBsb2FkX25hbWUnXTsKCSR0aHVtYl9leHRfYXJyID0gZXhwbG9kZSgiLCIsJHRoaXMtPkdldFByZWZlcmVuY2UoJ2F1dG90aHVtYm5haWxfZXh0ZW5zaW9ucycpKTsKCWZvcmVhY2goICR0aHVtYl9leHRfYXJyIGFzICR0aHVtYl9leHQgKSB7CgkJaWYoICIuIi4kdGh1bWJfZXh0ID09ICRmaWxlZXh0ZW5zaW9uICkgewoJCQkvLyBkZWxldGUgYW55IHByZXZpb3VzIHRodW1ibmFpbAoJCQlpZiggIWVtcHR5KCRyb3dbJ3VwbG9hZF90aHVtYm5haWwnXSkgKSB7CgkJCQkkb2xkZmlsZSA9ICR0bmRpci5ESVJFQ1RPUllfU0VQQVJBVE9SLid0aHVtYl8nLiRyb3dbJ3VwbG9hZF90aHVtYm5haWwnXTsKCQkJCWlmKCBmaWxlX2V4aXN0cygkb2xkZmlsZSkgKSB7CgkJCQkJQHVubGluaygkb2xkZmlsZSk7CgkJCQl9CgkJCX0KCgkJCS8vIGdlbmVyYXRlIGl0LgoJCQkkdGhpcy0+aW1hZ2VUcmFuc2Zvcm0oJGZyb21maWxlLCRkZXN0LCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdhdXRvdGh1bWJuYWlsX3NpemUnKSk7CgoJCQkvLyB1cGRhdGUgdGhlIHJlY29yZC4KCQkJJG5ld3RodW1iID0gJ3RodW1iXycuJHJvd1sndXBsb2FkX25hbWUnXTsKCQkJJHF1ZXJ5ID0gJ1VQREFURSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHMKICAgICAgICAgICAgICAgIFNFVCB1cGxvYWRzX3RodW1uYWlsID0gPwogICAgICAgICAgICAgICAgV0hFUkUgdXBsb2FkX2lkID0gPyc7CgkJCSRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkoJG5ld3RodW1iLCRwYXJhbXNbJ3VwbG9hZF9pZCddKSk7CgkJCWJyZWFrOwoJCX0KCX0KCSR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwgJ2ZpbGVzJywgYXJyYXkoICdjdXJjYXRlZ29yeScgPT4gJHBhcmFtc1snY2F0ZWdvcnlfaWQnXSkgKTsKfQoKCmlmKCAkcGFyYW1zWydpbnB1dF9tb3ZlY2F0ZWdvcnknXSAhPSAkcm93Wyd1cGxvYWRfY2F0ZWdvcnlfaWQnXSB8fAogICAgJHBhcmFtc1snaW5wdXRfdXBsb2FkbmFtZSddICE9ICRyb3dbJ3VwbG9hZF9uYW1lJ10gKSB7CiAgLy8gbG9va3MgbGlrZSB3ZSBoYXZlIHRvIG1vdmUgaXQKICAvLyBnZXQgdGhlIGluZm8gZm9yIHRoZSBuZXcgY2F0ZWdvcnkKICAkcXVlcnkgPSAiU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfY2F0ZWdvcmllcyBXSEVSRSB1cGxvYWRfY2F0ZWdvcnlfaWQgPSA/IjsKICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxdWVyeSwgYXJyYXkoICRwYXJhbXNbJ2lucHV0X21vdmVjYXRlZ29yeSddICkgKTsKICAkY2F0MXJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKTsKICBpZiggISRjYXQxcm93ICkgewogICAgJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlICgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwgJHRoaXMtPkxhbmcgKCdlcnJvcl9kYmVycm9yJykpOwogICAgcmV0dXJuOwogIH0KCiAgLy8gYW5kIHRoZSBvbGQgY2F0ZWdvcnkKICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxdWVyeSwgYXJyYXkoICRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9pZCddICkgKTsKICAkY2F0MnJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKTsKICBpZiggISRjYXQycm93ICkgewogICAgJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlICgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwgJHRoaXMtPkxhbmcgKCdlcnJvcl9kYmVycm9yJykpOwogICAgcmV0dXJuOwogIH0KICAgICAgCiAgLy8gbm93IHdlIGNhbiBtb3ZlIHRoZSBmaWxlIGZyb20gZGlyZWN0b3J5IG9uZSB0byB0d28uCiAgLy8gaWYgaXQgZG9lc24ndCBhbHJlYWR5IGV4aXN0IGluIHRoZSBkZXN0aW5hdGlvbiBkaXJlY3RvcnkKICAkdG9maWxlICAgPSAkdGhpcy0+X3VwbG9hZFBhdGgoICRjYXQxcm93Wyd1cGxvYWRfY2F0ZWdvcnlfcGF0aCddLCB0cmltKCRwYXJhbXNbJ2lucHV0X3VwbG9hZG5hbWUnXSkgKTsKCiAgLy8gbW92ZSB0aGUgZmlsZQogIGlmKCBmaWxlX2V4aXN0cyggJHRvZmlsZSApICkgewogICAgJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlICgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwgJHRoaXMtPkxhbmcgKCdlcnJvcl9maWxlZXhpc3RzJywkdG9maWxlKSk7CiAgICByZXR1cm47CiAgfQogIGlmKCAhcmVuYW1lKCAkZnJvbWZpbGUsICR0b2ZpbGUgKSApIHsKICAgICR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSAoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsICR0aGlzLT5MYW5nICgnZXJyb3JfY2Fubm90cmVuYW1lJykpOwogICAgcmV0dXJuOwogIH0KCiAgLy8gYW5kIG1vdmUgYW55IHRodW1ibmFpbAoJaWYoICFlbXB0eSgkcm93Wyd1cGxvYWRfdGh1bWJuYWlsJ10pICkgewoJCSR0bl9mcm9tZmlsZSA9ICR0aGlzLT5fY2F0ZWdvcnlQYXRoKCAkY2F0MnJvd1sndXBsb2FkX2NhdGVnb3J5X3BhdGgnXS5ESVJFQ1RPUllfU0VQQVJBVE9SLgoJCQkJCQkJCQkJCQkJCQkJCQkJCSAkcm93Wyd1cGxvYWRfdGh1bWJuYWlsJ10gKTsKCQkkdGh1bWJfZXh0ID0gc3RycmNocigkcm93Wyd1cGxvYWRfdGh1bWJuYWlsJ10sJy4nKTsKCQkkZm4gPSB0cmltKCRwYXJhbXNbJ2lucHV0X3VwbG9hZG5hbWUnXSk7CgkJJHRtcCA9IHN0cnJwb3MoJGZuLCcuJyk7CgkJaWYoICR0bXAgIT09IEZBTFNFICkgewoJCQkkZm4gPSBzdWJzdHIoJGZuLDAsJHRtcCk7CgkJfQoJCSRuZXd0aHVtYiA9ICd0aHVtYl8nLiRmbi4kdGh1bWJfZXh0OwoJCSRjYXRwYXRoID0gJGNhdDFyb3dbJ3VwbG9hZF9jYXRlZ29yeV9wYXRoJ107CgkJJHRuX3RvZmlsZSAgID0gJHRoaXMtPl9jYXRlZ29yeVBhdGgoICRjYXRwYXRoLkRJUkVDVE9SWV9TRVBBUkFUT1IuJG5ld3RodW1iKTsKCQkvLyBhbmQgcmVuYW1lIHRoZSB0aHVtYm5haWwKCQlAcmVuYW1lKCAkdG5fZnJvbWZpbGUsICR0bl90b2ZpbGUgKTsKCX0KCiAgJG5ld2NhdGVnb3J5ID0gJHBhcmFtc1snaW5wdXRfbW92ZWNhdGVnb3J5J107CiAgJHRoaXMtPkF1ZGl0KCAwLCAkdGhpcy0+TGFuZygnZnJpZW5kbHluYW1lJyksJHRoaXMtPkxhbmcoJ21vdmVkZmlsZScsICRmcm9tZmlsZSwgJHRvZmlsZSApKTsKfQoKaWYoICRwYXJhbXNbJ2lucHV0X3VwbG9hZGRlc2MnXSAhPSAkcm93Wyd1cGxvYWRfZGVzY3JpcHRpb24nXSApIHsKICAkbmV3ZGVzYyA9IHRyaW0oJHBhcmFtc1snaW5wdXRfdXBsb2FkZGVzYyddKTsKfQppZiggJHBhcmFtc1snaW5wdXRfdXBsb2FkbmFtZSddICE9ICRyb3dbJ3VwbG9hZF9uYW1lJ10gKSB7CiAgJG5ld25hbWUgPSB0cmltKCRwYXJhbXNbJ2lucHV0X3VwbG9hZG5hbWUnXSk7Cn0KaWYoICRwYXJhbXNbJ2lucHV0X3VwbG9hZHN1bW1hcnknXSAhPSAkcm93Wyd1cGxvYWRfc3VtbWFyeSddICkgewogICRuZXdzdW1tYXJ5ID0gdHJpbSgkcGFyYW1zWydpbnB1dF91cGxvYWRzdW1tYXJ5J10pOwp9CmlmKCAkcGFyYW1zWydpbnB1dF91cGxvYWRhdXRob3InXSAhPSAkcm93Wyd1cGxvYWRfYXV0aG9yJ10gKSB7CiAgJG5ld2F1dGhvciA9IHRyaW0oJHBhcmFtc1snaW5wdXRfdXBsb2FkYXV0aG9yJ10pOwp9CgokcXVlcnkgPSAiVVBEQVRFICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2FkcyBTRVQKICAgICAgICAgIHVwbG9hZF9uYW1lID0gPywgdXBsb2FkX2F1dGhvciA9ID8sCiAgICAgICAgICB1cGxvYWRfc3VtbWFyeSA9ID8sIHVwbG9hZF9kZXNjcmlwdGlvbiA9ID8sCiAgICAgICAgICB1cGxvYWRfY2F0ZWdvcnlfaWQgPSA/ICwKICAgICAgICAgIHVwbG9hZF90aHVtYm5haWwgPSA/CiAgICAgICAgICBXSEVSRSB1cGxvYWRfaWQgPSA/IjsKJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcXVlcnksIGFycmF5KCAkbmV3bmFtZSwgJG5ld2F1dGhvciwgJG5ld3N1bW1hcnksICRuZXdkZXNjLCAkbmV3Y2F0ZWdvcnksIAoJCQkJCQkJCQkJCQkJCQkJCQkJCSAkbmV3dGh1bWIsICRwYXJhbXNbJ3VwbG9hZF9pZCddICkgKTsKCi8vIGRlbGV0ZSBhbnkgZXhpc3RpbmcgY3VzdG9tIGZpZWxkcwokcXVlcnkgPSAnREVMRVRFIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzX2ZpZWxkdmFscyAKICAgICAgICAgIFdIRVJFIHVwbG9hZF9pZCA9ID8nOwokZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KCRwYXJhbXNbJ3VwbG9hZF9pZCddKSk7CgovLyBoYW5kbGUgbmV3IGN1c3RvbSBmaWVsZCB2YWx1ZXMuCiRpcXVlcnkgPSAnSU5TRVJUIElOVE8gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzX2ZpZWxkdmFscyAKICAgICAgICAgICAgICAgICAodXBsb2FkX2lkLCBmbGRfaWQsIHZhbHVlKSBWQUxVRVMgKD8sPyw/KSc7CmZvcmVhY2goICRwYXJhbXMgYXMgJGtleSA9PiAkdmFsdWUgKSB7CglpZiggIXN0YXJ0c3dpdGgoJGtleSwnZmllbGRfJykgKSB7CgkJY29udGludWU7Cgl9CgkKCSRmaWVsZF9pZCA9IChpbnQpc3Vic3RyKCRrZXksNik7CglpZiggaXNfYXJyYXkoICR2YWx1ZSApICkgewoJCSR2YWx1ZSA9IGltcGxvZGUoJywnLCR2YWx1ZSk7Cgl9CgkkZGItPkV4ZWN1dGUoJGlxdWVyeSxhcnJheSgkcGFyYW1zWyd1cGxvYWRfaWQnXSwkZmllbGRfaWQsJHZhbHVlKSk7Cn0KCiR0aGlzLT5BdWRpdCggMCwgJHRoaXMtPkxhbmcoJ2ZyaWVuZGx5bmFtZScpLAoJCQkJCQkJJHRoaXMtPkxhbmcoJ2VkaXRlZCcsICRyb3dbJ3VwbG9hZF9uYW1lJ10pICk7CgojIGFsbG93IG5ldyB0aHVtYm5haWwgdG8gYmUgdXBsb2FkZWQKJHRtcCA9ICRpZC4naW5wdXRfbmV3dGh1bWJuYWlsJzsKaWYoIGlzc2V0KCRfRklMRVNbJHRtcF0pICYmICFlbXB0eSgkX0ZJTEVTWyR0bXBdWyduYW1lJ10pICYmCgkJJF9GSUxFU1skdG1wXVsnc2l6ZSddID4gMCAmJgoJCSRfRklMRVNbJHRtcF1bJ2Vycm9yJ10gPT0gMCApIHsKCSRuYW1lID0gJHJvd1sndXBsb2FkX25hbWUnXTsKCSR0aHVtYl9leHQgPSBzdHJyY2hyKCRfRklMRVNbJHRtcF1bJ25hbWUnXSwnLicpOwoJJGZpbGVfZXh0ID0gc3RycmNocigkbmFtZSwnLicpOwoJJGZuYW1lID0gc3Vic3RyKCRuYW1lLDAsc3RybGVuKCRuYW1lKS1zdHJsZW4oJGZpbGVfZXh0KSk7CgkkdGh1bWJfbmFtZSA9ICd0aHVtYl8nLiRmbmFtZS4kdGh1bWJfZXh0OwoJJHRuX29sZGZpbGUgPSAkdGhpcy0+X2NhdGVnb3J5UGF0aCggJGNhdHBhdGguRElSRUNUT1JZX1NFUEFSQVRPUi4kcm93Wyd1cGxvYWRfdGh1bWJuYWlsJ10pOwoKCWlmKCBmaWxlX2V4aXN0cyggJHRuX29sZGZpbGUgKSApIHsKCQlAdW5saW5rKCR0bl9vbGRmaWxlKTsKCX0KCSR0bl9uZXdmaWxlICAgPSAkdGhpcy0+X2NhdGVnb3J5UGF0aCggJGNhdHBhdGguRElSRUNUT1JZX1NFUEFSQVRPUi4kdGh1bWJfbmFtZSk7CglpZiggZmlsZV9leGlzdHMoJHRuX25ld2ZpbGUpICkgewoJCUB1bmxpbmsoJHRuX25ld2ZpbGUpOwoJfQoJY21zX21vdmVfdXBsb2FkZWRfZmlsZSggJF9GSUxFU1skdG1wXVsndG1wX25hbWUnXSwkdG5fbmV3ZmlsZSApOwoKCSRxdWVyeSA9ICdVUERBVEUgJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzIAogICAgICAgICAgICBTRVQgdXBsb2FkX3RodW1ibmFpbCA9ID8KICAgICAgICAgICAgV0hFUkUgdXBsb2FkX2lkID0gPyc7CgkkZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KCR0aHVtYl9uYW1lLCRyb3dbJ3VwbG9hZF9pZCddKSk7Cn0KCi8vIHVwZGF0ZSBzZWFyY2ggd29yZHMuCiRzZWFyY2ggPSAkdGhpcy0+R2V0TW9kdWxlSW5zdGFuY2UoJ1NlYXJjaCcpOwppZiggJHNlYXJjaCApIHsKCSRzdHIgPSAkbmV3bmFtZS4nICcuJG5ld2F1dGhvci4nICcuJG5ld3N1bW1hcnkuJyAnLiRuZXdkZXNjOwoJJHNlYXJjaC0+QWRkV29yZHMoICR0aGlzLT5HZXRuYW1lKCksICRyb3dbJ3VwbG9hZF9pZCddLCAndXBsb2FkJywgJHN0cik7Cn0KCi8vIGRvbmUuCiR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwgJ2ZpbGVzJywgYXJyYXkoICdjdXJjYXRlZ29yeScgPT4gJHBhcmFtc1snY2F0ZWdvcnlfaWQnXSkgKTsKCi8vIEVPRgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.do_upload.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLWZpbGUtc3R5bGU6bGludXg7IHRhYi13aWR0aDoyOyBpbmRlbnQtdGFicy1tb2RlOnQ7IGMtYmFzaWMtb2Zmc2V0OiAyOyAtKi0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojIFZlcnNpb246IDEuMy4wLWJldGExLCBjYWxndXkxMDAwCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOgkvL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KaWYoICFpc3NldCgkZ0NtcykgKSBleGl0KCk7CgovLyBhIHVzZXIgaXMgdHJ5aW5nIHRvIHVwbG9hZCBzb21ldGhpbmcKLy8gZmlyc3QgY2hlY2sgaWYgY2FwdGNoYSB3YXMgc2V0CiRjYXB0Y2hhID0gJHRoaXMtPkdldE1vZHVsZUluc3RhbmNlKCdDYXB0Y2hhJyk7CmlmKCBpc19vYmplY3QoJGNhcHRjaGEpICYmICFpc3NldCgkcGFyYW1zWydub2NhcHRjaGEnXSkgKSB7CiAgaWYgKCEkY2FwdGNoYS0+Q2hlY2tDYXB0Y2hhKCRwYXJhbXNbJ2lucHV0X2NhcHRjaGEnXSkpIHsKICAgICR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSggJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsCgkJCSAgICAgICR0aGlzLT5MYW5nKCdlcnJvcl9jYXB0Y2hhbWlzbWF0Y2gnKSk7CiAgICByZXR1cm47CiAgfQogfQoKJHBhcmFtc1snaW5wdXRfcmVwbGFjZSddID0gMDsgLy8gbm8gcmVwbGFjaW5nIGZpbGVzIGFsbG93ZWQuIAokcmV0ID0gJHRoaXMtPkF0dGVtcHRVcGxvYWQgKCRpZCwgJHBhcmFtcywgJHJldHVybmlkKTsKaWYoICRyZXRbMF0gPT0gRkFMU0UgKSB7CiAgJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlKCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwKCQkJICAgICRyZXRbMV0gKTsKICByZXR1cm47CiB9CiRzdHIgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgncmVkaXJlY3Rfb25fdXBsb2FkJyk7CiRpZCA9ICRyZXR1cm5pZDsKaWYoICRzdHIgIT0gJycgKQogIHsKICAgICRpZCA9IENvbnRlbnRNYW5hZ2VyOjpHZXRQYWdlSURGcm9tQWxpYXMoICRzdHIgKTsKICAgIGlmKCAhJGlkICkKICAgICAgewoJLy8gcGFnZSBub3QgZm91bmQsIGlnbm9yZSBpdAoJJGlkID0gJHJldHVybmlkOwogICAgICB9CiAgfQokdGhpcy0+UmVkaXJlY3RDb250ZW50KCAkaWQgKTsKCiMKIyBFT0YKIwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.editcategory.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLWZpbGUtc3R5bGU6bGludXg7IHRhYi13aWR0aDoyOyBpbmRlbnQtdGFicy1tb2RlOnQ7IGMtYmFzaWMtb2Zmc2V0OiAyOyAtKi0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgPSBhbGxvdyB1c2VycyB0byB1cGxvYWQgc3R1ZmYsIGEgcHNldWRvIGZpbGUgbWFuYWdlciBtb2R1bGUKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6CS8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQppZiggIWlzc2V0KCRnQ21zKSApIGV4aXQ7CmlmICghJHRoaXMtPkNoZWNrUGVybWlzc2lvbiAoJ01hbmFnZSBVcGxvYWRzJykpIGV4aXQ7Cgokc21hcnR5LT5hc3NpZ24gKCd0aXRsZScsICR0aGlzLT5MYW5nICgnZWRpdGNhdGVnb3J5JykpOwoKLy8gY2hlY2sgdGhpbmdzIG91dAppZiAoIWlzc2V0ICgkcGFyYW1zWydjYXRlZ29yeV9pZCddKSkgewoJJHNtYXJ0eS0+YXNzaWduICgnbWVzc2FnZScsICR0aGlzLT5MYW5nICgnZXJyb3Jfbm9jYXRlZ29yeScpKTsKCSRzbWFydHktPmFzc2lnbiAoJ2Vycm9yJywgMSk7CgllY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUgKCdhZGRjYXRlZ29yeS50cGwnKTsKCXJldHVybjsKfQoKLy8gZ2V0IHRoZSBjYXRlZ29yeSBpbmZvIGZyb20gdGhlIGRhdGFiYXNlIChmb3IgdGhpcyBjYXRlZ29yeSkKJHF1ZXJ5ID0KICAiU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXggKCkuCiAgIm1vZHVsZV91cGxvYWRzX2NhdGVnb3JpZXMgV0hFUkUgdXBsb2FkX2NhdGVnb3J5X2lkID0gPyI7CiRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSAoJHF1ZXJ5LCBhcnJheSgkcGFyYW1zWydjYXRlZ29yeV9pZCddKSk7CmlmICghJGRicmVzdWx0KSB7Cgkkc21hcnR5LT5hc3NpZ24gKCdtZXNzYWdlJywgJHRoaXMtPkxhbmcgKCdlcnJvcl9kYmVycm9yJykpOwoJJHNtYXJ0eS0+YXNzaWduICgnZXJyb3InLCAxKTsKCWVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSAoJ2FkZGNhdGVnb3J5LnRwbCcpOwoJcmV0dXJuOwp9CiRyb3cgPSAkZGJyZXN1bHQtPkZldGNoUm93ICgpOwppZiAoISRyb3cpIHsKCSRzbWFydHktPmFzc2lnbiAoJ21lc3NhZ2UnLCAkdGhpcy0+TGFuZyAoJ2Vycm9yX2RiZXJyb3InKSk7Cgkkc21hcnR5LT5hc3NpZ24gKCdlcnJvcicsIDEpOwoJZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlICgnYWRkY2F0ZWdvcnkudHBsJyk7CglyZXR1cm47Cn0KCmlmKCAkcm93Wyd1cGxvYWRfY2F0ZWdvcnlfZGZsdHVzZXJwZXJtcyddICE9ICcnICkgewoJJHJvd1sndXBsb2FkX2NhdGVnb3J5X2RmbHR1c2VycGVybXMnXSA9IGV4cGxvZGUoJywnLCRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9kZmx0dXNlcnBlcm1zJ10pOwp9CgovLyBwb3B1bGF0ZSB0aGUgdGVtcGxhdGUKJHNtYXJ0eS0+YXNzaWduICgic3RhcnRmb3JtIiwkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0ICgkaWQsICdkb19lZGl0Y2F0ZWdvcnknLCAkcmV0dXJuaWQsJ3Bvc3QnLCcnLGZhbHNlLCcnLCRwYXJhbXMpKTsKJHNtYXJ0eS0+YXNzaWduICgnZW5kZm9ybScsICR0aGlzLT5DcmVhdGVGb3JtRW5kICgpKTsKJHNtYXJ0eS0+YXNzaWduKCdjYXRlZ29yeV9pZCcsJHBhcmFtc1snY2F0ZWdvcnlfaWQnXSk7CiRzbWFydHktPmFzc2lnbignZGF0YScsJHJvdyk7Cgokc21hcnR5LT5hc3NpZ24gKCdzdWJtaXQnLCR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCAoJGlkLCAnc3VibWl0JywgJHRoaXMtPkxhbmcoJ3N1Ym1pdCcpKSk7CiRzbWFydHktPmFzc2lnbiAoJ2NhbmNlbCcsJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0ICgkaWQsICdjYW5jZWwnLCAkdGhpcy0+TGFuZygnY2FuY2VsJykpKTsgICAgCgokYWRkdGV4dF90aHVtYm5haWxzID0gJ3RpdGxlPSInLiR0aGlzLT5MYW5nKCd0aXRsZV9jcmVhdGVfdGh1bWJuYWlscycpLiciJzsKJHNtYXJ0eS0+YXNzaWduICgndGh1bWJuYWlscycsCgkJCQkJCQkJICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCggJGlkLCAndGh1bWJuYWlscycsIAoJCQkJCQkJCQkJCQkJCQkJCQkJCQkgJHRoaXMtPkxhbmcoJ2NyZWF0ZV90aHVtYm5haWxzJyksCgkJCQkJCQkJCQkJCQkJCQkJCQkJCSAkYWRkdGV4dF90aHVtYm5haWxzICkpOwoKJHNtYXJ0eS0+YXNzaWduICgnaGlkZGVuJywKCQkgICAgICAgJHRoaXMtPkNyZWF0ZUlucHV0SGlkZGVuICgkaWQsICdjYXRlZ29yeV9pZCcsJHBhcmFtc1snY2F0ZWdvcnlfaWQnXSkpOwoKJGZldXNlcnMgPSAkdGhpcy0+R2V0TW9kdWxlSW5zdGFuY2UoJ0Zyb250RW5kVXNlcnMnKTsKaWYoICRmZXVzZXJzICkgewoJLy8gZ2V0IGEgbGlzdCBvZiB0aGUgZ3JvdXBzIGluIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZQoJJGdyb3VwcyA9ICRmZXVzZXJzLT5HZXRHcm91cExpc3QoKTsKCSRzbWFydHktPmFzc2lnbignZmV1X2dyb3VwcycsYXJyYXlfZmxpcCgkZ3JvdXBzKSk7Cgkkc2VsZ3JvdXBzID0gYXJyYXkoKTsKCWlmKCBjb3VudCgkZ3JvdXBzKSA+IDAgKSB7CgkJJHNlbGdyb3VwcyA9IGFycmF5KCk7CgkJaWYoIGlzc2V0KCRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9ncm91cHMnXSkgJiYgJHJvd1sndXBsb2FkX2NhdGVnb3J5X2dyb3VwcyddICE9ICcnICkgewoJCQkkc2VsZ3JvdXBzID0gZXhwbG9kZSgnLCcsJHJvd1sndXBsb2FkX2NhdGVnb3J5X2dyb3VwcyddKTsKCQl9CgkJJHNtYXJ0eS0+YXNzaWduKCdncm91cGxpc3QnLCRzZWxncm91cHMpOwoJfQp9CiAgICAKZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlICgnYWRkY2F0ZWdvcnkudHBsJyk7CgovLyBFT0YKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.editupload.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLWZpbGUtc3R5bGU6bGludXg7IHRhYi13aWR0aDoyOyBpbmRlbnQtdGFicy1tb2RlOnQ7IGMtYmFzaWMtb2Zmc2V0OiAyOyAtKi0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojIFZlcnNpb246IDEuMy4wLWJldGExLCBjYWxndXkxMDAwCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOgkvL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KaWYoICFpc3NldCgkZ0NtcykgKSBleGl0OwppZiggISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01hbmFnZSBVcGxvYWRzJykgJiYgISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ1VwbG9hZCBGaWxlcyB0byBVcGxvYWRzJykpIHJldHVybjsKCi8vIGNoZWNrIHRoaW5ncyBvdXQKaWYgKCFpc3NldCAoJHBhcmFtc1sndXBsb2FkX2lkJ10pKSB7Cgkkc21hcnR5LT5hc3NpZ24gKCdtZXNzYWdlJywgJHRoaXMtPkxhbmcgKCdlcnJvcl9ub2lkJykpOwoJJHNtYXJ0eS0+YXNzaWduICgnZXJyb3InLCAxKTsKCWVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSAoJ2VkaXR1cGxvYWQudHBsJyk7CglyZXR1cm47Cn0KCi8vIGdldCB0aGUgaW5mbyBmcm9tIHRoZSBkYXRhYmFzZSAoZm9yIHRoaXMgZmlsZSkKJHJvdyA9ICR0aGlzLT5HZXRVcGxvYWREZXRhaWxzKCRwYXJhbXNbJ3VwbG9hZF9pZCddKTsKaWYgKCEkcm93KSB7Cgkkc21hcnR5LT5hc3NpZ24gKCdtZXNzYWdlJywgJHRoaXMtPkxhbmcgKCdlcnJvcl9kYmVycm9yJykpOwoJJHNtYXJ0eS0+YXNzaWduICgnZXJyb3InLCAxKTsKCWVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSAoJ2VkaXR1cGxvYWQudHBsJyk7CglyZXR1cm47Cn0KaWYoIGlzc2V0KCRyb3dbJ3VwbG9hZF91c2VycGVybXMnXSkgJiYgJHJvd1sndXBsb2FkX3VzZXJwZXJtcyddICkgewoJJHJvd1sndXBsb2FkX3VzZXJwZXJtcyddID0gZXhwbG9kZSgnLCcsJHJvd1sndXBsb2FkX3VzZXJwZXJtcyddKTsKfQoKaWYoIGlzc2V0KCRwYXJhbXNbJ2NhdGVnb3J5X2lkJ10pICkgewoJJHNlbF9jYXRlZ29yeSA9IChpbnQpJHJvd1sndXBsb2FkX2NhdGVnb3J5X2lkJ107Cn0gZWxzZSB7Cgkkc2VsX2NhdGVnb3J5ID0gKGludCkkcGFyYW1zWydjYXRlZ29yeV9pZCddOwp9CmlmKCBpc3NldCgkcGFyYW1zWydpbnB1dF9tb3ZlY2F0ZWdvcnknXSkgKSB7Cgkkc2VsX2NhdGVnb3J5ID0gKGludCkkcGFyYW1zWydpbnB1dF9tb3ZlY2F0ZWdvcnknXTsKfQoKaWYoIGlzc2V0KCRwYXJhbXNbJ2NhbmNlbCddKSApIHsKCSRwYXJtcyA9IGFycmF5KCk7CglpZiggaXNzZXQoJHBhcmFtc1snY2F0ZWdvcnlfaWQnXSkgKSAkcGFybXNbJ2N1cmNhdGVnb3J5J10gPSAkcGFyYW1zWydjYXRlZ29yeV9pZCddOwoJJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkLCAnZmlsZXMnLCAkcGFybXMpOwp9CmVsc2UgaWYoIGlzc2V0KCRwYXJhbXNbJ3JlcGxhY2UnXSkgKSB7CgkvLyByZS11cGxvYWQgZXhpc3RpbmcgZmlsZS4uLiBidXQgd2UncmUgbm90IGdvbm5hIHRvdWNoIHRoZQoJLy8gb3RoZXIgaW5mbyAobGlrZSBhdXRob3IuLi4sIG9yIHRoZSBmaWVsZHMpLgoJJGZpbGVzX2tleSA9ICRpZC4ncmVwbGFjZV9maWxlJzsKCWlmKCAhaXNzZXQoJF9GSUxFU1skZmlsZXNfa2V5XSkgfHwgKCRfRklMRVNbJGZpbGVzX2tleV1bJ25hbWUnXSA9PSAnJykgfHwKCQkJKCRfRklMRVNbJGZpbGVzX2tleV1bJ3NpemUnXSA9PSAwKSB8fCAoJF9GSUxFU1skZmlsZXNfa2V5XVsnZXJyb3InXSAhPSAwICkgKSB7CgkJJHRoaXMtPlNldEVycm9yKCR0aGlzLT5MYW5nKCdlcnJvcl9ub2ZpbGVzdXBsb2FkZWQnKSk7CgkJdW5zZXQoJHBhcmFtc1sncmVwbGFjZSddKTsKCQkkdGhpcy0+Q0dSZWRpcmVjdCgkaWQsJ2VkaXR1cGxvYWQnLCRyZXR1cm5pZCwkcGFyYW1zKTsKCX0KCgkvLyBtYWtlIHN1cmUgaXQncyBhbiBhbGxvd2VkIGZpbGUgdHlwZQoJJG5ld2ZpbGVleHRlbnNpb24gPSBzdHJ0b2xvd2VyKHN0cnJjaHIoJF9GSUxFU1skZmlsZXNfa2V5XVsnbmFtZSddLCcuJykpOwoJaWYoICEkdGhpcy0+X2lzVmFsaWRGaWxlbmFtZSgkX0ZJTEVTWyRmaWxlc19rZXldWyduYW1lJ10pICkgewoJCSR0aGlzLT5TZXRFcnJvcigkdGhpcy0+TGFuZygnZXJyb3JfaW52YWxpZHVwbG9hZGZpbGVuYW1lJywkX0ZJTEVTWyRmaWxlc19rZXldWyduYW1lJ10pKTsKCQl1bnNldCgkcGFyYW1zWydyZXBsYWNlJ10pOwoJCSR0aGlzLT5DR1JlZGlyZWN0KCRpZCwnZWRpdHVwbG9hZCcsJHJldHVybmlkLCRwYXJhbXMpOwoJfQoKCS8vIGFuZCB0aGUgb2xkIGNhdGVnb3J5CgkkcXVlcnkgPSAiU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfY2F0ZWdvcmllcyBXSEVSRSB1cGxvYWRfY2F0ZWdvcnlfaWQgPSA/IjsKCSRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHF1ZXJ5LCBhcnJheSggJHJvd1sndXBsb2FkX2NhdGVnb3J5X2lkJ10gKSApOwoJJGNhdDJyb3cgPSAkZGJyZXN1bHQtPkZldGNoUm93KCk7CglpZiggISRjYXQycm93ICkgewoJCSR0aGlzLT5TZXRFcnJvcigkdGhpcy0+TGFuZygnZXJyb3JfZGJlcnJvcicpKTsKCQl1bnNldCgkcGFyYW1zWydyZXBsYWNlJ10pOwoJCSR0aGlzLT5DR1JlZGlyZWN0KCRpZCwnZWRpdHVwbG9hZCcsJHJldHVybmlkLCRwYXJhbXMpOwoJfQoKCSRmcm9tZmlsZSA9ICR0aGlzLT5fdXBsb2FkUGF0aCggJGNhdDJyb3dbJ3VwbG9hZF9jYXRlZ29yeV9wYXRoJ10sIHRyaW0oJHJvd1sndXBsb2FkX25hbWUnXSkgKTsKCSRmaWxlZXh0ZW5zaW9uID0gc3RydG9sb3dlcihzdHJyY2hyKCRmcm9tZmlsZSwnLicpKTsKCWlmKCAkZmlsZWV4dGVuc2lvbiAhPSAkbmV3ZmlsZWV4dGVuc2lvbiApIHsKCQkvLyB1aG0sIHlvdSBjYW4ndCByZXBsYWNlIGEgZmlsZSBvZiBhIGRpZmZlcmVudCB0eXBlCgkJJHRoaXMtPlNldEVycm9yKCR0aGlzLT5MYW5nKCdlcnJvcl9yZXBsYWNlX21pc21hdGNoZWRfZmlsZWV4dCcpKTsKCQl1bnNldCgkcGFyYW1zWydyZXBsYWNlJ10pOwoJCSR0aGlzLT5DR1JlZGlyZWN0KCRpZCwnZWRpdHVwbG9hZCcsJHJldHVybmlkLCRwYXJhbXMpOwoJfQoKCS8vIHdlJ3JlIGFsbCBnb29kIHRvIGdvLgoJaWYoIGZpbGVfZXhpc3RzKCRmcm9tZmlsZSkgKSB7CgkJQHVubGluaygkZnJvbWZpbGUpOwoJfQoJY21zX21vdmVfdXBsb2FkZWRfZmlsZSggJF9GSUxFU1skZmlsZXNfa2V5XVsndG1wX25hbWUnXSwkZnJvbWZpbGUgKTsKCgkvLyBub3csIGlmIGl0J3MgYW4gaW1hZ2UgZmlsZSwgd2UgbWF5IHdhbm5hIHJlLWNyZWF0ZSB0aGUgdGh1bWJuYWlsCgkkdGh1bWJfZXh0X2FyciA9IGV4cGxvZGUoIiwiLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdhdXRvdGh1bWJuYWlsX2V4dGVuc2lvbnMnKSk7Cglmb3JlYWNoKCAkdGh1bWJfZXh0X2FyciBhcyAkdGh1bWJfZXh0ICkgewoJCWlmKCAnLicuJHRodW1iX2V4dCAhPSAkZmlsZWV4dGVuc2lvbiApIGNvbnRpbnVlOwoKCQkvLyBpdCdzIGFuIGltYWdlIGZpbGUuCgoJCS8vIGRlbGV0ZSBhbnkgcHJldmlvdXMgdGh1bWJuYWlsCgkJJGNhdHBhdGggPSAkY2F0MnJvd1sndXBsb2FkX2NhdGVnb3J5X3BhdGgnXTsKCQlpZiggIWVtcHR5KCRyb3dbJ3VwbG9hZF90aHVtYm5haWwnXSkgKSB7CgkJCSRvbGRmaWxlID0gJHRoaXMtPl91cGxvYWRQYXRoKCRjYXRwYXRoLCRyb3dbJ3VwbG9hZF90aHVtYm5haWwnXSk7CgkJCUB1bmxpbmsoJG9sZGZpbGUpOwoJCX0KCgkJLy8gZ2VuZXJhdGUgbmV3IHRodW1ibmFpbAoJCSR0aHVtYm5hbWUgPSAndGh1bWJfJy4kcm93Wyd1cGxvYWRfbmFtZSddOwoJCSR0aHVtYmZpbGUgPSAkdGhpcy0+X3VwbG9hZFBhdGgoJGNhdHBhdGgsJHRodW1ibmFtZSk7CgkJJHRoaXMtPmltYWdlVHJhbnNmb3JtKCRmcm9tZmlsZSwkdGh1bWJmaWxlLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdhdXRvdGh1bWJuYWlsX3NpemUnKSk7CgoJCS8vIHVwZGF0ZSB0aGUgcmVjb3JkLgoJCSR0aHVtYm5hbWUgPSAndGh1bWJfJy4kcm93Wyd1cGxvYWRfbmFtZSddOwoJCSRxdWVyeSA9ICdVUERBVEUgJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzCiAgICAgICAgICAgICAgU0VUIHVwbG9hZF90aHVtYm5haWwgPSA/CiAgICAgICAgICAgICAgV0hFUkUgdXBsb2FkX2lkID0gPyc7CgkJJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkdGh1bWJuYW1lLCRwYXJhbXNbJ3VwbG9hZF9pZCddKSk7CgkJYnJlYWs7Cgl9Cn0KZWxzZSBpZiggaXNzZXQoJHBhcmFtc1sndGh1bWJuYWlsJ10pICkgewoJLy8gd2UncmUgKHJlKWNyZWF0aW5nIGEgdGh1bWJuYWlsIGZvciB0aGlzIGltYWdlCgkkdG5kaXIgPSAkdGhpcy0+X2NhdGVnb3J5UGF0aCgkY2F0cGF0aCk7CgoJJGZpbGVleHRlbnNpb24gPSBzdHJ0b2xvd2VyKHN0cnJjaHIoJHJvd1sndXBsb2FkX25hbWUnXSwnLicpKTsKCSRkZXN0ID0gJHRuZGlyLkRJUkVDVE9SWV9TRVBBUkFUT1IuJ3RodW1iXycuJHJvd1sndXBsb2FkX25hbWUnXTsKCSR0aHVtYl9leHRfYXJyID0gZXhwbG9kZSgiLCIsJHRoaXMtPkdldFByZWZlcmVuY2UoJ2F1dG90aHVtYm5haWxfZXh0ZW5zaW9ucycpKTsKCWZvcmVhY2goICR0aHVtYl9leHRfYXJyIGFzICR0aHVtYl9leHQgKSB7CgkJaWYoICIuIi4kdGh1bWJfZXh0ID09ICRmaWxlZXh0ZW5zaW9uICkgewoJCQkvLyBkZWxldGUgYW55IHByZXZpb3VzIHRodW1ibmFpbAoJCQlpZiggIWVtcHR5KCRyb3dbJ3VwbG9hZF90aHVtYm5haWwnXSkgKSB7CgkJCQkkb2xkZmlsZSA9ICR0bmRpci5ESVJFQ1RPUllfU0VQQVJBVE9SLid0aHVtYl8nLiRyb3dbJ3VwbG9hZF90aHVtYm5haWwnXTsKCQkJCWlmKCBmaWxlX2V4aXN0cygkb2xkZmlsZSkgKSB7CgkJCQkJQHVubGluaygkb2xkZmlsZSk7CgkJCQl9CgkJCX0KCgkJCS8vIGdlbmVyYXRlIGl0LgoJCQkkdGhpcy0+aW1hZ2VUcmFuc2Zvcm0oJGZyb21maWxlLCRkZXN0LCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdhdXRvdGh1bWJuYWlsX3NpemUnKSk7CgoJCQkvLyB1cGRhdGUgdGhlIHJlY29yZC4KCQkJJHF1ZXJ5ID0gJ1VQREFURSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHMKICAgICAgICAgICAgICAgIFNFVCB1cGxvYWRzX3RodW1uYWlsID0gPwogICAgICAgICAgICAgICAgV0hFUkUgdXBsb2FkX2lkID0gPyc7CgkJCSRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkoJHJvd1sndXBsb2FkX3RodW1ibmFpbCddLCRwYXJhbXNbJ3VwbG9hZF9pZCddKSk7CgkJCWJyZWFrOwoJCX0KCX0KCSR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwgJ2ZpbGVzJywgYXJyYXkoICdjdXJjYXRlZ29yeScgPT4gJHBhcmFtc1snY2F0ZWdvcnlfaWQnXSkgKTsKfQplbHNlIGlmKCBpc3NldCgkcGFyYW1zWydzdWJtaXQnXSkgKSB7CglpZiggJHBhcmFtc1snaW5wdXRfbW92ZWNhdGVnb3J5J10gIT0gJHJvd1sndXBsb2FkX2NhdGVnb3J5X2lkJ10gfHwKCQkJJHBhcmFtc1snaW5wdXRfdXBsb2FkbmFtZSddICE9ICRyb3dbJ3VwbG9hZF9uYW1lJ10gKSB7CgkJLy8gbG9va3MgbGlrZSB3ZSBoYXZlIHRvIG1vdmUgaXQKCQkvLyBnZXQgdGhlIGluZm8gZm9yIHRoZSBuZXcgY2F0ZWdvcnkKCQkkcXVlcnkgPSAiU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfY2F0ZWdvcmllcyBXSEVSRSB1cGxvYWRfY2F0ZWdvcnlfaWQgPSA/IjsKCQkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxdWVyeSwgYXJyYXkoICRwYXJhbXNbJ2lucHV0X21vdmVjYXRlZ29yeSddICkgKTsKCQkkY2F0MXJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKTsKCQlpZiggISRjYXQxcm93ICkgewoJCQkkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UgKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAkdGhpcy0+TGFuZyAoJ2Vycm9yX2RiZXJyb3InKSk7CgkJCXJldHVybjsKCQl9CgoJCWlmKCAkY2F0MXJvd1sndXBsb2FkX2NhdGVnb3J5X3VzZXJwZXJtcyddICYmICRjYXQxcm93Wyd1cGxvYWRfY2F0ZWdvcnlfZGZsdHVzZXJwZXJtcyddICE9ICcnICkgewoJCQlpZiggJHJvd1sndXBsb2FkX3VzZXJwZXJtcyddID09ICcnICkgewoJCQkJLy8gdGhpcyBmaWxlIGRvZXMgbm90IGhhdmUgdXNlciBwZXJtaXNzaW9ucywgYnV0IHRoZSBkZXN0aW5hdGlvbiBjYXRlZ29yeSBkb2VzLgoJCQkJLy8gc28gY29weSB0aGVtIGZyb20gdGhlIGRlc3RpbmF0aW9uIGNhdGVnb3J5LgoJCQkJJHJvd1sndXBsb2FkX3VzZXJwZXJtcyddID0gJGNhdDFyb3dbJ3VwbG9hZF9jYXRlZ29yeV9kZmx0dXNlcnBlcm1zJ107CgkJCX0KCQl9CgoJCS8vIG5vdyB3ZSBjYW4gbW92ZSB0aGUgZmlsZSBmcm9tIGRpcmVjdG9yeSBvbmUgdG8gdHdvLgoJCS8vIGlmIGl0IGRvZXNuJ3QgYWxyZWFkeSBleGlzdCBpbiB0aGUgZGVzdGluYXRpb24gZGlyZWN0b3J5CgkJJGNhdHBhdGggID0gJGNhdDFyb3dbJ3VwbG9hZF9jYXRlZ29yeV9wYXRoJ107CgkJJGZyb21maWxlID0gJHRoaXMtPl91cGxvYWRQYXRoKCAkY2F0MXJvd1sndXBsb2FkX2NhdGVnb3J5X3BhdGgnXSwgdHJpbSgkcm93Wyd1cGxvYWRfbmFtZSddKSApOwoJCSR0b2ZpbGUgICA9ICR0aGlzLT5fdXBsb2FkUGF0aCggJGNhdDFyb3dbJ3VwbG9hZF9jYXRlZ29yeV9wYXRoJ10sIHRyaW0oJHBhcmFtc1snaW5wdXRfdXBsb2FkbmFtZSddKSApOwoKCQkvLyBtb3ZlIHRoZSBmaWxlCgkJaWYoIGZpbGVfZXhpc3RzKCAkdG9maWxlICkgKSB7CgkJCSR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSAoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsICR0aGlzLT5MYW5nICgnZXJyb3JfZmlsZWV4aXN0cycsJHRvZmlsZSkpOwoJCQlyZXR1cm47CgkJfQoJCWlmKCAkZnJvbWZpbGUgIT0gJHRvZmlsZSApIHsKCQkJaWYoICFyZW5hbWUoICRmcm9tZmlsZSwgJHRvZmlsZSApICkgewoJCQkJJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlICgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwgJHRoaXMtPkxhbmcgKCdlcnJvcl9jYW5ub3RyZW5hbWUnKSk7CgkJCQlyZXR1cm47CgkJCX0KCQl9CgoJCS8vIGFuZCBtb3ZlIGFueSB0aHVtYm5haWwKCQlpZiggIWVtcHR5KCRyb3dbJ3VwbG9hZF90aHVtYm5haWwnXSkgKSB7CgkJCSR0bl9mcm9tZmlsZSA9ICR0aGlzLT5fY2F0ZWdvcnlQYXRoKCAkY2F0MnJvd1sndXBsb2FkX2NhdGVnb3J5X3BhdGgnXS5ESVJFQ1RPUllfU0VQQVJBVE9SLgoJCQkJCQkJCQkJCQkJCQkJCQkJCQkgJHJvd1sndXBsb2FkX3RodW1ibmFpbCddICk7CgkJCSR0aHVtYl9leHQgPSBzdHJyY2hyKCRyb3dbJ3VwbG9hZF90aHVtYm5haWwnXSwnLicpOwoJCQkkZm4gPSB0cmltKCRwYXJhbXNbJ2lucHV0X3VwbG9hZG5hbWUnXSk7CgkJCSR0bXAgPSBzdHJycG9zKCRmbiwnLicpOwoJCQlpZiggJHRtcCAhPT0gRkFMU0UgKSB7CgkJCQkkZm4gPSBzdWJzdHIoJGZuLDAsJHRtcCk7CgkJCX0KCQkJJHJvd1sndXBsb2FkX3RodW1ibmFpbCddID0gJ3RodW1iXycuJGZuLiR0aHVtYl9leHQ7CgkJCSRjYXRwYXRoID0gJGNhdDFyb3dbJ3VwbG9hZF9jYXRlZ29yeV9wYXRoJ107CgkJCSR0bl90b2ZpbGUgICA9ICR0aGlzLT5fY2F0ZWdvcnlQYXRoKCAkY2F0cGF0aC5ESVJFQ1RPUllfU0VQQVJBVE9SLiRyb3dbJ3VwbG9hZF90aHVtYm5haWwnXSk7CgkJCS8vIGFuZCByZW5hbWUgdGhlIHRodW1ibmFpbAoJCQlAcmVuYW1lKCAkdG5fZnJvbWZpbGUsICR0bl90b2ZpbGUgKTsKCQl9CgoJCS8vIHNldCB0aGUgbmV3IGNhdGVnb3J5IG5hbWUuCgkJJHJvd1sndXBsb2FkX2NhdGVnb3J5X2lkJ10gPSAkcGFyYW1zWydpbnB1dF9tb3ZlY2F0ZWdvcnknXTsKCX0KCglpZiggaXNzZXQoJHBhcmFtc1snaW5wdXRfdXBsb2FkZGVzYyddKSApIHsKCQkkcm93Wyd1cGxvYWRfZGVzY3JpcHRpb24nXSA9IHRyaW0oJHBhcmFtc1snaW5wdXRfdXBsb2FkZGVzYyddKTsKCX0KCWlmKCAkcGFyYW1zWydpbnB1dF91cGxvYWRuYW1lJ10gIT0gJHJvd1sndXBsb2FkX25hbWUnXSApIHsKCQkkcm93Wyd1cGxvYWRfbmFtZSddID0gdHJpbSgkcGFyYW1zWydpbnB1dF91cGxvYWRuYW1lJ10pOwoJfQoJaWYoICRwYXJhbXNbJ2lucHV0X3VwbG9hZHN1bW1hcnknXSAhPSAkcm93Wyd1cGxvYWRfc3VtbWFyeSddICkgewoJCSRyb3dbJ3VwbG9hZF9zdW1tYXJ5J10gPSB0cmltKCRwYXJhbXNbJ2lucHV0X3VwbG9hZHN1bW1hcnknXSk7Cgl9CglpZiggJHBhcmFtc1snaW5wdXRfdXBsb2FkYXV0aG9yJ10gIT0gJHJvd1sndXBsb2FkX2F1dGhvciddICkgewoJCSRyb3dbJ3VwbG9hZF9hdXRob3InXSA9IHRyaW0oJHBhcmFtc1snaW5wdXRfdXBsb2FkYXV0aG9yJ10pOwoJfQoJaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0X3VzZXJwZXJtc19zZXQnXSkgKSB7CgkJJHJvd1sndXBsb2FkX3VzZXJwZXJtcyddID0gJyc7CgkJaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0X3VzZXJwZXJtcyddKSApIHsKCQkJJHJvd1sndXBsb2FkX3VzZXJwZXJtcyddID0gaW1wbG9kZSgnLCcsJHBhcmFtc1snaW5wdXRfdXNlcnBlcm1zJ10pOwoJCX0KCX0KCgkkcXVlcnkgPSAiVVBEQVRFICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2FkcyAKICAgICAgICAgICAgU0VUIHVwbG9hZF9uYW1lID0gPywgdXBsb2FkX2F1dGhvciA9ID8sCiAgICAgICAgICAgIHVwbG9hZF9zdW1tYXJ5ID0gPywgdXBsb2FkX2Rlc2NyaXB0aW9uID0gPywKICAgICAgICAgICAgdXBsb2FkX2NhdGVnb3J5X2lkID0gPyAsdXBsb2FkX3RodW1ibmFpbCA9ID8sIHVwbG9hZF91c2VycGVybXMgPSA/CiAgICAgICAgICAgIFdIRVJFIHVwbG9hZF9pZCA9ID8iOwoJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcXVlcnksIAoJCQkJCQkJCQkJCQkJCWFycmF5KCAkcm93Wyd1cGxvYWRfbmFtZSddLCAkcm93Wyd1cGxvYWRfYXV0aG9yJ10sICRyb3dbJ3VwbG9hZF9zdW1tYXJ5J10sIAoJCQkJCQkJCQkJCQkJCQkJCSAkcm93Wyd1cGxvYWRfZGVzY3JpcHRpb24nXSwgJHJvd1sndXBsb2FkX2NhdGVnb3J5X2lkJ10sICRyb3dbJ3VwbG9hZF90aHVtYm5haWwnXSwgCgkJCQkJCQkJCQkJCQkJCQkJICRyb3dbJ3VwbG9hZF91c2VycGVybXMnXSwgJHBhcmFtc1sndXBsb2FkX2lkJ10gKSApOwoKCS8vIGRlbGV0ZSBhbnkgZXhpc3RpbmcgY3VzdG9tIGZpZWxkcwoJJHF1ZXJ5ID0gJ0RFTEVURSBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2Fkc19maWVsZHZhbHMgV0hFUkUgdXBsb2FkX2lkID0gPyc7CgkkZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KCRwYXJhbXNbJ3VwbG9hZF9pZCddKSk7CgoJLy8gaGFuZGxlIG5ldyBjdXN0b20gZmllbGQgdmFsdWVzLgoJJGlxdWVyeSA9ICdJTlNFUlQgSU5UTyAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHNfZmllbGR2YWxzIAogICAgICAgICAgICAgICAgICh1cGxvYWRfaWQsIGZsZF9pZCwgdmFsdWUpIFZBTFVFUyAoPyw/LD8pJzsKCWZvcmVhY2goICRwYXJhbXMgYXMgJGtleSA9PiAkdmFsdWUgKSB7CgkJaWYoICFzdGFydHN3aXRoKCRrZXksJ2ZpZWxkXycpICkgewoJCQljb250aW51ZTsKCQl9CgkKCQkkZmllbGRfaWQgPSAoaW50KXN1YnN0cigka2V5LDYpOwoJCWlmKCBpc19hcnJheSggJHZhbHVlICkgKSB7CgkJCSR2YWx1ZSA9IGltcGxvZGUoJywnLCR2YWx1ZSk7CgkJfQoJCSRkYi0+RXhlY3V0ZSgkaXF1ZXJ5LGFycmF5KCRwYXJhbXNbJ3VwbG9hZF9pZCddLCRmaWVsZF9pZCwkdmFsdWUpKTsKCX0KCgkkdGhpcy0+QXVkaXQoJHJvd1sndXBsb2FkX2lkJ10sICR0aGlzLT5HZXROYW1lKCksICdGaWxlIEVkaXRlZCAnLiRyb3dbJ3VwbG9hZF9uYW1lJ10pOwoKCS8vIGFsbG93IG5ldyB0aHVtYm5haWwgdG8gYmUgdXBsb2FkZWQKCSR0bXAgPSAkaWQuJ2lucHV0X25ld3RodW1ibmFpbCc7CglpZiggaXNzZXQoJF9GSUxFU1skdG1wXSkgJiYgIWVtcHR5KCRfRklMRVNbJHRtcF1bJ25hbWUnXSkgJiYKCQkJJF9GSUxFU1skdG1wXVsnc2l6ZSddID4gMCAmJgoJCQkkX0ZJTEVTWyR0bXBdWydlcnJvciddID09IDAgKSB7CgkJJG5hbWUgPSAkcm93Wyd1cGxvYWRfbmFtZSddOwoJCSR0aHVtYl9leHQgPSBzdHJyY2hyKCRfRklMRVNbJHRtcF1bJ25hbWUnXSwnLicpOwoJCSRmaWxlX2V4dCA9IHN0cnJjaHIoJG5hbWUsJy4nKTsKCQkkZm5hbWUgPSBzdWJzdHIoJG5hbWUsMCxzdHJsZW4oJG5hbWUpLXN0cmxlbigkZmlsZV9leHQpKTsKCQkkdGh1bWJfbmFtZSA9ICd0aHVtYl8nLiRmbmFtZS4kdGh1bWJfZXh0OwoJCSR0bl9vbGRmaWxlID0gJHRoaXMtPl9jYXRlZ29yeVBhdGgoICRjYXRwYXRoLkRJUkVDVE9SWV9TRVBBUkFUT1IuJHJvd1sndXBsb2FkX3RodW1ibmFpbCddKTsKCgkJaWYoIGZpbGVfZXhpc3RzKCAkdG5fb2xkZmlsZSApICkgewoJCQlAdW5saW5rKCR0bl9vbGRmaWxlKTsKCQl9CgkJJHRuX25ld2ZpbGUgICA9ICR0aGlzLT5fY2F0ZWdvcnlQYXRoKCAkY2F0cGF0aC5ESVJFQ1RPUllfU0VQQVJBVE9SLiR0aHVtYl9uYW1lKTsKCQlpZiggZmlsZV9leGlzdHMoJHRuX25ld2ZpbGUpICkgewoJCQlAdW5saW5rKCR0bl9uZXdmaWxlKTsKCQl9CgkJY21zX21vdmVfdXBsb2FkZWRfZmlsZSggJF9GSUxFU1skdG1wXVsndG1wX25hbWUnXSwkdG5fbmV3ZmlsZSApOwoKCQkkcXVlcnkgPSAnVVBEQVRFICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2FkcyAKICAgICAgICAgICAgU0VUIHVwbG9hZF90aHVtYm5haWwgPSA/CiAgICAgICAgICAgIFdIRVJFIHVwbG9hZF9pZCA9ID8nOwoJCSRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkoJHRodW1iX25hbWUsJHJvd1sndXBsb2FkX2lkJ10pKTsKCX0KCgkvLyB1cGRhdGUgc2VhcmNoIHdvcmRzLgoJJHNlYXJjaCA9ICR0aGlzLT5HZXRNb2R1bGVJbnN0YW5jZSgnU2VhcmNoJyk7CglpZiggJHNlYXJjaCApIHsKCQkkc3RyID0gJHJvd1sndXBsb2FkX25hbWUnXS4nICcuJHJvd1sndXBsb2FkX2F1dGhvciddLicgJy4kcm93Wyd1cGxvYWRfc3VtbWFyeSddLicgJy4kcm93Wyd1cGxvYWRfZGVzY3JpcHRpb24nXTsKCQkkc2VhcmNoLT5BZGRXb3JkcyggJHRoaXMtPkdldG5hbWUoKSwgJHJvd1sndXBsb2FkX2lkJ10sICd1cGxvYWQnLCAkc3RyKTsKCX0KCgkvLyBkb25lLgoJJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkLCAnZmlsZXMnLCBhcnJheSggJ2N1cmNhdGVnb3J5JyA9PiAkcGFyYW1zWydjYXRlZ29yeV9pZCddKSApOwp9IC8vIHN1Ym1pdAplbHNlIHsKCS8vIG5vdGhpbmcgZWxzZSBoYXBwZW5lZC4uLiBhc3N1bWUgdGhhdCB0aGlzIGlzIGFuIGFqYXh5IHJlcXVlc3Qgb3Igc29tZXRoaW5nIGxpa2UgdGhhdC4KfQoKCi8vIEdldCB0aGUgZmlsZW5hbWUgYW5kIGV4dGVuc2lvbiBvZiB0aGlzIGZpbGUKJGZpbGVleHRlbnNpb24gPSBzdHJ0b2xvd2VyKHN0cnJjaHIoJHJvd1sndXBsb2FkX25hbWUnXSwnLicpKTsKJGNhbl9nZW5fdGh1bWJuYWlsID0gMDsKewogICR0aHVtYl9leHRfYXJyID0gZXhwbG9kZSgiLCIsJHRoaXMtPkdldFByZWZlcmVuY2UoJ2F1dG90aHVtYm5haWxfZXh0ZW5zaW9ucycpKTsKICBmb3JlYWNoKCAkdGh1bWJfZXh0X2FyciBhcyAkdGh1bWJfZXh0ICkgewoJCWlmKCAiLiIuJHRodW1iX2V4dCA9PSAkZmlsZWV4dGVuc2lvbiApIHsKCQkJJGNhbl9nZW5fdGh1bWJuYWlsID0gMTsKCQkJYnJlYWs7CgkJfQoJfQp9CgovLwovLyBwb3B1bGF0ZSB0aGUgdGVtcGxhdGUKLy8KCi8vIGdldCB0aGUgZmV1IGdyb3VwIGxzaXQKJGZldSA9IGNtc191dGlsczo6Z2V0X21vZHVsZSgnRnJvbnRFbmRVc2VycycpOwppZiggaXNfb2JqZWN0KCRmZXUpICkgewoJJGdyb3VwcyA9ICRmZXUtPkdldEdyb3VwTGlzdCgpOwoJaWYoIGlzX2FycmF5KCRncm91cHMpICYmIGNvdW50KCRncm91cHMpICkgewoJCSRzbWFydHktPmFzc2lnbignZmV1X2dyb3VwbGlzdCcsYXJyYXlfZmxpcCgkZ3JvdXBzKSk7Cgl9Cn0KCi8vIGdldCB0aGUgY2F0ZWdvcnkgbGlzdAokY2F0ZWdvcnlsaXN0ID0gYXJyYXkgKCk7CnsKCSRxdWVyeSA9CgkJIlNFTEVDVCAqIEZST00gIi5jbXNfZGJfcHJlZml4ICgpLgoJCSJtb2R1bGVfdXBsb2Fkc19jYXRlZ29yaWVzIE9SREVSIEJZIHVwbG9hZF9jYXRlZ29yeV9uYW1lIEFTQyI7CgkkZGJyZXN1bHQgPSAkZGItPkdldEFycmF5KCRxdWVyeSk7CglpZiggIWlzX2FycmF5KCRkYnJlc3VsdCkgfHwgY291bnQoJGRicmVzdWx0KSA9PSAwICkgewoJCSRzbWFydHktPmFzc2lnbiAoJ2Vycm9yJywgMSk7CgkJJHNtYXJ0eS0+YXNzaWduICgnbWVzc2FnZScsICR0aGlzLT5MYW5nICgnZXJyb3Jfbm9jYXRlZ29yaWVzJykpOwoJfQoJZWxzZSB7CgkJLy8gdGhpcyBjb3VsZCBwcm9iYWJseSBiZSBkb25lIHdpdGggYSBmb3JfZWFjaCwgYnV0IHdoYXQgdGhlIGhlbGwKCQlmb3JlYWNoKCAkZGJyZXN1bHQgYXMgJGNhdHJvdyApIHsKCQkJaWYoICRjYXRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9kZmx0dXNlcnBlcm1zJ10gICE9ICcnICkgewoJCQkJJGNhdHJvd1sndXBsb2FkX2NhdGVnb3J5X2RmbHR1c2VycGVybXMnXSA9IGV4cGxvZGUoJywnLCRjYXRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9kZmx0dXNlcnBlcm1zJ10pOwoJCQl9CgkJCWlmKCAkc2VsX2NhdGVnb3J5ID09ICRjYXRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9pZCddICkgewoJCQkJJHNtYXJ0eS0+YXNzaWduKCdjYXRlZ29yeV9pbmZvJywkY2F0cm93KTsKCQkJfQoJCQkkY2F0ZWdvcnlsaXN0WyRjYXRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9uYW1lJ11dID0gJGNhdHJvd1sndXBsb2FkX2NhdGVnb3J5X2lkJ107CgkJfQoJfQp9CgovLyBnZXQgY3VzdG9tIGZpZWxkIGluZm8uCiRmaWVsZHMgPSBhcnJheSgpOwp7CiAgJHF1ZXJ5ID0gJ1NFTEVDVCAqIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzX2ZpZWxkZGVmcyBPUkRFUiBCWSBpb3JkZXInOwogICR0ZmllbGRzID0gJGRiLT5HZXRBcnJheSgkcXVlcnkpOwoKCSRxdWVyeSA9ICdTRUxFQ1QgKiBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2Fkc19maWVsZHZhbHMgV0hFUkUgdXBsb2FkX2lkID0gPyc7CgkkdG1wID0gJGRiLT5HZXRBcnJheSgkcXVlcnksYXJyYXkoJHBhcmFtc1sndXBsb2FkX2lkJ10pKTsKCSR0dmFscyA9IGNnZV9hcnJheTo6dG9faGFzaCgkdG1wLCdmbGRfaWQnKTsKCiAgZm9yKCAkaSA9IDA7ICRpIDwgY291bnQoJHRmaWVsZHMpOyAkaSsrICkgewoJCSR0ZmllbGRzWyRpXVsnYXR0cmliJ10gPSB1bnNlcmlhbGl6ZSgkdGZpZWxkc1skaV1bJ2F0dHJpYnMnXSk7CgkJdW5zZXQoJHRmaWVsZHNbJGldWydhdHRyaWJzJ10pOwoJCSR0ZmllbGRzWyRpXVsndmFsdWUnXSA9ICcnOwoJCWlmKCBpc19hcnJheSgkdHZhbHMpICYmIGlzc2V0KCR0dmFsc1skdGZpZWxkc1skaV1bJ2lkJ11dKSApIHsKCQkJJHRmaWVsZHNbJGldWyd2YWx1ZSddID0gJHR2YWxzWyR0ZmllbGRzWyRpXVsnaWQnXV1bJ3ZhbHVlJ107CgkJfQoKCQlzd2l0Y2goJHRmaWVsZHNbJGldWyd0eXBlJ10pIHsKCQljYXNlICd0ZXh0YXJlYSc6CgkJCSR0ZmllbGRzWyRpXVsnaW5wdXQnXSA9IAoJCQkJJHRoaXMtPkNyZWF0ZVRleHRBcmVhKGlzc2V0KCR0ZmllbGRzWyRpXVsnYXR0cmliJ11bJ3VzZXd5c2l3eWcnXSkgJiYgJHRmaWVsZHNbJGldWydhdHRyaWInXVsndXNld3lzaXd5ZyddID09IDEgJiYKCQkJCQkJCQkJCQkJCQkJJHRoaXMtPkdldFByZWZlcmVuY2UoJ2FsbG93X2NvbW1lbnRfd3lzaXd5ZycsMCksCgkJCQkJCQkJCQkJCQkJCSRpZCwKCQkJCQkJCQkJCQkJCQkJJHRmaWVsZHNbJGldWyd2YWx1ZSddLAoJCQkJCQkJCQkJCQkJCQknZmllbGRfJy4kdGZpZWxkc1skaV1bJ2lkJ10pOwoJCQlicmVhazsKCQljYXNlICdkcm9wZG93bic6CgkJY2FzZSAnbXVsdGlzZWxlY3QnOgoJCQlpZiggaXNzZXQoJHRmaWVsZHNbJGldWydhdHRyaWInXVsnb3B0aW9ucyddKSApIHsKCQkJCSR0bXAgPSBleHBsb2RlKCJcbiIsJHRmaWVsZHNbJGldWydhdHRyaWInXVsnb3B0aW9ucyddKTsKCQkJCSR0bXAyID0gYXJyYXkoKTsKCQkJCWZvcmVhY2goICR0bXAgYXMgJG9uZSApIHsKCQkJCQkka2V5ID0gJHZhbHVlID0gJG9uZTsKCQkJCQlpZiggc3RycG9zKCRvbmUsJz0nKSAhPT0gRkFMU0UgKQoJCQkJCQlsaXN0KCRrZXksJHZhbHVlKSA9IGV4cGxvZGUoJz0nLHRyaW0oJG9uZSksMik7CgkJCQkJJHRtcDJbdHJpbSgkdmFsdWUpXSA9IHRyaW0oJGtleSk7CgkJCQl9CgkJCQkkdGZpZWxkc1skaV1bJ2F0dHJpYiddWydvcHRpb25zJ10gPSAkdG1wMjsKCQkJCSR0ZmllbGRzWyRpXVsndmFsdWUnXSA9IGNnZV9hcnJheTo6c21hcnRfZXhwbG9kZSgkdGZpZWxkc1skaV1bJ3ZhbHVlJ10pOwoJCQl9CgkJCWJyZWFrOwoJCX0KCgkJJGZpZWxkc1skdGZpZWxkc1skaV1bJ2lkJ11dID0gJHRmaWVsZHNbJGldOwoJfQp9Cgokc21hcnR5LT5hc3NpZ24oJ3VwbG9hZF9pbmZvJywkcm93KTsKJHNtYXJ0eS0+YXNzaWduICgic3RhcnRmb3JtIiwkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0ICgkaWQsICdlZGl0dXBsb2FkJywgJHJldHVybmlkLCAncG9zdCcsICdtdWx0aXBhcnQvZm9ybS1kYXRhJykpOwovLyB0b2RvIGNoZWNrIHRoaXMgdG8gc2VlIGlmIHRoZXJlIGFyZSBzcGFjZXMgaW4gdGhlIG5hbWUKJGFkZHRleHRfdGh1bWJuYWlsID0gJ3RpdGxlPSInLiR0aGlzLT5MYW5nKCd0aXRsZV9jcmVhdGVfdGh1bWJuYWlsJykuJyInOwokc21hcnR5LT5hc3NpZ24gKCd0aHVtYm5haWwnLCR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCAoJGlkLCAndGh1bWJuYWlsJywkdGhpcy0+TGFuZygnY3JlYXRlX3RodW1ibmFpbCcpLCRhZGR0ZXh0X3RodW1ibmFpbCkpOwokc21hcnR5LT5hc3NpZ24gKCdzdWJtaXQnLCR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCAoJGlkLCAnc3VibWl0JywgJHRoaXMtPkxhbmcoJ3N1Ym1pdCcpKSk7CiRzbWFydHktPmFzc2lnbiAoJ2NhbmNlbCcsJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0ICgkaWQsICdjYW5jZWwnLCAkdGhpcy0+TGFuZygnY2FuY2VsJykpKTsKJHNtYXJ0eS0+YXNzaWduICgnZW5kZm9ybScsICR0aGlzLT5DcmVhdGVGb3JtRW5kICgpKTsKaWYoIGNvdW50KCRmaWVsZHMpICkgewoJJHNtYXJ0eS0+YXNzaWduKCdmaWVsZHMnLCRmaWVsZHMpOwp9Cgokc21hcnR5LT5hc3NpZ24gKCd0aXRsZScsICR0aGlzLT5MYW5nICgnZWRpdHVwbG9hZCcpKTsgICAgCiRzbWFydHktPmFzc2lnbiAoJ3Byb21wdF91cGxvYWRuYW1lJywgJHRoaXMtPkxhbmcoJ25hbWUnKSk7CiRzbWFydHktPmFzc2lnbiAoJ2lucHV0X3VwbG9hZG5hbWUnLCR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCdpbnB1dF91cGxvYWRuYW1lJywkcm93Wyd1cGxvYWRfbmFtZSddLCA1MCwgMjU1ICkpOwovLyBhbmQgdGhlIGNhdGVnb3J5IGluZm8gZm9yIHRoaXMgY2F0ZWdvcnkKJGNhdHBhdGggPSAkdGhpcy0+Z2V0Q2F0ZWdvcnlQYXRoRnJvbUlEKCRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9pZCddKTsKLy8gdGh1bWJuYWlsPwokdG5maWxlID0gJHRoaXMtPl9jYXRlZ29yeVBhdGgoICRjYXRwYXRoLkRJUkVDVE9SWV9TRVBBUkFUT1IuJHJvd1sndXBsb2FkX3RodW1ibmFpbCddICk7CiRjb25maWcgPSAkZ0Ntcy0+R2V0Q29uZmlnKCk7CmlmKCBmaWxlX2V4aXN0cyggJHRuZmlsZSApICkgewoJJHRudXJsID0gJGNvbmZpZ1sndXBsb2Fkc191cmwnXS4iLyIuJGNhdHBhdGguJy8nLiRyb3dbJ3VwbG9hZF90aHVtYm5haWwnXTsKCSRzbWFydHktPmFzc2lnbiAoJ3Byb21wdF90aHVtYm5haWwnLCAkdGhpcy0+TGFuZygndGh1bWJuYWlsJykuJzonKTsKCSRzbWFydHktPmFzc2lnbiAoJ3Byb21wdF9uZXd0aHVtYm5haWwnLCAkdGhpcy0+TGFuZygnbmV3dGh1bWJuYWlsJykuJzonKTsKCSRzbWFydHktPmFzc2lnbiggJ2lucHV0X25ld3RodW1ibmFpbCcsJHRoaXMtPkNyZWF0ZUZpbGVVcGxvYWRJbnB1dCgkaWQsJ2lucHV0X25ld3RodW1ibmFpbCcsJycsNTApICk7Cgkkc21hcnR5LT5hc3NpZ24oJ3RodW1iX3VybCcsJHRudXJsKTsKCSRzbWFydHktPmFzc2lnbiAoJ3BpY190aHVtYm5haWwnLCAnPGltZyBzcmM9IicuJHRudXJsLiciIGJvcmRlcj0iMCIvPicpOwp9CiRzbWFydHktPmFzc2lnbigndmlld2xpbmsnLAoJCQkJCQkJCSR0aGlzLT5DcmVhdGVJbWFnZUxpbmsoJGlkLCdnZXRtaW1lZmlsZScsJHJldHVybmlkLCR0aGlzLT5MYW5nKCd2aWV3JyksJ2ljb25zL3N5c3RlbS92aWV3LmdpZicsCgkJCQkJCQkJCQkJCQkJCQkJCQkgYXJyYXkoJ3VwbG9hZF9pZCc9PiRyb3dbJ3VwbG9hZF9pZCddKSwnJywnJyxUUlVFLEZBTFNFLCd0YXJnZXQ9Il9ibGFuayInKSk7CiRyYXdmaWxlID0gJHRoaXMtPl9jYXRlZ29yeVBhdGgoICRjYXRwYXRoLkRJUkVDVE9SWV9TRVBBUkFUT1IuJHJvd1sndXBsb2FkX25hbWUnXSApOwokc21hcnR5LT5hc3NpZ24gKCduYW1lbWVzc2FnZScsICR0aGlzLT5MYW5nKCdyZW5hbWVtZXNzYWdlJykpOwokc21hcnR5LT5hc3NpZ24gKCdwcm9tcHRfdXBsb2FkZGF0ZScsICR0aGlzLT5MYW5nKCdkYXRldXBsb2FkZWQnKSk7CiRzbWFydHktPmFzc2lnbiAoJ2RhdGFfdXBsb2FkZGF0ZScsICRyb3dbJ3VwbG9hZF9kYXRlJ10pOwokc21hcnR5LT5hc3NpZ24gKCdwcm9tcHRfdXBsb2Fkc2l6ZScsICR0aGlzLT5MYW5nKCdzaXpla2InKSk7CiRzbWFydHktPmFzc2lnbiAoJ2RhdGFfdXBsb2Fkc2l6ZScsIGludHZhbCgkcm93Wyd1cGxvYWRfc2l6ZSddIC8gMTAyNC4wICsgMC41KSk7CiRzbWFydHktPmFzc2lnbiAoJ3Byb21wdF91cGxvYWRhdXRob3InLCAkdGhpcy0+TGFuZygnYXV0aG9yJykpOwokc21hcnR5LT5hc3NpZ24gKCdpbnB1dF91cGxvYWRhdXRob3InLCAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwgJ2lucHV0X3VwbG9hZGF1dGhvcicsJHJvd1sndXBsb2FkX2F1dGhvciddLCAyMCwgMjU1KSk7CiRzbWFydHktPmFzc2lnbiAoJ3Byb21wdF9tb3ZlY2F0ZWdvcnknLCAkdGhpcy0+TGFuZyAoJ3Byb21wdF9jYXRlZ29yeW5hbWUnKSk7CiRzbWFydHktPmFzc2lnbignY2F0ZWdvcnlsaXN0JyxhcnJheV9mbGlwKCRjYXRlZ29yeWxpc3QpKTsKJHNtYXJ0eS0+YXNzaWduKCdzZWxfY2F0ZWdvcnknLCRzZWxfY2F0ZWdvcnkpOwokc21hcnR5LT5hc3NpZ24gKCdwYXRobWVzc2FnZScsICR0aGlzLT5MYW5nKCdwYXRobWVzc2FnZScpKTsKCiRzbWFydHktPmFzc2lnbiAoJ3Byb21wdF91cGxvYWRzdW1tYXJ5JywgJHRoaXMtPkxhbmcgKCdzdW1tYXJ5JykpOwokc21hcnR5LT5hc3NpZ24gKCdpbnB1dF91cGxvYWRzdW1tYXJ5JywkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0ICgkaWQsICdpbnB1dF91cGxvYWRzdW1tYXJ5Jywkcm93Wyd1cGxvYWRfc3VtbWFyeSddLCA4MCwgMjU1KSk7Cgokc21hcnR5LT5hc3NpZ24gKCdwcm9tcHRfdXBsb2FkZGVzYycsICR0aGlzLT5MYW5nICgnZGVzY3JpcHRpb24nKSk7CiRzbWFydHktPmFzc2lnbiAoJ2lucHV0X3VwbG9hZGRlc2MnLCR0aGlzLT5DcmVhdGVUZXh0QXJlYSAoZmFsc2UsICRpZCwgJHJvd1sndXBsb2FkX2Rlc2NyaXB0aW9uJ10sICdpbnB1dF91cGxvYWRkZXNjJyApKTsKCiRzbWFydHktPmFzc2lnbiAoJ2hpZGRlbicsCgkJICR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbiAoJGlkLCAndXBsb2FkX2lkJywkcGFyYW1zWyd1cGxvYWRfaWQnXSkuCgkJICR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbiAoJGlkLCAnY2F0ZWdvcnlfaWQnLCRwYXJhbXNbJ2NhdGVnb3J5X2lkJ10pKTsKICAgIAovLyBwb3B1bGF0ZSB0aGUgcm93cyBvZiBkb3dubG9hZCBpbmZvcm1hdGlvbgokcXVlcnkgPSAiU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfZG93bmxvYWRzIFdIRVJFIGZpbGVfaWQgPSA/IE9SREVSIEJZIGRvd25sb2FkX2RhdGUgREVTQyBMSU1JVCAxMDAiOwokZGJyZXN1bHQgPSAkZGItPkdldEFycmF5KCAkcXVlcnksIGFycmF5KCAkcGFyYW1zWyd1cGxvYWRfaWQnXSApICk7Cgokc21hcnR5LT5hc3NpZ24oJ2RhdGV0ZXh0JywgJHRoaXMtPkxhbmcoJ2RhdGUnKSk7CiRzbWFydHktPmFzc2lnbignaXB0ZXh0JywgJHRoaXMtPkxhbmcoJ2lwX2FkZHJlc3MnKSk7CiRzbWFydHktPmFzc2lnbigndXNlcnRleHQnLCAkdGhpcy0+TGFuZygndXNlcm5hbWUnKSk7CiRyb3dhcnJheSA9IGFycmF5KCk7CiRyb3djbGFzcyA9ICdyb3cxJzsKZm9yZWFjaCggJGRicmVzdWx0IGFzICRyb3cgKSB7Cgkkb25lcm93ID0gbmV3IHN0ZENsYXNzKCk7Cgkkb25lcm93LT5kYXRlID0gJHJvd1snZG93bmxvYWRfZGF0ZSddOwoJJG9uZXJvdy0+aXAgICA9ICRyb3dbJ2Rvd25sb2FkX2lwJ107Cgkkb25lcm93LT51c2VyID0gJHJvd1snZG93bmxvYWRfdXNlciddOwoJJG9uZXJvdy0+cm93Y2xhc3MgPSAkcm93Y2xhc3M7CQkJICAgICAKCgkkcm93YXJyYXlbXSA9ICRvbmVyb3c7CgkoJHJvd2NsYXNzID09ICJyb3cxIiA/ICRyb3djbGFzcyA9ICJyb3cyIiA6ICRyb3djbGFzcyA9ICJyb3cxIik7Cn0KCiRzbWFydHktPmFzc2lnbiAoJ2l0ZW1zJywgJHJvd2FycmF5KTsKJHNtYXJ0eS0+YXNzaWduICgnaXRlbWNvdW50JywgY291bnQoJHJvd2FycmF5KSk7CgplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUgKCdlZGl0dXBsb2FkLnRwbCcpOwoKLy8gRU9GCj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/action.getfile.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojIEF1dGhvcjogUm9iZXJ0IENhbXBiZWxsIDxyb2JAdGVjaGNvbS5keW5kbnMub3JnPgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDoJLy93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKCiRwYWdlaWQgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZ2V0ZmlsZV9yZXN1bHRwYWdlJyk7CmlmKCAkcGFnZWlkIDw9IDAgfHwgJHJldHVybmlkIDw9IDAgKSB7CiAgJGNvbnRlbnRvcHMgPSAkZ0Ntcy0+R2V0Q29udGVudE9wZXJhdGlvbnMoKTsKICAkcGFnZWlkID0gJGNvbnRlbnRvcHMtPkdldERlZmF1bHRDb250ZW50KCk7Cn0KaWYoICRwYWdlaWQgPj0gMCApIHsKICAkcmV0dXJuaWQgPSAkcGFnZWlkOwp9CgoKaWYoICFpc3NldCgkcGFyYW1zWyd1cGxvYWRfaWQnXSkgJiYgIWlzc2V0KCRwYXJhbXNbJ3VybF9rZXknXSkgKSB7CiAgY2dlX3JlZGlyZWN0OjpyZWRpcmVjdF93aXRoX2Vycm9yKCRyZXR1cm5pZCwkdGhpcy0+TGFuZyAoJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcycsJ3VwbG9hZF9pZCcpKTsKICByZXR1cm47Cn0KCgovLyBnZXQgdGhlIGlkCiRmaWxlX2RldGFpbHMgPSAnJzsKJGZpbGVfaWQgPSAnJzsKJHVybF9rZXkgPSAnJzsKaWYoIGlzc2V0KCRwYXJhbXNbJ3VwbG9hZF9pZCddKSApIHsKICAkZmlsZV9pZCA9IChpbnQpJHBhcmFtc1sndXBsb2FkX2lkJ107Cn0KZWxzZSBpZiggaXNzZXQoJHBhcmFtc1sndXJsX2tleSddKSApIHsKICAkdXJsX2tleSA9IHRyaW0oJHBhcmFtc1sndXJsX2tleSddKTsKICAkbm93ID0gJGRiLT5EYlRpbWVTdGFtcCh0aW1lKCkpOwogICRxdWVyeSA9ICdTRUxFQ1QgKiBGUk9NICcuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc190aW1lbGltaXQKICAgICAgICAgICAgV0hFUkUgdXJsX2tleSA9ID8gQU5EICgoZXhwaXJlcyA+ICRub3cpIE9SIChleHBpcmVzIElTIE5VTEwpKSI7CiAgJHRpbWVsaW1pdF9kZXRhaWxzID0gJGRiLT5HZXRSb3coJHF1ZXJ5LGFycmF5KCR1cmxfa2V5KSk7CgogIGlmKCAhJHRpbWVsaW1pdF9kZXRhaWxzICkgewogICAgLy8gYmFkIG9yIGV4cGlyZWQga2V5CiAgICBjZ2VfcmVkaXJlY3Q6OnJlZGlyZWN0X3dpdGhfZXJyb3IoJHJldHVybmlkLCR0aGlzLT5MYW5nICgnZXJyb3JfaW52YWxpZF9rZXknKSk7CiAgICByZXR1cm47CiAgfQoKICAkcXVlcnkgPSAnU0VMRUNUIGNvdW50KGZpbGVfaWQpIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzX2Rvd25sb2FkcwogICAgICAgICAgICBXSEVSRSBmaWxlX2lkID0gPyBBTkQgdXJsX2tleSA9ID8nOwogICRjb3VudCA9ICRkYi0+R2V0T25lKCRxdWVyeSxhcnJheSgkdGltZWxpbWl0X2RldGFpbHNbJ3VwbG9hZF9pZCddLCR1cmxfa2V5KSk7CiAgaWYoICRjb3VudCA+PSAkdGltZWxpbWl0X2RldGFpbHNbJ21heF9kb3dubG9hZHMnXSAmJiAkdGltZWxpbWl0X2RldGFpbHNbJ21heF9kb3dubG9hZHMnXSA+IDAgKSB7CiAgICAvLyBiYWQgb3IgZXhwaXJlZCBrZXkKICAgIGNnZV9yZWRpcmVjdDo6cmVkaXJlY3Rfd2l0aF9lcnJvcigkcmV0dXJuaWQsJHRoaXMtPkxhbmcgKCdlcnJvcl9pbnZhbGlkX2tleScpKTsKICAgIHJldHVybjsKICB9CiAgJGZpbGVfaWQgPSAkdGltZWxpbWl0X2RldGFpbHNbJ3VwbG9hZF9pZCddOwp9CgokZmlsZV9kZXRhaWxzID0gJHRoaXMtPkdldFVwbG9hZERldGFpbHMoICRmaWxlX2lkLCAkcmV0dXJuaWQgKTsKLy8gZ2V0IHRoZSBkZXRhaWxzCmlmKCAhJGZpbGVfZGV0YWlsc1sndXBsb2FkX25hbWUnXSApIHsKICAvLyB0b2RvIGRpc3BsYXkgZXJyb3IKICBjZ2VfcmVkaXJlY3Q6OnJlZGlyZWN0X3dpdGhfZXJyb3IoJHJldHVybmlkLCR0aGlzLT5MYW5nKCAnZXJyb3JfZmlsZW5vdGZvdW5kJywgJGZpbGVfaWQgKSApOwogIHJldHVybjsKfQoKJGNhdGVnb3J5X2RldGFpbHMgPSAkdGhpcy0+X2dldFVwbG9hZENhdGVnb3J5RGV0YWlscyggJGZpbGVfZGV0YWlsc1sndXBsb2FkX2NhdGVnb3J5X2lkJ10gKTsKJHBhdGggPSAnLyc7CmlmKCAhJGNhdGVnb3J5X2RldGFpbHNbJ3VwbG9hZF9jYXRlZ29yeV9wYXRoJ10gKSB7CiAgLy8gdG9kbyBkaXNwbGF5IGVycm9yCiAgY2dlX3JlZGlyZWN0OjpyZWRpcmVjdF93aXRoX2Vycm9yKCRyZXR1cm5pZCwkdGhpcy0+TGFuZyggJ2Vycm9yX2RiZXJyb3InICkgKTsKICByZXR1cm47Cn0KICAgIAokZmlsZSA9ICR0aGlzLT5fdXBsb2FkUGF0aCggJGNhdGVnb3J5X2RldGFpbHNbJ3VwbG9hZF9jYXRlZ29yeV9wYXRoJ10sCgkJCSAgICBzdHJfcmVwbGFjZSggYXJyYXkoJyAnLCclMjAnKSxhcnJheSgnXycsJ18nKSwkZmlsZV9kZXRhaWxzWyd1cGxvYWRfbmFtZSddICkgKTsKaWYoICFmaWxlX2V4aXN0cyggJGZpbGUgKSB8fCAhaXNfcmVhZGFibGUoICRmaWxlICkgKSB7CiAgY2dlX3JlZGlyZWN0OjpyZWRpcmVjdF93aXRoX2Vycm9yKCRyZXR1cm5pZCwkdGhpcy0+TGFuZyggJ2Vycm9yX2ZpbGVub3Rmb3VuZCcsICRmaWxlICkgKTsKICByZXR1cm47Cn0KCgovLyBjaGVjayBmb3IgcGVybWlzc2lvbiwgaWYgRkVVIG1vZHVsZSBleGlzdHMsIGFuZCB0aGUgdXBsb2FkcyBncm91cGxpc3QgaXMKLy8gbm90IG51bGwsIGFuZCB0aGUgcmV0dXJuaWQgaXMgbm90IGVtcHR5ICh3ZSdyZSBvbiB0aGUgZnJvbnRlbmQpCiRyZXN1bHQgPSAkdGhpcy0+X0NoZWNrRG93bmxvYWRTZWN1cml0eSgkY2F0ZWdvcnlfZGV0YWlscyk7CmlmKCAhJHJlc3VsdCApIHsKICBhdWRpdCgkZmlsZV9kZXRhaWxzWyd1cGxvYWRfaWQnXSwkdGhpcy0+R2V0TmFtZSgpLCdBdHRlbXB0IHRvIGFjY2VzcyBmaWxlICcuJGZpbGUuJyAgd2l0aG91dCBwcm9wZXIgcGVybWlzc2lvbnMnKTsKICBjZ2VfcmVkaXJlY3Q6OnJlZGlyZWN0X3dpdGhfZXJyb3IoJHJldHVybmlkLCR0aGlzLT5MYW5nKCdlcnJvcl9wZXJtaXNzaW9uZGVuaWVkJykgKTsKICByZXR1cm47Cn0KaWYoICEkdGhpcy0+X0NoZWNrRmlsZURvd25sb2FkU2VjdXJpdHkoJGZpbGVfZGV0YWlscykgKSB7CiAgYXVkaXQoJGZpbGVfZGV0YWlsc1sndXBsb2FkX2lkJ10sJHRoaXMtPkdldE5hbWUoKSwnQXR0ZW1wdCB0byBhY2Nlc3MgZmlsZSAnLiRmaWxlLicgIHdpdGhvdXQgcHJvcGVyIHBlcm1pc3Npb25zJyk7CiAgcmV0dXJuOwp9CgovLyB0dXJuIG9mZiB6bGliIGNvbXByZXNzaW9uIAppZihpbmlfZ2V0KCd6bGliLm91dHB1dF9jb21wcmVzc2lvbicpKSB7CiAgaW5pX3NldCgnemxpYi5vdXRwdXRfY29tcHJlc3Npb24nLCAnT2ZmJyk7Cn0KCmlmKCFpbmlfZ2V0X2Jvb2xlYW4oJ3NhZmVfbW9kZScpKSB7CiAgc2V0X3RpbWVfbGltaXQoMCk7Cn0KCiRjaHVua3NpemUgPSBpbnR2YWwoJHRoaXMtPkdldFByZWZlcmVuY2UoJ2Rvd25sb2FkX2NodW5rc2l6ZScsOCkpICogMTAyNDsKJGJuID0gYmFzZW5hbWUoJGZpbGUpOwoKJGhhbmRsZXJzID0gb2JfbGlzdF9oYW5kbGVycygpOyAKZm9yICgkY250ID0gMDsgJGNudCA8IHNpemVvZigkaGFuZGxlcnMpOyAkY250KyspIHsgb2JfZW5kX2NsZWFuKCk7IH0KaGVhZGVyKCdQcmFnbWE6IHB1YmxpYycpOwpoZWFkZXIoJ0V4cGlyZXM6IDAnKTsKaGVhZGVyKCdDYWNoZS1Db250cm9sOiBtdXN0LXJldmFsaWRhdGUsIHBvc3QtY2hlY2s9MCwgcHJlLWNoZWNrPTAnKTsKaGVhZGVyKCdDYWNoZS1Db250cm9sOiBwcml2YXRlJyxmYWxzZSk7CmhlYWRlcignQ29udGVudC1EZXNjcmlwdGlvbjogRmlsZSBUcmFuc2ZlcicpOwpoZWFkZXIoJ0NvbnRlbnQtVHlwZTogYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtJyk7CmhlYWRlcigiQ29udGVudC1EaXNwb3NpdGlvbjogYXR0YWNobWVudDsgZmlsZW5hbWU9XCIkYm5cIiIgKTsKaGVhZGVyKCdDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiBiaW5hcnknKTsKaGVhZGVyKCdDb250ZW50LUxlbmd0aDogJyAuIGZpbGVzaXplKCRmaWxlKSk7CgokaGFuZGxlPWZvcGVuKCRmaWxlLCdyYicpOwokY29udGVudHMgPSAnJzsKZG8gewogICRkYXRhID0gZnJlYWQoJGhhbmRsZSwkY2h1bmtzaXplKTsKICBpZiggc3RybGVuKCRkYXRhKSA9PSAwICkgYnJlYWs7CiAgcHJpbnQoJGRhdGEpOyAKfSB3aGlsZSh0cnVlKTsKZmNsb3NlKCRoYW5kbGUpOwoKLy8gbm93IHRvIGFkZCB0aGUgZG93bmxvYWQgc2h0dWZmIHRvIHRoZSBkYXRhYmFzZQovLyBpZiB3ZSBhcmUgbm90IGV4Y2x1ZGluZyB0aGlzIHN1Ym5ldAokc3VibmV0cyA9IHNwbGl0KCIsIiwkdGhpcy0+R2V0UHJlZmVyZW5jZSgic3VibmV0X2V4Y2x1c2lvbiIpKTsKJHRlc3QgPSAwOwpmb3JlYWNoKCRzdWJuZXRzIGFzICRzdWJuZXQpIHsKICAkdGVzdCA9ICR0aGlzLT5fdGVzdGlwKCAkc3VibmV0LCBnZXRlbnYoIlJFTU9URV9BRERSIiApICk7CiAgaWYoICR0ZXN0ICkgewogICAgLy8gZG9uJ3QgYWxsb3cgYW55IG1vcmUgcHJvY2Vzc2luZwogICAgZXhpdCgpOwogIH0KfQoKLy8gZ2V0IGEgbmV3IHZhbHVlIGZyb20gdGhlIHNlcXVlbmNlIGRhdGFiYXNlCiRuZXdpZCA9ICRkYi0+R2VuSUQoIGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfZG93bmxvYWRzX3NlcSIgKTsKCi8vIGdldCBhIHVzZXJuYW1lCiR1c2VybmFtZSA9ICdhbm9ueW1vdXMnOwokZmV1c2VycyA9ICR0aGlzLT5HZXRNb2R1bGVJbnN0YW5jZSgnRnJvbnRFbmRVc2VycycpOwppZiggJGZldXNlcnMgKSB7CiAgJG5hbWUgPSAkZmV1c2Vycy0+TG9nZ2VkaW5OYW1lKCk7CiAgaWYoICRuYW1lICE9ICIiICkgewogICAgJHVzZXJuYW1lID0gJG5hbWU7CiAgfQp9CgovLyBpbnNlcnQgdGhlIGRvd25sb2FkIHJlY29yZAokcXVlcnkgPSAiSU5TRVJUIElOVE8gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX2Rvd25sb2FkcyAKICAgICAgICAgICAoZG93bmxvYWRfaWQsIGZpbGVfaWQsIGRvd25sb2FkX2RhdGUsIGRvd25sb2FkX2lwLCBkb3dubG9hZF91c2VyLCB1cmxfa2V5KQogICAgICAgICAgVkFMVUVTICg/LD8sPyw/LD8sPykiOwokZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxdWVyeSwgCgkJCSAgYXJyYXkoICRuZXdpZCwgCgkJCQkgJGZpbGVfaWQsIAoJCQkJIHRyaW0oJGRiLT5EQlRpbWVTdGFtcCh0aW1lKCkpLCInIiksCgkJCQkgZ2V0ZW52KCJSRU1PVEVfQUREUiIpLCAKCQkJCSAkdXNlcm5hbWUsCgkJCQkgJHVybF9rZXkpICk7Ci8qIEkgd291bGQgbm9ybWFsbHkgZGlzcGxheSBhbiBlcnJvciBtZXNzYWdlLCBidXQgZG9uJ3Qgd2FudCBwZW9wbGUgdG8gbmVjZXNzYXJpbHkga25vdyBJIGFtIHRyYWNraW5nIHRoZW0gKi8KJHRoaXMtPkF1ZGl0KCAwLCAkdGhpcy0+bGFuZygnZnJpZW5kbHluYW1lJyksCgkgICAgICAkdGhpcy0+bGFuZygnZG93bmxvYWRlZCcsICRmaWxlKSApOwoKLy8gc2VuZCBhbiBldmVudAokcGFybXMgPSBhcnJheSgpOwokcGFybXNbJ2lkJ10gPSAkZmlsZV9pZDsKJHBhcm1zWyduYW1lJ10gPSAkZmlsZTsKJHBhcm1zWydpcCddID0gZ2V0ZW52KCJSRU1PVEVfQUREUiIpOwokdGhpcy0+U2VuZEV2ZW50KCAnT25Eb3dubG9hZCcsICRwYXJtcyApOwoKLy8gZG9uJ3QgYWxsb3cgYW55IG1vcmUgcHJvY2Vzc2luZwpleGl0KCk7Cj8+]]></data>
	</file>
	<file>
	  <filename>/action.getimage.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojIEF1dGhvcjogUm9iZXJ0IENhbXBiZWxsIDxyb2JAdGVjaGNvbS5keW5kbnMub3JnPgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDoJLy93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKCi8vIE5vdGU6IFRoaXMgZmlsZSBpcyB2aXJ0dWFsbHkgaWRlbnRpY2FsIHRvIGFjdGlvbi5nZXRmaWxlLnBocAovLyBhbmQgdGhpcyBzaG91bGQgYmUgb3B0aW1pemVkCgppZiggIWlzc2V0KCAkcGFyYW1zWyd1cGxvYWRfaWQnXSApICkgewogIC8vIHRvZG8sIGFkZCBzb21ldGhpbmcgdG8gYW4gZXJyb3IgbG9nCiAgcmV0dXJuOwp9CgovLyBnZXQgdGhlIGlkCiRmaWxlX2lkID0gJHBhcmFtc1sndXBsb2FkX2lkJ107CgovLyBnZXQgdGhlIGRldGFpbHMKJGZpbGVfZGV0YWlscyA9ICR0aGlzLT5HZXRVcGxvYWREZXRhaWxzKCAkZmlsZV9pZCApOwoKaWYoICEkZmlsZV9kZXRhaWxzWyd1cGxvYWRfbmFtZSddICkgewogIC8vIHRvZG8gZGlzcGxheSBlcnJvcgogIHJldHVybjsKfQokY2F0ZWdvcnlfZGV0YWlscyA9ICR0aGlzLT5fZ2V0VXBsb2FkQ2F0ZWdvcnlEZXRhaWxzKCAkZmlsZV9kZXRhaWxzWyd1cGxvYWRfY2F0ZWdvcnlfaWQnXSApOwokcGF0aCA9ICcvJzsKaWYoICEkY2F0ZWdvcnlfZGV0YWlsc1sndXBsb2FkX2NhdGVnb3J5X3BhdGgnXSApIHsKICAvLyB0b2RvIGRpc3BsYXkgZXJyb3IKICByZXR1cm47Cn0KCiRmaWxlID0gJHRoaXMtPl91cGxvYWRQYXRoKCAkY2F0ZWdvcnlfZGV0YWlsc1sndXBsb2FkX2NhdGVnb3J5X3BhdGgnXSwKCQkJICAgIHN0cl9yZXBsYWNlKCBhcnJheSgnICcsJyUyMCcpLGFycmF5KCdfJywnXycpLCRmaWxlX2RldGFpbHNbJ3VwbG9hZF9uYW1lJ10gKSApOwoKaWYoICFmaWxlX2V4aXN0cyggJGZpbGUgKSB8fCAhaXNfcmVhZGFibGUoICRmaWxlICkgKSB7CiAgLy8gdG9kbyBkaXNwbGF5IGVycm9yCiAgcmV0dXJuOwp9CgovLyBjaGVjayBmb3IgcGVybWlzc2lvbiwgaWYgRkVVIG1vZHVsZSBleGlzdHMsIGFuZCB0aGUgdXBsb2FkcyBncm91cGxpc3QgaXMKLy8gbm90IG51bGwsIGFuZCB0aGUgcmV0dXJuaWQgaXMgbm90IGVtcHR5ICh3ZSdyZSBvbiB0aGUgZnJvbnRlbmQpCiRyZXN1bHQgPSAkdGhpcy0+X0NoZWNrRG93bmxvYWRTZWN1cml0eSgkY2F0ZWdvcnlfZGV0YWlscyk7CmlmKCAhJHJlc3VsdCApIHsKICAvLyB0b2RvLCBkaXNwbGF5IGVycm9yIHNvbWVob3cKICBhdWRpdCgkZmlsZV9kZXRhaWxzWyd1cGxvYWRfaWQnXSwkdGhpcy0+R2V0TmFtZSgpLCdBdHRlbXB0IHRvIGFjY2VzcyBmaWxlICcuJGZpbGUuJyAgd2l0aG91dCBwcm9wZXIgcGVybWlzc2lvbnMnKTsKICByZXR1cm47Cn0KaWYoICEkdGhpcy0+X0NoZWNrRmlsZURvd25sb2FkU2VjdXJpdHkoJGZpbGVfZGV0YWlscykgKSB7CiAgYXVkaXQoJGZpbGVfZGV0YWlsc1sndXBsb2FkX2lkJ10sJHRoaXMtPkdldE5hbWUoKSwnQXR0ZW1wdCB0byBhY2Nlc3MgZmlsZSAnLiRmaWxlLicgIHdpdGhvdXQgcHJvcGVyIHBlcm1pc3Npb25zJyk7CiAgcmV0dXJuOwp9CgovLyB0dXJuIG9mZiB6bGliIGNvbXByZXNzaW9uIAppZihAaW5pX2dldCgnemxpYi5vdXRwdXRfY29tcHJlc3Npb24nKSkgewogIEBpbmlfc2V0KCd6bGliLm91dHB1dF9jb21wcmVzc2lvbicsICdPZmYnKTsKfQoKaWYoIUBpbmlfZ2V0X2Jvb2xlYW4oJ3NhZmVfbW9kZScpKSB7CiAgQHNldF90aW1lX2xpbWl0KDApOwp9CgokY2h1bmtzaXplID0gaW50dmFsKCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdkb3dubG9hZF9jaHVua3NpemUnLDgpKSAqIDEwMjQ7CiRoYW5kbGVycyA9IG9iX2xpc3RfaGFuZGxlcnMoKTsgCmZvciAoJGNudCA9IDA7ICRjbnQgPCBzaXplb2YoJGhhbmRsZXJzKTsgJGNudCsrKSB7IG9iX2VuZF9jbGVhbigpOyB9CgpoZWFkZXIoJ0NvbnRlbnQtVHlwZTogaW1hZ2UvKicpOwpoZWFkZXIoJ0NvbnRlbnQtTGVuZ3RoOiAnIC4gZmlsZXNpemUoJGZpbGUpKTsKJGhhbmRsZT1mb3BlbigkZmlsZSwncmInKTsKJGNvbnRlbnRzID0gJyc7CmRvIHsKICAkZGF0YSA9IGZyZWFkKCRoYW5kbGUsJGNodW5rc2l6ZSk7CiAgaWYoIHN0cmxlbigkZGF0YSkgPT0gMCApIGJyZWFrOwogIHByaW50KCRkYXRhKTsgCn0gd2hpbGUodHJ1ZSk7CmZjbG9zZSgkaGFuZGxlKTsKCi8vIG5vdyB0byBhZGQgdGhlIGRvd25sb2FkIHNodHVmZiB0byB0aGUgZGF0YWJhc2UKLy8gaWYgd2UgYXJlIG5vdCBleGNsdWRpbmcgdGhpcyBzdWJuZXQKJHN1Ym5ldHMgPSBzcGxpdCgiLCIsJHRoaXMtPkdldFByZWZlcmVuY2UoInN1Ym5ldF9leGNsdXNpb24iKSk7CiR0ZXN0ID0gMDsKZm9yZWFjaCgkc3VibmV0cyBhcyAkc3VibmV0KSB7CiAgJHRlc3QgPSAkdGhpcy0+X3Rlc3RpcCggJHN1Ym5ldCwgZ2V0ZW52KCJSRU1PVEVfQUREUiIgKSApOwogIGlmKCAkdGVzdCApIHsKICAgIC8vIGRvbid0IGFsbG93IGFueSBtb3JlIHByb2Nlc3NpbmcKICAgIGV4aXQoKTsKICB9Cn0KCi8vIGdldCBhIG5ldyB2YWx1ZSBmcm9tIHRoZSBzZXF1ZW5jZSBkYXRhYmFzZQokZGIgPSAkdGhpcy0+R2V0RGIoKTsKJG5ld2lkID0gJGRiLT5HZW5JRCggY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc19kb3dubG9hZHNfc2VxIiApOwoKLy8gZ2V0IGEgdXNlcm5hbWUKJHVzZXJuYW1lID0gJ3Vua25vd24nOwokZmV1c2VycyA9ICR0aGlzLT5HZXRNb2R1bGVJbnN0YW5jZSgnRnJvbnRFbmRVc2VycycpOwppZiggJGZldXNlcnMgKSB7CiAgJG5hbWUgPSAkZmV1c2Vycy0+TG9nZ2VkaW5OYW1lKCk7CiAgaWYoICRuYW1lICE9ICIiICkgewogICAgJHVzZXJuYW1lID0gJG5hbWU7CiAgfQp9CgovLyBpbnNlcnQgdGhlIGRvd25sb2FkIHJlY29yZAokcXVlcnkgPSAiSU5TRVJUIElOVE8gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX2Rvd25sb2FkcyBWQUxVRVMgKD8sPyw/LD8sPykiOwokZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxdWVyeSwgYXJyYXkoICRuZXdpZCwgJGZpbGVfaWQsIHRyaW0oJGRiLT5EQlRpbWVTdGFtcCh0aW1lKCkpLCInIiksCgkJCQkJIGdldGVudigiUkVNT1RFX0FERFIiKSwgJHVzZXJuYW1lKSApOwoKLyogSSB3b3VsZCBub3JtYWxseSBkaXNwbGF5IGFuIGVycm9yIG1lc3NhZ2UsIGJ1dCBkb24ndCB3YW50IHBlb3BsZSB0byBuZWNlc3NhcmlseSBrbm93IEkgYW0gdHJhY2tpbmcgdGhlbSAqLwokdGhpcy0+QXVkaXQoIDAsICR0aGlzLT5sYW5nKCdmcmllbmRseW5hbWUnKSwgJHRoaXMtPmxhbmcoJ2Rvd25sb2FkZWQnLCAkZmlsZSkgKTsKCi8vIGRvbid0IGFsbG93IGFueSBtb3JlIHByb2Nlc3NpbmcKZXhpdCgpOwoKLy8gRU9GCj8+]]></data>
	</file>
	<file>
	  <filename>/action.getmimefile.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLWZpbGUtc3R5bGU6bGludXg7IHRhYi13aWR0aDoyOyBpbmRlbnQtdGFicy1tb2RlOnQ7IGMtYmFzaWMtb2Zmc2V0OiAyOyAtKi0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojIFZlcnNpb246IDEuMy4wLWJldGExLCBjYWxndXkxMDAwCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOgkvL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KaWYoICFpc3NldCgkZ0NtcykgKSBleGl0OwppZiggISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01hbmFnZSBVcGxvYWRzJykgJiYgISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ1VwbG9hZCBGaWxlcyB0byBVcGxvYWRzJykpIHsKCXJldHVybjsKfQoKLy8KLy8gaW5pdGlhbGl6YXRpb24KLy8KJHVwbG9hZF9pZCA9ICcnOwoKLy8KLy8gc2V0dXAKLy8KaWYoIGlzc2V0KCRwYXJhbXNbJ3VwbG9hZF9pZCddKSApIHsKCSR1cGxvYWRfaWQgPSAoaW50KSRwYXJhbXNbJ3VwbG9hZF9pZCddOwp9CgppZiggJHVwbG9hZF9pZCA8PSAwICkgewoJZGllKCdlcnJvciAuLi4gbm8gdXBsb2FkJyk7Cn0KCiRxdWVyeSA9ICdTRUxFQ1QgKiBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2FkcyBXSEVSRSB1cGxvYWRfaWQgPSA/JzsKJHJvdyA9ICRkYi0+R2V0Um93KCRxdWVyeSxhcnJheSgkdXBsb2FkX2lkKSk7CmlmKCAhaXNfYXJyYXkoJHJvdykgKSB7CglkaWUoJ2Vycm9yIC4uLiBjb3VsZCBub3QgZmluZCB1cGxvYWQnKTsKfQoKJGNhdHBhdGggPSAkdGhpcy0+Z2V0Q2F0ZWdvcnlQYXRoRnJvbUlEKCRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9pZCddKTsKJGZuID0gJHRoaXMtPl9jYXRlZ29yeVBhdGgoJGNhdHBhdGguRElSRUNUT1JZX1NFUEFSQVRPUi4kcm93Wyd1cGxvYWRfbmFtZSddKTsKaWYoICFmaWxlX2V4aXN0cygkZm4pICkgewoJZGllKCdlcnJvciAuLi4gZmlsZSBub3QgZm91bmQgJy4kZm4pOwp9CgokbWltZXR5cGUgPSBjZ2VfdXRpbHM6OmdldF9taW1lX3R5cGUoJGZuKTsKaWYoICEkbWltZXR5cGUgKSAkbWltZXR5cGUgPSAnYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtJzsKaWYoaW5pX2dldCgnemxpYi5vdXRwdXRfY29tcHJlc3Npb24nKSkgewoJaW5pX3NldCgnemxpYi5vdXRwdXRfY29tcHJlc3Npb24nLCAnT2ZmJyk7Cn0KCiRibiA9IGJhc2VuYW1lKCRmbik7CnNldF90aW1lX2xpbWl0KDk5OSk7CiRjaHVua3NpemUgPSBpbnR2YWwoJHRoaXMtPkdldFByZWZlcmVuY2UoJ2Rvd25sb2FkX2NodW5rc2l6ZScsOCkpICogMTAyNDsKJGhhbmRsZXJzID0gb2JfbGlzdF9oYW5kbGVycygpOyAKZm9yICgkY250ID0gMDsgJGNudCA8IHNpemVvZigkaGFuZGxlcnMpOyAkY250KyspIHsgb2JfZW5kX2NsZWFuKCk7IH0KCmhlYWRlcignQ29udGVudC1UeXBlOiAnLiRtaW1ldHlwZSk7CmhlYWRlcigiQ29udGVudC1EaXNwb3NpdGlvbjogaW5saW5lOyBmaWxlbmFtZT1cIiRiblwiIiApOwoKJGhhbmRsZT1mb3BlbigkZm4sJ3JiJyk7CiRjb250ZW50cyA9ICcnOwpkbyB7CiAgJGRhdGEgPSBmcmVhZCgkaGFuZGxlLCRjaHVua3NpemUpOwogIGlmKCBzdHJsZW4oJGRhdGEpID09IDAgKSBicmVhazsKICBwcmludCgkZGF0YSk7IAogfSB3aGlsZSh0cnVlKTsKZmNsb3NlKCRoYW5kbGUpOwpleGl0KCk7CgojCiMgRU9GCiMKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.save_admin_prefs.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIgbW9kdWxlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOgkvL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCmlmICghJHRoaXMtPkNoZWNrUGVybWlzc2lvbiAoJ01vZGlmeSBTaXRlIFByZWZlcmVuY2VzJykpCiAgewogICAgcmV0dXJuOwogIH0KCiR0aGlzLT5TZXRQcmVmZXJlbmNlICgnYXV0b3dhdGVybWFyaycsJHBhcmFtc1snYXV0b3dhdGVybWFyayddKTsKJHRoaXMtPlNldFByZWZlcmVuY2UgKCd2YWxpZF91cGxvYWRleHRlbnNpb25zJywKCQkgICAgICBpc3NldCAoJHBhcmFtc1sndmFsaWRfdXBsb2FkZXh0ZW5zaW9ucyddKSA/CgkJICAgICAgJHBhcmFtc1sndmFsaWRfdXBsb2FkZXh0ZW5zaW9ucyddIDogJzAnKTsKJHRoaXMtPlNldFByZWZlcmVuY2UgKCdzdWJuZXRfZXhjbHVzaW9ucycsCgkJICAgICAgaXNzZXQgKCRwYXJhbXNbJ3N1Ym5ldF9leGNsdXNpb25zJ10pID8KCQkgICAgICAkcGFyYW1zWydzdWJuZXRfZXhjbHVzaW9ucyddIDogJzAnKTsKJHRoaXMtPlNldFByZWZlcmVuY2UgKCdjcmVhdGVfZHVtbXlfaW5kZXhfaHRtbCcsCgkJICAgICAgaXNzZXQgKCRwYXJhbXNbJ2lucHV0X2R1bW15X2luZGV4X2h0bWwnXSkgPwoJCSAgICAgICRwYXJhbXNbJ2lucHV0X2R1bW15X2luZGV4X2h0bWwnXSA6ICcwJyk7CiR0aGlzLT5zZXRQcmVmZXJlbmNlICgnc2VuZF91cGxvYWRfbm90aWZpY2F0aW9uc190bycsCgkJICAgICAgaXNzZXQgKCRwYXJhbXNbJ2VtYWlsX29uX3VwbG9hZCddKSA/CgkJICAgICAgJHBhcmFtc1snZW1haWxfb25fdXBsb2FkJ10gOiAnJyApOyAgICAKJHRoaXMtPlNldFByZWZlcmVuY2UgKCdyZWRpcmVjdF9vbl91cGxvYWQnLAoJCSAgICAgIGlzc2V0ICgkcGFyYW1zWydyZWRpcmVjdF9vbl91cGxvYWQnXSkgPwoJCSAgICAgICRwYXJhbXNbJ3JlZGlyZWN0X29uX3VwbG9hZCddIDogJycgKTsgICAgCiR0aGlzLT5TZXRQcmVmZXJlbmNlICgnYXV0b3RodW1ibmFpbF9leHRlbnNpb25zJywKCQkgICAgICBpc3NldCAoJHBhcmFtc1snYXV0b3RodW1ibmFpbF9leHRlbnNpb25zJ10pID8KCQkgICAgICAkcGFyYW1zWydhdXRvdGh1bWJuYWlsX2V4dGVuc2lvbnMnXSA6ICcnICk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlICgnYXV0b3RodW1ibmFpbF9zaXplJywKCQkgICAgICBpc3NldCAoJHBhcmFtc1snYXV0b3RodW1ibmFpbF9zaXplJ10pID8KCQkgICAgICAkcGFyYW1zWydhdXRvdGh1bWJuYWlsX3NpemUnXSA6ICcnICk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlICgnZG93bmxvYWRfY2h1bmtzaXplJywKCQkgICAgICBpc3NldCAoJHBhcmFtc1snZG93bmxvYWRfY2h1bmtzaXplJ10pID8KCQkgICAgICAkcGFyYW1zWydkb3dubG9hZF9jaHVua3NpemUnXSA6IDggKTsKJHRoaXMtPlNldFByZWZlcmVuY2UgKCdhbGxvd19kZWxldGUnLAoJCSAgICAgIGlzc2V0ICgkcGFyYW1zWydhbGxvd19kZWxldGUnXSkgPyAkcGFyYW1zWydhbGxvd19kZWxldGUnXSA6IDAgKTsKJHRoaXMtPlNldFByZWZlcmVuY2UgKCdyZWRpcmVjdF9vbl9zZW5kZmlsZScsCgkJICAgICAgaXNzZXQgKCRwYXJhbXNbJ3JlZGlyZWN0X29uX3NlbmRmaWxlJ10pID8KCQkgICAgICAkcGFyYW1zWydyZWRpcmVjdF9vbl9zZW5kZmlsZSddIDogJycgKTsgICAgCiR0aGlzLT5TZXRQcmVmZXJlbmNlKCd0aW1lbGltaXRlZF9ob3VycycsKGludCkkcGFyYW1zWyd0aW1lbGltaXRlZF9ob3VycyddKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ3RpbWVsaW1pdGVkX2Rvd25sb2FkcycsKGludCkkcGFyYW1zWyd0aW1lbGltaXRlZF9kb3dubG9hZHMnXSk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdnZXRmaWxlX3Jlc3VsdHBhZ2UnLChpbnQpJHBhcmFtc1snZ2V0ZmlsZV9yZXN1bHRwYWdlJ10pOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgndGltZWxpbWl0ZWRfYXV0b2RlbGV0ZScsKGludCkkcGFyYW1zWyd0aW1lbGltaXRlZF9hdXRvZGVsZXRlJ10pOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgndGltZWxpbWl0ZWRfc3ViamVjdCcsdHJpbSgkcGFyYW1zWyd0aW1lbGltaXRlZF9zdWJqZWN0J10pKTsKCiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdkZWZhdWx0X3NlbmRmaWxlcGFnZScsJHBhcmFtc1snZGVmYXVsdF9zZW5kZmlsZXBhZ2UnXSk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdjYXRlZ29yeV9leHBpcnknLChpbnQpJHBhcmFtc1snY2F0ZWdvcnlfZXhwaXJ5J10pOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnYWxsb3dfdXBsb2FkX3NlbmRmaWxlJywoaW50KSRwYXJhbXNbJ2FsbG93X3VwbG9hZF9zZW5kZmlsZSddKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ2ZyaWVuZGx5bmFtZScsdHJpbSgkcGFyYW1zWydmcmllbmRseW5hbWUnXSkpOwokdGhpcy0+UmVkaXJlY3RUb1RhYiggJGlkLCAnYWRtaW5fcHJlZnMnICk7CgovLyBFT0YKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.sendfile.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLXNldC1zdHlsZTpsaW51eDsgdGFiLXdpZHRoOjI7IGluZGVudC10YWJzLW1vZGU6dDsgYy1iYXNpYy1vZmZzZXQ6IDI7IC0qLQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogVXBsb2FkcyAtPSBhbGxvdyB1c2VycyB0byB1cGxvYWQgc3R1ZmYsIGEgcHNldWRvIGZpbGUgbWFuYWdlciIgbW9kdWxlCiMgQXV0aG9yOiBSb2JlcnQgQ2FtcGJlbGwgPHJvYkB0ZWNoY29tLmR5bmRucy5vcmc+CiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOgkvL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KaWYoICFpc3NldCgkZ0NtcykgKSBleGl0OwppZiggIWlzc2V0KCRwYXJhbXNbJ3VwbG9hZF9pZCddKSApIGV4aXQ7CgovLyBpbml0aWFsaXphdGlvbgokdXBsb2FkX2lkID0gKGludCkkcGFyYW1zWyd1cGxvYWRfaWQnXTsKJHRoZXRlbXBsYXRlID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ2RlZmF1bHRfc2VuZGZpbGVmb3JtJyk7CiRub3RlcyA9ICcnOwokc2VuZHRvID0gJyc7CiRzdWJqZWN0ID0gJyc7CiRlcnJvciA9ICcnOwokbWVzc2FnZSA9ICcnOwoKLy8gc2V0dXAKJHF1ZXJ5ID0gJ1NFTEVDVCAqIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzIFdIRVJFIHVwbG9hZF9pZCA9ID8nOwokdXBsb2FkX2RhdGEgPSAkZGItPkdldFJvdygkcXVlcnksYXJyYXkoJHVwbG9hZF9pZCkpOwoKJGNhdGVnb3J5ID0gJHRoaXMtPl9nZXRVcGxvYWRDYXRlZ29yeURldGFpbHMoICR1cGxvYWRfZGF0YVsndXBsb2FkX2NhdGVnb3J5X2lkJ10gKTsKaWYoICEkdGhpcy0+X0NoZWNrRG93bmxvYWRTZWN1cml0eSgkY2F0ZWdvcnkpICkgewogIGF1ZGl0KCR1cGxvYWRfZGF0YVsndXBsb2FkX2lkJ10sJHRoaXMtPkdldE5hbWUoKSwnQXR0ZW1wdCB0byBhY2Nlc3MgZmlsZSAnLiRmaWxlLicgIHdpdGhvdXQgcHJvcGVyIHBlcm1pc3Npb25zJyk7CgkkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UoICRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAkdGhpcy0+TGFuZygnZXJyb3JfcGVybWlzc2lvbmRlbmllZCcpICk7CiAgcmV0dXJuOwp9CmlmKCAhJHRoaXMtPl9DaGVja0ZpbGVEb3dubG9hZFNlY3VyaXR5KCR1cGxvYWRfZGF0YSkgKSB7CiAgYXVkaXQoJHVwbG9hZF9kYXRhWyd1cGxvYWRfaWQnXSwkdGhpcy0+R2V0TmFtZSgpLCdBdHRlbXB0IHRvIGFjY2VzcyBmaWxlICcuJGZpbGUuJyAgd2l0aG91dCBwcm9wZXIgcGVybWlzc2lvbnMnKTsKCSR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSggJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsICR0aGlzLT5MYW5nKCdlcnJvcl9wZXJtaXNzaW9uZGVuaWVkJykgKTsKICByZXR1cm47Cn0KCmlmKCAhJHVwbG9hZF9kYXRhICkgcmV0dXJuOwokc21hcnR5LT5hc3NpZ24oJ21vZCcsJHRoaXMpOwokc21hcnR5LT5hc3NpZ24oJ2FjdGlvbmlkJywkaWQpOwoKLy8gaGFuZGxlIGZvcm0gZGF0YQppZiggaXNzZXQoJHBhcmFtc1snaW5wdXRfY2FuY2VsJ10pICkgewoJJHRoaXMtPlJlZGlyZWN0Q29udGVudCgkcmV0dXJuaWQpOwp9CmVsc2UgaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0X3N1Ym1pdCddKSApIHsKCSRub3RlcyA9IHRyaW0oJHBhcmFtc1snaW5wdXRfbm90ZXMnXSk7Cgkkc2VuZHRvID0gdHJpbSgkcGFyYW1zWydpbnB1dF9zZW5kdG8nXSk7Cgkkc3ViamVjdCA9IHRyaW0oJHBhcmFtc1snaW5wdXRfc3ViamVjdCddKTsKCSRhZGRyZXNzZXMgPSBhcnJheSgpOwoKCS8vIGNoZWNrIHRoZSBzdWJqZWN0CglpZiggZW1wdHkoJHN1YmplY3QpICkgewoJCSRlcnJvciA9ICR0aGlzLT5MYW5nKCdlcnJvcl9ub3N1YmplY3QnKTsKCX0KCglpZiggZW1wdHkoJGVycm9yKSAmJiBlbXB0eSgkc2VuZHRvKSApIHsKCQkkZXJyb3IgPSAkdGhpcy0+TGFuZygnZXJyb3Jfbm9hZGRyZXNzZXMnKTsKCX0KCglpZiggZW1wdHkoJGVycm9yKSApIHsKCQkkdG1wID0gZXhwbG9kZSgnLCcsJHNlbmR0byk7CgkJaWYoICFjb3VudCgkdG1wKSApIHsKCQkJJGVycm9yID0gJHRoaXMtPkxhbmcoJ2Vycm9yX25vYWRkcmVzc2VzJyk7CgkJfQoJCWVsc2UgewoJCQlmb3IoICRpID0gMDsgJGkgPCBjb3VudCgkdG1wKTsgJGkrKyApIHsKCQkJCSR0MiA9IHRyaW0oJHRtcFskaV0pOwoJCQkJaWYoICFlbXB0eSgkdDIpICkgewoJCQkJCSRhZGRyZXNzZXNbXSA9ICR0MjsKCQkJCX0KCQkJfQoJCQlpZiggIWNvdW50KCRhZGRyZXNzZXMpICkgewoJCQkJJGVycm9yID0gJHRoaXMtPkxhbmcoJ2Vycm9yX25vYWRkcmVzc2VzJyk7CgkJCX0KCQl9Cgl9CgoJLy8gZ290IGFsbCB0aGUgYWRkcmVzc2VzLgoJLy8gbm93IHNlbmQgdGhlIG1haWwuCglpZiggZW1wdHkoJGVycm9yKSApIHsKCQkkY21zbWFpbGVyID0gJHRoaXMtPkdldE1vZHVsZUluc3RhbmNlKCdDTVNNYWlsZXInKTsKCgkJLy8gZ2V0IGV2ZXJ5dGhpbmcgaW50byBzbWFydHkuCgkJJHBhcmFtc1snbm9vdXRwdXQnXSA9IDE7CgkJaW5jbHVkZShkaXJuYW1lKF9fRklMRV9fKS4nL2FjdGlvbi5kZXRhaWwucGhwJyk7CgoJCSRjbXNtYWlsZXItPnJlc2V0KCk7CgkJJGNtc21haWxlci0+U2V0U3ViamVjdCgkc3ViamVjdCk7CgkJJGNtc21haWxlci0+SXNIVE1MKHRydWUpOwoJCWZvcmVhY2goICRhZGRyZXNzZXMgYXMgJG9uZSApIHsKCQkJJGNtc21haWxlci0+QWRkQWRkcmVzcygkb25lKTsKCQl9CgkJJGJvZHkgPSAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlRnJvbURhdGFiYXNlKCd1cGxvYWRfc2VuZGZpbGVycHQnKTsKCQkkY21zbWFpbGVyLT5TZXRCb2R5KCRib2R5KTsKCQkkY21zbWFpbGVyLT5TZW5kKCk7CgoJCS8vIG5vdyB0cnkgdG8gcmVkaXJlY3QgdG8gYSBkaWZmZXJlbnQgcGFnZQoJCSRzdHIgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgncmVkaXJlY3Rfb25fc2VuZGZpbGUnKTsKCQlpZiggJHN0ciAhPSAnJyApIHsKCQkJJHRtcCA9IENvbnRlbnRNYW5hZ2VyOjpHZXRQYWdlSURGcm9tQWxpYXMoJHN0cik7CgkJCWlmKCAkdG1wICkgewoJCQkJJHRoaXMtPlJlZGlyZWN0Q29udGVudCgkdG1wKTsKCQkJCXJldHVybjsKCQkJfQoJCX0KCgkJLy8gcmVkaXJlY3QgaXNuJ3Qgc2V0Li4uIHNvIGRpc3BsYXkgYSBuaWNlIG1lc3NhZ2UuCgkJJG1lc3NhZ2UgPSAkdGhpcy0+TGFuZygnbXNnX2ZpbGVfc2VudCcpOwoJfQp9CgovLyBnaXZlIGV2ZXJ5dGhpbmcgdG8gc21hcnR5CmlmKCAhZW1wdHkoJGVycm9yKSApIHsKCSRzbWFydHktPmFzc2lnbignZXJyb3InLCRlcnJvcik7Cn0KaWYoICFlbXB0eSgkbWVzc2FnZSkgKSB7Cgkkc21hcnR5LT5hc3NpZ24oJ21lc3NhZ2UnLCRtZXNzYWdlKTsKfQokc21hcnR5LT5hc3NpZ24oJ3VwbG9hZF9pbmZvJywkdXBsb2FkX2RhdGEpOwokc21hcnR5LT5hc3NpZ24oJ2Zvcm1zdGFydCcsJHRoaXMtPkNyZWF0ZUZvcm1TdGFydCgkaWQsJ3NlbmRmaWxlJywkcmV0dXJuaWQsJ3Bvc3QnLCcnLGZhbHNlLCcnLCRwYXJhbXMpKTsKJHNtYXJ0eS0+YXNzaWduKCdmb3JtZW5kJywkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsKJHNtYXJ0eS0+YXNzaWduKCdub3RlcycsJG5vdGVzKTsKJHNtYXJ0eS0+YXNzaWduKCdzZW5kdG8nLCRzZW5kdG8pOwokc21hcnR5LT5hc3NpZ24oJ3N1YmplY3QnLCRzdWJqZWN0KTsKCi8vIGRpc3BsYXkgdGhlIHRlbXBsYXRlCmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhYmFzZSgnc2VuZGZpbGVmb3JtXycuJHRoZXRlbXBsYXRlKTsKCiMgRU9GCj8+]]></data>
	</file>
	<file>
	  <filename>/action.upload.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLXNldC1zdHlsZTpsaW51eDsgdGFiLXdpZHRoOjI7IGluZGVudC10YWJzLW1vZGU6dDsgYy1iYXNpYy1vZmZzZXQ6IDI7IC0qLQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogVXBsb2FkcyAtPSBhbGxvdyB1c2VycyB0byB1cGxvYWQgc3R1ZmYsIGEgcHNldWRvIGZpbGUgbWFuYWdlciIgbW9kdWxlCiMgQXV0aG9yOiBSb2JlcnQgQ2FtcGJlbGwgPHJvYkB0ZWNoY29tLmR5bmRucy5vcmc+CiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOgkvL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KaWYoICFpc3NldCgkZ0NtcykgKSBleGl0KCk7CgppZiggIWlzc2V0KCAkcGFyYW1zWydjYXRlZ29yeSddICkgKQoJewoJCS8vIGlmIG1vZGUgb3IgY2F0ZWdvcnkgaXNuJ3Qgc2V0Li4uIHdlIGRvbid0IGRpc3BsYXkgYW55dGhpbmcKCQkkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UgKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLAoJCQkJCQkJCQkJCQkJCQkkdGhpcy0+TGFuZyAoJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcycsJ2NhdGVnb3J5JykpOwoJCXJldHVybjsKCX0KCi8vIGRpc3BsYXkgYSBmb3JtIHRvIGFsbG93IHRoZSB1c2VyIHRvIHVwbG9hZCBhIGZpbGUuLi4uIGJ1dCBtYXkgaGF2ZSB0byBoYXZlIHBlcm1pc3Npb24gZmlyc3QKLy8gaG1tbSwgSSdsbCB0aGluayBhYm91dCB0aGUgcGVybWlzc2lvbiBzdHVmZiBsYXRlci4KJHRlbXBsYXRlID0gJ3VwbG9hZGZvcm1fJy4kdGhpcy0+R2V0UHJlZmVyZW5jZSgnZGVmYXVsdF91cGxvYWRmb3JtJyk7CmlmKCBpc3NldCggJHBhcmFtc1sndGVtcGxhdGUnXSApICkKCXsKCQkkdGVtcGxhdGUgPSAndXBsb2FkZm9ybV8nLiRwYXJhbXNbJ3RlbXBsYXRlJ107Cgl9Cgp7CgkkcXVlcnkgPSAnU0VMRUNUIHVwbG9hZF9jYXRlZ29yeV9pZCBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2Fkc19jYXRlZ29yaWVzCiAgICAgICAgICBXSEVSRSB1cGxvYWRfY2F0ZWdvcnlfbmFtZSA9ID8nOwoJJHRtcCA9ICRkYi0+R2V0T25lKCRxdWVyeSxhcnJheSgkcGFyYW1zWydjYXRlZ29yeSddKSk7CglpZiggISR0bXAgKSAKCQl7CgkJCSR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSAoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsCgkJCQkJCQkJCQkJCQkJCQkkdGhpcy0+TGFuZyAoJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcycsJ2NhdGVnb3J5JykpOwoJCQlyZXR1cm47CgkJfQoJdW5zZXQoJHBhcmFtc1snY2F0ZWdvcnknXSk7CgkkcGFyYW1zWydjYXRlZ29yeV9pZCddID0gJHRtcDsKfQoKaWYoIGlzc2V0KCRwYXJhbXNbJ2tleSddKSApCgl7CgkJJHBhcmFtc1snaW5wdXRfa2V5J10gPSAkcGFyYW1zWydrZXknXTsKCQl1bnNldCgkcGFyYW1zWydrZXknXSk7Cgl9CiRzbWFydHktPmFzc2lnbiAoJ3N0YXJ0Zm9ybScsCgkJCQkJCQkJICR0aGlzLT5DcmVhdGVGb3JtU3RhcnQgKCRpZCwgJ2RvX3VwbG9hZCcsCgkJCQkJCQkJCQkJCQkJCQkJCQkJICRyZXR1cm5pZCwncG9zdCcsIAoJCQkJCQkJCQkJCQkJCQkJCQkJCSAnbXVsdGlwYXJ0L2Zvcm0tZGF0YScsCgkJCQkJCQkJCQkJCQkJCQkJCQkJICRwYXJhbXMpKTsKJHNtYXJ0eS0+YXNzaWduICgncHJvbXB0X3VwbG9hZCcsICR0aGlzLT5MYW5nICgndXBsb2FkJykpOwoKLy8gZ2V0IGN1c3RvbSBmaWVsZCBpbmZvLgokZmllbGRzID0gYXJyYXkoKTsKewogICRxdWVyeSA9ICdTRUxFQ1QgKiBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2Fkc19maWVsZGRlZnMgV0hFUkUgcHVibGljID0gMSBPUkRFUiBCWSBpb3JkZXInOwogICR0ZmllbGRzID0gJGRiLT5HZXRBcnJheSgkcXVlcnkpOwoKCSRxdWVyeSA9ICdTRUxFQ1QgKiBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2Fkc19maWVsZHZhbHMgV0hFUkUgdXBsb2FkX2lkID0gPyc7CgkkdG1wID0gJGRiLT5HZXRBcnJheSgkcXVlcnksYXJyYXkoJHBhcmFtc1sndXBsb2FkX2lkJ10pKTsKCSR0dmFscyA9IGNnZV9hcnJheTo6dG9faGFzaCgkdG1wLCdmbGRfaWQnKTsKCiAgZm9yKCAkaSA9IDA7ICRpIDwgY291bnQoJHRmaWVsZHMpOyAkaSsrICkKICAgIHsKICAgICAgJHRmaWVsZHNbJGldWydhdHRyaWInXSA9IHVuc2VyaWFsaXplKCR0ZmllbGRzWyRpXVsnYXR0cmlicyddKTsKICAgICAgdW5zZXQoJHRmaWVsZHNbJGldWydhdHRyaWJzJ10pOwoJCQkkdGZpZWxkc1skaV1bJ3ZhbHVlJ10gPSAkdHZhbHNbJHRmaWVsZHNbJGldWydpZCddXVsndmFsdWUnXTsKICAgICAgCiAgICAgIHN3aXRjaCgkdGZpZWxkc1skaV1bJ3R5cGUnXSkKCQkJCXsKCQkJCWNhc2UgJ3RleHRhcmVhJzoKCQkJCQkkdGZpZWxkc1skaV1bJ2lucHV0J10gPSAKCQkJCQkJJHRoaXMtPkNyZWF0ZVRleHRBcmVhKGlzc2V0KCR0ZmllbGRzWyRpXVsnYXR0cmliJ11bJ3VzZXd5c2l3eWcnXSkgJiYgJHRmaWVsZHNbJGldWydhdHRyaWInXVsndXNld3lzaXd5ZyddID09IDEgJiYKCQkJCQkJCQkJCQkJCQkJCQkkdGhpcy0+R2V0UHJlZmVyZW5jZSgnYWxsb3dfY29tbWVudF93eXNpd3lnJywwKSwKCQkJCQkJCQkJCQkJCQkJCQkkaWQsCgkJCQkJCQkJCQkJCQkJCQkJJHRmaWVsZHNbJGldWyd2YWx1ZSddLAoJCQkJCQkJCQkJCQkJCQkJCSdmaWVsZF8nLiR0ZmllbGRzWyRpXVsnaWQnXSk7CgkJCQkJYnJlYWs7CgkJCQljYXNlICdkcm9wZG93bic6CgkJCQljYXNlICdtdWx0aXNlbGVjdCc6CgkJCQkJaWYoIGlzc2V0KCR0ZmllbGRzWyRpXVsnYXR0cmliJ11bJ29wdGlvbnMnXSkgKQoJCQkJCQl7CgkJCQkJCQkkdG1wID0gZXhwbG9kZSgiXG4iLCR0ZmllbGRzWyRpXVsnYXR0cmliJ11bJ29wdGlvbnMnXSk7CgkJCQkJCQkkdG1wMiA9IGFycmF5KCk7CgkJCQkJCQlmb3JlYWNoKCAkdG1wIGFzICRvbmUgKQoJCQkJCQkJCXsKCQkJCQkJCQkJJG9uZSA9IHRyaW0oJG9uZSk7CgkJCQkJCQkJCWlmKCBzdHJzdHIoJG9uZSwnPScpICE9PSBGQUxTRSApCgkJCQkJCQkJCQl7CgkJCQkJCQkJCQkJbGlzdCgka2V5LCR2YWx1ZSkgPSBleHBsb2RlKCc9Jyx0cmltKCRvbmUpLDIpOwoJCQkJCQkJCQkJCSR0bXAyW3RyaW0oJHZhbHVlKV0gPSB0cmltKCRrZXkpOwoJCQkJCQkJCQkJfQoJCQkJCQkJCQllbHNlCgkJCQkJCQkJCQl7CgkJCQkJCQkJCQkJJHRtcDJbJG9uZV0gPSAkb25lOwoJCQkJCQkJCQkJfQoJCQkJCQkJCX0KCQkJCQkJCSR0ZmllbGRzWyRpXVsnYXR0cmliJ11bJ29wdGlvbnMnXSA9ICR0bXAyOwoJCQkJCQl9CgkJCQkJYnJlYWs7CgkJCQl9CiAgICAgIAogICAgICAkZmllbGRzWyR0ZmllbGRzWyRpXVsnbmFtZSddXSA9ICR0ZmllbGRzWyRpXTsKICAgIH0KfQoKLy8gYXR0ZW1wdCB0byBnZXQgYW4gYXV0aG9yCiRhdXRob3IgPSAnYW5vbnltb3VzJzsKJGZldXNlcnMgPSAkdGhpcy0+R2V0TW9kdWxlSW5zdGFuY2UoJ0Zyb250RW5kVXNlcnMnKTsKaWYoICRmZXVzZXJzICkKCXsKCQkkdG1wID0gJGZldXNlcnMtPkxvZ2dlZEluTmFtZSgpOwoJCWlmKCAkdG1wICkKCQkJewoJCQkJJGF1dGhvciA9ICR0bXA7CgkJCX0KCX0KCiRzbWFydHktPmFzc2lnbignYXV0aG9yJywkYXV0aG9yKTsKaWYoIGlzc2V0KCAkcGFyYW1zWydub2F1dGhvciddICkgKQoJewoJCSRzbWFydHktPmFzc2lnbignaW5wdXRfYXV0aG9yJywKCQkJCQkJJHRoaXMtPkNyZWF0ZUlucHV0SGlkZGVuKCRpZCwgJ2lucHV0X2F1dGhvcicsICRhdXRob3IpKTsKCQkkc21hcnR5LT5hc3NpZ24oJ25vYXV0aG9yJywxKTsKCQkJCQkJICAgICAgIAoJfQoKJHNtYXJ0eS0+YXNzaWduICgncHJvbXB0X2F1dGhvcicsICR0aGlzLT5MYW5nICgnYXV0aG9yJykpOwokc21hcnR5LT5hc3NpZ24gKCdwcm9tcHRfc3VtbWFyeScsJHRoaXMtPkxhbmcgKCdzdW1tYXJ5JykpOwokc21hcnR5LT5hc3NpZ24gKCdwcm9tcHRfZGVzdG5hbWUnLCR0aGlzLT5MYW5nICgnZGVzdG5hbWUnKSk7CiRzbWFydHktPmFzc2lnbiAoJ2luZm9fZGVzdG5hbWUnLCR0aGlzLT5MYW5nICgnaW5mb19kZXN0bmFtZScpKTsKJHNtYXJ0eS0+YXNzaWduICgncHJvbXB0X2Rlc2NyaXB0aW9uJywkdGhpcy0+TGFuZyAoJ2Rlc2NyaXB0aW9uJykpOwppZiggaXNzZXQoICRwYXJhbXNbJ2ZpbGVfZXh0ZW5zaW9ucyddICkgKQoJewoJCSRoaWRkZW4gLj0gCgkJCSR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbiggJGlkLCAnZmlsZV9leHRlbnNpb25zJywKCQkJCQkJCQkJCQkJCQkJCSRwYXJhbXNbJ2ZpbGVfZXh0ZW5zaW9ucyddICk7Cgl9CiRjYXB0Y2hhID0gJHRoaXMtPkdldE1vZHVsZUluc3RhbmNlKCdDYXB0Y2hhJyk7CmlmKCBpc19vYmplY3QoJGNhcHRjaGEpICYmICFpc3NldCgkcGFyYW1zWydub2NhcHRjaGEnXSkgKQoJewoJCSRzbWFydHktPmFzc2lnbignY2FwdGNoYV90aXRsZScsICR0aGlzLT5MYW5nKCdjYXB0Y2hhX3RpdGxlJykpOwoJCSRzbWFydHktPmFzc2lnbignY2FwdGNoYScsICRjYXB0Y2hhLT5nZXRDYXB0Y2hhKCkpOwoJfQokc21hcnR5LT5hc3NpZ24gKCdwcm9tcHRfdGh1bWJuYWlsJywKCQkJCQkJCQkgJHRoaXMtPkxhbmcgKCd0aHVtYm5haWwnKSk7CiRzbWFydHktPmFzc2lnbiAoJ2luZm9fdGh1bWJuYWlsJywKCQkJCQkJCQkgJHRoaXMtPkxhbmcgKCdpbmZvX3RodW1ibmFpbCcpKTsKJHNtYXJ0eS0+YXNzaWduICgnaW5wdXRfc3VibWl0JywkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQgKCRpZCwgJ2RvX3VwbG9hZGZpbGUnLAoJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCSR0aGlzLT5MYW5nICgnc3VibWl0JykpKTsKaWYoIGNvdW50KCRmaWVsZHMpICkKCXsKCQkkc21hcnR5LT5hc3NpZ24oJ2ZpZWxkcycsJGZpZWxkcyk7Cgl9CiRzbWFydHktPmFzc2lnbignbWF4X3VwbG9hZHNpemUnLCRnQ21zLT5jb25maWdbJ21heF91cGxvYWRfc2l6ZSddKTsKCiRzbWFydHktPmFzc2lnbiAoJ2VuZGZvcm0nLCAkdGhpcy0+Q3JlYXRlRm9ybUVuZCAoKSk7CgplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGVGcm9tRGF0YWJhc2UoJHRlbXBsYXRlKTsKLy8gRU9GCj8+]]></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+CiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOgkvL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KaWYoICFpc3NldCgkZ0NtcykgKSBleGl0OwoKLy8gZGlzcGxheSBhIGZvcm0gdG8gYWxsb3cgdGhlIHVzZXIgdG8gdXBsb2FkIGEgZmlsZS4uLi4gYnV0IG1heSBoYXZlIHRvIGhhdmUgcGVybWlzc2lvbiBmaXJzdAovLyBobW1tLCBJJ2xsIHRoaW5rIGFib3V0IHRoZSBwZXJtaXNzaW9uIHN0dWZmIGxhdGVyLgoKLy8KLy8gaW5pdGlhbGl6YXRpb24KLy8KJHlzaV90ZW1wbGF0ZSA9ICd5b3VzZW5kaXRmb3JtXycuJHRoaXMtPkdldFByZWZlcmVuY2UoJ2RlZmF1bHRfeW91c2VuZGl0Zm9ybScpOwppZiggaXNzZXQoICRwYXJhbXNbJ3RlbXBsYXRlJ10gKSApCiAgewogICAgJHlzaV90ZW1wbGF0ZSA9ICd5b3VzZW5kaXRmb3JtXycuJHBhcmFtc1sndGVtcGxhdGUnXTsKICB9CiRub3RlcyA9ICcnOwokc2VuZHRvID0gJyc7CiRzdWJqZWN0ID0gJyc7CiRlcnJvciA9IGFycmF5KCk7CiRtZXNzYWdlID0gYXJyYXkoKTsKJGF1dGhvciA9ICdhbm9ueW1vdXMnOwokc3VtbWFyeSA9ICcnOwokZGVzdG5hbWUgPSAnJzsKJGtleSA9ICcnOwokZGVzY3JpcHRpb24gPSAnJzsKJHJlcGxhY2UgPSAwOwokZmV1c2VycyA9ICR0aGlzLT5HZXRNb2R1bGVJbnN0YW5jZSgnRnJvbnRFbmRVc2VycycpOwppZiggJGZldXNlcnMgKQogIHsKICAgICR0bXAgPSAkZmV1c2Vycy0+TG9nZ2VkSW5OYW1lKCk7CiAgICBpZiggIWVtcHR5KCR0bXApICkgJGF1dGhvciA9ICR0bXA7CiAgfQokcGFyYW1zWydpbnB1dF9hdXRob3InXSA9ICRhdXRob3I7CgoKLy8KLy8gU2V0dXAKLy8KaWYoICFpc3NldCggJHBhcmFtc1snY2F0ZWdvcnknXSApICkKICB7CiAgICAvLyBpZiBtb2RlIG9yIGNhdGVnb3J5IGlzbid0IHNldC4uLiB3ZSBkb24ndCBkaXNwbGF5IGFueXRoaW5nCiAgICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UgKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLAoJCQkgICAgICAkdGhpcy0+TGFuZyAoJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcycsJ2NhdGVnb3J5JykpOwogICAgcmV0dXJuOwogIH0KaWYoIGlzc2V0KCAkcGFyYW1zWydrZXknXSApICkKICB7CiAgICAka2V5ID0gJHBhcmFtc1sna2V5J107CiAgICAkcGFyYW1zWydpbnB1dF9rZXknXSA9ICRrZXk7CiAgICB1bnNldCgkcGFyYW1zWydrZXknXSk7CiAgfQplbHNlIGlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfa2V5J10gKSApCiAgewogICAgJGtleSA9ICRwYXJhbXNbJ2lucHV0X2tleSddOwogIH0KJHNtYXJ0eS0+YXNzaWduKCdtb2QnLCR0aGlzKTsKJHNtYXJ0eS0+YXNzaWduKCdhY3Rpb25pZCcsJGlkKTsKCgovLwovLyBoYW5kbGUgZm9ybSBzdWJtaXNzaW9uCi8vCmlmKCBpc3NldCgkcGFyYW1zWydpbnB1dF9jYW5jZWwnXSkgKQogIHsKICAgICR0aGlzLT5SZWRpcmVjdENvbnRlbnQoJHJldHVybmlkKTsKICB9CmVsc2UgaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0X3N1Ym1pdCddKSApCiAgewogICAgaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0X2F1dGhvciddKSApCiAgICAgIHsKCSRhdXRob3IgPSB0cmltKCRwYXJhbXNbJ2lucHV0X2F1dGhvciddKTsKICAgICAgfQogICAgaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0X3N1bW1hcnknXSkgKQogICAgICB7Cgkkc3VtbWFyeSA9IHRyaW0oJHBhcmFtc1snaW5wdXRfc3VtbWFyeSddKTsKICAgICAgfQogICAgaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0X2Rlc2NyaXB0aW9uJ10pICkKICAgICAgewoJJGRlc2NyaXB0aW9uID0gdHJpbSgkcGFyYW1zWydpbnB1dF9kZXNjcmlwdGlvbiddKTsKICAgICAgfQogICAgaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0X2Rlc3RuYW1lJ10pICkKICAgICAgewoJJGRlc3RuYW1lID0gdHJpbSgkcGFyYW1zWydpbnB1dF9kZXN0bmFtZSddKTsKICAgICAgfQogICAgaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0X3JlcGxhY2UnXSkgKQogICAgICB7CgkkcmVwbGFjZSA9IChpbnQpJHBhcmFtc1snaW5wdXRfcmVwbGFjZSddOwogICAgICB9CiAgICBpZiggaXNzZXQoJHBhcmFtc1snaW5wdXRfc2VuZHRvJ10pICkKICAgICAgewoJJHNlbmR0byA9IHRyaW0oJHBhcmFtc1snaW5wdXRfc2VuZHRvJ10pOwogICAgICB9CiAgICBpZiggaXNzZXQoJHBhcmFtc1snaW5wdXRfc3ViamVjdCddKSApCiAgICAgIHsKCSRzdWJqZWN0ID0gdHJpbSgkcGFyYW1zWydpbnB1dF9zdWJqZWN0J10pOwogICAgICB9CiAgICBpZiggaXNzZXQoJHBhcmFtc1snaW5wdXRfbm90ZXMnXSkgKQogICAgICB7Cgkkbm90ZXMgPSB0cmltKCRwYXJhbXNbJ2lucHV0X25vdGVzJ10pOwogICAgICB9CgogICAgLy8gZXJyb3IgY2hlY2tpbmcKICAgIGlmKCBlbXB0eSgkc2VuZHRvKSApCiAgICAgIHsKCSRlcnJvcltdID0gJHRoaXMtPkxhbmcoJ2Vycm9yX25vYWRkcmVzc2VzJyk7CiAgICAgIH0KICAgIAogICAgaWYoIGVtcHR5KCRzdWJqZWN0KSApCiAgICAgIHsKCSRlcnJvcltdID0gJHRoaXMtPkxhbmcoJ2Vycm9yX25vc3ViamVjdCcpOwogICAgICB9CgogICAgLy8gdmFsaWRhdGUgYWRkcmVzc2VzCiAgICAkYWRkcmVzc2VzID0gYXJyYXkoKTsKICAgIHsKICAgICAgJHRtcCA9IGV4cGxvZGUoJywnLCRzZW5kdG8pOwogICAgICBmb3IoICRpID0gMDsgJGkgPCBjb3VudCgkdG1wKTsgJGkrKyApCgl7CgkgICR0MiA9IHRyaW0oJHRtcFskaV0pOwoJICBpZiggIWVtcHR5KCR0MikgKSAkYWRkcmVzc2VzW10gPSAkdDI7Cgl9CiAgICB9CgogICAgaWYoICFjb3VudCgkYWRkcmVzc2VzKSAmJiAhZW1wdHkoJHNlbmR0bykgKQogICAgICB7CgkkZXJyb3JbXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9ub2FkZHJlc3NlcycpLicgMic7CiAgICAgIH0KCiAgICAvLyBjaGVjayB0aGUgY2FwdGNoYQogICAgewogICAgICBpZiggaXNfb2JqZWN0KCRjYXB0Y2hhKSAmJiAhaXNzZXQoJHBhcmFtc1snbm9jYXB0Y2hhJ10pICkgewoJJGNhcHRjaGEgPSAkdGhpcy0+R2V0TW9kdWxlSW5zdGFuY2UoJ0NhcHRjaGEnKTsKCWlmICghJGNhcHRjaGEtPkNoZWNrQ2FwdGNoYSgkcGFyYW1zWydpbnB1dF9jYXB0Y2hhJ10pKSB7CgkgICRlcnJvcltdID0gJHRoaXMtPkxhbmcoJ2Vycm9yX2NhcHRjaGFtaXNtYXRjaCcpOwoJfQogICAgICB9CiAgICB9CgogICAgLy8gZG8gdGhlIHVwbG9hZAogICAgaWYoICFjb3VudCgkZXJyb3IpICkKICAgICAgewoJJHJldCA9ICR0aGlzLT5BdHRlbXB0VXBsb2FkICgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCk7CglpZiggJHJldFswXSA9PSBGQUxTRSApIAoJICB7CgkgICAgJGVycm9yW10gPSAkcmV0WzFdOwoJICB9CgllbHNlCgkgIHsKCSAgICAkcGFyYW1zWyd1cGxvYWRfaWQnXSA9ICRyZXRbMV07CgkgICAgJG1lc3NhZ2VbXSA9ICR0aGlzLT5MYW5nKCdmaWxlX3VwbG9hZGVkJyk7CgkgIH0KICAgICAgfQoKICAgIC8vIHNlbmQgdGhlIG1lc3NhZ2UKICAgIGlmKCAhY291bnQoJGVycm9yKSApCiAgICAgIHsKCSRjbXNtYWlsZXIgPSAkdGhpcy0+R2V0TW9kdWxlSW5zdGFuY2UoJ0NNU01haWxlcicpOwoJCgkvLyBnZXQgZXZlcnl0aGluZyBpbnRvIHNtYXJ0eS4KCSRwYXJhbXNbJ25vb3V0cHV0J10gPSAxOwoJaW5jbHVkZShkaXJuYW1lKF9fRklMRV9fKS4nL2FjdGlvbi5kZXRhaWwucGhwJyk7CgoJJGNtc21haWxlci0+cmVzZXQoKTsKCSRjbXNtYWlsZXItPlNldFN1YmplY3QoJHN1YmplY3QpOwoJJGNtc21haWxlci0+SXNIVE1MKHRydWUpOwoJZm9yZWFjaCggJGFkZHJlc3NlcyBhcyAkb25lICkKCSAgewoJICAgICRjbXNtYWlsZXItPkFkZEFkZHJlc3MoJG9uZSk7CgkgIH0KCgkkc21hcnR5LT5hc3NpZ24oJ2F1dGhvcicsJGF1dGhvcik7Cgkkc21hcnR5LT5hc3NpZ24oJ25vdGVzJywkbm90ZXMpOwoJJHNtYXJ0eS0+YXNzaWduKCdzdWJqZWN0Jywkc3ViamVjdCk7CgkkYm9keSA9ICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGVGcm9tRGF0YWJhc2UoJ3VwbG9hZF9zZW5kZmlsZXJwdCcpOwoJJGNtc21haWxlci0+U2V0Qm9keSgkYm9keSk7CgkkY21zbWFpbGVyLT5TZW5kKCk7CgkKCS8vIG5vdyB0cnkgdG8gcmVkaXJlY3QgdG8gYSBkaWZmZXJlbnQgcGFnZQoJJHN0ciA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdyZWRpcmVjdF9vbl9zZW5kZmlsZScpOwoJaWYoICRzdHIgIT0gJycgKQoJICB7CgkgICAgJHRtcCA9IENvbnRlbnRNYW5hZ2VyOjpHZXRQYWdlSURGcm9tQWxpYXMoJHN0cik7CgkgICAgaWYoICR0bXAgKQoJICAgICAgewoJCQkJCSR0aGlzLT5SZWRpcmVjdENvbnRlbnQoJHRtcCk7CgkJCQkJcmV0dXJuOwoJICAgICAgfQoJICB9CgoJLy8gcmVkaXJlY3QgaXNuJ3Qgc2V0Li4uIHNvIGRpc3BsYXkgYSBuaWNlIG1lc3NhZ2UuCgkkbWVzc2FnZVtdID0gJHRoaXMtPkxhbmcoJ21zZ19maWxlX3NlbnQnKTsKICAgICAgfQoKICB9IC8vIGVuZCBmb3JtIHN1Ym1pc3Npb24KCgoKLy8KLy8gR2l2ZSBFdmVyeXRoaW5nIHRvIHNtYXJ0eQovLwppZiggY291bnQoJGVycm9yKSApCiAgewogICAgJHNtYXJ0eS0+YXNzaWduKCdlcnJvcnMnLCRlcnJvcik7CiAgfQppZiggY291bnQoJG1lc3NhZ2UpICkKICB7CiAgICAkc21hcnR5LT5hc3NpZ24oJ21lc3NhZ2VzJywkbWVzc2FnZSk7CiAgfQokc21hcnR5LT5hc3NpZ24gKCdzdGFydGZvcm0nLAoJCSAkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0ICgkaWQsICd5b3VzZW5kaXQnLCAkcmV0dXJuaWQsICdwb3N0JywgCgkJCQkJICdtdWx0aXBhcnQvZm9ybS1kYXRhJywgZmFsc2UsICcnLAoJCQkJCSAkcGFyYW1zKSk7CiRzbWFydHktPmFzc2lnbiAoJ3Byb21wdF91cGxvYWQnLCAkdGhpcy0+TGFuZyAoJ3VwbG9hZCcpKTsKCi8vIGF0dGVtcHQgdG8gZ2V0IGFuIGF1dGhvcgppZiggIWlzc2V0KCAkcGFyYW1zWydub2F1dGhvciddICkgKQogIHsKICAgICRzbWFydHktPmFzc2lnbiAoJ3Byb21wdF9hdXRob3InLCAkdGhpcy0+TGFuZyAoJ2F1dGhvcicpKTsKICAgICRzbWFydHktPmFzc2lnbiAoJ2lucHV0X2F1dGhvcicsCgkJICAgICAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0ICgkaWQsICdpbnB1dF9hdXRob3InLCAKCQkJCQkgICAgICRhdXRob3IsIDIwLCAyNTUpKTsKICB9CiRzbWFydHktPmFzc2lnbiAoJ3Byb21wdF9zdW1tYXJ5JywkdGhpcy0+TGFuZyAoJ3N1bW1hcnknKSk7CiRzbWFydHktPmFzc2lnbiAoJ2lucHV0X3N1bW1hcnknLCR0aGlzLT5DcmVhdGVJbnB1dFRleHQgKCRpZCwgJ2lucHV0X3N1bW1hcnknLCRzdW1tYXJ5LCA0MCwgMjU1KSk7CiRzbWFydHktPmFzc2lnbiAoJ3Byb21wdF9kZXN0bmFtZScsJHRoaXMtPkxhbmcgKCdkZXN0bmFtZScpKTsKJHNtYXJ0eS0+YXNzaWduICgnaW5wdXRfZGVzdG5hbWUnLCR0aGlzLT5DcmVhdGVJbnB1dFRleHQgKCRpZCwgJ2lucHV0X2Rlc3RuYW1lJywkZGVzdG5hbWUsIDQwLCAyNTUpKTsKJHNtYXJ0eS0+YXNzaWduICgnaW5mb19kZXN0bmFtZScsICR0aGlzLT5MYW5nICgnaW5mb19kZXN0bmFtZScpKTsKJHNtYXJ0eS0+YXNzaWduICgncHJvbXB0X2Rlc2NyaXB0aW9uJywkdGhpcy0+TGFuZyAoJ2Rlc2NyaXB0aW9uJykpOwokc21hcnR5LT5hc3NpZ24gKCdpbnB1dF9kZXNjcmlwdGlvbicsJHRoaXMtPkNyZWF0ZVRleHRBcmVhKGZhbHNlLCAkaWQsICRkZXNjcmlwdGlvbiwgJ2lucHV0X2Rlc2NyaXB0aW9uJyApKTsKCiRjYXB0Y2hhID0gJHRoaXMtPkdldE1vZHVsZUluc3RhbmNlKCdDYXB0Y2hhJyk7CmlmKCBpc19vYmplY3QoJGNhcHRjaGEpICYmICFpc3NldCgkcGFyYW1zWydub2NhcHRjaGEnXSkgKQogIHsKICAgICRzbWFydHktPmFzc2lnbignY2FwdGNoYV90aXRsZScsICR0aGlzLT5MYW5nKCdjYXB0Y2hhX3RpdGxlJykpOwogICAgJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9jYXB0Y2hhJywKCQkgICAgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsJ2lucHV0X2NhcHRjaGEnLCcnLDEwKSk7CiAgICAkc21hcnR5LT5hc3NpZ24oJ2NhcHRjaGEnLCAkY2FwdGNoYS0+Z2V0Q2FwdGNoYSgpKTsKICB9Cgokc21hcnR5LT5hc3NpZ24gKCdwcm9tcHRfdGh1bWJuYWlsJywgJHRoaXMtPkxhbmcgKCd0aHVtYm5haWwnKSk7CiRzbWFydHktPmFzc2lnbiAoJ2luZm9fdGh1bWJuYWlsJywgJHRoaXMtPkxhbmcgKCdpbmZvX3RodW1ibmFpbCcpKTsKJHNtYXJ0eS0+YXNzaWduICgnaW5wdXRfdGh1bWJuYWlsJywgICR0aGlzLT5DcmVhdGVGaWxlVXBsb2FkSW5wdXQgKCRpZCwnaW5wdXRfdGh1bWJuYWlsJywnJyw1MCkpOwokc21hcnR5LT5hc3NpZ24gKCdpbnB1dF9zdWJtaXQnLCR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCAoJGlkLCAnZG9fdXBsb2FkZmlsZScsJHRoaXMtPkxhbmcgKCdzdWJtaXQnKSkpOwokc21hcnR5LT5hc3NpZ24gKCdlbmRmb3JtJywgJHRoaXMtPkNyZWF0ZUZvcm1FbmQgKCkpOwoKJHNtYXJ0eS0+YXNzaWduKCdhdXRob3InLCRhdXRob3IpOwokc21hcnR5LT5hc3NpZ24oJ3N1bW1hcnknLCRzdW1tYXJ5KTsKJHNtYXJ0eS0+YXNzaWduKCdrZXknLCRrZXkpOwokc21hcnR5LT5hc3NpZ24oJ2Rlc2NyaXB0aW9uJywkZGVzY3JpcHRpb24pOwokc21hcnR5LT5hc3NpZ24oJ3JlcGxhY2UnLCRyZXBsYWNlKTsKJHNtYXJ0eS0+YXNzaWduKCdub3RlcycsJG5vdGVzKTsKJHNtYXJ0eS0+YXNzaWduKCdzZW5kdG8nLCRzZW5kdG8pOwokc21hcnR5LT5hc3NpZ24oJ3N1YmplY3QnLCRzdWJqZWN0KTsKCmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhYmFzZSgkeXNpX3RlbXBsYXRlKTsKCiMgRU9GCj8+]]></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+TWlub3IgQnVnIEZpeGVzPC9saT4KICA8L3VsPgo8L2xpPgoKPGxpPlZlcnNpb24gMS4xMSAtIE1hcmNoLCAyMDEwCiAgPHVsPgogICA8bGk+QWRkcyB0aGUgYWJpbGl0eSB0byBvcHRpb25hbGx5IGRpc2FibGUgc2Nhbm5pbmcgb2YgY2F0ZWdvcmllcy48L2xpPgogIDwvdWw+CjwvbGk+Cgo8bGk+VmVyc2lvbiAxLjExLjEgLSBNYXJjaCwgMjAxMAogIDx1bD4KICAgPGxpPkZpeCBtaW5vciBpc3N1ZXMuPC9saT4KICA8L3VsPgo8L2xpPgoKPGxpPlZlcnNpb24gMS4xMS4yIC0gTWFyY2gsIDIwMTAKICA8dWw+CiAgIDxsaT5GaXggbWlub3IgaXNzdWVzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPlZlcnNpb24gMS4xMS4zIC0gQXByaWwsIDIwMTAKICA8dWw+CiAgIDxsaT5GaXggbWlub3IgaXNzdWVzLjwvbGk+CiAgIDxsaT5JbXByb3ZlbWVudHMgdG8gQ29weSBQcm9kdWN0IChUZWQpPC9saT4KICAgPGxpPkFkZHMgdGhlIGFiaWxpdHkgdG8gZmlsdGVyIHN1bW1hcnkgbGlzdCBieSBhZGRpdGlvbmFsIGZpZWxkcy4gKFRlZCk8L2xpPiAgIAogIDwvdWw+CjwvbGk+CjxsaT5WZXJzaW9uIDEuMTEuNCAtIEp1bHksIDIwMTAKICA8dWw+CiAgIDxsaT5GaXggbWlub3IgaXNzdWVzIHdpdGggY2F0ZWdvcnk9YWxsPC9saT4KICAgPGxpPkZpeGVzIHByb2JsZW0gd2l0aCBzZWFyY2ggaW5kZXhpbmcuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+VmVyc2lvbiAxLjExLjUgLSBTZXB0LCAyMDEwCiAgPHVsPgogICA8bGk+Rml4IG1pbm9yIGNvbXBhdGliaWxpdHkgaXNzdWUuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+VmVyc2lvbiAxLjExLjYgLSBKYW4sIDIwMTEKIDx1bD4KICA8bGk+Rml4ZXMgc2xvdyBxdWVyaWVzIGluIGRlZmF1bHQgbW9kZSB3aGVuIHRoZXJlIGFyZSBtYW55IGRvd25sb2FkcyB0byBnYXRoZXIgc3RhdGlzdGljcyBmb3IuPC9saT4KICA8bGk+TWlub3IgZml4ZXMgcmVsYXRlZCB0byBFX1NUUklDVC48L2xpPgogIDxsaT5NaW5vciB1cGRhdGVzIHRvIGhlbHAuPC9saT4KIDwvdWw+CjwvbGk+CjxsaT5WZXJzaW9uIDEuMTIgLSBNYXksIDIwMTEKICA8dWw+CiAgICAgPGxpPkFkZHMgc29tZSBuZXcgQVBJIGNsYXNzZXMsIGFuZCBtaW5vciBvcHRpbWl6YXRpb25zLjwvbGk+CiAgICAgPGxpPkFkZHMgYSBzbWFydHkgcGx1Z2luIGZvciBjb3B5aW5nIGFueSBmaWxlIGludG8gdGhlIHVwbG9hZHMgbW9kdWxlIGFuZCBnZW5lcmF0aW5nIGEgdGltZSBsaW1pdGVkIFVSTDwvbGk+CiAgPC91bD4KPC9saT4KPGxpPlZlcnNpb24gMS4xMyAtIE1heSwgMjAxMQogIDx1bD4KICAgICA8bGk+QWRkcyB0aGUgYWJpbGl0eSB0byB2aWV3IHRoZSB1cGxvYWRlZCBmaWxlcyBmcm9tIHdpdGhpbiB0aGUgYWRtaW4gaW50ZXJmYWNlLjwvbGk+CiAgICAgPGxpPkFkZHMgYWRtaW4gcGFnaW5hdGlvbi48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT5WZXJzaW9uIDEuMTQgLSBBdWd1c3QsIDIwMTEKICA8dWw+CiAgICAgPGxpPkFkZHMgcHJldHR5IHVybCBzdXBwb3J0IGZvciBkZXRhaWwgdXJscy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT5WZXJzaW9uIDEuMTQuMyAtIEphbnVhcnksIDIwMTEKICA8dWw+CiAgICA8bGk+TWlub3IgZW5oYW5jZW1lbnRzIGFuZCBidWcgZml4ZXMuPC9saT4KICAgIDxsaT5Nb3ZlcyBoZWxwIGV4dGVybmFsLjwvbGk+CiAgICA8bGk+TWlub3Igb3B0aW1pemF0aW9ucyBmb3IgMS4xMS54PC9saT4KICA8L3VsPgo8L2xpPgo8bGk+VmVyc2lvbiAxLjE2LngKICA8dWw+CiAgICA8bGk+TnVtZXJvdXMgbWlub3IgZW5oYW5jZW1lbnRzIGFuZCBidWcgZml4ZXMuPC9saT4KICAgIDxsaT5BZGRzIHJlcG9ydGluZyBvcHRpb25zLjwvbGk+CiAgPC91bD4KPC9saT4KPC91bD4K]]></data>
	</file>
	<file>
	  <filename>/event.Core.ContentPostRender.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLXNldC1zdHlsZTpsaW51eDsgdGFiLXdpZHRoOjI7IGluZGVudC10YWJzLW1vZGU6dDsgYy1iYXNpYy1vZmZzZXQ6IDI7IC0qLQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogVXBsb2FkcyAtPSBhbGxvdyB1c2VycyB0byB1cGxvYWQgc3R1ZmYsIGEgcHNldWRvIGZpbGUgbWFuYWdlciIgbW9kdWxlCiMgQXV0aG9yOiBSb2JlcnQgQ2FtcGJlbGwgPHJvYkB0ZWNoY29tLmR5bmRucy5vcmc+CiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOgkvL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KaWYoICFpc3NldCgkZ0NtcykgKSBleGl0OwoKLy8gZ2V0IHRoZSBsaXN0IG9mIGNhdGVnb3JpZXMgdGhhdCBoYXZlIGV4cGlyeSBwZXJpb2RzIGdyZWF0ZXIgdGhhbiAwCiRxdWVyeSAgPSAnU0VMRUNUIHVwbG9hZF9jYXRlZ29yeV9pZCx1cGxvYWRfY2F0ZWdvcnlfZXhwaXJlc19ocnMgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHNfY2F0ZWdvcmllcyBXSEVSRSB1cGxvYWRfY2F0ZWdvcnlfZXhwaXJlc19ocnMgPiAwJzsKJGNhdHMgPSAkZGItPkdldEFycmF5KCRxdWVyeSk7CmlmKCAhJGNhdHMgKSByZXR1cm47CgovLyBnZXQgdGhlIHVwbG9hZHMgdGhhdCBuZWVkIHRvIGJlIGRlbGV0ZWQuCiRxdWVyeSA9ICdTRUxFQ1QgVS51cGxvYWRfaWQsVS51cGxvYWRfbmFtZSxDLnVwbG9hZF9jYXRlZ29yeV9wYXRoIAogICAgICAgICAgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHMgVSAKICAgICAgICAgIExFRlQgSk9JTiAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHNfY2F0ZWdvcmllcyBDIAogICAgICAgICAgT04gVS51cGxvYWRfY2F0ZWdvcnlfaWQgPSBDLnVwbG9hZF9jYXRlZ29yeV9pZCAKICAgICAgICAgIFdIRVJFICc7CiRhcmdzID0gYXJyYXkoKTsKJHBhcm1zID0gYXJyYXkoKTsKJG5vdyA9IHRpbWUoKTsKZm9yZWFjaCggJGNhdHMgYXMgJG9uZSApCnsKCSR0aGVkYXRlID0gJG5vdyAtICRvbmVbJ3VwbG9hZF9jYXRlZ29yeV9leHBpcmVzX2hycyddICogMzYwMDsKCSR0aGVkYXRlID0gJGRiLT5EYlRpbWVTdGFtcCgkdGhlZGF0ZSk7CgkkYXJnc1tdID0gIiggVS51cGxvYWRfY2F0ZWdvcnlfaWQgPSA/IEFORCBVLnVwbG9hZF9kYXRlIDwgJHRoZWRhdGUgKSI7CgkkcGFybXNbXSA9ICRvbmVbJ3VwbG9hZF9jYXRlZ29yeV9pZCddOwp9CiRxdWVyeSAuPSBpbXBsb2RlKCcgT1IgJywkYXJncyk7CgokZmlsZXMgPSAkZGItPkdldEFycmF5KCRxdWVyeSwkcGFybXMpOwppZiggISRmaWxlcyApIHJldHVybjsKCi8vIHdlIGhhdmUgc29tZXRoaW5nIHRvIGRlbGV0ZS4KJGNvbmZpZyA9ICRnQ21zLT5HZXRDb25maWcoKTsKZm9yZWFjaCggJGZpbGVzIGFzICRvbmVmaWxlICkKewoJJHJlcyA9ICR0aGlzLT5fQWRtaW5Eb0RlbGV0ZVVwbG9hZCgkb25lZmlsZVsndXBsb2FkX2lkJ10sdHJ1ZSk7CglpZiggISRyZXMgKQoJCXsKCQkJLy8gd29vdCwgd2UgZGVsZXRlZCB0aGUgZmlsZQoJCQkkdGhpcy0+QXVkaXQoJG9uZWZpbGVbJ3VwbG9hZF9pZCddLCR0aGlzLT5HZXROYW1lKCksCgkJCQkJCQkJCSAkdGhpcy0+TGFuZygnbXNnX2F1dG9fZGVsZXRlX2ZpbGUnLCRvbmVmaWxlWyd1cGxvYWRfbmFtZSddKSk7CgkJfQoJZWxzZQoJCXsKCQkJLy8gZmlsZSBub3QgZGVsZXRlZCwgZG9uJ3QgZGVsZXRlIHRoZSByZWNvcmQsIGp1c3QgYXVkaXQgYWJvdXQgaXQuCgkJCSR0aGlzLT5BdWRpdCgkb25lZmlsZVsndXBsb2FkX2lkJ10sJHRoaXMtPkdldE5hbWUoKSwKCQkJCQkJCQkJICR0aGlzLT5MYW5nKCdtc2dfYXV0b19kZWxldGVfZmlsZV9mYWlsZWQnLCRvbmVmaWxlWyd1cGxvYWRfbmFtZSddKSk7CgkJfQp9CiMKIyBFT0YKIwo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/function.admin_categoriestab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgPSBhbGxvdyB1c2VycyB0byB1cGxvYWQgc3R1ZmYsIGEgcHNldWRvIGZpbGUgbWFuYWdlciBtb2R1bGUKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6CS8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQppZiggIWlzc2V0KCRnQ21zKSApIGV4aXQ7CmlmICghJHRoaXMtPkNoZWNrUGVybWlzc2lvbiAoJ01hbmFnZSBVcGxvYWRzJykpIHJldHVybjsKCiRyb3dhcnJheSA9IGFycmF5ICgpOwokcXVlcnkgPSAnJzsKJGRicmVzdWx0ID0gJyc7CiR0aGVtZSA9IGNtc191dGlsczo6Z2V0X3RoZW1lX29iamVjdCgpOwogICAgCiRxdWVyeSA9ICJTRUxFQ1QgKiBGUk9NICIuY21zX2RiX3ByZWZpeCAoKS4ibW9kdWxlX3VwbG9hZHNfY2F0ZWdvcmllcyI7CiRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkcXVlcnkpOwokcm93Y2xhc3MgPSAncm93MSc7CgppZiggJGRicmVzdWx0ICkgewogIHdoaWxlICgkcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdyAoKSkgewogICAgJG9uZXJvdyA9IG5ldyBzdGRDbGFzcyAoKTsKICAgICRvbmVyb3ctPmVycm9yID0gMDsKICAgICRvbmVyb3ctPmlkID0gJHJvd1sidXBsb2FkX2NhdGVnb3J5X2lkIl07CiAgICAkb25lcm93LT5uYW1lID0gJHRoaXMtPkNyZWF0ZUxpbmsoICRpZCwgJ2VkaXRjYXRlZ29yeScsICRyZXR1cm5pZCwgCgkJCQkgICAgICAgJHJvd1sidXBsb2FkX2NhdGVnb3J5X25hbWUiXSwKCQkJCSAgICAgICBhcnJheSgnY2F0ZWdvcnlfaWQnPT4kcm93Wyd1cGxvYWRfY2F0ZWdvcnlfaWQnXSkpOwoKICAgICRvbmVyb3ctPmRlc2NyaXB0aW9uID0gJHJvd1sidXBsb2FkX2NhdGVnb3J5X2Rlc2NyaXB0aW9uIl07CiAgICAkb25lcm93LT5wYXRoID0gJHJvd1sidXBsb2FkX2NhdGVnb3J5X3BhdGgiXTsKICAgICR0bXAgPSAkdGhpcy0+X2NhdGVnb3J5UGF0aCgkb25lcm93LT5wYXRoKTsKICAgIGlmKCAhaXNfZGlyKCR0bXApIHx8ICFpc193cml0YWJsZSgkdG1wKSApICRvbmVyb3ctPmVycm9yID0gMTsKICAgICRvbmVyb3ctPnJvd2NsYXNzID0gJHJvd2NsYXNzOwoKICAgICRvbmVyb3ctPmNvcHlsaW5rID0gJHRoaXMtPkNyZWF0ZUxpbmsgKCRpZCwgJ2FkbWluX2NvcHljYXRlZ29yeScsICRyZXR1cm5pZCwKCQkJCQkgICAkdGhlbWUtPkRpc3BsYXlJbWFnZSAoJ2ljb25zL3N5c3RlbS9jb3B5LmdpZicsCgkJCQkJCQkJICR0aGlzLT5MYW5nICgnY29weScpLCAnJywgJycsICdzeXN0ZW1pY29uJyksCgkJCQkJICAgYXJyYXkgKCdjYXRlZ29yeV9pZCcgPT4gJHJvd1sndXBsb2FkX2NhdGVnb3J5X2lkJ10pKTsKICAgICRvbmVyb3ctPmVkaXRsaW5rID0gJHRoaXMtPkNyZWF0ZUxpbmsgKCRpZCwgJ2VkaXRjYXRlZ29yeScsICRyZXR1cm5pZCwKCQkJCQkgICAkdGhlbWUtPkRpc3BsYXlJbWFnZSAoJ2ljb25zL3N5c3RlbS9lZGl0LmdpZicsCgkJCQkJCQkJICR0aGlzLT5MYW5nICgnZWRpdCcpLCAnJywgJycsICdzeXN0ZW1pY29uJyksCgkJCQkJICAgYXJyYXkgKCdjYXRlZ29yeV9pZCcgPT4gJHJvd1sndXBsb2FkX2NhdGVnb3J5X2lkJ10pKTsKICAgICRvbmVyb3ctPmRlbGV0ZWxpbmsgPSAkdGhpcy0+Q3JlYXRlTGluayAoJGlkLCAnZGVsZXRlY2F0ZWdvcnknLCAkcmV0dXJuaWQsCgkJCQkJICAgICAkdGhlbWUtPkRpc3BsYXlJbWFnZSAoJ2ljb25zL3N5c3RlbS9kZWxldGUuZ2lmJywKCQkJCQkJCQkgICAkdGhpcy0+TGFuZyAoJ2RlbGV0ZScpLCAnJywgJycsICdzeXN0ZW1pY29uJyksCgkJCQkJICAgICBhcnJheSAoJ2NhdGVnb3J5X2lkJyA9PiAkcm93Wyd1cGxvYWRfY2F0ZWdvcnlfaWQnXSksCgkJCQkJICAgICAkdGhpcy0+TGFuZyAoJ2FyZXlvdXN1cmVfZGVsZXRlY2F0ZWdvcnknKSk7CgogICAgJHJvd2FycmF5W10gPSAkb25lcm93OwogICAgKCRyb3djbGFzcyA9PSAicm93MSIgPyAkcm93Y2xhc3MgPSAicm93MiIgOiAkcm93Y2xhc3MgPSAicm93MSIpOwogIH0KfQoKJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgnY2F0ZWdvcnl0ZXh0JywgJHRoaXMtPkxhbmcgKCdjYXRlZ29yeScpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgnbmFtZXRleHQnLCAkdGhpcy0+TGFuZyAoJ25hbWUnKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ3BhdGh0ZXh0JywgJHRoaXMtPkxhbmcgKCdwYXRoJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24gKCdpdGVtcycsICRyb3dhcnJheSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ2l0ZW1jb3VudCcsIGNvdW50ICgkcm93YXJyYXkpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgnYWRkbGluaycsICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwgJ2FkZGNhdGVnb3J5JywgCgkkcmV0dXJuaWQsIAoJJHRoZW1lLT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9uZXdvYmplY3QuZ2lmJywgCgkJJHRoaXMtPkxhbmcoJ2FkZGNhdGVnb3J5JyksJycsJycsJ3N5c3RlbWljb24nKSwgCgkJYXJyYXkoKSwgJycsIGZhbHNlLCBmYWxzZSwgJycpIC4nICcuIAoJCSR0aGlzLT5DcmVhdGVMaW5rKCRpZCwgJ2FkZGNhdGVnb3J5JywgCgkJCSRyZXR1cm5pZCwgJHRoaXMtPkxhbmcoJ2FkZGNhdGVnb3J5JyksIAoJCQlhcnJheSgpLCAnJywgZmFsc2UsIGZhbHNlLCAnY2xhc3M9InBhZ2VvcHRpb25zIicpKTsKJHNtYXJ0eS0+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+Q2hlY2tQZXJtaXNzaW9uICgnTWFuYWdlIFVwbG9hZHMnKSAmJiAhJHRoaXMtPkNoZWNrUGVybWlzc2lvbignVXBsb2FkIEZpbGVzIHRvIFVwbG9hZHMnKSkKICB7CiAgICByZXR1cm47CiAgfQoKJGRiID0gY21zbXMoKS0+R2V0RGIoKTsKCiRjdXJwYWdlID0gMTsKaWYoIGlzc2V0KCRwYXJhbXNbJ2ZpbGVzcGFnZSddKSApCiAgewogICAgJGN1cnBhZ2UgPSAoaW50KSRwYXJhbXNbJ2ZpbGVzcGFnZSddOwogIH0KCi8vIGdldCB0aGUgY3VycmVudCBjYXRlZ29yeSBmb3IgdGhlIGZpbHRlcgppZiAoaXNzZXQgKCRwYXJhbXNbJ3N1Ym1pdGZpbHRlciddKSkKICB7CiAgICBzZXRfcHJlZmVyZW5jZShnZXRfdXNlcmlkKEZBTFNFKSwndXBsb2Fkc19jYXRlZ29yeScsCgkJCSAoaXNzZXQgKCRwYXJhbXNbJ2lucHV0X2NhdGVnb3J5J10pID8gJHBhcmFtc1snaW5wdXRfY2F0ZWdvcnknXSA6CgkJCSAgJycpKTsKICAgIHNldF9wcmVmZXJlbmNlKGdldF91c2VyaWQoRkFMU0UpLCd1cGxvYWRzX3BhZ2VsaW1pdCcsKGludCkkcGFyYW1zWydpbnB1dF9wYWdlbGltaXQnXSk7CiAgfQokY3VyY2F0ZWdvcnkgPSBnZXRfcHJlZmVyZW5jZShnZXRfdXNlcmlkKEZBTFNFKSwndXBsb2Fkc19jYXRlZ29yeScsJycpOwokcGFnZWxpbWl0ID0gZ2V0X3ByZWZlcmVuY2UoZ2V0X3VzZXJpZChGQUxTRSksJ3VwbG9hZHNfcGFnZWxpbWl0Jyw1MCk7CiRvZmZzZXQgPSAtMTsKICAgICAgICAKLy8gZ2V0IHRoZSBjYXRlZ29yaWVzIGZvciB0aGUgZmlsdGVyCiRjYXRlZ29yeWxpc3QgPSBhcnJheSAoKTsKJHF1ZXJ5ID0KICAiU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXggKCkuCiAgIm1vZHVsZV91cGxvYWRzX2NhdGVnb3JpZXMgT1JERVIgQlkgdXBsb2FkX2NhdGVnb3J5X25hbWUgQVNDIjsKJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlICgkcXVlcnkpOwppZiAoISRkYnJlc3VsdCkgewogICRzbWFydHktPmFzc2lnbiAoJ2Vycm9yJywgMSk7CiAgJHNtYXJ0eS0+YXNzaWduICgnbWVzc2FnZScsICR0aGlzLT5MYW5nICgnZXJyb3Jfbm9jYXRlZ29yaWVzJykpOwp9CmVsc2UgewogICRlcnJvcnMgPSBhcnJheSgpOwogIHdoaWxlICgkcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdyAoKSkgewogICAgJHBhdGggPSAkdGhpcy0+X2NhdGVnb3J5UGF0aCgkcm93Wyd1cGxvYWRfY2F0ZWdvcnlfcGF0aCddKTsKICAgIGlmKCAhaXNfZGlyKCRwYXRoKSB8fCAhaXNfd3JpdGFibGUoJHBhdGgpICkgewogICAgICAkZXJyb3JzW10gPSAkdGhpcy0+TGFuZygnZXJyb3JfY2F0ZWdvcnlfcHJvYmxlbScsJHJvd1sndXBsb2FkX2NhdGVnb3J5X25hbWUnXSk7CiAgICAgIGNvbnRpbnVlOwogICAgfQogICAgaWYoICRjdXJjYXRlZ29yeSA9PSAnJyApICRjdXJjYXRlZ29yeSA9ICRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9pZCddOwogICAgJGNhdGVnb3J5bGlzdFskcm93Wyd1cGxvYWRfY2F0ZWdvcnlfbmFtZSddXSA9ICRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9pZCddOwogIH0KICBpZiggY291bnQoJGVycm9ycykgKSB7CiAgICBlY2hvICR0aGlzLT5TaG93RXJyb3JzKCRlcnJvcnMpOwogIH0KICB1bnNldCgkZXJyb3JzKTsKfQoJICAKLy8gaWYgdGhlcmUgYXJlIG5vIGNhdGVnb3JpZXMsIHB1dCBhIG1lc3NhZ2Ugb3V0LCBhbmQKLy8gbm90aGluZyBlbHNlCmlmKCAhY291bnQoICRjYXRlZ29yeWxpc3QgKSApIHsKICAkc21hcnR5LT5hc3NpZ24oJ2Vycm9yJywxKTsKICAkc21hcnR5LT5hc3NpZ24oJ25vZm9ybScsMSk7CiAgJHNtYXJ0eS0+YXNzaWduKCdtZXNzYWdlJywkdGhpcy0+TGFuZygnZXJyb3Jfbm9jYXRlZ29yaWVzJykpOwogIGVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSgndXBsb2FkbGlzdC50cGwnKTsKICByZXR1cm47Cn0KCiRzbWFydHktPmFzc2lnbignZXJyb3InLCIiKTsKJHNtYXJ0eS0+YXNzaWduKCdub2Zvcm0nLCIiKTsKJHNtYXJ0eS0+YXNzaWduKCdtZXNzYWdlJywiIik7CgovLyBzZXR1cCB0aGUgZm9ybSBwYXJ0IG9mIHRoZSB0ZW1wbGF0ZQokc21hcnR5LT5hc3NpZ24gKCdsZWdlbmRfdXBsb2FkZm9ybScsJHRoaXMtPkxhbmcoJ2xlZ2VuZF91cGxvYWRmb3JtJykpOwokc21hcnR5LT5hc3NpZ24gKCdzdGFydGZvcm0nLAoJCSAgICAgICAkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0ICgkaWQsICdkZWZhdWx0YWRtaW4nLCAkcmV0dXJuaWQsICdwb3N0JywgJ211bHRpcGFydC9mb3JtLWRhdGEnKSk7CiRzbWFydHktPmFzc2lnbiAoJ2NhdGVnb3J5JywgJHRoaXMtPkxhbmcgKCdjYXRlZ29yeScpKTsKJHNtYXJ0eS0+YXNzaWduICgnaW5wdXRfY2F0ZWdvcnknLAoJCSAgICAgICAkdGhpcy0+Q3JlYXRlSW5wdXREcm9wRG93biAoJGlkLCAiaW5wdXRfY2F0ZWdvcnkiLCAkY2F0ZWdvcnlsaXN0LCAtMSwKCQkJCQkJICAgJGN1cmNhdGVnb3J5KSk7CiRzbWFydHktPmFzc2lnbiAoJ2lucHV0X3NlbGVjdCcsCgkJICAgICAgICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCAoJGlkLCAnc3VibWl0ZmlsdGVyJywKCQkJCQkJICR0aGlzLT5MYW5nKCdzZWxlY3RjYXRlZ29yeScpKSk7CiRzbWFydHktPmFzc2lnbiAoJ2lucHV0X2hpZGRlbicsCgkJICAgICAgICR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbiAoJGlkLCAnY3VyY2F0ZWdvcnknLAoJCQkJCQkgJGN1cmNhdGVnb3J5KSk7Cgokb3B0cyA9IGFycmF5KCk7CiRvcHRzWzVdID0gNTsKJG9wdHNbMjVdID0gMjU7CiRvcHRzWzUwXSA9IDUwOwokb3B0c1sxMDBdID0gMTAwOwokb3B0c1syNTBdID0gMjUwOwokb3B0c1s1MDBdID0gNTAwOwokb3B0c1sxMDAwXSA9IDEwMDA7CiRzbWFydHktPmFzc2lnbigncGFnZWxpbWl0cycsJG9wdHMpOwoKJHNtYXJ0eS0+YXNzaWduICgnZW5kZm9ybScsICR0aGlzLT5DcmVhdGVGb3JtRW5kICgpKTsKJG5yb3dzID0gJyc7CSAKJGRicmVzdWx0ID0gJyc7CiRyb3dhcnJheSA9IGFycmF5ICgpOwppZiAoJGN1cmNhdGVnb3J5ID09ICcnKQogIHsKICAgICRjcXVlcnkgPSAnU0VMRUNUIGNvdW50KHVwbG9hZF9pZCkgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHMnOwogICAgJG5yb3dzID0gJGRiLT5HZXRPbmUoJGNxdWVyeSk7CgogICAgJG5wYWdlcyA9IChpbnQpKCRucm93cyAvICRwYWdlbGltaXQpOwogICAgaWYoICRucm93cyAlICRwYWdlbGltaXQgIT0gMCApICRucGFnZXMrKzsKICAgICRjdXJwYWdlID0gbWF4KDEsJGN1cnBhZ2UpOwogICAgJGN1cnBhZ2UgPSBtaW4oJGN1cnBhZ2UsJG5wYWdlcyk7CiAgICAkb2Zmc2V0ID0gKCRjdXJwYWdlIC0gMSkqJHBhZ2VsaW1pdDsKCiAgICAkcXVlcnkgPSAiU0VMRUNUIHUuKixjb3VudChkLmRvd25sb2FkX2lkKSBBUyBkb3dubG9hZHMgRlJPTSAiLmNtc19kYl9wcmVmaXggKCkuIm1vZHVsZV91cGxvYWRzIHUgCiAgICAgICAgICAgICAgIExFRlQgT1VURVIgSk9JTiAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfZG93bmxvYWRzIGQKICAgICAgICAgICAgICAgT04gdS51cGxvYWRfaWQgPSBkLmZpbGVfaWQKICAgICAgICAgICAgICAgR1JPVVAgQlkgdS51cGxvYWRfaWQKICAgICAgICAgICAgICAgT1JERVIgQlkgdXBsb2FkX2RhdGUgREVTQyI7CiAgICAkZGJyZXN1bHQgPSAkZGItPlNlbGVjdExpbWl0KCRxdWVyeSwkcGFnZWxpbWl0LCRvZmZzZXQpOwogIH0KIGVsc2UKICAgewogICAgICRjcXVlcnkgPSAnU0VMRUNUIGNvdW50KHVwbG9hZF9pZCkgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHMgV0hFUkUgdXBsb2FkX2NhdGVnb3J5X2lkID0gPyc7CiAgICAgJG5yb3dzID0gJGRiLT5HZXRPbmUoJGNxdWVyeSxhcnJheSgkY3VyY2F0ZWdvcnkpKTsKCiAgICAgJG5wYWdlcyA9IChpbnQpKCRucm93cyAvICRwYWdlbGltaXQpOwogICAgIGlmKCAkbnJvd3MgJSAkcGFnZWxpbWl0ICE9IDAgKSAkbnBhZ2VzKys7CiAgICAgJGN1cnBhZ2UgPSBtYXgoMSwkY3VycGFnZSk7CiAgICAgJGN1cnBhZ2UgPSBtaW4oJGN1cnBhZ2UsJG5wYWdlcyk7CiAgICAgJG9mZnNldCA9ICgkY3VycGFnZSAtIDEpKiRwYWdlbGltaXQ7CgogICAgICRxdWVyeSA9CiAgICAgICAiU0VMRUNUIHUuKixjb3VudChkLmRvd25sb2FkX2lkKSBBUyBkb3dubG9hZHMgRlJPTSAiLmNtc19kYl9wcmVmaXggKCkuIm1vZHVsZV91cGxvYWRzIHUgCiAgICAgICAgIExFRlQgT1VURVIgSk9JTiAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfZG93bmxvYWRzIGQKICAgICAgICAgT04gdS51cGxvYWRfaWQgPSBkLmZpbGVfaWQKICAgICAgICAgV0hFUkUgdXBsb2FkX2NhdGVnb3J5X2lkID0gPwogICAgICAgICBHUk9VUCBCWSB1LnVwbG9hZF9pZAogICAgICAgICBPUkRFUiBCWSB1cGxvYWRfZGF0ZSBERVNDIjsKICAgICAkZGJyZXN1bHQgPSAkZGItPlNlbGVjdExpbWl0KCRxdWVyeSwkcGFnZWxpbWl0LCRvZmZzZXQsYXJyYXkoJGN1cmNhdGVnb3J5KSk7CiAgIH0KCgovLyBub3cgc2V0dXAgdGhlIHJlc3QgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiRyb3djbGFzcyA9ICdyb3cxJzsKCSAgCmlmICgkZGJyZXN1bHQpCiAgewogICAgJHNtYXJ0eS0+YXNzaWduKCdpZHRleHQnLCR0aGlzLT5MYW5nKCduYW1lJykpOwogICAgJHNtYXJ0eS0+YXNzaWduKCd0aXRsZXRleHQnLCR0aGlzLT5MYW5nKCduYW1lJykpOwogICAgJHNtYXJ0eS0+YXNzaWduKCdzdW1tYXJ5dGV4dCcsJHRoaXMtPkxhbmcoJ3N1bW1hcnknKSk7CiAgICAkc21hcnR5LT5hc3NpZ24oJ2Rlc2N0ZXh0JywkdGhpcy0+TGFuZygnZGVzY3JpcHRpb24nKSk7CiAgICAkc21hcnR5LT5hc3NpZ24oJ3NpemV0ZXh0JywkdGhpcy0+TGFuZygnc2l6ZWtiJykpOwogICAgJHNtYXJ0eS0+YXNzaWduKCdhdXRob3J0ZXh0JywkdGhpcy0+TGFuZygnYXV0aG9yJykpOwogICAgJHNtYXJ0eS0+YXNzaWduKCdpcHRleHQnLCR0aGlzLT5MYW5nKCdpcF9hZGRyZXNzJykpOwogICAgJHNtYXJ0eS0+YXNzaWduKCdkbHRleHQnLCR0aGlzLT5MYW5nKCdkb3dubG9hZHMnKSk7CiAgICAkc21hcnR5LT5hc3NpZ24oJ3Bvc3RkYXRldGV4dCcsJHRoaXMtPkxhbmcoJ2RhdGUnKSk7CiAgICB3aGlsZSAoJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3cgKCkpCiAgICAgIHsKCSRvbmVyb3cgPSBuZXcgc3RkQ2xhc3MgKCk7Cgkkb25lcm93LT5pZCA9ICRyb3dbJ3VwbG9hZF9pZCddOwoJJHR5cGUgPSAkdGhpcy0+X0dldEZpbGVUeXBlKCAkcm93Wyd1cGxvYWRfbmFtZSddICk7CgkkaW1ncGF0aCA9ICcuLi9tb2R1bGVzLycuYmFzZW5hbWUoZGlybmFtZShfX0ZJTEVfXykpLicvaW1hZ2VzLyc7CglpZiggJHR5cGUgIT0gZmFsc2UgKQoJICB7CgkgICAgJG9uZXJvdy0+aWNvbiA9ICRpbWdwYXRoLiR0eXBlWydpbWFnZSddOwoJICB9CgllbHNlCgkgIHsKCSAgICAkb25lcm93LT5pY29uID0gJGltZ3BhdGguJ3Vua25vd24ucG5nJzsKCSAgfQoJJG9uZXJvdy0+bmFtZSA9ICRyb3dbJ3VwbG9hZF9uYW1lJ107Cgkkb25lcm93LT5zaXplID0gaW50dmFsKCRyb3dbJ3VwbG9hZF9zaXplJ10gLyAxMDI0LjAgKyAwLjUpOwoJJG9uZXJvdy0+YXV0aG9yID0gJHJvd1sndXBsb2FkX2F1dGhvciddOwoJJG9uZXJvdy0+aXAgPSAkcm93Wyd1cGxvYWRfaXAnXTsKCSRvbmVyb3ctPnN1bW1hcnkgPSAkcm93Wyd1cGxvYWRfc3VtbWFyeSddOwoJJG9uZXJvdy0+ZGVzY3JpcHRpb24gPSAkcm93Wyd1cGxvYWRfZGVzY3JpcHRpb24nXTsKCSRvbmVyb3ctPmRhdGUgPSAkcm93Wyd1cGxvYWRfZGF0ZSddOwoJJG9uZXJvdy0+ZG93bmxvYWRzID0gJHJvd1snZG93bmxvYWRzJ107Cgkkb25lcm93LT5yb3djbGFzcyA9ICRyb3djbGFzczsKCSRvbmVyb3ctPnZpZXdsaW5rID0KCSAgJHRoaXMtPkNyZWF0ZUltYWdlTGluaygkaWQsJ2dldG1pbWVmaWxlJywkcmV0dXJuaWQsJHRoaXMtPkxhbmcoJ3ZpZXcnKSwnaWNvbnMvc3lzdGVtL3ZpZXcuZ2lmJywKCQkJCSBhcnJheSgndXBsb2FkX2lkJz0+JHJvd1sndXBsb2FkX2lkJ10pLCcnLCcnLFRSVUUsRkFMU0UsJ3RhcmdldD0iX2JsYW5rIicpOwoJCQoJJG9uZXJvdy0+ZWRpdHVybCA9CgkgICR0aGlzLT5DcmVhdGVMaW5rICgkaWQsICdlZGl0dXBsb2FkJywgJHJldHVybmlkLCAnJywgCgkJCSAgICAgYXJyYXkgKCd1cGxvYWRfaWQnID0+ICRyb3dbJ3VwbG9hZF9pZCddLAoJCQkJICAgICdjYXRlZ29yeV9pZCcgPT4gJGN1cmNhdGVnb3J5KSwKCQkJICAgICAnJywgdHJ1ZSApOwoKCSRvbmVyb3ctPmVkaXRsaW5rID0KCSAgJHRoaXMtPkNyZWF0ZUxpbmsgKCRpZCwgJ2VkaXR1cGxvYWQnLCAkcmV0dXJuaWQsCgkJCSAgICAgJGdDbXMtPnZhcmlhYmxlc1snYWRtaW50aGVtZSddLT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9lZGl0LmdpZicsCgkJCQkJCQkJCSAgJHRoaXMtPkxhbmcgKCdlZGl0JyksICcnLCAnJywgJ3N5c3RlbWljb24nKSwKCQkJICAgICBhcnJheSAoJ3VwbG9hZF9pZCcgPT4gJHJvd1sndXBsb2FkX2lkJ10sCgkJCQkgICAgJ2NhdGVnb3J5X2lkJyA9PiAkY3VyY2F0ZWdvcnkpKTsKCgkkb25lcm93LT50aW1lbGltaXRlZF9saW5rID0KCSAgJHRoaXMtPkNyZWF0ZUltYWdlTGluaygkaWQsJ2FkbWluX21hbmFnZV90aW1lbGltaXRlZCcsJHJldHVybmlkLAoJCQkJICR0aGlzLT5MYW5nKCdtYW5hZ2VfdGltZWxpbWl0ZWQnKSwnY2xvY2tfbGluay5wbmcnLAoJCQkJIGFycmF5KCd1cGxvYWRfaWQnPT4kcm93Wyd1cGxvYWRfaWQnXSkpOwoJCQoJJG9uZXJvdy0+ZGVsZXRlbGluayA9ICR0aGlzLT5DcmVhdGVMaW5rICgkaWQsJ2RvX2RlbGV0ZXVwbG9hZCcsJHJldHVybmlkLAoJCQkJCQkgJGdDbXMtPnZhcmlhYmxlc1snYWRtaW50aGVtZSddLT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9kZWxldGUuZ2lmJywKCQkJCQkJCQkJCQkgICAgICAkdGhpcy0+TGFuZyAoJ2RlbGV0ZScpLCAnJywgJycsICdzeXN0ZW1pY29uJyksCgkJCQkJCSBhcnJheSAoJ3VwbG9hZF9pZCcgPT4gJHJvd1sndXBsb2FkX2lkJ10sCgkJCQkJCQknY2F0ZWdvcnlfaWQnID0+ICRjdXJjYXRlZ29yeSksCgkJCQkJCSAkdGhpcy0+TGFuZyAoJ2FyZXlvdXN1cmUnKSk7CglhcnJheV9wdXNoICgkcm93YXJyYXksICRvbmVyb3cpOwoJKCRyb3djbGFzcyA9PSAicm93MSIgPyAkcm93Y2xhc3MgPSAicm93MiIgOiAkcm93Y2xhc3MgPSAicm93MSIpOwogICAgICB9CiAgICBpZiggJGRicmVzdWx0ICkgJGRicmVzdWx0LT5DbG9zZSgpOwoKICAgIGlmKCAkbnBhZ2VzID4gMSApCiAgICAgIHsKCS8vIG91dHB1dCBwYWdpbmF0aW9uIHN0dWZmLgoJJHNtYXJ0eS0+YXNzaWduKCducGFnZXMnLCRucGFnZXMpOwoJJHNtYXJ0eS0+YXNzaWduKCdjdXJwYWdlJywkY3VycGFnZSk7CglpZiggJGN1cnBhZ2UgPiAxICkKCSAgewoJICAgICRzbWFydHktPmFzc2lnbignZmlyc3RwYWdlX3VybCcsCgkJCSAgICAkdGhpcy0+Y3JlYXRlX3VybCgkaWQsJ2RlZmF1bHRhZG1pbicsJHJldHVybmlkLAoJCQkJCSAgICAgIGFycmF5KCdmaWxlc3BhZ2UnPT4xKSkpOwoJICAgICRzbWFydHktPmFzc2lnbigncHJldnBhZ2VfdXJsJywKCQkJICAgICR0aGlzLT5jcmVhdGVfdXJsKCRpZCwnZGVmYXVsdGFkbWluJywkcmV0dXJuaWQsCgkJCQkJICAgICAgYXJyYXkoJ2ZpbGVzcGFnZSc9PiRjdXJwYWdlLTEpKSk7CgkgIH0KCWlmKCAkY3VycGFnZSA8ICRucGFnZXMgKQoJICB7CgkgICAgJHNtYXJ0eS0+YXNzaWduKCduZXh0cGFnZV91cmwnLAoJCQkgICAgJHRoaXMtPmNyZWF0ZV91cmwoJGlkLCdkZWZhdWx0YWRtaW4nLCRyZXR1cm5pZCwKCQkJCQkgICAgICBhcnJheSgnZmlsZXNwYWdlJz0+JGN1cnBhZ2UrMSkpKTsKCSAgICAkc21hcnR5LT5hc3NpZ24oJ2xhc3RwYWdlX3VybCcsCgkJCSAgICAkdGhpcy0+Y3JlYXRlX3VybCgkaWQsJ2RlZmF1bHRhZG1pbicsJHJldHVybmlkLAoJCQkJCSAgICAgIGFycmF5KCdmaWxlc3BhZ2UnPT4kbnBhZ2VzKSkpOwoJICB9CiAgICAgIH0KICB9Cgokc21hcnR5LT5hc3NpZ24oJ3BhZ2VsaW1pdCcsJHBhZ2VsaW1pdCk7CiRzbWFydHktPmFzc2lnbignYWRkZmlsZV9saW5rJywkdGhpcy0+Q3JlYXRlSW1hZ2VMaW5rKCRpZCwnYWRtaW5fdXBsb2FkJywkcmV0dXJuaWQsCgkJCQkJCSAgICAgICAkdGhpcy0+TGFuZygndXBsb2FkX2ZpbGUnKSwnaWNvbnMvc3lzdGVtL25ld29iamVjdC5naWYnLAoJCQkJCQkJICAgIGFycmF5KCdjYXRlZ29yeSc9PiRjdXJjYXRlZ29yeSksJycsJycsZmFsc2UpKTsKCiRzbWFydHktPmFzc2lnbiAoJ2l0ZW1zJywgJHJvd2FycmF5KTsKJHNtYXJ0eS0+YXNzaWduICgnaXRlbWNvdW50JywgY291bnQgKCRyb3dhcnJheSkpOwplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUgKCd1cGxvYWRsaXN0LnRwbCcpOwoKLy8gRU9GCj8+]]></data>
	</file>
	<file>
	  <filename>/function.admin_filetypestab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojIEF1dGhvcjogUm9iZXJ0IENhbXBiZWxsIDxyb2JAdGVjaGNvbS5keW5kbnMub3JnPgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDoJLy93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgppZiggISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01hbmFnZSBVcGxvYWRzJykgKQogIHsKICAgIHJldHVybjsKICB9CgppZiggaXNzZXQoJHBhcmFtc1snZGlyZWN0aW9uJ10pICYmIGlzc2V0KCRwYXJhbXNbJ3Jvd2lkJ10pICkKICB7CiAgICBzd2l0Y2goICRwYXJhbXNbJ2RpcmVjdGlvbiddICkKICAgICAgewogICAgICBjYXNlICd1cCc6CgkkcSA9ICJVUERBVEUgIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX2ZpbGV0eXBlcwogICAgICAgICAgICAgICAgIFNFVCBzb3J0b3JkZXIgPSAoc29ydG9yZGVyICsgMSkKICAgICAgICAgICAgICAgV0hFUkUgc29ydG9yZGVyID0gPyI7CgkkZGItPkV4ZWN1dGUoICRxLCBhcnJheSggJHBhcmFtc1snc29ydG9yZGVyJ10gLSAxICkgKTsKCSRxID0gIlVQREFURSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfZmlsZXR5cGVzCiAgICAgICAgICAgICAgICAgU0VUIHNvcnRvcmRlciA9IChzb3J0b3JkZXIgLSAxKQogICAgICAgICAgICAgICBXSEVSRSBpZCA9ID8iOwoJJGRiLT5FeGVjdXRlKCAkcSwgYXJyYXkoICRwYXJhbXNbJ3Jvd2lkJ10gKSApOwoJYnJlYWs7CgogICAgICBjYXNlICdkb3duJzoKCSRxID0gIlVQREFURSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfZmlsZXR5cGVzCiAgICAgICAgICAgICAgICAgU0VUIHNvcnRvcmRlciA9IChzb3J0b3JkZXIgLSAxKQogICAgICAgICAgICAgICBXSEVSRSBzb3J0b3JkZXIgPSA/IjsKCSRkYi0+RXhlY3V0ZSggJHEsIGFycmF5KCAkcGFyYW1zWydzb3J0b3JkZXInXSArIDEgKSApOwoJJHEgPSAiVVBEQVRFICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc19maWxldHlwZXMKICAgICAgICAgICAgICAgICBTRVQgc29ydG9yZGVyID0gKHNvcnRvcmRlciArIDEpCiAgICAgICAgICAgICAgIFdIRVJFIGlkID0gPyI7CgkkZGItPkV4ZWN1dGUoICRxLCBhcnJheSggJHBhcmFtc1sncm93aWQnXSApICk7CglicmVhazsKICAgICAgfQogIH0KCiRzbWFydHkgPSBjbXNtcygpLT5HZXRTbWFydHkoKTsKJGRiID0gY21zbXMoKS0+R2V0RGIoKTsKJHF1ZXJ5ID0gIlNFTEVDVCAqIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX2ZpbGV0eXBlcwogICAgICAgICAgT1JERVIgQlkgc29ydG9yZGVyIjsKJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcXVlcnkgKTsKCmdsb2JhbCAkZ0NtczsKJHRoZW1lT2JqZWN0ID0mICRnQ21zLT52YXJpYWJsZXNbJ2FkbWludGhlbWUnXTsKJGRvd25JbWcgPSAkdGhlbWVPYmplY3QtPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL2Fycm93LWQuZ2lmJywgbGFuZygnZG93bicpLCcnLCcnLCdzeXN0ZW1pY29uJyk7CiR1cEltZyA9ICR0aGVtZU9iamVjdC0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vYXJyb3ctdS5naWYnLCBsYW5nKCd1cCcpLCcnLCcnLCdzeXN0ZW1pY29uJyk7CiRlZGl0SW1nID0gJHRoZW1lT2JqZWN0LT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9lZGl0LmdpZicsIGxhbmcoJ2VkaXQnKSwnJywnJywnc3lzdGVtaWNvbicpOwokZGVsZXRlSW1nID0gJHRoZW1lT2JqZWN0LT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9kZWxldGUuZ2lmJywgbGFuZygnZGVsZXRlJyksJycsJycsJ3N5c3RlbWljb24nKTsKJG5ld09iamVjdCA9ICR0aGVtZU9iamVjdC0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vbmV3b2JqZWN0LmdpZicsJHRoaXMtPkxhbmcoJ2FkZGZpbGV0eXBlJyksJycsJycsJ3N5c3RlbWljb24nKTsKCgokcm93Y2xhc3MgPSAncm93MSc7CiRlbnRyaWVzID0gYXJyYXkoKTsKJGNvdW50ID0gMDsKd2hpbGUoICRkYnJlc3VsdCAmJiAkcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdygpICkKICB7CiAgICAkb2JqID0gbmV3IFN0ZENsYXNzKCk7CiAgICBmb3JlYWNoKCAkcm93IGFzICRrZXk9PiR2YWx1ZSApCiAgICAgIHsKCSRvYmotPiRrZXkgPSAkdmFsdWU7CiAgICAgIH0KCiAgICAkb2JqLT5pY29uID0gJzxpbWcgc3JjPSIuLi9tb2R1bGVzLycuYmFzZW5hbWUoZGlybmFtZShfX0ZJTEVfXykpLicvaW1hZ2VzLycuJG9iai0+aW1hZ2UuJyIgYWx0PSInLiRvYmotPm5hbWUuJyIvPic7CiAgICBpZiggJGNvdW50ICE9IDAgKQogICAgICB7Cgkkb2JqLT51cGxpbmsgPSAkdGhpcy0+Q3JlYXRlTGluaygkaWQsJ2RlZmF1bHRhZG1pbicsJHJldHVybmlkLCR1cEltZywKCQkJCQkgYXJyYXkoJ2FjdGl2ZV90YWInPT4nZmlsZV90eXBlcycsCgkJCQkJICAgICAgICdkaXJlY3Rpb24nPT4ndXAnLAoJCQkJCSAgICAgICAnc29ydG9yZGVyJz0+JHJvd1snc29ydG9yZGVyJ10sCgkJCQkJICAgICAgICdyb3dpZCc9PiRyb3dbJ2lkJ10pKTsKICAgICAgfQogICAgaWYoICRjb3VudCA8ICgkZGJyZXN1bHQtPlJlY29yZENvdW50KCkgLSAxKSApCiAgICAgIHsKCSRvYmotPmRvd25saW5rID0gJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCdkZWZhdWx0YWRtaW4nLCRyZXR1cm5pZCwkZG93bkltZywKCQkJCQkgICBhcnJheSgnYWN0aXZlX3RhYic9PidmaWxlX3R5cGVzJywKCQkJCQkJICdkaXJlY3Rpb24nPT4nZG93bicsCgkJCQkJCSAnc29ydG9yZGVyJz0+JHJvd1snc29ydG9yZGVyJ10sCgkJCQkJCSAncm93aWQnPT4kcm93WydpZCddKSk7CiAgICAgIH0KICAgICRvYmotPmVkaXRsaW5rID0gJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCdhZGRmaWxldHlwZScsJHJldHVybmlkLCRlZGl0SW1nLAoJCQkJICAgICAgIGFycmF5KCdhY3RpdmVfdGFiJz0+J2ZpbGVfdHlwZXMnLAoJCQkJCSAgICAgJ3R5cGVpZCc9PiRyb3dbJ2lkJ10pKTsKICAgICRvYmotPmRlbGV0ZWxpbmsgPSAkdGhpcy0+Q3JlYXRlTGluaygkaWQsJ2RlbGV0ZXR5cGUnLCRyZXR1cm5pZCwkZGVsZXRlSW1nLAoJCQkJCSBhcnJheSgnYWN0aXZlX3RhYic9PidmaWxlX3R5cGVzJywKCQkJCQkgICAgICAgJ3R5cGVpZCc9PiRyb3dbJ2lkJ10pKTsKICAgICRvYmotPnJvd2NsYXNzID0gJHJvd2NsYXNzOwogICAgJGNvdW50Kys7CiAgICAkcm93Y2xhc3MgPSAoJHJvd2NsYXNzID09ICdyb3cxJykgPyAncm93MicgOiAncm93MSc7CiAgICAkZW50cmllc1tdID0gJG9iajsKICB9CgovLyB0aGUgdW5rbm93biByb3cKJG9iaiA9IG5ldyBTdGRDbGFzcygpOwokb2JqLT5uYW1lID0gJHRoaXMtPkxhbmcoJ25hbWVfdW5rbm93bicpOwokb2JqLT5kZXNjcmlwdGlvbiA9ICc8ZW0+Jy4kdGhpcy0+TGFuZygnZGVzY3JpcHRpb25fdW5rbm93bicpLic8L2VtPic7CiRvYmotPnJvd2NsYXNzID0gJ3JvdzMnOwokb2JqLT5pY29uID0gJzxpbWcgc3JjPSIuLi9tb2R1bGVzLycuYmFzZW5hbWUoZGlybmFtZShfX0ZJTEVfXykpLicvaW1hZ2VzL3Vua25vd24ucG5nIiBhbHQ9IicuJG9iai0+bmFtZS4nIi8+JzsKJGVudHJpZXNbXSA9ICRvYmo7CiRzbWFydHktPmFzc2lnbignaXRlbXMnLCRlbnRyaWVzKTsKJHNtYXJ0eS0+YXNzaWduKCdpdGVtY291bnQnLGNvdW50KCRlbnRyaWVzKSk7Cgokc21hcnR5LT5hc3NpZ24oJ2FkZGxpbmsnLAoJCSR0aGlzLT5DcmVhdGVMaW5rKCRpZCwnYWRkZmlsZXR5cGUnLCRyZXR1cm5pZCwkbmV3T2JqZWN0LAoJCQkJICBhcnJheSgnYWN0aXZlX3RhYic9PidmaWxlX3R5cGVzJykpLgoJCSR0aGlzLT5DcmVhdGVMaW5rKCRpZCwnYWRkZmlsZXR5cGUnLCRyZXR1cm5pZCwkdGhpcy0+TGFuZygnYWRkZmlsZXR5cGUnKSwKCQkJCSAgYXJyYXkoJ2FjdGl2ZV90YWInPT4nZmlsZV90eXBlcycpKSk7Cgokc21hcnR5LT5hc3NpZ24oJ3N0YXJ0Zm9ybScsCgkJJHRoaXMtPkNyZWF0ZUZvcm1TdGFydCgkaWQsJ3VwbG9hZGljb24nLCRyZXR1cm5pZCwncG9zdCcsCgkJCQkgICAgICAgJ211bHRpcGFydC9mb3JtLWRhdGEnLGZhbHNlLCcnLAoJCQkJICAgICAgIGFycmF5KCdhY3RpdmVfdGFiJz0+J2ZpbGVfdHlwZXMnKSkpOwokc21hcnR5LT5hc3NpZ24oJ2VuZGZvcm0nLAoJCSR0aGlzLT5DcmVhdGVGb3JtRW5kKCkpOwokc21hcnR5LT5hc3NpZ24oJ3Byb21wdF91cGxvYWRfaWNvbicsCgkJJHRoaXMtPkxhbmcoJ3Byb21wdF91cGxvYWRfaWNvbicpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF91cGxvYWRfaWNvbicsCgkJJHRoaXMtPkNyZWF0ZUZpbGVVcGxvYWRJbnB1dCgkaWQsJ2lucHV0X3VwbG9hZF9pY29uJywnJyw1MCkpOwokc21hcnR5LT5hc3NpZ24oJ3N1Ym1pdCcsCgkJJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwnc3VibWl0JywkdGhpcy0+TGFuZygnc3VibWl0JykpKTsKZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCdmaWxldHlwZXMudHBsJyk7CgovLyBFT0YKPz4K]]></data>
	</file>
	<file>
	  <filename>/function.admin_prefstab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIgbW9kdWxlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOgkvL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KaWYoICFpc3NldCgkZ0NtcykgKSBleGl0OwppZiAoISR0aGlzLT5DaGVja1Blcm1pc3Npb24gKCdNb2RpZnkgU2l0ZSBQcmVmZXJlbmNlcycpKSByZXR1cm47CgovLyBDcmVhdGVGb3JtU3RhcnQgc2V0cyB1cCBhIHByb3BlciBmb3JtIHRhZyB0aGF0IHdpbGwgY2F1c2UgdGhlIHN1Ym1pdCB0bwovLyByZXR1cm4gY29udHJvbCB0byB0aGlzIG1vZHVsZSBmb3IgcHJvY2Vzc2luZy4KJHNtYXJ0eS0+YXNzaWduICgnc3RhcnRmb3JtJywgJHRoaXMtPkNyZWF0ZUZvcm1TdGFydCAoJGlkLCAnc2F2ZV9hZG1pbl9wcmVmcycsICRyZXR1cm5pZCkpOwokc21hcnR5LT5hc3NpZ24gKCdlbmRmb3JtJywgJHRoaXMtPkNyZWF0ZUZvcm1FbmQgKCkpOwoKJHNtYXJ0eS0+YXNzaWduICgnc3VibWl0JywKCQkgICAgICAgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0ICgkaWQsICdzdWJtaXQnLAoJCQkJCQkgJHRoaXMtPkxhbmcoJ3N1Ym1pdCcpLCAnJywnJywKCQkJCQkJICR0aGlzLT5MYW5nKCdjb25maXJtX3ByZWZlcmVuY2VzJykpKTsgICAgCiAgICAKLy8gaXQncyBnb29kIHByYWN0aWNlIHRvIHNldCBldmVuIHN0YXRpYyB0aXRsZXMgdXNpbmcgc21hcnR5LCAKLy8gc28gbG9jYWxpemF0aW9uIGlzIGVhc2llci4KJHNtYXJ0eS0+YXNzaWduKCdhdXRvd2F0ZXJtYXJrJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgnYXV0b3dhdGVybWFyaycsMCkpOwoKJHNtYXJ0eS0+YXNzaWduICgndGl0bGVfdmFsaWRfdXBsb2FkZXh0ZW5zaW9ucycsCgkJICAgICAgICR0aGlzLT5MYW5nICgndGl0bGVfdmFsaWRfdXBsb2FkZXh0ZW5zaW9ucycpKTsKJHNtYXJ0eS0+YXNzaWduICgndGl0bGVfc3VibmV0X2V4Y2x1c2lvbnMnLAoJCSAgICAgICAkdGhpcy0+TGFuZyAoJ3RpdGxlX3N1Ym5ldF9leGNsdXNpb25zJykpOwokc21hcnR5LT5hc3NpZ24gKCd0aXRsZV9zZWN0aW9uJywKCQkgICAgICAgJHRoaXMtPkxhbmcgKCd0aXRsZV9tb2RfcHJlZnMnKSk7CiRzbWFydHktPmFzc2lnbiAoJ3RpdGxlX2R1bW15X2luZGV4X2h0bWwnLAoJCSAgICAgICAkdGhpcy0+TGFuZyAoJ3RpdGxlX2R1bW15X2luZGV4X2h0bWwnKSk7CiRzbWFydHktPmFzc2lnbiAoJ3RpdGxlX2VtYWlsX29uX3VwbG9hZCcsCgkJICAgICAgICR0aGlzLT5MYW5nICgndGl0bGVfZW1haWxfb25fdXBsb2FkJykpOwokc21hcnR5LT5hc3NpZ24gKCd0aXRsZV9yZWRpcmVjdF9vbl91cGxvYWQnLAoJCSAgICAgICAkdGhpcy0+TGFuZygndGl0bGVfcmVkaXJlY3RvbnVwbG9hZCcpKTsKJHNtYXJ0eS0+YXNzaWduICgndGl0bGVfYXV0b3RodW1ibmFpbF9leHRlbnNpb25zJywKCQkgICAgICAgJHRoaXMtPkxhbmcoJ3RpdGxlX2F1dG90aHVtYm5haWxfZXh0ZW5zaW9ucycpKTsKJHNtYXJ0eS0+YXNzaWduICgndGl0bGVfYXV0b3RodW1ibmFpbF9zaXplJywKCQkgICAgICAgJHRoaXMtPkxhbmcoJ3RpdGxlX2F1dG90aHVtYm5haWxfc2l6ZScpKTsKJHNtYXJ0eS0+YXNzaWduICgndGl0bGVfZG93bmxvYWRfY2h1bmtzaXplJywKCQkgICAgICAgJHRoaXMtPkxhbmcoJ3RpdGxlX2Rvd25sb2FkX2NodW5rc2l6ZScpKTsKJHNtYXJ0eS0+YXNzaWduICgnaW5mb19kb3dubG9hZF9jaHVua3NpemUnLAoJCSAgICAgICAkdGhpcy0+TGFuZygnaW5mb19kb3dubG9hZF9jaHVua3NpemUnKSk7CiRzbWFydHktPmFzc2lnbigndGl0bGVfYWxsb3dfZGVsZXRlJywkdGhpcy0+TGFuZygndGl0bGVfYWxsb3dfZGVsZXRlJykpOwoKJGNvbnRlbnRvcHMgPSAkZ0Ntcy0+R2V0Q29udGVudE9wZXJhdGlvbnMoKTsKJHNtYXJ0eS0+YXNzaWduKCd0aXRsZV9zZW5kZmlsZXBhZ2UnLCR0aGlzLT5MYW5nKCd0aXRsZV9zZW5kZmlsZXBhZ2UnKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfc2VuZGZpbGVwYWdlJywKCQkkY29udGVudG9wcy0+Q3JlYXRlSGllcmFyY2h5RHJvcGRvd24oJycsJHRoaXMtPkdldFByZWZlcmVuY2UoJ2RlZmF1bHRfc2VuZGZpbGVwYWdlJywtMSksCgkJCQkJCSAgICAgJGlkLidkZWZhdWx0X3NlbmRmaWxlcGFnZScsMSkpOwoKJHNtYXJ0eS0+YXNzaWduKCd0aXRsZV9yZWRpcmVjdF9vbl9zZW5kZmlsZScsJHRoaXMtPkxhbmcoJ3RpdGxlX3JlZGlyZWN0X29uX3NlbmRmaWxlJykpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0X3JlZGlyZWN0X29uX3NlbmRmaWxlJywKCQkkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCAkaWQsICdyZWRpcmVjdF9vbl9zZW5kZmlsZScsCgkJCQkJJHRoaXMtPkdldFByZWZlcmVuY2UoJ3JlZGlyZWN0X29uX3NlbmRmaWxlJywnJyksMzAsODApKTsKCi8vIHlvdSdsbCBvZnRlbiB3YW50IHRvIGRvIHRoaW5ncyBsaWtlIHRoaXMgdG8gcHJvdmlkZSBmZWVkYmFjazoKJHNtYXJ0eS0+YXNzaWduICgnaW5wdXRfdmFsaWRfdXBsb2FkZXh0ZW5zaW9ucycsCgkJICAgICAgICR0aGlzLT5DcmVhdGVJbnB1dFRleHQgKCRpZCwgJ3ZhbGlkX3VwbG9hZGV4dGVuc2lvbnMnLAoJCQkJCSAgICAgICAkdGhpcy0+R2V0UHJlZmVyZW5jZSAoJ3ZhbGlkX3VwbG9hZGV4dGVuc2lvbnMnLAoJCQkJCQkJCSAgICAgInppcCxneix0YXIiKSwgJzMwJywgJzI1NScpKTsKCiRzbWFydHktPmFzc2lnbiAoJ2lucHV0X3N1Ym5ldF9leGNsdXNpb25zJywKCQkgICAgICAgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCggJGlkLCAnc3VibmV0X2V4Y2x1c2lvbnMnLAoJCQkJCSAgICAgICAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnc3VibmV0X2V4Y2x1c2lvbnMnLCIiKSw1MCwyNTUpKTsKJHNtYXJ0eS0+YXNzaWduICgnaW5wdXRfZHVtbXlfaW5kZXhfaHRtbCcsCgkJICAgICAgICR0aGlzLT5DcmVhdGVJbnB1dENoZWNrYm94KCAkaWQsICdpbnB1dF9kdW1teV9pbmRleF9odG1sJywKCQkJCQkJICAgMSwgJHRoaXMtPkdldFByZWZlcmVuY2UoJ2NyZWF0ZV9kdW1teV9pbmRleF9odG1sJykpKTsKJHNtYXJ0eS0+YXNzaWduICgnaW5wdXRfZW1haWxfb25fdXBsb2FkJywKCQkgICAgICAgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCggJGlkLCAnZW1haWxfb25fdXBsb2FkJywKCQkJCQkgICAgICAgJHRoaXMtPkdldFByZWZlcmVuY2UoJ3NlbmRfdXBsb2FkX25vdGlmaWNhdGlvbnNfdG8nKSwKCQkJCQkgICAgICAgNDAsIDI1NSApKTsKJHNtYXJ0eS0+YXNzaWduICgnaW5wdXRfcmVkaXJlY3Rfb25fdXBsb2FkJywKCQkgICAgICAgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCggJGlkLCAncmVkaXJlY3Rfb25fdXBsb2FkJywKCQkJCQkgICAgICAgJHRoaXMtPkdldFByZWZlcmVuY2UoJ3JlZGlyZWN0X29uX3VwbG9hZCcsJycpLDMwLDgwKSk7Cgokc21hcnR5LT5hc3NpZ24gKCdpbnB1dF9hdXRvdGh1bWJuYWlsX2V4dGVuc2lvbnMnLAoJCSAgICAgICAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCAkaWQsICdhdXRvdGh1bWJuYWlsX2V4dGVuc2lvbnMnLAoJCQkJCSAgICAgICAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnYXV0b3RodW1ibmFpbF9leHRlbnNpb25zJywnJyksNDApKTsKCiRzbWFydHktPmFzc2lnbiAoJ2lucHV0X2F1dG90aHVtYm5haWxfc2l6ZScsCgkJICAgICAgICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoICRpZCwgJ2F1dG90aHVtYm5haWxfc2l6ZScsCgkJCQkJICAgICAgICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdhdXRvdGh1bWJuYWlsX3NpemUnLCcnKSwzKSk7Cgokc21hcnR5LT5hc3NpZ24oJ2lucHV0X2FsbG93X2RlbGV0ZScsCgkJJHRoaXMtPkNyZWF0ZUlucHV0Y2hlY2tib3goJGlkLCdhbGxvd19kZWxldGUnLDEsCgkJCQkJICAgJHRoaXMtPkdldFByZWZlcmVuY2UoJ2FsbG93X2RlbGV0ZScsMCkpKTsKCiRzbWFydHktPmFzc2lnbignaW5wdXRfZG93bmxvYWRfY2h1bmtzaXplJywKCQkkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwnZG93bmxvYWRfY2h1bmtzaXplJywKCQkJCSAgICAgICAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZG93bmxvYWRfY2h1bmtzaXplJyw4KSw1LDUpKTsKCiRzbWFydHktPmFzc2lnbigndGltZWxpbWl0ZWRfaG91cnMnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCd0aW1lbGltaXRlZF9ob3VycycsNzIpKTsKJHNtYXJ0eS0+YXNzaWduKCd0aW1lbGltaXRlZF9kb3dubG9hZHMnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCd0aW1lbGltaXRlZF9kb3dubG9hZHMnLDApKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9nZXRmaWxlX3Jlc3VsdHBhZ2UnLAoJCSRjb250ZW50b3BzLT5DcmVhdGVIaWVyYXJjaHlEcm9wZG93bignJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZ2V0ZmlsZV9yZXN1bHRwYWdlJyksCgkJCQkJCSAgICAgJGlkLidnZXRmaWxlX3Jlc3VsdHBhZ2UnLDEpKTsKJHNtYXJ0eS0+YXNzaWduKCd0aW1lbGltaXRlZF9hdXRvZGVsZXRlJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgndGltZWxpbWl0ZWRfYXV0b2RlbGV0ZScsMCkpOwokc21hcnR5LT5hc3NpZ24oJ3RpbWVsaW1pdGVkX3N1YmplY3QnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCd0aW1lbGltaXRlZF9zdWJqZWN0JywKCQkJCQkJCSAgICR0aGlzLT5MYW5nKCdkZmx0X3RpbWVsaW1pdGVkX3N1YmplY3QnKSkpOwoKJHNtYXJ0eS0+YXNzaWduKCdjYXRlZ29yeV9leHBpcnknLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdjYXRlZ29yeV9leHBpcnknLDApKTsKJHNtYXJ0eS0+YXNzaWduKCdhbGxvd191cGxvYWRfc2VuZGZpbGUnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdhbGxvd191cGxvYWRfc2VuZGZpbGUnLDApKTsKJHNtYXJ0eS0+YXNzaWduKCdmcmllbmRseW5hbWUnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdmcmllbmRseW5hbWUnKSk7CgovLyBEaXNwbGF5IHRoZSBwb3B1bGF0ZWQgdGVtcGxhdGUKZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlICgnYWRtaW5wcmVmcy50cGwnKTsKCi8vIEVPRgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/function.admin_reportstab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojIEF1dGhvcjogUm9iZXJ0IENhbXBiZWxsIDxyb2JAdGVjaGNvbS5keW5kbnMub3JnPgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDoJLy93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKaWYoICEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdDcmVhdGUgVXBsb2FkcyBSZXBvcnRzJykgKSByZXR1cm47CgoKJGxpbmtzID0gYXJyYXkoKTsKJGxpbmtzW10gPSBhcnJheSgndGl0bGUnPT4kdGhpcy0+TGFuZygndGl0bGVfcmVwb3J0X2Rvd25sb2Fkc2J5dXNlcicpLAoJCSAndXJsJz0+JHRoaXMtPmNyZWF0ZV91cmwoJGlkLCdhZG1pbl9yZXBvcnRfZG93bmxvYWRzYnl1c2VyJywkcmV0dXJuaWQpLAoJCSAnaWNvbic9PiR0aGlzLT5EaXNwbGF5SW1hZ2UoJ21vZHVsZXMvJy4kdGhpcy0+R2V0TmFtZSgpLicvaW1hZ2VzL3VzZXItcmVwb3J0LWljb24ucG5nJywkdGhpcy0+TGFuZygnaWNvbicpLDMyLDMyKSk7CiRsaW5rc1tdID0gYXJyYXkoJ3RpdGxlJz0+JHRoaXMtPkxhbmcoJ3RpdGxlX3JlcG9ydF9kb3dubG9hZHNieWZpbGUnKSwKCQkgJ3VybCc9PiR0aGlzLT5jcmVhdGVfdXJsKCRpZCwnYWRtaW5fcmVwb3J0X2Rvd25sb2Fkc2J5ZmlsZScsJHJldHVybmlkKSk7CiRzbWFydHktPmFzc2lnbignbGlua3MnLCRsaW5rcyk7Cgokc21hcnR5LT5hc3NpZ24oJ3JlcG9ydF9pY29uJywkdGhpcy0+RGlzcGxheUltYWdlKCdtb2R1bGVzLycuJHRoaXMtPkdldE5hbWUoKS4nL2ltYWdlcy9maWxlLXJlcG9ydC1pY29uLnBuZycsJHRoaXMtPkxhbmcoJ2ljb24nKSwzMiwzMikpOwoKZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCdhZG1pbl9yZXBvcnRzdGFiLnRwbCcpOwojCiMgRU9GCiMKPz4=]]></data>
	</file>
	<file>
	  <filename>/functions.admin_tools.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLWZpbGUtc3R5bGU6bGludXg7IHRhYi13aWR0aDoyOyBpbmRlbnQtdGFicy1tb2RlOnQ7IGMtYmFzaWMtb2Zmc2V0OiAyOyAtKi0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojIFZlcnNpb246IDEuMy4wLWJldGExLCBjYWxndXkxMDAwCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOgkvL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCmZ1bmN0aW9uIF91cGxvYWRzX0FkbWluRG9EZWxldGVVcGxvYWQgKCYkbW9kdWxlLCAkdXBsb2FkX2lkLCR1bmxpbmtfZmlsZSA9IEZBTFNFKQp7CiAgLy8gd2UncmUgZ29ubmEgcHV0IHNvbWUgdGhvdWdodCBpbnRvIHRoaXMuLi4gdGhlIHVzZXIKICAvLyBoYXMgYWxyZWFkeSBhbnN3ZXJlZCwgWWVwLCBXZSdyZSBzdXJlIHRoZSBmaWxlIGV4aXN0cywgZG9uJ3QgcmVhbGx5IGNhcmUgYW55d2F5cwogIC8vIHNvIGFsbCB3ZSBoYXZlIHRvIGRvIGlzIHJlbW92ZSB0aGUgZmlsZSwgYW5kIHJlbW92ZSB0aGUgcmVjb3JkIGZyb20gdGhlIGRhdGFiYXNlLgoKICAvLyBnZXQgdGhlIGluZm8gYWJvdXQgdGhlIHVwbG9hZCB3ZSdyZSBnb25uYSBkZWxldGUKICAkZGIgPSAkbW9kdWxlLT5HZXREYigpOwogICRxdWVyeSA9ICJTRUxFQ1QgdXBsb2FkX2lkLCB1cGxvYWRfY2F0ZWdvcnlfaWQsIHVwbG9hZF9uYW1lLCB1cGxvYWRfdGh1bWJuYWlsIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzIFdIRVJFIHVwbG9hZF9pZCA9ID8iOwoJJHVwbG9hZHJvdyA9ICRkYi0+R2V0Um93KCAkcXVlcnksIGFycmF5KCAkdXBsb2FkX2lkICkgKTsKICBpZiggISR1cGxvYWRyb3cgKSByZXR1cm4gJG1vZHVsZS0+TGFuZygnZXJyb3JfZGJlcnJvcicpOwoKCWlmKCAkdW5saW5rX2ZpbGUgKSB7CgkJLy8gYW5kIHRoZSBpbmZvIGFib3V0IGl0J3MgY2F0ZWdvcnkKCQkkcXVlcnkgPSAiU0VMRUNUIHVwbG9hZF9jYXRlZ29yeV9wYXRoIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX2NhdGVnb3JpZXMgCiAgICAgICAgICAgICAgV0hFUkUgdXBsb2FkX2NhdGVnb3J5X2lkID0gPyI7CgkJJGNhdGVnb3J5cm93ID0gJGRiLT5HZXRSb3coICRxdWVyeSwgYXJyYXkoICR1cGxvYWRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9pZCddICkgKTsKCQlpZiggISRjYXRlZ29yeXJvdyApIHJldHVybiAkbW9kdWxlLT5MYW5nKCdlcnJvcl9kYmVycm9yJyk7CgoJCS8vIG5vdyBidWlsZCB0aGUgcGF0aAoJCSRmaWxlID0gJG1vZHVsZS0+X3VwbG9hZFBhdGgoICRjYXRlZ29yeXJvd1sndXBsb2FkX2NhdGVnb3J5X3BhdGgnXSwgJHVwbG9hZHJvd1sndXBsb2FkX25hbWUnXSApOwoKCQkvLyBhbmQgZGVsZXRlIHRoZSBmaWxlCgkJQHVubGluayggJGZpbGUgKTsKCgkJLy8gYW5kIHRoZSB0aHVtYm5haWwgaWYgb25lIGV4aXN0cwoJCWlmKCAhZW1wdHkoJHVwbG9hZHJvd1sndXBsb2FkX3RodW1ibmFpbCddKSApIHsKCQkJJHRuZmlsZSA9ICRtb2R1bGUtPl9jYXRlZ29yeVBhdGgoICRjYXRlZ29yeXJvd1sndXBsb2FkX2NhdGVnb3J5X3BhdGgnXSApLkRJUkVDVE9SWV9TRVBBUkFUT1I7CgkJCSR0bmZpbGUgLj0gJHVwbG9hZHJvd1sndXBsb2FkX3RodW1ibmFpbCddOwoJCQlAdW5saW5rKCAkdG5maWxlICk7CgkJfQoJfQoKCS8vIGFuZCBhbnkgdGltZSBsaW1pdGVkIHVybHMKCSRxdWVyeSA9ICdERUxFVEUgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHNfdGltZWxpbWl0IFdIRVJFIHVwbG9hZF9pZCA9ID8nOwogICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHF1ZXJ5LCBhcnJheSggJHVwbG9hZHJvd1sndXBsb2FkX2lkJ10gKSApOwoKICAvLyBhbmQgdGhlIGZpZWxkIHZhbHVlcwogICRxdWVyeSA9ICdERUxFVEUgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHNfZmllbGR2YWxzIFdIRVJFIHVwbG9hZF9pZCA9ID8nOwogICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHF1ZXJ5LCBhcnJheSggJHVwbG9hZHJvd1sndXBsb2FkX2lkJ10gKSApOwoKICAvLyBhbmQgdGhlIGRvd25sb2FkcwogICRxdWVyeSA9ICJERUxFVEUgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfZG93bmxvYWRzIFdIRVJFIGZpbGVfaWQgPSA/IjsKICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxdWVyeSwgYXJyYXkoICR1cGxvYWRyb3dbJ3VwbG9hZF9pZCddICkgKTsKCiAgLy8gYW5kIHRoZSByZWNvcmQgaXRzZWxmLgogICRxdWVyeSA9ICJERUxFVEUgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHMgV0hFUkUgdXBsb2FkX2lkID0gPyI7CiAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcXVlcnksIGFycmF5KCAkdXBsb2Fkcm93Wyd1cGxvYWRfaWQnXSApICk7CgogIC8vIGRlbGV0ZSB0aGUgc2VhcmNoIHN0dWZmCiAgJHNlYXJjaCA9ICRtb2R1bGUtPkdldE1vZHVsZUluc3RhbmNlKCdTZWFyY2gnKTsKICBpZiAoJHNlYXJjaCAhPSBGQUxTRSkgJHNlYXJjaC0+RGVsZXRlV29yZHMoJG1vZHVsZS0+R2V0TmFtZSgpLCAkdXBsb2Fkcm93Wyd1cGxvYWRfaWQnXSwgJ3VwbG9hZCcpOwoKICAvLyBzZW5kIGFuIGV2ZW50CiAgJHBhcm1zID0gYXJyYXkoKTsKICAkcGFybXNbJ2lkJ10gPSAkdXBsb2Fkcm93Wyd1cGxvYWRfaWQnXTsKICAkcGFybXNbJ25hbWUnXSA9ICR1cGxvYWRyb3dbJ3VwbG9hZF9uYW1lJ107CiAgJHBhcm1zWydjYXRlZ29yeV9pZCddID0gJHVwbG9hZHJvd1sndXBsb2FkX2NhdGVnb3J5X2lkJ107CiAgJG1vZHVsZS0+U2VuZEV2ZW50KCdPblJlbW92ZScsICRwYXJtcyApOwoKICAvLyBhbmQgd2UncmUgZG9uZQogICRtb2R1bGUtPkF1ZGl0KCAwLCAkbW9kdWxlLT5HZXROYW1lKCksCgkJCQkJCQkJCSRtb2R1bGUtPmxhbmcoJ2RlbGV0ZWQnLCAkdXBsb2Fkcm93Wyd1cGxvYWRfbmFtZSddKSApOwoKCXJldHVybiBmYWxzZTsKfQoKCmZ1bmN0aW9uIF91cGxvYWRzX0FkbWluRG9EZWxldGVDYXRlZ29yeSAoJiRtb2R1bGUsICRjYXRlZ29yeV9pZCkKewoJLy8gZ2V0IHRoZSBjYXRlZ29yeSBkZXRhaWxzCgkkY2F0ZWdvcnkgPSAkbW9kdWxlLT5fZ2V0VXBsb2FkQ2F0ZWdvcnlEZXRhaWxzKCAkY2F0ZWdvcnlfaWQgKTsKCWlmKCAhJGNhdGVnb3J5ICkgcmV0dXJuICRtb2R1bGUtPkxhbmcoJ2Vycm9yX2NhdGVnb3J5bm90Zm91bmQnKTsKCgkvLyBnZXQgdGhlIGZpbGVzIGZyb20gdGhlIGNhdGVnb3J5CgkkcXVlcnkgPSAnU0VMRUNUIHVwbG9hZF9pZCBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2FkcyAKICAgICAgICAgICAgV0hFUkUgdXBsb2FkX2NhdGVnb3J5X2lkID0gPyc7CgkkZGIgPSAkbW9kdWxlLT5HZXREYigpOwoJJHRtcCA9ICRkYi0+R2V0T25lKCRxdWVyeSxhcnJheSgkY2F0ZWdvcnlfaWQpICk7CglpZiggJHRtcCApIHJldHVybiAkbW9kdWxlLT5MYW5nKCdlcnJvcl9jYXRlZ29yeW5vdGVtcHR5Jyk7CgoJJGRpciA9ICRtb2R1bGUtPl9jYXRlZ29yeVBhdGgoICRjYXRlZ29yeVsndXBsb2FkX2NhdGVnb3J5X3BhdGgnXSApOwoJY2dlX2Rpcjo6cmVjdXJzaXZlX3JtZGlyKCRkaXIpOwoKCWlmKCBmaWxlX2V4aXN0cygkZGlyKSApCXJldHVybiAkbW9kdWxlLT5MYW5nKCdlcnJvcl9kZWxldGUnLCRkaXIpOwoKCS8vIGRlbGV0ZSB0aGUgY2F0ZWdvcnkgZnJvbSB0aGUgZGIKCSRkYiA9ICRtb2R1bGUtPkdldERiKCk7CgkkcXVlcnkgPSAiREVMRVRFIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX2NhdGVnb3JpZXMgV0hFUkUgdXBsb2FkX2NhdGVnb3J5X2lkID0gPyI7CgkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxdWVyeSwgYXJyYXkoICRjYXRlZ29yeV9pZCApICk7CgkKCS8vIHNlbmQgYW4gZXZlbnQKCSRwYXJtc1tdID0gYXJyYXkoKTsKCSRwYXJtc1snbmFtZSddID0gJGNhdGVnb3J5Wyd1cGxvYWRfY2F0ZWdvcnlfbmFtZSddOwoJJHBhcm1zWydwYXRoJ10gPSAkY2F0ZWdvcnlbJ3VwbG9hZF9jYXRlZ29yeV9wYXRoJ107CgkkbW9kdWxlLT5TZW5kRXZlbnQoJ09uRGVsZXRlQ2F0ZWdvcnknLCRwYXJtcyk7CgkJCgkvLyBhbmQgd2UncmUgZG9uZQoJcmV0dXJuIEZBTFNFOwp9CgoKZnVuY3Rpb24gX3VwbG9hZHNfQ29weUNhdGVnb3J5KCYkbW9kdWxlLCRvcmlnX2NhdGVnb3J5X2lkLCRkZXN0X25hbWUsJGRlc3RfcGF0aCwKCQkJCQkJCQkJCQkJCQkJICRkZXN0X2Rlc2MsJGNvcHlmaWxlcywkZWRpdF9kZXNjID0gdHJ1ZSkKewoJJGdDbXMgPSBjbXNtcygpOwoJJGNvbmZpZyA9ICRnQ21zLT5HZXRDb25maWcoKTsKCgkvLyBnZXQgdGhlIG9yaWdpbmFsIGNhdGVnb3J5Cgkkb3JpZ19jYXRlZ29yeSA9IFVwbG9hZHM6OmxvYWRfY2F0ZWdvcnlfYnlfaWQoJG9yaWdfY2F0ZWdvcnlfaWQpOwoJaWYoICEkb3JpZ19jYXRlZ29yeSApCXJldHVybiAkbW9kdWxlLT5MYW5nKCdlcnJvcl9jYXRlZ29yeW5vdGZvdW5kJyk7CgkkZGVzdF9jYXRlZ29yeSA9ICRvcmlnX2NhdGVnb3J5OwoKCWlmKCBlbXB0eSgkZGVzdF9uYW1lKSApCXJldHVybiAkbW9kdWxlLT5MYW5nKCdlcnJvcl9taXNzaW5nX2ludmFsaWQnLCduYW1lJyk7CglpZiggZW1wdHkoJGRlc3RfcGF0aCkgKSByZXR1cm4gJG1vZHVsZS0+TGFuZygnZXJyb3JfbWlzc2luZ19pbnZhbGlkJywncGF0aCcpOwoJJHRtcCA9IFVwbG9hZHM6OmdldENhdGVnb3J5RnJvbU5hbWUoJGRlc3RfbmFtZSk7CglpZiggaXNfYXJyYXkoJHRtcCkgKSByZXR1cm4gJG1vZHVsZS0+TGFuZygnZXJyb3JfY2F0ZWdvcnlleGlzdHMyJywkZGVzdF9uYW1lKTsKCSR0bXAyID0gVXBsb2Fkczo6Y2F0ZWdvcnlfcGF0aF9pbl91c2UoJGRlc3RfcGF0aCk7CglpZiggJHRtcDIgKQlyZXR1cm4gJG1vZHVsZS0+TGFuZygnZXJyb3JfcGF0aGludXNlMicsJGRlc3RfcGF0aCk7CgoJJHNyY2RpciA9IGNtc19qb2luX3BhdGgoJGNvbmZpZ1sndXBsb2Fkc19wYXRoJ10sJG9yaWdfY2F0ZWdvcnlbJ3VwbG9hZF9jYXRlZ29yeV9wYXRoJ10pOwoJJGRlc3RkaXIgPSBjbXNfam9pbl9wYXRoKCRjb25maWdbJ3VwbG9hZHNfcGF0aCddLCRkZXN0X3BhdGgpOwoJaWYoIGZpbGVfZXhpc3RzKCRkZXN0ZGlyKSApCXJldHVybiAkbW9kdWxlLT5MYW5nKCdlcnJvcl9maWxlZXhpc3RzJywkZGVzdGRpcik7CglpZiggIWZpbGVfZXhpc3RzKCRzcmNkaXIpICkJcmV0dXJuICRtb2R1bGUtPkxhbmcoJ2Vycm9yX2ZpbGVub3Rmb3VuZCcsJHNyY2Rpcik7CgoJJGRlc3RfY2F0ZWdvcnlbJ3VwbG9hZF9jYXRlZ29yeV9uYW1lJ10gPSAkZGVzdF9uYW1lOwoJJGRlc3RfY2F0ZWdvcnlbJ3VwbG9hZF9jYXRlZ29yeV9wYXRoJ10gPSAkZGVzdF9wYXRoOwoJaWYoICRlZGl0X2Rlc2MgKSAkZGVzdF9jYXRlZ29yeVsndXBsb2FkX2NhdGVnb3J5X2Rlc2NyaXB0aW9uJ10gPSAkZGVzdF9kZXNjOwoKCSRkYiA9IGNtc21zKCktPkdldERiKCk7CgkkY2F0aWQgPSAkZGItPkdlbklEIChjbXNfZGJfcHJlZml4ICgpLiJtb2R1bGVfdXBsb2Fkc19jYXRlZ29yaWVzX3NlcSIpOwoKCSRxdWVyeSA9ICdJTlNFUlQgSU5UTyAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHNfY2F0ZWdvcmllcwogICAgICAgICAgICAodXBsb2FkX2NhdGVnb3J5X2lkLHVwbG9hZF9jYXRlZ29yeV9uYW1lLAogICAgICAgICAgICAgdXBsb2FkX2NhdGVnb3J5X2Rlc2NyaXB0aW9uLHVwbG9hZF9jYXRlZ29yeV9wYXRoLAogICAgICAgICAgICAgdXBsb2FkX2NhdGVnb3J5X2xpc3RhYmxlLHVwbG9hZF9jYXRlZ29yeV9ncm91cHMsCiAgICAgICAgICAgICB1cGxvYWRfY2F0ZWdvcnlfZGVsZXRhYmxlKQogICAgICAgICAgICBWQUxVRVMgKD8sPyw/LD8sPyw/LD8pJzsKCSRkYnIgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LAoJCQkJCQkJCQkJCWFycmF5KCRjYXRpZCwKCQkJCQkJCQkJCQkJCQkkZGVzdF9jYXRlZ29yeVsndXBsb2FkX2NhdGVnb3J5X25hbWUnXSwKCQkJCQkJCQkJCQkJCQkkZGVzdF9jYXRlZ29yeVsndXBsb2FkX2NhdGVnb3J5X2Rlc2NyaXB0aW9uJ10sCgkJCQkJCQkJCQkJCQkJJGRlc3RfY2F0ZWdvcnlbJ3VwbG9hZF9jYXRlZ29yeV9wYXRoJ10sCgkJCQkJCQkJCQkJCQkJJGRlc3RfY2F0ZWdvcnlbJ3VwbG9hZF9jYXRlZ29yeV9saXN0YWJsZSddLAoJCQkJCQkJCQkJCQkJCSRkZXN0X2NhdGVnb3J5Wyd1cGxvYWRfY2F0ZWdvcnlfZ3JvdXBzJ10sCgkJCQkJCQkJCQkJCQkJJGRlc3RfY2F0ZWdvcnlbJ3VwbG9hZF9jYXRlZ29yeV9kZWxldGFibGUnXSkpOwoKCWlmKCAhJGRiciApCXJldHVybiAkbW9kdWxlLT5MYW5nKCdlcnJvcl9kYmVycm9yJyk7CgoJQG1rZGlyKCRkZXN0ZGlyLCAwNzc3LCB0cnVlKTsKCWlmKCAhZmlsZV9leGlzdHMoJGRlc3RkaXIpICkgewoJCSRxdWVyeSA9ICdERUxFVEUgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHNfY2F0ZWdvcmllcwogICAgICAgICAgICAgIFdIRVJFIHVwbG9hZF9jYXRlZ29yeV9pZCA9ID8nOwoJCSRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkoJGNhdGlkKSk7CgkJcmV0dXJuICRtb2R1bGUtPkxhbmcoJ2Vycm9yX2NhbnRjcmVhdGVkaXJlY3RvcnknLic6ICcuJGRlc3RkaXIpOwoJfQoJaWYoICRtb2R1bGUtPkdldFByZWZlcmVuY2UoJ2NyZWF0ZV9kdW1teV9pbmRleF9odG1sJykgKSB7CgkJQHRvdWNoKCAkZGVzdGRpci5ESVJFQ1RPUllfU0VQQVJBVE9SLiJpbmRleC5odG1sIiApOwoJfQoKCS8vIHNlbmQgYW4gZXZlbnQKCSRwYXJtcyA9IGFycmF5KCk7CgkkcGFybXNbJ25hbWUnXSA9ICRkZXN0X2NhdGVnb3J5Wyd1cGxvYWRfY2F0ZWdvcnlfbmFtZSddOwoJJHBhcm1zWydkZXNjcmlwdGlvbiddID0gJGRlc3RfY2F0ZWdvcnlbJ3VwbG9hZF9jYXRlZ29yeV9kZXNjcmlwdGlvbiddOwoJJHBhcm1zWydwYXRoJ10gPSAkZGVzdF9jYXRlZ29yeVsndXBsb2FkX2NhdGVnb3J5X3BhdGgnXTsKCSRwYXJtc1snbGlzdGFibGUnXSA9ICRkZXN0X2NhdGVnb3J5Wyd1cGxvYWRfY2F0ZWdvcnlfbGlzdGFibGUnXTsKCSRwYXJtc1snZGVsZXRhYmxlJ10gPSAkZGVzdF9jYXRlZ29yeVsndXBsb2FkX2NhdGVnb3J5X2RlbGV0YWJsZSddOwoJJG1vZHVsZS0+U2VuZEV2ZW50KCAnT25DcmVhdGVDYXRlZ29yeScsICRwYXJtcyApOwoKCSRlcnJvciA9IGFycmF5KCk7CglpZiggJGNvcHlmaWxlcyApIHsKCQkvLyBub3cgY29weSB0aGUgZmlsZXMuCgkJJGF1dGhvciA9ICRfU0VTU0lPTlsnY21zX2FkbWluX3VzZXJuYW1lJ107CgkJJG5vdyA9ICRkYi0+RGJUaW1lU1RhbXAodGltZSgpKTsKCQkkZmlsZV9yZWNvcmRzID0gVXBsb2Fkczo6Z2V0X2NhdGVnb3J5X2ZpbGVfbGlzdCggJG9yaWdfY2F0ZWdvcnlfaWQgKTsKCQkkaXF1ZXJ5ID0gJ0lOU0VSVCBJTlRPICcuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2FkcwogICAgICAgICAgICAgICAodXBsb2FkX2lkLHVwbG9hZF9jYXRlZ29yeV9pZCx1cGxvYWRfbmFtZSwKICAgICAgICAgICAgICAgIHVwbG9hZF9hdXRob3IsdXBsb2FkX3N1bW1hcnksdXBsb2FkX2Rlc2NyaXB0aW9uLAogICAgICAgICAgICAgICAgdXBsb2FkX2lwLHVwbG9hZF9zaXplLHVwbG9hZF9kYXRlLAogICAgICAgICAgICAgICAgdXBsb2FkX2tleSx1cGxvYWRfdGh1bWJuYWlsKQogICAgICAgICAgICAgICBWQUxVRVMoPyw/LD8sPyw/LD8sPyw/LCRub3csPyw/KSI7CgoJCWlmKCBpc19hcnJheSgkZmlsZV9yZWNvcmRzKSApIHsKCQkJZm9yKCAkaSA9IDA7ICRpIDwgY291bnQoJGZpbGVfcmVjb3Jkcyk7ICRpKysgKSB7CgkJCQlpZiggIWVtcHR5KCRlcnJvcikgKSBicmVhazsKCgkJCQkkZGlkX2NvcHlfdGh1bWIgPSBmYWxzZTsKCQkJCSRkZXN0dGh1bWIgPSAnJzsKCQkJCSRvbmVyZWMgPSYgJGZpbGVfcmVjb3Jkc1skaV07CgoJCQkJLy8gZ2V0IHRoZSBmaWxlIHBhdGgKCQkJCSRzcmNmaWxlID0gY21zX2pvaW5fcGF0aCgkc3JjZGlyLCRvbmVyZWNbJ3VwbG9hZF9uYW1lJ10pOwoJCQkJJGRlc3RmaWxlID0gY21zX2pvaW5fcGF0aCgkZGVzdGRpciwkb25lcmVjWyd1cGxvYWRfbmFtZSddKTsKCgkJCQkvLyBjb3B5IHRoZSBmaWxlCgkJCQljb3B5KCRzcmNmaWxlLCRkZXN0ZmlsZSk7CgoJCQkJLy8gY2hlY2sgZm9yIGEgdGh1bWJuYWlsCgkJCQkkc3JjdGh1bWIgPSBjbXNfam9pbl9wYXRoKCRzcmNkaXIsJ3RodW1iXycuJG9uZXJlY1sndXBsb2FkX25hbWUnXSk7CgkJCQkkZGVzdHRodW1iID0gY21zX2pvaW5fcGF0aCgkZGVzdGRpciwndGh1bWJfJy4kb25lcmVjWyd1cGxvYWRfbmFtZSddKTsKCQkJCWlmKCBmaWxlX2V4aXN0cygkc3JjZGlyKSApIHsKCQkJCQkvLyBjb3B5IGl0CgkJCQkJJGRlc3R0aHVtYiA9IGNtc19qb2luX3BhdGgoJGRlc3RkaXIsJ3RodW1iXycuJG9uZXJlY1sndXBsb2FkX25hbWUnXSk7CgkJCQkJY29weSgkc3JjdGh1bWIsJGRlc3R0aHVtYik7CgkJCQkJJGRpZF9jb3B5X3RodW1iID0gdHJ1ZTsKCQkJCX0KCQkJCgkJCQkvLyBnZW5lcmF0ZSBhIG5ldyBmaWxlIGlkCgkJCQkkZmlsZV9pZCA9ICRkYi0+R2VuSUQgKGNtc19kYl9wcmVmaXggKCkuIm1vZHVsZV91cGxvYWRzX3NlcSIpOwoKCQkJCS8vIGFsdGVyIHRoZSByZWNvcmQKCQkJCSRvbmVyZWNbJ3VwbG9hZF9pZCddID0gJGZpbGVfaWQ7CgkJCQkkb25lcmVjWyd1cGxvYWRfY2F0ZWdvcnlfaWQnXSA9ICRjYXRpZDsKCQkJCSRvbmVyZWNbJ3VwbG9hZF9hdXRob3InXSA9ICRhdXRob3I7CgkJCQkkb25lcmVjWyd1cGxvYWRfaXAnXSA9IG51bGw7CgoJCQkJLy8gaW5zZXJ0IGl0LgoJCQkJJGRiciA9ICRkYi0+RXhlY3V0ZSgkaXF1ZXJ5LAoJCQkJCQkJCQkJCQkJCWFycmF5KCRmaWxlX2lkLAoJCQkJCQkJCQkJCQkJCQkJCSRvbmVyZWNbJ3VwbG9hZF9jYXRlZ29yeV9pZCddLAoJCQkJCQkJCQkJCQkJCQkJCSRvbmVyZWNbJ3VwbG9hZF9uYW1lJ10sCgkJCQkJCQkJCQkJCQkJCQkJJG9uZXJlY1sndXBsb2FkX2F1dGhvciddLAoJCQkJCQkJCQkJCQkJCQkJCSRvbmVyZWNbJ3VwbG9hZF9zdW1tYXJ5J10sCgkJCQkJCQkJCQkJCQkJCQkJJG9uZXJlY1sndXBsb2FkX2Rlc2NyaXB0aW9uJ10sCgkJCQkJCQkJCQkJCQkJCQkJJG9uZXJlY1sndXBsb2FkX2lwJ10sCgkJCQkJCQkJCQkJCQkJCQkJJG9uZXJlY1sndXBsb2FkX3NpemUnXSwKCQkJCQkJCQkJCQkJCQkJCQkkb25lcmVjWyd1cGxvYWRfa2V5J10sCgkJCQkJCQkJCQkJCQkJCQkJJG9uZXJlY1sndXBsb2FkX3RodW1ibmFpbCddKSk7CgoJCQkJLy8gb24gZXJyb3IgZGVsZXRlIGZpbGVzLgoJCQkJaWYoICEkZGJyICkgewoJCQkJCUB1bmxpbmsoJGRlc3RmaWxlKTsKCQkJCQlAdW5saW5rKCRkZXN0dGh1bWIpOwoJCQkJCWlmKCAhaXNfYXJyYXkoJGVycm9yKSApCSRlcnJvciA9IGFycmF5KCk7CgkJCQkJJGVycm9yW10gPSAkbW9kdWxlLT5MYW5nKCdlcnJvcl9kYmVycm9yJyk7CgkJCQl9CgkJCX0KCQl9Cgl9IC8vIGNvcHkgZmlsZXMKCglpZiggISRlcnJvciApCXJldHVybiAkZXJyb3I7CglyZXR1cm4gRkFMU0U7Cn0KCgojCiMgRU9GCiMKPz4=]]></data>
	</file>
	<file>
	  <filename>/functions.common_tools.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLWZpbGUtc3R5bGU6bGludXg7IHRhYi13aWR0aDogMjsgaW5kZW50LXRhYnMtbW9kZTp0OyBjLWJhc2ljLW9mZnNldDogMjsgLSotCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBVcGxvYWRzIC09IGFsbG93IHVzZXJzIHRvIHVwbG9hZCBzdHVmZiwgYSBwc2V1ZG8gZmlsZSBtYW5hZ2VyIiBtb2R1bGUKIyBWZXJzaW9uOiAxLjMuMC1iZXRhMSwgY2FsZ3V5MTAwMAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDoJLy93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgpmdW5jdGlvbiBfdXBsb2Fkc19BdHRlbXB0VXBsb2FkICgmJG1vZCwgJGlkLCAmJHBhcmFtcywgJHJldHVybmlkKQp7CiAgJGZpZWxkbmFtZSA9ICRpZC4naW5wdXRfYnJvd3NlJzsKICBpZiggaXNzZXQoJHBhcmFtc1snZmllbGRfbmFtZSddKSApIHsKCQkkZmllbGRuYW1lID0gJHBhcmFtc1snZmllbGRfbmFtZSddOwoJfQoKICAvLyBjaGVjayBmb3IgdGhlIGZpbGV0eXBlcyBwYXJhbQogIGlmIChpc3NldCggJHBhcmFtc1snZmlsZV9leHRlbnNpb25zJ10gKSApIHsKCQkkbW9kLT51cGxvYWRfZXh0ZW5zaW9ucyA9ICRwYXJhbXNbJ2ZpbGVfZXh0ZW5zaW9ucyddOwoJfQoKICAvLyBjaGVjayB0aGUgYXV0aG9yCiAgaWYgKCFpc3NldCAoJHBhcmFtc1snaW5wdXRfYXV0aG9yJ10pKSB7CgkJcmV0dXJuIGFycmF5KCBGQUxTRSwgJG1vZC0+TGFuZygnZXJyb3JfaW52YWxpZGF1dGhvcicpICk7Cgl9CiAgICAKICAvLyBzZWUgaWYgdGhlcmUncyBhIGtleQogICRrZXkgPSBudWxsOwogIGlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfa2V5J10gKSApIHsKCQkka2V5ID0gJHBhcmFtc1snaW5wdXRfa2V5J107Cgl9CgogIC8vIHZhbGlkYXRlIHRoZSB1cGxvYWQgbmFtZQogIGlmKCAhaXNzZXQoJF9GSUxFU1skZmllbGRuYW1lXSkgKSB7CgkJcmV0dXJuIGFycmF5KEZBTFNFLCRtb2QtPkxhbmcoJ2Vycm9yX25vZmlsZXN1cGxvYWRlZCcpKTsKCX0KCgkvLyBoYW5kbGUgZmlsZW5hbWUgcHJlZml4CiAgJGZpbGVQcmVmaXggPSAnJzsKCWlmKCBpc3NldCgkcGFyYW1zWydwcmVmaXgnXSkgJiYgJHBhcmFtc1sncHJlZml4J10gPT0gMSApIHsKCQkkZmlsZVByZWZpeCA9IGRlY2hleCh0aW1lKCkpIC4gIl8iOwoJCWlmIChpc3NldCgkcGFyYW1zWydwcmVmaXhfZmV1J10pICYmICRwYXJhbXNbJ3ByZWZpeF9mZXUnXSA9PSAxKSB7CgkJCSRmaWxlUHJlZml4ID0gJHBhcmFtc1snaW5wdXRfYXV0aG9yJ10gLiAiXyI7CgkJfQoJfQoKCS8vIGhhbmRsZSBkZXN0aW5hdGlvbiBuYW1lCgkkZGVzdG5hbWUgPSAnJzsKICBpZiggaXNzZXQoJHBhcmFtc1snaW5wdXRfZGVzdG5hbWUnXSkgJiYgJHBhcmFtc1snaW5wdXRfZGVzdG5hbWUnXSAhPSAnJykgewoJCSRkZXN0bmFtZSA9IHRyaW0oYmFzZW5hbWUoJHBhcmFtc1snaW5wdXRfZGVzdG5hbWUnXSkpOwoJfQoKCS8vIGhhbmRsZSByZXBsYWNlIGV4aXN0aW5nCiAgJHJlcGxhY2VfZXhpc3RpbmcgPSBmYWxzZTsKICBpZiggaXNzZXQoICRwYXJhbXNbJ2lucHV0X3JlcGxhY2UnXSkgJiYgJHBhcmFtc1snaW5wdXRfcmVwbGFjZSddID09IDEgKSB7CgkJJHJlcGxhY2VfZXhpc3RpbmcgPSB0cnVlOwoJfQoKICAvLyBjaGVjayB0aGUgc3VtbWFyeQogIGlmICggIWlzc2V0KCRwYXJhbXNbJ2lucHV0X3N1bW1hcnknXSkgfHwgJHBhcmFtc1snaW5wdXRfc3VtbWFyeSddID09ICcnICkgewoJCS8vIHdlJ2xsIGNoZWF0LCBpZiB0aGUgc3VtbWFyeSBpcyBsZWZ0IGFzIGVtcHR5CgkJLy8gd2UnbGwgdXNlIHRoZSB1cGxvYWQgbmFtZQoJCSRwID0gc3RycG9zKCAkZGVzdG5hbWUsICcuJyApOwoJCWlmKCAkcCApIHsKCQkJJHBhcmFtc1snaW5wdXRfc3VtbWFyeSddID0gc3Vic3RyKCAkZGVzdG5hbWUsIDAsICRwICk7CgkJfQoJCWVsc2UgewoJCQkkcGFyYW1zWydpbnB1dF9zdW1tYXJ5J10gPSAkZGVzdG5hbWU7CgkJfQoJfQoKICAvLyBjaGVjayB0aGUgY2F0ZWdvcnkKICAkZGIgPSAkbW9kLT5HZXREYigpOwogICRkYnJlc3VsdCA9ICIiOwogICRyb3cgPSBhcnJheSgpOwogICRjYXRlZ29yeV9pZCA9IDA7CiAgaWYgKGlzc2V0KCAkcGFyYW1zWydjYXRlZ29yeV9pZCddICkgKSB7CgkJJGNhdGVnb3J5X2lkID0gJHBhcmFtc1snY2F0ZWdvcnlfaWQnXTsKCQkkcXVlcnkgPSAiU0VMRUNUIHVwbG9hZF9jYXRlZ29yeV9pZCwgdXBsb2FkX2NhdGVnb3J5X25hbWUsIHVwbG9hZF9jYXRlZ29yeV9wYXRoIAogICAgICAgICAgICAgIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX2NhdGVnb3JpZXMKICAgICAgICAgICAgICBXSEVSRSB1cGxvYWRfY2F0ZWdvcnlfaWQgPSA/IjsKCQkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUgKCRxdWVyeSwgYXJyYXkgKCRjYXRlZ29yeV9pZCkpOwoJfQogIGVsc2UgaWYgKGlzc2V0ICgkcGFyYW1zWydjYXRlZ29yeSddKSkgewoJCS8vIGdldCB0aGUgY2F0ZWdvcnkgaW5mbyBnaXZlbiBpdCdzIG5hbWUKCQkkcXVlcnkgPSAiU0VMRUNUIHVwbG9hZF9jYXRlZ29yeV9pZCwgdXBsb2FkX2NhdGVnb3J5X25hbWUsIHVwbG9hZF9jYXRlZ29yeV9wYXRoCiAgICAgICAgICAgICAgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfY2F0ZWdvcmllcyAKICAgICAgICAgICAgICBXSEVSRSB1cGxvYWRfY2F0ZWdvcnlfbmFtZSA9ID8iOwoJCSRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSAoJHF1ZXJ5LCBhcnJheSAoJHBhcmFtc1snY2F0ZWdvcnknXSkpOwoJfQogIGlmICghJGRicmVzdWx0KSB7CgkJcmV0dXJuIGFycmF5KCBGQUxTRSwgJG1vZC0+TGFuZygnZXJyb3JfaW52YWxpZGNhdGVnb3J5JykgKTsKCX0KICAkcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdyAoKTsKICBpZiggISRyb3cgKSB7CgkJcmV0dXJuIGFycmF5KCBGQUxTRSwgJG1vZC0+TGFuZygnZXJyb3JfaW52YWxpZGNhdGVnb3J5JykgKTsKCX0KICAkY2F0ZWdvcnlfaWQgPSAkcm93Wyd1cGxvYWRfY2F0ZWdvcnlfaWQnXTsKICAkY2F0ZWdvcnlfbmFtZSA9ICRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9uYW1lJ107CiAKICAvLyBub3cgZG8gdGhlIHVwbG9hZCwgaG9wZWZ1bGx5CiAgLy8gZmlyc3QgdGhlIGZpbGUgaXRzZWxmLgogICRkaXIgPSAkbW9kLT5fY2F0ZWdvcnlQYXRoKCRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9wYXRoJ10pOwogICRyZXN1bHQgPSAkbW9kLT5faGFuZGxlVXBsb2FkICgkZGlyLCRmaWVsZG5hbWUsZmFsc2UsJGRlc3RuYW1lLAoJCQkJCQkJCQkJCQkJCQkJIHRydWUsJHJlcGxhY2VfZXhpc3RpbmcsJGZpbGVQcmVmaXgpOwogIGlmICghJHJlc3VsdFswXSkgewoJCXJldHVybiBhcnJheSggRkFMU0UsICRyZXN1bHRbMV0gKTsKCX0KICAkZGVzdG5hbWUgPSAkcmVzdWx0WzFdWyduYW1lJ107CgkKCS8vIHNlZSBhYm91dCB3YXRlcm1hcmtpbmcKCWlmKCAkbW9kLT5HZXRQcmVmZXJlbmNlKCdhdXRvd2F0ZXJtYXJrJywwKSApIHsKCQkkc3JjbmFtZSA9IGNtc19qb2luX3BhdGgoJGRpciwkZGVzdG5hbWUpOwoJCSR3bW5hbWUgPSBjbXNfam9pbl9wYXRoKCRkaXIsJ3dtXycuJGRlc3RuYW1lKTsKCgkJJHdtb2JqID0gY2dlX3NldHVwOjpnZXRfd2F0ZXJtYXJrZXIoKTsKCQkkcmVzID0gJHdtb2JqLT5jcmVhdGVfd2F0ZXJtYXJrZWRfaW1hZ2UoJHNyY25hbWUsJHdtbmFtZSk7CgoJCWlmKCBGQUxTRSAhPT0gJHJlcyApIHsKCQkJQHVubGluaygkc3JjbmFtZSk7CgkJCUByZW5hbWUoJHdtbmFtZSwkc3JjbmFtZSk7CgkJfQoJfQoKICAvLyBjaGVjayBmb3IgYW4gZXhpc3RpbmcgZGF0YWJhc2UgZW50cnkKICAkcXVlcnkgPSAiU0VMRUNUIHVwbG9hZF9pZCBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2FkcyAKICAgICAgICAgICAgV0hFUkUgdXBsb2FkX25hbWUgPSA/IEFORAl1cGxvYWRfY2F0ZWdvcnlfaWQgPSA/IjsKICAkdG1wX2lkID0gJGRiLT5HZXRPbmUoJHF1ZXJ5LCBhcnJheSggJGRlc3RuYW1lLCAkY2F0ZWdvcnlfaWQgKSApOwoKICAkZmlsZWlkID0gJyc7CiAgaWYoICRyZXBsYWNlX2V4aXN0aW5nID09PSBmYWxzZSAmJiAkdG1wX2lkICkgewoJCXJldHVybiBhcnJheSggRkFMU0UsICRtb2QtPkxhbmcoJ2Vycm9yX2ZpbGVleGlzdHMnKSApOwoJfQogIGVsc2UgaWYgKCR0bXBfaWQpIHsKCQkvLyB3ZSdyZSBhbGxvd2luZyBvdmVyd3JpdGUKCQkkZmlsZWlkID0gJHRtcF9pZDsKCQkkcmVwbGFjZV9leGlzdGluZyA9IHRydWU7CgoJCS8vIGRlbGV0ZSBmaWVsZCBkZWZpbml0aW9ucy4KCQkkcXVlcnkgPSAnREVMRVRFIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzX2ZpZWxkdmFscyBXSEVSRSB1cGxvYWRfaWQgPSA/JzsKCQkkZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KCR0bXBfaWQpKTsgICAgICAKCX0KCiAgLy8gY3JlYXRlIGEgbmV3IHVwbG9hZCBpZCBoZXJlLgogIGlmKCAkZmlsZWlkID09ICcnICkgewoJCSRuZXdpZCA9ICRkYi0+R2VuSUQgKGNtc19kYl9wcmVmaXggKCkuIm1vZHVsZV91cGxvYWRzX3NlcSIpOwoJfQoKICAvLyBhbmQgdGhlbiBtYXliZSB0aGUgdGh1bWJuYWlsCiAgJHRodW1iX25hbWUgPSAnJzsKICBpZiggaXNzZXQoICRfRklMRVNbJGlkLidpbnB1dF90aHVtYm5haWwnXVsnbmFtZSddICkgJiYKICAgICAgJF9GSUxFU1skaWQuJ2lucHV0X3RodW1ibmFpbCddWyduYW1lJ10gIT0gJycgJiYgCiAgICAgICRfRklMRVNbJGlkLidpbnB1dF90aHVtYm5haWwnXVsnc2l6ZSddID4gMCkgewoJCS8vIGJ1aWxkIHRoZSB0aHVtYm5haWwgbmFtZQoJCSR0aHVtYl9leHRlbnNpb24gPSBzdHJ0b2xvd2VyKHN0cnJjaHIoJF9GSUxFU1skaWQuJ2lucHV0X3RodW1ibmFpbCddWyduYW1lJ10sJy4nKSk7CgkJJGZpbGVleHRlbnNpb24gPSBzdHJ0b2xvd2VyKHN0cnJjaHIoJGRlc3RuYW1lLCcuJykpOwoJCSRmaWxlbmFtZXdvZXh0ID0gc3Vic3RyKCRkZXN0bmFtZSwwLHN0cmxlbigkZGVzdG5hbWUpLXN0cmxlbigkZmlsZWV4dGVuc2lvbikpOwoJCSR0aHVtYl9uYW1lID0gJ3RodW1iXycuJGZpbGVuYW1ld29leHQuJHRodW1iX2V4dGVuc2lvbjsKCgkJJGZpZCA9ICRmaWxlaWQ7CgkJaWYoICRmaWQgPT0gJycgKSB7CgkJCSRmaWQgPSAkbmV3aWQ7CgkJfQoJCSRyZXN1bHQyID0gJG1vZC0+X2hhbmRsZVVwbG9hZCAoJGRpciwgJGlkLidpbnB1dF90aHVtYm5haWwnLGZhbHNlLCR0aHVtYl9uYW1lLAoJCQkJCQkJCQkJCQkJCQkJCQlmYWxzZSwkcmVwbGFjZV9leGlzdGluZywkZmlsZVByZWZpeCk7CgkJaWYgKCEkcmVzdWx0MlswXSkgewoJCQkvLyB1aC1vaCwgdGhlIHNlY29uZCB1cGxvYWQgZmFpbGVkLi4uLiBub3cgd2UndmUgZ290dGEgCgkJCS8vIGRlbGV0ZSB0aGUgZmlyc3QgZmlsZSB0byBhdm9pZCBhbnkgY29ycnVwdGlvbgoJCQkvLyB0b2RvCgkJCXVubGluayggJHJlc3VsdFsxXVsnZGlyJ10uRElSRUNUT1JZX1NFUEFSQVRPUi4kcmVzdWx0WzFdWyduYW1lJ10gKTsKCQkJcmV0dXJuIGFycmF5KCBGQUxTRSwgJHJlc3VsdDJbMV0gKTsKCQl9Cgl9CiAgZWxzZSB7CgkJLy8gc2VlIGlmIHdlIGNhbiBhdXRvLWNyZWF0ZSBhIHRodW1ibmFpbAoJCWlmKCAkbW9kLT5HZXRQcmVmZXJlbmNlKCdhdXRvdGh1bWJuYWlsX2V4dGVuc2lvbnMnKSAhPSAnJyAmJgoJCQkJJG1vZC0+R2V0UHJlZmVyZW5jZSgnYXV0b3RodW1ibmFpbF9zaXplJykgIT0gJycgKSB7CgkJCSRmaWQgPSAkZmlsZWlkOwoJCQlpZiggJGZpZCA9PSAnJyApIHsKCSAgICAgICRmaWQgPSAkbmV3aWQ7CgkgICAgfQoKCQkJJGZpbGVleHRlbnNpb24gPSBzdHJ0b2xvd2VyKHN0cnJjaHIoJGRlc3RuYW1lLCcuJykpOwoJCQkkdGh1bWJfZXh0X2FyciA9IGV4cGxvZGUoJywnLCRtb2QtPkdldFByZWZlcmVuY2UoJ2F1dG90aHVtYm5haWxfZXh0ZW5zaW9ucycpKTsKCgkJCWZvcmVhY2goICR0aHVtYl9leHRfYXJyIGFzICR0aHVtYl9leHQgKSB7CgkgICAgICBpZiggIi4iLiR0aHVtYl9leHQgPT0gJGZpbGVleHRlbnNpb24gKSB7CgkJCQkJLy8gd29vaG9vLCB3ZSBjYW4gY3JlYXRlIGEgdGh1bWJuYWlsCgkJCQkJJGRlc3QgPSAkZGlyLkRJUkVDVE9SWV9TRVBBUkFUT1IuJ3RodW1iXycuJGRlc3RuYW1lOwoJCQkJCSRzcmMgID0gJGRpci5ESVJFQ1RPUllfU0VQQVJBVE9SLiRkZXN0bmFtZTsKCQkJCQkkdGh1bWJfbmFtZSA9ICd0aHVtYl8nLiRkZXN0bmFtZTsKCQkJCQkkbW9kLT5pbWFnZVRyYW5zZm9ybSgkc3JjLCRkZXN0LCRtb2QtPkdldFByZWZlcmVuY2UoJ2F1dG90aHVtYm5haWxfc2l6ZScpKTsKCQkJCQlicmVhazsKCQkJCX0KCSAgICB9CgkJfQoJfQoKICAvLyBhcHBhcmVudGx5IHRoZSB1cGxvYWQgc3VjY2VlZGVkLCBub3cgd2UgaGF2ZSB0byBsb2cgaXQKICAkZGVzYyA9ICIiOwogIGlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfZGVzY3JpcHRpb24nXSApICkgewoJCSRkZXNjID0gJHBhcmFtc1snaW5wdXRfZGVzY3JpcHRpb24nXTsKCX0KCgkkdXNlcnBlcm1zID0gJyc7CglpZiggaXNzZXQoJHBhcmFtc1snaW5wdXRfdXNlcnBlcm1zJ10pICYmIGlzX2FycmF5KCRwYXJhbXNbJ2lucHV0X3VzZXJwZXJtcyddKSApIHsKCQkkdXNlcnBlcm1zID0gaW1wbG9kZSgnLCcsJHBhcmFtc1snaW5wdXRfdXNlcnBlcm1zJ10pOwoJfQogICRhdWRpdF9tc2cgPSAnJzsKICBpZiggJGZpbGVpZCA9PSAnJyApIHsKCQkkcXVlcnkgPQogICAgCSJJTlNFUlQgSU5UTyAiLmNtc19kYl9wcmVmaXggKCkuIm1vZHVsZV91cGxvYWRzIAogICAgICAgICAgICh1cGxvYWRfaWQsdXBsb2FkX2NhdGVnb3J5X2lkLHVwbG9hZF9uYW1lLHVwbG9hZF9hdXRob3IsCiAgICAgICAgICAgIHVwbG9hZF9zdW1tYXJ5LHVwbG9hZF9kZXNjcmlwdGlvbix1cGxvYWRfaXAsdXBsb2FkX3NpemUsCiAgICAgICAgICAgIHVwbG9hZF9kYXRlLCB1cGxvYWRfa2V5LCB1cGxvYWRfdGh1bWJuYWlsLCB1cGxvYWRfdXNlcnBlcm1zKQogICAgICAgICAgIFZBTFVFUyAoPyw/LD8sPyw/LD8sPyw/LD8sPyw/LD8pIjsKCQkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUgKCRxdWVyeSwKCQkJCQkJCQkJCQlhcnJheSAoJG5ld2lkLCRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9pZCddLCRkZXN0bmFtZSwgCgkJCQkJCQkJCQkJCQkJICRwYXJhbXNbJ2lucHV0X2F1dGhvciddLCRwYXJhbXNbJ2lucHV0X3N1bW1hcnknXSwKCQkJCQkJCQkJCQkJCQkgJGRlc2MsZ2V0ZW52ICgiUkVNT1RFX0FERFIiKSwgJHJlc3VsdFsxXVsnc2l6ZSddLAoJCQkJCQkJCQkJCQkJCSB0cmltKCRkYi0+REJUaW1lU3RhbXAgKHRpbWUgKCkpLCInIiksCgkJCQkJCQkJCQkJCQkJICRrZXksJHRodW1iX25hbWUsJHVzZXJwZXJtcykpOwoJCSRhdWRpdF9tc2cgPSAnVXNlciAnLiRwYXJhbXNbJ2lucHV0X2F1dGhvciddLicgdXBsb2FkZWQgJy4kZGVzdG5hbWU7Cgl9CiAgZWxzZSB7CgkJJHF1ZXJ5ID0gIlVQREFURSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHMKICAgICAgICAgICAgICBTRVQgdXBsb2FkX25hbWUgPSA/LCB1cGxvYWRfYXV0aG9yID0gPywKICAgICAgICAgICAgICAgICAgdXBsb2FkX3N1bW1hcnkgPSA/LCB1cGxvYWRfZGVzY3JpcHRpb24gPSA/LAogICAgICAgICAgICAgICAgICB1cGxvYWRfaXAgPSA/LCB1cGxvYWRfc2l6ZSA9ID8sIHVwbG9hZF9kYXRlID0gPywKICAgICAgICAgICAgICAgICAgdXBsb2FkX2tleSA9ID8sIHVwbG9hZF90aHVtYm5haWwgPSA/LCB1cGxvYWRfdXNlcnBlcm1zID0gPwogICAgICAgICAgICAgIFdIRVJFIHVwbG9hZF9pZCA9ID8iOwoJCSRkYnJlc3VsdCA9CSRkYi0+RXhlY3V0ZSggJHF1ZXJ5LAoJCQkJCQkJCQkJCQkJCQlhcnJheSggJGRlc3RuYW1lLCAkcGFyYW1zWydpbnB1dF9hdXRob3InXSwgJHBhcmFtc1snaW5wdXRfc3VtbWFyeSddLAoJCQkJCQkJCQkJCQkJCQkJCQkgJGRlc2MsIGdldGVudiggIlJFTU9URV9BRERSIiApLCAkcmVzdWx0WzFdWydzaXplJ10sCgkJCQkJCQkJCQkJCQkJCQkJCSB0cmltKCRkYi0+REJUaW1lU3RhbXAodGltZSgpKSwiJyIpLAoJCQkJCQkJCQkJCQkJCQkJCQkgJGtleSwgJHRodW1iX25hbWUsICR1c2VycGVybXMsICRmaWxlaWQpKTsKCQkkbmV3aWQgPSAkZmlsZWlkOwoJCSRhdWRpdF9tc2cgPSAnVXNlciAnLiRwYXJhbXNbJ2lucHV0X2F1dGhvciddLicgcmVwbGFjZWQgJy4kZGVzdG5hbWU7Cgl9CglpZiggISRkYnJlc3VsdCApIHsKCQlyZXR1cm4gYXJyYXkoIEZBTFNFLCAkbW9kLT5MYW5nKCdlcnJvcl9kYmVycm9yJykgKTsKCX0KCiAgLy8gZG8gY3VzdG9tIGZpZWxkcy4KICAkaXF1ZXJ5ID0gJ0lOU0VSVCBJTlRPICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2Fkc19maWVsZHZhbHMgCiAgICAgICAgICAgICAgICAgKHVwbG9hZF9pZCwgZmxkX2lkLCB2YWx1ZSkgVkFMVUVTICg/LD8sPyknOwogIGZvcmVhY2goICRwYXJhbXMgYXMgJGtleSA9PiAkdmFsdWUgKSB7CgkJaWYoICFzdGFydHN3aXRoKCRrZXksJ2ZpZWxkXycpICkgewoJCQljb250aW51ZTsKCQl9CgoJCSRmaWVsZF9pZCA9IChpbnQpc3Vic3RyKCRrZXksNik7CgkJaWYoIGlzX2FycmF5KCAkdmFsdWUgKSApIHsKCQkJJHZhbHVlID0gaW1wbG9kZSgnLCcsJHZhbHVlKTsKCQl9CgkJJGRiLT5FeGVjdXRlKCRpcXVlcnksYXJyYXkoJG5ld2lkLCRmaWVsZF9pZCwkdmFsdWUpKTsKCX0KCiAgJG1vZC0+QXVkaXQoJycsICRtb2QtPkdldE5hbWUoKSwkYXVkaXRfbXNnICk7CgogIC8vIHRoYXQgc2hvdWxkIGRvIHRoZSB0cmljawogIC8vIG5vdyBtYXliZSB3ZSdsbCBzZW5kIGFuIGVtYWlsCiAgJHRvX2FkZHJlc3MgPSAkbW9kLT5HZXRQcmVmZXJlbmNlKCdzZW5kX3VwbG9hZF9ub3RpZmljYXRpb25zX3RvJyk7CiAgaWYoICR0b19hZGRyZXNzICYmICR0b19hZGRyZXNzICE9ICcnICkgewoJCS8vIGZpbGwgb3V0IHRoZSB0ZW1wbGF0ZSwgYW5kIHNlbmQgYW4gZW1haWwKCQkkY21zbWFpbGVyID0gJG1vZC0+R2V0TW9kdWxlSW5zdGFuY2UoICdDTVNNYWlsZXInICk7CgkJaWYoICEkY21zbWFpbGVyICkgewoJCQkvLyB3ZSdyZSBub3QgZ29ubmEgcmV0dXJuIGFuIGVycm9yLCBidXQgcHV0CgkJCS8vIGEgbWVzc2FnZSBpbnRvIHRoZSBhZG1pbiBsb2cKCQkJJG1vZC0+QXVkaXQoIDAsICRtb2QtPkdldE5hbWUoKSwnQ291bGQgbm90IGZpbmQgQ01TTWFpbGVyIG1vZHVsZScpOwoJCX0KCQllbHNlIHsKCQkJJG1vZC0+c21hcnR5LT5hc3NpZ24oJ25hbWUnLCAkZGVzdG5hbWUgKTsKCQkJJG1vZC0+c21hcnR5LT5hc3NpZ24oJ3NpemUnLCAkcmVzdWx0WzFdWydzaXplJ10gKTsKCQkJJG1vZC0+c21hcnR5LT5hc3NpZ24oJ3N1bW1hcnknLCAkcGFyYW1zWydpbnB1dF9zdW1tYXJ5J10gKTsKCQkJJG1vZC0+c21hcnR5LT5hc3NpZ24oJ2Rlc2NyaXB0aW9uJywgJGRlc2MgKTsKCQkJJG1vZC0+c21hcnR5LT5hc3NpZ24oJ2F1dGhvcicsICRwYXJhbXNbJ2lucHV0X2F1dGhvciddICk7CgkJCSRtb2QtPnNtYXJ0eS0+YXNzaWduKCdpcF9hZGRyZXNzJywgZ2V0ZW52ICgiUkVNT1RFX0FERFIiKSApOwoJCQkkYm9keSA9ICRtb2QtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhYmFzZSgndXBsb2FkX2VtYWlsdGVtcGxhdGUnKTsKCQkJJHRtcCA9IGV4cGxvZGUoJywnLCR0b19hZGRyZXNzKTsKCQkJZm9yZWFjaCggJHRtcCBhcyAkb25lICkgewoJICAgICAgJGNtc21haWxlci0+QWRkQWRkcmVzcyggJG9uZSApOwoJICAgIH0KCQkJJGNtc21haWxlci0+U2V0Qm9keSggJGJvZHkgKTsKCQkJJGNtc21haWxlci0+SXNIVE1MKHRydWUpOwoJCQkkY21zbWFpbGVyLT5TZXRTdWJqZWN0KCRtb2QtPkxhbmcoJ3VwbG9hZF9ub3RpZmljYXRpb24nKSk7CgkJCSRjbXNtYWlsZXItPlNlbmQoKTsKCQl9Cgl9CgogIC8vIHVwZGF0ZSBzZWFyY2ggd29yZHMKICAkc2VhcmNoID0gJG1vZC0+R2V0TW9kdWxlSW5zdGFuY2UoJ1NlYXJjaCcpOwogIGlmICgkc2VhcmNoICE9IEZBTFNFKSB7CgkJJHN0ciA9ICRkZXN0bmFtZS4nICcuJHBhcmFtc1snaW5wdXRfYXV0aG9yJ10uJyAnLgoJCQkkcGFyYW1zWydpbnB1dF9zdW1tYXJ5J10uJyAnLiRkZXNjOwoJCSRzZWFyY2gtPkFkZFdvcmRzKCAkbW9kLT5HZXROYW1lKCksICRuZXdpZCwgJ3VwbG9hZCcsICRzdHIgKTsKCX0KCiAgLy8gc2VuZCBhbiBldmVudAogICRwYXJtcyA9IGFycmF5KCk7CgkkcGFybXNbJ2NhdGVnb3J5cGF0aCddID0gJGRpcjsKICAkcGFybXNbJ2NhdGVnb3J5J10gPSAkY2F0ZWdvcnlfbmFtZTsKICAkcGFybXNbJ25hbWUnXSA9ICRkZXN0bmFtZTsKICAkcGFybXNbJ3NpemUnXSA9ICRyZXN1bHRbMV1bJ3NpemUnXTsKICAkcGFybXNbJ3N1bW1hcnknXSA9ICRwYXJhbXNbJ2lucHV0X3N1bW1hcnknXTsKICAkcGFybXNbJ2Rlc2NyaXB0aW9uJ10gPSAkZGVzYzsKICAkcGFybXNbJ2F1dGhvciddID0gJHBhcmFtc1snaW5wdXRfYXV0aG9yJ107CiAgJHBhcm1zWydpcF9hZGRyZXNzJ10gPSBnZXRlbnYoIlJFTU9URV9BRERSIik7CiAgJG1vZC0+U2VuZEV2ZW50KCAiT25VcGxvYWQiLCAkcGFybXMgKTsKCiAgaWYoICRmaWxlaWQgPT0gJycgKSB7CgkJcmV0dXJuIGFycmF5KCBUUlVFLCAkbmV3aWQsICRkZXN0bmFtZSApOwoJfQogIHJldHVybiBhcnJheSggVFJVRSwgJGZpbGVpZCwgJGRlc3RuYW1lICk7Cn0KCgogIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgIF9oYW5kbGVVcGxvYWQoICRkZXN0RGlyLCBmaWVsZE5hbWUsICRuYW1lQ2FsbGJhYyApCiAgIE5PVCBQQVJUIE9GIFRIRSBNT0RVTEUgQVBJCgogICBUaGlzIG1ldGhvZCBoYW5kbGVzIHZhbGlkYXRpbmcgdGhlIHVwbG9hZCBwYXJhbWV0ZXJzLCBhbmQgY29weWluZwogICB0aGUgZmlsZSBmcm9tIGl0J3MgdGVtcG9yYXJ5IGxvY2F0aW9uIHRvIGl0J3MgcGVybWFuZW50IGxvY2F0aW9uLgogICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwpmdW5jdGlvbiBfdXBsb2Fkc19oYW5kbGVVcGxvYWQgKCYkbW9kLCAkZGVzdERpciwgCgkJCQkJCQkJCQkJCQkJCQkkZmllbGROYW1lID0gJ191cGxvYWQnLCAkbmFtZUNhbGxiYWNrID0gZmFsc2UsCgkJCQkJCQkJCQkJCQkJCQkkZGVzdG5hbWUgPSAnJywkZW5mb3JjZWV4dGVuc2lvbiA9IHRydWUsCgkJCQkJCQkJCQkJCQkJCQkkcmVwbGFjZV9leGlzdGluZyA9IGZhbHNlLAoJCQkJCQkJCQkJCQkJCQkJJGZpbGVuYW1lUHJlZml4KQp7CiAgLy9tYWtlIHN1cmUgc29tZXRoaW5nIGlzIHRoZXJlCiAgaWYgKCFpc3NldCAoJF9GSUxFU1skZmllbGROYW1lXSkgfHwgIWlzc2V0ICgkX0ZJTEVTKQogICAgICB8fCAhaXNfYXJyYXkgKCRfRklMRVNbJGZpZWxkTmFtZV0pIHx8ICEkX0ZJTEVTWyRmaWVsZE5hbWVdWyduYW1lJ10pCiAgICB7CiAgICAgIHJldHVybiBhcnJheSAoZmFsc2UsICRtb2QtPkxhbmcoJ2Vycm9yX25vZmlsZXN1cGxvYWRlZCcpKTsKICAgIH0KCiAgLy9ub3JtYWxpemUgdGhlIGZpbGUgdmFyaWFibGUKICAkZmlsZSA9ICRfRklMRVNbJGZpZWxkTmFtZV07CiAgaWYgKCFpc3NldCAoJGZpbGVbJ3R5cGUnXSkpCiAgICAkZmlsZVsndHlwZSddID0gJyc7CiAgaWYgKCFpc3NldCAoJGZpbGVbJ3NpemUnXSkpCiAgICAkZmlsZVsnc2l6ZSddID0gJyc7CiAgaWYgKCFpc3NldCAoJGZpbGVbJ3RtcF9uYW1lJ10pKQogICAgJGZpbGVbJ3RtcF9uYW1lJ10gPSAnJzsKICAkZmlsZVsnbmFtZSddID0KICAgIHByZWdfcmVwbGFjZSgnL1teYS16QS1aMC05XC5cJFwlXCdcYFwtXEBce1x9XH5cIVwjXChcKVwmXF9cXl0vJywgJycsCgkJIHN0cl9yZXBsYWNlIChhcnJheSAoJyAnLCAnJTIwJyksIGFycmF5ICgnXycsICdfJyksICRmaWxlWyduYW1lJ10pKTsKCiAgLy8gdmFsaWRhdGUgdGhlIGZpbGVuYW1lCiAgaWYgKCEkbW9kLT5faXNWYWxpZEZpbGVuYW1lICgkZmlsZVsnbmFtZSddKSkKICAgIHsKICAgICAgcmV0dXJuIGFycmF5IChmYWxzZSwgJG1vZC0+TGFuZyAoJ2Vycm9yX2ludmFsaWR1cGxvYWRmaWxlbmFtZScsJGZpbGVbJ25hbWUnXSkpOwogICAgfQoKICAvL3dhcyBpdCB0byBiaWc/CglnbG9iYWwgJGdDbXM7CgkkbWF4RmlsZVNpemUgPSAkZ0Ntcy0+Y29uZmlnWydtYXhfdXBsb2FkX3NpemUnXTsKICBpZiAoJGZpbGVbJ3NpemUnXSA+ICRtYXhGaWxlU2l6ZSkKICAgIHJldHVybiBhcnJheSAoZmFsc2UsICRtb2QtPkxhbmcgKCdlcnJvcl9maWxldG9vbGFyZ2UnKSk7CgogIC8vbm9ybWFsaXplIGRlc3REaXIKICBpZiAoc3RybGVuICgkZGVzdERpcikgPiAwICYmICRkZXN0RGlyW3N0cmxlbiAoJGRlc3REaXIpIC0gMV0gIT0gIi8iKQogICAgJGRlc3REaXIgPSAkZGVzdERpci4nLyc7CgogIC8vIGdldCB0aGUgZGVzdGluYXRpb24gbmFtZQogIGlmKCAkZGVzdG5hbWUgPT0gJycgKSB7CiAgICAkZGVzdG5hbWUgPSAkZmlsZVsnbmFtZSddOwogIH0KCS8vIGFuZCBvcHRpb25hbGx5IGFkZCBhIHByZWZpeAoJJGRlc3RuYW1lID0gJGZpbGVuYW1lUHJlZml4LiRkZXN0bmFtZTsKICAgIAogIC8vc2hvdWxkIHdlIGNoYW5nZSB0aGUgZmlsZW5hbWUgdmlhIGEgY2FsbGJhY2s/CiAgaWYgKCRuYW1lQ2FsbGJhY2spCiAgICB7CiAgICAgICRkZXN0bmFtZSA9CgkJCQljYWxsX3VzZXJfZnVuY19hcnJheSAoJG5hbWVDYWxsYmFjaywgYXJyYXkgKCRmaWxlLCAkZGVzdERpcikpOwogICAgfQoKICAvLyBhbmQgY2xlYW4gaXQgdXAKICAkZGVzdG5hbWUgPSAKICAgIHByZWdfcmVwbGFjZSgnL1teYS16QS1aMC05XC5cJFwlXCdcYFwtXEBce1x9XH5cIVwjXChcKVwmXF9cXl0vJywgJycsCgkJIHN0cl9yZXBsYWNlIChhcnJheSAoJyAnLCAnJTIwJyksIGFycmF5ICgnXycsICdfJyksICRkZXN0bmFtZSkpOwoKICBpZiggJHJlcGxhY2VfZXhpc3RpbmcgPT0gZmFsc2UgKQogICAgewogICAgICBpZiggZmlsZV9leGlzdHMoICRkZXN0RGlyLiRkZXN0bmFtZSApICYmICRyZXBsYWNlX2V4aXN0aW5nID09IGZhbHNlICkgewoJcmV0dXJuIGFycmF5KCBmYWxzZSwgJG1vZC0+TGFuZyggJ2Vycm9yX2ZpbGVleGlzdHMnLCAkZGVzdERpci4kZGVzdG5hbWUgKSk7CiAgICAgIH0KICAgIH0KICBlbHNlCiAgICB7CiAgICAgIC8vIHJlcGxhY2luZyBhbiBleGlzdGluZyBmaWxlCiAgICAgIC8vIGRlbGV0ZSBpdCBmaXJzdCwgc28gdGhlIGNvcHkgd2lsbCBzdWNjZWVkLgogICAgICBAdW5saW5rKCRkZXN0RGlyLiRkZXN0bmFtZSk7CiAgICB9CgogIC8vYW5kIG5vdyB0aGUgYmlnIG1vbWVudAogIGlmICghQGNvcHkgKCRmaWxlWyd0bXBfbmFtZSddLCAkZGVzdERpci4kZGVzdG5hbWUpKQogICAgewogICAgICByZXR1cm4gYXJyYXkgKGZhbHNlLAoJCSAgICAkbW9kLT5MYW5nICgnZXJyb3JfY291bGRub3R3cml0ZScpLgoJCSAgICAnOiZuYnNwOycuJGZpbGVbJ25hbWUnXS4iIC0+ICIuJGRlc3REaXIgLiAkZGVzdG5hbWUgLiAiICIuCgkJICAgICRtb2QtPkxhbmcgKCdlcnJvcl9wZXJtaXNzaW9uZGVuaWVkJykpOwogICAgfQogIGVsc2UKICAgIHsKICAgICAgcmV0dXJuIGFycmF5ICh0cnVlLCBhcnJheSgnbmFtZScgPT4gJGRlc3RuYW1lLCAnc2l6ZScgPT4gJGZpbGVbJ3NpemUnXSwKCQkJCSdkaXInID0+ICRkZXN0RGlyICkpOwogICAgfQp9CgoKIwojIEVPRgojCj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/help.inc</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGgzPldoYXQgRG9lcyBUaGlzIERvPzwvaDM+CjxwPkl0IGlzIGEgbW9kdWxlIGZvciBhbGxvd2luZyBwZW9wbGUgdG8gdXBsb2FkIGFuZCBkb3dubG9hZCBmaWxlcyB0byBhbmQgZnJvbSB5b3VyIHNpdGUuICBJdCBrZWVwcyB0cmFjayBvZiB3aG8gdXBsb2FkZWQgYSBmaWxlLCBhbmQgd2hvIGhhcyBkb3dubG9hZGVkIGl0LiAgQXMgd2VsbCwgeW91IGNhbiBzb3J0IGZpbGVzIGludG8gY2F0ZWdvcmllcywgYW5kIG1hbmFnZSB0aGUgZmlsZXMgdGhhdCB3ZXJlIHVwbG9hZGVkIGxpa2UgZXZlcnkgYWRtaW5pc3RyYXRvciB3b3VsZCBkbzwvcD4gCjxoMz5Ib3cgRG8gSSBVc2UgSXQ8L2gzPgo8cD5UbyB1c2UgdGhpcyBtb2R1bGUsIHRvIGFsbG93IHVzZXJzIHRvIHVwbG9hZCBmaWxlcyB0byB5b3VyIHNpdGUsIHlvdSBzaG91bGQgaW5zdGFsbCB0aGUgbW9kdWxlLCBhbmQgdGhlbiBjcmVhdGUgb25lIG9yIG1vcmUgY2F0ZWdvcmllcyAoYS5rLmEpIGRpcmVjdG9yaWVzIGZvciB0aGUgdXBsb2FkZWQgZmlsZXMgdG8gZ28gaW50by4gVGhlbiBhZGQgYSB0YWcgaW50byBhIHBhZ2Ugb3IgdGVtcGxhdGUgc29tZXdoZXJlIGxpa2Uge2Ntc19tb2R1bGUgbW9kdWxlPSJVcGxvYWRzIiBjYXRlZ29yeT0ic29tZWNhdGVnb3J5IiBtb2RlPSJzb21lbW9kZSJ9LiAgV2hlcmUgbW9kZSBtYXRjaGVzIG9uZSBvZiB0aGUgbW9kZXMgbGlzdGVkIGJlbG93LiAgVGhlIG91dHB1dCB3aWxsIGRpZmZlciBkZXBlbmRpbmcgdXBvbiB3aGljaCBtb2RlIHlvdSBzZWxlY3QuPC9wPgo8cD5UaGlzIG1vZHVsZSBjYW4gdXNlIHRoZSBGcm9udGVuZFVzZXJzIG1vZHVsZSAob3B0aW9uYWwpIHRvIGdldCBpbmZvcm1hdGlvbiBhYm91dCBhbnkgY3VycmVudGx5IGxvZ2dlZCBpbiB1c2VycyB0byBwYXJ0bHkgZmlsbCBpbiB0aGUgZm9ybSB3aGVuIHVwbG9hZGluZyBmaWxlczs8L3A+CjxoMz5QZXJtaXNzaW9uczwvaDM+Cjx1bD4KPGxpPjxlbT5NYW5hZ2UgVXBsb2FkczwvZW0+IHBlcm1pc3Npb24gaXMgbmVlZGVkIHRvIG1hbmFnZSBjYXRlZ29yaWVzLCBhbmQgdGhlIGZpbGVzIHdpdGhpbiB0aGVtLjwvbGk+CjxsaT48ZW0+TW9kaWZ5IFRlbXBsYXRlczwvZW0+IHBlcm1pc3Npb24gaXMgbmVlZGVkIGVkaXQgYW55IG9mIHRoZSB0ZW1wbGF0ZXMuPC9saT4KPGxpPjxlbT5Nb2RpZnkgU2l0ZSBQcmVmZXJlbmNlczwvZW0+IHBlcm1pc3Npb24gaXMgbmVlZGVkIGFueSBvZiB0aGUgZmlsZSBzZXR0aW5ncy48L2xpPgo8L3VsPgo8aDM+Q2F0ZWdvcnkgQnJvd3Npbmc8L2gzPgo8cD5QbGFjaW5nIGEgdGFnIGxpa2Uge2Ntc19tb2R1bGUgbW9kdWxlPSJVcGxvYWRzIiBhY3Rpb249ImNhdGVnb3J5c3VtbWFyeSIgdGVtcGxhdGU9InN1bW1hcnl0ZW1wbGF0ZSIgc29ydG9yZGVyPSJuYW1lX2FzYyIgbGlzdGluZ3RlbXBsYXRlPSJsaXN0dGVtcGxhdGUiIGxpc3Rpbmdzb3J0b3JkZXI9Imxpc3Rzb3J0b3JkZXIifQphbGxvd3MgeW91IHRvIGRpc3BsYXkgYW4gaW50ZXJhY3RpdmUgY2F0ZWdvcnkgYnJvd3Nlci4gc29ydG9yZGVyIGNhbiBiZTogbmFtZV9hc2MsIG5hbWVfZGVzYywgc3VtbV9hc2MsIHN1bW1fZGVzYywgb3IgcmFuZG9tLgpsaXN0aW5ndGVtcGxhdGUgYW5kIGxpc3Rpbmdzb3J0b3JkZXIgYXJlIGlkZW50aWNhbCB0byB0aGUgdGVtcGxhdGUgYW5kIHNvcnRvcmRlciBwYXJhbWV0ZXJzIGZvcgp0aGUgInN1bW1hcnkiIG1vZGUuPC9wPgo8aDM+QXV0b21hdGljIFNjYW5uaW5nPC9oMz4KPHA+VGhpcyBtb2R1bGUgd2lsbCBhdXRvbWF0aWNhbGx5IHNjYW4gZm9yIG5ldyBmaWxlcyBpbiBhIGRpcmVjdG9yeSB3aGVuIGEgc3VtbWFyeSBtb2RlIHRhZyBmb3IgYSBzcGVjaWZpYyBjYXRlZ29yeSBpcyB1c2VkIG9uIGEgQ01TTVMgcGFnZS4gIGkuZTogPGNvZGU+e1VwbG9hZHMgY2F0ZWdvcnk9Y2F0ZWdvcnlfbmFtZX08L2NvZGU+IHdpbGwgcGVyZm9ybSBhIHNjYW4uICBidXQgPGNvZGU+e1VwbG9hZHMgY2F0ZWdvcnk9YWxsfTwvY29kZT4gd2lsbCBub3QuPC9wPgo8aDM+VGh1bWJuYWlsIEdlbmVyYXRpb24gLSBEZXByZWNhdGVkPC9oMz4KPHA+VGhpcyBtb2R1bGUgaXMgY2FwYWJsZSBvZiBnZW5lcmF0aW5nIHRodW1ibmFpbHMgZm9yIGNlcnRhaW4gdHlwZXMgb2YgZmlsZXMuICBUaGVyZSBhcmUgcHJlZmVyZW5jZXMgaW4gdGhlIHByZWZlcmVuY2VzIHRhYiBvZiB0aGUgVXBsb2FkcyBtb2R1bGUgYWRtaW5pc3RyYXRpb24gcGFuZWwgdG8gc3BlY2lmeSB0aGUgdHlwZXMgb2YgZmlsZXMgdGhhdCBhbGxvdyBhdXRvbWF0aWMgdGh1bWJuYWlsIGdlbmVyYXRpb24sIGFuZCB0aGUgc2l6ZSBvZiB0aGUgZ2VuZXJhdGVkIHRodW1ibmFpbCAocHJlc2VydmluZyBhc3BlY3QgcmF0aW8pLiAgIFRodW1ibmFpbHMgYXJlIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIHVwb24gdXBsb2FkLCBhbmQgY2FuIGJlIGdlbmVyYXRlZCBtYW51YWxseSBieSBzZWxlY3RpbmcgdGhlICZxdW90O0dlbmVyYXRlIFRodW1ibmFpbHMmcXVvdDsgb3B0aW9uIGluIHRoZSBlZGl0IGNhdGVnb3J5IGZvcm1zLi4uIGJ1dCBhcmUgbm90IGdlbmVyYXRlZCB3aGVuIG5ldyBmaWxlcyBhcmUgZGV0ZWN0ZWQgYnkgYXV0b21hdGljIHNjYW5uaW5nLjwvcD4KPGgzPllvdSBTZW5kIEl0PC9oMz4KPHA+SXQgaXMgcG9zc2libGUgdG8gZW5hYmxlICZxdW90O3lvdXNlbmRpdCZxdW90OyBsaWtlIGZ1bmN0aW9uYWxpdHkgdG8gYWxsb3cgYXV0b21hdGljYWxseSBlbWFpbGluZyBzZWxlY3RlZCBwZW9wbGUgd2l0aCBhIGxpbmsgdG8gYSBuZXdseSB1cGxvYWRlZCBmaWxlLiAgVGhpcyBpcyBhY2NvbXBsaXNoZWQgYnkgdXNpbmcgYSB0YWcgbGlrZTogPGNvZGU+e1VwbG9hZHMgYWN0aW9uPXlvdXNlbmRpdCBjYXRlZ29yeT1jYXRlZ29yeW5hbWV9PC9jb2RlPi4gIFRoaXMgd2lsbCBkaXNwbGF5IGEgZm9ybSBhbGxvd2luZyB0aGlzIGZ1bmN0aW9uYWxpdHkuPC9wPgo8aDM+VGltZSBMaW1pdGVkIEFjY2VzczwvaDM+CjxwPlRoaXMgbW9kdWxlIHN1cHBvcnRzIHRoZSBub3Rpb24gb2YgdW5pcXVlIGtleXMgdG8gYWxsb3cgdGltZSBsaW1pdGVkIGFjY2VzcyB0byBjZXJ0YWluIGZpbGVzLiAgVGhlIGZ1bmN0aW9uYWxpdHkgYWxsb3dzIHNwZWNpZnlpbmcgYSB0aW1lIGxpbWl0IChpbiBob3VycykgZm9yIHdoaWNoIHRoZSBrZXkgaXMgdmFsaWQsIGFuZCBhIG1heGltdW0gbnVtYmVyIG9mIGRvd25sb2FkcyBvciBkb3dubG9hZCBhdGVtcHRzLiAgQW4gZW1haWwgaXMgc2VudCB0byB0aGUgZGVzaXJlZCB1c2VycyB3aXRoIHRoZSB1bmlxdWUgVVJMLiAgQWZ0ZXIgdGhlIHRpbWUgbGltaXQsIG9yIHRoZSBudW1iZXIgb2YgZG93bmxvYWRzIGhhcyBiZWVuIHJlYWNoZWQsIHRoZSBVUkwgaXMgbm8gbG9uZ2VyIHZhbGlkLiAgVGhlc2UgdW5pcXVlIHRpbWUgbGltaXRlZCBrZXlzIGFyZSBhdXRvbWF0aWNhbGx5IHJlbW92ZWQgZnJvbSB0aGUgZGF0YWJhc2UgYWZ0ZXIgZXhwaXJ5LjwvcD4KPGgzPlJlc3RyaWNpbmcgQWNjZXNzIHdpdGggRkVVPC9oMz4KPHA+VGhpcyBtb2R1bGUgaXMgY2FwYWJsZSBvZiBpbnRlZ3JhdGluZyB3aXRoIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZSB0byByZXN0cmljdCB0aGUgdmlzaWJpbGl0eSBvZiBjYXRlZ29yaWVzIChkaXJlY3RvcmllcykgdG8gY2VydGFpbiBhbGxvd2VkIEZFVSBncm91cHMuICBZb3VyIHVzZXJzIHdvdWxkIGhhdmUgdG8gYmUgbG9nZ2VkIGluIHRvIHlvdXIgd2Vic2l0ZSAodXNpbmcgRkVVKSBhbmQgYWxzbyBhIG1lbWJlciBvZiBvbmUgb2YgdGhlIGFsbG93ZWQgZ3JvdXBzIHRvIG9idGFpbiBhY2Nlc3MuICBUaGlzIGlzIGFjY29tcGxpc2hlZCBpbiB0aGUgY2F0ZWdvcnkgZWRpdCBmb3JtLiAgWW91IGNhbiBzZWxlY3QgYSBsaXN0IG9mIEZFVSBncm91cHMgd2hpY2ggYXJlIGFsbG93ZWQgdG8gdmlldyBmaWxlcyBpbiB0aGlzIGNhdGVnb3J5LjwvcD4KPHA+VGhpcyBmdW5jdGlvbmFsaXR5IGFsc28gYXBwbGllcyB0byB0aGUgJnF1b3RUaW1lIExpbWl0ZWQgQWNjZXNzJnF1b3QgZnVuY3Rpb25hbGl0eS4gIEFsbG93aW5nIHlvdSB0byBzcGVjaWZ5IHRoYXQgY2VydGFpbiBwZW9wbGUsIHdobyBhbHNvIGhhdmUgdG8gYmUgbG9nZ2VkIGluIHRvIHlvdXIgd2Vic2l0ZSBjYW4gaGF2ZSBhY2Nlc3MgdG8gY2VydGFpbiBmaWxlcyBmb3IgYSBsaW1pdGVkIGFtb3VudCBvZiB0aW1lLjwvcD4KPGgzPkVtYWlsaW5nPC9oMz4KPHA+VGhpcyBtb2R1bGUgaXMgY2FwYWJsZSBvZiBzZW5kaW5nIGFuIGVtYWlsIHdoZW5ldmVyIGEgZmlsZSBpcyB1cGxvYWRlZCwgc2VlIHRoZSBwcmVmZXJlbmNlcyB0YWIuICBIb3dldmVyLCB0byBkbyB0aGlzIHRoZSA8Yj5DTVNNYWlsZXI8L2I+IHBhCmNrYWdlIG11c3QgYmUgaW5zdGFsbGVkIGFuZCBjb25maWd1cmVkLiAgVGhpcyBpcyBhbiA8ZW0+b3B0aW9uYWw8L2VtPiBzdGVwLCBhbmQgaWYgdGhlIENNU01haWxlciBtb2R1bGUgaXMgbm90IGluc3RhbGxlZCwgbm90aGluZyB3aWxsIGJlIGRpc3BsYXllZCB0byB0aGUgdXNlciwgb25seSBhIGxvZyBtZXNzYWdlIHdpbGwgYmUgcGxhY2VkIGludG8gdGhlIGFkbWluIGxvZzwvcD4KPGgzPlJlcG9ydGluZzwvaDM+CjxwPlRoaXMgbW9kdWxlIHByb3ZpZGVzIGEgZmxleGlibGUgcmVwb3J0aW5nIG1lY2hhbmlzbSBmb3Igdmlld2luZyBzdGF0aXN0Y3MgYWJvdXQgaG93IGEgZmlsZSBzaGFyZWQgd2l0aCB0aGUgVXBsb2FkcyBtb2R1bGUgd2FzIGRvd25sb2FkZWQuICBJdCBpbmNsdWRlcyB0aGUgYWJpbGl0eSB0byBjdXN0b21pemUgcmVwb3J0IHRlbXBsYXRlcywgb3V0cHV0IGZpZWxkcyBhbmQgZmlsdGVyaW5nLiAgRmlsdGVyaW5nIGlzIHBlcm1pdHRlZCBieSBVcGxvYWRzIGNhdGVnb3J5LCBmaWxlbmFtZSwgZG93bmxvYWQgdXNlciBuYW1lLCBvciB1c2VybmFtZSBwYXR0ZXJuLCBhbmQgYnkgZGF0ZS4gIEhUTUwgcmVwb3J0cyBjYW4gYmUgZ2VuZXJhdGVkIGluIHRoZSBicm93c2VyIHdpbmRvdywgb3IgZW1haWxsZWQuICBBZGRpdGlvbmFsbHkgdGhlIHJlcG9ydGluZyBmdW5jdGlvbmFsaXR5IHN1cHBvcnRzIENTViBleHBvcnQuPC9wPgo8cD48c3Ryb25nPk5vdGU6PC9zdHJvbmc+IEl0IGlzIGltcG9ydGFudCB0byBub3RlIHRoYXQgdGhlIGFiaWxpdHkgdG8gc2VsZWN0IG91dHB1dCBmaWVsZHMgaW4gdGhlIHJlcG9ydHMgbWF5IGdlbmVyYXRlIHNvbWUgY29uZnVzaW5nIG91dHB1dCBkZXBlbmRpbmcgdXBvbiB0aGUgZmllbGRzIGNob3NlbiBhbmQgdGhlIHJlcG9ydCB0eXBlLiAgaS5lOiBpbiBhIHN1bW1hcnkgcmVwb3J0IGl0IGRvZXMgbm90IG1ha2Ugc2Vuc2UgdG8gZGlzcGxheSBmaWVsZHMgbGlrZSBkb3dubG9hZCB1c2VybmFtZS4gIFdoZXJlYXMgaW4gYSBkZXRhaWwgcmVwb3J0IGl0IGRvZXMgbm90IHVzdWFsbHkgbWFrZSBzZW5zZSB0byBkaXNwbGF5IHRoZSBudW1iZXIgb2YgZG93bmxvYWRzLiAgVXNlIGNhdXRpb24gd2hlbiBnZW5lcmF0aW5nIHJlcG9ydHMuPC9wPgo8dWw+CiAgPGxpPkRvd25sb2FkcyBieSBVc2VyCiAgICA8dWw+CiAgICAgIDxsaT5TdW1tYXJ5CiAgICAgICAgPHA+VGhpcyByZXBvcnQgZ2VuZXJhdGVzIG9uZSBsaW5lIHBlciBtYXRjaGluZyB1c2VyICh1c2VyIHdobyBkb3dubG9hZGVkIHNvbWV0aGluZykuICBJdCBpcyBncmVhdCBmb3IgZGlzcGxheWluZyBob3cgbXVjaCBhIHVzZXIgZG93bmxvYWRlZCwgYW5kIHRoZSBsYXN0IHRpbWUgdGhleSBkb3dubG9hZGVkIGFueXRoaW5nLjwvcD4KICAgICAgPC9saT4KICAgICAgPGxpPkRldGFpbAogICAgICAgIDxwPlRoaXMgcmVwb3J0IGdlbmVyYXRlcyBvbmUgbGluZSBwZXIgZG93bmxvYWQuICBJdCBkZXRhaWxzIHdoYXQgdGhlIHNlbGVjdGVkIHVzZXJzIGRvd25sb2FkZWQsIGFuZCB3aGVuLjwvcD4KICAgICAgPC9saT4KICAgIDwvdWw+CiAgPC9saT4KICA8bGk+RG93bmxvYWRzIGJ5IEZpbGUKICAgIDx1bD4KICAgICAgPGxpPlN1bW1hcnkKICAgICAgICA8cD5UaGlzIHJlcG9ydCBnZW5lcmF0ZXMgb25lIGxpbmUgcGVyIG1hdGNoaW5nIGZpbGUuICBJdCBncm91cHMgZXZlcnl0aGluZyBieSB0aGUgZmlsZS4gIEl0IGlzIHVzZWQgZm9yIGRpc3BsYXlpbmcgaG93IG1hbnkgdGltZXMgYSBmaWxlIHdhcyBkb3dubG9hZGVkLjwvcD4KICAgICAgPC9saT4KICAgICAgPGxpPkRldGFpbAogICAgICAgIDxwPlRoaXMgcmVwb3J0IGdlbmVyYXRlcyBvbmUgbGluZSBwZXIgZG93bmxvYWQuICBJdCBkZXRhaWxzIHdobyBkb3dubG9hZGVkIHRoZSBzZWxlY3RlZCBmaWxlcywgYW5kIHdoZW4uPC9wPgogICAgICA8L2xpPgogICAgPC91bD4KICA8L2xpPgo8L3VsPgo8aDM+U21hcnR5IFBsdWdpbnM6PC9oMz4KPHA+VGhpcyBtb2R1bGUgcHJvdmlkZXMgc29tZSBhY2Nlc3Nvcnkgc21hcnR5IHBsdWdpbnMgdGhhdCBhcmUgdXNlZnVsIGZvciB2YXJpb3VzIHB1cnBvc2VzIHdoZW4gd29ya2luZyB3aXRoIGZpbGVzLjwvcD4KPGgzPkNvbnRlbnQgQmxvY2tzIDxlbT4oQ01TTVMgMS43KyBPbmx5KTwvZW0+PC9oMz4KPHVsPgogIDxsaT48c3Ryb25nPnt1cGxvYWRzX2NyZWF0ZV90bF9maWxlfTwvc3Ryb25nPgogICAgPHA+Q29weSBhbiBleGlzdGluZyBzZXJ2ZXIgZmlsZSBpbnRvIHRoZSB1cGxvYWRzIG1vZHVsZSBhbmQgZ2VuZXJhdGUgYSB0aW1lIGxpbWl0ZWQgVVJMIGZvciBpdC4gVGhpcyBwbHVnaW4gd2lsbCBhbHNvIHdhdGVybWFyaywgYW5kIHRodW1ibmFpbCBpbWFnZSBmaWxlcyBhcyBzcGVjaWZpZWQgaW4gdGhlIHByZWZlcmVuY2VzIChkZXByZWNhdGVkKS48L3A+CiAgICA8cD5QYXJhbWV0ZXJzOjwvcD4KICAgIDx1bD4KICAgICAgPGxpPjxzdHJvbmc+c3JjPC9zdHJvbmc+IC0gc3RyaW5nIC0gcmVxdWlyZWQgLSBUaGUgYWJzb2x1dGUgc2VydmVyIGZpbGUgc3BlY2lmaWNhdGlvbiB0byB0aGUgc291cmNlIGZpbGUuPC9saT4KICAgICAgPGxpPjxzdHJvbmc+Y2F0ZWdvcnk8L3N0cm9uZz4gLSBtaXhlZCAtIHJlcXVpcmVkIC0gVGhlIGNhdGVnb3J5IG5hbWUgKHN0cmluZykgb3IgaWQgKGludGVnZXIpIHRvIHRoZSBkZXN0aW5hdGlvbiBVcGxvYWRzIGNhdGVnb3J5LjwvbGk+CiAgICAgIDxsaT5wcmVmaXggLSBib29sZWFuIC0gb3B0aW9uc2wgLSBJbmRpY2F0ZXMgd2V0aGVyIGZpbGVzIHNob3VsZCBiZSBwcmVmaXhlZCB3aXRoIGEgc3RyaW5nIHRoYXQgZGVwZW5kcyBvbiB0aGUgc2VydmVyIHRpbWUgKGRlZmF1bHQgaXMgRkFMU0UpPC9saT4KICAgICAgPGxpPmVtYWlsIC0gc3RyaW5nIC0gb3B0aW9uYWwgLSBUaWUgdGhlIGdlbmVyYXRlZCB1cmwgdG8gdGhlIHN1cHBsaWVkIGVtYWlsIGFkZHJlc3MgKHdvcmsgaW4gcHJvZ3Jlc3MpPC9saT4KICAgICAgPGxpPmhvdXJzIC0gaW50ZWdlciAtIG9wdGlvbmFsIC0gVGhlIG51bWJlciBvZiBob3VycyB0aGlzIFVSTCB3aWxsIGJlIHZhbGlkIGZvciwgaWYgbm90IHNwZWNpZmllZCB0aGUgbW9kdWxlIHByZWZlcmVuY2Ugd2lsbCBiZSB1c2VkLjwvbGk+CiAgICAgIDxsaT5kb3dubG9hZHMgLSBpbnRlZ2VyIC0gb3B0aW9uYWwgLSBUaGUgbWF4aW11bSBudW1iZXIgb2YgdGltZXMgdGhlIGZpbGUgY2FuIGJlIGRvd25sb2FkZWQgdXNpbmcgdGhpcyB1cmwuICBJZiBub3Qgc3BlY2lmaWVkLCB0aGUgbW9kdWxlIHByZWZlcmVuY2Ugd2lsbCBiZSB1c2VkLjwvbGk+CiAgICAgIDxsaT5hc3NpZ24gLSBzdHJpbmcgLSBvcHRpb25hbCAtIEEgc21hcnR5IHZhcmlhYmxlIG5hbWUgdG8gYXNzaWduIHRoZSBvdXRwdXQgdG8uPC9saT4KICAgIDwvdWw+CiAgICA8cD5FeGFtcGxlOjxici8+CiAgICA8cHJlPnt1cGxvYWRzX2NyZWF0ZV90bF9maWxlIHNyYz0mcXVvdDsvdGhlL2NvbXBsZXRlL3BhdGgvdG8vdGhlL2ZpbGUuanBnJnF1b3Q7IHByZWZpeD10cnVlIGRvd25sb2Fkcz01IGhvdXJzPTcyIGNhdGVnb3J5PSZxdW90O3NvbWUgY2F0ZWdvcnkmcXVvdDsgYXNzaWduPSZxdW90O3RoZV91cmwmcXVvdDt9PC9wcmU+CiAgICA8L3A+CiAgPC9saT4KPC91bD4KPHA+Rm9yIENNU01TIDEuNyB0aGlzIG1vZHVsZSBpcyBjYXBhYmxlIG9mIGludGVyZmFjaW5nIHdpdGggdGhlIGNvbnRlbnQgZWRpdG9yIGFuZCBleHBvcnRpbmcgYSBjb250ZW50IGJsb2NrIHRoYXQgYWxsb3dzIHNlbGVjdGluZyBhbiB1cGxvYWRzIGNhdGVnb3J5IHdpdGhpbiB0aGUgZWRpdCBjb250ZW50IHBhZ2UsIGZvciBsYXRlciB1c2Ugd2l0aGluIHRoZSB0ZW1wbGF0ZS48L3A+CjxwPmkuZTogcGxhY2luZyB0aGUgZm9sbG93aW5nIHRhZyB3aXRoaW4gYSBwYWdlIHRlbXBsYXRlIDxjb2RlPntjb250ZW50X21vZHVsZSBtb2R1bGU9JnF1b3Q7VXBsb2FkcyZxdW90OyBibG9jaz0mcXVvdDt1cGxvYWRzX2NhdGVnb3J5JnF1b3Q7IHR5cGU9JnF1b3Q7Y2F0ZWdvcnlzZWxlY3QmcXVvdDt9PC9jb2RlPiwgd2lsbCBhZGQgYSBkcm9wZG93biBib3ggaW4gdGhlIGVkaXQgY29udGVudCB2aWV3IG9mIGFueSBwYWdlIHV0aWxpemluZyB0aGF0IHBhZ2UgdGVtcGxhdGUuPC9wPgo8cD5UaGlzIGNvbnRlbnQgYmxvY2sgYWxzbyBhY2NlcHRzIHNvbWUgb3B0aW9uYWwgcGFyYW1ldGVyczo8L3A+Cjx1bD4KICA8bGk+PHU+c2VsZWN0b25lPC91PgogICAgPHA+VGhpcyBwYXJhbWV0ZXIgaW5zZXJ0cyBhICZxdW90O1NlbGVjdCBPbmUmcXVvdDsgaXRlbSBpbnRvIHRoZSBsaXN0IG9mIGNhdGVnb3JpZXMsIHJlcXVpcmluZyB0aGUgdXNlciB0byBzZWxlY3QgYSB2YWxpZCBjYXRlZ29yeSB3aGVuIHRoZSBjb250ZW50IHBhZ2UgaXMgc2F2ZWQuPC9wPgogIDwvbGk+CiAgPGxpPjx1PmFsbG93YWxsPC91PgogICAgPHA+VGhpcyBwYXJhbWV0ZXIgYWxsb3dzIHRoZSBjb250ZW50IGVkaXRvciB0byBzZWxlY3QgJnF1b3Q7QWxsJnF1b3Q7IGFzIGEgY2F0ZWdvcnkgZm9yIHRoZSB1cGxvYWRzIGRpc3BsYXkuPC9wPgogIDwvbGk+CjwvdWw+CjxoND5Ib3cgd291bGQgSSB1c2UgaXQ/PC9oND4KPHA+SGVyZSBpcyBzb21lIGV4YW1wbGUgY29kZTo8L3A+CjxwcmU+Cntjb250ZW50X21vZHVsZSBtb2R1bGU9JnF1b3Q7VXBsb2FkcyZxdW90OyBibG9jaz0mcXVvdDtjYXRlZ29yeXNlbGVjdCZxdW90OyBsYWJlbD0mcXVvdDtTZWxlY3QgYW4gdXBsb2FkcyBjYXRlZ29yeSZxdW90OyBzZWxlY3RvbmU9MSBhc3NpZ249JnF1b3Q7dG1wJnF1b3Q7fQp7VXBsb2FkcyBjYXRlZ29yeT0kdG1wfQo8L3ByZT4KPGgzPkRlcHJlY2F0ZWQ6PC9oMz4KPHA+PHN0cm9uZz5Ob3RlOjwvc3Ryb25nPiBUaGUgdGh1bWJuYWlsIGFuZCB3YXRlcm1hcmsgY2FwYWJpbGl0aWVzIHRoYXQgZXhpc3QgaW4gdGhpcyBtb2R1bGUgYXJlIGRlcHJlY2F0ZWQsIGFuZCB3aWxsIGJlIHJlbW92ZWQgb3ZlciB0aW1lLiAgVGhlIENHU21hcnRJbWFnZSBtb2R1bGUgcHJvdmlkZXMgZm9yIGJldHRlciBvbiBkZW1hbmQsIGltYWdlIG1hbmlwdWxhdGlvbiwgY2FjaGluZywgYW5kIGVtYmVkZGluZy48L3A+CjxoMz5TeXN0ZW0gU2V0dGluZ3M8L2gzPgo8cD48Yj5Ob3RlOjwvYj4gVGhpcyBtb2R1bGUgZG9lcyBub3QgYnlwYXNzIG9yIGdldCBwYXN0IGFueSBmaWxlIHNpemUgbGltaXRhdGlvbnMgaW4gcGhwLiAgSXQgd29ya3MgaW4gY29uanVuY3Rpb24gd2l0aCB0aGVtLiAgVGhlcmVmb3JlIHlvdSBtYXkgbmVlZCB0byBtb2RpZnkgeW91ciBwaHAuaW5pIGZpbGUsIHlvdXIgQ01TTVMgY29uZmlnLnBocCBmaWxlIGFuZC9vciB5b3VyIGh0dHBkLmNvbmYgZmlsZShzKSB0byBhbGxvdyB5b3UgdG8gdXBsb2FkIGZpbGVzIGFzIGxhcmdlIGFzIHdoYXQgeW91IGhhdmUgc2V0IGluIHRoZSB1cGxvYWRzIG1vZHVsZSBwcmVmZXJlbmNlcy48L3A+CjxoMz5BcGFjaGUgTm90ZXM8L2gzPgo8cD5JbiBvcmRlciB0byBhbGxvdyBsYXJnZSBmaWxlIHVwbG9hZHMsIHlvdSBtYXkgbmVlZCB0byBtb2RpZnkgdGhlIHVwbG9hZF9tYXhfZmlsZXNpemUgcGFyYW1ldGVyIGluIHlvdXIgcGhwLmluaSAgSW4gYWRkaXRpb24sIHRoZSBMaW1pdFJlcXVlc3RCb2R5IHBhcmFtZXRlciBpbiB5b3VyIGFwYWNoZSBjb25maWd1cmF0aW9uLCBtYXkgbmVlZCB0byBiZSBhZGp1c3RlZCB0byBtYXRjaCB0aGUgdXBsb2FkX21heF9maWxlc2l6ZSBwYXJhbWV0ZXI8L3A+CjxwPk5vdGU6ICB0aGUgdXBsb2FkX21heF9maWxlc2l6ZSBwYXJhbWV0ZXIgY2FuIGJlIHNwZWNpZmllZCBpbiBieXRlcywga2lsb2J5dGVzLCBvciBtZWdhYnl0ZXMsIGhvd2V2ZXIgdGhlIExpbWl0UmVxdWV0Qm9keSBwYXJhbWV0ZXIgaXMgb25seSBzcGVjaWZpZWQgaW4gYnl0ZXM8L3A+CjxwPjxzdHJvbmcgc3R5bGU9ImNvbG9yOiByZWQ7Ij5XYXJuaW5nPC9zdHJvbmc+IC0gVGhlIHByb3BlciBiZWhhdmlvdXIgb2YgdGhpcyBtb2R1bGUgZGVwZW5kcyBvbiBudW1lcm91cyBwaHAgY29uZmlndXJhdGlvbiB2YXJpYWJsZXMuICBUaGVzZSBpbmNsdWRlIDxlbT4oYnV0IGFyZSBub3QgbGltaXRlZCB0byk8L2VtPiwgcGhwJ3MgbWVtb3J5X2xpbWl0LCBzYWZlX21vZGUsIGZpbGVfdXBsb2FkcywgdXBsb2Fkc19tYXhfZmlsZXNpemUsIGFuZCBtYXhfZXhlY3V0aW9uX3RpbWUuICBUaGVzZSB2YXJpYWJsZXMgbWF5IG5lZWQgYWRqdXN0bWVudCBmb3IgdGhpcyBtb2R1bGUgdG8gd29yayBwcm9wZXJseSBvbiB5b3VyIHNpdGUuICBJdCBpcyBhZHZpc2VkIHRoYXQgeW91IHdvcmsgd2l0aCB5b3VyIHN5c3RlbSBhZG1pbmlzdHJhdG9yIG9yIGhvc3QgcHJvdmlkZXIgdG8gdHVuZSB0aGVzZSBzZXR0aW5ncyBmb3IgeW91ciByZXF1aXJlbWVudHMuPC9wPgo8cD48c3Ryb25nIHN0eWxlPSJjb2xvcjogcmVkOyI+V2FybmluZzwvc3Ryb25nPiAtIFVzaW5nIHRoaXMgbW9kdWxlIHRvIGFsbG93IHNpdGUgdmlzaXRvcnMgdG8gc2VuZCBmaWxlcyAoZWl0aGVyIHVzaW5nIHRoZSBzdGFuZGFyZCBtZWNoYW5pc20gb3IgdGhlIHlvdXNlbmRpdCBtZWNoYW5pc20pIG1heSBub3Qgd29yayB3aXRoIG91dHB1dCBjb21wcmVzc2lvbiBlbmFibGVkLiAgUGxlYXNlIGVuc3VyZSB0aGF0IG91dHB1dF9jb21wcmVzc2lvbiBpcyBzZXQgdG8gZmFsc2UgaW4gdGhlIGNvbmZpZy5waHAuPC9wPgo=]]></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/file-report-icon.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAJpklEQVR42tWbW2wT6RWAz4w9jmOTG0mcO7mQ+4UA4bpZQGW3kZD2gV11pX1gRZ+Q2qc8Va0qpIIqtS88rIQqJIpaJIRUaLvRFlDZZbUlhBACuUAI5B5yBRIgVzv2XHv+ydgxTjLj+CcxPtLR2P/M2HO+Oef8/zljMxCkvHnzJh03+agMSrCnvTfxeDwwPj4OLS0tEydOnHj2vj43KEvQ+N/h5o+o7IZbHiCnT592oRw5f/58/YYA0O78CItiMpnCbT+cOnUKOjo6Zsxmc82NGzeaNwLAIdz8jxgvSVK47YczZ87AkydPgOf5GbymmuvXr1NBCBpAuA33ytmzZ6Grq4sA8EGoq6sLGULEAcDYh97eXhAEQYWA2xmMzpqrV6+GBCHiAFy8eBH6+/tBFEUVgqYqhMuXL68ZgiGA169fH8Jp74MBgEbC4OCgmo/8IeBrFQICWhOEiANw5coVGBoaUgF4IXjV6wkXLlwIGkJQAGBZCCgAT84C6xoGU0zyhgL4V5sVBicVkGXZB8EfBIFAEuO5c+eCgmAIYHJycpkHMPNDIN86BtGFH4M4NbahAJrHkuDe5FYVgFdX8IaZ9PT0mpMnTxpCCAkATPeA8MNxUISFDTWeiKyw0OT+CAaFXJBkBkyKW4VgiUkFmeGArFcURQEMhZmSkpKf1dTUtFEDgMAQQADua7/YcOP1xPrZPwHiC98Zm52drd26des3VAAmJiaWeYCCAJx1X4Tb5nfEfvTfwAQAwLCoTU1NpQcAAR6gTPXA7Lefh9vmdyT282+BSSgMHK51OBx0AF69erXMA+Spbpi+ejTcNr8j8V/WAZtQ9M4Y5oLalJQUegAQ4AGM+zVMXDxIviHcdmsXxILjeD0o1sTAPfQAXr58uQwAybTC6F0Q3/aH23RVuMR8MGd8tFK1Sp8DXrx4seJKMBxdIT1RVvBGEgJpaWn0AOADKobWKPQAxsfHIxoArgjpAIyNjX1QxdBahIRARkYGHYDR0VFDAPJMDzDCDCZjDmYnsTZQZDBH2cAen4wvBZCBxSlqGwC71FP08FjCGrTYSJ6xWaNoGLwfAGAQAp7Oc3ixaCRng+7WBhD5BYhLyoCswkqQRRfeCQlMGZ9i5ZjjO+e7nxpVCEZSU70L4jbZQwaQmZlJB2BkZMQQwMKjM2Di7MCao6H97vfgds5BUkYuFFTsQQBYrAhOMG85Aqa4At851243gdvDBwUg1m4LGUBWVhYdgOHhYcMQcLX+Ce8+AWCFxh++A+fMNKTnFED57o9BljwIYQG47M/AHL+0UiOTlhLEQoqlmG5JDtiyZQsdgKGhIUMAzgd/UN2fABgbeg6zU28hPskB6VnZPgCW3C/AnFASsjGhAsjOzqYD8Pz5c0MA802/Vd2fNUUBYzLjp5rUZbKiiKBIvBoGUflfgXlz+YYDyMnJoQMwODhoDODeb2Ayaj9WjpOQmJQMFs4MyWKbBkBQvcBadByXrJW+c/7b8AAWgsgBerKnoggyHEm6AHJzc+kADAwMGAO4/3u4PbEHHj5ohtLyCkiIi4H9sT+p2V+RRbwSCaLLfoUeUOE758adZuAFkQpAVWkBZKXq9iTpAfT39xsCkIbrQMASeTG1gboOUPCue8VkTwdLwS/xxdKcLkgyiCLdo7boKMvSd64CIC8vjw5AX19fUCtBll39wTHp2YVJ6Ftivb29EbsUJgDy8/PpAPT09EQsAJIECwsL6QB0d3frAmjvHghqRbcekpa8GbLTHLoAioqK6AB0dXXpAvj+XpthUbNekuFIhMrCXF0AxcXFdACePXumC2BqzgUekW46C1Vioq1gt1p0AZSUlNABePr0aUQ3REpLS+kAdHZ2RjSAsrIyOgAdHR2Gs4BJnAYLK6rtad41B2Rxwpo4tSlCFkUkRwicw+ir1gVAeXk5HYDHjx8bArBP/AdXOx4siGzQ234Xix8PxCSmQcbWCrUSJGBcsXtAjkrxndPyrN+wFiAdoZ3FedqKb+1CcsC2bdvoADx69MgQQPTw3xb7AVgSd9y7BW7XPCSlZUNe+W4VgCy4wJ1QDbItx3fO7danQc0ee8ryIcYWHTKAyspKOgDt7e2GOSB6+K9aR8gKTT9eA9fcNKRuKYCyKjRaci8C2HwIJD8AosKAGMQSOdpMHneHvJSu3b59Ox2A1tZWYw8Y/IvWEImCzraHMDX5ClKzciC/dJvWD1gAT9InCCAvVENCBrBjxw46AC0tLYYArH1n1PhnEADDmhc/Vi3SJF9DxOM4AvKmAqOve69CQqCqqooOwMOHDw1DwNr7Z5DjdwDPS2CxWvFDFeBcfTgBkH4AryZFPu0oAljqCXYNjQNPWQ7npCZBrF03P9Tu2rWLDkBzc7NxCAx8A9f6i6GhoR527qyCpGQHfJLStNgQkQT12YCQ+RXIMUs9wXtP+kCiLJMLMlMgZXOcLoDdu3fTAbh//77xNDj2d1gQWCyKPGCxWIBRRIjiR8DbrGAwPPi8X4PExvjO4RWWuoawcSZ1nbGakBDYu3cvHYCmpibDEOAwU3Om1S9EUkzg4cNSL9Tu27ePDkBjY2PE9gMIgP3799MBaGhoiGgA1dXVdADu3LmjGwKTM/MgUGbzUCXGZsWSWPfhae2BAwfWF0Bb3whm8/D8Vigx1g65qYl6h6w/gKkFETyC8VPe9RBy9+2c7t+Y1h+A2WyGcP2XiPxM3qDlTg+gvr4+YpMgWQccPHiQDsDNmzeLbDZbV7iNCUXQQ74+fPjwpTUDuHTpEhln0LUZjuOYhISEf+AK78P6cbCBSJLUOTU1VY0Q5nmeV3+OcOzYsWXZmtEMJiVcVIBaUTlUG4bAJvSCnyMQ8h9Ci7bPFADQpI1bIAjPClGIAaSN5CY2BoxL2jiPrj/rdDpvYH54g+9dqIK2z+OvCERk0HhiZBZqMWomKplX4lHjNIPID3Q2+RlMxmwaHH9D2QAA7xuCEgBADtgnaMa6/YDMozq1sRnUaVQCZRSVhPUIAUCM2Yn6KSqpVx2a8XY/g8yawayfMn5bf2NXMj4UIF6D9ca872W/rVcJENEPmFODMIFKHmXfQm1lNPdPg8U/RhMX36wBiNWUACAhEaNtvcZwGiS9Ox6qV+jd7ZWOcWoGe8eIi89pW7J/VlMC4C3qOGof6gtvDmC1i/QqB0t5wKyN2WHJ7RltLNYPykrCacfYYO1/vCZGu7QLX22l5TV2VjPUC0DQoPCaF3jjX9DGVMUcIK96R7wzgfbW3939765phXEIOIbTIIYSAqJ20bLOMWSfBMtzgjcs1PcrzQBE/g9gR5xU77TpywAAAABJRU5ErkJggg==]]></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/user-report-icon.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAJK0lEQVR42tWbaUxb2RXHj1fAZgmB2Oz7TlYgEwgl00YUKVJnlKmm0kTNKB+mk2+V3OXDtFVGTVR12khpGwmpqdJUg5pGmiSdoZOENpmM2gGGEIY17IsxZnEIhLAEg/H2eu/jmtjGPL/nCzYc6ej5nfcw/v/eOefde/0sAp42MzMThzYZyEXI+P7ZptnKygoYDAZoaWmZOnv2bO9mvS8vJUj8L9DmN8jFflfuZhcuXFhCduLq1au1fgFArvyYGJlEIgm0fjh//jx0dnbOS6XSipqamiZ/AHgdbf6HxdtstkDrh0uXLkFXVxeYzeZ59Jkq7t27RwWBN4BAC3dYZWUl9PX1YQBrEKqrq32GsOMAoNqHwcFBsFgsLAS0nUfVWXHr1i2fIOw4AFVVVaDVasFqtbIQiLMQbty4IRiCVwDPnz9/Hd32tg0AJBJ0Oh3bj5whoNcsBARIEIQdB+DmzZug1+tZAA4IDndkwrVr13hD4AUA1pUAA9BVCeKlUZCE7fErgH+2BYNumgG73b4GwRkEhoAb45UrV3hB8Apgenp6XQaIFvVgf3gaQrK+BdbZCb8CaJqIhkfT6SwAh3vIhvm4uLiKc+fOeYXgEwCYGwDLF2eAsSz7VTw2OyOGRtNR0FlSwWYXgYQxsRDkYTFgF8kAj1cYhgFUCvO5ubnfqaioaKMGAO4lgACY7r7td/FcFvy92wC7slxiCwsLmvT09MtUAKamptZlAIMAGKu/H2jNLqY8+SmI3ACgstDExMTQAwC3DGBmB2Dhs7cCrdnFwt/6DESRWe5hjUqlogPw7NmzdRlgn+2HuVsnA63ZxXb9oBrEkdkuMdQLNGq1mh4AuGWAyPQcpqqO4f8QaN3kA4lBdaYWmOAo9yP0ACYnJ9cBwJ3WMv41WF9oAy2dNVlUBkjjj3qardL3gKdPn3ocCQZiVYjLGA/ZiEsgNjaWHgBso8mQQKMHYDAYdjQANCKkAzAxMSF4MmRH2fjk2SL75vvUoSAOULXgEoiPj6cDMD4+LgiADYn/8MEANOumcaOAkrQ98GF55joIK2Y0hfWyxIb7jCI4iIbB5gAAASVQNzIHv77bwU4YV0UAnH/jIJQmR7ic9/l/G1gI3qyitAgiQpU+A0hISKADMDY2JgjA378Zg48bhlxiPyrLhFMFCS6xu181gmnFzAtAuFLhM4DExEQ6AKOjo4JKoHHkBfzy0xaX2MW3i6AoKdIlhhOE4TGQElPcbnEPSEpKogOg1+sFARCJxfCHBz1wp22E3X+zIAV+Up7LS+xmGwaQnJxMB2BkZIQ3gBUrA5UPe+BQSjTsS1i94j2GORieWoAzpRl+vxtgACkpKXQAdDodLwBY/I8/roWhyTkIkkngL+8fh9AgGZz58xdgNFmgMF0Nv3unGCTkP/6n/htY5tEDuOy1fdkQr4rmBJCamkoHYHh4mBeAf7ePwcV/vVqBSooOB1WEApq1k2uxj35YBsUZKvZ1TV0TmC1WKgCFeZmQGMO5JkkPQKvV8gIwNrMEP/vbl2DaQFS4Igguv18OUUo5u2+x2cFqpfuqLSQIvxdnb9GkpaXRARgaGuLdA/AscaNJEm6CAfhukX5JbHBwcFt9LyAUQEZGBh2AgYGBHQsAN8GsrCw6AP39/ZwA2vuHeY3otsJi9+yG5FgVJ4Ds7Gw6AH19fZwAHjxq8zqp2SqLV0XBgaxUTgA5OTl0AHp7ezkBzL5cQmMAutuZrxYWEgzKYDkngNzcXDoAPT09O3pBJC8vjw5Ad3e3YABiNB+wgISdCkvs1oDMAxwA8vPz6QB0dnYKugvgscAd7SLc7lj90vSdgkQ4kaII1PNFmr1799IBePLkiSAAukWAD+50g81uJ0DEcPGNfEh2W9No6dV6nQvgQVVBThoZ8Qk33AP2799PB6Cjo0MQgDuDC1DVqHOJvXc0DU6kh7nEvmrt4XX3eC0/A8IUIT4DOHDgAB2A9vZ2QT2gYWIZ/vhln0vs5+U5cCTOVYSVEYGVZAmXhUjx193ez9vANAcPHqQD0NraKmwkKJHBB5/3gHZqnt3NVEfAR2/mAWP1vv63BaY5dOgQHYCWlhbeAKRSKTSOvoQENBXWEwDJqgh4aVyG7Cg5+yCDPw2XQGFhIR2A5uZmXiUglcngr1+PQE27HmJ2KeFPpw6DFL37Tz9pQVPlRXi3LBtO7lOxj7Bg69MbwEw5HU6JiYZwJWd/0BQVFdEBaGpq4pUB7YYl+G1189p+cVYcJOwOhduNA2ux358qgdRIGfv6UdfQ2p3CV8tMUIN6dwTXKZrDhw/TAXj8+DEvAIMzZvjVP+o3PI5Xdy+/921QK1b/pZkRU88hFDIJyvONIeISOHLkCB2AxsZGfiWA6n/WZIcVi2dRiiAphEoZf/cBTXFxMR2AhoaGHbsegAGUlJTQAaivr9/RAEpLS+kA1NXVcZbA9PwiWCi7ua8WpghGU2LOL081ZWVlWwugbWgMdfPAzPaiwpWQGhPFdcrWA5hdtqLGF5BRHnv1lTLOnzFtPQDc/QP1WyL8mLyXuwo9gNra2h3bBPE44NixY3QA7t+/n61QKPq8nbcdDWXIu8ePH78uGMD169dxXIRSWySTyUSRkZGfyOXy7fVwsBez2Wzds7OzpQjCotlsZh9HOH369LpuLSKCpWgT5ObByPHAXYFKIBRlwXcREPwbQjk5JnEDKCFxOfDILB8NC8DLSCas0S1uI3EzSv0Fo9FYg/rDDNpfQm4hx1acHQGxipB4LDIReQ5y/BwLvq/sQh5BBOHFrFAnwTimIHCchYrdAGw2BMYNgN3tmIWINTkBWURuJDE8P59DjqGMI8dlPYYBYDEFyMuR46eNVUS80kmQlAgWO7nIaess1pN4X4A4BHPFHPt2p63DMRCrEzAjgTCFvB/5Q+StIpL+sbD6w2ic4rsJgHDiGAAuiTCydYiREUhcV9zXrOC62p7OMRLBjhhO8Zdki48vEMcAXiA3IMdPcj119AAx+ZAOl8GrPiAlMSW8SnsRiYU7QfFkMnKOAoT/8BqLXiIffKORlkPsAhHqAGAhUMwkCxz1byEx1lEPsG94RRx3ArLrnO7OV1fiIQ5u58gIRF9KwEo+tJ3jHHzMBut7gqMs2H1PdwBs/we+9ztU60SvBAAAAABJRU5ErkJggg==]]></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[PD9waHAKJGxhbmdbJ3Byb21wdF9mcmllbmRseW5hbWUnXSA9ICdGcmllbmRseSBuYW1lIGZvciB0aGlzIG1vZHVsZSc7CiRsYW5nWydpbmZvX2ZyaWVuZGx5bmFtZSddID0gJ1NwZWNpZnkgYSBuYW1lIGZvciBmb3IgdGhpcyBtb2R1bGUgaW4gdGhlIGFkbWluIG5hdmlnYXRpb24uICBJdCBtYXkgYmUgbmVjZXNzYXJ5IHRvIGNsZWFyIHRoZSBDTVNNUyBjYWNoZSBmb3IgdGhpcyB0byB0YWtlIGVmZmVjdCc7CiRsYW5nWydlcnJvcl9jYXRlZ29yeV9wcm9ibGVtX3MnXSA9ICdBIHBhdGggb3IgcGVybWlzc2lvbiBwcm9ibGVtIGV4aXN0cyB3aXRoIHRoaXMgY2F0ZWdvcnknOwokbGFuZ1snZXJyb3JfY2F0ZWdvcnlfcHJvYmxlbSddID0gJ0EgcGF0aCBvciBwZXJtaXNzaW9uIHByb2JsZW0gZXhpc3RzIHdpdGggY2F0ZWdvcnkgJXMnOwokbGFuZ1snZXJyb3JfY2Fubm90cmVuYW1lJ10gPSAnRXJyb3IgcmVuYW1pbmcgZmlsZSc7CiRsYW5nWydmaWVsZF91cGxvYWRfc3VtbWFyeSddID0gJ1N1bW1hcnknOwokbGFuZ1snZmllbGRfY2F0ZWdvcnlfaWQnXSA9ICdDYXRlZ29yeSBJRCc7CiRsYW5nWydmaWVsZF9jYXRlZ29yeV9uYW1lJ10gPSAnQ2F0ZWdvcnkgTmFtZSc7CiRsYW5nWydmaWVsZF9jYXRlZ29yeV9wYXRoJ10gPSAnQ2F0ZWdvcnkgUGF0aCc7CiRsYW5nWydmaWVsZF9hdXRob3InXSA9ICdBdXRob3InOwokbGFuZ1snZmllbGRfZGVzY3JpcHRpb24nXSA9ICdEZXNjcmlwdGlvbic7CiRsYW5nWydub3VzZXJpbmZvJ10gPSAnTm8gdXNlciBpbmZvcm1hdGlvbiBhdmFpbGFibGUnOwokbGFuZ1snZXJyb3JfbWF0Y2hpbmdyZWNvcmRzJ10gPSAnTm8gcmVjb3JkcyBtYXRjaGluZyB5b3VyIGNyaXRlcmEgd2VyZSBmb3VuZCc7CiRsYW5nWydtc2dfcmVwb3J0X3NlbnQnXSA9ICdSZXBvcnQgU2VudCc7CiRsYW5nWydnZW5lcmF0ZWRfYnknXSA9ICdHZW5lcmF0ZWQgQnknOwokbGFuZ1snZ2VuZXJhdGVkX29uJ10gPSAnR2VuZXJhdGVkIE9uJzsKJGxhbmdbJ3N0YXJ0X2RhdGUnXSA9ICdTdGFydCBEYXRlJzsKJGxhbmdbJ2VuZF9kYXRlJ10gPSAnRW5kIERhdGUnOwokbGFuZ1sndXBsb2FkX2NhdGVnb3J5X25hbWUnXSA9ICdDYXRlZ29yeSBOYW1lJzsKJGxhbmdbJ2luZm9fZmllbGRfZmlsZXMnXSA9ICdUaGlzIGlzIGFuIGF1dG9jb21wbGV0ZSBmaWVsZCwgeW91IGNhbiBlbnRlciBwYXJ0aWFsIGZpbGVuYW1lcyBmb3IgdGhlbSB0byBiZSBhdXRvIGNvbXBsZXRlZC4gIFlvdSBjYW4gYWxzbyBlbnRlciBmaWxlbmFtZSBwYXR0ZXJucyBpLmU6ICBmb28qanBnLiAgVGhpcyBsaXN0IHdpbGwgYmUgY2xlYW5lZCBhbmQgY2hlY2sgZm9yIHZhbGlkaXR5IHdoZW4gdGhlIGZvcm0gaXMgc3VibWl0dGVkJzsKJGxhbmdbJ3Byb21wdF9maWxlcyddID0gJ0ZpbGVzJzsKJGxhbmdbJ3JlcG9ydF9kb3dubG9hZHNieXVzZXInXSA9ICdEb3dubG9hZHMgQnkgVXNlcic7CiRsYW5nWydyZXBvcnRfZG93bmxvYWRzYnlmaWxlJ10gPSAnRG93bmxvYWRzIEJ5IEZpbGUnOwokbGFuZ1sncHJvbXB0X291dHB1dF90ZW1wbGF0ZSddID0gJ091dHB1dCBUZW1wbGF0ZSc7CiRsYW5nWyd0aXRsZV9kb3dubG9hZHNieWZpbGVfdHBsJ10gPSAnRG93bmxvYWRzIEJ5IEZpbGUgUmVwb3J0IFRlbXBsYXRlJzsKJGxhbmdbJ3RpdGxlX2Rvd25sb2Fkc2J5dXNlcl90cGwnXSA9ICdEb3dubG9hZHMgQnkgVXNlciBSZXBvcnQgVGVtcGxhdGUnOwokbGFuZ1sncnB0X2Rvd25sb2Fkc2J5ZmlsZV90cGwnXSA9ICdEb3dubG9hZHMgQnkgRmlsZSBSZXBvcnRzJzsKJGxhbmdbJ3JwdF9kb3dubG9hZHNieXVzZXJfdHBsJ10gPSAnRG93bmxvYWRzIEJ5IFVzZXIgUmVwb3J0cyc7CiRsYW5nWyd1c2VycHJvcCddID0gJ1Byb3BlcnR5JzsKJGxhbmdbJ2ZpZWxkX2xhdGVzdF9kb3dubG9hZCddID0gJ0xhdGVzdCBEb3dubG9hZCc7CiRsYW5nWydmaWVsZCddID0gJ0ZpZWxkJzsKJGxhbmdbJ2Nsb3NlJ10gPSAnQ2xvc2UnOwokbGFuZ1snZXJyb3JfaW50ZXJuYWwnXSA9ICdBbiBpbnRlcm5hbCBlcnJvciBvY2N1cnJlZCc7CiRsYW5nWydlcnJvcl9ub3Byb2ZpbGUnXSA9ICdObyByZXBvcnQgcHJvZmlsZSBkZXRlY3RlZCc7CiRsYW5nWydleHBvcnRfaHRtbGVtYWlsJ10gPSAnSFRNTCBSZXBvcnQgKHZpYSBlbWFpbCknOwokbGFuZ1snZXhwb3J0X2h0bWwnXSA9ICdIVE1MIFJlcG9ydCAobmV3IHdpbmRvdyknOwokbGFuZ1snZXhwb3J0X2NzdiddID0gJ0FTQ0lJIChjc3YpIGZpbGUnOwokbGFuZ1sncHJvbXB0X291dHB1dCddID0gJ091dHB1dCBGb3JtYXQnOwokbGFuZ1sncHJvbXB0X3JlcG9ydF90eXBlJ10gPSAnUmVwb3J0IFR5cGUnOwokbGFuZ1sncmVwb3J0X3N1bW1hcnknXSA9ICdTdW1tYXJ5JzsKJGxhbmdbJ3JlcG9ydF9kZXRhaWwnXSA9ICdEZXRhaWxlZCc7CiRsYW5nWydpbmZvX2ZldV91c2VycyddID0gJ1RoaXMgaXMgYW4gYXV0b2NvbXBsZXRlIGZpZWxkLCB5b3UgY2FuIGVudGVyIHBhcnRpYWwgdXNlcm5hbWVzIGZvciB0aGVtIHRvIGJlIGF1dG8gY29tcGxldGVkLiAgWW91IGNhbiBhbHNvIGVudGVyIHVzZXJuYW1lIHBhdHRlcm5zIGkuZTogJnF1b3Q7Z2VvcmcqJnF1b3Q7LiBUaGlzIGxpc3Qgd2lsbCBiZSBjbGVhbmVkIGFuZCBjaGVjayBmb3IgdmFsaWRpdHkgd2hlbiB0aGUgZm9ybSBpcyBzdWJtaXR0ZWQnOwokbGFuZ1sncHJvbXB0X3N0YXJ0X2RhdGUnXSA9ICdTdGFydCBEYXRlJzsKJGxhbmdbJ3Byb21wdF9lbmRfZGF0ZSddID0gJ0VuZCBEYXRlJzsKJGxhbmdbJ3Byb21wdF9hc2NlbmRpbmcnXSA9ICdBc2NlbmRpbmcnOwokbGFuZ1sncHJvbXB0X2Rlc2NlbmRpbmcnXSA9ICdEZXNjZW5kaW5nJzsKJGxhbmdbJ3Byb21wdF9kZWZhdWx0J10gPSAnRGVmYXVsdCc7CiRsYW5nWydwcm9tcHRfc29ydG9yZGVyJ10gPSAnU29ydCBPcmRlcic7CiRsYW5nWydmaWVsZF9kb3dubG9hZF9kYXRlJ10gPSAnRG93bmxvYWQgRGF0ZSc7CiRsYW5nWydmaWVsZF9kb3dubG9hZF91c2VyJ10gPSAnRG93bmxvYWQgVXNlcic7CiRsYW5nWydmaWVsZF91cGxvYWRfaWQnXSA9ICdVcGxvYWQgSWQnOwokbGFuZ1snZmllbGRfdXBsb2FkX2NhdGVnb3J5X2lkJ10gPSAnQ2F0ZWdvcnkgSWQnOwokbGFuZ1snZmllbGRfdXBsb2FkX2NhdGVnb3J5X25hbWUnXSA9ICdDYXRlZ29yeSBOYW1lJzsKJGxhbmdbJ2ZpZWxkX3VwbG9hZF9jYXRlZ29yeV9wYXRoJ10gPSAnQ2F0ZWdvcnkgUGF0aCc7CiRsYW5nWydmaWVsZF91cGxvYWRfbmFtZSddID0gJ0ZpbGVuYW1lJzsKJGxhbmdbJ2ZpZWxkX3VwbG9hZF9hdXRob3InXSA9ICdBdXRob3InOwokbGFuZ1snZmllbGRfdXBsb2FkX2Rlc2NyaXB0aW9uJ10gPSAnRGVzY3JpcHRpb24nOwokbGFuZ1snZmllbGRfdXBsb2FkX2lwJ10gPSAnVXBsb2FkIElQIEFkZHJlc3MnOwokbGFuZ1snZmllbGRfdXBsb2FkX3NpemUnXSA9ICdGaWxlIFNpemUnOwokbGFuZ1snZmllbGRfdXBsb2FkX2RhdGUnXSA9ICdVcGxvYWQgRGF0ZSc7CiRsYW5nWydmaWVsZF9kb3dubG9hZHMnXSA9ICdOdW1iZXIgb2YgRG93bmxvYWRzJzsKJGxhbmdbJ3Byb21wdF9maWVsZGxpc3QnXSA9ICdTZWxlY3QgT3V0cHV0IEZpZWxkcyc7CiRsYW5nWydwcm9tcHRfc29ydGluZyddID0gJ1NvcnQgQnknOwokbGFuZ1snZXJyb3Jfbm91c2Vyc2ZvdW5kJ10gPSAnQWZ0ZXIgdmFsaWRhdGluZyB0aGUgaW5wdXQsIG5vIG1hdGNoaW5nIHVzZXJzIGNvdWxkIGJlIGZvdW5kJzsKJGxhbmdbJ29yJ10gPSAnT3InOwokbGFuZ1sncHJvbXB0X2ZldV91c2VycyddID0gJ0ZFVSBVc2Vycyc7CiRsYW5nWydwcm9tcHRfZmV1X2dyb3VwcyddID0gJ0ZFVSBHcm91cHMnOwokbGFuZ1snb3V0cHV0J10gPSAnT3V0cHV0JzsKJGxhbmdbJ2Vycm9yX25vZmV1J10gPSAnVGhlIEZyb250RW5kVXNlcnMgbW9kdWxlICh2ZXJzaW9uIDEuMjEuMTUgb3IgZ3JlYXRlcikgaXMgcmVxdWlyZWQgZm9yIHRoaXMgb3BlcmF0aW9uJzsKJGxhbmdbJ3RpdGxlX3JlcG9ydF9kb3dubG9hZHNieXVzZXIyJ10gPSAnRG93bmxvYWRzIEJ5IFVzZXIgUmVwb3J0JzsKJGxhbmdbJ3RpdGxlX3JlcG9ydF9kb3dubG9hZHNieXVzZXInXSA9ICdEb3dubG9hZHMgQnkgVXNlcic7CiRsYW5nWyd0aXRsZV9yZXBvcnRfZG93bmxvYWRzYnlmaWxlMiddID0gJ0Rvd25sb2FkcyBCeSBGaWxlIFJlcG9ydCc7CiRsYW5nWyd0aXRsZV9yZXBvcnRfZG93bmxvYWRzYnlmaWxlJ10gPSAnRG93bmxvYWRzIEJ5IEZpbGUnOwokbGFuZ1sncmVwb3J0cyddID0gJ1JlcG9ydHMnOwokbGFuZ1sncHJvbXB0X2Rvd25sb2FkcyddID0gJ0Rvd25sb2Fkcyc7CiRsYW5nWydwcm9tcHRfcGVybWlzc2lvbnMnXSA9ICdQZXJtaXNzaW9ucyc7CiRsYW5nWydwcm9tcHRfZmllbGRzJ10gPSAnRmllbGRzJzsKJGxhbmdbJ3Byb21wdF9zZW5kZmlsZSddID0gJ1NlbmQgRmlsZSc7CiRsYW5nWydpbmZvX2NhdGVnb3J5X2RmbHR1c2VycGVybXMnXSA9ICdTZWxlY3QgdGhlIEZFVSB1c2VyIGdyb3VwcyB0aGF0IGNhbiB2aWV3IG5ld2x5IHVwbG9hZGVkIG9yIHNjYW5uZWQgZmlsZXMuICBUaGlzIHdpbGwgbm90IGVmZmVjdCB0aGUgcGVybWlzc2lvbnMgb2YgZXhpc3RpbmcgZmlsZXMuICAgQWRtaW5pc3RyYXRvcnMgY2FuIGVkaXQgdGhlIHBlcm1pc3Npb3NuIG9mIGVhY2ggZmlsZSB3aGVuIGVkaXRpbmcgdGhlIGluZm9ybWF0aW9uIGFib3V0IHRoZSB1cGxvYWRlZCBmaWxlJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeV9kZmx0dXNlcnBlcm1zJ10gPSAnR3JvdXBzIHRoYXQgY2FuIHZpZXcgbmV3bHkgdXBsb2FkZWQgb3Igc2Nhbm5lZCBmaWxlcyc7CiRsYW5nWydpbmZvX2NhdGVnb3J5X3VzZXJwZXJtcyddID0gJ0lmIHRoaXMgaXMgZW5hYmxlZCwgeW91IGNhbiBjb250cm9sIHdoYXQgRkVVIFVzZXIgR3JvdXBzIGNhbiB2aWV3IGluZGl2aWR1YWwgZmlsZXMgd2l0aGluIHRoZSBjYXRlZ29yeSc7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnlfdXNlcnBlcm1zJ10gPSAnQ2FuIHZpc2liaWxpdHkgYmUgY29udHJvbGxlZCBhdCB0aGUgZmlsZSBsZXZlbCBmb3IgdGhpcyBjYXRlZ29yeSc7CiRsYW5nWydwcm9tcHRfbW9kaWZ5aW5nJ10gPSAnTW9kaWZ5aW5nJzsKJGxhbmdbJ3Byb21wdF92aWV3aW5nJ10gPSAnVmlld2luZyc7CiRsYW5nWydwcm9tcHRfZ2VuZXJhbCddID0gJ0dlbmVyYWwnOwokbGFuZ1snaW5mb19jYXRlZ29yeWxpc3RhYmxlJ10gPSAnQ2FuIGZpbGVzIGluIHRoaXMgY2F0ZWdvcnkgYmUgbGlzdGVkJzsKJGxhbmdbJ2Vycm9yX21pc3Npbmd2YWx1ZSddID0gJ0EgcmVxdWlyZWQgdmFsdWUgaXMgbWlzc2luZyc7CiRsYW5nWydlZGl0ZWQnXSA9ICdFZGl0ZWQgJXMnOwokbGFuZ1snbW92ZWRmaWxlJ10gPSAnTW92ZWQgRmlsZSAlcyB0byAlcyc7CiRsYW5nWydwYWdlbGltaXQnXSA9ICdGaWxlcyBQZXIgUGFnZSc7CiRsYW5nWyd2aWV3J10gPSAnVmlldyc7CiRsYW5nWydlZGl0X3RoaXNfZmlsZSddID0gJ0VkaXQgVGhpcyBGaWxlJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeV9zY2FubmFibGUnXSA9ICdBdXRvbWF0aWNhbGx5IHNjYW4gdGhpcyBjYXRlZ29yeSBmb3IgbmV3IGZpbGVzPyc7CiRsYW5nWydpbmZvX2NhdGVnb3J5X3NjYW5uYWJsZSddID0gJ1doZW4gYWNjZXNzZWQgZnJvbSB0aGUgZnJvbnQgZW5kIHRoaXMgY2F0ZWdvcnkgaXMgYXV0b21hdGljYWxseSBzY2FubmVkIGZvciBuZXcgZmlsZXMnOwokbGFuZ1sncHJvbXB0X3RsX2FjY2VzcyddID0gJ1RpbWUgTGltaXRlZCBBY2Nlc3MnOwokbGFuZ1sncHJvbXB0X2FsbG93X3VwbG9hZF9zZW5kZmlsZSddID0gJ0FsbG93IHNlbmRpbmcgZmlsZXMgaW1tZWRpYXRlbHkgb24gYWRtaW4gdXBsb2FkJzsKJGxhbmdbJ21zZ19hdXRvX2RlbGV0ZV9maWxlJ10gPSAnQXV0b21hdGljYWxseSBkZWxldGVkIGV4cGlyZWQgZmlsZTogJXMnOwokbGFuZ1snbXNnX2F1dG9fZGVsZXRlX2ZpbGVfZmFpbGVkJ10gPSAnUGVybWlzc2lvbnMgcHJvYmxlbSwgYXV0byBkZWxldGUgb2YgJXMgZmFpbGVkJzsKJGxhbmdbJ2luZm9fY2F0ZWdvcnlfZXhwaXJlc19ocnMnXSA9ICdTcGVjaWZ5IGEgbnVtYmVyIG9mIGhvdXJzIGJlZm9yZSBmaWxlcyBpbiB0aGlzIGNhdGVnb3J5IGNhbiBiZSBkZWxldGVkLiAgVXNlIGEgdmFsdWUgb2YgMCB0byBpbmRpY2F0ZSB0aGF0IGZpbGVzIHNob3VsZCBub3QgYmUgZGVsZXRlZCc7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnlfZXhwaXJlc19ocnMnXSA9ICdOdW1iZXIgb2YgaG91cnMgdW50aWwgZmlsZXMgaW4gdGhpcyBjYXRlZ29yeSBhcmUgYXV0b21hdGljYWxseSBkZWxldGVkJzsKJGxhbmdbJ2luZm9fZGZsdF9jYXRlZ29yeV9leHBpcnknXSA9ICdUaGUgZGVmYXVsdCB2YWx1ZSBmb3IgbmV3IGNhdGVnb3JpZXMgdGhhdCBzcGVjaWZpZXMgaG93IGxvbmcgZmlsZXMgaW4gdGhpcyBjYXRlZ29yeSBleGlzdCBiZWZvcmUgdGhleSBhcmUgYXV0b21hdGljYWxseSBkZWxldGVkLiAgVXNlIGEgdmFsdWUgb2YgMCB0byBpbmRpY2F0ZSBubyBkZWxldGlvbic7CiRsYW5nWyd0aXRsZV9jYXRlZ29yeV9leHBpcnknXSA9ICdDYXRlZ29yeSBleHBpcnkgcGVyaW9kIDxlbT4oaHJzKTwvZW0+JzsKJGxhbmdbJ2luZm9fY2F0ZWdvcnlkZWxldGFibGUnXSA9ICdBdXRob3JpemVkIHVzZXJzIHdpbGwgaGF2ZSBwZXJtaXNzaW9uIHRvIGRlbGV0ZSB0aGVzZSBmaWxlcy4gIFRoaXMgbWVhbnMgdGhhdCBhIHVybCB3aWxsIGJlIHByb3ZpZGVkIGluIHRoZSBhcHByb3ByaWF0ZSB0ZW1wbGF0ZXMgdG8gYWxsb3cgZGVsZXRpbmcgb2YgdGhlIGZpbGUuICBBIHdlYnNpdGUgZGV2ZWxvcGVyIGNhbiB1c2UgYXBwcm9wcmlhdGUgc21hcnR5IGxvZ2ljIHRvIHNob3cgYSBsaW5rIHRvIGF1dGhvcml6ZWQgdXNlcnMuJzsKJGxhbmdbJ2NvcHlfZmlsZXMnXSA9ICdDb3B5IEZpbGVzJzsKJGxhbmdbJ2Vycm9yX2ZpbGV0b29sYXJnZSddID0gJ1RoZSBmaWxlIHlvdSBhdHRlbXB0ZWQgdG8gdXBsb2FkZSBpcyBsYXJnZXIgdGhhbiB0aGUgQ01TTVMgbWF4aW11bSB1cGxvYWQgZmlsZSBzaXplJzsKJGxhbmdbJ2FyZXlvdXN1cmVfZGVsZXRlY2F0ZWdvcnknXSA9ICdBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gZGVsZXRlIHRoaXMgY2F0ZWdvcnk/JzsKJGxhbmdbJ2Vycm9yX2RlbGV0ZSddID0gJ0FuIGl0ZW0gY291bmQgbm90IGJlIGRlbGV0ZWQgKCVzKSc7CiRsYW5nWydjb25maXJtX2NhdF9tdWx0aWFjdGlvbiddID0gIkFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBwZXJmb3JtIHRoaXMgYWN0aW9uIG9uIHRoZSBzZWxlY3RlZCBjYXRlZ29yaWVzPyI7CiRsYW5nWydlcnJvcl9ub3RoaW5nX3NlbGVjdGVkJ10gPSAnRXJyb3I6IE5vdGhpbmcgc2VsZWN0ZWQnOwokbGFuZ1snd2l0aF9zZWxlY3RlZCddID0gJ1dpdGggU2VsZWN0ZWQ6JzsKJGxhbmdbJ2Vycm9yX3JlcGxhY2VfbWlzbWF0Y2hlZF9maWxlZXh0J10gPSAnV2hlbiByZXBsYWNpbmcgYSBmaWxlLCB5b3UgbXVzdCB1cGxvYWQgYSBmaWxlIG9mIHRoZSBzYW1lIGV4YWN0IHR5cGUgKGJ5IGZpbGUgZXh0ZW5zaW9uKS4gIFRoZSBmaWxlIHlvdSBzZWxlY3RlZCBkb2VzIG5vdCBtYXRjaCB0aGF0IG9mIHRoZSBvcmlnaW5hbCBmaWxlLic7CiRsYW5nWydyZXBsYWNlJ10gPSAnUmVwbGFjZSc7CiRsYW5nWydpbmZvX3JlcGxhY2VmaWxlJ10gPSAnWW91IG1heSB1cGxvYWQgYSByZXBsYWNlbWVudCBmaWxlLCBpZiB0aGUgZmlsZSBpcyBhbiBpbWFnZSB0eXBlLCBhbmQgeW91IGhhdmUgbm90IHNwZWNpZmllZCBhIHJlcGxhY2VtZW50IHRodW1ibmFpbCwgYSBuZXcgdGh1bWJuYWlsIHdpbGwgYmUgZ2VuZXJhdGVkJzsKJGxhbmdbJ3Byb21wdF9yZXBsYWNlZmlsZSddID0gJ1VwbG9hZCByZXBsYWNlbWVudCBmaWxlJzsKJGxhbmdbJ3RpdGxlX2ZpeHNwYWNlcyddID0gJ0ZpeCBzcGFjZXMgaW4gdGhlIGZpbGVuYW1lJzsKJGxhbmdbJ2NhdGVnb3J5X2NvcGllZCddID0gJ0NhdGVnb3J5IHN1Y2Nlc3NmdWxseSBjb3BpZWQnOwokbGFuZ1snZXJyb3JfZHVwbGljYXRlcGF0aCddID0gJ1BsZWFzZSBzcGVjaWZ5IGEgZGlyZWN0b3J5IG5hbWUgdGhhdCBpcyBkaWZmZXJlbnQgZnJvbSB0aGUgc291cmNlLCBhbmQgaXMgbm90IGFscmVhZHkgaW4gdXNlJzsKJGxhbmdbJ29wZXJhdGlvbl9jYW5jZWxsZWQnXSA9ICdPcGVyYXRpb24gQ2FuY2VsbGVkJzsKJGxhbmdbJ3NvdXJjZSddID0gJ1NvdXJjZSc7CiRsYW5nWydkZXN0aW5hdGlvbiddID0gJ0Rlc3RpbmF0aW9uJzsKJGxhbmdbJ3Byb21wdF9jb3B5X2ZpbGVzJ10gPSAnQ29weSBjYXRlZ29yeSBGaWxlcyc7CiRsYW5nWydpbmZvX2NvcHlfZmlsZXMnXSA9ICdDb3B5IHRoZSBmaWxlcyBmcm9tIHRoZSBzb3VyY2UgY2F0ZWdvcnkgdG8gdGhlIGRlc3RpbmF0aW9uIGNhdGVnb3J5JzsKJGxhbmdbJ2V4dHJhJ10gPSAnRXh0cmEnOwokbGFuZ1snY29weSddID0gJ0NvcHknOwokbGFuZ1snc2VsZWN0b25lJ10gPSAnU2VsZWN0IE9uZSc7CiRsYW5nWydhdXRvd2F0ZXJtYXJrJ10gPSAnQXV0b21hdGljYWxsIHBsYWNlIHdhdGVybWFya3Mgb24gaW1hZ2VzJzsKJGxhbmdbJ2ltYWdlX3NldHRpbmdzJ10gPSAnSW1hZ2UgU2V0dGluZ3MnOwokbGFuZ1sncHJvbXB0X2dldGZpbGVfcmVzdWx0cGFnZSddID0gJ1BhZ2UgdG8gdXNlIGZvciBlcnJvcnMgb3Igb3RoZXIgbWVzc2FnZXMgcmVsYXRlZCB0byBmaWxlIGRvd25sb2FkaW5nJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRfa2V5J10gPSAnVGhlIHVwbG9hZCBrZXkgc3BlY2lmaWVkIGlzIGludmFsaWQgKG1heWJlIGl0IGhhcyByZWFjaGVkIGl0cyBtYXhpbXVtIGRvd25sb2FkIGNhcGFjaXR5IG9yIGhhcyBleHBpcmVkKSc7CiRsYW5nWydkZmx0X3RpbWVsaW1pdGVkX3N1YmplY3QnXSA9ICd7JHNpdGVuYW1lfSAtIFlvdSBoYXZlIGJlZW4gZ3JhbnRlZCBhY2Nlc3MgdG8geyRlbnRyeS0+bmFtZXxzdHJpcF90YWdzfSBmb3IgYSBsaW1pdGVkIHRpbWUnOwokbGFuZ1sncHJvbXB0X3RpbWVsaW1pdGVkX3N1YmplY3QnXSA9ICdTdWJqZWN0IGZvciBlbWFpbCBjcmVhdGVkIHdoZW4gc2VuZGluZyBhIHRpbWUgbGltaXRlZCBVUkwnOwokbGFuZ1sncHJvbXB0X3RpbWVsaW1pdGVkX2F1dG9kZWxldGUnXSA9ICdBdXRvIGRlbGV0ZSBleHBpcmVkIGVudHJpZXMgYWZ0ZXIgTiBob3VycyA8ZW0+KHNwZWNpZnkgMCB0byBkaXNhYmxlIGF1dG9kZWxldGUpPC9lbT46JzsKJGxhbmdbJ3Byb21wdF90aW1lbGltaXRlZF9zZW5kaXQnXSA9ICdTZW5kIHRoaXMgdXJsIHRvIHRoZSBkZXNpZ25hdGVkIGVtYWlsIGFkZHJlc3M/JzsKJGxhbmdbJ3VybF9rZXknXSA9ICdVUkwgS2V5JzsKJGxhbmdbJ2NyZWF0ZWQnXSA9ICdDcmVhdGVkJzsKJGxhbmdbJ2V4cGlyZXMnXSA9ICdFeHBpcmVzJzsKJGxhbmdbJ2FkZGVkaXRfdGltZWxpbWl0ZWRfa2V5J10gPSAnQWRkL0VkaXQgVGltZSBMaW1pdGVkIEtleSc7CiRsYW5nWyd0aW1lX2xpbWl0ZWRfa2V5X2FkZGVkJ10gPSAnVGltZSBMaW1pdGVkIEtleSBBZGRlZCc7CiRsYW5nWydudW1faG91cnMnXSA9ICdOdW1iZXIgb2YgSG91cnMnOwokbGFuZ1snbnVtX2Rvd25sb2FkcyddID0gJ051bWJlciBvZiBEb3dubG9hZHMnOwokbGFuZ1snZW1haWxfYWRkcmVzcyddID0gJ0VtYWlsIEFkZHJlc3MnOwokbGFuZ1snZXJyb3JfbWlzc2luZ19pbnZhbGlkJ10gPSAnQSByZXF1aXJlZCB2YWx1ZSBpcyBtaXNzaW5nIG9yIGludmFsaWQ6ICVzJzsKJGxhbmdbJ2FkZF90aW1lbGltaXRlZF9rZXknXSA9ICdBZGQgVGltZSBMaW1pdGVkIEtleSc7CiRsYW5nWydmaWxlX2luZm8yJ10gPSAnRmlsZSAlcyAoaWQ9JWQpJzsKJGxhbmdbJ2luZm9fdGltZWxpbWl0ZWRfZG93bmxvYWRzJ109ICdTcGVjaWZ5IHRoZSBkZWZhdWx0IG51bWJlciBvZiB0aW1lcyB0aGF0IGEgZmlsZSBpZGVudGlmaWVkIGJ5IGEgcGFydGljdWxhciBrZXkgY2FuIGJlIGRvd25sb2FkZWQnOwokbGFuZ1sncHJvbXB0X3RpbWVsaW1pdGVkX2Rvd25sb2FkcyddID0gJ0RlZmF1bHQgTnVtYmVyIG9mIERvd25sb2Fkcyc7CiRsYW5nWydpbmZvX3RpbWVsaW1pdGVkX2hvdXJzJ10gPSAnU3BlY2lmeSB0aGUgZGVmYXVsdCBudW1iZXIgb2YgaG91cnMgdGhhdCBhIHRpbWUgbGltaXRlZCBrZXkgaXMgdmFsaWQgZm9yLiAgU3BlY2lmeSAwIGZvciB1bmxpbWl0ZWQnOwokbGFuZ1sncHJvbXB0X3RpbWVsaW1pdGVkX2hvdXJzJ10gPSAnTnVtYmVyIG9mIGhvdXJzIGEgVGltZSBMaW1pdGVkIEtleSBpcyB2YWxpZCBmb3InOwokbGFuZ1sndGltZWxpbWl0ZWRfdXJsX3NldHRpbmdzJ10gPSAnVGltZSBMaW1pdGVkIEtleSBTZXR0aW5ncyc7CiRsYW5nWydtYW5hZ2VfdGltZWxpbWl0ZWQnXSA9ICdNYW5hZ2UgVGltZSBMaW1pdGVkIEFjY2Vzcyc7CiRsYW5nWyd1cGxvYWRpbmdfc2V0dGluZ3MnXSA9ICdGaWxlIFVwbG9hZCBTZXR0aW5ncyc7CiRsYW5nWydnZW5lcmFsX3NldHRpbmdzJ10gPSAnR2VuZXJhbCBTZXR0aW5ncyc7CiRsYW5nWyd0aHVtYm5haWxfc2V0dGluZ3MnXSA9ICdUaHVtYm5haWwgR2VuZXJhdGlvbic7CiRsYW5nWyd0aXRsZV9yZWRpcmVjdF9vbl9zZW5kZmlsZSddID0gJ1BhZ2UgdG8gcmVkaXJlY3QgdG8gYWZ0ZXIgc2VuZGluZyBhIGZpbGUnOwokbGFuZ1snbGJsX2JhY2snXSA9ICdCYWNrJzsKJGxhbmdbJ2xibF90ZW1wbGF0ZXMnXSA9ICdNb2RpZnkgVGVtcGxhdGVzJzsKJGxhbmdbJ3Byb21wdF9wdWJsaWNfZmllbGQnXSA9ICdGaWVsZCBpcyBwdWJsaWMgPGVtPihjYW4gYmUgdmlld2VkIGJ5IHNpdGUgdmlzaXRvcnMpPC9lbT4nOwokbGFuZ1sndXBsb2FkX2VkaXRlZCddID0gJ0ZpbGUgRGV0YWlscyBFZGl0ZWQgb24gJXMnOwokbGFuZ1snaW5mb190aHVtYm5haWwnXSA9ICdVc2UgdGhpcyBmaWVsZCB0byB1cGxvYWQgYSB0aHVtYm5haWwgdG8gYXNzb2NpYXRlIHdpdGggdGhpcyBmaWxlLiAgVGhpcyBjYW4gYmUgaGFuZHkgaWYgdXBsb2FkaW5nIGZpbGVzIG90aGVyIHRoYW4gaW1hZ2VzIHRoYXQgdGh1bWJuYWlscyBjYW5ub3QgYmUgZ2VuZXJhdGVkIGZyb20gYXV0b21hdGljYWxseSc7CiRsYW5nWyd1cGxvYWRfZmlsZSddID0gJ1VwbG9hZCBhIG5ldyBmaWxlJzsKJGxhbmdbJ21zZ19maWVsZF9kZWxldGVkJ10gPSAnRmllbGQgZGVsZXRlZCc7CiRsYW5nWydhc2tfZGVsZXRlX2ZpZWxkJ10gPSAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSB0aGlzIGZpZWxkIGRlZmluaXRpb24gYW5kIGFsbCBhc3NvY2lhdGVkIHZhbHVlcz8nOwokbGFuZ1sneWVzJ10gPSAnWWVzJzsKJGxhbmdbJ25vJ10gPSAnTm8nOwokbGFuZ1sndHlwZSddID0gJ1R5cGUnOwokbGFuZ1snZmllbGR0eXBlX211bHRpc2VsZWN0J10gPSAnTXVsdGlzZWxlY3QgTGlzdCc7CiRsYW5nWydmaWVsZHR5cGVfZHJvcGRvd24nXSA9ICdEcm9wZG93biBMaXN0JzsKJGxhbmdbJ2ZpZWxkdHlwZV9jaGVja2JveCddID0gJ0NoZWNrYm94JzsKJGxhbmdbJ2ZpZWxkdHlwZV90ZXh0YXJlYSddID0gJ1RleHQgQXJlYSc7CiRsYW5nWydmaWVsZHR5cGVfdGV4dGlucHV0J10gPSAnVGV4dCBJbnB1dCc7CiRsYW5nWydwcm9tcHRfdXNlX3d5c2l3eWcnXSA9ICdVc2UgdGhlIHd5c2l3eWcgd2hlbiBlZGl0aW5nIHRoZSB2YWx1ZSBmb3IgdGhpcyBmaWVsZCc7CiRsYW5nWydwcm9tcHRfZGVmYXVsdF9jb250ZW50J10gPSAnRGVmYXVsdCBjb250ZW50IGZvciB0ZXh0IGFyZWEnOwokbGFuZ1sncHJvbXB0X2Ryb3Bkb3duX29wdGlvbnMnXSA9ICdPcHRpb25zIChvbmUgZW50cnkgcGVyIGxpbmUpJzsKJGxhbmdbJ3Byb21wdF9maWVsZF9tYXhsZW5ndGgnXSA9ICdGaWVsZCBNYXhpbXVtIExlbmd0aCc7CiRsYW5nWydwcm9tcHRfZmllbGRfbGVuZ3RoJ10gPSAnRmllbGQgTGVuZ3RoJzsKJGxhbmdbJ3Byb21wdF9maWVsZF90eXBlJ10gPSAnRmllbGQgVHlwZSc7CiRsYW5nWydwcm9tcHRfZmllbGRfbmFtZSddID0gJ0ZpZWxkIE5hbWUnOwokbGFuZ1sndGl0bGVfYWRkX2ZpZWxkJ10gPSAnQWRkIG9yIEVkaXQgYSBGaWVsZCBEZWZpbml0aW9uJzsKJGxhbmdbJ2ZpZWxkX2RlZmluaXRpb25zJ10gPSAnRmllbGQgRGVmaW5pdGlvbnMnOwokbGFuZ1sncHJvbXB0X2FkZF9maWVsZCddID0gJ0FkZCBhIEZpZWxkIERlZmluaXRpb24nOwokbGFuZ1sncGFyYW1fYWN0aW9uJ10gPSAnU3BlY2lmaWVzIHRoZSBiZWhhdmlvdXIgb2YgdGhlIG1vZHVsZSB0YWcuICBQb3NzaWJsZSB2YWx1ZXMgYXJlOiBkZWZhdWx0IC0gKHRoZSBkZWZhZmF1bHQgYmVoYXZpb3IpLCBkZXRhaWwgLSB0byBkaXNwbGF5IGEgZGV0YWlsIHZpZXcgb2YgYSBzaW5nbGUgZmlsZSBiYXNlZCBvbiB0aGUgdXBsb2FkX2lkLCBhbmQgeW91c2VuZGl0IC0gdG8gZGlzcGxheSBhIGZvcm0gdG8gYWxsb3cgdXBsb2FkaW5nIGEgZmlsZSwgYW5kIHNlbmRpbmcgaXQgdG8gbnVtZXJvdXMgYWRkcmVzc2VzIGluIG9uZSBzdGVwJzsKJGxhbmdbJ3BhcmFtX3NlbmRmaWxlcGFnZSddID0gJ1NwZWNpZnkgdGhlIHBhZ2UgaWQgb3IgYWxpYXMgb2YgYSBwYWdlIHRoYXQgc2hvdWxkIGJlIHVzZWQgZm9yIHRoZSBzZW5kIGEgZmlsZSBmb3JtJzsKJGxhbmdbJ2ZpbGVfdXBsb2FkZWQnXSA9ICdGaWxlIFN1Y2Nlc3NmdWxseSBVcGxvYWRlZCc7CiRsYW5nWyd0byddID0gJ1RvJzsKJGxhbmdbJ3RpdGxlX3lvdXNlbmRpdGZvcm1fdGVtcGxhdGUnXSA9ICdBZGQgb3IgRWRpdCBhICZxdW90O1lvdSBTZW5kIEl0JnF1b3Q7IEZvcm0gVGVtcGxhdGUnOwokbGFuZ1sneW91c2VuZGl0Zm9ybV90ZW1wbGF0ZSddID0gJ1lvdVNlbmRJdCBGb3JtIFRlbXBsYXRlcyc7CiRsYW5nWyd0aXRsZV95b3VzZW5kaXRmb3JtX3N5c2RlZmF1bHQnXSA9ICdTeXN0ZW0gZGVmYXVsdCAmcXVvdDt5b3Ugc2VuZCBpdCZxdW90OyB0ZW1wbGF0ZSc7CiRsYW5nWydtc2dfZmlsZV9zZW50J10gPSAnQSBtZXNzYWdlIGhhcyBiZWVuIHNlbnQgdG8gdGhlIHNlbGVjdGVkIGFkZHJlc3NlcyB0aGF0IGNvbnRhaW5zIGluZm9ybWF0aW9uIGFib3V0IHRoZSBmaWxlIGFuZCBob3cgdG8gcmV0cmlldmUgaXQuJzsKJGxhbmdbJ2Vycm9yX25vYWRkcmVzc2VzJ10gPSAnWW91IG11c3Qgc3VwcGx5IGF0IGxlYXN0IG9uZSBkZXN0aW5hdGlvbiBhZGRyZXNzJzsKJGxhbmdbJ2Vycm9yX25vc3ViamVjdCddID0gJ1lvdSBtdXN0IHN1cHBseSBhIHN1YmplY3QnOwokbGFuZ1snc3ViamVjdCddID0gJ1N1YmplY3QnOwokbGFuZ1sndGl0bGVfc2VuZGZpbGVwYWdlJ10gPSAnUGFnZSB0byB1c2UgZm9yIHRpbWUgbGltaXRlZCBvciAmcXVvdDtZb3VTZW5kSXQmcXVvdDsgVVJMUyc7CiRsYW5nWydmaWxlX2luZm8nXSA9ICdGaWxlIEluZm8nOwokbGFuZ1snc2VuZCddID0gJ1NlbmQnOwokbGFuZ1snbm90ZXMnXSA9ICdOb3Rlcyc7CiRsYW5nWydhZGRyZXNzZWVzJ10gPSAnU2VuZCBpbmZvcm1hdGlvbiBhYm91dCB0aGlzIGZpbGUgdG8nOwokbGFuZ1sncHJvbXB0X3NlbmRmaWxlX2VtYWlsX3RlbXBsYXRlJ10gPSAnJnF1b3Q7U2VuZCBhIEZpbGUmcXVvdDsgRW1haWwgVGVtcGxhdGUnOwokbGFuZ1sndGl0bGVfc2VuZGZpbGVmb3JtX3RlbXBsYXRlJ10gPSAnQWRkIG9yIEVkaXQgYSAmcXVvdDtTZW5kIGEgRmlsZSZxdW90OyBGb3JtIFRlbXBsYXRlJzsKJGxhbmdbJ3NlbmRmaWxlZm9ybV90ZW1wbGF0ZSddID0gJyZxdW90O1NlbmQgYSBGaWxlJnF1b3Q7IEZvcm0gVGVtcGxhdGVzJzsKJGxhbmdbJ3Byb21wdF9ub3RpZnlfZW1haWxfdGVtcGxhdGUnXSA9ICdGaWxlIHVwbG9hZCBub3RpZmljYXRpb24gZW1haWwgdGVtcGxhdGUnOwokbGFuZ1sndGl0bGVfc2VuZGZpbGVmb3JtX3N5c2RlZmF1bHQnXSA9ICdTeXN0ZW0gZGVmYXVsdCAmcXVvdDtTZW5kIGEgRmlsZSZxdW90OyBmb3JtIHRlbXBsYXRlJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeWRlbGV0YWJsZSddID0gJ0ZpbGVzIGluIHRoaXMgY2F0ZWdvcnkgY2FuIGJlIGRlbGV0ZWQnOwokbGFuZ1sndGl0bGVfYWxsb3dfZGVsZXRlJ10gPSAnQWxsb3cgZGVsZXRpb24gb2YgZmlsZXMgZnJvbSB0aGUgZnJvbnRlbmQnOwokbGFuZ1snZGVmYXVsdF90ZW1wbGF0ZXMnXSA9ICdEZWZhdWx0IFRlbXBsYXRlcyc7CiRsYW5nWydmaXJzdHBhZ2UnXSA9ICdGaXJzdCBQYWdlJzsKJGxhbmdbJ3ByZXZwYWdlJ10gPSAnUHJldmlvdXMgUGFnZSc7CiRsYW5nWyduZXh0cGFnZSddID0gJ05leHQgUGFnZSc7CiRsYW5nWydsYXN0cGFnZSddID0gJ0xhc3QgUGFnZSc7CiRsYW5nWydmaXJzdHBhZ2VfYXJyb3cnXSA9ICcmbHQ7Jmx0Oyc7CiRsYW5nWydwcmV2cGFnZV9hcnJvdyddID0gJyZsdDsnOwokbGFuZ1snbmV4dHBhZ2VfYXJyb3cnXSA9ICcmZ3Q7JzsKJGxhbmdbJ2xhc3RwYWdlX2Fycm93J10gPSAnJmd0OyZndDsnOwokbGFuZ1sncGFnZSddID0gJ1BhZ2UnOwokbGFuZ1snb2YnXSA9ICdvZic7CiRsYW5nWydwcm9tcHRfZ3JvdXBsaXN0J10gPSAnQXV0aG9yaXplZCBGRVUgR3JvdXBzJzsKJGxhbmdbJ2luZm9fZ3JvdXBsaXN0J10gPSAnU2VsZWN0IHRoZSBGRVUgZ3JvdXBzIHRoYXQgYXJlIGFsbG93ZWQgYWNjZXNzIHRvIGZpbGVzIGluIHRoaXMgY2F0ZWdvcnkuICBEZXNlbGVjdCBhbGwgZW50cmllcyB0byBhbGxvdyBhbGwgYWNjZXNzJzsKJGxhbmdbJ3RpdGxlX3NjYW4nXSA9ICdTY2FuIGZvciBuZXcgZmlsZXMgaW4gdGhpcyBjYXRlZ29yeSc7CiRsYW5nWyd0aXRsZV9jcmVhdGVfdGh1bWJuYWlscyddID0gJ0NyZWF0ZSBtaXNzaW5nIHRodW1ibmFpbHMgZm9yIGZpbGVzIGluIHRoaXMgY2F0ZWdvcnkuJzsKJGxhbmdbJ2NyZWF0ZV90aHVtYm5haWxzJ10gPSAnQ3JlYXRlIFRodW1ibmFpbHMnOwokbGFuZ1sndGl0bGVfY3JlYXRlX3RodW1ibmFpbCddID0gJyhyZSlDcmVhdGUgdGhlIHRodW1ibmFpbCBmb3IgdGhpcyBmaWxlJzsKJGxhbmdbJ2NyZWF0ZV90aHVtYm5haWwnXSA9ICdDcmVhdGUgVGh1bWJuYWlsJzsKJGxhbmdbJ2Vycm9yX3BhdGhlcnJvciddID0gJ0NvdWxkIG5vdCBvcGVuIGRpcmVjdG9yeSAocGVybWlzc2lvbnMgcHJvYmxlbT8pJzsKJGxhbmdbJ3RpdGxlX2Rvd25sb2FkX2NodW5rc2l6ZSddID0gJ1NpemUgb2YgZWFjaCBkb3dubG9hZCBjaHVuayc7CiRsYW5nWydpbmZvX2Rvd25sb2FkX2NodW5rc2l6ZSddID0gJ0FkanVzdGluZyB0aGlzIHBhcmFtZXRlciB3aWxsIGVmZmVjdCBkb3dubG9hZCBzcGVlZCwgYW5kIG1heSBoZWxwIGluIGxvd2VyIG1lbW9yeSBlbnZpcm9ubWVudHMnOwokbGFuZ1snd2FybmluZ19zYWZlX21vZGUnXSA9ICdQSFBcJ3Mgc2FmZSBtb2RlIGlzIGVuYWJsZWQuICBUaGlzIG1heSBjYXVzZSBwcm9ibGVtcyB3aXRoIHVwbG9hZGluZyBmaWxlcyAocGVybWlzc2lvbnMpLCBhbmQgbWF5IGFsc28gaW50ZXJmZXJlIHdpdGggdGhpcyBtb2R1bGVcJ3MgYWJpbGl0eSB0byBzZW5kIHNvbWUgZmlsZXMgZHVlIHRvIGFuIGluYWJpbGl0eSB0byBvdmVycmlkZSBzb21lIGluaSBzZXR0aW5ncy4gIFlvdSBhcmUgYWR2aXNlZCB0byBjb250YWN0IHlvdXIgcHJvdmlkZXIgdG8gc2VlIGFib3V0IGRpc2FibGluZyBzYWZlIG1vZGUuJzsKJGxhbmdbJ3BhcmFtX2RldGFpbHBhZ2UnXSA9ICdVc2VmdWwgZm9yIGRpc3BsYXlpbmcgYSBkZXRhaWwgcmVwb3J0IHVzaW5nIGEgZGlmZmVyZW50IHBhZ2UgdGVtcGxhdGUsIHRoaXMgcGFyYW1ldGVyIHRha2VzIHRoZSBwYWdlIGlkIG9yIHBhZ2UgYWxpYXMgb2YgYSBwYWdlIHRoYXQgc2hvdWxkIGJlIHVzZWQgdG8gZGlzcGxheSB0aGUgZGV0YWlsIHJlcG9ydCc7CiRsYW5nWydwYXJhbV9wcmVmaXgnXSA9ICdBIGJvb2xlYW4gdGhhdCBpbmRpY2F0ZXMgd2V0aGVyIGZpbGUgbmFtZXMgc2hvdWxkIGJlIHByZWZpeGVkJzsKJGxhbmdbJ3BhcmFtX3ByZWZpeF9mZXUnXSA9ICdBIGJvb2xlYW4gcGFyYW1ldGVyIHRoYXQgaW5kaWNhdGVzIHRoYXQgdGhlIHByZWZpeCBzaG91bGQgYmUgdGFrZW4gZnJvbSB0aGUgY3VycmVudCBhdXRob3IsIGlmIG5vdCBzcGVjaWZpZWQsIHRoZSBwcmVmaXggaXMgdGhlIGN1cnJlbnQgdGltZSAoaW4gZGVjaGV4IGZvcm1hdCknOwokbGFuZ1sncGFyYW1fbm9jYXB0Y2hhJ10gPSAnRGlzYWJsZSBjYXB0Y2hhIHN1cHBvcnQgKG9uIGJ5IGRlZmF1bHQpIGluIHRoZSB1cGxvYWQgZm9ybSc7CiRsYW5nWyd0aXRsZV91cGxvYWRmb3JtX3RlbXBsYXRlJ10gPSAnRWRpdCBVcGxvYWQgRm9ybSBUZW1wbGF0ZSc7CiRsYW5nWydjYXB0Y2hhX3RpdGxlJ10gPSAnRW50ZXIgdGhlIHRleHQgZGlzcGxheWVkIGluIHRoaXMgaW1hZ2UnOwokbGFuZ1snZXJyb3JfY2FwdGNoYW1pc21hdGNoJ10gPSAnVGV4dCBlbnRlcmVkIGRpZCBub3QgbWF0Y2ggdGhlIGltYWdlIGRpc3BsYXllZCc7CiRsYW5nWyd0aXRsZV9hdXRvdGh1bWJuYWlsX2V4dGVuc2lvbnMnXSA9ICdDcmVhdGUgdGh1bWJuYWlscyBmb3IgZmlsZXMgd2l0aCB0aGVzZSBleHRlbnNpb25zJzsKJGxhbmdbJ3RpdGxlX2F1dG90aHVtYm5haWxfc2l6ZSddID0gJ01heGltdW0gc2l6ZSAocGl4ZWxzKSBvZiB0aGUgZ2VuZXJhdGVkIHRodW1ibmFpbCc7CiRsYW5nWydwcm9tcHRfdXBsb2FkX2ljb24nXSA9ICdVcGxvYWQgQW4gSWNvbic7CiRsYW5nWydpbmZvX3N5c2RlZmF1bHQnXSA9ICdUaGlzIHRleHQgaXMgdXNlZCB3aGVuIGNyZWF0aW5nIGEgbmV3IHRlbXBsYXRlIG9mIHRoaXMgdHlwZSc7CiRsYW5nWyd0aXRsZV9kZXRhaWxycHRfc3lzZGVmYXVsdCddID0gJ1N5c3RlbSBEZWZhdWx0IERldGFpbCBSZXBvcnQgVGVtcGxhdGUnOwokbGFuZ1sndGl0bGVfc3VtbWFyeXJwdF9zeXNkZWZhdWx0J10gPSAnU3lzdGVtIERlZmF1bHQgU3VtbWFyeSBSZXBvcnQgVGVtcGxhdGUnOwokbGFuZ1sndGl0bGVfdXBsb2FkZm9ybV9zeXNkZWZhdWx0J10gPSAnU3lzdGVtIERlZmF1bHQgVXBsb2FkIEZvcm0gVGVtcGxhdGUnOwokbGFuZ1sndGVtcGxhdGUnXSA9ICdUZW1wbGF0ZSc7CiRsYW5nWydyZXNldHRvZGVmYXVsdCddID0gJ1Jlc2V0IHRvIERlZmF1bHRzJzsKJGxhbmdbJ3RpdGxlX3N1bW1hcnlycHRfdGVtcGxhdGUnXSA9ICdTdW1tYXJ5IFJlcG9ydCBUZW1wbGF0ZSc7CiRsYW5nWyd0aXRsZV9kZXRhaWxycHRfdGVtcGxhdGUnXSA9ICdEZXRhaWwgUmVwb3J0IFRlbXBsYXRlJzsKJGxhbmdbJ3Byb21wdF9uYW1lJ10gPSAnTmFtZSc7CiRsYW5nWydwcm9tcHRfZGVmYXVsdCddID0gJ0RlZmF1bHQnOwokbGFuZ1snbGVnZW5kX3VwbG9hZGZvcm0nXSA9ICdVcGxvYWQgQSBGaWxlJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdwYXJhbSddID0gJ0EgcmVxdWlyZWQgcGFyYW1ldGVyIGlzIG1pc3NpbmcnOwokbGFuZ1snZXJyb3JfbWlzc2luZ25hbWUnXSA9ICdBIG5hbWUgZm9yIHRoZSBmaWxlIHR5cGUgbXVzdCBiZSBzcGVjaWZpZWQnOwokbGFuZ1snZXJyb3JfbWlzc2luZ2V4dGVuc2lvbnMnXSA9ICdBdCBsZWFzdCBvbmUgZmlsZSBleHRlbnNpb24gbXVzdCBiZSBzcGVjaWZpZWQnOwokbGFuZ1snZXJyb3JfbWlzc2luZ2ljb24nXSA9ICdBbiBpY29uIG11c3QgYmUgc3BlY2lmaWVkJzsKJGxhbmdbJ2Vycm9yX25vc3VjaHJvdyddID0gJ1RoZSBzcGVjaWZpZWQgcm93IGNvdWxkIG5vdCBiZSBmb3VuZCc7CiRsYW5nWyduYW1lX3Vua25vd24nXSA9ICdVbmtub3duJzsKJGxhbmdbJ2Rlc2NyaXB0aW9uX3Vua25vd24nXSA9ICdGaWxlIHR5cGUgZGVzY3JpcHRpb24gZm9yIHVubWF0Y2hlZCBmaWxlcyc7CiRsYW5nWydpbWFnZSddID0gJ0ltYWdlJzsKJGxhbmdbJ2ljb24nXSA9ICdJY29uJzsKJGxhbmdbJ2V4dGVuc2lvbnMnXSA9ICdGaWxlIEV4dGVuc2lvbnMnOwokbGFuZ1snYWRkZmlsZXR5cGUnXSA9ICdBZGQgTmV3IEZpbGUgVHlwZSc7CiRsYW5nWydmaWxlX3R5cGVzJ10gPSAnRmlsZSBUeXBlcyc7CiRsYW5nWydlcnJvcl9ub2NhdGVnb3J5aWQnXSA9ICdObyBDYXRlZ29yeSBpZCB3YXMgc3VwcGxpZWQnOwokbGFuZ1snZXJyb3Jfbm9jYXRlZ29yeSddID0gJ05vIENhdGVnb3J5IGlkIHdhcyBzdXBwbGllZCc7CiRsYW5nWydlcnJvcl90ZW1wbGF0ZW5hbWVleGlzdHMnXSA9ICdBIHRlbXBsYXRlIGJ5IHRoYXQgbmFtZSBhbHJlYWR5IGV4aXN0cyc7CiRsYW5nWydwcm9tcHRfdGVtcGxhdGVuYW1lJ10gPSAnVGVtcGxhdGUgTmFtZSc7CiRsYW5nWydwcm9tcHRfdGVtcGxhdGUnXSA9ICdUZW1wbGF0ZSc7CiRsYW5nWydwcm9tcHRfbmV3dGVtcGxhdGUnXSA9ICdDcmVhdGUgYSBuZXcgdGVtcGxhdGUnOwokbGFuZ1snaGVscF9PbkRvd25sb2FkJ10gPSAnCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBmaW5pc2hlcyBkb3dubG9hZGluZyBhIGZpbGU8L3A+CjxoND5QYXJhbWV0ZXJzPC9oND4KPHVsPgo8bGk+PGVtPmlkPC9lbT4gLSBVcGxvYWQgSUQ8L2xpPgo8bGk+PGVtPm5hbWU8L2VtPiAtIEZpbGUgbmFtZTwvbGk+CjxsaT48ZW0+aXA8L2VtPiAtIFRoZSBJUCBBZGRyZXNzIG9mIHRoZSBkb3dubG9hZGVyPC9saT4KPC91bD4KJzsKJGxhbmdbJ2hlbHBfT25EZWxldGVDYXRlZ29yeSddID0gJwo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIGNhdGVnb3J5IGlzIERlbGV0ZWQ8L3A+CjxoND5QYXJhbWV0ZXJzPC9oND4KPHVsPgo8bGk+PGVtPm5hbWU8L2VtPiAtIENhdGVnb3J5IG5hbWU8L2xpPgo8bGk+PGVtPnBhdGg8L2VtPiAtIENhdGVnb3J5IHBhdGg8L2xpPgo8L3VsPgonOwokbGFuZ1snaGVscF9PbkNyZWF0ZUNhdGVnb3J5J10gPSAnCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgY2F0ZWdvcnkgaXMgQ3JlYXRlZDwvcD4KPGg0PlBhcmFtZXRlcnM8L2g0Pgo8dWw+CjxsaT48ZW0+bmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIGNhdGVnb3J5PC9saT4KPGxpPjxlbT5kZXNjcmlwdGlvbjwvZW0+IC0gVGhlIGNhdGVnb3J5IGRlc2NyaXB0aW9uPC9saT4KPGxpPjxlbT5wYXRoPC9lbT4gLSBUaGUgY2F0ZWdvcnkgcGF0aDwvbGk+CjxsaT48ZW0+bGlzdGFibGU8L2VtPiAtIEEgZmxhZyBpbmRpY2F0aW5nIGlmIHRoZSBjYXRlZ29yeSBpcyBsaXN0YWJsZTwvbGk+CjxsaT48ZW0+ZGVsZXRhYmxlPC9lbT4gLSBBIGZsYWcgaW5kaWNhdGluZyBpZiBmaWxlcyBpbiB0aGUgY2F0ZWdvcnkgYXJlIGRlbGV0YWJsZTwvbGk+CjwvdWw+Cic7CiRsYW5nWydoZWxwX09uUmVtb3ZlJ10gPSAnCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgZmlsZSBpcyByZW1vdmVkIHZpYSB0aGUgYWRtaW4gb3IgZnJvbnRlbmQgaW50ZXJmYWNlczwvcD4KPGg0PlBhcmFtZXRlcnM8L2g0Pgo8dWw+CjxsaT48ZW0+bmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIHJlbW92ZWQgZmlsZTwvbGk+CjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSBpZCBvZiB0aGUgcmVtb3ZlZCBmaWxlPC9saT4KPGxpPjxlbT5jYXRlZ29yeV9pZDwvZW0+IC0gVGhlIGlkIG9mIHRoZSBjYXRlZ29yeTwvbGk+CjwvdWw+Cic7CiRsYW5nWydoZWxwX09uVXBsb2FkJ10gPSAnCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgbmV3IGZpbGUgaXMgdXBsb2FkZWQgdmlhIHRoZSBhZG1pbiBvciBmcm9udGVuZCBpbnRlcmZhY2VzPC9wPgo8aDQ+UGFyYW1ldGVyczwvaDQ+Cjx1bD4KPGxpPjxlbT5jYXRlZ29yeTwvZW0+IC0gVGhlIGNhdGVnb3J5IG5hbWU8L2xpPgo8bGk+PGVtPmNhdGVnb3J5cGF0aDwvZW0+IC0gVGhlIGNhdGVnb3J5IHBhdGg8L2xpPgo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSBuYW1lIG9mIHRoZSB1cGxvYWRlZCBmaWxlPC9saT4KPGxpPjxlbT5zaXplPC9lbT4gLSBUaGUgc2l6ZSBvZiB0aGUgdXBsb2FkZWQgZmlsZTwvbGk+CjxsaT48ZW0+c3VtbWFyeTwvZW0+IC0gVGhlIHNob3J0IGRlc2NyaXB0aW9uIGZvciB0aGUgdXBsb2FkZWQgZmlsZSAobWF5IGJlIGVtcHR5KTwvZW0+PC9saT4KPGxpPjxlbT5kZXNjcmlwdGlvbjwvZW0+IC0gVGhlIGxvbmcgZGVzY3JpcHRpb24gZm9yIHRoZSB1cGxvYWRlZCBmaWxlIChtYXkgYmUgZW1wdHkpPC9lbT48L2xpPgo8bGk+PGVtPmF1dGhvcjwvZW0+IC0gVGhlIGF1dGhvciBvZiB0aGUgdXBsb2FkZWQgZmlsZSAoaWYgYXZhaWxhYmxlKTwvZW0+PC9saT4KPGxpPjxlbT5pcF9hZGRyZXNzPC9lbT4gLSBUaGUgaW50ZXJuZXQgYWRkcmVzcyBvZiB0aGUgY2xpZW50IHRoYXQgdXBsb2FkZWQgdGhlIGZpbGU8L2xpPgo8L3VsPgonOwokbGFuZ1snaW5mb19ldmVudF9vbmRlbGV0ZWNhdGVnb3J5J10gPSAnRXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBjYXRlZ29yeSBpcyBkZWxldGVkJzsKJGxhbmdbJ2luZm9fZXZlbnRfb25jcmVhdGVjYXRlZ29yeSddID0gJ0V2ZW50IGdlbmVyYXRlZCB3aGVuIGEgY2F0ZWdvcnkgaXMgY3JlYXRlZCc7CiRsYW5nWydpbmZvX2V2ZW50X29uZG93bmxvYWQnXSA9ICdFdmVudCBnZW5lcmF0ZWQgd2hlbiBhIGZpbGUgaXMgZG93bmxvYWRlZCc7CiRsYW5nWydpbmZvX2V2ZW50X29udXBsb2FkJ10gPSAnRXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBuZXcgZmlsZSBpcyB1cGxvYWRlZCc7CiRsYW5nWydpbmZvX2V2ZW50X29ucmVtb3ZlJ10gPSAnRXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBmaWxlIGlzIHJlbW92ZWQnOwokbGFuZ1sndGl0bGVfdXNlcnRhZ19vbnVwbG9hZCddID0gJ1VzZXIgZGVmaW5lZCB0YWcgdG8gY2FsbCBhZnRlciB1cGxvYWQgaXMgY29tcGxldGUnOwokbGFuZ1snbm9uZSddID0gJ05vbmUnOwokbGFuZ1snbWF0Y2hlc2ZvdW5kJ10gPSAnTWF0Y2hlcyBmb3VuZCc7CiRsYW5nWydmaWx0ZXInXSA9ICdGaWx0ZXInOwokbGFuZ1sndGl0bGVfcmVkaXJlY3RvbnVwbG9hZCddID0gJ1JlZGlyZWN0IHRvIHBhZ2UgaWQvYWxpYXMgb24gdXNlciB1cGxvYWQnOwokbGFuZ1snZGV0YWlscyddID0gJ0RldGFpbHMnOwokbGFuZ1snY29uZmlybV9wcmVmZXJlbmNlcyddID0gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBhZGp1c3QgdGhlIHByZWZlcmVuY2VzPyc7CiRsYW5nWydlcnJvcl9ub2ZpbGVzdXBsb2FkZWQnXSA9ICdObyBmaWxlcyB3ZXJlIHVwbG9hZGVkLic7CiRsYW5nWydwcm9tcHRfcmVwbGFjZSddID0gJ0FsbG93IE92ZXJ3cml0ZSc7CiRsYW5nWydpbmZvX3JlcGxhY2UnXSA9ICdSZXBsYWNlIGFueSBmaWxlIHdpdGggdGhlIHNhbWUgbmFtZSAoZG9lcyBub3QgY2hhbmdlIGlkKSc7CiRsYW5nWydwYXJhbV9ub19pbml0aWFsJ10gPSAnRG8gbm90IGRpc3BsYXkgYW55IGluaXRpYWwgcmVzdWx0cyB3aGVuIHRoZSBmaWx0ZXIgaXMgb24nOwokbGFuZ1sncGFyYW1fa2V5J10gPSAnUHJvdmlkZSBhbiBhZGRpdGlvbmFsIGtleSB0byB0aGUgbW9kdWxlIGZvciBmdXJ0aGVyIG9yZ2FuaXppbmcgdXBsb2Fkcy4gIFRoaXMga2V5IGNvdWxkIGJlIGFuIGVuY29kZWQgc3RyaW5nIGxpa2U6IFwnZmV1c2Vyczp1aWRcJywgZXRjLiAgVGhpcyBwYXJhbWV0ZXIgaXMgdXN1YWxseSBvbmx5IG5lZWRlZCB3aGVuIGVtYmVkZGluZyB0aGUgdXBsb2FkcyBtb2R1bGUgaW50byBhbm90aGVyIG1vZHVsZSc7CiRsYW5nWydwYXJhbV9ub2F1dGhvciddID0gJ0hpZGUgdGhlIGF1dGhvciBmaWVsZCBmcm9tIHRoZSB1cGxvYWQgZm9ybS4gIFRoaXMgcGFyYW1ldGVyIGlzIG9ubHkgdmFsaWQgd2hlbiBtb2RlPVwndXBsb2FkXCcuICBJZiBUaGUgRnJvbnRlbmRVc2VycyBtb2R1bGUgaXMgcHJlc2VudCwgYW5kIGEgdXNlciBpcyBjdXJyZW50bHkgbG9nZ2VkIGluLCBhIGhpZGRlbiBmaWVsZCB3aWxsIGhvbGQgdGhlIGN1cnJlbnRseSBsb2dnZWQgaW4gdXNlcm5hbWUnOwokbGFuZ1sncGFyYW1fdXBsb2FkX2lkJ10gPSAnCnVwbG9hZF9pZD0iaWQiIC0gc3BlY2lmeSBhIHNpbmdsZSBmaWxlIGZvciB0aGUgdXJsL2xpbmssZGV0YWlsZWQgb3Igc2luZ2xlIG1vZGVzIChhYm92ZSknOwokbGFuZ1sncGFyYW1fZGV0YWlsdGVtcGxhdGUnXSA9ICdVc2UgYSB0ZW1wbGF0ZSB3aXRoIHRoaXMgbmFtZSBmb3IgdGhlIGRldGFpbCByZXBvcnQuJzsKJGxhbmdbJ3BhcmFtX3RlbXBsYXRlJ10gPSAnVXNlIGEgdGVtcGxhdGUgd2l0aCB0aGlzIG5hbWUgZm9yIHRoaXMgcmVwb3J0IG9yIGZvcm0uICBUaGUgbW9kZSBpcyB1c2VkIHRvIGRldGVybWluZSB3aGF0IHR5cGUgb2YgdGVtcGxhdGUgaXMgcmVxdWlyZXJkLCBhbmQgdGhlbiBhIG5hbWUgbWF0Y2ggaXMgcGVyZm9ybWVkIHdpdGhpbiB0aGF0IHR5cGUuJzsKJGxhbmdbJ3BhcmFtX2ZpbHRlciddID0gJ0FwcGxpY2FibGUgb25seSB0byB0aGUgc3VtbWFyeSB2aWV3LCB0aGlzIHBhcmFtZXRlciB3aWxsIGVuYWJsZSBkaXNwbGF5IG9mIHRoZSBmaWx0ZXJpbmcgZm9ybS4gIElmIHRoaXMgcGFyYW1ldGVyIGlzIHNldCB0byBhbnkgdmFsdWUgPGVtPihhbmQgdGhlIGZpZWxkcyBzdGlsbCBhcHBlYXIgaW4gdGhlIHN1bW1hcnkgdGVtcGxhdGUpPC9lbT4nOwokbGFuZ1sncGFyYW1fbm9faW50aXRpYWwnXSA9ICdPbmx5IHVzZWZ1bCB3aGVuIHRoZSBmaWx0ZXIgcGFyYW1ldGVyIGlzIHN1cHBsaWVkLCBvciBvbiBieSBkZWZhdWx0LCB0aGlzIHBhcmFtZXRlciBpbmRpY2F0ZXMgd2V0aGVyIGluaXRpYWwgcmVzdWx0cyBzaG91bGQgYmUgcmV0dXJuZWQnOwokbGFuZ1sncGFyYW1fZmlsZXR5cGVzJ10gPSAnRGlzcGxheSBvbmx5IGZpbGVzIHdob3NlIHR5cGUgbWF0Y2hlcyB0aGlzIGNvbW1hIHNlcGFyYXRlZCBsaXN0JzsKJGxhbmdbJ3BhcmFtX3NvcnRvcmRlciddID0gJwogIDxwPlNvcnQgT3JkZXJzCiAgPHVsPgogIDxsaT48ZW0+ZGF0ZV9hc2M8L2VtPiAtIFNvcnQgYnkgYXNjZW5kaW5nIGRhdGU8L2xpPgogIDxsaT48ZW0+ZGF0ZV9kZXNjPC9lbT4gLSBTb3J0IGJ5IGRlc2NlbmRpbmcgZGF0ZTwvbGk+CiAgPGxpPjxlbT5uYW1lX2FzYzwvZW0+IC0gU29ydCBieSBhc2NlbmRpbmcgbmFtZTwvbGk+CiAgPGxpPjxlbT5uYW1lX2Rlc2M8L2VtPiAtIFNvcnQgYnkgZGVzY2VuZGluZyBuYW1lPC9saT4KICA8bGk+PGVtPnNpemVfYXNjPC9lbT4gLSBTb3J0IGJ5IGFzY2VuZGluZyBzaXplPC9saT4KICA8bGk+PGVtPnNpemVfZGVzYzwvZW0+IC0gU29ydCBieSBkZXNjZW5kaW5nIHNpemU8L2xpPgogIDxsaT48ZW0+YXV0aG9yX2FzYzwvZW0+IC0gU29ydCBieSBhc2NlbmRpbmcgYXV0aG9yPC9saT4KICA8bGk+PGVtPmF1dGhvcl9kZXNjPC9lbT4gLSBTb3J0IGJ5IGRlc2NlbmRpbmcgYXV0aG9yPC9saT4KICA8bGk+PGVtPmlwX2FzYzwvZW0+IC0gU29ydCBieSBhc2NlbmRpbmcgaXAgYWRkcmVzczwvbGk+CiAgPGxpPjxlbT5pcF9kZXNjPC9lbT4gLSBTb3J0IGJ5IGRlc2NlbmRpbmcgaXAgYWRkcmVzczwvbGk+CiAgPGxpPjxlbT5kZXNjX2FzYzwvZW0+IC0gU29ydCBieSBhc2NlbmRpbmcgZGVzY3JpcHRpb248L2xpPgogIDxsaT48ZW0+ZGVzY19kZXNjPC9lbT4gLSBTb3J0IGJ5IGRlc2NlbmRpbmcgZGVzY3JpcHRpb248L2xpPgogIDxsaT48ZW0+ZG93bmxvYWRzX2FzYzwvZW0+IC0gU29ydCBieSBkb3dubG9hZCBjb3VudCBpbiBhc2NlbmRpbmcgb3JkZXIuPC9saT4KICA8bGk+PGVtPmRvd25sb2Fkc19kZXNjPC9lbT4gLSBTb3J0IGJ5IGRvd25sb2FkIGNvdW50IGluIGRlc2NlbmRpbmcgb3JkZXIuPC9saT4KICA8bGk+PGVtPnJhbmRvbTwvZW0+IC0gUmFuZG9tIHNvcnQgb3JkZXI8L2xpPgogIDwvdWw+CiAgPC9wPic7CiRsYW5nWydwYXJhbV9saXN0aW5ndGVtcGxhdGUnXT0nVGVtcGxhdGUgdG8gdXNlIGZvciBjYXRlZ29yeSBsaXN0aW5ncyBhZnRlciBjbGlja3Rocm91Z2ggZnJvbSBDYXRlZ29yeSBTdW1tYXJ5IHBhZ2UnOwokbGFuZ1sncGFyYW1fbGlzdGluZ3NvcnRvcmRlciddPSdTb3J0IG9yZGVyIChhbGEgcGFyYW1fc29ydG9yZGVyKSB0byB1c2UgZm9yIGNhdGVnb3J5IGxpc3RpbmdzIGFmdGVyIGNsaWNrdGhyb3VnaCBmcm9tIENhdGVnb3J5IFN1bW1hcnkgcGFnZSc7CiRsYW5nWydwYXJhbV9maWxlZXh0ZW5zaW9ucyddID0gJyAKZmlsZV9leHRlbnNpb25zPSJleHQxLGV4dDIsZXh0MyIKPHA+dmFsaWQgb25seSB3aGVuIG1vZGU9dXBsb2FkLCB0aGlzIHBhcmFtZXRlciBsaW1pdHMgdGhlIHR5cGVzIG9mIGZpbGVzIHRoYXQgY2FuIGJlIHVwbG9hZGVkLiAgSXQgb3ZlcnJpZGVzIGFueSBzZXR0aW5ncyBpbiB0aGUgbW9kdWxlIHByZWZlcmVuY2VzLjwvcD4nOwokbGFuZ1sncGFyYW1fY291bnQnXSA9ICdjb3VudD0iTiIgPHA+QSBwYXJhbWV0ZXIgdG8gbGltaXQgdGhlIHJlc3VsdHMgdG8gTiBlbnRyaWVzIHBlciBwYWdlLjwvcD4nOwokbGFuZ1sncGFyYW1fY2F0ZWdvcnknXSA9ICcKY2F0ZWdvcnk9Im5hbWUiCjxwPjxiPk5vdGU6PC9iPiBDYXRlZ29yeSBjYW4gYmUgImFsbCIsIHdoaWNoIHdpbGwgbGlzdCBhbGwgb2YgdGhlIHVwbG9hZHMgZnJvbSBhbGwgPGVtPmxpc3RhYmxlPC9lbT4gY2F0ZWdvcmllczwvcD4nOwokbGFuZ1sncGFyYW1fbW9kZSddID0gJwogIDx1bD4KICA8bGk+PGVtPmRldGFpbGVkPC9lbT4gLSBEaXNwbGF5IGEgZGV0YWlsZWQgcmVwb3J0IGZvciBhIHNpbmdsZSB1cGxvYWQuPC9saT4KICA8bGk+PGVtPnNpbmdsZTwvZW0+IC0gQWxpYXMgZm9yIHRoZSBkZXRhaWxlZCBtb2RlLjwvbGk+CiAgPGxpPjxlbT51cGxvYWQ8L2VtPiAtIERpc3BsYXkgYSBmb3JtIHRvIGFsbG93IGEgZnJvbnRlbmQgdXNlciB0byB1cGxvYWQgYSBmaWxlPC9saT4KICA8bGk+PGVtPnVybCA8aT5vcjwvaT4gbGluazwvZW0+IC0gRGlzcGxheSBhIGxpbmsgdG8gYSBmaWxlPC9saT4KICA8bGk+PGVtPnN1bW1hcnk8L2VtPiAtIERpc3BsYXkgYSBzdW1tYXJpemVkIGxpc3Qgb2YgYWxsIGZpbGVzIGluIHRoZSBzcGVjaWZpZWQgY2F0ZWdvcnk8L2xpPgogIDwvdWw+JzsKJGxhbmdbJ3BhcmFtX3NlbGVjdGZvcm0nXSA9ICdXaGVuIHVzaW5nIHRoZSBcJ3NlbGVjdFwnIG1vZGUsIHRoaXMgcGFyYW1ldGVyIGlzIHRoZSBmb3JtaWQgb2YgdGhlIHBhcmVudCBmb3JtLiAgVXNlZCB0byBoYW5kbGUgcGFyYW1ldGVyIHBhc3NpbmcnOwokbGFuZ1sncGFyYW1fc2VsZWN0bmFtZSddID0gJ3doZW4gdXNpbmcgdGhlIFwnc2VsZWN0XCcgbW9kZSwgdGhpcyBwYXJhbWV0ZXIgc3BlY2lmaWVzIHRoZSBuYW1lIG9mIHRoZSBmaWVsZCc7CiRsYW5nWydwYXJhbV9zZWxlY3R2YWx1ZSddID0gJ1doZW4gdXNpbmcgdGhlIFwnc2VsZWN0XCcgbW9kZSwgdGhpcyBwYXJhbWV0ZXIgc3BlY2lmaWVzIHRoZSBkZWZhdWx0IGZpZWxkIHZhbHVlJzsKJGxhbmdbJ3BhcmFtX3NlbGVjdG5vbmUnXSA9ICdXaGVuIHVzaW5nIHRoZSBcJ3NlbGVjdFwnIG1vZGUsIHRoaXMgcGFyYW1ldGVyIHNwZWNpZmllcyB3ZXRoZXIgXCdub25lXCcgaXMgYSB2YWxpZCBjaG9pY2UuJzsKJGxhbmdbJ3JldHVybnRvbW9kdWxlJ10gPSAnUmV0dXJuIHRvIG1vZHVsZSBwYW5lbCc7CiRsYW5nWydlcnJvcl9ub2NhdGVnb3JpZXMnXSA9ICdUaGVyZSBhcmUgbm8gZGVmaW5lZCBjYXRlZ29yaWVzJzsKJGxhbmdbJ3RpdGxlX2VuZm9yY2VleHRlbnNpb25zJ10gPSAnUmVxdWlyZSBleHRlbnNpb25zIG9uIGFsbCB1cGxvYWRlZCBmaWxlcyc7CiRsYW5nWydyZXN0b3JlZGVmYXVsdHNjb25maXJtJ10gPSAnVGhpcyBvcGVyYXRpb24gd2lsbCByZXN0b3JlIHRoZSB0ZW1wbGF0ZSB0byBzeXN0ZW0gZGVmYXVsdHMuICBBbnkgY2hhbmdlcyB5b3UgaGF2ZSBtYWRlIHdpbGwgYmUgbG9zdC4gIEFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBwcm9jZWVkPyc7CiRsYW5nWydpbmZvX3RodW1ibmFpbCddID0gJ0FuIG9wdGlvbmFsIHRodW1ibmFpbCBmaWxlJzsKJGxhbmdbJ3RodW1ibmFpbCddID0gJ1RodW1ibmFpbCc7CiRsYW5nWyduZXd0aHVtYm5haWwnXSA9ICdVcGxvYWQgYSBuZXcgdGh1bWJuYWlsJzsKJGxhbmdbJ2luZm9fc3VtbWFyeSddID0gJ0EgYnJpZWYgZGVzY3JpcHRpb24gb2YgdGhlIGZpbGUgKGlmIGVtcHR5LCB0aGUgZmlsZSBuYW1lIGlzIHVzZWQgd2l0aG91dCB0aGUgZXh0ZW5zaW9uKSc7CiRsYW5nWydpbmZvX2NhdGVnb3J5bmFtZSddID0gJ0EgYnJpZWYgbmFtZSBmb3IgeW91ciBjYXRlZ29yeSAoaHVtYW4gcmVhZGFibGUpJzsKJGxhbmdbJ2luZm9fY2F0ZWdvcnlkZXNjJ10gPSAnQSBkZXNjcmlwdGlvbiBmb3IgeW91ciBjYXRlZ29yeSc7CiRsYW5nWydpbmZvX2NhdGVnb3J5cGF0aCddID0gJ1RoZSBkaXJlY3RvcnkgbmFtZSBpbnNpZGUgdGhlIHVwbG9hZHMgZGlyZWN0b3J5IHRoYXQgd2lsbCBiZSB1c2VkIHRvIHN0b3JlIGZpbGVzIGluIHRoaXMgY2F0ZWdvcnkuICBJZiB0aGUgZGlyZWN0b3J5IG9mIHRoaXMgbmFtZSBkb2VzIG5vdCBhbHJlYWR5IGV4aXN0LCBpdCBtYXkgYmUgY3JlYXRlZCc7CiRsYW5nWydpbmZvX2Rlc3RuYW1lJ10gPSAnVXNlIHRoZSBcJ1VwbG9hZCBBc1wnIGZpZWxkIHRvIGNoYW5nZSB0aGUgbmFtZSBvZiB0aGUgZmlsZSBvbiB1cGxvYWQuICBMZWF2ZSBibGFuayB0byBwcmVzZXJ2ZSB0aGUgZmlsZW5hbWUgYXMtaXMuJzsKJGxhbmdbJ2Vycm9yX2NhbnRjcmVhdGVkaXJlY3RvcnknXSA9ICdDb3VsZCBub3QgY3JlYXRlIGRpcmVjdG9yeSc7CiRsYW5nWydlcnJvcl9ub21haWxlcm1vZHVsZSddID0gJ1RoZSBDTVNNYWlsZXIgbW9kdWxlIGNvdWxkIG5vdCBiZSBpbnN0YW50aWF0ZWQnOwokbGFuZ1sndXBsb2FkX25vdGlmaWNhdGlvbiddID0gJ0EgbmV3IGZpbGUgaGFzIGJlZW4gdXBsb2FkZWQnOwokbGFuZ1sndGl0bGVfZW1haWxfb25fdXBsb2FkJ10gPSAnU2VuZCB1cGxvYWQgbm90aWZpY2F0aW9uIHRvJzsKJGxhbmdbJ2VtYWlsX3RlbXBsYXRlJ10gPSAnRW1haWwgVGVtcGxhdGVzJzsKJGxhbmdbJ3RpdGxlX2R1bW15X2luZGV4X2h0bWwnXSA9ICdDcmVhdGUgZHVtbXkgaW5kZXguaHRtbCBmaWxlcyBpbiBlYWNoIGRpcmVjdG9yeT88YnIvPjxlbT5BbnkgZXhpc3RpbmcgaW5kZXguaHRtbCBmaWxlcyB3aWxsIHJlbWFpbjwvZW0+JzsKJGxhbmdbJ2Fib3V0J10gPSAnQWJvdXQnOwokbGFuZ1snZXJyb3JfcGVybWlzc2lvbmRlbmllZCddID0gJ0FjY2VzcyBEZW5pZWQuIFBsZWFzZSBjaGVjayB5b3VyIHBlcm1pc3Npb25zLic7CiRsYW5nWydlcnJvcl9jb3VsZG5vdHdyaXRlJ10gPSAnQ291bGQgbm90IHdyaXRlJzsKJGxhbmdbJ2FkZGNhdGVnb3J5J10gPSAnQWRkIENhdGVnb3J5JzsKJGxhbmdbJ2FsbCddID0gJ0FsbCc7CiRsYW5nWydhcmV5b3VzdXJlJ10gPSAnQXJlIFlvdSBTdXJlPyc7CiRsYW5nWydhdXRob3InXSA9ICdBdXRob3InOwokbGFuZ1snY2FuY2VsJ10gPSAnQ2FuY2VsJzsKJGxhbmdbJ2Nhbm5vdG1vZGlmeXBhdGgnXSA9ICcoVGhlIHBhdGggY2Fubm90IGJlIG1vZGlmaWVkKSc7CiRsYW5nWydjYXRlZ29yaWVzJ10gPSAnQ2F0ZWdvcmllcyc7CiRsYW5nWydjYXRlZ29yeSddID0gJ0NhdGVnb3J5JzsKJGxhbmdbJ21lc3NhZ2VfY2F0ZWdvcnlhZGRlZCddID0gJ0NhdGVnb3J5IHN1Y2Nlc3NmdWxseSBhZGRlZCc7CiRsYW5nWydkYXRlJ10gPSAnRGF0ZSc7CiRsYW5nWydkYXRldXBsb2FkZWQnXSA9ICdEYXRlIFVwbG9hZGVkJzsKJGxhbmdbJ2RlZmF1bHQnXSA9ICdEZWZhdWx0cyc7CiRsYW5nWydkZWxldGUnXSA9ICdEZWxldGUnOwokbGFuZ1snZGVzY3JpcHRpb24nXSA9ICdEZXNjcmlwdGlvbic7CiRsYW5nWydkZXN0bmFtZSddID0gJ1VwbG9hZCBBcyc7CiRsYW5nWydkZXRhaWxfdGVtcGxhdGUnXSA9ICdEZXRhaWwgVGVtcGxhdGVzJzsKJGxhbmdbJ2Rvd25sb2FkZWQnXSA9ICdGaWxlICVzIHdhcyBkb3dubG9hZGVkLic7CiRsYW5nWydkb3dubG9hZHMnXSA9ICdEb3dubG9hZHMnOwokbGFuZ1snZWRpdCddID0gJ0VkaXQnOwokbGFuZ1snZWRpdGNhdGVnb3J5J10gPSAnRWRpdCBDYXRlZ29yeSc7CiRsYW5nWydlZGl0dXBsb2FkJ10gPSAnRWRpdCBVcGxvYWQnOwokbGFuZ1snZXJyb3InXSA9ICdFcnJvciEnOwokbGFuZ1snZXJyb3JfcGF0aGludXNlMiddID0gJ0EgY2F0ZWdvcnkgdXNpbmcgdGhlIHBhdGggKCVzKSBhbHJlYWR5IGV4aXN0cyc7CiRsYW5nWydlcnJvcl9wYXRoaW51c2UnXSA9ICdBIGNhdGVnb3J5IHVzaW5nIHRoYXQgcGF0aCBhbHJlYWR5IGV4aXN0cyc7CiRsYW5nWydlcnJvcl9jYXRlZ29yeWV4aXN0czInXSA9ICdFcnJvcjogQ2F0ZWdvcnkgbmFtZWQgJXMgYWxyZWFkeSBleGlzdHMnOwokbGFuZ1snZXJyb3JfY2F0ZWdvcnlleGlzdHMnXSA9ICdFcnJvcjogQ2F0ZWdvcnkgYWxyZWFkeSBleGlzdHMnOwokbGFuZ1snZXJyb3JfY2F0ZWdvcnlub3RlbXB0eSddID0gJ0Vycm9yISBDYW5ub3QgZGVsZXRlIGEgY2F0ZWdvcnkgdGhhdCBpcyBub3QgZW1wdHknOwokbGFuZ1snZXJyb3JfY2F0ZWdvcnlub3Rmb3VuZCddID0gJ0Vycm9yOiBDYXRlZ29yeSBub3QgZm91bmQhJzsKJGxhbmdbJ2Vycm9yX2RiZXJyb3InXSA9ICdFcnJvcjogRGF0YWJhc2UgZXJyb3IhJzsKJGxhbmdbJ2Vycm9yX2VtcHR5Y2F0ZWdvcnknXSA9ICdFcnJvcjogRW1wdHkgQ2F0ZWdvcnkhJzsKJGxhbmdbJ2Vycm9yX2VtcHR5cGF0aCddID0gJ0Vycm9yOiBFbXB0eSBQYXRoISc7CiRsYW5nWydlcnJvcl9maWxlZXhpc3RzJ10gPSAnRXJyb3IhIEZpbGUgJXMgYWxyZWFkeSBleGlzdHMuJzsKJGxhbmdbJ2Vycm9yX2ZpbGVub3Rmb3VuZCddID0gJ0Vycm9yISBGaWxlICVzIHdhcyBub3QgZm91bmQuJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ0Vycm9yOiBJbnN1ZmZpY2llbnQgcGFyYW1ldGVycyBzdXBwbGllZCB0byBtb2R1bGUhPGJyLz5NaXNzaW5nIHBhcmFtIGlzOiAlcyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkYXV0aG9yJ10gPSAnRXJyb3I6IEludmFsaWQgKG9yIGVtcHR5KSBhdXRob3IuJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRjYXRlZ29yeSddID0gJ0Vycm9yOiBJbnZhbGlkIChvciBlbXB0eSkgY2F0ZWdvcnkuJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRkZXNjcmlwdGlvbiddID0gJ0Vycm9yOiBJbnZhbGlkIChvciBlbXB0eSkgZGVzY3JpcHRpb24uJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRmaWxlJ10gPSAnRXJyb3I6IEludmFsaWQgKG9yIGVtcHR5KSBmaWxlbmFtZS4nOwokbGFuZ1snZXJyb3JfaW52YWxpZHVwbG9hZGZpbGVuYW1lJ10gPSAnRXJyb3I6IEZpbGVzIHdpdGggdGhhdCBuYW1lIChwcm9iYWJseSBleHRlbnNpb24pIGFyZSBub3QgYWxsb3dlZCAoJXMpLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXBsb2FkaWQnXSA9ICdFcnJvcjogSW52YWxpZCB1cGxvYWQgaWQnOwokbGFuZ1snZXJyb3Jfbm9maWxlcyddID0gJ0Vycm9yOiBObyBNYXRjaGluZyBGaWxlcyEnOwokbGFuZ1snZmlsZXMnXSA9ICdGaWxlcyc7CiRsYW5nWydmaXhtZSddID0gJ0ZpeCBTcGFjZXMnOwokbGFuZ1snZnJpZW5kbHluYW1lJ10gPSAnRnJvbnQgRW5kIEZpbGUgTWFuYWdlbWVudCAoVXBsb2FkcyknOwokbGFuZ1snaWQnXSA9ICdJZCc7CiRsYW5nWydpbnN0YWxsZWQnXSA9ICdNb2R1bGUgdmVyc2lvbiAlcyBpbnN0YWxsZWQuJzsKJGxhbmdbJ2lwX2FkZHJlc3MnXSA9ICdJUCBBZGRyZXNzJzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnQSBtb2R1bGUgdGhhdCBhbGxvd3MgdXNlcnMgdG8gdXBsb2FkIGZpbGVzLCBhbmQgYWxsb3dzIHlvdSB0byBtYW5hZ2UgdGhlbS4nOwokbGFuZ1snbmFtZSddID0gJ05hbWUnOwokbGFuZ1sncmVuYW1lbWVzc2FnZSddID0gJ0NoYW5nZSB0aGUgbmFtZSBoZXJlIHRvIGV4ZWN1dGUgYSByZW5hbWUnOwokbGFuZ1sncGF0aCddID0gJ1BhdGgnOwokbGFuZ1sncGF0aG1lc3NhZ2UnXSA9ICdDaGFuZ2UgdGhlIGNhdGVnb3J5IGhlcmUgdG8gbW92ZSB0aGUgZmlsZSB0byBhbm90aGVyIGRpcmVjdG9yeSc7CiRsYW5nWydwYXRoaW51cGxvYWRzJ10gPSAnKFJlbGF0aXZlIHRvIHRoZSB1cGxvYWRzIGRpcmVjdG9yeSknOwokbGFuZ1sncG9zdGluc3RhbGwnXSA9ICc8cD5UaGUgdXBsb2FkcyBtb2R1bGUgaGFzIGJlZW4gc3VjY2Vzc2Z1bGx5IGluc3RhbGxlZC4gQmUgc3VyZSB0byBzZXQgIk1hbmFnZSBVcGxvYWRzIiBwZXJtaXNzaW9ucyB0byB1c2UgdGhpcyBtb2R1bGUhPC9wPgo8cD48c3Ryb25nPldhcm5pbmc8L3N0cm9uZz4gLSBUaGUgcHJvcGVyIGJlaGF2aW91ciBvZiB0aGlzIG1vZHVsZSBkZXBlbmRzIG9uIG51bWVyb3VzIHBocCBjb25maWd1cmF0aW9uIHZhcmlhYmxlcy4gIFRoZXNlIGluY2x1ZGUgPGVtPihidXQgYXJlIG5vdCBsaW1pdGVkIHRvKTwvZW0+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/FvmUgbmVuJmlhY3V0ZTsgcHImYWFjdXRlO3pkbiZhYWN1dGU7JzsKJGxhbmdbJ2Vycm9yX2NhdGVnb3J5bm90Zm91bmQnXSA9ICdDaHliYTogS2F0ZWdvcmllIG5lbmFsZXplbmEhJzsKJGxhbmdbJ2Vycm9yX2RiZXJyb3InXSA9ICdDaHliYTogQ2h5YmEgZGF0YWImYWFjdXRlO3plISc7CiRsYW5nWydlcnJvcl9lbXB0eWNhdGVnb3J5J10gPSAnQ2h5YmE6IFByJmFhY3V0ZTt6ZG4mYWFjdXRlOyBrYXRlZ29yaWUhJzsKJGxhbmdbJ2Vycm9yX2VtcHR5cGF0aCddID0gJ0NoeWJhOiBQciZhYWN1dGU7emRuJmFhY3V0ZTsgY2VzdGEhJzsKJGxhbmdbJ2Vycm9yX2ZpbGVleGlzdHMnXSA9ICdDaHliYSEgU291Ym9yICVzIGppxb4gZXhpc3R1amUuJzsKJGxhbmdbJ2Vycm9yX2ZpbGVub3Rmb3VuZCddID0gJ0NoeWJhISBTb3Vib3IgJXMgbmVieWwgbmFsZXplbi4nOwokbGFuZ1snZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJ10gPSAnQ2h5YmE6IE5lZG9zdGF0ZWsgcGFyYW1ldHLFryBwcm8gYsSbaCBtb2R1bHUhJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRhdXRob3InXSA9ICdDaHliYTogJlNjYXJvbjtwYXRuJnlhY3V0ZTsgKG5lYm8gcHImYWFjdXRlO3pkbiZ5YWN1dGU7KSBhdXRvci4nOwokbGFuZ1snZXJyb3JfaW52YWxpZGNhdGVnb3J5J10gPSAnQ2h5YmE6ICZTY2Fyb247cGF0biZhYWN1dGU7IChuZWJvIHByJmFhY3V0ZTt6ZG4mYWFjdXRlOykga2F0ZWdvcmllLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkZGVzY3JpcHRpb24nXSA9ICdDaHliYTogJlNjYXJvbjtwYXRuJnlhY3V0ZTsgKG5lYm8gcHImYWFjdXRlO3pkbiZ5YWN1dGU7KSBwb3Bpcy4nOwokbGFuZ1snZXJyb3JfaW52YWxpZGZpbGUnXSA9ICdDaHliYTogJlNjYXJvbjtwYXRuJmVhY3V0ZTsgKG5lYm8gcHImYWFjdXRlO3pkbiZlYWN1dGU7KSBqbSZlYWN1dGU7bm8gc291Ym9ydS4nOwokbGFuZ1snZXJyb3JfaW52YWxpZHVwbG9hZGZpbGVuYW1lJ10gPSAnQ2h5YmE6IFNvdWJvcnkgcyB0JmlhY3V0ZTttdG8gam0mZWFjdXRlO25lbSAocHJhdmTEm3BvZG9ibsSbIHDFmSZpYWN1dGU7cG9ub3UpIG5lanNvdSBwb3ZvbGVueSAoJXMpLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXBsb2FkaWQnXSA9ICdDaHliYTogJlNjYXJvbjtwYXRuJmVhY3V0ZTsgdXBsb2FkIGlkJzsKJGxhbmdbJ2Vycm9yX25vZmlsZXMnXSA9ICdDaHliYTogTm8gTWF0Y2hpbmcgRmlsZXMhJzsKJGxhbmdbJ2ZpbGVzJ10gPSAnU291Ym9yeSc7CiRsYW5nWydmaXhtZSddID0gJ09wcmF2aXQgbWV6ZXJ5JzsKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ1VwbG9hZCBNb2R1bGUnOwokbGFuZ1snaWQnXSA9ICdJZCc7CiRsYW5nWydpbnN0YWxsZWQnXSA9ICdNb2R1bCB2ZXJ6ZSAlcyBuYWluc3RhbG92JmFhY3V0ZTtuLic7CiRsYW5nWydpcF9hZGRyZXNzJ10gPSAnSVAgQWRkcmVzYSc7CiRsYW5nWydtb2RkZXNjcmlwdGlvbiddID0gJ01vZHVsLCBrdGVyJnlhY3V0ZTsgZG92b2x1amUgdcW+aXZhdGVsxa9tIG5haHImYWFjdXRlO3ZhdCBzb3Vib3J5LiBBIHYmYWFjdXRlO20gamUgZG92b2x1amUgc3ByYXZvdmF0Lic7CiRsYW5nWyduYW1lJ10gPSAnSm0mZWFjdXRlO25vJzsKJGxhbmdbJ3JlbmFtZW1lc3NhZ2UnXSA9ICdabcSbxYh0ZSBqbSZlYWN1dGU7bm8gayBwcm92ZWRlbiZpYWN1dGU7IHDFmWVqbWVub3YmYWFjdXRlO24maWFjdXRlOyc7CiRsYW5nWydwYXRoJ10gPSAnQ2VzdGEnOwokbGFuZ1sncGF0aG1lc3NhZ2UnXSA9ICdabcSbxYh0ZSB6ZGUgam0mZWFjdXRlO25vIGthdGVnb3JpZSBwcm8gcMWZZXN1biBzb3Vib3J1IGRvIGppbiZlYWN1dGU7aG8gYWRyZXMmYWFjdXRlO8WZZSc7CiRsYW5nWydwYXRoaW51cGxvYWRzJ10gPSAnKFJlbGF0aXZuJmlhY3V0ZTsgayB1cGxvYWQgYWRyZXMmYWFjdXRlO8WZaSknOwokbGFuZ1sncG9zdGluc3RhbGwnXSA9ICc8cD5UaGUgdXBsb2FkcyBtb2R1bGUgaGFzIGJlZW4gc3VjY2Vzc2Z1bGx5IGluc3RhbGxlZC4gQmUgc3VyZSB0byBzZXQgJnF1b3Q7TWFuYWdlIFVwbG9hZHMmcXVvdDsgcGVybWlzc2lvbnMgdG8gdXNlIHRoaXMgbW9kdWxlITwvcD4NCjxwPjxzdHJvbmc+V2FybmluZzwvc3Ryb25nPiAtIFRoZSBwcm9wZXIgYmVoYXZpb3VyIG9mIHRoaXMgbW9kdWxlIGRlcGVuZHMgb24gbnVtZXJvdXMgcGhwIGNvbmZpZ3VyYXRpb24gdmFyaWFibGVzLiAgVGhlc2UgaW5jbHVkZSA8ZW0+KGJ1dCBhcmUgbm90IGxpbWl0ZWQgdG8pPC9lbT4sIHBocCYjMDM5O3MgbWVtb3J5X2xpbWl0LCBzYWZlX21vZGUsIGZpbGVfdXBsb2FkcywgdXBsb2Fkc19tYXhfZmlsZXNpemUsIGFuZCBtYXhfZXhlY3V0aW9uX3RpbWUuICBUaGVzZSB2YXJpYWJsZXMgbWF5IG5lZWQgYWRqdXN0bWVudCBmb3IgdGhpcyBtb2R1bGUgdG8gd29yayBwcm9wZXJseSBvbiB5b3VyIHNpdGUuICBJdCBpcyBhZHZpc2VkIHRoYXQgeW91IHdvcmsgd2l0aCB5b3VyIHN5c3RlbSBhZG1pbmlzdHJhdG9yIG9yIGhvc3QgcHJvdmlkZXIgdG8gdHVuZSB0aGVzZSBzZXR0aW5ncyBmb3IgeW91ciByZXF1aXJlbWVudHMuPC9wPic7CiRsYW5nWydwb3N0dW5pbnN0YWxsJ10gPSAnVXBsb2FkcyBtb2R1bGUgYnlsICZ1YWN1dGU7c3DEmyZzY2Fyb247bsSbIG9kdHJhbsSbbi4gxb0mYWFjdXRlO2RuJmVhY3V0ZTsgc291Ym9yeSBuZWJ5bHkgc21heiZhYWN1dGU7bnknOwokbGFuZ1sncHJlZmVyZW5jZXMnXSA9ICdQxZllZHZvbGJ5JzsKJGxhbmdbJ3ByZWZzdXBkYXRlZCddID0gJ1DFmWVkdm9sYnkgbW9kdWx1IGJ5bHkgYWt0dWFsaXpvdiZhYWN1dGU7bnknOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5ZGVzYyddID0gJ1BvcGlzJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeWxpc3RhYmxlJ10gPSAnU291Ym9yeSB2IHRvbXRvIGFkcmVzJmFhY3V0ZTvFmWkgbW9ob3UgYiZ5YWN1dGU7dCB1dmVkZW55JzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeW5hbWUnXSA9ICdKbSZlYWN1dGU7bm8ga2F0ZWdvcmllJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeXBhdGgnXSA9ICdDZXN0YSBuYSBzZXJ2ZXJ1JzsKJGxhbmdbJ3Byb21wdF9kZWxldGVkaXJlY3RvcnknXSA9ICdTbWF6YXQgYWRyZXMmYWFjdXRlO8WZIGthdGVnb3JpZT8nOwokbGFuZ1sncHJvbXB0X21heF91cGxvYWRzaXplJ10gPSAnTWF4aW0mYWFjdXRlO2xuJmlhY3V0ZTsgcG92b2xlbiZhYWN1dGU7IHZlbGlrb3N0IHNvdWJvcnUgKEtiKSc7CiRsYW5nWydwcm9tcHRfdmFsaWRfdXBsb2FkZXh0ZW5zaW9ucyddID0gJ1Bvdm9sZW4mZWFjdXRlOyBuYWhyJmFhY3V0ZTt2YW4mZWFjdXRlOyBwxZlpcG9ueSc7CiRsYW5nWydzY2FuJ10gPSAnUHJvaGxlZGF0JzsKJGxhbmdbJ3NlbGVjdGNhdGVnb3J5J10gPSAnVnlicmF0IGthdGVnb3JpaSc7CiRsYW5nWydzaXplJ10gPSAnVmVsaWtvc3QnOwokbGFuZ1snc2l6ZWtiJ10gPSAnVmVsaWtvc3QgKEtiKSc7CiRsYW5nWydzdWJtaXQnXSA9ICdPZGVzbGF0JzsKJGxhbmdbJ3N1bW1hcnlfdGVtcGxhdGUnXSA9ICcmU2Nhcm9uO2FibG9uYSBzaHJudXQmaWFjdXRlOyc7CiRsYW5nWydzdW1tYXJ5J10gPSAnU2hybnV0JmlhY3V0ZTsnOwokbGFuZ1sndGl0bGVfYWRtaW5fcGFuZWwnXSA9ICdVcGxvYWRzIE1vZHVsZSc7CiRsYW5nWyd0aXRsZV9tb2RfYWRtaW4nXSA9ICdNb2R1bGUgQWRtaW4gUGFuZWwnOwokbGFuZ1sndGl0bGVfbW9kX3ByZWZzJ10gPSAnUMWZZWR2b2xieSBtb2R1bHUnOwokbGFuZ1sndGl0bGVfc2luZ19sb3VkbHknXSA9ICdTaW5nIExvdWRseT8nOwokbGFuZ1sndGl0bGVfc3VibmV0X2V4Y2x1c2lvbnMnXSA9ICdWeW5lY2hhdCBzdWJzJmlhY3V0ZTt0xJsgemUgc3RhdGlzdGlreSc7CiRsYW5nWyd0aXRsZV92YWxpZF91cGxvYWRleHRlbnNpb25zJ10gPSAnUG92b2xlbiZlYWN1dGU7IHDFmSZpYWN1dGU7cG9ueSc7CiRsYW5nWyd1bmluc3RhbGxlZCddID0gJ01vZHVsIG9kaW5zdGFsb3YmYWFjdXRlO24uJzsKJGxhbmdbJ3VwZ3JhZGVkJ10gPSAnTW9kdWwgdXBncmFkb3YmYWFjdXRlO24gbmEgdmVyemkgJXMuJzsKJGxhbmdbJ3VwbG9hZCddID0gJ05haHImYWFjdXRlO3QnOwokbGFuZ1sndXBsb2FkZWQnXSA9ICdTb3Vib3IgJXMgYnlsIG5haHImYWFjdXRlO24gJXMuJzsKJGxhbmdbJ3JlcGxhY2VkJ10gPSAnU291Ym9yICVzIGJ5bCBuYWhyYXplbiAlcy4nOwokbGFuZ1snZGVsZXRlZCddID0gJ1NvdWJybyAlcyBieWwgc21heiZhYWN1dGU7bi4nOwokbGFuZ1sndXBsb2FkZm9ybV90ZW1wbGF0ZSddID0gJ1VwbG9hZCBUZW1wbGF0ZSc7CiRsYW5nWyd1c2VybmFtZSddID0gJ1XFvml2YXRlbHNrJmVhY3V0ZTsgam0mZWFjdXRlO25vJzsKJGxhbmdbJ3dhcm5pbmdfZGVsZXRlY2F0ZWdvcnknXSA9ICdWQVJPViZBYWN1dGU7TiZJYWN1dGU7OiBPcGF0cm7EmyBwxZlpIG1heiZhYWN1dGU7biZpYWN1dGU7IGthdGVnb3JpJmlhY3V0ZTsuIFNvdWJvcnkgbW9ob3UgYiZ5YWN1dGU7dCBzdHJhY2VueSc7CiRsYW5nWyd3ZWxjb21lX3RleHQnXSA9ICc8cD5XZWxjb21lIHRvIHRoZSBVcGxvYWRzIE1vZHVsZSBhZG1pbiBzZWN0aW9uLiBTb21ldGhpbmcgZWxzZSB3b3VsZCBwcm9iYWJseSBnbyBoZXJlIGlmIHRoZSBtb2R1bGUgYWN0dWFsbHkgZGlkIHNvbWV0aGluZy48L3A+JzsKJGxhbmdbJ3V0bWEnXSA9ICcxNTY4NjEzNTMuMjIxNzg5Njg1MjY0NjMyMzUwMC4xMjE3MTkwMTM4LjEyMTg5NjM1OTYuMTIxODk3NjI2Ny4xMyc7CiRsYW5nWyd1dG16J10gPSAnMTU2ODYxMzUzLjEyMTg5NjM1OTYuMTIuNS51dG1jY249KHJlZmVycmFsKXx1dG1jc3I9ZGV2LmNtc21hZGVzaW1wbGUub3JnfHV0bWNjdD0vfHV0bWNtZD1yZWZlcnJhbCc7CiRsYW5nWyd1dG1jJ10gPSAnMTU2ODYxMzUzJzsKJGxhbmdbJ3V0bWInXSA9ICcxNTY4NjEzNTMnOwo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/lang/ext/de_DE.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2VkaXRlZCddID0gJyVzIGJlYXJiZWl0ZXQnOwokbGFuZ1snbW92ZWRmaWxlJ10gPSAnRGF0ZWkgd3VyZGUgdm9uICVzIG5hY2ggJXMgdmVyc2Nob2Jlbic7CiRsYW5nWydwYWdlbGltaXQnXSA9ICdEYXRlaWVuIHBybyBTZWl0ZSc7CiRsYW5nWyd2aWV3J10gPSAnRGllc2UgRGF0ZWkgYW56ZWlnZW4nOwokbGFuZ1snZWRpdF90aGlzX2ZpbGUnXSA9ICdEaWVzZXMgRmVsZCBiZWFyYmVpdGVuJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeV9zY2FubmFibGUnXSA9ICdEaWVzZSBLYXRlZ29yaWUgYXV0b21hdGlzY2ggYXVmIG5ldWUgRGF0ZWllbiBwciZ1dW1sO2Zlbj8nOwokbGFuZ1snaW5mb19jYXRlZ29yeV9zY2FubmFibGUnXSA9ICdEaWVzZSBLYXRlZ29yaWUgd2lyZCBhdXRvbWF0aXNjaCBhdWYgbmV1ZSBEYXRlaWVuIGdlcHImdXVtbDtmdCwgd2VubiB2b24gZGVyIFdlYnNlaXRlIGF1cyBkYXJhdWYgenVnZWdyaWZmZW4gd2lyZCc7CiRsYW5nWydwcm9tcHRfdGxfYWNjZXNzJ10gPSAnWmVpdGJlc2NociZhdW1sO25rdGVyIFp1Z3JpZmYnOwokbGFuZ1sncHJvbXB0X2FsbG93X3VwbG9hZF9zZW5kZmlsZSddID0gJ0FsbG93IHNlbmRpbmcgZmlsZXMgaW1tZWRpYXRlbHkgb24gYWRtaW4gdXBsb2FkJzsKJGxhbmdbJ21zZ19hdXRvX2RlbGV0ZV9maWxlJ10gPSAnRGllIERhdGVpICVzIHd1cmRlIG5hY2ggWmVpdGFibGF1ZiBhdXRvbWF0aXNjaCBnZWwmb3VtbDtzY2h0JzsKJGxhbmdbJ21zZ19hdXRvX2RlbGV0ZV9maWxlX2ZhaWxlZCddID0gJ0JlcmVjaHRpZ3VuZ3Nwcm9ibGVtLCBkYXMgYXV0b21hdGlzY2hlIEwmb3VtbDtzY2hlbiB2b24gJXMgaXN0IGZlaGxnZXNjaGxhZ2VuJzsKJGxhbmdbJ2luZm9fY2F0ZWdvcnlfZXhwaXJlc19ocnMnXSA9ICdHZWJlbiBTaWUgaGllciBkaWUgQW56YWhsIGRlciBTdHVuZGVuIGFuLCBuYWNoIGRlbmVuIGRpZSBEYXRlaWVuIGRpZXNlciBLYXRlZ29yaWUgZ2VsJm91bWw7c2NodCB3ZXJkZW4gayZvdW1sO25uZW4uIFNvbGxlbiBkaWUgRGF0ZWllbiBuaWNodCBnZWwmb3VtbDtzY2h0IHdlcmRlbiwgc2V0emVuIFNpZSBkaWVzZW4gV2VydCBhdWYgMC4nOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5X2V4cGlyZXNfaHJzJ10gPSAnQW56YWhsIGRlciBTdHVuZGVuLCBiaXMgZGllIERhdGVpZW4gaW4gZGllc2VyIEthdGVnb3JpZSBhdXRvbWF0aXNjaCBnZWwmb3VtbDtzY2h0IHdlcmRlbic7CiRsYW5nWydpbmZvX2RmbHRfY2F0ZWdvcnlfZXhwaXJ5J10gPSAnRGVyIHZvcmVpbmdlc3RlbGx0ZSBXZXJ0IGYmdXVtbDtyIG5ldWUgS2F0ZWdvcmllbiwgbWl0IGRlbSBmZXN0Z2VsZWd0IHdpcmQsIHdpZSBsYW5nZSBkaWUgRGF0ZWllbiBpbiBkaWVzZXIgS2F0ZWdvcmllIHZlcmYmdXVtbDtnYmFyIHNlaW4gc29sbGVuLCBiZXZvciBzaWUgYXV0b21hdGlzY2ggZ2VsJm91bWw7c2NodCB3ZXJkZW4uIFNvbGxlbiBkaWUgRGF0ZWllbiBuaWNodCBnZWwmb3VtbDtzY2h0IHdlcmRlbiwgc2V0emVuIFNpZSBkaWVzZW4gV2VydCBhdWYgMC4nOwokbGFuZ1sndGl0bGVfY2F0ZWdvcnlfZXhwaXJ5J10gPSAnVmVyZiZ1dW1sO2diYXJrZWl0c2RhdWVyIGYmdXVtbDtyIGRpZXNlIEthdGVnb3JpZSA8ZW0+KFN0dW5kZW4pPC9lbT4nOwokbGFuZ1snaW5mb19jYXRlZ29yeWRlbGV0YWJsZSddID0gJ0JlcmVjaHRpZ3RlIEJlbnV0emVyIGhhYmVuIGRpZSBCZXJlY2h0aWd1bmcsIGRpZXNlIERhdGVpZW4genUgbCZvdW1sO3NjaGVuLiBEYXMgYmVkZXV0ZXQsIGRhc3MgaW4gZGVuIGVudHNwcmVjaGVuZGVuIFRlbXBsYXRlcyBlaW4gTGluayB6dW0gTCZvdW1sO3NjaGVuIGRlciBEYXRlaSBhbmdlemVpZ3Qgd2lyZC4gIEVpbiBXZWJzZWl0ZW4tRW50d2lja2xlciBrYW5uIGF1Y2ggZGllIGVudHNwcmVjaGVuZGUgU21hcnR5LUxvZ2lrIHZlcndlbmRlbiwgdW0gZiZ1dW1sO3IgYmVyZWNodGlndGUgQmVudXR6ZXIgZWluZW4gTGluayBhbnp1emVpZ2VuLic7CiRsYW5nWydjb3B5X2ZpbGVzJ10gPSAnRGF0ZWllbiBrb3BpZXJlbic7CiRsYW5nWydlcnJvcl9maWxldG9vbGFyZ2UnXSA9ICdUaGUgZmlsZSB5b3UgYXR0ZW1wdGVkIHRvIHVwbG9hZGUgaXMgbGFyZ2VyIHRoYW4gdGhlIENNU01TIG1heGltdW0gdXBsb2FkIGZpbGUgc2l6ZSc7CiRsYW5nWydhcmV5b3VzdXJlX2RlbGV0ZWNhdGVnb3J5J10gPSAnV29sbGVuIFNpZSB3aXJrbGljaCBkaWVzZSBLYXRlZ29yaWUgbCZvdW1sO3NjaGVuPyc7CiRsYW5nWydlcnJvcl9kZWxldGUnXSA9ICdFaW4gRWludHJhZyBrb25udGUgbmljaHQgZ2VsJm91bWw7c2NodCB3ZXJkZW4gKCVzKSc7CiRsYW5nWydjb25maXJtX2NhdF9tdWx0aWFjdGlvbiddID0gJ1dvbGxlbiBTaWUgd2lya2xpY2ggZGllc2UgQWt0aW9uIG1pdCBkZW4gYXVzZ2V3JmF1bWw7aGx0ZW4gS2F0ZWdvcmllbiBhdXNmJnV1bWw7aHJlbj8nOwokbGFuZ1snZXJyb3Jfbm90aGluZ19zZWxlY3RlZCddID0gJ0ZlaGxlcjogRXMgd3VyZGUgbmljaHRzIGF1c2dldyZhdW1sO2hsdCc7CiRsYW5nWyd3aXRoX3NlbGVjdGVkJ10gPSAnV2l0aCBTZWxlY3RlZDonOwokbGFuZ1snZXJyb3JfcmVwbGFjZV9taXNtYXRjaGVkX2ZpbGVleHQnXSA9ICdXaGVuIHJlcGxhY2luZyBhIGZpbGUsIHlvdSBtdXN0IHVwbG9hZCBhIGZpbGUgb2YgdGhlIHNhbWUgZXhhY3QgdHlwZSAoYnkgZmlsZSBleHRlbnNpb24pLiAgVGhlIGZpbGUgeW91IHNlbGVjdGVkIGRvZXMgbm90IG1hdGNoIHRoYXQgb2YgdGhlIG9yaWdpbmFsIGZpbGUuJzsKJGxhbmdbJ3JlcGxhY2UnXSA9ICdFcnNldHplbic7CiRsYW5nWydpbmZvX3JlcGxhY2VmaWxlJ10gPSAnWW91IG1heSB1cGxvYWQgYSByZXBsYWNlbWVudCBmaWxlLCBpZiB0aGUgZmlsZSBpcyBhbiBpbWFnZSB0eXBlLCBhbmQgeW91IGhhdmUgbm90IHNwZWNpZmllZCBhIHJlcGxhY2VtZW50IHRodW1ibmFpbCwgYSBuZXcgdGh1bWJuYWlsIHdpbGwgYmUgZ2VuZXJhdGVkJzsKJGxhbmdbJ3Byb21wdF9yZXBsYWNlZmlsZSddID0gJ0Vyc2F0emRhdGVpIGhvY2hsYWRlbic7CiRsYW5nWyd0aXRsZV9maXhzcGFjZXMnXSA9ICdMZWVyemVpY2hlbiBpbiBEYXRlaW5hbWVuIGVyc2V0emVuJzsKJGxhbmdbJ2NhdGVnb3J5X2NvcGllZCddID0gJ0RpZSBLYXRlZ29yaWUgd3VyZGUgZXJmb2xncmVpY2gga29waWVydCc7CiRsYW5nWydlcnJvcl9kdXBsaWNhdGVwYXRoJ10gPSAnUGxlYXNlIHNwZWNpZnkgYSBkaXJlY3RvcnkgbmFtZSB0aGF0IGlzIGRpZmZlcmVudCBmcm9tIHRoZSBzb3VyY2UsIGFuZCBpcyBub3QgYWxyZWFkeSBpbiB1c2UnOwokbGFuZ1snb3BlcmF0aW9uX2NhbmNlbGxlZCddID0gJ09wZXJhdGlvbiBhYmdlYnJvY2hlbic7CiRsYW5nWydzb3VyY2UnXSA9ICdRdWVsbGUnOwokbGFuZ1snZGVzdGluYXRpb24nXSA9ICdaaWVsJzsKJGxhbmdbJ3Byb21wdF9jb3B5X2ZpbGVzJ10gPSAnRGllIERhdGVpZW4gZGVyIEthdGVnb3JpZSBrb3BpZXJlbic7CiRsYW5nWydpbmZvX2NvcHlfZmlsZXMnXSA9ICdDb3B5IHRoZSBmaWxlcyBmcm9tIHRoZSBzb3VyY2UgY2F0ZWdvcnkgdG8gdGhlIGRlc3RpbmF0aW9uIGNhdGVnb3J5JzsKJGxhbmdbJ2V4dHJhJ10gPSAnRXh0cmFzJzsKJGxhbmdbJ2NvcHknXSA9ICdLb3BpZXJlbic7CiRsYW5nWydzZWxlY3RvbmUnXSA9ICdJaHJlIEF1c3dhaGwnOwokbGFuZ1snYXV0b3dhdGVybWFyayddID0gJ0F1dG9tYXRpc2NoIFdhc3NlcnplaWNoZW4gYXVmIGRlbiBCaWxkZXJuIGVpbmYmdXVtbDtnZW4nOwokbGFuZ1snaW1hZ2Vfc2V0dGluZ3MnXSA9ICdCaWxkZWluc3RlbGx1bmdlbic7CiRsYW5nWydwcm9tcHRfZ2V0ZmlsZV9yZXN1bHRwYWdlJ10gPSAnU2VpdGUsIGRpZSBmJnV1bWw7ciBkaWUgQW56ZWlnZSB2b24gRmVobGVybiBvZGVyIGFuZGVyZW4sIGRlbiBEb3dubG9hZCBiZXRyZWZmZW5kZW4gTmFjaHJpY2h0ZW4gdmVyd2VuZGV0IHdlcmRlbiBzb2xsJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRfa2V5J10gPSAnVGhlIHVwbG9hZCBrZXkgc3BlY2lmaWVkIGlzIGludmFsaWQgKG1heWJlIGl0IGhhcyByZWFjaGVkIGl0cyBtYXhpbXVtIGRvd25sb2FkIGNhcGFjaXR5IG9yIGhhcyBleHBpcmVkKSc7CiRsYW5nWydkZmx0X3RpbWVsaW1pdGVkX3N1YmplY3QnXSA9ICd7JHNpdGVuYW1lfSAtIFlvdSBoYXZlIGJlZW4gZ3JhbnRlZCBhY2Nlc3MgdG8geyRlbnRyeS0+dXBsb2FkX25hbWV8c3RyaXBfdGFnc30gZm9yIGEgbGltaXRlZCB0aW1lJzsKJGxhbmdbJ3Byb21wdF90aW1lbGltaXRlZF9zdWJqZWN0J10gPSAnU3ViamVjdCBmb3IgZW1haWwgY3JlYXRlZCB3aGVuIHNlbmRpbmcgYSB0aW1lIGxpbWl0ZWQgVVJMJzsKJGxhbmdbJ3Byb21wdF90aW1lbGltaXRlZF9hdXRvZGVsZXRlJ10gPSAnQXV0byBkZWxldGUgZXhwaXJlZCBlbnRyaWVzIGFmdGVyIE4gaG91cnMgPGVtPihzcGVjaWZ5IDAgdG8gZGlzYWJsZSBhdXRvZGVsZXRlKTwvZW0+Oic7CiRsYW5nWydwcm9tcHRfdGltZWxpbWl0ZWRfc2VuZGl0J10gPSAnU2VuZCB0aGlzIHVybCB0byB0aGUgZGVzaWduYXRlZCBlbWFpbCBhZGRyZXNzPyc7CiRsYW5nWyd1cmxfa2V5J10gPSAnVVJMLVNjaGwmdXVtbDtzc2VsJzsKJGxhbmdbJ2NyZWF0ZWQnXSA9ICdFcnN0ZWxsdCc7CiRsYW5nWydleHBpcmVzJ10gPSAnQWJsYXVmZGF0dW0nOwokbGFuZ1snYWRkZWRpdF90aW1lbGltaXRlZF9rZXknXSA9ICdBZGQvRWRpdCBUaW1lIExpbWl0ZWQgS2V5JzsKJGxhbmdbJ3RpbWVfbGltaXRlZF9rZXlfYWRkZWQnXSA9ICdUaW1lIExpbWl0ZWQgS2V5IEFkZGVkJzsKJGxhbmdbJ251bV9ob3VycyddID0gJ0FuemFobCBkZXIgU3R1bmRlbic7CiRsYW5nWydudW1fZG93bmxvYWRzJ10gPSAnQW56YWhsIGRlciBEb3dubG9hZHMnOwokbGFuZ1snZW1haWxfYWRkcmVzcyddID0gJ0VtYWlsLUFkcmVzc2UnOwokbGFuZ1snZXJyb3JfbWlzc2luZ19pbnZhbGlkJ10gPSAnRWluIGVyZm9yZGVybGljaGVyIFdlcnQgZmVobHQgb2RlciBpc3QgdW5nJnV1bWw7bHRpZzogJXMnOwokbGFuZ1snYWRkX3RpbWVsaW1pdGVkX2tleSddID0gJ0VpbmVuIHplaXRiZXNjaHImYXVtbDtua3RlbiBTY2hsJnV1bWw7c3NlbCBoaW56dWYmdXVtbDtnZW4nOwokbGFuZ1snZmlsZV9pbmZvMiddID0gJ0RhdGVpICVzIChpZD0lZCknOwokbGFuZ1snaW5mb190aW1lbGltaXRlZF9kb3dubG9hZHMnXSA9ICdTcGVjaWZ5IHRoZSBkZWZhdWx0IG51bWJlciBvZiB0aW1lcyB0aGF0IGEgZmlsZSBpZGVudGlmaWVkIGJ5IGEgcGFydGljdWxhciBrZXkgY2FuIGJlIGRvd25sb2FkZWQnOwokbGFuZ1sncHJvbXB0X3RpbWVsaW1pdGVkX2Rvd25sb2FkcyddID0gJ1ZvcmVpbmdlc3RlbGx0ZSBBbnphaGwgdm9uIERvd25sb2Fkcyc7CiRsYW5nWydpbmZvX3RpbWVsaW1pdGVkX2hvdXJzJ10gPSAnU3BlY2lmeSB0aGUgZGVmYXVsdCBudW1iZXIgb2YgaG91cnMgdGhhdCBhIHRpbWUgbGltaXRlZCBrZXkgaXMgdmFsaWQgZm9yLiAgU3BlY2lmeSAwIGZvciB1bmxpbWl0ZWQnOwokbGFuZ1sncHJvbXB0X3RpbWVsaW1pdGVkX2hvdXJzJ10gPSAnTnVtYmVyIG9mIGhvdXJzIGEgVGltZSBMaW1pdGVkIEtleSBpcyB2YWxpZCBmb3InOwokbGFuZ1sndGltZWxpbWl0ZWRfdXJsX3NldHRpbmdzJ10gPSAnVGltZSBMaW1pdGVkIEtleSBTZXR0aW5ncyc7CiRsYW5nWydtYW5hZ2VfdGltZWxpbWl0ZWQnXSA9ICdaZWl0YmVzY2hyJmF1bWw7bmt0ZW4gWnVncmlmZiB2ZXJ3YWx0ZW4nOwokbGFuZ1sndXBsb2FkaW5nX3NldHRpbmdzJ10gPSAnRWluc3RlbGx1bmdlbiBmJnV1bWw7ciBkYXMgSG9jaGxhZGVuIHZvbiBEYXRlaWVuJzsKJGxhbmdbJ2dlbmVyYWxfc2V0dGluZ3MnXSA9ICdBbGxnZW1laW5lIEVpbnN0ZWxsdW5nZW4nOwokbGFuZ1sndGh1bWJuYWlsX3NldHRpbmdzJ10gPSAnRXJzdGVsbHVuZyBkZXIgVm9yc2NoYXViaWxkZXInOwokbGFuZ1sndGl0bGVfcmVkaXJlY3Rfb25fc2VuZGZpbGUnXSA9ICdTZWl0ZSwgYXVmIGRpZSBkZXIgQmVzdWNoZXIgbmFjaCBkZXIgRWluc2VuZHVuZyBlaW5lciBEYXRlaSB3ZWl0ZXJnZWxlaXRldCB3aXJkJzsKJGxhbmdbJ2xibF9iYWNrJ10gPSAnWnVyJnV1bWw7Y2snOwokbGFuZ1snbGJsX3RlbXBsYXRlcyddID0gJ1RlbXBsYXRlcyBiZWFyYmVpdGVuJzsKJGxhbmdbJ3Byb21wdF9wdWJsaWNfZmllbGQnXSA9ICdEYXMgRmVsZCBpc3QgJm91bWw7ZmZlbnRsaWNoIDxlbT4oa2FubiB2b24gZGVuIEJlc3VjaGVybiBkaWVzZXIgV2Vic2VpdGUgZ2VzZWhlbiB3ZXJkZW4pPC9lbT4nOwokbGFuZ1sndXBsb2FkX2VkaXRlZCddID0gJ0RhdGVpZGV0YWlscyBiZWFyYmVpdGV0IGFtICVzJzsKJGxhbmdbJ2luZm9fdGh1bWJuYWlsJ10gPSAnRWluIG9wdGlvbmFsZXMgVm9yc2NoYXViaWxkJzsKJGxhbmdbJ3VwbG9hZF9maWxlJ10gPSAnRWluZSBuZXVlIERhdGVpIGhvY2hsYWRlbic7CiRsYW5nWydtc2dfZmllbGRfZGVsZXRlZCddID0gJ0RhcyBGZWxkIHd1cmRlIGdlbCZvdW1sO3NjaHQnOwokbGFuZ1snYXNrX2RlbGV0ZV9maWVsZCddID0gJ1dvbGxlbiBTaWUgd2lya2xpY2ggZGllc2UgRmVsZGRlZmluaXRpb25lbiB1bmQgYWxsZSBkYW1pdCB2ZXJidW5kZW5lbiBXZXJ0ZSBsJm91bWw7c2NoZW4/JzsKJGxhbmdbJ3llcyddID0gJ0phJzsKJGxhbmdbJ25vJ10gPSAnTmVpbic7CiRsYW5nWyd0eXBlJ10gPSAnVHlwJzsKJGxhbmdbJ2ZpZWxkdHlwZV9tdWx0aXNlbGVjdCddID0gJ011bHRpc2VsZWN0IExpc3QnOwokbGFuZ1snZmllbGR0eXBlX2Ryb3Bkb3duJ10gPSAnRHJvcGRvd24gTGlzdCc7CiRsYW5nWydmaWVsZHR5cGVfY2hlY2tib3gnXSA9ICdDaGVja2JveCc7CiRsYW5nWydmaWVsZHR5cGVfdGV4dGFyZWEnXSA9ICdUZXh0YmVyZWljaCc7CiRsYW5nWydmaWVsZHR5cGVfdGV4dGlucHV0J10gPSAnVGV4dCBJbnB1dCc7CiRsYW5nWydwcm9tcHRfdXNlX3d5c2l3eWcnXSA9ICdadW0gQmVhcmJlaXRlbiBkaWVzZXMgRmVsZHMgZGVuIHZvcmVpbmdlc3RlbGx0ZW4gV1lTSVdZRy1FZGl0b3IgdmVyd2VuZGVuJzsKJGxhbmdbJ3Byb21wdF9kZWZhdWx0X2NvbnRlbnQnXSA9ICdWb3JlaW5nZXN0ZWxsdGVyIEluaGFsdCBmJnV1bWw7ciBkZW4gVGV4dGJlcmVpY2gnOwokbGFuZ1sncHJvbXB0X2Ryb3Bkb3duX29wdGlvbnMnXSA9ICdPcHRpb25lbiAoZWluIEVpbnRyYWcgcHJvIFplaWxlKSc7CiRsYW5nWydwcm9tcHRfZmllbGRfbWF4bGVuZ3RoJ10gPSAnTWF4aW1hbGUgRmVsZGwmYXVtbDtuZ2UnOwokbGFuZ1sncHJvbXB0X2ZpZWxkX2xlbmd0aCddID0gJ0ZlbGRsJmF1bWw7bmdlJzsKJGxhbmdbJ3Byb21wdF9maWVsZF90eXBlJ10gPSAnRmVsZHR5cCc7CiRsYW5nWydwcm9tcHRfZmllbGRfbmFtZSddID0gJ0ZlbGRuYW1lJzsKJGxhbmdbJ3RpdGxlX2FkZF9maWVsZCddID0gJ0VpbmUgRmVsZGRlZmluaXRpb24gaGluenVmJnV1bWw7Z2VuIG9kZXIgYmVhcmJlaXRlbic7CiRsYW5nWydmaWVsZF9kZWZpbml0aW9ucyddID0gJ0ZlbGRkZWZpbml0aW9uZW4nOwokbGFuZ1sncHJvbXB0X2FkZF9maWVsZCddID0gJ0VpbmUgRmVsZGRlZmluaXRpb24gaGluenVmJnV1bWw7Z2VuJzsKJGxhbmdbJ3BhcmFtX2FjdGlvbiddID0gJ1NwZWNpZmllcyB0aGUgYmVoYXZpb3VyIG9mIHRoZSBtb2R1bGUgdGFnLiAgUG9zc2libGUgdmFsdWVzIGFyZTogZGVmYXVsdCAtICh0aGUgZGVmYWZhdWx0IGJlaGF2aW9yKSwgZGV0YWlsIC0gdG8gZGlzcGxheSBhIGRldGFpbCB2aWV3IG9mIGEgc2luZ2xlIGZpbGUgYmFzZWQgb24gdGhlIHVwbG9hZF9pZCwgYW5kIHlvdXNlbmRpdCAtIHRvIGRpc3BsYXkgYSBmb3JtIHRvIGFsbG93IHVwbG9hZGluZyBhIGZpbGUsIGFuZCBzZW5kaW5nIGl0IHRvIG51bWVyb3VzIGFkZHJlc3NlcyBpbiBvbmUgc3RlcCc7CiRsYW5nWydwYXJhbV9zZW5kZmlsZXBhZ2UnXSA9ICdTcGVjaWZ5IHRoZSBwYWdlIGlkIG9yIGFsaWFzIG9mIGEgcGFnZSB0aGF0IHNob3VsZCBiZSB1c2VkIGZvciB0aGUgc2VuZCBhIGZpbGUgZm9ybSc7CiRsYW5nWydmaWxlX3VwbG9hZGVkJ10gPSAnRGF0ZWkgd3VyZGUgZXJmb2xncmVpY2ggaG9jaGdlbGFkZW4nOwokbGFuZ1sndG8nXSA9ICdBbic7CiRsYW5nWyd0aXRsZV95b3VzZW5kaXRmb3JtX3RlbXBsYXRlJ10gPSAnQWRkIG9yIEVkaXQgYSAmcXVvdDtZb3UgU2VuZCBJdCZxdW90OyBGb3JtIFRlbXBsYXRlJzsKJGxhbmdbJ3lvdXNlbmRpdGZvcm1fdGVtcGxhdGUnXSA9ICdZb3VTZW5kSXQgRm9ybSBUZW1wbGF0ZXMnOwokbGFuZ1sndGl0bGVfeW91c2VuZGl0Zm9ybV9zeXNkZWZhdWx0J10gPSAnU3lzdGVtIGRlZmF1bHQgJnF1b3Q7eW91IHNlbmQgaXQmcXVvdDsgdGVtcGxhdGUnOwokbGFuZ1snbXNnX2ZpbGVfc2VudCddID0gJ0EgbWVzc2FnZSBoYXMgYmVlbiBzZW50IHRvIHRoZSBzZWxlY3RlZCBhZGRyZXNzZXMgdGhhdCBjb250YWlucyBpbmZvcm1hdGlvbiBhYm91dCB0aGUgZmlsZSBhbmQgaG93IHRvIHJldHJpZXZlIGl0Lic7CiRsYW5nWydlcnJvcl9ub2FkZHJlc3NlcyddID0gJ1NpZSBtJnV1bWw7c3NlbiBtaW5kZXN0ZW5zIGVpbmUgWmllbGFkcmVzc2UgYW5nZWJlbic7CiRsYW5nWydlcnJvcl9ub3N1YmplY3QnXSA9ICdTaWUgbSZ1dW1sO3NzZW4gZWluZW4gQmV0cmVmZiBhbmdlYmVuJzsKJGxhbmdbJ3N1YmplY3QnXSA9ICdCZXRyZWZmJzsKJGxhbmdbJ3RpdGxlX3NlbmRmaWxlcGFnZSddID0gJ1NlaXRlIGYmdXVtbDtyIGRhcyAmcXVvdDtTZW5kIGEgRmlsZSZxdW90OyBGb3JtdWxhcic7CiRsYW5nWydmaWxlX2luZm8nXSA9ICdEYXRlaS1JbmZvJzsKJGxhbmdbJ3NlbmQnXSA9ICdBYnNlbmRlbic7CiRsYW5nWydub3RlcyddID0gJ05vdGl6ZW4nOwokbGFuZ1snYWRkcmVzc2VlcyddID0gJ0luZm9ybWF0aW9uZW4gJnV1bWw7YmVyIGRpZXNlIERhdGVpIHNlbmRlbiBhbic7CiRsYW5nWydwcm9tcHRfc2VuZGZpbGVfZW1haWxfdGVtcGxhdGUnXSA9ICcmcXVvdDtTZW5kIGEgRmlsZSZxdW90OyBFbWFpbCBUZW1wbGF0ZSc7CiRsYW5nWyd0aXRsZV9zZW5kZmlsZWZvcm1fdGVtcGxhdGUnXSA9ICdBZGQgb3IgRWRpdCBhICZxdW90O1NlbmQgYSBGaWxlJnF1b3Q7IEZvcm0gVGVtcGxhdGUnOwokbGFuZ1snc2VuZGZpbGVmb3JtX3RlbXBsYXRlJ10gPSAnJnF1b3Q7U2VuZCBhIEZpbGUmcXVvdDsgRm9ybSBUZW1wbGF0ZXMnOwokbGFuZ1sncHJvbXB0X25vdGlmeV9lbWFpbF90ZW1wbGF0ZSddID0gJ0ZpbGUgdXBsb2FkIG5vdGlmaWNhdGlvbiBlbWFpbCB0ZW1wbGF0ZSc7CiRsYW5nWyd0aXRsZV9zZW5kZmlsZWZvcm1fc3lzZGVmYXVsdCddID0gJ1N5c3RlbSBkZWZhdWx0ICZxdW90O1NlbmQgYSBGaWxlJnF1b3Q7IGZvcm0gdGVtcGxhdGUnOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5ZGVsZXRhYmxlJ10gPSAnRGF0ZWllbiBpbiBkaWVzZXIgS2F0ZWdvcmllIGsmb3VtbDtubmVuIGdlbCZvdW1sO3NjaHQgd2VyZGVuJzsKJGxhbmdbJ3RpdGxlX2FsbG93X2RlbGV0ZSddID0gJ0RhcyBMJm91bWw7c2NoZW4gdm9uIERhdGVpZW4gaW0gRnJvbnRlbmQgZXJsYXViZW4nOwokbGFuZ1snZGVmYXVsdF90ZW1wbGF0ZXMnXSA9ICdTdGFuZGFyZC1UZW1wbGF0ZXMnOwokbGFuZ1snZmlyc3RwYWdlJ10gPSAnRXJzdGUgU2VpdGUnOwokbGFuZ1sncHJldnBhZ2UnXSA9ICdWb3JoZXJpZ2UgU2VpdGUnOwokbGFuZ1snbmV4dHBhZ2UnXSA9ICdOJmF1bWw7Y2hzdGUgU2VpdGUnOwokbGFuZ1snbGFzdHBhZ2UnXSA9ICdMZXR6dGUgU2VpdGUnOwokbGFuZ1snZmlyc3RwYWdlX2Fycm93J10gPSAnPDwnOwokbGFuZ1sncHJldnBhZ2VfYXJyb3cnXSA9ICc8JzsKJGxhbmdbJ25leHRwYWdlX2Fycm93J10gPSAnPic7CiRsYW5nWydsYXN0cGFnZV9hcnJvdyddID0gJz4+JzsKJGxhbmdbJ3BhZ2UnXSA9ICdTZWl0ZSc7CiRsYW5nWydvZiddID0gJ3Zvbic7CiRsYW5nWydwcm9tcHRfZ3JvdXBsaXN0J10gPSAnQXV0b3Jpc2llcnRlIEZFVS1HcnVwcGVuJzsKJGxhbmdbJ2luZm9fZ3JvdXBsaXN0J10gPSAnVyZhdW1sO2hsZW4gU2llIGRpZSBHcnVwcGVuIGRlcyBGcm9udGVuZFVzZXJzLU1vZHVscywgZGVuZW4gZGVyIFp1Z3JpZmYgYXVmIGRpZXNlIEthdGVnb3JpZSBlcmxhdWJ0IGlzdC4gV2VubiBTaWUgYWxsZSBFaW50ciZhdW1sO2dlIGFidyZhdW1sO2hsZW4sIGVybGF1YmVuIFNpZSBhbGxlbiBkZW4gWnVncmlmZi4nOwokbGFuZ1sndGl0bGVfc2NhbiddID0gJ0RpZXNlIEthdGVnb3JpZSBhdWYgbmV1ZSBEYXRlaWVuIHByJnV1bWw7ZmVuJzsKJGxhbmdbJ3RpdGxlX2NyZWF0ZV90aHVtYm5haWxzJ10gPSAnRmVobGVuZGUgVm9yc2NoYXViaWxkZXIgZiZ1dW1sO3IgZGllIERhdGVpZW4gZGllc2VyIEthdGVnb3JpZSBlcnpldWdlbi4nOwokbGFuZ1snY3JlYXRlX3RodW1ibmFpbHMnXSA9ICdWb3JzY2hhdWJpbGRlciBlcnpldWdlbic7CiRsYW5nWyd0aXRsZV9jcmVhdGVfdGh1bWJuYWlsJ10gPSAnRWluIFZvcnNjaGF1YmlsZCBmJnV1bWw7ciBkaWVzZSBEYXRlaSBlcnpldWdlbic7CiRsYW5nWydjcmVhdGVfdGh1bWJuYWlsJ10gPSAnRWluIFZvcnNjaGF1YmlsZCBlcnpldWdlbic7CiRsYW5nWydlcnJvcl9wYXRoZXJyb3InXSA9ICdLb25udGUgZGFzIFZlcnplaWNobmlzIG5pY2h0ICZvdW1sO2ZmbmVuIChCZXJlY2h0aWd1bmdzLVByb2JsZW0/KSc7CiRsYW5nWyd0aXRsZV9kb3dubG9hZF9jaHVua3NpemUnXSA9ICdHciZvdW1sOyZzemxpZztlIGRlcyBEb3dubG9hZHMnOwokbGFuZ1snaW5mb19kb3dubG9hZF9jaHVua3NpemUnXSA9ICdEaWUgVmVyd2VuZHVuZyBkaWVzZXMgUGFyYW1ldGVycyBoYXQgQXVzd2lya3VuZ2VuIGF1ZiBkaWUgR2VzY2h3aW5kaWdrZWl0IGJlaW0gSGVydW50ZXJsYWRlbiB1bmQga2FubiBoZWxmZW4sIGZhbGxzIG51ciB3ZW5pZyBTcGVpY2hlciB6dXIgVmVyZiZ1dW1sO2d1bmcgc3RlaHQuJzsKJGxhbmdbJ3dhcm5pbmdfc2FmZV9tb2RlJ10gPSAnRGVyIFBIUC1TYWZlLU1vZHVzIGlzdCBha3RpdmllcnQuIEF1ZmdydW5kIGRlc3NlbiBrYW5uIGVzIGJlaW0gSG9jaGxhZGVuIHZvbiBEYXRlaWVuIHp1IFByb2JsZW1lbiBrb21tZW4gKEJlcmVjaHRpZ3VuZ2VuKS4gQXUmc3psaWc7ZXJkZW0ga2FubiBlcyBtaXQgZGVyIEYmYXVtbDtoaWdrZWl0IGRlcyBNb2R1bHMsIGVpbmlnZSBFaW5zdGVsbHVuZ2VuIGluIGRlciBpbmktRGF0ZWkgJnV1bWw7YmVyc2NocmVpYmVuIHp1IGsmb3VtbDtubmVuLCB6dSB1bmVydyZ1dW1sO25zY2h0ZW4gJlV1bWw7YmVyc2NobmVpZHVuZ2VuIGtvbW1lbi4gU2llIHNvbGx0ZW4gc2ljaCBkYWhlciBtaXQgSWhyZW0gUHJvdmlkZXIgaW4gVmVyYmluZHVuZyBzZXR6ZW4sIG9iIGVyIGRlbiBTYWZlLU1vZHVzIGRlYWt0aXZpZXJlbiBrYW5uLic7CiRsYW5nWydwYXJhbV9kZXRhaWxwYWdlJ10gPSAnRGllcyBpc3QgaW5zYmVzb25kZXJlIGRhbm4gbiZ1dW1sO3R6bGljaCwgd2VubiBkaWUgRGV0YWlscyBtaXQgZWluZW0gYW5kZXJlbiBTZWl0ZW4tVGVtcGxhdGUgYW5nZXplaWd0IHdlcmRlbiBzb2xsZW4uIERpZXNlciBQYXJhbWV0ZXIgYmVuJm91bWw7dGlndCBlbnR3ZWRlciBkaWUgSUQgb2RlciBkZW4gQWxpYXMgZGVyIFNlaXRlLCBkaWUgenVyIEFuemVpZ2UgZGVyIERldGFpbHMgdmVyd2VuZGV0IHdlcmRlbiBzb2xsLic7CiRsYW5nWydwYXJhbV9wcmVmaXgnXSA9ICdFaW4gYm9vbHNjaGVyIFdlcnQsIGRlciBhbnplaWd0LCBtaXQgd2VsY2hlbSBQcmVmaXggZGllIERhdGVpZW4gZ2VrZW5uemVpY2huZXQgd2VyZGVuIHNvbGxlbic7CiRsYW5nWydwYXJhbV9wcmVmaXhfZmV1J10gPSAnRWluIGJvb2xzY2hlciBXZXJ0LCBkZXIgYW56ZWlndCwgbWl0IHdlbGNoZW0gUHJlZml4IGRpZSBEYXRlaWVuIGRlcyBha3R1ZWxsZW4gQXV0b3JzIGdla2VubnplaWNobmV0IHdlcmRlbiBzb2xsZW4uIE9obmUgVm9yZ2FiZSB3aXJkIGRpZSBha3R1ZWxsZSBaZWl0IGFscyBQcmVmaXggdmVyd2VuZGV0IChpbSBkZWNoZXgtRm9ybWF0KSc7CiRsYW5nWydwYXJhbV9ub2NhcHRjaGEnXSA9ICdDYXB0Y2hhLVN1cHBvcnQgKHN0YW5kYXJkbWEmc3psaWc7aWcgYWt0aXZpZXJ0KSBiZWltIEhvY2hsYWRlbiBkZWFrdGl2aWVyZW4nOwokbGFuZ1sndGl0bGVfdXBsb2FkZm9ybV90ZW1wbGF0ZSddID0gJ1RlbXBsYXRlIGYmdXVtbDtyIGRhcyBGb3JtdWxhciB6dW0gSG9jaGxhZGVuIHZvbiBEYXRlaWVuIGJlYXJiZWl0ZW4nOwokbGFuZ1snY2FwdGNoYV90aXRsZSddID0gJ0JpdHRlIGdlYmVuIFNpZSBkZW4gVGV4dCBlaW4sIGRlciBpbiBkaWVzZW0gQmlsZCBhbmdlemVpZ3Qgd2lyZCc7CiRsYW5nWydlcnJvcl9jYXB0Y2hhbWlzbWF0Y2gnXSA9ICdEZXIgVGV4dCwgZGVuIFNpZSBlaW5nZWdlYmVuIGhhYmVuLCBlbnRzcHJpY2h0IG5pY2h0IGRlbSBhbmdlemVpZ3RlbiBCaWxkJzsKJGxhbmdbJ3RpdGxlX2F1dG90aHVtYm5haWxfZXh0ZW5zaW9ucyddID0gJ0YmdXVtbDtyIERhdGVpZW4gbWl0IGRpZXNlciBOYW1lbnNlcndlaXRlcnVuZyBWb3JzY2hhdWJpbGRlciBlcnpldWdlbic7CiRsYW5nWyd0aXRsZV9hdXRvdGh1bWJuYWlsX3NpemUnXSA9ICdNYXhpbWFsZSBHciZvdW1sOyZzemxpZztlIGYmdXVtbDtyIGRpZSBlcnpldWd0ZW4gVm9yc2NoYXViaWxkZXIgKGluIFBpeGVsKSc7CiRsYW5nWydwcm9tcHRfdXBsb2FkX2ljb24nXSA9ICdFaW4gSWNvbiBob2NobGFkZW4nOwokbGFuZ1snaW5mb19zeXNkZWZhdWx0J10gPSAnRGllc2VyIFRleHQgd2lyZCB2ZXJ3ZW5kZXQsIHdlbm4gZWluIG5ldWVzIFRlbXBsYXRlIGRpZXNlcyBUeXBzIGVyc3RlbGx0IHdpcmQnOwokbGFuZ1sndGl0bGVfZGV0YWlscnB0X3N5c2RlZmF1bHQnXSA9ICdTdGFuZGFyZC1UZW1wbGF0ZSBmJnV1bWw7ciBkZW4gZGV0YWlsaWVydGVuIEJlcmljaHQnOwokbGFuZ1sndGl0bGVfc3VtbWFyeXJwdF9zeXNkZWZhdWx0J10gPSAnU3RhbmRhcmQtVGVtcGxhdGUgZiZ1dW1sO3IgZGVuIEt1cnpiZXJpY2h0JzsKJGxhbmdbJ3RpdGxlX3VwbG9hZGZvcm1fc3lzZGVmYXVsdCddID0gJ1N0YW5kYXJkLVRlbXBsYXRlIGYmdXVtbDtyIGRhcyBIb2NobGFkZW4gdm9uIERhdGVpZW4nOwokbGFuZ1sndGVtcGxhdGUnXSA9ICdUZW1wbGF0ZSAnOwokbGFuZ1sncmVzZXR0b2RlZmF1bHQnXSA9ICdBdWYgZGllIHByb2dyYW1tc2VpdGlnZW4gVm9yZWluc3RlbGx1bmdlbiB6dXImdXVtbDtja3NldHplbic7CiRsYW5nWyd0aXRsZV9zdW1tYXJ5cnB0X3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUgZiZ1dW1sO3IgZGVuIEt1cnpiZXJpY2h0JzsKJGxhbmdbJ3RpdGxlX2RldGFpbHJwdF90ZW1wbGF0ZSddID0gJ1RlbXBsYXRlIGYmdXVtbDtyIGRlbiBkZXRhaWxpZXJ0ZW4gQmVyaWNodCc7CiRsYW5nWydwcm9tcHRfbmFtZSddID0gJ05hbWUgJzsKJGxhbmdbJ3Byb21wdF9kZWZhdWx0J10gPSAnU3RhbmRhcmQnOwokbGFuZ1snbGVnZW5kX3VwbG9hZGZvcm0nXSA9ICdFaW5lIERhdGVpIGhvY2hsYWRlbic7CiRsYW5nWydlcnJvcl9taXNzaW5ncGFyYW0nXSA9ICdFcyBmZWhsdCBlaW4gZXJmb3JkZXJsaWNoZXIgUGFyYW1ldGVyJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmduYW1lJ10gPSAnRiZ1dW1sO3IgZGVuIERhdGVpdHlwZW4gbXVzcyBlaW4gTmFtZSBlaW5nZWdlYmVuIHdlcmRlbic7CiRsYW5nWydlcnJvcl9taXNzaW5nZXh0ZW5zaW9ucyddID0gJ0VzIG11c3MgbWluZGVzdGVucyBlaW5lIERhdGVpbmFtZW5zZXJ3ZWl0ZXJ1bmcgZmVzdGdlbGVndCB3ZXJkZW4nOwokbGFuZ1snZXJyb3JfbWlzc2luZ2ljb24nXSA9ICdEYWYmdXVtbDtyIG11c3MgZWluIElrb24gZmVzdGdlbGVndCB3ZXJkZW4nOwokbGFuZ1snZXJyb3Jfbm9zdWNocm93J10gPSAnRGllIGZlc3RnZWxlZ3RlIFplaWxlIGtvbm50ZSBuaWNodCBnZWZ1bmRlbiB3ZXJkZW4nOwokbGFuZ1snbmFtZV91bmtub3duJ10gPSAnVW5iZWthbm50JzsKJGxhbmdbJ2Rlc2NyaXB0aW9uX3Vua25vd24nXSA9ICdCZXNjaHJlaWJ1bmcgZGVyIERhdGVpdHlwZW4gZiZ1dW1sO3IgbmljaHQgJnV1bWw7YmVyZWluc3RpbW1lbmRlIERhdGVpZW4nOwokbGFuZ1snaW1hZ2UnXSA9ICdCaWxkJzsKJGxhbmdbJ2ljb24nXSA9ICdJa29uJzsKJGxhbmdbJ2V4dGVuc2lvbnMnXSA9ICdEYXRlaW5hbWVuc2Vyd2VpdGVydW5nZW4nOwokbGFuZ1snYWRkZmlsZXR5cGUnXSA9ICdFaW5lbiBuZXVlbiBEYXRlaXR5cGVuIGhpbnp1ZiZ1dW1sO2dlbic7CiRsYW5nWydmaWxlX3R5cGVzJ10gPSAnRGF0ZWl0eXBlbic7CiRsYW5nWydlcnJvcl9ub2NhdGVnb3J5aWQnXSA9ICdFcyB3dXJkZSBrZWluZSBLYXRlZ29yaWUtSUQgZWluZ2VnZWJlbic7CiRsYW5nWydlcnJvcl9ub2NhdGVnb3J5J10gPSAnRXMgd3VyZGUga2VpbmUgS2F0ZWdvcmllLUlEIGVpbmdlZ2ViZW4nOwokbGFuZ1snZXJyb3JfdGVtcGxhdGVuYW1lZXhpc3RzJ10gPSAnRXMgZXhpc3RpZXJ0IGJlcmVpdHMgZWluIFRlbXBsYXRlIG1pdCBkaWVzZW0gTmFtZW4uJzsKJGxhbmdbJ3Byb21wdF90ZW1wbGF0ZW5hbWUnXSA9ICdUZW1wbGF0ZS1OYW1lJzsKJGxhbmdbJ3Byb21wdF90ZW1wbGF0ZSddID0gJ1RlbXBsYXRlICc7CiRsYW5nWydwcm9tcHRfbmV3dGVtcGxhdGUnXSA9ICdFaW4gbmV1ZXMgVGVtcGxhdGUgZXJzdGVsbGVuJzsKJGxhbmdbJ2hlbHBfT25Eb3dubG9hZCddID0gJzxwPkVpbiBFcmVpZ25pcywgd2VubiBlaW4gVXNlciBlaW5lIERhdGVpIGhlcnVudGVyZ2VsYWRlbiBoYXQ8L3A+DQo8aDQ+UGFyYW1ldGVyPC9oND4NCjx1bD4NCjxsaT48ZW0+aWQ8L2VtPiAtIElEIGRlciBob2NoZ2VsYWRlbmVuIERhdGVpPC9saT4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gRGF0ZWluYW1lPC9saT4NCjxsaT48ZW0+aXA8L2VtPiAtIElQLUFkcmVzc2UgZGVzIGhlcnVudGVybGFkZW5kZW4gVXNlcnM8L2xpPg0KPC91bD4NCic7CiRsYW5nWydoZWxwX09uRGVsZXRlQ2F0ZWdvcnknXSA9ICc8cD5FaW4gRXJlaWduaXMsIHdlbm4gZWluZSBLYXRlZ29yaWUgZ2VsJm91bWw7c2NodCB3dXJkZTwvcD4NCjxoND5QYXJhbWV0ZXI8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBOYW1lIGRlciBLYXRlZ29yaWU8L2xpPg0KPGxpPjxlbT5wYXRoPC9lbT4gLSBQZmFkIGRlciBLYXRlZ29yaWU8L2xpPg0KPC91bD4NCic7CiRsYW5nWydoZWxwX09uQ3JlYXRlQ2F0ZWdvcnknXSA9ICc8cD5FaW4gRXJlaWduaXMsIHdlbm4gZWluZSBLYXRlZ29yaWUgZXJzdGVsbHQgd3VyZGU8L3A+DQo8aDQ+UGFyYW1ldGVyPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gTmFtZSBkZXIgS2F0ZWdvcmllPC9saT4NCjxsaT48ZW0+ZGVzY3JpcHRpb248L2VtPiAtIEJlc2NocmVpYnVuZyBkZXIgS2F0ZWdvcmllPC9saT4NCjxsaT48ZW0+cGF0aDwvZW0+IC0gS2F0ZWdvcmllcGZhZDwvbGk+DQo8bGk+PGVtPnBhdGg8L2VtPiAtIEVpbiBGbGFnLCBkZXIgYW56ZWlndCwgb2IgZGllIEthdGVnb3JpZSBnZWxpc3RldCB3ZXJkZW4gc29sbDwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2hlbHBfT25SZW1vdmUnXSA9ICc8cD5FaW4gRXJlaWduaXMsIHdlbm4gZWluZSBEYXRlaSAmdXVtbDtiZXIgZGllIEFkbWluaXN0cmF0aW9uIG9kZXIgZGFzIEZyb250ZW5kIGVudGZlcm50IHd1cmRlPC9wPg0KPGg0PlBhcmFtZXRlcjwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIE5hbWUgZGVyIGVudGZlcm50ZW4gRGF0ZWk8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gSUQgZGVyIGVudGZlcm50ZW4gRGF0ZWk8L2xpPg0KPGxpPjxlbT5jYXRlZ29yeV9pZDwvZW0+IC0gSUQgZGVyIEthdGVnb3JpZTwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2hlbHBfT25VcGxvYWQnXSA9ICc8cD5FaW4gRXJlaWduaXMsIHdlbm4gZWluZSBEYXRlaSAmdXVtbDtiZXIgZGllIEFkbWluaXN0cmF0aW9uIG9kZXIgZGFzIEZyb250ZW5kIGhvY2hnZWxhZGVuIHd1cmRlPC9wPg0KPGg0PlBhcmFtZXRlcjwvaDQ+DQo8dWw+DQo8bGk+PGVtPmNhdGVnb3J5PC9lbT4gLSBOYW1lIGRlciBLYXRlZ29yaWU8L2xpPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBOYW1lIGRlciBob2NoZ2VsYWRlbmVuIERhdGVpPC9saT4NCjxsaT48ZW0+c2l6ZTwvZW0+IC0gR3Imb3VtbDsmc3psaWc7ZSBkZXIgaG9jaGdlbGFkZW5lbiBEYXRlaTwvbGk+DQo8bGk+PGVtPnN1bW1hcnk8L2VtPiAtIEt1cnpiZXNjaHJlaWJ1bmcgZGVyIGhvY2hnZWxhZGVuZW4gRGF0ZWkgKGthbm4gbGVlciBzZWluKTwvZW0+PC9saT4NCjxsaT48ZW0+ZGVzY3JpcHRpb248L2VtPiAtIGRpZSBsYW5nZSBCZXNjaHJlaWJ1bmcgZGVyIGhvY2hnZWxhZGVuZW4gRGF0ZWkgKGthbm4gbGVlciBzZWluKTwvZW0+PC9saT4NCjxsaT48ZW0+YXV0aG9yPC9lbT4gLSBBdXRvciBkZXIgaG9jaGdlbGFkZW5lbiBEYXRlaSAoZmFsbHMgdmVyZiZ1dW1sO2diYXIpPC9lbT48L2xpPg0KPGxpPjxlbT5pcF9hZGRyZXNzPC9lbT4gLSBJbnRlcm5ldC1BZHJlc3NlIGRlcyBDbGllbnRzLCBkZXIgZGllIERhdGVpIGhvY2hnZWxhZGVuIGhhdDwvbGk+DQo8L3VsPic7CiRsYW5nWydpbmZvX2V2ZW50X29uZGVsZXRlY2F0ZWdvcnknXSA9ICdFcmVpZ25pcywgd2VubiBlaW5lIEthdGVnb3JpZSBnZWwmb3VtbDtzY2h0IHd1cmRlJzsKJGxhbmdbJ2luZm9fZXZlbnRfb25jcmVhdGVjYXRlZ29yeSddID0gJ0VyZWlnbmlzLCB3ZW5uIGVpbmUgS2F0ZWdvcmllIGVyc3RlbGx0IHd1cmRlJzsKJGxhbmdbJ2luZm9fZXZlbnRfb25kb3dubG9hZCddID0gJ0VyZWlnbmlzLCB3ZW5uIGVpbmUgRGF0ZWkgaGVydW50ZXIgZ2VsYWRlbiB3dXJkZSc7CiRsYW5nWydpbmZvX2V2ZW50X29udXBsb2FkJ10gPSAnRXJlaWduaXMsIHdlbm4gZWluZSBuZXVlIERhdGVpIGhvY2hnZWxhZGVuIHd1cmRlJzsKJGxhbmdbJ2luZm9fZXZlbnRfb25yZW1vdmUnXSA9ICdFcmVpZ25pcywgd2VubiBlaW5lIERhdGVpIGVudGZlcm50IHd1cmRlJzsKJGxhbmdbJ3RpdGxlX3VzZXJ0YWdfb251cGxvYWQnXSA9ICdCZW51dHplcmRlZmluaWVydGVyIFRhZywgZGVyIGF1ZmdlcnVmZW4gd2lyZCwgd2VubiBkaWUgRGF0ZWkgdm9sbHN0JmF1bWw7bmRpZyBob2NoZ2VsYWRlbiBpc3QnOwokbGFuZ1snbm9uZSddID0gJ05pY2h0cyc7CiRsYW5nWydtYXRjaGVzZm91bmQnXSA9ICcmVXVtbDtiZXJlaW5zdGltbXVuZ2VuIGdlZnVuZGVuJzsKJGxhbmdbJ2ZpbHRlciddID0gJ0ZpbHRlciAnOwokbGFuZ1sndGl0bGVfcmVkaXJlY3RvbnVwbG9hZCddID0gJ0RlbiBCZW51dHplciBuYWNoIGRlbSBIb2NobGFkZW4gZWluZXIgRGF0ZWkgYXVmIGRpZXNlIFNlaXRlIHdlaXRlcmxlaXRlbiAoSUQvQWxpYXMpJzsKJGxhbmdbJ2RldGFpbHMnXSA9ICdEZXRhaWxzICc7CiRsYW5nWydjb25maXJtX3ByZWZlcmVuY2VzJ10gPSAnV29sbGVuIFNpZSB3aXJrbGljaCBkaWUgRWluc3RlbGx1bmdlbiAmYXVtbDtuZGVybj8nOwokbGFuZ1snZXJyb3Jfbm9maWxlc3VwbG9hZGVkJ10gPSAnRXMgd3VyZGVuIGtlaW5lIERhdGVpZW4gaG9jaGdlbGFkZW4uJzsKJGxhbmdbJ3Byb21wdF9yZXBsYWNlJ10gPSAnJlV1bWw7YmVyc2NocmVpYmVuIGVybGF1YmVuJzsKJGxhbmdbJ2luZm9fcmVwbGFjZSddID0gJ0RhdGVpZW4gbWl0IGRlbSBnbGVpY2hlbiBOYW1lbiBlcnNldHplbiAob2huZSAmQXVtbDtuZGVydW5nIGRlciBJRCknOwokbGFuZ1sncGFyYW1fbm9faW5pdGlhbCddID0gJ0tlaW5lIGVpbmxlaXRlbmRlbiBFcmdlYm5pc3NlIGFuemVpZ2VuLCB3ZW5uIGRlciBGaWx0ZXIgYWt0aXZpZXJ0IGlzdCc7CiRsYW5nWydwYXJhbV9rZXknXSA9ICdFaW4genVzJmF1bWw7dHpsaWNoZXIgU2NobCZ1dW1sO3NzZWwgZiZ1dW1sO3IgZGllIGsmdXVtbDtuZnRpZ2UgVmVyd2FsdHVuZyB2b24gaG9jaGdlbGFkZW5lbiBEYXRlaWVuLiBEaWVzZXIgU2NobCZ1dW1sO3NzZWwga2FubiBlaW4ga29kaWVydGVyIFN0cmluZyB3aWUgZXR3YTogJiMwMzk7ZmV1c2Vyczp1aWQmIzAzOTsgb2RlciAmYXVtbDtobmxpY2ggc2VpbiBrYW5uLiAgRGllc2VyIFBhcmFtZXRlciB3aXJkIG51ciBiZW4mb3VtbDt0aWd0LCB3ZW5uIGRhcyBVcGxvYWRzLU1vZHVsIGluIGVpbmVtIGFuZGVyZW4gTW9kdWwgZWluZ2ViZXR0ZXQgd2lyZCc7CiRsYW5nWydwYXJhbV9ub2F1dGhvciddID0gJ1ZlcmJpcmd0IGRhcyBGZWxkIEF1dG9yIGltIEZvcm11bGFyIHp1bSBIb2NobGFkZW4uIERpZXNlciBQYXJhbWV0ZXIgaXN0IG51ciBtJm91bWw7Z2xpY2gsIHdlbm4gZGVyIE1vZHVzICYjMDM5O3VwbG9hZCYjMDM5OyBpc3QuIFdlbm4gZGFzIEZyb250ZW5kVXNlcnMtTW9kdWwgaW5zdGFsbGllcnQgdW5kIGVpbiBCZW51dHplciBha3R1ZWxsIGFuZ2VtZWxkZXQgaXN0LCBlbnRoJmF1bWw7bHQgZGFzIHZlcmJvcmdlbmUgRmVsZCBkZXNzZW4gTmFtZW4nOwokbGFuZ1sncGFyYW1fdXBsb2FkX2lkJ10gPSAndXBsb2FkX2lkPSZxdW90O2lkJnF1b3Q7IC0gZGVmaW5pZXJ0IGVpbmUgZWluemVsbmUgRGF0ZWkgZiZ1dW1sO3IgZWluZW4gTGluayBvZGVyIGYmdXVtbDtyIGRlbiBTaW5nbGUtTW9kdXM8L2xpPic7CiRsYW5nWydwYXJhbV9kZXRhaWx0ZW1wbGF0ZSddID0gJ0RhcyBUZW1wbGF0ZSBtaXQgZGllc2VtIE5hbWVuIGYmdXVtbDtyIGRlbiBkZXRhaWxpZXJ0ZW4gQmVyaWNodCB2ZXJ3ZW5kZW4uJzsKJGxhbmdbJ3BhcmFtX3RlbXBsYXRlJ10gPSAnVmVyd2VuZGV0IGRhcyBUZW1wbGF0ZSBtaXQgZGllc2VtIE5hbWVuIGYmdXVtbDtyIGRpZXNlbiBCZXJpY2h0IGJ6dy4gZGFzIEZvcm11bGFyLiBEaWVzZXMgVGVtcGxhdGUgcnVmdCBlbnRzcHJlY2hlbmQgZGVtIGZlc3RnZWxlZ3RlbiBNb2R1cyBhdXRvbWF0aXNjaCBlaW4gd2VpdGVyZXMgVGVtcGxhdGUgbWl0IGRlbSB2b3JnZWdlYmVuZW4gTmFtZW4gYXVmJzsKJGxhbmdbJ3BhcmFtX2ZpbHRlciddID0gJ0RhcyBGaWx0ZXItRm9ybXVsYXIgYW56ZWlnZW4gKGZhbGxzIGRpZXNlciBQYXJhbWV0ZXIgYXVmIGlyZ2VuZCBlaW5lbiBXZXJ0IGdlc2V0enQgd3VyZGUpJzsKJGxhbmdbJ3BhcmFtX25vX2ludGl0aWFsJ10gPSAnSXN0IG51ciBuJnV1bWw7dHpsaWNoLCB3ZW5uIGRlciBGaWx0ZXItUGFyYW1ldGVyIGdlc2V0enQgd3VyZGUuIFN0YW5kYXJkbSZhdW1sOyZzemxpZztpZyB6ZWlndCBkaWVzZXIgUGFyYW1ldGVyIGFuLCB3ZWxjaGUgZWlubGVpdGVuZGVuIEVyZ2Vibmlzc2UgenVyJnV1bWw7Y2tnZWdlYmVuIHdlcmRlbiBzb2xsZW4uJzsKJGxhbmdbJ3BhcmFtX2ZpbGV0eXBlcyddID0gJ1plaWd0IG51ciBEYXRlaWVuIGFuLCBkZXJlbiBUeXAgaW4gZGVyIG1pdCBLb21tYXRhIGdldHJlbm50ZW4gTGlzdGUgYXVmZ2VmJnV1bWw7aHJ0IGlzdCc7CiRsYW5nWydwYXJhbV9zb3J0b3JkZXInXSA9ICcgIA0KICA8cD5Tb3J0aWVycmVpaGVuZm9sZ2UNCiAgPHVsPg0KICA8bGk+PGVtPmRhdGVfYXNjPC9lbT4gLSBzb3J0aWVydCBhdWZzdGVpZ2VuZCBuYWNoIERhdHVtPC9saT4NCiAgPGxpPjxlbT5kYXRlX2Rlc2M8L2VtPiAtIHNvcnRpZXJ0IGFic3RlaWdlbmQgbmFjaCBEYXR1bTwvbGk+DQogIDxsaT48ZW0+bmFtZV9hc2M8L2VtPiAtIHNvcnRpZXJ0IGF1ZnN0ZWlnZW5kIG5hY2ggTmFtZTwvbGk+DQogIDxsaT48ZW0+bmFtZV9kZXNjPC9lbT4gLSBzb3J0aWVydCBhYnN0ZWlnZW5kIG5hY2ggTmFtZTwvbGk+DQogIDxsaT48ZW0+c2l6ZV9hc2M8L2VtPiAtIHNvcnRpZXJ0IGF1ZnN0ZWlnZW5kIG5hY2ggR3Imb3VtbDsmc3psaWc7ZTwvbGk+DQogIDxsaT48ZW0+c2l6ZV9kZXNjPC9lbT4gLSBzb3J0aWVydCBhYnN0ZWlnZW5kIG5hY2ggR3Imb3VtbDsmc3psaWc7ZTwvbGk+DQogIDxsaT48ZW0+YXV0aG9yX2FzYzwvZW0+IC0gc29ydGllcnQgYXVmc3RlaWdlbmQgbmFjaCBBdXRvcjwvbGk+DQogIDxsaT48ZW0+YXV0aG9yX2Rlc2M8L2VtPiAtIHNvcnRpZXJ0IGFic3RlaWdlbmQgbmFjaCBBdXRvcjwvbGk+DQogIDxsaT48ZW0+aXBfYXNjPC9lbT4gLSAgc29ydGllcnQgYXVmc3RlaWdlbmQgbmFjaCBkZXIgSVAtQWRyZXNzZTwvbGk+DQogIDxsaT48ZW0+aXBfZGVzYzwvZW0+IC0gc29ydGllcnQgYWJzdGVpZ2VuZCBuYWNoIGRlciBJUC1BZHJlc3NlPC9saT4NCiAgPGxpPjxlbT5kZXNjX2FzYzwvZW0+IC0gc29ydGllcnQgYXVmc3RlaWdlbmQgbmFjaCBCZXNjaHJlaWJ1bmc8L2xpPg0KICA8bGk+PGVtPmRlc2NfZGVzYzwvZW0+IC0gc29ydGllcnQgYWJzdGVpZ2VuZCBuYWNoIEJlc2NocmVpYnVuZzwvbGk+DQogIDxsaT48ZW0+ZG93bmxvYWRzX2FzYzwvZW0+IC0gc29ydGllcnQgYXVmc3RlaWdlbmQgbmFjaCBEb3dubG9hZC1aJmF1bWw7aGxlci48L2xpPg0KICA8bGk+PGVtPmRvd25sb2Fkc19kZXNjPC9lbT4gLSBzb3J0aWVydCBhYnN0ZWlnZW5kIG5hY2ggRG93bmxvYWQtWiZhdW1sO2hsZXIuPC9saT4NCiAgPGxpPjxlbT5yYW5kb208L2VtPiAtIHp1ZiZhdW1sO2xsaWdlIFJlaWhlbmZvbGdlPC9saT4NCiAgPC91bD4NCiAgPC9wPic7CiRsYW5nWydwYXJhbV9saXN0aW5ndGVtcGxhdGUnXSA9ICdEYXMgVGVtcGxhdGUsIHdlbGNoZXMgZiZ1dW1sO3IgZGllIEthdGVnb3JpZWxpc3RlIHZlcndlbmRldCB3ZXJkZW4gc29sbCwgbmFjaGRlbSBkaWUgS2F0ZWdvcmllLVp1c2FtbWVuZmFzc3VuZ3NzZWl0ZSBnZWtsaWNrdCB3dXJkZSc7CiRsYW5nWydwYXJhbV9saXN0aW5nc29ydG9yZGVyJ10gPSAnRGllIFNvcnRpZXJyZWloZW5mb2xnZSAoc2llaGUgcGFyYW1fc29ydG9yZGVyKSwgZGllIGYmdXVtbDtyIGRpZSBLYXRlZ29yaWVsaXN0ZSB2ZXJ3ZW5kZXQgd2VyZGVuIHNvbGwsIG5hY2hkZW0gZGllIEthdGVnb3JpZW4tWnVzYW1tZW5mYXNzdW5nc3NlaXRlIGdla2xpY2t0IHd1cmRlJzsKJGxhbmdbJ3BhcmFtX2ZpbGVleHRlbnNpb25zJ10gPSAnZmlsZV9leHRlbnNpb25zPSZxdW90O2V4dDEsZXh0MixleHQzJnF1b3Q7DQo8cD5Jc3QgbnVyIGcmdXVtbDtsdGlnLCB3ZW5uIGRlciBQYXJhbWV0ZXIgbW9kZT11cGxvYWQgaXN0LiBEaWVzZXIgUGFyYW1ldGVyIGxlZ3QgZGllIERhdGVpdHlwZW4gZmVzdCwgZGllIGhvY2hnZWxhZGVuIHdlcmRlbiBkJnV1bWw7cmZlbi4gIERpZSBWb3JlaW5zdGVsbHVuZ2VuIGRlcyBNb2R1bHMgd2VyZGVuIGRhYmVpICZ1dW1sO2JlcnNjaHJpZWJlbi48L3A+JzsKJGxhbmdbJ3BhcmFtX2NvdW50J10gPSAnY291bnQ9JnF1b3Q7TiZxdW90Ow0KPHA+RWluIFBhcmFtZXRlciwgdW0gbnVyIGRpZSBlcnN0ZW4gJnF1b3Q7TiZxdW90OyBFcmdlYm5pc3NlIGVpbmVyIEFiZnJhZ2UgYXVmenVsaXN0ZW4uIEVpbiBTZWl0ZW51bWJydWNoIHcmYXVtbDtyZSB6d2FyIGJlc3NlciwgYWJlciBiaXMgZGFoaW4gZ2lidHMgZGllc2VuIFRyaWNrLjwvcD4nOwokbGFuZ1sncGFyYW1fY2F0ZWdvcnknXSA9ICdjYXRlZ29yeT0mcXVvdDtuYW1lJnF1b3Q7DQo8cD48Yj5IaW53ZWlzOjwvYj4gY2F0ZWdvcnkga2FubiBhdWNoIGRlbiBXZXJ0ICZxdW90O2FsbCZxdW90OyBoYWJlbi4gRGFubiB3ZXJkZW4gYWxsZSBob2NoZ2VsYWRlbmVuIERhdGVpZW4gaW4gYWxsZW4gPGVtPmdlbGlzdGV0ZW48L2VtPiBLYXRlZ29yaWVuIGFuZ2V6ZWlndC48L3A+JzsKJGxhbmdbJ3BhcmFtX21vZGUnXSA9ICcgDQogPHVsPg0KICA8bGk+PGVtPmRldGFpbGVkPC9lbT4gLSB6ZWlndCBlaW5lIGRldGFpbGxpZXJ0ZSBMaXN0ZSBhbGxlciBEYXRlaWVuIGRpZXNlciBLYXRlZ29yaWU8L2xpPg0KICA8bGk+PGVtPnNpbmdsZTwvZW0+IC0gemVpZ3QgZWluZW4gZGV0YWlsbGllcnRlbiBCZXJpY2h0ICZ1dW1sO2JlciBlaW5lIGJlc3RpbW10ZSwgaG9jaGdlbGFkZW5lIERhdGVpPC9saT4NCiAgPGxpPjxlbT51cGxvYWQ8L2VtPiAtIHplaWd0IGRlbiBCZXN1Y2hlcm4gZGVyIFdlYnNlaXRlIGVpbiBGb3JtdWxhciB6dW0gSG9jaGxhZGVuIGVpbmVyIERhdGVpPC9saT4NCiAgPGxpPjxlbT51cmwgPGk+b2RlcjwvaT4gbGluazwvZW0+IC0gemVpZ3QgZWluZW4gTGluayB6dSBlaW5lciBEYXRlaTwvbGk+DQogIDxsaT48ZW0+c3VtbWFyeTwvZW0+IC0gemVpZ3QgZWluZSB6dXNhbW1lbmdlZmFzc3RlIExpc3RlIGFsbGVyIERhdGVpZW4gaW4gZGVyIGFuZ2VnZWJlbmVuIEthdGVnb3JpZTwvbGk+DQogIDwvdWw+JzsKJGxhbmdbJ3BhcmFtX3NlbGVjdGZvcm0nXSA9ICdJbSAmIzAzOTtzZWxlY3QmIzAzOTstTW9kdXMgZW50aCZhdW1sO2x0IGRpZXNlciBQYXJhbWV0ZXIgZGllIEZvcm11bGFyLUlEIGRlcyAmdXVtbDtiZXJnZW9yZG5ldGVuIEZvcm11bGFycy4gS2FubiB2ZXJ3ZW5kZXQgd2VyZGVuLCB1bSBiZXN0aW1tdGUgUGFyYW1ldGVyIHdlaXRlcnp1Z2ViZW4uJzsKJGxhbmdbJ3BhcmFtX3NlbGVjdG5hbWUnXSA9ICdJbSAmIzAzOTtzZWxlY3QmIzAzOTstTW9kdXMga2FubiBtaXQgZGllc2VtIFBhcmFtZXRlciBkZXIgTmFtZXMgZGVzIEZlbGRlcyBmZXN0Z2VsZWd0IHdlcmRlbi4nOwokbGFuZ1sncGFyYW1fc2VsZWN0dmFsdWUnXSA9ICdJbSAmIzAzOTtzZWxlY3QmIzAzOTstTW9kdXMga2FubiBtaXQgZGllc2VtIFBhcmFtZXRlciBkZXIgdm9yZWluZ2VzdGVsbHRlIFdlcnQgZGVzIEZlbGRlcyBmZXN0Z2VsZWd0IHdlcmRlbi4nOwokbGFuZ1sncGFyYW1fc2VsZWN0bm9uZSddID0gJ0ltICYjMDM5O3NlbGVjdCYjMDM5Oy1Nb2R1cyBrYW5uIG1pdCBkaWVzZW0gUGFyYW1ldGVyIGZlc3RnZWxlZ3Qgd2VyZGVuLCBvYiAmIzAzOTtub25lJiMwMzk7IGVpbmUgZyZ1dW1sO2x0aWdlIEF1c3dhaGwgaXN0Lic7CiRsYW5nWydyZXR1cm50b21vZHVsZSddID0gJ1p1ciZ1dW1sO2NrIHp1ciBNb2R1bG9iZXJmbCZhdW1sO2NoZSc7CiRsYW5nWydlcnJvcl9ub2NhdGVnb3JpZXMnXSA9ICdFcyB3dXJkZW4ga2VpbmUgS2F0ZWdvcmllbiBkZWZpbmllcnQuJzsKJGxhbmdbJ3RpdGxlX2VuZm9yY2VleHRlbnNpb25zJ10gPSAnRXJmb3JkZXJ0IE5hbWVuc2Vyd2VpdGVydW5nZW4gZiZ1dW1sO3IgYWxsZSBob2NoZ2VsYWRlbmVuIERhdGVpZW4nOwokbGFuZ1sncmVzdG9yZWRlZmF1bHRzY29uZmlybSddID0gJ0RpZXMgc2V0enQgZGFzIFRlbXBsYXRlIGF1ZiBkaWUgcHJvZ3JhbW1zZWl0aWdlIFZvcmVpbnN0ZWxsdW5nIHp1ciZ1dW1sO2NrLiBBbGxlICZBdW1sO25kZXJ1bmdlbiBnZWhlbiBkYWJlaSB2ZXJsb3Jlbi4gV29sbGVuIFNpZSBkYXMgd2lya2xpY2g/JzsKJGxhbmdbJ3RodW1ibmFpbCddID0gJ1ZvcnNjaGF1YmlsZCc7CiRsYW5nWyduZXd0aHVtYm5haWwnXSA9ICdFaW4gbmV1ZXMgVm9yc2NoYXViaWxkIGhvY2hsYWRlbic7CiRsYW5nWydpbmZvX3N1bW1hcnknXSA9ICdFaW5lIGt1cnplIEJlc2NocmVpYnVuZyBkZXIgRGF0ZWkgKHdpcmQgZGllcyBsZWVyIGdlbGFzc2VuLCB3aXJkIGRlciBEYXRlaW5hbWUgb2huZSBFcndlaXRlcnVuZyB2ZXJ3ZW5kZXQpJzsKJGxhbmdbJ2luZm9fY2F0ZWdvcnluYW1lJ10gPSAnRWluIGt1cnplciBOYW1lIGYmdXVtbDtyIElocmUgS2F0ZWdvcmllJzsKJGxhbmdbJ2luZm9fY2F0ZWdvcnlkZXNjJ10gPSAnRWluZSBCZXNjaHJlaWJ1bmcgSWhyZXIgS2F0ZWdvcmllJzsKJGxhbmdbJ2luZm9fY2F0ZWdvcnlwYXRoJ10gPSAnRGFzIFVudGVydmVyemVpY2huaXMgaW0gVmVyemVpY2huaXMgL3VwbG9hZHMsIHdlbGNoZXMgZiZ1dW1sO3IgZGllIFNwZWljaGVydW5nIGRlciBEYXRlaWVuIGRpZXNlciBLYXRlZ29yaWUgdmVyd2VuZGV0IHdlcmRlbiBzb2xsLiBGYWxscyBkaWVzZXMgVmVyemVpY2huaXMgbm9jaCBuaWNodCBleGlzdGllcnQsIHdpcmQgZXMgZXJ6ZXVndC4nOwokbGFuZ1snaW5mb19kZXN0bmFtZSddID0gJ1ZlcndlbmRlbiBTaWUgZGFzIEZlbGQgJiMwMzk7SG9jaGxhZGVuIGFscyYjMDM5OywgdW0gZGVuIE5hbWVuIGRlciBob2NoZ2VsYWRlbmVuIERhdGVpIHp1IHZlciZhdW1sO25kZXJuLiBPaG5lIFZvcmdhYmUgd2lyZCBkZXIgRGF0ZWluYW1lIG5pY2h0IHZlciZhdW1sO25kZXJ0Lic7CiRsYW5nWydlcnJvcl9jYW50Y3JlYXRlZGlyZWN0b3J5J10gPSAnRGFzIFZlcnplaWNobmlzIGtvbm50ZSBuaWNodCBlcnN0ZWxsdCB3ZXJkZW4uJzsKJGxhbmdbJ2Vycm9yX25vbWFpbGVybW9kdWxlJ10gPSAnRGllIFZlcmJpbmR1bmcgenVtIENNU01haWxlci1Nb2R1bCBrb25udGUgbmljaHQgaGVyZ2VzdGVsbHQgd2VyZGVuLic7CiRsYW5nWyd1cGxvYWRfbm90aWZpY2F0aW9uJ10gPSAnRXMgd3VyZGUgZWluZSBuZXVlIERhdGVpIGhvY2hnZWxhZGVuLic7CiRsYW5nWyd0aXRsZV9lbWFpbF9vbl91cGxvYWQnXSA9ICdEaWUgQmVuYWNocmljaHRpZ3VuZyAmdXVtbDtiZXIgZWluZSBob2NoZ2VsYWRlbmUgRGF0ZWkgc2VuZGVuIGFuOic7CiRsYW5nWydlbWFpbF90ZW1wbGF0ZSddID0gJ0VtYWlsLVRlbXBsYXRlJzsKJGxhbmdbJ3RpdGxlX2R1bW15X2luZGV4X2h0bWwnXSA9ICdTb2xsIGluIGplZGVtIFZlcnplaWNobmlzIGVpbmUgRHVtbXktaW5kZXguaHRtbC1EYXRlaSBlcnN0ZWxsdCB3ZXJkZW4/PGJyLz48ZW0+QmVyZWl0cyBleGlzdGllcmVuZGUgaW5kZXguaHRtbC1EYXRlaWVuIGJsZWliZW4gZXJoYWx0ZW48L2VtPic7CiRsYW5nWydhYm91dCddID0gJyZVdW1sO2Jlcic7CiRsYW5nWydlcnJvcl9wZXJtaXNzaW9uZGVuaWVkJ10gPSAnWnVncmlmZiB2ZXJ3ZWlnZXJ0LiBCaXR0ZSBwciZ1dW1sO2ZlbiBTaWUgSWhyZSBCZXJlY2h0aWd1bmdlbi4nOwokbGFuZ1snZXJyb3JfY291bGRub3R3cml0ZSddID0gJ0tvbm50ZSBuaWNodCBnZXNjaHJpZWJlbiB3ZXJkZW4uJzsKJGxhbmdbJ2FkZGNhdGVnb3J5J10gPSAnS2F0ZWdvcmllIGhpbnp1ZiZ1dW1sO2dlbic7CiRsYW5nWydhbGwnXSA9ICdBbGxlJzsKJGxhbmdbJ2FyZXlvdXN1cmUnXSA9ICdXb2xsZW4gU2llIGRhcyB3aXJrbGljaD8nOwokbGFuZ1snYXV0aG9yJ10gPSAnQXV0b3InOwokbGFuZ1snY2FuY2VsJ10gPSAnQWJicmVjaGVuJzsKJGxhbmdbJ2Nhbm5vdG1vZGlmeXBhdGgnXSA9ICcoRGVyIFBmYWQga29ubnRlIG5pY2h0IGdlJmF1bWw7bmRlcnQgd2VyZGVuLiknOwokbGFuZ1snY2F0ZWdvcmllcyddID0gJ0thdGVnb3JpZW4nOwokbGFuZ1snY2F0ZWdvcnknXSA9ICdLYXRlZ29yaWUnOwokbGFuZ1snbWVzc2FnZV9jYXRlZ29yeWFkZGVkJ10gPSAnRGllIEthdGVnb3JpZSB3dXJkZSBlcmZvbGdyZWljaCBoaW56dWdlZiZ1dW1sO2d0Lic7CiRsYW5nWydkYXRlJ10gPSAnRGF0dW0nOwokbGFuZ1snZGF0ZXVwbG9hZGVkJ10gPSAnSG9jaGdlbGFkZW4gYW0nOwokbGFuZ1snZGVmYXVsdCddID0gJ1ZvcmVpbnN0ZWxsdW5nZW4nOwokbGFuZ1snZGVsZXRlJ10gPSAnTCZvdW1sO3NjaGVuJzsKJGxhbmdbJ2Rlc2NyaXB0aW9uJ10gPSAnQmVzY2hyZWlidW5nJzsKJGxhbmdbJ2Rlc3RuYW1lJ10gPSAnSG9jaGxhZGVuIGFscyc7CiRsYW5nWydkZXRhaWxfdGVtcGxhdGUnXSA9ICdEZXRhaWwtVGVtcGxhdGVzJzsKJGxhbmdbJ2Rvd25sb2FkZWQnXSA9ICdEaWUgRGF0ZWkgJXMgd3VyZGUgaGVydW50ZXJnZWxhZGVuLic7CiRsYW5nWydkb3dubG9hZHMnXSA9ICdIZXJ1bnRlcmdlbGFkZW5lIERhdGVpZW4nOwokbGFuZ1snZWRpdCddID0gJ0JlYXJiZWl0ZW4nOwokbGFuZ1snZWRpdGNhdGVnb3J5J10gPSAnS2F0ZWdvcmllIGJlYXJiZWl0ZW4nOwokbGFuZ1snZWRpdHVwbG9hZCddID0gJ0hvY2hnZWxhZGVuZSBEYXRlaSBiZWFyYmVpdGVuJzsKJGxhbmdbJ2Vycm9yJ10gPSAnRmVobGVyISc7CiRsYW5nWydlcnJvcl9wYXRoaW51c2UyJ10gPSAnRXMgZXhpc3RpZXJ0IGJlcmVpdHMgZWluZSBLYXRlZ29yaWUsIGRpZSBkaWVzZW4gUGZhZCAoJXMpIHZlcndlbmRldCc7CiRsYW5nWydlcnJvcl9wYXRoaW51c2UnXSA9ICdFcyBleGlzdGllcnQgYmVyZWl0cyBlaW5lIEthdGVnb3JpZSBtaXQgZGllc2VtIFBmYWQuJzsKJGxhbmdbJ2Vycm9yX2NhdGVnb3J5ZXhpc3RzMiddID0gJ0ZlaGxlcjogRWluZSBLYXRlZ29yaWUgbWl0IGRlbSBOYW1lbiAlcyBleGlzdGllcnQgYmVyZWl0cyc7CiRsYW5nWydlcnJvcl9jYXRlZ29yeWV4aXN0cyddID0gJ0ZlaGxlcjogRGllIEthdGVnb3JpZSBleGlzdGllcnQgYmVyZWl0cyc7CiRsYW5nWydlcnJvcl9jYXRlZ29yeW5vdGVtcHR5J10gPSAnRmVobGVyOiBEaWUgS2F0ZWdvcmllIGthbm4gbmljaHQgZ2VsJm91bWw7c2NodCB3ZXJkZW4sIGRhIHNpZSBuaWNodCBsZWVyIGlzdCEnOwokbGFuZ1snZXJyb3JfY2F0ZWdvcnlub3Rmb3VuZCddID0gJ0ZlaGxlcjogS2F0ZWdvcmllIHd1cmRlIG5pY2h0IGdlZnVuZGVuISc7CiRsYW5nWydlcnJvcl9kYmVycm9yJ10gPSAnRmVobGVyOiBEYXRlbmJhbmtmZWhsZXIhJzsKJGxhbmdbJ2Vycm9yX2VtcHR5Y2F0ZWdvcnknXSA9ICdGZWhsZXI6IEthdGVnb3JpZS1GZWxkIGlzdCBsZWVyISc7CiRsYW5nWydlcnJvcl9lbXB0eXBhdGgnXSA9ICdGZWhsZXI6IFBmYWQgaXN0IGxlZXIhJzsKJGxhbmdbJ2Vycm9yX2ZpbGVleGlzdHMnXSA9ICdGZWhsZXI6IERpZSBEYXRlaSAlcyBleGlzdGllcnQgYmVyZWl0cy4nOwokbGFuZ1snZXJyb3JfZmlsZW5vdGZvdW5kJ10gPSAnRmVobGVyOiBEaWUgRGF0ZWkgJXMgd3VyZGUgbmljaHQgZ2VmdW5kZW4uJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ0ZlaGxlcjogRGFzIE1vZHVsIHd1cmRlIG1pdCBuaWNodCBhdXNyZWljaGVuZGVuIFBhcmFtZXRlcm4gYXVmZ2VydWZlbiEgPGJyLz5EZXIgZmVobGVuZGUgUGFyYW1ldGVyIGlzdDogJXMnOwokbGFuZ1snZXJyb3JfaW52YWxpZGF1dGhvciddID0gJ0ZlaGxlcjogQXV0b3IgaXN0IHVuZyZ1dW1sO2x0aWcgKG9kZXIgbGVlcikuJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRjYXRlZ29yeSddID0gJ0ZlaGxlcjogS2F0ZWdvcmllIGlzdCB1bmcmdXVtbDtsdGlnIChvZGVyIGxlZXIpLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkZGVzY3JpcHRpb24nXSA9ICdGZWhsZXI6IEJlc2NocmVpYnVuZyBpc3QgdW5nJnV1bWw7bHRpZyAob2RlciBsZWVyKS4nOwokbGFuZ1snZXJyb3JfaW52YWxpZGZpbGUnXSA9ICdGZWhsZXI6IERhdGVpbmFtZSBpc3QgdW5nJnV1bWw7bHRpZyAob2RlciBsZWVyKS4nOwokbGFuZ1snZXJyb3JfaW52YWxpZHVwbG9hZGZpbGVuYW1lJ10gPSAnRmVobGVyOiBEYXRlaWVuIG1pdCBkaWVzZXIgTmFtZW5zZXJ3ZWl0ZXJ1bmcgc2luZCBuaWNodCBlcmxhdWJ0ICglcykuJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1cGxvYWRpZCddID0gJ0ZlaGxlcjogVW5nJnV1bWw7bHRpZ2UgSUQnOwokbGFuZ1snZXJyb3Jfbm9maWxlcyddID0gJ0ZlaGxlcjogS2VpbmUgZW50c3ByZWNoZW5kZW4gRGF0ZWllbiEnOwokbGFuZ1snZmlsZXMnXSA9ICdEYXRlaWVuJzsKJGxhbmdbJ2ZpeG1lJ10gPSAnTGVlcnplaWNoZW4gZW50ZmVybmVuJzsKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ0RhdGVpZW4gKFVwbG9hZHMtTW9kdWwpJzsKJGxhbmdbJ2lkJ10gPSAnSUQnOwokbGFuZ1snaW5zdGFsbGVkJ10gPSAnTW9kdWwgd3VyZGUgaW4gVmVyc2lvbiAlcyB3dXJkZSBpbnN0YWxsaWVydC4nOwokbGFuZ1snaXBfYWRkcmVzcyddID0gJ0lQLUFkcmVzc2UnOwokbGFuZ1snbW9kZGVzY3JpcHRpb24nXSA9ICdFaW4gTW9kdWwsIHdlbGNoZXMgZGVuIEJlbnV0emVybiBkYXMgSG9jaGxhZGVuIHVuZCBkYXMgVmVyd2FsdGVuIHZvbiBEYXRlaWVuIGVybSZvdW1sO2dsaWNodC4nOwokbGFuZ1snbmFtZSddID0gJ05hbWUgJzsKJGxhbmdbJ3JlbmFtZW1lc3NhZ2UnXSA9ICcmQXVtbDtuZGVybiBTaWUgaGllciBkZW4gTmFtZW4sIHVtIGRpZSBEYXRlaSB1bXp1YmVuZW5uZW4nOwokbGFuZ1sncGF0aCddID0gJ1BmYWQnOwokbGFuZ1sncGF0aG1lc3NhZ2UnXSA9ICcmQXVtbDtuZGVybiBTaWUgaGllciBkaWUgS2F0ZWdvcmllLCB1bSBkaWUgRGF0ZWkgaW4gZWluIGFuZGVyZXMgVmVyemVpY2huaXMgenUgdmVyc2NoaWViZW4uJzsKJGxhbmdbJ3BhdGhpbnVwbG9hZHMnXSA9ICcocmVsYXRpdiB6dW0gL3VwbG9hZHMgVmVyemVpY2huaXMpJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsJ10gPSAnPHA+RGFzIFVwbG9hZHMtTW9kdWwgd3VyZGUgZXJmb2xncmVpY2ggaW5zdGFsbGllcnQuIFN0ZWxsZW4gU2llIHNpY2hlciwgZGFzcyB6dXIgVmVyd2VuZHVuZyBkaWVzZXMgTW9kdWxzIGRpZSBCZXJlY2h0aWd1bmcgJnF1b3Q7TWFuYWdlIFVwbG9hZHMmcXVvdDsgZ2VzZXR6dCB3dXJkZSE8L3A+DQo8cD48c3Ryb25nPkFjaHR1bmc8L3N0cm9uZz4gLSBEaWUgRnVua3Rpb25zZiZhdW1sO2hpZ2tlaXQgZGllc2VzIE1vZHVscyBpc3Qgdm9uIHZlcnNjaGllZGVuZW4gV2VydGVuIElocmVyIFBIUC1Lb25maWd1cmF0aW9uIHdpZSB6dW0gQmVpc3BpZWwgcGhwJiMwMzk7cyBtZW1vcnlfbGltaXQsIHNhZmVfbW9kZSwgZmlsZV91cGxvYWRzLCB1cGxvYWRzX21heF9maWxlc2l6ZSB1bmQgbWF4X2V4ZWN1dGlvbl90aW1lIGFiaCZhdW1sO25naWcuIFVudGVyIFVtc3QmYXVtbDtuZGVuIG0mdXVtbDtzc2VuIGRpZXNlIFdlcnRlIGYmdXVtbDtyIGRpZSBGdW5rdGlvbnNmJmF1bWw7aGlna2VpdCBkaWVzZXMgTW9kdWxzIGFuZ2VwYXNzdCB3ZXJkZW4uIFNpZSBzb2xsdGVuIGRhaGVyIGdlZ2ViZW5lbmZhbGxzIEtvbnRha3QgbWl0IElocmVtIFByb3ZpZGVyIGF1Zm5laG1lbiwgdW0gZGllc2UgRWluc3RlbGx1bmdlbiBlbnRzcHJlY2hlbmQgSWhyZW4gQmVkJnV1bWw7cmZuaXNzZW4gYW56dXBhc3Nlbi48L3A+JzsKJGxhbmdbJ3Bvc3R1bmluc3RhbGwnXSA9ICdEYXMgVXBsb2Fkcy1Nb2R1bCB3dXJkZSBlbnRmZXJudC4gRXMgd3VyZGVuIGtlaW5lIERhdGVpZW4gYXVzIGRlbSAvdXBsb2Fkcy1WZXJ6ZWljaG5pcyBlbnRmZXJudCBvZGVyIGJlc2NoJmF1bWw7ZGlndC4nOwokbGFuZ1sncHJlZmVyZW5jZXMnXSA9ICdFaW5zdGVsbHVuZ2VuJzsKJGxhbmdbJ3ByZWZzdXBkYXRlZCddID0gJ0RpZSBNb2R1bGVpbnN0ZWxsdW5nZW4gd3VyZGVuIGFrdHVhbGlzaWVydC4nOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5ZGVzYyddID0gJ0Jlc2NocmVpYnVuZyc7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnlsaXN0YWJsZSddID0gJ0RpZSBEYXRlaWVuIGluIGRpZXNlbSBWZXJ6ZWljaG5pcyBrJm91bWw7bm5lbiBhbmdlemVpZ3Qgd2VyZGVuJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeW5hbWUnXSA9ICdOYW1lIGRlciBLYXRlZ29yaWUnOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5cGF0aCddID0gJ1NlcnZlcnBmYWQnOwokbGFuZ1sncHJvbXB0X2RlbGV0ZWRpcmVjdG9yeSddID0gJ0thdGVnb3JpZXZlcnplaWNobmlzIGwmb3VtbDtzY2hlbj8nOwokbGFuZ1sncHJvbXB0X21heF91cGxvYWRzaXplJ10gPSAnTWF4aW1hbCBlcmxhdWJ0ZSBEYXRlaWdyJm91bWw7JnN6bGlnO2UgKEtiKSc7CiRsYW5nWydwcm9tcHRfdmFsaWRfdXBsb2FkZXh0ZW5zaW9ucyddID0gJ0cmdXVtbDtsdGlnZSBEYXRlaW5lcndlaXRlcnVuZ2VuJzsKJGxhbmdbJ3NjYW4nXSA9ICdQciZ1dW1sO2Zlbic7CiRsYW5nWydzZWxlY3RjYXRlZ29yeSddID0gJ0thdGVnb3JpZSBhdXN3JmF1bWw7aGxlbic7CiRsYW5nWydzaXplJ10gPSAnR3Imb3VtbDsmc3psaWc7ZSc7CiRsYW5nWydzaXpla2InXSA9ICdHciZvdW1sOyZzemxpZztlIChLYiknOwokbGFuZ1snc3VibWl0J10gPSAnQWJzZW5kZW4nOwokbGFuZ1snc3VtbWFyeV90ZW1wbGF0ZSddID0gJ1p1c2FtbWVuZmFzc3VuZ3MtVGVtcGxhdGVzJzsKJGxhbmdbJ3N1bW1hcnknXSA9ICdadXNhbW1lbmZhc3N1bmcnOwokbGFuZ1sndGl0bGVfYWRtaW5fcGFuZWwnXSA9ICdVcGxvYWRzLU1vZHVsJzsKJGxhbmdbJ3RpdGxlX21vZF9hZG1pbiddID0gJ01vZHVsLUFkbWluaXN0cmF0aW9uJzsKJGxhbmdbJ3RpdGxlX21vZF9wcmVmcyddID0gJ01vZHVsZWluc3RlbGx1bmdlbic7CiRsYW5nWyd0aXRsZV9zdWJuZXRfZXhjbHVzaW9ucyddID0gJ1N1Ym5ldHMgdm9uIGRlciBTdGF0aXN0aWsgYXVzc2NobGllJnN6bGlnO2VuJzsKJGxhbmdbJ3RpdGxlX3ZhbGlkX3VwbG9hZGV4dGVuc2lvbnMnXSA9ICdHJnV1bWw7bHRpZ2UgTmFtZW5zZXJ3ZWl0ZXJ1bmdlbic7CiRsYW5nWyd1bmluc3RhbGxlZCddID0gJ01vZHVsIHd1cmRlIGRlaW5zdGFsbGllcnQuJzsKJGxhbmdbJ3VwZ3JhZGVkJ10gPSAnTW9kdWwgd3VyZGUgYXVmIFZlcnNpb24gJXMgYWt0dWFsaXNpZXJ0Lic7CiRsYW5nWyd1cGxvYWQnXSA9ICdIb2NobGFkZW4nOwokbGFuZ1sndXBsb2FkZWQnXSA9ICdEaWUgRGF0ZWkgJXMgd3VyZGUgdm9uICVzIGhvY2hnZWxhZGVuLic7CiRsYW5nWydyZXBsYWNlZCddID0gJ0RpZSBEYXRlaSAlcyB3dXJkZSBkdXJjaCAlcyBlcnNldHp0Lic7CiRsYW5nWydkZWxldGVkJ10gPSAnRGllIERhdGVpICVzIHd1cmRlIGdlbCZvdW1sO3NjaHQuJzsKJGxhbmdbJ3VwbG9hZGZvcm1fdGVtcGxhdGUnXSA9ICdUZW1wbGF0ZXMgaG9jaGxhZGVuJzsKJGxhbmdbJ3VzZXJuYW1lJ10gPSAnQmVudXR6ZXJuYW1lJzsKJGxhbmdbJ3dhcm5pbmdfZGVsZXRlY2F0ZWdvcnknXSA9ICdXQVJOVU5HOiBTZWllbiBTaWUgdm9yc2ljaHRpZywgd2VubiBTaWUgS2F0ZWdvcmllbiBsJm91bWw7c2NoZW4uIERpZSBEYXRlaWVuIGsmb3VtbDtubmVuIGRhYmVpIHZlcmxvcmVuIGdlaGVuLic7CiRsYW5nWyd1dG1hJ10gPSAnMTU2ODYxMzUzLjEyODcxMzIxMzMuMTMzMzczNzk1Ni4xMzMzNzM3OTU2LjEzMzM3Mzc5NTYuMSc7CiRsYW5nWyd1dG16J10gPSAnMTU2ODYxMzUzLjEzMzM3Mzc5NTYuMS4xLnV0bWNjbj0oZGlyZWN0KXx1dG1jc3I9KGRpcmVjdCl8dXRtY21kPShub25lKSc7CiRsYW5nWyd1dG1jJ10gPSAnMTU2ODYxMzUzJzsKPz4K]]></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/JzsKJGxhbmdbJ2F1dGhvciddID0gJ0F1dG9yJzsKJGxhbmdbJ2NhbmNlbCddID0gJ1QmdXVtbDtoaXN0YSc7CiRsYW5nWydjYW5ub3Rtb2RpZnlwYXRoJ10gPSAnKFRoZSBwYXRoIGNhbm5vdCBiZSBtb2RpZmllZCknOwokbGFuZ1snY2F0ZWdvcmllcyddID0gJ0thdGVnb29yaWFkJzsKJGxhbmdbJ2NhdGVnb3J5J10gPSAnS2F0ZWdvb3JpYSc7CiRsYW5nWydtZXNzYWdlX2NhdGVnb3J5YWRkZWQnXSA9ICdLYXRlZ29vcmlhIGVkdWthbHQgbGlzYXR1ZCc7CiRsYW5nWydkYXRlJ10gPSAnS3V1cCZhdW1sO2V2JzsKJGxhbmdbJ2RhdGV1cGxvYWRlZCddID0gJyZVdW1sO2xlc2xhYWRpbWlzZSBrdXVwJmF1bWw7ZXYnOwokbGFuZ1snZGVmYXVsdCddID0gJ1ZhaWtpbWlzaSB2JmF1bWw7JmF1bWw7cnR1c2VkJzsKJGxhbmdbJ2RlbGV0ZSddID0gJ0t1c3R1dGEnOwokbGFuZ1snZGVzY3JpcHRpb24nXSA9ICdLaXJqZWxkdXMnOwokbGFuZ1snZGVzdG5hbWUnXSA9ICdMYWUgJnV1bWw7bGVzIG5pbWVnYSc7CiRsYW5nWydkZXRhaWxfdGVtcGxhdGUnXSA9ICdEZXRhaWwgVGVtcGxhdGVzJzsKJGxhbmdbJ2Rvd25sb2FkZWQnXSA9ICdGaWxlICVzIHdhcyBkb3dubG9hZGVkLic7CiRsYW5nWydkb3dubG9hZHMnXSA9ICdEb3dubG9hZHMnOwokbGFuZ1snZWRpdCddID0gJ011dWRhJzsKJGxhbmdbJ2VkaXRjYXRlZ29yeSddID0gJ011dWRhIGthdGVnb29yaWEnOwokbGFuZ1snZWRpdHVwbG9hZCddID0gJ011dWRhICZ1dW1sO2xlc2xhYWRpbWlzdCc7CiRsYW5nWydlcnJvciddID0gJ1ZpZ2EhJzsKJGxhbmdbJ2Vycm9yX3BhdGhpbnVzZTInXSA9ICdLYXRlZ29vcmlhLCBtaXMga2FzdXRhYiB0ZWVkICglcyksIG9uIGp1YmEgb2xlbWFzJzsKJGxhbmdbJ2Vycm9yX3BhdGhpbnVzZSddID0gJ0thdGVnb29yaWEsIG1pcyBrYXN1dGFiIHNlZGEgdGVlZCwgb24ganViYSBvbGVtYXMnOwokbGFuZ1snZXJyb3JfY2F0ZWdvcnlleGlzdHMyJ10gPSAnVmlnYTogS2F0ZWdvb3JpYSBuaW1lZ2EgJXMganViYSBla3Npc3RlZXJpYic7CiRsYW5nWydlcnJvcl9jYXRlZ29yeWV4aXN0cyddID0gJ1ZpZ2E6IEthdGVnb29yaWEganViYSBla2lzdGVlcmliJzsKJGxhbmdbJ2Vycm9yX2NhdGVnb3J5bm90ZW1wdHknXSA9ICdWaWdhISBFaSBzYWEga3VzdHV0YWRhIGthdGVnb29yaWF0LCBtaXMgZWkgb2xlIHQmdXVtbDtoaSc7CiRsYW5nWydlcnJvcl9jYXRlZ29yeW5vdGZvdW5kJ10gPSAnVmlnYTogS2F0ZWdvb3JpYXQgZWkgbGVpdHVkISc7CiRsYW5nWydlcnJvcl9kYmVycm9yJ10gPSAnVmlnYTogQW5kbWViYWFzaSB2aWdhISc7CiRsYW5nWydlcnJvcl9lbXB0eWNhdGVnb3J5J10gPSAnVmlnYTogVCZ1dW1sO2hpIGthdGVnb29yaWEhJzsKJGxhbmdbJ2Vycm9yX2VtcHR5cGF0aCddID0gJ1ZpZ2E6IFQmdXVtbDtoaSB0ZWUhJzsKJGxhbmdbJ2Vycm9yX2ZpbGVleGlzdHMnXSA9ICdWaWdhISBGYWlsICVzIGp1YmEgZWtzaXN0ZWVyaWIuJzsKJGxhbmdbJ2Vycm9yX2ZpbGVub3Rmb3VuZCddID0gJ1ZpZ2EhIEZhaWxpICVzIGVpIGxlaXR1ZC4nOwokbGFuZ1snZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJ10gPSAnVmlnYTogTW9vZHVsaWxlIGVpIGFudHVkIHBpaXNhdmFsdCBwYXJhbWVldHJlaWQhPGJyLz5QdXVkdXYgcGFyYW1lZXRlciBvbjogJXMnOwokbGFuZ1snZXJyb3JfaW52YWxpZGF1dGhvciddID0gJ1ZpZ2E6IFZhbGUgKHYmb3RpbGRlO2kgdCZ1dW1sO2hpKSBhdXRvci4nOwokbGFuZ1snZXJyb3JfaW52YWxpZGNhdGVnb3J5J10gPSAnVmlnYTogVmFsZSAodiZvdGlsZGU7aSB0JnV1bWw7aGkpIGthdGVnb29yaWEuJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRkZXNjcmlwdGlvbiddID0gJ1ZpZ2E6IFZhbGUgKHYmb3RpbGRlO2kgdCZ1dW1sO2hpKSBraXJqZWxkdXMuJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRmaWxlJ10gPSAnVmlnYTogVmFsZSAodiZvdGlsZGU7aSB0JnV1bWw7aGkpIGZhaWxpbmltaS4nOwokbGFuZ1snZXJyb3JfaW52YWxpZHVwbG9hZGZpbGVuYW1lJ10gPSAnVmlnYTogU2VsbGlzZSBuaW1lZ2EgZmFpbGlkICh0Jm90aWxkZTtlbiZhdW1sO29saXNlbHQgbGFpZW5kKSBlaSBvbGUgbHViYXR1ZCAoJXMpLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXBsb2FkaWQnXSA9ICdWaWdhOiBWYWxlICZ1dW1sO2xlc2xhYWRpbWlzZSBpZCc7CiRsYW5nWydlcnJvcl9ub2ZpbGVzJ10gPSAnVmlnYTogRWkgbGVpdHVkIGZhaWxlISc7CiRsYW5nWydmaWxlcyddID0gJ0ZhaWxpZCc7CiRsYW5nWydmaXhtZSddID0gJ0ZpeCBTcGFjZXMnOwokbGFuZ1snZnJpZW5kbHluYW1lJ10gPSAnRnJvbnQgRW5kIEZpbGUgTWFuYWdlbWVudCAoVXBsb2FkcyknOwokbGFuZ1snaWQnXSA9ICdJZCc7CiRsYW5nWydpbnN0YWxsZWQnXSA9ICdNb2R1bGUgdmVyc2lvbiAlcyBpbnN0YWxsZWQuJzsKJGxhbmdbJ2lwX2FkZHJlc3MnXSA9ICdJUCBBZGRyZXNzJzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnQSBtb2R1bGUgdGhhdCBhbGxvd3MgdXNlcnMgdG8gdXBsb2FkIGZpbGVzLCBhbmQgYWxsb3dzIHlvdSB0byBtYW5hZ2UgdGhlbS4nOwokbGFuZ1snbmFtZSddID0gJ05hbWUnOwokbGFuZ1sncmVuYW1lbWVzc2FnZSddID0gJ0NoYW5nZSB0aGUgbmFtZSBoZXJlIHRvIGV4ZWN1dGUgYSByZW5hbWUnOwokbGFuZ1sncGF0aCddID0gJ1BhdGgnOwokbGFuZ1sncGF0aG1lc3NhZ2UnXSA9ICdDaGFuZ2UgdGhlIGNhdGVnb3J5IGhlcmUgdG8gbW92ZSB0aGUgZmlsZSB0byBhbm90aGVyIGRpcmVjdG9yeSc7CiRsYW5nWydwYXRoaW51cGxvYWRzJ10gPSAnKFJlbGF0aXZlIHRvIHRoZSB1cGxvYWRzIGRpcmVjdG9yeSknOwokbGFuZ1sncG9zdGluc3RhbGwnXSA9ICc8cD5UaGUgdXBsb2FkcyBtb2R1bGUgaGFzIGJlZW4gc3VjY2Vzc2Z1bGx5IGluc3RhbGxlZC4gQmUgc3VyZSB0byBzZXQgJnF1b3Q7TWFuYWdlIFVwbG9hZHMmcXVvdDsgcGVybWlzc2lvbnMgdG8gdXNlIHRoaXMgbW9kdWxlITwvcD4NCjxwPjxzdHJvbmc+V2FybmluZzwvc3Ryb25nPiAtIFRoZSBwcm9wZXIgYmVoYXZpb3VyIG9mIHRoaXMgbW9kdWxlIGRlcGVuZHMgb24gbnVtZXJvdXMgcGhwIGNvbmZpZ3VyYXRpb24gdmFyaWFibGVzLiAgVGhlc2UgaW5jbHVkZSA8ZW0+KGJ1dCBhcmUgbm90IGxpbWl0ZWQgdG8pPC9lbT4sIHBocCYjMDM5O3MgbWVtb3J5X2xpbWl0LCBzYWZlX21vZGUsIGZpbGVfdXBsb2FkcywgdXBsb2Fkc19tYXhfZmlsZXNpemUsIGFuZCBtYXhfZXhlY3V0aW9uX3RpbWUuICBUaGVzZSB2YXJpYWJsZXMgbWF5IG5lZWQgYWRqdXN0bWVudCBmb3IgdGhpcyBtb2R1bGUgdG8gd29yayBwcm9wZXJseSBvbiB5b3VyIHNpdGUuICBJdCBpcyBhZHZpc2VkIHRoYXQgeW91IHdvcmsgd2l0aCB5b3VyIHN5c3RlbSBhZG1pbmlzdHJhdG9yIG9yIGhvc3QgcHJvdmlkZXIgdG8gdHVuZSB0aGVzZSBzZXR0aW5ncyBmb3IgeW91ciByZXF1aXJlbWVudHMuPC9wPic7CiRsYW5nWydwb3N0dW5pbnN0YWxsJ10gPSAnVGhlIFVwbG9hZHMgbW9kdWxlIGhhcyBiZWVuIHN1Y2Nlc3NmdWxseSByZW1vdmVkLiAgTm8gZmlsZXMgaGF2ZSBiZWVuIHJlbW92ZWQgZnJvbSB5b3VyIHVwbG9hZHMgZGlyZWN0b3J5LCBhbmQgZmlsZSBpbnRlZ3JpdHkgaXMgaW50YWN0JzsKJGxhbmdbJ3ByZWZlcmVuY2VzJ10gPSAnUHJlZmVyZW5jZXMnOwokbGFuZ1sncHJlZnN1cGRhdGVkJ10gPSAnTW9kdWxlIHByZWZlcmVuY2VzIHVwZGF0ZWQuJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeWRlc2MnXSA9ICdLaXJqZWxkdXMnOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5bGlzdGFibGUnXSA9ICdGaWxlcyBpbiB0aGlzIGRpcmVjdG9yeSBjYW4gYmUgbGlzdGVkJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeW5hbWUnXSA9ICdDYXRlZ29yeSBOYW1lJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeXBhdGgnXSA9ICdTZXJ2ZXIgUGF0aCc7CiRsYW5nWydwcm9tcHRfZGVsZXRlZGlyZWN0b3J5J10gPSAnRGVsZXRlIGNhdGVnb3J5IGRpcmVjdG9yeT8nOwokbGFuZ1sncHJvbXB0X21heF91cGxvYWRzaXplJ10gPSAnTWF4aW11bSBmaWxlIHNpemUgYWxsb3dlZCAoS2IpJzsKJGxhbmdbJ3Byb21wdF92YWxpZF91cGxvYWRleHRlbnNpb25zJ10gPSAnVmFsaWQgdXBsb2FkIGV4dGVuc2lvbnMnOwokbGFuZ1snc2NhbiddID0gJ1NjYW4nOwokbGFuZ1snc2VsZWN0Y2F0ZWdvcnknXSA9ICdTZWxlY3QgQ2F0ZWdvcnknOwokbGFuZ1snc2l6ZSddID0gJ1NpemUnOwokbGFuZ1snc2l6ZWtiJ10gPSAnU2l6ZSAoS2IpJzsKJGxhbmdbJ3N1Ym1pdCddID0gJ1NhYWRhJzsKJGxhbmdbJ3N1bW1hcnlfdGVtcGxhdGUnXSA9ICdTdW1tYXJ5IFRlbXBsYXRlcyc7CiRsYW5nWydzdW1tYXJ5J10gPSAnS29ra3V2Jm90aWxkZTt0ZSc7CiRsYW5nWyd0aXRsZV9hZG1pbl9wYW5lbCddID0gJ1VwbG9hZHMgTW9kdWxlJzsKJGxhbmdbJ3RpdGxlX21vZF9hZG1pbiddID0gJ01vZHVsZSBBZG1pbiBQYW5lbCc7CiRsYW5nWyd0aXRsZV9tb2RfcHJlZnMnXSA9ICdNb2R1bGUgUHJlZmVyZW5jZXMnOwokbGFuZ1sndGl0bGVfc3VibmV0X2V4Y2x1c2lvbnMnXSA9ICdFeGNsdWRlIHN1Ym5ldHMgZnJvbSBzdGF0aXN0aWNzJzsKJGxhbmdbJ3RpdGxlX3ZhbGlkX3VwbG9hZGV4dGVuc2lvbnMnXSA9ICdWYWxpZCBFeHRlbnNpb25zJzsKJGxhbmdbJ3VuaW5zdGFsbGVkJ10gPSAnTW9kdWxlIFVuaW5zdGFsbGVkLic7CiRsYW5nWyd1cGdyYWRlZCddID0gJ01vZHVsZSB1cGdyYWRlZCB0byB2ZXJzaW9uICVzLic7CiRsYW5nWyd1cGxvYWQnXSA9ICdMYWUgJnV1bWw7bGVzJzsKJGxhbmdbJ3VwbG9hZGVkJ10gPSAnRmlsZSAlcyB3YXMgdXBsb2FkZWQgYnkgJXMuJzsKJGxhbmdbJ3JlcGxhY2VkJ10gPSAnRmlsZSAlcyB3YXMgcmVwbGFjZWQgYnkgJXMuJzsKJGxhbmdbJ2RlbGV0ZWQnXSA9ICdGaWxlICVzIHdhcyBkZWxldGVkLic7CiRsYW5nWyd1cGxvYWRmb3JtX3RlbXBsYXRlJ10gPSAnVXBsb2FkIFRlbXBsYXRlcyc7CiRsYW5nWyd1c2VybmFtZSddID0gJ1VzZXJuYW1lJzsKJGxhbmdbJ3dhcm5pbmdfZGVsZXRlY2F0ZWdvcnknXSA9ICdXQVJOSU5HOiBVc2UgY2F1dGlvbiB3aGVuIGRlbGV0aW5nIGNhdGVnb3JpZXMuICBGaWxlcyBtYXkgYmUgbG9zdCc7CiRsYW5nWyd1dG1hJ10gPSAnMTU2ODYxMzUzLjMyMTU1NDUyNjY3MzIwMTkwMDAuMTI0MTA5MTc4Ny4xMjUzMTgzMTY3LjEyNTMyMDY2MDUuMTE4JzsKJGxhbmdbJ3V0bXonXSA9ICcxNTY4NjEzNTMuMTI1MzExMjk4Ni4xMTUuMjUudXRtY2NuPShyZWZlcnJhbCl8dXRtY3NyPWZvcnVtLmNtc21hZGVzaW1wbGUub3JnfHV0bWNjdD0vaW5kZXgucGhwL3RvcGljLDE1MzE4LjAuaHRtbHx1dG1jbWQ9cmVmZXJyYWwnOwokbGFuZ1sncWNhJ10gPSAnMTI0MDY4MzYxNS01ODQwOTk3My03OTkxNTMwMyc7CiRsYW5nWyd1dG1jJ10gPSAnMTU2ODYxMzUzJzsKJGxhbmdbJ3V0bWInXSA9ICcxNTY4NjEzNTMuMS4xMC4xMjUzMjA2NjA1JzsKPz4K]]></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+DQo8L2xpPg0KPC91bD4nOwokbGFuZ1snZGF0ZSddID0gJ1AmYXVtbDtpdiZhdW1sO20mYXVtbDsmYXVtbDtyJmF1bWw7JzsKJGxhbmdbJ2RhdGV1cGxvYWRlZCddID0gJ0xpcyZhdW1sO3lzIHAmYXVtbDtpdiZhdW1sO20mYXVtbDsmYXVtbDtyJmF1bWw7JzsKJGxhbmdbJ2RlZmF1bHQnXSA9ICdPbGV0dWtzZXQnOwokbGFuZ1snZGVsZXRlJ10gPSAnUG9pc3RhJzsKJGxhbmdbJ2Rlc2NyaXB0aW9uJ10gPSAnS3V2YXVzJzsKJGxhbmdbJ2Rlc3RuYW1lJ10gPSAnVXBsb2FkIEFzJzsKJGxhbmdbJ2RldGFpbF90ZW1wbGF0ZSddID0gJ0RldGFpbCBUZW1wbGF0ZSc7CiRsYW5nWydkb3dubG9hZGVkJ10gPSAnVGllZG9zdCAlcyBvbiBsYWRhdHR1Lic7CiRsYW5nWydkb3dubG9hZHMnXSA9ICdMYXRhdWtzZXQnOwokbGFuZ1snZWRpdCddID0gJ011b2trYWEnOwokbGFuZ1snZWRpdGNhdGVnb3J5J10gPSAnTXVra2FhIGthdGVnb3JpYWEnOwokbGFuZ1snZWRpdHVwbG9hZCddID0gJ011b2trYWEgdXBsb2FkaWEnOwokbGFuZ1snZXJyb3InXSA9ICdWaXJoZSEnOwokbGFuZ1snZXJyb3JfcGF0aGludXNlJ10gPSAnS2F0ZWdvcmlhIHNhbWFsbGEgcG9sdWxsYSBvbiBqbyBvbGVtYXNzYS4nOwokbGFuZ1snZXJyb3JfY2F0ZWdvcnlleGlzdHMnXSA9ICdWaXJoZTogS2F0ZWdvcmlhIG9uIGpvIG9sZW1hc3NhISc7CiRsYW5nWydlcnJvcl9jYXRlZ29yeW5vdGVtcHR5J10gPSAnVmlyaGU6IEVpIHZvaWRhIHR1aG90YSBrYXRlZ29yaWFhIGpva2EgZWkgb2xlIHR5aGomYXVtbDshJzsKJGxhbmdbJ2Vycm9yX2NhdGVnb3J5bm90Zm91bmQnXSA9ICdWaXJoZTogS2F0ZWdvcmlhYSBlaSBsJm91bWw7eWR5ISc7CiRsYW5nWydlcnJvcl9kYmVycm9yJ10gPSAnVmlyaGU6IFRpZXRva2FudGEgdmlyaGUhJzsKJGxhbmdbJ2Vycm9yX2VtcHR5Y2F0ZWdvcnknXSA9ICdWaXJoZTogVHloaiZhdW1sOyBrYXRlZ29yaWEhJzsKJGxhbmdbJ2Vycm9yX2VtcHR5cGF0aCddID0gJ1ZpcmhlOiBUeWhqJmF1bWw7IHBvbGt1ISc7CiRsYW5nWydlcnJvcl9maWxlZXhpc3RzJ10gPSAnVmlyaGU6IFRpZWRvc3RvICVzIG9uIGpvIG9sZW1hc3NhISc7CiRsYW5nWydlcnJvcl9maWxlbm90Zm91bmQnXSA9ICdWaXJoZTogVGllZG9zdG9hICVzIGVpIGwmb3VtbDt5ZHkhJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ1ZpcmhlOiBLYWlra2lhIHBhcmFtZXRyZWphIGVpIG9sZSBtJmF1bWw7JmF1bWw7cml0ZWx0eSBtb2R1bGkga3V0c3Vzc2EhJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRhdXRob3InXSA9ICdWaXJoZTogdmlyaGVlbGxpbmVuICh0YWkgdHloaiZhdW1sOykgdGVraWomYXVtbDsnOwokbGFuZ1snZXJyb3JfaW52YWxpZGNhdGVnb3J5J10gPSAnVmlyaGU6IHZpcmhlZWxsaW5lbiAodGFpIHR5aGomYXVtbDspIGthdGVnb3JpYSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZGVzY3JpcHRpb24nXSA9ICdWaXJoZTogdmlyaGVlbGxpbmVuICh0YWkgdHloaiZhdW1sOykga3V2YXVzJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRmaWxlJ10gPSAnVmlyaGU6IHZpcmhlZWxsaW5lbiAodGFpIHR5aGomYXVtbDspIHRpZWRvc3RvbmltaSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXBsb2FkZmlsZW5hbWUnXSA9ICdWaXJoZTogdmlyaGVlbGxpbmVuIHRpZWRvc3RvbmltaSAodGFpIHAmYXVtbDsmYXVtbDt0ZSkgKCVzKSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXBsb2FkaWQnXSA9ICdWaXJoZTogdmlyaGVlbGxpbmVuIGxhdGF1cyBpZCc7CiRsYW5nWydlcnJvcl9ub2ZpbGVzJ10gPSAnVmlyaGU6IGVpIHZhc3RhYXZpYSB0aWVkb3N0b2phISc7CiRsYW5nWydmaWxlcyddID0gJ1RpZWRvc3RvdCc7CiRsYW5nWydmaXhtZSddID0gJ0tvcmphYSB2JmF1bWw7bGlseSZvdW1sO25uaXQnOwokbGFuZ1snZnJpZW5kbHluYW1lJ10gPSAnVGllZG9zdG90IChVcGxvYWRzIE1vZHVsZSknOwokbGFuZ1snaWQnXSA9ICdJZCc7CiRsYW5nWydpbnN0YWxsZWQnXSA9ICdNb2R1dWxpbiB2ZXJzaW8gJXMgYXNlbm5ldHR1Lic7CiRsYW5nWydpcF9hZGRyZXNzJ10gPSAnSVAgb3NvaXRlJzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnTW9kdXVsaSwgam9rYSBzYWxsaWkgayZhdW1sO3l0dCZhdW1sO2ppZW4gbGFkYXRhIHRpZWRvc3RvamEgc2l2dXN0b2xsZSBqYSB5bGwmYXVtbDtwaXQmYXVtbDtqJmF1bWw7biBoYWxsaXRhIG4mYXVtbDtpdCZhdW1sOyB0aWVkb3N0b2phICc7CiRsYW5nWyduYW1lJ10gPSAnTmltaSc7CiRsYW5nWydyZW5hbWVtZXNzYWdlJ10gPSAnVmFpaGRhIG5pbWkgdGFpIHRlZSB1dWRlbGxlZW5uaW1lJmF1bWw7bWluZW4nOwokbGFuZ1sncGF0aCddID0gJ1BvbGt1JzsKJGxhbmdbJ3BhdGhtZXNzYWdlJ10gPSAnVmFpaGRhIGthdGVnb3JpYW4gbmltaSB0YWkgc2lpcnImYXVtbDsgdGllZG9zdG8gdG9pc2VlbiBoYWtlbWlzdG9vbic7CiRsYW5nWydwYXRoaW51cGxvYWRzJ10gPSAnKFN1aHRlZWxsaW5lbiBwb2xrdSB1cGxvYWRzLWhha2VtaXN0b29uIG4mYXVtbDtoZGVuKSc7CiRsYW5nWydwb3N0aW5zdGFsbCddID0gJ1Bvc3QgSW5zdGFsbCBNZXNzYWdlLCBlLmcuLCBCZSBzdXJlIHRvIHNldCAmcXVvdDtNYW5hZ2UgVXBsb2FkcyZxdW90OyBwZXJtaXNzaW9ucyB0byB1c2UgdGhpcyBtb2R1bGUhJzsKJGxhbmdbJ3Bvc3R1bmluc3RhbGwnXSA9ICdUaGUgVXBsb2FkcyBtb2R1bGUgaGFzIGJlZW4gc3VjY2Vzc2Z1bGx5IHJlbW92ZWQuICBObyBmaWxlcyBoYXZlIGJlZW4gcmVtb3ZlZCBmcm9tIHlvdXIgdXBsb2FkcyBkaXJlY3RvcnksIGFuZCBmaWxlIGludGVncml0eSBpcyBpbnRhY3QnOwokbGFuZ1sncHJlZmVyZW5jZXMnXSA9ICdBc2V0dWtzZXQnOwokbGFuZ1sncHJlZnN1cGRhdGVkJ10gPSAnTW9kdWxpbiBhc2V0dWtzZXQgcCZhdW1sO2l2aXRldHR5JzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeWRlc2MnXSA9ICdLdXZhdXMnOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5bGlzdGFibGUnXSA9ICdUaWVkb3N0b3QgdCZhdW1sO3NzJmF1bWw7IGhha2VtaXN0b3NzYSB2b2lkYWFuIGxpc3RhdGEnOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5bmFtZSddID0gJ0thdGVnb3JpYW4gbmltaSc7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnlwYXRoJ10gPSAnUGFsdmVsaW1lbiBwb2xrdSc7CiRsYW5nWydwcm9tcHRfZGVsZXRlZGlyZWN0b3J5J10gPSAnVHVob2Ega2F0ZWdvcmlhbiBoYWtlbWlzdG8/JzsKJGxhbmdbJ3Byb21wdF9tYXhfdXBsb2Fkc2l6ZSddID0gJ01ha3NpbWkgdGllZG9zdG9rb2tvIChLYiknOwokbGFuZ1sncHJvbXB0X3ZhbGlkX3VwbG9hZGV4dGVuc2lvbnMnXSA9ICdIeXYmYXVtbDtrc3l0eXQgdGllZG9zdG9wJmF1bWw7JmF1bWw7dHRlZXQnOwokbGFuZ1snc2NhbiddID0gJ1NrYW5uYWEnOwokbGFuZ1snc2VsZWN0Y2F0ZWdvcnknXSA9ICdWYWxpdHNlIGthdGVnb3JpYSc7CiRsYW5nWydzaXplJ10gPSAnS29rbyc7CiRsYW5nWydzaXpla2InXSA9ICdLb2tvIChLYiknOwokbGFuZ1snc3VibWl0J10gPSAnTCZhdW1sO2hldCZhdW1sOyc7CiRsYW5nWydzdW1tYXJ5X3RlbXBsYXRlJ10gPSAnS29vc3RlIHBvaGphJzsKJGxhbmdbJ3N1bW1hcnknXSA9ICdLb29zdGUnOwokbGFuZ1sndGl0bGVfYWRtaW5fcGFuZWwnXSA9ICdVcGxvYWRzIE1vZHVsZSc7CiRsYW5nWyd0aXRsZV9tb2RfYWRtaW4nXSA9ICdNb2R1bGluIGhhbGxpbnRhcGFuZWVsaSc7CiRsYW5nWyd0aXRsZV9tb2RfcHJlZnMnXSA9ICdNb2R1bGluIGFzZXR1a3NldCc7CiRsYW5nWyd0aXRsZV9zaW5nX2xvdWRseSddID0gJ1NpbmcgTG91ZGx5Pyc7CiRsYW5nWyd0aXRsZV9zdWJuZXRfZXhjbHVzaW9ucyddID0gJyZBdW1sO2wmYXVtbDsga2VyJmF1bWw7JmF1bWw7IHN0YXRpc3RpaWtrYSBhbGl2ZXJrb2lzdGEnOwokbGFuZ1sndGl0bGVfdmFsaWRfdXBsb2FkZXh0ZW5zaW9ucyddID0gJ0h5diZhdW1sO2tzeXR5dCB0aWVkb3N0b3AmYXVtbDsmYXVtbDt0dGVldCc7CiRsYW5nWyd1bmluc3RhbGxlZCddID0gJ01vZHVsaSBwb2lzdGV0dHUnOwokbGFuZ1sndXBncmFkZWQnXSA9ICdNb2R1bGkgcCZhdW1sO2l2aXRldHR5IHZlcnNpb29uICVzLic7CiRsYW5nWyd1cGxvYWQnXSA9ICdMYXRhYSc7CiRsYW5nWyd1cGxvYWRlZCddID0gJ1RpZWRvc3RvICVzIG9uIHVwbG9hZGF0dHUgayZhdW1sO3l0dCZhdW1sO2omYXVtbDtuICVzIHRvaW1lc3RhLic7CiRsYW5nWydyZXBsYWNlZCddID0gJ1RpZWRvc3RvICVzIG9uIGtvcnZhdHR1IHRpZWRvc3RvbGxhICVzLic7CiRsYW5nWydkZWxldGVkJ10gPSAnVGllZG9zdG8gJXMgb24gcG9pc3RldHR1Lic7CiRsYW5nWyd1cGxvYWRmb3JtX3RlbXBsYXRlJ10gPSAnVXBsb2FkIFRlbXBsYXRlJzsKJGxhbmdbJ3VzZXJuYW1lJ10gPSAnSyZhdW1sO3l0dCZhdW1sO2omYXVtbDtuaW1pJzsKJGxhbmdbJ3dhcm5pbmdfZGVsZXRlY2F0ZWdvcnknXSA9ICdWQVJPSVRVUzogS2F0ZWdvcmlvaWRlbiB0dWhvYW1pbmVuIHNhYXR0YWEga2Fkb3R0YWEgdGllZG9zdG9qYSc7CiRsYW5nWyd3ZWxjb21lX3RleHQnXSA9ICc8cD5XZWxjb21lIHRvIHRoZSBVcGxvYWRzIE1vZHVsZSBhZG1pbiBzZWN0aW9uLiBTb21ldGhpbmcgZWxzZSB3b3VsZCBwcm9iYWJseSBnbyBoZXJlIGlmIHRoZSBtb2R1bGUgYWN0dWFsbHkgZGlkIHNvbWV0aGluZy48L3A+JzsKJGxhbmdbJ3V0bWEnXSA9ICcxNTY4NjEzNTMuMTk1OTU0NzE5My4xMjEzODY1NzgzLjEyMTM4Nzc2NDcuMTIxMzg4MTM1Ny41JzsKJGxhbmdbJ3V0bWMnXSA9ICcxNTY4NjEzNTMnOwokbGFuZ1sndXRteiddID0gJzE1Njg2MTM1My4xMjEzODgxMzU3LjUuMy51dG1jY249KHJlZmVycmFsKXx1dG1jc3I9ZGV2LmNtc21hZGVzaW1wbGUub3JnfHV0bWNjdD0vZm9ydW0vZm9ydW0ucGhwfHV0bWNtZD1yZWZlcnJhbCc7CiRsYW5nWyd1dG1iJ10gPSAnMTU2ODYxMzUzJzsKPz4K]]></data>
	</file>
	<file>
	  <filename>/lang/ext/fr_FR.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2Vycm9yX21pc3Npbmd2YWx1ZSddID0gJ1VuZSB2YWxldXIgcmVxdWlzZSBlc3QgbWFucXVhbnRlJzsKJGxhbmdbJ2VkaXRlZCddID0gJ01vZGlmaSZlYWN1dGU7IGxlICVzJzsKJGxhbmdbJ21vdmVkZmlsZSddID0gJ0QmZWFjdXRlO3BsYWNlbWVudCBkdSBmaWNoaWVyICVzIHZlcnMgJXMnOwokbGFuZ1sncGFnZWxpbWl0J10gPSAnRmljaGllcnMgcGFyIHBhZ2UnOwokbGFuZ1sndmlldyddID0gJ1ZvaXIgY2UgZmljaGllcic7CiRsYW5nWydlZGl0X3RoaXNfZmlsZSddID0gJ0VkaXRlciBjZSBjaGFtcCc7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnlfc2Nhbm5hYmxlJ10gPSAnU2Nhbm5lciBhdXRvbWF0aXF1ZW1lbnQgbGEgY2F0JmVhY3V0ZTtnb3JpZSBwb3VyIHRyb3V2ZXIgbGVzIG5vdXZlYXV4IGZpY2hpZXJzID8nOwokbGFuZ1snaW5mb19jYXRlZ29yeV9zY2FubmFibGUnXSA9ICdRdWFuZCBjZXR0ZSBjYXQmZWFjdXRlO2dvcmllIGVzdCB2dWUgZGVwdWlzIGxlIHNpdGUgKEZyb250RW5kKSwgZWxsZSBlc3QgYXV0b21hdGlxdWVtZW50IHNjYW5uJmVhY3V0ZTtlICZhZ3JhdmU7IGxhIHJlY2hlcmNoZSBkZSBub3V2ZWF1eCBmaWNoaWVycyc7CiRsYW5nWydwcm9tcHRfdGxfYWNjZXNzJ10gPSAnQWNjJmVncmF2ZTtzIHRlbXBvcmFpcmUnOwokbGFuZ1sncHJvbXB0X2FsbG93X3VwbG9hZF9zZW5kZmlsZSddID0gJ0F1dG9yaXNlIGwmIzAzOTtlbnZvaSBpbW0mZWFjdXRlO2RpYXQgZGUgZmljaGllcnMgcG91ciBsJiMwMzk7dXBsb2FkIGQmIzAzOTthZG1pbic7CiRsYW5nWydtc2dfYXV0b19kZWxldGVfZmlsZSddID0gJ0VmZmFjZXIgYXV0b21hdGlxdWVtZW50IGxlcyBmaWNoaWVycyBleHBpciZlYWN1dGU7cyA6ICVzJzsKJGxhbmdbJ21zZ19hdXRvX2RlbGV0ZV9maWxlX2ZhaWxlZCddID0gJ0wmIzAzOTthdXRvLWVmZmFjZW1lbnQgZGUgJXMgYSAmZWFjdXRlO2Nob3UmZWFjdXRlOyAocHJvYmwmZWdyYXZlO21lIGRlIHBlcm1pc3Npb25zKSc7CiRsYW5nWydpbmZvX2NhdGVnb3J5X2V4cGlyZXNfaHJzJ10gPSAnSW5kaXF1ZXIgdW4gbm9tYnJlIGQmIzAzOTtoZXVyZXMgYXZhbnQgcXVlIGxlcyBmaWNoaWVycyBkZSBjZXR0ZSBjYXQmZWFjdXRlO2dvcmllIG5lIHB1aXNzZSAmZWNpcmM7dHJlIHN1cHByaW0mZWFjdXRlO3MuIFV0aWxpc2VyIGxhIHZhbGV1ciAwIHBvdXIgaW5kaXF1ZXIgcXVlIGxlcyBmaWNoaWVycyBuZSBkb2l2ZW50IHBhcyAmZWNpcmM7dHJlIHN1cHByaW0mZWFjdXRlO3MuJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeV9leHBpcmVzX2hycyddID0gJ05vbWJyZSBkJiMwMzk7aGV1cmVzIGF2YW50IHF1ZSBsZXMgZmljaGllcnMgZGUgY2V0dGUgY2F0JmVhY3V0ZTtnb3JpZSBuZSBzb2llbnQgc3VwcHJpbSZlYWN1dGU7cyBhdXRvbWF0aXF1ZW1lbnQnOwokbGFuZ1snaW5mb19kZmx0X2NhdGVnb3J5X2V4cGlyeSddID0gJ0xhIHZhbGV1ciBwYXIgZCZlYWN1dGU7ZmF1dCBwb3VyIGxlcyBub3V2ZWxsZXMgY2F0JmVhY3V0ZTtnb3JpZXMgcXVpIHNwJmVhY3V0ZTtjaWZpZSBsZSBub21icmUgZCYjMDM5O2hldXJlcyBhdmFudCBxdWUgbGVzIGZpY2hpZXJzIGRlIGNldHRlIGNhdCZlYWN1dGU7Z29yaWUgbmUgc29pZW50IHN1cHByaW0mZWFjdXRlO3MgYXV0b21hdGlxdWVtZW50LiAgVXRpbGlzZXIgbGEgdmFsZXVyIDAgcG91ciBpbmRpcXVlciBhdWN1bmUgc3VwcHJlc3Npb24nOwokbGFuZ1sndGl0bGVfY2F0ZWdvcnlfZXhwaXJ5J10gPSAnUCZlYWN1dGU7cmlvZGUgZCYjMDM5O2V4cGlyYXRpb24gZGUgbGEgY2F0JmVhY3V0ZTtnb3JpZTxlbT4oaHJzKTwvZW0+JzsKJGxhbmdbJ2luZm9fY2F0ZWdvcnlkZWxldGFibGUnXSA9ICdMZXMgdXRpbGlzYXRldXJzIGF1dG9yaXMmZWFjdXRlO3MgYXVyb250IGxhIHBlcm1pc3Npb24gZGUgc3VwcHJpbWVyIGNlcyBmaWNoaWVycy4gQ2VsYSBzaWduaWZpZSBxdSYjMDM5O3VuIHVybCBzZXJhIGZvdXJuaSBkYW5zIGxlcyBnYWJhcml0cyBhcHByb3ByaSZlYWN1dGU7cyBwb3VyIHBlcm1ldHRyZSBsYSBzdXBwcmVzc2lvbiBkZXMgZmljaGllcnMuIFVuIGQmZWFjdXRlO3ZlbG9wcGV1ciBkZSBzaXRlIHdlYiBwZXV0IHV0aWxpc2VyIHVuZSBsb2dpcXVlIFNtYXJ0eSBhcHByb3ByaSZlYWN1dGU7ZSBwb3VyIGFmZmljaGVyIHVuIGxpZW4gYXV4IHV0aWxpc2F0ZXVycyBhdXRvcmlzJmVhY3V0ZTtzLic7CiRsYW5nWydjb3B5X2ZpbGVzJ10gPSAnQ29waWVyIGxlcyBmaWNoaWVycyc7CiRsYW5nWydlcnJvcl9maWxldG9vbGFyZ2UnXSA9ICdMZSBmaWNoaWVyIHF1ZSB2b3VzIGF2ZXogdGVudCZlYWN1dGU7IGQmIzAzOTtlbnZveWVyIGVzdCBwbHVzIGdyb3MgcXVlIGxhIHRhaWxsZSBtYXhpbWFsZSBhdXRvcmlzJmVhY3V0ZTtlIHBhciBDTVNNUyc7CiRsYW5nWydhcmV5b3VzdXJlX2RlbGV0ZWNhdGVnb3J5J10gPSAnRXRlcyB2b3VzIHMmdWNpcmM7cihlKSBkZSB2b3Vsb2lyIGVmZmFjZXIgY2V0dGUgY2F0JmVhY3V0ZTtnb3JpZSA/JzsKJGxhbmdbJ2Vycm9yX2RlbGV0ZSddID0gJ1VuICZlYWN1dGU7bCZlYWN1dGU7bWVudCBuZSBwZXV0IHBhcyAmZWNpcmM7dHJlIGVmZmFjJmVhY3V0ZTsgKCVzKSc7CiRsYW5nWydjb25maXJtX2NhdF9tdWx0aWFjdGlvbiddID0gJ0V0ZXMgdm91cyBzJnVjaXJjO3IoZSkgZGUgdm91bG9pciBleCZlYWN1dGU7Y3V0ZXIgY2V0dGUgYWN0aW9uIHN1ciBsZXMgY2F0JmVhY3V0ZTtnb3JpZXMgcyZlYWN1dGU7bGVjdGlvbm4mZWFjdXRlO2VzID8nOwokbGFuZ1snZXJyb3Jfbm90aGluZ19zZWxlY3RlZCddID0gJ0VycmV1ciA6IHZvdXMgbiYjMDM5O2F2ZXogcmllbiBzJmVhY3V0ZTtsZWN0aW9ubiZlYWN1dGU7JzsKJGxhbmdbJ3dpdGhfc2VsZWN0ZWQnXSA9ICdBdmVjIGxhIHMmZWFjdXRlO2xlY3Rpb24nOwokbGFuZ1snZXJyb3JfcmVwbGFjZV9taXNtYXRjaGVkX2ZpbGVleHQnXSA9ICdRdWFuZCB2b3VzIHJlbXBsYWNleiB1biBmaWNoaWVyLCBjZXV4LWNpIGRvaXZlbnQgYXZvaXIgbGEgbSZlY2lyYzttZSBleHRlbnNpb24gKHBhciBleCAucGRmKS4gTGEgbm91dmVsbGUgdmVyc2lvbiBkdSBmaWNoaWVyIG4mIzAzOTthIHBhcyBsYSBtJmVjaXJjO21lIGV4dGVuc2lvbiBxdWUgbGUgZmljaGllciBvcmlnaW5hbC4nOwokbGFuZ1sncmVwbGFjZSddID0gJ1JlbXBsYWNlcic7CiRsYW5nWydpbmZvX3JlcGxhY2VmaWxlJ10gPSAnVm91cyBwb3V2ZXogZW52b3llciB1biBmaWNoaWVyIGRlIHJlbXBsYWNlbWVudC4gU2kgY2UgZmljaGllciBlc3QgdW5lIGltYWdlLCBldCBxdWUgdm91cyBuJiMwMzk7YXZleiBwYXMgdHJhbnNtaXMgZGUgdmlnbmV0dGUgZGUgcmVtcGxhY2VtZW50LCB1bmUgdmlnbmV0dGUgc2VyYSBnJmVhY3V0ZTtuJmVhY3V0ZTtyJmVhY3V0ZTtlIGF1dG9tYXRpcXVlbWVudCc7CiRsYW5nWydwcm9tcHRfcmVwbGFjZWZpbGUnXSA9ICdOb3V2ZWxsZSB2ZXJzaW9uIGR1IGZpY2hpZXInOwokbGFuZ1sndGl0bGVfZml4c3BhY2VzJ10gPSAnRW5sZXZleiBsZXMgZXNwYWNlcyBkYW5zIGxlIG5vbSBkdSBmaWNoaWVyJzsKJGxhbmdbJ2NhdGVnb3J5X2NvcGllZCddID0gJ0NhdCZlYWN1dGU7Z29yaWUgY29waSZlYWN1dGU7ZSBhdmVjIHN1Y2MmZWdyYXZlO3MgISc7CiRsYW5nWydlcnJvcl9kdXBsaWNhdGVwYXRoJ10gPSAnVmV1aWxsZXogc3AmZWFjdXRlO2NpZmllciB1biBub20gZGUgciZlYWN1dGU7cGVydG9pcmUgZGlmZiZlYWN1dGU7cmVudCBkZSBsYSBzb3VyY2UgZXQgcXVpIG4mIzAzOTtlc3QgcGFzIGQmZWFjdXRlO2omYWdyYXZlOyB1dGlsaXMmZWFjdXRlOyc7CiRsYW5nWydvcGVyYXRpb25fY2FuY2VsbGVkJ10gPSAnT3AmZWFjdXRlO3JhdGlvbiBhbm51bCZlYWN1dGU7ZSc7CiRsYW5nWydzb3VyY2UnXSA9ICdTb3VyY2UgJzsKJGxhbmdbJ2Rlc3RpbmF0aW9uJ10gPSAnRGVzdGluYXRpb24gJzsKJGxhbmdbJ3Byb21wdF9jb3B5X2ZpbGVzJ10gPSAnQ29waWVyIGxlcyBmaWNoaWVycyBkZSBsYSBjYXQmZWFjdXRlO2dvcmllJzsKJGxhbmdbJ2luZm9fY29weV9maWxlcyddID0gJ0NvcGllIGxlcyBmaWNoaWVycyBkZSBsYSBjYXQmZWFjdXRlO2dvcmllIHNvdXJjZSB2ZXJzIGxhIGNhdCZlYWN1dGU7Z29yaWUgZGUgZGVzdGluYXRpb24nOwokbGFuZ1snZXh0cmEnXSA9ICdFeHRyYSAnOwokbGFuZ1snY29weSddID0gJ0NvcGllcic7CiRsYW5nWydzZWxlY3RvbmUnXSA9ICdDaG9pc2lzc2V6IHVuJzsKJGxhbmdbJ2F1dG93YXRlcm1hcmsnXSA9ICdNZXR0cmUgZGVzIHZpZ25ldHRlcyBzdXIgbGVzIGltYWdlcyBhdXRvbWF0aXF1ZW1lbnQnOwokbGFuZ1snaW1hZ2Vfc2V0dGluZ3MnXSA9ICdSJmVhY3V0ZTtnbGFnZXMgZGVzIGltYWdlcyc7CiRsYW5nWydwcm9tcHRfZ2V0ZmlsZV9yZXN1bHRwYWdlJ10gPSAnUGFnZSB1dGlsaXMmZWFjdXRlO2UgcG91ciBsZXMgZXJyZXVycyBvdSBsZXMgbWVzc2FnZXMgZW4gbGllbiBhdmVjIGxlIHQmZWFjdXRlO2wmZWFjdXRlO2NoYXJnZW1lbnQgZGUgZmljaGllcnMnOwokbGFuZ1snZXJyb3JfaW52YWxpZF9rZXknXSA9ICdMYSBjbCZlYWN1dGU7IHRlbXBvcmFpcmUgZGUgdCZlYWN1dGU7bCZlYWN1dGU7Y2hhcmdlbWVudCBlc3QgaW52YWxpZGUgKHBldXQgJmVjaXJjO3RyZSBxdSYjMDM5O2VsbGUgYSBhdHRlaW50IHNhIGNhcGFjaXQmZWFjdXRlOyBtYXhpbWFsZSBkZSB0JmVhY3V0ZTtsJmVhY3V0ZTtjaGFyZ2VtZW50IG91IHF1JiMwMzk7ZWxsZSBhIGV4cGlyJmVhY3V0ZTspJzsKJGxhbmdbJ2RmbHRfdGltZWxpbWl0ZWRfc3ViamVjdCddID0gJ3skc2l0ZW5hbWV9IC0gVm91cyBhdmV6IHVuIGFjYyZlZ3JhdmU7cyB0ZW1wb3JhaXJlICZhZ3JhdmU7IHskZW50cnktPnVwbG9hZF9uYW1lfHN0cmlwX3RhZ3N9JzsKJGxhbmdbJ3Byb21wdF90aW1lbGltaXRlZF9zdWJqZWN0J10gPSAnU3VqZXQgcG91ciBsJiMwMzk7ZW1haWwgY3ImZWFjdXRlOyZlYWN1dGU7IHF1YW5kIG9uIGVudm9pIHVuZSBVUkwgdGVtcG9yYWlyZSc7CiRsYW5nWydwcm9tcHRfdGltZWxpbWl0ZWRfYXV0b2RlbGV0ZSddID0gJ0VmZmFjZXIgYXV0b21hdGlxdWVtZW50IGxlcyBmaWNoaWVycyBleHBpciZlYWN1dGU7cyBhcHImZWdyYXZlO3MgTiBoZXVyZXMgPGVtPihtZXR0cmUgJmFncmF2ZTsgMCBwb3VyIG5lIHBhcyB1dGlsaXNlciBjZXR0ZSBmb25jdGlvbik8L2VtPiA6JzsKJGxhbmdbJ3Byb21wdF90aW1lbGltaXRlZF9zZW5kaXQnXSA9ICdFbnZveWVyIGNldHRlIHVybCAmYWdyYXZlOyBsJiMwMzk7YWRyZXNzZSBlbWFpbCBkJmVhY3V0ZTtzaWduJmVhY3V0ZTtlID8nOwokbGFuZ1sndXJsX2tleSddID0gJ0NsJmVhY3V0ZTsgVVJMJzsKJGxhbmdbJ2NyZWF0ZWQnXSA9ICdDciZlYWN1dGU7JmVhY3V0ZTsnOwokbGFuZ1snZXhwaXJlcyddID0gJ0V4cGlyZSc7CiRsYW5nWydhZGRlZGl0X3RpbWVsaW1pdGVkX2tleSddID0gJ0Fqb3V0ZXIvbW9kaWZpZXIgdW5lIGNsJmVhY3V0ZTsgdGVtcG9yYWlyZSc7CiRsYW5nWyd0aW1lX2xpbWl0ZWRfa2V5X2FkZGVkJ10gPSAnQ2wmZWFjdXRlOyBsaW1pdCZlYWN1dGU7ZSBkYW5zIGxlIHRlbXBzIGFqb3V0JmVhY3V0ZTtlJzsKJGxhbmdbJ251bV9ob3VycyddID0gJ05vbWJyZSBkJiMwMzk7aGV1cmVzJzsKJGxhbmdbJ251bV9kb3dubG9hZHMnXSA9ICdOb21icmUgZGUgdCZlYWN1dGU7bCZlYWN1dGU7Y2hhcmdlbWVudHMnOwokbGFuZ1snZW1haWxfYWRkcmVzcyddID0gJ0FkcmVzc2UgZW1haWwnOwokbGFuZ1snZXJyb3JfbWlzc2luZ19pbnZhbGlkJ10gPSAnVW5lIHZhbGV1ciBuJmVhY3V0ZTtjZXNzYWlyZSBlc3QgbWFucXVhbnRlIG91IGVycm9uJmVhY3V0ZTtlIDogJXMnOwokbGFuZ1snYWRkX3RpbWVsaW1pdGVkX2tleSddID0gJ0Fqb3V0ZXIgdW5lIGNsJmVhY3V0ZTsgbGltaXQmZWFjdXRlO2UgZGFucyBsZSB0ZW1wcyc7CiRsYW5nWydmaWxlX2luZm8yJ10gPSAnRmljaGllciAlcyAoaWQ9JWQpJzsKJGxhbmdbJ2luZm9fdGltZWxpbWl0ZWRfZG93bmxvYWRzJ10gPSAnU3AmZWFjdXRlO2NpZmlleiBsZSBub21icmUgbWF4aW1hbCBkZSB0JmVhY3V0ZTtsJmVhY3V0ZTtjaGFyZ2VtZW50IHBvdXIgdW4gZmljaGllciBpZGVudGlmaSZlYWN1dGU7IHBhciB1bmUgY2wmZWFjdXRlOyBwYXJ0aWN1bGkmZWdyYXZlO3JlJzsKJGxhbmdbJ3Byb21wdF90aW1lbGltaXRlZF9kb3dubG9hZHMnXSA9ICdOb21icmUgZGUgdCZlYWN1dGU7bCZlYWN1dGU7Y2hhcmdlbWVudHMgcGFyIGQmZWFjdXRlO2ZhdXQnOwokbGFuZ1snaW5mb190aW1lbGltaXRlZF9ob3VycyddID0gJ1NwJmVhY3V0ZTtjaWZpZXIgbGUgbm9tYnJlIGQmIzAzOTtoZXVyZXMgcGFzIGQmZWFjdXRlO2ZhdXQgcG91ciBsYSB2YWxpZGl0JmVhY3V0ZTsgZCYjMDM5O3VuZSBjbCZlYWN1dGU7IHRlbXBvcmFpcmUuIFNwJmVhY3V0ZTtjaWZpZXIgMCBwb3VyIHVuZSBjbCZlYWN1dGU7IHBlcm1hbmVudGUuJzsKJGxhbmdbJ3Byb21wdF90aW1lbGltaXRlZF9ob3VycyddID0gJ0R1ciZlYWN1dGU7ZSBlbiBoZXVyZXMgcG91ciB1bmUgY2wmZWFjdXRlOyB0ZW1wb3JhaXJlJzsKJGxhbmdbJ3RpbWVsaW1pdGVkX3VybF9zZXR0aW5ncyddID0gJ1ImZWFjdXRlO2dsYWdlcyBwb3VyIGxhIGNsJmVhY3V0ZTsgdGVtcG9yYWlyZSc7CiRsYW5nWydtYW5hZ2VfdGltZWxpbWl0ZWQnXSA9ICdHJmVhY3V0ZTtyZXIgbCYjMDM5O2FjYyZlZ3JhdmU7cyB2aWEgbGEgY2wmZWFjdXRlOyB0ZW1wb3JhaXJlJzsKJGxhbmdbJ3VwbG9hZGluZ19zZXR0aW5ncyddID0gJ1ImZWFjdXRlO2dsYWdlcyBwb3VyIGwmIzAzOTt1cGxvYWQgZGUgZmljaGllcnMnOwokbGFuZ1snZ2VuZXJhbF9zZXR0aW5ncyddID0gJ1ImZWFjdXRlO2dsYWdlcyBHJmVhY3V0ZTtuJmVhY3V0ZTtyYXV4JzsKJGxhbmdbJ3RodW1ibmFpbF9zZXR0aW5ncyddID0gJ0cmZWFjdXRlO24mZWFjdXRlO3JhdGlvbiBkZSB2aWduZXR0ZXMnOwokbGFuZ1sndGl0bGVfcmVkaXJlY3Rfb25fc2VuZGZpbGUnXSA9ICdQYWdlIG8mdWdyYXZlOyByZWRpcmlnZXIgYXByJmVncmF2ZTtzIGF2b2lyIGVudm95JmVhY3V0ZTsgdW4gZmljaGllcic7CiRsYW5nWydsYmxfYmFjayddID0gJ1JldG91cic7CiRsYW5nWydsYmxfdGVtcGxhdGVzJ10gPSAnTW9kaWZpZXIgbGVzIGdhYmFyaXRzJzsKJGxhbmdbJ3Byb21wdF9wdWJsaWNfZmllbGQnXSA9ICdMZSBjaGFtcCBlc3QgcHVibGljIDxlbT4odmlzaWJsZSBwb3VyIGxlcyB2aXNpdGV1cnMpPC9lbT4nOwokbGFuZ1sndXBsb2FkX2VkaXRlZCddID0gJ0QmZWFjdXRlO3RhaWxzIGR1IGZpY2hpZXJzICZlYWN1dGU7ZGl0JmVhY3V0ZTtzIGxlICVzJzsKJGxhbmdbJ2luZm9fdGh1bWJuYWlsJ10gPSAnVW4gZmljaGllciB2aWduZXR0ZSBmYWN1bHRhdGlmJzsKJGxhbmdbJ3VwbG9hZF9maWxlJ10gPSAnRW52b3llciB1biBub3V2ZWF1IGZpY2hpZXInOwokbGFuZ1snbXNnX2ZpZWxkX2RlbGV0ZWQnXSA9ICdDaGFtcCBlZmZhYyZlYWN1dGU7JzsKJGxhbmdbJ2Fza19kZWxldGVfZmllbGQnXSA9ICdFdGVzIHZvdXMgcyZ1Y2lyYztyKGUpIGRlIHZvdWxvaXIgZWZmYWNlciBjZXR0ZSBkJmVhY3V0ZTtmaW5pdGlvbiBkZSBjaGFtcHMgZXQgdG91dGVzIGxlcyBkb25uJmVhY3V0ZTtlcyBhc3NvY2kmZWFjdXRlO2VzID8nOwokbGFuZ1sneWVzJ10gPSAnT3VpJzsKJGxhbmdbJ25vJ10gPSAnTm9uJzsKJGxhbmdbJ3R5cGUnXSA9ICdUeXBlICc7CiRsYW5nWydmaWVsZHR5cGVfbXVsdGlzZWxlY3QnXSA9ICdMaXN0ZSBhdmVjIGNob2l4IG11bHRpcGxlcyc7CiRsYW5nWydmaWVsZHR5cGVfZHJvcGRvd24nXSA9ICdMaXN0ZSBkJmVhY3V0ZTtyb3VsYW50ZSc7CiRsYW5nWydmaWVsZHR5cGVfY2hlY2tib3gnXSA9ICdCbyZpY2lyYzt0ZSAmYWdyYXZlOyBjb2NoZXInOwokbGFuZ1snZmllbGR0eXBlX3RleHRhcmVhJ10gPSAnWm9uZSBkZSB0ZXh0ZSc7CiRsYW5nWydmaWVsZHR5cGVfdGV4dGlucHV0J10gPSAnRW50ciZlYWN1dGU7ZSB0ZXh0ZSc7CiRsYW5nWydwcm9tcHRfdXNlX3d5c2l3eWcnXSA9ICdVdGlsaXNlciBsJiMwMzk7JmVhY3V0ZTtkaXRldXIgV1lTSVdZRyBwb3VyIG1vZGlmaWVyIGxlcyB2YWxldXJzIGRlIGNlIGNoYW1wJzsKJGxhbmdbJ3Byb21wdF9kZWZhdWx0X2NvbnRlbnQnXSA9ICdDb250ZW51IHBhciBkJmVhY3V0ZTtmYXV0IHBvdXIgdW5lIHpvbmUgZGUgdGV4dGUnOwokbGFuZ1sncHJvbXB0X2Ryb3Bkb3duX29wdGlvbnMnXSA9ICdPcHRpb25zICh1bmUgcGFyIGxpZ25lKSc7CiRsYW5nWydwcm9tcHRfZmllbGRfbWF4bGVuZ3RoJ10gPSAnTG9uZ3VldXIgbWF4aW1hbGUgZHUgY2hhbXAnOwokbGFuZ1sncHJvbXB0X2ZpZWxkX2xlbmd0aCddID0gJ0xvbmd1ZXVyIGR1IGNoYW1wJzsKJGxhbmdbJ3Byb21wdF9maWVsZF90eXBlJ10gPSAnVHlwZSBkZSBjaGFtcCc7CiRsYW5nWydwcm9tcHRfZmllbGRfbmFtZSddID0gJ05vbSBkdSBjaGFtcCc7CiRsYW5nWyd0aXRsZV9hZGRfZmllbGQnXSA9ICdBam91dGVyIG91IG1vZGlmaWVyIHVuZSBkJmVhY3V0ZTtmaW5pdGlvbiBkZSBjaGFtcCc7CiRsYW5nWydmaWVsZF9kZWZpbml0aW9ucyddID0gJ0QmZWFjdXRlO2Zpbml0aW9ucyBkZSBjaGFtcCc7CiRsYW5nWydwcm9tcHRfYWRkX2ZpZWxkJ10gPSAnQWpvdXRlciB1bmUgZCZlYWN1dGU7ZmluaXRpb24gZGUgY2hhbXAnOwokbGFuZ1sncGFyYW1fYWN0aW9uJ10gPSAnU3AmZWFjdXRlO2NpZmllIGxlIGNvbXBvcnRlbWVudCBkdSBtb2R1bGUuIExlcyB2YWxldXJzIHBvc3NpYmxlcyBzb250IDoNCjx1bD4NCjxsaT48ZW0+ZGVmYXVsdDwvZW0+IDogZm9uY3Rpb25uZW1lbnQgcGFyIGQmZWFjdXRlO2ZhdXQ8L2xpPg0KPGxpPmRldGFpbCA6IGFmZmljaGUgbGUgZCZlYWN1dGU7dGFpbCBkJiMwMzk7dW4gZmljaGllciBlbiBmb25jdGlvbiBkdSBwYXJhbSZlZ3JhdmU7dHJlIDxlbT51cGxvYWRfaWQ8L2VtPjwvbGk+DQo8bGk+eW91c2VuZGl0IDogYWZmaWNoZSB1biBmb3JtdWxhaXJlIHBvdXIgbCYjMDM5O2Vudm9pIGQmIzAzOTt1biBmaWNoaWVyIGV0IHNvbiBwYXJ0YWdlIHZlcnMgZGlmZiZlYWN1dGU7cmVudGVzIGFkcmVzc2VzIGVuIHVuZSBvcCZlYWN1dGU7cmF0aW9uPC9saT4NCjwvdWw+JzsKJGxhbmdbJ3BhcmFtX3NlbmRmaWxlcGFnZSddID0gJ1NwJmVhY3V0ZTtjaWZpZSBsJiMwMzk7SUQgb3UgbCYjMDM5O2FsaWFzIGRlIGxhIHBhZ2UgcXVpIGRvaXQgJmVjaXJjO3RyZSB1dGlsaXMmZWFjdXRlO2UgcG91ciBsZSBmb3JtdWxhaXJlIGQmIzAzOTtlbnZvaSBkZSBmaWNoaWVyJzsKJGxhbmdbJ2ZpbGVfdXBsb2FkZWQnXSA9ICdGaWNoaWVyIHVwbG9hZCZlYWN1dGU7IGF2ZWMgc3VjYyZlZ3JhdmU7cyc7CiRsYW5nWyd0byddID0gJ0EnOwokbGFuZ1sndGl0bGVfeW91c2VuZGl0Zm9ybV90ZW1wbGF0ZSddID0gJ0Fqb3V0L01vZGlmaWNhdGlvbiBkZSBnYWJhcml0IGQmIzAzOTtlbnZvaSBZb3VTZW5kSXQnOwokbGFuZ1sneW91c2VuZGl0Zm9ybV90ZW1wbGF0ZSddID0gJ0dhYmFyaXRzIGQmIzAzOTtlbnZvaSBZb3VTZW5kSXQnOwokbGFuZ1sndGl0bGVfeW91c2VuZGl0Zm9ybV9zeXNkZWZhdWx0J10gPSAnR2FiYXJpdCAmcXVvdDtZb3VTZW5kSXQmcXVvdDsgcGFyIGQmZWFjdXRlO2ZhdXQgZHUgc3lzdCZlZ3JhdmU7bWUnOwokbGFuZ1snbXNnX2ZpbGVfc2VudCddID0gJ1VuIG1lc3NhZ2UgYSAmZWFjdXRlO3QmZWFjdXRlOyBlbnZveSZlYWN1dGU7IGF1eCBhZHJlc3NlcyBzJmVhY3V0ZTtsZWN0aW9ubiZlYWN1dGU7ZXMuIElsIGNvbnRpZW50IGRlcyBpbmZvcm1hdGlvbnMgJmFncmF2ZTsgcHJvcG9zIGR1IGZpY2hpZXIgc3VyIGxhIG1hbmkmZWdyYXZlO3JlIGRlIGxlIHImZWFjdXRlO2N1cCZlYWN1dGU7cmVyLic7CiRsYW5nWydlcnJvcl9ub2FkZHJlc3NlcyddID0gJ1ZvdXMgZGV2ZXogcmVudHJlciBhdSBtb2lucyB1bmUgYWRyZXNzZSBkZSBkZXN0aW5hdGlvbic7CiRsYW5nWydlcnJvcl9ub3N1YmplY3QnXSA9ICdWb3VzIGRldmV6IGVudHJlciB1biBzdWpldCc7CiRsYW5nWydzdWJqZWN0J10gPSAnU3VqZXQnOwokbGFuZ1sndGl0bGVfc2VuZGZpbGVwYWdlJ10gPSAnUGFnZSBwb3VyIGxlIGZvcm11bGFpcmUgJnF1b3Q7RW52b3llciB1biBmaWNoaWVyJnF1b3Q7JzsKJGxhbmdbJ2ZpbGVfaW5mbyddID0gJ0luZm9zIGZpY2hpZXInOwokbGFuZ1snc2VuZCddID0gJ0Vudm95JmVhY3V0ZTsnOwokbGFuZ1snbm90ZXMnXSA9ICdOb3RlcyAnOwokbGFuZ1snYWRkcmVzc2VlcyddID0gJ0Vudm95ZXIgbGVzIGluZm9ybWF0aW9ucyBjb25jZXJuYW50IGNlIGZpY2hpZXIgJmFncmF2ZTsnOwokbGFuZ1sncHJvbXB0X3NlbmRmaWxlX2VtYWlsX3RlbXBsYXRlJ10gPSAnR2FiYXJpdCBkJiMwMzk7ZW1haWwgcG91ciAmcXVvdDtFbnZveWVyIHVuIGZpY2hpZXImcXVvdDsnOwokbGFuZ1sndGl0bGVfc2VuZGZpbGVmb3JtX3RlbXBsYXRlJ10gPSAnQWpvdXRlciBvdSBtb2RpZmllciB1biBnYWJhcml0IHBvdXIgbGUgZm9ybXVsYWlyZSAmcXVvdDtFbnZveWVyIHVuIGZpY2hpZXImcXVvdDsnOwokbGFuZ1snc2VuZGZpbGVmb3JtX3RlbXBsYXRlJ10gPSAnR2FiYXJpdCBkZSBmb3JtdWxhaXJlICZxdW90O0Vudm95ZXIgdW4gZmljaGllciZxdW90Oyc7CiRsYW5nWydwcm9tcHRfbm90aWZ5X2VtYWlsX3RlbXBsYXRlJ10gPSAnR2FiYXJpdCBkdSBjb3VycmllbCBkZSBub3RpZmljYXRpb24gbG9yc3F1JiMwMzk7dW4gZmljaGllciBhICZlYWN1dGU7dCZlYWN1dGU7IHVwbG9hZCZlYWN1dGU7JzsKJGxhbmdbJ3RpdGxlX3NlbmRmaWxlZm9ybV9zeXNkZWZhdWx0J10gPSAnR2FiYXJpdCBwYXIgZCZlYWN1dGU7ZmF1dCBwb3VyIGxlIGZvcm11bGFpcmUgJnF1b3Q7RW52b3llciB1biBmaWNoaWVyJnF1b3Q7JzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeWRlbGV0YWJsZSddID0gJ0xlcyBmaWNoaWVycyBkZSBjZXR0ZSBjYXQmZWFjdXRlO2dvcmllIHBldXZlbnQgJmVjaXJjO3RyZSBzdXBwcmltJmVhY3V0ZTtzJzsKJGxhbmdbJ3RpdGxlX2FsbG93X2RlbGV0ZSddID0gJ0F1dG9yaXNlciBsYSBzdXBwcmVzc2lvbiBkZSBmaWNoaWVycyBkZXB1aXMgbGUgZnJvbnRlbmQnOwokbGFuZ1snZGVmYXVsdF90ZW1wbGF0ZXMnXSA9ICdNb2QmZWdyYXZlO2xlcyBwYXIgZCZlYWN1dGU7ZmF1dCc7CiRsYW5nWydmaXJzdHBhZ2UnXSA9ICdQcmVtaSZlZ3JhdmU7cmUgcGFnZSc7CiRsYW5nWydwcmV2cGFnZSddID0gJ1BhZ2UgcHImZWFjdXRlO2MmZWFjdXRlO2RlbnRlJzsKJGxhbmdbJ25leHRwYWdlJ10gPSAnUGFnZSBzdWl2YW50ZSc7CiRsYW5nWydsYXN0cGFnZSddID0gJ0Rlcm5pJmVncmF2ZTtyZSBwYWdlJzsKJGxhbmdbJ2ZpcnN0cGFnZV9hcnJvdyddID0gJzw8JzsKJGxhbmdbJ3ByZXZwYWdlX2Fycm93J10gPSAnPCc7CiRsYW5nWyduZXh0cGFnZV9hcnJvdyddID0gJz4nOwokbGFuZ1snbGFzdHBhZ2VfYXJyb3cnXSA9ICc+Pic7CiRsYW5nWydwYWdlJ10gPSAnUGFnZSAnOwokbGFuZ1snb2YnXSA9ICdEZSc7CiRsYW5nWydwcm9tcHRfZ3JvdXBsaXN0J10gPSAnR3JvdXBlcyBGRVUgYXV0b3JpcyZlYWN1dGU7cyc7CiRsYW5nWydpbmZvX2dyb3VwbGlzdCddID0gJ1MmZWFjdXRlO2xlY3Rpb25uZXogbGVzIGdyb3VwZXMgRkVVIHF1aSBzb250IGF1dG9yaXMmZWFjdXRlO3MgJmFncmF2ZTsgYWNjJmVhY3V0ZTtkZXIgYXV4IGZpY2hpZXJzIGRlIGNldHRlIGNhdCZlYWN1dGU7Z29yaWUuIEQmZWFjdXRlOy1zJmVhY3V0ZTtsZWN0aW9ubmV6IChDdHJsICsgY2xpYykgdG91dGVzIGxlcyBlbnRyJmVhY3V0ZTtlcyBwb3VyIHBlcm1ldHRyZSBsJiMwMzk7YWNjJmVncmF2ZTtzICZhZ3JhdmU7IHRvdXMuJzsKJGxhbmdbJ3RpdGxlX3NjYW4nXSA9ICdCYWxheWFnZSBwb3VyIGxlcyBub3V2ZWF1eCBmaWNoaWVycyBkYW5zIGNldHRlIGNhdCZlYWN1dGU7Z29yaWUnOwokbGFuZ1sndGl0bGVfY3JlYXRlX3RodW1ibmFpbHMnXSA9ICdDciZlYWN1dGU7ZXIgbGVzIG1pbmlhdHVyZXMgbWFucXVhbnRlcyBkZXMgZmljaGllcnMgZGUgY2V0dGUgY2F0JmVhY3V0ZTtnb3JpZSc7CiRsYW5nWydjcmVhdGVfdGh1bWJuYWlscyddID0gJ0NyJmVhY3V0ZTtlciBsZXMgbWluaWF0dXJlcyc7CiRsYW5nWyd0aXRsZV9jcmVhdGVfdGh1bWJuYWlsJ10gPSAnKFJlKWNyJmVhY3V0ZTtlciBsYSBtaW5pYXR1cmUgcG91ciBjZSBmaWNoaWVyJzsKJGxhbmdbJ2NyZWF0ZV90aHVtYm5haWwnXSA9ICdDciZlYWN1dGU7ZXIgbGEgbWluaWF0dXJlJzsKJGxhbmdbJ2Vycm9yX3BhdGhlcnJvciddID0gJ1ImZWFjdXRlO3BlcnRvaXJlIGltcG9zc2libGUgJmFncmF2ZTsgb3V2cmlyIChwcm9ibCZlZ3JhdmU7bWUgZGUgZHJvaXRzID8pJzsKJGxhbmdbJ3RpdGxlX2Rvd25sb2FkX2NodW5rc2l6ZSddID0gJ1RhaWxsZSBkZSBjaGFxdWUgbW9yY2VhdSB0JmVhY3V0ZTtsJmVhY3V0ZTtjaGFyZyZlYWN1dGU7Jm5ic3A7JzsKJGxhbmdbJ2luZm9fZG93bmxvYWRfY2h1bmtzaXplJ10gPSAnQWp1c3RlciBjZSBwYXJhbSZlZ3JhdmU7dHJlIGFmZmVjdGVyYSBsYSB2aXRlc3NlIGRlIHQmZWFjdXRlO2wmZWFjdXRlO2NoYXJnZW1lbnQgKGRvd25sb2FkKSBldCBwZXV0IGFpZGVyIGRhbnMgbGVzIGVudmlyb25uZW1lbnRzICZhZ3JhdmU7IGZhaWJsZSBjYXBhY2l0JmVhY3V0ZTsgbSZlYWN1dGU7bW9pcmUnOwokbGFuZ1snd2FybmluZ19zYWZlX21vZGUnXSA9ICdMZSBQSFAgJnF1b3Q7c2FmZSBtb2RlJnF1b3Q7IGVzdCBhY3RpdiZlYWN1dGU7LiBDZWxhIHBldXQgcG9zZXIgdW4gcHJvYmwmZWdyYXZlO21lIGF1IHQmZWFjdXRlO2wmZWFjdXRlO2NoYXJnZW1lbnQgKHBlcm1pc3Npb25zKSBldCBwZXV0IGF1c3NpIGludGVyZiZlYWN1dGU7cmVyIGF2ZWMgbGEgY2FwYWNpdCZlYWN1dGU7IGRlIGNlIG1vZHVsZSAmYWdyYXZlOyBlbnZveWVyIGRlcyBmaWNoaWVycyBwb3VyIGNhdXNlIGQmIzAzOTtpbXBvc3NpYmlsaXQmZWFjdXRlOyBkZSBtb2RpZmllciBkZXMgY29uZmlndXJhdGlvbnMgZGVzIGZpY2hpZXJzIGluaS4gVm91cyAmZWNpcmM7dGVzIGludml0JmVhY3V0ZTsgJmFncmF2ZTsgY29udGFjdGVyIHZvdHJlIGgmZWFjdXRlO2JlcmdldXIgcG91ciByJmVhY3V0ZTtzb3VkcmUgY2UgcHJvYmwmZWdyYXZlO21lLic7CiRsYW5nWydwYXJhbV9kZXRhaWxwYWdlJ10gPSAnVXRpbGUgcG91ciBsJiMwMzk7YWZmaWNoYWdlIGQmIzAzOTt1biByYXBwb3J0IGQmZWFjdXRlO3RhaWxsJmVhY3V0ZTsgZW4gdXRpbGlzYW50IHVuIGF1dHJlIG1vZCZlZ3JhdmU7bGUgZGUgcGFnZSwgY2UgcGFyYW0mZWdyYXZlO3RyZSBwcmVuZCBsJiMwMzk7aWRlbnRpZmlhbnQgKGlkKSBkZSBsYSBwYWdlIG91IGwmIzAzOTthbGlhcyBkZSBsYSBwYWdlIGQmIzAzOTt1bmUgcGFnZSBxdWkgZG9pdCAmZWNpcmM7dHJlIHV0aWxpcyZlYWN1dGU7IHBvdXIgYWZmaWNoZXIgbGUgZCZlYWN1dGU7dGFpbCBkZSByYXBwb3J0JzsKJGxhbmdbJ3BhcmFtX3ByZWZpeCddID0gJ1VuIGJvb2wmZWFjdXRlO2VuIHF1aSBpbmRpcXVlIHNpIGxlIG5vbSBkdSBmaWNoaWVyIGRvaXQgJmVjaXJjO3RyZSBwciZlYWN1dGU7Zml4JmVhY3V0ZTsnOwokbGFuZ1sncGFyYW1fcHJlZml4X2ZldSddID0gJ1VuIHBhcmFtJmVncmF2ZTt0cmUgYm9vbCZlYWN1dGU7ZW4gcXVpIGluZGlxdWUgcXVlIGxlIHByJmVhY3V0ZTtmaXhlIGRvaXQgY29ycmVzcG9uZHJlICZhZ3JhdmU7IGwmIzAzOTthdXRldXIsIG91IHMmIzAzOTtpbCBuJiMwMzk7ZXN0IHBhcyBzcCZlYWN1dGU7Y2lmaSZlYWN1dGU7ICZhZ3JhdmU7IGwmIzAzOTtoZXVyZSBhY3R1ZWxsZSAoZGFucyBsZSBmb3JtYXQgZGVjaGV4KSc7CiRsYW5nWydwYXJhbV9ub2NhcHRjaGEnXSA9ICdEJmVhY3V0ZTtzYWN0aXZlciBDYXB0Y2hhIChwYXIgZCZlYWN1dGU7ZmF1dCkgZGFucyBsZSBmb3JtdWxhaXJlIGQmIzAzOTtlbnZvaSc7CiRsYW5nWyd0aXRsZV91cGxvYWRmb3JtX3RlbXBsYXRlJ10gPSAnTW9kaWZpZXIgbGUgZ2FiYXJpdCBkZSBmb3JtdWxhaXJlIGQmIzAzOTtlbnZvaSc7CiRsYW5nWydjYXB0Y2hhX3RpdGxlJ10gPSAnU2Fpc2lzc2V6IGxlIHRleHRlIGEgYWZmaWNoZXIgZGFucyBjZXR0ZSBpbWFnZSc7CiRsYW5nWydlcnJvcl9jYXB0Y2hhbWlzbWF0Y2gnXSA9ICdMZSB0ZXh0ZSBlbnRyJmVhY3V0ZTsgbmUgY29ycmVzcG9uZCBwYXMgJmFncmF2ZTsgbCYjMDM5O2ltYWdlIGFmZmljaCZlYWN1dGU7ZSc7CiRsYW5nWyd0aXRsZV9hdXRvdGh1bWJuYWlsX2V4dGVuc2lvbnMnXSA9ICdDciZlYWN1dGU7ZXIgZGVzIG1pbmlhdHVyZXMgcG91ciBsZXMgZmljaGllcnMgYXZlYyBjZXMgZXh0ZW5zaW9ucyZuYnNwOyc7CiRsYW5nWyd0aXRsZV9hdXRvdGh1bWJuYWlsX3NpemUnXSA9ICdUYWlsbGUgbWF4aW11bSAocGl4ZWxzKSBkZSBsYSBtaW5pYXR1cmUgZyZlYWN1dGU7biZlYWN1dGU7ciZlYWN1dGU7ZSZuYnNwOyc7CiRsYW5nWydwcm9tcHRfdXBsb2FkX2ljb24nXSA9ICdVcGxvYWQgdW5lIGljJm9jaXJjO25lJzsKJGxhbmdbJ2luZm9fc3lzZGVmYXVsdCddID0gJ0NlIHRleHRlIGVzdCB1dGlsaXMmZWFjdXRlOyBsb3JzIGRlIGxhIGNyJmVhY3V0ZTthdGlvbiBkJiMwMzk7dW4gbm91dmVhdSBnYWJhcml0IGRlIGNlIHR5cGUnOwokbGFuZ1sndGl0bGVfZGV0YWlscnB0X3N5c2RlZmF1bHQnXSA9ICdHYWJhcml0IHBhciBkJmVhY3V0ZTtmYXV0IGR1IHJhcHBvcnQgZCZlYWN1dGU7dGFpbGwmZWFjdXRlOyc7CiRsYW5nWyd0aXRsZV9zdW1tYXJ5cnB0X3N5c2RlZmF1bHQnXSA9ICdHYWJhcml0IHNvbW1haXJlIHBhciBkJmVhY3V0ZTtmYXV0JzsKJGxhbmdbJ3RpdGxlX3VwbG9hZGZvcm1fc3lzZGVmYXVsdCddID0gJ0dhYmFyaXQgZGUgY2hhcmdlbWVudCBwYXIgZCZlYWN1dGU7ZmF1dCc7CiRsYW5nWyd0ZW1wbGF0ZSddID0gJ0dhYmFyaXQmbmJzcDsnOwokbGFuZ1sncmVzZXR0b2RlZmF1bHQnXSA9ICdSZXN0YXVyZXIgbGVzIHBhcmFtJmVncmF2ZTt0cmVzIHBhciBkJmVhY3V0ZTtmYXV0JzsKJGxhbmdbJ3RpdGxlX3N1bW1hcnlycHRfdGVtcGxhdGUnXSA9ICdNb2QmZWdyYXZlO2xlIGRlIHJhcHBvcnQgciZlYWN1dGU7c3VtJmVhY3V0ZTsnOwokbGFuZ1sndGl0bGVfZGV0YWlscnB0X3RlbXBsYXRlJ10gPSAnTW9kJmVncmF2ZTtsZSBkdSByYXBwb3J0IGRldGFpbGwmZWFjdXRlOyc7CiRsYW5nWydwcm9tcHRfbmFtZSddID0gJ05vbSc7CiRsYW5nWydwcm9tcHRfZGVmYXVsdCddID0gJ1BhciBkJmVhY3V0ZTtmYXV0JzsKJGxhbmdbJ2xlZ2VuZF91cGxvYWRmb3JtJ10gPSAnRW52b3llciB1biBmaWNoaWVyJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdwYXJhbSddID0gJ1VuIHBhcmFtJmVncmF2ZTt0cmUgcmVxdWlzIGVzdCBtYW5xdWFudCc7CiRsYW5nWydlcnJvcl9taXNzaW5nbmFtZSddID0gJ1VuIG5vbSBwb3VyIGxlIHR5cGUgZGUgZmljaGllciBkb2l0ICZlY2lyYzt0cmUgc3AmZWFjdXRlO2NpZmkmZWFjdXRlOyc7CiRsYW5nWydlcnJvcl9taXNzaW5nZXh0ZW5zaW9ucyddID0gJ0F1IG1vaW5zIHVuZSBleHRlbnNpb24gZGUgZmljaGllciBkb2l0ICZlY2lyYzt0cmUgc3AmZWFjdXRlO2NpZmkmZWFjdXRlO2UnOwokbGFuZ1snZXJyb3JfbWlzc2luZ2ljb24nXSA9ICdVbmUgaWMmb2NpcmM7bmUgZG9pdCAmZWNpcmM7dHJlIHNwJmVhY3V0ZTtjaWZpJmVhY3V0ZTtlJzsKJGxhbmdbJ2Vycm9yX25vc3VjaHJvdyddID0gJ0xhIGxpZ25lIHNwJmVhY3V0ZTtjaWZpJmVhY3V0ZTtlIG4mIzAzOTthIHBhcyBwdSAmZWNpcmM7dHJlIHRyb3V2JmVhY3V0ZTtlJzsKJGxhbmdbJ25hbWVfdW5rbm93biddID0gJ0luY29ubnUnOwokbGFuZ1snZGVzY3JpcHRpb25fdW5rbm93biddID0gJ0Rlc2NyaXB0aW9uIGR1IHR5cGUgZGUgZmljaGllciBwb3VyIGxlcyBmaWNoaWVycyBkaWZmJmVhY3V0ZTtyZW50cyc7CiRsYW5nWydpbWFnZSddID0gJ0ltYWdlICc7CiRsYW5nWydpY29uJ10gPSAnSWMmb2NpcmM7bmUnOwokbGFuZ1snZXh0ZW5zaW9ucyddID0gJ0V4dGVuc2lvbnMgZGUgZmljaGllcic7CiRsYW5nWydhZGRmaWxldHlwZSddID0gJ0Fqb3V0ZXIgdW4gbm91dmVhdSB0eXBlIGRlIGZpY2hpZXInOwokbGFuZ1snZmlsZV90eXBlcyddID0gJ1R5cGVzIGRlIGZpY2hpZXJzJzsKJGxhbmdbJ2Vycm9yX25vY2F0ZWdvcnlpZCddID0gJ0lkZW50aWZpYW50IGRlIGNhdCZlYWN1dGU7Z29yaWUgbm9uIHNwJmVhY3V0ZTtjaWYmZWFjdXRlOyc7CiRsYW5nWydlcnJvcl9ub2NhdGVnb3J5J10gPSAnQ2F0JmVhY3V0ZTtnb3JpZSBtYW5xdWFudGUnOwokbGFuZ1snZXJyb3JfdGVtcGxhdGVuYW1lZXhpc3RzJ10gPSAnVW4gbW9kJmVncmF2ZTtsZSBkZSBjZSBub20gZXhpc3RlIGQmZWFjdXRlO2omYWdyYXZlOyc7CiRsYW5nWydwcm9tcHRfdGVtcGxhdGVuYW1lJ10gPSAnTm9tIGR1IG1vZCZlZ3JhdmU7bGUmbmJzcDsnOwokbGFuZ1sncHJvbXB0X3RlbXBsYXRlJ10gPSAnTm9tIGR1IG1vZCZlZ3JhdmU7bGUmbmJzcDsnOwokbGFuZ1sncHJvbXB0X25ld3RlbXBsYXRlJ10gPSAnQ3ImZWFjdXRlO2VyIHVuIG5vdXZlYXUgbW9kJmVncmF2ZTtsZSc7CiRsYW5nWydoZWxwX09uRG93bmxvYWQnXSA9ICc8cD5VbiAmZWFjdXRlO3YmZWFjdXRlO25lbWVudCBnJmVhY3V0ZTtuJmVhY3V0ZTtyJmVhY3V0ZTsgbG9yc3F1JiMwMzk7dW4gdXRpbGlzYXRldXIgdGVybWluZSBsZSB0JmVhY3V0ZTtsJmVhY3V0ZTtjaGFyZ2VtZW50IGQmIzAzOTt1biBmaWNoaWVyPC9wPg0KPGg0PlBhcmFtJmVncmF2ZTt0cmVzPC9oND4NCjx1bD4NCjxsaT48ZW0+aWQ8L2VtPiAtIFVwbG9hZCBJRDwvbGk+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIE5vbSBkdSBmaWNoaWVyPC9saT4NCjxsaT48ZW0+aXA8L2VtPiAtIEFkcmVzc2UgSVAgZHUgdCZlYWN1dGU7bCZlYWN1dGU7Y2hhcmdldXI8L2xpPg0KPC91bD4NCic7CiRsYW5nWydoZWxwX09uRGVsZXRlQ2F0ZWdvcnknXSA9ICc8cD5VbiAmZWFjdXRlO3YmZWFjdXRlO25lbWVudCBnJmVhY3V0ZTtuJmVhY3V0ZTtyJmVhY3V0ZTsgbG9yc3F1JiMwMzk7dW4gdXRpbGlzYXRldXIgc3VwcHJpbWUgdW5lIGNhdCZlYWN1dGU7Z29yaWU8L3A+DQo8aDQ+UGFyYW0mZWdyYXZlO3RyZXM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBOb20gZGUgbGEgY2F0JmVhY3V0ZTtnb3JpZTwvbGk+DQo8bGk+PGVtPnBhdGg8L2VtPiAtIENoZW1pbiBkZSBsYSBjYXQmZWFjdXRlO2dvcmllPC9saT4NCjwvdWw+DQonOwokbGFuZ1snaGVscF9PbkNyZWF0ZUNhdGVnb3J5J10gPSAnPHA+VW4gJmVhY3V0ZTt2JmVhY3V0ZTtuZW1lbnQgZyZlYWN1dGU7biZlYWN1dGU7ciZlYWN1dGU7ICZhZ3JhdmU7IGxhIGNyJmVhY3V0ZTthdGlvbiBkJiMwMzk7dW5lIGNhdCZlYWN1dGU7Z29yaWU8L3A+DQo8aDQ+UGFyYW0mZWdyYXZlO3RyZXM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBMZSBub20gZGUgbGEgY2F0JmVhY3V0ZTtnb3JpZTwvbGk+DQo8bGk+PGVtPmRlc2NyaXB0aW9uPC9lbT4gLSBMYSBkZXNjcmlwdGlvbiBkZSBsYSBjYXQmZWFjdXRlO2dvcmllPC9saT4NCjxsaT48ZW0+cGF0aDwvZW0+IC0gTGUgY2hlbWluIGRlIGxhIGNhdCZlYWN1dGU7Z29yaWU8L2xpPg0KPGxpPjxlbT5wYXRoPC9lbT4gLSBVbiBmbGFnIHF1aSBpbmRpcXVlIHNpIGxhIGNhdCZlYWN1dGU7Z29yaWUgcGV1dCAmZWNpcmM7dHJlIGxpc3QmZWFjdXRlO2U8L2xpPg0KPC91bD4NCic7CiRsYW5nWydoZWxwX09uUmVtb3ZlJ10gPSAnPHA+QW4gJmVhY3V0ZTt2JmVhY3V0ZTtuZW1lbnQgZyZlYWN1dGU7biZlYWN1dGU7ciZlYWN1dGU7IGxvcnNxdSYjMDM5O3VuIGZpY2hpZXIgZXN0IHN1cHByaW0mZWFjdXRlOyB2aWEgbCYjMDM5O2ludGVyZmFjZSBhZG1pbiBvdSAmcXVvdDtmcm9udGVuZCZxdW90OzwvcD4NCjxoND5QYXJhbSZlZ3JhdmU7dHJlczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIE5vbSBkdSBmaWNoaWVyIHN1cHByaW0mZWFjdXRlOzwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBJZGVudGlmaWFudCBkdSBmaWNoaWVyIHN1cHByaW0mZWFjdXRlOzwvbGk+DQo8bGk+PGVtPmNhdGVnb3J5X2lkPC9lbT4gLSBJZGVudGlmaWFudCBkZSBsYSBjYXQmZWFjdXRlO2dvcmllPC9saT4NCjwvdWw+DQonOwokbGFuZ1snaGVscF9PblVwbG9hZCddID0gJzxwPlVuICZlYWN1dGU7diZlYWN1dGU7bmVtZW50IGcmZWFjdXRlO24mZWFjdXRlO3ImZWFjdXRlOyBsb3JzcXUmIzAzOTt1biBmaWNoaWVyIGVzdCB0JmVhY3V0ZTtsJmVhY3V0ZTtjaGFyZyZlYWN1dGU7IHZpYSBsJiMwMzk7aW50ZXJmYWNlIGFkbWluIG91IGwmIzAzOTtpbnRlcmZhY2UgJnF1b3Q7ZnJvbnRlbmQmcXVvdDs8L3A+DQo8aDQ+UGFyYW0mZWdyYXZlO3RyZXM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5jYXRlZ29yeTwvZW0+IC0gTGUgbm9tIGRlIGxhIGNhdCZlYWN1dGU7Z29yaWU8L2xpPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBMZSBub20gZHUgZmljaGllciB0JmVhY3V0ZTtsJmVhY3V0ZTtjaGFyZyZlYWN1dGU7IDwvbGk+DQo8bGk+PGVtPnNpemU8L2VtPiAtIExhIHRhaWxsZSBkdSBmaWNoaWVyIHQmZWFjdXRlO2wmZWFjdXRlO2NoYXJnJmVhY3V0ZTsgPC9saT4NCjxsaT48ZW0+c3VtbWFyeTwvZW0+IC0gTGEgZGVzY3JpcHRpb24gY291cnRlIGR1IGZpY2hpZXIgdCZlYWN1dGU7bCZlYWN1dGU7Y2hhcmcmZWFjdXRlOyAocGV1dCAmZWNpcmM7dHJlIHZpZGUpPC9lbT48L2xpPg0KPGxpPjxlbT5kZXNjcmlwdGlvbjwvZW0+IC0gTGEgZGVzY3JpcHRpb24gbG9uZ3VlIGR1IGZpY2hpZXIgdCZlYWN1dGU7bCZlYWN1dGU7Y2hhcmcmZWFjdXRlOyAocGV1dCAmZWNpcmM7dHJlIHZpZGUpPC9lbT48L2xpPg0KPGxpPjxlbT5hdXRob3I8L2VtPiAtIEwmIzAzOTthdXRldXIgZHUgZmljaGllciB0JmVhY3V0ZTtsJmVhY3V0ZTtjaGFyZyZlYWN1dGU7IChzaSBkaXNwb25pYmxlKTwvZW0+PC9saT4NCjxsaT48ZW0+aXBfYWRkcmVzczwvZW0+IC0gIEwmIzAzOTthZHJlc3NlIElQIGR1IGNsaWVudCBxdWkgYSB0JmVhY3V0ZTtsJmVhY3V0ZTtjaGFyZyZlYWN1dGU7IGxlIGZpY2hpZXI8L2xpPg0KPC91bD4NCic7CiRsYW5nWydpbmZvX2V2ZW50X29uZGVsZXRlY2F0ZWdvcnknXSA9ICdFdiZlYWN1dGU7bmVtZW50IGcmZWFjdXRlO24mZWFjdXRlO3ImZWFjdXRlOyBsb3JzcXUmIzAzOTt1bmUgY2F0JmVhY3V0ZTtnb3JpZSBlc3Qgc3VwcHJpbSZlYWN1dGU7ZSc7CiRsYW5nWydpbmZvX2V2ZW50X29uY3JlYXRlY2F0ZWdvcnknXSA9ICdFdiZlYWN1dGU7bmVtZW50IGcmZWFjdXRlO24mZWFjdXRlO3ImZWFjdXRlOyBsb3JzcXUmIzAzOTt1bmUgY2F0JmVhY3V0ZTtnb3JpZSBlc3QgY3ImZWFjdXRlO2UnOwokbGFuZ1snaW5mb19ldmVudF9vbmRvd25sb2FkJ10gPSAnRXYmZWFjdXRlO25lbWVudCBnJmVhY3V0ZTtuJmVhY3V0ZTtyJmVhY3V0ZTsgbG9yc3F1JiMwMzk7dW4gZmljaGllciBlc3QgdCZlYWN1dGU7bCZlYWN1dGU7Y2hhcmcmZWFjdXRlOyc7CiRsYW5nWydpbmZvX2V2ZW50X29udXBsb2FkJ10gPSAnRXYmZWFjdXRlO25lbWVudCBnJmVhY3V0ZTtuJmVhY3V0ZTtyJmVhY3V0ZTsgbG9yc3F1JiMwMzk7dW4gbm91dmVhdSBmaWNoaWVyIGVzdCB0JmVhY3V0ZTtsJmVhY3V0ZTtjaGFyZyZlYWN1dGU7JzsKJGxhbmdbJ2luZm9fZXZlbnRfb25yZW1vdmUnXSA9ICdFdiZlYWN1dGU7bmVtZW50IGcmZWFjdXRlO24mZWFjdXRlO3ImZWFjdXRlOyBsb3JzcXUmIzAzOTt1biBmaWNoaWVyIGVzdCBzdXBwcmltJmVhY3V0ZTsnOwokbGFuZ1sndGl0bGVfdXNlcnRhZ19vbnVwbG9hZCddID0gJ1RhZyBkJmVhY3V0ZTtmaW5pIHBhciBsJiMwMzk7dXRpbGlzYXRldXIgYSBhcHBlbGxlciBhcHImZWdyYXZlO3MgdW4gdCZlYWN1dGU7bCZlYWN1dGU7Y2hhcmdlbWVudCB0ZXJtaW4mZWFjdXRlOyZuYnNwOyc7CiRsYW5nWydub25lJ10gPSAnQXVjdW4nOwokbGFuZ1snbWF0Y2hlc2ZvdW5kJ10gPSAnUiZlYWN1dGU7c3VsdGF0cyB0cm91diZlYWN1dGU7cyc7CiRsYW5nWydmaWx0ZXInXSA9ICdGaWx0cmUnOwokbGFuZ1sndGl0bGVfcmVkaXJlY3RvbnVwbG9hZCddID0gJ1JlZGlyaWdlciB2ZXJzIGxhIHBhZ2UgaWQvYWxpYXMgYXUgY2hhcmdlbWVudCBwYXIgbCYjMDM5O3V0aWxpc2F0ZXVyJm5ic3A7JzsKJGxhbmdbJ2RldGFpbHMnXSA9ICdEJmVhY3V0ZTt0YWlscyc7CiRsYW5nWydjb25maXJtX3ByZWZlcmVuY2VzJ10gPSAnJkVjaXJjO3Rlcy12b3VzIHN1ciBkZSB2b3Vsb2lyIG1vZGlmaWVyIGxlcyBwciZlYWN1dGU7ZiZlYWN1dGU7cmVuY2VzID8nOwokbGFuZ1snZXJyb3Jfbm9maWxlc3VwbG9hZGVkJ10gPSAnUGFzIGRlIGZpY2hpZXIgdCZlYWN1dGU7bCZlYWN1dGU7Y2hhcmcmZWFjdXRlOy4nOwokbGFuZ1sncHJvbXB0X3JlcGxhY2UnXSA9ICdBdXRvcmlzZXIgbCYjMDM5OyZlYWN1dGU7Y3Jhc2VtZW50IGRlIGZpY2hpZXInOwokbGFuZ1snaW5mb19yZXBsYWNlJ10gPSAnUmVtcGxhY2VyIHRvdXQgZmljaGllciBwb3J0YW50IGxlIG0mZWNpcmM7bWUgbm9tIChsJiMwMzk7aWRlbnRpZmlhbnQgbmUgY2hhbmdlIHBhcyknOwokbGFuZ1sncGFyYW1fbm9faW5pdGlhbCddID0gJ05lIHBhcyBhZmZpY2hlciBsZXMgcHJlbWllcnMgciZlYWN1dGU7c3VsdGF0cyBsb3JzcXVlIGxlIGZpbHRyZSBlc3QgYWN0aWYnOwokbGFuZ1sncGFyYW1fa2V5J10gPSAnRm91cm5pIHVuZSBjbGVmIGFkZGl0aW9ubmVsbGUgYXUgbW9kdWxlIHBvdXIgb3JnYW5pc2VyIGxlcyB1cGxvYWRzLiBDZXR0ZSBjbGVmIHBldXQgJmVjaXJjO3RyZSB1bmUgY2hhJmljaXJjO25lIGRlIGNhcmFjdCZlZ3JhdmU7cmUgZHUgdHlwZSA6ICYjMDM5O2ZldXNlcnM6dWlkJiMwMzk7IGV0Yy48YnIvPg0KQ2UgcGFyYW0mZWdyYXZlO3RyZSBlc3QgaGFiaXR1ZWxsZW1lbnQgbiZlYWN1dGU7Y2Vzc2FpcmUgdW5pcXVlbWVudCBsb3JzcXVlIGNlIG1vZHVsZSBlc3QgZW1iYXJxdSZlYWN1dGU7IGRhbnMgdW4gYXV0cmUgbW9kdWxlLic7CiRsYW5nWydwYXJhbV9ub2F1dGhvciddID0gJ01hc3F1ZSBsZSBjaGFtcCBhdXRldXIgZHUgZm9ybXVsYWlyZSBkZSBjaGFyZ2VtZW50LiBDZSBwYXJhbSZlZ3JhdmU7dHJlIGVzdCB2YWxhYmxlIHVuaXF1ZW1lbnQgZW4gbW9kZT0mIzAzOTt1cGxvYWQmIzAzOTsuIFNpIGxlIG1vZHVsZSBGRVUgZXN0IGluc3RhbGwmZWFjdXRlOyBldCBxdSYjMDM5O3VuIHV0aWxpc2F0ZXVyIGVzdCBjb25uZWN0JmVhY3V0ZTssIHVuIGNoYW1wIGNhY2gmZWFjdXRlOyB2YSBtYWludGVuaXIgbGUgbm9tIGQmIzAzOTt1dGlsaXNhdGV1ciBhY3R1ZWxsZW1lbnQgY29ubmVjdCZlYWN1dGU7JzsKJGxhbmdbJ3BhcmFtX3VwbG9hZF9pZCddID0gJ1NwJmVhY3V0ZTtjaWZpZSB1biBmaWNoaWVyIHVuaXF1ZSBwb3VyIGwmIzAzOTtVUkwgb3UgbGUgbGllbiBvdSBsZSBtb2RlIChjZiBjaS1kZXNzdXMpJzsKJGxhbmdbJ3BhcmFtX2RldGFpbHRlbXBsYXRlJ10gPSAnVXRpbGlzZXIgdW4gbW9kJmVncmF2ZTtsZSBkZSBjZSBub20gcG91ciBsZSByYXBwb3J0IGQmZWFjdXRlO3RhaWxsJmVhY3V0ZTsuJzsKJGxhbmdbJ3BhcmFtX3RlbXBsYXRlJ10gPSAnVXRpbGlzZXIgdW4gbW9kJmVncmF2ZTtsZSBkZSBjZSBub20gcG91ciBjZSByYXBwb3J0IG91IGZvcm11bGFpcmUuIExlIG1vZGUgZXN0IHV0aWxpcyZlYWN1dGU7IHBvdXIgZCZlYWN1dGU7dGVybWluZXIgcXVlbCB0eXBlIGRlIG1vZCZlZ3JhdmU7bGUgZXN0IHJlcXVpcywgcHVpcyB1biBub20gY29ycmVzcG9uZGFudCBlc3QgZWZmZWN0dSZlYWN1dGU7IGF1IHNlaW4gZGUgY2UgdHlwZS4nOwokbGFuZ1sncGFyYW1fZmlsdGVyJ10gPSAnQWZmaWNoZSBsZSBmb3JtdWxhaXJlIGRlIGZpbHRyYWdlJzsKJGxhbmdbJ3BhcmFtX25vX2ludGl0aWFsJ10gPSAnVXRpbGUgdW5pcXVlbWVudCBsb3JzcXVlIGxlIHBhcmFtJmVncmF2ZTt0cmUgZmlsdHJlIGVzdCBmb3VybmksIG91IG5vbiBwYXIgZCZlYWN1dGU7ZmF1dCwgdGhpcyBwYXJhbWV0ZXIgaW5kaWNhdGVzIHdldGhlciBpbml0aWFsIHJlc3VsdHMgc2hvdWxkIGJlIHJldHVybmVkJzsKJGxhbmdbJ3BhcmFtX2ZpbGV0eXBlcyddID0gJ0FmZmljaGUgdW5pcXVlbWVudCBsZXMgZmljaGllcnMgZG9udCBsZSB0eXBlIGNvcnJlc3BvbmQgJmFncmF2ZTsgY2V0dGUgbGlzdGUgc2VwYXImZWFjdXRlO2UgcGFyIGRlcyB2aXJndWxlcyc7CiRsYW5nWydwYXJhbV9zb3J0b3JkZXInXSA9ICcgIDxwPk9yZHJlcyBkZSB0cmkNCiAgPHVsPg0KICA8bGk+PGVtPmRhdGVfYXNjPC9lbT4gLSBUcmkmZWFjdXRlOyBwYXIgZGF0ZSBjcm9pc3NhbnRlPC9saT4NCiAgPGxpPjxlbT5kYXRlX2Rlc2M8L2VtPiAtIFRyaSZlYWN1dGU7IHBhciBkYXRlIGQmZWFjdXRlO2Nyb2lzc2FudGU8L2xpPg0KICA8bGk+PGVtPm5hbWVfYXNjPC9lbT4gLSBUcmkmZWFjdXRlOyBhbHBoYWImZWFjdXRlO3RpcXVlbWVudCBwYXIgb3JkcmUgY3JvaXNzYW50PC9saT4NCiAgPGxpPjxlbT5uYW1lX2Rlc2M8L2VtPiAtVHJpJmVhY3V0ZTsgYWxwaGFiJmVhY3V0ZTt0aXF1ZW1lbnQgcGFyIG9yZHJlIGQmZWFjdXRlO2Nyb2lzc2FudDwvbGk+DQogIDxsaT48ZW0+c2l6ZV9hc2M8L2VtPiAtIFRyaSZlYWN1dGU7IHBhciB0YWlsbGUgY3JvaXNzYW50ZTwvbGk+DQogIDxsaT48ZW0+c2l6ZV9kZXNjPC9lbT4gLSBUcmkmZWFjdXRlOyBwYXIgdGFpbGxlIGQmZWFjdXRlO2Nyb2lzc2FudGU8L2xpPg0KICA8bGk+PGVtPmRlc2NfYXNjPC9lbT4gLSBUcmkmZWFjdXRlOyBwYXIgZGVzY3JpcHRpb24gY3JvaXNzYW50ZS9saT4NCiAgPGxpPjxlbT5kZXNjX2Rlc2M8L2VtPiAtIFRyaSZlYWN1dGU7IHBhciBkZXNjcmlwdGlvbiBkJmVhY3V0ZTtjcm9pc3NhbnRlPC9saT4NCiAgPGxpPjxlbT5hdXRob3JfYXNjPC9lbT4gLSBUcmkmZWFjdXRlOyBwYXIgYXV0ZXVyIGNyb2lzc2FudDwvbGk+DQogIDxsaT48ZW0+YXV0aG9yX2Rlc2M8L2VtPiAtIFRyaSZlYWN1dGU7IHBhciBhdXRldXIgZCZlYWN1dGU7Y3JvaXNzYW50PC9saT4NCiAgPGxpPjxlbT5pcF9hc2M8L2VtPiAtIFRyaSZlYWN1dGU7IHBhciBhZHJlc3NlIElQIGNyb2lzc2FudGU8L2xpPg0KICA8bGk+PGVtPmlwX2Rlc2M8L2VtPiAtIFRyaSZlYWN1dGU7IHBhciBhZHJlc3NlIElQIGQmZWFjdXRlO2Nyb2lzc2FudGU8L2xpPg0KICA8bGk+PGVtPmRvd25sb2Fkc19hc2M8L2VtPiAtIFRyaSZlYWN1dGU7IHBhciBub21icmUgZGUgdCZlYWN1dGU7bCZlYWN1dGU7Y2hhcmdlbWVudCBjcm9pc3NhbnQ8L2xpPg0KICA8bGk+PGVtPmRvd25sb2Fkc19kZXNjPC9lbT4gLSBUcmkmZWFjdXRlOyBwYXIgbm9tYnJlIGRlIHQmZWFjdXRlO2wmZWFjdXRlO2NoYXJnZW1lbnQgZCZlYWN1dGU7Y3JvaXNzYW50PC9saT4NCiAgPGxpPjxlbT5yYW5kb208L2VtPiAtIFRyaSBhbCZlYWN1dGU7YXRvaXJlPC9saT4NCiAgPC91bD4NCiAgPC9wPic7CiRsYW5nWydwYXJhbV9saXN0aW5ndGVtcGxhdGUnXSA9ICdNb2QmZWdyYXZlO2xlICZhZ3JhdmU7IHV0aWxpc2VyIHBvdXIgbGlzdGVyIGxlcyBjYXQmZWFjdXRlO2dvcmllcyBhcHImZWdyYXZlO3MgdW4gY2xpcXVlIGRlcHVpcyBsYSBwYWdlIGRlIHImZWFjdXRlO3N1bSZlYWN1dGU7IGRlcyBjYXQmZWFjdXRlO2dvcmllcyc7CiRsYW5nWydwYXJhbV9saXN0aW5nc29ydG9yZGVyJ10gPSAnT3JkcmUgZGUgdHJpIChmYSZjY2VkaWw7b24gcGFyYW1fc29ydG9yZGVyKSAmYWdyYXZlOyB1dGlsaXNlciBwb3VyIGxhIGxpc3RlIGRlcyBjYXQmZWFjdXRlO2dvcmllcyBhcHImZWdyYXZlO3MgdW4gY2xpcXVlIGRlcHVpcyBsYSBwYWdlIGRlIHImZWFjdXRlO3N1bSZlYWN1dGU7IGRlcyBjYXQmZWFjdXRlO2dvcmllcyc7CiRsYW5nWydwYXJhbV9maWxlZXh0ZW5zaW9ucyddID0gJ1ZhbGlkZSB1bmlxdWVtZW50IGxvcnNxdWUgbW9kZT0mcXVvdDt1cGxvYWQmcXVvdDssIGNlIHBhcmFtJmVncmF2ZTt0cmUgbGltaXRlIGxlIHR5cGUgZGUgZmljaGllcnMgcXVpIHBldXZlbnQgJmVjaXJjO3RyZSB0JmVhY3V0ZTtsJmVhY3V0ZTtjaGFyZyZlYWN1dGU7cy4gSWwgc3VycGFzc2UgdG91dCByJmVhY3V0ZTtnbGFnZSBkZXMgcHImZWFjdXRlO2YmZWFjdXRlO3JlbmNlcyBkdSBtb2R1bGUuJzsKJGxhbmdbJ3BhcmFtX2NvdW50J10gPSAnUGVybWV0IGRlIGxpc3RlciBzZXVsZW1lbnQgbGVzIE4gcHJlbWllcnMgciZlYWN1dGU7c3VsdGF0cyBkZSBsYSByZWNoZXJjaGUgKGNvdW50PSZxdW90O04mcXVvdDspIGV0IGQmIzAzOTthbSZlYWN1dGU7bGlvcmVyIGFpbnNpIGxhIG1pc2UgZW4gcGFnZS4nOwokbGFuZ1sncGFyYW1fY2F0ZWdvcnknXSA9ICdjYXRlZ29yeT0mcXVvdDtuYW1lJnF1b3Q7DQo8cD48Yj5Ob3RlIDo8L2I+IENhdGVnb3J5IHBldXQgJmVjaXJjO3RyZSAmcXVvdDthbGwmcXVvdDssIHBvdXIgYWZmaWNoZXIgdG91dGVzIGxlcyBjYXQmZWFjdXRlO2dvcmllcyA8ZW0+bGlzdGFibGVzPC9lbT48L3A+JzsKJGxhbmdbJ3BhcmFtX21vZGUnXSA9ICcgIDx1bD4NCiAgPGxpPjxlbT5kZXRhaWxlZDwvZW0+IC0gQWZmaWNoZSB1bmUgbGlzdGUgZCZlYWN1dGU7dGFpbGwmZWFjdXRlOyBkZSB0b3V0IGxlcyBmaWNoaWVycyBkYW5zIHVuZSBjYXQmZWFjdXRlO2dvcmllPC9saT4NCiAgPGxpPjxlbT5zaW5nbGU8L2VtPiAtIEFmZmljaGUgdW4gcmFwcG9ydCBkJmVhY3V0ZTt0YWlsbCZlYWN1dGU7IGNvbmNlcm5hbnQgdW4gc2V1bCBjaGFyZ2VtZW50PC9saT4NCiAgPGxpPjxlbT51cGxvYWQ8L2VtPiAtIEFmZmljaGUgdW4gZm9ybXVsYWlyZSBwb3VyIHBlcm1ldHRyZSBhdXggRkVVIGRlIGNoYXJnZXIgZGVzIGZpY2hpZXJzPC9saT4NCiAgPGxpPjxlbT51cmwgPGk+b3I8L2k+IGxpbms8L2VtPiAtIEFmZmljaGUgdW4gbGllbiB2ZXJzIHVuIGZpY2hpZXI8L2xpPg0KICA8bGk+PGVtPnN1bW1hcnk8L2VtPiAtIEFmZmljaGUgdW5lIGxpc3RlIHImZWFjdXRlO3N1bSZlYWN1dGU7ZSBkZSB0b3VzIGxlcyBmaWNoaWVycyBkYW5zIHVuZSBjYXQmZWFjdXRlO2dvcmllPC9saT4NCiAgPC91bD4nOwokbGFuZ1sncGFyYW1fc2VsZWN0Zm9ybSddID0gJ1F1YW5kIGxlIG1vZGUgJiMwMzk7c2VsZWN0JiMwMzk7IGVzdCB1dGlsaXMmZWFjdXRlOywgY2UgcGFyYW0mZWdyYXZlO3RyZSBzcCZlYWN1dGU7Y2lmaWUgbGUgbCYjMDM5O2lkIChpZGVudGlmaWFudCkgZGUgbGEgZmV1aWxsZSBwYXJlbnQuIFV0aWxpc2VyIHBvdXIgcGFzc2VyIGxlIHBhcmFtJmVncmF2ZTt0cmUuJzsKJGxhbmdbJ3BhcmFtX3NlbGVjdG5hbWUnXSA9ICdRdWFuZCBsZSBtb2RlICYjMDM5O3NlbGVjdCYjMDM5OyBlc3QgdXRpbGlzJmVhY3V0ZTssIGNlIHBhcmFtJmVncmF2ZTt0cmUgc3AmZWFjdXRlO2NpZmllIGxlIG5vbSBkdSBjaGFtcCc7CiRsYW5nWydwYXJhbV9zZWxlY3R2YWx1ZSddID0gJ1F1YW5kIGxlIG1vZGUgJiMwMzk7c2VsZWN0JiMwMzk7IGVzdCB1dGlsaXMmZWFjdXRlOywgY2UgcGFyYW0mZWdyYXZlO3RyZSBzcCZlYWN1dGU7Y2lmaWUgbGEgdmFsZXVyIHBhciBkJmVhY3V0ZTtmYXV0IGR1IGNoYW1wJzsKJGxhbmdbJ3BhcmFtX3NlbGVjdG5vbmUnXSA9ICdRdWFuZCBsZSBtb2RlICYjMDM5O3NlbGVjdCYjMDM5OyBlc3QgdXRpbGlzJmVhY3V0ZTssIGNlIHBhcmFtJmVncmF2ZTt0cmUgaW5kaXF1ZSBzaSAmIzAzOTtub25lJiMwMzk7IGVzdCB1biBjaG9peCB2YWxpZGUnOwokbGFuZ1sncmV0dXJudG9tb2R1bGUnXSA9ICdSZXRvdXIgYXUgcGFubmVhdSBkJiMwMzk7YWRtaW5pc3RyYXRpb24gZHUgbW9kdWxlJzsKJGxhbmdbJ2Vycm9yX25vY2F0ZWdvcmllcyddID0gJ0lsIG4mIzAzOTt5IGEgcGFzIGRlIGNhdCZlYWN1dGU7Z29yaWVzIGQmZWFjdXRlO2Zpbmllcyc7CiRsYW5nWyd0aXRsZV9lbmZvcmNlZXh0ZW5zaW9ucyddID0gJ0V4aWdlciBkZXMgZXh0ZW5zaW9ucyBzdXIgdG91cyBsZXMgZmljaGllcnMgY2hhcmcmZWFjdXRlO3MmbmJzcDsnOwokbGFuZ1sncmVzdG9yZWRlZmF1bHRzY29uZmlybSddID0gJ0NldHRlIG9wJmVhY3V0ZTtyYXRpb24gdmEgcmVzdGF1cmVyIGxlcyBnYWJhcml0cyBwYXIgZCZlYWN1dGU7ZmF1dC4gVG91dGVzIGxlcyBtb2RpZmljYXRpb25zIGRlIHZvcyBnYWJhcml0cyBzZXJvbnQgcGVyZHVlcy4gJkVjaXJjO3Rlcy12b3VzIHMmdWNpcmM7cihlKSA/JzsKJGxhbmdbJ3RodW1ibmFpbCddID0gJ21pbmlhdHVyZSc7CiRsYW5nWyduZXd0aHVtYm5haWwnXSA9ICdFbnZveWVyIHVuZSBub3V2ZWxsZSBtaW5pYXR1cmUnOwokbGFuZ1snaW5mb19zdW1tYXJ5J10gPSAnVW5lIGRlc2NyaXB0aW9uIGJyJmVncmF2ZTt2ZSBkdSBmaWNoaWVyIChzaSB2aWRlLCBsZSBub20gZHUgZmljaGllciBzYW5zIGwmIzAzOTtleHRlbnNpb24gZXN0IHV0aWxpcyZlYWN1dGU7KSc7CiRsYW5nWydpbmZvX2NhdGVnb3J5bmFtZSddID0gJ1VuIG5vbSBjb3VydCBkZSB2b3RyZSBjYXQmZWFjdXRlO2dvcmllIChodW1haW5lbWVudCBjb21wciZlYWN1dGU7aGVuc2libGUpJzsKJGxhbmdbJ2luZm9fY2F0ZWdvcnlkZXNjJ10gPSAnVW5lIGRlc2NyaXB0aW9uIGRlIHZvdHJlIGNhdCZlYWN1dGU7Z29yaWUnOwokbGFuZ1snaW5mb19jYXRlZ29yeXBhdGgnXSA9ICdMZSBub20gZGUgciZlYWN1dGU7cGVydG9pcmUgJmFncmF2ZTsgbCYjMDM5O2ludCZlYWN1dGU7cmlldXIgZHUgciZlYWN1dGU7cGVydG9pcmUgZGUgY2hhcmdlbWVudCBxdWkgc2VyYSB1dGlsaXMmZWFjdXRlOyBwb3VyIHN0b2NrZXIgbGVzIGZpY2hpZXJzIGRhbnMgY2V0dGUgY2F0JmVhY3V0ZTtnb3JpZS4gU2kgbGUgciZlYWN1dGU7cGVydG9pcmUgbiYjMDM5O2V4aXN0ZSBwYXMgZCZlYWN1dGU7aiZhZ3JhdmU7LCBpbCBwZXV0ICZlY2lyYzt0cmUgY3ImZWFjdXRlOyZlYWN1dGU7Lic7CiRsYW5nWydpbmZvX2Rlc3RuYW1lJ10gPSAnQyYjMDM5O2VzdCBsZSBub3V2ZWF1IG5vbSBkdSBmaWNoaWVyIGFwciZlZ3JhdmU7cyB0JmVhY3V0ZTtsJmVhY3V0ZTtjaGFyZ2VtZW50IChwZXJtZXQgZGUgcmVub21tZXIgbGUgZmljaGllciBhdSB0JmVhY3V0ZTtsJmVhY3V0ZTtjaGFyZ2VtZW50KS4gTGFpc3NlciB2aWRlIHBvdXIgY29uc2VydmVyIGxlIG5vbSBkZSBmaWNoaWVyIG9yaWdpbmFsLic7CiRsYW5nWydlcnJvcl9jYW50Y3JlYXRlZGlyZWN0b3J5J10gPSAnSW1wb3NzaWJsZSBkZSBjciZlYWN1dGU7ZXIgY2UgciZlYWN1dGU7cGVydG9pcmUnOwokbGFuZ1snZXJyb3Jfbm9tYWlsZXJtb2R1bGUnXSA9ICdMZSBtb2R1bGUgQ01TbWFpbGVyIG5lIHBldXQgJmVjaXJjO3RyZSBjb250YWN0JmVhY3V0ZTsnOwokbGFuZ1sndXBsb2FkX25vdGlmaWNhdGlvbiddID0gJ1VuIG5vdXZlYXUgZmljaGllciBhICZlYWN1dGU7dCZlYWN1dGU7IGNoYXJnJmVhY3V0ZTsgISc7CiRsYW5nWyd0aXRsZV9lbWFpbF9vbl91cGxvYWQnXSA9ICdFbnZveWVyIGxlcyBub3RpZmljYXRpb25zIGRlIGNoYXJnZW1lbnQgJmFncmF2ZTsmbmJzcDsnOwokbGFuZ1snZW1haWxfdGVtcGxhdGUnXSA9ICdHYWJhcml0IGRlIGNvdXJyaWVsJzsKJGxhbmdbJ3RpdGxlX2R1bW15X2luZGV4X2h0bWwnXSA9ICdDciZlYWN1dGU7ZXIgdW4gZmljaGllciBpbmRleC5odG1sIGRhbnMgY2hhcXVlIHImZWFjdXRlO3BlcnRvaXJlID88YnIvPjxlbT5OZSByZW1wbGFjZXJhIHBhcyBsZSBmaWNoaWVyIGluZGV4Lmh0bWwgcyYjMDM5O2lsIGVuIGV4aXN0ZSBkJmVhY3V0ZTtqJmFncmF2ZTsgdW48L2VtPiZuYnNwOyc7CiRsYW5nWydhYm91dCddID0gJ0EgcHJvcG9zIGRlJzsKJGxhbmdbJ2Vycm9yX3Blcm1pc3Npb25kZW5pZWQnXSA9ICdBY2MmZWFjdXRlO3MgcmVmdXMmZWFjdXRlOy4gViZlYWN1dGU7cmlmaWV6IHZvcyBkcm9pdHMuJzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90d3JpdGUnXSA9ICdJbXBvc3NpYmxlIGQmIzAzOTsmZWFjdXRlO2NyaXJlJzsKJGxhbmdbJ2FkZGNhdGVnb3J5J10gPSAnQWpvdXRlciB1bmUgY2F0JmVhY3V0ZTtnb3JpZSc7CiRsYW5nWydhbGwnXSA9ICdUb3V0KGUpcyc7CiRsYW5nWydhcmV5b3VzdXJlJ10gPSAnJkVjaXJjO3Rlcy12b3VzIHN1cihlKSA/JzsKJGxhbmdbJ2F1dGhvciddID0gJ0F1dGV1cic7CiRsYW5nWydjYW5jZWwnXSA9ICdBbm51bGVyJzsKJGxhbmdbJ2Nhbm5vdG1vZGlmeXBhdGgnXSA9ICcobGUgY2hlbWluIG5lIHBldXQgJmVjaXJjO3RyZSBtb2RpZmkmZWFjdXRlOyknOwokbGFuZ1snY2F0ZWdvcmllcyddID0gJ0NhdCZlYWN1dGU7Z29yaWVzJzsKJGxhbmdbJ2NhdGVnb3J5J10gPSAnQ2F0JmVhY3V0ZTtnb3JpZSc7CiRsYW5nWydtZXNzYWdlX2NhdGVnb3J5YWRkZWQnXSA9ICdDYXQmZWFjdXRlO2dvcmllIGFqb3V0JmVhY3V0ZTtlJzsKJGxhbmdbJ2RhdGUnXSA9ICdEYXRlICc7CiRsYW5nWydkYXRldXBsb2FkZWQnXSA9ICdEYXRlIGRlIGNoYXJnZW1lbnQnOwokbGFuZ1snZGVmYXVsdCddID0gJ1BhciBkJmVhY3V0ZTtmYXV0JzsKJGxhbmdbJ2RlbGV0ZSddID0gJ1N1cHByaW1lcic7CiRsYW5nWydkZXNjcmlwdGlvbiddID0gJ0Rlc2NyaXB0aW9uICc7CiRsYW5nWydkZXN0bmFtZSddID0gJ1QmZWFjdXRlO2wmZWFjdXRlO2NoYXJnZXIgZW4gdGFudCBxdWUnOwokbGFuZ1snZGV0YWlsX3RlbXBsYXRlJ10gPSAnR2FiYXJpdHMgZGUgZCZlYWN1dGU7dGFpbCc7CiRsYW5nWydkb3dubG9hZGVkJ10gPSAnTGUgZmljaGllciAlcyBhICZlYWN1dGU7dCZlYWN1dGU7IHQmZWFjdXRlO2wmZWFjdXRlO2NoYXJnJmVhY3V0ZTsuJzsKJGxhbmdbJ2Rvd25sb2FkcyddID0gJ1QmZWFjdXRlO2wmZWFjdXRlO2NoYXJnZW1lbnRzJzsKJGxhbmdbJ2VkaXQnXSA9ICdNb2RpZmllcic7CiRsYW5nWydlZGl0Y2F0ZWdvcnknXSA9ICdNb2RpZmllciBsYSBjYXQmZWFjdXRlO2dvcmllJzsKJGxhbmdbJ2VkaXR1cGxvYWQnXSA9ICdNb2RpZmllciBsZSBmaWNoaWVyJzsKJGxhbmdbJ2Vycm9yJ10gPSAnRXJyZXVyICEnOwokbGFuZ1snZXJyb3JfcGF0aGludXNlMiddID0gJ1VuZSBjYXQmZWFjdXRlO2dvcmllIGF2ZWMgY2UgY2hlbWluICglcykgZXhpc3RlIGQmZWFjdXRlO2omYWdyYXZlOyc7CiRsYW5nWydlcnJvcl9wYXRoaW51c2UnXSA9ICdVbmUgY2F0JmVhY3V0ZTtnb3JpZSB1dGlsaXNhbnQgY2UgY2hlbWluIGV4aXN0ZSBkJmVhY3V0ZTtqJmFncmF2ZTsnOwokbGFuZ1snZXJyb3JfY2F0ZWdvcnlleGlzdHMyJ10gPSAnRXJyZXVyIDogdW5lIGNhdCZlYWN1dGU7Z29yaWUgJnF1b3Q7JXMmcXVvdDsgZXhpc3RlIGQmZWFjdXRlO2omYWdyYXZlOyc7CiRsYW5nWydlcnJvcl9jYXRlZ29yeWV4aXN0cyddID0gJ0VycmV1ciA6IGNldHRlIGNhdCZlYWN1dGU7Z29yaWUgZXhpc3RlIGQmZWFjdXRlO2omYWdyYXZlOyc7CiRsYW5nWydlcnJvcl9jYXRlZ29yeW5vdGVtcHR5J10gPSAnRXJyZXVyIDogaW1wb3NzaWJsZSBkZSBzdXBwcmltZXIgdW5lIGNhdCZlYWN1dGU7Z29yaWUgcXVpIG4mIzAzOTtlc3QgcGFzIHZpZGUnOwokbGFuZ1snZXJyb3JfY2F0ZWdvcnlub3Rmb3VuZCddID0gJ0VycmV1ciA6IGNhdCZlYWN1dGU7Z29yaWUgbm9uIHRyb3V2JmVhY3V0ZTtlICEnOwokbGFuZ1snZXJyb3JfZGJlcnJvciddID0gJ0VycmV1ciA6IGVycmV1ciBkZSBiYXNlIGRlIGRvbm4mZWFjdXRlO2VzICEnOwokbGFuZ1snZXJyb3JfZW1wdHljYXRlZ29yeSddID0gJ0VycmV1ciA6IGNhdCZlYWN1dGU7Z29yaWUgdmlkZSAhJzsKJGxhbmdbJ2Vycm9yX2VtcHR5cGF0aCddID0gJ0VycmV1ciA6IGNoZW1pbiB2aWRlICEnOwokbGFuZ1snZXJyb3JfZmlsZWV4aXN0cyddID0gJ0VycmV1ciA6IGxlIGZpY2hpZXIgJXMgZXhpc3RlIGQmZWFjdXRlO2omYWdyYXZlOyAhJzsKJGxhbmdbJ2Vycm9yX2ZpbGVub3Rmb3VuZCddID0gJ0VycmV1ciA6IGxlIGZpY2hpZXIgJXMgbiYjMDM5O2EgcGFzICZlYWN1dGU7dCZlYWN1dGU7IHRyb3V2JmVhY3V0ZTsgISc7CiRsYW5nWydlcnJvcl9pbnN1ZmZpY2llbnRwYXJhbXMnXSA9ICdFcnJldXIgOiBpbnN1ZmZpc2FuY2UgZGUgcGFyYW0mZWdyYXZlO3RyZXMgZm91cm5pcyBhdSBtb2R1bGUgISc7CiRsYW5nWydlcnJvcl9pbnZhbGlkYXV0aG9yJ10gPSAnRXJyZXVyIDogYXV0ZXVyIG5vbiB2YWxpZGUgKG91IHZpZGUpLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkY2F0ZWdvcnknXSA9ICdFcnJldXIgOiBjYXQmZWFjdXRlO2dvcmllIG5vbiB2YWxpZGUgKG91IHZpZGUpLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkZGVzY3JpcHRpb24nXSA9ICdFcnJldXIgOiBkZXNjcmlwdGlvbiBpbnZhbGlkZSAob3UgdmlkZSkuJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRmaWxlJ10gPSAnRXJyZXVyIDogbm9tIGRlIGZpY2hpZXIgbm9uIHZhbGlkZSAob3UgdmlkZSkuJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1cGxvYWRmaWxlbmFtZSddID0gJ0VycmV1ciA6IGxlcyBmaWNoaWVycyBhdmVjIGNlIG5vbSAocHJvYmFibGVtZW50IGV4dGVuc2lvbikgbmUgc29udCBwYXMgYXV0b3JpcyZlYWN1dGU7ZXMgKCVzKS4nOwokbGFuZ1snZXJyb3JfaW52YWxpZHVwbG9hZGlkJ10gPSAnRXJyZXVyIDogaWRlbnRpZmlhbnQgZGUgY2hhcmdlbWVudCBpbnZhbGlkZSc7CiRsYW5nWydlcnJvcl9ub2ZpbGVzJ10gPSAnRXJyZXVyIDogcGFzIGRlIGZpY2hpZXJzIGNvcnJlc3BvbmRhbnQgISc7CiRsYW5nWydmaWxlcyddID0gJ0ZpY2hpZXJzJzsKJGxhbmdbJ2ZpeG1lJ10gPSAnRml4ZSBsZXMgZXNwYWNlcyc7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdHZXN0aW9uIGRlIGZpY2hpZXJzIHN1ciBsZSBzaXRlJzsKJGxhbmdbJ2lkJ10gPSAnSWRlbnRpZmlhbnQnOwokbGFuZ1snaW5zdGFsbGVkJ10gPSAnVmVyc2lvbiAlcyBkdSBtb2R1bGUgaW5zdGFsbCZlYWN1dGU7Lic7CiRsYW5nWydpcF9hZGRyZXNzJ10gPSAnQWRyZXNzZSBJUCc7CiRsYW5nWydtb2RkZXNjcmlwdGlvbiddID0gJ1VuIG1vZHVsZSBxdWkgcGVybWV0IGF1eCB1dGlsaXNhdGV1cnMgZGUgdHJhbnNmJmVhY3V0ZTtyZXIgZGVzIGZpY2hpZXJzLCBldCB2b3VzIHBlcm1ldCBkZSBsZXMgZyZlYWN1dGU7cmVyLic7CiRsYW5nWyduYW1lJ10gPSAnTm9tJzsKJGxhbmdbJ3JlbmFtZW1lc3NhZ2UnXSA9ICdDaGFuZ2VyIGxlIG5vbSBpY2kgcG91ciByZW5vbW1lciBsZSBmaWNoaWVyJzsKJGxhbmdbJ3BhdGgnXSA9ICdDaGVtaW4nOwokbGFuZ1sncGF0aG1lc3NhZ2UnXSA9ICdDaGFuZ2VyIGxhIGNhdCZlYWN1dGU7Z29yaWUgaWNpIHBvdXIgZCZlYWN1dGU7cGxhY2VyIGxlcyBmaWNoaWVycyBkYW5zIHVuIGF1dHJlIHImZWFjdXRlO3BlcnRvaXJlJzsKJGxhbmdbJ3BhdGhpbnVwbG9hZHMnXSA9ICcoUGFyIHJhcHBvcnQgYXUgciZlYWN1dGU7cGVydG9pcmUgJnF1b3Q7dXBsb2Fkcy8mcXVvdDspJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsJ10gPSAnPHA+TGUgbW9kdWxlIFVwbG9hZHMgJmFncmF2ZTsgJmVhY3V0ZTt0JmVhY3V0ZTsgaW5zdGFsbCZlYWN1dGU7IGF2ZWMgc3VjYyZlZ3JhdmU7cy4gQXNzdXJlei12b3VzIGRlIHImZWFjdXRlO2dsZXIgbGVzIHBlcm1pc3Npb25zICZxdW90O01hbmFnZSBVcGxvYWRzJnF1b3Q7IHBvdXIgdXRpbGlzZXIgY2UgbW9kdWxlICE8L3A+DQo8cD48c3Ryb25nPkF0dGVudGlvbjwvc3Ryb25nPiAtIExhIGJvbm5lIG1hcmNoZSBkZSBjZSBtb2R1bGUgZCZlYWN1dGU7cGVuZCBkZSBwbHVzaWV1cnMgdmFyaWFibGVzIHBocC4gQ2VsYSBpbmNsdXMgPGVtPihtYWlzIHBhcyBzZXVsZW1lbnQpPC9lbT4gcGhwJiMwMzk7cyBtZW1vcnlfbGltaXQsIHNhZmVfbW9kZSwgZmlsZV91cGxvYWRzLCB1cGxvYWRzX21heF9maWxlc2l6ZSBldCBtYXhfZXhlY3V0aW9uX3RpbWUuIENlcyB2YXJpYWJsZXMgZGV2cm9udCBwZXV0LSZlY2lyYzt0cmUgJmVjaXJjO3RyZSBhanVzdCZlYWN1dGU7ZXMgcG91ciBxdWUgbGUgbW9kdWxlIGZvbmN0aW9ubmUgY29ycmVjdGVtZW50IHN1ciB2b3RyZSBzaXRlLiBJbCB2b3VzIGVzdCBjb25zZWlsbCZlYWN1dGU7IGRlIHRyYXZhaWxsZXIgYXZlYyB2b3RyZSBoJmVhY3V0ZTtiZXJnZXVyIG91IGFkbWluaXN0cmF0ZXVyIHBvdXIgY29uZmlndXJlciBjZXMgcGFyYW0mZWdyYXZlO3RyZXMuPC9wPic7CiRsYW5nWydwb3N0dW5pbnN0YWxsJ10gPSAnTGUgbW9kdWxlIFVwbG9hZHMgYSAmZWFjdXRlO3QmZWFjdXRlOyBzdXBwcmltJmVhY3V0ZTsuIEF1Y3VuIGZpY2hpZXIgbiYjMDM5O2EgJmVhY3V0ZTt0JmVhY3V0ZTsgc3VwcHJpbSZlYWN1dGU7IGRlIHZvdHJlIHImZWFjdXRlO3BlcnRvaXJlIGRlIHQmZWFjdXRlO2wmZWFjdXRlO2NoYXJnZW1lbnQgZXQgbCYjMDM5O2ludCZlYWN1dGU7Z3JpdCZlYWN1dGU7IGRlcyBmaWNoaWVycyBhICZlYWN1dGU7dCZlYWN1dGU7IHByJmVhY3V0ZTtzZXJ2JmVhY3V0ZTtlLic7CiRsYW5nWydwcmVmZXJlbmNlcyddID0gJ1ByJmVhY3V0ZTtmJmVhY3V0ZTtyZW5jZXMnOwokbGFuZ1sncHJlZnN1cGRhdGVkJ10gPSAnTGVzIHByJmVhY3V0ZTtmJmVhY3V0ZTtyZW5jZXMgZHUgbW9kdWxlIG9udCAmZWFjdXRlO3QmZWFjdXRlOyBtaXNlcyAmYWdyYXZlOyBqb3VyLic7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnlkZXNjJ10gPSAnRGVzY3JpcHRpb24gJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeWxpc3RhYmxlJ10gPSAnTGVzIGZpY2hpZXJzIGRlIGNlIHImZWFjdXRlO3BlcnRvaXJlIHBldXZlbnQgJmVjaXJjO3RyZSBsaXN0JmVhY3V0ZTtzJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeW5hbWUnXSA9ICdOb20gZGUgbGEgY2F0JmVhY3V0ZTtnb3JpZSc7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnlwYXRoJ10gPSAnQ2hlbWluIGR1IHNlcnZldXInOwokbGFuZ1sncHJvbXB0X2RlbGV0ZWRpcmVjdG9yeSddID0gJ1N1cHByaW1lciBsZSBkb3NzaWVyIGRlIGxhIGNhdCZlYWN1dGU7Z29yaWUgJzsKJGxhbmdbJ3Byb21wdF9tYXhfdXBsb2Fkc2l6ZSddID0gJ1RhaWxsZSBkZSBmaWNoaWVyIG1heGltYWxlIGF1dG9yaXMmZWFjdXRlO2UgKEtvKSZuYnNwOyc7CiRsYW5nWydwcm9tcHRfdmFsaWRfdXBsb2FkZXh0ZW5zaW9ucyddID0gJ0V4dGVuc2lvbnMgdmFsaWRlIHBvdXIgbCYjMDM5O3VwbG9hZCc7CiRsYW5nWydzY2FuJ10gPSAnUGFyY291cmlyJzsKJGxhbmdbJ3NlbGVjdGNhdGVnb3J5J10gPSAnQ2hvaXNpciB1bmUgY2F0JmVhY3V0ZTtnb3JpZSc7CiRsYW5nWydzaXplJ10gPSAnVGFpbGxlJzsKJGxhbmdbJ3NpemVrYiddID0gJ1RhaWxsZSAoS2IpJzsKJGxhbmdbJ3N1Ym1pdCddID0gJ0Vudm95ZXInOwokbGFuZ1snc3VtbWFyeV90ZW1wbGF0ZSddID0gJ0dhYmFyaXRzIGRlIHNvbW1haXJlJzsKJGxhbmdbJ3N1bW1hcnknXSA9ICdUaXRyZSAvIHImZWFjdXRlO3N1bSZlYWN1dGU7JzsKJGxhbmdbJ3RpdGxlX2FkbWluX3BhbmVsJ10gPSAnTW9kdWxlIGRlIGNoYXJnZW1lbnQnOwokbGFuZ1sndGl0bGVfbW9kX2FkbWluJ10gPSAnUGFubmVhdSBBZG1pbiBkdSBtb2R1bGUnOwokbGFuZ1sndGl0bGVfbW9kX3ByZWZzJ10gPSAnUHImZWFjdXRlO2YmZWFjdXRlO3JlbmNlIGR1IG1vZHVsZSc7CiRsYW5nWyd0aXRsZV9zdWJuZXRfZXhjbHVzaW9ucyddID0gJ0V4Y2x1cmUgc291cy1yJmVhY3V0ZTtzZWF1eCBkZXMgc3RhdGlzdGlxdWVzJm5ic3A7JzsKJGxhbmdbJ3RpdGxlX3ZhbGlkX3VwbG9hZGV4dGVuc2lvbnMnXSA9ICdFeHRlbnNpb25zIHZhbGlkZXMmbmJzcDsnOwokbGFuZ1sndW5pbnN0YWxsZWQnXSA9ICdNb2R1bGUgZCZlYWN1dGU7c2luc3RhbGwmZWFjdXRlOy4nOwokbGFuZ1sndXBncmFkZWQnXSA9ICdNb2R1bGUgbWlzZSAmYWdyYXZlOyBqb3VyIHZlcnMgbGEgdmVyc2lvbiAlcy4nOwokbGFuZ1sndXBsb2FkJ10gPSAnVCZlYWN1dGU7bCZlYWN1dGU7Y2hhcmdlbWVudCc7CiRsYW5nWyd1cGxvYWRlZCddID0gJ0xlIGZpY2hpZXIgJXMgJmFncmF2ZTsgJmVhY3V0ZTt0JmVhY3V0ZTsgY2hhcmcmZWFjdXRlOyBwYXIgJXMuJzsKJGxhbmdbJ3JlcGxhY2VkJ10gPSAnTGUgZmljaGllciAlcyAmYWdyYXZlOyAmZWFjdXRlO3QmZWFjdXRlOyByZW1wbGFjJmVhY3V0ZTsgcGFyICVzLic7CiRsYW5nWydkZWxldGVkJ10gPSAnTGUgZmljaGllciAlcyAmYWdyYXZlOyAmZWFjdXRlO3QmZWFjdXRlOyBzdXBwcmltJmVhY3V0ZTsuJzsKJGxhbmdbJ3VwbG9hZGZvcm1fdGVtcGxhdGUnXSA9ICdHYWJhcml0cyBkJiMwMzk7dXBsb2FkJzsKJGxhbmdbJ3VzZXJuYW1lJ10gPSAnTm9tIGQmIzAzOTt1dGlsaXNhdGV1cic7CiRsYW5nWyd3YXJuaW5nX2RlbGV0ZWNhdGVnb3J5J10gPSAnQVZFUlRJU1NFTUVOVCA6IHNveWV6IHBydWRlbnQgbG9yc3F1ZSB2b3VzIHN1cHByaW1leiBkZXMgY2F0JmVhY3V0ZTtnb3JpZXMgOiB2b3VzIHBvdXZleiBwZXJkcmUgZGVzIGZpY2hpZXJzLic7Cj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/lang/ext/it_IT.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2Vycm9yX21pc3Npbmd2YWx1ZSddID0gJ1VuIHZhbG9yZSByaWNoaWVzdG8gJmVncmF2ZTsgbWFuY2FudGUnOwokbGFuZ1snZWRpdGVkJ10gPSAnTW9kaWZpY2F0byAlcyc7CiRsYW5nWydtb3ZlZGZpbGUnXSA9ICdTcG9zdGF0byBGaWxlICVzIGluICVzJzsKJGxhbmdbJ3BhZ2VsaW1pdCddID0gJ0ZpbGUgUGVyIFBhZ2luYSc7CiRsYW5nWyd2aWV3J10gPSAnVmlzdWFsaXp6YSBGaWxlJzsKJGxhbmdbJ2VkaXRfdGhpc19maWxlJ10gPSAnTW9kaWZpY2EgQ2FtcG8nOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5X3NjYW5uYWJsZSddID0gJ1NjYW5zaW9uZSBhdXRvbWF0aWNhIGRpIHF1ZXN0YSBjYXRlZ29yaWEgcGVyIG51b3ZpIGZpbGU/JzsKJGxhbmdbJ2luZm9fY2F0ZWdvcnlfc2Nhbm5hYmxlJ10gPSAnUXVlc3RhIGNhdGVnb3JpYSB2aWVuZSBzY2Fuc2lvbmF0YSBhdXRvbWF0aWNhbWVudGUgYWxsYSByaWNlcmNhIGRpIG51b3ZpIGZpbGUgcXVhbmRvIHZpZW5lIGVzZWd1aXRvIGwmIzAzOTthY2Nlc3NvIGRhIGludGVyZmFjY2lhIHV0ZW50ZSc7CiRsYW5nWydwcm9tcHRfdGxfYWNjZXNzJ10gPSAnQWNjZXNzbyBsaW1pdGF0byBuZWwgdGVtcG8nOwokbGFuZ1sncHJvbXB0X2FsbG93X3VwbG9hZF9zZW5kZmlsZSddID0gJ1Blcm1ldHRpIGwmIzAzOTtpbnZpbyBpbW1lZGlhdG8gZGkgZmlsZSBhbCBjYXJpY2FtZW50byBkYSBwYXJ0ZSBkaSB1biBhbW1pbmlzdHJhdG9yZSc7CiRsYW5nWydtc2dfYXV0b19kZWxldGVfZmlsZSddID0gJ0VsaW1pbmEgYXV0b21hdGljYW1lbnRlIGZpbGUgc2NhZHV0bzogJXMnOwokbGFuZ1snbXNnX2F1dG9fZGVsZXRlX2ZpbGVfZmFpbGVkJ10gPSAnUHJvYmxlbWkgZGkgcGVybWVzc2ksIGVsaW1pbmF6aW9uZSBhdXRvbWF0aWNhIGRpICVzIGZhbGxpdGEnOwokbGFuZ1snaW5mb19jYXRlZ29yeV9leHBpcmVzX2hycyddID0gJ1NwZWNpZmljYSB1biBudW1lcm8gZGkgb3JlIHByaW1hIGNoZSBpIGZpbGUgZGkgcXVlc3RhIGNhdGVnb3JpYSBwb3NzZW5vIGVzc2VyZSBlbGltaW5hdGkuIFVzYXRlIHVuIHZhbG9yZSBkaSAwIHBlciBpbmRpY2FyZSBjaGUgaSBmaWxlIG5vbiBkb3ZyZWJiZXJvIGVzc2VyZSBlbGltaW5hdGknOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5X2V4cGlyZXNfaHJzJ10gPSAnTnVtZXJvIGRpIG9yZSBwcmltYSBjaGUgaSBmaWxlIGRpIHF1ZXN0YSBjYXRlZ29yaWEgdmVuZ2FubyBlbGltaW5hdGkgYXV0b21hdGljYW1lbnRlJzsKJGxhbmdbJ2luZm9fZGZsdF9jYXRlZ29yeV9leHBpcnknXSA9ICdJbCB2YWxvcmUgcHJlZGVmaW5pdG8gcGVyIG51b3ZlIGNhdGVnb3JpZSwgY2hlIGluZGljYSBwZXIgcXVhbnRvIHRlbXBvIGkgZmlsZSBhbCBzdW8gaW50ZXJubyBkZWJiYW5vIGVzaXN0ZXJlIHByaW1hIGRlbGwmIzAzOTtlbGltaW5hemlvbmUgYXV0b21hdGljYS4gVXRpbGl6emF0ZSAwIHBlciBpbmRpY2FyZSBsYSBub24gZWxpbWluYXppb25lJzsKJGxhbmdbJ3RpdGxlX2NhdGVnb3J5X2V4cGlyeSddID0gJ1BlcmlvZG8gZGkgc2NhZGVuemEgZGVsbGEgQ2F0ZWdvcmlhIDxlbT4ob3JlKTwvZW0+JzsKJGxhbmdbJ2luZm9fY2F0ZWdvcnlkZWxldGFibGUnXSA9ICdHbGkgdXRlbnRpIGF1dG9yaXp6YXRpIHBvdHJhbm5vIGVsaW1pbmFyZSBxdWVzdGkgZmlsZS4gU2lnbmlmaWNhIGNoZSB2ZXJyJmFncmF2ZTsgZm9ybml0byB1biB1cmwgbmVsbCYjMDM5O2FwcG9zaXRvIG1vZGVsbG8gcGVyIHBlcm1ldHRlcmUgbCYjMDM5O2VsaW1pbmF6aW9uZSBkZWwgZmlsZS4gVW5vIHN2aWx1cHBhdG9yZSBwdSZvZ3JhdmU7IHV0aWxpenphcmUgbGEgc2ludGFzc2kgc21hcnR5IGFkZWd1YXRhIHBlciBtb3N0cmFyZSBpbCBsaW5rIGFnbGkgdXRlbnRpIGF1dG9yaXp6YXRpLic7CiRsYW5nWydjb3B5X2ZpbGVzJ10gPSAnQ29waWEgZmlsZSc7CiRsYW5nWydlcnJvcl9maWxldG9vbGFyZ2UnXSA9ICdJbCBmaWxlIGNoZSBzdGF0ZSBjZXJjYW5kbyBkaSBjYXJpY2FyZSAmZWdyYXZlOyBwaSZ1Z3JhdmU7IGdyYW5kZSBkZWwgdmFsb3JlIG1hc3NpbW8gZGkgY2FyaWNhbWVudG8gY29uc2VudGl0byBkYSBDTVNNUyc7CiRsYW5nWydhcmV5b3VzdXJlX2RlbGV0ZWNhdGVnb3J5J10gPSAnU2lldGUgc2ljdXJpIGRpIHZvbGVyZSBlbGltaW5hcmUgcXVlc3RhIGNhdGVnb3JpYT8nOwokbGFuZ1snZXJyb3JfZGVsZXRlJ10gPSAnVW5vIGRlZ2xpIGVsZW1lbnRpIG5vbiBwdSZvZ3JhdmU7IGVzc2VyZSBlbGltaW5hdG8gKCVzKSc7CiRsYW5nWydjb25maXJtX2NhdF9tdWx0aWFjdGlvbiddID0gJ1NpZXRlIGNlcnRpIGRpIHZvbGVyZSBlc2VndWlyZSBxdWVzdGEgYXppb25lIHN1bGxlIGNhdGVnb3JpZSBzZWxlemlvbmF0ZT8nOwokbGFuZ1snZXJyb3Jfbm90aGluZ19zZWxlY3RlZCddID0gJ0Vycm9yZTogTmVzc3VuIGVsZW1lbnRvIHNlbGV6aW9uYXRvJzsKJGxhbmdbJ3dpdGhfc2VsZWN0ZWQnXSA9ICdDb24gU2VsZXppb25lOic7CiRsYW5nWydlcnJvcl9yZXBsYWNlX21pc21hdGNoZWRfZmlsZWV4dCddID0gJ1BlciBzb3N0aXR1aXJlIHVuIGZpbGUgJmVncmF2ZTsgbmVjZXNzYXJpbyBjYXJpY2FybmUgdW5vIGRlbGxvIHN0ZXNzbyB0aXBvIChlc3RlbnNpb25lIGRlbCBmaWxlKS4gSWwgZmlsZSBzZWxlemlvbmF0byBub24gY29ycmlzcG9uZGUgYSBxdWVsbG8gb3JpZ2luYWxlLic7CiRsYW5nWydyZXBsYWNlJ10gPSAnU29zdGl0dWlzY2knOwokbGFuZ1snaW5mb19yZXBsYWNlZmlsZSddID0gJ1BvdGV0ZSBjYXJpY2FyZSB1biBmaWxlIHNvc3RpdHV0aXZvLCBzZSBpbCBmaWxlICZlZ3JhdmU7IHVuJiMwMzk7aW1tYWdpbmUgZSBub24gYXZldGUgc2VsZXppb25hdG8gdW5hIG1pbmlhdHVyYSBzb3N0aXR1dGl2YSwgbmUgdmVyciZhZ3JhdmU7IGdlbmVyYXRhIHVuYSBudW92YSc7CiRsYW5nWydwcm9tcHRfcmVwbGFjZWZpbGUnXSA9ICdDYXJpY2EgZmlsZSBzb3N0aXR1dGl2byc7CiRsYW5nWyd0aXRsZV9maXhzcGFjZXMnXSA9ICdDb3JyZWdnaSBzcGF6aSBuZWwgbm9tZSBmaWxlJzsKJGxhbmdbJ2NhdGVnb3J5X2NvcGllZCddID0gJ0NhdGVnb3JpYSBjb3BpYXRhIGNvcnJldHRhbWVudGUnOwokbGFuZ1snZXJyb3JfZHVwbGljYXRlcGF0aCddID0gJ1NwZWNpZmljYXRlIHVuIG5vbWUgZGkgY2FydGVsbGEgY2hlIHNpYSBkaXZlcnNvIGRhbGwmIzAzOTtvcmlnaW5lIGUgbm9uIHNpYSBhdHR1YWxtZW50ZSBpbiB1c28nOwokbGFuZ1snb3BlcmF0aW9uX2NhbmNlbGxlZCddID0gJ09wZXJhemlvbmUgQW5udWxsYXRhJzsKJGxhbmdbJ3NvdXJjZSddID0gJ09yaWdpbmUnOwokbGFuZ1snZGVzdGluYXRpb24nXSA9ICdEZXN0aW5hemlvbmUnOwokbGFuZ1sncHJvbXB0X2NvcHlfZmlsZXMnXSA9ICdDb3BpYSBmaWxlIGRlbGxhIGNhdGVnb3JpYSc7CiRsYW5nWydpbmZvX2NvcHlfZmlsZXMnXSA9ICdDb3BpYSBpIGZpbGUgZGFsbGEgY2F0ZWdvcmlhIGRpIG9yaWdpbmUgYSBxdWVsbGEgZGkgZGVzdGluYXppb25lJzsKJGxhbmdbJ2V4dHJhJ10gPSAnRXh0cmEnOwokbGFuZ1snY29weSddID0gJ0NvcGlhJzsKJGxhbmdbJ3NlbGVjdG9uZSddID0gJ1NlbGV6aW9uYSB1bm8nOwokbGFuZ1snYXV0b3dhdGVybWFyayddID0gJ1Bvc2l6aW9uZSBhdXRvbWF0aWNhbWVudGUgd2F0ZXJtYXJrIHN1bGxlIGltbWFnaW5pJzsKJGxhbmdbJ2ltYWdlX3NldHRpbmdzJ10gPSAnSW1wb3N0YXppb25pIEltbWFnaW5lJzsKJGxhbmdbJ3Byb21wdF9nZXRmaWxlX3Jlc3VsdHBhZ2UnXSA9ICdQYWdpbmEgZGEgdXRpbGl6emFyZSBwZXIgZXJyb3JpIG8gYWx0cmkgbWVzc2FnZ2kgcmVsYXRpdmkgYWxsbyBzY2FyaWNhbWVudG8gZGVpIGZpbGUnOwokbGFuZ1snZXJyb3JfaW52YWxpZF9rZXknXSA9ICdMYSBjaGlhdmUgZGkgY2FyaWNhbWVudG8gaW5zZXJpdGEgbm9uICZlZ3JhdmU7IHZhbGlkYSAoZm9yc2UgaGEgcmFnZ2l1bnRvIGxhIGNhcGFjaXQmYWdyYXZlOyBtYXNzaW1hIGRpIHNjYXJpY2FtZW50byBvICZlZ3JhdmU7IHNjYWR1dGEpJzsKJGxhbmdbJ2RmbHRfdGltZWxpbWl0ZWRfc3ViamVjdCddID0gJ3skc2l0ZW5hbWV9IC0gQXZldGUgcmljZXZ1dG8gZGlyaXR0aSBkaSBhY2Nlc3NvIHRlbXBvcmFuZWkgYSB7JGVudHJ5LT5uYW1lfHN0cmlwX3RhZ3N9JzsKJGxhbmdbJ3Byb21wdF90aW1lbGltaXRlZF9zdWJqZWN0J10gPSAnT2dnZXR0byBkZWxsJiMwMzk7ZW1haWwgY3JlYXRhIHF1YW5kbyBzaSBpbnZpYSB1biB1cmwgY29uIHNjYWRlbnphIGRpIHRlbXBvJzsKJGxhbmdbJ3Byb21wdF90aW1lbGltaXRlZF9hdXRvZGVsZXRlJ10gPSAnRWxpbWluYSBhdXRvbWF0aWNhbWVudGUgZWxlbWVudGkgc2NhZHV0aSBkb3BvIE4gb3JlIDxlbT4oc3BlY2lmaWNhdGUgMCBwZXIgZGlzYWJpbGl0YXJlIGwmIzAzOTtlbGltaW5hemlvbmUgYXV0b21hdGljYSk8L2VtPjonOwokbGFuZ1sncHJvbXB0X3RpbWVsaW1pdGVkX3NlbmRpdCddID0gJ0ludmlhcmUgcXVlc3RvIHVybCBhZ2xpIGluZGlyaXp6aSBlbWFpbCBzcGVjaWZpY2F0aT8nOwokbGFuZ1sndXJsX2tleSddID0gJ0NoaWF2ZSBVUkwnOwokbGFuZ1snY3JlYXRlZCddID0gJ0NyZWF0byc7CiRsYW5nWydleHBpcmVzJ10gPSAnU2NhZGUnOwokbGFuZ1snYWRkZWRpdF90aW1lbGltaXRlZF9rZXknXSA9ICdBZ2dpdW5naS9Nb2RpZmljYSBDaGlhdmUgVGVtcG9yYW5lYSc7CiRsYW5nWyd0aW1lX2xpbWl0ZWRfa2V5X2FkZGVkJ10gPSAnQ2hpYXZlIFRlbXBvcmFuZWEgQWdnaXVudGEnOwokbGFuZ1snbnVtX2hvdXJzJ10gPSAnTnVtZXJvIGRpIG9yZSc7CiRsYW5nWydudW1fZG93bmxvYWRzJ10gPSAnTnVtZXJvIGRpIFNjYXJpY2FtZW50aSc7CiRsYW5nWydlbWFpbF9hZGRyZXNzJ10gPSAnSW5kaXJpenpvIEVtYWlsJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdfaW52YWxpZCddID0gJ1ZhbG9yZSByaWNoaWVzdG8gbm9uIHByZXNlbnRlIG8gbm9uIHZhbGlkbzogJXMnOwokbGFuZ1snYWRkX3RpbWVsaW1pdGVkX2tleSddID0gJ0FnZ2l1bmdpIENoaWF2ZSBUZW1wb3JhbmVhJzsKJGxhbmdbJ2ZpbGVfaW5mbzInXSA9ICdGaWxlICVzIChpZD0lZCknOwokbGFuZ1snaW5mb190aW1lbGltaXRlZF9kb3dubG9hZHMnXSA9ICdTcGVjaWZpY2EgaWwgbnVtZXJvIHByZWRlZmluaXRvIGRpIHZvbHRlIGluIGN1aSB1biBmaWxlLCBpZGVudGlmaWNhdG8gZGEgdW5hIGNoaWF2ZSBzcGVjaWZpY2EsIHBvc3NhIGVzc2VyZSBzY2FyaWNhdG8nOwokbGFuZ1sncHJvbXB0X3RpbWVsaW1pdGVkX2Rvd25sb2FkcyddID0gJ051bWVybyBQcmVkZWZpbml0byBTY2FyaWNhbWVudGknOwokbGFuZ1snaW5mb190aW1lbGltaXRlZF9ob3VycyddID0gJ1NwZWNpZmljYSBpbCBudW1lcm8gcHJlZGVmaW5pdG8gZGkgb3JlIGRpIHZhbGlkaXQmYWdyYXZlOyBwZXIgdW5hIGNoaWF2ZSB0ZW1wb3JhbmVhLiAgU3BlY2lmaWNhdGUgMCBwZXIgb3JlIGlsbGltaXRhdGUnOwokbGFuZ1sncHJvbXB0X3RpbWVsaW1pdGVkX2hvdXJzJ10gPSAnTnVtZXJvIGRpIG9yZSBkaSB2YWxpZGl0JmFncmF2ZTsgQ2hpYXZlIFRlbXBvcmFuZWEnOwokbGFuZ1sndGltZWxpbWl0ZWRfdXJsX3NldHRpbmdzJ10gPSAnSW1wb3N0YXppb25pIENoaWF2ZSBUZW1wb3JhbmVhJzsKJGxhbmdbJ21hbmFnZV90aW1lbGltaXRlZCddID0gJ0dlc3Rpc2NpIEFjY2Vzc28gVGVtcG9yYW5lbyc7CiRsYW5nWyd1cGxvYWRpbmdfc2V0dGluZ3MnXSA9ICdJbXBvc3RhemlvbmkgQ2FyaWNhbWVudG8gRmlsZSc7CiRsYW5nWydnZW5lcmFsX3NldHRpbmdzJ10gPSAnSW1wb3N0YXppb29uaSBHZW5lcmFsaSc7CiRsYW5nWyd0aHVtYm5haWxfc2V0dGluZ3MnXSA9ICdDcmVhemlvbmUgTWluaWF0dXJlJzsKJGxhbmdbJ3RpdGxlX3JlZGlyZWN0X29uX3NlbmRmaWxlJ10gPSAnUGFnaW5hIGEgY3VpIHJlaW5kaXJpenphcmUgZG9wbyBsJiMwMzk7aW52aW8gZGkgdW4gZmlsZSc7CiRsYW5nWydsYmxfYmFjayddID0gJ0luZGlldHJvJzsKJGxhbmdbJ2xibF90ZW1wbGF0ZXMnXSA9ICdNb2RpZmljYSBNb2RlbGxpJzsKJGxhbmdbJ3Byb21wdF9wdWJsaWNfZmllbGQnXSA9ICdJbCBjYW1wbyAmZWdyYXZlOyBwdWJibGljbyA8ZW0+KHB1Jm9ncmF2ZTsgZXNzZXJlIHZpc3VhbGl6emF0byBkYWkgdmlzaXRhdG9yaSBkZWwgc2l0byk8L2VtPic7CiRsYW5nWyd1cGxvYWRfZWRpdGVkJ10gPSAnRGV0dGFnbGkgRmlsZSBNb2RpZmljYXRpIHBlciAlcyc7CiRsYW5nWydpbmZvX3RodW1ibmFpbCddID0gJ1VuIGZpbGUgbWluaWF0dXJhIG9wemlvbmFsZSc7CiRsYW5nWyd1cGxvYWRfZmlsZSddID0gJ0NhcmljYSBOdW92byBGaWxlJzsKJGxhbmdbJ21zZ19maWVsZF9kZWxldGVkJ10gPSAnQ2FtcG8gZWxpbWluYXRvJzsKJGxhbmdbJ2Fza19kZWxldGVfZmllbGQnXSA9ICdTaWV0ZSBjZXJ0aSBkaSB2b2xlcmUgZWxpbWluYXJlIHF1ZXN0YSBkZWZpbml6aW9uZSBkaSBjYW1wbyBlIHR1dHRpIGkgdmFsb3JpIGFzc29jaWF0aT8nOwokbGFuZ1sneWVzJ10gPSAnUyZpZ3JhdmU7JzsKJGxhbmdbJ25vJ10gPSAnTm8nOwokbGFuZ1sndHlwZSddID0gJ1RpcG8nOwokbGFuZ1snZmllbGR0eXBlX211bHRpc2VsZWN0J10gPSAnTGlzdGEgTXVsdGlzZWxlemlvbmUnOwokbGFuZ1snZmllbGR0eXBlX2Ryb3Bkb3duJ10gPSAnTGlzdGEgYSBEaXNjZXNhJzsKJGxhbmdbJ2ZpZWxkdHlwZV9jaGVja2JveCddID0gJ0NoZWNrYm94JzsKJGxhbmdbJ2ZpZWxkdHlwZV90ZXh0YXJlYSddID0gJ0FyZWEgZGkgVGVzdG8nOwokbGFuZ1snZmllbGR0eXBlX3RleHRpbnB1dCddID0gJ0lucHV0IGRpIHRlc3RvJzsKJGxhbmdbJ3Byb21wdF91c2Vfd3lzaXd5ZyddID0gJ1VzYSBlZGl0b3Igd3lzaXd5ZyBwZXIgbGEgbW9kaWZpY2EgZGVpIHZhbG9yaSBkaSBxdWVyc3RvIGNhbXBvJzsKJGxhbmdbJ3Byb21wdF9kZWZhdWx0X2NvbnRlbnQnXSA9ICdDb250ZW51dG8gcHJlZGVmaW5pdG8gcGVyIGFyZWEgZGkgdGVzdG8nOwokbGFuZ1sncHJvbXB0X2Ryb3Bkb3duX29wdGlvbnMnXSA9ICdPcHppb25pICh1biB2YWxvcmUgcGVyIGxpbmVhKSc7CiRsYW5nWydwcm9tcHRfZmllbGRfbWF4bGVuZ3RoJ10gPSAnTHVuZ2hlenphIG1hc3NpbWEgZGVsIGNhbXBvJzsKJGxhbmdbJ3Byb21wdF9maWVsZF9sZW5ndGgnXSA9ICdMdW5naGV6emEgZGVsIGNhbXBvJzsKJGxhbmdbJ3Byb21wdF9maWVsZF90eXBlJ10gPSAnVGlwbyBkaSBjYW1wbyc7CiRsYW5nWydwcm9tcHRfZmllbGRfbmFtZSddID0gJ05vbWUgY2FtcG8nOwokbGFuZ1sndGl0bGVfYWRkX2ZpZWxkJ10gPSAnQWdnaXVuZ2kgbyBtb2RpZmljYSBEZWZpbml6aW9uZSBDYW1wbyc7CiRsYW5nWydmaWVsZF9kZWZpbml0aW9ucyddID0gJ0RlZmluaXppb25pIGRlbCBjYW1wbyc7CiRsYW5nWydwcm9tcHRfYWRkX2ZpZWxkJ10gPSAnQWdnaXVuZ2VyZSB1bmEgZGVmaW5pemlvbmUgZGVsIGNhbXBvJzsKJGxhbmdbJ3BhcmFtX2FjdGlvbiddID0gJ1NwZWNpZmljYSBpbCBjb21wb3J0YW1lbnRvIGRlbCBtb2R1bG8gdGFnLiBQb3NzaWJpbGkgdmFsb3JpIHNvbm86IGRlZmF1bHQgLSAoaWwgY29tcG9ydGFtcm50byBwcmVkZWZpbml0byksIGRldGFpbCAtIHBlciB2aXN1YWxpenphcmUgaWwgZGV0dGFnbGlvIGRpIHVuIHNpbmdvbG8gZmlsZSBiYXNhdG8gc3VsIHVwbG9hZF9pZCBlIHlvdXNlbmRpdCAtICBwZXIgdmlzdWFsaXp6YXJlIHVuIGZvcm0gcGVyIHBlcm1ldHRlciBsJiMwMzk7dXBsb2FkIGRpIHVuIGZpbGUgZSBzcGVkaXJsbyBhIG51bWVyb3NpIGluZGlyaXp6aSBpbiB1biBzaW5nb2xvIHBhc3NvJzsKJGxhbmdbJ3BhcmFtX3NlbmRmaWxlcGFnZSddID0gJ1NwZWNpZmljYSBsYSBwYWdpbmEgaWQgbyBhbGlhcyBkaSBwYWdpbmEgY2hlIGRvdnJlYmJlIGVzc2VyZSB1c2F0YSBwZXIgc3BlZGlyZSB1biBmaWxlJzsKJGxhbmdbJ2ZpbGVfdXBsb2FkZWQnXSA9ICdGaWxlIENhcmljYXRvIENvcnJldHRhbWVudGUnOwokbGFuZ1sndG8nXSA9ICdBJzsKJGxhbmdbJ3RpdGxlX3lvdXNlbmRpdGZvcm1fdGVtcGxhdGUnXSA9ICdBZ2dpdW5nZSBvIE1vZGlmaWNhIHVuIE1vZGVsbG8gZGkgTW9kdWxvIHBlciAmcXVvdDtZb3VTZW5kSXQmcXVvdDsnOwokbGFuZ1sneW91c2VuZGl0Zm9ybV90ZW1wbGF0ZSddID0gJ01vZGVsbGkgTW9kdWxvIFlvdVNlbmRJdCc7CiRsYW5nWyd0aXRsZV95b3VzZW5kaXRmb3JtX3N5c2RlZmF1bHQnXSA9ICdUZW1wbGF0ZSBwcmVkZWZpbml0byAmcXVvdDtZb3VTZW5kSXQmcXVvdDsnOwokbGFuZ1snbXNnX2ZpbGVfc2VudCddID0gJ1VuIG1lc3NhZ2dpbyAmZWdyYXZlOyBzdGF0byBzcGVkaXRvIGFnbGkgaW5kaXJpenppIHNlbGV6aW9uYXRpIGNoZSBjb250ZW5nb25vIGluZm9ybWF6aW9uaSBzdWwgZmlsZSBlIGNvbWUgcG90ZXJsbyByZWN1cGVyYXJlLic7CiRsYW5nWydlcnJvcl9ub2FkZHJlc3NlcyddID0gJ0luc2VyaXJlIGFsbWVubyB1biBpbmRpcml6em8gZGkgZGVzdGluYXppb25lJzsKJGxhbmdbJ2Vycm9yX25vc3ViamVjdCddID0gJ0luc2VyaXJlIHVuIG9nZ2V0dG8nOwokbGFuZ1snc3ViamVjdCddID0gJ09nZ2V0dG8nOwokbGFuZ1sndGl0bGVfc2VuZGZpbGVwYWdlJ10gPSAnUGFnaW5hIGRhIHV0aWxpenphcmUgcGVyIHVuIFVSTCB0ZW1wb3JhbmVvIG8gJnF1b3Q7WW91U2VuZEl0JnF1b3Q7JzsKJGxhbmdbJ2ZpbGVfaW5mbyddID0gJ0luZm9ybWF6aW9uaSBzdWwgRmlsZSc7CiRsYW5nWydzZW5kJ10gPSAnSW52aWEnOwokbGFuZ1snbm90ZXMnXSA9ICdOb3RlJzsKJGxhbmdbJ2FkZHJlc3NlZXMnXSA9ICdJbnZpYSBpbmZvcm1hemlvbmkgc3UgcXVlc3RvIGZpbGUgYSc7CiRsYW5nWydwcm9tcHRfc2VuZGZpbGVfZW1haWxfdGVtcGxhdGUnXSA9ICdNb2RlbGxvIEVtYWlsICZxdW90O0ludmlhIHVuIEZpbGUmcXVvdDsnOwokbGFuZ1sndGl0bGVfc2VuZGZpbGVmb3JtX3RlbXBsYXRlJ10gPSAnQWdnaXVuZ2UgbyBNb2RpZmljYSB1biBNb2RlbGxvIE1vZHVsbyAmcXVvdDtJbnZpYSB1biBGaWxlJnF1b3Q7JzsKJGxhbmdbJ3NlbmRmaWxlZm9ybV90ZW1wbGF0ZSddID0gJ01vZGVsbG8gTW9kdWxvICZxdW90O0ludmlhIHVuIEZpbGUmcXVvdDsnOwokbGFuZ1sncHJvbXB0X25vdGlmeV9lbWFpbF90ZW1wbGF0ZSddID0gJ01vZGVsbG8gZW1haWwgbm90aWZpY2EgY2FyaWNhbWVudG8gZmlsZSc7CiRsYW5nWyd0aXRsZV9zZW5kZmlsZWZvcm1fc3lzZGVmYXVsdCddID0gJ01vZGVsbG8gTW9kdWxvIHByZWRlZmluaXRvICZxdW90O0ludmlhIHVuIEZpbGUmcXVvdDsnOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5ZGVsZXRhYmxlJ10gPSAnSSBGaWxlIGluIHF1ZXN0YSBjYXRlZ29yaWEgcG9zc29ubyBlc3NlcmUgZWxpbWluYXRpJzsKJGxhbmdbJ3RpdGxlX2FsbG93X2RlbGV0ZSddID0gJ1Blcm1ldHRlIGwmIzAzOTtlbGltaW5hemlvbmUgZGkgZmlsZSBkYWwgZnJvbnRlbmQnOwokbGFuZ1snZGVmYXVsdF90ZW1wbGF0ZXMnXSA9ICdNb2RlbGxpIFByZWRlZmluaXRpJzsKJGxhbmdbJ2ZpcnN0cGFnZSddID0gJ1ByaW1hIHBhZ2luYSc7CiRsYW5nWydwcmV2cGFnZSddID0gJ1BhZ2luYSBwcmVjZWRlbnRlJzsKJGxhbmdbJ25leHRwYWdlJ10gPSAnUGFnaW5hIHNlZ3VlbnRlJzsKJGxhbmdbJ2xhc3RwYWdlJ10gPSAnVWx0aW1hIHBhZ2luYSc7CiRsYW5nWydmaXJzdHBhZ2VfYXJyb3cnXSA9ICc8PCc7CiRsYW5nWydwcmV2cGFnZV9hcnJvdyddID0gJzwnOwokbGFuZ1snbmV4dHBhZ2VfYXJyb3cnXSA9ICc+JzsKJGxhbmdbJ2xhc3RwYWdlX2Fycm93J10gPSAnPj4nOwokbGFuZ1sncGFnZSddID0gJ1BhZ2luYSc7CiRsYW5nWydvZiddID0gJ2RpJzsKJGxhbmdbJ3Byb21wdF9ncm91cGxpc3QnXSA9ICdHcnVwcGkgRkVVIGF1dG9yaXp6YXRpJzsKJGxhbmdbJ2luZm9fZ3JvdXBsaXN0J10gPSAnU2VsZXppb25hIGlsIGdydXBwaSBGRVUgYXV0b3JpenphdGkgYWQgYWNjZWRlcmUgYWkgZmlsZSBpbiBxdWVzdGEgY2F0ZWdvcmlhLiBEZXNlbGV6aW9uYSB0dXR0byBwZXIgcGVybWV0dGVyZSBsJiMwMzk7YWNjZXNzbyBhIHR1dHRpJzsKJGxhbmdbJ3RpdGxlX3NjYW4nXSA9ICdDZXJjYSBudW92aSBmaWxlIGluIHF1ZXN0YSBjYXRlZ29yaWEnOwokbGFuZ1sndGl0bGVfY3JlYXRlX3RodW1ibmFpbHMnXSA9ICdDcmVhIG1pbmlhdHVyZSBtYW5jYW50aSBwZXIgaSBmaWxlIGluIHF1ZXN0YSBjYXRlZ29yaWEuJzsKJGxhbmdbJ2NyZWF0ZV90aHVtYm5haWxzJ10gPSAnQ3JlYSBNaW5pYXR1cmUnOwokbGFuZ1sndGl0bGVfY3JlYXRlX3RodW1ibmFpbCddID0gJyhyaSlDcmVhIGxhIE1pbmlhdHVyYSBwZXIgcXVlc3RvIGZpbGUnOwokbGFuZ1snY3JlYXRlX3RodW1ibmFpbCddID0gJ0NyZWEgTWluaWF0dXJhJzsKJGxhbmdbJ2Vycm9yX3BhdGhlcnJvciddID0gJ05vbiBwb3NzbyBhcHJpcmUgbGEgY2FydGVsbGEgKHByb2JsZW1pIGRpIHBlcm1lc3NpPyknOwokbGFuZ1sndGl0bGVfZG93bmxvYWRfY2h1bmtzaXplJ10gPSAnRGltZW5zaW9uZSBkaSBvZ25pIHNlZ21lbnRvIGRpIGRvd25sb2FkJzsKJGxhbmdbJ2luZm9fZG93bmxvYWRfY2h1bmtzaXplJ10gPSAnTGEgbW9kaWZpY2EgZGkgcXVlc3RvIHBhcmFtZXRybyBhdnImYWdyYXZlOyBlZmZldHRvIHN1bGxhIHZlbG9jaXQmYWdyYXZlOyBkaSBkb3dubG9hZCwgZSBwdSZvZ3JhdmU7IGFpdXRhcmUgaW4gdW4gYW1iaWVudGkgY29uIHBvY2EgbWVtb3JpYSc7CiRsYW5nWyd3YXJuaW5nX3NhZmVfbW9kZSddID0gJ1BIUCBzYWZlIG1vZGUgJmVncmF2ZTsgYWJpbGl0YXRvLiBRdWVzdG8gcHUmb2dyYXZlOyBjYXVzYXJlIHByb2JsZW1pIGNvbiB1cGxvYWRpbmcgKHBlcm1lc3NpKSwgZWQgaW50ZXJmZXJpcmUgY29uIGwmIzAzOTthYmlsaXQmYWdyYXZlOyBkaSBxdWVzdG8gbW9kdWxvIGRpIHNwZWRpcmUgZmlsZXMgcGVyIGxhIG5vbiBwb3NzaWJpbGl0JmFncmF2ZTsgZGkgc292cmFzY3JpdmVyZSBhbGN1bmkgc2V0dGFnZ2kuIFNpZXRlIGF2dmlzYXRpIGRpIGNvbnRhdHRhcmUgaWwgVm9zdHJvIHByb3ZpZGVyIHBlciB2ZWRlcmUgZGkgZGlzYWJpbGl0YXJlIGlsIHNhZmUgbW9kZS4nOwokbGFuZ1sncGFyYW1fZGV0YWlscGFnZSddID0gJ1V0aWxlIHBlciB2aXN1YWxpenphcmUgdW4gcmVwb3J0IGRldHRhZ2xpYXRvIHVzYW5kbyB1bmEgcGFnaW5hIChldmVudHVhbG1lbnRlIGNvbiBhbHRybyBNb2RlbGxvKSBkaWZmZXJlbnRlLCBxdWVzdG8gcGFyYW1ldHJvIHByZW5kZSBpZCBvIGFsaWFzIGRpIHBhZ2luYSBjaGUgZG92cmViYmUgZXNzZXJlIHVzYXRhIHBlciB2aXN1YWxpenphcmUgaWwgcmVwb3J0IGRpIGRldHRhZ2xpbyc7CiRsYW5nWydwYXJhbV9wcmVmaXgnXSA9ICdVbiB2YWxvcmUgYm9vbGVhbm8gY2hlIGluZGljYSBzZSBpIG5vbWkgZGVpIGZpbGUgZGViYmFubyBlc3NlcmUgcHJlZmlzc2F0aSc7CiRsYW5nWydwYXJhbV9wcmVmaXhfZmV1J10gPSAnVW4gYm9vbGVhbm8gY2hlIGluZGljYSAgY2hlIGlsIHByZWZpc3NvIGRvdnJlYmJlIGVzc2VyZSBwcmVzbyBkYWxsJiMwMzk7YXV0b3JlIGNvcnJlbnRlLCBzZSBub24gc3BlY2lmaWNhdG8sIGlsIHByZWZpc3NvICZlZ3JhdmU7IGlsIHRlbXBvIGNvcnJlbnRlIChpbiBmb3JtYXRvIGRlY2hleCknOwokbGFuZ1sncGFyYW1fbm9jYXB0Y2hhJ10gPSAnRGlzYWJpbGl0YSBpbCBzdXBwb3J0byBjYXB0Y2hhIChhdHRpdm8gZGkgZGVmYXVsdCkgbmVsIG1vZHVsbyB1cGxvYWQnOwokbGFuZ1sndGl0bGVfdXBsb2FkZm9ybV90ZW1wbGF0ZSddID0gJ01vZGlmaWNhIGlsIE1vZGVsbG8gZGVsIE1vZHVsbyBkaSBVcGxvYWQnOwokbGFuZ1snY2FwdGNoYV90aXRsZSddID0gJ0luc2VyaXRlIGlsIHRlc3RvIGNvbnRlbnV0byBuZWxsJiMwMzk7aW1tYWdpbmUnOwokbGFuZ1snZXJyb3JfY2FwdGNoYW1pc21hdGNoJ10gPSAnSWwgdGVzdG8gaW5zZXJpdG8gbm9uIGNvcnJpc3BvbmRlIGNvbiBsJiMwMzk7aW1tYWdpbmUgdmlzdWFsaXp6YXRhJzsKJGxhbmdbJ3RpdGxlX2F1dG90aHVtYm5haWxfZXh0ZW5zaW9ucyddID0gJ0NyZWEgYW50ZXByaW1lIHBlciBpIGZpbGUgY29uIHF1ZXN0ZSBlc3RlbnNpb25pJzsKJGxhbmdbJ3RpdGxlX2F1dG90aHVtYm5haWxfc2l6ZSddID0gJ0RpbWVuc2lvbmUgbWFzc2ltYSAoaW4gcGl4ZWwpIGRlbGwmIzAzOTthbnRlcHJpbWEgZ2VuZXJhdGEnOwokbGFuZ1sncHJvbXB0X3VwbG9hZF9pY29uJ10gPSAnQ2FyaWNhIHVuIEljb25hJzsKJGxhbmdbJ2luZm9fc3lzZGVmYXVsdCddID0gJ1F1ZXN0byB0ZXN0byB2aWVuZSB1c2F0byBxdWFuZG8gc2kgY3JlYSB1biBudW92byBtb2RlbGxvIGRpIHF1ZXN0byB0aXBvJzsKJGxhbmdbJ3RpdGxlX2RldGFpbHJwdF9zeXNkZWZhdWx0J10gPSAnRGVmYXVsdCBkaSBTaXN0ZW1hIGRlbCBNb2RlbGxvIGRpIFJhcHBvcnRvIERldHRhZ2xpJzsKJGxhbmdbJ3RpdGxlX3N1bW1hcnlycHRfc3lzZGVmYXVsdCddID0gJ0RlZmF1bHQgZGkgU2lzdGVtYSBkZWwgTW9kZWxsbyBkaSBSYXBwb3J0byBTb21tYXJpbyc7CiRsYW5nWyd0aXRsZV91cGxvYWRmb3JtX3N5c2RlZmF1bHQnXSA9ICdEZWZhdWx0IGRpIFNpc3RlbWEgZGVsIE1vZGVsbG8gZGVsIE1vZHVsbyBkaSB1cGxvYWQnOwokbGFuZ1sndGVtcGxhdGUnXSA9ICdNb2RlbGxvJzsKJGxhbmdbJ3Jlc2V0dG9kZWZhdWx0J10gPSAnUmlwcmlzdGluYSB2YWxvcmkgcHJlZGVmaW5pdGknOwokbGFuZ1sndGl0bGVfc3VtbWFyeXJwdF90ZW1wbGF0ZSddID0gJ01vZGVsbG8gZGkgUmFwcG9ydG8gU29tbWFyaW8nOwokbGFuZ1sndGl0bGVfZGV0YWlscnB0X3RlbXBsYXRlJ10gPSAnTW9kZWxsbyBkaSBSYXBwb3J0byBEZXR0YWdsaSc7CiRsYW5nWydwcm9tcHRfbmFtZSddID0gJ05vbWUnOwokbGFuZ1sncHJvbXB0X2RlZmF1bHQnXSA9ICdQcmVkZWZpbml0byc7CiRsYW5nWydsZWdlbmRfdXBsb2FkZm9ybSddID0gJ0NhcmljYSB1biBGaWxlJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdwYXJhbSddID0gJ01hbmNhIHVuIHBhcmFtZXRybyBlc3NlbnppYWxlJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmduYW1lJ10gPSAnRGV2ZSBlc3NlcmUgc3BlY2lmaWNhdG8gdW4gbm9tZSBwZXIgaWwgZmlsZSc7CiRsYW5nWydlcnJvcl9taXNzaW5nZXh0ZW5zaW9ucyddID0gJ0RldmUgZXNzZXJlIHNwZWNpZmljYXRhIGFsbWVubyB1biYjMDM5O2VzdGVuc2lvbmUgZGkgZmlsZSc7CiRsYW5nWydlcnJvcl9taXNzaW5naWNvbiddID0gJ0RldmUgZXNzZXJlIHNwZWNpZmljYXRhIHVuJiMwMzk7aWNvbmEnOwokbGFuZ1snZXJyb3Jfbm9zdWNocm93J10gPSAnTm9uICZlZ3JhdmU7IHBvc3NpYmlsaWUgdHJvdmFyZSBsYSByaWdhIHNwZWNpZmljYXRhICc7CiRsYW5nWyduYW1lX3Vua25vd24nXSA9ICdTY29ub3NjaXV0byc7CiRsYW5nWydkZXNjcmlwdGlvbl91bmtub3duJ10gPSAnRGVzY3JpemlvbmUgZGVsIHRpcG8gZGkgZmlsZSBwZXIgZmlsZSBub24gY29ycmlzcG9uZGVudGknOwokbGFuZ1snaW1hZ2UnXSA9ICdJbW1hZ2luZSc7CiRsYW5nWydpY29uJ10gPSAnSWNvbmEnOwokbGFuZ1snZXh0ZW5zaW9ucyddID0gJ0VzdGVuc2lvbmUgRmlsZSc7CiRsYW5nWydhZGRmaWxldHlwZSddID0gJ0FnZ2l1bmdpIHVuIE51b3ZvIFRpcG8gZGkgRmlsZSc7CiRsYW5nWydmaWxlX3R5cGVzJ10gPSAnVGlwaSBkaSBGaWxlJzsKJGxhbmdbJ2Vycm9yX25vY2F0ZWdvcnlpZCddID0gJ05lc3N1biBJRCBkaSBDYXRlZ29yaWEgZm9ybml0byc7CiRsYW5nWydlcnJvcl9ub2NhdGVnb3J5J10gPSAnTmVzc3VuIElEIGRpIENhdGVnb3JpYSBmb3JuaXRvJzsKJGxhbmdbJ2Vycm9yX3RlbXBsYXRlbmFtZWV4aXN0cyddID0gJ0VzaXN0ZSBnaSZhZ3JhdmU7IHVuIG1vZGVsbG8gY29uIGxvIHN0ZXNzbyBub21lJzsKJGxhbmdbJ3Byb21wdF90ZW1wbGF0ZW5hbWUnXSA9ICdOb21lIE1vZGVsbG8nOwokbGFuZ1sncHJvbXB0X3RlbXBsYXRlJ10gPSAnTW9kZWxsbyc7CiRsYW5nWydwcm9tcHRfbmV3dGVtcGxhdGUnXSA9ICdDcmVhIHVuIG51b3ZvIE1vZGVsbG8nOwokbGFuZ1snaGVscF9PbkRvd25sb2FkJ10gPSAnPHA+VW4gZXZlbnRvIGdlbmVyYXRvIHFpYW5kbyB1biB1dGVudGUgdGVybWluYSBpbCBkb3dubG9hZCBkaSB1biBmaWxlPC9wPg0KPGg0PlBhcmFtZXRyaTwvaDQ+DQo8dWw+DQo8bGk+PGVtPmlkPC9lbT4gLSBJRCBkaSBVcGxvYWQ8L2xpPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBOb21lIGZpbGU8L2xpPg0KPGxpPjxlbT5pcDwvZW0+IC0gTCYjMDM5O2luZGlyaXp6byBJUCBkaSBjaGkgZWZmZXR0dWEgaWwgZG93bmxvYWQ8L2xpPg0KPC91bD4NCic7CiRsYW5nWydoZWxwX09uRGVsZXRlQ2F0ZWdvcnknXSA9ICc8cD5VbiBldmVudG8gZ2VuZXJhdG8gcXVhbmRvIHZpZW5lIGNhbmNlbGxhdGEgdW5hIENhdGVnb3JpYTwvcD4NCjxoND5QYXJhbWV0cmk8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBOb21lIENhdGVnb3JpYTwvbGk+DQo8bGk+PGVtPnBhdGg8L2VtPiAtIFBlcmNvcnNvIGRlbGxhIENhdGVnb3JpYTwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2hlbHBfT25DcmVhdGVDYXRlZ29yeSddID0gJzxwPlVuIGV2ZW50byBnZW5lcmF0byBxdWFuZG8gdmllbmUgY3JlYXRhIHVuYSBDYXRlZ29yaWE8L3A+DQo8aDQ+UGFyYW1ldHJpPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gSWwgbm9tZSBkZWxsYSBjYXRlZ29yaWE8L2xpPg0KPGxpPjxlbT5kZXNjcmlwdGlvbjwvZW0+IC0gTGEgZGVzY3JpemlvbmUgZGVsbGEgY2F0ZWdvcmlhPC9saT4NCjxsaT48ZW0+cGF0aDwvZW0+IC0gSWwgcGVyY29yc28gZGVsbGEgY2F0ZWdvcmlhPC9saT4NCjxsaT48ZW0+cGF0aDwvZW0+IC0gVW4gb3B6aW9uZSBjaGUgaW5kaWNhIHNlIGxhIGNhdGVnb3JpYSAmZWdyYXZlOyBlbGVuY2FiaWxlPC9saT4NCjwvdWw+DQonOwokbGFuZ1snaGVscF9PblJlbW92ZSddID0gJzxwPlVuIGV2ZW50byBnZW5lcmF0byBxdWFuZG8gdW4gZmlsZSB2aWVuZSByaW1vc3NvIHRyYW1pdGUgbCYjMDM5O2ludGVyZmFjY2lhIGFtbWluaXN0cmF0b3JlIG8gdXRlbnRlPC9wPg0KPGg0PlBhcmFtZXRyaTwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIElsIG5vbWUgZGVsIGZpbGUgcmltb3NzbzwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBMJiMwMzk7aWQgZGVsIGZpbGUgcmltb3NzbzwvbGk+DQo8bGk+PGVtPmNhdGVnb3J5X2lkPC9lbT4gLSBMJiMwMzk7aWQgZGVsbGEgY2F0ZWdvcmlhPC9saT4NCjwvdWw+DQonOwokbGFuZ1snaGVscF9PblVwbG9hZCddID0gJzxwPlVuIGV2ZW50byBnZW5lcmF0byBxdWFuZG8gdW4gZmlsZSB2aWVuZSBjYXJpY2F0byB0cmFtaXRlIGwmIzAzOTtpbnRlcmZhY2NpYSBhbW1pbmlzdHJhdG9yZSBvIHV0ZW50ZTwvcD4NCjxoND5QYXJhbWV0cmk8L2g0Pg0KPHVsPg0KPGxpPjxlbT5jYXRlZ29yeTwvZW0+IC0gSWwgbm9tZSBkZWxsYSBjYXRlZ29yaWE8L2xpPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBJbCBub21lIGRlbCBmaWxlIGNhcmljYXRvPC9saT4NCjxsaT48ZW0+c2l6ZTwvZW0+IC0gTGEgZGltZW5zaW9uZSBkZWwgZmlsZSBjYXJpY2F0bzwvbGk+DQo8bGk+PGVtPnN1bW1hcnk8L2VtPiAtIExhIGRlc2NyaXppb25lIGJyZXZlIGRlbCBmaWxlIGNhcmljYXRvIChwdSZvZ3JhdmU7IGVzc2VyZSB2dW90YSk8L2VtPjwvbGk+DQo8bGk+PGVtPmRlc2NyaXB0aW9uPC9lbT4gLSBMYSBkZXNjcml6aW9uZSBjb21wbGV0YSBwZXIgaWwgZmlsZSBjYXJpY2F0byAocHUmb2dyYXZlOyBlc3NlcmUgdnVvdGEpPC9lbT48L2xpPg0KPGxpPjxlbT5hdXRob3I8L2VtPiAtIEwmIzAzOTthdXRvcmUgZGVsIGZpbGUgY2FyaWNhdG8gKHNlIGRpc3BvbmliaWxlKTwvZW0+PC9saT4NCjxsaT48ZW0+aXBfYWRkcmVzczwvZW0+IC0gTCYjMDM5O2luZGlyaXp6byBpbnRlcm5ldCBkZWwgY2xpZW50IGNoZSBoYSBjYXJpY2F0byBpbCBmaWxlPC9saT4NCjwvdWw+DQonOwokbGFuZ1snaW5mb19ldmVudF9vbmRlbGV0ZWNhdGVnb3J5J10gPSAnRXZlbnRvIGdlbmVyYXRvIGRvcG8gbGEgY2FuY2VsbGF6aW9uZSBkaSB1bmEgY2F0ZWdvcmlhJzsKJGxhbmdbJ2luZm9fZXZlbnRfb25jcmVhdGVjYXRlZ29yeSddID0gJ0V2ZW50byBnZW5lcmF0byBkb3BvIGxhIGNyZWF6aW9uZSBkaSB1bmEgY2F0ZWdvcmlhJzsKJGxhbmdbJ2luZm9fZXZlbnRfb25kb3dubG9hZCddID0gJ0V2ZW50byBnZW5lcmF0byBkb3BvIGxvIHNjYXJpY2FtZW50byBkaSB1biBmaWxlJzsKJGxhbmdbJ2luZm9fZXZlbnRfb251cGxvYWQnXSA9ICdFdmVudG8gZ2VuZXJhdG8gZG9wbyBpbCBjYXJpY2FtZW50byBkaSB1biBudW92byBmaWxlJzsKJGxhbmdbJ2luZm9fZXZlbnRfb25yZW1vdmUnXSA9ICdFdmVudG8gZ2VuZXJhdG8gcXVhbmRvIHVuIGZpbGUgdmllbmUgcmltb3Nzbyc7CiRsYW5nWyd0aXRsZV91c2VydGFnX29udXBsb2FkJ10gPSAnVGFnIGRlZmluaXRvIGRhbGwmIzAzOTt1dGVudGUgZGEgaW52b2NhcmUgYWwgdGVybWluZSBkZWwgY2FyaWNhbWVudG8gZmlsZSc7CiRsYW5nWydub25lJ10gPSAnTmVzc3Vubyc7CiRsYW5nWydtYXRjaGVzZm91bmQnXSA9ICdDb3JyaXNwb25kZW56ZSB0cm92YXRlJzsKJGxhbmdbJ2ZpbHRlciddID0gJ0ZpbHRybyc7CiRsYW5nWyd0aXRsZV9yZWRpcmVjdG9udXBsb2FkJ10gPSAnUmVkaXJlemlvbmEgYWxsJiMwMzk7IGlkL2FsaWFzIGRlbGxhIHBhZ2luYSBhbCBjYXJpY2FtZW50byBkZWxsJiMwMzk7dXRlbnRlJzsKJGxhbmdbJ2RldGFpbHMnXSA9ICdEZXR0YWdsaSc7CiRsYW5nWydjb25maXJtX3ByZWZlcmVuY2VzJ10gPSAnU2lldGUgY2VydGkgZGkgdm9sZXJlIGNvcnJlZ2dlcmUgbGUgcHJlZmVyZW56ZT8nOwokbGFuZ1snZXJyb3Jfbm9maWxlc3VwbG9hZGVkJ10gPSAnTmVzc3VuIGZpbGUgY2FyaWNhdG8uJzsKJGxhbmdbJ3Byb21wdF9yZXBsYWNlJ10gPSAnUGVybWV0dGkgU292cmFzY3JpdHR1cmEnOwokbGFuZ1snaW5mb19yZXBsYWNlJ10gPSAnU29zdGl0dWlzY2kgcXVhbHNpYXNpIGZpbGUgY29uIGxvIHN0ZXNzbyBub21lIChub24gbW9kaWZpY2EgbCYjMDM5O0lEKSc7CiRsYW5nWydwYXJhbV9ub19pbml0aWFsJ10gPSAnTm9uIG1vc3RyYSBuZXNzdW4gcmlzdWx0YXRvIGluaXppYWxlIHF1YW5kbyBpbCBmaWx0cm8gJmVncmF2ZTsgYXR0aXZhdG8nOwokbGFuZ1sncGFyYW1fa2V5J10gPSAnRm9ybmlzY2UgdW5hIGNoaWF2ZSBhZ2dpdW50aXZhIGFsIG1vZHVsbyBwZXIgdW5hIHN1Y2Nlc3NpdmEgb3JnYW5penphemlvbmUgZGVnbGkgdXBsb2FkLiAgUXVlc3RhIGNoaWF2ZSBwdSZvZ3JhdmU7IGVzc2VyZSB1bmEgc3RyaW5nYSBjb2RpZmljYXRhIGNvbWU6ICYjMDM5O2ZldXNlcnM6dWlkJiMwMzk7LCBldGMuICBRdWVzdG8gcGFyYW1ldHJvIHNvbGl0YW1lbnRlICZlZ3JhdmU7IG5lY2Vzc2FyaW8gc29sbyBxdWFuZG8gdmllbmUgaW5jb3Jwb3JhdG8gaWwgbW9kdWxvIFVwbG9hZHMgaW4gdW4gYWx0cm8gbW9kdWxvJzsKJGxhbmdbJ3BhcmFtX25vYXV0aG9yJ10gPSAnTmFzY29uZGUgaWwgY2FtcG8gYXV0b3JlIGRhbCBtb2R1bG8gZGkgVXBsb2FkLiBRdWVzdG8gcGFyYW1ldHJvICZlZ3JhdmU7IHZhbGlkbyBzb2xvIHF1YW5kbyAmZWdyYXZlOyBpbXBvc3RhdG8gbW9kZT0mIzAzOTt1cGxvYWQmIzAzOTsuICBTZSBwcmVzZW50ZSBpbCBtb2R1bG8gRnJvbnRlbmRVc2VycyBlIHVuIHV0ZW50ZSAmZWdyYXZlOyBhdHR1YWxtZW50ZSBsb2dnYXRvLCBpbCBub21lIHV0ZW50ZSB2ZXJyJmFncmF2ZTsgY29uc2VydmF0byBpbiB1biBjYW1wbyBuYXNjb3N0byc7CiRsYW5nWydwYXJhbV91cGxvYWRfaWQnXSA9ICd1cGxvYWRfaWQ9JnF1b3Q7aWQmcXVvdDsgLSBzcGVjaWZpY2EgdW4gZmlsZSBzaW5nb2xvIHBlciBsZSBtb2RhbGl0JmFncmF2ZTsgdXJsL2xpbmsgbyBzaW5nb2xvIChzb3ByYSknOwokbGFuZ1sncGFyYW1fZGV0YWlsdGVtcGxhdGUnXSA9ICdVdGlsaXp6YXJlIHVuIG1vZGVsbG8gY29uIHF1ZXN0byBub21lIHBlciBpbCByYXBwb3J0byBkZXR0YWdsaWF0by4nOwokbGFuZ1sncGFyYW1fdGVtcGxhdGUnXSA9ICdVdGlsaXp6YXJlIHVuIG1vZGVsbG8gY29uIHF1ZXN0byBub21lIHBlciBxdWVzdG8gcmFwcG9ydG8gbyBtb2R1bG8uIFF1ZXN0byBtb2RlbGxvIGluc2VyaXNjZSBhdXRvbWF0aWNhbWVudGUgdW4gbW9kZWxsbyBjb24gaWwgbm9tZSBjb3JyaXNwb25kZW50ZSBkYWxsYSBsaXN0YSBhcHByb3ByaWF0YSBiYXNhdGEgc3VsbGEgbW9kYWxpdCZhZ3JhdmU7IHNwZWNpZmljYXRhJzsKJGxhbmdbJ3BhcmFtX2ZpbHRlciddID0gJ1Zpc3VhbGl6emEgaWwgbW9kdWxvIGRpIGZpbHRyYWdnaW8nOwokbGFuZ1sncGFyYW1fbm9faW50aXRpYWwnXSA9ICdFJiMwMzk7IHV0aWxlIHNvbG8gcXVhbmRvIGlsIHBhcmFtZXRybyBmaWx0cm8gdmllbmUgZm9ybml0bywgbyAmZWdyYXZlOyBhdHRpdm8gY29tZSB2YWxvcmUgcHJlZGVmaW5pdG8sIHF1ZXN0byBwYXJhbWV0cm8gaW5kaWNhIHNlIGRlYmJhbm5vIGVzc2VyZSByZXN0aXR1aXRpIGkgdmFsb3JpIGluaXppYWxpJzsKJGxhbmdbJ3BhcmFtX2ZpbGV0eXBlcyddID0gJ1Zpc3VhbGl6emEgc29sbyBpIGZpbGUgaWwgY3VpIHRpcG8gY29ycmlzcG9uZGUgY29uIHF1ZXN0YSBsaXN0YSBzZXBhcmF0YSBkYSB2aXJnb2xhJzsKJGxhbmdbJ3BhcmFtX3NvcnRvcmRlciddID0gJyAgPHA+VGlwaSBkaSBvcmRpbmFtZW50bw0KICA8dWw+DQogIDxsaT48ZW0+ZGF0ZV9hc2M8L2VtPiAtIE9yZGluYSBwZXIgZGF0YSBhc2NlbmRlbnRlPC9saT4NCiAgPGxpPjxlbT5kYXRlX2Rlc2M8L2VtPiAtIE9yZGluYSBwZXIgZGF0YSBkaXNjZW5kZXRlPC9saT4NCiAgPGxpPjxlbT5uYW1lX2FzYzwvZW0+IC0gT3JkaW5hIHBlciBub21lIGFzY2VuZGVudGU8L2xpPg0KICA8bGk+PGVtPm5hbWVfZGVzYzwvZW0+IC0gT3JkaW5hIHBlciBub21lIGRpc2NlbmRlbnRlPC9saT4NCiAgPGxpPjxlbT5zaXplX2FzYzwvZW0+IC0gT3JkaW5hIHBlciBkaW1lbnNpb25lIGFzY2VuZGVudGU8L2xpPg0KICA8bGk+PGVtPnNpemVfZGVzYzwvZW0+IC0gT3JkaW5hIHBlciBkaW1lbnNpb25lIGRpc2NlbmRlbnRlPC9saT4NCiAgPGxpPjxlbT5kZXNjX2FzYzwvZW0+IC0gT3JkaW5hIHBlciBkZXNjcml6aW9uZSBhc2NlbmRlbnRlPC9saT4NCiAgPGxpPjxlbT5kZXNjX2Rlc2M8L2VtPiAtIE9yZGluYSBwZXIgZGVzY3JpemlvbmUgZGlzY2VuZGVudGU8L2xpPg0KICA8bGk+PGVtPmF1dGhvcl9hc2M8L2VtPiAtIE9yZGluYSBwZXIgYXV0b3JlIGFzY2VuZGVudGU8L2xpPg0KICA8bGk+PGVtPmF1dGhvcl9kZXNjPC9lbT4gLSBPcmRpbmEgcGVyIGF1dG9yZSBkaXNjZW5kZW50ZTwvbGk+DQogIDxsaT48ZW0+aXBfYXNjPC9lbT4gLSBPcmRpbmEgcGVyIGluZGlyaXp6byBpcCBhc2NlbmRlbnRlPC9saT4NCiAgPGxpPjxlbT5pcF9kZXNjPC9lbT4gLSBPcmRpbmEgcGVyIGluZGlyaXp6byBpcCBkaXNjZW5kZW50ZTwvbGk+DQogIDxsaT48ZW0+cmFuZG9tPC9lbT4gLSBPcmRpbmUgY2FzdWFsZTwvbGk+DQogIDwvdWw+DQogIDwvcD4nOwokbGFuZ1sncGFyYW1fbGlzdGluZ3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUgdXNhdG8gcGVyIGxhIGxpc3RhIGRlbGxlIGNhdGVnb3JpZSBkb3BvIGxhIHBhZ2luYSBTb21tYXJpbyBDYXRlZ29yaWEnOwokbGFuZ1sncGFyYW1fbGlzdGluZ3NvcnRvcmRlciddID0gJ09yZGluYW1lbnRvIChjb21lIHBhcmFtX3NvcnRvcmRlcikgdXNhdG8gcGVyIGxhIGxpc3RhIGRlbGxlIGNhdGVnb3JpZSBkb3BvIGxhIHBhZ2luYSBTb21tYXJpbyBDYXRlZ29yaWEnOwokbGFuZ1sncGFyYW1fZmlsZWV4dGVuc2lvbnMnXSA9ICdmaWxlX2V4dGVuc2lvbnM9JnF1b3Q7ZXh0MSxleHQyLGV4dDMmcXVvdDsNCjxwPnZhbGlkbyBzb2xvIGNvbiBtb2RlPXVwbG9hZCwgcXVlc3RvIHBhcmFtZXRybyBsaW1pdGEgaSB0aXBpIGRpIGZpbGUgY2hlIHBvc3Nvbm8gZXNzZXJlIGNhcmljYXRpLiAgU292cmFzY3JpdmUgcXVhbHNpYXNpIGltcG9zdGF6aW9uZSBuZWxsZSBwcmVmZXJlbnplIGRlbCBtb2R1bG8uPC9wPic7CiRsYW5nWydwYXJhbV9jb3VudCddID0gJ2NvdW50PSZxdW90O04mcXVvdDsNCjxwPlVuIHBhcmFtZXRybyBwZXIgZWxlbmNhcmUgc29sbyBpIHByaW1pIE4gcmlzdWx0YXRpIGRlbGxhIHF1ZXJ5LiAgTCYjMDM5O2ltcGFnaW5hemlvbmUgc2FyZWJiZSBtaWdsaW9yZSwgbWEgcGVyIG9yYSBxdWVzdG8gcmlzb2x2ZXImYWdyYXZlOyBpbCBwcm9ibGVtYS48L3A+JzsKJGxhbmdbJ3BhcmFtX2NhdGVnb3J5J10gPSAnY2F0ZWdvcnk9JnF1b3Q7bmFtZSZxdW90Ow0KPHA+PGI+Tm90YTo8L2I+IExhIENhdGVnb3JpYSBwdSZvZ3JhdmU7IGVzc2VyZSAmcXVvdDthbGwmcXVvdDssIGNoZSBlbGVuY2hlciZhZ3JhdmU7IHR1dHRpIGdsaSB1cGxvYWQgZGEgdHV0dGUgbGUgY2F0ZWdpcmllIDxlbT5lbGVuY2FiaWxpPC9lbT48L3A+JzsKJGxhbmdbJ3BhcmFtX21vZGUnXSA9ICcgIDx1bD4NCiAgPGxpPjxlbT5kZXRhaWxlZDwvZW0+IC0gVmlzdWFsaXp6YSB1biBlbGVuY28gZGV0dGFnbGlhdG8gZGkgdHV0dGkgaSBmaWxlIG5lbGxhIGNhdGVnb3JpYTwvbGk+DQogIDxsaT48ZW0+dXBsb2FkPC9lbT4gLSBWaXN1YWxpenphIHVuIG1vZHVsbyBjaGUgcGVybWV0dGEgYWQgdW4gVXRlbnRlIEZyb250ZW5kIGRpIGNhcmljYXJlIHVuIGZpbGU8L2xpPg0KICA8bGk+PGVtPnVybCA8aT5vcjwvaT4gbGluazwvZW0+IC0gVmlzdWFsaXp6YSBpbCBsaW5rIGFkIHVuIGZpbGU8L2xpPg0KICA8bGk+PGVtPnN1bW1hcnk8L2VtPiAtIFZpc3VhbGl6emEgdW5hIGxpc3RhIGEgc29tbWFyaW8gZGkgdHV0dGkgaSBmaWxlIG5lbGxhIGNhdGVnb3JpYTwvbGk+DQogIDxsaT48ZW0+c2luZ2xlPC9lbT4gLSBWaXN1YWxpenphIHVuIHJhcHBvcnRvIGRldHRhZ2xpYXRvIHN1IHVuIHVwbG9hZCBzaW5nb2xvPC9saT4NCiAgPC91bD4nOwokbGFuZ1sncGFyYW1fc2VsZWN0Zm9ybSddID0gJ1doZW4gdXNpbmcgdGhlICYjMDM5O3NlbGVjdCYjMDM5OyBtb2RlLCB0aGlzIHBhcmFtZXRlciBpcyB0aGUgZm9ybWlkIG9mIHRoZSBwYXJlbnQgZm9ybS4gIFVzZWQgdG8gaGFuZGxlIHBhcmFtZXRlciBwYXNzaW5nJzsKJGxhbmdbJ3BhcmFtX3NlbGVjdG5hbWUnXSA9ICd3aGVuIHVzaW5nIHRoZSAmIzAzOTtzZWxlY3QmIzAzOTsgbW9kZSwgdGhpcyBwYXJhbWV0ZXIgc3BlY2lmaWVzIHRoZSBuYW1lIG9mIHRoZSBmaWVsZCc7CiRsYW5nWydwYXJhbV9zZWxlY3R2YWx1ZSddID0gJ1doZW4gdXNpbmcgdGhlICYjMDM5O3NlbGVjdCYjMDM5OyBtb2RlLCB0aGlzIHBhcmFtZXRlciBzcGVjaWZpZXMgdGhlIGRlZmF1bHQgZmllbGQgdmFsdWUnOwokbGFuZ1sncGFyYW1fc2VsZWN0bm9uZSddID0gJ1doZW4gdXNpbmcgdGhlICYjMDM5O3NlbGVjdCYjMDM5OyBtb2RlLCB0aGlzIHBhcmFtZXRlciBzcGVjaWZpZXMgd2V0aGVyICYjMDM5O25vbmUmIzAzOTsgaXMgYSB2YWxpZCBjaG9pY2UuJzsKJGxhbmdbJ3JldHVybnRvbW9kdWxlJ10gPSAnVG9ybmEgYWwgcGFubmVsbG8gZGVsIG1vZHVsbyc7CiRsYW5nWydlcnJvcl9ub2NhdGVnb3JpZXMnXSA9ICdOb24gY2kgc29ubyBjYXRlZ29yaWUgZGVmaW5pdGUnOwokbGFuZ1sndGl0bGVfZW5mb3JjZWV4dGVuc2lvbnMnXSA9ICdFc3RlbnNpb25lIG5lY2Vzc2FyaWEgcGVyIHR1dHRpIGkgZmlsZSBjYXJpY2F0aSc7CiRsYW5nWydyZXN0b3JlZGVmYXVsdHNjb25maXJtJ10gPSAnUXVlc3RhIG9wZXJhemlvbmUgcmlwcmlzdGluZXImYWdyYXZlOyBpbCBtb2RlbGxvIGFsIHByZWRlZmluaXRvIGRpIHNpc3RlbWEuIE9nbmkgbW9kaWZpY2EgZmF0dGEgdmVyciZhZ3JhdmU7IHBlcnNhLiAgU2lldGUgY2VydGkgZGkgdm9sZXJlIHByb2NlZGVyZT8nOwokbGFuZ1sndGh1bWJuYWlsJ10gPSAnQW50ZXByaW1hJzsKJGxhbmdbJ25ld3RodW1ibmFpbCddID0gJ1VwbG9hZCBudW92YSBNaW5pYXR1cmEnOwokbGFuZ1snaW5mb19zdW1tYXJ5J10gPSAnVW5hIGJyZXZlIGRlc2NyaXppb25lIGRlbCBmaWxlIChzZSB2dW90bywgaWwgbm9tZSBkZWwgZmlsZSB2aWVuZSB1dGlsaXp6YXRvIHNlbnphIGVzdGVuc2lvbmUpJzsKJGxhbmdbJ2luZm9fY2F0ZWdvcnluYW1lJ10gPSAnVW4gbm9tZSBicmV2ZSBwZXIgbGEgdm9zdHJhIGNhdGVnb3JpYSAobGVnZ2liaWxlKSc7CiRsYW5nWydpbmZvX2NhdGVnb3J5ZGVzYyddID0gJ1VuYSBkZXNjcml6aW9uZSBwZXIgbGEgdm9zdHJhIGNhdGVnb3JpYSc7CiRsYW5nWydpbmZvX2NhdGVnb3J5cGF0aCddID0gJ0lsIG5vbWUgZGVsbGEgY2FydGVsbGEgZGVudHJvIGxhIGNhcnRlbGxhIGRpIHVwbG9hZCBjaGUgdmVyciZhZ3JhdmU7IHV0aWxpenphdGEgcGVyIGNvbnRlbmVyZSBpIGZpbGUgZGkgcXVlc3RhIGNhdGVnb3JpYS4gU2UgbGEgY2FydGVsbGEgY29uIHF1ZXN0byBub21lIG5vbiBlc2lzdGUgcHUmb2dyYXZlOyBlc3NlcmUgY3JlYXRhLic7CiRsYW5nWydpbmZvX2Rlc3RuYW1lJ10gPSAnVXRpbGl6emEgaWwgY2FtcG8gJiMwMzk7VXBsb2FkIEFzJiMwMzk7IChDYXJpY2EgQ29tZSkgcGVyIG1vZGlmaWNhcmUgaWwgbm9tZSBkZWwgZmlsZSBuZWwgY2FyaWNhbWVudG8uICBMYXNjaWF0ZSB2dW90byBwZXIgbWFudGVuZXJlIGxvIHN0ZXNzbyBub21lIGRpIGZpbGUuJzsKJGxhbmdbJ2Vycm9yX2NhbnRjcmVhdGVkaXJlY3RvcnknXSA9ICdOb24gcG9zc28gY3JlYXJlIGxhIGNhcnRlbGxhJzsKJGxhbmdbJ2Vycm9yX25vbWFpbGVybW9kdWxlJ10gPSAnTm9uIHJpZXNjbyBhIGluaXppYWxpenphcmUgaWwgbW9kdWxvIENNU01haWxlcic7CiRsYW5nWyd1cGxvYWRfbm90aWZpY2F0aW9uJ10gPSAnRSYjMDM5OyBzdGF0byBjYXJpY2F0byB1biBudW92byBmaWxlJzsKJGxhbmdbJ3RpdGxlX2VtYWlsX29uX3VwbG9hZCddID0gJ0ludmlhIG5vdGlmaWNhIGRpIHVwbG9hZCBhOic7CiRsYW5nWydlbWFpbF90ZW1wbGF0ZSddID0gJ01vZGVsbG8gZGkgRS1tYWlsJzsKJGxhbmdbJ3RpdGxlX2R1bW15X2luZGV4X2h0bWwnXSA9ICdDcmVhcmUgdW4gZmlsZSBpbmRleC5odG1sIGluIG9nbmkgY2FydGVsbGE/Q3JlYXRlIGR1bW15IGluZGV4Lmh0bWwgZmlsZXMgaW4gZWFjaCBkaXJlY3Rvcnk/PGJyLz48ZW0+T2duaSBmaWxlIGluZGV4Lmh0bWwgZXNpc3RlbnRlIHZlcnImYWdyYXZlOyBjb25zZXJ2YXRvPC9lbT4nOwokbGFuZ1snYWJvdXQnXSA9ICdJbmZvcm1hemlvbmkgc3UnOwokbGFuZ1snZXJyb3JfcGVybWlzc2lvbmRlbmllZCddID0gJ0FjY2Vzc28gTmVnYXRvLiBWZXJpZmljYXRlIGkgdm9zdHJpIHBlcm1lc3NpLic7CiRsYW5nWydlcnJvcl9jb3VsZG5vdHdyaXRlJ10gPSAnTm9uIHBvc3NvIHNjcml2ZXJlJzsKJGxhbmdbJ2FkZGNhdGVnb3J5J10gPSAnQWdnaXVuZ2kgQ2F0ZWdvcmlhJzsKJGxhbmdbJ2FsbCddID0gJ1R1dHRvJzsKJGxhbmdbJ2FyZXlvdXN1cmUnXSA9ICdTaWV0ZSBTaWN1cmk/JzsKJGxhbmdbJ2F1dGhvciddID0gJ0F1dG9yZSc7CiRsYW5nWydjYW5jZWwnXSA9ICdBbm51bGxhJzsKJGxhbmdbJ2Nhbm5vdG1vZGlmeXBhdGgnXSA9ICcoSWwgcGVyY29yc28gbm9uIHB1Jm9ncmF2ZTsgZXNzZXJlIG1vZGlmaWNhdG8pJzsKJGxhbmdbJ2NhdGVnb3JpZXMnXSA9ICdDYXRlZ29yaWUnOwokbGFuZ1snY2F0ZWdvcnknXSA9ICdDYXRlZ29yaWEnOwokbGFuZ1snbWVzc2FnZV9jYXRlZ29yeWFkZGVkJ10gPSAnQ2F0ZWdvcmlhIGFnZ2l1bnRhIGNvbiBzdWNjZXNzbyc7CiRsYW5nWydkYXRlJ10gPSAnRGF0YSc7CiRsYW5nWydkYXRldXBsb2FkZWQnXSA9ICdEYXRhIENhcmljYW1lbnRvJzsKJGxhbmdbJ2RlZmF1bHQnXSA9ICdWYWxvcmkgcHJlZGVmaW5pdGknOwokbGFuZ1snZGVsZXRlJ10gPSAnRWxpbWluYSc7CiRsYW5nWydkZXNjcmlwdGlvbiddID0gJ0Rlc2NyaXppb25lJzsKJGxhbmdbJ2Rlc3RuYW1lJ10gPSAnQ2FyaWNhIENvbWUnOwokbGFuZ1snZGV0YWlsX3RlbXBsYXRlJ10gPSAnTW9kZWxsbyBEZXR0YWdsaSc7CiRsYW5nWydkb3dubG9hZGVkJ10gPSAnSWwgZmlsZSAlcyAmZWdyYXZlOyBzdGF0byBzY2FyaWNhdG8uJzsKJGxhbmdbJ2Rvd25sb2FkcyddID0gJ0Rvd25sb2FkJzsKJGxhbmdbJ2VkaXQnXSA9ICdNb2RpZmljYSc7CiRsYW5nWydlZGl0Y2F0ZWdvcnknXSA9ICdNb2RpZmljYSBDYXRlZ29yaWEnOwokbGFuZ1snZWRpdHVwbG9hZCddID0gJ01vZGlmaWNhIFVwbG9hZCc7CiRsYW5nWydlcnJvciddID0gJ0Vycm9yZSEnOwokbGFuZ1snZXJyb3JfcGF0aGludXNlMiddID0gJ0UmIzAzOTsgZ2kmYWdyYXZlOyBwcmVzZW50ZSB1bmEgY2F0ZWdvcmlhIGNoZSB1c2EgaWwgcGVycmNvcnNvIHNwZWNpZmljYXRvICglcyknOwokbGFuZ1snZXJyb3JfcGF0aGludXNlJ10gPSAnRSYjMDM5OyBnaSZhZ3JhdmU7IHByZXNlbnRlIHVuYSBjYXRlZ29yaWEgY2hlIHV0aWxpenphIHF1ZXN0byBwZXJjb3Jzbyc7CiRsYW5nWydlcnJvcl9jYXRlZ29yeWV4aXN0czInXSA9ICdFcnJvcmU6IE5vbWUgQ2F0ZWdvcmlhICVzIGdpJmFncmF2ZTsgZXNpc3RlJzsKJGxhbmdbJ2Vycm9yX2NhdGVnb3J5ZXhpc3RzJ10gPSAnRXJyb3JlOiBsYSBDYXRlZ29yaWEgZXNpc3RlIGdpJmFncmF2ZTsnOwokbGFuZ1snZXJyb3JfY2F0ZWdvcnlub3RlbXB0eSddID0gJ0Vycm9yZSEgTm9uIHBvc3NvIGVsaW1pbmFyZSB1bmEgY2F0ZWdvcmlhIGNoZSBub24gc2lhIHZ1b3RhJzsKJGxhbmdbJ2Vycm9yX2NhdGVnb3J5bm90Zm91bmQnXSA9ICdFcnJvcmU6IENhdGVnb3JpYSBub24gdHJvdmF0YSEnOwokbGFuZ1snZXJyb3JfZGJlcnJvciddID0gJ0Vycm9yZTogRXJyb3JlIGRlbCBEYXRhYmFzZSEnOwokbGFuZ1snZXJyb3JfZW1wdHljYXRlZ29yeSddID0gJ0Vycm9yZTogQ2F0Z29yaWEgdnVvdGEhJzsKJGxhbmdbJ2Vycm9yX2VtcHR5cGF0aCddID0gJ0Vycm9yZTogUGVyY29yc28gdnVvdG8hJzsKJGxhbmdbJ2Vycm9yX2ZpbGVleGlzdHMnXSA9ICdFcnJvcmUhIElsIGZpbGUgJXMgJmVncmF2ZTsgZ2kmYWdyYXZlOyBwcmVzZW50ZS4nOwokbGFuZ1snZXJyb3JfZmlsZW5vdGZvdW5kJ10gPSAnRXJyb3JlISBOb24gJmVncmF2ZTsgcG9zc2liaWxlIHRyb3ZhcmUgaWwgZmlsZSAlcy4nOwokbGFuZ1snZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJ10gPSAnRXJyb3JlOiBQYXJhbWV0cmkgaW5zdWZmaWNpZW50aSBwYXNzYXRpIGFsIG1vZHVsbyEnOwokbGFuZ1snZXJyb3JfaW52YWxpZGF1dGhvciddID0gJ0Vycm9yZTogQXV0b3JlIG5vbiB2YWxpZG8gKG8gdnVvdG8pLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkY2F0ZWdvcnknXSA9ICdFcnJvcmU6IENhdGVnb3JpYSBub24gdmFsaWRhIChvIHZ1b3RhKS4nOwokbGFuZ1snZXJyb3JfaW52YWxpZGRlc2NyaXB0aW9uJ10gPSAnRXJyb3JlOiBEZXNjcml6aW9uZSBub24gdmFsaWRhIChvIHZ1b3RhKS4nOwokbGFuZ1snZXJyb3JfaW52YWxpZGZpbGUnXSA9ICdFcnJvcmU6IE5vbWUgRmlsZSBub24gdmFsaWRvIChvIHZ1b3RvKS4nOwokbGFuZ1snZXJyb3JfaW52YWxpZHVwbG9hZGZpbGVuYW1lJ10gPSAnRXJyb3JlOiBGaWxlIGNvbiBxdWVzdG8gbm9tZSAocHJvYmFiaWxtZW50ZSBsJiMwMzk7ZXN0ZW5zaW9uZSkgbm9uIHNvbm8gY29uc2VudGl0aSAoJXMpLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXBsb2FkaWQnXSA9ICdFcnJvcmU6IGlkIGRpIGNhcmljYW1lbnRvIG5vbiB2YWxpZG8nOwokbGFuZ1snZXJyb3Jfbm9maWxlcyddID0gJ0Vycm9yZTogTmVzc3VuIEZpbGUgQ29ycmlzcG9uZGVudGUhJzsKJGxhbmdbJ2ZpbGVzJ10gPSAnRmlsZSc7CiRsYW5nWydmaXhtZSddID0gJ0NvcnJlZ2dpIFNwYXppJzsKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ0dlc3Rpb25lIGRpIEZyb250ZW5kIGRlaSBGaWxlIChNb2R1bG8gVXBsb2FkcyknOwokbGFuZ1snaWQnXSA9ICdJRCc7CiRsYW5nWydpbnN0YWxsZWQnXSA9ICdWZXJzaW9uZSAlcyBkZWwgTW9kdWxvIGluc3RhbGxhdGEuJzsKJGxhbmdbJ2lwX2FkZHJlc3MnXSA9ICdJbmRpcml6em8gSVAnOwokbGFuZ1snbW9kZGVzY3JpcHRpb24nXSA9ICdVbiBtb2R1bG8gY2hlIHBlcm1ldHRlIGFnbGkgdXRlbnRpIGRpIGNhcmljYXJlIGZpbGUsIGUgcGVybWV0dGUgYSB2b2kgZGkgZ2VzdGlybGkuJzsKJGxhbmdbJ25hbWUnXSA9ICdOb21lJzsKJGxhbmdbJ3JlbmFtZW1lc3NhZ2UnXSA9ICdNb2RpZmljYSBpbCBub21lIHF1aSBwZXIgcmlub21pbmFybG8nOwokbGFuZ1sncGF0aCddID0gJ1BlcmNvcnNvJzsKJGxhbmdbJ3BhdGhtZXNzYWdlJ10gPSAnTW9kaWZpY2EgbGEgY2F0ZWdvcmlhIHF1aSBwZXIgc3Bvc3RhcmUgaWwgZmlsZSBpbiB1biYjMDM5O2FsdHJhIGNhcnRlbGxhJzsKJGxhbmdbJ3BhdGhpbnVwbG9hZHMnXSA9ICcoUmVsYXRpdm8gYWxsYSBjYXJ0ZWxsYSBkZWdsaSB1cGxvYWQpJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsJ10gPSAnPHA+VGhlIHVwbG9hZHMgbW9kdWxlIGhhcyBiZWVuIHN1Y2Nlc3NmdWxseSBpbnN0YWxsZWQuIEJlIHN1cmUgdG8gc2V0ICZxdW90O01hbmFnZSBVcGxvYWRzJnF1b3Q7IHBlcm1pc3Npb25zIHRvIHVzZSB0aGlzIG1vZHVsZSE8L3A+DQo8cD48c3Ryb25nPldhcm5pbmc8L3N0cm9uZz4gLSBUaGUgcHJvcGVyIGJlaGF2aW91ciBvZiB0aGlzIG1vZHVsZSBkZXBlbmRzIG9uIG51bWVyb3VzIHBocCBjb25maWd1cmF0aW9uIHZhcmlhYmxlcy4gIFRoZXNlIGluY2x1ZGUgPGVtPihidXQgYXJlIG5vdCBsaW1pdGVkIHRvKTwvZW0+LCBwaHAmIzAzOTtzIG1lbW9yeV9saW1pdCwgc2FmZV9tb2RlLCBmaWxlX3VwbG9hZHMsIHVwbG9hZHNfbWF4X2ZpbGVzaXplLCBhbmQgbWF4X2V4ZWN1dGlvbl90aW1lLiAgVGhlc2UgdmFyaWFibGVzIG1heSBuZWVkIGFkanVzdG1lbnQgZm9yIHRoaXMgbW9kdWxlIHRvIHdvcmsgcHJvcGVybHkgb24geW91ciBzaXRlLiAgSXQgaXMgYWR2aXNlZCB0aGF0IHlvdSB3b3JrIHdpdGggeW91ciBzeXN0ZW0gYWRtaW5pc3RyYXRvciBvciBob3N0IHByb3ZpZGVyIHRvIHR1bmUgdGhlc2Ugc2V0dGluZ3MgZm9yIHlvdXIgcmVxdWlyZW1lbnRzLjwvcD4nOwokbGFuZ1sncG9zdHVuaW5zdGFsbCddID0gJ0lsIG1vZHVsbyBVcGxvYWRzICZlZ3JhdmU7IHN0YXRvIHJpbW9zc28gY29uIHN1Y2Nlc3NvLiAgTmVzc3VuIGZpbGUgJmVncmF2ZTsgc3RhdG8gcmltb3NzbyBkYWxsYSB2b3N0cmEgY2FydGVsbGEgZGkgdXBsb2FkIGUgbCYjMDM5O2ludGVncml0JmFncmF2ZTsgZGVpIGZpbGUgJmVncmF2ZTsgaW50YXR0YSc7CiRsYW5nWydwcmVmZXJlbmNlcyddID0gJ1ByZWZlcmVuemUnOwokbGFuZ1sncHJlZnN1cGRhdGVkJ10gPSAnUHJlZmVyZW56ZSBkZWwgbW9kdWxvIGFnZ2lvcm5hdGUuJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeWRlc2MnXSA9ICdEZXNjcml6aW9uZSc7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnlsaXN0YWJsZSddID0gJ0kgZmlsZSBpbiBxdWVzdGEgY2FydGVsbGEgcG9zc29ubyBlc3NlcmUgZWxlbmNhdGknOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5bmFtZSddID0gJ05vbWUgZGVsbGEgQ2F0ZWdvcmlhJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeXBhdGgnXSA9ICdQZXJjb3JzbyBkZWwgU2VydmVyJzsKJGxhbmdbJ3Byb21wdF9kZWxldGVkaXJlY3RvcnknXSA9ICdFbGltaW5hcmUgY2FydGVsbGEgZGVsbGEgY2F0ZWdvcmlhPyc7CiRsYW5nWydwcm9tcHRfbWF4X3VwbG9hZHNpemUnXSA9ICdEaW1lbnNpb25lIG1hc3NpbWEgZGVsIGZpbGUgcGVybWVzc2EgKEtiKSc7CiRsYW5nWydwcm9tcHRfdmFsaWRfdXBsb2FkZXh0ZW5zaW9ucyddID0gJ0VzdGVuc2lvbmkgdmFsaWRlIHBlciBsJiMwMzk7dXBsb2FkJzsKJGxhbmdbJ3NjYW4nXSA9ICdFc2FtaW5hJzsKJGxhbmdbJ3NlbGVjdGNhdGVnb3J5J10gPSAnU2VsZXppb25hIENhdGVnb3JpYSc7CiRsYW5nWydzaXplJ10gPSAnRGltZW5zaW9uZSc7CiRsYW5nWydzaXpla2InXSA9ICdEaW1lbnNpb25lIChLYiknOwokbGFuZ1snc3VibWl0J10gPSAnSW52aWEnOwokbGFuZ1snc3VtbWFyeV90ZW1wbGF0ZSddID0gJ01vZGVsbG8gZGVsIFNvbW1hcmlvJzsKJGxhbmdbJ3N1bW1hcnknXSA9ICdTb21tYXJpbyc7CiRsYW5nWyd0aXRsZV9hZG1pbl9wYW5lbCddID0gJ01vZHVsbyBVcGxvYWRzJzsKJGxhbmdbJ3RpdGxlX21vZF9hZG1pbiddID0gJ1Bhbm5lbGxvIGRpIEFtbWluaXN0cmF6aW9uZSBNb2R1bG8nOwokbGFuZ1sndGl0bGVfbW9kX3ByZWZzJ10gPSAnUHJlZmVyZW56ZSBkZWwgTW9kdWxvJzsKJGxhbmdbJ3RpdGxlX3N1Ym5ldF9leGNsdXNpb25zJ10gPSAnRXNjbHVkZXJlIGxlIHNvdHRvcmV0aSBkYWxsYSBzdGF0aXN0aWNoZSc7CiRsYW5nWyd0aXRsZV92YWxpZF91cGxvYWRleHRlbnNpb25zJ10gPSAnRXN0ZW5zaW9uaSBWYWxpZGUnOwokbGFuZ1sndW5pbnN0YWxsZWQnXSA9ICdNb2R1bG8gRGlzaW5zdGFsbGF0by4nOwokbGFuZ1sndXBncmFkZWQnXSA9ICdNb2R1bG8gYWdnaW9ybmF0byBhbGxhIHZlcnNpb25lICVzLic7CiRsYW5nWyd1cGxvYWQnXSA9ICdDYXJpY2EnOwokbGFuZ1sndXBsb2FkZWQnXSA9ICdGaWxlICVzIGNhcmljYXRvIGRhICVzLic7CiRsYW5nWydyZXBsYWNlZCddID0gJ0ZpbGUgJXMgc29zdGl0dWl0byBkYSAlcy4nOwokbGFuZ1snZGVsZXRlZCddID0gJ0lsIEZpbGUgJXMgJmVncmF2ZTsgc3RhdG8gY2FuY2VsbGF0by4nOwokbGFuZ1sndXBsb2FkZm9ybV90ZW1wbGF0ZSddID0gJ01vZGVsbG8gZGkgVXBsb2FkJzsKJGxhbmdbJ3VzZXJuYW1lJ10gPSAnTm9tZSBVdGVudGUnOwokbGFuZ1snd2FybmluZ19kZWxldGVjYXRlZ29yeSddID0gJ0FUVEVOWklPTkU6IFVzYXRlIGNhdXRlbGEgcXVhbmRvIGNhbmNlbGxhdGUgY2F0ZWdvcmllLiBFJiMwMzk7IHBvc3NpYmlsZSBwZXJkZXJlIGZpbGUnOwo/Pgo=]]></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+JzsKJGxhbmdbJ2Fib3V0J10gPSAnQWJvdXQnOwokbGFuZ1snZXJyb3JfcGVybWlzc2lvbmRlbmllZCddID0gJ0FjY2VzcyBEZW5pZWQuIFBsZWFzZSBjaGVjayB5b3VyIHBlcm1pc3Npb25zLic7CiRsYW5nWydlcnJvcl9jb3VsZG5vdHdyaXRlJ10gPSAnQ291bGQgbm90IHdyaXRlJzsKJGxhbmdbJ2FkZGNhdGVnb3J5J10gPSAnQWRkIENhdGVnb3J5JzsKJGxhbmdbJ2FsbCddID0gJ0FsbCc7CiRsYW5nWydhcmV5b3VzdXJlJ10gPSAnQXJlIFlvdSBTdXJlPyc7CiRsYW5nWydhdXRob3InXSA9ICdBdXRob3InOwokbGFuZ1snY2FuY2VsJ10gPSAnQ2FuY2VsJzsKJGxhbmdbJ2Nhbm5vdG1vZGlmeXBhdGgnXSA9ICcoVGhlIHBhdGggY2Fubm90IGJlIG1vZGlmaWVkKSc7CiRsYW5nWydjYXRlZ29yaWVzJ10gPSAnQ2F0ZWdvcmllcyc7CiRsYW5nWydjYXRlZ29yeSddID0gJ0NhdGVnb3J5JzsKJGxhbmdbJ21lc3NhZ2VfY2F0ZWdvcnlhZGRlZCddID0gJ0NhdGVnb3J5IHN1Y2Nlc3NmdWxseSBhZGRlZCc7CiRsYW5nWydkYXRlJ10gPSAnRGF0ZSc7CiRsYW5nWydkYXRldXBsb2FkZWQnXSA9ICdEYXRlIFVwbG9hZGVkJzsKJGxhbmdbJ2RlZmF1bHQnXSA9ICdEZWZhdWx0cyc7CiRsYW5nWydkZWxldGUnXSA9ICdEZWxldGUnOwokbGFuZ1snZGVzY3JpcHRpb24nXSA9ICdEZXNjcmlwdGlvbic7CiRsYW5nWydkZXN0bmFtZSddID0gJ1VwbG9hZCBBcyc7CiRsYW5nWydkZXRhaWxfdGVtcGxhdGUnXSA9ICdEZXRhaWwgVGVtcGxhdGVzJzsKJGxhbmdbJ2Rvd25sb2FkZWQnXSA9ICdGaWxlICVzIHdhcyBkb3dubG9hZGVkLic7CiRsYW5nWydkb3dubG9hZHMnXSA9ICdEb3dubG9hZHMnOwokbGFuZ1snZWRpdCddID0gJ0VkaXQnOwokbGFuZ1snZWRpdGNhdGVnb3J5J10gPSAnRWRpdCBDYXRlZ29yeSc7CiRsYW5nWydlZGl0dXBsb2FkJ10gPSAnRWRpdCBVcGxvYWQnOwokbGFuZ1snZXJyb3InXSA9ICdFcnJvciEnOwokbGFuZ1snZXJyb3JfcGF0aGludXNlMiddID0gJ0EgY2F0ZWdvcnkgdXNpbmcgdGhlIHBhdGggKCVzKSBhbHJlYWR5IGV4aXN0cyc7CiRsYW5nWydlcnJvcl9wYXRoaW51c2UnXSA9ICdBIGNhdGVnb3J5IHVzaW5nIHRoYXQgcGF0aCBhbHJlYWR5IGV4aXN0cyc7CiRsYW5nWydlcnJvcl9jYXRlZ29yeWV4aXN0czInXSA9ICdFcnJvcjogQ2F0ZWdvcnkgbmFtZWQgJXMgYWxyZWFkeSBleGlzdHMnOwokbGFuZ1snZXJyb3JfY2F0ZWdvcnlleGlzdHMnXSA9ICdFcnJvcjogQ2F0ZWdvcnkgYWxyZWFkeSBleGlzdHMnOwokbGFuZ1snZXJyb3JfY2F0ZWdvcnlub3RlbXB0eSddID0gJ0Vycm9yISBDYW5ub3QgZGVsZXRlIGEgY2F0ZWdvcnkgdGhhdCBpcyBub3QgZW1wdHknOwokbGFuZ1snZXJyb3JfY2F0ZWdvcnlub3Rmb3VuZCddID0gJ0Vycm9yOiBDYXRlZ29yeSBub3QgZm91bmQhJzsKJGxhbmdbJ2Vycm9yX2RiZXJyb3InXSA9ICdFcnJvcjogRGF0YWJhc2UgZXJyb3IhJzsKJGxhbmdbJ2Vycm9yX2VtcHR5Y2F0ZWdvcnknXSA9ICdFcnJvcjogRW1wdHkgQ2F0ZWdvcnkhJzsKJGxhbmdbJ2Vycm9yX2VtcHR5cGF0aCddID0gJ0Vycm9yOiBFbXB0eSBQYXRoISc7CiRsYW5nWydlcnJvcl9maWxlZXhpc3RzJ10gPSAnRXJyb3IhIEZpbGUgJXMgYWxyZWFkeSBleGlzdHMuJzsKJGxhbmdbJ2Vycm9yX2ZpbGVub3Rmb3VuZCddID0gJ0Vycm9yISBGaWxlICVzIHdhcyBub3QgZm91bmQuJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ0Vycm9yOiBJbnN1ZmZpY2llbnQgcGFyYW1ldGVycyBzdXBwbGllZCB0byBtb2R1bGUhJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRhdXRob3InXSA9ICdFcnJvcjogSW52YWxpZCAob3IgZW1wdHkpIGF1dGhvci4nOwokbGFuZ1snZXJyb3JfaW52YWxpZGNhdGVnb3J5J10gPSAnRXJyb3I6IEludmFsaWQgKG9yIGVtcHR5KSBjYXRlZ29yeS4nOwokbGFuZ1snZXJyb3JfaW52YWxpZGRlc2NyaXB0aW9uJ10gPSAnRXJyb3I6IEludmFsaWQgKG9yIGVtcHR5KSBkZXNjcmlwdGlvbi4nOwokbGFuZ1snZXJyb3JfaW52YWxpZGZpbGUnXSA9ICdFcnJvcjogSW52YWxpZCAob3IgZW1wdHkpIGZpbGVuYW1lLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXBsb2FkZmlsZW5hbWUnXSA9ICdFcnJvcjogRmlsZXMgd2l0aCB0aGF0IG5hbWUgKHByb2JhYmx5IGV4dGVuc2lvbikgYXJlIG5vdCBhbGxvd2VkICglcykuJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1cGxvYWRpZCddID0gJ0Vycm9yOiBJbnZhbGlkIHVwbG9hZCBpZCc7CiRsYW5nWydlcnJvcl9ub2ZpbGVzJ10gPSAnRXJyb3I6IE5vIE1hdGNoaW5nIEZpbGVzISc7CiRsYW5nWydmaWxlcyddID0gJ0ZpbGVzJzsKJGxhbmdbJ2ZpeG1lJ10gPSAnRml4IFNwYWNlcyc7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdGcm9udCBFbmQgRmlsZSBNYW5hZ2VtZW50IChVcGxvYWRzKSc7CiRsYW5nWydpZCddID0gJ0lkJzsKJGxhbmdbJ2luc3RhbGxlZCddID0gJ01vZHVsZSB2ZXJzaW9uICVzIGluc3RhbGxlZC4nOwokbGFuZ1snaXBfYWRkcmVzcyddID0gJ0lQIEFkZHJlc3MnOwokbGFuZ1snbW9kZGVzY3JpcHRpb24nXSA9ICdBIG1vZHVsZSB0aGF0IGFsbG93cyB1c2VycyB0byB1cGxvYWQgZmlsZXMsIGFuZCBhbGxvd3MgeW91IHRvIG1hbmFnZSB0aGVtLic7CiRsYW5nWyduYW1lJ10gPSAnTmFtZSc7CiRsYW5nWydyZW5hbWVtZXNzYWdlJ10gPSAnQ2hhbmdlIHRoZSBuYW1lIGhlcmUgdG8gZXhlY3V0ZSBhIHJlbmFtZSc7CiRsYW5nWydwYXRoJ10gPSAnUGF0aCc7CiRsYW5nWydwYXRobWVzc2FnZSddID0gJ0NoYW5nZSB0aGUgY2F0ZWdvcnkgaGVyZSB0byBtb3ZlIHRoZSBmaWxlIHRvIGFub3RoZXIgZGlyZWN0b3J5JzsKJGxhbmdbJ3BhdGhpbnVwbG9hZHMnXSA9ICcoUmVsYXRpdmUgdG8gdGhlIHVwbG9hZHMgZGlyZWN0b3J5KSc7CiRsYW5nWydwb3N0aW5zdGFsbCddID0gJzxwPlRoZSB1cGxvYWRzIG1vZHVsZSBoYXMgYmVlbiBzdWNjZXNzZnVsbHkgaW5zdGFsbGVkLiBCZSBzdXJlIHRvIHNldCAmcXVvdDtNYW5hZ2UgVXBsb2FkcyZxdW90OyBwZXJtaXNzaW9ucyB0byB1c2UgdGhpcyBtb2R1bGUhPC9wPg0KPHA+PHN0cm9uZz5XYXJuaW5nPC9zdHJvbmc+IC0gVGhlIHByb3BlciBiZWhhdmlvdXIgb2YgdGhpcyBtb2R1bGUgZGVwZW5kcyBvbiBudW1lcm91cyBwaHAgY29uZmlndXJhdGlvbiB2YXJpYWJsZXMuICBUaGVzZSBpbmNsdWRlIDxlbT4oYnV0IGFyZSBub3QgbGltaXRlZCB0byk8L2VtPiwgcGhwJiMwMzk7cyBtZW1vcnlfbGltaXQsIHNhZmVfbW9kZSwgZmlsZV91cGxvYWRzLCB1cGxvYWRzX21heF9maWxlc2l6ZSwgYW5kIG1heF9leGVjdXRpb25fdGltZS4gIFRoZXNlIHZhcmlhYmxlcyBtYXkgbmVlZCBhZGp1c3RtZW50IGZvciB0aGlzIG1vZHVsZSB0byB3b3JrIHByb3Blcmx5IG9uIHlvdXIgc2l0ZS4gIEl0IGlzIGFkdmlzZWQgdGhhdCB5b3Ugd29yayB3aXRoIHlvdXIgc3lzdGVtIGFkbWluaXN0cmF0b3Igb3IgaG9zdCBwcm92aWRlciB0byB0dW5lIHRoZXNlIHNldHRpbmdzIGZvciB5b3VyIHJlcXVpcmVtZW50cy48L3A+JzsKJGxhbmdbJ3Bvc3R1bmluc3RhbGwnXSA9ICdUaGUgVXBsb2FkcyBtb2R1bGUgaGFzIGJlZW4gc3VjY2Vzc2Z1bGx5IHJlbW92ZWQuICBObyBmaWxlcyBoYXZlIGJlZW4gcmVtb3ZlZCBmcm9tIHlvdXIgdXBsb2FkcyBkaXJlY3RvcnksIGFuZCBmaWxlIGludGVncml0eSBpcyBpbnRhY3QnOwokbGFuZ1sncHJlZmVyZW5jZXMnXSA9ICdQcmVmZXJlbmNlcyc7CiRsYW5nWydwcmVmc3VwZGF0ZWQnXSA9ICdNb2R1bGUgcHJlZmVyZW5jZXMgdXBkYXRlZC4nOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5ZGVzYyddID0gJ0Rlc2NyaXB0aW9uJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeWxpc3RhYmxlJ10gPSAnRmlsZXMgaW4gdGhpcyBkaXJlY3RvcnkgY2FuIGJlIGxpc3RlZCc7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnluYW1lJ10gPSAnQ2F0ZWdvcnkgTmFtZSc7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnlwYXRoJ10gPSAnU2VydmVyIFBhdGgnOwokbGFuZ1sncHJvbXB0X2RlbGV0ZWRpcmVjdG9yeSddID0gJ0RlbGV0ZSBjYXRlZ29yeSBkaXJlY3Rvcnk/JzsKJGxhbmdbJ3Byb21wdF9tYXhfdXBsb2Fkc2l6ZSddID0gJ01heGltdW0gZmlsZSBzaXplIGFsbG93ZWQgKEtiKSc7CiRsYW5nWydwcm9tcHRfdmFsaWRfdXBsb2FkZXh0ZW5zaW9ucyddID0gJ1ZhbGlkIHVwbG9hZCBleHRlbnNpb25zJzsKJGxhbmdbJ3NjYW4nXSA9ICdTY2FuJzsKJGxhbmdbJ3NlbGVjdGNhdGVnb3J5J10gPSAnU2VsZWN0IENhdGVnb3J5JzsKJGxhbmdbJ3NpemUnXSA9ICdTaXplJzsKJGxhbmdbJ3NpemVrYiddID0gJ1NpemUgKEtiKSc7CiRsYW5nWydzdWJtaXQnXSA9ICdTdWJtaXQnOwokbGFuZ1snc3VtbWFyeV90ZW1wbGF0ZSddID0gJ1N1bW1hcnkgVGVtcGxhdGVzJzsKJGxhbmdbJ3N1bW1hcnknXSA9ICdTdW1tYXJ5JzsKJGxhbmdbJ3RpdGxlX2FkbWluX3BhbmVsJ10gPSAnVXBsb2FkcyBNb2R1bGUnOwokbGFuZ1sndGl0bGVfbW9kX2FkbWluJ10gPSAnTW9kdWxlIEFkbWluIFBhbmVsJzsKJGxhbmdbJ3RpdGxlX21vZF9wcmVmcyddID0gJ01vZHVsZSBQcmVmZXJlbmNlcyc7CiRsYW5nWyd0aXRsZV9zdWJuZXRfZXhjbHVzaW9ucyddID0gJ0V4Y2x1ZGUgc3VibmV0cyBmcm9tIHN0YXRpc3RpY3MnOwokbGFuZ1sndGl0bGVfdmFsaWRfdXBsb2FkZXh0ZW5zaW9ucyddID0gJ1ZhbGlkIEV4dGVuc2lvbnMnOwokbGFuZ1sndW5pbnN0YWxsZWQnXSA9ICdNb2R1bGUgVW5pbnN0YWxsZWQuJzsKJGxhbmdbJ3VwZ3JhZGVkJ10gPSAnTW9kdWxlIHVwZ3JhZGVkIHRvIHZlcnNpb24gJXMuJzsKJGxhbmdbJ3VwbG9hZCddID0gJ1VwbG9hZCc7CiRsYW5nWyd1cGxvYWRlZCddID0gJ0ZpbGUgJXMgd2FzIHVwbG9hZGVkIGJ5ICVzLic7CiRsYW5nWydyZXBsYWNlZCddID0gJ0ZpbGUgJXMgd2FzIHJlcGxhY2VkIGJ5ICVzLic7CiRsYW5nWydkZWxldGVkJ10gPSAnRmlsZSAlcyB3YXMgZGVsZXRlZC4nOwokbGFuZ1sndXBsb2FkZm9ybV90ZW1wbGF0ZSddID0gJ1VwbG9hZCBUZW1wbGF0ZXMnOwokbGFuZ1sndXNlcm5hbWUnXSA9ICdVc2VybmFtZSc7CiRsYW5nWyd3YXJuaW5nX2RlbGV0ZWNhdGVnb3J5J10gPSAnV0FSTklORzogVXNlIGNhdXRpb24gd2hlbiBkZWxldGluZyBjYXRlZ29yaWVzLiAgRmlsZXMgbWF5IGJlIGxvc3QnOwokbGFuZ1sndXRtYSddID0gJzE1Njg2MTM1My4xMTY4MzExMzEyLjEyNDgwOTc1NTguMTI1Mzk2NzE3MC4xMjU0ODM2MDg4LjQnOwokbGFuZ1sndXRteiddID0gJzE1Njg2MTM1My4xMjU0ODM2MDg4LjQuMy51dG1jY249KHJlZmVycmFsKXx1dG1jc3I9Zm9ydW0uY21zbWFkZXNpbXBsZS5vcmd8dXRtY2N0PS9pbmRleC5waHAvdG9waWMsMzU3MDcubXNnMTc5NTIzLmh0bWx8dXRtY21kPXJlZmVycmFsJzsKJGxhbmdbJ3FjYSddID0gJ1AwLTUxOTAzNDYzMS0xMjUwNjA0ODg3NDI4JzsKJGxhbmdbJ3V0bWInXSA9ICcxNTY4NjEzNTMnOwokbGFuZ1sndXRtYyddID0gJzE1Njg2MTM1Myc7Cj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/lang/ext/nb_NO.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2ZpZWxkX2NhdGVnb3J5X2lkJ10gPSAnS2F0ZWdvcmlJRCc7CiRsYW5nWydmaWVsZF9jYXRlZ29yeV9uYW1lJ10gPSAnS2F0ZWdvcnVuYXZuJzsKJGxhbmdbJ2ZpZWxkX2NhdGVnb3J5X3BhdGgnXSA9ICdLYXRlZ29yaXN0aSc7CiRsYW5nWydmaWVsZF9hdXRob3InXSA9ICdFaWVyJzsKJGxhbmdbJ2ZpZWxkX2Rlc2NyaXB0aW9uJ10gPSAnQmVza3JpdmVsc2UnOwokbGFuZ1snbm91c2VyaW5mbyddID0gJ0luZ2VuIGJydWtlcmluZm8gdGlsZ2plbmdlbGlnJzsKJGxhbmdbJ2Vycm9yX21hdGNoaW5ncmVjb3JkcyddID0gJ0luZ2VuIHBvc3RlciBibGUgZnVubmV0IHNvbSBwYXNzZXIgZGluZSBrcml0ZXJpZXInOwokbGFuZ1snbXNnX3JlcG9ydF9zZW50J10gPSAnUmFwcG9ydCBzZW5kdCc7CiRsYW5nWydnZW5lcmF0ZWRfYnknXSA9ICdHZW5lcmVydCBhdic7CiRsYW5nWydnZW5lcmF0ZWRfb24nXSA9ICdHZW5lcmVydCBkZW4nOwokbGFuZ1snc3RhcnRfZGF0ZSddID0gJ1N0YXJ0ZGF0byc7CiRsYW5nWydlbmRfZGF0ZSddID0gJ1NsdXR0ZGF0byc7CiRsYW5nWyd1cGxvYWRfY2F0ZWdvcnlfbmFtZSddID0gJ0thdGVnb3JpbmF2bic7CiRsYW5nWydpbmZvX2ZpZWxkX2ZpbGVzJ10gPSAnRGV0dGUgZXIgZW4gYXV0b2Z1bGxmJm9zbGFzaDtyIGZlbHQsIGR1IGthbiBza3JpdmUgaW5uIGRlbHZpc2UgZmlsbmF2biBmb3IgYXQgZGUgc2thbCBibGkgYXV0b21hdGlzayBmdWxsZiZvc2xhc2g7cnQuIER1IGthbiBvZ3MmYXJpbmc7IHNrcml2ZSBpbm4gZmlsbmF2bm0mb3NsYXNoO25zdGVyIGR2cy46IGZvbypqcGcuIERlbm5lIGxpc3RlbiB2aWwgYmxpIHJlbnNldCBvZyBzamVra2V0IGZvciBneWxkaWdoZXQgbiZhcmluZztyIHNramVtYWV0IGVyIHNlbmR0JzsKJGxhbmdbJ3Byb21wdF9maWxlcyddID0gJ0ZpbGVyJzsKJGxhbmdbJ3JlcG9ydF9kb3dubG9hZHNieXVzZXInXSA9ICdOZWRsYXN0aW5nZXIgYXYgYnJ1a2VyJzsKJGxhbmdbJ3JlcG9ydF9kb3dubG9hZHNieWZpbGUnXSA9ICdOZWRsYXN0aW5nZXIgYXYgZmlsJzsKJGxhbmdbJ3Byb21wdF9vdXRwdXRfdGVtcGxhdGUnXSA9ICdVdGRhdGEgbWFsJzsKJGxhbmdbJ3RpdGxlX2Rvd25sb2Fkc2J5ZmlsZV90cGwnXSA9ICdOZWRsYXN0aW5nZXIgZXR0ZXIgZmlsIHJhcHBvcnRtYWwnOwokbGFuZ1sndGl0bGVfZG93bmxvYWRzYnl1c2VyX3RwbCddID0gJ05lZGxhc3RpbmdlciBldHRlciBicnVrZXIgcmFwcG9ydG1hbCc7CiRsYW5nWydycHRfZG93bmxvYWRzYnlmaWxlX3RwbCddID0gJ05lZGxhc3RpbmdlciBldHRlciBmaWwgcmFwcG9ydCc7CiRsYW5nWydycHRfZG93bmxvYWRzYnl1c2VyX3RwbCddID0gJ05lZGxhc3RpbmdlciBldHRlciBicnVrZXIgcmFwcG9ydCc7CiRsYW5nWyd1c2VycHJvcCddID0gJ0VnZW5za2FwJzsKJGxhbmdbJ2ZpZWxkX2xhdGVzdF9kb3dubG9hZCddID0gJ1Npc3RlIG5lZGxhc3RpbmcnOwokbGFuZ1snZmllbGQnXSA9ICdGZWx0JzsKJGxhbmdbJ2Nsb3NlJ10gPSAnTHVrayc7CiRsYW5nWydlcnJvcl9pbnRlcm5hbCddID0gJ0VuIGludGVybiBmZWlsIGhhciBvcHBzdCZhcmluZzt0dCc7CiRsYW5nWydlcnJvcl9ub3Byb2ZpbGUnXSA9ICdJbmdlbiByYXBwb3J0cHJvZmlsIG9wcGRhZ2V0JzsKJGxhbmdbJ2V4cG9ydF9odG1sZW1haWwnXSA9ICdIVE1MIHJhcHBvcnQgKHZpYSBlLXBvc3QpJzsKJGxhbmdbJ2V4cG9ydF9odG1sJ10gPSAnSFRNTCByYXBwb3J0IChueXR0IHZpbmR1KSc7CiRsYW5nWydleHBvcnRfY3N2J10gPSAnQVNDSUkgKGNzdikgZmlsJzsKJGxhbmdbJ3Byb21wdF9vdXRwdXQnXSA9ICdVdGRhdGEgZm9ybWF0JzsKJGxhbmdbJ3Byb21wdF9yZXBvcnRfdHlwZSddID0gJ1JBcHBvcnR0eXBlJzsKJGxhbmdbJ3JlcG9ydF9zdW1tYXJ5J10gPSAnU2FtbWVuZHJhZyc7CiRsYW5nWydyZXBvcnRfZGV0YWlsJ10gPSAnRGV0YWxqZXJ0JzsKJGxhbmdbJ2luZm9fZmV1X3VzZXJzJ10gPSAnRGV0dGUgZXIgZXQgYXV0b2Z1bGxmJm9zbGFzaDtyIGZlbHQsIGR1IGthbiBza3JpdmUgaW5uIGRlbHZpc2UgYnJ1a2VybmF2biBvZyBkZSBibGlyIGF1dG9tYXRpc2sgZnVsbGYmb3NsYXNoO3J0LiBEZW5uZSBsaXN0ZW4gdmlsIGJsaSByZW5zZXQgb2cgc2pla2tldCBmb3IgZ3lsZGlnaGV0IG4mYXJpbmc7ciBza2plbWFldCBlciBzZW5kdCc7CiRsYW5nWydwcm9tcHRfc3RhcnRfZGF0ZSddID0gJ1N0YXJ0ZGF0byc7CiRsYW5nWydwcm9tcHRfZW5kX2RhdGUnXSA9ICdTbHV0dGRhdG8nOwokbGFuZ1sncHJvbXB0X2FzY2VuZGluZyddID0gJ1N0aWdlbmRlJzsKJGxhbmdbJ3Byb21wdF9kZXNjZW5kaW5nJ10gPSAnU3lua2VuZGUnOwokbGFuZ1sncHJvbXB0X2RlZmF1bHQnXSA9ICdTdGFuZGFyZCc7CiRsYW5nWydwcm9tcHRfc29ydG9yZGVyJ10gPSAnU29ydGVyaW5nc3Jla2tlZiZvc2xhc2g7bGdlJzsKJGxhbmdbJ2ZpZWxkX2Rvd25sb2FkX2RhdGUnXSA9ICdOZWRsYXN0aW5nIGRhdG8nOwokbGFuZ1snZmllbGRfZG93bmxvYWRfdXNlciddID0gJ05lZGxhc3RpbmcgYnJ1a2VyJzsKJGxhbmdbJ2ZpZWxkX3VwbG9hZF9pZCddID0gJ09wcGxhc3RpbmdzSUQnOwokbGFuZ1snZmllbGRfdXBsb2FkX2NhdGVnb3J5X2lkJ10gPSAnS2F0ZWdvcmlJRCc7CiRsYW5nWydmaWVsZF91cGxvYWRfY2F0ZWdvcnlfbmFtZSddID0gJ0thdGVnb3JpbmF2bic7CiRsYW5nWydmaWVsZF91cGxvYWRfY2F0ZWdvcnlfcGF0aCddID0gJ0thdGVnb3Jpc3RpJzsKJGxhbmdbJ2ZpZWxkX3VwbG9hZF9uYW1lJ10gPSAnRmlsbmF2bic7CiRsYW5nWydmaWVsZF91cGxvYWRfYXV0aG9yJ10gPSAnRWllcic7CiRsYW5nWydmaWVsZF91cGxvYWRfZGVzY3JpcHRpb24nXSA9ICdCZXNrcml2ZWxzZSc7CiRsYW5nWydmaWVsZF91cGxvYWRfaXAnXSA9ICdPcHBsYXN0aW5ncyBJUCBhZHJlc3NlJzsKJGxhbmdbJ2ZpZWxkX3VwbG9hZF9zaXplJ10gPSAnRmlsc3Qmb3NsYXNoO3JyZWxzZSc7CiRsYW5nWydmaWVsZF91cGxvYWRfZGF0ZSddID0gJ09wcGxhc3RpbmdzZGF0byc7CiRsYW5nWydmaWVsZF9kb3dubG9hZHMnXSA9ICdBbnRhbGwgbmVkbGFzdGluZ2VyJzsKJGxhbmdbJ3Byb21wdF9maWVsZGxpc3QnXSA9ICdWZWxnIHV0ZGF0YSBmZWx0ZXInOwokbGFuZ1sncHJvbXB0X3NvcnRpbmcnXSA9ICdTb3J0ZXIgZXR0ZXInOwokbGFuZ1snZXJyb3Jfbm91c2Vyc2ZvdW5kJ10gPSAnRXR0ZXIgJmFyaW5nOyB2YWxpZGVyZSBpbm5kYXRhLCBpbmdlbiBwYXNzZW5kZSBicnVrZXJlIGJsZSBmdW5uZXQnOwokbGFuZ1snb3InXSA9ICdFbGxlcic7CiRsYW5nWydwcm9tcHRfZmV1X3VzZXJzJ10gPSAnRkVVIEJydWtlcmUnOwokbGFuZ1sncHJvbXB0X2ZldV9ncm91cHMnXSA9ICdGRVUgR3J1cHBlcic7CiRsYW5nWydvdXRwdXQnXSA9ICdVdGRhdGEnOwokbGFuZ1snZXJyb3Jfbm9mZXUnXSA9ICdGcm9udEVuZFVzZXJzIG1vZHVsICh2ZXJzaW9uIDEuMjEuMTUgZWxsZXIgc3Qmb3NsYXNoO3JyZSkgZXIgcCZhcmluZztrcmV2ZCBmb3IgZGVubmUgaGFuZGxpbmdlbic7CiRsYW5nWyd0aXRsZV9yZXBvcnRfZG93bmxvYWRzYnl1c2VyMiddID0gJ05lZGxhc3RpbmdlciBldHRlciBicnVrZXJyYXBwb3J0JzsKJGxhbmdbJ3RpdGxlX3JlcG9ydF9kb3dubG9hZHNieXVzZXInXSA9ICdOZWRsYXN0aW5nZXIgZXR0ZXIgYnJ1a2VyJzsKJGxhbmdbJ3RpdGxlX3JlcG9ydF9kb3dubG9hZHNieWZpbGUyJ10gPSAnTmVkbGFzdGluZ2VyIGV0dGVyIGZpbHJhcHBvcnQnOwokbGFuZ1sndGl0bGVfcmVwb3J0X2Rvd25sb2Fkc2J5ZmlsZSddID0gJ05lZGxhc3RpbmdlciBldHRlciBmaWwnOwokbGFuZ1sncmVwb3J0cyddID0gJ1JhcHBvcnRlcic7CiRsYW5nWydwcm9tcHRfZG93bmxvYWRzJ10gPSAnTmVkbGFzdGluZ2VyJzsKJGxhbmdbJ3Byb21wdF9wZXJtaXNzaW9ucyddID0gJ1RpbGxhdGVsc2VyJzsKJGxhbmdbJ3Byb21wdF9maWVsZHMnXSA9ICdGZWx0ZXInOwokbGFuZ1sncHJvbXB0X3NlbmRmaWxlJ10gPSAnU2VuZCBmaWwnOwokbGFuZ1snaW5mb19jYXRlZ29yeV9kZmx0dXNlcnBlcm1zJ10gPSAnVmVsZyBkZSBGRVUgYnJ1a2VyZ3J1cHBlbmUgc29tIGthbiBzZSBueWxpZyBvcHBsYXN0ZWRlIGVsbGVyIHNrYW5uZWRlIGZpbGVyLiBEZXR0ZSB2aWwgaWtrZSBoYSBlZmZla3QgcCZhcmluZzsgdGlsbGF0ZWxzZW5lIHRpbCBla3Npc3RlcmVuZGUgZmlsZXIuIEFkbWluaXN0cmF0b3JlciBrYW4gcmVkaWdlcmUgdGlsbGF0ZWxzZW5lIGZvciBodmVyIGZpbCB1bmRlciByZWRpZ2VyaW5nIGF2IGluZm9ybWFzam9uZW4gb20gZGVuIG9wcGxhc3RlZGUgZmlsZW4nOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5X2RmbHR1c2VycGVybXMnXSA9ICdHcnVwcGVyIHNvbSBrYW4gc2UgbnlsaWdlIG9wcGxhc3RlZGUgZWxsZXIgc2thbm5lZGUgZmlsZXInOwokbGFuZ1snaW5mb19jYXRlZ29yeV91c2VycGVybXMnXSA9ICdPbSBkZXR0ZSBlciBwJmFyaW5nO3NsJmFyaW5nO3R0LCBzJmFyaW5nOyBrYW4gZHUga29udHJvbGxlcmUgaHZhIEZFVSBicnVrZXJncnVwcGVyIGthbiBzZSBhdiBpbmRpdmlkdWVsbGUgZmlsZXIgaSBrYXRlZ29yaWVuJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeV91c2VycGVybXMnXSA9ICdLYW4gc3lubGlnaGV0IGJsaSBrb250cm9sbGVydCBwJmFyaW5nOyBmaWxuaXYmYXJpbmc7IGZvciBkZW5uZSBrYXRlZ29yaWVuJzsKJGxhbmdbJ3Byb21wdF9tb2RpZnlpbmcnXSA9ICdNb2RpZmlzZXJlcic7CiRsYW5nWydwcm9tcHRfdmlld2luZyddID0gJ1Zpc2VyJzsKJGxhbmdbJ3Byb21wdF9nZW5lcmFsJ10gPSAnR2VuZXJlbHQnOwokbGFuZ1snaW5mb19jYXRlZ29yeWxpc3RhYmxlJ10gPSAnS2FuIGZpbGVyIGkgZGVubmUga2F0YWdvcmllbiBibGkgbGlzdGV0JzsKJGxhbmdbJ2Vycm9yX21pc3Npbmd2YWx1ZSddID0gJ0VuIHAmYXJpbmc7a3JldmQgdmVyZGkgbWFuZ2xlcic7CiRsYW5nWydlZGl0ZWQnXSA9ICdSZWRpZ2VydCAlcyc7CiRsYW5nWydtb3ZlZGZpbGUnXSA9ICdGbHl0dGV0IGZpbCAlcyB0aWwgJXMnOwokbGFuZ1sncGFnZWxpbWl0J10gPSAnRmlsZXIgcGVyIHNpZGUnOwokbGFuZ1sndmlldyddID0gJ1ZpcyBkZW5uZSBmaWxlbic7CiRsYW5nWydlZGl0X3RoaXNfZmlsZSddID0gJ1JlZGlnZXIgZGV0dGUgZmVsdGV0JzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeV9zY2FubmFibGUnXSA9ICdTa2FsIGRlbm5lIGthdGFsb2dlbiBhdXRvbWF0aXNrIHNrYW5uZXMgZm9yIG55ZSBmaWxlcj8nOwokbGFuZ1snaW5mb19jYXRlZ29yeV9zY2FubmFibGUnXSA9ICdOJmFyaW5nO3IgZGVubmUga2F0YWxvZ2VuICZhcmluZztwbmVzIGZyYSBmcm9udCBlbmQgYmxpciBkZXQgYXV0b21hdGlzayBza2FubmV0IGZvciBvbSBkZXQgZmlubmVzIG55ZSBmaWxlcic7CiRsYW5nWydwcm9tcHRfdGxfYWNjZXNzJ10gPSAnVGlkc2JlZ3JlbnNldCB0aWxnYW5nJzsKJGxhbmdbJ3Byb21wdF9hbGxvd191cGxvYWRfc2VuZGZpbGUnXSA9ICdUaWxsYXQgc2VuZGluZyBhdiBmaWxlciBtZWQgZGV0IHNhbW1lIHZlZCBhZG1pbi1vcHBsYXN0aW5nJzsKJGxhbmdbJ21zZ19hdXRvX2RlbGV0ZV9maWxlJ10gPSAnU2xldHRldCBhdXRvbWF0aXNrIGZvcmVsZGV0IGZpbDogJXMnOwokbGFuZ1snbXNnX2F1dG9fZGVsZXRlX2ZpbGVfZmFpbGVkJ10gPSAnUmV0dGlnaGV0c3Byb2JsZW0sIGF1dG9zbGV0dGluZyBhdiAlcyBmZWlsZXQnOwokbGFuZ1snaW5mb19jYXRlZ29yeV9leHBpcmVzX2hycyddID0gJ1NwZXNpZmlzZXIgYW50YWxsIHRpbWVyIHNvbSBza2FsIGcmYXJpbmc7IGYmb3NsYXNoO3IgZmlsZXIgaSBkZW5uZSBrYXRlZ29yaWVuIGthbiBzbGV0dGVzLiBCZW55dHQgdmVyZGllbiAwIGZvciAmYXJpbmc7IGluZGlrZXJlIGF0IGZpbGVyIGlra2Ugc2thbCBzbGV0dGVzJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeV9leHBpcmVzX2hycyddID0gJ0FudGFsbCB0aW1lciBmJm9zbGFzaDtyIGZpbGVyIGkgZGVubmUga2F0ZWdvcmllbiBhdXRvbWF0aXNrIHZpbCBibGkgc2xldHRldCc7CiRsYW5nWydpbmZvX2RmbHRfY2F0ZWdvcnlfZXhwaXJ5J10gPSAnU3RhbmRhcmQgdmVyZGkgZm9yIG55ZSBrYXRlZ29yaWVyIHNvbSBzcGVzaWZpc2VyZXIgaHZvciBsZW5nZSBmaWxlciBpIGRlbm5lIGthdGVnb3JpZW4gZiZhcmluZztyIGxldmUgZiZvc2xhc2g7ciBkZSBhdXRvbWF0aXNrIHZpbCBibGkgc2xldHRldC4gQmVueXR0IHZlcmRpZW4gMCBmb3IgJmFyaW5nOyBpbmRpa2VyZSBpbmdlbiBzbGV0dGluZyc7CiRsYW5nWyd0aXRsZV9jYXRlZ29yeV9leHBpcnknXSA9ICdLYXRlZ29yaSBmb3JlbGRlbHNlc3BlcmlvZGUgPGVtPihocnMpPC9lbT4nOwokbGFuZ1snaW5mb19jYXRlZ29yeWRlbGV0YWJsZSddID0gJ0F1dG9yaXNlcnRlIGJydWtlcmUgdmlsIGhhIHRpbGdhbmcgdGlsICZhcmluZzsgc2xldHRlIGRpc3NlIGZpbGVuZS4gRGV0dGUgYmV0eXIgYXQgZW4gbGVua2UgdmlsIHZpc2VzIGkgZGUgYWt0dWVsbGUgbWFsZW5lIGZvciAmYXJpbmc7IHRpbGxhdGUgc2xldHRpbmcgYXYgZmlsZW4uIEVuIG5ldHRzdGVkc3V0dmlrbGVyIGthbiBiZW55dHRlIHBhc3NlbmRlIHNtYXJ0eWxvZ2lrayBmb3IgJmFyaW5nOyB2aXNlIGVuIGxlbmtlIHRpbCBkZSBhdXRvcmlzZXJ0ZSBicnVrZXJuZS4nOwokbGFuZ1snY29weV9maWxlcyddID0gJ0tvcGllciBmaWxlcic7CiRsYW5nWydlcnJvcl9maWxldG9vbGFyZ2UnXSA9ICdGaWxlbiBkdSBmb3JzJm9zbGFzaDtrdGUgJmFyaW5nOyBsYXN0ZSBvcHAgZXIgc3Qmb3NsYXNoO3JyZSBlbm4gZGV0IHNvbSBlciBzYXR0IGkgQ01TTVMgbWFrc2ltdW0gb3BwbGFzdGluZyBmaWxzdCZvc2xhc2g7cnJlbHNlJzsKJGxhbmdbJ2FyZXlvdXN1cmVfZGVsZXRlY2F0ZWdvcnknXSA9ICdFciBkdSBzaWtrZXIgcCZhcmluZzsgYXQgZHUgdmlsIHNsZXR0ZSBkZW5uZSBrYXRhZ29yaWVuPyc7CiRsYW5nWydlcnJvcl9kZWxldGUnXSA9ICdFbiBlbmhldCBrdW5uZSBpa2tlIHNsZXR0ZXMgKCVzKSc7CiRsYW5nWydjb25maXJtX2NhdF9tdWx0aWFjdGlvbiddID0gJ0VyIGR1IHNpa2tlciBwJmFyaW5nOyBhdCBkdSB2aWwgdXRmJm9zbGFzaDtyZSBkZW4gdmFsZ3RlIGhhbmRsaW5nZW4gcCZhcmluZzsgZGUgdmFsZ3RlIGthdGVnb3JpZW5lPyc7CiRsYW5nWydlcnJvcl9ub3RoaW5nX3NlbGVjdGVkJ10gPSAnRmVpbDogSW5nZW50aW5nIHZhbGd0JzsKJGxhbmdbJ3dpdGhfc2VsZWN0ZWQnXSA9ICdNZWQgdmFsZ3Q6JzsKJGxhbmdbJ2Vycm9yX3JlcGxhY2VfbWlzbWF0Y2hlZF9maWxlZXh0J10gPSAnVmVkIGVyc3RhdG5pbmcgYXYgZW4gZmlsIHMmYXJpbmc7IG0mYXJpbmc7IGR1IGxhc3RlIG9wcCBlbiBmaWwgYXYgYWtrdXJhdCBzYW1tZSB0eXBlIChzYXR0IGF2IGZpbGVuZGVsc2VuKS4gRmlsZW4gZHUgdmFsZ3RlIHBhc3NlciBpa2tlIG1lZCBkZW4gb3JpZ2luYWxlIGZpbGVuLic7CiRsYW5nWydyZXBsYWNlJ10gPSAnRXJzdGF0dCc7CiRsYW5nWydpbmZvX3JlcGxhY2VmaWxlJ10gPSAnRHUga2FuIGxhc3RlIG9wcCBlbiBlcnN0YXRuaW5nc2ZpbCwgb20gZmlsZW4gZXIgZXQgYmlsZGUsIG9nIGR1IGlra2UgaGFyIHNwZXNpZmlzZXJ0IGV0IGVyc3RhdG5pbmdzbWluaWF0eXJiaWxkZSwgdmlsIGV0IG55dHQgbWluaWF0eXJiaWxkZSBibGkgZ2VuZXJlcnQnOwokbGFuZ1sncHJvbXB0X3JlcGxhY2VmaWxlJ10gPSAnTGFzdCBvcHAgZXJzdGF0bmluZ3NmaWwnOwokbGFuZ1sndGl0bGVfZml4c3BhY2VzJ10gPSAnRmlrcyBtZWxsb21yb20gaSBmaWxuYXZuZXQnOwokbGFuZ1snY2F0ZWdvcnlfY29waWVkJ10gPSAnS2F0ZWdvcmllbiBibGUga29waWVydCc7CiRsYW5nWydlcnJvcl9kdXBsaWNhdGVwYXRoJ10gPSAnVmVubmxpZ3N0IHNwZXNpZmlzZXIgZXQga2F0YWxvZ25hdm4gc29tIGVyIGZvcnNramVsbGlnIGZyYSBraWxkZW4sIG9nIHNvbSBpa2tlIGFsbGVyZWRlIGVyIGkgYnJ1ayc7CiRsYW5nWydvcGVyYXRpb25fY2FuY2VsbGVkJ10gPSAnSGFuZGxpbmcgYXZicnV0dCc7CiRsYW5nWydzb3VyY2UnXSA9ICdLaWxkZSc7CiRsYW5nWydkZXN0aW5hdGlvbiddID0gJ00mYXJpbmc7bCc7CiRsYW5nWydwcm9tcHRfY29weV9maWxlcyddID0gJ0tvcGllciBrYXRlZ29yaWZpbGVyJzsKJGxhbmdbJ2luZm9fY29weV9maWxlcyddID0gJ0tvcGllciBmaWxlbmUgZnJhIGtpbGRla2F0ZWdvcmllbiBvdmVyIHRpbCBtJmFyaW5nO2xrYXRlZ29yaWVuJzsKJGxhbmdbJ2V4dHJhJ10gPSAnRWtzdHJhJzsKJGxhbmdbJ2NvcHknXSA9ICdLb3BpZXInOwokbGFuZ1snc2VsZWN0b25lJ10gPSAnVmVsZyBlbic7CiRsYW5nWydhdXRvd2F0ZXJtYXJrJ10gPSAnc2V0dCB2YW5ubWVya2UgYXV0b21hdGlzayBwJmFyaW5nOyBiaWxkZXInOwokbGFuZ1snaW1hZ2Vfc2V0dGluZ3MnXSA9ICdCaWxkZWlubnN0aWxsaW5nZXInOwokbGFuZ1sncHJvbXB0X2dldGZpbGVfcmVzdWx0cGFnZSddID0gJ1NpZGUgJmFyaW5nOyBiZW55dHRlIGZvciBmZWlsbWVsZGluZ2VyIG9nIGFuZHJlIG1lbGRpbmdlciByZWxhdGVydCB0aWwgZmlsbmVkbGFzdGluZyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkX2tleSddID0gJ09wcGxhc3RpbmdzbiZvc2xhc2g7a2tlbGVuIHNvbSBibGUgb3BwZ2l0dCBlciB1Z3lsZGlnIChtdWxpZyBkZW4gaGFyIG4mYXJpbmc7ZGQgZGVucyBtYWtzaW1hbGUgbmVkbGFzdGluZ3NtZW5nZGUgZWxsZXIgaGFyIHV0bCZvc2xhc2g7cHQpJzsKJGxhbmdbJ2RmbHRfdGltZWxpbWl0ZWRfc3ViamVjdCddID0gJ3skc2l0ZW5hbWV9IC0gRHUgaGFyIGYmYXJpbmc7dHQgdGlsZ2FuZyB0aWwgeyRlbnRyeS0+dXBsb2FkX25hbWV8c3RyaXBfdGFnc30gZm9yIGVuIGJlZ3JlbnNldCBwZXJpb2RlJzsKJGxhbmdbJ3Byb21wdF90aW1lbGltaXRlZF9zdWJqZWN0J10gPSAnRW1uZSBmb3IgZS1wb3N0IHNvbSBvcHByZXR0ZXMgbiZhcmluZztyIGRldCBzZW5kZXMgZW4gdGlkc2JlZ3JlbnNldCBVUkwnOwokbGFuZ1sncHJvbXB0X3RpbWVsaW1pdGVkX2F1dG9kZWxldGUnXSA9ICdTbGV0dCBhdXRvbWF0aXNrIHV0bCZvc2xhc2g7cHRlIGlubmxlZ2cgZXR0ZXIgTiB0aW1lciA8ZW0+KG9wcGdpIDAgZm9yICZhcmluZzsgc2wmYXJpbmc7IGF2IGF1dG9zbGV0dGluZyk8L2VtPjonOwokbGFuZ1sncHJvbXB0X3RpbWVsaW1pdGVkX3NlbmRpdCddID0gJ1NlbmQgZGVubmUgdXJsIHRpbCBkZW4gb3BwZ2l0dGUgZS1wb3N0YWRyZXNzZW4/JzsKJGxhbmdbJ3VybF9rZXknXSA9ICdVUkwtbiZvc2xhc2g7a2tlbCc7CiRsYW5nWydjcmVhdGVkJ10gPSAnT3BwcmV0dGV0JzsKJGxhbmdbJ2V4cGlyZXMnXSA9ICdVdGwmb3NsYXNoO3Blcic7CiRsYW5nWydhZGRlZGl0X3RpbWVsaW1pdGVkX2tleSddID0gJ0xlZ2cgdGlsL3JlZGlnZXIgVGlkc2JlZ3JlbnNldCBuJm9zbGFzaDtra2VsJzsKJGxhbmdbJ3RpbWVfbGltaXRlZF9rZXlfYWRkZWQnXSA9ICdUaWRzYmVncmVuc2V0IG4mb3NsYXNoO2trZWwgbGFndCB0aWwnOwokbGFuZ1snbnVtX2hvdXJzJ10gPSAnQW50YWxsIHRpbWVyJzsKJGxhbmdbJ251bV9kb3dubG9hZHMnXSA9ICdBbnRhbGwgbmVkbGFzdGluZ2VyJzsKJGxhbmdbJ2VtYWlsX2FkZHJlc3MnXSA9ICdFLXBvc3RhZHJlc3NlJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdfaW52YWxpZCddID0gJ0VuIHAmYXJpbmc7a3JldmQgdmVyZGkgbWFuZ2xlciBlbGxlciBlciB1Z3lsZGlnOiAlcyc7CiRsYW5nWydhZGRfdGltZWxpbWl0ZWRfa2V5J10gPSAnTGVnZyB0aWwgVGlkc2JlZ3JlbnNldCBuJm9zbGFzaDtra2VsJzsKJGxhbmdbJ2ZpbGVfaW5mbzInXSA9ICdGaWwgJXMgKGlkPSVkKSc7CiRsYW5nWydpbmZvX3RpbWVsaW1pdGVkX2Rvd25sb2FkcyddID0gJ1NwZXNpZmlzZXIgc3RhbmRhcmQgYW50YWxsIGdhbmdlciBzb20gZW4gZmlsIGlkZW50aWZpc2VydCBtZWQgZW4gc3Blc2lmaWsgbiZvc2xhc2g7a2tlbCBrYW4gbGFzdGVzIG5lZCc7CiRsYW5nWydwcm9tcHRfdGltZWxpbWl0ZWRfZG93bmxvYWRzJ10gPSAnU3RhbmRhcmQgYW50YWxsIG5lZGxhc3Rpbmdlcic7CiRsYW5nWydpbmZvX3RpbWVsaW1pdGVkX2hvdXJzJ10gPSAnU3Blc2lmaXNlciBzdGFuZGFyZCBhbnRhbGwgdGltZXIgc29tIGVuIFRpZHNiZWdyZW5zZXQgbiZvc2xhc2g7a2tlbCBlciBneWxkaWcuIE9wcGdpIDAgZm9yIHViZWdyZW5zZXQnOwokbGFuZ1sncHJvbXB0X3RpbWVsaW1pdGVkX2hvdXJzJ10gPSAnQW50YWxsIHRpbWVyIHNvbSBlbiBUaWRzZGJlZ3JlbnNldCBuJm9zbGFzaDtra2VsIGVyIGd5bGRpZyc7CiRsYW5nWyd0aW1lbGltaXRlZF91cmxfc2V0dGluZ3MnXSA9ICdJbm5zdGlsbGluZ2VyIGZvciBUaWRzYmVncmVuc2V0IG4mb3NsYXNoO2trZWwnOwokbGFuZ1snbWFuYWdlX3RpbWVsaW1pdGVkJ10gPSAnQmVoYW5kbGUgVGlkc2JlZ3JlbnNldCBhZGdhbmcnOwokbGFuZ1sndXBsb2FkaW5nX3NldHRpbmdzJ10gPSAnRmlsb3BwbGFzdGluZ3MgaW5uc3RpbGxpbmdlcic7CiRsYW5nWydnZW5lcmFsX3NldHRpbmdzJ10gPSAnR2VuZXJlbGxlIGlubnN0aWxsaW5nZXInOwokbGFuZ1sndGh1bWJuYWlsX3NldHRpbmdzJ10gPSAnTWluaWF0eXJiaWxkZWdlbmVyZXJpbmcnOwokbGFuZ1sndGl0bGVfcmVkaXJlY3Rfb25fc2VuZGZpbGUnXSA9ICdTaWRlIHNvbSBlbiBza2FsIHNlbmRlcyB0aWwgZXR0ZXIgc2VuZGluZyBhdiBlbiBmaWwnOwokbGFuZ1snbGJsX2JhY2snXSA9ICdUaWxiYWtlJzsKJGxhbmdbJ2xibF90ZW1wbGF0ZXMnXSA9ICdFbmRyZSBtYWxlcic7CiRsYW5nWydwcm9tcHRfcHVibGljX2ZpZWxkJ10gPSAnRGV0dGUgZmVsdGV0IGVyIG9mZmVudGxpZyA8ZW0+KGthbiBzZWVzIGF2IG5ldHRzdGVkc2JlcyZvc2xhc2g7a2VybmUpPC9lbT4nOwokbGFuZ1sndXBsb2FkX2VkaXRlZCddID0gJ0ZpbGRldGFsamVyIHJlZGlnZXJ0IHAmYXJpbmc7ICVzJzsKJGxhbmdbJ2luZm9fdGh1bWJuYWlsJ10gPSAnRW4gdmFsZ2ZyaSBtaW5pYXR5cmJpbGRlIGZpbCc7CiRsYW5nWyd1cGxvYWRfZmlsZSddID0gJ0xhc3Qgb3BwIGVuIG55IGZpbCc7CiRsYW5nWydtc2dfZmllbGRfZGVsZXRlZCddID0gJ0ZlbHQgc2xldHRldCc7CiRsYW5nWydhc2tfZGVsZXRlX2ZpZWxkJ10gPSAnRXIgZHUgc2lra2VyIHAmYXJpbmc7IGF0IGR1IHZpbCBmamVybmUgZGVubmUgZmVsdGRlZmluaXNqb25lbiBvZyBhbGxlIGFzc29zaWVydGUgdmVyZGllcj8nOwokbGFuZ1sneWVzJ10gPSAnSmEnOwokbGFuZ1snbm8nXSA9ICdOZWknOwokbGFuZ1sndHlwZSddID0gJ1R5cGUgJzsKJGxhbmdbJ2ZpZWxkdHlwZV9tdWx0aXNlbGVjdCddID0gJ0ZsZXJ2YWxnc2xpc3RlJzsKJGxhbmdbJ2ZpZWxkdHlwZV9kcm9wZG93biddID0gJ05lZHRyZWtrc2xpc3RlJzsKJGxhbmdbJ2ZpZWxkdHlwZV9jaGVja2JveCddID0gJ0F2a3J5c25pbmdzYm9rcyc7CiRsYW5nWydmaWVsZHR5cGVfdGV4dGFyZWEnXSA9ICdUZWtzdG9tciZhcmluZztkZSc7CiRsYW5nWydmaWVsZHR5cGVfdGV4dGlucHV0J10gPSAnVGVrc3Rpbm5za3JpdmluZyc7CiRsYW5nWydwcm9tcHRfdXNlX3d5c2l3eWcnXSA9ICdCZW55dHQgd3lzaXd5ZyByZWRpZ2VyZXJlbiBuJmFyaW5nO3IgZGV0dGUgZmVsdGV0cyB2ZXJkaSByZWRpZ2VyZXMnOwokbGFuZ1sncHJvbXB0X2RlZmF1bHRfY29udGVudCddID0gJ1N0YW5kYXJkIGlubmhvbGQgZm9yIGRldHRlIHRla3N0b21yJmFyaW5nO2RldCc7CiRsYW5nWydwcm9tcHRfZHJvcGRvd25fb3B0aW9ucyddID0gJ1ZhbGcgKGVuIHZlcmRpIHBlciBsaW5qZSknOwokbGFuZ1sncHJvbXB0X2ZpZWxkX21heGxlbmd0aCddID0gJ01ha3NpbXVtIGZlbHRsZW5nZGUnOwokbGFuZ1sncHJvbXB0X2ZpZWxkX2xlbmd0aCddID0gJ0ZlbHRsZW5nZGUnOwokbGFuZ1sncHJvbXB0X2ZpZWxkX3R5cGUnXSA9ICdGZWx0dHlwZSc7CiRsYW5nWydwcm9tcHRfZmllbGRfbmFtZSddID0gJ0ZlbHRuYXZuJzsKJGxhbmdbJ3RpdGxlX2FkZF9maWVsZCddID0gJ0xlZ2cgdGlsIGVsbGVyIHJlZGlnZXIgZW4gZmVsdGRlZmluaXNqb24nOwokbGFuZ1snZmllbGRfZGVmaW5pdGlvbnMnXSA9ICdGZWx0ZGVmaW5pc2pvbmVyJzsKJGxhbmdbJ3Byb21wdF9hZGRfZmllbGQnXSA9ICdMZWdnIHRpbCBlbiBmZWx0ZGVmaW5pc2pvbic7CiRsYW5nWydwYXJhbV9hY3Rpb24nXSA9ICdTcGVzaWZpc2VyZXIgb3BwZiZvc2xhc2g7cnNlbGVuIHRpbCBtb2R1bHRhZ2dlbi4gTXVsaWdlIHZlcmRpZXIgZXI6IGRlZmF1bHQgLSAoc2FtbWVuZHJhZyA9IHN0YW5kYXJkIG9wcGYmb3NsYXNoO3JzZWwpLCBkZXRhaWwgLSBmb3IgJmFyaW5nOyB2aXNlIGRldGFsanZpc25pbmcgZm9yIGVuIGVua2VsdCBmaWwgYmFzZXJ0IHAmYXJpbmc7IHVwbG9hZF9pZCwgb2cgeW91c2VuZGl0IC0gZm9yICZhcmluZzsgdmlzZSBldCBza2plbWEgZm9yICZhcmluZzsgdGlsbGF0ZSBvcHBsYXN0aW5nIGF2IGVuIGZpbCBvZyBzZW5kaW5nIGF2IGRlbm5lIHRpbCBmbGVyZSBhZHJlc3NlciBpIGVuIHZlbmRpbmcnOwokbGFuZ1sncGFyYW1fc2VuZGZpbGVwYWdlJ10gPSAnU3Blc2lmaXNlciBzaWRlIGlkIGVsbGVyIGFsaWFzIGZvciBzaWRlbiBzb20gc2thbCBiZW55dHRlcyBmb3IgU2VuZCBlbiBmaWwgc2tqZW1hZXQnOwokbGFuZ1snZmlsZV91cGxvYWRlZCddID0gJ0ZpbGVuIGJsZSB2ZWxseWtrZXQgbGFzdGV0IG9wcCc7CiRsYW5nWyd0byddID0gJ1RpbCc7CiRsYW5nWyd0aXRsZV95b3VzZW5kaXRmb3JtX3RlbXBsYXRlJ10gPSAnTGVnZyB0aWwgZWxsZXIgcmVkaWdlciBlbiAmcXVvdDtZb3UgU2VuZCBJdCZxdW90OyBza2plbWFtYWwnOwokbGFuZ1sneW91c2VuZGl0Zm9ybV90ZW1wbGF0ZSddID0gJ1lvdVNlbmRJdCBza2plbWFtYWwnOwokbGFuZ1sndGl0bGVfeW91c2VuZGl0Zm9ybV9zeXNkZWZhdWx0J10gPSAnU3lzdGVtc3RhbmRhcmQgJnF1b3Q7eW91IHNlbmQgaXQmcXVvdDsgbWFsJzsKJGxhbmdbJ21zZ19maWxlX3NlbnQnXSA9ICdFbiBtZWxkaW5nIHNvbSBpbm5laG9sZGVyIGluZm9ybWFzam9uIG9tIGZpbGVuIG9nIGh2b3JkYW4gZiZhcmluZzsgdGFrIGkgZGVuIGhhciBibGl0dCBzZW5kdCB0aWwgZGUgdmFsZ3RlIGFkcmVzc2VuZS4nOwokbGFuZ1snZXJyb3Jfbm9hZGRyZXNzZXMnXSA9ICdEdSBtJmFyaW5nOyBvcHBnaSBtaW5zdCBlbiBtJmFyaW5nO2xhZHJlc3NlJzsKJGxhbmdbJ2Vycm9yX25vc3ViamVjdCddID0gJ0R1IG0mYXJpbmc7IG9wcGdpIGV0IGVtbmUnOwokbGFuZ1snc3ViamVjdCddID0gJ0VtbmUnOwokbGFuZ1sndGl0bGVfc2VuZGZpbGVwYWdlJ10gPSAnU2lkZSBmb3IgJiMwMzk7U2VuZCBlbiBmaWwmIzAzOTsgc2tqZW1hJzsKJGxhbmdbJ2ZpbGVfaW5mbyddID0gJ0ZpbGluZm8nOwokbGFuZ1snc2VuZCddID0gJ1NlbmQgJzsKJGxhbmdbJ25vdGVzJ10gPSAnTm90YXRlcic7CiRsYW5nWydhZGRyZXNzZWVzJ10gPSAnU2VuZCBpbmZvcm1hc2pvbiBvbSBkZW5uZSBmaWxlbiB0aWwnOwokbGFuZ1sncHJvbXB0X3NlbmRmaWxlX2VtYWlsX3RlbXBsYXRlJ10gPSAnJnF1b3Q7U2VuZCBlbiBmaWwmcXVvdDsgZS1wb3N0bWFsJzsKJGxhbmdbJ3RpdGxlX3NlbmRmaWxlZm9ybV90ZW1wbGF0ZSddID0gJ0xlZ2cgdGlsIGVsbGVyIHJlZGlnZXIgZW4gJnF1b3Q7U2VuZCBlbiBmaWwmcXVvdDsgc2tqZW1hbWFsJzsKJGxhbmdbJ3NlbmRmaWxlZm9ybV90ZW1wbGF0ZSddID0gJyZxdW90O1NlbmQgZW4gZmlsJnF1b3Q7IHNramVtYW1hbGVyJzsKJGxhbmdbJ3Byb21wdF9ub3RpZnlfZW1haWxfdGVtcGxhdGUnXSA9ICdGaWwgbGFzdGV0IG9wcCB2YXJzbGluZyBlLXBvc3RtYWwnOwokbGFuZ1sndGl0bGVfc2VuZGZpbGVmb3JtX3N5c2RlZmF1bHQnXSA9ICdTeXN0ZW1zdGFuZGFyZCAmcXVvdDtTZW5kIGVuIGZpbCZxdW90OyBza2plbWFtYWwnOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5ZGVsZXRhYmxlJ10gPSAnRmlsZXIgaSBkZW5uZSBrYXRlZ29yaWVuIGYmYXJpbmc7ciBzbGV0dGVzJzsKJGxhbmdbJ3RpdGxlX2FsbG93X2RlbGV0ZSddID0gJ1RpbGxhdCBzbGV0dGluZyBhdiBmaWxlciBmcmEgZm9yc2lkZW4nOwokbGFuZ1snZGVmYXVsdF90ZW1wbGF0ZXMnXSA9ICdTdGFuZGFyZCBtYWxlcic7CiRsYW5nWydmaXJzdHBhZ2UnXSA9ICdGJm9zbGFzaDtyc3RlIHNpZGUnOwokbGFuZ1sncHJldnBhZ2UnXSA9ICdGb3JyaWdlIHNpZGUnOwokbGFuZ1snbmV4dHBhZ2UnXSA9ICdOZXN0ZSBzaWRlJzsKJGxhbmdbJ2xhc3RwYWdlJ10gPSAnU2lzdGUgc2lkZSc7CiRsYW5nWydmaXJzdHBhZ2VfYXJyb3cnXSA9ICc8PCAnOwokbGFuZ1sncHJldnBhZ2VfYXJyb3cnXSA9ICc8ICc7CiRsYW5nWyduZXh0cGFnZV9hcnJvdyddID0gJyA+JzsKJGxhbmdbJ2xhc3RwYWdlX2Fycm93J10gPSAnID4+JzsKJGxhbmdbJ3BhZ2UnXSA9ICdTaWRlJzsKJGxhbmdbJ29mJ10gPSAnYXYnOwokbGFuZ1sncHJvbXB0X2dyb3VwbGlzdCddID0gJ0F1dG9yaXNlcnRlIEZFVSBHcnVwcGVyJzsKJGxhbmdbJ2luZm9fZ3JvdXBsaXN0J10gPSAnVmVsZyBkZSBGRVUgZ3J1cHBlbmUgc29tIGdpcyB0aWxnYW5nIHRpbCBmaWxlciBpIGRlbm5lIGthdGVnb3JpZW4uIFZlbGcgYm9ydCBhbGxlIHZhbGcgZm9yICZhcmluZzsgZ2kgYWxsZSB0aWxnYW5nJzsKJGxhbmdbJ3RpdGxlX3NjYW4nXSA9ICdTa2FubiBldHRlciBueWUgZmlsZXIgaSBkZW5uZSBrYXRlZ29yaSc7CiRsYW5nWyd0aXRsZV9jcmVhdGVfdGh1bWJuYWlscyddID0gJ09wcHJldHQgbWFuZ2xlbmRlIG1pbmlhdHlyYmlsZGUgZm9yIGZpbGVyIGkgZGVubmUga2F0YWdvcmllbi4nOwokbGFuZ1snY3JlYXRlX3RodW1ibmFpbHMnXSA9ICdPcHByZXR0IG1pbmlhdHlyYmlsZGVyJzsKJGxhbmdbJ3RpdGxlX2NyZWF0ZV90aHVtYm5haWwnXSA9ICcoaWdqZW4pT3BwcmV0dCBtaW5pYXR5cmJpbGRlIGZvciBkZW5uZSBmaWxlbic7CiRsYW5nWydjcmVhdGVfdGh1bWJuYWlsJ10gPSAnT3BwcmV0dCBtaW5pYXR5cmJpbGRlJzsKJGxhbmdbJ2Vycm9yX3BhdGhlcnJvciddID0gJ0t1bm5lIGlra2UgJmFyaW5nO3BuZSBrYXRhbG9nZW4gKHJldHRpZ2hldHNwcm9ibGVtPyknOwokbGFuZ1sndGl0bGVfZG93bmxvYWRfY2h1bmtzaXplJ10gPSAnU3Qmb3NsYXNoO3JyZWxzZSBwJmFyaW5nOyBodmVyIG9wcGxhc3RpbmdzLWJvbGsnOwokbGFuZ1snaW5mb19kb3dubG9hZF9jaHVua3NpemUnXSA9ICcmQXJpbmc7IGp1c3RlcmUgZGVubmUgcGFyYW1ldGVyIHZpbCB2aXJrZSBpbm4gcCZhcmluZzsgbmVkbGFzdGluZ3NoYXN0aWdoZXRlbiBvZyBrYW4gaGplbHBlIGkgbGF2LW1pbm5lIG9tZ2l2ZWxzZXIuJzsKJGxhbmdbJ3dhcm5pbmdfc2FmZV9tb2RlJ10gPSAnUEhQJiMwMzk7cyBzYWZlIG1vZGUgZXIgc2wmYXJpbmc7dHQgcCZhcmluZzsuIERldHRlIGthbiBtZWRmJm9zbGFzaDtyZSBwcm9ibGVtZXIgbWVkIG9wcGxhc3RpbmcgYXYgZmlsZXIgKHRpbGxhdGVsc2VyKSwgb2cga2FuIG9ncyZhcmluZzsgaW5udmlya2UgcCZhcmluZzsgZGVubmUgbW9kdWxlbnMgbXVsaWdoZXQgdGlsICZhcmluZzsgc2VuZGUgZmlsZXIgZGEgZGVuIGlra2UgaGFyIG11bGlnaGV0IHRpbCAmYXJpbmc7IG92ZXJza3JpdmUgdmlzc2UgaW5pIGlubnN0aWxsaW5nZXIuIER1IHImYXJpbmc7ZGVzIHRpbCAmYXJpbmc7IGtvbnRha3RlIGRpbiB0aWxieWRlciBmb3IgJmFyaW5nOyBzZSBvbSBzYWZlIG1vZGUga2FuIHNsJmFyaW5nO3MgYXYuJzsKJGxhbmdbJ3BhcmFtX2RldGFpbHBhZ2UnXSA9ICdOeXR0aWcgZm9yIHZpc25pbmcgYXYgZGV0YWxqcmFwcG9ydCB2ZWQgJmFyaW5nOyBiZW55dHRlIGVuIGFubmVuIHNpZGVtYWwuIERlbm5lIHBhcmFtZXRlcmVuIHRhciBzaWRlIGlkIGVsbGVyIHNpZGUgYWxpYXMgZm9yIGVuIHNpZGUgc29tIHNrYWwgYmVueXR0ZXMgZm9yICZhcmluZzsgdmlzZSBkZXRhbGpyYXBwb3J0ZW4nOwokbGFuZ1sncGFyYW1fcHJlZml4J10gPSAnRW4gYm9vbGVhbiBzb20gaW5kaWtlcmVyIG9tIGZpbG5hdm4gc2thbCBoYSBmaWxmb3JzdGF2ZWxzZSAocHJlZml4KSc7CiRsYW5nWydwYXJhbV9wcmVmaXhfZmV1J10gPSAnRW4gYm9vbGVhbnNrIHBhcmFtZXRlciBzb20gaW5kaWtlcmVyIGF0IGZpbC1mb3JzdGF2ZWxzZW4gc2thbCBvcHBnaXMgYXYgbiZhcmluZzt2JmFlbGlnO3JlbmRlIG9wcGhhdnNtYW5uLCBvbSBpa2tlIHNwZXNpZmlzZXJ0LCBzJmFyaW5nOyBlciBmaWwtZm9yc3RhdmVsc2VuIG4mYXJpbmc7diZhZWxpZztyZW5kZSB0aWQgKGkgZGVjaGV4IGZvcm1hdCknOwokbGFuZ1sncGFyYW1fbm9jYXB0Y2hhJ10gPSAnU2wmYXJpbmc7IGF2IENhcHRjaGEgc3Qmb3NsYXNoO3R0ZSAoZXIgcCZhcmluZzsgc29tIHN0YW5kYXJkKSBpIG9wcGxhc3Rpbmcgc2tqZW1hZXQnOwokbGFuZ1sndGl0bGVfdXBsb2FkZm9ybV90ZW1wbGF0ZSddID0gJ1JlZGlnZXIgT3BwbGFzdGluZ3NramVtYW1hbCc7CiRsYW5nWydjYXB0Y2hhX3RpdGxlJ10gPSAnU2tyaXYgaW5uIHRla3N0ZW4gc29tIHZpc2VzIGkgZGV0dGUgYmlsZGV0JzsKJGxhbmdbJ2Vycm9yX2NhcHRjaGFtaXNtYXRjaCddID0gJ1Rla3N0ZW4gZnJhIGJpbGRldCBibGUgaWtrZSBza3JldmV0IHJpa3RpZyc7CiRsYW5nWyd0aXRsZV9hdXRvdGh1bWJuYWlsX2V4dGVuc2lvbnMnXSA9ICdPcHByZXR0IG1pbmlhdHlyYmlsZGVyIGZvciBmaWxlciBzb20gaGFyIGRpc3NlIGZpbGVuZGVsc2VuZSc7CiRsYW5nWyd0aXRsZV9hdXRvdGh1bWJuYWlsX3NpemUnXSA9ICdNYWtzaW11bSBzdCZvc2xhc2g7cnJlbHNlIChwaXhlbHMpIHAmYXJpbmc7IGdlbmVyZXJ0IG1pbmlhdHlyYmlsZGUnOwokbGFuZ1sncHJvbXB0X3VwbG9hZF9pY29uJ10gPSAnTGFzdCBvcHAgZXQgSWtvbic7CiRsYW5nWydpbmZvX3N5c2RlZmF1bHQnXSA9ICdEZW5uZSB0ZWtzdGVuIGJsaXIgYnJ1a3QgbiZhcmluZztyIGVuIG55IG1hbCBhdiBkZW5uZSB0eXBlIG9wcHJldHRlcyc7CiRsYW5nWyd0aXRsZV9kZXRhaWxycHRfc3lzZGVmYXVsdCddID0gJ1N5c3RlbSBzdGFuZGFyZCBEZXRhbGpyYXBwb3J0bWFsJzsKJGxhbmdbJ3RpdGxlX3N1bW1hcnlycHRfc3lzZGVmYXVsdCddID0gJ1N5c3RlbSBzdGFuZGFyZCBTYW1tZW5kcmFnc3JhcHBvcnRtYWwnOwokbGFuZ1sndGl0bGVfdXBsb2FkZm9ybV9zeXNkZWZhdWx0J10gPSAnU3lzdGVtIHN0YW5kYXJkIG9wcGxhc3Rpbmdza2plbWFtYWwnOwokbGFuZ1sndGVtcGxhdGUnXSA9ICdNYWwnOwokbGFuZ1sncmVzZXR0b2RlZmF1bHQnXSA9ICdTZXR0IHRpbCBTdGFuZGFyZCc7CiRsYW5nWyd0aXRsZV9zdW1tYXJ5cnB0X3RlbXBsYXRlJ10gPSAnU2FtbWVuZHJhZyBSYXBwb3J0IG1hbCc7CiRsYW5nWyd0aXRsZV9kZXRhaWxycHRfdGVtcGxhdGUnXSA9ICdEZXRhbGogUmFwcG9ydCBtYWwnOwokbGFuZ1sncHJvbXB0X25hbWUnXSA9ICdOYXZuJzsKJGxhbmdbJ2xlZ2VuZF91cGxvYWRmb3JtJ10gPSAnTGFzdCBvcHAgZW4gZmlsJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdwYXJhbSddID0gJ0VuIG4mb3NsYXNoO2R2ZW5kaWcgcGFyYW1ldGVyIG1hbmdsZXInOwokbGFuZ1snZXJyb3JfbWlzc2luZ25hbWUnXSA9ICdFdCBuYXZuIHAmYXJpbmc7IGZpbHR5cGVuIG0mYXJpbmc7IHNwZXNpZmlzZXJlcyc7CiRsYW5nWydlcnJvcl9taXNzaW5nZXh0ZW5zaW9ucyddID0gJ01pbnN0IGVuIGZpbGVuZGVsc2UgbSZhcmluZzsgc3Blc2lmaXNlcmVzJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdpY29uJ10gPSAnRXQgaWtvbiBtJmFyaW5nOyBzcGVzaWZpc2VyZXMnOwokbGFuZ1snZXJyb3Jfbm9zdWNocm93J10gPSAnRGVuIHNwZXNpZmlzZXJ0ZSByYWRlbiBibGUgaWtrZSBmdW5uZXQnOwokbGFuZ1snbmFtZV91bmtub3duJ10gPSAnVWtqZW50JzsKJGxhbmdbJ2Rlc2NyaXB0aW9uX3Vua25vd24nXSA9ICdCZXNrcml2ZWxzZSBmb3IgdWtqZW50ZSBmaWx0eXBlcic7CiRsYW5nWydpbWFnZSddID0gJ0JpbGRlJzsKJGxhbmdbJ2ljb24nXSA9ICdJa29uJzsKJGxhbmdbJ2V4dGVuc2lvbnMnXSA9ICdGaWxlbmRlbHNlcic7CiRsYW5nWydhZGRmaWxldHlwZSddID0gJ0xlZ2cgdGlsIG55IGZpbHR5cGUnOwokbGFuZ1snZmlsZV90eXBlcyddID0gJ0ZpbHR5cGVyJzsKJGxhbmdbJ2Vycm9yX25vY2F0ZWdvcnlpZCddID0gJ0luZ2VuIGthdGVnb3JpIGlkIGJsZSBvcHBnaXR0JzsKJGxhbmdbJ2Vycm9yX25vY2F0ZWdvcnknXSA9ICdJbmdlbiBrYXRlZ29yaSBpZCBibGUgb3BwZ2l0dCc7CiRsYW5nWydlcnJvcl90ZW1wbGF0ZW5hbWVleGlzdHMnXSA9ICdFbiBtYWwgbWVkIGRldCBuYXZuZXQgZWtzaXN0ZXJlciBhbGxlcmVkZSc7CiRsYW5nWydwcm9tcHRfdGVtcGxhdGVuYW1lJ10gPSAnTWFsbmF2bic7CiRsYW5nWydwcm9tcHRfdGVtcGxhdGUnXSA9ICdNYWwnOwokbGFuZ1sncHJvbXB0X25ld3RlbXBsYXRlJ10gPSAnTGFnIGVuIG55IG1hbCc7CiRsYW5nWydoZWxwX09uRG93bmxvYWQnXSA9ICc8cD5FbiBoZW5kZWxzZSBnZW5lcmVydCBuJmFyaW5nO3IgZW4gYnJ1a2VyIGF2c2x1dHRlciBuZWRsYXN0aW5nIGF2IGVuIGZpbDwvcD4NCjxoND5QYXJhbWV0ZXJlPC9oND4NCjx1bD4NCjxsaT48ZW0+aWQ8L2VtPiAtIExhc3Qtb3BwIElEPC9saT4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gRmlsbmF2bjwvbGk+DQo8bGk+PGVtPmlwPC9lbT4gLSBJUCBBZHJlc3NlbiB0aWwgZGVuIHNvbSBsYXN0ZXQgbmVkPC9saT4NCjwvdWw+DQonOwokbGFuZ1snaGVscF9PbkRlbGV0ZUNhdGVnb3J5J10gPSAnPHA+RW4gaGVuZGVsc2UgZ2VuZXJlcnQgbiZhcmluZztyIGVuIGthdGVnb3JpIGVyIHNsZXR0ZXQ8L3A+DQo8aDQ+UGFyYW1ldGVyZTwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIEthdGVnb3JpIG5hdm48L2xpPg0KPGxpPjxlbT5wYXRoPC9lbT4gLSBLYXRlZ29yaSBzdGk8L2xpPg0KPC91bD4NCic7CiRsYW5nWydoZWxwX09uQ3JlYXRlQ2F0ZWdvcnknXSA9ICc8cD5FbiBoZW5kZWxzZSBnZW5lcmVydCBuJmFyaW5nO3IgZW4ga2F0ZWdvcmkgZXIgb3BwcmV0dGV0PC9wPg0KPGg0PlBhcmFtZXRlcmU8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBOYXZuZXQgcCZhcmluZzsga2F0ZWdvcmllbjwvbGk+DQo8bGk+PGVtPmRlc2NyaXB0aW9uPC9lbT4gLSBLYXRlZ29yaSBiZXNrcml2ZWxzZW48L2xpPg0KPGxpPjxlbT5wYXRoPC9lbT4gLSBLYXRlZ29yaSBzdGllbjwvbGk+DQo8bGk+PGVtPmxpc3RhYmxlPC9lbT4gLSBFdCBmbGFnZyBzb20gaW5kaWtlcmVyIG9tIGthdGVnb3JpZW4gZXIgdXRsaXN0YmFyPC9saT4NCjxsaT48ZW0+ZGVsZXRhYmxlPC9lbT4gLSBFdCBmbGFnZyBzb20gaW5kaWtlcmVyIG9tIGZpbGVyIGkga2F0ZWdvcmllbiBlciBsb3YgJmFyaW5nOyBzbGV0dGU8L2xpPg0KDQo8L3VsPg0KJzsKJGxhbmdbJ2hlbHBfT25SZW1vdmUnXSA9ICc8cD5FbiBoZW5kZWxzZSBnZW5lcmVydCBuJmFyaW5nO3IgZW4gZmlsIGVyIGZqZXJuZXQgdmlhIEFkbWluIGVsbGVyIEZyb250ZW5kIGdyZW5zZXNuaXR0ZW5lPC9wPg0KPGg0PlBhcmFtZXRlcmU8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBOYXZuZXQgcCZhcmluZzsgZGVuIGZqZXJuZWRlIGZpbGE8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gSUQmIzAzOTtlbiBwJmFyaW5nOyBkZW4gZmplcm5lZGUgZmlsYTwvbGk+DQo8bGk+PGVtPmNhdGVnb3JpX2lkPC9lbT4gLSBJRCYjMDM5O2VuIHAmYXJpbmc7IGthdGVnb3JpZW48L2xpPg0KPC91bD4NCic7CiRsYW5nWydoZWxwX09uVXBsb2FkJ10gPSAnPHA+RW4gaGVuZGVsc2UgZ2VuZXJlcnQgbiZhcmluZztyIGVuIG55IGZpbCBlciBsYXN0ZXQgb3BwIHZpYSBhZG1pbiBlbGxlciBmcm9udGVuZCBncmVuc2Vzbml0dGV0PC9wPg0KPGg0PlBhcmFtZXRlcmU8L2g0Pg0KPHVsPg0KPGxpPjxlbT5jYXRlZ29yeTwvZW0+IC0gS2F0ZWdvcmkgbmF2bmV0PC9saT4NCjxsaT48ZW0+Y2F0ZWdvcnlwYXRoPC9lbT4gLSBLYXRlZ29yaSBzdGllbjwvbGk+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIE5hdm5ldCBwJmFyaW5nOyBkZW4gb3BwbGFzdGVkZSBmaWxhPC9saT4NCjxsaT48ZW0+c2l6ZTwvZW0+IC0gU3Qmb3NsYXNoO3JyZWxzZW4gcCZhcmluZzsgZGVuIG9wcGxhc3RlZGUgZmlsYTwvbGk+DQo8bGk+PGVtPnN1bW1hcnk8L2VtPiAtIERlbiBrb3J0ZSBiZXNrcml2ZWxzZW4gZm9yIGRlbiBvcHBsYXN0ZWRlIGZpbGEgKGthbiB2JmFlbGlnO3JlIGJsYW5rKTwvZW0+PC9saT4NCjxsaT48ZW0+ZGVzY3JpcHRpb248L2VtPiAtIERlbiBmdWxsZSBiZXNrcml2ZWxzZW4gZm9yIGRlbiBvcHBsYXN0ZWRlIGZpbGEgKGthbiB2JmFlbGlnO3JlIGJsYW5rKTwvZW0+PC9saT4NCjxsaT48ZW0+YXV0aG9yPC9lbT4gLSBPcHBoYXZzbWFubmVuIGZvciBkZW4gb3BwbGFzdGVkZSBmaWxhIChpZiBhdmFpbGFibGUpPC9lbT48L2xpPg0KPGxpPjxlbT5pcF9hZGRyZXNzPC9lbT4gLSBJbnRlcm5ldHQgYWRyZXNzZW4gZm9yIGtsaWVudGVuIHNvbSBsYXN0ZXQgb3BwIGZpbGE8L2xpPg0KPC91bD4nOwokbGFuZ1snaW5mb19ldmVudF9vbmRlbGV0ZWNhdGVnb3J5J10gPSAnSGVuZGVsc2UgZ2VuZXJlcnQgbiZhcmluZztyIGVuIGthdGVnb3JpIGVyIHNsZXR0ZXQnOwokbGFuZ1snaW5mb19ldmVudF9vbmNyZWF0ZWNhdGVnb3J5J10gPSAnSGVuZGVsc2UgZ2VuZXJlcnQgbiZhcmluZztyIGVuIGthdGVnb3JpIGVyIGxhZ2V0JzsKJGxhbmdbJ2luZm9fZXZlbnRfb25kb3dubG9hZCddID0gJ0hlbmRlbHNlIGdlbmVyZXJ0IG4mYXJpbmc7ciBlbiBmaWwgZXIgbGFzdGV0IG5lZCc7CiRsYW5nWydpbmZvX2V2ZW50X29udXBsb2FkJ10gPSAnSGVuZGVsc2UgZ2VuZXJlcnQgbiZhcmluZztyIGVuIG55IGZpbCBlciBsYXN0ZXQgb3BwJzsKJGxhbmdbJ2luZm9fZXZlbnRfb25yZW1vdmUnXSA9ICdIZW5kZWxzZSBnZW5lcmVydCBuJmFyaW5nO3IgZW4gZmlsIGVyIGZqZXJuZXQnOwokbGFuZ1sndGl0bGVfdXNlcnRhZ19vbnVwbG9hZCddID0gJ0JydWtlciBkZWZpbmVydCB0YWdnICZhcmluZzsga2omb3NsYXNoO3JlIGV0dGVyIG9wcGxhc3RpbmcgZXIgZmVyZGlnJzsKJGxhbmdbJ25vbmUnXSA9ICdJbmdlbic7CiRsYW5nWydtYXRjaGVzZm91bmQnXSA9ICdUcmVmZiBmdW5uZXQnOwokbGFuZ1snZmlsdGVyJ10gPSAnRmlsdGVyICc7CiRsYW5nWyd0aXRsZV9yZWRpcmVjdG9udXBsb2FkJ10gPSAnVmlkZXJlc2VuZCB0aWwgc2lkZSBpZC9hbGlhcyB2ZWQgYnJ1a2VycyBvcHBsYXN0aW5nJzsKJGxhbmdbJ2RldGFpbHMnXSA9ICdEZXRhbGplcic7CiRsYW5nWydjb25maXJtX3ByZWZlcmVuY2VzJ10gPSAnRXIgZHUgc2lra2VyIHAmYXJpbmc7IGR1IHZpbCBlbmRyZSBpbm5zdGlsbGluZ2VuZSc7CiRsYW5nWydlcnJvcl9ub2ZpbGVzdXBsb2FkZWQnXSA9ICdJbmdlbiBmaWxlciBibGUgbGFzdGV0IG9wcC4nOwokbGFuZ1sncHJvbXB0X3JlcGxhY2UnXSA9ICdUaWxsYXQgb3ZlcnNrcml2aW5nJzsKJGxhbmdbJ2luZm9fcmVwbGFjZSddID0gJ0Vyc3RhdHQgZW5odmVyIGZpbCBtZWQgc2FtbWUgbmF2biAoZW5kcmVyIGlra2UgaWQmIzAzOTtlbiknOwokbGFuZ1sncGFyYW1fbm9faW5pdGlhbCddID0gJ0lra2UgdmlzIG5vZW4gaW5ubGVkZW5kZSByZXN1bHRhdGVyIG4mYXJpbmc7ciBmaWx0ZXJldCBlciBwJmFyaW5nOyc7CiRsYW5nWydwYXJhbV9rZXknXSA9ICdUaWxmJm9zbGFzaDt5IGVuIGVrc3RyYSBuJm9zbGFzaDtra2VsIHRpbCBtb2R1bGVuIGZvciBlbmRhIGJlZHJlIG9yZ2FuaXNlcmluZyBhdiBvcHBsYXN0aW5nZXIuIERlbm5lIG4mb3NsYXNoO2trZWwga2FuIHYmYWVsaWc7cmUgZW4ga29kZXQgc3RyZW5nIHNvbTogJiMwMzk7ZmV1c2Vyczp1aWQmIzAzOTssIG9zdi4gRGVubmUgcGFyYW1ldGVyIGVyIHZhbmxpZ3ZpcyBrdW4gbiZvc2xhc2g7ZHZlbmRpZyBuJmFyaW5nO3IgZHUgaW5uZXNsdXR0ZXIgdXBsb2FkcyBtb2R1bGVuIGkgZW4gYW5uZW4gbW9kdWwnOwokbGFuZ1sncGFyYW1fbm9hdXRob3InXSA9ICdHamVtIG9wcGhhdnNtYW5uKGF1dGhvcikgZmVsdGV0IGZyYSBvcHBsYXN0aW5nIHNramVtYWV0LiBEZW5uZSBwYXJhbWV0ZXIgZXIga3VuIHZpcmtzb20gb20gbW9kZT0mIzAzOTt1cGxvYWQmIzAzOTsuIE9tIEZyb250ZW5kVXNlcnMgbW9kdWxlbiBlciB0aWxzdGVkZSwgb2cgZW4gYnJ1a2VyIGVyIGlubmxvZ2dldCwgdmlsIGV0IHNranVsdCBmZWx0IGlubmVob2xkZSBicnVrZXJuYXZuZXQgZm9yIG4mYXJpbmc7diZhZWxpZztyZW5kZSBpbm5sb2dnZWRlIGJydWtlcic7CiRsYW5nWydwYXJhbV91cGxvYWRfaWQnXSA9ICd1cGxvYWRfaWQ9JnF1b3Q7aWQmcXVvdDsgLSBzcGVzaWZpc2VyZXIgZW4gZW5rZWx0IGZpbCBmb3IgdXJsJiMwMzk7ZW4vbGlua2VuIGVsbGVyIGVua2VsLW1vZHVzIChvdmVyZm9yKSc7CiRsYW5nWydwYXJhbV9kZXRhaWx0ZW1wbGF0ZSddID0gJ0JydWsgZW4gbWFsIG1lZCBkZXR0ZSBuYXZuZXQgZm9yIGRlbiBkZXRhbGplcnRlIHJhcHBvcnRlbi4nOwokbGFuZ1sncGFyYW1fdGVtcGxhdGUnXSA9ICdCcnVrIGVuIG1hbCBtZWQgZGV0dGUgbmF2biBmb3IgZGVubmUgcmFwcG9ydCBlbGxlciBza2plbWEuIE1vZHVzZW4gZXIgYnJ1a3QgZm9yICZhcmluZzsgYXZnaiZvc2xhc2g7cmUgaHZhIHNsYWdzIG1hbCBzb20gZXIga3JldmQsIG9nIHMmYXJpbmc7IHV0ZiZvc2xhc2g7cmVzIGVuIGtvYmxpbmcvc2pla2sgYXYgbmF2bmV0IG1vdCBkZW5uZSB0eXBlIG1hbC4nOwokbGFuZ1sncGFyYW1fZmlsdGVyJ10gPSAnVmlzIGZpbHRlcnNramVtYWV0JzsKJGxhbmdbJ3BhcmFtX25vX2ludGl0aWFsJ10gPSAnS3VuIGJydWtlbGlnIG4mYXJpbmc7ciBmaWx0ZXIgcGFyYW1ldGVyIGVyIGdpdHQsIGVsbGVyIHAmYXJpbmc7IHNvbSBzdGFuZGFyZCwgZGVubmUgcGFyYW1ldGVyIGluZGlrZXJlciBvbSBpbm5sZWRlbmRlIHJlc3VsdGF0ZXIgc2thbCB2aXNlcyc7CiRsYW5nWydwYXJhbV9maWxldHlwZXMnXSA9ICdWaXMga3VuIGZpbGVyIHNvbSBzYW1zdmFyZXIgbWVkIGRlbm5lIGtvbW1hc2VwYXJlcnRlIGxpc3Rlbic7CiRsYW5nWydwYXJhbV9zb3J0b3JkZXInXSA9ICcgIDxwPlNvcnRlcmluZ3NyZWtrZWYmb3NsYXNoO2xnZXINCiAgPHVsPg0KICA8bGk+PGVtPmRhdGVfYXNjPC9lbT4gLSBTb3J0ZXIgZGF0byBzdGlnZW5kZTwvbGk+DQogIDxsaT48ZW0+ZGF0ZV9kZXNjPC9lbT4gLSBTb3J0ZXIgZGF0byBzeW5rZW5kZTwvbGk+DQogIDxsaT48ZW0+bmFtZV9hc2M8L2VtPiAtIFNvcnRlciBuYXZuIHN0aWdlbmRlPC9saT4NCiAgPGxpPjxlbT5uYW1lX2Rlc2M8L2VtPiAtIFNvcnRlciBuYXZuIHN5bmtlbmRlPC9saT4NCiAgPGxpPjxlbT5zaXplX2FzYzwvZW0+IC0gU29ydGVyIHN0Jm9zbGFzaDtycmVsc2Ugc3RpZ2VuZGU8L2xpPg0KICA8bGk+PGVtPnNpemVfZGVzYzwvZW0+IC0gU29ydGVyIHN0Jm9zbGFzaDtycmVsc2Ugc3lua2VuZGU8L2xpPg0KICA8bGk+PGVtPmF1dGhvcl9hc2M8L2VtPiAtIFNvcnRlciBvcHBoYXZzbWFubi9hdXRob3Igc3RpZ2VuZGU8L2xpPg0KICA8bGk+PGVtPmF1dGhvcl9kZXNjPC9lbT4gLSBTb3J0ZXIgb3BwaGF2c21hbm4vYXV0aG9yIHN5bmtlbmRlPC9saT4NCiAgPGxpPjxlbT5pcF9hc2M8L2VtPiAtIFNvcnRlciBpcC1hZHJlc3NlIHN0aWdlbmRlPC9saT4NCiAgPGxpPjxlbT5pcF9kZXNjPC9lbT4gLSBTb3J0ZXIgaXAtYWRyZXNzZSBzeW5rZW5kZTwvbGk+DQogIDxsaT48ZW0+ZGVzY19hc2M8L2VtPiAtIFNvcnRlciBiZXNrcml2ZWxzZSBzdGlnZW5kZTwvbGk+DQogIDxsaT48ZW0+ZGVzY19kZXNjPC9lbT4gLSBTb3J0ZXIgYmVza3JpdmVsc2Ugc3lua2VuZGU8L2xpPg0KICA8bGk+PGVtPmRvd25sb2Fkc19hc2M8L2VtPiAtIFNvcnRlciBhbnRhbGwgbmVkbGFzdGluZ2VyIHN0aWduZWRlIHJla2tlZiZvc2xhc2g7bGdlLjwvbGk+DQogIDxsaT48ZW0+ZG93bmxvYWRzX2Rlc2M8L2VtPiAtIFNvcnRlciBhbnRhbGwgbmVkbGFzdGluZ2VyIGkgc3lua2VuZGUgcmVra2VmJm9zbGFzaDtsZ2UuPC9saT4NCiAgPGxpPjxlbT5yYW5kb208L2VtPiAtIFRpbGZlbGRpZyBzb3J0ZXJpbmdzcmVra2VmJm9zbGFzaDtsZ2U8L2xpPg0KICA8L3VsPg0KICA8L3A+JzsKJGxhbmdbJ3BhcmFtX2xpc3Rpbmd0ZW1wbGF0ZSddID0gJ01hbCAmYXJpbmc7IGJlbnl0dGUgZm9yIGthdGVnb3JpbGlzdGluZyBldHRlciBtYW4gaGFyIGtsaWtrZXQgc2VnIGlubiBmcmEgZW4gS2F0ZWdvcmkgc2FtbWVuZHJhZ3NpZGUnOwokbGFuZ1sncGFyYW1fbGlzdGluZ3NvcnRvcmRlciddID0gJ1NvcnRlcmluZ3NyZWtrZWYmb3NsYXNoO2xnZSAoc29tIHBhcmFtX3NvcnRvcmRlcikgJmFyaW5nOyBiZW55dHRlIGZvciBrYXRlZ29yaWxpc3RlciBldHRlciBlbiBoYXIga2xpa2tldCBzZWcgaW5uIGZyYSBlbiBLYXRlZ29yaSBzYW1tZW5kcmFnc2xpc3RlJzsKJGxhbmdbJ3BhcmFtX2ZpbGVleHRlbnNpb25zJ10gPSAnIA0KZmlsZV9leHRlbnNpb25zPSZxdW90O2V4dDEsZXh0MixleHQzJnF1b3Q7DQo8cD5neWxkaWcga3VuIG9tIG1vZGU9dXBsb2FkLCBkZW5uZSBwYXJhbWV0ZXJlbiBiZWdyZW5zZXIgZmlsdHlwZW5lIHNvbSBrYW4gbGFzdGVzIG9wcC4gIE92ZXJzdHlyZXIgZW5odmVyIHZlcmRpIGkgbW9kdWwgaW5uc3RpbGxpbmdlbmUuPC9wPic7CiRsYW5nWydwYXJhbV9jb3VudCddID0gJ2NvdW50PSZxdW90O04mcXVvdDsgPHA+RW4gcGFyYW1ldGVyIGZvciAmYXJpbmc7IGJlZ3JlbnNlIHRpbCBYIGFudGFsbCBwb3N0ZXIgcHIuc2lkZS48L3A+JzsKJGxhbmdbJ3BhcmFtX2NhdGVnb3J5J10gPSAnY2F0ZWdvcnk9JnF1b3Q7bmFtZSZxdW90Ow0KPHA+PGI+Tm90YXQ6PC9iPiBLYXRlZ29yaSBrYW4gdiZhZWxpZztyZSAmcXVvdDthbGwmcXVvdDssIHNvbSB2aWwgbGlzdGUgdXQgYWxsZSBvcHBsYXN0aW5nZXIgZnJhIGFsbGUgPGVtPnV0bGlzdGJhcmU8L2VtPiBrYXRlZ29yaWVyPC9wPic7CiRsYW5nWydwYXJhbV9tb2RlJ10gPSAnICA8dWw+DQogIDxsaT48ZW0+ZGV0YWlsZWQ8L2VtPiAtIFZpcyBlbiBkZXRhbGplcnQgbGlzdGUgb3ZlciBhbGxlIGZpbGVyIGkga2F0ZWdvcmllbjwvbGk+DQogIDxsaT48ZW0+c2luZ2xlPC9lbT4gLSBWaXNlciBlbiBkZXRhbGplcnQgcmFwcG9ydCBvbSBlbiBlbmtlbHQgb3BwbGFzdGluZzwvbGk+DQogIDxsaT48ZW0+dXBsb2FkPC9lbT4gLSBWaXNlciBldCBza2plbWEgc29tIHRpbGxhdGVyIGVuIGZyb250ZW5kIGJydWtlciAmYXJpbmc7IGxhc3RlIG9wcCBlbiBmaWw8L2xpPg0KICA8bGk+PGVtPnVybCA8aT5lbGxlcjwvaT4gbGluazwvZW0+IC0gVmlzZXIgZW4gbGluayB0aWwgZW4gZmlsPC9saT4NCiAgPGxpPjxlbT5zdW1tYXJ5PC9lbT4gLSBWaXNlciBlbiBzYW1tZW5kcmFnc2xpc3RlIG92ZXIgYWxsZSBmaWxlciBpIGthdGVnb3JpZW48L2xpPg0KICA8L3VsPic7CiRsYW5nWydwYXJhbV9zZWxlY3Rmb3JtJ10gPSAnTiZhcmluZztyIGVuIGJlbnl0dGVyICYjMDM5O3NlbGVjdCYjMDM5Oy1tb2RlIGVyIGRlbm5lIHBhcmFtZXRlcmVuIHNlbHZlIGZvcm1pZCBhdiBmb3JlbGRyZSBza2plbWFldC4gQmVueXR0ZXMgZm9yICZhcmluZzsgaCZhcmluZztuZHRlcmUgcGFyYW1ldGVyIGgmYXJpbmc7bmR0ZXJpbmcnOwokbGFuZ1sncGFyYW1fc2VsZWN0bmFtZSddID0gJ24mYXJpbmc7ciBlbiBiZW55dHRlciAmIzAzOTtzZWxlY3QmIzAzOTstbW9kZSB2aWwgZGVubmUgcGFyYW1ldGVyIHNwZXNpZmlzZXJlIG5hdm5ldCBwJmFyaW5nOyBmZWx0ZXQnOwokbGFuZ1sncGFyYW1fc2VsZWN0dmFsdWUnXSA9ICdOJmFyaW5nO3IgZW4gYmVueXR0ZXIgJiMwMzk7c2VsZWN0JiMwMzk7LW1vZGUgdmlsIGRlbm5lIHBhcmFtZXRlcmVuIHNwZXNpZmlzZXJlIHN0YW5kYXJkIGZlbHR2ZXJkaSc7CiRsYW5nWydwYXJhbV9zZWxlY3Rub25lJ10gPSAnTiZhcmluZztyIGVuIGJlbnl0dGVyICYjMDM5O3NlbGVjdCYjMDM5Oy1tb2RlIHZpbCBkZW5uZSBwYXJhbWV0ZXJlbiBzcGVzaWZpc2VyZSBvbSAmIzAzOTtub25lJiMwMzk7IGVyIGV0IGd5bGRpZyB2YWxnLic7CiRsYW5nWydyZXR1cm50b21vZHVsZSddID0gJ1RpbGJha2UgdGlsIE1vZHVsIHBhbmVsZXQnOwokbGFuZ1snZXJyb3Jfbm9jYXRlZ29yaWVzJ10gPSAnRGV0IGVyIGluZ2VuIGRlZmluZXJ0ZSBrYXRlZ29yaWVyJzsKJGxhbmdbJ3RpdGxlX2VuZm9yY2VleHRlbnNpb25zJ10gPSAnS3JldmVyIGZpbC1lbmRlbHNlIHAmYXJpbmc7IGFsbGUgb3BwbGFzdGVkZSBmaWxlcic7CiRsYW5nWydyZXN0b3JlZGVmYXVsdHNjb25maXJtJ10gPSAnRGVubmUgaGFuZGxpbmcgdmlsIHRpbGJha2VzdGlsbGUgbWFsZW4gdGlsIHN5c3RlbXN0YW5kYXJkLiBFbmh2ZXIgZW5kcmluZyBkdSBoYXIgZ2pvcnQgdmlsIGJsaSBib3J0ZS4gRXIgZHUgc2lra2VyIHAmYXJpbmc7IGF0IGR1IHZpbCBmb3J0c2V0dGU/JzsKJGxhbmdbJ3RodW1ibmFpbCddID0gJ01pbmlhdHlyYmlsZGUgJzsKJGxhbmdbJ25ld3RodW1ibmFpbCddID0gJ0xhc3Qgb3BwIG55dHQgbWluaWF0eXJiaWxkZSc7CiRsYW5nWydpbmZvX3N1bW1hcnknXSA9ICdFbiBrb3J0IGJlc2tyaXZlbHNlIChvbSBibGFuaywgYmxpciBmaWxuYXZuZXQgYnJ1a3QgdXRlbiBmaWwtZW5kZWxzZSknOwokbGFuZ1snaW5mb19jYXRlZ29yeW5hbWUnXSA9ICdFdCBrb3J0IG5hdm4gcCZhcmluZzsgZGluIGthdGVnb3JpIChrdW4gZW5nZWxza2UgYm9rc3RhdmVyKSc7CiRsYW5nWydpbmZvX2NhdGVnb3J5ZGVzYyddID0gJ0VuIGJlc2tyaXZlbHNlIGF2IGRpbiBrYXRlZ29yaSc7CiRsYW5nWydpbmZvX2NhdGVnb3J5cGF0aCddID0gJ0thdGFsb2duYXZuZXQgaW5uZSBpIG9wcGxhc3Rpbmdza2F0YWxvZ2VuIHNvbSB2aWwgYmxpIGJydWt0IGZvciAmYXJpbmc7IGxhZ3JlIGZpbGVyIGkgZGVubmUga2F0ZWdvcmkuIE9tIGthdGFsb2dlbiBtZWQgZGV0dGUgbmF2bmV0IGlra2UgZWtzaXN0ZXJlciwgdmlsIGRlbiBibGkgb3BwcmV0dGV0JzsKJGxhbmdbJ2luZm9fZGVzdG5hbWUnXSA9ICdCcnVrICYjMDM5O0xhc3Qgb3BwIHNvbSYjMDM5OyBmZWx0ZXQgZm9yICZhcmluZzsgZW5kcmUgbmF2bmV0IHAmYXJpbmc7IGZpbGEgdmVkIG9wcGxhc3RpbmcuICBMYSB2JmFlbGlnO3JlIGJsYW5rdCBmb3IgJmFyaW5nOyBiZWhvbGRlIG5hdm5ldCBzb20gZGV0IGVyLic7CiRsYW5nWydlcnJvcl9jYW50Y3JlYXRlZGlyZWN0b3J5J10gPSAnS3VubmUgaWtrZSBvcHByZXR0ZSBrYXRhbG9nJzsKJGxhbmdbJ2Vycm9yX25vbWFpbGVybW9kdWxlJ10gPSAnQ01TTWFpbGVyIG1vZHVsZW4ga3VubmUgaWtrZSBzdGFydGVzJzsKJGxhbmdbJ3VwbG9hZF9ub3RpZmljYXRpb24nXSA9ICdFbiBueSBmaWwgaGFyIGJsaXR0IGxhc3RldCBvcHAnOwokbGFuZ1sndGl0bGVfZW1haWxfb25fdXBsb2FkJ10gPSAnU2VuZCBvcHBsYXN0aW5ncy1tZWxkaW5nIHRpbDonOwokbGFuZ1snZW1haWxfdGVtcGxhdGUnXSA9ICdFcG9zdCBtYWwnOwokbGFuZ1sndGl0bGVfZHVtbXlfaW5kZXhfaHRtbCddID0gJ09wcHJldHQgZHVtbXkgaW5kZXguaHRtbCBmaWxlciBpIGh2ZXIga2F0YWxvZz88YnIvPjxlbT5JbmdlbiBla3Npc3RlcmVuZGUgaW5kZXguaHRtbCBmaWxlciB2aWwgYmxpIGlnamVuPC9lbT4nOwokbGFuZ1snYWJvdXQnXSA9ICdPbSc7CiRsYW5nWydlcnJvcl9wZXJtaXNzaW9uZGVuaWVkJ10gPSAnQWRnYW5nIG5la3RldC4gVmVubmxpZ3N0IHNqZWtrIGRpbmUgcmV0dGlnaGV0ZXIuJzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90d3JpdGUnXSA9ICdLdW5uZSBpa2tlIHNrcml2ZSc7CiRsYW5nWydhZGRjYXRlZ29yeSddID0gJ0xlZ2cgdGlsIGthdGVnb3JpJzsKJGxhbmdbJ2FsbCddID0gJ0FsdCc7CiRsYW5nWydhcmV5b3VzdXJlJ10gPSAnRXIgZHUgc2lra2VyPyc7CiRsYW5nWydhdXRob3InXSA9ICdPcHBoYXZzbWFubic7CiRsYW5nWydjYW5jZWwnXSA9ICdBdmJyeXQnOwokbGFuZ1snY2Fubm90bW9kaWZ5cGF0aCddID0gJyhTdGllbiBrYW4gaWtrZSBlbmRyZXMpJzsKJGxhbmdbJ2NhdGVnb3JpZXMnXSA9ICdLYXRlZ29yaWVyJzsKJGxhbmdbJ2NhdGVnb3J5J10gPSAnS2F0ZWdvcmknOwokbGFuZ1snbWVzc2FnZV9jYXRlZ29yeWFkZGVkJ10gPSAnS2F0ZWdvcmkgb3BwcmV0dGV0JzsKJGxhbmdbJ2RhdGUnXSA9ICdEYXRvJzsKJGxhbmdbJ2RhdGV1cGxvYWRlZCddID0gJ0RhdG8gbGFzdGV0IG9wcCc7CiRsYW5nWydkZWZhdWx0J10gPSAnU3RhbmRhcmQnOwokbGFuZ1snZGVsZXRlJ10gPSAnU2xldHQnOwokbGFuZ1snZGVzY3JpcHRpb24nXSA9ICdCZXNrcml2ZWxzZSc7CiRsYW5nWydkZXN0bmFtZSddID0gJ0xhc3Qgb3BwIHNvbSc7CiRsYW5nWydkZXRhaWxfdGVtcGxhdGUnXSA9ICdEZXRhbGogbWFsJzsKJGxhbmdbJ2Rvd25sb2FkZWQnXSA9ICdGaWwgJXMgYmxlIGxhc3RldCBuZWQuJzsKJGxhbmdbJ2Rvd25sb2FkcyddID0gJ05lZGxhc3Rpbmdlcic7CiRsYW5nWydlZGl0J10gPSAnUmVkaWdlcic7CiRsYW5nWydlZGl0Y2F0ZWdvcnknXSA9ICdSZWRpZ2VyIGthdGVnb3JpJzsKJGxhbmdbJ2VkaXR1cGxvYWQnXSA9ICdSZWRpZ2VyIG9wcGxhc3RpbmcnOwokbGFuZ1snZXJyb3InXSA9ICdGZWlsISc7CiRsYW5nWydlcnJvcl9wYXRoaW51c2UyJ10gPSAnZW4ga2F0ZWdvcmkgc29tIGJlbnl0dGVyIHN0aWVuICglcykgZWtzaXN0ZXJlciBhbGxlcmVkZSc7CiRsYW5nWydlcnJvcl9wYXRoaW51c2UnXSA9ICdFbiBrYXRlZ29yaSBzb20gYnJ1a2VyIGRlbiBzdGllbiBla3Npc3RlcmVyIGFsbGVyZWRlJzsKJGxhbmdbJ2Vycm9yX2NhdGVnb3J5ZXhpc3RzMiddID0gJ0ZlaWw6IEVuIGthdGVnb3JpIG1lZCBuYXZuICVzIGVrc2lzdGVyZXIgYWxsZXJlZGUnOwokbGFuZ1snZXJyb3JfY2F0ZWdvcnlleGlzdHMnXSA9ICdGZWlsOiBLYXRlZ29yaSBla3Npc3RlcmVyIGFsbGVyZWRlJzsKJGxhbmdbJ2Vycm9yX2NhdGVnb3J5bm90ZW1wdHknXSA9ICdGZWlsISBLYW4gaWtrZSBzbGV0dGUga2F0ZWdvcmkgZGEgZGVuIGlra2UgZXIgdG9tJzsKJGxhbmdbJ2Vycm9yX2NhdGVnb3J5bm90Zm91bmQnXSA9ICdGZWlsOiBLYXRlZ29yaSBpa2tlIGZ1bm5ldCEnOwokbGFuZ1snZXJyb3JfZGJlcnJvciddID0gJ0ZlaWw6IERhdGFiYXNlIGZlaWwhJzsKJGxhbmdbJ2Vycm9yX2VtcHR5Y2F0ZWdvcnknXSA9ICdGZWlsOiBUb20ga2F0ZWdvcmkhJzsKJGxhbmdbJ2Vycm9yX2VtcHR5cGF0aCddID0gJ0ZlaWw6IEJsYW5rIHN0aSEnOwokbGFuZ1snZXJyb3JfZmlsZWV4aXN0cyddID0gJ0ZlaWwhIEZpbCAlcyBla3Npc3RlcmVyIGFsbGVyZWRlLic7CiRsYW5nWydlcnJvcl9maWxlbm90Zm91bmQnXSA9ICdGZWlsISBGaWwgJXMgYmxlIGlra2UgZnVubmV0Lic7CiRsYW5nWydlcnJvcl9pbnN1ZmZpY2llbnRwYXJhbXMnXSA9ICdGZWlsOiBNYW5nZWxmdWxsZSBwYXJhbWV0cmUgZ2l0dCB0aWwgbW9kdWxlbiE8YnIvPkRlbiBtYW5nbGVuZGUgcGFyYW1ldGVyIGVyOiAlcyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkYXV0aG9yJ10gPSAnRmVpbDogVWd5bGRpZyAoZWxsZXIgYmxhbmspIG9wcGhhdnNtYW5uLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkY2F0ZWdvcnknXSA9ICdGZWlsOiBVZ3lsZGlnIChlbGxlciBibGFuaykga2F0ZWdvcmkuJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRkZXNjcmlwdGlvbiddID0gJ0ZlaWw6IFVneWxkaWcgKGVsbGVyIGJsYW5rKSBiZXNrcml2ZWxzZS4nOwokbGFuZ1snZXJyb3JfaW52YWxpZGZpbGUnXSA9ICdGZWlsOiBVZ3lsZGlnIChlbGxlciBibGFuaykgZmlsbmF2bi4nOwokbGFuZ1snZXJyb3JfaW52YWxpZHVwbG9hZGZpbGVuYW1lJ10gPSAnRmVpbDogRmlsZXIgbWVkIGRldHRlIG5hdm5ldCAoc2Fuc3lubGlnIGZpbC1lbmRlbHNlbikgZXIgaWtrZSB0aWxsbGF0dCAoJXMpLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXBsb2FkaWQnXSA9ICdGZWlsOiBVZ3lsZGlnIG9wcGxhc3RpbmdzSUQnOwokbGFuZ1snZXJyb3Jfbm9maWxlcyddID0gJ0ZlaWw6IEluZ2VuIHBhc3NlbmRlIGZpbGVyISc7CiRsYW5nWydmaWxlcyddID0gJ0ZpbGVyJzsKJGxhbmdbJ2ZpeG1lJ10gPSAnRmlrcyBtZWxsb21yb20nOwokbGFuZ1snZnJpZW5kbHluYW1lJ10gPSAnRnJvbnRFbmQgT3BwbGFzdGluZ2VyJzsKJGxhbmdbJ2lkJ10gPSAnSUQnOwokbGFuZ1snaW5zdGFsbGVkJ10gPSAnTW9kdWwgdmVyc2pvbiAlcyBpbnN0YWxsZXJ0Lic7CiRsYW5nWydpcF9hZGRyZXNzJ10gPSAnSVAtYWRyZXNzZSc7CiRsYW5nWydtb2RkZXNjcmlwdGlvbiddID0gJ0VuIG1vZHVsIHNvbSB0aWxsYXRlciBicnVrZXJlICZhcmluZzsgbGFzdGUgb3BwIGZpbGVyLCBvZyB0aWxsYXRlciBkZWcgJmFyaW5nOyBoJmFyaW5nO25kdGVyZSBkZW0uJzsKJGxhbmdbJ25hbWUnXSA9ICdOYXZuJzsKJGxhbmdbJ3JlbmFtZW1lc3NhZ2UnXSA9ICdSZWRpZ2VyIG5hdm5ldCBoZXIgZm9yICZhcmluZzsgZ2omb3NsYXNoO3JlIGVuIG5hdm5lZW5kcmluZyc7CiRsYW5nWydwYXRoJ10gPSAnU3RpJzsKJGxhbmdbJ3BhdGhtZXNzYWdlJ10gPSAnRW5kcmUga2F0ZWdvcmkgaGVyIGZvciAmYXJpbmc7IGZseXR0ZSBmaWxlbiB0aWwgZW4gYW5uZW4ga2F0ZWdvcmknOwokbGFuZ1sncGF0aGludXBsb2FkcyddID0gJyhSZWxhdGl2IHRpbCBvcHBsYXN0aW5ncyBrYXRhbG9nZW4pJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsJ10gPSAnPHA+VGhlIHVwbG9hZHMgbW9kdWxlIGhhcyBiZWVuIHN1Y2Nlc3NmdWxseSBpbnN0YWxsZWQuIEJlIHN1cmUgdG8gc2V0ICZxdW90O01hbmFnZSBVcGxvYWRzJnF1b3Q7IHBlcm1pc3Npb25zIHRvIHVzZSB0aGlzIG1vZHVsZSE8L3A+DQo8cD48c3Ryb25nPldhcm5pbmc8L3N0cm9uZz4gLSBUaGUgcHJvcGVyIGJlaGF2aW91ciBvZiB0aGlzIG1vZHVsZSBkZXBlbmRzIG9uIG51bWVyb3VzIHBocCBjb25maWd1cmF0aW9uIHZhcmlhYmxlcy4gIFRoZXNlIGluY2x1ZGUgPGVtPihidXQgYXJlIG5vdCBsaW1pdGVkIHRvKTwvZW0+LCBwaHAmIzAzOTtzIG1lbW9yeV9saW1pdCwgc2FmZV9tb2RlLCBmaWxlX3VwbG9hZHMsIHVwbG9hZHNfbWF4X2ZpbGVzaXplLCBhbmQgbWF4X2V4ZWN1dGlvbl90aW1lLiAgVGhlc2UgdmFyaWFibGVzIG1heSBuZWVkIGFkanVzdG1lbnQgZm9yIHRoaXMgbW9kdWxlIHRvIHdvcmsgcHJvcGVybHkgb24geW91ciBzaXRlLiAgSXQgaXMgYWR2aXNlZCB0aGF0IHlvdSB3b3JrIHdpdGggeW91ciBzeXN0ZW0gYWRtaW5pc3RyYXRvciBvciBob3N0IHByb3ZpZGVyIHRvIHR1bmUgdGhlc2Ugc2V0dGluZ3MgZm9yIHlvdXIgcmVxdWlyZW1lbnRzLjwvcD4nOwokbGFuZ1sncG9zdHVuaW5zdGFsbCddID0gJ1VwbG9hZHMgbW9kdWxlbiBoYXIgYmxpdHQgZmplcm5ldC4gSW5nZW4gZmlsZXIgaGFyIGJsaXR0IGZqZXJuZXQgZnJhIGRpbiBvcHBsYXN0aW5nc2thdGFsb2csIG9nIGZpbCBpbnRlZ3JpdGV0ZW4gZXIgaW50YWt0JzsKJGxhbmdbJ3ByZWZlcmVuY2VzJ10gPSAnSW5uc3RpbGxpbmdlcic7CiRsYW5nWydwcmVmc3VwZGF0ZWQnXSA9ICdNb2R1bCBpbm5zdGlsbGluZ2VyIG9wcGRhdGVydC4nOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5ZGVzYyddID0gJ0Jlc2tyaXZlbHNlJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeWxpc3RhYmxlJ10gPSAnRmlsZXIgaSBkZW5uZSBrYXRlZ29yaWVuIGthbiBsaXN0ZXMgdXQnOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5bmFtZSddID0gJ0thdGVnb3JpIG5hdm4nOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5cGF0aCddID0gJ1NlcnZlciBzdGknOwokbGFuZ1sncHJvbXB0X2RlbGV0ZWRpcmVjdG9yeSddID0gJ1NsZXR0IGthdGVnb3JpIG1hcHBlPyc7CiRsYW5nWydwcm9tcHRfbWF4X3VwbG9hZHNpemUnXSA9ICdNYWtzaW11bSB0aWxsYXR0ZSBmaWxzdCZvc2xhc2g7cnJlbHNlIChLYiknOwokbGFuZ1sncHJvbXB0X3ZhbGlkX3VwbG9hZGV4dGVuc2lvbnMnXSA9ICdHeWxkaWcgb3BwbGFzdGluZ3MgZmlsLWVuZGVsc2UnOwokbGFuZ1snc2NhbiddID0gJ1NrYW5uJzsKJGxhbmdbJ3NlbGVjdGNhdGVnb3J5J10gPSAnVmVsZyBrYXRlZ29yaSc7CiRsYW5nWydzaXplJ10gPSAnU3Qmb3NsYXNoO3JyZWxzZSc7CiRsYW5nWydzaXpla2InXSA9ICdTdCZvc2xhc2g7cnJlbHNlIChLYiknOwokbGFuZ1snc3VibWl0J10gPSAnTGFncmUgb2cgbHVrayc7CiRsYW5nWydzdW1tYXJ5X3RlbXBsYXRlJ10gPSAnU2FtbWVuZHJhZ3MgbWFsJzsKJGxhbmdbJ3N1bW1hcnknXSA9ICdTYW1tZW5kcmFnJzsKJGxhbmdbJ3RpdGxlX2FkbWluX3BhbmVsJ10gPSAnVXBsb2FkcyBNb2R1bGVuJzsKJGxhbmdbJ3RpdGxlX21vZF9hZG1pbiddID0gJ01vZHVsIEFkbWluaXN0cmFzam9uc3BhbmVsJzsKJGxhbmdbJ3RpdGxlX21vZF9wcmVmcyddID0gJ01vZHVsIElubnN0aWxsaW5nZXInOwokbGFuZ1sndGl0bGVfc3VibmV0X2V4Y2x1c2lvbnMnXSA9ICdVdGVsdWtrIHN1Ym5ldHQgZnJhIHN0YXRpc3Rpa2tlcic7CiRsYW5nWyd0aXRsZV92YWxpZF91cGxvYWRleHRlbnNpb25zJ10gPSAnR3lsZGlnZSBmaWwtZW5kZWxzZXInOwokbGFuZ1sndW5pbnN0YWxsZWQnXSA9ICdNb2R1bCBhdmluc3RhbGxlcnQuJzsKJGxhbmdbJ3VwZ3JhZGVkJ10gPSAnTW9kdWwgb3BwZ3JhZGVydCB0aWwgdmVyc2pvbiAlcy4nOwokbGFuZ1sndXBsb2FkJ10gPSAnTGFzdCBvcHAnOwokbGFuZ1sndXBsb2FkZWQnXSA9ICdGaWwgJXMgYmxlIGxhc3RldCBvcHAgYXYgJXMuJzsKJGxhbmdbJ3JlcGxhY2VkJ10gPSAnRmlsICVzIGJsZSBlcnN0YXR0ZXQgJXMuJzsKJGxhbmdbJ2RlbGV0ZWQnXSA9ICdGaWwgJXMgYmxlIHNsZXR0ZXQuJzsKJGxhbmdbJ3VwbG9hZGZvcm1fdGVtcGxhdGUnXSA9ICdPcHBsYXN0aW5nIG1hbGVyJzsKJGxhbmdbJ3VzZXJuYW1lJ10gPSAnQnJ1a2VybmF2bic7CiRsYW5nWyd3YXJuaW5nX2RlbGV0ZWNhdGVnb3J5J10gPSAnQURWQVJTRUw6IFYmYWVsaWc7ciBmb3JzaWt0aWcgbWVkICZhcmluZzsgc2xldHRlciBrYXRlZ29yaWVyLiAgRmlsZXIga2FuIGJsaSBib3J0ZSc7CiRsYW5nWydxY2EnXSA9ICdQMC01MzY4NDkxMTUtMTMwNzk4MzQ5NTIxMCc7CiRsYW5nWyd1dG1hJ10gPSAnMTU2ODYxMzUzLjMwMDI5MDM1Ny4xMzczMTQ0NjE4LjEzNzMxOTc1ODIuMTM3MzIxOTM5My40JzsKJGxhbmdbJ3V0bXonXSA9ICcxNTY4NjEzNTMuMTM3MzE0NDYxOC4xLjEudXRtY3NyPShkaXJlY3QpfHV0bWNjbj0oZGlyZWN0KXx1dG1jbWQ9KG5vbmUpJzsKJGxhbmdbJ3V0bWInXSA9ICcxNTY4NjEzNTMuMi4xMC4xMzczMjE5MzkzJzsKJGxhbmdbJ3V0bWMnXSA9ICcxNTY4NjEzNTMnOwo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/lang/ext/nl_NL.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2Vycm9yX21pc3Npbmd2YWx1ZSddID0gJ0VyIG9udGJyZWVrdCBlZW4gdmVycGxpY2h0IGludnVsdmVsZC4nOwokbGFuZ1snZWRpdGVkJ10gPSAnR2V3aWp6aWdkICVzJzsKJGxhbmdbJ21vdmVkZmlsZSddID0gJ0Jlc3RhbmQgdmVycGxhYXRzdCB2YW4gJXMgbmFhciAlcyc7CiRsYW5nWydwYWdlbGltaXQnXSA9ICdCZXN0YW5kZW4gcGVyIHBhZ2luYSc7CiRsYW5nWyd2aWV3J10gPSAnR2VlZiBkaXQgYmVzdGFuZCB3ZWVyJzsKJGxhbmdbJ2VkaXRfdGhpc19maWxlJ10gPSAnV2lqemlnIGRpdCB2ZWxkJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeV9zY2FubmFibGUnXSA9ICdTY2FuIGRlemUgY2F0ZWdvcmllIGF1dG9tYXRpc2NoIHZvb3IgbmlldXdlIGJlc3RhbmRlbj8nOwokbGFuZ1snaW5mb19jYXRlZ29yeV9zY2FubmFibGUnXSA9ICdXYW5uZWVyIGVyIHZpYSBoZXQgZnJvbnRlbmQgdG9lZ2FuZyBpcyB0b3QgZGV6ZSBjYXRlZ29yaWUgemFsIGVyIHdvcmRlbiBnZXNjYW5kIG9wIG5pZXV3ZSBiZXN0YW5kZW4nOwokbGFuZ1sncHJvbXB0X3RsX2FjY2VzcyddID0gJ1RpamRnZWxpbWl0ZWVyZGUgdG9lZ2FuZyc7CiRsYW5nWydwcm9tcHRfYWxsb3dfdXBsb2FkX3NlbmRmaWxlJ10gPSAnU3RhIGhldCB2ZXJzdHVyZW4gdmFuIGJlc3RhbmRlbiB0b2UsIGRpcmVjdCBuYSBoZXQgdXBsb2FkZW4gdmlhIGhldCBiYWNrZW5kJzsKJGxhbmdbJ21zZ19hdXRvX2RlbGV0ZV9maWxlJ10gPSAnQXV0b21hdGlzY2ggdmVyd2lqZGVyZCB2ZXJsb3BlbiBiZXN0YW5kOiAlcyc7CiRsYW5nWydtc2dfYXV0b19kZWxldGVfZmlsZV9mYWlsZWQnXSA9ICdSZWNodGVucHJvYmxlZW0sIGF1dG9tYXRpc2NoIHZlcndpamRlcmVuIHZhbiAlcyBtaXNsdWt0JzsKJGxhbmdbJ2luZm9fY2F0ZWdvcnlfZXhwaXJlc19ocnMnXSA9ICdCZW5vZW0gZWVuIGFhbnRhbCB1cmVuIHRvdGRhdCBkZSBiZXN0YW5kZW4gaW4gZGV6ZSBjYXRlZ29yaWUga3VubmVuIHdvcmRlbiB2ZXJ3aWpkZXJkLiBHZWJydWlrIGRlIHdhYXJkZSAwIG9tIGFhbiB0ZSBnZXZlbiBkYXQgZGUgYmVzdGFuZGVuIG5pZXQga3VubmVuIHdvcmRlbiB2ZXJ3aWpkZXJkJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeV9leHBpcmVzX2hycyddID0gJ0FhbnRhbCB1cmVuIHRvdGRhdCBkZSBiZXN0YW5kZW4gaW4gZGV6ZSBjYXRlZ29yaWUgYXV0b21hdGlzY2ggd29yZGVuIHZlcndpamRlcmQnOwokbGFuZ1snaW5mb19kZmx0X2NhdGVnb3J5X2V4cGlyeSddID0gJ0RlIHN0YW5kYWFyZHdhYXJkZSB2b29yIG5pZXV3ZSBjYXRlZ29yaWUmZXVtbDtuIGRpZSBzcGVjaWZpY2VlcnQgd2FubmVlciBkZSBiZXN0YW5kZW4gaW4gZGV6ZSBjYXRlZ29yaWUgYXV0b21hdGlzY2ggd29yZGVuIHZlcndpamRlcmQuIEdlYnJ1aWsgZGUgd2FhcmRlIDAgb20gYWFuIHRlIGdldmVuIGRhdCBkZSBiZXN0YW5kZW4gbmlldCBrdW5uZW4gd29yZGVuIHZlcndpamRlcmQnOwokbGFuZ1sndGl0bGVfY2F0ZWdvcnlfZXhwaXJ5J10gPSAnQ2F0ZWdvcmllIHZlcnZhbCBwZXJpb2RlIDxlbT4odXJlbik8L2VtPic7CiRsYW5nWydpbmZvX2NhdGVnb3J5ZGVsZXRhYmxlJ10gPSAnQmV2b2VnZGUgZ2VicnVpa2VycyBoZWJiZW4gZGUgcmVjaHRlbiBvbSBkZXplIGJlc3RhbmRlbiB0ZSB2ZXJ3aWpkZXJlbi4gRGl0IGhvdWR0IGluIGRhdCBlZW4gdXJsIHdvcmRlbiBnZWdlbmVyZWVyZCBpbiBoZXQganVpc3RlIHNqYWJsb29uIGRpZSB0b2VzdGFhdCBoZXQgYmVzdGFuZCB0ZSB2ZXJ3aWpkZXJlbi4gRWVuIHdlYnNpdGUgYm91d2VyIGthbiBkZSBqdWlzdGUgc21hcnR5IGxvZ2ljYSBnZWJydWlrZW4gb20gZWVuIGxpbmsgdGUgdG9uZW4gYWFuIGRlIGdlYXV0b3Jpc2VlcmRlIGdlYnJ1aWtlcnMuJzsKJGxhbmdbJ2NvcHlfZmlsZXMnXSA9ICdLb3BpZWVyIGJlc3RhbmRlbic7CiRsYW5nWydlcnJvcl9maWxldG9vbGFyZ2UnXSA9ICdIZXQgYmVzdGFuZCBkYXQgdSBwcm9iZWVydCB0ZSB1cGxvYWRlbiBpcyBncm90ZXIgZGFuIGhldCBtYXhpbWFhbCB0b2VnZXN0YW5lJzsKJGxhbmdbJ2FyZXlvdXN1cmVfZGVsZXRlY2F0ZWdvcnknXSA9ICdXZWV0IHUgemVrZXIgZGF0IHUgZGV6ZSBjYXRlZ29yaWUgd2lsdCB2ZXJ3aWpkZXJlbj8nOwokbGFuZ1snZXJyb3JfZGVsZXRlJ10gPSAnRWVuIGl0ZW0ga29uIG5pZXQgd29yZHQgdmVyd2lqZGVyZCAoJXMpJzsKJGxhbmdbJ2NvbmZpcm1fY2F0X211bHRpYWN0aW9uJ10gPSAnV2VldCB1IHpla2VyIGRhdCB1IGRlemUgYWN0aWUgd2lsdCB1aXR2b2VyZW4gb3AgZGUgZ2VzZWxlY3RlZXJkZSBjYXRlZ29yaSZlZ3JhdmU7bj8nOwokbGFuZ1snZXJyb3Jfbm90aGluZ19zZWxlY3RlZCddID0gJ0ZvdXQ6IE5pZXRzIGdlc2VsZWN0ZWVyZCc7CiRsYW5nWyd3aXRoX3NlbGVjdGVkJ10gPSAnTWV0IGdlc2VsZWN0ZWVyZDonOwokbGFuZ1snZXJyb3JfcmVwbGFjZV9taXNtYXRjaGVkX2ZpbGVleHQnXSA9ICdUaWpkZW5zIGhldCB2ZXJ2YW5nZW4gdmFuIGVlbiBiZXN0YW5kLCBtb2V0IHUgZWVuIGJlc3RhbmQgdXBsb2FkZW4gbWV0IGVlbnplbGZkZSBleHRlbnRpZS4gSGV0IGJlc3RhbmQgZGF0IHUgc2VsZWN0ZWVyZGUga29tdCBuaWV0IG92ZXJlZW4gbWV0IGhldCBvcmlnaW5lbGUgYmVzdGFuZCc7CiRsYW5nWydyZXBsYWNlJ10gPSAnVmVydmFuZyc7CiRsYW5nWydpbmZvX3JlcGxhY2VmaWxlJ10gPSAnVSBtYWcgZWVuIHZlcnZhbmdlbmQgYmVzdGFuZCB1cGxvYWRlbi4gYWxzIGhldCBlZW4gYWZiZWVsZGluZyBpcyBlbiB1IGhlZWZ0IGdlZW4gYmlqYmVob3JlbmQgbWluaWF0dXVyIGFhbmdlZ2V2ZW4sIGRhbiB6YWwgZXIgZWVuIG5pZXV3ZSB3b3JkZW4gZ2VnZW5lcmVlcmQnOwokbGFuZ1sncHJvbXB0X3JlcGxhY2VmaWxlJ10gPSAnVXBsb2FkIHZlcnZhbmdpbmdzYmVzdGFuZCc7CiRsYW5nWyd0aXRsZV9maXhzcGFjZXMnXSA9ICdWZXJ3aWpkZXIgc3BhdGllcyBpbiBkZSBiZXN0YW5kc25hYW0nOwokbGFuZ1snY2F0ZWdvcnlfY29waWVkJ10gPSAnQ2F0ZWdvcmllIHN1Y2Nlc3ZvbCBnZWtvcGllZXJkJzsKJGxhbmdbJ2Vycm9yX2R1cGxpY2F0ZXBhdGgnXSA9ICdCZW5vZW0gZWVuIGRpcmVjdG9yeSBuYWFtIGRpZSBhbmRlcnMgaXMgYWxzIGRpZSB2YW4gZGUgYnJvbiBlbiBub2cgbmlldCBpbiBnZWJydWlrIGlzJzsKJGxhbmdbJ29wZXJhdGlvbl9jYW5jZWxsZWQnXSA9ICdCZXdlcmtpbmcgZ2Vhbm51bGVlcmQnOwokbGFuZ1snc291cmNlJ10gPSAnQnJvbic7CiRsYW5nWydkZXN0aW5hdGlvbiddID0gJ0Jlc3RlbW1pbmcnOwokbGFuZ1sncHJvbXB0X2NvcHlfZmlsZXMnXSA9ICdLb3BpZWVyIGNhdGVnb3JpZSBiZXN0YW5kZW4nOwokbGFuZ1snaW5mb19jb3B5X2ZpbGVzJ10gPSAnS29waWVlciBkZSBiZXN0YW5kZW4gdmFuIGRlIGJyb24gbmFhciBkZSBiZXN0ZW1taW5nc2NhdGVnb3JpZSc7CiRsYW5nWydleHRyYSddID0gJ0V4dHJhICc7CiRsYW5nWydjb3B5J10gPSAnS29waWVlcic7CiRsYW5nWydzZWxlY3RvbmUnXSA9ICdLaWVzICZlYWN1dGU7JmVhY3V0ZTtuJzsKJGxhbmdbJ2F1dG93YXRlcm1hcmsnXSA9ICdQbGFhdHMgYXV0b21hdGlzY2ggZWVuIHdhdGVybWVyayBvcCBkZSBhZmJlZWxkaW5nZW4nOwokbGFuZ1snaW1hZ2Vfc2V0dGluZ3MnXSA9ICdBZmJlZWxkaW5nIEluc3RlbGxpbmdlbic7CiRsYW5nWydwcm9tcHRfZ2V0ZmlsZV9yZXN1bHRwYWdlJ10gPSAnUGFnaW5hIGRpZSBnZWJydWlrdCB3b3JkdCB2b29yIGhldCBtZWxkZW4gdmFuIGZvdXRlbiBlbiBhbmRlcmUgYm9vZHNjaGFwcGVuIG1ldCBiZXRyZWtraW5nIHRvdCBoZXQgZG93bmxvYWRlbic7CiRsYW5nWydlcnJvcl9pbnZhbGlkX2tleSddID0gJ0RlIGluZ2V2b2VyZGUgdXBsb2FkIHNsZXV0ZWwgaXMgbmlldCBjb3JyZWN0IChtaXNzY2hpZW4gZGUgbWF4aW1hbGUgZG93bmxvYWQgY2FwYWNpdGVpdCBiZXJlaWt0IG9mIGlzIGhldCB2ZXJsb3BlbiknOwokbGFuZ1snZGZsdF90aW1lbGltaXRlZF9zdWJqZWN0J10gPSAneyRzaXRlbmFtZX0gLSBVIGhlZWZ0IHZvb3IgZWVuIGdlbGltaXRlZXJkZSBwZXJpb2RlIGRlIHRvZXN0ZW1taW5nIGdla3JlZ2VuIHRvdCB7JGVudHJ5LT51cGxvYWRfbmFtZXxzdHJpcF90YWdzfSc7CiRsYW5nWydwcm9tcHRfdGltZWxpbWl0ZWRfc3ViamVjdCddID0gJ09uZGVyd2VycCB2YW4gZGUgZS1tYWlsIHdhbm5lZXIgZWVuIHRpamRnZWxpbWl0ZWVyZGUgVVJMIHdvcmR0IHZlcnN0dXVyZCc7CiRsYW5nWydwcm9tcHRfdGltZWxpbWl0ZWRfYXV0b2RlbGV0ZSddID0gJ1ZlcndpamRlciBhdXRvbWF0aXNjaCB2ZXJsb3BlbiB2ZXJ6b2VrZW4gbmEgTiB1dXIgPGVtPihtYWFrIDAgb20gZGV6ZSBmdW5jdGllIHVpdCB0ZSBzY2hha2VsZW4pPC9lbT46JzsKJGxhbmdbJ3Byb21wdF90aW1lbGltaXRlZF9zZW5kaXQnXSA9ICdWZXJzdHV1ciBkZXplIHVybCBuYWFyIGhldCBlLW1haWwgYWRyZXM/JzsKJGxhbmdbJ3VybF9rZXknXSA9ICdVUkwgU2xldXRlbCc7CiRsYW5nWydjcmVhdGVkJ10gPSAnR2VtYWFrdCc7CiRsYW5nWydleHBpcmVzJ10gPSAnVmVybG9vcHQnOwokbGFuZ1snYWRkZWRpdF90aW1lbGltaXRlZF9rZXknXSA9ICdUb2V2b2VnZW4vV2lqemlnZW4gVGlqZGdlbGltaXRlZXJkZSBzbGV1dGVsJzsKJGxhbmdbJ3RpbWVfbGltaXRlZF9rZXlfYWRkZWQnXSA9ICdUaWpkZ2VsaW1pdGVlcmRlIHNsZXV0ZWwgVG9lZ2V2b2VnZCc7CiRsYW5nWydudW1faG91cnMnXSA9ICdBYW50YWwgdXJlbic7CiRsYW5nWydudW1fZG93bmxvYWRzJ10gPSAnSG9ldmVlbGhlaWQgRG93bmxvYWRzJzsKJGxhbmdbJ2VtYWlsX2FkZHJlc3MnXSA9ICdFLW1haWwgQWRyZXMnOwokbGFuZ1snZXJyb3JfbWlzc2luZ19pbnZhbGlkJ10gPSAnRWVuIGJlbm9kaWdkZSB3YWFyZGUgaXMgbmlldCBjb3JyZWN0IG9mIGFmd2V6aWc6ICVzJzsKJGxhbmdbJ2FkZF90aW1lbGltaXRlZF9rZXknXSA9ICdUaWpkZ2VsaW1pdGVlcmRlIHNsZXV0ZWwgVG9ldm9lZ2VuJzsKJGxhbmdbJ2ZpbGVfaW5mbzInXSA9ICdCZXN0YW5kICVzIChpZD0lZCknOwokbGFuZ1snaW5mb190aW1lbGltaXRlZF9kb3dubG9hZHMnXSA9ICdCZW5vZW0gaGV0IHN0YW5kYWFyZCBhYW50YWwga2VyZW4gZGF0IGVlbiBiZXN0YW5kIGdlZG93bmxvYWQga2FuIHdvcmRlbiBtZXQgZWVuIGJlcGFhbGRlIHNsZXV0ZWwnOwokbGFuZ1sncHJvbXB0X3RpbWVsaW1pdGVkX2Rvd25sb2FkcyddID0gJ1N0YW5kYWFyZCBIb2V2ZWVsaGVpZCBEb3dubG9hZHMnOwokbGFuZ1snaW5mb190aW1lbGltaXRlZF9ob3VycyddID0gJ0Jlbm9lbSBoZXQgc3RhbmRhYXJkIGFhbnRhbCB1cmVuIGRhdCBkZSBUaWpkZ2VsaW1pdGVlcmRlIHNsZXV0ZWwgZ2VsZGlnIGJsaWpmdC4gQmVub2VtIDAgdm9vciBvbmdlbGltaXRlZXJkJzsKJGxhbmdbJ3Byb21wdF90aW1lbGltaXRlZF9ob3VycyddID0gJ0FhbnRhbCB1cmVuIGRhdCBkZSBUaWpkZ2VsaW1pdGVlcmRlIFNsZXV0ZWwgZ2VsZGlnIGlzJzsKJGxhbmdbJ3RpbWVsaW1pdGVkX3VybF9zZXR0aW5ncyddID0gJ0luc3RlbGxpbmdlbiBUaWpkZ2VsaW1pdGVlcmRlIHNsZXV0ZWwnOwokbGFuZ1snbWFuYWdlX3RpbWVsaW1pdGVkJ10gPSAnQmVoZWVyIFRpamRnZWxpbWl0ZWVyZGUgVG9lZ2FuZyc7CiRsYW5nWyd1cGxvYWRpbmdfc2V0dGluZ3MnXSA9ICdCZXN0YW5kIFVwbG9hZCBJbnN0ZWxsaW5nZW4nOwokbGFuZ1snZ2VuZXJhbF9zZXR0aW5ncyddID0gJ0FsZ2VtZW5lIGluc3RlbGxpbmdlbic7CiRsYW5nWyd0aHVtYm5haWxfc2V0dGluZ3MnXSA9ICdNaW5pYXR1dXIgYWFubWFhayc7CiRsYW5nWyd0aXRsZV9yZWRpcmVjdF9vbl9zZW5kZmlsZSddID0gJ1BhZ2luYSBvbSB0ZSB0b25lbiBuYSBoZXQgdmVyemVuZGVuIHZhbiBlZW4gYmVzdGFuZCc7CiRsYW5nWydsYmxfYmFjayddID0gJ1RlcnVnJzsKJGxhbmdbJ2xibF90ZW1wbGF0ZXMnXSA9ICdXaWp6aWcgU2phYmxvbmVuJzsKJGxhbmdbJ3Byb21wdF9wdWJsaWNfZmllbGQnXSA9ICdWZWxkIGlzIG9wZW5iYWFyIDxlbT4oS2FuIGRvb3Igd2Vic2l0ZSBiZXpvZWtlcnMgd29yZGVuIGdlemllbik8L2VtPic7CiRsYW5nWyd1cGxvYWRfZWRpdGVkJ10gPSAnQmVzdGFuZCBEZXRhaWxzIEdld2lqemlnZCBvcCAlcyc7CiRsYW5nWydpbmZvX3RodW1ibmFpbCddID0gJ0VlbiBvcHRpb25lZWwgbWluaWF0dXVyLWJlc3RhbmQnOwokbGFuZ1sndXBsb2FkX2ZpbGUnXSA9ICdVcGxvYWQgZWVuIG5pZXV3IGJlc3RhbmQnOwokbGFuZ1snbXNnX2ZpZWxkX2RlbGV0ZWQnXSA9ICdWZWxkIHZlcndpamRlcmQnOwokbGFuZ1snYXNrX2RlbGV0ZV9maWVsZCddID0gJ1dlZXQgdSB6ZWtlciBkYXQgdSBkaXQgdmVsZCBlbiBhbGxlIGdlYXNzb2NpZWVyZGUgZGF0YSB3aWx0IHZlcndpamRlcmVuPyc7CiRsYW5nWyd5ZXMnXSA9ICdKYSc7CiRsYW5nWydubyddID0gJ05lZSc7CiRsYW5nWyd0eXBlJ10gPSAnVHlwZSAnOwokbGFuZ1snZmllbGR0eXBlX211bHRpc2VsZWN0J10gPSAnTWVlcmtldXplIExpanN0JzsKJGxhbmdbJ2ZpZWxkdHlwZV9kcm9wZG93biddID0gJ0Ryb3Bkb3duIExpanN0JzsKJGxhbmdbJ2ZpZWxkdHlwZV9jaGVja2JveCddID0gJ1Zpbmt2YWtqZSc7CiRsYW5nWydmaWVsZHR5cGVfdGV4dGFyZWEnXSA9ICdUZWtzdCBydWltdGUnOwokbGFuZ1snZmllbGR0eXBlX3RleHRpbnB1dCddID0gJ1Rla3N0IElucHV0JzsKJGxhbmdbJ3Byb21wdF91c2Vfd3lzaXd5ZyddID0gJ0dlYnJ1aWsgd3lzaXd5ZyB2b29yIGhldCB3aWp6aWdlbiB2YW4gZGUgaW5ob3VkIHZhbiBkaXQgdmVsZCc7CiRsYW5nWydwcm9tcHRfZGVmYXVsdF9jb250ZW50J10gPSAnU3RhbmRhYXJkIGluaG91ZCB2b29yIGRlIHRla3N0cnVpbXRlJzsKJGxhbmdbJ3Byb21wdF9kcm9wZG93bl9vcHRpb25zJ10gPSAnT3B0aWVzICgmZWFjdXRlOyZlYWN1dGU7biBwZXIgcmVnZWwpJzsKJGxhbmdbJ3Byb21wdF9maWVsZF9tYXhsZW5ndGgnXSA9ICdWZWxkIE1heGltdW0gTGVuZ3RlJzsKJGxhbmdbJ3Byb21wdF9maWVsZF9sZW5ndGgnXSA9ICdWZWxkIExlbmd0ZSc7CiRsYW5nWydwcm9tcHRfZmllbGRfdHlwZSddID0gJ1ZlbGQgVHlwZSc7CiRsYW5nWydwcm9tcHRfZmllbGRfbmFtZSddID0gJ1ZlbGQgTmFhbSc7CiRsYW5nWyd0aXRsZV9hZGRfZmllbGQnXSA9ICdUb2V2b2VnZW4gb2Ygd2lqemlnZW4gdmFuIGVlbiBWZWxkIERlZmluaXRpZSc7CiRsYW5nWydmaWVsZF9kZWZpbml0aW9ucyddID0gJ1ZlbGQgRGVmaW5pdGllcyc7CiRsYW5nWydwcm9tcHRfYWRkX2ZpZWxkJ10gPSAnVmVsZCBEZWZpbml0aWVzIFRvZXZvZWdlbic7CiRsYW5nWydwYXJhbV9hY3Rpb24nXSA9ICdTcGVjaWZpZXMgdGhlIGJlaGF2aW91ciBvZiB0aGUgbW9kdWxlIHRhZy4gIFBvc3NpYmxlIHZhbHVlcyBhcmU6IGRlZmF1bHQgLSAodGhlIGRlZmFmYXVsdCBiZWhhdmlvciksIGRldGFpbCAtIHRvIGRpc3BsYXkgYSBkZXRhaWwgdmlldyBvZiBhIHNpbmdsZSBmaWxlIGJhc2VkIG9uIHRoZSB1cGxvYWRfaWQsIGFuZCB5b3VzZW5kaXQgLSB0byBkaXNwbGF5IGEgZm9ybSB0byBhbGxvdyB1cGxvYWRpbmcgYSBmaWxlLCBhbmQgc2VuZGluZyBpdCB0byBudW1lcm91cyBhZGRyZXNzZXMgaW4gb25lIHN0ZXAgJzsKJGxhbmdbJ3BhcmFtX3NlbmRmaWxlcGFnZSddID0gJ0Jlbm9lbSBlZW4gcGFnaW5hIElEIG9mIGVlbiBhbGlhcyBkYXQgZ2VicnVpa3QgbW9ldCB3b3JkZW4gb20gaGV0IGJlc3RhbmRzZm9ybXVsaWVyIHRlIHZlcnplbmRlbic7CiRsYW5nWydmaWxlX3VwbG9hZGVkJ10gPSAnQmVzdGFuZCBjb3JyZWN0IGdlJnV1bWw7cGxvYWQnOwokbGFuZ1sndG8nXSA9ICdOYWFyJzsKJGxhbmdbJ3RpdGxlX3lvdXNlbmRpdGZvcm1fdGVtcGxhdGUnXSA9ICdUb2V2b2VnZW4gb2Ygd2lqemlnZW4gJnF1b3Q7VSB2ZXJzdHV1cmRlIGhldCZxdW90OyBGb3JtdWxpZXIgU2phYmxvb24nOwokbGFuZ1sneW91c2VuZGl0Zm9ybV90ZW1wbGF0ZSddID0gJyZxdW90O1UgdmVyc3R1dXJkZSBoZXQmcXVvdDsgRm9ybXVsaWVyIFNqYWJsb29uJzsKJGxhbmdbJ3RpdGxlX3lvdXNlbmRpdGZvcm1fc3lzZGVmYXVsdCddID0gJ1N0YW5kYWFyZCAmcXVvdDtVIHZlcnN0dXVyZGUgaGV0JnF1b3Q7IHNqYWJsb29uJzsKJGxhbmdbJ21zZ19maWxlX3NlbnQnXSA9ICdFciBpcyBlZW4gYmVyaWNodCBnZXN0dXVyZCBuYWFyIGRlIGdlc2VsZWN0ZWVyZGUgYWRyZXNzZW4gZGF0IGluZm9ybWF0aWUgYmV2YXQgb3ZlciBoZXQgYmVzdGFuZCBlbiBob2UgdSBoZXQga3VudCBvbnR2YW5nZW4uJzsKJGxhbmdbJ2Vycm9yX25vYWRkcmVzc2VzJ10gPSAnVSBtb2V0IG1pbmltYWFsICZlYWN1dGU7JmVhY3V0ZTtuIGRvZWwgYWRyZXMgaW52dWxsZW4nOwokbGFuZ1snZXJyb3Jfbm9zdWJqZWN0J10gPSAnVSBtb2V0IGVlbiBvbmRlcndlcnAgaW52dWxsZW4nOwokbGFuZ1snc3ViamVjdCddID0gJ09uZGVyd2VycCc7CiRsYW5nWyd0aXRsZV9zZW5kZmlsZXBhZ2UnXSA9ICdQYWdpbmEgdm9vciBoZXQgJnF1b3Q7VmVyc3R1dXIgZWVuIGJlc3RhbmQmcXVvdDsgRm9ybXVsaWVyJzsKJGxhbmdbJ2ZpbGVfaW5mbyddID0gJ0Jlc3RhbmRzaW5mbyc7CiRsYW5nWydzZW5kJ10gPSAnVmVyc3R1dXInOwokbGFuZ1snbm90ZXMnXSA9ICdPcG1lcmtpbmdlbic7CiRsYW5nWydhZGRyZXNzZWVzJ10gPSAnVmVyc3R1dXIgaW5mb3JtYXRpZSBvdmVyIGRpdCBiZXN0YW5kIG5hYXInOwokbGFuZ1sncHJvbXB0X3NlbmRmaWxlX2VtYWlsX3RlbXBsYXRlJ10gPSAnJnF1b3Q7VmVyc3R1dXIgZWVuIGJlc3RhbmQmcXVvdDsgRS1tYWlsIFNqYWJsb29uJzsKJGxhbmdbJ3RpdGxlX3NlbmRmaWxlZm9ybV90ZW1wbGF0ZSddID0gJ1RvZXZvZWdlbiBvZiB3aWp6aWdlbiAmcXVvdDtWZXJzdHV1ciBlZW4gYmVzdGFuZCZxdW90OyBGb3JtdWxpZXIgU2phYmxvb24nOwokbGFuZ1snc2VuZGZpbGVmb3JtX3RlbXBsYXRlJ10gPSAnJnF1b3Q7VmVyc3R1dXIgZWVuIGJlc3RhbmQmcXVvdDsgRm9ybXVsaWVyIFNqYWJsb29uJzsKJGxhbmdbJ3Byb21wdF9ub3RpZnlfZW1haWxfdGVtcGxhdGUnXSA9ICdCZXN0YW5kIHVwbG9hZCBub3RpZmljYXRpZSBlLW1haWwgc2phYmxvb24nOwokbGFuZ1sndGl0bGVfc2VuZGZpbGVmb3JtX3N5c2RlZmF1bHQnXSA9ICdTdGFuZGFhcmQgJnF1b3Q7VmVyc3R1dXIgZWVuIGJlc3RhbmQmcXVvdDsgRm9ybXVsaWVyIFNqYWJsb29uJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeWRlbGV0YWJsZSddID0gJ0Jlc3RhbmRlbiBpbiBkZXplIGNhdGVnb3JpZSBrdW5uZW4gd29yZGVuIHZlcndpamRlcmQnOwokbGFuZ1sndGl0bGVfYWxsb3dfZGVsZXRlJ10gPSAnU3RhIGhldCB2ZXJ3aWpkZXJlbiB2YW4gYmVzdGFuZGVuIGFhbiBoZXQgZnJvbnRlbmQgdG9lJzsKJGxhbmdbJ2RlZmF1bHRfdGVtcGxhdGVzJ10gPSAnU3RhbmRhYXJkIFNqYWJsb25lbic7CiRsYW5nWydmaXJzdHBhZ2UnXSA9ICdFZXJzdGUgcGFnaW5hJzsKJGxhbmdbJ3ByZXZwYWdlJ10gPSAnTGFhdHN0ZSBwYWdpbmEnOwokbGFuZ1snbmV4dHBhZ2UnXSA9ICdWb2xnZW5kZSBwYWdpbmEnOwokbGFuZ1snbGFzdHBhZ2UnXSA9ICdWb3JpZ2UgcGFnaW5hJzsKJGxhbmdbJ2ZpcnN0cGFnZV9hcnJvdyddID0gJzw8ICc7CiRsYW5nWydwcmV2cGFnZV9hcnJvdyddID0gJzwgJzsKJGxhbmdbJ25leHRwYWdlX2Fycm93J10gPSAnPiAnOwokbGFuZ1snbGFzdHBhZ2VfYXJyb3cnXSA9ICc+PiAnOwokbGFuZ1sncGFnZSddID0gJ1BhZ2luYSc7CiRsYW5nWydvZiddID0gJ3Zhbic7CiRsYW5nWydwcm9tcHRfZ3JvdXBsaXN0J10gPSAnR2VhdXRvcmlzZWVyZGUgRkVVc2Vycy1ncm9lcGVuJzsKJGxhbmdbJ2luZm9fZ3JvdXBsaXN0J10gPSAnU2VsZWN0ZWVyIGVlbiBGRVUtZ3JvZXAgZGllIHRvZWdhbmcgbWFnIGhlYmJlbiB0b3QgYmVzdGFuZGVuIGluIGRlemUgY2F0ZWdvcmllLiAnOwokbGFuZ1sndGl0bGVfc2NhbiddID0gJ1pvZWsgbmFhciBuaWV1d2UgYmVzdGFuZGVuIGluIGRlemUgY2F0ZWdvcmllJzsKJGxhbmdbJ3RpdGxlX2NyZWF0ZV90aHVtYm5haWxzJ10gPSAnQ3JlJmV1bWw7ZXIgb250YnJla2VuZGUgbWluaWF0dXJlbiBpbiBkZXplIGNhdGVnb3JpZSc7CiRsYW5nWydjcmVhdGVfdGh1bWJuYWlscyddID0gJ0NyZSZldW1sO2VyIG1pbmlhdHVyZW4nOwokbGFuZ1sndGl0bGVfY3JlYXRlX3RodW1ibmFpbCddID0gJ01hYWsgZGUgbWluaWF0dXVyIHZvb3IgZGl0IGJlc3RhbmQgKG9wbmlldXcpIGFhbic7CiRsYW5nWydjcmVhdGVfdGh1bWJuYWlsJ10gPSAnQ3JlJmV1bWw7ZXIgbWluaWF0dXVyJzsKJGxhbmdbJ2Vycm9yX3BhdGhlcnJvciddID0gJ0thbiBkZSBtYXAgbmlldCBvcGVuZW4gKHJlY2h0ZW5wcm9ibGVlbT8pJzsKJGxhbmdbJ3RpdGxlX2Rvd25sb2FkX2NodW5rc2l6ZSddID0gJ0dyb290dGUgdmFuIGllZGVyIGRvd25sb2FkZGVlbCc7CiRsYW5nWydpbmZvX2Rvd25sb2FkX2NodW5rc2l6ZSddID0gJ0luc3RlbGxlbiB2YW4gZGV6ZSBwYXJhbWV0ZXIgaGVlZnQgaW52bG9lZCBvcCBkZSBkb3dubG9hZCBzbmVsaGVpZCBlbiBrYW4gdm9vcmRlZWwgaGViYmVuIGluIG9tZ2V2aW5nZW4gbWV0IHdlaW5pZyBnZWhldWdlbic7CiRsYW5nWyd3YXJuaW5nX3NhZmVfbW9kZSddID0gJ1BIUCYjMDM5O3MgdmVpbGlnZSBtb2R1cyAoc2FmZSBtb2RlKSBpcyBpbmdlc2NoYWtlbGQuIERpdCBrYW4gcHJvYmxlbWVuIG1ldCBoZXQgdXBsb2FkZW4gdmFuIGJlc3RhbmRlbiB2ZXJvb3J6YWtlbiAocmVjaHRlbikgZW4ga2FuIG9vayBkZSBtb2dlbGlqayB2YW4gZGUgbW9kdWxlIHZlcnN0b3JlbiBvbSBiZXN0YW5kZW4gdGUgdmVyemVuZGVuIGRvb3IgZGUgYmVwZXJraW5nIGVua2VsZSBpbnN0ZWxsaW5nZW4gdGUgb3ZlcnNjaHJpanZlbi4gTmVlbSBjb250YWN0IG9wIG1ldCB1dyBob3N0aW5nIHByb3ZpZGVyIG92ZXIgaGV0IHVpdHNjaGFrZWxlbiB2YW4gZGUgdmVpbGlnZSBtb2R1cy4nOwokbGFuZ1sncGFyYW1fZGV0YWlscGFnZSddID0gJ051dHRpZyBvbSBlZW4gZ2VkZXRhaWxsZWVyZCByYXBwb3J0IHRlIHRvbmVuIG1ldCBlZW4gYW5kZXIgcGFnaW5hIHNqYWJsb29uLiBEZXplIHBhcmFtZXRlciBnZWJydWlrdCBkZSBwYWdpbmEtaWQgb2YgcGFnaW5hLWFsaWFzIHZhbiBlZW4gcGFnaW5hIGRpZSBiZW51dCBkaWVudCB0ZSB3b3JkZW4gb20gaGV0IGRldGFpbCByYXBwb3J0IHRlIHRvbmVuLic7CiRsYW5nWydwYXJhbV9wcmVmaXgnXSA9ICdFZW4gYm9vbGVhbiBkaWUgYWFuZ2VlZnQgb2YgYmVzdGFuZHNuYW1lbiBlZW4gcHJlZml4IG1vZXRlbiBoZWJiZW4nOwokbGFuZ1sncGFyYW1fcHJlZml4X2ZldSddID0gJ0VlbiBib29sZWFuIHBhcmFtZXRlciBkaWUgYWFuZ2VlZnQgZGF0IGRlIHByZWZpeCB2YW4gZGUgaHVpZGlnZSBhdXRldXIgZ2VicnVpa3QgbW9ldCB3b3JkZW4gb2YsIGFscyBkZXplIG5pZXQgb3BnZWdldmVuIGlzLCBkZSBwcmVmaXggdmFuIGRlIGh1aWRpZ2UgdGlqZCAoaW4gZGVjaGV4IGZvcm1hYXQpJzsKJGxhbmdbJ3BhcmFtX25vY2FwdGNoYSddID0gJ1NjaGFrZWwgY2FwdGNoYS1vbmRlcnN0ZXVuaW5nIGluIGhldCB1cGxvYWQtZm9ybXVsaWVyIHVpdCAoc3RhbmRhYXJkIGFhbiknOwokbGFuZ1sndGl0bGVfdXBsb2FkZm9ybV90ZW1wbGF0ZSddID0gJ0Jld2VyayBoZXQgVXBsb2FkIEZvcm11bGllciBTamFibG9vbic7CiRsYW5nWydjYXB0Y2hhX3RpdGxlJ10gPSAnVm9lciBkZSB0ZWtzdCB1aXQgaGV0IHBsYWF0amUgaW4nOwokbGFuZ1snZXJyb3JfY2FwdGNoYW1pc21hdGNoJ10gPSAnSW5nZXZvZXJkZSB0ZWtzdCBrb210IG5pZXQgb3ZlcmVlbiBtZXQgZGllIGluIGhldCBwbGFhdGplJzsKJGxhbmdbJ3RpdGxlX2F1dG90aHVtYm5haWxfZXh0ZW5zaW9ucyddID0gJ0NyZSZldW1sO2VyIG1pbmlhdHVyZW4gdm9vciBiZXN0YW5kZW4gbWV0IGRlemUgZXh0ZW5zaWVzJzsKJGxhbmdbJ3RpdGxlX2F1dG90aHVtYm5haWxfc2l6ZSddID0gJ01heGltYWxlIGdyb290dGUgKHBpeGVscykgdmFuIGRlIGdlZ2VuZXJlZXJkZSB0aHVtYm5haWxzJzsKJGxhbmdbJ3Byb21wdF91cGxvYWRfaWNvbiddID0gJ1VwbG9hZCBlZW4gaWNvb24nOwokbGFuZ1snaW5mb19zeXNkZWZhdWx0J10gPSAnRGV6ZSB0ZWtzdCB3b3JkdCBnZWJydWlrdCBiaWogaGV0IGNyZSZldW1sO3JlbiB2YW4gZWVuIG5pZXV3IHNqYWJsb29uIHZhbiBkaXQgdHlwZSc7CiRsYW5nWyd0aXRsZV9kZXRhaWxycHRfc3lzZGVmYXVsdCddID0gJ1N5c3RlZW1zdGFuZGFhcmQgZGV0YWlscmFwcG9ydHNqYWJsb29uJzsKJGxhbmdbJ3RpdGxlX3N1bW1hcnlycHRfc3lzZGVmYXVsdCddID0gJ1N5c3RlZW1zdGFuZGFhcmQgb21zY2hyaWp2aW5nc3NqYWJsb29uJzsKJGxhbmdbJ3RpdGxlX3VwbG9hZGZvcm1fc3lzZGVmYXVsdCddID0gJ1N5c3RlZW1zdGFuZGFhcmQgdXBsb2FkLWZvcm11bGllcnNqYWJsb29uJzsKJGxhbmdbJ3RlbXBsYXRlJ10gPSAnU2phYmxvb24nOwokbGFuZ1sncmVzZXR0b2RlZmF1bHQnXSA9ICdIZXJzdGVsIG5hYXIgc3RhbmRhYXJkJzsKJGxhbmdbJ3RpdGxlX3N1bW1hcnlycHRfdGVtcGxhdGUnXSA9ICdPbXNjaHJpanZpbmdzc2phYmxvb24nOwokbGFuZ1sndGl0bGVfZGV0YWlscnB0X3RlbXBsYXRlJ10gPSAnRGV0YWlscmFwcG9ydHNqYWJsb29uJzsKJGxhbmdbJ3Byb21wdF9uYW1lJ10gPSAnTmFhbSc7CiRsYW5nWydwcm9tcHRfZGVmYXVsdCddID0gJ1N0YW5kYWFyZCc7CiRsYW5nWydsZWdlbmRfdXBsb2FkZm9ybSddID0gJ1VwbG9hZCBlZW4gYmVzdGFuZCc7CiRsYW5nWydlcnJvcl9taXNzaW5ncGFyYW0nXSA9ICdFZW4gdmVycGxpY2h0ZSBwYXJhbWV0ZXIgb250YnJlZWt0JzsKJGxhbmdbJ2Vycm9yX21pc3NpbmduYW1lJ10gPSAnRWVuIG5hYW0gdmFuIGhldCBiZXN0YW5kc3R5cGUgbW9ldCB3b3JkZW4gb3BnZWdldmVuJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdleHRlbnNpb25zJ10gPSAnVGVubWluc3RlICZlYWN1dGU7JmVhY3V0ZTtuIGJlc3RhbmRzZXh0ZW5zaWUgbW9ldCB3b3JkZW4gb3BnZWdldmVuJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdpY29uJ10gPSAnRWVuIGljb29uIG1vZXQgd29yZGVuIG9wZ2VnZXZlbic7CiRsYW5nWydlcnJvcl9ub3N1Y2hyb3cnXSA9ICdEZSBvcGdlZ2V2ZW4gcmlqIGtvbiBuaWV0IHdvcmRlbiBnZXZvbmRlbic7CiRsYW5nWyduYW1lX3Vua25vd24nXSA9ICdPbmJla2VuZCc7CiRsYW5nWydkZXNjcmlwdGlvbl91bmtub3duJ10gPSAnQmVzdGFuZHN0eXBlYmVzY2hyaWp2aW5nIHZvb3IgbmlldC1vdmVyZWVua29tZW5kZSBiZXN0YW5kZW4nOwokbGFuZ1snaW1hZ2UnXSA9ICdQbGFhdGplJzsKJGxhbmdbJ2ljb24nXSA9ICdJY29vbic7CiRsYW5nWydleHRlbnNpb25zJ10gPSAnQmVzdGFuZHNleHRlbnNpZXMnOwokbGFuZ1snYWRkZmlsZXR5cGUnXSA9ICdWb2VnIG5pZXV3IGJlc3RhbmRzdHlwZSB0b2UnOwokbGFuZ1snZmlsZV90eXBlcyddID0gJ0Jlc3RhbmRzdHlwZXMnOwokbGFuZ1snZXJyb3Jfbm9jYXRlZ29yeWlkJ10gPSAnRXIgaXMgZ2VlbiBjYXRlZ29yaWUtaWQgb3BnZWdldmVuJzsKJGxhbmdbJ2Vycm9yX25vY2F0ZWdvcnknXSA9ICdFciBpcyBnZWVuIGNhdGVnb3JpZS1pZCBvcGdlZ2V2ZW4nOwokbGFuZ1snZXJyb3JfdGVtcGxhdGVuYW1lZXhpc3RzJ10gPSAnRXIgYmVzdGFhdCBhbCBlZW4gc2phYmxvb24gbWV0IGRlemUgbmFhbSc7CiRsYW5nWydwcm9tcHRfdGVtcGxhdGVuYW1lJ10gPSAnU2phYmxvb25uYWFtJzsKJGxhbmdbJ3Byb21wdF90ZW1wbGF0ZSddID0gJ1NqYWJsb29uJzsKJGxhbmdbJ3Byb21wdF9uZXd0ZW1wbGF0ZSddID0gJ01hYWsgZWVuIG5pZXV3IHNqYWJsb29uJzsKJGxhbmdbJ2hlbHBfT25Eb3dubG9hZCddID0gJzxwPkdlZ2VuZXJlZXJkZSBnZWJldXJ0ZW5pcyBuYWRhdCBlZW4gZ2VicnVpa2VyIGtsYWFyIGlzIG1ldCBkb3dubG9hZGVuIHZhbiBlZW4gYmVzdGFuZDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+aWQ8L2VtPiAtIFVwbG9hZC1pZDwvbGk+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIEJlc3RhbmRzbmFhbTwvbGk+DQo8bGk+PGVtPmlwPC9lbT4gLSBJUC1hZHJlcyB2YW4gZGUgZG93bmxvYWRlcjwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2hlbHBfT25EZWxldGVDYXRlZ29yeSddID0gJzxwPkdlZ2VuZXJlZXJkZSBnZWJldXJ0ZW5pcyBhbHMgZWVuIGNhdGVnb3JpZSBpcyB2ZXJ3aWpkZXJkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBDYXRlZ29yaWVuYWFtPC9saT4NCjxsaT48ZW0+cGF0aDwvZW0+IC0gQ2F0ZWdvcmllcGFkPC9saT4NCjwvdWw+DQonOwokbGFuZ1snaGVscF9PbkNyZWF0ZUNhdGVnb3J5J10gPSAnPHA+R2VnZW5lcmVlcmRlIGdlYmV1cnRlbmlzIGFscyBlZW4gY2F0ZWdvcmllIGlzIGFhbmdlbWFha3Q8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIENhdGVnb3JpZW5hYW08L2xpPg0KPGxpPjxlbT5kZXNjcmlwdGlvbjwvZW0+IC0gQ2F0ZWdvcmllYmVzY2hyaWp2aW5nPC9saT4NCjxsaT48ZW0+cGF0aDwvZW0+IC0gQ2F0ZWdvcmllcGFkPC9saT4NCjxsaT48ZW0+cGF0aDwvZW0+IC0gVmxhZyBkaWUgYWFuZ2VlZnQgb2YgZGUgY2F0ZWdvcmllIGluIGVlbiBsaWpzdCBrYW4gd29yZGVuIG9wZ2Vub21lbjwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2hlbHBfT25SZW1vdmUnXSA9ICc8cD5HZWdlbmVyZWVyZGUgZ2ViZXVydGVuaXMgYWxzIGVlbiBiZXN0YW5kIHZlcndpamRlcmQgaXMgdmlhIGRlIGJlaGVlci0gb2YgZGUgZnJvbnRlbmQtaW50ZXJmYWNlPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBOYWFtIHZhbiBoZXQgdmVyd2lqZGVyZGUgYmVzdGFuZDwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBJRCB2YW4gaGV0IHZlcndpamRlcmRlIGJlc3RhbmQ8L2xpPg0KPGxpPjxlbT5jYXRlZ29yeV9pZDwvZW0+IC0gSUQgdmFuIGRlIGNhdGVnb3JpZTwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2hlbHBfT25VcGxvYWQnXSA9ICc8cD5HZWdlbmVyZWVyZGUgZ2ViZXVydGVuaXMgYWxzIGVlbiBuaWV1dyBiZXN0YW5kIGlzIGdldXBsb2FkIHZpYSBkZSBiZWhlZXItIG9mIGZyb250ZW5kLWludGVyZmFjZTwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+Y2F0ZWdvcnk8L2VtPiAtIERlIGNhdGVnb3JpZW5hYW08L2xpPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBOYWFtIHZhbiBoZXQgZ2UmdXVtbDtwbG9hZGUgYmVzdGFuZDwvbGk+DQo8bGk+PGVtPnNpemU8L2VtPiAtIEdyb290dGUgdmFuIGhldCBnZSZ1dW1sO3Bsb2FkZSBiZXN0YW5kPC9saT4NCjxsaT48ZW0+c3VtbWFyeTwvZW0+IC0gS29ydGUgYmVzY2hyaWp2aW5nIHZhbiBoZXQgZ2UmdXVtbDtwbG9hZGUgYmVzdGFuZCAob3B0aW9uZWVsKTwvZW0+PC9saT4NCjxsaT48ZW0+ZGVzY3JpcHRpb248L2VtPiAtIExhbmdlIGJlc2NocmlqdmluZyB2YW4gaGV0IGdlJnV1bWw7cGxvYWRlIGJlc3RhbmQgKG9wdGlvbmVlbCk8L2VtPjwvbGk+DQo8bGk+PGVtPmF1dGhvcjwvZW0+IC0gQXV0ZXVyIHZhbiBoZXQgZ2UmdXVtbDtwbG9hZGUgYmVzdGFuZCAoaW5kaWVuIGJlc2NoaWtiYWFyKTwvZW0+PC9saT4NCjxsaT48ZW0+aXBfYWRkcmVzczwvZW0+IC0gSVAtYWRyZXMgdmFuIGRlIGNsaWVudCBkaWUgaGV0IGJlc3RhbmQgdXBsb2FkZTwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2luZm9fZXZlbnRfb25kZWxldGVjYXRlZ29yeSddID0gJ0VlbiB0YWcgZGllIHdvcmR0IGFhbmdlcm9lcGVuIGFscyBlZW4gY2F0ZWdvcmllIGlzIHZlcndpamRlcmQnOwokbGFuZ1snaW5mb19ldmVudF9vbmNyZWF0ZWNhdGVnb3J5J10gPSAnRWVuIHRhZyBkaWUgd29yZHQgYWFuZ2Vyb2VwZW4gYWxzIGVlbiBjYXRlZ29yaWUgaXMgYWFuZ2VtYWFrdCc7CiRsYW5nWydpbmZvX2V2ZW50X29uZG93bmxvYWQnXSA9ICdFZW4gdGFnIGRpZSB3b3JkdCBhYW5nZXJvZXBlbiBhbHMgZWVuIGJlc3RhbmQgaXMgZ2Vkb3dubG9hZCc7CiRsYW5nWydpbmZvX2V2ZW50X29udXBsb2FkJ10gPSAnRWVuIHRhZyBkaWUgd29yZHQgYWFuZ2Vyb2VwZW4gYWxzIGVlbiBiZXN0YW5kIGlzIGdlJnV1bWw7cGxvYWQnOwokbGFuZ1snaW5mb19ldmVudF9vbnJlbW92ZSddID0gJ0VlbiB0YWcgZGllIHdvcmR0IGFhbmdlcm9lcGVuIGFscyBlZW4gYmVzdGFuZCBpcyB2ZXJ3aWpkZXJkJzsKJGxhbmdbJ3RpdGxlX3VzZXJ0YWdfb251cGxvYWQnXSA9ICdFZW4gdGFnIGRpZSB3b3JkdCBhYW5nZXJvZXBlbiBhbHMgZGUgdXBsb2FkIHZvbHRvb2lkIGlzICc7CiRsYW5nWydub25lJ10gPSAnR2Vlbic7CiRsYW5nWydtYXRjaGVzZm91bmQnXSA9ICdPdmVyZWVua29tc3RlbiBnZXZvbmRlbic7CiRsYW5nWydmaWx0ZXInXSA9ICdGaWx0ZXIgJzsKJGxhbmdbJ3RpdGxlX3JlZGlyZWN0b251cGxvYWQnXSA9ICdWZXJ3aWpzIG5hYXIgcGFnaW5hLWlkL2FsaWFzIGJpaiBnZWJydWlrZXItdXBsb2FkJzsKJGxhbmdbJ2RldGFpbHMnXSA9ICdEZXRhaWxzICc7CiRsYW5nWydjb25maXJtX3ByZWZlcmVuY2VzJ10gPSAnV2VldCB1IHpla2VyIGRhdCBkZSB2b29ya2V1cmVuIGFhbmdlcGFzdCBtb2V0ZW4gd29yZGVuPyc7CiRsYW5nWydlcnJvcl9ub2ZpbGVzdXBsb2FkZWQnXSA9ICdFciB6aWpuIGdlZW4gYmVzdGFuZGVuIGdlJnV1bWw7cGxvYWQnOwokbGFuZ1sncHJvbXB0X3JlcGxhY2UnXSA9ICdTdGEgb3ZlcnNjaHJpanZlbiB0b2UnOwokbGFuZ1snaW5mb19yZXBsYWNlJ10gPSAnVmVydmFuZyBpZWRlciBiZXN0YW5kIG1ldCBkZXplbGZkZSBuYWFtICh2ZXJhbmRlcnQgZGUgaWQgbmlldCknOwokbGFuZ1sncGFyYW1fbm9faW5pdGlhbCddID0gJ1Rvb24gZ2VlbiBpbml0aSZldW1sO2xlIHJlc3VsdGF0ZW4gYWxzIGhldCBmaWx0ZXIgYWFuIHN0YWF0JzsKJGxhbmdbJ3BhcmFtX2tleSddID0gJ0dlZWYgZWVuIGV4dHJhIG1vZHVsZS1zbGV1dGVsIG9tIGRlIHVwbG9hZHMgdmVyZGVyIHRlIGNhdGVnb3Jpc2VyZW4uIERlemUgc2xldXRlbCBrYW4gZWVuIGdlY29kZWVyZGUgc3RyaW5nIHppam4gem9hbHM6ICYjMDM5O2Z1c2Vyczp1aWQmIzAzOTssIGV0Yy4gRGV6ZSBwYXJhbWV0ZXIgaXMgbWVlc3RhbCBhbGxlZW4gbm9kaWcgYWxzIGRlIFVwbG9hZHMtbW9kdWxlIGluIGVlbiBhbmRlcmUgbW9kdWxlIHdvcmR0IG9wZ2Vub21lbi4nOwokbGFuZ1sncGFyYW1fbm9hdXRob3InXSA9ICdWZXJiZXJnIGhldCBhdXRldXJzdmVsZCB1aXQgaGV0IHVwbG9hZC1mb3JtdWxpZXIuIERlemUgcGFyYW1ldGVyIGlzIGFsbGVlbiBnZWxkaWcgYWxzIG1vZGU9JiMwMzk7dXBsb2FkJiMwMzk7LiBBbHMgZGUgRnJvbnRFbmRVc2Vycy1tb2R1bGUgYWFud2V6aWcgaXMgZW4gZWVuIGdlYnJ1aWtlciBpcyBpbmdlbG9nZCBkYW4gemFsIGVlbiB2ZXJib3JnZW4gdmVsZCBkZSBuYWFtIGJldmF0dGVuIHZhbiBkZSBodWlkaWdlLCBpbmdlbG9nZGUgZ2VicnVpa2VyJzsKJGxhbmdbJ3BhcmFtX3VwbG9hZF9pZCddID0gJ3VwbG9hZF9pZD0mcXVvdDtpZCZxdW90OyAtIHNwZWNpZmljZWVyIGVlbiBlbmtlbCBiZXN0YW5kIHZvb3IgZGUgdXJsL2xpbmsgb2YgZW5rZWxlIG1vZHVzIChib3ZlbnN0YWFuZCknOwokbGFuZ1sncGFyYW1fZGV0YWlsdGVtcGxhdGUnXSA9ICdHZWJydWlrIGVlbiBzamFibG9vbiBtZXQgZGV6ZSBuYWFtIHZvb3IgaGV0IGdlZGV0YWlsbGVlcmRlIHJhcHBvcnQnOwokbGFuZ1sncGFyYW1fdGVtcGxhdGUnXSA9ICdHZWJydWlrIGVlbiBzamFibG9vbiBtZXQgZGV6ZSBuYWFtIHZvb3IgZGl0IHJhcHBvcnQgb2YgZm9ybXVsaWVyLiBEZXplIG1vZHVzIHdvcmR0IGdlYnJ1aWt0IG9tIHRlIGJlcGFsZW4gd2Vsa2UgdHlwZSBzamFibG9vbiB2ZXJwbGljaHQgaXMgZW4gdmVydm9sZ2VucyB3b3JkdCBnZXpvY2h0IG9wIGVlbiBvdmVyZWVua29tZW5kZSBuYWFtIGJpbm5lbiBkYXQgdHlwZSc7CiRsYW5nWydwYXJhbV9maWx0ZXInXSA9ICdUb29uIGhldCBmaWx0ZXJmb3JtdWxpZXInOwokbGFuZ1sncGFyYW1fbm9faW50aXRpYWwnXSA9ICdBbGxlZW4gemludm9sIGFscyBkZSBmaWx0ZXJwYXJhbWV0ZXIgb3BnZWdldmVuIGlzIG9mIHN0YW5kYWFyZCBhYW4uIERlemUgcGFyYW1ldGVyIGdlZWZ0IGFhbiBvZiBkZSBpbml0aSZldW1sO2xlIHJlc3VsdGF0ZW4gdGVydWdnZWdldmVuIG1vZXRlbiB3b3JkZW4nOwokbGFuZ1sncGFyYW1fZmlsZXR5cGVzJ10gPSAnVG9vbiBhbGxlZW4gYmVzdGFuZGVuIHdhYXJ2YW4gaGV0IHR5cGUgb3ZlcmVlbmtvbXQgbWV0IGRlemUga29tbWFnZXNjaGVpZGVubGlqc3QnOwokbGFuZ1sncGFyYW1fc29ydG9yZGVyJ10gPSAnICA8cD5Tb3J0ZWVydm9sZ29yZGUNCiAgPHVsPg0KICA8bGk+PGVtPmRhdGVfYXNjPC9lbT4gLSBzb3J0ZWVyIG9wIG9wbG9wZW5kZSBkYXR1bTwvbGk+DQogIDxsaT48ZW0+ZGF0ZV9kZXNjPC9lbT4gLSBzb3J0ZWVyIG9wIGFmbG9wZW5kZSBkYXR1bTwvbGk+DQogIDxsaT48ZW0+bmFtZV9hc2M8L2VtPiAtIHNvcnRlZXIgb3Agb3Bsb3BlbmRlIG5hYW08L2xpPg0KICA8bGk+PGVtPm5hbWVfZGVzYzwvZW0+IC0gc29ydGVlciBvcCBhZmxvcGVuZGUgbmFhbTwvbGk+DQogIDxsaT48ZW0+c2l6ZV9hc2M8L2VtPiAtIHNvcnRlZXIgb3Agb3Bsb3BlbmRlIGdyb290dGU8L2xpPg0KICA8bGk+PGVtPnNpemVfZGVzYzwvZW0+IC0gc29ydGVlciBvcCBhZmxvcGVuZGUgZ3Jvb3R0ZTwvbGk+DQogIDxsaT48ZW0+ZGVzY19hc2M8L2VtPiAtIHNvcnRlZXIgb3Agb3Bsb3BlbmRlIGJlc2NocmlqdmluZzwvbGk+DQogIDxsaT48ZW0+ZGVzY19kZXNjPC9lbT4gLSBzb3J0ZWVyIG9wIGFmbG9wZW5kZSBiZXNjaHJpanZpbmc8L2xpPg0KICA8bGk+PGVtPmF1dGhvcl9hc2M8L2VtPiAtIHNvcnRlZXIgb3Agb3Bsb3BlbmRlIGF1dGV1cjwvbGk+DQogIDxsaT48ZW0+YXV0aG9yX2Rlc2M8L2VtPiAtIHNvcnRlZXIgb3AgYWZsb3BlbmRlIGF1dGV1cjwvbGk+DQogIDxsaT48ZW0+aXBfYXNjPC9lbT4gLSBzb3J0ZWVyIG9wIG9wbG9wZW5kIElQLWFkcmVzPC9saT4NCiAgPGxpPjxlbT5pcF9kZXNjPC9lbT4gLSBzb3J0ZWVyIG9wIGFmbG9wZW5kIElQX2FkcmVzPC9saT4NCiAgPGxpPjxlbT5yYW5kb208L2VtPiAtIHNvcnRlZXIgb3Agd2lsbGVrZXVyaWdlIHNvcnRlZXJ2b2xnb3JkZTwvbGk+DQogIDwvdWw+DQogIDwvcD4nOwokbGFuZ1sncGFyYW1fbGlzdGluZ3RlbXBsYXRlJ10gPSAnU2phYmxvb24gbmEgZG9vcmtsaWtrZW4gdmFuYWYgZGUgQ2F0ZWdvcmllc2FtZW52YXR0aW5ncyBwYWdpbmEnOwokbGFuZ1sncGFyYW1fbGlzdGluZ3NvcnRvcmRlciddID0gJ1NvcnRlZXJ2b2xnb3JkZSAoYWxhIHBhcmFtX3NvcnRvcmRlcikgbmEgZG9vcmtsaWtrZW4gdmFuYWYgZGUgQ2F0ZWdvcmllc2FtZW52YXR0aW5ncyBwYWdpbmEnOwokbGFuZ1sncGFyYW1fZmlsZWV4dGVuc2lvbnMnXSA9ICcgDQpmaWxlX2V4dGVuc2lvbnM9JnF1b3Q7ZXh0MSxleHQyLGV4dDMmcXVvdDsNCjxwPkFsbGVlbiBnZWxkaWcgYWxzIG1vZHVzPXVwbG9hZC4gRGV6ZSBwYXJhbWV0ZXIgYmVwZXJrdCBkZSB0eXBlIGJlc3RhbmRlbiBkaWUga3VubmVuIHdvcmRlbiBnZXVwbG9hZC4gRGl0IG92ZXJzY2hyaWpmdCBpZWRlcmUgaW5zdGVsbGluZyBpbiBkZSBtb2R1bGUtdm9vcmtldXJlbi48L3A+JzsKJGxhbmdbJ3BhcmFtX2NvdW50J10gPSAnY291bnQ9JnF1b3Q7TiZxdW90Ow0KPHA+RWVuIHBhcmFtZXRlciBvbSBhbGxlZW4gZGUgZWVyc3RlIE4gcmVzdWx0YXRlbiB2YW4gZGUgcXVlcnkgdGUgdG9uZW4uIFBhZ2luZXJpbmcgem91IGJldGVyIHppam4sIG1hYXIgZGl0IHdlcmt0IG9vazwvcD4nOwokbGFuZ1sncGFyYW1fY2F0ZWdvcnknXSA9ICdjYXRlZ29yeT0mcXVvdDtuYW1lJnF1b3Q7DQo8cD48Yj5MZXQgb3A6PC9iPiBDYXRlZ29yaWUga2FuICZxdW90O2FsbGVzJnF1b3Q7IHppam4sIHdhdCBlZW4gbGlqc3Qgb3BsZXZlcnQgbWV0IGFsbGUgdXBsb2FkcyB2YW4gYWxsZSA8ZW0+b3Bzb21iYXJlPC9lbT4gY2F0ZWdvcmllJmV1bWw7bjwvcD4nOwokbGFuZ1sncGFyYW1fbW9kZSddID0gJyAgPHVsPg0KICA8bGk+PGVtPmRldGFpbGVkPC9lbT4gLSBUb29uIGVlbiBnZWRldGFpbGxlZXJkZSBsaWpzdCBtZXQgYWxsZSBiZXN0YW5kZW4gaW4gZGV6ZSBjYXRlZ29yaWU8L2xpPg0KICA8bGk+PGVtPnVwbG9hZDwvZW0+IC0gVG9vbiBlZW4gZm9ybXVsaWVyIG9tIGZyb250ZW5kLWdlYnJ1aWtlcnMgdG9lIHRlIHN0YWFuIGVlbiBiZXN0YW5kIHRlIHVwbG9hZGVuPC9saT4NCiAgPGxpPjxlbT51cmwgPGk+b3I8L2k+IGxpbms8L2VtPiAtIFRvb24gZWVuIGxpbmsgbmFhciBlZW4gYmVzdGFuZDwvbGk+DQogIDxsaT48ZW0+c3VtbWFyeTwvZW0+IC0gVG9vbiBlZW4gc2FtZW5nZXZhdHRlIGxpanN0IG1ldCBhbGxlIGJlc3RhbmRlbiBpbiBkZSBjYXRlZ29yaWU8L2xpPg0KICA8bGk+PGVtPnNpbmdsZTwvZW0+IC0gVG9vbiBlZW4gZ2VkZXRhaWxsZWVyZCByYXBwb3J0IG92ZXIgZWVuIGluZGl2aWR1ZWxlIHVwbG9hZDwvbGk+DQogIDwvdWw+JzsKJGxhbmdbJ3BhcmFtX3NlbGVjdGZvcm0nXSA9ICdBbHMgZGUgJiMwMzk7c2VsZWN0ZWVyJiMwMzk7LW1vZHVzIHdvcmR0IGdlYnJ1aWt0IGJldmF0IGRlemUgcGFyYW1ldGVyIGhldCBmb3JtdWxpZXItaWQgdmFuIGhldCBib3ZlbmxpZ2dlbmRlIGZvcm11bGllciAocGFyZW50KS4gV29yZHQgZ2VicnVpa3QgYmlqIGhldCBkb29yZ2V2ZW4gdmFuIHBhcmFtZXRlcnMnOwokbGFuZ1sncGFyYW1fc2VsZWN0bmFtZSddID0gJ0FscyBkZSAmIzAzOTtzZWxlY3RlZXImIzAzOTstbW9kdXMgd29yZHQgZ2VicnVpa3Qgc3BlY2lmaWNlZXJ0IGRlemUgcGFyYW1ldGVyIGRlIHZlbGRuYWFtJzsKJGxhbmdbJ3BhcmFtX3NlbGVjdHZhbHVlJ10gPSAnQWxzIGRlICYjMDM5O3NlbGVjdGVlciYjMDM5Oy1tb2R1cyB3b3JkdCBnZWJydWlrdCBzcGVjaWZpY2VlcnQgZGV6ZSBwYXJhbWV0ZXIgZGUgc3RhbmRhYXJkIHZlbGR3YWFyZGUnOwokbGFuZ1sncGFyYW1fc2VsZWN0bm9uZSddID0gJ0FscyBkZSAmIzAzOTtzZWxlY3RlZXImIzAzOTstbW9kdXMgd29yZHQgZ2VicnVpa3Qgc3BlY2lmaWNlZXJ0IGRlemUgcGFyYW1ldGVyIG9mICYjMDM5O2dlZW4mIzAzOTsgZWVuIGdlbGRpZ2Uga2V1emUgaXMuJzsKJGxhbmdbJ3JldHVybnRvbW9kdWxlJ10gPSAnS2VlciB0ZXJ1ZyBuYWFyIGhldCBtb2R1bGUtc2NoZXJtJzsKJGxhbmdbJ2Vycm9yX25vY2F0ZWdvcmllcyddID0gJ0VyIHppam4gZ2VlbiBjYXRlZ29yaWUmZXVtbDtuIGdlZGVmaW5pZWVyZCc7CiRsYW5nWyd0aXRsZV9lbmZvcmNlZXh0ZW5zaW9ucyddID0gJ0V4dGVuc2llcyBiaWogYWxsZSBnZXVwbG9hZGUgYmVzdGFuZGVuIHppam4gdmVycGxpY2h0JzsKJGxhbmdbJ3Jlc3RvcmVkZWZhdWx0c2NvbmZpcm0nXSA9ICdEZXplIGhhbmRlbGluZyBoZXJzdGVsdCBkZSBzamFibG9vbiBuYWFyIGRlIHN5c3RlZW1zdGFuZGFhcmQuIEllZGVyZSB2ZXJhbmRlcmluZyBkaWUgdSBnZW1hYWt0IGhlZWZ0IHphbCB2ZXJsb3JlbiBnYWFuLiBXZWV0IHUgemVrZXIgZGF0IHUgZG9vciB3aWx0IGdhYW4/JzsKJGxhbmdbJ3RodW1ibmFpbCddID0gJ01pbmlhdHV1cic7CiRsYW5nWyduZXd0aHVtYm5haWwnXSA9ICdVcGxvYWQgZWVuIG5pZXV3ZSBtaW5pYXR1dXInOwokbGFuZ1snaW5mb19zdW1tYXJ5J10gPSAnRWVuIGtvcnRlIGJlc2NocmlqdmluZyB2YW4gaGV0IGJlc3RhbmQgKG9wdGlvbmVlbCwgYW5kZXJzIHdvcmR0IGRlIGJlc3RhbmRzbmFhbSB6b25kZXIgZXh0ZW5zaWUgZ2VicnVpa3QpICc7CiRsYW5nWydpbmZvX2NhdGVnb3J5bmFtZSddID0gJ0VlbiBrb3J0ZSBuYWFtIHZvb3IgZGUgY2F0ZWdvcmllJzsKJGxhbmdbJ2luZm9fY2F0ZWdvcnlkZXNjJ10gPSAnRWVuIGJlc2NocmlqdmluZyB2YW4gZGUgY2F0ZWdvcmllJzsKJGxhbmdbJ2luZm9fY2F0ZWdvcnlwYXRoJ10gPSAnRGUgbWFwbmFhbSBiaW5uZW4gZGUgdXBsb2Fkcy1tYXAgZGllIGdlYnJ1aWt0IHphbCB3b3JkZW4gb20gYmVzdGFuZGVuIGluIGRlemUgY2F0ZWdvcmllIGluIG9wIHRlIHNsYWFuLic7CiRsYW5nWydpbmZvX2Rlc3RuYW1lJ10gPSAnR2VicnVpayBoZXQgJiMwMzk7VXBsb2FkIGFscyYjMDM5OyB2ZWxkIG9tIGRlIG5hYW0gdmFuIGhldCBiZXN0YW5kIHRpamRlbnMgaGV0IHVwbG9hZGVuIHRlIHZlcmFuZGVyZW4gKGJpanYuIGFuZGVyZS1uYWFtLnBkZikuIExhYXQgbGVlZyBvbSBkZSBiZXN0YWFuZGUgYmVzdGFuZHNuYWFtIHRlIGdlYnJ1aWtlbi4nOwokbGFuZ1snZXJyb3JfY2FudGNyZWF0ZWRpcmVjdG9yeSddID0gJ0tvbiBkZSBtYXAgbmlldCBhYW5tYWtlbic7CiRsYW5nWydlcnJvcl9ub21haWxlcm1vZHVsZSddID0gJ0VyIGtvbiBnZWVuIGluc3RhbnRpZSB2YW4gZGUgQ01TTWFpbGVyLW1vZHVsZSB3b3JkZW4gZ2VtYWFrdCc7CiRsYW5nWyd1cGxvYWRfbm90aWZpY2F0aW9uJ10gPSAnRWVuIG5pZXV3IGJlc3RhbmQgaXMgZ2UmdXVtbDtwbG9hZCc7CiRsYW5nWyd0aXRsZV9lbWFpbF9vbl91cGxvYWQnXSA9ICdTdHV1ciB1cGxvYWQtc3BlY2lmaWNhdGllcyBuYWFyJzsKJGxhbmdbJ2VtYWlsX3RlbXBsYXRlJ10gPSAnRS1tYWlsIHNqYWJsb29uJzsKJGxhbmdbJ3RpdGxlX2R1bW15X2luZGV4X2h0bWwnXSA9ICdDcmUmZXVtbDtlciBsZWdlIGluZGV4Lmh0bWwgYmVzdGFuZGVuIGluIGllZGVyZSBtYXA/PGJyLz48ZW0+QmVzdGFhbmRlIGluZGV4Lmh0bWwgYmVzdGFuZGVuIGJsaWp2ZW4gYmVob3VkZW48L2VtPic7CiRsYW5nWydhYm91dCddID0gJ092ZXInOwokbGFuZ1snZXJyb3JfcGVybWlzc2lvbmRlbmllZCddID0gJ1RvZWdhbmcgZ2V3ZWlnZXJkLiBDb250cm9sZWVyIHV3IHJlY2h0ZW4uJzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90d3JpdGUnXSA9ICdLb24gbmlldCBzY2hyaWp2ZW4nOwokbGFuZ1snYWRkY2F0ZWdvcnknXSA9ICdWb2VnIGNhdGVnb3JpZSB0b2UnOwokbGFuZ1snYWxsJ10gPSAnQWxsZXMnOwokbGFuZ1snYXJleW91c3VyZSddID0gJ1dlZXQgdSBoZXQgemVrZXI/JzsKJGxhbmdbJ2F1dGhvciddID0gJ0F1dGV1cic7CiRsYW5nWydjYW5jZWwnXSA9ICdBbm51bGVlcic7CiRsYW5nWydjYW5ub3Rtb2RpZnlwYXRoJ10gPSAnKEhldCBwYWQga2FuIG5pZXQgd29yZGVuIGFhbmdlcGFzdCknOwokbGFuZ1snY2F0ZWdvcmllcyddID0gJ0NhdGVnb3JpZSZldW1sO24nOwokbGFuZ1snY2F0ZWdvcnknXSA9ICdDYXRlZ29yaWUnOwokbGFuZ1snbWVzc2FnZV9jYXRlZ29yeWFkZGVkJ10gPSAnQ2F0ZWdvcmllIHRvZWdldm9lZ2QnOwokbGFuZ1snZGF0ZSddID0gJ0RhdHVtJzsKJGxhbmdbJ2RhdGV1cGxvYWRlZCddID0gJ1VwbG9hZC1kYXR1bSc7CiRsYW5nWydkZWZhdWx0J10gPSAnU3RhbmRhYXJkZW4nOwokbGFuZ1snZGVsZXRlJ10gPSAnVmVyd2lqZGVyJzsKJGxhbmdbJ2Rlc2NyaXB0aW9uJ10gPSAnQmVzY2hyaWp2aW5nJzsKJGxhbmdbJ2Rlc3RuYW1lJ10gPSAnVXBsb2FkIGFscyc7CiRsYW5nWydkZXRhaWxfdGVtcGxhdGUnXSA9ICdEZXRhaWxzamFibG9vbic7CiRsYW5nWydkb3dubG9hZGVkJ10gPSAnQmVzdGFuZCAlcyBpcyBnZWRvd25sb2FkLic7CiRsYW5nWydkb3dubG9hZHMnXSA9ICdEb3dubG9hZHMgJzsKJGxhbmdbJ2VkaXQnXSA9ICdCZXdlcmsnOwokbGFuZ1snZWRpdGNhdGVnb3J5J10gPSAnQmV3ZXJrIENhdGVnb3JpZSc7CiRsYW5nWydlZGl0dXBsb2FkJ10gPSAnQmV3ZXJrIFVwbG9hZCc7CiRsYW5nWydlcnJvciddID0gJ0ZvdXQhJzsKJGxhbmdbJ2Vycm9yX3BhdGhpbnVzZTInXSA9ICdFZW4gY2F0ZWdvcmllIGRpZSBkaXQgcGFkIGdlYnJ1aWt0ICglcykgYmVzdGFhdCBhbCc7CiRsYW5nWydlcnJvcl9wYXRoaW51c2UnXSA9ICdFZW4gY2F0ZWdvcmllIGRpZSBkYXQgcGFkIGdlYnJ1aWt0IGJlc3RhYXQgYWwnOwokbGFuZ1snZXJyb3JfY2F0ZWdvcnlleGlzdHMyJ10gPSAnRm91dDogQ2F0ZWdvcmllIGdlbmFhbWQgJXMgYmVzdGFhdCBhbCc7CiRsYW5nWydlcnJvcl9jYXRlZ29yeWV4aXN0cyddID0gJ0ZvdXQ6IGNhdGVnb3JpZSBiZXN0YWF0IGFsJzsKJGxhbmdbJ2Vycm9yX2NhdGVnb3J5bm90ZW1wdHknXSA9ICdGb3V0ISBLYW4gZ2VlbiBjYXRlZ29yaWUgdmVyd2lqZGVyZW4gZGllIG5pZXQgbGVlZyBpcyc7CiRsYW5nWydlcnJvcl9jYXRlZ29yeW5vdGZvdW5kJ10gPSAnRm91dDogY2F0ZWdvcmllIG5pZXQgZ2V2b25kZW4nOwokbGFuZ1snZXJyb3JfZGJlcnJvciddID0gJ0ZvdXQ6IERhdGFiYXNlZm91dCEnOwokbGFuZ1snZXJyb3JfZW1wdHljYXRlZ29yeSddID0gJ0ZvdXQ6IExlZ2UgY2F0ZWdvcmllISc7CiRsYW5nWydlcnJvcl9lbXB0eXBhdGgnXSA9ICdGb3V0OiBMZWVnIHBhZCEnOwokbGFuZ1snZXJyb3JfZmlsZWV4aXN0cyddID0gJ0ZvdXQhIEJlc3RhbmQgJXMgYmVzdGFhdCBhbC4nOwokbGFuZ1snZXJyb3JfZmlsZW5vdGZvdW5kJ10gPSAnRm91dCEgQmVzdGFuZCAlcyBpcyBuaWV0IGdldm9uZGVuLic7CiRsYW5nWydlcnJvcl9pbnN1ZmZpY2llbnRwYXJhbXMnXSA9ICdGb3V0OiBPbnZvbGRvZW5kZSBwYXJhbWV0ZXJzIGFhbiBkZSBtb2R1bGUgZ2VnZXZlbiEnOwokbGFuZ1snZXJyb3JfaW52YWxpZGF1dGhvciddID0gJ0ZvdXQ6IE9uZ2VsZGlnZSAob2YgbGVnZSkgYXV0ZXVyLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkY2F0ZWdvcnknXSA9ICdGb3V0OiBPbmdlbGRpZ2UgKG9mIGxlZ2UpIGNhdGVnb3JpZS4nOwokbGFuZ1snZXJyb3JfaW52YWxpZGRlc2NyaXB0aW9uJ10gPSAnRm91dDogT25nZWxkaWdlIChvZiBsZWdlKSBiZXNjaHJpanZpbmcuJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRmaWxlJ10gPSAnRm91dDogT25nZWxkaWdlIChvZiBsZWdlKSBiZXN0YW5kc25hYW0uJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1cGxvYWRmaWxlbmFtZSddID0gJ0ZvdXQ6IEJlc3RhbmRlbiBtb2V0IGRpZSBuYWFtICh3YWFyc2NoaWpubGlqayBkZSBleHRlbnNpZSkgemlqbiBuaWV0IHRvZWdlc3RhYW4gKCVzKS4nOwokbGFuZ1snZXJyb3JfaW52YWxpZHVwbG9hZGlkJ10gPSAnRm91dDogT25nZWxkaWdlIHVwbG9hZC1pZCc7CiRsYW5nWydlcnJvcl9ub2ZpbGVzJ10gPSAnRm91dDogR2VlbiBvdmVyZWVua29tc3RpZ2UgYmVzdGFuZGVuISc7CiRsYW5nWydmaWxlcyddID0gJ0Jlc3RhbmRlbic7CiRsYW5nWydmaXhtZSddID0gJ0hlcnN0ZWwgc3BhdGllcyc7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdCZXN0YW5kZW4gKFVwbG9hZHMtbW9kdWxlKSc7CiRsYW5nWydpZCddID0gJ0lEJzsKJGxhbmdbJ2luc3RhbGxlZCddID0gJ01vZHVsZSB2ZXJzaWUgJXMgIGlzIGdlJml1bWw7bnN0YWxsZWVyZC4nOwokbGFuZ1snaXBfYWRkcmVzcyddID0gJ0lQLWFkcmVzJzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnRWVuIG1vZHVsZSBvbSBnZWJydWlrZXJzIGJlc3RhbmRlbiB0ZSBsYXRlbiB1cGxvYWRlbiBlbiBvbSBkZSBnZXVwbG9hZGUgYmVzdGFuZGVuIHRlIGJlaGVyZW4uJzsKJGxhbmdbJ25hbWUnXSA9ICdOYWFtJzsKJGxhbmdbJ3JlbmFtZW1lc3NhZ2UnXSA9ICdWZXJhbmRlciBoaWVyIGRlIG5hYW0gb20gZGUgYmVzdGFuZHNuYWFtIHRlIHZlcmFuZGVyZW4uJzsKJGxhbmdbJ3BhdGgnXSA9ICdQYWQnOwokbGFuZ1sncGF0aG1lc3NhZ2UnXSA9ICdWZXJhbmRlciBkZSBjYXRlZ29yaWUgaGllciBvbSBoZXQgYmVzdGFuZCBuYWFyIGVlbiBhbmRlcmUgbWFwIHRlIHZlcnBsYWF0c2VuJzsKJGxhbmdbJ3BhdGhpbnVwbG9hZHMnXSA9ICcoUmVsYXRpZWYgdGVuIG9wemljaHRlIHZhbiBkZSB1cGxvYWRzLW1hcCknOwokbGFuZ1sncG9zdGluc3RhbGwnXSA9ICc8cD5EZSBVcGxvYWRzLW1vZHVsZSBpcyBtZXQgc3VjY2VzIGdlJml1bWw7bnN0YWxsZWVyZC4gWm9yZyBkYXQgaGV0ICAmcXVvdDtNYW5hZ2UgVXBsb2FkcyZxdW90OyByZWNodCBpcyB0b2VnZWtlbmQhPC9wPg0KPHA+PHN0cm9uZz5XYWFyc2NodXdpbmc8L3N0cm9uZz4gLSBIZXQganVpc3RlIGdlZHJhZyB2YW4gZGV6ZSBtb2R1bGUgaXMgYWZoYW5rZWxpamsgdmFuIHZlbGUgcGhwLWNvbmZpZ3VyYXRpZXZhcmlhYmVsZW4uIERlemUgYmV2YXR0ZW4gPGVtPihtYWFyIHppam4gbmlldCBiZXBlcmt0IHRvdCk8L2VtPiwgcGhwJiMwMzk7cyBtZW1vcnlfbGltaXQsIHNhZmVfbW9kZSwgZmlsZV91cGxvYWRzLCB1cGxvYWRzX21heF9maWxlc2l6ZSBlbiBtYXhfZXhlY3V0aW9uX3RpbWUuIERlemUgdmFyaWFiZWxlbiBtb2V0ZW4gbW9nZWxpamsgd29yZGVuIGFhbmdlcGFzdCBvbSBkZXplIG1vZHVsZSBjb3JyZWN0IHRlIGxhdGVuIHdlcmtlbi4gSGV0IHdvcmR0IGdlYWR2aXNlZXJkIGRhdCB1IHNhbWVuIG1ldCB1dyBzeXN0ZWVtYmVoZWVyZGVyIG9mIGhvc3QgcHJvdmlkZXIgZGV6ZSBpbnN0ZWxsaW5nZW4gYWZzdGVtdCBvcCB1dyB3ZW5zZW4uPC9wPic7CiRsYW5nWydwb3N0dW5pbnN0YWxsJ10gPSAnRGUgVXBsb2Fkcy1tb2R1bGUgaXMgbWV0IHN1Y2NlcyB2ZXJ3aWpkZXJkLiBFciB6aWpuIGdlZW4gYmVzdGFuZGVuIHZlcndpamRlcmQgdWl0IGRlIHVwbG9hZHMtbWFwLic7CiRsYW5nWydwcmVmZXJlbmNlcyddID0gJ1Zvb3JrZXVyZW4nOwokbGFuZ1sncHJlZnN1cGRhdGVkJ10gPSAnTW9kdWxldm9vcmtldXJlbiB6aWpuIGJld2FhcmQuJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeWRlc2MnXSA9ICdCZXNjaHJpanZpbmcnOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5bGlzdGFibGUnXSA9ICdCZXN0YW5kZW4gaW4gZGV6ZSBtYXAga3VubmVuIHdvcmRlbiB3ZWVyZ2VnZXZlbic7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnluYW1lJ10gPSAnQ2F0ZWdvcmllbmFhbSc7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnlwYXRoJ10gPSAnU2VydmVyIHBhZCc7CiRsYW5nWydwcm9tcHRfZGVsZXRlZGlyZWN0b3J5J10gPSAnVmVyd2lqZGVyIGNhdGVnb3JpZW1hcD8nOwokbGFuZ1sncHJvbXB0X21heF91cGxvYWRzaXplJ10gPSAnTWF4aW1hYWwgdG9lZ2VzdGFuZSBiZXN0YW5kc2dyb290dGUgKEtiKSc7CiRsYW5nWydwcm9tcHRfdmFsaWRfdXBsb2FkZXh0ZW5zaW9ucyddID0gJ0dlbGRpZ2UgdXBsb2FkIGV4dGVudGllcyc7CiRsYW5nWydzY2FuJ10gPSAnWm9layc7CiRsYW5nWydzZWxlY3RjYXRlZ29yeSddID0gJ1NlbGVjdGVlciBjYXRlZ29yaWUnOwokbGFuZ1snc2l6ZSddID0gJ0dyb290dGUnOwokbGFuZ1snc2l6ZWtiJ10gPSAnR3Jvb3R0ZSAoS2IpJzsKJGxhbmdbJ3N1Ym1pdCddID0gJ1ZlcnplbmQnOwokbGFuZ1snc3VtbWFyeV90ZW1wbGF0ZSddID0gJ09tc2NocmlqdmluZ3NzamFibG9vbic7CiRsYW5nWydzdW1tYXJ5J10gPSAnT21zY2hyaWp2aW5nJzsKJGxhbmdbJ3RpdGxlX2FkbWluX3BhbmVsJ10gPSAnVXBsb2Fkcy1tb2R1bGUnOwokbGFuZ1sndGl0bGVfbW9kX2FkbWluJ10gPSAnTW9kdWxlYmVoZWVycGFuZWVsJzsKJGxhbmdbJ3RpdGxlX21vZF9wcmVmcyddID0gJ01vZHVsZWluc3RlbGxpbmdlbic7CiRsYW5nWyd0aXRsZV9zdWJuZXRfZXhjbHVzaW9ucyddID0gJ1NsdWl0IGRlemUgc3VibmV0dGVuIHVpdCB2YW4gZGUgc3RhdGlzdGlla2VuJzsKJGxhbmdbJ3RpdGxlX3ZhbGlkX3VwbG9hZGV4dGVuc2lvbnMnXSA9ICdHZWxkaWdlIGV4dGVuc2llcyc7CiRsYW5nWyd1bmluc3RhbGxlZCddID0gJ01vZHVsZSBnZWRlJml1bWw7bnN0YWxsZWVyZC4nOwokbGFuZ1sndXBncmFkZWQnXSA9ICdNb2R1bGUgZ2UmdXVtbDtwZ3JhZGUgbmFhciB2ZXJzaWUgJXMuJzsKJGxhbmdbJ3VwbG9hZCddID0gJ1VwbG9hZCAnOwokbGFuZ1sndXBsb2FkZWQnXSA9ICdCZXN0YW5kICVzIGlzIGdlJnV1bWw7cGxvYWQgZG9vciAlcy4nOwokbGFuZ1sncmVwbGFjZWQnXSA9ICdCZXN0YW5kICVzIGlzIHZlcnZhbmdlbiBkb29yICVzLic7CiRsYW5nWydkZWxldGVkJ10gPSAnQmVzdGFuZCAlcyBpcyB2ZXJ3aWpkZXJkLic7CiRsYW5nWyd1cGxvYWRmb3JtX3RlbXBsYXRlJ10gPSAnVXBsb2Fkc2phYmxvb24nOwokbGFuZ1sndXNlcm5hbWUnXSA9ICdHZWJydWlrZXJzbmFhbSc7CiRsYW5nWyd3YXJuaW5nX2RlbGV0ZWNhdGVnb3J5J10gPSAnV2FhcnNjaHV3aW5nOiB3ZWVzIHZvb3J6aWNodGlnIG1ldCBoZXQgdmVyd2lqZGVyZW4gdmFuIGNhdGVnb3JpZSZldW1sO24uIEVyIGt1bm5lbiBiZXN0YW5kZW4gdmVybG9yZW4gZ2Fhbic7Cg==]]></data>
	</file>
	<file>
	  <filename>/lang/ext/pl_PL.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ3BhZ2VsaW1pdCddID0gJ1BsaWsmb2FjdXRlO3cgbmEgc3Ryb27EmSc7CiRsYW5nWyd2aWV3J10gPSAnUG9rYcW8IHRlbiBwbGlrJzsKJGxhbmdbJ2VkaXRfdGhpc19maWxlJ10gPSAnRWRpdCBUaGlzIEZpZWxkJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeV9zY2FubmFibGUnXSA9ICdDenkgc3p1a2HEhyBwbGlrJm9hY3V0ZTt3IGF1dG9tYXR5Y3puaWUgdyB0ZWoga2F0ZWdvcmlpPyc7CiRsYW5nWydpbmZvX2NhdGVnb3J5X3NjYW5uYWJsZSddID0gJ1doZW4gYWNjZXNzZWQgZnJvbSB0aGUgZnJvbnQgZW5kIHRoaXMgY2F0ZWdvcnkgaXMgYXV0b21hdGljYWxseSBzY2FubmVkIGZvciBuZXcgZmlsZXMnOwokbGFuZ1sncHJvbXB0X3RsX2FjY2VzcyddID0gJ1RpbWUgTGltaXRlZCBBY2Nlc3MnOwokbGFuZ1sncHJvbXB0X2FsbG93X3VwbG9hZF9zZW5kZmlsZSddID0gJ0FsbG93IHNlbmRpbmcgZmlsZXMgaW1tZWRpYXRlbHkgb24gYWRtaW4gdXBsb2FkJzsKJGxhbmdbJ21zZ19hdXRvX2RlbGV0ZV9maWxlJ10gPSAnQXV0b21hdGljYWxseSBkZWxldGVkIGV4cGlyZWQgZmlsZTogJXMnOwokbGFuZ1snbXNnX2F1dG9fZGVsZXRlX2ZpbGVfZmFpbGVkJ10gPSAnUGVybWlzc2lvbnMgcHJvYmxlbSwgYXV0byBkZWxldGUgb2YgJXMgZmFpbGVkJzsKJGxhbmdbJ2luZm9fY2F0ZWdvcnlfZXhwaXJlc19ocnMnXSA9ICdTcGVjaWZ5IGEgbnVtYmVyIG9mIGhvdXJzIGJlZm9yZSBmaWxlcyBpbiB0aGlzIGNhdGVnb3J5IGNhbiBiZSBkZWxldGVkLiAgVXNlIGEgdmFsdWUgb2YgMCB0byBpbmRpY2F0ZSB0aGF0IGZpbGVzIHNob3VsZCBub3QgYmUgZGVsZXRlZCc7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnlfZXhwaXJlc19ocnMnXSA9ICdOdW1iZXIgb2YgaG91cnMgdW50aWwgZmlsZXMgaW4gdGhpcyBjYXRlZ29yeSBhcmUgYXV0b21hdGljYWxseSBkZWxldGVkJzsKJGxhbmdbJ2luZm9fZGZsdF9jYXRlZ29yeV9leHBpcnknXSA9ICdUaGUgZGVmYXVsdCB2YWx1ZSBmb3IgbmV3IGNhdGVnb3JpZXMgdGhhdCBzcGVjaWZpZXMgaG93IGxvbmcgZmlsZXMgaW4gdGhpcyBjYXRlZ29yeSBleGlzdCBiZWZvcmUgdGhleSBhcmUgYXV0b21hdGljYWxseSBkZWxldGVkLiAgVXNlIGEgdmFsdWUgb2YgMCB0byBpbmRpY2F0ZSBubyBkZWxldGlvbic7CiRsYW5nWyd0aXRsZV9jYXRlZ29yeV9leHBpcnknXSA9ICdDYXRlZ29yeSBleHBpcnkgcGVyaW9kIDxlbT4oaHJzKTwvZW0+JzsKJGxhbmdbJ2luZm9fY2F0ZWdvcnlkZWxldGFibGUnXSA9ICdBdXRob3JpemVkIHVzZXJzIHdpbGwgaGF2ZSBwZXJtaXNzaW9uIHRvIGRlbGV0ZSB0aGVzZSBmaWxlcy4gIFRoaXMgbWVhbnMgdGhhdCBhIHVybCB3aWxsIGJlIHByb3ZpZGVkIGluIHRoZSBhcHByb3ByaWF0ZSB0ZW1wbGF0ZXMgdG8gYWxsb3cgZGVsZXRpbmcgb2YgdGhlIGZpbGUuICBBIHdlYnNpdGUgZGV2ZWxvcGVyIGNhbiB1c2UgYXBwcm9wcmlhdGUgc21hcnR5IGxvZ2ljIHRvIHNob3cgYSBsaW5rIHRvIGF1dGhvcml6ZWQgdXNlcnMuJzsKJGxhbmdbJ2NvcHlfZmlsZXMnXSA9ICdLb3BpdWogcGxpa2knOwokbGFuZ1snZXJyb3JfZmlsZXRvb2xhcmdlJ10gPSAnVGhlIGZpbGUgeW91IGF0dGVtcHRlZCB0byB1cGxvYWRlIGlzIGxhcmdlciB0aGFuIHRoZSBDTVNNUyBtYXhpbXVtIHVwbG9hZCBmaWxlIHNpemUnOwokbGFuZ1snYXJleW91c3VyZV9kZWxldGVjYXRlZ29yeSddID0gJ05hIHBld25vIHVzdW7EhcSHIHTEmSBrYXRlZ29yacSZPyc7CiRsYW5nWydlcnJvcl9kZWxldGUnXSA9ICdBbiBpdGVtIGNvdW5kIG5vdCBiZSBkZWxldGVkICglcyknOwokbGFuZ1snY29uZmlybV9jYXRfbXVsdGlhY3Rpb24nXSA9ICdDenkgbmEgcGV3bm8gcHJ6ZXByb3dhZHppxIcgYWtjasSZIGRsYSB6YXpuYWN6b255Y2gga2F0ZWdvcmlpPyc7CiRsYW5nWydlcnJvcl9ub3RoaW5nX3NlbGVjdGVkJ10gPSAnQsWCxIVkOiBOaWMgbmllIHphem5hY3pvbm8nOwokbGFuZ1snd2l0aF9zZWxlY3RlZCddID0gJ1dpdGggU2VsZWN0ZWQ6JzsKJGxhbmdbJ2Vycm9yX3JlcGxhY2VfbWlzbWF0Y2hlZF9maWxlZXh0J10gPSAnV2hlbiByZXBsYWNpbmcgYSBmaWxlLCB5b3UgbXVzdCB1cGxvYWQgYSBmaWxlIG9mIHRoZSBzYW1lIGV4YWN0IHR5cGUgKGJ5IGZpbGUgZXh0ZW5zaW9uKS4gIFRoZSBmaWxlIHlvdSBzZWxlY3RlZCBkb2VzIG5vdCBtYXRjaCB0aGF0IG9mIHRoZSBvcmlnaW5hbCBmaWxlLic7CiRsYW5nWydyZXBsYWNlJ10gPSAnWmFzdMSFcCc7CiRsYW5nWydpbmZvX3JlcGxhY2VmaWxlJ10gPSAnWW91IG1heSB1cGxvYWQgYSByZXBsYWNlbWVudCBmaWxlLCBpZiB0aGUgZmlsZSBpcyBhbiBpbWFnZSB0eXBlLCBhbmQgeW91IGhhdmUgbm90IHNwZWNpZmllZCBhIHJlcGxhY2VtZW50IHRodW1ibmFpbCwgYSBuZXcgdGh1bWJuYWlsIHdpbGwgYmUgZ2VuZXJhdGVkJzsKJGxhbmdbJ3Byb21wdF9yZXBsYWNlZmlsZSddID0gJ1VwbG9hZCByZXBsYWNlbWVudCBmaWxlJzsKJGxhbmdbJ3RpdGxlX2ZpeHNwYWNlcyddID0gJ0ZpeCBzcGFjZXMgaW4gdGhlIGZpbGVuYW1lJzsKJGxhbmdbJ2NhdGVnb3J5X2NvcGllZCddID0gJ0NhdGVnb3J5IHN1Y2Nlc3NmdWxseSBjb3BpZWQnOwokbGFuZ1snZXJyb3JfZHVwbGljYXRlcGF0aCddID0gJ1BsZWFzZSBzcGVjaWZ5IGEgZGlyZWN0b3J5IG5hbWUgdGhhdCBpcyBkaWZmZXJlbnQgZnJvbSB0aGUgc291cmNlLCBhbmQgaXMgbm90IGFscmVhZHkgaW4gdXNlJzsKJGxhbmdbJ29wZXJhdGlvbl9jYW5jZWxsZWQnXSA9ICdPcGVyYXRpb24gQ2FuY2VsbGVkJzsKJGxhbmdbJ3NvdXJjZSddID0gJ1NvdXJjZSc7CiRsYW5nWydkZXN0aW5hdGlvbiddID0gJ0Rlc3RpbmF0aW9uJzsKJGxhbmdbJ3Byb21wdF9jb3B5X2ZpbGVzJ10gPSAnQ29weSBjYXRlZ29yeSBGaWxlcyc7CiRsYW5nWydpbmZvX2NvcHlfZmlsZXMnXSA9ICdDb3B5IHRoZSBmaWxlcyBmcm9tIHRoZSBzb3VyY2UgY2F0ZWdvcnkgdG8gdGhlIGRlc3RpbmF0aW9uIGNhdGVnb3J5JzsKJGxhbmdbJ2V4dHJhJ10gPSAnRXh0cmEnOwokbGFuZ1snY29weSddID0gJ0NvcHknOwokbGFuZ1snc2VsZWN0b25lJ10gPSAnU2VsZWN0IE9uZSc7CiRsYW5nWydhdXRvd2F0ZXJtYXJrJ10gPSAnQXV0b21hdGljYWxsIHBsYWNlIHdhdGVybWFya3Mgb24gaW1hZ2VzJzsKJGxhbmdbJ2ltYWdlX3NldHRpbmdzJ10gPSAnSW1hZ2UgU2V0dGluZ3MnOwokbGFuZ1sncHJvbXB0X2dldGZpbGVfcmVzdWx0cGFnZSddID0gJ1BhZ2UgdG8gdXNlIGZvciBlcnJvcnMgb3Igb3RoZXIgbWVzc2FnZXMgcmVsYXRlZCB0byBmaWxlIGRvd25sb2FkaW5nJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRfa2V5J10gPSAnVGhlIHVwbG9hZCBrZXkgc3BlY2lmaWVkIGlzIGludmFsaWQgKG1heWJlIGl0IGhhcyByZWFjaGVkIGl0cyBtYXhpbXVtIGRvd25sb2FkIGNhcGFjaXR5IG9yIGhhcyBleHBpcmVkKSc7CiRsYW5nWydkZmx0X3RpbWVsaW1pdGVkX3N1YmplY3QnXSA9ICd7JHNpdGVuYW1lfSAtIFV6eXNrYcWCZcWbIGRvc3TEmXAgZG8geyRlbnRyeS0+bmFtZXxzdHJpcF90YWdzfSBuYSBva3JlxZtsb255IGN6YXMnOwokbGFuZ1sncHJvbXB0X3RpbWVsaW1pdGVkX3N1YmplY3QnXSA9ICdTdWJqZWN0IGZvciBlbWFpbCBjcmVhdGVkIHdoZW4gc2VuZGluZyBhIHRpbWUgbGltaXRlZCBVUkwnOwokbGFuZ1sncHJvbXB0X3RpbWVsaW1pdGVkX2F1dG9kZWxldGUnXSA9ICdBdXRvIGRlbGV0ZSBleHBpcmVkIGVudHJpZXMgYWZ0ZXIgTiBob3VycyA8ZW0+KHNwZWNpZnkgMCB0byBkaXNhYmxlIGF1dG9kZWxldGUpPC9lbT46JzsKJGxhbmdbJ3Byb21wdF90aW1lbGltaXRlZF9zZW5kaXQnXSA9ICdTZW5kIHRoaXMgdXJsIHRvIHRoZSBkZXNpZ25hdGVkIGVtYWlsIGFkZHJlc3M/JzsKJGxhbmdbJ3VybF9rZXknXSA9ICdVUkwgS2V5JzsKJGxhbmdbJ2NyZWF0ZWQnXSA9ICdVdHdvcnpvbm8nOwokbGFuZ1snZXhwaXJlcyddID0gJ1d5Z2FzYSc7CiRsYW5nWydhZGRlZGl0X3RpbWVsaW1pdGVkX2tleSddID0gJ0FkZC9FZGl0IFRpbWUgTGltaXRlZCBLZXknOwokbGFuZ1sndGltZV9saW1pdGVkX2tleV9hZGRlZCddID0gJ1RpbWUgTGltaXRlZCBLZXkgQWRkZWQnOwokbGFuZ1snbnVtX2hvdXJzJ10gPSAnTnVtYmVyIG9mIEhvdXJzJzsKJGxhbmdbJ251bV9kb3dubG9hZHMnXSA9ICdOdW1iZXIgb2YgRG93bmxvYWRzJzsKJGxhbmdbJ2VtYWlsX2FkZHJlc3MnXSA9ICdFbWFpbCBBZGRyZXNzJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdfaW52YWxpZCddID0gJ0EgcmVxdWlyZWQgdmFsdWUgaXMgbWlzc2luZyBvciBpbnZhbGlkOiAlcyc7CiRsYW5nWydhZGRfdGltZWxpbWl0ZWRfa2V5J10gPSAnQWRkIFRpbWUgTGltaXRlZCBLZXknOwokbGFuZ1snZmlsZV9pbmZvMiddID0gJ0ZpbGUgJXMgKGlkPSVkKSc7CiRsYW5nWydpbmZvX3RpbWVsaW1pdGVkX2Rvd25sb2FkcyddID0gJ1NwZWNpZnkgdGhlIGRlZmF1bHQgbnVtYmVyIG9mIHRpbWVzIHRoYXQgYSBmaWxlIGlkZW50aWZpZWQgYnkgYSBwYXJ0aWN1bGFyIGtleSBjYW4gYmUgZG93bmxvYWRlZCc7CiRsYW5nWydwcm9tcHRfdGltZWxpbWl0ZWRfZG93bmxvYWRzJ10gPSAnRGVmYXVsdCBOdW1iZXIgb2YgRG93bmxvYWRzJzsKJGxhbmdbJ2luZm9fdGltZWxpbWl0ZWRfaG91cnMnXSA9ICdTcGVjaWZ5IHRoZSBkZWZhdWx0IG51bWJlciBvZiBob3VycyB0aGF0IGEgdGltZSBsaW1pdGVkIGtleSBpcyB2YWxpZCBmb3IuICBTcGVjaWZ5IDAgZm9yIHVubGltaXRlZCc7CiRsYW5nWydwcm9tcHRfdGltZWxpbWl0ZWRfaG91cnMnXSA9ICdOdW1iZXIgb2YgaG91cnMgYSBUaW1lIExpbWl0ZWQgS2V5IGlzIHZhbGlkIGZvcic7CiRsYW5nWyd0aW1lbGltaXRlZF91cmxfc2V0dGluZ3MnXSA9ICdUaW1lIExpbWl0ZWQgS2V5IFNldHRpbmdzJzsKJGxhbmdbJ21hbmFnZV90aW1lbGltaXRlZCddID0gJ01hbmFnZSBUaW1lIExpbWl0ZWQgQWNjZXNzJzsKJGxhbmdbJ3VwbG9hZGluZ19zZXR0aW5ncyddID0gJ0ZpbGUgVXBsb2FkIFNldHRpbmdzJzsKJGxhbmdbJ2dlbmVyYWxfc2V0dGluZ3MnXSA9ICdHxYImb2FjdXRlO3duZSB1c3Rhd2llbmlhJzsKJGxhbmdbJ3RodW1ibmFpbF9zZXR0aW5ncyddID0gJ0dlbmVyb3dhbmllIG1pbmlhdHVyZWsnOwokbGFuZ1sndGl0bGVfcmVkaXJlY3Rfb25fc2VuZGZpbGUnXSA9ICdQYWdlIHRvIHJlZGlyZWN0IHRvIGFmdGVyIHNlbmRpbmcgYSBmaWxlJzsKJGxhbmdbJ2xibF9iYWNrJ10gPSAnV3Imb2FjdXRlO8SHJzsKJGxhbmdbJ2xibF90ZW1wbGF0ZXMnXSA9ICdNb2RpZnkgVGVtcGxhdGVzJzsKJGxhbmdbJ3Byb21wdF9wdWJsaWNfZmllbGQnXSA9ICdGaWVsZCBpcyBwdWJsaWMgPGVtPihjYW4gYmUgdmlld2VkIGJ5IHNpdGUgdmlzaXRvcnMpPC9lbT4nOwokbGFuZ1sndXBsb2FkX2VkaXRlZCddID0gJ0ZpbGUgRGV0YWlscyBFZGl0ZWQgb24gJXMnOwokbGFuZ1snaW5mb190aHVtYm5haWwnXSA9ICdPcGNqb25hbG55IHBsaWsgbWluaWF0dXJ5JzsKJGxhbmdbJ3VwbG9hZF9maWxlJ10gPSAnV2dyYWogbm93eSBwbGlrJzsKJGxhbmdbJ21zZ19maWVsZF9kZWxldGVkJ10gPSAnRmllbGQgZGVsZXRlZCc7CiRsYW5nWydhc2tfZGVsZXRlX2ZpZWxkJ10gPSAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSB0aGlzIGZpZWxkIGRlZmluaXRpb24gYW5kIGFsbCBhc3NvY2lhdGVkIHZhbHVlcz8nOwokbGFuZ1sneWVzJ10gPSAnVGFrJzsKJGxhbmdbJ25vJ10gPSAnTmllJzsKJGxhbmdbJ3R5cGUnXSA9ICdUeXBlJzsKJGxhbmdbJ2ZpZWxkdHlwZV9tdWx0aXNlbGVjdCddID0gJ011bHRpc2VsZWN0IExpc3QnOwokbGFuZ1snZmllbGR0eXBlX2Ryb3Bkb3duJ10gPSAnRHJvcGRvd24gTGlzdCc7CiRsYW5nWydmaWVsZHR5cGVfY2hlY2tib3gnXSA9ICdDaGVja2JveCc7CiRsYW5nWydmaWVsZHR5cGVfdGV4dGFyZWEnXSA9ICdUZXh0IEFyZWEnOwokbGFuZ1snZmllbGR0eXBlX3RleHRpbnB1dCddID0gJ1RleHQgSW5wdXQnOwokbGFuZ1sncHJvbXB0X3VzZV93eXNpd3lnJ10gPSAnVXNlIHRoZSB3eXNpd3lnIHdoZW4gZWRpdGluZyB0aGUgdmFsdWUgZm9yIHRoaXMgZmllbGQnOwokbGFuZ1sncHJvbXB0X2RlZmF1bHRfY29udGVudCddID0gJ0RlZmF1bHQgY29udGVudCBmb3IgdGV4dCBhcmVhJzsKJGxhbmdbJ3Byb21wdF9kcm9wZG93bl9vcHRpb25zJ10gPSAnT3B0aW9ucyAob25lIGVudHJ5IHBlciBsaW5lKSc7CiRsYW5nWydwcm9tcHRfZmllbGRfbWF4bGVuZ3RoJ10gPSAnRmllbGQgTWF4aW11bSBMZW5ndGgnOwokbGFuZ1sncHJvbXB0X2ZpZWxkX2xlbmd0aCddID0gJ0ZpZWxkIExlbmd0aCc7CiRsYW5nWydwcm9tcHRfZmllbGRfdHlwZSddID0gJ0ZpZWxkIFR5cGUnOwokbGFuZ1sncHJvbXB0X2ZpZWxkX25hbWUnXSA9ICdGaWVsZCBOYW1lJzsKJGxhbmdbJ3RpdGxlX2FkZF9maWVsZCddID0gJ0FkZCBvciBFZGl0IGEgRmllbGQgRGVmaW5pdGlvbic7CiRsYW5nWydmaWVsZF9kZWZpbml0aW9ucyddID0gJ0ZpZWxkIERlZmluaXRpb25zJzsKJGxhbmdbJ3Byb21wdF9hZGRfZmllbGQnXSA9ICdBZGQgYSBGaWVsZCBEZWZpbml0aW9uJzsKJGxhbmdbJ3BhcmFtX2FjdGlvbiddID0gJ1NwZWNpZmllcyB0aGUgYmVoYXZpb3VyIG9mIHRoZSBtb2R1bGUgdGFnLiAgUG9zc2libGUgdmFsdWVzIGFyZTogZGVmYXVsdCAtICh0aGUgZGVmYWZhdWx0IGJlaGF2aW9yKSwgZGV0YWlsIC0gdG8gZGlzcGxheSBhIGRldGFpbCB2aWV3IG9mIGEgc2luZ2xlIGZpbGUgYmFzZWQgb24gdGhlIHVwbG9hZF9pZCwgYW5kIHlvdXNlbmRpdCAtIHRvIGRpc3BsYXkgYSBmb3JtIHRvIGFsbG93IHVwbG9hZGluZyBhIGZpbGUsIGFuZCBzZW5kaW5nIGl0IHRvIG51bWVyb3VzIGFkZHJlc3NlcyBpbiBvbmUgc3RlcCc7CiRsYW5nWydwYXJhbV9zZW5kZmlsZXBhZ2UnXSA9ICdTcGVjaWZ5IHRoZSBwYWdlIGlkIG9yIGFsaWFzIG9mIGEgcGFnZSB0aGF0IHNob3VsZCBiZSB1c2VkIGZvciB0aGUgc2VuZCBhIGZpbGUgZm9ybSc7CiRsYW5nWydmaWxlX3VwbG9hZGVkJ10gPSAnUGxpayB6b3N0YcWCIHdncmFueSc7CiRsYW5nWyd0byddID0gJ0RvJzsKJGxhbmdbJ3RpdGxlX3lvdXNlbmRpdGZvcm1fdGVtcGxhdGUnXSA9ICdBZGQgb3IgRWRpdCBhICZxdW90O1lvdSBTZW5kIEl0JnF1b3Q7IEZvcm0gVGVtcGxhdGUnOwokbGFuZ1sneW91c2VuZGl0Zm9ybV90ZW1wbGF0ZSddID0gJ1lvdVNlbmRJdCBGb3JtIFRlbXBsYXRlcyc7CiRsYW5nWyd0aXRsZV95b3VzZW5kaXRmb3JtX3N5c2RlZmF1bHQnXSA9ICdTeXN0ZW0gZGVmYXVsdCAmcXVvdDt5b3Ugc2VuZCBpdCZxdW90OyB0ZW1wbGF0ZSc7CiRsYW5nWydtc2dfZmlsZV9zZW50J10gPSAnQSBtZXNzYWdlIGhhcyBiZWVuIHNlbnQgdG8gdGhlIHNlbGVjdGVkIGFkZHJlc3NlcyB0aGF0IGNvbnRhaW5zIGluZm9ybWF0aW9uIGFib3V0IHRoZSBmaWxlIGFuZCBob3cgdG8gcmV0cmlldmUgaXQuJzsKJGxhbmdbJ2Vycm9yX25vYWRkcmVzc2VzJ10gPSAnWW91IG11c3Qgc3VwcGx5IGF0IGxlYXN0IG9uZSBkZXN0aW5hdGlvbiBhZGRyZXNzJzsKJGxhbmdbJ2Vycm9yX25vc3ViamVjdCddID0gJ1lvdSBtdXN0IHN1cHBseSBhIHN1YmplY3QnOwokbGFuZ1snc3ViamVjdCddID0gJ1N1YmplY3QnOwokbGFuZ1sndGl0bGVfc2VuZGZpbGVwYWdlJ10gPSAnUGFnZSB0byB1c2UgZm9yIHRpbWUgbGltaXRlZCBvciAmcXVvdDtZb3VTZW5kSXQmcXVvdDsgVVJMUyc7CiRsYW5nWydmaWxlX2luZm8nXSA9ICdGaWxlIEluZm8nOwokbGFuZ1snc2VuZCddID0gJ1d5xZtsaWonOwokbGFuZ1snbm90ZXMnXSA9ICdOb3Rlcyc7CiRsYW5nWydhZGRyZXNzZWVzJ10gPSAnU2VuZCBpbmZvcm1hdGlvbiBhYm91dCB0aGlzIGZpbGUgdG8nOwokbGFuZ1sncHJvbXB0X3NlbmRmaWxlX2VtYWlsX3RlbXBsYXRlJ10gPSAnJnF1b3Q7U2VuZCBhIEZpbGUmcXVvdDsgRW1haWwgVGVtcGxhdGUnOwokbGFuZ1sndGl0bGVfc2VuZGZpbGVmb3JtX3RlbXBsYXRlJ10gPSAnQWRkIG9yIEVkaXQgYSAmcXVvdDtTZW5kIGEgRmlsZSZxdW90OyBGb3JtIFRlbXBsYXRlJzsKJGxhbmdbJ3NlbmRmaWxlZm9ybV90ZW1wbGF0ZSddID0gJyZxdW90O1NlbmQgYSBGaWxlJnF1b3Q7IEZvcm0gVGVtcGxhdGVzJzsKJGxhbmdbJ3Byb21wdF9ub3RpZnlfZW1haWxfdGVtcGxhdGUnXSA9ICdQb3dpYWRvbWllbmllIG8gd2dyYW5pdSBwb3ByemV6IGVtYWlsJzsKJGxhbmdbJ3RpdGxlX3NlbmRmaWxlZm9ybV9zeXNkZWZhdWx0J10gPSAnU3lzdGVtIGRlZmF1bHQgJnF1b3Q7U2VuZCBhIEZpbGUmcXVvdDsgZm9ybSB0ZW1wbGF0ZSc7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnlkZWxldGFibGUnXSA9ICdQbGlraSB6IHRlaiBrYXRlZ29yaWkgbW9nxIUgem9zdGHEhyB1c3VuacSZdGUnOwokbGFuZ1sndGl0bGVfYWxsb3dfZGVsZXRlJ10gPSAnQWxsb3cgZGVsZXRpb24gb2YgZmlsZXMgZnJvbSB0aGUgZnJvbnRlbmQnOwokbGFuZ1snZGVmYXVsdF90ZW1wbGF0ZXMnXSA9ICdEb215xZtsbmUgc3phYmxvbnknOwokbGFuZ1snZmlyc3RwYWdlJ10gPSAnUGllcndzemEgc3Ryb25hJzsKJGxhbmdbJ3ByZXZwYWdlJ10gPSAnUG9wcnplZG5pYSBzdHJvbmEnOwokbGFuZ1snbmV4dHBhZ2UnXSA9ICdOYXN0xJlwbmEgc3Ryb25hJzsKJGxhbmdbJ2xhc3RwYWdlJ10gPSAnT3N0YXRuaWEgc3Ryb25hJzsKJGxhbmdbJ2ZpcnN0cGFnZV9hcnJvdyddID0gJzw8JzsKJGxhbmdbJ3ByZXZwYWdlX2Fycm93J10gPSAnPCc7CiRsYW5nWyduZXh0cGFnZV9hcnJvdyddID0gJz4nOwokbGFuZ1snbGFzdHBhZ2VfYXJyb3cnXSA9ICc+Pic7CiRsYW5nWydwYWdlJ10gPSAnU3Ryb25hJzsKJGxhbmdbJ29mJ10gPSAneic7CiRsYW5nWydwcm9tcHRfZ3JvdXBsaXN0J10gPSAnWmV6d2FsYWogZ3J1cG9tIEZFVSAnOwokbGFuZ1snaW5mb19ncm91cGxpc3QnXSA9ICdXeWJpZXJ6IGdydXB5IEZFVSwga3Qmb2FjdXRlO3JlIG1vZ8SFIHVwbG9hZG93YcSHIHBsaWtpLiBOaWUgd3licmF6bmllIMW8YWRuZWogZ3J1cHkgemV6d2FsYSBuYSB1cGxvYWQgd3N6eXN0a2ltIGdydXBvbSc7CiRsYW5nWyd0aXRsZV9zY2FuJ10gPSAnU2thbnVqIHcgcG9zenVraXdhbml1IG5vd3ljaCBwbGlrJm9hY3V0ZTt3IHcga2F0ZWdvcmlpJzsKJGxhbmdbJ3RpdGxlX2NyZWF0ZV90aHVtYm5haWxzJ10gPSAnU3R3Jm9hY3V0ZTtyeiBicmFrdWrEhWNlIG1pbmlhdHVyeSBkbGEgcGxpayZvYWN1dGU7dyB3IHRlaiBsYXRlZ3ByaWknOwokbGFuZ1snY3JlYXRlX3RodW1ibmFpbHMnXSA9ICdTdHcmb2FjdXRlO3J6IG1pbmlhdHVyeSc7CiRsYW5nWyd0aXRsZV9jcmVhdGVfdGh1bWJuYWlsJ10gPSAnU3R3Jm9hY3V0ZTtyei9vZMWbd2llxbwgbWluaWF0dXLEmSBkbGEgdGVnbyBwbGlrdSc7CiRsYW5nWydjcmVhdGVfdGh1bWJuYWlsJ10gPSAnU3R3Jm9hY3V0ZTtyeiBtaW5pYXR1csSZJzsKJGxhbmdbJ2Vycm9yX3BhdGhlcnJvciddID0gJ05pZSBtb8W8bmEgb3R3b3J6ecSHIGthdGFsb2d1IChwcmJsZW0geiB1cHJhd25pZW5pYW1pJzsKJGxhbmdbJ3RpdGxlX2Rvd25sb2FkX2NodW5rc2l6ZSddID0gJ1Jvem1pYXIga2HFvGRlZ28gxZtjacSFZ2FuZWdvIGJsb2t1JzsKJGxhbmdbJ2luZm9fZG93bmxvYWRfY2h1bmtzaXplJ10gPSAnWm1pYW5hIHRlZ28gcGFyYW1ldHJ1IGLEmWR6aWUgbWlhxYJhIHdwxYJ5dyBuYSBzenlia2/Fm8SHIMWbY2nEhWdhbmlhIHBsaWt1LCBhbGUgbW/FvGUgcG9tJm9hY3V0ZTtjIHcga29uZmlndXJhY2phY2ggeiBtbmllanN6xIUgaWxvxZtjacSFIGRvc3TEmXBuZWogcGFtacSZY2knOwokbGFuZ1snd2FybmluZ19zYWZlX21vZGUnXSA9ICdTYWZlIG1vZGUgdyBQSFAgamVzdCB3xYLEhWN6b25lLiBNb8W8ZSB0byBwb3dvZG93YcSHIHByb2JsZW15IHogdXBsb2FkZW0gcGxpayZvYWN1dGU7dyAodXByYXduaWVuaWEpLCBhIHRha8W8ZSB6ZSDFm2NpxIVnYW5pZW0gKGJyYWsgdXByYXduaWXFhCBkbyB6bWlhbnkgcGFyYW1ldHImb2FjdXRlO3cgcGhwLmluaSkuIFNrb250YWt0dWogc2nEmSB6ZSBzd29pbSBhZG1pbmlzdHJhdG9yZW0gaSB6YXB5dGFqIG8gbW/FvGxpd2/Fm8SHIHd5xYLEhWN6ZW5pYSB0ZWdvIHRyeWJ1Lic7CiRsYW5nWydwYXJhbV9kZXRhaWxwYWdlJ10gPSAnUHJ6eWRhdG5lIGRvIHd5xZt3aWV0bGFuaWEgcmFwb3J0dSBwcnp5IHXFvHljaXUgciZvYWN1dGU7xbxueWNoIHN6YWJsb24mb2FjdXRlO3cuIE1vxbxlc3ogdHUgd3N0YXdpxIcgSUQgc3Ryb255IGx1YiBqZWogYWxpYXMuJzsKJGxhbmdbJ3BhcmFtX3ByZWZpeCddID0gJ1ptaWVubmEgd3NrYXp1asSFY2EgY3p5IGRvIG5hencgcGxpayZvYWN1dGU7dyBwb3dpbmllbiBiecSHIGRvZGFueSBwcmVmaWtzLic7CiRsYW5nWydwYXJhbV9wcmVmaXhfZmV1J10gPSAnUGFyYW1ldHIga3Qmb2FjdXRlO3J5IHdza2F6dWplLCBjenkgcHJlZmlrcyBwb3dpbmluZW4gYnnEhyB3emnEmXR5IHogZGFueWNoIGF1dG9yYSB1cGxvYWR1LCBjenkgdGXFvCAoamXFm2xpIG5pYyBuaWUgcG9kYW5vKSwgb2JsaWN6b255IHplIHpuYWN6bmlrYSBha3R1YWxuZWdvIGN6YXN1Lic7CiRsYW5nWydwYXJhbV9ub2NhcHRjaGEnXSA9ICdXecWCxIVjeiBvYnPFgnVnxJkgQ2FwdGNoYSB3IGZvcm11bGFyenUgdXBsb2FkdSAod8WCxIVjem9uZSBkb215xZtsbmllKSc7CiRsYW5nWyd0aXRsZV91cGxvYWRmb3JtX3RlbXBsYXRlJ10gPSAnRWR5dHVqIHN6YWJsb24gZm9ybXVsYXJ6YSB1cGxvYWR1JzsKJGxhbmdbJ2NhcHRjaGFfdGl0bGUnXSA9ICdXcGlzeiB0ZWtzdCB3ecWbd2lldGxhbnkgdyB0eW0gb2JyYXprdSc7CiRsYW5nWydlcnJvcl9jYXB0Y2hhbWlzbWF0Y2gnXSA9ICdXcGlzYW55IHRla3N0IG5pZSBwYXN1amUgZG8gd3nFm3dpZXRsYW5lZ28gb2JyYXprYSc7CiRsYW5nWyd0aXRsZV9hdXRvdGh1bWJuYWlsX2V4dGVuc2lvbnMnXSA9ICdTdHcmb2FjdXRlO3J6IG1pbmlhdHVyeSBkbGEgcGxpayZvYWN1dGU7dyB6IHR5bWkgcm96c3plcnplbmlhbWknOwokbGFuZ1sndGl0bGVfYXV0b3RodW1ibmFpbF9zaXplJ10gPSAnTWFrc3ltYWxueSByb3ptaWFyIG1pbmlhdHVyeSAodyBwaWtzZWxhY2gpICc7CiRsYW5nWydwcm9tcHRfdXBsb2FkX2ljb24nXSA9ICdaYcWCYWR1aiBpa29uxJknOwokbGFuZ1snaW5mb19zeXNkZWZhdWx0J10gPSAnVGVuIHRla3N0IGplc3QgdcW8eXdhbnkgcG9kY3phcyB0d29yemVuaWEgbm93ZWdvIHN6YWJsb251IHRlZ28gdHlwdSc7CiRsYW5nWyd0aXRsZV9kZXRhaWxycHRfc3lzZGVmYXVsdCddID0gJ0RvbXnFm2xueSBzemFibG9uIGRsYSBzemN6ZWcmb2FjdXRlO8WCb3dlZ28gcmFwb3J0dSc7CiRsYW5nWyd0aXRsZV9zdW1tYXJ5cnB0X3N5c2RlZmF1bHQnXSA9ICdEb215xZtsbnkgc3phYmxvbiBkbGEgcG9kc3Vtb3d1asSFY2VnbyByYXBvcnR1JzsKJGxhbmdbJ3RpdGxlX3VwbG9hZGZvcm1fc3lzZGVmYXVsdCddID0gJ0RvbXnFm2xueSBzemFibG9uIGRsYSBmb3JtdWxhcnphIHVwbG9hZHUnOwokbGFuZ1sndGVtcGxhdGUnXSA9ICdTemFibG9uJzsKJGxhbmdbJ3Jlc2V0dG9kZWZhdWx0J10gPSAnUHJ6eXdyJm9hY3V0ZTvEhyBkb215xZtsbmUnOwokbGFuZ1sndGl0bGVfc3VtbWFyeXJwdF90ZW1wbGF0ZSddID0gJ1N6YWJsb24gcmFwb3J0dSBwb2RzdW1vd3VqxIVjZWdvJzsKJGxhbmdbJ3RpdGxlX2RldGFpbHJwdF90ZW1wbGF0ZSddID0gJ1N6YWJsb24gcmFwb3J0dSBzemN6ZWcmb2FjdXRlO8WCb3dlZ28nOwokbGFuZ1sncHJvbXB0X25hbWUnXSA9ICdOYXp3YSc7CiRsYW5nWydwcm9tcHRfZGVmYXVsdCddID0gJ0RvbXnFm2xueSc7CiRsYW5nWydsZWdlbmRfdXBsb2FkZm9ybSddID0gJ1phxYJhZHVqIHBsaWsnOwokbGFuZ1snZXJyb3JfbWlzc2luZ3BhcmFtJ10gPSAnQnJhayB3eW1hZ2FuZWdvIHBhcmFtZXRydSc7CiRsYW5nWydlcnJvcl9taXNzaW5nbmFtZSddID0gJ05hendhIHR5cHUgcGxpa3UgbXVzaSBiecSHIHBvZGFuYSc7CiRsYW5nWydlcnJvcl9taXNzaW5nZXh0ZW5zaW9ucyddID0gJ0NvbmFqbW5pZWogamVkbm8gcm96c3plcnplbmllIG11c2kgYnnEhyBwb2RhbmUnOwokbGFuZ1snZXJyb3JfbWlzc2luZ2ljb24nXSA9ICdNdXNpc3ogcG9kYcSHIGlrb27EmSc7CiRsYW5nWydlcnJvcl9ub3N1Y2hyb3cnXSA9ICdOaWUgbW/FvG5hIHpuYWxlxbrEhyB3aWVyc3phJzsKJGxhbmdbJ25hbWVfdW5rbm93biddID0gJ05pZXpuYW55JzsKJGxhbmdbJ2Rlc2NyaXB0aW9uX3Vua25vd24nXSA9ICdPcGlzIHR5cHUgcGxpa3UgZGxhIG5pZXBhc3VqxIVjeWNoIHBsaWsmb2FjdXRlO3cnOwokbGFuZ1snaW1hZ2UnXSA9ICdPYnJhemVrJzsKJGxhbmdbJ2ljb24nXSA9ICdJa29uYSc7CiRsYW5nWydleHRlbnNpb25zJ10gPSAnUm96c3plcnplbmlhIG5hencgcGxpayZvYWN1dGU7dyc7CiRsYW5nWydhZGRmaWxldHlwZSddID0gJ0RvZGFqIG5vd3kgdHlwIHBsaWt1JzsKJGxhbmdbJ2ZpbGVfdHlwZXMnXSA9ICdUeXB5IHBsaWsmb2FjdXRlO3cnOwokbGFuZ1snZXJyb3Jfbm9jYXRlZ29yeWlkJ10gPSAnQnJhayBJRCBrYXRlZ29yaWknOwokbGFuZ1snZXJyb3Jfbm9jYXRlZ29yeSddID0gJ0JyYWsgSUQga2F0ZWdvcmlpJzsKJGxhbmdbJ2Vycm9yX3RlbXBsYXRlbmFtZWV4aXN0cyddID0gJ1N6YWJsb24geiB0YWvEhSBuYXp3xIUganXFvCBpc3RuaWVqZSc7CiRsYW5nWydwcm9tcHRfdGVtcGxhdGVuYW1lJ10gPSAnTmF6d2Egc3phYmxvbnUnOwokbGFuZ1sncHJvbXB0X3RlbXBsYXRlJ10gPSAnU3phYmxvbic7CiRsYW5nWydwcm9tcHRfbmV3dGVtcGxhdGUnXSA9ICdTdHcmb2FjdXRlO3J6IG5vd3kgc3phYmxvbic7CiRsYW5nWydoZWxwX09uRG93bmxvYWQnXSA9ICc8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgZmluaXNoZXMgZG93bmxvYWRpbmcgYSBmaWxlPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5pZDwvZW0+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+YXV0aG9yPC9lbT4gLSBUaGUgYXV0aG9yIG9mIHRoZSB1cGxvYWRlZCBmaWxlIChpZiBhdmFpbGFibGUpPC9lbT48L2xpPg0KPGxpPjxlbT5pcF9hZGRyZXNzPC9lbT4gLSBUaGUgaW50ZXJuZXQgYWRkcmVzcyBvZiB0aGUgY2xpZW50IHRoYXQgdXBsb2FkZWQgdGhlIGZpbGU8L2xpPg0KPC91bD4NCic7CiRsYW5nWydpbmZvX2V2ZW50X29uZGVsZXRlY2F0ZWdvcnknXSA9ICdFdmVudCBnZW5lcmF0ZWQgd2hlbiBhIGNhdGVnb3J5IGlzIGRlbGV0ZWQnOwokbGFuZ1snaW5mb19ldmVudF9vbmNyZWF0ZWNhdGVnb3J5J10gPSAnRXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBjYXRlZ29yeSBpcyBjcmVhdGVkJzsKJGxhbmdbJ2luZm9fZXZlbnRfb25kb3dubG9hZCddID0gJ0V2ZW50IGdlbmVyYXRlZCB3aGVuIGEgZmlsZSBpcyBkb3dubG9hZGVkJzsKJGxhbmdbJ2luZm9fZXZlbnRfb251cGxvYWQnXSA9ICdFdmVudCBnZW5lcmF0ZWQgd2hlbiBhIG5ldyBmaWxlIGlzIHVwbG9hZGVkJzsKJGxhbmdbJ2luZm9fZXZlbnRfb25yZW1vdmUnXSA9ICdFdmVudCBnZW5lcmF0ZWQgd2hlbiBhIGZpbGUgaXMgcmVtb3ZlZCc7CiRsYW5nWyd0aXRsZV91c2VydGFnX29udXBsb2FkJ10gPSAnWm5hY3puaWsgdcW8eXRrb3duaWthIHd5d2/Fgnl3YW55IGdkeSDFgmFkb3dhbmllIHBsaWt1IHNpxJkgemFrb8WEY3p5JzsKJGxhbmdbJ25vbmUnXSA9ICdCcmFrJzsKJGxhbmdbJ21hdGNoZXNmb3VuZCddID0gJ1puYWxlemlvbm8nOwokbGFuZ1snZmlsdGVyJ10gPSAnRmlsdHInOwokbGFuZ1sndGl0bGVfcmVkaXJlY3RvbnVwbG9hZCddID0gJ1ByemVraWVydWogZG8gc3Ryb255IHBvIHphxYJhZG93YW5pdSBwbGlrdSBwcnpleiB1xbx5dGtvd25pa2EnOwokbGFuZ1snZGV0YWlscyddID0gJ1N6Y3plZyZvYWN1dGU7xYJ5JzsKJGxhbmdbJ2NvbmZpcm1fcHJlZmVyZW5jZXMnXSA9ICdDenkgbmFwZXdubyBjaGNlc3ogem1pZW5pxIcgdXN0YXdpZW5pYT8nOwokbGFuZ1snZXJyb3Jfbm9maWxlc3VwbG9hZGVkJ10gPSAnTmllIHphxYJhZG93YW5lZ28gxbxhZG55Y2ggcGxpayZvYWN1dGU7dy4nOwokbGFuZ1sncHJvbXB0X3JlcGxhY2UnXSA9ICdQb3p3Jm9hY3V0ZTtsIG5hIG5hZHBpc3l3YW5pZSBwbGlrJm9hY3V0ZTt3JzsKJGxhbmdbJ2luZm9fcmVwbGFjZSddID0gJ05hZHBpc3VqZSBwbGlrIHogdMSFIHNhbcSFIG5henfEhSAoYWxlIG5pZSB6bWllbmlhIElEKSc7CiRsYW5nWydwYXJhbV9ub19pbml0aWFsJ10gPSAnTmllIHd5xZt3aWV0bGFqIMW8YWRueWNoIHdzdMSZcG55Y2ggd3luaWsmb2FjdXRlO3cgZ2R5IGZpbHRyIGplc3Qgd8WCxIVjem9ueSc7CiRsYW5nWydwYXJhbV9rZXknXSA9ICdQb2RhaiBkb2RhdGtvd3kgcGFyYW1ldHIsIGt0Jm9hY3V0ZTtyeXBvendvbGkgem9yZ2FuaXpvd2HEhyBwbGlraS4gVGVuIHBhcmFtZXRyIG1vxbxlIGJ5xIcgbnAuIGNpxIVnaWVtICYjMDM5O2ZldXNlcnM6dWlkJiMwMzk7IGl0cC4gVGVuIHBhcmFtZXRyIHp3eWtsZSBqZXN0IHBvdHJ6ZWJueSBwcnp5IHXFvHl3YW5pdSBtb2R1xYJ1IFVwbG9hZHMgcHJ6ZXogaW5uZSBtb2R1xYJ5Lic7CiRsYW5nWydwYXJhbV9ub2F1dGhvciddID0gJ1VrcnlqIHBvbGUgYXV0b3JhIHogZm9ybXVsYXJ6YSB1cGxvYWR1LiBUZW4gcGFyYW1ldHIgbWEgemFzdG9zb3dhbmllIHR5bGtvIHByenkgbW9kZT0mIzAzOTt1cGxvYWQmIzAzOTsuIEdkeSBtb2R1xYIgRnJvbnRFbmRVc2VycyBqZXN0IHphaW5zdGFsb3dhbnkgaSB1xbx5dGtvd25payBGRVUgamVzdCB6YWxvZ293YW55LCB1a3J5dGUgcG9sZSB6b3N0YW5pZSB3eXBlxYJuaW9uZSBuYXp3xIUgbG9nb3dhbmlhIHRlZ28gdcW8eXRrb3duaWthLic7CiRsYW5nWydwYXJhbV91cGxvYWRfaWQnXSA9ICd1cGxvYWRfaWQ9JnF1b3Q7aWQmcXVvdDsgLSBzcGVjaWZ5IGEgc2luZ2xlIGZpbGUgZm9yIHRoZSB1cmwvbGluayBvciBzaW5nbGUgbW9kZXMgKGFib3ZlKSc7CiRsYW5nWydwYXJhbV9kZXRhaWx0ZW1wbGF0ZSddID0gJ1VzZSBhIHRlbXBsYXRlIHdpdGggdGhpcyBuYW1lIGZvciB0aGUgZGV0YWlsZWQgcmVwb3J0Lic7CiRsYW5nWydwYXJhbV90ZW1wbGF0ZSddID0gJ1VzZSBhIHRlbXBsYXRlIHdpdGggdGhpcyBuYW1lIGZvciB0aGlzIHJlcG9ydCBvciBmb3JtLiAgVGhlIG1vZGUgaXMgdXNlZCB0byBkZXRlcm1pbmUgd2hhdCB0eXBlIG9mIHRlbXBsYXRlIGlzIHJlcXVpcmVyZCwgYW5kIHRoZW4gYSBuYW1lIG1hdGNoIGlzIHBlcmZvcm1lZCB3aXRoaW4gdGhhdCB0eXBlLic7CiRsYW5nWydwYXJhbV9maWx0ZXInXSA9ICdEaXNwbGF5IHRoZSBmaWx0ZXJpbmcgZm9ybSc7CiRsYW5nWydwYXJhbV9ub19pbnRpdGlhbCddID0gJ09ubHkgdXNlZnVsIHdoZW4gdGhlIGZpbHRlciBwYXJhbWV0ZXIgaXMgc3VwcGxpZWQsIG9yIG9uIGJ5IGRlZmF1bHQsIHRoaXMgcGFyYW1ldGVyIGluZGljYXRlcyB3ZXRoZXIgaW5pdGlhbCByZXN1bHRzIHNob3VsZCBiZSByZXR1cm5lZCc7CiRsYW5nWydwYXJhbV9maWxldHlwZXMnXSA9ICdEaXNwbGF5IG9ubHkgZmlsZXMgd2hvc2UgdHlwZSBtYXRjaGVzIHRoaXMgY29tbWEgc2VwYXJhdGVkIGxpc3QnOwokbGFuZ1sncGFyYW1fc29ydG9yZGVyJ10gPSAnICA8cD5Tb3J0IE9yZGVycw0KICA8dWw+DQogIDxsaT48ZW0+ZGF0ZV9hc2M8L2VtPiAtIFNvcnQgYnkgYXNjZW5kaW5nIGRhdGU8L2xpPg0KICA8bGk+PGVtPmRhdGVfZGVzYzwvZW0+IC0gU29ydCBieSBkZXNjZW5kaW5nIGRhdGU8L2xpPg0KICA8bGk+PGVtPm5hbWVfYXNjPC9lbT4gLSBTb3J0IGJ5IGFzY2VuZGluZyBuYW1lPC9saT4NCiAgPGxpPjxlbT5uYW1lX2Rlc2M8L2VtPiAtIFNvcnQgYnkgZGVzY2VuZGluZyBuYW1lPC9saT4NCiAgPGxpPjxlbT5zaXplX2FzYzwvZW0+IC0gU29ydCBieSBhc2NlbmRpbmcgc2l6ZTwvbGk+DQogIDxsaT48ZW0+c2l6ZV9kZXNjPC9lbT4gLSBTb3J0IGJ5IGRlc2NlbmRpbmcgc2l6ZTwvbGk+DQogIDxsaT48ZW0+ZGVzY19hc2M8L2VtPiAtIFNvcnQgYnkgYXNjZW5kaW5nIGRlc2NyaXB0aW9uPC9saT4NCiAgPGxpPjxlbT5kZXNjX2Rlc2M8L2VtPiAtIFNvcnQgYnkgZGVzY2VuZGluZyBkZXNjcmlwdGlvbjwvbGk+DQogIDxsaT48ZW0+YXV0aG9yX2FzYzwvZW0+IC0gU29ydCBieSBhc2NlbmRpbmcgYXV0aG9yPC9saT4NCiAgPGxpPjxlbT5hdXRob3JfZGVzYzwvZW0+IC0gU29ydCBieSBkZXNjZW5kaW5nIGF1dGhvcjwvbGk+DQogIDxsaT48ZW0+aXBfYXNjPC9lbT4gLSBTb3J0IGJ5IGFzY2VuZGluZyBpcCBhZGRyZXNzPC9saT4NCiAgPGxpPjxlbT5pcF9kZXNjPC9lbT4gLSBTb3J0IGJ5IGRlc2NlbmRpbmcgaXAgYWRkcmVzczwvbGk+DQogIDxsaT48ZW0+cmFuZG9tPC9lbT4gLSBSYW5kb20gc29ydCBvcmRlcjwvbGk+DQogIDwvdWw+DQogIDwvcD4nOwokbGFuZ1sncGFyYW1fbGlzdGluZ3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUgdG8gdXNlIGZvciBjYXRlZ29yeSBsaXN0aW5ncyBhZnRlciBjbGlja3Rocm91Z2ggZnJvbSBDYXRlZ29yeSBTdW1tYXJ5IHBhZ2UnOwokbGFuZ1sncGFyYW1fbGlzdGluZ3NvcnRvcmRlciddID0gJ1NvcnQgb3JkZXIgKGFsYSBwYXJhbV9zb3J0b3JkZXIpIHRvIHVzZSBmb3IgY2F0ZWdvcnkgbGlzdGluZ3MgYWZ0ZXIgY2xpY2t0aHJvdWdoIGZyb20gQ2F0ZWdvcnkgU3VtbWFyeSBwYWdlJzsKJGxhbmdbJ3BhcmFtX2ZpbGVleHRlbnNpb25zJ10gPSAnIGZpbGVfZXh0ZW5zaW9ucz0mcXVvdDtleHQxLGV4dDIsZXh0MyZxdW90Ow0KPHA+VcW8eWNpZSB0eWxrbyBraWVkeSBtb2RlPXVwbG9hZCwgdGVuIHBhcmFtZXRyIG9rcmXFm2xhIHR5cHUgcGxpayZvYWN1dGU7dywga3Qmb2FjdXRlO3JlIG1vxbxuYSB1cGxvYWRvd2HEhy4gVGVuIHBhcmFtZXRyIG5hZHBpc3VqZSB1c3Rhd2llbmlhIHcgcHJlZmVyZW5jamFjaCBtb2R1xYJ1LjwvcD4nOwokbGFuZ1sncGFyYW1fY291bnQnXSA9ICdjb3VudD0mcXVvdDtOJnF1b3Q7PHA+T2tyZcWbbCBOIHBpZXJ3c3p5Y2ggd3luaWsmb2FjdXRlO3cgemFweXRhbmlhLiA8L3A+JzsKJGxhbmdbJ3BhcmFtX2NhdGVnb3J5J10gPSAnDQpjYXRlZ29yeT0mcXVvdDtuYW1lJnF1b3Q7DQo8cD48Yj5Ob3RlOjwvYj4gQ2F0ZWdvcnkgY2FuIGJlICZxdW90O2FsbCZxdW90Oywgd2hpY2ggd2lsbCBsaXN0IGFsbCBvZiB0aGUgdXBsb2FkcyBmcm9tIGFsbCA8ZW0+bGlzdGFibGU8L2VtPiBjYXRlZ29yaWVzPC9wPic7CiRsYW5nWydwYXJhbV9tb2RlJ10gPSAnICA8dWw+DQogIDxsaT48ZW0+ZGV0YWlsZWQ8L2VtPiAtIFd5xZt3aWV0bGEgc3pjemVnJm9hY3V0ZTvFgm93eSByYXBvcmQgZGxhIHBvamVkeW5jemVnbyB1cGxvYWR1LjwvbGk+DQogIDxsaT48ZW0+c2luZ2xlPC9lbT4gLSBBbGlhcyBkbGEgdHJ5YnUgc3pjemVnJm9hY3V0ZTvFgm93ZWdvLjwvbGk+DQogIDxsaT48ZW0+dXBsb2FkPC9lbT4gLSBXecWbd2lldGwgZm9ybXVsYXJ6IGJ5IHplendvbGnEhyB1xbx5dGtvd25pa293aSB3Z3JhxIcgcGxpazwvbGk+DQogIDxsaT48ZW0+dXJsIDxpPmx1YjwvaT4gbGluazwvZW0+IC0gV3nFm3dpZXRsIGxpbmsgZG8gcGxpa3U8L2xpPg0KICA8bGk+PGVtPnN1bW1hcnk8L2VtPiAtIFd5xZt3aWV0bCBvZyZvYWN1dGU7bG7EhSBsaXN0xJkgd3N6eXN0a2ljaCBwbGlrJm9hY3V0ZTt3IHogZGFuZWoga2F0ZWdvcmlpPC9saT4NCiAgPC91bD4nOwokbGFuZ1sncGFyYW1fc2VsZWN0Zm9ybSddID0gJ1doZW4gdXNpbmcgdGhlICYjMDM5O3NlbGVjdCYjMDM5OyBtb2RlLCB0aGlzIHBhcmFtZXRlciBpcyB0aGUgZm9ybWlkIG9mIHRoZSBwYXJlbnQgZm9ybS4gIFVzZWQgdG8gaGFuZGxlIHBhcmFtZXRlciBwYXNzaW5nJzsKJGxhbmdbJ3BhcmFtX3NlbGVjdG5hbWUnXSA9ICd3aGVuIHVzaW5nIHRoZSAmIzAzOTtzZWxlY3QmIzAzOTsgbW9kZSwgdGhpcyBwYXJhbWV0ZXIgc3BlY2lmaWVzIHRoZSBuYW1lIG9mIHRoZSBmaWVsZCc7CiRsYW5nWydwYXJhbV9zZWxlY3R2YWx1ZSddID0gJ1doZW4gdXNpbmcgdGhlICYjMDM5O3NlbGVjdCYjMDM5OyBtb2RlLCB0aGlzIHBhcmFtZXRlciBzcGVjaWZpZXMgdGhlIGRlZmF1bHQgZmllbGQgdmFsdWUnOwokbGFuZ1sncGFyYW1fc2VsZWN0bm9uZSddID0gJ1doZW4gdXNpbmcgdGhlICYjMDM5O3NlbGVjdCYjMDM5OyBtb2RlLCB0aGlzIHBhcmFtZXRlciBzcGVjaWZpZXMgd2V0aGVyICYjMDM5O25vbmUmIzAzOTsgaXMgYSB2YWxpZCBjaG9pY2UuJzsKJGxhbmdbJ3JldHVybnRvbW9kdWxlJ10gPSAnV3Imb2FjdXRlO8SHIGRvIG1vZHXFgnUgcGFuZWxhJzsKJGxhbmdbJ2Vycm9yX25vY2F0ZWdvcmllcyddID0gJ05JZSBtYSB6ZGVmaW5pb3dhbnljaCBrYXRlZ29yaWknOwokbGFuZ1sndGl0bGVfZW5mb3JjZWV4dGVuc2lvbnMnXSA9ICdXeW1hZ2FqLCBhYnkgd3N6eXN0a2llIMWCYWRvd2FuZSBwbGlraSBtaWHFgnkgcm96c3plcnplbmllJzsKJGxhbmdbJ3Jlc3RvcmVkZWZhdWx0c2NvbmZpcm0nXSA9ICdUYSBvcGVyYWNqYSBwcnp5d3Imb2FjdXRlO2NpIGRvbXnFm2xueSBzYWJsb24uIFdzenlzdGtpZSB6bWlhbnkgZG9rb25hbmUgcHJ6ZXogY2llYmllIGLEmWTEhSBzdHJhY29uZS4gTmFwZXdubyBrb250eW51b3dhxIc/JzsKJGxhbmdbJ3RodW1ibmFpbCddID0gJ01pbmlhdHVyYSc7CiRsYW5nWyduZXd0aHVtYm5haWwnXSA9ICdaYcWCYWR1aiBub3fEhSBtaW5pYXR1csSZJzsKJGxhbmdbJ2luZm9fc3VtbWFyeSddID0gJ0tyJm9hY3V0ZTt0a2kgb3BpcyBwbGlrdSAoamXFm2xpIHB1c3R5IG5hendhIHBsaWt1IGJleiByb3pzemVyemVuaWEgamVzdCB1xbx5d2FuYSknOwokbGFuZ1snaW5mb19jYXRlZ29yeW5hbWUnXSA9ICdLciZvYWN1dGU7dGthIG5hendhIGthdGVnb3JpaSc7CiRsYW5nWydpbmZvX2NhdGVnb3J5ZGVzYyddID0gJ09waXMga2F0ZWdvcmlpJzsKJGxhbmdbJ2luZm9fY2F0ZWdvcnlwYXRoJ10gPSAnTmF6d2Ega2F0YWxvZ3Ugd2V3bsSFdHJ6IC91cGxvYWRzLCBrdCZvYWN1dGU7cnkgYsSZZHppZSB1xbx5dHkgZG8gcHJ6ZWNob3d5d2FuaWEgcGxpayZvYWN1dGU7dyAoamXFm2xpIG5pZSBpc3RuaWVqZSB0byBtb8W8ZSBiecSHIHN0d29yem9ueSknOwokbGFuZ1snaW5mb19kZXN0bmFtZSddID0gJ1XFvHlqIHBvbGEgJiMwMzk7WmHFgmFkdWogamFrbyYjMDM5OyBhYnkgem1pZW5pxIcgbmF6d8SZIHBsaWt1IHBvIHVwbG9hZHppZS4gUG96b3N0YXcgcHVzdGUgYWJ5IHphY2hvd2HEhyBvcnlnaW5hbG7EhSBuYXp3xJknOwokbGFuZ1snZXJyb3JfY2FudGNyZWF0ZWRpcmVjdG9yeSddID0gJ05pZSBtb8W8bmEgc3R3b3J6ecSHIGthdGFsb2d1JzsKJGxhbmdbJ2Vycm9yX25vbWFpbGVybW9kdWxlJ10gPSAnTmllIG1vxbxuYSB6bmFsZcW6xIcgbW9kdcWCdSBDTVNNYWlsZXInOwokbGFuZ1sndXBsb2FkX25vdGlmaWNhdGlvbiddID0gJ05vd3kgcGxpayB6b3N0YcWCIHphxYJhZG93YW55JzsKJGxhbmdbJ3RpdGxlX2VtYWlsX29uX3VwbG9hZCddID0gJ1d5xZtsaWogaW5mb3JtYWNqxJkgbyB6YcWCYWRvd2FuaXUgbm93ZWdvIHBsaWt1IGRvJzsKJGxhbmdbJ2VtYWlsX3RlbXBsYXRlJ10gPSAnU3phYmxvbiBlLW1haWxhJzsKJGxhbmdbJ3RpdGxlX2R1bW15X2luZGV4X2h0bWwnXSA9ICdTdHcmb2FjdXRlO3J6IHB1c3R5IHBsaWsgaW5kZXguaHRtbCB3IGthxbxkeW0ga2F0YWxvZ3UuPGJyIC8+SXN0bmllasSFY2UgcGxpa2kgaW5kZXguaHRtbCB6b3N0YW7EhSB6YWNob3dhbmUnOwokbGFuZ1snYWJvdXQnXSA9ICdJbmZvcm1hY2phJzsKJGxhbmdbJ2Vycm9yX3Blcm1pc3Npb25kZW5pZWQnXSA9ICdEb3N0xJlwIHphYnJvbmlvbnkuIFNwcmF3ZMW6IHN3b2plIHVwcmF3bmllbmlhLic7CiRsYW5nWydlcnJvcl9jb3VsZG5vdHdyaXRlJ10gPSAnTmllIG1vxbxuYSB6YXBpc2HEhyc7CiRsYW5nWydhZGRjYXRlZ29yeSddID0gJ0RvZGFqIGthdGVnb3JpxJknOwokbGFuZ1snYWxsJ10gPSAnV3N6eXN0a2llJzsKJGxhbmdbJ2FyZXlvdXN1cmUnXSA9ICdKZXN0ZcWbIHBld255Pyc7CiRsYW5nWydhdXRob3InXSA9ICdBdXRvcic7CiRsYW5nWydjYW5jZWwnXSA9ICdBbnVsdWonOwokbGFuZ1snY2Fubm90bW9kaWZ5cGF0aCddID0gJ8WaY2llxbxrYSBuaWUgbW/FvGUgYnnEhyB6bWllbmlvbmEnOwokbGFuZ1snY2F0ZWdvcmllcyddID0gJ0thdGVnb3JpZSc7CiRsYW5nWydjYXRlZ29yeSddID0gJ0thdGVnb3JpYSc7CiRsYW5nWydtZXNzYWdlX2NhdGVnb3J5YWRkZWQnXSA9ICdLYXRlZ29yaWEgem9zdGHFgmEgZG9kYW5hJzsKJGxhbmdbJ2RhdGUnXSA9ICdEYXRhJzsKJGxhbmdbJ2RhdGV1cGxvYWRlZCddID0gJ0RhdGEgemHFgmFkb3dhbmlhJzsKJGxhbmdbJ2RlZmF1bHQnXSA9ICdEb215xZtsbmUnOwokbGFuZ1snZGVsZXRlJ10gPSAnU2thc3VqJzsKJGxhbmdbJ2Rlc2NyaXB0aW9uJ10gPSAnT3Bpcyc7CiRsYW5nWydkZXN0bmFtZSddID0gJ1phxYJhZHVqIGpha28nOwokbGFuZ1snZGV0YWlsX3RlbXBsYXRlJ10gPSAnU3phYmxvbnkgc3pjemVnJm9hY3V0ZTvFgm93ZSc7CiRsYW5nWydkb3dubG9hZGVkJ10gPSAnUGxpayAlcyB6b3N0YcWCIMWbY2nEhWduacSZdHkuJzsKJGxhbmdbJ2Rvd25sb2FkcyddID0gJ8WaY2nEhWduacSZxIcnOwokbGFuZ1snZWRpdCddID0gJ0VkeXR1aic7CiRsYW5nWydlZGl0Y2F0ZWdvcnknXSA9ICdFZHl0dWoga2F0ZWdvcmnEmSc7CiRsYW5nWydlZGl0dXBsb2FkJ10gPSAnRWR5dHVqIHVwbG9hZCc7CiRsYW5nWydlcnJvciddID0gJ0LFgsSFZCEnOwokbGFuZ1snZXJyb3JfcGF0aGludXNlMiddID0gJ0thdGVnb3JpYSB1xbx5d2FqxIVjYSDFm2NpZcW8a2kgKCVzKSBqdcW8IGlzdG5pZWplJzsKJGxhbmdbJ2Vycm9yX3BhdGhpbnVzZSddID0gJ0thdGVnb3JpYSB1xbx5d2FqxIVjYSB0ZWdvIGthdGFsb2d1IGp1xbwgaXN0bmllamUnOwokbGFuZ1snZXJyb3JfY2F0ZWdvcnlleGlzdHMyJ10gPSAnQsWCxIVkOiBLYXRlZ29yaWEgbyBuYXp3aWUgJXMganXFvCBpc3RuaWVqZSc7CiRsYW5nWydlcnJvcl9jYXRlZ29yeWV4aXN0cyddID0gJ0LFgsSFZDogS2F0ZWdvcmlhIGp1xbwgaXN0bmllamUnOwokbGFuZ1snZXJyb3JfY2F0ZWdvcnlub3RlbXB0eSddID0gJ0LFgsSFZDogTmllIG1vxbxuYSBza2Fzb3dhxIcgbmllcHVzdGVqIGthdGVnb3JpaSc7CiRsYW5nWydlcnJvcl9jYXRlZ29yeW5vdGZvdW5kJ10gPSAnQsWCxIVkOiBOaWUgem5hbGV6aW9uIGthdGVnb3JpaSc7CiRsYW5nWydlcnJvcl9kYmVycm9yJ10gPSAnQsWCxIVkIGJhenkgZGFueWNoISc7CiRsYW5nWydlcnJvcl9lbXB0eWNhdGVnb3J5J10gPSAnQsWCxIVkOiBLYXRlZ29yaWEgamVzdCBwdXN0YSEnOwokbGFuZ1snZXJyb3JfZW1wdHlwYXRoJ10gPSAnQsWCxIVkOiDFmmNpZcW8a2EgamVzdCBwdXN0YSEnOwokbGFuZ1snZXJyb3JfZmlsZWV4aXN0cyddID0gJ0LFgsSFZDogUGxpayAlcyBqdcW8IGlzdG5pZWplLic7CiRsYW5nWydlcnJvcl9maWxlbm90Zm91bmQnXSA9ICdCxYLEhWQ6IFBsaWsgJSBuaWUgem9zdGHFgiBvZG5hbGV6aW9ueS4nOwokbGFuZ1snZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJ10gPSAnQsWCxIVkOiBOaWV3eXN0YXJjemFqxIVjYSBsaWN6YmEgcGFyYW1ldHImb2FjdXRlO3chJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRhdXRob3InXSA9ICdCxYLEhWQ6IE5pZXByYXdpZMWCb3d5IGx1YiBwdXN0eSBhdXRvci4nOwokbGFuZ1snZXJyb3JfaW52YWxpZGNhdGVnb3J5J10gPSAnQsWCxIVkOiBOaWVwcmF3aWTFgm93YSBsdWIgcHVzdGEga2F0ZWdvcmlhLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkZGVzY3JpcHRpb24nXSA9ICdCxYLEhWQ6IE5pZXByYXdpZMWCb3d5IGx1YiBwdXN0eSBvcGlzLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkZmlsZSddID0gJ0LFgsSFZDogTmllcHJhd2lkxYJvd2EgbHViIHB1c3RhIG5hendhIHBsaWt1Lic7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXBsb2FkZmlsZW5hbWUnXSA9ICdCxYLEhWQ6IFBsaWtpIHogdHltIHJvenN6ZXJ6ZW5pZW0gc8SFIG5pZWRvendvbG9uZSAoJXMpLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXBsb2FkaWQnXSA9ICdCxYLEhWQ6IE5pZXByYXdpZMWCb3dlIElEIHVwbG9hZHUnOwokbGFuZ1snZXJyb3Jfbm9maWxlcyddID0gJ0LFgsSFZDogbmllIHpuYWxlemlvbm8gcGFzdWrEhWN5Y2ggcGxpayZvYWN1dGU7dyc7CiRsYW5nWydmaWxlcyddID0gJ1BsaWtpJzsKJGxhbmdbJ2ZpeG1lJ10gPSAnTmFwcmF3IHNwYWNqZSc7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdaYXJ6xIVkemVuaWEgemHFgmFkb3dhbnltaSBwbGlrYW1pIEZFVSc7CiRsYW5nWydpZCddID0gJ0lEJzsKJGxhbmdbJ2luc3RhbGxlZCddID0gJ01vZHXFgiB3IHdlcnNqaSAlcyB6b3N0YcWCIHphaW5zdGFsb3dhbnkuJzsKJGxhbmdbJ2lwX2FkZHJlc3MnXSA9ICdBZHJlcyBJUCc7CiRsYW5nWydtb2RkZXNjcmlwdGlvbiddID0gJ01vZHXFgiBwb3p3YWxhasSFY3kgbmEgxYJhZG93YW5pZSBwbGlrJm9hY3V0ZTt3IHByemV6IHXFvHl0a293bmlrJm9hY3V0ZTt3IGkgemFyesSFZHphbmllIG5pbWkuJzsKJGxhbmdbJ25hbWUnXSA9ICdOYXp3YSc7CiRsYW5nWydyZW5hbWVtZXNzYWdlJ10gPSAnV3Bpc3ogbm93xIUgbmF6d8SZIHBsaWt1JzsKJGxhbmdbJ3BhdGgnXSA9ICfFmmNpZcW8a2EnOwokbGFuZ1sncGF0aG1lc3NhZ2UnXSA9ICdXeWJpZXJ6IGlubsSFIGthdGVnb3JpxJksIGFieSBwcnplbmllxZvEhyBwbGlrJzsKJGxhbmdbJ3BhdGhpbnVwbG9hZHMnXSA9ICcodyDFm3JvZGt1IGRvIGthdGFsb2d1IC91cGxvYWRzKSc7CiRsYW5nWydwb3N0aW5zdGFsbCddID0gJzxwPlRoZSB1cGxvYWRzIG1vZHVsZSBoYXMgYmVlbiBzdWNjZXNzZnVsbHkgaW5zdGFsbGVkLiBCZSBzdXJlIHRvIHNldCAmcXVvdDtNYW5hZ2UgVXBsb2FkcyZxdW90OyBwZXJtaXNzaW9ucyB0byB1c2UgdGhpcyBtb2R1bGUhPC9wPg0KPHA+PHN0cm9uZz5XYXJuaW5nPC9zdHJvbmc+IC0gVGhlIHByb3BlciBiZWhhdmlvdXIgb2YgdGhpcyBtb2R1bGUgZGVwZW5kcyBvbiBudW1lcm91cyBwaHAgY29uZmlndXJhdGlvbiB2YXJpYWJsZXMuICBUaGVzZSBpbmNsdWRlIDxlbT4oYnV0IGFyZSBub3QgbGltaXRlZCB0byk8L2VtPiwgcGhwJiMwMzk7cyBtZW1vcnlfbGltaXQsIHNhZmVfbW9kZSwgZmlsZV91cGxvYWRzLCB1cGxvYWRzX21heF9maWxlc2l6ZSwgYW5kIG1heF9leGVjdXRpb25fdGltZS4gIFRoZXNlIHZhcmlhYmxlcyBtYXkgbmVlZCBhZGp1c3RtZW50IGZvciB0aGlzIG1vZHVsZSB0byB3b3JrIHByb3Blcmx5IG9uIHlvdXIgc2l0ZS4gIEl0IGlzIGFkdmlzZWQgdGhhdCB5b3Ugd29yayB3aXRoIHlvdXIgc3lzdGVtIGFkbWluaXN0cmF0b3Igb3IgaG9zdCBwcm92aWRlciB0byB0dW5lIHRoZXNlIHNldHRpbmdzIGZvciB5b3VyIHJlcXVpcmVtZW50cy48L3A+JzsKJGxhbmdbJ3Bvc3R1bmluc3RhbGwnXSA9ICdNb2R1xYIgVXBsb2FkcyB6b3N0YcWCIG9kaW5zdGFsb3dhbnkuIMW7YWRuZSBwbGlraSBuaWUgem9zdGHFgnkgc2thc293YW5lIHogc2Vyd2VyYS4nOwokbGFuZ1sncHJlZmVyZW5jZXMnXSA9ICdVc3Rhd2llbmlhJzsKJGxhbmdbJ3ByZWZzdXBkYXRlZCddID0gJ1VzdGF3aWVuaWEgbmV3c2xldHRlcmEgem9zdGHFgnkgdWFrdHVhbG5pb25lLic7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnlkZXNjJ10gPSAnT3Bpcyc7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnlsaXN0YWJsZSddID0gJ1BsaWtpIHcgdHltIGthdGFsb2d1IG1vZ8SFIGJ5xIcgd3lsaXN0b3dhbmUnOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5bmFtZSddID0gJ05hendhIGthdGVnb3JpaSc7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnlwYXRoJ10gPSAnxZpjaWXFvGthIG5hIHNlcndlcnplJzsKJGxhbmdbJ3Byb21wdF9kZWxldGVkaXJlY3RvcnknXSA9ICdTa2Fzb3dhxIcga2F0YWxvZyBrYXRlZ29yaWk/JzsKJGxhbmdbJ3Byb21wdF9tYXhfdXBsb2Fkc2l6ZSddID0gJ01ha3N5bWFsbmEgd2llbGtvxZvEhyBwbGlrdSAoS2IpJzsKJGxhbmdbJ3Byb21wdF92YWxpZF91cGxvYWRleHRlbnNpb25zJ10gPSAnRG9wdXN6Y3phbG5lIHJvenN6ZXJ6ZW5pYSc7CiRsYW5nWydzY2FuJ10gPSAnU2thbnVqJzsKJGxhbmdbJ3NlbGVjdGNhdGVnb3J5J10gPSAnV3liaWVyeiBrYXRlZ29yacSZJzsKJGxhbmdbJ3NpemUnXSA9ICdSb3ptaWFyJzsKJGxhbmdbJ3NpemVrYiddID0gJ1Jvem1pYXIgKGtiKSc7CiRsYW5nWydzdWJtaXQnXSA9ICdaYXR3aWVyZMW6JzsKJGxhbmdbJ3N1bW1hcnlfdGVtcGxhdGUnXSA9ICdTemFibG9ueSBwb2RzdW1vd2FuaWEnOwokbGFuZ1snc3VtbWFyeSddID0gJ1BvZHN1bW93YW5pZSc7CiRsYW5nWyd0aXRsZV9hZG1pbl9wYW5lbCddID0gJ01vZHXFgiBVcGxvYWRzJzsKJGxhbmdbJ3RpdGxlX21vZF9hZG1pbiddID0gJ1BhbmVsIGFkbWluaXN0cmFjeWpueSBtb2R1xYJ1JzsKJGxhbmdbJ3RpdGxlX21vZF9wcmVmcyddID0gJ1VzdGF3aWVuaWEgbW9kdcWCdSc7CiRsYW5nWyd0aXRsZV9zdWJuZXRfZXhjbHVzaW9ucyddID0gJ1d5a2x1Y3ogdGUgcG9kc2llY2kgemUgc3RhdHlzdHlrJzsKJGxhbmdbJ3RpdGxlX3ZhbGlkX3VwbG9hZGV4dGVuc2lvbnMnXSA9ICdEb3B1c3pjemFsbmUgcm96c3plcnplbmlhJzsKJGxhbmdbJ3VuaW5zdGFsbGVkJ10gPSAnTW9kdcWCIHpvc3RhxYIgb2RpbnN0YWxvd2FueS4nOwokbGFuZ1sndXBncmFkZWQnXSA9ICdNb2R1xYIgem9zdGHFgiB6YWt0dWFsaXpvd2FueSBkbyB3ZXJzamkgJXMuJzsKJGxhbmdbJ3VwbG9hZCddID0gJ1d5YmllcnogcGxpayc7CiRsYW5nWyd1cGxvYWRlZCddID0gJ1BsaWsgJXMgem9zdGHFgiB6YcWCYWRvd2FueSBwcnpleiAlcy4nOwokbGFuZ1sncmVwbGFjZWQnXSA9ICdQbGlrICVzIHpvc3RhxYIgemFzdMSFcGlvbnkgcHJ6ZXogJXMuJzsKJGxhbmdbJ2RlbGV0ZWQnXSA9ICdQbGlrICVzIHpvc3RhxYIgc2thc293YW55Lic7CiRsYW5nWyd1cGxvYWRmb3JtX3RlbXBsYXRlJ10gPSAnU3phYmxvbnkgdXBsb2FkdSc7CiRsYW5nWyd1c2VybmFtZSddID0gJ05hendhIHXFvHl0a293bmlrYSc7CiRsYW5nWyd3YXJuaW5nX2RlbGV0ZWNhdGVnb3J5J10gPSAnVXdhZ2E6IGthc3VqIGthdGVnb3JpxJkgeiBvc3Ryb8W8bm/Fm2NpxIUuIFBsaWtpIG1vZ8SFIHpvc3RhxIcgc2thc293YW5lISc7CiRsYW5nWydxY2EnXSA9ICdQMC0xMzE4MjEzNzM5LTEyNzU2NjgzNzEzMDMnOwokbGFuZ1sndXRtYSddID0gJzE1Njg2MTM1My4xODczNDk2MjgzLjEyOTQzNDA3NjIuMTI5NDM0MDc2Mi4xMjk0MzQwNzYyLjEnOwo/Pgo=]]></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+a2EgbiZhYWN1dGU7em92IHMmdWFjdXRlO2JvcnUuJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1cGxvYWRmaWxlbmFtZSddID0gJ0NoeWJhOiBUaWV0byB0eXBpIHMmdWFjdXRlO2Jvcm92IG5pZSBzJnVhY3V0ZTsgcG9kcG9yb3ZhbiZlYWN1dGU7IChwciZpYWN1dGU7cG9uYSkuJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1cGxvYWRpZCddID0gJ0NoeWJhOiBOZXNwciZhYWN1dGU7dm5lIHVwbG9hZCBpZCc7CiRsYW5nWydlcnJvcl9ub2ZpbGVzJ10gPSAnQ2h5YmE6IMW9aWFkbmUgdnlicmFuJmVhY3V0ZTsgcyZ1YWN1dGU7Ym9yeSc7CiRsYW5nWydmaWxlcyddID0gJ1MmdWFjdXRlO2JvcnknOwokbGFuZ1snZml4bWUnXSA9ICdPJnNjYXJvbjtldHJpxaUgbWVkemVyeSc7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdTJnVhY3V0ZTtib3JvdiZ5YWN1dGU7IG1hbmHFvm1lbnQgKFVwbG9hZHMpJzsKJGxhbmdbJ2lkJ10gPSAnSWQnOwokbGFuZ1snaW5zdGFsbGVkJ10gPSAnTW9kdWwgdmVyemlhICVzIG5haW4mc2Nhcm9uO3RhbG92YW4meWFjdXRlOy4nOwokbGFuZ1snaXBfYWRkcmVzcyddID0gJ0lQIGFkcmVzYSc7CiRsYW5nWydtb2RkZXNjcmlwdGlvbiddID0gJ01vZHVsLCBrdG9yJnlhY3V0ZTsgZG9rJmFhY3V0ZTvFvmUgbmFociZhYWN1dGU7dmHFpSAgYSBzcHJhdm92YcWlIHMmdWFjdXRlO2JvcnknOwokbGFuZ1snbmFtZSddID0gJ01lbm8nOwokbGFuZ1sncmVuYW1lbWVzc2FnZSddID0gJ1VwcmF2dGUgbWVubyBwcmUgcHJlbWVub3ZhbmllJzsKJGxhbmdbJ3BhdGgnXSA9ICdDZXN0YSc7CiRsYW5nWydwYXRobWVzc2FnZSddID0gJ1VwcmF2dGUgbSZlYWN1dGU7bm8ga2F0ZWcmb2FjdXRlO3JpZSBwcmUgcHJlc3VuIHMmdWFjdXRlO2JvcnUgZG8gaW4mZWFjdXRlO2hvIGFkcmVzJmFhY3V0ZTtyYSc7CiRsYW5nWydwYXRoaW51cGxvYWRzJ10gPSAnKHJlbGF0JmlhY3V0ZTt2bmEgayB1cGxvYWRzIGFkcmVzJmFhY3V0ZTtydSknOwokbGFuZ1sncG9zdGluc3RhbGwnXSA9ICc8cD5UaGUgdXBsb2FkcyBtb2R1bGUgaGFzIGJlZW4gc3VjY2Vzc2Z1bGx5IGluc3RhbGxlZC4gQmUgc3VyZSB0byBzZXQgJnF1b3Q7TWFuYWdlIFVwbG9hZHMmcXVvdDsgcGVybWlzc2lvbnMgdG8gdXNlIHRoaXMgbW9kdWxlITwvcD4NCjxwPjxzdHJvbmc+V2FybmluZzwvc3Ryb25nPiAtIFRoZSBwcm9wZXIgYmVoYXZpb3VyIG9mIHRoaXMgbW9kdWxlIGRlcGVuZHMgb24gbnVtZXJvdXMgcGhwIGNvbmZpZ3VyYXRpb24gdmFyaWFibGVzLiAgVGhlc2UgaW5jbHVkZSA8ZW0+KGJ1dCBhcmUgbm90IGxpbWl0ZWQgdG8pPC9lbT4sIHBocCYjMDM5O3MgbWVtb3J5X2xpbWl0LCBzYWZlX21vZGUsIGZpbGVfdXBsb2FkcywgdXBsb2Fkc19tYXhfZmlsZXNpemUsIGFuZCBtYXhfZXhlY3V0aW9uX3RpbWUuICBUaGVzZSB2YXJpYWJsZXMgbWF5IG5lZWQgYWRqdXN0bWVudCBmb3IgdGhpcyBtb2R1bGUgdG8gd29yayBwcm9wZXJseSBvbiB5b3VyIHNpdGUuICBJdCBpcyBhZHZpc2VkIHRoYXQgeW91IHdvcmsgd2l0aCB5b3VyIHN5c3RlbSBhZG1pbmlzdHJhdG9yIG9yIGhvc3QgcHJvdmlkZXIgdG8gdHVuZSB0aGVzZSBzZXR0aW5ncyBmb3IgeW91ciByZXF1aXJlbWVudHMuPC9wPic7CiRsYW5nWydwb3N0dW5pbnN0YWxsJ10gPSAnTW9kdWwgYm9sICZ1YWN1dGU7c3BlJnNjYXJvbjtuZSBvZHN0ciZhYWN1dGU7bmVuJnlhY3V0ZTsuICBOZWJvbGkgb2RzdHImYWFjdXRlO25lbiZlYWN1dGU7IMW+aWFkbmUgcyZ1YWN1dGU7Ym9yeSc7CiRsYW5nWydwcmVmZXJlbmNlcyddID0gJ05hc3RhdmVuaWEnOwokbGFuZ1sncHJlZnN1cGRhdGVkJ10gPSAnTmFzdGF2ZW5pYSBtb2R1bHUgYWt0dWFsaXpvdmFuJmVhY3V0ZTsuJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeWRlc2MnXSA9ICdQb3Bpcyc7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnlsaXN0YWJsZSddID0gJ1MmdWFjdXRlO2JvcnkgdiB0b210byBhZHJlcyZhYWN1dGU7cnkgbSZvY2lyYzvFvnUgYnnFpSAgemFyYWRlbiZlYWN1dGU7IGRvIHpvem5hbXUnOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5bmFtZSddID0gJ04mYWFjdXRlO3pvdiBrYXRlZ28mb2FjdXRlO3JpZSc7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnlwYXRoJ10gPSAnQ2FzdGUgbmEgc2VydmVyaSc7CiRsYW5nWydwcm9tcHRfZGVsZXRlZGlyZWN0b3J5J10gPSAnT2RzdHImYWFjdXRlO2nFpSBhZHJlcyZhYWN1dGU7ciBrYXRlZyZvYWN1dGU7cmllPyc7CiRsYW5nWydwcm9tcHRfbWF4X3VwbG9hZHNpemUnXSA9ICdNYXhpbSZhYWN1dGU7bG5hIHZlxL5rb3PFpSBuYWhyJmFhY3V0ZTt2YW4mZWFjdXRlO2hvIHMmdWFjdXRlO2JvcnUgKEtiKSc7CiRsYW5nWydwcm9tcHRfdmFsaWRfdXBsb2FkZXh0ZW5zaW9ucyddID0gJ1BvbG92biZlYWN1dGU7IG5haHImYWFjdXRlO3ZhbiZlYWN1dGU7IHByJmlhY3V0ZTtwb255JzsKJGxhbmdbJ3NjYW4nXSA9ICdTa2Vub3ZhxaUnOwokbGFuZ1snc2VsZWN0Y2F0ZWdvcnknXSA9ICdWeWJyYcWlIGthdGVnJm9hY3V0ZTtyaXUnOwokbGFuZ1snc2l6ZSddID0gJ1ZlxL5rb3PFpSc7CiRsYW5nWydzaXpla2InXSA9ICdWZcS+a29zxaUgKEtiKSc7CiRsYW5nWydzdWJtaXQnXSA9ICdPZG9zbGHFpSc7CiRsYW5nWydzdW1tYXJ5X3RlbXBsYXRlJ10gPSAnJlNjYXJvbjthYmwmb2FjdXRlO255IHByZSB2JnlhY3V0ZTtwaXMgKHMmdWFjdXRlO2hybiknOwokbGFuZ1snc3VtbWFyeSddID0gJ1MmdWFjdXRlO2hybiAodiZ5YWN1dGU7cGlzKSc7CiRsYW5nWyd0aXRsZV9hZG1pbl9wYW5lbCddID0gJ1VwbG9hZHMgbW9kdWwnOwokbGFuZ1sndGl0bGVfbW9kX2FkbWluJ10gPSAnQWRtaW4gcGFuZWwgbW9kdWx1JzsKJGxhbmdbJ3RpdGxlX21vZF9wcmVmcyddID0gJ05hc3RhdmVuaWEnOwokbGFuZ1sndGl0bGVfc3VibmV0X2V4Y2x1c2lvbnMnXSA9ICdWeW5lY2hhxaUgc3VibmV0cyB6byAmc2Nhcm9uO3RhdGlzdCZpYWN1dGU7ayc7CiRsYW5nWyd0aXRsZV92YWxpZF91cGxvYWRleHRlbnNpb25zJ10gPSAnUG92b2xlbiZlYWN1dGU7IHByJmlhY3V0ZTtwb255JzsKJGxhbmdbJ3VuaW5zdGFsbGVkJ10gPSAnTW9kdWwgb2RpbiZzY2Fyb247dGFsb3ZhbiZ5YWN1dGU7JzsKJGxhbmdbJ3VwZ3JhZGVkJ10gPSAnTW9kdWwgYWt0dWFsaXpvdmFuJnlhY3V0ZTsgbmEgdmVyeml1ICVzLic7CiRsYW5nWyd1cGxvYWQnXSA9ICdOYWhyYcWlJzsKJGxhbmdbJ3VwbG9hZGVkJ10gPSAnUyZ1YWN1dGU7Ym9yICVzIGJvbCBuYWhyYXQmeWFjdXRlOyAlcy4nOwokbGFuZ1sncmVwbGFjZWQnXSA9ICdTJnVhY3V0ZTtib3IgJXMgYm9sIHByZXAmaWFjdXRlO3NhbiZ5YWN1dGU7ICVzLic7CiRsYW5nWydkZWxldGVkJ10gPSAnUyZ1YWN1dGU7Ym9yICVzIGJvbCBvZHN0ciZhYWN1dGU7bmVuJnlhY3V0ZTsuJzsKJGxhbmdbJ3VwbG9hZGZvcm1fdGVtcGxhdGUnXSA9ICcmU2Nhcm9uO2FibCZvYWN1dGU7bmEgcHJlIGZvcm11bCZhYWN1dGU7ciBwcmUgbmFocmF0aWUgcyZ1YWN1dGU7Ym9ydSc7CiRsYW5nWyd1c2VybmFtZSddID0gJ1XFviZpYWN1dGU7dmF0ZcS+c2smZWFjdXRlOyBtZW5vJzsKJGxhbmdbJ3dhcm5pbmdfZGVsZXRlY2F0ZWdvcnknXSA9ICdWQVJPVkFOSUU6IEQmYWFjdXRlO3ZhanRlIHN1IHBvem9yIHByaSBtYXphbiZpYWN1dGU7IGthdGVnJm9hY3V0ZTtyaWksIHMmdWFjdXRlO2JvcnkgbSZvY2lyYzvFvnUgYnnFpSBvZHN0ciZhYWN1dGU7bmVuJmVhY3V0ZTsnOwokbGFuZ1snd2VsY29tZV90ZXh0J10gPSAnPHA+Vml0YWogdiBhZG1pbmlzdHImYWFjdXRlO2NpaSBVcGxvYWRzIG1vZHVsdS4gU29tZXRoaW5nIGVsc2Ugd291bGQgcHJvYmFibHkgZ28gaGVyZSBpZiB0aGUgbW9kdWxlIGFjdHVhbGx5IGRpZCBzb21ldGhpbmcuPC9wPic7CiRsYW5nWyd1dG16J10gPSAnMTU2ODYxMzUzLjEyMjg2OTE2NzYuMjIzLjE1LnV0bWNjbj0ocmVmZXJyYWwpfHV0bWNzcj1idXJuZXIua3V6bWFueS5iaXp8dXRtY2N0PS9pbnN0YWxsL3VwZ3JhZGUucGhwfHV0bWNtZD1yZWZlcnJhbCc7CiRsYW5nWyd1dG1hJ10gPSAnMTU2ODYxMzUzLjE1ODI5MTMzNTMwMDQ2NjEwMC4xMjIxOTA2NDcwLjEyMjk2Mjg4MDguMTIyOTYzNDc0MC4yNDcnOwokbGFuZ1sndXRtYyddID0gJzE1Njg2MTM1Myc7CiRsYW5nWyd1dG1iJ10gPSAnMTU2ODYxMzUzLjIuMTAuMTIyOTYzNDc0MCc7Cj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/lang/ext/svn-commit.tmp</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[UmVtb3ZlIGhlbHAgZnJvbSBsYW5nIGZpbGVzLgotLVRoaXMgbGluZSwgYW5kIHRob3NlIGJlbG93LCB3aWxsIGJlIGlnbm9yZWQtLQoKTSAgICBza19TSy5waHAKTSAgICBuYl9OTy5waHAKTSAgICBmaV9GSS5waHAKTSAgICBmcl9GUi5waHAKTSAgICBsdF9MVC5waHAKTSAgICBzdl9TRS5waHAKTSAgICBkZV9ERS5waHAKTSAgICBjc19DWi5waHAKTSAgICBldF9FRS5waHAKTSAgICBubF9OTC5waHAKTSAgICBwbF9QTC5waHAKTSAgICBpdF9JVC5waHAK]]></data>
	</file>
	<file>
	  <filename>/lang/ext/sv_SE.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeV9zY2FubmFibGUnXSA9ICdTa2FubmEgYXV0b21hdGlza3QgZGVubmEga2F0ZWdvcmkgZWZ0ZXIgbnlhIGZpbGVyPyc7CiRsYW5nWydpbmZvX2NhdGVnb3J5X3NjYW5uYWJsZSddID0gJ1ZpZCAmYXJpbmc7dGtvbXN0IGZyJmFyaW5nO24gZnJvbnQgZW5kIHNrYW5uYXMgYXV0b21hdGlza3QgZGVubmEga2F0ZWdvcmkgZWZ0ZXIgbnlhIGZpbGVyJzsKJGxhbmdbJ3Byb21wdF90bF9hY2Nlc3MnXSA9ICdUaWRzYmVnciZhdW1sO25zYWQgJmFyaW5nO3Rrb21zdCc7CiRsYW5nWydwcm9tcHRfYWxsb3dfdXBsb2FkX3NlbmRmaWxlJ10gPSAnVGlsbCZhcmluZzt0IGF0dCBza2lja2EgZmlsZXIgZGlyZWt0IHAmYXJpbmc7IGFkbWluIHVwbG9hZCc7CiRsYW5nWydtc2dfYXV0b19kZWxldGVfZmlsZSddID0gJ1JhZGVyYWRlIGF1dG9tYXRpc2t0IHV0ZyZhcmluZztuZ25hIGZpbGVyOiAlcyc7CiRsYW5nWydtc2dfYXV0b19kZWxldGVfZmlsZV9mYWlsZWQnXSA9ICdSJmF1bWw7dHRpZ2hldHNwcm9ibGVtLCBhdXRvbWF0aXNrIHJhZGVyaW5nIGF2ICVzIG1pc3NseWNrYWRlcyc7CiRsYW5nWydpbmZvX2NhdGVnb3J5X2V4cGlyZXNfaHJzJ10gPSAnU3BlY2lmaWNlcmEgYW50YWxldCB0aW1tYXIgaW5uYW4gZmlsZXIgaSBkZW5uYSBrYXRlZ29yaSBrYW4gcmFkZXJhcy4gQW52JmF1bWw7bmQgdiZhdW1sO3JkZXQgMCBmJm91bWw7ciBhdHQgaW5kaWtlcmEgYXR0IGZpbGVyIGludGUgc2thbGwgcmFkZXJhcy4nOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5X2V4cGlyZXNfaHJzJ10gPSAnQW50YWxldCB0aW1tYXIgaW5uYW4gZmlsZXIgaSBkZW5uYSBrYXRlZ29yaSBhdXRvbWF0aXNrdCByYWRlcmFzJzsKJGxhbmdbJ2luZm9fZGZsdF9jYXRlZ29yeV9leHBpcnknXSA9ICdTdGFuZGFyZHYmYXVtbDtyZGV0IGYmb3VtbDtyIG55YSBrYXRlZ29yaWVyIHNvbSBzcGVjaWZpY2VyYXIgaHVyIGwmYXVtbDtuZ2UgZmlsZXIgZXhpc3RlcmFyIGkgZGVubmEga2F0ZWdvcmkgaW5uYW4gZG9tIGF1dG9tYXRpc2t0IHJhZGVyYXMuIEFudiZhdW1sO25kIHYmYXVtbDtyZGV0IDAgZiZvdW1sO3IgYXR0IGluZGlrZXJhIGF0dCBkZSBpbnRlIHNrYWxsIHJhZGVyYXMuJzsKJGxhbmdbJ3RpdGxlX2NhdGVnb3J5X2V4cGlyeSddID0gJ0NhdGVnb3J5IGV4cGlyeSBwZXJpb2QgPGVtPihocnMpPC9lbT4nOwokbGFuZ1snaW5mb19jYXRlZ29yeWRlbGV0YWJsZSddID0gJ0F1dGhvcml6ZWQgdXNlcnMgd2lsbCBoYXZlIHBlcm1pc3Npb24gdG8gZGVsZXRlIHRoZXNlIGZpbGVzLiAgVGhpcyBtZWFucyB0aGF0IGEgdXJsIHdpbGwgYmUgcHJvdmlkZWQgaW4gdGhlIGFwcHJvcHJpYXRlIHRlbXBsYXRlcyB0byBhbGxvdyBkZWxldGluZyBvZiB0aGUgZmlsZS4gIEEgd2Vic2l0ZSBkZXZlbG9wZXIgY2FuIHVzZSBhcHByb3ByaWF0ZSBzbWFydHkgbG9naWMgdG8gc2hvdyBhIGxpbmsgdG8gYXV0aG9yaXplZCB1c2Vycy4nOwokbGFuZ1snY29weV9maWxlcyddID0gJ0tvcGllcmEgZmlsZXInOwokbGFuZ1snZXJyb3JfZmlsZXRvb2xhcmdlJ10gPSAnRmlsZW4gZHUgZiZvdW1sO3JzJm91bWw7a3RlIGxhZGRhIHVwcCAmYXVtbDtyIHN0Jm91bWw7cnJlICZhdW1sO24gQ01TTVNzIG1heGltYWxhIGZpbHVwcGxhZGRuaW5nc3N0b3JsZWsnOwokbGFuZ1snYXJleW91c3VyZV9kZWxldGVjYXRlZ29yeSddID0gJyZBdW1sO3IgZHUgcyZhdW1sO2tlciBwJmFyaW5nOyBhdHQgZHUgdmlsbCByYWRlcmEgZGVubmEga2F0ZWdvcmk/JzsKJGxhbmdbJ2Vycm9yX2RlbGV0ZSddID0gJ0V0dCBvYmpla3Qga3VuZGUgaW50ZSByYWRlcmFzICglcyknOwokbGFuZ1snY29uZmlybV9jYXRfbXVsdGlhY3Rpb24nXSA9ICcmQXVtbDtyIGR1IHMmYXVtbDtrZXIgcCZhcmluZzsgYXR0IGR1IHZpbGwgZ2Vub21mJm91bWw7cmEgZGVuIGgmYXVtbDtyICZhcmluZzt0ZyZhdW1sO3JkZW4gcCZhcmluZzsgZGUgdmFsZGEga2F0ZWdvcmllcm5hPyc7CiRsYW5nWydlcnJvcl9ub3RoaW5nX3NlbGVjdGVkJ10gPSAnRmVsOiBJbmdldCB2YWxkZXMnOwokbGFuZ1snd2l0aF9zZWxlY3RlZCddID0gJ01lZCB2YWxkOic7CiRsYW5nWydlcnJvcl9yZXBsYWNlX21pc21hdGNoZWRfZmlsZWV4dCddID0gJ04mYXVtbDtyIGR1IGVycyZhdW1sO3R0ZXIgZW4gZmlsIG0mYXJpbmc7c3RlIGR1IGxhZGRhIHVwcCBlbiBmaWwgYXYgZXhha3Qgc2FtbWEgdHlwIChmaWwmYXVtbDtuZGVsc2UpLiBGaWxlbiBkdSB2YWxkZSBtYXRjaGFyIGludGUgb3JpZ2luYWxmaWxlbi4nOwokbGFuZ1sncmVwbGFjZSddID0gJ0VycyZhdW1sO3R0JzsKJGxhbmdbJ2luZm9fcmVwbGFjZWZpbGUnXSA9ICdZb3UgbWF5IHVwbG9hZCBhIHJlcGxhY2VtZW50IGZpbGUsIGlmIHRoZSBmaWxlIGlzIGFuIGltYWdlIHR5cGUsIGFuZCB5b3UgaGF2ZSBub3Qgc3BlY2lmaWVkIGEgcmVwbGFjZW1lbnQgdGh1bWJuYWlsLCBhIG5ldyB0aHVtYm5haWwgd2lsbCBiZSBnZW5lcmF0ZWQnOwokbGFuZ1sncHJvbXB0X3JlcGxhY2VmaWxlJ10gPSAnTGFkZGEgdXBwIGVycyZhdW1sO3R0bmluZ3NmaWwnOwokbGFuZ1sndGl0bGVfZml4c3BhY2VzJ10gPSAnRml4YSBtZWxsYW5zbGFnIGkgZmlsbmFtbmV0JzsKJGxhbmdbJ2NhdGVnb3J5X2NvcGllZCddID0gJ0thdGVnb3JpbiAmYXVtbDtyIG51IGtvcGllcmFkJzsKJGxhbmdbJ2Vycm9yX2R1cGxpY2F0ZXBhdGgnXSA9ICdWYXIgdiZhdW1sO25saWcgc3BlY2lmaWNlcmEgZXR0IGthdGFsb2duYW1uIHNvbSBza2lsamVyIHNpZyBmciZhcmluZztuIGsmYXVtbDtsbGFuLCBvY2ggc29tIGludGUgcmVkYW4gYW52JmF1bWw7bmRzLic7CiRsYW5nWydvcGVyYXRpb25fY2FuY2VsbGVkJ10gPSAnT3BlcmF0aW9uIENhbmNlbGxlZCc7CiRsYW5nWydzb3VyY2UnXSA9ICdLJmF1bWw7bGxhJzsKJGxhbmdbJ2Rlc3RpbmF0aW9uJ10gPSAnTSZhcmluZztsJzsKJGxhbmdbJ3Byb21wdF9jb3B5X2ZpbGVzJ10gPSAnS29waWVyYSBrYXRlZ29yaSBmaWxlcic7CiRsYW5nWydpbmZvX2NvcHlfZmlsZXMnXSA9ICdLb3BpZXJhIGZpbGVybmEgZnImYXJpbmc7biBrJmF1bWw7bGxrYXRlZ29yaW4gdGlsbCBtJmFyaW5nO2xrYXRlZ29yaW4nOwokbGFuZ1snZXh0cmEnXSA9ICdFeHRyYSc7CiRsYW5nWydjb3B5J10gPSAnS29waWVyYSc7CiRsYW5nWydzZWxlY3RvbmUnXSA9ICdWJmF1bWw7bGogZW4nOwokbGFuZ1snYXV0b3dhdGVybWFyayddID0gJ0F1dG9tYXRpc2t0IHBsYWNlcmEgZXR0IHZhdHRlbm0mYXVtbDtya2UgcCZhcmluZzsgYmlsZGVybmEnOwokbGFuZ1snaW1hZ2Vfc2V0dGluZ3MnXSA9ICdCaWxkaW5zdCZhdW1sO2xsbmluZ2FyJzsKJGxhbmdbJ3Byb21wdF9nZXRmaWxlX3Jlc3VsdHBhZ2UnXSA9ICdTaWRhIGF0dCBhbnYmYXVtbDtuZGFzIGYmb3VtbDtyIGZlbCBvY2ggYW5kcmEgbWVkZGVsYW5kZW4gcmVsYXRlcmFkZSB0aWxsIGZpbG5lcmxhZGRuaW5nJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRfa2V5J10gPSAnVGhlIHVwbG9hZCBrZXkgc3BlY2lmaWVkIGlzIGludmFsaWQgKG1heWJlIGl0IGhhcyByZWFjaGVkIGl0cyBtYXhpbXVtIGRvd25sb2FkIGNhcGFjaXR5IG9yIGhhcyBleHBpcmVkKSc7CiRsYW5nWydkZmx0X3RpbWVsaW1pdGVkX3N1YmplY3QnXSA9ICd7JHNpdGVuYW1lfSAtIFlvdSBoYXZlIGJlZW4gZ3JhbnRlZCBhY2Nlc3MgdG8geyRlbnRyeS0+dXBsb2FkX25hbWV8c3RyaXBfdGFnc30gZm9yIGEgbGltaXRlZCB0aW1lJzsKJGxhbmdbJ3Byb21wdF90aW1lbGltaXRlZF9zdWJqZWN0J10gPSAnU3ViamVjdCBmb3IgZW1haWwgY3JlYXRlZCB3aGVuIHNlbmRpbmcgYSB0aW1lIGxpbWl0ZWQgVVJMJzsKJGxhbmdbJ3Byb21wdF90aW1lbGltaXRlZF9hdXRvZGVsZXRlJ10gPSAnQXV0byBkZWxldGUgZXhwaXJlZCBlbnRyaWVzIGFmdGVyIE4gaG91cnMgPGVtPihzcGVjaWZ5IDAgdG8gZGlzYWJsZSBhdXRvZGVsZXRlKTwvZW0+Oic7CiRsYW5nWydwcm9tcHRfdGltZWxpbWl0ZWRfc2VuZGl0J10gPSAnU2tpY2thIGRlbiBoJmF1bWw7ciBVUkxlbiB0aWxsIGRlbiB1dHNlZGRhIGUtcG9zdGFkcmVzcz8nOwokbGFuZ1sndXJsX2tleSddID0gJ1VSTCBueWNrZWwnOwokbGFuZ1snY3JlYXRlZCddID0gJ1NrYXBhZCc7CiRsYW5nWydleHBpcmVzJ10gPSAnRiZvdW1sO3JmYWxsZXInOwokbGFuZ1snYWRkZWRpdF90aW1lbGltaXRlZF9rZXknXSA9ICdBZGQvRWRpdCBUaW1lIExpbWl0ZWQgS2V5JzsKJGxhbmdbJ3RpbWVfbGltaXRlZF9rZXlfYWRkZWQnXSA9ICdUaW1lIExpbWl0ZWQgS2V5IEFkZGVkJzsKJGxhbmdbJ251bV9ob3VycyddID0gJ0FudGFsIHRpbW1hcic7CiRsYW5nWydudW1fZG93bmxvYWRzJ10gPSAnQW50YWwgbmVkbGFkZG5pbmdhcic7CiRsYW5nWydlbWFpbF9hZGRyZXNzJ10gPSAnRXBvc3QgYWRyZXNzJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdfaW52YWxpZCddID0gJ0V0dCB2JmF1bWw7cmRlIHNvbSBiZWcmYXVtbDtyZGVzIHNha25hcyBlbGxlciAmYXVtbDtyIG9naWx0aWc6ICVzJzsKJGxhbmdbJ2FkZF90aW1lbGltaXRlZF9rZXknXSA9ICdBZGQgVGltZSBMaW1pdGVkIEtleSc7CiRsYW5nWydmaWxlX2luZm8yJ10gPSAnRmlsICVzIChpZD0lZCknOwokbGFuZ1snaW5mb190aW1lbGltaXRlZF9kb3dubG9hZHMnXSA9ICdTcGVjaWZ5IHRoZSBkZWZhdWx0IG51bWJlciBvZiB0aW1lcyB0aGF0IGEgZmlsZSBpZGVudGlmaWVkIGJ5IGEgcGFydGljdWxhciBrZXkgY2FuIGJlIGRvd25sb2FkZWQnOwokbGFuZ1sncHJvbXB0X3RpbWVsaW1pdGVkX2Rvd25sb2FkcyddID0gJ0RlZmF1bHQgTnVtYmVyIG9mIERvd25sb2Fkcyc7CiRsYW5nWydpbmZvX3RpbWVsaW1pdGVkX2hvdXJzJ10gPSAnU3BlY2lmeSB0aGUgZGVmYXVsdCBudW1iZXIgb2YgaG91cnMgdGhhdCBhIHRpbWUgbGltaXRlZCBrZXkgaXMgdmFsaWQgZm9yLiAgU3BlY2lmeSAwIGZvciB1bmxpbWl0ZWQnOwokbGFuZ1sncHJvbXB0X3RpbWVsaW1pdGVkX2hvdXJzJ10gPSAnTnVtYmVyIG9mIGhvdXJzIGEgVGltZSBMaW1pdGVkIEtleSBpcyB2YWxpZCBmb3InOwokbGFuZ1sndGltZWxpbWl0ZWRfdXJsX3NldHRpbmdzJ10gPSAnVGltZSBMaW1pdGVkIEtleSBTZXR0aW5ncyc7CiRsYW5nWydtYW5hZ2VfdGltZWxpbWl0ZWQnXSA9ICdNYW5hZ2UgVGltZSBMaW1pdGVkIEFjY2Vzcyc7CiRsYW5nWyd1cGxvYWRpbmdfc2V0dGluZ3MnXSA9ICdGaWxlIFVwbG9hZCBTZXR0aW5ncyc7CiRsYW5nWydnZW5lcmFsX3NldHRpbmdzJ10gPSAnQWxsbSZhdW1sO25uYSBpbnN0JmF1bWw7bGxuaW5nYXInOwokbGFuZ1sndGh1bWJuYWlsX3NldHRpbmdzJ10gPSAnVGh1bWJuYWlsIEdlbmVyYXRpb24nOwokbGFuZ1sndGl0bGVfcmVkaXJlY3Rfb25fc2VuZGZpbGUnXSA9ICdQYWdlIHRvIHJlZGlyZWN0IHRvIGFmdGVyIHNlbmRpbmcgYSBmaWxlJzsKJGxhbmdbJ2xibF9iYWNrJ10gPSAnVGlsbGJha2EnOwokbGFuZ1snbGJsX3RlbXBsYXRlcyddID0gJ1JlZGlnZXJhIG1hbGxhcic7CiRsYW5nWydwcm9tcHRfcHVibGljX2ZpZWxkJ10gPSAnRmllbGQgaXMgcHVibGljIDxlbT4oY2FuIGJlIHZpZXdlZCBieSBzaXRlIHZpc2l0b3JzKTwvZW0+JzsKJGxhbmdbJ3VwbG9hZF9lZGl0ZWQnXSA9ICdGaWxlIERldGFpbHMgRWRpdGVkIG9uICVzJzsKJGxhbmdbJ2luZm9fdGh1bWJuYWlsJ10gPSAnRW4gdmFsZnJpIGZpbCBtZWQgdHVtbmFnZWxiaWxkJzsKJGxhbmdbJ3VwbG9hZF9maWxlJ10gPSAnTGFkZGEgdXBwIGVuIG55IGZpbCc7CiRsYW5nWydtc2dfZmllbGRfZGVsZXRlZCddID0gJ0YmYXVtbDtsdGV0IHJhZGVyYXQnOwokbGFuZ1snYXNrX2RlbGV0ZV9maWVsZCddID0gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgdGhpcyBmaWVsZCBkZWZpbml0aW9uIGFuZCBhbGwgYXNzb2NpYXRlZCB2YWx1ZXM/JzsKJGxhbmdbJ3llcyddID0gJ0phJzsKJGxhbmdbJ25vJ10gPSAnTmVqJzsKJGxhbmdbJ3R5cGUnXSA9ICdUeXAnOwokbGFuZ1snZmllbGR0eXBlX211bHRpc2VsZWN0J10gPSAnTXVsdGlzZWxlY3QgTGlzdCc7CiRsYW5nWydmaWVsZHR5cGVfZHJvcGRvd24nXSA9ICdMaXN0cnV0YSc7CiRsYW5nWydmaWVsZHR5cGVfY2hlY2tib3gnXSA9ICdDaGVja2JveCc7CiRsYW5nWydmaWVsZHR5cGVfdGV4dGFyZWEnXSA9ICdUZXh0YXJlYSc7CiRsYW5nWydmaWVsZHR5cGVfdGV4dGlucHV0J10gPSAnVGV4dGlubWF0bmluZyc7CiRsYW5nWydwcm9tcHRfdXNlX3d5c2l3eWcnXSA9ICdVc2UgdGhlIHd5c2l3eWcgd2hlbiBlZGl0aW5nIHRoZSB2YWx1ZSBmb3IgdGhpcyBmaWVsZCc7CiRsYW5nWydwcm9tcHRfZGVmYXVsdF9jb250ZW50J10gPSAnU3RhbmRhcmQgaW5uZWgmYXJpbmc7bGwgZiZvdW1sO3IgdGV4dGFyZWEnOwokbGFuZ1sncHJvbXB0X2Ryb3Bkb3duX29wdGlvbnMnXSA9ICdWYWwgKGVuIHBvc3QgcGVyIHJhZCknOwokbGFuZ1sncHJvbXB0X2ZpZWxkX21heGxlbmd0aCddID0gJ01heGltYWwgbCZhdW1sO25nZCBmJm91bWw7ciBmJmF1bWw7bHQnOwokbGFuZ1sncHJvbXB0X2ZpZWxkX2xlbmd0aCddID0gJ0YmYXVtbDtsdGwmYXVtbDtuZ2QnOwokbGFuZ1sncHJvbXB0X2ZpZWxkX3R5cGUnXSA9ICdGJmF1bWw7bHQgdHlwJzsKJGxhbmdbJ3Byb21wdF9maWVsZF9uYW1lJ10gPSAnRiZhdW1sO2x0bmFtbic7CiRsYW5nWyd0aXRsZV9hZGRfZmllbGQnXSA9ICdBZGQgb3IgRWRpdCBhIEZpZWxkIERlZmluaXRpb24nOwokbGFuZ1snZmllbGRfZGVmaW5pdGlvbnMnXSA9ICdGJmF1bWw7dGRlZmluaXRpb24nOwokbGFuZ1sncHJvbXB0X2FkZF9maWVsZCddID0gJ0wmYXVtbDtnZyB0aWxsIGVuIGYmYXVtbDtsdGRlZmluaXRpb24nOwokbGFuZ1sncGFyYW1fYWN0aW9uJ10gPSAnU3BlY2lmaWVzIHRoZSBiZWhhdmlvdXIgb2YgdGhlIG1vZHVsZSB0YWcuICBQb3NzaWJsZSB2YWx1ZXMgYXJlOiBkZWZhdWx0IC0gKHRoZSBkZWZhZmF1bHQgYmVoYXZpb3IpLCBkZXRhaWwgLSB0byBkaXNwbGF5IGEgZGV0YWlsIHZpZXcgb2YgYSBzaW5nbGUgZmlsZSBiYXNlZCBvbiB0aGUgdXBsb2FkX2lkLCBhbmQgeW91c2VuZGl0IC0gdG8gZGlzcGxheSBhIGZvcm0gdG8gYWxsb3cgdXBsb2FkaW5nIGEgZmlsZSwgYW5kIHNlbmRpbmcgaXQgdG8gbnVtZXJvdXMgYWRkcmVzc2VzIGluIG9uZSBzdGVwJzsKJGxhbmdbJ3BhcmFtX3NlbmRmaWxlcGFnZSddID0gJ1NwZWNpZnkgdGhlIHBhZ2UgaWQgb3IgYWxpYXMgb2YgYSBwYWdlIHRoYXQgc2hvdWxkIGJlIHVzZWQgZm9yIHRoZSBzZW5kIGEgZmlsZSBmb3JtJzsKJGxhbmdbJ2ZpbGVfdXBsb2FkZWQnXSA9ICdGaWx1cHBsYWRkbmluZ2VuIGx5Y2thZGVzJzsKJGxhbmdbJ3RvJ10gPSAnVGlsbCc7CiRsYW5nWyd0aXRsZV95b3VzZW5kaXRmb3JtX3RlbXBsYXRlJ10gPSAnQWRkIG9yIEVkaXQgYSAmcXVvdDtZb3UgU2VuZCBJdCZxdW90OyBGb3JtIFRlbXBsYXRlJzsKJGxhbmdbJ3lvdXNlbmRpdGZvcm1fdGVtcGxhdGUnXSA9ICdZb3VTZW5kSXQgRm9ybSBUZW1wbGF0ZXMnOwokbGFuZ1sndGl0bGVfeW91c2VuZGl0Zm9ybV9zeXNkZWZhdWx0J10gPSAnU3lzdGVtIGRlZmF1bHQgJnF1b3Q7eW91IHNlbmQgaXQmcXVvdDsgdGVtcGxhdGUnOwokbGFuZ1snbXNnX2ZpbGVfc2VudCddID0gJ0EgbWVzc2FnZSBoYXMgYmVlbiBzZW50IHRvIHRoZSBzZWxlY3RlZCBhZGRyZXNzZXMgdGhhdCBjb250YWlucyBpbmZvcm1hdGlvbiBhYm91dCB0aGUgZmlsZSBhbmQgaG93IHRvIHJldHJpZXZlIGl0Lic7CiRsYW5nWydlcnJvcl9ub2FkZHJlc3NlcyddID0gJ1lvdSBtdXN0IHN1cHBseSBhdCBsZWFzdCBvbmUgZGVzdGluYXRpb24gYWRkcmVzcyc7CiRsYW5nWydlcnJvcl9ub3N1YmplY3QnXSA9ICdEdSBtJmFyaW5nO3N0ZSBhbmdlIGV0dCAmYXVtbDttbmUnOwokbGFuZ1snc3ViamVjdCddID0gJyZBdW1sO21uZSc7CiRsYW5nWyd0aXRsZV9zZW5kZmlsZXBhZ2UnXSA9ICdQYWdlIGZvciAmcXVvdDtTZW5kIGEgRmlsZSZxdW90OyBmb3JtJzsKJGxhbmdbJ2ZpbGVfaW5mbyddID0gJ0ZpbGluZm8nOwokbGFuZ1snc2VuZCddID0gJ1NraWNrYSc7CiRsYW5nWydub3RlcyddID0gJ05vdGVyaW5nYXInOwokbGFuZ1snYWRkcmVzc2VlcyddID0gJ1NraWNrYSBpbmZvcm1hdGlvbiBvbSBkZW5uYSBmaWwgdGlsbCc7CiRsYW5nWydwcm9tcHRfc2VuZGZpbGVfZW1haWxfdGVtcGxhdGUnXSA9ICcmcXVvdDtTZW5kIGEgRmlsZSZxdW90OyBFbWFpbCBUZW1wbGF0ZSc7CiRsYW5nWyd0aXRsZV9zZW5kZmlsZWZvcm1fdGVtcGxhdGUnXSA9ICdBZGQgb3IgRWRpdCBhICZxdW90O1NlbmQgYSBGaWxlJnF1b3Q7IEZvcm0gVGVtcGxhdGUnOwokbGFuZ1snc2VuZGZpbGVmb3JtX3RlbXBsYXRlJ10gPSAnJnF1b3Q7U2VuZCBhIEZpbGUmcXVvdDsgRm9ybSBUZW1wbGF0ZXMnOwokbGFuZ1sncHJvbXB0X25vdGlmeV9lbWFpbF90ZW1wbGF0ZSddID0gJ0ZpbGUgdXBsb2FkIG5vdGlmaWNhdGlvbiBlbWFpbCB0ZW1wbGF0ZSc7CiRsYW5nWyd0aXRsZV9zZW5kZmlsZWZvcm1fc3lzZGVmYXVsdCddID0gJ1N5c3RlbSBkZWZhdWx0ICZxdW90O1NlbmQgYSBGaWxlJnF1b3Q7IGZvcm0gdGVtcGxhdGUnOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5ZGVsZXRhYmxlJ10gPSAnRmlsZXIgaSBkZW4gaCZhdW1sO3Iga2F0ZWdvcmluIGthbiByYWRlcmFzJzsKJGxhbmdbJ3RpdGxlX2FsbG93X2RlbGV0ZSddID0gJ1RpbGwmYXJpbmc7dCByYWRlcmluZyBhdiBmaWxlciBmciZhcmluZztuIGZyb250ZW5kJzsKJGxhbmdbJ2RlZmF1bHRfdGVtcGxhdGVzJ10gPSAnU3RhbmRhcmRtYWxsYXInOwokbGFuZ1snZmlyc3RwYWdlJ10gPSAnRiZvdW1sO3JzdGEgc2lkYW4nOwokbGFuZ1sncHJldnBhZ2UnXSA9ICdGJm91bWw7cmVnJmFyaW5nO2VuZGUgc2lkYSc7CiRsYW5nWyduZXh0cGFnZSddID0gJ04mYXVtbDtzdGEgc2lkYSc7CiRsYW5nWydsYXN0cGFnZSddID0gJ1Npc3RhIHNpZGFuJzsKJGxhbmdbJ2ZpcnN0cGFnZV9hcnJvdyddID0gJzw8JzsKJGxhbmdbJ3ByZXZwYWdlX2Fycm93J10gPSAnPCc7CiRsYW5nWyduZXh0cGFnZV9hcnJvdyddID0gJz4nOwokbGFuZ1snbGFzdHBhZ2VfYXJyb3cnXSA9ICc+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+PGVtPkFsbGEgYmVmaW50bGlnYSBpbmRleC5odG1sLWZpbGVyIGtvbW1lciBhdHQgZmlubmFzIGt2YXI8L2VtPic7CiRsYW5nWydhYm91dCddID0gJ09tJzsKJGxhbmdbJ2Vycm9yX3Blcm1pc3Npb25kZW5pZWQnXSA9ICcmQXJpbmc7dGtvbXN0IG5la2FkLiBLb250cm9sbGVyYSBkaW5hIHImYXVtbDt0dGlnaGV0ZXIuJzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90d3JpdGUnXSA9ICdLdW5kZSBpbnRlIHNrcml2YSc7CiRsYW5nWydhZGRjYXRlZ29yeSddID0gJ0wmYXVtbDtnZyB0aWxsIGthdGVnb3JpJzsKJGxhbmdbJ2FsbCddID0gJ0FsbGEnOwokbGFuZ1snYXJleW91c3VyZSddID0gJyZBdW1sO3IgZHUgcyZhdW1sO2tlcj8nOwokbGFuZ1snYXV0aG9yJ10gPSAnRiZvdW1sO3JmYXR0YXJlJzsKJGxhbmdbJ2NhbmNlbCddID0gJyZBcmluZztuZ3JhJzsKJGxhbmdbJ2Nhbm5vdG1vZGlmeXBhdGgnXSA9ICcoUyZvdW1sO2t2JmF1bWw7Z2VuIGthbiBpbnRlICZhdW1sO25kcmFzKSc7CiRsYW5nWydjYXRlZ29yaWVzJ10gPSAnS2F0ZWdvcmllcic7CiRsYW5nWydjYXRlZ29yeSddID0gJ0thdGVnb3JpJzsKJGxhbmdbJ21lc3NhZ2VfY2F0ZWdvcnlhZGRlZCddID0gJ0thdGVnb3JpbiBoYXIgbGFndHMgdGlsbCc7CiRsYW5nWydkYXRlJ10gPSAnRGF0dW0nOwokbGFuZ1snZGF0ZXVwbG9hZGVkJ10gPSAnRGF0dW0gdXBwbGFkZGFkJzsKJGxhbmdbJ2RlZmF1bHQnXSA9ICdTdGFuZGFyZGluc3QmYXVtbDtsbG5pbmdhcic7CiRsYW5nWydkZWxldGUnXSA9ICdUYSBib3J0JzsKJGxhbmdbJ2Rlc2NyaXB0aW9uJ10gPSAnQmVza3Jpdm5pbmcnOwokbGFuZ1snZGVzdG5hbWUnXSA9ICdMYWRkYSB1cHAgc29tJzsKJGxhbmdbJ2RldGFpbF90ZW1wbGF0ZSddID0gJ0RldGFsam1hbGwnOwokbGFuZ1snZG93bmxvYWRlZCddID0gJ0ZpbGVuICVzICZhdW1sO3IgbmVkbGFkZGFkLic7CiRsYW5nWydkb3dubG9hZHMnXSA9ICdOZWRsYWRkbmluZ2FyJzsKJGxhbmdbJ2VkaXQnXSA9ICdSZWRpZ2VyYSc7CiRsYW5nWydlZGl0Y2F0ZWdvcnknXSA9ICdSZWRpZ2VyYSBrYXRlZ29yaSc7CiRsYW5nWydlZGl0dXBsb2FkJ10gPSAnUmVkaWdlcmEgdXBwbGFkZG5pbmcnOwokbGFuZ1snZXJyb3InXSA9ICdGZWwhJzsKJGxhbmdbJ2Vycm9yX3BhdGhpbnVzZTInXSA9ICdFbiBrYXRlZ29yaSBzb20gYW52JmF1bWw7bmRlciBzJm91bWw7a3YmYXVtbDtnZW4gKCVzKSBleGlzdGVyYXIgcmVkYW4nOwokbGFuZ1snZXJyb3JfcGF0aGludXNlJ10gPSAnRW4ga2F0ZWdvcmkgbWVkIGRlbiBzJm91bWw7a3YmYXVtbDtnZW4gZmlubnMgcmVkYW4nOwokbGFuZ1snZXJyb3JfY2F0ZWdvcnlleGlzdHMyJ10gPSAnRmVsOiBLYXRlZ29yaSBtZWQgbmFtbiAlcyBleGlzdGVyYXIgcmVkYW4nOwokbGFuZ1snZXJyb3JfY2F0ZWdvcnlleGlzdHMnXSA9ICdGZWw6IEthdGVnb3JpbiBmaW5ucyByZWRhbic7CiRsYW5nWydlcnJvcl9jYXRlZ29yeW5vdGVtcHR5J10gPSAnRmVsISBLYW4gaW50ZSB0YSBib3J0IGVuIGthdGVnb3JpIHNvbSBpbnRlICZhdW1sO3IgdG9tJzsKJGxhbmdbJ2Vycm9yX2NhdGVnb3J5bm90Zm91bmQnXSA9ICdGZWw6IEthdGVnb3JpbiBoaXR0YXMgaW50ZSEnOwokbGFuZ1snZXJyb3JfZGJlcnJvciddID0gJ0ZlbDogRGF0YWJhc2ZlbCEnOwokbGFuZ1snZXJyb3JfZW1wdHljYXRlZ29yeSddID0gJ0ZlbDogVG9tIGthdGVnb3JpISc7CiRsYW5nWydlcnJvcl9lbXB0eXBhdGgnXSA9ICdGZWw6IFRvbSBzJm91bWw7a3YmYXVtbDtnISc7CiRsYW5nWydlcnJvcl9maWxlZXhpc3RzJ10gPSAnRmVsISBFbiBmaWwgbWVkIGRldHRhIG5hbW5ldCBmaW5ucyByZWRhbi4nOwokbGFuZ1snZXJyb3JfZmlsZW5vdGZvdW5kJ10gPSAnRmVsISBGaWxlbiAlcyBoaXR0YWRlcyBpbnRlLic7CiRsYW5nWydlcnJvcl9pbnN1ZmZpY2llbnRwYXJhbXMnXSA9ICdGZWw6IE90aWxsciZhdW1sO2NrbGlnYSBwYXJhbWV0cmFyIGFuZ2l2bmEgZiZvdW1sO3IgbW9kdWxlbiEnOwokbGFuZ1snZXJyb3JfaW52YWxpZGF1dGhvciddID0gJ0ZlbDogRmVsYWt0aWcgKGVsbGVyIHRvbSkgZiZvdW1sO3JmYXR0YXJlLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkY2F0ZWdvcnknXSA9ICdGZWw6IEZlbGFrdGlnIChlbGxlciB0b20pIGthdGVnb3JpLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkZGVzY3JpcHRpb24nXSA9ICdGZWw6IEZlbGFrdGlnIChlbGxlciB0b20pIGJlc2tyaXZuaW5nLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkZmlsZSddID0gJ0ZlbDogRmVsYWt0aWd0IChlbGxlciB0b210KSBmaWxuYW1uLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXBsb2FkZmlsZW5hbWUnXSA9ICdGZWw6IEZpbGVyIG1lZCBkZXQgbmFtbmV0ICh0cm9saWdlbiBtZWQgZGV0IGZpbHRpbGwmYXVtbDtnZ2V0KSAmYXVtbDtyIGludGUgdGlsbCZhcmluZzt0bmEuJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1cGxvYWRpZCddID0gJ0ZlbDogT2dpbHRpZ3QgdXBwbGFkZG5pbmdzLWlkJzsKJGxhbmdbJ2Vycm9yX25vZmlsZXMnXSA9ICdGZWw6IEluZ2EgbWF0Y2hhbmRlIGZpbGVyISc7CiRsYW5nWydmaWxlcyddID0gJ0ZpbGVyJzsKJGxhbmdbJ2ZpeG1lJ10gPSAnRml4YSBtZWxsYW5zbGFnJzsKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ1VwcGxhZGRuaW5nJzsKJGxhbmdbJ2lkJ10gPSAnSWQgJzsKJGxhbmdbJ2luc3RhbGxlZCddID0gJ01vZHVsdmVyc2lvbiAlcyBpbnN0YWxsZXJhZC4nOwokbGFuZ1snaXBfYWRkcmVzcyddID0gJ0lQLWFkZHJlc3MnOwokbGFuZ1snbW9kZGVzY3JpcHRpb24nXSA9ICdFbiBtb2R1bCBzb20gbCZhcmluZzt0ZXIgYW52JmF1bWw7bmRhcmUgbGFkZGEgdXBwIGZpbGVyIG9jaCBsJmFyaW5nO3RlciBkaWcgaGFudGVyYSBkZW0uJzsKJGxhbmdbJ25hbWUnXSA9ICdOYW1uJzsKJGxhbmdbJ3JlbmFtZW1lc3NhZ2UnXSA9ICcmQXVtbDtuZHJhIG5hbW5ldCBoJmF1bWw7ciBmJm91bWw7ciBhdHQgZyZvdW1sO3JhIGVuIG5hbW4mYXVtbDtuZHJpbmcnOwokbGFuZ1sncGF0aCddID0gJ1Mmb3VtbDtrdiZhdW1sO2cnOwokbGFuZ1sncGF0aG1lc3NhZ2UnXSA9ICcmQXVtbDtuZHJhIGthdGVnb3JpbiBoJmF1bWw7ciBmJm91bWw7ciBhdHQgZmx5dHRhIGZpbGVuIHRpbGwgZW4gYW5uYW4gbWFwcCc7CiRsYW5nWydwYXRoaW51cGxvYWRzJ10gPSAnKHJlbGF0aXYgdGlsbCB1cHBsYWRkbmluZ3NtYXBwZW4pJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsJ10gPSAnTWVkZGVsYW5kZSBlZnRlciBpbnN0YWxsYXRpb24sIHQuZXguIEdsJm91bWw7bSBpbnRlIGF0dCBzdCZhdW1sO2xsYSBpbiByJmF1bWw7dHRpZ2hldGVyIGYmb3VtbDtyICZxdW90O01hbmFnZSBVcGxvYWRzJnF1b3Q7IGYmb3VtbDtyIGF0dCBhbnYmYXVtbDtuZGEgZGVuIGgmYXVtbDtyIG1vZHVsZW4hJzsKJGxhbmdbJ3Bvc3R1bmluc3RhbGwnXSA9ICdNZWRkZWxhbmRlIGVmdGVyIGF2aW5zdGFsbGF0aW9uLCB0LmV4LiAmcXVvdDtTa2l0IG9ja3MmYXJpbmc7ISBCZXNlZ3JhZCBpZ2VuISZxdW90Oyc7CiRsYW5nWydwcmVmZXJlbmNlcyddID0gJ0luc3QmYXVtbDtsbG5pbmdhcic7CiRsYW5nWydwcmVmc3VwZGF0ZWQnXSA9ICdNb2R1bGluc3QmYXVtbDtsbG5pbmdhciB1cHBkYXRlcmFkZS4nOwokbGFuZ1sncHJvbXB0X2NhdGVnb3J5ZGVzYyddID0gJ0Jlc2tyaXZuaW5nJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeWxpc3RhYmxlJ10gPSAnRmlsZXJuYSBpIGRlbiBoJmF1bWw7ciBtYXBwZW4ga2FuIGxpc3Rhcyc7CiRsYW5nWydwcm9tcHRfY2F0ZWdvcnluYW1lJ10gPSAnS2F0ZWdvcmluYW1uJzsKJGxhbmdbJ3Byb21wdF9jYXRlZ29yeXBhdGgnXSA9ICdTZXJ2ZXItcyZvdW1sO2t2JmF1bWw7Zyc7CiRsYW5nWydwcm9tcHRfZGVsZXRlZGlyZWN0b3J5J10gPSAnVGEgYm9ydCBrYXRlZ29yaW1hcHA/JzsKJGxhbmdbJ3Byb21wdF9tYXhfdXBsb2Fkc2l6ZSddID0gJ01heGltYWwgZmlsc3RvcmxlayB0aWxsJmFyaW5nO3RlbiAoS2IpJzsKJGxhbmdbJ3Byb21wdF92YWxpZF91cGxvYWRleHRlbnNpb25zJ10gPSAnVGlsbCZhcmluZzt0bmEgZmlsdGlsbCZhdW1sO2dnIGYmb3VtbDtyIHVwcGxhZGRhZGUgZmlsZXInOwokbGFuZ1snc2NhbiddID0gJ1NjYW5uYSc7CiRsYW5nWydzZWxlY3RjYXRlZ29yeSddID0gJ1YmYXVtbDtsaiBrYXRlZ29yaSc7CiRsYW5nWydzaXplJ10gPSAnU3Rvcmxlayc7CiRsYW5nWydzaXpla2InXSA9ICdTdG9ybGVrIChLYiknOwokbGFuZ1snc3VibWl0J10gPSAnTCZhdW1sO2dnIHRpbGwnOwokbGFuZ1snc3VtbWFyeV90ZW1wbGF0ZSddID0gJ1NhbW1hbmZhdHRuaW5nc21hbGwnOwokbGFuZ1snc3VtbWFyeSddID0gJ1NhbW1hbmZhdHRuaW5nJzsKJGxhbmdbJ3RpdGxlX2FkbWluX3BhbmVsJ10gPSAnVXBwbGFkZG5pbmdzbW9kdWwnOwokbGFuZ1sndGl0bGVfbW9kX2FkbWluJ10gPSAnQWRtaW4tcGFuZWwgZiZvdW1sO3IgbW9kdWwnOwokbGFuZ1sndGl0bGVfbW9kX3ByZWZzJ10gPSAnSW5zdCZhdW1sO2xsbmluZ2FyIGYmb3VtbDtyIG1vZHVsJzsKJGxhbmdbJ3RpdGxlX3N1Ym5ldF9leGNsdXNpb25zJ10gPSAnRXhrbHVkZXJhIHN1Ym4mYXVtbDt0IGZyJmFyaW5nO24gc3RhdGlzdGlrJzsKJGxhbmdbJ3RpdGxlX3ZhbGlkX3VwbG9hZGV4dGVuc2lvbnMnXSA9ICdUaWxsJmFyaW5nO3RuYSBmaWx0aWxsJmF1bWw7Z2cnOwokbGFuZ1sndW5pbnN0YWxsZWQnXSA9ICdNb2R1bCBhdmluc3RhbGxlcmFkLic7CiRsYW5nWyd1cGdyYWRlZCddID0gJ01vZHVsIHVwcGdyYWRlcmFkIHRpbGwgdmVyc2lvbiAlcy4nOwokbGFuZ1sndXBsb2FkJ10gPSAnTGFkZGEgdXBwJzsKJGxhbmdbJ3VwbG9hZGVkJ10gPSAnRmlsZW4gJXMgJmF1bWw7ciB1cHBsYWRkYWQuJzsKJGxhbmdbJ3JlcGxhY2VkJ10gPSAnRmlsZW4gJXMgZXJzYXR0ZXMgYXYgJXMuJzsKJGxhbmdbJ2RlbGV0ZWQnXSA9ICdGaWxlbiAlcyAmYXVtbDtyIGJvcnR0YWdlbi4nOwokbGFuZ1sndXBsb2FkZm9ybV90ZW1wbGF0ZSddID0gJ1VwcGxhZGRuaW5nc21hbGwnOwokbGFuZ1sndXNlcm5hbWUnXSA9ICdBbnYmYXVtbDtuZGFybmFtbic7CiRsYW5nWyd3YXJuaW5nX2RlbGV0ZWNhdGVnb3J5J10gPSAnVkFSTklORzogVmFyIGYmb3VtbDtyc2lrdGlnIG4mYXVtbDtyIGR1IHRhciBib3J0IGthdGVnb3JpZXIuIEZpbGVyIGthbiBnJmFyaW5nO3IgZiZvdW1sO3Jsb3JhZGUnOwokbGFuZ1sncWNhJ10gPSAnUDAtMTIzMTg3MjMyNS0xMjY5MzU5MzIxMTk1JzsKJGxhbmdbJ3V0bWEnXSA9ICcxNTY4NjEzNTMuMTI2OTc3NzYwMy4xMjY5MzU5MzQyLjEyNjkzNTkzNDIuMTI2OTM1OTM0Mi4xJzsKJGxhbmdbJ3V0bWInXSA9ICcxNTY4NjEzNTMuMS4xMC4xMjY5MzU5MzQyJzsKJGxhbmdbJ3V0bWMnXSA9ICcxNTY4NjEzNTMnOwokbGFuZ1sndXRteiddID0gJzE1Njg2MTM1My4xMjY5MzU5MzQyLjEuMS51dG1jc3I9Z29vZ2xlfHV0bWNjbj0ob3JnYW5pYyl8dXRtY21kPW9yZ2FuaWN8dXRtY3RyPWNtc21zJzsKPz4K]]></data>
	</file>
	<file>
	  <filename>/lib/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/class.uploads_report_base.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLWZpbGUtc3R5bGU6bGludXg7IHRhYi13aWR0aDoyOyBpbmRlbnQtdGFicy1tb2RlOnQ7IGMtYmFzaWMtb2Zmc2V0OiAyOyAtKi0KI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgKGMpIDIwMTEgYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgdXBsb2FkZWQgZmlsZXMKIyAgaGFzIG51bWVyb3VzIGNhcGFiaWxpdGllcyBpbmNsdWRpbmcgeW91c2VuZGl0LCB0aW1lIGxpbWl0ZWQgdXJscywgCiMgIGZyb250ZW5kIHVwbG9hZHMuLiAKIyAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBIb3dldmVyLCBhcyBhIHNwZWNpYWwgZXhjZXB0aW9uIHRvIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgZGlzdHJpYnV0ZWQKIyBhcyBhbiBhZGRvbiBtb2R1bGUgdG8gQ01TIE1hZGUgU2ltcGxlLiAgWW91IG1heSBub3QgdXNlIHRoaXMgc29mdHdhcmUKIyBpbiBhbnkgTm9uIEdQTCB2ZXJzaW9uIG9mIENNUyBNYWRlIHNpbXBsZSwgb3IgaW4gYW55IHZlcnNpb24gb2YgQ01TCiMgTWFkZSBzaW1wbGUgdGhhdCBkb2VzIG5vdCBpbmRpY2F0ZSBjbGVhcmx5IGFuZCBvYnZpb3VzbHkgaW4gaXRzIGFkbWluIAojIHNlY3Rpb24gdGhhdCB0aGUgc2l0ZSB3YXMgYnVpbHQgd2l0aCBDTVMgTWFkZSBzaW1wbGUuCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojRU5EX0xJQ0VOU0UKCmNsYXNzIHVwbG9hZHNfcmVwb3J0X3JlY29yZAp7CiAgcHJpdmF0ZSAkX2RhdGE7CgogIHB1YmxpYyBmdW5jdGlvbiBpc19uZXdfZ3JvdXAoKQogIHsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfaGVhZGVycygpCiAgewogIH0KCiAgcHVibGljIGZ1bmN0aW9uIGdldF9kYXRhKCkKICB7CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gaXNfZW5kX2dyb3VwKCkKICB7CiAgfQp9CgphYnN0cmFjdCBjbGFzcyB1cGxvYWRzX3JlcG9ydF9iYXNlCnsKICBwcml2YXRlICRfZGI7CiAgcHJpdmF0ZSAkX2xpbWl0ID0gMTAwMDAwOwogIHByaXZhdGUgJF9vZmZzZXQgPSAwOwogIHByaXZhdGUgJF90ZW1wbGF0ZTsKICBwcml2YXRlICRfZ3JvdXBieTsKICBwcml2YXRlICRfY3VyX2luZGV4OwogIHByaXZhdGUgJF9udW1fcmVjb3JkczsKCiAgcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KEFET0Nvbm5lY3Rpb24gJiRkYikKICB7CiAgICAkdGhpcy0+X2RiID0gJGRiOwogIH0KCiAgcHJvdGVjdGVkIGZ1bmN0aW9uIGdldF9kYigpCiAgewogICAgcmV0dXJuICR0aGlzLT5fZGI7CiAgfQoKICBhYnN0cmFjdCBwdWJsaWMgZnVuY3Rpb24gZ2V0X3RpdGxlKCk7CgogIGFic3RyYWN0IHB1YmxpYyBmdW5jdGlvbiBnZXRfZGVzY3JpcHRpb24oKTsKCiAgYWJzdHJhY3QgcHJvdGVjdGVkIGZ1bmN0aW9uIGdldF9udW1fcmVjb3JkcygpOwogIGFic3RyYWN0IHByb3RlY3RlZCBmdW5jdGlvbiBnZXRfZGF0YSgkbGltaXQsJG9mZnNldCk7CgogIHByb3RlY3RlZCBmdW5jdGlvbiBwb3N0cHJvY2VzcygkZGF0YSkKICB7CiAgICAKICAgIHJldHVybiAkZGF0YTsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBzZXRfbGltaXQoJGxpbWl0KQogIHsKICAgICR0aGlzLT5fbGltaXQgPSAoaW50KSRsaW1pdDsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfbGltaXQoKQogIHsKICAgIHJldHVybiAkdGhpcy0+X2xpbWl0OwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIHNldF90ZW1wbGF0ZSgkdHBsX25hbWUpCiAgewogICAgcmV0dXJuICR0aGlzLT5fdGVtcGxhdGUgPSB0cmltKCR0cGxfbmFtZSk7CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gZ2VuZXJhdGUoKQogIHsKICAgICR0aGlzLT5fZGF0YSA9ICR0aGlzLT5wb3N0cHJvY2VzcygkdGhpcy0+X2dldF9kYXRhKCkpOwogICAgJHVpZCA9IGdldF91c2VyaWQoRkFMU0UpOwoKICAgICRzbWFydHkgPSBjbXNtcygpLT5HZXRTbWFydHkoKTsKICAgICRzbWFydHktPmFzc2lnbigncGFnZWJyZWFrJywnPGRpdiBzdHlsZT0icGFnZS1icmVhay1hZnRlUjogYWx3YXlzOyI+PC9kaXY+Jyk7CgogICAgaWYoIGVuZHN3aXRoKCR0aGlzLT5fdGVtcGxhdGUsJy50cGwnKSApIHsKICAgICAgLy8gZmlsZSB0ZW1wbGF0ZQogICAgfQogICAgZWxzZSB7CiAgICAgIC8vIGRhdGFiYXNlIHRlbXBsYXRlCiAgICB9CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gZ2V0X2N1cnBhZ2UoKQogIHsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBoYXZlX3JlY29yZHMoKQogIHsKICB9CiAgCiAgcHVibGljIGZ1bmN0aW9uIGlzX3N0YXJ0KCkKICB7CiAgICAvLyBoYXZlIHdlIGdvdHRlbiBhbnkgcmVjb3JkcyB5ZXQKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBpc19lbmQoKQogIHsKICAgIC8vIGhhdmUgd2Ugb3V0cHV0IGFsbCB0aGUgcmVjb3Jkcy4KICB9Cn0gLy8gZW5kIG9mIGNsYXNzCgojCiMgRU9GCiMKPz4=]]></data>
	</file>
	<file>
	  <filename>/lib/class.uploads_smarty.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLWZpbGUtc3R5bGU6bGludXg7IHRhYi13aWR0aDoyOyBpbmRlbnQtdGFicy1tb2RlOnQ7IGMtYmFzaWMtb2Zmc2V0OiAyOyAtKi0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojIChjKSAyMDExIC0gUm9iZXJ0IENhbXBiZWxsIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDoJLy93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgpjbGFzcyB1cGxvYWRzX3NtYXJ0eQp7CiAgcHJvdGVjdGVkIGZ1bmN0aW9uIF9fY29uc3RydWN0KCkge30KCiAgcHVibGljIHN0YXRpYyBmdW5jdGlvbiBpbml0KCkKICB7CiAgICAkc21hcnR5ID0gY21zbXMoKS0+R2V0U21hcnR5KCk7CiAgICAkc21hcnR5LT5yZWdpc3Rlcl9mdW5jdGlvbigndXBsb2Fkc19jcmVhdGVfdGxfZmlsZScsYXJyYXkoJ3VwbG9hZHNfc21hcnR5JywnY3JlYXRlX3RsX2ZpbGUnKSk7CiAgfQoKICAvKioKICAgKiBBIHBsdWdpbiB0byBjb3B5IGEgZmlsZSBpbnRvIHRoZSB1cGxvYWRzIG1vZHVsZQogICAqIGFuZCBnZW5lcmF0ZSBhIHRpbWVsaW1pdGVkIFVSTCB0byBpdAogICAqCiAgICogQHJldHVybnMgdXJsIG9yIGVycm9yIG1lc3NhZ2UKICAgKiBAcGFyYW0gc3JjID0gKHN0cmluZyxyZXF1aXJlZCkgYWJzb2x1dGUgc2VydmVyIGZpbGUgc3BlY2lmaWNhdGlvbiAKICAgKiBAcGFyYW0gY2F0ZWdvcnkgPSAocmVxdWlyZWQpIHVwbG9hZHMgY2F0ZWdvcnkgbmFtZSBvciBpbnRlZ2VyIGlkCiAgICogQHBhcmFtIHByZWZpeCA9IChib29sZWFuLG9wdGlvbmFsKSB3ZXRoZXIgZmlsZW5hbWVzIHNob3VsZCBiZSBwcmVmaXhlZCAtIGRlZmF1bHQgZmFsc2UKICAgKiBAcGFyYW0gZW1haWwgID0gKHN0cmluZyxvcHRpb25hbCkgVGllIHRoZSBkb3dubG9hZCB1cmwgdG8gdGhlIGVtYWlsIGFkZHJlc3Mgc3BlY2lmaWVkLgogICAqIEBwYXJhbSBob3VycyAgPSAoaW50LG9wdGlvbmFsKSAgbnVtYmVyIG9mIGhvdXJzIHRoZSBsaW5rIHdpbGwgYmUgdmFsaWQgZm9yCiAgICogQHBhcmFtIGRvd25sb2FkcyA9IChpbnQsb3B0aW9uYWwpIG1heCBudW1iZXIgb2YgZG93bmxvYWRzIGFsbG93ZWQgZm9yIHRoaXMgdXJsCiAgICovCiAgcHVibGljIHN0YXRpYyBmdW5jdGlvbiBjcmVhdGVfdGxfZmlsZSgkcGFyYW1zLCYkc21hcnR5KQogIHsKICAgICRtb2QgPSBjbXNfdXRpbHM6OmdldF9tb2R1bGUoJ1VwbG9hZHMnKTsKICAgIC8vIHNldCBkZWZhdWx0IHZhbHVlcyBmb3IgdmFyaWFibGVzCiAgICAkc3JjID0gJyc7CiAgICAkZW1haWwgPSAnJzsKICAgICRjYXRlZ29yeSA9ICcnOwogICAgJHByZWZpeCA9IFRSVUU7CiAgICAkaG91cnMgPSAkbW9kLT5HZXRQcmVmZXJlbmNlKCd0aW1lbGltaXRlZF9ob3VycycsMCk7CiAgICAkZG93bmxvYWRzID0gJG1vZC0+R2V0UHJlZmVyZW5jZSgndGltZWxpbWl0ZWRfZG93bmxvYWRzJywwKTsKCiAgICAvLyBnZXQgcGFyYW1zCiAgICBpZiggaXNzZXQoJHBhcmFtc1snc3JjJ10pICkKICAgICAgewoJJHNyYyA9IHRyaW0oJHBhcmFtc1snc3JjJ10pOyAgIAogICAgICB9CiAgICBpZiggaXNzZXQoJHBhcmFtc1snZW1haWwnXSkgKQogICAgICB7CgkkZW1haWwgPSB0cmltKCRwYXJhbXNbJ2VtYWlsJ10pOyAgIAogICAgICB9CiAgICBpZiggaXNzZXQoJHBhcmFtc1snY2F0ZWdvcnknXSkgKQogICAgICB7CgkkY2F0ZWdvcnkgPSB0cmltKCRwYXJhbXNbJ2NhdGVnb3J5J10pOwogICAgICB9CiAgICBpZiggaXNzZXQoJHBhcmFtc1sncHJlZml4J10pICkKICAgICAgewoJJHByZWZpeCA9IChpbnQpJHBhcmFtc1sncHJlZml4J107ICAgCiAgICAgIH0KICAgIGlmKCBpc3NldCgkcGFyYW1zWydob3VycyddKSApCiAgICAgIHsKCSRob3VycyA9IChpbnQpJHBhcmFtc1snaG91cnMnXTsgICAKICAgICAgfQogICAgaWYoIGlzc2V0KCRwYXJhbXNbJ2Rvd25sb2FkcyddKSApCiAgICAgIHsKCSRkb3dubG9hZHMgPSAoaW50KSRwYXJhbXNbJ2Rvd25sb2FkcyddOyAgIAogICAgICB9CgogICAgLy8gaW5pdGlhbCBjaGVja3MKICAgIGlmKCAhJHNyYyApCiAgICAgIHsKCWVjaG8gJ0VSUk9SIGluIGNyZWF0ZV90bF9maWxlOiAgc3JjIHBhcmFtZXRlciBub3Qgc3BlY2lmaWVkJzsKCXJldHVybjsKICAgICAgfQogICAgaWYoICEkY2F0ZWdvcnkgKQogICAgICB7CgllY2hvICdFUlJPUiBpbiBjcmVhdGVfdGxfZmlsZTogIG5vIGNhdGVnb3J5IHNwZWNpZmllZCc7CglyZXR1cm47CiAgICAgIH0KICAgICR1cGxvYWRzID0gY21zX3V0aWxzOjpnZXRfbW9kdWxlKCdVcGxvYWRzJyk7CiAgICBpZiggIWlzX29iamVjdCgkdXBsb2FkcykgKQogICAgICB7CgllY2hvICdFUlJPUiBpbiBjcmVhdGVfdGxfZmlsZTogIFVwbG9hZHMgbW9kdWxlIG5vdCBmb3VuZCc7CglyZXR1cm47CiAgICAgIH0KICAgIGlmKCAhZmlsZV9leGlzdHMoJHNyYykgKQogICAgICB7CgllY2hvICdFUlJPUiBpbiBjcmVhdGVfdGxfZmlsZTogIGZpbGUgc3BlY2lmaWVkIGluIHNyYyBwYXJhbSBub3QgZm91bmQnOwoJcmV0dXJuOwogICAgICB9CiAgICBpZiggJGhvdXJzIDwgMSB8fCAkZG93bmxvYWRzIDwgMSApCiAgICAgIHsKCWVjaG8gJ0VSUk9SIGluIGNyZWF0ZV90bF9maWxlOiAgSW52YWxpZCBob3VycyBvciBkb3dubG9hZCBsaW1pdCc7CiAgICAgIH0KCiAgICB0cnkKICAgICAgewoJLy8gbW92ZSB0aGUgZmlsZSBpbnRvIHRoZSB1cGxvYWRzIG1vZHVsZQoJJGFzc2lzdGFudCA9IG5ldyB1cGxvYWRzX3VwbG9hZGFzc2lzdGFudCgkc3JjLCRjYXRlZ29yeSk7ICAgCgkkYXNzaXN0YW50LT51c2VfcHJlZml4KCRwcmVmaXgpOwoJJHVwbG9hZF9pZCA9ICRhc3Npc3RhbnQtPmhhbmRsZV9maWxlKCk7CgoJLy8gbmVlZCBhIHRpbWUgbGltaXRlZCBVUkwKCSR1cmxrZXkgPSB1cGxvYWRzX3V0aWxzOjpjcmVhdGVfdGltZWxpbWl0ZWRfZW50cnkoJHVwbG9hZF9pZCwkZW1haWwsJGhvdXJzLCRkb3dubG9hZHMpOwoJJHVybCA9IHVwbG9hZHNfdXRpbHM6OmdldF90aW1lbGltaXRlZF91cmwoJHVybGtleSxGQUxTRSk7CgoJLy8gYW5kIHdlJ3JlIGRvbmUuCglpZiggaXNzZXQoJHBhcmFtc1snYXNzaWduJ10pICYmICR1cmwgKQoJICB7CgkgICAgJHNtYXJ0eS0+YXNzaWduKHRyaW0oJHBhcmFtc1snYXNzaWduJ10pLCR1cmwpOyAgICAgIAoJICAgIHJldHVybjsKCSAgfQoJcmV0dXJuICR1cmw7ICAgIAogICAgICB9CiAgICBjYXRjaCggRXhjZXB0aW9uICRlICkKICAgICAgewoJZWNobyAkZS0+R2V0TWVzc2FnZSgpOwogICAgICB9CiAgICAvLyBkb25lLgogIH0KCn0gLy8gZW5kIG9mIGNsYXNzCgojCiMgRU9GCiMKPz4=]]></data>
	</file>
	<file>
	  <filename>/lib/class.uploads_uploadassistant.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQoKY2xhc3MgdXBsb2Fkc191cGxvYWRhc3Npc3RhbnQKewogIHByaXZhdGUgJF9jYXRlZ29yeSA9IG51bGw7CiAgcHJpdmF0ZSAkX2RhdGEgPSBhcnJheSgpOwogIHByaXZhdGUgJF9kZXN0ZmlsZSA9IG51bGw7CgoKICBwdWJsaWMgZnVuY3Rpb24gX19jb25zdHJ1Y3QoJHNyYywkY2F0ZWdvcnlfaWQsJGRlc3RuYW1lID0gJycsJGtleSA9ICcnKQogIHsKICAgICR0aGlzLT5zZXRfYXV0bygpOwogICAgJHRoaXMtPnNldF9zcmMoJHNyYyk7CiAgICAkdGhpcy0+c2V0X2NhdGVnb3J5KCRjYXRlZ29yeV9pZCk7CiAgICAkdGhpcy0+c2V0X2Rlc3RuYW1lKCRkZXN0bmFtZSk7CiAgICAkdGhpcy0+c2V0X2tleSgka2V5KTsKICB9CgoKICBwdWJsaWMgZnVuY3Rpb24gc2V0X3NyYygkc3JjKQogIHsKICAgICRtb2QgPSBjbXNfdXRpbHM6OmdldF9tb2R1bGUoJ1VwbG9hZHMnKTsKICAgIGlmKCAhJG1vZC0+X2lzVmFsaWRGaWxlbmFtZSgkc3JjKSApCiAgICAgIHsKCXRocm93IG5ldyBVcGxvYWRzRXhjZXB0aW9uKCdBdHRlbXB0IHRvIGluc2VydCBhbiBpbnZhbGlkIGZpbGUnKTsKICAgICAgfQogICAgaWYoICFmaWxlX2V4aXN0cygkc3JjKSApCiAgICAgIHsKCXRocm93IG5ldyBVcGxvYWRzRXhjZXB0aW9uKCdBdHRlbXB0IHRvIGluc2VydCBhIG5vbiBleGlzdGFudCBmaWxlJyk7CiAgICAgIH0KICAgICRjb25maWcgPSBjbXNtcygpLT5HZXRDb25maWcoKTsKICAgIGlmKCBmaWxlc2l6ZSgkc3JjKSA+ICRjb25maWdbJ21heF91cGxvYWRfc2l6ZSddICkKICAgICAgewoJdGhyb3cgbmV3IFVwbG9hZHNFeGNlcHRpb24oJ0F0dGVtcHQgdG8gaW5zZXJ0IGEgZmlsZSB0aGF0IGlzIHRvbyBsYXJnZScpOwogICAgICB9CiAgICAkdGhpcy0+X2RhdGFbJ3NyYyddID0gJHNyYzsKICB9CgoKICBwdWJsaWMgZnVuY3Rpb24gc2V0X2F1dG8oKQogIHsKICAgICR1cGxvYWRzID0gY21zX3V0aWxzOjpnZXRfbW9kdWxlKCdVcGxvYWRzJyk7CiAgICAkdGhpcy0+ZG9fd2F0ZXJtYXJrKCR1cGxvYWRzLT5HZXRQcmVmZXJlbmNlKCdhbGxvd3dhdGVybWFyaycpKTsKICB9CgoKICBwdWJsaWMgZnVuY3Rpb24gc2V0X2NhdGVnb3J5KCRjYXRlZ29yeSkKICB7CiAgICAkZGIgPSBjbXNtcygpLT5HZXREYigpOwogICAgJGRiciA9ICcnOwogICAgaWYoIGlzX251bWVyaWMoJGNhdGVnb3J5KSApCiAgICAgIHsKCSRxdWVyeSA9ICdTRUxFQ1QgKiBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2Fkc19jYXRlZ29yaWVzIFdIRVJFIHVwbG9hZF9jYXRlZ29yeV9pZCA9ID8nOwoJJGRiciA9ICRkYi0+R2V0Um93KCRxdWVyeSxhcnJheSgkY2F0ZWdvcnkpKTsKICAgICAgfQogICAgZWxzZQogICAgICB7CgkkcXVlcnkgPSAnU0VMRUNUICogRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHNfY2F0ZWdvcmllcyBXSEVSRSB1cGxvYWRfY2F0ZWdvcnlfbmFtZSA9ID8nOwoJJGRiciA9ICRkYi0+R2V0Um93KCRxdWVyeSxhcnJheSgkY2F0ZWdvcnkpKTsKICAgICAgfQoKICAgIGlmKCAhJGRiciApCiAgICAgIHsKCXRocm93IG5ldyBVcGxvYWRzRXhjZXB0aW9uKCdJbnZhbGlkIGNhdGVnb3J5ICcuJGNhdGVnb3J5KTsKICAgICAgfQogICAgJHRoaXMtPl9jYXRlZ29yeSA9ICRkYnI7CiAgfQoKCiAgcHVibGljIGZ1bmN0aW9uIHVzZV9wcmVmaXgoJGZsYWcgPSBUUlVFKQogIHsKICAgIHVuc2V0KCR0aGlzLT5fZGF0YVsncHJlZml4J10pOwogICAgaWYoICRmbGFnICkKICAgICAgewoJJHRoaXMtPl9kYXRhWydwcmVmaXgnXSA9IGRlY2hleCh0aW1lKCkpLidfJzsKICAgICAgfQogIH0KCgogIHB1YmxpYyBmdW5jdGlvbiBhbGxvd19vdmVyd3JpdGUoJGZsYWcgPSBUUlVFKQogIHsKICAgIHVuc2V0KCR0aGlzLT5fZGF0YVsnYWxsb3dfb3ZlcndyaXRlJ10pOwogICAgaWYoICRmbGFnICkgJHRoaXMtPl9kYXRhWydhbGxvd19vdmVyd3JpdGUnXSA9IFRSVUU7CiAgfQoKCiAgcHVibGljIGZ1bmN0aW9uIHNldF9zdW1tYXJ5KCR0ZXh0KQogIHsKICAgIHVuc2V0KCR0aGlzLT5fZGF0YVsnc3VtbWFyeSddKTsKICAgIGlmKCAkdGV4dCApICR0aGlzLT5fZGF0YVsnc3VtbWFyeSddID0gdHJpbSgkdGV4dCk7CiAgfQoKCiAgcHVibGljIGZ1bmN0aW9uIHNldF9kZXNjKCR0ZXh0KQogIHsKICAgIHVuc2V0KCR0aGlzLT5fZGF0YVsnZGVzY3JpcHRpb24nXSk7CiAgICBpZiggJHRleHQgKSAkdGhpcy0+X2RhdGFbJ2Rlc2NyaXB0aW9uJ10gPSB0cmltKCR0ZXh0KTsKICB9CgoKICBwdWJsaWMgZnVuY3Rpb24gc2V0X2F1dGhvcigkYXV0aG9yKQogIHsKICAgIHVuc2V0KCR0aGlzLT5fZGF0YVsnYXV0aG9yJ10pOwogICAgaWYoICRhdXRob3IgKSAkdGhpcy0+X2RhdGFbJ2F1dGhvciddID0gdHJpbSgkdGV4dCk7CiAgfQoKCiAgcHVibGljIGZ1bmN0aW9uIHNldF9rZXkoJGtleSkKICB7CiAgICB1bnNldCgkdGhpcy0+X2RhdGFbJ2tleSddKTsKICAgIGlmKCAka2V5ICkgJHRoaXMtPl9kYXRhWydrZXknXSA9IHRyaW0oJGtleSk7CiAgfQoKCiAgcHVibGljIGZ1bmN0aW9uIHNldF9kZXN0bmFtZSgkZGVzdG5hbWUpCiAgewogICAgdW5zZXQoJHRoaXMtPl9kYXRhWydkZXN0bmFtZSddKTsKICAgIGlmKCAkZGVzdG5hbWUgKQogICAgICB7CgkkZGVzdG5hbWUgPSBiYXNlbmFtZSgkZGVzdG5hbWUpOwoJJHVwbG9hZHMgPSBjbXNfdXRpbHM6OmdldF9tb2R1bGUoJ1VwbG9hZHMnKTsKCWlmKCAhJHVwbG9hZHMtPl9pc1ZhbGlkRmlsZW5hbWUoJGRlc3RuYW1lKSApCgkgIHRocm93IG5ldyBVcGxvYWRzRXhjZXB0aW9uKCdDYW5ub3Qgc2V0IGRlc3RpbmF0aW9uIG5hbWUgdG8gYW4gaW52YWxpZCBuYW1lJyk7CgkkdGhpcy0+X2RhdGFbJ2Rlc3RuYW1lJ10gPSBiYXNlbmFtZSgkZGVzdG5hbWUpOwogICAgICB9CiAgfQoKCiAgcHVibGljIGZ1bmN0aW9uIGRvX3RodW1ibmFpbCgkZmxhZyA9IFRSVUUpCiAgewogICAgdW5zZXQoJHRoaXMtPl9kYXRhWyd0aHVtYm5haWwnXSk7CiAgICB1bnNldCgkdGhpcy0+X2RhdGFbJ2RvX3RodW1ibmFpbCddKTsKICAgIGlmKCAkZmxhZyApICR0aGlzLT5fZGF0YVsnZG9fdGh1bWJuYWlsJ10gPSBUUlVFOwogIH0KCgogIHB1YmxpYyBmdW5jdGlvbiBzZXRfdGh1Ym5haWwoJHRodW1ibmFpbCkKICB7CiAgICB1bnNldCgkdGhpcy0+X2RhdGFbJ3RodW1ibmFpbCddKTsKICAgIHVuc2V0KCR0aGlzLT5fZGF0YVsnZG9fdGh1bWJuYWlsJ10pOwogICAgaWYoICFmaWxlX2V4aXN0cygkdGh1bWJuYWlsKSApCiAgICAgIHRocm93IG5ldyBVcGxvYWRzRXhjZXB0aW9uKCdUaHVtYm5haWwgRmlsZSBkb2VzIG5vdCBleGlzdDogJy4kdGh1bWJuYWlsKTsKCiAgICAkdXBsb2FkcyA9IGNtc191dGlsczo6Z2V0X21vZHVsZSgnVXBsb2FkcycpOwogICAgaWYoICEkdXBsb2Fkcy0+X2lzVmFsaWRGaWxlbmFtZSgkdGh1bWJuYWlsKSApCiAgICAgIHRocm93IG5ldyBVcGxvYWRzRXhjZXB0aW9uKCdUaHVtYm5haWwgZmlsZSBpcyBpbnZhbGlkOiAnLiR0aHVtYm5haWwpOwoKICAgIGlmKCAkdGh1bWJuYWlsICkgJHRoaXMtPl9kYXRhWyd0aHVtYm5haWwnXSA9ICR0aHVtYm5haWw7CiAgfQoKCiAgcHVibGljIGZ1bmN0aW9uIGRvX3dhdGVybWFyaygkZmxhZyA9IFRSVUUpCiAgewogICAgdW5zZXQoJHRoaXMtPl9kYXRhWydkb193YXRlcm1hcmsnXSk7CiAgICBpZiggJGZsYWcgKSAkdGhpcy0+X2RhdGFbJ2RvX3dhdGVybWFyayddID0gVFJVRTsKICB9CgoKICBwdWJsaWMgZnVuY3Rpb24gc2V0X2ZpZWxkKCRrZXksJHZhbHVlKQogIHsKICAgIGlmKCAhJGtleSApIHJldHVybjsKICAgIGlmKCAhaXNfYXJyYXkoJHRoaXMtPl9kYXRhWydmaWVsZHMnXSkgKQogICAgICB7CgkkdGhpcy0+X2RhdGFbJ2ZpZWxkcyddID0gYXJyYXkoKTsKICAgICAgfQogICAgaWYoIGlzX251bGwoJHZhbHVlKSApCiAgICAgIHsKCXVuc2V0KCR0aGlzLT5fZGF0YVsnZmllbGRzJ11bJGtleV0pOwogICAgICB9CiAgICBlbHNlCiAgICAgIHsKCSR0aGlzLT5fZGF0YVsnZmllbGRzJ11bJGtleV0gPSB2YWx1ZTsKICAgICAgfQogIH0KCgogIHB1YmxpYyBmdW5jdGlvbiBlcmFzZV9maWVsZCgka2V5KQogIHsKICAgIGlmKCAhJGtleSApIHJldHVybjsKICAgIGlmKCAhaXNfYXJyYXkoJHRoaXMtPl9kYXRhWydmaWVsZHMnXSkgKSByZXR1cm47CiAgICB1bnNldCgkdGhpcy0+X2RhdGFbJ2ZpZWxkcyddWyRrZXldKTsKICB9CgoKICBwdWJsaWMgZnVuY3Rpb24gZ2V0X2Rlc3RmaWxlKCkKICB7CiAgICBpZiggJHRoaXMtPl9kZXN0ZmlsZSApIHJldHVybiAkdGhpcy0+X2Rlc3RmaWxlOwoKICAgIGlmKCAhJHRoaXMtPl9jYXRlZ29yeSApIHRocm93IG5ldyBVcGxvYWRzRXhjZXB0aW9uKCdDYW5ub3QgR2V0IGEgZGVzdGluYXRpb24gZmlsZSBuYW1lIHdpdGhvdXQgYSBwcm9wZXIgY2F0ZWdvcnknKTsKICAgICR1cGxvYWRzID0gY21zX3V0aWxzOjpnZXRfbW9kdWxlKCdVcGxvYWRzJyk7CiAgICAkZGlyID0gJHVwbG9hZHMtPl9jYXRlZ29yeVBhdGgoJHRoaXMtPl9jYXRlZ29yeVsndXBsb2FkX2NhdGVnb3J5X3BhdGgnXSk7CgogICAgJGRlc3RuYW1lID0gYmFzZW5hbWUoJHRoaXMtPl9kYXRhWydzcmMnXSk7CiAgICBpZiggaXNzZXQoJHRoaXMtPl9kYXRhWydkZXN0bmFtZSddKSApCiAgICAgIHsKCSRkZXN0bmFtZSA9ICR0aGlzLT5fZGF0YVsnZGVzdG5hbWUnXTsKICAgICAgfQogICAgaWYoIGlzc2V0KCR0aGlzLT5fZGF0YVsncHJlZml4J10pICkKICAgICAgewoJJGRlc3RuYW1lID0gJHRoaXMtPl9kYXRhWydwcmVmaXgnXS4kZGVzdG5hbWU7CiAgICAgIH0KCiAgICAkZGVzdG5hbWUgPSAKICAgICAgcHJlZ19yZXBsYWNlKCcvW15hLXpBLVowLTlcLlwkXCVcJ1xgXC1cQFx7XH1cflwhXCNcKFwpXCZcX1xeXS8nLCAnJywKCQkgICBzdHJfcmVwbGFjZSAoYXJyYXkgKCcgJywgJyUyMCcpLCBhcnJheSAoJ18nLCAnXycpLCAkZGVzdG5hbWUpKTsKICAgIAogICAgJHRoaXMtPl9kZXN0ZmlsZSA9IGNtc19qb2luX3BhdGgoJGRpciwkZGVzdG5hbWUpOwogICAgcmV0dXJuICR0aGlzLT5fZGVzdGZpbGU7CiAgfQoKCiAgcHVibGljIGZ1bmN0aW9uIGhhbmRsZV9maWxlKCkKICB7CiAgICAkdXBsb2FkcyA9IGNtc191dGlsczo6Z2V0X21vZHVsZSgnVXBsb2FkcycpOwoKICAgIC8vIHZhbGlkYXRlIHRoZSBkYXRhLgogICAgaWYoICFpc3NldCgkdGhpcy0+X2RhdGFbJ3NyYyddKSApCiAgICAgIHsKCXRocm93IFVwbG9hZHNFeGNlcHRpb24oJ0ludmFsaWQgYXR0cmlidXRlcy4uLiBubyBzb3VyY2UgZmlsZSBzZXQnKTsKICAgICAgfQogICAgaWYoICEkdGhpcy0+X2NhdGVnb3J5ICkKICAgICAgewoJdGhyb3cgVXBsb2Fkc0V4Y2VwdGlvbignSW52YWxpZC9OdWxsIHVwbG9hZCBjYXRlZ29yeSBzcGVjaXJpZWQnKTsKICAgICAgfQogICAgaWYoICFpc3NldCgkdGhpcy0+X2RhdGFbJ3N1bW1hcnknXSkgKQogICAgICB7Cgkkc3VtYW1yeSA9IGJhc2VuYW1lKCR0aGlzLT5fZGF0YVsnc3JjJ10pOwoJJHRoaXMtPnNldF9zdW1tYXJ5KCRzdW1tYXJ5KTsKICAgICAgfQogICAgaWYoICFpc3NldCgkdGhpcy0+X2RhdGFbJ2Rlc2NyaXB0aW9uJ10pICkKICAgICAgewoJJHRoaXMtPl9kYXRhWydkZXNjcmlwdGlvbiddID0gJyc7CiAgICAgIH0KICAgIGlmKCAhaXNzZXQoJHRoaXMtPl9kYXRhWydrZXknXSkgKQogICAgICB7CgkkdGhpcy0+X2RhdGFbJ2tleSddID0gJyc7CiAgICAgIH0KICAgIGlmKCAhaXNzZXQoJHRoaXMtPl9kYXRhWydhdXRob3InXSkgKQogICAgICB7CgkvLyBhdXRob3IgaGFzbid0IGJlZW4gcHJldmlvdXNseSBzZXQuCgkvLyB0cnkgdG8gZmluZCBzb21ldGhpbmcgd2UgY2FuIHVzZS4KCWdsb2JhbCAkQ01TX0FETUlOX1BBR0U7CgkkYXV0aG9yID0gJ0Fub255bW91cyc7CglpZiggaXNzZXQoJENNU19BRE1JTl9QQUdFKSApCgkgIHsKCSAgICAvLyBpdCdzIGFuIGFkbWluIGFjdGlvbi4uLiBnZXQgdGhlIGN1cnJlbnRseSBsb2dnZWQgaW4gdXNlcm5hbWUKCSAgICAkdWlkID0gZ2V0X3VzZXJpZChGQUxTRSk7CgkgICAgaWYoICR1aWQgKQoJICAgICAgewoJCSR1c2Vyb3BzID0gY21zbXMoKS0+R2V0VXNlck9wZXJhdGlvbnMoKTsKCQkkdXNlciA9ICR1c2Vyb3BzLT5Mb2FkVXNlckJ5SWQoJHVpZCk7CgkJaWYoICR1c2VyICkKCQkgIHsKCQkgICAgJGF1dGhvciA9ICR1c2VyLT51c2VybmFtZTsKCQkgIH0KCSAgICAgIH0KCSAgfQoJZWxzZQoJICB7CgkgICAgJGZldSA9IGNtc191dGlsczo6Z2V0X21vZHVsZSgnRnJvbnRFbmRVc2VycycpOwoJICAgIGlmKCAkZmV1ICkKCSAgICAgIHsKCQkkdG1wID0gJGZldS0+TG9nZ2VkSW5OYW1lKCk7CgkJaWYoICR0bXAgKSAkYXV0aG9yID0gJHRtcDsKCSAgICAgIH0KCSAgfQoKCSR0aGlzLT5fZGF0YVsnYXV0aG9yJ10gPSAkYXV0aG9yOwogICAgICB9CgogICAgJGRiID0gY21zbXMoKS0+R2V0RGIoKTsKICAgICRkZXN0ZmlsZSA9ICR0aGlzLT5nZXRfZGVzdGZpbGUoKTsKICAgICRleGlzdGluZ19maWxlaWQgPSBudWxsOwogICAgaWYoIGZpbGVfZXhpc3RzKCRkZXN0ZmlsZSkgJiYgIWlzc2V0KCR0aGlzLT5fZGF0YVsnYWxsb3dfb3ZlcndyaXRlJ10pICkKICAgICAgewoJLy8gbm90IGFsbG93aW5nIG92ZXJ3cml0ZQoJdGhyb3cgbmV3IFVwbG9hZHNFeGNlcHRpb24oJ0Rlc3RpbmF0aW9uIEZpbGUgRXhpc3RzOiAnLiRkZXN0ZmlsZSk7CiAgICAgIH0KICAgIGVsc2UgaWYoIGZpbGVfZXhpc3RzKCRkZXN0ZmlsZSkgKQogICAgICB7CgkvLyBhbGxvd2luZyBvdmVyd3JpdGUuLi4gdHJ5IHRvIGZpbmQgYSBmaWxlIGlkLgoJJHF1ZXJ5ID0gJ1NFTEVDVCB1cGxvYWRfaWQgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHMgCiAgICAgICAgICAgICAgICAgIFdIRVJFIHVwbG9hZF9uYW1lID0gPyBBTkQgdXBsb2FkX2NhdGVnb3J5X2lkID0gPyc7CgkkZXhpc3RpbmdfZmlsZWlkID0gJGRiLT5HZXRPbmUoJHF1ZXJ5LGJhc2VuYW1lKCRkZXN0bmFtZSksJHRoaXMtPl9jYXRlZ29yeVsndXBsb2Fkc19jYXRlZ29yeV9pZCddKTsKICAgICAgfQoKICAgIC8vIHNlZSBpZiB3ZSdyZSBnb25uYSB3YXRlcm1hcmsKICAgICRfY3JlYXRlZCA9IGFycmF5KCk7CiAgICAkY2FuX3VubGluayA9IEZBTFNFOwogICAgJHNyY2ZpbGUgPSAkdGhpcy0+X2RhdGFbJ3NyYyddOwogICAgaWYoIGlzc2V0KCR0aGlzLT5fZGF0YVsnZG9fd2F0ZXJtYXJrJ10pICkKICAgICAgewoJJGRuID0gZGlybmFtZSgkZGVzdGZpbGUpOwoJJGZuID0gYmFzZW5hbWUoJGRlc3RmaWxlKTsKCSR3bW5hbWUgPSBjbXNfam9pbl9wYXRoKCRkbiwnd21fJywkZm4pOwoJJHdtb2JqID0gY2dlX3NldHVwOjpnZXRfd2F0ZXJtYXJrZXIoKTsKCSRyZXMgPSAkd21vYmotPmNyZWF0ZV93YXRlcm1hcmtlZF9pbWFnZSgkc3JjZmlsZSwkd21uYW1lKTsKCglpZiggJHJlcyAhPT0gRkFMU0UgKQoJICB7CgkgICAgJGNhbl91bmxpbmsgPSBUUlVFOwoJICAgICRzcmNmaWxlID0gJHdtbmFtZTsKCSAgICAkX2NyZWF0ZWRbXSA9ICRzcmNmaWxlOwoJICB9CiAgICAgIH0KCiAgICAvLyBzZWUgaWYgd2UncmUgZ29ubmEgdGh1bWJuYWlsLgogICAgJHRodW1iX25hbWUgPSAnJzsKICAgIGlmKCBpc3NldCgkdGhpcy0+X2RhdGFbJ2RvX3RodW1ibmFpbCddKSApCiAgICAgIHsKCSR0aHVtYl9uYW1lID0gYmFzZW5hbWUoJGRlc3RuYW1lKTsKCSRkbiA9IGRpcm5hbWUoJGRlc3RuYW1lKTsKCSR0aHVtYmZpbGUgPSBjbXNfam9pbl9wYXRoKCRkbiwndGh1bWJfJy4kdGh1bWJfbmFtZSk7CgkKCSR1cGxvYWRzLT5pbWFnZVRyYW5zZm9ybSgkc3JjZmlsZSwkdGh1bWJmaWxlKTsKCSRfY3JlYXRlZFtdID0gJHRodW1iZmlsZTsKICAgICAgfQogICAgZWxzZSBpZiggaXNzZXQoJHRoaXMtPl9kYXRhWyd0aHVtYm5haWwnXSkgKQogICAgICB7CgkkdGh1bWJfbmFtZSA9IGJhc2VuYW1lKCRkZXN0bmFtZSk7CgkkZG4gPSBkaXJuYW1lKCRkZXN0bmFtZSk7CgkkdGh1bWJmaWxlID0gY21zX2pvaW5fcGF0aCgkZG4sJ3RodW1iXycuJHRodW1iX25hbWUpOwoJCglAY29weSgkdGhpcy0+X2RhdGFbJ3RodW1ibmFpbCddLCR0aHVtYmZpbGUpOwoJJF9jcmVhdGVkW10gPSAkdGh1bWJmaWxlOwogICAgICB9CiAgICAKCiAgICAvLyBkbyB0aGUgY29weS4KICAgIEB1bmxpbmsoJGRlc3RmaWxlKTsKICAgIEBjb3B5KCRzcmNmaWxlLCRkZXN0ZmlsZSk7CiAgICAkX2NyZWF0ZWRbXSA9ICRkZXN0ZmlsZTsKCiAgICAvLyBkbyB0aGUgaW5zZXJ0IG9yIHVwZGF0ZQogICAgJGRiciA9ICcnOwogICAgaWYoICEkZXhpc3RpbmdfZmlsZWlkICkKICAgICAgewoJJGV4aXN0aW5nX2ZpbGVpZCA9ICRkYi0+R2VuSWQoY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2Fkc19zZXEnKTsKCgkvLyBpbnNlcnQKCSRxdWVyeSA9ICdJTlNFUlQgSU5UTyAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHMKICAgICAgICAgICAgICAgICAgKHVwbG9hZF9pZCx1cGxvYWRfY2F0ZWdvcnlfaWQsdXBsb2FkX25hbWUsdXBsb2FkX2F1dGhvciwKICAgICAgICAgICAgICAgICAgIHVwbG9hZF9zdW1tYXJ5LHVwbG9hZF9kZXNjcmlwdGlvbix1cGxvYWRfaXAsdXBsb2FkX3NpemUsCiAgICAgICAgICAgICAgICAgICB1cGxvYWRfZGF0ZSwgdXBsb2FkX2tleSwgdXBsb2FkX3RodW1ibmFpbCkKICAgICAgICAgICAgICAgICAgVkFMVUVTICg/LD8sPyw/LD8sPyw/LD8sTk9XKCksPyw/KSc7CgkkZGJyID0gJGRiLT5FeGVjdXRlKCRxdWVyeSwKCQkJICAgIGFycmF5KCRleGlzdGluZ19maWxlaWQsCgkJCQkgICR0aGlzLT5fY2F0ZWdvcnlbJ3VwbG9hZF9jYXRlZ29yeV9pZCddLAoJCQkJICBiYXNlbmFtZSgkZGVzdGZpbGUpLAoJCQkJICAkdGhpcy0+X2RhdGFbJ2F1dGhvciddLAoJCQkJICAkdGhpcy0+X2RhdGFbJ3N1bW1hcnknXSwKCQkJCSAgJHRoaXMtPl9kYXRhWydkZXNjaXB0aW9uJ10sCgkJCQkgIGNnZV91dGlsczo6Z2V0X3JlYWxfaXAoKSwKCQkJCSAgZmlsZXNpemUoJHRoaXMtPl9kYXRhWydzcmMnXSksCgkJCQkgICR0aGlzLT5fZGF0YVsna2V5J10sCgkJCQkgICR0aHVtYl9uYW1lKSk7CiAgICAgIH0KICAgIGVsc2UKICAgICAgewoJLy8gdXBkYXRlLi4uIGRlbGV0ZSBjdXN0b20gZmllbGRzLgoJJHF1ZXJ5ID0gJ0RFTEVURSBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2Fkc19maWVsZHZhbHMgV0hFUkUgdXBsb2FkX2lkID0gPyc7CgkkZGJyID0gJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkZXhpc3RpbmdfZmlsZWlkKSk7CgoJJHF1ZXJ5ID0gJ1VQREFURSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHMKICAgICAgICAgICAgICAgICAgU0VUIHVwbG9hZF9uYW1lID0gPywgdXBsb2FkX2F1dGhvciA9ID8sCiAgICAgICAgICAgICAgICAgICAgICB1cGxvYWRfc3VtbWFyeSA9ID8sIHVwbG9hZF9kZXNjcmlwdGlvbiA9ID8sCiAgICAgICAgICAgICAgICAgICAgICB1cGxvYWRfaXAgPSA/LCB1cGxvYWRfc2l6ZSA9ID8sIHVwbG9hZF9kYXRlID0gTk9XKCksCiAgICAgICAgICAgICAgICAgICAgICB1cGxvYWRfa2V5ID0gPywgdXBsb2FkX3RodW1ibmFpbCA9ID8KICAgICAgICAgICAgICAgICBXSEVSRSB1cGxvYWRfaWQgPSA/JzsKCSRkYnIgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LAoJCQkgICAgYXJyYXkoYmFzZW5hbWUoJGRlc3RmaWxlKSwKCQkJCSAgJHRoaXMtPl9kYXRhWydhdXRob3InXSwKCQkJCSAgJHRoaXMtPl9kYXRhWydzdW1tYXJ5J10sCgkJCQkgICR0aGlzLT5fZGF0YVsnZGVzYyddLAoJCQkJICBjZ2VfYXJyYXk6OmdldF9yZWFsX2lwKCksCgkJCQkgIGZpbGVzaXplKCRkZXN0ZmlsZSksCgkJCQkgICR0aGlzLT5fZGF0YVsna2V5J10sCgkJCQkgICR0aHVtYl9uYW1lLAoJCQkJICAkZXhpc3RpbmdfZmlsZWlkKSk7CiAgICAgIH0KCiAgICBpZiggISRkYnIgKQogICAgICB7Cglmb3JlYWNoKCAkX2NyZWF0ZWQgYXMgJG9uZSApIEB1bmxpbmsoJG9uZSk7Cgl0aHJvdyBuZXcgVXBsb2Fkc0V4Y2VwdGlvbignRGF0YWJhc2Ugb3BlcmF0aW9uIGZhaWxlZDogJy4kZGItPnNxbC4nIC0tICcuJGRiLT5FcnJvck1zZygpKTsKICAgICAgfQoKICAgICRmaWVsZHMgPSAnJzsKICAgIHsKICAgICAgJHF1ZXJ5ID0gJ1NFTEVDVCBpZCxuYW1lIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzX2ZpZWxkZGVmcyBPUkRFUiBCWSBpb3JkZXInOwogICAgICAkdG1wID0gJGRiLT5HZXRBcnJheSgkcXVlcnkpOwogICAgICBpZiggIWlzX2FycmF5KCR0bXApICkKICAgICAgJGZpZWxkcyA9IGNnZV9hcnJheTo6dG9faGFzaCgkdG1wLCduYW1lJyk7CiAgICB9CgogICAgaWYoIGlzX2FycmF5KCRmaWVsZHMpICYmIGlzc2V0KCR0aGlzLT5fZGF0YVsnZmllbGRzJ10pICkKICAgICAgewoJLy8gZG8gdGhlIGN1c3RvbSBmaWVsZHMuCgkkaXF1ZXJ5ID0gJ0lOU0VSVCBJTlRPICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2Fkc19maWVsZHZhbHMgCiAgICAgICAgICAgICAgICAgKHVwbG9hZF9pZCwgZmxkX2lkLCB2YWx1ZSkgVkFMVUVTICg/LD8sPyknOwoJZm9yZWFjaCggJHRoaXMtPl9kYXRhWydmaWVsZHMnXSBhcyAka2V5ID0+ICR2YWx1ZSApCgkgIHsKCSAgICBpZiggIWlzc2V0KCRmaWVsZHNbJGtleV0pICkgY29udGludWU7CgkgICAgJGZpZWxkX2lkID0gJGZpZWxkc1ska2V5XVsnaWQnXTsKCSAgICAkZGItPkV4ZWN1dGUoJGlxdWVyeSxhcnJheSgkZXhpc3RpbmdfZmlsZWlkLCRpZWxkX2lkLCR2YWx1ZSkpOwoJICB9CiAgICAgIH0KCiAgICAvLyBhZGQgc29tZXRoaW5nIHRvIHRoZSBhdWRpdCBsb2cuCiAgICBhdWRpdCgkZXhpc3RpbmdfZmlsZWlkLCR1cGxvYWRzLT5HZXROYW1lKCksJ1VwbG9hZGVkIGZpbGUgJy5iYXNlbmFtZSgkZGVzdGZpbGUpKTsKCiAgICAvLyBhbmQgd2UncmUgZG9uZS4uLgogICAgcmV0dXJuICRleGlzdGluZ19maWxlaWQ7CiAgfQoKfSAvLyBlbmQgb2YgY2xhc3MKCiMKIyBFT0YKIwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lib/class.uploads_utils.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQoKY2xhc3MgdXBsb2Fkc191dGlscwp7CiAgcHJpdmF0ZSBzdGF0aWMgJF91cGxvYWRfZGF0YV9jYWNoZTsKCiAgLy8gdGhpcyBpcyBhIHN0YXRpYyBjbGFzcy4uLiBjYW4ndCBiZSBjb25zdHJ1Y3RlZC4KICBwcm90ZWN0ZWQgZnVuY3Rpb24gX19jb25zdHJ1Y3QoKSB7fQoKICBwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIGdldF91cGxvYWRfZGV0YWlscygkdXBsb2FkX2lkKQogIHsKICAgICR1cGxvYWRfaWQgPSAoaW50KSR1cGxvYWRfaWQ7CiAgICBpZiggJHVwbG9hZF9pZCA8IDEgKSB0aHJvdyBuZXcgVXBsb2Fkc0V4Y2VwdGlvbigndXBsb2Fkc191dGlsczo6Z2V0X3VwbG9hZF9kZXRhaWxzIC0gSW52YWxpZCB1cGxvYWQgaWQ6ICcuJHVwbG9hZF9pZCk7CgogICAgaWYoICFpc19hcnJheShzZWxmOjokX3VwbG9hZF9kYXRhX2NhY2hlKSB8fCAhaXNzZXQoc2VsZjo6JF91cGxvYWRfZGF0YV9jYWNoZVskdXBsb2FkX2lkXSkgKSB7CiAgICAgIC8vIG5vdCBpbiBjYWNoZS4KICAgICAgJGRiID0gY21zbXMoKS0+R2V0RGIoKTsKICAgICAgJHF1ZXJ5ID0gJ1NFTEVDVCAqIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzIFdIRVJFIHVwbG9hZF9pZCA9ID8nOwogICAgICAkcm93ID0gJGRiLT5HZXRSb3coJHF1ZXJ5LGFycmF5KCR1cGxvYWRfaWQpKTsKICAgICAgaWYoICEkcm93ICkgdGhyb3cgbmV3IFVwbG9hZHNFeGNlcHRpb24oJ3VwbG9hZHNfdXRpbHM6OmdldF91cGxvYWRfZGV0YWlscyAtIFVwbG9hZCAnLiR1cGxvYWRfaWQuJyBub3QgZm91bmQnKTsKICAgICAgCiAgICAgIGlmKCAhaXNfYXJyYXkoc2VsZjo6JF91cGxvYWRfZGF0YV9jYWNoZSkgKSBzZWxmOjokX3VwbG9hZF9kYXRhX2NhY2hlID0gYXJyYXkoKTsKICAgICAgc2VsZjo6JF91cGxvYWRfZGF0YV9jYWNoZVskcm93Wyd1cGxvYWRfaWQnXV0gPSAkcm93OwogICAgfQoKICAgIHJldHVybiBzZWxmOjokX3VwbG9hZF9kYXRhX2NhY2hlWyR1cGxvYWRfaWRdOwogIH0KCgogIHB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gY3JlYXRlX3RpbWVsaW1pdGVkX2VudHJ5KCR1cGxvYWRfaWQsJGVtYWlsLCRob3VycyA9IG51bGwsJGRvd25sb2FkcyA9IG51bGwpCiAgewogICAgJGRiID0gY21zbXMoKS0+R2V0RGIoKTsKICAgICRub3cgPSAkZGItPkRiVGltZXN0YW1wKHRpbWUoKSk7CiAgICAkdXBsb2FkX2lkID0gKGludCkkdXBsb2FkX2lkOwogICAgJGhvdXJzID0gKGludCkkaG91cnM7CiAgICAkZG93bmxvYWRzID0gKGludCkkZG93bmxvYWRzOwoKICAgIC8vIGdldCB0aGUgdXBsb2FkIGluZm9ybWF0aW9uCiAgICAkdXBsb2FkID0gc2VsZjo6Z2V0X3VwbG9hZF9kZXRhaWxzKCR1cGxvYWRfaWQpOwoKICAgICRleHBpcmVzID0gbnVsbDsKICAgIGlmKCAkaG91cnMgKSB7CiAgICAgICRob3VycyA9IChpbnQpJGhvdXJzOwogICAgICAkZXhwaXJlcyA9ICRkYi0+RGJUaW1lU3RhbXAoc3RydG90aW1lKCcrJy4kaG91cnMuJyBob3VycycpKTsKICAgIH0KICAgICR1cmxrZXkgPSBzdWJzdHIoc3RyX3NodWZmbGUobWQ1KHRpbWUoKS4kdXBsb2FkX2lkLiR1cGxvYWRbJ3VwbG9hZF9uYW1lJ10uJG5vdy4kZW1haWwuJGV4cGlyZXMpKSwwLDE2KTsKCiAgICAkZGJyID0gJyc7CiAgICBpZiggJGhvdXJzID4gMCApIHsKICAgICAgJHF1ZXJ5ID0gJ0lOU0VSVCBJTlRPICcuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc190aW1lbGltaXQgCiAgICAgICAgICAgICAgICAodXBsb2FkX2lkLGVtYWlsLHVybF9rZXksY3JlYXRlZCxleHBpcmVzLG1heF9kb3dubG9hZHMpCiAgICAgICAgICAgICAgICBWQUxVRVMgKD8sPyw/LCRub3csJGV4cGlyZXMsPykiOwogICAgICAkZGJyID0gJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkdXBsb2FkX2lkLCRlbWFpbCwkdXJsa2V5LCRkb3dubG9hZHMpKTsKICAgIH0KICAgIGVsc2UgewogICAgICAkcXVlcnkgPSAnSU5TRVJUIElOVE8gJy5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX3RpbWVsaW1pdCAKICAgICAgICAgICAgICAgICh1cGxvYWRfaWQsZW1haWwsdXJsX2tleSxjcmVhdGVkLG1heF9kb3dubG9hZHMpCiAgICAgICAgICAgICAgICBWQUxVRVMgKD8sPyw/LCRub3csPykiOwogICAgICAkZGJyID0gJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkdXBsb2FkX2lkLCRlbWFpbCwkdXJsa2V5LCRkb3dubG9hZHMpKTsKICAgIH0KICAgIGlmKCAhJGRiciApCXRocm93IG5ldyBVcGxvYWRzRXhjZXB0aW9uKCdQcm9ibGVtIGluc2VydGluZyB0aW1lIGxpbWl0ZWQgaW5mbyBpbnRvIGRhdGFiYXNlJyk7CgogICAgcmV0dXJuICR1cmxrZXk7CiAgfQoKCiAgcHVibGljIHN0YXRpYyBmdW5jdGlvbiBnZXRfdGltZWxpbWl0ZWRfdXJsKCR1cmxfa2V5LCRjaGVja3ZhbGlkID0gVFJVRSkKICB7CiAgICBpZiggISR1cmxfa2V5ICkgdGhyb3cgbmV3IFVwbG9hZHNFeGNlcHRpb24oJ3VwbG9hZHNfdXRpbHM6OmdldF90aW1lbGltaXRlZF91cmwgLSBFbXB0eSB1cmwga2V5IHNwZWNpZmllZCcpOwogICAgJGRiID0gY21zbXMoKS0+R2V0RGIoKTsKICAgCiAgICBpZiggJGNoZWNrdmFsaWQgKSB7CiAgICAgICRxdWVyeSA9ICdTRUxFQ1QgKiBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2Fkc190aW1lbGltaXQKICAgICAgICAgICAgICAgIFdIRVJFIHVybF9rZXkgPSA/IEFORCAoKGV4cGlyZXMgPiBOT1coKSkgT1IgKGV4cGlyZXMgSVMgTlVMTCkpJzsKICAgICAgJHJvdyA9ICRkYi0+R2V0Um93KCRxdWVyeSxhcnJheSgkdXJsX2tleSkpOwogICAgICBpZiggISRyb3cgKSByZXR1cm47CiAgICAgICRmaWxlX2lkID0gJHJvd1sndXBsb2FkX2lkJ107CgogICAgICAkcXVlcnkgPSAnU0VMRUNUIGNvdW50KGZpbGVfaWQpIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzX2Rvd25sb2FkcwogICAgICAgICAgICAgICAgV0hFUkUgZmlsZV9pZCA9ID8gQU5EIHVybF9rZXkgPSA/JzsKICAgICAgJGNvdW50ID0gJGRiLT5HZXRPbmUoJHF1ZXJ5LGFycmF5KCRmaWxlX2lkLCR1cmxfa2V5KSk7CiAgICAgIGlmKCAkcm93WydtYXhfZG93bmxvYWRzJ10gPiAwICYmICRjb3VudCA+PSAkcm93WydtYXhfZG93bmxvYWRzJ10gKSByZXR1cm47CiAgICB9CgogICAgJGRmbHRwYWdlID0gY21zbXMoKS0+R2V0Q29udGVudE9wZXJhdGlvbnMoKS0+R2V0RGVmYXVsdENvbnRlbnQoKTsKICAgICR1cGxvYWRzID0gY21zX3V0aWxzOjpnZXRfbW9kdWxlKCdVcGxvYWRzJyk7CiAgICAkdXJsID0gJHVwbG9hZHMtPkNyZWF0ZVVSTCgkaWQsJ2dldGZpbGUnLCRkZmx0cGFnZSwKCQkJICAgICAgIGFycmF5KCd1cmxfa2V5Jz0+JHVybF9rZXkpLAoJCQkgICAgICAgZmFsc2UsCgkJCSAgICAgICAkdXBsb2Fkcy0+X2dldFRpbWVMaW1pdGVkVVJMKCR1cmxfa2V5KSk7CgogICAgcmV0dXJuICR1cmw7CiAgfQoKCiAgcHVibGljIHN0YXRpYyBmdW5jdGlvbiBnZXRfZmlsZV91cmwoJHVwbG9hZF9pZCwkdXBsb2FkX25hbWUgPSAnJykKICB7CiAgICAkdXBsb2FkX2lkID0gKGludCkkdXBsb2FkX2lkOwogICAgaWYoICR1cGxvYWRfaWQgPCAxICkgdGhyb3cgbmV3IFVwbG9hZHNFeGNlcHRpb24oJ3VwbG9hZHNfdXRpbHM6OmdldF9maWxlX3VybCAtIEludmFsaWQgdXBsb2FkIElkIHNwZWNpZmllZCcpOwoKICAgIGlmKCAhJHVwbG9hZF9uYW1lICkgewogICAgICAkZGF0YSA9IHNlbGY6OmdldF91cGxvYWRfZGV0YWlscygkdXBsb2FkX2lkKTsKICAgICAgJHVwbG9hZF9uYW1lID0gJGRhdGFbJ3VwbG9hZF9uYW1lJ107CiAgICB9CiAgICAkdXBsb2FkX25hbWUgPSB0cmltKCR1cGxvYWRfbmFtZSk7CgogICAgJGRmbHRwYWdlID0gY21zbXMoKS0+R2V0Q29udGVudE9wZXJhdGlvbnMoKS0+R2V0RGVmYXVsdENvbnRlbnQoKTsKICAgICR1cGxvYWRzID0gY21zX3V0aWxzOjpnZXRfbW9kdWxlKCdVcGxvYWRzJyk7CiAgICAkdXJsID0gJHVwbG9hZHMtPkNyZWF0ZVVSTCgkaWQsJ2dldGZpbGUnLCRkZmx0cGFnZSwKCQkJICAgICAgIGFycmF5KCd1cGxvYWRfaWQnPT4kdXBsb2FkX2lkKSwKCQkJICAgICAgIGZhbHNlLAoJCQkgICAgICAgJHVwbG9hZHMtPl9nZXRGaWxlVVJMKCRkYXRhWyd1cGxvYWRfaWQnXSwkZGF0YVsndXBsb2FkX25hbWUnXSkpOwogIH0KfSAvLyBlbmQgb2YgY2xhc3MKIwojIEVPRgojCj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/lib/extraclasses.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKCmNsYXNzIFVwbG9hZHNFeGNlcHRpb24gZXh0ZW5kcyBFeGNlcHRpb24ge30KCj8+]]></data>
	</file>
	<file>
	  <filename>/method.install.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDoJLy93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgokZGIgPSAkdGhpcy0+R2V0RGIoKTsKCiRkaWN0ID0gTmV3RGF0YURpY3Rpb25hcnkgKCRkYik7CgovLyB0YWJsZSBzY2hlbWEgZGVzY3JpcHRpb24KJGZsZHMgPSAidXBsb2FkX2lkIEkgS0VZLAogICAgICAgICAgICAgdXBsb2FkX2NhdGVnb3J5X2lkIEksCiAgICAgICAgICAgICB1cGxvYWRfbmFtZSBDKDI1NSksCiAgICAgICAgICAgICB1cGxvYWRfYXV0aG9yIEMoMjU1KSwKICAgICAgICAgICAgIHVwbG9hZF9zdW1tYXJ5IEMoMjU1KSwgCiAgICAgICAgICAgICB1cGxvYWRfZGVzY3JpcHRpb24gWCwKICAgICAgICAgICAgIHVwbG9hZF9pcCBDKDI1NSksCiAgICAgICAgICAgICB1cGxvYWRfc2l6ZSBJLAogICAgICAgICAgICAgdXBsb2FkX2RhdGUgIi5DTVNfQURPREJfRFQuIiwKICAgICAgICAgICAgIHVwbG9hZF9rZXkgIEMoMjU1KSwKICAgICAgICAgICAgIHVwbG9hZF90aHVtYm5haWwgQygyNTUpLAogICAgICAgICAgICAgdXBsb2FkX3VzZXJwZXJtcyBYCgkgICAgIjsKCi8vIGNyZWF0ZSBpdC4gVGhpcyBzaG91bGQgZG8gZXJyb3IgY2hlY2tpbmcsIGJ1dCBJJ20gYSBsYXp5IHNvZC4KJHRhYm9wdGFycmF5ID0gYXJyYXkgKCdteXNxbCcgPT4gJ1RZUEU9TXlJU0FNJyk7CiRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNRTCAoY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2FkcyIsCgkJCQkgICAkZmxkcywgJHRhYm9wdGFycmF5KTsKJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSAoJHNxbGFycmF5KTsKICAgIAovLyBhIHRhYmxlIGZvciBkb3dubG9hZHMKJGZsZHMgPSAiZG93bmxvYWRfaWQgSSBLRVksCiAJIGZpbGVfaWQgICAgIEksIAoJIGRvd25sb2FkX2RhdGUgIi5DTVNfQURPREJfRFQuIiwKICAgICAgICAgZG93bmxvYWRfaXAgICBDKDI1NSksCiAgICAgICAgIGRvd25sb2FkX3VzZXIgQygyNTUpLAogICAgICAgICB1cmxfa2V5ICBDKDQwKQoJICI7CgovLyBjcmVhdGUgaXQuIFRoaXMgc2hvdWxkIGRvIGVycm9yIGNoZWNraW5nLCBidXQgSSdtIGEgbGF6eSBzb2QuCiR0YWJvcHRhcnJheSA9IGFycmF5ICgnbXlzcWwnID0+ICdUWVBFPU15SVNBTScpOwokc3FsYXJyYXkgPQogICRkaWN0LT5DcmVhdGVUYWJsZVNRTCAoY21zX2RiX3ByZWZpeCAoKS4ibW9kdWxlX3VwbG9hZHNfZG93bmxvYWRzIiwKCQkJICRmbGRzLCAkdGFib3B0YXJyYXkpOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5ICgkc3FsYXJyYXkpOwoKLy8gYSB0YWJsZSBmb3IgY2F0ZWdvcmllcwokZmxkcyA9ICJ1cGxvYWRfY2F0ZWdvcnlfaWQgSSBLRVksCgkgdXBsb2FkX2NhdGVnb3J5X25hbWUgQygyNTUpLAoJIHVwbG9hZF9jYXRlZ29yeV9kZXNjcmlwdGlvbiBYLAogICAgICAgICB1cGxvYWRfY2F0ZWdvcnlfcGF0aCBDKDI1NSkgS0VZLAoJIHVwbG9hZF9jYXRlZ29yeV9saXN0YWJsZSBJLAogICAgICAgICB1cGxvYWRfY2F0ZWdvcnlfZ3JvdXBzIEMoMjU1KSwKICAgICAgICAgdXBsb2FkX2NhdGVnb3J5X2RlbGV0YWJsZSBJLAogICAgICAgICB1cGxvYWRfY2F0ZWdvcnlfZXhwaXJlc19ocnMgSSwKICAgICAgICAgdXBsb2FkX2NhdGVnb3J5X3NjYW5uYWJsZSBJMSwKICAgICAgICAgdXBsb2FkX2NhdGVnb3J5X3VzZXJwZXJtcyBJMSwKICAgICAgICAgdXBsb2FkX2NhdGVnb3J5X2RmbHR1c2VycGVybXMgWAoJICI7CgovLyBjcmVhdGUgaXQuIFRoaXMgc2hvdWxkIGRvIGVycm9yIGNoZWNraW5nLCBidXQgSSdtIGEgbGF6eSBzb2QuCiR0YWJvcHRhcnJheSA9IGFycmF5ICgnbXlzcWwnID0+ICdUWVBFPU15SVNBTScpOwokc3FsYXJyYXkgPQogICRkaWN0LT5DcmVhdGVUYWJsZVNRTCAoY21zX2RiX3ByZWZpeCAoKS4ibW9kdWxlX3VwbG9hZHNfY2F0ZWdvcmllcyIsCgkJCSAkZmxkcywgJHRhYm9wdGFycmF5KTsKJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSAoJHNxbGFycmF5KTsKCi8vIGEgdGFibGUgZm9yIGZpbGUgdHlwZXMKJGZsZHMgPSAiaWQgSSwKICAgICAgICAgICAgIHNvcnRvcmRlciBJLAogICAgICAgICAgICAgbmFtZSAgQygyNTUpLAogICAgICAgICAgICAgZGVzY3JpcHRpb24gWCwKICAgICAgICAgICAgIGV4dGVuc2lvbnMgQygyNTUpLAogICAgICAgICAgICAgaW1hZ2UgQygyNTUpCiAgICAgICAgICAgICI7CiR0YWJvcHRhcnJheSA9IGFycmF5ICgnbXlzcWwnID0+ICdUWVBFPU15SVNBTScpOwokc3FsYXJyYXkgPQogICRkaWN0LT5DcmVhdGVUYWJsZVNRTCAoY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc19maWxldHlwZXMiLAoJCQkgJGZsZHMsICR0YWJvcHRhcnJheSk7CiRkaWN0LT5FeGVjdXRlU1FMQXJyYXkgKCRzcWxhcnJheSk7CgovLyBhIHRhYmxlIGZvciBmaWVsZCBkZWZpbml0aW9ucy4KJGZsZHMgPSAiCiAgICAgICAgIGlkICAgICAgSSBLRVkgQVVUTywKICAgICAgICAgbmFtZSAgICBDKDI1NSksCiAgICAgICAgIHR5cGUgICAgQygyMCksCiAgICAgICAgIGF0dHJpYnMgWCwKICAgICAgICAgaW9yZGVyICBJLAogICAgICAgICBwdWJsaWMgIEkxIjsKJHNxbGFycmF5ID0gJGRpY3QtPkNyZWF0ZVRhYmxlU1FMKCBjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzX2ZpZWxkZGVmcycsCgkJCQkgICAkZmxkcywgJHRhYm9wdGFycmF5KTsKJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSAoJHNxbGFycmF5KTsKCi8vIGEgdGFibGUgZm9yIGZpZWxkIHZhbHVlcwokZmxkcyA9ICJ1cGxvYWRfaWQgSSBLRVksCiAgICAgICAgIGZsZF9pZCAgICBJIEtFWSwKICAgICAgICAgdmFsdWUgICAgIFgiOwokc3FsYXJyYXkgPSAkZGljdC0+Q3JlYXRlVGFibGVTUUwoIGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHNfZmllbGR2YWxzJywKCQkJCSAgICRmbGRzLCAkdGFib3B0YXJyYXkpOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5ICgkc3FsYXJyYXkpOwoKLy8gYSB0YWJsZSBmb3IgdGltZSBsaW1pdGVkIHVybHMKJGZsZHMgPSAidGxrZXlfaWQgIEkgS0VZIEFVVE8sCiAgICAgICAgIHVwbG9hZF9pZCBJLAogICAgICAgICBlbWFpbCAgICAgQygyNTUpLAogICAgICAgICB1cmxfa2V5ICAgQygxNiksCiAgICAgICAgIGNyZWF0ZWQgICAiLkNNU19BRE9EQl9EVC4iLAogICAgICAgICBleHBpcmVzICAgIi5DTVNfQURPREJfRFQuIiwKICAgICAgICAgbWF4X2Rvd25sb2FkcyBJIjsKJHNxbGFycmF5ID0gJGRpY3QtPkNyZWF0ZVRhYmxlU1FMKCBjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzX3RpbWVsaW1pdCcsCgkJCQkgICAkZmxkcywgJHRhYm9wdGFycmF5KTsKJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSAoJHNxbGFycmF5KTsKCi8vIGNyZWF0ZSBhIHNlcXVlbmNlCiRkYi0+Q3JlYXRlU2VxdWVuY2UgKGNtc19kYl9wcmVmaXggKCkuIm1vZHVsZV91cGxvYWRzX3NlcSIpOwogICAgCi8vIGFuZCBhbm90aGVyIG9uZQokZGItPkNyZWF0ZVNlcXVlbmNlIChjbXNfZGJfcHJlZml4ICgpLiJtb2R1bGVfdXBsb2Fkc19jYXRlZ29yaWVzX3NlcSIpOwoKLy8gYW5kIGEgdGhpcmQgb25lCiRkYi0+Q3JlYXRlU2VxdWVuY2UgKGNtc19kYl9wcmVmaXggKCkuIm1vZHVsZV91cGxvYWRzX2Rvd25sb2Fkc19zZXEiKTsKCi8vIGFuZCBhIGZvdXJ0aAokZGItPkNyZWF0ZVNlcXVlbmNlIChjbXNfZGJfcHJlZml4ICgpLiJtb2R1bGVfdXBsb2Fkc19maWxldHlwZXNfc2VxIik7CgovLyBhbmQgYW4gaW5kZXguCiRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVJbmRleFNRTCgnaW5kZXhfZG93bmxvYWRfZmlsZWlkJyxjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzX2Rvd25sb2FkcycsJ2ZpbGVfaWQnKTsKJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwokc3FsYXJyYXkgPSAkZGljdC0+Q3JlYXRlSW5kZXhTUUwoJ2luZGV4X3VwbG9hZF9uYW1lJyxjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzJywndXBsb2FkX25hbWUnKTsKJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwoKLy8gY3JlYXRlIGEgcGVybWlzc2lvbgokdGhpcy0+Q3JlYXRlUGVybWlzc2lvbiAoJ01hbmFnZSBVcGxvYWRzJywgJ01hbmFnZSBVcGxvYWRzJyk7CiR0aGlzLT5DcmVhdGVQZXJtaXNzaW9uICgnVXBsb2FkIEZpbGVzIHRvIFVwbG9hZHMnLCAnVXBsb2FkIEZpbGVzIHRvIFVwbG9hZHMnKTsKJHRoaXMtPkNyZWF0ZVBlcm1pc3Npb24gKCdDcmVhdGUgVXBsb2FkcyBSZXBvcnRzJywnQ3JlYXRlIFVwbG9hZHMgUmVwb3J0cycpOwoKLy8gY3JlYXRlIGEgcHJlZmVyZW5jZQokdGhpcy0+U2V0UHJlZmVyZW5jZSAoInZhbGlkX3VwbG9hZGV4dGVuc2lvbnMiLCJwbmcsZ2lmLGpwZyxKUEVHLGJtcCx3bWYsd21hLHdtdixtcGcsemlwLHRhcixneixiejIsbXAzLHdhdixhdSxvZ2cseG1sLHBkZiIpOwokdGhpcy0+U2V0UHJlZmVyZW5jZSAoInN1Ym5ldF9leGNsdXNpb25zIiwgIiIgKTsKJHRoaXMtPlNldFByZWZlcmVuY2UgKCdjcmVhdGVfZHVtbXlfaW5kZXhfaHRtbCcsIDEpOwokdGhpcy0+U2V0UHJlZmVyZW5jZSAoJ3NlbmRfdXBsb2FkX25vdGlmaWNhdGlvbnNfdG8nLCcnKTsKJHRoaXMtPlNldFByZWZlcmVuY2UgKCdyZXF1aXJlZmlsZW5hbWVfZXh0ZW5zaW9ucycsMSk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlICgnYXV0b3RodW1ibmFpbF9leHRlbnNpb25zJywnZ2lmLGpwZyxqcGVnLGJtcCxwbmcnKTsKJHRoaXMtPlNldFByZWZlcmVuY2UgKCdhdXRvdGh1bWJuYWlsX3NpemUnLDgwKTsKJHRoaXMtPlNldFByZWZlcmVuY2UgKCdkb3dubG9hZF9jaHVua3NpemUnLDgpOwokdGhpcy0+U2V0UHJlZmVyZW5jZSAoJ2NhdGVnb3J5X2V4cGlyeScsMCk7CgokZm4gPSBkaXJuYW1lKF9fRklMRV9fKS5ESVJFQ1RPUllfU0VQQVJBVE9SLid0ZW1wbGF0ZXMnLkRJUkVDVE9SWV9TRVBBUkFUT1IuJ29yaWdfdXBsb2FkZm9ybV90ZW1wbGF0ZS50cGwnOwppZiggZmlsZV9leGlzdHMoICRmbiApICkKICB7CiAgICAkdGVtcGxhdGUgPSBAZmlsZV9nZXRfY29udGVudHMoJGZuKTsKICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCd1cGxvYWRmb3JtX3N5c2RlZmF1bHQnLCR0ZW1wbGF0ZSk7CiAgICAkdGhpcy0+U2V0VGVtcGxhdGUoJ3VwbG9hZGZvcm1fZGVmYXVsdCcsJHRlbXBsYXRlKTsKICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdkZWZhdWx0X3VwbG9hZGZvcm0nLCdkZWZhdWx0Jyk7CiAgfQoKJGZuID0gZGlybmFtZShfX0ZJTEVfXykuRElSRUNUT1JZX1NFUEFSQVRPUi4ndGVtcGxhdGVzJy5ESVJFQ1RPUllfU0VQQVJBVE9SLidvcmlnX3N1bW1hcnlycHRfdGVtcGxhdGUudHBsJzsKaWYoIGZpbGVfZXhpc3RzKCAkZm4gKSApCiAgewogICAgJHRlbXBsYXRlID0gQGZpbGVfZ2V0X2NvbnRlbnRzKCRmbik7CiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgnc3VtbWFyeXJwdF9zeXNkZWZhdWx0JywkdGVtcGxhdGUpOwogICAgJHRoaXMtPlNldFRlbXBsYXRlKCdzdW1tYXJ5cnB0X2RlZmF1bHQnLCR0ZW1wbGF0ZSk7CiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgnZGVmYXVsdF9zdW1tYXJ5cnB0JywnZGVmYXVsdCcpOwogIH0KCiRmbiA9IGRpcm5hbWUoX19GSUxFX18pLkRJUkVDVE9SWV9TRVBBUkFUT1IuICd0ZW1wbGF0ZXMnLkRJUkVDVE9SWV9TRVBBUkFUT1IuJ29yaWdfZGV0YWlscnB0X3RlbXBsYXRlLnRwbCc7CmlmKCBmaWxlX2V4aXN0cyggJGZuICkgKQogIHsKICAgICR0ZW1wbGF0ZSA9IEBmaWxlX2dldF9jb250ZW50cygkZm4pOwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ2RldGFpbHJwdF9zeXNkZWZhdWx0JywkdGVtcGxhdGUpOwogICAgJHRoaXMtPlNldFRlbXBsYXRlKCdkZXRhaWxycHRfZGVmYXVsdCcsJHRlbXBsYXRlKTsKICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdkZWZhdWx0X2RldGFpbHJwdCcsJ2RlZmF1bHQnKTsKICB9CgovLyBzZW5kZmlsZSBmb3JtIHRlbXBsYXRlCiRmbiA9IGRpcm5hbWUoX19GSUxFX18pLicvdGVtcGxhdGVzL29yaWdfc2VuZGZpbGVmb3JtX3RlbXBsYXRlLnRwbCc7CmlmKCBmaWxlX2V4aXN0cyggJGZuICkgKQogIHsKICAgICR0ZW1wbGF0ZSA9IEBmaWxlX2dldF9jb250ZW50cygkZm4pOwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ3NlbmRmaWxlZm9ybV9zeXNkZWZhdWx0JywkdGVtcGxhdGUpOwogICAgJHRoaXMtPlNldFRlbXBsYXRlKCdzZW5kZmlsZWZvcm1fZGVmYXVsdCcsJHRlbXBsYXRlKTsKICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdkZWZhdWx0X3NlbmRmaWxlZm9ybScsJ2RlZmF1bHQnKTsKICB9CgovLyB5b3VzZW5kaXRmb3JtIHRlbXBsYXRlCiRmbiA9IGRpcm5hbWUoX19GSUxFX18pLicvdGVtcGxhdGVzL29yaWdfeW91c2VuZGl0Zm9ybV90ZW1wbGF0ZS50cGwnOwppZiggZmlsZV9leGlzdHMoICRmbiApICkKICB7CiAgICAkdGVtcGxhdGUgPSBAZmlsZV9nZXRfY29udGVudHMoJGZuKTsKICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCd5b3VzZW5kaXRmb3JtX3N5c2RlZmF1bHQnLCR0ZW1wbGF0ZSk7CiAgICAkdGhpcy0+U2V0VGVtcGxhdGUoJ3lvdXNlbmRpdGZvcm1fZGVmYXVsdCcsJHRlbXBsYXRlKTsKICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdkZWZhdWx0X3lvdXNlbmRpdGZvcm0nLCdkZWZhdWx0Jyk7CiAgfQoKLy8gdGVtcGxhdGUgdXNlZCBmb3Igc2VuZGZpbGUgZW1haWwKJGZuID0gZGlybmFtZShfX0ZJTEVfXykuJy90ZW1wbGF0ZXMvb3JpZ19zZW5kZmlsZXJwdF90ZW1wbGF0ZS50cGwnOwppZiggZmlsZV9leGlzdHMoJGZuKSApCiAgewogICAgJHRlbXBsYXRlID0gQGZpbGVfZ2V0X2NvbnRlbnRzKCRmbik7CiAgICAkdGhpcy0+U2V0VGVtcGxhdGUoICd1cGxvYWRfc2VuZGZpbGVycHQnLCAkdGVtcGxhdGUpOwogIH0KCi8vIHRlbXBsYXRlIHVzZWQgZm9yIGVtYWlsIG5vdGlmaWNhdGlvbnMKJGZuID0gZGlybmFtZShfX0ZJTEVfXykuJy90ZW1wbGF0ZXMvb3JpZ19lbWFpbG5vdGlmeV90ZW1wbGF0ZS50cGwnOwppZiggZmlsZV9leGlzdHMoJGZuKSApIHsKICAkdGVtcGxhdGUgPSBAZmlsZV9nZXRfY29udGVudHMoJGZuKTsKICAkdGhpcy0+U2V0VGVtcGxhdGUoICd1cGxvYWRfZW1haWx0ZW1wbGF0ZScsICR0ZW1wbGF0ZSk7Cn0KCiR0bXAgPSBmaWxlX2dldF9jb250ZW50cyhfX0RJUl9fLicvdGVtcGxhdGVzL29yaWdfaHRtbHJlcG9ydF9kb3dubG9hZHNieXVzZXIudHBsJyk7CiR0aGlzLT5TZXRUZW1wbGF0ZSgncmRsX1NhbXBsZScsJHRtcCk7CiR0bXAgPSBmaWxlX2dldF9jb250ZW50cyhfX0RJUl9fLicvdGVtcGxhdGVzL29yaWdfaHRtbHJlcG9ydF9kb3dubG9hZHNieWZpbGUudHBsJyk7CiR0aGlzLT5TZXRUZW1wbGF0ZSgncmRmX1NhbXBsZScsJHRtcCk7CgovLyBFdmVudCBoYW5kbGVycwokdGhpcy0+Q3JlYXRlRXZlbnQoICJPblVwbG9hZCIgKTsKJHRoaXMtPkNyZWF0ZUV2ZW50KCAiT25SZW1vdmUiICk7CiR0aGlzLT5DcmVhdGVFdmVudCggIk9uRG93bmxvYWQiICk7CiR0aGlzLT5DcmVhdGVFdmVudCggIk9uQ3JlYXRlQ2F0ZWdvcnkiICk7CiR0aGlzLT5DcmVhdGVFdmVudCggIk9uRGVsZXRlQ2F0ZWdvcnkiICk7CgokdGhpcy0+QWRkRXZlbnRIYW5kbGVyKCdDb3JlJywnQ29udGVudFBvc3RSZW5kZXInKTsKCi8vIERlZmF1bHQgZmlsZSB0eXBlcwokdGhpcy0+X0luc2VydERlZmF1bHRGaWxlVHlwZXMoKTsKCi8vIHB1dCBtZW50aW9uIGludG8gdGhlIGFkbWluIGxvZwokdGhpcy0+QXVkaXQoJycsICR0aGlzLT5MYW5nICgnZnJpZW5kbHluYW1lJyksICR0aGlzLT5MYW5nICgnaW5zdGFsbGVkJywgJHRoaXMtPkdldFZlcnNpb24gKCkpKTsKCj8+]]></data>
	</file>
	<file>
	  <filename>/method.uninstall.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDoJLy93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgogICAgJGRiID0gJHRoaXMtPkdldERiKCk7CgogICAgLy8gcmVtb3ZlIHRoZSBkYXRhYmFzZSB0YWJsZQogICAgJGRpY3QgPSBOZXdEYXRhRGljdGlvbmFyeSAoJGRiKTsKICAgICRzcWxhcnJheSA9ICRkaWN0LT5Ecm9wVGFibGVTUUwgKGNtc19kYl9wcmVmaXggKCkuIm1vZHVsZV91cGxvYWRzIik7CiAgICAkZGljdC0+RXhlY3V0ZVNRTEFycmF5ICgkc3FsYXJyYXkpOwoKICAgIC8vIHJlbW92ZSB0aGUgc2VxdWVuY2UKICAgICRkYi0+RHJvcFNlcXVlbmNlIChjbXNfZGJfcHJlZml4ICgpLiJtb2R1bGVfdXBsb2Fkc19zZXEiKTsKCiAgICAvLyByZW1vdmUgdGhlIGNhdGVnb3J5IHRhYmxlCiAgICAkc3FsYXJyYXkgPQogICAgICAkZGljdC0+RHJvcFRhYmxlU1FMIChjbXNfZGJfcHJlZml4ICgpLiJtb2R1bGVfdXBsb2Fkc19jYXRlZ29yaWVzIik7CgogICAgLy8gcmVtb3ZlIGl0J3Mgc2VxdWVuY2UKICAgICRkYi0+RHJvcFNlcXVlbmNlIChjbXNfZGJfcHJlZml4ICgpLiJtb2R1bGVfdXBsb2Fkc19jYXRlZ29yaWVzX3NlcSIpOwogICAgJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSAoJHNxbGFycmF5KTsKCiAgICAvLyByZW1vdmUgdGhlIGRvd25sb2FkcyB0YWJsZQogICAgJHNxbGFycmF5ID0KICAgICAgJGRpY3QtPkRyb3BUYWJsZVNRTCAoY21zX2RiX3ByZWZpeCAoKS4ibW9kdWxlX3VwbG9hZHNfZG93bmxvYWRzIik7CgogICAgLy8gYW5kIGl0J3Mgc2VxdWVuY2UKICAgICRkYi0+RHJvcFNlcXVlbmNlIChjbXNfZGJfcHJlZml4ICgpLiJtb2R1bGVfdXBsb2Fkc19kb3dubG9hZHNfc2VxIik7CiAgICAkZGljdC0+RXhlY3V0ZVNRTEFycmF5ICgkc3FsYXJyYXkpOwoKICAgIC8vIHJlbW92ZSB0aGUgZmlsZXR5cGVzIHRhYmxlCiAgICAkc3FsYXJyYXkgPQogICAgICAkZGljdC0+RHJvcFRhYmxlU1FMIChjbXNfZGJfcHJlZml4ICgpLiJtb2R1bGVfdXBsb2Fkc19maWxldHlwZXMiKTsKICAgICRkaWN0LT5FeGVjdXRlU1FMQXJyYXkgKCRzcWxhcnJheSk7CgogICAgLy8gYW5kIGl0J3Mgc2VxdWVuY2UKICAgICRkYi0+RHJvcFNlcXVlbmNlIChjbXNfZGJfcHJlZml4ICgpLiJtb2R1bGVfdXBsb2Fkc19maWxldHlwZXNfc2VxIik7CgogICAgJHNxbGFycmF5ID0KICAgICAgJGRpY3QtPkRyb3BUYWJsZVNRTCAoY21zX2RiX3ByZWZpeCAoKS4ibW9kdWxlX3VwbG9hZHNfZmllbGRkZWZzIik7CiAgICAkZGljdC0+RXhlY3V0ZVNRTEFycmF5ICgkc3FsYXJyYXkpOwoKICAgICRzcWxhcnJheSA9CiAgICAgICRkaWN0LT5Ecm9wVGFibGVTUUwgKGNtc19kYl9wcmVmaXggKCkuIm1vZHVsZV91cGxvYWRzX2ZpZWxkdmFscyIpOwogICAgJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSAoJHNxbGFycmF5KTsKCiAgICAkc3FsYXJyYXkgPQogICAgICAkZGljdC0+RHJvcFRhYmxlU1FMIChjbXNfZGJfcHJlZml4ICgpLiJtb2R1bGVfdXBsb2Fkc190aW1lbGltaXQiKTsKICAgICRkaWN0LT5FeGVjdXRlU1FMQXJyYXkgKCRzcWxhcnJheSk7CgoKICAgIC8vIHJlbW92ZSB0aGUgcGVybWlzc2lvbnMKICAgICR0aGlzLT5SZW1vdmVQZXJtaXNzaW9uICgnTWFuYWdlIFVwbG9hZHMnKTsKICAgICR0aGlzLT5SZW1vdmVQZXJtaXNzaW9uICgnVXBsb2FkIEZpbGVzIHRvIFVwbG9hZHMnKTsKICAgICR0aGlzLT5SZW1vdmVQZXJtaXNzaW9uICgnQ3JlYXRlIFVwbG9hZHMgUmVwb3J0cycpOwoKICAgIC8vIHJlbW92ZSBhbGwgb2YgdGhlIHRoZSBwcmVmZXJlbmNlcyBmb3IgdGhpcyBtb2R1bGUKICAgICR0aGlzLT5SZW1vdmVQcmVmZXJlbmNlICgpOwoKICAgIC8vIHJlbW92ZSB0ZW1wbGF0ZXMKICAgICR0ZW1wbGF0ZXMgPSAkdGhpcy0+TGlzdFRlbXBsYXRlcygpOwogICAgZm9yZWFjaCggJHRlbXBsYXRlcyBhcyAkdHBsICkKICAgICAgewoJJHRoaXMtPkRlbGV0ZVRlbXBsYXRlKCR0cGwpOwogICAgICB9CgogICAgLy8gcmVtb3ZlIGV2ZW50cwogICAgJHRoaXMtPlJlbW92ZUV2ZW50KCJPblVwbG9hZCIgKTsKICAgICR0aGlzLT5SZW1vdmVFdmVudCgiT25SZW1vdmUiICk7CiAgICAkdGhpcy0+UmVtb3ZlRXZlbnQoIk9uRG93bmxvYWQiICk7CiAgICAkdGhpcy0+UmVtb3ZlRXZlbnQoIk9uQ3JlYXRlQ2F0ZWdvcnkiICk7CiAgICAkdGhpcy0+UmVtb3ZlRXZlbnQoIk9uRGVsZXRlQ2F0ZWdvcnkiICk7CiAgICAkdGhpcy0+UmVtb3ZlRXZlbnRIYW5kbGVyKCdDb3JlJywnQ29udGVudFBvc3RSZW5kZXInKTsKCiAgICAvLyBwdXQgbWVudGlvbiBpbnRvIHRoZSBhZG1pbiBsb2cKICAgICR0aGlzLT5BdWRpdCAoMCwgJHRoaXMtPkxhbmcgKCdmcmllbmRseW5hbWUnKSwKCQkgICR0aGlzLT5MYW5nICgndW5pbnN0YWxsZWQnKSk7Cj8+]]></data>
	</file>
	<file>
	  <filename>/method.upgrade.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgLT0gYWxsb3cgdXNlcnMgdG8gdXBsb2FkIHN0dWZmLCBhIHBzZXVkbyBmaWxlIG1hbmFnZXIiIG1vZHVsZQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDoJLy93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgokdGFib3B0YXJyYXkgPSBhcnJheSAoJ215c3FsJyA9PiAnVFlQRT1NeUlTQU0nKTsKCiAgICAkY3VycmVudF92ZXJzaW9uID0gJG9sZHZlcnNpb247CiAgICBzd2l0Y2goICRvbGR2ZXJzaW9uICkKICAgICAgewogICAgICBjYXNlICIxLjEuMCI6CiAgICAgIGNhc2UgIjEuMS4xIjoKICAgICAgY2FzZSAiMS4xLjIiOgogICAgICBjYXNlICIxLjEuMyI6CiAgICAgIGNhc2UgIjEuMS40IjoKICAgICAgY2FzZSAiMS4xLjUiOgogICAgICBjYXNlICIxLjEuNiI6CgkkdGhpcy0+U2V0UHJlZmVyZW5jZSAoJ3NlbmRfdXBsb2FkX25vdGlmaWNhdGlvbnNfdG8nLCcnKTsKCSR0aGlzLT5TZXRUZW1wbGF0ZSggJ3VwbG9hZF9lbWFpbHRlbXBsYXRlJywgJHRoaXMtPmRmbHRfZW1haWxub3RpZnl0ZW1wbGF0ZSApOwoJcmV0dXJuOwogICAgICB9CgogICAgc3dpdGNoICgkb2xkdmVyc2lvbikKICAgIHsKICAgIGNhc2UgIjEuMCI6CiAgICBjYXNlICIxLjAuMSI6CiAgICBjYXNlICIxLjAuMiI6CiAgICBjYXNlICIxLjAuMyI6CiAgICBjYXNlICIxLjAuNCI6CiAgICBjYXNlICIxLjAuNSI6CiAgICBjYXNlICIxLjAuNiI6CiAgICBjYXNlICIxLjAuNyI6CiAgICBjYXNlICIxLjAuOCI6CiAgICBjYXNlICIxLjAuOSI6CiAgICBjYXNlICIxLjIuMCI6CiAgICBjYXNlICcxLjIuMSc6CiAgICBjYXNlICcxLjIuMic6CiAgICBjYXNlICcxLjIuMyc6CiAgICAgIHJldHVybiBmYWxzZTsKCiAgICBjYXNlICcxLjMuMC1iZXRhMyc6CiAgICAgIHsKCSR0aGlzLT5TZXRQcmVmZXJlbmNlICgnZG93bmxvYWRfY2h1bmtzaXplJyw4KTsKICAgICAgfQogICAgY2FzZSAnMS4zLjAtYmV0YTUnOgogICAgICB7CgkvLyBhZGQgYSBncm91cHMgZmllbGQgdG8gdGhlIGNhdGVnb3JpZXMgdGFibGUKCS8vIGl0IGNvbnRhaW5zIEZFVSBncm91cCBJRCdzIChjb21tYSBzZXBlcmF0ZWQpCgkkZGIgPSAkdGhpcy0+R2V0RGIoKTsKCSRkaWN0ID0gTmV3RGF0YURpY3Rpb25hcnkoJGRiKTsKCSRzcWxhcnJheSA9ICRkaWN0LT5BZGRDb2x1bW5TUUwoY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc19jYXRlZ29yaWVzIiwKCQkJCQkidXBsb2FkX2NhdGVnb3J5X2dyb3VwcyBDKDI1NSkiKTsKCSRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoICRzcWxhcnJheSApOwogICAgICB9CiAgICBjYXNlICcxLjMuMCc6CiAgICBjYXNlICcxLjMuMSc6CiAgICAgIHsKCS8vIGFuZCBhbiB1cGxvYWRfdGh1bWJuYWlsIGZpZWxkIHRvIHRoZSB1cGxvYWRzIHRhYmxlLgoJJGRiID0gJHRoaXMtPkdldERiKCk7CgkkZGljdCA9IE5ld0RhdGFEaWN0aW9uYXJ5KCRkYik7Cgkkc3FsYXJyYXkgPSAkZGljdC0+QWRkQ29sdW1uU1FMKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHMiLAoJCQkJCSJ1cGxvYWRfdGh1bWJuYWlsIEMoMjU1KSIpOwoJJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSggJHNxbGFycmF5ICk7CgoJLy8KCS8vIEdldCBsaXN0IG9mIGNhdGVnb3JpZXMKCS8vCgkkcXVlcnkgPSAnU0VMRUNUIHVwbG9hZF9jYXRlZ29yeV9pZCx1cGxvYWRfY2F0ZWdvcnlfcGF0aCAKICAgICAgICAgICAgICAgICAgICBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2Fkc19jYXRlZ29yaWVzJzsKCSR0bXAgPSAkZGItPkdldEFycmF5KCRxdWVyeSk7CgkkY2F0ZWdvcmllcyA9IGFycmF5KCk7Cglmb3JlYWNoKCAkdG1wIGFzICRvbmUgKQoJICB7CgkgICAgJGNhdGVnb3JpZXNbJG9uZVsndXBsb2FkX2NhdGVnb3J5X2lkJ11dID0gJG9uZTsKCSAgfQoKCS8vCgkvLyBGb3IgZWFjaCBmaWxlCgkvLwoJJG5vdyA9ICRkYi0+RGJUaW1lU3RhbXAodGltZSgpKTsKCSRxdWVyeSA9ICdTRUxFQ1QgdXBsb2FkX2NhdGVnb3J5X2lkLHVwbG9hZF9pZCx1cGxvYWRfbmFtZSAKICAgICAgICAgICAgICAgICAgICBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2Fkcyc7CgkkZGJyID0gJGRiLT5FeGVjdXRlKCRxdWVyeSk7CgkkdXBkYXRlcXVlcnkgPSAnVVBEQVRFICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2FkcwogICAgICAgICAgICAgICAgICAgICAgICAgICBTRVQgdXBsb2FkX3RodW1ibmFpbCA9ID8KICAgICAgICAgICAgICAgICAgICAgICAgIFdIRVJFIHVwbG9hZF9pZCA9ID8nOwoJd2hpbGUoICRkYnIgJiYgKCRyb3cgPSAkZGJyLT5GZXRjaFJvdygpKSApCgkgIHsKCSAgICAvLyBnZXQgcGF0aCB0byB0aHVtYm5haWwKCSAgICAkZGlyID0gY21zX2pvaW5fcGF0aCgkY29uZmlnWyd1cGxvYWRzX3BhdGgnXSwKCQkJCSAkY2F0ZWdvcmllc1skcm93Wyd1cGxvYWRfY2F0ZWdvcnlfaWQnXV1bJ3VwbG9hZF9jYXRlZ29yeV9wYXRoJ10pOwoJICAgICRvbGR0aHVtYiA9IGNtc19qb2luX3BhdGgoJGRpciwnLnRodW1icycsCgkJCQkgICAgICAkcm93Wyd1cGxvYWRfaWQnXS4nX3RodW1iJyk7CgkgICAgaWYoICFmaWxlX2V4aXN0cygkb2xkdGh1bWIpICkgY29udGludWU7CgoJICAgICR0bXAgPSBAZ2V0aW1hZ2VzaXplKCRvbGR0aHVtYik7CgkgICAgaWYoICFpc19hcnJheSgkdG1wKSB8fCAkdG1wWzBdID09IDAgKSBjb250aW51ZTsKCgkgICAgJHRodW1idHlwZSA9ICR0bXBbMl07CgkgICAgJHRodW1iZXh0ID0gQGltYWdlX3R5cGVfdG9fZXh0ZW5zaW9uKCR0aHVtYnR5cGUpOwoJICAgICRmbmFtZWV4dCA9IHN0cnJjaHIoJHJvd1sndXBsb2FkX25hbWUnXSwnLicpOwoJICAgICRmbmFtZSA9IHN1YnN0cigkcm93Wyd1cGxvYWRfbmFtZSddLDAsc3RybGVuKCRyb3dbJ3VwbG9hZF9uYW1lJ10pLXN0cmxlbigkZm5hbWVleHQpKTsKCSAgICAkdGh1bWJuYW1lID0gJ3RodW1iXycuJGZuYW1lLiR0aHVtYmV4dDsKCSAgICAkbmV3dGh1bWIgPSBjbXNfam9pbl9wYXRoKCRkaXIsJHRodW1ibmFtZSk7CgkgICAgCgkgICAgLy8gcmVuYW1lIHRodW1ibmFpbCBmaWxlcwoJICAgIEByZW5hbWUoJG9sZHRodW1iLCRuZXd0aHVtYik7CgkgICAgQHVubGluaygkb2xkdGh1bWIpOwoKCSAgICAvLyB1cGRhdGUgdGhlIGRhdGFiYXNlCgkgICAgJGRiLT5FeGVjdXRlKCR1cGRhdGVxdWVyeSxhcnJheSgkdGh1bWJuYW1lLCRyb3dbJ3VwbG9hZF9pZCddKSk7CgkgIH0KCiAgICAgICAgLy8gcmVtb3ZlIHRoZSAudGh1bWJzIGRpcmVjdG9yeSBmb3IgZWFjaCBjYXRlZ29yeQoJZm9yKCAkaSA9IDA7ICRpIDwgY291bnQoJGNhdGVnb3JpZXMpOyAkaSsrICkKCSAgewoJICAgICRkaXIgPSBjbXNfam9pbl9wYXRoKCRjb25maWdbJ3VwbG9hZHNfcGF0aCddLAoJCQkJICRjYXRlZ29yaWVzWyRpXVsndXBsb2Fkc19jYXRlZ29yeV9wYXRoJ10sCgkJCQkgJy50aHVtYnMnKTsKCSAgICByZWN1cnNpdmVfZGVsZXRlKCRkaXIpOwoJICB9CiAgICAgIH0KICAgIGNhc2UgJzEuNCc6CiAgICBjYXNlICcxLjQuMSc6CiAgICAgIHsKCSRkYiA9ICR0aGlzLT5HZXREYigpOwoJJGRpY3QgPSBOZXdEYXRhRGljdGlvbmFyeSgkZGIpOwoJJHNxbGFycmF5ID0gJGRpY3QtPkFkZENvbHVtblNRTChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX2NhdGVnb3JpZXMiLAoJCQkJCSJ1cGxvYWRfY2F0ZWdvcnlfZGVsZXRhYmxlIEkiKTsKCSRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoICRzcWxhcnJheSApOwogICAgICB9CgogICAgY2FzZSAnMS41JzoKICAgIGNhc2UgJzEuNS4xJzoKICAgICAgewoJLy8gc2VuZGZpbGUgZm9ybSB0ZW1wbGF0ZQoJJGZuID0gZGlybmFtZShfX0ZJTEVfXykuJy90ZW1wbGF0ZXMvb3JpZ19zZW5kZmlsZWZvcm1fdGVtcGxhdGUudHBsJzsKCWlmKCBmaWxlX2V4aXN0cyggJGZuICkgKQoJICB7CgkgICAgJHRlbXBsYXRlID0gQGZpbGVfZ2V0X2NvbnRlbnRzKCRmbik7CgkgICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ3NlbmRmaWxlZm9ybV9zeXNkZWZhdWx0JywkdGVtcGxhdGUpOwoJICAgICR0aGlzLT5TZXRUZW1wbGF0ZSgnc2VuZGZpbGVmb3JtX2RlZmF1bHQnLCR0ZW1wbGF0ZSk7CgkgICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ2RlZmF1bHRfc2VuZGZpbGVmb3JtJywnZGVmYXVsdCcpOwoJICB9CgoJLy8geW91c2VuZGl0Zm9ybSB0ZW1wbGF0ZQoJJGZuID0gZGlybmFtZShfX0ZJTEVfXykuJy90ZW1wbGF0ZXMvb3JpZ195b3VzZW5kaXRmb3JtX3RlbXBsYXRlLnRwbCc7CglpZiggZmlsZV9leGlzdHMoICRmbiApICkKCSAgewoJICAgICR0ZW1wbGF0ZSA9IEBmaWxlX2dldF9jb250ZW50cygkZm4pOwoJICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCd5b3VzZW5kaXRmb3JtX3N5c2RlZmF1bHQnLCR0ZW1wbGF0ZSk7CgkgICAgJHRoaXMtPlNldFRlbXBsYXRlKCd5b3VzZW5kaXRmb3JtX2RlZmF1bHQnLCR0ZW1wbGF0ZSk7CgkgICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ2RlZmF1bHRfeW91c2VuZGl0Zm9ybScsJ2RlZmF1bHQnKTsKCSAgfQoKCS8vIHRlbXBsYXRlIHVzZWQgZm9yIHNlbmRmaWxlIGVtYWlsCgkkZm4gPSBkaXJuYW1lKF9fRklMRV9fKS4nL3RlbXBsYXRlcy9vcmlnX3NlbmRmaWxlcnB0X3RlbXBsYXRlLnRwbCc7CglpZiggZmlsZV9leGlzdHMoJGZuKSApCgkgIHsKCSAgICAkdGVtcGxhdGUgPSBAZmlsZV9nZXRfY29udGVudHMoJGZuKTsKCSAgICAkdGhpcy0+U2V0VGVtcGxhdGUoICd1cGxvYWRfc2VuZGZpbGVycHQnLCAkdGVtcGxhdGUpOwoJICB9CiAgICAgIH0KCiAgICBjYXNlICcxLjYnOgogICAgICB7CgkkZGIgPSAkdGhpcy0+R2V0RGIoKTsKCSRkaWN0ID0gTmV3RGF0YURpY3Rpb25hcnkoJGRiKTsKCgkvLyBhIHRhYmxlIGZvciBmaWVsZCBkZWZpbml0aW9ucy4KCSRmbGRzID0gIgogICAgICAgICBpZCAgICAgIEkgS0VZIEFVVE8sCiAgICAgICAgIG5hbWUgICAgQygyNTUpLAogICAgICAgICB0eXBlICAgIEMoMjApLAogICAgICAgICBhdHRyaWJzIFgsCiAgICAgICAgIGlvcmRlciAgSSwKICAgICAgICAgcHVibGljICBJMSI7Cgkkc3FsYXJyYXkgPSAkZGljdC0+Q3JlYXRlVGFibGVTUUwoIGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHNfZmllbGRkZWZzJywKCQkJCQkgICAkZmxkcywgJHRhYm9wdGFycmF5KTsKCSRkaWN0LT5FeGVjdXRlU1FMQXJyYXkgKCRzcWxhcnJheSk7CgoKCS8vIGEgdGFibGUgZm9yIGZpZWxkIHZhbHVlcwoJJGZsZHMgPSAidXBsb2FkX2lkIEkgS0VZLAogICAgICAgICBmbGRfaWQgICAgSSBLRVksCiAgICAgICAgIHZhbHVlICAgICBYIjsKCSRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNRTCggY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2Fkc19maWVsZHZhbHMnLAoJCQkJCSAgICRmbGRzLCAkdGFib3B0YXJyYXkpOwoJJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSAoJHNxbGFycmF5KTsKCgkvLyBhIHRhYmxlIGZvciB0aW1lIGxpbWl0ZWQgdXJscwoJJGZsZHMgPSAiCiAgICAgICAgIHRsa2V5X2lkICBJIEtFWSBBVVRPLAogICAgICAgICB1cGxvYWRfaWQgSSwKICAgICAgICAgZW1haWwgICAgIEMoMjU1KSwKICAgICAgICAgdXJsX2tleSAgIEMoMTYpLAogICAgICAgICBjcmVhdGVkICAgIi5DTVNfQURPREJfRFQuIiwKICAgICAgICAgZXhwaXJlcyAgICIuQ01TX0FET0RCX0RULiIsCiAgICAgICAgIG1heF9kb3dubG9hZHMgSSI7Cgkkc3FsYXJyYXkgPSAkZGljdC0+Q3JlYXRlVGFibGVTUUwoIGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHNfdGltZWxpbWl0JywKCQkJCQkgICAkZmxkcywgJHRhYm9wdGFycmF5KTsKCSRkaWN0LT5FeGVjdXRlU1FMQXJyYXkgKCRzcWxhcnJheSk7CgoJJHNxbGFycmF5ID0gJGRpY3QtPkFkZENvbHVtblNRTChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX2Rvd25sb2FkcyIsCgkJCQkJInVybF9rZXkgQyg0MCkiKTsKCSRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoICRzcWxhcnJheSApOwoKICAgICAgfQoKICAgIGNhc2UgJzEuOSc6CiAgICBjYXNlICcxLjkuMSc6CiAgICBjYXNlICcxLjkuMic6CiAgICBjYXNlICcxLjkuMyc6CiAgICBjYXNlICcxLjkuNCc6CiAgICAgIHsKCSRkYiA9ICR0aGlzLT5HZXREYigpOwoJJGRpY3QgPSBOZXdEYXRhRGljdGlvbmFyeSgkZGIpOwoJJHNxbGFycmF5ID0gJGRpY3QtPkFkZENvbHVtblNRTChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX2NhdGVnb3JpZXMiLAoJCQkJCSJ1cGxvYWRfY2F0ZWdvcnlfZXhwaXJlc19ocnMgSSIpOwoJJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSggJHNxbGFycmF5ICk7CgoJJHRoaXMtPlNldFByZWZlcmVuY2UgKCdjYXRlZ29yeV9leHBpcnknLDApOwoJJHRoaXMtPkFkZEV2ZW50SGFuZGxlcignQ29yZScsJ0NvbnRlbnRQb3N0UmVuZGVyJyk7CiAgICAgIH0KCiAgICBjYXNlICcxLjEwJzoKICAgIGNhc2UgJzEuMTAuMSc6CiAgICAgIHsKCSR0aGlzLT5DcmVhdGVQZXJtaXNzaW9uICgnVXBsb2FkIEZpbGVzIHRvIFVwbG9hZHMnLCAnVXBsb2FkIEZpbGVzIHRvIFVwbG9hZHMnKTsKICAgICAgfQoKICAgIGNhc2UgJzEuMTAuMic6CiAgICBjYXNlICcxLjEwLjMnOgogICAgY2FzZSAnMS4xMC40JzoKICAgICAgewoJJGRiID0gJHRoaXMtPkdldERiKCk7CgkkZGljdCA9IE5ld0RhdGFEaWN0aW9uYXJ5KCRkYik7Cgkkc3FsYXJyYXkgPSAkZGljdC0+QWRkQ29sdW1uU1FMKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfY2F0ZWdvcmllcyIsCgkJCQkJInVwbG9hZF9jYXRlZ29yeV9zY2FubmFibGUgSTEiKTsKCSRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoICRzcWxhcnJheSApOwoKCSRxdWVyeSA9ICdVUERBVEUgJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzX2NhdGVnb3JpZXMKICAgICAgICAgICAgICAgICAgICAgU0VUIHVwbG9hZF9jYXRlZ29yeV9zY2FubmFibGUgPSAxJzsKCSRkYi0+RXhlY3V0ZSgkcXVlcnkpOwoKCSRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVJbmRleFNRTCgnaW5kZXhfZG93bmxvYWRfZmlsZWlkJyxjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzX2Rvd25sb2FkcycsJ2ZpbGVfaWQnKTsKCSRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKICAgICAgfQogICAgfQoKaWYoIHZlcnNpb25fY29tcGFyZSgkY3VycmVudF92ZXJzaW9uLCcxLjE1JykgPCAwICkgewogICRkYiA9ICR0aGlzLT5HZXREYigpOwogICRkaWN0ID0gTmV3RGF0YURpY3Rpb25hcnkoJGRiKTsKCiAgJHNxbGFycmF5ID0gJGRpY3QtPkFkZENvbHVtblNRTChjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzX2NhdGVnb3JpZXMnLAoJCQkJICAndXBsb2FkX2NhdGVnb3J5X3VzZXJwZXJtcyBJMSx1cGxvYWRfY2F0ZWdvcnlfZGZsdHVzZXJwZXJtcyBYJyk7CiAgJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwoKICAkc3FsYXJyYXkgPSAkZGljdC0+QWRkQ29sdW1uU1FMKGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHMnLCd1cGxvYWRfdXNlcnBlcm1zIFgnKTsKICAkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7Cn0KaWYoIHZlcnNpb25fY29tcGFyZSgkY3VycmVudF92ZXJzaW9uLCcxLjE2JykgPCAwICkgewogICRkYiA9ICR0aGlzLT5HZXREYigpOwogICRkaWN0ID0gTmV3RGF0YURpY3Rpb25hcnkoJGRiKTsKCiAgJHRoaXMtPkNyZWF0ZVBlcm1pc3Npb24gKCdDcmVhdGUgVXBsb2FkcyBSZXBvcnRzJywnQ3JlYXRlIFVwbG9hZHMgUmVwb3J0cycpOwogICRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVJbmRleFNRTCgnaW5kZXhfdXBsb2FkX25hbWUnLGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3VwbG9hZHMnLCd1cGxvYWRfbmFtZScpOwogICRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKCiAgJHRtcCA9IGZpbGVfZ2V0X2NvbnRlbnRzKF9fRElSX18uJy90ZW1wbGF0ZXMvb3JpZ19odG1scmVwb3J0X2Rvd25sb2Fkc2J5dXNlci50cGwnKTsKICAkdGhpcy0+U2V0VGVtcGxhdGUoJ3JkbF9TYW1wbGUnLCR0bXApOwogICR0bXAgPSBmaWxlX2dldF9jb250ZW50cyhfX0RJUl9fLicvdGVtcGxhdGVzL29yaWdfaHRtbHJlcG9ydF9kb3dubG9hZHNieWZpbGUudHBsJyk7CiAgJHRoaXMtPlNldFRlbXBsYXRlKCdyZGZfU2FtcGxlJywkdG1wKTsKfQoKPz4=]]></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[PGgzPnskdGl0bGV9PC9oMz4Ke2lmIGlzc2V0KCRtZXNzYWdlKSAmJiAkbWVzc2FnZSAhPSAnJ30KICB7aWYgaXNzZXQoJGVycm9yKSAmJiAkZXJyb3IgIT0gJyd9CiAgICA8cD48Zm9udCBjb2xvcj0icmVkIj57JG1lc3NhZ2V9PC9mb250PjwvcD4KICB7ZWxzZX0KICAgIDxwPnskbWVzc2FnZX08L3A+CiAgey9pZn0Ke2Vsc2V9CiAgeyRzdGFydGZvcm19CiAge2NnZV9zdGFydF90YWJzfQogIHtjZ2VfdGFiaGVhZGVyIG5hbWU9J2dlbmVyYWwnIGxhYmVsPSRtb2QtPkxhbmcoJ3Byb21wdF9nZW5lcmFsJyl9CiAge2NnZV90YWJoZWFkZXIgbmFtZT0ndmlld2luZycgbGFiZWw9JG1vZC0+TGFuZygncHJvbXB0X3ZpZXdpbmcnKX0KICB7Y2dlX3RhYmhlYWRlciBuYW1lPSdtb2RpZnlpbmcnIGxhYmVsPSRtb2QtPkxhbmcoJ3Byb21wdF9tb2RpZnlpbmcnKX0KICB7Y2dlX3RhYmNvbnRlbnRfc3RhcnQgbmFtZT0nZ2VuZXJhbCd9CiAgICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfY2F0ZWdvcnluYW1lJyl9OjwvcD4KICAgICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9aW5wdXRfY2F0ZWdvcnluYW1lIiBzaXplPSIyMCIgbWF4bGVuZ3RoPSI4MCIgdmFsdWU9InskZGF0YS51cGxvYWRfY2F0ZWdvcnlfbmFtZX0iLz4KICAgICAgICA8YnIvPnskbW9kLT5MYW5nKCdpbmZvX2NhdGVnb3J5bmFtZScpfQogICAgICA8L3A+CiAgICA8L2Rpdj4KICAgIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9jYXRlZ29yeW5hbWUnKX06PC9wPgogICAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1pbnB1dF9jYXRlZ29yeWRlc2MiIHNpemU9IjgwIiBtYXhsZW5ndGg9IjI1NSIgdmFsdWU9InskZGF0YS51cGxvYWRfY2F0ZWdvcnlfZGVzY3JpcHRpb259Ii8+CiAgICAgICAgPGJyLz57JG1vZC0+TGFuZygnaW5mb19jYXRlZ29yeWRlc2MnKX0KICAgICAgPC9wPgogICAgPC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfY2F0ZWdvcnlwYXRoJyl9OjwvcD4KICAgICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9aW5wdXRfY2F0ZWdvcnlwYXRoIiBzaXplPSI0MCIgbWF4bGVuZ3RoPSIyNTUiIHZhbHVlPSJ7JGRhdGEudXBsb2FkX2NhdGVnb3J5X3BhdGh9IntpZiBpc3NldCgkY2F0ZWdvcnlfaWQpfSByZWFkb25seT0icmVhZG9ubHkiey9pZn0+CiAgICAgICAgPGJyLz57JG1vZC0+TGFuZygnaW5mb19jYXRlZ29yeXBhdGgnKX0KICAgICAgPC9wPgogICAgPC9kaXY+CiAge2NnZV90YWJjb250ZW50X3N0YXJ0IG5hbWU9J3ZpZXdpbmcnfQogICAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X2NhdGVnb3J5bGlzdGFibGUnKX06PC9wPgogICAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAgICB7Y2dlX3llc25vX29wdGlvbnMgcHJlZml4PSRhY3Rpb25pZCBuYW1lPWlucHV0X2NhdGVnb3J5bGlzdGFibGUgc2VsZWN0ZWQ9JGRhdGEudXBsb2FkX2NhdGVnb3J5X2xpc3RhYmxlfQogICAgICAgIDxici8+CiAgICAgICAgeyRtb2QtPkxhbmcoJ2luZm9fY2F0ZWdvcnlsaXN0YWJsZScpfQogICAgICA8L3A+CiAgICA8L2Rpdj4KICAgIHtpZiBpc3NldCgkZmV1X2dyb3Vwcyl9CiAgICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfZ3JvdXBsaXN0Jyl9OjwvcD4KICAgICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgICAgPHNlbGVjdCBuYW1lPSJ7JGFjdGlvbmlkfWlucHV0X2dyb3VwbGlzdFtdIiBzaXplPSI1IiBtdWx0aXBsZT0ibXVsdGlwbGUiPgogICAgICAgICAge2h0bWxfb3B0aW9ucyBvcHRpb25zPSRmZXVfZ3JvdXBzIHNlbGVjdGVkPSRncm91cGxpc3R9CiAgICAgICAgPC9zZWxlY3Q+CiAgICAgICAgPGJyLz57JG1vZC0+TGFuZygnaW5mb19ncm91cGxpc3QnKX0KICAgICAgPC9wPgogICAgPC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfY2F0ZWdvcnlfdXNlcnBlcm1zJyl9OjwvcD4KICAgICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgICAge2NnZV95ZXNub19vcHRpb25zIHByZWZpeD0kYWN0aW9uaWQgbmFtZT0naW5wdXRfY2F0ZWdvcnlfdXNlcnBlcm1zJyBzZWxlY3RlZD0kZGF0YS51cGxvYWRfY2F0ZWdvcnlfdXNlcnBlcm1zfQogICAgICAgIDxici8+eyRtb2QtPkxhbmcoJ2luZm9fY2F0ZWdvcnlfdXNlcnBlcm1zJyl9CiAgICAgIDwvcD4KICAgIDwvZGl2PgogICAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X2NhdGVnb3J5X2RmbHR1c2VycGVybXMnKX06PC9wPgogICAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAgICA8c2VsZWN0IG5hbWU9InskYWN0aW9uaWR9aW5wdXRfY2F0ZWdvcnlfZGZsdHVzZXJwZXJtc1tdIiBzaXplPSI1IiBtdWx0aXBsZT0ibXVsdGlwbGUiPgogICAgICAgICAge2h0bWxfb3B0aW9ucyBvcHRpb25zPSRmZXVfZ3JvdXBzIHNlbGVjdGVkPSRkYXRhLnVwbG9hZF9jYXRlZ29yeV9kZmx0dXNlcnBlcm1zfQogICAgICAgIDwvc2VsZWN0PgogICAgICAgIDxici8+eyRtb2QtPkxhbmcoJ2luZm9fY2F0ZWdvcnlfZGZsdHVzZXJwZXJtcycpfQogICAgICA8L3A+CiAgICA8L2Rpdj4KICAgIHsvaWZ9CiAge2NnZV90YWJjb250ZW50X3N0YXJ0IG5hbWU9J21vZGlmeWluZyd9CiAgICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfY2F0ZWdvcnlkZWxldGFibGUnKX06PC9wPgogICAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAgICB7Y2dlX3llc25vX29wdGlvbnMgcHJlZml4PSRhY3Rpb25pZCBuYW1lPWlucHV0X2NhdGVnb3J5ZGVsZXRhYmxlIHNlbGVjdGVkPSRkYXRhLnVwbG9hZF9jYXRlZ29yeV9kZWxldGFibGV9Cgk8YnIvPgogICAgICAgIHskbW9kLT5MYW5nKCdpbmZvX2NhdGVnb3J5ZGVsZXRhYmxlJyl9CiAgICAgIDwvcD4KICAgIDwvZGl2PgogICAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X2NhdGVnb3J5X2V4cGlyZXNfaHJzJyl9PC9wPgogICAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1pbnB1dF9jYXRlZ29yeV9leHBpcmVzX2hycyIgdmFsdWU9InskZGF0YS51cGxvYWRfY2F0ZWdvcnlfZXhwaXJlc19ocnN9IiBzaXplPSIzIiBtYXhsZW5ndGg9IjQiLz4KCTxici8+CiAgICAgICAgeyRtb2QtPkxhbmcoJ2luZm9fY2F0ZWdvcnlfZXhwaXJlc19ocnMnKX0KICAgICAgPC9wPgogICAgPC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfY2F0ZWdvcnlfc2Nhbm5hYmxlJyl9PC9wPgogICAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAgICB7Y2dlX3llc25vX29wdGlvbnMgcHJlZml4PSRhY3Rpb25pZCBuYW1lPWlucHV0X2NhdGVnb3J5X3NjYW5uYWJsZSBzZWxlY3RlZD0kZGF0YS51cGxvYWRfY2F0ZWdvcnlfc2Nhbm5hYmxlfQoJPGJyLz4KICAgICAgICB7JG1vZC0+TGFuZygnaW5mb19jYXRlZ29yeV9zY2FubmFibGUnKX0KICAgICAgPC9wPgogICAgPC9kaXY+CiAge2NnZV9lbmRfdGFic30KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij4mbmJzcDs8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAge2lmIGlzc2V0KCRjYXRlZ29yeV9pZCl9CiAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9InskYWN0aW9uaWR9c2NhbiIgdmFsdWU9InskbW9kLT5MYW5nKCdzY2FuJyl9IiB0aXRsZT0ieyRtb2QtPkxhbmcoJ3RpdGxlX3NjYW4nKX0iLz4KICAgICAgey9pZn0KICAgICAgPGlucHV0IHR5cGU9InN1Ym1pdCIgbmFtZT0ieyRhY3Rpb25pZH1zdWJtaXQiIHZhbHVlPSJ7JG1vZC0+TGFuZygnc3VibWl0Jyl9Ii8+CiAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9InskYWN0aW9uaWR9Y2FuY2VsIiB2YWx1ZT0ieyRtb2QtPkxhbmcoJ2NhbmNlbCcpfSIvPgogICAgPC9wPgogIDwvZGl2PgogIHskZW5kZm9ybX0Key9pZn0=]]></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+CiAgICAgICAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgICAgIAkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X2ZyaWVuZGx5bmFtZScpfTo8L3A+CgkJPHAgY2xhc3M9InBhZ2VpbnB1dCI+CgkJICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1mcmllbmRseW5hbWUiIHZhbHVlPSJ7JGZyaWVuZGx5bmFtZX0iIG1heGxlbmd0aD0iMjU1Ii8+CiAgICAgICAgICAgICAgICAgIDxici8+eyRtb2QtPkxhbmcoJ2luZm9fZnJpZW5kbHluYW1lJyl9CgkJPC9wPgogICAgICAgIDwvZGl2PgoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCQk8cCBjbGFzcz0icGFnZXRleHQiPnskdGl0bGVfZHVtbXlfaW5kZXhfaHRtbH06PC9wPgoJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfZHVtbXlfaW5kZXhfaHRtbH08L3A+Cgk8L2Rpdj4KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CgkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHRpdGxlX3NlbmRmaWxlcGFnZX06PC9wPgoJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfc2VuZGZpbGVwYWdlfTwvcD4KCTwvZGl2PgoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCQk8cCBjbGFzcz0icGFnZXRleHQiPnskdGl0bGVfcmVkaXJlY3Rfb25fc2VuZGZpbGV9OjwvcD4KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X3JlZGlyZWN0X29uX3NlbmRmaWxlfTwvcD4KCTwvZGl2PgoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCQk8cCBjbGFzcz0icGFnZXRleHQiPnskdGl0bGVfZG93bmxvYWRfY2h1bmtzaXplfTo8L3A+CgkJPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9kb3dubG9hZF9jaHVua3NpemV9Jm5ic3A7eyRpbmZvX2Rvd25sb2FkX2NodW5rc2l6ZX08L3A+Cgk8L2Rpdj4KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CgkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHRpdGxlX2FsbG93X2RlbGV0ZX06PC9wPgoJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfYWxsb3dfZGVsZXRlfTwvcD4KCTwvZGl2PgoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCQk8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfZ2V0ZmlsZV9yZXN1bHRwYWdlJyl9OjwvcD4KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAgICAgICAgICAgICAgeyRpbnB1dF9nZXRmaWxlX3Jlc3VsdHBhZ2V9CiAgICAgICAgICAgICAgICA8L3A+Cgk8L2Rpdj4KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CgkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHRpdGxlX3N1Ym5ldF9leGNsdXNpb25zfTo8L3A+CgkJPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9zdWJuZXRfZXhjbHVzaW9uc308L3A+Cgk8L2Rpdj4KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CgkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygndGl0bGVfY2F0ZWdvcnlfZXhwaXJ5Jyl9OjwvcD4KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij48aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1jYXRlZ29yeV9leHBpcnkiIHZhbHVlPSJ7JGNhdGVnb3J5X2V4cGlyeX0iIHNpemU9IjMiIG1heGxlbmd0aD0iNCIvPjxici8+eyRtb2QtPkxhbmcoJ2luZm9fZGZsdF9jYXRlZ29yeV9leHBpcnknKX08L3A+Cgk8L2Rpdj4KPC9maWVsZHNldD4KCjxmaWVsZHNldD4KPGxlZ2VuZD57JG1vZC0+TGFuZygnaW1hZ2Vfc2V0dGluZ3MnKX06PC9sZWdlbmQ+Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJCTxwIGNsYXNzPSJwYWdldGV4dCI+eyR0aXRsZV9hdXRvdGh1bWJuYWlsX2V4dGVuc2lvbnN9OjwvcD4KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2F1dG90aHVtYm5haWxfZXh0ZW5zaW9uc308L3A+Cgk8L2Rpdj4KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CgkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHRpdGxlX2F1dG90aHVtYm5haWxfc2l6ZX06PC9wPgoJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfYXV0b3RodW1ibmFpbF9zaXplfTwvcD4KCTwvZGl2PgoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCQk8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdhdXRvd2F0ZXJtYXJrJyl9OjwvcD4KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0ieyRhY3Rpb25pZH1hdXRvd2F0ZXJtYXJrIiB2YWx1ZT0iMCIvPgogICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0iY2hlY2tib3giIG5hbWU9InskYWN0aW9uaWR9YXV0b3dhdGVybWFyayIgdmFsdWU9IjEie2lmICRhdXRvd2F0ZXJtYXJrID09IDF9IGNoZWNrZWQ9ImNoZWNrZWQiey9pZn0vPgogICAgICAgICAgICAgICAgPC9wPgoJPC9kaXY+CjwvZmllbGRzZXQ+Cgo8ZmllbGRzZXQ+CjxsZWdlbmQ+eyRtb2QtPkxhbmcoJ3RpbWVsaW1pdGVkX3VybF9zZXR0aW5ncycpfTombmJzcDs8L2xlZ2VuZD4KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CgkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X3RpbWVsaW1pdGVkX2hvdXJzJyl9OjwvcD4KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9dGltZWxpbWl0ZWRfaG91cnMiIHZhbHVlPSJ7JHRpbWVsaW1pdGVkX2hvdXJzfSIgc2l6ZT0iMyIgbWF4bGVuZ3RoPSIzIi8+CiAgICAgICAgICAgICAgICAgIDxici8+CiAgICAgICAgICAgICAgICAgIHskbW9kLT5MYW5nKCdpbmZvX3RpbWVsaW1pdGVkX2hvdXJzJyl9CiAgICAgICAgICAgICAgICA8L3A+Cgk8L2Rpdj4KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CgkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X3RpbWVsaW1pdGVkX2Rvd25sb2FkcycpfTo8L3A+CgkJPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGFjdGlvbmlkfXRpbWVsaW1pdGVkX2Rvd25sb2FkcyIgdmFsdWU9InskdGltZWxpbWl0ZWRfZG93bmxvYWRzfSIgc2l6ZT0iMyIgbWF4bGVuZ3RoPSIzIi8+CiAgICAgICAgICAgICAgICAgIDxici8+CiAgICAgICAgICAgICAgICAgIHskbW9kLT5MYW5nKCdpbmZvX3RpbWVsaW1pdGVkX2Rvd25sb2FkcycpfQogICAgICAgICAgICAgICAgPC9wPgoJPC9kaXY+Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJCTxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF90aW1lbGltaXRlZF9hdXRvZGVsZXRlJyl9OjwvcD4KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9dGltZWxpbWl0ZWRfYXV0b2RlbGV0ZSIgdmFsdWU9InskdGltZWxpbWl0ZWRfYXV0b2RlbGV0ZX0iIHNpemU9IjMiIG1heGxlbmd0aD0iMyIvPgogICAgICAgICAgICAgICAgPC9wPgoJPC9kaXY+Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJCTxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF90aW1lbGltaXRlZF9zdWJqZWN0Jyl9OjwvcD4KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9dGltZWxpbWl0ZWRfc3ViamVjdCIgdmFsdWU9InskdGltZWxpbWl0ZWRfc3ViamVjdH0iIHNpemU9IjgwIiBtYXhsZW5ndGg9IjI1NSIvPgogICAgICAgICAgICAgICAgPC9wPgoJPC9kaXY+CjwvZmllbGRzZXQ+CgoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCQk8cCBjbGFzcz0icGFnZXRleHQiPiZuYnNwOzwvcD4KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JHN1Ym1pdH08L3A+Cgk8L2Rpdj4KeyRlbmRmb3JtfQo=]]></data>
	</file>
	<file>
	  <filename>/templates/admin_add_field.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGgzPnskbW9kLT5MYW5nKCd0aXRsZV9hZGRfZmllbGQnKX08L2gzPgoKeyRmb3Jtc3RhcnR9CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X2ZpZWxkX25hbWUnKX06PC9wPgogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPjxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGFjdGlvbmlkfW5hbWUiIHZhbHVlPSJ7JGZsZC5uYW1lfSIgc2l6ZT0iNTAiIG1heGxlbmd0aD0iMjU1Ii8+PC9wPgo8L2Rpdj4KCjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X2ZpZWxkX3R5cGUnKX06PC9wPgogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgIDxzZWxlY3QgbmFtZT0ieyRhY3Rpb25pZH10eXBlIiBvbmNoYW5nZT0idGhpcy5mb3JtLnN1Ym1pdCgpOyI+CiAgICAgICB7aHRtbF9vcHRpb25zIG9wdGlvbnM9JGZsZHR5cGVzIHNlbGVjdGVkPSRmbGQudHlwZX0KICAgICA8L3NlbGVjdD4KICA8L3A+CjwvZGl2PgoKe2lmICRmbGQudHlwZSA9PSAndGV4dGlucHV0J30KICB7KiB0ZXh0IGZpZWxkIG9yIGVtYWlsIGZpZWxkICp9CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9maWVsZF9sZW5ndGgnKX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij48aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1hdHRyaWJfbGVuZ3RoIiB2YWx1ZT0ieyRmbGQuYXR0cmliLmxlbmd0aHxkZWZhdWx0OjgwfSIgc2l6ZT0iMyIgbWF4bGVuZ3RoPSIzIi8+PC9wPgogIDwvZGl2PgoKICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X2ZpZWxkX21heGxlbmd0aCcpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPjxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGFjdGlvbmlkfWF0dHJpYl9tYXhsZW5ndGgiIHZhbHVlPSJ7JGZsZC5hdHRyaWIubWF4bGVuZ3RofGRlZmF1bHQ6ODB9IiBzaXplPSI0IiBtYXhsZW5ndGg9IjQiLz48L3A+CiAgPC9kaXY+CntlbHNlaWYgJGZsZC50eXBlID09ICd0ZXh0YXJlYSd9CiAgeyogdGV4dCBhcmVhIGZpZWxkICp9CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9kZWZhdWx0X2NvbnRlbnQnKX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij4KICAgICAgPHRleHRhcmVhIG5hbWU9InskYWN0aW9uaWR9YXR0cmliX2RmbHRjb250ZW50IiByb3dzPSI1Ij57JGZsZC5hdHRyaWIuZGZsdGNvbnRlbnR8ZGVmYXVsdDonJ308L3RleHRhcmVhPgogICAgPC9wPgogIDwvZGl2PgoKICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+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+CiAgICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9aG91cnMiIHZhbHVlPSJ7JGhvdXJzfSIgc2l6ZT0iNSIgbWF4bGVuZ3RoPSI1Ii8+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+TGFuZygnZGVzY3JpcHRpb24nKX06PC90aD4KICAgICAgICAgPHRoPnskbW9kLT5MYW5nKCdwYXRoJyl9OjwvdGg+CiAgICAgICAgIDx0aD57JG1vZC0+TGFuZygnY29weV9maWxlcycpfTo8L3RoPgogICAgICAgPC90cj4KICAgICA8L3RoZWFkPgogICAgIDx0Ym9keT4KICAgICAgIDx0cj4KICAgICAgICAgPHRkPjxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGFjdGlvbmlkfWNvcHljYXRlZ29yeVt7JG9uZWNhdC51cGxvYWRfY2F0ZWdvcnlfaWR9XVtuYW1lXSIgdmFsdWU9IkNvcHkgb2YgeyRvbmVjYXQudXBsb2FkX2NhdGVnb3J5X25hbWV9IiBzaXplPSI0MCIgbWF4bGVuZ3RoPSIyNTUiLz48L3RkPgogICAgICAgICA8dGQ+PGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9Y29weWNhdGVnb3J5W3skb25lY2F0LnVwbG9hZF9jYXRlZ29yeV9pZH1dW2Rlc2NyaXB0aW9uXSIgdmFsdWU9Inskb25lY2F0LnVwbG9hZF9jYXRlZ29yeV9kZXNjcmlwdGlvbn0iIHNpemU9IjQwIiBtYXhsZW5ndGg9IjI1NSIvPjwvdGQ+CiAgICAgICAgIDx0ZD48aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1jb3B5Y2F0ZWdvcnlbeyRvbmVjYXQudXBsb2FkX2NhdGVnb3J5X2lkfV1bcGF0aF0iIHZhbHVlPSJ7JG9uZWNhdC51cGxvYWRfY2F0ZWdvcnlfcGF0aH1fY29weSIgc2l6ZT0iNDAiIG1heGxlbmd0aD0iMjU1Ii8+PC90ZD4KICAgICAgICAgPHRkPgogICAgICAgICAgIDxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9InskYWN0aW9uaWR9Y29weWNhdGVnb3J5W3skb25lY2F0LnVwbG9hZF9jYXRlZ29yeV9pZH1dW2RvZmlsZXNdIiB2YWx1ZT0iMCIvPgogICAgICAgICAgIDxpbnB1dCB0eXBlPSJjaGVja2JveCIgbmFtZT0ieyRhY3Rpb25pZH1jb3B5Y2F0ZWdvcnlbeyRvbmVjYXQudXBsb2FkX2NhdGVnb3J5X2lkfV1bZG9maWxlc10iIHZhbHVlPSIxIi8+CiAgICAgICAgIDwvdGQ+CiAgICAgICA8L3RyPgogICAgIDwvdGJvZHk+CiAgIDwvdGFibGU+CiA8L2Rpdj4KPC9maWVsZHNldD4Key9mb3JlYWNofQoKPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICA8cCBjbGFzcz0icGFnZXRleHQiPiZuYnNwOzwvcD4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9InskYWN0aW9uaWR9YnVsa2NvcHlfc3VibWl0IiB2YWx1ZT0ieyRtb2QtPkxhbmcoJ3N1Ym1pdCcpfSIvPgogICAgPGlucHV0IHR5cGU9InN1Ym1pdCIgbmFtZT0ieyRhY3Rpb25pZH1jYW5jZWwiIHZhbHVlPSJ7JG1vZC0+TGFuZygnY2FuY2VsJyl9Ii8+CiAgPC9wPgo8L2Rpdj4KeyRmb3JtZW5kfQ==]]></data>
	</file>
	<file>
	  <filename>/templates/admin_copycategory.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogY29weSBjYXRlZ29yeSB0ZW1wbGF0ZSAqfQp7Kgp7bGl0ZXJhbH0KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgpqUXVlcnkoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uKCl7CiAgalF1ZXJ5KCcjZXh0cmFsaW5rJykuY2xpY2soZnVuY3Rpb24oKXsKICAgIGpRdWVyeSgnI2V4dHJhaW5mbycpLnRvZ2dsZSgpOwogICAgcmV0dXJuIGZhbHNlOwogIH0pOwp9KTsKPC9zY3JpcHQ+CnsvbGl0ZXJhbH0KKn0KCnskZm9ybXN0YXJ0fQogIDxmaWVsZHNldD4KICA8bGVnZW5kPnskbW9kLT5MYW5nKCdzb3VyY2UnKX06Jm5ic3A7PC9sZWdlbmQ+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9jYXRlZ29yeW5hbWUnKX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRjYXRlZ29yeS51cGxvYWRfY2F0ZWdvcnlfbmFtZX08L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9jYXRlZ29yeWRlc2MnKX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRjYXRlZ29yeS51cGxvYWRfY2F0ZWdvcnlfZGVzY3JpcHRpb259PC9wPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfY2F0ZWdvcnlwYXRoJyl9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskY2F0ZWdvcnkudXBsb2FkX2NhdGVnb3J5X3BhdGh9PC9wPgogIDwvZGl2PgogIDwvZmllbGRzZXQ+CiAgPGJyLz4KIAogIDxmaWVsZHNldD4KICA8bGVnZW5kPnskbW9kLT5MYW5nKCdkZXN0aW5hdGlvbicpfTombmJzcDs8L2xlZ2VuZD4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X2NhdGVnb3J5bmFtZScpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9Y2F0ZWdvcnlfbmFtZSIgc2l6ZT0iNTAiIG1heGxlbmd0aD0iMjU1IiB2YWx1ZT0iQ29weSBvZiB7JGNhdGVnb3J5LnVwbG9hZF9jYXRlZ29yeV9uYW1lfSIvPgogICAgICA8YnIvPgogICAgICB7JG1vZC0+TGFuZygnaW5mb19jYXRlZ29yeW5hbWUnKX0KICAgIDwvcD4KICA8L2Rpdj4KCiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9jYXRlZ29yeWRlc2MnKX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGFjdGlvbmlkfWNhdGVnb3J5X2Rlc2MiIHNpemU9IjUwIiBtYXhsZW5ndGg9IjI1NSIgdmFsdWU9InskY2F0ZWdvcnkudXBsb2FkX2NhdGVnb3J5X2Rlc2NyaXB0aW9ufSIvPgogICAgICA8YnIvPgogICAgICB7JG1vZC0+TGFuZygnaW5mb19jYXRlZ29yeWRlc2MnKX0KICAgIDwvcD4KICA8L2Rpdj4KCiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9jYXRlZ29yeXBhdGgnKX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGFjdGlvbmlkfWNhdGVnb3J5X3BhdGgiIHNpemU9IjUwIiBtYXhsZW5ndGg9IjI1NSIgdmFsdWU9InskY2F0ZWdvcnkudXBsb2FkX2NhdGVnb3J5X3BhdGh9X2NvcHkiLz4KICAgICAgPGJyLz4KICAgICAgeyRtb2QtPkxhbmcoJ2luZm9fY2F0ZWdvcnlwYXRoJyl9CiAgICA8L3A+CiAgPC9kaXY+CgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfY29weV9maWxlcycpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAgPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0ieyRhY3Rpb25pZH1jb3B5ZmlsZXMiIHZhbHVlPSIwIi8+CiAgICAgIDxpbnB1dCB0eXBlPSJjaGVja2JveCIgbmFtZT0ieyRhY3Rpb25pZH1jb3B5ZmlsZXMiIHZhbHVlPSIxIiBjaGVja2VkPSJjaGVja2VkIi8+CiAgICAgIDxici8+CiAgICAgIHskbW9kLT5MYW5nKCdpbmZvX2NvcHlfZmlsZXMnKX0KICAgIDwvcD4KICA8L2Rpdj4KCiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+Jm5ic3A7PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9InskYWN0aW9uaWR9c3VibWl0IiB2YWx1ZT0ieyRtb2QtPkxhbmcoJ3N1Ym1pdCcpfSIgLz4KICAgICAgPGlucHV0IHR5cGU9InN1Ym1pdCIgbmFtZT0ieyRhY3Rpb25pZH1jYW5jZWwiIHZhbHVlPSJ7JG1vZC0+TGFuZygnY2FuY2VsJyl9IiAvPgogICAgPC9wPgogIDwvZGl2PgogIDwvZmllbGRzZXQ+CnskZm9ybWVuZH0K]]></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_reportstab.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGRpdj4Ke2ZvcmVhY2ggZnJvbT0kbGlua3MgaXRlbT0nb25lJ30KICA8ZGl2IHN0eWxlPSJmbG9hdDogbGVmdDsgd2lkdGg6IDQ1JTsiPgogICAgPGEgaHJlZj0ieyRvbmUudXJsfSI+CiAgICAgIDxzcGFuIHN0eWxlPSJ2ZXJ0aWNhbC1hbGlnbjogY2VudGVyOyI+e2lmIGlzc2V0KCRvbmUuaWNvbil9eyRvbmUuaWNvbn17ZWxzZX17JHJlcG9ydF9pY29ufXsvaWZ9PC9zcGFuPiZuYnNwOwogICAgICB7JG9uZS50aXRsZX0KICAgIDwvYT4KICA8L2Rpdj4Key9mb3JlYWNofQogIDxkaXYgc3R5bGU9ImNsZWFyOiBib3RoOyI+PC9kaXY+CjwvZGl2Pg==]]></data>
	</file>
	<file>
	  <filename>/templates/admin_report_downloadsbyfile.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgpmdW5jdGlvbiBzcGxpdCggdmFsICkgewogIHJldHVybiB2YWwuc3BsaXQoIC8sXHMqLyApOwp9CmZ1bmN0aW9uIGV4dHJhY3RMYXN0KCB0ZXJtICkgewogIHJldHVybiBzcGxpdCggdGVybSApLnBvcCgpOwp9CiQoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uKCl7CiAgJCgnI3JlcG9ydF90eXBlJykuYmluZCgnY2hhbmdlJyxmdW5jdGlvbihlKXsKICAgICQodGhpcykuY2xvc2VzdCgnZm9ybScpLnN1Ym1pdCgpOwogIH0pOwogIHZhciB2ID0gJCgnI291dHB1dF90eXBlJykudmFsKCk7CiAgaWYoIHYgIT0gJ2NzdicgKSAkKCcjb3V0cHV0X3RlbXBsYXRlX3dyYXAnKS5zaG93KCk7CiAgCiAgJCgnI291dHB1dF90eXBlJykuYmluZCgnY2hhbmdlJyxmdW5jdGlvbihlKXsKICAgIHZhciB2ID0gJCh0aGlzKS52YWwoKTsKICAgIGlmKCB2ID09ICdjc3YnICkgewogICAgICAkKCcjb3V0cHV0X3RlbXBsYXRlX3dyYXAnKS5oaWRlKCk7CiAgICB9IGVsc2UgewogICAgICAkKCcjb3V0cHV0X3RlbXBsYXRlX3dyYXAnKS5zaG93KCk7CiAgICB9CiAgfSk7CgovKgogICQoJyNyZXBvcnRfZG93bmxvYWRzYnlmaWxlIGZvcm0nKS5iaW5kKCdzdWJtaXQnLGZ1bmN0aW9uKGUpewogICAgdmFyIHYgPSAkKCcjb3V0cHV0X3R5cGUnKS52YWwoKTsKICAgICQoJ1tuYW1lJD1zdWJtaXRdJykuZmFkZU91dCgpOwogICAgJCgnW25hbWUkPWNhbmNlbF0nKS5mYWRlT3V0KCk7CiAgICAkKCdbbmFtZSQ9Y2FuY2VsXScpLmF0dHIoJ3ZhbHVlJywneyRtb2QtPmxhbmcoJ2Nsb3NlJyl9Jyk7CiAgICAkKCdbbmFtZSQ9Y2FuY2VsXScpLmJ1dHRvbiggJ29wdGlvbicsICdsYWJlbCcsICd7JG1vZC0+TGFuZygnY2xvc2UnKX0nKTsKICAgICQoJ1tuYW1lJD1jYW5jZWxdJykuZmFkZUluKCk7CiAgICBpZiggdiA9PSAnaHRtbCcgKSB7CiAgICAgIC8vd2luZG93Lm9wZW4oJycsICdfYmxhbmsnLCAnd2lkdGg9NDAwLGhlaWdodD00MDAscmVzaXplYWJsZT15ZXMsc2Nyb2xsYmFycz15ZXMnLGZhbHNlKTsKICAgICAgdGhpcy50YXJnZXQgPSAnX2JsYW5rJzsKICAgIH0KICB9KTsKKi8KCiAgJCgnI2FqYXhfZmV1X3VzZXJzJykuYmluZCgna2V5ZG93bicsZnVuY3Rpb24oZSl7CiAgICBpZiAoIGUua2V5Q29kZSA9PT0gJC51aS5rZXlDb2RlLlRBQiAmJgogICAgICAkKCB0aGlzICkuZGF0YSggInVpLWF1dG9jb21wbGV0ZSIgKS5tZW51LmFjdGl2ZSApIHsKICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpOwogICAgfQogIH0pCiAgLmF1dG9jb21wbGV0ZSh7CiAgICBmb2N1czogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBmYWxzZTsKICAgIH0sCiAgICBzZWFyY2g6IGZ1bmN0aW9uKCkgewogICAgICAvLyBjdXN0b20gbWlubGVuZ3RoCiAgICAgIHZhciB0ZXJtID0gZXh0cmFjdExhc3QodGhpcy52YWx1ZSk7CiAgICAgIGlmKCB0ZXJtLmxlbmd0aCA8IDIgKSByZXR1cm4gZmFsc2U7CiAgICB9LAogICAgc2VsZWN0OiBmdW5jdGlvbihldmVudCx1aSkgewogICAgICB2YXIgdGVybXMgPSBzcGxpdCggdGhpcy52YWx1ZSApOwogICAgICAvLyByZW1vdmUgdGhlIGN1cnJlbnQgaW5wdXQKICAgICAgdGVybXMucG9wKCk7CiAgICAgIC8vIGFkZCB0aGUgc2VsZWN0ZWQgaXRlbQogICAgICB0ZXJtcy5wdXNoKCB1aS5pdGVtLnZhbHVlICk7CiAgICAgIC8vIGFkZCBwbGFjZWhvbGRlciB0byBnZXQgdGhlIGNvbW1hLWFuZC1zcGFjZSBhdCB0aGUgZW5kCiAgICAgIHRlcm1zLnB1c2goICIiICk7CiAgICAgIHRoaXMudmFsdWUgPSB0ZXJtcy5qb2luKCAiLCAiICk7CiAgICAgIHJldHVybiBmYWxzZTsgICAgICAgCiAgICB9LAogICAgc291cmNlOiBmdW5jdGlvbihyZXF1ZXN0LHJlc3BvbnNlKXsgCQogICAgICAkLmFqYXgoewogICAgICAgIHVybDogJ3skdXJsX2FqYXhfZmV1X3VzZXJzfScsCiAgICAgICAgZGF0YTogeyAneyRhY3Rpb25pZH1qc29uJzogMSwgJ3skYWN0aW9uaWR9dGVybSc6IGV4dHJhY3RMYXN0KHJlcXVlc3QudGVybSkgfSwKCXN1Y2Nlc3M6IGZ1bmN0aW9uKCBkYXRhLCB0ZXh0U3RhdHVzICkgewogICAgICAgICAgdmFyIHBvc3NpYmxlID0gW107CiAgICAgICAgICAkLmVhY2goIGRhdGEsIGZ1bmN0aW9uKGksIHZhbCkgewogICAgICAgICAgICBwb3NzaWJsZS5wdXNoKHZhbCk7CiAgICAgICAgICB9KTsKICAgICAgICAgIHJlc3BvbnNlKHBvc3NpYmxlKTsKICAgICAgICB9CiAgICAgIH0pOwogICAgfQogIH0pOwoKCiAgJCgnI2FqYXhfZmlsZXMnKS5iaW5kKCdrZXlkb3duJyxmdW5jdGlvbihlKXsKICAgIGlmICggZS5rZXlDb2RlID09PSAkLnVpLmtleUNvZGUuVEFCICYmCiAgICAgICQoIHRoaXMgKS5kYXRhKCAidWktYXV0b2NvbXBsZXRlIiApLm1lbnUuYWN0aXZlICkgewogICAgICBlLnByZXZlbnREZWZhdWx0KCk7CiAgICB9CiAgfSkKICAuYXV0b2NvbXBsZXRlKHsKICAgIGZvY3VzOiBmdW5jdGlvbigpIHsKICAgICAgcmV0dXJuIGZhbHNlOwogICAgfSwKICAgIHNlYXJjaDogZnVuY3Rpb24oKSB7CiAgICAgIC8vIGN1c3RvbSBtaW5sZW5ndGgKICAgICAgdmFyIHRlcm0gPSBleHRyYWN0TGFzdCh0aGlzLnZhbHVlKTsKICAgICAgaWYoIHRlcm0ubGVuZ3RoIDwgMiApIHJldHVybiBmYWxzZTsKICAgIH0sCiAgICBzZWxlY3Q6IGZ1bmN0aW9uKGV2ZW50LHVpKSB7CiAgICAgIHZhciB0ZXJtcyA9IHNwbGl0KCB0aGlzLnZhbHVlICk7CiAgICAgIC8vIHJlbW92ZSB0aGUgY3VycmVudCBpbnB1dAogICAgICB0ZXJtcy5wb3AoKTsKICAgICAgLy8gYWRkIHRoZSBzZWxlY3RlZCBpdGVtCiAgICAgIHRlcm1zLnB1c2goIHVpLml0ZW0udmFsdWUgKTsKICAgICAgLy8gYWRkIHBsYWNlaG9sZGVyIHRvIGdldCB0aGUgY29tbWEtYW5kLXNwYWNlIGF0IHRoZSBlbmQKICAgICAgdGVybXMucHVzaCggIiIgKTsKICAgICAgdGhpcy52YWx1ZSA9IHRlcm1zLmpvaW4oICIsICIgKTsKICAgICAgcmV0dXJuIGZhbHNlOyAgICAgICAKICAgIH0sCiAgICBzb3VyY2U6IGZ1bmN0aW9uKHJlcXVlc3QscmVzcG9uc2UpeyAJCiAgICAgICQuYWpheCh7CiAgICAgICAgdXJsOiAneyR1cmxfYWpheF9maWxlc30nLAogICAgICAgIGRhdGE6IHsgJ3skYWN0aW9uaWR9anNvbic6IDEsICd7JGFjdGlvbmlkfXRlcm0nOiBleHRyYWN0TGFzdChyZXF1ZXN0LnRlcm0pIH0sCglzdWNjZXNzOiBmdW5jdGlvbiggZGF0YSwgdGV4dFN0YXR1cyApIHsKICAgICAgICAgIGlmKCBkYXRhLmxlbmd0aCA+IDAgKSB7CiAgICAgICAgICAgIHZhciBwb3NzaWJsZSA9IFtdOwogICAgICAgICAgICAkLmVhY2goIGRhdGEsIGZ1bmN0aW9uKGksIHZhbCkgewogICAgICAgICAgICAgIHBvc3NpYmxlLnB1c2godmFsKTsKICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIHJlc3BvbnNlKHBvc3NpYmxlKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0pOwogICAgfQogIH0pOwp9KTsKCnskZXh0cmFqc3xkZWZhdWx0OicnfQo8L3NjcmlwdD4KCjxoMz57JG1vZC0+TGFuZygndGl0bGVfcmVwb3J0X2Rvd25sb2Fkc2J5ZmlsZTInKX08L2gzPgoKPGRpdiBpZD0icmVwb3J0X2Rvd25sb2Fkc2J5ZmlsZSI+CnskZm9ybXN0YXJ0fQo8ZmllbGRzZXQ+CiAgPGxlZ2VuZD57JG1vZC0+TGFuZygnZmlsdGVyJyl9OjwvbGVnZW5kPgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfcmVwb3J0X3R5cGUnKX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgIDxzZWxlY3QgbmFtZT0ieyRhY3Rpb25pZH1yZXBvcnRfdHlwZSIgaWQ9InJlcG9ydF90eXBlIj4KICAgICAge2h0bWxfb3B0aW9ucyBvcHRpb25zPSRyZXBvcnRfdHlwZXMgc2VsZWN0ZWQ9JHByb2ZpbGUucmVwb3J0X3R5cGV9CiAgICAgIDwvc2VsZWN0PgogICAgPC9wPgogIDwvZGl2PgoKICA8dGFibGUgc3R5bGU9Im1hcmdpbi10b3A6IDFlbTsgYm9yZGVyLXRvcDogMXB4IGRhc2hlZCBibGFjazsiPgogICAgPHRyPgogICAgICA8dGQgdmFsaWduPSJ0b3AiPgogICAgICAgIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICAgICAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdjYXRlZ29yaWVzJyl9OjwvcD4KICAgICAgICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgICAgICAgICA8c2VsZWN0IG5hbWU9InskYWN0aW9uaWR9Y2F0ZWdvcmllc1tdIiBtdWx0aXBsZT0ibXVsdGlwbGUiIHNpemU9IjUiPgogICAgICAgICAgICAgIHtodG1sX29wdGlvbnMgb3B0aW9ucz0kdXBsb2FkX2NhdGVnb3JpZXMgc2VsZWN0ZWQ9JHByb2ZpbGUuY2F0ZWdvcmllc30KICAgICAgICAgICAgPC9zZWxlY3Q+CiAgICAgICAgIDwvcD4KICAgICAgICA8L2Rpdj4KICAgICAgPC90ZD4KCiAgICAgIDx0ZCB2YWxpZ249Im1pZGRsZSIgc3R5bGU9InBhZGRpbmc6IDFlbTsiPgogICAgICAgIHskbW9kLT5MYW5nKCdvcicpfQogICAgICA8L3RkPgoKICAgICAgPHRkIHZhbGlnbj0idG9wIj4KICAgICAgICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgICAgICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X2ZpbGVzJyl9OjwvcD4KICAgICAgICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgICAgICAgICA8dGV4dGFyZWEgY2xhc3M9InRhX3Jlc2l6YWJsZSIgaWQ9ImFqYXhfZmlsZXMiIG5hbWU9InskYWN0aW9uaWR9ZmlsZXMiPnskcHJvZmlsZS5maWxlc308L3RleHRhcmVhPgogICAgICAgICAgICA8YnIvPnskbW9kLT5MYW5nKCdpbmZvX2ZpZWxkX2ZpbGVzJyl9CiAgICAgICAgICA8L3A+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvdGQ+CgogICAgPC90cj4KICA8L3RhYmxlPgoKICA8dGFibGUgc3R5bGU9Im1hcmdpbi10b3A6IDFlbTsgYm9yZGVyLXRvcDogMXB4IGRhc2hlZCBibGFjazsiPgogIDx0cj4KICAgIDx0ZCB2YWxpZ249InRvcCI+CiAgICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfZmV1X2dyb3VwcycpfTo8L3A+CiAgICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgICAgIDxzZWxlY3QgbmFtZT0ieyRhY3Rpb25pZH1mZXVfZ3JvdXBzW10iIG11bHRpcGxlPSJtdWx0aXBsZSIgc2l6ZT0iNSI+CiAgICAgICAge2h0bWxfb3B0aW9ucyBvcHRpb25zPSRmZXVfZ3JvdXBzIHNlbGVjdGVkPSRwcm9maWxlLmZldV9ncm91cHN9CiAgICAgICAgPC9zZWxlY3Q+CiAgICAgIDwvcD4KICAgIDwvZGl2PgogICAgPC90ZD4KCiAgICA8dGQgdmFsaWduPSJtaWRkbGUiIHN0eWxlPSJwYWRkaW5nOiAxZW07Ij4KICAgICAgeyRtb2QtPkxhbmcoJ29yJyl9CiAgICA8L3RkPgoKICAgIDx0ZCB2YWxpZ249InRvcCI+CiAgICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfZmV1X3VzZXJzJyl9OjwvcD4KICAgICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgICAgPHRleHRhcmVhIGNsYXNzPSJ0YV9yZXNpemFibGUiIGlkPSJhamF4X2ZldV91c2VycyIgbmFtZT0ieyRhY3Rpb25pZH1mZXVfdXNlcnMiPnskcHJvZmlsZS5mZXVfdXNlcnN9PC90ZXh0YXJlYT4KICAgICAgICA8YnIvPnskbW9kLT5MYW5nKCdpbmZvX2ZldV91c2VycycpfQogICAgICA8L3A+CiAgICA8L2Rpdj4KICAgIDwvdGQ+CiAgPC90cj4KIDwvdGFibGU+CgogPHRhYmxlIHdpZHRoPSIxMDAlIiBzdHlsZT0ibWFyZ2luLXRvcDogMWVtOyBib3JkZXItdG9wOiAxcHggZGFzaGVkIGJsYWNrOyI+CiAgPHRyPgogICAgPHRkIHdpZHRoPSI1MCUiIHN0eWxlPSJwYWRkaW5nOiAxZW07Ij4KICAgIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9zdGFydF9kYXRlJyl9OjwvcD4KICAgICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgICAge2h0bWxfc2VsZWN0X2RhdGUgdGltZT0kcHJvZmlsZS5zdGFydF9kYXRlIHN0YXJ0X3llYXI9Ii0xMCIgZW5kX3llYXI9IisyIiBwcmVmaXg9InskYWN0aW9uaWR9c3RhcnRfZGF0ZSJ9CiAgICAgIDwvcD4KICAgIDwvZGl2PgogICAgPC90ZD4KCiAgICA8dGQgd2lkdGg9IjUwJSIgc3R5bGU9InBhZGRpbmc6IDFlbTsiPgogICAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X2VuZF9kYXRlJyl9OjwvcD4KICAgICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgICAge2h0bWxfc2VsZWN0X2RhdGUgdGltZT0kcHJvZmlsZS5lbmRfZGF0ZSBzdGFydF95ZWFyPSItMTAiIGVuZF95ZWFyPSIrMiIgcHJlZml4PSJ7JGFjdGlvbmlkfWVuZF9kYXRlIn0KICAgICAgPC9wPgogICAgPC9kaXY+CiAgICA8L3RkPgogICA8L3RyPgogPC90YWJsZT4KPC9maWVsZHNldD4KCjxmaWVsZHNldD4KICA8bGVnZW5kPnskbW9kLT5MYW5nKCd2aWV3Jyl9OjwvbGVnZW5kPgogIDx0YWJsZT4KICAgIDx0cj4KICAgICAgPHRkIHdpZHRoPSIzMyUiIHZhbGlnbj0idG9wIiBzdHlsZT0icGFkZGluZzogMWVtOyI+CiAgICAgICAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgICAgICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9maWVsZGxpc3QnKX06PC9wPgogICAgICAgICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgICAgICAgIDxzZWxlY3QgbmFtZT0ieyRhY3Rpb25pZH12aWV3X2ZpZWxkc1tdIiBtdWx0aXBsZT0ibXVsdGlwbGUiIHNpemU9IjUiPgogICAgICAgICAgICB7aHRtbF9vcHRpb25zIG9wdGlvbnM9JGZpZWxkbGlzdCBzZWxlY3RlZD0kcHJvZmlsZS52aWV3X2ZpZWxkc30KICAgICAgICAgICAgPC9zZWxlY3Q+CiAgICAgICAgICA8L3A+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvdGQ+CiAgICAgIDx0ZCB3aWR0aD0iMzMlIiB2YWxpZ249InRvcCIgc3R5bGU9InBhZGRpbmc6IDFlbTsiPgogICAgICAgIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICAgICAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfc29ydGluZycpfTo8L3A+CiAgICAgICAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAgICAgICAgPHNlbGVjdCBuYW1lPSJ7JGFjdGlvbmlkfXZpZXdfc29ydGluZyIgc2l6ZT0iNSI+CiAgICAgICAgICAgIHtodG1sX29wdGlvbnMgb3B0aW9ucz0kc29ydGxpc3Qgc2VsZWN0ZWQ9JHByb2ZpbGUudmlld19zb3J0aW5nfQogICAgICAgICAgICA8L3NlbGVjdD4KICAgICAgICAgIDwvcD4KICAgICAgICA8L2Rpdj4KICAgICAgPC90ZD4KICAgICAgPHRkIHdpZHRoPSIzMyUiIHZhbGlnbj0idG9wIiBzdHlsZT0icGFkZGluZzogMWVtOyI+CiAgICAgICAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgICAgICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9zb3J0b3JkZXInKX06PC9wPgogICAgICAgICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgICAgICAgIDxzZWxlY3QgbmFtZT0ieyRhY3Rpb25pZH12aWV3X3NvcnRvcmRlciIgc2l6ZT0iMyI+CiAgICAgICAgICAgIHtodG1sX29wdGlvbnMgb3B0aW9ucz0kc29ydG9yZGVycyBzZWxlY3RlZD0kcHJvZmlsZS52aWV3X3NvcnRvcmRlcn0KICAgICAgICAgICAgPC9zZWxlY3Q+CiAgICAgICAgICA8L3A+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvdGQ+CiAgICA8L3RyPgogIDwvdGFibGU+CjwvZmllbGRzZXQ+Cgo8ZmllbGRzZXQ+CiAgPGxlZ2VuZD57JG1vZC0+TGFuZygnb3V0cHV0Jyl9OjwvbGVnZW5kPgogIDx0YWJsZSB3aWR0aD0iMTAwJSI+CiAgICA8dHI+CiAgICAgIDx0ZCB3aWR0aD0iMjAlIj4KICAgICAgICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgICAgICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X291dHB1dCcpfTo8L3A+CiAgICAgICAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAgICAgICAgPHNlbGVjdCBuYW1lPSJ7JGFjdGlvbmlkfW91dHB1dF90eXBlIiBpZD0ib3V0cHV0X3R5cGUiPgogICAgICAgICAgICAgIHtodG1sX29wdGlvbnMgb3B0aW9ucz0kb3V0cHV0X3R5cGVzIHNlbGVjdGVkPSRwcm9maWxlLm91dHB1dF90eXBlfQogICAgICAgICAgICA8L3NlbGVjdD4KICAgICAgICAgIDwvcD4KICAgICAgICA8L2Rpdj4KICAgICAgPC90ZD4KICAgICAgPHRkPgogICAgICAgIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyIgaWQ9Im91dHB1dF90ZW1wbGF0ZV93cmFwIiBzdHlsZT0iZGlzcGxheTogbm9uZTsiPgogICAgICAgICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X291dHB1dF90ZW1wbGF0ZScpfTo8L3A+CiAgICAgICAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAgICAgICAgPHNlbGVjdCBuYW1lPSJ7JGFjdGlvbmlkfW91dHB1dF90ZW1wbGF0ZSIgaWQ9Im91dHB1dF90ZW1wbGF0ZSI+CiAgICAgICAgICAgICAge2h0bWxfb3B0aW9ucyBvcHRpb25zPSRvdXRwdXRfdGVtcGxhdGVzIHNlbGVjdGVkPSRwcm9maWxlLm91dHB1dF90ZW1wbGF0ZX0KICAgICAgICAgICAgPC9zZWxlY3Q+CiAgICAgICAgICA8L3A+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvdGQ+CiAgICA8L3RyPgogIDwvdGFibGU+CjwvZmllbGRzZXQ+Cgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+PC9wPgogIDxwIGNsYXNzPSJwYWdlc3VibWl0Ij4KICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9InskYWN0aW9uaWR9c3VibWl0IiB2YWx1ZT0ieyRtb2QtPkxhbmcoJ3N1Ym1pdCcpfSIvPgogICAgPGlucHV0IHR5cGU9InN1Ym1pdCIgbmFtZT0ieyRhY3Rpb25pZH1jYW5jZWwiIHZhbHVlPSJ7JG1vZC0+TGFuZygnY2FuY2VsJyl9Ii8+CiAgPC9wPgo8L2Rpdj4KeyRmb3JtZW5kfQo8L2Rpdj4K]]></data>
	</file>
	<file>
	  <filename>/templates/admin_report_downloadsbyuser.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgpmdW5jdGlvbiBzcGxpdCggdmFsICkgewogIHJldHVybiB2YWwuc3BsaXQoIC8sXHMqLyApOwp9CmZ1bmN0aW9uIGV4dHJhY3RMYXN0KCB0ZXJtICkgewogIHJldHVybiBzcGxpdCggdGVybSApLnBvcCgpOwp9CiQoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uKCl7CiAgJCgnI3JlcG9ydF90eXBlJykuYmluZCgnY2hhbmdlJyxmdW5jdGlvbihlKXsKICAgICQodGhpcykuY2xvc2VzdCgnZm9ybScpLnN1Ym1pdCgpOwogIH0pOwogIHZhciB2ID0gJCgnI291dHB1dF90eXBlJykudmFsKCk7CiAgaWYoIHYgIT0gJ2NzdicgKSAkKCcjb3V0cHV0X3RlbXBsYXRlX3dyYXAnKS5zaG93KCk7CiAgCiAgJCgnI291dHB1dF90eXBlJykuYmluZCgnY2hhbmdlJyxmdW5jdGlvbihlKXsKICAgIHZhciB2ID0gJCh0aGlzKS52YWwoKTsKICAgIGlmKCB2ID09ICdjc3YnICkgewogICAgICAkKCcjb3V0cHV0X3RlbXBsYXRlX3dyYXAnKS5oaWRlKCk7CiAgICB9IGVsc2UgewogICAgICAkKCcjb3V0cHV0X3RlbXBsYXRlX3dyYXAnKS5zaG93KCk7CiAgICB9CiAgfSk7CgovKgogICQoJyNyZXBvcnRfZG93bmxvYWRzYnl1c2VyIGZvcm0nKS5iaW5kKCdzdWJtaXQnLGZ1bmN0aW9uKGUpewogICAgdmFyIHYgPSAkKCcjb3V0cHV0X3R5cGUnKS52YWwoKTsKICAgICQoJ1tuYW1lJD1zdWJtaXRdJykuZmFkZU91dCgpOwogICAgJCgnW25hbWUkPWNhbmNlbF0nKS5mYWRlT3V0KCk7CiAgICAkKCdbbmFtZSQ9Y2FuY2VsXScpLmF0dHIoJ3ZhbHVlJywneyRtb2QtPmxhbmcoJ2Nsb3NlJyl9Jyk7CiAgICAkKCdbbmFtZSQ9Y2FuY2VsXScpLmJ1dHRvbiggJ29wdGlvbicsICdsYWJlbCcsICd7JG1vZC0+TGFuZygnY2xvc2UnKX0nKTsKICAgICQoJ1tuYW1lJD1jYW5jZWxdJykuZmFkZUluKCk7CiAgICBpZiggdiA9PSAnaHRtbCcgKSB7CiAgICAgIAogICAgICB3aW5kb3cub3BlbignJywgJ19ibGFuaycsICd3aWR0aD00MDAsaGVpZ2h0PTQwMCxyZXNpemVhYmxlPXllcyxzY3JvbGxiYXJzPXllcycsZmFsc2UpOwogICAgICAvL3RoaXMudGFyZ2V0ID0gJ19ibGFuayc7CiAgICB9CiAgfSk7CiovCgogICQoJyNhamF4X2ZldV91c2VycycpLmJpbmQoJ2tleWRvd24nLGZ1bmN0aW9uKGUpewogICAgaWYgKCBlLmtleUNvZGUgPT09ICQudWkua2V5Q29kZS5UQUIgJiYKICAgICAgJCggdGhpcyApLmRhdGEoICJ1aS1hdXRvY29tcGxldGUiICkubWVudS5hY3RpdmUgKSB7CiAgICAgIGUucHJldmVudERlZmF1bHQoKTsKICAgIH0KICB9KQogIC5hdXRvY29tcGxldGUoewogICAgZm9jdXM6IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZmFsc2U7CiAgICB9LAogICAgc2VhcmNoOiBmdW5jdGlvbigpIHsKICAgICAgLy8gY3VzdG9tIG1pbmxlbmd0aAogICAgICB2YXIgdGVybSA9IGV4dHJhY3RMYXN0KHRoaXMudmFsdWUpOwogICAgICBpZiggdGVybS5sZW5ndGggPCAyICkgcmV0dXJuIGZhbHNlOwogICAgfSwKICAgIHNlbGVjdDogZnVuY3Rpb24oZXZlbnQsdWkpIHsKICAgICAgdmFyIHRlcm1zID0gc3BsaXQoIHRoaXMudmFsdWUgKTsKICAgICAgLy8gcmVtb3ZlIHRoZSBjdXJyZW50IGlucHV0CiAgICAgIHRlcm1zLnBvcCgpOwogICAgICAvLyBhZGQgdGhlIHNlbGVjdGVkIGl0ZW0KICAgICAgdGVybXMucHVzaCggdWkuaXRlbS52YWx1ZSApOwogICAgICAvLyBhZGQgcGxhY2Vob2xkZXIgdG8gZ2V0IHRoZSBjb21tYS1hbmQtc3BhY2UgYXQgdGhlIGVuZAogICAgICB0ZXJtcy5wdXNoKCAiIiApOwogICAgICB0aGlzLnZhbHVlID0gdGVybXMuam9pbiggIiwgIiApOwogICAgICByZXR1cm4gZmFsc2U7ICAgICAgIAogICAgfSwKICAgIHNvdXJjZTogZnVuY3Rpb24ocmVxdWVzdCxyZXNwb25zZSl7IAkKICAgICAgJC5hamF4KHsKICAgICAgICB1cmw6ICd7JHVybF9hamF4X2ZldV91c2Vyc30nLAogICAgICAgIGRhdGE6IHsgJ3skYWN0aW9uaWR9anNvbic6IDEsICd7JGFjdGlvbmlkfXRlcm0nOiBleHRyYWN0TGFzdChyZXF1ZXN0LnRlcm0pIH0sCglzdWNjZXNzOiBmdW5jdGlvbiggZGF0YSwgdGV4dFN0YXR1cyApIHsKICAgICAgICAgIHZhciBwb3NzaWJsZSA9IFtdOwogICAgICAgICAgJC5lYWNoKCBkYXRhLCBmdW5jdGlvbihpLCB2YWwpIHsKICAgICAgICAgICAgcG9zc2libGUucHVzaCh2YWwpOwogICAgICAgICAgfSk7CiAgICAgICAgICByZXNwb25zZShwb3NzaWJsZSk7CiAgICAgICAgfQogICAgICB9KTsKICAgIH0KICB9KTsKfSk7Cgp7JGV4dHJhanN8ZGVmYXVsdDonJ30KPC9zY3JpcHQ+Cgo8aDM+eyRtb2QtPkxhbmcoJ3RpdGxlX3JlcG9ydF9kb3dubG9hZHNieXVzZXIyJyl9PC9oMz4KCjxkaXYgaWQ9InJlcG9ydF9kb3dubG9hZHNieXVzZXIiPgp7JGZvcm1zdGFydH0KPGZpZWxkc2V0PgogIDxsZWdlbmQ+eyRtb2QtPkxhbmcoJ2ZpbHRlcicpfTo8L2xlZ2VuZD4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X3JlcG9ydF90eXBlJyl9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgICA8c2VsZWN0IG5hbWU9InskYWN0aW9uaWR9cmVwb3J0X3R5cGUiIGlkPSJyZXBvcnRfdHlwZSI+CiAgICAgIHtodG1sX29wdGlvbnMgb3B0aW9ucz0kcmVwb3J0X3R5cGVzIHNlbGVjdGVkPSRwcm9maWxlLnJlcG9ydF90eXBlfQogICAgICA8L3NlbGVjdD4KICAgIDwvcD4KICA8L2Rpdj4KCiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ2NhdGVnb3JpZXMnKX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgIDxzZWxlY3QgbmFtZT0ieyRhY3Rpb25pZH1jYXRlZ29yaWVzW10iIG11bHRpcGxlPSJtdWx0aXBsZSIgc2l6ZT0iNSI+CiAgICAgIHtodG1sX29wdGlvbnMgb3B0aW9ucz0kdXBsb2FkX2NhdGVnb3JpZXMgc2VsZWN0ZWQ9JHByb2ZpbGUuY2F0ZWdvcmllc30KICAgICAgPC9zZWxlY3Q+CiAgICA8L3A+CiAgPC9kaXY+CgogIDx0YWJsZSBzdHlsZT0ibWFyZ2luLXRvcDogMWVtOyBib3JkZXItdG9wOiAxcHggZGFzaGVkIGJsYWNrOyI+CiAgPHRyPgogICAgPHRkIHZhbGlnbj0idG9wIj4KICAgICAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgICAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfZmV1X2dyb3VwcycpfTo8L3A+CiAgICAgICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgICAgICA8c2VsZWN0IG5hbWU9InskYWN0aW9uaWR9ZmV1X2dyb3Vwc1tdIiBtdWx0aXBsZT0ibXVsdGlwbGUiIHNpemU9IjUiPgogICAgICAgICAge2h0bWxfb3B0aW9ucyBvcHRpb25zPSRmZXVfZ3JvdXBzIHNlbGVjdGVkPSRwcm9maWxlLmZldV9ncm91cHN9CiAgICAgICAgICA8L3NlbGVjdD4KICAgICAgICA8L3A+CiAgICAgIDwvZGl2PgogICAgPC90ZD4KCiAgICA8dGQgdmFsaWduPSJtaWRkbGUiIHN0eWxlPSJwYWRkaW5nOiAxZW07Ij4KICAgICAgeyRtb2QtPkxhbmcoJ29yJyl9CiAgICA8L3RkPgoKICAgIDx0ZCB2YWxpZ249InRvcCI+CiAgICAgIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyIgc3R5bGU9ImNsZWFyOiBub25lOyBmbG9hdDogbGVmdDsiPgogICAgICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9mZXVfdXNlcnMnKX06PC9wPgogICAgICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgICAgICAgPHRleHRhcmVhIGNsYXNzPSJ0YV9yZXNpemFibGUiIGlkPSJhamF4X2ZldV91c2VycyIgbmFtZT0ieyRhY3Rpb25pZH1mZXVfdXNlcnMiPnskcHJvZmlsZS5mZXVfdXNlcnN9PC90ZXh0YXJlYT4KICAgICAgICAgIDxici8+eyRtb2QtPkxhbmcoJ2luZm9fZmV1X3VzZXJzJyl9CiAgICAgICAgPC9wPgogICAgICA8L2Rpdj4KICAgIDwvdGQ+CiAgIDwvdHI+CiA8L3RhYmxlPgoKIDx0YWJsZSBzdHlsZT0ibWFyZ2luLXRvcDogMWVtOyBib3JkZXItdG9wOiAxcHggZGFzaGVkIGJsYWNrOyB3aWR0aDogMTAwJTsiPgogIDx0cj4KICAgIDx0ZCB3aWR0aD0iNTAlIiBzdHlsZT0icGFkZGluZzogMWVtOyI+CiAgICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfc3RhcnRfZGF0ZScpfTo8L3A+CiAgICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgICAgIHtodG1sX3NlbGVjdF9kYXRlIHRpbWU9JHByb2ZpbGUuc3RhcnRfZGF0ZSBzdGFydF95ZWFyPSItMTAiIGVuZF95ZWFyPSIrMiIgcHJlZml4PSJ7JGFjdGlvbmlkfXN0YXJ0X2RhdGUifQogICAgICA8L3A+CiAgICA8L2Rpdj4KICAgIDwvdGQ+CgogICAgPHRkIHdpZHRoPSI1MCUiIHN0eWxlPSJwYWRkaW5nOiAxZW07Ij4KICAgIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9lbmRfZGF0ZScpfTo8L3A+CiAgICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgICAgIHtodG1sX3NlbGVjdF9kYXRlIHRpbWU9JHByb2ZpbGUuZW5kX2RhdGUgc3RhcnRfeWVhcj0iLTEwIiBlbmRfeWVhcj0iKzIiIHByZWZpeD0ieyRhY3Rpb25pZH1lbmRfZGF0ZSJ9CiAgICAgIDwvcD4KICAgIDwvZGl2PgogICAgPC90ZD4KICAgPC90cj4KIDwvdGFibGU+CjwvZmllbGRzZXQ+Cgo8ZmllbGRzZXQ+CiAgPGxlZ2VuZD57JG1vZC0+TGFuZygndmlldycpfTo8L2xlZ2VuZD4KICA8dGFibGU+CiAgICA8dHI+CiAgICAgIDx0ZCB3aWR0aD0iMzMlIiB2YWxpZ249InRvcCIgc3R5bGU9InBhZGRpbmc6IDFlbTsiPgogICAgICAgIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICAgICAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfZmllbGRsaXN0Jyl9OjwvcD4KICAgICAgICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgICAgICAgICA8c2VsZWN0IG5hbWU9InskYWN0aW9uaWR9dmlld19maWVsZHNbXSIgbXVsdGlwbGU9Im11bHRpcGxlIiBzaXplPSI1Ij4KICAgICAgICAgICAge2h0bWxfb3B0aW9ucyBvcHRpb25zPSRmaWVsZGxpc3Qgc2VsZWN0ZWQ9JHByb2ZpbGUudmlld19maWVsZHN9CiAgICAgICAgICAgIDwvc2VsZWN0PgogICAgICAgICAgPC9wPgogICAgICAgIDwvZGl2PgogICAgICA8L3RkPgogICAgICA8dGQgd2lkdGg9IjMzJSIgdmFsaWduPSJ0b3AiIHN0eWxlPSJwYWRkaW5nOiAxZW07Ij4KICAgICAgICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgICAgICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X3NvcnRpbmcnKX06PC9wPgogICAgICAgICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgICAgICAgIDxzZWxlY3QgbmFtZT0ieyRhY3Rpb25pZH12aWV3X3NvcnRpbmciIHNpemU9IjUiPgogICAgICAgICAgICB7aHRtbF9vcHRpb25zIG9wdGlvbnM9JHNvcnRsaXN0IHNlbGVjdGVkPSRwcm9maWxlLnZpZXdfc29ydGluZ30KICAgICAgICAgICAgPC9zZWxlY3Q+CiAgICAgICAgICA8L3A+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvdGQ+CiAgICAgIDx0ZCB3aWR0aD0iMzMlIiB2YWxpZ249InRvcCIgc3R5bGU9InBhZGRpbmc6IDFlbTsiPgogICAgICAgIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICAgICAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfc29ydG9yZGVyJyl9OjwvcD4KICAgICAgICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgICAgICAgICA8c2VsZWN0IG5hbWU9InskYWN0aW9uaWR9dmlld19zb3J0b3JkZXIiIHNpemU9IjMiPgogICAgICAgICAgICB7aHRtbF9vcHRpb25zIG9wdGlvbnM9JHNvcnRvcmRlcnMgc2VsZWN0ZWQ9JHByb2ZpbGUudmlld19zb3J0b3JkZXJ9CiAgICAgICAgICAgIDwvc2VsZWN0PgogICAgICAgICAgPC9wPgogICAgICAgIDwvZGl2PgogICAgICA8L3RkPgogICAgPC90cj4KICA8L3RhYmxlPgo8L2ZpZWxkc2V0PgoKPGZpZWxkc2V0PgogIDxsZWdlbmQ+eyRtb2QtPkxhbmcoJ291dHB1dCcpfTo8L2xlZ2VuZD4KICA8dGFibGU+CiAgICA8dHI+CiAgICAgIDx0ZD4KICAgICAgICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgICAgICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X291dHB1dCcpfTo8L3A+CiAgICAgICAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAgICAgICAgeyR0bXA9Wydjc3YnPT57JG1vZC0+TGFuZygnZXhwb3J0X2NzdicpfSwnaHRtbCc9PnskbW9kLT5MYW5nKCdleHBvcnRfaHRtbCcpfSwnaHRtbGVtYWlsJz0+eyRtb2QtPkxhbmcoJ2V4cG9ydF9odG1sZW1haWwnKX1dfQogICAgICAgICAgICA8c2VsZWN0IG5hbWU9InskYWN0aW9uaWR9b3V0cHV0X3R5cGUiIGlkPSJvdXRwdXRfdHlwZSI+CiAgICAgICAgICAgICAge2h0bWxfb3B0aW9ucyBvcHRpb25zPSR0bXAgc2VsZWN0ZWQ9JHByb2ZpbGUub3V0cHV0X3R5cGV9CiAgICAgICAgICAgIDwvc2VsZWN0PgogICAgICAgICAgPC9wPgogICAgICAgIDwvZGl2PgogICAgICA8L3RkPgogICAgICA8dGQ+CiAgICAgICAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93IiBpZD0ib3V0cHV0X3RlbXBsYXRlX3dyYXAiIHN0eWxlPSJkaXNwbGF5OiBub25lOyI+CiAgICAgICAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfb3V0cHV0X3RlbXBsYXRlJyl9OjwvcD4KICAgICAgICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgICAgICAgICA8c2VsZWN0IG5hbWU9InskYWN0aW9uaWR9b3V0cHV0X3RlbXBsYXRlIiBpZD0ib3V0cHV0X3RlbXBsYXRlIj4KICAgICAgICAgICAgICB7aHRtbF9vcHRpb25zIG9wdGlvbnM9JG91dHB1dF90ZW1wbGF0ZXMgc2VsZWN0ZWQ9JHByb2ZpbGUub3V0cHV0X3RlbXBsYXRlfQogICAgICAgICAgICA8L3NlbGVjdD4KICAgICAgICAgIDwvcD4KICAgICAgICA8L2Rpdj4KICAgICAgPC90ZD4KICAgIDwvdHI+CiAgPC90YWJsZT4KPC9maWVsZHNldD4KCjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij48L3A+CiAgPHAgY2xhc3M9InBhZ2VzdWJtaXQiPgogICAgPGlucHV0IHR5cGU9InN1Ym1pdCIgbmFtZT0ieyRhY3Rpb25pZH1zdWJtaXQiIHZhbHVlPSJ7JG1vZC0+TGFuZygnc3VibWl0Jyl9Ii8+CiAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiBuYW1lPSJ7JGFjdGlvbmlkfWNhbmNlbCIgdmFsdWU9InskbW9kLT5MYW5nKCdjYW5jZWwnKX0iLz4KICA8L3A+CjwvZGl2Pgp7JGZvcm1lbmR9CjwvZGl2Pgo=]]></data>
	</file>
	<file>
	  <filename>/templates/admin_upload.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgokKGRvY3VtZW50KS5yZWFkeShmdW5jdGlvbigpewogICQoJyNzZWxfY2F0ZWdvcnknKS5jaGFuZ2UoZnVuY3Rpb24oKXsKICAgICQodGhpcykuY2xvc2VzdCgnZm9ybScpLnN1Ym1pdCgpOwogIH0pOwp9KTsKPC9zY3JpcHQ+Cgo8aDM+eyRtb2QtPkxhbmcoJ3VwbG9hZF9maWxlJyl9PC9oMz4KCnskZm9ybXN0YXJ0fQoKe2NnZV9zdGFydF90YWJzfQp7Y2dlX3RhYmhlYWRlciBuYW1lPSdnZW5lcmFsJyBsYWJlbD0kbW9kLT5MYW5nKCdwcm9tcHRfZ2VuZXJhbCcpfQp7Y2dlX3RhYmhlYWRlciBuYW1lPSdkZXNjcmlwdGlvbicgbGFiZWw9JG1vZC0+TGFuZygnZGVzY3JpcHRpb24nKX0Ke2lmIGlzc2V0KCRmaWVsZHMpfQp7Y2dlX3RhYmhlYWRlciBuYW1lPSdmaWVsZHMnIGxhYmVsPSRtb2QtPkxhbmcoJ3Byb21wdF9maWVsZHMnKX0Key9pZn0Ke2lmIGlzc2V0KCRhbGxvd191cGxvYWRfc2VuZGZpbGUpICYmICRhbGxvd191cGxvYWRfc2VuZGZpbGUgPT0gMX0Ke2NnZV90YWJoZWFkZXIgbmFtZT0nc2VuZGZpbGUnIGxhYmVsPSRtb2QtPkxhbmcoJ3Byb21wdF9zZW5kZmlsZScpfQp7L2lmfQp7aWYgaXNzZXQoJGNhdGVnb3J5X2luZm8pICYmICRjYXRlZ29yeV9pbmZvLnVwbG9hZF9jYXRlZ29yeV91c2VycGVybXMgJiYgaXNzZXQoJGZldV9ncm91cGxpc3QpfQp7Y2dlX3RhYmhlYWRlciBuYW1lPSdwZXJtcycgbGFiZWw9JG1vZC0+TGFuZygncHJvbXB0X3Blcm1pc3Npb25zJyl9CnsvaWZ9Cgp7Y2dlX3RhYmNvbnRlbnRfc3RhcnQgbmFtZT0nZ2VuZXJhbCd9CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygnY2F0ZWdvcnknKX06PC9wPgogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgPHNlbGVjdCBuYW1lPSJ7JGFjdGlvbmlkfWNhdGVnb3J5X2lkIiBpZD0ic2VsX2NhdGVnb3J5Ij4KICAgICAge2h0bWxfb3B0aW9ucyBvcHRpb25zPSRjYXRlZ29yaWVzIHNlbGVjdGVkPSRjdXJjYXRlZ29yeX0KICAgIDwvc2VsZWN0PgogIDwvcD4KPC9kaXY+Cgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3VwbG9hZCcpfTwvcD4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgIDxpbnB1dCB0eXBlPSJmaWxlIiBuYW1lPSJ7JGFjdGlvbmlkfWlucHV0X2Jyb3dzZSIgdmFsdWU9IiIgc2l6ZT0iODAiLz4KICA8L3A+CjwvZGl2PgoKPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCd0aHVtYm5haWwnKX08L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICA8aW5wdXQgdHlwZT0iZmlsZSIgbmFtZT0ieyRhY3Rpb25pZH1pbnB1dF90aHVtYm5haWwiIHZhbHVlPSIiIHNpemU9IjgwIi8+CiAgICA8YnIvPgogICAgeyRtb2QtPkxhbmcoJ2luZm9fdGh1bWJuYWlsJyl9CiAgPC9wPgo8L2Rpdj4KCjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygnZGVzdG5hbWUnKX08L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1pbnB1dF9kZXN0bmFtZSIgdmFsdWU9InskdXBsb2FkLmRlc3RuYW1lfSIgc2l6ZT0iNTAiIG1heGxlbmd0aD0iMjU1Ii8+CiAgICA8YnIvPgogICAgeyRtb2QtPkxhbmcoJ2luZm9fZGVzdG5hbWUnKX0KICA8L3A+CjwvZGl2PgoKPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdzdW1tYXJ5Jyl9PC9wPgogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9aW5wdXRfc3VtbWFyeSIgdmFsdWU9InskdXBsb2FkLnN1bW1hcnl9IiBzaXplPSI4MCIgbWF4bGVuZ3RoPSIyNTUiLz4KICAgIDxici8+CiAgICB7JG1vZC0+TGFuZygnaW5mb19zdW1tYXJ5Jyl9CiAgPC9wPgo8L2Rpdj4KCjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygnYXV0aG9yJyl9OjwvcD4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGFjdGlvbmlkfWlucHV0X2F1dGhvciIgdmFsdWU9InskdXBsb2FkLmF1dGhvcn0iIHNpemU9IjUwIiBtYXhsZW5ndGg9IjI1NSIvPgogIDwvcD4KPC9kaXY+Cgp7Y2dlX3RhYmNvbnRlbnRfc3RhcnQgbmFtZT0nZGVzY3JpcHRpb24nfQo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ2Rlc2NyaXB0aW9uJyl9PC9wPgogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgPHRleHRhcmVhIG5hbWU9InskYWN0aW9uaWR9aW5wdXRfZGVzY3JpcHRpb24iPnskdXBsb2FkLmRlc2NyaXB0aW9ufTwvdGV4dGFyZWE+CiAgPC9wPgo8L2Rpdj4KCntpZiBpc3NldCgkZmllbGRzKX0Ke2NnZV90YWJjb250ZW50X3N0YXJ0IG5hbWU9J2ZpZWxkcyd9Cntmb3JlYWNoIGZyb209JGZpZWxkcyBpdGVtPSdvbmUnfQo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRvbmUubmFtZX06PC9wPgogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAge2lmIGlzc2V0KCRvbmUuaW5wdXQpfQogICAgICB7JG9uZS5pbnB1dH0KICAgIHtlbHNlaWYgJG9uZS50eXBlID09ICd0ZXh0aW5wdXQnfQogICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1maWVsZF97JG9uZS5pZH0iIHZhbHVlPSJ7JG9uZS52YWx1ZXxkZWZhdWx0OicnfSIgc2l6ZT0ieyRvbmUuYXR0cmliLmxlbmd0aH0iIG1heGxlbmd0aD0ieyRvbmUuYXR0cmliLm1heGxlbmd0aH0iLz4KICAgIHtlbHNlaWYgJG9uZS50eXBlID09ICdjaGVja2JveCd9CiAgICAgIDxpbnB1dCB0eXBlPSJjaGVja2JveCIgbmFtZT0ieyRhY3Rpb25pZH1maWVsZF97JG9uZS5pZH0iIHZhbHVlPSIxIntpZiAkb25lLnZhbHVlID09IDF9IGNoZWNrZWQ9ImNoZWNrZWQiey9pZn0vPgogICAge2Vsc2VpZiAkb25lLnR5cGUgPT0gJ2Ryb3Bkb3duJ30KICAgICAgPHNlbGVjdCBuYW1lPSJ7JGFjdGlvbmlkfWZpZWxkX3skb25lLmlkfSI+CiAgICAgICAge2h0bWxfb3B0aW9ucyBvcHRpb25zPSRvbmUuYXR0cmliLm9wdGlvbnN9CiAgICAgIDwvc2VsZWN0PgogICAge2Vsc2VpZiAkb25lLnR5cGUgPT0gJ211bHRpc2VsZWN0J30KICAgICAgPHNlbGVjdCBtdWx0aXBsZT0ibXVsdGlwbGUiIHNpemU9IjQiIG5hbWU9InskYWN0aW9uaWR9ZmllbGRfeyRvbmUuaWR9W10iPgogICAgICAgIHtodG1sX29wdGlvbnMgb3B0aW9ucz0kb25lLmF0dHJpYi5vcHRpb25zfQogICAgICA8L3NlbGVjdD4KICAgIHsvaWZ9CiAgPC9wPgo8L2Rpdj4Key9mb3JlYWNofQp7L2lmfQoKe2lmIGlzc2V0KCRhbGxvd191cGxvYWRfc2VuZGZpbGUpICYmICRhbGxvd191cGxvYWRfc2VuZGZpbGUgPT0gMX0Ke2NnZV90YWJjb250ZW50X3N0YXJ0IG5hbWU9J3NlbmRmaWxlJ30KPGZpZWxkc2V0Pgo8bGVnZW5kPnskbW9kLT5MYW5nKCdwcm9tcHRfdGxfYWNjZXNzJyl9OjwvbGVnZW5kPgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ2VtYWlsX2FkZHJlc3MnKX06PC9wPgogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9dGxfZW1haWwiIHZhbHVlPSIiIHNpemU9IjQwIiBtYXhsZW5ndGg9IjI1NSIvPgogIDwvcD4KPC9kaXY+CgogPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X3RpbWVsaW1pdGVkX2hvdXJzJyl9PC9wPgogICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH10bF9ob3VycyIgdmFsdWU9InskdGxfaG91cnN9IiBzaXplPSIzIiBtYXhsZW5ndGg9IjMiLz4KICAgPC9wPgogPC9kaXY+CgogPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X3RpbWVsaW1pdGVkX2Rvd25sb2FkcycpfTwvcD4KICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9dGxfZG93bmxvYWRzIiB2YWx1ZT0ieyR0bF9kb3dubG9hZHN9IiBzaXplPSIzIiBtYXhsZW5ndGg9IjMiLz4KICAgPC9wPgogPC9kaXY+CgogPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X3RpbWVsaW1pdGVkX3NlbmRpdCcpfTwvcD4KICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0ieyRhY3Rpb25pZH10bF9zZW5kaXQiIHZhbHVlPSIwIi8+CiAgICAgPGlucHV0IHR5cGU9ImNoZWNrYm94IiBuYW1lPSJ7JGFjdGlvbmlkfXRsX3NlbmRpdCIgdmFsdWU9IjEiIGNoZWNrZWQ9ImNoZWNrZWQiLz4KICAgPC9wPgogPC9kaXY+CjwvZmllbGRzZXQ+CnsvaWZ9Cgp7aWYgaXNzZXQoJGNhdGVnb3J5X2luZm8pICYmICRjYXRlZ29yeV9pbmZvLnVwbG9hZF9jYXRlZ29yeV91c2VycGVybXMgJiYgaXNzZXQoJGZldV9ncm91cGxpc3QpfQp7Y2dlX3RhYmNvbnRlbnRfc3RhcnQgbmFtZT0ncGVybXMnfQo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9wZXJtaXNzaW9ucycpfTo8L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICA8c2VsZWN0IG5hbWU9InskYWN0aW9uaWR9aW5wdXRfdXNlcnBlcm1zW10iIG11bHRpcGxlPSJtdWx0aXBsZSIgc2l6ZT0iNSI+CiAgICAgIHtodG1sX29wdGlvbnMgb3B0aW9ucz0kZmV1X2dyb3VwbGlzdCBzZWxlY3RlZD0kY2F0ZWdvcnlfaW5mby51cGxvYWRfY2F0ZWdvcnlfZGZsdHVzZXJwZXJtc30KICAgIDwvc2VsZWN0PgogIDwvcD4KPC9kaXY+CnsvaWZ9Cgp7Y2dlX2VuZF90YWJzfQoKPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICA8cCBjbGFzcz0icGFnZXRleHQiPiZuYnNwOzwvcD4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgIDxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9InskYWN0aW9uaWR9aW5wdXRfcmVwbGFjZSIgdmFsdWU9InskYWxsb3dfcmVwbGFjZX0iLz4KICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9InskYWN0aW9uaWR9c3VibWl0IiB2YWx1ZT0ieyRtb2QtPkxhbmcoJ3N1Ym1pdCcpfSIvPgogICAgPGlucHV0IHR5cGU9InN1Ym1pdCIgbmFtZT0ieyRhY3Rpb25pZH1jYW5jZWwiIHZhbHVlPSJ7JG1vZC0+TGFuZygnY2FuY2VsJyl9Ii8+CiAgPC9wPgo8L2Rpdj4KeyRmb3JtZW5kfQ==]]></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[PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPg0Ke2xpdGVyYWx9DQpqUXVlcnkoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uKCl7DQogIGpRdWVyeSgnI3N1Ym1pdF9jYXRfbXVsdGlhY3Rpb24nKS5jbGljayhmdW5jdGlvbigpew0KICAgIHJldHVybiBjb25maXJtKCd7L2xpdGVyYWx9eyRtb2QtPkxhbmcoJ2NvbmZpcm1fY2F0X211bHRpYWN0aW9uJyl9e2xpdGVyYWx9Jyk7DQogIH0pOw0KICBqUXVlcnkoJyNjYXRfbXVsdGlhY3Rpb24nKS5oaWRlKCk7DQogIGpRdWVyeSgnI2NhdF9zZWxlY3RhbGwnKS5jbGljayhmdW5jdGlvbigpew0KICAgIHZhciB2YWwgPSBqUXVlcnkodGhpcykuYXR0cignY2hlY2tlZCcpOw0KICAgIGlmKCB2YWwgKSB7DQogICAgICBqUXVlcnkoJyNjYXRfbXVsdGlhY3Rpb24nKS5zaG93KCk7DQogICAgfQ0KICAgIGVsc2Ugew0KICAgICAgalF1ZXJ5KCcjY2F0X211bHRpYWN0aW9uJykuaGlkZSgpOw0KICAgIH0NCg0KICAgIGpRdWVyeSgnLmNhdF9zZWxlY3RhbGwnKS5hdHRyKCdjaGVja2VkJyx2YWwpOw0KICB9KTsNCiAgalF1ZXJ5KCcuY2F0X3NlbGVjdGFsbCcpLmNsaWNrKGZ1bmN0aW9uKCl7DQogICAgdmFyIGFueSA9IDA7DQogICAgalF1ZXJ5KCcuY2F0X3NlbGVjdGFsbCcpLmVhY2goZnVuY3Rpb24oKXsNCiAgICAgIGFueSA9IGFueSB8IGpRdWVyeSh0aGlzKS5hdHRyKCdjaGVja2VkJyk7DQogICAgfSk7DQogICAgaWYoIGFueSApIHsNCiAgICAgIGpRdWVyeSgnI2NhdF9tdWx0aWFjdGlvbicpLnNob3coKTsNCiAgICB9DQogICAgZWxzZSB7DQogICAgICBqUXVlcnkoJyNjYXRfbXVsdGlhY3Rpb24nKS5oaWRlKCk7DQogICAgfQ0KICB9KTsNCn0pOw0Key9saXRlcmFsfQ0KPC9zY3JpcHQ+DQoNCjxkaXYgY2xhc3M9InBhZ2VvcHRpb25zIj48cCBjbGFzcz0icGFnZW9wdGlvbnMiPnskaXRlbWNvdW50fSBDYXRlZ29yaWVzIEZvdW5kPC9wPjwvZGl2Pg0Ke2lmICRpdGVtY291bnQgPiAwfQ0KeyRmb3Jtc3RhcnR9DQo8dGFibGUgY2VsbHNwYWNpbmc9IjAiIGNsYXNzPSJwYWdldGFibGUiPg0KCTx0aGVhZD4NCgkJPHRyPg0KCQkJPHRoIHdpZHRoPSIxNSUiPnskY2F0ZWdvcnl0ZXh0fTwvdGg+DQoJCQk8dGg+eyRuYW1ldGV4dH08L3RoPg0KCQkJPHRoPnskcGF0aHRleHR9PC90aD4NCgkJCTx0aCBjbGFzcz0icGFnZWljb24iPiZuYnNwOzwvdGg+DQoJCQk8dGggY2xhc3M9InBhZ2VpY29uIj4mbmJzcDs8L3RoPg0KCQkJPHRoIGNsYXNzPSJwYWdlaWNvbiI+Jm5ic3A7PC90aD4NCgkJCTx0aCBjbGFzcz0icGFnZWljb24iPjxpbnB1dCB0eXBlPSJjaGVja2JveCIgaWQ9ImNhdF9zZWxlY3RhbGwiIHZhbHVlPSIxIi8+PC90aD4NCgkJPC90cj4NCgk8L3RoZWFkPg0KCTx0Ym9keT4NCntmb3JlYWNoIGZyb209JGl0ZW1zIGl0ZW09ZW50cnl9DQoJCTx0ciBjbGFzcz0ieyRlbnRyeS0+cm93Y2xhc3N9Ij4NCgkJCTx0ZD57JGVudHJ5LT5pZH08L3RkPg0KCQkJPHRkPjxzcGFuIHRpdGxlPSJ7JGVudHJ5LT5kZXNjcmlwdGlvbn0iPnskZW50cnktPm5hbWV9PC9zcGFuPjwvdGQ+DQoJCQk8dGQ+e2lmICRlbnRyeS0+ZXJyb3J9PHNwYW4gc3R5bGU9ImNvbG9yOiByZWQ7IiB0aXRsZT0ieyRtb2QtPkxhbmcoJ2Vycm9yX2NhdGVnb3J5X3Byb2JsZW1fcycpfSI+eyRlbnRyeS0+cGF0aH08L3NwYW4+e2Vsc2V9eyRlbnRyeS0+cGF0aH17L2lmfTwvdGQ+DQoJCQk8dGQ+eyRlbnRyeS0+ZWRpdGxpbmt9PC90ZD4NCgkJCTx0ZD57JGVudHJ5LT5jb3B5bGlua308L3RkPg0KCQkJPHRkPnskZW50cnktPmRlbGV0ZWxpbmt9PC90ZD4NCiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48aW5wdXQgdHlwZT0iY2hlY2tib3giIGNsYXNzPSJjYXRfc2VsZWN0YWxsIiB2YWx1ZT0ieyRlbnRyeS0+aWR9IiBuYW1lPSJ7JGFjdGlvbmlkfWNhdF9tdWx0aXNlbGVjdFtdIi8+PC90ZD4NCgkJPC90cj4NCnsvZm9yZWFjaH0NCgk8L3Rib2R5Pg0KPC90YWJsZT4NCnsvaWZ9DQo8ZGl2IGNsYXNzPSJwYWdlb3B0aW9ucyI+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[PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgokKGRvY3VtZW50KS5yZWFkeShmdW5jdGlvbigpewogICQoJyNtb3ZlY2F0ZWdvcnknKS5jaGFuZ2UoZnVuY3Rpb24oKXsKICAgICQodGhpcykuY2xvc2VzdCgnZm9ybScpLnN1Ym1pdCgpOwogIH0pOwp9KTsKPC9zY3JpcHQ+Cgo8aDM+eyR0aXRsZX0mbmJzcDt7JHZpZXdsaW5rfTwvaDM+CntpZiBpc3NldCgkbWVzc2FnZSkgJiYgJG1lc3NhZ2UgIT0gJyd9CiAge2lmIGlzc2V0KCRlcnJvcikgJiYgJGVycm9yICE9ICcnfQogICAgPHA+PGZvbnQgY29sb3I9InJlZCI+eyRtZXNzYWdlfTwvZm9udD48L3A+CiAge2Vsc2V9CiAgICA8cD57JG1lc3NhZ2V9PC9wPgogIHsvaWZ9CntlbHNlfQp7JHN0YXJ0Zm9ybX0KICB7Y2dlX3N0YXJ0X3RhYnN9CiAge2NnZV90YWJoZWFkZXIgbmFtZT0nZ2VuZXJhbCcgbGFiZWw9JG1vZC0+TGFuZygncHJvbXB0X2dlbmVyYWwnKX0KICB7Y2dlX3RhYmhlYWRlciBuYW1lPSdkZXNjcmlwdGlvbicgbGFiZWw9JG1vZC0+TGFuZygnZGVzY3JpcHRpb24nKX0KCiAge2lmIGlzc2V0KCRmaWVsZHMpfQogICAge2NnZV90YWJoZWFkZXIgbmFtZT0nZmllbGRzJyBsYWJlbD0kbW9kLT5MYW5nKCdwcm9tcHRfZmllbGRzJyl9CiAgey9pZn0KICB7aWYgaXNzZXQoJGNhdGVnb3J5X2luZm8pICYmICRjYXRlZ29yeV9pbmZvLnVwbG9hZF9jYXRlZ29yeV91c2VycGVybXMgJiYgaXNzZXQoJGZldV9ncm91cGxpc3QpfQogICAge2NnZV90YWJoZWFkZXIgbmFtZT0ncGVybXMnIGxhYmVsPSRtb2QtPkxhbmcoJ3Byb21wdF9wZXJtaXNzaW9ucycpfQogIHsvaWZ9CgogIHtpZiAkaXRlbWNvdW50ID4gMH0KICAgIHtjZ2VfdGFiaGVhZGVyIG5hbWU9J2Rvd25sb2FkcycgbGFiZWw9JG1vZC0+TGFuZygncHJvbXB0X2Rvd25sb2FkcycpfQogIHsvaWZ9CgogIHtjZ2VfdGFiY29udGVudF9zdGFydCBuYW1lPSdnZW5lcmFsJ30KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF91cGxvYWRuYW1lfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X3VwbG9hZG5hbWV9IAogICAgICB7KjxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9InskYWN0aW9uaWR9Zml4IiB2YWx1ZT0ieyRtb2QtPkxhbmcoJ2ZpeG1lJyl9IiB0aXRsZT0ieyRtb2QtPkxhbmcoJ3RpdGxlX2ZpeHNwYWNlcycpfSIvPip9CiAgICAgIDxici8+CiAgICAgIHskbW9kLT5MYW5nKCdyZW5hbWVtZXNzYWdlJyl9CiAgICA8L3A+CiAgPC9kaXY+CgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfcmVwbGFjZWZpbGUnKX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgIDxpbnB1dCB0eXBlPSJmaWxlIiBuYW1lPSJ7JGFjdGlvbmlkfXJlcGxhY2VfZmlsZSIvPgogICAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiBuYW1lPSJ7JGFjdGlvbmlkfXJlcGxhY2UiIHZhbHVlPSJ7JG1vZC0+TGFuZygncmVwbGFjZScpfSIgdGl0bGU9InskbW9kLT5MYW5nKCdpbmZvX3JlcGxhY2UnKX0iLz4KICAgICAgPGJyLz4KICAgICAgeyRtb2QtPkxhbmcoJ2luZm9fcmVwbGFjZWZpbGUnKX0KICAgIDwvcD4KICA8L2Rpdj4KCiAge2lmIGlzc2V0KCR0aHVtYl91cmwpfQogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X3RodW1ibmFpbH08L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAge2lmIGlzc2V0KCRmaWxlX3VybCl9PGEgaHJlZj0ieyRmaWxlX3VybH0iIGNsYXNzPSJmYW5jeWJveCI+ey9pZn0KICAgICAgPGltZyBzcmM9InskdGh1bWJfdXJsfSIgYWx0PSIiLz4KICAgICAge2lmIGlzc2V0KCRmaWxlX3VybCl9PC9hPnsvaWZ9CiAgICA8L3A+CiAgPC9kaXY+CiAgey9pZn0KIAogIHtpZiBpc3NldCgkaW5wdXRfbmV3dGh1bWJuYWlsKX0KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF9uZXd0aHVtYm5haWx9PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9uZXd0aHVtYm5haWx9PC9wPgogIDwvZGl2PgogIHsvaWZ9CgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X21vdmVjYXRlZ29yeX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgIDxzZWxlY3QgbmFtZT0ieyRhY3Rpb25pZH1pbnB1dF9tb3ZlY2F0ZWdvcnkiIGlkPSJtb3ZlY2F0ZWdvcnkiPgogICAgICAgIHtodG1sX29wdGlvbnMgb3B0aW9ucz0kY2F0ZWdvcnlsaXN0IHNlbGVjdGVkPSRzZWxfY2F0ZWdvcnl9CiAgICAgIDwvc2VsZWN0PgogICAgICA8YnIvPgogICAgICB7JG1vZC0+TGFuZygncGF0aG1lc3NhZ2UnKX0KICAgIDwvcD4KICA8L2Rpdj4KCiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfdXBsb2Fkc2l6ZX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRkYXRhX3VwbG9hZHNpemV9PC9wPgogIDwvZGl2PgoKICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF91cGxvYWRkYXRlfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGRhdGFfdXBsb2FkZGF0ZX08L3A+CiAgPC9kaXY+CgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X3VwbG9hZGF1dGhvcn06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF91cGxvYWRhdXRob3J9PC9wPgogIDwvZGl2PgoKICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF91cGxvYWRzdW1tYXJ5fTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X3VwbG9hZHN1bW1hcnl9PC9wPgogIDwvZGl2PgoKICB7Y2dlX3RhYmNvbnRlbnRfc3RhcnQgbmFtZT0nZGVzY3JpcHRpb24nfQogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X3VwbG9hZGRlc2N9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfdXBsb2FkZGVzY308L3A+CiAgPC9kaXY+CgogIHtpZiBpc3NldCgkZmllbGRzKX0KICAgIHtjZ2VfdGFiY29udGVudF9zdGFydCBuYW1lPSdmaWVsZHMnfQogICAge2ZvcmVhY2ggZnJvbT0kZmllbGRzIGl0ZW09J29uZSd9CiAgICAgIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRvbmUubmFtZX06PC9wPgogICAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAgICB7aWYgaXNzZXQoJG9uZS5pbnB1dCl9CiAgICAgICAgICB7JG9uZS5pbnB1dH0KICAgICAgICB7ZWxzZWlmICRvbmUudHlwZSA9PSAndGV4dGlucHV0J30KICAgICAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGFjdGlvbmlkfWZpZWxkX3skb25lLmlkfSIgdmFsdWU9Inskb25lLnZhbHVlfGRlZmF1bHQ6Jyd9IiBzaXplPSJ7JG9uZS5hdHRyaWIubGVuZ3RofSIgbWF4bGVuZ3RoPSJ7JG9uZS5hdHRyaWIubWF4bGVuZ3RofSIvPgogICAgICAgIHtlbHNlaWYgJG9uZS50eXBlID09ICdjaGVja2JveCd9CiAgICAgICAgICA8aW5wdXQgdHlwZT0iY2hlY2tib3giIG5hbWU9InskYWN0aW9uaWR9ZmllbGRfeyRvbmUuaWR9IiB2YWx1ZT0iMSJ7aWYgJG9uZS52YWx1ZSA9PSAxfSBjaGVja2VkPSJjaGVja2VkInsvaWZ9Lz4KICAgICAgICB7ZWxzZWlmICRvbmUudHlwZSA9PSAnZHJvcGRvd24nfQogICAgICAgICAgPHNlbGVjdCBuYW1lPSJ7JGFjdGlvbmlkfWZpZWxkX3skb25lLmlkfSI+CiAgICAgICAgICAgIHtodG1sX29wdGlvbnMgb3B0aW9ucz0kb25lLmF0dHJpYi5vcHRpb25zIHNlbGVjdGVkPSRvbmUudmFsdWV9CiAgICAgICAgICA8L3NlbGVjdD4KICAgICAgICB7ZWxzZWlmICRvbmUudHlwZSA9PSAnbXVsdGlzZWxlY3QnfQogICAgICAgICAgPHNlbGVjdCBtdWx0aXBsZT0ibXVsdGlwbGUiIHNpemU9IjQiIG5hbWU9InskYWN0aW9uaWR9ZmllbGRfeyRvbmUuaWR9W10iPgogICAgICAgICAgICB7aHRtbF9vcHRpb25zIG9wdGlvbnM9JG9uZS5hdHRyaWIub3B0aW9ucyBzZWxlY3RlZD0kb25lLnZhbHVlfQogICAgICAgICAgPC9zZWxlY3Q+CiAgICAgICAgey9pZn0KICAgICAgPC9wPgogICAgICA8L2Rpdj4KICAgIHsvZm9yZWFjaH0KICB7L2lmfQoKICB7aWYgaXNzZXQoJGNhdGVnb3J5X2luZm8pICYmICRjYXRlZ29yeV9pbmZvLnVwbG9hZF9jYXRlZ29yeV91c2VycGVybXMgJiYgaXNzZXQoJGZldV9ncm91cGxpc3QpfQogICAge2NnZV90YWJjb250ZW50X3N0YXJ0IG5hbWU9J3Blcm1zJ30KICAgIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9wZXJtaXNzaW9ucycpfTo8L3A+CiAgICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgICAgIDxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9InskYWN0aW9uaWR9aW5wdXRfdXNlcnBlcm1zX3NldCIgdmFsdWU9IjEiLz4KICAgICAgICA8c2VsZWN0IG5hbWU9InskYWN0aW9uaWR9aW5wdXRfdXNlcnBlcm1zW10iIG11bHRpcGxlPSJtdWx0aXBsZSIgc2l6ZT0iNSI+CiAgICAgICAgICB7aHRtbF9vcHRpb25zIG9wdGlvbnM9JGZldV9ncm91cGxpc3Qgc2VsZWN0ZWQ9JHVwbG9hZF9pbmZvLnVwbG9hZF91c2VycGVybXN9CiAgICAgICAgPC9zZWxlY3Q+CiAgICAgIDwvcD4KICAgIDwvZGl2PgogIHsvaWZ9CgogIHtpZiAkaXRlbWNvdW50ID4gMH0KICAgIHtjZ2VfdGFiY29udGVudF9zdGFydCBuYW1lPSdkb3dubG9hZHMnfQogICAgPHRhYmxlIGNlbGxzcGFjaW5nPSIwIiBjbGFzcz0icGFnZXRhYmxlIj4KICAgICAgPHRoZWFkPgogICAgICAgIDx0cj4KICAgICAgICAgIDx0aD57JGRhdGV0ZXh0fTwvdGg+CiAgICAgICAgICA8dGg+eyRpcHRleHR9PC90aD4KICAgICAgICAgIDx0aD57JHVzZXJ0ZXh0fTwvdGg+CiAgICAgICAgPC90cj4KICAgICAgPC90aGVhZD4KICAgICAgPHRib2R5PgogICAgICB7Zm9yZWFjaCBmcm9tPSRpdGVtcyBpdGVtPWVudHJ5fQogICAgICAgIDx0ciBjbGFzcz0ieyRlbnRyeS0+cm93Y2xhc3N9Ij4KICAgICAgICAgIDx0ZD57JGVudHJ5LT5kYXRlfTwvdGQ+CiAgICAgICAgICA8dGQ+eyRlbnRyeS0+aXB9PC90ZD4KICAgICAgICAgIDx0ZD57JGVudHJ5LT51c2VyfTwvdGQ+CiAgICAgICAgPC90cj4KICAgICAgey9mb3JlYWNofQogICAgICA8L3Rib2R5PgogICAgPC90YWJsZT4KICB7L2lmfQoKICB7Y2dlX2VuZF90YWJzfQogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPiZuYnNwOzwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaGlkZGVufXskdGh1bWJuYWlsfXskc3VibWl0fXskY2FuY2VsfTwvcD4KICA8L2Rpdj4KCnskZW5kZm9ybX0Key9pZn0=]]></data>
	</file>
	<file>
	  <filename>/templates/error.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGgzPnskdGl0bGVfZXJyb3J9PC9oMz4Ke2lmICRtZXNzYWdlIT0nJ308cD57JG1lc3NhZ2V9PC9wPnsvaWZ9CntpZiBpc3NldCgkbGluaykgJiYgJGxpbmshPScnfTxwPnskbGlua308L3A+ey9pZn0K]]></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+dXBsaW5rfGRlZmF1bHQ6Jyd9PC90ZD4KICAgICAgICA8dGQ+eyRlbnRyeS0+ZG93bmxpbmt8ZGVmYXVsdDonJ308L3RkPgogICAgICAgIDx0ZD57JGVudHJ5LT5lZGl0bGlua3xkZWZhdWx0OicnfTwvdGQ+CiAgICAgICAgPHRkPnskZW50cnktPmRlbGV0ZWxpbmt8ZGVmYXVsdDonJ308L3RkPgogICAgIDwvdHI+CiAgICAgPHRyIGNsYXNzPSJ7JGVudHJ5LT5yb3djbGFzc30iPgogICAgICAgIDx0ZD4mbmJzcDs8L3RkPgogICAgICAgIDx0ZCBjb2xzcGFuPSI1Ij57JGVudHJ5LT5kZXNjcmlwdGlvbn08L3RkPgogICAgIDwvdHI+CnsvZm9yZWFjaH0KPC90YWJsZT4Key9pZn0KPHRhYmxlIHdpZHRoPSIxMDAlIj4KICA8dHI+CiAgPHRkIHdpZHRoPSI1MCUiPgoJPGRpdiBjbGFzcz0icGFnZW9wdGlvbnMiPjxwIGNsYXNzPSJwYWdlb3B0aW9ucyI+eyRhZGRsaW5rfTwvcD48L2Rpdj4KICA8L3RkPgogIDx0ZCBhbGlnbj0icmlnaHQiPgoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCXskc3RhcnRmb3JtfQoJICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JHByb21wdF91cGxvYWRfaWNvbn06Jm5ic3A7eyRpbnB1dF91cGxvYWRfaWNvbn17JHN1Ym1pdH08L3A+CiAgICAgICAgeyRlbmRmb3JtfQoJPC9kaXY+CiAgPC90ZD4KICA8L3RyPgo8L3RhYmxlPgo=]]></data>
	</file>
	<file>
	  <filename>/templates/orig_detailrpt_template.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PCEtLSBTdGFydCBVcGxvYWQgRGV0YWlsIHRlbXBsYXRlIC0tPgo8dGFibGU+CiAgPHRyPgogICAge2lmIGlzc2V0KCRlbnRyeS0+dGh1bWJuYWlsX3VybCl9CiAgICA8dGQ+eyR0aHVtYm5haWx9PC90ZD4KICAgIDx0ZD48aW1nIHNyYz0ieyRlbnRyeS0+dGh1bWJuYWlsX3VybH0iIGJvcmRlcj0iMCIgLz48L3RkPgogICAge2Vsc2V9CiAgICA8dGQ+eyRpY29ufTwvdGQ+CiAgICA8dGQ+PGltZyBzcmM9InskZW50cnktPmljb251cmx9IiBib3JkZXI9IjAiIC8+PC90ZD4KICAgIHsvaWZ9CiAgPC90cj4KICA8dHI+CiAgICA8dGQ+eyRjYXRlZ29yeX08L3RkPgogICAgPHRkPnskZW50cnktPmNhdGVnb3J5fTwvdGQ+CiAgPC90cj4KICA8dHI+CiAgICA8dGQ+eyRpZH08L3RkPgogICAgPHRkPnskZW50cnktPmlkfTwvdGQ+CiAgPC90cj4KICAKICB7aWYgaXNzZXQoJGVudHJ5LT5kb3dubG9hZF91cmwpfQogIDx0cj4KICAgIDx0ZD57JG5hbWV9PC90ZD4KICAgIDx0ZD48YSBocmVmPSJ7JGVudHJ5LT5kb3dubG9hZF91cmx9IiB0aXRsZT0ieyRlbnRyeS0+bmFtZX0iPnskZW50cnktPm5hbWV9PC9hPiZuYnNwOyZuYnNwOwogICAgICAgIDxhIGhyZWY9InskZW50cnktPnNlbmRmaWxlX3VybH0iIHRpdGxlPSIiPlNlbmQgdGhpcyBmaWxlPC9hPjxici8+CiAgICA8L3RkPgogIDwvdHI+CiAgey9pZn0KCiAge2lmIGlzc2V0KCRlbnRyeS0+ZGVsZXRlX3VybCl9CiAgPHRyPgogICAgPHRkPnskZGVsZXRlfTwvdGQ+CiAgICA8dGQ+PGEgaHJlZj0ieyRlbnRyeS0+ZGVsZXRlX3VybH0iIHRpdGxlPSJ7JGRlbGV0ZX0iIG9uY2xpY2s9InJldHVybiBjb25maXJtKCd7JGFyZXlvdXN1cmV9Jyk7Ij57JGVudHJ5LT5uYW1lfTwvYT48L3RkPgogIDwvdHI+CiAgey9pZn0KICA8dHI+CiAgICA8dGQ+eyRkYXRlfTwvdGQ+CiAgICA8dGQ+eyRlbnRyeS0+ZGF0ZXxjbXNfZGF0ZV9mb3JtYXR9PC90ZD4KICA8L3RyPgogIDx0cj4KICAgIDx0ZD57JGF1dGhvcn08L3RkPgogICAgPHRkPnskZW50cnktPmF1dGhvcnxkZWZhdWx0OicnfTwvdGQ+CiAgPC90cj4KICA8dHI+CiAgICA8dGQ+eyRzaXplfTwvdGQ+CiAgICA8dGQ+eyRlbnRyeS0+c2l6ZX08L3RkPgogIDwvdHI+CiAgPHRyPgogICAgPHRkPnskc3VtbWFyeX08L3RkPgogICAgPHRkPnskZW50cnktPnN1bW1hcnl8ZGVmYXVsdDonJ308L3RkPgogIDwvdHI+CiAgPHRyPgogICAgPHRkPnskZGVzY3JpcHRpb259PC90ZD4KICAgIDx0ZD57JGVudHJ5LT5kZXNjcmlwdGlvbnxkZWZhdWx0OicnfTwvdGQ+CiAgPC90cj4KCiAge2lmIGlzc2V0KCRlbnRyeS0+ZmllbGRzKX0KICAgIHtmb3JlYWNoIG5hbWU9ZmllbGRzIGZyb209JGVudHJ5LT5maWVsZHMga2V5PSdmbGRuYW1lJyBpdGVtPSdmaWVsZCd9CiAgICA8dHI+CiAgICAgIDx0ZD57JGZpZWxkLm5hbWV9PC90ZD4KICAgICAgPHRkPnskZmllbGQudmFsdWV9PC90ZD4KICAgIDwvdHI+CiAgICB7L2ZvcmVhY2h9CiAgey9pZn0KPC90YWJsZT4KPCEtLSBFbmQgVXBsb2FkIERldGFpbCB0ZW1wbGF0ZSAtLT4K]]></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_htmlreport_downloadsbyfile.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGh0bWw+CiAgPGhlYWQ+CiAgPC9oZWFkPgogIDxib2R5PgogIHsqIHJlcG9ydCBoZWFkZXIgKn0KICA8aDE+eyRtb2QtPkxhbmcoJ3JlcG9ydF9kb3dubG9hZHNieWZpbGUnKX08L2gxPgogIDx0YWJsZT4KICAgIDx0cj48dGQ+eyRtb2QtPkxhbmcoJ2dlbmVyYXRlZF9ieScpfTo8L3RkPjx0ZD57aWYgaXNfb2JqZWN0KCR1c2VyKX17JHVzZXItPnVzZXJuYW1lfXtlbHNlfXskbW9kLT5MYW5nKCdub3VzZXJpbmZvJyl9ey9pZn08L3RkPjwvdHI+CiAgICA8dHI+PHRkPnskbW9kLT5MYW5nKCdnZW5lcmF0ZWRfb24nKX06PC90ZD48dGQ+eyRzbWFydHkubm93fGNtc19kYXRlX2Zvcm1hdH08L3RkPjwvdHI+CiAgICA8dHI+PHRkPnskbW9kLT5MYW5nKCdzdGFydF9kYXRlJyl9OjwvdGQ+PHRkPnskcHJvZmlsZS5zdGFydF9kYXRlfGNtc19kYXRlX2Zvcm1hdH08L3RkPjwvdHI+CiAgICA8dHI+PHRkPnskbW9kLT5MYW5nKCdlbmRfZGF0ZScpfTo8L3RkPjx0ZD57JHByb2ZpbGUuZW5kX2RhdGV8Y21zX2RhdGVfZm9ybWF0fTwvdGQ+PC90cj4KICA8L3RhYmxlPgoKICB7aWYgaXNzZXQoJGVycm9yKX0KICA8ZGl2IGNsYXNzPSJlcnJvciI+eyRlcnJvcn08L2Rpdj4KICB7ZWxzZX0KICA8dWw+PCEtLSBzdGFydCBvZiByZXBvcnQgLS0+CiAgeyRwcmV2X2ZpbGU9Jyd9CiAge2ZvcmVhY2ggZnJvbT0kcmVjb3JkcyBpdGVtPSdyZWNvcmQnfQogICAge2lmICRyZWNvcmQudXBsb2FkX2lkICE9ICRwcmV2X2ZpbGV9CiAgICAgIHtpZiAkcHJldl9maWxlICE9ICcnfQogICAgICAgIDwvdGJvZHk+CiAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2xpPgogICAgICB7L2lmfQoKICAgICAgeyogdXNlciBoZWFkZXIgKn0KICAgICAgPGxpPkRvd25sb2FkcyBmb3IgeyRyZWNvcmQudXBsb2FkX25hbWV8ZGVmYXVsdDonJmx0O25hbWUgbm90IHByb3ZpZGVkJmd0Oyd9PC9oND4KICAgICAgPHRhYmxlPgogICAgICB7aWYgaXNzZXQoJHJlY29yZC51cGxvYWRfaWQpfTx0cj48dGQ+eyRsYWJlbHNbJ3VwbG9hZF9pZCddfTo8L3RkPjx0ZD57JHJlY29yZC51cGxvYWRfaWR9PC90ZD48L3RyPnsvaWZ9CiAgICAgIHtpZiBpc3NldCgkcmVjb3JkLmNhdGVnb3J5X25hbWUpfTx0cj48dGQ+eyRsYWJlbHNbJ2NhdGVnb3J5X25hbWUnXX06PC90ZD48dGQ+eyRyZWNvcmQuY2F0ZWdvcnlfbmFtZX08L3RkPjwvdHI+ey9pZn0KICAgICAge2lmIGlzc2V0KCRyZWNvcmQudXBsb2FkX3NpemUpfTx0cj48dGQ+eyRsYWJlbHNbJ3VwbG9hZF9zaXplJ119OjwvdGQ+PHRkPnskcmVjb3JkLnVwbG9hZF9zaXplfTwvdGQ+PC90cj57L2lmfQogICAgICB7aWYgaXNzZXQoJHJlY29yZC51cGxvYWRfZGF0ZSl9PHRyPjx0ZD57JGxhYmVsc1sndXBsb2FkX2RhdGUnXX06PC90ZD48dGQ+eyRyZWNvcmQudXBsb2FkX2RhdGV9PC90ZD48L3RyPnsvaWZ9CiAgICAgIDwvdGFibGU+CiAgICAgIDx0YWJsZSB3aWR0aD0iMTAwJSI+CiAgICAgICAgPHRoZWFkPgogICAgICAgICAgPHRyPgogICAgICAgICAge2ZvcmVhY2ggJHJlY29yZCBhcyAka2V5ID0+ICR2YWx9CiAgICAgICAgICAgIHtpZiAhaW5fYXJyYXkoJGtleSxhcnJheSgndXBsb2FkX2lkJywnY2F0ZWdvcnlfbmFtZScsJ3VwbG9hZF9zaXplJywndXBsb2FkX2RhdGUnLCd1cGxvYWRfbmFtZScpKX0KICAgICAgICAgICAgPHRoIGFsaWduPSJsZWZ0Ij57JGxhYmVsc1ska2V5XX08L3RoPgogICAgICAgICAgICB7L2lmfQogICAgICAgICAgey9mb3JlYWNofQogICAgICAgICAgPC90cj4KICAgICAgICA8L3RoZWFkPgogICAgICAgIDx0Ym9keT4KICAgICAgeyRwcmV2X2ZpbGU9JHJlY29yZC51cGxvYWRfaWR9CiAgICB7L2lmfQogICAgCiAgICB7KiB1c2VyIHJlY29yZCAqfQogICAgPHRyPgogICAge2ZvcmVhY2ggJHJlY29yZCBhcyAka2V5ID0+ICR2YWx9CiAgICAgIHtpZiAhaW5fYXJyYXkoJGtleSxhcnJheSgndXBsb2FkX2lkJywnY2F0ZWdvcnlfbmFtZScsJ3VwbG9hZF9zaXplJywndXBsb2FkX2RhdGUnLCd1cGxvYWRfbmFtZScpKX0KICAgICAgPHRkPnskdmFsfTwvdGQ+ICAKICAgICAgey9pZn0KICAgIHsvZm9yZWFjaH0KICAgIDwvdHI+CgogIHsvZm9yZWFjaH0KICB7aWYgJHByZXZfZmlsZSAhPSAnJ30KICAgIDwvdGJvZHk+CiAgICA8L3RhYmxlPgogICAgPC9saT4KICB7L2lmfQoKICB7KiByZXBvcnQgZm9vdGVyICp9CiAgPC91bD48IS0tIGVuZCBvZiByZXBvcnQgLS0+CiAgey9pZn17KiBubyBlcnJvciAqfQogIDwvYm9keT4KPC9odG1sPg==]]></data>
	</file>
	<file>
	  <filename>/templates/orig_htmlreport_downloadsbyuser.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGh0bWw+CiAgPGhlYWQ+CiAgPC9oZWFkPgogIDxib2R5PgogIHsqIHJlcG9ydCBoZWFkZXIgKn0KICA8aDE+eyRtb2QtPkxhbmcoJ3JlcG9ydF9kb3dubG9hZHNieXVzZXInKX08L2gxPgogIHtpZiBpc3NldCgkZXJyb3IpfQogICAgPGRpdiBjbGFzcz0iZXJyb3IiPnskZXJyb3J9PC9kaXY+CiAge2Vsc2V9CiAgPHVsPjwhLS0gc3RhcnQgb2YgcmVwb3J0IC0tPgogIHskcHJldl91c2VyPScnfQogIHtmb3JlYWNoIGZyb209JHJlY29yZHMgaXRlbT0ncmVjb3JkJ30KICAgIHtpZiAkcmVjb3JkLmRvd25sb2FkX3VzZXIgIT0gJHByZXZfdXNlcn0KICAgICAge2lmICRwcmV2X3VzZXIgIT0gJyd9CiAgICAgICAgPC90Ym9keT4KICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvbGk+CiAgICAgIHsvaWZ9CgogICAgICB7KiB1c2VyIGhlYWRlciAqfQogICAgICA8bGk+RG93bmxvYWRzIGZvciB7JHJlY29yZC5kb3dubG9hZF91c2VyfTwvaDQ+CiAgICAgIDx0YWJsZSB3aWR0aD0iMTAwJSI+CiAgICAgICAgPHRoZWFkPgogICAgICAgICAgPHRyPgogICAgICAgICAge2ZvcmVhY2ggJHJlY29yZCBhcyAka2V5ID0+ICR2YWx9CiAgICAgICAgICAgIDx0aCBhbGlnbj0ibGVmdCI+eyRsYWJlbHNbJGtleV19PC90aD4KICAgICAgICAgIHsvZm9yZWFjaH0KICAgICAgICAgIDwvdHI+CiAgICAgICAgPC90aGVhZD4KICAgICAgICA8dGJvZHk+CiAgICAgIHskcHJldl91c2VyPSRyZWNvcmQuZG93bmxvYWRfdXNlcn0KICAgIHsvaWZ9CiAgICAKICAgIHsqIHVzZXIgcmVjb3JkICp9CiAgICA8dHI+CiAgICB7Zm9yZWFjaCAkcmVjb3JkIGFzICRrZXkgPT4gJHZhbH0KICAgICAgPHRkPnskdmFsfTwvdGQ+ICAKICAgIHsvZm9yZWFjaH0KICAgIDwvdHI+CgogIHsvZm9yZWFjaH0KICB7aWYgJHByZXZfdXNlciAhPSAnJ30KICAgIDwvdGJvZHk+CiAgICA8L3RhYmxlPgogICAgPC9saT4KICB7L2lmfQoKICB7KiByZXBvcnQgZm9vdGVyICp9CiAgPC91bD48IS0tIGVuZCBvZiByZXBvcnQgLS0+CiAgey9pZn0geyogbm8gZXJyb3IgKn0KICA8L2JvZHk+CjwvaHRtbD4=]]></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+eyRmaXJzdHBhZ2VfYXJyb3d9PC9hPgogIDxhIGhyZWY9InskcHJldnBhZ2VfdXJsfSIgdGl0bGU9InskcHJldnBhZ2V9Ij57JHByZXZwYWdlX2Fycm93fTwvYT4Key9pZn0Ke2lmIGlzc2V0KCRudW1wYWdlcykgJiYgJG51bXBhZ2VzID4gMX0KICAmbmJzcDsmbmJzcDt7JHBhZ2V0ZXh0fSB7JHBhZ2VudW19IHskb2Z0ZXh0fSB7JG51bXBhZ2VzfSZuYnNwOyZuYnNwOwp7L2lmfQp7aWYgaXNzZXQoJG5leHRwYWdlX3VybCl9CiAgPGEgaHJlZj0ieyRuZXh0cGFnZV91cmx9IiB0aXRsZT0ieyRuZXh0cGFnZX0iPnskbmV4dHBhZ2VfYXJyb3d9PC9hPgogIDxhIGhyZWY9InskbGFzdHBhZ2VfdXJsfSIgdGl0bGU9InskbGFzdHBhZ2V9Ij57JGxhc3RwYWdlX2Fycm93fTwvYT4Key9pZn0KPC9kaXY+Cgp7aWYgaXNzZXQoJGl0ZW1zKX0Ke2ZvcmVhY2ggZnJvbT0kaXRlbXMgaXRlbT0nZW50cnknIG5hbWU9J3VwbG9hZHMnfQogIHtpZiAoJHNtYXJ0eS5mb3JlYWNoLnVwbG9hZHMuaW5kZXggPT0gMCkgb3IgKCRzbWFydHkuZm9yZWFjaC51cGxvYWRzLmluZGV4ICUgMyA9PSAwKX0KICAgIDxkaXYgY2xhc3M9InJvdyIgc3R5bGU9IndpZHRoOiAxMDAlOyBwYWRkaW5nLWJvdHRvbTogMTBweDsiPgogIHsvaWZ9CiAKICA8ZGl2IGNsYXNzPSJ1cGxvYWQiIHN0eWxlPSJmbG9hdDogbGVmdDsgd2lkdGg6IDMzJTsiPgogICAge2lmIGlzc2V0KCRlbnRyeS0+ZGV0YWlsdXJsKX0KICAgIDxhIGhyZWY9InskZW50cnktPmRldGFpbHVybH0iPnskZW50cnktPnVwbG9hZF9uYW1lfTwvYT4mbmJzcDsoeyRlbnRyeS0+c2l6ZX0pPGJyLz4KICAgIHtlbHNlfQogICAgPHNwYW4+eyRlbnRyeS0+dXBsb2FkX25hbWV9Jm5ic3A7KHskZW50cnktPnNpemV9KTxici8+CiAgICB7L2lmfQoKICAgIHtpZiBpc3NldCgkZW50cnktPmRvd25sb2FkX3VybCl9CiAgICAgIDxhIGhyZWY9InskZW50cnktPmRvd25sb2FkX3VybH0iIHRpdGxlPSJ7JGVudHJ5LT51cGxvYWRfbmFtZX0iPgogICAgICB7aWYgaXNzZXQoJGVudHJ5LT50aHVtYm5haWxfdXJsKX0KICAgICAgICA8aW1nIHNyYz0ieyRlbnRyeS0+dGh1bWJuYWlsX3VybH0iIGFsdD0iIj4KICAgICAge2Vsc2V9CiAgICAgICAgPGltZyBzcmM9InskZW50cnktPmljb251cmx9IiBhbHQ9IiI+CiAgICAgIHsvaWZ9CiAgICAgIDwvYT4KICAgIHtlbHNlfQogICAgICB7aWYgaXNzZXQoJGVudHJ5LT50aHVtYm5haWxfdXJsKX0KICAgICAgICA8aW1nIGNsYXNzPSJ0aHVtYm5haWwiIHNyYz0ieyRlbnRyeS0+dGh1bWJuYWlsX3VybH0iIGFsdD0iIj4KICAgICAge2Vsc2V9CiAgICAgICAgPGltZyBjbGFzcz0iaWNvbiIgc3JjPSJ7JGVudHJ5LT5pY29udXJsfSIgYWx0PSIiPgogICAgICB7L2lmfQogICAgey9pZn0KICAgICAgIAogICAgPGJyLz4KICAgIHtpZiBpc3NldCgkZW50cnktPnNlbmRmaWxlX3VybCl9CiAgICAgIDxhIGhyZWY9InskZW50cnktPnNlbmRmaWxlX3VybH0iIHRpdGxlPSIiPlNlbmQgdGhpcyBmaWxlPC9hPjxici8+CiAgICB7L2lmfQoKICAgIHskYXV0aG9yfTogeyRlbnRyeS0+YXV0aG9yfTxici8+CiAgICB7JGRhdGV9OiB7JGVudHJ5LT5kYXRlfTxici8+CiAgICB7JGVudHJ5LT5zdW1tYXJ5fQoKICAgIHtpZiBpc3NldCgkZW50cnktPmZpZWxkcyl9CiAgICAgIHtmb3JlYWNoIG5hbWU9ZmllbGRzIGZyb209JGVudHJ5LT5maWVsZHMga2V5PSdmbGRuYW1lJyBpdGVtPSdmaWVsZCd9CiAgICAgICAgeyRmaWVsZC5uYW1lfTogeyRmaWVsZC52YWx1ZX08YnIvPgogICAgICB7L2ZvcmVhY2h9CiAgICB7L2lmfQogIDwvZGl2Pgp7L2ZvcmVhY2h9CnsvaWZ9Cgo8ZGl2IHN0eWxlPSJjbGVhcjogYm90aDsiPjwvZGl2Pgo8IS0tIEVuZCBVcGxvYWQgU3VtbWFyeSBUZW1wbGF0ZSAtLT4=]]></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+CiAgey9pZn0Key9pZn0KCntpZiAkbm9mb3JtID09ICcnfQp7JHN0YXJ0Zm9ybX17JGlucHV0X2hpZGRlbn0KCjxkaXYgY2xhc3M9InBhZ2VvcHRpb25zIj4KICB7JG1vZC0+TGFuZygnY2F0ZWdvcnknKX06Jm5ic3A7eyRpbnB1dF9jYXRlZ29yeX0KICAmbmJzcDt7JG1vZC0+TGFuZygncGFnZWxpbWl0Jyl9OgogIDxzZWxlY3QgbmFtZT0ieyRhY3Rpb25pZH1pbnB1dF9wYWdlbGltaXQiPgogICAge2h0bWxfb3B0aW9ucyBvcHRpb25zPSRwYWdlbGltaXRzIHNlbGVjdGVkPSRwYWdlbGltaXR9CiAgPC9zZWxlY3Q+CiAgPGlucHV0IHR5cGU9InN1Ym1pdCIgbmFtZT0ieyRhY3Rpb25pZH1zdWJtaXRmaWx0ZXIiIHZhbHVlPSJ7JG1vZC0+TGFuZygnZmlsdGVyJyl9Ii8+CgogIHtpZiBpc3NldCgkbnBhZ2VzKSAmJiAkbnBhZ2VzID4gMH0KICA8ZGl2IHN0eWxlPSJmbG9hdDogcmlnaHQ7Ij4KICAge2lmIGlzc2V0KCRmaXJzdHBhZ2VfdXJsKX0KICAgICA8YSBocmVmPSJ7JGZpcnN0cGFnZV91cmx9Ij4mbHQ7Jmx0OzwvYT4mbmJzcDsKICAgICA8YSBocmVmPSJ7JHByZXZwYWdlX3VybH0iPiZsdDs8L2E+Jm5ic3A7CiAgIHsvaWZ9CiAgIHskbW9kLT5MYW5nKCdwYWdlJyl9Jm5ic3A7eyRjdXJwYWdlfSZuYnNwO3skbW9kLT5MYW5nKCdvZicpfSZuYnNwO3skbnBhZ2VzfQogICB7aWYgaXNzZXQoJG5leHRwYWdlX3VybCl9CiAgICAgJm5ic3A7PGEgaHJlZj0ieyRuZXh0cGFnZV91cmx9Ij4mZ3Q7PC9hPgogICAgICZuYnNwOzxhIGhyZWY9InskbGFzdHBhZ2VfdXJsfSI+Jmd0OyZndDs8L2E+CiAgIHsvaWZ9CiAgPC9kaXY+CiAgey9pZn0KPC9kaXY+CnskZW5kZm9ybX0KCgo8ZGl2IGNsYXNzPSJwYWdlb3B0aW9ucyI+CiB7JGFkZGZpbGVfbGlua30KPC9kaXY+CntpZiAkaXRlbWNvdW50ID4gMH0KPHRhYmxlIGNlbGxzcGFjaW5nPSIwIiBjbGFzcz0icGFnZXRhYmxlIj4KCTx0aGVhZD4KCQk8dHI+CgkJCTx0aD4mbmJzcDs8L3RoPgoJICAgICAgICAgICAgICAgIDx0aD4mbmJzcDs8L3RoPgoJCQk8dGg+eyR0aXRsZXRleHR9PC90aD4KCQkJPHRoPnskc3VtbWFyeXRleHR8c3VtbWFyaXplOjUwfTwvdGg+CgkJCTx0aCBzdHlsZT0idGV4dC1hbGlnbjogY2VudGVyOyI+eyRzaXpldGV4dH08L3RoPgoJCQk8dGg+eyRhdXRob3J0ZXh0fTwvdGg+CgkJCTx0aD57JGlwdGV4dH08L3RoPgoJCQk8dGg+eyRwb3N0ZGF0ZXRleHR9PC90aD4KCQkJPHRoIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7Ij57JGRsdGV4dH08L3RoPgoJCQk8dGggY2xhc3M9InBhZ2VpY29uIj4mbmJzcDs8L3RoPgoJCQk8dGggY2xhc3M9InBhZ2VpY29uIj4mbmJzcDs8L3RoPgoJCQk8dGggY2xhc3M9InBhZ2VpY29uIj4mbmJzcDs8L3RoPgoJCQk8dGggY2xhc3M9InBhZ2VpY29uIj4mbmJzcDs8L3RoPgoJCTwvdHI+Cgk8L3RoZWFkPgoJPHRib2R5PgoJe2ZvcmVhY2ggZnJvbT0kaXRlbXMgaXRlbT1lbnRyeX0KCQk8dHIgY2xhc3M9InskZW50cnktPnJvd2NsYXNzfSI+CgkJCTx0ZD57JGVudHJ5LT5pZH08L3RkPgoJCQk8dGQ+PGltZyBzcmM9InskZW50cnktPmljb259IiBoZWlnaHQ9IjE2IiB3aWR0aD0iMTYiIGFsdD0ieyRlbnRyeS0+aWNvbn0iLz48L3RkPgoJCQk8dGQ+PGEgaHJlZj0ieyRlbnRyeS0+ZWRpdHVybH0iIHRpdGxlPSJ7JG1vZC0+TGFuZygnZWRpdF90aGlzX2ZpbGUnKX0iPnskZW50cnktPm5hbWV9PC9hPjwvdGQ+CgkJCTx0ZD57JGVudHJ5LT5zdW1tYXJ5fTwvdGQ+CgkJCTx0ZCBzdHlsZT0idGV4dC1hbGlnbjogY2VudGVyOyI+eyRlbnRyeS0+c2l6ZX08L3RkPgoJCQk8dGQ+eyRlbnRyeS0+YXV0aG9yfTwvdGQ+CgkJCTx0ZD57JGVudHJ5LT5pcH08L3RkPgoJCQk8dGQ+eyRlbnRyeS0+ZGF0ZX08L3RkPgoJCQk8dGQgc3R5bGU9InRleHQtYWxpZ246IGNlbnRlcjsiPnskZW50cnktPmRvd25sb2Fkc308L3RkPgoJCQk8dGQ+eyRlbnRyeS0+dGltZWxpbWl0ZWRfbGlua308L3RkPgoJCQk8dGQ+eyRlbnRyeS0+dmlld2xpbmt9PC90ZD4KCQkJPHRkPnskZW50cnktPmVkaXRsaW5rfTwvdGQ+CgkJCTx0ZD57JGVudHJ5LT5kZWxldGVsaW5rfTwvdGQ+CgkJPC90cj4KCXsvZm9yZWFjaH0KCTwvdGJvZHk+CjwvdGFibGU+CntpZiAkaXRlbWNvdW50ID4gMTB9CjxkaXYgY2xhc3M9InBhZ2VvcHRpb25zIj4KIHskYWRkZmlsZV9saW5rfQo8L2Rpdj4Key9pZn0Ke2Vsc2V9CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgIDxwIGNsYXNzPSJwYWdlb3B0aW9ucyI+Tm8gRmlsZXMgRGV0ZWN0ZWQ8L3A+CjwvZGl2Pgp7L2lmfQp7L2lmfQ==]]></data>
	</file>
	<file>
	  <filename>/Uploads.module.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLWZpbGUtc3R5bGU6bGludXg7IHRhYi13aWR0aDoyOyBpbmRlbnQtdGFicy1tb2RlOnQ7IGMtYmFzaWMtb2Zmc2V0OiAyOyAtKi0KI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFVwbG9hZHMgKGMpIDIwMTEgYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgdXBsb2FkZWQgZmlsZXMKIyAgaGFzIG51bWVyb3VzIGNhcGFiaWxpdGllcyBpbmNsdWRpbmcgeW91c2VuZGl0LCB0aW1lIGxpbWl0ZWQgdXJscywgCiMgIGZyb250ZW5kIHVwbG9hZHMuLiAKIyAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBIb3dldmVyLCBhcyBhIHNwZWNpYWwgZXhjZXB0aW9uIHRvIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgZGlzdHJpYnV0ZWQKIyBhcyBhbiBhZGRvbiBtb2R1bGUgdG8gQ01TIE1hZGUgU2ltcGxlLiAgWW91IG1heSBub3QgdXNlIHRoaXMgc29mdHdhcmUKIyBpbiBhbnkgTm9uIEdQTCB2ZXJzaW9uIG9mIENNUyBNYWRlIHNpbXBsZSwgb3IgaW4gYW55IHZlcnNpb24gb2YgQ01TCiMgTWFkZSBzaW1wbGUgdGhhdCBkb2VzIG5vdCBpbmRpY2F0ZSBjbGVhcmx5IGFuZCBvYnZpb3VzbHkgaW4gaXRzIGFkbWluIAojIHNlY3Rpb24gdGhhdCB0aGUgc2l0ZSB3YXMgYnVpbHQgd2l0aCBDTVMgTWFkZSBzaW1wbGUuCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojRU5EX0xJQ0VOU0UKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovLyBUaGlzIG1vZHVsZSBpcyBkZXJpdmVkIGZyb20gQ0dFeHRlbnNpb25zIAokY2dleHRlbnNpb25zID0gY21zX2pvaW5fcGF0aCgkZ0Ntcy0+Y29uZmlnWydyb290X3BhdGgnXSwnbW9kdWxlcycsJ0NHRXh0ZW5zaW9ucycsJ0NHRXh0ZW5zaW9ucy5tb2R1bGUucGhwJyk7CmlmKCAhaXNfcmVhZGFibGUoICRjZ2V4dGVuc2lvbnMgKSApCnsKICBlY2hvICc8aDE+PGZvbnQgY29sb3I9InJlZCI+RVJST1I6IFRoZSBDR0V4dGVuc2lvbnMgbW9kdWxlIGNvdWxkIG5vdCBiZSBmb3VuZC48L2ZvbnQ+PC9oMT4nOwogIHJldHVybjsKfQpyZXF1aXJlX29uY2UoJGNnZXh0ZW5zaW9ucyk7CgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KZmluYWwgY2xhc3MgVXBsb2FkcyBleHRlbmRzIENHRXh0ZW5zaW9ucwp7Cgl2YXIgJHVwbG9hZF9leHRlbnNpb25zID0gJyc7Cgl2YXIgJF9maWxldHlwZXMgPSAnJzsKCglwdWJsaWMgZnVuY3Rpb24gX19jb25zdHJ1Y3QoKQoJewoJCXBhcmVudDo6X19jb25zdHJ1Y3QoKTsKICAgICR0aGlzLT5BZGRJbWFnZURpcignaW1hZ2VzJyk7CgkJJHNtYXJ0eSA9IGNtc21zKCktPkdldFNtYXJ0eSgpOwoJCSRzbWFydHktPnJlZ2lzdGVyX2Jsb2NrKCdvbmNoYW5nZScsYXJyYXkoJHRoaXMsJ3NtYXJ0eV9ibG9ja19vbmNoYW5nZScpKTsKCX0KCiAgcHVibGljIGZ1bmN0aW9uIEdldEZyaWVuZGx5TmFtZSAoKSB7IHJldHVybiAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZnJpZW5kbHluYW1lJywkdGhpcy0+TGFuZygnZnJpZW5kbHluYW1lJykpOyB9CiAgcHVibGljIGZ1bmN0aW9uIEdldE5hbWUgKCkgeyByZXR1cm4gJ1VwbG9hZHMnOyB9CiAgcHVibGljIGZ1bmN0aW9uIEdldFZlcnNpb24oKSB7IHJldHVybiAnMS4xNi4xMyc7CX0KCXB1YmxpYyBmdW5jdGlvbiBHZXRFdmVudEhlbHAgKCAkZXZlbnRuYW1lICkJewlyZXR1cm4gJHRoaXMtPkxhbmcgKCdoZWxwXycuJGV2ZW50bmFtZSk7IH0KCXB1YmxpYyBmdW5jdGlvbiBHZXRIZWxwICgpIHsgcmV0dXJuIGZpbGVfZ2V0X2NvbnRlbnRzKF9fRElSX18uJy9oZWxwLmluYycpOwl9CglwdWJsaWMgZnVuY3Rpb24gR2V0QXV0aG9yICgpIHsgcmV0dXJuICdjYWxndXkxMDAwJzsJfQoJcHVibGljIGZ1bmN0aW9uIEdldEF1dGhvckVtYWlsICgpCXsJcmV0dXJuICdjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnJzsgfQoJcHVibGljIGZ1bmN0aW9uIElzUGx1Z2luTW9kdWxlICgpCXsJcmV0dXJuIHRydWU7IH0KCXB1YmxpYyBmdW5jdGlvbiBIYXNBZG1pbiAoKQl7CXJldHVybiB0cnVlOyB9CglwdWJsaWMgZnVuY3Rpb24gR2V0QWRtaW5TZWN0aW9uICgpIHsgcmV0dXJuICdjb250ZW50JzsgfQoJcHVibGljIGZ1bmN0aW9uIE1pbmltdW1DTVNWZXJzaW9uICgpIHsgcmV0dXJuICcxLjExLjcnOwl9CglwdWJsaWMgZnVuY3Rpb24gR2V0QWRtaW5EZXNjcmlwdGlvbiAoKSB7IHJldHVybiAkdGhpcy0+TGFuZyAoJ21vZGRlc2NyaXB0aW9uJyk7CX0KICBwdWJsaWMgZnVuY3Rpb24gQWxsb3dBdXRvSW5zdGFsbCgpIHsgcmV0dXJuIEZBTFNFOyB9CiAgcHVibGljIGZ1bmN0aW9uIEFsbG93QXV0b1VwZ3JhZGUoKSB7IHJldHVybiBGQUxTRTsgfQoJcHVibGljIGZ1bmN0aW9uIEdldERlcGVuZGVuY2llcyAoKSB7IHJldHVybiBhcnJheSAoJ0NHRXh0ZW5zaW9ucyc9PicxLjM2Jyk7CX0KCXB1YmxpYyBmdW5jdGlvbiBJbnN0YWxsUG9zdE1lc3NhZ2UgKCkgewlyZXR1cm4gJHRoaXMtPkxhbmcgKCdwb3N0aW5zdGFsbCcpOwl9CglwdWJsaWMgZnVuY3Rpb24gVW5pbnN0YWxsUG9zdE1lc3NhZ2UgKCkJewlyZXR1cm4gJHRoaXMtPkxhbmcgKCdwb3N0dW5pbnN0YWxsJyk7CX0KICBwdWJsaWMgZnVuY3Rpb24gR2V0Q2hhbmdlTG9nICgpIHsgcmV0dXJuIGZpbGVfZ2V0X2NvbnRlbnRzKF9fRElSX18pLicvY2hhbmdlbG9nLmluYyc7IH0KCXB1YmxpYyBmdW5jdGlvbiBMYXp5TG9hZEFkbWluKCkgeyByZXR1cm4gVFJVRTsgfQoKCXB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gbG9hZF9jb21tb24oKQoJewoJCXJlcXVpcmVfb25jZShfX0RJUl9fLicvZnVuY3Rpb25zLmNvbW1vbl90b29scy5waHAnKTsKCX0KCglwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIGxvYWRfYWRtaW4oKQoJewoJCXJlcXVpcmVfb25jZShfX0RJUl9fLicvZnVuY3Rpb25zLmFkbWluX3Rvb2xzLnBocCcpOwoJfQoKCXB1YmxpYyBmdW5jdGlvbiBfY2F0ZWdvcnlQYXRoKCAkY2F0ZWdvcnlwYXRoICkKCXsKCQkkZ0NtcyA9IGNtc21zKCk7CgkJcmV0dXJuICRnQ21zLT5jb25maWdbJ3VwbG9hZHNfcGF0aCddLkRJUkVDVE9SWV9TRVBBUkFUT1IuJGNhdGVnb3J5cGF0aDsKCX0KCglwdWJsaWMgZnVuY3Rpb24gX3VwbG9hZFBhdGgoICRjYXRlZ29yeXBhdGgsICRmaWxlbmFtZSApCgl7CgkJcmV0dXJuICR0aGlzLT5fY2F0ZWdvcnlQYXRoKCAkY2F0ZWdvcnlwYXRoICkuRElSRUNUT1JZX1NFUEFSQVRPUi4kZmlsZW5hbWU7Cgl9CgoJcHJvdGVjdGVkIGZ1bmN0aW9uIF90ZXN0aXAoJHJhbmdlLCRpcCkgCgl7CgkJJHJlc3VsdCA9IDE7CgkJCgkJIyBJUCBQYXR0ZXJuIE1hdGNoZXIKCQkjIEouQWRhbXMgPGpuYUByZXRpbmEubmV0PgoJCSMKCQkjIE1hdGNoZXM6CgkJIwoJCSMgeHh4Lnh4eC54eHgueHh4ICAgICAgICAoZXhhY3QpCgkJIyB4eHgueHh4Lnh4eC5beXl5LXp6el0gIChyYW5nZSkKCQkjIHh4eC54eHgueHh4Lnh4eC9ubiAgICAobm4gPSAjIGJpdHMsIGNpc2NvIHN0eWxlIC0tIGkuZS4gLzI0ID0gY2xhc3MgQykKCQkjCgkJIyBEb2VzIG5vdCBtYXRjaDoKCQkjIHh4eC54eHgueHh4Lnh4W3l5eS16enpdICAocmFuZ2UsIHBhcnRpYWwgb2N0ZXRzIG5vdCBzdXBwb3J0ZWQpCgkJCgkJaWYgKGVyZWcoIihbMC05XSspXC4oWzAtOV0rKVwuKFswLTldKylcLihbMC05XSspLyhbMC05XSspIiwkcmFuZ2UsJHJlZ3MpKSB7CgkJCSMgcGVyZm9ybSBhIG1hc2sgbWF0Y2gKCQkJJGlwbCA9IGlwMmxvbmcoJGlwKTsKCQkJJHJhbmdlbCA9IGlwMmxvbmcoJHJlZ3NbMV0gLiAiLiIgLiAkcmVnc1syXSAuICIuIiAuICRyZWdzWzNdIC4gIi4iIC4gJHJlZ3NbNF0pOwoJCQoJCQkkbWFza2wgPSAwOwoJCQoJCQlmb3IgKCRpID0gMDsgJGk8IDMxOyAkaSsrKSB7CgkJCQlpZiAoJGkgPCAkcmVnc1s1XS0xKSAkbWFza2wgPSAkbWFza2wgKyBwb3coMiwoMzAtJGkpKTsKCQkJfQoJCQoJCQlpZiAoKCRtYXNrbCAmICRyYW5nZWwpID09ICgkbWFza2wgJiAkaXBsKSkgewoJCQkJcmV0dXJuIDE7CgkJCX0gZWxzZSB7CgkJCQlyZXR1cm4gMDsKCQkJfQoJCX0gZWxzZSB7CgkJCSMgcmFuZ2UgYmFzZWQKCQkJJG1hc2tvY3RzID0gc3BsaXQoIlwuIiwkcmFuZ2UpOwoJCQkkaXBvY3RzID0gc3BsaXQoIlwuIiwkaXApOwoJCQoJCQkjIHBlcmZvcm0gYSByYW5nZSBtYXRjaAoJCQlmb3IgKCRpPTA7ICRpPDQ7ICRpKyspIHsKCQkJCWlmIChlcmVnKCJcWyhbMC05XSspXC0oWzAtOV0rKVxdIiwkbWFza29jdHNbJGldLCRyZWdzKSkgewoJCQkJCWlmICggKCRpcG9jdHNbJGldID4gJHJlZ3NbMl0pIHx8ICgkaXBvY3RzWyRpXSA8ICRyZWdzWzFdKSkgJHJlc3VsdCA9IDA7CgkJCQl9CgkJCQllbHNlIHsKCQkJCQlpZiAoJG1hc2tvY3RzWyRpXSA8PiAkaXBvY3RzWyRpXSkgJHJlc3VsdCA9IDA7CgkJCQl9CgkJCX0KCQl9CgkJcmV0dXJuICRyZXN1bHQ7Cgl9CgoJcHVibGljIHN0YXRpYyBmdW5jdGlvbiBnZXRDYXRlZ29yeUZyb21OYW1lKCRuYW1lKQoJewoJCSRkYiA9IGNtc21zKCktPkdldERiKCk7CgkJJHF1ZXJ5ID0gIlNFTEVDVCAqIEZST00gIi5jbXNfZGJfcHJlZml4ICgpLiJtb2R1bGVfdXBsb2Fkc19jYXRlZ29yaWVzIFdIRVJFIHVwbG9hZF9jYXRlZ29yeV9uYW1lID0gPyI7CgkJJHJvdyA9ICRkYi0+R2V0Um93KCRxdWVyeSxhcnJheSgkbmFtZSkpOwoJCWlmKCAhJHJvdyApIHJldHVybiBmYWxzZTsKCQlyZXR1cm4gJHJvdzsKCX0KCglwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIGxvYWRfY2F0ZWdvcnlfYnlfaWQoJGlkKQoJewoJCSRkYiA9IGNtc21zKCktPkdldERiKCk7CgkJJHF1ZXJ5ID0gJ1NFTEVDVCAqIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzX2NhdGVnb3JpZXMgV0hFUkUgdXBsb2FkX2NhdGVnb3J5X2lkID0gPyc7CgkJJHJvdyA9ICRkYi0+R2V0Um93KCRxdWVyeSxhcnJheSgkaWQpKTsKCQlpZiggISRyb3cgKSByZXR1cm4gZmFsc2U7CgkJcmV0dXJuICRyb3c7Cgl9CgoJcHVibGljIHN0YXRpYyBmdW5jdGlvbiBjYXRlZ29yeV9wYXRoX2luX3VzZSgkcGF0aCkKCXsKCQkkZGIgPSBjbXNtcygpLT5HZXREYigpOwoJCSRxdWVyeSA9ICdTRUxFQ1QgdXBsb2FkX2NhdGVnb3J5X2lkIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzX2NhdGVnb3JpZXMgV0hFUkUgdXBsb2FkX2NhdGVnb3J5X3BhdGggPSA/JzsKCQkkdG1wID0gJGRiLT5HZXRPbmUoJHF1ZXJ5LGFycmF5KCRwYXRoKSk7CgkJaWYoICR0bXAgKSByZXR1cm4gVFJVRTsKCQlyZXR1cm4gRkFMU0U7Cgl9CgoJcHVibGljIHN0YXRpYyBmdW5jdGlvbiBnZXRDYXRlZ29yeUxpc3QoKQoJewoJCSRkYiA9IGNtc21zKCktPkdldERCKCk7CgkJJGNhdGVnb3J5bGlzdCA9IGFycmF5KCk7CgkJJHF1ZXJ5ID0gIlNFTEVDVCAqIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX2NhdGVnb3JpZXMiOwoJCSRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHF1ZXJ5ICk7CgkJaWYoICEkZGJyZXN1bHQgKSByZXR1cm4gJGNhdGVnb3J5bGlzdDsKCQkKCQl3aGlsZSggJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKSApIHsKCQkJJGNhdGVnb3J5bGlzdFskcm93Wyd1cGxvYWRfY2F0ZWdvcnlfbmFtZSddXSA9ICRyb3dbJ3VwbG9hZF9jYXRlZ29yeV9pZCddOwoJCX0KCQlyZXR1cm4gJGNhdGVnb3J5bGlzdDsKCX0KCglwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIGdldENhdGVnb3J5UGF0aEZyb21JRCggJGNhdGVnb3J5X2lkICkKCXsKCQkkZGIgPSBjbXNtcygpLT5HZXREYigpOwoJCSRxdWVyeSA9ICJTRUxFQ1QgKiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc19jYXRlZ29yaWVzIFdIRVJFIHVwbG9hZF9jYXRlZ29yeV9pZCA9ID8iOwoJCSRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHF1ZXJ5LCBhcnJheSggJGNhdGVnb3J5X2lkICkgKTsKCQlpZiggISRkYnJlc3VsdCApIHJldHVybjsKCQkkcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdygpOwoJCWlmKCAhJHJvdyApIHJldHVybjsKCQlyZXR1cm4gJHJvd1sndXBsb2FkX2NhdGVnb3J5X3BhdGgnXTsKCX0KCglwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIGdldENhdGVnb3J5UGF0aEZyb21GaWxlSUQoICRmaWxlX2lkICkKCXsKCQkkZGIgPSBjbXNtcygpLT5HZXREYigpOwoJCSRxdWVyeSA9ICJTRUxFQ1QgKiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2FkcyBXSEVSRSB1cGxvYWRfaWQgPSA/IjsKCQkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxdWVyeSwgYXJyYXkoICRmaWxlX2lkKSApOwoJCWlmKCAhJGRicmVzdWx0ICkgcmV0dXJuOwoJCQoJCSRyb3cgPSAkZGJyZXN1bHQtPkZldGNoUm93KCk7CgkJaWYoICEkcm93ICkJcmV0dXJuOwoJCSRjYXQgPSAkcm93Wyd1cGxvYWRfY2F0ZWdvcnlfaWQnXTsKCQkkcXVlcnkgPSAiU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfY2F0ZWdvcmllcyBXSEVSRSB1cGxvYWRfY2F0ZWdvcnlfaWQgPSA/IjsKCQkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxdWVyeSwgYXJyYXkoICRjYXQgKSApOwoJCWlmKCAhJGRicmVzdWx0ICkgcmV0dXJuOwoJCSRyb3cgPSAkZGJyZXN1bHQtPkZldGNoUm93KCk7CgkJaWYoICEkcm93ICkJcmV0dXJuOwoJCXJldHVybiAkcm93Wyd1cGxvYWRfY2F0ZWdvcnlfcGF0aCddOwoJfQoKCXB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gZ2V0X2NhdGVnb3J5X2ZpbGVfbGlzdCggJGNhdGVnb3J5X2lkICkKCXsKCQkkZGIgPSBjbXNtcygpLT5HZXREYigpOwoJCSRxdWVyeSA9ICJTRUxFQ1QgKiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2FkcyBXSEVSRSB1cGxvYWRfY2F0ZWdvcnlfaWQgPSA/IjsKCQkkZmlsZWxpc3QgPSAkZGItPkdldEFycmF5KCAkcXVlcnksIGFycmF5KCAkY2F0ZWdvcnlfaWQgKSApOwoJCWlmKCAhJGZpbGVsaXN0ICkgcmV0dXJuIEZBTFNFOwoJCXJldHVybiAkZmlsZWxpc3Q7Cgl9CgoJcHVibGljIHN0YXRpYyBmdW5jdGlvbiBnZXRGaWxlTmFtZSggJGZpbGVfaWQgKQoJewoJCXRyeSB7CgkJCSRkYXRhID0gdXBsb2Fkc191dGlsczo6Z2V0X3VwbG9hZF9kZXRhaWxzKCRmaWxlX2lkKTsKCQkJcmV0dXJuICRkYXRhWyd1cGxvYWRfbmFtZSddOwoJCX0KCQljYXRjaCggRXhjZXB0aW9uICRlICkgewoJCQkvLyBub3RoaW5nIGhlcmUuCgkJfQoJfQoJCglwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIGdldEZpbGVEZXRhaWxzKCAkZmlsZV9pZCApCgl7CgkJdHJ5IHsKCQkJcmV0dXJuIHVwbG9hZHNfdXRpbHM6OmdldF91cGxvYWRfZGV0YWlscygkZmlsZV9pZCk7CgkJfQoJCWNhdGNoKCBFeGNlcHRpb24gJGUgKSB7CgkJCS8vIG5vdGhpbmcgaGVyZS4KCQl9Cgl9CgoJcHVibGljIHN0YXRpYyBmdW5jdGlvbiBfZ2V0VXBsb2FkQ2F0ZWdvcnlEZXRhaWxzKCAkY2F0ZWdvcnlfaWQgKQoJewoJCSRkYiA9IGNtc21zKCktPkdldERiKCk7CgkJJHF1ZXJ5ID0gIlNFTEVDVCAqIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX2NhdGVnb3JpZXMgV0hFUkUgdXBsb2FkX2NhdGVnb3J5X2lkID0gPyI7CgkJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcXVlcnksIGFycmF5KCAkY2F0ZWdvcnlfaWQgKSApOwoJCWlmKCAhJGRicmVzdWx0ICkgcmV0dXJuOwoJCgkJJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKTsKCQlpZiggISRyb3cgKSByZXR1cm47CgkJcmV0dXJuICRyb3c7Cgl9CgkKCXByb3RlY3RlZCBmdW5jdGlvbiBfc2NhbmRpcigkZGlyID0gJy4vJywgJHNvcnQgPSAwKQoJewoJCSRkaXJfb3BlbiA9IEBvcGVuZGlyKCRkaXIpOwoJCWlmICghICRkaXJfb3BlbikgcmV0dXJuIGZhbHNlOwoKCQkkZmlsZXMgPSBhcnJheSgpOwoJCXdoaWxlICgoJGRpcl9jb250ZW50ID0gcmVhZGRpcigkZGlyX29wZW4pKSAhPSBmYWxzZSkgewoJCQkvLyB3ZSBpZ25vcmUgaW5kZXguaHRtbCBmaWxlcyBpZiB0aGUgcHJlZmVyZW5jZSBpcyBzZXQKCQkJaWYoICRkaXJfY29udGVudCA9PSAnaW5kZXguaHRtbCcgJiYgJHRoaXMtPkdldFByZWZlcmVuY2UoJ2NyZWF0ZV9kdW1teV9pbmRleF9odG1sJykpIGNvbnRpbnVlOwoKCQkJLy8gaWdub3JlIGRvdCBmaWxlcwoJCQlpZiggcHJlZ19tYXRjaCggIi9eXC4vIiwgJGRpcl9jb250ZW50ICkgKSBjb250aW51ZTsKCQkJJGZpbGVzW10gPSAkZGlyX2NvbnRlbnQ7CgkJfQoKCQlpZiggaXNfYXJyYXkoICRmaWxlcyApICkgewoJCQlpZiAoJHNvcnQgPT0gMSkgewoJCQkJcnNvcnQoJGZpbGVzLCBTT1JUX1NUUklORyk7CgkJCX0KCQkJZWxzZSB7CgkJCQlzb3J0KCRmaWxlcywgU09SVF9TVFJJTkcpOwoJCQl9CgkJfQoJCXJldHVybiAkZmlsZXM7Cgl9CgkKCXB1YmxpYyBmdW5jdGlvbiBfaXNWYWxpZEZpbGVuYW1lICgkZmlsZW5hbWUpCgl7CgkJJGZpbGVfbmFtZSA9IHRyaW0oJGZpbGVuYW1lKTsKCQkkZXh0ZW5zaW9uID0gc3RydG9sb3dlciAoc3RycmNociAoJGZpbGVfbmFtZSwgIi4iKSk7CgoJCS8vIGNoZWNrIGZvciBleHRlbnNpb24gb3IgZG90IGZpbGUuCgkJaWYoICFzdHJwb3MoJGZpbGVfbmFtZSwnLicpICkgcmV0dXJuIGZhbHNlOwoJCgkJLy8gYXJyYXkgb2YgZmlsZXMgd2UgZG9uJ3QgYWxsb3cKCQkkZXh0X3N0ciA9ICR0aGlzLT51cGxvYWRfZXh0ZW5zaW9uczsKCQlpZiggJGV4dF9zdHIgPT0gJycgKSAkZXh0X3N0ciA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlICgidmFsaWRfdXBsb2FkZXh0ZW5zaW9ucyIpOwoJCSRleHRfYXJyYXkgPSBleHBsb2RlKCIsIiwgJGV4dF9zdHIpOwoJCSRleHRfY291bnQgPSBjb3VudCAoJGV4dF9hcnJheSk7CgkKCQlpZiAoISRmaWxlX25hbWUpIHsKCQkJcmV0dXJuIGZhbHNlOwoJCX0KCQllbHNlIHsKCQkJaWYgKGVtcHR5KCRleHRfYXJyYXkpIHx8ICEkZXh0X2FycmF5KSB7CgkJCQlyZXR1cm4gdHJ1ZTsKCQkJfQoJCQllbHNlIHsKCQkJCWZvcmVhY2ggKCRleHRfYXJyYXkgYXMgJHZhbHVlKSB7CgkJCQkJJGZpcnN0X2NoYXIgPSBzdWJzdHIgKCR2YWx1ZSwgMCwgMSk7CgkJCQkJaWYgKCRmaXJzdF9jaGFyIDw+ICIuIikgewoJCQkJCQkkZXh0ZW5zaW9uc1tdID0gIi4iLnN0cnRvbG93ZXIgKCR2YWx1ZSk7CgkJCQkJfQoJCQkJCWVsc2UgewoJCQkJCQkkZXh0ZW5zaW9uc1tdID0gc3RydG9sb3dlciAoJHZhbHVlKTsKCQkJCQl9CgkJCQl9CgoJCQkJJHZhbGlkX2V4dGVuc2lvbiA9IGZhbHNlOwoJCQkJZm9yZWFjaCAoJGV4dGVuc2lvbnMgYXMgJHZhbHVlKSB7CgkJCQkJaWYgKCR2YWx1ZSA9PSAkZXh0ZW5zaW9uKSB7CgkJCQkJCSR2YWxpZF9leHRlbnNpb24gPSB0cnVlOwoJCQkJCQlicmVhazsKCQkJCQl9CgkJCQl9CgkJCQlyZXR1cm4gJHZhbGlkX2V4dGVuc2lvbjsKCQkJfQoJCX0KCX0KCgogIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgRU5EIE9GIFVUSUxJVFkgRlVOQ1RJT05TCiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCgogIHB1YmxpYyBmdW5jdGlvbiBHZXRIZWFkZXJIVE1MKCkKICB7CiAgICAkdHh0ID0gcGFyZW50OjpHZXRIZWFkZXJIVE1MKCk7CgkJJG9iaiA9IGNtc191dGlsczo6Z2V0X21vZHVsZSgnSlF1ZXJ5VG9vbHMnLCcxLjInKTsKICAgIGlmKCBpc19vYmplY3QoJG9iaikgKSB7CiR0bXBsID0gPDw8RU9UCntKUXVlcnlUb29scyBhY3Rpb249J3JlcXVpcmUnIGxpYj0ndGFibGVzb3J0ZXIsanF1ZXJ5dG9vbHMnfQp7SlF1ZXJ5VG9vbHMgYWN0aW9uPSdwbGFjZW1hcmtlcid9CkVPVDsKICAgICAgJHR4dCAuPSAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlRnJvbURhdGEoJHRtcGwpOwogICAgfQogICAgcmV0dXJuICR0eHQ7CiAgfQkKCglwdWJsaWMgZnVuY3Rpb24gR2V0RXZlbnREZXNjcmlwdGlvbiggJG5hbWUgKQoJewoJCXN3aXRjaCAoICRuYW1lICkgewoJCWNhc2UgJ09uVXBsb2FkJzoKCQkJcmV0dXJuICR0aGlzLT5MYW5nKCdpbmZvX2V2ZW50X29udXBsb2FkJyk7CgkJCWJyZWFrOwoJCWNhc2UgJ09uUmVtb3ZlJzoKCQkJcmV0dXJuICR0aGlzLT5MYW5nKCdpbmZvX2V2ZW50X29ucmVtb3ZlJyk7CgkJCWJyZWFrOwoJCWNhc2UgJ09uRG93bmxvYWQnOgoJCQlyZXR1cm4gJHRoaXMtPkxhbmcoJ2luZm9fZXZlbnRfb25kb3dubG9hZCcpOwoJCQlicmVhazsKCQljYXNlICdPbkNyZWF0ZUNhdGVnb3J5JzoKCQkJcmV0dXJuICR0aGlzLT5MYW5nKCdpbmZvX2V2ZW50X29uY3JlYXRlY2F0ZWdvcnknKTsKCQkJYnJlYWs7CgkJY2FzZSAnT25EZWxldGVDYXRlZ29yeSc6CgkJCXJldHVybiAkdGhpcy0+TGFuZygnaW5mb19ldmVudF9vbmRlbGV0ZWNhdGVnb3J5Jyk7CgkJCWJyZWFrOwoJCX0KCQlyZXR1cm4gIiI7Cgl9CgoJcHVibGljIGZ1bmN0aW9uIFNldFBhcmFtZXRlcnMgKCkKCXsKICAgIHBhcmVudDo6U2V0UGFyYW1ldGVycygpOwogICAgCgkJJHRoaXMtPlJlZ2lzdGVyTW9kdWxlUGx1Z2luKCk7CgkJJHRoaXMtPlJlc3RyaWN0VW5rbm93blBhcmFtcygpOwoKCQkkdGhpcy0+UmVnaXN0ZXJSb3V0ZSgnL1tVdV1wbG9hZHNcLyg/UDx1cGxvYWRfaWQ+WzAtOV0rKVwvKD9QPGp1bms+Lio/KSQvJywKCQkJYXJyYXkoJ3Nob3d0ZW1wbGF0ZSc9PidmYWxzZScsICdhY3Rpb24nPT4nZ2V0ZmlsZScpKTsKCQkkdGhpcy0+UmVnaXN0ZXJSb3V0ZSgnL1tVdV1wbG9hZHNcL2xpbWl0ZWRcLyg/UDx1cmxfa2V5Pi4qPykkLycsIGFycmF5KCdzaG93dGVtcGxhdGUnPT4nZmFsc2UnLCAnYWN0aW9uJz0+J2dldGZpbGUnKSk7CgkJJHRoaXMtPlJlZ2lzdGVyUm91dGUoJy9bVXVdcGxvYWRzXC9maWxlXC8oP1A8cmV0dXJuaWQ+WzAtOV0rKVwvKD9QPHVwbG9hZF9pZD5bMC05XSspXC8oP1A8anVuaz4uKj8pJC8nLAoJCQkJCQkJCQkJCQkgYXJyYXkoJ2FjdGlvbic9PidkZXRhaWwnKSk7CgkJCgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcigna2V5JywgJ3ZhbHVlJywgJHRoaXMtPkxhbmcoJ3BhcmFtX2tleScpKTsKCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdub2F1dGhvcicsICcxJywgJHRoaXMtPkxhbmcoJ3BhcmFtX25vYXV0aG9yJykpOwoJCSR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ3VwbG9hZF9pZCcsJ2lkJywkdGhpcy0+TGFuZygncGFyYW1fdXBsb2FkX2lkJykpOwoJCSR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ2NvdW50JywnJywkdGhpcy0+TGFuZygncGFyYW1fY291bnQnKSk7CgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignc29ydG9yZGVyJywnZGF0ZV9hc2MnLCR0aGlzLT5MYW5nKCdwYXJhbV9zb3J0b3JkZXInKSk7CgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignZmlsZV9leHRlbnNpb25zJywnZXh0MSxleHQyLGV4dDMnLCR0aGlzLT5MYW5nKCdwYXJhbV9maWxlZXh0ZW5zaW9ucycpKTsKCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdjYXRlZ29yeScsJ3VwbG9hZF9jYXRlZ29yeScsJHRoaXMtPkxhbmcoJ3BhcmFtX2NhdGVnb3J5JyksZmFsc2UpOwoJCSR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ2ZpbHRlcicsJycsJHRoaXMtPkxhbmcoJ3BhcmFtX2ZpbHRlcicpKTsKCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdub19pbml0aWFsJywnMScsJHRoaXMtPkxhbmcoJ3BhcmFtX25vX2luaXRpYWwnKSk7CgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignbW9kZScsJ3N1bW1hcnknLCR0aGlzLT5MYW5nKCdwYXJhbV9tb2RlJyksZmFsc2UpOwoJCSR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ3RlbXBsYXRlJywnJywkdGhpcy0+TGFuZygncGFyYW1fdGVtcGxhdGUnKSk7CgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignZGV0YWlsdGVtcGxhdGUnLCcnLCR0aGlzLT5MYW5nKCdwYXJhbV9kZXRhaWx0ZW1wbGF0ZScpKTsKCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdub2NhcHRjaGEnLCcnLCR0aGlzLT5MYW5nKCdwYXJhbV9ub2NhcHRjaGEnKSk7CgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignZmlsZXR5cGVzJywnJywkdGhpcy0+TGFuZygncGFyYW1fZmlsZXR5cGVzJykpOwoJCSR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ3NlbGVjdG5hbWUnLCcnLCR0aGlzLT5MYW5nKCdwYXJhbV9zZWxlY3RuYW1lJykpOwoJCSR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ3NlbGVjdG5vbmUnLCcnLCR0aGlzLT5MYW5nKCdwYXJhbV9zZWxlY3Rub25lJykpOwoJCSR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ3NlbGVjdHZhbHVlJywnJywkdGhpcy0+TGFuZygncGFyYW1fc2VsZWN0dmFsdWUnKSk7CgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignc2VsZWN0Zm9ybScsJycsJHRoaXMtPkxhbmcoJ3BhcmFtX3NlbGVjdGZvcm0nKSk7CgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcigncHJlZml4JywwLCR0aGlzLT5MYW5nKCdwYXJhbV9wcmVmaXgnKSk7CgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcigncHJlZml4X2ZldScsMCwkdGhpcy0+TGFuZygncGFyYW1fcHJlZml4X2ZldScpKTsKCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdkZXRhaWxwYWdlJywnJywkdGhpcy0+TGFuZygncGFyYW1fZGV0YWlscGFnZScpKTsKCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdsaXN0aW5ndGVtcGxhdGUnLCcnLCR0aGlzLT5MYW5nKCdwYXJhbV9saXN0aW5ndGVtcGxhdGUnKSk7CgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignbGlzdGluZ3NvcnRvcmRlcicsJycsJHRoaXMtPkxhbmcoJ3BhcmFtX2xpc3Rpbmdzb3J0b3JkZXInKSk7CgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignc2VuZGZpbGVwYWdlJywnJywkdGhpcy0+TGFuZygncGFyYW1fc2VuZGZpbGVwYWdlJykpOwoJCSR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ2FjdGlvbicsJ2RlZmF1bHQnLCR0aGlzLT5MYW5nKCdwYXJhbV9hY3Rpb24nKSk7CgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignZmllbGRuYW1lJywnJywkdGhpcy0+TGFuZygncGFyYW1fZmllbGRuYW1lJykpOwoJCSR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ2ZpZWxkdmFsJywnJywkdGhpcy0+TGFuZygncGFyYW1fZmllbGR2YWwnKSk7CgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignZmllbGRuYW1lMicsJycsJHRoaXMtPkxhbmcoJ3BhcmFtX2ZpZWxkbmFtZScpKTsKCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdmaWVsZHZhbDInLCcnLCR0aGlzLT5MYW5nKCdwYXJhbV9maWVsZHZhbCcpKTsKCQkKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnanVuaycsQ0xFQU5fU1RSSU5HKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgna2V5JyxDTEVBTl9TVFJJTkcpOwoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdub2F1dGhvcicsQ0xFQU5fSU5UKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgndXBsb2FkX2lkJyxDTEVBTl9JTlQpOwoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdjb3VudCcsQ0xFQU5fSU5UKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnc29ydG9yZGVyJyxDTEVBTl9TVFJJTkcpOwoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdmaWxlX2V4dGVuc2lvbnMnLENMRUFOX1NUUklORyk7CgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2NhdGVnb3J5JywgQ0xFQU5fU1RSSU5HKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnZmlsdGVyJyxDTEVBTl9TVFJJTkcpOwoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdub19pbml0aWFsJyxDTEVBTl9JTlQpOwoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdtb2RlJyxDTEVBTl9TVFJJTkcpOwoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCd0ZW1wbGF0ZScsQ0xFQU5fU1RSSU5HKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnZGV0YWlsdGVtcGxhdGUnLENMRUFOX1NUUklORyk7CgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ25vY2FwdGNoYScsQ0xFQU5fSU5UKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnZmlsZXR5cGVzJyxDTEVBTl9TVFJJTkcpOwoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdzZWxlY3RuYW1lJyxDTEVBTl9TVFJJTkcpOwoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdzZWxlY3Rub25lJyxDTEVBTl9JTlQpOwoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdzZWxlY3R2YWx1ZScsQ0xFQU5fU1RSSU5HKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnc2VsZWN0Zm9ybScsQ0xFQU5fU1RSSU5HKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVydHlwZSgncHJlZml4JyxDTEVBTl9JTlQpOwoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJ0eXBlKCdwcmVmaXhfZmV1JyxDTEVBTl9JTlQpOwoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdkZXRhaWxwYWdlJyxDTEVBTl9TVFJJTkcpOwoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdzZW5kZmlsZXBhZ2UnLENMRUFOX1NUUklORyk7CgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ3VybF9rZXknLENMRUFOX1NUUklORyk7CgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2ZpZWxkbmFtZScsQ0xFQU5fU1RSSU5HKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnZmllbGR2YWwnLENMRUFOX1NUUklORyk7CgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2ZpZWxkbmFtZTInLENMRUFOX1NUUklORyk7CgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2ZpZWxkdmFsMicsQ0xFQU5fU1RSSU5HKTsKCgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2lucHV0X2tleScsQ0xFQU5fU1RSSU5HKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnaW5wdXRfYXV0aG9yJyxDTEVBTl9TVFJJTkcpOwoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdpbnB1dF9zdW1tYXJ5JyxDTEVBTl9TVFJJTkcpOwoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdpbnB1dF9kZXNjcmlwdGlvbicsQ0xFQU5fU1RSSU5HKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnaW5wdXRfZGVzdG5hbWUnLENMRUFOX1NUUklORyk7CgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2lucHV0X3JlcGxhY2UnLENMRUFOX0lOVCk7CgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2lucHV0X2NhcHRjaGEnLENMRUFOX1NUUklORyk7CgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2RvX3VwbG9hZGZpbGUnLENMRUFOX1NUUklORyk7CgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ25vb3V0cHV0JyxDTEVBTl9JTlQpOwoJCQoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdsaXN0aW5ndGVtcGxhdGUnLENMRUFOX1NUUklORyk7CgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2xpc3Rpbmdzb3J0b3JkZXInLENMRUFOX1NUUklORyk7CgkJCgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2lucHV0X2ZpbHRlcicsQ0xFQU5fU1RSSU5HKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnaGlkZGVuX3BhcmFtcycsQ0xFQU5fU1RSSU5HKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnaW5wdXRfc3VibWl0JyxDTEVBTl9TVFJJTkcpOwoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdpbnB1dF9zZW5kdG8nLENMRUFOX1NUUklORyk7CgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2lucHV0X3N1YmplY3QnLENMRUFOX1NUUklORyk7CgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2lucHV0X25vdGVzJyxDTEVBTl9TVFJJTkcpOwoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdpbnB1dF9jYW5jZWwnLENMRUFOX1NUUklORyk7CgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ3BhZ2VudW0nLENMRUFOX0lOVCk7CiAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZShDTEVBTl9SRUdFWFAuJy9maWVsZF8uKi8nLENMRUFOX1NUUklORyk7CgoJCXVwbG9hZHNfc21hcnR5Ojppbml0KCk7IC8vIGluaXRpYWxpemUgc21hcnR5IHBsdWdpbnMKCX0KCglwdWJsaWMgZnVuY3Rpb24gVmlzaWJsZVRvQWRtaW5Vc2VyICgpCgl7CgkJcmV0dXJuICR0aGlzLT5DaGVja1Blcm1pc3Npb24gKCdNYW5hZ2UgVXBsb2FkcycpIHx8CSR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBUZW1wbGF0ZXMnKSB8fAoJCQkkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdVcGxvYWQgRmlsZXMgdG8gVXBsb2FkcycpIHx8ICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBTaXRlIFByZWZlcmVuY2VzJykgfHwKCQkJJHRoaXMtPkNoZWNrUGVybWlzc2lvbignQ3JlYXRlIFVwbG9hZHMgUmVwb3J0cycpOwoJfQoKCXB1YmxpYyBmdW5jdGlvbiBEb0FjdGlvbiAoJGFjdGlvbiwgJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQgPSAtMSkKCXsKCQlzd2l0Y2ggKCRhY3Rpb24pIHsKCQljYXNlICdkb19kZWxldGVjYXRlZ29yeSc6CgkJCS8vIGNoZWNrIHBlcm1pc3Npb25zIGFnYWluCgkJCWlmICgkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uICgnTWFuYWdlIFVwbG9hZHMnKSkgewoJCQkJJGRlbGV0ZV9kaXIgPSBmYWxzZTsKCQkJCWlmKCAhaXNzZXQoJHBhcmFtc1snY2F0ZWdvcnlfaWQnXSkgKSB7CgkJCQkJJHRoaXMtPlNldEVycm9yKCR0aGlzLT5MYW5nKCdlcnJvcl9taXNzaW5nX2ludmFsaWQnLCdjYXRlZ29yeV9pZCcpKTsKCQkJCQkkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsJ2NhdGVnb3JpZXMnKTsKCQkJCX0KCQkJCWlmKCBpc3NldCgkcGFyYW1zWydpbnB1dF9kZWxldGVkaXJlY3RvcnknXSkgJiYgJHBhcmFtc1snaW5wdXRfZGVsZXRlZGlyZWN0b3J5J10gKSAkZGVsZXRlX2RpciA9IHRydWU7CgkJCQkkbXNnID0gJHRoaXMtPl9BZG1pbkRvRGVsZXRlQ2F0ZWdvcnkoJHBhcmFtc1snY2F0ZWdvcnlfaWQnXSwkZGVsZXRlX2Rpcik7CgkJCQlpZiggJG1zZyApICR0aGlzLT5TZXRFcnJvcigkbXNnKTsKCQkJCSR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwnY2F0ZWdvcmllcycpOwoJCQl9CgkJCWJyZWFrOwoJCgkJY2FzZSAnZG9fZGVsZXRldXBsb2FkJzoKCQkJLy8gY2hlY2sgcGVybWlzc2lvbnMgYWdhaW4KCQkJaWYoICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01hbmFnZSBVcGxvYWRzJykgfHwgJHRoaXMtPkNoZWNrUGVybWlzc2lvbignVXBsb2FkIEZpbGVzIHRvIFVwbG9hZHMnKSkgewoJCQkJaWYoICFpc3NldCggJHBhcmFtc1sndXBsb2FkX2lkJ10gKSApIHsKCQkJCQkkbW9kdWxlLT5fRGlzcGxheUVycm9yUGFnZSAoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsICRtb2R1bGUtPkxhbmcgKCdlcnJvcl9pbnN1ZmZpY2llbnRwYXJhbXMnLCd1cGxvYWRfaWQnKSk7CgkJCQkJcmV0dXJuOwoJCQkJfQoKCQkJCSRtc2cgPSAkdGhpcy0+X0FkbWluRG9EZWxldGVVcGxvYWQoJHBhcmFtc1sndXBsb2FkX2lkJ10sdHJ1ZSk7CgkJCQlpZiggJG1zZyApICR0aGlzLT5TZXRFcnJvcigkbXNnKTsKCQkJCSR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwgJ2ZpbGVzJywgYXJyYXkoICdpbnB1dF9jYXRlZ29yeScgPT4gJHVwbG9hZHJvd1sndXBsb2FkX2NhdGVnb3J5X2lkJ10pKTsKCQkJfQoJCQlicmVhazsKCQoJCWNhc2UgJ3VwZGF0ZWVtYWlsdGVtcGxhdGUnOgoJCQkvLyBjaGVjayBwZXJtaXNzaW9ucyBhZ2FpbgoJCQlpZiAoJHRoaXMtPkNoZWNrUGVybWlzc2lvbiAoJ01vZGlmeSBUZW1wbGF0ZXMnKSkgewoJCQkJaWYgKGlzc2V0ICgkcGFyYW1zWydkZWZhdWx0YnV0dG9uJ10pKSB7CgkJCQkJJGZuID0gX19ESVJfXy4nL3RlbXBsYXRlcy9vcmlnX2VtYWlsbm90aWZ5X3RlbXBsYXRlLnRwbCc7CgkJCQkJaWYoIGZpbGVfZXhpc3RzKCRmbikgKSB7CgkJCQkJCSR0ZW1wbGF0ZSA9IEBmaWxlX2dldF9jb250ZW50cygkZm4pOwoJCQkJCQkkdGhpcy0+U2V0VGVtcGxhdGUoICd1cGxvYWRfZW1haWx0ZW1wbGF0ZScsICR0ZW1wbGF0ZSk7CgkJCQkJfQoJCQkJfQoJCQkJZWxzZSB7CgkJCQkJJHRoaXMtPlNldFRlbXBsYXRlICgndXBsb2FkX2VtYWlsdGVtcGxhdGUnLCAkcGFyYW1zWyd0ZW1wbGF0ZWNvbnRlbnQnXSk7CgkJCQl9CgkJCQkkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsICdlbWFpbF90ZW1wbGF0ZScsICcnLCAnYWRtaW5fdGVtcGxhdGVzJyk7CgkJCX0KCgkJY2FzZSAndXBkYXRlc2VuZGZpbGVlbWFpbCc6CgkJCS8vIGNoZWNrIHBlcm1pc3Npb25zIGFnYWluCgkJCWlmICgkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uICgnTW9kaWZ5IFRlbXBsYXRlcycpKSB7CgkJCQlpZiAoaXNzZXQgKCRwYXJhbXNbJ2RlZmF1bHRidXR0b24nXSkpIHsKCQkJCQkvLyB0ZW1wbGF0ZSB1c2VkIGZvciBzZW5kZmlsZSBlbWFpbAoJCQkJCSRmbiA9IF9fRElSX18uJy90ZW1wbGF0ZXMvb3JpZ19zZW5kZmlsZXJwdF90ZW1wbGF0ZS50cGwnOwoJCQkJCWlmKCBmaWxlX2V4aXN0cygkZm4pICkgewoJCQkJCQkkdGVtcGxhdGUgPSBAZmlsZV9nZXRfY29udGVudHMoJGZuKTsKCQkJCQkJJHRoaXMtPlNldFRlbXBsYXRlKCAndXBsb2FkX3NlbmRmaWxlcnB0JywgJHRlbXBsYXRlKTsKCQkJCQl9CgkJCQl9CgkJCQllbHNlIHsKCQkJCQkkdGhpcy0+U2V0VGVtcGxhdGUgKCd1cGxvYWRfc2VuZGZpbGVycHQnLCAkcGFyYW1zWyd0ZW1wbGF0ZWNvbnRlbnQnXSk7CgkJCQl9CgkJCQkkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsICdlbWFpbF90ZW1wbGF0ZScsICcnLCAnYWRtaW5fdGVtcGxhdGVzJyk7CgkJCX0KCgkJZGVmYXVsdDoKCQkJcGFyZW50OjpEb0FjdGlvbiggJGFjdGlvbiwgJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQgKTsKCQkJYnJlYWs7CgkJfQoJfQoKCgkvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJU2VhcmNoUmVzdWx0KCRyZXR1cm5pZCwkYXJ0aWNsZWlkLCRhdHRyPScnKQoJLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KCXB1YmxpYyBmdW5jdGlvbiBTZWFyY2hSZXN1bHQoJHJldHVybmlkLCAkYXJ0aWNsZWlkLCAkYXR0ciA9ICcnKQoJewoJCSRkYiA9IGNtc21zKCktPkdldERiKCk7CgkJJHJlc3VsdCA9IGFycmF5KCk7CgkJaWYoICRhdHRyID09ICd1cGxvYWQnKSB7CgkJCS8vIGdldCB0aGUgY2F0ZWdvcnkgaWQgZm9yIGFuIHVwbG9hZCBpZAoJCQkkZGV0YWlscyA9ICR0aGlzLT5HZXRVcGxvYWREZXRhaWxzKCRhcnRpY2xlaWQsJycpOwoJCgkJCS8vIG5vdyBnZXQgdGhlIGNhdGVnb3J5IG5hbWUgaW5zdGVhZCBvZiB0aGUgY2F0ZWdvcnkgaWQsIGdvZCAKCQkJLy8gd2FzIEkgc3R1cGlkLgoJCQkkcSA9ICJTRUxFQ1QgdXBsb2FkX2NhdGVnb3J5X25hbWUgQVMgbmFtZSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc19jYXRlZ29yaWVzIFdIRVJFIHVwbG9hZF9jYXRlZ29yeV9pZCA9ID8iOwoJCQkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxLCBhcnJheSgkZGV0YWlsc1sndXBsb2FkX2NhdGVnb3J5X2lkJ10pICk7CgkJCWlmKCAhJGRicmVzdWx0IHx8ICEkZGJyZXN1bHQtPlJlY29yZENvdW50KCkgKSB7CgkJCQlkaWUoICdkYXRhYmFzZSBlcnJvcicgKTsKCQkJCS8vIHRvZG8sIGF1ZGl0CgkJCQlyZXR1cm47CgkJCX0KCQkJJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKTsKCQkJJHJlc3VsdFswXSA9ICR0aGlzLT5HZXRGcmllbmRseU5hbWUoKTsKCQkJJHJlc3VsdFsxXSA9ICRkZXRhaWxzWyd1cGxvYWRfbmFtZSddOwoJCQkkcmVzdWx0WzJdID0gJHRoaXMtPkNyZWF0ZUxpbmsoICRhcnRpY2xlaWQsICdkZWZhdWx0JywgJHJldHVybmlkLCAkZGV0YWlsc1sndXBsb2FkX25hbWUnXSwKCQkJCQkJCQkJCQkJCQkJCQkJCWFycmF5KCdtb2RlJz0+J3NpbmdsZScsJ3VwbG9hZF9pZCcgPT4gJGFydGljbGVpZCwnY2F0ZWdvcnknID0+ICRyb3dbJ25hbWUnXSApLCAnJywgdHJ1ZSk7CgkJCXJldHVybiAkcmVzdWx0OwoJCX0KCX0KCgoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCVNlYXJjaFJlSW5kZXgoJG1vZHVsZSkKCS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCglwdWJsaWMgZnVuY3Rpb24gU2VhcmNoUmVJbmRleCgmJG1vZHVsZSkKCXsKCQkkZGIgPSBjbXNtcygpLT5HZXREYigpOwoJCQoJCSRxdWVyeSA9ICJTRUxFQ1QgdXBsb2FkX2lkLCB1cGxvYWRfbmFtZSwgdXBsb2FkX2F1dGhvciwgdXBsb2FkX3N1bW1hcnksIHVwbG9hZF9kZXNjcmlwdGlvbiwgdXBsb2FkX2lwLCB1cGxvYWRfZGF0ZSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2FkcyBBLCAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfY2F0ZWdvcmllcyBCIFdIRVJFIEEudXBsb2FkX2NhdGVnb3J5X2lkID0gQi51cGxvYWRfY2F0ZWdvcnlfaWQgQU5EIEIudXBsb2FkX2NhdGVnb3J5X2xpc3RhYmxlID0gPyI7CgkJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcXVlcnksIGFycmF5KCAxICkgKTsKCQlpZiggISRkYnJlc3VsdCApIGRpZSggJGRiLT5FcnJvck1zZygpICk7CgoJCXdoaWxlKCAkcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdygpICkgewoJCQkkc3RyID0gJHJvd1sndXBsb2FkX25hbWUnXS4nICcuJHJvd1sndXBsb2FkX2F1dGhvciddLicgJy4KCQkJJHJvd1sndXBsb2FkX3N1bW1hcnknXS4nICcuJHJvd1sndXBsb2FkX2Rlc2NyaXB0aW9uJ107CgkJCSRtb2R1bGUtPkFkZFdvcmRzKCAkdGhpcy0+R2V0TmFtZSgpLCAkcm93Wyd1cGxvYWRfaWQnXSwgJ3VwbG9hZCcsICRzdHIgKTsKCQl9Cgl9CgogIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgIEJFR0lOIE9GIFVJIFNVUFBPUlQgRlVOQ1RJT05TCiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCgoJcHJvdGVjdGVkIGZ1bmN0aW9uIF9BZG1pbkRvRGVsZXRlQ2F0ZWdvcnkgKCRjYXRlZ29yeV9pZCkKCXsKCQlVcGxvYWRzOjpsb2FkX2FkbWluKCk7CgkJcmV0dXJuIF91cGxvYWRzX0FkbWluRG9EZWxldGVDYXRlZ29yeSgkdGhpcywkY2F0ZWdvcnlfaWQpOwoJfQoKCXByb3RlY3RlZCBmdW5jdGlvbiBfQWRtaW5Eb0RlbGV0ZVVwbG9hZCAoJHVwbG9hZF9pZCwkZGVsZXRlX2ZpbGUgPSBmYWxzZSkKCXsKCQlVcGxvYWRzOjpsb2FkX2FkbWluKCk7CgkJcmV0dXJuIF91cGxvYWRzX0FkbWluRG9EZWxldGVVcGxvYWQoJHRoaXMsJHVwbG9hZF9pZCwkZGVsZXRlX2ZpbGUpOwogIH0KCiAgcHJvdGVjdGVkIGZ1bmN0aW9uIF9EaXNwbGF5RXJyb3JQYWdlICgkaWQsICYkcGFyYW1zLCAkcmV0dXJuaWQsICRtZXNzYWdlID0gJycpCiAgewogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgndGl0bGVfZXJyb3InLCAkdGhpcy0+TGFuZyAoJ2Vycm9yJykpOwogICAgaWYgKCRtZXNzYWdlICE9ICcnKSAkdGhpcy0+c21hcnR5LT5hc3NpZ24gKCdtZXNzYWdlJywgJG1lc3NhZ2UpOwogICAgaWYoICRyZXR1cm5pZCA9PSAnJyApIHsKCQkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdsaW5rJywJJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCdkZWZhdWx0YWRtaW4nLCRyZXR1cm5pZCwJJHRoaXMtPkxhbmcoJ3JldHVybnRvbW9kdWxlJykpKTsKCQl9CgogICAgLy8gRGlzcGxheSB0aGUgcG9wdWxhdGVkIHRlbXBsYXRlCiAgICBlY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUgKCdlcnJvci50cGwnKTsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBHZXRVcGxvYWREZXRhaWxzKCAkaWQsICRyZXR1cm5pZCA9ICcnICkKICB7CiAgICAkcm93ID0gJHRoaXMtPmdldEZpbGVEZXRhaWxzKCRpZCk7CiAgICBpZiggISRyb3cgKSB7CgkJCSRkYiA9IGNtc21zKCktPkdldERiKCk7CgkJCXJldHVybiBhcnJheShGQUxTRSwgJGRiLT5FcnJvck1zZygpKTsKCQl9CgogICAgLy8gaGF2ZSBkZXRhaWxzIGZyb20gdGhlIHRhYmxlLCBub3cKICAgIC8vIGhhdmUgdG8gYWRkIHNvbWV0aGluZyBzdWNoIHRoYXQgYSBsaW5rIGNhbiBiZSBnZW5lcmF0ZWQKICAgIC8vIHRoYXQgd2lsbCBzdGlsbCBjb3VudCB0aGUgbnVtYmVyIG9mIGRvd25sb2FkcywgZXRjCiAgICAkcm93Wyd1cmwnXSA9ICR0aGlzLT5DcmVhdGVMaW5rICgkaWQsICdnZXRmaWxlJywgJHJldHVybmlkLCAnJywgYXJyYXkgKCd1cGxvYWRfaWQnID0+ICRyb3dbJ3VwbG9hZF9pZCddKSwgCgkJCQkJCQkJCQkJCQkJCQkJCSAnJywgdHJ1ZSwgdHJ1ZSwgJycsIGZhbHNlLCAkdGhpcy0+X2dldEZpbGVVUkwoJHJvd1sndXBsb2FkX2lkJ10sJHJvd1sndXBsb2FkX25hbWUnXSkpOwoJCSRyb3dbJ2Rvd25sb2FkX3VybCddID0gJHJvd1sndXJsJ107CgogICAgJHJvd1snbGluayddID0gJHRoaXMtPkNyZWF0ZUxpbmsgKCRpZCwgJ2dldGZpbGUnLCAkcmV0dXJuaWQsICRyb3dbJ3VwbG9hZF9uYW1lJ10sCWFycmF5ICgndXBsb2FkX2lkJyA9PiAkcm93Wyd1cGxvYWRfaWQnXSksCgkJCQkJCQkJCQkJCQkJCQkJCQknJywgZmFsc2UsIHRydWUsICcnLCBmYWxzZSwJJHRoaXMtPl9nZXRGaWxlVVJMKCRyb3dbJ3VwbG9hZF9pZCddLCRyb3dbJ3VwbG9hZF9uYW1lJ10pKTsKCQkkY29uZmlnID0gY21zbXMoKS0+R2V0Q29uZmlnKCk7CiAgICAkcm93WydhYnN1cmwnXSA9ICRjb25maWdbJ3VwbG9hZHNfdXJsJ10uIi8iLgogICAgICAkdGhpcy0+Z2V0Q2F0ZWdvcnlQYXRoRnJvbUZpbGVJRCggJHJvd1sndXBsb2FkX2lkJ10gKS4iLyIuCiAgICAgICRyb3dbJ3VwbG9hZF9uYW1lJ107CiAgICByZXR1cm4gJHJvdzsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBHZXRDYXRlZ29yeUZpbGVzKCRjYXRlZ29yeV9pZCkKICB7CgkJJGdDbXMgPSBjbXNtcygpOwoJCSRkYiA9ICRnQ21zLT5HZXREYigpOwoKCQkkcXVlcnkgPSAnU0VMRUNUIHVwbG9hZF9pZCx1cGxvYWRfbmFtZSBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2FkcyBVIFdIRVJFIHVwbG9hZF9jYXRlZ29yeV9pZCA9ID8nOwoJCSR0bXAgPSAkZGItPkdldEFycmF5KCRxdWVyeSxhcnJheSgkY2F0ZWdvcnlfaWQpKTsKCQlpZiggISR0bXAgKSByZXR1cm4gRkFMU0U7CgoJCSRkYXRhID0gYXJyYXkoKTsKCQlmb3IoICRpID0gMDsgJGkgPCBjb3VudCgkdG1wKTsgJGkrKyApIHsKCQkJJGRhdGFbJHRtcFskaV1bJ3VwbG9hZF9pZCddXSA9ICR0bXBbJGldWyd1cGxvYWRfbmFtZSddOwoJCX0KCQlyZXR1cm4gJGRhdGE7CiAgfQoJICAgCiAgcHVibGljIGZ1bmN0aW9uIEF0dGVtcHRVcGxvYWQgKCRpZCwgJiRwYXJhbXMsICRyZXR1cm5pZCkKICB7CgkJLy8gZGVwcmVjYXRlZC4uLiB0aGlzIHN0dWZmIHNob3VsZCB1c2UgdGhlIHVwbG9hZHNfdXBsb2FkYXNzaXN0YW50IGNsYXNzLgoJCVVwbG9hZHM6OmxvYWRfY29tbW9uKCk7CgkJcmV0dXJuIF91cGxvYWRzX0F0dGVtcHRVcGxvYWQoJHRoaXMsJGlkLCRwYXJhbXMsJHJldHVybmlkKTsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBfaGFuZGxlVXBsb2FkICgkZGVzdERpciwgJGZpZWxkTmFtZSA9ICdfdXBsb2FkJywgJG5hbWVDYWxsYmFjayA9IGZhbHNlLCAkZGVzdG5hbWUgPSAnJywkZW5mb3JjZWV4dGVuc2lvbiA9IHRydWUsCQoJCQkJCQkJCQkJCQkJCQkJICRyZXBsYWNlX2V4aXN0aW5nID0gZmFsc2UsICRmaWxlbmFtZVByZWZpeCA9ICcnKQogIHsKCQkvLyBkZXByZWNhdGVkLi4uIHRoaXMgc3R1ZmYgc2hvdWxkIHVzZSB0aGUgdXBsb2Fkc191cGxvYWRhc3Npc3RhbnQgY2xhc3MuCgkJVXBsb2Fkczo6bG9hZF9jb21tb24oKTsKCQlyZXR1cm4gX3VwbG9hZHNfaGFuZGxlVXBsb2FkKCR0aGlzLCRkZXN0RGlyLCAkZmllbGROYW1lLCAkbmFtZUNhbGxiYWNrLCAkZGVzdG5hbWUsICRlbmZvcmNlZXh0ZW5zaW9uLAoJCQkJCQkJCQkJCQkJCQkJICRyZXBsYWNlX2V4aXN0aW5nLCAkZmlsZW5hbWVQcmVmaXgpOwogIH0KCiAgcHJvdGVjdGVkIGZ1bmN0aW9uIFNjYW5EaXJlY3RvcnkoJGNhdGVnb3J5X2lkLCAkZGlyICkKICB7CgkJJGNhdGVnb3J5ID0gVXBsb2Fkczo6bG9hZF9jYXRlZ29yeV9ieV9pZCgkY2F0ZWdvcnlfaWQpOwoJCWlmKCAhJGNhdGVnb3J5ICkgcmV0dXJuOwoKICAgICRkYiA9IGNtc21zKCktPkdldERiKCk7CiAgICAkZGVzYyA9ICJGaWxlIFNjYW5uZWQgYXQgIi5zdHJmdGltZSgnJXggJVgnKTsKCQkkbm93ID0gJGRiLT5EYlRpbWVTdGFtcCh0aW1lKCkpOwoKICAgICRmaWxlcyA9ICR0aGlzLT5fc2NhbmRpciggJGRpciApOwogICAgaWYoICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdjcmVhdGVfZHVtbXlfaW5kZXhfaHRtbCcpICkgewoJCQlAdG91Y2goICRkaXIuRElSRUNUT1JZX1NFUEFSQVRPUi4iaW5kZXguaHRtbCIgKTsKCQl9CiAgICBpZiggJGZpbGVzICkgewoJCQlmb3JlYWNoKCAkZmlsZXMgYXMgJGZpbGUgKSB7CgkJCQkvLyBpZ25vcmUgZGlyZWN0b3JpZXMgLiBhbmQgLi4KCQkJCWlmKCAkZmlsZSA9PSAiLiIgfHwgJGZpbGUgPT0gIi4uIiApIGNvbnRpbnVlOwoKCQkJCS8vIGlnbm9yZSBhbnkgZGlyZWN0b3JpZXMKCQkJCSRzcmNwID0gJGRpci5ESVJFQ1RPUllfU0VQQVJBVE9SLiRmaWxlOwoJCQkJaWYoIGlzX2RpciggJHNyY3AgKSApIGNvbnRpbnVlOwoKCQkJCS8vIGlnbm9yZSB0aHVtYm5haWwgZmlsZXMKCQkJCWlmKCBzdGFydHN3aXRoKCRmaWxlLCd0aHVtYl8nKSApIGNvbnRpbnVlOwoKCQkJCS8vIGdvdCB0aGUgZmlsZSwgbm93IG5lZWQgaXQncyBzaXplCgkJCQkkc2l6ZSA9IGZpbGVzaXplKCRzcmNwKTsKCgkJCQkvLyBub3cgd2UgbmVlZCB0byBtYXliZSByZW5hbWUgdGhlIGZpbGUuLi4KCQkJCS8vIGN1eiBpdCBtYXkgaGF2ZSBzcGFjZXMgaW4gaXQsIGFuZCBodHRwIG1heSBub3QgbGlrZSB0aGF0CgkJCQkvLyB3ZSB1c2UgYW4gKG9wdGlvbmFsKSBjb3VudGVyIHRvIG1ha2Ugc3VyZSB0aGF0IHdlCgkJCQkvLyBjYW4gaGF2ZSBudW1lcm91cyBmaWxlcyB3aXRoIHNpbWlsYXIgbmFtZXMKCQkJCSRwb3N0Zml4ID0gIiI7CgkJCQl3aGlsZSggJHBvc3RmaXggPCAxMDAgKSB7CgkJCQkJJGRlc3RmaWxlID0gc3RyX3JlcGxhY2UgKGFycmF5ICgnICcsICclMjAnKSwgYXJyYXkgKCdfJywgJ18nKSwgJGZpbGUgKTsKCQkJCQlpZiggJHBvc3RmaXggIT0gIiIgKSAkZGVzdGZpbGUgLj0gIl8iIC4gJHBvc3RmaXg7CgoJCQkJCWlmKCAkZGVzdGZpbGUgIT0gJGZpbGUgKSB7CgkJCQkJCSRkZXN0cCA9ICRkaXIuRElSRUNUT1JZX1NFUEFSQVRPUi4kZGVzdGZpbGU7CgoJCQkJCQkvLyB5ZXAsIHdlIGdvdHRhIHJlbmFtZSBpdAoJCQkJCQkvLyBidXQgbWFrZSBzdXJlIHRoZSBmaWxlIGRvZXNuJ3QgYWxyZWFkeSBleGlzdCBmaXJzdAoJCQkJCQlpZiggZmlsZV9leGlzdHMoICRkZXN0cCApICkgewoJCQkJCQkJLy8gdWgtb2ggaXQgZXhpc3RzCgkJCQkJCQkvLyBpbmNyZW1lbnQgdGhlIHBvc3RmaXgKCQkJCQkJCWlmKCAkcG9zdGZpeCA9PSAiIiApIHsKCQkJCQkJCQkkcG9zdGZpeCA9IDE7CgkJCQkJCQl9CgkJCQkJCQllbHNlIHsKCQkJCQkJCQkkcG9zdGZpeCsrOwoJCQkJCQkJfQoJCQkJCQkJY29udGludWU7CgkJCQkJCX0KCgkJCQkJCXJlbmFtZSggJHNyY3AsICRkZXN0cCApOwoJCQkJCQkkZmlsZSA9ICRkZXN0ZmlsZTsKCQkJCQkJJHNyY3AgPSAkZGVzdHA7CgkJCQkJfQoKCQkJCQlicmVhazsgLy8gZ2V0IG91dCBvZiB0aGlzIHdoaWxlIHN0YXRlbWVudAoJCQkJfQoKCQkJCWlmKCAkcG9zdGZpeCA+PSAxMDAgKSB7CgkJCQkJLy8gZm9yIHNvbWUgb2RkIHJlYXNvbiwgd2UgY291bGQgbm90IGZpbmQgYSByZWFzb25hYmxlCgkJCQkJLy8gZmlsZW5hbWUgdG8gcmVuYW1lIHRvLgoJCQkJCS8vIHdlJ2xsIGp1c3Qgc2tpcCB0aGlzIGZpbGUKCQkJCQljb250aW51ZTsKCQkJCX0KCgkJCQkkdXNlcnBlcm1zID0gJyc7CgkJCQlpZiggJGNhdGVnb3J5Wyd1cGxvYWRfY2F0ZWdvcnlfdXNlcnBlcm1zJ10gKSAkdXNlcnBlcm1zID0gJGNhdGVnb3J5Wyd1cGxvYWRfY2F0ZWdvcnlfZGZsdHVzZXJwZXJtcyddOwoKCQkJCS8vIG5leHQgY2hlY2sgdG8gbWFrZSBzdXJlIGl0cyBub3QgYWxyZWFkeSBpbiB0aGUgZGF0YWJhc2UKCQkJCSRxID0gIlNFTEVDVCB1cGxvYWRfaWQsdXBsb2FkX3RodW1ibmFpbCBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2FkcyBXSEVSRQoJCQkJIAkJICB1cGxvYWRfbmFtZSA9ID8gQU5EIHVwbG9hZF9jYXRlZ29yeV9pZCA9ID8iOwoJCQkJJGZpbGVpZCA9ICcnOwoJCQkJJHRodW1iX25hbWUgPSAnJzsKCQkJCSR0bXAgPSAkZGItPkdldFJvdyggJHEsIGFycmF5KCAkZmlsZSwgJGNhdGVnb3J5X2lkKSApOwoJCQkJaWYoICR0bXAgKSB7CgkJCQkJLy8gd2UgYWxyZWFkeSBrbm93IGFib3V0IHRoaXMgb25lCgkJCQkJJGZpbGVpZCA9ICR0bXBbJ3VwbG9hZF9pZCddOwoJCQkJCSR0aHVtYl9uYW1lID0gJHRtcFsndXBsb2FkX3RodW1ibmFpbCddOwoJCQkJfQoJCQkJZWxzZSB7CgkJCQkJLy8gaXQncyBhIG5ldyBmaWxlCgkJCQkJJHF1ZXJ5ID0gIklOU0VSVCBJTlRPICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2FkcyAKICAgICAgICAgICAgICAgICAgICAodXBsb2FkX2lkLCB1cGxvYWRfY2F0ZWdvcnlfaWQsIHVwbG9hZF9uYW1lLCB1cGxvYWRfYXV0aG9yLCB1cGxvYWRfc3VtbWFyeSwgdXBsb2FkX2Rlc2NyaXB0aW9uLAogICAgICAgICAgICAgICAgICAgICB1cGxvYWRfaXAsIHVwbG9hZF9zaXplLCB1cGxvYWRfZGF0ZSwgdXBsb2FkX3VzZXJwZXJtcykgVkFMVUVTICg/LD8sPyw/LD8sPyw/LD8sJG5vdyw/KSI7CgkJCQkJJHVzZXJpZCA9IGdldF91c2VyaWQoZmFsc2UpOwoJCQkJCWlmKCAhJHVzZXJpZCApICR1c2VyaWQgPSAwOyAvLyB3ZSBkb24ndCBrbm93IHRoZSB1c2VyLgoJCQkJCSR1c2VybmFtZSA9ICRfU0VTU0lPTlsiY21zX2FkbWluX3VzZXJuYW1lIl07CgkJCQkJJGZpbGVpZCA9ICRkYi0+R2VuSUQgKGNtc19kYl9wcmVmaXggKCkuIm1vZHVsZV91cGxvYWRzX3NlcSIpOwoJCQkJCSRwYXJtcyA9IGFycmF5KCAkZmlsZWlkLCAkY2F0ZWdvcnlfaWQsICRmaWxlLCAkdXNlcm5hbWUsICRkZXNjLCAiIiwgImxvY2FsaG9zdCIsICRzaXplLAkkdXNlcnBlcm1zICk7CgkJCQkJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcXVlcnksICRwYXJtcyApOwoJCQkJCWlmKCAhJGRicmVzdWx0ICkgewoJCQkJCQllY2hvICJERUJVRzogIi4kZGItPnNxbC4iPGJyLz4iOwoJCQkJCQllY2hvICJFUlJPUjogIi4kZGItPkVycm9yTXNnKCkuIjxici8+IjsKCQkJCQkJZGllKCk7CgkJCQkJCXJldHVybjsKCQkJCQl9CgkJCQl9CgoJCQkJLy8gYW5kIG1heWJlLCBqdXN0IG1heWJlIGNyZWF0ZSBhIHRodW1ibmFpbCBmb3IgaXQKCQkJCWlmKCBlbXB0eSgkdGh1bWJfbmFtZSkgKSAkdGh1bWJfbmFtZSA9ICd0aHVtYl8nLiRmaWxlOwoKCQkJCS8vIHNlZSBpZiB3ZSdyZSBkb2luZyB0aHVtYm5haWxpbmcgYXQgYWxsCgkJCQlpZiggJHRoaXMtPkdldFByZWZlcmVuY2UoJ2F1dG90aHVtYm5haWxfZXh0ZW5zaW9ucycpICE9ICcnICYmCgkJCQkJCSR0aGlzLT5HZXRQcmVmZXJlbmNlKCdhdXRvdGh1bWJuYWlsX3NpemUnKSAhPSAnJyApIHsKCQkJCQkvLyBzZWUgaWYgdGhpcyBmaWxlIGlzIHRodW1ibmFpbGFibGUKCQkJCQkkZmlsZWV4dGVuc2lvbiA9IHN0cnRvbG93ZXIoc3RycmNocigkZmlsZSwnLicpKTsKCQkJCQkkdGh1bWJfZXh0X2FyciA9IGV4cGxvZGUoIiwiLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdhdXRvdGh1bWJuYWlsX2V4dGVuc2lvbnMnKSk7CgoJCQkJCSRpc19pbWFnZSA9IGZhbHNlOwoJCQkJCWZvcmVhY2goICR0aHVtYl9leHRfYXJyIGFzICR0aHVtYl9leHQgKSB7CgkJCQkJCWlmKCAiLiIuJHRodW1iX2V4dCA9PSAkZmlsZWV4dGVuc2lvbiApIHsKCQkJCQkJCSRpc19pbWFnZSA9IHRydWU7CgkJCQkJCQlicmVhazsKCQkJCQkJfQoJCQkJCX0KCgkJCQkJaWYoICRpc19pbWFnZSApIHsKCQkJCQkJLy8geXVwLCB3ZSBjYW4gdGh1bWJuYWlsIHRoaXMgdGhpbmcuCgkJCQkJCSRkZXN0bmFtZSA9ICRkaXIuRElSRUNUT1JZX1NFUEFSQVRPUi4kdGh1bWJfbmFtZTsKCQkJCQkJJGNyZWF0ZWQgPSBmYWxzZTsKCQkJCQkJaWYoICFmaWxlX2V4aXN0cyggJGRlc3RuYW1lICkgKSB7CgkJCQkJCQkkdGhpcy0+aW1hZ2VUcmFuc2Zvcm0oJHNyY3AsJGRlc3RuYW1lLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdhdXRvdGh1bWJuYWlsX3NpemUnKSk7CgkJCQkJCQlpZiggZmlsZV9leGlzdHMoICRkZXN0bmFtZSApICkgJGNyZWF0ZWQgPSB0cnVlOwoJCQkJCQl9CgoJCQkJCQlpZiggJGNyZWF0ZWQgKSB7CgkJCQkJCQkvLyB3b290LCB3ZSBjcmVhdGVkIGEgbmV3IHRodW1ibmFpbAoJCQkJCQkJLy8gbm93IHVwZGF0ZSB0aGUgZGF0YWJhc2UKCQkJCQkJCSRxdWVyeSA9ICdVUERBVEUgJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV91cGxvYWRzIFNFVCB1cGxvYWRfdGh1bWJuYWlsID0gPwlXSEVSRSB1cGxvYWRfaWQgPSA/JzsKCQkJCQkJCSRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkoJHRodW1iX25hbWUsJGZpbGVpZCkpOwoJCQkJCQl9CgkJCQkJfQoJCQkJfQoKCQkJfSAvLyBmb3JlYWNoCgkJfSAvLyBpZgogIH0KCgogIHByb3RlY3RlZCBmdW5jdGlvbiBTbWFydFNjYW5EaXJlY3RvcnkoJGNhdGVnb3J5X2lkLCAkZGlyICkKICB7CiAgICAkZGIgPSAkdGhpcy0+R2V0RGIoKTsKICAgICRxdWVyeSA9ICJTRUxFQ1QgQ09VTlQoKikgQVMgY291bnQgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHMgV0hFUkUgdXBsb2FkX2NhdGVnb3J5X2lkID0gPyI7CiAgICAkcm93Y291bnQgPSAkZGItPkdldE9uZSggJHF1ZXJ5LCBhcnJheSggJGNhdGVnb3J5X2lkICkgKTsKCiAgICAvLyBnZXQgdGhlIG51bWJlciBvZiBmaWxlcwogICAgJGZpbGVzID0gJHRoaXMtPl9zY2FuZGlyKCAkZGlyICk7CiAgICAkY291bnQgPSAwOwogICAgaWYoICRmaWxlcyApIHsKCQkJZm9yZWFjaCggJGZpbGVzIGFzICRmaWxlICkgewoJCQkJLy8gaWdub3JlIGRpcmVjdG9yaWVzIC4gYW5kIC4uCgkJCQlpZiggJGZpbGUgPT0gIi4iIHx8ICRmaWxlID09ICIuLiIgKSBjb250aW51ZTsKCgkJCQkvLyBpZ25vcmUgYW55IGRpcmVjdG9yaWVzCgkJCQkkc3JjcCA9ICRkaXIuRElSRUNUT1JZX1NFUEFSQVRPUi4kZmlsZTsKCQkJCWlmKCBpc19kaXIoICRzcmNwICkgKSBjb250aW51ZTsKCgkJCQkvLyBpZ25vcmUgdGh1bWJuYWlscwoJCQkJaWYoIHN0YXJ0c3dpdGgoJHNyY3AsJ3RodW1iXycpICkgY29udGludWU7CgoJCQkJJGNvdW50Kys7CgkJCX0gLy8gZm9yZWFjaAoJCX0KCiAgICBpZiggJGNvdW50ICE9ICRyb3djb3VudCApICR0aGlzLT5TY2FuRGlyZWN0b3J5KCAkY2F0ZWdvcnlfaWQsICRkaXIgKTsKICB9CgoKICBwcm90ZWN0ZWQgZnVuY3Rpb24gX0luc2VydERlZmF1bHRGaWxlVHlwZXMoKQogIHsKICAgIC8vIGRlZmF1bHQgZmlsZSB0eXBlcwogICAgJGZpbGV0eXBlcyA9IGFycmF5KCk7CiAgICAkZmlsZXR5cGVzW10gPSBhcnJheSgnc29ydG9yZGVyJz0+MSwnbmFtZSc9PidTb3VuZCcsJ2Rlc2NyaXB0aW9uJz0+J1NvdW5kIGZpbGVzJywnZXh0ZW5zaW9ucyc9PidtcDMsb2dnLHdhdicsCgkJCQkJCQkJCQkJCSAnaW1hZ2UnPT4nc291bmQucG5nJyk7CiAgICAkZmlsZXR5cGVzW10gPSBhcnJheSgnc29ydG9yZGVyJz0+MiwnbmFtZSc9PidJbWFnZScsJ2Rlc2NyaXB0aW9uJz0+J0ltYWdlIGZpbGVzJywnZXh0ZW5zaW9ucyc9PidwbmcsZ2lmLGpwZyxqcGVnLGJtcCcsCgkJCQkJCQkJCQkJCSAnaW1hZ2UnPT4naW1hZ2UucG5nJyk7CiAgICAkZmlsZXR5cGVzW10gPSBhcnJheSgnc29ydG9yZGVyJz0+MywnbmFtZSc9PidQREYgRG9jdW1lbnQnLCdkZXNjcmlwdGlvbic9PidBZG9iZSBBY3JvYmF0IFBERiBEb2N1bWVudCcsCgkJCQkJCQkJCQkJCSAnZXh0ZW5zaW9ucyc9PidwZGYnLCdpbWFnZSc9PidwZGYucG5nJyk7CiAgICAkZmlsZXR5cGVzW10gPSBhcnJheSgnc29ydG9yZGVyJz0+NCwnbmFtZSc9PidTcHJlYWRzaGVldCcsJ2Rlc2NyaXB0aW9uJz0+J1NwcmVhZHNoZWV0cycsJ2V4dGVuc2lvbnMnPT4neGxzJywKCQkJCQkJCQkJCQkJICdpbWFnZSc9PidzcHJlYWRzaGVldC5wbmcnKTsKICAgICRmaWxldHlwZXNbXSA9IGFycmF5KCdzb3J0b3JkZXInPT41LCduYW1lJz0+J0NvbXByZXNzZWQnLCdkZXNjcmlwdGlvbic9PidDb21wcmVzc2VkIGZpbGUnLCdleHRlbnNpb25zJz0+J3ppcCx0YXIsZ3oscmFyLGFyaicsCgkJCQkJCQkJCQkJCSAnaW1hZ2UnPT4nemlwLnBuZycpOwogICAgJGZpbGV0eXBlc1tdID0gYXJyYXkoJ3NvcnRvcmRlcic9PjYsJ25hbWUnPT4nVGV4dCcsJ2Rlc2NyaXB0aW9uJz0+J1RleHQgRmlsZScsJ2V4dGVuc2lvbnMnPT4ndHh0LHRleHQnLCdpbWFnZSc9Pid0eHQucG5nJyk7CiAgICAkZmlsZXR5cGVzW10gPSBhcnJheSgnc29ydG9yZGVyJz0+NywnbmFtZSc9PidWaWRlbycsJ2Rlc2NyaXB0aW9uJz0+J1ZpZGVvIEZpbGVzJywnZXh0ZW5zaW9ucyc9PidhdmksbXBnLndtdicsJ2ltYWdlJz0+J3ZpZGVvLnBuZycpOwogICAgJGZpbGV0eXBlc1tdID0gYXJyYXkoJ3NvcnRvcmRlcic9PjgsJ25hbWUnPT4nV29yZCBQcm9jZXNzaW5nJywnZGVzY3JpcHRpb24nPT4nV29yZCBQcm9jZXNzaW5nIEZpbGVzJywnZXh0ZW5zaW9ucyc9Pidkb2MnLAoJCQkJCQkJCQkJCQkgJ2ltYWdlJz0+J3dvcmRwcm9jZXNzaW5nLnBuZycpOwoKICAgICRkYiA9ICR0aGlzLT5HZXREYigpOwogICAgJHEgPSAiSU5TRVJUIElOVE8gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV91cGxvYWRzX2ZpbGV0eXBlcyAoaWQsc29ydG9yZGVyLG5hbWUsZGVzY3JpcHRpb24sZXh0ZW5zaW9ucyxpbWFnZSkgVkFMVUVTICg/LD8sPyw/LD8sPykiOwogICAgZm9yZWFjaCggJGZpbGV0eXBlcyBhcyAkb25lZmlsZXR5cGUgKSB7CgkJCSRuZXdpZCA9ICRkYi0+R2VuSUQoY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfdXBsb2Fkc19maWxldHlwZXNfc2VxIik7CgkJCSRkYnJlc3VsdCA9ICAkZGItPkV4ZWN1dGUoICRxLCBhcnJheSggJG5ld2lkLCAkb25lZmlsZXR5cGVbJ3NvcnRvcmRlciddLCAkb25lZmlsZXR5cGVbJ25hbWUnXSwKCQkJCQkJCQkJCQkJCQkJCQkJCQkJCSRvbmVmaWxldHlwZVsnZGVzY3JpcHRpb24nXSwgJG9uZWZpbGV0eXBlWydleHRlbnNpb25zJ10sJG9uZWZpbGV0eXBlWydpbWFnZSddICkgKTsKCQl9CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gX0dldEZpbGVUeXBlKCAkZmlsZW5hbWUgKQogIHsKCQlpZiggJHRoaXMtPl9maWxldHlwZXMgPT0gJycgKSB7CgkJCSRkYiA9ICR0aGlzLT5HZXREYigpOwoJCQkJCgkJCSR0aGVfZXh0ZW5zaW9uID0gc3RydG9sb3dlcihzdHJyY2hyKCRmaWxlbmFtZSwnLicpKTsKCQkJJHEgPSAiU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3VwbG9hZHNfZmlsZXR5cGVzIE9SREVSIEJZIHNvcnRvcmRlciI7CgkJCSR0aGlzLT5fZmlsZXR5cGVzID0gJGRiLT5HZXRBcnJheSggJHEgKTsKCQl9CgogICAgJHRoZV9leHRlbnNpb24gPSBzdHJ0b2xvd2VyKHN1YnN0cihzdHJ0b2xvd2VyKHN0cnJjaHIoJGZpbGVuYW1lLCcuJykpLDEpKTsKCQlmb3IoICRpID0gMDsgJGkgPCBjb3VudCgkdGhpcy0+X2ZpbGV0eXBlcyk7ICRpKysgKSB7CgkJCSRyb3cgPSYgJHRoaXMtPl9maWxldHlwZXNbJGldOwoKCQkJJGFyciA9IGV4cGxvZGUoICIsIiwkcm93WydleHRlbnNpb25zJ10gKTsKCQkJZm9yZWFjaCggJGFyciBhcyAkb25lZXh0ICkgewoJCQkJaWYoIHN0cnRvbG93ZXIoICRvbmVleHQgKSA9PSAkdGhlX2V4dGVuc2lvbiApIHJldHVybiAkcm93OwoJCQl9CgkJfQogICAgcmV0dXJuIGZhbHNlOwogIH0KCiAgcHJvdGVjdGVkIGZ1bmN0aW9uIF9DaGVja0ZpbGVEb3dubG9hZFNlY3VyaXR5KCRmaWxlX2RldGFpbHMpCiAgewoJCWlmKCAkZmlsZV9kZXRhaWxzWyd1cGxvYWRfdXNlcnBlcm1zJ10gPT0gJycgKSByZXR1cm4gVFJVRTsKCQkKCQkkdXNlcnBlcm1zID0gZXhwbG9kZSgnLCcsJGZpbGVfZGV0YWlsc1sndXBsb2FkX3VzZXJwZXJtcyddKTsKCQlpZiggIWlzX2FycmF5KCR1c2VycGVybXMpIHx8IGNvdW50KCR1c2VycGVybXMpID09IDAgKSByZXR1cm4gVFJVRTsKCgkJJGZldSA9IGNtc191dGlsczo6Z2V0X21vZHVsZSgnRnJvbnRFbmRVc2VycycpOwoJCWlmKCAhaXNfb2JqZWN0KCRmZXUpICkgcmV0dXJuIEZBTFNFOwoKCQkkdWlkID0gJGZldS0+TG9nZ2VkSW5JZCgpOwoJCWlmKCAkdWlkIDw9IDAgKSByZXR1cm4gRkFMU0U7CgoJCSRncnBzID0gJGZldS0+R2V0TWVtYmVyR3JvdXBzQXJyYXkoJHVpZCk7CgkJaWYoICFpc19hcnJheSgkZ3JwcykgfHwgY291bnQoJGdycHMpID09IDAgKSByZXR1cm4gRkFMU0U7CgoJCWZvcmVhY2goICRncnBzIGFzICRvbmUgKSB7CgkJCWlmKCBpc3NldCgkb25lWydncm91cGlkJ10pICYmIGluX2FycmF5KCRvbmVbJ2dyb3VwaWQnXSwkdXNlcnBlcm1zKSApIHJldHVybiBUUlVFOwoJCX0KCgkJcmV0dXJuIEZBTFNFOwoJfQoKCXByb3RlY3RlZCBmdW5jdGlvbiBfQ2hlY2tEb3dubG9hZFNlY3VyaXR5KCYkY2F0ZWdvcnlfZGV0YWlscykKCXsKCQkkZmV1c2VycyA9ICR0aGlzLT5HZXRNb2R1bGVJbnN0YW5jZSgnRnJvbnRFbmRVc2VycycpOwoJCWlmKCAkZmV1c2VycyAmJiAkY2F0ZWdvcnlfZGV0YWlsc1sndXBsb2FkX2NhdGVnb3J5X2dyb3VwcyddICE9ICcnKSB7CgkJCSR1aWQgPSAkZmV1c2Vycy0+TG9nZ2VkSW5JZCgpOwoJCQlpZiggJHVpZCA9PSAwIHx8ICR1aWQgPT0gJycgKSByZXR1cm4gZmFsc2U7CS8vIHVzZXIgaXMgbm90IGxvZ2dlZCBpbgoJCQkJCgkJCS8vIG5vdyBjaGVjayBpZiB0aGUgdXNlciBpcyBpbiB0aGUgZ3JvdXAKCQkJJHBlcm1pdHRlZGdyb3VwcyA9IGV4cGxvZGUoJywnLCRjYXRlZ29yeV9kZXRhaWxzWyd1cGxvYWRfY2F0ZWdvcnlfZ3JvdXBzJ10pOwoJCQkkcGVybWl0dGVkID0gZmFsc2U7CgoJCQkkbWVtYmVyZ3JvdXBzMSA9ICRmZXVzZXJzLT5HZXRNZW1iZXJHcm91cHNBcnJheSgkdWlkKTsKCQkJZm9yZWFjaCggJG1lbWJlcmdyb3VwczEgYXMgJHJvdyApIHsKCQkJCWZvcmVhY2goICRwZXJtaXR0ZWRncm91cHMgYXMgJHBnICkgewoJCQkJCWlmKCAkcGcgPT0gJHJvd1snZ3JvdXBpZCddICkgewoJCQkJCQkkcGVybWl0dGVkID0gdHJ1ZTsKCQkJCQkJYnJlYWs7CgkJCQkJfQoJCQkJfQoJCQkJaWYoICRwZXJtaXR0ZWQgPT0gdHJ1ZSApIGJyZWFrOwoJCQl9CgoJCQlpZiggJHBlcm1pdHRlZCA9PSBmYWxzZSApIHJldHVybiBmYWxzZTsJLy8gYWNjZXNzIGRlbmllZAoJCX0KCgkJcmV0dXJuIHRydWU7Cgl9CgogIHB1YmxpYyBmdW5jdGlvbiBpbWFnZVRyYW5zZm9ybSgkc3JjU3BlYywgJGRlc3RTcGVjLCAkc2l6ZSA9ICcnKQogIHsKCQlpZiggISRzaXplICkgJHNpemUgPSAoaW50KSR0aGlzLT5HZXRQcmVmZXJlbmNlKCdhdXRvdGh1bWJuYWlsX3NpemUnKTsKCiAgCS8vVE9ETzogU29tZSBFcnJvciBoYW5kbGluZyBpZiBUcmFuc2Zvcm1hdGlvbiBjbGFzcyBjYW5ub3QgYmUgZm91bmQgKD8pCiAgICByZXF1aXJlX29uY2UoX19ESVJfXy4nLy4uLy4uL2xpYi9maWxlbWFuYWdlci9JbWFnZU1hbmFnZXIvQ2xhc3Nlcy9UcmFuc2Zvcm0ucGhwJyk7CiAgICAgCgkJJGdDbXMgPSBjbXNtcygpOwoJCSRjb25maWcgPSAkZ0Ntcy0+R2V0Q29uZmlnKCk7CiAgICAkaXQgPSBuZXcgSW1hZ2VfVHJhbnNmb3JtOwogICAgJGltZyA9ICRpdC0+ZmFjdG9yeSgkY29uZmlnWydpbWFnZV9tYW5pcHVsYXRpb25fcHJvZyddKTsKICAgICRpbWctPmxvYWQoJHNyY1NwZWMpOwogICAgaWYgKCRpbWctPmltZ194IDwgJGltZy0+aW1nX3kpIHsKCQkJJGxvbmdfYXhpcyA9ICRpbWctPmltZ195OwoJCX0KICAgIGVsc2UgewoJCQkkbG9uZ19heGlzID0gJGltZy0+aW1nX3g7CgkJfQogICAgIAogICAgJHRoZV9leHRlbnNpb24gPSBzdWJzdHIoc3RydG9sb3dlcihzdHJyY2hyKCRkZXN0U3BlYywnLicpKSwxKTsKCQkkdHlwZSA9ICdqcGcnOwoJCXN3aXRjaCgkdGhlX2V4dGVuc2lvbikgewoJCWNhc2UgJ2pwZyc6CgkJY2FzZSAnanBlZyc6CgkJCSR0eXBlID0gJ2pwZWcnOwoJCQlicmVhazsKCQljYXNlICdibXAnOgoJCQkkdHlwZSA9ICdibXAnOwoJCQlicmVhazsKCQljYXNlICdwbmcnOgoJCQkkdHlwZSA9ICdwbmcnOwoJCQlicmVhazsKCQljYXNlICdnaWYnOgoJCQkkdHlwZSA9ICdnaWYnOwoJCQlicmVhazsKCQl9CgogICAgaWYgKCRsb25nX2F4aXMgPiAkc2l6ZSkgewoJCQkkaW1nLT5zY2FsZUJ5TGVuZ3RoKCRzaXplKTsKCQkJJGltZy0+c2F2ZSgkZGVzdFNwZWMsICR0eXBlKTsKCQl9CiAgICBlbHNlIHsKCQkJJGltZy0+c2F2ZSgkZGVzdFNwZWMsICR0eXBlKTsKCQl9CiAgICAkaW1nLT5mcmVlKCk7CiAgfQoKCXB1YmxpYyBmdW5jdGlvbiBfZ2V0RmlsZVVSTCgkdXBsb2FkX2lkLCR1cGxvYWRfbmFtZSkKCXsKCQkkdXJsID0gc3ByaW50ZigndXBsb2Fkcy8lZC8lcycsJHVwbG9hZF9pZCxtdW5nZV9zdHJpbmdfdG9fdXJsKCR1cGxvYWRfbmFtZSkpOwoJCXJldHVybiAkdXJsOwoJfQoKCXB1YmxpYyBmdW5jdGlvbiBfZ2V0VGltZUxpbWl0ZWRVUkwoJHVwbG9hZF9rZXkpCgl7CgkJJHVybCA9IHNwcmludGYoJ3VwbG9hZHMvbGltaXRlZC8lcycsJHVwbG9hZF9rZXkpOwoJCXJldHVybiAkdXJsOwoJfQoKICBwdWJsaWMgZnVuY3Rpb24gSGFzQ2FwYWJpbGl0eSgkY2FwYWJpbGl0eSwkcGFyYW1zID0gYXJyYXkoKSkKICB7CgkJaWYoICRjYXBhYmlsaXR5ID09ICdjb250ZW50YmxvY2tzJyApIHJldHVybiBUUlVFOwoJCXJldHVybiBGQUxTRTsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBHZXRDb250ZW50QmxvY2tJbnB1dCgkYmxvY2tOYW1lLCR2YWx1ZSwkcGFyYW1zLCRhZGRpbmcgPSBmYWxzZSkKICB7CgkJaWYoICFpc3NldCgkcGFyYW1zWydzZWxlY3R0eXBlJ10pICkgJHBhcmFtc1snc2VsZWN0dHlwZSddID0gJ2NhdGVnb3J5c2VsZWN0JzsKCiAgICBzd2l0Y2goICRwYXJhbXNbJ3NlbGVjdHR5cGUnXSApIHsKCQljYXNlICdjYXRlZ29yeXNlbGVjdCc6CgkJCSR0bXAxID0gYXJyYXkoKTsKCQkJaWYoIGlzc2V0KCRwYXJhbXNbJ3NlbGVjdG9uZSddKSApICR0bXAxWyR0aGlzLT5MYW5nKCdzZWxlY3RvbmUnKV0gPSAtMTsKCQkJaWYoIGlzc2V0KCRwYXJhbXNbJ2FsbG93YWxsJ10pICkgJHRtcDFbJHRoaXMtPkxhbmcoJ2FsbCcpXSA9ICdhbGwnOwoJCQkkZGIgPSAkdGhpcy0+R2V0RGIoKTsKCQkJJHF1ZXJ5ID0gJ1NFTEVDVCB1cGxvYWRfY2F0ZWdvcnlfbmFtZSBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfdXBsb2Fkc19jYXRlZ29yaWVzCiAgICAgICAgICAgICAgICBXSEVSRSB1cGxvYWRfY2F0ZWdvcnlfbGlzdGFibGUgPSAxJzsKCQkJJHRtcCA9ICRkYi0+R2V0QXJyYXkoJHF1ZXJ5KTsKCQkJaWYoICR0bXAgKSB7CgkJCQlmb3IoICRpID0gMDsgJGkgPCBjb3VudCgkdG1wKTsgJGkrKyApIHsKCQkJCQkkc3RyID0gJHRtcFskaV1bJ3VwbG9hZF9jYXRlZ29yeV9uYW1lJ107CgkJCQkJJHRtcDFbJHN0cl0gPSAkc3RyOwoJCQkJfQoJCQkJcmV0dXJuICR0aGlzLT5DcmVhdGVJbnB1dERyb3Bkb3duKCcnLCRibG9ja05hbWUsJHRtcDEsLTEsJHZhbHVlKTsKCQkJfQoJCQlicmVhazsKCQl9CiAgICByZXR1cm4gRkFMU0U7CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gR2V0Q29udGVudEJsb2NrVmFsdWUoJGJsb2NrTmFtZSwkYmxvY2tQYXJhbXMsJGlucHV0UGFyYW1zKQogIHsKICAgIGlmKCBpc3NldCgkYmxvY2tQYXJhbXNbJ3NlbGVjdHR5cGUnXSkgKSB7CgkJCWlmKCBpc3NldCgkaW5wdXRQYXJhbXNbJGJsb2NrTmFtZV0pICkJcmV0dXJuICRpbnB1dFBhcmFtc1skYmxvY2tOYW1lXTsKCQl9CiAgICByZXR1cm4gJyc7CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gVmFsaWRhdGVDb250ZW50QmxvY2tWYWx1ZSgkYmxvY2tOYW1lLCR2YWx1ZSwkYmxvY2tQYXJhbXMpCiAgewogICAgc3dpdGNoKCRibG9ja1BhcmFtc1snc2VsZWN0dHlwZSddKSB7CgkJY2FzZSAnY2F0ZWdvcnlzZWxlY3QnOgoJCQlpZiggJHZhbHVlID09IC0xICkgcmV0dXJuICR0aGlzLT5MYW5nKCdlcnJvcl9tdXN0c2VsZWN0X2NhdGVnb3J5Jyk7CgkJCWJyZWFrOwoJCX0KICAgIHJldHVybiAnJzsKICB9CgoJcHVibGljIGZ1bmN0aW9uIHNtYXJ0eV9ibG9ja19vbmNoYW5nZSgkcGFyYW1zLCRjb250ZW50LCRzbWFydHksJHJlcGVhdCkKCXsKCQlzdGF0aWMgJF9vbmNoYW5nZV9kYXRhID0gYXJyYXkoKTsKCQlpZiggJGNvbnRlbnQgPT0gJycgKSByZXR1cm47CgkJaWYoICFpc3NldCgkcGFyYW1zWydyZWMnXSkgfHwgIWlzc2V0KCRwYXJhbXNbJ2ZpZWxkJ10pICkgcmV0dXJuOwoKCQkkcmVjb3JkID0gJHBhcmFtc1sncmVjJ107CgkJJGZpZWxkID0gJHBhcmFtc1snZmllbGQnXTsKCQlpZiggIWlzc2V0KCRyZWNvcmRbJGZpZWxkXSkgKSByZXR1cm47CgoJCSR0bXAgPSAkc21hcnR5LT5nZXRfdGVtcGxhdGVfdmFycygnb25jaGFuZ2UnKTsKCQlpZiggIWlzX2FycmF5KCR0bXApICkgJHRtcCA9IGFycmF5KCk7CgoJCWlmKCAhaXNzZXQoJF9vbmNoYW5nZV9kYXRhWyRmaWVsZF0pIHx8ICRfb25jaGFuZ2VfZGF0YVskZmllbGRdICE9ICRyZWNvcmRbJGZpZWxkXSApIHsKCQkJJF9vbmNoYW5nZV9kYXRhWyRmaWVsZF0gPSAkcmVjb3JkWyRmaWVsZF07CgkJCSR0bXBbJGZpZWxkXSA9IDE7CgkJCSRzbWFydHktPmFzc2lnbignb25jaGFuZ2UnLCR0bXApOwoJCQlyZXR1cm4gJGNvbnRlbnQ7CgkJfQoJCWVsc2UgewoJCQkkdG1wWyRmaWVsZF0gPSAwOwoJCQkkc21hcnR5LT5hc3NpZ24oJ29uY2hhbmdlJywkdG1wKTsKCQl9Cgl9Cn0KCi8vIEVPRgo/Pgo=]]></data>
	</file>
</module>
