<?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>SelfRegistration</name>
	<version>1.1.2</version>
  <mincmsversion>1.2</mincmsversion>
	<help>PGgzPldoYXQgRG9lcyBUaGlzIERvPzwvaDM+CjxwPlRoaXMgbW9kdWxlIGlzIGRlc2lnbmVkIHRvIGFsbG93IGZyb250IGVuZCB1c2VycyB0byByZWdpc3RlciB0aGVtc2VsdmVzIGFuZCBmaWxsIGluIHRoZSByZXF1aXJlZCBpbmZvcm1hdGlvbi4gIEl0IHRoZW4gc2VuZHMgYSBjb25maXJtYXRpb24gZW1haWwsIHdpdGggYSBsaW5rIHRvIGEgc2Vjb25kIHBhZ2UgdGhhdCBtdXN0IGJlIGNvbXBsZXRlZCBiZWZvcmUgdGhlIHJlZ2lzdHJhdGlvbiBpcyBjb21wbGV0ZS4gIE9uY2UgcmVnaXN0cmF0aW9uIGlzIGNvbXBsZXRlLCBhIHVzZXIgYWNjb3VudCBpcyBjcmVhdGVkIGluIHRoZSBmcm9udCBlbmQgdXNlcnMgbW9kdWxlLjwvcD4KPHA+SW4gb3JkZXIgdG8gdXNlIHRoaXMgbW9kdWxlLCB5b3UgbXVzdCBjcmVhdGUgYSBwcm9wZXJ0eSBvZiB0eXBlICJFbWFpbCBBZGRyZXNzIiBpbiB0aGUgRnJvbnRlbmRVc2VycyBtb2R1bGUsIGFuZCBhc3NvY2lhdGUgdGhhdCBwcm9wZXJ0eSB3aXRoIHRoZSBncm91cCB0byBiZSB1c2VkIGZvciBzZWxmIHJlZ2lzdHJhdGlvbi48L3A+CjxoMz5Ib3cgRG8gSSBVc2UgSXQ8L2gzPgo8cD5Zb3UgcGxhY2UgdGhlIGZvbGxvd25nIHRhZyBpbnRvIHlvdXIgcGFnZSB7Y21zX21vZHVsZSBtb2R1bGU9U2VsZlJlZ2lzdHJhdGlvbiBncm91cD11c2VyZ3JvdXB9PC9wPgo8cD5Zb3UgbXVzdCBoYXZlIHByZXZpb3VzbHkgY3JlYXRlZCBwcm9wZXJ0aWVzIGFuZCB1c2VyIGdyb3VwcyBpbiB0aGUgRnJvbnRFbmRVc2VycyBtb2R1bGUgaW4gb3JkZXIgZm9yIHRoaXMgdG8gd29yayBwcm9wZXJseS48L3A+CjxoMz5QYXJhbWV0ZXJzPC9oMz4KPHA+PHN0cm9uZz5tb2RlPC9zdHJvbmc+Jm5ic3A7PGVtPm9wdGlvbmFsPC9lbT4gLSBwb3NzaWJsZSB2YWx1ZXMgYXJlICJzaWdudXAiIGFuZCAidmVyaWZ5Ii4gIElmIHRoaXMgcGFyYW1ldGVyIGlzIG5vdCBzcGVjaWZpZWQsICJzaWdudXAiIGlzIGFzc3VtYmVkLjwvcD4KPHA+PHN0cm9uZz5ncm91cDwvc3Ryb25nPiZuYnNwOzxlbT5vcHRpb25hbDwvZW0+IC0gVGhpcyBwYXJhbWV0ZXIgaXMgcmVxdWlyZWQgaWYgbW9kZSBpcyAic2lnbnVwIiwgb3IgaWYgbW9kZSBpcyBsZWZ0IGVtcHR5LjwvcD4KPHA+PHN0cm9uZz5ub2NhcHRjaGE8L3N0cm9uZz4mbmJzcDs8ZW0+b3B0aW9uYWw8L2VtPiAtIFRoaXMgd2lsbCBkaXNhYmxlIGNhcHRjaGEgb24gdGhlIHNpZ251cCBmb3JtLiBCeSBkZWZhdWx0LCBpZiB0aGUgQ2FwdGNoYSBtb2R1bGUgaXMgaW5zdGFsbGVkLCBjYXB0Y2hhIHN1cHBvcnQgaXMgcHJvdmlkZWQuICBUaGlzIHBhcmFtZXRlciBkaXNhYmxlcyBpdC48L3A+CjxoMz5TdXBwb3J0PC9oMz4KPHA+VGhpcyBtb2R1bGUgZG9lcyBub3QgaW5jbHVkZSBjb21tZXJjaWFsIHN1cHBvcnQuIEhvd2V2ZXIsIHRoZXJlIGFyZSBhIG51bWJlciBvZiByZXNvdXJjZXMgYXZhaWxhYmxlIHRvIGhlbHAgeW91IHdpdGggaXQ6PC9wPgo8dWw+CjxsaT5Gb3IgdGhlIGxhdGVzdCB2ZXJzaW9uIG9mIHRoaXMgbW9kdWxlLCBGQVFzLCBvciB0byBmaWxlIGEgQnVnIFJlcG9ydCBvciBidXkgY29tbWVyY2lhbCBzdXBwb3J0LCBwbGVhc2UgdmlzaXQgY2FsZ3V5J3MKbW9kdWxlIGhvbWVwYWdlIGF0IDxhIGhyZWY9Imh0dHA6Ly90ZWNoY29tLmR5bmRucy5vcmciPnRlY2hjb20uZHluZG5zLm9yZzwvYT4uPC9saT4KPGxpPkFkZGl0aW9uYWwgZGlzY3Vzc2lvbiBvZiB0aGlzIG1vZHVsZSBtYXkgYWxzbyBiZSBmb3VuZCBpbiB0aGUgPGEgaHJlZj0iaHR0cDovL2ZvcnVtLmNtc21hZGVzaW1wbGUub3JnIj5DTVMgTWFkZSBTaW1wbGUgRm9ydW1zPC9hPi48L2xpPgo8bGk+VGhlIGF1dGhvciwgY2FsZ3V5MTAwMCwgY2FuIG9mdGVuIGJlIGZvdW5kIGluIHRoZSA8YSBocmVmPSJpcmM6Ly9pcmMuZnJlZW5vZGUubmV0LyNjbXMiPkNNUyBJUkMgQ2hhbm5lbDwvYT4uPC9saT4KPGxpPkxhc3RseSwgeW91IG1heSBoYXZlIHNvbWUgc3VjY2VzcyBlbWFpbGluZyB0aGUgYXV0aG9yIGRpcmVjdGx5LjwvbGk+ICAKPC91bD4KPHA+QXMgcGVyIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgcHJvdmlkZWQgYXMtaXMuIFBsZWFzZSByZWFkIHRoZSB0ZXh0Cm9mIHRoZSBsaWNlbnNlIGZvciB0aGUgZnVsbCBkaXNjbGFpbWVyLjwvcD4KCjxoMz5Db3B5cmlnaHQgYW5kIExpY2Vuc2U8L2gzPgo8cD5Db3B5cmlnaHQgJmNvcHk7IDIwMDUsIFJvYmVydCBDYW1wYmVsIDxhIGhyZWY9Im1haWx0bzpjYWxndXkxMDAwQGhvdG1haWwuY29tIj4mbHQ7Y2FsZ3V5MTAwMEBob3RtYWlsLmNvbSZndDs8L2E+LiBBbGwgUmlnaHRzIEFyZSBSZXNlcnZlZC48L3A+CjxwPlRoaXMgbW9kdWxlIGhhcyBiZWVuIHJlbGVhc2VkIHVuZGVyIHRoZSA8YSBocmVmPSJodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwiPkdOVSBQdWJsaWMgTGljZW5zZTwvYT4uIFlvdSBtdXN0IGFncmVlIHRvIHRoaXMgbGljZW5zZSBiZWZvcmUgdXNpbmcgdGhlIG1vZHVsZS48L3A+CjxoMz5EZXBlbmRlbmNpZXM8L2gzPjx1bD48bGk+Q01TTWFpbGVyID0mZ3Q7IDEuNzMuOTwvbGk+PGxpPkZyb250RW5kVXNlcnMgPSZndDsgMS4zPC9saT48L3VsPjxoMz5QYXJhbWV0ZXJzPC9oMz48dWw+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gbGFuZz0iZW5fVVMiIC0gUGFyYW1ldGVyIGlzIHVzZWQgdG8gc3BlY2lmeSB3aGF0IGxhbmd1YWdlIHRvIHVzZSBmb3IgZGlzcGxheSBvbiB0aGUgZnJvbnRlbmQuIE5vdCBhbGwgbW9kdWxlcyBzdXBwb3J0IG9yIG5lZWQgdGhpcy48L2xpPjwvdWw+</help>
	<about>PGJyIC8+QXV0aG9yOiBDYWxndXkxMDAwICZsdDtjYWxndXkxMDAwQGhvdG1haWwuY29tJmd0OzxiciAvPjxiciAvPlZlcnNpb246IDEuMS4yPGJyIC8+PGJyIC8+Q2hhbmdlIEhpc3Rvcnk6PGJyIC8+PHVsPgo8bGk+VmVyc2lvbiAwLjAuMS4gT2N0IDIwMDUuIEluaXRpYWwgTlJQVCAoTm90IFJlYWR5IGZvciBQcmltZSBUaW1lKSByZWxlYXNlLjwvbGk+CjxsaT5WZXJzaW9uIDAuMS4wLiBPY3QgMjAwNS4gSW5pdGlhbCByZWxlYXNlLjwvbGk+CjxsaT5WZXJzaW9uIDAuMS4xLiBPY3QgMjAwNS4gU2V0IHRoZSBIVE1MIG1haWwgZmxhZy48L2xpPgo8bGk+VmVyc2lvbiAwLjEuMi4gT2N0IDIwMDUuIE1vdmVkIFJhbmRvbSBzdHVmZiBpbnRvIGZldXNlcnMsIGFuZCBhZGRlZCB0aGUgYWJpbGl0eSB0byBkZWxldGUgb2xkIGVudHJpZXMgZnJvbSB0aGUgcmVnaXN0cmF0aW9uIHRlbXBvcmFyeSB0YWJsZXM8L2xpPgo8bGk+PHA+VmVyc2lvbiAwLjEuMy4gLSBEZWMgMjAwNTwvcD4KPHA+Rml4ZWQgdGhlIHRvZ2dsZXMgaW4gdGhlIGFkbWluIHByZWZlcmVuY2VzLiAgQWxzbywgY2hhbmdlZCB0aGUgcGVybWlzc2lvbnMgbW9kZWwgdG8gbm90IHJlcXVpcmUgdGhlIHVuaXF1ZSBwZXJtaXNzaW9uIGFkZGVkIHByZXZpb3VzbHkgZm9yIHRoZSBzZWxmcmVnIG1vZHVsZS48L3A+CjxwPlRoaXMgcmVsZWFzZSB3YXMgcmVtb3ZlZCBkdWUgdG8gcG9zc2libGUgZXJyb3JzPC9wPgo8L2xpPgo8bGk+PHA+VmVyc2lvbiAwLjEuNC4gLSBKYW4gMjAwNjwvcD4KPHA+Rml4ZWQgbWlub3IgZXJyb3JzIHdpdGggQ2hlY2tQZXJtaXNzaW9uLCByZXBsYWNlZCBhbGwgYXNzaWduX2J5X3JlZnMncyB3aXRoIGFzc2lnbnMgZm9yIGhvcGVmdWwgcGhwNSBjb21wYXRpYmlsaXR5LjwvcD4KPGxpPjxwPlZlcnNpb24gMC4xLjUuIC0gSmFuIDIwMDY8L3A+CjxwPkFkZGVkIHRoZSBhYmlsaXR5IHRvIHNldCB0aGUgc3ViamVjdCBvZiB0aGUgY29uZmlybWF0aW9uIGVtYWlsLCBhbmQgYWRkZWQgdGhlIGFiaWxpdHkgdG8gc3BlY2lmeSBhIHRleHQgYm9keS4gIFN1YmplY3QsIGFuZCB0ZXh0IGJvZHkgYXJlIHJlcXVpcmVkLjwvcD4KPC9saT4KPGxpPjxwPlZlcnNpb24gMS4wLjAuIC0gRmViIDIwMDY8L3A+CjxwPkZpeGVkIGEgcHJvYmxlbSB3aXRoIHRoZSB2ZXJpZnkgbW9kZS48L3A+CjxwPkFkZGVkIHRoZSBhYmlsaXR5IHRvIGVkaXQgYW5kIGRlbGV0ZSB1c2Vycy4gd2l0aCBzZWxlY3Rpb24gb24gdGhlIGNoZWNrYm94ZXMsIGFuZCAiY2hlY2thbGwiPC9wPgo8cD5Ob3cgcmVxdWlyZSBGRVVzZXJzIDAuMS44IGFuZCBDTVNNYWlsZXIgMS43My45PC9wPgo8cD5BZGRlZCBhbm90aGVyIHRhYiBmb3IgdGhlICJ5b3VyIHNldHRpbmdzIGhhdmUgYmVlbiBhZGp1c3RlZCIgZW1haWwgdGVtcGxhdGVzPC9wPgo8cD5BZGRlZCBDU1YgRXhwb3J0aW5nPC9wPgo8cD5BZGRlZCBhICJEZWxldGUgYWxsIHVzZXJzIG9sZGVyIHRoYW4gYSBkYXkiIGJ1dHRvbjwvcD4KPHA+Tm93IHdvcmtzIHdpdGggdGhlIG1heGltdW0gbGVuZ3RoIGZpZWxkIG9mIEZFVXNlcnM8L3A+CjxwPkFkZGVkIHN1cHBvcnQgZm9yIGRyb3Bkb3ducyBhbmQgdGV4dCBhcmVhczwvcD4KPHA+RGlzYWxsb3cgcHVuY3R1YXRpb24gY2hhcmFjdGVycyBpbiB1c2VybmFtZTwvcD4KPC9saT4KPGxpPjxwPlZlcnNpb24gMS4wLjEuIC0gRmViIDIwMDY8L3A+CjxwPkFkZGVkIHRoZSBhYmlsaXR5IGZvciB1c2VycyB0byByZXF1ZXN0IGFub3RoZXIgcmVnaXN0cmF0aW9uIGVtYWlsICh1c2VzIHRoZSBzYW1lIGNvZGUpLCBpbmNhc2UgdGhleSBsb3N0IHRoZWlyIGZpcnN0IG9uZS48L3A+CjwvbGk+CjxsaT48cD5WZXJzaW9uIDEuMC4yLiAtIEZlYiAyMDA2PC9wPgo8cD5UaGUgIlJlcXVpcmUgZW1haWwgY29uZmlybWF0aW9uIiBjaGVja2JveCBub3cgd29ya3MuICBVc2VycyBhcmUgYWRkZWQgc3RyYWlnaHQgdG8gdGhlIGZyb250ZW5kIHVzZXJzIGRhdGFiYXNlPC9wPgo8cD5GaXhlZCBhIGJ1ZyB3aXRoIHRoZSBjb25maXJtYXRpb24gZW1haWxzIGhhdmluZyBsaW5rcyB0byB0aGUgYWRtaW4gc2VjdGlvbiAobmV3IGJ1ZyBvbmx5KS48L3A+CjwvbGk+CjxsaT48cD5WZXJzaW9uIDEuMC4zLiAtIEZlYiAyMDA2PC9wPgo8cD5BZGRlZCB0aGUgKG9wdGlvbmFsKSBhYmlsaXR5IHRvIHJlcXVpcmUgdGhlIHVzZXIgZW50ZXIgdGhlIGVtYWlsIGFkZHJlc3MgdHdpY2U8L3A+CjxwPkZpeGVkIGEgYnVnIHdpdGggdGhlIHVzZXJlZGl0ZWQgbWVzc2FnZSBub3QgYmVpbmcgdGhyb3duIHRocm91Z2ggc21hcnR5PC9wPgo8cD5GaXhlZCB0aGUgZGVmYXVsdCByZWdpc3RyYXRpb24gdGVtcGxhdGUgYSBiaXQgdG8gYWlkZSBpbiB2YWxpZGF0aW9uIGZvciBub24gcmVxdWlyZWQgZmllbGRzIChmaXhlZCBhIHdhcm5pbmcpPC9wPgo8cD5GaXggcHJvYmxlbXMgd2l0aCBpbmxpbmUgYW5kIG5vbi1pbmxpbmUgZm9ybXMgYW5kIGxpbmtzPC9wPgo8cD5IYW5kbGUgYW5vdGhlciBjYXNlIHdoZXJlIHRoZSBhZG1pbiBtYXkgbm90IGhhdmUgY3JlYXRlZCB0aGUgcHJvcGVyIHR5cGUgb2YgZW1haWwgcHJvcGVydHk8L3A+CjxwPkNoYW5nZWQgdG8gcmVxdWlyZSBDTVMgMC4xMi1iZXRhMiBhdCBhIG1pbmltdW0gKGZvciBzYWZldHkgcHVycG9zZXMpPC9wPgo8L2xpPgo8bGk+PHA+VmVyc2lvbiAxLjAuNC4gLSBNYXIgMjAwNjwvcD4KPHA+TW9yZSBjb250cm9sIG92ZXIgdXNlcm5hbWUgYW5kIHBhc3N3b3JkIGZpZWxkIHNpemVzIChjb250cm9sbGVkIGJ5IGZldXNlcnMpPC9wPgo8cD5Db25maXJtYXRpb24gb24gZWRpdGluZyBwcmVmZXJlbmNlczwvcD4KPHA+UmVxdWlyZSAwLjEyIHByb3BlciBvZiBjbXMgYXMgYSBtaW5pbXVtPC9wPgo8L2xpPgo8bGk+PHA+VmVyc2lvbiAxLjEuMC4gLSBEZWMgMjAwNjwvcD4KICAgIDxwPkFkZGVkIGV2ZW50cyBhbmQgMS4wIGNvbXBhdGliaWxpdHk8L3A+CiAgICA8cD5DYXB0Y2hhIHN1cHBvcnQgKHRoYW5rcyBEaXR0bWFuKTwvcD4KPC9saT4KPGxpPjxwPlZlcnNpb24gMS4xLjEuIC0gQXByIDIwMDc8L3A+CiAgICA8cD5Ob3cgcmVxdWlyZSBGRVVzZXJzIDEuMi4wIChtaW5pbXVtKTwvcD4KICAgIDxwPlN1cHBvcnQgZm9yIG11bHRpc2VsZWN0IGxpc3RzIGluIGZldXNlcnM8L3A+CiAgICA8cD5PdXRwdXQgc29tZSBtb3JlIGZpZWxkcyB0byBzbWFydHkgdG8gYWxsb3cgZm9yIGluY3JlYXNlZCBhY2Nlc3NpYmlsaXR5PC9wPgogICAgPHA+U3BsaXQgY29kZSBvdXQgaW50byBtdWx0aXBsZSBmaWxlcyB0byByZWR1Y2Ugb3ZlcmFsbCBtZW1vcnkgZm9vdHByaW50PC9wPgogICAgPHA+SWdub3JlIGFsbCBpbWFnZSBmaWVsZHM8L3A+CiAgICA8cD5DaGFuZ2UgQ2FwdGNoYSBzdXBwb3J0IHRvIGJlIG9uIGJ5IGRlZmF1bHQgaWYgdGhlIENhcHRjaGEgbW9kdWxlIGlzIGZvdW5kPC9wPgo8L2xpPgo8bGk+PHA+VmVyc2lvbiAxLjEuMi4gLSBOb3YgMjAwNzwvcD4KICAgIDxwPkZpeCB0aGUgcHJvYmxlbSB3aXRoIHRoZSBVc2VyRGlzcGxheUxvc3RSZWdFbWFpbEZvcm0gdGhpbmc8L3A+CiAgICA8cD5BZGRzIHRoZSBpZCB0byB0aGUgb25Vc2VyUmVnaXN0ZXJlZCBFdmVudDwvcD4KICAgIDxwPkZpeGVzIHRoZSBwcm9ibGVtIHdpdGggY2hlY2tib3ggcHJvcGVydGllcyBub3Qgd29ya2luZzwvcD4KICAgIDxwPk5vdyBSZXF1aXJlcyBDTVMgMS4yIG1pbmltdW08L3A+CiAgICA8cD5Zb3UgY2FuIG5vdyB1c2Uge1NlbGZSZWdpc3RyYXRpb24gZ3JvdXA9J2JsYWgnfTwvcD4KICAgIDxwPk5vdyBSZXF1aXJlcyBDTVMgMS4zIG1pbmltdW0uPC9wPgo8L2xpPgo8L3VsPjxiciAvPg==</about>
	<description>A module that allows front end users to register themselves.</description>
	<requires>
	  <requiredname>CMSMailer</requiredname>
	  <requiredversion>1.73.9</requiredversion>
	</requires>
	<requires>
	  <requiredname>FrontEndUsers</requiredname>
	  <requiredversion>1.3</requiredversion>
	</requires>
	<file>
	  <filename>/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/action.default.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFNlbGZSZWdpc3RyYXRpb24gLSBBIG1vZHVsZSB0byBhbGxvdyB1c2VycyB0byByZWdpc3RlciB0aGVtc2VsdmVzCiMgV2l0aCBhIHdlYnNpdGUuCiMgVmVyc2lvbjogMS4xLjEgQ2FsZ3V5MTAwMAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgVXNlckRpc3BsYXlSZWdpc3RyYXRpb25Gb3JtMSgkaWQsICRwYXJhbXMsICRyZXR1cm5faWQsICRtZXNzYWdlKQogICBOT1QgUEFSVCBPRiBUSEUgTU9EVUxFIEFQSQogICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwpmdW5jdGlvbiBfVXNlckRpc3BsYXlSZWdpc3RyYXRpb25Gb3JtMSggJiRtb2R1bGUsICRpZCwgJiRwYXJhbXMsICRyZXR1cm5pZCApCiAgewogICAgaWYoICFpc3NldCggJHBhcmFtc1snZ3JvdXAnXSApICkKICAgICAgewoJLy8gdGhpcyBpcyB1Z2x5IGZvciB0aGUgdXNlciB0byBzZWUKCS8vIGJ1dCBhdCBsZWFzdCB0aGUgYWRtaW4gd2lsbCBiZSBhYmxlIHRvIGZpZ3VyZSBpdCBvdXQKCSRtb2R1bGUtPl9EaXNwbGF5RXJyb3JQYWdlKCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwKCQkJCSAgJG1vZHVsZS0+TGFuZygnZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJykpOwoJcmV0dXJuOwogICAgICB9CgogICAgJGZldXNlcnMgPSYgJG1vZHVsZS0+R2V0TW9kdWxlSW5zdGFuY2UoJ0Zyb250RW5kVXNlcnMnKTsKICAgIGlmKCAhJGZldXNlcnMgKQogICAgICB7CgkvLyB0aGlzIGlzIHVnbHkgZm9yIHRoZSB1c2VyIHRvIHNlZQoJLy8gYnV0IGF0IGxlYXN0IHRoZSBhZG1pbiB3aWxsIGJlIGFibGUgdG8gZmlndXJlIGl0IG91dAoJJG1vZHVsZS0+X0Rpc3BsYXlFcnJvclBhZ2UoICRpZCwgJHBhcmFtcywgJHJldHVybmlkLAoJCQkJICAkbW9kdWxlLT5MYW5nKCdlcnJvcl9ub2ZldXNlcnNtb2R1bGUnKSk7CglyZXR1cm47CiAgICAgIH0KCiAgICAkY21zbWFpbGVyID0mICRtb2R1bGUtPkdldE1vZHVsZUluc3RhbmNlKCdDTVNNYWlsZXInKTsKICAgIGlmKCAhJGNtc21haWxlciApCiAgICAgIHsKCS8vIHRoaXMgaXMgdWdseSBmb3IgdGhlIHVzZXIgdG8gc2VlCgkvLyBidXQgYXQgbGVhc3QgdGhlIGFkbWluIHdpbGwgYmUgYWJsZSB0byBmaWd1cmUgaXQgb3V0CgkkbW9kdWxlLT5fRGlzcGxheUVycm9yUGFnZSggJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsCgkJCQkgICRtb2R1bGUtPkxhbmcoJ2Vycm9yX25vZmV1c2Vyc21vZHVsZScpKTsKCXJldHVybjsKICAgICAgfQoKICAgIC8vIHllcCwgYWxsIHRoZSBtb2R1bGVzIGFyZSBoZXJlLCBub3cgd2UgCiAgICAvLyBoYXZlIHRvIGNvbnZlcnQgdGhlIGdyb3VwbmFtZSBpbnRvIGFuIGlkCiAgICAkZ3JwaWQgPSAkZmV1c2Vycy0+R2V0R3JvdXBJRCgkcGFyYW1zWydncm91cCddKTsKICAgIGlmKCAkZ3JwaWQgPT0gZmFsc2UgKQogICAgICB7CgkvLyB0aGlzIGlzIHVnbHkgZm9yIHRoZSB1c2VyIHRvIHNlZQoJLy8gYnV0IGF0IGxlYXN0IHRoZSBhZG1pbiB3aWxsIGJlIGFibGUgdG8gZmlndXJlIGl0IG91dAoJJG1vZHVsZS0+X0Rpc3BsYXlFcnJvclBhZ2UoICRpZCwgJHBhcmFtcywgJHJldHVybmlkLAoJCQkJICAkbW9kdWxlLT5MYW5nKCdlcnJvcl9ub3N1Y2hncm91cCcpKTsKCXJldHVybjsKICAgICAgfQoKICAgIC8vIG5vdyB3ZSBoYXZlIGFuIGlkLi4uIGhhdmUgdG8gZ2V0IGEgbGlzdCBvZiB0aGUgZ3JvdXBzIHByb3BlcnRpZXMKICAgICRyZWxhdGlvbnMgPSAkZmV1c2Vycy0+R2V0R3JvdXBQcm9wZXJ0eVJlbGF0aW9ucyggJGdycGlkICk7CiAgICBpZiggJHJlbGF0aW9uc1swXSA9PSBmYWxzZSApCiAgICAgIHsKCS8vIHRoaXMgaXMgdWdseSBmb3IgdGhlIHVzZXIgdG8gc2VlCgkvLyBidXQgYXQgbGVhc3QgdGhlIGFkbWluIHdpbGwgYmUgYWJsZSB0byBmaWd1cmUgaXQgb3V0CgkkbW9kdWxlLT5fRGlzcGxheUVycm9yUGFnZSggJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsICRyZWxhdGlvbnNbMV0gKTsKCXJldHVybjsKICAgICAgfQogICAgdWFzb3J0KCAkcmVsYXRpb25zLCAKCSAgICBhcnJheSgnU2VsZnJlZ1V0aWxzJywnY29tcGFyZV9lbGVtZW50c19ieV9zb3J0b3JkZXJfa2V5JykgKTsKCiAgICAvLyBub3cgd2UgaGF2ZSB0aGUgcHJvcGVydGllcywgZ290dGEgc2hvdyBzb21ldGhpbmcgdG8gdGhlIHVzZXIKICAgIC8vIGRhbW1pdC4KICAgIGlmKCBpc3NldCggJHBhcmFtc1snZXJyb3InXSApICkKICAgICAgewoJJG1vZHVsZS0+c21hcnR5LT5hc3NpZ24oJ2Vycm9yJywgJHBhcmFtc1snZXJyb3InXSk7CiAgICAgIH0KICAgIGlmKCBpc3NldCggJHBhcmFtc1snbWVzc2FnZSddICkgKQogICAgICB7CgkkbW9kdWxlLT5zbWFydHktPmFzc2lnbignbWVzc2FnZScsICRwYXJhbXNbJ21lc3NhZ2UnXSk7CiAgICAgIH0KCiAgICAvLyBub3cgd2UncmUgcmVhZHkgdG8gcG9wdWxhdGUgdGhlIHRlbXBsYXRlCiAgICAvLyBmaXJzdCB3ZSBwdXQgaW4gc3R1ZmYgdGhhdCBpcyByZXF1aXJlZCAodXNlcm5hbWUsIHBhc3N3b3JkLCBldGMsIGV0YykKICAgICRyb3dhcnJheSA9IGFycmF5KCk7CgogICAgLy8gbWFrZSBzdXJlIHVzZXJuYW1lIGlzIGluIHRoZXJlCiAgICAkb25lcm93ID0gbmV3IFN0ZENsYXNzKCk7CiAgICAkb25lcm93LT5jb2xvciA9ICRmZXVzZXJzLT5HZXRQcmVmZXJlbmNlKCdyZXF1aXJlZF9maWVsZF9jb2xvcicsJ2JsdWUnKTsKICAgICRvbmVyb3ctPm1hcmtlciA9ICRmZXVzZXJzLT5HZXRQcmVmZXJlbmNlKCdyZXF1aXJlZF9maWVsZF9tYXJrZXInLCcqJyk7CiAgICAkb25lcm93LT5yZXF1aXJlZCA9IDE7CiAgICAkdmFsID0gKGlzc2V0KCRwYXJhbXNbJ2lucHV0X3VzZXJuYW1lJ10pKSA/ICRwYXJhbXNbJ2lucHV0X3VzZXJuYW1lJ10gOiAnJzsKICAgICRvbmVyb3ctPmhpZGRlbiA9IFNlbGZyZWdVdGlsczo6bXlDcmVhdGVJbnB1dEhpZGRlbiggJGlkLCAnaGlkZGVuX3VzZXJuYW1lJywKCQkJCQkgICBpbXBsb2RlKCI7IixhcnJheSgndXNlcm5hbWUnLDAsMzAsMikpKTsKICAgICRvbmVyb3ctPnByb21wdCA9ICRtb2R1bGUtPkxhbmcoJ3VzZXJuYW1lJyk7CiAgICAkb25lcm93LT5jb250cm9sID0kbW9kdWxlLT5DcmVhdGVJbnB1dFRleHQoJGlkLCAnaW5wdXRfdXNlcm5hbWUnLCAkdmFsLAoJCQkJCSAgICAgJGZldXNlcnMtPkdldFByZWZlcmVuY2UoJ3VzZXJuYW1lZmxkbGVuZ3RoJyksCgkJCQkJICAgICAkZmV1c2Vycy0+R2V0UHJlZmVyZW5jZSgnbWF4X3VzZXJuYW1lbGVuZ3RoJykpOwogICAgYXJyYXlfcHVzaCggJHJvd2FycmF5LCAkb25lcm93ICk7CgogICAgLy8gYW5kIHBhc3N3b3JkCiAgICAkb25lcm93ID0gbmV3IFN0ZENsYXNzKCk7CiAgICAkb25lcm93LT5jb2xvciA9ICRmZXVzZXJzLT5HZXRQcmVmZXJlbmNlKCdyZXF1aXJlZF9maWVsZF9jb2xvcicsJ2JsdWUnKTsKICAgICRvbmVyb3ctPm1hcmtlciA9ICRmZXVzZXJzLT5HZXRQcmVmZXJlbmNlKCdyZXF1aXJlZF9maWVsZF9tYXJrZXInLCcqJyk7CiAgICAkb25lcm93LT5yZXF1aXJlZCA9IDE7CiAgICAkdmFsID0gKGlzc2V0KCRwYXJhbXNbJ2lucHV0X3Bhc3N3b3JkJ10pKSA/ICRwYXJhbXNbJ2lucHV0X3Bhc3N3b3JkJ10gOiAnJzsKICAgICRvbmVyb3ctPmhpZGRlbiA9IFNlbGZyZWdVdGlsczo6bXlDcmVhdGVJbnB1dEhpZGRlbiggJGlkLCAnaGlkZGVuX3Bhc3N3b3JkJywKCQkJCQkgICBpbXBsb2RlKCI7IixhcnJheSgncGFzc3dvcmQnLDAsMzAsMikpKTsKICAgICRvbmVyb3ctPnByb21wdCA9ICRtb2R1bGUtPkxhbmcoJ3Bhc3N3b3JkJyk7CiAgICAkb25lcm93LT5jb250cm9sID0kbW9kdWxlLT5DcmVhdGVJbnB1dFBhc3N3b3JkKCRpZCwgJ2lucHV0X3Bhc3N3b3JkJywgJHZhbCwgCgkJCQkJCSAkZmV1c2Vycy0+R2V0UHJlZmVyZW5jZSgncGFzc3dvcmRmbGRsZW5ndGgnKSwKCQkJCQkJICRmZXVzZXJzLT5HZXRQcmVmZXJlbmNlKCdtYXhfcGFzc3dvcmRsZW5ndGgnKSk7CiAgICBhcnJheV9wdXNoKCAkcm93YXJyYXksICRvbmVyb3cgKTsKCiAgICAvLyBhbmQgbWFrZSBoaW0gcmVwZWF0IHRoZSBwYXNzd29yZAogICAgJG9uZXJvdyA9IG5ldyBTdGRDbGFzcygpOwogICAgJG9uZXJvdy0+Y29sb3IgPSAkZmV1c2Vycy0+R2V0UHJlZmVyZW5jZSgncmVxdWlyZWRfZmllbGRfY29sb3InLCdibHVlJyk7CiAgICAkb25lcm93LT5tYXJrZXIgPSAkZmV1c2Vycy0+R2V0UHJlZmVyZW5jZSgncmVxdWlyZWRfZmllbGRfbWFya2VyJywnKicpOwogICAgJG9uZXJvdy0+cmVxdWlyZWQgPSAxOwogICAgJHZhbCA9IChpc3NldCgkcGFyYW1zWydpbnB1dF9yZXBlYXRwYXNzd29yZCddKSkgPyAkcGFyYW1zWydpbnB1dF9yZXBlYXRwYXNzd29yZCddIDogJyc7CiAgICAkb25lcm93LT5oaWRkZW4gPSBTZWxmcmVnVXRpbHM6Om15Q3JlYXRlSW5wdXRIaWRkZW4oICRpZCwgJ2hpZGRlbl9yZXBlYXRwYXNzd29yZCcsCgkJCQkJICAgaW1wbG9kZSgiOyIsYXJyYXkoJ3JlcGVhdHBhc3N3b3JkJywwLDMwLDIpKSk7CiAgICAkb25lcm93LT5wcm9tcHQgPSAkbW9kdWxlLT5MYW5nKCdyZXBlYXRwYXNzd29yZCcpOwogICAgJG9uZXJvdy0+Y29udHJvbCA9JG1vZHVsZS0+Q3JlYXRlSW5wdXRQYXNzd29yZCgkaWQsICdpbnB1dF9yZXBlYXRwYXNzd29yZCcsICR2YWwsIAoJCQkJCQkgJGZldXNlcnMtPkdldFByZWZlcmVuY2UoJ3Bhc3N3b3JkZmxkbGVuZ3RoJyksCgkJCQkJCSAkZmV1c2Vycy0+R2V0UHJlZmVyZW5jZSgnbWF4X3Bhc3N3b3JkbGVuZ3RoJykpOwogICAgYXJyYXlfcHVzaCggJHJvd2FycmF5LCAkb25lcm93ICk7CgogICAgJHJlbGF0aW9uczIgPSBhcnJheSgpOwogICAgZm9yZWFjaCggJHJlbGF0aW9ucyBhcyAkcmVsbiApCiAgICAgIHsKCSRkZWZuID0gJGZldXNlcnMtPkdldFByb3BlcnR5RGVmbiggJHJlbG5bJ25hbWUnXSApOwoJaWYoICRkZWZuWyd0eXBlJ10gPT0gNiApCgkgIHsKCSAgICAvLyBpbWFnZXMgYXJlIGlnbm9yZWQKCSAgICBjb250aW51ZTsKCSAgfQoKCSRyZWxuWydtYXB0byddID0gJGRlZm5bJ25hbWUnXTsKCSRyZWxuWydwcm9tcHQnXSA9ICRkZWZuWydwcm9tcHQnXTsKCWlmKCAkbW9kdWxlLT5HZXRQcmVmZXJlbmNlKCdzZWxmcmVnX2ZvcmNlX2VtYWlsX3R3aWNlJyApICkKCSAgewoJICAgICRyZWxhdGlvbnMyW10gPSAkcmVsbjsKCSAgICBpZiggJGRlZm5bJ3R5cGUnXSA9PSAyICkKCSAgICAgIHsKCQkvLyB0b2RvLCBjaGFuZ2Ugc29tZXRoaW5nIGhlcmUKCQkkcmVsblsnbmFtZSddID0gJHJlbG5bJ25hbWUnXS4nX2FnYWluJzsKCQkkcmVsblsnbWFwdG8nXSA9ICRkZWZuWyduYW1lJ107CgkJJHJlbG5bJ3Byb21wdCddID0gJGRlZm5bJ3Byb21wdCddLicgKCcuJG1vZHVsZS0+TGFuZygnYWdhaW4nKS4nKSc7CgkJJHJlbGF0aW9uczJbXSA9ICRyZWxuOwoJICAgICAgfQoJICB9CgllbHNlCgkgIHsKCSAgICAkcmVsYXRpb25zMltdID0gJHJlbG47CgkgIH0KICAgICAgfQoKICAgIGZvcmVhY2goICRyZWxhdGlvbnMyIGFzICRyZWxuICkKICAgIHsKICAgICAgLy8gZG9uJ3QgcHJvY2VzcyBoaWRkZW4gZmllbGRzIGhlcmUKICAgICAgaWYoICRyZWxuWydyZXF1aXJlZCddID09IDMgKSBjb250aW51ZTsKCiAgICAgIC8vIGdldCB0aGUgcHJvcGVydHkgZGVmaW5pdGlvbgogICAgICAkZGVmbiA9ICRmZXVzZXJzLT5HZXRQcm9wZXJ0eURlZm4oICRyZWxuWydtYXB0byddICk7CiAgICAgIAogICAgICAkb25lcm93ID0gbmV3IFN0ZENsYXNzKCk7CgogICAgICAkY29sb3IgPSAnJzsKICAgICAgaWYoICRyZWxuWydyZXF1aXJlZCddID09IDIgKSAkY29sb3IgPSAkZmV1c2Vycy0+R2V0UHJlZmVyZW5jZSgncmVxdWlyZWRfZmllbGRfY29sb3InLCdibHVlJyk7CiAgICAgICRtYXJrZXIgPSAnJzsKICAgICAgaWYoICRyZWxuWydyZXF1aXJlZCddID09IDIgKSAkbWFya2VyID0gJGZldXNlcnMtPkdldFByZWZlcmVuY2UoJ3JlcXVpcmVkX2ZpZWxkX21hcmtlcicsJyonKTsKICAgICAgJG9uZXJvdy0+cmVxdWlyZWQgPSAoJHJlbG5bJ3JlcXVpcmVkJ10gPT0gMik7CiAgICAgICRvbmVyb3ctPmNvbG9yICAgID0gJGNvbG9yOwogICAgICAkb25lcm93LT5tYXJrZXIgICA9ICRtYXJrZXI7CiAgICAgICRvbmVyb3ctPmhpZGRlbiA9IFNlbGZyZWdVdGlsczo6bXlDcmVhdGVJbnB1dEhpZGRlbiggJGlkLCAnaGlkZGVuXycuJHJlbG5bJ25hbWUnXSwKCQkJCQkgICAgIGltcGxvZGUoIjsiLGFycmF5KCRyZWxuWyduYW1lJ10sJGRlZm5bJ3R5cGUnXSwKCQkJCQkJCSAgICAgICAkZGVmblsnbGVuZ3RoJ10sJHJlbG5bJ3JlcXVpcmVkJ10pKSk7CgogICAgICAkdmFsID0gaXNzZXQoJHBhcmFtc1snaW5wdXRfJy4kcmVsblsnbmFtZSddXSkgPyAkcGFyYW1zWydpbnB1dF8nLiRyZWxuWyduYW1lJ11dIDogJyc7CiAgICAgICRvbmVyb3ctPnByb21wdCA9ICRyZWxuWydwcm9tcHQnXTsKICAgICAgJG9uZXJvdy0+bGFiZWxmb3IgPSAkaWQuJHJlbG5bJ25hbWUnXTsKICAgICAgc3dpdGNoKCAkZGVmblsndHlwZSddICkKCXsKCWNhc2UgMDogLy8gdGV4dAoJICAkb25lcm93LT5jb250cm9sID0gJG1vZHVsZS0+Q3JlYXRlSW5wdXRUZXh0KCAkaWQsICdpbnB1dF8nLiRyZWxuWyduYW1lJ10sCgkJCQkJCSAgICAgJHZhbCwgJGRlZm5bJ2xlbmd0aCddLCAkZGVmblsnbWF4bGVuZ3RoJ10gKTsKCSAgYnJlYWs7CgoJY2FzZSAxOiAvLyBjaGVja2JveAoJICAkb25lcm93LT5jb250cm9sID0gU2VsZnJlZ1V0aWxzOjpteUNyZWF0ZUlucHV0Q2hlY2tib3goICRpZCwgJ2lucHV0XycuJHJlbG5bJ25hbWUnXSwgMSwgJHZhbCApOwoJICBicmVhazsKCgljYXNlIDI6IC8vIGVtYWlsCgkgICRvbmVyb3ctPmNvbnRyb2wgPSAkbW9kdWxlLT5DcmVhdGVJbnB1dFRleHQoICRpZCwgJ2lucHV0XycuJHJlbG5bJ25hbWUnXSwKCQkJCQkJICAgICAkdmFsLCAkZGVmblsnbGVuZ3RoJ10sICgkZGVmblsnbWF4bGVuZ3RoJ10pICk7CgkgIGJyZWFrOwoKCWNhc2UgMzogLy8gdGV4dGFyZWEKCSAgJG9uZXJvdy0+Y29udHJvbCA9ICRtb2R1bGUtPkNyZWF0ZVRleHRBcmVhKGZhbHNlLCAkaWQsICR2YWwsICdpbnB1dF8nLiRyZWxuWyduYW1lJ10pOwoJICBicmVhazsKCgljYXNlIDQ6IC8vIGRyb3Bkb3duCgkgICRvbmVyb3ctPmNvbnRyb2wgPSAkbW9kdWxlLT5DcmVhdGVJbnB1dERyb3Bkb3duKCAKCQkJCQkJCSRpZCwgCgkJCQkJCQknaW5wdXRfJy4kcmVsblsnbmFtZSddLCAKCQkJCQkJCSRmZXVzZXJzLT5HZXRTZWxlY3RPcHRpb25zKCRkZWZuWyduYW1lJ10sIDEpLCAKCQkJCQkJCS0xLCAKCQkJCQkJCSR2YWwpOwoJICBicmVhazsKCgljYXNlIDU6IC8vIG11bHRpc2VsZWN0CgkgICRvbmVyb3ctPmNvbnRyb2wgPSAkbW9kdWxlLT5DcmVhdGVJbnB1dFNlbGVjdExpc3QoJGlkLAoJCQkJCQkJICAnaW5wdXRfJy4kZGVmblsnbmFtZSddLidbXScsCgkJCQkJCQkgICRmZXVzZXJzLT5HZXRTZWxlY3RPcHRpb25zKCRkZWZuWyduYW1lJ10sIDEpLAoJCQkJCQkJICBhcnJheSgpLAoJCQkJCQkJICAkdmFsKTsKCSAgYnJlYWs7Cgl9CgogICAgICBhcnJheV9wdXNoKCAkcm93YXJyYXksICRvbmVyb3cgKTsKICAgIH0KCiAgICAvLyBhbmQgdGhlIHJlc3Qgb2YgdGhlIHN0dWZmCiAgICAkbW9kdWxlLT5zbWFydHktPmFzc2lnbiAoJ3N0YXJ0Zm9ybScsCgkJCSAgICRtb2R1bGUtPkNyZWF0ZUZvcm1TdGFydCAoJGlkLCAncmVndXNlcicsICRyZXR1cm5pZCwgJ3Bvc3QnLCAnJywgdHJ1ZSkpOwogICAgJG1vZHVsZS0+c21hcnR5LT5hc3NpZ24gKCdlbmRmb3JtJywgJG1vZHVsZS0+Q3JlYXRlRm9ybUVuZCAoKSk7CiAgICAkbW9kdWxlLT5zbWFydHktPmFzc2lnbigndGl0bGUnLCRtb2R1bGUtPkxhbmcoJ3VzZXJfcmVnaXN0cmF0aW9uJykpOwogICAgJG1vZHVsZS0+c21hcnR5LT5hc3NpZ24oJ2hpZGRlbicsCgkJCSAgJG1vZHVsZS0+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLCAnZ3JvdXBfaWQnLCAkZ3JwaWQgKS4KCQkJICAkbW9kdWxlLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsICdncm91cCcsICRwYXJhbXNbJ2dyb3VwJ10gKSk7CiAgICAkbW9kdWxlLT5zbWFydHktPmFzc2lnbignY29udHJvbHMnLCAkcm93YXJyYXkpOwogICAgJG1vZHVsZS0+c21hcnR5LT5hc3NpZ24oJ2NvbnRyb2xjb3VudCcsIGNvdW50KCRyb3dhcnJheSkpOwogICAgJG1vZHVsZS0+c21hcnR5LT5hc3NpZ24oJ3N1Ym1pdCcsJG1vZHVsZS0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCdzdWJtaXQnLAoJCQkJCQkJICAgICRtb2R1bGUtPkxhbmcoJ3N1Ym1pdCcpKSk7CiAgICAkbW9kdWxlLT5zbWFydHktPmFzc2lnbignY2FuY2VsJywkbW9kdWxlLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsJ2NhbmNlbCcsCgkJCQkJCQkgICAgJG1vZHVsZS0+TGFuZygnY2FuY2VsJykpKTsKICAgICRtb2R1bGUtPnNtYXJ0eS0+YXNzaWduKCdtc2dfc2VuZGFub3RoZXJlbWFpbCcsCgkJCSAgJG1vZHVsZS0+TGFuZygnbXNnX3NlbmRhbm90aGVyZW1haWwnKSk7CiAgICAkbW9kdWxlLT5zbWFydHktPmFzc2lnbignbGlua19zZW5kYW5vdGhlcmVtYWlsJywKCQkJICAkbW9kdWxlLT5DcmVhdGVMaW5rKCRpZCwnZGVmYXVsdCcsJHJldHVybmlkLCRtb2R1bGUtPkxhbmcoJ2NsaWNraGVyZScpLAoJCQkJCSAgICBhcnJheSgnbW9kZSc9PidzZW5kYW5vdGhlcmVtYWlsJyksJycsZmFsc2UsdHJ1ZSkpOwoKICAgICRjYXB0Y2hhID0mICRtb2R1bGUtPkdldE1vZHVsZUluc3RhbmNlKCdDYXB0Y2hhJyk7CiAgICBpZiggaXNfb2JqZWN0KCRjYXB0Y2hhKSAmJiAhaXNzZXQoJHBhcmFtc1snbm9jYXB0Y2hhJ10pICkKICAgICAgewoJJG1vZHVsZS0+c21hcnR5LT5hc3NpZ24oJ2NhcHRjaGFfdGl0bGUnLCAkbW9kdWxlLT5MYW5nKCdjYXB0Y2hhX3RpdGxlJykpOwoJJG1vZHVsZS0+c21hcnR5LT5hc3NpZ24oJ2NhcHRjaGEnLCAkY2FwdGNoYS0+Z2V0Q2FwdGNoYSgpKTsKCSRtb2R1bGUtPnNtYXJ0eS0+YXNzaWduKCdpbnB1dF9jYXB0Y2hhJywKCQkJCSRtb2R1bGUtPkNyZWF0ZUlucHV0VGV4dCgkaWQsJ2lucHV0X2NhcHRjaGEnLCcnLDEwKSk7CiAgICAgIH0KCQogICAgLy8gdG9kbywgcHV0IHRoaXMgaW50byB0aGUgZGF0YWJhc2UgYW5kIGxldCB0aGUgYWRtaW4gcGxheSB3aXRoIGl0LgogICAgZWNobyAkbW9kdWxlLT5Qcm9jZXNzVGVtcGxhdGVGcm9tRGF0YWJhc2UoJ3NlbGZyZWdfcmVnMXRlbXBsYXRlJyk7CiAgfQoKCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgVXNlckRpc3BsYXlWZXJpZmljYXRpb25Gb3JtKCRpZCwgJHBhcmFtcywgJHJldHVybl9pZCwgJG1lc3NhZ2UpCiAgIE5PVCBQQVJUIE9GIFRIRSBNT0RVTEUgQVBJCiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCmZ1bmN0aW9uIF9Vc2VyRGlzcGxheVZlcmlmaWNhdGlvbkZvcm0oICYkbW9kdWxlLCAkaWQsICYkcGFyYW1zLCAkcmV0dXJuaWQgKQogIHsKICAgICRmZXVzZXJzID0gJG1vZHVsZS0+R2V0TW9kdWxlSW5zdGFuY2UoJ0Zyb250RW5kVXNlcnMnKTsKICAgIGlmKCAhJGZldXNlcnMgKQogICAgICB7CgkkbW9kdWxlLT5fRGlzcGxheUVycm9yUGFnZSgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwgCgkJCQkgJG1vZHVsZS0+TGFuZygnZXJyb3Jfbm9mZXVzZXJzbW9kdWxlJykpOwoJcmV0dXJuOwogICAgICB9CgogICAgaWYoIGlzc2V0KCAkcGFyYW1zWydlcnJvciddICkgKQogICAgICB7CgkkbW9kdWxlLT5zbWFydHktPmFzc2lnbignZXJyb3InLCAkcGFyYW1zWydlcnJvciddKTsKICAgICAgfQogICAgaWYoIGlzc2V0KCAkcGFyYW1zWydtZXNzYWdlJ10gKSApCiAgICAgIHsKCSRtb2R1bGUtPnNtYXJ0eS0+YXNzaWduKCdtZXNzYWdlJywgJHBhcmFtc1snbWVzc2FnZSddKTsKICAgICAgfQoKICAgICR1c2VybmFtZSA9ICcnOwogICAgaWYoIGlzc2V0KCAkcGFyYW1zWydpbnB1dF91c2VybmFtZSddICkgKQogICAgICB7CgkkdXNlcm5hbWUgPSB0cmltKCRwYXJhbXNbJ2lucHV0X3VzZXJuYW1lJ10pOwogICAgICB9CiAgICAkcGFzc3dvcmQgPSAnJzsKICAgIGlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfcGFzc3dvcmQnXSApICkKICAgICAgewoJJHBhc3N3b3JkID0gdHJpbSgkcGFyYW1zWydpbnB1dF9wYXNzd29yZCddKTsKICAgICAgfQogICAgJGNvZGUgPSAnJzsKICAgIGlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfY29kZSddICkgKQogICAgICB7CgkkY29kZSA9IHRyaW0oJHBhcmFtc1snaW5wdXRfY29kZSddKTsKICAgICAgfQogICAgJGdyb3VwX2lkID0gJyc7CiAgICBpZiggaXNzZXQoICRwYXJhbXNbJ2lucHV0X2dyb3VwX2lkJ10gKSApCiAgICAgIHsKCSRncm91cF9pZCA9IHRyaW0oJHBhcmFtc1snaW5wdXRfZ3JvdXBfaWQnXSk7CiAgICAgIH0KCiAgICAvLyBwcm9jZXNzIHRoZSB0ZW1wbGF0ZQogICAgJG1vZHVsZS0+c21hcnR5LT5hc3NpZ24oJ3RpdGxlJywKCQkJICAkbW9kdWxlLT5MYW5nKCd0aXRsZV92ZXJpZnlyZWdpc3RyYXRpb24nKSk7CiAgICAkbW9kdWxlLT5zbWFydHktPmFzc2lnbigncHJvbXB0X3VzZXJuYW1lJywKCQkJICAkbW9kdWxlLT5MYW5nKCd1c2VybmFtZScpKTsKICAgICRtb2R1bGUtPnNtYXJ0eS0+YXNzaWduKCdpbnB1dF91c2VybmFtZScsCgkJCSAgJG1vZHVsZS0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwnaW5wdXRfdXNlcm5hbWUnLAoJCQkJCQkgJHVzZXJuYW1lLCAKCQkJCQkJICRmZXVzZXJzLT5HZXRQcmVmZXJlbmNlKCd1c2VybmFtZWZsZGxlbmd0aCcpLAoJCQkJCQkgJGZldXNlcnMtPkdldFByZWZlcmVuY2UoJ21heF91c2VybmFtZWxlbmd0aCcpKSk7CiAgICAkbW9kdWxlLT5zbWFydHktPmFzc2lnbigncHJvbXB0X3Bhc3N3b3JkJywKCQkJICAkbW9kdWxlLT5MYW5nKCdwYXNzd29yZCcpKTsKICAgICRtb2R1bGUtPnNtYXJ0eS0+YXNzaWduKCdpbnB1dF9wYXNzd29yZCcsCgkJCSAgJG1vZHVsZS0+Q3JlYXRlSW5wdXRQYXNzd29yZCgkaWQsJ2lucHV0X3Bhc3N3b3JkJywKCQkJCQkJICAgICAkcGFzc3dvcmQsIAoJCQkJCQkgICAgICRmZXVzZXJzLT5HZXRQcmVmZXJlbmNlKCdwYXNzd29yZGZsZGxlbmd0aCcpLAoJCQkJCQkgICAgICRmZXVzZXJzLT5HZXRQcmVmZXJlbmNlKCdtYXhfcGFzc3dvcmRsZW5ndGgnKSkpOwogICAgJG1vZHVsZS0+c21hcnR5LT5hc3NpZ24oJ3Byb21wdF9jb2RlJywKCQkJICAkbW9kdWxlLT5MYW5nKCdjb2RlJykpOwogICAgJG1vZHVsZS0+c21hcnR5LT5hc3NpZ24oJ2lucHV0X2NvZGUnLAoJCQkgICRtb2R1bGUtPkNyZWF0ZUlucHV0VGV4dCgkaWQsJ2lucHV0X2NvZGUnLAoJCQkJCQkgJGNvZGUsIDMwLCAzMCApKTsKICAgICRtb2R1bGUtPnNtYXJ0eS0+YXNzaWduKCdzdWJtaXQnLAoJCQkgICRtb2R1bGUtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwnc3VibWl0JywkbW9kdWxlLT5MYW5nKCdzdWJtaXQnKSkpOwogICAgJG1vZHVsZS0+c21hcnR5LT5hc3NpZ24oJ2NhbmNlbCcsCgkJCSAgJG1vZHVsZS0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCdjYW5jZWwnLCRtb2R1bGUtPkxhbmcoJ2NhbmNlbCcpKSk7CiAgICAkbW9kdWxlLT5zbWFydHktPmFzc2lnbignc3RhcnRmb3JtJywKCQkJICAgICRtb2R1bGUtPkNyZWF0ZUZyb250ZW5kRm9ybVN0YXJ0KCRpZCwgJHJldHVybmlkLCAndmVyaWZ5dXNlcicpKTsKICAgICRtb2R1bGUtPnNtYXJ0eS0+YXNzaWduKCdoaWRkZW4nLAoJCQkgICRtb2R1bGUtPkNyZWF0ZUlucHV0SGlkZGVuKCRpZCwgJ2lucHV0X2dyb3VwX2lkJywgJGdyb3VwX2lkICkpOwogICAgJG1vZHVsZS0+c21hcnR5LT5hc3NpZ24oJ2VuZGZvcm0nLAoJCQkgICRtb2R1bGUtPkNyZWF0ZUZvcm1FbmQoKSk7CiAgICBlY2hvICRtb2R1bGUtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhYmFzZSgnc2VsZnJlZ19yZWcydGVtcGxhdGUnKTsKICB9CgoKICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICBVc2VyRGlzcGxheUxvc3RSZWdFbWFpbEZvcm0oJGlkLCAkcGFyYW1zLCAkcmV0dXJuX2lkLCAkbWVzc2FnZSkKICAgTk9UIFBBUlQgT0YgVEhFIE1PRFVMRSBBUEkKICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KZnVuY3Rpb24gX1VzZXJEaXNwbGF5TG9zdFJlZ0VtYWlsRm9ybSggJiRtb2R1bGUsICRpZCwgJiRwYXJhbXMsICRyZXR1cm5pZCApCiAgewogICAgJGZldXNlcnMgPSAkbW9kdWxlLT5HZXRNb2R1bGVJbnN0YW5jZSgnRnJvbnRFbmRVc2VycycpOwogICAgaWYoICEkZmV1c2VycyApCiAgICAgIHsKCSRtb2R1bGUtPl9EaXNwbGF5RXJyb3JQYWdlKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAKCQkJCSAkbW9kdWxlLT5MYW5nKCdlcnJvcl9ub2ZldXNlcnNtb2R1bGUnKSk7CglyZXR1cm47CiAgICAgIH0KCiAgICBpZiggaXNzZXQoICRwYXJhbXNbJ2Vycm9yJ10gKSApCiAgICAgIHsKCSRtb2R1bGUtPnNtYXJ0eS0+YXNzaWduKCdlcnJvcicsICRwYXJhbXNbJ2Vycm9yJ10pOwogICAgICB9CiAgICBpZiggaXNzZXQoICRwYXJhbXNbJ21lc3NhZ2UnXSApICkKICAgICAgewoJJG1vZHVsZS0+c21hcnR5LT5hc3NpZ24oJ21lc3NhZ2UnLCAkcGFyYW1zWydtZXNzYWdlJ10pOwogICAgICB9CgogICAgJG1vZHVsZS0+c21hcnR5LT5hc3NpZ24oJ3N0YXJ0Zm9ybScsCgkJCSAgJG1vZHVsZS0+Q3JlYXRlRm9ybVN0YXJ0KCAkaWQsICdzZW5kYW5vdGhlcmVtYWlsJywgJHJldHVybmlkKSk7CiAgICAkbW9kdWxlLT5zbWFydHktPmFzc2lnbiAoJ2VuZGZvcm0nLCAkbW9kdWxlLT5DcmVhdGVGb3JtRW5kICgpKTsKICAgICRtb2R1bGUtPnNtYXJ0eS0+YXNzaWduICgnaW5wdXRfdXNlcm5hbWUnLAoJCQkgICAkb25lcm93LT5jb250cm9sID0kbW9kdWxlLT5DcmVhdGVJbnB1dFRleHQoJGlkLCAnaW5wdXRfdXNlcm5hbWUnLCAKCQkJCQkJCQkgICAgJHZhbCwgMjAsIAoJCQkJCQkJCSAgICAkZmV1c2Vycy0+R2V0UHJlZmVyZW5jZSgnbWF4X3VzZXJuYW1lbGVuZ3RoJykpKTsKICAgICRtb2R1bGUtPnNtYXJ0eS0+YXNzaWduKCdzdWJtaXQnLCRtb2R1bGUtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwnc3VibWl0JywKCQkJCQkJCSAgICAkbW9kdWxlLT5MYW5nKCdzdWJtaXQnKSkpOwogICAgZWNobyAkbW9kdWxlLT5Qcm9jZXNzVGVtcGxhdGVGcm9tRGF0YWJhc2UoJ3NlbGZyZWdfc2VuZGFub3RoZXJlbWFpbF90ZW1wbGF0ZScpOwogIH0KCgoKCiAgICAkbW9kZSA9ICdzaWdudXAnOwogICAgaWYoIGlzc2V0KCAkcGFyYW1zWydtb2RlJ10gKSApCiAgICAgIHsKCSRtb2RlID0gJHBhcmFtc1snbW9kZSddOwogICAgICB9CgogICAgc3dpdGNoKCAkbW9kZSApCiAgICAgIHsKICAgICAgY2FzZSAnc2lnbnVwJzoKCV9Vc2VyRGlzcGxheVJlZ2lzdHJhdGlvbkZvcm0xKCAkdGhpcywgJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQgKTsKCWJyZWFrOwoKICAgICAgY2FzZSAndmVyaWZ5JzoKCV9Vc2VyRGlzcGxheVZlcmlmaWNhdGlvbkZvcm0oICR0aGlzLCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCApOwoJYnJlYWs7CgogICAgICBjYXNlICdsb3N0ZW1haWwnOgogICAgICBjYXNlICdzZW5kYW5vdGhlcmVtYWlsJzoKICAgICAgY2FzZSAnc2VuZG1vcmVtYWlsJzoKCV9Vc2VyRGlzcGxheUxvc3RSZWdFbWFpbEZvcm0oICR0aGlzLCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCApOwoJYnJlYWs7CgogICAgICBkZWZhdWx0OgoJJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlKCAkaWQsICcnLCAkcmV0dXJuaWQsCgkJCQkgICR0aGlzLT5MYW5nKCdlcnJvcl9pbnZhbGlkbW9kZScpKTsKCWJyZWFrOwogICAgICB9Cgo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/action.do_edituser.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFNlbGZSZWdpc3RyYXRpb24gLSBBIG1vZHVsZSB0byBhbGxvdyB1c2VycyB0byByZWdpc3RlciB0aGVtc2VsdmVzCiMgV2l0aCBhIHdlYnNpdGUuCiMgVmVyc2lvbjogMS4xLjEgQ2FsZ3V5MTAwMAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCmdsb2JhbCAkZ0NtczsKCmlmKCAhJHRoaXMtPkNoZWNrUGVybWlzc2lvbignTWFuYWdlIFJlZ2lzdGVyaW5nIFVzZXJzJyApICkKICB7CiAgICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsIAoJCQkgICAgICR0aGlzLT5MYW5nKCdhY2Nlc3NkZW5pZWQnKSk7CiAgICByZXR1cm47CiAgfQoKICAgIGlmKCAhaXNzZXQoICRwYXJhbXNbJ3VzZXJfaWQnXSApICkKICAgICAgewoJJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlKCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwKCQkJCSAgJHRoaXMtPkxhbmcoJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcycpKTsKCXJldHVybjsKICAgICAgfQoKJGZldXNlcnMgPSAkdGhpcy0+R2V0TW9kdWxlSW5zdGFuY2UoJ0Zyb250RW5kVXNlcnMnKTsKaWYoICEkZmV1c2VycyApCiAgewogICAgLy8gdGhpcyBpcyB1Z2x5IGZvciB0aGUgdXNlciB0byBzZWUKICAgIC8vIGJ1dCBhdCBsZWFzdCB0aGUgYWRtaW4gd2lsbCBiZSBhYmxlIHRvIGZpZ3VyZSBpdCBvdXQKICAgIC8vIHRoaXMgc2hvdWxkbid0IGhhcHBlbiBvbmNlIHRoZSB1c2VyIGhhcyBzZWVuIHRoZSBmb3JtLgogICAgJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlKCAkaWQsICcnLCAkcmV0dXJuaWQsCgkJCSAgICAgICR0aGlzLT5MYW5nKCdlcnJvcl9ub2ZldXNlcnNtb2R1bGUnKSk7CiAgICByZXR1cm47CiAgfQoKJGNtc21haWxlciA9ICR0aGlzLT5HZXRNb2R1bGVJbnN0YW5jZSgnQ01TTWFpbGVyJyk7CmlmKCAhJGNtc21haWxlciApCiAgewogICAgLy8gdGhpcyBpcyB1Z2x5IGZvciB0aGUgdXNlciB0byBzZWUKICAgIC8vIGJ1dCBhdCBsZWFzdCB0aGUgYWRtaW4gd2lsbCBiZSBhYmxlIHRvIGZpZ3VyZSBpdCBvdXQKICAgICR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSggJGlkLCAnJywgJHJldHVybmlkLAoJCQkgICAgICAkdGhpcy0+TGFuZygnZXJyb3Jfbm9mZXVzZXJzbW9kdWxlJykpOwogICAgcmV0dXJuOwogIH0KCi8vIGNoZWNrIGZvciByZXF1aXJlZCBwYXJhbWV0ZXJzCmlmKCAhaXNzZXQoICRwYXJhbXNbJ2dyb3VwX2lkJ10gKSApCiAgewogICAgJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlKCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwKCQkJICAgICAgJHRoaXMtPkxhbmcoJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcycpKTsKICAgIHJldHVybjsKICB9CgovLyBDaGVjayB0byBlbnN1cmUgYWxsIHJlcXVpcmVkIGZpZWxkcyBoYXZlIHNvbWUgY29udGVudAovLyBhbmQgdmFsaWRhdGUgZW1haWwgZmllbGRzCmZvcmVhY2goICRwYXJhbXMgYXMgJGtleSA9PiAkdmFsICkKewogIGlmKCBwcmVnX21hdGNoKCAnL15oaWRkZW5fLycsICRrZXkgKSApCiAgICB7CiAgICAgICRwcm9wbmFtZSA9IHN1YnN0cigka2V5LHN0cmxlbignaGlkZGVuXycpKTsKICAgICAgaWYoICRwcm9wbmFtZSA9PSAncGFzc3dvcmQnIHx8ICRwcm9wbmFtZSA9PSAncmVwZWF0cGFzc3dvcmQnICkKCXsKCSAgY29udGludWU7Cgl9CiAgICAgICRhcnIgPSBzcGxpdCgiOyIsJHBhcmFtc1ska2V5XSk7CiAgICAgICRyZXF1aXJlZCA9ICRhcnJbM107CiAgICAgIGlmKCAkcmVxdWlyZWQgPT0gMiAmJiAKCSAgKCFpc3NldCgkcGFyYW1zWydpbnB1dF8nLiRwcm9wbmFtZV0pIHx8ICRwYXJhbXNbJ2lucHV0XycuJHByb3BuYW1lXSA9PSAnJyApICkKCXsKCSAgJHBhcmFtc1snZXJyb3InXSA9IDE7CgkgICRwYXJhbXNbJ21lc3NhZ2UnXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9yZXF1aXJlZGZpZWxkJywkcHJvcG5hbWUpOwoJICAkdGhpcy0+bXlSZWRpcmVjdCggJGlkLCAnZGVmYXVsdCcsICRyZXR1cm5pZCwgJHBhcmFtcyApOwoJfQoKICAgICAgaWYoICRhcnJbMV0gPT0gJzInICkKCXsKCSAgJHJlc3VsdCA9ICRmZXVzZXJzLT5Jc1ZhbGlkRW1haWxBZGRyZXNzKCAkcGFyYW1zWydpbnB1dF8nLiRwcm9wbmFtZV0sCgkJCQkJCSAgICRmZXVzZXJzLT5HZXRQcmVmZXJlbmNlKCdkb19zbXRwX3ZhbGlkYXRlX2VtYWlsJykgKTsKCSAgaWYoICRyZXN1bHRbMF0gPT0gZmFsc2UgKQoJICAgIHsKCSAgICAgICRwYXJhbXNbJ2Vycm9yJ10gPSAxOwoJICAgICAgJHBhcmFtc1snbWVzc2FnZSddID0gJHJlc3VsdFsxXTsKCSAgICAgICR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdkZWZhdWx0JywgJHJldHVybmlkLCAkcGFyYW1zICk7CgkgICAgfQoJfQogICAgfQp9CgovLyBnZXQgdGhlIHVzZXJuYW1lIGFuZCBwYXNzd29yZAokdXNlcm5hbWUgPSAnJzsKaWYoIGlzc2V0KCAkcGFyYW1zWydpbnB1dF91c2VybmFtZSddICkgKQogIHsKICAgICR1c2VybmFtZSA9IHRyaW0oJHBhcmFtc1snaW5wdXRfdXNlcm5hbWUnXSk7CiAgfQokcGFzc3dvcmQgPSAnJzsKaWYoIGlzc2V0KCAkcGFyYW1zWydpbnB1dF9wYXNzd29yZCddICkgKQogIHsKICAgICRwYXNzd29yZCA9IHRyaW0oJHBhcmFtc1snaW5wdXRfcGFzc3dvcmQnXSk7CiAgfQokcmVwZWF0cGFzc3dvcmQgPSAnJzsKaWYoIGlzc2V0KCAkcGFyYW1zWydpbnB1dF9yZXBlYXRwYXNzd29yZCddICkgKQogIHsKICAgICRyZXBlYXRwYXNzd29yZCA9IHRyaW0oJHBhcmFtc1snaW5wdXRfcmVwZWF0cGFzc3dvcmQnXSk7CiAgfQoKLy8gY2hlY2sgaWYgdGhlIHVzZXJuYW1lIGlzIHZhbGlkIG9yIHRha2VuCmlmKCAkdXNlcm5hbWUgPT0gJycgKQogIHsKICAgICRwYXJhbXNbJ2Vycm9yJ10gPSAxOwogICAgJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX2VtcHR5dXNlcm5hbWUnKTsKICAgICR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdkZWZhdWx0JywgJHJldHVybmlkLCAkcGFyYW1zICk7CiAgICByZXR1cm47CiAgfQppZiggISRmZXVzZXJzLT5Jc1ZhbGlkVXNlcm5hbWUoICR1c2VybmFtZSApICkKICB7CiAgICAkcGFyYW1zWydlcnJvciddID0gMTsKICAgICRwYXJhbXNbJ21lc3NhZ2UnXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9pbnZhbGlkdXNlcm5hbWUnKTsKICAgICR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdkZWZhdWx0JywgJHJldHVybmlkLCAkcGFyYW1zICk7CiAgICByZXR1cm47CiAgfQokdWlkID0gJHRoaXMtPkdldFRlbXBVc2VySUQoJHVzZXJuYW1lKTsKaWYoICR1aWQgIT0gZmFsc2UgJiYgJHVpZCAhPSAkcGFyYW1zWyd1c2VyX2lkJ10gKQogIHsKICAgICRwYXJhbXNbJ2Vycm9yJ10gPSAxOwogICAgJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX3VzZXJuYW1ldGFrZW4nKTsKICAgICR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdkZWZhdWx0JywgJHJldHVybmlkLCAkcGFyYW1zICk7CiAgICByZXR1cm47CiAgfQoKCi8vIGNoZWNrIGlmIHRoZSBwYXNzd29yZHMgbWF0Y2ggb3IgaWYgdGhleSdyZSB2YWxpZAovLyBpZiB0aGV5J3JlIHNldCBhdGFsbAppZiggJHBhc3N3b3JkICE9ICcnICkKICB7CiAgICBpZiggJHBhc3N3b3JkICE9ICRyZXBlYXRwYXNzd29yZCApCiAgICAgIHsKCSRwYXJhbXNbJ2Vycm9yJ10gPSAxOwoJJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX3Bhc3N3b3Jkc2RvbnRtYXRjaCcpOwoJJHRoaXMtPm15UmVkaXJlY3QoICRpZCwgJ2RlZmF1bHQnLCAkcmV0dXJuaWQsICRwYXJhbXMgKTsKCXJldHVybjsKICAgICAgfQogICAgJG1pbnB3bGVuID0gJGZldXNlcnMtPkdldFByZWZlcmVuY2UoJ21pbl9wYXNzd29yZGxlbmd0aCcpOwogICAgJG1heHB3bGVuID0gJGZldXNlcnMtPkdldFByZWZlcmVuY2UoJ21heF9wYXNzd29yZGxlbmd0aCcpOwogICAgaWYoIHN0cmxlbigkcGFzc3dvcmQpIDwgJG1pbnB3bGVuIHx8IHN0cmxlbigkcGFzc3dvcmQpID4gJG1heHB3bGVuICkKICAgICAgewoJJHBhcmFtc1snZXJyb3InXSA9IDE7CgkkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfaW52YWxpZHBhc3N3b3JkJywKCQkJCQkgYXJyYXkoJG1pbnB3bGVuLCRtYXhwd2xlbikpOwoJJHRoaXMtPm15UmVkaXJlY3QoICRpZCwgJ2RlZmF1bHQnLCAkcmV0dXJuaWQsICRwYXJhbXMgKTsKCXJldHVybjsKICAgICAgfQogIH0KCgovLyBmaW5kIGFuIGVtYWlsIGZpZWxkLi4uIHNvbWV0aGluZyB0aGF0J3MgbmFtZSBoYXMgZW1haWwgaW4gaXQKLy8gb3IgaXMgb2YgdHlwZSAyCiRlbWFpbF9maWVsZCA9ICcnOwpmb3JlYWNoKCAkcGFyYW1zIGFzICRrZXkgPT4gJHZhbCApCnsKICBpZiggcHJlZ19tYXRjaCggJy9eaGlkZGVuXy8nLCAka2V5ICkgKQogICAgewogICAgICAkcHJvcG5hbWUgPSBzdWJzdHIoJGtleSxzdHJsZW4oJ2hpZGRlbl8nKSk7CiAgICAgICRhcnIgPSBzcGxpdCgiOyIsJHBhcmFtc1ska2V5XSk7CgogICAgICBpZiggcHJlZ19tYXRjaCgnL2VtYWlsL2knLCRhcnJbMF0pIHx8ICRhcnJbMV0gPT0gMiApCgl7CgkgIC8vIGZvdW5kIHNvbWV0aGluZyByZXNlbWJsaW5nIGFuIGVtYWlsIGZpZWxkCgkgICRlbWFpbF9maWVsZCA9ICdpbnB1dF8nLiRwcm9wbmFtZTsKCSAgYnJlYWs7Cgl9CiAgICB9Cn0gICAgCmlmKCAkZW1haWxfZmllbGQgPT0gJycgKQogIHsKICAgICRwYXJhbXNbJ2Vycm9yJ10gPSAxOwogICAgJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX25vZW1haWxhZGRyZXNzJyk7CiAgICAkdGhpcy0+bXlSZWRpcmVjdCggJGlkLCAnZGVmYXVsdCcsICRyZXR1cm5pZCwgJHBhcmFtcyApOwogICAgcmV0dXJuOwogIH0KCi8vIGZvciBhbnkgdHlwZSA1IHByb3BlcnRpZXMsIHdlIGNoYW5nZSB0aGUgCi8vIGFycmF5IHJlc3VsdCBpbnRvIGFuIGVuY29kZWQgc3RyaW5nCmZvcmVhY2goICRwYXJhbXMgYXMgJGtleSA9PiAkdmFsICkKewogIGlmKCBwcmVnX21hdGNoKCAnL15oaWRkZW5fLycsICRrZXkgKSApCiAgICB7CiAgICAgICRwcm9wbmFtZSA9IHN1YnN0cigka2V5LHN0cmxlbignaGlkZGVuXycpKTsKICAgICAgJGFyciA9IHNwbGl0KCI7IiwkcGFyYW1zWyRrZXldKTsKICAgICAgaWYoICRhcnJbMV0gPT0gNSApCgl7CgkgICRwYXJhbXNbJ2lucHV0XycuJHByb3BuYW1lXSA9IGltcGxvZGUoJywnLCRwYXJhbXNbJ2lucHV0XycuJHByb3BuYW1lXSk7Cgl9CiAgICB9Cn0KCi8vIGdlbmVyYXRlIGEgdW5pcXVlIGNvZGUgdGhhdCB0aGUgdXNlciBjYW4gZW50ZXIgdG8gZG91YmxlIGNvbmZpcm0KLy8gaGlzIGxvZ2luLgokY29kZSA9ICRmZXVzZXJzLT5HZW5lcmF0ZVJhbmRvbVByaW50YWJsZVN0cmluZygpOwoKLy8gaGF2ZSB0byBhZGQgdGhlIHJlY29yZCB0byB0aGUgZGF0YWJhc2Ugc28gdGhhdCB3ZSBrbm93IHdobyB0aGlzIGd1eSBpcwovLyB3aGVuIGhlIGNvbWVzIGJhY2sKJHJldHVybiA9ICR0aGlzLT5FZGl0VGVtcFVzZXIoICRwYXJhbXNbJ3VzZXJfaWQnXSwgJHVzZXJuYW1lLCAkcGFzc3dvcmQsICRjb2RlICk7CmlmKCAkcmV0dXJuWzBdID09IGZhbHNlICkKICB7CiAgICAkcGFyYW1zWydlcnJvciddID0gMTsKICAgICRwYXJhbXNbJ21lc3NhZ2UnXSA9ICRyZXR1cm5bMV07CiAgICAkdGhpcy0+bXlSZWRpcmVjdCggJGlkLCAnZGVmYXVsdCcsICRyZXR1cm5pZCwgJHBhcmFtcyApOwogICAgcmV0dXJuOwogIH0KCi8vIHJlbW92ZSBhbnkgZXhpc3RpbmcgcHJvcGVydGllcwokdGhpcy0+RGVsZXRlVGVtcFVzZXJQcm9wZXJ0aWVzKCAkcGFyYW1zWyd1c2VyX2lkJ10gKTsKCi8vIGFuZCBhZGQgaGlzIHByb3BlcnRpZXMgdG9vCi8vIGJ1dCBmaXJzdCB3ZSByZW1vdmUgdGhlIG9uZXMgd2UndmUgaGFuZGxlZCBhbHJlYWR5CiR0bXB1aWQgPSAkcGFyYW1zWyd1c2VyX2lkJ107CnVuc2V0KCRwYXJhbXNbJ2lucHV0X3VzZXJuYW1lJ10gKTsKdW5zZXQoJHBhcmFtc1snaW5wdXRfcGFzc3dvcmQnXSApOwp1bnNldCgkcGFyYW1zWydpbnB1dF9yZXBlYXRwYXNzd29yZCddICk7CnVuc2V0KCRwYXJhbXNbJ2hpZGRlbl91c2VybmFtZSddICk7CnVuc2V0KCRwYXJhbXNbJ2hpZGRlbl9wYXNzd29yZCddICk7CnVuc2V0KCRwYXJhbXNbJ2hpZGRlbl9yZXBlYXRwYXNzd29yZCddICk7Cgpmb3JlYWNoKCAkcGFyYW1zIGFzICRrZXkgPT4gJHZhbCApCnsKICBpZiggcHJlZ19tYXRjaCggJy9eaGlkZGVuXy8nLCAka2V5ICkgKQogICAgewogICAgICAkcHJvcG5hbWUgPSBzdWJzdHIoJGtleSxzdHJsZW4oJ2hpZGRlbl8nKSk7CiAgICAgIGlmKCAhaXNzZXQoICRwYXJhbXNbJ2lucHV0XycuJHByb3BuYW1lXSApICkgCgl7CgkgIGNvbnRpbnVlOwoJfQogICAgICAkcmV0dXJuID0gJHRoaXMtPkFkZFRlbXBVc2VyUHJvcGVydHkoICR0bXB1aWQsICRwcm9wbmFtZSwgCgkJCQkJICAgICRwYXJhbXNbJ2lucHV0XycuJHByb3BuYW1lXSApOwogICAgICBpZiggJHJldHVyblswXSA9PSBmYWxzZSApCgl7CgkgIC8vIG5vdyB3ZSBoYXZlIGFuIGlzc3VlIHRvIGZpZ3VyZSBvdXQKCSAgJHBhcmFtc1snZXJyb3InXSA9IDE7CgkgICRwYXJhbXNbJ21lc3NhZ2UnXSA9ICRyZXR1cm5bMV07CgkgICR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdkZWZhdWx0JywgJHJldHVybmlkLCAkcGFyYW1zICk7CgkgIHJldHVybjsKCX0KICAgIH0KfQoKaWYoIGlzc2V0KCAkcGFyYW1zWydpbnB1dF9hZGp1c3RlbWFpbCddICkgJiYgJHBhcmFtc1snaW5wdXRfYWRqdXN0ZW1haWwnXSA9PSAxICkKICB7CiAgICAvLyBva2F5LCB3ZSdyZSBub3cgcmVhZHkgdG8gc2VuZCB0aGUgZW1haWwsIHlhaG9vLCB5YWhvbywgeWFob28KICAgIC8vIG5vdyB3ZSBoYXZlIHRvIGRlY2lkZSB3aGF0IGdvZXMgaW4gaXQuCiAgICAkY21zbWFpbGVyLT5BZGRBZGRyZXNzKCAkcGFyYW1zWyRlbWFpbF9maWVsZF0gKTsKICAgICR0aGlzLT5zbWFydHktPmFzc2lnbignbmFtZScsJHVzZXJuYW1lKTsKICAgIGlmKCAkcGFzc3dvcmQgIT0gJycgKQogICAgICB7CgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3Bhc3N3b3JkJywkcGFzc3dvcmQpOwogICAgICB9CiAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2NvZGUnLCRjb2RlKTsKICAgICR0aGlzLT5zbWFydHktPmFzc2lnbignc2l0ZW5hbWUnLCAkZ0Ntcy0+Y29uZmlnWydyb290X3VybCddKTsKICAgICRwYXJtcyA9IGFycmF5KCAnbW9kZScgPT4gJ3ZlcmlmeScsCgkJICAgICdpbnB1dF91c2VybmFtZScgPT4gJHVzZXJuYW1lLAoJCSAgICAnaW5wdXRfZ3JvdXBfaWQnID0+ICRwYXJhbXNbJ2dyb3VwX2lkJ10sCgkJICAgICdpbnB1dF9jb2RlJyA9PiAkY29kZSApOwogICAgJHVybCA9ICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwnZGVmYXVsdCcsJHJldHVybmlkLCcnLCRwYXJtcywnJyx0cnVlLHRydWUpOwogICAgJHNtYWxsdXJsID0gJHRoaXMtPkNyZWF0ZUxpbmsoICRpZCwgJ2RlZmF1bHQnLCAkcmV0dXJuaWQsICcnLCBhcnJheSgnbW9kZScgPT4gJ3ZlcmlmeScpLCcnLHRydWUsdHJ1ZSApOwogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd1cmwnLCR1cmwpOwogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzbWFsbHVybCcsJHNtYWxsdXJsKTsKICAgICR0aGlzLT5zbWFydHktPmFzc2lnbignbGluaycsJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCdkZWZhdWx0JywkcmV0dXJuaWQsJHVybCwkcGFybXMsJycsZmFsc2UsdHJ1ZSkpOwogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzbWFsbGxpbmsnLCR0aGlzLT5DcmVhdGVMaW5rKCRpZCwnZGVmYXVsdCcsJHJldHVybmlkLAoJCQkJCQkJJHNtYWxsdXJsLGFycmF5KCdtb2RlJz0+J3ZlcmlmeScpLCcnLGZhbHNlLHRydWUpKTsKICAgICRodG1sYm9keSA9ICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGVGcm9tRGF0YWJhc2UoJ3NlbGZyZWdfZW1haWx1c2VyZWRpdGVkX3RlbXBsYXRlJyk7CiAgICAkdGV4dGJvZHkgPSAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlRnJvbURhdGFiYXNlKCdzZWxmcmVnX2VtYWlsdXNlcmVkaXRlZF90ZXh0dGVtcGxhdGUnKTsKICAgICRjbXNtYWlsZXItPlNldEJvZHkoICR0ZXh0Ym9keSApOwogICAgaWYoICRodG1sYm9keSAhPSAnJyApCiAgICAgIHsKCSRjbXNtYWlsZXItPklzSFRNTCh0cnVlKTsgIC8vIHdlJ3JlIHNlbmRpbmcgYW4gaHRtbCBtYWlsCgkkY21zbWFpbGVyLT5TZXRCb2R5KCAkaHRtbGJvZHkgKTsKCSRjbXNtYWlsZXItPlNldEFsdEJvZHkoICR0ZXh0Ym9keSApOwogICAgICB9CiAgICBlbHNlCiAgICAgIHsKCSRjbXNtYWlsZXItPklzSFRNTChmYWxzZSk7ICAvLyB3ZSdyZSBzZW5kaW5nIGFuIGh0bWwgbWFpbAoJJGNtc21haWxlci0+U2V0Qm9keSggJHRleHRib2R5ICk7CiAgICAgIH0KICAgICRjbXNtYWlsZXItPlNldFN1YmplY3QoJHRoaXMtPkdldFByZWZlcmVuY2UoJ3NlbGZyZWdfZW1haWx1c2VyZWRpdGVkX3N1YmplY3QnLCR0aGlzLT5MYW5nKCdyZWdpc3RyYXRpb25faW5mb19lZGl0ZWQnKSkpOwogICAgJGNtc21haWxlci0+U2VuZCgpOwoJCiAgICAvLyB3ZSdyZSBub3QgcmVkaXJlY3RpbmcgYW55d2hlcmUgd2UgbmVlZCB0byBkaXNwbGF5IHNvbWUgbmljZSBtZXNzYWdlCiAgICAvLyBhYm91dCB3ZSBqdXN0IHNwYW1tZWQgeW91ciBpbmJveCwgZXRjLCBldGMuCiAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3VzZXJuYW1lJywkdXNlcm5hbWUpOwogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdlbWFpbCcsICRwYXJhbXNbJGVtYWlsX2ZpZWxkXSApOwogICAgZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlRnJvbURhdGFiYXNlKCdzZWxmcmVnX3Bvc3RyZWcxX3RlbXBsYXRlJyk7CiAgfQoKJHRoaXMtPm15UmVkaXJlY3RUb1RhYignYWRtaW51c2VycycpOwoKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.edittempuser.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFNlbGZSZWdpc3RyYXRpb24gLSBBIG1vZHVsZSB0byBhbGxvdyB1c2VycyB0byByZWdpc3RlciB0aGVtc2VsdmVzCiMgV2l0aCBhIHdlYnNpdGUuCiMgVmVyc2lvbjogMS4xLjEgQ2FsZ3V5MTAwMAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCmdsb2JhbCAkZ0NtczsKCmlmKCAhJHRoaXMtPkNoZWNrUGVybWlzc2lvbignTWFuYWdlIFJlZ2lzdGVyaW5nIFVzZXJzJyApICkKICB7CiAgICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsIAoJCQkgICAgICR0aGlzLT5MYW5nKCdhY2Nlc3NkZW5pZWQnKSk7CiAgICByZXR1cm47CiAgfQoKaWYoICFpc3NldCggJHBhcmFtc1sndXNlcl9pZCddICkgKQogIHsKICAgIC8vIHRoaXMgaXMgdWdseSBmb3IgdGhlIHVzZXIgdG8gc2VlCiAgICAvLyBidXQgYXQgbGVhc3QgdGhlIGFkbWluIHdpbGwgYmUgYWJsZSB0byBmaWd1cmUgaXQgb3V0CiAgICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UoICRpZCwgJHBhcmFtcywgJHJldHVybmlkLAoJCQkgICAgICAkdGhpcy0+TGFuZygnZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJykpOwogICAgcmV0dXJuOwogIH0KCiRmZXVzZXJzID0gJHRoaXMtPkdldE1vZHVsZUluc3RhbmNlKCdGcm9udEVuZFVzZXJzJyk7CmlmKCAhJGZldXNlcnMgKQogIHsKICAgIC8vIHRoaXMgaXMgdWdseSBmb3IgdGhlIHVzZXIgdG8gc2VlCiAgICAvLyBidXQgYXQgbGVhc3QgdGhlIGFkbWluIHdpbGwgYmUgYWJsZSB0byBmaWd1cmUgaXQgb3V0CiAgICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UoICRpZCwgJHBhcmFtcywgJHJldHVybmlkLAoJCQkgICAgICAkdGhpcy0+TGFuZygnZXJyb3Jfbm9mZXVzZXJzbW9kdWxlJykpOwogICAgcmV0dXJuOwogIH0KCiRjbXNtYWlsZXIgPSAkdGhpcy0+R2V0TW9kdWxlSW5zdGFuY2UoJ0NNU01haWxlcicpOwppZiggISRjbXNtYWlsZXIgKQogIHsKICAgIC8vIHRoaXMgaXMgdWdseSBmb3IgdGhlIHVzZXIgdG8gc2VlCiAgICAvLyBidXQgYXQgbGVhc3QgdGhlIGFkbWluIHdpbGwgYmUgYWJsZSB0byBmaWd1cmUgaXQgb3V0CiAgICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UoICRpZCwgJHBhcmFtcywgJHJldHVybmlkLAoJCQkgICAgICAkdGhpcy0+TGFuZygnZXJyb3Jfbm9mZXVzZXJzbW9kdWxlJykpOwogICAgcmV0dXJuOwogIH0KCgokdWlkID0gJHBhcmFtc1sndXNlcl9pZCddOwokdXNlcmRldGFpbHMgPSAkdGhpcy0+R2V0VGVtcFVzZXJEZXRhaWxzKCAkdWlkICk7CmlmKCAhJHVzZXJkZXRhaWxzICkKICB7CiAgICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UoICRpZCwgJHBhcmFtcywgJHJldHVybmlkLAoJCQkgICAgICAkdGhpcy0+TGFuZygnZXJyb3JfdXNlcm5vdGZvdW5kJykgKTsKICAgIHJldHVybjsKICB9CgovLyBnZXQgdGhlIGdyb3VwIHByb3BlcnR5IHJlbGF0aW9ucwokcmVsYXRpb25zID0gJGZldXNlcnMtPkdldEdyb3VwUHJvcGVydHlSZWxhdGlvbnMoICR1c2VyZGV0YWlsc1snZ3JvdXBfaWQnXSApOwppZiggJHJlbGF0aW9uc1swXSA9PSBmYWxzZSApCiAgewogICAgLy8gdGhpcyBpcyB1Z2x5IGZvciB0aGUgdXNlciB0byBzZWUKICAgIC8vIGJ1dCBhdCBsZWFzdCB0aGUgYWRtaW4gd2lsbCBiZSBhYmxlIHRvIGZpZ3VyZSBpdCBvdXQKICAgICR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSggJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsIAoJCQkgICAgICAkdGhpcy0+TGFuZygnZXJyb3Jfbm9wcm9wcmVsYXRpb25zJykuJyAnLiRyZWxhdGlvbnNbMV0gKTsKICAgIHJldHVybjsKICB9CnVhc29ydCggJHJlbGF0aW9ucywgCglhcnJheSgnU2VsZnJlZ1V0aWxzJywnY29tcGFyZV9lbGVtZW50c19ieV9zb3J0b3JkZXJfa2V5JyApKTsKCi8vIGdldCB0aGUgdXNlcnMnIHByb3BlcnRpZXMKJHByb3BzID0gYXJyYXkoKTsKewogICR0X3Byb3BzID0gJHRoaXMtPkdldFRlbXBVc2VyUHJvcGVydGllcyggJHVpZCApOwogIGlmKCAhJHRfcHJvcHMgKQogICAgewogICAgICAvLyB0aGlzIGlzIHVnbHkgZm9yIHRoZSB1c2VyIHRvIHNlZQogICAgICAvLyBidXQgYXQgbGVhc3QgdGhlIGFkbWluIHdpbGwgYmUgYWJsZSB0byBmaWd1cmUgaXQgb3V0CiAgICAgICR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSggJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsIAoJCQkJJHRoaXMtPkxhbmcoJ2Vycm9yX25vcHJvcGVydGllcycpLicgJy4kcmVsYXRpb25zWzFdICk7CiAgICAgIHJldHVybjsKICAgIH0KCiAgLy8gYSBsaXR0bGUgcmUtc29ydGluZwogIGZvcmVhY2goICR0X3Byb3BzIGFzICRwcm9wICkKICAgIHsKICAgICAgJHByb3BzWyRwcm9wWyd0aXRsZSddXSA9ICRwcm9wOwogICAgfQp9CgovLyBoZXJlIHdlJ2xsIGRpc3BsYXkgYSBmb3JtIHRoYXQgaXMgc2ltaWxhciB0byB0aGUgcmVnaXN0cmF0aW9uIGZvcm0gaW4gCi8vIGV2ZXJ5IHdheSwKaWYoIGlzc2V0KCAkcGFyYW1zWydlcnJvciddICkgKQogIHsKICAgICR0aGlzLT5zbWFydHktPmFzc2lnbignZXJyb3InLCAkcGFyYW1zWydlcnJvciddKTsKICB9CmlmKCBpc3NldCggJHBhcmFtc1snbWVzc2FnZSddICkgKQogIHsKICAgICR0aGlzLT5zbWFydHktPmFzc2lnbignbWVzc2FnZScsICRwYXJhbXNbJ21lc3NhZ2UnXSk7CiAgfQoKJHJvd2FycmF5ID0gYXJyYXkoKTsKCi8vIG1ha2Ugc3VyZSB1c2VybmFtZSBpcyBpbiB0aGVyZQokb25lcm93ID0gbmV3IFN0ZENsYXNzKCk7CiRvbmVyb3ctPmNvbG9yID0gJGZldXNlcnMtPkdldFByZWZlcmVuY2UoJ3JlcXVpcmVkX2ZpZWxkX2NvbG9yJywnYmx1ZScpOwokb25lcm93LT5tYXJrZXIgPSAkZmV1c2Vycy0+R2V0UHJlZmVyZW5jZSgncmVxdWlyZWRfZmllbGRfbWFya2VyJywnKicpOwokb25lcm93LT5yZXF1aXJlZCA9IDE7CiR2YWwgPSAkdXNlcmRldGFpbHNbJ3VzZXJuYW1lJ107CiRvbmVyb3ctPmhpZGRlbiA9IFNlbGZyZWdVdGlsczo6bXlDcmVhdGVJbnB1dEhpZGRlbiggJGlkLCAnaGlkZGVuX3VzZXJuYW1lJywKCQkJCSAgICAgICBpbXBsb2RlKCI7IixhcnJheSgndXNlcm5hbWUnLDAsMzAsMikpKTsKJG9uZXJvdy0+cHJvbXB0ID0gJHRoaXMtPkxhbmcoJ3VzZXJuYW1lJyk7CiRvbmVyb3ctPmNvbnRyb2wgPSR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCAnaW5wdXRfdXNlcm5hbWUnLCAkdmFsLCAKCQkJCQkgJGZldXNlcnMtPkdldFByZWZlcmVuY2UoJ3VzZXJuYW1lZmxkbGVuZ3RoJyksCgkJCQkJICRmZXVzZXJzLT5HZXRQcmVmZXJlbmNlKCdtYXhfdXNlcm5hbWVsZW5ndGgnKSk7CiRyb3dhcnJheVtdID0gJG9uZXJvdzsKCi8vIGFuZCBwYXNzd29yZAokb25lcm93ID0gbmV3IFN0ZENsYXNzKCk7CiRvbmVyb3ctPmNvbG9yID0gJGZldXNlcnMtPkdldFByZWZlcmVuY2UoJ3JlcXVpcmVkX2ZpZWxkX2NvbG9yJywnYmx1ZScpOwokb25lcm93LT5tYXJrZXIgPSAkZmV1c2Vycy0+R2V0UHJlZmVyZW5jZSgncmVxdWlyZWRfZmllbGRfbWFya2VyJywnKicpOwokb25lcm93LT5leHRyYXRleHQgPSAkdGhpcy0+TGFuZygndHh0X2NoYW5nZXBhc3N3b3JkJyk7CiRvbmVyb3ctPnJlcXVpcmVkID0gMTsKJHZhbCA9ICcnOwokb25lcm93LT5oaWRkZW4gPSBTZWxmcmVnVXRpbHM6Om15Q3JlYXRlSW5wdXRIaWRkZW4oICRpZCwgJ2hpZGRlbl9wYXNzd29yZCcsCgkJCQkgICAgICAgaW1wbG9kZSgiOyIsYXJyYXkoJ3Bhc3N3b3JkJywwLDMwLDIpKSk7CiRvbmVyb3ctPnByb21wdCA9ICR0aGlzLT5MYW5nKCdwYXNzd29yZCcpOwokb25lcm93LT5jb250cm9sID0kdGhpcy0+Q3JlYXRlSW5wdXRQYXNzd29yZCgkaWQsICdpbnB1dF9wYXNzd29yZCcsICR2YWwsIAoJCQkJCSAgICAgJGZldXNlcnMtPkdldFByZWZlcmVuY2UoJ3Bhc3N3b3JkZmxkbGVuZ3RoJyksCgkJCQkJICAgICAkZmV1c2Vycy0+R2V0UHJlZmVyZW5jZSgnbWF4X3Bhc3N3b3JkbGVuZ3RoJykpOwokcm93YXJyYXlbXSA9ICRvbmVyb3c7CgovLyBhbmQgbWFrZSBoaW0gcmVwZWF0IHRoZSBwYXNzd29yZAokb25lcm93ID0gbmV3IFN0ZENsYXNzKCk7CiRvbmVyb3ctPmNvbG9yID0gJGZldXNlcnMtPkdldFByZWZlcmVuY2UoJ3JlcXVpcmVkX2ZpZWxkX2NvbG9yJywnYmx1ZScpOwokb25lcm93LT5tYXJrZXIgPSAkZmV1c2Vycy0+R2V0UHJlZmVyZW5jZSgncmVxdWlyZWRfZmllbGRfbWFya2VyJywnKicpOwokb25lcm93LT5yZXF1aXJlZCA9IDE7CiR2YWwgPSAnJzsKJG9uZXJvdy0+aGlkZGVuID0gU2VsZnJlZ1V0aWxzOjpteUNyZWF0ZUlucHV0SGlkZGVuKCAkaWQsICdoaWRkZW5fcmVwZWF0cGFzc3dvcmQnLAoJCQkJICAgICAgIGltcGxvZGUoIjsiLGFycmF5KCdyZXBlYXRwYXNzd29yZCcsMCwzMCwyKSkpOwokb25lcm93LT5wcm9tcHQgPSAkdGhpcy0+TGFuZygncmVwZWF0cGFzc3dvcmQnKTsKJG9uZXJvdy0+Y29udHJvbCA9JHRoaXMtPkNyZWF0ZUlucHV0UGFzc3dvcmQoJGlkLCAnaW5wdXRfcmVwZWF0cGFzc3dvcmQnLCAkdmFsLAoJCQkJCSAgICAgJGZldXNlcnMtPkdldFByZWZlcmVuY2UoJ3Bhc3N3b3JkZmxkbGVuZ3RoJyksCgkJCQkJICAgICAkZmV1c2Vycy0+R2V0UHJlZmVyZW5jZSgnbWF4X3Bhc3N3b3JkbGVuZ3RoJykpOwokcm93YXJyYXlbXSA9ICRvbmVyb3c7CgovLyBhbiBvcHRpb24gdG8gc2VuZCBhbm90aGVyIGNvbmZpcm1hdGlvbiBtZXNzYWdlCi8vIGJ1dCBhIGRpZmZlcmVudCBvbmUgZnJvbSB0aGUgbm9ybWFsCiRvbmVyb3cgPSBuZXcgU3RkQ2xhc3MoKTsKJG9uZXJvdy0+Y29sb3IgPSAkZmV1c2Vycy0+R2V0UHJlZmVyZW5jZSgncmVxdWlyZWRfZmllbGRfY29sb3InLCdibHVlJyk7CiRvbmVyb3ctPm1hcmtlciA9ICRmZXVzZXJzLT5HZXRQcmVmZXJlbmNlKCdyZXF1aXJlZF9maWVsZF9tYXJrZXInLCcqJyk7CiRvbmVyb3ctPnJlcXVpcmVkID0gMTsKJG9uZXJvdy0+cHJvbXB0ID0gJHRoaXMtPkxhbmcoJ3NlbmRfYWRqdXN0bWVudGVtYWlsJyk7CiRvbmVyb3ctPmV4dHJhdGV4dCA9ICR0aGlzLT5MYW5nKCd0eHRfYWRqdXN0bWVudGVtYWlsJyk7CiRvbmVyb3ctPmNvbnRyb2wgPSAkdGhpcy0+Q3JlYXRlSW5wdXRDaGVja2JveCgkaWQsICdpbnB1dF9hZGp1c3RtZW50ZW1haWwnLCAxLCAxKTsKJHJvd2FycmF5W10gPSAkb25lcm93OwoKZm9yZWFjaCggJHJlbGF0aW9ucyBhcyAkcmVsbiApCnsKICAvLyBkb24ndCBwcm9jZXNzIGhpZGRlbiBmaWVsZHMgaGVyZQogIGlmKCAkcmVsblsncmVxdWlyZWQnXSA9PSAzICkgY29udGludWU7CgogIC8vIGdldCB0aGUgcHJvcGVydHkgZGVmaW5pdGlvbgogICRkZWZuID0gJGZldXNlcnMtPkdldFByb3BlcnR5RGVmbiggJHJlbG5bJ25hbWUnXSApOwoKICBpZiggJGRlZm5bJ3R5cGUnXSA9PSA2ICkKICAgIHsKICAgICAgLy8gaW1hZ2VzIGFyZSBpZ25vcmVkIHRvbwogICAgICBjb250aW51ZTsKICAgIH0KCiAgJG9uZXJvdyA9IG5ldyBTdGRDbGFzcygpOwoKICAkY29sb3IgPSAnJzsKICBpZiggJHJlbG5bJ3JlcXVpcmVkJ10gPT0gMiApICRjb2xvciA9ICRmZXVzZXJzLT5HZXRQcmVmZXJlbmNlKCdyZXF1aXJlZF9maWVsZF9jb2xvcicsJ2JsdWUnKTsKICAkbWFya2VyID0gJyc7CiAgaWYoICRyZWxuWydyZXF1aXJlZCddID09IDIgKSAkbWFya2VyID0gJGZldXNlcnMtPkdldFByZWZlcmVuY2UoJ3JlcXVpcmVkX2ZpZWxkX21hcmtlcicsJyonKTsKICAkb25lcm93LT5yZXF1aXJlZCA9ICgkcmVsblsncmVxdWlyZWQnXSA9PSAyKTsKICAkb25lcm93LT5jb2xvciAgICA9ICRjb2xvcjsKICAkb25lcm93LT5tYXJrZXIgICA9ICRtYXJrZXI7CiAgJG9uZXJvdy0+aGlkZGVuID0gU2VsZnJlZ1V0aWxzOjpteUNyZWF0ZUlucHV0SGlkZGVuKCAkaWQsICdoaWRkZW5fJy4kcmVsblsnbmFtZSddLAoJCQkJCSBpbXBsb2RlKCI7IixhcnJheSgkcmVsblsnbmFtZSddLCRkZWZuWyd0eXBlJ10sCgkJCQkJCQkgICAkZGVmblsnbGVuZ3RoJ10sJHJlbG5bJ3JlcXVpcmVkJ10pKSk7CgogICR2YWwgPSBpc3NldCgkcHJvcHNbJHJlbG5bJ25hbWUnXV1bJ2RhdGEnXSkgPyAkcHJvcHNbJHJlbG5bJ25hbWUnXV1bJ2RhdGEnXSA6ICcnOwogICRvbmVyb3ctPnByb21wdCA9ICRkZWZuWydwcm9tcHQnXTsKICAkb25lcm93LT5sYWJlbGZvciA9ICRpZC4kZGVmblsnbmFtZSddOwogIHN3aXRjaCggJGRlZm5bJ3R5cGUnXSApCiAgICB7CiAgICBjYXNlIDA6IC8vIHRleHQKICAgICAgJG9uZXJvdy0+Y29udHJvbCA9ICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoICRpZCwgJ2lucHV0XycuJHJlbG5bJ25hbWUnXSwKCQkJCQkJICR2YWwsICRkZWZuWydsZW5ndGgnXSwgJGRlZm5bJ21heGxlbmd0aCddICk7CiAgICAgIGJyZWFrOwoKICAgIGNhc2UgMTogLy8gY2hlY2tib3gKICAgICAgJG9uZXJvdy0+Y29udHJvbCA9ICR0aGlzLT5DcmVhdGVJbnB1dENoZWNrYm94KCAkaWQsICdpbnB1dF8nLiRyZWxuWyduYW1lJ10sIDEsICR2YWwgKTsKICAgICAgYnJlYWs7CgogICAgY2FzZSAyOiAvLyBlbWFpbAogICAgICAkb25lcm93LT5jb250cm9sID0gJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCggJGlkLCAnaW5wdXRfJy4kcmVsblsnbmFtZSddLAoJCQkJCQkgJHZhbCwgJGRlZm5bJ2xlbmd0aCddLCAoJGRlZm5bJ21heGxlbmd0aCddKSApOwogICAgICBicmVhazsKCiAgICBjYXNlIDM6IC8vIHRleHRhcmVhCiAgICAgICRvbmVyb3ctPmNvbnRyb2wgPSAkdGhpcy0+Q3JlYXRlVGV4dEFyZWEoZmFsc2UsICRpZCwgJHZhbCwgJ2lucHV0XycuJGRlZm5bJ25hbWUnXSk7CiAgICAgIGJyZWFrOwoKICAgIGNhc2UgNDogLy8gZHJvcGRvd24KICAgICAgJG9uZXJvdy0+Y29udHJvbCA9ICR0aGlzLT5DcmVhdGVJbnB1dERyb3Bkb3duKCRpZCwgCgkJCQkJCSAgICAnaW5wdXRfJy4kZGVmblsnbmFtZSddLCAKCQkJCQkJICAgICRmZXVzZXJzLT5HZXRTZWxlY3RPcHRpb25zKCRkZWZuWyduYW1lJ10sIDEpLCAKCQkJCQkJICAgIC0xLCAKCQkJCQkJICAgICR2YWwpOwogICAgICBicmVhazsKCiAgICBjYXNlIDU6IC8vIG11bHRpc2VsZWN0CiAgICAgICRvbmVyb3ctPmNvbnRyb2wgPSAkdGhpcy0+Q3JlYXRlSW5wdXRTZWxlY3RMaXN0KCRpZCwKCQkJCQkJICAgICAgJ2lucHV0XycuJGRlZm5bJ25hbWUnXS4nW10nLAoJCQkJCQkgICAgICAkZmV1c2Vycy0+R2V0U2VsZWN0T3B0aW9ucygkZGVmblsnbmFtZSddLCAxKSwKCQkJCQkJICAgICAgYXJyYXkoKSwKCQkJCQkJICAgICAgJHZhbCk7CiAgICAgIGJyZWFrOwogICAgfQoKICAkcm93YXJyYXlbXSA9ICRvbmVyb3c7Cn0KCiR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ3N0YXJ0Zm9ybScsCgkJICAgICAgICR0aGlzLT5DcmVhdGVGb3JtU3RhcnQgKCRpZCwgJ2RvX2VkaXR1c2VyJywgJHJldHVybmlkKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ2VuZGZvcm0nLCAkdGhpcy0+Q3JlYXRlRm9ybUVuZCAoKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbigndGl0bGUnLCR0aGlzLT5MYW5nKCdlZGl0dXNlcicpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdoaWRkZW4nLAoJCSAgICAgICR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsICd1c2VyX2lkJywgJHVzZXJkZXRhaWxzWydpZCddICkpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2hpZGRlbjInLAoJCSAgICAgICR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsICdncm91cF9pZCcsICR1c2VyZGV0YWlsc1snZ3JvdXBfaWQnXSApKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdjb250cm9scycsICRyb3dhcnJheSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignY29udHJvbGNvdW50JywgY291bnQoJHJvd2FycmF5KSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignc3VibWl0JywkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCdzdWJtaXQnLAoJCQkJCQkJJHRoaXMtPkxhbmcoJ3N1Ym1pdCcpKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignY2FuY2VsJywkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCdjYW5jZWwnLAoJCQkJCQkJJHRoaXMtPkxhbmcoJ2NhbmNlbCcpKSk7CgplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ2VkaXR1c2VyLnRwbCcpOwoKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.reguser.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFNlbGZSZWdpc3RyYXRpb24gLSBBIG1vZHVsZSB0byBhbGxvdyB1c2VycyB0byByZWdpc3RlciB0aGVtc2VsdmVzCiMgV2l0aCBhIHdlYnNpdGUuCiMgVmVyc2lvbjogMS4xLjEgQ2FsZ3V5MTAwMAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCiAgICBnbG9iYWwgJGdDbXM7CgogICAgJGZldXNlcnMgPSAkdGhpcy0+R2V0TW9kdWxlSW5zdGFuY2UoJ0Zyb250RW5kVXNlcnMnKTsKICAgIGlmKCAhJGZldXNlcnMgKQogICAgICB7CgkvLyB0aGlzIGlzIHVnbHkgZm9yIHRoZSB1c2VyIHRvIHNlZQoJLy8gYnV0IGF0IGxlYXN0IHRoZSBhZG1pbiB3aWxsIGJlIGFibGUgdG8gZmlndXJlIGl0IG91dAoJLy8gdGhpcyBzaG91bGRuJ3QgaGFwcGVuIG9uY2UgdGhlIHVzZXIgaGFzIHNlZW4gdGhlIGZvcm0uCgkkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UoICRpZCwgJycsICRyZXR1cm5pZCwKCQkJCSAgJHRoaXMtPkxhbmcoJ2Vycm9yX25vZmV1c2Vyc21vZHVsZScpKTsKCXJldHVybjsKICAgICAgfQoKICAgICRjbXNtYWlsZXIgPSAkdGhpcy0+R2V0TW9kdWxlSW5zdGFuY2UoJ0NNU01haWxlcicpOwogICAgaWYoICEkY21zbWFpbGVyICkKICAgICAgewoJLy8gdGhpcyBpcyB1Z2x5IGZvciB0aGUgdXNlciB0byBzZWUKCS8vIGJ1dCBhdCBsZWFzdCB0aGUgYWRtaW4gd2lsbCBiZSBhYmxlIHRvIGZpZ3VyZSBpdCBvdXQKCSR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSggJGlkLCAnJywgJHJldHVybmlkLAoJCQkJICAkdGhpcy0+TGFuZygnZXJyb3Jfbm9mZXVzZXJzbW9kdWxlJykpOwoJcmV0dXJuOwogICAgICB9CgoKICAgIC8vIGNoZWNrIGZvciByZXF1aXJlZCBwYXJhbWV0ZXJzCiAgICBpZiggIWlzc2V0KCAkcGFyYW1zWydncm91cF9pZCddICkgKQogICAgICB7CgkkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UoICRpZCwgJHBhcmFtcywgJHJldHVybmlkLAoJCQkJICAkdGhpcy0+TGFuZygnZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJykpOwoJcmV0dXJuOwogICAgICB9CgogICAgLy8gQ2hlY2sgdG8gZW5zdXJlIGFsbCByZXF1aXJlZCBmaWVsZHMgaGF2ZSBzb21lIGNvbnRlbnQKICAgIC8vIGFuZCB2YWxpZGF0ZSBlbWFpbCBmaWVsZHMKICAgIGZvcmVhY2goICRwYXJhbXMgYXMgJGtleSA9PiAkdmFsICkKICAgIHsKICAgICAgaWYoIHByZWdfbWF0Y2goICcvXmhpZGRlbl8vJywgJGtleSApICkKCXsKCSAgJHByb3BuYW1lID0gc3Vic3RyKCRrZXksc3RybGVuKCdoaWRkZW5fJykpOwoJICAkYXJyID0gc3BsaXQoIjsiLCRwYXJhbXNbJGtleV0pOwoJICAkcmVxdWlyZWQgPSAkYXJyWzNdOwoJICBpZiggJHJlcXVpcmVkID09IDIgJiYgCgkgICAgICAoIWlzc2V0KCRwYXJhbXNbJ2lucHV0XycuJHByb3BuYW1lXSkgfHwgJHBhcmFtc1snaW5wdXRfJy4kcHJvcG5hbWVdID09ICcnICkgKQoJICAgIHsKCSAgICAgICRwYXJhbXNbJ2Vycm9yJ10gPSAxOwoJICAgICAgJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX3JlcXVpcmVkZmllbGQnLCRwcm9wbmFtZSk7CgkgICAgICAkdGhpcy0+bXlSZWRpcmVjdCggJGlkLCAnZGVmYXVsdCcsICRyZXR1cm5pZCwgJHBhcmFtcyApOwoJICAgIH0KCgkgIGlmKCAkYXJyWzFdID09ICcyJyApCgkgICAgewoJICAgICAgJHJlc3VsdCA9ICRmZXVzZXJzLT5Jc1ZhbGlkRW1haWxBZGRyZXNzKCAkcGFyYW1zWydpbnB1dF8nLiRwcm9wbmFtZV0sCgkJCQkJCSAgICAgICAkZmV1c2Vycy0+R2V0UHJlZmVyZW5jZSgnZG9fc210cF92YWxpZGF0ZV9lbWFpbCcpICk7CgkgICAgICBpZiggJHJlc3VsdFswXSA9PSBmYWxzZSApCgkJewoJCSAgJHBhcmFtc1snZXJyb3InXSA9IDE7CgkJICAkcGFyYW1zWydtZXNzYWdlJ10gPSAkcmVzdWx0WzFdOwoJCSAgJHRoaXMtPm15UmVkaXJlY3QoICRpZCwgJ2RlZmF1bHQnLCAkcmV0dXJuaWQsICRwYXJhbXMgKTsKCQl9CgkgICAgfQoJfQogICAgfQoKCiAgICAvLyBnZXQgdGhlIHVzZXJuYW1lIGFuZCBwYXNzd29yZAogICAgJHVzZXJuYW1lID0gJyc7CiAgICBpZiggaXNzZXQoICRwYXJhbXNbJ2lucHV0X3VzZXJuYW1lJ10gKSApCiAgICAgIHsKCSR1c2VybmFtZSA9IHRyaW0oJHBhcmFtc1snaW5wdXRfdXNlcm5hbWUnXSk7CiAgICAgIH0KICAgICRwYXNzd29yZCA9ICcnOwogICAgaWYoIGlzc2V0KCAkcGFyYW1zWydpbnB1dF9wYXNzd29yZCddICkgKQogICAgICB7CgkkcGFzc3dvcmQgPSB0cmltKCRwYXJhbXNbJ2lucHV0X3Bhc3N3b3JkJ10pOwogICAgICB9CiAgICAkcmVwZWF0cGFzc3dvcmQgPSAnJzsKICAgIGlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfcmVwZWF0cGFzc3dvcmQnXSApICkKICAgICAgewoJJHJlcGVhdHBhc3N3b3JkID0gdHJpbSgkcGFyYW1zWydpbnB1dF9yZXBlYXRwYXNzd29yZCddKTsKICAgICAgfQoKICAgIC8vIGNoZWNrIGlmIHRoZSB1c2VybmFtZSBpcyB2YWxpZCBvciB0YWtlbgogICAgaWYoICR1c2VybmFtZSA9PSAnJyApCiAgICAgIHsKCSRwYXJhbXNbJ2Vycm9yJ10gPSAxOwoJJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX2VtcHR5dXNlcm5hbWUnKTsKCSR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdkZWZhdWx0JywgJHJldHVybmlkLCAkcGFyYW1zICk7CglyZXR1cm47CiAgICAgIH0KCiAgICBpZiggISRmZXVzZXJzLT5Jc1ZhbGlkVXNlcm5hbWUoICR1c2VybmFtZSApICkKICAgICAgewoJJHBhcmFtc1snZXJyb3InXSA9IDE7CgkkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfaW52YWxpZHVzZXJuYW1lJyk7CgkkdGhpcy0+bXlSZWRpcmVjdCggJGlkLCAnZGVmYXVsdCcsICRyZXR1cm5pZCwgJHBhcmFtcyApOwoJcmV0dXJuOwogICAgICB9CgogICAgJHVpZCA9ICR0aGlzLT5HZXRUZW1wVXNlcklEKCR1c2VybmFtZSk7CiAgICBpZiggJHVpZCAhPSBmYWxzZSApCiAgICAgIHsKCSRwYXJhbXNbJ2Vycm9yJ10gPSAxOwoJJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX3VzZXJuYW1ldGFrZW4nKTsKCSR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdkZWZhdWx0JywgJHJldHVybmlkLCAkcGFyYW1zICk7CglyZXR1cm47CiAgICAgIH0KICAgIGlmKCAkZmV1c2Vycy0+R2V0VXNlcklEKCR1c2VybmFtZSkgKQogICAgICB7CgkkcGFyYW1zWydlcnJvciddID0gMTsKCSRwYXJhbXNbJ21lc3NhZ2UnXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl91c2VybmFtZXRha2VuJyk7CgkkdGhpcy0+bXlSZWRpcmVjdCggJGlkLCAnZGVmYXVsdCcsICRyZXR1cm5pZCwgJHBhcmFtcyApOwoJcmV0dXJuOwogICAgICB9CgogICAgLy8gY2hlY2sgaWYgdGhlIHBhc3N3b3JkcyBtYXRjaCBvciBpZiB0aGV5J3JlIHZhbGlkCiAgICBpZiggJHBhc3N3b3JkICE9ICRyZXBlYXRwYXNzd29yZCApCiAgICAgIHsKCSRwYXJhbXNbJ2Vycm9yJ10gPSAxOwoJJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX3Bhc3N3b3Jkc2RvbnRtYXRjaCcpOwoJJHRoaXMtPm15UmVkaXJlY3QoICRpZCwgJ2RlZmF1bHQnLCAkcmV0dXJuaWQsICRwYXJhbXMgKTsKCXJldHVybjsKICAgICAgfQogICAgJG1pbnB3bGVuID0gJGZldXNlcnMtPkdldFByZWZlcmVuY2UoJ21pbl9wYXNzd29yZGxlbmd0aCcpOwogICAgJG1heHB3bGVuID0gJGZldXNlcnMtPkdldFByZWZlcmVuY2UoJ21heF9wYXNzd29yZGxlbmd0aCcpOwogICAgaWYoIHN0cmxlbigkcGFzc3dvcmQpIDwgJG1pbnB3bGVuIHx8IHN0cmxlbigkcGFzc3dvcmQpID4gJG1heHB3bGVuICkKICAgICAgewoJJHBhcmFtc1snZXJyb3InXSA9IDE7CgkkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfaW52YWxpZHBhc3N3b3JkJywKCQkJCQkgYXJyYXkoJG1pbnB3bGVuLCRtYXhwd2xlbikpOwoJJHRoaXMtPm15UmVkaXJlY3QoICRpZCwgJ2RlZmF1bHQnLCAkcmV0dXJuaWQsICRwYXJhbXMgKTsKCXJldHVybjsKICAgICAgfQoKICAgIC8vIGZpbmQgYW4gZW1haWwgZmllbGQuLi4gc29tZXRoaW5nIHRoYXQncyBuYW1lIGhhcyBlbWFpbCBpbiBpdAogICAgLy8gb3IgaXMgb2YgdHlwZSAyCiAgICAkZW1haWxfZmllbGQgPSAnJzsKICAgIGZvcmVhY2goICRwYXJhbXMgYXMgJGtleSA9PiAkdmFsICkKICAgIHsKICAgICAgaWYoIHByZWdfbWF0Y2goICcvXmhpZGRlbl8vJywgJGtleSApICkKCXsKCSAgJHByb3BuYW1lID0gc3Vic3RyKCRrZXksc3RybGVuKCdoaWRkZW5fJykpOwoJICAkYXJyID0gc3BsaXQoIjsiLCRwYXJhbXNbJGtleV0pOwoKCSAgaWYoIHByZWdfbWF0Y2goJy9lbWFpbC9pJywkYXJyWzBdKSB8fCAkYXJyWzFdID09IDIgKQoJICAgIHsKCSAgICAgIC8vIGZvdW5kIHNvbWV0aGluZyByZXNlbWJsaW5nIGFuIGVtYWlsIGZpZWxkCgkgICAgICAkZW1haWxfZmllbGQgPSAnaW5wdXRfJy4kcHJvcG5hbWU7CgkgICAgICBicmVhazsKCSAgICB9Cgl9CiAgICB9ICAgIAogICAgaWYoICRlbWFpbF9maWVsZCA9PSAnJyApCiAgICAgIHsKCSRwYXJhbXNbJ2Vycm9yJ10gPSAxOwoJJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX25vZW1haWxhZGRyZXNzJyk7CgkkdGhpcy0+bXlSZWRpcmVjdCggJGlkLCAnZGVmYXVsdCcsICRyZXR1cm5pZCwgJHBhcmFtcyApOwoJcmV0dXJuOwogICAgICB9CgogICAgLy8gZm9yIGFueSB0eXBlIDUgcHJvcGVydGllcywgd2UgY2hhbmdlIHRoZSAKICAgIC8vIGFycmF5IHJlc3VsdCBpbnRvIGFuIGVuY29kZWQgc3RyaW5nCiAgICBmb3JlYWNoKCAkcGFyYW1zIGFzICRrZXkgPT4gJHZhbCApCiAgICAgIHsKCWlmKCBwcmVnX21hdGNoKCAnL15oaWRkZW5fLycsICRrZXkgKSApCgkgIHsKCSAgICAkcHJvcG5hbWUgPSBzdWJzdHIoJGtleSxzdHJsZW4oJ2hpZGRlbl8nKSk7CgkgICAgJGFyciA9IHNwbGl0KCI7IiwkcGFyYW1zWyRrZXldKTsKCSAgICBpZiggJGFyclsxXSA9PSA1ICkKCSAgICAgIHsKCQkkcGFyYW1zWydpbnB1dF8nLiRwcm9wbmFtZV0gPSBpbXBsb2RlKCcsJywkcGFyYW1zWydpbnB1dF8nLiRwcm9wbmFtZV0pOwoJICAgICAgfQoJICB9CiAgICAgIH0KCgogICAgaWYoICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdzZWxmcmVnX2ZvcmNlX2VtYWlsX3R3aWNlJykgKQogICAgICB7CglpZiggIWlzc2V0KCRwYXJhbXNbJGVtYWlsX2ZpZWxkLidfYWdhaW4nXSApICkKCSAgewoJICAgICRwYXJhbXNbJ2Vycm9yJ10gPSAxOwoJICAgICRwYXJhbXNbJ21lc3NhZ2UnXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9ub3NlY29uZGVtYWlsYWRkcmVzcycpOwoJICAgICR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdkZWZhdWx0JywgJHJldHVybmlkLCAkcGFyYW1zICk7CgkgICAgcmV0dXJuOwoJICB9CgoJaWYoICRwYXJhbXNbJGVtYWlsX2ZpZWxkXSAhPSAkcGFyYW1zWyRlbWFpbF9maWVsZC4nX2FnYWluJ10gKQoJICB7CgkgICAgJHBhcmFtc1snZXJyb3InXSA9IDE7CgkgICAgJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX2VtYWlsZG9lc25vdG1hdGNoJyk7CgkgICAgJHRoaXMtPm15UmVkaXJlY3QoICRpZCwgJ2RlZmF1bHQnLCAkcmV0dXJuaWQsICRwYXJhbXMgKTsKCSAgICByZXR1cm47CgkgIH0KICAgICAgfQoKICAgCiRjYXB0Y2hhID0mICR0aGlzLT5HZXRNb2R1bGVJbnN0YW5jZSgnQ2FwdGNoYScpOwppZiggaXNfb2JqZWN0KCRjYXB0Y2hhKSAmJiAhaXNzZXQoJHBhcmFtc1snbm9jYXB0Y2hhJ10pICkKICB7CiAgICBpZiAoISAkY2FwdGNoYS0+Q2hlY2tDYXB0Y2hhKCRwYXJhbXNbJ2lucHV0X2NhcHRjaGEnXSkpCiAgICAgIHsKCSRwYXJhbXNbJ2Vycm9yJ10gPSAxOwoJJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX2NhcHRjaGFtaXNtYXRjaCcpOwoJJHRoaXMtPm15UmVkaXJlY3QoICRpZCwgJ2RlZmF1bHQnLCAkcmV0dXJuaWQsICRwYXJhbXMgKTsKCXJldHVybjsKICAgICAgfQogIH0KCi8vIGdlbmVyYXRlIGEgdW5pcXVlIGNvZGUgdGhhdCB0aGUgdXNlciBjYW4gZW50ZXIgdG8gZG91YmxlIGNvbmZpcm0KLy8gaGlzIGxvZ2luLgokY29kZSA9ICRmZXVzZXJzLT5HZW5lcmF0ZVJhbmRvbVByaW50YWJsZVN0cmluZygpOwoKICAgIC8vIGhhdmUgdG8gYWRkIHRoZSByZWNvcmQgdG8gdGhlIGRhdGFiYXNlIHNvIHRoYXQgd2Uga25vdyB3aG8gdGhpcyBndXkgaXMKICAgIC8vIHdoZW4gaGUgY29tZXMgYmFjawogICAgJHJldHVybiA9ICR0aGlzLT5DcmVhdGVUZW1wVXNlciggJHBhcmFtc1snZ3JvdXBfaWQnXSwgJHVzZXJuYW1lLCAkcGFzc3dvcmQsICRjb2RlICk7CiAgICBpZiggJHJldHVyblswXSA9PSBmYWxzZSApCiAgICAgIHsKCSRwYXJhbXNbJ2Vycm9yJ10gPSAxOwoJJHBhcmFtc1snbWVzc2FnZSddID0gJHJldHVyblsxXTsKCSR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdkZWZhdWx0JywgJHJldHVybmlkLCAkcGFyYW1zICk7CglyZXR1cm47CiAgICAgIH0KCiAgICAvLyBhbmQgYWRkIGhpcyBwcm9wZXJ0aWVzIHRvbwogICAgLy8gYnV0IGZpcnN0IHdlIHJlbW92ZSB0aGUgb25lcyB3ZSd2ZSBoYW5kbGVkIGFscmVhZHkKICAgICR0bXB1aWQgPSAkcmV0dXJuWzFdOwogICAgdW5zZXQoJHBhcmFtc1snaW5wdXRfdXNlcm5hbWUnXSApOwogICAgdW5zZXQoJHBhcmFtc1snaW5wdXRfcGFzc3dvcmQnXSApOwogICAgdW5zZXQoJHBhcmFtc1snaW5wdXRfcmVwZWF0cGFzc3dvcmQnXSApOwogICAgdW5zZXQoJHBhcmFtc1snaGlkZGVuX3VzZXJuYW1lJ10gKTsKICAgIHVuc2V0KCRwYXJhbXNbJ2hpZGRlbl9wYXNzd29yZCddICk7CiAgICB1bnNldCgkcGFyYW1zWydoaWRkZW5fcmVwZWF0cGFzc3dvcmQnXSApOwogICAgZm9yZWFjaCggJHBhcmFtcyBhcyAka2V5ID0+ICR2YWwgKQogICAgewogICAgICBpZiggcHJlZ19tYXRjaCggJy9eaGlkZGVuXy8nLCAka2V5ICkgKQoJewoJICAkcHJvcG5hbWUgPSBzdWJzdHIoJGtleSxzdHJsZW4oJ2hpZGRlbl8nKSk7CgkgIGlmKCAhaXNzZXQoICRwYXJhbXNbJ2lucHV0XycuJHByb3BuYW1lXSApICkgCgkgICAgewoJICAgICAgY29udGludWU7CgkgICAgfQoJICAkcmV0dXJuID0gJHRoaXMtPkFkZFRlbXBVc2VyUHJvcGVydHkoICR0bXB1aWQsICRwcm9wbmFtZSwgCgkJCQkJCSRwYXJhbXNbJ2lucHV0XycuJHByb3BuYW1lXSApOwoJICBpZiggJHJldHVyblswXSA9PSBmYWxzZSApCgkgICAgewoJICAgICAgLy8gbm93IHdlIGhhdmUgYW4gaXNzdWUgdG8gZmlndXJlIG91dAoJICAgICAgJHBhcmFtc1snZXJyb3InXSA9IDE7CgkgICAgICAkcGFyYW1zWydtZXNzYWdlJ10gPSAkcmV0dXJuWzFdOwoJICAgICAgJHRoaXMtPm15UmVkaXJlY3QoICRpZCwgJ2RlZmF1bHQnLCAkcmV0dXJuaWQsICRwYXJhbXMgKTsKCSAgICAgIHJldHVybjsKCSAgICB9Cgl9CiAgICB9CgogICAgaWYoICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdyZXF1aXJlX2VtYWlsX2NvbmZpcm1hdGlvbicsMSkgKQogICAgICB7CgkvLyBva2F5LCB3ZSdyZSBub3cgcmVhZHkgdG8gc2VuZCB0aGUgZW1haWwsIHlhaG9vLCB5YWhvbywgeWFob28KCS8vIG5vdyB3ZSBoYXZlIHRvIGRlY2lkZSB3aGF0IGdvZXMgaW4gaXQuCgkkdGhpcy0+X1NlbmRVc2VyQ29uZmlybWF0aW9uRW1haWwoJGlkLCRyZXR1cm5pZCwkcGFyYW1zWyRlbWFpbF9maWVsZF0sCgkJCQkJICAkdXNlcm5hbWUsICRwYXJhbXNbJ2dyb3VwX2lkJ10sICRjb2RlICk7CgkKCS8vIHNlbmQgYW4gZXZlbnQKCSR0aGlzLT5TZW5kRXZlbnQoJ29uTmV3VXNlcicsCgkJCSBhcnJheSgndXNlcm5hbWUnPT4kdXNlcm5hbWUsCgkJCSAgICAgICAnZW1haWwnPT4kcGFyYW1zWyRlbWFpbF9maWVsZF0pKTsKCgkvLyB3ZSdyZSBub3QgcmVkaXJlY3RpbmcgYW55d2hlcmUgd2UgbmVlZCB0byBkaXNwbGF5IHNvbWUgbmljZSBtZXNzYWdlCgkvLyBhYm91dCB3ZSBqdXN0IHNwYW1tZWQgeW91ciBpbmJveCwgZXRjLCBldGMuCgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3NpdGVuYW1lJywgJGdDbXMtPmNvbmZpZ1sncm9vdF91cmwnXSk7CgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3VzZXJuYW1lJywkdXNlcm5hbWUpOwoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdlbWFpbCcsICRhZGRyZXNzICk7CgllY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGVGcm9tRGF0YWJhc2UoJ3NlbGZyZWdfcG9zdHJlZzFfdGVtcGxhdGUnKTsKICAgICAgfQogICAgZWxzZQogICAgICB7CgkvLyBpdCBhcHBlYXJzIHdlJ3JlIGFsbG93aW5nIGluc3RhbnQgcmVnaXN0cmF0aW9uCgkkcmVzdWx0ID0gJHRoaXMtPl9DcmVhdGVGcm9udGVuZFVzZXIoICR0bXB1aWQsICRwYXJhbXNbJ2dyb3VwX2lkJ10sCgkJCQkgICAkdXNlcm5hbWUsICRwYXNzd29yZCApOwoJCglpZiggJHJlc3VsdCAhPSAwICkKCSAgewoJICAgICRwYXJhbXNbJ2Vycm9yJ10gPSAxOwoJICAgICRwYXJhbXNbJ21lc3NhZ2UnXSA9ICRyZXN1bHQ7CgkgICAgJHRoaXMtPm15UmVkaXJlY3QoICRpZCwgJ2RlZmF1bHQnLCAkcmV0dXJuaWQsICRwYXJhbXMgKTsKCSAgfQoKCS8vIHdvb2hvb28sIHRoZSB1c2VyIGJlIGNyZWF0ZWQgKGhvcGVmdWxseSkuCgkvLyBkZWxldGUgdGhlIHJlY29yZHMgZnJvbSB0aGUgU2VsZlJlZyB0YWJsZXMKCSR0aGlzLT5EZWxldGVUZW1wVXNlclByb3BlcnRpZXMoICR0bXB1aWQgKTsKCSR0aGlzLT5EZWxldGVUZW1wVXNlciggJHRtcHVpZCApOwogICAgICB9Cgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.verifyuser.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFNlbGZSZWdpc3RyYXRpb24gLSBBIG1vZHVsZSB0byBhbGxvdyB1c2VycyB0byByZWdpc3RlciB0aGVtc2VsdmVzCiMgV2l0aCBhIHdlYnNpdGUuCiMgVmVyc2lvbjogMS4xLjEgQ2FsZ3V5MTAwMAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCiAgICBnbG9iYWwgJGdDbXM7CgoKICAgIC8vIG5vdyBhbGwgd2UgaGF2ZSB0byBkbyBpcyBnZXQgdGhlIHVzZXJuYW1lLCBjb2RlLCBhbmQgcGFzc3dvcmQKICAgIC8vIGFuZCBtYWtlIHN1cmUgaXQgYWxsIG1hdGNoZXMKICAgIGlmKCAhaXNzZXQoICRwYXJhbXNbJ2lucHV0X3VzZXJuYW1lJ10gKSApCiAgICAgIHsKCSRwYXJhbXNbJ21vZGUnXSA9ICd2ZXJpZnknOwoJJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX21pc3Npbmd1c2VybmFtZScpOwoJJHBhcmFtc1snZXJyb3InXSA9IDE7CgkkdGhpcy0+bXlSZWRpcmVjdCggJGlkLCAnZGVmYXVsdCcsICRyZXR1cm5pZCwgJHBhcmFtcyApOwogICAgICB9CiAgICAkdXNlcm5hbWUgPSB0cmltKCRwYXJhbXNbJ2lucHV0X3VzZXJuYW1lJ10pOwogICAgaWYoICFpc3NldCggJHBhcmFtc1snaW5wdXRfcGFzc3dvcmQnXSApICkKICAgICAgewoJJHBhcmFtc1snbW9kZSddID0gJ3ZlcmlmeSc7CgkkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfbWlzc2luZ3Bhc3N3b3JkJyk7CgkkcGFyYW1zWydlcnJvciddID0gMTsKCSR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdkZWZhdWx0JywgJHJldHVybmlkLCAkcGFyYW1zICk7CiAgICAgIH0KICAgICRwYXNzd29yZCA9IHRyaW0oJHBhcmFtc1snaW5wdXRfcGFzc3dvcmQnXSk7CiAgICBpZiggIWlzc2V0KCAkcGFyYW1zWydpbnB1dF9jb2RlJ10gKSApCiAgICAgIHsKCSRwYXJhbXNbJ21vZGUnXSA9ICd2ZXJpZnknOwoJJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX21pc3Npbmdjb2RlJyk7CgkkcGFyYW1zWydlcnJvciddID0gMTsKCSR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdkZWZhdWx0JywgJHJldHVybmlkLCAkcGFyYW1zICk7CiAgICAgIH0KICAgICRjb2RlID0gdHJpbSgkcGFyYW1zWydpbnB1dF9jb2RlJ10pOwoKICAgIC8vIG5vdyBnZXQgdGhlIGRldGFpbHMgb3V0IG9mIHRoZSBkYXRhYmFzZSBmb3IgdGhzIHVzZXIKICAgICRkYiA9ICR0aGlzLT5HZXREYigpOwogICAgJHEgPSAiU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3NlbGZyZWdfdXNlcnMKICAgICAgICAgIFdIRVJFIHVzZXJuYW1lID0gPyI7CiAgICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxLCBhcnJheSggJHVzZXJuYW1lICkgKTsKICAgIGlmKCAhJGRicmVzdWx0ICkKICAgICAgewoJJHBhcmFtc1snbW9kZSddID0gJ3ZlcmlmeSc7CgkkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfZGJlcnJvcicpOwoJJHBhcmFtc1snZXJyb3InXSA9IDE7CgkkdGhpcy0+bXlSZWRpcmVjdCggJGlkLCAnZGVmYXVsdCcsICRyZXR1cm5pZCwgJHBhcmFtcyApOwogICAgICB9CiAgICBpZiggJGRicmVzdWx0LT5SZWNvcmRDb3VudCgpICE9IDEgKQogICAgICB7CgkkcGFyYW1zWydtb2RlJ10gPSAndmVyaWZ5JzsKCSRwYXJhbXNbJ21lc3NhZ2UnXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl91c2Vybm90Zm91bmQnKTsKCSRwYXJhbXNbJ2Vycm9yJ10gPSAxOwoJJHRoaXMtPkF1ZGl0KCAwLCAkdGhpcy0+TGFuZygnZnJpZW5kbHluYW1lJyksIAoJCSAgICAgICR0aGlzLT5MYW5nKCdlcnJvcl91c2Vybm90Zm91bmQnKS4iOiAiLiR1c2VybmFtZSk7CgkkdGhpcy0+bXlSZWRpcmVjdCggJGlkLCAnZGVmYXVsdCcsICRyZXR1cm5pZCwgJHBhcmFtcyApOwogICAgICB9CiAgICAKICAgICR0bXB1c2VyID0gJGRicmVzdWx0LT5GZXRjaFJvdygpOwogICAgaWYoIG1kNSgkcGFzc3dvcmQpICE9ICR0bXB1c2VyWydwYXNzc3dvcmQnXSApCiAgICAgIHsKCSRwYXJhbXNbJ21vZGUnXSA9ICd2ZXJpZnknOwoJJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX3Bhc3N3b3Jkc2RvbnRtYXRjaCcpOwoJJHBhcmFtc1snZXJyb3InXSA9IDE7CgkkdGhpcy0+QXVkaXQoIDAsICR0aGlzLT5MYW5nKCdmcmllbmRseW5hbWUnKSwgCgkJICAgICAgJHRoaXMtPkxhbmcoJ2Vycm9yX3Bhc3N3b3Jkc2RvbnRtYXRjaCcpLiI6ICIuJHVzZXJuYW1lKTsKCSR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdkZWZhdWx0JywgJHJldHVybmlkLCAkcGFyYW1zICk7CglyZXR1cm47CiAgICAgIH0KICAgIGlmKCAkY29kZSAhPSAkdG1wdXNlclsnY29kZSddICkKICAgICAgewoJJHBhcmFtc1snbW9kZSddID0gJ3ZlcmlmeSc7CgkkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfY29kZXNkb250bWF0Y2gnKTsKCSRwYXJhbXNbJ2Vycm9yJ10gPSAxOwoJJHRoaXMtPkF1ZGl0KCAwLCAkdGhpcy0+TGFuZygnZnJpZW5kbHluYW1lJyksIAoJCSAgICAgICR0aGlzLT5MYW5nKCdlcnJvcl9jb2Rlc2RvbnRtYXRjaCcpLiI6ICIuJHVzZXJuYW1lKTsKCSR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdkZWZhdWx0JywgJHJldHVybmlkLCAkcGFyYW1zICk7CiAgICAgIH0KICAgIGlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfZ3JvdXBfaWQnXSApICYmICRwYXJhbXNbJ2lucHV0X2dyb3VwX2lkJ10gIT0gJycgKQogICAgICB7CgkkZ3JvdXBfaWQgPSB0cmltKCRwYXJhbXNbJ2lucHV0X2dyb3VwX2lkJ10pOwogICAgICB9CiAgICBlbHNlCiAgICAgIHsKCSRncm91cF9pZCA9ICR0bXB1c2VyWydncm91cF9pZCddOwogICAgICB9CgogICAgJHJlc3VsdCA9ICR0aGlzLT5fQ3JlYXRlRnJvbnRlbmRVc2VyKCAkdG1wdXNlclsnaWQnXSwgJGdyb3VwX2lkLAoJCQkJCSAgJHVzZXJuYW1lLCAkcGFzc3dvcmQgKTsKICAgIGlmKCAkcmVzdWx0ICE9IDAgKQogICAgICB7CgkkcGFyYW1zWydtb2RlJ10gPSAndmVyaWZ5JzsKCSRwYXJhbXNbJ21lc3NhZ2UnXSA9ICRyZXN1bHQ7CgkkcGFyYW1zWydlcnJvciddID0gMTsKCSR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdkZWZhdWx0JywgJHJldHVybmlkLCAkcGFyYW1zICk7CglyZXR1cm47CiAgICAgIH0KCiAgICAvLyB3b29ob29vLCB0aGUgdXNlciBiZSBjcmVhdGVkIChob3BlZnVsbHkpLgogICAgLy8gZGVsZXRlIHRoZSByZWNvcmRzIGZyb20gdGhlIFNlbGZSZWcgdGFibGVzCiAgICAkdGhpcy0+RGVsZXRlVGVtcFVzZXJQcm9wZXJ0aWVzKCAkdG1wdXNlclsnaWQnXSApOwogICAgJHRoaXMtPkRlbGV0ZVRlbXBVc2VyKCAkdG1wdXNlclsnaWQnXSApOwoKdW5zZXQoJHBhcmFtc1snbW9kZSddKTsKdW5zZXQoJHBhcmFtc1snYWN0aW9uJ10pOwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/functions.adminpanel.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFNlbGZSZWdpc3RyYXRpb24gLSBBIG1vZHVsZSB0byBhbGxvdyB1c2VycyB0byByZWdpc3RlciB0aGVtc2VsdmVzCiMgV2l0aCBhIHdlYnNpdGUuCiMgVmVyc2lvbjogMS4xLjEgQ2FsZ3V5MTAwMAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgX0Rpc3BsYXlBZG1pblBhbmVsKCRpZCwgJHBhcmFtcywgJHJldHVybl9pZCApCiAgIE5PVCBQQVJUIE9GIFRIRSBNT0RVTEUgQVBJCiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCiAgZnVuY3Rpb24gX0Rpc3BsYXlBZG1pblBhbmVsKCYkbW9kdWxlLCAkaWQsICYkcGFyYW1zLCAkcmV0dXJuaWQgKQogIHsKICAgICRhY3RpdmVfdGFiID0gLTE7CiAgICBpZiggaXNzZXQoJHBhcmFtc1snYWN0aXZlX3RhYiddKSkKICAgICAgewoJJGFjdGl2ZV90YWIgPSAkcGFyYW1zWydhY3RpdmVfdGFiJ107CiAgICAgIH0KCiAgICAvLyB0aGUgdGFicwogICAgZWNobyAkbW9kdWxlLT5TdGFydFRhYkhlYWRlcnMoKTsKCiAgICBpZiggJG1vZHVsZS0+Q2hlY2tQZXJtaXNzaW9uKCdNYW5hZ2UgUmVnaXN0ZXJpbmcgVXNlcnMnICkgKQogICAgICB7CgllY2hvICRtb2R1bGUtPlNldFRhYkhlYWRlcignYWRtaW51c2VycycsJG1vZHVsZS0+TGFuZygndXNlcnMnKSwKCQkJCSAoJGFjdGl2ZV90YWIgPT0gJ2FkbWludXNlcnMnKSk7CiAgICAgIH0KCQkJICAgICAgIAogICAgaWYoICRtb2R1bGUtPkNoZWNrUGVybWlzc2lvbignTW9kaWZ5IFRlbXBsYXRlcycgKSApCiAgICAgIHsKCWVjaG8gJG1vZHVsZS0+U2V0VGFiSGVhZGVyKCdyZWcxdGVtcGxhdGUnLCAkbW9kdWxlLT5MYW5nKCdyZWdpc3RyYXRpb24xX3RlbXBsYXRlJyksIAoJCQkJICgkYWN0aXZlX3RhYiA9PSAncmVnMXRlbXBsYXRlJykpOwoJZWNobyAkbW9kdWxlLT5TZXRUYWJIZWFkZXIoJ3JlZzJ0ZW1wbGF0ZScsICRtb2R1bGUtPkxhbmcoJ3JlZ2lzdHJhdGlvbjJfdGVtcGxhdGUnKSwgCgkJCQkgKCRhY3RpdmVfdGFiID09ICdyZWcydGVtcGxhdGUnKSk7CgllY2hvICRtb2R1bGUtPlNldFRhYkhlYWRlcignZW1haWxjb25maXJtX3RlbXBsYXRlJywgJG1vZHVsZS0+TGFuZygnZW1haWxjb25maXJtX3RlbXBsYXRlJyksIAoJCQkJICgkYWN0aXZlX3RhYiA9PSAnZW1haWxjb25maXJtX3RlbXBsYXRlJykpOwoJZWNobyAkbW9kdWxlLT5TZXRUYWJIZWFkZXIoJ2VtYWlsdXNlcmVkaXRlZF90ZW1wbGF0ZScsICRtb2R1bGUtPkxhbmcoJ2VtYWlsdXNlcmVkaXRlZF90ZW1wbGF0ZScpLCAKCQkJCSAoJGFjdGl2ZV90YWIgPT0gJ2VtYWlsdXNlcmVkaXRlZF90ZW1wbGF0ZScpKTsKCWVjaG8gJG1vZHVsZS0+U2V0VGFiSGVhZGVyKCdmaW5hbG1lc3NhZ2VfdGVtcGxhdGUnLCAKCQkJCSAkbW9kdWxlLT5MYW5nKCdmaW5hbG1lc3NhZ2VfdGVtcGxhdGUnKSwKCQkJCSAoJGFjdGl2ZV90YWIgPT0gJ2ZpbmFsbWVzc2FnZV90ZW1wbGF0ZScpKTsKICAgICAgICBlY2hvICRtb2R1bGUtPlNldFRhYkhlYWRlcignc2VuZGFub3RoZXJlbWFpbF90ZW1wbGF0ZScsIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkbW9kdWxlLT5MYW5nKCdzZW5kYW5vdGhlcmVtYWlsX3RlbXBsYXRlJyksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgkYWN0aXZlX3RhYiA9PSAnc2VuZGFub3RoZXJlbWFpbF90ZW1wbGF0ZScpKTsKICAgICAgfQoKICAgIGlmKCAkbW9kdWxlLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBTaXRlIFByZWZlcmVuY2VzJykgKQogICAgICB7CgllY2hvICRtb2R1bGUtPlNldFRhYkhlYWRlcigncHJlZmVyZW5jZXMnLCAkbW9kdWxlLT5MYW5nKCdwcmVmZXJlbmNlcycpLAoJCQkJICgkYWN0aXZlX3RhYiA9PSAncHJlZmVyZW5jZXMnKSk7CiAgICAgIH0KICAgIGVjaG8gJG1vZHVsZS0+RW5kVGFiSGVhZGVycygpOwoKICAgIC8vIHRoZSBjb250ZW50IG9mIHRoZSB0YWJzCiAgICBlY2hvICRtb2R1bGUtPlN0YXJ0VGFiQ29udGVudCgpOwoKICAgIGlmKCAkbW9kdWxlLT5DaGVja1Blcm1pc3Npb24oJ01hbmFnZSBSZWdpc3RlcmluZyBVc2VycycgKSApCiAgICAgIHsKCWVjaG8gJG1vZHVsZS0+U3RhcnRUYWIoJ2FkbWludXNlcnMnKTsKCV9EaXNwbGF5QWRtaW5Vc2Vyc1RhYiggJG1vZHVsZSwgJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQgKTsKCWVjaG8gJG1vZHVsZS0+RW5kVGFiKCk7CiAgICAgIH0KCiAgICBpZiggJG1vZHVsZS0+Q2hlY2tQZXJtaXNzaW9uKCdNb2RpZnkgVGVtcGxhdGVzJyApICkKICAgICAgewoJZWNobyAkbW9kdWxlLT5TdGFydFRhYigncmVnMXRlbXBsYXRlJyk7CglfRGlzcGxheUFkbWluUmVnMVRlbXBsYXRlVGFiKCAkbW9kdWxlLCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCApOwoJZWNobyAkbW9kdWxlLT5FbmRUYWIoKTsKCQoJZWNobyAkbW9kdWxlLT5TdGFydFRhYigncmVnMnRlbXBsYXRlJyk7CglfRGlzcGxheUFkbWluUmVnMlRlbXBsYXRlVGFiKCAkbW9kdWxlLCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCApOwoJZWNobyAkbW9kdWxlLT5FbmRUYWIoKTsKCQoJZWNobyAkbW9kdWxlLT5TdGFydFRhYignZW1haWxjb25maXJtX3RlbXBsYXRlJyk7CglfRGlzcGxheUFkbWluRW1haWxDb25maXJtYXRpb25UZW1wbGF0ZVRhYiggJG1vZHVsZSwgJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQgKTsKCWVjaG8gJG1vZHVsZS0+RW5kVGFiKCk7CgkKCWVjaG8gJG1vZHVsZS0+U3RhcnRUYWIoJ2VtYWlsdXNlcmVkaXRlZF90ZW1wbGF0ZScpOwoJX0Rpc3BsYXlBZG1pbkVtYWlsVXNlckVkaXRlZFRlbXBsYXRlVGFiKCAkbW9kdWxlLCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCApOwoJZWNobyAkbW9kdWxlLT5FbmRUYWIoKTsKCQoJZWNobyAkbW9kdWxlLT5TdGFydFRhYignZmluYWxtZXNzYWdlX3RlbXBsYXRlJyk7CglfRGlzcGxheUFkbWluRmluYWxNZXNzYWdlVGVtcGxhdGVUYWIoICRtb2R1bGUsICRpZCwgJHBhcmFtcywgJHJldHVybmlkICk7CgllY2hvICRtb2R1bGUtPkVuZFRhYigpOwoKCWVjaG8gJG1vZHVsZS0+U3RhcnRUYWIoJ3NlbmRhbm90aGVyZW1haWxfdGVtcGxhdGUnKTsKCV9EaXNwbGF5QWRtaW5TZW5kQW5vdGhlckVtYWlsVGVtcGxhdGVUYWIoICRtb2R1bGUsICRpZCwgJHBhcmFtcywgJHJldHVybmlkICk7CgllY2hvICRtb2R1bGUtPkVuZFRhYigpOwogICAgICB9CgogICAgaWYoICRtb2R1bGUtPkNoZWNrUGVybWlzc2lvbignTW9kaWZ5IFNpdGUgUHJlZmVyZW5jZXMnKSApCiAgICAgIHsKCWVjaG8gJG1vZHVsZS0+U3RhcnRUYWIoJ3ByZWZlcmVuY2VzJyk7CglfRGlzcGxheUFkbWluUHJlZmVyZW5jZXNUYWIoICRtb2R1bGUsICRpZCwgJHBhcmFtcywgJHJldHVybmlkICk7CgllY2hvICRtb2R1bGUtPkVuZFRhYigpOwogICAgICB9CgogICAgZWNobyAkbW9kdWxlLT5FbmRUYWJDb250ZW50KCk7CiAgfQoKICAKICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICBfRGlzcGxheUFkbWluUHJlZmVyZW5jZXNUYWIoJGlkLCAkcGFyYW1zLCAkcmV0dXJuX2lkICkKICAgTk9UIFBBUlQgT0YgVEhFIE1PRFVMRSBBUEkKICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KZnVuY3Rpb24gX0Rpc3BsYXlBZG1pblByZWZlcmVuY2VzVGFiKCAmJG1vZHVsZSwgJGlkLCAmJHBhcmFtcywgJHJldHVybmlkICkKICB7CiAgICAkbW9kdWxlLT5zbWFydHktPmFzc2lnbignc3RhcnRmb3JtJywKCQkJICAkbW9kdWxlLT5DcmVhdGVGb3JtU3RhcnQoICRpZCwgJ3NldHByZWZzJywgJHJldHVybmlkICkpOwogICAgJG1vZHVsZS0+c21hcnR5LT5hc3NpZ24oJ2VuZGZvcm0nLAoJCQkgICRtb2R1bGUtPkNyZWF0ZUZvcm1FbmQoKSk7CgogICAgJG1vZHVsZS0+c21hcnR5LT5hc3NpZ24oJ3Byb21wdF9ub3RpZnknLAoJCQkgICRtb2R1bGUtPkxhbmcoJ25vdGlmeV9vbl9yZWdpc3RyYXRpb24nKSk7CiAgICAkbW9kdWxlLT5zbWFydHktPmFzc2lnbignaW5wdXRfbm90aWZ5JywKCQkJICAkbW9kdWxlLT5DcmVhdGVJbnB1dENoZWNrYm94KCAkaWQsIAoJCQkJCQkgICAgICAnaW5wdXRfbm90aWZ5JywgMSwKCQkJCQkJICAgICAgJG1vZHVsZS0+R2V0UHJlZmVyZW5jZSgnbm90aWZ5X29uX3JlZ2lzdHJhdGlvbicpKSk7CgogICAgJG1vZHVsZS0+c21hcnR5LT5hc3NpZ24oJ3Byb21wdF9lbWFpbF9jb25maXJtYXRpb24nLAoJCQkgICRtb2R1bGUtPkxhbmcoJ3JlcXVpcmVfZW1haWxfY29uZmlybWF0aW9uJykpOwogICAgJG1vZHVsZS0+c21hcnR5LT5hc3NpZ24oJ2lucHV0X2VtYWlsX2NvbmZpcm1hdGlvbicsCgkJCSAgJG1vZHVsZS0+Q3JlYXRlSW5wdXRDaGVja2JveCggJGlkLCAKCQkJCQkJICAgICAgJ2lucHV0X2VtYWlsX2NvbmZpcm1hdGlvbicsIDEsCgkJCQkJCSAgICAgICRtb2R1bGUtPkdldFByZWZlcmVuY2UoJ3JlcXVpcmVfZW1haWxfY29uZmlybWF0aW9uJykpKTsKCiAgICAkbW9kdWxlLT5zbWFydHktPmFzc2lnbigncHJvbXB0X2NvbmZpcm1tYWlsX3RvJywKCQkJICAkbW9kdWxlLT5MYW5nKCdzZW5kX2VtYWlsc190bycpKTsKICAgICRtb2R1bGUtPnNtYXJ0eS0+YXNzaWduKCdpbnB1dF9jb25maXJtbWFpbF90bycsCgkJCSAgJG1vZHVsZS0+Q3JlYXRlSW5wdXRUZXh0KCAkaWQsIAoJCQkJCQkgICdpbnB1dF9jb25maXJtbWFpbF90bycsIAoJCQkJCQkgICRtb2R1bGUtPkdldFByZWZlcmVuY2UoJ3NlbmRfZW1haWxzX3RvJyksCgkJCQkJCSAgMzAsIDYwKSk7CgogICAgJG1vZHVsZS0+c21hcnR5LT5hc3NpZ24oJ3N1Ym1pdCcsJG1vZHVsZS0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCdzdWJtaXQnLAoJCQkJCQkJICAgICRtb2R1bGUtPkxhbmcoJ3N1Ym1pdCcpLCAnJywgJycsCgkJCQkJCQkgICAgJG1vZHVsZS0+TGFuZygnY29uZmlybV9zdWJtaXRwcmVmcycpKSk7CgogICAgJG1vZHVsZS0+c21hcnR5LT5hc3NpZ24oJ3Byb21wdF9mb3JjZV9lbWFpbF90d2ljZScsCgkJCSAgJG1vZHVsZS0+TGFuZygnZm9yY2VfZW1haWxfdHdpY2UnKSk7CiAgICAkbW9kdWxlLT5zbWFydHktPmFzc2lnbignaW5wdXRfZm9yY2VfZW1haWxfdHdpY2UnLAoJCQkgICRtb2R1bGUtPkNyZWF0ZUlucHV0Q2hlY2tib3goICRpZCwgCgkJCQkJCSAgICAgICdpbnB1dF9mb3JjZV9lbWFpbF90d2ljZScsIDEsCgkJCQkJCSAgICAgICRtb2R1bGUtPkdldFByZWZlcmVuY2UoJ3NlbGZyZWdfZm9yY2VfZW1haWxfdHdpY2UnKSkpOwogICAgCiAgICAkbnVtID0gJG1vZHVsZS0+Q291bnRUZW1wVXNlcnMoKTsKICAgIGlmKCAkbnVtICkKICAgICAgewoJJG1vZHVsZS0+c21hcnR5LT5hc3NpZ24oJ3Byb21wdF9udW1yZXNldHJlY29yZHMnLAoJCQkgICAgICAkbW9kdWxlLT5MYW5nKCdwcm9tcHRfbnVtcmVzZXRyZWNvcmQnKSk7CgkkbW9kdWxlLT5zbWFydHktPmFzc2lnbignZGF0YV9udW1yZXNldHJlY29yZHMnLCAkbnVtKTsgLy90b2RvCgkkbW9kdWxlLT5zbWFydHktPmFzc2lnbignaW5wdXRfcmVtb3ZlYWxsJywKCQkJICAgICAgJG1vZHVsZS0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCdpbnB1dF9yZW1vdmVhbGwnLAoJCQkJCQkgICAgICAgJG1vZHVsZS0+TGFuZygncmVtb3ZlYWxsJyksCgkJCQkJCSAgICAgICAnb25jbGljaz0icmV0dXJuIGNvbmZpcm0oXCcnLiRtb2R1bGUtPkxhbmcoJ2FyZXlvdXN1cmUnKS4nXCcpIicpKTsKCSRtb2R1bGUtPnNtYXJ0eS0+YXNzaWduKCdpbnB1dF9yZW1vdmUxd2VlaycsCgkJCSAgICAgICRtb2R1bGUtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwnaW5wdXRfcmVtb3ZlMXdlZWsnLAoJCQkJCQkgICAgICAgJG1vZHVsZS0+TGFuZygncmVtb3ZlMXdlZWsnKSwKCQkJCQkJICAgICAgICdvbmNsaWNrPSJyZXR1cm4gY29uZmlybShcJycuJG1vZHVsZS0+TGFuZygnYXJleW91c3VyZScpLidcJykiJykpOwogICAgICAKCSRtb2R1bGUtPnNtYXJ0eS0+YXNzaWduKCdpbnB1dF9yZW1vdmUxbW9udGgnLAoJCQkgICAgICAkbW9kdWxlLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsJ2lucHV0X3JlbW92ZTFtb250aCcsCgkJCQkJCSAgICAgICAkbW9kdWxlLT5MYW5nKCdyZW1vdmUxbW9udGgnKSwKCQkJCQkJICAgICAgICdvbmNsaWNrPSJyZXR1cm4gY29uZmlybShcJycuJG1vZHVsZS0+TGFuZygnYXJleW91c3VyZScpLidcJykiJykpOwoJJG1vZHVsZS0+c21hcnR5LT5hc3NpZ24oJ2lucHV0X3JlbW92ZTFkYXknLAoJCQkgICAgICAkbW9kdWxlLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsJ2lucHV0X3JlbW92ZTFkYXknLAoJCQkJCQkgICAgICAgJG1vZHVsZS0+TGFuZygncmVtb3ZlMWRheScpLAoJCQkJCQkgICAgICAgJ29uY2xpY2s9InJldHVybiBjb25maXJtKFwnJy4kbW9kdWxlLT5MYW5nKCdhcmV5b3VzdXJlJykuJ1wnKSInKSk7CgkkbW9kdWxlLT5zbWFydHktPmFzc2lnbignaW5wdXRfbGlzdDFkYXknLAoJCQkgICAgICAkbW9kdWxlLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsJ2lucHV0X2xpc3QxZGF5JywKCQkJCQkJICAgICAgICRtb2R1bGUtPkxhbmcoJ2xpc3QxZGF5JykpKTsKICAgICAgfQoKICAgIGVjaG8gJG1vZHVsZS0+UHJvY2Vzc1RlbXBsYXRlKCdwcmVmcy50cGwnKTsKICB9CgoKICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICBEaXNwbGF5QWRtaW5SZWcxVGVtcGxhdGVUYWIoJGlkLCAkcGFyYW1zLCAkcmV0dXJuX2lkKQogICBOT1QgUEFSVCBPRiBUSEUgTU9EVUxFIEFQSQogICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwpmdW5jdGlvbiBfRGlzcGxheUFkbWluUmVnMVRlbXBsYXRlVGFiKCAmJG1vZHVsZSwgJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQgKQogIHsKICAgIGVjaG8gJG1vZHVsZS0+Q3JlYXRlRm9ybVN0YXJ0ICgkaWQsICdzZXRfcmVnMXRlbXBsYXRlJyk7CiAgICBlY2hvICc8cD5SZWdpc3RyYXRpb24gVGVtcGxhdGU8L3A+JzsKICAgIGVjaG8gJzxici8+PHA+Jy4kbW9kdWxlLT5DcmVhdGVUZXh0QXJlYSAoZmFsc2UsICRpZCwKCQkJCQkgICAkbW9kdWxlLT5HZXRUZW1wbGF0ZSAoJ3NlbGZyZWdfcmVnMXRlbXBsYXRlJyksCgkJCQkJICAgJ3JlZzFfdGVtcGxhdGVjb250ZW50JywgJycpLic8L3A+JzsKICAgIGVjaG8gJzxwPlBvc3QgUmVnaXN0cmF0aW9uIFRlbXBsYXRlPC9wPic7CiAgICBlY2hvICc8YnIvPjxwPicuJG1vZHVsZS0+Q3JlYXRlVGV4dEFyZWEgKGZhbHNlLCAkaWQsCgkJCQkJICAgJG1vZHVsZS0+R2V0VGVtcGxhdGUgKCdzZWxmcmVnX3Bvc3RyZWcxX3RlbXBsYXRlJyksCgkJCQkJICAgJ3Bvc3RyZWcxX3RlbXBsYXRlY29udGVudCcsICcnKS4nPC9wPic7CiAgICBlY2hvICRtb2R1bGUtPkNyZWF0ZUlucHV0U3VibWl0ICgkaWQsICdzdWJtaXRidXR0b24nLAoJCQkJICAgJG1vZHVsZS0+TGFuZyAoJ3N1Ym1pdCcpKTsKICAgIGVjaG8gJG1vZHVsZS0+Q3JlYXRlSW5wdXRTdWJtaXQgKCRpZCwgJ2RlZmF1bHRidXR0b24nLAoJCQkJICAgJG1vZHVsZS0+TGFuZyAoJ2RlZmF1bHQnKSk7CiAgICBlY2hvICRtb2R1bGUtPkNyZWF0ZUZvcm1FbmQgKCk7CiAgfQoKCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgRGlzcGxheUFkbWluUmVnMlRlbXBsYXRlVGFiKCRpZCwgJHBhcmFtcywgJHJldHVybl9pZCkKICAgTk9UIFBBUlQgT0YgVEhFIE1PRFVMRSBBUEkKICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KZnVuY3Rpb24gX0Rpc3BsYXlBZG1pblJlZzJUZW1wbGF0ZVRhYiggJiRtb2R1bGUsICRpZCwgJHBhcmFtcywgJHJldHVybmlkICkKICB7CiAgICBlY2hvICRtb2R1bGUtPkNyZWF0ZUZvcm1TdGFydCAoJGlkLCAnc2V0X3JlZzJ0ZW1wbGF0ZScpOwogICAgZWNobyAnPGJyLz48cD4nLiRtb2R1bGUtPkNyZWF0ZVRleHRBcmVhIChmYWxzZSwgJGlkLAoJCQkJCSAgICRtb2R1bGUtPkdldFRlbXBsYXRlICgnc2VsZnJlZ19yZWcydGVtcGxhdGUnKSwKCQkJCQkgICAndGVtcGxhdGVjb250ZW50JywgJycpLic8L3A+JzsKICAgIGVjaG8gJG1vZHVsZS0+Q3JlYXRlSW5wdXRTdWJtaXQgKCRpZCwgJ3N1Ym1pdGJ1dHRvbicsCgkJCQkgICAkbW9kdWxlLT5MYW5nICgnc3VibWl0JykpOwogICAgZWNobyAkbW9kdWxlLT5DcmVhdGVJbnB1dFN1Ym1pdCAoJGlkLCAnZGVmYXVsdGJ1dHRvbicsCgkJCQkgICAkbW9kdWxlLT5MYW5nICgnZGVmYXVsdCcpKTsKICAgIGVjaG8gJG1vZHVsZS0+Q3JlYXRlRm9ybUVuZCAoKTsKICB9CgoKICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICBEaXNwbGF5QWRtaW5Vc2Vyc1RhYigkaWQsICRwYXJhbXMsICRyZXR1cm5faWQpCiAgIE5PVCBQQVJUIE9GIFRIRSBNT0RVTEUgQVBJCiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCmZ1bmN0aW9uIF9EaXNwbGF5QWRtaW5Vc2Vyc1RhYiggJiRtb2R1bGUsICRpZCwgJHBhcmFtcywgJHJldHVybmlkICkKICB7CiAgICBnbG9iYWwgJGdDbXM7CiAgICAkZGIgPSAkbW9kdWxlLT5HZXREYigpOwogICAgLy8gZGlzcGxheSBhIHRhYmxlIHdpdGggdXNlcmlkLCBncm91cF9pZCAobmFtZT8pLCB1c2VybmFtZSwgY3JlYXRlZGF0ZSwgPGVtYWlsIGFkZHJlc3M+CiAgICAvLyBhbmQgYWxsb3cgdGhlIGFkbWluIHRvIGVkaXQsIGRlbGV0ZSwgYW5kIG9yIG9wdGlvbmFsbHkgc2VuZCB0aGF0IHVzZXIgYSBtZXNzYWdlCiAgICAvLyBzaG91bGQgYWxzbyBoYXZlIGEgY2hlY2tib3ggc28gdGhhdCB0aGUgYWRtaW4gY2FuIGRlbGV0ZSBhIGJ1bmNoIG8gdXNlcnMgYXQgdGhlIHNhbWUgdGltZQogICAgLy8gYW5kIGEgc2VsZWN0IGFsbCB3b3VsZCBiZSBjb29sLgoKICAgIC8vIGdldCBhIGxpc3Qgb2YgYWxsIG9mIHRoZSBncnVwcwogICAgJGZldXNlcnMgPSAkbW9kdWxlLT5HZXRNb2R1bGVJbnN0YW5jZSgnRnJvbnRFbmRVc2VycycpOwogICAgaWYoICEkZmV1c2VycyApCiAgICAgIHsKCSRtb2R1bGUtPl9EaXNwbGF5RXJyb3JQYWdlKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAKCQkJCSAkbW9kdWxlLT5MYW5nKCdlcnJvcl9ub2ZldXNlcnNtb2R1bGUnKSk7CglyZXR1cm47CiAgICAgIH0KICAgICRncnBsaXN0ID0gYXJyYXkoKTsKICAgIHsKICAgICAgJHRfZ3JwbGlzdCA9ICRmZXVzZXJzLT5HZXRHcm91cExpc3RGdWxsKCk7CiAgICAgIGlmKCAhaXNfYXJyYXkoICR0X2dycGxpc3QgKSB8fCBjb3VudCgkdF9ncnBsaXN0KSA9PSAwICkKCXsKCSAgJG1vZHVsZS0+X0Rpc3BsYXlFcnJvclBhZ2UoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsIAoJCQkJICAgJG1vZHVsZS0+TGFuZygnZXJyb3Jfbm9ncm91cHMnKSk7CgkgIHJldHVybjsKCX0KICAgICAgLy8gZm9yIG91ciBwdXJwb3NlcyBoZXJlLCB3ZSdsbCByZS1vcmcgdF9ncm91cGxpc3QgdG8gYmUga2V5ZWQgYnkgaWQKICAgICAgZm9yZWFjaCggJHRfZ3JwbGlzdCBhcyAkZ3JwICkKCXsKCSAgJGdycGxpc3RbJGdycFsnaWQnXV0gPSAkZ3JwOwoJfQogICAgfQoKICAgIC8vIGFuIGFycmF5IGZvciB0aGUgZ3JvdXAgcHJvcGVydHkgcmVsYXRpb25zICh3ZSdyZSBnb25uYSBjYWNoZSBlbSkKICAgICRyZWxhdGlvbnMgPSBhcnJheSgpOwoKICAgIC8vIGFuIGFycmF5IGZvciB0aGUgZW1haWwgZmllbGQgbmFtZXMsIGJ5IGdyb3VwIGlkICh3ZSdyZSBnb25uYSBjYWNoZSBlbSB0b28pCiAgICAkZW1haWxmbGRzID0gYXJyYXkoKTsKCiAgICAvLyBnZXQgdGhlIHByb3BlcnR5IGRlZmluaXRpb25zCiAgICAkcHJvcHMgPSAkZmV1c2Vycy0+R2V0UHJvcGVydHlEZWZucygpOwogICAgaWYoICRwcm9wcyA9PSBmYWxzZSApCiAgICAgIHsKCSRtb2R1bGUtPl9EaXNwbGF5RXJyb3JQYWdlKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAKCQkJCSAkbW9kdWxlLT5MYW5nKCdlcnJvcl9ub3Byb3BkZWZucycpKTsKCXJldHVybjsKICAgICAgfQoKICAgIC8vIHNvbWUgamF2YXNjcmlwdAogICAgJG1vZHVsZS0+c21hcnR5LT5hc3NpZ24oJ2phdmFzY3JpcHQnLAonPFNDUklQVCBMQU5HVUFHRT0iSmF2YVNjcmlwdCI+CmZ1bmN0aW9uIGNoZWNrQWxsKGZtb2JqLHN0YXRlKSB7CiAgZm9yICh2YXIgaT0wO2k8Zm1vYmouZWxlbWVudHMubGVuZ3RoO2krKykgewogICAgdmFyIGUgPSBmbW9iai5lbGVtZW50c1tpXTsKICAgIGlmICggKGUudHlwZT09ImNoZWNrYm94IikgJiYgKCFlLmRpc2FibGVkKSApIHsKICAgICAgZS5jaGVja2VkID0gc3RhdGU7CiAgICB9CiAgfQp9IDwvU0NSSVBUPicpOwoKICAgIC8vIHNvbWUgbGFiZWxzCiAgICAkbW9kdWxlLT5zbWFydHktPmFzc2lnbignc3RhcnRmb3JtJywkbW9kdWxlLT5DcmVhdGVGb3JtU3RhcnQoJGlkLCdkb19kZWxldGV1c2Vyc2J1bGsnKSk7CiAgICAkbW9kdWxlLT5zbWFydHktPmFzc2lnbignc3VibWl0JywkbW9kdWxlLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsJ2RlbGV0ZScsJG1vZHVsZS0+TGFuZygnZGVsZXRlc2VsdXNlcnMnKSkpOwogICAgJG1vZHVsZS0+c21hcnR5LT5hc3NpZ24oJ2VuZGZvcm0nLCRtb2R1bGUtPkNyZWF0ZUZvcm1FbmQoKSk7CiAgICAkbW9kdWxlLT5zbWFydHktPmFzc2lnbigndXNlcmlkdGV4dCcsJG1vZHVsZS0+TGFuZygnaGRyX3VzZXJpZCcpKTsKICAgICRtb2R1bGUtPnNtYXJ0eS0+YXNzaWduKCd1c2VybmFtZXRleHQnLCRtb2R1bGUtPkxhbmcoJ2hkcl91c2VybmFtZScpKTsKICAgICRtb2R1bGUtPnNtYXJ0eS0+YXNzaWduKCdncnBuYW1ldGV4dCcsJG1vZHVsZS0+TGFuZygnaGRyX2dycG5hbWUnKSk7CiAgICAkbW9kdWxlLT5zbWFydHktPmFzc2lnbignY3JlYXRlZHRleHQnLCRtb2R1bGUtPkxhbmcoJ2hkcl9jcmVhdGVkJykpOwogICAgJG1vZHVsZS0+c21hcnR5LT5hc3NpZ24oJ2VtYWlsdGV4dCcsJG1vZHVsZS0+TGFuZygnaGRyX2VtYWlsJykpOwogICAgJG1vZHVsZS0+c21hcnR5LT5hc3NpZ24oJ2RlbGV0ZXRleHQnLCRtb2R1bGUtPkxhbmcoJ3NlbGVjdCcpKTsKICAgICRtb2R1bGUtPnNtYXJ0eS0+YXNzaWduKCdjaGVja2FsbGJveCcsCgkJCSAgJG1vZHVsZS0+Q3JlYXRlTGluaygkaWQsJ2RlZmF1bHRhZG1pbicsJHJldHVybmlkLAoJCQkJCSAgICAkbW9kdWxlLT5MYW5nKCdjaGVja19hbGwnKSwgYXJyYXkoKSwgJycsIGZhbHNlLCBmYWxzZSwKCQkJCQkgICAgJ29uQ2xpY2soKT0iY2hlY2tBbGwoZG9jdW1lbnQuZm9ybXNbMF0sdHJ1ZSk7cmV0dXJuIGZhbHNlIicpLgoJCQkgICImbmJzcDsmbmJzcDsiLgoJCQkgICRtb2R1bGUtPkNyZWF0ZUxpbmsoJGlkLCdkZWZhdWx0YWRtaW4nLCRyZXR1cm5pZCwKCQkJCQkgICAgJG1vZHVsZS0+TGFuZygndW5jaGVja19hbGwnKSwgYXJyYXkoKSwgJycsIGZhbHNlLCBmYWxzZSwKCQkJCQkgICAgJ29uQ2xpY2soKT0iY2hlY2tBbGwoZG9jdW1lbnQuZm9ybXNbMF0sZmFsc2UpO3JldHVybiBmYWxzZSInKSk7CiAgICAKICAgIC8vIHNlbGVjdCBhbGwgdGhlIHVzZXJzCiAgICAkcm93YXJyYXkgPSBhcnJheSgpOwogICAgLy8gdG9kbywgYWRkIHNvbWUgcmVhbCBmaWx0ZXJpbmcgaGVyZQogICAgJHEgPSAiU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3NlbGZyZWdfdXNlcnMgTElNSVQgMjUwIjsKICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHEgKTsKICAgIGlmKCAkZGJyZXN1bHQgJiYgKCRkYnJlc3VsdC0+UmVjb3JkQ291bnQoKSA+IDApICkKICAgICAgewoJLy8gd2UgaGF2ZSByb3dzCgkkcm93Y2xhc3MgPSAncm93MSc7Cgl3aGlsZSggJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKSApCgkgIHsKCSAgICAKCSAgICAkb25lcm93ID0gbmV3IFN0ZENsYXNzKCk7CgkgICAgJG9uZXJvdy0+dXNlcmlkID0gJHJvd1snaWQnXTsKCSAgICAkb25lcm93LT51c2VybmFtZSA9ICRyb3dbJ3VzZXJuYW1lJ107CgkgICAgJG9uZXJvdy0+Z3JwbmFtZSA9ICRncnBsaXN0WyRyb3dbJ2dyb3VwX2lkJ11dWydncm91cG5hbWUnXTsgIC8vIHVnbHkgZWgKCSAgICAkb25lcm93LT5jcmVhdGVkID0gJHJvd1snY3JlYXRlZGF0ZSddOwoJICAgICRvbmVyb3ctPnJvd2NsYXNzID0gJHJvd2NsYXNzOwoJICAgIC8vIHRvZG8gZW1haWwsIGVkaXRsaW5rLCBtYXJrZGVsZXRlYm94CgoJICAgIC8vIG5vdyB3ZSBoYXZlIGEgZ3JvdXAgaWQuLi4gaGF2ZSB0byBnZXQgYSBsaXN0IG9mIHRoZSBncm91cHMgcHJvcGVydGllcwoJICAgIGlmKCAhaXNzZXQoICRyZWxhdGlvbnNbICRyb3dbJ2dyb3VwX2lkJ10gXSApICkKCSAgICAgIHsKCQkvLyBub3QgaW4gdGhlIGNhY2hlLCBzbyBnZXQgdGhlbQoJCSR0X3JlbGF0aW9ucyA9ICRmZXVzZXJzLT5HZXRHcm91cFByb3BlcnR5UmVsYXRpb25zKCAkcm93Wydncm91cF9pZCddICk7CgkJaWYoICR0X3JlbGF0aW9uc1swXSA9PSBmYWxzZSApCgkJICB7CgkJICAgIC8vIHRoaXMgaXMgdWdseSBmb3IgdGhlIHVzZXIgdG8gc2VlCgkJICAgIC8vIGJ1dCBhdCBsZWFzdCB0aGUgYWRtaW4gd2lsbCBiZSBhYmxlIHRvIGZpZ3VyZSBpdCBvdXQKCQkgICAgJG1vZHVsZS0+X0Rpc3BsYXlFcnJvclBhZ2UoICRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAKCQkJCQkJJHRoaXMtPkxhbmcoJ2Vycm9yX25vZ3JvdXBwcm9wcmVsbnMnLCR0X3JlbGF0aW9uc1sxXSkgKTsKCQkgICAgcmV0dXJuOwoJCSAgfQoKCQkvLyBhbmQgY2FjaGUgdGhlbQoJCSRyZWxhdGlvbnNbICRyb3dbJ2dyb3VwX2lkJ10gXSA9ICR0X3JlbGF0aW9uczsKCSAgICAgIH0KCgkgICAgLy8gbm93LCBnbyB0aHJvdWdoIGFsbCBvZiB0aGUgcmVsYXRpb25zLCB4cmVmIHdpdGggdGhlIHByb3BlcnRpZXMgZmllbGQKCSAgICAvLyBhbmQgdHJ5IHRvIGZpbmQgb25lIHRoYXQncyBhbiBlbWFpbCBhZGRyZXNzIGZvciB0aGlzIGdyb3VwCgkgICAgLy8gd2UnbGwgY2FjaGUgdGhhdCB0b28KCSAgICBpZiggIWlzc2V0KCAkZW1haWxmbGRzWyAkcm93Wydncm91cF9pZCddIF0gKSApCgkgICAgICB7CgkJJGZvdW5kID0gZmFsc2U7CgkJLy8gbm90IGluIHRoZSBjYWNoZSwgc28gd2UnbGwgZmluZCBvbmUKCQlmb3JlYWNoKCAkcmVsYXRpb25zWyAkcm93Wydncm91cF9pZCddIF0gYXMgJHJlbG4gKQoJCSAgewoJCSAgICBmb3JlYWNoKCAkcHJvcHMgYXMgJG9uZXByb3AgKQoJCSAgICAgIHsKCQkJaWYoICRyZWxuWyduYW1lJ10gPT0gJG9uZXByb3BbJ25hbWUnXSAmJgoJCQkgICAgJG9uZXByb3BbJ3R5cGUnXSA9PSAyICkgLy8gZW1haWwgCgkJCSAgewoJCQkgICAgLy8gd29vaG9vLCB3ZSBmb3VuZCBhbiBlbWFpbCBmaWVsZCBpbiB0aGUgcHJvcGVydHkgcmVsYXRpb25zIGZvciB0aGlzCgkJCSAgICAvLyBncm91cAoJCQkgICAgJGVtYWlsZmxkc1skcm93Wydncm91cF9pZCddXSA9ICRyZWxuWyduYW1lJ107CgkJCSAgICAkZm91bmQgPSB0cnVlOwoJCQkgICAgYnJlYWs7CgkJCSAgfQoJCSAgICAgIH0KCQkgIH0KCgkJaWYoICEkZm91bmQgKQoJCSAgewoJCSAgICAkbW9kdWxlLT5fRGlzcGxheUVycm9yUGFnZSgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwgCgkJCQkJICAgICAkbW9kdWxlLT5MYW5nKCdlcnJvcl9ub2VtYWlsYWRkcmVzcycpKTsKCQkgICAgcmV0dXJuOwoJCSAgfQoJICAgICAgfQoJICAgIAoJICAgIC8vIG5vdywgZ2V0IHRoZSBlbWFpbCBhZGRyZXNzIGZvciB0aGlzIHVzZXIKCSAgICAkb25lcm93LT5lbWFpbCA9ICRtb2R1bGUtPkdldFRlbXBVc2VyUHJvcGVydHkoJHJvd1snaWQnXSwkZW1haWxmbGRzWyRyb3dbJ2dyb3VwX2lkJ11dLAoJCQkJCQkJJG1vZHVsZS0+TGFuZygndW5rbm93bicpKTsKCSAgICAkb25lcm93LT5lZGl0bGluayA9CgkgICAgICAkbW9kdWxlLT5DcmVhdGVMaW5rICgkaWQsICdlZGl0dGVtcHVzZXInLCAkcmV0dXJuaWQsCgkJCQkgJGdDbXMtPnZhcmlhYmxlc1snYWRtaW50aGVtZSddLT5EaXNwbGF5SW1hZ2UgKCdpY29ucy9zeXN0ZW0vZWRpdC5naWYnLAoJCQkJCQkJCQkgICAgICAgJG1vZHVsZS0+TGFuZyAoJ2VkaXQnKSwgJycsICcnLCAnc3lzdGVtaWNvbicpLAoJCQkJIGFycmF5ICgndXNlcl9pZCcgPT4gJHJvd1snaWQnXSkpOwoJICAgICRvbmVyb3ctPmRlbGV0ZWxpbmsgPQoJICAgICAgJG1vZHVsZS0+Q3JlYXRlTGluayAoJGlkLCAnZGVsZXRldGVtcHVzZXInLCAkcmV0dXJuaWQsCgkJCQkgJGdDbXMtPnZhcmlhYmxlc1snYWRtaW50aGVtZSddLT5EaXNwbGF5SW1hZ2UgKCdpY29ucy9zeXN0ZW0vZGVsZXRlLmdpZicsCgkJCQkJCQkJCSAgICAgICAkbW9kdWxlLT5MYW5nICgnZGVsZXRlJyksICcnLCAnJywgJ3N5c3RlbWljb24nKSwKCQkJCSBhcnJheSAoJ3VzZXJfaWQnID0+ICRyb3dbJ2lkJ10pLAoJCQkJICRtb2R1bGUtPkxhbmcgKCdhcmV5b3VzdXJlX2RlbGV0ZXVzZXInKSk7CgkgICAgJG9uZXJvdy0+bWFya2RlbGV0ZWJveCA9ICRtb2R1bGUtPkNyZWF0ZUlucHV0Q2hlY2tib3goJGlkLCdtYXJrZGVsZXRlXycuJHJvd1snaWQnXSwkcm93WydpZCddKTsKCSAgICAKCSAgICAkcm93YXJyYXlbXSA9ICRvbmVyb3c7CgkgICAgKCRyb3djbGFzcyA9PSAicm93MSIgPyAkcm93Y2xhc3MgPSAicm93MiIgOiAkcm93Y2xhc3MgPSAicm93MSIpOwoJICB9CiAgICAgIH0KICAgICRtb2R1bGUtPnNtYXJ0eS0+YXNzaWduKCdpdGVtcycsICRyb3dhcnJheSk7CiAgICAkbW9kdWxlLT5zbWFydHktPmFzc2lnbignaXRlbWNvdW50Jyxjb3VudCgkcm93YXJyYXkpKTsKICAgICRtb2R1bGUtPnNtYXJ0eS0+YXNzaWduKCdpdGVtc2ZvdW5kJywkbW9kdWxlLT5MYW5nKCd1c2Vyc2ZvdW5kJykpOwogICAgZWNobyAkbW9kdWxlLT5Qcm9jZXNzVGVtcGxhdGUoJ3VzZXJsaXN0LnRwbCcpOwogIH0KCgogIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgIERpc3BsYXlBZG1pbkVtYWlsQ29uZmlybWF0aW9uVGVtcGxhdGVUYWIoJGlkLCAkcGFyYW1zLCAkcmV0dXJuX2lkKQogICBOT1QgUEFSVCBPRiBUSEUgTU9EVUxFIEFQSQogICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwpmdW5jdGlvbiBfRGlzcGxheUFkbWluRW1haWxDb25maXJtYXRpb25UZW1wbGF0ZVRhYiggJiRtb2R1bGUsICRpZCwgJHBhcmFtcywgJHJldHVybmlkICkKICB7CiAgICBlY2hvICRtb2R1bGUtPkNyZWF0ZUZvcm1TdGFydCAoJGlkLCAnc2V0X2VtYWlsY29uZmlybV90ZW1wbGF0ZScpOwogICAgZWNobyAnPHRhYmxlPic7CiAgICBlY2hvICc8dHIgdmFsaWduPSJ0b3AiPjx0ZD4nLiRtb2R1bGUtPkxhbmcoJ3N1YmplY3QnKS4nOio8L3RkPjx0ZD4nLiRtb2R1bGUtPkNyZWF0ZUlucHV0VGV4dCggJGlkLCAnaW5wdXRfc3ViamVjdCcsCgkJCQkJICAgICRtb2R1bGUtPkdldFByZWZlcmVuY2UoJ3NlbGZyZWdfZW1haWxjb25maXJtX3N1YmplY3QnKSwgODAsIDIwMCApLic8L3RkPjwvdHI+JzsgCiAgICAKICAgIGVjaG8gJzx0ciB2YWxpZ249InRvcCI+PHRkPicuJG1vZHVsZS0+TGFuZygndGV4dGJvZHknKS4nOio8L3RkPjx0ZD4nLiRtb2R1bGUtPkNyZWF0ZVRleHRBcmVhIChmYWxzZSwgJGlkLCAgCgkJCQkJICAgJG1vZHVsZS0+R2V0VGVtcGxhdGUgKCdzZWxmcmVnX2VtYWlsY29uZmlybV90ZXh0dGVtcGxhdGUnKSwKCQkJCQkgICAndGV4dHRlbXBsYXRlY29udGVudCcsICcnKS4nPC90ZD48L3RyPic7CiAgICBlY2hvICc8dHIgdmFsaWduPSJ0b3AiPjx0ZD4nLiRtb2R1bGUtPkxhbmcoJ2h0bWxib2R5JykuJzo8L3RkPjx0ZD4nLiRtb2R1bGUtPkNyZWF0ZVRleHRBcmVhIChmYWxzZSwgJGlkLCAgCgkJCQkJICAgJG1vZHVsZS0+R2V0VGVtcGxhdGUgKCdzZWxmcmVnX2VtYWlsY29uZmlybV90ZW1wbGF0ZScpLAoJCQkJCSAgICd0ZW1wbGF0ZWNvbnRlbnQnLCAnJykuJzwvdGQ+PC90cj4nOwogICAgZWNobyAnPC90YWJsZT4nOyAgCiAgICBlY2hvICRtb2R1bGUtPkNyZWF0ZUlucHV0U3VibWl0ICgkaWQsICdzdWJtaXRidXR0b24nLAoJCQkJICAgJG1vZHVsZS0+TGFuZyAoJ3N1Ym1pdCcpKTsKICAgIGVjaG8gJG1vZHVsZS0+Q3JlYXRlSW5wdXRTdWJtaXQgKCRpZCwgJ2RlZmF1bHRidXR0b24nLAoJCQkJICAgJG1vZHVsZS0+TGFuZyAoJ2RlZmF1bHQnKSk7CiAgICBlY2hvICRtb2R1bGUtPkNyZWF0ZUZvcm1FbmQgKCk7CiAgfQoKCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgRGlzcGxheUFkbWluRmluYWxNZXNzYWdlVGVtcGxhdGVUYWIoJGlkLCAkcGFyYW1zLCAkcmV0dXJuX2lkKQogICBOT1QgUEFSVCBPRiBUSEUgTU9EVUxFIEFQSQogICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwpmdW5jdGlvbiBfRGlzcGxheUFkbWluRmluYWxNZXNzYWdlVGVtcGxhdGVUYWIoICYkbW9kdWxlLCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCApCiAgewogICAgZWNobyAkbW9kdWxlLT5DcmVhdGVGb3JtU3RhcnQgKCRpZCwgJ3NldF9maW5hbG1lc3NhZ2VfdGVtcGxhdGUnKTsKICAgIGVjaG8gJzxici8+PHA+Jy4kbW9kdWxlLT5DcmVhdGVUZXh0QXJlYSAoZmFsc2UsICRpZCwKCQkJCQkgICAkbW9kdWxlLT5HZXRUZW1wbGF0ZSAoJ3NlbGZyZWdfZmluYWxtZXNzYWdlX3RlbXBsYXRlJyksCgkJCQkJICAgJ3RlbXBsYXRlY29udGVudCcsICcnKS4nPC9wPic7CiAgICBlY2hvICRtb2R1bGUtPkNyZWF0ZUlucHV0U3VibWl0ICgkaWQsICdzdWJtaXRidXR0b24nLAoJCQkJICAgJG1vZHVsZS0+TGFuZyAoJ3N1Ym1pdCcpKTsKICAgIGVjaG8gJG1vZHVsZS0+Q3JlYXRlSW5wdXRTdWJtaXQgKCRpZCwgJ2RlZmF1bHRidXR0b24nLAoJCQkJICAgJG1vZHVsZS0+TGFuZyAoJ2RlZmF1bHQnKSk7CiAgICBlY2hvICRtb2R1bGUtPkNyZWF0ZUZvcm1FbmQgKCk7CiAgfQoKCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgRGlzcGxheUFkbWluRW1haWxVc2VyRWRpdGVkVGVtcGxhdGVUYWIoJGlkLCAkcGFyYW1zLCAkcmV0dXJuX2lkKQogICBOT1QgUEFSVCBPRiBUSEUgTU9EVUxFIEFQSQogICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwpmdW5jdGlvbiBfRGlzcGxheUFkbWluRW1haWxVc2VyRWRpdGVkVGVtcGxhdGVUYWIoICYkbW9kdWxlLCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCApCiAgewogICAgZWNobyAkbW9kdWxlLT5DcmVhdGVGb3JtU3RhcnQgKCRpZCwgJ3NldF9lbWFpbHVzZXJlZGl0ZWRfdGVtcGxhdGUnKTsKICAgIGVjaG8gJzx0YWJsZT4nOwogICAgZWNobyAnPHRyIHZhbGlnbj0idG9wIj48dGQ+Jy4kbW9kdWxlLT5MYW5nKCdzdWJqZWN0JykuJzoqPC90ZD48dGQ+Jy4kbW9kdWxlLT5DcmVhdGVJbnB1dFRleHQoICRpZCwgJ2lucHV0X3N1YmplY3QnLAoJCQkJCSAgICAkbW9kdWxlLT5HZXRQcmVmZXJlbmNlKCdzZWxmcmVnX2VtYWlsdXNlcmVkaXRlZF9zdWJqZWN0JyksIDgwLCAyMDAgKS4nPC90ZD48L3RyPic7IAogICAgCiAgICBlY2hvICc8dHIgdmFsaWduPSJ0b3AiPjx0ZD4nLiRtb2R1bGUtPkxhbmcoJ3RleHRib2R5JykuJzoqPC90ZD48dGQ+Jy4kbW9kdWxlLT5DcmVhdGVUZXh0QXJlYSAoZmFsc2UsICRpZCwgIAoJCQkJCSAgICRtb2R1bGUtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhYmFzZSgnc2VsZnJlZ19lbWFpbHVzZXJlZGl0ZWRfdGV4dHRlbXBsYXRlJyksCgkJCQkJICAgJ3RleHR0ZW1wbGF0ZWNvbnRlbnQnLCAnJykuJzwvdGQ+PC90cj4nOwogICAgZWNobyAnPHRyIHZhbGlnbj0idG9wIj48dGQ+Jy4kbW9kdWxlLT5MYW5nKCdodG1sYm9keScpLic6PC90ZD48dGQ+Jy4kbW9kdWxlLT5DcmVhdGVUZXh0QXJlYSAoZmFsc2UsICRpZCwgIAoJCQkJCSAgICRtb2R1bGUtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhYmFzZSgnc2VsZnJlZ19lbWFpbHVzZXJlZGl0ZWRfdGVtcGxhdGUnKSwKCQkJCQkgICAndGVtcGxhdGVjb250ZW50JywgJycpLic8L3RkPjwvdHI+JzsKICAgIGVjaG8gJzwvdGFibGU+JzsgIAogICAgZWNobyAkbW9kdWxlLT5DcmVhdGVJbnB1dFN1Ym1pdCAoJGlkLCAnc3VibWl0YnV0dG9uJywKCQkJCSAgICRtb2R1bGUtPkxhbmcgKCdzdWJtaXQnKSk7CiAgICBlY2hvICRtb2R1bGUtPkNyZWF0ZUlucHV0U3VibWl0ICgkaWQsICdkZWZhdWx0YnV0dG9uJywKCQkJCSAgICRtb2R1bGUtPkxhbmcgKCdkZWZhdWx0JykpOwogICAgZWNobyAkbW9kdWxlLT5DcmVhdGVGb3JtRW5kICgpOwogIH0KCgogIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgIERpc3BsYXlBZG1pblNlbmRBbm90aGVyRW1haWxUZW1wbGF0ZVRhYigkaWQsICRwYXJhbXMsICRyZXR1cm5faWQpCiAgIE5PVCBQQVJUIE9GIFRIRSBNT0RVTEUgQVBJCiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCmZ1bmN0aW9uIF9EaXNwbGF5QWRtaW5TZW5kQW5vdGhlckVtYWlsVGVtcGxhdGVUYWIoICYkbW9kdWxlLCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCApCiAgewogICAgZWNobyAkbW9kdWxlLT5DcmVhdGVGb3JtU3RhcnQgKCRpZCwgJ3NldF9zZW5kYW5vdGhlcmVtYWlsX3RlbXBsYXRlJyk7CiAgICBlY2hvICc8YnIvPicuJG1vZHVsZS0+TGFuZygndGl0bGVfc2VuZGFub3RoZXJlbWFpbF90ZW1wbGF0ZScpLgogICAgICAnPHA+Jy4kbW9kdWxlLT5DcmVhdGVUZXh0QXJlYSAoZmFsc2UsICRpZCwKCQkJCSAgICRtb2R1bGUtPkdldFRlbXBsYXRlICgnc2VsZnJlZ19zZW5kYW5vdGhlcmVtYWlsX3RlbXBsYXRlJyksCgkJCQkgICAndGVtcGxhdGVjb250ZW50JywgJycpLic8L3A+JzsKICAgIGVjaG8gJzxici8+Jy4kbW9kdWxlLT5MYW5nKCd0aXRsZV9wb3N0X3NlbmRhbm90aGVyZW1haWxfdGVtcGxhdGUnKS4KICAgICAgJzxwPicuJG1vZHVsZS0+Q3JlYXRlVGV4dEFyZWEgKGZhbHNlLCAkaWQsCgkJCQkJICAgJG1vZHVsZS0+R2V0VGVtcGxhdGUgKCdzZWxmcmVnX3Bvc3Rfc2VuZGFub3RoZXJlbWFpbF90ZW1wbGF0ZScpLAoJCQkJCSAgICd0ZW1wbGF0ZWNvbnRlbnQyJywgJycpLic8L3A+JzsKICAgIGVjaG8gJG1vZHVsZS0+Q3JlYXRlSW5wdXRTdWJtaXQgKCRpZCwgJ3N1Ym1pdGJ1dHRvbicsCgkJCQkgICAkbW9kdWxlLT5MYW5nICgnc3VibWl0JykpOwogICAgZWNobyAkbW9kdWxlLT5DcmVhdGVJbnB1dFN1Ym1pdCAoJGlkLCAnZGVmYXVsdGJ1dHRvbicsCgkJCQkgICAkbW9kdWxlLT5MYW5nICgnZGVmYXVsdCcpKTsKICAgIGVjaG8gJG1vZHVsZS0+Q3JlYXRlRm9ybUVuZCAoKTsKICB9Cgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/functions.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKLyoKIEZyb250RW5kVXNlcnMuIEEgcGx1Z2luIGZvciBDTVMgLSBDTVMgTWFkZSBTaW1wbGUKIENvcHlyaWdodCAoYykgMjAwNC0wNSBieSBSb2JlcnQgQ2FtcGJlbGwgPHJvYkB0ZWNoY29tLmR5bmRucy5vcmc+CgogVHJhbnNsYXRpb25zOgogRnJlbmNoOiBQYXRyaWNpYSBCcnVuLCBodHRwOi8vd3d3LmJydW1hbHNvbHN0aWNlLmNvbQogTm9yd2VnaWFuIChib2ttP2wpOiBSb2dlciAiU3RpZ21hIiBLbnV0c2VuIDxzdGlnbWFzdGVyQGdtYWlsLmNvbT4KCiBDTVMtIENNUyBNYWRlIFNpbXBsZSBpcyBDb3B5cmlnaHQgKGMpIFRlZCBLdWxwICh3aXNoeUB1c2Vycy5zZi5uZXQpCiBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwoKIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCgogVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQogRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgIDAyMTExLTEzMDcgIFVTQQoqLwoKCmNsYXNzIFNlbGZyZWdVdGlscwp7CiAgZnVuY3Rpb24gYXJyYXlfa2V5X2V4aXN0c19zdWJzdHIoICRhcnIsICRleHByICkKICB7CiAgICAka2V5cyA9IGFycmF5X2tleXMoICRhcnIgKTsKICAgIGZvcmVhY2goICRrZXlzIGFzICRrICkKICAgICAgewoJaWYoIHN0cnN0ciggJGssICRleHByICkgKSByZXR1cm4gdHJ1ZTsKICAgICAgfQogICAgcmV0dXJuIGZhbHNlOwogIH0KCiAgZnVuY3Rpb24gYXJyYXlfZmluZF9rZXlfcmVnZXhwKCAkYXJyLCAkZXhwciApCiAgewogICAgJGtleXMgPSBhcnJheV9rZXlzKCAkYXJyICk7CiAgICBmb3JlYWNoKCAka2V5cyBhcyAkayApCiAgICAgIHsKCWlmKCBwcmVnX21hdGNoKCAkZXhwciwgJGsgKSApIHJldHVybiAkazsKICAgICAgfQogICAgcmV0dXJuIGZhbHNlOwogIH0KCgogIGZ1bmN0aW9uIGFycmF5X21lcmdlX2J5X25hbWVfcmVxdWlyZWQoICRhcnIxLCAkYXJyMiApCiAgewogICAgJHh4cmVzdWx0ID0gYXJyYXkoKTsKICAgIC8vIGFkZCBpdGVtcyBjb21tb24gdG8gYXJyMSBhbmQgYXJyMiAKICAgIC8vIGJ1dCBmYXZvciByZXF1aXJlZCBpdGVtcwogICAgaWYoICFpc19hcnJheSggJGFycjEgKSB8fCAhaXNfYXJyYXkoICRhcnIyICkgKQogICAgICB7CglyZXR1cm47CiAgICAgIH0KICAgIGZvcmVhY2goICRhcnIxIGFzICRhMSApCiAgICAgIHsKCWZvcmVhY2goICRhcnIyIGFzICRhMiApCgkgIHsKCSAgICBpZiggJGExWyduYW1lJ10gPT0gJGEyWyduYW1lJ10gKSAKCSAgICAgIHsKCQlpZiggJGExWydyZXF1aXJlZCddID09IDIgKSAKCQkgIHsKCQkgICAgYXJyYXlfcHVzaCggJHh4cmVzdWx0LCAkYTEgKTsKCQkgICAgYnJlYWs7CgkJICB9CgkJZWxzZSAKCQkgIHsKCQkgICAgYXJyYXlfcHVzaCggJHh4cmVzdWx0LCAkYTIgKTsKCQkgICAgYnJlYWs7CgkJICB9CgkgICAgICB9ICAgIAoJICB9CiAgICAgIH0KICAKICAgIC8vIGFkZCBpdGVtcyBpbiBhcnIxIG5vdCBpbiByZXN1bHQKICAgIGZvcmVhY2goICRhcnIxIGFzICRhMSApCiAgICAgIHsKCSRmb3VuZCA9IGZhbHNlOwoJZm9yZWFjaCggJHh4cmVzdWx0IGFzICRyZXMgKQoJICB7CgkgICAgaWYoICRhMVsnbmFtZSddID09ICRyZXNbJ25hbWUnXSApCgkgICAgICB7CgkJJGZvdW5kID0gdHJ1ZTsKCQlicmVhazsKCSAgICAgIH0KCSAgfQoJaWYoICEkZm91bmQgKQoJICB7CgkgICAgYXJyYXlfcHVzaCggJHh4cmVzdWx0LCAkYTEgKTsKCSAgfQogICAgICB9CiAgCiAgICAvLyBhZGQgaXRlbXMgaW4gYXJyMiBub3QgaW4gcmVzdWx0CiAgICBmb3JlYWNoKCAkYXJyMiBhcyAkYTIgKQogICAgICB7CgkkZm91bmQgPSBmYWxzZTsKCWZvcmVhY2goICR4eHJlc3VsdCBhcyAkcmVzICkKCSAgewoJICAgIGlmKCAkYTJbJ25hbWUnXSA9PSAkcmVzWyduYW1lJ10gKQoJICAgICAgewoJCSRmb3VuZCA9IHRydWU7CgkJYnJlYWs7CgkgICAgICB9CgkgIH0KCWlmKCAhJGZvdW5kICkKCSAgewoJICAgIGFycmF5X3B1c2goICR4eHJlc3VsdCwgJGEyICk7CgkgIH0KICAgICAgfQogICAgcmV0dXJuICR4eHJlc3VsdDsKICB9CgoKICBmdW5jdGlvbiBjb21wYXJlX2VsZW1lbnRzX2J5X3NvcnRvcmRlcl9rZXkoICRlMSwgJGUyICkKICB7CiAgICBpZiggJGUxWydzb3J0X2tleSddIDwgJGUyWydzb3J0X2tleSddICkKICAgICAgewoJcmV0dXJuIC0xOwogICAgICB9CiAgICBlbHNlIGlmKCAkZTFbJ3NvcnRfa2V5J10gPiAkZTJbJ3NvcnRfa2V5J10gKQogICAgICB7CglyZXR1cm4gMTsKICAgICAgfQogICAgcmV0dXJuIDA7CiAgfQoKCiAgZnVuY3Rpb24gZXhwbG9kZV93aXRoX2tleSgkc3RyLCAkaW5nbHVlPSc9JywgJG91dGdsdWU9JyYnKQogIHsKICAgICRyZXQgPSBhcnJheSgpOwogICAgJGExID0gc3BsaXQoJG91dGdsdWUsJHN0cik7CiAgICBmb3JlYWNoKCAkYTEgYXMgJGEyICkKICAgICAgewoJbGlzdCggJGssICR2ICkgPSBzcGxpdCggJGluZ2x1ZSwgJGEyICk7CgkkcmV0WyAkayBdID0gJHY7CiAgICAgIH0KICAgIHJldHVybiAkcmV0OwogIH0KCgogIGZ1bmN0aW9uIGZpbmRfaW5kZXhfb2ZfdmFsdWUoICRkYXRhLCAkdmFsdWUsICRkZmx0ICkKICB7CiAgICAkaSA9IDA7CiAgICBmb3JlYWNoKCAkZGF0YSBhcyAkaz0+JHYgKQogICAgICB7CglpZiggJHYgPT0gJHZhbHVlICkKCSAgewoJICAgIHJldHVybiAkaTsKCSAgfQoJJGkrKzsKICAgICAgfQogICAgcmV0dXJuICRkZmx0OwogIH0KCgogIGZ1bmN0aW9uIGltcGxvZGVfd2l0aF9rZXkoJGFzc29jLCAkaW5nbHVlID0gJz0nLCAkb3V0Z2x1ZSA9ICcmJykKICB7CiAgICAkcmV0dXJuID0gbnVsbDsKICAgIGZvcmVhY2ggKCRhc3NvYyBhcyAkdGsgPT4gJHR2KSAkcmV0dXJuIC49ICRvdXRnbHVlLiR0ay4kaW5nbHVlLiR0djsKICAgIHJldHVybiBzdWJzdHIoJHJldHVybixzdHJsZW4oJG91dGdsdWUpKTsKICB9CgoKCiAgZnVuY3Rpb24gbXlDcmVhdGVJbnB1dENoZWNrYm94KCRpZCwgJG5hbWUsICR2YWx1ZT0nJywgJHNlbGVjdGVkdmFsdWU9JycsIAoJCQkJICRhZGR0dGV4dD0nJykKICB7CiAgICAkdGV4dCA9ICc8aW5wdXQgdHlwZT0iY2hlY2tib3giIG5hbWU9IicuJGlkLiRuYW1lLiciIHZhbHVlPSInLiR2YWx1ZS4nIic7CiAgICAkYXJyID0gc3BsaXQoIiwiLCRzZWxlY3RlZHZhbHVlKTsKICAgIGZvcmVhY2goICRhcnIgYXMgJGEgKQogICAgICB7CglpZiAoJGEgPT0gJHZhbHVlKQoJICB7CgkgICAgJHRleHQgLj0gJyAnIC4gJ2NoZWNrZWQ9ImNoZWNrZWQiJzsKCSAgfQogICAgICB9CiAgICBpZiAoJGFkZHR0ZXh0ICE9ICcnKQogICAgICB7CgkkdGV4dCAuPSAnICcuJGFkZHR0ZXh0OwogICAgICB9CiAgICAkdGV4dCAuPSAiIC8+XG4iOwogICAgcmV0dXJuICR0ZXh0OwogIH0KCiAgZnVuY3Rpb24gbXlDcmVhdGVJbnB1dFN1Ym1pdCgkaWQsICRuYW1lLCAkdmFsdWU9JycsICRpbWFnZT0nJywgJGFkZHR0ZXh0PScnKQogIHsKICAgIGdsb2JhbCAkZ0NtczsKICAgICR0ZXh0ID0gJzxpbnB1dCBuYW1lPSInLiRpZC4kbmFtZS4nIiB2YWx1ZT0iJy4kdmFsdWUuJyIgdHlwZT0nOwogICAgaWYgKCRpbWFnZSAhPSAnJykKICAgICAgewoJJHRleHQgLj0gJyJpbWFnZSInOwoJJGltZyA9ICRnQ21zLT5jb25maWdbJ3Jvb3RfdXJsJ10uRElSRUNUT1JZX1NFUEFSQVRPUi4kaW1hZ2U7CgkkdGV4dCAuPSAnIHNyYz0iJy4kaW1nLiciJzsKICAgICAgfQogICAgZWxzZSAKICAgICAgewoJJHRleHQgLj0gJyJzdWJtaXQiJzsKICAgICAgfQogICAgaWYgKCRhZGR0dGV4dCAhPSAnJykKICAgICAgewoJJHRleHQgLj0gJyAnLiRhZGR0dGV4dDsKICAgICAgfQogICAgJHRleHQgLj0gJyAvPic7CiAgICByZXR1cm4gJHRleHQgLiAiXG4iOwogIH0KCgogIGZ1bmN0aW9uIG15Q3JlYXRlSW5wdXRIaWRkZW4oICRpZCwgJG5hbWUsICR2YWx1ZT0nJywgJGFkZHRleHQ9JycsICRkZWxpbT0nLCcpCiAgewogICAgaWYoIGlzX2FycmF5KCAkdmFsdWUgKSApCiAgICAgIHsKCSR2YWwgPSBTZWxmcmVnVXRpbHM6OmltcGxvZGVfd2l0aF9rZXkoICR2YWx1ZSApOwogICAgICB9CiAgICBlbHNlCiAgICAgIHsKCSR2YWwgPSAkdmFsdWU7CiAgICAgIH0KICAgICR2YWwgPSBzdHJfcmVwbGFjZSgnIicsICcmcXVvdDsnLCAkdmFsKTsKICAgICR0ZXh0ID0gJzxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9IicuJGlkLiRuYW1lLiciIHZhbHVlPSInLiR2YWwuJyInOwogICAgaWYgKCRhZGR0ZXh0ICE9ICcnKQogICAgICB7CgkkdGV4dCAuPSAnICcuJGFkZHRleHQ7CiAgICAgIH0KICAgICR0ZXh0IC49ICIgLz5cbiI7CiAgICByZXR1cm4gJHRleHQ7CiAgfQoKICBmdW5jdGlvbiBpc19hc3NvY2lhdGl2ZSgmJGFycmF5KXsKICAgIGlmICghaXNfYXJyYXkoJGFycmF5KSkgcmV0dXJuIGZhbHNlOwogICAgZm9yZWFjaChhcnJheV9rZXlzKCRhcnJheSkgYXMgJGtleT0+JHZhbHVlKSB7CiAgICAgIGlmKCAhaXNfbnVtZXJpYygka2V5KSApIHJldHVybiB0cnVlOwogICAgfQogICAgcmV0dXJuIGZhbHNlOwp9Cgp9IC8vIEVuZCBvZiBjbGFzcwo/Pg==]]></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[PD9waHAKJGxhbmdbJ2Vycm9yX2NvZGVzZG9udG1hdGNoJ10gPSAnVGhlIHZhbGlkYXRpb24ga2V5IHN1cHBsaWVkIGlzIGludmFsaWQnOwokbGFuZ1snZXZlbnRfZGVzY3JpcHRpb25fb25OZXdVc2VyJ10gPSAnQW4gZXZlbnQgaW5kaWNhdGluZyB0aGF0IGEgbmV3IHVzZXIgaGFzIGNvbXBsZXRlZCB0aGUgcmVnaXN0cmF0aW9uIGZvcm0nOwokbGFuZ1snZXZlbnRfZGVzY3JpcHRpb25fb25Vc2VyUmVnaXN0ZXJlZCddID0gJ0FuIGV2ZW50IGluZGljYXRpbmcgdGhhdCBhIHVzZXIgaGFzIHZlcmlmaWVkIGhpcyBpbmZvcm1hdGlvbiBhbmQgaXMgbm93IGNvbXBsZXRlbHkgcmVnaXN0ZXJlZCc7CiRsYW5nWydldmVudF9oZWxwX29uTmV3VXNlciddID0gJwo8cD5BbiBldmVudCBpbmRpY2F0aW5nIHRoYXQgYSBuZXcgdXNlciBoYXMgY29tcGxldGVkIHRoZSByZWdpc3RyYXRpb24gZm9ybTwvcD4KPGg0PlBhcmFtZXRlcnM8L2g0Pgo8dWw+CjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSBuZXcgdXNlcnMgc2VsZWN0ZWQgdXNlcm5hbWU8L2xpPgo8bGk+PGVtPmVtYWlsPC9lbT4gLSBUaGUgbmV3IHVzZXJzIGVtYWlsIGFkZHJlc3M8L2xpPgo8L3VsPgonOwokbGFuZ1snZXZlbnRfaGVscF9vblVzZXJSZWdpc3RlcmVkJ10gPSAnCjxwPkFuIGV2ZW50IGluZGljYXRpbmcgdGhhdCBhIHVzZXIgaGFzIGJlZW4gdmVyaWZpZWQgYW5kIGlzIG5vdyByZWdpc3RlcmVkIHdpdGggZmV1c2VyczwvcD4KPGg0PlBhcmFtZXRlcnM8L2g0Pgo8dWw+CjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSByZWdpc3RlcmVkIHVzZXJuYW1lPC9saT4KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIG5ldyB1c2VycyB1aWQ8L2xpPgo8L3VsPgonOwokbGFuZ1snY29uZmlybV9zdWJtaXRwcmVmcyddID0gJ0NoYW5nZSBhZG1pbiBwcmVmZXJlbmNlcz8nOwokbGFuZ1snaW5mb19hZG1pbl9wYXNzd29yZCddID0gJ0xlYXZlIHRoaXMgZmllbGQgZW1wdHkgdG8gcHJlc2VydmUgdGhlIHVzZXIgcGFzc3dvcmQnOwokbGFuZ1snaW5mb19hZG1pbl9yZXBlYXRwYXNzd29yZCddID0gJ0xlYXZlIHRoaXMgZmllbGQgZW1wdHkgdG8gcHJlc2VydmUgdGhlIHVzZXIgcGFzc3dvcmQnOwokbGFuZ1snZXJyb3JfZW1haWxkb2Vzbm90bWF0Y2gnXSA9ICdFbWFpbCBhZGRyZXNzZXMgZG8gbm90IG1hdGNoJzsKJGxhbmdbJ2ZvcmNlX2VtYWlsX3R3aWNlJ10gPSAnUmVxdWlyZSB1c2VycyB0byBlbnRlciB0aGVpciBlbWFpbCBhZGRyZXNzIHR3aWNlJzsKJGxhbmdbJ2FnYWluJ10gPSAnYWdhaW4nOwokbGFuZ1snZGVsZXRlc2VsdXNlcnMnXSA9ICdEZWxldGUgU2VsZWN0ZWQgVXNlcnMnOwokbGFuZ1snZXJyb3Jfbm9wcm9wZGVmbnMnXSA9ICdObyBwcm9wZXJ0eSBkZWZpbml0aW9ucywgb3IgcHJvYmxlbSByZXRyZWl2aW5nIHRoZW0gZnJvbSB0aGUgZGF0YWJhc2UnOwokbGFuZ1snZXJyb3Jfbm9ncm91cHMnXSA9ICdObyBncm91cHMsIG9yIHByb2JsZW0gcmV0cmVpdmluZyBncm91cCBsaXN0JzsKJGxhbmdbJ2Vycm9yX2RiZXJyb3InXSA9ICdEYXRhYmFzZSBlcnJvcic7CiRsYW5nWyd0aXRsZV9wb3N0X3NlbmRhbm90aGVyZW1haWxfdGVtcGxhdGUnXSA9ICdQb3N0IExvc3QgRW1haWwgVGVtcGxhdGUnOwokbGFuZ1sndGl0bGVfc2VuZGFub3RoZXJlbWFpbF90ZW1wbGF0ZSddID0gJ0xvc3QgRW1haWwgVGVtcGxhdGUnOwokbGFuZ1snY2xpY2toZXJlJ10gPSAnQ2xpY2sgSGVyZSc7CiRsYW5nWydtc2dfc2VuZGFub3RoZXJlbWFpbCddID0gJ0kgaGF2ZSBhbHJlYWR5IGNvbXBsZXRlZCB0aGUgcmVnaXN0cmF0aW9uIGZvcm0sIGJ1dCBkaWQgbm90IHJlY2VpdmUgYW4gZW1haWwsIGNhbiB5b3UgcGxlYXNlIHJlLXNlbmQgaXQnOwokbGFuZ1snc2VuZGFub3RoZXJlbWFpbF90ZW1wbGF0ZSddID0gJ0xvc3QgRW1haWwgVGVtcGxhdGUnOwokbGFuZ1snaW5mb191c2VydmVyaWZpZWQnXSA9ICdBIG5ldyB1c2VyIGhhcyBiZWVuIGFkZGVkIHRvIEZyb250RW5kVXNlcnMnOwokbGFuZ1snZWRpdCddID0gJ0VkaXQnOwokbGFuZ1sndW5rbm93biddID0gJ1Vua25vd24nOwokbGFuZ1snc2VsZWN0J10gPSAnU2VsZWN0JzsKJGxhbmdbJ2NoZWNrX2FsbCddID0gJ0NoZWNrIEFsbCc7CiRsYW5nWyd1bmNoZWNrX2FsbCddID0gJ1VuY2hlY2sgQWxsJzsKJGxhbmdbJ3NlbmRfYWRqdXN0bWVudGVtYWlsJ10gPSAnU2VuZCBhbiBlbWFpbCB0byB0aGUgdXNlcic7CiRsYW5nWyd0eHRfYWRqdXN0bWVudGVtYWlsJ10gPSAnKGluZm9ybXMgdGhlIHVzZXIgdGhhdCB0aGVpciBhY2NvdW50IGhhcyBiZWVuIGFkanVzdGVkJzsKJGxhbmdbJ3R4dF9jaGFuZ2VwYXNzd29yZCddID0gJ0ZpbGwgaW4gdGhlc2UgZmllbGRzIHRvIGNoYW5nZSB0aGUgdXNlciBwYXNzd29yZCc7CiRsYW5nWydlZGl0dXNlciddID0gJ0VkaXQgVXNlcic7CiRsYW5nWydhcmV5b3VzdXJlX2RlbGV0ZXVzZXInXSA9ICdBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gZGVsZXRlIHRoaXMgcGFydGlhbGx5IHJlZ2lzdGVyZWQgdXNlcj8nOwokbGFuZ1snaGRyX3VzZXJpZCddID0gJ1VzZXJJRCc7CiRsYW5nWydoZHJfdXNlcm5hbWUnXSA9ICdVc2VybmFtZSc7CiRsYW5nWydoZHJfZ3JwbmFtZSddID0gJ0dyb3VwJzsKJGxhbmdbJ2hkcl9jcmVhdGVkJ10gPSAnQ3JlYXRlZCc7CiRsYW5nWydoZHJfZW1haWwnXSA9ICdFbWFpaSc7CiRsYW5nWyd1c2Vyc2ZvdW5kJ10gPSAnVXNlcnMgZm91bmQgKGxpbWl0ZWQgdG8gYSBtYXhpbXVtIG9mIDI1MCknOwokbGFuZ1sndXNlcnMnXSA9ICdVc2Vycyc7CiRsYW5nWydsaXN0MWRheSddID0gJ0xpc3QgYWxsIGVudHJpZXMgbW9yZSB0aGFuIDEgZGF5IG9sZCc7CiRsYW5nWydzdWJqZWN0J10gPSAnU3ViamVjdCBmb3Igb3V0Z29pbmcgZW1haWwnOwokbGFuZ1snaHRtbGJvZHknXSA9ICdIVE1MIG1lc3NhZ2UgYm9keSc7CiRsYW5nWyd0ZXh0Ym9keSddID0gJ1RleHQgbWVzc2FnZSBib2R5JzsKJGxhbmdbJ3Byb21wdF9udW1yZXNldHJlY29yZCddID0gJ0EgbnVtYmVyIG9mIHVzZXJzIGFyZSBpbiB0aGUgbWlkZGxlIG9mIHJlZ2lzdGVyaW5nLiAgQ3VycmVudGx5IHRoaXMgY291bnQgaXMgYXQ6JzsKJGxhbmdbJ3JlbW92ZTF3ZWVrJ10gPSAnUmVtb3ZlIGFsbCBlbnRyaWVzIG1vcmUgdGhhbiBhIHdlZWsgb2xkJzsKJGxhbmdbJ3JlbW92ZTFtb250aCddID0gJ1JlbW92ZSBhbGwgZW50cmllcyBtb3JlIHRoYW4gYSBtb250aCBvbGQnOwokbGFuZ1sncmVtb3ZlMWRheSddID0gJ1JlbW92ZSBhbGwgZW50cmllcyBtb3JlIHRoYW4gYSBkYXkgb2xkJzsKJGxhbmdbJ3JlbW92ZWFsbCddID0gJ1JlbW92ZSBhbGwgZW50cmllcyc7CiRsYW5nWydhcmV5b3VzdXJlJ10gPSAnQXJlIHlvdSBzdXJlPyc7IAokbGFuZ1sncmVnaXN0cmF0aW9uX2luZm9fZWRpdGVkJ10gPSAnWW91ciByZWdpc3RyYXRpb24gaW5mbyBoYXMgYmVlbiBtb2RpZmllZCc7CiRsYW5nWydyZWdpc3RyYXRpb25fY29uZmlybWF0aW9uJ10gPSAnUmVnaXN0cmF0aW9uIENvbmZpcm1hdGlvbic7CiRsYW5nWyd1c2VyX3JlZ2lzdHJhdGlvbiddID0gJ1JlZ2lzdGVyJzsKJGxhbmdbJ2ZpbmFsbWVzc2FnZV90ZW1wbGF0ZSddID0gJ0ZpbmFsIE1lc3NhZ2UgVGVtcGxhdGUnOwokbGFuZ1sndGl0bGVfdmVyaWZ5cmVnaXN0cmF0aW9uJ10gPSAnVmVyaWZ5IFJlZ2lzdHJhdGlvbic7CiRsYW5nWydjb2RlJ10gPSAnVmFsaWRhdGlvbiBLZXknOwokbGFuZ1snZGVmYXVsdCddID0gJ1NldCBUbyBEZWZhdWx0cyc7CiRsYW5nWydlcnJvcl9ub3Byb3BlcnRpZXMnXSA9ICdObyBwcm9wZXJ0aWVzIGZvdW5kIGZvciB0aGlzIHVzZXInOwokbGFuZ1snZXJyb3Jfbm9wcm9wcmVsYXRpb25zJ10gPSAnTm8gcHJvcGVydHkgcmVsYXRpb25zJzsKJGxhbmdbJ2Vycm9yX2VtYWlsaW52YWxpZCddID0gJ0ludmFsaWQgZW1haWwgYWRkcmVzcyc7CiRsYW5nWydlcnJvcl9ub2VtYWlsYWRkcmVzcyddID0gJ05vIHZhbGlkIGVtYWlsIGFkZHJlc3MgZmllbGQgZm91bmQnOwokbGFuZ1snZXJyb3JfcmVxdWlyZWRmaWVsZCddID0gJ0ZpZWxkICVzIG11c3QgYmUgZmlsbGVkIGluJzsKJGxhbmdbJ3JlZ2lzdHJhdGlvbjFfdGVtcGxhdGUnXSA9ICdSZWdpc3RyYXRpb24gVGVtcGxhdGUgMSc7CiRsYW5nWydyZWdpc3RyYXRpb24yX3RlbXBsYXRlJ10gPSAnUmVnaXN0cmF0aW9uIFRlbXBsYXRlIDInOwokbGFuZ1snZW1haWxjb25maXJtX3RlbXBsYXRlJ10gPSAnQ29uZmlybWF0aW9uIEVtYWlsIFRlbXBsYXRlJzsKJGxhbmdbJ2VtYWlsdXNlcmVkaXRlZF90ZW1wbGF0ZSddID0gJ1VzZXIgSW5mbyBDaGFuZ2VkIFRlbXBsYXRlJzsKJGxhbmdbJ3ByZWZlcmVuY2VzJ10gPSAnUHJlZmVyZW5jZXMnOwokbGFuZ1snZXJyb3JfdXNlcm5vdGZvdW5kJ10gPSAnVXNlciBub3QgZm91bmQnOwokbGFuZ1snZXJyb3JfaW52YWxpZHVzZXJuYW1lJ10gPSAnVXNlcm5hbWUgaXMgaW52YWxpZCAodG9vIGxvbmcsIHRvbyBzaG9ydCwgb3IgY29udGFpbnMgaW52YWxpZCBjaGFyYWN0ZXJzKS4gIEhpbnQtIFVzZXJuYW1lcyBtdXN0IGNvbnRhaW4gb25seSBhbHBoYW51bWVyaWMgY2hhcmFjdGVycyAobm8gc3BhY2VzKSc7CiRsYW5nWydlcnJvcl91c2VybmFtZXRha2VuJ10gPSAnVGhhdCB1c2VybmFtZSBpcyBjdXJyZW50bHkgaW4gdXNlJzsKJGxhbmdbJ2Vycm9yX3Bhc3N3b3Jkc2RvbnRtYXRjaCddID0gJ0VSUk9SOiBQYXNzd29yZHMgZG9udCBtYXRjaCc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFzc3dvcmQnXSA9ICdQYXNzd29yZCBpcyBpbnZhbGlkIChwYXNzd29yZHMgbXVzdCBiZSBiZXR3ZWVuICVzIGFuZCAlcyBjaGFyYWN0ZXJzIGluIGxlbmd0aCknOwokbGFuZ1snZXJyb3JfZW1wdHl1c2VybmFtZSddID0gJ1VzZXJuYW1lIGNhbm5vdCBiZSBlbXB0eSc7CiRsYW5nWydyZXBlYXRwYXNzd29yZCddID0gJ1Bhc3N3b3JkIChhZ2FpbiknOwokbGFuZ1sncGFzc3dvcmQnXSA9ICdQYXNzd29yZCc7CiRsYW5nWyd1c2VybmFtZSddID0gJ1VzZXJuYW1lJzsKJGxhbmdbJ2NhcHRjaGFfdGl0bGUnXSA9ICdFbnRlciB0aGUgdGV4dCBmcm9tIHRoZSBpbWFnZSc7CiRsYW5nWydlcnJvcl9pbnN1ZmZpY2llbnRwYXJhbXMnXSA9ICdJbnN1ZmZpY2llbnQgbnVtYmVyIChvciBpbmNvcnJlY3QpIHBhcmFtZXRlcnMgc3VwcGxpZWQgdG8gbW9kdWxlJzsKJGxhbmdbJ2Vycm9yX25vZmV1c2Vyc21vZHVsZSddID0gJ0NvdWxkIG5vdCBnZXQgaW5zdGFuY2Ugb2YgRnJvbnRFbmRVc2VycyBtb2R1bGUnOwokbGFuZ1snZXJyb3Jfbm9zdWNoZ3JvdXAnXSA9ICdHcm91cCBuYW1lIHNwZWNpZmllZCBkb2VzIG5vdCBleGlzdCc7CiRsYW5nWydlcnJvcl9jYXB0Y2hhbWlzbWF0Y2gnXSA9ICdUaGUgdGV4dCBmcm9tIHRoZSBpbWFnZSB3YXMgbm90IGVudGVyZWQgY29ycmVjdGx5JzsKJGxhbmdbJ3NlbmRfZW1haWxzX3RvJ10gPSAnUmVnaXN0cmF0aW9uIGVtYWlscyBzaG91bGQgYmUgc2VudCB0byc7CiRsYW5nWydyZXF1aXJlX2VtYWlsX2NvbmZpcm1hdGlvbiddID0gJ1JlcXVpcmUgdGhlIHVzZXIgdG8gY29uZmlybSByZWdpc3RyYXRpb24gdmlhIGVtYWlsJzsKJGxhbmdbJ25vdGlmeV9vbl9yZWdpc3RyYXRpb24nXSA9ICdTZW5kIGFuIGVtYWlsIG5vdGlmaWNhdGlvbiB3aGVuIHNvbWVvbmUgcmVnaXN0ZXJzJzsKJGxhbmdbJ2NhbmNlbCddID0gJ0NhbmNlbCc7CiRsYW5nWydzdWJtaXQnXSA9ICdTdWJtaXQnOwokbGFuZ1snZnJpZW5kbHluYW1lJ10gPSAnU2VsZiBSZWdpc3RyYXRpb24gTW9kdWxlJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsJ10gPSAnSW5zdGFsbGF0aW9uIHN1Y2Nlc3NmdWxsLCBwbGVhc2UgcmVtZW1iZXIgdG8gc2V0IHRoZSAmcXVvdDtNb2RpZnkgU2VsZlJlZ2lzdHJhdGlvbiBTZXR0aW5ncyZxdW90OyBwZXJtaXNzaW9uLiAgSWYgdGhlIENhcHRjaGEgbW9kdWxlIGlzIGluc3RhbGxlZCwgdGhlbiBjYXB0Y2hhIGZ1bmN0aW9uYWxpdHkgaXMgZW5hYmxlZCBieSBkZWZhdWx0LiAgV2Ugc3Ryb25nbHkgcmVjY29tbWVuZCB0aGF0IHlvdSBpbnN0YWxsIHRoaXMgbW9kdWxlLiAgSWYgdGhlIENhcHRjaGEgbW9kdWxlIGlzIGluc3RhbGxlZCwgYW5kIHlvdSB3YW50IHRvIGRpc2FibGUgaXQsIHVzZSB0aGUgbm9jYXB0Y2hhIHBhcmFtIGluIHlvdXIgc2VsZnJlZ2lzdHJhdGlvbiB0YWcuJzsKJGxhbmdbJ3Bvc3R1bmluc3RhbGwnXSA9ICdTZWxmIFJlZ2lzdHJhdGlvbiBtb2R1bGUgaXMgdW5pbnN0YWxsZWQuICBTZWUgeW91IGxhdGVyLic7CiRsYW5nWyd1bmluc3RhbGxlZCddID0gJ01vZHVsZSBVbmluc3RhbGxlZC4nOwokbGFuZ1snaW5zdGFsbGVkJ10gPSAnTW9kdWxlIHZlcnNpb24gJXMgaW5zdGFsbGVkLic7CiRsYW5nWydwcmVmc3VwZGF0ZWQnXSA9ICdNb2R1bGUgcHJlZmVyZW5jZXMgdXBkYXRlZC4nOwokbGFuZ1snYWNjZXNzZGVuaWVkJ10gPSAnQWNjZXNzIERlbmllZC4gUGxlYXNlIGNoZWNrIHlvdXIgcGVybWlzc2lvbnMuJzsKJGxhbmdbJ2Vycm9yJ10gPSAnRXJyb3IhJzsKJGxhbmdbJ3VwZ3JhZGVkJ10gPSAnTW9kdWxlIHVwZ3JhZGVkIHRvIHZlcnNpb24gJXMuJzsKJGxhbmdbJ3RpdGxlX21vZF9wcmVmcyddID0gJ01vZHVsZSBQcmVmZXJlbmNlcyc7CiRsYW5nWyd0aXRsZV9tb2RfYWRtaW4nXSA9ICdNb2R1bGUgQWRtaW4gUGFuZWwnOwokbGFuZ1sndGl0bGVfYWRtaW5fcGFuZWwnXSA9ICdTZWxmIFJlZ2lzdHJhdGlvbiBNb2R1bGUnOwokbGFuZ1snbW9kZGVzY3JpcHRpb24nXSA9ICdBIG1vZHVsZSB0aGF0IGFsbG93cyBmcm9udCBlbmQgdXNlcnMgdG8gcmVnaXN0ZXIgdGhlbXNlbHZlcy4nOwokbGFuZ1snd2VsY29tZV90ZXh0J10gPSAnPHA+V2VsY29tZSB0byB0aGUgc2VsZiByZWdpc3RyYXRpb24gbW9kdWxlLjwvcD4nOwokbGFuZ1snY2hhbmdlbG9nJ10gPSAnPHVsPgo8bGk+VmVyc2lvbiAwLjAuMS4gT2N0IDIwMDUuIEluaXRpYWwgTlJQVCAoTm90IFJlYWR5IGZvciBQcmltZSBUaW1lKSByZWxlYXNlLjwvbGk+CjxsaT5WZXJzaW9uIDAuMS4wLiBPY3QgMjAwNS4gSW5pdGlhbCByZWxlYXNlLjwvbGk+CjxsaT5WZXJzaW9uIDAuMS4xLiBPY3QgMjAwNS4gU2V0IHRoZSBIVE1MIG1haWwgZmxhZy48L2xpPgo8bGk+VmVyc2lvbiAwLjEuMi4gT2N0IDIwMDUuIE1vdmVkIFJhbmRvbSBzdHVmZiBpbnRvIGZldXNlcnMsIGFuZCBhZGRlZCB0aGUgYWJpbGl0eSB0byBkZWxldGUgb2xkIGVudHJpZXMgZnJvbSB0aGUgcmVnaXN0cmF0aW9uIHRlbXBvcmFyeSB0YWJsZXM8L2xpPgo8bGk+PHA+VmVyc2lvbiAwLjEuMy4gLSBEZWMgMjAwNTwvcD4KPHA+Rml4ZWQgdGhlIHRvZ2dsZXMgaW4gdGhlIGFkbWluIHByZWZlcmVuY2VzLiAgQWxzbywgY2hhbmdlZCB0aGUgcGVybWlzc2lvbnMgbW9kZWwgdG8gbm90IHJlcXVpcmUgdGhlIHVuaXF1ZSBwZXJtaXNzaW9uIGFkZGVkIHByZXZpb3VzbHkgZm9yIHRoZSBzZWxmcmVnIG1vZHVsZS48L3A+CjxwPlRoaXMgcmVsZWFzZSB3YXMgcmVtb3ZlZCBkdWUgdG8gcG9zc2libGUgZXJyb3JzPC9wPgo8L2xpPgo8bGk+PHA+VmVyc2lvbiAwLjEuNC4gLSBKYW4gMjAwNjwvcD4KPHA+Rml4ZWQgbWlub3IgZXJyb3JzIHdpdGggQ2hlY2tQZXJtaXNzaW9uLCByZXBsYWNlZCBhbGwgYXNzaWduX2J5X3JlZnNcJ3Mgd2l0aCBhc3NpZ25zIGZvciBob3BlZnVsIHBocDUgY29tcGF0aWJpbGl0eS48L3A+CjxsaT48cD5WZXJzaW9uIDAuMS41LiAtIEphbiAyMDA2PC9wPgo8cD5BZGRlZCB0aGUgYWJpbGl0eSB0byBzZXQgdGhlIHN1YmplY3Qgb2YgdGhlIGNvbmZpcm1hdGlvbiBlbWFpbCwgYW5kIGFkZGVkIHRoZSBhYmlsaXR5IHRvIHNwZWNpZnkgYSB0ZXh0IGJvZHkuICBTdWJqZWN0LCBhbmQgdGV4dCBib2R5IGFyZSByZXF1aXJlZC48L3A+CjwvbGk+CjxsaT48cD5WZXJzaW9uIDEuMC4wLiAtIEZlYiAyMDA2PC9wPgo8cD5GaXhlZCBhIHByb2JsZW0gd2l0aCB0aGUgdmVyaWZ5IG1vZGUuPC9wPgo8cD5BZGRlZCB0aGUgYWJpbGl0eSB0byBlZGl0IGFuZCBkZWxldGUgdXNlcnMuIHdpdGggc2VsZWN0aW9uIG9uIHRoZSBjaGVja2JveGVzLCBhbmQgImNoZWNrYWxsIjwvcD4KPHA+Tm93IHJlcXVpcmUgRkVVc2VycyAwLjEuOCBhbmQgQ01TTWFpbGVyIDEuNzMuOTwvcD4KPHA+QWRkZWQgYW5vdGhlciB0YWIgZm9yIHRoZSAieW91ciBzZXR0aW5ncyBoYXZlIGJlZW4gYWRqdXN0ZWQiIGVtYWlsIHRlbXBsYXRlczwvcD4KPHA+QWRkZWQgQ1NWIEV4cG9ydGluZzwvcD4KPHA+QWRkZWQgYSAiRGVsZXRlIGFsbCB1c2VycyBvbGRlciB0aGFuIGEgZGF5IiBidXR0b248L3A+CjxwPk5vdyB3b3JrcyB3aXRoIHRoZSBtYXhpbXVtIGxlbmd0aCBmaWVsZCBvZiBGRVVzZXJzPC9wPgo8cD5BZGRlZCBzdXBwb3J0IGZvciBkcm9wZG93bnMgYW5kIHRleHQgYXJlYXM8L3A+CjxwPkRpc2FsbG93IHB1bmN0dWF0aW9uIGNoYXJhY3RlcnMgaW4gdXNlcm5hbWU8L3A+CjwvbGk+CjxsaT48cD5WZXJzaW9uIDEuMC4xLiAtIEZlYiAyMDA2PC9wPgo8cD5BZGRlZCB0aGUgYWJpbGl0eSBmb3IgdXNlcnMgdG8gcmVxdWVzdCBhbm90aGVyIHJlZ2lzdHJhdGlvbiBlbWFpbCAodXNlcyB0aGUgc2FtZSBjb2RlKSwgaW5jYXNlIHRoZXkgbG9zdCB0aGVpciBmaXJzdCBvbmUuPC9wPgo8L2xpPgo8bGk+PHA+VmVyc2lvbiAxLjAuMi4gLSBGZWIgMjAwNjwvcD4KPHA+VGhlICJSZXF1aXJlIGVtYWlsIGNvbmZpcm1hdGlvbiIgY2hlY2tib3ggbm93IHdvcmtzLiAgVXNlcnMgYXJlIGFkZGVkIHN0cmFpZ2h0IHRvIHRoZSBmcm9udGVuZCB1c2VycyBkYXRhYmFzZTwvcD4KPHA+Rml4ZWQgYSBidWcgd2l0aCB0aGUgY29uZmlybWF0aW9uIGVtYWlscyBoYXZpbmcgbGlua3MgdG8gdGhlIGFkbWluIHNlY3Rpb24gKG5ldyBidWcgb25seSkuPC9wPgo8L2xpPgo8bGk+PHA+VmVyc2lvbiAxLjAuMy4gLSBGZWIgMjAwNjwvcD4KPHA+QWRkZWQgdGhlIChvcHRpb25hbCkgYWJpbGl0eSB0byByZXF1aXJlIHRoZSB1c2VyIGVudGVyIHRoZSBlbWFpbCBhZGRyZXNzIHR3aWNlPC9wPgo8cD5GaXhlZCBhIGJ1ZyB3aXRoIHRoZSB1c2VyZWRpdGVkIG1lc3NhZ2Ugbm90IGJlaW5nIHRocm93biB0aHJvdWdoIHNtYXJ0eTwvcD4KPHA+Rml4ZWQgdGhlIGRlZmF1bHQgcmVnaXN0cmF0aW9uIHRlbXBsYXRlIGEgYml0IHRvIGFpZGUgaW4gdmFsaWRhdGlvbiBmb3Igbm9uIHJlcXVpcmVkIGZpZWxkcyAoZml4ZWQgYSB3YXJuaW5nKTwvcD4KPHA+Rml4IHByb2JsZW1zIHdpdGggaW5saW5lIGFuZCBub24taW5saW5lIGZvcm1zIGFuZCBsaW5rczwvcD4KPHA+SGFuZGxlIGFub3RoZXIgY2FzZSB3aGVyZSB0aGUgYWRtaW4gbWF5IG5vdCBoYXZlIGNyZWF0ZWQgdGhlIHByb3BlciB0eXBlIG9mIGVtYWlsIHByb3BlcnR5PC9wPgo8cD5DaGFuZ2VkIHRvIHJlcXVpcmUgQ01TIDAuMTItYmV0YTIgYXQgYSBtaW5pbXVtIChmb3Igc2FmZXR5IHB1cnBvc2VzKTwvcD4KPC9saT4KPGxpPjxwPlZlcnNpb24gMS4wLjQuIC0gTWFyIDIwMDY8L3A+CjxwPk1vcmUgY29udHJvbCBvdmVyIHVzZXJuYW1lIGFuZCBwYXNzd29yZCBmaWVsZCBzaXplcyAoY29udHJvbGxlZCBieSBmZXVzZXJzKTwvcD4KPHA+Q29uZmlybWF0aW9uIG9uIGVkaXRpbmcgcHJlZmVyZW5jZXM8L3A+CjxwPlJlcXVpcmUgMC4xMiBwcm9wZXIgb2YgY21zIGFzIGEgbWluaW11bTwvcD4KPC9saT4KPGxpPjxwPlZlcnNpb24gMS4xLjAuIC0gRGVjIDIwMDY8L3A+CiAgICA8cD5BZGRlZCBldmVudHMgYW5kIDEuMCBjb21wYXRpYmlsaXR5PC9wPgogICAgPHA+Q2FwdGNoYSBzdXBwb3J0ICh0aGFua3MgRGl0dG1hbik8L3A+CjwvbGk+CjxsaT48cD5WZXJzaW9uIDEuMS4xLiAtIEFwciAyMDA3PC9wPgogICAgPHA+Tm93IHJlcXVpcmUgRkVVc2VycyAxLjIuMCAobWluaW11bSk8L3A+CiAgICA8cD5TdXBwb3J0IGZvciBtdWx0aXNlbGVjdCBsaXN0cyBpbiBmZXVzZXJzPC9wPgogICAgPHA+T3V0cHV0IHNvbWUgbW9yZSBmaWVsZHMgdG8gc21hcnR5IHRvIGFsbG93IGZvciBpbmNyZWFzZWQgYWNjZXNzaWJpbGl0eTwvcD4KICAgIDxwPlNwbGl0IGNvZGUgb3V0IGludG8gbXVsdGlwbGUgZmlsZXMgdG8gcmVkdWNlIG92ZXJhbGwgbWVtb3J5IGZvb3RwcmludDwvcD4KICAgIDxwPklnbm9yZSBhbGwgaW1hZ2UgZmllbGRzPC9wPgogICAgPHA+Q2hhbmdlIENhcHRjaGEgc3VwcG9ydCB0byBiZSBvbiBieSBkZWZhdWx0IGlmIHRoZSBDYXB0Y2hhIG1vZHVsZSBpcyBmb3VuZDwvcD4KPC9saT4KPGxpPjxwPlZlcnNpb24gMS4xLjIuIC0gTm92IDIwMDc8L3A+CiAgICA8cD5GaXggdGhlIHByb2JsZW0gd2l0aCB0aGUgVXNlckRpc3BsYXlMb3N0UmVnRW1haWxGb3JtIHRoaW5nPC9wPgogICAgPHA+QWRkcyB0aGUgaWQgdG8gdGhlIG9uVXNlclJlZ2lzdGVyZWQgRXZlbnQ8L3A+CiAgICA8cD5GaXhlcyB0aGUgcHJvYmxlbSB3aXRoIGNoZWNrYm94IHByb3BlcnRpZXMgbm90IHdvcmtpbmc8L3A+CiAgICA8cD5Ob3cgUmVxdWlyZXMgQ01TIDEuMiBtaW5pbXVtPC9wPgogICAgPHA+WW91IGNhbiBub3cgdXNlIHtTZWxmUmVnaXN0cmF0aW9uIGdyb3VwPVwnYmxhaFwnfTwvcD4KICAgIDxwPk5vdyBSZXF1aXJlcyBDTVMgMS4zIG1pbmltdW0uPC9wPgo8L2xpPgo8L3VsPic7CiRsYW5nWydoZWxwJ10gPSAnPGgzPldoYXQgRG9lcyBUaGlzIERvPzwvaDM+CjxwPlRoaXMgbW9kdWxlIGlzIGRlc2lnbmVkIHRvIGFsbG93IGZyb250IGVuZCB1c2VycyB0byByZWdpc3RlciB0aGVtc2VsdmVzIGFuZCBmaWxsIGluIHRoZSByZXF1aXJlZCBpbmZvcm1hdGlvbi4gIEl0IHRoZW4gc2VuZHMgYSBjb25maXJtYXRpb24gZW1haWwsIHdpdGggYSBsaW5rIHRvIGEgc2Vjb25kIHBhZ2UgdGhhdCBtdXN0IGJlIGNvbXBsZXRlZCBiZWZvcmUgdGhlIHJlZ2lzdHJhdGlvbiBpcyBjb21wbGV0ZS4gIE9uY2UgcmVnaXN0cmF0aW9uIGlzIGNvbXBsZXRlLCBhIHVzZXIgYWNjb3VudCBpcyBjcmVhdGVkIGluIHRoZSBmcm9udCBlbmQgdXNlcnMgbW9kdWxlLjwvcD4KPHA+SW4gb3JkZXIgdG8gdXNlIHRoaXMgbW9kdWxlLCB5b3UgbXVzdCBjcmVhdGUgYSBwcm9wZXJ0eSBvZiB0eXBlICJFbWFpbCBBZGRyZXNzIiBpbiB0aGUgRnJvbnRlbmRVc2VycyBtb2R1bGUsIGFuZCBhc3NvY2lhdGUgdGhhdCBwcm9wZXJ0eSB3aXRoIHRoZSBncm91cCB0byBiZSB1c2VkIGZvciBzZWxmIHJlZ2lzdHJhdGlvbi48L3A+CjxoMz5Ib3cgRG8gSSBVc2UgSXQ8L2gzPgo8cD5Zb3UgcGxhY2UgdGhlIGZvbGxvd25nIHRhZyBpbnRvIHlvdXIgcGFnZSB7Y21zX21vZHVsZSBtb2R1bGU9U2VsZlJlZ2lzdHJhdGlvbiBncm91cD11c2VyZ3JvdXB9PC9wPgo8cD5Zb3UgbXVzdCBoYXZlIHByZXZpb3VzbHkgY3JlYXRlZCBwcm9wZXJ0aWVzIGFuZCB1c2VyIGdyb3VwcyBpbiB0aGUgRnJvbnRFbmRVc2VycyBtb2R1bGUgaW4gb3JkZXIgZm9yIHRoaXMgdG8gd29yayBwcm9wZXJseS48L3A+CjxoMz5QYXJhbWV0ZXJzPC9oMz4KPHA+PHN0cm9uZz5tb2RlPC9zdHJvbmc+Jm5ic3A7PGVtPm9wdGlvbmFsPC9lbT4gLSBwb3NzaWJsZSB2YWx1ZXMgYXJlICJzaWdudXAiIGFuZCAidmVyaWZ5Ii4gIElmIHRoaXMgcGFyYW1ldGVyIGlzIG5vdCBzcGVjaWZpZWQsICJzaWdudXAiIGlzIGFzc3VtYmVkLjwvcD4KPHA+PHN0cm9uZz5ncm91cDwvc3Ryb25nPiZuYnNwOzxlbT5vcHRpb25hbDwvZW0+IC0gVGhpcyBwYXJhbWV0ZXIgaXMgcmVxdWlyZWQgaWYgbW9kZSBpcyAic2lnbnVwIiwgb3IgaWYgbW9kZSBpcyBsZWZ0IGVtcHR5LjwvcD4KPHA+PHN0cm9uZz5ub2NhcHRjaGE8L3N0cm9uZz4mbmJzcDs8ZW0+b3B0aW9uYWw8L2VtPiAtIFRoaXMgd2lsbCBkaXNhYmxlIGNhcHRjaGEgb24gdGhlIHNpZ251cCBmb3JtLiBCeSBkZWZhdWx0LCBpZiB0aGUgQ2FwdGNoYSBtb2R1bGUgaXMgaW5zdGFsbGVkLCBjYXB0Y2hhIHN1cHBvcnQgaXMgcHJvdmlkZWQuICBUaGlzIHBhcmFtZXRlciBkaXNhYmxlcyBpdC48L3A+CjxoMz5TdXBwb3J0PC9oMz4KPHA+VGhpcyBtb2R1bGUgZG9lcyBub3QgaW5jbHVkZSBjb21tZXJjaWFsIHN1cHBvcnQuIEhvd2V2ZXIsIHRoZXJlIGFyZSBhIG51bWJlciBvZiByZXNvdXJjZXMgYXZhaWxhYmxlIHRvIGhlbHAgeW91IHdpdGggaXQ6PC9wPgo8dWw+CjxsaT5Gb3IgdGhlIGxhdGVzdCB2ZXJzaW9uIG9mIHRoaXMgbW9kdWxlLCBGQVFzLCBvciB0byBmaWxlIGEgQnVnIFJlcG9ydCBvciBidXkgY29tbWVyY2lhbCBzdXBwb3J0LCBwbGVhc2UgdmlzaXQgY2FsZ3V5XCdzCm1vZHVsZSBob21lcGFnZSBhdCA8YSBocmVmPSJodHRwOi8vdGVjaGNvbS5keW5kbnMub3JnIj50ZWNoY29tLmR5bmRucy5vcmc8L2E+LjwvbGk+CjxsaT5BZGRpdGlvbmFsIGRpc2N1c3Npb24gb2YgdGhpcyBtb2R1bGUgbWF5IGFsc28gYmUgZm91bmQgaW4gdGhlIDxhIGhyZWY9Imh0dHA6Ly9mb3J1bS5jbXNtYWRlc2ltcGxlLm9yZyI+Q01TIE1hZGUgU2ltcGxlIEZvcnVtczwvYT4uPC9saT4KPGxpPlRoZSBhdXRob3IsIGNhbGd1eTEwMDAsIGNhbiBvZnRlbiBiZSBmb3VuZCBpbiB0aGUgPGEgaHJlZj0iaXJjOi8vaXJjLmZyZWVub2RlLm5ldC8jY21zIj5DTVMgSVJDIENoYW5uZWw8L2E+LjwvbGk+CjxsaT5MYXN0bHksIHlvdSBtYXkgaGF2ZSBzb21lIHN1Y2Nlc3MgZW1haWxpbmcgdGhlIGF1dGhvciBkaXJlY3RseS48L2xpPiAgCjwvdWw+CjxwPkFzIHBlciB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIHByb3ZpZGVkIGFzLWlzLiBQbGVhc2UgcmVhZCB0aGUgdGV4dApvZiB0aGUgbGljZW5zZSBmb3IgdGhlIGZ1bGwgZGlzY2xhaW1lci48L3A+Cgo8aDM+Q29weXJpZ2h0IGFuZCBMaWNlbnNlPC9oMz4KPHA+Q29weXJpZ2h0ICZjb3B5OyAyMDA1LCBSb2JlcnQgQ2FtcGJlbCA8YSBocmVmPSJtYWlsdG86Y2FsZ3V5MTAwMEBob3RtYWlsLmNvbSI+Jmx0O2NhbGd1eTEwMDBAaG90bWFpbC5jb20mZ3Q7PC9hPi4gQWxsIFJpZ2h0cyBBcmUgUmVzZXJ2ZWQuPC9wPgo8cD5UaGlzIG1vZHVsZSBoYXMgYmVlbiByZWxlYXNlZCB1bmRlciB0aGUgPGEgaHJlZj0iaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMIj5HTlUgUHVibGljIExpY2Vuc2U8L2E+LiBZb3UgbXVzdCBhZ3JlZSB0byB0aGlzIGxpY2Vuc2UgYmVmb3JlIHVzaW5nIHRoZSBtb2R1bGUuPC9wPgonOwo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/lang/ext/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lang/ext/cs_CZ.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2Vycm9yX2NvZGVzZG9udG1hdGNoJ10gPSAnUG9za3l0bnV0JnlhY3V0ZTsgb3bEm8WZb3ZhYyZpYWN1dGU7IGsmb2FjdXRlO2QgamUgbmVwbGF0biZ5YWN1dGU7JzsKJGxhbmdbJ2V2ZW50X2Rlc2NyaXB0aW9uX29uTmV3VXNlciddID0gJ1VkJmFhY3V0ZTtsb3N0IHZ5dm9sYW4mYWFjdXRlOyBrZHnFviBub3YmeWFjdXRlOyB1xb5pdmF0ZWwgZG9rb27EjWlsIHZ5cGzFiG92JmFhY3V0ZTtuJmlhY3V0ZTsgcmVnaXN0cmHEjW4maWFjdXRlO2hvIGZvcm11bCZhYWN1dGU7xZllJzsKJGxhbmdbJ2V2ZW50X2Rlc2NyaXB0aW9uX29uVXNlclJlZ2lzdGVyZWQnXSA9ICdVZCZhYWN1dGU7bG9zdCB6bmHEjSZpYWN1dGU7YyZpYWN1dGU7LCDFvmUgdcW+aXZhdGVsIHBvdHZyZGlsIG9kZXNsYW4meWFjdXRlOyBlLW1haWwgYSBqZSBueW4maWFjdXRlOyBrb21wbGV0bsSbIHphcmVnaXN0cm92JmFhY3V0ZTtuJzsKJGxhbmdbJ2V2ZW50X2hlbHBfb25OZXdVc2VyJ10gPSAnPHA+QW4gZXZlbnQgaW5kaWNhdGluZyB0aGF0IGEgbmV3IHVzZXIgaGFzIGNvbXBsZXRlZCB0aGUgcmVnaXN0cmF0aW9uIGZvcm08L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgbmV3IHVzZXJzIHNlbGVjdGVkIHVzZXJuYW1lPC9saT4NCjxsaT48ZW0+ZW1haWw8L2VtPiAtIFRoZSBuZXcgdXNlcnMgZW1haWwgYWRkcmVzczwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfb25Vc2VyUmVnaXN0ZXJlZCddID0gJzxwPkFuIGV2ZW50IGluZGljYXRpbmcgdGhhdCBhIHVzZXIgaGFzIGJlZW4gdmVyaWZpZWQgYW5kIGlzIG5vdyByZWdpc3RlcmVkIHdpdGggZmV1c2VyczwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSByZWdpc3RlcmVkIHVzZXJuYW1lPC9saT4NCjwvdWw+DQonOwokbGFuZ1snY29uZmlybV9zdWJtaXRwcmVmcyddID0gJ1ptxJtuaXQgYWRtaW5pc3RyYcSNbiZpYWN1dGU7IG5hc3RhdmVuJmlhY3V0ZTs/JzsKJGxhbmdbJ2luZm9fYWRtaW5fcGFzc3dvcmQnXSA9ICdQb25lY2h0ZSB0b3RvIHBvbGUgcHImYWFjdXRlO3pkbiZlYWN1dGU7IHBybyB6YWNob3YmYWFjdXRlO24maWFjdXRlOyBzdCZhYWN1dGU7dmFqJmlhY3V0ZTtjJmlhY3V0ZTtobyBoZXNsYSc7CiRsYW5nWydpbmZvX2FkbWluX3JlcGVhdHBhc3N3b3JkJ10gPSAnUG9uZWNodGUgdG90byBwb2xlIHByJmFhY3V0ZTt6ZG4mZWFjdXRlOyBwcm8gemFjaG92JmFhY3V0ZTtuJmlhY3V0ZTsgc3QmYWFjdXRlO3ZhaiZpYWN1dGU7YyZpYWN1dGU7aG8gaGVzbGEnOwokbGFuZ1snZXJyb3JfZW1haWxkb2Vzbm90bWF0Y2gnXSA9ICdFLW1haWxvdiZlYWN1dGU7IGFkcmVzeSBzZSBuZXNob2R1aiZpYWN1dGU7JzsKJGxhbmdbJ2ZvcmNlX2VtYWlsX3R3aWNlJ10gPSAnVnnFvmFkb3ZhdCwgYWJ5IHXFvml2YXRlbCZlYWN1dGU7IHZsb8W+aWxpIHN2b3UgZS1tYWlsb3ZvdSBhZHJlc3UgZHZha3ImYWFjdXRlO3QnOwokbGFuZ1snYWdhaW4nXSA9ICd6bm92dSc7CiRsYW5nWydkZWxldGVzZWx1c2VycyddID0gJ1NtYXphdCB2eWJyYW4mZWFjdXRlOyB1xb5pdmF0ZWxlJzsKJGxhbmdbJ2Vycm9yX25vcHJvcGRlZm5zJ10gPSAnxb0mYWFjdXRlO2RuJmVhY3V0ZTsgZGVmaW5pY2Ugdmxhc3Rub3N0JmlhY3V0ZTssIG5lYm8gZG8mc2Nhcm9uO2xvIGsgY2h5YsSbIHDFmWkgamVqaWNoIHpqaSZzY2Fyb247xaVvdiZhYWN1dGU7biZpYWN1dGU7IHogZGF0YWImYWFjdXRlO3plJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBzJ10gPSAnxb0mYWFjdXRlO2RuJmVhY3V0ZTsgc2t1cGlueSwgbmVibyBkbyZzY2Fyb247bG8gayBwb3QmaWFjdXRlO8W+JmlhY3V0ZTttIHDFmWkgamVqaWNoIHomaWFjdXRlO3NrJmFhY3V0ZTtuJmlhY3V0ZTsgeiBkYXRhYiZhYWN1dGU7emUnOwokbGFuZ1snZXJyb3JfZGJlcnJvciddID0gJ0NoeWJhIGRhdGFiJmFhY3V0ZTt6ZSc7CiRsYW5nWyd0aXRsZV9wb3N0X3NlbmRhbm90aGVyZW1haWxfdGVtcGxhdGUnXSA9ICdQb3N0IExvc3QgRW1haWwgVGVtcGxhdGUnOwokbGFuZ1sndGl0bGVfc2VuZGFub3RoZXJlbWFpbF90ZW1wbGF0ZSddID0gJ0xvc3QgRW1haWwgVGVtcGxhdGUnOwokbGFuZ1snY2xpY2toZXJlJ10gPSAnS2xpa27Em3RlIHpkZSc7CiRsYW5nWydtc2dfc2VuZGFub3RoZXJlbWFpbCddID0gJ0ppxb4ganNlbSB2eXBsbmlsIHJlZ2lzdHJhxI1uJmlhY3V0ZTsgZm9ybXVsJmFhY3V0ZTvFmSwgYWxlIG5lb2JkcsW+ZWwganNlbSBlLW1haWwsIG3Fr8W+ZXRlIG1pIGhvIHByb3MmaWFjdXRlO20gem5vdnUgcG9zbGF0Lic7CiRsYW5nWydzZW5kYW5vdGhlcmVtYWlsX3RlbXBsYXRlJ10gPSAnTG9zdCBFbWFpbCBUZW1wbGF0ZSc7CiRsYW5nWydpbmZvX3VzZXJ2ZXJpZmllZCddID0gJ0RvIEZyb250RW5kVXNlcnMgYnlsIHDFmWlkJmFhY3V0ZTtuIG5vdiZ5YWN1dGU7IHXFvml2YXRlbCc7CiRsYW5nWydlZGl0J10gPSAnVXByYXZpdCc7CiRsYW5nWyd1bmtub3duJ10gPSAnTmV6biZhYWN1dGU7bSZ5YWN1dGU7JzsKJGxhbmdbJ3NlbGVjdCddID0gJ1Z5YnJhdCc7CiRsYW5nWydjaGVja19hbGwnXSA9ICdWeWJyYXQgdiZzY2Fyb247ZSc7CiRsYW5nWyd1bmNoZWNrX2FsbCddID0gJ1pydSZzY2Fyb247aXQgdiZ5YWN1dGU7YsSbcic7CiRsYW5nWydzZW5kX2FkanVzdG1lbnRlbWFpbCddID0gJ1Bvc2xhdCBlLW1haWwgdcW+aXZhdGVsaSc7CiRsYW5nWyd0eHRfYWRqdXN0bWVudGVtYWlsJ10gPSAnKGluZm9ybXVqZSB1xb5pdmF0ZWxlLCDFvmUgamVqaWNoICZ1YWN1dGU7xI1ldCBieWwgdXByYXZlbic7CiRsYW5nWyd0eHRfY2hhbmdlcGFzc3dvcmQnXSA9ICdWeXBsxYh0ZSB0YXRvIHBvbGUgcHJvIHptxJtudSB1xb5pdmF0ZWxzayZlYWN1dGU7aG8gaGVzbGEnOwokbGFuZ1snZWRpdHVzZXInXSA9ICdVcHJhdml0IHXFvml2YXRlbGUnOwokbGFuZ1snYXJleW91c3VyZV9kZWxldGV1c2VyJ10gPSAnT3ByYXZkdSBjaGNldGUgdnltYXphdCB0b2hvdG8gxI0mYWFjdXRlO3N0ZcSNbsSbIHJlZ2lzdHJvdmFuJmVhY3V0ZTtobyB1xb5pdmF0ZWxlPyc7CiRsYW5nWydoZHJfdXNlcmlkJ10gPSAnVXNlcklEJzsKJGxhbmdbJ2hkcl91c2VybmFtZSddID0gJ1XFvml2YXRlbHNrJmVhY3V0ZTsgam0mZWFjdXRlO25vJzsKJGxhbmdbJ2hkcl9ncnBuYW1lJ10gPSAnU2t1cGluYSc7CiRsYW5nWydoZHJfY3JlYXRlZCddID0gJ3Z5dHZvxZllbm8nOwokbGFuZ1snaGRyX2VtYWlsJ10gPSAnRS1tYWlsJzsKJGxhbmdbJ3VzZXJzZm91bmQnXSA9ICdOYWxlemVuJmlhY3V0ZTsgdcW+aXZhdGVsJmVhY3V0ZTsgKG9tZXplbm8gbWF4aW0mYWFjdXRlO2xuJmlhY3V0ZTttIHBvxI10ZW0gMjUwKSc7CiRsYW5nWyd1c2VycyddID0gJ1XFvml2YXRlbCZlYWN1dGU7JzsKJGxhbmdbJ2xpc3QxZGF5J10gPSAnVnlwc2F0IHYmc2Nhcm9uO2VjaG55IHBvbG/Fvmt5IHYmaWFjdXRlO2NlIG5lxb4gMSBkZW4gc3RhciZlYWN1dGU7JzsKJGxhbmdbJ3N1YmplY3QnXSA9ICdQxZllZG3Em3Qgb2RjaG96JmlhY3V0ZTtobyBlLW1haWx1JzsKJGxhbmdbJ2h0bWxib2R5J10gPSAnVMSbbG8gSFRNTCB6cHImYWFjdXRlO3Z5JzsKJGxhbmdbJ3RleHRib2R5J10gPSAnVMSbbG8gdGV4dG92JmVhY3V0ZTtobyBlLW1haWx1JzsKJGxhbmdbJ3Byb21wdF9udW1yZXNldHJlY29yZCddID0gJ07Em2t0ZcWZJmlhY3V0ZTsgdcW+aXZhdGVsJmVhY3V0ZTsganNvdSDEjSZhYWN1dGU7c3RlxI1uxJsgcmVnaXN0cm92YW4maWFjdXRlOy4gSmVqaWNoIHBvxI1ldCBqZSBha3R1JmFhY3V0ZTtsbsSbOic7CiRsYW5nWydyZW1vdmUxd2VlayddID0gJ09kZWJyYXQgdiZzY2Fyb247ZWNobnkgcG9sb8W+a3kgc3RhciZzY2Fyb247JmlhY3V0ZTsgbmXFviB0JnlhY3V0ZTtkZW4nOwokbGFuZ1sncmVtb3ZlMW1vbnRoJ10gPSAnT2RlYnJhdCB2JnNjYXJvbjtlY2hueSBwb2xvxb5reSBzdGFyJnNjYXJvbjsmaWFjdXRlOyBuZcW+IHJvayc7CiRsYW5nWydyZW1vdmUxZGF5J10gPSAnT2RlYnJhdCB2JnNjYXJvbjtlY2hueSBwb2xvxb5reSBzdGFyJnNjYXJvbjsmaWFjdXRlOyBuZcW+IHQmeWFjdXRlO2Rlbic7CiRsYW5nWydyZW1vdmVhbGwnXSA9ICdPZGV2cmF0IHYmc2Nhcm9uO2VjaG55IHomYWFjdXRlO3puYW15JzsKJGxhbmdbJ2FyZXlvdXN1cmUnXSA9ICdKc3RlIHNpIGppc3Q/JzsKJGxhbmdbJ3JlZ2lzdHJhdGlvbl9pbmZvX2VkaXRlZCddID0gJ1ZhJnNjYXJvbjtlIHJlZ2lzdHJhxI1uJmlhY3V0ZTsgJnVhY3V0ZTtkYWplIGJ5bHkgdXByYXZlbnknOwokbGFuZ1sncmVnaXN0cmF0aW9uX2NvbmZpcm1hdGlvbiddID0gJ1BvdHZyemVuJmlhY3V0ZTsgcmVnaXN0cmFjZSc7CiRsYW5nWyd1c2VyX3JlZ2lzdHJhdGlvbiddID0gJ1JlZ2lzdHJhY2UnOwokbGFuZ1snZmluYWxtZXNzYWdlX3RlbXBsYXRlJ10gPSAnRmluYWwgTWVzc2FnZSBUZW1wbGF0ZSc7CiRsYW5nWyd0aXRsZV92ZXJpZnlyZWdpc3RyYXRpb24nXSA9ICdPdsSbxZlpdCByZWdpc3RyYWNpJzsKJGxhbmdbJ2NvZGUnXSA9ICdPdsSbxZlvdmFjJmlhY3V0ZTsga2wmaWFjdXRlO8SNJzsKJGxhbmdbJ2RlZmF1bHQnXSA9ICdOYXN0YXZpdCBuYSB2JnlhY3V0ZTtjaG96JmlhY3V0ZTsgaG9kbm90eSc7CiRsYW5nWydlcnJvcl9ub3Byb3BlcnRpZXMnXSA9ICdQcm8gdG9ob3RvIHXFvml2YXRlbGUgbmVieWx5IG5hbGV6ZW55IMW+JmFhY3V0ZTtkbiZlYWN1dGU7IHZsYXN0bm9zdGknOwokbGFuZ1snZXJyb3Jfbm9wcm9wcmVsYXRpb25zJ10gPSAnTm8gcHJvcGVydHkgcmVsYXRpb25zJzsKJGxhbmdbJ2Vycm9yX2VtYWlsaW52YWxpZCddID0gJ05lcGxhdG4mYWFjdXRlOyBlLW1haWxvdiZhYWN1dGU7IGFkcmVzYSc7CiRsYW5nWydlcnJvcl9ub2VtYWlsYWRkcmVzcyddID0gJ05lYnlsbyBuYWxlemVubyBwb2xlIG9ic2FodWomaWFjdXRlO2MmaWFjdXRlOyBwbGF0bm91IGUtbWFpbG92b3UgYWRyZXN1JzsKJGxhbmdbJ2Vycm9yX3JlcXVpcmVkZmllbGQnXSA9ICdQb2xlICVzIG11cyZpYWN1dGU7IGImeWFjdXRlO3QgdnlwbG7Em25vJzsKJGxhbmdbJ3JlZ2lzdHJhdGlvbjFfdGVtcGxhdGUnXSA9ICdSZWdpc3RyYcSNbiZpYWN1dGU7ICZzY2Fyb247YWJsb25hIDEnOwokbGFuZ1sncmVnaXN0cmF0aW9uMl90ZW1wbGF0ZSddID0gJ1JlZ2lzdHJhxI1uJmlhY3V0ZTsgJnNjYXJvbjthYmxvbmEgMic7CiRsYW5nWydlbWFpbGNvbmZpcm1fdGVtcGxhdGUnXSA9ICcmU2Nhcm9uO2FibG9uYSBlLW1haWx1IHBybyBwb3R2cnplbiZpYWN1dGU7JzsKJGxhbmdbJ2VtYWlsdXNlcmVkaXRlZF90ZW1wbGF0ZSddID0gJyZTY2Fyb247YWJsb25hIHptxJtueSB1xb5pdmF0ZWxzayZ5YWN1dGU7Y2ggaW5mb3JtYWMmaWFjdXRlOyc7CiRsYW5nWydwcmVmZXJlbmNlcyddID0gJ05hc3RhdmVuJmlhY3V0ZTsnOwokbGFuZ1snZXJyb3JfdXNlcm5vdGZvdW5kJ10gPSAnVcW+aXZhdGVsIG5lYnlsIG5hbGV6ZW4nOwokbGFuZ1snZXJyb3JfaW52YWxpZHVzZXJuYW1lJ10gPSAnVcW+aXZhdGVsc2smZWFjdXRlOyBqbSZlYWN1dGU7bm8gamUgbmVwbGF0biZlYWN1dGU7IChwxZkmaWFjdXRlO2xpJnNjYXJvbjsgZGxvdWgmZWFjdXRlOywgcMWZJmlhY3V0ZTtsaSZzY2Fyb247IGtyJmFhY3V0ZTt0ayZlYWN1dGU7LCBuZWJvIG9ic2FodWplIG5lcGxhdG4mZWFjdXRlOyB6bmFreSAtIHBvdm9sZW5hIGpzb3UgcG91emUgcCZpYWN1dGU7c21lbmEgYmV6IGRpYWtyaXRpa3kgYSBtZXplcikuICc7CiRsYW5nWydlcnJvcl91c2VybmFtZXRha2VuJ10gPSAnVcW+aXZhdGVsc2smZWFjdXRlOyBqbSZlYWN1dGU7bm8gamUgamnFviBwb3XFviZpYWN1dGU7diZhYWN1dGU7bm8nOwokbGFuZ1snZXJyb3JfcGFzc3dvcmRzZG9udG1hdGNoJ10gPSAnQ0hZQkE6IEhlc2xhIG5lb2Rwb3YmaWFjdXRlO2RhaiZpYWN1dGU7JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXNzd29yZCddID0gJ0hlc2xvIGplIG5lcGxhdG4mZWFjdXRlOyAoaGVzbGEgbXVzJmlhY3V0ZTsgbSZpYWN1dGU7dCBkJmVhY3V0ZTtsa3UgbWV6aSAlcyBhICVzIHpuYWt5KSc7CiRsYW5nWydlcnJvcl9lbXB0eXVzZXJuYW1lJ10gPSAnVcW+aXZhdGVsc2smZWFjdXRlOyBqbSZlYWN1dGU7bm8gbXVzJmlhY3V0ZTsgYiZ5YWN1dGU7dCB6YWQmYWFjdXRlO25vJzsKJGxhbmdbJ3JlcGVhdHBhc3N3b3JkJ10gPSAnSGVzbG8gKHpub3Z1KSc7CiRsYW5nWydwYXNzd29yZCddID0gJ0hlc2xvJzsKJGxhbmdbJ3VzZXJuYW1lJ10gPSAnUMWZaWhsYSZzY2Fyb247b3ZhYyZpYWN1dGU7IGptJmVhY3V0ZTtubyc7CiRsYW5nWydjYXB0Y2hhX3RpdGxlJ10gPSAnVmxvxb50ZSB0ZXh0IHogb2JyJmFhY3V0ZTt6a3UnOwokbGFuZ1snZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJ10gPSAnUMWZaSB2b2wmYWFjdXRlO24maWFjdXRlOyBtdWR1bHUgYnlsbyBwb3XFvml0byBwxZkmaWFjdXRlO2xpJnNjYXJvbjsgbSZhYWN1dGU7bG8gcGFyYW1ldHLFrywgbmVibyBqc291IHphZGFuJmVhY3V0ZTsgcGFyYW1ldHJ5IG5lcGxhdG4mZWFjdXRlOyc7CiRsYW5nWydlcnJvcl9ub2ZldXNlcnNtb2R1bGUnXSA9ICdOZW1vaHUgc2UgcMWZaXBvaml0IGsgbXVkdWx1IEZyb250RW5kVXNlcnMnOwokbGFuZ1snZXJyb3Jfbm9zdWNoZ3JvdXAnXSA9ICdVdmVkZW4mZWFjdXRlOyBqbSZlYWN1dGU7bm8gc2t1cGlueSBuZWV4aXN0dWplJzsKJGxhbmdbJ2Vycm9yX2NhcHRjaGFtaXNtYXRjaCddID0gJ1RleHQgeiBvYnImYWFjdXRlO3prdSBuZWJ5bCB2bG/FvmVuIHNwciZhYWN1dGU7dm7Emyc7CiRsYW5nWydzZW5kX2VtYWlsc190byddID0gJ1JlZ2lzdHJhxI1uJmlhY3V0ZTsgZS1tYWlseSBieSBtxJtseSBiJnlhY3V0ZTt0IHphc2wmYWFjdXRlO255IG5hIGUtbWFpbHknOwokbGFuZ1sncmVxdWlyZV9lbWFpbF9jb25maXJtYXRpb24nXSA9ICdWecW+YWRvdmF0IHXFvml2dGVsb3ZvIHBvdHZyemVuJmlhY3V0ZTsgcmVnaXN0cmFjZSBlLW1haWxlbSc7CiRsYW5nWydub3RpZnlfb25fcmVnaXN0cmF0aW9uJ10gPSAnUG9zbGF0IHVwb3pvcm7Em24maWFjdXRlOyBlLW1haWxlbSwga2R5xb4gc2UgbsSba2RvIHJlZ2lzdHJ1amUnOwokbGFuZ1snY2FuY2VsJ10gPSAnQ2FuY2VsU3Rvcm5vJzsKJGxhbmdbJ3N1Ym1pdCddID0gJ1Zsb8W+aXQnOwokbGFuZ1snZnJpZW5kbHluYW1lJ10gPSAnU2Ftb3N0YXRuJmFhY3V0ZTsgcmVnaXN0cmFjZSc7CiRsYW5nWydwb3N0aW5zdGFsbCddID0gJ0luc3RhbGxhdGlvbiBzdWNjZXNzZnVsbCwgcGxlYXNlIHJlbWVtYmVyIHRvIHNldCB0aGUgJnF1b3Q7TW9kaWZ5IFNlbGZSZWdpc3RyYXRpb24gU2V0dGluZ3MmcXVvdDsgcGVybWlzc2lvbi4nOwokbGFuZ1sncG9zdHVuaW5zdGFsbCddID0gJ01vZHVsIFNhbW9zdGF0biZhYWN1dGU7IHJlZ2lzdHJhY2UgYnlsIG9kaW5zdGFsb3YmYWFjdXRlO24uIE5hc2hsZWRhbm91IHDFmSZpYWN1dGU7JnNjYXJvbjt0xJsuJzsKJGxhbmdbJ3VuaW5zdGFsbGVkJ10gPSAnTW9kdWwgb2RpbnN0YWxvdiZhYWN1dGU7bi4nOwokbGFuZ1snaW5zdGFsbGVkJ10gPSAnTW9kdWwgdmVyemUgJXMgaW5zdGFsbG92JmFhY3V0ZTtuLic7CiRsYW5nWydwcmVmc3VwZGF0ZWQnXSA9ICdWbGFzdG5vc3RpIG1vZHVsdSBuYXN0YXZlbnknOwokbGFuZ1snYWNjZXNzZGVuaWVkJ10gPSAnUMWZJmlhY3V0ZTtzdHVwIHphayZhYWN1dGU7eiZhYWN1dGU7bi4gUHJvcyZpYWN1dGU7bSB6a29udHJvbHVqdGUgc3YmYWFjdXRlOyBvcHImYWFjdXRlO3ZuxJtuJmlhY3V0ZTsuJzsKJGxhbmdbJ2Vycm9yJ10gPSAnQ2h5YmEhJzsKJGxhbmdbJ3VwZ3JhZGVkJ10gPSAnTW9kdWwgYWt0dWFsaXpvdiZhYWN1dGU7biBuYSB2ZXJ6aSAlcy4nOwokbGFuZ1sndGl0bGVfbW9kX3ByZWZzJ10gPSAnTmFzdGF2ZW4maWFjdXRlOyBtb2R1bHUnOwokbGFuZ1sndGl0bGVfbW9kX2FkbWluJ10gPSAnQWRtaW5pc3RyYcSNbiZpYWN1dGU7IHBhbmVsIG1vZHVsdSc7CiRsYW5nWyd0aXRsZV9hZG1pbl9wYW5lbCddID0gJ01vZHVsIHNhbW9yZWdpc3RyYWNlJzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnTW9kdWwsIGt0ZXImeWFjdXRlOyB1bW/FvsWIdWplIHNhbW9zdGF0bm91IHJlZ2lzdHJhY2kgdcW+aXZhdGVsxa8uJzsKJGxhbmdbJ3dlbGNvbWVfdGV4dCddID0gJzxwPlYmaWFjdXRlO3RlanRlIHYgbW9kdWx1IFNhbW9zdGF0biZhYWN1dGU7IHJlZ2lzdHJhY2UuPC9wPic7CiRsYW5nWydjaGFuZ2Vsb2cnXSA9ICc8dWw+DQo8bGk+VmVyc2lvbiAwLjAuMS4gT2N0IDIwMDUuIEluaXRpYWwgTlJQVCAoTm90IFJlYWR5IGZvciBQcmltZSBUaW1lKSByZWxlYXNlLjwvbGk+DQo8bGk+VmVyc2lvbiAwLjEuMC4gT2N0IDIwMDUuIEluaXRpYWwgcmVsZWFzZS48L2xpPg0KPGxpPlZlcnNpb24gMC4xLjEuIE9jdCAyMDA1LiBTZXQgdGhlIEhUTUwgbWFpbCBmbGFnLjwvbGk+DQo8bGk+VmVyc2lvbiAwLjEuMi4gT2N0IDIwMDUuIE1vdmVkIFJhbmRvbSBzdHVmZiBpbnRvIGZldXNlcnMsIGFuZCBhZGRlZCB0aGUgYWJpbGl0eSB0byBkZWxldGUgb2xkIGVudHJpZXMgZnJvbSB0aGUgcmVnaXN0cmF0aW9uIHRlbXBvcmFyeSB0YWJsZXM8L2xpPg0KPGxpPjxwPlZlcnNpb24gMC4xLjMuIC0gRGVjIDIwMDU8L3A+DQo8cD5GaXhlZCB0aGUgdG9nZ2xlcyBpbiB0aGUgYWRtaW4gcHJlZmVyZW5jZXMuICBBbHNvLCBjaGFuZ2VkIHRoZSBwZXJtaXNzaW9ucyBtb2RlbCB0byBub3QgcmVxdWlyZSB0aGUgdW5pcXVlIHBlcm1pc3Npb24gYWRkZWQgcHJldmlvdXNseSBmb3IgdGhlIHNlbGZyZWcgbW9kdWxlLjwvcD4NCjxwPlRoaXMgcmVsZWFzZSB3YXMgcmVtb3ZlZCBkdWUgdG8gcG9zc2libGUgZXJyb3JzPC9wPg0KPC9saT4NCjxsaT48cD5WZXJzaW9uIDAuMS40LiAtIEphbiAyMDA2PC9wPg0KPHA+Rml4ZWQgbWlub3IgZXJyb3JzIHdpdGggQ2hlY2tQZXJtaXNzaW9uLCByZXBsYWNlZCBhbGwgYXNzaWduX2J5X3JlZnMmIzAzOTtzIHdpdGggYXNzaWducyBmb3IgaG9wZWZ1bCBwaHA1IGNvbXBhdGliaWxpdHkuPC9wPg0KPGxpPjxwPlZlcnNpb24gMC4xLjUuIC0gSmFuIDIwMDY8L3A+DQo8cD5BZGRlZCB0aGUgYWJpbGl0eSB0byBzZXQgdGhlIHN1YmplY3Qgb2YgdGhlIGNvbmZpcm1hdGlvbiBlbWFpbCwgYW5kIGFkZGVkIHRoZSBhYmlsaXR5IHRvIHNwZWNpZnkgYSB0ZXh0IGJvZHkuICBTdWJqZWN0LCBhbmQgdGV4dCBib2R5IGFyZSByZXF1aXJlZC48L3A+DQo8L2xpPg0KPGxpPjxwPlZlcnNpb24gMS4wLjAuIC0gRmViIDIwMDY8L3A+DQo8cD5GaXhlZCBhIHByb2JsZW0gd2l0aCB0aGUgdmVyaWZ5IG1vZGUuPC9wPg0KPHA+QWRkZWQgdGhlIGFiaWxpdHkgdG8gZWRpdCBhbmQgZGVsZXRlIHVzZXJzLiB3aXRoIHNlbGVjdGlvbiBvbiB0aGUgY2hlY2tib3hlcywgYW5kICZxdW90O2NoZWNrYWxsJnF1b3Q7PC9wPg0KPHA+Tm93IHJlcXVpcmUgRkVVc2VycyAwLjEuOCBhbmQgQ01TTWFpbGVyIDEuNzMuOTwvcD4NCjxwPkFkZGVkIGFub3RoZXIgdGFiIGZvciB0aGUgJnF1b3Q7eW91ciBzZXR0aW5ncyBoYXZlIGJlZW4gYWRqdXN0ZWQmcXVvdDsgZW1haWwgdGVtcGxhdGVzPC9wPg0KPHA+QWRkZWQgQ1NWIEV4cG9ydGluZzwvcD4NCjxwPkFkZGVkIGEgJnF1b3Q7RGVsZXRlIGFsbCB1c2VycyBvbGRlciB0aGFuIGEgZGF5JnF1b3Q7IGJ1dHRvbjwvcD4NCjxwPk5vdyB3b3JrcyB3aXRoIHRoZSBtYXhpbXVtIGxlbmd0aCBmaWVsZCBvZiBGRVVzZXJzPC9wPg0KPHA+QWRkZWQgc3VwcG9ydCBmb3IgZHJvcGRvd25zIGFuZCB0ZXh0IGFyZWFzPC9wPg0KPHA+RGlzYWxsb3cgcHVuY3R1YXRpb24gY2hhcmFjdGVycyBpbiB1c2VybmFtZTwvcD4NCjwvbGk+DQo8bGk+PHA+VmVyc2lvbiAxLjAuMS4gLSBGZWIgMjAwNjwvcD4NCjxwPkFkZGVkIHRoZSBhYmlsaXR5IGZvciB1c2VycyB0byByZXF1ZXN0IGFub3RoZXIgcmVnaXN0cmF0aW9uIGVtYWlsICh1c2VzIHRoZSBzYW1lIGNvZGUpLCBpbmNhc2UgdGhleSBsb3N0IHRoZWlyIGZpcnN0IG9uZS48L3A+DQo8L2xpPg0KPGxpPjxwPlZlcnNpb24gMS4wLjIuIC0gRmViIDIwMDY8L3A+DQo8cD5UaGUgJnF1b3Q7UmVxdWlyZSBlbWFpbCBjb25maXJtYXRpb24mcXVvdDsgY2hlY2tib3ggbm93IHdvcmtzLiAgVXNlcnMgYXJlIGFkZGVkIHN0cmFpZ2h0IHRvIHRoZSBmcm9udGVuZCB1c2VycyBkYXRhYmFzZTwvcD4NCjxwPkZpeGVkIGEgYnVnIHdpdGggdGhlIGNvbmZpcm1hdGlvbiBlbWFpbHMgaGF2aW5nIGxpbmtzIHRvIHRoZSBhZG1pbiBzZWN0aW9uIChuZXcgYnVnIG9ubHkpLjwvcD4NCjwvbGk+DQo8bGk+PHA+VmVyc2lvbiAxLjAuMy4gLSBGZWIgMjAwNjwvcD4NCjxwPkFkZGVkIHRoZSAob3B0aW9uYWwpIGFiaWxpdHkgdG8gcmVxdWlyZSB0aGUgdXNlciBlbnRlciB0aGUgZW1haWwgYWRkcmVzcyB0d2ljZTwvcD4NCjxwPkZpeGVkIGEgYnVnIHdpdGggdGhlIHVzZXJlZGl0ZWQgbWVzc2FnZSBub3QgYmVpbmcgdGhyb3duIHRocm91Z2ggc21hcnR5PC9wPg0KPHA+Rml4ZWQgdGhlIGRlZmF1bHQgcmVnaXN0cmF0aW9uIHRlbXBsYXRlIGEgYml0IHRvIGFpZGUgaW4gdmFsaWRhdGlvbiBmb3Igbm9uIHJlcXVpcmVkIGZpZWxkcyAoZml4ZWQgYSB3YXJuaW5nKTwvcD4NCjxwPkZpeCBwcm9ibGVtcyB3aXRoIGlubGluZSBhbmQgbm9uLWlubGluZSBmb3JtcyBhbmQgbGlua3M8L3A+DQo8cD5IYW5kbGUgYW5vdGhlciBjYXNlIHdoZXJlIHRoZSBhZG1pbiBtYXkgbm90IGhhdmUgY3JlYXRlZCB0aGUgcHJvcGVyIHR5cGUgb2YgZW1haWwgcHJvcGVydHk8L3A+DQo8cD5DaGFuZ2VkIHRvIHJlcXVpcmUgQ01TIDAuMTItYmV0YTIgYXQgYSBtaW5pbXVtIChmb3Igc2FmZXR5IHB1cnBvc2VzKTwvcD4NCjwvbGk+DQo8bGk+PHA+VmVyc2lvbiAxLjAuNC4gLSBNYXIgMjAwNjwvcD4NCjxwPk1vcmUgY29udHJvbCBvdmVyIHVzZXJuYW1lIGFuZCBwYXNzd29yZCBmaWVsZCBzaXplcyAoY29udHJvbGxlZCBieSBmZXVzZXJzKTwvcD4NCjxwPkNvbmZpcm1hdGlvbiBvbiBlZGl0aW5nIHByZWZlcmVuY2VzPC9wPg0KPHA+UmVxdWlyZSAwLjEyIHByb3BlciBvZiBjbXMgYXMgYSBtaW5pbXVtPC9wPg0KPC9saT4NCjxsaT48cD5WZXJzaW9uIDEuMS4wLiAtIERlYyAyMDA2PC9wPg0KICAgIDxwPkFkZGVkIGV2ZW50cyBhbmQgMS4wIGNvbXBhdGliaWxpdHk8L3A+DQogICAgPHA+Q2FwdGNoYSBzdXBwb3J0ICh0aGFua3MgRGl0dG1hbik8L3A+DQo8L2xpPg0KPGxpPjxwPlZlcnNpb24gMS4xLjEuPC9wPg0KICAgIDxwPk5vdyByZXF1aXJlIEZFVXNlcnMgMS4xLjMgKG1pbmltdW0pPC9wPg0KICAgIDxwPlN1cHBvcnQgZm9yIG11bHRpc2VsZWN0IGxpc3RzIGluIGZldXNlcnM8L3A+DQogICAgPHA+T3V0cHV0IHNvbWUgbW9yZSBmaWVsZHMgdG8gc21hcnR5IHRvIGFsbG93IGZvciBpbmNyZWFzZWQgYWNjZXNzaWJpbGl0eTwvcD4NCiAgICA8cD5TcGxpdCBjb2RlIG91dCBpbnRvIG11bHRpcGxlIGZpbGVzIHRvIHJlZHVjZSBvdmVyYWxsIG1lbW9yeSBmb290cHJpbnQ8L3A+DQo8L2xpPg0KPC91bD4nOwokbGFuZ1snaGVscCddID0gJzxoMz5XaGF0IERvZXMgVGhpcyBEbz88L2gzPg0KPHA+VGhpcyBtb2R1bGUgaXMgZGVzaWduZWQgdG8gYWxsb3cgZnJvbnQgZW5kIHVzZXJzIHRvIHJlZ2lzdGVyIHRoZW1zZWx2ZXMgYW5kIGZpbGwgaW4gdGhlIHJlcXVpcmVkIGluZm9ybWF0aW9uLiAgSXQgdGhlbiBzZW5kcyBhIGNvbmZpcm1hdGlvbiBlbWFpbCwgd2l0aCBhIGxpbmsgdG8gYSBzZWNvbmQgcGFnZSB0aGF0IG11c3QgYmUgY29tcGxldGVkIGJlZm9yZSB0aGUgcmVnaXN0cmF0aW9uIGlzIGNvbXBsZXRlLiAgT25jZSByZWdpc3RyYXRpb24gaXMgY29tcGxldGUsIGEgdXNlciBhY2NvdW50IGlzIGNyZWF0ZWQgaW4gdGhlIGZyb250IGVuZCB1c2VycyBtb2R1bGUuPC9wPg0KPHA+SW4gb3JkZXIgdG8gdXNlIHRoaXMgbW9kdWxlLCB5b3UgbXVzdCBjcmVhdGUgYSBwcm9wZXJ0eSBvZiB0eXBlICZxdW90O0VtYWlsIEFkZHJlc3MmcXVvdDsgaW4gdGhlIEZyb250ZW5kVXNlcnMgbW9kdWxlLCBhbmQgYXNzb2NpYXRlIHRoYXQgcHJvcGVydHkgd2l0aCB0aGUgZ3JvdXAgdG8gYmUgdXNlZCBmb3Igc2VsZiByZWdpc3RyYXRpb24uPC9wPg0KPGgzPkhvdyBEbyBJIFVzZSBJdDwvaDM+DQo8cD5Zb3UgcGxhY2UgdGhlIGZvbGxvd25nIHRhZyBpbnRvIHlvdXIgcGFnZSB7Y21zX21vZHVsZSBtb2R1bGU9U2VsZlJlZ2lzdHJhdGlvbiBncm91cD11c2VyZ3JvdXB9PC9wPg0KPHA+WW91IG11c3QgaGF2ZSBwcmV2aW91c2x5IGNyZWF0ZWQgcHJvcGVydGllcyBhbmQgdXNlciBncm91cHMgaW4gdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlIGluIG9yZGVyIGZvciB0aGlzIHRvIHdvcmsgcHJvcGVybHkuPC9wPg0KPGgzPlBhcmFtZXRlcnM8L2gzPg0KPHA+PHN0cm9uZz5tb2RlPC9zdHJvbmc+Jm5ic3A7PGVtPm9wdGlvbmFsPC9lbT4gLSBwb3NzaWJsZSB2YWx1ZXMgYXJlICZxdW90O3NpZ251cCZxdW90OyBhbmQgJnF1b3Q7dmVyaWZ5JnF1b3Q7LiAgSWYgdGhpcyBwYXJhbWV0ZXIgaXMgbm90IHNwZWNpZmllZCwgJnF1b3Q7c2lnbnVwJnF1b3Q7IGlzIGFzc3VtYmVkLjwvcD4NCjxwPjxzdHJvbmc+Z3JvdXA8L3N0cm9uZz4mbmJzcDs8ZW0+b3B0aW9uYWw8L2VtPiAtIFRoaXMgcGFyYW1ldGVyIGlzIHJlcXVpcmVkIGlmIG1vZGUgaXMgJnF1b3Q7c2lnbnVwJnF1b3Q7LCBvciBpZiBtb2RlIGlzIGxlZnQgZW1wdHkuPC9wPg0KPHA+PHN0cm9uZz5jYXB0Y2hhPC9zdHJvbmc+Jm5ic3A7PGVtPm9wdGlvbmFsPC9lbT4gLSBUaGlzIHdpbGwgZW5hYmxlIGNhcHRjaGEgb24gdGhlIHNpZ251cCBmb3JtLiBUaGUgQ2FwdGNoYSBtb2R1bGUgbXVzdCBiZSBpbnN0YWxsZWQgZm9yIHRoaXMgcGFyYW1ldGVyIHRvIHdvcmsuPC9wPg0KPGgzPlN1cHBvcnQ8L2gzPg0KPHA+VGhpcyBtb2R1bGUgZG9lcyBub3QgaW5jbHVkZSBjb21tZXJjaWFsIHN1cHBvcnQuIEhvd2V2ZXIsIHRoZXJlIGFyZSBhIG51bWJlciBvZiByZXNvdXJjZXMgYXZhaWxhYmxlIHRvIGhlbHAgeW91IHdpdGggaXQ6PC9wPg0KPHVsPg0KPGxpPkZvciB0aGUgbGF0ZXN0IHZlcnNpb24gb2YgdGhpcyBtb2R1bGUsIEZBUXMsIG9yIHRvIGZpbGUgYSBCdWcgUmVwb3J0IG9yIGJ1eSBjb21tZXJjaWFsIHN1cHBvcnQsIHBsZWFzZSB2aXNpdCBjYWxndXkmIzAzOTtzDQptb2R1bGUgaG9tZXBhZ2UgYXQgPGEgaHJlZj0mcXVvdDtodHRwOi8vdGVjaGNvbS5keW5kbnMub3JnJnF1b3Q7PnRlY2hjb20uZHluZG5zLm9yZzwvYT4uPC9saT4NCjxsaT5BZGRpdGlvbmFsIGRpc2N1c3Npb24gb2YgdGhpcyBtb2R1bGUgbWF5IGFsc28gYmUgZm91bmQgaW4gdGhlIDxhIGhyZWY9JnF1b3Q7aHR0cDovL2ZvcnVtLmNtc21hZGVzaW1wbGUub3JnJnF1b3Q7PkNNUyBNYWRlIFNpbXBsZSBGb3J1bXM8L2E+LjwvbGk+DQo8bGk+VGhlIGF1dGhvciwgY2FsZ3V5MTAwMCwgY2FuIG9mdGVuIGJlIGZvdW5kIGluIHRoZSA8YSBocmVmPSZxdW90O2lyYzovL2lyYy5mcmVlbm9kZS5uZXQvI2NtcyZxdW90Oz5DTVMgSVJDIENoYW5uZWw8L2E+LjwvbGk+DQo8bGk+TGFzdGx5LCB5b3UgbWF5IGhhdmUgc29tZSBzdWNjZXNzIGVtYWlsaW5nIHRoZSBhdXRob3IgZGlyZWN0bHkuPC9saT4gIA0KPC91bD4NCjxwPkFzIHBlciB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIHByb3ZpZGVkIGFzLWlzLiBQbGVhc2UgcmVhZCB0aGUgdGV4dA0Kb2YgdGhlIGxpY2Vuc2UgZm9yIHRoZSBmdWxsIGRpc2NsYWltZXIuPC9wPg0KDQo8aDM+Q29weXJpZ2h0IGFuZCBMaWNlbnNlPC9oMz4NCjxwPkNvcHlyaWdodCAmY29weTsgMjAwNSwgUm9iZXJ0IENhbXBiZWwgPGEgaHJlZj0mcXVvdDttYWlsdG86Y2FsZ3V5MTAwMEBob3RtYWlsLmNvbSZxdW90Oz48Y2FsZ3V5MTAwMEBob3RtYWlsLmNvbT48L2E+LiBBbGwgUmlnaHRzIEFyZSBSZXNlcnZlZC48L3A+DQo8cD5UaGlzIG1vZHVsZSBoYXMgYmVlbiByZWxlYXNlZCB1bmRlciB0aGUgPGEgaHJlZj0mcXVvdDtodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwmcXVvdDs+R05VIFB1YmxpYyBMaWNlbnNlPC9hPi4gWW91IG11c3QgYWdyZWUgdG8gdGhpcyBsaWNlbnNlIGJlZm9yZSB1c2luZyB0aGUgbW9kdWxlLjwvcD4NCic7CiRsYW5nWyd1dG16J10gPSAnMTU2ODYxMzUzLjExODk4MTEwMzkuMTA1LjYudXRtY2NuPShyZWZlcnJhbCl8dXRtY3NyPW1pbGhhdXMud2lraWRvdC5jb218dXRtY2N0PS9wcnV6a3VtLWRvbW92c2t5Y2gtc3RyYW5lay1jbXN8dXRtY21kPXJlZmVycmFsJzsKJGxhbmdbJ3V0bWEnXSA9ICcxNTY4NjEzNTMuMTYwODg1NTIxMC4xMTY3OTA4MTA5LjExOTAwNDUwOTcuMTE5MDA1MDI2OC4xMTInOwokbGFuZ1sndXRtYyddID0gJzE1Njg2MTM1Myc7Cj8+]]></data>
	</file>
	<file>
	  <filename>/lang/ext/da_DK.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2Vycm9yX2NvZGVzZG9udG1hdGNoJ10gPSAnVGhlIHZhbGlkYXRpb24ga2V5IHN1cHBsaWVkIGlzIGludmFsaWQnOwokbGFuZ1snZXZlbnRfZGVzY3JpcHRpb25fb25OZXdVc2VyJ10gPSAnRW4gYmVnaXZlbmhlZCwgZGVyIGluZGlrZXJlciBhdCBlbiBueSBicnVnZXIgaGFyIHVkZnlsZHQgcmVnaXN0cmVyaW5nc2JsYW5rZXR0ZW4nOwokbGFuZ1snZXZlbnRfZGVzY3JpcHRpb25fb25Vc2VyUmVnaXN0ZXJlZCddID0gJ0VuIGJlZ2l2ZW5oZWQsIGRlciBpbmRpa2VyZXIgYXQgZW4gYnJ1Z2VyIGhhciB2ZXJpZmljZXJldCBzaW4gaW5mb3JtYXRpb24gb2cgaGFyIGZ1bGR0ZW5kdCByZWdpc3RyZXJpbmdlbic7CiRsYW5nWydldmVudF9oZWxwX29uTmV3VXNlciddID0gJzxwPkVuIGJlZ2l2ZW5oZWQsIGRlciBpbmRpa2VyZXIgYXQgZW4gbnkgYnJ1Z2VyIGhhciB1ZGZ5bGR0IHJlZ2lzdHJlcmluZ3NibGFua2V0dGVuPC9wPg0KPGg0PlBhcmFtZXRyZTwvaDQ+DQo8dWw+DQo8bGk+PGVtPmJydWdlcm5hdm48L2VtPiAtIEJydWdlcm5hdm4gdmFsZ3QgYWYgZGVuIG55ZSBicnVnZXI8L2xpPg0KPGxpPjxlbT5lbWFpbDwvZW0+IC0gRGVuIG55ZSBicnVnZXJzIGVtYWlsIGFkcmVzc2U8L2xpPg0KPC91bD4NCic7CiRsYW5nWydldmVudF9oZWxwX29uVXNlclJlZ2lzdGVyZWQnXSA9ICc8cD5FbiBiZWdpdmVuaGVkLCBkZXIgaW5kaWtlcmVyIGF0IGVuIGJydWdlciBlciBibGV2ZXQgdmVyaWZpY2VyZXQgb2cgbnUgZXIgcmVnaXN0cmVyZXQgc29tIGZyb250IGVuZCBicnVnZXI8L3A+DQo8aDQ+UGFyYW1ldHJlPC9oND4NCjx1bD4NCjxsaT48ZW0+YnJ1Z2VybmF2bjwvZW0+IC0gRGV0IHJlZ2lzdHJlcmVkZSBicnVnZXJuYXZuPC9saT4NCjwvdWw+DQonOwokbGFuZ1snY29uZmlybV9zdWJtaXRwcmVmcyddID0gJ0NoYW5nZSBhZG1pbiBwcmVmZXJlbmNlcz8nOwokbGFuZ1snaW5mb19hZG1pbl9wYXNzd29yZCddID0gJ0xhZCBkZXR0ZSBmZWx0IHYmYWVsaWc7cmUgdG9tdCBmb3IgYXQgYmV2YXJlIGJydWdlcmVucyBrb2Rlb3JkJzsKJGxhbmdbJ2luZm9fYWRtaW5fcmVwZWF0cGFzc3dvcmQnXSA9ICdMYWQgZGV0dGUgZmVsdCB2JmFlbGlnO3JlIHRvbXQgZm9yIGF0IGJldmFyZSBicnVnZXJlbnMga29kZW9yZCc7CiRsYW5nWydlcnJvcl9lbWFpbGRvZXNub3RtYXRjaCddID0gJ0VtYWlsIGFkcmVzc2VyIGVyIGlra2UgZW5zJzsKJGxhbmdbJ2ZvcmNlX2VtYWlsX3R3aWNlJ10gPSAnS3ImYWVsaWc7diBhdCBicnVnZXJlIGluZHRhc3RlciBkZXJlcyBlbWFpbGFkcmVzc2UgdG8gZ2FuZ2UnOwokbGFuZ1snYWdhaW4nXSA9ICdpZ2VuJzsKJGxhbmdbJ2RlbGV0ZXNlbHVzZXJzJ10gPSAnU2xldCB2YWxndGUgYnJ1Z2VyZSc7CiRsYW5nWydlcnJvcl9ub3Byb3BkZWZucyddID0gJ05vIHByb3BlcnR5IGRlZmluaXRpb25zLCBvciBwcm9ibGVtIHJldHJlaXZpbmcgdGhlbSBmcm9tIHRoZSBkYXRhYmFzZSc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcyddID0gJ0luZ2VuIGdydXBwZXIgZWxsZXIgcHJvYmxlbWVyIG1lZCBhdCBoZW50ZSBncnVwcGVvdmVyc2lndCc7CiRsYW5nWydlcnJvcl9kYmVycm9yJ10gPSAnRmVqbCBpIGRhdGFiYXNlbic7CiRsYW5nWyd0aXRsZV9wb3N0X3NlbmRhbm90aGVyZW1haWxfdGVtcGxhdGUnXSA9ICdQb3N0IExvc3QgRW1haWwgVGVtcGxhdGUnOwokbGFuZ1sndGl0bGVfc2VuZGFub3RoZXJlbWFpbF90ZW1wbGF0ZSddID0gJ0xvc3QgRW1haWwgVGVtcGxhdGUnOwokbGFuZ1snY2xpY2toZXJlJ10gPSAnS2xpayBoZXInOwokbGFuZ1snbXNnX3NlbmRhbm90aGVyZW1haWwnXSA9ICdKZWcgaGFyIGFsbGVyZWRlIHVkZnlsZHQgcmVnaXN0cmVyaW5nc2JsYW5rZXR0ZW4sIG1lbiBqZWcgaGFyIGlra2UgbW9kdGFnZXQgZW4gZW1haWwuIFZpbCBJIHZlbmxpZ3N0IHNlbmRlIGRlbiBpZ2VuPyc7CiRsYW5nWydzZW5kYW5vdGhlcmVtYWlsX3RlbXBsYXRlJ10gPSAnTG9zdCBFbWFpbCBUZW1wbGF0ZSc7CiRsYW5nWydpbmZvX3VzZXJ2ZXJpZmllZCddID0gJ0VuIG55IGJydWdlciBlciBibGV2ZXQgdGlsZiZvc2xhc2g7amV0IEZyb250RW5kQnJ1Z2VyZSc7CiRsYW5nWydlZGl0J10gPSAnUmV0JzsKJGxhbmdbJ3Vua25vd24nXSA9ICdVa2VuZHQnOwokbGFuZ1snc2VsZWN0J10gPSAnViZhZWxpZztsZyc7CiRsYW5nWydjaGVja19hbGwnXSA9ICdNYXJrZXIgYWxsZSc7CiRsYW5nWyd1bmNoZWNrX2FsbCddID0gJ0ZqZXJuIG1hcmtlcmluZyBmcmEgYWxsZSc7CiRsYW5nWydzZW5kX2FkanVzdG1lbnRlbWFpbCddID0gJ1NlbmQgZW4gZW1haWwgdGlsIGJydWdlcmVuJzsKJGxhbmdbJ3R4dF9hZGp1c3RtZW50ZW1haWwnXSA9ICcoaW5mb3JtZXJlciBicnVnZXJlbiBvbSBhdCBoYW5zIGtvbnRvIGVyIGJsZXZldCAmYWVsaWc7bmRyZXQpJzsKJGxhbmdbJ3R4dF9jaGFuZ2VwYXNzd29yZCddID0gJ1VkZnlsZCBkaXNzZSBmZWx0ZXIgZm9yIGF0ICZhZWxpZztuZHJlIGJydWdlcmVucyBrb2Rlb3JkJzsKJGxhbmdbJ2VkaXR1c2VyJ10gPSAnUmVkaWdlciBicnVnZXInOwokbGFuZ1snYXJleW91c3VyZV9kZWxldGV1c2VyJ10gPSAnRXIgZHUgc2lra2VyIHAmYXJpbmc7IGF0IGR1IHZpbCBzbGV0dGUgZGVubmUgZGVsdmlzdCBvcHJldHRlZGUgYnJ1Z2VyPyc7CiRsYW5nWydoZHJfdXNlcmlkJ10gPSAnQnJ1Z2VySUQnOwokbGFuZ1snaGRyX3VzZXJuYW1lJ10gPSAnQnJ1Z2VybmF2bic7CiRsYW5nWydoZHJfZ3JwbmFtZSddID0gJ0dydXBwZSc7CiRsYW5nWydoZHJfY3JlYXRlZCddID0gJ09wcmV0dGV0JzsKJGxhbmdbJ2hkcl9lbWFpbCddID0gJ0VtYWlsJzsKJGxhbmdbJ3VzZXJzZm91bmQnXSA9ICdGdW5kbmUgYnJ1Z2VyZSAoYmVnciZhZWxpZztuc2V0IHRpbCBtYXggMjUwKSc7CiRsYW5nWyd1c2VycyddID0gJ0JydWdlcmUnOwokbGFuZ1snbGlzdDFkYXknXSA9ICdWaXMgYWxsZSBpbmRsJmFlbGlnO2csIGRlciBlciBtZXJlIGVuZCBlbiBkYWcgZ2FtbGUnOwokbGFuZ1snc3ViamVjdCddID0gJ0VtbmUgZm9yIHVkZyZhcmluZztlbmRlIG1haWwnOwokbGFuZ1snaHRtbGJvZHknXSA9ICdIVE1MIG1lc3NhZ2UgYm9keSc7CiRsYW5nWyd0ZXh0Ym9keSddID0gJ1RleHQgbWVzc2FnZSBib2R5JzsKJGxhbmdbJ3Byb21wdF9udW1yZXNldHJlY29yZCddID0gJ0EgbnVtYmVyIG9mIHVzZXJzIGFyZSBpbiB0aGUgbWlkZGxlIG9mIHJlZ2lzdGVyaW5nLiAgQ3VycmVudGx5IHRoaXMgY291bnQgaXMgYXQ6JzsKJGxhbmdbJ3JlbW92ZTF3ZWVrJ10gPSAnU2xldCBhbGxlIGluZGwmYWVsaWc7ZywgZGVyIGVyIG1lcmUgZW5kIGVuIHVnZSBnYW1sZSc7CiRsYW5nWydyZW1vdmUxbW9udGgnXSA9ICdTbGV0IGFsbGUgaW5kbCZhZWxpZztnLCBkZXIgZXIgbWVyZSBlbmQgZW4gbSZhcmluZztuZWQgZ2FtbGUnOwokbGFuZ1sncmVtb3ZlMWRheSddID0gJ1NsZXQgYWxsZSBpbmRsJmFlbGlnO2csIGRlciBlciBtZXJlIGVuZCBlbiBkYWcgZ2FtbGUnOwokbGFuZ1sncmVtb3ZlYWxsJ10gPSAnU2xldCBhbGxlIGluZGwmYWVsaWc7Zyc7CiRsYW5nWydhcmV5b3VzdXJlJ10gPSAnRXIgZHUgc2lra2VyPyc7CiRsYW5nWydyZWdpc3RyYXRpb25faW5mb19lZGl0ZWQnXSA9ICdEaW5lIHJlZ2lzdHJlcmVkZSBvcGx5c25pbmdlciBlciBibGV2ZXQgJmFlbGlnO25kcmV0JzsKJGxhbmdbJ3JlZ2lzdHJhdGlvbl9jb25maXJtYXRpb24nXSA9ICdCZWtyJmFlbGlnO2Z0ZWxzZSBwJmFyaW5nOyByZWdpc3RyZXJpbmcnOwokbGFuZ1sndXNlcl9yZWdpc3RyYXRpb24nXSA9ICdSZWdpc3RyJmVhY3V0ZTtyJzsKJGxhbmdbJ2ZpbmFsbWVzc2FnZV90ZW1wbGF0ZSddID0gJ0ZpbmFsIE1lc3NhZ2UgVGVtcGxhdGUnOwokbGFuZ1sndGl0bGVfdmVyaWZ5cmVnaXN0cmF0aW9uJ10gPSAnVmVyaWZpY2VyIHJlZ2lzdHJlcmluZyc7CiRsYW5nWydjb2RlJ10gPSAnVmFsaWRhdGlvbiBLZXknOwokbGFuZ1snZGVmYXVsdCddID0gJ1NldCBUbyBEZWZhdWx0cyc7CiRsYW5nWydlcnJvcl9ub3Byb3BlcnRpZXMnXSA9ICdObyBwcm9wZXJ0aWVzIGZvdW5kIGZvciB0aGlzIHVzZXInOwokbGFuZ1snZXJyb3Jfbm9wcm9wcmVsYXRpb25zJ10gPSAnTm8gcHJvcGVydHkgcmVsYXRpb25zJzsKJGxhbmdbJ2Vycm9yX2VtYWlsaW52YWxpZCddID0gJ1VneWxkaWcgZW1haWwgYWRyZXNzZSc7CiRsYW5nWydlcnJvcl9ub2VtYWlsYWRkcmVzcyddID0gJ05vIHZhbGlkIGVtYWlsIGFkZHJlc3MgZmllbGQgZm91bmQnOwokbGFuZ1snZXJyb3JfcmVxdWlyZWRmaWVsZCddID0gJ0ZpZWxkICVzIG11c3QgYmUgZmlsbGVkIGluJzsKJGxhbmdbJ3JlZ2lzdHJhdGlvbjFfdGVtcGxhdGUnXSA9ICdSZWdpc3RyYXRpb24gVGVtcGxhdGUgMSc7CiRsYW5nWydyZWdpc3RyYXRpb24yX3RlbXBsYXRlJ10gPSAnUmVnaXN0cmF0aW9uIFRlbXBsYXRlIDInOwokbGFuZ1snZW1haWxjb25maXJtX3RlbXBsYXRlJ10gPSAnQ29uZmlybWF0aW9uIEVtYWlsIFRlbXBsYXRlJzsKJGxhbmdbJ2VtYWlsdXNlcmVkaXRlZF90ZW1wbGF0ZSddID0gJ1VzZXIgSW5mbyBDaGFuZ2VkIFRlbXBsYXRlJzsKJGxhbmdbJ3ByZWZlcmVuY2VzJ10gPSAnSW5kc3RpbGxpbmdlcic7CiRsYW5nWydlcnJvcl91c2Vybm90Zm91bmQnXSA9ICdCcnVnZXJlbiBibGV2IGlra2UgZnVuZGV0JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZSddID0gJ0JydWdlcm5hdm5ldCBlciB1Z3lsZGlndCAoZm9yIGxhbmd0LCBmb3Iga29ydCBlbGxlciBpbmRlaG9sZGVyIHVneWxkaWdlIGthcmFrdGVyZXIpLiBUaXAgLSBicnVnZXJuYXZuZSBtJmFyaW5nOyBrdW4gaW5kZWhvbGRlIGFscGhhbnVtZXJpc2tlIHRlZ24gKGluZ2VuIG1lbGxlbXJ1bSknOwokbGFuZ1snZXJyb3JfdXNlcm5hbWV0YWtlbiddID0gJ0RldCBicnVnZXJuYXZuIGVyIGFsbGVyZWRlIGkgYnJ1Zyc7CiRsYW5nWydlcnJvcl9wYXNzd29yZHNkb250bWF0Y2gnXSA9ICdGZWpsOiBLb2Rlb3JkIG1hdGNoZXIgaWtrZSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFzc3dvcmQnXSA9ICdLb2Rlb3JkZXQgZXIgaWtrZSBneWxkaWd0IChrb2Rlb3JkIHNrYWwgdiZhZWxpZztyZSBtZWxsZW0gJXMgb2cgJXMgdGVnbiknOwokbGFuZ1snZXJyb3JfZW1wdHl1c2VybmFtZSddID0gJ0ZlbHRldCBicnVnZXJuYXZuIGthbiBpa2tlIHYmYWVsaWc7cmUgdG9tdCc7CiRsYW5nWydyZXBlYXRwYXNzd29yZCddID0gJ0tvZGVvcmQgKGlnZW4pJzsKJGxhbmdbJ3Bhc3N3b3JkJ10gPSAnS29kZW9yZCc7CiRsYW5nWyd1c2VybmFtZSddID0gJ0JydWdlcm5hdm4nOwokbGFuZ1snY2FwdGNoYV90aXRsZSddID0gJ1Nrcml2IHRla3N0ZW4gZnJhIGJpbGxlZGV0JzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ0luc3VmZmljaWVudCBudW1iZXIgKG9yIGluY29ycmVjdCkgcGFyYW1ldGVycyBzdXBwbGllZCB0byBtb2R1bGUnOwokbGFuZ1snZXJyb3Jfbm9mZXVzZXJzbW9kdWxlJ10gPSAnQ291bGQgbm90IGdldCBpbnN0YW5jZSBvZiBGcm9udEVuZFVzZXJzIG1vZHVsZSc7CiRsYW5nWydlcnJvcl9ub3N1Y2hncm91cCddID0gJ0dyb3VwIG5hbWUgc3BlY2lmaWVkIGRvZXMgbm90IGV4aXN0JzsKJGxhbmdbJ2Vycm9yX2NhcHRjaGFtaXNtYXRjaCddID0gJ1Rla3N0ZW4gZnJhIGJpbGxlZGVyIGJsZXYgaWtrZSBza3JldmV0IGtvcnJla3QnOwokbGFuZ1snc2VuZF9lbWFpbHNfdG8nXSA9ICdFbWFpbHMgdmVkciZvc2xhc2g7cmVuZGUgcmVnaXN0cmVyaW5nIHNrYWwgc2VuZGVzIHRpbCc7CiRsYW5nWydyZXF1aXJlX2VtYWlsX2NvbmZpcm1hdGlvbiddID0gJ0tyJmFlbGlnO3YgYXQgYnJ1Z2VyZW4gYmVrciZhZWxpZztmdGVyIHJlZ2lzdHJlcmluZ2VuIHZpYSBlbWFpbCc7CiRsYW5nWydub3RpZnlfb25fcmVnaXN0cmF0aW9uJ10gPSAnU2VuZCBhbiBlbWFpbCBub3RpZmljYXRpb24gd2hlbiBzb21lb25lIHJlZ2lzdGVycyc7CiRsYW5nWydjYW5jZWwnXSA9ICdBbm51bGxlcic7CiRsYW5nWydzdWJtaXQnXSA9ICdJbmRzZW5kJzsKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ01vZHVsIHRpbCBzZWx2cmVnaXN0cmVyaW5nJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsJ10gPSAnSW5zdGFsbGF0aW9uIHN1Y2Nlc3NmdWxsLCBwbGVhc2UgcmVtZW1iZXIgdG8gc2V0IHRoZSAmcXVvdDtNb2RpZnkgU2VsZlJlZ2lzdHJhdGlvbiBTZXR0aW5ncyZxdW90OyBwZXJtaXNzaW9uLiAgSWYgdGhlIENhcHRjaGEgbW9kdWxlIGlzIGluc3RhbGxlZCwgdGhlbiBjYXB0Y2hhIGZ1bmN0aW9uYWxpdHkgaXMgZW5hYmxlZCBieSBkZWZhdWx0LiAgV2Ugc3Ryb25nbHkgcmVjY29tbWVuZCB0aGF0IHlvdSBpbnN0YWxsIHRoaXMgbW9kdWxlLiAgSWYgdGhlIENhcHRjaGEgbW9kdWxlIGlzIGluc3RhbGxlZCwgYW5kIHlvdSB3YW50IHRvIGRpc2FibGUgaXQsIHVzZSB0aGUgbm9jYXB0Y2hhIHBhcmFtIGluIHlvdXIgc2VsZnJlZ2lzdHJhdGlvbiB0YWcuJzsKJGxhbmdbJ3Bvc3R1bmluc3RhbGwnXSA9ICdNb2R1bCB0aWwgc2VsdnJlZ2lzdHJlcmluZyBlciBibGV2ZXQgYWZpbnN0YWxsZXJldC4gVmkgc2VzLi4uJzsKJGxhbmdbJ3VuaW5zdGFsbGVkJ10gPSAnTW9kdWwgYWZpbnN0YWxsZXJldCc7CiRsYW5nWydpbnN0YWxsZWQnXSA9ICdNb2R1bCB2ZXJzaW9uICVzIGVyIGluc3RhbGxlcmV0Lic7CiRsYW5nWydwcmVmc3VwZGF0ZWQnXSA9ICdNb2R1bGUgcHJlZmVyZW5jZXMgdXBkYXRlZC4nOwokbGFuZ1snYWNjZXNzZGVuaWVkJ10gPSAnQWRnYW5nIG4mYWVsaWc7Z3RldC4gQ2hlY2sgZGluZSB0aWxsYWRlbHNlci4nOwokbGFuZ1snZXJyb3InXSA9ICdGZWpsISc7CiRsYW5nWyd1cGdyYWRlZCddID0gJ01vZHVsIG9wZ3JhZGVyZXQgdGlsIHZlcnNpb24gJXMuJzsKJGxhbmdbJ3RpdGxlX21vZF9wcmVmcyddID0gJ01vZHVsZSBQcmVmZXJlbmNlcyc7CiRsYW5nWyd0aXRsZV9tb2RfYWRtaW4nXSA9ICdNb2R1bGUgQWRtaW4gUGFuZWwnOwokbGFuZ1sndGl0bGVfYWRtaW5fcGFuZWwnXSA9ICdTZWxmIFJlZ2lzdHJhdGlvbiBNb2R1bGUnOwokbGFuZ1snbW9kZGVzY3JpcHRpb24nXSA9ICdFdCBtb2R1bCwgZGVyIHRpbGxhZGVyIGJydWdlcmUgYXQgcmVnaXN0cmVyZSBkZW0gc2Vsdi4nOwokbGFuZ1snd2VsY29tZV90ZXh0J10gPSAnPHA+VmVsa29tbWVuIHRpbCBtb2R1bGV0IGZvciBzZWx2cmVnaXN0cmVyaW5nPC9wPic7CiRsYW5nWydjaGFuZ2Vsb2cnXSA9ICc8dWw+DQo8bGk+VmVyc2lvbiAwLjAuMS4gT2N0IDIwMDUuIEluaXRpYWwgTlJQVCAoTm90IFJlYWR5IGZvciBQcmltZSBUaW1lKSByZWxlYXNlLjwvbGk+DQo8bGk+VmVyc2lvbiAwLjEuMC4gT2N0IDIwMDUuIEluaXRpYWwgcmVsZWFzZS48L2xpPg0KPGxpPlZlcnNpb24gMC4xLjEuIE9jdCAyMDA1LiBTZXQgdGhlIEhUTUwgbWFpbCBmbGFnLjwvbGk+DQo8bGk+VmVyc2lvbiAwLjEuMi4gT2N0IDIwMDUuIE1vdmVkIFJhbmRvbSBzdHVmZiBpbnRvIGZldXNlcnMsIGFuZCBhZGRlZCB0aGUgYWJpbGl0eSB0byBkZWxldGUgb2xkIGVudHJpZXMgZnJvbSB0aGUgcmVnaXN0cmF0aW9uIHRlbXBvcmFyeSB0YWJsZXM8L2xpPg0KPGxpPjxwPlZlcnNpb24gMC4xLjMuIC0gRGVjIDIwMDU8L3A+DQo8cD5GaXhlZCB0aGUgdG9nZ2xlcyBpbiB0aGUgYWRtaW4gcHJlZmVyZW5jZXMuICBBbHNvLCBjaGFuZ2VkIHRoZSBwZXJtaXNzaW9ucyBtb2RlbCB0byBub3QgcmVxdWlyZSB0aGUgdW5pcXVlIHBlcm1pc3Npb24gYWRkZWQgcHJldmlvdXNseSBmb3IgdGhlIHNlbGZyZWcgbW9kdWxlLjwvcD4NCjxwPlRoaXMgcmVsZWFzZSB3YXMgcmVtb3ZlZCBkdWUgdG8gcG9zc2libGUgZXJyb3JzPC9wPg0KPC9saT4NCjxsaT48cD5WZXJzaW9uIDAuMS40LiAtIEphbiAyMDA2PC9wPg0KPHA+Rml4ZWQgbWlub3IgZXJyb3JzIHdpdGggQ2hlY2tQZXJtaXNzaW9uLCByZXBsYWNlZCBhbGwgYXNzaWduX2J5X3JlZnMmIzAzOTtzIHdpdGggYXNzaWducyBmb3IgaG9wZWZ1bCBwaHA1IGNvbXBhdGliaWxpdHkuPC9wPg0KPGxpPjxwPlZlcnNpb24gMC4xLjUuIC0gSmFuIDIwMDY8L3A+DQo8cD5BZGRlZCB0aGUgYWJpbGl0eSB0byBzZXQgdGhlIHN1YmplY3Qgb2YgdGhlIGNvbmZpcm1hdGlvbiBlbWFpbCwgYW5kIGFkZGVkIHRoZSBhYmlsaXR5IHRvIHNwZWNpZnkgYSB0ZXh0IGJvZHkuICBTdWJqZWN0LCBhbmQgdGV4dCBib2R5IGFyZSByZXF1aXJlZC48L3A+DQo8L2xpPg0KPGxpPjxwPlZlcnNpb24gMS4wLjAuIC0gRmViIDIwMDY8L3A+DQo8cD5GaXhlZCBhIHByb2JsZW0gd2l0aCB0aGUgdmVyaWZ5IG1vZGUuPC9wPg0KPHA+QWRkZWQgdGhlIGFiaWxpdHkgdG8gZWRpdCBhbmQgZGVsZXRlIHVzZXJzLiB3aXRoIHNlbGVjdGlvbiBvbiB0aGUgY2hlY2tib3hlcywgYW5kICZxdW90O2NoZWNrYWxsJnF1b3Q7PC9wPg0KPHA+Tm93IHJlcXVpcmUgRkVVc2VycyAwLjEuOCBhbmQgQ01TTWFpbGVyIDEuNzMuOTwvcD4NCjxwPkFkZGVkIGFub3RoZXIgdGFiIGZvciB0aGUgJnF1b3Q7eW91ciBzZXR0aW5ncyBoYXZlIGJlZW4gYWRqdXN0ZWQmcXVvdDsgZW1haWwgdGVtcGxhdGVzPC9wPg0KPHA+QWRkZWQgQ1NWIEV4cG9ydGluZzwvcD4NCjxwPkFkZGVkIGEgJnF1b3Q7RGVsZXRlIGFsbCB1c2VycyBvbGRlciB0aGFuIGEgZGF5JnF1b3Q7IGJ1dHRvbjwvcD4NCjxwPk5vdyB3b3JrcyB3aXRoIHRoZSBtYXhpbXVtIGxlbmd0aCBmaWVsZCBvZiBGRVVzZXJzPC9wPg0KPHA+QWRkZWQgc3VwcG9ydCBmb3IgZHJvcGRvd25zIGFuZCB0ZXh0IGFyZWFzPC9wPg0KPHA+RGlzYWxsb3cgcHVuY3R1YXRpb24gY2hhcmFjdGVycyBpbiB1c2VybmFtZTwvcD4NCjwvbGk+DQo8bGk+PHA+VmVyc2lvbiAxLjAuMS4gLSBGZWIgMjAwNjwvcD4NCjxwPkFkZGVkIHRoZSBhYmlsaXR5IGZvciB1c2VycyB0byByZXF1ZXN0IGFub3RoZXIgcmVnaXN0cmF0aW9uIGVtYWlsICh1c2VzIHRoZSBzYW1lIGNvZGUpLCBpbmNhc2UgdGhleSBsb3N0IHRoZWlyIGZpcnN0IG9uZS48L3A+DQo8L2xpPg0KPGxpPjxwPlZlcnNpb24gMS4wLjIuIC0gRmViIDIwMDY8L3A+DQo8cD5UaGUgJnF1b3Q7UmVxdWlyZSBlbWFpbCBjb25maXJtYXRpb24mcXVvdDsgY2hlY2tib3ggbm93IHdvcmtzLiAgVXNlcnMgYXJlIGFkZGVkIHN0cmFpZ2h0IHRvIHRoZSBmcm9udGVuZCB1c2VycyBkYXRhYmFzZTwvcD4NCjxwPkZpeGVkIGEgYnVnIHdpdGggdGhlIGNvbmZpcm1hdGlvbiBlbWFpbHMgaGF2aW5nIGxpbmtzIHRvIHRoZSBhZG1pbiBzZWN0aW9uIChuZXcgYnVnIG9ubHkpLjwvcD4NCjwvbGk+DQo8bGk+PHA+VmVyc2lvbiAxLjAuMy4gLSBGZWIgMjAwNjwvcD4NCjxwPkFkZGVkIHRoZSAob3B0aW9uYWwpIGFiaWxpdHkgdG8gcmVxdWlyZSB0aGUgdXNlciBlbnRlciB0aGUgZW1haWwgYWRkcmVzcyB0d2ljZTwvcD4NCjxwPkZpeGVkIGEgYnVnIHdpdGggdGhlIHVzZXJlZGl0ZWQgbWVzc2FnZSBub3QgYmVpbmcgdGhyb3duIHRocm91Z2ggc21hcnR5PC9wPg0KPHA+Rml4ZWQgdGhlIGRlZmF1bHQgcmVnaXN0cmF0aW9uIHRlbXBsYXRlIGEgYml0IHRvIGFpZGUgaW4gdmFsaWRhdGlvbiBmb3Igbm9uIHJlcXVpcmVkIGZpZWxkcyAoZml4ZWQgYSB3YXJuaW5nKTwvcD4NCjxwPkZpeCBwcm9ibGVtcyB3aXRoIGlubGluZSBhbmQgbm9uLWlubGluZSBmb3JtcyBhbmQgbGlua3M8L3A+DQo8cD5IYW5kbGUgYW5vdGhlciBjYXNlIHdoZXJlIHRoZSBhZG1pbiBtYXkgbm90IGhhdmUgY3JlYXRlZCB0aGUgcHJvcGVyIHR5cGUgb2YgZW1haWwgcHJvcGVydHk8L3A+DQo8cD5DaGFuZ2VkIHRvIHJlcXVpcmUgQ01TIDAuMTItYmV0YTIgYXQgYSBtaW5pbXVtIChmb3Igc2FmZXR5IHB1cnBvc2VzKTwvcD4NCjwvbGk+DQo8bGk+PHA+VmVyc2lvbiAxLjAuNC4gLSBNYXIgMjAwNjwvcD4NCjxwPk1vcmUgY29udHJvbCBvdmVyIHVzZXJuYW1lIGFuZCBwYXNzd29yZCBmaWVsZCBzaXplcyAoY29udHJvbGxlZCBieSBmZXVzZXJzKTwvcD4NCjxwPkNvbmZpcm1hdGlvbiBvbiBlZGl0aW5nIHByZWZlcmVuY2VzPC9wPg0KPHA+UmVxdWlyZSAwLjEyIHByb3BlciBvZiBjbXMgYXMgYSBtaW5pbXVtPC9wPg0KPC9saT4NCjxsaT48cD5WZXJzaW9uIDEuMS4wLiAtIERlYyAyMDA2PC9wPg0KICAgIDxwPkFkZGVkIGV2ZW50cyBhbmQgMS4wIGNvbXBhdGliaWxpdHk8L3A+DQogICAgPHA+Q2FwdGNoYSBzdXBwb3J0ICh0aGFua3MgRGl0dG1hbik8L3A+DQo8L2xpPg0KPGxpPjxwPlZlcnNpb24gMS4xLjEuIC0gQXByIDIwMDc8L3A+DQogICAgPHA+Tm93IHJlcXVpcmUgRkVVc2VycyAxLjIuMCAobWluaW11bSk8L3A+DQogICAgPHA+U3VwcG9ydCBmb3IgbXVsdGlzZWxlY3QgbGlzdHMgaW4gZmV1c2VyczwvcD4NCiAgICA8cD5PdXRwdXQgc29tZSBtb3JlIGZpZWxkcyB0byBzbWFydHkgdG8gYWxsb3cgZm9yIGluY3JlYXNlZCBhY2Nlc3NpYmlsaXR5PC9wPg0KICAgIDxwPlNwbGl0IGNvZGUgb3V0IGludG8gbXVsdGlwbGUgZmlsZXMgdG8gcmVkdWNlIG92ZXJhbGwgbWVtb3J5IGZvb3RwcmludDwvcD4NCiAgICA8cD5JZ25vcmUgYWxsIGltYWdlIGZpZWxkczwvcD4NCiAgICA8cD5DaGFuZ2UgQ2FwdGNoYSBzdXBwb3J0IHRvIGJlIG9uIGJ5IGRlZmF1bHQgaWYgdGhlIENhcHRjaGEgbW9kdWxlIGlzIGZvdW5kPC9wPg0KPC9saT4NCjwvdWw+JzsKJGxhbmdbJ2hlbHAnXSA9ICc8aDM+SHZhZCBnJm9zbGFzaDtyIGRldHRlIG1vZHVsPzwvaDM+DQo8cD5EZXR0ZSBtb2R1bCBlciBkZXNpZ25ldCB0aWwgYXQgdGlsbGFkZSBmcm9udCBlbmQgYnJ1Z2VyZSBhdCByZWdpc3RyZXJlIGRlbSBzZWx2IG9nIHVkZnlsZGUgZGVuIHAmYXJpbmc7a3ImYWVsaWc7dm5lIGluZm9ybWF0aW9uLiBEZXQgc2VuZGVyIGVuIGJla3ImYWVsaWc7ZnRlbHNlcyBlbWFpbCBtZWQgZXQgbGluayB0aWwgZW4gYW5kZW4gc2lkZSwgZGVyIHNrYWwgdWRmJm9zbGFzaDtyZXMgaW5kZW4gcmVnaXN0cmVyaW5nZW4gZXIgZnVsZGVuZHQuIE4mYXJpbmc7ciByZWdpc3RyZXJpbmdlbiBlciBmdWxkdGVuZHQgdmlsIGRlciBibGl2ZXIgb3ByZXR0ZXQgZW4gYnJ1Z2Vya29udG8gaSBmcm9udCBlbmQgYnJ1Z2VyIG1vZHVsZXQuPC9wPg0KPHA+Rm9yIGF0IGJydWdlIGRldHRlIG1vZHVsIHNrYWwgZHUgb3ByZXR0ZSBlbiBlZ2Vuc2thYiBtZWQgdHlwZW4gJnF1b3Q7RW1haWwgQWRkcmVzcyZxdW90OyBpIEZyb250ZW5kVXNlcnMgbW9kdWxldCBvZyBhc3NvY2llcmUgZGVuIGVnZW5za2FiIG1lZCBncnVwcGVuLCBkZXIgc2thbCBicnVnZXMgdGlsIHNlbHZyZWdpc3RyZXJpbmcuPC9wPg0KPGgzPkh2b3JkYW4gYnJ1Z2VyIGplZyBkZXQ8L2gzPg0KPHA+RHUgcGxhY2VyZXIgZiZvc2xhc2g7bGdlbmRlIHRhZyBwJmFyaW5nOyBkaW4gc2lkZSB7Y21zX21vZHVsZSBtb2R1bGU9U2VsZlJlZ2lzdHJhdGlvbiBncm91cD11c2VyZ3JvdXB9PC9wPg0KPHA+RHUgc2thbCBpbmRlbiBkYSBoYXZlIG9wcmV0dGV0IGVnZW5za2FiZXIgb2cgYnJ1Z2VyZ3J1cHBlciBpIEZyb250RW5kVXNlcnMgbW9kdWxldCBmb3IgYXQgZGV0dGUgdmlsIHZpcmtlIGtvcnJla3QuPC9wPg0KPGgzPlBhcmFtZXRyZTwvaDM+DQo8cD48c3Ryb25nPm1vZGU8L3N0cm9uZz4mbmJzcDs8ZW0+b3B0aW9uYWw8L2VtPiAtIG11bGlnZSB2JmFlbGlnO3JkaWVyIGVyICZxdW90O3NpZ251cCZxdW90OyBvZyAmcXVvdDt2ZXJpZnkmcXVvdDsuICBIdmlzIGRldHRlIHBhcmFtZXRlciBpa2tlIGVyIHNwZWNpZmljZXJldCwgdmlsICZxdW90O3NpZ251cCZxdW90OyBibGl2ZSB2YWxndC48L3A+DQo8cD48c3Ryb25nPmdyb3VwPC9zdHJvbmc+Jm5ic3A7PGVtPm9wdGlvbmFsPC9lbT4gLSBEZXR0ZSBwYXJhbWV0ZXIgZXIgcCZhcmluZztrciZhZWxpZzt2ZXQgaHZpcyBtb2RlIGVyICZxdW90O3NpZ251cCZxdW90OyBlbGxlciBodmlzIG1vZGUgZXIgdG9tLjwvcD4NCjxwPjxzdHJvbmc+bm9jYXB0Y2hhPC9zdHJvbmc+Jm5ic3A7PGVtPm9wdGlvbmFsPC9lbT4gLSBEZXR0ZSB2aWwgc2wmYXJpbmc7IGNhcHRjaGEgZnJhIHAmYXJpbmc7IHNpZ251cCBmb3JtdWxhcmVuLiBIdmlzIENhcHRjaGEgbW9kdWxldCBlciBpbnN0YWxsZXJldCB2aWwgY2FwdGNoYSBzdXBwb3J0IHYmYWVsaWc7cmUgc3RhbmRhcmQuICBEZXR0ZSBwYXJhbWV0ZXIgc2wmYXJpbmc7ciBkZXQgZnJhLjwvcD4NCjxoMz5TdXBwb3J0PC9oMz4NCjxwPkRldHRlIG1vZHVsIGlua2x1ZGVyZXIgaWtrZSBrb21tZXJjaWVsIHN1cHBvcnQuIERlciBhbGxpZ2V2ZWwgZm9yc2tlbGxpZ2UgcmVzc291cmNlciB0aWxnJmFlbGlnO25nZWxpZ2UsIGRlciBrYW4gaGomYWVsaWc7bHBlIGRpZyBtZWQgZGV0OjwvcD4NCjx1bD4NCjxsaT5Gb3IgdGhlIGxhdGVzdCB2ZXJzaW9uIG9mIHRoaXMgbW9kdWxlLCBGQVFzLCBvciB0byBmaWxlIGEgQnVnIFJlcG9ydCBvciBidXkgY29tbWVyY2lhbCBzdXBwb3J0LCBwbGVhc2UgdmlzaXQgY2FsZ3V5JiMwMzk7cw0KbW9kdWxlIGhvbWVwYWdlIGF0IDxhIGhyZWY9JnF1b3Q7aHR0cDovL3RlY2hjb20uZHluZG5zLm9yZyZxdW90Oz50ZWNoY29tLmR5bmRucy5vcmc8L2E+LjwvbGk+DQo8bGk+QWRkaXRpb25hbCBkaXNjdXNzaW9uIG9mIHRoaXMgbW9kdWxlIG1heSBhbHNvIGJlIGZvdW5kIGluIHRoZSA8YSBocmVmPSZxdW90O2h0dHA6Ly9mb3J1bS5jbXNtYWRlc2ltcGxlLm9yZyZxdW90Oz5DTVMgTWFkZSBTaW1wbGUgRm9ydW1zPC9hPi48L2xpPg0KPGxpPlRoZSBhdXRob3IsIGNhbGd1eTEwMDAsIGNhbiBvZnRlbiBiZSBmb3VuZCBpbiB0aGUgPGEgaHJlZj0mcXVvdDtpcmM6Ly9pcmMuZnJlZW5vZGUubmV0LyNjbXMmcXVvdDs+Q01TIElSQyBDaGFubmVsPC9hPi48L2xpPg0KPGxpPkxhc3RseSwgeW91IG1heSBoYXZlIHNvbWUgc3VjY2VzcyBlbWFpbGluZyB0aGUgYXV0aG9yIGRpcmVjdGx5LjwvbGk+ICANCjwvdWw+DQo8cD5BcyBwZXIgdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBwcm92aWRlZCBhcy1pcy4gUGxlYXNlIHJlYWQgdGhlIHRleHQNCm9mIHRoZSBsaWNlbnNlIGZvciB0aGUgZnVsbCBkaXNjbGFpbWVyLjwvcD4NCg0KPGgzPkNvcHlyaWdodCBhbmQgTGljZW5zZTwvaDM+DQo8cD5Db3B5cmlnaHQgJmNvcHk7IDIwMDUsIFJvYmVydCBDYW1wYmVsIDxhIGhyZWY9JnF1b3Q7bWFpbHRvOmNhbGd1eTEwMDBAaG90bWFpbC5jb20mcXVvdDs+PGNhbGd1eTEwMDBAaG90bWFpbC5jb20+PC9hPi4gQWxsIFJpZ2h0cyBBcmUgUmVzZXJ2ZWQuPC9wPg0KPHA+VGhpcyBtb2R1bGUgaGFzIGJlZW4gcmVsZWFzZWQgdW5kZXIgdGhlIDxhIGhyZWY9JnF1b3Q7aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMJnF1b3Q7PkdOVSBQdWJsaWMgTGljZW5zZTwvYT4uIFlvdSBtdXN0IGFncmVlIHRvIHRoaXMgbGljZW5zZSBiZWZvcmUgdXNpbmcgdGhlIG1vZHVsZS48L3A+DQonOwokbGFuZ1sndXRtYSddID0gJzE1Njg2MTM1My44MTk1MTMwMjcuMTE4NjY2NDIxOC4xMTg2NjY0MjE4LjExODY5ODIwMzYuMic7CiRsYW5nWyd1dG16J10gPSAnMTU2ODYxMzUzLjExODY2NjQyMTguMS4xLnV0bWNjbj0ocmVmZXJyYWwpfHV0bWNzcj1zdnIudGVjaGNvbS5keW5kbnMub3JnfHV0bWNjdD0vaW5kZXgucGhwfHV0bWNtZD1yZWZlcnJhbCc7CiRsYW5nWyd1dG1jJ10gPSAnMTU2ODYxMzUzJzsKPz4=]]></data>
	</file>
	<file>
	  <filename>/lang/ext/de_DE.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2Vycm9yX2NvZGVzZG9udG1hdGNoJ10gPSAnRGVyIGVpbmdlZ2ViZW5lICZVdW1sO2JlcnByJnV1bWw7ZnVuZ3NzY2hsJnV1bWw7c3NlbCBpc3QgdW5nJnV1bWw7bHRpZyc7CiRsYW5nWydldmVudF9kZXNjcmlwdGlvbl9vbk5ld1VzZXInXSA9ICdBdXNmJnV1bWw7aHJlbiwgd2VubiBlaW4gQmVudXR6ZXIgZGFzIFJlZ2lzdHJpZXJ1bmdzZm9ybXVsYXIgdm9sbHN0JmF1bWw7bmRpZyBhdXNnZWYmdXVtbDtsbHQgaGF0JzsKJGxhbmdbJ2V2ZW50X2Rlc2NyaXB0aW9uX29uVXNlclJlZ2lzdGVyZWQnXSA9ICdBdXNmJnV1bWw7aHJlbiwgd2VubiBlaW4gQmVudXR6ZXIgc2VpbmUgRGF0ZW4gJnV1bWw7YmVycHImdXVtbDtmdCBoYXQgdW5kIGpldHp0IHZvbGxzdCZhdW1sO25kaWcgcmVnaXN0cmllcnQgaXN0JzsKJGxhbmdbJ2V2ZW50X2hlbHBfb25OZXdVc2VyJ10gPSAnPHA+QXVzZiZ1dW1sO2hyZW4sIHdlbm4gZWluIEJlbnV0emVyIGRhcyBSZWdpc3RyaWVydW5nc2Zvcm11bGFyIHZvbGxzdCZhdW1sO25kaWcgYXVzZ2VmJnV1bWw7bGx0IGhhdDwvcD4NCjxoND5QYXJhbWV0ZXI8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gTmFtZSBkZXMgbmV1ZW4gQmVudXR6ZXJzPC9saT4NCjxsaT48ZW0+ZW1haWw8L2VtPiAtIEVtYWlsYWRyZXNzZSBkZXMgbmV1ZW4gQmVudXR6ZXJzPC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaGVscF9vblVzZXJSZWdpc3RlcmVkJ10gPSAnPHA+QXVzZiZ1dW1sO2hyZW4sIHdlbm4gZWluIEJlbnV0emVyIHNlaW5lIERhdGVuICZ1dW1sO2JlcnByJnV1bWw7ZnQgaGF0IHVuZCBqZXR6dCB2b2xsc3QmYXVtbDtuZGlnIHJlZ2lzdHJpZXJ0IGlzdDwvcD4NCjxoND5QYXJhbWV0ZXI8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gZGVyIHJlZ2lzdHJpZXJ0ZSBCZW51dHplcm5hbWU8L2xpPg0KPC91bD4NCic7CiRsYW5nWydjb25maXJtX3N1Ym1pdHByZWZzJ10gPSAnRGllIEFkbWluaXN0cmF0b3ItRWluc3RlbGx1bmdlbiAmYXVtbDtuZGVybj8nOwokbGFuZ1snaW5mb19hZG1pbl9wYXNzd29yZCddID0gJ0xhc3NlbiBTaWUgZGllc2VzIEZlbGQgbGVlciwgdW0gZGFzIEJlbnV0emVyLVBhc3N3b3J0IGJlaXp1YmVoYWx0ZW4uJzsKJGxhbmdbJ2luZm9fYWRtaW5fcmVwZWF0cGFzc3dvcmQnXSA9ICdMYXNzZW4gU2llIGRpZXNlcyBGZWxkIGxlZXIsIHVtIGRhcyBCZW51dHplci1QYXNzd29ydCBiZWl6dWJlaGFsdGVuLic7CiRsYW5nWydlcnJvcl9lbWFpbGRvZXNub3RtYXRjaCddID0gJ0RpZSBFbWFpbGFkcmVzc2VuIHN0aW1tZW4gbmljaHQgJnV1bWw7YmVyZWluLic7CiRsYW5nWydmb3JjZV9lbWFpbF90d2ljZSddID0gJ0JlbnV0emVyIG0mdXVtbDtzc2VuIGlocmUgRW1haWxhZHJlc3NlIHp1ciBCZXN0JmF1bWw7dGlndW5nIGVpbiB6d2VpdGVzIE1hbCBlaW5nZWJlbi4nOwokbGFuZ1snYWdhaW4nXSA9ICdOb2NoIGVpbm1hbCc7CiRsYW5nWydkZWxldGVzZWx1c2VycyddID0gJ0RpZSBhdXNnZXcmYXVtbDtobHRlbiBCZW51dHplciBsJm91bWw7c2NoZW4nOwokbGFuZ1snZXJyb3Jfbm9wcm9wZGVmbnMnXSA9ICdLZWluZSBFaWdlbnNjaGFmdHNkZWZpbml0aW9uZW4sIG9kZXIgUHJvYmxlbWUgYmVpIGRlcmVuIEFicnVmIGF1cyBkZXIgRGF0ZW5iYW5rJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBzJ10gPSAnS2VpbmUgQmVudXR6ZXJncnVwcGVuLCBvZGVyIGVpbiBQcm9ibGVtIGJlaW0gQXVmZmluZGVuIGRlciBCZW51dHplcmdydXBwZW5saXN0ZSc7CiRsYW5nWydlcnJvcl9kYmVycm9yJ10gPSAnRGF0ZW5iYW5rZmVobGVyJzsKJGxhbmdbJ3RpdGxlX3Bvc3Rfc2VuZGFub3RoZXJlbWFpbF90ZW1wbGF0ZSddID0gJ05hY2hmb2xnZW5kZXMgVGVtcGxhdGUgYmVpIHZlcmxvcmVuZ2VnYW5nZW5lciBFbWFpbCc7CiRsYW5nWyd0aXRsZV9zZW5kYW5vdGhlcmVtYWlsX3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUgYmVpIHZlcmxvcmVuZ2VnYW5nZW5lciBFbWFpbCc7CiRsYW5nWydjbGlja2hlcmUnXSA9ICdIaWVyIGtsaWNrZW4nOwokbGFuZ1snbXNnX3NlbmRhbm90aGVyZW1haWwnXSA9ICdJY2ggaGFiZSBkYXMgUmVnaXN0cmllcnVuZ3Nmb3JtdWxhciBiZXJlaXRzIHZvbGxzdCZhdW1sO25kaWcgYXVzZ2VmJnV1bWw7bGx0LCBoYWJlIGFiZXIgbm9jaCBrZWluZSBFbWFpbCBiZWtvbW1lbi4gSyZvdW1sO25uZW4gU2llIG1pciBkaWVzZSBub2NoIGVpbm1hbCBzZW5kZW4/JzsKJGxhbmdbJ3NlbmRhbm90aGVyZW1haWxfdGVtcGxhdGUnXSA9ICdUZW1wbGF0ZSBiZWkgdmVybG9yZW5nZWdhbmdlbmVyIEVtYWlsJzsKJGxhbmdbJ2luZm9fdXNlcnZlcmlmaWVkJ10gPSAnRWluIG5ldWVyIEJlbnV0emVyIHd1cmRlIGltIEZyb250ZW5kVXNlcnMtTW9kdWwgaGluenVnZWYmdXVtbDtndC4nOwokbGFuZ1snZWRpdCddID0gJ0JlYXJiZWl0ZW4nOwokbGFuZ1sndW5rbm93biddID0gJ1VuYmVrYW5udCc7CiRsYW5nWydzZWxlY3QnXSA9ICdBdXN3JmF1bWw7aGxlbic7CiRsYW5nWydjaGVja19hbGwnXSA9ICdBbGxlIGF1ZiBcJnF1b3Q7JlV1bWw7YmVycHImdXVtbDtmdFwmcXVvdDsgc2V0emVuJzsKJGxhbmdbJ3VuY2hlY2tfYWxsJ10gPSAnQWxsZSBhdWYgXCZxdW90O05pY2h0ICZ1dW1sO2JlcnByJnV1bWw7ZnRcJnF1b3Q7IHNldHplbic7CiRsYW5nWydzZW5kX2FkanVzdG1lbnRlbWFpbCddID0gJ0VpbmUgRW1haWwgYW4gZGVuIEJlbnV0emVyIHNlbmRlbic7CiRsYW5nWyd0eHRfYWRqdXN0bWVudGVtYWlsJ10gPSAnKGluZm9ybWllcnQgZGVuIEJlbnV0emVyLCBkYXNzIHNlaW4gS29udG8ga29ycmlnaWVydCB3dXJkZSknOwokbGFuZ1sndHh0X2NoYW5nZXBhc3N3b3JkJ10gPSAnU2llIG0mdXVtbDtzc2VuIGRpZXNlIEZlbGRlciBhdXNmJnV1bWw7bGxlbiwgdW0gZGFzIEJlbnV0emVyLVBhc3N3b3J0IHp1ICZhdW1sO25kZXJuLic7CiRsYW5nWydlZGl0dXNlciddID0gJ0JlbnV0emVyIGJlYXJiZWl0ZW4nOwokbGFuZ1snYXJleW91c3VyZV9kZWxldGV1c2VyJ10gPSAnU2luZCBTaWUgc2ljaGVyLCBkYXNzIFNpZSBkaWVzZW4gdGVpbHdlaXNlIHJlZ2lzdHJpZXJ0ZW4gQmVudXR6ZXIgbCZvdW1sO3NjaGVuIHdvbGxlbj8nOwokbGFuZ1snaGRyX3VzZXJpZCddID0gJ0JlbnV0emVyLUlEJzsKJGxhbmdbJ2hkcl91c2VybmFtZSddID0gJ0JlbnV0emVybmFtZSc7CiRsYW5nWydoZHJfZ3JwbmFtZSddID0gJ0JlbnV0emVyZ3J1cHBlJzsKJGxhbmdbJ2hkcl9jcmVhdGVkJ10gPSAnRXJzdGVsbHQnOwokbGFuZ1snaGRyX2VtYWlsJ10gPSAnRW1haWwnOwokbGFuZ1sndXNlcnNmb3VuZCddID0gJ0JlbnV0emVyIGdlZnVuZGVuIChiZXNjaHImYXVtbDtua3QgYXVmIG1heGltYWwgMjUwIEJlbnV0emVybiknOwokbGFuZ1sndXNlcnMnXSA9ICdCZW51dHplcic7CiRsYW5nWydsaXN0MWRheSddID0gJ0FsbGUgRWludHImYXVtbDtnZSBhdWZsaXN0ZW4sIGRpZSAmYXVtbDtsdGVyIGFscyAxIFRhZyBzaW5kJzsKJGxhbmdbJ3N1YmplY3QnXSA9ICdCZXRyZWZmIGYmdXVtbDtyIGRpZSBhdXNnZWhlbmRlIEVtYWlsJzsKJGxhbmdbJ2h0bWxib2R5J10gPSAnSW5oYWx0IGRlciBIVE1MLU5hY2hyaWNodCc7CiRsYW5nWyd0ZXh0Ym9keSddID0gJ0luaGFsdCBkZXIgVGV4dC1OYWNocmljaHQnOwokbGFuZ1sncHJvbXB0X251bXJlc2V0cmVjb3JkJ10gPSAnQW56YWhsIHZvbiBCZW51dHplcm4sIGRpZSBpaHIgdmVybG9yZW4gZ2VnYW5nZW5lcyBQYXNzdyZvdW1sO3J0ZXIgenVyJnV1bWw7Y2tzZXR6ZW4gd29sbGVuLiBBa3R1ZWxsIHNpbmQgZGllczonOwokbGFuZ1sncmVtb3ZlMXdlZWsnXSA9ICdBbGxlIEVpbnRyJmF1bWw7Z2UgZW50ZmVybmVuLCBkaWUgJmF1bWw7bHRlciBhbHMgZWluZSBXb2NoZSBzaW5kJzsKJGxhbmdbJ3JlbW92ZTFtb250aCddID0gJ0FsbGUgRWludHImYXVtbDtnZSBlbnRmZXJuZW4sIGRpZSAmYXVtbDtsdGVyIGFscyBlaW4gTW9uYXQgc2luZCc7CiRsYW5nWydyZW1vdmUxZGF5J10gPSAnQWxsZSBFaW50ciZhdW1sO2dlIGVudGZlcm5lbiwgZGllICZhdW1sO2x0ZXIgYWxzIGVpbmVuIFRhZyBzaW5kJzsKJGxhbmdbJ3JlbW92ZWFsbCddID0gJ0FsbGUgRWludHImYXVtbDtnZSBlbnRmZXJuZW4nOwokbGFuZ1snYXJleW91c3VyZSddID0gJ1NpbmQgU2llIHNpY2hlcj8nOwokbGFuZ1sncmVnaXN0cmF0aW9uX2luZm9fZWRpdGVkJ10gPSAnSWhyZSBSZWdpc3RyaWVydW5nc2luZm9ybWF0aW9uIHd1cmRlIG1vZGlmaXppZXJ0Lic7CiRsYW5nWydyZWdpc3RyYXRpb25fY29uZmlybWF0aW9uJ10gPSAnUmVnaXN0cmllcnVuZ3NiZXN0JmF1bWw7dGlndW5nJzsKJGxhbmdbJ3VzZXJfcmVnaXN0cmF0aW9uJ10gPSAnUmVnaXN0cmllcmVuJzsKJGxhbmdbJ2ZpbmFsbWVzc2FnZV90ZW1wbGF0ZSddID0gJ1RlbXBsYXRlIGYmdXVtbDtyIEFic2NobHVzc25hY2hyaWNodCc7CiRsYW5nWyd0aXRsZV92ZXJpZnlyZWdpc3RyYXRpb24nXSA9ICdSZWdpc3RyaWVydW5nICZ1dW1sO2JlcnByJnV1bWw7ZmVuJzsKJGxhbmdbJ2NvZGUnXSA9ICcmVXVtbDtiZXJwciZ1dW1sO2Z1bmdzc2NobCZ1dW1sO3NzZWwnOwokbGFuZ1snZGVmYXVsdCddID0gJ0FscyBTdGFuZGFyZCBzZXR6ZW4nOwokbGFuZ1snZXJyb3Jfbm9wcm9wZXJ0aWVzJ10gPSAnS2VpbmUgRWlnZW5zY2hhZnRlbiBmJnV1bWw7ciBkaWVzZW4gQmVudXR6ZXIgZ2VmdW5kZW4nOwokbGFuZ1snZXJyb3Jfbm9wcm9wcmVsYXRpb25zJ10gPSAnS2VpbmUgQmV6aWVodW5nZW4genUgZGVyIEVpZ2Vuc2NoYWZ0JzsKJGxhbmdbJ2Vycm9yX2VtYWlsaW52YWxpZCddID0gJ1VuZyZ1dW1sO2x0aWdlIEVtYWlsYWRyZXNzZSc7CiRsYW5nWydlcnJvcl9ub2VtYWlsYWRkcmVzcyddID0gJ0tlaW4gZyZ1dW1sO2x0aWdlcyBBZHJlc3NmZWxkIGdlZnVuZGVuJzsKJGxhbmdbJ2Vycm9yX3JlcXVpcmVkZmllbGQnXSA9ICdEYXMgRmVsZCAlcyBtdXNzIGF1c2dlZiZ1dW1sO2xsdCB3ZXJkZW4nOwokbGFuZ1sncmVnaXN0cmF0aW9uMV90ZW1wbGF0ZSddID0gJ1JlZ2lzdHJpZXJ1bmdzLVRlbXBsYXRlIDEnOwokbGFuZ1sncmVnaXN0cmF0aW9uMl90ZW1wbGF0ZSddID0gJ1JlZ2lzdHJpZXJ1bmdzLVRlbXBsYXRlIDInOwokbGFuZ1snZW1haWxjb25maXJtX3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUgZiZ1dW1sO3IgZGllIEVtYWlsYmVzdCZhdW1sO3RpZ3VuZyc7CiRsYW5nWydlbWFpbHVzZXJlZGl0ZWRfdGVtcGxhdGUnXSA9ICdUZW1wbGF0ZSBmJnV1bWw7ciBnZSZhdW1sO25kZXJ0ZSBCZW51dHplci1JbmZvcm1hdGlvbmVuJzsKJGxhbmdbJ3ByZWZlcmVuY2VzJ10gPSAnRWluc3RlbGx1bmdlbic7CiRsYW5nWydlcnJvcl91c2Vybm90Zm91bmQnXSA9ICdCZW51dHplciBuaWNodCBnZWZ1bmRlbic7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXNlcm5hbWUnXSA9ICdEZXIgQmVudXR6ZXIgaXN0IHVuZyZ1dW1sO2x0aWcgKHp1IGxhbmcsIHp1IGt1cnogb2RlciBlbnRoJmF1bWw7bHQgdW5nJnV1bWw7bHRpZ2UgWmVpY2hlbikuDQo8Yj5IaW53ZWlzOjwvYj4gQmVudXR6ZXJuYW1lbiBkJnV1bWw7cmZlbiBudXIgYWxwaGFudW1lcmlzY2hlIFplaWNoZW4gZW50aGFsdGVuIChrZWluZSBMZWVyemVpY2hlbikhJzsKJGxhbmdbJ2Vycm9yX3VzZXJuYW1ldGFrZW4nXSA9ICdEaWVzZXIgQmVudXR6ZXJuYW1lIGlzdCBiZXJlaXRzIHZlcmdlYmVuISc7CiRsYW5nWydlcnJvcl9wYXNzd29yZHNkb250bWF0Y2gnXSA9ICdGRUhMRVI6IERpZSBQYXNzdyZvdW1sO3J0ZXIgc3RpbW1lbiBuaWNodCAmdXVtbDtiZXJlaW4hJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXNzd29yZCddID0gJ0RhcyBQYXNzd29ydCBpc3QgdW5nJnV1bWw7bHRpZyAoUGFzc3cmb3VtbDtydGVyIG0mdXVtbDtzc2VuICVzIGJpcyAlcyBaZWljaGVuIGxhbmcgc2VpbiknOwokbGFuZ1snZXJyb3JfZW1wdHl1c2VybmFtZSddID0gJ0RlciBCZW51dHplcm5hbWUgZGFyZiBuaWNodCBsZWVyIGdlbGFzc2VuIHdlcmRlbiEnOwokbGFuZ1sncmVwZWF0cGFzc3dvcmQnXSA9ICdQYXNzd29ydCAobm9jaCBlaW5tYWwpJzsKJGxhbmdbJ3Bhc3N3b3JkJ10gPSAnUGFzc3dvcnQnOwokbGFuZ1sndXNlcm5hbWUnXSA9ICdCZW51dHplcm5hbWUnOwokbGFuZ1snY2FwdGNoYV90aXRsZSddID0gJ0JpdHRlIGdlYmVuIFNpZSBkZW4gVGV4dCBhdXMgZGVtIEJpbGQgZWluJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ0RhcyBNb2R1bCB3dXJkZSBtaXQgdW52b2xsc3QmYXVtbDtuZGlnZW4gKG9kZXIgZmFsc2NoZW4pIFBhcmFtZXRlcm4gYXVmZ2VydWZlbiEnOwokbGFuZ1snZXJyb3Jfbm9mZXVzZXJzbW9kdWxlJ10gPSAnS29ubnRlIGtlaW5lIFZlcmJpbmR1bmcgenVtIEZyb250RW5kVXNlcnMtTW9kdWwgaGVyc3RlbGxlbiEnOwokbGFuZ1snZXJyb3Jfbm9zdWNoZ3JvdXAnXSA9ICdEaWVzZXIgR3J1cHBlbm5hbWUgZXhpc3RpZXJ0IG5pY2h0ISc7CiRsYW5nWydlcnJvcl9jYXB0Y2hhbWlzbWF0Y2gnXSA9ICdEZXIgYXVzIGRlbSBCaWxkIGVpbmdlZ2ViZW5lIFRleHQgd2FyIGZhbHNjaCc7CiRsYW5nWydzZW5kX2VtYWlsc190byddID0gJ0RpZSBSZWdpc3RyaWVydW5nc2VtYWlscyBzb2xsZW4gdmVyc2FuZHQgd2VyZGVuIGFuJzsKJGxhbmdbJ3JlcXVpcmVfZW1haWxfY29uZmlybWF0aW9uJ10gPSAnRXJmb3JkZXJ0LCBkYXNzIGRlciBCZW51dHplciBkaWUgUmVnaXN0cmllcnVuZyBwZXIgRW1haWwgYmVzdCZhdW1sO3RpZ3QnOwokbGFuZ1snbm90aWZ5X29uX3JlZ2lzdHJhdGlvbiddID0gJ0JlbmFjaHJpY2h0aWd1bmdzZW1haWwgdmVyc2VuZGVuLCB3ZW5uIHNpY2ggamVtYW5kIHJlZ2lzdHJpZXJ0JzsKJGxhbmdbJ2NhbmNlbCddID0gJ0FiYnJlY2hlbic7CiRsYW5nWydzdWJtaXQnXSA9ICdBYnNlbmRlbic7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdTZWxmUmVnaXN0cmF0aW9uLU1vZHVsJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsJ10gPSAnRGllIEluc3RhbGxhdGlvbiB3YXIgZXJmb2xncmVpY2guIEJpdHRlIGRlbmtlbiBTaWUgZGFyYW4sIGRpZSBCZXJlY2h0aWd1bmcgXCZxdW90O01vZGlmeSBTZWxmUmVnaXN0cmF0aW9uIFNldHRpbmdzXCZxdW90OyB6dSBzZXR6ZW4uIFdlbm4gZGFzIENhcHRjaGEtTW9kdWwgaW5zdGFsbGllcnQgaXN0LCBzdGVodCBJaG5lbiBkaWVzZSBGdW5rdGlvbmFsaXQmYXVtbDt0IHN0YW5kYXJkbSZhdW1sOyZzemxpZztpZyB6dXIgVmVyZiZ1dW1sO2d1bmcuIERpZSBWZXJ3ZW5kdW5nIGRpZXNlcyBNb2R1bHMgd2lyZCB6dXIgVmVybWVpZHVuZyB2b24gU3BhbSBkcmluZ2VuZCBlbXBmb2hsZW4uIFdlbm4gZGFzIENhcHRjaGEtTW9kdWwgaW5zdGFsbGllcnQgaXN0IHVuZCBTaWUgZXMgYWJlciBuaWNodCBpbiBWZXJiaW5kdW5nIG1pdCBkZW0gU2VsZlJlZ2lzdHJhdGlvbi1Nb2R1bCB2ZXJ3ZW5kZW4gbSZvdW1sO2NodGVuLCBtJnV1bWw7c3NlbiBTaWUgU2VsZlJlZ2lzdHJhdGlvbiBtaXQgZGVtIFBhcmFtZXRlciBub2NhcHRjaGEgYXVmcnVmZW4uJzsKJGxhbmdbJ3Bvc3R1bmluc3RhbGwnXSA9ICdEYXMgU2VsZlJlZ2lzdHJhdGlvbi1Nb2R1bCB3dXJkZSBlcmZvbGdyZWljaCBkZWluc3RhbGxpZXJ0Lic7CiRsYW5nWyd1bmluc3RhbGxlZCddID0gJ01vZHVsIGRlaW5zdGFsbGllcnQuJzsKJGxhbmdbJ2luc3RhbGxlZCddID0gJ01vZHVsdmVyc2lvbiAlcyBpbnN0YWxsaWVydC4nOwokbGFuZ1sncHJlZnN1cGRhdGVkJ10gPSAnTW9kdWxlaW5zdGVsbHVuZ2VuIGFrdHVhbGlzaWVydC4nOwokbGFuZ1snYWNjZXNzZGVuaWVkJ10gPSAnWnVncmlmZiB2ZXJ3ZWlnZXJ0LiBCaXR0ZSBwciZ1dW1sO2ZlbiBTaWUgSWhyZSBCZXJlY2h0aWd1bmdlbi4nOwokbGFuZ1snZXJyb3InXSA9ICdGZWhsZXIhJzsKJGxhbmdbJ3VwZ3JhZGVkJ10gPSAnTW9kdWwgYXVmIFZlcnNpb24gJXMgYWt0dWFsaXNpZXJ0Lic7CiRsYW5nWyd0aXRsZV9tb2RfcHJlZnMnXSA9ICdNb2R1bGVpbnN0ZWxsdW5nZW4nOwokbGFuZ1sndGl0bGVfbW9kX2FkbWluJ10gPSAnTW9kdWxhZG1pbmlzdHJhdGlvbic7CiRsYW5nWyd0aXRsZV9hZG1pbl9wYW5lbCddID0gJ1NlbGZSZWdpc3RyYXRpb24tTW9kdWwnOwokbGFuZ1snbW9kZGVzY3JpcHRpb24nXSA9ICdFaW4gTW9kdWwsIG1pdCB3ZWxjaGVtIHNpY2ggRnJvbnRFbmQtVXNlciBzZWxic3QgcmVnaXN0cmllcmVuIGsmb3VtbDtubmVuLic7CiRsYW5nWyd3ZWxjb21lX3RleHQnXSA9ICc8cD5XaWxsa29tbWVuIGJlaW0gU2VsZlJlZ2lzdHJhdGlvbi1Nb2R1bC48L3A+JzsKJGxhbmdbJ2NoYW5nZWxvZyddID0gJzx1bD4NCjxsaT5WZXJzaW9uIDAuMC4xLiBPY3QgMjAwNS4gSW5pdGlhbCBOUlBUIChOb3QgUmVhZHkgZm9yIFByaW1lIFRpbWUpIHJlbGVhc2UuPC9saT4NCjxsaT5WZXJzaW9uIDAuMS4wLiBPY3QgMjAwNS4gSW5pdGlhbCByZWxlYXNlLjwvbGk+DQo8bGk+VmVyc2lvbiAwLjEuMS4gT2N0IDIwMDUuIFNldCB0aGUgSFRNTCBtYWlsIGZsYWcuPC9saT4NCjxsaT5WZXJzaW9uIDAuMS4yLiBPY3QgMjAwNS4gTW92ZWQgUmFuZG9tIHN0dWZmIGludG8gZmV1c2VycywgYW5kIGFkZGVkIHRoZSBhYmlsaXR5IHRvIGRlbGV0ZSBvbGQgZW50cmllcyBmcm9tIHRoZSByZWdpc3RyYXRpb24gdGVtcG9yYXJ5IHRhYmxlczwvbGk+DQo8bGk+PHA+VmVyc2lvbiAwLjEuMy4gLSBEZWMgMjAwNTwvcD4NCjxwPkZpeGVkIHRoZSB0b2dnbGVzIGluIHRoZSBhZG1pbiBwcmVmZXJlbmNlcy4gIEFsc28sIGNoYW5nZWQgdGhlIHBlcm1pc3Npb25zIG1vZGVsIHRvIG5vdCByZXF1aXJlIHRoZSB1bmlxdWUgcGVybWlzc2lvbiBhZGRlZCBwcmV2aW91c2x5IGZvciB0aGUgc2VsZnJlZyBtb2R1bGUuPC9wPg0KPHA+VGhpcyByZWxlYXNlIHdhcyByZW1vdmVkIGR1ZSB0byBwb3NzaWJsZSBlcnJvcnM8L3A+DQo8L2xpPg0KPGxpPjxwPlZlcnNpb24gMC4xLjQuIC0gSmFuIDIwMDY8L3A+DQo8cD5GaXhlZCBtaW5vciBlcnJvcnMgd2l0aCBDaGVja1Blcm1pc3Npb24sIHJlcGxhY2VkIGFsbCBhc3NpZ25fYnlfcmVmc1wmIzAzOTtzIHdpdGggYXNzaWducyBmb3IgaG9wZWZ1bCBwaHA1IGNvbXBhdGliaWxpdHkuPC9wPg0KPGxpPjxwPlZlcnNpb24gMC4xLjUuIC0gSmFuIDIwMDY8L3A+DQo8cD5BZGRlZCB0aGUgYWJpbGl0eSB0byBzZXQgdGhlIHN1YmplY3Qgb2YgdGhlIGNvbmZpcm1hdGlvbiBlbWFpbCwgYW5kIGFkZGVkIHRoZSBhYmlsaXR5IHRvIHNwZWNpZnkgYSB0ZXh0IGJvZHkuICBTdWJqZWN0LCBhbmQgdGV4dCBib2R5IGFyZSByZXF1aXJlZC48L3A+DQo8L2xpPg0KPGxpPjxwPlZlcnNpb24gMS4wLjAuIC0gRmViIDIwMDY8L3A+DQo8cD5GaXhlZCBhIHByb2JsZW0gd2l0aCB0aGUgdmVyaWZ5IG1vZGUuPC9wPg0KPHA+QWRkZWQgdGhlIGFiaWxpdHkgdG8gZWRpdCBhbmQgZGVsZXRlIHVzZXJzLiB3aXRoIHNlbGVjdGlvbiBvbiB0aGUgY2hlY2tib3hlcywgYW5kIFwmcXVvdDtjaGVja2FsbFwmcXVvdDs8L3A+DQo8cD5Ob3cgcmVxdWlyZSBGRVVzZXJzIDAuMS44IGFuZCBDTVNNYWlsZXIgMS43My45PC9wPg0KPHA+QWRkZWQgYW5vdGhlciB0YWIgZm9yIHRoZSBcJnF1b3Q7eW91ciBzZXR0aW5ncyBoYXZlIGJlZW4gYWRqdXN0ZWRcJnF1b3Q7IGVtYWlsIHRlbXBsYXRlczwvcD4NCjxwPkFkZGVkIENTViBFeHBvcnRpbmc8L3A+DQo8cD5BZGRlZCBhIFwmcXVvdDtEZWxldGUgYWxsIHVzZXJzIG9sZGVyIHRoYW4gYSBkYXlcJnF1b3Q7IGJ1dHRvbjwvcD4NCjxwPk5vdyB3b3JrcyB3aXRoIHRoZSBtYXhpbXVtIGxlbmd0aCBmaWVsZCBvZiBGRVVzZXJzPC9wPg0KPHA+QWRkZWQgc3VwcG9ydCBmb3IgZHJvcGRvd25zIGFuZCB0ZXh0IGFyZWFzPC9wPg0KPHA+RGlzYWxsb3cgcHVuY3R1YXRpb24gY2hhcmFjdGVycyBpbiB1c2VybmFtZTwvcD4NCjwvbGk+DQo8bGk+PHA+VmVyc2lvbiAxLjAuMS4gLSBGZWIgMjAwNjwvcD4NCjxwPkFkZGVkIHRoZSBhYmlsaXR5IGZvciB1c2VycyB0byByZXF1ZXN0IGFub3RoZXIgcmVnaXN0cmF0aW9uIGVtYWlsICh1c2VzIHRoZSBzYW1lIGNvZGUpLCBpbmNhc2UgdGhleSBsb3N0IHRoZWlyIGZpcnN0IG9uZS48L3A+DQo8L2xpPg0KPGxpPjxwPlZlcnNpb24gMS4wLjIuIC0gRmViIDIwMDY8L3A+DQo8cD5UaGUgXCZxdW90O1JlcXVpcmUgZW1haWwgY29uZmlybWF0aW9uXCZxdW90OyBjaGVja2JveCBub3cgd29ya3MuICBVc2VycyBhcmUgYWRkZWQgc3RyYWlnaHQgdG8gdGhlIGZyb250ZW5kIHVzZXJzIGRhdGFiYXNlPC9wPg0KPHA+Rml4ZWQgYSBidWcgd2l0aCB0aGUgY29uZmlybWF0aW9uIGVtYWlscyBoYXZpbmcgbGlua3MgdG8gdGhlIGFkbWluIHNlY3Rpb24gKG5ldyBidWcgb25seSkuPC9wPg0KPC9saT4NCjxsaT48cD5WZXJzaW9uIDEuMC4zLiAtIEZlYiAyMDA2PC9wPg0KPHA+QWRkZWQgdGhlIChvcHRpb25hbCkgYWJpbGl0eSB0byByZXF1aXJlIHRoZSB1c2VyIGVudGVyIHRoZSBlbWFpbCBhZGRyZXNzIHR3aWNlPC9wPg0KPHA+Rml4ZWQgYSBidWcgd2l0aCB0aGUgdXNlcmVkaXRlZCBtZXNzYWdlIG5vdCBiZWluZyB0aHJvd24gdGhyb3VnaCBzbWFydHk8L3A+DQo8cD5GaXhlZCB0aGUgZGVmYXVsdCByZWdpc3RyYXRpb24gdGVtcGxhdGUgYSBiaXQgdG8gYWlkZSBpbiB2YWxpZGF0aW9uIGZvciBub24gcmVxdWlyZWQgZmllbGRzIChmaXhlZCBhIHdhcm5pbmcpPC9wPg0KPHA+Rml4IHByb2JsZW1zIHdpdGggaW5saW5lIGFuZCBub24taW5saW5lIGZvcm1zIGFuZCBsaW5rczwvcD4NCjxwPkhhbmRsZSBhbm90aGVyIGNhc2Ugd2hlcmUgdGhlIGFkbWluIG1heSBub3QgaGF2ZSBjcmVhdGVkIHRoZSBwcm9wZXIgdHlwZSBvZiBlbWFpbCBwcm9wZXJ0eTwvcD4NCjxwPkNoYW5nZWQgdG8gcmVxdWlyZSBDTVMgMC4xMi1iZXRhMiBhdCBhIG1pbmltdW0gKGZvciBzYWZldHkgcHVycG9zZXMpPC9wPg0KPC9saT4NCjxsaT48cD5WZXJzaW9uIDEuMC40LiAtIE1hciAyMDA2PC9wPg0KPHA+TW9yZSBjb250cm9sIG92ZXIgdXNlcm5hbWUgYW5kIHBhc3N3b3JkIGZpZWxkIHNpemVzIChjb250cm9sbGVkIGJ5IGZldXNlcnMpPC9wPg0KPHA+Q29uZmlybWF0aW9uIG9uIGVkaXRpbmcgcHJlZmVyZW5jZXM8L3A+DQo8cD5SZXF1aXJlIDAuMTIgcHJvcGVyIG9mIGNtcyBhcyBhIG1pbmltdW08L3A+DQo8L2xpPg0KPGxpPjxwPlZlcnNpb24gMS4xLjAuIC0gRGVjIDIwMDY8L3A+DQogICAgPHA+QWRkZWQgZXZlbnRzIGFuZCAxLjAgY29tcGF0aWJpbGl0eTwvcD4NCiAgICA8cD5DYXB0Y2hhIHN1cHBvcnQgKHRoYW5rcyBEaXR0bWFuKTwvcD4NCjwvbGk+DQo8bGk+PHA+VmVyc2lvbiAxLjEuMS48L3A+DQogICAgPHA+Tm93IHJlcXVpcmUgRkVVc2VycyAxLjEuMyAobWluaW11bSk8L3A+DQogICAgPHA+U3VwcG9ydCBmb3IgbXVsdGlzZWxlY3QgbGlzdHMgaW4gZmV1c2VyczwvcD4NCiAgICA8cD5PdXRwdXQgc29tZSBtb3JlIGZpZWxkcyB0byBzbWFydHkgdG8gYWxsb3cgZm9yIGluY3JlYXNlZCBhY2Nlc3NpYmlsaXR5PC9wPg0KICAgIDxwPlNwbGl0IGNvZGUgb3V0IGludG8gbXVsdGlwbGUgZmlsZXMgdG8gcmVkdWNlIG92ZXJhbGwgbWVtb3J5IGZvb3RwcmludDwvcD4NCiAgICA8cD5JZ25vcmUgYWxsIGltYWdlIGZpZWxkczwvcD4NCiAgICA8cD5DaGFuZ2UgQ2FwdGNoYSBzdXBwb3J0IHRvIGJlIG9uIGJ5IGRlZmF1bHQgaWYgdGhlIENhcHRjaGEgbW9kdWxlIGlzIGZvdW5kPC9wPg0KPC9saT4NCjwvdWw+JzsKJGxhbmdbJ2hlbHAnXSA9ICc8aDM+V2FzIG1hY2h0IGRpZXNlcyBNb2R1bD88L2gzPg0KPHA+TWl0IGRpZXNlbSBNb2R1bCBrJm91bWw7bm5lbiBzaWNoIEJlbnV0emVyIHNlbGJzdCByZWdpc3RyaWVyZW4gdW5kIGRpZSBub3R3ZW5kaWdlbiBJbmZvcm1hdGlvbmVuIGVpbmdlYmVuLiBEYW5hY2ggd2lyZCBlaW5lIEJlc3QmYXVtbDt0aWd1bmdzZW1haWwgbWl0IGVpbmVtIExpbmsgenUgZWluZXIgendlaXRlbiBTZWl0ZSB2ZXJzYW5kdCwgdW0gZGllIFJlZ2lzdHJpZXJ1bmcgenUgdmVydm9sbHN0JmF1bWw7bmRpZ2VuLiBOYWNoIGRlbSBlcmZvbGdyZWljaGVuIEFic2NobHVzcyB3aXJkIGltIEZyb250ZW5kVXNlcnMtTW9kdWwgZWluIG5ldWVzIEJlbnV0emVyLUtvbnRvIGVyc3RlbGx0LjwvcD4NCjxwPlVtIGRpZXNlcyBNb2R1bCB6dSB2ZXJ3ZW5kZW4sIG0mdXVtbDtzc2VuIFNpZSBpbSBGcm9udGVuZFVzZXItTW9kdWwgZWluZSBFaWdlbnNjaGFmdCB2b20gVHlwIFwmcXVvdDtFbWFpbC1BZHJlc3NlXCZxdW90OyBlcnN0ZWxsZW4gdW5kIGRpZXNlIEVpZ2Vuc2NoYWZ0IGRhbm4gbWl0IGRlciBHcnVwcGUgdmVyYmluZGVuLCBkaWUgZiZ1dW1sO3IgU2VsYnN0cmVnaXN0cmllcnVuZ2VuIGVpbmdlc2V0enQgd2VyZGVuIHNvbGwuPC9wPg0KPGgzPldpZSB3aXJkIGVzIGVpbmdlc2V0enQgPzwvaDM+DQo8cD5GJnV1bWw7Z2VuIFNpZSBkZW4gVGFnIHtjbXNfbW9kdWxlIG1vZHVsZT1TZWxmUmVnaXN0cmF0aW9uIGdyb3VwPXVzZXJncm91cH0gaW4gSWhyZSBTZWl0ZSBlaW4uPC9wPg0KPHA+RGFtaXQgZGFzIE1vZHVsIGZ1bmt0aW9uaWVydCwgbSZ1dW1sO3NzZW4gU2llIGplZG9jaCB6dXZvciBkaWUgVXNlcmdydXBwZW4gdW5kIGRlcmVuIEVpZ2Vuc2NoYWZ0ZW4gaW0gRnJvbnRlbmRVc2Vycy1Nb2R1bCBlcnN0ZWxsdCBoYWJlbi48L3A+DQo8aDM+UGFyYW1ldGVyPC9oMz4NCjxwPjxzdHJvbmc+bW9kZTwvc3Ryb25nPiZuYnNwOzxlbT5vcHRpb25hbDwvZW0+IC0gbSZvdW1sO2dsaWNoZSBXZXJ0ZSBzaW5kIFwmcXVvdDtzaWdudXBcJnF1b3Q7IHVuZCBcJnF1b3Q7dmVyaWZ5XCZxdW90Oy4gIFdlbm4gZGllc2VyIFBhcmFtZXRlciBuaWNodCBnZXNldHp0IHd1cmRlLCBpc3QgXCZxdW90O3NpZ251cFwmcXVvdDsgZGVyIFN0YW5kYXJkLjwvcD4NCjxwPjxzdHJvbmc+Z3JvdXA8L3N0cm9uZz4mbmJzcDs8ZW0+b3B0aW9uYWw8L2VtPiAtIERpZXNlciBQYXJhbWV0ZXIgaXN0IGVyZm9yZGVybGljaCwgd2VubiBkZXIgTW9kdXMgXCZxdW90O3NpZ251cFwmcXVvdDsgaXN0IG9kZXIgbmljaHQgZ2VzZXR6dCB3dXJkZS48L3A+DQo8cD48c3Ryb25nPm5vY2FwdGNoYTwvc3Ryb25nPiZuYnNwOzxlbT5vcHRpb25hbDwvZW0+IC0gRGllc2VyIFBhcmFtZXRlciBkZWFrdGl2aWVydCBkaWUgQ2FwdGNoYS1GdW5rdGlvbmFsaXQmYXVtbDt0IGltIFJlZ2lzdHJpZXJ1bmdzZm9ybXVsYXIuIFdlbm4gZGFzIENhcHRjaGEtTW9kdWwgaW5zdGFsbGllcnQgaXN0LCB3aXJkIGRpZXNlIEZ1bmt0aW9uYWxpdCZhdW1sO3QgYXV0b21hdGlzY2ggdmVyd2VuZGV0LjwvcD4NCjxoMz5TdXBwb3J0PC9oMz4NCjxwPkRpZXNlcyBNb2R1bCBiZWluaGFsdGV0IGtlaW5lbiBrb21tZXJ6aWVsbGVuIFN1cHBvcnQuIFNpZSBrJm91bWw7bm5lbiBqZWRvY2ggJnV1bWw7YmVyIGZvbGdlbmRlIE0mb3VtbDtnbGljaGtlaXRlbiBIaWxmZSB6dSBkZW0gTW9kdWwgZXJoYWx0ZW46PC9wPg0KPHVsPg0KPGxpPkYmdXVtbDtyIGRpZSBsZXR6dGUgVmVyc2lvbiBkaWVzZXMgTW9kdWxzLCBGQVFzLCBkZW0gVmVyc2FuZCBlaW5lcyBGZWhsZXJyZXBvcnRzIG9kZXIgZGVtIEthdWYga29tbWVyemllbGxlbiBTdXBwb3J0IGJlc3VjaGVuIFNpZSBiaXR0ZSBjYWxndXlzIA0KSG9tZXBhZ2UgdW50ZXIgPGEgaHJlZj1cJnF1b3Q7aHR0cDovL3RlY2hjb20uZHluZG5zLm9yZ1wmcXVvdDs+dGVjaGNvbS5keW5kbnMub3JnPC9hPi48L2xpPg0KPGxpPkVpbmUgd2VpdGVyZSBEaXNrdXNzaW9uIHp1IGRpZXNlbSBNb2R1bCBpc3QgYXVjaCBpbiBkZW4gRm9yZW4gdm9uIDxhIGhyZWY9XCZxdW90O2h0dHA6Ly9mb3J1bS5jbXNtYWRlc2ltcGxlLm9yZ1wmcXVvdDs+Q01TIE1hZGUgU2ltcGxlPC9hPiB6dSBmaW5kZW4uPC9saT4NCjxsaT5EZXIgQXV0b3IgY2FsZ3V5MTAwMCwgaXN0IGgmYXVtbDt1ZmlnIGltIDxhIGhyZWY9XCZxdW90O2lyYzovL2lyYy5mcmVlbm9kZS5uZXQvI2Ntc1wmcXVvdDs+Q01TIElSQyBDaGFubmVsPC9hPiB6dSBmaW5kZW4uPC9saT4NCjxsaT5MZXR6dGxpY2ggayZvdW1sO25uZW4gU2llIGRlbiBBdXRvciBhdWNoIGRpcmVrdCBwZXIgRW1haWwga29udGFrdGllcmVuLjwvbGk+ICAgIA0KPC91bD4NCjxwPk5hY2ggZGVyIEdQTCB3aXJkIGRpZXNlIFNvZnR3YXJlIHNvIHZlciZvdW1sO2ZmZW50bGljaHQsIHdpZSBzaWUgaXN0LiBCaXR0ZSBsZXNlbiBTaWUgZGVuDQogTGl6ZW56dGV4dCBmJnV1bWw7ciBkZW4gdm9sbGVuIEhhZnR1bmdzYXVzc2NobHVzcy48L3A+DQoNCjxoMz5Db3B5cmlnaHQgdW5kIExpemVuejwvaDM+DQo8cD5Db3B5cmlnaHQgJmNvcHk7IDIwMDUsIFJvYmVydCBDYW1wYmVsbCA8YSBocmVmPVwmcXVvdDttYWlsdG86Y2FsZ3V5MTAwMEBob3RtYWlsLmNvbVwmcXVvdDs+PGNhbGd1eTEwMDBAaG90bWFpbC5jb20+PC9hPi4gQWxsZSBSZWNodGUgdm9yYmVoYWx0ZW4uPC9wPg0KPHA+RGllc2VzIE1vZHVsIHd1cmRlIHVudGVyIGRlciA8YSBocmVmPVwmcXVvdDtodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUExcJnF1b3Q7PkdOVSBQdWJsaWMgTGljZW5zZTwvYT4gdmVyJm91bWw7ZmZlbnRsaWNodC4gU2llIG0mdXVtbDtzc2VuIGRpZXNlciBMaXplbnogenVzdGltbWVuLCBiZXZvciBTaWUgZGFzIE1vZHVsIHZlcndlbmRlbi48L3A+JzsKJGxhbmdbJ3V0bWEnXSA9ICcxNTY4NjEzNTMuNzE3NDYyNzM2LjExNDc1MTE4NTYuMTE4NjU3MzAzOC4xMTg2NTc2OTg1LjE2OCc7CiRsYW5nWyd1dG16J10gPSAnMTU2ODYxMzUzLjExODY1NzY5ODUuMTY4LjEwNS51dG1jY249KHJlZmVycmFsKXx1dG1jc3I9YmxvZy5jbXNtYWRlc2ltcGxlLm9yZ3x1dG1jY3Q9LzIwMDcvMDgvMDUvZGV2ZWxvcGVycy1nZXQtdG9nZXRoZXItZG9uYXRpb25zL3x1dG1jbWQ9cmVmZXJyYWwnOwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lang/ext/et_EE.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2Vycm9yX2NvZGVzZG9udG1hdGNoJ10gPSAnVHVydmFrb29kLCBtaWxsZSBzaXNlc3Rhc2lkLCBvbiB2aWdhbmUnOwokbGFuZ1snZXZlbnRfZGVzY3JpcHRpb25fb25OZXdVc2VyJ10gPSAnUyZ1dW1sO25kbXVzLCBtaXMgbiZhdW1sO2l0YWIsIGV0IHV1cyBrYXN1dGFqYSBvbiByZWdpbWlzdHJlZXJpbWlzdm9ybWkgdCZhdW1sO2l0bnVkJzsKJGxhbmdbJ2V2ZW50X2Rlc2NyaXB0aW9uX29uVXNlclJlZ2lzdGVyZWQnXSA9ICdTJnV1bWw7bmRtdXMsIG1pcyBuJmF1bWw7aXRhYiwgZXQga2FzdXRhamEgb24gb21hIHJlZ2lzdHJlZXJpbmd1IGtpbm5pdGFudWRuaW5nIG9uIHQmYXVtbDtpZWxpa3VsdCBFTEsga2FzdXRhamFrcyByZWdpc3RyZWVyaXR1ZCc7CiRsYW5nWydldmVudF9oZWxwX29uTmV3VXNlciddID0gJzxwPlMmdXVtbDtuZG11cywgbWlzIG4mYXVtbDtpdGFiLCBldCB1dXMga2FzdXRhamEgb24gcmVnaW1pc3RyZWVyaW1pc3Zvcm1pIHQmYXVtbDtpdG51ZDwvcD4NCjxoND5QYXJhbWVldHJpZDwvaDQ+DQo8dWw+DQo8bGk+PGVtPmthc3V0YWphbmltaTwvZW0+IC0gdXVlIGthc3V0YWphIGthc3V0YWphbmltaTwvbGk+DQo8bGk+PGVtPmUtbWFpbDwvZW0+IC0gdXVlIGthc3V0YWphIGUtbWFpbGkgYWFkcmVzczwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfb25Vc2VyUmVnaXN0ZXJlZCddID0gJzxwPlMmdXVtbDtuZG11cywgbWlzIG4mYXVtbDtpdGFiLCBldCBrYXN1dGFqYSBvbiBvbWEgcmVnaXN0cmVlcmluZ3Uga2lubml0YW51ZG5pbmcgb24gdCZhdW1sO2llbGlrdWx0IEZFVSBrYXN1dGFqYWtzIHJlZ2lzdHJlZXJpdHVkPC9wPg0KPGg0PlBhcmFtZWV0cmlkPC9oND4NCjx1bD4NCjxsaT48ZW0+a2FzdXRhamFuaW1pPC9lbT4gLSByZWdpc3RyZWVyaW51ZCBrYXN1dGFqYSBrYXN1dGFqYW5pbWk8L2xpPg0KPC91bD4NCic7CiRsYW5nWydjb25maXJtX3N1Ym1pdHByZWZzJ10gPSAnTXV1ZGEgYWRtaW5pc3RyYWF0b3JpIGVlbGlzdHVzaT8nOwokbGFuZ1snaW5mb19hZG1pbl9wYXNzd29yZCddID0gJ0t1aSBzYSBlaSBzb292aSBrYXN1dGFqYSBwYXJvb2xpIG11dXRhLCBqJmF1bWw7dGEgc2VlIHYmYXVtbDtsaSB0JnV1bWw7aGpha3MnOwokbGFuZ1snaW5mb19hZG1pbl9yZXBlYXRwYXNzd29yZCddID0gJ0t1aSBzYSBlaSBzb292aSBrYXN1dGFqYSBwYXJvb2xpIG11dXRhLCBqJmF1bWw7dGEgc2VlIHYmYXVtbDtsaSB0JnV1bWw7aGpha3MnOwokbGFuZ1snZXJyb3JfZW1haWxkb2Vzbm90bWF0Y2gnXSA9ICdFLW1haWxpIGFhZHJlc3NpZCBlaSBrYXR0dSc7CiRsYW5nWydmb3JjZV9lbWFpbF90d2ljZSddID0gJ0UtbWFpbGkgcGVhYiBzaXNlc3RhbWEgMiBrb3JkYSc7CiRsYW5nWydhZ2FpbiddID0gJ3V1ZXN0aSc7CiRsYW5nWydkZWxldGVzZWx1c2VycyddID0gJ0t1c3R1dGEgVmFsaXR1ZCBLYXN1dGFqYWQnOwokbGFuZ1snZXJyb3Jfbm9wcm9wZGVmbnMnXSA9ICdPbWFkdXNpIGVpIG9sZSwgdiZvdGlsZGU7aSBlc2luZXMgcHJvYmxlZW0gbmVuZGUgayZhdW1sO3R0ZXNhYW1pc2VnYSBhbmRtZWJhYXNpc3QuJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBzJ10gPSAnR3J1cHBlIGVpIG9sZSwgdiZvdGlsZGU7aSBlc2luZXMgcHJvYmxlZW0gZ3J1cHBpZGUgbmltZWtpcmphIGsmYXVtbDt0dGVzYWFtaXNlZ2EgYW5kbWViYWFzaXN0Lic7CiRsYW5nWydlcnJvcl9kYmVycm9yJ10gPSAnQW5kbWViYWFzaSB2aWdhJzsKJGxhbmdbJ3RpdGxlX3Bvc3Rfc2VuZGFub3RoZXJlbWFpbF90ZW1wbGF0ZSddID0gJ1Bvc3RpdGEgS2FkdW51ZCBFLW1haWxpIE1hbGwnOwokbGFuZ1sndGl0bGVfc2VuZGFub3RoZXJlbWFpbF90ZW1wbGF0ZSddID0gJ0thZHVudWQgRS1tYWlsaSBNYWxsJzsKJGxhbmdbJ2NsaWNraGVyZSddID0gJ0tsaWtpIFNpaW4nOwokbGFuZ1snbXNnX3NlbmRhbm90aGVyZW1haWwnXSA9ICdNYSBvbGVuIGtvcnJhIGp1YmEgcmVnaXN0cmVlcmltaXN2b3JtaSB0JmF1bWw7aXRudWQsIGt1aWQgZWkgc2FhbnVkIGUtbWFpbGkuIEthcyB0ZSBzYWFrc2l0ZSBzZWxsZSBtdWxlIHV1ZXN0aSBzYWF0YT8nOwokbGFuZ1snc2VuZGFub3RoZXJlbWFpbF90ZW1wbGF0ZSddID0gJ0thZHVudWQgRS1tYWlsaSBNYWxsJzsKJGxhbmdbJ2luZm9fdXNlcnZlcmlmaWVkJ10gPSAnVXVzIGthc3V0YWphIGxpc2F0dWQgRUxLLXNzZSc7CiRsYW5nWydlZGl0J10gPSAnTXV1ZGEnOwokbGFuZ1sndW5rbm93biddID0gJ1R1bmRtYXR1JzsKJGxhbmdbJ3NlbGVjdCddID0gJ1ZhbGknOwokbGFuZ1snY2hlY2tfYWxsJ10gPSAnTSZhdW1sO3JnaXN0YSBLJm90aWxkZTtpayc7CiRsYW5nWyd1bmNoZWNrX2FsbCddID0gJ0VlbWFsZGEgTSZhdW1sO3JnaXN0dXNlZCc7CiRsYW5nWydzZW5kX2FkanVzdG1lbnRlbWFpbCddID0gJ1NhYWRhIGthc3V0YWphbGUgZS1tYWlsJzsKJGxhbmdbJ3R4dF9hZGp1c3RtZW50ZW1haWwnXSA9ICcoaW5mb3JtZWVyaWIga2FzdXRhamF0LCBldCB0ZW1hIGtvbnRvdCBvbiBtdXVkZXR1ZCknOwokbGFuZ1sndHh0X2NoYW5nZXBhc3N3b3JkJ10gPSAnVCZhdW1sO2lkYSBuZWVkIHYmYXVtbDtsamFkLCBrdWkgc29vdmlkIG11dXRhIGthc3V0YWphIHBhcm9vbGknOwokbGFuZ1snZWRpdHVzZXInXSA9ICdNdXVkYSBLYXN1dGFqYXQnOwokbGFuZ1snYXJleW91c3VyZV9kZWxldGV1c2VyJ10gPSAnT2xlZCBzYSBraW5kZWwsIGV0IHNvb3ZpZCBrdXN0dXRhZGEgc2VsbGUgb3NhbGlzZWx0IHJlZ2lzdHJlZXJpbnVkIGthc3V0YWphPyc7CiRsYW5nWydoZHJfdXNlcmlkJ10gPSAnS2FzdXRhamEgSUQnOwokbGFuZ1snaGRyX3VzZXJuYW1lJ10gPSAnS2FzdXRhamFuaW1pJzsKJGxhbmdbJ2hkcl9ncnBuYW1lJ10gPSAnR3J1cHAnOwokbGFuZ1snaGRyX2NyZWF0ZWQnXSA9ICdMb29kdWQnOwokbGFuZ1snaGRyX2VtYWlsJ10gPSAnRS1tYWlsJzsKJGxhbmdbJ3VzZXJzZm91bmQnXSA9ICdLYXN1dGFqYSh0KSBsZWl0dWQgKG1ha3NpbWFhbHNlbHQgMjUwKSc7CiRsYW5nWyd1c2VycyddID0gJ0thc3V0YWphZCc7CiRsYW5nWydsaXN0MWRheSddID0gJ04mYXVtbDtpdGEgayZvdGlsZGU7aWtpIHNpc2VzdHVzaSwgbWlzIG9uIHZhbmVtYWQga3VpIDEgcCZhdW1sO2V2JzsKJGxhbmdbJ3N1YmplY3QnXSA9ICdWJmF1bWw7bGphbWluZXZhIGUtbWFpbGkgdGVlbWEnOwokbGFuZ1snaHRtbGJvZHknXSA9ICdIVE1MIGtpcmphIHNpc3UnOwokbGFuZ1sndGV4dGJvZHknXSA9ICdUZWtzdGlwJm90aWxkZTtoaXNlIGtpcmphIHNpc3UnOwokbGFuZ1sncHJvbXB0X251bXJlc2V0cmVjb3JkJ10gPSAnTSZvdGlsZGU7bmluZ2F0ZSBrYXN1dGFqYXRlIHJlZ2lzdHJlZXJpbWluZSBvbiBwb29sZWxpLiBIZXRrZWwgb24gbmVpZCBrYXN1dGFqYWlkOic7CiRsYW5nWydyZW1vdmUxd2VlayddID0gJ0VlbWFsZGEgayZvdGlsZGU7aWsgc2lzZXN0dXNlZCwgbWlzIG9uIHZhbmVtYWQga3VpIDEgbiZhdW1sO2RhbCc7CiRsYW5nWydyZW1vdmUxbW9udGgnXSA9ICdFZW1hbGRhIGsmb3RpbGRlO2lrIHNpc2VzdHVzZWQsIG1pcyBvbiB2YW5lbWFkIGt1aSAxIGt1dSc7CiRsYW5nWydyZW1vdmUxZGF5J10gPSAnRWVtYWxkYSBrJm90aWxkZTtpayBzaXNlc3R1c2VkLCBtaXMgb24gdmFuZW1hZCBrdWkgMSBwJmF1bWw7ZXYnOwokbGFuZ1sncmVtb3ZlYWxsJ10gPSAnRWVtYWxkYSBrJm90aWxkZTtpayBzaXNlc3R1c2VkJzsKJGxhbmdbJ2FyZXlvdXN1cmUnXSA9ICdPbGVkIHNhIGtpbmRlbD8nOwokbGFuZ1sncmVnaXN0cmF0aW9uX2luZm9fZWRpdGVkJ10gPSAnU2ludSByZWdpc3RyZWVyaW1pc2luZm8gb24gdXVlbmRhdHVkJzsKJGxhbmdbJ3JlZ2lzdHJhdGlvbl9jb25maXJtYXRpb24nXSA9ICdSZWdpc3RyZWVyaW1pc2UgS2lubml0dXMnOwokbGFuZ1sndXNlcl9yZWdpc3RyYXRpb24nXSA9ICdSZWdpc3RyZWVyaSc7CiRsYW5nWydmaW5hbG1lc3NhZ2VfdGVtcGxhdGUnXSA9ICdMJm90aWxkZTtwbGlrdSBUZWF0ZSBNYWxsJzsKJGxhbmdbJ3RpdGxlX3ZlcmlmeXJlZ2lzdHJhdGlvbiddID0gJ0tpbm5pdGEgUmVnaXN0cmVlcmluZyc7CiRsYW5nWydjb2RlJ10gPSAnVHVydmFrb29kJzsKJGxhbmdbJ2RlZmF1bHQnXSA9ICdUYWFzdGEgYWxnc2VhZGVkJzsKJGxhbmdbJ2Vycm9yX25vcHJvcGVydGllcyddID0gJ1NlbGxlIGthc3V0YWphIG9tYWR1c2kgZWkgbGVpdHVkJzsKJGxhbmdbJ2Vycm9yX25vcHJvcHJlbGF0aW9ucyddID0gJ1Nlb3NlaWQgb21hZHVzdGVnYSBlaSBvbGUnOwokbGFuZ1snZXJyb3JfZW1haWxpbnZhbGlkJ10gPSAnVmlnYW5lIGUtbWFpbGkgYWFkcmVzcyc7CiRsYW5nWydlcnJvcl9ub2VtYWlsYWRkcmVzcyddID0gJ0tlaHRpdmF0IGUtbWFpbGkgYWFkcmVzc2kgdiZhdW1sO2xqYSBlaSBsZWl0dWQnOwokbGFuZ1snZXJyb3JfcmVxdWlyZWRmaWVsZCddID0gJyVzIHYmYXVtbDtsaSBvbiBrb2h1c3R1c2xpayc7CiRsYW5nWydyZWdpc3RyYXRpb24xX3RlbXBsYXRlJ10gPSAnUmVnc2l0cmVlcmltaXNlIE1hbGwgMSc7CiRsYW5nWydyZWdpc3RyYXRpb24yX3RlbXBsYXRlJ10gPSAnUmVnc2l0cmVlcmltaXNlIE1hbGwgMic7CiRsYW5nWydlbWFpbGNvbmZpcm1fdGVtcGxhdGUnXSA9ICdLaW5uaXR1c2UgRS1tYWlsaSBNYWxsJzsKJGxhbmdbJ2VtYWlsdXNlcmVkaXRlZF90ZW1wbGF0ZSddID0gJ0thc3V0YWphIEluZm8gTXV1ZGV0dWQgTWFsbCc7CiRsYW5nWydwcmVmZXJlbmNlcyddID0gJ0VlbGlzdHVzZWQnOwokbGFuZ1snZXJyb3JfdXNlcm5vdGZvdW5kJ10gPSAnS2FzdXRhamF0IGVpIGxlaXR1ZCc7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXNlcm5hbWUnXSA9ICdrYXN1dGFqYW5pbWkgb24gdmlnYW5lIChsaWlnYSBwaWtrLCBsJnV1bWw7aGlrZSwgdiZvdGlsZGU7aSBzaXNhbGRhYiBrZWVsYXR1ZCBtJmF1bWw7cmtlKS4gTWVlbGRldHVsZXR1czoga2FzdXRhamFuaW1pIHYmb3RpbGRlO2liIHNpc2FsZGFkYSB2YWlkIHQmYXVtbDtodGkgKHQmdXVtbDtoaWt1ZCBqYSBzcGV0c2lhYWxzZWQgbSZhdW1sO3JnaWQtcyZ1dW1sO21ib2xpZCBrZWVsYXR1ZCknOwokbGFuZ1snZXJyb3JfdXNlcm5hbWV0YWtlbiddID0gJ1NlZSBrYXN1dGFqYW5pbWkgb24ganViYSBrYXN1dHVzZWwnOwokbGFuZ1snZXJyb3JfcGFzc3dvcmRzZG9udG1hdGNoJ10gPSAnVklHQTogUGFyb29saWQgZWkga2F0dHUnOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhc3N3b3JkJ10gPSAnUGFyb29sIG9uIHZpZ2FuZSAocGFyb29saWQgcGVhdmFkIG9sZW1hIHYmYXVtbDtoZW1hbHQgJXMga3VuaSAlcyB0JmF1bWw7aGVtJmF1bWw7cmtpIHBpa2FkKSc7CiRsYW5nWydlcnJvcl9lbXB0eXVzZXJuYW1lJ10gPSAnS2FzdXRhamFuaW1pIHBlYWIgb2xlbWEgdCZhdW1sO2lkZXR1ZCc7CiRsYW5nWydyZXBlYXRwYXNzd29yZCddID0gJ1Bhcm9vbCAodXVlc3RpKSc7CiRsYW5nWydwYXNzd29yZCddID0gJ1Bhcm9vbCc7CiRsYW5nWyd1c2VybmFtZSddID0gJ0thc3V0YWphbmltaSc7CiRsYW5nWydlcnJvcl9pbnN1ZmZpY2llbnRwYXJhbXMnXSA9ICdNb29kdWxpbGUgYW50dWQgcGFyYW1lZXRyaXRlIGFydiBvbiBlYmFwaWlzYXYgdiZvdGlsZGU7aSB2aWdhbmUnOwokbGFuZ1snZXJyb3Jfbm9mZXVzZXJzbW9kdWxlJ10gPSAnRWkgc3V1ZGEgbGFhZGlkYSBFTEsgbW9vZHVsaXQnOwokbGFuZ1snZXJyb3Jfbm9zdWNoZ3JvdXAnXSA9ICdTZWxsaXNlIG5pbWVnYSBncnVwcGkgZWkgZWtzaXN0ZWVyaSc7CiRsYW5nWydzZW5kX2VtYWlsc190byddID0gJ1JlZ2lzdHJlZXJpbWlzZSBlLW1hbGlkIHR1bGVrcyBzYWF0YSBhYWRyZXNzaWxlJzsKJGxhbmdbJ3JlcXVpcmVfZW1haWxfY29uZmlybWF0aW9uJ10gPSAnS2FzdXRhamEgcGVhYiBvbWEgcmVnaXN0cmVlcmluZ3UgZS1tYWlsaSB0ZWVsIGtpbm5pdGFtYSc7CiRsYW5nWydub3RpZnlfb25fcmVnaXN0cmF0aW9uJ10gPSAnU2FhZGEgdGVhZGEsIGt1aSBrZWVnaSByZWdpc3RyZWVyaWInOwokbGFuZ1snY2FuY2VsJ10gPSAnVCZ1dW1sO2hpc3RhJzsKJGxhbmdbJ3N1Ym1pdCddID0gJ1NhYWRhJzsKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ0VuZXNlIFJlZ2lzdHJlZXJpbWlzZSBNb29kdWwnOwokbGFuZ1sncG9zdGluc3RhbGwnXSA9ICdJbnN0YWxsZWVyaW1pbmUgJm90aWxkZTtubmVzdHVzLiBNJmF1bWw7JmF1bWw7cmEga2luZGxhc3RpIGFzamFnYSBzZW90dWQga2FzdXRhamF0ZWxlICZxdW90O01vZGlmeSBTZWxmUmVnaXN0cmF0aW9uIFNldHRpbmdzJnF1b3Q7ICZvdGlsZGU7aWd1cy4nOwokbGFuZ1sncG9zdHVuaW5zdGFsbCddID0gJ0VuZXNlIFJlZ2lzdHJlZXJpbWlzZSBNb29kdWwgZWVtYWxkYXR1ZC4nOwokbGFuZ1sndW5pbnN0YWxsZWQnXSA9ICdNb29kdWwgZWVtYWxkYXR1ZC4nOwokbGFuZ1snaW5zdGFsbGVkJ10gPSAnTW9vZHVsaSB2ZXJzaW9vbiAlcyBpbnN0YWxsZWVyaXR1ZC4nOwokbGFuZ1sncHJlZnN1cGRhdGVkJ10gPSAnTW9vZHVsaSBlZWxpc3R1c2VkIHV1ZW5kYXR1ZC4nOwokbGFuZ1snYWNjZXNzZGVuaWVkJ10gPSAnTGlnaXAmYXVtbDsmYXVtbDtzIGtlZWxhdHVkLiBQYWx1biBrb250cm9sbGkgb21hICZvdGlsZGU7aWd1c2kuJzsKJGxhbmdbJ2Vycm9yJ10gPSAnVmlnYSEnOwokbGFuZ1sndXBncmFkZWQnXSA9ICdNb29kdWwgdXVlbmRhdHVkIHZlcnNpb29uaWxlICVzLic7CiRsYW5nWyd0aXRsZV9tb2RfcHJlZnMnXSA9ICdNb29kdWxpIEVlbGlzdHVzZWQnOwokbGFuZ1sndGl0bGVfbW9kX2FkbWluJ10gPSAnTW9vZHVsaSBBZG1pbnN0cmVlcmltaXNwYW5lZWwnOwokbGFuZ1sndGl0bGVfYWRtaW5fcGFuZWwnXSA9ICdFbmVzZSBSZWdpc3RyZWVyaW1pc2UgTW9vZHVsJzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnTW9vZHVsLCBtaXMgbGFzZWIgZWVzbGlpdGUgKGtvZHVsZWhlIGthc3V0YWphbGlpZGVzZSkga2FzdXRhamF0ZWwgZW5uYXN0IGlzZSBrYXN1dGFqYWtzIHJlZ3NpdHJlZXJpZGEuJzsKJGxhbmdbJ3dlbGNvbWVfdGV4dCddID0gJzxwPlRlcmUgdHVsZW1hc3QgRW5lc2UgUmVnaXN0cmVlcmltaXNlIE1vb2R1bGlsZS48L3A+JzsKJGxhbmdbJ2NoYW5nZWxvZyddID0gJzx1bD4NCjxsaT5WZXJzaW9uIDAuMC4xLiBPY3QgMjAwNS4gSW5pdGlhbCBOUlBUIChOb3QgUmVhZHkgZm9yIFByaW1lIFRpbWUpIHJlbGVhc2UuPC9saT4NCjxsaT5WZXJzaW9uIDAuMS4wLiBPY3QgMjAwNS4gSW5pdGlhbCByZWxlYXNlLjwvbGk+DQo8bGk+VmVyc2lvbiAwLjEuMS4gT2N0IDIwMDUuIFNldCB0aGUgSFRNTCBtYWlsIGZsYWcuPC9saT4NCjxsaT5WZXJzaW9uIDAuMS4yLiBPY3QgMjAwNS4gTW92ZWQgUmFuZG9tIHN0dWZmIGludG8gZmV1c2VycywgYW5kIGFkZGVkIHRoZSBhYmlsaXR5IHRvIGRlbGV0ZSBvbGQgZW50cmllcyBmcm9tIHRoZSByZWdpc3RyYXRpb24gdGVtcG9yYXJ5IHRhYmxlczwvbGk+DQo8bGk+PHA+VmVyc2lvbiAwLjEuMy4gLSBEZWMgMjAwNTwvcD4NCjxwPkZpeGVkIHRoZSB0b2dnbGVzIGluIHRoZSBhZG1pbiBwcmVmZXJlbmNlcy4gIEFsc28sIGNoYW5nZWQgdGhlIHBlcm1pc3Npb25zIG1vZGVsIHRvIG5vdCByZXF1aXJlIHRoZSB1bmlxdWUgcGVybWlzc2lvbiBhZGRlZCBwcmV2aW91c2x5IGZvciB0aGUgc2VsZnJlZyBtb2R1bGUuPC9wPg0KPHA+VGhpcyByZWxlYXNlIHdhcyByZW1vdmVkIGR1ZSB0byBwb3NzaWJsZSBlcnJvcnM8L3A+DQo8L2xpPg0KPGxpPjxwPlZlcnNpb24gMC4xLjQuIC0gSmFuIDIwMDY8L3A+DQo8cD5GaXhlZCBtaW5vciBlcnJvcnMgd2l0aCBDaGVja1Blcm1pc3Npb24sIHJlcGxhY2VkIGFsbCBhc3NpZ25fYnlfcmVmcyYjMDM5O3Mgd2l0aCBhc3NpZ25zIGZvciBob3BlZnVsIHBocDUgY29tcGF0aWJpbGl0eS48L3A+DQo8bGk+PHA+VmVyc2lvbiAwLjEuNS4gLSBKYW4gMjAwNjwvcD4NCjxwPkFkZGVkIHRoZSBhYmlsaXR5IHRvIHNldCB0aGUgc3ViamVjdCBvZiB0aGUgY29uZmlybWF0aW9uIGVtYWlsLCBhbmQgYWRkZWQgdGhlIGFiaWxpdHkgdG8gc3BlY2lmeSBhIHRleHQgYm9keS4gIFN1YmplY3QsIGFuZCB0ZXh0IGJvZHkgYXJlIHJlcXVpcmVkLjwvcD4NCjwvbGk+DQo8bGk+PHA+VmVyc2lvbiAxLjAuMC4gLSBGZWIgMjAwNjwvcD4NCjxwPkZpeGVkIGEgcHJvYmxlbSB3aXRoIHRoZSB2ZXJpZnkgbW9kZS48L3A+DQo8cD5BZGRlZCB0aGUgYWJpbGl0eSB0byBlZGl0IGFuZCBkZWxldGUgdXNlcnMuIHdpdGggc2VsZWN0aW9uIG9uIHRoZSBjaGVja2JveGVzLCBhbmQgJnF1b3Q7Y2hlY2thbGwmcXVvdDs8L3A+DQo8cD5Ob3cgcmVxdWlyZSBGRVVzZXJzIDAuMS44IGFuZCBDTVNNYWlsZXIgMS43My45PC9wPg0KPHA+QWRkZWQgYW5vdGhlciB0YWIgZm9yIHRoZSAmcXVvdDt5b3VyIHNldHRpbmdzIGhhdmUgYmVlbiBhZGp1c3RlZCZxdW90OyBlbWFpbCB0ZW1wbGF0ZXM8L3A+DQo8cD5BZGRlZCBDU1YgRXhwb3J0aW5nPC9wPg0KPHA+QWRkZWQgYSAmcXVvdDtEZWxldGUgYWxsIHVzZXJzIG9sZGVyIHRoYW4gYSBkYXkmcXVvdDsgYnV0dG9uPC9wPg0KPHA+Tm93IHdvcmtzIHdpdGggdGhlIG1heGltdW0gbGVuZ3RoIGZpZWxkIG9mIEZFVXNlcnM8L3A+DQo8cD5BZGRlZCBzdXBwb3J0IGZvciBkcm9wZG93bnMgYW5kIHRleHQgYXJlYXM8L3A+DQo8cD5EaXNhbGxvdyBwdW5jdHVhdGlvbiBjaGFyYWN0ZXJzIGluIHVzZXJuYW1lPC9wPg0KPC9saT4NCjxsaT48cD5WZXJzaW9uIDEuMC4xLiAtIEZlYiAyMDA2PC9wPg0KPHA+QWRkZWQgdGhlIGFiaWxpdHkgZm9yIHVzZXJzIHRvIHJlcXVlc3QgYW5vdGhlciByZWdpc3RyYXRpb24gZW1haWwgKHVzZXMgdGhlIHNhbWUgY29kZSksIGluY2FzZSB0aGV5IGxvc3QgdGhlaXIgZmlyc3Qgb25lLjwvcD4NCjwvbGk+DQo8bGk+PHA+VmVyc2lvbiAxLjAuMi4gLSBGZWIgMjAwNjwvcD4NCjxwPlRoZSAmcXVvdDtSZXF1aXJlIGVtYWlsIGNvbmZpcm1hdGlvbiZxdW90OyBjaGVja2JveCBub3cgd29ya3MuICBVc2VycyBhcmUgYWRkZWQgc3RyYWlnaHQgdG8gdGhlIGZyb250ZW5kIHVzZXJzIGRhdGFiYXNlPC9wPg0KPHA+Rml4ZWQgYSBidWcgd2l0aCB0aGUgY29uZmlybWF0aW9uIGVtYWlscyBoYXZpbmcgbGlua3MgdG8gdGhlIGFkbWluIHNlY3Rpb24gKG5ldyBidWcgb25seSkuPC9wPg0KPC9saT4NCjxsaT48cD5WZXJzaW9uIDEuMC4zLiAtIEZlYiAyMDA2PC9wPg0KPHA+QWRkZWQgdGhlIChvcHRpb25hbCkgYWJpbGl0eSB0byByZXF1aXJlIHRoZSB1c2VyIGVudGVyIHRoZSBlbWFpbCBhZGRyZXNzIHR3aWNlPC9wPg0KPHA+Rml4ZWQgYSBidWcgd2l0aCB0aGUgdXNlcmVkaXRlZCBtZXNzYWdlIG5vdCBiZWluZyB0aHJvd24gdGhyb3VnaCBzbWFydHk8L3A+DQo8cD5GaXhlZCB0aGUgZGVmYXVsdCByZWdpc3RyYXRpb24gdGVtcGxhdGUgYSBiaXQgdG8gYWlkZSBpbiB2YWxpZGF0aW9uIGZvciBub24gcmVxdWlyZWQgZmllbGRzIChmaXhlZCBhIHdhcm5pbmcpPC9wPg0KPHA+Rml4IHByb2JsZW1zIHdpdGggaW5saW5lIGFuZCBub24taW5saW5lIGZvcm1zIGFuZCBsaW5rczwvcD4NCjxwPkhhbmRsZSBhbm90aGVyIGNhc2Ugd2hlcmUgdGhlIGFkbWluIG1heSBub3QgaGF2ZSBjcmVhdGVkIHRoZSBwcm9wZXIgdHlwZSBvZiBlbWFpbCBwcm9wZXJ0eTwvcD4NCjxwPkNoYW5nZWQgdG8gcmVxdWlyZSBDTVMgMC4xMi1iZXRhMiBhdCBhIG1pbmltdW0gKGZvciBzYWZldHkgcHVycG9zZXMpPC9wPg0KPC9saT4NCjxsaT48cD5WZXJzaW9uIDEuMC40LiAtIE1hciAyMDA2PC9wPg0KPHA+TW9yZSBjb250cm9sIG92ZXIgdXNlcm5hbWUgYW5kIHBhc3N3b3JkIGZpZWxkIHNpemVzIChjb250cm9sbGVkIGJ5IGZldXNlcnMpPC9wPg0KPHA+Q29uZmlybWF0aW9uIG9uIGVkaXRpbmcgcHJlZmVyZW5jZXM8L3A+DQo8cD5SZXF1aXJlIDAuMTIgcHJvcGVyIG9mIGNtcyBhcyBhIG1pbmltdW08L3A+DQo8L2xpPg0KPC91bD4nOwokbGFuZ1snaGVscCddID0gJzxoMz5XaGF0IERvZXMgVGhpcyBEbz88L2gzPg0KPHA+VGhpcyBtb2R1bGUgaXMgZGVzaWduZWQgdG8gYWxsb3cgZnJvbnQgZW5kIHVzZXJzIHRvIHJlZ2lzdGVyIHRoZW1zZWx2ZXMgYW5kIGZpbGwgaW4gdGhlIHJlcXVpcmVkIGluZm9ybWF0aW9uLiAgSXQgdGhlbiBzZW5kcyBhIGNvbmZpcm1hdGlvbiBlbWFpbCwgd2l0aCBhIGxpbmsgdG8gYSBzZWNvbmQgcGFnZSB0aGF0IG11c3QgYmUgY29tcGxldGVkIGJlZm9yZSB0aGUgcmVnaXN0cmF0aW9uIGlzIGNvbXBsZXRlLiAgT25jZSByZWdpc3RyYXRpb24gaXMgY29tcGxldGUsIGEgdXNlciBhY2NvdW50IGlzIGNyZWF0ZWQgaW4gdGhlIGZyb250IGVuZCB1c2VycyBtb2R1bGUuPC9wPg0KPHA+SW4gb3JkZXIgdG8gdXNlIHRoaXMgbW9kdWxlLCB5b3UgbXVzdCBjcmVhdGUgYSBwcm9wZXJ0eSBvZiB0eXBlICZxdW90O0VtYWlsIEFkZHJlc3MmcXVvdDsgaW4gdGhlIEZyb250ZW5kVXNlcnMgbW9kdWxlLCBhbmQgYXNzb2NpYXRlIHRoYXQgcHJvcGVydHkgd2l0aCB0aGUgZ3JvdXAgdG8gYmUgdXNlZCBmb3Igc2VsZiByZWdpc3RyYXRpb24uPC9wPg0KPGgzPkhvdyBEbyBJIFVzZSBJdDwvaDM+DQo8cD5Zb3UgcGxhY2UgdGhlIGZvbGxvd25nIHRhZyBpbnRvIHlvdXIgcGFnZSB7Y21zX21vZHVsZSBtb2R1bGU9U2VsZlJlZ2lzdHJhdGlvbiBncm91cD11c2VyZ3JvdXB9PC9wPg0KPHA+WW91IG11c3QgaGF2ZSBwcmV2aW91c2x5IGNyZWF0ZWQgcHJvcGVydGllcyBhbmQgdXNlciBncm91cHMgaW4gdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlIGluIG9yZGVyIGZvciB0aGlzIHRvIHdvcmsgcHJvcGVybHkuPC9wPg0KPGgzPlBhcmFtZXRlcnM8L2gzPg0KPHA+PHN0cm9uZz5tb2RlPC9zdHJvbmc+Jm5ic3A7PGVtPm9wdGlvbmFsPC9lbT4gLSBwb3NzaWJsZSB2YWx1ZXMgYXJlICZxdW90O3NpZ251cCZxdW90OyBhbmQgJnF1b3Q7dmVyaWZ5JnF1b3Q7LiAgSWYgdGhpcyBwYXJhbWV0ZXIgaXMgbm90IHNwZWNpZmllZCwgJnF1b3Q7c2lnbnVwJnF1b3Q7IGlzIGFzc3VtYmVkLjwvcD4NCjxwPjxzdHJvbmc+Z3JvdXA8L3N0cm9uZz4mbmJzcDs8ZW0+b3B0aW9uYWw8L2VtPiAtIFRoaXMgcGFyYW1ldGVyIGlzIHJlcXVpcmVkIGlmIG1vZGUgaXMgJnF1b3Q7c2lnbnVwJnF1b3Q7LCBvciBpZiBtb2RlIGlzIGxlZnQgZW1wdHkuPC9wPg0KPGgzPlN1cHBvcnQ8L2gzPg0KPHA+VGhpcyBtb2R1bGUgZG9lcyBub3QgaW5jbHVkZSBjb21tZXJjaWFsIHN1cHBvcnQuIEhvd2V2ZXIsIHRoZXJlIGFyZSBhIG51bWJlciBvZiByZXNvdXJjZXMgYXZhaWxhYmxlIHRvIGhlbHAgeW91IHdpdGggaXQ6PC9wPg0KPHVsPg0KPGxpPkZvciB0aGUgbGF0ZXN0IHZlcnNpb24gb2YgdGhpcyBtb2R1bGUsIEZBUXMsIG9yIHRvIGZpbGUgYSBCdWcgUmVwb3J0IG9yIGJ1eSBjb21tZXJjaWFsIHN1cHBvcnQsIHBsZWFzZSB2aXNpdCBjYWxndXkmIzAzOTtzDQptb2R1bGUgaG9tZXBhZ2UgYXQgPGEgaHJlZj0mcXVvdDtodHRwOi8vdGVjaGNvbS5keW5kbnMub3JnJnF1b3Q7PnRlY2hjb20uZHluZG5zLm9yZzwvYT4uPC9saT4NCjxsaT5BZGRpdGlvbmFsIGRpc2N1c3Npb24gb2YgdGhpcyBtb2R1bGUgbWF5IGFsc28gYmUgZm91bmQgaW4gdGhlIDxhIGhyZWY9JnF1b3Q7aHR0cDovL2ZvcnVtLmNtc21hZGVzaW1wbGUub3JnJnF1b3Q7PkNNUyBNYWRlIFNpbXBsZSBGb3J1bXM8L2E+LjwvbGk+DQo8bGk+VGhlIGF1dGhvciwgY2FsZ3V5MTAwMCwgY2FuIG9mdGVuIGJlIGZvdW5kIGluIHRoZSA8YSBocmVmPSZxdW90O2lyYzovL2lyYy5mcmVlbm9kZS5uZXQvI2NtcyZxdW90Oz5DTVMgSVJDIENoYW5uZWw8L2E+LjwvbGk+DQo8bGk+TGFzdGx5LCB5b3UgbWF5IGhhdmUgc29tZSBzdWNjZXNzIGVtYWlsaW5nIHRoZSBhdXRob3IgZGlyZWN0bHkuPC9saT4gIA0KPC91bD4NCjxwPkFzIHBlciB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIHByb3ZpZGVkIGFzLWlzLiBQbGVhc2UgcmVhZCB0aGUgdGV4dA0Kb2YgdGhlIGxpY2Vuc2UgZm9yIHRoZSBmdWxsIGRpc2NsYWltZXIuPC9wPg0KDQo8aDM+Q29weXJpZ2h0IGFuZCBMaWNlbnNlPC9oMz4NCjxwPkNvcHlyaWdodCAmY29weTsgMjAwNSwgUm9iZXJ0IENhbXBiZWwgPGEgaHJlZj0mcXVvdDttYWlsdG86Y2FsZ3V5MTAwMEBob3RtYWlsLmNvbSZxdW90Oz48Y2FsZ3V5MTAwMEBob3RtYWlsLmNvbT48L2E+LiBBbGwgUmlnaHRzIEFyZSBSZXNlcnZlZC48L3A+DQo8cD5UaGlzIG1vZHVsZSBoYXMgYmVlbiByZWxlYXNlZCB1bmRlciB0aGUgPGEgaHJlZj0mcXVvdDtodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwmcXVvdDs+R05VIFB1YmxpYyBMaWNlbnNlPC9hPi4gWW91IG11c3QgYWdyZWUgdG8gdGhpcyBsaWNlbnNlIGJlZm9yZSB1c2luZyB0aGUgbW9kdWxlLjwvcD4NCic7CiRsYW5nWyd1dG16J10gPSAnMTU2ODYxMzUzLjExNTcxMjE2MTguMS4xLnV0bWNjbj0oZGlyZWN0KXx1dG1jc3I9KGRpcmVjdCl8dXRtY21kPShub25lKSc7CiRsYW5nWyd1dG1hJ10gPSAnMTU2ODYxMzUzLjE1MjYzMzIwNTMuMTE1NzEyMTYxOC4xMTU3NjU5OTQyLjExNTc3NDU5NTAuNSc7Cj8+]]></data>
	</file>
	<file>
	  <filename>/lang/ext/fi_FI.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2Vycm9yX2NvZGVzZG9udG1hdGNoJ10gPSAnVmFsdHV1dHVzYXZhaW4gb24gdiZhdW1sOyZhdW1sO3ImYXVtbDsnOwokbGFuZ1snZXZlbnRfZGVzY3JpcHRpb25fb25OZXdVc2VyJ10gPSAnQW4gZXZlbnQgaW5kaWNhdGluZyB0aGF0IGEgbmV3IHVzZXIgaGFzIGNvbXBsZXRlZCB0aGUgcmVnaXN0cmF0aW9uIGZvcm0nOwokbGFuZ1snZXZlbnRfZGVzY3JpcHRpb25fb25Vc2VyUmVnaXN0ZXJlZCddID0gJ0FuIGV2ZW50IGluZGljYXRpbmcgdGhhdCBhIHVzZXIgaGFzIHZlcmlmaWVkIGhpcyBpbmZvcm1hdGlvbiBhbmQgaXMgbm93IGNvbXBsZXRlbHkgcmVnaXN0ZXJlZCc7CiRsYW5nWydldmVudF9oZWxwX29uTmV3VXNlciddID0gJzxwPkFuIGV2ZW50IGluZGljYXRpbmcgdGhhdCBhIG5ldyB1c2VyIGhhcyBjb21wbGV0ZWQgdGhlIHJlZ2lzdHJhdGlvbiBmb3JtPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIG5ldyB1c2VycyBzZWxlY3RlZCB1c2VybmFtZTwvbGk+DQo8bGk+PGVtPmVtYWlsPC9lbT4gLSBUaGUgbmV3IHVzZXJzIGVtYWlsIGFkZHJlc3M8L2xpPg0KPC91bD4NCic7CiRsYW5nWydldmVudF9oZWxwX29uVXNlclJlZ2lzdGVyZWQnXSA9ICc8cD5BbiBldmVudCBpbmRpY2F0aW5nIHRoYXQgYSB1c2VyIGhhcyBiZWVuIHZlcmlmaWVkIGFuZCBpcyBub3cgcmVnaXN0ZXJlZCB3aXRoIGZldXNlcnM8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgcmVnaXN0ZXJlZCB1c2VybmFtZTwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2NvbmZpcm1fc3VibWl0cHJlZnMnXSA9ICdWYWloZGEgaGFsbGlubmFuIGFzZXR1a3NpYT8nOwokbGFuZ1snaW5mb19hZG1pbl9wYXNzd29yZCddID0gJ0omYXVtbDt0JmF1bWw7IHQmYXVtbDttJmF1bWw7IGtlbnR0JmF1bWw7IHR5aGomYXVtbDtrc2kgcyZhdW1sO2lseXR0JmF1bWw7JmF1bWw7a3Nlc2kgayZhdW1sO3l0dCZhdW1sO2omYXVtbDtuIHNhbGFzYW5hbic7CiRsYW5nWydpbmZvX2FkbWluX3JlcGVhdHBhc3N3b3JkJ10gPSAnSiZhdW1sO3QmYXVtbDsgdCZhdW1sO20mYXVtbDsga2VudHQmYXVtbDsgdHloaiZhdW1sO2tzaSBzJmF1bWw7aWx5dHQmYXVtbDsmYXVtbDtrc2VzaSBrJmF1bWw7eXR0JmF1bWw7aiZhdW1sO24gc2FsYXNhbmFuJzsKJGxhbmdbJ2Vycm9yX2VtYWlsZG9lc25vdG1hdGNoJ10gPSAnRW1haWwgb3NvaXR0ZWV0IGVpdiZhdW1sO3Qgb2xlIHNhbWF0JzsKJGxhbmdbJ2ZvcmNlX2VtYWlsX3R3aWNlJ10gPSAnVmFhZGkgayZhdW1sO3l0dCZhdW1sO2ppbHQmYXVtbDsgZW1haWwgb3NvaXRlIGthaHRlZW4ga2VydGFhbic7CiRsYW5nWydhZ2FpbiddID0gJ3V1ZGVzdGFhbic7CiRsYW5nWydkZWxldGVzZWx1c2VycyddID0gJ1BvaXN0YSB2YWxpdHV0IGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7dCc7CiRsYW5nWydlcnJvcl9ub3Byb3BkZWZucyddID0gJ0VpIG9taW5haXN1dWtzaWEgdGFpIG9uZ2VsbWEgdGlldG9rYW5uYXNzYSc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcyddID0gJ0VpIHJ5aG1pJmF1bWw7IHRhaSBvbmdlbG1hIHRpZXRva2FubmFzc2EnOwokbGFuZ1snZXJyb3JfZGJlcnJvciddID0gJ1RpZXRva2FudGEgdmlyaGUnOwokbGFuZ1sndGl0bGVfcG9zdF9zZW5kYW5vdGhlcmVtYWlsX3RlbXBsYXRlJ10gPSAnTCZhdW1sO2hldCZhdW1sOyB1bm9oZGl0a28gc2FsYXNhbmFzaSBlbWFpbGluIHBvaGphJzsKJGxhbmdbJ3RpdGxlX3NlbmRhbm90aGVyZW1haWxfdGVtcGxhdGUnXSA9ICdVbm9oZGl0a28gc2FsYXNhbnNpIGVtYWlsIHBvaGphJzsKJGxhbmdbJ2NsaWNraGVyZSddID0gJ1BhaW5hIHQmYXVtbDtzdCZhdW1sOyc7CiRsYW5nWydtc2dfc2VuZGFub3RoZXJlbWFpbCddID0gJ09sZW4gam8gc3Vvcml0dGFudXQgcmVraXN0ZXImb3VtbDtpbm5pbiwgbXV0dGEgZW4gc2FhbnV0IHMmYXVtbDtoayZvdW1sO3Bvc3RpYS4nOwokbGFuZ1snc2VuZGFub3RoZXJlbWFpbF90ZW1wbGF0ZSddID0gJ1Vub2hkaXRrbyBzYWxhc2Fuc2kgZW1haWwgcG9oamEnOwokbGFuZ1snaW5mb191c2VydmVyaWZpZWQnXSA9ICdVdXNpIGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7IGxpcyZhdW1sO3R0eSBGcm9udEVuZFVzZXJzaWluJzsKJGxhbmdbJ2VkaXQnXSA9ICdNdW9ra2FhJzsKJGxhbmdbJ3Vua25vd24nXSA9ICdUdW50ZW1hdG9uJzsKJGxhbmdbJ3NlbGVjdCddID0gJ1ZhbGl0c2UnOwokbGFuZ1snY2hlY2tfYWxsJ10gPSAnVmFsaXRzZSBrYWlra2lhJzsKJGxhbmdbJ3VuY2hlY2tfYWxsJ10gPSAnUG9pc3RhIHZhbGlubmF0JzsKJGxhbmdbJ3NlbmRfYWRqdXN0bWVudGVtYWlsJ10gPSAnTCZhdW1sO2hldCZhdW1sOyBlbWFpbCBrJmF1bWw7eXR0JmF1bWw7aiZhdW1sO2xsZSc7CiRsYW5nWyd0eHRfYWRqdXN0bWVudGVtYWlsJ10gPSAnKGtlcnRvbyBrJmF1bWw7eXR0JmF1bWw7aiZhdW1sO2xsZSB0aWxpbiBtdW9ra2F1a3Nlc3RhKSc7CiRsYW5nWyd0eHRfY2hhbmdlcGFzc3dvcmQnXSA9ICdUJmF1bWw7eXQmYXVtbDsgbiZhdW1sO20mYXVtbDsga2VudCZhdW1sO3QgdmFpaHRhYWtzZXNpIGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7biBzYWxhc2FuYW4nOwokbGFuZ1snZWRpdHVzZXInXSA9ICdNdW9ra2FhIGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7JmF1bWw7JzsKJGxhbmdbJ2FyZXlvdXN1cmVfZGVsZXRldXNlciddID0gJ09sZXRrbyB2YXJtYSBldHQmYXVtbDsgaGFsdWF0IHBvaXN0YWEgdCZhdW1sO20mYXVtbDtuIHB1b2xpdHRhaW4gcmVraXN0ZXImb3VtbDtpZHluIGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7bic7CiRsYW5nWydoZHJfdXNlcmlkJ10gPSAnSyZhdW1sO3l0dCZhdW1sO2omYXVtbDsgSUQnOwokbGFuZ1snaGRyX3VzZXJuYW1lJ10gPSAnSyZhdW1sO3l0dCZhdW1sO2omYXVtbDt0dW5udXMnOwokbGFuZ1snaGRyX2dycG5hbWUnXSA9ICdSeWhtJmF1bWw7JzsKJGxhbmdbJ2hkcl9jcmVhdGVkJ10gPSAnTHVvdHUnOwokbGFuZ1snaGRyX2VtYWlsJ10gPSAnRW1haWwnOwokbGFuZ1sndXNlcnNmb3VuZCddID0gJ0smYXVtbDt5dHQmYXVtbDtqaSZhdW1sOyBsJm91bWw7eWRldHR5IChuJmF1bWw7eXRldCZhdW1sOyZhdW1sO24gbWFrc2ltaXNzYWFuIDI1MCknOwokbGFuZ1sndXNlcnMnXSA9ICdLJmF1bWw7eXR0JmF1bWw7aiZhdW1sO3QnOwokbGFuZ1snbGlzdDFkYXknXSA9ICdMaXN0YWEgeWxpIHAmYXVtbDtpdiZhdW1sO24gdmFuaGF0JzsKJGxhbmdbJ3N1YmplY3QnXSA9ICdBaWhlIGwmYXVtbDtodGV2aWxsZSBlbWFpbGVpbGxlJzsKJGxhbmdbJ2h0bWxib2R5J10gPSAnSFRNTCBlbWFpbGluIHNpcyZhdW1sO2x0Jm91bWw7JzsKJGxhbmdbJ3RleHRib2R5J10gPSAnVGVrc3RpIGVtYWlsaW4gc2lzJmF1bWw7bHQmb3VtbDsnOwokbGFuZ1sncHJvbXB0X251bXJlc2V0cmVjb3JkJ10gPSAnSyZhdW1sO3l0dCZhdW1sO2ppJmF1bWw7IHQmYXVtbDtsbCZhdW1sOyBoZXRrZWxsJmF1bWw7IHJla2lzdGVyJm91bWw7aXR5bSZhdW1sO3NzJmF1bWw7OiAnOwokbGFuZ1sncmVtb3ZlMXdlZWsnXSA9ICdQb2lzdGEga2Fpa2tpIHlsaSB2aWlrb24gdmFuaGF0JzsKJGxhbmdbJ3JlbW92ZTFtb250aCddID0gJ1BvaXN0YSBrYWlra2kgeWxpIGt1dWthdWRlbiB2YW5oYXQnOwokbGFuZ1sncmVtb3ZlMWRheSddID0gJ1BvaXN0YSBrYWlra2kgeWxpIHAmYXVtbDtpdiZhdW1sO24gdmFuaGF0JzsKJGxhbmdbJ3JlbW92ZWFsbCddID0gJ1BvaXN0YSBrYWlra2knOwokbGFuZ1snYXJleW91c3VyZSddID0gJ09sZXRrbyB2YXJtYT8nOwokbGFuZ1sncmVnaXN0cmF0aW9uX2luZm9fZWRpdGVkJ10gPSAnUmVraXN0ZXImb3VtbDtpbnRpIHRpZXRvamEgbXV1dGV0dHUnOwokbGFuZ1sncmVnaXN0cmF0aW9uX2NvbmZpcm1hdGlvbiddID0gJ1Jla2lzdGVyJm91bWw7aW5uaW4gdmFodmlzdHVzJzsKJGxhbmdbJ3VzZXJfcmVnaXN0cmF0aW9uJ10gPSAnUmVraXN0ZXImb3VtbDtpZHknOwokbGFuZ1snZmluYWxtZXNzYWdlX3RlbXBsYXRlJ10gPSAnRmluYWwgTWVzc2FnZSBUZW1wbGF0ZSc7CiRsYW5nWyd0aXRsZV92ZXJpZnlyZWdpc3RyYXRpb24nXSA9ICdWYXJtaXN0YSByZWtpc3RlciZvdW1sO2ludGknOwokbGFuZ1snY29kZSddID0gJ1ZhaHZpc3R1cyBhdmFpbic7CiRsYW5nWydkZWZhdWx0J10gPSAnUGFsYXV0YSBvbGV0dWtzZXQnOwokbGFuZ1snZXJyb3Jfbm9wcm9wZXJ0aWVzJ10gPSAnSyZhdW1sO3l0dCZhdW1sO2omYXVtbDtsdCZhdW1sOyBlaSBsJm91bWw7eWR5IG9taW5haXN1dWtzaWEnOwokbGFuZ1snZXJyb3Jfbm9wcm9wcmVsYXRpb25zJ10gPSAnTm8gcHJvcGVydHkgcmVsYXRpb25zJzsKJGxhbmdbJ2Vycm9yX2VtYWlsaW52YWxpZCddID0gJ1ZpcmhlZWxsaW5lbiBlbWFpbCBvc29pdGUnOwokbGFuZ1snZXJyb3Jfbm9lbWFpbGFkZHJlc3MnXSA9ICdFaSBrJmF1bWw7eXAmYXVtbDsmYXVtbDsgZW1haWwgb3NvaXRlIGtlbnR0JmF1bWw7JmF1bWw7JzsKJGxhbmdbJ2Vycm9yX3JlcXVpcmVkZmllbGQnXSA9ICdLZW50dCZhdW1sOyAlcyB0JmF1bWw7eXR5eSB0JmF1bWw7eXR0JmF1bWw7JmF1bWw7JzsKJGxhbmdbJ3JlZ2lzdHJhdGlvbjFfdGVtcGxhdGUnXSA9ICdSZWtpc3RlciZvdW1sO2ludGkgcG9oamEgMSc7CiRsYW5nWydyZWdpc3RyYXRpb24yX3RlbXBsYXRlJ10gPSAnUmVraXN0ZXImb3VtbDtpbnRpIHBvaGphIDInOwokbGFuZ1snZW1haWxjb25maXJtX3RlbXBsYXRlJ10gPSAnVmFodmlzdHVzIGVtYWlsIHBvaGphJzsKJGxhbmdbJ2VtYWlsdXNlcmVkaXRlZF90ZW1wbGF0ZSddID0gJ0smYXVtbDt5dHQmYXVtbDtqJmF1bWw7biB0aWV0b2phIHZhaWhkZXR0dSBwb2hqYSc7CiRsYW5nWydwcmVmZXJlbmNlcyddID0gJ0FzZXR1a3NldCc7CiRsYW5nWydlcnJvcl91c2Vybm90Zm91bmQnXSA9ICdLJmF1bWw7eXR0JmF1bWw7aiZhdW1sOyZhdW1sOyBlaSBsJm91bWw7eXR5bnl0JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZSddID0gJ0smYXVtbDt5dHQmYXVtbDtqJmF1bWw7dHVubnVzIG9uIHZpcmhlZWxsaW5lbiAobGlpYW4gbHloeXQsIGxpaWFuIHBpdGsmYXVtbDsgdGFpIHNpcyZhdW1sO2x0JmF1bWw7JmF1bWw7IHZpcmhlZWxsaXNpJmF1bWw7IG1lcmtrZWomYXVtbDspLiBLJmF1bWw7eXR0JmF1bWw7aiZhdW1sO3R1bm51cyBlaSBzYWEgc2lzJmF1bWw7bHQmYXVtbDsmYXVtbDsgdmFpbiBraXJqYWltaWEgamEgbnVtZXJvaXRhIChlaSB2JmF1bWw7bGlseSZvdW1sO250aSZhdW1sOyknOwokbGFuZ1snZXJyb3JfdXNlcm5hbWV0YWtlbiddID0gJ0smYXVtbDt5dHQmYXVtbDtqJmF1bWw7dHVubnVzIG9uIGpvIGsmYXVtbDt5dCZvdW1sO3NzJmF1bWw7JzsKJGxhbmdbJ2Vycm9yX3Bhc3N3b3Jkc2RvbnRtYXRjaCddID0gJ1ZpcmhlOiBzYWxhc2FuYXQgZWl2JmF1bWw7dCBvbGUgeWh0ZW5ldiZhdW1sO3QnOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhc3N3b3JkJ10gPSAnU2FsYXNhbmEgb24gdmlyaGVlbGxpbmVuLiBTYWxhc2FuYW4gdHVsZWUgb2xsYSB2JmF1bWw7aGludCZhdW1sOyZhdW1sO24gJXMgamEgZW5pbnQmYXVtbDsmYXVtbDtuICVzIG1lcmtraSZhdW1sOyBwaXRrJmF1bWw7JzsKJGxhbmdbJ2Vycm9yX2VtcHR5dXNlcm5hbWUnXSA9ICdLJmF1bWw7eXR0JmF1bWw7aiZhdW1sO3R1bm51cyBlaSB2b2kgb2xsYSB0eWhqJmF1bWw7JzsKJGxhbmdbJ3JlcGVhdHBhc3N3b3JkJ10gPSAnU2FsYXNhbmEgKHV1ZGVzdGFhbiknOwokbGFuZ1sncGFzc3dvcmQnXSA9ICdTYWxhc2FuYSc7CiRsYW5nWyd1c2VybmFtZSddID0gJ0smYXVtbDt5dHQmYXVtbDtqJmF1bWw7dHVubnVzJzsKJGxhbmdbJ2NhcHRjaGFfdGl0bGUnXSA9ICdTeSZvdW1sO3QmYXVtbDsga3V2YXNzYSBvbGV2YSB0ZWtzdGknOwokbGFuZ1snZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJ10gPSAnViZhdW1sOyZhdW1sO3ImYXVtbDt0IHBhcmFtZXRyaXQgbW9kdWxpIGt1dHN1c3NhJzsKJGxhbmdbJ2Vycm9yX25vZmV1c2Vyc21vZHVsZSddID0gJ0VpIHZvaXR1IGFsdXN0YWEgRnJvbnRFbmRVc2VycyBtb2R1bGlhJzsKJGxhbmdbJ2Vycm9yX25vc3VjaGdyb3VwJ10gPSAnVmFsaXR0dWEgcnlobSZhdW1sOyZhdW1sOyBlaSBvbGUnOwokbGFuZ1snZXJyb3JfY2FwdGNoYW1pc21hdGNoJ10gPSAnS3V2YXNzYSBvbGV2YSBqYSBzeSZvdW1sO3RldHR5IHRla3N0aSBlaXYmYXVtbDt0IG9sZSB5aHRlbmV2JmF1bWw7dCc7CiRsYW5nWydzZW5kX2VtYWlsc190byddID0gJ1Jla2lzdGVyJm91bWw7aW50aSBlbWFpbGl0IGwmYXVtbDtoZXRlJmF1bWw7JmF1bWw7biBvc29pdHRlZXNlZW4nOwokbGFuZ1sncmVxdWlyZV9lbWFpbF9jb25maXJtYXRpb24nXSA9ICdWYWFkaSBrJmF1bWw7eXR0JmF1bWw7aiZhdW1sOyZhdW1sOyB2YWh2aXN0YW1hYW4gcmVraXN0ZXImb3VtbDtpbnRpIHMmYXVtbDtoayZvdW1sO3Bvc3RpbGxhJzsKJGxhbmdbJ25vdGlmeV9vbl9yZWdpc3RyYXRpb24nXSA9ICdMJmF1bWw7aGV0JmF1bWw7IGVtYWlsIGlsbW9pdHVzIHV1ZGVzdGEgcmVraXN0ZXImb3VtbDtpbm5pc3QmYXVtbDsnOwokbGFuZ1snY2FuY2VsJ10gPSAnUGVydXV0YSc7CiRsYW5nWydzdWJtaXQnXSA9ICdMJmF1bWw7aGV0JmF1bWw7JzsKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ1NlbGYgUmVnaXN0cmF0aW9uIE1vZHVsZSc7CiRsYW5nWydwb3N0aW5zdGFsbCddID0gJ0luc3RhbGxhdGlvbiBzdWNjZXNzZnVsbCwgcGxlYXNlIHJlbWVtYmVyIHRvIHNldCB0aGUgJnF1b3Q7TW9kaWZ5IFNlbGZSZWdpc3RyYXRpb24gU2V0dGluZ3MmcXVvdDsgcGVybWlzc2lvbi4gIElmIHRoZSBDYXB0Y2hhIG1vZHVsZSBpcyBpbnN0YWxsZWQsIHRoZW4gY2FwdGNoYSBmdW5jdGlvbmFsaXR5IGlzIGVuYWJsZWQgYnkgZGVmYXVsdC4gIFdlIHN0cm9uZ2x5IHJlY2NvbW1lbmQgdGhhdCB5b3UgaW5zdGFsbCB0aGlzIG1vZHVsZS4gIElmIHRoZSBDYXB0Y2hhIG1vZHVsZSBpcyBpbnN0YWxsZWQsIGFuZCB5b3Ugd2FudCB0byBkaXNhYmxlIGl0LCB1c2UgdGhlIG5vY2FwdGNoYSBwYXJhbSBpbiB5b3VyIHNlbGZyZWdpc3RyYXRpb24gdGFnLic7CiRsYW5nWydwb3N0dW5pbnN0YWxsJ10gPSAnU2VsZiBSZWdpc3RyYXRpb24gbW9kdWxlIGlzIHVuaW5zdGFsbGVkLiAgU2VlIHlvdSBsYXRlci4nOwokbGFuZ1sndW5pbnN0YWxsZWQnXSA9ICdNb2R1bGUgVW5pbnN0YWxsZWQuJzsKJGxhbmdbJ2luc3RhbGxlZCddID0gJ01vZHVsZSB2ZXJzaW9uICVzIGluc3RhbGxlZC4nOwokbGFuZ1sncHJlZnN1cGRhdGVkJ10gPSAnTW9kdWxpbiBhc2V0dWtzZXQgcCZhdW1sO2l2aXRldHR5Lic7CiRsYW5nWydhY2Nlc3NkZW5pZWQnXSA9ICdBY2Nlc3MgRGVuaWVkLiBQbGVhc2UgY2hlY2sgeW91ciBwZXJtaXNzaW9ucy4nOwokbGFuZ1snZXJyb3InXSA9ICdWaXJoZSEnOwokbGFuZ1sndXBncmFkZWQnXSA9ICdNb2R1bGUgdXBncmFkZWQgdG8gdmVyc2lvbiAlcy4nOwokbGFuZ1sndGl0bGVfbW9kX3ByZWZzJ10gPSAnTW9kdWxpbiBhc2V0dWtzZXQnOwokbGFuZ1sndGl0bGVfbW9kX2FkbWluJ10gPSAnTW9kdWxpbiBhc2V0dXMgcGFuZWVsaSc7CiRsYW5nWyd0aXRsZV9hZG1pbl9wYW5lbCddID0gJ1NlbGYgUmVnaXN0cmF0aW9uIE1vZHVsZSc7CiRsYW5nWydtb2RkZXNjcmlwdGlvbiddID0gJ0EgbW9kdWxlIHRoYXQgYWxsb3dzIGZyb250IGVuZCB1c2VycyB0byByZWdpc3RlciB0aGVtc2VsdmVzLic7CiRsYW5nWyd3ZWxjb21lX3RleHQnXSA9ICc8cD5XZWxjb21lIHRvIHRoZSBzZWxmIHJlZ2lzdHJhdGlvbiBtb2R1bGUuPC9wPic7CiRsYW5nWydjaGFuZ2Vsb2cnXSA9ICc8dWw+DQo8bGk+VmVyc2lvbiAwLjAuMS4gT2N0IDIwMDUuIEluaXRpYWwgTlJQVCAoTm90IFJlYWR5IGZvciBQcmltZSBUaW1lKSByZWxlYXNlLjwvbGk+DQo8bGk+VmVyc2lvbiAwLjEuMC4gT2N0IDIwMDUuIEluaXRpYWwgcmVsZWFzZS48L2xpPg0KPGxpPlZlcnNpb24gMC4xLjEuIE9jdCAyMDA1LiBTZXQgdGhlIEhUTUwgbWFpbCBmbGFnLjwvbGk+DQo8bGk+VmVyc2lvbiAwLjEuMi4gT2N0IDIwMDUuIE1vdmVkIFJhbmRvbSBzdHVmZiBpbnRvIGZldXNlcnMsIGFuZCBhZGRlZCB0aGUgYWJpbGl0eSB0byBkZWxldGUgb2xkIGVudHJpZXMgZnJvbSB0aGUgcmVnaXN0cmF0aW9uIHRlbXBvcmFyeSB0YWJsZXM8L2xpPg0KPGxpPjxwPlZlcnNpb24gMC4xLjMuIC0gRGVjIDIwMDU8L3A+DQo8cD5GaXhlZCB0aGUgdG9nZ2xlcyBpbiB0aGUgYWRtaW4gcHJlZmVyZW5jZXMuICBBbHNvLCBjaGFuZ2VkIHRoZSBwZXJtaXNzaW9ucyBtb2RlbCB0byBub3QgcmVxdWlyZSB0aGUgdW5pcXVlIHBlcm1pc3Npb24gYWRkZWQgcHJldmlvdXNseSBmb3IgdGhlIHNlbGZyZWcgbW9kdWxlLjwvcD4NCjxwPlRoaXMgcmVsZWFzZSB3YXMgcmVtb3ZlZCBkdWUgdG8gcG9zc2libGUgZXJyb3JzPC9wPg0KPC9saT4NCjxsaT48cD5WZXJzaW9uIDAuMS40LiAtIEphbiAyMDA2PC9wPg0KPHA+Rml4ZWQgbWlub3IgZXJyb3JzIHdpdGggQ2hlY2tQZXJtaXNzaW9uLCByZXBsYWNlZCBhbGwgYXNzaWduX2J5X3JlZnMmIzAzOTtzIHdpdGggYXNzaWducyBmb3IgaG9wZWZ1bCBwaHA1IGNvbXBhdGliaWxpdHkuPC9wPg0KPGxpPjxwPlZlcnNpb24gMC4xLjUuIC0gSmFuIDIwMDY8L3A+DQo8cD5BZGRlZCB0aGUgYWJpbGl0eSB0byBzZXQgdGhlIHN1YmplY3Qgb2YgdGhlIGNvbmZpcm1hdGlvbiBlbWFpbCwgYW5kIGFkZGVkIHRoZSBhYmlsaXR5IHRvIHNwZWNpZnkgYSB0ZXh0IGJvZHkuICBTdWJqZWN0LCBhbmQgdGV4dCBib2R5IGFyZSByZXF1aXJlZC48L3A+DQo8L2xpPg0KPGxpPjxwPlZlcnNpb24gMS4wLjAuIC0gRmViIDIwMDY8L3A+DQo8cD5GaXhlZCBhIHByb2JsZW0gd2l0aCB0aGUgdmVyaWZ5IG1vZGUuPC9wPg0KPHA+QWRkZWQgdGhlIGFiaWxpdHkgdG8gZWRpdCBhbmQgZGVsZXRlIHVzZXJzLiB3aXRoIHNlbGVjdGlvbiBvbiB0aGUgY2hlY2tib3hlcywgYW5kICZxdW90O2NoZWNrYWxsJnF1b3Q7PC9wPg0KPHA+Tm93IHJlcXVpcmUgRkVVc2VycyAwLjEuOCBhbmQgQ01TTWFpbGVyIDEuNzMuOTwvcD4NCjxwPkFkZGVkIGFub3RoZXIgdGFiIGZvciB0aGUgJnF1b3Q7eW91ciBzZXR0aW5ncyBoYXZlIGJlZW4gYWRqdXN0ZWQmcXVvdDsgZW1haWwgdGVtcGxhdGVzPC9wPg0KPHA+QWRkZWQgQ1NWIEV4cG9ydGluZzwvcD4NCjxwPkFkZGVkIGEgJnF1b3Q7RGVsZXRlIGFsbCB1c2VycyBvbGRlciB0aGFuIGEgZGF5JnF1b3Q7IGJ1dHRvbjwvcD4NCjxwPk5vdyB3b3JrcyB3aXRoIHRoZSBtYXhpbXVtIGxlbmd0aCBmaWVsZCBvZiBGRVVzZXJzPC9wPg0KPHA+QWRkZWQgc3VwcG9ydCBmb3IgZHJvcGRvd25zIGFuZCB0ZXh0IGFyZWFzPC9wPg0KPHA+RGlzYWxsb3cgcHVuY3R1YXRpb24gY2hhcmFjdGVycyBpbiB1c2VybmFtZTwvcD4NCjwvbGk+DQo8bGk+PHA+VmVyc2lvbiAxLjAuMS4gLSBGZWIgMjAwNjwvcD4NCjxwPkFkZGVkIHRoZSBhYmlsaXR5IGZvciB1c2VycyB0byByZXF1ZXN0IGFub3RoZXIgcmVnaXN0cmF0aW9uIGVtYWlsICh1c2VzIHRoZSBzYW1lIGNvZGUpLCBpbmNhc2UgdGhleSBsb3N0IHRoZWlyIGZpcnN0IG9uZS48L3A+DQo8L2xpPg0KPGxpPjxwPlZlcnNpb24gMS4wLjIuIC0gRmViIDIwMDY8L3A+DQo8cD5UaGUgJnF1b3Q7UmVxdWlyZSBlbWFpbCBjb25maXJtYXRpb24mcXVvdDsgY2hlY2tib3ggbm93IHdvcmtzLiAgVXNlcnMgYXJlIGFkZGVkIHN0cmFpZ2h0IHRvIHRoZSBmcm9udGVuZCB1c2VycyBkYXRhYmFzZTwvcD4NCjxwPkZpeGVkIGEgYnVnIHdpdGggdGhlIGNvbmZpcm1hdGlvbiBlbWFpbHMgaGF2aW5nIGxpbmtzIHRvIHRoZSBhZG1pbiBzZWN0aW9uIChuZXcgYnVnIG9ubHkpLjwvcD4NCjwvbGk+DQo8bGk+PHA+VmVyc2lvbiAxLjAuMy4gLSBGZWIgMjAwNjwvcD4NCjxwPkFkZGVkIHRoZSAob3B0aW9uYWwpIGFiaWxpdHkgdG8gcmVxdWlyZSB0aGUgdXNlciBlbnRlciB0aGUgZW1haWwgYWRkcmVzcyB0d2ljZTwvcD4NCjxwPkZpeGVkIGEgYnVnIHdpdGggdGhlIHVzZXJlZGl0ZWQgbWVzc2FnZSBub3QgYmVpbmcgdGhyb3duIHRocm91Z2ggc21hcnR5PC9wPg0KPHA+Rml4ZWQgdGhlIGRlZmF1bHQgcmVnaXN0cmF0aW9uIHRlbXBsYXRlIGEgYml0IHRvIGFpZGUgaW4gdmFsaWRhdGlvbiBmb3Igbm9uIHJlcXVpcmVkIGZpZWxkcyAoZml4ZWQgYSB3YXJuaW5nKTwvcD4NCjxwPkZpeCBwcm9ibGVtcyB3aXRoIGlubGluZSBhbmQgbm9uLWlubGluZSBmb3JtcyBhbmQgbGlua3M8L3A+DQo8cD5IYW5kbGUgYW5vdGhlciBjYXNlIHdoZXJlIHRoZSBhZG1pbiBtYXkgbm90IGhhdmUgY3JlYXRlZCB0aGUgcHJvcGVyIHR5cGUgb2YgZW1haWwgcHJvcGVydHk8L3A+DQo8cD5DaGFuZ2VkIHRvIHJlcXVpcmUgQ01TIDAuMTItYmV0YTIgYXQgYSBtaW5pbXVtIChmb3Igc2FmZXR5IHB1cnBvc2VzKTwvcD4NCjwvbGk+DQo8bGk+PHA+VmVyc2lvbiAxLjAuNC4gLSBNYXIgMjAwNjwvcD4NCjxwPk1vcmUgY29udHJvbCBvdmVyIHVzZXJuYW1lIGFuZCBwYXNzd29yZCBmaWVsZCBzaXplcyAoY29udHJvbGxlZCBieSBmZXVzZXJzKTwvcD4NCjxwPkNvbmZpcm1hdGlvbiBvbiBlZGl0aW5nIHByZWZlcmVuY2VzPC9wPg0KPHA+UmVxdWlyZSAwLjEyIHByb3BlciBvZiBjbXMgYXMgYSBtaW5pbXVtPC9wPg0KPC9saT4NCjxsaT48cD5WZXJzaW9uIDEuMS4wLiAtIERlYyAyMDA2PC9wPg0KICAgIDxwPkFkZGVkIGV2ZW50cyBhbmQgMS4wIGNvbXBhdGliaWxpdHk8L3A+DQogICAgPHA+Q2FwdGNoYSBzdXBwb3J0ICh0aGFua3MgRGl0dG1hbik8L3A+DQo8L2xpPg0KPGxpPjxwPlZlcnNpb24gMS4xLjEuIC0gQXByIDIwMDc8L3A+DQogICAgPHA+Tm93IHJlcXVpcmUgRkVVc2VycyAxLjIuMCAobWluaW11bSk8L3A+DQogICAgPHA+U3VwcG9ydCBmb3IgbXVsdGlzZWxlY3QgbGlzdHMgaW4gZmV1c2VyczwvcD4NCiAgICA8cD5PdXRwdXQgc29tZSBtb3JlIGZpZWxkcyB0byBzbWFydHkgdG8gYWxsb3cgZm9yIGluY3JlYXNlZCBhY2Nlc3NpYmlsaXR5PC9wPg0KICAgIDxwPlNwbGl0IGNvZGUgb3V0IGludG8gbXVsdGlwbGUgZmlsZXMgdG8gcmVkdWNlIG92ZXJhbGwgbWVtb3J5IGZvb3RwcmludDwvcD4NCiAgICA8cD5JZ25vcmUgYWxsIGltYWdlIGZpZWxkczwvcD4NCiAgICA8cD5DaGFuZ2UgQ2FwdGNoYSBzdXBwb3J0IHRvIGJlIG9uIGJ5IGRlZmF1bHQgaWYgdGhlIENhcHRjaGEgbW9kdWxlIGlzIGZvdW5kPC9wPg0KPC9saT4NCjwvdWw+JzsKJGxhbmdbJ2hlbHAnXSA9ICc8aDM+V2hhdCBEb2VzIFRoaXMgRG8/PC9oMz4NCjxwPlRoaXMgbW9kdWxlIGlzIGRlc2lnbmVkIHRvIGFsbG93IGZyb250IGVuZCB1c2VycyB0byByZWdpc3RlciB0aGVtc2VsdmVzIGFuZCBmaWxsIGluIHRoZSByZXF1aXJlZCBpbmZvcm1hdGlvbi4gIEl0IHRoZW4gc2VuZHMgYSBjb25maXJtYXRpb24gZW1haWwsIHdpdGggYSBsaW5rIHRvIGEgc2Vjb25kIHBhZ2UgdGhhdCBtdXN0IGJlIGNvbXBsZXRlZCBiZWZvcmUgdGhlIHJlZ2lzdHJhdGlvbiBpcyBjb21wbGV0ZS4gIE9uY2UgcmVnaXN0cmF0aW9uIGlzIGNvbXBsZXRlLCBhIHVzZXIgYWNjb3VudCBpcyBjcmVhdGVkIGluIHRoZSBmcm9udCBlbmQgdXNlcnMgbW9kdWxlLjwvcD4NCjxwPkluIG9yZGVyIHRvIHVzZSB0aGlzIG1vZHVsZSwgeW91IG11c3QgY3JlYXRlIGEgcHJvcGVydHkgb2YgdHlwZSAmcXVvdDtFbWFpbCBBZGRyZXNzJnF1b3Q7IGluIHRoZSBGcm9udGVuZFVzZXJzIG1vZHVsZSwgYW5kIGFzc29jaWF0ZSB0aGF0IHByb3BlcnR5IHdpdGggdGhlIGdyb3VwIHRvIGJlIHVzZWQgZm9yIHNlbGYgcmVnaXN0cmF0aW9uLjwvcD4NCjxoMz5Ib3cgRG8gSSBVc2UgSXQ8L2gzPg0KPHA+WW91IHBsYWNlIHRoZSBmb2xsb3duZyB0YWcgaW50byB5b3VyIHBhZ2Uge2Ntc19tb2R1bGUgbW9kdWxlPVNlbGZSZWdpc3RyYXRpb24gZ3JvdXA9dXNlcmdyb3VwfTwvcD4NCjxwPllvdSBtdXN0IGhhdmUgcHJldmlvdXNseSBjcmVhdGVkIHByb3BlcnRpZXMgYW5kIHVzZXIgZ3JvdXBzIGluIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZSBpbiBvcmRlciBmb3IgdGhpcyB0byB3b3JrIHByb3Blcmx5LjwvcD4NCjxoMz5QYXJhbWV0ZXJzPC9oMz4NCjxwPjxzdHJvbmc+bW9kZTwvc3Ryb25nPiZuYnNwOzxlbT5vcHRpb25hbDwvZW0+IC0gcG9zc2libGUgdmFsdWVzIGFyZSAmcXVvdDtzaWdudXAmcXVvdDsgYW5kICZxdW90O3ZlcmlmeSZxdW90Oy4gIElmIHRoaXMgcGFyYW1ldGVyIGlzIG5vdCBzcGVjaWZpZWQsICZxdW90O3NpZ251cCZxdW90OyBpcyBhc3N1bWJlZC48L3A+DQo8cD48c3Ryb25nPmdyb3VwPC9zdHJvbmc+Jm5ic3A7PGVtPm9wdGlvbmFsPC9lbT4gLSBUaGlzIHBhcmFtZXRlciBpcyByZXF1aXJlZCBpZiBtb2RlIGlzICZxdW90O3NpZ251cCZxdW90Oywgb3IgaWYgbW9kZSBpcyBsZWZ0IGVtcHR5LjwvcD4NCjxwPjxzdHJvbmc+bm9jYXB0Y2hhPC9zdHJvbmc+Jm5ic3A7PGVtPm9wdGlvbmFsPC9lbT4gLSBUaGlzIHdpbGwgZGlzYWJsZSBjYXB0Y2hhIG9uIHRoZSBzaWdudXAgZm9ybS4gQnkgZGVmYXVsdCwgaWYgdGhlIENhcHRjaGEgbW9kdWxlIGlzIGluc3RhbGxlZCwgY2FwdGNoYSBzdXBwb3J0IGlzIHByb3ZpZGVkLiAgVGhpcyBwYXJhbWV0ZXIgZGlzYWJsZXMgaXQuPC9wPg0KPGgzPlN1cHBvcnQ8L2gzPg0KPHA+VGhpcyBtb2R1bGUgZG9lcyBub3QgaW5jbHVkZSBjb21tZXJjaWFsIHN1cHBvcnQuIEhvd2V2ZXIsIHRoZXJlIGFyZSBhIG51bWJlciBvZiByZXNvdXJjZXMgYXZhaWxhYmxlIHRvIGhlbHAgeW91IHdpdGggaXQ6PC9wPg0KPHVsPg0KPGxpPkZvciB0aGUgbGF0ZXN0IHZlcnNpb24gb2YgdGhpcyBtb2R1bGUsIEZBUXMsIG9yIHRvIGZpbGUgYSBCdWcgUmVwb3J0IG9yIGJ1eSBjb21tZXJjaWFsIHN1cHBvcnQsIHBsZWFzZSB2aXNpdCBjYWxndXkmIzAzOTtzDQptb2R1bGUgaG9tZXBhZ2UgYXQgPGEgaHJlZj0mcXVvdDtodHRwOi8vdGVjaGNvbS5keW5kbnMub3JnJnF1b3Q7PnRlY2hjb20uZHluZG5zLm9yZzwvYT4uPC9saT4NCjxsaT5BZGRpdGlvbmFsIGRpc2N1c3Npb24gb2YgdGhpcyBtb2R1bGUgbWF5IGFsc28gYmUgZm91bmQgaW4gdGhlIDxhIGhyZWY9JnF1b3Q7aHR0cDovL2ZvcnVtLmNtc21hZGVzaW1wbGUub3JnJnF1b3Q7PkNNUyBNYWRlIFNpbXBsZSBGb3J1bXM8L2E+LjwvbGk+DQo8bGk+VGhlIGF1dGhvciwgY2FsZ3V5MTAwMCwgY2FuIG9mdGVuIGJlIGZvdW5kIGluIHRoZSA8YSBocmVmPSZxdW90O2lyYzovL2lyYy5mcmVlbm9kZS5uZXQvI2NtcyZxdW90Oz5DTVMgSVJDIENoYW5uZWw8L2E+LjwvbGk+DQo8bGk+TGFzdGx5LCB5b3UgbWF5IGhhdmUgc29tZSBzdWNjZXNzIGVtYWlsaW5nIHRoZSBhdXRob3IgZGlyZWN0bHkuPC9saT4gIA0KPC91bD4NCjxwPkFzIHBlciB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIHByb3ZpZGVkIGFzLWlzLiBQbGVhc2UgcmVhZCB0aGUgdGV4dA0Kb2YgdGhlIGxpY2Vuc2UgZm9yIHRoZSBmdWxsIGRpc2NsYWltZXIuPC9wPg0KDQo8aDM+Q29weXJpZ2h0IGFuZCBMaWNlbnNlPC9oMz4NCjxwPkNvcHlyaWdodCAmY29weTsgMjAwNSwgUm9iZXJ0IENhbXBiZWwgPGEgaHJlZj0mcXVvdDttYWlsdG86Y2FsZ3V5MTAwMEBob3RtYWlsLmNvbSZxdW90Oz48Y2FsZ3V5MTAwMEBob3RtYWlsLmNvbT48L2E+LiBBbGwgUmlnaHRzIEFyZSBSZXNlcnZlZC48L3A+DQo8cD5UaGlzIG1vZHVsZSBoYXMgYmVlbiByZWxlYXNlZCB1bmRlciB0aGUgPGEgaHJlZj0mcXVvdDtodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwmcXVvdDs+R05VIFB1YmxpYyBMaWNlbnNlPC9hPi4gWW91IG11c3QgYWdyZWUgdG8gdGhpcyBsaWNlbnNlIGJlZm9yZSB1c2luZyB0aGUgbW9kdWxlLjwvcD4NCic7CiRsYW5nWyd1dG1hJ10gPSAnMTU2ODYxMzUzLjgzMTk5ODczMi4xMTcxNzk1OTgxLjExNzg1Mzc5NTEuMTE3ODYxNzMxNy41JzsKJGxhbmdbJ3V0bXonXSA9ICcxNTY4NjEzNTMuMTE3MTc5NTk4MS4xLjEudXRtY2NuPShyZWZlcnJhbCl8dXRtY3NyPWZvcnVtLmNtc21hZGVzaW1wbGUub3JnfHV0bWNjdD0vaW5kZXgucGhwfHV0bWNtZD1yZWZlcnJhbCc7Cj8+]]></data>
	</file>
	<file>
	  <filename>/lang/ext/it_IT.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2Vycm9yX2NvZGVzZG9udG1hdGNoJ10gPSAnTGEgY2hpYXZlIGRpIHZhbGlkYXppb25lIG5vbiAmZWdyYXZlOyB2YWxpZGEnOwokbGFuZ1snZXZlbnRfZGVzY3JpcHRpb25fb25OZXdVc2VyJ10gPSAnVW4gZXZlbnRvIGluZGljYSBjaGUgdW4gbnVvdm8gdXRlbnRlIGhhIGNvbXBsZXRhdG8gaWwgbW9kdWxvIGRpIHJlZ2lzdHJhemlvbmUnOwokbGFuZ1snZXZlbnRfZGVzY3JpcHRpb25fb25Vc2VyUmVnaXN0ZXJlZCddID0gJ1VuIGV2ZW50byBpbmRpY2EgY2hlIHVuIHV0ZW50ZSBoYSB2ZXJpZmljYXRvIGxlIHN1ZSBpbmZvcm1hemlvbmkgZSBvcmEgJmVncmF2ZTsgY29tcGxldGFtZW50ZSByZWdpc3RyYXRvJzsKJGxhbmdbJ2V2ZW50X2hlbHBfb25OZXdVc2VyJ10gPSAnPHA+QW4gZXZlbnQgaW5kaWNhdGluZyB0aGF0IGEgbmV3IHVzZXIgaGFzIGNvbXBsZXRlZCB0aGUgcmVnaXN0cmF0aW9uIGZvcm08L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgbmV3IHVzZXJzIHNlbGVjdGVkIHVzZXJuYW1lPC9saT4NCjxsaT48ZW0+ZW1haWw8L2VtPiAtIFRoZSBuZXcgdXNlcnMgZW1haWwgYWRkcmVzczwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfb25Vc2VyUmVnaXN0ZXJlZCddID0gJzxwPkFuIGV2ZW50IGluZGljYXRpbmcgdGhhdCBhIHVzZXIgaGFzIGJlZW4gdmVyaWZpZWQgYW5kIGlzIG5vdyByZWdpc3RlcmVkIHdpdGggZmV1c2VyczwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSByZWdpc3RlcmVkIHVzZXJuYW1lPC9saT4NCjwvdWw+DQonOwokbGFuZ1snY29uZmlybV9zdWJtaXRwcmVmcyddID0gJ0NhbWJpYXJlIGxlIHByZWZlcmVuemUgZGkgYW1taW5pc3RyYXppb25lPyc7CiRsYW5nWydpbmZvX2FkbWluX3Bhc3N3b3JkJ10gPSAnTGFzY2lhIHF1ZXN0byBjYW1wbyB2dW90byBwZXIgcHJlc2VydmFyZSBsYSBwYXNzd29yZCc7CiRsYW5nWydpbmZvX2FkbWluX3JlcGVhdHBhc3N3b3JkJ10gPSAnTGFzY2lhIHF1ZXN0byBjYW1wbyB2dW90byBwZXIgcHJlc2VydmFyZSBsYSBwYXNzd29yZCc7CiRsYW5nWydlcnJvcl9lbWFpbGRvZXNub3RtYXRjaCddID0gJ0luZGlyaXp6aSBlbWFpbCBub24gY29pbmNpZG9ubyc7CiRsYW5nWydmb3JjZV9lbWFpbF90d2ljZSddID0gJ0UmIzAzOTsgcmljaGllc3RvIGNoZSBsJiMwMzk7dXRlbnRlIGludHJvZHVjYSBsJiMwMzk7aW5kaXJpenpvIGVtYWlsIGR1ZSB2b2x0ZSc7CiRsYW5nWydhZ2FpbiddID0gJ2RpIG51b3ZvJzsKJGxhbmdbJ2RlbGV0ZXNlbHVzZXJzJ10gPSAnQ2FuY2VsbGEgZ2xpIHV0ZW50aSBzZWxlemlvbmF0aSc7CiRsYW5nWydlcnJvcl9ub3Byb3BkZWZucyddID0gJ05lc3N1bmEgZGVmaW5pemlvbmUgZGkgcHJvcHJpZXQmYWdyYXZlOywgbyB1biBwcm9ibGVtYSBhIHJpY2V2ZXJsZSBkYWwgZGF0YWJhc2UnOwokbGFuZ1snZXJyb3Jfbm9ncm91cHMnXSA9ICdOZXNzdW4gZ3J1cHBvLCBvIHVuIHByb2JsZW1hIGEgcmljZXZlcmUgbGEgbGlzdGEgZ3J1cHBpJzsKJGxhbmdbJ2Vycm9yX2RiZXJyb3InXSA9ICdFcnJvcmUgbmVsIGRhdGFiYXNlJzsKJGxhbmdbJ3RpdGxlX3Bvc3Rfc2VuZGFub3RoZXJlbWFpbF90ZW1wbGF0ZSddID0gJ01vZGVsbG8gcGVyIEVtYWlsIHBlcnNhIGluc2VyaXRvJzsKJGxhbmdbJ3RpdGxlX3NlbmRhbm90aGVyZW1haWxfdGVtcGxhdGUnXSA9ICdNb2RlbGxvIHBlciBFbWFpbCBwZXJzYSc7CiRsYW5nWydjbGlja2hlcmUnXSA9ICdwcmVtZW5kbyBxdWEnOwokbGFuZ1snbXNnX3NlbmRhbm90aGVyZW1haWwnXSA9ICdTZSBhdmV0ZSBjb21wbGV0YXRvIGlsIG1vZHVsbyBkaSByZWdpc3RyYXppb25lIG1hIG5vbiBhdmV0ZSByaWNldnV0byBsYSBlbWFpbCwgcG90ZXRlIHJpc3BlZGlybmUgdW4mIzAzOTthbHRyYSc7CiRsYW5nWydzZW5kYW5vdGhlcmVtYWlsX3RlbXBsYXRlJ10gPSAnTW9kZWxsbyBwZXIgRW1haWwgcGVyc2EnOwokbGFuZ1snaW5mb191c2VydmVyaWZpZWQnXSA9ICdVbiBudW92byB1dGVudGUgJmVncmF2ZTsgc3RhdG8gYWdnaXVudG8gYWkgRnJvbnRFbmRVc2Vycyc7CiRsYW5nWydlZGl0J10gPSAnTW9kaWZpY2EnOwokbGFuZ1sndW5rbm93biddID0gJ1Njb25vc2NpdXRvJzsKJGxhbmdbJ3NlbGVjdCddID0gJ1NlbGV6aW9uYSc7CiRsYW5nWydjaGVja19hbGwnXSA9ICdTZWxlemlvbmEgdHV0dG8nOwokbGFuZ1sndW5jaGVja19hbGwnXSA9ICdEZXNlbGV6aW9uYSB0dXR0byc7CiRsYW5nWydzZW5kX2FkanVzdG1lbnRlbWFpbCddID0gJ1NwZWRpc2NlIHVuYSBlbWFpbCBhbGwmIzAzOTt1dGVudGUnOwokbGFuZ1sndHh0X2FkanVzdG1lbnRlbWFpbCddID0gJyhpbmZvcm1hIGwmIzAzOTt1dGVudGUgY2hlIGwmIzAzOTthY2NvdW50ICZlZ3JhdmU7IHN0YXRvIGNvbnNvbGlkYXRvJzsKJGxhbmdbJ3R4dF9jaGFuZ2VwYXNzd29yZCddID0gJ1JpZW1waXJlIHF1ZXN0aSBjYW1waSBwZXIgY2FtYmlhcmUgbGEgcGFzc3dvcmQnOwokbGFuZ1snZWRpdHVzZXInXSA9ICdNb2RpZmljYSB1dGVudGUnOwokbGFuZ1snYXJleW91c3VyZV9kZWxldGV1c2VyJ10gPSAnU2lldGUgc2ljdXJvIGRpIHZvbGVyIGNhbmNlbGxhcmUgcXVlc3RvIHV0ZW50ZSByZWdpc3RyYXRvIHBhcnppYWxtZW50ZT8nOwokbGFuZ1snaGRyX3VzZXJpZCddID0gJ0lEIFV0ZW50ZSc7CiRsYW5nWydoZHJfdXNlcm5hbWUnXSA9ICdVc2VybmFtZSc7CiRsYW5nWydoZHJfZ3JwbmFtZSddID0gJ0dydXBwbyc7CiRsYW5nWydoZHJfY3JlYXRlZCddID0gJ0NyZWF0byc7CiRsYW5nWydoZHJfZW1haWwnXSA9ICdFbWFpbCc7CiRsYW5nWyd1c2Vyc2ZvdW5kJ10gPSAnVXRlbnRpIHRyb3ZhdGkgKGxpbWl0YXRvIGFkIHVuIG1hc3NpbW8gZGkgMjUwKSc7CiRsYW5nWyd1c2VycyddID0gJ1V0ZW50aSc7CiRsYW5nWydsaXN0MWRheSddID0gJ1Zpc3VhbGl6emEgdHV0dGUgbGUgZW50cmF0ZSBwaSZ1Z3JhdmU7IHZlY2NoaWUgZGkgdW4gZ2lvcm5vJzsKJGxhbmdbJ3N1YmplY3QnXSA9ICdPZ2dldHRvIHBlciBsZSBlbWFpbCBpbiB1c2NpdGEnOwokbGFuZ1snaHRtbGJvZHknXSA9ICdDb3JwbyBkZWwgbWVzc2FnZ2lvIGluIEhUTUwnOwokbGFuZ1sndGV4dGJvZHknXSA9ICdDb3JwbyBkZWwgbWVzc2FnZ2lvIGNvbWUgdGVzdG8nOwokbGFuZ1sncHJvbXB0X251bXJlc2V0cmVjb3JkJ10gPSAnVW4gbnVtZXJvIGRpIHV0ZW50aSBzb25vIG5lbCBtZXp6byBkZWxsYSByZWdpc3RyYXppb25lLiBJbiBxdWVzdG8gbW9tZW50byBpbCBjb250YXRvcmUgJmVncmF2ZTsgYTonOwokbGFuZ1sncmVtb3ZlMXdlZWsnXSA9ICdSaW11b3ZlIHR1dHRlIGxlIGVudHJhdGUgcGkmdWdyYXZlOyB2ZWNjaGllIGRpIHVuYSBzZXR0aW1hbmEnOwokbGFuZ1sncmVtb3ZlMW1vbnRoJ10gPSAnUmltdW92ZSB0dXR0ZSBsZSBlbnRyYXRlIHBpJnVncmF2ZTsgdmVjY2hpZSBkaSB1biBtZXNlJzsKJGxhbmdbJ3JlbW92ZTFkYXknXSA9ICdSaW11b3ZlIHR1dHRlIGxlIGVudHJhdGUgcGkmdWdyYXZlOyB2ZWNjaGllIGRpIHVuIGdpb3Jubyc7CiRsYW5nWydyZW1vdmVhbGwnXSA9ICdSaW11b3ZlIHR1dHRlIGxlIGVudHJhdGUnOwokbGFuZ1snYXJleW91c3VyZSddID0gJ1NpZXRlIHNpY3Vybz8nOwokbGFuZ1sncmVnaXN0cmF0aW9uX2luZm9fZWRpdGVkJ10gPSAnTGEgdm9zdHJhIHJlZ2lzdHJhemlvbmUgJmVncmF2ZTsgc3RhdGEgbW9kaWZpY2F0YSc7CiRsYW5nWydyZWdpc3RyYXRpb25fY29uZmlybWF0aW9uJ10gPSAnQ29uZmVybWEgZGVsbGEgcmVnaXN0cmF6aW9uZSc7CiRsYW5nWyd1c2VyX3JlZ2lzdHJhdGlvbiddID0gJ1JlZ2lzdHJhdGknOwokbGFuZ1snZmluYWxtZXNzYWdlX3RlbXBsYXRlJ10gPSAnTW9kZWxsbyBkZWwgbWVzc2FnZ2lvIGZpbmFsZSc7CiRsYW5nWyd0aXRsZV92ZXJpZnlyZWdpc3RyYXRpb24nXSA9ICdWZXJpZmljYSBkZWxsYSByZWdpc3RyYXppb25lJzsKJGxhbmdbJ2NvZGUnXSA9ICdDaGlhdmUgZGkgdmFsaWRhemlvbmUnOwokbGFuZ1snZGVmYXVsdCddID0gJ1NldHRhIGFpIHZhbG9yaSBwcmVkZWZpbml0aSc7CiRsYW5nWydlcnJvcl9ub3Byb3BlcnRpZXMnXSA9ICdOZXNzdW5hIHByb3ByaWV0JmFncmF2ZTsgcGVyIHF1ZXN0byB1dGVudGUnOwokbGFuZ1snZXJyb3Jfbm9wcm9wcmVsYXRpb25zJ10gPSAnTmVzc3VuYSByZWxhemlvbmUgZGVsbGUgcHJvcHJpZXQmYWdyYXZlOyc7CiRsYW5nWydlcnJvcl9lbWFpbGludmFsaWQnXSA9ICdJbmRpcml6em8gZW1haWwgbm9uIHZhbGlkbyc7CiRsYW5nWydlcnJvcl9ub2VtYWlsYWRkcmVzcyddID0gJ05lc3N1biBjYW1wbyBwZXIgdW4gdmFsaWRvIGluZGlyaXp6byBlbWFpbCAmZWdyYXZlOyBzdGF0byB0cm92YXRvJzsKJGxhbmdbJ2Vycm9yX3JlcXVpcmVkZmllbGQnXSA9ICdJbCBjYW1wbyAlcyBkZXZlIGVzc2VyZSBwcmVzZW50ZSc7CiRsYW5nWydyZWdpc3RyYXRpb24xX3RlbXBsYXRlJ10gPSAnTW9kZWxsbyAxIHBlciBsYSByZWdpc3RyYXppb25lJzsKJGxhbmdbJ3JlZ2lzdHJhdGlvbjJfdGVtcGxhdGUnXSA9ICdNb2RlbGxvIDIgcGVyIGxhIHJlZ2lzdHJhemlvbmUnOwokbGFuZ1snZW1haWxjb25maXJtX3RlbXBsYXRlJ10gPSAnTW9kZWxsbyBwZXIgbGEgY29uZmVybWEgZGEgZW1haWwnOwokbGFuZ1snZW1haWx1c2VyZWRpdGVkX3RlbXBsYXRlJ10gPSAnTW9kZWxsbyBwZXIgaWwgY2FtYmlvIGRlbGxlIGluZm9ybWF6aW9uaSB1dGVudGUnOwokbGFuZ1sncHJlZmVyZW5jZXMnXSA9ICdQcmVmZXJlbnplJzsKJGxhbmdbJ2Vycm9yX3VzZXJub3Rmb3VuZCddID0gJ1V0ZW50ZSBub24gdHJvdmF0byc7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXNlcm5hbWUnXSA9ICdVc2VybmFtZSBub24gdmFsaWRvICh0cm9wcG8gbHVuZ28sIHRyb3BwbyBjb3J0byBvIGNvbnRpZW5lIGNhcmF0dGVyaSBub24gdmFsaWRpKS4gU2kgcmljb3JkYSBjaGUgZGV2ZSBjb250ZW5lcmUgc29sbyBjYXJhdHRlcmkgYWxmYW51bWVyaWNpIHNlbnphIHNwYXppLic7CiRsYW5nWydlcnJvcl91c2VybmFtZXRha2VuJ10gPSAnUXVlc3RvIHVzZXJuYW1lICZlZ3JhdmU7IGdpJmFncmF2ZTsgaW4gdXNvJzsKJGxhbmdbJ2Vycm9yX3Bhc3N3b3Jkc2RvbnRtYXRjaCddID0gJ0Vycm9yZTogbGUgcGFzc3dvcmQgbm9uIGNvaW5jaWRvbm8nOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhc3N3b3JkJ10gPSAnUGFzc3dvcmQgaW52YWxpZGEgKGRldmUgZXNzZXJlIGNvbXByZXNhIGZyYSAlcyBlICVzIGNhcmF0dGVyaSBhbGZhbnVtZXJpY2kgc2VuemEgc3BhemkpJzsKJGxhbmdbJ2Vycm9yX2VtcHR5dXNlcm5hbWUnXSA9ICdVc2VybmFtZSBub24gcHUmb2dyYXZlOyBlc3NlcmUgdnVvdG8nOwokbGFuZ1sncmVwZWF0cGFzc3dvcmQnXSA9ICdQYXNzd29yZCAoZGkgbnVvdm8pJzsKJGxhbmdbJ3Bhc3N3b3JkJ10gPSAnUGFzc3dvcmQnOwokbGFuZ1sndXNlcm5hbWUnXSA9ICdOb21lIHV0ZW50ZSc7CiRsYW5nWydjYXB0Y2hhX3RpdGxlJ10gPSAnSW5zZXJpcmUgaWwgdGVzdG8gZGFsbCYjMDM5O2ltbWFnaW5lJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ051bWVybyBpbnN1ZmZpY2llbnRlIChvIG5vbiBjb3JyZXR0bykgZGkgcGFyYW1ldHJpIGludHJvZG90dGkgYWwgbW9kdWxvJzsKJGxhbmdbJ2Vycm9yX25vZmV1c2Vyc21vZHVsZSddID0gJ05vbiBwb3NzbyBwcmVuZGVyZSB1bmEgaXN0YW56YSBkZWwgbW9kdWxvIEZyb250RW5kVXNlcnMnOwokbGFuZ1snZXJyb3Jfbm9zdWNoZ3JvdXAnXSA9ICdJbCBub21lIGdydXBwbyBzcGVjaWZpY2F0byBub24gZXNpc3RlJzsKJGxhbmdbJ2Vycm9yX2NhcHRjaGFtaXNtYXRjaCddID0gJ0lsIHRlc3RvIGRhbGwmIzAzOTtpbW1hZ2luZSBub24gJmVncmF2ZTsgc3RhdG8gaW5zZXJpdG8gY29ycmV0dGFtZW50ZSc7CiRsYW5nWydzZW5kX2VtYWlsc190byddID0gJ0xhIGVtYWlsIGRpIHJlZ2lzdHJhemlvbmUgc2FyJmFncmF2ZTsgc3BlZGl0YSBhJzsKJGxhbmdbJ3JlcXVpcmVfZW1haWxfY29uZmlybWF0aW9uJ10gPSAnU2kgcmljaGllZGUgY2hlIGwmIzAzOTt1dGVudGUgY29uZmVybWkgbGEgcmVnaXN0cmF6aW9uZSB2aWEgZW1haWwnOwokbGFuZ1snbm90aWZ5X29uX3JlZ2lzdHJhdGlvbiddID0gJ1NwZWRpc2NlIHVuYSBlbWFpbCBkaSBub3RpZmljYSBxdWFuZG8gcXVhbGN1bm8gc2kgcmVnaXN0cmEnOwokbGFuZ1snY2FuY2VsJ10gPSAnQ2FuY2VsbGEnOwokbGFuZ1snc3VibWl0J10gPSAnSW5vbHRyYSc7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdNb2R1bG8gZGkgU2VsZiBSZWdpc3RyYXRpb24nOwokbGFuZ1sncG9zdGluc3RhbGwnXSA9ICdJbnN0YWxsYXRvIGNvbiBzdWNjZXNzbywgc2kgcmljb3JkaSBzaSBzZXR0YXJlIGlsIHBlcm1lc3NvIHBlciAmcXVvdDtNb2RpZnkgU2VsZlJlZ2lzdHJhdGlvbiBTZXR0aW5ncyZxdW90Oy4gU2UgaWwgbW9kdWxvIENhcHRjaGEgJmVncmF2ZTsgaW5zdGFsbGF0bywgYWxsb3JhIGxhIHN1YSBmdW56aW9uYWxpdCZhZ3JhdmU7ICZlZ3JhdmU7IGFiaWxpdGF0YSBwZXIgZGVmYXVsdC4gSW5jb3JhZ2dpYW1vIHRhbGUgaW5zdGFsbGF6aW9uZSBwb2ljaCZlZ3JhdmU7IHV0aWxpenphbmRvIGlsIHBhcmFtZXRybyBub2NhcHRjaGEgJmVncmF2ZTsgcG9zc2liaWxlIGRpc2FiaWxpdGFyZSB0YWxlIGZ1bnppb25hbGl0JmFncmF2ZTsuJzsKJGxhbmdbJ3Bvc3R1bmluc3RhbGwnXSA9ICdJbCBtb2R1bG8gU2VsZiBSZWdpc3RyYXRpb24gJmVncmF2ZTsgZGlzaW5zdGFsbGF0by4nOwokbGFuZ1sndW5pbnN0YWxsZWQnXSA9ICdNb2R1bG8gZGlzaW5zdGFsbGF0by4nOwokbGFuZ1snaW5zdGFsbGVkJ10gPSAnVmVyc2lvbmUgZGVsIG1vZHVsbyAlcyBpbnN0YWxsYXRhLic7CiRsYW5nWydwcmVmc3VwZGF0ZWQnXSA9ICdQcmVmZXJlbnplIGRlbCBtb2R1bG8gYWdnaW9ybmF0ZS4nOwokbGFuZ1snYWNjZXNzZGVuaWVkJ10gPSAnQWNjZXNzbyBuZWdhdG8uIFNpIHByZWdhIGRpIGNvbnRyb2xsYXJlIGkgcGVybWVzc2kuJzsKJGxhbmdbJ2Vycm9yJ10gPSAnRXJyb3JlISc7CiRsYW5nWyd1cGdyYWRlZCddID0gJ01vZHVsbyBhZ2dpb3JuYXRvIGFsbGEgdmVyc2lvbmUgJXMuJzsKJGxhbmdbJ3RpdGxlX21vZF9wcmVmcyddID0gJ1ByZWZlcmVuemUgbW9kdWxvJzsKJGxhbmdbJ3RpdGxlX21vZF9hZG1pbiddID0gJ1Bhbm5lbGxvIGRpIGFtbWluaXN0cmF6aW9uZSBkZWwgbW9kdWxvJzsKJGxhbmdbJ3RpdGxlX2FkbWluX3BhbmVsJ10gPSAnTW9kdWxvIFNlbGYgUmVnaXN0cmF0aW9uJzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnVW4gbW9kdWxvIGNoZSBwZXJtZXR0ZSBhZ2xpIHV0ZW50aSBkaSBhdXRvIHJlZ2lzdHJhcnNpLic7CiRsYW5nWyd3ZWxjb21lX3RleHQnXSA9ICc8cD5CZW52ZW51dGkgbmVsIG1vZHVsbyBkaSBhdXRvcmVnaXN0cmF6aW9uZS48L3A+JzsKJGxhbmdbJ2NoYW5nZWxvZyddID0gJzx1bD4NCjxsaT5WZXJzaW9uIDAuMC4xLiBPY3QgMjAwNS4gSW5pdGlhbCBOUlBUIChOb3QgUmVhZHkgZm9yIFByaW1lIFRpbWUpIHJlbGVhc2UuPC9saT4NCjxsaT5WZXJzaW9uIDAuMS4wLiBPY3QgMjAwNS4gSW5pdGlhbCByZWxlYXNlLjwvbGk+DQo8bGk+VmVyc2lvbiAwLjEuMS4gT2N0IDIwMDUuIFNldCB0aGUgSFRNTCBtYWlsIGZsYWcuPC9saT4NCjxsaT5WZXJzaW9uIDAuMS4yLiBPY3QgMjAwNS4gTW92ZWQgUmFuZG9tIHN0dWZmIGludG8gZmV1c2VycywgYW5kIGFkZGVkIHRoZSBhYmlsaXR5IHRvIGRlbGV0ZSBvbGQgZW50cmllcyBmcm9tIHRoZSByZWdpc3RyYXRpb24gdGVtcG9yYXJ5IHRhYmxlczwvbGk+DQo8bGk+PHA+VmVyc2lvbiAwLjEuMy4gLSBEZWMgMjAwNTwvcD4NCjxwPkZpeGVkIHRoZSB0b2dnbGVzIGluIHRoZSBhZG1pbiBwcmVmZXJlbmNlcy4gIEFsc28sIGNoYW5nZWQgdGhlIHBlcm1pc3Npb25zIG1vZGVsIHRvIG5vdCByZXF1aXJlIHRoZSB1bmlxdWUgcGVybWlzc2lvbiBhZGRlZCBwcmV2aW91c2x5IGZvciB0aGUgc2VsZnJlZyBtb2R1bGUuPC9wPg0KPHA+VGhpcyByZWxlYXNlIHdhcyByZW1vdmVkIGR1ZSB0byBwb3NzaWJsZSBlcnJvcnM8L3A+DQo8L2xpPg0KPGxpPjxwPlZlcnNpb24gMC4xLjQuIC0gSmFuIDIwMDY8L3A+DQo8cD5GaXhlZCBtaW5vciBlcnJvcnMgd2l0aCBDaGVja1Blcm1pc3Npb24sIHJlcGxhY2VkIGFsbCBhc3NpZ25fYnlfcmVmcyYjMDM5O3Mgd2l0aCBhc3NpZ25zIGZvciBob3BlZnVsIHBocDUgY29tcGF0aWJpbGl0eS48L3A+DQo8bGk+PHA+VmVyc2lvbiAwLjEuNS4gLSBKYW4gMjAwNjwvcD4NCjxwPkFkZGVkIHRoZSBhYmlsaXR5IHRvIHNldCB0aGUgc3ViamVjdCBvZiB0aGUgY29uZmlybWF0aW9uIGVtYWlsLCBhbmQgYWRkZWQgdGhlIGFiaWxpdHkgdG8gc3BlY2lmeSBhIHRleHQgYm9keS4gIFN1YmplY3QsIGFuZCB0ZXh0IGJvZHkgYXJlIHJlcXVpcmVkLjwvcD4NCjwvbGk+DQo8bGk+PHA+VmVyc2lvbiAxLjAuMC4gLSBGZWIgMjAwNjwvcD4NCjxwPkZpeGVkIGEgcHJvYmxlbSB3aXRoIHRoZSB2ZXJpZnkgbW9kZS48L3A+DQo8cD5BZGRlZCB0aGUgYWJpbGl0eSB0byBlZGl0IGFuZCBkZWxldGUgdXNlcnMuIHdpdGggc2VsZWN0aW9uIG9uIHRoZSBjaGVja2JveGVzLCBhbmQgJnF1b3Q7Y2hlY2thbGwmcXVvdDs8L3A+DQo8cD5Ob3cgcmVxdWlyZSBGRVVzZXJzIDAuMS44IGFuZCBDTVNNYWlsZXIgMS43My45PC9wPg0KPHA+QWRkZWQgYW5vdGhlciB0YWIgZm9yIHRoZSAmcXVvdDt5b3VyIHNldHRpbmdzIGhhdmUgYmVlbiBhZGp1c3RlZCZxdW90OyBlbWFpbCB0ZW1wbGF0ZXM8L3A+DQo8cD5BZGRlZCBDU1YgRXhwb3J0aW5nPC9wPg0KPHA+QWRkZWQgYSAmcXVvdDtEZWxldGUgYWxsIHVzZXJzIG9sZGVyIHRoYW4gYSBkYXkmcXVvdDsgYnV0dG9uPC9wPg0KPHA+Tm93IHdvcmtzIHdpdGggdGhlIG1heGltdW0gbGVuZ3RoIGZpZWxkIG9mIEZFVXNlcnM8L3A+DQo8cD5BZGRlZCBzdXBwb3J0IGZvciBkcm9wZG93bnMgYW5kIHRleHQgYXJlYXM8L3A+DQo8cD5EaXNhbGxvdyBwdW5jdHVhdGlvbiBjaGFyYWN0ZXJzIGluIHVzZXJuYW1lPC9wPg0KPC9saT4NCjxsaT48cD5WZXJzaW9uIDEuMC4xLiAtIEZlYiAyMDA2PC9wPg0KPHA+QWRkZWQgdGhlIGFiaWxpdHkgZm9yIHVzZXJzIHRvIHJlcXVlc3QgYW5vdGhlciByZWdpc3RyYXRpb24gZW1haWwgKHVzZXMgdGhlIHNhbWUgY29kZSksIGluY2FzZSB0aGV5IGxvc3QgdGhlaXIgZmlyc3Qgb25lLjwvcD4NCjwvbGk+DQo8bGk+PHA+VmVyc2lvbiAxLjAuMi4gLSBGZWIgMjAwNjwvcD4NCjxwPlRoZSAmcXVvdDtSZXF1aXJlIGVtYWlsIGNvbmZpcm1hdGlvbiZxdW90OyBjaGVja2JveCBub3cgd29ya3MuICBVc2VycyBhcmUgYWRkZWQgc3RyYWlnaHQgdG8gdGhlIGZyb250ZW5kIHVzZXJzIGRhdGFiYXNlPC9wPg0KPHA+Rml4ZWQgYSBidWcgd2l0aCB0aGUgY29uZmlybWF0aW9uIGVtYWlscyBoYXZpbmcgbGlua3MgdG8gdGhlIGFkbWluIHNlY3Rpb24gKG5ldyBidWcgb25seSkuPC9wPg0KPC9saT4NCjxsaT48cD5WZXJzaW9uIDEuMC4zLiAtIEZlYiAyMDA2PC9wPg0KPHA+QWRkZWQgdGhlIChvcHRpb25hbCkgYWJpbGl0eSB0byByZXF1aXJlIHRoZSB1c2VyIGVudGVyIHRoZSBlbWFpbCBhZGRyZXNzIHR3aWNlPC9wPg0KPHA+Rml4ZWQgYSBidWcgd2l0aCB0aGUgdXNlcmVkaXRlZCBtZXNzYWdlIG5vdCBiZWluZyB0aHJvd24gdGhyb3VnaCBzbWFydHk8L3A+DQo8cD5GaXhlZCB0aGUgZGVmYXVsdCByZWdpc3RyYXRpb24gdGVtcGxhdGUgYSBiaXQgdG8gYWlkZSBpbiB2YWxpZGF0aW9uIGZvciBub24gcmVxdWlyZWQgZmllbGRzIChmaXhlZCBhIHdhcm5pbmcpPC9wPg0KPHA+Rml4IHByb2JsZW1zIHdpdGggaW5saW5lIGFuZCBub24taW5saW5lIGZvcm1zIGFuZCBsaW5rczwvcD4NCjxwPkhhbmRsZSBhbm90aGVyIGNhc2Ugd2hlcmUgdGhlIGFkbWluIG1heSBub3QgaGF2ZSBjcmVhdGVkIHRoZSBwcm9wZXIgdHlwZSBvZiBlbWFpbCBwcm9wZXJ0eTwvcD4NCjxwPkNoYW5nZWQgdG8gcmVxdWlyZSBDTVMgMC4xMi1iZXRhMiBhdCBhIG1pbmltdW0gKGZvciBzYWZldHkgcHVycG9zZXMpPC9wPg0KPC9saT4NCjxsaT48cD5WZXJzaW9uIDEuMC40LiAtIE1hciAyMDA2PC9wPg0KPHA+TW9yZSBjb250cm9sIG92ZXIgdXNlcm5hbWUgYW5kIHBhc3N3b3JkIGZpZWxkIHNpemVzIChjb250cm9sbGVkIGJ5IGZldXNlcnMpPC9wPg0KPHA+Q29uZmlybWF0aW9uIG9uIGVkaXRpbmcgcHJlZmVyZW5jZXM8L3A+DQo8cD5SZXF1aXJlIDAuMTIgcHJvcGVyIG9mIGNtcyBhcyBhIG1pbmltdW08L3A+DQo8L2xpPg0KPGxpPjxwPlZlcnNpb24gMS4xLjAuIC0gRGVjIDIwMDY8L3A+DQogICAgPHA+QWRkZWQgZXZlbnRzIGFuZCAxLjAgY29tcGF0aWJpbGl0eTwvcD4NCiAgICA8cD5DYXB0Y2hhIHN1cHBvcnQgKHRoYW5rcyBEaXR0bWFuKTwvcD4NCjwvbGk+DQo8bGk+PHA+VmVyc2lvbiAxLjEuMS4gLSBBcHIgMjAwNzwvcD4NCiAgICA8cD5Ob3cgcmVxdWlyZSBGRVVzZXJzIDEuMi4wIChtaW5pbXVtKTwvcD4NCiAgICA8cD5TdXBwb3J0IGZvciBtdWx0aXNlbGVjdCBsaXN0cyBpbiBmZXVzZXJzPC9wPg0KICAgIDxwPk91dHB1dCBzb21lIG1vcmUgZmllbGRzIHRvIHNtYXJ0eSB0byBhbGxvdyBmb3IgaW5jcmVhc2VkIGFjY2Vzc2liaWxpdHk8L3A+DQogICAgPHA+U3BsaXQgY29kZSBvdXQgaW50byBtdWx0aXBsZSBmaWxlcyB0byByZWR1Y2Ugb3ZlcmFsbCBtZW1vcnkgZm9vdHByaW50PC9wPg0KICAgIDxwPklnbm9yZSBhbGwgaW1hZ2UgZmllbGRzPC9wPg0KICAgIDxwPkNoYW5nZSBDYXB0Y2hhIHN1cHBvcnQgdG8gYmUgb24gYnkgZGVmYXVsdCBpZiB0aGUgQ2FwdGNoYSBtb2R1bGUgaXMgZm91bmQ8L3A+DQo8L2xpPg0KPGxpPjxwPlZlcnNpb24gMS4xLjIuIC0gTm92IDIwMDc8L3A+DQogICAgPHA+Rml4IHRoZSBwcm9ibGVtIHdpdGggdGhlIFVzZXJEaXNwbGF5TG9zdFJlZ0VtYWlsRm9ybSB0aGluZzwvcD4NCiAgICA8cD5BZGRzIHRoZSBpZCB0byB0aGUgb25Vc2VyUmVnaXN0ZXJlZCBFdmVudDwvcD4NCiAgICA8cD5GaXhlcyB0aGUgcHJvYmxlbSB3aXRoIGNoZWNrYm94IHByb3BlcnRpZXMgbm90IHdvcmtpbmc8L3A+DQogICAgPHA+Tm93IFJlcXVpcmVzIENNUyAxLjEgbWluaW11bTwvcD4NCiAgICA8cD5Zb3UgY2FuIG5vdyB1c2Uge1NlbGZSZWdpc3RyYXRpb24gZ3JvdXA9JiMwMzk7YmxhaCYjMDM5O308L3A+DQo8L2xpPg0KPC91bD4nOwokbGFuZ1snaGVscCddID0gJzxoMz5XaGF0IERvZXMgVGhpcyBEbz88L2gzPg0KPHA+VGhpcyBtb2R1bGUgaXMgZGVzaWduZWQgdG8gYWxsb3cgZnJvbnQgZW5kIHVzZXJzIHRvIHJlZ2lzdGVyIHRoZW1zZWx2ZXMgYW5kIGZpbGwgaW4gdGhlIHJlcXVpcmVkIGluZm9ybWF0aW9uLiAgSXQgdGhlbiBzZW5kcyBhIGNvbmZpcm1hdGlvbiBlbWFpbCwgd2l0aCBhIGxpbmsgdG8gYSBzZWNvbmQgcGFnZSB0aGF0IG11c3QgYmUgY29tcGxldGVkIGJlZm9yZSB0aGUgcmVnaXN0cmF0aW9uIGlzIGNvbXBsZXRlLiAgT25jZSByZWdpc3RyYXRpb24gaXMgY29tcGxldGUsIGEgdXNlciBhY2NvdW50IGlzIGNyZWF0ZWQgaW4gdGhlIGZyb250IGVuZCB1c2VycyBtb2R1bGUuPC9wPg0KPHA+SW4gb3JkZXIgdG8gdXNlIHRoaXMgbW9kdWxlLCB5b3UgbXVzdCBjcmVhdGUgYSBwcm9wZXJ0eSBvZiB0eXBlICZxdW90O0VtYWlsIEFkZHJlc3MmcXVvdDsgaW4gdGhlIEZyb250ZW5kVXNlcnMgbW9kdWxlLCBhbmQgYXNzb2NpYXRlIHRoYXQgcHJvcGVydHkgd2l0aCB0aGUgZ3JvdXAgdG8gYmUgdXNlZCBmb3Igc2VsZiByZWdpc3RyYXRpb24uPC9wPg0KPGgzPkhvdyBEbyBJIFVzZSBJdDwvaDM+DQo8cD5Zb3UgcGxhY2UgdGhlIGZvbGxvd25nIHRhZyBpbnRvIHlvdXIgcGFnZSB7Y21zX21vZHVsZSBtb2R1bGU9U2VsZlJlZ2lzdHJhdGlvbiBncm91cD11c2VyZ3JvdXB9PC9wPg0KPHA+WW91IG11c3QgaGF2ZSBwcmV2aW91c2x5IGNyZWF0ZWQgcHJvcGVydGllcyBhbmQgdXNlciBncm91cHMgaW4gdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlIGluIG9yZGVyIGZvciB0aGlzIHRvIHdvcmsgcHJvcGVybHkuPC9wPg0KPGgzPlBhcmFtZXRlcnM8L2gzPg0KPHA+PHN0cm9uZz5tb2RlPC9zdHJvbmc+IDxlbT5vcHRpb25hbDwvZW0+IC0gcG9zc2libGUgdmFsdWVzIGFyZSAmcXVvdDtzaWdudXAmcXVvdDsgYW5kICZxdW90O3ZlcmlmeSZxdW90Oy4gIElmIHRoaXMgcGFyYW1ldGVyIGlzIG5vdCBzcGVjaWZpZWQsICZxdW90O3NpZ251cCZxdW90OyBpcyBhc3N1bWJlZC48L3A+DQo8cD48c3Ryb25nPmdyb3VwPC9zdHJvbmc+IDxlbT5vcHRpb25hbDwvZW0+IC0gVGhpcyBwYXJhbWV0ZXIgaXMgcmVxdWlyZWQgaWYgbW9kZSBpcyAmcXVvdDtzaWdudXAmcXVvdDssIG9yIGlmIG1vZGUgaXMgbGVmdCBlbXB0eS48L3A+DQo8cD48c3Ryb25nPmNhcHRjaGE8L3N0cm9uZz4gPGVtPm9wdGlvbmFsPC9lbT4gLSBUaGlzIHdpbGwgZW5hYmxlIGNhcHRjaGEgb24gdGhlIHNpZ251cCBmb3JtLiBUaGUgQ2FwdGNoYSBtb2R1bGUgbXVzdCBiZSBpbnN0YWxsZWQgZm9yIHRoaXMgcGFyYW1ldGVyIHRvIHdvcmsuPC9wPg0KPGgzPlN1cHBvcnQ8L2gzPg0KPHA+VGhpcyBtb2R1bGUgZG9lcyBub3QgaW5jbHVkZSBjb21tZXJjaWFsIHN1cHBvcnQuIEhvd2V2ZXIsIHRoZXJlIGFyZSBhIG51bWJlciBvZiByZXNvdXJjZXMgYXZhaWxhYmxlIHRvIGhlbHAgeW91IHdpdGggaXQ6PC9wPg0KPHVsPg0KPGxpPkZvciB0aGUgbGF0ZXN0IHZlcnNpb24gb2YgdGhpcyBtb2R1bGUsIEZBUXMsIG9yIHRvIGZpbGUgYSBCdWcgUmVwb3J0IG9yIGJ1eSBjb21tZXJjaWFsIHN1cHBvcnQsIHBsZWFzZSB2aXNpdCBjYWxndXkmIzAzOTtzDQptb2R1bGUgaG9tZXBhZ2UgYXQgPGEgaHJlZj0mcXVvdDtodHRwOi8vdGVjaGNvbS5keW5kbnMub3JnJnF1b3Q7PnRlY2hjb20uZHluZG5zLm9yZzwvYT4uPC9saT4NCjxsaT5BZGRpdGlvbmFsIGRpc2N1c3Npb24gb2YgdGhpcyBtb2R1bGUgbWF5IGFsc28gYmUgZm91bmQgaW4gdGhlIDxhIGhyZWY9JnF1b3Q7aHR0cDovL2ZvcnVtLmNtc21hZGVzaW1wbGUub3JnJnF1b3Q7PkNNUyBNYWRlIFNpbXBsZSBGb3J1bXM8L2E+LjwvbGk+DQo8bGk+VGhlIGF1dGhvciwgY2FsZ3V5MTAwMCwgY2FuIG9mdGVuIGJlIGZvdW5kIGluIHRoZSA8YSBocmVmPSZxdW90O2lyYzovL2lyYy5mcmVlbm9kZS5uZXQvI2NtcyZxdW90Oz5DTVMgSVJDIENoYW5uZWw8L2E+LjwvbGk+DQo8bGk+TGFzdGx5LCB5b3UgbWF5IGhhdmUgc29tZSBzdWNjZXNzIGVtYWlsaW5nIHRoZSBhdXRob3IgZGlyZWN0bHkuPC9saT4gIA0KPC91bD4NCjxwPkFzIHBlciB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIHByb3ZpZGVkIGFzLWlzLiBQbGVhc2UgcmVhZCB0aGUgdGV4dA0Kb2YgdGhlIGxpY2Vuc2UgZm9yIHRoZSBmdWxsIGRpc2NsYWltZXIuPC9wPg0KDQo8aDM+Q29weXJpZ2h0IGFuZCBMaWNlbnNlPC9oMz4NCjxwPkNvcHlyaWdodCAmY29weTsgMjAwNSwgUm9iZXJ0IENhbXBiZWwgPGEgaHJlZj0mcXVvdDttYWlsdG86Y2FsZ3V5MTAwMEBob3RtYWlsLmNvbSZxdW90Oz48Y2FsZ3V5MTAwMEBob3RtYWlsLmNvbT48L2E+LiBBbGwgUmlnaHRzIEFyZSBSZXNlcnZlZC48L3A+DQo8cD5UaGlzIG1vZHVsZSBoYXMgYmVlbiByZWxlYXNlZCB1bmRlciB0aGUgPGEgaHJlZj0mcXVvdDtodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwmcXVvdDs+R05VIFB1YmxpYyBMaWNlbnNlPC9hPi4gWW91IG11c3QgYWdyZWUgdG8gdGhpcyBsaWNlbnNlIGJlZm9yZSB1c2luZyB0aGUgbW9kdWxlLjwvcD4nOwokbGFuZ1sndXRtYSddID0gJzE1Njg2MTM1My4xODA3MTUxNjQwLjExODI5NjA0NTYuMTE5NDAwMzk4OC4xMTk0MDA4Njc0LjIxOSc7CiRsYW5nWyd1dG16J10gPSAnMTU2ODYxMzUzLjExOTA0ODc4NjguNDUuNS51dG1jY249KHJlZmVycmFsKXx1dG1jc3I9ZGV2LmNtc21hZGVzaW1wbGUub3JnfHV0bWNjdD0vfHV0bWNtZD1yZWZlcnJhbCc7CiRsYW5nWyd1dG1iJ10gPSAnMTU2ODYxMzUzJzsKJGxhbmdbJ3V0bWMnXSA9ICcxNTY4NjEzNTMnOwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lang/ext/nb_NO.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2Vycm9yX2NvZGVzZG9udG1hdGNoJ10gPSAnVmFsaWRlcmluZ3MgbiZvc2xhc2g7a2tlbGVuIG9wcGdpdHQgZXIgaWtrZSBneWxkaWcnOwokbGFuZ1snZXZlbnRfZGVzY3JpcHRpb25fb25OZXdVc2VyJ10gPSAnRW4gaGVuZGVsc2Ugc29tIGluZGlrZXJlciBhdCBlbiBueSBicnVrZXIgaGFyIGZ5bHQgdXQgcmVnaXN0cmVyaW5nc3NramVtYWV0JzsKJGxhbmdbJ2V2ZW50X2Rlc2NyaXB0aW9uX29uVXNlclJlZ2lzdGVyZWQnXSA9ICdFbiBIZW5kZWxzZSBzb20gaW5kaWtlcmVyIGF0IGVuIGJydWtlciBoYXIgYmVrcmVmdGV0IHNpbiBpbmZvcm1hc2pvbiBvZyBlciBuJmFyaW5nOyBmdWxsdCByZWdpc3RyZXJ0JzsKJGxhbmdbJ2V2ZW50X2hlbHBfb25OZXdVc2VyJ10gPSAnPHA+RW4gSGVuZGVsc2Ugc29tIGluZGlrZXJlciBhdCBlbiBueSBicnVrZXIgaGFyIGZ1bGxmJm9zbGFzaDtydCByZWdpc3RyZXJpbmdzc2tqZW1hZXQ8L3A+DQo8aDQ+SW5uc3RpbGxpbmdlcjwvaDQ+DQo8dWw+DQo8bGk+PGVtPmJydWtlcm5hdm48L2VtPiAtIERlbiBueWUgYnJ1a2VyZW5zIHZhbGd0ZSBicnVrZXJuYXZuPC9saT4NCjxsaT48ZW0+ZW1haWw8L2VtPiAtIERlbiBueWUgYnJ1a2VyZW5zIGVtYWlsYWRyZXNzZTwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfb25Vc2VyUmVnaXN0ZXJlZCddID0gJzxwPkVuIEhlbmRlbHNlIHNvbSBpbmRpa2VyZXIgYXQgZW4gYnJ1a2VyIGhhciBibGl0dCBiZWtyZWZ0ZXQgb2cgZXIgbiZhcmluZzsgcmVnaXN0cmVydCBwJmFyaW5nOyBmZXVzZXJzPC9wPg0KPGg0PklubnN0aWxsaW5nZXI8L2g0Pg0KPHVsPg0KPGxpPjxlbT5icnVrZXJuYXZuPC9lbT4gLSBEZXQgcmVnaXN0cmVydGUgYnJ1a2VybmF2bjwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2NvbmZpcm1fc3VibWl0cHJlZnMnXSA9ICdGb3JhbmRyZSBhZG1pbiBwcmVmZXJhbnNlcj8nOwokbGFuZ1snaW5mb19hZG1pbl9wYXNzd29yZCddID0gJ0xhIGRldHRlIGZlbHRldCB2JmFlbGlnO3JlIHRvbXQgZm9yICZhcmluZzsgYmVob2xkZSBicnVrZXJwYXNzb3JkZXQnOwokbGFuZ1snaW5mb19hZG1pbl9yZXBlYXRwYXNzd29yZCddID0gJ0xhIGRldHRlIGZlbHRldCB2JmFlbGlnO3JlIHRvbXQgZm9yICZhcmluZzsgYmVob2xkZSBicnVrZXJwYXNzb3JkZXQnOwokbGFuZ1snZXJyb3JfZW1haWxkb2Vzbm90bWF0Y2gnXSA9ICdFcG9zdGFkcmVzc2VuZSBlciBpa2tlIGxpa2UnOwokbGFuZ1snZm9yY2VfZW1haWxfdHdpY2UnXSA9ICdUdmluZ2VyIGJydWtlcm5lIHRpbCAmYXJpbmc7IHRhc3RlIGlubiBlcG9zdGFkcmVzc2VuIHNpbiB0byBnYW5nZXInOwokbGFuZ1snYWdhaW4nXSA9ICdpZ2plbic7CiRsYW5nWydkZWxldGVzZWx1c2VycyddID0gJ1NsZXR0IHZhbGd0ZSBicnVrZXJlJzsKJGxhbmdbJ2Vycm9yX25vcHJvcGRlZm5zJ10gPSAnSW5nZW4gZmVsdCBkZWZpbmlzam9uZXIsIGVsbGVyIHByb2JsZW0gbWVkICZhcmluZzsgaGVudGUgZGVtIGZyYSBkYXRhYmFzZW4nOwokbGFuZ1snZXJyb3Jfbm9ncm91cHMnXSA9ICdJbmdlbiBncnVwcGVyIGZ1bm5ldCwgZWxsZXIgcHJvYmxlbWVyIG1lZCAmYXJpbmc7IGxlc2UgZ3J1cHBlbGlzdGVuJzsKJGxhbmdbJ2Vycm9yX2RiZXJyb3InXSA9ICdEYXRhYmFzZWZlaWwnOwokbGFuZ1sndGl0bGVfcG9zdF9zZW5kYW5vdGhlcmVtYWlsX3RlbXBsYXRlJ10gPSAnTWFsIGZvciAmYXJpbmc7IHNlbmRlIG1pc3RldCBwYXNzb3JkJzsKJGxhbmdbJ3RpdGxlX3NlbmRhbm90aGVyZW1haWxfdGVtcGxhdGUnXSA9ICdNYWwgZm9yIG1pc3RldCBwYXNzb3JkJzsKJGxhbmdbJ2NsaWNraGVyZSddID0gJ0tsaWtrIGhlcic7CiRsYW5nWydtc2dfc2VuZGFub3RoZXJlbWFpbCddID0gJ0plZyBoYXIgYWxsZXJlZGUgZnVsbGYmb3NsYXNoO3J0IHJlZ2lzdHJlcmluZ3Nza2plbWFldCwgbWVuIG1vdHRvayBpa2tlIG5vZW4gZXBvc3QuIEthbiBkZXJlIHNlbmRlIGRlbiBwJmFyaW5nOyBueXR0JzsKJGxhbmdbJ3NlbmRhbm90aGVyZW1haWxfdGVtcGxhdGUnXSA9ICdNYWwgZm9yIG1pc3RldCBwYXNzb3JkJzsKJGxhbmdbJ2luZm9fdXNlcnZlcmlmaWVkJ10gPSAnRW4gbnkgYnJ1a2VyIGVyIGxhZ3QgdGlsIGkgRnJvbnRFbmRVc2Vycyc7CiRsYW5nWydlZGl0J10gPSAnUmVkaWdlcic7CiRsYW5nWyd1bmtub3duJ10gPSAnVWtqZW50JzsKJGxhbmdbJ3NlbGVjdCddID0gJ1ZlbGcnOwokbGFuZ1snY2hlY2tfYWxsJ10gPSAnVmVsZyBhbGxlJzsKJGxhbmdbJ3VuY2hlY2tfYWxsJ10gPSAnVmVsZyBpbmdlbic7CiRsYW5nWydzZW5kX2FkanVzdG1lbnRlbWFpbCddID0gJ1NlbmQgZXBvc3QgdGlsIGJydWtlcmVuJzsKJGxhbmdbJ3R4dF9hZGp1c3RtZW50ZW1haWwnXSA9ICcoaW5mb3JtZXJlciBicnVrZXJlbiBvbSBhdCBrb250b2VuIGhhciBibGl0dCBqdXN0ZXJ0JzsKJGxhbmdbJ3R4dF9jaGFuZ2VwYXNzd29yZCddID0gJ0Z5bGwgdXQgZGlzc2UgZmVsdGVuZSBmb3IgJmFyaW5nOyBmb3JhbmRyZSBicnVrZXJwYXNzb3JkZXQnOwokbGFuZ1snZWRpdHVzZXInXSA9ICdSZWRpZ2VyIGJydWtlcic7CiRsYW5nWydhcmV5b3VzdXJlX2RlbGV0ZXVzZXInXSA9ICdFciBkdSBzaWtrZXIgcCZhcmluZzsgYXQgZHUgdmlsIHNsZXR0ZSBkZW5uZSBkZWx2aXMgcmVnaXN0cmVydGUgYnJ1a2VyZW4/JzsKJGxhbmdbJ2hkcl91c2VyaWQnXSA9ICdCcnVrZXJJRCc7CiRsYW5nWydoZHJfdXNlcm5hbWUnXSA9ICdCcnVrZXJuYXZuJzsKJGxhbmdbJ2hkcl9ncnBuYW1lJ10gPSAnR3J1cHBlJzsKJGxhbmdbJ2hkcl9jcmVhdGVkJ10gPSAnT3BwcmV0dGV0JzsKJGxhbmdbJ2hkcl9lbWFpbCddID0gJ0Vwb3N0JzsKJGxhbmdbJ3VzZXJzZm91bmQnXSA9ICdCcnVrZXJlIGZ1bm5ldCAoYmVncmVuc2V0IHRpbCBtYWtzIDI1MCknOwokbGFuZ1sndXNlcnMnXSA9ICdCcnVrZXJlJzsKJGxhbmdbJ2xpc3QxZGF5J10gPSAnTGlzdCBhbGxlIGlubmxlZ2cgbWVyIGVubiAxIGRhZyBnYW1sZSc7CiRsYW5nWydzdWJqZWN0J10gPSAnRW1uZSBmb3IgdXRnJmFyaW5nO2VuZGUgZXBvc3QnOwokbGFuZ1snaHRtbGJvZHknXSA9ICdIVE1MIG1lbGRpbmdzLWtyb3BwJzsKJGxhbmdbJ3RleHRib2R5J10gPSAnVGV4dCBtZWxkaW5ncy1rcm9wcCc7CiRsYW5nWydwcm9tcHRfbnVtcmVzZXRyZWNvcmQnXSA9ICdFdCBhbnRhbGwgYnJ1a2VyZSBlciBtaWR0IGkgcmVnaXN0cmVyaW5nZW4uIERldHRlIGFudGFsbGVyIGVyIG4mYXJpbmc7Oic7CiRsYW5nWydyZW1vdmUxd2VlayddID0gJ0ZqZXJuIGFsbGUgaW5ubGVnZyBtZXIgZW5uIGVuIHVrZSBnYW1sZSc7CiRsYW5nWydyZW1vdmUxbW9udGgnXSA9ICdGamVybiBhbGxlIGlubmxlZ2cgbWVyIGVubiBlbiBtJmFyaW5nO25lZCBnYW1sZSc7CiRsYW5nWydyZW1vdmUxZGF5J10gPSAnRmplcm4gYWxsZSBpbm5sZWdnIG1lciBlbm4gZW4gZGFnIGdhbWxlJzsKJGxhbmdbJ3JlbW92ZWFsbCddID0gJ0ZqZXJuIGFsbGUgaW5ubGVnZyc7CiRsYW5nWydhcmV5b3VzdXJlJ10gPSAnRXIgZHUgc2lra2VyPyc7CiRsYW5nWydyZWdpc3RyYXRpb25faW5mb19lZGl0ZWQnXSA9ICdEaW5lIHJlZ2lzdHJlcmluZ3NkYXRhIGhhciBibGl0dCBlbmRyZXQnOwokbGFuZ1sncmVnaXN0cmF0aW9uX2NvbmZpcm1hdGlvbiddID0gJ0Jla3JlZnRlbHNlIHAmYXJpbmc7IHJlZ2lzdHJlcmluZyc7CiRsYW5nWyd1c2VyX3JlZ2lzdHJhdGlvbiddID0gJ1JlZ2lzdHJlcic7CiRsYW5nWydmaW5hbG1lc3NhZ2VfdGVtcGxhdGUnXSA9ICdNYWwgZm9yIGF2c2x1dHRlbmRlIG1lbGRpbmcnOwokbGFuZ1sndGl0bGVfdmVyaWZ5cmVnaXN0cmF0aW9uJ10gPSAnQmVrcmVmdCByZWdpc3RyZXJpbmcnOwokbGFuZ1snY29kZSddID0gJ0tvZGVuJm9zbGFzaDtra2VsIChWYWxpZGF0aW9uIEtleSknOwokbGFuZ1snZGVmYXVsdCddID0gJ1RpbGJha2VzdGlsbCB0aWwgc3RhbmRhcmR2ZXJkaWVyJzsKJGxhbmdbJ2Vycm9yX25vcHJvcGVydGllcyddID0gJ0luZ2VuIGZlbHRlci9lZ2Vuc2thcGVyIGZ1bm5ldCBmb3IgZGVubmUgYnJ1a2VyZW4nOwokbGFuZ1snZXJyb3Jfbm9wcm9wcmVsYXRpb25zJ10gPSAnSW5nZW4gZmVsdC9lZ2Vuc2thcCByZWxhc2pvbic7CiRsYW5nWydlcnJvcl9lbWFpbGludmFsaWQnXSA9ICdVZ3lsZGlnIGVwb3N0YWRyZXNzZSc7CiRsYW5nWydlcnJvcl9ub2VtYWlsYWRkcmVzcyddID0gJ0luZ2VuIGd5bGRpZyBlbWFpbGFkcmVzc2UgZmVsdCBmdW5uZXQnOwokbGFuZ1snZXJyb3JfcmVxdWlyZWRmaWVsZCddID0gJ0ZlbHRldCAlcyBtJmFyaW5nOyBmeWxsZXMgdXQnOwokbGFuZ1sncmVnaXN0cmF0aW9uMV90ZW1wbGF0ZSddID0gJ01hbCAxIGZvciByZWdpc3RyZXJpbmcnOwokbGFuZ1sncmVnaXN0cmF0aW9uMl90ZW1wbGF0ZSddID0gJ01hbCAyIGZvciByZWdpc3RyZXJpbmcnOwokbGFuZ1snZW1haWxjb25maXJtX3RlbXBsYXRlJ10gPSAnTWFsIGZvciBiZWtyZWZ0ZWxzZSBlcG9zdCc7CiRsYW5nWydlbWFpbHVzZXJlZGl0ZWRfdGVtcGxhdGUnXSA9ICdNYWwgZm9yIGJydWtlci1pbmZvIGZvcmFuZHJldCc7CiRsYW5nWydwcmVmZXJlbmNlcyddID0gJ1ByZWZlcmFuc2VyJzsKJGxhbmdbJ2Vycm9yX3VzZXJub3Rmb3VuZCddID0gJ0JydWtlciBpa2tlIGZ1bm5ldCc7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXNlcm5hbWUnXSA9ICdCcnVrZXJuYXZuZXQgZXIgdWd5bGRpZyAoZm9yIGxhbmd0LCBmb3Iga29ydCwgZWxsZXIgaW5uZWhvbGRlciB1Z3lsZGlnZSB0ZWduKS4gIEhpbnQtIEJydWtlcm5hdm4gbSZhcmluZzsgaW5uZWhvbGRlIGt1biBhbGZhbnVtZXJpc2tlIHRlZ24gKGluZ2VuIG1lbGxvbXJvbSknOwokbGFuZ1snZXJyb3JfdXNlcm5hbWV0YWtlbiddID0gJ0RldCBicnVrZXJuYXZuZXQgZXIgYWxsZXJlZGUgaSBicnVrJzsKJGxhbmdbJ2Vycm9yX3Bhc3N3b3Jkc2RvbnRtYXRjaCddID0gJ0ZFSUw6IHBhc3NvcmRlbmUgZXIgaWtrZSBsaWtlJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXNzd29yZCddID0gJ1Bhc3NvcmRldCBlciB1Z3lsZGlnIChwYXNzb3JkIG0mYXJpbmc7IHYmYWVsaWc7cmUgbWVsbG9tICVzIG9nICVzIGthcmFrdGVyZXIgaSBsZW5nZGUpJzsKJGxhbmdbJ2Vycm9yX2VtcHR5dXNlcm5hbWUnXSA9ICdCcnVrZXJuYXZuZXQga2FuIGlra2UgdiZhZWxpZztyZSBibGFua3QnOwokbGFuZ1sncmVwZWF0cGFzc3dvcmQnXSA9ICdQYXNzb3JkIChpZ2plbiknOwokbGFuZ1sncGFzc3dvcmQnXSA9ICdQYXNzb3JkJzsKJGxhbmdbJ3VzZXJuYW1lJ10gPSAnQnJ1a2VybmF2bic7CiRsYW5nWydjYXB0Y2hhX3RpdGxlJ10gPSAnT3BwZ2kgdGVrc3RlbiBmcmEgYmlsZGV0JzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ1VneWxkaWcgbnVtbWVyIChlbGxlciBmZWlsKSBwYXJhbWV0ZXJlIGdpdHQgdGlsIG1vZHVsZW4nOwokbGFuZ1snZXJyb3Jfbm9mZXVzZXJzbW9kdWxlJ10gPSAnRmFudCBpa2tlIEZyb250RW5kVXNlcnMgbW9kdWxlbic7CiRsYW5nWydlcnJvcl9ub3N1Y2hncm91cCddID0gJ09wcGdpdHQgZ3J1cHBlbmF2biBla3Npc3RlcmVyIGlra2UnOwokbGFuZ1snZXJyb3JfY2FwdGNoYW1pc21hdGNoJ10gPSAnVGVrc3RlbiBmcmEgYmlsZGV0IGJsZSBpa2tlIHNrcmV2ZXQgcmlrdGlnJzsKJGxhbmdbJ3NlbmRfZW1haWxzX3RvJ10gPSAnUmVnaXN0cmVyaW5nc2VtYWlsZXIgc2t1bGxlIGJsaSBzZW5kdCB0aWwnOwokbGFuZ1sncmVxdWlyZV9lbWFpbF9jb25maXJtYXRpb24nXSA9ICdLcmV2IGF0IGJydWtlcmVuIG0mYXJpbmc7IGJla3JlZnRlIHJlZ2lzdHJlcmluZ2VuIHZpYSBlbWFpbCc7CiRsYW5nWydub3RpZnlfb25fcmVnaXN0cmF0aW9uJ10gPSAnU2VuZCBlbiBlbWFpbCBtZWxkaW5nIG4mYXJpbmc7ciBub2VuIHJlZ2lzdHJlcmVyIHNlZyc7CiRsYW5nWydjYW5jZWwnXSA9ICdBdmJyeXQnOwokbGFuZ1snc3VibWl0J10gPSAnU2VuZCc7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdTZWx2LXJlZ2lzdHJlcmluZ3MgbW9kdWwnOwokbGFuZ1sncG9zdGluc3RhbGwnXSA9ICdJbnN0YWxsYXRzam9uIHZlbGx5a2tldCwgaHVza3QgJmFyaW5nOyBzZXR0ZSAmcXVvdDtNb2RpZnkgU2VsZlJlZ2lzdHJhdGlvbiBTZXR0aW5ncyZxdW90OyByZXR0aWdoZXRlbi4NCk9tIENhcHRjaGEgbW9kdWxlbiBlciBpbnN0YWxsZXJ0LCBzJmFyaW5nOyB2aWwgY2FwdGNoYSBmdW5rc2pvbmVuIGJsaSBzbCZhcmluZzt0dCBwJmFyaW5nOyBzb20gc3RhbmRhcmQuIFZpIGFuYmVmYWxlciBwJmFyaW5nOyBkZXQgc3Rlcmtlc3RlIGF0IGR1IGluc3RhbGxlcmVyIGRlbm5lIG1vZHVsZW4uIE9tIENhcHRjaGEgbW9kdWxlbiBlciBpbnN0YWxsZXJ0IG9nIGR1IGlra2UgdmlsIGJlbnl0dGUgZGV0dGUsIGJydWtlciBkdSBwYXJhbWV0ZXJlbiBub2NhcHRjaGEgaSBkaW4gc2Vsdi1yZWdpc3RyZXJpbmdzIHRhZ2cuJzsKJGxhbmdbJ3Bvc3R1bmluc3RhbGwnXSA9ICdTZWx2cmVnaXN0cmVyaW5ncyBNb2R1bGVuIGVyIGF2aW5zdGFsbGVydC4gIFNlciBkZWcgc2VuZXJlLic7CiRsYW5nWyd1bmluc3RhbGxlZCddID0gJ01vZHVsZW4gYXZpbnN0YWxsZXJ0Lic7CiRsYW5nWydpbnN0YWxsZWQnXSA9ICdNb2R1bCB2ZXJzam9uICVzIGluc3RhbGxlcnQuJzsKJGxhbmdbJ3ByZWZzdXBkYXRlZCddID0gJ01vZHVsIGlubnN0aWxsaW5nZXIgb3BwZGF0ZXJ0Lic7CiRsYW5nWydhY2Nlc3NkZW5pZWQnXSA9ICdBZGdhbmcgbmVrdGV0LiBWZW5ubGlnc3Qgc2pla2sgZGluZSByZXR0aWdoZXRlci4nOwokbGFuZ1snZXJyb3InXSA9ICdGZWlsISc7CiRsYW5nWyd1cGdyYWRlZCddID0gJ01vZHVsIG9wcGdyYWRlcnQgdGlsIHZlcnNqb24gJXMuJzsKJGxhbmdbJ3RpdGxlX21vZF9wcmVmcyddID0gJ01vZHVsIGlubnN0aWxsbmdlcic7CiRsYW5nWyd0aXRsZV9tb2RfYWRtaW4nXSA9ICdNb2R1bCBhZG1pbmlzdHJhc2pvbnNwYW5lbCc7CiRsYW5nWyd0aXRsZV9hZG1pbl9wYW5lbCddID0gJ1NlbHZyZWdpc3RyZXJpbmdzIE1vZHVsJzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnRW4gbW9kdWwgc29tIHRpbGxhdGVyIGZyb250LWVuZCBicnVrZXJlICZhcmluZzsgcmVnaXN0cmVyZSBzZWcgc2Vsdi4nOwokbGFuZ1snd2VsY29tZV90ZXh0J10gPSAnPHA+VmVsa29tbWVuIHRpbCBTZWx2cmVnaXN0cmVyaW5ncyBtb2R1bGVuLjwvcD4nOwokbGFuZ1snY2hhbmdlbG9nJ10gPSAnPHVsPg0KPGxpPlZlcnNpb24gMC4wLjEuIE9jdCAyMDA1LiBJbml0aWFsIE5SUFQgKE5vdCBSZWFkeSBmb3IgUHJpbWUgVGltZSkgcmVsZWFzZS48L2xpPg0KPGxpPlZlcnNpb24gMC4xLjAuIE9jdCAyMDA1LiBJbml0aWFsIHJlbGVhc2UuPC9saT4NCjxsaT5WZXJzaW9uIDAuMS4xLiBPY3QgMjAwNS4gU2V0IHRoZSBIVE1MIG1haWwgZmxhZy48L2xpPg0KPGxpPlZlcnNpb24gMC4xLjIuIE9jdCAyMDA1LiBNb3ZlZCBSYW5kb20gc3R1ZmYgaW50byBmZXVzZXJzLCBhbmQgYWRkZWQgdGhlIGFiaWxpdHkgdG8gZGVsZXRlIG9sZCBlbnRyaWVzIGZyb20gdGhlIHJlZ2lzdHJhdGlvbiB0ZW1wb3JhcnkgdGFibGVzPC9saT4NCjxsaT48cD5WZXJzaW9uIDAuMS4zLiAtIERlYyAyMDA1PC9wPg0KPHA+Rml4ZWQgdGhlIHRvZ2dsZXMgaW4gdGhlIGFkbWluIHByZWZlcmVuY2VzLiAgQWxzbywgY2hhbmdlZCB0aGUgcGVybWlzc2lvbnMgbW9kZWwgdG8gbm90IHJlcXVpcmUgdGhlIHVuaXF1ZSBwZXJtaXNzaW9uIGFkZGVkIHByZXZpb3VzbHkgZm9yIHRoZSBzZWxmcmVnIG1vZHVsZS48L3A+DQo8cD5UaGlzIHJlbGVhc2Ugd2FzIHJlbW92ZWQgZHVlIHRvIHBvc3NpYmxlIGVycm9yczwvcD4NCjwvbGk+DQo8bGk+PHA+VmVyc2lvbiAwLjEuNC4gLSBKYW4gMjAwNjwvcD4NCjxwPkZpeGVkIG1pbm9yIGVycm9ycyB3aXRoIENoZWNrUGVybWlzc2lvbiwgcmVwbGFjZWQgYWxsIGFzc2lnbl9ieV9yZWZzJiMwMzk7cyB3aXRoIGFzc2lnbnMgZm9yIGhvcGVmdWwgcGhwNSBjb21wYXRpYmlsaXR5LjwvcD4NCjxsaT48cD5WZXJzaW9uIDAuMS41LiAtIEphbiAyMDA2PC9wPg0KPHA+QWRkZWQgdGhlIGFiaWxpdHkgdG8gc2V0IHRoZSBzdWJqZWN0IG9mIHRoZSBjb25maXJtYXRpb24gZW1haWwsIGFuZCBhZGRlZCB0aGUgYWJpbGl0eSB0byBzcGVjaWZ5IGEgdGV4dCBib2R5LiAgU3ViamVjdCwgYW5kIHRleHQgYm9keSBhcmUgcmVxdWlyZWQuPC9wPg0KPC9saT4NCjxsaT48cD5WZXJzaW9uIDEuMC4wLiAtIEZlYiAyMDA2PC9wPg0KPHA+Rml4ZWQgYSBwcm9ibGVtIHdpdGggdGhlIHZlcmlmeSBtb2RlLjwvcD4NCjxwPkFkZGVkIHRoZSBhYmlsaXR5IHRvIGVkaXQgYW5kIGRlbGV0ZSB1c2Vycy4gd2l0aCBzZWxlY3Rpb24gb24gdGhlIGNoZWNrYm94ZXMsIGFuZCAmcXVvdDtjaGVja2FsbCZxdW90OzwvcD4NCjxwPk5vdyByZXF1aXJlIEZFVXNlcnMgMC4xLjggYW5kIENNU01haWxlciAxLjczLjk8L3A+DQo8cD5BZGRlZCBhbm90aGVyIHRhYiBmb3IgdGhlICZxdW90O3lvdXIgc2V0dGluZ3MgaGF2ZSBiZWVuIGFkanVzdGVkJnF1b3Q7IGVtYWlsIHRlbXBsYXRlczwvcD4NCjxwPkFkZGVkIENTViBFeHBvcnRpbmc8L3A+DQo8cD5BZGRlZCBhICZxdW90O0RlbGV0ZSBhbGwgdXNlcnMgb2xkZXIgdGhhbiBhIGRheSZxdW90OyBidXR0b248L3A+DQo8cD5Ob3cgd29ya3Mgd2l0aCB0aGUgbWF4aW11bSBsZW5ndGggZmllbGQgb2YgRkVVc2VyczwvcD4NCjxwPkFkZGVkIHN1cHBvcnQgZm9yIGRyb3Bkb3ducyBhbmQgdGV4dCBhcmVhczwvcD4NCjxwPkRpc2FsbG93IHB1bmN0dWF0aW9uIGNoYXJhY3RlcnMgaW4gdXNlcm5hbWU8L3A+DQo8L2xpPg0KPGxpPjxwPlZlcnNpb24gMS4wLjEuIC0gRmViIDIwMDY8L3A+DQo8cD5BZGRlZCB0aGUgYWJpbGl0eSBmb3IgdXNlcnMgdG8gcmVxdWVzdCBhbm90aGVyIHJlZ2lzdHJhdGlvbiBlbWFpbCAodXNlcyB0aGUgc2FtZSBjb2RlKSwgaW5jYXNlIHRoZXkgbG9zdCB0aGVpciBmaXJzdCBvbmUuPC9wPg0KPC9saT4NCjxsaT48cD5WZXJzaW9uIDEuMC4yLiAtIEZlYiAyMDA2PC9wPg0KPHA+VGhlICZxdW90O1JlcXVpcmUgZW1haWwgY29uZmlybWF0aW9uJnF1b3Q7IGNoZWNrYm94IG5vdyB3b3Jrcy4gIFVzZXJzIGFyZSBhZGRlZCBzdHJhaWdodCB0byB0aGUgZnJvbnRlbmQgdXNlcnMgZGF0YWJhc2U8L3A+DQo8cD5GaXhlZCBhIGJ1ZyB3aXRoIHRoZSBjb25maXJtYXRpb24gZW1haWxzIGhhdmluZyBsaW5rcyB0byB0aGUgYWRtaW4gc2VjdGlvbiAobmV3IGJ1ZyBvbmx5KS48L3A+DQo8L2xpPg0KPGxpPjxwPlZlcnNpb24gMS4wLjMuIC0gRmViIDIwMDY8L3A+DQo8cD5BZGRlZCB0aGUgKG9wdGlvbmFsKSBhYmlsaXR5IHRvIHJlcXVpcmUgdGhlIHVzZXIgZW50ZXIgdGhlIGVtYWlsIGFkZHJlc3MgdHdpY2U8L3A+DQo8cD5GaXhlZCBhIGJ1ZyB3aXRoIHRoZSB1c2VyZWRpdGVkIG1lc3NhZ2Ugbm90IGJlaW5nIHRocm93biB0aHJvdWdoIHNtYXJ0eTwvcD4NCjxwPkZpeGVkIHRoZSBkZWZhdWx0IHJlZ2lzdHJhdGlvbiB0ZW1wbGF0ZSBhIGJpdCB0byBhaWRlIGluIHZhbGlkYXRpb24gZm9yIG5vbiByZXF1aXJlZCBmaWVsZHMgKGZpeGVkIGEgd2FybmluZyk8L3A+DQo8cD5GaXggcHJvYmxlbXMgd2l0aCBpbmxpbmUgYW5kIG5vbi1pbmxpbmUgZm9ybXMgYW5kIGxpbmtzPC9wPg0KPHA+SGFuZGxlIGFub3RoZXIgY2FzZSB3aGVyZSB0aGUgYWRtaW4gbWF5IG5vdCBoYXZlIGNyZWF0ZWQgdGhlIHByb3BlciB0eXBlIG9mIGVtYWlsIHByb3BlcnR5PC9wPg0KPHA+Q2hhbmdlZCB0byByZXF1aXJlIENNUyAwLjEyLWJldGEyIGF0IGEgbWluaW11bSAoZm9yIHNhZmV0eSBwdXJwb3Nlcyk8L3A+DQo8L2xpPg0KPGxpPjxwPlZlcnNpb24gMS4wLjQuIC0gTWFyIDIwMDY8L3A+DQo8cD5Nb3JlIGNvbnRyb2wgb3ZlciB1c2VybmFtZSBhbmQgcGFzc3dvcmQgZmllbGQgc2l6ZXMgKGNvbnRyb2xsZWQgYnkgZmV1c2Vycyk8L3A+DQo8cD5Db25maXJtYXRpb24gb24gZWRpdGluZyBwcmVmZXJlbmNlczwvcD4NCjxwPlJlcXVpcmUgMC4xMiBwcm9wZXIgb2YgY21zIGFzIGEgbWluaW11bTwvcD4NCjwvbGk+DQo8bGk+PHA+VmVyc2lvbiAxLjEuMC4gLSBEZWMgMjAwNjwvcD4NCiAgICA8cD5BZGRlZCBldmVudHMgYW5kIDEuMCBjb21wYXRpYmlsaXR5PC9wPg0KICAgIDxwPkNhcHRjaGEgc3VwcG9ydCAodGhhbmtzIERpdHRtYW4pPC9wPg0KPC9saT4NCjxsaT48cD5WZXJzaW9uIDEuMS4xLiAtIEFwciAyMDA3PC9wPg0KICAgIDxwPk5vdyByZXF1aXJlIEZFVXNlcnMgMS4yLjAgKG1pbmltdW0pPC9wPg0KICAgIDxwPlN1cHBvcnQgZm9yIG11bHRpc2VsZWN0IGxpc3RzIGluIGZldXNlcnM8L3A+DQogICAgPHA+T3V0cHV0IHNvbWUgbW9yZSBmaWVsZHMgdG8gc21hcnR5IHRvIGFsbG93IGZvciBpbmNyZWFzZWQgYWNjZXNzaWJpbGl0eTwvcD4NCiAgICA8cD5TcGxpdCBjb2RlIG91dCBpbnRvIG11bHRpcGxlIGZpbGVzIHRvIHJlZHVjZSBvdmVyYWxsIG1lbW9yeSBmb290cHJpbnQ8L3A+DQogICAgPHA+SWdub3JlIGFsbCBpbWFnZSBmaWVsZHM8L3A+DQogICAgPHA+Q2hhbmdlIENhcHRjaGEgc3VwcG9ydCB0byBiZSBvbiBieSBkZWZhdWx0IGlmIHRoZSBDYXB0Y2hhIG1vZHVsZSBpcyBmb3VuZDwvcD4NCjwvbGk+DQo8bGk+PHA+VmVyc2lvbiAxLjEuMi4gLSBOb3YgMjAwNzwvcD4NCiAgICA8cD5GaXggdGhlIHByb2JsZW0gd2l0aCB0aGUgVXNlckRpc3BsYXlMb3N0UmVnRW1haWxGb3JtIHRoaW5nPC9wPg0KICAgIDxwPkFkZHMgdGhlIGlkIHRvIHRoZSBvblVzZXJSZWdpc3RlcmVkIEV2ZW50PC9wPg0KICAgIDxwPkZpeGVzIHRoZSBwcm9ibGVtIHdpdGggY2hlY2tib3ggcHJvcGVydGllcyBub3Qgd29ya2luZzwvcD4NCiAgICA8cD5Ob3cgUmVxdWlyZXMgQ01TIDEuMSBtaW5pbXVtPC9wPg0KICAgIDxwPllvdSBjYW4gbm93IHVzZSB7U2VsZlJlZ2lzdHJhdGlvbiBncm91cD0mIzAzOTtibGFoJiMwMzk7fTwvcD4NCjwvbGk+DQo8L3VsPic7CiRsYW5nWydoZWxwJ10gPSAnPGgzPldoYXQgRG9lcyBUaGlzIERvPzwvaDM+DQo8cD5UaGlzIG1vZHVsZSBpcyBkZXNpZ25lZCB0byBhbGxvdyBmcm9udCBlbmQgdXNlcnMgdG8gcmVnaXN0ZXIgdGhlbXNlbHZlcyBhbmQgZmlsbCBpbiB0aGUgcmVxdWlyZWQgaW5mb3JtYXRpb24uICBJdCB0aGVuIHNlbmRzIGEgY29uZmlybWF0aW9uIGVtYWlsLCB3aXRoIGEgbGluayB0byBhIHNlY29uZCBwYWdlIHRoYXQgbXVzdCBiZSBjb21wbGV0ZWQgYmVmb3JlIHRoZSByZWdpc3RyYXRpb24gaXMgY29tcGxldGUuICBPbmNlIHJlZ2lzdHJhdGlvbiBpcyBjb21wbGV0ZSwgYSB1c2VyIGFjY291bnQgaXMgY3JlYXRlZCBpbiB0aGUgZnJvbnQgZW5kIHVzZXJzIG1vZHVsZS48L3A+DQo8cD5JbiBvcmRlciB0byB1c2UgdGhpcyBtb2R1bGUsIHlvdSBtdXN0IGNyZWF0ZSBhIHByb3BlcnR5IG9mIHR5cGUgJnF1b3Q7RW1haWwgQWRkcmVzcyZxdW90OyBpbiB0aGUgRnJvbnRlbmRVc2VycyBtb2R1bGUsIGFuZCBhc3NvY2lhdGUgdGhhdCBwcm9wZXJ0eSB3aXRoIHRoZSBncm91cCB0byBiZSB1c2VkIGZvciBzZWxmIHJlZ2lzdHJhdGlvbi48L3A+DQo8aDM+SG93IERvIEkgVXNlIEl0PC9oMz4NCjxwPllvdSBwbGFjZSB0aGUgZm9sbG93bmcgdGFnIGludG8geW91ciBwYWdlIHtjbXNfbW9kdWxlIG1vZHVsZT1TZWxmUmVnaXN0cmF0aW9uIGdyb3VwPXVzZXJncm91cH08L3A+DQo8cD5Zb3UgbXVzdCBoYXZlIHByZXZpb3VzbHkgY3JlYXRlZCBwcm9wZXJ0aWVzIGFuZCB1c2VyIGdyb3VwcyBpbiB0aGUgRnJvbnRFbmRVc2VycyBtb2R1bGUgaW4gb3JkZXIgZm9yIHRoaXMgdG8gd29yayBwcm9wZXJseS48L3A+DQo8aDM+UGFyYW1ldGVyczwvaDM+DQo8cD48c3Ryb25nPm1vZGU8L3N0cm9uZz4mbmJzcDs8ZW0+b3B0aW9uYWw8L2VtPiAtIHBvc3NpYmxlIHZhbHVlcyBhcmUgJnF1b3Q7c2lnbnVwJnF1b3Q7IGFuZCAmcXVvdDt2ZXJpZnkmcXVvdDsuICBJZiB0aGlzIHBhcmFtZXRlciBpcyBub3Qgc3BlY2lmaWVkLCAmcXVvdDtzaWdudXAmcXVvdDsgaXMgYXNzdW1iZWQuPC9wPg0KPHA+PHN0cm9uZz5ncm91cDwvc3Ryb25nPiZuYnNwOzxlbT5vcHRpb25hbDwvZW0+IC0gVGhpcyBwYXJhbWV0ZXIgaXMgcmVxdWlyZWQgaWYgbW9kZSBpcyAmcXVvdDtzaWdudXAmcXVvdDssIG9yIGlmIG1vZGUgaXMgbGVmdCBlbXB0eS48L3A+DQo8cD48c3Ryb25nPm5vY2FwdGNoYTwvc3Ryb25nPiZuYnNwOzxlbT5vcHRpb25hbDwvZW0+IC0gVGhpcyB3aWxsIGRpc2FibGUgY2FwdGNoYSBvbiB0aGUgc2lnbnVwIGZvcm0uIEJ5IGRlZmF1bHQsIGlmIHRoZSBDYXB0Y2hhIG1vZHVsZSBpcyBpbnN0YWxsZWQsIGNhcHRjaGEgc3VwcG9ydCBpcyBwcm92aWRlZC4gIFRoaXMgcGFyYW1ldGVyIGRpc2FibGVzIGl0LjwvcD4NCjxoMz5TdXBwb3J0PC9oMz4NCjxwPlRoaXMgbW9kdWxlIGRvZXMgbm90IGluY2x1ZGUgY29tbWVyY2lhbCBzdXBwb3J0LiBIb3dldmVyLCB0aGVyZSBhcmUgYSBudW1iZXIgb2YgcmVzb3VyY2VzIGF2YWlsYWJsZSB0byBoZWxwIHlvdSB3aXRoIGl0OjwvcD4NCjx1bD4NCjxsaT5Gb3IgdGhlIGxhdGVzdCB2ZXJzaW9uIG9mIHRoaXMgbW9kdWxlLCBGQVFzLCBvciB0byBmaWxlIGEgQnVnIFJlcG9ydCBvciBidXkgY29tbWVyY2lhbCBzdXBwb3J0LCBwbGVhc2UgdmlzaXQgY2FsZ3V5JiMwMzk7cw0KbW9kdWxlIGhvbWVwYWdlIGF0IDxhIGhyZWY9JnF1b3Q7aHR0cDovL3RlY2hjb20uZHluZG5zLm9yZyZxdW90Oz50ZWNoY29tLmR5bmRucy5vcmc8L2E+LjwvbGk+DQo8bGk+QWRkaXRpb25hbCBkaXNjdXNzaW9uIG9mIHRoaXMgbW9kdWxlIG1heSBhbHNvIGJlIGZvdW5kIGluIHRoZSA8YSBocmVmPSZxdW90O2h0dHA6Ly9mb3J1bS5jbXNtYWRlc2ltcGxlLm9yZyZxdW90Oz5DTVMgTWFkZSBTaW1wbGUgRm9ydW1zPC9hPi48L2xpPg0KPGxpPlRoZSBhdXRob3IsIGNhbGd1eTEwMDAsIGNhbiBvZnRlbiBiZSBmb3VuZCBpbiB0aGUgPGEgaHJlZj0mcXVvdDtpcmM6Ly9pcmMuZnJlZW5vZGUubmV0LyNjbXMmcXVvdDs+Q01TIElSQyBDaGFubmVsPC9hPi48L2xpPg0KPGxpPkxhc3RseSwgeW91IG1heSBoYXZlIHNvbWUgc3VjY2VzcyBlbWFpbGluZyB0aGUgYXV0aG9yIGRpcmVjdGx5LjwvbGk+ICANCjwvdWw+DQo8cD5BcyBwZXIgdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBwcm92aWRlZCBhcy1pcy4gUGxlYXNlIHJlYWQgdGhlIHRleHQNCm9mIHRoZSBsaWNlbnNlIGZvciB0aGUgZnVsbCBkaXNjbGFpbWVyLjwvcD4NCg0KPGgzPkNvcHlyaWdodCBhbmQgTGljZW5zZTwvaDM+DQo8cD5Db3B5cmlnaHQgJmFtcDtjb3B5OyAyMDA1LCBSb2JlcnQgQ2FtcGJlbCA8YSBocmVmPSZxdW90O21haWx0bzpjYWxndXkxMDAwQGhvdG1haWwuY29tJnF1b3Q7PiZhbXA7bHQ7Y2FsZ3V5MTAwMEBob3RtYWlsLmNvbSZhbXA7Z3Q7PC9hPi4gQWxsIFJpZ2h0cyBBcmUgUmVzZXJ2ZWQuPC9wPg0KPHA+VGhpcyBtb2R1bGUgaGFzIGJlZW4gcmVsZWFzZWQgdW5kZXIgdGhlIDxhIGhyZWY9JnF1b3Q7aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMJnF1b3Q7PkdOVSBQdWJsaWMgTGljZW5zZTwvYT4uIFlvdSBtdXN0IGFncmVlIHRvIHRoaXMgbGljZW5zZSBiZWZvcmUgdXNpbmcgdGhlIG1vZHVsZS48L3A+JzsKJGxhbmdbJ3V0bXonXSA9ICcxNTY4NjEzNTMuMTE5MzU3MjYyMC4xODcuOC51dG1jY249KHJlZmVycmFsKXx1dG1jc3I9Y21zbWFkZXNpbXBsZS5vcmd8dXRtY2N0PS9tYWluL2RldmVsb3BtZW50X3RlYW18dXRtY21kPXJlZmVycmFsJzsKJGxhbmdbJ3V0bWEnXSA9ICcxNTY4NjEzNTMuNTI1NDA2ODEyLjExODgwNzc0MTcuMTE5Mzk1MjEzNC4xMTkzOTUzODY4LjIwMCc7CiRsYW5nWyd1dG1iJ10gPSAnMTU2ODYxMzUzJzsKJGxhbmdbJ3V0bWMnXSA9ICcxNTY4NjEzNTMnOwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lang/ext/nl_NL.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2Vycm9yX2NvZGVzZG9udG1hdGNoJ10gPSAnRGUgaW5nZXZvZXJkZSB2YWxpZGF0aWVzbGV1dGVsIGlzIG9uZ2VsZGlnJzsKJGxhbmdbJ2V2ZW50X2Rlc2NyaXB0aW9uX29uTmV3VXNlciddID0gJ0VlbiBnZWJldXJ0ZW5pcyBkaWUgYWFuZ2VlZnQgZGF0IGVlbiBuaWV1d2UgZ2VicnVpa2VyIGhldCByZWdpc3RyYXRpZWZvcm11bGllciBoZWVmdCBpbmdldnVsZCc7CiRsYW5nWydldmVudF9kZXNjcmlwdGlvbl9vblVzZXJSZWdpc3RlcmVkJ10gPSAnRWVuIGdlYmV1cnRlbmlzIGRpZSBhYW5nZWVmdCBkYXQgZWVuIGdlYnJ1aWtlciB6aWpuIGdlZ2V2ZW5zIGhlZWZ0IGdldmFsaWRlZXJkIGVuIG51IHZvbGxlZGlnIGlzIGdlcmVnaXN0cmVlcmQuJzsKJGxhbmdbJ2V2ZW50X2hlbHBfb25OZXdVc2VyJ10gPSAnPHA+RWVuIGdlYmV1cnRlbmlzIGRpZSBhYW5nZWVmdCBkYXQgZWVuIG5pZXV3ZSBnZWJydWlrZXIgaGV0IHJlZ2lzdHJhdGllZm9ybXVsaWVyIGhlZWZ0IGluZ2V2dWxkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gRGUgZ2VzZWxlY3RlZXJkZSBnZWJydWlrZXJzbmFhbTwvbGk+DQo8bGk+PGVtPmVtYWlsPC9lbT4gLSBIZXQgZ2VzZWxlY3RlZXJkZSBlbWFpbGFkcmVzPC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaGVscF9vblVzZXJSZWdpc3RlcmVkJ10gPSAnPHA+RWVuIGdlYmV1cnRlbmlzIGRpZSBhYW5nZWVmdCBkYXQgZWVuIGdlYnJ1aWtlciB6aWpuIGdlZ2V2ZW5zIGhlZWZ0IGdldmFsaWRlZXJkIGVuIG51IHZvbGxlZGlnIGlzIGdlcmVnaXN0cmVlcmQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBEZSBnZXJlZ2lzdHJlZXJkZSBnZWJydWlrZXJzbmFhbTwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2NvbmZpcm1fc3VibWl0cHJlZnMnXSA9ICdWZXJhbmRlciBiZWhlZXJzdm9vcmtldXJlbj8nOwokbGFuZ1snaW5mb19hZG1pbl9wYXNzd29yZCddID0gJ0xhYXQgZGl0IHZlbGQgbGVlZyBvbSBoZXQgZ2VicnVpa2Vyc3dhY2h0d29vcmQgdGUgYmVob3VkZW4nOwokbGFuZ1snaW5mb19hZG1pbl9yZXBlYXRwYXNzd29yZCddID0gJ0xhYXQgZGl0IHZlbGQgbGVlZyBvbSBoZXQgZ2VicnVpa2Vyc3dhY2h0d29vcmQgdGUgYmVob3VkZW4nOwokbGFuZ1snZXJyb3JfZW1haWxkb2Vzbm90bWF0Y2gnXSA9ICdFbWFpbGFkcmVzc2VuIGtvbWVuIG5pZXQgb3ZlcmVlbic7CiRsYW5nWydmb3JjZV9lbWFpbF90d2ljZSddID0gJ1ZlcnBsaWNodCBnZWJydWlrZXJzIG9tIGh1biBlbWFpbGFkcmVzIHR3ZWUgbWFhbCBpbiB0ZSB2b2VyZW4nOwokbGFuZ1snYWdhaW4nXSA9ICdvcG5pZXV3JzsKJGxhbmdbJ2RlbGV0ZXNlbHVzZXJzJ10gPSAnVmVyd2lqZGVyIGdlc2VsZWN0ZWVyZGUgZ2VicnVpa2Vycyc7CiRsYW5nWydlcnJvcl9ub3Byb3BkZWZucyddID0gJ0dlZW4gZWlnZW5zY2hhcHNkZWZpbml0aWUgb2YgZWVuIHByb2JsZWVtIG9tIGRlemUgdWl0IGRlIGRhdGFiYXNlIHRlIGhhbGVuJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBzJ10gPSAnR2VlbiBncm9lcGVuIG9mIGVlbiBwcm9ibGVlbSBtZXQgaGV0IG9waGFsZW4gdmFuIGRlIGdyb2VwZW5saWpzdCc7CiRsYW5nWydlcnJvcl9kYmVycm9yJ10gPSAnRGF0YWJhc2UtZm91dCc7CiRsYW5nWyd0aXRsZV9wb3N0X3NlbmRhbm90aGVyZW1haWxfdGVtcGxhdGUnXSA9ICdQb3N0IHZlcmxvcmVuIGVtYWlsc2phYmxvb24nOwokbGFuZ1sndGl0bGVfc2VuZGFub3RoZXJlbWFpbF90ZW1wbGF0ZSddID0gJ1ZlcmxvcmVuIGVtYWlsc2phYmxvb24nOwokbGFuZ1snY2xpY2toZXJlJ10gPSAnS2xpayBoaWVyJzsKJGxhbmdbJ21zZ19zZW5kYW5vdGhlcmVtYWlsJ10gPSAnSWsgaGViIGhldCByZWdpc3RyYXRpZWZvcm11bGllciBhbCBpbmdldnVsZCwgbWFhciBoZWIgbm9nIGdlZW4gZW1haWwgb250dmFuZ2VuLiBLdW50IHUgaGV0IG9wbmlldXcgdmVyc3R1cmVuPyc7CiRsYW5nWydzZW5kYW5vdGhlcmVtYWlsX3RlbXBsYXRlJ10gPSAnVmVybG9yZW4gZW1haWxzamFibG9vbic7CiRsYW5nWydpbmZvX3VzZXJ2ZXJpZmllZCddID0gJ0VlbiBuaWV1d2UgZ2VicnVpa2VyIGlzIHRvZWdldm9lZ2QgYWFuIEZyb250RW5kVXNlcnMnOwokbGFuZ1snZWRpdCddID0gJ0Jld2Vyayc7CiRsYW5nWyd1bmtub3duJ10gPSAnT25iZWtlbmQnOwokbGFuZ1snc2VsZWN0J10gPSAnU2VsZWN0ZWVyJzsKJGxhbmdbJ2NoZWNrX2FsbCddID0gJ1NlbGVjdGVlciBhbGxlcyc7CiRsYW5nWyd1bmNoZWNrX2FsbCddID0gJ0Rlc2VsZWN0ZWVyIGFsbGVzJzsKJGxhbmdbJ3NlbmRfYWRqdXN0bWVudGVtYWlsJ10gPSAnU3R1dXIgZWVuIGVtYWlsIG5hYXIgZGUgZ2VicnVpa2VyJzsKJGxhbmdbJ3R4dF9hZGp1c3RtZW50ZW1haWwnXSA9ICcoaW5mb3JtZWVydCBkZSBnZWJydWlrZXIgZGF0IHppam4gYWNjb3VudCBpcyBhYW5nZXBhc3QnOwokbGFuZ1sndHh0X2NoYW5nZXBhc3N3b3JkJ10gPSAnVnVsIGRlemUgdmVsZGVuIGluIG9tIGhldCBnZWJydWlrZXJzd2FjaHR3b29yZCB0ZSB2ZXJhbmRlcmVuJzsKJGxhbmdbJ2VkaXR1c2VyJ10gPSAnQmV3ZXJrIGdlYnJ1aWtlcic7CiRsYW5nWydhcmV5b3VzdXJlX2RlbGV0ZXVzZXInXSA9ICdXZWV0IHUgemVrZXIgZGF0IGRlemUsIGRlZWxzIGdlcmVnaXN0cmVlcmRlIGdlYnJ1aWtlciwgdmVyd2lqZGVyZCBtb2V0IHdvcmRlbj8nOwokbGFuZ1snaGRyX3VzZXJpZCddID0gJ1VzZXJJRCc7CiRsYW5nWydoZHJfdXNlcm5hbWUnXSA9ICdHZWJydWlrZXJzbmFhbSc7CiRsYW5nWydoZHJfZ3JwbmFtZSddID0gJ0dyb2VwJzsKJGxhbmdbJ2hkcl9jcmVhdGVkJ10gPSAnQWFuZ2VtYWFrdCc7CiRsYW5nWydoZHJfZW1haWwnXSA9ICdFbWFpbCc7CiRsYW5nWyd1c2Vyc2ZvdW5kJ10gPSAnZ2VicnVpa2VyKHMpIGdldm9uZGVuIChiZXBlcmt0IHRvdCBtYXhpbWFhbCAyNTApJzsKJGxhbmdbJ3VzZXJzJ10gPSAnR2VicnVpa2Vycyc7CiRsYW5nWydsaXN0MWRheSddID0gJ1Rvb24gYWxsZSBpbnZvZXIgdmFuIG1lZXIgZGFuICZlYWN1dGU7JmVhY3V0ZTtuIGRhZyBvdWQnOwokbGFuZ1snc3ViamVjdCddID0gJ09uZGVyd2VycCB2YW4gdWl0Z2FhbmRlIGVtYWlsJzsKJGxhbmdbJ2h0bWxib2R5J10gPSAnSFRNTCB0ZWtzdCB2YW4gZGUgZW1haWwnOwokbGFuZ1sndGV4dGJvZHknXSA9ICdQbGF0dGUgdGVrc3QgdmFuIGRlIGVtYWlsJzsKJGxhbmdbJ3Byb21wdF9udW1yZXNldHJlY29yZCddID0gJ0VlbiBhYW50YWwgZ2VicnVpa2VycyBpcyB6aWNoIGFhbiBoZXQgcmVnaXN0cmVyZW4uIERpdCB6aWpuIGVyIG51Oic7CiRsYW5nWydyZW1vdmUxd2VlayddID0gJ1ZlcndpamRlciBhbGxlIGludm9lciB2YW4gbWVlciBkYW4gZWVuIHdlZWsgb3VkJzsKJGxhbmdbJ3JlbW92ZTFtb250aCddID0gJ1ZlcndpamRlciBhbGxlIGludm9lciB2YW4gbWVlciBkYW4gZWVuIG1hYW5kIG91ZCc7CiRsYW5nWydyZW1vdmUxZGF5J10gPSAnVmVyd2lqZGVyIGFsbGUgaW52b2VyIHZhbiBtZWVyIGRhbiBlZW4gZGFnIG91ZCc7CiRsYW5nWydyZW1vdmVhbGwnXSA9ICdWZXJ3aWpkZXIgYWxsZSBpbnZvZXInOwokbGFuZ1snYXJleW91c3VyZSddID0gJ1dlZXQgdSBoZXQgemVrZXI/JzsKJGxhbmdbJ3JlZ2lzdHJhdGlvbl9pbmZvX2VkaXRlZCddID0gJ1V3IHJlZ2lzdHJhdGllaW5mb3JtYXRpZSBpcyBhYW5nZXBhc3QnOwokbGFuZ1sncmVnaXN0cmF0aW9uX2NvbmZpcm1hdGlvbiddID0gJ1JlZ2lzdHJhdGllYmV2ZXN0aWdpbmcnOwokbGFuZ1sndXNlcl9yZWdpc3RyYXRpb24nXSA9ICdSZWdpc3RyZWVyJzsKJGxhbmdbJ2ZpbmFsbWVzc2FnZV90ZW1wbGF0ZSddID0gJ0Fmcm9uZGluZ3Nib29kc2NoYXBzamFibG9vbic7CiRsYW5nWyd0aXRsZV92ZXJpZnlyZWdpc3RyYXRpb24nXSA9ICdWZXJpZmllZXIgcmVnaXN0cmF0aWUnOwokbGFuZ1snY29kZSddID0gJ1ZhbGlkYXRpZXNsZXV0ZWwnOwokbGFuZ1snZGVmYXVsdCddID0gJ0FjdGl2ZWVyIHN0YW5kYWFyZHdhYXJkZW4nOwokbGFuZ1snZXJyb3Jfbm9wcm9wZXJ0aWVzJ10gPSAnR2VlbiBlaWdlbnNjaGFwcGVuIHZvb3IgZGV6ZSBnZWJydWlrZXIgZ2V2b25kZW4nOwokbGFuZ1snZXJyb3Jfbm9wcm9wcmVsYXRpb25zJ10gPSAnR2VlbiBlaWdlbnNjaGFwc3JlbGF0aWVzJzsKJGxhbmdbJ2Vycm9yX2VtYWlsaW52YWxpZCddID0gJ09uZ2VsZGlnIGVtYWlsYWRyZXMnOwokbGFuZ1snZXJyb3Jfbm9lbWFpbGFkZHJlc3MnXSA9ICdHZWVuIGdlbGRpZyBlbWFpbGFkcmVzdmVsZCBnZXZvbmRlbic7CiRsYW5nWydlcnJvcl9yZXF1aXJlZGZpZWxkJ10gPSAnVmVsZCAlcyBtb2V0IGluZ2V2dWxkIHppam4nOwokbGFuZ1sncmVnaXN0cmF0aW9uMV90ZW1wbGF0ZSddID0gJ1JlZ2lzdHJhdGllc2phYmwuIDEnOwokbGFuZ1sncmVnaXN0cmF0aW9uMl90ZW1wbGF0ZSddID0gJ1JlZ2lzdHJhdGllc2phYmwuIDInOwokbGFuZ1snZW1haWxjb25maXJtX3RlbXBsYXRlJ10gPSAnQmV2ZXN0aWdpbmdzZW1haWwtc2phYmxvb24nOwokbGFuZ1snZW1haWx1c2VyZWRpdGVkX3RlbXBsYXRlJ10gPSAnR2VicnVpa2Vyc2luZm8tc2phYmxvb24nOwokbGFuZ1sncHJlZmVyZW5jZXMnXSA9ICdWb29ya2V1cmVuJzsKJGxhbmdbJ2Vycm9yX3VzZXJub3Rmb3VuZCddID0gJ0dlYnJ1aWtlciBuaWV0IGdldm9uZGVuJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZSddID0gJ0dlYnJ1aWtlcnNuYWFtIGlzIG9uZ2VsZGlnICh0ZSBsYW5nLCB0ZSBrb3J0IG9mIG9uZ2VsZGlnZSBrYXJha3RlcnMpLiBUaXA6IGdlYnJ1aWtlcnNuYW1lbiBtb2dlbiBhbGxlZW4gYWxmYW51bWVyaWVrZSBrYXJha3RlcnMgZW4gZ2VlbiBzcGF0aWVzIGJldmF0dGVuJzsKJGxhbmdbJ2Vycm9yX3VzZXJuYW1ldGFrZW4nXSA9ICdEZSBnZWJydWlrZXJzbmFhbSBpcyBhbCBpbiBnZWJydWlrJzsKJGxhbmdbJ2Vycm9yX3Bhc3N3b3Jkc2RvbnRtYXRjaCddID0gJ0ZvdXQ6IFdhY2h0d29vcmRlbiBrb21lbiBuaWV0IG92ZXJlZW4nOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhc3N3b3JkJ10gPSAnV2FjaHR3b29yZCBpcyBmb3V0ICh3YWNodHdvb3JkZW4gbW9ldGVuIHR1c3NlbiBkZSAlcyBlbiAlcyBrYXJha3RlcnMgbGFuZyB6aWpuKSc7CiRsYW5nWydlcnJvcl9lbXB0eXVzZXJuYW1lJ10gPSAnR2VicnVpa2Vyc25hYW0ga2FuIG5pZXQgbGVlZyB6aWpuJzsKJGxhbmdbJ3JlcGVhdHBhc3N3b3JkJ10gPSAnV2FjaHR3b29yZCAob3BuaWV1dyknOwokbGFuZ1sncGFzc3dvcmQnXSA9ICdXYWNodHdvb3JkJzsKJGxhbmdbJ3VzZXJuYW1lJ10gPSAnR2VicnVpa2Vyc25hYW0nOwokbGFuZ1snY2FwdGNoYV90aXRsZSddID0gJ1ZvZXIgZGUgdGVrc3QgdWl0IGhldCBwbGFhdGplIGluJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ09udm9sZG9lbmRlIChvZiBpbmNvcnJlY3RlKSBwYXJhbWV0ZXJzIG9wZ2VnZXZlbiBhYW4gZGUgbW9kdWxlJzsKJGxhbmdbJ2Vycm9yX25vZmV1c2Vyc21vZHVsZSddID0gJ0tvbiBnZWVuIGluc3RhbmNlIHZhbiBkZSBGcm9udEVuZFVzZXJzLW1vZHVsZSBrcmlqZ2VuJzsKJGxhbmdbJ2Vycm9yX25vc3VjaGdyb3VwJ10gPSAnT3BnZWdldmVucyBncm9lcHNuYWFtIGJlc3RhYXQgbmlldCc7CiRsYW5nWydlcnJvcl9jYXB0Y2hhbWlzbWF0Y2gnXSA9ICdEZSB0ZWtzdCB1aXQgaGV0IHBsYWF0amUgaXMgbmlldCBnb2VkIGluZ2V2b2VyZCc7CiRsYW5nWydzZW5kX2VtYWlsc190byddID0gJ1JlZ2lzdHJhdGllLWVtYWlsIG1vZXQgdmVyc3R1dXJkIHdvcmRlbiBhYW4nOwokbGFuZ1sncmVxdWlyZV9lbWFpbF9jb25maXJtYXRpb24nXSA9ICdWZXJwbGljaHQgZGUgZ2VicnVpa2VyIG9tIGRlIHJlZ2lzdHJhdGllIHRlIGJldmVzdGlnZW4gdmlhIGVtYWlsJzsKJGxhbmdbJ25vdGlmeV9vbl9yZWdpc3RyYXRpb24nXSA9ICdTdHV1ciBlZW4gZW1haWxiZXZlc3RpZ2luZyBhbHMgaWVtYW5kIHppY2ggcmVnaXN0cmVlcnQnOwokbGFuZ1snY2FuY2VsJ10gPSAnQW5udWxlZXInOwokbGFuZ1snc3VibWl0J10gPSAnVmVyc3R1dXInOwokbGFuZ1snZnJpZW5kbHluYW1lJ10gPSAnU2VsZiBSZWdpc3RyYXRpb24tbW9kdWxlJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsJ10gPSAnRGUgaW5zdGFsbGF0aWUgaXMgYWZnZXJvbmQuIFZlcmdlZXQgbmlldCBvbSBkZSByZWNodGVuIHZhbiAmcXVvdDtNb2RpZnkgU2VsZlJlZ2lzdHJhdGlvbiBTZXR0aW5ncyZxdW90OyBpbiB0ZSBzdGVsbGVuLiBBbHMgZGUgQ2FwdGNoYSBtb2R1bGUgZ2UmaXVtbDtuc3RhbGxlZXJkIGlzLCBkYW4gc3RhYXQgZGV6ZSBmdW5jdGlvbmFsaXRlaXQgc3RhbmRhYXJkIGFhbi4gV2UgcmFkZW4gdSBzdGVyayBhYW4gb20gZGV6ZSBtb2R1bGUgdGUgaW5zdGFsbGVyZW4uIEFscyBkZSBDYXB0Y2hhIG1vZHVsZSBnZSZpdW1sO25zdGFsbGVlcmQgaXMgZW4gdSB3aWx0IGRlemUgdWl0c2NoYWtlbGVuLCBnZWJydWlrIGRhbiBkZSBub2NhcHRjaGEgcGFyYW1ldGVyIGluIGRlIHNlbGZyZWdpc3RyYXRpb24gdGFnJzsKJGxhbmdbJ3Bvc3R1bmluc3RhbGwnXSA9ICdEZSBTZWxmIFJlZ2lzdHJhdGlvbi1tb2R1bGUgaXMgZ2UmaXVtbDtuc3RhbGxlZXJkJzsKJGxhbmdbJ3VuaW5zdGFsbGVkJ10gPSAnTW9kdWxlIGdlZGVpbnN0YWxsZWVyZCc7CiRsYW5nWydpbnN0YWxsZWQnXSA9ICdNb2R1bGV2ZXJzaWUgJXMgZ2UmaXVtbDtuc3RhbGxlZXJkLic7CiRsYW5nWydwcmVmc3VwZGF0ZWQnXSA9ICdNb2R1bGV2b29ya2V1cmVuIGdldXBkYXRlLic7CiRsYW5nWydhY2Nlc3NkZW5pZWQnXSA9ICdUb2VnYW5nIGdld2VpZ2VyZC4gQ29udHJvbGVlciB1dyByZWNodGVuLic7CiRsYW5nWydlcnJvciddID0gJ0ZvdXQhJzsKJGxhbmdbJ3VwZ3JhZGVkJ10gPSAnTW9kdWxlIG9wZ2V3YWFyZGVlcmQgbmFhciB2ZXJzaWUgJXMuJzsKJGxhbmdbJ3RpdGxlX21vZF9wcmVmcyddID0gJ01vZHVsZXZvb3JrZXVyZW4nOwokbGFuZ1sndGl0bGVfbW9kX2FkbWluJ10gPSAnTW9kdWxlYmVoZWVycGFuZWVsJzsKJGxhbmdbJ3RpdGxlX2FkbWluX3BhbmVsJ10gPSAnU2VsZiBSZWdpc3RyYXRpb24tbW9kdWxlJzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnRWVuIG1vZHVsZSBkaWUgaGV0IEZyb250RW5kIGdlYnJ1aWtlcnMgbW9nZWxpamsgbWFha3QgemljaHplbGYgdGUgcmVnaXN0cmVyZW4uJzsKJGxhbmdbJ3dlbGNvbWVfdGV4dCddID0gJzxwPldlbGtvbSBiaWogZGUgU2VsZiBSZWdpc3RyYXRpb24tbW9kdWxlLjwvcD4nOwokbGFuZ1snY2hhbmdlbG9nJ10gPSAnPHVsPg0KPGxpPlZlcnNpb24gMC4wLjEuIE9jdCAyMDA1LiBJbml0aWFsIE5SUFQgKE5vdCBSZWFkeSBmb3IgUHJpbWUgVGltZSkgcmVsZWFzZS48L2xpPg0KPGxpPlZlcnNpb24gMC4xLjAuIE9jdCAyMDA1LiBJbml0aWFsIHJlbGVhc2UuPC9saT4NCjxsaT5WZXJzaW9uIDAuMS4xLiBPY3QgMjAwNS4gU2V0IHRoZSBIVE1MIG1haWwgZmxhZy48L2xpPg0KPGxpPlZlcnNpb24gMC4xLjIuIE9jdCAyMDA1LiBNb3ZlZCBSYW5kb20gc3R1ZmYgaW50byBmZXVzZXJzLCBhbmQgYWRkZWQgdGhlIGFiaWxpdHkgdG8gZGVsZXRlIG9sZCBlbnRyaWVzIGZyb20gdGhlIHJlZ2lzdHJhdGlvbiB0ZW1wb3JhcnkgdGFibGVzPC9saT4NCjxsaT48cD5WZXJzaW9uIDAuMS4zLiAtIERlYyAyMDA1PC9wPg0KPHA+Rml4ZWQgdGhlIHRvZ2dsZXMgaW4gdGhlIGFkbWluIHByZWZlcmVuY2VzLiAgQWxzbywgY2hhbmdlZCB0aGUgcGVybWlzc2lvbnMgbW9kZWwgdG8gbm90IHJlcXVpcmUgdGhlIHVuaXF1ZSBwZXJtaXNzaW9uIGFkZGVkIHByZXZpb3VzbHkgZm9yIHRoZSBzZWxmcmVnIG1vZHVsZS48L3A+DQo8cD5UaGlzIHJlbGVhc2Ugd2FzIHJlbW92ZWQgZHVlIHRvIHBvc3NpYmxlIGVycm9yczwvcD4NCjwvbGk+DQo8bGk+PHA+VmVyc2lvbiAwLjEuNC4gLSBKYW4gMjAwNjwvcD4NCjxwPkZpeGVkIG1pbm9yIGVycm9ycyB3aXRoIENoZWNrUGVybWlzc2lvbiwgcmVwbGFjZWQgYWxsIGFzc2lnbl9ieV9yZWZzJiMwMzk7cyB3aXRoIGFzc2lnbnMgZm9yIGhvcGVmdWwgcGhwNSBjb21wYXRpYmlsaXR5LjwvcD4NCjxsaT48cD5WZXJzaW9uIDAuMS41LiAtIEphbiAyMDA2PC9wPg0KPHA+QWRkZWQgdGhlIGFiaWxpdHkgdG8gc2V0IHRoZSBzdWJqZWN0IG9mIHRoZSBjb25maXJtYXRpb24gZW1haWwsIGFuZCBhZGRlZCB0aGUgYWJpbGl0eSB0byBzcGVjaWZ5IGEgdGV4dCBib2R5LiAgU3ViamVjdCwgYW5kIHRleHQgYm9keSBhcmUgcmVxdWlyZWQuPC9wPg0KPC9saT4NCjxsaT48cD5WZXJzaW9uIDEuMC4wLiAtIEZlYiAyMDA2PC9wPg0KPHA+Rml4ZWQgYSBwcm9ibGVtIHdpdGggdGhlIHZlcmlmeSBtb2RlLjwvcD4NCjxwPkFkZGVkIHRoZSBhYmlsaXR5IHRvIGVkaXQgYW5kIGRlbGV0ZSB1c2Vycy4gd2l0aCBzZWxlY3Rpb24gb24gdGhlIGNoZWNrYm94ZXMsIGFuZCAmcXVvdDtjaGVja2FsbCZxdW90OzwvcD4NCjxwPk5vdyByZXF1aXJlIEZFVXNlcnMgMC4xLjggYW5kIENNU01haWxlciAxLjczLjk8L3A+DQo8cD5BZGRlZCBhbm90aGVyIHRhYiBmb3IgdGhlICZxdW90O3lvdXIgc2V0dGluZ3MgaGF2ZSBiZWVuIGFkanVzdGVkJnF1b3Q7IGVtYWlsIHRlbXBsYXRlczwvcD4NCjxwPkFkZGVkIENTViBFeHBvcnRpbmc8L3A+DQo8cD5BZGRlZCBhICZxdW90O0RlbGV0ZSBhbGwgdXNlcnMgb2xkZXIgdGhhbiBhIGRheSZxdW90OyBidXR0b248L3A+DQo8cD5Ob3cgd29ya3Mgd2l0aCB0aGUgbWF4aW11bSBsZW5ndGggZmllbGQgb2YgRkVVc2VyczwvcD4NCjxwPkFkZGVkIHN1cHBvcnQgZm9yIGRyb3Bkb3ducyBhbmQgdGV4dCBhcmVhczwvcD4NCjxwPkRpc2FsbG93IHB1bmN0dWF0aW9uIGNoYXJhY3RlcnMgaW4gdXNlcm5hbWU8L3A+DQo8L2xpPg0KPGxpPjxwPlZlcnNpb24gMS4wLjEuIC0gRmViIDIwMDY8L3A+DQo8cD5BZGRlZCB0aGUgYWJpbGl0eSBmb3IgdXNlcnMgdG8gcmVxdWVzdCBhbm90aGVyIHJlZ2lzdHJhdGlvbiBlbWFpbCAodXNlcyB0aGUgc2FtZSBjb2RlKSwgaW5jYXNlIHRoZXkgbG9zdCB0aGVpciBmaXJzdCBvbmUuPC9wPg0KPC9saT4NCjxsaT48cD5WZXJzaW9uIDEuMC4yLiAtIEZlYiAyMDA2PC9wPg0KPHA+VGhlICZxdW90O1JlcXVpcmUgZW1haWwgY29uZmlybWF0aW9uJnF1b3Q7IGNoZWNrYm94IG5vdyB3b3Jrcy4gIFVzZXJzIGFyZSBhZGRlZCBzdHJhaWdodCB0byB0aGUgZnJvbnRlbmQgdXNlcnMgZGF0YWJhc2U8L3A+DQo8cD5GaXhlZCBhIGJ1ZyB3aXRoIHRoZSBjb25maXJtYXRpb24gZW1haWxzIGhhdmluZyBsaW5rcyB0byB0aGUgYWRtaW4gc2VjdGlvbiAobmV3IGJ1ZyBvbmx5KS48L3A+DQo8L2xpPg0KPGxpPjxwPlZlcnNpb24gMS4wLjMuIC0gRmViIDIwMDY8L3A+DQo8cD5BZGRlZCB0aGUgKG9wdGlvbmFsKSBhYmlsaXR5IHRvIHJlcXVpcmUgdGhlIHVzZXIgZW50ZXIgdGhlIGVtYWlsIGFkZHJlc3MgdHdpY2U8L3A+DQo8cD5GaXhlZCBhIGJ1ZyB3aXRoIHRoZSB1c2VyZWRpdGVkIG1lc3NhZ2Ugbm90IGJlaW5nIHRocm93biB0aHJvdWdoIHNtYXJ0eTwvcD4NCjxwPkZpeGVkIHRoZSBkZWZhdWx0IHJlZ2lzdHJhdGlvbiB0ZW1wbGF0ZSBhIGJpdCB0byBhaWRlIGluIHZhbGlkYXRpb24gZm9yIG5vbiByZXF1aXJlZCBmaWVsZHMgKGZpeGVkIGEgd2FybmluZyk8L3A+DQo8cD5GaXggcHJvYmxlbXMgd2l0aCBpbmxpbmUgYW5kIG5vbi1pbmxpbmUgZm9ybXMgYW5kIGxpbmtzPC9wPg0KPHA+SGFuZGxlIGFub3RoZXIgY2FzZSB3aGVyZSB0aGUgYWRtaW4gbWF5IG5vdCBoYXZlIGNyZWF0ZWQgdGhlIHByb3BlciB0eXBlIG9mIGVtYWlsIHByb3BlcnR5PC9wPg0KPHA+Q2hhbmdlZCB0byByZXF1aXJlIENNUyAwLjEyLWJldGEyIGF0IGEgbWluaW11bSAoZm9yIHNhZmV0eSBwdXJwb3Nlcyk8L3A+DQo8L2xpPg0KPGxpPjxwPlZlcnNpb24gMS4wLjQuIC0gTWFyIDIwMDY8L3A+DQo8cD5Nb3JlIGNvbnRyb2wgb3ZlciB1c2VybmFtZSBhbmQgcGFzc3dvcmQgZmllbGQgc2l6ZXMgKGNvbnRyb2xsZWQgYnkgZmV1c2Vycyk8L3A+DQo8cD5Db25maXJtYXRpb24gb24gZWRpdGluZyBwcmVmZXJlbmNlczwvcD4NCjxwPlJlcXVpcmUgMC4xMiBwcm9wZXIgb2YgY21zIGFzIGEgbWluaW11bTwvcD4NCjwvbGk+DQo8bGk+PHA+VmVyc2lvbiAxLjEuMC4gLSBEZWMgMjAwNjwvcD4NCiAgICA8cD5BZGRlZCBldmVudHMgYW5kIDEuMCBjb21wYXRpYmlsaXR5PC9wPg0KICAgIDxwPkNhcHRjaGEgc3VwcG9ydCAodGhhbmtzIERpdHRtYW4pPC9wPg0KPC9saT4NCjxsaT48cD5WZXJzaW9uIDEuMS4xLjwvcD4NCiAgICA8cD5Ob3cgcmVxdWlyZSBGRVVzZXJzIDEuMS4zIChtaW5pbXVtKTwvcD4NCiAgICA8cD5TdXBwb3J0IGZvciBtdWx0aXNlbGVjdCBsaXN0cyBpbiBmZXVzZXJzPC9wPg0KICAgIDxwPk91dHB1dCBzb21lIG1vcmUgZmllbGRzIHRvIHNtYXJ0eSB0byBhbGxvdyBmb3IgaW5jcmVhc2VkIGFjY2Vzc2liaWxpdHk8L3A+DQogICAgPHA+U3BsaXQgY29kZSBvdXQgaW50byBtdWx0aXBsZSBmaWxlcyB0byByZWR1Y2Ugb3ZlcmFsbCBtZW1vcnkgZm9vdHByaW50PC9wPg0KICAgIDxwPklnbm9yZSBhbGwgaW1hZ2UgZmllbGRzPC9wPg0KICAgIDxwPkNoYW5nZSBDYXB0Y2hhIHN1cHBvcnQgdG8gYmUgb24gYnkgZGVmYXVsdCBpZiB0aGUgQ2FwdGNoYSBtb2R1bGUgaXMgZm91bmQ8L3A+DQo8L2xpPg0KPC91bD4nOwokbGFuZ1snaGVscCddID0gJzxoMz5XYXQgZG9ldCBoZXQ/PC9oMz4NCjxwPkRlemUgbW9kdWxlIGlzIG9udHdvcnBlbiBvbSBGcm9udEVuZFVzZXJzIHRvZSB0ZSBzdGFhbiB6aWNoemVsZiB0ZSByZWdpc3RyZXJlbiBlbiBkZSBiZW5vZGlnZGUgaW5mb3JtYXRpZSBpbiB0ZSB2dWxsZW4uIEhldCB2ZXJzdHV1cnQgdmVydm9sZ2VucyBlZW4gYmV2ZXN0aWdpbmdzbWFpbCBtZXQgZWVuIGxpbmsgbmFhciBlZW4gdHdlZWRlIHBhZ2luYSBkaWUgaW5nZXZ1bGQgbW9ldCB3b3JkZW4gdm9vciBkZSByZWdpc3RyYXRpZSBhZmdlcm9uZCBrYW4gd29yZGVuLiBOYSBhZnJvbmRpbmcgdmFuIGRlIHJlZ2lzdHJhdGllIGlzIGVlbiBnZWJydWlrZXJzYWNjb3VudCBpbiBkZSBGcm9udEVuZFVzZXJzLW1vZHVsZSBhYW5nZW1hYWt0LjwvcD4NCjxwPk9tIGRlemUgbW9kdWxlIHRlIGt1bm5lbiBnZWJydWlrZW4gZGllbnQgZWVuIGVpZ2Vuc2NoYXAgdmFuIGhldCB0eXBlIEUtbWFpbGFkcmVzIGluIGRlIEZyb250RW5kVXNlcnMtbW9kdWxlIGFhbmdlbWFha3QgdGUgd29yZGVuIGVuIG1vZXQgZGV6ZSBnZWtvcHBlbGQgd29yZGVuIG1ldCBkZSBnZWJydWlrZXJzZ3JvZXAgZGllIGdlYnJ1aWt0IHdvcmR0IHZvb3IgZGUgemVsZnJlZ2lzdHJhdGllLjwvcD4NCjxoMz5Ib2UgZ2VicnVpayBpayBoZXQ/PC9oMz4NCjxwPkplIHBsYWF0c3QgZGUgdm9sZ2VuZGUgdGFnIGluIGplIHBhZ2luYSB7Y21zX21vZHVsZSBtb2R1bGU9U2VsZlJlZ2lzdHJhdGlvbiBncm91cD1nZWJydWlrZXJzZ3JvZXB9PC9wPg0KPHA+SmUgbW9ldCB2b29yYWYgZGUgZWlnZW5zY2hhcHBlbiBlbiBnZWJydWlrZXJzZ3JvZXBlbiBpbiBkZSBGcm9udEVuZFVzZXJzLW1vZHVsZSBhYW5nZW1hYWt0IGhlYmJlbiBvbSBkZSB6ZWxmcmVnaXN0cmF0aWUgdGUga3VubmVuIGdlYnJ1aWtlbi48L3A+DQo8aDM+UGFyYW1ldGVyczwvaDM+DQo8cD48c3Ryb25nPm1vZGU8L3N0cm9uZz4mbmJzcDs8ZW0+b3B0aW9uZWVsPC9lbT4gLSBtb2dlbGlqa2Ugd2FhcmRlbiB6aWpuICZxdW90O3NpZ251cCZxdW90OyBlbiAmcXVvdDt2ZXJpZnkmcXVvdDsuICBBbHMgZGV6ZSBwYXJhbWV0ZXIgbmlldCBvcGdlZ2V2ZW4gaXMgZ2VsZHQgJnF1b3Q7c2lnbnVwJnF1b3Q7LjwvcD4NCjxwPjxzdHJvbmc+Z3JvdXA8L3N0cm9uZz4mbmJzcDs8ZW0+b3B0aW9uYWw8L2VtPiAtIFZlcmVpc3QgYWxzIGRlIG1vZGUgJnF1b3Q7c2lnbnVwJnF1b3Q7IGlzIG9mIGFscyBkZSBtb2RlIG5pZXQgb3BnZWdldmVuIGlzLjwvcD4NCjxwPjxzdHJvbmc+bm9jYXB0Y2hhPC9zdHJvbmc+Jm5ic3A7PGVtPm9wdGlvbmVlbDwvZW0+IC0gSGllcm1lZSB3b3JkdCBjYXB0Y2hhIHVpdGdlc2NoYWtlbGQgb3AgaGV0IHJlZ2lzdHJhdGllZm9ybXVsaWVyLiBTdGFuZGFhcmQgd29yZHQgY2FwdGNoYSBvbmRlcnN0ZXVuZCwgbWl0cyBkZSBDYXB0Y2hhLW1vZHVsZSBnZSZpdW1sO25zdGFsbGVlcmQgaXMuIERlemUgcGFyYW1ldGVyIHNjaGFrZWx0IGRlIG1vZHVsZSB1aXQuPC9wPg0KPGgzPk9uZGVyc3RldW5pbmc8L2gzPg0KPHA+RGV6ZSBtb2R1bGUgYmV2YXQgZ2VlbiBjb21tZXJjaSZldW1sO2xlIG9uZGVyc3RldW5pbmcuIEVyIHppam4gZWNodGVyIGVlbiBhYW50YWwgbW9nZWxpamtoZWRlbiBvbSBqZSBlcm1lZSB0ZSBoZWxwZW46PC9wPg0KPHVsPg0KPGxpPlZvb3IgZGUgbmlldXdzdGUgdmVyc2llIHZhbiBkZXplIG1vZHVsZSwgRkFRcywgb2Ygb20gZWVuIEJ1ZyBSZXBvcnQgaW4gdGUgZGllbmVuIG9mIGNvbW1lcmNpZWxlIG9uZGVyc3RldW5pbmcgdGUgdnJhZ2VuLCBrdW4gamUgY2FsZ3V5JiMwMzk7cw0KbW9kdWxlIGhvbWVwYWdlIGJlem9la2VuIG9wIDxhIGhyZWY9JnF1b3Q7aHR0cDovL3RlY2hjb20uZHluZG5zLm9yZyZxdW90Oz50ZWNoY29tLmR5bmRucy5vcmc8L2E+LjwvbGk+DQo8bGk+VmVyZGVyZSBiZXNwcmVraW5nZW4gdmFuIGRlemUgbW9kdWxlIGthbiBvb2sgZ2V2b25kZW4gd29yZGVuIGluIGRlIDxhIGhyZWY9JnF1b3Q7aHR0cDovL2ZvcnVtLmNtc21hZGVzaW1wbGUub3JnJnF1b3Q7PkNNUyBNYWRlIFNpbXBsZSBGb3J1bXM8L2E+LjwvbGk+DQo8bGk+RGUgYXV0ZXVyLCBjYWxndXkxMDAwLCBrYW4gdmFhayBhYW5nZXRyb2ZmZW4gd29yZGVuIGluIGRlIDxhIGhyZWY9JnF1b3Q7aXJjOi8vaXJjLmZyZWVub2RlLm5ldC8jY21zJnF1b3Q7PkNNUyBJUkMgQ2hhbm5lbDwvYT4uPC9saT4NCjxsaT5UZW5zbG90dGUga2FuIGplIGVuaWdlIHN1Y2NlcyBoZWJiZW4gZG9vciBkZSBhdXRldXIgZGlyZWN0IHRlIGUtbWFpbGVuLjwvbGk+ICANCjwvdWw+DQo8cD5BcyBwZXIgdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBwcm92aWRlZCBhcy1pcy4gUGxlYXNlIHJlYWQgdGhlIHRleHQNCm9mIHRoZSBsaWNlbnNlIGZvciB0aGUgZnVsbCBkaXNjbGFpbWVyLjwvcD4NCg0KPGgzPkNvcHlyaWdodCBhbmQgTGljZW5zZTwvaDM+DQo8cD5Db3B5cmlnaHQgJmNvcHk7IDIwMDUsIFJvYmVydCBDYW1wYmVsIDxhIGhyZWY9JnF1b3Q7bWFpbHRvOmNhbGd1eTEwMDBAaG90bWFpbC5jb20mcXVvdDs+PGNhbGd1eTEwMDBAaG90bWFpbC5jb20+PC9hPi4gQWxsIFJpZ2h0cyBBcmUgUmVzZXJ2ZWQuPC9wPg0KPHA+VGhpcyBtb2R1bGUgaGFzIGJlZW4gcmVsZWFzZWQgdW5kZXIgdGhlIDxhIGhyZWY9JnF1b3Q7aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMJnF1b3Q7PkdOVSBQdWJsaWMgTGljZW5zZTwvYT4uIFlvdSBtdXN0IGFncmVlIHRvIHRoaXMgbGljZW5zZSBiZWZvcmUgdXNpbmcgdGhlIG1vZHVsZS48L3A+DQonOwokbGFuZ1sndXRteiddID0gJzE1Njg2MTM1My4xMTkyMzU0NzE5LjE3MS44LnV0bWNjbj0ocmVmZXJyYWwpfHV0bWNzcj13aWtpLmNtc21hZGVzaW1wbGUub3JnfHV0bWNjdD0vaW5kZXgucGhwL1NwZWNpYWw6UmVjZW50Y2hhbmdlc3x1dG1jbWQ9cmVmZXJyYWwnOwokbGFuZ1sndXRtYSddID0gJzE1Njg2MTM1My4xNTgxMDQzNTIyLjExODUxMDg2NTkuMTE5MzU1NTkzMC4xMTkzNTYyOTcwLjIzMCc7CiRsYW5nWyd1dG1jJ10gPSAnMTU2ODYxMzUzJzsKJGxhbmdbJ3V0bWInXSA9ICcxNTY4NjEzNTMnOwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lang/ext/pl_PL.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2Vycm9yX2NvZGVzZG9udG1hdGNoJ10gPSAnV3Byb3dhZHpvbnkga2x1Y3ogd2FsaWRhY2ppICc7CiRsYW5nWydldmVudF9kZXNjcmlwdGlvbl9vbk5ld1VzZXInXSA9ICdBbiBldmVudCBpbmRpY2F0aW5nIHRoYXQgYSBuZXcgdXNlciBoYXMgY29tcGxldGVkIHRoZSByZWdpc3RyYXRpb24gZm9ybSc7CiRsYW5nWydldmVudF9kZXNjcmlwdGlvbl9vblVzZXJSZWdpc3RlcmVkJ10gPSAnQW4gZXZlbnQgaW5kaWNhdGluZyB0aGF0IGEgdXNlciBoYXMgdmVyaWZpZWQgaGlzIGluZm9ybWF0aW9uIGFuZCBpcyBub3cgY29tcGxldGVseSByZWdpc3RlcmVkJzsKJGxhbmdbJ2V2ZW50X2hlbHBfb25OZXdVc2VyJ10gPSAnPHA+QW4gZXZlbnQgaW5kaWNhdGluZyB0aGF0IGEgbmV3IHVzZXIgaGFzIGNvbXBsZXRlZCB0aGUgcmVnaXN0cmF0aW9uIGZvcm08L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgbmV3IHVzZXJzIHNlbGVjdGVkIHVzZXJuYW1lPC9saT4NCjxsaT48ZW0+ZW1haWw8L2VtPiAtIFRoZSBuZXcgdXNlcnMgZW1haWwgYWRkcmVzczwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfb25Vc2VyUmVnaXN0ZXJlZCddID0gJzxwPkFuIGV2ZW50IGluZGljYXRpbmcgdGhhdCBhIHVzZXIgaGFzIGJlZW4gdmVyaWZpZWQgYW5kIGlzIG5vdyByZWdpc3RlcmVkIHdpdGggZmV1c2VyczwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSByZWdpc3RlcmVkIHVzZXJuYW1lPC9saT4NCjwvdWw+DQonOwokbGFuZ1snY29uZmlybV9zdWJtaXRwcmVmcyddID0gJ0NoYW5nZSBhZG1pbiBwcmVmZXJlbmNlcz8nOwokbGFuZ1snaW5mb19hZG1pbl9wYXNzd29yZCddID0gJ0xlYXZlIHRoaXMgZmllbGQgZW1wdHkgdG8gcHJlc2VydmUgdGhlIHVzZXIgcGFzc3dvcmQnOwokbGFuZ1snaW5mb19hZG1pbl9yZXBlYXRwYXNzd29yZCddID0gJ0xlYXZlIHRoaXMgZmllbGQgZW1wdHkgdG8gcHJlc2VydmUgdGhlIHVzZXIgcGFzc3dvcmQnOwokbGFuZ1snZXJyb3JfZW1haWxkb2Vzbm90bWF0Y2gnXSA9ICdBZHJlc3kgZW1haWwgbmllIHpnYWR6YWrEhSBzacSZJzsKJGxhbmdbJ2ZvcmNlX2VtYWlsX3R3aWNlJ10gPSAnV3ltYWdhaiBwb2R3Jm9hY3V0ZTtqbmVnbyB3cHJvd2FkemVuaWEgZW1haWxhJzsKJGxhbmdbJ2FnYWluJ10gPSAncG9ub3duaWUnOwokbGFuZ1snZGVsZXRlc2VsdXNlcnMnXSA9ICdTa2FzdWogd3licmFueWNoIHXFvHl0a293bmlrJm9hY3V0ZTt3JzsKJGxhbmdbJ2Vycm9yX25vcHJvcGRlZm5zJ10gPSAnTm8gcHJvcGVydHkgZGVmaW5pdGlvbnMsIG9yIHByb2JsZW0gcmV0cmVpdmluZyB0aGVtIGZyb20gdGhlIGRhdGFiYXNlJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBzJ10gPSAnTm8gZ3JvdXBzLCBvciBwcm9ibGVtIHJldHJlaXZpbmcgZ3JvdXAgbGlzdCc7CiRsYW5nWydlcnJvcl9kYmVycm9yJ10gPSAnQsWCxIVkIGJhenkgZGFueWNoJzsKJGxhbmdbJ3RpdGxlX3Bvc3Rfc2VuZGFub3RoZXJlbWFpbF90ZW1wbGF0ZSddID0gJ1Bvc3QgTG9zdCBFbWFpbCBUZW1wbGF0ZSc7CiRsYW5nWyd0aXRsZV9zZW5kYW5vdGhlcmVtYWlsX3RlbXBsYXRlJ10gPSAnTG9zdCBFbWFpbCBUZW1wbGF0ZSc7CiRsYW5nWydjbGlja2hlcmUnXSA9ICdLbGlrbmlqIHR1dGFqJzsKJGxhbmdbJ21zZ19zZW5kYW5vdGhlcmVtYWlsJ10gPSAnSSBoYXZlIGFscmVhZHkgY29tcGxldGVkIHRoZSByZWdpc3RyYXRpb24gZm9ybSwgYnV0IGRpZCBub3QgcmVjZWl2ZSBhbiBlbWFpbCwgY2FuIHlvdSBwbGVhc2UgcmUtc2VuZCBpdCc7CiRsYW5nWydzZW5kYW5vdGhlcmVtYWlsX3RlbXBsYXRlJ10gPSAnTG9zdCBFbWFpbCBUZW1wbGF0ZSc7CiRsYW5nWydpbmZvX3VzZXJ2ZXJpZmllZCddID0gJ0EgbmV3IHVzZXIgaGFzIGJlZW4gYWRkZWQgdG8gRnJvbnRFbmRVc2Vycyc7CiRsYW5nWydlZGl0J10gPSAnRWRpdCc7CiRsYW5nWyd1bmtub3duJ10gPSAnVW5rbm93bic7CiRsYW5nWydzZWxlY3QnXSA9ICdTZWxlY3QnOwokbGFuZ1snY2hlY2tfYWxsJ10gPSAnQ2hlY2sgQWxsJzsKJGxhbmdbJ3VuY2hlY2tfYWxsJ10gPSAnVW5jaGVjayBBbGwnOwokbGFuZ1snc2VuZF9hZGp1c3RtZW50ZW1haWwnXSA9ICdTZW5kIGFuIGVtYWlsIHRvIHRoZSB1c2VyJzsKJGxhbmdbJ3R4dF9hZGp1c3RtZW50ZW1haWwnXSA9ICcoaW5mb3JtcyB0aGUgdXNlciB0aGF0IHRoZWlyIGFjY291bnQgaGFzIGJlZW4gYWRqdXN0ZWQnOwokbGFuZ1sndHh0X2NoYW5nZXBhc3N3b3JkJ10gPSAnRmlsbCBpbiB0aGVzZSBmaWVsZHMgdG8gY2hhbmdlIHRoZSB1c2VyIHBhc3N3b3JkJzsKJGxhbmdbJ2VkaXR1c2VyJ10gPSAnRWRpdCBVc2VyJzsKJGxhbmdbJ2FyZXlvdXN1cmVfZGVsZXRldXNlciddID0gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgdGhpcyBwYXJ0aWFsbHkgcmVnaXN0ZXJlZCB1c2VyPyc7CiRsYW5nWydoZHJfdXNlcmlkJ10gPSAnVXNlcklEJzsKJGxhbmdbJ2hkcl91c2VybmFtZSddID0gJ1VzZXJuYW1lJzsKJGxhbmdbJ2hkcl9ncnBuYW1lJ10gPSAnR3JvdXAnOwokbGFuZ1snaGRyX2NyZWF0ZWQnXSA9ICdDcmVhdGVkJzsKJGxhbmdbJ2hkcl9lbWFpbCddID0gJ0VtYWlpJzsKJGxhbmdbJ3VzZXJzZm91bmQnXSA9ICdVc2VycyBmb3VuZCAobGltaXRlZCB0byBhIG1heGltdW0gb2YgMjUwKSc7CiRsYW5nWyd1c2VycyddID0gJ1VzZXJzJzsKJGxhbmdbJ2xpc3QxZGF5J10gPSAnTGlzdCBhbGwgZW50cmllcyBtb3JlIHRoYW4gMSBkYXkgb2xkJzsKJGxhbmdbJ3N1YmplY3QnXSA9ICdTdWJqZWN0IGZvciBvdXRnb2luZyBlbWFpbCc7CiRsYW5nWydodG1sYm9keSddID0gJ0hUTUwgbWVzc2FnZSBib2R5JzsKJGxhbmdbJ3RleHRib2R5J10gPSAnVGV4dCBtZXNzYWdlIGJvZHknOwokbGFuZ1sncHJvbXB0X251bXJlc2V0cmVjb3JkJ10gPSAnQSBudW1iZXIgb2YgdXNlcnMgYXJlIGluIHRoZSBtaWRkbGUgb2YgcmVnaXN0ZXJpbmcuICBDdXJyZW50bHkgdGhpcyBjb3VudCBpcyBhdDonOwokbGFuZ1sncmVtb3ZlMXdlZWsnXSA9ICdSZW1vdmUgYWxsIGVudHJpZXMgbW9yZSB0aGFuIGEgd2VlayBvbGQnOwokbGFuZ1sncmVtb3ZlMW1vbnRoJ10gPSAnUmVtb3ZlIGFsbCBlbnRyaWVzIG1vcmUgdGhhbiBhIG1vbnRoIG9sZCc7CiRsYW5nWydyZW1vdmUxZGF5J10gPSAnUmVtb3ZlIGFsbCBlbnRyaWVzIG1vcmUgdGhhbiBhIGRheSBvbGQnOwokbGFuZ1sncmVtb3ZlYWxsJ10gPSAnUmVtb3ZlIGFsbCBlbnRyaWVzJzsKJGxhbmdbJ2FyZXlvdXN1cmUnXSA9ICdBcmUgeW91IHN1cmU/JzsKJGxhbmdbJ3JlZ2lzdHJhdGlvbl9pbmZvX2VkaXRlZCddID0gJ1lvdXIgcmVnaXN0cmF0aW9uIGluZm8gaGFzIGJlZW4gbW9kaWZpZWQnOwokbGFuZ1sncmVnaXN0cmF0aW9uX2NvbmZpcm1hdGlvbiddID0gJ1JlZ2lzdHJhdGlvbiBDb25maXJtYXRpb24nOwokbGFuZ1sndXNlcl9yZWdpc3RyYXRpb24nXSA9ICdSZWdpc3Rlcic7CiRsYW5nWydmaW5hbG1lc3NhZ2VfdGVtcGxhdGUnXSA9ICdGaW5hbCBNZXNzYWdlIFRlbXBsYXRlJzsKJGxhbmdbJ3RpdGxlX3ZlcmlmeXJlZ2lzdHJhdGlvbiddID0gJ1ZlcmlmeSBSZWdpc3RyYXRpb24nOwokbGFuZ1snY29kZSddID0gJ1ZhbGlkYXRpb24gS2V5JzsKJGxhbmdbJ2RlZmF1bHQnXSA9ICdTZXQgVG8gRGVmYXVsdHMnOwokbGFuZ1snZXJyb3Jfbm9wcm9wZXJ0aWVzJ10gPSAnTm8gcHJvcGVydGllcyBmb3VuZCBmb3IgdGhpcyB1c2VyJzsKJGxhbmdbJ2Vycm9yX25vcHJvcHJlbGF0aW9ucyddID0gJ05vIHByb3BlcnR5IHJlbGF0aW9ucyc7CiRsYW5nWydlcnJvcl9lbWFpbGludmFsaWQnXSA9ICdJbnZhbGlkIGVtYWlsIGFkZHJlc3MnOwokbGFuZ1snZXJyb3Jfbm9lbWFpbGFkZHJlc3MnXSA9ICdObyB2YWxpZCBlbWFpbCBhZGRyZXNzIGZpZWxkIGZvdW5kJzsKJGxhbmdbJ2Vycm9yX3JlcXVpcmVkZmllbGQnXSA9ICdGaWVsZCAlcyBtdXN0IGJlIGZpbGxlZCBpbic7CiRsYW5nWydyZWdpc3RyYXRpb24xX3RlbXBsYXRlJ10gPSAnUmVnaXN0cmF0aW9uIFRlbXBsYXRlIDEnOwokbGFuZ1sncmVnaXN0cmF0aW9uMl90ZW1wbGF0ZSddID0gJ1JlZ2lzdHJhdGlvbiBUZW1wbGF0ZSAyJzsKJGxhbmdbJ2VtYWlsY29uZmlybV90ZW1wbGF0ZSddID0gJ0NvbmZpcm1hdGlvbiBFbWFpbCBUZW1wbGF0ZSc7CiRsYW5nWydlbWFpbHVzZXJlZGl0ZWRfdGVtcGxhdGUnXSA9ICdVc2VyIEluZm8gQ2hhbmdlZCBUZW1wbGF0ZSc7CiRsYW5nWydwcmVmZXJlbmNlcyddID0gJ1ByZWZlcmVuY2VzJzsKJGxhbmdbJ2Vycm9yX3VzZXJub3Rmb3VuZCddID0gJ1VzZXIgbm90IGZvdW5kJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZSddID0gJ1VzZXJuYW1lIGlzIGludmFsaWQgKHRvbyBsb25nLCB0b28gc2hvcnQsIG9yIGNvbnRhaW5zIGludmFsaWQgY2hhcmFjdGVycykuICBIaW50LSBVc2VybmFtZXMgbXVzdCBjb250YWluIG9ubHkgYWxwaGFudW1lcmljIGNoYXJhY3RlcnMgKG5vIHNwYWNlcyknOwokbGFuZ1snZXJyb3JfdXNlcm5hbWV0YWtlbiddID0gJ1RoYXQgdXNlcm5hbWUgaXMgY3VycmVudGx5IGluIHVzZSc7CiRsYW5nWydlcnJvcl9wYXNzd29yZHNkb250bWF0Y2gnXSA9ICdFUlJPUjogUGFzc3dvcmRzIGRvbnQgbWF0Y2gnOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhc3N3b3JkJ10gPSAnUGFzc3dvcmQgaXMgaW52YWxpZCAocGFzc3dvcmRzIG11c3QgYmUgYmV0d2VlbiAlcyBhbmQgJXMgY2hhcmFjdGVycyBpbiBsZW5ndGgpJzsKJGxhbmdbJ2Vycm9yX2VtcHR5dXNlcm5hbWUnXSA9ICdVc2VybmFtZSBjYW5ub3QgYmUgZW1wdHknOwokbGFuZ1sncmVwZWF0cGFzc3dvcmQnXSA9ICdQYXNzd29yZCAoYWdhaW4pJzsKJGxhbmdbJ3Bhc3N3b3JkJ10gPSAnUGFzc3dvcmQnOwokbGFuZ1sndXNlcm5hbWUnXSA9ICdVc2VybmFtZSc7CiRsYW5nWydjYXB0Y2hhX3RpdGxlJ10gPSAnRW50ZXIgdGhlIHRleHQgZnJvbSB0aGUgaW1hZ2UnOwokbGFuZ1snZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJ10gPSAnSW5zdWZmaWNpZW50IG51bWJlciAob3IgaW5jb3JyZWN0KSBwYXJhbWV0ZXJzIHN1cHBsaWVkIHRvIG1vZHVsZSc7CiRsYW5nWydlcnJvcl9ub2ZldXNlcnNtb2R1bGUnXSA9ICdDb3VsZCBub3QgZ2V0IGluc3RhbmNlIG9mIEZyb250RW5kVXNlcnMgbW9kdWxlJzsKJGxhbmdbJ2Vycm9yX25vc3VjaGdyb3VwJ10gPSAnR3JvdXAgbmFtZSBzcGVjaWZpZWQgZG9lcyBub3QgZXhpc3QnOwokbGFuZ1snZXJyb3JfY2FwdGNoYW1pc21hdGNoJ10gPSAnVGhlIHRleHQgZnJvbSB0aGUgaW1hZ2Ugd2FzIG5vdCBlbnRlcmVkIGNvcnJlY3RseSc7CiRsYW5nWydzZW5kX2VtYWlsc190byddID0gJ1JlZ2lzdHJhdGlvbiBlbWFpbHMgc2hvdWxkIGJlIHNlbnQgdG8nOwokbGFuZ1sncmVxdWlyZV9lbWFpbF9jb25maXJtYXRpb24nXSA9ICdSZXF1aXJlIHRoZSB1c2VyIHRvIGNvbmZpcm0gcmVnaXN0cmF0aW9uIHZpYSBlbWFpbCc7CiRsYW5nWydub3RpZnlfb25fcmVnaXN0cmF0aW9uJ10gPSAnU2VuZCBhbiBlbWFpbCBub3RpZmljYXRpb24gd2hlbiBzb21lb25lIHJlZ2lzdGVycyc7CiRsYW5nWydjYW5jZWwnXSA9ICdBbnVsdWonOwokbGFuZ1snc3VibWl0J10gPSAnV3nFm2xpaic7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdBdXRvLXJlamVzdHJhY2phJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsJ10gPSAnSW5zdGFsbGF0aW9uIHN1Y2Nlc3NmdWxsLCBwbGVhc2UgcmVtZW1iZXIgdG8gc2V0IHRoZSAmcXVvdDtNb2RpZnkgU2VsZlJlZ2lzdHJhdGlvbiBTZXR0aW5ncyZxdW90OyBwZXJtaXNzaW9uLic7CiRsYW5nWydwb3N0dW5pbnN0YWxsJ10gPSAnU2VsZiBSZWdpc3RyYXRpb24gbW9kdWxlIGlzIHVuaW5zdGFsbGVkLiAgU2VlIHlvdSBsYXRlci4nOwokbGFuZ1sndW5pbnN0YWxsZWQnXSA9ICdNb2R1bGUgVW5pbnN0YWxsZWQuJzsKJGxhbmdbJ2luc3RhbGxlZCddID0gJ01vZHVsZSB2ZXJzaW9uICVzIGluc3RhbGxlZC4nOwokbGFuZ1sncHJlZnN1cGRhdGVkJ10gPSAnTW9kdWxlIHByZWZlcmVuY2VzIHVwZGF0ZWQuJzsKJGxhbmdbJ2FjY2Vzc2RlbmllZCddID0gJ0FjY2VzcyBEZW5pZWQuIFBsZWFzZSBjaGVjayB5b3VyIHBlcm1pc3Npb25zLic7CiRsYW5nWydlcnJvciddID0gJ0Vycm9yISc7CiRsYW5nWyd1cGdyYWRlZCddID0gJ01vZHVsZSB1cGdyYWRlZCB0byB2ZXJzaW9uICVzLic7CiRsYW5nWyd0aXRsZV9tb2RfcHJlZnMnXSA9ICdNb2R1bGUgUHJlZmVyZW5jZXMnOwokbGFuZ1sndGl0bGVfbW9kX2FkbWluJ10gPSAnTW9kdWxlIEFkbWluIFBhbmVsJzsKJGxhbmdbJ3RpdGxlX2FkbWluX3BhbmVsJ10gPSAnQXV0by1yZWplc3RyYWNqYSc7CiRsYW5nWydtb2RkZXNjcmlwdGlvbiddID0gJ01vZHXFgiB1bW/FvGxpd2lhasSFY3kgdcW8eXRrb3duaWtvbSBzdHJvbnkgYXV0by1yZWplc3RyYWNqxJknOwokbGFuZ1snd2VsY29tZV90ZXh0J10gPSAnPHA+V2l0YW15IHcgbW9kdWxlIGF1dG8tcmVqZXN0cmFjamkuPC9wPic7CiRsYW5nWydjaGFuZ2Vsb2cnXSA9ICc8dWw+DQo8bGk+VmVyc2lvbiAwLjAuMS4gT2N0IDIwMDUuIEluaXRpYWwgTlJQVCAoTm90IFJlYWR5IGZvciBQcmltZSBUaW1lKSByZWxlYXNlLjwvbGk+DQo8bGk+VmVyc2lvbiAwLjEuMC4gT2N0IDIwMDUuIEluaXRpYWwgcmVsZWFzZS48L2xpPg0KPGxpPlZlcnNpb24gMC4xLjEuIE9jdCAyMDA1LiBTZXQgdGhlIEhUTUwgbWFpbCBmbGFnLjwvbGk+DQo8bGk+VmVyc2lvbiAwLjEuMi4gT2N0IDIwMDUuIE1vdmVkIFJhbmRvbSBzdHVmZiBpbnRvIGZldXNlcnMsIGFuZCBhZGRlZCB0aGUgYWJpbGl0eSB0byBkZWxldGUgb2xkIGVudHJpZXMgZnJvbSB0aGUgcmVnaXN0cmF0aW9uIHRlbXBvcmFyeSB0YWJsZXM8L2xpPg0KPGxpPjxwPlZlcnNpb24gMC4xLjMuIC0gRGVjIDIwMDU8L3A+DQo8cD5GaXhlZCB0aGUgdG9nZ2xlcyBpbiB0aGUgYWRtaW4gcHJlZmVyZW5jZXMuICBBbHNvLCBjaGFuZ2VkIHRoZSBwZXJtaXNzaW9ucyBtb2RlbCB0byBub3QgcmVxdWlyZSB0aGUgdW5pcXVlIHBlcm1pc3Npb24gYWRkZWQgcHJldmlvdXNseSBmb3IgdGhlIHNlbGZyZWcgbW9kdWxlLjwvcD4NCjxwPlRoaXMgcmVsZWFzZSB3YXMgcmVtb3ZlZCBkdWUgdG8gcG9zc2libGUgZXJyb3JzPC9wPg0KPC9saT4NCjxsaT48cD5WZXJzaW9uIDAuMS40LiAtIEphbiAyMDA2PC9wPg0KPHA+Rml4ZWQgbWlub3IgZXJyb3JzIHdpdGggQ2hlY2tQZXJtaXNzaW9uLCByZXBsYWNlZCBhbGwgYXNzaWduX2J5X3JlZnMmIzAzOTtzIHdpdGggYXNzaWducyBmb3IgaG9wZWZ1bCBwaHA1IGNvbXBhdGliaWxpdHkuPC9wPg0KPGxpPjxwPlZlcnNpb24gMC4xLjUuIC0gSmFuIDIwMDY8L3A+DQo8cD5BZGRlZCB0aGUgYWJpbGl0eSB0byBzZXQgdGhlIHN1YmplY3Qgb2YgdGhlIGNvbmZpcm1hdGlvbiBlbWFpbCwgYW5kIGFkZGVkIHRoZSBhYmlsaXR5IHRvIHNwZWNpZnkgYSB0ZXh0IGJvZHkuICBTdWJqZWN0LCBhbmQgdGV4dCBib2R5IGFyZSByZXF1aXJlZC48L3A+DQo8L2xpPg0KPGxpPjxwPlZlcnNpb24gMS4wLjAuIC0gRmViIDIwMDY8L3A+DQo8cD5GaXhlZCBhIHByb2JsZW0gd2l0aCB0aGUgdmVyaWZ5IG1vZGUuPC9wPg0KPHA+QWRkZWQgdGhlIGFiaWxpdHkgdG8gZWRpdCBhbmQgZGVsZXRlIHVzZXJzLiB3aXRoIHNlbGVjdGlvbiBvbiB0aGUgY2hlY2tib3hlcywgYW5kICZxdW90O2NoZWNrYWxsJnF1b3Q7PC9wPg0KPHA+Tm93IHJlcXVpcmUgRkVVc2VycyAwLjEuOCBhbmQgQ01TTWFpbGVyIDEuNzMuOTwvcD4NCjxwPkFkZGVkIGFub3RoZXIgdGFiIGZvciB0aGUgJnF1b3Q7eW91ciBzZXR0aW5ncyBoYXZlIGJlZW4gYWRqdXN0ZWQmcXVvdDsgZW1haWwgdGVtcGxhdGVzPC9wPg0KPHA+QWRkZWQgQ1NWIEV4cG9ydGluZzwvcD4NCjxwPkFkZGVkIGEgJnF1b3Q7RGVsZXRlIGFsbCB1c2VycyBvbGRlciB0aGFuIGEgZGF5JnF1b3Q7IGJ1dHRvbjwvcD4NCjxwPk5vdyB3b3JrcyB3aXRoIHRoZSBtYXhpbXVtIGxlbmd0aCBmaWVsZCBvZiBGRVVzZXJzPC9wPg0KPHA+QWRkZWQgc3VwcG9ydCBmb3IgZHJvcGRvd25zIGFuZCB0ZXh0IGFyZWFzPC9wPg0KPHA+RGlzYWxsb3cgcHVuY3R1YXRpb24gY2hhcmFjdGVycyBpbiB1c2VybmFtZTwvcD4NCjwvbGk+DQo8bGk+PHA+VmVyc2lvbiAxLjAuMS4gLSBGZWIgMjAwNjwvcD4NCjxwPkFkZGVkIHRoZSBhYmlsaXR5IGZvciB1c2VycyB0byByZXF1ZXN0IGFub3RoZXIgcmVnaXN0cmF0aW9uIGVtYWlsICh1c2VzIHRoZSBzYW1lIGNvZGUpLCBpbmNhc2UgdGhleSBsb3N0IHRoZWlyIGZpcnN0IG9uZS48L3A+DQo8L2xpPg0KPGxpPjxwPlZlcnNpb24gMS4wLjIuIC0gRmViIDIwMDY8L3A+DQo8cD5UaGUgJnF1b3Q7UmVxdWlyZSBlbWFpbCBjb25maXJtYXRpb24mcXVvdDsgY2hlY2tib3ggbm93IHdvcmtzLiAgVXNlcnMgYXJlIGFkZGVkIHN0cmFpZ2h0IHRvIHRoZSBmcm9udGVuZCB1c2VycyBkYXRhYmFzZTwvcD4NCjxwPkZpeGVkIGEgYnVnIHdpdGggdGhlIGNvbmZpcm1hdGlvbiBlbWFpbHMgaGF2aW5nIGxpbmtzIHRvIHRoZSBhZG1pbiBzZWN0aW9uIChuZXcgYnVnIG9ubHkpLjwvcD4NCjwvbGk+DQo8bGk+PHA+VmVyc2lvbiAxLjAuMy4gLSBGZWIgMjAwNjwvcD4NCjxwPkFkZGVkIHRoZSAob3B0aW9uYWwpIGFiaWxpdHkgdG8gcmVxdWlyZSB0aGUgdXNlciBlbnRlciB0aGUgZW1haWwgYWRkcmVzcyB0d2ljZTwvcD4NCjxwPkZpeGVkIGEgYnVnIHdpdGggdGhlIHVzZXJlZGl0ZWQgbWVzc2FnZSBub3QgYmVpbmcgdGhyb3duIHRocm91Z2ggc21hcnR5PC9wPg0KPHA+Rml4ZWQgdGhlIGRlZmF1bHQgcmVnaXN0cmF0aW9uIHRlbXBsYXRlIGEgYml0IHRvIGFpZGUgaW4gdmFsaWRhdGlvbiBmb3Igbm9uIHJlcXVpcmVkIGZpZWxkcyAoZml4ZWQgYSB3YXJuaW5nKTwvcD4NCjxwPkZpeCBwcm9ibGVtcyB3aXRoIGlubGluZSBhbmQgbm9uLWlubGluZSBmb3JtcyBhbmQgbGlua3M8L3A+DQo8cD5IYW5kbGUgYW5vdGhlciBjYXNlIHdoZXJlIHRoZSBhZG1pbiBtYXkgbm90IGhhdmUgY3JlYXRlZCB0aGUgcHJvcGVyIHR5cGUgb2YgZW1haWwgcHJvcGVydHk8L3A+DQo8cD5DaGFuZ2VkIHRvIHJlcXVpcmUgQ01TIDAuMTItYmV0YTIgYXQgYSBtaW5pbXVtIChmb3Igc2FmZXR5IHB1cnBvc2VzKTwvcD4NCjwvbGk+DQo8bGk+PHA+VmVyc2lvbiAxLjAuNC4gLSBNYXIgMjAwNjwvcD4NCjxwPk1vcmUgY29udHJvbCBvdmVyIHVzZXJuYW1lIGFuZCBwYXNzd29yZCBmaWVsZCBzaXplcyAoY29udHJvbGxlZCBieSBmZXVzZXJzKTwvcD4NCjxwPkNvbmZpcm1hdGlvbiBvbiBlZGl0aW5nIHByZWZlcmVuY2VzPC9wPg0KPHA+UmVxdWlyZSAwLjEyIHByb3BlciBvZiBjbXMgYXMgYSBtaW5pbXVtPC9wPg0KPC9saT4NCjxsaT48cD5WZXJzaW9uIDEuMS4wLiAtIERlYyAyMDA2PC9wPg0KICAgIDxwPkFkZGVkIGV2ZW50cyBhbmQgMS4wIGNvbXBhdGliaWxpdHk8L3A+DQogICAgPHA+Q2FwdGNoYSBzdXBwb3J0ICh0aGFua3MgRGl0dG1hbik8L3A+DQo8L2xpPg0KPGxpPjxwPlZlcnNpb24gMS4xLjEuPC9wPg0KICAgIDxwPk5vdyByZXF1aXJlIEZFVXNlcnMgMS4xLjMgKG1pbmltdW0pPC9wPg0KICAgIDxwPlN1cHBvcnQgZm9yIG11bHRpc2VsZWN0IGxpc3RzIGluIGZldXNlcnM8L3A+DQogICAgPHA+T3V0cHV0IHNvbWUgbW9yZSBmaWVsZHMgdG8gc21hcnR5IHRvIGFsbG93IGZvciBpbmNyZWFzZWQgYWNjZXNzaWJpbGl0eTwvcD4NCiAgICA8cD5TcGxpdCBjb2RlIG91dCBpbnRvIG11bHRpcGxlIGZpbGVzIHRvIHJlZHVjZSBvdmVyYWxsIG1lbW9yeSBmb290cHJpbnQ8L3A+DQo8L2xpPg0KPC91bD4nOwokbGFuZ1snaGVscCddID0gJzxoMz5XaGF0IERvZXMgVGhpcyBEbz88L2gzPg0KPHA+VGhpcyBtb2R1bGUgaXMgZGVzaWduZWQgdG8gYWxsb3cgZnJvbnQgZW5kIHVzZXJzIHRvIHJlZ2lzdGVyIHRoZW1zZWx2ZXMgYW5kIGZpbGwgaW4gdGhlIHJlcXVpcmVkIGluZm9ybWF0aW9uLiAgSXQgdGhlbiBzZW5kcyBhIGNvbmZpcm1hdGlvbiBlbWFpbCwgd2l0aCBhIGxpbmsgdG8gYSBzZWNvbmQgcGFnZSB0aGF0IG11c3QgYmUgY29tcGxldGVkIGJlZm9yZSB0aGUgcmVnaXN0cmF0aW9uIGlzIGNvbXBsZXRlLiAgT25jZSByZWdpc3RyYXRpb24gaXMgY29tcGxldGUsIGEgdXNlciBhY2NvdW50IGlzIGNyZWF0ZWQgaW4gdGhlIGZyb250IGVuZCB1c2VycyBtb2R1bGUuPC9wPg0KPHA+SW4gb3JkZXIgdG8gdXNlIHRoaXMgbW9kdWxlLCB5b3UgbXVzdCBjcmVhdGUgYSBwcm9wZXJ0eSBvZiB0eXBlICZxdW90O0VtYWlsIEFkZHJlc3MmcXVvdDsgaW4gdGhlIEZyb250ZW5kVXNlcnMgbW9kdWxlLCBhbmQgYXNzb2NpYXRlIHRoYXQgcHJvcGVydHkgd2l0aCB0aGUgZ3JvdXAgdG8gYmUgdXNlZCBmb3Igc2VsZiByZWdpc3RyYXRpb24uPC9wPg0KPGgzPkhvdyBEbyBJIFVzZSBJdDwvaDM+DQo8cD5Zb3UgcGxhY2UgdGhlIGZvbGxvd25nIHRhZyBpbnRvIHlvdXIgcGFnZSB7Y21zX21vZHVsZSBtb2R1bGU9U2VsZlJlZ2lzdHJhdGlvbiBncm91cD11c2VyZ3JvdXB9PC9wPg0KPHA+WW91IG11c3QgaGF2ZSBwcmV2aW91c2x5IGNyZWF0ZWQgcHJvcGVydGllcyBhbmQgdXNlciBncm91cHMgaW4gdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlIGluIG9yZGVyIGZvciB0aGlzIHRvIHdvcmsgcHJvcGVybHkuPC9wPg0KPGgzPlBhcmFtZXRlcnM8L2gzPg0KPHA+PHN0cm9uZz5tb2RlPC9zdHJvbmc+Jm5ic3A7PGVtPm9wdGlvbmFsPC9lbT4gLSBwb3NzaWJsZSB2YWx1ZXMgYXJlICZxdW90O3NpZ251cCZxdW90OyBhbmQgJnF1b3Q7dmVyaWZ5JnF1b3Q7LiAgSWYgdGhpcyBwYXJhbWV0ZXIgaXMgbm90IHNwZWNpZmllZCwgJnF1b3Q7c2lnbnVwJnF1b3Q7IGlzIGFzc3VtYmVkLjwvcD4NCjxwPjxzdHJvbmc+Z3JvdXA8L3N0cm9uZz4mbmJzcDs8ZW0+b3B0aW9uYWw8L2VtPiAtIFRoaXMgcGFyYW1ldGVyIGlzIHJlcXVpcmVkIGlmIG1vZGUgaXMgJnF1b3Q7c2lnbnVwJnF1b3Q7LCBvciBpZiBtb2RlIGlzIGxlZnQgZW1wdHkuPC9wPg0KPHA+PHN0cm9uZz5jYXB0Y2hhPC9zdHJvbmc+Jm5ic3A7PGVtPm9wdGlvbmFsPC9lbT4gLSBUaGlzIHdpbGwgZW5hYmxlIGNhcHRjaGEgb24gdGhlIHNpZ251cCBmb3JtLiBUaGUgQ2FwdGNoYSBtb2R1bGUgbXVzdCBiZSBpbnN0YWxsZWQgZm9yIHRoaXMgcGFyYW1ldGVyIHRvIHdvcmsuPC9wPg0KPGgzPlN1cHBvcnQ8L2gzPg0KPHA+VGhpcyBtb2R1bGUgZG9lcyBub3QgaW5jbHVkZSBjb21tZXJjaWFsIHN1cHBvcnQuIEhvd2V2ZXIsIHRoZXJlIGFyZSBhIG51bWJlciBvZiByZXNvdXJjZXMgYXZhaWxhYmxlIHRvIGhlbHAgeW91IHdpdGggaXQ6PC9wPg0KPHVsPg0KPGxpPkZvciB0aGUgbGF0ZXN0IHZlcnNpb24gb2YgdGhpcyBtb2R1bGUsIEZBUXMsIG9yIHRvIGZpbGUgYSBCdWcgUmVwb3J0IG9yIGJ1eSBjb21tZXJjaWFsIHN1cHBvcnQsIHBsZWFzZSB2aXNpdCBjYWxndXkmIzAzOTtzDQptb2R1bGUgaG9tZXBhZ2UgYXQgPGEgaHJlZj0mYW1wO3F1b3Q7aHR0cDovL3RlY2hjb20uZHluZG5zLm9yZyZhbXA7cXVvdDs+dGVjaGNvbS5keW5kbnMub3JnPC9hPi48L2xpPg0KPGxpPkFkZGl0aW9uYWwgZGlzY3Vzc2lvbiBvZiB0aGlzIG1vZHVsZSBtYXkgYWxzbyBiZSBmb3VuZCBpbiB0aGUgPGEgaHJlZj0mYW1wO3F1b3Q7aHR0cDovL2ZvcnVtLmNtc21hZGVzaW1wbGUub3JnJmFtcDtxdW90Oz5DTVMgTWFkZSBTaW1wbGUgRm9ydW1zPC9hPi48L2xpPg0KPGxpPlRoZSBhdXRob3IsIGNhbGd1eTEwMDAsIGNhbiBvZnRlbiBiZSBmb3VuZCBpbiB0aGUgPGEgaHJlZj0mYW1wO3F1b3Q7aXJjOi8vaXJjLmZyZWVub2RlLm5ldC8jY21zJmFtcDtxdW90Oz5DTVMgSVJDIENoYW5uZWw8L2E+LjwvbGk+DQo8bGk+TGFzdGx5LCB5b3UgbWF5IGhhdmUgc29tZSBzdWNjZXNzIGVtYWlsaW5nIHRoZSBhdXRob3IgZGlyZWN0bHkuPC9saT4gIA0KPC91bD4NCjxwPkFzIHBlciB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIHByb3ZpZGVkIGFzLWlzLiBQbGVhc2UgcmVhZCB0aGUgdGV4dA0Kb2YgdGhlIGxpY2Vuc2UgZm9yIHRoZSBmdWxsIGRpc2NsYWltZXIuPC9wPg0KDQo8aDM+Q29weXJpZ2h0IGFuZCBMaWNlbnNlPC9oMz4NCjxwPkNvcHlyaWdodCAmY29weTsgMjAwNSwgUm9iZXJ0IENhbXBiZWwgPGEgaHJlZj0mYW1wO3F1b3Q7bWFpbHRvOmNhbGd1eTEwMDBAaG90bWFpbC5jb20mYW1wO3F1b3Q7PjxjYWxndXkxMDAwQGhvdG1haWwuY29tPjwvYT4uIEFsbCBSaWdodHMgQXJlIFJlc2VydmVkLjwvcD4NCjxwPlRoaXMgbW9kdWxlIGhhcyBiZWVuIHJlbGVhc2VkIHVuZGVyIHRoZSA8YSBocmVmPSZhbXA7cXVvdDtodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwmYW1wO3F1b3Q7PkdOVSBQdWJsaWMgTGljZW5zZTwvYT4uIFlvdSBtdXN0IGFncmVlIHRvIHRoaXMgbGljZW5zZSBiZWZvcmUgdXNpbmcgdGhlIG1vZHVsZS48L3A+DQonOwokbGFuZ1sndXRtYSddID0gJzE1Njg2MTM1My41MzEyMTYyMDAuMTE0ODA3NzUzOS4xMTY4MjU2MzAyLjExNjgzNjE0ODQuOTInOwokbGFuZ1sndXRteiddID0gJzE1Njg2MTM1My4xMTY4MzYxNDg0LjkyLjcudXRtY2NuPShyZWZlcnJhbCl8dXRtY3NyPXRoZW1lcy5jbXNtYWRlc2ltcGxlLm9yZ3x1dG1jY3Q9L0hvbWUuaHRtbHx1dG1jbWQ9cmVmZXJyYWwnOwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lang/ext/ro_RO.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2Vycm9yX2NvZGVzZG9udG1hdGNoJ10gPSAnQ2hlaWEgZGUgdmFsaWRhcmUgZnVybml6YXRhIGVzdGUgaW52YWxpZGEnOwokbGFuZ1snZXZlbnRfZGVzY3JpcHRpb25fb25OZXdVc2VyJ10gPSAnRXZlbmltZW50IGNhcmUgaW5kaWNhIGNvbXBsZXRhcmVhIGZvcm11bGFydWx1aSBkZSBpbnJlZ2lzdHJhcmUgZGUgY2F0cmUgbm91bCB1dGlsaXphdG9yJzsKJGxhbmdbJ2V2ZW50X2Rlc2NyaXB0aW9uX29uVXNlclJlZ2lzdGVyZWQnXSA9ICdFdmVuaW1lbnQgY2FyZSBpbmRpY2EgZmFwdHVsIGNhIHV0aWxpemF0b3J1bCBzaS1hIHZlcmlmaWNhdCBpbmZvcm1hdGlpbGUgc2kgYWN1bSBlc3RlIGNvbXBsZXQgaW5yZWdpc3RyYXQnOwokbGFuZ1snZXZlbnRfaGVscF9vbk5ld1VzZXInXSA9ICc8cD5FdmVuaW1lbnQgY2FyZSBpbmRpY2EgY29tcGxldGFyZWEgZm9ybXVsYXJ1bHVpIGRlIGlucmVnaXN0cmFyZSBkZSBjYXRyZSBub3VsIHV0aWxpemF0b3I8L3A+DQo8aDQ+UGFyYW1ldHJpPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIE51bWVsZSB1dGlsaXphdG9yIGFsIG5vdWx1aSB1dGlsaXphdG9yPC9saT4NCjxsaT48ZW0+ZW1haWw8L2VtPiAtIEFkcmVzYSBkZSBlLW1haWwgYSBub3VsdWkgdXRpbGl6YXRvcjwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfb25Vc2VyUmVnaXN0ZXJlZCddID0gJzxwPkV2ZW5pbWVudCBjYXJlIGluZGljYSBmYXB0dWwgY2EgdXRpbGl6YXRvcnVsIGEgZm9zdCB2ZXJpZmljYXQgc2kgYWN1bSBlc3RlIGlucmVnaXN0cmF0IGluIGdydXB1bCB1dGlsaXphdG9yaWxvciBmcm9udGVuZDwvcD4NCjxoND5QYXJhbWV0cmk8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gTnVtZWxlIHV0aWxpemF0b3IgaW5yZWdpc3RyYXQ8L2xpPg0KPC91bD4NCic7CiRsYW5nWydjb25maXJtX3N1Ym1pdHByZWZzJ10gPSAnU2NoaW1iYXRpIHByZWZlcmludGVsZSBhZG1pbj8nOwokbGFuZ1snaW5mb19hZG1pbl9wYXNzd29yZCddID0gJ0xhc2F0aSBhY2VzdCBjYW1wIG5lY29tcGxldGF0IHBlbnRydSBwYXN0cmFyZWEgcGFyb2xlaSB1dGlsaXphdG9yJzsKJGxhbmdbJ2luZm9fYWRtaW5fcmVwZWF0cGFzc3dvcmQnXSA9ICdMYXNhdGkgYWNlc3QgY2FtcCBuZWNvbXBsZXRhdCBwZW50cnUgcGFzdHJhcmVhIHBhcm9sZWkgdXRpbGl6YXRvcic7CiRsYW5nWydlcnJvcl9lbWFpbGRvZXNub3RtYXRjaCddID0gJ0FkcmVzZWxlIGRlIGUtbWFpbCBudSBjb2luY2lkJzsKJGxhbmdbJ2ZvcmNlX2VtYWlsX3R3aWNlJ10gPSAnUHJldGluZGUgY2EgdXRpbGl6YXRvcmlpIHNhIGludHJvZHVjYSBhZHJlc2EgZGUgZS1tYWlsIGRlIGRvdWEgb3JpJzsKJGxhbmdbJ2FnYWluJ10gPSAnaW5jYSBvIGRhdGEnOwokbGFuZ1snZGVsZXRlc2VsdXNlcnMnXSA9ICdTdGVyZ2UgdXRpbGl6YXRvcmlpIHNlbGVjdGF0aSc7CiRsYW5nWydlcnJvcl9ub3Byb3BkZWZucyddID0gJ051IGV4aXN0YSBwcm9wcmlldGF0aSBkZWZpbml0ZSwgc2F1IHByb2JsZW1hIGxhIG9idGluZXJlYSBsb3IgZGluIGJhemEgZGUgZGF0ZSc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcyddID0gJ051IGV4aXN0YSBncnVwdXJpLCBzYXUgcHJvYmxlbWEgbGEgb2J0aW5lcmVhIGxpc3RlaSBncnVwdXJpbG9yJzsKJGxhbmdbJ2Vycm9yX2RiZXJyb3InXSA9ICdFcm9hcmUgbGEgYmF6YSBkZSBkYXRlJzsKJGxhbmdbJ3RpdGxlX3Bvc3Rfc2VuZGFub3RoZXJlbWFpbF90ZW1wbGF0ZSddID0gJ1NhYmxvbiBwb3N0YXJlIGUtbWFpbCBwaWVyZHV0JzsKJGxhbmdbJ3RpdGxlX3NlbmRhbm90aGVyZW1haWxfdGVtcGxhdGUnXSA9ICdTYWJsb24gZS1tYWlsIHBpZXJkdXQnOwokbGFuZ1snY2xpY2toZXJlJ10gPSAnQXBhc2EgYWljaSc7CiRsYW5nWydtc2dfc2VuZGFub3RoZXJlbWFpbCddID0gJ0FtIGNvbXBsZXRhdCBkZWphIGZvcm11bGFydWwgZGUgaW5yZWdpc3RyYXJlLCBkYXIgbnUgYW0gcHJpbWl0IHVuIGUtbWFpbCwgdmEgcm9nIHNhLWwgcmV0cmltaXRldGknOwokbGFuZ1snc2VuZGFub3RoZXJlbWFpbF90ZW1wbGF0ZSddID0gJ1NhYmxvbiBlLW1haWwgcGllcmR1dCc7CiRsYW5nWydpbmZvX3VzZXJ2ZXJpZmllZCddID0gJ1VuIG5vdSB1dGlsaXphdG9yIGEgZm9zdCBhZGF1Z2F0IGxhIHV0aWxpemF0b3JpaSBGcm9udEVuZCc7CiRsYW5nWydlZGl0J10gPSAnRWRpdGVhemEnOwokbGFuZ1sndW5rbm93biddID0gJ05lY3Vub3NjdXQnOwokbGFuZ1snc2VsZWN0J10gPSAnU2VsZWN0ZWF6YSc7CiRsYW5nWydjaGVja19hbGwnXSA9ICdTZWxlY3RlYXphIHRvdCc7CiRsYW5nWyd1bmNoZWNrX2FsbCddID0gJ0Rlc2VsZWN0ZWF6YSB0b3QnOwokbGFuZ1snc2VuZF9hZGp1c3RtZW50ZW1haWwnXSA9ICdUcmltaXRlIHVuIGUtbWFpbCB1dGlsaXphdG9ydWx1aSc7CiRsYW5nWyd0eHRfYWRqdXN0bWVudGVtYWlsJ10gPSAnKGluZm9ybWVhemEgdXRpbGl6YXRvcnVsIGNhLCBjb250dWwgbHVpIGEgZm9zdCBhanVzdGF0JzsKJGxhbmdbJ3R4dF9jaGFuZ2VwYXNzd29yZCddID0gJ0NvbXBsZXRlYXphIGFjZXN0ZSBjYW1wdXJpIHBlbnRydSBhIHNjaGltYmEgcGFyb2xhIHV0aWxpemF0b3J1bHVpJzsKJGxhbmdbJ2VkaXR1c2VyJ10gPSAnRWRpdGFyZSB1dGlsaXphdG9yJzsKJGxhbmdbJ2FyZXlvdXN1cmVfZGVsZXRldXNlciddID0gJ1N1bnRldGkgc2lndXIoYSkgY2EgZG9yaXRpIHNhIHN0ZXJnZXRpIGFjZXN0IHV0aWxpemF0b3IgaW5yZWdpc3RyYXQgcGFydGlhbD8nOwokbGFuZ1snaGRyX3VzZXJpZCddID0gJ0lEIHV0aWxpemF0b3InOwokbGFuZ1snaGRyX3VzZXJuYW1lJ10gPSAnTnVtZSB1dGlsaXphdG9yJzsKJGxhbmdbJ2hkcl9ncnBuYW1lJ10gPSAnR3J1cCc7CiRsYW5nWydoZHJfY3JlYXRlZCddID0gJ0NyZWF0JzsKJGxhbmdbJ2hkcl9lbWFpbCddID0gJ0UtbWFpbCc7CiRsYW5nWyd1c2Vyc2ZvdW5kJ10gPSAnVXRpbGl6YXRvcmkgZ2FzaXRpIChsaW1pdGF0IGxhIG1heGltdW0gMjUwKSc7CiRsYW5nWyd1c2VycyddID0gJ1V0aWxpemF0b3JpJzsKJGxhbmdbJ2xpc3QxZGF5J10gPSAnTGlzdGVhemEgdG9hdGUgaW50cmFyaWxlIG1haSB2ZWNoaSBkZSBvIHppJzsKJGxhbmdbJ3N1YmplY3QnXSA9ICdTdWJpZWN0IHBlbnRydSBlLW1haWwtdWwgZGUgZXhwZWRpYXQnOwokbGFuZ1snaHRtbGJvZHknXSA9ICdDb250aW51dCBtZXNhaiBIVE1MICc7CiRsYW5nWyd0ZXh0Ym9keSddID0gJ0NvbnRpbnV0IG1lc2FqIHRleHQnOwokbGFuZ1sncHJvbXB0X251bXJlc2V0cmVjb3JkJ10gPSAnVW4gbnVtYXIgZGUgdXRpbGl6YXRvcmkgc2UgYWZsYSBpbiBwbGluIHByb2NlcyBkZSBpbnJlZ2lzdHJhcmUuIE51bWFydWwgYWNlc3RvcmEgZXN0ZTonOwokbGFuZ1sncmVtb3ZlMXdlZWsnXSA9ICdFbGltaW5hIHRvYXRlIGludHJhcmlsZSBtYWkgdmVjaGkgZGUgbyBzYXB0YW1hbmEnOwokbGFuZ1sncmVtb3ZlMW1vbnRoJ10gPSAnRWxpbWluYSB0b2F0ZSBpbnRyYXJpbGUgbWFpIHZlY2hpIGRlIG8gbHVuYSc7CiRsYW5nWydyZW1vdmUxZGF5J10gPSAnRWxpbWluYSB0b2F0ZSBpbnRyYXJpbGUgbWFpIHZlY2hpIGRlIG8gemknOwokbGFuZ1sncmVtb3ZlYWxsJ10gPSAnRWxpbWluYSB0b2F0ZSBpbnRyYXJpbGUnOwokbGFuZ1snYXJleW91c3VyZSddID0gJ1N1bnRldGkgc2lndXIoYSk/JzsKJGxhbmdbJ3JlZ2lzdHJhdGlvbl9pbmZvX2VkaXRlZCddID0gJ0luZm9ybWF0aWlsZSBkdW1uZWF2b2FzdHJhIGRlIGlucmVnaXN0cmFyZSBhdSBmb3N0IG1vZGlmaWNhdGUnOwokbGFuZ1sncmVnaXN0cmF0aW9uX2NvbmZpcm1hdGlvbiddID0gJ0NvbmZpcm1hcmVhIGlucmVnaXN0cmFyaWknOwokbGFuZ1sndXNlcl9yZWdpc3RyYXRpb24nXSA9ICdJbnJlZ2lzdHJlYXphJzsKJGxhbmdbJ2ZpbmFsbWVzc2FnZV90ZW1wbGF0ZSddID0gJ1NhYmxvbiBtZXNhaiBmaW5hbCc7CiRsYW5nWyd0aXRsZV92ZXJpZnlyZWdpc3RyYXRpb24nXSA9ICdWZXJpZmljYSBpbnJlZ2lzdHJhcmVhJzsKJGxhbmdbJ2NvZGUnXSA9ICdDaGVpYSBkZSB2YWxpZGFyZSc7CiRsYW5nWydkZWZhdWx0J10gPSAnU2V0YXQgaW1wbGljaXQnOwokbGFuZ1snZXJyb3Jfbm9wcm9wZXJ0aWVzJ10gPSAnTnUgYXUgZm9zdCBnYXNpdGUgcHJvcHJpZXRhdGkgcGVudHJ1IGFjZXN0IHV0aWxpemF0b3InOwokbGFuZ1snZXJyb3Jfbm9wcm9wcmVsYXRpb25zJ10gPSAnUmVsYXRpaSBwcm9wcmlldGF0aSBpbmV4aXN0ZW50ZSc7CiRsYW5nWydlcnJvcl9lbWFpbGludmFsaWQnXSA9ICdBZHJlc2EgZGUgZS1tYWlsIGludmFsaWRhJzsKJGxhbmdbJ2Vycm9yX25vZW1haWxhZGRyZXNzJ10gPSAnQ2FtcCBhZHJlc2EgZGUgZS1tYWlsIHZhbGlkYSBpbmV4aXN0ZW50JzsKJGxhbmdbJ2Vycm9yX3JlcXVpcmVkZmllbGQnXSA9ICdDYW1wdWwgJXMgdHJlYnVpZSBzYSBmaWUgY29tcGxldGF0JzsKJGxhbmdbJ3JlZ2lzdHJhdGlvbjFfdGVtcGxhdGUnXSA9ICdTYWJsb24gaW5yZWdpc3RyYXJlIDEnOwokbGFuZ1sncmVnaXN0cmF0aW9uMl90ZW1wbGF0ZSddID0gJ1NhYmxvbiBpbnJlZ2lzdHJhcmUgMic7CiRsYW5nWydlbWFpbGNvbmZpcm1fdGVtcGxhdGUnXSA9ICdTYWJsb24gZS1tYWlsIGNvbmZpcm1hcmUnOwokbGFuZ1snZW1haWx1c2VyZWRpdGVkX3RlbXBsYXRlJ10gPSAnU2FibG9uIGluZm9ybWF0aWkgdXRpbGl6YXRvciBzY2hpbWJhdGUnOwokbGFuZ1sncHJlZmVyZW5jZXMnXSA9ICdQcmVmZXJpbnRlJzsKJGxhbmdbJ2Vycm9yX3VzZXJub3Rmb3VuZCddID0gJ1V0aWxpemF0b3IgaW5leGlzdGVudCc7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXNlcm5hbWUnXSA9ICdOdW1lIHV0aWxpemF0b3IgaW52YWxpZCAocHJlYSBsdW5nLCBwcmVhIHNjdXJ0LCBzYXUgY29udGluZSBjYXJhY3RlcmUgaW52YWxpZGUpLiAgSW5kaWNpdS0gTnVtZWxlIHV0aWxpemF0b3IgdHJlYnVpZSBzYSBjb250aW5hIGRvYXIgY2FyYWN0ZXJlIGFsZmEtbnVtZXJpY2UoZmFyYSBzcGF0aWkpJzsKJGxhbmdbJ2Vycm9yX3VzZXJuYW1ldGFrZW4nXSA9ICdBY2VzdCBudW1lIHV0aWxpemF0b3IgZXN0ZSBkZWphIGZvbG9zaXQnOwokbGFuZ1snZXJyb3JfcGFzc3dvcmRzZG9udG1hdGNoJ10gPSAnRVJPQVJFOiBQYXJvbGVsZSBudSBjb2luY2lkJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXNzd29yZCddID0gJ1Bhcm9sYSBlc3RlIGludmFsaWRhIChsdW5naW1lYSBwYXJvbGVpIHRyZWJ1aWUgc2EgZmllIGN1cHJpbnNhIGludHJlICAlcyBzaSAlcyBjYXJhY3RlcmUpJzsKJGxhbmdbJ2Vycm9yX2VtcHR5dXNlcm5hbWUnXSA9ICdOdW1lbGUgdXRpbGl6YXRvciBudSBwb2F0ZSBmaSB2aWQnOwokbGFuZ1sncmVwZWF0cGFzc3dvcmQnXSA9ICdQYXJvbGEgKGRpbiBub3UpJzsKJGxhbmdbJ3Bhc3N3b3JkJ10gPSAnUGFyb2xhJzsKJGxhbmdbJ3VzZXJuYW1lJ10gPSAnTnVtZSB1dGlsaXphdG9yJzsKJGxhbmdbJ2NhcHRjaGFfdGl0bGUnXSA9ICdJbnRyb2R1Y2V0aSB0ZXh0dWwgZGluIGltYWdpbmUnOwokbGFuZ1snZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJ10gPSAnTnVtYXIgaW5zdWZpY2llbnQgKHNhdSBpbmNvcmVjdCkgZGUgcGFyYW1ldHJpIGZ1cm5pemF0aSBtb2R1bHVsdWknOwokbGFuZ1snZXJyb3Jfbm9mZXVzZXJzbW9kdWxlJ10gPSAnTnUgc2UgcG9hdGUgb2J0aW5lIG8gaW5zdGFudGEgYSBtb2R1bHVsdWkgVXRpbGl6YXRvcmkgRnJvbnRFbmQnOwokbGFuZ1snZXJyb3Jfbm9zdWNoZ3JvdXAnXSA9ICdOdW1lbGUgZ3J1cHVsdWkgc3BlY2lmaWNhdCBudSBleGlzdGEnOwokbGFuZ1snZXJyb3JfY2FwdGNoYW1pc21hdGNoJ10gPSAnVGV4dHVsIGRpbiBpbWFnaW5lIG51IGEgZm9zdCBpbnRyb2R1cyBjb3JlY3QnOwokbGFuZ1snc2VuZF9lbWFpbHNfdG8nXSA9ICdFLW1haWwtdXJpbGUgZGUgaW5yZWdpc3RyYXJlIHRyZWJ1aWUgdHJpbWlzZSBjYXRyZSc7CiRsYW5nWydyZXF1aXJlX2VtYWlsX2NvbmZpcm1hdGlvbiddID0gJ05lY2VzaXRhIGNvbmZpcm1hcmVhIGlucmVnaXN0cmFyaWkgZGUgY2F0cmUgdXRpbGl6YXRvciB2aWEgZS1tYWlsJzsKJGxhbmdbJ25vdGlmeV9vbl9yZWdpc3RyYXRpb24nXSA9ICdUcmltaXRlIHVuIGUtbWFpbCBkZSBub3RpZmljYXJlIGNhbmQgY2luZXZhIHNlIGlucmVnaXN0cmVhemEnOwokbGFuZ1snY2FuY2VsJ10gPSAnQW51bGVhemEnOwokbGFuZ1snc3VibWl0J10gPSAnVHJpbWl0ZSc7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdNb2R1bCBBdXRvLUlucmVnaXN0cmFyZSc7CiRsYW5nWydwb3N0aW5zdGFsbCddID0gJ0luc3RhbGFyZSByZXVzaXRhLCB2YSByb2cgc2EgcmV0aW5ldGkgc2Egc2V0YXRpIHBlcm1pc2l1bmlsZSAmcXVvdDtNb2RpZnkgU2VsZlJlZ2lzdHJhdGlvbiBTZXR0aW5ncyZxdW90Oy4gIERhY2EgbW9kdWx1bCBDYXB0Y2hhIGVzdGUgaW5zdGFsYXQsIGF0dW5jaSBmdW5jdGlvbmFsaXRhdGVhIGNhcHRjaGEgZXN0ZSBpbXBsaWNpdCBhY3RpdmF0YS4gIFZhIGluY3VyYWphbSBjdSBjYWxkdXJhIHNhIGluc3RhbGF0aSBhY2VzdCBtb2R1bC4gRGFjYSBtb2R1bHVsIENhcHRjaGEgZXN0ZSBpbnN0YWxhdCwgc2kgZG9yaXRpIHNhLWwgZGV6YWN0aXZhdGksIGZvbG9zaXRpIHBhcmFtZXRydWwgbm9jYXB0Y2hhIGluIGV0aWNoZXRhIGR1bW5lYXZvYXN0cmEgc2VsZnJlZ2lzdHJhdGlvbi4nOwokbGFuZ1sncG9zdHVuaW5zdGFsbCddID0gJ01vZHVsdWwgQXV0by1JbnJlZ2lzdHJhcmUgZXN0ZSBkZXppbnN0YWxhdC4gIFBlIGN1cmFuZC4nOwokbGFuZ1sndW5pbnN0YWxsZWQnXSA9ICdNb2R1bCBkZXppbnN0YWxhdC4nOwokbGFuZ1snaW5zdGFsbGVkJ10gPSAnVmVyc2l1bmVhICVzIGluc3RhbGF0YS4nOwokbGFuZ1sncHJlZnN1cGRhdGVkJ10gPSAnUHJlZmVyaW50ZWxlIG1vZHVsdWx1aSBhdSBmb3N0IGFjdHVhbGl6YXRlLic7CiRsYW5nWydhY2Nlc3NkZW5pZWQnXSA9ICdBY2NlcyBpbnRlcnppcy4gU3VudGV0aSBydWdhdChhKSBzYSB2ZXJpZmljYXRpIHBlcm1pc2l1bmlsZS4nOwokbGFuZ1snZXJyb3InXSA9ICdFcm9hcmUhJzsKJGxhbmdbJ3VwZ3JhZGVkJ10gPSAnTW9kdWx1bCBhIGZvc3QgYWN0dWFsaXphdCBsYSB2ZXJzaXVuZWEgJXMuJzsKJGxhbmdbJ3RpdGxlX21vZF9wcmVmcyddID0gJ1ByZWZlcmludGVsZSBtb2R1bHVsdWknOwokbGFuZ1sndGl0bGVfbW9kX2FkbWluJ10gPSAnUGFub3VsIGRlIGNvbWFuZGEgYWwgbW9kdWx1bHVpJzsKJGxhbmdbJ3RpdGxlX2FkbWluX3BhbmVsJ10gPSAnTW9kdWwgQXV0by1JbnJlZ2lzdHJhcmUnOwokbGFuZ1snbW9kZGVzY3JpcHRpb24nXSA9ICdNb2R1bCBjYXJlIHBlcm1pdGUgdXRpbGl6YXRvcmlsb3IgZnJvbnRlbmQgc2Egc2UgYXV0by1pbnJlZ2lzdHJlemUuJzsKJGxhbmdbJ3dlbGNvbWVfdGV4dCddID0gJzxwPkJ1biB2ZW5pdCBsYSBtb2R1bHVsIGRlIGF1dG8taW5yZWdpc3RyYXJlLjwvcD4nOwokbGFuZ1snY2hhbmdlbG9nJ10gPSAnPHVsPg0KPGxpPlZlcnNpb24gMC4wLjEuIE9jdCAyMDA1LiBJbml0aWFsIE5SUFQgKE5vdCBSZWFkeSBmb3IgUHJpbWUgVGltZSkgcmVsZWFzZS48L2xpPg0KPGxpPlZlcnNpb24gMC4xLjAuIE9jdCAyMDA1LiBJbml0aWFsIHJlbGVhc2UuPC9saT4NCjxsaT5WZXJzaW9uIDAuMS4xLiBPY3QgMjAwNS4gU2V0IHRoZSBIVE1MIG1haWwgZmxhZy48L2xpPg0KPGxpPlZlcnNpb24gMC4xLjIuIE9jdCAyMDA1LiBNb3ZlZCBSYW5kb20gc3R1ZmYgaW50byBmZXVzZXJzLCBhbmQgYWRkZWQgdGhlIGFiaWxpdHkgdG8gZGVsZXRlIG9sZCBlbnRyaWVzIGZyb20gdGhlIHJlZ2lzdHJhdGlvbiB0ZW1wb3JhcnkgdGFibGVzPC9saT4NCjxsaT48cD5WZXJzaW9uIDAuMS4zLiAtIERlYyAyMDA1PC9wPg0KPHA+Rml4ZWQgdGhlIHRvZ2dsZXMgaW4gdGhlIGFkbWluIHByZWZlcmVuY2VzLiAgQWxzbywgY2hhbmdlZCB0aGUgcGVybWlzc2lvbnMgbW9kZWwgdG8gbm90IHJlcXVpcmUgdGhlIHVuaXF1ZSBwZXJtaXNzaW9uIGFkZGVkIHByZXZpb3VzbHkgZm9yIHRoZSBzZWxmcmVnIG1vZHVsZS48L3A+DQo8cD5UaGlzIHJlbGVhc2Ugd2FzIHJlbW92ZWQgZHVlIHRvIHBvc3NpYmxlIGVycm9yczwvcD4NCjwvbGk+DQo8bGk+PHA+VmVyc2lvbiAwLjEuNC4gLSBKYW4gMjAwNjwvcD4NCjxwPkZpeGVkIG1pbm9yIGVycm9ycyB3aXRoIENoZWNrUGVybWlzc2lvbiwgcmVwbGFjZWQgYWxsIGFzc2lnbl9ieV9yZWZzJiMwMzk7cyB3aXRoIGFzc2lnbnMgZm9yIGhvcGVmdWwgcGhwNSBjb21wYXRpYmlsaXR5LjwvcD4NCjxsaT48cD5WZXJzaW9uIDAuMS41LiAtIEphbiAyMDA2PC9wPg0KPHA+QWRkZWQgdGhlIGFiaWxpdHkgdG8gc2V0IHRoZSBzdWJqZWN0IG9mIHRoZSBjb25maXJtYXRpb24gZW1haWwsIGFuZCBhZGRlZCB0aGUgYWJpbGl0eSB0byBzcGVjaWZ5IGEgdGV4dCBib2R5LiAgU3ViamVjdCwgYW5kIHRleHQgYm9keSBhcmUgcmVxdWlyZWQuPC9wPg0KPC9saT4NCjxsaT48cD5WZXJzaW9uIDEuMC4wLiAtIEZlYiAyMDA2PC9wPg0KPHA+Rml4ZWQgYSBwcm9ibGVtIHdpdGggdGhlIHZlcmlmeSBtb2RlLjwvcD4NCjxwPkFkZGVkIHRoZSBhYmlsaXR5IHRvIGVkaXQgYW5kIGRlbGV0ZSB1c2Vycy4gd2l0aCBzZWxlY3Rpb24gb24gdGhlIGNoZWNrYm94ZXMsIGFuZCAmcXVvdDtjaGVja2FsbCZxdW90OzwvcD4NCjxwPk5vdyByZXF1aXJlIEZFVXNlcnMgMC4xLjggYW5kIENNU01haWxlciAxLjczLjk8L3A+DQo8cD5BZGRlZCBhbm90aGVyIHRhYiBmb3IgdGhlICZxdW90O3lvdXIgc2V0dGluZ3MgaGF2ZSBiZWVuIGFkanVzdGVkJnF1b3Q7IGVtYWlsIHRlbXBsYXRlczwvcD4NCjxwPkFkZGVkIENTViBFeHBvcnRpbmc8L3A+DQo8cD5BZGRlZCBhICZxdW90O0RlbGV0ZSBhbGwgdXNlcnMgb2xkZXIgdGhhbiBhIGRheSZxdW90OyBidXR0b248L3A+DQo8cD5Ob3cgd29ya3Mgd2l0aCB0aGUgbWF4aW11bSBsZW5ndGggZmllbGQgb2YgRkVVc2VyczwvcD4NCjxwPkFkZGVkIHN1cHBvcnQgZm9yIGRyb3Bkb3ducyBhbmQgdGV4dCBhcmVhczwvcD4NCjxwPkRpc2FsbG93IHB1bmN0dWF0aW9uIGNoYXJhY3RlcnMgaW4gdXNlcm5hbWU8L3A+DQo8L2xpPg0KPGxpPjxwPlZlcnNpb24gMS4wLjEuIC0gRmViIDIwMDY8L3A+DQo8cD5BZGRlZCB0aGUgYWJpbGl0eSBmb3IgdXNlcnMgdG8gcmVxdWVzdCBhbm90aGVyIHJlZ2lzdHJhdGlvbiBlbWFpbCAodXNlcyB0aGUgc2FtZSBjb2RlKSwgaW5jYXNlIHRoZXkgbG9zdCB0aGVpciBmaXJzdCBvbmUuPC9wPg0KPC9saT4NCjxsaT48cD5WZXJzaW9uIDEuMC4yLiAtIEZlYiAyMDA2PC9wPg0KPHA+VGhlICZxdW90O1JlcXVpcmUgZW1haWwgY29uZmlybWF0aW9uJnF1b3Q7IGNoZWNrYm94IG5vdyB3b3Jrcy4gIFVzZXJzIGFyZSBhZGRlZCBzdHJhaWdodCB0byB0aGUgZnJvbnRlbmQgdXNlcnMgZGF0YWJhc2U8L3A+DQo8cD5GaXhlZCBhIGJ1ZyB3aXRoIHRoZSBjb25maXJtYXRpb24gZW1haWxzIGhhdmluZyBsaW5rcyB0byB0aGUgYWRtaW4gc2VjdGlvbiAobmV3IGJ1ZyBvbmx5KS48L3A+DQo8L2xpPg0KPGxpPjxwPlZlcnNpb24gMS4wLjMuIC0gRmViIDIwMDY8L3A+DQo8cD5BZGRlZCB0aGUgKG9wdGlvbmFsKSBhYmlsaXR5IHRvIHJlcXVpcmUgdGhlIHVzZXIgZW50ZXIgdGhlIGVtYWlsIGFkZHJlc3MgdHdpY2U8L3A+DQo8cD5GaXhlZCBhIGJ1ZyB3aXRoIHRoZSB1c2VyZWRpdGVkIG1lc3NhZ2Ugbm90IGJlaW5nIHRocm93biB0aHJvdWdoIHNtYXJ0eTwvcD4NCjxwPkZpeGVkIHRoZSBkZWZhdWx0IHJlZ2lzdHJhdGlvbiB0ZW1wbGF0ZSBhIGJpdCB0byBhaWRlIGluIHZhbGlkYXRpb24gZm9yIG5vbiByZXF1aXJlZCBmaWVsZHMgKGZpeGVkIGEgd2FybmluZyk8L3A+DQo8cD5GaXggcHJvYmxlbXMgd2l0aCBpbmxpbmUgYW5kIG5vbi1pbmxpbmUgZm9ybXMgYW5kIGxpbmtzPC9wPg0KPHA+SGFuZGxlIGFub3RoZXIgY2FzZSB3aGVyZSB0aGUgYWRtaW4gbWF5IG5vdCBoYXZlIGNyZWF0ZWQgdGhlIHByb3BlciB0eXBlIG9mIGVtYWlsIHByb3BlcnR5PC9wPg0KPHA+Q2hhbmdlZCB0byByZXF1aXJlIENNUyAwLjEyLWJldGEyIGF0IGEgbWluaW11bSAoZm9yIHNhZmV0eSBwdXJwb3Nlcyk8L3A+DQo8L2xpPg0KPGxpPjxwPlZlcnNpb24gMS4wLjQuIC0gTWFyIDIwMDY8L3A+DQo8cD5Nb3JlIGNvbnRyb2wgb3ZlciB1c2VybmFtZSBhbmQgcGFzc3dvcmQgZmllbGQgc2l6ZXMgKGNvbnRyb2xsZWQgYnkgZmV1c2Vycyk8L3A+DQo8cD5Db25maXJtYXRpb24gb24gZWRpdGluZyBwcmVmZXJlbmNlczwvcD4NCjxwPlJlcXVpcmUgMC4xMiBwcm9wZXIgb2YgY21zIGFzIGEgbWluaW11bTwvcD4NCjwvbGk+DQo8bGk+PHA+VmVyc2lvbiAxLjEuMC4gLSBEZWMgMjAwNjwvcD4NCiAgICA8cD5BZGRlZCBldmVudHMgYW5kIDEuMCBjb21wYXRpYmlsaXR5PC9wPg0KICAgIDxwPkNhcHRjaGEgc3VwcG9ydCAodGhhbmtzIERpdHRtYW4pPC9wPg0KPC9saT4NCjxsaT48cD5WZXJzaW9uIDEuMS4xLiAtIEFwciAyMDA3PC9wPg0KICAgIDxwPk5vdyByZXF1aXJlIEZFVXNlcnMgMS4yLjAgKG1pbmltdW0pPC9wPg0KICAgIDxwPlN1cHBvcnQgZm9yIG11bHRpc2VsZWN0IGxpc3RzIGluIGZldXNlcnM8L3A+DQogICAgPHA+T3V0cHV0IHNvbWUgbW9yZSBmaWVsZHMgdG8gc21hcnR5IHRvIGFsbG93IGZvciBpbmNyZWFzZWQgYWNjZXNzaWJpbGl0eTwvcD4NCiAgICA8cD5TcGxpdCBjb2RlIG91dCBpbnRvIG11bHRpcGxlIGZpbGVzIHRvIHJlZHVjZSBvdmVyYWxsIG1lbW9yeSBmb290cHJpbnQ8L3A+DQogICAgPHA+SWdub3JlIGFsbCBpbWFnZSBmaWVsZHM8L3A+DQogICAgPHA+Q2hhbmdlIENhcHRjaGEgc3VwcG9ydCB0byBiZSBvbiBieSBkZWZhdWx0IGlmIHRoZSBDYXB0Y2hhIG1vZHVsZSBpcyBmb3VuZDwvcD4NCjwvbGk+DQo8L3VsPic7CiRsYW5nWydoZWxwJ10gPSAnPGgzPkNlIGZhY2UgYWNlc3QgbW9kdWw/PC9oMz4NCjxwPkFjZXN0IG1vZHVsIGVzdGUgcHJvaWVjdGF0IHBlbnRydSBhIHBlcm1pdGUgdXRpbGl6YXRvcmlsb3IgZnJvbnQgZW5kIHNhIHNlIGF1dG8taW5yZWdpc3RyZXplIHNpIHNhIGNvbXBsZXRlemUgaW5mb3JtYXRpaWxlIG5lY2VzYXJlLiAgSW4gY29udGludWFyZSwgbW9kdWx1bCB2YSB0cmltaXRlIHVuICBlLW1haWwgZGUgY29uZmlybWFyZSwgY3UgdW4gbGluayBsYSBvIHBhZ2luYSBzZWN1bmRhcmEgY2FyZSB0cmVidWllIGNvbXBsZXRhdGEgaW5haW50ZSBjYSBpbnJlZ2lzdHJhcmVhIHNhIGZpZSBpbmNoZWlhdGEuICBEZSBpbmRhdGEgY2UgaW5yZWdpc3RyYXJlYSBlc3RlIGluY2hlaWF0YSwgdW4gY29udCB1dGlsaXphdG9yIGVzdGUgY3JlYXQgaW4gbW9kdWx1bCBkZSBmcm9udCB1c2Vycy48L3A+DQo8cD5QZW50cnUgYSBwdXRlYSBmb2xvc2kgYWNlc3QgbW9kdWwsIHRyZWJ1aWUgc2EgY3JlYXRpIG8gcHJvcHJpZXRhdGUgZGUgdGlwdWwgJnF1b3Q7QWRyZXNhIGUtbWFpbCZxdW90OyBpbiBtb2R1bHVsIEZyb250ZW5kVXNlcnMgc2kgc2EgYXNvY2lhdGkgYWNlYSBwcm9wcmlldGF0ZSBjdSBncnVwdWwgY2FyZSB0cmVidWllIGZvbG9zaXQgcGVudHJ1IGF1dG8taW5yZWdpc3RyYXJlLjwvcD4NCjxoMz5DdW0gaWwgZm9sb3Nlc2M/PC9oMz4NCjxwPlBsYXNhdGkgdXJtYXRvYXJlYSBldGljaGV0YSBpbiBwYWdpbmEgZHVtbmVhdm9hc3RyYSB7Y21zX21vZHVsZSBtb2R1bGU9U2VsZlJlZ2lzdHJhdGlvbiBncm91cD11c2VyZ3JvdXB9PC9wPg0KPHA+VHJlYnVpZSBzYSBmaSBjcmVhdCBpbiBwcmVhbGFiaWwgcHJvcHJpZXRhdGlsZSBzaSBncnVwdXJpbGUgdXRpbGl6YXRvciBwZW50cnUgY2EgYWNlYXN0YSBzYSBmdW5jdGlvbmV6ZSBjb3JlY3QuPC9wPg0KPGgzPlBhcmFtZXRyaTwvaDM+DQo8cD48c3Ryb25nPm1vZGU8L3N0cm9uZz4mbmJzcDs8ZW0+b3B0aW9uYWw8L2VtPiAtIHZhbG9yaSBwb3NpYmlsZSBzdW50ICZxdW90O3NpZ251cCZxdW90OyBzaSAmcXVvdDt2ZXJpZnkmcXVvdDsuICBEYWNhIGFjZXN0IHBhcmFtZXRydSBudSBlc3RlIHNwZWNpZmljYXQsICZxdW90O3NpZ251cCZxdW90OyBlc3RlIGFzdW1hdC48L3A+DQo8cD48c3Ryb25nPmdyb3VwPC9zdHJvbmc+Jm5ic3A7PGVtPm9wdGlvbmFsPC9lbT4gLSBBY2VzdCBwYXJhbWV0cnUgZXN0ZSBuZWNlc2FyIGRhY2EgbW9kZSBlc3RlICZxdW90O3NpZ251cCZxdW90Oywgc2F1IGRhY2EgbW9kZSBlc3RlIGxhc2F0IHZpZC48L3A+DQo8cD48c3Ryb25nPm5vY2FwdGNoYTwvc3Ryb25nPiZuYnNwOzxlbT5vcHRpb25hbDwvZW0+IC0gQWNlc3RhIHZhIGRlemFjdGl2YSBjYXB0Y2hhIHBlbnRydSBmb3JtdWxhcnVsIGRlIGlucmVnaXN0cmFyZS4gSW1wbGljaXQsIGRhY2EgbW9kdWx1bCBDYXB0Y2hhIGVzdGUgaW5zdGFsYXQsIGVzdGUgb2Zlcml0IHN1cG9ydC11bCBjYXB0Y2hhLiAgQWNlc3QgcGFyYW1ldHJ1IGlsIGRlemFjdGl2ZWF6YS48L3A+DQo8aDM+U3Vwb3J0PC9oMz4NCjxwPkFjZXN0IG1vZHVsIG51IGluY2x1ZGUgc3Vwb3J0IGNvbWVyY2lhbC4gVG90dXNpLCBleGlzdGEgdW4gbnVtYXIgZGUgcmVzdXJzZSBtZW5pdGUgc2EgdmEgYWp1dGU6PC9wPg0KPHVsPg0KPGxpPlBlbnRydSB1bHRpbWEgdmVyc2l1bmUgYSBhY2VzdHVpIG1vZHVsLCBGQVEtdXJpLCBzYXUgcmFwb3J0YXJlYSB1bnVpIFJhcG9ydCBkZSBCdWcgc2F1IGN1bXBhcmFyZWEgc3Vwb3J0dWx1aSBjb21lcmNpYWwsIHN1bnRldGkgcnVnYXQoYSkgc2Egdml6aXRhdGkgcGFnaW5hIGRlIHN0YXJ0IGEgbW9kdWx1bHVpIGx1aSBjYWxndXkgbGEgPGEgaHJlZj0mcXVvdDtodHRwOi8vdGVjaGNvbS5keW5kbnMub3JnJnF1b3Q7PnRlY2hjb20uZHluZG5zLm9yZzwvYT4uPC9saT4NCjxsaT5EaXNjdXRpaSBzdXBsaW1lbnRhcmUgZGVzcHJlIGFjZXN0IG1vZHVsIHBvdCBmaSBnYXNpdGUgZGUgYXNlbWVuZWEgaW4gPGEgaHJlZj0mcXVvdDtodHRwOi8vZm9ydW0uY21zbWFkZXNpbXBsZS5vcmcmcXVvdDs+Q01TIE1hZGUgU2ltcGxlIEZvcnVtczwvYT4uPC9saT4NCjxsaT5BdXRvcnVsLCBjYWxndXkxMDAwLCBhZGVzZWEgcG9hdGUgZmkgZ2FzaXQgaW4gPGEgaHJlZj0mcXVvdDtpcmM6Ly9pcmMuZnJlZW5vZGUubmV0LyNjbXMmcXVvdDs+Q01TIElSQyBDaGFubmVsPC9hPi48L2xpPg0KPGxpPkluIGZpbmFsLCBwdXRldGkgYXZlYSBzYW5zZSBkZSBzdWNjZXMgcHJpbiB0cmltdGVyZWEgdW51aSBlLW1haWwgZGlyZWN0IGF1dG9ydWx1aS48L2xpPiAgDQo8L3VsPg0KPHA+Q2F0IGRlc3ByZSBHUEwsIGFjZXN0IHNvZnQgZXN0ZSBvZmVyaXQgYXNhIGN1bSBlc3RlLiBTdW50ZXRpIHJ1Z2F0KGEpIHNhIGNpdGl0aSBjb250aW51dHVsIGxpY2VudGVpIHBlbnRydSBmdWxsIGRpc2NsYWltZXIuPC9wPg0KDQo8aDM+RHJlcHR1cmkgZGUgY29waWVyZSBzaSBsaWNlbnRhPC9oMz4NCjxwPkNvcHlyaWdodCAmY29weTsgMjAwNSwgUm9iZXJ0IENhbXBiZWwgPGEgaHJlZj0mcXVvdDttYWlsdG86Y2FsZ3V5MTAwMEBob3RtYWlsLmNvbSZxdW90Oz48Y2FsZ3V5MTAwMEBob3RtYWlsLmNvbT48L2E+LiBUb2F0ZSBkcmVwdHVyaWxlIHJlemVydmF0ZS48L3A+DQo8cD5BY2VzdCBtb2R1bCBhIGZvc3QgbGl2cmF0IHN1YiA8YSBocmVmPSZxdW90O2h0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTCZxdW90Oz5MaWNlbnRhIHB1YmxpY2EgR05VPC9hPi4gVHJlYnVpZSBzYSBmaXRpIGRlIGFjb3JkIGN1IGFjZWFzdGEgbGljZW50YSBpbmFpbnRlIGRlIGEgdXRpbGl6YSBtb2R1bHVsLjwvcD4NCic7CiRsYW5nWyd1dG1hJ10gPSAnMTU2ODYxMzUzLjE0MjI4MjQ2NTAuMTE5MzI0NDUwNi4xMTkzNjI4NzU4LjExOTM3Nzk4MjMuOCc7CiRsYW5nWyd1dG1iJ10gPSAnMTU2ODYxMzUzJzsKJGxhbmdbJ3V0bXonXSA9ICcxNTY4NjEzNTMuMTE5MzI1MTcwMi4zLjIudXRtY2NuPShyZWZlcnJhbCl8dXRtY3NyPWxvY2FsaG9zdHx1dG1jY3Q9L2Ntc21hZGVzaW1wbGUvYWRtaW4vbW9kdWxlaW50ZXJmYWNlLnBocHx1dG1jbWQ9cmVmZXJyYWwnOwokbGFuZ1sndXRtYyddID0gJzE1Njg2MTM1Myc7Cj8+]]></data>
	</file>
	<file>
	  <filename>/lang/ext/ru_RU.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2Vycm9yX2NvZGVzZG9udG1hdGNoJ10gPSAnVGhlIHZhbGlkYXRpb24ga2V5IHN1cHBsaWVkIGlzIGludmFsaWQnOwokbGFuZ1snZXZlbnRfZGVzY3JpcHRpb25fb25OZXdVc2VyJ10gPSAnQW4gZXZlbnQgaW5kaWNhdGluZyB0aGF0IGEgbmV3IHVzZXIgaGFzIGNvbXBsZXRlZCB0aGUgcmVnaXN0cmF0aW9uIGZvcm0nOwokbGFuZ1snZXZlbnRfZGVzY3JpcHRpb25fb25Vc2VyUmVnaXN0ZXJlZCddID0gJ9Ch0L7QsdGL0YLQuNC1INC/0L7QutCw0LfRi9Cy0LDQtdGCINGH0YLQviDQv9C+0LvRjNC30L7QstCw0YLQtdC70Ywg0L/QvtC00YLQstC10YDQtNC40Lsg0YHQstC+0Lgg0LTQsNC90L3Ri9C1INC4INGC0LXQv9C10YDRjCDQt9Cw0YDQtdCz0LXRgdGC0YDQuNGA0L7QstCw0L0uJzsKJGxhbmdbJ2V2ZW50X2hlbHBfb25OZXdVc2VyJ10gPSAnPHA+QW4gZXZlbnQgaW5kaWNhdGluZyB0aGF0IGEgbmV3IHVzZXIgaGFzIGNvbXBsZXRlZCB0aGUgcmVnaXN0cmF0aW9uIGZvcm08L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgbmV3IHVzZXJzIHNlbGVjdGVkIHVzZXJuYW1lPC9saT4NCjxsaT48ZW0+ZW1haWw8L2VtPiAtIFRoZSBuZXcgdXNlcnMgZW1haWwgYWRkcmVzczwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfb25Vc2VyUmVnaXN0ZXJlZCddID0gJzxwPkFuIGV2ZW50IGluZGljYXRpbmcgdGhhdCBhIHVzZXIgaGFzIGJlZW4gdmVyaWZpZWQgYW5kIGlzIG5vdyByZWdpc3RlcmVkIHdpdGggZmV1c2VyczwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSByZWdpc3RlcmVkIHVzZXJuYW1lPC9saT4NCjwvdWw+DQonOwokbGFuZ1snY29uZmlybV9zdWJtaXRwcmVmcyddID0gJ9CY0LfQvNC10L3QuNGC0Ywg0L3QsNGB0YLRgNC+0LnQutC4INCQ0LTQvNC40L3QuNGB0YLRgNCw0YLQvtGA0LA/JzsKJGxhbmdbJ2luZm9fYWRtaW5fcGFzc3dvcmQnXSA9ICfQntGB0YLQsNCy0YzRgtC1INGN0YLQviDQv9C+0LvQtSDQv9GD0YHRgtGL0Lwg0LTQu9GPINGB0L7RhdGA0LDQvdC10L3QuNGPINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjNGB0LrQvtCz0L4g0L/QsNGA0L7Qu9GPJzsKJGxhbmdbJ2luZm9fYWRtaW5fcmVwZWF0cGFzc3dvcmQnXSA9ICfQntGB0YLQsNCy0YzRgtC1INGN0YLQviDQv9C+0LvQtSDQv9GD0YHRgtGL0Lwg0LTQu9GPINGB0L7RhdGA0LDQvdC10L3QuNGPINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjNGB0LrQvtCz0L4g0L/QsNGA0L7Qu9GPJzsKJGxhbmdbJ2Vycm9yX2VtYWlsZG9lc25vdG1hdGNoJ10gPSAn0JDQtNGA0LXRgdCwIEVtYWlsINC90LUg0YHQvtCy0L/QsNC00LDRjtGCJzsKJGxhbmdbJ2ZvcmNlX2VtYWlsX3R3aWNlJ10gPSAn0J/QvtGC0YDQtdCx0L7QstCw0YLRjCDQvtGCINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvQtdC5INC/0L7QstGC0L7RgNC90L7Qs9C+INCy0LLQvtC00LAgZW1haWwnOwokbGFuZ1snYWdhaW4nXSA9ICfRgdC90L7QstCwJzsKJGxhbmdbJ2RlbGV0ZXNlbHVzZXJzJ10gPSAn0KPQtNCw0LvQuNGC0Ywg0LLRi9Cx0YDQsNC90L3Ri9GFINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvQtdC5JzsKJGxhbmdbJ2Vycm9yX25vcHJvcGRlZm5zJ10gPSAnTm8gcHJvcGVydHkgZGVmaW5pdGlvbnMsIG9yIHByb2JsZW0gcmV0cmVpdmluZyB0aGVtIGZyb20gdGhlIGRhdGFiYXNlJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBzJ10gPSAnTm8gZ3JvdXBzLCBvciBwcm9ibGVtIHJldHJlaXZpbmcgZ3JvdXAgbGlzdCc7CiRsYW5nWydlcnJvcl9kYmVycm9yJ10gPSAn0J7RiNC40LHQutCwINCx0LDQt9GLINC00LDQvdC90YvRhSc7CiRsYW5nWyd0aXRsZV9wb3N0X3NlbmRhbm90aGVyZW1haWxfdGVtcGxhdGUnXSA9ICdQb3N0IExvc3QgRW1haWwgVGVtcGxhdGUnOwokbGFuZ1sndGl0bGVfc2VuZGFub3RoZXJlbWFpbF90ZW1wbGF0ZSddID0gJ0xvc3QgRW1haWwgVGVtcGxhdGUnOwokbGFuZ1snY2xpY2toZXJlJ10gPSAn0KnQtdC70LrQvdC40YLQtSDQt9C00LXRgdGMJzsKJGxhbmdbJ21zZ19zZW5kYW5vdGhlcmVtYWlsJ10gPSAn0K8g0YPQttC1INC30LDQv9C+0LvQvdC40Lsg0YDQtdCz0LjRgdGC0YDQsNGG0LjQvtC90L3Rg9GOINGE0L7RgNC80YMsINC90L4g0L3QtSDQv9C+0LvRg9GH0LjQuyDRgdC+0L7QsdGJ0LXQvdC40Y8uINCc0L7Qs9C70Lgg0LHRiyDQstGL0YHQu9Cw0YLRjCDRgdC+0L7QsdGJ0LXQvdC40LUg0L/QvtCy0YLQvtGA0L3Qvj8nOwokbGFuZ1snc2VuZGFub3RoZXJlbWFpbF90ZW1wbGF0ZSddID0gJ0xvc3QgRW1haWwgVGVtcGxhdGUnOwokbGFuZ1snaW5mb191c2VydmVyaWZpZWQnXSA9ICfQlNC+0LHQsNCy0LvQvdC1INC90L7QstGL0Lkg0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GMJzsKJGxhbmdbJ2VkaXQnXSA9ICfQoNC10LTQsNC60YLQuNGA0L7QstCw0YLRjCc7CiRsYW5nWyd1bmtub3duJ10gPSAn0J3QtdC40LfQstC10YHRgtC90YvQuSc7CiRsYW5nWydzZWxlY3QnXSA9ICfQktGL0LHRgNCw0YLRjCc7CiRsYW5nWydjaGVja19hbGwnXSA9ICfQntGC0LzQtdGC0LjRgtGMINCy0YHQtSc7CiRsYW5nWyd1bmNoZWNrX2FsbCddID0gJ9Ch0L3Rj9GC0Ywg0L7RgtC80LXRgtC60YMg0YHQviDQstGB0LXRhSc7CiRsYW5nWydzZW5kX2FkanVzdG1lbnRlbWFpbCddID0gJ9Cf0L7RgdC70LDRgtGMINGB0L7QvtCx0YnQtdC90LjQtSDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y4nOwokbGFuZ1sndHh0X2FkanVzdG1lbnRlbWFpbCddID0gJyhpbmZvcm1zIHRoZSB1c2VyIHRoYXQgdGhlaXIgYWNjb3VudCBoYXMgYmVlbiBhZGp1c3RlZCc7CiRsYW5nWyd0eHRfY2hhbmdlcGFzc3dvcmQnXSA9ICfQl9Cw0L/QvtC70L3QuNGC0LUg0Y3RgtC4INC/0L7Qu9GPINC00LvRjyDQtNC70Y8g0LjQt9C80LXQvdC10L3QuNGPINC/0LDRgNC+0LvRjyDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y8nOwokbGFuZ1snZWRpdHVzZXInXSA9ICfQoNC10LTQsNC60YLQuNGA0L7QstCw0YLRjCDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y8nOwokbGFuZ1snYXJleW91c3VyZV9kZWxldGV1c2VyJ10gPSAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSB0aGlzIHBhcnRpYWxseSByZWdpc3RlcmVkIHVzZXI/JzsKJGxhbmdbJ2hkcl91c2VyaWQnXSA9ICdVc2VySUQnOwokbGFuZ1snaGRyX3VzZXJuYW1lJ10gPSAn0JjQvNGPINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjyc7CiRsYW5nWydoZHJfZ3JwbmFtZSddID0gJ9CT0YDRg9C/0L/QsCc7CiRsYW5nWydoZHJfY3JlYXRlZCddID0gJ9Ch0L7Qt9C00LDQvSc7CiRsYW5nWydoZHJfZW1haWwnXSA9ICfQodC+0L7QsdGJ0LXQvdC40LUnOwokbGFuZ1sndXNlcnNmb3VuZCddID0gJ1VzZXJzIGZvdW5kIChsaW1pdGVkIHRvIGEgbWF4aW11bSBvZiAyNTApJzsKJGxhbmdbJ3VzZXJzJ10gPSAn0J/QvtC70YzQt9C+0LLQsNGC0LXQu9C4JzsKJGxhbmdbJ2xpc3QxZGF5J10gPSAnJzsKJGxhbmdbJ3N1YmplY3QnXSA9ICdTdWJqZWN0INC00LvRjyDQuNGB0YXQvtC00YnQuNGFINGB0L7QvtCx0YnQtdC90LjQuSc7CiRsYW5nWydodG1sYm9keSddID0gJ0hUTUwgbWVzc2FnZSBib2R5JzsKJGxhbmdbJ3RleHRib2R5J10gPSAnVGV4dCBtZXNzYWdlIGJvZHknOwokbGFuZ1sncHJvbXB0X251bXJlc2V0cmVjb3JkJ10gPSAnQSBudW1iZXIgb2YgdXNlcnMgYXJlIGluIHRoZSBtaWRkbGUgb2YgcmVnaXN0ZXJpbmcuICBDdXJyZW50bHkgdGhpcyBjb3VudCBpcyBhdDonOwokbGFuZ1sncmVtb3ZlMXdlZWsnXSA9ICdSZW1vdmUgYWxsIGVudHJpZXMgbW9yZSB0aGFuIGEgd2VlayBvbGQnOwokbGFuZ1sncmVtb3ZlMW1vbnRoJ10gPSAnUmVtb3ZlIGFsbCBlbnRyaWVzIG1vcmUgdGhhbiBhIG1vbnRoIG9sZCc7CiRsYW5nWydyZW1vdmUxZGF5J10gPSAnUmVtb3ZlIGFsbCBlbnRyaWVzIG1vcmUgdGhhbiBhIGRheSBvbGQnOwokbGFuZ1sncmVtb3ZlYWxsJ10gPSAnUmVtb3ZlIGFsbCBlbnRyaWVzJzsKJGxhbmdbJ2FyZXlvdXN1cmUnXSA9ICfQktGLINGD0LLQtdGA0LXQvdGLPyc7CiRsYW5nWydyZWdpc3RyYXRpb25faW5mb19lZGl0ZWQnXSA9ICfQlNCw0L3QvdGL0LUg0LLQsNGI0LXQuSDRgNC10LPQuNGB0YLRgNCw0YbQuNC4INCx0YvQu9C4INC40LfQvNC10L3QtdC90YsnOwokbGFuZ1sncmVnaXN0cmF0aW9uX2NvbmZpcm1hdGlvbiddID0gJ9Cf0L7QtNGC0LLQtdGA0LbQtNC10L3QuNC1INGA0LXQs9C40YHRgtGA0LDRhtC40LgnOwokbGFuZ1sndXNlcl9yZWdpc3RyYXRpb24nXSA9ICfQl9Cw0YDQtdCz0LXRgdGC0YDQuNGA0L7QstCw0YLRjNGB0Y8nOwokbGFuZ1snZmluYWxtZXNzYWdlX3RlbXBsYXRlJ10gPSAnRmluYWwgTWVzc2FnZSBUZW1wbGF0ZSc7CiRsYW5nWyd0aXRsZV92ZXJpZnlyZWdpc3RyYXRpb24nXSA9ICdWZXJpZnkgUmVnaXN0cmF0aW9uJzsKJGxhbmdbJ2NvZGUnXSA9ICdWYWxpZGF0aW9uIEtleSc7CiRsYW5nWydkZWZhdWx0J10gPSAn0KPRgdGC0LDQvdC+0LLQutC4INC/0L4t0YPQvNC+0LvRh9Cw0L3QuNGOJzsKJGxhbmdbJ2Vycm9yX25vcHJvcGVydGllcyddID0gJ9Cd0LUg0L3QsNC50LTQtdC90L4g0YHQstC+0LnRgdGC0LIg0LTQu9GPINGN0YLQvtCz0L4g0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPJzsKJGxhbmdbJ2Vycm9yX25vcHJvcHJlbGF0aW9ucyddID0gJ05vIHByb3BlcnR5IHJlbGF0aW9ucyc7CiRsYW5nWydlcnJvcl9lbWFpbGludmFsaWQnXSA9ICdJbnZhbGlkIGVtYWlsIGFkZHJlc3MnOwokbGFuZ1snZXJyb3Jfbm9lbWFpbGFkZHJlc3MnXSA9ICdObyB2YWxpZCBlbWFpbCBhZGRyZXNzIGZpZWxkIGZvdW5kJzsKJGxhbmdbJ2Vycm9yX3JlcXVpcmVkZmllbGQnXSA9ICdGaWVsZCAlcyBtdXN0IGJlIGZpbGxlZCBpbic7CiRsYW5nWydyZWdpc3RyYXRpb24xX3RlbXBsYXRlJ10gPSAnUmVnaXN0cmF0aW9uIFRlbXBsYXRlIDEnOwokbGFuZ1sncmVnaXN0cmF0aW9uMl90ZW1wbGF0ZSddID0gJ1JlZ2lzdHJhdGlvbiBUZW1wbGF0ZSAyJzsKJGxhbmdbJ2VtYWlsY29uZmlybV90ZW1wbGF0ZSddID0gJ0NvbmZpcm1hdGlvbiBFbWFpbCBUZW1wbGF0ZSc7CiRsYW5nWydlbWFpbHVzZXJlZGl0ZWRfdGVtcGxhdGUnXSA9ICdVc2VyIEluZm8gQ2hhbmdlZCBUZW1wbGF0ZSc7CiRsYW5nWydwcmVmZXJlbmNlcyddID0gJ1ByZWZlcmVuY2VzJzsKJGxhbmdbJ2Vycm9yX3VzZXJub3Rmb3VuZCddID0gJ1VzZXIgbm90IGZvdW5kJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZSddID0gJ1VzZXJuYW1lIGlzIGludmFsaWQgKHRvbyBsb25nLCB0b28gc2hvcnQsIG9yIGNvbnRhaW5zIGludmFsaWQgY2hhcmFjdGVycykuICBIaW50LSBVc2VybmFtZXMgbXVzdCBjb250YWluIG9ubHkgYWxwaGFudW1lcmljIGNoYXJhY3RlcnMgKG5vIHNwYWNlcyknOwokbGFuZ1snZXJyb3JfdXNlcm5hbWV0YWtlbiddID0gJ1RoYXQgdXNlcm5hbWUgaXMgY3VycmVudGx5IGluIHVzZSc7CiRsYW5nWydlcnJvcl9wYXNzd29yZHNkb250bWF0Y2gnXSA9ICdFUlJPUjogUGFzc3dvcmRzIGRvbnQgbWF0Y2gnOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhc3N3b3JkJ10gPSAnUGFzc3dvcmQgaXMgaW52YWxpZCAocGFzc3dvcmRzIG11c3QgYmUgYmV0d2VlbiAlcyBhbmQgJXMgY2hhcmFjdGVycyBpbiBsZW5ndGgpJzsKJGxhbmdbJ2Vycm9yX2VtcHR5dXNlcm5hbWUnXSA9ICfQmNC80Y8g0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPINC00L7Qu9C20L3QviDQsdGL0YLRjCDQt9Cw0L/QvtC70L3QtdC90L4nOwokbGFuZ1sncmVwZWF0cGFzc3dvcmQnXSA9ICdQYXNzd29yZCAoYWdhaW4pJzsKJGxhbmdbJ3Bhc3N3b3JkJ10gPSAn0J/QsNGA0L7Qu9GMJzsKJGxhbmdbJ3VzZXJuYW1lJ10gPSAn0JjQvNGPINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjyc7CiRsYW5nWydjYXB0Y2hhX3RpdGxlJ10gPSAnRW50ZXIgdGhlIHRleHQgZnJvbSB0aGUgaW1hZ2UnOwokbGFuZ1snZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJ10gPSAnSW5zdWZmaWNpZW50IG51bWJlciAob3IgaW5jb3JyZWN0KSBwYXJhbWV0ZXJzIHN1cHBsaWVkIHRvIG1vZHVsZSc7CiRsYW5nWydlcnJvcl9ub2ZldXNlcnNtb2R1bGUnXSA9ICdDb3VsZCBub3QgZ2V0IGluc3RhbmNlIG9mIEZyb250RW5kVXNlcnMgbW9kdWxlJzsKJGxhbmdbJ2Vycm9yX25vc3VjaGdyb3VwJ10gPSAnR3JvdXAgbmFtZSBzcGVjaWZpZWQgZG9lcyBub3QgZXhpc3QnOwokbGFuZ1snZXJyb3JfY2FwdGNoYW1pc21hdGNoJ10gPSAnVGhlIHRleHQgZnJvbSB0aGUgaW1hZ2Ugd2FzIG5vdCBlbnRlcmVkIGNvcnJlY3RseSc7CiRsYW5nWydzZW5kX2VtYWlsc190byddID0gJ9Ch0L7QvtCx0YnQtdC90LjQtSDQviDRgNC10LPQuNGB0YLRgNCw0YbQuNC4INC00L7Qu9C20L3QviDQsdGL0YLRjCDQv9C+0YHQu9Cw0L3QviDQvdCwJzsKJGxhbmdbJ3JlcXVpcmVfZW1haWxfY29uZmlybWF0aW9uJ10gPSAnUmVxdWlyZSB0aGUgdXNlciB0byBjb25maXJtIHJlZ2lzdHJhdGlvbiB2aWEgZW1haWwnOwokbGFuZ1snbm90aWZ5X29uX3JlZ2lzdHJhdGlvbiddID0gJ1NlbmQgYW4gZW1haWwgbm90aWZpY2F0aW9uIHdoZW4gc29tZW9uZSByZWdpc3RlcnMnOwokbGFuZ1snY2FuY2VsJ10gPSAnQ2FuY2VsJzsKJGxhbmdbJ3N1Ym1pdCddID0gJ1N1Ym1pdCc7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdTZWxmIFJlZ2lzdHJhdGlvbiBNb2R1bGUnOwokbGFuZ1sncG9zdGluc3RhbGwnXSA9ICdJbnN0YWxsYXRpb24gc3VjY2Vzc2Z1bGwsIHBsZWFzZSByZW1lbWJlciB0byBzZXQgdGhlICJNb2RpZnkgU2VsZlJlZ2lzdHJhdGlvbiBTZXR0aW5ncyIgcGVybWlzc2lvbi4gIElmIHRoZSBDYXB0Y2hhIG1vZHVsZSBpcyBpbnN0YWxsZWQsIHRoZW4gY2FwdGNoYSBmdW5jdGlvbmFsaXR5IGlzIGVuYWJsZWQgYnkgZGVmYXVsdC4gIFdlIHN0cm9uZ2x5IHJlY2NvbW1lbmQgdGhhdCB5b3UgaW5zdGFsbCB0aGlzIG1vZHVsZS4gIElmIHRoZSBDYXB0Y2hhIG1vZHVsZSBpcyBpbnN0YWxsZWQsIGFuZCB5b3Ugd2FudCB0byBkaXNhYmxlIGl0LCB1c2UgdGhlIG5vY2FwdGNoYSBwYXJhbSBpbiB5b3VyIHNlbGZyZWdpc3RyYXRpb24gdGFnLic7CiRsYW5nWydwb3N0dW5pbnN0YWxsJ10gPSAnU2VsZiBSZWdpc3RyYXRpb24gbW9kdWxlIGlzIHVuaW5zdGFsbGVkLiAgU2VlIHlvdSBsYXRlci4nOwokbGFuZ1sndW5pbnN0YWxsZWQnXSA9ICdNb2R1bGUgVW5pbnN0YWxsZWQuJzsKJGxhbmdbJ2luc3RhbGxlZCddID0gJ01vZHVsZSB2ZXJzaW9uICVzIGluc3RhbGxlZC4nOwokbGFuZ1sncHJlZnN1cGRhdGVkJ10gPSAnTW9kdWxlIHByZWZlcmVuY2VzIHVwZGF0ZWQuJzsKJGxhbmdbJ2FjY2Vzc2RlbmllZCddID0gJ0FjY2VzcyBEZW5pZWQuIFBsZWFzZSBjaGVjayB5b3VyIHBlcm1pc3Npb25zLic7CiRsYW5nWydlcnJvciddID0gJ0Vycm9yISc7CiRsYW5nWyd1cGdyYWRlZCddID0gJ01vZHVsZSB1cGdyYWRlZCB0byB2ZXJzaW9uICVzLic7CiRsYW5nWyd0aXRsZV9tb2RfcHJlZnMnXSA9ICdNb2R1bGUgUHJlZmVyZW5jZXMnOwokbGFuZ1sndGl0bGVfbW9kX2FkbWluJ10gPSAnTW9kdWxlIEFkbWluIFBhbmVsJzsKJGxhbmdbJ3RpdGxlX2FkbWluX3BhbmVsJ10gPSAnU2VsZiBSZWdpc3RyYXRpb24gTW9kdWxlJzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAn0JzQvtC00YPQu9GMINC/0L7Qt9Cy0L7Qu9GP0LXRgiDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y/QvCDRgdCw0LzQvtGB0YLQvtGP0YLQtdC70YzQvdC+INGA0LXQs9C40YHRgtGA0LjRgNC+0LLQsNGC0YzRgdGPLic7CiRsYW5nWyd3ZWxjb21lX3RleHQnXSA9ICc8cD5XZWxjb21lIHRvIHRoZSBzZWxmIHJlZ2lzdHJhdGlvbiBtb2R1bGUuPC9wPic7CiRsYW5nWydjaGFuZ2Vsb2cnXSA9ICc8dWw+DQo8bGk+VmVyc2lvbiAwLjAuMS4gT2N0IDIwMDUuIEluaXRpYWwgTlJQVCAoTm90IFJlYWR5IGZvciBQcmltZSBUaW1lKSByZWxlYXNlLjwvbGk+DQo8bGk+VmVyc2lvbiAwLjEuMC4gT2N0IDIwMDUuIEluaXRpYWwgcmVsZWFzZS48L2xpPg0KPGxpPlZlcnNpb24gMC4xLjEuIE9jdCAyMDA1LiBTZXQgdGhlIEhUTUwgbWFpbCBmbGFnLjwvbGk+DQo8bGk+VmVyc2lvbiAwLjEuMi4gT2N0IDIwMDUuIE1vdmVkIFJhbmRvbSBzdHVmZiBpbnRvIGZldXNlcnMsIGFuZCBhZGRlZCB0aGUgYWJpbGl0eSB0byBkZWxldGUgb2xkIGVudHJpZXMgZnJvbSB0aGUgcmVnaXN0cmF0aW9uIHRlbXBvcmFyeSB0YWJsZXM8L2xpPg0KPGxpPjxwPlZlcnNpb24gMC4xLjMuIC0gRGVjIDIwMDU8L3A+DQo8cD5GaXhlZCB0aGUgdG9nZ2xlcyBpbiB0aGUgYWRtaW4gcHJlZmVyZW5jZXMuICBBbHNvLCBjaGFuZ2VkIHRoZSBwZXJtaXNzaW9ucyBtb2RlbCB0byBub3QgcmVxdWlyZSB0aGUgdW5pcXVlIHBlcm1pc3Npb24gYWRkZWQgcHJldmlvdXNseSBmb3IgdGhlIHNlbGZyZWcgbW9kdWxlLjwvcD4NCjxwPlRoaXMgcmVsZWFzZSB3YXMgcmVtb3ZlZCBkdWUgdG8gcG9zc2libGUgZXJyb3JzPC9wPg0KPC9saT4NCjxsaT48cD5WZXJzaW9uIDAuMS40LiAtIEphbiAyMDA2PC9wPg0KPHA+Rml4ZWQgbWlub3IgZXJyb3JzIHdpdGggQ2hlY2tQZXJtaXNzaW9uLCByZXBsYWNlZCBhbGwgYXNzaWduX2J5X3JlZnNcJ3Mgd2l0aCBhc3NpZ25zIGZvciBob3BlZnVsIHBocDUgY29tcGF0aWJpbGl0eS48L3A+DQo8bGk+PHA+VmVyc2lvbiAwLjEuNS4gLSBKYW4gMjAwNjwvcD4NCjxwPkFkZGVkIHRoZSBhYmlsaXR5IHRvIHNldCB0aGUgc3ViamVjdCBvZiB0aGUgY29uZmlybWF0aW9uIGVtYWlsLCBhbmQgYWRkZWQgdGhlIGFiaWxpdHkgdG8gc3BlY2lmeSBhIHRleHQgYm9keS4gIFN1YmplY3QsIGFuZCB0ZXh0IGJvZHkgYXJlIHJlcXVpcmVkLjwvcD4NCjwvbGk+DQo8bGk+PHA+VmVyc2lvbiAxLjAuMC4gLSBGZWIgMjAwNjwvcD4NCjxwPkZpeGVkIGEgcHJvYmxlbSB3aXRoIHRoZSB2ZXJpZnkgbW9kZS48L3A+DQo8cD5BZGRlZCB0aGUgYWJpbGl0eSB0byBlZGl0IGFuZCBkZWxldGUgdXNlcnMuIHdpdGggc2VsZWN0aW9uIG9uIHRoZSBjaGVja2JveGVzLCBhbmQgImNoZWNrYWxsIjwvcD4NCjxwPk5vdyByZXF1aXJlIEZFVXNlcnMgMC4xLjggYW5kIENNU01haWxlciAxLjczLjk8L3A+DQo8cD5BZGRlZCBhbm90aGVyIHRhYiBmb3IgdGhlICJ5b3VyIHNldHRpbmdzIGhhdmUgYmVlbiBhZGp1c3RlZCIgZW1haWwgdGVtcGxhdGVzPC9wPg0KPHA+QWRkZWQgQ1NWIEV4cG9ydGluZzwvcD4NCjxwPkFkZGVkIGEgIkRlbGV0ZSBhbGwgdXNlcnMgb2xkZXIgdGhhbiBhIGRheSIgYnV0dG9uPC9wPg0KPHA+Tm93IHdvcmtzIHdpdGggdGhlIG1heGltdW0gbGVuZ3RoIGZpZWxkIG9mIEZFVXNlcnM8L3A+DQo8cD5BZGRlZCBzdXBwb3J0IGZvciBkcm9wZG93bnMgYW5kIHRleHQgYXJlYXM8L3A+DQo8cD5EaXNhbGxvdyBwdW5jdHVhdGlvbiBjaGFyYWN0ZXJzIGluIHVzZXJuYW1lPC9wPg0KPC9saT4NCjxsaT48cD5WZXJzaW9uIDEuMC4xLiAtIEZlYiAyMDA2PC9wPg0KPHA+QWRkZWQgdGhlIGFiaWxpdHkgZm9yIHVzZXJzIHRvIHJlcXVlc3QgYW5vdGhlciByZWdpc3RyYXRpb24gZW1haWwgKHVzZXMgdGhlIHNhbWUgY29kZSksIGluY2FzZSB0aGV5IGxvc3QgdGhlaXIgZmlyc3Qgb25lLjwvcD4NCjwvbGk+DQo8bGk+PHA+VmVyc2lvbiAxLjAuMi4gLSBGZWIgMjAwNjwvcD4NCjxwPlRoZSAiUmVxdWlyZSBlbWFpbCBjb25maXJtYXRpb24iIGNoZWNrYm94IG5vdyB3b3Jrcy4gIFVzZXJzIGFyZSBhZGRlZCBzdHJhaWdodCB0byB0aGUgZnJvbnRlbmQgdXNlcnMgZGF0YWJhc2U8L3A+DQo8cD5GaXhlZCBhIGJ1ZyB3aXRoIHRoZSBjb25maXJtYXRpb24gZW1haWxzIGhhdmluZyBsaW5rcyB0byB0aGUgYWRtaW4gc2VjdGlvbiAobmV3IGJ1ZyBvbmx5KS48L3A+DQo8L2xpPg0KPGxpPjxwPlZlcnNpb24gMS4wLjMuIC0gRmViIDIwMDY8L3A+DQo8cD5BZGRlZCB0aGUgKG9wdGlvbmFsKSBhYmlsaXR5IHRvIHJlcXVpcmUgdGhlIHVzZXIgZW50ZXIgdGhlIGVtYWlsIGFkZHJlc3MgdHdpY2U8L3A+DQo8cD5GaXhlZCBhIGJ1ZyB3aXRoIHRoZSB1c2VyZWRpdGVkIG1lc3NhZ2Ugbm90IGJlaW5nIHRocm93biB0aHJvdWdoIHNtYXJ0eTwvcD4NCjxwPkZpeGVkIHRoZSBkZWZhdWx0IHJlZ2lzdHJhdGlvbiB0ZW1wbGF0ZSBhIGJpdCB0byBhaWRlIGluIHZhbGlkYXRpb24gZm9yIG5vbiByZXF1aXJlZCBmaWVsZHMgKGZpeGVkIGEgd2FybmluZyk8L3A+DQo8cD5GaXggcHJvYmxlbXMgd2l0aCBpbmxpbmUgYW5kIG5vbi1pbmxpbmUgZm9ybXMgYW5kIGxpbmtzPC9wPg0KPHA+SGFuZGxlIGFub3RoZXIgY2FzZSB3aGVyZSB0aGUgYWRtaW4gbWF5IG5vdCBoYXZlIGNyZWF0ZWQgdGhlIHByb3BlciB0eXBlIG9mIGVtYWlsIHByb3BlcnR5PC9wPg0KPHA+Q2hhbmdlZCB0byByZXF1aXJlIENNUyAwLjEyLWJldGEyIGF0IGEgbWluaW11bSAoZm9yIHNhZmV0eSBwdXJwb3Nlcyk8L3A+DQo8L2xpPg0KPGxpPjxwPlZlcnNpb24gMS4wLjQuIC0gTWFyIDIwMDY8L3A+DQo8cD5Nb3JlIGNvbnRyb2wgb3ZlciB1c2VybmFtZSBhbmQgcGFzc3dvcmQgZmllbGQgc2l6ZXMgKGNvbnRyb2xsZWQgYnkgZmV1c2Vycyk8L3A+DQo8cD5Db25maXJtYXRpb24gb24gZWRpdGluZyBwcmVmZXJlbmNlczwvcD4NCjxwPlJlcXVpcmUgMC4xMiBwcm9wZXIgb2YgY21zIGFzIGEgbWluaW11bTwvcD4NCjwvbGk+DQo8bGk+PHA+VmVyc2lvbiAxLjEuMC4gLSBEZWMgMjAwNjwvcD4NCiAgICA8cD5BZGRlZCBldmVudHMgYW5kIDEuMCBjb21wYXRpYmlsaXR5PC9wPg0KICAgIDxwPkNhcHRjaGEgc3VwcG9ydCAodGhhbmtzIERpdHRtYW4pPC9wPg0KPC9saT4NCjxsaT48cD5WZXJzaW9uIDEuMS4xLiAtIEFwciAyMDA3PC9wPg0KICAgIDxwPk5vdyByZXF1aXJlIEZFVXNlcnMgMS4yLjAgKG1pbmltdW0pPC9wPg0KICAgIDxwPlN1cHBvcnQgZm9yIG11bHRpc2VsZWN0IGxpc3RzIGluIGZldXNlcnM8L3A+DQogICAgPHA+T3V0cHV0IHNvbWUgbW9yZSBmaWVsZHMgdG8gc21hcnR5IHRvIGFsbG93IGZvciBpbmNyZWFzZWQgYWNjZXNzaWJpbGl0eTwvcD4NCiAgICA8cD5TcGxpdCBjb2RlIG91dCBpbnRvIG11bHRpcGxlIGZpbGVzIHRvIHJlZHVjZSBvdmVyYWxsIG1lbW9yeSBmb290cHJpbnQ8L3A+DQogICAgPHA+SWdub3JlIGFsbCBpbWFnZSBmaWVsZHM8L3A+DQogICAgPHA+Q2hhbmdlIENhcHRjaGEgc3VwcG9ydCB0byBiZSBvbiBieSBkZWZhdWx0IGlmIHRoZSBDYXB0Y2hhIG1vZHVsZSBpcyBmb3VuZDwvcD4NCjwvbGk+DQo8L3VsPic7CiRsYW5nWydoZWxwJ10gPSAnPGgzPldoYXQgRG9lcyBUaGlzIERvPzwvaDM+DQo8cD5UaGlzIG1vZHVsZSBpcyBkZXNpZ25lZCB0byBhbGxvdyBmcm9udCBlbmQgdXNlcnMgdG8gcmVnaXN0ZXIgdGhlbXNlbHZlcyBhbmQgZmlsbCBpbiB0aGUgcmVxdWlyZWQgaW5mb3JtYXRpb24uICBJdCB0aGVuIHNlbmRzIGEgY29uZmlybWF0aW9uIGVtYWlsLCB3aXRoIGEgbGluayB0byBhIHNlY29uZCBwYWdlIHRoYXQgbXVzdCBiZSBjb21wbGV0ZWQgYmVmb3JlIHRoZSByZWdpc3RyYXRpb24gaXMgY29tcGxldGUuICBPbmNlIHJlZ2lzdHJhdGlvbiBpcyBjb21wbGV0ZSwgYSB1c2VyIGFjY291bnQgaXMgY3JlYXRlZCBpbiB0aGUgZnJvbnQgZW5kIHVzZXJzIG1vZHVsZS48L3A+DQo8cD5JbiBvcmRlciB0byB1c2UgdGhpcyBtb2R1bGUsIHlvdSBtdXN0IGNyZWF0ZSBhIHByb3BlcnR5IG9mIHR5cGUgIkVtYWlsIEFkZHJlc3MiIGluIHRoZSBGcm9udGVuZFVzZXJzIG1vZHVsZSwgYW5kIGFzc29jaWF0ZSB0aGF0IHByb3BlcnR5IHdpdGggdGhlIGdyb3VwIHRvIGJlIHVzZWQgZm9yIHNlbGYgcmVnaXN0cmF0aW9uLjwvcD4NCjxoMz5Ib3cgRG8gSSBVc2UgSXQ8L2gzPg0KPHA+WW91IHBsYWNlIHRoZSBmb2xsb3duZyB0YWcgaW50byB5b3VyIHBhZ2Uge2Ntc19tb2R1bGUgbW9kdWxlPVNlbGZSZWdpc3RyYXRpb24gZ3JvdXA9dXNlcmdyb3VwfTwvcD4NCjxwPllvdSBtdXN0IGhhdmUgcHJldmlvdXNseSBjcmVhdGVkIHByb3BlcnRpZXMgYW5kIHVzZXIgZ3JvdXBzIGluIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZSBpbiBvcmRlciBmb3IgdGhpcyB0byB3b3JrIHByb3Blcmx5LjwvcD4NCjxoMz5QYXJhbWV0ZXJzPC9oMz4NCjxwPjxzdHJvbmc+bW9kZTwvc3Ryb25nPiZuYnNwOzxlbT5vcHRpb25hbDwvZW0+IC0gcG9zc2libGUgdmFsdWVzIGFyZSAic2lnbnVwIiBhbmQgInZlcmlmeSIuICBJZiB0aGlzIHBhcmFtZXRlciBpcyBub3Qgc3BlY2lmaWVkLCAic2lnbnVwIiBpcyBhc3N1bWJlZC48L3A+DQo8cD48c3Ryb25nPmdyb3VwPC9zdHJvbmc+Jm5ic3A7PGVtPm9wdGlvbmFsPC9lbT4gLSBUaGlzIHBhcmFtZXRlciBpcyByZXF1aXJlZCBpZiBtb2RlIGlzICJzaWdudXAiLCBvciBpZiBtb2RlIGlzIGxlZnQgZW1wdHkuPC9wPg0KPHA+PHN0cm9uZz5ub2NhcHRjaGE8L3N0cm9uZz4mbmJzcDs8ZW0+b3B0aW9uYWw8L2VtPiAtIFRoaXMgd2lsbCBkaXNhYmxlIGNhcHRjaGEgb24gdGhlIHNpZ251cCBmb3JtLiBCeSBkZWZhdWx0LCBpZiB0aGUgQ2FwdGNoYSBtb2R1bGUgaXMgaW5zdGFsbGVkLCBjYXB0Y2hhIHN1cHBvcnQgaXMgcHJvdmlkZWQuICBUaGlzIHBhcmFtZXRlciBkaXNhYmxlcyBpdC48L3A+DQo8aDM+U3VwcG9ydDwvaDM+DQo8cD5UaGlzIG1vZHVsZSBkb2VzIG5vdCBpbmNsdWRlIGNvbW1lcmNpYWwgc3VwcG9ydC4gSG93ZXZlciwgdGhlcmUgYXJlIGEgbnVtYmVyIG9mIHJlc291cmNlcyBhdmFpbGFibGUgdG8gaGVscCB5b3Ugd2l0aCBpdDo8L3A+DQo8dWw+DQo8bGk+Rm9yIHRoZSBsYXRlc3QgdmVyc2lvbiBvZiB0aGlzIG1vZHVsZSwgRkFRcywgb3IgdG8gZmlsZSBhIEJ1ZyBSZXBvcnQgb3IgYnV5IGNvbW1lcmNpYWwgc3VwcG9ydCwgcGxlYXNlIHZpc2l0IGNhbGd1eVwncw0KbW9kdWxlIGhvbWVwYWdlIGF0IDxhIGhyZWY9Imh0dHA6Ly90ZWNoY29tLmR5bmRucy5vcmciPnRlY2hjb20uZHluZG5zLm9yZzwvYT4uPC9saT4NCjxsaT5BZGRpdGlvbmFsIGRpc2N1c3Npb24gb2YgdGhpcyBtb2R1bGUgbWF5IGFsc28gYmUgZm91bmQgaW4gdGhlIDxhIGhyZWY9Imh0dHA6Ly9mb3J1bS5jbXNtYWRlc2ltcGxlLm9yZyI+Q01TIE1hZGUgU2ltcGxlIEZvcnVtczwvYT4uPC9saT4NCjxsaT5UaGUgYXV0aG9yLCBjYWxndXkxMDAwLCBjYW4gb2Z0ZW4gYmUgZm91bmQgaW4gdGhlIDxhIGhyZWY9ImlyYzovL2lyYy5mcmVlbm9kZS5uZXQvI2NtcyI+Q01TIElSQyBDaGFubmVsPC9hPi48L2xpPg0KPGxpPkxhc3RseSwgeW91IG1heSBoYXZlIHNvbWUgc3VjY2VzcyBlbWFpbGluZyB0aGUgYXV0aG9yIGRpcmVjdGx5LjwvbGk+ICANCjwvdWw+DQo8cD5BcyBwZXIgdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBwcm92aWRlZCBhcy1pcy4gUGxlYXNlIHJlYWQgdGhlIHRleHQNCm9mIHRoZSBsaWNlbnNlIGZvciB0aGUgZnVsbCBkaXNjbGFpbWVyLjwvcD4NCg0KPGgzPkNvcHlyaWdodCBhbmQgTGljZW5zZTwvaDM+DQo8cD5Db3B5cmlnaHQgwqkgMjAwNSwgUm9iZXJ0IENhbXBiZWwgPGEgaHJlZj0ibWFpbHRvOmNhbGd1eTEwMDBAaG90bWFpbC5jb20iPjxjYWxndXkxMDAwQGhvdG1haWwuY29tPjwvYT4uIEFsbCBSaWdodHMgQXJlIFJlc2VydmVkLjwvcD4NCjxwPlRoaXMgbW9kdWxlIGhhcyBiZWVuIHJlbGVhc2VkIHVuZGVyIHRoZSA8YSBocmVmPSJodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwiPkdOVSBQdWJsaWMgTGljZW5zZTwvYT4uIFlvdSBtdXN0IGFncmVlIHRvIHRoaXMgbGljZW5zZSBiZWZvcmUgdXNpbmcgdGhlIG1vZHVsZS48L3A+DQonOwokbGFuZ1sndXRtYSddID0gJzE1Njg2MTM1My4xMjE4ODQ3NjQ0LjExNjc4OTU0NTUuMTE3OTA3ODg0OC4xMTc5MDgzNDk4LjQzJzsKJGxhbmdbJ3V0bXonXSA9ICcxNTY4NjEzNTMuMTE3OTA4MzQ5OC40My4yOC51dG1jY249KHJlZmVycmFsKXx1dG1jc3I9Zm9ydW0uY21zbWFkZXNpbXBsZS5vcmd8dXRtY2N0PS98dXRtY21kPXJlZmVycmFsJzsKPz4=]]></data>
	</file>
	<file>
	  <filename>/method.install.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKewogICAgJGRiID0gJHRoaXMtPkdldERiKCk7CiAgICAkZGljdCA9IE5ld0RhdGFEaWN0aW9uYXJ5KCRkYik7CiAgICAkdGFib3B0YXJyYXkgPSBhcnJheSgnbXlzcWwnID0+ICdUWVBFPU15SVNBTScpOwoKICAgIC8vIHZhbGlkYXRpb25zIGluIHByb2Nlc3MKICAgICRmbGRzID0gIgogICAgICAgICAgICAgaWQgSSBLRVksCiAgICAgICAgICAgICBncm91cF9pZCBJIE5PVCBOVUxMLAogICAgICAgICAgICAgdXNlcm5hbWUgQyg4MCkgTk9UIE5VTEwsCiAgICAgICAgICAgICBwYXNzc3dvcmQgQygzMikgTk9UIE5VTEwsCiAgICAgICAgICAgICBjb2RlIEMoMjApIE5PVCBOVUxMLAogICAgICAgICAgICAgY3JlYXRlZGF0ZSAiLkNNU19BRE9EQl9EVDsKICAgICRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNRTChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9zZWxmcmVnX3VzZXJzIiwgCgkJCQkgICAgICAkZmxkcywgJHRhYm9wdGFycmF5ICk7CiAgICAkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCAkc3FsYXJyYXkgKTsKICAgICRkYi0+Q3JlYXRlU2VxdWVuY2UoIGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3NlbGZyZWdfdXNlcnNfc2VxIiApOwoKICAgICRmbGRzID0gImlkIEkgS0VZLAogICAgICAgICAgICAgdXNlciBJIE5PVCBOVUxMLCAKICAgICAgICAgICAgIHRpdGxlIEMoMTAwKSBOT1QgTlVMTCwKICAgICAgICAgICAgIGRhdGEgQygyNTUpIAogICAgICAgICAgICAiOyAKICAgICRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNRTChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9zZWxmcmVnX3Byb3BlcnRpZXMiLAoJCQkJICAgICAgJGZsZHMsICR0YWJvcHRhcnJheSApOwogICAgJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSggJHNxbGFycmF5ICk7CiAgICAkZGItPkNyZWF0ZVNlcXVlbmNlKCBjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9zZWxmcmVnX3Byb3BlcnRpZXNfc2VxIiApOwoKIAogICAgLy8gcHJlZmVyZW5jZXMKICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdyZXF1aXJlX2VtYWlsX2NvbmZpcm1hdGlvbicsMSk7CiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgnc2VuZF9lbWFpbHNfdG8nLCdyb290QGxvY2FsaG9zdC5jb20nKTsKICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdub3RpZnlfb25fcmVnaXN0cmF0aW9uJywxKTsKICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdzZWxmcmVnX2VtYWlsY29uZmlybV9zdWJqZWN0JywKCQkJICR0aGlzLT5MYW5nKCdyZWdpc3RyYXRpb25fY29uZmlybWF0aW9uJykpOwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ3NlbGZyZWdfZW1haWx1c2VyZWRpdGVkX3N1YmplY3QnLAoJCQkgJHRoaXMtPkxhbmcoJ3JlZ2lzdHJhdGlvbl9pbmZvX2VkaXRlZCcpKTsKICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdzZWxmcmVnX2ZvcmNlX2VtYWlsX3R3aWNlJywwKTsKCiAgICAvLyB0ZW1wbGF0ZXMKICAgICR0aGlzLT5TZXRUZW1wbGF0ZSgnc2VsZnJlZ19yZWcxdGVtcGxhdGUnLCAkdGhpcy0+ZGZsdF9yZWdpc3RyYXRpb24xX3RlbXBsYXRlKTsKICAgICR0aGlzLT5TZXRUZW1wbGF0ZSgnc2VsZnJlZ19wb3N0cmVnMV90ZW1wbGF0ZScsICR0aGlzLT5kZmx0X3Bvc3RyZWcxX3RlbXBsYXRlKTsKICAgICR0aGlzLT5TZXRUZW1wbGF0ZSgnc2VsZnJlZ19yZWcydGVtcGxhdGUnLCAkdGhpcy0+ZGZsdF9yZWdpc3RyYXRpb24yX3RlbXBsYXRlKTsKICAgICR0aGlzLT5TZXRUZW1wbGF0ZSgnc2VsZnJlZ19lbWFpbGNvbmZpcm1fdGVtcGxhdGUnLCAkdGhpcy0+ZGZsdF9lbWFpbGNvbmZpcm1fdGVtcGxhdGUpOwogICAgJHRoaXMtPlNldFRlbXBsYXRlKCdzZWxmcmVnX2VtYWlsY29uZmlybV90ZXh0dGVtcGxhdGUnLCAkdGhpcy0+ZGZsdF9lbWFpbGNvbmZpcm1fdGV4dHRlbXBsYXRlKTsKICAgICR0aGlzLT5TZXRUZW1wbGF0ZSgnc2VsZnJlZ19lbWFpbHVzZXJlZGl0ZWRfdGVtcGxhdGUnLCAkdGhpcy0+ZGZsdF9lbWFpbHVzZXJlZGl0ZWRfdGVtcGxhdGUpOwogICAgJHRoaXMtPlNldFRlbXBsYXRlKCdzZWxmcmVnX2VtYWlsdXNlcmVkaXRlZF90ZXh0dGVtcGxhdGUnLCAkdGhpcy0+ZGZsdF9lbWFpbHVzZXJlZGl0ZWRfdGV4dHRlbXBsYXRlKTsKICAgICR0aGlzLT5TZXRUZW1wbGF0ZSgnc2VsZnJlZ19maW5hbG1lc3NhZ2VfdGVtcGxhdGUnLCAkdGhpcy0+ZGZsdF9maW5hbG1lc3NhZ2VfdGVtcGxhdGUpOwogICAgJHRoaXMtPlNldFRlbXBsYXRlKCdzZWxmcmVnX3NlbmRhbm90aGVyZW1haWxfdGVtcGxhdGUnLCAkdGhpcy0+ZGZsdF9zZW5kYW5vdGhlcmVtYWlsX3RlbXBsYXRlICk7CiAgICAkdGhpcy0+U2V0VGVtcGxhdGUoJ3NlbGZyZWdfcG9zdF9zZW5kYW5vdGhlcmVtYWlsX3RlbXBsYXRlJywgJHRoaXMtPmRmbHRfcG9zdF9zZW5kYW5vdGhlcmVtYWlsX3RlbXBsYXRlICk7CgogICAgLy8gUGVybWlzc2lvbnMKICAgICR0aGlzLT5DcmVhdGVQZXJtaXNzaW9uKCdNYW5hZ2UgUmVnaXN0ZXJpbmcgVXNlcnMnLAoJCQkgICAgJ01hbmFnZSBSZWdpc3RlcmluZyBVc2VycycpOwoKICAgIC8vIGV2ZW50cwogICAgJHRoaXMtPkNyZWF0ZUV2ZW50KCdvbk5ld1VzZXInKTsKICAgICR0aGlzLT5DcmVhdGVFdmVudCgnb25Vc2VyUmVnaXN0ZXJlZCcpOwp9Cj8+]]></data>
	</file>
	<file>
	  <filename>/method.uninstall.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKewogICAgJGRiID0gJHRoaXMtPkdldERiKCk7CiAgICAkZGljdCA9IE5ld0RhdGFEaWN0aW9uYXJ5KCAkZGIgKTsKICAgICRzcWxhcnJheSA9ICRkaWN0LT5Ecm9wVGFibGVTUUwoIGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3NlbGZyZWdfdXNlcnMiICk7CiAgICAkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CiAgICAkc3FsYXJyYXkgPSAkZGljdC0+RHJvcFRhYmxlU1FMKCBjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9zZWxmcmVnX3Byb3BlcnRpZXMiICk7CiAgICAkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CiAgICAkZGItPkRyb3BTZXF1ZW5jZSggY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfc2VsZnJlZ191c2Vyc19zZXEiICk7CiAgICAkZGItPkRyb3BTZXF1ZW5jZSggY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfc2VsZnJlZ19wcm9wZXJ0aWVzX3NlcSIgKTsKCiAgICAvLyBwcmVmZXJlbmNlcwogICAgJHRoaXMtPlJlbW92ZVByZWZlcmVuY2UoJ3JlcXVpcmVfZW1haWxfY29uZmlybWF0aW9uJyk7CiAgICAkdGhpcy0+UmVtb3ZlUHJlZmVyZW5jZSgnc2VuZF9lbWFpbHNfdG8nKTsKICAgICR0aGlzLT5SZW1vdmVQcmVmZXJlbmNlKCdub3RpZnlfb25fcmVnaXN0cmF0aW9uJyk7CiAgICAkdGhpcy0+UmVtb3ZlUHJlZmVyZW5jZSgnc2VsZnJlZ19lbWFpbGNvbmZpcm1fc3ViamVjdCcpOwogICAgJHRoaXMtPlJlbW92ZVByZWZlcmVuY2UoJ3NlbGZyZWdfZW1haWx1c2VyZWRpdGVkX3N1YmplY3QnKTsKICAgICR0aGlzLT5SZW1vdmVQcmVmZXJlbmNlKCdzZWxmcmVnX2ZvcmNlX2VtYWlsX3R3aWNlJyk7CgogICAgLy8gdGVtcGxhdGVzCiAgICAkdGhpcy0+RGVsZXRlVGVtcGxhdGUoJ3NlbGZyZWdfcmVnMXRlbXBsYXRlJyk7CiAgICAkdGhpcy0+RGVsZXRlVGVtcGxhdGUoJ3NlbGZyZWdfcG9zdHJlZzFfdGVtcGxhdGUnKTsKICAgICR0aGlzLT5EZWxldGVUZW1wbGF0ZSgnc2VsZnJlZ19yZWcydGVtcGxhdGUnKTsKICAgICR0aGlzLT5EZWxldGVUZW1wbGF0ZSgnc2VsZnJlZ19lbWFpbGNvbmZpcm1fdGVtcGxhdGUnKTsKICAgICR0aGlzLT5EZWxldGVUZW1wbGF0ZSgnc2VsZnJlZ19lbWFpbGNvbmZpcm1fdGV4dHRlbXBsYXRlJyk7CiAgICAkdGhpcy0+RGVsZXRlVGVtcGxhdGUoJ3NlbGZyZWdfZW1haWx1c2VyZWRpdGVkX3RlbXBsYXRlJyk7CiAgICAkdGhpcy0+RGVsZXRlVGVtcGxhdGUoJ3NlbGZyZWdfZW1haWx1c2VyZWRpdGVkX3RleHR0ZW1wbGF0ZScpOwogICAgJHRoaXMtPkRlbGV0ZVRlbXBsYXRlKCdzZWxmcmVnX2ZpbmFsbWVzc2FnZV90ZW1wbGF0ZScpOwogICAgJHRoaXMtPkRlbGV0ZVRlbXBsYXRlKCdzZWxmcmVnX3NlbmRhbm90aGVyZW1haWxfdGVtcGxhdGUnKTsKICAgICR0aGlzLT5EZWxldGVUZW1wbGF0ZSgnc2VsZnJlZ19wb3N0X3NlbmRhbm90aGVyZW1haWxfdGVtcGxhdGUnKTsKCiAgICAvLyBwZXJtaXNzaW9ucwogICAgJHRoaXMtPlJlbW92ZVBlcm1pc3Npb24oJ01vZGlmeSBTZWxmUmVnaXN0cmF0aW9uJyk7CiAgICAkdGhpcy0+UmVtb3ZlUGVybWlzc2lvbignTWFuYWdlIFJlZ2lzdGVyaW5nIFVzZXJzJyk7CgogICAgLy8gZXZlbnRzCiAgICAkdGhpcy0+UmVtb3ZlRXZlbnQoJ29uTmV3VXNlcicpOwogICAgJHRoaXMtPlJlbW92ZUV2ZW50KCdvblVzZXJSZWdpc3RlcmVkJyk7Cn0KPz4=]]></data>
	</file>
	<file>
	  <filename>/method.upgrade.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKewogICAgLy8gdGhpcyBwcmVmZXJlbmNlIGlzIG5vIGxvbmdlciBuZWVkZWQKICBzd2l0Y2goICRvbGR2ZXJzaW9uICkKICAgIHsKICAgIGNhc2UgJzEuMC4zJzoKICAgICAgewoJJHRoaXMtPlNldFByZWZlcmVuY2UoJ3NlbGZyZWdfZW1haWxjb25maXJtX3N1YmplY3QnLAoJCQkgICAgICR0aGlzLT5MYW5nKCdyZWdpc3RyYXRpb25fY29uZmlybWF0aW9uJykpOwoJJHRoaXMtPlNldFRlbXBsYXRlKCdzZWxmcmVnX2VtYWlsY29uZmlybV90ZXh0dGVtcGxhdGUnLCAkdGhpcy0+ZGZsdF9lbWFpbGNvbmZpcm1fdGV4dHRlbXBsYXRlKTsKCQoJJHRoaXMtPlNldFByZWZlcmVuY2UoJ3NlbGZyZWdfdXNlcmVkaXRlZF9zdWJqZWN0JywKCQkJICAgICAkdGhpcy0+TGFuZygncmVnaXN0cmF0aW9uX2NvbmZpcm1hdGlvbicpKTsKCSR0aGlzLT5TZXRQcmVmZXJlbmNlKCdzZWxmcmVnX2ZvcmNlX2VtYWlsX3R3aWNlJywwKTsKCSR0aGlzLT5TZXRUZW1wbGF0ZSgnc2VsZnJlZ191c2VyZWRpdGVkX3RlbXBsYXRlJywgJHRoaXMtPmRmbHRfZW1haWx1c2VyZWRpdGVkX3RlbXBsYXRlKTsKCSR0aGlzLT5TZXRUZW1wbGF0ZSgnc2VsZnJlZ191c2VyZWRpdGVkX3RleHR0ZW1wbGF0ZScsICR0aGlzLT5kZmx0X2VtYWlsdXNlcmVkaXRlZF90ZXh0dGVtcGxhdGUpOwoJJHRoaXMtPlNldFRlbXBsYXRlKCdzZWxmcmVnX3NlbmRhbm90aGVyZW1haWxfdGVtcGxhdGUnLCAkdGhpcy0+ZGZsdF9zZW5kYW5vdGhlcmVtYWlsX3RlbXBsYXRlICk7CgkkdGhpcy0+U2V0VGVtcGxhdGUoJ3NlbGZyZWdfcG9zdF9zZW5kYW5vdGhlcmVtYWlsX3RlbXBsYXRlJywgJHRoaXMtPmRmbHRfcG9zdF9zZW5kYW5vdGhlcmVtYWlsX3RlbXBsYXRlICk7CgkKCS8vIFBlcm1pc3Npb25zCgkkdGhpcy0+UmVtb3ZlUGVybWlzc2lvbignTW9kaWZ5IFNlbGZSZWdpc3RyYXRpb24nKTsKCSR0aGlzLT5DcmVhdGVQZXJtaXNzaW9uKCdNYW5hZ2UgUmVnaXN0ZXJpbmcgVXNlcnMnLAoJCQkJJ01hbmFnZSBSZWdpc3RlcmluZyBVc2VycycpOwoJLy8gbm90aWNlLCBubyBicmVyYWsKICAgICAgfQogICAgICAKICAgIGNhc2UgJzEuMC40JzoKICAgICAgewoJJHRoaXMtPkNyZWF0ZUV2ZW50KCdvbk5ld1VzZXInKTsKCSR0aGlzLT5DcmVhdGVFdmVudCgnb25Vc2VyUmVnaXN0ZXJlZCcpOwogICAgICB9CiAgICB9Cgp9Cj8+]]></data>
	</file>
	<file>
	  <filename>/SelfRegistration.module.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFNlbGZSZWdpc3RyYXRpb24gLSBBIG1vZHVsZSB0byBhbGxvdyB1c2VycyB0byByZWdpc3RlciB0aGVtc2VsdmVzCiMgV2l0aCBhIHdlYnNpdGUuCiMgVmVyc2lvbjogMS4xLjEgQ2FsZ3V5MTAwMAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCnJlcXVpcmVfb25jZShkaXJuYW1lKF9fRklMRV9fKS4iL2Z1bmN0aW9ucy5waHAiICk7CgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpjbGFzcyBTZWxmUmVnaXN0cmF0aW9uIGV4dGVuZHMgQ01TTW9kdWxlCnsKICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICBUaGUgZGVmYXVsdCB0ZW1wbGF0ZSB1c2VkIGZvciB0aGUgZmlyc3QgcmVnaXN0cmF0aW9uIGZvcm0KICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KICB2YXIgJGRmbHRfcmVnaXN0cmF0aW9uMV90ZW1wbGF0ZSA9ICcKPCEtLSBSZWdpc3RyYXRpb24gMSB0ZW1wbGF0ZSAtLT4KeyR0aXRsZX0Ke2lmICRtZXNzYWdlICE9IFwnXCd9CiAge2lmICRlcnJvciAhPSBcJ1wnfQogICAgPHA+PGZvbnQgY29sb3I9InJlZCI+eyRtZXNzYWdlfTwvZm9udD48L3A+CiAge2Vsc2V9CiAgICA8cD57JG1lc3NhZ2V9PC9wPgogIHsvaWZ9CnsvaWZ9Cnskc3RhcnRmb3JtfQp7aWYgJGNvbnRyb2xjb3VudCA+IDB9CiAgPGNlbnRlcj4KICA8dGFibGUgd2lkdGg9Ijc1JSI+Cntmb3JlYWNoIGZyb209JGNvbnRyb2xzIGl0ZW09Y29udHJvbH0KICA8dHI+CiAgICA8dGQ+eyRjb250cm9sLT5oaWRkZW59CiAgICB7aWYgJGNvbnRyb2wtPmNvbG9yICE9IFwnXCd9CiAgICAgIDxmb250IGNvbG9yPSJ7JGNvbnRyb2wtPmNvbG9yfSI+eyRjb250cm9sLT5wcm9tcHR9eyRjb250cm9sLT5tYXJrZXJ9PC9mb250PgogICAge2Vsc2V9CiAgICAgIHskY29udHJvbC0+cHJvbXB0fXskY29udHJvbC0+bWFya2VyfQogICAgey9pZn0KICAgIDwvdGQ+CiAgICA8dGQ+eyRjb250cm9sLT5jb250cm9sfTwvdGQ+CiAgPC90cj4Key9mb3JlYWNofQogIDwvdGFibGU+CiAgPC9jZW50ZXI+Cjxici8+CnsvaWZ9CntpZiAkY2FwdGNoYX0KeyRjYXB0Y2hhX3RpdGxlfTogeyRpbnB1dF9jYXB0Y2hhfTxiciAvPgogIHskY2FwdGNoYX08YnIgLz4Key9pZn0KIHskaGlkZGVufXskaGlkZGVuMn17JHN1Ym1pdH17JGNhbmNlbH08YnIvPgp7JG1zZ19zZW5kYW5vdGhlcmVtYWlsfSZuYnNwO3skbGlua19zZW5kYW5vdGhlcmVtYWlsfQp7JGVuZGZvcm19CjwhLS0gUmVnaXN0cmF0aW9uIDEgdGVtcGxhdGUgLS0+CiAnOwoKICB2YXIgJGRmbHRfcG9zdHJlZzFfdGVtcGxhdGUgPSAnCjwhLS0gUG9zdCBSZWdpc3RyYXRpb24gMSB0ZW1wbGF0ZSAtLT4KeyR0aXRsZX0Ke2lmICRtZXNzYWdlICE9IFwnXCd9CiAge2lmICRlcnJvciAhPSBcJ1wnfQogICAgPHA+PGZvbnQgY29sb3I9InJlZCI+eyRtZXNzYWdlfTwvZm9udD48L3A+CiAge2Vsc2V9CiAgICA8cD57JG1lc3NhZ2V9PC9wPgogIHsvaWZ9CnsvaWZ9CjxwPlRoYW5rIHlvdSB7JHVzZXJuYW1lfSBmb3IgcmVnaXN0ZXJpbmcgd2l0aCB7JHNpdGVuYW1lfS4gIEFuIGVtYWlsIGhhcyBiZWVuIHNlbnQgdG8geyRlbWFpbH0gd2l0aCBpbnN0cnVjdGlvbnMgb24gaG93IHRvIGNvbnRpbnVlIHRoZSByZWdpc3RyYXRpb24gcHJvY2VzczwvcD4KPCEtLSBQb3N0IFJlZ2lzdHJhdGlvbiAxIHRlbXBsYXRlIC0tPgonOwoKICB2YXIgJGRmbHRfcmVnaXN0cmF0aW9uMl90ZW1wbGF0ZSA9ICcKPCEtLSBSZWdpc3RyYXRpb24gMSB0ZW1wbGF0ZSAtLT4KeyR0aXRsZX0Ke2lmICRtZXNzYWdlICE9IFwnXCd9CiAge2lmICRlcnJvciAhPSBcJ1wnfQogICAgPHA+PGZvbnQgY29sb3I9InJlZCI+eyRtZXNzYWdlfTwvZm9udD48L3A+CiAge2Vsc2V9CiAgICA8cD57JG1lc3NhZ2V9PC9wPgogIHsvaWZ9CnsvaWZ9Cnskc3RhcnRmb3JtfQogIDxjZW50ZXI+CiAgPHRhYmxlIHdpZHRoPSI3NSUiPgogIDx0cj4KICAgIDx0ZD57JHByb21wdF91c2VybmFtZX08L2ZvbnQ+CiAgICA8L3RkPgogICAgPHRkPnskaW5wdXRfdXNlcm5hbWV9PC90ZD4KICA8L3RyPgogIDx0cj4KICAgIDx0ZD57JHByb21wdF9wYXNzd29yZH08L2ZvbnQ+CiAgICA8L3RkPgogICAgPHRkPnskaW5wdXRfcGFzc3dvcmR9PC90ZD4KICA8L3RyPgogIDx0cj4KICAgIDx0ZD57JHByb21wdF9jb2RlfTwvZm9udD4KICAgIDwvdGQ+CiAgICA8dGQ+eyRpbnB1dF9jb2RlfTwvdGQ+CiAgPC90cj4KICA8L3RhYmxlPgogIDwvY2VudGVyPgo8YnIvPgogeyRoaWRkZW59eyRoaWRkZW4yfXskc3VibWl0fXskY2FuY2VsfQp7JGVuZGZvcm19CjwhLS0gUmVnaXN0cmF0aW9uIDIgdGVtcGxhdGUgLS0+CiAnOyAgCgogIHZhciAkZGZsdF9lbWFpbGNvbmZpcm1fdGVtcGxhdGUgPSAnCjwhLS0gRW1haWxDb25maXJtIHRlbXBsYXRlIC0tPgo8aHRtbD4KPGJvZHk+CjxwPkdyZWV0aW5ncyB7JG5hbWV9IHdlbGNvbWUgdG8gdGhlIHNpdGUuICBUaGlzIGVtYWlsIGlzIGJlaW5nIHNlbnQgYmVjYXVzZSBzb21lYm9keSByZWdpc3RlcmVkIGZvciBhY2Nlc3MgdG8geyRzaXRlbmFtZX0gdXNpbmcgdGhpcyBlbWFpbCBhZGRyZXNzLiBJZiB0aGlzIHdhcyB5b3UsIHBsZWFzZSBjbGljayBvbiB0aGUgZm9sbG93aW5nIGxpbmsgYW5kIGVudGVyIHlvdXIgdXNlcm5hbWUsIHBhc3N3b3JkLCBhbmQgdGhlIHVuaXF1ZSBjb2RlIGJlbG93PC9wPgogICA8cD5Gb2xsb3cgdGhpcyBsaW5rOiB7JGxpbmt9PC9wPgogICA8cD5vciB0aGlzIGxpbms6IHskc21hbGxsaW5rfTwvcD4KICAgPHA+Q29kZTogeyRjb2RlfTwvcD4KPC9ib2R5Pgo8L2h0bWw+CjwhLS0gRW1haWxDb25maXJtIHRlbXBsYXRlIC0tPgonOwoKICB2YXIgJGRmbHRfZW1haWxjb25maXJtX3RleHR0ZW1wbGF0ZSA9ICcKR3JlZXRpbmdzIHskbmFtZX0gd2VsY29tZSB0byB0aGUgc2l0ZS4gIFRoaXMgZW1haWwgaXMgYmVpbmcgc2VudCBiZWNhdXNlIHNvbWVib2R5IHJlZ2lzdGVyZWQgZm9yIGFjY2VzcyB0byB7JHNpdGVuYW1lfSB1c2luZyB0aGlzIGVtYWlsIGFkZHJlc3MuIElmIHRoaXMgd2FzIHlvdSwgcGxlYXNlIGNsaWNrIG9uIHRoZSBmb2xsb3dpbmcgbGluayBhbmQgZW50ZXIgeW91ciB1c2VybmFtZSwgcGFzc3dvcmQsIGFuZCB0aGUgdW5pcXVlIGNvZGUgYmVsb3cuCgpGb2xsb3cgdGhpcyBsaW5rOiB7JHVybH0Kb3IgdGhpcyBsaW5rOiB7JHNtYWxsdXJsfTwvcD4KQ29kZTogeyRjb2RlfQonOwoKICB2YXIgJGRmbHRfZW1haWx1c2VyZWRpdGVkX3RlbXBsYXRlID0gJwo8IS0tIEVtYWlsVXNlckVkaXRlZCB0ZW1wbGF0ZSAtLT4KPGh0bWw+Cjxib2R5Pgo8cD5HcmVldGluZ3MgeyRuYW1lfSB3ZWxjb21lIHRvIHRoZSBzaXRlLiAgVGhpcyBlbWFpbCBpcyBiZWluZyBzZW50IGJlY2F1c2UsIGFsdGhvdWdoIHlvdSBoYXZlIGFscmVhZHkgcmVnaXN0ZXJlZCB3aXRoIHskc2l0ZW5hbWV9LCB0aGVyZSB3YXMgYW4gZXJyb3IgaW4geW91ciBpbnB1dC4gIFRoZSBhZG1pbmlzdHJhdG9yIGhhcyBkb25lIGhpcyBiZXN0IHRvIGNvcnJlY3QgdGhpcyBkYXRhLCBhbmQgeW91IGFyZSBub3cgYmVpbmcgc2VudCBhbiB1cGRhdGVkIHJlZ2lzdHJhdGlvbiBmb3JtLiBQbGVhc2UgY2xpY2sgb24gdGhlIGZvbGxvd2luZyBsaW5rIGFuZCBlbnRlciB5b3VyIHVzZXJuYW1lLCBwYXNzd29yZCwgYW5kIHRoZSB1bmlxdWUgY29kZSBiZWxvdzwvcD4KICAgPHA+Rm9sbG93IHRoaXMgbGluazogeyRsaW5rfTwvcD4KICAgPHA+b3IgdGhpcyBsaW5rOiB7JHNtYWxsbGlua308L3A+CiAgIDxwPlBhc3N3b3JkOiB7JHBhc3N3b3JkfTwvcD4KICAgPHA+Q29kZTogeyRjb2RlfTwvcD4KPC9ib2R5Pgo8L2h0bWw+CjwhLS0gRW1haWxVc2VyRWRpdGVkIHRlbXBsYXRlIC0tPgonOwoKICB2YXIgJGRmbHRfZW1haWx1c2VyZWRpdGVkX3RleHR0ZW1wbGF0ZSA9ICcKR3JlZXRpbmdzIHskbmFtZX0gd2VsY29tZSB0byB0aGUgc2l0ZS4gIFRoaXMgZW1haWwgaXMgYmVpbmcgc2VudCBiZWNhdXNlLCBhbHRob3VnaCB5b3UgaGF2ZSBhbHJlYWR5IHJlZ2lzdGVyZWQgd2l0aCB7JHNpdGVuYW1lfSwgdGhlcmUgd2FzIGFuIGVycm9yIGluIHlvdXIgaW5wdXQuICBUaGUgYWRtaW5pc3RyYXRvciBoYXMgZG9uZSBoaXMgYmVzdCB0byBjb3JyZWN0IHRoaXMgZGF0YSwgYW5kIHlvdSBhcmUgbm93IGJlaW5nIHNlbnQgYW4gdXBkYXRlZCByZWdpc3RyYXRpb24gZm9ybS4gUGxlYXNlIGNsaWNrIG9uIHRoZSBmb2xsb3dpbmcgbGluayBhbmQgZW50ZXIgeW91ciB1c2VybmFtZSwgcGFzc3dvcmQsIGFuZCB0aGUgdW5pcXVlIGNvZGUgYmVsb3cKICAgRm9sbG93IHRoaXMgbGluazogeyR1cmx9CiAgICAgb3IgdGhpcyBsaW5rOiB7JHNtYWxsdXJsfTwvcD4KICAgUGFzc3dvcmQ6IHskcGFzc3dvcmR9CiAgIENvZGU6IHskY29kZX0KJzsKCiAgdmFyICRkZmx0X2ZpbmFsbWVzc2FnZV90ZW1wbGF0ZSA9ICcKPCEtLSBGaW5hbE1lc3NhZ2UgVGVtcGxhdGUgLS0+CjxwPldlbGNvbWUgeyR1c2VybmFtZX0gdG8geyRzaXRlbmFtZX0uICBZb3VyIHJlZ2lzdHJhdGlvbiBpcyBjb21wbGV0ZS4gIFBsZWFzZSBsb2dpbiB0byBjb250aW51ZTwvcD4KPCEtLSBGaW5hbE1lc3NhZ2UgVGVtcGxhdGUgLS0+CiAgJzsKCiAgdmFyICRkZmx0X3NlbmRhbm90aGVyZW1haWxfdGVtcGxhdGUgPSAnCjwhLS0gU2VuZEFub3RoZXJFbWFpbCBUZW1wbGF0ZSAtLT4KeyR0aXRsZX0Ke2lmICRtZXNzYWdlICE9IFwnXCd9CiAge2lmICRlcnJvciAhPSBcJ1wnfQogICAgPHA+PGZvbnQgY29sb3I9InJlZCI+eyRtZXNzYWdlfTwvZm9udD48L3A+CiAge2Vsc2V9CiAgICA8cD57JG1lc3NhZ2V9PC9wPgogIHsvaWZ9CnsvaWZ9CjxwPkkgZGlkblwndCByZWNlaXZlIG15IGNvbmZpcm1hdGlvbiBlbWFpbCwgcGxlYXNlIHNlbmQgYW5vdGhlciBvbmUuPC9wPgo8cD5NeSBVc2VybmFtZSBpczogeyRzdGFydGZvcm19eyRpbnB1dF91c2VybmFtZX0mbmJzcDt7JHN1Ym1pdH17JGVuZGZvcm19PC9wPgo8IS0tIFNlbmRBbm90aGVyRW1haWwgVGVtcGxhdGUgLS0+CiAgJzsKCiAgdmFyICRkZmx0X3Bvc3Rfc2VuZGFub3RoZXJlbWFpbF90ZW1wbGF0ZSA9ICcKPCEtLSBQb3N0IFNlbmRBbm90aGVyRW1haWwgdGVtcGxhdGUgLS0+CnskdGl0bGV9CntpZiAkbWVzc2FnZSAhPSBcJ1wnfQogIHtpZiAkZXJyb3IgIT0gXCdcJ30KICAgIDxwPjxmb250IGNvbG9yPSJyZWQiPnskbWVzc2FnZX08L2ZvbnQ+PC9wPgogIHtlbHNlfQogICAgPHA+eyRtZXNzYWdlfTwvcD4KICB7L2lmfQp7L2lmfQo8cD5UaGFuayB5b3UgeyR1c2VybmFtZX0gZm9yIHJlZ2lzdGVyaW5nIHdpdGggeyRzaXRlbmFtZX0uICBXZSBhcmUgc29ycnkgeW91IGhhZCBkaWZmaWN1bHR5IHJlY2VpdmluZyB5b3VyIGVtYWlsLiAgQSBzZWNvbmQgZW1haWwgaGFzIGJlZW4gc2VudCB0byB7JGVtYWlsfSB3aXRoIGluc3RydWN0aW9ucyBvbiBob3cgdG8gY29udGludWUgdGhlIHJlZ2lzdHJhdGlvbiBwcm9jZXNzPC9wPgo8IS0tIFBvc3QgU2VuZEFub3RoZXJFbWFpbCB0ZW1wbGF0ZSAtLT4KJzsKCgogIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgIEdldE5hbWUoKQogICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwogIGZ1bmN0aW9uIEdldE5hbWUoKQogIHsKICAgIHJldHVybiAnU2VsZlJlZ2lzdHJhdGlvbic7CiAgfQoKCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgR2V0RnJpZW5kbHlOYW1lKCkKICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KICBmdW5jdGlvbiBHZXRGcmllbmRseU5hbWUoKQogIHsKICAgIHJldHVybiAkdGhpcy0+TGFuZygnZnJpZW5kbHluYW1lJyk7CiAgfQoKCQogIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgIE1pbmltdW1DTVNWZXJzaW9uKCkKICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KICBmdW5jdGlvbiBNaW5pbXVtQ01TVmVyc2lvbigpCiAgewogICAgcmV0dXJuICIxLjIiOwogIH0KCiAgCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgR2V0VmVyc2lvbigpCiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCiAgZnVuY3Rpb24gR2V0VmVyc2lvbigpCiAgewogICAgcmV0dXJuICcxLjEuMic7CiAgfQoKCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgR2V0SGVscCgpCiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCiAgZnVuY3Rpb24gR2V0SGVscCgpCiAgewogICAgcmV0dXJuICR0aGlzLT5MYW5nKCdoZWxwJyk7CiAgfQoKICAKICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICBHZXRBdXRob3IoKQogICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwogIGZ1bmN0aW9uIEdldEF1dGhvcigpCiAgewogICAgcmV0dXJuICdDYWxndXkxMDAwJzsKICB9CgoKICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICBHZXRBdXRob3JFbWFpbCgpCiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCiAgZnVuY3Rpb24gR2V0QXV0aG9yRW1haWwoKQogIHsKICAgIHJldHVybiAnY2FsZ3V5MTAwMEBob3RtYWlsLmNvbSc7CiAgfQoKICAKICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICBHZXRDaGFuZ2VMb2coKQogICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwogIGZ1bmN0aW9uIEdldENoYW5nZUxvZygpCiAgewogICAgcmV0dXJuICR0aGlzLT5MYW5nKCdjaGFuZ2Vsb2cnKTsKICB9CgogIAogIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgIElzUGx1Z2luTW9kdWxlKCkKICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KICBmdW5jdGlvbiBJc1BsdWdpbk1vZHVsZSgpCiAgewogICAgcmV0dXJuIHRydWU7CiAgfQoKCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgSGFzQWRtaW4oKQogICBUaGlzIGZ1bmN0aW9uIHJldHVybnMgYSBib29sZWFuIHZhbHVlLCBkZXBlbmRpbmcgb24KICAgd2hldGhlciB5b3VyIG1vZHVsZSBhZGRzIGFueXRoaW5nIHRvIHRoZSBBZG1pbiBhcmVhIG9mCiAgIHRoZSBzaXRlLiBGb3IgdGhlIHJlc3Qgb2YgdGhlc2UgY29tbWVudHMsIEknbGwgYmUgY2FsbGluZwogICB0aGUgYWRtaW4gcGFydCBvZiB5b3VyIG1vZHVsZSB0aGUgIkFkbWluIFBhbmVsIiBmb3IKICAgd2FudCBvZiBhIGJldHRlciB0ZXJtLgogICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwogIGZ1bmN0aW9uIEhhc0FkbWluKCkKICB7CiAgICByZXR1cm4gdHJ1ZTsKICB9CgoKICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICBHZXRBZG1pblNlY3Rpb24oKQogICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwogIGZ1bmN0aW9uIEdldEFkbWluU2VjdGlvbigpCiAgewogICAgcmV0dXJuICd1c2Vyc2dyb3Vwcyc7CiAgfQoKCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgR2V0RXZlbnREZXNjcmlwdGlvbigpCiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCiAgZnVuY3Rpb24gR2V0RXZlbnREZXNjcmlwdGlvbiggJGV2ZW50bmFtZSApCiAgewogICAgcmV0dXJuICR0aGlzLT5MYW5nKCdldmVudF9kZXNjcmlwdGlvbl8nLiRldmVudG5hbWUgKTsKICB9CgoKICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICBHZXRFdmVudERlc2NyaXB0aW9uKCkKICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KICBmdW5jdGlvbiBHZXRFdmVudEhlbHAoICRldmVudG5hbWUgKQogIHsKICAgIHJldHVybiAkdGhpcy0+TGFuZygnZXZlbnRfaGVscF8nLiRldmVudG5hbWUgKTsKICB9CgoKICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICBHZXRBZG1pbkRlc2NyaXB0aW9uKCkKICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KICBmdW5jdGlvbiBHZXRBZG1pbkRlc2NyaXB0aW9uKCkKICB7CiAgICByZXR1cm4gJHRoaXMtPkxhbmcoJ21vZGRlc2NyaXB0aW9uJyk7CiAgfQogIAoKICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICBWaXNpYmxlVG9BZG1pblVzZXIoKQogICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwogIGZ1bmN0aW9uIFZpc2libGVUb0FkbWluVXNlcigpCiAgewogICAgJHN0YXR1cyA9ICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBSZWdpc3RlcmluZyBVc2VycycpCiAgICAgIHx8ICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBTaXRlIFByZWZlcmVuY2VzJykKICAgICAgfHwgJHRoaXMtPkNoZWNrUGVybWlzc2lvbignTW9kaWZ5IFRlbXBsYXRlcycpOwogICAgcmV0dXJuICRzdGF0dXM7CiAgfQoKCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgR2V0RGVwZW5kZW5jaWVzKCkKICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KICBmdW5jdGlvbiBHZXREZXBlbmRlbmNpZXMoKQogIHsKICAgIHJldHVybiBhcnJheSggJ0NNU01haWxlcicgPT4gJzEuNzMuOScsCgkJICAnRnJvbnRFbmRVc2VycycgPT4gJzEuMycgKTsKICB9CiAgCgogIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgIFNldFBhcmFtZXRlcnMoKQogICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwogIGZ1bmN0aW9uIFNldFBhcmFtZXRlcnMoKQogIHsKICAgICR0aGlzLT5SZWdpc3Rlck1vZHVsZVBsdWdpbigpOwogICAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ21vZGUnLENMRUFOX1NUUklORyk7CiAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnbm9jYXB0Y2hhJyxDTEVBTl9JTlQpOwogICAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2dyb3VwJyxDTEVBTl9TVFJJTkcpOwogIH0KCgogIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgIEluc3RhbGxQb3N0TWVzc2FnZSgpCiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCiAgZnVuY3Rpb24gSW5zdGFsbFBvc3RNZXNzYWdlKCkKICB7CiAgICAvLyBwZXJtaXNzaW9ucwogICAgcmV0dXJuICR0aGlzLT5MYW5nKCdwb3N0aW5zdGFsbCcpOwoKICB9CgoKICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICBVbmluc3RhbGxQb3N0TWVzc2FnZSgpCiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCiAgZnVuY3Rpb24gVW5pbnN0YWxsUG9zdE1lc3NhZ2UoKQogIHsKICAgIHJldHVybiAkdGhpcy0+TGFuZygncG9zdHVuaW5zdGFsbCcpOwogIH0KCgogIGZ1bmN0aW9uIG15R2V0UGFnZU5hbWUoICRhbGlhc29yaWQgKQogIHsKICAgICRvYmogPSBDb250ZW50TWFuYWdlcjo6TG9hZFBhZ2VGcm9tQWxpYXMoICRhbGlhc29yaWQgKTsKICAgIHJldHVybiAkb2JqLT5OYW1lKCk7CiAgfQoKCiAgZnVuY3Rpb24gbXlSZWRpcmVjdFRvVGFiKCAkaWQsICR0YWIsICRwYXJhbXMgPSAnJyApCiAgewogICAgJHBhcm1zID0gYXJyYXkoKTsKICAgIGlmKCBpc19hcnJheSggJHBhcmFtcyApICkKICAgICAgewoJJHBhcm1zID0gJHBhcmFtczsKICAgICAgfQogICAgJHBhcm1zWydhY3RpdmVfdGFiJ10gPSAkdGFiOwogICAgJHRoaXMtPm15UmVkaXJlY3QoICRpZCwgJ2RlZmF1bHRhZG1pbicsICcnLCAkcGFybXMgKTsKICB9CgoKICBmdW5jdGlvbiBteVJlZGlyZWN0KCAkaWQsICRhY3Rpb24sICRyZXR1cm5pZCwgJHBhcmFtcyA9ICcnICkKICB7CiAgICAvLyB1bnNldCBhbnkgcGFzc3dvcmQgdGhpbmdzIAogICAgdW5zZXQoICRwYXJhbXNbJ2hpZGRlbl9wYXNzd29yZCddICk7CiAgICB1bnNldCggJHBhcmFtc1snaGlkZGVuX3JlcGVhdHBhc3N3b3JkJ10gKTsKICAgIHVuc2V0KCAkcGFyYW1zWydpbnB1dF9wYXNzd29yZCddICk7CiAgICB1bnNldCggJHBhcmFtc1snaW5wdXRfcmVwZWF0cGFzc3dvcmQnXSApOwogICAgdW5zZXQoICRwYXJhbXNbJ3Bhc3N3b3JkJ10gKTsKICAgIHVuc2V0KCAkcGFyYW1zWydyZXBlYXRwYXNzd29yZCddICk7CgogICAgdW5zZXQoICRwYXJhbXNbJ2FjdGlvbiddICk7CiAgICAkdGhpcy0+UmVkaXJlY3QoICRpZCwgJGFjdGlvbiwgJHJldHVybmlkLCAkcGFyYW1zLCB0cnVlICk7CiAgfQoKCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgRG9BY3Rpb24oJGFjdGlvbiwgJGlkLCAkcGFyYW1zLCAkcmV0dXJuX2lkKQogICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwogIGZ1bmN0aW9uIERvQWN0aW9uKCRhY3Rpb24sICRpZCwgJHBhcmFtcywgJHJldHVybmlkPS0xKQogIHsKICAgIHN3aXRjaCAoJGFjdGlvbikKICAgICAgewogICAgICBjYXNlICdkZWZhdWx0YWRtaW4nOgoJewoJICByZXF1aXJlX29uY2UoZGlybmFtZShfX0ZJTEVfXykuJy9mdW5jdGlvbnMuYWRtaW5wYW5lbC5waHAnKTsKCSAgX0Rpc3BsYXlBZG1pblBhbmVsKCAkdGhpcywgJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQgKTsKCSAgYnJlYWs7Cgl9CiAgICAgIGNhc2UgJ2RlbGV0ZXRlbXB1c2VyJzoKCXsKCSAgaWYoICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01hbmFnZSBSZWdpc3RlcmluZyBVc2VycycgKSApCgkgICAgewoJICAgICAgJHRoaXMtPl9Eb0RlbGV0ZVVzZXIoICRpZCwgJHBhcmFtcywgJHJldHVybmlkICk7CgkgICAgfQoJICBlbHNlCgkgICAgewoJICAgICAgJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAKCQkJCSAgICAgICAkdGhpcy0+TGFuZygnYWNjZXNzZGVuaWVkJykpOwoJICAgIH0KCSAgYnJlYWs7Cgl9CiAgICAgIGNhc2UgJ2RvX2RlbGV0ZXVzZXJzYnVsayc6Cgl7CgkgIGlmKCAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdNYW5hZ2UgUmVnaXN0ZXJpbmcgVXNlcnMnICkgKQoJICAgIHsKCSAgICAgICR0aGlzLT5fRG9EZWxldGVCdWxrVXNlcnMoICRpZCwgJHBhcmFtcywgJHJldHVybmlkICk7CgkgICAgfQoJICBlbHNlCgkgICAgewoJICAgICAgJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAKCQkJCSAgICAgICAkdGhpcy0+TGFuZygnYWNjZXNzZGVuaWVkJykpOwoJICAgIH0KCSAgYnJlYWs7Cgl9CiAgICAgIGNhc2UgJ3NlbmRhbm90aGVyZW1haWwnOgoJewoJICAkdGhpcy0+X1NlbmRBbm90aGVyUmVnRW1haWwoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQgKTsKCSAgYnJlYWs7Cgl9CiAgICAgIGNhc2UgJ3NldHByZWZzJzoKCXsKCSAgaWYoICR0aGlzLT5DaGVja1Blcm1pc3Npb24oICdNb2RpZnkgU2l0ZSBQcmVmZXJlbmNlcycgKSApCgkgICAgewoJICAgICAgJHRoaXMtPl9TZXRBZG1pblByZWZlcmVuY2VzKCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCApOwoJICAgIH0KCSAgZWxzZQoJICAgIHsKCSAgICAgICR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwgCgkJCQkgICAgICAgJHRoaXMtPkxhbmcoJ2FjY2Vzc2RlbmllZCcpKTsKCSAgICB9CgkgIGJyZWFrOwoJfQogICAgICBjYXNlICdzZXRfcmVnMXRlbXBsYXRlJzoKCXsKCSAgaWYoICR0aGlzLT5DaGVja1Blcm1pc3Npb24oICdNb2RpZnkgVGVtcGxhdGVzJyApICkKCSAgICB7CgkgICAgICAkdGhpcy0+X1NldEFkbWluUmVnMVRlbXBsYXRlKCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCApOwoJICAgIH0KCSAgZWxzZQoJICAgIHsKCSAgICAgICR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwgCgkJCQkgICAgICAgJHRoaXMtPkxhbmcoJ2FjY2Vzc2RlbmllZCcpKTsKCSAgICB9CgkgIGJyZWFrOwoJfQogICAgICBjYXNlICdzZXRfcmVnMnRlbXBsYXRlJzoKCXsKCSAgaWYoICR0aGlzLT5DaGVja1Blcm1pc3Npb24oICdNb2RpZnkgVGVtcGxhdGVzJyApICkKCSAgICB7CgkgICAgICAkdGhpcy0+X1NldEFkbWluUmVnMlRlbXBsYXRlKCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCApOwoJICAgIH0KCSAgZWxzZQoJICAgIHsKCSAgICAgICR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwgCgkJCQkgICAgICAgJHRoaXMtPkxhbmcoJ2FjY2Vzc2RlbmllZCcpKTsKCSAgICB9CgkgIGJyZWFrOwoJfQogICAgICBjYXNlICdzZXRfZW1haWxjb25maXJtX3RlbXBsYXRlJzoKCXsKCSAgaWYoICR0aGlzLT5DaGVja1Blcm1pc3Npb24oICdNb2RpZnkgVGVtcGxhdGVzJyApICkKCSAgICB7CgkgICAgICAkdGhpcy0+X1NldEFkbWluRW1haWxDb25maXJtVGVtcGxhdGUoICRpZCwgJHBhcmFtcywgJHJldHVybmlkICk7CgkgICAgfQoJICBlbHNlCgkgICAgewoJICAgICAgJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAKCQkJCSAgICAgICAkdGhpcy0+TGFuZygnYWNjZXNzZGVuaWVkJykpOwoJICAgIH0KCSAgYnJlYWs7Cgl9CiAgICAgIGNhc2UgJ3NldF9lbWFpbHVzZXJlZGl0ZWRfdGVtcGxhdGUnOgoJewoJICBpZiggJHRoaXMtPkNoZWNrUGVybWlzc2lvbiggJ01vZGlmeSBUZW1wbGF0ZXMnICkgKQoJICAgIHsKCSAgICAgICR0aGlzLT5fU2V0QWRtaW5FbWFpbFVzZXJFZGl0ZWRUZW1wbGF0ZSggJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQgKTsKCSAgICB9CgkgIGVsc2UKCSAgICB7CgkgICAgICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsIAoJCQkJICAgICAgICR0aGlzLT5MYW5nKCdhY2Nlc3NkZW5pZWQnKSk7CgkgICAgfQoJICBicmVhazsKCX0KICAgICAgY2FzZSAnc2V0X2ZpbmFsbWVzc2FnZV90ZW1wbGF0ZSc6Cgl7CgkgIGlmKCAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCAnTW9kaWZ5IFRlbXBsYXRlcycgKSApCgkgICAgewoJICAgICAgJHRoaXMtPl9TZXRBZG1pbkZpbmFsTWVzc2FnZVRlbXBsYXRlKCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCApOwoJICAgIH0KCSAgZWxzZQoJICAgIHsKCSAgICAgICR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwgCgkJCQkgICAgICAgJHRoaXMtPkxhbmcoJ2FjY2Vzc2RlbmllZCcpKTsKCSAgICB9CgkgIGJyZWFrOwoJfQogICAgICBjYXNlICdzZXRfc2VuZGFub3RoZXJlbWFpbF90ZW1wbGF0ZSc6Cgl7CgkgIGlmKCAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCAnTW9kaWZ5IFRlbXBsYXRlcycgKSApCgkgICAgewoJICAgICAgJHRoaXMtPl9TZXRBZG1pblNlbmRBbm90aGVyRW1haWxUZW1wbGF0ZSggJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQgKTsKCSAgICB9CgkgIGVsc2UKCSAgICB7CgkgICAgICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsIAoJCQkJICAgICAgICR0aGlzLT5MYW5nKCdhY2Nlc3NkZW5pZWQnKSk7CgkgICAgfQoJICBicmVhazsKCX0KICAgICAgY2FzZSAnZGVmYXVsdCc6CiAgICAgIGNhc2UgJ2RvX2VkaXR1c2VyJzoKICAgICAgY2FzZSAnZWRpdHRlbXB1c2VyJzoKICAgICAgY2FzZSAncmVndXNlcic6CiAgICAgIGNhc2UgJ3ZlcmlmeXVzZXInOgoJewoJICBwYXJlbnQ6OkRvQWN0aW9uKCRhY3Rpb24sICRpZCwgJHBhcmFtcywgJHJldHVybmlkICk7CgkgIGJyZWFrOwoJfQogICAgICB9CiAgfQoKCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgX0NyZWF0ZUZyb250ZW5kVXNlcigkaWQsICRwYXJhbXMsICRyZXR1cm5faWQgKQogICBOT1QgUEFSVCBPRiBUSEUgTU9EVUxFIEFQSQogICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwogIGZ1bmN0aW9uIF9DcmVhdGVGcm9udGVuZFVzZXIoICR0bXBpZCwgJGdyb3VwX2lkLCAkdXNlcm5hbWUsICRwYXNzd29yZCApCiAgewogICAgJGZldXNlcnMgPSAkdGhpcy0+R2V0TW9kdWxlSW5zdGFuY2UoJ0Zyb250RW5kVXNlcnMnKTsKICAgIGlmKCAhJGZldXNlcnMgKQogICAgICB7CglyZXR1cm4gJHRoaXMtPkxhbmcoJ2Vycm9yX25vZmV1c2Vyc21vZHVsZScpOwogICAgICB9CgogICAgLy8gdG9kbywgZmlndXJlIG91dCB3aGVuIHVzZXJzIHNob3VsZCBleHBpcmUKICAgICRleHBpcmVzID0gc3RydG90aW1lKCcrNSB5ZWFycycpOwogICAgJHJlc3VsdCA9ICRmZXVzZXJzLT5BZGRVc2VyKCAkdXNlcm5hbWUsICRwYXNzd29yZCwgJGV4cGlyZXMgKTsKICAgIGlmKCAkcmVzdWx0WzBdID09IGZhbHNlICkKICAgICAgewoJcmV0dXJuICRyZXN1bHRbMV07CiAgICAgIH0KCiAgICAkdWlkID0gJHJlc3VsdFsxXTsKICAgICRnaWQgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZGVmYXVsdF9ncm91cCcsIC0xKTsKICAgIGlmKCAkZ2lkICE9IC0xICkKICAgICAgewoJLy8gYSBkZWZhdWx0IGdyb3VwIGlzIHJlcXVpcmVkLAoJLy8gc28gYWRkIGhpbSB0byB0aGF0IGdyb3VwCglpZiggISRmZXVzZXJzLT5Bc3NpZ25Vc2VyVG9Hcm91cCggJHVpZCwgJGdpZCApICkKCSAgewoJICAgIHJldHVybiAkdGhpcy0+TGFuZygnd2FybmluZ19jb3VsZG5vdGFkZGdyb3VwJyk7CgkgIH0KICAgICAgfQoKICAgIC8vIGFuZCBhZGQgdGhlIHVzZXIgdG8gd2hhdGV2ZXIgZ3JvdXAgc3BlY2lmaWVkIGluIHRoZSBncm91cHMgcGFyYW1ldGVyCiAgICBpZiggJGdyb3VwX2lkICkKICAgICAgewoJaWYoICEkZmV1c2Vycy0+QXNzaWduVXNlclRvR3JvdXAoICR1aWQsICRncm91cF9pZCApICkKCSAgewoJICAgIHJldHVybiAkdGhpcy0+TGFuZygnd2FybmluZ19jb3VsZG5vdGFkZGdyb3VwJyk7CgkgIH0KICAgICAgfSAgICAKCiAgICAvLyBoZSdzIGluLi4uLiBoZSdzIGluLi4uIG5vdyBqdXN0IGFkZCBoaXMgcHJvcGVydGllcwogICAgJGRiID0gJHRoaXMtPkdldERiKCk7CiAgICAkcSA9ICJTRUxFQ1QgKiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfc2VsZnJlZ19wcm9wZXJ0aWVzCiAgICAgICAgICBXSEVSRSB1c2VyID0gPyI7CiAgICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxLCBhcnJheSggJHRtcGlkICkgKTsKICAgIGlmKCAhJGRicmVzdWx0ICkKICAgICAgewoJcmV0dXJuICR0aGlzLT5MYW5nKCdlcnJvcl9kYmVycm9yJyk7CiAgICAgIH0KICAgIHdoaWxlKCAkcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdygpICkKICAgICAgewoJJGZldXNlcnMtPlNldFVzZXJQcm9wZXJ0eUZ1bGwoICRyb3dbJ3RpdGxlJ10sICRyb3dbJ2RhdGEnXSwgJHVpZCApOwogICAgICB9CgogICAgLy8gbm93IGRpc3BsYXkgYSB3YXJtIGZ1enp5IG1lc3NhZ2UKICAgIGdsb2JhbCAkZ0NtczsKICAgICR0aGlzLT5zbWFydHktPmFzc2lnbigndXNlcm5hbWUnLCAkdXNlcm5hbWUgKTsKICAgICR0aGlzLT5zbWFydHktPmFzc2lnbignc2l0ZW5hbWUnLCAkZ0Ntcy0+Y29uZmlnWydyb290X3VybCddKTsKICAgIGVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhYmFzZSgnc2VsZnJlZ19maW5hbG1lc3NhZ2VfdGVtcGxhdGUnKTsKCiAgICAvLyBzZW5kIGFuIGV2ZW50CiAgICAkdGhpcy0+U2VuZEV2ZW50KCdvblVzZXJSZWdpc3RlcmVkJywKCQkgICAgIGFycmF5KCd1c2VybmFtZSc9PiR1c2VybmFtZSwKCQkJICAgJ2lkJz0+JHVpZCkpOwoKICAgIC8vIGFuZCBub3RpZnkgdGhlIGFkbWluaXN0cmF0b3IKICAgIC8vIGlmIHRoZSBhZG1pbiB3YW50cyBub3RpZmljYXRpb25zLgogICAgLy8gb2ZmIHdlIGdvLgogICAgaWYoICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdub3RpZnlfb25fcmVnaXN0cmF0aW9uJykgKQogICAgICB7CgkKCSRjbXNtYWlsZXIgPSAkdGhpcy0+R2V0TW9kdWxlSW5zdGFuY2UoJ0NNU01haWxlcicpOwoJaWYoICEkY21zbWFpbGVyICkKCSAgewoJICAgIHJldHVybiAkdGhpcy0+TGFuZygnZXJyb3Jfbm9jbXNtYWlsZXJtb2R1bGUnKTsKCSAgfQoJCgkkY21zbWFpbGVyLT5BZGRBZGRyZXNzKCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdzZW5kX2VtYWlsc190bycpKTsKCSRjbXNtYWlsZXItPlNldFN1YmplY3QoJ0EgbmV3IHVzZXIgaGFzIHJlZ2lzdGVyZWQgb24gJy4kZ0Ntcy0+Y29uZmlnWydyb290X3VybCddKTsKCSRtc2cgPSAnQSBuZXcgdXNlciAoJy4kdXNlcm5hbWUuJykgaGFzIGNvbXBsZXRlZCByZWdpc3RyYXRpb24gdG8geW91ciBzaXRlLiB5b3Ugc2hvdWxkIGNoZWNrIHRoaXMgdXNlciBvdXQgYW5kIHZhbGlkYXRlIHRoYXQgdGhlIGluZm9ybWF0aW9uIHByb3ZpZGVkIGlzIGFzIGNvbXBsZXRlIGFuZCB2YWxpZCBhcyBwb3NzaWJsZS4nOwoJJGNtc21haWxlci0+U2V0Qm9keSgkbXNnKTsgIAoJJGNtc21haWxlci0+SXNIVE1MKGZhbHNlKTsgLy8gd2UncmUgbm90IHNlbmRpbmcgYW4gaHRtbCBtYWlsCgkkY21zbWFpbGVyLT5TZW5kKCk7CiAgICAgIH0KCiAgICAkdGhpcy0+QXVkaXQoIDAsICR0aGlzLT5MYW5nKCdmcmllbmRseW5hbWUnKSwgCgkJICAkdGhpcy0+TGFuZygnaW5mb191c2VydmVyaWZpZWQnKS4iOiAiLiR1c2VybmFtZSk7CiAgICByZXR1cm4gMDsKICB9CgoKCgogIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgIERpc3BsYXlFcnJvclBhZ2UoJGlkLCAkcGFyYW1zLCAkcmV0dXJuX2lkLCAkbWVzc2FnZSkKICAgTk9UIFBBUlQgT0YgVEhFIE1PRFVMRSBBUEkKICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KICBmdW5jdGlvbiBfRGlzcGxheUVycm9yUGFnZSgkaWQsICYkcGFyYW1zLCAkcmV0dXJuaWQsICRtZXNzYWdlPScnKQogIHsKICAgICR0aGlzLT5zbWFydHktPmFzc2lnbigndGl0bGVfZXJyb3InLCAkdGhpcy0+TGFuZygnZXJyb3InKSk7CiAgICBpZiAoJG1lc3NhZ2UgIT0gJycpCiAgICAgIHsKCSR0aGlzLT5zbWFydHktPmFzc2lnbignbWVzc2FnZScsICRtZXNzYWdlKTsKICAgICAgfQogICAgCiAgICAvLyBEaXNwbGF5IHRoZSBwb3B1bGF0ZWQgdGVtcGxhdGUKICAgIGVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSgnZXJyb3IudHBsJyk7CiAgfQoKCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgX0RvRGVsZXRlQnVsa1VzZXJzKCRpZCwgJHBhcmFtcywgJHJldHVybl9pZCkKICAgTk9UIFBBUlQgT0YgVEhFIE1PRFVMRSBBUEkKICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KICBmdW5jdGlvbiBfRG9EZWxldGVCdWxrVXNlcnMoICRpZCwgJiRwYXJhbXMsICRyZXR1cm5pZCApCiAgewogICAgZm9yZWFjaCggJHBhcmFtcyBhcyAka2V5ID0+ICR2YWx1ZSApCiAgICAgIHsKCWlmKCAka2V5ID09ICdtYXJrZGVsZXRlXycuJHZhbHVlICkKCSAgewoJICAgICR0aGlzLT5EZWxldGVUZW1wVXNlclByb3BlcnRpZXMoICR2YWx1ZSApOwoJICAgICR0aGlzLT5EZWxldGVUZW1wVXNlciggJHZhbHVlICk7IAoJICB9CiAgICAgIH0KICAgICR0aGlzLT5teVJlZGlyZWN0VG9UYWIoJ2FkbWludXNlcnMnKTsKICB9CgoKICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICBfRG9EZWxldGVVc2VyKCRpZCwgJHBhcmFtcywgJHJldHVybl9pZCwgJG1lc3NhZ2UpCiAgIE5PVCBQQVJUIE9GIFRIRSBNT0RVTEUgQVBJCiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCiAgZnVuY3Rpb24gX0RvRGVsZXRlVXNlciggJGlkLCAmJHBhcmFtcywgJHJldHVybmlkICkKICB7CiAgICBpZiggIWlzc2V0KCAkcGFyYW1zWyd1c2VyX2lkJ10gKSApCiAgICAgIHsKCS8vIHRoaXMgaXMgdWdseSBmb3IgdGhlIHVzZXIgdG8gc2VlCgkvLyBidXQgYXQgbGVhc3QgdGhlIGFkbWluIHdpbGwgYmUgYWJsZSB0byBmaWd1cmUgaXQgb3V0CgkkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UoICRpZCwgJHBhcmFtcywgJHJldHVybmlkLAoJCQkJICAkdGhpcy0+TGFuZygnZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJykpOwoJcmV0dXJuOwogICAgICB9CgogICAgJGlkID0gJHBhcmFtc1sndXNlcl9pZCddOwogICAgJHRoaXMtPkRlbGV0ZVRlbXBVc2VyUHJvcGVydGllcyggJGlkICk7CiAgICAkdGhpcy0+RGVsZXRlVGVtcFVzZXIoICRpZCApOyAKICAgICR0aGlzLT5teVJlZGlyZWN0VG9UYWIoJ2FkbWludXNlcnMnKTsKICB9CgoKICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICBTZW5kQW5vdGhlckVtYWlsKCRpZCwgJHBhcmFtcywgJHJldHVybl9pZCwgJG1lc3NhZ2UpCiAgIE5PVCBQQVJUIE9GIFRIRSBNT0RVTEUgQVBJCiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCiAgZnVuY3Rpb24gX1NlbmRBbm90aGVyUmVnRW1haWwoICRpZCwgJiRwYXJhbXMsICRyZXR1cm5pZCApCiAgewogICAgLy8gd2UgaGF2ZSB0aGUgdXNlcm5hbWUgKHRoZW9yZXRpY2FsbHkpIGluIHRoZSAkcGFyYW1zCiAgICBpZiggIWlzc2V0KCAkcGFyYW1zWydpbnB1dF91c2VybmFtZSddICkgKQogICAgICB7CgkkcGFybXNbJ21vZGUnXSA9ICdzZW5kYW5vdGhlcmVtYWlsJzsKCSRwYXJtc1snZXJyb3InXSA9IDE7CgkkcGFybXNbJ21lc3NhZ2UnXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9pbnN1ZmZpY2llbnRwYXJhbXMnKTsKCSRwYXJtc1snbW9kZSddID0gJ3NlbmRhbm90aGVyZW1haWwnOwoJJHRoaXMtPm15UmVkaXJlY3QoICRpZCwgJ2RlZmF1bHQnLCAkcmV0dXJuaWQsICRwYXJtcyApOwoJcmV0dXJuOwogICAgICB9CiAgICAkdXNlcm5hbWUgPSAkcGFyYW1zWydpbnB1dF91c2VybmFtZSddOwoKICAgIC8vIGxvb2sgdXAgdGhlIHVzZXJuYW1lIGFuZCBnZXQgYW4gaWQKICAgICR0ZW1wdXNlcmlkID0gJHRoaXMtPkdldFRlbXBVc2VySUQoICR1c2VybmFtZSApOwogICAgaWYoICEkdGVtcHVzZXJpZCApCiAgICAgIHsKCSRwYXJtc1snZXJyb3InXSA9IDE7CgkkcGFybXNbJ21lc3NhZ2UnXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl91c2Vybm90Zm91bmQnKTsKCSRwYXJtc1snbW9kZSddID0gJ3NlbmRhbm90aGVyZW1haWwnOwoJJHRoaXMtPm15UmVkaXJlY3QoICRpZCwgJ2RlZmF1bHQnLCAkcmV0dXJuaWQsICRwYXJtcyApOwoJcmV0dXJuOyAKICAgICAgfQoKICAgIC8vIGFuZCB3aGF0ZXZlciBkZXRhaWxzIHdlIGNhbiBmcm9tIHRoZSB1c2VycyB0YWJsZQogICAgJGRldGFpbHMgPSAkdGhpcy0+R2V0VGVtcFVzZXJEZXRhaWxzKCAkdGVtcHVzZXJpZCApOwogICAgaWYoICRkZXRhaWxzID09IGZhbHNlICkKICAgICAgewoJJHBhcm1zWydlcnJvciddID0gMTsKCSRwYXJtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX3VzZXJub3Rmb3VuZCcpOwoJJHBhcm1zWydtb2RlJ10gPSAnc2VuZGFub3RoZXJlbWFpbCc7CgkkdGhpcy0+bXlSZWRpcmVjdCggJGlkLCAnZGVmYXVsdCcsICRyZXR1cm5pZCwgJHBhcm1zICk7CglyZXR1cm47IAogICAgICB9CgogICAgLy8gbm93IGdldCBwcm9wZXJ0aWVzCiAgICAkdGVtcHVzZXJwcm9wcyA9ICR0aGlzLT5HZXRUZW1wVXNlclByb3BlcnRpZXMoICR0ZW1wdXNlcmlkICk7CiAgICBpZiggJHRlbXB1c2VycHJvcHMgPT0gZmFsc2UgKQogICAgICB7CgkkcGFybXNbJ2Vycm9yJ10gPSAxOwoJJHBhcm1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3Jfbm9wcm9wZXJ0aWVzJyk7CgkkcGFybXNbJ21vZGUnXSA9ICdzZW5kYW5vdGhlcmVtYWlsJzsKCSR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdkZWZhdWx0JywgJHJldHVybmlkLCAkcGFybXMgKTsKCXJldHVybjsgCiAgICAgIH0KCiAgICAkZmV1c2VycyA9ICR0aGlzLT5HZXRNb2R1bGVJbnN0YW5jZSgnRnJvbnRFbmRVc2VycycpOwogICAgaWYoICEkZmV1c2VycyApCiAgICAgIHsKCSRwYXJtc1snZXJyb3InXSA9IDE7CgkkcGFybXNbJ21lc3NhZ2UnXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9ub2ZldXNlcnNtb2R1bGUnKTsKCSRwYXJtc1snbW9kZSddID0gJ3NlbmRhbm90aGVyZW1haWwnOwoJJHRoaXMtPm15UmVkaXJlY3QoICRpZCwgJ2RlZmF1bHQnLCAkcmV0dXJuaWQsICRwYXJtcyApOwoJcmV0dXJuOyAKICAgICAgfQoKICAgIC8vIGhhdmUgdGhlIGdyb3VwIGlkLCBnZXQgdGhlIGdyb3VwIHByb3BlcnR5IHJlbGF0aW9ucwogICAgJHJlbGF0aW9ucyA9ICRmZXVzZXJzLT5HZXRHcm91cFByb3BlcnR5UmVsYXRpb25zKCAkZGV0YWlsc1snZ3JvdXBfaWQnXSApOwogICAgaWYoICRyZWxhdGlvbnNbMF0gPT0gZmFsc2UgKQogICAgICB7CgkkcGFybXNbJ2Vycm9yJ10gPSAxOwoJJHBhcm1zWydtZXNzYWdlJ10gPSAkcmVsYXRpb25zWzFdOwoJJHBhcm1zWydtb2RlJ10gPSAnc2VuZGFub3RoZXJlbWFpbCc7CgkkdGhpcy0+bXlSZWRpcmVjdCggJGlkLCAnZGVmYXVsdCcsICRyZXR1cm5pZCwgJHBhcm1zICk7CglyZXR1cm47IAogICAgICB9CgogICAgJHByb3BzID0gJGZldXNlcnMtPkdldFByb3BlcnR5RGVmbnMoKTsKICAgIGlmKCAkcHJvcHMgPT0gZmFsc2UgKQogICAgICB7CgkkcGFybXNbJ2Vycm9yJ10gPSAxOwoJJHBhcm1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfZGJlcnJvcicpOwoJJHBhcm1zWydtb2RlJ10gPSAnc2VuZGFub3RoZXJlbWFpbCc7CgkkdGhpcy0+bXlSZWRpcmVjdCggJGlkLCAnZGVmYXVsdCcsICRyZXR1cm5pZCwgJHBhcm1zICk7CglyZXR1cm47IAogICAgICB9CgogICAgLy8gbm93IGZpbmQgYW4gZW1haWwgYWRkcmVzcyBwcm9wZXJ0eQogICAgLy8gYW5kIG1ha2Ugc3VyZSBpdCdzIG9mIHR5cGUgMgogICAgJGZvdW5kID0gJyc7CiAgICBmb3JlYWNoKCAkcmVsYXRpb25zIGFzICRyZWxuICkKICAgICAgewoJZm9yZWFjaCggJHByb3BzIGFzICRwcm9wICkKCSAgewoJICAgIGlmKCAkcHJvcFsndHlwZSddID09IDIgJiYgJHJlbG5bJ25hbWUnXSA9PSAkcHJvcFsnbmFtZSddICkKCSAgICAgIHsKCQkvLyBmb3VuZCBhbiBlbWFpbCBwcm9wZXJ0eQoJCWZvcmVhY2goICR0ZW1wdXNlcnByb3BzIGFzICR0ZW1wcHJvcCApCgkJICB7CgkJICAgIGlmKCAkcmVsblsnbmFtZSddID09ICR0ZW1wcHJvcFsndGl0bGUnXSApCgkJICAgICAgewoJCQkkZm91bmQgPSAkdGVtcHByb3BbJ2RhdGEnXTsKCQkJYnJlYWs7CgkJICAgICAgfQoJCSAgfQoJICAgICAgfQoJICAgIGlmKCAkZm91bmQgIT0gJycgKQoJICAgICAgewoJCWJyZWFrOwoJICAgICAgfQoJICB9CglpZiggJGZvdW5kICE9ICcnICkKCSAgewoJICAgIGJyZWFrOwoJICB9CiAgICAgIH0KICAgIGlmKCAhJGZvdW5kICkKICAgICAgewoJJHBhcm1zWydlcnJvciddID0gMTsKCSRwYXJtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX25vZW1haWxhZGRyZXNzJyk7CgkkcGFybXNbJ21vZGUnXSA9ICdzZW5kYW5vdGhlcmVtYWlsJzsKCSR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdkZWZhdWx0JywgJHJldHVybmlkLCAkcGFybXMgKTsKCXJldHVybjsgCiAgICAgIH0KCiAgICAkdGhpcy0+X1NlbmRVc2VyQ29uZmlybWF0aW9uRW1haWwoICRpZCwkcmV0dXJuaWQsJGZvdW5kLCAkdXNlcm5hbWUsICRkZXRhaWxzWydncm91cF9pZCddLAoJCQkJICAgICAgICRkZXRhaWxzWydjb2RlJ10gKTsKCiAgICAvLyB3ZSdyZSBub3QgcmVkaXJlY3RpbmcgYW55d2hlcmUgd2UgbmVlZCB0byBkaXNwbGF5IHNvbWUgbmljZSBtZXNzYWdlCiAgICAvLyBhYm91dCB3ZSBqdXN0IHNwYW1tZWQgeW91ciBpbmJveCwgZXRjLCBldGMuCiAgICBnbG9iYWwgJGdDbXM7CiAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3NpdGVuYW1lJywgJGdDbXMtPmNvbmZpZ1sncm9vdF91cmwnXSk7CiAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3VzZXJuYW1lJywkdXNlcm5hbWUpOwogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdlbWFpbCcsICRmb3VuZCApOwogICAgZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlRnJvbURhdGFiYXNlKCdzZWxmcmVnX3Bvc3Rfc2VuZGFub3RoZXJlbWFpbF90ZW1wbGF0ZScpOwogIH0gIAoKCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgU2VuZFVzZXJDb25maXJtYXRpb25FbWFpbCgkYWRkcmVzcywkdXNlcm5hbWUsJGdyb3VwX2lkLCRjb2RlKTsKICAgTk9UIFBBUlQgT0YgVEhFIE1PRFVMRSBBUEkKICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KICBmdW5jdGlvbiBfU2VuZFVzZXJDb25maXJtYXRpb25FbWFpbCgkaWQsJHJldHVybmlkLCRhZGRyZXNzLCR1c2VybmFtZSwkZ3JvdXBfaWQsJGNvZGUpCiAgewogICAgZ2xvYmFsICRnQ21zOwogICAgJGNtc21haWxlciA9ICR0aGlzLT5HZXRNb2R1bGVJbnN0YW5jZSgnQ01TTWFpbGVyJyk7CiAgICBpZiggISRjbXNtYWlsZXIgKQogICAgICB7CglyZXR1cm4gZmFsc2U7CiAgICAgIH0KCiAgICAkY21zbWFpbGVyLT5BZGRBZGRyZXNzKCAkYWRkcmVzcyApOwogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCduYW1lJywkdXNlcm5hbWUpOwogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdjb2RlJywkY29kZSk7CiAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3NpdGVuYW1lJywgJGdDbXMtPmNvbmZpZ1sncm9vdF91cmwnXSk7CiAgICAkcGFybXMgPSBhcnJheSggJ21vZGUnID0+ICd2ZXJpZnknLAoJCSAgICAnaW5wdXRfdXNlcm5hbWUnID0+ICR1c2VybmFtZSwKCQkgICAgJ2lucHV0X2dyb3VwX2lkJyA9PiAkZ3JvdXBfaWQsCgkJICAgICdpbnB1dF9jb2RlJyA9PiAkY29kZSApOwogICAgJHVybCA9ICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwnZGVmYXVsdCcsJHJldHVybmlkLCcnLCRwYXJtcywnJyx0cnVlLHRydWUpOwogICAgJHNtYWxsdXJsID0gJHRoaXMtPkNyZWF0ZUxpbmsoICRpZCwgJ2RlZmF1bHQnLCAkcmV0dXJuaWQsICcnLCBhcnJheSgnbW9kZScgPT4gJ3ZlcmlmeScpLCcnLHRydWUsIHRydWUpOwogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd1cmwnLCR1cmwpOwogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzbWFsbHVybCcsJHNtYWxsdXJsKTsKICAgICR0aGlzLT5zbWFydHktPmFzc2lnbignbGluaycsJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCdkZWZhdWx0JywkcmV0dXJuaWQsJHVybCwkcGFybXMsJycsZmFsc2UsdHJ1ZSkpOwogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzbWFsbGxpbmsnLCR0aGlzLT5DcmVhdGVMaW5rKCRpZCwnZGVmYXVsdCcsJHJldHVybmlkLCRzbWFsbHVybCxhcnJheSgnbW9kZSc9Pid2ZXJpZnknKSwnJyxmYWxzZSx0cnVlKSk7CiAgICAkaHRtbGJvZHkgPSAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlRnJvbURhdGFiYXNlKCdzZWxmcmVnX2VtYWlsY29uZmlybV90ZW1wbGF0ZScpOwogICAgJHRleHRib2R5ID0gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhYmFzZSgnc2VsZnJlZ19lbWFpbGNvbmZpcm1fdGV4dHRlbXBsYXRlJyk7CiAgICAkY21zbWFpbGVyLT5TZXRCb2R5KCAkdGV4dGJvZHkgKTsKICAgIGlmKCAkaHRtbGJvZHkgIT0gJycgKQogICAgICB7CgkkY21zbWFpbGVyLT5Jc0hUTUwodHJ1ZSk7ICAvLyB3ZSdyZSBzZW5kaW5nIGFuIGh0bWwgbWFpbAoJJGNtc21haWxlci0+U2V0Qm9keSggJGh0bWxib2R5ICk7CgkkY21zbWFpbGVyLT5TZXRBbHRCb2R5KCAkdGV4dGJvZHkgKTsKICAgICAgfQogICAgZWxzZQogICAgICB7CgkkY21zbWFpbGVyLT5Jc0hUTUwoZmFsc2UpOyAgLy8gd2UncmUgc2VuZGluZyBhbiBodG1sIG1haWwKCSRjbXNtYWlsZXItPlNldEJvZHkoICR0ZXh0Ym9keSApOwogICAgICB9CiAgICAkY21zbWFpbGVyLT5TZXRTdWJqZWN0KCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdzZWxmcmVnX2VtYWlsY29uZmlybV9zdWJqZWN0JywkdGhpcy0+TGFuZygncmVnaXN0cmF0aW9uX2NvbmZpcm1hdGlvbicpKSk7CiAgICAkY21zbWFpbGVyLT5TZW5kKCk7CgogIH0KCgogIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgIFNldEFkbWluUHJlZmVyZW5jZXMoJGlkLCAkcGFyYW1zLCAkcmV0dXJuX2lkLCAkbWVzc2FnZSkKICAgTk9UIFBBUlQgT0YgVEhFIE1PRFVMRSBBUEkKICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KICBmdW5jdGlvbiBfU2V0QWRtaW5QcmVmZXJlbmNlcyggJGlkLCAmJHBhcmFtcywgJHJldHVybmlkICkKICB7CiAgICBpZiggaXNzZXQoICRwYXJhbXNbJ2lucHV0X3JlbW92ZWFsbCddICkgKQogICAgICB7CgkkdGhpcy0+RXhwaXJlT2xkVGVtcFVzZXJzKCctNSB5ZWFycycpOwoJcmV0dXJuOwogICAgICB9CgogICAgaWYoIGlzc2V0KCAkcGFyYW1zWydpbnB1dF9yZW1vdmUxd2VlayddICkgKQogICAgICB7CgkkdGhpcy0+RXhwaXJlT2xkVGVtcFVzZXJzKCctMSB3ZWVrJyk7CgkkdGhpcy0+bXlSZWRpcmVjdFRvVGFiKCRpZCwgJ3ByZWZzJyk7CiAgICAgIH0KCiAgICBpZiggaXNzZXQoICRwYXJhbXNbJ2lucHV0X3JlbW92ZTFtb250aCddICkgKQogICAgICB7CgkkdGhpcy0+RXhwaXJlT2xkVGVtcFVzZXJzKCctMSBtb250aCcpOwoJJHRoaXMtPm15UmVkaXJlY3RUb1RhYigkaWQsICdwcmVmcycpOwogICAgICB9CgogICAgaWYoIGlzc2V0KCAkcGFyYW1zWydpbnB1dF9yZW1vdmUxbW9udGgnXSApICkKICAgICAgewoJJHRoaXMtPkV4cGlyZU9sZFRlbXBVc2VycygnLTI0IGhvdXJzJyk7CgkkdGhpcy0+bXlSZWRpcmVjdFRvVGFiKCRpZCwgJ3ByZWZzJyk7CiAgICAgIH0KCiAgICBpZiggaXNzZXQoICRwYXJhbXNbJ2lucHV0X2xpc3QxZGF5J10gKSApCiAgICAgIHsKCSMgY3JlYXRlIGEgY3N2IGZpbGUgZm9yIHRlbXAgdXNlcnMgdGhhdCBoYXZlCgkjIGJlZW4gaW4gdGhlcmUgbW9yZSB0aGFuIG9uZSBkYXkKCSRyZXN1bHQgPSAkdGhpcy0+Q1NWT2xkVGVtcFVzZXJzKCctMjQgaG91cnMnKTsKCWlmKCAkcmVzdWx0ID09ICcnICkKCSAgewoJICAgIGVjaG8gIjxoMz5ObyByZXN1bHRzIHJldHVybmVkPC9oMz4iOwoJICAgIHJldHVybjsKCSAgfQoJaGVhZGVyKCdDb250ZW50LURlc2NyaXB0aW9uOiBGaWxlIFRyYW5zZmVyJyk7CgloZWFkZXIoJ0NvbnRlbnQtVHlwZTogYXBwbGljYXRpb24vZm9yY2UtZG93bmxvYWQnKTsKCWhlYWRlcignQ29udGVudC1EaXNwb3NpdGlvbjogYXR0YWNobWVudDsgZmlsZW5hbWU9dHJhcHBlZGluc2VsZnJlZy5jc3YnKTsKCXdoaWxlKEBvYl9lbmRfY2xlYW4oKSk7CgllY2hvICRyZXN1bHQ7CglleGl0KCk7CiAgICAgIH0KCiAgICBpZiggaXNzZXQoICRwYXJhbXNbJ2lucHV0X25vdGlmeSddICkgKQogICAgICB7CgkkdGhpcy0+U2V0UHJlZmVyZW5jZSgnbm90aWZ5X29uX3JlZ2lzdHJhdGlvbicsCgkJCSAgICAgJHBhcmFtc1snaW5wdXRfbm90aWZ5J10pOwogICAgICB9CiAgICBlbHNlCiAgICAgIHsKCSR0aGlzLT5TZXRQcmVmZXJlbmNlKCdub3RpZnlfb25fcmVnaXN0cmF0aW9uJywgMCk7CiAgICAgIH0KCiAgICBpZiggaXNzZXQoICRwYXJhbXNbJ2lucHV0X2VtYWlsX2NvbmZpcm1hdGlvbiddICkgKQogICAgICB7CgkkdGhpcy0+U2V0UHJlZmVyZW5jZSgncmVxdWlyZV9lbWFpbF9jb25maXJtYXRpb24nLAoJCQkgICAgICRwYXJhbXNbJ2lucHV0X2VtYWlsX2NvbmZpcm1hdGlvbiddKTsKICAgICAgfQogICAgZWxzZQogICAgICB7CgkkdGhpcy0+U2V0UHJlZmVyZW5jZSgncmVxdWlyZV9lbWFpbF9jb25maXJtYXRpb24nLCAwKTsKICAgICAgfQoKICAgIGlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfY29uZmlybW1haWxfdG8nXSApICkKICAgICAgewoJJHRoaXMtPlNldFByZWZlcmVuY2UoJ3NlbmRfZW1haWxzX3RvJywKCQkJICAgICAkcGFyYW1zWydpbnB1dF9jb25maXJtbWFpbF90byddKTsKICAgICAgfQoKICAgIGlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfZm9yY2VfZW1haWxfdHdpY2UnXSApICkKICAgICAgewoJJHRoaXMtPlNldFByZWZlcmVuY2UoJ3NlbGZyZWdfZm9yY2VfZW1haWxfdHdpY2UnLCAxKTsKICAgICAgfQogICAgZWxzZQogICAgICB7CgkkdGhpcy0+U2V0UHJlZmVyZW5jZSgnc2VsZnJlZ19mb3JjZV9lbWFpbF90d2ljZScsIDApOwogICAgICB9CgogICAgJHRoaXMtPm15UmVkaXJlY3RUb1RhYiggJGlkLCAncHJlZmVyZW5jZXMnICk7CiAgfQoKCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgU2V0QWRtaW5SZWcxVGVtcGxhdGUoJGlkLCAkcGFyYW1zLCAkcmV0dXJuX2lkLCAkbWVzc2FnZSkKICAgTk9UIFBBUlQgT0YgVEhFIE1PRFVMRSBBUEkKICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KICBmdW5jdGlvbiBfU2V0QWRtaW5SZWcxVGVtcGxhdGUoICRpZCwgJiRwYXJhbXMsICRyZXR1cm5pZCApCiAgewogICAgaWYoIGlzc2V0KCAkcGFyYW1zWydkZWZhdWx0YnV0dG9uJ10gKSApCiAgICAgIHsKCSR0aGlzLT5TZXRUZW1wbGF0ZSggJ3NlbGZyZWdfcmVnMXRlbXBsYXRlJywKCQkJICAgICR0aGlzLT5kZmx0X3JlZ2lzdHJhdGlvbjFfdGVtcGxhdGUgKTsKCSR0aGlzLT5TZXRUZW1wbGF0ZSggJ3NlbGZyZWdfcG9zdHJlZzFfdGVtcGxhdGUnLAoJCQkgICAgJHRoaXMtPmRmbHRfcG9zdHJlZzFfdGVtcGxhdGUgKTsKICAgICAgfQogICAgZWxzZSBpZiggaXNzZXQoICRwYXJhbXNbJ3JlZzFfdGVtcGxhdGVjb250ZW50J10gKSB8fAoJICAgICBpc3NldCggJHBhcmFtc1sncG9zdHJlZzFfdGVtcGxhdGVjb250ZW50J10gKSApCiAgICAgIHsKCSR0aGlzLT5TZXRUZW1wbGF0ZSggJ3NlbGZyZWdfcmVnMXRlbXBsYXRlJywKCQkJICAgICRwYXJhbXNbJ3JlZzFfdGVtcGxhdGVjb250ZW50J10gKTsKCSR0aGlzLT5TZXRUZW1wbGF0ZSggJ3NlbGZyZWdfcG9zdHJlZzFfdGVtcGxhdGUnLAoJCQkgICAgJHBhcmFtc1sncG9zdHJlZzFfdGVtcGxhdGVjb250ZW50J10gKTsKICAgICAgfQogICAgJHRoaXMtPm15UmVkaXJlY3RUb1RhYiggJGlkLCAncmVnMXRlbXBsYXRlJyApOwogIH0KCgogIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgIFNldEFkbWluUmVnMlRlbXBsYXRlKCRpZCwgJHBhcmFtcywgJHJldHVybl9pZCwgJG1lc3NhZ2UpCiAgIE5PVCBQQVJUIE9GIFRIRSBNT0RVTEUgQVBJCiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCiAgZnVuY3Rpb24gX1NldEFkbWluUmVnMlRlbXBsYXRlKCAkaWQsICYkcGFyYW1zLCAkcmV0dXJuaWQgKQogIHsKICAgIGlmKCBpc3NldCggJHBhcmFtc1snZGVmYXVsdGJ1dHRvbiddICkgKQogICAgICB7CgkkdGhpcy0+U2V0VGVtcGxhdGUoICdzZWxmcmVnX3JlZzJ0ZW1wbGF0ZScsCgkJCSAgICAkdGhpcy0+ZGZsdF9yZWdpc3RyYXRpb24yX3RlbXBsYXRlICk7CiAgICAgIH0KICAgIGVsc2UgaWYoIGlzc2V0KCAkcGFyYW1zWyd0ZW1wbGF0ZWNvbnRlbnQnXSApICkKICAgICAgewoJJHRoaXMtPlNldFRlbXBsYXRlKCAnc2VsZnJlZ19yZWcydGVtcGxhdGUnLAoJCQkgICAgJHBhcmFtc1sndGVtcGxhdGVjb250ZW50J10gKTsKICAgICAgfQogICAgJHRoaXMtPm15UmVkaXJlY3RUb1RhYiggJGlkLCAncmVnMnRlbXBsYXRlJyApOwogIH0KCgogIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgIFNldEFkbWluRW1haWxDb25maXJtYXRpb25UZW1wbGF0ZSgkaWQsICRwYXJhbXMsICRyZXR1cm5faWQsICRtZXNzYWdlKQogICBOT1QgUEFSVCBPRiBUSEUgTU9EVUxFIEFQSQogICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwogIGZ1bmN0aW9uIF9TZXRBZG1pbkVtYWlsQ29uZmlybVRlbXBsYXRlKCAkaWQsICYkcGFyYW1zLCAkcmV0dXJuaWQgKQogIHsKICAgIGlmKCBpc3NldCggJHBhcmFtc1snZGVmYXVsdGJ1dHRvbiddICkgKQogICAgICB7CgkkdGhpcy0+U2V0VGVtcGxhdGUoICdzZWxmcmVnX2VtYWlsY29uZmlybV90ZW1wbGF0ZScsCgkJCSAgICAkdGhpcy0+ZGZsdF9lbWFpbGNvbmZpcm1fdGVtcGxhdGUgKTsKCSR0aGlzLT5TZXRUZW1wbGF0ZSggJ3NlbGZyZWdfZW1haWxjb25maXJtX3RleHR0ZW1wbGF0ZScsCgkJCSAgICAkdGhpcy0+ZGZsdF9lbWFpbGNvbmZpcm1fdGV4dHRlbXBsYXRlICk7CiAgICAgIH0KICAgIGVsc2UgCiAgICAgIHsKCSRodG1sdGVtcGxhdGUgPSAnJzsKCWlmKCBpc3NldCggJHBhcmFtc1sndGVtcGxhdGVjb250ZW50J10gKSApCgkgIHsKCSAgICAkaHRtbHRlbXBsYXRlID0gJHBhcmFtc1sndGVtcGxhdGVjb250ZW50J107CgkgIH0KCSR0ZXh0dGVtcGxhdGUgPSAnJzsKCWlmKCBpc3NldCggJHBhcmFtc1sndGV4dHRlbXBsYXRlY29udGVudCddICkgKQoJICB7CgkgICAgJHRleHR0ZW1wbGF0ZSA9ICRwYXJhbXNbJ3RleHR0ZW1wbGF0ZWNvbnRlbnQnXTsKCSAgfQoJJHN1YmplY3QgPSAnJzsKCWlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfc3ViamVjdCddICkgKQoJICB7CgkgICAgJHN1YmplY3QgPSAkcGFyYW1zWydpbnB1dF9zdWJqZWN0J107CgkgIH0KCWlmKCAkc3ViamVjdCA9PSAnJyApCgkgIHsKCSAgICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UoJGlkLCRwYXJhbXMsJHJldHVybmlkLAoJCQkJICAgICAkdGhpcy0+TGFuZygnZXJyb3JfbXVzdHNwZWNpZnlzdWJqZWN0JykpOwoJICAgIHJldHVybjsKCSAgfQoJaWYoICR0ZXh0dGVtcGxhdGUgPT0gJycgKQoJICB7CgkgICAgJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlKCRpZCwkcGFyYW1zLCRyZXR1cm5pZCwKCQkJCSAgICAgJHRoaXMtPkxhbmcoJ2Vycm9yX211c3RzcGVjaWZ5dGV4dHRlbXBsYXRlJykpOwoJICAgIHJldHVybjsKCSAgfQoKCSR0aGlzLT5TZXRUZW1wbGF0ZSggJ3NlbGZyZWdfZW1haWxjb25maXJtX3RlbXBsYXRlJywKCQkJICAgICRwYXJhbXNbJ3RlbXBsYXRlY29udGVudCddICk7CgkkdGhpcy0+U2V0VGVtcGxhdGUoICdzZWxmcmVnX2VtYWlsY29uZmlybV90ZXh0dGVtcGxhdGUnLAoJCQkgICAgJHBhcmFtc1sndGV4dHRlbXBsYXRlY29udGVudCddICk7CgkkdGhpcy0+U2V0UHJlZmVyZW5jZSggJ3NlbGZyZWdfZW1haWxjb25maXJtX3N1YmplY3QnLAoJCQkgICAgICAkcGFyYW1zWydpbnB1dF9zdWJqZWN0J10gKTsKCQogICAgICB9CiAgICAkdGhpcy0+bXlSZWRpcmVjdFRvVGFiKCAkaWQsICdlbWFpbGNvbmZpcm1fdGVtcGxhdGUnICk7CiAgfQoKCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgU2V0QWRtaW5GaW5hbE1lc3NhZ2VUZW1wbGF0ZSgkaWQsICRwYXJhbXMsICRyZXR1cm5faWQsICRtZXNzYWdlKQogICBOT1QgUEFSVCBPRiBUSEUgTU9EVUxFIEFQSQogICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwogIGZ1bmN0aW9uIF9TZXRBZG1pbkZpbmFsTWVzc2FnZVRlbXBsYXRlKCAkaWQsICYkcGFyYW1zLCAkcmV0dXJuaWQgKQogIHsKICAgIGlmKCBpc3NldCggJHBhcmFtc1snZGVmYXVsdGJ1dHRvbiddICkgKQogICAgICB7CgkkdGhpcy0+U2V0VGVtcGxhdGUoICdzZWxmcmVnX2ZpbmFsbWVzc2FnZV90ZW1wbGF0ZScsCgkJCSAgICAkdGhpcy0+ZGZsdF9maW5hbG1lc3NhZ2VfdGVtcGxhdGUgKTsKICAgICAgfQogICAgZWxzZSBpZiggaXNzZXQoICRwYXJhbXNbJ3RlbXBsYXRlY29udGVudCddICkgKQogICAgICB7CgkkdGhpcy0+U2V0VGVtcGxhdGUoICdzZWxmcmVnX2ZpbmFsbWVzc2FnZV90ZW1wbGF0ZScsCgkJCSAgICAkcGFyYW1zWyd0ZW1wbGF0ZWNvbnRlbnQnXSApOwogICAgICB9CiAgICAkdGhpcy0+bXlSZWRpcmVjdFRvVGFiKCAkaWQsICdmaW5hbG1lc3NhZ2VfdGVtcGxhdGUnICk7CiAgfQoKCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgU2V0QWRtaW5FbWFpbENvbmZpcm1hdGlvblRlbXBsYXRlKCRpZCwgJHBhcmFtcywgJHJldHVybl9pZCwgJG1lc3NhZ2UpCiAgIE5PVCBQQVJUIE9GIFRIRSBNT0RVTEUgQVBJCiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCiAgZnVuY3Rpb24gX1NldEFkbWluRW1haWxVc2VyRWRpdGVkVGVtcGxhdGUoICRpZCwgJiRwYXJhbXMsICRyZXR1cm5pZCApCiAgewogICAgaWYoIGlzc2V0KCAkcGFyYW1zWydkZWZhdWx0YnV0dG9uJ10gKSApCiAgICAgIHsKCSR0aGlzLT5TZXRUZW1wbGF0ZSggJ3NlbGZyZWdfZW1haWx1c2VyZWRpdGVkX3RlbXBsYXRlJywKCQkJICAgICR0aGlzLT5kZmx0X2VtYWlsdXNlcmVkaXRlZF90ZW1wbGF0ZSApOwoJJHRoaXMtPlNldFRlbXBsYXRlKCAnc2VsZnJlZ19lbWFpbHVzZXJlZGl0ZWRfdGV4dHRlbXBsYXRlJywKCQkJICAgICR0aGlzLT5kZmx0X2VtYWlsdXNlcmVkaXRlZF90ZXh0dGVtcGxhdGUgKTsKICAgICAgfQogICAgZWxzZSAKICAgICAgewoJJGh0bWx0ZW1wbGF0ZSA9ICcnOwoJaWYoIGlzc2V0KCAkcGFyYW1zWyd0ZW1wbGF0ZWNvbnRlbnQnXSApICkKCSAgewoJICAgICRodG1sdGVtcGxhdGUgPSAkcGFyYW1zWyd0ZW1wbGF0ZWNvbnRlbnQnXTsKCSAgfQoJJHRleHR0ZW1wbGF0ZSA9ICcnOwoJaWYoIGlzc2V0KCAkcGFyYW1zWyd0ZXh0dGVtcGxhdGVjb250ZW50J10gKSApCgkgIHsKCSAgICAkdGV4dHRlbXBsYXRlID0gJHBhcmFtc1sndGV4dHRlbXBsYXRlY29udGVudCddOwoJICB9Cgkkc3ViamVjdCA9ICcnOwoJaWYoIGlzc2V0KCAkcGFyYW1zWydpbnB1dF9zdWJqZWN0J10gKSApCgkgIHsKCSAgICAkc3ViamVjdCA9ICRwYXJhbXNbJ2lucHV0X3N1YmplY3QnXTsKCSAgfQoJaWYoICRzdWJqZWN0ID09ICcnICkKCSAgewoJICAgICR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSgkaWQsJHBhcmFtcywkcmV0dXJuaWQsCgkJCQkgICAgICR0aGlzLT5MYW5nKCdlcnJvcl9tdXN0c3BlY2lmeXN1YmplY3QnKSk7CgkgICAgcmV0dXJuOwoJICB9CglpZiggJHRleHR0ZW1wbGF0ZSA9PSAnJyApCgkgIHsKCSAgICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UoJGlkLCRwYXJhbXMsJHJldHVybmlkLAoJCQkJICAgICAkdGhpcy0+TGFuZygnZXJyb3JfbXVzdHNwZWNpZnl0ZXh0dGVtcGxhdGUnKSk7CgkgICAgcmV0dXJuOwoJICB9CgoJJHRoaXMtPlNldFRlbXBsYXRlKCAnc2VsZnJlZ19lbWFpbHVzZXJlZGl0ZWRfdGVtcGxhdGUnLAoJCQkgICAgJHBhcmFtc1sndGVtcGxhdGVjb250ZW50J10gKTsKCSR0aGlzLT5TZXRUZW1wbGF0ZSggJ3NlbGZyZWdfZW1haWx1c2VyZWRpdGVkX3RleHR0ZW1wbGF0ZScsCgkJCSAgICAkcGFyYW1zWyd0ZXh0dGVtcGxhdGVjb250ZW50J10gKTsKCSR0aGlzLT5TZXRQcmVmZXJlbmNlKCAnc2VsZnJlZ19lbWFpbHVzZXJlZGl0ZWRfc3ViamVjdCcsCgkJCSAgICAgICRwYXJhbXNbJ2lucHV0X3N1YmplY3QnXSApOwoJCiAgICAgIH0KICAgICR0aGlzLT5teVJlZGlyZWN0VG9UYWIoICRpZCwgJ2VtYWlsdXNlcmVkaXRlZF90ZW1wbGF0ZScgKTsKICB9CgoKICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICBTZXRBZG1pblNldEFub3RoZXJFbWFpbFRlbXBsYXRlKCRpZCwgJHBhcmFtcywgJHJldHVybl9pZCwgJG1lc3NhZ2UpCiAgIE5PVCBQQVJUIE9GIFRIRSBNT0RVTEUgQVBJCiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCiAgZnVuY3Rpb24gX1NldEFkbWluU2VuZEFub3RoZXJFbWFpbFRlbXBsYXRlKCAkaWQsICYkcGFyYW1zLCAkcmV0dXJuaWQgKQogIHsKICAgIGlmKCBpc3NldCggJHBhcmFtc1snZGVmYXVsdGJ1dHRvbiddICkgKQogICAgICB7CgkkdGhpcy0+U2V0VGVtcGxhdGUoICdzZWxmcmVnX3NlbmRhbm90aGVyZW1haWxfdGVtcGxhdGUnLAoJCQkgICAgJHRoaXMtPmRmbHRfc2VuZGFub3RoZXJlbWFpbF90ZW1wbGF0ZSApOwoJJHRoaXMtPlNldFRlbXBsYXRlKCAnc2VsZnJlZ19wb3N0X3NlbmRhbm90aGVyZW1haWxfdGVtcGxhdGUnLAoJCQkgICAgJHRoaXMtPmRmbHRfcG9zdF9zZW5kYW5vdGhlcmVtYWlsX3RlbXBsYXRlICk7CiAgICAgIH0KICAgIGVsc2UgaWYoIGlzc2V0KCAkcGFyYW1zWyd0ZW1wbGF0ZWNvbnRlbnQnXSApICkKICAgICAgewoJJHRoaXMtPlNldFRlbXBsYXRlKCAnc2VsZnJlZ19zZW5kYW5vdGhlcmVtYWlsX3RlbXBsYXRlJywKCQkJICAgICRwYXJhbXNbJ3RlbXBsYXRlY29udGVudCddICk7CgkkdGhpcy0+U2V0VGVtcGxhdGUoICdzZWxmcmVnX3Bvc3Rfc2VuZGFub3RoZXJlbWFpbF90ZW1wbGF0ZScsCgkJCSAgICAkcGFyYW1zWyd0ZW1wbGF0ZWNvbnRlbnQyJ10gKTsKICAgICAgfQogICAgJHRoaXMtPm15UmVkaXJlY3RUb1RhYiggJGlkLCAnc2VuZGFub3RoZXJlbWFpbF90ZW1wbGF0ZScgKTsKICB9CgoKICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwogIC8vIEFQSSBGVU5DVElPTlMKICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKICBmdW5jdGlvbiBBZGRUZW1wVXNlclByb3BlcnR5KCAkdWlkLCAkcHJvcG5hbWUsICRwcm9wdmFsdWUgKQogIHsKICAgICRkYiA9ICR0aGlzLT5HZXREYigpOwogICAgJGlkID0gJGRiLT5HZW5JRChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9zZWxmcmVnX3VzZXJzX3NlcSIpOwogICAgJHEgPSAiSU5TRVJUIElOVE8gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9zZWxmcmVnX3Byb3BlcnRpZXMKICAgICAgICAgIFZBTFVFUyAoPyw/LD8sPykiOwogICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcSwgYXJyYXkoICRpZCwgJHVpZCwgJHByb3BuYW1lLCAkcHJvcHZhbHVlICkgKTsKICAgIGlmKCAhJGRicmVzdWx0ICkKICAgICAgewoJcmV0dXJuIGFycmF5KEZBTFNFLCRkYi0+RXJyb3JNc2coKSk7CiAgICAgIH0KICAgIHJldHVybiBhcnJheShUUlVFKTsKICB9CgoKICBmdW5jdGlvbiBDb3VudFRlbXBVc2VycygpCiAgewogICAgJGRiID0gJHRoaXMtPkdldERiKCk7CiAgICAkcSA9ICJTRUxFQ1QgY291bnQoKikgYXMgY291bnQgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3NlbGZyZWdfdXNlcnMiOwogICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcSApOwogICAgaWYoICEkZGJyZXN1bHQgKSB7CiAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KICAgICRyb3cgPSAkZGJyZXN1bHQtPkZldGNoUm93KCk7CiAgICByZXR1cm4gJHJvd1snY291bnQnXTsKICB9CgoKICBmdW5jdGlvbiBDcmVhdGVUZW1wVXNlciggJGdpZCwgJHVzZXJuYW1lLCAkcGFzc3dvcmQsICRjb2RlICkKICB7CiAgICAkZGIgPSAkdGhpcy0+R2V0RGIoKTsKICAgIGlmKCAkdXNlcm5hbWUgPT0gJycgfHwgJHBhc3N3b3JkID09ICcnICkKICAgICAgewoJcmV0dXJuIGZhbHNlOwogICAgICB9CgogICAgLy8gZ2V0IGFuIGlkCiAgICAkaWQgPSAkZGItPkdlbklEKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3NlbGZyZWdfdXNlcnNfc2VxIik7CiAgICAkcSA9ICJJTlNFUlQgSU5UTyAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3NlbGZyZWdfdXNlcnMKICAgICAgICAgIFZBTFVFUyAoPyw/LD8sPyw/LD8pIjsgCiAgICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxLCBhcnJheSggJGlkLCAkZ2lkLCAkdXNlcm5hbWUsIG1kNSgkcGFzc3dvcmQpLCAkY29kZSwKCQkJCQkgdHJpbSgkZGItPkRCVGltZVNUYW1wKHRpbWUoKSksIiciKSkpOwogICAgaWYoICEkZGJyZXN1bHQgKQogICAgICB7CglyZXR1cm4gYXJyYXkoRkFMU0UsJGRiLT5FcnJvck1zZygpKTsKICAgICAgfQogICAgcmV0dXJuIGFycmF5KFRSVUUsJGlkKTsKICB9CgoKICBmdW5jdGlvbiBDU1ZPbGRUZW1wVXNlcnMoJGV4cGlyeWNvZGUpCiAgewogICAgJGRiID0gJHRoaXMtPkdldERiKCk7CiAgICAkZXhwaXJlcyA9ICRkYi0+RGJUaW1lU3RhbXAoc3RydG90aW1lKCAkZXhwaXJ5Y29kZSApKTsKICAgIC8vIGZpbmQgYWxsIHRoZSB1c2VyIGlkJ3MgdGhhdCBtYXRjaAogICAgJHEgPSAiU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3NlbGZyZWdfdXNlcnMKICAgICAgICAgIFdIRVJFIGNyZWF0ZWRhdGUgPCA/IjsKICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHEsIGFycmF5KCAkZXhwaXJlcyApICk7IAogICAgJHJlc3VsdCA9ICcnOwoKICAgIHdoaWxlKCAkcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdygpICkgCiAgICAgIHsKCSR2YWxzID0gYXJyYXlfdmFsdWVzKCAkcm93ICk7CgkkcmVzdWx0IC49ICRyb3dbJ2lkJ10uIiwiLiRyb3dbJ3VzZXJuYW1lJ10uIiwiLiRyb3dbJ2NvZGUnXS4iLCIuJHJvd1snY3JlYXRlZGF0ZSddLiIsIjsKCSRxMiA9ICJTRUxFQ1QgKiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfc2VsZnJlZ19wcm9wZXJ0aWVzCiAgICAgICAgICAgICAgV0hFUkUgdXNlciA9ID8gT1JERVIgYnkgaWQiOwoJJGRicmVzdWx0MiA9ICRkYi0+RXhlY3V0ZSggJHEyLCBhcnJheSggJHJvd1snaWQnXSApICk7Cgl3aGlsZSggJHJvdzIgPSAkZGJyZXN1bHQyLT5GZXRjaFJvdygpICkKCSAgewoJICAgICRyZXN1bHQgLj0gJHJvdzJbJ2RhdGEnXS4iLCI7CgkgIH0KCSRyZXN1bHQgLj0gImVuZFxuIjsKICAgICAgfQoKICAgIHJldHVybiAkcmVzdWx0OwogIH0KCgogIGZ1bmN0aW9uIEVkaXRUZW1wVXNlciggJHVpZCwgJHVzZXJuYW1lLCAkcGFzc3dvcmQsICRjb2RlICkKICB7CiAgICAkZGIgPSAkdGhpcy0+R2V0RGIoKTsKICAgIGlmKCAkdXNlcm5hbWUgPT0gJycgKQogICAgICB7CglyZXR1cm4gZmFsc2U7CiAgICAgIH0KCiAgICAkcSA9ICJVUERBVEUgIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9zZWxmcmVnX3VzZXJzCiAgICAgICAgICBTRVQgdXNlcm5hbWUgPSA/LCBjb2RlID0gPyI7CiAgICAkcGFyYW1zID0gYXJyYXkoJHVzZXJuYW1lLCRjb2RlKTsKICAgIGlmKCAkcGFzc3dvcmQgIT0gJycgKQogICAgICB7CgkkcSAuPSAiLHBhc3N3b3JkID0gPyI7CgkkcGFyYW1zW10gPSBtZDUoJHBhc3N3b3JkKTsKICAgICAgfQogICAgJHEgLj0gIiBXSEVSRSBpZCA9ID8iOwogICAgJHBhcmFtc1tdID0gJHVpZDsKCiAgICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxLCAkcGFyYW1zICk7CiAgICBpZiggISRkYnJlc3VsdCApCiAgICAgIHsKCXJldHVybiBhcnJheShGQUxTRSwkZGItPkVycm9yTXNnKCkpOwogICAgICB9CiAgICByZXR1cm4gYXJyYXkoVFJVRSk7CiAgfQoKCiAgZnVuY3Rpb24gRXhwaXJlT2xkVGVtcFVzZXJzKCRleHBpcnljb2RlKQogIHsKICAgICRkYiA9ICR0aGlzLT5HZXREYigpOwogICAgJGV4cGlyZXMgPSAkZGItPkRiVGltZVN0YW1wKHN0cnRvdGltZSggJGV4cGlyeWNvZGUgKSk7CiAgICAvLyBmaW5kIGFsbCB0aGUgdXNlciBpZCdzIHRoYXQgbWF0Y2gKICAgICRxID0gIlNFTEVDVCAqIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9zZWxmcmVnX3VzZXJzCiAgICAgICAgICBXSEVSRSBjcmVhdGVkYXRlIDwgPyI7CiAgICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxLCBhcnJheSggJGV4cGlyZXMgKSApOyAKICAgIHdoaWxlKCAkcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdygpICkgCiAgICAgIHsKCS8vIHRoZW4gZGVsZXRlIHRoZWlyIHByb3BlcnRpZXMKCSRxMiA9ICJERUxFVEUgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3NlbGZyZWdfcHJvcGVydGllcwogICAgICAgICAgICAgV0hFUkUgdXNlciA9ID8iOwoJJGRicmVzdWx0MiA9ICRkYi0+RXhlY3V0ZSggJHEyLCBhcnJheSggJHJvd1snaWQnXSApICk7CiAgICAgIH0KCiAgICAvLyB0aGVuIGRlbGV0ZSB0aGVtCiAgICAkcSA9ICJERUxFVEUgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3NlbGZyZWdfdXNlcnMKICAgICAgICAgIFdIRVJFIGNyZWF0ZWRhdGUgPiA/IjsKICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHEsIGFycmF5KCAkZXhwaXJlcyApICk7CiAgICBpZiggISRkYnJlc3VsdCApIHJldHVybiBmYWxzZTsKICAgIHJldHVybiB0cnVlOwogIH0KCgogIGZ1bmN0aW9uIERlbGV0ZVRlbXBVc2VyKCAkdWlkICkKICB7CiAgICAkZGIgPSAkdGhpcy0+R2V0RGIoKTsKICAgICRxID0gIkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfc2VsZnJlZ191c2VycwogICAgICAgICAgV0hFUkUgaWQgPSA/IjsKICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHEsIGFycmF5KCR1aWQpICk7CiAgICBpZiggISRkYnJlc3VsdCApIHJldHVybiBmYWxzZTsKICAgIHJldHVybiB0cnVlOwogIH0KCgogIGZ1bmN0aW9uIERlbGV0ZVRlbXBVc2VyUHJvcGVydGllcyggJHVpZCApCiAgewogICAgJGRiID0gJHRoaXMtPkdldERiKCk7CiAgICAkcSA9ICJERUxFVEUgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3NlbGZyZWdfcHJvcGVydGllcyAKICAgICAgICAgIFdIRVJFIHVzZXIgPSA/IjsKICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHEsIGFycmF5KCAkdWlkICkgKTsKICAgIGlmKCAhJGRicmVzdWx0ICkgcmV0dXJuIGZhbHNlOwogICAgcmV0dXJuIHRydWU7CiAgfQoKCiAgZnVuY3Rpb24gR2V0VGVtcFVzZXJEZXRhaWxzKCAkdWlkICkKICB7CiAgICAkZGIgPSAkdGhpcy0+R2V0RGIoKTsKICAgICRxID0gIlNFTEVDVCAqIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9zZWxmcmVnX3VzZXJzCiAgICAgICAgICBXSEVSRSBpZCA9ID8iOwogICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcSwgYXJyYXkoICR1aWQgKSApOwogICAgaWYoICEkZGJyZXN1bHQgfHwgJGRicmVzdWx0LT5SZWNvcmRDb3VudCgpID09IDAgKSByZXR1cm4gZmFsc2U7CiAgICAkcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdygpOwogICAgcmV0dXJuICRyb3c7CiAgfQoKCiAgZnVuY3Rpb24gR2V0VGVtcFVzZXJJRCggJHVzZXJuYW1lICkKICB7CiAgICAkZGIgPSAkdGhpcy0+R2V0RGIoKTsKCiAgICBpZiggJHVzZXJuYW1lID09ICcnICkKICAgICAgewoJcmV0dXJuIGZhbHNlOwogICAgICB9CgogICAgJHEgPSAiU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3NlbGZyZWdfdXNlcnMgV0hFUkUKICAgICAgICAgIHVzZXJuYW1lID0gPyI7CiAgICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxLCBhcnJheSggJHVzZXJuYW1lICkgKTsKICAgIGlmKCAhJGRicmVzdWx0ICkKICAgICAgewoJcmV0dXJuIGZhbHNlOwogICAgICB9CgogICAgJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKTsKICAgIGlmKCAhJHJvdyApCiAgICAgIHsKCXJldHVybiBmYWxzZTsKICAgICAgfQoKICAgIHJldHVybiAkcm93WydpZCddOwogIH0KCgogIGZ1bmN0aW9uIEdldFRlbXBVc2VyUHJvcGVydHkoICR1aWQsICRwcm9wbmFtZSwgJGRmbHQgKQogIHsKICAgICRkYiA9ICR0aGlzLT5HZXREYigpOwogICAgJHEgPSAiU0VMRUNUIGRhdGEgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3NlbGZyZWdfcHJvcGVydGllcwogICAgICAgICAgV0hFUkUgdXNlciA9ID8gQU5EIHRpdGxlID0gID8iOwogICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcSwgYXJyYXkoICR1aWQsICRwcm9wbmFtZSApICk7CiAgICBpZiggISRkYnJlc3VsdCApCiAgICAgIHsKCXJldHVybiAkZGZsdDsKICAgICAgfQogICAgJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKTsKICAgIGlmKCAhJHJvdyApCiAgICAgIHsKCXJldHVybiAkZGZsdDsKICAgICAgfQogICAgcmV0dXJuICRyb3dbJ2RhdGEnXTsKICB9CgoKICBmdW5jdGlvbiBHZXRUZW1wVXNlclByb3BlcnRpZXMoICR1aWQgKQogIHsKICAgICRkYiA9ICR0aGlzLT5HZXREYigpOwogICAgJHEgPSAiU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3NlbGZyZWdfcHJvcGVydGllcwogICAgICAgICAgV0hFUkUgdXNlciA9ID8iOwogICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcSwgYXJyYXkoICR1aWQgKSApOwogICAgaWYoICEkZGJyZXN1bHQgfHwgJGRicmVzdWx0LT5SZWNvcmRDb3VudCgpID09IDAgKQogICAgICB7CglyZXR1cm4gZmFsc2U7CiAgICAgIH0KICAgICRyZXN1bHQgPSBhcnJheSgpOwogICAgd2hpbGUoICRyb3cgPSAkZGJyZXN1bHQtPkZldGNoUm93KCkgKQogICAgICB7CgkkcmVzdWx0W10gPSAkcm93OwogICAgICB9CiAgICByZXR1cm4gJHJlc3VsdDsKICB9Cn0KCj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/templates/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/templates/edituser.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PCEtLSBSZWdpc3RyYXRpb24gMSB0ZW1wbGF0ZSAtLT4KeyR0aXRsZX0Ke2lmICRtZXNzYWdlICE9ICcnfQogIHtpZiAkZXJyb3IgIT0gJyd9CiAgICA8cD48Zm9udCBjb2xvcj0icmVkIj57JG1lc3NhZ2V9PC9mb250PjwvcD4KICB7ZWxzZX0KICAgIDxwPnskbWVzc2FnZX08L3A+CiAgey9pZn0Key9pZn0KeyRzdGFydGZvcm19CntpZiAkY29udHJvbGNvdW50ID4gMH0KICA8Y2VudGVyPgogIDx0YWJsZSB3aWR0aD0iNzUlIj4Ke2ZvcmVhY2ggZnJvbT0kY29udHJvbHMgaXRlbT1jb250cm9sfQogIDx0cj4KICAgIDx0ZD57JGNvbnRyb2wtPmhpZGRlbn0KICAgIDxmb250IGNvbG9yPSJ7JGNvbnRyb2wtPmNvbG9yfSI+eyRjb250cm9sLT5wcm9tcHR9eyRjb250cm9sLT5tYXJrZXJ9PC9mb250PgogICAgPC90ZD4KICAgIDx0ZD57JGNvbnRyb2wtPmNvbnRyb2x9CiAgICB7aWYgJGNvbnRyb2wtPmV4dHJhdGV4dH0KICAgICAgJm5ic3A7eyRjb250cm9sLT5leHRyYXRleHR9CiAgICB7L2lmfQogICAgPC90ZD4KICA8L3RyPgp7L2ZvcmVhY2h9CiAgPC90YWJsZT4KICA8L2NlbnRlcj4KPGJyLz4Key9pZn0KeyRoaWRkZW59eyRoaWRkZW4yfXskc3VibWl0fXskY2FuY2VsfQp7JGVuZGZvcm19CjwhLS0gUmVnaXN0cmF0aW9uIDEgdGVtcGxhdGUgLS0+Cg==]]></data>
	</file>
	<file>
	  <filename>/templates/error.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGgzPnskdGl0bGVfZXJyb3J9PC9oMz4KPHA+eyRhZG1pbl9uYXZ9PC9wPgp7aWYgJG1lc3NhZ2UhPScnfTxwPnskbWVzc2FnZX08L3A+ey9pZn0=]]></data>
	</file>
	<file>
	  <filename>/templates/prefs.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[e2lmICRtZXNzYWdlIT0nJ308cD57JG1lc3NhZ2V9PC9wPnsvaWZ9Cnskc3RhcnRmb3JtfQo8dGFibGUgd2lkdGg9IjEwMCUiPgogIDx0cj4KICAgIDx0ZCB3aWR0aD0iNTAlIj4KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CgkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF9ub3RpZnl9OjwvcD4KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X25vdGlmeX08L3A+Cgk8L2Rpdj4KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CgkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF9jb25maXJtbWFpbF90b306PC9wPgoJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfY29uZmlybW1haWxfdG99PC9wPgoJPC9kaXY+Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJCTxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfZW1haWxfY29uZmlybWF0aW9ufTo8L3A+CgkJPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9lbWFpbF9jb25maXJtYXRpb259PC9wPgoJPC9kaXY+Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJCTxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfZm9yY2VfZW1haWxfdHdpY2V9OjwvcD4KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2ZvcmNlX2VtYWlsX3R3aWNlfTwvcD4KCTwvZGl2PgoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCQk8cCBjbGFzcz0icGFnZXRleHQiPiZuYnNwOzwvcD4KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JGhpZGRlbn17JHN1Ym1pdH17JGNhbmNlbH08L3A+Cgk8L2Rpdj4KICAgPC90ZD4KICAgPHRkIHdpZHRoPSI1MCUiIHZhbGlnbj0idG9wIj4KICAgICAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCTxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfbnVtcmVzZXRyZWNvcmRzfTwvcD4KCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskZGF0YV9udW1yZXNldHJlY29yZHN9PC9wPgogICAgICA8L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCTxwIGNsYXNzPSJwYWdldGV4dCI+Jm5ic3A7PC9wPgoJPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9yZW1vdmUxd2Vla308L3A+CiAgICAgIDwvZGl2PgogICAgICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJPHAgY2xhc3M9InBhZ2V0ZXh0Ij4mbmJzcDs8L3A+Cgk8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X3JlbW92ZTFtb250aH08L3A+CiAgICAgIDwvZGl2PgogICAgICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJPHAgY2xhc3M9InBhZ2V0ZXh0Ij4mbmJzcDs8L3A+Cgk8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X3JlbW92ZTFkYXl9PC9wPgogICAgICA8L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCTxwIGNsYXNzPSJwYWdldGV4dCI+Jm5ic3A7PC9wPgoJPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9yZW1vdmVhbGx9PC9wPgogICAgICA8L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCTxwIGNsYXNzPSJwYWdldGV4dCI+Jm5ic3A7PC9wPgoJPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9saXN0MWRheX08L3A+CiAgICAgIDwvZGl2PgogICA8L3RkPgogIDwvdHI+CjwvdGFibGU+CnskZW5kZm9ybX0K]]></data>
	</file>
	<file>
	  <filename>/templates/signup.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyR0aXRsZX0Ke2lmICRtZXNzYWdlICE9ICcnfQogIHtpZiAkZXJyb3IgIT0gJyd9CiAgICA8cD48Zm9udCBjb2xvcj0icmVkIj57JG1lc3NhZ2V9PC9mb250PjwvcD4KICB7ZWxzZX0KICAgIDxwPnskbWVzc2FnZX08L3A+CiAgey9pZn0Key9pZn0KeyRzdGFydGZvcm19CntpZiAkY29udHJvbGNvdW50ID4gMH0KICA8Y2VudGVyPgogIDx0YWJsZSB3aWR0aD0iNzUlIj4Ke2ZvcmVhY2ggZnJvbT0kY29udHJvbHMgaXRlbT1jb250cm9sfQogIDx0cj4KICAgIDx0ZD57JGNvbnRyb2wtPmhpZGRlbn0KICAgIDxmb250IGNvbG9yPSJ7JGNvbnRyb2wtPmNvbG9yfSI+eyRjb250cm9sLT5wcm9tcHR9eyRjb250cm9sLT5tYXJrZXJ9PC9mb250PgogICAgPC90ZD4KICAgIDx0ZD57JGNvbnRyb2wtPmNvbnRyb2x9PC90ZD4KICA8L3RyPgp7L2ZvcmVhY2h9CiAgPC90YWJsZT4KICA8L2NlbnRlcj4KPGJyLz4Key9pZn0KeyRoaWRkZW59eyRoaWRkZW4yfXskYmFja317JHN1Ym1pdH17JGNhbmNlbH0KeyRlbmRmb3JtfQo=]]></data>
	</file>
	<file>
	  <filename>/templates/userlist.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyRqYXZhc2NyaXB0fQp7aWYgJG1lc3NhZ2UgIT0gJyd9CiAge2lmICRlcnJvciAhPSAnJ30KICAgIDxwPjxmb250IGNvbG9yPSJyZWQiPnskbWVzc2FnZX08L2ZvbnQ+PC9wPgogIHtlbHNlfQogICAgPHA+eyRtZXNzYWdlfTwvcD4KICB7L2lmfQp7ZWxzZX0KPGRpdiBjbGFzcz0icGFnZW9wdGlvbnMiPjxwIGNsYXNzPSJwYWdlb3B0aW9ucyI+eyRpdGVtY291bnR9Jm5ic3A7eyRpdGVtc2ZvdW5kfTwvcD48L2Rpdj4Ke2lmICRpdGVtY291bnQgPiAwfQp7JHN0YXJ0Zm9ybX0KPHRhYmxlIGNlbGxzcGFjaW5nPSIwIiBjbGFzcz0icGFnZXRhYmxlIj4KCTx0aGVhZD4KCQk8dHI+CgkJCTx0aCB3aWR0aD0iNSUiPnskdXNlcmlkdGV4dH08L3RoPgoJCQk8dGg+eyR1c2VybmFtZXRleHR9PC90aD4KCQkJPHRoPnskZ3JwbmFtZXRleHR9PC90aD4KCQkJPHRoPnskY3JlYXRlZHRleHR9PC90aD4KCQkJPHRoPnskZW1haWx0ZXh0fTwvdGg+CgkJCTx0aCBjbGFzcz0icGFnZWljb24iPnskZGVsZXRldGV4dH08L3RoPgoJCQk8dGggY2xhc3M9InBhZ2VpY29uIj4mbmJzcDs8L3RoPgoJCQk8dGggY2xhc3M9InBhZ2VpY29uIj4mbmJzcDs8L3RoPgoJCTwvdHI+Cgk8L3RoZWFkPgoJPHRib2R5Pgp7Zm9yZWFjaCBmcm9tPSRpdGVtcyBpdGVtPWVudHJ5fQoJCTx0ciBjbGFzcz0ieyRlbnRyeS0+cm93Y2xhc3N9Ij4KCQkJPHRkPnskZW50cnktPnVzZXJpZH08L3RkPgoJCQk8dGQ+eyRlbnRyeS0+dXNlcm5hbWV9PC90ZD4KCQkJPHRkPnskZW50cnktPmdycG5hbWV9PC90ZD4KCQkJPHRkPnskZW50cnktPmNyZWF0ZWR9PC90ZD4KCQkJPHRkPnskZW50cnktPmVtYWlsfTwvdGQ+CgkJCTx0ZD57JGVudHJ5LT5tYXJrZGVsZXRlYm94fTwvdGQ+CgkJCTx0ZD57JGVudHJ5LT5lZGl0bGlua308L3RkPgoJCQk8dGQ+eyRlbnRyeS0+ZGVsZXRlbGlua308L3RkPgoJCTwvdHI+CgkgCnsvZm9yZWFjaH0KCTwvdGJvZHk+CjwvdGFibGU+CnskY2hlY2thbGxib3h9PGJyLz4KeyRzdWJtaXR9CnsvaWZ9CnskZW5kZm9ybX0Key9pZn0K]]></data>
	</file>
</module>
