<?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>CGUserDirectory</name>
	<version>1.3</version>
  <mincmsversion>1.9.2</mincmsversion>
	<help><![CDATA[PGgzPldoYXQgZG9lcyB0aGlzIGRvPzwvaDM+CiAgPHA+VGhpcyBtb2R1bGUgcHJvdmlkZXMgdGhlIGFiaWxpdHkgZm9yIGdlbmVyYXRpbmcgYSBkaXJlY3Rvcnkgb2YgdXNlcnMgZnJvbSB0aGUgRkVVIG1vZHVsZSwgZm9yIGdlbmVyYXRpbmcgYSBzdW1tYXJ5IHZpZXcgb2YgdXNlcnMgbWF0Y2hpbmcgc3BlY2lmaWVkIGNyaXRlcmlhLCBhbmQgZm9yIGRpc3BsYXlpbmcgYSBkZXRhaWwgcmVwb3J0IG9mIGEgc3BlY2lmaWMgdXNlci4gIEl0IGNhbiBiZSB1c2VkIGZvciBnZW5lcmF0aW5nIHByb2ZpbGUgcGFnZXMgZm9yIHlvdXIgdXNlcnMsIG9yIGEgc3RhZmYgZGlyZWN0b3J5LjwvcD4KPGgzPkZlYXR1cmVzOjwvaDM+Cjx1bD4KICA8bGk+Q29tcGxldGUgdGVtcGxhdGUgY29udHJvbAo8cD5BbGwgZGlzcGxheXMgYXJlIGNvbXBsZXRlbHkgY29uZmlndXJhYmxlIGJ5IHRlbXBsYXRlcyBhbGxvd2luZyBmb3IgamF2YXNjcmlwdCwgYWpheCwgb3IgYW55IG90aGVyIGZhbmN5IGRpc3BsYXlzLiAgU3R5bGluZyBpcyBjb21wbGV0ZWx5IGNvbnRyb2xsYWJsZSBieSB0aGUgd2Vic2l0ZSBkZXZlbG9wZXIuPC9wPgogIDwvbGk+CiAgPGxpPk11bHRpcGxlIGRhdGFiYXNlIHRlbXBsYXRlcy4KPHA+WW91IGNhbiBjb25maWd1cmUgbXVsdGlwbGUgZGlmZmVyZW50IHZpZXdzIGZvciBlYWNoIGRpc3BsYXksIGFuZCB1c2UgdGhlbSB1bmRlciBkaWZmZXJlbnQgc2l0dWF0aW9ucy48L3A+CiAgPC9saT4KPGxpPkZpbHRlciBzdW1tYXJ5IHZpZXdzIG9uIHVzZXIgcHJvcGVydGllcy4KICAgPHA+WW91IGNhbiBmaWx0ZXIgdGhlIG91dHB1dCBmb3IgdGhlIHN1bW1hcnkgdmlldyBiYXNlZCBvbiB0aGUgdmFsdWUgb2YgYSBzcGVjaWZpYyB1c2VyIHByb3BlcnR5IGZyb20gdGhlIEZFVSBtb2R1bGUuICBUaGlzIGFsc28gaW5jbHVkZXMgJnF1b3Q7TElLRSZxdW90OyBiYXNlZCBjcml0ZXJhLgogIDwvbGk+CiAgPGxpPlNvcnRpbmcgb24gbXVsdGlwbGUgZGlmZmVyZW50IGNyaXRlcmlhLjwvbGk+CiAgPGxpPlN1cHBvcnRzIFNFTyBmcmllbmRseSBVUkxTPC9saT4KPC91bD4KPGgzPkhvdyBkbyBJIHVzZSBpdD88L2gzPgo8cD5UaGUgc2ltcGxlc3Qgd2F5IHRvIHVzZSB0aGlzIG1vZHVsZSBpcyB0byBwbGFjZSBhIHRhZyBsaWtlIHRoaXMgaW50byB5b3VyIHBhZ2UgdGVtcGxhdGUsIG9yIHBhZ2UgY29udGVudCA8Y29kZT57Q0dVc2VyRGlyZWN0b3J5fTwvY29kZT4uICBUbyBleHBhbmQgb24gdGhpcyBmdW5jdGlvbmFsaXR5LCBvciB0byBkaXNwbGF5IGEgc3Vic2V0IG9mIHlvdXIgdXNlcnMsIHNlZSB0aGUgcGFyYW1ldGVycyBiZWxvdy48L3A+CjxoMz5FeGFtcGxlczo8L2gzPgo8dWw+CjxsaT5EaXNwbGF5IGEgZGlyZWN0b3J5IG9mIGFsbCB1c2VyczoKPHA+PGNvZGU+e0NHVXNlckRpcmVjdG9yeSBhY3Rpb249JnF1b3Q7ZGlyZWN0b3J5JnF1b3Q7fTwvY29kZT48L3A+CjwvbGk+CjxsaT5EaXNwbGF5IGEgZGlyZWN0b3J5IG9mIGFsbCB1c2VycyBvcmdhbml6ZWQgYnkgY2l0eToKPHA+PGNvZGU+e0NHVXNlckRpcmVjdG9yeSBhY3Rpb249JnF1b3Q7ZGlyZWN0b3J5JnF1b3Q7IHByb3A9JnF1b3Q7Y2l0eSZxdW90O308L2NvZGU+PC9wPgo8L2xpPgo8bGk+RGlzcGxheSBhIHN1bW1hcnkgbGlzdCBvZiBhbGwgdXNlcnMgaW4gdGhlICZxdW90O21lbWJlcnMmcXVvdDsgZ3JvdXA6CjxwPjxjb2RlPntDR1VzZXJEaXJlY3RvcnkgZ3JvdXA9JnF1b3Q7bWVtYmVycyZxdW90O308L2NvZGU+PC9wPgo8L2xpPgo8bGk+RGlzcGxheSBhIHN1bW1hcnkgbGlzdCBvZiBhbGwgdXNlcnMgaW4gdGhlIGNpdHkgb2YgY2FsZ2FyeToKPHA+PGNvZGU+e0NHVXNlckRpcmVjdG9yeSBwcm9wPSZxdW90O2NpdHkmcXVvdDsgcHJvcHZhbD0mcXVvdDtjYWxnYXJ5JnF1b3Q7fTwvY29kZT48L3A+CjwvbGk+CjxsaT5EaXNwbGF5IGEgc3VtbWFyeSBsaXN0IG9mIGFsbCB1c2VycyBmcm9tIGNvdW50cmllcyB0aGF0IGJlZ2luIHdpdGggQzoKPHA+PGNvZGU+e0NHVXNlckRpcmVjdG9yeSBwcm9wPSZxdW90O2NpdHkmcXVvdDsgdXNlbGlrZT0xIHByb3B2YWw9JnF1b3Q7YyUmcXVvdDt9PC9jb2RlPjwvcD4KPC9saT4KCjwvdWw+Cgo8aDM+Tm90ZXMgYWJvdXQgcHJldHR5IFVSTFM8L2gzPgo8cD4mcXVvdDtQcmV0dHkmcXVvdDsgb3IgU0VPIGZyaWVuZGx5IFVSTFMgbGltaXRzIHRoZSBmbGV4aWJpbGl0eSBvZiB0aGlzIG1vZHVsZSwgYW5kIHRoZSBwYXJhbWV0ZXJzIHRoYXQgY2FuIGJlIHNwZWNpZmllZCBvbiB0aGUgdGFnLiBQYXJ0aWN1bGFybHkgdGhvc2UgdGhhdCBjYW4gYmUgcGFzc2VkIG9uIHRvIHN1YnNlcXVlbnQgdmlld3MuICBGb3IgdGhpcyByZWFzb24sIHRoZSBkaXJlY3RvcnkgdmlldyBkb2VzIG5vdCBnZW5lcmF0ZSBwcmV0dHkgdXJscyB0byB0aGUgc3Vic2VxdWVudCBzdW1tYXJ5IGxpbmtzLiAgVGhpcyBhbGxvd3MgcGFyYW1ldGVycyBsaWtlIGRldGFpbHBhZ2UsIGRldGFpbHRlbXBsYXRlLCBhbmQgc3VtbWFyeXRlbXBsYXRlIHRvIGJlIHBhc3NlZCBpbiB0aGUgdGFnIHRvIHRoZSBkaXJlY3RvcnkgdmlldyBhbmQgdG8gaGF2ZSB0aG9zZSBwYXJhbWV0ZXJzIHBhc3NlZCBkb3duIHRvIHRoZSBzdWJzZXF1ZW50IHN1bW1hcnkgZGV0YWlsIHZpZXdzLjwvcD4KPC9wPgo8aDM+VGhlIHByb3B2YWxzIGFjdGlvbi48L2gzPgo8cD5UaGUgcHJvcHZhbHMgYWN0aW9uIGNhbiBiZSB1c2VkIHZpYSBhamF4IHRvIGRvIGF1dG9jb21wbGV0aW9uIHZpYSBqc29uIG9uIHZhcmlvdXMgRkVVIHByb3BlcnRpZXMuICBGb3IgdGV4dCBhbmQgZW1haWwgcHJvcGVydGllcyB0aGUgc3lzdGVtIHdpbGwgcXVlcnkgYWxsIG9mIHRoZSB2YWx1ZXMgb2YgdGhlIHByb3BlcnR5IHRoYXQgbWF0Y2ggdGhlIHByb3AgYW5kIHByb3B2YWwgcGFyYW1ldGVycyBwYXNzZWQgaW4uICBGb3Igc2VsZWN0LCBtdWx0aXNlbGVjdCwgYW5kIHJhZGlvYnV0dG9ucyBwcm9wZXJ0aWVzIHRoZSBvcHRpb25zIG9mIHRoZSBwcm9wZXJ0eSBhcmUgbWF0Y2NoZWQgYWdhaW5zdCB0aGUgY3JpdGVyaWEgcGFzc2VkIGluLiBUaGUgbW9kdWxlX2FjdGlvbl9saW5rIHBsdWdpbiBwcm92aWRlZCBieSB0aGUgQ0dTaW1wbGVTbWFydHkgbW9kdWxlIGNhbiBiZSBvZiBhc3Npc3RhbmNlIGhlcmUuIFNlZSB0aGUgYnJpZWYgZXhhbXBsZSBiZWxvdzoKPHByZT48Y29kZT4KJmx0O3NjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiJmd0Owp2YXIgdXJsID0gJ3ttb2R1bGVfYWN0aW9uX2xpbmsgbW9kdWxlPUNHVXNlckRpcmVjdG9yeSBhY3Rpb249cHJvcHZhbHMgcHJvcD10ZXh0ZmllbGR9JzsKdXJsID0gdXJsLnJlcGxhY2UoL2FtcDsvZywnJykrJyZjbnRudDAxcHJvcHZhbD1jJzsKdmFyIHJlcyA9IGpRdWVyeS5wb3N0KCd1cmwnKTsKe2xpdGVyYWx9CmpRdWVyeShkb2N1bWVudCkucmVhZHkoZnVuY3Rpb24oKXsKfSk7CnsvbGl0ZXJhbH0mbHQ7L3NjcmlwdCZndDsKPC9jb2RlPjwvcHJlPgo8aDM+U3VwcG9ydDwvaDM+CjxwPlRoaXMgbW9kdWxlIGRvZXMgbm90IGluY2x1ZGUgY29tbWVyY2lhbCBzdXBwb3J0LiBIb3dldmVyLCB0aGVyZSBhcmUgYSBudW1iZXIgb2YgcmVzb3VyY2VzIGF2YWlsYWJsZSB0byBoZWxwIHlvdSB3aXRoIGl0OjwvcD4KPHVsPgo8bGk+Rm9yIHRoZSBsYXRlc3QgdmVyc2lvbiBvZiB0aGlzIG1vZHVsZSwgRkFRcywgb3IgdG8gZmlsZSBhIEJ1ZyBSZXBvcnQgb3IgYnV5IGNvbW1lcmNpYWwgc3VwcG9ydCwgcGxlYXNlIHZpc2l0IHRoZSBjbXMgZGV2ZWxvcG1lbnQgZm9yZ2UgYXQgPGEgaHJlZj0iaHR0cDovL2Rldi5jbXNtYWRlc2ltcGxlLm9yZyI+ZGV2LmNtc21hZGVzaW1wbGUub3JnPC9hPi48L2xpPgo8bGk+QWRkaXRpb25hbCBkaXNjdXNzaW9uIG9mIHRoaXMgbW9kdWxlIG1heSBhbHNvIGJlIGZvdW5kIGluIHRoZSA8YSBocmVmPSJodHRwOi8vZm9ydW0uY21zbWFkZXNpbXBsZS5vcmciPkNNUyBNYWRlIFNpbXBsZSBGb3J1bXM8L2E+LjwvbGk+CjxsaT5UaGUgYXV0aG9yLCBjYWxndXkxMDAwIGFsbCBjYW4gb2Z0ZW4gYmUgZm91bmQgaW4gdGhlIDxhIGhyZWY9ImlyYzovL2lyYy5mcmVlbm9kZS5uZXQvI2NtcyI+Q01TIElSQyBDaGFubmVsPC9hPi48L2xpPgo8bGk+TGFzdGx5LCB5b3UgbWF5IGhhdmUgc29tZSBzdWNjZXNzIGVtYWlsaW5nIHRoZSBhdXRob3IocykgZGlyZWN0bHkuPC9saT4gIAo8L3VsPgoKPGgzPkNvcHlyaWdodCBhbmQgTGljZW5zZTwvaDM+CjxwPkNvcHlyaWdodCAmY29weTsgMjAwOCwgUm9iZXJ0IENhbXBiZWwgPGEgaHJlZj0ibWFpbHRvOmNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmciPiZsdDtjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnJmd0OzwvYT4uIEFsbCBSaWdodHMgQXJlIFJlc2VydmVkLjwvcD4KPHA+VGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi48L3A+CjxwPkhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAphcyBhbiBhZGRvbiBtb2R1bGUgdG8gQ01TIE1hZGUgU2ltcGxlLiAgWW91IG1heSBub3QgdXNlIHRoaXMgc29mdHdhcmUKaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwpNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCnNlY3Rpb24gdGhhdCB0aGUgc2l0ZSB3YXMgYnVpbHQgd2l0aCBDTVMgTWFkZSBzaW1wbGUuPC9wPgo8cD5UaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQpHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgpZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQphbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQpGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQpPciByZWFkIGl0IDxhIGhyZWY9Imh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTCI+b25saW5lPC9hPjwvcD48aDM+RGVwZW5kZW5jaWVzPC9oMz48dWw+PGxpPkNHRXh0ZW5zaW9ucyA9Jmd0OyAxLjI1PC9saT48bGk+RnJvbnRFbmRVc2VycyA9Jmd0OyAxLjE1LjI8L2xpPjwvdWw+PGgzPlBhcmFtZXRlcnM8L2gzPjx1bD48bGk+PGVtPihvcHRpb25hbCk8L2VtPiBsYW5nPSJlbl9VUyIgLSBQYXJhbWV0ZXIgaXMgdXNlZCB0byBzcGVjaWZ5IHdoYXQgbGFuZ3VhZ2UgdG8gdXNlIGZvciBkaXNwbGF5IG9uIHRoZSBmcm9udGVuZC4gTm90IGFsbCBtb2R1bGVzIHN1cHBvcnQgb3IgbmVlZCB0aGlzLjwvbGk+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gYWN0aW9uPSJkZWZhdWx0IiAtIFRoaXMgcGFyYW1ldGVyIGNvbnRyb2xzIHRoZSBiZWhhdmlvdXIgb2YgdGhlIG1vZHVsZS4gIFRoZXJlIGFyZSB0aHJlZSBwb3NzaWJsZSB2YWx1ZXM6Cjx1bD4KICA8bGk+YnJvd3NlICAtIERpc3BsYXkgYSBuYXZpZ2F0aW9uIG9mIHByb3BlcnR5IHZhbHVlcywgYW5kIGFsbG93IGRyaWxsaW5nIGRvd24gdG8gbWF0Y2hpbmcgc3VtbWFyeSB2aWV3cy48L2xpPgogIDxsaT5kZWZhdWx0IC0gRGlzcGxheXMgYSBzdW1tYXJ5IHZpZXcgb2YgdXNlcnMgdGhhdCBtYXRjaCB0aGUgc3BlY2lmaWVkIGNyaXRlcmlhLCBvciBhbGwgdXNlcnMgaWYgbm8gY3JpdGllcmlhIGlzIHNwZWNpZmllZC48L2xpPgogIDxsaT5kaXJlY3RvcnkgLSBEaXNwbGF5cyBhbiBhbHBoYWJldGljYWwgZGlyZWN0b3J5IG9mIGxpbmtzIHRvIHN1bW1hcnkgdmlld3MgdG8gdXNlcnMgdGhhdCBtYXRjaCB0aGUgc3BlY2lmaWVkIGNyaXRlcmlhLiAgSXQgaXMgcG9zc2libGUgdG8gY3JlYXRlIGRpcmVjdG9yeSB2aWV3cyBvbiB1c2VybmFtZSwgb3Igb24gYW55IG90aGVyIHBhcmFtZXRlcjwvbGk+CiAgPGxpPmRldGFpbCAtIERpc3BsYXlzIGEgZGV0YWlsIHJlcG9ydCBhYm91dCBhIHNwZWNpZmljIHVzZXIuPC9saT4KICA8bGk+c2VhcmNoIC0gRGlzcGxheXMgYSBzZWFyY2ggZm9ybS48L2xpPgogIDxsaT5wcm9wdmFscyAtIFJldHVybnMgYSBqc29uIGVuY29kZWQgYXJyYXkgb2YgcHJvcGVydHkgdmFsdWVzIHRoYXQgc3RhcnQgd2l0aCB0aGUgZXhwcmVzc2lvbiBzdXBwbGllZC4gIFRoaXMgYWN0aW9uIGlzIHR5cGljYWxseSBjYWxsZWQgdmlhIGFqYXguPC9saT4KPC91bD48L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGlubGluZT0iIiAtIC0tQWRkIE1lIC0gbW9kdWxlOkNHVXNlckRpcmVjdG9yeSBzdHJpbmc6aGVscF9wYXJhbV9pbmxpbmUtLTwvbGk+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gZ3JvdXA9IiIgLSBVc2VkIHdpdGggdGhlIGRlZmF1bHQgYWN0aW9uLCB0aGlzIHBhcmFtZXRlciBzaG91bGQgY29udGFpbiB0aGUgbmFtZSBvZiBhbiBGRVUgdXNlciBncm91cCwgYW5kIHdpbGwgbGltaXQgdGhlIG91dHB1dCB0byBtZW1iZXJzIG9mIHRoYXQgZ3JvdXA8L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGdpZD0iIiAtIFVzZWQgd2l0aCB0aGUgZGVmYXVsdCBhY3Rpb24sIHRoaXMgcGFyYW1ldGVyIHNob3VsZCBjb250YWluIHRoZSBpZCBvZiBhbiBGRVUgdXNlciBncm91cCwgYW5kIHdpbGwgbGltaXQgdGhlIG91dHB1dCB0byBtZW1iZXJzIG9mIHRoYXQgZ3JvdXAuICBUaGlzIHBhcmFtZXRlciBjYW5ub3QgYmUgdXNlZCBpbiBjb25qdW5jdGlvbiB3aXRoIHRoZSBncm91cCBwYXJhbWV0ZXIuPC9saT48bGk+PGVtPihvcHRpb25hbCk8L2VtPiBzaG93ZXhwaXJlZD0iMCIgLSBCeSBkZWZhdWx0LCB0aGUgc3lzdGVtIHdpbGwgZXhjbHVkZSBleHBpcmVkIHVzZXJzIGZyb20gYW55IGdlbmVyYXRlZCByZXBvcnQuICBTZXR0aW5nIHRoaXMgcGFyYW1ldGVyIHRvIDEgd2lsbCBpbmNsdWRlIHRoZXNlIHVzZXJzLjwvbGk+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gc29ydGJ5PSJ1c2VybmFtZSIgLSBVc2VkIGZvciB0aGUgZGVmYXVsdCBhY3Rpb24sIHRoaXMgcGFyYW1ldGVyIHNwZWNpZmllcyB0aGUgc29ydGluZyBvZiB0aGUgZ2VuZXJhdGVkIHN1bW1hcnkgb3V0cHV0LiAgUG9zc2libGUgdmFsdWVzIGFyZToKPHVsPgogPGxpPmlkIC0gVGhlIHVzZXJzIGlkIChkZWZhdWx0IHZpZXcgb25seSk8L2xpPgogPGxpPnVzZXJuYW1lIC0gVGhlIHVzZXJzIHVzZXJuYW1lIChkZWZhdWx0IHZpZXcgb25seSk8L2xpPgogPGxpPmNyZWF0ZWRhdGUgLSBUaGUgZGF0ZSBhdCB3aGljaCB0aGUgdXNlciBhY2NvdW50IHdhcyBjcmVhdGVkLiAoZGVmYXVsdCB2aWV3IG9ubHkpPC9saT4KIDxsaT5leHBpcmVzIC0gVGhlIGRhdGUgYXQgd2hpY2ggdGhlIHVzZXIgYWNjb3VudCB3aWxsIGV4cGlyZSAob3IgZGlkIGV4cGlyZSkuIChkZWZhdWx0IHZpZXcgb25seSk8L2xpPgogPGxpPmFjdGl2aXR5IC0gVGhlIGRhdGUgYXQgd2hpY2ggdGhlIHVzZXIgYWNjb3VudCB3YXMgbGFzdCBsb2dnZWQgaW4gb3IgbG9nZ2VkIG91dC4gKGRlZmF1bHQgdmlldyBvbmx5KTwvbGk+CiA8bGk+Zjpwcm9wZXJ0eW5hbWUgLSBUaGlzIGFsbG93cyBzb3J0aW5nIHRoZSBvdXRwdXQgYnkgYSBzcGVjaWZpZWQgRkVVIHByb3BlcnR5IG5hbWUuIGkuZTogZjpmdWxsX25hbWUuICA8c3Ryb25nPk5vdGU6PC9zdHJvbmc+IHlvdSBtYXkgZXhwZXJpZW5jZSB1bmV4cGVjdGVkIHJlc3VsdHMgaWYgdGhlIGdyb3VwIGJlaW5nIGRpc3BsYXllZCBkb2VzIG5vdCBoYXZlIHRoYXQgcHJvcGVydHksIG9yIG5vdCBldmVyeSB1c2VyIGluIHRoZSByZXN1bHRpbmcgc2V0IGhhcyB0aGF0IHByb3BlcnR5IGRlZmluZWQuICBBbHNvLCB5b3UgbWF5IGV4cGVyaWVuY2UgdW5leHBlY3RlZCByZXN1bHRzIGlmIHRoZSBmaWVsZCBzcGVjaWZpZWQgaXMgbm90IGEgdGV4dCBzdHJpbmcuICBZb3UgbWF5IGhhdmUgdG8gYWRqdXN0IHRoZSBzb3J0b3JkZXIgcGFyYW1ldGVyIHRvIGdldCB0aGUgZGVzaXJlZCBvdXRwdXQ8L3VsPjwvbGk+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gYnNvcnRieT0iIiAtIFVzZWQgZm9yIHRoZSBicm93c2UgYWN0aW9uLCB0aGlzIHBhcmFtZXRlciBzcGVjaWZpZXMgdGhlIHNvcnQgb3JkZXIgb2YgdGhlIGdlbmVyYXRlZCBwcm9wZXJ0eSBvdXRwdXQuICBQb3NzaWJsZSB2YWx1ZXMgYXJlOgo8dWw+CiAgPGxpPm5hbWUgLSB0aGUgcHJvcGVydHkgbmFtZS48L2xpPgogIDxsaT5jb3VudCAtIHRoZSBudW1iZXIgb2YgbWF0Y2hlcy48L2xpPgo8L3VsPjwvbGk+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gc29ydG9yZGVyPSJBU0MiIC0gVXNlZCBmb3IgdGhlIGRlZmF1bHQgYWN0aW9uLCB0aGlzIHBhcmFtZXRlciBzcGVjaWZpZXMgdGhlIHNvcnQgb3JkZXIgb2YgdGhlIGdlbmVyYXRlZCBvdXRwdXQuICBQb3NzaWJsZSB2YWx1ZXMgYXJlOgo8dWw+CiAgPGxpPkFTQyAtIEFzY2VuZGluZyBvcmRlcjwvbGk+CiAgPGxpPkRFU0MgLSBEZXNjZW5kaW5nIG9yZGVyPC9saT4KPC91bD48L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGJzb3J0b3JkZXI9IkFTQyIgLSBVc2VkIGZvciB0aGUgYnJvd3NlIGFjdGlvbiwgdGhpcyBwYXJhbWV0ZXIgc3BlY2lmaWVzIHRoZSBzb3J0IG9yZGVyIG9mIHRoZSBnZW5lcmF0ZWQgb3V0cHV0LiAgUG9zc2libGUgdmFsdWVzIGFyZToKPHVsPgogIDxsaT5BU0MgLSBBc2NlbmRpbmcgb3JkZXI8L2xpPgogIDxsaT5ERVNDIC0gRGVzY2VuZGluZyBvcmRlcjwvbGk+CjwvdWw+PC9saT48bGk+PGVtPihvcHRpb25hbCk8L2VtPiBwYWdlbGltaXQ9IjEwMCIgLSBVc2VkIGZvciB0aGUgZGVmYXVsdCBhY3Rpb24sIHRoaXMgcGFyYW1ldGVyIHNwZWNpZmllcyB0aGUgbWF4aW11bSBudW1iZXIgb2YgaXRlbXMgdG8gYmUgcmV0dXJuZWQuPC9saT48bGk+PGVtPihvcHRpb25hbCk8L2VtPiBwcm9wPSIiIC0gVXNlZCBmb3IgdGhlIGRlZmF1bHQsYnJvd3NlIGFuZCBkaXJlY3RvcnkgYWN0aW9ucywgdGhpcyBwYXJhbWV0ZXIgYmVoYXZlcyBpbiB0d28gZGlmZmVyZW50IHdheXMgZGVwZW5kaW5nIHVwb24gdGhlIGFjdGlvbjoKPHVsPgogIDxsaT5UaGUgZGVmYXVsdCAoc3VtbWFyeSkgYWN0aW9uCiAgICA8cD5JbiB0aGUgZGVmYXVsdCAoc3VtbWFyeSkgYWN0aW9uLCB0aGlzIHBhcmFtZXRlciBjYW4gYmUgdXNlZCB0byBzcGVjaWZ5IGEgcHJvcGVydHkgdG8gZmlsdGVyIHRoZSByZXN1bHRzIGJ5LiAgSXQgd29ya3MgaW4gY29uanVuY3Rpb24gd2l0aCB0aGUgcHJvcHZhbCBwYXJhbWV0ZXIgYmVsb3cuPC9wPgogIDwvbGk+CiAgPGxpPlRoZSBicm93c2UgYWN0aW9uCiAgICA8cD5JbiB0aGUgYnJvd3NlIGFjdGlvbiwgdGhpcyBwYXJhbWV0ZXIgY2FuIGJlIHVzZWQgdG8gc3BlY2lmeSBhbiBGRVUgcHJvcGVydHkgdG8gYnJvd3NlPC9wPgogIDwvbGk+CiAgPGxpPlRoZSBkaXJlY3RvcnkgYWN0aW9uLgogICAgPHA+SW4gdGhlIGRpcmVjdG9yeSBhY3Rpb24sIHRoaXMgYXByYW1ldGVyIGNhbiBiZSB1c2VkIHRvIHNwZWNpZnkgYSBwcm9wZXJ0eSB0byBnZW5lcmF0ZSBhIGRpcmVjdG9yeSBmcm9tLiAgIFRoZSBkZWZhdWx0IHZhbHVlIGluIHRoZSBkaXJlY3RvcnkgYWN0aW9uIGlzICZxdW90O3VzZXJuYW1lJnF1b3RlOzwvcD4KICA8L2xpPgogIDxsaT5UaGUgcHJvcHZhbHMgYWN0aW9uLgogICAgPHA+SW4gdGhlIHByb3B2YWxzIGFjdGlvbiwgdGhpcyBwYXJhbWV0ZXIgY2FuIGJlIHVzZWQgdG8gc3BlY2lmeSB0aGUgcHJvcGVydHkgdG8gbGlzdCB0aGUgdmFsdWVzIG9mLjwvcD4KICA8L2xpPgo8L3VsPjwvbGk+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gcHJvcHZhbD0iIiAtIFVzZWQgaW4gY29uanVuY3Rpb24gd2l0aCB0aGUgJnF1b3Q7cHJvcCZxdW90OyBwYXJhbWV0ZXIgZm9yIHRoZSBkZWZhdWx0IChzdW1tYXJ5KSBhbmQgcHJvcHZhbHMgYWN0aW9uLCB0aGlzIHBhcmFtZXRlciBhbGxvd3Mgc3BlY2lmeWluZyBhIHZhbHVlIG9uIHdoaWNoIHRvIGZpbHRlciB1c2VycyBieS4gIEZvciB0aGUgcHJvcHZhbHMgYWN0aW9uIHRoaXMgcGFyYW1ldGVyIGNvbnRhaW5zIHRoZSBsZXR0ZXIocykgdGhhdCBzaG91bGQgYmUgdXNlZCB0byBmaWx0ZXIgdGhlIHJlc3VsdHMuPC9saT48bGk+PGVtPihvcHRpb25hbCk8L2VtPiB1c2VsaWtlPSIwIiAtIFVzZWQgaW4gY29uanVuY3Rpb24gd2l0aCB0aGUgJnF1b3Q7cHJvcCZxdW90IGFuZCAmcXVvdDtwcm9wdmFsJnF1b3Q7IHBhcmFtZXRlcnMsIHRoaXMgcGFyYW1ldGVyLCBpZiBzZXQgdG8gYSBwb3NpdGl2ZSBpbnRlZ2VyIHZhbHVlIGluZGljYXRlcyB0aGF0IHRoZSBwcm9wdmFsIHBhcmFtZXRlciBjb250YWlucyBhIExJS0UgZXhwcmVzc2lvbi4gIFdoZW4gdXNlZCBpbiB0aGUgcHJvcHZhbHMgYWN0aW9uLCB0aGlzIHBhcmFtZXRlciBpcyBvbiBieSBkZWZhdWx0LjwvbGk+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gZGV0YWlscGFnZT0iIiAtIFRoaXMgcGFyYW1ldGVyLCBpZiBzcGVjaWZpZWQsIHNob3VsZCBjb250YWluIHRoZSBwYWdlaWQgb3IgYWxpYXMgb2YgYSBDTVMgY29udGVudCBwYWdlIG9uIHdoaWNoIHlvdSB3b3VsZCBsaWtlIHRvIHNob3cgYW55IGRldGFpbCByZXBvcnQ8L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IHJlc3VsdHBhZ2U9IiIgLSBVc2VkIGZvciB0aGUgc2VhcmNoLCBhbmQgYnJvd3NlIGFjdGlvbnMsIHRoaXMgcGFyYW1ldGVyIHNwZWNpZmllcyB3aGljaCBDTVNNUyBjb250ZW50IHBhZ2Ugc2hvdWxkIGJlIHVzZWQgdG8gZGlzcGxheSB0aGUgbWF0Y2hpbmcgYXJ0aWNsZXMgZnJvbSB0aGUgZmlsdGVyIG9wZXJhdGlvbi48L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IHN1bW1hcnl0ZW1wbGF0ZT0iIiAtIFRoaXMgcGFyYW1ldGVyIGFsbG93cyBzcGVjaWZ5aW5nIGEgbm9uIGRlZmF1bHQgc3VtbWFyeSB0ZW1wbGF0ZSBuYW1lIHRvIHVzZSBmb3Igc3VtbWFyeSBkaXNwbGF5czwvbGk+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gZGlyZWN0b3J5dGVtcGxhdGU9IiIgLSBUaGlzIHBhcmFtZXRlciBhbGxvd3Mgc3BlY2lmeWluZyBhIG5vbiBkZWZhdWx0IGRpcmVjdG9yeSB0ZW1wbGF0ZSBuYW1lIHRvIHVzZSB3aXRoIGRpcmVjdG9yeSBkaXNwbGF5czwvbGk+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gZGV0YWlsdGVtcGxhdGU9IiIgLSBUaGlzIHBhcmFtZXRlciBhbGxvd3Mgc3BlY2lmeWluZyBhIG5vbiBkZWZhdWx0IGRldGFpbCB0ZW1wbGF0ZSBuYW1lIHRvIHVzZSBmb3IgZGV0YWlsIGRpc3BsYXlzPC9saT48bGk+PGVtPihvcHRpb25hbCk8L2VtPiBzZWFyY2hmb3JtdGVtcGxhdGU9IiIgLSBUaGlzIHBhcmFtZXRlciBhbGxvd3Mgc3BlY2lmeWluZyBhIG5vbiBkZWZhdWx0IHNlYXJjaCB0ZW1wbGF0ZSBuYW1lIHRvIHVzZSBpbiBzZWFyY2ggZm9ybXM8L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGJyb3dzZXByb3B0ZW1wbGF0ZT0iIiAtIFRoaXMgcGFyYW1ldGVyIGFsbG93cyBzcGVjaWZ5aW5nIGEgbm9uIGRlZmF1bHQgYnJvd3NlIHByb3BlcnR5IHRlbXBsYXRlIG5hbWUgdG8gdXNlIGZvciBhIHByb3BlcnR5IGJyb3dzaW5nIHZpZXc8L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IHNlYXJjaHByb3BlcnR5PSIiIC0gVGhpcyBwYXJhbWV0ZXIgYWxsb3dzIHNwZWNpZnlpbmcgYSBzaW5nbGUgb3IgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgYWRkaXRpb25hbCBGRVUgcHJvcGVydHkgbmFtZXMgdG8gc3VwcGx5IGluIHRoZSBzZWFyY2ggZm9ybTwvbGk+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gdWlkPSIiIC0gVXNlZCBpbiBjb25qdW5jdGlvbiB3aXRoIHRoZSBkZXRhaWwgZGlzcGxheSwgdGhpcyBwYXJhbWV0ZXIgbXVzdCBjb250YWluIHRoZSB1aWQgb2YgYSB2YWxpZCBmcm9udGVuZCB1c2VyIGFjY291bnQ8L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IHNwYXJzZT0iMCIgLSBBcHBsaWNhYmxlIG9ubHkgdG8gdGhlIGRpcmVjdG9yeSB2aWV3IHRoaXMgb3B0aW9uIHdpbGwgb25seSBzaG93IGEgZGlyZWN0b3J5ICBsZXR0ZXIgZm9yIHdoaWNoIHRoZXJlIGFyZSBtYXRjaGluZyB1c2Vycy48L2xpPjwvdWw+]]></help>
	<about><![CDATA[PGJyIC8+QXV0aG9yOiBjYWxndXkxMDAwICZsdDtjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnJmd0OzxiciAvPjxiciAvPlZlcnNpb246IDEuMzxiciAvPjxiciAvPkNoYW5nZSBIaXN0b3J5OjxiciAvPjx1bD4KPGxpPlZlcnNpb24gMS4wIC0gSmFudWFyeSwgMjAwOQogIDxwPkluaXRpYWwgUmVsZWFzZTwvcD4KPC9saT4KPGxpPlZlcnNpb24gMS4xCiAgPHA+QWRkcyBzZWFyY2ggYW5kIGJyb3dzZSBjYXBhYmlsaXRpZXMuPC9wPgo8L2xpPgo8bGk+VmVyc2lvbiAxLjEuMSAtIFNlcHRlbWJlciwgMjAwOQogIDxwPkFkZHMgc29ydGluZyBpbiB0aGUgYnJvd3NlIGFjdGlvbi48L3A+CjwvbGk+CjxsaT5WZXJzaW9uIDEuMS4yIC0gU2VwdGVtYmVyLCAyMDA5CiAgPHA+Rml4IHBhcmFtZXRlciBjb25mbGljdCB3cnQgc29ydGluZyBpbiB0aGUgYnJvd3NlIGFjdGlvbi48L3A+CjwvbGk+CjxsaT5WZXJzaW9uIDEuMS4zIC0gT2N0b2JlciwgMjAwOQogIDxwPk1pbm9yIGJ1ZyBmaXguPC9wPgo8L2xpPgo8bGk+VmVyc2lvbiAxLjEuNCAtIE9jdG9iZXIsIDIwMDkKICA8cD5NaW5vciBidWcgZml4LjwvcD4KPC9saT4KPGxpPlZlcnNpb24gMS4xLjQgLSBPY3RvYmVyLCAyMDA5CiAgPHA+QWRkIG1pc3NpbmcgbGFuZyBzdHJpbmcuPC9wPgo8L2xpPgo8bGk+VmVyc2lvbiAxLjEuNSAtIE5vdmVtYmVyLCAyMDA5CiAgPHA+TWlub3IgYnVnIGZpeGVzLjwvcD4KPC9saT4KPGxpPlZlcnNpb24gMS4xLjYgLSBNYXJjaCwgMjAxMAogIDxwPkFkZCB0aGUgYWJpbGl0eSB0byBzb3J0IGJ5IHVzZXIgcHJvcGVydHkgaW4gc3VtbWFyeSB2aWV3PC9wPgo8L2xpPgo8bGk+VmVyc2lvbiAxLjIgLSBNYXJjaCwgMjAxMAogIDxwPkFkZHMgdGhlIGFiaWxpdHkgdG8gc2VhcmNoIGJ5IHR3byB1c2VyIGRlZmluZWQgcHJvcGVydGllcyBpbiB0aGUgc2VhcmNoIGFjdGlvbi48L3A+CiAgPHA+QWRkcyBudW1lcmljYWwgb3B0aW9ucyB0byB0aGUgZGlyZWN0b3J5IHZpZXcuPC9wPgo8L2xpPgo8bGk+VmVyc2lvbiAxLjIuMSAtIE1hcmNoLCAyMDEwCiAgPHA+TW9kaWZpZXMgdGhlIHNlYXJjaHByb3BlcnR5IGZpZWxkIHRvIHN1cHBvcnQgYSBsaXN0IG9mIHByb3BlcnR5IG5hbWVzLjwvcD4KICA8cD5Db21wbGV0ZWx5IGJyZWFrcyBleGlzdGluZyBzZWFyY2ggZm9ybSB0ZW1wbGF0ZXMuPC9wPgogIDxwPlJlbW92ZXMgdGhlIHNob3J0IGxpdmVkIHNlYXJjaHByb3BlcnR5MiBwYXJhbS48L3A+CjwvbGk+CjxsaT5WZXJzaW9uIDEuMi4yIC0gSnVuZSwgMjAxMAogIDxwPkZpeGVzIGEgbWlub3IgYnVnIHdpdGggdGhlIHNob3dleHBpcmVkIGZsYWcuPC9wPgo8L2xpPgo8bGk+VmVyc2lvbiAxLjIuMyAtIEp1bHksIDIwMTAKICA8cD5GaXhlcyBhIG1pbm9yIGJ1ZyB3aXRoIHRoZSBicm93c2UgYWN0aW9uLjwvcD4KPC9saT4KPGxpPlZlcnNpb24gMS4yLjQgLSBBdWd1c3QsIDIwMTAKICA8cD5GaXhlcyBhIG1pbm9yIGJ1ZyB3aXRoIHRoZSBicm93c2UgYWN0aW9uIGFuZCB1c2VsaWtlLi4uPC9wPgo8L2xpPgo8bGk+VmVyc2lvbiAxLjIuNiAtIFNlcHRlbWJlciwgMjAxMQogIDxwPk9wdGltaXphdGlvbnMgYW5kIGJ1ZyBmaXhlcy48L3A+CjwvbGk+CjxsaT5WZXJzaW9uIDEuMi43IC0gSmFudWFyeSwgMjAxMgogIDxwPk1pbm9yIGZpeCB0byB0aGUgc2VhcmNoIGFjdGlvbiAoZm9yIGNoZWNrYm94ZXMpLjwvcD4KPC9saT4KPGxpPlZlcnNpb24gMS4zIC0gSmFudWFyeSwgMjAxMgogIDxwPkFkZHMgdGhlIHByb3B2YWxzIGFjdGlvbiBmb3IgYWpheCBhdXRvY29tcGxldGUuPC9wPgo8L2xpPgo8L3VsPgo8YnIgLz4=]]></about>
	<description><![CDATA[A module allowing searching, browsing, and viewing details about frontend users]]></description>
	<requires>
	  <requiredname>CGExtensions</requiredname>
	  <requiredversion>1.25</requiredversion>
	</requires>
	<requires>
	  <requiredname>FrontEndUsers</requiredname>
	  <requiredversion>1.15.2</requiredversion>
	</requires>
	<file>
	  <filename>/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/action.browse.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IENHVXNlckRpcmVjdG9yeSAoYykgMjAwOSBieSBSb2JlcnQgQ2FtcGJlbGwgCiMgICAgICAgICAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgQW4gYWRkb24gbW9kdWxlIGZvciBDTVMgTWFkZSBTaW1wbGUgdG8gcHJvdmlkZSB0aGUgYWJpbGl0eSB0byBicm93c2UKIyAgYW5kIHZpZXcgc3VtbWFyeSByZXBvcnRzIGFuZCBkZXRhaWwgcmVwb3J0cyBhYm91dCBncm91cHMgb2YgZnJvbnRlbmQKIyAgdXNlcnMuCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBIb3dldmVyLCBhcyBhIHNwZWNpYWwgZXhjZXB0aW9uIHRvIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgZGlzdHJpYnV0ZWQKIyBhcyBhbiBhZGRvbiBtb2R1bGUgdG8gQ01TIE1hZGUgU2ltcGxlLiAgWW91IG1heSBub3QgdXNlIHRoaXMgc29mdHdhcmUKIyBpbiBhbnkgTm9uIEdQTCB2ZXJzaW9uIG9mIENNUyBNYWRlIHNpbXBsZSwgb3IgaW4gYW55IHZlcnNpb24gb2YgQ01TCiMgTWFkZSBzaW1wbGUgdGhhdCBkb2VzIG5vdCBpbmRpY2F0ZSBjbGVhcmx5IGFuZCBvYnZpb3VzbHkgaW4gaXRzIGFkbWluIAojIHNlY3Rpb24gdGhhdCB0aGUgc2l0ZSB3YXMgYnVpbHQgd2l0aCBDTVMgTWFkZSBzaW1wbGUuCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojRU5EX0xJQ0VOU0UKaWYoICFpc3NldCgkZ0NtcykgKSBleGl0OwoKIwojIEluaXRpYWxpemF0aW9uCiMKJGZldSA9JiAkdGhpcy0+R2V0TW9kdWxlSW5zdGFuY2UoJ0Zyb250RW5kVXNlcnMnKTsKaWYoICEkZmV1ICkgcmV0dXJuOwokaW5saW5lID0gMDsKJHJlc3VsdHBhZ2UgPSAkcmV0dXJuaWQ7CiR0aGV0ZW1wbGF0ZSA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKENHVVNFUkRJUl9QUkVGX0RGTFRCUk9XU0VQUk9QX05BTUUpOwokcHJvcGVydHk9Jyc7CiRmaWVsZHR5cGUgPSAnJzsKJG9wdGlvbnMgPSAnJzsKJHVzZWxpa2UgPSAwOwokc29ydG9yZGVyID0gJ2FzYyc7CgojCiMgR2V0IHBhcmFtZXRlcnMKIwppZiggaXNzZXQoJHBhcmFtc1snaW5saW5lJ10pICYmICRwYXJhbXNbJ2lubGluZSddICE9IDAgKQogIHsKICAgICRpbmxpbmUgPSAxOwogICAgdW5zZXQoJHBhcmFtc1snaW5saW5lJ10pOwogIH0KaWYoIGlzc2V0KCRwYXJhbXNbJ3Jlc3VsdHBhZ2UnXSkgKQogIHsKICAgICR0bXAgPSAkdGhpcy0+cmVzb2x2ZV9hbGlhc19vcl9pZCgkcGFyYW1zWydyZXN1bHRwYWdlJ10pOwogICAgaWYoICR0bXAgKQogICAgICB7CgkkcmVzdWx0cGFnZSA9ICR0bXA7CgkkaW5saW5lID0gMDsKICAgICAgfQogICAgdW5zZXQoJHBhcmFtc1sncmVzdWx0cGFnZSddKTsKICB9CmlmKCBpc3NldCgkcGFyYW1zWydicm93c2Vwcm9wdGVtcGxhdGUnXSkgKQogIHsKICAgICR0aGV0ZW1wbGF0ZSA9IHRyaW0oJHBhcmFtc1snYnJvd3NlcHJvcHRlbXBsYXRlJ10pOwogICAgdW5zZXQoJHBhcmFtc1snYnJvd3NlcHJvcHRlbXBsYXRlJ10pOwogIH0KaWYoIGlzc2V0KCRwYXJhbXNbJ3Byb3AnXSkgKQogIHsKICAgICRwcm9wZXJ0eSA9IHRyaW0oJHBhcmFtc1sncHJvcCddKTsKICB9CmlmKCBpc3NldCgkcGFyYW1zWydic29ydG9yZGVyJ10pICkKICB7CiAgICAkdG1wID0gc3RydG9sb3dlcigkcGFyYW1zWydic29ydG9yZGVyJ10pOwogICAgc3dpdGNoKCR0bXApCiAgICAgIHsKICAgICAgY2FzZSAnYXNjJzoKICAgICAgY2FzZSAnZGVzYyc6Cgkkc29ydG9yZGVyID0gJHRtcDsKICAgICAgfQogIH0KCi8vIHByb3BlcnR5IG11c3QgYmUgc3BlY2lmaWVkLgppZiggZW1wdHkoJHByb3BlcnR5KSApIHJldHVybjsKCiRkZWZuID0gJGZldS0+R2V0UHJvcGVydHlEZWZuKCRwcm9wZXJ0eSk7Ci8vIHByb3BlcnR5IGNvdWxkIG5vdCBiZSBmb3VuZC4KaWYoICEkZGVmbiApIHJldHVybjsKCi8vIGZpZ3VyZSBvdXQgd2hhdCB0eXBlIG9mIGZpZWxkIGl0J2xsIGJlCmlmKCAkZGVmbiApCiAgewogICAgc3dpdGNoKCAkZGVmblsndHlwZSddICkKICAgICAgewogICAgICBjYXNlICcwJzogLy8gdGV4dAogICAgICBjYXNlICcyJzogLy8gZW1haWwKCSRmaWVsZHR5cGUgPSAndGV4dCc7CglicmVhazsKCiAgICAgIGNhc2UgJzQnOiAvLyBkcm9wZG93bgogICAgICBjYXNlICc1JzogLy8gbXVsdGlzZWxlY3QKICAgICAgY2FzZSAnNyc6IC8vIHJhZGlvYnV0dG9ucwoJJGZpZWxkdHlwZSA9ICdzZWxlY3QnOwoJJHRtcCA9ICRmZXUtPkdldFNlbGVjdE9wdGlvbnMoJGRlZm5bJ25hbWUnXSwxKTsKCSRvcHRpb25zID0gYXJyYXkoKTsKCSRvcHRpb25zWy0xXSA9ICR0aGlzLT5MYW5nKCdhbnknKTsKCWZvcmVhY2goICR0bXAgYXMgJGtleSA9PiAkdmFsdWUgKQoJICB7CgkgICAgJG9wdGlvbnNbJHZhbHVlXSA9ICRrZXk7CgkgIH0KCWlmKCAkZGVmblsndHlwZSddID09IDUgKQoJICB7CgkgICAgJHVzZWxpa2UgPSAxOwoJICB9CglicmVhazsKCiAgICAgIGNhc2UgJzEnOiAvLyBjaGVja2JveAogICAgICBjYXNlICczJzogLy8gdGV4dGFyZWEKICAgICAgY2FzZSAnNic6IC8vIGltYWdlCiAgICAgIGNhc2UgJzgnOiAvLyBkYXRlCgkvLyBub3Qgc3VwcG9ydGVkLgoJcmV0dXJuOwoJYnJlYWs7CiAgICAgIH0KICB9CgovLyBnZXQgdGhlIGRhdGEuCiRkYXRhID0gYXJyYXkoKTsKc3dpdGNoKCRmaWVsZHR5cGUpCiAgewogIGNhc2UgJ3RleHQnOgogICAgJHF1ZXJ5ID0gJ1NFTEVDVCBESVNUSU5DVCBkYXRhIAogICAgICAgICAgICAgICAgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfcHJvcGVydGllcyBBIAogICAgICAgICAgICAgICAgTEVGVCBKT0lOICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc191c2VycyBCCiAgICAgICAgICAgICAgICAgIE9OIEEudXNlcmlkID0gQi5pZCAKICAgICAgICAgICAgICAgV0hFUkUgQS50aXRsZSA9ID8KICAgICAgICAgICAgICAgICBBTkQgQi5leHBpcmVzID4gTk9XKCknOwogICAgJHRtcCA9ICRkYi0+R2V0QXJyYXkoJHF1ZXJ5LGFycmF5KCRwcm9wZXJ0eSkpOwogICAgaWYoICFpc19hcnJheSgkdG1wKSApIGJyZWFrOwogICAgZm9yZWFjaCggJHRtcCBhcyAkb25lICkKICAgICAgewoJJHJlYyA9IGFycmF5KCk7CgkkcmVjWyduYW1lJ10gPSAkb25lWydkYXRhJ107CgkkcmVjWyd1cmwnXSA9ICR0aGlzLT5DcmVhdGVQcm9wZXJ0eVN1bW1hcnlVUkwoJGlkLCRyZXN1bHRwYWdlLCRwcm9wZXJ0eSwkb25lWydkYXRhJ10sJHBhcmFtcywkaW5saW5lKTsKCSRkYXRhW10gPSAkcmVjOwogICAgICB9CiAgICBicmVhazsKCiAgY2FzZSAnc2VsZWN0JzoKICAgIHsKICAgICAgJHF1ZXJ5ID0gJ1NFTEVDVCBkYXRhIAogICAgICAgICAgICAgICAgICBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19wcm9wZXJ0aWVzIEEgCiAgICAgICAgICAgICAgICBMRUZUIEpPSU4gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX3VzZXJzIEIKICAgICAgICAgICAgICAgICAgT04gQS51c2VyaWQgPSBCLmlkIAogICAgICAgICAgICAgICAgIFdIRVJFIEEudGl0bGUgPSA/CiAgICAgICAgICAgICAgICAgQU5EIEIuZXhwaXJlcyA+IE5PVygpJzsKICAgICAgJHRtcCA9ICRkYi0+R2V0QXJyYXkoJHF1ZXJ5LGFycmF5KCRwcm9wZXJ0eSkpOwogICAgICBpZiggJHRtcCApCgl7CgkgIC8vIGJ1aWxkIGEgaGlzdG9ncmFtIG9mIGFsbCB0aGUgc2VsZWN0ZWQgb3B0aW9ucy4KCSAgJGhpc3RvZ3JhbSA9IGFycmF5KCk7CgkgIGZvcmVhY2goICR0bXAgYXMgJHJvdyApCgkgICAgewoJICAgICAgJHRtcDMgPSBleHBsb2RlKCcsJywkcm93WydkYXRhJ10pOwoJICAgICAgZm9yZWFjaCggJHRtcDMgYXMgJG9uZXZhbCApCgkJewoJCSAgaWYoICFpc3NldCgkaGlzdG9ncmFtWyRvbmV2YWxdKSApCgkJICAgIHsKCQkgICAgICAkaGlzdG9ncmFtWyRvbmV2YWxdPTA7CgkJICAgIH0KCQkgICRoaXN0b2dyYW1bJG9uZXZhbF0rKzsKCQl9CgkgICAgfQoJICAKCSAgLy8gbm93IHdlIGhhdmUgYWxsIHRoZSBvcHRpb25zLCBidWlsZCBvdXIgZGF0YSBhcnJheS4KCSAgZm9yZWFjaCggJGhpc3RvZ3JhbSBhcyAka2V5ID0+ICRjb3VudCApCgkgICAgewoJICAgICAgJHZhbCA9ICRrZXk7CgkgICAgICBpZiggJHVzZWxpa2UgKQoJCXsKCQkgICRwYXJhbXNbJ3VzZWxpa2UnXSA9IDE7CgkJfQoJICAgICAgaWYoICFpc3NldCgkb3B0aW9uc1ska2V5XSkgKSBjb250aW51ZTsKCSAgICAgICRyZWMgPSBhcnJheSgpOwoJICAgICAgJHJlY1snbmFtZSddID0gJG9wdGlvbnNbJGtleV07CgkgICAgICAkcmVjWyd1cmwnXSA9ICR0aGlzLT5DcmVhdGVQcm9wZXJ0eVN1bW1hcnl1cmwoJGlkLCRyZXN1bHRwYWdlLCRwcm9wZXJ0eSwkdmFsLCRwYXJhbXMsJGlubGluZSk7CgkgICAgICAkcmVjWydjb3VudCddID0gJGNvdW50OwoJICAgICAgCgkgICAgICAkZGF0YVtdID0gJHJlYzsKCSAgICB9Cgl9IC8vIGlmCiAgICB9CiAgICBicmVhazsKICB9CgoKLy8gbm93IHdlIGNhbiBvcHRpb25hbGx5IHNvcnQgdGhpcyBzdHVmZi4KaWYoIGlzc2V0KCRwYXJhbXNbJ2Jzb3J0YnknXSkgJiYgY291bnQoJGRhdGEpICkKICB7CiAgICBzd2l0Y2goJHBhcmFtc1snYnNvcnRieSddKQogICAgICB7CiAgICAgIGNhc2UgJ25hbWUnOgoJaWYoICRzb3J0b3JkZXIgPT0gJ2FzYycgKQoJICB7CgkgICAgY2dlX2FycmF5OjpoYXNoc29ydCgkZGF0YSwnbmFtZScsdHJ1ZSk7CgkgIH0KCWVsc2UKCSAgewoJICAgIGNnZV9hcnJheTo6aGFzaHJzb3J0KCRkYXRhLCduYW1lJyx0cnVlKTsKCSAgfQoJYnJlYWs7CiAgICAgIGNhc2UgJ2NvdW50JzoKCWlmKCAkc29ydG9yZGVyID09ICdhc2MnICkKCSAgewoJICAgIGNnZV9hcnJheTo6aGFzaHNvcnQoJGRhdGEsJ2NvdW50Jyk7CgkgIH0KCWVsc2UKCSAgewoJICAgIGNnZV9hcnJheTo6aGFzaHJzb3J0KCRkYXRhLCdjb3VudCcpOwoJICB9CglicmVhazsKICAgICAgfQogIH0KCi8vCi8vIEdpdmUgZXZlcnl0aGluZyB0byBzbWFydHkKLy8KaWYoICFlbXB0eSgkZmllbGR0eXBlKSApCiAgewogICAgJHNtYXJ0eS0+YXNzaWduKCd1ZF9maWVsZGRlZm4nLCRkZWZuKTsKICAgICRzbWFydHktPmFzc2lnbigndWRfZmllbGR0eXBlJywkZmllbGR0eXBlKTsKICAgIGlmKCAhZW1wdHkoJG9wdGlvbnMpICkKICAgICAgewoJJHNtYXJ0eS0+YXNzaWduKCd1ZF9vcHRpb25zJywkb3B0aW9ucyk7CiAgICAgIH0KICB9CmlmKCBjb3VudCgkZGF0YSkgKQogIHsKICAgICRzbWFydHktPmFzc2lnbignYnJvd3Nlb3B0aW9ucycsJGRhdGEpOwogIH0KCiMKIyBQcm9jZXNzIHRoZSB0ZW1wbGF0ZQojCmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhYmFzZSgnYnJvd3NlcHJvcF8nLiR0aGV0ZW1wbGF0ZSk7CgojCiMgRU9GCiMKPz4K]]></data>
	</file>
	<file>
	  <filename>/action.default.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IENHVXNlckRpcmVjdG9yeSAoYykgMjAwOSBieSBSb2JlcnQgQ2FtcGJlbGwgCiMgICAgICAgICAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgQW4gYWRkb24gbW9kdWxlIGZvciBDTVMgTWFkZSBTaW1wbGUgdG8gcHJvdmlkZSB0aGUgYWJpbGl0eSB0byBicm93c2UKIyAgYW5kIHZpZXcgc3VtbWFyeSByZXBvcnRzIGFuZCBkZXRhaWwgcmVwb3J0cyBhYm91dCBncm91cHMgb2YgZnJvbnRlbmQKIyAgdXNlcnMuCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBIb3dldmVyLCBhcyBhIHNwZWNpYWwgZXhjZXB0aW9uIHRvIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgZGlzdHJpYnV0ZWQKIyBhcyBhbiBhZGRvbiBtb2R1bGUgdG8gQ01TIE1hZGUgU2ltcGxlLiAgWW91IG1heSBub3QgdXNlIHRoaXMgc29mdHdhcmUKIyBpbiBhbnkgTm9uIEdQTCB2ZXJzaW9uIG9mIENNUyBNYWRlIHNpbXBsZSwgb3IgaW4gYW55IHZlcnNpb24gb2YgQ01TCiMgTWFkZSBzaW1wbGUgdGhhdCBkb2VzIG5vdCBpbmRpY2F0ZSBjbGVhcmx5IGFuZCBvYnZpb3VzbHkgaW4gaXRzIGFkbWluIAojIHNlY3Rpb24gdGhhdCB0aGUgc2l0ZSB3YXMgYnVpbHQgd2l0aCBDTVMgTWFkZSBzaW1wbGUuCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojRU5EX0xJQ0VOU0UKaWYoICFpc3NldCgkZ0NtcykgKSBleGl0OwoKIwojIEluaXRpYWxpemF0aW9uCiMKJHRoZXRlbXBsYXRlID0gJ3N1bW1hcnlfJy4kdGhpcy0+R2V0UHJlZmVyZW5jZShDR1VTRVJESVJfUFJFRl9ERkxUU1VNTUFSWV9OQU1FKTsKJG1lc3NhZ2VzID0gYXJyYXkoKTsKJHN0YXR1cyA9ICcnOwokZ2lkID0gJyc7CiRzb3J0YnkgPSAndXNlcm5hbWUnOwokc29ydG9yZGVyID0gJ0FTQyc7CiRzaG93ZXhwaXJlZCA9IDA7CiRwYWdlbGltaXQgPSAxMDA7CiRwYWdlbnVtID0gMTsKJG51bXBhZ2VzID0gMTsKJGl0ZW1jb3VudCA9IDA7CiRvZmZzZXQgPSAwOwokcHJvcGVydHkgPSAnJzsKJHVzZWxpa2UgPSAwOwokcHJvcHZhbCA9ICcnOwokb3JpZ19yZXR1cm5pZCA9ICRyZXR1cm5pZDsKJGRldGFpbHBhZ2UgPSAkcmV0dXJuaWQ7CgoKIwojIFNldHVwCiMKJGZldSA9ICR0aGlzLT5HZXRNb2R1bGVJbnN0YW5jZSgnRnJvbnRFbmRVc2VycycpOwppZiggISRmZXUgKSAKICB7CiAgICAkc3RhdHVzID0gJ2Vycm9yJzsKICAgICRtZXNzYWdlc1tdID0gICR0aGlzLT5MYW5nKCdlcnJvcl9ub2ZldScpOwogIH0KCgojCiMgUHJvY2VzcyBQYXJhbWV0ZXJzCiMKaWYoIGlzc2V0KCRwYXJhbXNbJ3N1bW1hcnl0ZW1wbGF0ZSddKSApCiAgewogICAgJHRoZXRlbXBsYXRlID0gJ3N1bW1hcnlfJy50cmltKCRwYXJhbXNbJ3N1bW1hcnl0ZW1wbGF0ZSddKTsKICB9CmlmIChpc3NldCgkcGFyYW1zWydkZXRhaWxwYWdlJ10pKQogIHsKICAgICRtYW5hZ2VyID0gJGdDbXMtPkdldEhpZXJhcmNoeU1hbmFnZXIoKTsKICAgICRub2RlID0gJG1hbmFnZXItPnN1cmVHZXROb2RlQnlBbGlhcygkcGFyYW1zWydkZXRhaWxwYWdlJ10pOwogICAgaWYgKGlzc2V0KCRub2RlKSkKICAgICAgewoJJGNvbnRlbnQgPSAkbm9kZS0+R2V0Q29udGVudCgpOwkKCWlmIChpc3NldCgkY29udGVudCkpCgkgIHsKCSAgICAkZGV0YWlscGFnZSA9ICRjb250ZW50LT5JZCgpOwoJICB9CiAgICAgIH0KICAgIGVsc2UKICAgICAgewoJJG5vZGUgPSAkbWFuYWdlci0+c3VyZUdldE5vZGVCeUlkKCRwYXJhbXNbJ2RldGFpbHBhZ2UnXSk7CglpZiAoaXNzZXQoJG5vZGUpKQoJICB7CgkgICAgJGRldGFpbHBhZ2UgPSAkcGFyYW1zWydkZXRhaWxwYWdlJ107CgkgIH0KICAgICAgfQoKICAgIGlmKCAkZGV0YWlscGFnZSAhPSAnJyApCiAgICAgIHsKCSRwYXJhbXNbJ29yaWdwYWdlJ10gPSAkcmV0dXJuaWQ7CiAgICAgIH0KICB9CgppZiggaXNzZXQoJHBhcmFtc1snZ3JvdXAnXSkgKQogIHsKICAgICRnaWQgPSAkZmV1LT5HZXRHcm91cElEKHRyaW0oJHBhcmFtc1snZ3JvdXAnXSkpOwogICAgaWYoICRnaWQgPT09IGZhbHNlICkKICAgICAgewoJJHN0YXR1cyA9ICdlcnJvcic7CgkkbWVzc2FnZXNbXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9pbnZhbGlkZ3JvdXAnKTsKICAgICAgfQogIH0KaWYoIGlzc2V0KCRwYXJhbXNbJ2dpZCddKSApCiAgewogICAgJGdpZCA9IChpbnQpJHBhcmFtc1snZ2lkJ107CiAgICBpZiggISRmZXUtPkdyb3VwRXhpc3RzQnlJRCgkZ2lkKSApCiAgICAgIHsKCSRzdGF0dXMgPSAnZXJyb3InOwoJJG1lc3NhZ2VzW10gPSAkdGhpcy0+TGFuZygnZXJyb3JfaW52YWxpZGdyb3VwJyk7CiAgICAgIH0KICB9CmlmKCBpc3NldCgkcGFyYW1zWydzaG93ZXhwaXJlZCddKSApCiAgewogICAgJHNob3dleHBpcmVkID0gKGludCkkcGFyYW1zWydzaG93ZXhwaXJlZCddOwogIH0KaWYoIGlzc2V0KCRwYXJhbXNbJ3Byb3AnXSkgKQogIHsKICAgICRwcm9wZXJ0eSA9IHRyaW0oJHBhcmFtc1sncHJvcCddKTsKICAgIGlmKCBpc3NldCgkcGFyYW1zWyd1c2VsaWtlJ10pICkKICAgICAgewoJJHVzZWxpa2UgPSAoaW50KSRwYXJhbXNbJ3VzZWxpa2UnXTsKICAgICAgfQogICAgaWYoIGlzc2V0KCRwYXJhbXNbJ3Byb3B2YWwnXSkgKQogICAgICB7CgkkcHJvcHZhbCA9IHRyaW0oJHBhcmFtc1sncHJvcHZhbCddKTsKICAgICAgfQoKICAgIGlmKCAhZW1wdHkoJHByb3BlcnR5KSAmJiBlbXB0eSgkcHJvcHZhbCkgKQogICAgICB7Cgkkc3RhdHVzID0gJ2Vycm9yJzsKCSRtZXNzYWdlc1tdID0gJHRoaXMtPkxhbmcoJ2Vycm9yX21pc3NpbmdwYXJhbScpOwogICAgICB9CiAgfQppZiggaXNzZXQoJHBhcmFtc1snc29ydGJ5J10pICkKICB7CiAgICAkdG1wID0gdHJpbSgkcGFyYW1zWydzb3J0YnknXSk7CiAgICBzd2l0Y2goJHRtcCkKICAgICAgewogICAgICBjYXNlICdpZCc6CiAgICAgIGNhc2UgJ3VzZXJuYW1lJzoKICAgICAgY2FzZSAnY3JlYXRlZGF0ZSc6CiAgICAgIGNhc2UgJ2V4cGlyZXMnOgoJJHNvcnRieSA9ICdVLicuJHRtcDsKCWJyZWFrOwogICAgICBjYXNlICdhY3Rpdml0eSc6Cgkkc29ydGJ5ID0gJ0gucmVmZGF0ZSc7CglicmVhazsKICAgICAgZGVmYXVsdDoKCWlmKCBzdGFydHN3aXRoKCR0bXAsJ2Y6JykgKQoJICB7CgkgICAgJHNvcnRieSA9ICR0bXA7CgkgIH0KCWVsc2UKCSAgewoJICAgICRzdGF0dXMgPSAnZXJyb3InOwoJICAgICRtZXNzYWdlc1tdID0gICR0aGlzLT5MYW5nKCdlcnJvcl9pbnZhbGlkc29ydGZpZWxkJywkdG1wKTsKCSAgfQoJYnJlYWs7CiAgICAgIH0KICB9CmlmKCBpc3NldCgkcGFyYW1zWydzb3J0b3JkZXInXSkgKQogIHsKICAgICR0bXAgPSBzdHJ0b3VwcGVyKHRyaW0oJHBhcmFtc1snc29ydG9yZGVyJ10pKTsKICAgIHN3aXRjaCggJHRtcCApCiAgICAgIHsKICAgICAgY2FzZSAnQVNDJzoKICAgICAgY2FzZSAnREVTQyc6Cgkkc29ydG9yZGVyID0gJHRtcDsKCWJyZWFrOwogICAgICBkZWZhdWx0OgoJJHN0YXR1cyA9ICdlcnJvcic7CgkkbWVzc2FnZXNbXSA9ICAkdGhpcy0+TGFuZygnZXJyb3JfaW52YWxpZHNvcnRmaWVsZCcsJHRtcCk7CglicmVhazsKICAgICAgfQogIH0KaWYoIGlzc2V0KCRwYXJhbXNbJ3BhZ2VsaW1pdCddKSApCiAgewogICAgJHBhZ2VsaW1pdCA9IChpbnQpJHBhcmFtc1sncGFnZWxpbWl0J107CiAgICAkcGFnZWxpbWl0ID0gbWF4KCRwYWdlbGltaXQsMSk7CiAgICAkcGFnZWxpbWl0ID0gbWluKDEwMDAsJHBhZ2VsaW1pdCk7CiAgfQppZiggaXNzZXQoJHBhcmFtc1sncGFnZW51bSddKSApCiAgewogICAgJHBhZ2VudW0gPSAoaW50KSRwYXJhbXNbJ3BhZ2VudW0nXTsKICAgICRwYWdlbnVtID0gbWF4KCRwYWdlbnVtLDEpOwogICAgJHBhZ2VudW0gPSBtaW4oMTAwMDAsJHBhZ2VudW0pOwogIH0KCgojCiMgR2V0IHRoZSBkYXRhCiMKaWYoIGVtcHR5KCRzdGF0dXMpICkKICB7CiAgICAkbm93ID0gJGRiLT5EYlRpbWVzdGFtcCh0aW1lKCkpOwogICAgJHJqb2lucyA9IGFycmF5KCk7CiAgICAkcmpvaW5zY291bnQgPSBhcnJheSgpOwogICAgJGpvaW5zID0gYXJyYXkoKTsKICAgICRqb2luc2NvdW50ID0gYXJyYXkoKTsKICAgICR3aGVyZSA9IGFycmF5KCk7CiAgICAkd2hlcmVjb3VudCA9IGFycmF5KCk7CiAgICAkcXBhcm1zID0gYXJyYXkoKTsKICAgICRxcGFybXNjb3VudCA9IGFycmF5KCk7CgogICAgLy8gCiAgICAvLyBidWlsZCB0aGUgcXVlcmllcwogICAgJHRtcCA9ICRkYi0+SWZOdWxsKCdILnJlZmRhdGUnLCRkYi0+RGJUaW1lc3RhbXAoMSkpLicgQVMgcmVmZGF0ZSc7CiAgICAkcXVlcnkgPSAnU0VMRUNUIFUuKiwnLiR0bXAuJyAgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfdXNlcnMgVSc7CiAgICAkcXVlcnljb3VudCA9ICdTRUxFQ1QgY291bnQoVS5pZCkgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfdXNlcnMgVSc7CiAgICAkam9pbnNbXSA9ICcoU0VMRUNUIHVzZXJpZCxhY3Rpb24sTUFYKHJlZmRhdGUpIEFTIHJlZmRhdGUgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfaGlzdG9yeSBHUk9VUCBCWSB1c2VyaWQsYWN0aW9uIEhBVklORyBhY3Rpb24gaW4gKFwnY2hhbmdlIHNldHRpbmdzXCcsXCdsb2dpblwnKSkgQVMgSCBPTiBVLmlkID0gSC51c2VyaWQnOwoKICAgIC8vCiAgICAvLyB0b2RvIGZpbGwgaW4gc3R1ZmYgaGVyZQogICAgLy8KICAgIGlmKCAhZW1wdHkoJGdpZCkgKQogICAgICB7CgkkcmpvaW5zW10gPSBjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX2JlbG9uZ3MgYmVsIE9OIFUuaWQgPSBiZWwudXNlcmlkIEFORCBiZWwuZ3JvdXBpZCA9ICcuKGludCkkZ2lkOwoJJHJqb2luc2NvdW50W10gPSBjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX2JlbG9uZ3MgYmVsIE9OIFUuaWQgPSBiZWwudXNlcmlkIEFORCBiZWwuZ3JvdXBpZCA9ICcuKGludCkkZ2lkOwogICAgICB9CgogICAgaWYoICEkc2hvd2V4cGlyZWQgKQogICAgICB7Cgkkd2hlcmVbXSA9ICJleHBpcmVzID4gJG5vdyI7Cgkkd2hlcmVjb3VudFtdID0gImV4cGlyZXMgPiAkbm93IjsKICAgICAgfQogICAgaWYoICFlbXB0eSgkcHJvcGVydHkpICYmICFlbXB0eSgkcHJvcHZhbCkgKQogICAgICB7Cgkkam9pbnNbXSA9IGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfcHJvcGVydGllcyBQIE9OIFUuaWQgPSBQLnVzZXJpZCBBTkQgUC50aXRsZSA9ID8nOwoJJGpvaW5zY291bnRbXSA9IGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfcHJvcGVydGllcyBQIE9OIFUuaWQgPSBQLnVzZXJpZCBBTkQgUC50aXRsZSA9ID8nOwoJaWYoICRwcm9wZXJ0eSAhPSAnX191c2VybmFtZV9fJyApCgkgIHsKLy8gCSAgICAkd2hlcmVbXSA9ICdQLnRpdGxlID0gPyc7Ci8vIAkgICAgJHdoZXJlY291bnRbXSA9ICdQLnRpdGxlID0gPyc7CgkgICAgJHFwYXJtc1tdID0gJHByb3BlcnR5OwoJICAgICRxcGFybXNjb3VudFtdID0gJHByb3BlcnR5OwoJICB9CgoJaWYoICR1c2VsaWtlICkKCSAgewoJICAgICRwcm9wdmFsID0gJHByb3B2YWwuJyUnOwoJICAgIGlmKCAkcHJvcGVydHkgPT0gJ19fdXNlcm5hbWVfXycgKQoJICAgICAgewoJCSR3aGVyZVtdID0gJ1UudXNlcm5hbWUgTElLRSA/JzsKCQkkd2hlcmVjb3VudFtdID0gJ1UudXNlcm5hbWUgTElLRSA/JzsKCSAgICAgIH0KCSAgICBlbHNlCgkgICAgICB7CgkJJHdoZXJlW10gPSAnUC5kYXRhIExJS0UgPyc7CgkJJHdoZXJlY291bnRbXSA9ICdQLmRhdGEgTElLRSA/JzsKCSAgICAgIH0KCSAgICAkcXBhcm1zW10gPSAkcHJvcHZhbDsKCSAgfQoJZWxzZQoJICB7CgkgICAgaWYoICRwcm9wZXJ0eSA9PSAnX191c2VybmFtZV9fJyApCgkgICAgICB7CgkJJHdoZXJlW10gPSAnVS51c2VybmFtZSA9ID8nOwoJCSR3aGVyZWNvdW50W10gPSAnVS51c2VybmFtZSA9ID8nOwoJICAgICAgfQoJICAgIGVsc2UKCSAgICAgIHsKCQkkd2hlcmVbXSA9ICdQLmRhdGEgPSA/JzsKCQkkd2hlcmVjb3VudFtdID0gJ1AuZGF0YSA9ID8nOwoJICAgICAgfQoJICAgICRxcGFybXNbXSA9ICRwcm9wdmFsOwoJICB9CiAgICAgIH0KICAgIGlmKCBzdGFydHN3aXRoKCRzb3J0YnksJ2Y6JykgKQogICAgICB7CgkkZmllbGQgPSBzdWJzdHIoJHNvcnRieSxzdHJsZW4oJ2Y6JykpOwoJJHNvcnRieSA9ICdQMi5kYXRhJzsKCSRqb2luc1tdID0gY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19wcm9wZXJ0aWVzIFAyIE9OIFUuaWQgPSBQMi51c2VyaWQgQU5EIFAyLnRpdGxlID0gJ3skZmllbGR9JyI7CiAgICAgIH0KCiAgICAvLyBmaW5hbCBhc3NlbWJseQogICAgJHN1ZmZpeCA9ICcnOwogICAgJHN1ZmZpeGNvdW50ID0gJyc7CiAgICBpZiggY291bnQoJHJqb2lucykgKQogICAgICB7Cgkkc3VmZml4IC49ICcgSU5ORVIgSk9JTiAnLmltcGxvZGUoJyBJTk5FUiBKT0lOICcsJHJqb2lucyk7CiAgICAgIH0KICAgIGlmKCBjb3VudCgkcmpvaW5zY291bnQpICkKICAgICAgewoJJHN1ZmZpeGNvdW50IC49ICcgSU5ORVIgSk9JTiAnLmltcGxvZGUoJyBJTk5FUiBKT0lOICcsJHJqb2luc2NvdW50KTsKICAgICAgfQogICAgaWYoIGNvdW50KCRqb2lucykgKQogICAgICB7Cgkkc3VmZml4IC49ICcgTEVGVCBKT0lOICcuaW1wbG9kZSgnIExFRlQgSk9JTiAnLCRqb2lucyk7CiAgICAgIH0KICAgIGlmKCBjb3VudCgkam9pbnNjb3VudCkgKQogICAgICB7Cgkkc3VmZml4Y291bnQgLj0gJyBMRUZUIEpPSU4gJy5pbXBsb2RlKCcgTEVGVCBKT0lOICcsJGpvaW5zY291bnQpOwogICAgICB9CiAgICBpZiggY291bnQoJHdoZXJlKSApCiAgICAgIHsKCSRzdWZmaXggLj0gJyBXSEVSRSAnLmltcGxvZGUoJyBBTkQgJywkd2hlcmUpOwogICAgICB9CiAgICBpZiggY291bnQoJHdoZXJlY291bnQpICkKICAgICAgewoJJHN1ZmZpeGNvdW50IC49ICcgV0hFUkUgJy5pbXBsb2RlKCcgQU5EICcsJHdoZXJlY291bnQpOwogICAgICB9CiAgICAkc3VmZml4IC49ICcgR1JPVVAgQlkgVS5pZCc7CiAgICAvLyRzdWZmaXhjb3VudCAuPSAnIEdST1VQIEJZIFUuaWQnOwoKICAgICRzdWZmaXggLj0gIiBPUkRFUiBCWSAkc29ydGJ5ICRzb3J0b3JkZXIiOwogICAgJHF1ZXJ5IC49ICRzdWZmaXg7CiAgICAkcXVlcnljb3VudCAuPSAkc3VmZml4Y291bnQ7CgogICAgLy8gR2V0IHRoZSBjb3VudCBvZiBpdGVtcy4KICAgIGRlYnVnX2J1ZmZlcignQ0dVRCBnZXQgY291bnQnKTsKICAgICRpdGVtY291bnQgPSAkZGItPkdldE9uZSgkcXVlcnljb3VudCwkcXBhcm1zKTsKICAgIGlmKCAhJGl0ZW1jb3VudCApIAogICAgICB7CgllY2hvICdERUJVRzogZXJyb3IgaW4gY291bnQgcXVlcnk8YnIvPic7CgllY2hvICcmbmJzcDsmbmJzcDtRVUVSWSA9ICcuJGRiLT5zcWwuJzxici8+JzsKCWVjaG8gJyZuYnNwOyZuYnNwO0Vycm9yID0gJy4kZGItPkVycm9yTXNnKCk7Cgkkc3RhdHVzID0gJ2Vycm9yJzsKCSRtZXNzYWdlc1tdID0gJHRoaXMtPkxhbmcoJ2Vycm9yX3NxbCcpOwogICAgICB9CgogICAgLy8gY2FsY3VsYXRlIHBhZ2UgdmFsdWVzLgogICAgaWYoIGVtcHR5KCRzdGF0dXMpICkKICAgICAgewoJJG51bXBhZ2VzID0gKGludCkoJGl0ZW1jb3VudCAvICRwYWdlbGltaXQpOwoJJHRtcCA9ICRpdGVtY291bnQgJSAkcGFnZWxpbWl0OwoJaWYoICR0bXAgPiAwICkgJG51bXBhZ2VzKys7CgoJJG9mZnNldCA9ICRwYWdlbGltaXQgKiAoJHBhZ2VudW0gLSAxKTsKICAgICAgfQoKICAgICRkYXRhID0gJyc7CiAgICBpZiggZW1wdHkoJHN0YXR1cykgKQogICAgICB7CglkZWJ1Z19idWZmZXIoJ0NHVUQgZ2V0IHVzZXJzJyk7CgkkZGJyID0gJGRiLT5TZWxlY3RMaW1pdCgkcXVlcnksJHBhZ2VsaW1pdCwkb2Zmc2V0LCRxcGFybXMpOwoJaWYoICEkZGJyICkKCSAgewoJICAgIGVjaG8gJ0RFQlVHOiBlcnJvciBpbiBxdWVyeTxici8+JzsKCSAgICBlY2hvICcmbmJzcDsmbmJzcDtRVUVSWSA9ICcuJGRiLT5zcWwuJzxici8+JzsKCSAgICBlY2hvICcmbmJzcDsmbmJzcDtFcnJvciA9ICcuJGRiLT5FcnJvck1zZygpOwoJICAgICRzdGF0dXMgPSAnZXJyb3InOwoJICAgICRtZXNzYWdlc1tdID0gJHRoaXMtPkxhbmcoJ2Vycm9yX3NxbCcpOwoJICB9CgllbHNlCgkgIHsKCSAgICAkZGF0YSA9IGFycmF5KCk7CgkgICAgd2hpbGUoICRkYnIgJiYgKCRyb3cgPSAkZGJyLT5GZXRjaFJvdygpKSApCgkgICAgICB7CgkJJGRhdGFbXSA9ICRyb3c7CgkgICAgICB9CgkgICAgJGRici0+Q2xvc2UoKTsKCSAgfQogICAgICB9CgogICAgaWYoIGVtcHR5KCRzdGF0dXMpICkKICAgICAgewoJLy8KCS8vIEV4cGFuZCBhbGwgdGhlIHVzZXIgb3B0aW9ucwoJLy8KCSR1aWRzID0gYXJyYXkoKTsKCWZvciggJGkgPSAwOyAkaSA8IGNvdW50KCRkYXRhKTsgJGkrKyApCgkgIHsKCSAgICAkdWlkc1tdID0gKGludCkkZGF0YVskaV1bJ2lkJ107CgkgIH0KCgkkYmFkX2RhdGUgPSB0cmltKCRkYi0+RGJUaW1lU3RhbXAoMSksIiciKTsKCgkvLyBxdWVyeSB0byBnZXQgYWxsIHVzZXIgbWVtYmVyIGdyb3VwcwoJJGdxdWVyeSA9ICdTRUxFQ1QgdXNlcmlkLGdyb3VwaWQgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfYmVsb25ncyAKICAgICAgICAgICAgICAgICAgIFdIRVJFIHVzZXJpZCBJTiAoJy5pbXBsb2RlKCcsJywkdWlkcykuJykgT1JERVIgQlkgdXNlcmlkJzsKCWRlYnVnX2J1ZmZlcignQ0dVRCBnZXQgZ3JvdXBzJyk7CgkkZ3JvdXBpbmZvID0gJGRiLT5HZXRBcnJheSgkZ3F1ZXJ5KTsKCQoJLy8gcXVlcnkgdG8gZ2V0IHVzZXIgcHJvcGVydGllcy4KCSRwcXVlcnkgPSAnIFNFTEVDVCB1c2VyaWQsdGl0bGUsZGF0YSBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19wcm9wZXJ0aWVzIAogICAgICAgICAgICAgICAgICAgIFdIRVJFIHVzZXJpZCBJTiAoJy5pbXBsb2RlKCcsJywkdWlkcykuJykgT1JERVIgQlkgdXNlcmlkLHRpdGxlJzsKCWRlYnVnX2J1ZmZlcignQ0dVRCBnZXQgcHJvcHMnKTsKCSRwcm9waW5mbyA9ICRkYi0+R2V0QXJyYXkoJHBxdWVyeSk7CgoJZm9yKCAkaSA9IDA7ICRpIDwgY291bnQoJGRhdGEpOyAkaSsrICkKCSAgewoJICAgIC8vIGhpZGUgdGhlIHBhc3N3b3JkIGZpZWxkCgkgICAgdW5zZXQoJGRhdGFbJGldWydwYXNzd29yZCddKTsKCgkgICAgLy8gdW5zZXQgdGhlIHJlZmRhdGUgaWYgdGhlIHVzZXIgaGFzIGhhZCBubyBhY3Rpdml0eQoJICAgIGlmKCAkZGF0YVskaV1bJ3JlZmRhdGUnXSA9PSAkYmFkX2RhdGUgKQoJICAgICAgewoJCXVuc2V0KCRkYXRhWyRpXVsncmVmZGF0ZSddKTsKCSAgICAgIH0KCSAgICAKCSAgICAvLyBEZXRhaWwgVVJMCgkgICAgJHBhcmFtc1sndWlkJ10gPSAkZGF0YVskaV1bJ2lkJ107CgkgICAgJHByZXR0eXVybCA9ICd1c2Vycy8nLiRwYXJhbXNbJ3VpZCddLicvJy4kZGV0YWlscGFnZTsKCSAgICBpZiggaXNzZXQoJHBhcmFtc1snZGV0YWlsdGVtcGxhdGUnXSkgKQoJICAgICAgewoJCSRwcmV0dHl1cmwgLj0gJy8nLm11bmdlX3N0cmluZ190b191cmwodHJpbSgkcGFyYW1zWydkZXRhaWx0ZW1wbGF0ZSddKSk7CgkgICAgICB9CgkgICAgJHByZXR0eXVybCAuPSAnLycubXVuZ2Vfc3RyaW5nX3RvX3VybCgkZGF0YVskaV1bJ3VzZXJuYW1lJ10pOwoJICAgICRkYXRhWyRpXVsnZGV0YWlsX3VybCddID0gJHRoaXMtPkNyZWF0ZVVSTCgkaWQsJ2RldGFpbCcsJGRldGFpbHBhZ2UsCgkJCQkJCSAgICAgICAkcGFyYW1zLGZhbHNlLCRwcmV0dHl1cmwpOwoJCQkJCQkgICAgICAgCgkgICAgLy8gYWRkIG1lbWJlciBncm91cCBpZHMKCSAgICAkdG1wID0gYXJyYXkoKTsKCSAgICBmb3IoICRqID0gMDsgJGogPCBjb3VudCgkZ3JvdXBpbmZvKTsgJGorKyApCgkgICAgICB7CgkJaWYoICRncm91cGluZm9bJGpdWyd1c2VyaWQnXSA8ICRwYXJhbXNbJ3VpZCddICkgY29udGludWU7CgkJaWYoICRncm91cGluZm9bJGpdWyd1c2VyaWQnXSA+ICRwYXJhbXNbJ3VpZCddICkgYnJlYWs7CgkJCgkJJHRtcFtdID0gJGdyb3VwaW5mb1skal1bJ2dyb3VwaWQnXTsKCSAgICAgIH0KCSAgICBpZiggY291bnQoJHRtcCkgKSAkZGF0YVskaV1bJ2dyb3VwcyddID0gJHRtcDsKCgkgICAgLy8gYWRkIHByb3BlcnRpZXMgYXMgYSBoYXNoLgoJICAgICR0bXAgPSBhcnJheSgpOwoJICAgIGZvciggJGsgPSAwOyAkayA8IGNvdW50KCRwcm9waW5mbyk7ICRrKysgKQoJICAgICAgewoJCWlmKCAkcHJvcGluZm9bJGtdWyd1c2VyaWQnXSA8ICRwYXJhbXNbJ3VpZCddICkgY29udGludWU7CgkJaWYoICRwcm9waW5mb1ska11bJ3VzZXJpZCddID4gJHBhcmFtc1sndWlkJ10gKSBicmVhazsKCgkJJHRtcFskcHJvcGluZm9bJGtdWyd0aXRsZSddXSA9ICRwcm9waW5mb1ska11bJ2RhdGEnXTsKCSAgICAgIH0KCSAgICBpZiggY291bnQoJHRtcCkgKSAkZGF0YVskaV1bJ3Byb3BlcnRpZXMnXSA9ICR0bXA7CgkgIH0KICAgICAgfQoKICAgIGlmKCBlbXB0eSgkc3RhdHVzKSApCiAgICAgIHsKCWRlYnVnX2J1ZmZlcignQ0dVRCBnZXQgcHJvcGVydHkgZGVmaW5zJyk7CgkkcHJvcHMgPSAkZmV1LT5HZXRQcm9wZXJ0eURlZm5zKCk7CiAgICAgIH0KCiAgICBpZiggZW1wdHkoJHN0YXR1cykgKQogICAgICB7CglkZWJ1Z19idWZmZXIoJ0NHVUQgZ2V0IGFsbCBncm91cHMnKTsKCSRncm91cHMgPSAkZmV1LT5HZXRHcm91cExpc3RGdWxsKCk7CiAgICAgIH0KICB9CgoKIwojIEdpdmUgZXZlcnl0aGluZyB0byBzbWFydHkKIwppZiggZW1wdHkoJHN0YXR1cykgKQogIHsKICAgICRjb25maWcgPSAkZ0Ntcy0+R2V0Q29uZmlnKCk7CiAgICAkc21hcnR5LT5hc3NpZ24oJ2dyb3VwcycsJGdyb3Vwcyk7CiAgICAkc21hcnR5LT5hc3NpZ24oJ3Byb3BlcnRpZXMnLCRwcm9wcyk7CiAgICAkc21hcnR5LT5hc3NpZ24oJ3RvdGFsY291bnQnLCRpdGVtY291bnQpOwogICAgJHNtYXJ0eS0+YXNzaWduKCdjdXJwYWdlJywkcGFnZW51bSk7CiAgICAkc21hcnR5LT5hc3NpZ24oJ251bXBhZ2VzJywkbnVtcGFnZXMpOwogICAgJHNtYXJ0eS0+YXNzaWduKCdmaWxlX2xvY2F0aW9uJywkY29uZmlnWyd1cGxvYWRzX3VybCddLicvZmV1c2VycycpOwogICAgJHNtYXJ0eS0+YXNzaWduKCd1c2VycycsJGRhdGEpOwoKICAgIGlmKCAkbnVtcGFnZXMgPiAxICkKICAgICAgewoJaWYoICRwYWdlbnVtID4gMSApCgkgIHsKCSAgICAkcGFybXMgPSAkcGFyYW1zOwoJICAgICRwYXJtc1sncGFnZW51bSddID0gMTsKCSAgICAkc21hcnR5LT5hc3NpZ24oJ2ZpcnN0cGFnZV91cmwnLAoJCQkgICAgJHRoaXMtPkNyZWF0ZVVSTCgkaWQsJ2RlZmF1bHQnLCRyZXR1cm5pZCwkcGFybXMpKTsKCSAgICAkcGFybXNbJ3BhZ2VudW0nXSA9ICRwYWdlbnVtIC0gMTsKCSAgICAkc21hcnR5LT5hc3NpZ24oJ3ByZXZwYWdlX3VybCcsCgkJCSAgICAkdGhpcy0+Q3JlYXRlVVJMKCRpZCwnZGVmYXVsdCcsJHJldHVybmlkLCRwYXJtcykpOwoJICB9CglpZiggJHBhZ2VudW0gPCAkbnVtcGFnZXMgKQoJICB7CgkgICAgJHBhcm1zID0gJHBhcmFtczsKCSAgICAkcGFybXNbJ3BhZ2VudW0nXSA9ICRwYWdlbnVtICsgMTsKCSAgICAkc21hcnR5LT5hc3NpZ24oJ25leHRwYWdlX3VybCcsCgkJCSAgICAkdGhpcy0+Q3JlYXRlVVJMKCRpZCwnZGVmYXVsdCcsJHJldHVybmlkLCRwYXJtcykpOwoJICAgICRwYXJtc1sncGFnZW51bSddID0gJG51bXBhZ2VzOwoJICAgICRzbWFydHktPmFzc2lnbignbGFzdHBhZ2VfdXJsJywKCQkJICAgICR0aGlzLT5DcmVhdGVVUkwoJGlkLCdkZWZhdWx0JywkcmV0dXJuaWQsJHBhcm1zKSk7CgkgIH0KICAgICAgfQogICAgLy9lY2hvICc8cHJlPic7IHByaW50X3IoICRkYXRhICk7IGVjaG8gJzwvcHJlPic7CiAgfQplbHNlCiAgewogICAgJHNtYXJ0eS0+YXNzaWduKCdzdGF0dXMnLCRzdGF0dXMpOwogICAgJHNtYXJ0eS0+YXNzaWduKCdtZXNzYWdlcycsJG1lc3NhZ2VzKTsKICB9CgoKIwojIERpc3BsYXkgdGhlIHRlbXBsYXRlCiMKZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlRnJvbURhdGFiYXNlKCR0aGV0ZW1wbGF0ZSk7CgojCiMgRU9GCiMKPz4K]]></data>
	</file>
	<file>
	  <filename>/action.defaultadmin.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IENHVXNlckRpcmVjdG9yeSAoYykgMjAwOSBieSBSb2JlcnQgQ2FtcGJlbGwgCiMgICAgICAgICAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgQW4gYWRkb24gbW9kdWxlIGZvciBDTVMgTWFkZSBTaW1wbGUgdG8gcHJvdmlkZSB0aGUgYWJpbGl0eSB0byBicm93c2UKIyAgYW5kIHZpZXcgc3VtbWFyeSByZXBvcnRzIGFuZCBkZXRhaWwgcmVwb3J0cyBhYm91dCBncm91cHMgb2YgZnJvbnRlbmQKIyAgdXNlcnMuCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBIb3dldmVyLCBhcyBhIHNwZWNpYWwgZXhjZXB0aW9uIHRvIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgZGlzdHJpYnV0ZWQKIyBhcyBhbiBhZGRvbiBtb2R1bGUgdG8gQ01TIE1hZGUgU2ltcGxlLiAgWW91IG1heSBub3QgdXNlIHRoaXMgc29mdHdhcmUKIyBpbiBhbnkgTm9uIEdQTCB2ZXJzaW9uIG9mIENNUyBNYWRlIHNpbXBsZSwgb3IgaW4gYW55IHZlcnNpb24gb2YgQ01TCiMgTWFkZSBzaW1wbGUgdGhhdCBkb2VzIG5vdCBpbmRpY2F0ZSBjbGVhcmx5IGFuZCBvYnZpb3VzbHkgaW4gaXRzIGFkbWluIAojIHNlY3Rpb24gdGhhdCB0aGUgc2l0ZSB3YXMgYnVpbHQgd2l0aCBDTVMgTWFkZSBzaW1wbGUuCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojRU5EX0xJQ0VOU0UKaWYoICFpc3NldCgkZ0NtcykgKSBleGl0OwoKZWNobyAkdGhpcy0+U3RhcnRUYWJIZWFkZXJzKCk7CmlmKCAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdNb2RpZnkgVGVtcGxhdGVzJykgKQogIHsKICAgIGVjaG8gJHRoaXMtPlNldFRhYkhlYWRlcignZGlyZWN0b3J5dGVtcGxhdGVzJywKCQkJICAgICAkdGhpcy0+TGFuZygnbGJsX2RpcmVjdG9yeXRlbXBsYXRlcycpKTsKICAgIGVjaG8gJHRoaXMtPlNldFRhYkhlYWRlcignc3VtbWFyeXRlbXBsYXRlcycsCgkJCSAgICAgJHRoaXMtPkxhbmcoJ2xibF9zdW1tYXJ5dGVtcGxhdGVzJykpOwogICAgZWNobyAkdGhpcy0+U2V0VGFiSGVhZGVyKCdkZXRhaWx0ZW1wbGF0ZXMnLAoJCQkgICAgICR0aGlzLT5MYW5nKCdsYmxfZGV0YWlsdGVtcGxhdGVzJykpOwogICAgZWNobyAkdGhpcy0+U2V0VGFiSGVhZGVyKCdzZWFyY2hmb3JtdGVtcGxhdGVzJywKCQkJICAgICAkdGhpcy0+TGFuZygnbGJsX3NlYXJjaGZvcm10ZW1wbGF0ZXMnKSk7CiAgICBlY2hvICR0aGlzLT5TZXRUYWJIZWFkZXIoJ2Jyb3dzZXByb3B0ZW1wbGF0ZXMnLAoJCQkgICAgICR0aGlzLT5MYW5nKCdsYmxfYnJvd3NlcHJvcHRlbXBsYXRlcycpKTsKICAgIGVjaG8gJHRoaXMtPlNldFRhYkhlYWRlcignZGVmYXVsdHRlbXBsYXRlcycsCgkJCSAgICAgJHRoaXMtPkxhbmcoJ2xibF9kZWZhdWx0dGVtcGxhdGVzJykpOwogIH0KLy8gaWYoICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBTaXRlIFByZWZlcmVuY2VzJykgKQovLyAgIHsKLy8gICAgIGVjaG8gJHRoaXMtPlNldFRhYkhlYWRlcignc2V0dGluZ3MnLAovLyAJCQkgICAgICR0aGlzLT5MYW5nKCdsYmxfc2V0dGluZ3MnKSk7Ci8vICAgfQplY2hvICR0aGlzLT5FbmRUYWJIZWFkZXJzKCk7CgplY2hvICR0aGlzLT5TdGFydFRhYkNvbnRlbnQoKTsKaWYoICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBUZW1wbGF0ZXMnKSApCiAgewogICAgZWNobyAkdGhpcy0+U3RhcnRUYWIoJ2RpcmVjdG9yeXRlbXBsYXRlcycpOwogICAgaW5jbHVkZShkaXJuYW1lKF9fRklMRV9fKS4nL2Z1bmN0aW9uLmFkbWluX2RpcmVjdG9yeXRlbXBsYXRlc190YWIucGhwJyk7CiAgICBlY2hvICR0aGlzLT5FbmRUYWIoKTsKCiAgICBlY2hvICR0aGlzLT5TdGFydFRhYignc3VtbWFyeXRlbXBsYXRlcycpOwogICAgaW5jbHVkZShkaXJuYW1lKF9fRklMRV9fKS4nL2Z1bmN0aW9uLmFkbWluX3N1bW1hcnl0ZW1wbGF0ZXNfdGFiLnBocCcpOwogICAgZWNobyAkdGhpcy0+RW5kVGFiKCk7CgogICAgZWNobyAkdGhpcy0+U3RhcnRUYWIoJ2RldGFpbHRlbXBsYXRlcycpOwogICAgaW5jbHVkZShkaXJuYW1lKF9fRklMRV9fKS4nL2Z1bmN0aW9uLmFkbWluX2RldGFpbHRlbXBsYXRlc190YWIucGhwJyk7CiAgICBlY2hvICR0aGlzLT5FbmRUYWIoKTsKCiAgICBlY2hvICR0aGlzLT5TdGFydFRhYignc2VhcmNoZm9ybXRlbXBsYXRlcycpOwogICAgaW5jbHVkZShkaXJuYW1lKF9fRklMRV9fKS4nL2Z1bmN0aW9uLmFkbWluX3NlYXJjaGZvcm10ZW1wbGF0ZXNfdGFiLnBocCcpOwogICAgZWNobyAkdGhpcy0+RW5kVGFiKCk7CgogICAgZWNobyAkdGhpcy0+U3RhcnRUYWIoJ2Jyb3dzZXByb3B0ZW1wbGF0ZXMnKTsKICAgIGluY2x1ZGUoZGlybmFtZShfX0ZJTEVfXykuJy9mdW5jdGlvbi5hZG1pbl9icm93c2Vwcm9wdGVtcGxhdGVzX3RhYi5waHAnKTsKICAgIGVjaG8gJHRoaXMtPkVuZFRhYigpOwoKICAgIGVjaG8gJHRoaXMtPlN0YXJ0VGFiKCdkZWZhdWx0dGVtcGxhdGVzJyk7CiAgICBpbmNsdWRlKGRpcm5hbWUoX19GSUxFX18pLicvZnVuY3Rpb24uYWRtaW5fZGVmYXVsdHRlbXBsYXRlc190YWIucGhwJyk7CiAgICBlY2hvICR0aGlzLT5FbmRUYWIoKTsKICB9Ci8vIGlmKCAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdNb2RpZnkgU2l0ZSBQcmVmZXJlbmNlcycpICkKLy8gICB7Ci8vICAgICBlY2hvICR0aGlzLT5TdGFydFRhYignc2V0dGluZ3MnKTsKLy8gICAgIGluY2x1ZGUoZGlybmFtZShfX0ZJTEVfXykuJy9mdW5jdGlvbi5hZG1pbl9zZXR0aW5nc190YWIucGhwJyk7Ci8vICAgICBlY2hvICR0aGlzLT5FbmRUYWIoKTsKLy8gICB9CmVjaG8gJHRoaXMtPkVuZFRhYkNvbnRlbnQoKTsKIwojIEVPRgojCj8+]]></data>
	</file>
	<file>
	  <filename>/action.detail.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IENHVXNlckRpcmVjdG9yeSAoYykgMjAwOSBieSBSb2JlcnQgQ2FtcGJlbGwgCiMgICAgICAgICAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgQW4gYWRkb24gbW9kdWxlIGZvciBDTVMgTWFkZSBTaW1wbGUgdG8gcHJvdmlkZSB0aGUgYWJpbGl0eSB0byBicm93c2UKIyAgYW5kIHZpZXcgc3VtbWFyeSByZXBvcnRzIGFuZCBkZXRhaWwgcmVwb3J0cyBhYm91dCBncm91cHMgb2YgZnJvbnRlbmQKIyAgdXNlcnMuCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBIb3dldmVyLCBhcyBhIHNwZWNpYWwgZXhjZXB0aW9uIHRvIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgZGlzdHJpYnV0ZWQKIyBhcyBhbiBhZGRvbiBtb2R1bGUgdG8gQ01TIE1hZGUgU2ltcGxlLiAgWW91IG1heSBub3QgdXNlIHRoaXMgc29mdHdhcmUKIyBpbiBhbnkgTm9uIEdQTCB2ZXJzaW9uIG9mIENNUyBNYWRlIHNpbXBsZSwgb3IgaW4gYW55IHZlcnNpb24gb2YgQ01TCiMgTWFkZSBzaW1wbGUgdGhhdCBkb2VzIG5vdCBpbmRpY2F0ZSBjbGVhcmx5IGFuZCBvYnZpb3VzbHkgaW4gaXRzIGFkbWluIAojIHNlY3Rpb24gdGhhdCB0aGUgc2l0ZSB3YXMgYnVpbHQgd2l0aCBDTVMgTWFkZSBzaW1wbGUuCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojRU5EX0xJQ0VOU0UKaWYoICFpc3NldCgkZ0NtcykgKSBleGl0OwoKIwojIEluaXRpYWxpemF0aW9uCiMKJGNvbmZpZyA9JiAkZ0Ntcy0+R2V0Q29uZmlnKCk7CiR0aGV0ZW1wbGF0ZSA9ICdkZXRhaWxfJy4kdGhpcy0+R2V0UHJlZmVyZW5jZShDR1VTRVJESVJfUFJFRl9ERkxUREVUQUlMX05BTUUpOwokc3RhdHVzID0gJyc7CiR1aWQgPSAnJzsKJGRhdGEgPSAnJzsKJHByb3BzID0gJyc7CiRncm91cHMgPSAnJzsKCiMKIyBTZXR1cAojCiRmZXUgPSYgJHRoaXMtPkdldE1vZHVsZUluc3RhbmNlKCdGcm9udEVuZFVzZXJzJyk7CmlmKCAhJGZldSApIAogIHsKICAgICRzdGF0dXMgPSAkdGhpcy0+TGFuZygnZXJyb3Jfbm9mZXUnKTsKICB9CgojCiMgUHJvY2VzcyBQYXJhbWV0ZXJzCiMKaWYoIGlzc2V0KCRwYXJhbXNbJ2RldGFpbHRlbXBsYXRlJ10pICkKICB7CiAgICAkdGhldGVtcGxhdGUgPSAnZGV0YWlsXycudHJpbSgkcGFyYW1zWydkZXRhaWx0ZW1wbGF0ZSddKTsKICB9CmlmKCAhaXNzZXQoJHBhcmFtc1sndWlkJ10pICkKICB7CiAgICAkc3RhdHVzID0gJHRoaXMtPkxhbmcoJ2Vycm9yX21pc3NpbmdwYXJhbScpOwogIH0KJHVpZCA9IChpbnQpJHBhcmFtc1sndWlkJ107CgojCiMgR2V0IHRoZSBkYXRhCiMKJHRncm91cHMgPSAnJzsKaWYoIGVtcHR5KCRzdGF0dXMpICkKICB7CiAgICAvLyB1c2VyIGFjY291bnQgZGV0YWlscwogICAgJHF1ZXJ5ID0gJ1NFTEVDVCAqIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX3VzZXJzIFdIRVJFIGlkID0gPyc7CiAgICAkZGF0YSA9ICRkYi0+R2V0Um93KCRxdWVyeSxhcnJheSgkdWlkKSk7CiAgICBpZiggISRkYXRhICkKICAgICAgewoJJHN0YXR1cyA9ICR0aGlzLT5MYW5nKCdlcnJvcl91c2Vybm90Zm91bmQnKTsKICAgICAgfQogIH0KaWYoIGVtcHR5KCRzdGF0dXMpICkKICB7CiAgICAvLyBsYXN0IGFjdGl2aXR5IGRhdGUKICAgICRxdWVyeSA9ICdTRUxFQ1QgcmVmZGF0ZSBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19oaXN0b3J5IAogICAgICAgICAgICAgICBXSEVSRSB1c2VyaWQgPSA/CiAgICAgICAgICAgICAgIE9SREVSIEJZIHJlZmRhdGUgREVTQwogICAgICAgICAgICAgICBMSU1JVCAxJzsKICAgICR0bXAgPSAkZGItPkdldE9uZSgkcXVlcnksYXJyYXkoJHVpZCkpOwogICAgaWYoICR0bXAgKQogICAgICB7CgkkZGF0YVsncmVmZGF0ZSddID0gJHRtcDsKICAgICAgfQogIH0KaWYoIGVtcHR5KCRzdGF0dXMpICkKICB7CiAgICAvLyBtZW1iZXIgZ3JvdXBzCiAgICAkZ3F1ZXJ5ID0gJ1NFTEVDVCBncm91cGlkIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX2JlbG9uZ3MgCiAgICAgICAgICAgICAgICBXSEVSRSB1c2VyaWQgPSA/JzsKICAgICR0bXAgPSAkZGItPkdldEFycmF5KCRncXVlcnksYXJyYXkoJHVpZCkpOwogICAgJHRncm91cHMgPSBjZ2VfYXJyYXk6OmV4dHJhY3RfZmllbGQoJHRtcCwnZ3JvdXBpZCcpOwogICAgJGRhdGFbJ2dyb3VwcyddID0gJHRncm91cHM7CiAgfQppZiggZW1wdHkoJHN0YXR1cykgKQogIHsKICAgIC8vIHVzZXIgcHJvcGVydGllcwogICAgJHBxdWVyeSA9ICcgU0VMRUNUIHRpdGxlLGRhdGEgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfcHJvcGVydGllcyAKICAgICAgICAgICAgICAgICBXSEVSRSB1c2VyaWQgPSA/JzsKICAgICRnc3RyID0gJygnLmltcGxvZGUoJywnLCR0Z3JvdXBzKS4nKSc7CiAgICAkdG1wID0gJGRiLT5HZXRBcnJheShzcHJpbnRmKCRwcXVlcnksJGdzdHIpLGFycmF5KCR1aWQpKTsKICAgIGlmKCAkdG1wICkKICAgICAgewoJJHRtcDIgPSBhcnJheSgpOwoJZm9yKCAkaiA9IDA7ICRqIDwgY291bnQoJHRtcCk7ICRqKysgKQoJICB7CgkgICAgaWYoICFlbXB0eSgkdG1wWyRqXVsnZGF0YSddKSAmJiAkdG1wWyRqXVsnZGF0YSddICE9ICc8bm90c2V0PicgKQoJICAgICAgewoJCSR0bXAyWyR0bXBbJGpdWyd0aXRsZSddXSA9ICR0bXBbJGpdWydkYXRhJ107CgkgICAgICB9CgkgIH0KCSRkYXRhWydwcm9wZXJ0aWVzJ10gPSAkdG1wMjsKICAgICAgfQogIH0KaWYoIGVtcHR5KCRzdGF0dXMpICkKICB7CiAgICAvLyBHZXQgYWxsIHRoZSBwcm9wZXJ0eSBkZWZpbml0aW9ucwogICAgJHF1ZXJ5ID0gJ1NFTEVDVCAqIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX3Byb3BkZWZuJzsKICAgICR0bXAgPSAkZGItPkdldEFycmF5KCRxdWVyeSk7CiAgICAkcHJvcHMgPSBjZ2VfYXJyYXk6OnRvX2hhc2goJHRtcCwnbmFtZScpOwogIH0KCmlmKCBlbXB0eSgkc3RhdHVzKSApCiAgewogICAgLy8gZ2V0IGFsbCB0aGUgZ3JvdXBzCiAgICAkcXVlcnkgPSAnU0VMRUNUICogRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfZ3JvdXBzJzsKICAgICR0bXAgPSAkZGItPkdldEFycmF5KCRxdWVyeSk7CiAgICAkZ3JvdXBzID0gY2dlX2FycmF5Ojp0b19oYXNoKCR0bXAsJ2lkJyk7CiAgfQoKIwojIEdpdmUgZXZlcnl0aGluZyB0byBzbWFydHkKIwokc21hcnR5LT5hc3NpZ24oJ29uZXVzZXInLCRkYXRhKTsKJHNtYXJ0eS0+YXNzaWduKCdncm91cHMnLCRncm91cHMpOwokc21hcnR5LT5hc3NpZ24oJ3Byb3BlcnRpZXMnLCRwcm9wcyk7CiRzbWFydHktPmFzc2lnbignZmlsZV9sb2NhdGlvbicsJGNvbmZpZ1sndXBsb2Fkc191cmwnXS4nL2ZldXNlcnMnKTsKCiMKIyBEaXNwbGF5IHRoZSB0ZW1wbGF0ZQojCmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhYmFzZSgkdGhldGVtcGxhdGUpOwoKIwojIEVPRgojCj8+]]></data>
	</file>
	<file>
	  <filename>/action.directory.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IENHVXNlckRpcmVjdG9yeSAoYykgMjAwOSBieSBSb2JlcnQgQ2FtcGJlbGwgCiMgICAgICAgICAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgQW4gYWRkb24gbW9kdWxlIGZvciBDTVMgTWFkZSBTaW1wbGUgdG8gcHJvdmlkZSB0aGUgYWJpbGl0eSB0byBicm93c2UKIyAgYW5kIHZpZXcgc3VtbWFyeSByZXBvcnRzIGFuZCBkZXRhaWwgcmVwb3J0cyBhYm91dCBncm91cHMgb2YgZnJvbnRlbmQKIyAgdXNlcnMuCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBIb3dldmVyLCBhcyBhIHNwZWNpYWwgZXhjZXB0aW9uIHRvIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgZGlzdHJpYnV0ZWQKIyBhcyBhbiBhZGRvbiBtb2R1bGUgdG8gQ01TIE1hZGUgU2ltcGxlLiAgWW91IG1heSBub3QgdXNlIHRoaXMgc29mdHdhcmUKIyBpbiBhbnkgTm9uIEdQTCB2ZXJzaW9uIG9mIENNUyBNYWRlIHNpbXBsZSwgb3IgaW4gYW55IHZlcnNpb24gb2YgQ01TCiMgTWFkZSBzaW1wbGUgdGhhdCBkb2VzIG5vdCBpbmRpY2F0ZSBjbGVhcmx5IGFuZCBvYnZpb3VzbHkgaW4gaXRzIGFkbWluIAojIHNlY3Rpb24gdGhhdCB0aGUgc2l0ZSB3YXMgYnVpbHQgd2l0aCBDTVMgTWFkZSBzaW1wbGUuCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojRU5EX0xJQ0VOU0UKaWYoICFpc3NldCgkZ0NtcykgKSBleGl0OwoKIwojIEluaXRpYWxpemF0aW9uCiMKJHRoZXRlbXBsYXRlID0gJ2RpcmVjdG9yeV8nLiR0aGlzLT5HZXRQcmVmZXJlbmNlKENHVVNFUkRJUl9QUkVGX0RGTFRESVJFQ1RPUllfTkFNRSk7CiRmaWVsZCA9ICd1c2VybmFtZSc7CiRwcm9wID0gJyc7CiRzcGFyc2UgPSAwOwokc2hvd2V4cGlyZWQgPSAwOwoKIwojIEhhbmRsZSBQYXJhbXMKIwppZiggaXNzZXQoJHBhcmFtc1snZGlyZWN0b3J5dGVtcGxhdGUnXSkgKQogIHsKICAgICR0aGV0ZW1wbGF0ZSA9ICdkaXJlY3RvcnlfJy50cmltKCRwYXJhbXNbJ2RpcmVjdG9yeXRlbXBsYXRlJ10pOwogIH0KaWYoIGlzc2V0KCRwYXJhbXNbJ3Byb3AnXSkgKQogIHsKICAgICRmaWVsZCA9ICdfX3Byb3BlcnR5X18nOwogICAgJHByb3AgPSB0cmltKCRwYXJhbXNbJ3Byb3AnXSk7CiAgfQppZiggaXNzZXQoJHBhcmFtc1snc3BhcnNlJ10pICkKICB7CiAgICAkc3BhcnNlID0gKGludCkkcGFyYW1zWydzcGFyc2UnXTsKICB9CmlmKCBpc3NldCgkcGFyYW1zWydzaG93ZXhwaXJlZCddICkgKQogIHsKICAgICRzaG93ZXhwaXJlZCA9IChpbnQpJHBhcmFtc1snc2hvd2V4cGlyZWQnXTsKICB9CgojCiMgR2V0IHRoZSBkYXRhCiMKJHRoZWRhdGUgPSAkZGItPkRiVGltZVN0YW1wKHRpbWUoKSk7CmlmKCAkc2hvd2V4cGlyZWQgKQogIHsKICAgICR0aGVkYXRlID0gJGRiLT5EYlRpbWVTdGFtcCgxKTsKICB9CiRjaGFyYXJyYXkgPSBhcnJheSgpOwppZiggJGZpZWxkID09ICdfX3Byb3BlcnR5X18nICkKICB7CiAgICAvLyBnZXQgbGlzdCBvZiBsZXR0ZXJzCiAgICAkcXVlcnkgPSAiU0VMRUNUIGRpc3RpbmN0IGxlZnQocC5kYXRhLCAxKSBBUyBmaXJzdF9jaGFyIAogICAgICAgICAgICAgICAgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfcHJvcGVydGllcyBwCiAgICAgICAgICAgICAgIElOTkVSIEpPSU4gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3VzZXJzIHUKICAgICAgICAgICAgICAgV0hFUkUgdS5pZCA9IHAudXNlcmlkIAogICAgICAgICAgICAgICAgIEFORCBwLnRpdGxlID0gPwogICAgICAgICAgICAgICAgIEFORCB1LmV4cGlyZXMgPiAkdGhlZGF0ZQogICAgICAgICAgICAgICBPUkRFUiBCWSBsZWZ0KHAuZGF0YSwxKSI7CiAgICAkdG1wID0gJGRiLT5HZXRBcnJheSgkcXVlcnksYXJyYXkoJHByb3ApKTsKICAgIGZvcmVhY2goICR0bXAgYXMgJG9uZSApCiAgICAgIHsKCSR0MiA9IHN0cnRvdXBwZXIodHJpbSgkb25lWydmaXJzdF9jaGFyJ10pKTsKCWlmKCBlbXB0eSgkdDIpICkgY29udGludWU7CgoJJHBhcm1zID0gJHBhcmFtczsKCSRwYXJtc1sndXNlbGlrZSddPTE7CgkkcGFybXNbJ3Byb3AnXT0kcHJvcDsKCSRwYXJtc1sncHJvcHZhbCddPSJ7JHQyfSI7CgkkdDMgPSBhcnJheSgkdDIsJHRoaXMtPkNyZWF0ZVVSTCgkaWQsJ2RlZmF1bHQnLCRyZXR1cm5pZCwkcGFybXMpKTsKCSRjaGFyYXJyYXlbXSA9ICR0MzsKICAgICAgfQogIH0KZWxzZQogIHsKICAgICRxdWVyeSA9ICdTRUxFQ1QgRElTVElOQ1QgbGVmdCh1c2VybmFtZSwxKSBBUyBmaXJzdF9jaGFyCiAgICAgICAgICAgICAgICBGUk9NICcuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc191c2VycwogICAgICAgICAgICAgICBXSEVSRSBleHBpcmVzID4gJHRoZWRhdGUKICAgICAgICAgICAgICAgT1JERVIgQlkgbGVmdCh1c2VybmFtZSwxKSI7CiAgICAkdG1wID0gJGRiLT5HZXRBcnJheSgkcXVlcnkpOwogICAgZm9yZWFjaCggJHRtcCBhcyAkb25lICkKICAgICAgewoJJHQyID0gc3RydG91cHBlcih0cmltKCRvbmVbJ2ZpcnN0X2NoYXInXSkpOwoJaWYoIGVtcHR5KCR0MikgKSBjb250aW51ZTsKCgkkcGFybXMgPSAkcGFyYW1zOwoJJHBhcm1zWyd1c2VsaWtlJ109MTsKCSRwYXJtc1sncHJvcCddPSdfX3VzZXJuYW1lX18nOwoJJHBhcm1zWydwcm9wdmFsJ109InskdDJ9JSI7CgkkdDMgPSBhcnJheSgkdDIsJHRoaXMtPkNyZWF0ZVVSTCgkaWQsJ2RlZmF1bHQnLCRyZXR1cm5pZCwkcGFybXMpKTsKCSRjaGFyYXJyYXlbXSA9ICR0MzsKICAgICAgfQogIH0KCmlmKCAhJHNwYXJzZSApCiAgewogICAgJGxldHRlcnMgPSBhcnJheSgpOwogICAgJGxldHRlcnNbXSA9IG9yZCgnIycpOwogICAgZm9yKCAkaSA9IG9yZCgnQScpOyAkaSA8PSBvcmQoJ1onKTsgJGkrKyApICRsZXR0ZXJzW10gPSAkaTsKICAgICR0bXAgPSBhcnJheSgpOwogICAgZm9yZWFjaCggJGxldHRlcnMgYXMgJGkgKQogICAgICB7CgkkdDIgPSBhcnJheSgpOwoJJHQyW10gPSBjaHIoJGkpOwoJaWYoICRpID09IG9yZCgnIycpICkKCSAgewoJICAgIGZvcmVhY2goICRjaGFyYXJyYXkgYXMgJG9uZSApCgkgICAgICB7CgkJaWYoICRvbmVbMF0gPj0gJzAnICYmICRvbmVbMF0gPD0gJzknICkKCQkgIHsKCQkgICAgJHQyW10gPSAkb25lWzFdOwoJCSAgfQoJICAgICAgfQoJICAgICR0bXBbXSA9ICR0MjsKCSAgICBjb250aW51ZTsKCSAgfQoKCWZvcmVhY2goICRjaGFyYXJyYXkgYXMgJG9uZSApCgkgIHsKCSAgICBpZiggJG9uZVswXSA9PSBjaHIoJGkpICkKCSAgICAgIHsKCQkkdDJbXSA9ICRvbmVbMV07CgkJYnJlYWs7CgkgICAgICB9CgkgIH0KCSR0bXBbXSA9ICR0MjsKICAgICAgfQogICAgJGNoYXJhcnJheSA9ICR0bXA7CiAgfQoKJHNtYXJ0eS0+YXNzaWduKCdjaGFyYXJyYXknLCRjaGFyYXJyYXkpOwplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGVGcm9tRGF0YWJhc2UoJHRoZXRlbXBsYXRlKTsKCgojCiMgRU9GCiMKPz4K]]></data>
	</file>
	<file>
	  <filename>/action.do_search.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IENHVXNlckRpcmVjdG9yeSAoYykgMjAwOSBieSBSb2JlcnQgQ2FtcGJlbGwgCiMgICAgICAgICAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgQW4gYWRkb24gbW9kdWxlIGZvciBDTVMgTWFkZSBTaW1wbGUgdG8gcHJvdmlkZSB0aGUgYWJpbGl0eSB0byBicm93c2UKIyAgYW5kIHZpZXcgc3VtbWFyeSByZXBvcnRzIGFuZCBkZXRhaWwgcmVwb3J0cyBhYm91dCBncm91cHMgb2YgZnJvbnRlbmQKIyAgdXNlcnMuCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBIb3dldmVyLCBhcyBhIHNwZWNpYWwgZXhjZXB0aW9uIHRvIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgZGlzdHJpYnV0ZWQKIyBhcyBhbiBhZGRvbiBtb2R1bGUgdG8gQ01TIE1hZGUgU2ltcGxlLiAgWW91IG1heSBub3QgdXNlIHRoaXMgc29mdHdhcmUKIyBpbiBhbnkgTm9uIEdQTCB2ZXJzaW9uIG9mIENNUyBNYWRlIHNpbXBsZSwgb3IgaW4gYW55IHZlcnNpb24gb2YgQ01TCiMgTWFkZSBzaW1wbGUgdGhhdCBkb2VzIG5vdCBpbmRpY2F0ZSBjbGVhcmx5IGFuZCBvYnZpb3VzbHkgaW4gaXRzIGFkbWluIAojIHNlY3Rpb24gdGhhdCB0aGUgc2l0ZSB3YXMgYnVpbHQgd2l0aCBDTVMgTWFkZSBzaW1wbGUuCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojRU5EX0xJQ0VOU0UKaWYoICFpc3NldCgkZ0NtcykgKSBleGl0OwoKIwojIEluaXRpYWxpemF0aW9uCiMKJHNvcnRvcmRlciAgICAgID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ2FzYycpOwokc29ydGJ5ICAgICAgICAgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgndXNlcm5hbWUnKTsKJGRldGFpbHBhZ2UgICAgID0gJHJldHVybmlkOwokcGFnZWxpbWl0ICAgICAgPSAxMDAwMDA7CiRpbmxpbmUgICAgICAgICA9IDA7CiRwYWdlICAgICAgICAgICA9IDE7CiR0aGV0ZW1wbGF0ZSAgICA9ICdzdW1tYXJ5XycuJHRoaXMtPkdldFByZWZlcmVuY2UoQ0dVU0VSRElSX1BSRUZfREZMVFNVTU1BUllfTkFNRSk7CiR1c2VybmFtZV9leHByICA9ICcnOwokc2VhcmNocHJvcGVydHkgPSAnJzsKJHNvcnRieSAgICAgICAgID0gJ3VzZXJuYW1lJzsKJHNvcnRvcmRlciAgICAgID0gJ0FTQyc7CiRwcm9wdmFsICAgICAgICA9ICcnOwokcHJvcHZhbDIgICAgICAgPSAnJzsKJG9mZnNldCAgICAgICAgID0gMDsKJHByb3BzICAgICAgICAgID0gJyc7CiRmZXUgICAgICAgICAgICA9JiAkdGhpcy0+R2V0TW9kdWxlSW5zdGFuY2UoJ0Zyb250RW5kVXNlcnMnKTsKJGFsbGFueSAgICAgICAgID0gJ2FsbCc7CiRzZWFyY2hkYXRhICAgICA9IGFycmF5KCk7CgojCiMgU2V0dXAKIwppZiggaXNzZXQoICRwYXJhbXNbJ2lubGluZSddICkgJiYgJHBhcmFtc1snaW5saW5lJ10gIT0gMCApCiAgewogICAgJGlubGluZSA9IDE7CiAgfQppZiggaXNzZXQoJHBhcmFtc1snc3VtbWFyeXRlbXBsYXRlJ10pICkKICB7CiAgICAkdGhldGVtcGxhdGUgPSAnc3VtbWFyeV8nLnRyaW0oJHBhcmFtc1snc3VtbWFyeXRlbXBsYXRlJ10pOwogIH0KaWYoIGlzc2V0KCAkcGFyYW1zWydkZXRhaWxwYWdlJ10gKSApCiAgewogICAgJHRtcCA9ICR0aGlzLT5yZXNvbHZlX2FsaWFzX29yX2lkKCRwYXJhbXNbJ2RldGFpbHBhZ2UnXSk7CiAgICBpZiggJHRtcCApCiAgICAgIHsKCSRkZXRhaWxwYWdlID0gJHRtcDsKCSRpbmxpbmUgPSAwOwogICAgICB9CiAgfQppZiggaXNzZXQoICRwYXJhbXNbJ3NvcnRvcmRlciddICkgKQogIHsKICAgICR0bXAgPSBzdHJ0b2xvd2VyKCRwYXJhbXNbJ3NvcnRvcmRlciddKTsKICAgIHN3aXRjaCggJHRtcCApCiAgICAgIHsKICAgICAgY2FzZSAnYXNjJzoKICAgICAgY2FzZSAnZGVzYyc6Cgkkc29ydG9yZGVyID0gJHRtcDsKCWJyZWFrOwogICAgICBkZWZhdWx0OgoJJHNvcnRvcmRlciA9ICdhc2MnOwoJYnJlYWs7CiAgICAgIH0KICB9CmlmKCBpc3NldCgkcGFyYW1zWydzb3J0YnknXSkgKQogIHsKICAgICR0bXAgPSB0cmltKCRwYXJhbXNbJ3NvcnRieSddKTsKICAgIHN3aXRjaCgkdG1wKQogICAgICB7CiAgICAgIGNhc2UgJ2lkJzoKICAgICAgY2FzZSAndXNlcm5hbWUnOgogICAgICBjYXNlICdjcmVhdGVkYXRlJzoKICAgICAgY2FzZSAnZXhwaXJlcyc6Cgkkc29ydGJ5ID0gJ1UuJy4kdG1wOwoJYnJlYWs7CiAgICAgIGNhc2UgJ2FjdGl2aXR5JzoKCSRzb3J0YnkgPSAnSC5yZWZkYXRlJzsKCWJyZWFrOwogICAgICBkZWZhdWx0OgoJJHN0YXR1cyA9ICdlcnJvcic7CgkkbWVzc2FnZXNbXSA9ICAkdGhpcy0+TGFuZygnZXJyb3JfaW52YWxpZHNvcnRmaWVsZCcsJHRtcCk7CglicmVhazsKICAgICAgfQogIH0KaWYoIGlzc2V0KCRwYXJhbXNbJ3BhZ2VsaW1pdCddKSApCiAgewogICAgJHBhZ2VsaW1pdCA9IChpbnQpJHBhcmFtc1sncGFnZWxpbWl0J107CiAgICAkcGFnZWxpbWl0ID0gbWF4KCRwYWdlbGltaXQsMSk7CiAgICAkcGFnZWxpbWl0ID0gbWluKDEwMDAsJHBhZ2VsaW1pdCk7CiAgfQppZiggaXNzZXQoJHBhcmFtc1sncGFnZW51bSddKSApCiAgewogICAgJHBhZ2VudW0gPSAoaW50KSRwYXJhbXNbJ3BhZ2VudW0nXTsKICAgICRwYWdlbnVtID0gbWF4KCRwYWdlbnVtLDEpOwogICAgJHBhZ2VudW0gPSBtaW4oMTAwMDAsJHBhZ2VudW0pOwogIH0KaWYoIGlzc2V0KCRwYXJhbXNbJ3VkX2FsbGFueSddKSApCiAgewogICAgJGFsbGFueSA9IHN0cnRvbG93ZXIodHJpbSgkcGFyYW1zWyd1ZF9hbGxhbnknXSkpOwogIH0KCiMKIyBIYW5kbGUgZm9ybSBzdWJtaXNzaW9uCiMKaWYoIGlzc2V0KCRwYXJhbXNbJ3VkX2NhbmNlbCddKSApCiAgewogICAgJGRlc3RwYWdlID0gJHJldHVybmlkOwogICAgaWYoIGlzc2V0KCRwYXJhbXNbJ3VkX29yaWdwYWdlJ10pICkKICAgICAgewoJJGRlc3RwYWdlID0gKGludCkkcGFyYW1zWyd1ZF9vcmlncGFnZSddOwogICAgICB9CiAgICAkdGhpcy0+UmVkaXJlY3RDb250ZW50KCRkZXN0cGFnZSk7CiAgfQplbHNlIGlmKCBpc3NldCgkcGFyYW1zWyd1ZF9zdWJtaXQnXSkgfHwgaXNzZXQoJHBhcmFtc1sndWRfZG9zZWFyY2gnXSkgKQogIHsKICAgIGlmKCBpc3NldCgkcGFyYW1zWyd1ZF91c2VybmFtZSddKSApCiAgICAgIHsKCSR1c2VybmFtZV9leHByID0gdHJpbSgkcGFyYW1zWyd1ZF91c2VybmFtZSddKTsKICAgICAgfQoKICAgIGlmKCBpc3NldCgkcGFyYW1zWydzZWFyY2hwcm9wZXJ0eSddKSAmJiBpc3NldCgkcGFyYW1zWyd1ZF9wcm9wdmFsdWUnXSkpCiAgICAgIHsKCSR0bXAgPSBleHBsb2RlKCcsJyx0cmltKCRwYXJhbXNbJ3NlYXJjaHByb3BlcnR5J10pKTsKCWZvcmVhY2goICR0bXAgYXMgJG9uZSApCgkgIHsKCSAgICBpZiggaXNzZXQoJHBhcmFtc1sndWRfcHJvcHZhbHVlJ11bJG9uZV0pICkKCSAgICAgIHsKCQlpZiggJHBhcmFtc1sndWRfcHJvcHZhbHVlJ11bJG9uZV0gIT0gJy0xJyAmJgoJCSAgICAhZW1wdHkoJHBhcmFtc1sndWRfcHJvcHZhbHVlJ11bJG9uZV0pICkKCQkgICRzZWFyY2hkYXRhWyRvbmVdID0gdHJpbSgkcGFyYW1zWyd1ZF9wcm9wdmFsdWUnXVskb25lXSk7CgkgICAgICB9CgkgIH0KICAgICAgfQoKICAgICR3aGVyZSA9IGFycmF5KCk7CiAgICAkcXBhcm1zID0gYXJyYXkoKTsKICAgICRqb2lucyA9IGFycmF5KCk7CiAgICBpZiggIWVtcHR5KCR1c2VybmFtZV9leHByKSApCiAgICAgIHsKCSR3aGVyZVtdID0gJ1UudXNlcm5hbWUgUkVHRVhQID8nOwoJJHFwYXJtc1tdID0gJHVzZXJuYW1lX2V4cHI7CiAgICAgIH0KICAgIGlmKCBjb3VudCgkc2VhcmNoZGF0YSkgKQogICAgICB7CgkkY250ID0gMDsKCWZvcmVhY2goICRzZWFyY2hkYXRhIGFzICRwcm9wbmFtZSA9PiAkcHJvcHZhbCApCgkgIHsKCSAgICAkY250Kys7CgkgICAgJGpvaW5zW10gPSAnTEVGVCBKT0lOICcuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19wcm9wZXJ0aWVzIFB7JGNudH0gT04gVS5pZCA9IFB7JGNudH0udXNlcmlkIjsKCSAgICAkd2hlcmVbXSA9ICIoUHskY250fS50aXRsZSA9ID8gQU5EIFB7JGNudH0uZGF0YSBSRUdFWFAgPykiOwoJICAgICRxcGFybXNbXSA9ICRwcm9wbmFtZTsKCSAgICAkcXBhcm1zW10gPSAkcHJvcHZhbDsKCSAgfQogICAgICB9CgogICAgJHRtcCA9ICRkYi0+SWZOdWxsKCdILnJlZmRhdGUnLCRkYi0+RGJUaW1lc3RhbXAoMSkpLicgQVMgcmVmZGF0ZSc7CiAgICAkcXUgID0gJ1NFTEVDVCBVLiogRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfdXNlcnMgVSc7CiAgICAkcWMgID0gJ1NFTEVDVCBDT1VOVChVLmlkKSBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc191c2VycyBVJzsKICAgICRxdSAuPSAnIExFRlQgSk9JTiAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfaGlzdG9yeSBIIE9OIFUuaWQgPSBILnVzZXJpZCc7CiAgICBpZiggY291bnQoJGpvaW5zKSApCiAgICAgIHsKCWZvcmVhY2goICRqb2lucyBhcyAkb25lICkKCSAgewoJICAgICRxdSAuPSAnICcuJG9uZTsKCSAgICAkcWMgLj0gJyAnLiRvbmU7CgkgIH0KICAgICAgfQogICAgaWYoIGNvdW50KCR3aGVyZSkgKQogICAgICB7CgkkZXhwciA9ICcgQU5EICc7CglpZiggJGFsbGFueQogPT0gJ2FueScgKQoJICB7CgkgICAgJGV4cHIgPSAnIE9SICc7CgkgIH0KCSRxdSAuPSAnIFdIRVJFICcuaW1wbG9kZSgkZXhwciwkd2hlcmUpOwoJJHFjIC49ICcgV0hFUkUgJy5pbXBsb2RlKCRleHByLCR3aGVyZSk7CiAgICAgIH0KICAgICRxdSAuPSAnIEdST1VQIEJZIFUuaWQnOwogICAgJHF1IC49ICIgT1JERVIgQlkgJHNvcnRieSAkc29ydG9yZGVyIjsKCiAgICAkaXRlbWNvdW50ID0gJGRiLT5HZXRPbmUoJHFjLCRxcGFybXMpOwogICAgaWYoICEkaXRlbWNvdW50ICkgcmV0dXJuOwoKICAgICRkYnIgPSAkZGItPlNlbGVjdExpbWl0KCRxdSwkcGFnZWxpbWl0LCRvZmZzZXQsJHFwYXJtcyk7CiAgICBpZiggISRkYnIgKQogICAgICB7CgllY2hvICdERUJVRzogZXJyb3IgaW4gcXVlcnk8YnIvPic7CgllY2hvICcmbmJzcDsmbmJzcDtRVUVSWSA9ICcuJGRiLT5zcWwuJzxici8+JzsKCWVjaG8gJyZuYnNwOyZuYnNwO0Vycm9yID0gJy4kZGItPkVycm9yTXNnKCk7Cgkkc3RhdHVzID0gJ2Vycm9yJzsKCSRtZXNzYWdlc1tdID0gJHRoaXMtPkxhbmcoJ2Vycm9yX3NxbCcpOwogICAgICB9CiAgICBlbHNlCiAgICAgIHsKCSRkYXRhID0gYXJyYXkoKTsKCXdoaWxlKCAkZGJyICYmICgkcm93ID0gJGRici0+RmV0Y2hSb3coKSkgKQoJICB7CgkgICAgJGRhdGFbXSA9ICRyb3c7CgkgIH0KCSRkYnItPkNsb3NlKCk7CiAgICAgIH0KCiAgICAkYmFkX2RhdGUgPSB0cmltKCRkYi0+RGJUaW1lU3RhbXAoMSksIiciKTsKCiAgICAvLyBxdWVyeSB0byBnZXQgYWxsIHVzZXIgbWVtYmVyIGdyb3VwcwogICAgJGdxdWVyeSA9ICdTRUxFQ1QgZ3JvdXBpZCBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19iZWxvbmdzIAogICAgICAgICAgICAgICAgICAgICAgICBXSEVSRSB1c2VyaWQgPSA/JzsKCQogICAgLy8gcXVlcnkgdG8gZ2V0IHVzZXIgcHJvcGVydGllcy4KICAgICRwcXVlcnkgPSAnIFNFTEVDVCB0aXRsZSxkYXRhIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX3Byb3BlcnRpZXMgCiAgICAgICAgICAgICAgICAgICAgIFdIRVJFIHVzZXJpZCA9ID8nOwoJICAgIAogICAgZm9yKCAkaSA9IDA7ICRpIDwgY291bnQoJGRhdGEpOyAkaSsrICkKICAgICAgewoJLy8gaGlkZSB0aGUgcGFzc3dvcmQgZmllbGQKCXVuc2V0KCRkYXRhWyRpXVsncGFzc3dvcmQnXSk7CgkKCS8vIHVuc2V0IHRoZSByZWZkYXRlIGlmIHRoZSB1c2VyIGhhcyBoYWQgbm8gYWN0aXZpdHkKCWlmKCAkZGF0YVskaV1bJ3JlZmRhdGUnXSA9PSAkYmFkX2RhdGUgKQoJICB7CgkgICAgdW5zZXQoJGRhdGFbJGldWydyZWZkYXRlJ10pOwoJICB9CgkKCS8vIERldGFpbCBVUkwKCSRwYXJtcyA9IGFycmF5KCk7CgkkcGFybXNbJ3VpZCddID0gJGRhdGFbJGldWydpZCddOwoJJHByZXR0eXVybCA9ICd1c2Vycy8nLiRwYXJtc1sndWlkJ10uJy8nLiRkZXRhaWxwYWdlOwoJaWYoIGlzc2V0KCRwYXJhbXNbJ2RldGFpbHRlbXBsYXRlJ10pICkKCSAgewoJICAgICRwYXJtc1snZGV0YWlsdGVtcGxhdGUnXSA9ICRwYXJhbXNbJ2RldGFpbHRlbXBsYXRlJ107CgkgICAgJHByZXR0eXVybCAuPSAnLycubXVuZ2Vfc3RyaW5nX3RvX3VybCh0cmltKCRwYXJhbXNbJ2RldGFpbHRlbXBsYXRlJ10pKTsKCSAgfQoJJHByZXR0eXVybCAuPSAnLycubXVuZ2Vfc3RyaW5nX3RvX3VybCgkZGF0YVskaV1bJ3VzZXJuYW1lJ10pOwoJJGRhdGFbJGldWydkZXRhaWxfdXJsJ10gPSAkdGhpcy0+Q3JlYXRlVVJMKCRpZCwnZGV0YWlsJywkZGV0YWlscGFnZSwKCQkJCQkJICAgJHBhcm1zLGZhbHNlLCRwcmV0dHl1cmwpOwoJCgkvLyBhZGQgbWVtYmVyIGdyb3VwIGlkcwoJJHRtcCA9ICRkYi0+R2V0QXJyYXkoJGdxdWVyeSxhcnJheSgkZGF0YVskaV1bJ2lkJ10pKTsKCSRncm91cHMgPSBjZ2VfYXJyYXk6OmV4dHJhY3RfZmllbGQoJHRtcCwnZ3JvdXBpZCcpOwoJJGRhdGFbJGldWydncm91cHMnXSA9ICRncm91cHM7CgkKCS8vIEdldCBwcm9wcmV0aWVzCgkkZ3N0ciA9ICcoJy5pbXBsb2RlKCcsJywkZ3JvdXBzKS4nKSc7CgkkdG1wID0gJGRiLT5HZXRBcnJheShzcHJpbnRmKCRwcXVlcnksJGdzdHIpLGFycmF5KCRkYXRhWyRpXVsnaWQnXSkpOwoJaWYoICR0bXAgKQoJICB7CgkgICAgJHRtcDIgPSBhcnJheSgpOwoJICAgIGZvciggJGogPSAwOyAkaiA8IGNvdW50KCR0bXApOyAkaisrICkKCSAgICAgIHsKCQlpZiggIWVtcHR5KCR0bXBbJGpdWydkYXRhJ10pICYmICR0bXBbJGpdWydkYXRhJ10gIT0gJzxub3RzZXQ+JyApCgkJICB7CgkJICAgICR0bXAyWyR0bXBbJGpdWyd0aXRsZSddXSA9ICR0bXBbJGpdWydkYXRhJ107CgkJICB9CgkgICAgICB9CgkgICAgJGRhdGFbJGldWydwcm9wZXJ0aWVzJ10gPSAkdG1wMjsKCSAgfQogICAgICB9CgogICAgaWYoIGVtcHR5KCRzdGF0dXMpICkKICAgICAgewoJLy8gR2V0IGFsbCB0aGUgdXNlciBwcm9wZXJ0aWVzCgkkcXVlcnkgPSAnU0VMRUNUICogRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfcHJvcGRlZm4nOwoJJHRtcCA9ICRkYi0+R2V0QXJyYXkoJHF1ZXJ5KTsKCSRwcm9wcyA9IGNnZV9hcnJheTo6dG9faGFzaCgkdG1wLCduYW1lJyk7CiAgICAgIH0KCiAgICBpZiggZW1wdHkoJHN0YXR1cykgKQogICAgICB7CgkvLyBnZXQgYWxsIHRoZSBncm91cHMKCSRxdWVyeSA9ICdTRUxFQ1QgKiBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19ncm91cHMnOwoJJHRtcCA9ICRkYi0+R2V0QXJyYXkoJHF1ZXJ5KTsKCSRncm91cHMgPSBjZ2VfYXJyYXk6OnRvX2hhc2goJHRtcCwnaWQnKTsKICAgICAgfQogIH0KCiMKIyBHaXZlIEV2ZXJ5dGhpbmcgdG8gU21hcnR5CiMKaWYoIGVtcHR5KCRzdGF0dXMpICkKICB7CiAgICAkY29uZmlnID0mICRnQ21zLT5HZXRDb25maWcoKTsKICAgICRzbWFydHktPmFzc2lnbignZ3JvdXBzJywkZ3JvdXBzKTsKICAgICRzbWFydHktPmFzc2lnbigncHJvcGVydGllcycsJHByb3BzKTsKICAgICRzbWFydHktPmFzc2lnbigndG90YWxjb3VudCcsJGl0ZW1jb3VudCk7CiAgICAkc21hcnR5LT5hc3NpZ24oJ3VzZXJzJywkZGF0YSk7CiAgICAkc21hcnR5LT5hc3NpZ24oJ2ZpbGVfbG9jYXRpb24nLCRjb25maWdbJ3VwbG9hZHNfdXJsJ10uJy9mZXVzZXJzJyk7CiAgICAkc21hcnR5LT5hc3NpZ24oJ3VzZXJzJywkZGF0YSk7CiAgfQplbHNlCiAgewogICAgJHNtYXJ0eS0+YXNzaWduKCdzdGF0dXMnLCRzdGF0dXMpOwogICAgJHNtYXJ0eS0+YXNzaWduKCdtZXNzYWdlcycsJG1lc3NhZ2VzKTsKICB9CgojCiMgRGlzcGxheSB0aGUgdGVtcGxhdGUKIwplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGVGcm9tRGF0YWJhc2UoJHRoZXRlbXBsYXRlKTsKCiMKIyBFT0YKIwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.propvals.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IENHVXNlckRpcmVjdG9yeSAoYykgMjAwOSBieSBSb2JlcnQgQ2FtcGJlbGwgCiMgICAgICAgICAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgQW4gYWRkb24gbW9kdWxlIGZvciBDTVMgTWFkZSBTaW1wbGUgdG8gcHJvdmlkZSB0aGUgYWJpbGl0eSB0byBicm93c2UKIyAgYW5kIHZpZXcgc3VtbWFyeSByZXBvcnRzIGFuZCBkZXRhaWwgcmVwb3J0cyBhYm91dCBncm91cHMgb2YgZnJvbnRlbmQKIyAgdXNlcnMuCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBIb3dldmVyLCBhcyBhIHNwZWNpYWwgZXhjZXB0aW9uIHRvIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgZGlzdHJpYnV0ZWQKIyBhcyBhbiBhZGRvbiBtb2R1bGUgdG8gQ01TIE1hZGUgU2ltcGxlLiAgWW91IG1heSBub3QgdXNlIHRoaXMgc29mdHdhcmUKIyBpbiBhbnkgTm9uIEdQTCB2ZXJzaW9uIG9mIENNUyBNYWRlIHNpbXBsZSwgb3IgaW4gYW55IHZlcnNpb24gb2YgQ01TCiMgTWFkZSBzaW1wbGUgdGhhdCBkb2VzIG5vdCBpbmRpY2F0ZSBjbGVhcmx5IGFuZCBvYnZpb3VzbHkgaW4gaXRzIGFkbWluIAojIHNlY3Rpb24gdGhhdCB0aGUgc2l0ZSB3YXMgYnVpbHQgd2l0aCBDTVMgTWFkZSBzaW1wbGUuCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojRU5EX0xJQ0VOU0UKaWYoICFpc3NldCgkZ0NtcykgKSBleGl0OwoKLy8KLy8gcmV0cmlldmUgYWxsIG9mIHRoZSB2YWx1ZXMgb2YgYSBwcm9wZXJ0eS4KLy8gdGhpcyBpcyBhbiBhY3Rpb24gaW50ZW5kZWQgdG8gYmUgY2FsbGVkIHZpYSBhamF4Li4uIGkuZTogd2l0aCB0aGUgc2hvd3RlbXBsYXRlPWZhbHNlIHBhcmFtZXRlcgovLwoKLy8gc2V0dXAKJHByb3AgPSAnJzsKJHByb3B2YWwgPSAnJzsKJHVzZWxpa2UgPSBUUlVFOwokcGFnZWxpbWl0ID0gMTAwOwokcmVzID0gYXJyYXkoJ3N0YXR1cyc9Pm51bGwsJ2RhdGEnPT5udWxsKTsKCmlmKCAhaXNzZXQoJHBhcmFtc1sncHJvcCddKSApCiAgewogICAgJHJlc1snc3RhdHVzJ10gPSAnRVJST1InOwogICAgJHJlc1snZGF0YSddID0gJ05vIHByb3BlcnR5IHNwZWNpZmllZCc7CiAgICBlY2hvIGpzb25fZW5jb2RlKCRyZXMpOwogICAgZXhpdDsKICB9CiRwcm9wID0gdHJpbSgkcGFyYW1zWydwcm9wJ10pOwoKaWYoIGlzc2V0KCRwYXJhbXNbJ3Byb3B2YWwnXSkgKSAKIHsKICAgICRwcm9wdmFsID0gdHJpbSgkcGFyYW1zWydwcm9wdmFsJ10pOwogfQppZiggaXNzZXQoJHBhcmFtc1sndXNlbGlrZSddKSApCiAgewogICAgJHVzZWxpa2UgPSBjZ2VfdXRpbHM6OnRvX2Jvb2wodHJpbSgkcGFyYW1zWyd1c2VsaWtlJ10pKTsKICB9CgovLyAKLy8gZGF0YSB2YWxpZGF0aW9uCi8vCiRmZXUgPSBjbXNfdXRpbHM6OmdldF9tb2R1bGUoJ0Zyb250RW5kVXNlcnMnKTsKaWYoICEkZmV1ICkKICB7CiAgICAkcmVzWydzdGF0dXMnXSA9ICdFUlJPUic7CiAgICAkcmVzWydkYXRhJ10gPSAnTm8gcHJvcGVydHkgc3BlY2lmaWVkJzsKICAgIGVjaG8ganNvbl9lbmNvZGUoJHJlcyk7CiAgICBleGl0OwogIH0KJGRlZm4gPSAkZmV1LT5HZXRQcm9wZXJ0eURlZm4oJHByb3ApOwppZiggISRkZWZuICkKICB7CiAgICAkcmVzWydzdGF0dXMnXSA9ICdFUlJPUic7CiAgICAkcmVzWydkYXRhJ10gPSAnUHJvcGVydHkgTm90IEZvdW5kJzsKICAgIGVjaG8ganNvbl9lbmNvZGUoJHJlcyk7CiAgICBleGl0OwogIH0KCi8vIE5vdyB3ZSBkbyB0aGUgd29yay4uLgokb3B0aW9ucyA9IGFycmF5KCk7CnN3aXRjaCggJGRlZm5bJ3R5cGUnXSApCiAgewogIGNhc2UgMDogLy8gdGV4dAogIGNhc2UgMjogLy8gZW1haWwKICAgIC8vIGdldCB0aGlzIGZyb20gdGhlIGRhdGFiYXNlLi4uIG1heSBhbHNvIHdhbnQgdG8gdXNlIHRoZSBncm91cCBwYXJhbWV0ZXIgaGVyZSB0byBsaW1pdCBpdCBhIGJpdCBtb3JlLgogICAgJHF1ZXJ5ID0gJ1NFTEVDVCBESVNUSU5DVCBkYXRhIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX3Byb3BlcnRpZXMgV0hFUkUgdGl0bGUgPSA/JzsKICAgICRwYXJtcyA9IGFycmF5KCRwcm9wKTsKICAgIGlmKCAkcHJvcHZhbCApCiAgICAgIHsKCWlmKCAkdXNlbGlrZSAmJiAhZW5kc3dpdGgoJHByb3B2YWwsJyUnKSAgKQoJICB7CgkgICAgJHByb3B2YWwgLj0gJyUnOwoJICB9CgoJJHF1ZXJ5IC49ICcgQU5EIGRhdGEnOwoJaWYoICR1c2VsaWtlICkKCSAgewoJICAgICRxdWVyeSAuPSAnIExJS0UgPyc7CgkgIH0KCWVsc2UKCSAgewoJICAgICRxdWVyeSAuPSAnID0gPyc7CgkgIH0KCSRwYXJtc1tdID0gJHByb3B2YWw7CiAgICAgIH0KICAgICRyZXNbJ2RhdGEnXSA9ICRkYi0+R2V0Q29sKCRxdWVyeSwkcGFybXMpOwogICAgYnJlYWs7CgogIGNhc2UgNDogLy8gZHJvcGRvd24KICBjYXNlIDU6IC8vIG11bHRpc2VsZWN0CiAgY2FzZSA3OiAvLyByYWRpb2J1dHRvbnMKICAgIC8vIGdldCB0aGlzIGZyb20gdGhlIHNlbGVjdCBvcHRpb25zLgogICAgJG9wdHMgPSAkZmV1LT5HZXRTZWxlY3RPcHRpb25zKCRwcm9wKTsKICAgIGlmKCAhJG9wdHMgKQogICAgICB7CgkkcmVzWydzdGF0dXMnXSA9ICdFUlJPUic7CgkkcmVzWydkYXRhJ10gPSAnUHJvcGVydHkgbm90IGZvdW5kJzsKCWVjaG8ganNvbl9lbmNvZGUoJHJlcyk7CglleGl0OwogICAgICB9CiAgICAvLyBub3cgZ2V0IHRoZSBvcHRpb25zIHRoYXQgc3RhcnQgd2l0aCB0aGUgc3BlY2lmaWVkIHRleHQuCiAgICAkdG1wID0gYXJyYXkoKTsKICAgIGZvcmVhY2goICRvcHRzIGFzICRrZXkgPT4gJHZhbCApCiAgICAgIHsKCWlmKCBzdGFydHN3aXRoKHN0cnRvbG93ZXIoJGtleSksc3RydG9sb3dlcigkcHJvcHZhbCkpICkKCSAgewoJICAgICR0bXBbXSA9IGFycmF5KCdsYWJlbCc9PiRrZXksJ3ZhbHVlJz0+JHZhbCk7CgkgIH0KICAgICAgfQogICAgJHJlc1snZGF0YSddID0gJHRtcDsKICAgIGJyZWFrOwoKICBjYXNlIDY6IC8vIGltYWdlCiAgY2FzZSAzOiAvLyB0ZXh0YXJlYQogIGNhc2UgMTogLy8gY2hlY2tib3gKICBjYXNlIDg6IC8vIGRhdGEKICBkZWZhdWx0OgogICAgJHJlc1snc3RhdHVzJ10gPSAnRVJST1InOwogICAgJHJlc1snZGF0YSddID0gJ0ludmFsaWQgUHJvcGVydHkgVHlwZSc7CiAgICBlY2hvIGpzb25fZW5jb2RlKCRyZXMpOwogICAgZXhpdDsKICB9CgovLyBpZiB3ZSBnb3QgaGVyZSwgd2UncmUgZG9uZS4KJHJlc1snc3RhdHVzJ10gPSAnT0snOwplY2hvIGpzb25fZW5jb2RlKCRyZXMpOwpleGl0OwoKIwojIEVPRgojCj8+]]></data>
	</file>
	<file>
	  <filename>/action.search.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IENHVXNlckRpcmVjdG9yeSAoYykgMjAwOSBieSBSb2JlcnQgQ2FtcGJlbGwgCiMgICAgICAgICAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgQW4gYWRkb24gbW9kdWxlIGZvciBDTVMgTWFkZSBTaW1wbGUgdG8gcHJvdmlkZSB0aGUgYWJpbGl0eSB0byBicm93c2UKIyAgYW5kIHZpZXcgc3VtbWFyeSByZXBvcnRzIGFuZCBkZXRhaWwgcmVwb3J0cyBhYm91dCBncm91cHMgb2YgZnJvbnRlbmQKIyAgdXNlcnMuCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBIb3dldmVyLCBhcyBhIHNwZWNpYWwgZXhjZXB0aW9uIHRvIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgZGlzdHJpYnV0ZWQKIyBhcyBhbiBhZGRvbiBtb2R1bGUgdG8gQ01TIE1hZGUgU2ltcGxlLiAgWW91IG1heSBub3QgdXNlIHRoaXMgc29mdHdhcmUKIyBpbiBhbnkgTm9uIEdQTCB2ZXJzaW9uIG9mIENNUyBNYWRlIHNpbXBsZSwgb3IgaW4gYW55IHZlcnNpb24gb2YgQ01TCiMgTWFkZSBzaW1wbGUgdGhhdCBkb2VzIG5vdCBpbmRpY2F0ZSBjbGVhcmx5IGFuZCBvYnZpb3VzbHkgaW4gaXRzIGFkbWluIAojIHNlY3Rpb24gdGhhdCB0aGUgc2l0ZSB3YXMgYnVpbHQgd2l0aCBDTVMgTWFkZSBzaW1wbGUuCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojRU5EX0xJQ0VOU0UKaWYoICFpc3NldCgkZ0NtcykgKSBleGl0OwoKIwojIEluaXRpYWxpemF0aW9uCiMKJGZldSA9JiAkdGhpcy0+R2V0TW9kdWxlSW5zdGFuY2UoJ0Zyb250RW5kVXNlcnMnKTsKaWYoICEkZmV1ICkgcmV0dXJuOwokaW5saW5lID0gMDsKJHJlc3VsdHBhZ2UgPSAkcmV0dXJuaWQ7CiR0aGV0ZW1wbGF0ZSA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKENHVVNFUkRJUl9QUkVGX0RGTFRTRUFSQ0hGT1JNX05BTUUpOwokcHJvcGVydHk9Jyc7CiRwcm9wZXJ0eTI9Jyc7CgoKIwojIEdldCBwYXJhbWV0ZXJzCiMKaWYoIGlzc2V0KCRwYXJhbXNbJ2lubGluZSddKSAmJiAkcGFyYW1zWydpbmxpbmUnXSAhPSAwICkKICB7CiAgICAkaW5saW5lID0gMTsKICAgIHVuc2V0KCRwYXJhbXNbJ2lubGluZSddKTsKICB9CmlmKCBpc3NldCgkcGFyYW1zWydyZXN1bHRwYWdlJ10pICkKICB7CiAgICAkdG1wID0gJHRoaXMtPnJlc29sdmVfYWxpYXNfb3JfaWQoJHBhcmFtc1sncmVzdWx0cGFnZSddKTsKICAgIGlmKCAkdG1wICkKICAgICAgewoJJHJlc3VsdHBhZ2UgPSAkdG1wOwoJJGlubGluZSA9IDA7CiAgICAgIH0KICAgIHVuc2V0KCRwYXJhbXNbJ3Jlc3VsdHBhZ2UnXSk7CiAgfQppZiggaXNzZXQoJHBhcmFtc1snc2VhcmNoZm9ybXRlbXBsYXRlJ10pICkKICB7CiAgICAkdGhldGVtcGxhdGUgPSB0cmltKCRwYXJhbXNbJ3NlYXJjaGZvcm10ZW1wbGF0ZSddKTsKICAgIHVuc2V0KCRwYXJhbXNbJ3NlYXJjaGZvcm10ZW1wbGF0ZSddKTsKICB9CmlmKCBpc3NldCgkcGFyYW1zWydzZWFyY2hwcm9wZXJ0eSddKSApCiAgewogICAgJHByb3BlcnR5ID0gdHJpbSgkcGFyYW1zWydzZWFyY2hwcm9wZXJ0eSddKTsKICB9CgoKLy8gZ2V0IHRoZSBwcm9wZXJ0eSBkZWZpbml0aW9uCmlmKCAhZW1wdHkoJHByb3BlcnR5KSApCiAgewogICAgJHNlYXJjaHByb3BzID0gYXJyYXkoKTsKICAgICRwcm9wZXJ0aWVzID0gZXhwbG9kZSgnLCcsJHByb3BlcnR5KTsKICAgIGZvcmVhY2goICRwcm9wZXJ0aWVzIGFzICRvbmVwcm9wZXJ0eSApCiAgICAgIHsKCSRkZWZuID0gJGZldS0+R2V0UHJvcGVydHlEZWZuKCRvbmVwcm9wZXJ0eSk7CgkKCS8vIGZpZ3VyZSBvdXQgd2hhdCB0eXBlIG9mIGZpZWxkIGl0J2xsIGJlCgkkZmllbGR0eXBlID0gJyc7CglpZiggJGRlZm4gKQoJICB7CgkgICAgJG9wdGlvbnMgPSAnJzsKCSAgICBzd2l0Y2goICRkZWZuWyd0eXBlJ10gKQoJICAgICAgewoJICAgICAgY2FzZSAnMCc6IC8vIHRleHQKCSAgICAgIGNhc2UgJzInOiAvLyBlbWFpbAoJCSRmaWVsZHR5cGUgPSAndGV4dCc7CgkJYnJlYWs7CgkJCgkgICAgICBjYXNlICc0JzogLy8gZHJvcGRvd24KCSAgICAgIGNhc2UgJzUnOiAvLyBtdWx0aXNlbGVjdAoJICAgICAgY2FzZSAnNyc6IC8vIHJhZGlvYnV0dG9ucwoJCSRmaWVsZHR5cGUgPSAnc2VsZWN0JzsKCQkkdG1wID0gJGZldS0+R2V0U2VsZWN0T3B0aW9ucygkZGVmblsnbmFtZSddLDEpOwoJCSRvcHRpb25zID0gYXJyYXkoKTsKCQkkb3B0aW9uc1stMV0gPSAkdGhpcy0+TGFuZygnYW55Jyk7CgkJZm9yZWFjaCggJHRtcCBhcyAka2V5ID0+ICR2YWx1ZSApCgkJICB7CgkJICAgICRvcHRpb25zWyR2YWx1ZV0gPSAka2V5OwoJCSAgfQoJCWJyZWFrOwoJCQoJICAgICAgY2FzZSAnMSc6IC8vIGNoZWNrYm94CgkJJGZpZWxkdHlwZSA9ICdjaGVja2JveCc7CgkJJG9wdGlvbnMgPSBhcnJheSgwPT4wLDE9PjEpOwoJCWJyZWFrOwoKCSAgICAgIGNhc2UgJzMnOiAvLyB0ZXh0YXJlYQoJICAgICAgY2FzZSAnNic6IC8vIGltYWdlCgkgICAgICBjYXNlICc4JzogLy8gZGF0ZQoJCS8vIGdldCB0aGUgb3B0aW9ucwoJCWJyZWFrOwoJICAgICAgfQoJICB9CgkKCWlmKCAhZW1wdHkoJGZpZWxkdHlwZSkgKQoJICB7CgkgICAgJHRtcCA9IGFycmF5KCk7CgkgICAgJHRtcFsnZmllbGRkZWZuJ10gPSAkZGVmbjsKCSAgICAkdG1wWydmaWVsZHR5cGUnXSA9ICRmaWVsZHR5cGU7CgkgICAgaWYoICFlbXB0eSgkb3B0aW9ucykgKQoJICAgICAgewoJCSR0bXBbJ29wdGlvbnMnXSA9ICRvcHRpb25zOwoJICAgICAgfQoJICAgICRzZWFyY2hwcm9wc1skb25lcHJvcGVydHldID0gJHRtcDsKCSAgfQogICAgICB9CgogICAgaWYoICFlbXB0eSgkc2VhcmNocHJvcHMpICkKICAgICAgewoJJHNtYXJ0eS0+YXNzaWduKCdzZWFyY2hwcm9wcycsJHNlYXJjaHByb3BzKTsKICAgICAgfQogIH0KCiRzbWFydHktPmFzc2lnbigndWRfb3JpZ3BhZ2UnLCRyZXR1cm5pZCk7CiRzbWFydHktPmFzc2lnbignZm9ybXN0YXJ0JywkdGhpcy0+Q0dDcmVhdGVGb3JtU3RhcnQoJGlkLCdkb19zZWFyY2gnLCRyZXN1bHRwYWdlLCRwYXJhbXMsJGlubGluZSkpOwokc21hcnR5LT5hc3NpZ24oJ2Zvcm1lbmQnLCR0aGlzLT5DcmVhdGVGb3JtRW5kKCkpOwoKIwojIFByb2Nlc3MgdGhlIHRlbXBsYXRlCiMKZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlRnJvbURhdGFiYXNlKCdzZWFyY2hmb3JtXycuJHRoZXRlbXBsYXRlKTsKCgojCiMgRU9GCiMKPz4=]]></data>
	</file>
	<file>
	  <filename>/CGUserDirectory.module.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IENHVXNlckRpcmVjdG9yeSAoYykgMjAwOSBieSBSb2JlcnQgQ2FtcGJlbGwgCiMgICAgICAgICAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgQW4gYWRkb24gbW9kdWxlIGZvciBDTVMgTWFkZSBTaW1wbGUgdG8gcHJvdmlkZSB0aGUgYWJpbGl0eSB0byBicm93c2UKIyAgYW5kIHZpZXcgc3VtbWFyeSByZXBvcnRzIGFuZCBkZXRhaWwgcmVwb3J0cyBhYm91dCBncm91cHMgb2YgZnJvbnRlbmQKIyAgdXNlcnMuCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBIb3dldmVyLCBhcyBhIHNwZWNpYWwgZXhjZXB0aW9uIHRvIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgZGlzdHJpYnV0ZWQKIyBhcyBhbiBhZGRvbiBtb2R1bGUgdG8gQ01TIE1hZGUgU2ltcGxlLiAgWW91IG1heSBub3QgdXNlIHRoaXMgc29mdHdhcmUKIyBpbiBhbnkgTm9uIEdQTCB2ZXJzaW9uIG9mIENNUyBNYWRlIHNpbXBsZSwgb3IgaW4gYW55IHZlcnNpb24gb2YgQ01TCiMgTWFkZSBzaW1wbGUgdGhhdCBkb2VzIG5vdCBpbmRpY2F0ZSBjbGVhcmx5IGFuZCBvYnZpb3VzbHkgaW4gaXRzIGFkbWluIAojIHNlY3Rpb24gdGhhdCB0aGUgc2l0ZSB3YXMgYnVpbHQgd2l0aCBDTVMgTWFkZSBzaW1wbGUuCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojRU5EX0xJQ0VOU0UKCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovLyBUaGlzIG1vZHVsZSBpcyBkZXJpdmVkIGZyb20gQ0dFeHRlbnNpb25zIAokY2dleHRlbnNpb25zID0gY21zX2pvaW5fcGF0aCgkZ0Ntcy0+Y29uZmlnWydyb290X3BhdGgnXSwnbW9kdWxlcycsCgkJCSAgICAgICdDR0V4dGVuc2lvbnMnLCdDR0V4dGVuc2lvbnMubW9kdWxlLnBocCcpOwppZiggIWlzX3JlYWRhYmxlKCAkY2dleHRlbnNpb25zICkgKQp7CiAgZWNobyAnPGgxPjxmb250IGNvbG9yPSJyZWQiPkVSUk9SOiBUaGUgQ0dFeHRlbnNpb25zIG1vZHVsZSBjb3VsZCBub3QgYmUgZm91bmQuPC9mb250PjwvaDE+JzsKICByZXR1cm47Cn0KcmVxdWlyZV9vbmNlKCRjZ2V4dGVuc2lvbnMpOwovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCnJlcXVpcmVfb25jZShkaXJuYW1lKF9fRklMRV9fKS4nL2RlZmluZXMucGhwJyk7CgpjbGFzcyBDR1VzZXJEaXJlY3RvcnkgZXh0ZW5kcyBDR0V4dGVuc2lvbnMKewoKICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICBDb25zdHJ1Y3RvcgogICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwogIGZ1bmN0aW9uIF9fY29uc3RydWN0KCkKICB7CiAgICBwYXJlbnQ6Ol9fY29uc3RydWN0KCk7CgogICAgZ2xvYmFsICRnQ21zOwogICAgJHNtYXJ0eSA9JiAkZ0Ntcy0+R2V0U21hcnR5KCk7CiAgICAkc21hcnR5LT5yZWdpc3Rlcl9mdW5jdGlvbignY2d1ZF9nZXRwcm9wZXJ0eXN1bW1hcnlfdXJsJywKCQkJICAgICAgIGFycmF5KCR0aGlzLCdfc21hcnR5X2dldHByb3BlcnR5c3VtbWFyeV91cmwnKSk7CiAgfQogIAoKICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICBHZXROYW1lKCkKICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KICBmdW5jdGlvbiBHZXROYW1lKCkKICB7CiAgICByZXR1cm4gJ0NHVXNlckRpcmVjdG9yeSc7CiAgfQogIAoKICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICBHZXRGcmllbmRseU5hbWUoKQogICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwogIGZ1bmN0aW9uIEdldEZyaWVuZGx5TmFtZSgpCiAgewogICAgcmV0dXJuICR0aGlzLT5MYW5nKCdmcmllbmRseW5hbWUnKTsKICB9CiAgCiAgCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgR2V0VmVyc2lvbigpCiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCiAgZnVuY3Rpb24gR2V0VmVyc2lvbigpCiAgewogICAgcmV0dXJuICcxLjMnOwogIH0KICAKICAKICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICBHZXRIZWxwKCkKICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KICBmdW5jdGlvbiBHZXRIZWxwKCkKICB7CiAgICByZXR1cm4gJHRoaXMtPkxhbmcoJ2hlbHAnKTsKICB9CiAgCiAgCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgR2V0QXV0aG9yKCkKICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KICBmdW5jdGlvbiBHZXRBdXRob3IoKQogIHsKICAgIHJldHVybiAnY2FsZ3V5MTAwMCc7CiAgfQoKCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgR2V0QXV0aG9yRW1haWwoKQogICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwogIGZ1bmN0aW9uIEdldEF1dGhvckVtYWlsKCkKICB7CiAgICByZXR1cm4gJ2NhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcnOwogIH0KCgogIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgIEdldENoYW5nZUxvZygpCiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCiAgZnVuY3Rpb24gR2V0Q2hhbmdlTG9nKCkKICB7CiAgICByZXR1cm4gQGZpbGVfZ2V0X2NvbnRlbnRzKGRpcm5hbWUoX19GSUxFX18pLicvY2hhbmdlbG9nLmluYycpOwogIH0KICAKICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICBJc1BsdWdpbk1vZHVsZSgpCiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCiAgZnVuY3Rpb24gSXNQbHVnaW5Nb2R1bGUoKQogIHsKICAgIHJldHVybiB0cnVlOwogIH0KCgogIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgIEhhc0FkbWluKCkKICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KICBmdW5jdGlvbiBIYXNBZG1pbigpCiAgewogICAgcmV0dXJuIHRydWU7CiAgfQoKCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgR2V0QWRtaW5TZWN0aW9uKCkKICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KICBmdW5jdGlvbiBHZXRBZG1pblNlY3Rpb24oKQogIHsKICAgIHJldHVybiAnZXh0ZW5zaW9ucyc7CiAgfQoKCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgR2V0QWRtaW5EZXNjcmlwdGlvbigpCiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCiAgZnVuY3Rpb24gR2V0QWRtaW5EZXNjcmlwdGlvbigpCiAgewogICAgcmV0dXJuICR0aGlzLT5MYW5nKCdtb2RkZXNjcmlwdGlvbicpOwogIH0KCgogIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgIFZpc2libGVUb0FkbWluVXNlcigpCiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCiAgZnVuY3Rpb24gVmlzaWJsZVRvQWRtaW5Vc2VyKCkKICB7CiAgICByZXR1cm4gJHRoaXMtPkNoZWNrUGVybWlzc2lvbignTW9kaWZ5IFNpdGUgUHJlZmVyZW5jZXMnKSB8fAogICAgICAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdNb2RpZnkgVGVtcGxhdGVzJyk7CiAgfQoKCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgQWxsb3dBdXRvSW5zdGFsbCgpCiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCiAgZnVuY3Rpb24gQWxsb3dBdXRvSW5zdGFsbCgpIHsKICAgIHJldHVybiBGQUxTRTsKICB9CgoKICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICBBbGxvd0F1dG9VcGdyYWRlKCkKICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KICBmdW5jdGlvbiBBbGxvd0F1dG9VcGdyYWRlKCkgewogICAgcmV0dXJuIEZBTFNFOwogIH0KCgogIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgIEdldERlcGVuZGVuY2llcygpCiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCiAgZnVuY3Rpb24gR2V0RGVwZW5kZW5jaWVzKCkKICB7CiAgICByZXR1cm4gYXJyYXkoJ0NHRXh0ZW5zaW9ucyc9PicxLjI1JywKCQkgJ0Zyb250RW5kVXNlcnMnPT4nMS4xNS4yJyk7CiAgfQoKCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgTWluaW11bUNNU1ZlcnNpb24oKQogICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwogIGZ1bmN0aW9uIE1pbmltdW1DTVNWZXJzaW9uKCkKICB7CiAgICByZXR1cm4gIjEuOS4yIjsKICB9CgkKCQogIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgIFNldFBhcmFtZXRlcnMoKQogICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwogIGZ1bmN0aW9uIFNldFBhcmFtZXRlcnMoKQogIHsKICAgICR0aGlzLT5SZWdpc3Rlck1vZHVsZVBsdWdpbigpOwogICAgJHRoaXMtPlJlc3RyaWN0VW5rbm93blBhcmFtcygpOwogICAgCiAgICAkdGhpcy0+UmVnaXN0ZXJSb3V0ZSgnL1tVdV1zZXJzXC8oP1A8dWlkPlswLTldKylcLyg/UDxyZXR1cm5pZD5bMC05XSspXC8oP1A8ZGV0YWlsdGVtcGxhdGU+W0EtWmEtejAtOVwtXF9dKz8pXC8oP1A8anVuaz4uKj8pJC8nLAoJCQkgYXJyYXkoJ2FjdGlvbic9PidkZXRhaWwnKSk7CiAgICAkdGhpcy0+UmVnaXN0ZXJSb3V0ZSgnL1tVdV1zZXJzXC8oP1A8dWlkPlswLTldKylcLyg/UDxyZXR1cm5pZD5bMC05XSspXC8oP1A8anVuaz4uKj8pJC8nLAoJCQkgYXJyYXkoJ2FjdGlvbic9PidkZXRhaWwnKSk7CiAgICAkdGhpcy0+UmVnaXN0ZXJSb3V0ZSgnL1tVdV1zZXJncm91cFwvKD9QPGdpZD5bMC05XSspXC8oP1A8cmV0dXJuaWQ+WzAtOV0rKVwvKD9QPGp1bms+Lio/KSQvJywKCQkJIGFycmF5KCdhY3Rpb24nPT4nZGVmYXVsdCcpKTsKICAgICR0aGlzLT5SZWdpc3RlclJvdXRlKCcvW1V1XXNlcnNcLyg/UDx1aWQ+WzAtOV0rKVwvKD9QPGp1bms+Lio/KSQvJywKCQkJIGFycmF5KCdhY3Rpb24nPT4nZGV0YWlsJykpOwogICAgJHRoaXMtPlJlZ2lzdGVyUm91dGUoJy9bVXVdc2VyZ3JvdXBcLyg/UDxnaWQ+WzAtOV0rKVwvKD9QPGp1bms+Lio/KSQvJywKCQkJIGFycmF5KCdhY3Rpb24nPT4nZGVmYXVsdCcpKTsKCiAgICAkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdhY3Rpb24nLCdkZWZhdWx0JywkdGhpcy0+TGFuZygnaGVscF9wYXJhbV9hY3Rpb24nKSk7CgogICAgJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignaW5saW5lJywnJywkdGhpcy0+TGFuZygnaGVscF9wYXJhbV9pbmxpbmUnKSk7CiAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnaW5saW5lJyxDTEVBTl9JTlQpOwoKICAgICR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ2dyb3VwJywnJywkdGhpcy0+TGFuZygnaGVscF9wYXJhbV9ncm91cCcpKTsKICAgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdncm91cCcsQ0xFQU5fU1RSSU5HKTsKCiAgICAkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdnaWQnLCcnLCR0aGlzLT5MYW5nKCdoZWxwX3BhcmFtX2dpZCcpKTsKICAgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdnaWQnLENMRUFOX0lOVCk7CgogICAgJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignc2hvd2V4cGlyZWQnLDAsJHRoaXMtPkxhbmcoJ2hlbHBfcGFyYW1fc2hvd2V4cGlyZWQnKSk7CiAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnc2hvd2V4cGlyZWQnLENMRUFOX0lOVCk7CgogICAgJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignc29ydGJ5JywndXNlcm5hbWUnLCR0aGlzLT5MYW5nKCdoZWxwX3BhcmFtX3NvcnRieScpKTsKICAgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdzb3J0YnknLENMRUFOX1NUUklORyk7CiAgICAkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdic29ydGJ5JywnJywkdGhpcy0+TGFuZygnaGVscF9wYXJhbV9ic29ydGJ5JykpOwogICAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2Jzb3J0YnknLENMRUFOX1NUUklORyk7CgogICAgJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignc29ydG9yZGVyJywnQVNDJywkdGhpcy0+TGFuZygnaGVscF9wYXJhbV9zb3J0b3JkZXInKSk7CiAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnc29ydG9yZGVyJyxDTEVBTl9TVFJJTkcpOwogICAgJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignYnNvcnRvcmRlcicsJ0FTQycsJHRoaXMtPkxhbmcoJ2hlbHBfcGFyYW1fYnNvcnRvcmRlcicpKTsKICAgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdic29ydG9yZGVyJyxDTEVBTl9TVFJJTkcpOwoKICAgICR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ3BhZ2VsaW1pdCcsMTAwLCR0aGlzLT5MYW5nKCdoZWxwX3BhcmFtX3BhZ2VsaW1pdCcpKTsKICAgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdwYWdlbGltaXQnLENMRUFOX0lOVCk7CgogICAgJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcigncHJvcCcsJycsJHRoaXMtPkxhbmcoJ2hlbHBfcGFyYW1fcHJvcCcpKTsKICAgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdwcm9wJyxDTEVBTl9TVFJJTkcpOwoKICAgICR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ3Byb3B2YWwnLCcnLCR0aGlzLT5MYW5nKCdoZWxwX3BhcmFtX3Byb3B2YWwnKSk7CiAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgncHJvcHZhbCcsQ0xFQU5fU1RSSU5HKTsKCiAgICAkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCd1c2VsaWtlJywwLCR0aGlzLT5MYW5nKCdoZWxwX3BhcmFtX3VzZWxpa2UnKSk7CiAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgndXNlbGlrZScsQ0xFQU5fSU5UKTsKCiAgICAkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdkZXRhaWxwYWdlJywnJywkdGhpcy0+TGFuZygnaGVscF9wYXJhbV9kZXRhaWxwYWdlJykpOwogICAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2RldGFpbHBhZ2UnLENMRUFOX1NUUklORyk7CgogICAgJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcigncmVzdWx0cGFnZScsJycsJHRoaXMtPkxhbmcoJ2hlbHBfcGFyYW1fcmVzdWx0cGFnZScpKTsKICAgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdyZXN1bHRwYWdlJyxDTEVBTl9TVFJJTkcpOwoKICAgICR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ3N1bW1hcnl0ZW1wbGF0ZScsJycsJHRoaXMtPkxhbmcoJ2hlbHBfcGFyYW1fc3VtbWFyeXRlbXBsYXRlJykpOwogICAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ3N1bW1hcnl0ZW1wbGF0ZScsQ0xFQU5fU1RSSU5HKTsKCiAgICAkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdkaXJlY3Rvcnl0ZW1wbGF0ZScsJycsJHRoaXMtPkxhbmcoJ2hlbHBfcGFyYW1fZGlyZWN0b3J5dGVtcGxhdGUnKSk7CiAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnZGlyZWN0b3J5dGVtcGxhdGUnLENMRUFOX1NUUklORyk7CgogICAgJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignZGV0YWlsdGVtcGxhdGUnLCcnLCR0aGlzLT5MYW5nKCdoZWxwX3BhcmFtX2RldGFpbHRlbXBsYXRlJykpOwogICAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2RldGFpbHRlbXBsYXRlJyxDTEVBTl9TVFJJTkcpOwoKICAgICR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ3NlYXJjaGZvcm10ZW1wbGF0ZScsJycsJHRoaXMtPkxhbmcoJ2hlbHBfcGFyYW1fc2VhcmNoZm9ybXRlbXBsYXRlJykpOwogICAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ3NlYXJjaGZvcm10ZW1wbGF0ZScsQ0xFQU5fU1RSSU5HKTsKCiAgICAkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdicm93c2Vwcm9wdGVtcGxhdGUnLCcnLCR0aGlzLT5MYW5nKCdoZWxwX3BhcmFtX2Jyb3dzZXByb3B0ZW1wbGF0ZScpKTsKICAgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdicm93c2Vwcm9wdGVtcGxhdGUnLENMRUFOX1NUUklORyk7CgogICAgJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignc2VhcmNocHJvcGVydHknLCcnLCR0aGlzLT5MYW5nKCdoZWxwX3BhcmFtX3NlYXJjaHByb3BlcnR5JykpOwogICAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ3NlYXJjaHByb3BlcnR5JyxDTEVBTl9TVFJJTkcpOwoKICAgICR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ3VpZCcsJycsJHRoaXMtPkxhbmcoJ2hlbHBfcGFyYW1fdWlkJykpOwogICAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ3VpZCcsQ0xFQU5fSU5UKTsKCiAgICAkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdzcGFyc2UnLCcwJywkdGhpcy0+TGFuZygnaGVscF9wYXJhbV9zcGFyc2UnKSk7CiAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnc3BhcnNlJyxDTEVBTl9JTlQpOwoKICAgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdwYWdlbnVtJyxDTEVBTl9JTlQpOwogICAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ29yaWdwYWdlJyxDTEVBTl9JTlQpOwogICAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2p1bmsnLENMRUFOX1NUUklORyk7CgogICAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoQ0xFQU5fUkVHRVhQLicvdWRfLiovJyxDTEVBTl9TVFJJTkcpOwogIH0KCgogIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgIEluc3RhbGxQb3N0TWVzc2FnZSgpCiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCiAgZnVuY3Rpb24gSW5zdGFsbFBvc3RNZXNzYWdlKCkKICB7CiAgICByZXR1cm4gJHRoaXMtPkxhbmcoJ3Bvc3RpbnN0YWxsJyk7CiAgfQoKCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgVW5pbnN0YWxsUG9zdE1lc3NhZ2UoKQogICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwogIGZ1bmN0aW9uIFVuaW5zdGFsbFBvc3RNZXNzYWdlKCkKICB7CiAgICByZXR1cm4gJHRoaXMtPkxhbmcoJ3Bvc3R1bmluc3RhbGwnKTsKICB9CgoKICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICBVbmluc3RhbGxQcmVNZXNzYWdlKCkKICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KICBmdW5jdGlvbiBVbmluc3RhbGxQcmVNZXNzYWdlKCkKICB7CiAgICByZXR1cm4gJHRoaXMtPkxhbmcoJ2Fza19yZWFsbHlfdW5pbnN0YWxsJyk7CiAgfQkKCgogIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgIENyZWF0ZVByb3BlcnR5U3VtbWFyeVVSTCgpCiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCiAgZnVuY3Rpb24gQ3JlYXRlUHJvcGVydHlTdW1tYXJ5VVJMKCRpZCwkcmV0dXJuaWQsJHByb3BuYW1lLCRwcm9wdmFsdWUsJHBhcmFtcyA9IGFycmF5KCksJGlubGluZSA9IGZhbHNlKQogIHsKCSRwYXJhbXNbJ3Byb3AnXSA9ICRwcm9wbmFtZTsKCSRwYXJhbXNbJ3Byb3B2YWwnXSA9ICRwcm9wdmFsdWU7Cgl1bnNldCgkcGFyYW1zWydhY3Rpb24nXSk7CgoJcmV0dXJuICR0aGlzLT5DcmVhdGVVUkwoJGlkLCdkZWZhdWx0JywkcmV0dXJuaWQsJHBhcmFtcywkaW5saW5lKTsKICB9CgogIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgIF9zbWFydHlfZ2V0cHJvcGVydHlzdW1tYXJ5X3VybAogICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwogIGZ1bmN0aW9uIF9zbWFydHlfZ2V0cHJvcGVydHlzdW1tYXJ5X3VybCgkcGFyYW1zLCYkc21hcnR5KQogIHsKICAgIGdsb2JhbCAkZ0NtczsKICAgIAogICAgJGlubGluZSA9IDA7CiAgICAkcHJvcCA9ICcnOwogICAgJHByb3B2YWx1ZSA9ICcnOwogICAgJGFzc2lnbiA9ICcnOwogICAgJHJldHVybmlkID0gJGdDbXMtPnZhcmlhYmxlc1sncGFnZV9pZCddOwogICAgJHBhcm1zID0gYXJyYXkoKTsKICAgIAogICAgaWYoICFpc3NldCgkcGFyYW1zWydwcm9wJ10pICkgcmV0dXJuOwogICAgaWYoICFpc3NldCgkcGFyYW1zWydwcm9wdmFsJ10pICkgcmV0dXJuOwogICAgZm9yZWFjaCggJHBhcmFtcyBhcyAka2V5ID0+ICR2YWx1ZSApCiAgICAgIHsKCXN3aXRjaCggJGtleSApCgkgIHsKCSAgY2FzZSAncHJvcCc6CgkgICAgJHByb3AgPSAkdmFsdWU7CgkgICAgYnJlYWs7CgoJICBjYXNlICdwcm9wdmFsJzoKCSAgICAkcHJvcHZhbCA9ICR2YWx1ZTsKCSAgICBicmVhazsKCgkgIGNhc2UgJ2Fzc2lnbic6CgkgICAgJGFzc2lnbiA9ICR2YWx1ZTsKCSAgICBicmVhazsKCgkgIGNhc2UgJ3Jlc3VsdHBhZ2UnOgoJICAgICR0bXAgPSAkdGhpcy0+cmVzb2x2ZV9hbGlhc19vcl9pZCgkdmFsdWUpOwoJICAgIGlmKCAkdG1wICApCgkgICAgICB7CgkJJHJldHVybmlkID0gJHRtcDsKCSAgICAgIH0KCSAgICBicmVhazsKCSAgICAKCSAgY2FzZSAnaW5saW5lJzoKCSAgICBpZiggJHZhbHVlICkKCSAgICAgIHsKCQkkaW5saW5lID0gMTsKCSAgICAgIH0KCSAgICBicmVhazsKCgkgIGRlZmF1bHQ6CgkgICAgJHBhcm1zWyRrZXldID0gJHZhbHVlOwoJICAgIGJyZWFrOwoJICB9CiAgICAgIH0KCiAgICAkdG1wID0gZXhwbG9kZSgnLCcsJHByb3B2YWwpOwogICAgJGRhdGEgPSAnJzsKICAgIGlmKCBjb3VudCgkdG1wKSA+IDEgKQogICAgICB7CgkkcGFybXNbJ3VzZWxpa2UnXSA9IDE7CgkkZGF0YSA9IGFycmF5KCk7Cglmb3JlYWNoKCAkdG1wIGFzICRvbmUgKQoJICB7CgkgICAgJGRhdGFbXSA9ICR0aGlzLT5DcmVhdGVQcm9wZXJ0eVN1bW1hcnlVUkwoJ20xJywkcmV0dXJuaWQsJHByb3AsJG9uZSwkcGFybXMsJGlubGluZSk7CgkgIH0KICAgICAgfQogICAgZWxzZQogICAgICB7CgkkZGF0YSA9ICR0aGlzLT5DcmVhdGVQcm9wZXJ0eVN1bW1hcnlVUkwoJ20xJywkcmV0dXJuaWQsJHByb3AsJHByb3B2YWwsJHBhcm1zLCRpbmxpbmUpOwogICAgICB9CiAgICBpZiggJGFzc2lnbiAhPSAnJyApCiAgICAgIHsKCSRzbWFydHktPmFzc2lnbigkYXNzaWduLCRkYXRhKTsKCXJldHVybjsKICAgICAgfQogICAgcmV0dXJuICRkYXRhOwogIH0KfSAvLyBjbGFzcwoKPz4K]]></data>
	</file>
	<file>
	  <filename>/changelog.inc</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PHVsPgo8bGk+VmVyc2lvbiAxLjAgLSBKYW51YXJ5LCAyMDA5CiAgPHA+SW5pdGlhbCBSZWxlYXNlPC9wPgo8L2xpPgo8bGk+VmVyc2lvbiAxLjEKICA8cD5BZGRzIHNlYXJjaCBhbmQgYnJvd3NlIGNhcGFiaWxpdGllcy48L3A+CjwvbGk+CjxsaT5WZXJzaW9uIDEuMS4xIC0gU2VwdGVtYmVyLCAyMDA5CiAgPHA+QWRkcyBzb3J0aW5nIGluIHRoZSBicm93c2UgYWN0aW9uLjwvcD4KPC9saT4KPGxpPlZlcnNpb24gMS4xLjIgLSBTZXB0ZW1iZXIsIDIwMDkKICA8cD5GaXggcGFyYW1ldGVyIGNvbmZsaWN0IHdydCBzb3J0aW5nIGluIHRoZSBicm93c2UgYWN0aW9uLjwvcD4KPC9saT4KPGxpPlZlcnNpb24gMS4xLjMgLSBPY3RvYmVyLCAyMDA5CiAgPHA+TWlub3IgYnVnIGZpeC48L3A+CjwvbGk+CjxsaT5WZXJzaW9uIDEuMS40IC0gT2N0b2JlciwgMjAwOQogIDxwPk1pbm9yIGJ1ZyBmaXguPC9wPgo8L2xpPgo8bGk+VmVyc2lvbiAxLjEuNCAtIE9jdG9iZXIsIDIwMDkKICA8cD5BZGQgbWlzc2luZyBsYW5nIHN0cmluZy48L3A+CjwvbGk+CjxsaT5WZXJzaW9uIDEuMS41IC0gTm92ZW1iZXIsIDIwMDkKICA8cD5NaW5vciBidWcgZml4ZXMuPC9wPgo8L2xpPgo8bGk+VmVyc2lvbiAxLjEuNiAtIE1hcmNoLCAyMDEwCiAgPHA+QWRkIHRoZSBhYmlsaXR5IHRvIHNvcnQgYnkgdXNlciBwcm9wZXJ0eSBpbiBzdW1tYXJ5IHZpZXc8L3A+CjwvbGk+CjxsaT5WZXJzaW9uIDEuMiAtIE1hcmNoLCAyMDEwCiAgPHA+QWRkcyB0aGUgYWJpbGl0eSB0byBzZWFyY2ggYnkgdHdvIHVzZXIgZGVmaW5lZCBwcm9wZXJ0aWVzIGluIHRoZSBzZWFyY2ggYWN0aW9uLjwvcD4KICA8cD5BZGRzIG51bWVyaWNhbCBvcHRpb25zIHRvIHRoZSBkaXJlY3Rvcnkgdmlldy48L3A+CjwvbGk+CjxsaT5WZXJzaW9uIDEuMi4xIC0gTWFyY2gsIDIwMTAKICA8cD5Nb2RpZmllcyB0aGUgc2VhcmNocHJvcGVydHkgZmllbGQgdG8gc3VwcG9ydCBhIGxpc3Qgb2YgcHJvcGVydHkgbmFtZXMuPC9wPgogIDxwPkNvbXBsZXRlbHkgYnJlYWtzIGV4aXN0aW5nIHNlYXJjaCBmb3JtIHRlbXBsYXRlcy48L3A+CiAgPHA+UmVtb3ZlcyB0aGUgc2hvcnQgbGl2ZWQgc2VhcmNocHJvcGVydHkyIHBhcmFtLjwvcD4KPC9saT4KPGxpPlZlcnNpb24gMS4yLjIgLSBKdW5lLCAyMDEwCiAgPHA+Rml4ZXMgYSBtaW5vciBidWcgd2l0aCB0aGUgc2hvd2V4cGlyZWQgZmxhZy48L3A+CjwvbGk+CjxsaT5WZXJzaW9uIDEuMi4zIC0gSnVseSwgMjAxMAogIDxwPkZpeGVzIGEgbWlub3IgYnVnIHdpdGggdGhlIGJyb3dzZSBhY3Rpb24uPC9wPgo8L2xpPgo8bGk+VmVyc2lvbiAxLjIuNCAtIEF1Z3VzdCwgMjAxMAogIDxwPkZpeGVzIGEgbWlub3IgYnVnIHdpdGggdGhlIGJyb3dzZSBhY3Rpb24gYW5kIHVzZWxpa2UuLi48L3A+CjwvbGk+CjxsaT5WZXJzaW9uIDEuMi42IC0gU2VwdGVtYmVyLCAyMDExCiAgPHA+T3B0aW1pemF0aW9ucyBhbmQgYnVnIGZpeGVzLjwvcD4KPC9saT4KPGxpPlZlcnNpb24gMS4yLjcgLSBKYW51YXJ5LCAyMDEyCiAgPHA+TWlub3IgZml4IHRvIHRoZSBzZWFyY2ggYWN0aW9uIChmb3IgY2hlY2tib3hlcykuPC9wPgo8L2xpPgo8bGk+VmVyc2lvbiAxLjMgLSBKYW51YXJ5LCAyMDEyCiAgPHA+QWRkcyB0aGUgcHJvcHZhbHMgYWN0aW9uIGZvciBhamF4IGF1dG9jb21wbGV0ZS48L3A+CjwvbGk+CjwvdWw+Cg==]]></data>
	</file>
	<file>
	  <filename>/defines.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IENHVXNlckRpcmVjdG9yeSAoYykgMjAwOSBieSBSb2JlcnQgQ2FtcGJlbGwgCiMgICAgICAgICAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgQW4gYWRkb24gbW9kdWxlIGZvciBDTVMgTWFkZSBTaW1wbGUgdG8gcHJvdmlkZSB0aGUgYWJpbGl0eSB0byBicm93c2UKIyAgYW5kIHZpZXcgc3VtbWFyeSByZXBvcnRzIGFuZCBkZXRhaWwgcmVwb3J0cyBhYm91dCBncm91cHMgb2YgZnJvbnRlbmQKIyAgdXNlcnMuCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBIb3dldmVyLCBhcyBhIHNwZWNpYWwgZXhjZXB0aW9uIHRvIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgZGlzdHJpYnV0ZWQKIyBhcyBhbiBhZGRvbiBtb2R1bGUgdG8gQ01TIE1hZGUgU2ltcGxlLiAgWW91IG1heSBub3QgdXNlIHRoaXMgc29mdHdhcmUKIyBpbiBhbnkgTm9uIEdQTCB2ZXJzaW9uIG9mIENNUyBNYWRlIHNpbXBsZSwgb3IgaW4gYW55IHZlcnNpb24gb2YgQ01TCiMgTWFkZSBzaW1wbGUgdGhhdCBkb2VzIG5vdCBpbmRpY2F0ZSBjbGVhcmx5IGFuZCBvYnZpb3VzbHkgaW4gaXRzIGFkbWluIAojIHNlY3Rpb24gdGhhdCB0aGUgc2l0ZSB3YXMgYnVpbHQgd2l0aCBDTVMgTWFkZSBzaW1wbGUuCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojRU5EX0xJQ0VOU0UKCmRlZmluZSgnQ0dVU0VSRElSX1BSRUZfTkVXRElSRUNUT1JZX1RFTVBMQVRFJywnc3lzZGZsdF9kaXJlY3RvcnlfdGVtcGxhdGUnKTsKZGVmaW5lKCdDR1VTRVJESVJfUFJFRl9ERkxURElSRUNUT1JZX05BTUUnLCdjdXJkZmx0X2RpcmVjdG9yeV90ZW1wbGF0ZV9uYW1lJyk7CmRlZmluZSgnQ0dVU0VSRElSX1BSRUZfTkVXU1VNTUFSWV9URU1QTEFURScsJ3N5c2RmbHRfc3VtbWFyeV90ZW1wbGF0ZScpOwpkZWZpbmUoJ0NHVVNFUkRJUl9QUkVGX0RGTFRTVU1NQVJZX05BTUUnLCdjdXJkZmx0X3N1bW1hcnlfdGVtcGxhdGVfbmFtZScpOwpkZWZpbmUoJ0NHVVNFUkRJUl9QUkVGX05FV0RFVEFJTF9URU1QTEFURScsJ3N5c2RmbHRfZGV0YWlsX3RlbXBsYXRlJyk7CmRlZmluZSgnQ0dVU0VSRElSX1BSRUZfREZMVERFVEFJTF9OQU1FJywnY3VyZGZsdF9kZXRhaWxfdGVtcGxhdGVfbmFtZScpOwpkZWZpbmUoJ0NHVVNFUkRJUl9QUkVGX05FV1NFQVJDSEZPUk1fVEVNUExBVEUnLCdzeXNkZmx0X3NlYXJjaGZvcm1fdGVtcGxhdGUnKTsKZGVmaW5lKCdDR1VTRVJESVJfUFJFRl9ERkxUU0VBUkNIRk9STV9OQU1FJywnY3VyZGZsdF9zZWFyY2hmb3JtX3RlbXBsYXRlX25hbWUnKTsKZGVmaW5lKCdDR1VTRVJESVJfUFJFRl9ORVdCUk9XU0VQUk9QX1RFTVBMQVRFJywnc3lzZGZsdF9icm93c2Vwcm9wX3RlbXBsYXRlJyk7CmRlZmluZSgnQ0dVU0VSRElSX1BSRUZfREZMVEJST1dTRVBST1BfTkFNRScsJ2N1cmRmbHRfYnJvd3NlcHJvcF90ZW1wbGF0ZV9uYW1lJyk7CgojCiMgRU9GCiMKPz4=]]></data>
	</file>
	<file>
	  <filename>/doc/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/doc/COPYING</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[ICAgICAgICAgICAgICAgICAgICBHTlUgR0VORVJBTCBQVUJMSUMgTElDRU5TRQogICAgICAgICAgICAgICAgICAgICAgIFZlcnNpb24gMywgMjkgSnVuZSAyMDA3CgogQ29weXJpZ2h0IChDKSAyMDA3IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiA8aHR0cDovL2ZzZi5vcmcvPgogRXZlcnlvbmUgaXMgcGVybWl0dGVkIHRvIGNvcHkgYW5kIGRpc3RyaWJ1dGUgdmVyYmF0aW0gY29waWVzCiBvZiB0aGlzIGxpY2Vuc2UgZG9jdW1lbnQsIGJ1dCBjaGFuZ2luZyBpdCBpcyBub3QgYWxsb3dlZC4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBQcmVhbWJsZQoKICBUaGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgaXMgYSBmcmVlLCBjb3B5bGVmdCBsaWNlbnNlIGZvcgpzb2Z0d2FyZSBhbmQgb3RoZXIga2luZHMgb2Ygd29ya3MuCgogIFRoZSBsaWNlbnNlcyBmb3IgbW9zdCBzb2Z0d2FyZSBhbmQgb3RoZXIgcHJhY3RpY2FsIHdvcmtzIGFyZSBkZXNpZ25lZAp0byB0YWtlIGF3YXkgeW91ciBmcmVlZG9tIHRvIHNoYXJlIGFuZCBjaGFuZ2UgdGhlIHdvcmtzLiAgQnkgY29udHJhc3QsCnRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBpcyBpbnRlbmRlZCB0byBndWFyYW50ZWUgeW91ciBmcmVlZG9tIHRvCnNoYXJlIGFuZCBjaGFuZ2UgYWxsIHZlcnNpb25zIG9mIGEgcHJvZ3JhbS0tdG8gbWFrZSBzdXJlIGl0IHJlbWFpbnMgZnJlZQpzb2Z0d2FyZSBmb3IgYWxsIGl0cyB1c2Vycy4gIFdlLCB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCB1c2UgdGhlCkdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3N0IG9mIG91ciBzb2Z0d2FyZTsgaXQgYXBwbGllcyBhbHNvIHRvCmFueSBvdGhlciB3b3JrIHJlbGVhc2VkIHRoaXMgd2F5IGJ5IGl0cyBhdXRob3JzLiAgWW91IGNhbiBhcHBseSBpdCB0bwp5b3VyIHByb2dyYW1zLCB0b28uCgogIFdoZW4gd2Ugc3BlYWsgb2YgZnJlZSBzb2Z0d2FyZSwgd2UgYXJlIHJlZmVycmluZyB0byBmcmVlZG9tLCBub3QKcHJpY2UuICBPdXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZXMgYXJlIGRlc2lnbmVkIHRvIG1ha2Ugc3VyZSB0aGF0IHlvdQpoYXZlIHRoZSBmcmVlZG9tIHRvIGRpc3RyaWJ1dGUgY29waWVzIG9mIGZyZWUgc29mdHdhcmUgKGFuZCBjaGFyZ2UgZm9yCnRoZW0gaWYgeW91IHdpc2gpLCB0aGF0IHlvdSByZWNlaXZlIHNvdXJjZSBjb2RlIG9yIGNhbiBnZXQgaXQgaWYgeW91CndhbnQgaXQsIHRoYXQgeW91IGNhbiBjaGFuZ2UgdGhlIHNvZnR3YXJlIG9yIHVzZSBwaWVjZXMgb2YgaXQgaW4gbmV3CmZyZWUgcHJvZ3JhbXMsIGFuZCB0aGF0IHlvdSBrbm93IHlvdSBjYW4gZG8gdGhlc2UgdGhpbmdzLgoKICBUbyBwcm90ZWN0IHlvdXIgcmlnaHRzLCB3ZSBuZWVkIHRvIHByZXZlbnQgb3RoZXJzIGZyb20gZGVueWluZyB5b3UKdGhlc2UgcmlnaHRzIG9yIGFza2luZyB5b3UgdG8gc3VycmVuZGVyIHRoZSByaWdodHMuICBUaGVyZWZvcmUsIHlvdSBoYXZlCmNlcnRhaW4gcmVzcG9uc2liaWxpdGllcyBpZiB5b3UgZGlzdHJpYnV0ZSBjb3BpZXMgb2YgdGhlIHNvZnR3YXJlLCBvciBpZgp5b3UgbW9kaWZ5IGl0OiByZXNwb25zaWJpbGl0aWVzIHRvIHJlc3BlY3QgdGhlIGZyZWVkb20gb2Ygb3RoZXJzLgoKICBGb3IgZXhhbXBsZSwgaWYgeW91IGRpc3RyaWJ1dGUgY29waWVzIG9mIHN1Y2ggYSBwcm9ncmFtLCB3aGV0aGVyCmdyYXRpcyBvciBmb3IgYSBmZWUsIHlvdSBtdXN0IHBhc3Mgb24gdG8gdGhlIHJlY2lwaWVudHMgdGhlIHNhbWUKZnJlZWRvbXMgdGhhdCB5b3UgcmVjZWl2ZWQuICBZb3UgbXVzdCBtYWtlIHN1cmUgdGhhdCB0aGV5LCB0b28sIHJlY2VpdmUKb3IgY2FuIGdldCB0aGUgc291cmNlIGNvZGUuICBBbmQgeW91IG11c3Qgc2hvdyB0aGVtIHRoZXNlIHRlcm1zIHNvIHRoZXkKa25vdyB0aGVpciByaWdodHMuCgogIERldmVsb3BlcnMgdGhhdCB1c2UgdGhlIEdOVSBHUEwgcHJvdGVjdCB5b3VyIHJpZ2h0cyB3aXRoIHR3byBzdGVwczoKKDEpIGFzc2VydCBjb3B5cmlnaHQgb24gdGhlIHNvZnR3YXJlLCBhbmQgKDIpIG9mZmVyIHlvdSB0aGlzIExpY2Vuc2UKZ2l2aW5nIHlvdSBsZWdhbCBwZXJtaXNzaW9uIHRvIGNvcHksIGRpc3RyaWJ1dGUgYW5kL29yIG1vZGlmeSBpdC4KCiAgRm9yIHRoZSBkZXZlbG9wZXJzJyBhbmQgYXV0aG9ycycgcHJvdGVjdGlvbiwgdGhlIEdQTCBjbGVhcmx5IGV4cGxhaW5zCnRoYXQgdGhlcmUgaXMgbm8gd2FycmFudHkgZm9yIHRoaXMgZnJlZSBzb2Z0d2FyZS4gIEZvciBib3RoIHVzZXJzJyBhbmQKYXV0aG9ycycgc2FrZSwgdGhlIEdQTCByZXF1aXJlcyB0aGF0IG1vZGlmaWVkIHZlcnNpb25zIGJlIG1hcmtlZCBhcwpjaGFuZ2VkLCBzbyB0aGF0IHRoZWlyIHByb2JsZW1zIHdpbGwgbm90IGJlIGF0dHJpYnV0ZWQgZXJyb25lb3VzbHkgdG8KYXV0aG9ycyBvZiBwcmV2aW91cyB2ZXJzaW9ucy4KCiAgU29tZSBkZXZpY2VzIGFyZSBkZXNpZ25lZCB0byBkZW55IHVzZXJzIGFjY2VzcyB0byBpbnN0YWxsIG9yIHJ1bgptb2RpZmllZCB2ZXJzaW9ucyBvZiB0aGUgc29mdHdhcmUgaW5zaWRlIHRoZW0sIGFsdGhvdWdoIHRoZSBtYW51ZmFjdHVyZXIKY2FuIGRvIHNvLiAgVGhpcyBpcyBmdW5kYW1lbnRhbGx5IGluY29tcGF0aWJsZSB3aXRoIHRoZSBhaW0gb2YKcHJvdGVjdGluZyB1c2VycycgZnJlZWRvbSB0byBjaGFuZ2UgdGhlIHNvZnR3YXJlLiAgVGhlIHN5c3RlbWF0aWMKcGF0dGVybiBvZiBzdWNoIGFidXNlIG9jY3VycyBpbiB0aGUgYXJlYSBvZiBwcm9kdWN0cyBmb3IgaW5kaXZpZHVhbHMgdG8KdXNlLCB3aGljaCBpcyBwcmVjaXNlbHkgd2hlcmUgaXQgaXMgbW9zdCB1bmFjY2VwdGFibGUuICBUaGVyZWZvcmUsIHdlCmhhdmUgZGVzaWduZWQgdGhpcyB2ZXJzaW9uIG9mIHRoZSBHUEwgdG8gcHJvaGliaXQgdGhlIHByYWN0aWNlIGZvciB0aG9zZQpwcm9kdWN0cy4gIElmIHN1Y2ggcHJvYmxlbXMgYXJpc2Ugc3Vic3RhbnRpYWxseSBpbiBvdGhlciBkb21haW5zLCB3ZQpzdGFuZCByZWFkeSB0byBleHRlbmQgdGhpcyBwcm92aXNpb24gdG8gdGhvc2UgZG9tYWlucyBpbiBmdXR1cmUgdmVyc2lvbnMKb2YgdGhlIEdQTCwgYXMgbmVlZGVkIHRvIHByb3RlY3QgdGhlIGZyZWVkb20gb2YgdXNlcnMuCgogIEZpbmFsbHksIGV2ZXJ5IHByb2dyYW0gaXMgdGhyZWF0ZW5lZCBjb25zdGFudGx5IGJ5IHNvZnR3YXJlIHBhdGVudHMuClN0YXRlcyBzaG91bGQgbm90IGFsbG93IHBhdGVudHMgdG8gcmVzdHJpY3QgZGV2ZWxvcG1lbnQgYW5kIHVzZSBvZgpzb2Z0d2FyZSBvbiBnZW5lcmFsLXB1cnBvc2UgY29tcHV0ZXJzLCBidXQgaW4gdGhvc2UgdGhhdCBkbywgd2Ugd2lzaCB0bwphdm9pZCB0aGUgc3BlY2lhbCBkYW5nZXIgdGhhdCBwYXRlbnRzIGFwcGxpZWQgdG8gYSBmcmVlIHByb2dyYW0gY291bGQKbWFrZSBpdCBlZmZlY3RpdmVseSBwcm9wcmlldGFyeS4gIFRvIHByZXZlbnQgdGhpcywgdGhlIEdQTCBhc3N1cmVzIHRoYXQKcGF0ZW50cyBjYW5ub3QgYmUgdXNlZCB0byByZW5kZXIgdGhlIHByb2dyYW0gbm9uLWZyZWUuCgogIFRoZSBwcmVjaXNlIHRlcm1zIGFuZCBjb25kaXRpb25zIGZvciBjb3B5aW5nLCBkaXN0cmlidXRpb24gYW5kCm1vZGlmaWNhdGlvbiBmb2xsb3cuCgogICAgICAgICAgICAgICAgICAgICAgIFRFUk1TIEFORCBDT05ESVRJT05TCgogIDAuIERlZmluaXRpb25zLgoKICAiVGhpcyBMaWNlbnNlIiByZWZlcnMgdG8gdmVyc2lvbiAzIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZS4KCiAgIkNvcHlyaWdodCIgYWxzbyBtZWFucyBjb3B5cmlnaHQtbGlrZSBsYXdzIHRoYXQgYXBwbHkgdG8gb3RoZXIga2luZHMgb2YKd29ya3MsIHN1Y2ggYXMgc2VtaWNvbmR1Y3RvciBtYXNrcy4KCiAgIlRoZSBQcm9ncmFtIiByZWZlcnMgdG8gYW55IGNvcHlyaWdodGFibGUgd29yayBsaWNlbnNlZCB1bmRlciB0aGlzCkxpY2Vuc2UuICBFYWNoIGxpY2Vuc2VlIGlzIGFkZHJlc3NlZCBhcyAieW91Ii4gICJMaWNlbnNlZXMiIGFuZAoicmVjaXBpZW50cyIgbWF5IGJlIGluZGl2aWR1YWxzIG9yIG9yZ2FuaXphdGlvbnMuCgogIFRvICJtb2RpZnkiIGEgd29yayBtZWFucyB0byBjb3B5IGZyb20gb3IgYWRhcHQgYWxsIG9yIHBhcnQgb2YgdGhlIHdvcmsKaW4gYSBmYXNoaW9uIHJlcXVpcmluZyBjb3B5cmlnaHQgcGVybWlzc2lvbiwgb3RoZXIgdGhhbiB0aGUgbWFraW5nIG9mIGFuCmV4YWN0IGNvcHkuICBUaGUgcmVzdWx0aW5nIHdvcmsgaXMgY2FsbGVkIGEgIm1vZGlmaWVkIHZlcnNpb24iIG9mIHRoZQplYXJsaWVyIHdvcmsgb3IgYSB3b3JrICJiYXNlZCBvbiIgdGhlIGVhcmxpZXIgd29yay4KCiAgQSAiY292ZXJlZCB3b3JrIiBtZWFucyBlaXRoZXIgdGhlIHVubW9kaWZpZWQgUHJvZ3JhbSBvciBhIHdvcmsgYmFzZWQKb24gdGhlIFByb2dyYW0uCgogIFRvICJwcm9wYWdhdGUiIGEgd29yayBtZWFucyB0byBkbyBhbnl0aGluZyB3aXRoIGl0IHRoYXQsIHdpdGhvdXQKcGVybWlzc2lvbiwgd291bGQgbWFrZSB5b3UgZGlyZWN0bHkgb3Igc2Vjb25kYXJpbHkgbGlhYmxlIGZvcgppbmZyaW5nZW1lbnQgdW5kZXIgYXBwbGljYWJsZSBjb3B5cmlnaHQgbGF3LCBleGNlcHQgZXhlY3V0aW5nIGl0IG9uIGEKY29tcHV0ZXIgb3IgbW9kaWZ5aW5nIGEgcHJpdmF0ZSBjb3B5LiAgUHJvcGFnYXRpb24gaW5jbHVkZXMgY29weWluZywKZGlzdHJpYnV0aW9uICh3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uKSwgbWFraW5nIGF2YWlsYWJsZSB0byB0aGUKcHVibGljLCBhbmQgaW4gc29tZSBjb3VudHJpZXMgb3RoZXIgYWN0aXZpdGllcyBhcyB3ZWxsLgoKICBUbyAiY29udmV5IiBhIHdvcmsgbWVhbnMgYW55IGtpbmQgb2YgcHJvcGFnYXRpb24gdGhhdCBlbmFibGVzIG90aGVyCnBhcnRpZXMgdG8gbWFrZSBvciByZWNlaXZlIGNvcGllcy4gIE1lcmUgaW50ZXJhY3Rpb24gd2l0aCBhIHVzZXIgdGhyb3VnaAphIGNvbXB1dGVyIG5ldHdvcmssIHdpdGggbm8gdHJhbnNmZXIgb2YgYSBjb3B5LCBpcyBub3QgY29udmV5aW5nLgoKICBBbiBpbnRlcmFjdGl2ZSB1c2VyIGludGVyZmFjZSBkaXNwbGF5cyAiQXBwcm9wcmlhdGUgTGVnYWwgTm90aWNlcyIKdG8gdGhlIGV4dGVudCB0aGF0IGl0IGluY2x1ZGVzIGEgY29udmVuaWVudCBhbmQgcHJvbWluZW50bHkgdmlzaWJsZQpmZWF0dXJlIHRoYXQgKDEpIGRpc3BsYXlzIGFuIGFwcHJvcHJpYXRlIGNvcHlyaWdodCBub3RpY2UsIGFuZCAoMikKdGVsbHMgdGhlIHVzZXIgdGhhdCB0aGVyZSBpcyBubyB3YXJyYW50eSBmb3IgdGhlIHdvcmsgKGV4Y2VwdCB0byB0aGUKZXh0ZW50IHRoYXQgd2FycmFudGllcyBhcmUgcHJvdmlkZWQpLCB0aGF0IGxpY2Vuc2VlcyBtYXkgY29udmV5IHRoZQp3b3JrIHVuZGVyIHRoaXMgTGljZW5zZSwgYW5kIGhvdyB0byB2aWV3IGEgY29weSBvZiB0aGlzIExpY2Vuc2UuICBJZgp0aGUgaW50ZXJmYWNlIHByZXNlbnRzIGEgbGlzdCBvZiB1c2VyIGNvbW1hbmRzIG9yIG9wdGlvbnMsIHN1Y2ggYXMgYQptZW51LCBhIHByb21pbmVudCBpdGVtIGluIHRoZSBsaXN0IG1lZXRzIHRoaXMgY3JpdGVyaW9uLgoKICAxLiBTb3VyY2UgQ29kZS4KCiAgVGhlICJzb3VyY2UgY29kZSIgZm9yIGEgd29yayBtZWFucyB0aGUgcHJlZmVycmVkIGZvcm0gb2YgdGhlIHdvcmsKZm9yIG1ha2luZyBtb2RpZmljYXRpb25zIHRvIGl0LiAgIk9iamVjdCBjb2RlIiBtZWFucyBhbnkgbm9uLXNvdXJjZQpmb3JtIG9mIGEgd29yay4KCiAgQSAiU3RhbmRhcmQgSW50ZXJmYWNlIiBtZWFucyBhbiBpbnRlcmZhY2UgdGhhdCBlaXRoZXIgaXMgYW4gb2ZmaWNpYWwKc3RhbmRhcmQgZGVmaW5lZCBieSBhIHJlY29nbml6ZWQgc3RhbmRhcmRzIGJvZHksIG9yLCBpbiB0aGUgY2FzZSBvZgppbnRlcmZhY2VzIHNwZWNpZmllZCBmb3IgYSBwYXJ0aWN1bGFyIHByb2dyYW1taW5nIGxhbmd1YWdlLCBvbmUgdGhhdAppcyB3aWRlbHkgdXNlZCBhbW9uZyBkZXZlbG9wZXJzIHdvcmtpbmcgaW4gdGhhdCBsYW5ndWFnZS4KCiAgVGhlICJTeXN0ZW0gTGlicmFyaWVzIiBvZiBhbiBleGVjdXRhYmxlIHdvcmsgaW5jbHVkZSBhbnl0aGluZywgb3RoZXIKdGhhbiB0aGUgd29yayBhcyBhIHdob2xlLCB0aGF0IChhKSBpcyBpbmNsdWRlZCBpbiB0aGUgbm9ybWFsIGZvcm0gb2YKcGFja2FnaW5nIGEgTWFqb3IgQ29tcG9uZW50LCBidXQgd2hpY2ggaXMgbm90IHBhcnQgb2YgdGhhdCBNYWpvcgpDb21wb25lbnQsIGFuZCAoYikgc2VydmVzIG9ubHkgdG8gZW5hYmxlIHVzZSBvZiB0aGUgd29yayB3aXRoIHRoYXQKTWFqb3IgQ29tcG9uZW50LCBvciB0byBpbXBsZW1lbnQgYSBTdGFuZGFyZCBJbnRlcmZhY2UgZm9yIHdoaWNoIGFuCmltcGxlbWVudGF0aW9uIGlzIGF2YWlsYWJsZSB0byB0aGUgcHVibGljIGluIHNvdXJjZSBjb2RlIGZvcm0uICBBCiJNYWpvciBDb21wb25lbnQiLCBpbiB0aGlzIGNvbnRleHQsIG1lYW5zIGEgbWFqb3IgZXNzZW50aWFsIGNvbXBvbmVudAooa2VybmVsLCB3aW5kb3cgc3lzdGVtLCBhbmQgc28gb24pIG9mIHRoZSBzcGVjaWZpYyBvcGVyYXRpbmcgc3lzdGVtCihpZiBhbnkpIG9uIHdoaWNoIHRoZSBleGVjdXRhYmxlIHdvcmsgcnVucywgb3IgYSBjb21waWxlciB1c2VkIHRvCnByb2R1Y2UgdGhlIHdvcmssIG9yIGFuIG9iamVjdCBjb2RlIGludGVycHJldGVyIHVzZWQgdG8gcnVuIGl0LgoKICBUaGUgIkNvcnJlc3BvbmRpbmcgU291cmNlIiBmb3IgYSB3b3JrIGluIG9iamVjdCBjb2RlIGZvcm0gbWVhbnMgYWxsCnRoZSBzb3VyY2UgY29kZSBuZWVkZWQgdG8gZ2VuZXJhdGUsIGluc3RhbGwsIGFuZCAoZm9yIGFuIGV4ZWN1dGFibGUKd29yaykgcnVuIHRoZSBvYmplY3QgY29kZSBhbmQgdG8gbW9kaWZ5IHRoZSB3b3JrLCBpbmNsdWRpbmcgc2NyaXB0cyB0bwpjb250cm9sIHRob3NlIGFjdGl2aXRpZXMuICBIb3dldmVyLCBpdCBkb2VzIG5vdCBpbmNsdWRlIHRoZSB3b3JrJ3MKU3lzdGVtIExpYnJhcmllcywgb3IgZ2VuZXJhbC1wdXJwb3NlIHRvb2xzIG9yIGdlbmVyYWxseSBhdmFpbGFibGUgZnJlZQpwcm9ncmFtcyB3aGljaCBhcmUgdXNlZCB1bm1vZGlmaWVkIGluIHBlcmZvcm1pbmcgdGhvc2UgYWN0aXZpdGllcyBidXQKd2hpY2ggYXJlIG5vdCBwYXJ0IG9mIHRoZSB3b3JrLiAgRm9yIGV4YW1wbGUsIENvcnJlc3BvbmRpbmcgU291cmNlCmluY2x1ZGVzIGludGVyZmFjZSBkZWZpbml0aW9uIGZpbGVzIGFzc29jaWF0ZWQgd2l0aCBzb3VyY2UgZmlsZXMgZm9yCnRoZSB3b3JrLCBhbmQgdGhlIHNvdXJjZSBjb2RlIGZvciBzaGFyZWQgbGlicmFyaWVzIGFuZCBkeW5hbWljYWxseQpsaW5rZWQgc3VicHJvZ3JhbXMgdGhhdCB0aGUgd29yayBpcyBzcGVjaWZpY2FsbHkgZGVzaWduZWQgdG8gcmVxdWlyZSwKc3VjaCBhcyBieSBpbnRpbWF0ZSBkYXRhIGNvbW11bmljYXRpb24gb3IgY29udHJvbCBmbG93IGJldHdlZW4gdGhvc2UKc3VicHJvZ3JhbXMgYW5kIG90aGVyIHBhcnRzIG9mIHRoZSB3b3JrLgoKICBUaGUgQ29ycmVzcG9uZGluZyBTb3VyY2UgbmVlZCBub3QgaW5jbHVkZSBhbnl0aGluZyB0aGF0IHVzZXJzCmNhbiByZWdlbmVyYXRlIGF1dG9tYXRpY2FsbHkgZnJvbSBvdGhlciBwYXJ0cyBvZiB0aGUgQ29ycmVzcG9uZGluZwpTb3VyY2UuCgogIFRoZSBDb3JyZXNwb25kaW5nIFNvdXJjZSBmb3IgYSB3b3JrIGluIHNvdXJjZSBjb2RlIGZvcm0gaXMgdGhhdApzYW1lIHdvcmsuCgogIDIuIEJhc2ljIFBlcm1pc3Npb25zLgoKICBBbGwgcmlnaHRzIGdyYW50ZWQgdW5kZXIgdGhpcyBMaWNlbnNlIGFyZSBncmFudGVkIGZvciB0aGUgdGVybSBvZgpjb3B5cmlnaHQgb24gdGhlIFByb2dyYW0sIGFuZCBhcmUgaXJyZXZvY2FibGUgcHJvdmlkZWQgdGhlIHN0YXRlZApjb25kaXRpb25zIGFyZSBtZXQuICBUaGlzIExpY2Vuc2UgZXhwbGljaXRseSBhZmZpcm1zIHlvdXIgdW5saW1pdGVkCnBlcm1pc3Npb24gdG8gcnVuIHRoZSB1bm1vZGlmaWVkIFByb2dyYW0uICBUaGUgb3V0cHV0IGZyb20gcnVubmluZyBhCmNvdmVyZWQgd29yayBpcyBjb3ZlcmVkIGJ5IHRoaXMgTGljZW5zZSBvbmx5IGlmIHRoZSBvdXRwdXQsIGdpdmVuIGl0cwpjb250ZW50LCBjb25zdGl0dXRlcyBhIGNvdmVyZWQgd29yay4gIFRoaXMgTGljZW5zZSBhY2tub3dsZWRnZXMgeW91cgpyaWdodHMgb2YgZmFpciB1c2Ugb3Igb3RoZXIgZXF1aXZhbGVudCwgYXMgcHJvdmlkZWQgYnkgY29weXJpZ2h0IGxhdy4KCiAgWW91IG1heSBtYWtlLCBydW4gYW5kIHByb3BhZ2F0ZSBjb3ZlcmVkIHdvcmtzIHRoYXQgeW91IGRvIG5vdApjb252ZXksIHdpdGhvdXQgY29uZGl0aW9ucyBzbyBsb25nIGFzIHlvdXIgbGljZW5zZSBvdGhlcndpc2UgcmVtYWlucwppbiBmb3JjZS4gIFlvdSBtYXkgY29udmV5IGNvdmVyZWQgd29ya3MgdG8gb3RoZXJzIGZvciB0aGUgc29sZSBwdXJwb3NlCm9mIGhhdmluZyB0aGVtIG1ha2UgbW9kaWZpY2F0aW9ucyBleGNsdXNpdmVseSBmb3IgeW91LCBvciBwcm92aWRlIHlvdQp3aXRoIGZhY2lsaXRpZXMgZm9yIHJ1bm5pbmcgdGhvc2Ugd29ya3MsIHByb3ZpZGVkIHRoYXQgeW91IGNvbXBseSB3aXRoCnRoZSB0ZXJtcyBvZiB0aGlzIExpY2Vuc2UgaW4gY29udmV5aW5nIGFsbCBtYXRlcmlhbCBmb3Igd2hpY2ggeW91IGRvCm5vdCBjb250cm9sIGNvcHlyaWdodC4gIFRob3NlIHRodXMgbWFraW5nIG9yIHJ1bm5pbmcgdGhlIGNvdmVyZWQgd29ya3MKZm9yIHlvdSBtdXN0IGRvIHNvIGV4Y2x1c2l2ZWx5IG9uIHlvdXIgYmVoYWxmLCB1bmRlciB5b3VyIGRpcmVjdGlvbgphbmQgY29udHJvbCwgb24gdGVybXMgdGhhdCBwcm9oaWJpdCB0aGVtIGZyb20gbWFraW5nIGFueSBjb3BpZXMgb2YKeW91ciBjb3B5cmlnaHRlZCBtYXRlcmlhbCBvdXRzaWRlIHRoZWlyIHJlbGF0aW9uc2hpcCB3aXRoIHlvdS4KCiAgQ29udmV5aW5nIHVuZGVyIGFueSBvdGhlciBjaXJjdW1zdGFuY2VzIGlzIHBlcm1pdHRlZCBzb2xlbHkgdW5kZXIKdGhlIGNvbmRpdGlvbnMgc3RhdGVkIGJlbG93LiAgU3VibGljZW5zaW5nIGlzIG5vdCBhbGxvd2VkOyBzZWN0aW9uIDEwCm1ha2VzIGl0IHVubmVjZXNzYXJ5LgoKICAzLiBQcm90ZWN0aW5nIFVzZXJzJyBMZWdhbCBSaWdodHMgRnJvbSBBbnRpLUNpcmN1bXZlbnRpb24gTGF3LgoKICBObyBjb3ZlcmVkIHdvcmsgc2hhbGwgYmUgZGVlbWVkIHBhcnQgb2YgYW4gZWZmZWN0aXZlIHRlY2hub2xvZ2ljYWwKbWVhc3VyZSB1bmRlciBhbnkgYXBwbGljYWJsZSBsYXcgZnVsZmlsbGluZyBvYmxpZ2F0aW9ucyB1bmRlciBhcnRpY2xlCjExIG9mIHRoZSBXSVBPIGNvcHlyaWdodCB0cmVhdHkgYWRvcHRlZCBvbiAyMCBEZWNlbWJlciAxOTk2LCBvcgpzaW1pbGFyIGxhd3MgcHJvaGliaXRpbmcgb3IgcmVzdHJpY3RpbmcgY2lyY3VtdmVudGlvbiBvZiBzdWNoCm1lYXN1cmVzLgoKICBXaGVuIHlvdSBjb252ZXkgYSBjb3ZlcmVkIHdvcmssIHlvdSB3YWl2ZSBhbnkgbGVnYWwgcG93ZXIgdG8gZm9yYmlkCmNpcmN1bXZlbnRpb24gb2YgdGVjaG5vbG9naWNhbCBtZWFzdXJlcyB0byB0aGUgZXh0ZW50IHN1Y2ggY2lyY3VtdmVudGlvbgppcyBlZmZlY3RlZCBieSBleGVyY2lzaW5nIHJpZ2h0cyB1bmRlciB0aGlzIExpY2Vuc2Ugd2l0aCByZXNwZWN0IHRvCnRoZSBjb3ZlcmVkIHdvcmssIGFuZCB5b3UgZGlzY2xhaW0gYW55IGludGVudGlvbiB0byBsaW1pdCBvcGVyYXRpb24gb3IKbW9kaWZpY2F0aW9uIG9mIHRoZSB3b3JrIGFzIGEgbWVhbnMgb2YgZW5mb3JjaW5nLCBhZ2FpbnN0IHRoZSB3b3JrJ3MKdXNlcnMsIHlvdXIgb3IgdGhpcmQgcGFydGllcycgbGVnYWwgcmlnaHRzIHRvIGZvcmJpZCBjaXJjdW12ZW50aW9uIG9mCnRlY2hub2xvZ2ljYWwgbWVhc3VyZXMuCgogIDQuIENvbnZleWluZyBWZXJiYXRpbSBDb3BpZXMuCgogIFlvdSBtYXkgY29udmV5IHZlcmJhdGltIGNvcGllcyBvZiB0aGUgUHJvZ3JhbSdzIHNvdXJjZSBjb2RlIGFzIHlvdQpyZWNlaXZlIGl0LCBpbiBhbnkgbWVkaXVtLCBwcm92aWRlZCB0aGF0IHlvdSBjb25zcGljdW91c2x5IGFuZAphcHByb3ByaWF0ZWx5IHB1Ymxpc2ggb24gZWFjaCBjb3B5IGFuIGFwcHJvcHJpYXRlIGNvcHlyaWdodCBub3RpY2U7CmtlZXAgaW50YWN0IGFsbCBub3RpY2VzIHN0YXRpbmcgdGhhdCB0aGlzIExpY2Vuc2UgYW5kIGFueQpub24tcGVybWlzc2l2ZSB0ZXJtcyBhZGRlZCBpbiBhY2NvcmQgd2l0aCBzZWN0aW9uIDcgYXBwbHkgdG8gdGhlIGNvZGU7CmtlZXAgaW50YWN0IGFsbCBub3RpY2VzIG9mIHRoZSBhYnNlbmNlIG9mIGFueSB3YXJyYW50eTsgYW5kIGdpdmUgYWxsCnJlY2lwaWVudHMgYSBjb3B5IG9mIHRoaXMgTGljZW5zZSBhbG9uZyB3aXRoIHRoZSBQcm9ncmFtLgoKICBZb3UgbWF5IGNoYXJnZSBhbnkgcHJpY2Ugb3Igbm8gcHJpY2UgZm9yIGVhY2ggY29weSB0aGF0IHlvdSBjb252ZXksCmFuZCB5b3UgbWF5IG9mZmVyIHN1cHBvcnQgb3Igd2FycmFudHkgcHJvdGVjdGlvbiBmb3IgYSBmZWUuCgogIDUuIENvbnZleWluZyBNb2RpZmllZCBTb3VyY2UgVmVyc2lvbnMuCgogIFlvdSBtYXkgY29udmV5IGEgd29yayBiYXNlZCBvbiB0aGUgUHJvZ3JhbSwgb3IgdGhlIG1vZGlmaWNhdGlvbnMgdG8KcHJvZHVjZSBpdCBmcm9tIHRoZSBQcm9ncmFtLCBpbiB0aGUgZm9ybSBvZiBzb3VyY2UgY29kZSB1bmRlciB0aGUKdGVybXMgb2Ygc2VjdGlvbiA0LCBwcm92aWRlZCB0aGF0IHlvdSBhbHNvIG1lZXQgYWxsIG9mIHRoZXNlIGNvbmRpdGlvbnM6CgogICAgYSkgVGhlIHdvcmsgbXVzdCBjYXJyeSBwcm9taW5lbnQgbm90aWNlcyBzdGF0aW5nIHRoYXQgeW91IG1vZGlmaWVkCiAgICBpdCwgYW5kIGdpdmluZyBhIHJlbGV2YW50IGRhdGUuCgogICAgYikgVGhlIHdvcmsgbXVzdCBjYXJyeSBwcm9taW5lbnQgbm90aWNlcyBzdGF0aW5nIHRoYXQgaXQgaXMKICAgIHJlbGVhc2VkIHVuZGVyIHRoaXMgTGljZW5zZSBhbmQgYW55IGNvbmRpdGlvbnMgYWRkZWQgdW5kZXIgc2VjdGlvbgogICAgNy4gIFRoaXMgcmVxdWlyZW1lbnQgbW9kaWZpZXMgdGhlIHJlcXVpcmVtZW50IGluIHNlY3Rpb24gNCB0bwogICAgImtlZXAgaW50YWN0IGFsbCBub3RpY2VzIi4KCiAgICBjKSBZb3UgbXVzdCBsaWNlbnNlIHRoZSBlbnRpcmUgd29yaywgYXMgYSB3aG9sZSwgdW5kZXIgdGhpcwogICAgTGljZW5zZSB0byBhbnlvbmUgd2hvIGNvbWVzIGludG8gcG9zc2Vzc2lvbiBvZiBhIGNvcHkuICBUaGlzCiAgICBMaWNlbnNlIHdpbGwgdGhlcmVmb3JlIGFwcGx5LCBhbG9uZyB3aXRoIGFueSBhcHBsaWNhYmxlIHNlY3Rpb24gNwogICAgYWRkaXRpb25hbCB0ZXJtcywgdG8gdGhlIHdob2xlIG9mIHRoZSB3b3JrLCBhbmQgYWxsIGl0cyBwYXJ0cywKICAgIHJlZ2FyZGxlc3Mgb2YgaG93IHRoZXkgYXJlIHBhY2thZ2VkLiAgVGhpcyBMaWNlbnNlIGdpdmVzIG5vCiAgICBwZXJtaXNzaW9uIHRvIGxpY2Vuc2UgdGhlIHdvcmsgaW4gYW55IG90aGVyIHdheSwgYnV0IGl0IGRvZXMgbm90CiAgICBpbnZhbGlkYXRlIHN1Y2ggcGVybWlzc2lvbiBpZiB5b3UgaGF2ZSBzZXBhcmF0ZWx5IHJlY2VpdmVkIGl0LgoKICAgIGQpIElmIHRoZSB3b3JrIGhhcyBpbnRlcmFjdGl2ZSB1c2VyIGludGVyZmFjZXMsIGVhY2ggbXVzdCBkaXNwbGF5CiAgICBBcHByb3ByaWF0ZSBMZWdhbCBOb3RpY2VzOyBob3dldmVyLCBpZiB0aGUgUHJvZ3JhbSBoYXMgaW50ZXJhY3RpdmUKICAgIGludGVyZmFjZXMgdGhhdCBkbyBub3QgZGlzcGxheSBBcHByb3ByaWF0ZSBMZWdhbCBOb3RpY2VzLCB5b3VyCiAgICB3b3JrIG5lZWQgbm90IG1ha2UgdGhlbSBkbyBzby4KCiAgQSBjb21waWxhdGlvbiBvZiBhIGNvdmVyZWQgd29yayB3aXRoIG90aGVyIHNlcGFyYXRlIGFuZCBpbmRlcGVuZGVudAp3b3Jrcywgd2hpY2ggYXJlIG5vdCBieSB0aGVpciBuYXR1cmUgZXh0ZW5zaW9ucyBvZiB0aGUgY292ZXJlZCB3b3JrLAphbmQgd2hpY2ggYXJlIG5vdCBjb21iaW5lZCB3aXRoIGl0IHN1Y2ggYXMgdG8gZm9ybSBhIGxhcmdlciBwcm9ncmFtLAppbiBvciBvbiBhIHZvbHVtZSBvZiBhIHN0b3JhZ2Ugb3IgZGlzdHJpYnV0aW9uIG1lZGl1bSwgaXMgY2FsbGVkIGFuCiJhZ2dyZWdhdGUiIGlmIHRoZSBjb21waWxhdGlvbiBhbmQgaXRzIHJlc3VsdGluZyBjb3B5cmlnaHQgYXJlIG5vdAp1c2VkIHRvIGxpbWl0IHRoZSBhY2Nlc3Mgb3IgbGVnYWwgcmlnaHRzIG9mIHRoZSBjb21waWxhdGlvbidzIHVzZXJzCmJleW9uZCB3aGF0IHRoZSBpbmRpdmlkdWFsIHdvcmtzIHBlcm1pdC4gIEluY2x1c2lvbiBvZiBhIGNvdmVyZWQgd29yawppbiBhbiBhZ2dyZWdhdGUgZG9lcyBub3QgY2F1c2UgdGhpcyBMaWNlbnNlIHRvIGFwcGx5IHRvIHRoZSBvdGhlcgpwYXJ0cyBvZiB0aGUgYWdncmVnYXRlLgoKICA2LiBDb252ZXlpbmcgTm9uLVNvdXJjZSBGb3Jtcy4KCiAgWW91IG1heSBjb252ZXkgYSBjb3ZlcmVkIHdvcmsgaW4gb2JqZWN0IGNvZGUgZm9ybSB1bmRlciB0aGUgdGVybXMKb2Ygc2VjdGlvbnMgNCBhbmQgNSwgcHJvdmlkZWQgdGhhdCB5b3UgYWxzbyBjb252ZXkgdGhlCm1hY2hpbmUtcmVhZGFibGUgQ29ycmVzcG9uZGluZyBTb3VyY2UgdW5kZXIgdGhlIHRlcm1zIG9mIHRoaXMgTGljZW5zZSwKaW4gb25lIG9mIHRoZXNlIHdheXM6CgogICAgYSkgQ29udmV5IHRoZSBvYmplY3QgY29kZSBpbiwgb3IgZW1ib2RpZWQgaW4sIGEgcGh5c2ljYWwgcHJvZHVjdAogICAgKGluY2x1ZGluZyBhIHBoeXNpY2FsIGRpc3RyaWJ1dGlvbiBtZWRpdW0pLCBhY2NvbXBhbmllZCBieSB0aGUKICAgIENvcnJlc3BvbmRpbmcgU291cmNlIGZpeGVkIG9uIGEgZHVyYWJsZSBwaHlzaWNhbCBtZWRpdW0KICAgIGN1c3RvbWFyaWx5IHVzZWQgZm9yIHNvZnR3YXJlIGludGVyY2hhbmdlLgoKICAgIGIpIENvbnZleSB0aGUgb2JqZWN0IGNvZGUgaW4sIG9yIGVtYm9kaWVkIGluLCBhIHBoeXNpY2FsIHByb2R1Y3QKICAgIChpbmNsdWRpbmcgYSBwaHlzaWNhbCBkaXN0cmlidXRpb24gbWVkaXVtKSwgYWNjb21wYW5pZWQgYnkgYQogICAgd3JpdHRlbiBvZmZlciwgdmFsaWQgZm9yIGF0IGxlYXN0IHRocmVlIHllYXJzIGFuZCB2YWxpZCBmb3IgYXMKICAgIGxvbmcgYXMgeW91IG9mZmVyIHNwYXJlIHBhcnRzIG9yIGN1c3RvbWVyIHN1cHBvcnQgZm9yIHRoYXQgcHJvZHVjdAogICAgbW9kZWwsIHRvIGdpdmUgYW55b25lIHdobyBwb3NzZXNzZXMgdGhlIG9iamVjdCBjb2RlIGVpdGhlciAoMSkgYQogICAgY29weSBvZiB0aGUgQ29ycmVzcG9uZGluZyBTb3VyY2UgZm9yIGFsbCB0aGUgc29mdHdhcmUgaW4gdGhlCiAgICBwcm9kdWN0IHRoYXQgaXMgY292ZXJlZCBieSB0aGlzIExpY2Vuc2UsIG9uIGEgZHVyYWJsZSBwaHlzaWNhbAogICAgbWVkaXVtIGN1c3RvbWFyaWx5IHVzZWQgZm9yIHNvZnR3YXJlIGludGVyY2hhbmdlLCBmb3IgYSBwcmljZSBubwogICAgbW9yZSB0aGFuIHlvdXIgcmVhc29uYWJsZSBjb3N0IG9mIHBoeXNpY2FsbHkgcGVyZm9ybWluZyB0aGlzCiAgICBjb252ZXlpbmcgb2Ygc291cmNlLCBvciAoMikgYWNjZXNzIHRvIGNvcHkgdGhlCiAgICBDb3JyZXNwb25kaW5nIFNvdXJjZSBmcm9tIGEgbmV0d29yayBzZXJ2ZXIgYXQgbm8gY2hhcmdlLgoKICAgIGMpIENvbnZleSBpbmRpdmlkdWFsIGNvcGllcyBvZiB0aGUgb2JqZWN0IGNvZGUgd2l0aCBhIGNvcHkgb2YgdGhlCiAgICB3cml0dGVuIG9mZmVyIHRvIHByb3ZpZGUgdGhlIENvcnJlc3BvbmRpbmcgU291cmNlLiAgVGhpcwogICAgYWx0ZXJuYXRpdmUgaXMgYWxsb3dlZCBvbmx5IG9jY2FzaW9uYWxseSBhbmQgbm9uY29tbWVyY2lhbGx5LCBhbmQKICAgIG9ubHkgaWYgeW91IHJlY2VpdmVkIHRoZSBvYmplY3QgY29kZSB3aXRoIHN1Y2ggYW4gb2ZmZXIsIGluIGFjY29yZAogICAgd2l0aCBzdWJzZWN0aW9uIDZiLgoKICAgIGQpIENvbnZleSB0aGUgb2JqZWN0IGNvZGUgYnkgb2ZmZXJpbmcgYWNjZXNzIGZyb20gYSBkZXNpZ25hdGVkCiAgICBwbGFjZSAoZ3JhdGlzIG9yIGZvciBhIGNoYXJnZSksIGFuZCBvZmZlciBlcXVpdmFsZW50IGFjY2VzcyB0byB0aGUKICAgIENvcnJlc3BvbmRpbmcgU291cmNlIGluIHRoZSBzYW1lIHdheSB0aHJvdWdoIHRoZSBzYW1lIHBsYWNlIGF0IG5vCiAgICBmdXJ0aGVyIGNoYXJnZS4gIFlvdSBuZWVkIG5vdCByZXF1aXJlIHJlY2lwaWVudHMgdG8gY29weSB0aGUKICAgIENvcnJlc3BvbmRpbmcgU291cmNlIGFsb25nIHdpdGggdGhlIG9iamVjdCBjb2RlLiAgSWYgdGhlIHBsYWNlIHRvCiAgICBjb3B5IHRoZSBvYmplY3QgY29kZSBpcyBhIG5ldHdvcmsgc2VydmVyLCB0aGUgQ29ycmVzcG9uZGluZyBTb3VyY2UKICAgIG1heSBiZSBvbiBhIGRpZmZlcmVudCBzZXJ2ZXIgKG9wZXJhdGVkIGJ5IHlvdSBvciBhIHRoaXJkIHBhcnR5KQogICAgdGhhdCBzdXBwb3J0cyBlcXVpdmFsZW50IGNvcHlpbmcgZmFjaWxpdGllcywgcHJvdmlkZWQgeW91IG1haW50YWluCiAgICBjbGVhciBkaXJlY3Rpb25zIG5leHQgdG8gdGhlIG9iamVjdCBjb2RlIHNheWluZyB3aGVyZSB0byBmaW5kIHRoZQogICAgQ29ycmVzcG9uZGluZyBTb3VyY2UuICBSZWdhcmRsZXNzIG9mIHdoYXQgc2VydmVyIGhvc3RzIHRoZQogICAgQ29ycmVzcG9uZGluZyBTb3VyY2UsIHlvdSByZW1haW4gb2JsaWdhdGVkIHRvIGVuc3VyZSB0aGF0IGl0IGlzCiAgICBhdmFpbGFibGUgZm9yIGFzIGxvbmcgYXMgbmVlZGVkIHRvIHNhdGlzZnkgdGhlc2UgcmVxdWlyZW1lbnRzLgoKICAgIGUpIENvbnZleSB0aGUgb2JqZWN0IGNvZGUgdXNpbmcgcGVlci10by1wZWVyIHRyYW5zbWlzc2lvbiwgcHJvdmlkZWQKICAgIHlvdSBpbmZvcm0gb3RoZXIgcGVlcnMgd2hlcmUgdGhlIG9iamVjdCBjb2RlIGFuZCBDb3JyZXNwb25kaW5nCiAgICBTb3VyY2Ugb2YgdGhlIHdvcmsgYXJlIGJlaW5nIG9mZmVyZWQgdG8gdGhlIGdlbmVyYWwgcHVibGljIGF0IG5vCiAgICBjaGFyZ2UgdW5kZXIgc3Vic2VjdGlvbiA2ZC4KCiAgQSBzZXBhcmFibGUgcG9ydGlvbiBvZiB0aGUgb2JqZWN0IGNvZGUsIHdob3NlIHNvdXJjZSBjb2RlIGlzIGV4Y2x1ZGVkCmZyb20gdGhlIENvcnJlc3BvbmRpbmcgU291cmNlIGFzIGEgU3lzdGVtIExpYnJhcnksIG5lZWQgbm90IGJlCmluY2x1ZGVkIGluIGNvbnZleWluZyB0aGUgb2JqZWN0IGNvZGUgd29yay4KCiAgQSAiVXNlciBQcm9kdWN0IiBpcyBlaXRoZXIgKDEpIGEgImNvbnN1bWVyIHByb2R1Y3QiLCB3aGljaCBtZWFucyBhbnkKdGFuZ2libGUgcGVyc29uYWwgcHJvcGVydHkgd2hpY2ggaXMgbm9ybWFsbHkgdXNlZCBmb3IgcGVyc29uYWwsIGZhbWlseSwKb3IgaG91c2Vob2xkIHB1cnBvc2VzLCBvciAoMikgYW55dGhpbmcgZGVzaWduZWQgb3Igc29sZCBmb3IgaW5jb3Jwb3JhdGlvbgppbnRvIGEgZHdlbGxpbmcuICBJbiBkZXRlcm1pbmluZyB3aGV0aGVyIGEgcHJvZHVjdCBpcyBhIGNvbnN1bWVyIHByb2R1Y3QsCmRvdWJ0ZnVsIGNhc2VzIHNoYWxsIGJlIHJlc29sdmVkIGluIGZhdm9yIG9mIGNvdmVyYWdlLiAgRm9yIGEgcGFydGljdWxhcgpwcm9kdWN0IHJlY2VpdmVkIGJ5IGEgcGFydGljdWxhciB1c2VyLCAibm9ybWFsbHkgdXNlZCIgcmVmZXJzIHRvIGEKdHlwaWNhbCBvciBjb21tb24gdXNlIG9mIHRoYXQgY2xhc3Mgb2YgcHJvZHVjdCwgcmVnYXJkbGVzcyBvZiB0aGUgc3RhdHVzCm9mIHRoZSBwYXJ0aWN1bGFyIHVzZXIgb3Igb2YgdGhlIHdheSBpbiB3aGljaCB0aGUgcGFydGljdWxhciB1c2VyCmFjdHVhbGx5IHVzZXMsIG9yIGV4cGVjdHMgb3IgaXMgZXhwZWN0ZWQgdG8gdXNlLCB0aGUgcHJvZHVjdC4gIEEgcHJvZHVjdAppcyBhIGNvbnN1bWVyIHByb2R1Y3QgcmVnYXJkbGVzcyBvZiB3aGV0aGVyIHRoZSBwcm9kdWN0IGhhcyBzdWJzdGFudGlhbApjb21tZXJjaWFsLCBpbmR1c3RyaWFsIG9yIG5vbi1jb25zdW1lciB1c2VzLCB1bmxlc3Mgc3VjaCB1c2VzIHJlcHJlc2VudAp0aGUgb25seSBzaWduaWZpY2FudCBtb2RlIG9mIHVzZSBvZiB0aGUgcHJvZHVjdC4KCiAgIkluc3RhbGxhdGlvbiBJbmZvcm1hdGlvbiIgZm9yIGEgVXNlciBQcm9kdWN0IG1lYW5zIGFueSBtZXRob2RzLApwcm9jZWR1cmVzLCBhdXRob3JpemF0aW9uIGtleXMsIG9yIG90aGVyIGluZm9ybWF0aW9uIHJlcXVpcmVkIHRvIGluc3RhbGwKYW5kIGV4ZWN1dGUgbW9kaWZpZWQgdmVyc2lvbnMgb2YgYSBjb3ZlcmVkIHdvcmsgaW4gdGhhdCBVc2VyIFByb2R1Y3QgZnJvbQphIG1vZGlmaWVkIHZlcnNpb24gb2YgaXRzIENvcnJlc3BvbmRpbmcgU291cmNlLiAgVGhlIGluZm9ybWF0aW9uIG11c3QKc3VmZmljZSB0byBlbnN1cmUgdGhhdCB0aGUgY29udGludWVkIGZ1bmN0aW9uaW5nIG9mIHRoZSBtb2RpZmllZCBvYmplY3QKY29kZSBpcyBpbiBubyBjYXNlIHByZXZlbnRlZCBvciBpbnRlcmZlcmVkIHdpdGggc29sZWx5IGJlY2F1c2UKbW9kaWZpY2F0aW9uIGhhcyBiZWVuIG1hZGUuCgogIElmIHlvdSBjb252ZXkgYW4gb2JqZWN0IGNvZGUgd29yayB1bmRlciB0aGlzIHNlY3Rpb24gaW4sIG9yIHdpdGgsIG9yCnNwZWNpZmljYWxseSBmb3IgdXNlIGluLCBhIFVzZXIgUHJvZHVjdCwgYW5kIHRoZSBjb252ZXlpbmcgb2NjdXJzIGFzCnBhcnQgb2YgYSB0cmFuc2FjdGlvbiBpbiB3aGljaCB0aGUgcmlnaHQgb2YgcG9zc2Vzc2lvbiBhbmQgdXNlIG9mIHRoZQpVc2VyIFByb2R1Y3QgaXMgdHJhbnNmZXJyZWQgdG8gdGhlIHJlY2lwaWVudCBpbiBwZXJwZXR1aXR5IG9yIGZvciBhCmZpeGVkIHRlcm0gKHJlZ2FyZGxlc3Mgb2YgaG93IHRoZSB0cmFuc2FjdGlvbiBpcyBjaGFyYWN0ZXJpemVkKSwgdGhlCkNvcnJlc3BvbmRpbmcgU291cmNlIGNvbnZleWVkIHVuZGVyIHRoaXMgc2VjdGlvbiBtdXN0IGJlIGFjY29tcGFuaWVkCmJ5IHRoZSBJbnN0YWxsYXRpb24gSW5mb3JtYXRpb24uICBCdXQgdGhpcyByZXF1aXJlbWVudCBkb2VzIG5vdCBhcHBseQppZiBuZWl0aGVyIHlvdSBub3IgYW55IHRoaXJkIHBhcnR5IHJldGFpbnMgdGhlIGFiaWxpdHkgdG8gaW5zdGFsbAptb2RpZmllZCBvYmplY3QgY29kZSBvbiB0aGUgVXNlciBQcm9kdWN0IChmb3IgZXhhbXBsZSwgdGhlIHdvcmsgaGFzCmJlZW4gaW5zdGFsbGVkIGluIFJPTSkuCgogIFRoZSByZXF1aXJlbWVudCB0byBwcm92aWRlIEluc3RhbGxhdGlvbiBJbmZvcm1hdGlvbiBkb2VzIG5vdCBpbmNsdWRlIGEKcmVxdWlyZW1lbnQgdG8gY29udGludWUgdG8gcHJvdmlkZSBzdXBwb3J0IHNlcnZpY2UsIHdhcnJhbnR5LCBvciB1cGRhdGVzCmZvciBhIHdvcmsgdGhhdCBoYXMgYmVlbiBtb2RpZmllZCBvciBpbnN0YWxsZWQgYnkgdGhlIHJlY2lwaWVudCwgb3IgZm9yCnRoZSBVc2VyIFByb2R1Y3QgaW4gd2hpY2ggaXQgaGFzIGJlZW4gbW9kaWZpZWQgb3IgaW5zdGFsbGVkLiAgQWNjZXNzIHRvIGEKbmV0d29yayBtYXkgYmUgZGVuaWVkIHdoZW4gdGhlIG1vZGlmaWNhdGlvbiBpdHNlbGYgbWF0ZXJpYWxseSBhbmQKYWR2ZXJzZWx5IGFmZmVjdHMgdGhlIG9wZXJhdGlvbiBvZiB0aGUgbmV0d29yayBvciB2aW9sYXRlcyB0aGUgcnVsZXMgYW5kCnByb3RvY29scyBmb3IgY29tbXVuaWNhdGlvbiBhY3Jvc3MgdGhlIG5ldHdvcmsuCgogIENvcnJlc3BvbmRpbmcgU291cmNlIGNvbnZleWVkLCBhbmQgSW5zdGFsbGF0aW9uIEluZm9ybWF0aW9uIHByb3ZpZGVkLAppbiBhY2NvcmQgd2l0aCB0aGlzIHNlY3Rpb24gbXVzdCBiZSBpbiBhIGZvcm1hdCB0aGF0IGlzIHB1YmxpY2x5CmRvY3VtZW50ZWQgKGFuZCB3aXRoIGFuIGltcGxlbWVudGF0aW9uIGF2YWlsYWJsZSB0byB0aGUgcHVibGljIGluCnNvdXJjZSBjb2RlIGZvcm0pLCBhbmQgbXVzdCByZXF1aXJlIG5vIHNwZWNpYWwgcGFzc3dvcmQgb3Iga2V5IGZvcgp1bnBhY2tpbmcsIHJlYWRpbmcgb3IgY29weWluZy4KCiAgNy4gQWRkaXRpb25hbCBUZXJtcy4KCiAgIkFkZGl0aW9uYWwgcGVybWlzc2lvbnMiIGFyZSB0ZXJtcyB0aGF0IHN1cHBsZW1lbnQgdGhlIHRlcm1zIG9mIHRoaXMKTGljZW5zZSBieSBtYWtpbmcgZXhjZXB0aW9ucyBmcm9tIG9uZSBvciBtb3JlIG9mIGl0cyBjb25kaXRpb25zLgpBZGRpdGlvbmFsIHBlcm1pc3Npb25zIHRoYXQgYXJlIGFwcGxpY2FibGUgdG8gdGhlIGVudGlyZSBQcm9ncmFtIHNoYWxsCmJlIHRyZWF0ZWQgYXMgdGhvdWdoIHRoZXkgd2VyZSBpbmNsdWRlZCBpbiB0aGlzIExpY2Vuc2UsIHRvIHRoZSBleHRlbnQKdGhhdCB0aGV5IGFyZSB2YWxpZCB1bmRlciBhcHBsaWNhYmxlIGxhdy4gIElmIGFkZGl0aW9uYWwgcGVybWlzc2lvbnMKYXBwbHkgb25seSB0byBwYXJ0IG9mIHRoZSBQcm9ncmFtLCB0aGF0IHBhcnQgbWF5IGJlIHVzZWQgc2VwYXJhdGVseQp1bmRlciB0aG9zZSBwZXJtaXNzaW9ucywgYnV0IHRoZSBlbnRpcmUgUHJvZ3JhbSByZW1haW5zIGdvdmVybmVkIGJ5CnRoaXMgTGljZW5zZSB3aXRob3V0IHJlZ2FyZCB0byB0aGUgYWRkaXRpb25hbCBwZXJtaXNzaW9ucy4KCiAgV2hlbiB5b3UgY29udmV5IGEgY29weSBvZiBhIGNvdmVyZWQgd29yaywgeW91IG1heSBhdCB5b3VyIG9wdGlvbgpyZW1vdmUgYW55IGFkZGl0aW9uYWwgcGVybWlzc2lvbnMgZnJvbSB0aGF0IGNvcHksIG9yIGZyb20gYW55IHBhcnQgb2YKaXQuICAoQWRkaXRpb25hbCBwZXJtaXNzaW9ucyBtYXkgYmUgd3JpdHRlbiB0byByZXF1aXJlIHRoZWlyIG93bgpyZW1vdmFsIGluIGNlcnRhaW4gY2FzZXMgd2hlbiB5b3UgbW9kaWZ5IHRoZSB3b3JrLikgIFlvdSBtYXkgcGxhY2UKYWRkaXRpb25hbCBwZXJtaXNzaW9ucyBvbiBtYXRlcmlhbCwgYWRkZWQgYnkgeW91IHRvIGEgY292ZXJlZCB3b3JrLApmb3Igd2hpY2ggeW91IGhhdmUgb3IgY2FuIGdpdmUgYXBwcm9wcmlhdGUgY29weXJpZ2h0IHBlcm1pc3Npb24uCgogIE5vdHdpdGhzdGFuZGluZyBhbnkgb3RoZXIgcHJvdmlzaW9uIG9mIHRoaXMgTGljZW5zZSwgZm9yIG1hdGVyaWFsIHlvdQphZGQgdG8gYSBjb3ZlcmVkIHdvcmssIHlvdSBtYXkgKGlmIGF1dGhvcml6ZWQgYnkgdGhlIGNvcHlyaWdodCBob2xkZXJzIG9mCnRoYXQgbWF0ZXJpYWwpIHN1cHBsZW1lbnQgdGhlIHRlcm1zIG9mIHRoaXMgTGljZW5zZSB3aXRoIHRlcm1zOgoKICAgIGEpIERpc2NsYWltaW5nIHdhcnJhbnR5IG9yIGxpbWl0aW5nIGxpYWJpbGl0eSBkaWZmZXJlbnRseSBmcm9tIHRoZQogICAgdGVybXMgb2Ygc2VjdGlvbnMgMTUgYW5kIDE2IG9mIHRoaXMgTGljZW5zZTsgb3IKCiAgICBiKSBSZXF1aXJpbmcgcHJlc2VydmF0aW9uIG9mIHNwZWNpZmllZCByZWFzb25hYmxlIGxlZ2FsIG5vdGljZXMgb3IKICAgIGF1dGhvciBhdHRyaWJ1dGlvbnMgaW4gdGhhdCBtYXRlcmlhbCBvciBpbiB0aGUgQXBwcm9wcmlhdGUgTGVnYWwKICAgIE5vdGljZXMgZGlzcGxheWVkIGJ5IHdvcmtzIGNvbnRhaW5pbmcgaXQ7IG9yCgogICAgYykgUHJvaGliaXRpbmcgbWlzcmVwcmVzZW50YXRpb24gb2YgdGhlIG9yaWdpbiBvZiB0aGF0IG1hdGVyaWFsLCBvcgogICAgcmVxdWlyaW5nIHRoYXQgbW9kaWZpZWQgdmVyc2lvbnMgb2Ygc3VjaCBtYXRlcmlhbCBiZSBtYXJrZWQgaW4KICAgIHJlYXNvbmFibGUgd2F5cyBhcyBkaWZmZXJlbnQgZnJvbSB0aGUgb3JpZ2luYWwgdmVyc2lvbjsgb3IKCiAgICBkKSBMaW1pdGluZyB0aGUgdXNlIGZvciBwdWJsaWNpdHkgcHVycG9zZXMgb2YgbmFtZXMgb2YgbGljZW5zb3JzIG9yCiAgICBhdXRob3JzIG9mIHRoZSBtYXRlcmlhbDsgb3IKCiAgICBlKSBEZWNsaW5pbmcgdG8gZ3JhbnQgcmlnaHRzIHVuZGVyIHRyYWRlbWFyayBsYXcgZm9yIHVzZSBvZiBzb21lCiAgICB0cmFkZSBuYW1lcywgdHJhZGVtYXJrcywgb3Igc2VydmljZSBtYXJrczsgb3IKCiAgICBmKSBSZXF1aXJpbmcgaW5kZW1uaWZpY2F0aW9uIG9mIGxpY2Vuc29ycyBhbmQgYXV0aG9ycyBvZiB0aGF0CiAgICBtYXRlcmlhbCBieSBhbnlvbmUgd2hvIGNvbnZleXMgdGhlIG1hdGVyaWFsIChvciBtb2RpZmllZCB2ZXJzaW9ucyBvZgogICAgaXQpIHdpdGggY29udHJhY3R1YWwgYXNzdW1wdGlvbnMgb2YgbGlhYmlsaXR5IHRvIHRoZSByZWNpcGllbnQsIGZvcgogICAgYW55IGxpYWJpbGl0eSB0aGF0IHRoZXNlIGNvbnRyYWN0dWFsIGFzc3VtcHRpb25zIGRpcmVjdGx5IGltcG9zZSBvbgogICAgdGhvc2UgbGljZW5zb3JzIGFuZCBhdXRob3JzLgoKICBBbGwgb3RoZXIgbm9uLXBlcm1pc3NpdmUgYWRkaXRpb25hbCB0ZXJtcyBhcmUgY29uc2lkZXJlZCAiZnVydGhlcgpyZXN0cmljdGlvbnMiIHdpdGhpbiB0aGUgbWVhbmluZyBvZiBzZWN0aW9uIDEwLiAgSWYgdGhlIFByb2dyYW0gYXMgeW91CnJlY2VpdmVkIGl0LCBvciBhbnkgcGFydCBvZiBpdCwgY29udGFpbnMgYSBub3RpY2Ugc3RhdGluZyB0aGF0IGl0IGlzCmdvdmVybmVkIGJ5IHRoaXMgTGljZW5zZSBhbG9uZyB3aXRoIGEgdGVybSB0aGF0IGlzIGEgZnVydGhlcgpyZXN0cmljdGlvbiwgeW91IG1heSByZW1vdmUgdGhhdCB0ZXJtLiAgSWYgYSBsaWNlbnNlIGRvY3VtZW50IGNvbnRhaW5zCmEgZnVydGhlciByZXN0cmljdGlvbiBidXQgcGVybWl0cyByZWxpY2Vuc2luZyBvciBjb252ZXlpbmcgdW5kZXIgdGhpcwpMaWNlbnNlLCB5b3UgbWF5IGFkZCB0byBhIGNvdmVyZWQgd29yayBtYXRlcmlhbCBnb3Zlcm5lZCBieSB0aGUgdGVybXMKb2YgdGhhdCBsaWNlbnNlIGRvY3VtZW50LCBwcm92aWRlZCB0aGF0IHRoZSBmdXJ0aGVyIHJlc3RyaWN0aW9uIGRvZXMKbm90IHN1cnZpdmUgc3VjaCByZWxpY2Vuc2luZyBvciBjb252ZXlpbmcuCgogIElmIHlvdSBhZGQgdGVybXMgdG8gYSBjb3ZlcmVkIHdvcmsgaW4gYWNjb3JkIHdpdGggdGhpcyBzZWN0aW9uLCB5b3UKbXVzdCBwbGFjZSwgaW4gdGhlIHJlbGV2YW50IHNvdXJjZSBmaWxlcywgYSBzdGF0ZW1lbnQgb2YgdGhlCmFkZGl0aW9uYWwgdGVybXMgdGhhdCBhcHBseSB0byB0aG9zZSBmaWxlcywgb3IgYSBub3RpY2UgaW5kaWNhdGluZwp3aGVyZSB0byBmaW5kIHRoZSBhcHBsaWNhYmxlIHRlcm1zLgoKICBBZGRpdGlvbmFsIHRlcm1zLCBwZXJtaXNzaXZlIG9yIG5vbi1wZXJtaXNzaXZlLCBtYXkgYmUgc3RhdGVkIGluIHRoZQpmb3JtIG9mIGEgc2VwYXJhdGVseSB3cml0dGVuIGxpY2Vuc2UsIG9yIHN0YXRlZCBhcyBleGNlcHRpb25zOwp0aGUgYWJvdmUgcmVxdWlyZW1lbnRzIGFwcGx5IGVpdGhlciB3YXkuCgogIDguIFRlcm1pbmF0aW9uLgoKICBZb3UgbWF5IG5vdCBwcm9wYWdhdGUgb3IgbW9kaWZ5IGEgY292ZXJlZCB3b3JrIGV4Y2VwdCBhcyBleHByZXNzbHkKcHJvdmlkZWQgdW5kZXIgdGhpcyBMaWNlbnNlLiAgQW55IGF0dGVtcHQgb3RoZXJ3aXNlIHRvIHByb3BhZ2F0ZSBvcgptb2RpZnkgaXQgaXMgdm9pZCwgYW5kIHdpbGwgYXV0b21hdGljYWxseSB0ZXJtaW5hdGUgeW91ciByaWdodHMgdW5kZXIKdGhpcyBMaWNlbnNlIChpbmNsdWRpbmcgYW55IHBhdGVudCBsaWNlbnNlcyBncmFudGVkIHVuZGVyIHRoZSB0aGlyZApwYXJhZ3JhcGggb2Ygc2VjdGlvbiAxMSkuCgogIEhvd2V2ZXIsIGlmIHlvdSBjZWFzZSBhbGwgdmlvbGF0aW9uIG9mIHRoaXMgTGljZW5zZSwgdGhlbiB5b3VyCmxpY2Vuc2UgZnJvbSBhIHBhcnRpY3VsYXIgY29weXJpZ2h0IGhvbGRlciBpcyByZWluc3RhdGVkIChhKQpwcm92aXNpb25hbGx5LCB1bmxlc3MgYW5kIHVudGlsIHRoZSBjb3B5cmlnaHQgaG9sZGVyIGV4cGxpY2l0bHkgYW5kCmZpbmFsbHkgdGVybWluYXRlcyB5b3VyIGxpY2Vuc2UsIGFuZCAoYikgcGVybWFuZW50bHksIGlmIHRoZSBjb3B5cmlnaHQKaG9sZGVyIGZhaWxzIHRvIG5vdGlmeSB5b3Ugb2YgdGhlIHZpb2xhdGlvbiBieSBzb21lIHJlYXNvbmFibGUgbWVhbnMKcHJpb3IgdG8gNjAgZGF5cyBhZnRlciB0aGUgY2Vzc2F0aW9uLgoKICBNb3Jlb3ZlciwgeW91ciBsaWNlbnNlIGZyb20gYSBwYXJ0aWN1bGFyIGNvcHlyaWdodCBob2xkZXIgaXMKcmVpbnN0YXRlZCBwZXJtYW5lbnRseSBpZiB0aGUgY29weXJpZ2h0IGhvbGRlciBub3RpZmllcyB5b3Ugb2YgdGhlCnZpb2xhdGlvbiBieSBzb21lIHJlYXNvbmFibGUgbWVhbnMsIHRoaXMgaXMgdGhlIGZpcnN0IHRpbWUgeW91IGhhdmUKcmVjZWl2ZWQgbm90aWNlIG9mIHZpb2xhdGlvbiBvZiB0aGlzIExpY2Vuc2UgKGZvciBhbnkgd29yaykgZnJvbSB0aGF0CmNvcHlyaWdodCBob2xkZXIsIGFuZCB5b3UgY3VyZSB0aGUgdmlvbGF0aW9uIHByaW9yIHRvIDMwIGRheXMgYWZ0ZXIKeW91ciByZWNlaXB0IG9mIHRoZSBub3RpY2UuCgogIFRlcm1pbmF0aW9uIG9mIHlvdXIgcmlnaHRzIHVuZGVyIHRoaXMgc2VjdGlvbiBkb2VzIG5vdCB0ZXJtaW5hdGUgdGhlCmxpY2Vuc2VzIG9mIHBhcnRpZXMgd2hvIGhhdmUgcmVjZWl2ZWQgY29waWVzIG9yIHJpZ2h0cyBmcm9tIHlvdSB1bmRlcgp0aGlzIExpY2Vuc2UuICBJZiB5b3VyIHJpZ2h0cyBoYXZlIGJlZW4gdGVybWluYXRlZCBhbmQgbm90IHBlcm1hbmVudGx5CnJlaW5zdGF0ZWQsIHlvdSBkbyBub3QgcXVhbGlmeSB0byByZWNlaXZlIG5ldyBsaWNlbnNlcyBmb3IgdGhlIHNhbWUKbWF0ZXJpYWwgdW5kZXIgc2VjdGlvbiAxMC4KCiAgOS4gQWNjZXB0YW5jZSBOb3QgUmVxdWlyZWQgZm9yIEhhdmluZyBDb3BpZXMuCgogIFlvdSBhcmUgbm90IHJlcXVpcmVkIHRvIGFjY2VwdCB0aGlzIExpY2Vuc2UgaW4gb3JkZXIgdG8gcmVjZWl2ZSBvcgpydW4gYSBjb3B5IG9mIHRoZSBQcm9ncmFtLiAgQW5jaWxsYXJ5IHByb3BhZ2F0aW9uIG9mIGEgY292ZXJlZCB3b3JrCm9jY3VycmluZyBzb2xlbHkgYXMgYSBjb25zZXF1ZW5jZSBvZiB1c2luZyBwZWVyLXRvLXBlZXIgdHJhbnNtaXNzaW9uCnRvIHJlY2VpdmUgYSBjb3B5IGxpa2V3aXNlIGRvZXMgbm90IHJlcXVpcmUgYWNjZXB0YW5jZS4gIEhvd2V2ZXIsCm5vdGhpbmcgb3RoZXIgdGhhbiB0aGlzIExpY2Vuc2UgZ3JhbnRzIHlvdSBwZXJtaXNzaW9uIHRvIHByb3BhZ2F0ZSBvcgptb2RpZnkgYW55IGNvdmVyZWQgd29yay4gIFRoZXNlIGFjdGlvbnMgaW5mcmluZ2UgY29weXJpZ2h0IGlmIHlvdSBkbwpub3QgYWNjZXB0IHRoaXMgTGljZW5zZS4gIFRoZXJlZm9yZSwgYnkgbW9kaWZ5aW5nIG9yIHByb3BhZ2F0aW5nIGEKY292ZXJlZCB3b3JrLCB5b3UgaW5kaWNhdGUgeW91ciBhY2NlcHRhbmNlIG9mIHRoaXMgTGljZW5zZSB0byBkbyBzby4KCiAgMTAuIEF1dG9tYXRpYyBMaWNlbnNpbmcgb2YgRG93bnN0cmVhbSBSZWNpcGllbnRzLgoKICBFYWNoIHRpbWUgeW91IGNvbnZleSBhIGNvdmVyZWQgd29yaywgdGhlIHJlY2lwaWVudCBhdXRvbWF0aWNhbGx5CnJlY2VpdmVzIGEgbGljZW5zZSBmcm9tIHRoZSBvcmlnaW5hbCBsaWNlbnNvcnMsIHRvIHJ1biwgbW9kaWZ5IGFuZApwcm9wYWdhdGUgdGhhdCB3b3JrLCBzdWJqZWN0IHRvIHRoaXMgTGljZW5zZS4gIFlvdSBhcmUgbm90IHJlc3BvbnNpYmxlCmZvciBlbmZvcmNpbmcgY29tcGxpYW5jZSBieSB0aGlyZCBwYXJ0aWVzIHdpdGggdGhpcyBMaWNlbnNlLgoKICBBbiAiZW50aXR5IHRyYW5zYWN0aW9uIiBpcyBhIHRyYW5zYWN0aW9uIHRyYW5zZmVycmluZyBjb250cm9sIG9mIGFuCm9yZ2FuaXphdGlvbiwgb3Igc3Vic3RhbnRpYWxseSBhbGwgYXNzZXRzIG9mIG9uZSwgb3Igc3ViZGl2aWRpbmcgYW4Kb3JnYW5pemF0aW9uLCBvciBtZXJnaW5nIG9yZ2FuaXphdGlvbnMuICBJZiBwcm9wYWdhdGlvbiBvZiBhIGNvdmVyZWQKd29yayByZXN1bHRzIGZyb20gYW4gZW50aXR5IHRyYW5zYWN0aW9uLCBlYWNoIHBhcnR5IHRvIHRoYXQKdHJhbnNhY3Rpb24gd2hvIHJlY2VpdmVzIGEgY29weSBvZiB0aGUgd29yayBhbHNvIHJlY2VpdmVzIHdoYXRldmVyCmxpY2Vuc2VzIHRvIHRoZSB3b3JrIHRoZSBwYXJ0eSdzIHByZWRlY2Vzc29yIGluIGludGVyZXN0IGhhZCBvciBjb3VsZApnaXZlIHVuZGVyIHRoZSBwcmV2aW91cyBwYXJhZ3JhcGgsIHBsdXMgYSByaWdodCB0byBwb3NzZXNzaW9uIG9mIHRoZQpDb3JyZXNwb25kaW5nIFNvdXJjZSBvZiB0aGUgd29yayBmcm9tIHRoZSBwcmVkZWNlc3NvciBpbiBpbnRlcmVzdCwgaWYKdGhlIHByZWRlY2Vzc29yIGhhcyBpdCBvciBjYW4gZ2V0IGl0IHdpdGggcmVhc29uYWJsZSBlZmZvcnRzLgoKICBZb3UgbWF5IG5vdCBpbXBvc2UgYW55IGZ1cnRoZXIgcmVzdHJpY3Rpb25zIG9uIHRoZSBleGVyY2lzZSBvZiB0aGUKcmlnaHRzIGdyYW50ZWQgb3IgYWZmaXJtZWQgdW5kZXIgdGhpcyBMaWNlbnNlLiAgRm9yIGV4YW1wbGUsIHlvdSBtYXkKbm90IGltcG9zZSBhIGxpY2Vuc2UgZmVlLCByb3lhbHR5LCBvciBvdGhlciBjaGFyZ2UgZm9yIGV4ZXJjaXNlIG9mCnJpZ2h0cyBncmFudGVkIHVuZGVyIHRoaXMgTGljZW5zZSwgYW5kIHlvdSBtYXkgbm90IGluaXRpYXRlIGxpdGlnYXRpb24KKGluY2x1ZGluZyBhIGNyb3NzLWNsYWltIG9yIGNvdW50ZXJjbGFpbSBpbiBhIGxhd3N1aXQpIGFsbGVnaW5nIHRoYXQKYW55IHBhdGVudCBjbGFpbSBpcyBpbmZyaW5nZWQgYnkgbWFraW5nLCB1c2luZywgc2VsbGluZywgb2ZmZXJpbmcgZm9yCnNhbGUsIG9yIGltcG9ydGluZyB0aGUgUHJvZ3JhbSBvciBhbnkgcG9ydGlvbiBvZiBpdC4KCiAgMTEuIFBhdGVudHMuCgogIEEgImNvbnRyaWJ1dG9yIiBpcyBhIGNvcHlyaWdodCBob2xkZXIgd2hvIGF1dGhvcml6ZXMgdXNlIHVuZGVyIHRoaXMKTGljZW5zZSBvZiB0aGUgUHJvZ3JhbSBvciBhIHdvcmsgb24gd2hpY2ggdGhlIFByb2dyYW0gaXMgYmFzZWQuICBUaGUKd29yayB0aHVzIGxpY2Vuc2VkIGlzIGNhbGxlZCB0aGUgY29udHJpYnV0b3IncyAiY29udHJpYnV0b3IgdmVyc2lvbiIuCgogIEEgY29udHJpYnV0b3IncyAiZXNzZW50aWFsIHBhdGVudCBjbGFpbXMiIGFyZSBhbGwgcGF0ZW50IGNsYWltcwpvd25lZCBvciBjb250cm9sbGVkIGJ5IHRoZSBjb250cmlidXRvciwgd2hldGhlciBhbHJlYWR5IGFjcXVpcmVkIG9yCmhlcmVhZnRlciBhY3F1aXJlZCwgdGhhdCB3b3VsZCBiZSBpbmZyaW5nZWQgYnkgc29tZSBtYW5uZXIsIHBlcm1pdHRlZApieSB0aGlzIExpY2Vuc2UsIG9mIG1ha2luZywgdXNpbmcsIG9yIHNlbGxpbmcgaXRzIGNvbnRyaWJ1dG9yIHZlcnNpb24sCmJ1dCBkbyBub3QgaW5jbHVkZSBjbGFpbXMgdGhhdCB3b3VsZCBiZSBpbmZyaW5nZWQgb25seSBhcyBhCmNvbnNlcXVlbmNlIG9mIGZ1cnRoZXIgbW9kaWZpY2F0aW9uIG9mIHRoZSBjb250cmlidXRvciB2ZXJzaW9uLiAgRm9yCnB1cnBvc2VzIG9mIHRoaXMgZGVmaW5pdGlvbiwgImNvbnRyb2wiIGluY2x1ZGVzIHRoZSByaWdodCB0byBncmFudApwYXRlbnQgc3VibGljZW5zZXMgaW4gYSBtYW5uZXIgY29uc2lzdGVudCB3aXRoIHRoZSByZXF1aXJlbWVudHMgb2YKdGhpcyBMaWNlbnNlLgoKICBFYWNoIGNvbnRyaWJ1dG9yIGdyYW50cyB5b3UgYSBub24tZXhjbHVzaXZlLCB3b3JsZHdpZGUsIHJveWFsdHktZnJlZQpwYXRlbnQgbGljZW5zZSB1bmRlciB0aGUgY29udHJpYnV0b3IncyBlc3NlbnRpYWwgcGF0ZW50IGNsYWltcywgdG8KbWFrZSwgdXNlLCBzZWxsLCBvZmZlciBmb3Igc2FsZSwgaW1wb3J0IGFuZCBvdGhlcndpc2UgcnVuLCBtb2RpZnkgYW5kCnByb3BhZ2F0ZSB0aGUgY29udGVudHMgb2YgaXRzIGNvbnRyaWJ1dG9yIHZlcnNpb24uCgogIEluIHRoZSBmb2xsb3dpbmcgdGhyZWUgcGFyYWdyYXBocywgYSAicGF0ZW50IGxpY2Vuc2UiIGlzIGFueSBleHByZXNzCmFncmVlbWVudCBvciBjb21taXRtZW50LCBob3dldmVyIGRlbm9taW5hdGVkLCBub3QgdG8gZW5mb3JjZSBhIHBhdGVudAooc3VjaCBhcyBhbiBleHByZXNzIHBlcm1pc3Npb24gdG8gcHJhY3RpY2UgYSBwYXRlbnQgb3IgY292ZW5hbnQgbm90IHRvCnN1ZSBmb3IgcGF0ZW50IGluZnJpbmdlbWVudCkuICBUbyAiZ3JhbnQiIHN1Y2ggYSBwYXRlbnQgbGljZW5zZSB0byBhCnBhcnR5IG1lYW5zIHRvIG1ha2Ugc3VjaCBhbiBhZ3JlZW1lbnQgb3IgY29tbWl0bWVudCBub3QgdG8gZW5mb3JjZSBhCnBhdGVudCBhZ2FpbnN0IHRoZSBwYXJ0eS4KCiAgSWYgeW91IGNvbnZleSBhIGNvdmVyZWQgd29yaywga25vd2luZ2x5IHJlbHlpbmcgb24gYSBwYXRlbnQgbGljZW5zZSwKYW5kIHRoZSBDb3JyZXNwb25kaW5nIFNvdXJjZSBvZiB0aGUgd29yayBpcyBub3QgYXZhaWxhYmxlIGZvciBhbnlvbmUKdG8gY29weSwgZnJlZSBvZiBjaGFyZ2UgYW5kIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGlzIExpY2Vuc2UsIHRocm91Z2ggYQpwdWJsaWNseSBhdmFpbGFibGUgbmV0d29yayBzZXJ2ZXIgb3Igb3RoZXIgcmVhZGlseSBhY2Nlc3NpYmxlIG1lYW5zLAp0aGVuIHlvdSBtdXN0IGVpdGhlciAoMSkgY2F1c2UgdGhlIENvcnJlc3BvbmRpbmcgU291cmNlIHRvIGJlIHNvCmF2YWlsYWJsZSwgb3IgKDIpIGFycmFuZ2UgdG8gZGVwcml2ZSB5b3Vyc2VsZiBvZiB0aGUgYmVuZWZpdCBvZiB0aGUKcGF0ZW50IGxpY2Vuc2UgZm9yIHRoaXMgcGFydGljdWxhciB3b3JrLCBvciAoMykgYXJyYW5nZSwgaW4gYSBtYW5uZXIKY29uc2lzdGVudCB3aXRoIHRoZSByZXF1aXJlbWVudHMgb2YgdGhpcyBMaWNlbnNlLCB0byBleHRlbmQgdGhlIHBhdGVudApsaWNlbnNlIHRvIGRvd25zdHJlYW0gcmVjaXBpZW50cy4gICJLbm93aW5nbHkgcmVseWluZyIgbWVhbnMgeW91IGhhdmUKYWN0dWFsIGtub3dsZWRnZSB0aGF0LCBidXQgZm9yIHRoZSBwYXRlbnQgbGljZW5zZSwgeW91ciBjb252ZXlpbmcgdGhlCmNvdmVyZWQgd29yayBpbiBhIGNvdW50cnksIG9yIHlvdXIgcmVjaXBpZW50J3MgdXNlIG9mIHRoZSBjb3ZlcmVkIHdvcmsKaW4gYSBjb3VudHJ5LCB3b3VsZCBpbmZyaW5nZSBvbmUgb3IgbW9yZSBpZGVudGlmaWFibGUgcGF0ZW50cyBpbiB0aGF0CmNvdW50cnkgdGhhdCB5b3UgaGF2ZSByZWFzb24gdG8gYmVsaWV2ZSBhcmUgdmFsaWQuCgogIElmLCBwdXJzdWFudCB0byBvciBpbiBjb25uZWN0aW9uIHdpdGggYSBzaW5nbGUgdHJhbnNhY3Rpb24gb3IKYXJyYW5nZW1lbnQsIHlvdSBjb252ZXksIG9yIHByb3BhZ2F0ZSBieSBwcm9jdXJpbmcgY29udmV5YW5jZSBvZiwgYQpjb3ZlcmVkIHdvcmssIGFuZCBncmFudCBhIHBhdGVudCBsaWNlbnNlIHRvIHNvbWUgb2YgdGhlIHBhcnRpZXMKcmVjZWl2aW5nIHRoZSBjb3ZlcmVkIHdvcmsgYXV0aG9yaXppbmcgdGhlbSB0byB1c2UsIHByb3BhZ2F0ZSwgbW9kaWZ5Cm9yIGNvbnZleSBhIHNwZWNpZmljIGNvcHkgb2YgdGhlIGNvdmVyZWQgd29yaywgdGhlbiB0aGUgcGF0ZW50IGxpY2Vuc2UKeW91IGdyYW50IGlzIGF1dG9tYXRpY2FsbHkgZXh0ZW5kZWQgdG8gYWxsIHJlY2lwaWVudHMgb2YgdGhlIGNvdmVyZWQKd29yayBhbmQgd29ya3MgYmFzZWQgb24gaXQuCgogIEEgcGF0ZW50IGxpY2Vuc2UgaXMgImRpc2NyaW1pbmF0b3J5IiBpZiBpdCBkb2VzIG5vdCBpbmNsdWRlIHdpdGhpbgp0aGUgc2NvcGUgb2YgaXRzIGNvdmVyYWdlLCBwcm9oaWJpdHMgdGhlIGV4ZXJjaXNlIG9mLCBvciBpcwpjb25kaXRpb25lZCBvbiB0aGUgbm9uLWV4ZXJjaXNlIG9mIG9uZSBvciBtb3JlIG9mIHRoZSByaWdodHMgdGhhdCBhcmUKc3BlY2lmaWNhbGx5IGdyYW50ZWQgdW5kZXIgdGhpcyBMaWNlbnNlLiAgWW91IG1heSBub3QgY29udmV5IGEgY292ZXJlZAp3b3JrIGlmIHlvdSBhcmUgYSBwYXJ0eSB0byBhbiBhcnJhbmdlbWVudCB3aXRoIGEgdGhpcmQgcGFydHkgdGhhdCBpcwppbiB0aGUgYnVzaW5lc3Mgb2YgZGlzdHJpYnV0aW5nIHNvZnR3YXJlLCB1bmRlciB3aGljaCB5b3UgbWFrZSBwYXltZW50CnRvIHRoZSB0aGlyZCBwYXJ0eSBiYXNlZCBvbiB0aGUgZXh0ZW50IG9mIHlvdXIgYWN0aXZpdHkgb2YgY29udmV5aW5nCnRoZSB3b3JrLCBhbmQgdW5kZXIgd2hpY2ggdGhlIHRoaXJkIHBhcnR5IGdyYW50cywgdG8gYW55IG9mIHRoZQpwYXJ0aWVzIHdobyB3b3VsZCByZWNlaXZlIHRoZSBjb3ZlcmVkIHdvcmsgZnJvbSB5b3UsIGEgZGlzY3JpbWluYXRvcnkKcGF0ZW50IGxpY2Vuc2UgKGEpIGluIGNvbm5lY3Rpb24gd2l0aCBjb3BpZXMgb2YgdGhlIGNvdmVyZWQgd29yawpjb252ZXllZCBieSB5b3UgKG9yIGNvcGllcyBtYWRlIGZyb20gdGhvc2UgY29waWVzKSwgb3IgKGIpIHByaW1hcmlseQpmb3IgYW5kIGluIGNvbm5lY3Rpb24gd2l0aCBzcGVjaWZpYyBwcm9kdWN0cyBvciBjb21waWxhdGlvbnMgdGhhdApjb250YWluIHRoZSBjb3ZlcmVkIHdvcmssIHVubGVzcyB5b3UgZW50ZXJlZCBpbnRvIHRoYXQgYXJyYW5nZW1lbnQsCm9yIHRoYXQgcGF0ZW50IGxpY2Vuc2Ugd2FzIGdyYW50ZWQsIHByaW9yIHRvIDI4IE1hcmNoIDIwMDcuCgogIE5vdGhpbmcgaW4gdGhpcyBMaWNlbnNlIHNoYWxsIGJlIGNvbnN0cnVlZCBhcyBleGNsdWRpbmcgb3IgbGltaXRpbmcKYW55IGltcGxpZWQgbGljZW5zZSBvciBvdGhlciBkZWZlbnNlcyB0byBpbmZyaW5nZW1lbnQgdGhhdCBtYXkKb3RoZXJ3aXNlIGJlIGF2YWlsYWJsZSB0byB5b3UgdW5kZXIgYXBwbGljYWJsZSBwYXRlbnQgbGF3LgoKICAxMi4gTm8gU3VycmVuZGVyIG9mIE90aGVycycgRnJlZWRvbS4KCiAgSWYgY29uZGl0aW9ucyBhcmUgaW1wb3NlZCBvbiB5b3UgKHdoZXRoZXIgYnkgY291cnQgb3JkZXIsIGFncmVlbWVudCBvcgpvdGhlcndpc2UpIHRoYXQgY29udHJhZGljdCB0aGUgY29uZGl0aW9ucyBvZiB0aGlzIExpY2Vuc2UsIHRoZXkgZG8gbm90CmV4Y3VzZSB5b3UgZnJvbSB0aGUgY29uZGl0aW9ucyBvZiB0aGlzIExpY2Vuc2UuICBJZiB5b3UgY2Fubm90IGNvbnZleSBhCmNvdmVyZWQgd29yayBzbyBhcyB0byBzYXRpc2Z5IHNpbXVsdGFuZW91c2x5IHlvdXIgb2JsaWdhdGlvbnMgdW5kZXIgdGhpcwpMaWNlbnNlIGFuZCBhbnkgb3RoZXIgcGVydGluZW50IG9ibGlnYXRpb25zLCB0aGVuIGFzIGEgY29uc2VxdWVuY2UgeW91IG1heQpub3QgY29udmV5IGl0IGF0IGFsbC4gIEZvciBleGFtcGxlLCBpZiB5b3UgYWdyZWUgdG8gdGVybXMgdGhhdCBvYmxpZ2F0ZSB5b3UKdG8gY29sbGVjdCBhIHJveWFsdHkgZm9yIGZ1cnRoZXIgY29udmV5aW5nIGZyb20gdGhvc2UgdG8gd2hvbSB5b3UgY29udmV5CnRoZSBQcm9ncmFtLCB0aGUgb25seSB3YXkgeW91IGNvdWxkIHNhdGlzZnkgYm90aCB0aG9zZSB0ZXJtcyBhbmQgdGhpcwpMaWNlbnNlIHdvdWxkIGJlIHRvIHJlZnJhaW4gZW50aXJlbHkgZnJvbSBjb252ZXlpbmcgdGhlIFByb2dyYW0uCgogIDEzLiBVc2Ugd2l0aCB0aGUgR05VIEFmZmVybyBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlLgoKICBOb3R3aXRoc3RhbmRpbmcgYW55IG90aGVyIHByb3Zpc2lvbiBvZiB0aGlzIExpY2Vuc2UsIHlvdSBoYXZlCnBlcm1pc3Npb24gdG8gbGluayBvciBjb21iaW5lIGFueSBjb3ZlcmVkIHdvcmsgd2l0aCBhIHdvcmsgbGljZW5zZWQKdW5kZXIgdmVyc2lvbiAzIG9mIHRoZSBHTlUgQWZmZXJvIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgaW50byBhIHNpbmdsZQpjb21iaW5lZCB3b3JrLCBhbmQgdG8gY29udmV5IHRoZSByZXN1bHRpbmcgd29yay4gIFRoZSB0ZXJtcyBvZiB0aGlzCkxpY2Vuc2Ugd2lsbCBjb250aW51ZSB0byBhcHBseSB0byB0aGUgcGFydCB3aGljaCBpcyB0aGUgY292ZXJlZCB3b3JrLApidXQgdGhlIHNwZWNpYWwgcmVxdWlyZW1lbnRzIG9mIHRoZSBHTlUgQWZmZXJvIEdlbmVyYWwgUHVibGljIExpY2Vuc2UsCnNlY3Rpb24gMTMsIGNvbmNlcm5pbmcgaW50ZXJhY3Rpb24gdGhyb3VnaCBhIG5ldHdvcmsgd2lsbCBhcHBseSB0byB0aGUKY29tYmluYXRpb24gYXMgc3VjaC4KCiAgMTQuIFJldmlzZWQgVmVyc2lvbnMgb2YgdGhpcyBMaWNlbnNlLgoKICBUaGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uIG1heSBwdWJsaXNoIHJldmlzZWQgYW5kL29yIG5ldyB2ZXJzaW9ucyBvZgp0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZnJvbSB0aW1lIHRvIHRpbWUuICBTdWNoIG5ldyB2ZXJzaW9ucyB3aWxsCmJlIHNpbWlsYXIgaW4gc3Bpcml0IHRvIHRoZSBwcmVzZW50IHZlcnNpb24sIGJ1dCBtYXkgZGlmZmVyIGluIGRldGFpbCB0bwphZGRyZXNzIG5ldyBwcm9ibGVtcyBvciBjb25jZXJucy4KCiAgRWFjaCB2ZXJzaW9uIGlzIGdpdmVuIGEgZGlzdGluZ3Vpc2hpbmcgdmVyc2lvbiBudW1iZXIuICBJZiB0aGUKUHJvZ3JhbSBzcGVjaWZpZXMgdGhhdCBhIGNlcnRhaW4gbnVtYmVyZWQgdmVyc2lvbiBvZiB0aGUgR05VIEdlbmVyYWwKUHVibGljIExpY2Vuc2UgIm9yIGFueSBsYXRlciB2ZXJzaW9uIiBhcHBsaWVzIHRvIGl0LCB5b3UgaGF2ZSB0aGUKb3B0aW9uIG9mIGZvbGxvd2luZyB0aGUgdGVybXMgYW5kIGNvbmRpdGlvbnMgZWl0aGVyIG9mIHRoYXQgbnVtYmVyZWQKdmVyc2lvbiBvciBvZiBhbnkgbGF0ZXIgdmVyc2lvbiBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUKRm91bmRhdGlvbi4gIElmIHRoZSBQcm9ncmFtIGRvZXMgbm90IHNwZWNpZnkgYSB2ZXJzaW9uIG51bWJlciBvZiB0aGUKR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UsIHlvdSBtYXkgY2hvb3NlIGFueSB2ZXJzaW9uIGV2ZXIgcHVibGlzaGVkCmJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24uCgogIElmIHRoZSBQcm9ncmFtIHNwZWNpZmllcyB0aGF0IGEgcHJveHkgY2FuIGRlY2lkZSB3aGljaCBmdXR1cmUKdmVyc2lvbnMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGNhbiBiZSB1c2VkLCB0aGF0IHByb3h5J3MKcHVibGljIHN0YXRlbWVudCBvZiBhY2NlcHRhbmNlIG9mIGEgdmVyc2lvbiBwZXJtYW5lbnRseSBhdXRob3JpemVzIHlvdQp0byBjaG9vc2UgdGhhdCB2ZXJzaW9uIGZvciB0aGUgUHJvZ3JhbS4KCiAgTGF0ZXIgbGljZW5zZSB2ZXJzaW9ucyBtYXkgZ2l2ZSB5b3UgYWRkaXRpb25hbCBvciBkaWZmZXJlbnQKcGVybWlzc2lvbnMuICBIb3dldmVyLCBubyBhZGRpdGlvbmFsIG9ibGlnYXRpb25zIGFyZSBpbXBvc2VkIG9uIGFueQphdXRob3Igb3IgY29weXJpZ2h0IGhvbGRlciBhcyBhIHJlc3VsdCBvZiB5b3VyIGNob29zaW5nIHRvIGZvbGxvdyBhCmxhdGVyIHZlcnNpb24uCgogIDE1LiBEaXNjbGFpbWVyIG9mIFdhcnJhbnR5LgoKICBUSEVSRSBJUyBOTyBXQVJSQU5UWSBGT1IgVEhFIFBST0dSQU0sIFRPIFRIRSBFWFRFTlQgUEVSTUlUVEVEIEJZCkFQUExJQ0FCTEUgTEFXLiAgRVhDRVBUIFdIRU4gT1RIRVJXSVNFIFNUQVRFRCBJTiBXUklUSU5HIFRIRSBDT1BZUklHSFQKSE9MREVSUyBBTkQvT1IgT1RIRVIgUEFSVElFUyBQUk9WSURFIFRIRSBQUk9HUkFNICJBUyBJUyIgV0lUSE9VVCBXQVJSQU5UWQpPRiBBTlkgS0lORCwgRUlUSEVSIEVYUFJFU1NFRCBPUiBJTVBMSUVELCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgpQVVJQT1NFLiAgVEhFIEVOVElSRSBSSVNLIEFTIFRPIFRIRSBRVUFMSVRZIEFORCBQRVJGT1JNQU5DRSBPRiBUSEUgUFJPR1JBTQpJUyBXSVRIIFlPVS4gIFNIT1VMRCBUSEUgUFJPR1JBTSBQUk9WRSBERUZFQ1RJVkUsIFlPVSBBU1NVTUUgVEhFIENPU1QgT0YKQUxMIE5FQ0VTU0FSWSBTRVJWSUNJTkcsIFJFUEFJUiBPUiBDT1JSRUNUSU9OLgoKICAxNi4gTGltaXRhdGlvbiBvZiBMaWFiaWxpdHkuCgogIElOIE5PIEVWRU5UIFVOTEVTUyBSRVFVSVJFRCBCWSBBUFBMSUNBQkxFIExBVyBPUiBBR1JFRUQgVE8gSU4gV1JJVElORwpXSUxMIEFOWSBDT1BZUklHSFQgSE9MREVSLCBPUiBBTlkgT1RIRVIgUEFSVFkgV0hPIE1PRElGSUVTIEFORC9PUiBDT05WRVlTClRIRSBQUk9HUkFNIEFTIFBFUk1JVFRFRCBBQk9WRSwgQkUgTElBQkxFIFRPIFlPVSBGT1IgREFNQUdFUywgSU5DTFVESU5HIEFOWQpHRU5FUkFMLCBTUEVDSUFMLCBJTkNJREVOVEFMIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyBBUklTSU5HIE9VVCBPRiBUSEUKVVNFIE9SIElOQUJJTElUWSBUTyBVU0UgVEhFIFBST0dSQU0gKElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gTE9TUyBPRgpEQVRBIE9SIERBVEEgQkVJTkcgUkVOREVSRUQgSU5BQ0NVUkFURSBPUiBMT1NTRVMgU1VTVEFJTkVEIEJZIFlPVSBPUiBUSElSRApQQVJUSUVTIE9SIEEgRkFJTFVSRSBPRiBUSEUgUFJPR1JBTSBUTyBPUEVSQVRFIFdJVEggQU5ZIE9USEVSIFBST0dSQU1TKSwKRVZFTiBJRiBTVUNIIEhPTERFUiBPUiBPVEhFUiBQQVJUWSBIQVMgQkVFTiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgpTVUNIIERBTUFHRVMuCgogIDE3LiBJbnRlcnByZXRhdGlvbiBvZiBTZWN0aW9ucyAxNSBhbmQgMTYuCgogIElmIHRoZSBkaXNjbGFpbWVyIG9mIHdhcnJhbnR5IGFuZCBsaW1pdGF0aW9uIG9mIGxpYWJpbGl0eSBwcm92aWRlZAphYm92ZSBjYW5ub3QgYmUgZ2l2ZW4gbG9jYWwgbGVnYWwgZWZmZWN0IGFjY29yZGluZyB0byB0aGVpciB0ZXJtcywKcmV2aWV3aW5nIGNvdXJ0cyBzaGFsbCBhcHBseSBsb2NhbCBsYXcgdGhhdCBtb3N0IGNsb3NlbHkgYXBwcm94aW1hdGVzCmFuIGFic29sdXRlIHdhaXZlciBvZiBhbGwgY2l2aWwgbGlhYmlsaXR5IGluIGNvbm5lY3Rpb24gd2l0aCB0aGUKUHJvZ3JhbSwgdW5sZXNzIGEgd2FycmFudHkgb3IgYXNzdW1wdGlvbiBvZiBsaWFiaWxpdHkgYWNjb21wYW5pZXMgYQpjb3B5IG9mIHRoZSBQcm9ncmFtIGluIHJldHVybiBmb3IgYSBmZWUuCgogICAgICAgICAgICAgICAgICAgICBFTkQgT0YgVEVSTVMgQU5EIENPTkRJVElPTlMKCiAgICAgICAgICAgIEhvdyB0byBBcHBseSBUaGVzZSBUZXJtcyB0byBZb3VyIE5ldyBQcm9ncmFtcwoKICBJZiB5b3UgZGV2ZWxvcCBhIG5ldyBwcm9ncmFtLCBhbmQgeW91IHdhbnQgaXQgdG8gYmUgb2YgdGhlIGdyZWF0ZXN0CnBvc3NpYmxlIHVzZSB0byB0aGUgcHVibGljLCB0aGUgYmVzdCB3YXkgdG8gYWNoaWV2ZSB0aGlzIGlzIHRvIG1ha2UgaXQKZnJlZSBzb2Z0d2FyZSB3aGljaCBldmVyeW9uZSBjYW4gcmVkaXN0cmlidXRlIGFuZCBjaGFuZ2UgdW5kZXIgdGhlc2UgdGVybXMuCgogIFRvIGRvIHNvLCBhdHRhY2ggdGhlIGZvbGxvd2luZyBub3RpY2VzIHRvIHRoZSBwcm9ncmFtLiAgSXQgaXMgc2FmZXN0CnRvIGF0dGFjaCB0aGVtIHRvIHRoZSBzdGFydCBvZiBlYWNoIHNvdXJjZSBmaWxlIHRvIG1vc3QgZWZmZWN0aXZlbHkKc3RhdGUgdGhlIGV4Y2x1c2lvbiBvZiB3YXJyYW50eTsgYW5kIGVhY2ggZmlsZSBzaG91bGQgaGF2ZSBhdCBsZWFzdAp0aGUgImNvcHlyaWdodCIgbGluZSBhbmQgYSBwb2ludGVyIHRvIHdoZXJlIHRoZSBmdWxsIG5vdGljZSBpcyBmb3VuZC4KCiAgICA8b25lIGxpbmUgdG8gZ2l2ZSB0aGUgcHJvZ3JhbSdzIG5hbWUgYW5kIGEgYnJpZWYgaWRlYSBvZiB3aGF0IGl0IGRvZXMuPgogICAgQ29weXJpZ2h0IChDKSA8eWVhcj4gIDxuYW1lIG9mIGF1dGhvcj4KCiAgICBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQogICAgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKICAgIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCiAgICAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgoKICAgIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAogICAgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKICAgIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCgogICAgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKICAgIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgoKQWxzbyBhZGQgaW5mb3JtYXRpb24gb24gaG93IHRvIGNvbnRhY3QgeW91IGJ5IGVsZWN0cm9uaWMgYW5kIHBhcGVyIG1haWwuCgogIElmIHRoZSBwcm9ncmFtIGRvZXMgdGVybWluYWwgaW50ZXJhY3Rpb24sIG1ha2UgaXQgb3V0cHV0IGEgc2hvcnQKbm90aWNlIGxpa2UgdGhpcyB3aGVuIGl0IHN0YXJ0cyBpbiBhbiBpbnRlcmFjdGl2ZSBtb2RlOgoKICAgIDxwcm9ncmFtPiAgQ29weXJpZ2h0IChDKSA8eWVhcj4gIDxuYW1lIG9mIGF1dGhvcj4KICAgIFRoaXMgcHJvZ3JhbSBjb21lcyB3aXRoIEFCU09MVVRFTFkgTk8gV0FSUkFOVFk7IGZvciBkZXRhaWxzIHR5cGUgYHNob3cgdycuCiAgICBUaGlzIGlzIGZyZWUgc29mdHdhcmUsIGFuZCB5b3UgYXJlIHdlbGNvbWUgdG8gcmVkaXN0cmlidXRlIGl0CiAgICB1bmRlciBjZXJ0YWluIGNvbmRpdGlvbnM7IHR5cGUgYHNob3cgYycgZm9yIGRldGFpbHMuCgpUaGUgaHlwb3RoZXRpY2FsIGNvbW1hbmRzIGBzaG93IHcnIGFuZCBgc2hvdyBjJyBzaG91bGQgc2hvdyB0aGUgYXBwcm9wcmlhdGUKcGFydHMgb2YgdGhlIEdlbmVyYWwgUHVibGljIExpY2Vuc2UuICBPZiBjb3Vyc2UsIHlvdXIgcHJvZ3JhbSdzIGNvbW1hbmRzCm1pZ2h0IGJlIGRpZmZlcmVudDsgZm9yIGEgR1VJIGludGVyZmFjZSwgeW91IHdvdWxkIHVzZSBhbiAiYWJvdXQgYm94Ii4KCiAgWW91IHNob3VsZCBhbHNvIGdldCB5b3VyIGVtcGxveWVyIChpZiB5b3Ugd29yayBhcyBhIHByb2dyYW1tZXIpIG9yIHNjaG9vbCwKaWYgYW55LCB0byBzaWduIGEgImNvcHlyaWdodCBkaXNjbGFpbWVyIiBmb3IgdGhlIHByb2dyYW0sIGlmIG5lY2Vzc2FyeS4KRm9yIG1vcmUgaW5mb3JtYXRpb24gb24gdGhpcywgYW5kIGhvdyB0byBhcHBseSBhbmQgZm9sbG93IHRoZSBHTlUgR1BMLCBzZWUKPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgoKICBUaGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZG9lcyBub3QgcGVybWl0IGluY29ycG9yYXRpbmcgeW91ciBwcm9ncmFtCmludG8gcHJvcHJpZXRhcnkgcHJvZ3JhbXMuICBJZiB5b3VyIHByb2dyYW0gaXMgYSBzdWJyb3V0aW5lIGxpYnJhcnksIHlvdQptYXkgY29uc2lkZXIgaXQgbW9yZSB1c2VmdWwgdG8gcGVybWl0IGxpbmtpbmcgcHJvcHJpZXRhcnkgYXBwbGljYXRpb25zIHdpdGgKdGhlIGxpYnJhcnkuICBJZiB0aGlzIGlzIHdoYXQgeW91IHdhbnQgdG8gZG8sIHVzZSB0aGUgR05VIExlc3NlciBHZW5lcmFsClB1YmxpYyBMaWNlbnNlIGluc3RlYWQgb2YgdGhpcyBMaWNlbnNlLiAgQnV0IGZpcnN0LCBwbGVhc2UgcmVhZAo8aHR0cDovL3d3dy5nbnUub3JnL3BoaWxvc29waHkvd2h5LW5vdC1sZ3BsLmh0bWw+Lgo=]]></data>
	</file>
	<file>
	  <filename>/function.admin_browseproptemplates_tab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IENHVXNlckRpcmVjdG9yeSAoYykgMjAwOSBieSBSb2JlcnQgQ2FtcGJlbGwgCiMgICAgICAgICAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgQW4gYWRkb24gbW9kdWxlIGZvciBDTVMgTWFkZSBTaW1wbGUgdG8gcHJvdmlkZSB0aGUgYWJpbGl0eSB0byBicm93c2UKIyAgYW5kIHZpZXcgc3VtbWFyeSByZXBvcnRzIGFuZCBkZXRhaWwgcmVwb3J0cyBhYm91dCBncm91cHMgb2YgZnJvbnRlbmQKIyAgdXNlcnMuCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBIb3dldmVyLCBhcyBhIHNwZWNpYWwgZXhjZXB0aW9uIHRvIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgZGlzdHJpYnV0ZWQKIyBhcyBhbiBhZGRvbiBtb2R1bGUgdG8gQ01TIE1hZGUgU2ltcGxlLiAgWW91IG1heSBub3QgdXNlIHRoaXMgc29mdHdhcmUKIyBpbiBhbnkgTm9uIEdQTCB2ZXJzaW9uIG9mIENNUyBNYWRlIHNpbXBsZSwgb3IgaW4gYW55IHZlcnNpb24gb2YgQ01TCiMgTWFkZSBzaW1wbGUgdGhhdCBkb2VzIG5vdCBpbmRpY2F0ZSBjbGVhcmx5IGFuZCBvYnZpb3VzbHkgaW4gaXRzIGFkbWluIAojIHNlY3Rpb24gdGhhdCB0aGUgc2l0ZSB3YXMgYnVpbHQgd2l0aCBDTVMgTWFkZSBzaW1wbGUuCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojRU5EX0xJQ0VOU0UKaWYoICFpc3NldCgkZ0NtcykgKSBleGl0OwoKJHNtYXJ0eS0+YXNzaWduKCdtc2cnLCR0aGlzLT5MYW5nKCdpbmZvX2Jyb3dzZXByb3BfdGVtcGxhdGVzX3RhYicpKTsKJHNtYXJ0eS0+YXNzaWduKCd0ZW1wbGF0ZWxpc3QnLAoJCSR0aGlzLT5TaG93VGVtcGxhdGVMaXN0KCRpZCwkcmV0dXJuaWQsJ2Jyb3dzZXByb3BfJywKCQkJCQlDR1VTRVJESVJfUFJFRl9ORVdCUk9XU0VQUk9QX1RFTVBMQVRFLAoJCQkJCSdicm93c2Vwcm9wdGVtcGxhdGVzJywKCQkJCQlDR1VTRVJESVJfUFJFRl9ERkxUQlJPV1NFUFJPUF9OQU1FLAoJCQkJCSR0aGlzLT5MYW5nKCdhZGRlZGl0X2Jyb3dzZXByb3BfdGVtcGxhdGUnKSwKCQkJCQkkdGhpcy0+TGFuZygnaW5mb19icm93c2Vwcm9wX3RlbXBsYXRlJykpKTsKZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCd0ZW1wbGF0ZV90YWIudHBsJyk7CgojCiMgRU9GCiMKPz4=]]></data>
	</file>
	<file>
	  <filename>/function.admin_browseproptemplates_tab.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IENHVXNlckRpcmVjdG9yeSAoYykgMjAwOSBieSBSb2JlcnQgQ2FtcGJlbGwgCiMgICAgICAgICAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgQW4gYWRkb24gbW9kdWxlIGZvciBDTVMgTWFkZSBTaW1wbGUgdG8gcHJvdmlkZSB0aGUgYWJpbGl0eSB0byBicm93c2UKIyAgYW5kIHZpZXcgc3VtbWFyeSByZXBvcnRzIGFuZCBkZXRhaWwgcmVwb3J0cyBhYm91dCBncm91cHMgb2YgZnJvbnRlbmQKIyAgdXNlcnMuCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBIb3dldmVyLCBhcyBhIHNwZWNpYWwgZXhjZXB0aW9uIHRvIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgZGlzdHJpYnV0ZWQKIyBhcyBhbiBhZGRvbiBtb2R1bGUgdG8gQ01TIE1hZGUgU2ltcGxlLiAgWW91IG1heSBub3QgdXNlIHRoaXMgc29mdHdhcmUKIyBpbiBhbnkgTm9uIEdQTCB2ZXJzaW9uIG9mIENNUyBNYWRlIHNpbXBsZSwgb3IgaW4gYW55IHZlcnNpb24gb2YgQ01TCiMgTWFkZSBzaW1wbGUgdGhhdCBkb2VzIG5vdCBpbmRpY2F0ZSBjbGVhcmx5IGFuZCBvYnZpb3VzbHkgaW4gaXRzIGFkbWluIAojIHNlY3Rpb24gdGhhdCB0aGUgc2l0ZSB3YXMgYnVpbHQgd2l0aCBDTVMgTWFkZSBzaW1wbGUuCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojRU5EX0xJQ0VOU0UKaWYoICFpc3NldCgkZ0NtcykgKSBleGl0OwoKJHNtYXJ0eS0+YXNzaWduKCdtc2cnLCR0aGlzLT5MYW5nKCdpbmZvX3NlYXJjaGZvcm1fdGVtcGxhdGVzX3RhYicpKTsKJHNtYXJ0eS0+YXNzaWduKCd0ZW1wbGF0ZWxpc3QnLAoJCSR0aGlzLT5TaG93VGVtcGxhdGVMaXN0KCRpZCwkcmV0dXJuaWQsJ3NlYXJjaGZvcm1fJywKCQkJCQlDR1VTRVJESVJfUFJFRl9ORVdTRUFSQ0hGT1JNX1RFTVBMQVRFLAoJCQkJCSdzZWFyY2hmb3JtdGVtcGxhdGVzJywKCQkJCQlDR1VTRVJESVJfUFJFRl9ERkxUU0VBUkNIRk9STV9OQU1FLAoJCQkJCSR0aGlzLT5MYW5nKCdhZGRlZGl0X3NlYXJjaGZvcm1fdGVtcGxhdGUnKSwKCQkJCQkkdGhpcy0+TGFuZygnaW5mb19zZWFyY2hmb3JtX3RlbXBsYXRlJykpKTsKZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCd0ZW1wbGF0ZV90YWIudHBsJyk7CgojCiMgRU9GCiMKPz4=]]></data>
	</file>
	<file>
	  <filename>/function.admin_defaulttemplates_tab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IENHVXNlckRpcmVjdG9yeSAoYykgMjAwOSBieSBSb2JlcnQgQ2FtcGJlbGwgCiMgICAgICAgICAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgQW4gYWRkb24gbW9kdWxlIGZvciBDTVMgTWFkZSBTaW1wbGUgdG8gcHJvdmlkZSB0aGUgYWJpbGl0eSB0byBicm93c2UKIyAgYW5kIHZpZXcgc3VtbWFyeSByZXBvcnRzIGFuZCBkZXRhaWwgcmVwb3J0cyBhYm91dCBncm91cHMgb2YgZnJvbnRlbmQKIyAgdXNlcnMuCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBIb3dldmVyLCBhcyBhIHNwZWNpYWwgZXhjZXB0aW9uIHRvIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgZGlzdHJpYnV0ZWQKIyBhcyBhbiBhZGRvbiBtb2R1bGUgdG8gQ01TIE1hZGUgU2ltcGxlLiAgWW91IG1heSBub3QgdXNlIHRoaXMgc29mdHdhcmUKIyBpbiBhbnkgTm9uIEdQTCB2ZXJzaW9uIG9mIENNUyBNYWRlIHNpbXBsZSwgb3IgaW4gYW55IHZlcnNpb24gb2YgQ01TCiMgTWFkZSBzaW1wbGUgdGhhdCBkb2VzIG5vdCBpbmRpY2F0ZSBjbGVhcmx5IGFuZCBvYnZpb3VzbHkgaW4gaXRzIGFkbWluIAojIHNlY3Rpb24gdGhhdCB0aGUgc2l0ZSB3YXMgYnVpbHQgd2l0aCBDTVMgTWFkZSBzaW1wbGUuCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojRU5EX0xJQ0VOU0UKaWYoICFpc3NldCgkZ0NtcykgKSBleGl0OwoKIyBTeXN0ZW0gZGVmYXVsdCBkaXJlY3RvcnkgdmlldyB0ZW1wbGF0ZQplY2hvICR0aGlzLT5HZXREZWZhdWx0VGVtcGxhdGVGb3JtKCR0aGlzLCRpZCwkcmV0dXJuaWQsCgkJCQkgICBDR1VTRVJESVJfUFJFRl9ORVdESVJFQ1RPUllfVEVNUExBVEUsCgkJCQkgICAnZGVmYXVsdGFkbWluJywnZGVmYXVsdHRlbXBsYXRlcycsCgkJCQkgICAkdGhpcy0+TGFuZygnaW5mb19zeXNkZmx0X2RpcmVjdG9yeV90ZW1wbGF0ZScpLAoJCQkJICAgJ29yaWdfZGlyZWN0b3J5X3RlbXBsYXRlLnRwbCcsCgkJCQkgICAkdGhpcy0+TGFuZygnaW5mb19zeXNkZmx0X3RlbXBsYXRlJykpOwoKZWNobyAnPGRpdiBzdHlsZT0ibWFyZ2luLWJvdHRvbTogMC41ZW07IGhlaWdodDogMC41ZW07IGJvcmRlci10b3A6IDFweCBzb2xpZCAjMDAwOyB3aWR0aDogODAlOyI+PC9kaXY+Jy4iXG4iOwoKIyBTeXN0ZW0gZGVmYXVsdCBzdW1tYXJ5IHZpZXcgdGVtcGxhdGUKZWNobyAkdGhpcy0+R2V0RGVmYXVsdFRlbXBsYXRlRm9ybSgkdGhpcywkaWQsJHJldHVybmlkLAoJCQkJICAgQ0dVU0VSRElSX1BSRUZfTkVXU1VNTUFSWV9URU1QTEFURSwKCQkJCSAgICdkZWZhdWx0YWRtaW4nLCdkZWZhdWx0dGVtcGxhdGVzJywKCQkJCSAgICR0aGlzLT5MYW5nKCdpbmZvX3N5c2RmbHRfc3VtbWFyeV90ZW1wbGF0ZScpLAoJCQkJICAgJ29yaWdfc3VtbWFyeV90ZW1wbGF0ZS50cGwnLAoJCQkJICAgJHRoaXMtPkxhbmcoJ2luZm9fc3lzZGZsdF90ZW1wbGF0ZScpKTsKCmVjaG8gJzxkaXYgc3R5bGU9Im1hcmdpbi1ib3R0b206IDAuNWVtOyBoZWlnaHQ6IDAuNWVtOyBib3JkZXItdG9wOiAxcHggc29saWQgIzAwMDsgd2lkdGg6IDgwJTsiPjwvZGl2PicuIlxuIjsKCiMgU3lzdGVtIGRlZmF1bHQgZGV0YWlsIHZpZXcgdGVtcGxhdGUKZWNobyAkdGhpcy0+R2V0RGVmYXVsdFRlbXBsYXRlRm9ybSgkdGhpcywkaWQsJHJldHVybmlkLAoJCQkJICAgQ0dVU0VSRElSX1BSRUZfTkVXREVUQUlMX1RFTVBMQVRFLAoJCQkJICAgJ2RlZmF1bHRhZG1pbicsJ2RlZmF1bHR0ZW1wbGF0ZXMnLAoJCQkJICAgJHRoaXMtPkxhbmcoJ2luZm9fc3lzZGZsdF9kZXRhaWxfdGVtcGxhdGUnKSwKCQkJCSAgICdvcmlnX2RldGFpbF90ZW1wbGF0ZS50cGwnLAoJCQkJICAgJHRoaXMtPkxhbmcoJ2luZm9fc3lzZGZsdF90ZW1wbGF0ZScpKTsKCmVjaG8gJzxkaXYgc3R5bGU9Im1hcmdpbi1ib3R0b206IDAuNWVtOyBoZWlnaHQ6IDAuNWVtOyBib3JkZXItdG9wOiAxcHggc29saWQgIzAwMDsgd2lkdGg6IDgwJTsiPjwvZGl2PicuIlxuIjsKCiMgU3lzdGVtIGRlZmF1bHQgc2VhcmNoZm9ybSB2aWV3IHRlbXBsYXRlCmVjaG8gJHRoaXMtPkdldERlZmF1bHRUZW1wbGF0ZUZvcm0oJHRoaXMsJGlkLCRyZXR1cm5pZCwKCQkJCSAgIENHVVNFUkRJUl9QUkVGX05FV1NFQVJDSEZPUk1fVEVNUExBVEUsCgkJCQkgICAnZGVmYXVsdGFkbWluJywnZGVmYXVsdHRlbXBsYXRlcycsCgkJCQkgICAkdGhpcy0+TGFuZygnaW5mb19zeXNkZmx0X3NlYXJjaGZvcm1fdGVtcGxhdGUnKSwKCQkJCSAgICdvcmlnX3NlYXJjaGZvcm1fdGVtcGxhdGUudHBsJywKCQkJCSAgICR0aGlzLT5MYW5nKCdpbmZvX3N5c2RmbHRfdGVtcGxhdGUnKSk7CgoKZWNobyAnPGRpdiBzdHlsZT0ibWFyZ2luLWJvdHRvbTogMC41ZW07IGhlaWdodDogMC41ZW07IGJvcmRlci10b3A6IDFweCBzb2xpZCAjMDAwOyB3aWR0aDogODAlOyI+PC9kaXY+Jy4iXG4iOwoKIyBTeXN0ZW0gZGVmYXVsdCBicm93c2UgcHJvcGVydHkgdmlldyB0ZW1wbGF0ZQplY2hvICR0aGlzLT5HZXREZWZhdWx0VGVtcGxhdGVGb3JtKCR0aGlzLCRpZCwkcmV0dXJuaWQsCgkJCQkgICBDR1VTRVJESVJfUFJFRl9ORVdCUk9XU0VQUk9QX1RFTVBMQVRFLAoJCQkJICAgJ2RlZmF1bHRhZG1pbicsJ2RlZmF1bHR0ZW1wbGF0ZXMnLAoJCQkJICAgJHRoaXMtPkxhbmcoJ2luZm9fc3lzZGZsdF9icm93c2Vwcm9wX3RlbXBsYXRlJyksCgkJCQkgICAnb3JpZ19icm93c2Vwcm9wX3RlbXBsYXRlLnRwbCcsCgkJCQkgICAkdGhpcy0+TGFuZygnaW5mb19zeXNkZmx0X3RlbXBsYXRlJykpOwoKCiMKIyBFT0YKIwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/function.admin_detailtemplates_tab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IENHVXNlckRpcmVjdG9yeSAoYykgMjAwOSBieSBSb2JlcnQgQ2FtcGJlbGwgCiMgICAgICAgICAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgQW4gYWRkb24gbW9kdWxlIGZvciBDTVMgTWFkZSBTaW1wbGUgdG8gcHJvdmlkZSB0aGUgYWJpbGl0eSB0byBicm93c2UKIyAgYW5kIHZpZXcgc3VtbWFyeSByZXBvcnRzIGFuZCBkZXRhaWwgcmVwb3J0cyBhYm91dCBncm91cHMgb2YgZnJvbnRlbmQKIyAgdXNlcnMuCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBIb3dldmVyLCBhcyBhIHNwZWNpYWwgZXhjZXB0aW9uIHRvIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgZGlzdHJpYnV0ZWQKIyBhcyBhbiBhZGRvbiBtb2R1bGUgdG8gQ01TIE1hZGUgU2ltcGxlLiAgWW91IG1heSBub3QgdXNlIHRoaXMgc29mdHdhcmUKIyBpbiBhbnkgTm9uIEdQTCB2ZXJzaW9uIG9mIENNUyBNYWRlIHNpbXBsZSwgb3IgaW4gYW55IHZlcnNpb24gb2YgQ01TCiMgTWFkZSBzaW1wbGUgdGhhdCBkb2VzIG5vdCBpbmRpY2F0ZSBjbGVhcmx5IGFuZCBvYnZpb3VzbHkgaW4gaXRzIGFkbWluIAojIHNlY3Rpb24gdGhhdCB0aGUgc2l0ZSB3YXMgYnVpbHQgd2l0aCBDTVMgTWFkZSBzaW1wbGUuCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojRU5EX0xJQ0VOU0UKaWYoICFpc3NldCgkZ0NtcykgKSBleGl0OwoKJHNtYXJ0eS0+YXNzaWduKCdtc2cnLCR0aGlzLT5MYW5nKCdpbmZvX2RldGFpbF90ZW1wbGF0ZXNfdGFiJykpOwokc21hcnR5LT5hc3NpZ24oJ3RlbXBsYXRlbGlzdCcsCgkJJHRoaXMtPlNob3dUZW1wbGF0ZUxpc3QoJGlkLCRyZXR1cm5pZCwnZGV0YWlsXycsCgkJCQkJQ0dVU0VSRElSX1BSRUZfTkVXREVUQUlMX1RFTVBMQVRFLAoJCQkJCSdkZXRhaWx0ZW1wbGF0ZXMnLAoJCQkJCUNHVVNFUkRJUl9QUkVGX0RGTFRERVRBSUxfTkFNRSwKCQkJCQkkdGhpcy0+TGFuZygnYWRkZWRpdF9kZXRhaWxfdGVtcGxhdGUnKSwKCQkJCQkkdGhpcy0+TGFuZygnaW5mb19kZXRhaWxfdGVtcGxhdGUnKSkpOwplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ3RlbXBsYXRlX3RhYi50cGwnKTsKCiMKIyBFT0YKIwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/function.admin_directorytemplates_tab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IENHVXNlckRpcmVjdG9yeSAoYykgMjAwOSBieSBSb2JlcnQgQ2FtcGJlbGwgCiMgICAgICAgICAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgQW4gYWRkb24gbW9kdWxlIGZvciBDTVMgTWFkZSBTaW1wbGUgdG8gcHJvdmlkZSB0aGUgYWJpbGl0eSB0byBicm93c2UKIyAgYW5kIHZpZXcgc3VtbWFyeSByZXBvcnRzIGFuZCBkZXRhaWwgcmVwb3J0cyBhYm91dCBncm91cHMgb2YgZnJvbnRlbmQKIyAgdXNlcnMuCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBIb3dldmVyLCBhcyBhIHNwZWNpYWwgZXhjZXB0aW9uIHRvIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgZGlzdHJpYnV0ZWQKIyBhcyBhbiBhZGRvbiBtb2R1bGUgdG8gQ01TIE1hZGUgU2ltcGxlLiAgWW91IG1heSBub3QgdXNlIHRoaXMgc29mdHdhcmUKIyBpbiBhbnkgTm9uIEdQTCB2ZXJzaW9uIG9mIENNUyBNYWRlIHNpbXBsZSwgb3IgaW4gYW55IHZlcnNpb24gb2YgQ01TCiMgTWFkZSBzaW1wbGUgdGhhdCBkb2VzIG5vdCBpbmRpY2F0ZSBjbGVhcmx5IGFuZCBvYnZpb3VzbHkgaW4gaXRzIGFkbWluIAojIHNlY3Rpb24gdGhhdCB0aGUgc2l0ZSB3YXMgYnVpbHQgd2l0aCBDTVMgTWFkZSBzaW1wbGUuCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojRU5EX0xJQ0VOU0UKaWYoICFpc3NldCgkZ0NtcykgKSBleGl0OwoKJHNtYXJ0eS0+YXNzaWduKCdtc2cnLCR0aGlzLT5MYW5nKCdpbmZvX2RpcmVjdG9yeV90ZW1wbGF0ZXNfdGFiJykpOwokc21hcnR5LT5hc3NpZ24oJ3RlbXBsYXRlbGlzdCcsCgkJJHRoaXMtPlNob3dUZW1wbGF0ZUxpc3QoJGlkLCRyZXR1cm5pZCwnZGlyZWN0b3J5XycsCgkJCQkJQ0dVU0VSRElSX1BSRUZfTkVXRElSRUNUT1JZX1RFTVBMQVRFLAoJCQkJCSdkaXJlY3Rvcnl0ZW1wbGF0ZXMnLAoJCQkJCUNHVVNFUkRJUl9QUkVGX0RGTFRESVJFQ1RPUllfTkFNRSwKCQkJCQkkdGhpcy0+TGFuZygnYWRkZWRpdF9kaXJlY3RvcnlfdGVtcGxhdGUnKSwKCQkJCQkkdGhpcy0+TGFuZygnaW5mb19kaXJlY3RvcnlfdGVtcGxhdGUnKSkpOwplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ3RlbXBsYXRlX3RhYi50cGwnKTsKIwojIEVPRgojCj8+]]></data>
	</file>
	<file>
	  <filename>/function.admin_searchformtemplates_tab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IENHVXNlckRpcmVjdG9yeSAoYykgMjAwOSBieSBSb2JlcnQgQ2FtcGJlbGwgCiMgICAgICAgICAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgQW4gYWRkb24gbW9kdWxlIGZvciBDTVMgTWFkZSBTaW1wbGUgdG8gcHJvdmlkZSB0aGUgYWJpbGl0eSB0byBicm93c2UKIyAgYW5kIHZpZXcgc3VtbWFyeSByZXBvcnRzIGFuZCBkZXRhaWwgcmVwb3J0cyBhYm91dCBncm91cHMgb2YgZnJvbnRlbmQKIyAgdXNlcnMuCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBIb3dldmVyLCBhcyBhIHNwZWNpYWwgZXhjZXB0aW9uIHRvIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgZGlzdHJpYnV0ZWQKIyBhcyBhbiBhZGRvbiBtb2R1bGUgdG8gQ01TIE1hZGUgU2ltcGxlLiAgWW91IG1heSBub3QgdXNlIHRoaXMgc29mdHdhcmUKIyBpbiBhbnkgTm9uIEdQTCB2ZXJzaW9uIG9mIENNUyBNYWRlIHNpbXBsZSwgb3IgaW4gYW55IHZlcnNpb24gb2YgQ01TCiMgTWFkZSBzaW1wbGUgdGhhdCBkb2VzIG5vdCBpbmRpY2F0ZSBjbGVhcmx5IGFuZCBvYnZpb3VzbHkgaW4gaXRzIGFkbWluIAojIHNlY3Rpb24gdGhhdCB0aGUgc2l0ZSB3YXMgYnVpbHQgd2l0aCBDTVMgTWFkZSBzaW1wbGUuCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojRU5EX0xJQ0VOU0UKaWYoICFpc3NldCgkZ0NtcykgKSBleGl0OwoKJHNtYXJ0eS0+YXNzaWduKCdtc2cnLCR0aGlzLT5MYW5nKCdpbmZvX3NlYXJjaGZvcm1fdGVtcGxhdGVzX3RhYicpKTsKJHNtYXJ0eS0+YXNzaWduKCd0ZW1wbGF0ZWxpc3QnLAoJCSR0aGlzLT5TaG93VGVtcGxhdGVMaXN0KCRpZCwkcmV0dXJuaWQsJ3NlYXJjaGZvcm1fJywKCQkJCQlDR1VTRVJESVJfUFJFRl9ORVdTRUFSQ0hGT1JNX1RFTVBMQVRFLAoJCQkJCSdzZWFyY2hmb3JtdGVtcGxhdGVzJywKCQkJCQlDR1VTRVJESVJfUFJFRl9ERkxUU0VBUkNIRk9STV9OQU1FLAoJCQkJCSR0aGlzLT5MYW5nKCdhZGRlZGl0X3NlYXJjaGZvcm1fdGVtcGxhdGUnKSwKCQkJCQkkdGhpcy0+TGFuZygnaW5mb19zZWFyY2hmb3JtX3RlbXBsYXRlJykpKTsKZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCd0ZW1wbGF0ZV90YWIudHBsJyk7CgojCiMgRU9GCiMKPz4=]]></data>
	</file>
	<file>
	  <filename>/function.admin_settings_tab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IENHVXNlckRpcmVjdG9yeSAoYykgMjAwOSBieSBSb2JlcnQgQ2FtcGJlbGwgCiMgICAgICAgICAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgQW4gYWRkb24gbW9kdWxlIGZvciBDTVMgTWFkZSBTaW1wbGUgdG8gcHJvdmlkZSB0aGUgYWJpbGl0eSB0byBicm93c2UKIyAgYW5kIHZpZXcgc3VtbWFyeSByZXBvcnRzIGFuZCBkZXRhaWwgcmVwb3J0cyBhYm91dCBncm91cHMgb2YgZnJvbnRlbmQKIyAgdXNlcnMuCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBIb3dldmVyLCBhcyBhIHNwZWNpYWwgZXhjZXB0aW9uIHRvIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgZGlzdHJpYnV0ZWQKIyBhcyBhbiBhZGRvbiBtb2R1bGUgdG8gQ01TIE1hZGUgU2ltcGxlLiAgWW91IG1heSBub3QgdXNlIHRoaXMgc29mdHdhcmUKIyBpbiBhbnkgTm9uIEdQTCB2ZXJzaW9uIG9mIENNUyBNYWRlIHNpbXBsZSwgb3IgaW4gYW55IHZlcnNpb24gb2YgQ01TCiMgTWFkZSBzaW1wbGUgdGhhdCBkb2VzIG5vdCBpbmRpY2F0ZSBjbGVhcmx5IGFuZCBvYnZpb3VzbHkgaW4gaXRzIGFkbWluIAojIHNlY3Rpb24gdGhhdCB0aGUgc2l0ZSB3YXMgYnVpbHQgd2l0aCBDTVMgTWFkZSBzaW1wbGUuCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojRU5EX0xJQ0VOU0UKaWYoICFpc3NldCgkZ0NtcykgKSBleGl0OwoKIwojIEVPRgojCj8+]]></data>
	</file>
	<file>
	  <filename>/function.admin_summarytemplates_tab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IENHVXNlckRpcmVjdG9yeSAoYykgMjAwOSBieSBSb2JlcnQgQ2FtcGJlbGwgCiMgICAgICAgICAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgQW4gYWRkb24gbW9kdWxlIGZvciBDTVMgTWFkZSBTaW1wbGUgdG8gcHJvdmlkZSB0aGUgYWJpbGl0eSB0byBicm93c2UKIyAgYW5kIHZpZXcgc3VtbWFyeSByZXBvcnRzIGFuZCBkZXRhaWwgcmVwb3J0cyBhYm91dCBncm91cHMgb2YgZnJvbnRlbmQKIyAgdXNlcnMuCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBIb3dldmVyLCBhcyBhIHNwZWNpYWwgZXhjZXB0aW9uIHRvIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgZGlzdHJpYnV0ZWQKIyBhcyBhbiBhZGRvbiBtb2R1bGUgdG8gQ01TIE1hZGUgU2ltcGxlLiAgWW91IG1heSBub3QgdXNlIHRoaXMgc29mdHdhcmUKIyBpbiBhbnkgTm9uIEdQTCB2ZXJzaW9uIG9mIENNUyBNYWRlIHNpbXBsZSwgb3IgaW4gYW55IHZlcnNpb24gb2YgQ01TCiMgTWFkZSBzaW1wbGUgdGhhdCBkb2VzIG5vdCBpbmRpY2F0ZSBjbGVhcmx5IGFuZCBvYnZpb3VzbHkgaW4gaXRzIGFkbWluIAojIHNlY3Rpb24gdGhhdCB0aGUgc2l0ZSB3YXMgYnVpbHQgd2l0aCBDTVMgTWFkZSBzaW1wbGUuCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojRU5EX0xJQ0VOU0UKaWYoICFpc3NldCgkZ0NtcykgKSBleGl0OwoKJHNtYXJ0eS0+YXNzaWduKCdtc2cnLCR0aGlzLT5MYW5nKCdpbmZvX3N1bW1hcnlfdGVtcGxhdGVzX3RhYicpKTsKJHNtYXJ0eS0+YXNzaWduKCd0ZW1wbGF0ZWxpc3QnLAoJCSR0aGlzLT5TaG93VGVtcGxhdGVMaXN0KCRpZCwkcmV0dXJuaWQsJ3N1bW1hcnlfJywKCQkJCQlDR1VTRVJESVJfUFJFRl9ORVdTVU1NQVJZX1RFTVBMQVRFLAoJCQkJCSdzdW1tYXJ5dGVtcGxhdGVzJywKCQkJCQlDR1VTRVJESVJfUFJFRl9ERkxUU1VNTUFSWV9OQU1FLAoJCQkJCSR0aGlzLT5MYW5nKCdhZGRlZGl0X3N1bW1hcnlfdGVtcGxhdGUnKSwKCQkJCQkkdGhpcy0+TGFuZygnaW5mb19zdW1tYXJ5X3RlbXBsYXRlJykpKTsKZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCd0ZW1wbGF0ZV90YWIudHBsJyk7CiMKIyBFT0YKIwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lang/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lang/en_US.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0EKJGxhbmdbJ2FkZGVkaXRfYnJvd3NlcHJvcF90ZW1wbGF0ZSddID0gJ0FkZC9FZGl0IEJyb3dzZSBQcm9wZXJ0eSBUZW1wbGF0ZSc7CiRsYW5nWydhZGRlZGl0X2RldGFpbF90ZW1wbGF0ZSddID0gJ0FkZC9FZGl0IERldGFpbCBUZW1wbGF0ZSc7CiRsYW5nWydhZGRlZGl0X2RpcmVjdG9yeV90ZW1wbGF0ZSddID0gJ0FkZC9FZGl0IERpcmVjdG9yeSBUZW1wbGF0ZSc7CiRsYW5nWydhZGRlZGl0X3NlYXJjaGZvcm1fdGVtcGxhdGUnXSA9ICdBZGQvRWRpdCBTZWFyY2ggRm9ybSBUZW1wbGF0ZSc7CiRsYW5nWydhZGRlZGl0X3N1bW1hcnlfdGVtcGxhdGUnXSA9ICdBZGQvRWRpdCBTdW1tYXJ5IFRlbXBsYXRlJzsKJGxhbmdbJ2FsbCddID0gJ0FsbCc7CiRsYW5nWydhbnknXSA9ICdBbnknOwokbGFuZ1snYXNrX3JlYWxseV91bmluc3RhbGwnXSA9ICdBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gZG8gdGhpcz8gIENvbnRpbnVpbmcgd2lsbCBwZXJtYW5lbnRseSBkZWxldGUgYWxsIGRhdGEgYXNzb2NpYXRlZCB3aXRoIHRoaXMgbW9kdWxlJzsKCiNCCgoKI0MKJGxhbmdbJ2NyZWF0ZWQnXSA9ICdDcmVhdGVkJzsKCiNECgoKI0UKJGxhbmdbJ2Vycm9yX2ludmFsaWRncm91cCddID0gJ0ludmFsaWQgZ3JvdXAnOwokbGFuZ1snZXJyb3JfaW52YWxpZHNvcnRmaWVsZCddID0gJ0ludmFsaWQgc29ydCBmaWVsZDogJXMnOwokbGFuZ1snZXJyb3JfbWlzc2luZ3BhcmFtJ10gPSAnSW5zdWZmaWNpZW50IFBhcmFtZXRlcnMnOwokbGFuZ1snZXJyb3Jfbm9mZXUnXSA9ICdUaGUgRnJvbnRlbmQgVXNlcnMgbW9kdWxlIGNvdWxkIG5vdCBiZSBmb3VuZCc7CiRsYW5nWydlcnJvcl91c2Vybm90Zm91bmQnXSA9ICdUaGUgdXNlciB3aXRoIHRoZSBzcGVjaWZpZWQgaWQgY291bGQgbm90IGJlIGZvdW5kJzsKJGxhbmdbJ2V4cGlyZXMnXSA9ICdFeHBpcmVzJzsKCiNGCiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdDYWxndXlzIFVzZXIgRGlyZWN0b3J5JzsKCiNHCiRsYW5nWydncm91cHMnXSA9ICdHcm91cHMnOwoKI0gKJGxhbmdbJ2hlbHAnXSA9IDw8PEVPVAo8aDM+V2hhdCBkb2VzIHRoaXMgZG8/PC9oMz4KICA8cD5UaGlzIG1vZHVsZSBwcm92aWRlcyB0aGUgYWJpbGl0eSBmb3IgZ2VuZXJhdGluZyBhIGRpcmVjdG9yeSBvZiB1c2VycyBmcm9tIHRoZSBGRVUgbW9kdWxlLCBmb3IgZ2VuZXJhdGluZyBhIHN1bW1hcnkgdmlldyBvZiB1c2VycyBtYXRjaGluZyBzcGVjaWZpZWQgY3JpdGVyaWEsIGFuZCBmb3IgZGlzcGxheWluZyBhIGRldGFpbCByZXBvcnQgb2YgYSBzcGVjaWZpYyB1c2VyLiAgSXQgY2FuIGJlIHVzZWQgZm9yIGdlbmVyYXRpbmcgcHJvZmlsZSBwYWdlcyBmb3IgeW91ciB1c2Vycywgb3IgYSBzdGFmZiBkaXJlY3RvcnkuPC9wPgo8aDM+RmVhdHVyZXM6PC9oMz4KPHVsPgogIDxsaT5Db21wbGV0ZSB0ZW1wbGF0ZSBjb250cm9sCjxwPkFsbCBkaXNwbGF5cyBhcmUgY29tcGxldGVseSBjb25maWd1cmFibGUgYnkgdGVtcGxhdGVzIGFsbG93aW5nIGZvciBqYXZhc2NyaXB0LCBhamF4LCBvciBhbnkgb3RoZXIgZmFuY3kgZGlzcGxheXMuICBTdHlsaW5nIGlzIGNvbXBsZXRlbHkgY29udHJvbGxhYmxlIGJ5IHRoZSB3ZWJzaXRlIGRldmVsb3Blci48L3A+CiAgPC9saT4KICA8bGk+TXVsdGlwbGUgZGF0YWJhc2UgdGVtcGxhdGVzLgo8cD5Zb3UgY2FuIGNvbmZpZ3VyZSBtdWx0aXBsZSBkaWZmZXJlbnQgdmlld3MgZm9yIGVhY2ggZGlzcGxheSwgYW5kIHVzZSB0aGVtIHVuZGVyIGRpZmZlcmVudCBzaXR1YXRpb25zLjwvcD4KICA8L2xpPgo8bGk+RmlsdGVyIHN1bW1hcnkgdmlld3Mgb24gdXNlciBwcm9wZXJ0aWVzLgogICA8cD5Zb3UgY2FuIGZpbHRlciB0aGUgb3V0cHV0IGZvciB0aGUgc3VtbWFyeSB2aWV3IGJhc2VkIG9uIHRoZSB2YWx1ZSBvZiBhIHNwZWNpZmljIHVzZXIgcHJvcGVydHkgZnJvbSB0aGUgRkVVIG1vZHVsZS4gIFRoaXMgYWxzbyBpbmNsdWRlcyAmcXVvdDtMSUtFJnF1b3Q7IGJhc2VkIGNyaXRlcmEuCiAgPC9saT4KICA8bGk+U29ydGluZyBvbiBtdWx0aXBsZSBkaWZmZXJlbnQgY3JpdGVyaWEuPC9saT4KICA8bGk+U3VwcG9ydHMgU0VPIGZyaWVuZGx5IFVSTFM8L2xpPgo8L3VsPgo8aDM+SG93IGRvIEkgdXNlIGl0PzwvaDM+CjxwPlRoZSBzaW1wbGVzdCB3YXkgdG8gdXNlIHRoaXMgbW9kdWxlIGlzIHRvIHBsYWNlIGEgdGFnIGxpa2UgdGhpcyBpbnRvIHlvdXIgcGFnZSB0ZW1wbGF0ZSwgb3IgcGFnZSBjb250ZW50IDxjb2RlPntDR1VzZXJEaXJlY3Rvcnl9PC9jb2RlPi4gIFRvIGV4cGFuZCBvbiB0aGlzIGZ1bmN0aW9uYWxpdHksIG9yIHRvIGRpc3BsYXkgYSBzdWJzZXQgb2YgeW91ciB1c2Vycywgc2VlIHRoZSBwYXJhbWV0ZXJzIGJlbG93LjwvcD4KPGgzPkV4YW1wbGVzOjwvaDM+Cjx1bD4KPGxpPkRpc3BsYXkgYSBkaXJlY3Rvcnkgb2YgYWxsIHVzZXJzOgo8cD48Y29kZT57Q0dVc2VyRGlyZWN0b3J5IGFjdGlvbj0mcXVvdDtkaXJlY3RvcnkmcXVvdDt9PC9jb2RlPjwvcD4KPC9saT4KPGxpPkRpc3BsYXkgYSBkaXJlY3Rvcnkgb2YgYWxsIHVzZXJzIG9yZ2FuaXplZCBieSBjaXR5Ogo8cD48Y29kZT57Q0dVc2VyRGlyZWN0b3J5IGFjdGlvbj0mcXVvdDtkaXJlY3RvcnkmcXVvdDsgcHJvcD0mcXVvdDtjaXR5JnF1b3Q7fTwvY29kZT48L3A+CjwvbGk+CjxsaT5EaXNwbGF5IGEgc3VtbWFyeSBsaXN0IG9mIGFsbCB1c2VycyBpbiB0aGUgJnF1b3Q7bWVtYmVycyZxdW90OyBncm91cDoKPHA+PGNvZGU+e0NHVXNlckRpcmVjdG9yeSBncm91cD0mcXVvdDttZW1iZXJzJnF1b3Q7fTwvY29kZT48L3A+CjwvbGk+CjxsaT5EaXNwbGF5IGEgc3VtbWFyeSBsaXN0IG9mIGFsbCB1c2VycyBpbiB0aGUgY2l0eSBvZiBjYWxnYXJ5Ogo8cD48Y29kZT57Q0dVc2VyRGlyZWN0b3J5IHByb3A9JnF1b3Q7Y2l0eSZxdW90OyBwcm9wdmFsPSZxdW90O2NhbGdhcnkmcXVvdDt9PC9jb2RlPjwvcD4KPC9saT4KPGxpPkRpc3BsYXkgYSBzdW1tYXJ5IGxpc3Qgb2YgYWxsIHVzZXJzIGZyb20gY291bnRyaWVzIHRoYXQgYmVnaW4gd2l0aCBDOgo8cD48Y29kZT57Q0dVc2VyRGlyZWN0b3J5IHByb3A9JnF1b3Q7Y2l0eSZxdW90OyB1c2VsaWtlPTEgcHJvcHZhbD0mcXVvdDtjJSZxdW90O308L2NvZGU+PC9wPgo8L2xpPgoKPC91bD4KCjxoMz5Ob3RlcyBhYm91dCBwcmV0dHkgVVJMUzwvaDM+CjxwPiZxdW90O1ByZXR0eSZxdW90OyBvciBTRU8gZnJpZW5kbHkgVVJMUyBsaW1pdHMgdGhlIGZsZXhpYmlsaXR5IG9mIHRoaXMgbW9kdWxlLCBhbmQgdGhlIHBhcmFtZXRlcnMgdGhhdCBjYW4gYmUgc3BlY2lmaWVkIG9uIHRoZSB0YWcuIFBhcnRpY3VsYXJseSB0aG9zZSB0aGF0IGNhbiBiZSBwYXNzZWQgb24gdG8gc3Vic2VxdWVudCB2aWV3cy4gIEZvciB0aGlzIHJlYXNvbiwgdGhlIGRpcmVjdG9yeSB2aWV3IGRvZXMgbm90IGdlbmVyYXRlIHByZXR0eSB1cmxzIHRvIHRoZSBzdWJzZXF1ZW50IHN1bW1hcnkgbGlua3MuICBUaGlzIGFsbG93cyBwYXJhbWV0ZXJzIGxpa2UgZGV0YWlscGFnZSwgZGV0YWlsdGVtcGxhdGUsIGFuZCBzdW1tYXJ5dGVtcGxhdGUgdG8gYmUgcGFzc2VkIGluIHRoZSB0YWcgdG8gdGhlIGRpcmVjdG9yeSB2aWV3IGFuZCB0byBoYXZlIHRob3NlIHBhcmFtZXRlcnMgcGFzc2VkIGRvd24gdG8gdGhlIHN1YnNlcXVlbnQgc3VtbWFyeSBkZXRhaWwgdmlld3MuPC9wPgo8L3A+CjxoMz5UaGUgcHJvcHZhbHMgYWN0aW9uLjwvaDM+CjxwPlRoZSBwcm9wdmFscyBhY3Rpb24gY2FuIGJlIHVzZWQgdmlhIGFqYXggdG8gZG8gYXV0b2NvbXBsZXRpb24gdmlhIGpzb24gb24gdmFyaW91cyBGRVUgcHJvcGVydGllcy4gIEZvciB0ZXh0IGFuZCBlbWFpbCBwcm9wZXJ0aWVzIHRoZSBzeXN0ZW0gd2lsbCBxdWVyeSBhbGwgb2YgdGhlIHZhbHVlcyBvZiB0aGUgcHJvcGVydHkgdGhhdCBtYXRjaCB0aGUgcHJvcCBhbmQgcHJvcHZhbCBwYXJhbWV0ZXJzIHBhc3NlZCBpbi4gIEZvciBzZWxlY3QsIG11bHRpc2VsZWN0LCBhbmQgcmFkaW9idXR0b25zIHByb3BlcnRpZXMgdGhlIG9wdGlvbnMgb2YgdGhlIHByb3BlcnR5IGFyZSBtYXRjY2hlZCBhZ2FpbnN0IHRoZSBjcml0ZXJpYSBwYXNzZWQgaW4uIFRoZSBtb2R1bGVfYWN0aW9uX2xpbmsgcGx1Z2luIHByb3ZpZGVkIGJ5IHRoZSBDR1NpbXBsZVNtYXJ0eSBtb2R1bGUgY2FuIGJlIG9mIGFzc2lzdGFuY2UgaGVyZS4gU2VlIHRoZSBicmllZiBleGFtcGxlIGJlbG93Ogo8cHJlPjxjb2RlPgombHQ7c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCImZ3Q7CnZhciB1cmwgPSAne21vZHVsZV9hY3Rpb25fbGluayBtb2R1bGU9Q0dVc2VyRGlyZWN0b3J5IGFjdGlvbj1wcm9wdmFscyBwcm9wPXRleHRmaWVsZH0nOwp1cmwgPSB1cmwucmVwbGFjZSgvYW1wOy9nLCcnKSsnJmNudG50MDFwcm9wdmFsPWMnOwp2YXIgcmVzID0galF1ZXJ5LnBvc3QoJ3VybCcpOwp7bGl0ZXJhbH0KalF1ZXJ5KGRvY3VtZW50KS5yZWFkeShmdW5jdGlvbigpewp9KTsKey9saXRlcmFsfSZsdDsvc2NyaXB0Jmd0Owo8L2NvZGU+PC9wcmU+CjxoMz5TdXBwb3J0PC9oMz4KPHA+VGhpcyBtb2R1bGUgZG9lcyBub3QgaW5jbHVkZSBjb21tZXJjaWFsIHN1cHBvcnQuIEhvd2V2ZXIsIHRoZXJlIGFyZSBhIG51bWJlciBvZiByZXNvdXJjZXMgYXZhaWxhYmxlIHRvIGhlbHAgeW91IHdpdGggaXQ6PC9wPgo8dWw+CjxsaT5Gb3IgdGhlIGxhdGVzdCB2ZXJzaW9uIG9mIHRoaXMgbW9kdWxlLCBGQVFzLCBvciB0byBmaWxlIGEgQnVnIFJlcG9ydCBvciBidXkgY29tbWVyY2lhbCBzdXBwb3J0LCBwbGVhc2UgdmlzaXQgdGhlIGNtcyBkZXZlbG9wbWVudCBmb3JnZSBhdCA8YSBocmVmPSJodHRwOi8vZGV2LmNtc21hZGVzaW1wbGUub3JnIj5kZXYuY21zbWFkZXNpbXBsZS5vcmc8L2E+LjwvbGk+CjxsaT5BZGRpdGlvbmFsIGRpc2N1c3Npb24gb2YgdGhpcyBtb2R1bGUgbWF5IGFsc28gYmUgZm91bmQgaW4gdGhlIDxhIGhyZWY9Imh0dHA6Ly9mb3J1bS5jbXNtYWRlc2ltcGxlLm9yZyI+Q01TIE1hZGUgU2ltcGxlIEZvcnVtczwvYT4uPC9saT4KPGxpPlRoZSBhdXRob3IsIGNhbGd1eTEwMDAgYWxsIGNhbiBvZnRlbiBiZSBmb3VuZCBpbiB0aGUgPGEgaHJlZj0iaXJjOi8vaXJjLmZyZWVub2RlLm5ldC8jY21zIj5DTVMgSVJDIENoYW5uZWw8L2E+LjwvbGk+CjxsaT5MYXN0bHksIHlvdSBtYXkgaGF2ZSBzb21lIHN1Y2Nlc3MgZW1haWxpbmcgdGhlIGF1dGhvcihzKSBkaXJlY3RseS48L2xpPiAgCjwvdWw+Cgo8aDM+Q29weXJpZ2h0IGFuZCBMaWNlbnNlPC9oMz4KPHA+Q29weXJpZ2h0ICZjb3B5OyAyMDA4LCBSb2JlcnQgQ2FtcGJlbCA8YSBocmVmPSJtYWlsdG86Y2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZyI+Jmx0O2NhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcmZ3Q7PC9hPi4gQWxsIFJpZ2h0cyBBcmUgUmVzZXJ2ZWQuPC9wPgo8cD5UaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQppdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQp0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgooYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLjwvcD4KPHA+SG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCmFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQppbiBhbnkgTm9uIEdQTCB2ZXJzaW9uIG9mIENNUyBNYWRlIHNpbXBsZSwgb3IgaW4gYW55IHZlcnNpb24gb2YgQ01TCk1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS48L3A+CjxwPlRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLApidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgpNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCkdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCllvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCmFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCkZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCk9yIHJlYWQgaXQgPGEgaHJlZj0iaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMIj5vbmxpbmU8L2E+PC9wPgpFT1Q7CiRsYW5nWydoZWxwX3BhcmFtX2FjdGlvbiddID0gJ1RoaXMgcGFyYW1ldGVyIGNvbnRyb2xzIHRoZSBiZWhhdmlvdXIgb2YgdGhlIG1vZHVsZS4gIFRoZXJlIGFyZSB0aHJlZSBwb3NzaWJsZSB2YWx1ZXM6Cjx1bD4KICA8bGk+YnJvd3NlICAtIERpc3BsYXkgYSBuYXZpZ2F0aW9uIG9mIHByb3BlcnR5IHZhbHVlcywgYW5kIGFsbG93IGRyaWxsaW5nIGRvd24gdG8gbWF0Y2hpbmcgc3VtbWFyeSB2aWV3cy48L2xpPgogIDxsaT5kZWZhdWx0IC0gRGlzcGxheXMgYSBzdW1tYXJ5IHZpZXcgb2YgdXNlcnMgdGhhdCBtYXRjaCB0aGUgc3BlY2lmaWVkIGNyaXRlcmlhLCBvciBhbGwgdXNlcnMgaWYgbm8gY3JpdGllcmlhIGlzIHNwZWNpZmllZC48L2xpPgogIDxsaT5kaXJlY3RvcnkgLSBEaXNwbGF5cyBhbiBhbHBoYWJldGljYWwgZGlyZWN0b3J5IG9mIGxpbmtzIHRvIHN1bW1hcnkgdmlld3MgdG8gdXNlcnMgdGhhdCBtYXRjaCB0aGUgc3BlY2lmaWVkIGNyaXRlcmlhLiAgSXQgaXMgcG9zc2libGUgdG8gY3JlYXRlIGRpcmVjdG9yeSB2aWV3cyBvbiB1c2VybmFtZSwgb3Igb24gYW55IG90aGVyIHBhcmFtZXRlcjwvbGk+CiAgPGxpPmRldGFpbCAtIERpc3BsYXlzIGEgZGV0YWlsIHJlcG9ydCBhYm91dCBhIHNwZWNpZmljIHVzZXIuPC9saT4KICA8bGk+c2VhcmNoIC0gRGlzcGxheXMgYSBzZWFyY2ggZm9ybS48L2xpPgogIDxsaT5wcm9wdmFscyAtIFJldHVybnMgYSBqc29uIGVuY29kZWQgYXJyYXkgb2YgcHJvcGVydHkgdmFsdWVzIHRoYXQgc3RhcnQgd2l0aCB0aGUgZXhwcmVzc2lvbiBzdXBwbGllZC4gIFRoaXMgYWN0aW9uIGlzIHR5cGljYWxseSBjYWxsZWQgdmlhIGFqYXguPC9saT4KPC91bD4nOwokbGFuZ1snaGVscF9wYXJhbV9icm93c2Vwcm9wdGVtcGxhdGUnXSA9ICdUaGlzIHBhcmFtZXRlciBhbGxvd3Mgc3BlY2lmeWluZyBhIG5vbiBkZWZhdWx0IGJyb3dzZSBwcm9wZXJ0eSB0ZW1wbGF0ZSBuYW1lIHRvIHVzZSBmb3IgYSBwcm9wZXJ0eSBicm93c2luZyB2aWV3JzsKJGxhbmdbJ2hlbHBfcGFyYW1fZ3JvdXAnXSA9ICdVc2VkIHdpdGggdGhlIGRlZmF1bHQgYWN0aW9uLCB0aGlzIHBhcmFtZXRlciBzaG91bGQgY29udGFpbiB0aGUgbmFtZSBvZiBhbiBGRVUgdXNlciBncm91cCwgYW5kIHdpbGwgbGltaXQgdGhlIG91dHB1dCB0byBtZW1iZXJzIG9mIHRoYXQgZ3JvdXAnOwokbGFuZ1snaGVscF9wYXJhbV9naWQnXSA9ICdVc2VkIHdpdGggdGhlIGRlZmF1bHQgYWN0aW9uLCB0aGlzIHBhcmFtZXRlciBzaG91bGQgY29udGFpbiB0aGUgaWQgb2YgYW4gRkVVIHVzZXIgZ3JvdXAsIGFuZCB3aWxsIGxpbWl0IHRoZSBvdXRwdXQgdG8gbWVtYmVycyBvZiB0aGF0IGdyb3VwLiAgVGhpcyBwYXJhbWV0ZXIgY2Fubm90IGJlIHVzZWQgaW4gY29uanVuY3Rpb24gd2l0aCB0aGUgZ3JvdXAgcGFyYW1ldGVyLic7CiRsYW5nWydoZWxwX3BhcmFtX3Nob3dleHBpcmVkJ10gPSAnQnkgZGVmYXVsdCwgdGhlIHN5c3RlbSB3aWxsIGV4Y2x1ZGUgZXhwaXJlZCB1c2VycyBmcm9tIGFueSBnZW5lcmF0ZWQgcmVwb3J0LiAgU2V0dGluZyB0aGlzIHBhcmFtZXRlciB0byAxIHdpbGwgaW5jbHVkZSB0aGVzZSB1c2Vycy4nOwokbGFuZ1snaGVscF9wYXJhbV9ic29ydGJ5J10gPSAnVXNlZCBmb3IgdGhlIGJyb3dzZSBhY3Rpb24sIHRoaXMgcGFyYW1ldGVyIHNwZWNpZmllcyB0aGUgc29ydCBvcmRlciBvZiB0aGUgZ2VuZXJhdGVkIHByb3BlcnR5IG91dHB1dC4gIFBvc3NpYmxlIHZhbHVlcyBhcmU6Cjx1bD4KICA8bGk+bmFtZSAtIHRoZSBwcm9wZXJ0eSBuYW1lLjwvbGk+CiAgPGxpPmNvdW50IC0gdGhlIG51bWJlciBvZiBtYXRjaGVzLjwvbGk+CjwvdWw+JzsKJGxhbmdbJ2hlbHBfcGFyYW1fc3BhcnNlJ10gPSAnQXBwbGljYWJsZSBvbmx5IHRvIHRoZSBkaXJlY3RvcnkgdmlldyB0aGlzIG9wdGlvbiB3aWxsIG9ubHkgc2hvdyBhIGRpcmVjdG9yeSAgbGV0dGVyIGZvciB3aGljaCB0aGVyZSBhcmUgbWF0Y2hpbmcgdXNlcnMuJzsKJGxhbmdbJ2hlbHBfcGFyYW1fcmVzdWx0cGFnZSddID0gJ1VzZWQgZm9yIHRoZSBzZWFyY2gsIGFuZCBicm93c2UgYWN0aW9ucywgdGhpcyBwYXJhbWV0ZXIgc3BlY2lmaWVzIHdoaWNoIENNU01TIGNvbnRlbnQgcGFnZSBzaG91bGQgYmUgdXNlZCB0byBkaXNwbGF5IHRoZSBtYXRjaGluZyBhcnRpY2xlcyBmcm9tIHRoZSBmaWx0ZXIgb3BlcmF0aW9uLic7CiRsYW5nWydoZWxwX3BhcmFtX3NvcnRieSddID0gJ1VzZWQgZm9yIHRoZSBkZWZhdWx0IGFjdGlvbiwgdGhpcyBwYXJhbWV0ZXIgc3BlY2lmaWVzIHRoZSBzb3J0aW5nIG9mIHRoZSBnZW5lcmF0ZWQgc3VtbWFyeSBvdXRwdXQuICBQb3NzaWJsZSB2YWx1ZXMgYXJlOgo8dWw+CiA8bGk+aWQgLSBUaGUgdXNlcnMgaWQgKGRlZmF1bHQgdmlldyBvbmx5KTwvbGk+CiA8bGk+dXNlcm5hbWUgLSBUaGUgdXNlcnMgdXNlcm5hbWUgKGRlZmF1bHQgdmlldyBvbmx5KTwvbGk+CiA8bGk+Y3JlYXRlZGF0ZSAtIFRoZSBkYXRlIGF0IHdoaWNoIHRoZSB1c2VyIGFjY291bnQgd2FzIGNyZWF0ZWQuIChkZWZhdWx0IHZpZXcgb25seSk8L2xpPgogPGxpPmV4cGlyZXMgLSBUaGUgZGF0ZSBhdCB3aGljaCB0aGUgdXNlciBhY2NvdW50IHdpbGwgZXhwaXJlIChvciBkaWQgZXhwaXJlKS4gKGRlZmF1bHQgdmlldyBvbmx5KTwvbGk+CiA8bGk+YWN0aXZpdHkgLSBUaGUgZGF0ZSBhdCB3aGljaCB0aGUgdXNlciBhY2NvdW50IHdhcyBsYXN0IGxvZ2dlZCBpbiBvciBsb2dnZWQgb3V0LiAoZGVmYXVsdCB2aWV3IG9ubHkpPC9saT4KIDxsaT5mOnByb3BlcnR5bmFtZSAtIFRoaXMgYWxsb3dzIHNvcnRpbmcgdGhlIG91dHB1dCBieSBhIHNwZWNpZmllZCBGRVUgcHJvcGVydHkgbmFtZS4gaS5lOiBmOmZ1bGxfbmFtZS4gIDxzdHJvbmc+Tm90ZTo8L3N0cm9uZz4geW91IG1heSBleHBlcmllbmNlIHVuZXhwZWN0ZWQgcmVzdWx0cyBpZiB0aGUgZ3JvdXAgYmVpbmcgZGlzcGxheWVkIGRvZXMgbm90IGhhdmUgdGhhdCBwcm9wZXJ0eSwgb3Igbm90IGV2ZXJ5IHVzZXIgaW4gdGhlIHJlc3VsdGluZyBzZXQgaGFzIHRoYXQgcHJvcGVydHkgZGVmaW5lZC4gIEFsc28sIHlvdSBtYXkgZXhwZXJpZW5jZSB1bmV4cGVjdGVkIHJlc3VsdHMgaWYgdGhlIGZpZWxkIHNwZWNpZmllZCBpcyBub3QgYSB0ZXh0IHN0cmluZy4gIFlvdSBtYXkgaGF2ZSB0byBhZGp1c3QgdGhlIHNvcnRvcmRlciBwYXJhbWV0ZXIgdG8gZ2V0IHRoZSBkZXNpcmVkIG91dHB1dDwvdWw+JzsKJGxhbmdbJ2hlbHBfcGFyYW1fYnNvcnRvcmRlciddID0gJ1VzZWQgZm9yIHRoZSBicm93c2UgYWN0aW9uLCB0aGlzIHBhcmFtZXRlciBzcGVjaWZpZXMgdGhlIHNvcnQgb3JkZXIgb2YgdGhlIGdlbmVyYXRlZCBvdXRwdXQuICBQb3NzaWJsZSB2YWx1ZXMgYXJlOgo8dWw+CiAgPGxpPkFTQyAtIEFzY2VuZGluZyBvcmRlcjwvbGk+CiAgPGxpPkRFU0MgLSBEZXNjZW5kaW5nIG9yZGVyPC9saT4KPC91bD4nOwokbGFuZ1snaGVscF9wYXJhbV9zb3J0b3JkZXInXSA9ICdVc2VkIGZvciB0aGUgZGVmYXVsdCBhY3Rpb24sIHRoaXMgcGFyYW1ldGVyIHNwZWNpZmllcyB0aGUgc29ydCBvcmRlciBvZiB0aGUgZ2VuZXJhdGVkIG91dHB1dC4gIFBvc3NpYmxlIHZhbHVlcyBhcmU6Cjx1bD4KICA8bGk+QVNDIC0gQXNjZW5kaW5nIG9yZGVyPC9saT4KICA8bGk+REVTQyAtIERlc2NlbmRpbmcgb3JkZXI8L2xpPgo8L3VsPic7CiRsYW5nWydoZWxwX3BhcmFtX3BhZ2VsaW1pdCddID0gJ1VzZWQgZm9yIHRoZSBkZWZhdWx0IGFjdGlvbiwgdGhpcyBwYXJhbWV0ZXIgc3BlY2lmaWVzIHRoZSBtYXhpbXVtIG51bWJlciBvZiBpdGVtcyB0byBiZSByZXR1cm5lZC4nOwokbGFuZ1snaGVscF9wYXJhbV9wcm9wJ10gPSAnVXNlZCBmb3IgdGhlIGRlZmF1bHQsYnJvd3NlIGFuZCBkaXJlY3RvcnkgYWN0aW9ucywgdGhpcyBwYXJhbWV0ZXIgYmVoYXZlcyBpbiB0d28gZGlmZmVyZW50IHdheXMgZGVwZW5kaW5nIHVwb24gdGhlIGFjdGlvbjoKPHVsPgogIDxsaT5UaGUgZGVmYXVsdCAoc3VtbWFyeSkgYWN0aW9uCiAgICA8cD5JbiB0aGUgZGVmYXVsdCAoc3VtbWFyeSkgYWN0aW9uLCB0aGlzIHBhcmFtZXRlciBjYW4gYmUgdXNlZCB0byBzcGVjaWZ5IGEgcHJvcGVydHkgdG8gZmlsdGVyIHRoZSByZXN1bHRzIGJ5LiAgSXQgd29ya3MgaW4gY29uanVuY3Rpb24gd2l0aCB0aGUgcHJvcHZhbCBwYXJhbWV0ZXIgYmVsb3cuPC9wPgogIDwvbGk+CiAgPGxpPlRoZSBicm93c2UgYWN0aW9uCiAgICA8cD5JbiB0aGUgYnJvd3NlIGFjdGlvbiwgdGhpcyBwYXJhbWV0ZXIgY2FuIGJlIHVzZWQgdG8gc3BlY2lmeSBhbiBGRVUgcHJvcGVydHkgdG8gYnJvd3NlPC9wPgogIDwvbGk+CiAgPGxpPlRoZSBkaXJlY3RvcnkgYWN0aW9uLgogICAgPHA+SW4gdGhlIGRpcmVjdG9yeSBhY3Rpb24sIHRoaXMgYXByYW1ldGVyIGNhbiBiZSB1c2VkIHRvIHNwZWNpZnkgYSBwcm9wZXJ0eSB0byBnZW5lcmF0ZSBhIGRpcmVjdG9yeSBmcm9tLiAgIFRoZSBkZWZhdWx0IHZhbHVlIGluIHRoZSBkaXJlY3RvcnkgYWN0aW9uIGlzICZxdW90O3VzZXJuYW1lJnF1b3RlOzwvcD4KICA8L2xpPgogIDxsaT5UaGUgcHJvcHZhbHMgYWN0aW9uLgogICAgPHA+SW4gdGhlIHByb3B2YWxzIGFjdGlvbiwgdGhpcyBwYXJhbWV0ZXIgY2FuIGJlIHVzZWQgdG8gc3BlY2lmeSB0aGUgcHJvcGVydHkgdG8gbGlzdCB0aGUgdmFsdWVzIG9mLjwvcD4KICA8L2xpPgo8L3VsPic7CiRsYW5nWydoZWxwX3BhcmFtX3Byb3B2YWwnXSA9ICdVc2VkIGluIGNvbmp1bmN0aW9uIHdpdGggdGhlICZxdW90O3Byb3AmcXVvdDsgcGFyYW1ldGVyIGZvciB0aGUgZGVmYXVsdCAoc3VtbWFyeSkgYW5kIHByb3B2YWxzIGFjdGlvbiwgdGhpcyBwYXJhbWV0ZXIgYWxsb3dzIHNwZWNpZnlpbmcgYSB2YWx1ZSBvbiB3aGljaCB0byBmaWx0ZXIgdXNlcnMgYnkuICBGb3IgdGhlIHByb3B2YWxzIGFjdGlvbiB0aGlzIHBhcmFtZXRlciBjb250YWlucyB0aGUgbGV0dGVyKHMpIHRoYXQgc2hvdWxkIGJlIHVzZWQgdG8gZmlsdGVyIHRoZSByZXN1bHRzLic7CiRsYW5nWydoZWxwX3BhcmFtX3VzZWxpa2UnXSA9ICdVc2VkIGluIGNvbmp1bmN0aW9uIHdpdGggdGhlICZxdW90O3Byb3AmcXVvdCBhbmQgJnF1b3Q7cHJvcHZhbCZxdW90OyBwYXJhbWV0ZXJzLCB0aGlzIHBhcmFtZXRlciwgaWYgc2V0IHRvIGEgcG9zaXRpdmUgaW50ZWdlciB2YWx1ZSBpbmRpY2F0ZXMgdGhhdCB0aGUgcHJvcHZhbCBwYXJhbWV0ZXIgY29udGFpbnMgYSBMSUtFIGV4cHJlc3Npb24uICBXaGVuIHVzZWQgaW4gdGhlIHByb3B2YWxzIGFjdGlvbiwgdGhpcyBwYXJhbWV0ZXIgaXMgb24gYnkgZGVmYXVsdC4nOwokbGFuZ1snaGVscF9wYXJhbV9kZXRhaWxwYWdlJ10gPSAnVGhpcyBwYXJhbWV0ZXIsIGlmIHNwZWNpZmllZCwgc2hvdWxkIGNvbnRhaW4gdGhlIHBhZ2VpZCBvciBhbGlhcyBvZiBhIENNUyBjb250ZW50IHBhZ2Ugb24gd2hpY2ggeW91IHdvdWxkIGxpa2UgdG8gc2hvdyBhbnkgZGV0YWlsIHJlcG9ydCc7CiRsYW5nWydoZWxwX3BhcmFtX3N1bW1hcnl0ZW1wbGF0ZSddID0gJ1RoaXMgcGFyYW1ldGVyIGFsbG93cyBzcGVjaWZ5aW5nIGEgbm9uIGRlZmF1bHQgc3VtbWFyeSB0ZW1wbGF0ZSBuYW1lIHRvIHVzZSBmb3Igc3VtbWFyeSBkaXNwbGF5cyc7CiRsYW5nWydoZWxwX3BhcmFtX2RldGFpbHRlbXBsYXRlJ10gPSAnVGhpcyBwYXJhbWV0ZXIgYWxsb3dzIHNwZWNpZnlpbmcgYSBub24gZGVmYXVsdCBkZXRhaWwgdGVtcGxhdGUgbmFtZSB0byB1c2UgZm9yIGRldGFpbCBkaXNwbGF5cyc7CiRsYW5nWydoZWxwX3BhcmFtX2RpcmVjdG9yeXRlbXBsYXRlJ10gPSAnVGhpcyBwYXJhbWV0ZXIgYWxsb3dzIHNwZWNpZnlpbmcgYSBub24gZGVmYXVsdCBkaXJlY3RvcnkgdGVtcGxhdGUgbmFtZSB0byB1c2Ugd2l0aCBkaXJlY3RvcnkgZGlzcGxheXMnOwokbGFuZ1snaGVscF9wYXJhbV9zZWFyY2hmb3JtdGVtcGxhdGUnXSA9ICdUaGlzIHBhcmFtZXRlciBhbGxvd3Mgc3BlY2lmeWluZyBhIG5vbiBkZWZhdWx0IHNlYXJjaCB0ZW1wbGF0ZSBuYW1lIHRvIHVzZSBpbiBzZWFyY2ggZm9ybXMnOwokbGFuZ1snaGVscF9wYXJhbV9zZWFyY2hwcm9wZXJ0eSddID0gJ1RoaXMgcGFyYW1ldGVyIGFsbG93cyBzcGVjaWZ5aW5nIGEgc2luZ2xlIG9yIGNvbW1hIHNlcGFyYXRlZCBsaXN0IG9mIGFkZGl0aW9uYWwgRkVVIHByb3BlcnR5IG5hbWVzIHRvIHN1cHBseSBpbiB0aGUgc2VhcmNoIGZvcm0nOwokbGFuZ1snaGVscF9wYXJhbV91aWQnXSA9ICdVc2VkIGluIGNvbmp1bmN0aW9uIHdpdGggdGhlIGRldGFpbCBkaXNwbGF5LCB0aGlzIHBhcmFtZXRlciBtdXN0IGNvbnRhaW4gdGhlIHVpZCBvZiBhIHZhbGlkIGZyb250ZW5kIHVzZXIgYWNjb3VudCc7CgojSQokbGFuZ1snaW5mb19icm93c2Vwcm9wX3RlbXBsYXRlJ10gPSAnQnJvd3NlIFByb3BlcnR5IHRlbXBsYXRlcyBkaXNwbGF5IEEgbGlzdCBvZiB1bmlxdWUgdmFsdWVzIGZvciB0aGUgc3BlY2lmaWVkIHByb3BlcnR5LiAgRWFjaCBpdGVtIGluIHRoZSBsaXN0IGlzIGEgbGluayB0byBhIHN1bW1hcnkgdmlldyBjb250YWluaW5nIHRoZSBtYXRjaGluZyB1c2VycyB0aGF0IG1hdGNoIHRoYXQgcHJvcGVydHkgdmFsdWUuICBZb3UgbWF5IHVzZSBhbnkgc21hcnR5IGxvZ2ljIG9yIHZhcmlhYmxlcyB0aGF0IGhhdmUgYmVlbiBjcmVhdGVkIHByZXZpb3VzbHksIG9yIHRoZSBvbmVzIG1hZGUgYXZhaWxhYmlsaXR5IHNwZWNpZmljYWxseSBmb3IgdGhpcyB2aWV3Lic7CiRsYW5nWydpbmZvX2Jyb3dzZXByb3BfdGVtcGxhdGVzX3RhYiddID0gJ1RoaXMgdGFiIGNvbnRhaW5zIHRoZSBsaXN0IG9mIGF2YWlsYWJsZSBicm93c2UgcHJvcGVydHkgdmlldyB0ZW1wbGF0ZXMuICBPbmUgb2YgdGhlbSBpcyBtYXJrZWQgYXMgZGVmYXVsdC4gIFRoZSBkZWZhdWx0IG9uZSB3aWxsIGJlIHVzZWQgd2hlbiBubyBhbHRlcm5hdGUgdGVtcGxhdGUgbmFtZSBpcyBzdXBwbGllZCBvbiB0aGUgdGFnIHRoYXQgY2FsbHMgdGhpcyBtb2R1bGUnOwokbGFuZ1snaW5mb19kZXRhaWxfdGVtcGxhdGUnXSA9ICdEZXRhaWwgdGVtcGxhdGVzIGRpc3BsYXkgZGV0YWlsZWQgaW5mb3JtYXRpb24gYWJvdXQgYSBzcGVjaWZpYyBmcm9udGVuZCB1c2VyLiAgSGVyZSB5b3UgZGVzaWduIHRoZSB3YXkgaW4gd2hpY2ggeW91IHdhbnQgdGhhdCBpbmZvcm1hdGlvbiBsYWlkIG91dC4gIFlvdSBtYXkgdXNlIGFueSBzbWFydHkgbG9naWMgb3IgdmFyaWFibGVzIHRoYXQgaGF2ZSBiZWVuIGRlc2lnbmVkIHByZXZpb3VzbHksIG9yIHRoZSBvbmVzIG1hZGUgYXZhaWxhYmxlIHNwZWNpZmljYWxseSBmb3IgdGhpcyB2aWV3JzsKJGxhbmdbJ2luZm9fZGV0YWlsX3RlbXBsYXRlc190YWInXSA9ICdUaGlzIHRhYiBjb250YWlucyB0aGUgbGlzdCBvZiBhdmFpbGFibGUgZGV0YWlsIHZpZXcgdGVtcGxhdGVzLiAgT25lIG9mIHRoZW0gaXMgbWFya2VkIGFzIGRlZmF1bHQuICBUaGUgZGVmYXVsdCBvbmUgd2lsbCBiZSB1c2VkIHdoZW4gbm8gYWx0ZXJuYXRlIHRlbXBsYXRlIG5hbWUgaXMgc3VwcGxpZWQgb24gdGhlIHRhZyB0aGF0IGNhbGxzIHRoaXMgbW9kdWxlJzsKJGxhbmdbJ2luZm9fZGlyZWN0b3J5X3RlbXBsYXRlJ10gPSAnRGlyZWN0b3J5IHRlbXBsYXRlcyBkaXNwbGF5IGFuIGFscGhhYmV0aWNhbCBsaXN0IG9mIGxpbmtzLCB3aGVuIGEgbGluayBpcyBjbGlja2VkIGl0IHdpbGwgZGlzcGxheSBhIHN1bW1hcnkgdmlldyBvZiB0aGUgbWF0Y2hpbmcgdXNlcnMgZm9yIHRoYXQgbGV0dGVyLiAgSXQgaXMgcG9zc2libGUgdG8gY3JlYXRlIGRpcmVjdG9yaWVzIGJhc2VkIG9uIGRpZmZlcmVudCBwcm9wZXJ0aWVzLiAgSGVyZSB5b3UgZGVzaWduIHRoZSB3YXkgaW4gd2hpY2ggeW91IHdhbnQgdGhhdCBpbmZvcm1hdGlvbiBsYWlkIG91dC4gIFlvdSBtYXkgdXNlIGFueSBzbWFydHkgbG9naWMgb3IgdmFyaWFibGVzIHRoYXQgaGF2ZSBiZWVuIGRlc2lnbmVkIHByZXZpb3VzbHksIG9yIHRoZSBvbmVzIG1hZGUgYXZhaWxhYmxlIHNwZWNpZmljYWxseSBmb3IgdGhpcyB2aWV3JzsKJGxhbmdbJ2luZm9fZGlyZWN0b3J5X3RlbXBsYXRlc190YWInXSA9ICdUaGlzIHRhYiBjb250YWlucyB0aGUgbGlzdCBvZiBhdmFpbGFibGUgZGlyZWN0b3J5IHRlbXBsYXRlcy4gIE9uZSBvZiB0aGVtIGlzIG1hcmtlZCBhcyBkZWZhdWx0LiAgVGhlIGRlZmF1bHQgb25lIHdpbGwgYmUgdXNlZCB3aGVuIG5vIGFsdGVybmF0ZSB0ZW1wbGF0ZSBuYW1lIGlzIHN1cHBsaWVkIG9uIHRoZSB0YWcgdGhhdCBjYWxscyB0aGlzIG1vZHVsZSc7CiRsYW5nWydpbmZvX3N1bW1hcnlfdGVtcGxhdGUnXSA9ICdTdW1tYXJ5IHRlbXBsYXRlcyBkaXNwbGF5IGluZm9ybWF0aW9uIGFib3V0IGEgbGlzdCBvZiB1c2VycyB0aGF0IG1hdGNoIGEgY3JpdGVyaWEuICBIZXJlIHlvdSBkZXNpZ24gdGhlIHdheSBpbiB3aGljaCB5b3Ugd2FudCB0aGF0IGluZm9ybWF0aW9uIGxhaWQgb3V0LiAgWW91IG1heSB1c2UgYW55IHNtYXJ0eSBsb2dpYyBvciB2YXJpYWJsZXMgdGhhdCBoYXZlIGJlZW4gZGVzaWduZWQgcHJldmlvdXNseSwgb3IgdGhlIG9uZXMgbWFkZSBhdmFpbGFibGUgc3BlY2lmaWNhbGx5IGZvciB0aGlzIHZpZXcnOwokbGFuZ1snaW5mb19zZWFyY2hmb3JtX3RlbXBsYXRlJ10gPSAnU2VhcmNoIGZvcm0gdGVtcGxhdGVzIGRpc3BsYXkgQSBmb3JtIHRvIGFsbG93IHNlYXJjaGluZyBmb3IgYSBwYXJ0aWN1bGFyIHVzZXIgb3IgZ3JvdXAgb2YgdXNlcnMuICBIZXJlIHlvdSBkZXNpZ24gdGhlIHdheSBpbiB3aGljaCB5b3Ugd2FudCB0aGUgZm9ybSBkaXNwbGF5ZWQuICBZb3UgbWF5IHVzZSBhbnkgc21hcnR5IGxvZ2ljIG9yIHZhcmlhYmxlcyB0aGF0IGhhdmUgYmVlbiBkZXNpZ25lZCBwcmV2aW91c2x5LCBvciB0aGUgb25lcyBtYWRlIGF2YWlsYWJsZSBzcGVjaWZpY2FsbHkgZm9yIHRoaXMgdmlldyc7CiRsYW5nWydpbmZvX3NlYXJjaGZvcm1fdGVtcGxhdGVzX3RhYiddID0gJ1RoaXMgdGFiIGNvbnRhaW5zIHRoZSBsaXN0IG9mIGF2YWlsYWJsZSBzZWFyY2ggZm9ybSB0ZW1wbGF0ZXMuICBPbmUgb2YgdGhlbSBpcyBtYXJrZWQgYXMgZGVmYXVsdC4gIFRoZSBkZWZhdWx0IG9uZSB3aWxsIGJlIHVzZWQgd2hlbiBubyBhbHRlcm5hdGUgdGVtcGxhdGUgbmFtZSBpcyBzdXBwbGllZCBvbiB0aGUgdGFnIHRoYXQgY2FsbHMgdGhpcyBtb2R1bGUnOwokbGFuZ1snaW5mb19zdW1tYXJ5X3RlbXBsYXRlc190YWInXSA9ICdUaGlzIHRhYiBjb250YWlucyB0aGUgbGlzdCBvZiBhdmFpbGFibGUgc3VtbWFyeSB0ZW1wbGF0ZXMuICBPbmUgb2YgdGhlbSBpcyBtYXJrZWQgYXMgZGVmYXVsdC4gIFRoZSBkZWZhdWx0IG9uZSB3aWxsIGJlIHVzZWQgd2hlbiBubyBhbHRlcm5hdGUgdGVtcGxhdGUgbmFtZSBpcyBzdXBwbGllZCBvbiB0aGUgdGFnIHRoYXQgY2FsbHMgdGhpcyBtb2R1bGUnOwokbGFuZ1snaW5mb19zeXNkZmx0X2Jyb3dzZXByb3BfdGVtcGxhdGUnXSA9ICdTeXN0ZW0gRGVmYXVsdCBCcm93c2UgUHJvcGVydHkgVmlldyBUZW1wbGF0ZSc7CiRsYW5nWydpbmZvX3N5c2RmbHRfZGV0YWlsX3RlbXBsYXRlJ10gPSAnU3lzdGVtIERlZmF1bHQgRGV0YWlsIFZpZXcgVGVtcGxhdGUnOwokbGFuZ1snaW5mb19zeXNkZmx0X2RpcmVjdG9yeV90ZW1wbGF0ZSddID0gJ1N5c3RlbSBEZWZhdWx0IERpcmVjdG9yeSBUZW1wbGF0ZSc7CiRsYW5nWydpbmZvX3N5c2RmbHRfc2VhcmNoZm9ybV90ZW1wbGF0ZSddID0gJ1N5c3RlbSBEZWZhdWx0IFNlYXJjaCBGb3JtIFRlbXBsYXRlJzsKJGxhbmdbJ2luZm9fc3lzZGZsdF9zdW1tYXJ5X3RlbXBsYXRlJ10gPSAnU3lzdGVtIERlZmF1bHQgU3VtbWFyeSBWaWV3IFRlbXBsYXRlJzsKJGxhbmdbJ2luZm9fc3lzZGZsdF90ZW1wbGF0ZSddID0gJ0FsdGVyaW5nIHRoaXMgdGVtcGxhdGUgd2lsbCBoYXZlIG5vIGltbWVkaWF0ZSBlZmZlY3Qgb24gYW55IG91dHB1dC4gIFRoaXMgZm9ybSBjb250cm9scyB0aGUgdmFsdWUgb2YgdGhlIHRlbXBsYXRlIHRoYXQgaXMgY3JlYXRlZCB3aGVuIHlvdSBjbGljayAmcXVvdDtOZXcgVGVtcGxhdGUmcXVvdDsgaW4gdGhlIGFwcHJvcHJpYXRlIHRlbXBsYXRlIHRhYi4nOwoKCiNKCgoKI0sKCgojTAokbGFuZ1snbGFzdF9hY3RpdmUnXSA9ICdMYXN0IEFjdGl2ZSc7CiRsYW5nWydsYmxfYnJvd3NlcHJvcHRlbXBsYXRlcyddID0gJ0Jyb3dzZSBQcm9wZXJ0eSBUZW1wbGF0ZXMnOwokbGFuZ1snbGJsX2RlZmF1bHR0ZW1wbGF0ZXMnXSA9ICdEZWZhdWx0IFRlbXBsYXRlcyc7CiRsYW5nWydsYmxfZGV0YWlsdGVtcGxhdGVzJ10gPSAnRGV0YWlsIFZpZXcgVGVtcGxhdGVzJzsKJGxhbmdbJ2xibF9kaXJlY3Rvcnl0ZW1wbGF0ZXMnXSA9ICdEaXJlY3RvcnkgVGVtcGxhdGVzJzsKJGxhbmdbJ2xibF9maXJzdF9wYWdlJ10gPSAnR28gdG8gRmlyc3QgUGFnZSc7CiRsYW5nWydsYmxfbGFzdF9wYWdlJ10gPSAnR28gdG8gTGFzdCBQYWdlJzsKJGxhbmdbJ2xibF9uZXh0X3BhZ2UnXSA9ICdHbyB0byBOZXh0IFBhZ2UnOwokbGFuZ1snbGJsX3ByZXZfcGFnZSddID0gJ0dvIHRvIFByZXZpb3VzIFBhZ2UnOwokbGFuZ1snbGJsX3NlYXJjaGZvcm10ZW1wbGF0ZXMnXSA9ICdTZWFyY2ggRm9ybSBUZW1wbGF0ZXMnOwokbGFuZ1snbGJsX3NldHRpbmdzJ10gPSAnU2V0dGluZ3MnOwokbGFuZ1snbGJsX3N1bW1hcnl0ZW1wbGF0ZXMnXSA9ICdTdW1tYXJ5IFZpZXcgVGVtcGxhdGVzJzsKCiNNCiRsYW5nWydtb2RkZXNjcmlwdGlvbiddID0gJ0EgbW9kdWxlIGFsbG93aW5nIHNlYXJjaGluZywgYnJvd3NpbmcsIGFuZCB2aWV3aW5nIGRldGFpbHMgYWJvdXQgZnJvbnRlbmQgdXNlcnMnOwoKI04KCgojTwokbGFuZ1snb2YnXSA9ICdPZic7CgojUAokbGFuZ1sncGFnZSddID0gJ1BhZ2UnOwokbGFuZ1sncG9zdGluc3RhbGwnXSA9ICdUaGUgQ0dVc2VyRGlyZWN0b3J5IG1vZHVsZSBpcyBub3cgcmVhZHkgZm9yIGNvbmZpZ3VyYXRpb24nOwokbGFuZ1sncG9zdHVuaW5zdGFsbCddID0gJ1RoZSBDR1VzZXJkaXJlY3RvcnkgbW9kdWxlLCBhbmQgYWxsIGFzc29jaWF0ZWQgZGF0YSBoYXMgYmVlbiB1bmluc3RhbGxlZCBmcm9tIHRoZSBkYXRhYmFzZSc7CgojUQoKCiNSCiRsYW5nWydyZXN1bHRzX2FsbF9hbnknXSA9ICdSZXR1cm4gcmVzdWx0cyB0aGF0IG1hdGNoIGFsbCwgb3IgYW55IG9mIHRoZSBjb25kaXRpb25zIHNwZWNpZmllZCc7CgojUwokbGFuZ1snc3VibWl0J10gPSAnU3VibWl0JzsKCiNUCgoKI1UKJGxhbmdbJ3VzZXJuYW1lJ10gPSAnVXNlcm5hbWUnOwoKI1YKCgojVwoKCiNYCgoKI1kKCgojWgoKPz4K]]></data>
	</file>
	<file>
	  <filename>/lang/ext/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lang/ext/de_DE.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2FkZGVkaXRfYnJvd3NlcHJvcF90ZW1wbGF0ZSddID0gJ0hpbnp1ZiZ1dW1sO2dlbi9CZWFyYmVpdGVuIGR1cmNoc3VjaGUgRWlnZW5zY2hhZnRlbi1UZW1wbGF0ZSc7CiRsYW5nWydhZGRlZGl0X2RldGFpbF90ZW1wbGF0ZSddID0gJ0hpbnp1ZiZ1dW1sO2dlbi9CZWFyYmVpdGVuIERldGFpbCBUZW1wbGF0ZSc7CiRsYW5nWydhZGRlZGl0X2RpcmVjdG9yeV90ZW1wbGF0ZSddID0gJ0hpbnp1ZiZ1dW1sO2dlbi9CZWFyYmVpdGVuIFZlcnplaWNobmlzLVRlbXBsYXRlJzsKJGxhbmdbJ2FkZGVkaXRfc2VhcmNoZm9ybV90ZW1wbGF0ZSddID0gJ0hpbnp1ZiZ1dW1sO2dlbi9CZWFyYmVpdGVuIFN1Y2hmb3JtdWxhci1UZW1wbGF0ZSc7CiRsYW5nWydhZGRlZGl0X3N1bW1hcnlfdGVtcGxhdGUnXSA9ICdIaW56dWYmdXVtbDtnZW4vQmVhcmJlaXRlbiBadXNhbW1lbmZhc3N1bmctVGVtcGxhdGUnOwokbGFuZ1snYWxsJ10gPSAnQWxsZSc7CiRsYW5nWydhbnknXSA9ICdCZWxpZWJpZyc7CiRsYW5nWydhc2tfcmVhbGx5X3VuaW5zdGFsbCddID0gJ1NpbmQgU2llIHNpY2hlciwgZGFzcyBkaWVzIHR1biBtJm91bWw7Y2h0ZW4/IEZvcnRzZXR6dW5nIGYmdXVtbDtocnQgenVyIGVuZGcmdXVtbDtsdGlnZW4gTCZvdW1sO3NjaHVuZyBhbGxlciBEYXRlbiBmJnV1bWw7ciBkaWVzZXMgTW9kdWwnOwokbGFuZ1snY3JlYXRlZCddID0gJ0Vyc3RlbGx0JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRncm91cCddID0gJ1VuZyZ1dW1sO2x0aWdlIEdydXBwZSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkc29ydGZpZWxkJ10gPSAnVW5nJnV1bWw7bHRpZ2VzIFNvcnRpZXJmZWxkOiAlcyc7CiRsYW5nWydlcnJvcl9taXNzaW5ncGFyYW0nXSA9ICdVbnp1cmVpY2hlbmRlIFBhcmFtZXRlcic7CiRsYW5nWydlcnJvcl9ub2ZldSddID0gJ0RhcyBGcm9udGVuZC1CZW51dHplci1Nb2R1bCBrb25udGUgbmljaHQgZ2VmdW5kZW4gd2VyZGVuJzsKJGxhbmdbJ2Vycm9yX3VzZXJub3Rmb3VuZCddID0gJ0RlciBCZW51dHplciBtaXQgZGVyIGFuZ2VnZWJlbmVuIGlkIGtvbm50ZSBuaWNodCBnZWZ1bmRlbiB3ZXJkZW4nOwokbGFuZ1snZXhwaXJlcyddID0gJ0FibCZhdW1sO3VmdCc7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdCZW51dHplcnZlcnplaWNobmlzJzsKJGxhbmdbJ2dyb3VwcyddID0gJ0dydXBwZW4nOwokbGFuZ1snaGVscCddID0gJzxoMz5XaGF0IGRvZXMgdGhpcyBkbz88L2gzPg0KICA8cD5UaGlzIG1vZHVsZSBwcm92aWRlcyB0aGUgYWJpbGl0eSBmb3IgZ2VuZXJhdGluZyBhIGRpcmVjdG9yeSBvZiB1c2VycyBmcm9tIHRoZSBGRVUgbW9kdWxlLCBmb3IgZ2VuZXJhdGluZyBhIHN1bW1hcnkgdmlldyBvZiB1c2VycyBtYXRjaGluZyBzcGVjaWZpZWQgY3JpdGVyaWEsIGFuZCBmb3IgZGlzcGxheWluZyBhIGRldGFpbCByZXBvcnQgb2YgYSBzcGVjaWZpYyB1c2VyLiAgSXQgY2FuIGJlIHVzZWQgZm9yIGdlbmVyYXRpbmcgcHJvZmlsZSBwYWdlcyBmb3IgeW91ciB1c2Vycywgb3IgYSBzdGFmZiBkaXJlY3RvcnkuPC9wPg0KPGgzPkZlYXR1cmVzOjwvaDM+DQo8dWw+DQogIDxsaT5Db21wbGV0ZSB0ZW1wbGF0ZSBjb250cm9sDQo8cD5BbGwgZGlzcGxheXMgYXJlIGNvbXBsZXRlbHkgY29uZmlndXJhYmxlIGJ5IHRlbXBsYXRlcyBhbGxvd2luZyBmb3IgamF2YXNjcmlwdCwgYWpheCwgb3IgYW55IG90aGVyIGZhbmN5IGRpc3BsYXlzLiAgU3R5bGluZyBpcyBjb21wbGV0ZWx5IGNvbnRyb2xsYWJsZSBieSB0aGUgd2Vic2l0ZSBkZXZlbG9wZXIuPC9wPg0KICA8L2xpPg0KICA8bGk+TXVsdGlwbGUgZGF0YWJhc2UgdGVtcGxhdGVzLg0KPHA+WW91IGNhbiBjb25maWd1cmUgbXVsdGlwbGUgZGlmZmVyZW50IHZpZXdzIGZvciBlYWNoIGRpc3BsYXksIGFuZCB1c2UgdGhlbSB1bmRlciBkaWZmZXJlbnQgc2l0dWF0aW9ucy48L3A+DQogIDwvbGk+DQo8bGk+RmlsdGVyIHN1bW1hcnkgdmlld3Mgb24gdXNlciBwcm9wZXJ0aWVzLg0KICAgPHA+WW91IGNhbiBmaWx0ZXIgdGhlIG91dHB1dCBmb3IgdGhlIHN1bW1hcnkgdmlldyBiYXNlZCBvbiB0aGUgdmFsdWUgb2YgYSBzcGVjaWZpYyB1c2VyIHByb3BlcnR5IGZyb20gdGhlIEZFVSBtb2R1bGUuICBUaGlzIGFsc28gaW5jbHVkZXMgJnF1b3Q7TElLRSZxdW90OyBiYXNlZCBjcml0ZXJhLg0KICA8L2xpPg0KICA8bGk+U29ydGluZyBvbiBtdWx0aXBsZSBkaWZmZXJlbnQgY3JpdGVyaWEuPC9saT4NCiAgPGxpPlN1cHBvcnRzIFNFTyBmcmllbmRseSBVUkxTPC9saT4NCjwvdWw+DQo8aDM+SG93IGRvIEkgdXNlIGl0PzwvaDM+DQo8cD5UaGUgc2ltcGxlc3Qgd2F5IHRvIHVzZSB0aGlzIG1vZHVsZSBpcyB0byBwbGFjZSBhIHRhZyBsaWtlIHRoaXMgaW50byB5b3VyIHBhZ2UgdGVtcGxhdGUsIG9yIHBhZ2UgY29udGVudCA8Y29kZT57Q0dVc2VyRGlyZWN0b3J5fTwvY29kZT4uICBUbyBleHBhbmQgb24gdGhpcyBmdW5jdGlvbmFsaXR5LCBvciB0byBkaXNwbGF5IGEgc3Vic2V0IG9mIHlvdXIgdXNlcnMsIHNlZSB0aGUgcGFyYW1ldGVycyBiZWxvdy48L3A+DQo8aDM+RXhhbXBsZXM6PC9oMz4NCjx1bD4NCjxsaT5EaXNwbGF5IGEgZGlyZWN0b3J5IG9mIGFsbCB1c2VyczoNCjxwPjxjb2RlPntDR1VzZXJEaXJlY3RvcnkgYWN0aW9uPSZxdW90O2RpcmVjdG9yeSZxdW90O308L2NvZGU+PC9wPg0KPC9saT4NCjxsaT5EaXNwbGF5IGEgZGlyZWN0b3J5IG9mIGFsbCB1c2VycyBvcmdhbml6ZWQgYnkgY2l0eToNCjxwPjxjb2RlPntDR1VzZXJEaXJlY3RvcnkgYWN0aW9uPSZxdW90O2RpcmVjdG9yeSZxdW90OyBwcm9wPSZxdW90O2NpdHkmcXVvdDt9PC9jb2RlPjwvcD4NCjwvbGk+DQo8bGk+RGlzcGxheSBhIHN1bW1hcnkgbGlzdCBvZiBhbGwgdXNlcnMgaW4gdGhlICZxdW90O21lbWJlcnMmcXVvdDsgZ3JvdXA6DQo8cD48Y29kZT57Q0dVc2VyRGlyZWN0b3J5IGdyb3VwPSZxdW90O21lbWJlcnMmcXVvdDt9PC9jb2RlPjwvcD4NCjwvbGk+DQo8bGk+RGlzcGxheSBhIHN1bW1hcnkgbGlzdCBvZiBhbGwgdXNlcnMgaW4gdGhlIGNpdHkgb2YgY2FsZ2FyeToNCjxwPjxjb2RlPntDR1VzZXJEaXJlY3RvcnkgcHJvcD0mcXVvdDtjaXR5JnF1b3Q7IHByb3B2YWw9JnF1b3Q7Y2FsZ2FyeSZxdW90O308L2NvZGU+PC9wPg0KPC9saT4NCjxsaT5EaXNwbGF5IGEgc3VtbWFyeSBsaXN0IG9mIGFsbCB1c2VycyBmcm9tIGNvdW50cmllcyB0aGF0IGJlZ2luIHdpdGggQzoNCjxwPjxjb2RlPntDR1VzZXJEaXJlY3RvcnkgcHJvcD0mcXVvdDtjaXR5JnF1b3Q7IHVzZWxpa2U9MSBwcm9wdmFsPSZxdW90O2MlJnF1b3Q7fTwvY29kZT48L3A+DQo8L2xpPg0KDQo8L3VsPg0KDQo8aDM+Tm90ZXMgYWJvdXQgcHJldHR5IFVSTFM8L2gzPg0KPHA+JnF1b3Q7UHJldHR5JnF1b3Q7IG9yIFNFTyBmcmllbmRseSBVUkxTIGxpbWl0cyB0aGUgZmxleGliaWxpdHkgb2YgdGhpcyBtb2R1bGUsIGFuZCB0aGUgcGFyYW1ldGVycyB0aGF0IGNhbiBiZSBzcGVjaWZpZWQgb24gdGhlIHRhZy4gUGFydGljdWxhcmx5IHRob3NlIHRoYXQgY2FuIGJlIHBhc3NlZCBvbiB0byBzdWJzZXF1ZW50IHZpZXdzLiAgRm9yIHRoaXMgcmVhc29uLCB0aGUgZGlyZWN0b3J5IHZpZXcgZG9lcyBub3QgZ2VuZXJhdGUgcHJldHR5IHVybHMgdG8gdGhlIHN1YnNlcXVlbnQgc3VtbWFyeSBsaW5rcy4gIFRoaXMgYWxsb3dzIHBhcmFtZXRlcnMgbGlrZSBkZXRhaWxwYWdlLCBkZXRhaWx0ZW1wbGF0ZSwgYW5kIHN1bW1hcnl0ZW1wbGF0ZSB0byBiZSBwYXNzZWQgaW4gdGhlIHRhZyB0byB0aGUgZGlyZWN0b3J5IHZpZXcgYW5kIHRvIGhhdmUgdGhvc2UgcGFyYW1ldGVycyBwYXNzZWQgZG93biB0byB0aGUgc3Vic2VxdWVudCBzdW1tYXJ5IGRldGFpbCB2aWV3cy48L3A+DQo8L3A+DQo8aDM+U3VwcG9ydDwvaDM+DQo8cD5UaGlzIG1vZHVsZSBkb2VzIG5vdCBpbmNsdWRlIGNvbW1lcmNpYWwgc3VwcG9ydC4gSG93ZXZlciwgdGhlcmUgYXJlIGEgbnVtYmVyIG9mIHJlc291cmNlcyBhdmFpbGFibGUgdG8gaGVscCB5b3Ugd2l0aCBpdDo8L3A+DQo8dWw+DQo8bGk+Rm9yIHRoZSBsYXRlc3QgdmVyc2lvbiBvZiB0aGlzIG1vZHVsZSwgRkFRcywgb3IgdG8gZmlsZSBhIEJ1ZyBSZXBvcnQgb3IgYnV5IGNvbW1lcmNpYWwgc3VwcG9ydCwgcGxlYXNlIHZpc2l0IHRoZSBjbXMgZGV2ZWxvcG1lbnQgZm9yZ2UgYXQgPGEgaHJlZj0iaHR0cDovL2Rldi5jbXNtYWRlc2ltcGxlLm9yZyI+ZGV2LmNtc21hZGVzaW1wbGUub3JnPC9hPi48L2xpPg0KPGxpPkFkZGl0aW9uYWwgZGlzY3Vzc2lvbiBvZiB0aGlzIG1vZHVsZSBtYXkgYWxzbyBiZSBmb3VuZCBpbiB0aGUgPGEgaHJlZj0iaHR0cDovL2ZvcnVtLmNtc21hZGVzaW1wbGUub3JnIj5DTVMgTWFkZSBTaW1wbGUgRm9ydW1zPC9hPi48L2xpPg0KPGxpPlRoZSBhdXRob3IsIGNhbGd1eTEwMDAgYWxsIGNhbiBvZnRlbiBiZSBmb3VuZCBpbiB0aGUgPGEgaHJlZj0iaXJjOi8vaXJjLmZyZWVub2RlLm5ldC8jY21zIj5DTVMgSVJDIENoYW5uZWw8L2E+LjwvbGk+DQo8bGk+TGFzdGx5LCB5b3UgbWF5IGhhdmUgc29tZSBzdWNjZXNzIGVtYWlsaW5nIHRoZSBhdXRob3IocykgZGlyZWN0bHkuPC9saT4gIA0KPC91bD4NCg0KPGgzPkNvcHlyaWdodCBhbmQgTGljZW5zZTwvaDM+DQo8cD5Db3B5cmlnaHQgJmNvcHk7IDIwMDgsIFJvYmVydCBDYW1wYmVsIDxhIGhyZWY9Im1haWx0bzpjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnIj48Y2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZz48L2E+LiBBbGwgUmlnaHRzIEFyZSBSZXNlcnZlZC48L3A+DQo8cD5UaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQ0KaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkNCnRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yDQooYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLjwvcD4NCjxwPkhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZA0KYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlDQppbiBhbnkgTm9uIEdQTCB2ZXJzaW9uIG9mIENNUyBNYWRlIHNpbXBsZSwgb3IgaW4gYW55IHZlcnNpb24gb2YgQ01TDQpNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gDQpzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLjwvcD4NCjxwPlRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLA0KYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YNCk1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUNCkdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuDQpZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQ0KYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUNCkZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBDQpPciByZWFkIGl0IDxhIGhyZWY9Imh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTCI+b25saW5lPC9hPjwvcD4nOwokbGFuZ1snaGVscF9wYXJhbV9hY3Rpb24nXSA9ICdUaGlzIHBhcmFtZXRlciBjb250cm9scyB0aGUgYmVoYXZpb3VyIG9mIHRoZSBtb2R1bGUuICBUaGVyZSBhcmUgdGhyZWUgcG9zc2libGUgdmFsdWVzOg0KPHVsPg0KICA8bGk+YnJvd3NlICAtIERpc3BsYXkgYSBuYXZpZ2F0aW9uIG9mIHByb3BlcnR5IHZhbHVlcywgYW5kIGFsbG93IGRyaWxsaW5nIGRvd24gdG8gbWF0Y2hpbmcgc3VtbWFyeSB2aWV3cy48L2xpPg0KICA8bGk+ZGVmYXVsdCAtIERpc3BsYXlzIGEgc3VtbWFyeSB2aWV3IG9mIHVzZXJzIHRoYXQgbWF0Y2ggdGhlIHNwZWNpZmllZCBjcml0ZXJpYSwgb3IgYWxsIHVzZXJzIGlmIG5vIGNyaXRpZXJpYSBpcyBzcGVjaWZpZWQuPC9saT4NCiAgPGxpPmRpcmVjdG9yeSAtIERpc3BsYXlzIGFuIGFscGhhYmV0aWNhbCBkaXJlY3Rvcnkgb2YgbGlua3MgdG8gc3VtbWFyeSB2aWV3cyB0byB1c2VycyB0aGF0IG1hdGNoIHRoZSBzcGVjaWZpZWQgY3JpdGVyaWEuICBJdCBpcyBwb3NzaWJsZSB0byBjcmVhdGUgZGlyZWN0b3J5IHZpZXdzIG9uIHVzZXJuYW1lLCBvciBvbiBhbnkgb3RoZXIgcGFyYW1ldGVyPC9saT4NCiAgPGxpPmRldGFpbCAtIERpc3BsYXlzIGEgZGV0YWlsIHJlcG9ydCBhYm91dCBhIHNwZWNpZmljIHVzZXIuPC9saT4NCiAgPGxpPnNlYXJjaCAtIERpc3BsYXlzIGEgc2VhcmNoIGZvcm0uPC9saT4NCjwvdWw+JzsKJGxhbmdbJ2hlbHBfcGFyYW1fYnJvd3NlcHJvcHRlbXBsYXRlJ10gPSAnVGhpcyBwYXJhbWV0ZXIgYWxsb3dzIHNwZWNpZnlpbmcgYSBub24gZGVmYXVsdCBicm93c2UgcHJvcGVydHkgdGVtcGxhdGUgbmFtZSB0byB1c2UgZm9yIGEgcHJvcGVydHkgYnJvd3Npbmcgdmlldyc7CiRsYW5nWydoZWxwX3BhcmFtX2dyb3VwJ10gPSAnVXNlZCB3aXRoIHRoZSBkZWZhdWx0IGFjdGlvbiwgdGhpcyBwYXJhbWV0ZXIgc2hvdWxkIGNvbnRhaW4gdGhlIG5hbWUgb2YgYW4gRkVVIHVzZXIgZ3JvdXAsIGFuZCB3aWxsIGxpbWl0IHRoZSBvdXRwdXQgdG8gbWVtYmVycyBvZiB0aGF0IGdyb3VwJzsKJGxhbmdbJ2hlbHBfcGFyYW1fZ2lkJ10gPSAnVXNlZCB3aXRoIHRoZSBkZWZhdWx0IGFjdGlvbiwgdGhpcyBwYXJhbWV0ZXIgc2hvdWxkIGNvbnRhaW4gdGhlIGlkIG9mIGFuIEZFVSB1c2VyIGdyb3VwLCBhbmQgd2lsbCBsaW1pdCB0aGUgb3V0cHV0IHRvIG1lbWJlcnMgb2YgdGhhdCBncm91cC4gIFRoaXMgcGFyYW1ldGVyIGNhbm5vdCBiZSB1c2VkIGluIGNvbmp1bmN0aW9uIHdpdGggdGhlIGdyb3VwIHBhcmFtZXRlci4nOwokbGFuZ1snaGVscF9wYXJhbV9zaG93ZXhwaXJlZCddID0gJ0J5IGRlZmF1bHQsIHRoZSBzeXN0ZW0gd2lsbCBleGNsdWRlIGV4cGlyZWQgdXNlcnMgZnJvbSBhbnkgZ2VuZXJhdGVkIHJlcG9ydC4gIFNldHRpbmcgdGhpcyBwYXJhbWV0ZXIgdG8gMSB3aWxsIGluY2x1ZGUgdGhlc2UgdXNlcnMuJzsKJGxhbmdbJ2hlbHBfcGFyYW1fYnNvcnRieSddID0gJ1VzZWQgZm9yIHRoZSBicm93c2UgYWN0aW9uLCB0aGlzIHBhcmFtZXRlciBzcGVjaWZpZXMgdGhlIHNvcnQgb3JkZXIgb2YgdGhlIGdlbmVyYXRlZCBwcm9wZXJ0eSBvdXRwdXQuICBQb3NzaWJsZSB2YWx1ZXMgYXJlOg0KPHVsPg0KICA8bGk+bmFtZSAtIHRoZSBwcm9wZXJ0eSBuYW1lLjwvbGk+DQogIDxsaT5jb3VudCAtIHRoZSBudW1iZXIgb2YgbWF0Y2hlcy48L2xpPg0KPC91bD4nOwokbGFuZ1snaGVscF9wYXJhbV9zcGFyc2UnXSA9ICdBcHBsaWNhYmxlIG9ubHkgdG8gdGhlIGRpcmVjdG9yeSB2aWV3IHRoaXMgb3B0aW9uIHdpbGwgb25seSBzaG93IGEgZGlyZWN0b3J5ICBsZXR0ZXIgZm9yIHdoaWNoIHRoZXJlIGFyZSBtYXRjaGluZyB1c2Vycy4nOwokbGFuZ1snaGVscF9wYXJhbV9yZXN1bHRwYWdlJ10gPSAnVXNlZCBmb3IgdGhlIHNlYXJjaCwgYW5kIGJyb3dzZSBhY3Rpb25zLCB0aGlzIHBhcmFtZXRlciBzcGVjaWZpZXMgd2hpY2ggQ01TTVMgY29udGVudCBwYWdlIHNob3VsZCBiZSB1c2VkIHRvIGRpc3BsYXkgdGhlIG1hdGNoaW5nIGFydGljbGVzIGZyb20gdGhlIGZpbHRlciBvcGVyYXRpb24uJzsKJGxhbmdbJ2hlbHBfcGFyYW1fc29ydGJ5J10gPSAnVXNlZCBmb3IgdGhlIGRlZmF1bHQgYWN0aW9uLCB0aGlzIHBhcmFtZXRlciBzcGVjaWZpZXMgdGhlIHNvcnRpbmcgb2YgdGhlIGdlbmVyYXRlZCBzdW1tYXJ5IG91dHB1dC4gIFBvc3NpYmxlIHZhbHVlcyBhcmU6DQo8dWw+DQogPGxpPmlkIC0gVGhlIHVzZXJzIGlkIChkZWZhdWx0IHZpZXcgb25seSk8L2xpPg0KIDxsaT51c2VybmFtZSAtIFRoZSB1c2VycyB1c2VybmFtZSAoZGVmYXVsdCB2aWV3IG9ubHkpPC9saT4NCiA8bGk+Y3JlYXRlZGF0ZSAtIFRoZSBkYXRlIGF0IHdoaWNoIHRoZSB1c2VyIGFjY291bnQgd2FzIGNyZWF0ZWQuIChkZWZhdWx0IHZpZXcgb25seSk8L2xpPg0KIDxsaT5leHBpcmVzIC0gVGhlIGRhdGUgYXQgd2hpY2ggdGhlIHVzZXIgYWNjb3VudCB3aWxsIGV4cGlyZSAob3IgZGlkIGV4cGlyZSkuIChkZWZhdWx0IHZpZXcgb25seSk8L2xpPg0KIDxsaT5hY3Rpdml0eSAtIFRoZSBkYXRlIGF0IHdoaWNoIHRoZSB1c2VyIGFjY291bnQgd2FzIGxhc3QgbG9nZ2VkIGluIG9yIGxvZ2dlZCBvdXQuIChkZWZhdWx0IHZpZXcgb25seSk8L2xpPg0KIDxsaT5mOnByb3BlcnR5bmFtZSAtIFRoaXMgYWxsb3dzIHNvcnRpbmcgdGhlIG91dHB1dCBieSBhIHNwZWNpZmllZCBGRVUgcHJvcGVydHkgbmFtZS4gaS5lOiBmOmZ1bGxfbmFtZS4gIDxzdHJvbmc+Tm90ZTo8L3N0cm9uZz4geW91IG1heSBleHBlcmllbmNlIHVuZXhwZWN0ZWQgcmVzdWx0cyBpZiB0aGUgZ3JvdXAgYmVpbmcgZGlzcGxheWVkIGRvZXMgbm90IGhhdmUgdGhhdCBwcm9wZXJ0eSwgb3Igbm90IGV2ZXJ5IHVzZXIgaW4gdGhlIHJlc3VsdGluZyBzZXQgaGFzIHRoYXQgcHJvcGVydHkgZGVmaW5lZC4gIEFsc28sIHlvdSBtYXkgZXhwZXJpZW5jZSB1bmV4cGVjdGVkIHJlc3VsdHMgaWYgdGhlIGZpZWxkIHNwZWNpZmllZCBpcyBub3QgYSB0ZXh0IHN0cmluZy4gIFlvdSBtYXkgaGF2ZSB0byBhZGp1c3QgdGhlIHNvcnRvcmRlciBwYXJhbWV0ZXIgdG8gZ2V0IHRoZSBkZXNpcmVkIG91dHB1dDwvdWw+JzsKJGxhbmdbJ2hlbHBfcGFyYW1fYnNvcnRvcmRlciddID0gJ1VzZWQgZm9yIHRoZSBicm93c2UgYWN0aW9uLCB0aGlzIHBhcmFtZXRlciBzcGVjaWZpZXMgdGhlIHNvcnQgb3JkZXIgb2YgdGhlIGdlbmVyYXRlZCBvdXRwdXQuICBQb3NzaWJsZSB2YWx1ZXMgYXJlOg0KPHVsPg0KICA8bGk+QVNDIC0gQXNjZW5kaW5nIG9yZGVyPC9saT4NCiAgPGxpPkRFU0MgLSBEZXNjZW5kaW5nIG9yZGVyPC9saT4NCjwvdWw+JzsKJGxhbmdbJ2hlbHBfcGFyYW1fc29ydG9yZGVyJ10gPSAnVXNlZCBmb3IgdGhlIGRlZmF1bHQgYWN0aW9uLCB0aGlzIHBhcmFtZXRlciBzcGVjaWZpZXMgdGhlIHNvcnQgb3JkZXIgb2YgdGhlIGdlbmVyYXRlZCBvdXRwdXQuICBQb3NzaWJsZSB2YWx1ZXMgYXJlOg0KPHVsPg0KICA8bGk+QVNDIC0gQXNjZW5kaW5nIG9yZGVyPC9saT4NCiAgPGxpPkRFU0MgLSBEZXNjZW5kaW5nIG9yZGVyPC9saT4NCjwvdWw+JzsKJGxhbmdbJ2hlbHBfcGFyYW1fcGFnZWxpbWl0J10gPSAnVXNlZCBmb3IgdGhlIGRlZmF1bHQgYWN0aW9uLCB0aGlzIHBhcmFtZXRlciBzcGVjaWZpZXMgdGhlIG1heGltdW0gbnVtYmVyIG9mIGl0ZW1zIHRvIGJlIHJldHVybmVkLic7CiRsYW5nWydoZWxwX3BhcmFtX3Byb3AnXSA9ICdVc2VkIGZvciB0aGUgZGVmYXVsdCxicm93c2UgYW5kIGRpcmVjdG9yeSBhY3Rpb25zLCB0aGlzIHBhcmFtZXRlciBiZWhhdmVzIGluIHR3byBkaWZmZXJlbnQgd2F5cyBkZXBlbmRpbmcgdXBvbiB0aGUgYWN0aW9uOg0KPHVsPg0KICA8bGk+VGhlIGRlZmF1bHQgKHN1bW1hcnkpIGFjdGlvbg0KICAgIDxwPkluIHRoZSBkZWZhdWx0IChzdW1tYXJ5KSBhY3Rpb24sIHRoaXMgcGFyYW1ldGVyIGNhbiBiZSB1c2VkIHRvIHNwZWNpZnkgYSBwcm9wZXJ0eSB0byBmaWx0ZXIgdGhlIHJlc3VsdHMgYnkuICBJdCB3b3JrcyBpbiBjb25qdW5jdGlvbiB3aXRoIHRoZSBwcm9wdmFsIHBhcmFtZXRlciBiZWxvdy48L3A+DQogIDwvbGk+DQogIDxsaT5UaGUgYnJvd3NlIGFjdGlvbg0KICAgIDxwPkluIHRoZSBicm93c2UgYWN0aW9uLCB0aGlzIHBhcmFtZXRlciBjYW4gYmUgdXNlZCB0byBzcGVjaWZ5IGFuIEZFVSBwcm9wZXJ0eSB0byBicm93c2U8L3A+DQogIDwvbGk+DQogIDxsaT5UaGUgZGlyZWN0b3J5IGFjdGlvbi4NCiAgICA8cD5JbiB0aGUgZGlyZWN0b3J5IGFjdGlvbiwgdGhpcyBhcHJhbWV0ZXIgY2FuIGJlIHVzZWQgdG8gc3BlY2lmeSBhIHByb3BlcnR5IHRvIGdlbmVyYXRlIGEgZGlyZWN0b3J5IGZyb20uICAgVGhlIGRlZmF1bHQgdmFsdWUgaW4gdGhlIGRpcmVjdG9yeSBhY3Rpb24gaXMgJnF1b3Q7dXNlcm5hbWUmYW1wO3F1b3RlOzwvcD4NCiAgPC9saT4NCjwvdWw+JzsKJGxhbmdbJ2hlbHBfcGFyYW1fcHJvcHZhbCddID0gJ1VzZWQgaW4gY29uanVuY3Rpb24gd2l0aCB0aGUgJnF1b3Q7cHJvcCZxdW90OyBwYXJhbWV0ZXIgZm9yIHRoZSBkZWZhdWx0IChzdW1tYXJ5KSBhY3Rpb24sIHRoaXMgcGFyYW1ldGVyIGFsbG93cyBzcGVjaWZ5aW5nIGEgdmFsdWUgb24gd2hpY2ggdG8gZmlsdGVyIHVzZXJzIGJ5Lic7CiRsYW5nWydoZWxwX3BhcmFtX3VzZWxpa2UnXSA9ICdVc2VkIGluIGNvbmp1bmN0aW9uIHdpdGggdGhlICZxdW90O3Byb3AmcXVvdDsgYW5kICZxdW90O3Byb3B2YWwmcXVvdDsgcGFyYW1ldGVycywgdGhpcyBwYXJhbWV0ZXIsIGlmIHNldCB0byBhIHBvc2l0aXZlIGludGVnZXIgdmFsdWUgaW5kaWNhdGVzIHRoYXQgdGhlIHByb3B2YWwgcGFyYW1ldGVyIGNvbnRhaW5zIGEgTElLRSBleHByZXNzaW9uJzsKJGxhbmdbJ2hlbHBfcGFyYW1fZGV0YWlscGFnZSddID0gJ1RoaXMgcGFyYW1ldGVyLCBpZiBzcGVjaWZpZWQsIHNob3VsZCBjb250YWluIHRoZSBwYWdlaWQgb3IgYWxpYXMgb2YgYSBDTVMgY29udGVudCBwYWdlIG9uIHdoaWNoIHlvdSB3b3VsZCBsaWtlIHRvIHNob3cgYW55IGRldGFpbCByZXBvcnQnOwokbGFuZ1snaGVscF9wYXJhbV9zdW1tYXJ5dGVtcGxhdGUnXSA9ICdUaGlzIHBhcmFtZXRlciBhbGxvd3Mgc3BlY2lmeWluZyBhIG5vbiBkZWZhdWx0IHN1bW1hcnkgdGVtcGxhdGUgbmFtZSB0byB1c2UgZm9yIHN1bW1hcnkgZGlzcGxheXMnOwokbGFuZ1snaGVscF9wYXJhbV9kZXRhaWx0ZW1wbGF0ZSddID0gJ1RoaXMgcGFyYW1ldGVyIGFsbG93cyBzcGVjaWZ5aW5nIGEgbm9uIGRlZmF1bHQgZGV0YWlsIHRlbXBsYXRlIG5hbWUgdG8gdXNlIGZvciBkZXRhaWwgZGlzcGxheXMnOwokbGFuZ1snaGVscF9wYXJhbV9kaXJlY3Rvcnl0ZW1wbGF0ZSddID0gJ1RoaXMgcGFyYW1ldGVyIGFsbG93cyBzcGVjaWZ5aW5nIGEgbm9uIGRlZmF1bHQgZGlyZWN0b3J5IHRlbXBsYXRlIG5hbWUgdG8gdXNlIHdpdGggZGlyZWN0b3J5IGRpc3BsYXlzJzsKJGxhbmdbJ2hlbHBfcGFyYW1fc2VhcmNoZm9ybXRlbXBsYXRlJ10gPSAnVGhpcyBwYXJhbWV0ZXIgYWxsb3dzIHNwZWNpZnlpbmcgYSBub24gZGVmYXVsdCBzZWFyY2ggdGVtcGxhdGUgbmFtZSB0byB1c2UgaW4gc2VhcmNoIGZvcm1zJzsKJGxhbmdbJ2hlbHBfcGFyYW1fc2VhcmNocHJvcGVydHknXSA9ICdUaGlzIHBhcmFtZXRlciBhbGxvd3Mgc3BlY2lmeWluZyBhIHNpbmdsZSBvciBjb21tYSBzZXBhcmF0ZWQgbGlzdCBvZiBhZGRpdGlvbmFsIEZFVSBwcm9wZXJ0eSBuYW1lcyB0byBzdXBwbHkgaW4gdGhlIHNlYXJjaCBmb3JtJzsKJGxhbmdbJ2hlbHBfcGFyYW1fdWlkJ10gPSAnVXNlZCBpbiBjb25qdW5jdGlvbiB3aXRoIHRoZSBkZXRhaWwgZGlzcGxheSwgdGhpcyBwYXJhbWV0ZXIgbXVzdCBjb250YWluIHRoZSB1aWQgb2YgYSB2YWxpZCBmcm9udGVuZCB1c2VyIGFjY291bnQnOwokbGFuZ1snaW5mb19icm93c2Vwcm9wX3RlbXBsYXRlJ10gPSAnQnJvd3NlIFByb3BlcnR5IHRlbXBsYXRlcyBkaXNwbGF5IEEgbGlzdCBvZiB1bmlxdWUgdmFsdWVzIGZvciB0aGUgc3BlY2lmaWVkIHByb3BlcnR5LiAgRWFjaCBpdGVtIGluIHRoZSBsaXN0IGlzIGEgbGluayB0byBhIHN1bW1hcnkgdmlldyBjb250YWluaW5nIHRoZSBtYXRjaGluZyB1c2VycyB0aGF0IG1hdGNoIHRoYXQgcHJvcGVydHkgdmFsdWUuICBZb3UgbWF5IHVzZSBhbnkgc21hcnR5IGxvZ2ljIG9yIHZhcmlhYmxlcyB0aGF0IGhhdmUgYmVlbiBjcmVhdGVkIHByZXZpb3VzbHksIG9yIHRoZSBvbmVzIG1hZGUgYXZhaWxhYmlsaXR5IHNwZWNpZmljYWxseSBmb3IgdGhpcyB2aWV3Lic7CiRsYW5nWydpbmZvX2Jyb3dzZXByb3BfdGVtcGxhdGVzX3RhYiddID0gJ1RoaXMgdGFiIGNvbnRhaW5zIHRoZSBsaXN0IG9mIGF2YWlsYWJsZSBicm93c2UgcHJvcGVydHkgdmlldyB0ZW1wbGF0ZXMuICBPbmUgb2YgdGhlbSBpcyBtYXJrZWQgYXMgZGVmYXVsdC4gIFRoZSBkZWZhdWx0IG9uZSB3aWxsIGJlIHVzZWQgd2hlbiBubyBhbHRlcm5hdGUgdGVtcGxhdGUgbmFtZSBpcyBzdXBwbGllZCBvbiB0aGUgdGFnIHRoYXQgY2FsbHMgdGhpcyBtb2R1bGUnOwokbGFuZ1snaW5mb19kZXRhaWxfdGVtcGxhdGUnXSA9ICdEZXRhaWwgdGVtcGxhdGVzIGRpc3BsYXkgZGV0YWlsZWQgaW5mb3JtYXRpb24gYWJvdXQgYSBzcGVjaWZpYyBmcm9udGVuZCB1c2VyLiAgSGVyZSB5b3UgZGVzaWduIHRoZSB3YXkgaW4gd2hpY2ggeW91IHdhbnQgdGhhdCBpbmZvcm1hdGlvbiBsYWlkIG91dC4gIFlvdSBtYXkgdXNlIGFueSBzbWFydHkgbG9naWMgb3IgdmFyaWFibGVzIHRoYXQgaGF2ZSBiZWVuIGRlc2lnbmVkIHByZXZpb3VzbHksIG9yIHRoZSBvbmVzIG1hZGUgYXZhaWxhYmxlIHNwZWNpZmljYWxseSBmb3IgdGhpcyB2aWV3JzsKJGxhbmdbJ2luZm9fZGV0YWlsX3RlbXBsYXRlc190YWInXSA9ICdUaGlzIHRhYiBjb250YWlucyB0aGUgbGlzdCBvZiBhdmFpbGFibGUgZGV0YWlsIHZpZXcgdGVtcGxhdGVzLiAgT25lIG9mIHRoZW0gaXMgbWFya2VkIGFzIGRlZmF1bHQuICBUaGUgZGVmYXVsdCBvbmUgd2lsbCBiZSB1c2VkIHdoZW4gbm8gYWx0ZXJuYXRlIHRlbXBsYXRlIG5hbWUgaXMgc3VwcGxpZWQgb24gdGhlIHRhZyB0aGF0IGNhbGxzIHRoaXMgbW9kdWxlJzsKJGxhbmdbJ2luZm9fZGlyZWN0b3J5X3RlbXBsYXRlJ10gPSAnRGlyZWN0b3J5IHRlbXBsYXRlcyBkaXNwbGF5IGFuIGFscGhhYmV0aWNhbCBsaXN0IG9mIGxpbmtzLCB3aGVuIGEgbGluayBpcyBjbGlja2VkIGl0IHdpbGwgZGlzcGxheSBhIHN1bW1hcnkgdmlldyBvZiB0aGUgbWF0Y2hpbmcgdXNlcnMgZm9yIHRoYXQgbGV0dGVyLiAgSXQgaXMgcG9zc2libGUgdG8gY3JlYXRlIGRpcmVjdG9yaWVzIGJhc2VkIG9uIGRpZmZlcmVudCBwcm9wZXJ0aWVzLiAgSGVyZSB5b3UgZGVzaWduIHRoZSB3YXkgaW4gd2hpY2ggeW91IHdhbnQgdGhhdCBpbmZvcm1hdGlvbiBsYWlkIG91dC4gIFlvdSBtYXkgdXNlIGFueSBzbWFydHkgbG9naWMgb3IgdmFyaWFibGVzIHRoYXQgaGF2ZSBiZWVuIGRlc2lnbmVkIHByZXZpb3VzbHksIG9yIHRoZSBvbmVzIG1hZGUgYXZhaWxhYmxlIHNwZWNpZmljYWxseSBmb3IgdGhpcyB2aWV3JzsKJGxhbmdbJ2luZm9fZGlyZWN0b3J5X3RlbXBsYXRlc190YWInXSA9ICdUaGlzIHRhYiBjb250YWlucyB0aGUgbGlzdCBvZiBhdmFpbGFibGUgZGlyZWN0b3J5IHRlbXBsYXRlcy4gIE9uZSBvZiB0aGVtIGlzIG1hcmtlZCBhcyBkZWZhdWx0LiAgVGhlIGRlZmF1bHQgb25lIHdpbGwgYmUgdXNlZCB3aGVuIG5vIGFsdGVybmF0ZSB0ZW1wbGF0ZSBuYW1lIGlzIHN1cHBsaWVkIG9uIHRoZSB0YWcgdGhhdCBjYWxscyB0aGlzIG1vZHVsZSc7CiRsYW5nWydpbmZvX3N1bW1hcnlfdGVtcGxhdGUnXSA9ICdTdW1tYXJ5IHRlbXBsYXRlcyBkaXNwbGF5IGluZm9ybWF0aW9uIGFib3V0IGEgbGlzdCBvZiB1c2VycyB0aGF0IG1hdGNoIGEgY3JpdGVyaWEuICBIZXJlIHlvdSBkZXNpZ24gdGhlIHdheSBpbiB3aGljaCB5b3Ugd2FudCB0aGF0IGluZm9ybWF0aW9uIGxhaWQgb3V0LiAgWW91IG1heSB1c2UgYW55IHNtYXJ0eSBsb2dpYyBvciB2YXJpYWJsZXMgdGhhdCBoYXZlIGJlZW4gZGVzaWduZWQgcHJldmlvdXNseSwgb3IgdGhlIG9uZXMgbWFkZSBhdmFpbGFibGUgc3BlY2lmaWNhbGx5IGZvciB0aGlzIHZpZXcnOwokbGFuZ1snaW5mb19zZWFyY2hmb3JtX3RlbXBsYXRlJ10gPSAnU2VhcmNoIGZvcm0gdGVtcGxhdGVzIGRpc3BsYXkgQSBmb3JtIHRvIGFsbG93IHNlYXJjaGluZyBmb3IgYSBwYXJ0aWN1bGFyIHVzZXIgb3IgZ3JvdXAgb2YgdXNlcnMuICBIZXJlIHlvdSBkZXNpZ24gdGhlIHdheSBpbiB3aGljaCB5b3Ugd2FudCB0aGUgZm9ybSBkaXNwbGF5ZWQuICBZb3UgbWF5IHVzZSBhbnkgc21hcnR5IGxvZ2ljIG9yIHZhcmlhYmxlcyB0aGF0IGhhdmUgYmVlbiBkZXNpZ25lZCBwcmV2aW91c2x5LCBvciB0aGUgb25lcyBtYWRlIGF2YWlsYWJsZSBzcGVjaWZpY2FsbHkgZm9yIHRoaXMgdmlldyc7CiRsYW5nWydpbmZvX3NlYXJjaGZvcm1fdGVtcGxhdGVzX3RhYiddID0gJ1RoaXMgdGFiIGNvbnRhaW5zIHRoZSBsaXN0IG9mIGF2YWlsYWJsZSBzZWFyY2ggZm9ybSB0ZW1wbGF0ZXMuICBPbmUgb2YgdGhlbSBpcyBtYXJrZWQgYXMgZGVmYXVsdC4gIFRoZSBkZWZhdWx0IG9uZSB3aWxsIGJlIHVzZWQgd2hlbiBubyBhbHRlcm5hdGUgdGVtcGxhdGUgbmFtZSBpcyBzdXBwbGllZCBvbiB0aGUgdGFnIHRoYXQgY2FsbHMgdGhpcyBtb2R1bGUnOwokbGFuZ1snaW5mb19zdW1tYXJ5X3RlbXBsYXRlc190YWInXSA9ICdUaGlzIHRhYiBjb250YWlucyB0aGUgbGlzdCBvZiBhdmFpbGFibGUgc3VtbWFyeSB0ZW1wbGF0ZXMuICBPbmUgb2YgdGhlbSBpcyBtYXJrZWQgYXMgZGVmYXVsdC4gIFRoZSBkZWZhdWx0IG9uZSB3aWxsIGJlIHVzZWQgd2hlbiBubyBhbHRlcm5hdGUgdGVtcGxhdGUgbmFtZSBpcyBzdXBwbGllZCBvbiB0aGUgdGFnIHRoYXQgY2FsbHMgdGhpcyBtb2R1bGUnOwokbGFuZ1snaW5mb19zeXNkZmx0X2Jyb3dzZXByb3BfdGVtcGxhdGUnXSA9ICdTeXN0ZW0gRGVmYXVsdCBCcm93c2UgUHJvcGVydHkgVmlldyBUZW1wbGF0ZSc7CiRsYW5nWydpbmZvX3N5c2RmbHRfZGV0YWlsX3RlbXBsYXRlJ10gPSAnU3lzdGVtIERlZmF1bHQgRGV0YWlsIFZpZXcgVGVtcGxhdGUnOwokbGFuZ1snaW5mb19zeXNkZmx0X2RpcmVjdG9yeV90ZW1wbGF0ZSddID0gJ1N5c3RlbSBEZWZhdWx0IERpcmVjdG9yeSBUZW1wbGF0ZSc7CiRsYW5nWydpbmZvX3N5c2RmbHRfc2VhcmNoZm9ybV90ZW1wbGF0ZSddID0gJ1N5c3RlbSBEZWZhdWx0IFNlYXJjaCBGb3JtIFRlbXBsYXRlJzsKJGxhbmdbJ2luZm9fc3lzZGZsdF9zdW1tYXJ5X3RlbXBsYXRlJ10gPSAnU3lzdGVtIERlZmF1bHQgU3VtbWFyeSBWaWV3IFRlbXBsYXRlJzsKJGxhbmdbJ2luZm9fc3lzZGZsdF90ZW1wbGF0ZSddID0gJ0FsdGVyaW5nIHRoaXMgdGVtcGxhdGUgd2lsbCBoYXZlIG5vIGltbWVkaWF0ZSBlZmZlY3Qgb24gYW55IG91dHB1dC4gIFRoaXMgZm9ybSBjb250cm9scyB0aGUgdmFsdWUgb2YgdGhlIHRlbXBsYXRlIHRoYXQgaXMgY3JlYXRlZCB3aGVuIHlvdSBjbGljayAmcXVvdDtOZXcgVGVtcGxhdGUmcXVvdDsgaW4gdGhlIGFwcHJvcHJpYXRlIHRlbXBsYXRlIHRhYi4nOwokbGFuZ1snbGFzdF9hY3RpdmUnXSA9ICd6dWxldHp0IGFrdGl2JzsKJGxhbmdbJ2xibF9icm93c2Vwcm9wdGVtcGxhdGVzJ10gPSAnRHVyY2hzdWNoZSBFaWdlbnNjaGFmdGVuLVRlbXBsYXRlJzsKJGxhbmdbJ2xibF9kZWZhdWx0dGVtcGxhdGVzJ10gPSAnU3RhbmRhcmR2b3JsYWdlbic7CiRsYW5nWydsYmxfZGV0YWlsdGVtcGxhdGVzJ10gPSAnRGV0YWlsYW5zaWNodHN2b3JsYWdlbic7CiRsYW5nWydsYmxfZGlyZWN0b3J5dGVtcGxhdGVzJ10gPSAnVmVyemVpY2huaXN2b3JsYWdlbic7CiRsYW5nWydsYmxfZmlyc3RfcGFnZSddID0gJ3p1ciBlcnN0ZW4gU2VpdGUnOwokbGFuZ1snbGJsX2xhc3RfcGFnZSddID0gJ3p1ciBsZXR6dGVuIFNlaXRlJzsKJGxhbmdbJ2xibF9uZXh0X3BhZ2UnXSA9ICd6dXIgbiZhdW1sO2Noc3RlbiBTZWl0ZSc7CiRsYW5nWydsYmxfcHJldl9wYWdlJ10gPSAnenVyIHZvcmlnZW4gU2VpdGUnOwokbGFuZ1snbGJsX3NlYXJjaGZvcm10ZW1wbGF0ZXMnXSA9ICdTdWNoZm9ybXVsYXJ2b3JsYWdlbic7CiRsYW5nWydsYmxfc2V0dGluZ3MnXSA9ICdFaW5zdGVsbHVuZ2VuJzsKJGxhbmdbJ2xibF9zdW1tYXJ5dGVtcGxhdGVzJ10gPSAnWnVzYW1tZW5mYXNzdW5nc3ZvcmxhZ2VuJzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnQSBtb2R1bGUgYWxsb3dpbmcgc2VhcmNoaW5nLCBicm93c2luZywgYW5kIHZpZXdpbmcgZGV0YWlscyBhYm91dCBmcm9udGVuZCB1c2Vycyc7CiRsYW5nWydvZiddID0gJ3Zvbic7CiRsYW5nWydwYWdlJ10gPSAnU2VpdGUnOwokbGFuZ1sncG9zdGluc3RhbGwnXSA9ICdUaGUgQ0dVc2VyRGlyZWN0b3J5IG1vZHVsZSBpcyBub3cgcmVhZHkgZm9yIGNvbmZpZ3VyYXRpb24nOwokbGFuZ1sncG9zdHVuaW5zdGFsbCddID0gJ1RoZSBDR1VzZXJkaXJlY3RvcnkgbW9kdWxlLCBhbmQgYWxsIGFzc29jaWF0ZWQgZGF0YSBoYXMgYmVlbiB1bmluc3RhbGxlZCBmcm9tIHRoZSBkYXRhYmFzZSc7CiRsYW5nWydyZXN1bHRzX2FsbF9hbnknXSA9ICdSZXR1cm4gcmVzdWx0cyB0aGF0IG1hdGNoIGFsbCwgb3IgYW55IG9mIHRoZSBjb25kaXRpb25zIHNwZWNpZmllZCc7CiRsYW5nWydzdWJtaXQnXSA9ICdBYnNlbmRlbic7CiRsYW5nWyd1c2VybmFtZSddID0gJ0JlbnV0emVybmFtZSc7CiRsYW5nWydxY2EnXSA9ICdQMC0xNDU4NDUwNjY0LTEyODQ1NzMwODQ5MTgnOwokbGFuZ1sndXRteiddID0gJzE1Njg2MTM1My4xMjkzNzk0NTI4Ljc2Mi40NS51dG1jc3I9Zm9ydW0uY21zbWFkZXNpbXBsZS5vcmd8dXRtY2NuPShyZWZlcnJhbCl8dXRtY21kPXJlZmVycmFsfHV0bWNjdD0vaW5kZXgucGhwJzsKJGxhbmdbJ3V0bWEnXSA9ICcxNTY4NjEzNTMuMTE2NDM2MTkwOC4xMjg1MTUzNzY4LjEyOTM5OTQ3NzEuMTI5Mzk5NzI5MS43NzcnOwokbGFuZ1sndXRtYyddID0gJzE1Njg2MTM1Myc7CiRsYW5nWyd1dG1iJ10gPSAnMTU2ODYxMzUzLjMuMTAuMTI5Mzk5NzI5MSc7Cj8+]]></data>
	</file>
	<file>
	  <filename>/lang/ext/fr_FR.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2FkZGVkaXRfYnJvd3NlcHJvcF90ZW1wbGF0ZSddID0gJ0Fqb3V0ZXIvRWRpdGVyIHVuIGdhYmFyaXQgZGUgcHJvcHJpJmVhY3V0ZTt0JmVhY3V0ZTsgZGUgcmVjaGVyY2hlJm5ic3A7JzsKJGxhbmdbJ2FkZGVkaXRfZGV0YWlsX3RlbXBsYXRlJ10gPSAnQWpvdXRlci9FZGl0ZXIgdW4gZ2FiYXJpdCBkZSBkJmVhY3V0ZTt0YWlsJm5ic3A7JzsKJGxhbmdbJ2FkZGVkaXRfZGlyZWN0b3J5X3RlbXBsYXRlJ10gPSAnQWpvdXRlci9FZGl0ZXIgdW4gZ2FiYXJpdCBkZSByJmVhY3V0ZTtwZXJ0b2lyZSZuYnNwOyc7CiRsYW5nWydhZGRlZGl0X3NlYXJjaGZvcm1fdGVtcGxhdGUnXSA9ICdBam91dGVyL0VkaXRlciB1biBnYWJhcml0IGRlIHJlY2hlcmNoZSZuYnNwOyc7CiRsYW5nWydhZGRlZGl0X3N1bW1hcnlfdGVtcGxhdGUnXSA9ICdBam91dGVyL0VkaXRlciB1biBnYWJhcml0IGRlIHImZWFjdXRlO3N1bSZlYWN1dGU7Jm5ic3A7JzsKJGxhbmdbJ2FsbCddID0gJ1RvdXMnOwokbGFuZ1snYW55J10gPSAnTiYjMDM5O2ltcG9ydGUgbGVxdWVsJzsKJGxhbmdbJ2Fza19yZWFsbHlfdW5pbnN0YWxsJ10gPSAnJkVjaXJjO3Rlcy12b3VzIHMmdWNpcmM7ciBkZSB2b3Vsb2lyIGZhaXJlIGNlbGEgPyBDZWxhIHZhIHN1cHByaW1lciBkJmVhY3V0ZTtmaW5pdGl2ZW1lbnQgdG91dGVzIGxlcyBkb25uJmVhY3V0ZTtlcyBhc3NvY2kmZWFjdXRlO2VzICZhZ3JhdmU7IGNlIG1vZHVsZS4nOwokbGFuZ1snY3JlYXRlZCddID0gJ0NyJmVhY3V0ZTsmZWFjdXRlOyZuYnNwOyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZ3JvdXAnXSA9ICdHcm91cGUgaW52YWxpZGUnOwokbGFuZ1snZXJyb3JfaW52YWxpZHNvcnRmaWVsZCddID0gJ0NoYW1wIGRlIHRyaSBpbnZhbGlkZSZuYnNwOzogJXMnOwokbGFuZ1snZXJyb3JfbWlzc2luZ3BhcmFtJ10gPSAnUGFyYW0mZWdyYXZlO3RyZXMgaW5zdWZmaXNhbnRzJzsKJGxhbmdbJ2Vycm9yX25vZmV1J10gPSAnTGUgbW9kdWxlIEZyb250ZW5kIFVzZXJzIG5lIHBldXQgcGFzICZlY2lyYzt0cmUgdHJvdXYmZWFjdXRlOyc7CiRsYW5nWydlcnJvcl91c2Vybm90Zm91bmQnXSA9ICdMJiMwMzk7dXRpbGlzYXRldXIgYXZlYyBsJiMwMzk7aWQgc3AmZWFjdXRlO2NpZmkmZWFjdXRlOyBuJiMwMzk7YSBwYXMgcHUgJmVjaXJjO3RyZSB0cm91diZlYWN1dGU7JzsKJGxhbmdbJ2V4cGlyZXMnXSA9ICdFeHBpcmUmbmJzcDsnOwokbGFuZ1snZnJpZW5kbHluYW1lJ10gPSAnUiZlYWN1dGU7cGVydG9pcmUgZGVzIHV0aWxpc2F0ZXVycyAoQ0cpJzsKJGxhbmdbJ2dyb3VwcyddID0gJ0dyb3VwZXMmbmJzcDsnOwokbGFuZ1snaGVscCddID0gJzxoMz5RdWUgZmFpdCBjZSBtb2R1bGUgPzwvaDM+DQo8cD4gQ2UgbW9kdWxlIG9mZnJlIGxhIHBvc3NpYmlsaXQmZWFjdXRlOyBkZSBnJmVhY3V0ZTtuJmVhY3V0ZTtyZXIgdW4gciZlYWN1dGU7cGVydG9pcmUgZGVzIHV0aWxpc2F0ZXVycyBkdSBtb2R1bGUgRkVVLCBwb3VyIGcmZWFjdXRlO24mZWFjdXRlO3JlciB1bmUgdnVlIHImZWFjdXRlO3N1bSZlYWN1dGU7ZSBkZXMgdXRpbGlzYXRldXJzIHNlbG9uIGRlcyBjcml0JmVncmF2ZTtyZXMgZCZlYWN1dGU7ZmluaXMsIGV0IHBvdXIgYWZmaWNoZXIgZGVzIGluZm9ybWF0aW9ucyBkJmVhY3V0ZTt0YWlsbCZlYWN1dGU7ZXMgc3VyIHVuIHV0aWxpc2F0ZXVyIHNwJmVhY3V0ZTtjaWZpJmVhY3V0ZTsuIElsIHBldXQgJmVjaXJjO3RyZSB1dGlsaXMmZWFjdXRlOyBwb3VyIGFmZmljaGVyIHVuZSBwYWdlIGRlIHByb2ZpbCBkJiMwMzk7dXRpbGlzYXRldXIsIG91IHVuZSBsaXN0ZSBkZSBtZW1icmVzIHBhciBleGVtcGxlLjwvcD4NCjxoMz5DYXJhY3QmZWFjdXRlO3Jpc3RpcXVlcyA6PC9oMz4NCjx1bD4NCiAgPGxpPlVuIGNvbnRyJm9jaXJjO2xlIGludCZlYWN1dGU7Z3JhbCBkdSBnYWJhcml0DQo8cD5BbGwgZGlzcGxheXMgYXJlIGNvbXBsZXRlbHkgY29uZmlndXJhYmxlIGJ5IHRlbXBsYXRlcyBhbGxvd2luZyBmb3IgamF2YXNjcmlwdCwgYWpheCwgb3IgYW55IG90aGVyIGZhbmN5IGRpc3BsYXlzLiAgU3R5bGluZyBpcyBjb21wbGV0ZWx5IGNvbnRyb2xsYWJsZSBieSB0aGUgd2Vic2l0ZSBkZXZlbG9wZXIuPC9wPg0KICA8L2xpPg0KICA8bGk+TXVsdGlwbGUgZGF0YWJhc2UgdGVtcGxhdGVzLg0KPHA+WW91IGNhbiBjb25maWd1cmUgbXVsdGlwbGUgZGlmZmVyZW50IHZpZXdzIGZvciBlYWNoIGRpc3BsYXksIGFuZCB1c2UgdGhlbSB1bmRlciBkaWZmZXJlbnQgc2l0dWF0aW9ucy48L3A+DQogIDwvbGk+DQo8bGk+RmlsdGVyIHN1bW1hcnkgdmlld3Mgb24gdXNlciBwcm9wZXJ0aWVzLg0KICAgPHA+WW91IGNhbiBmaWx0ZXIgdGhlIG91dHB1dCBmb3IgdGhlIHN1bW1hcnkgdmlldyBiYXNlZCBvbiB0aGUgdmFsdWUgb2YgYSBzcGVjaWZpYyB1c2VyIHByb3BlcnR5IGZyb20gdGhlIEZFVSBtb2R1bGUuICBUaGlzIGFsc28gaW5jbHVkZXMgJnF1b3Q7TElLRSZxdW90OyBiYXNlZCBjcml0ZXJhLg0KICA8L2xpPg0KICA8bGk+VHJpZXIgZW4gZm9uY3Rpb24gZGUgY3JpdCZlZ3JhdmU7cmVzIG11bHRpcGxlczwvbGk+DQogIDxsaT5TdXBwb3J0IGRlIGxhIHImZWFjdXRlOy0mZWFjdXRlO2NyaXR1cmUgZCYjMDM5O1VSTDwvbGk+DQo8L3VsPg0KPGgzPkNvbW1lbnQgbCYjMDM5O3V0aWxpc2VyID88L2gzPg0KPHA+TGUgbW95ZW4gbGUgcGx1cyBzaW1wbGUgZGUgbCYjMDM5O3V0aWxpc2VyIGV0IGRlIHBsYWNlciBsZSB0YWcgPGNvZGU+e0NHVXNlckRpcmVjdG9yeX08L2NvZGU+IGRhbnMgdm90cmUgZ2FiYXJpdCBvdSBsYSBwYWdlIGQmZWFjdXRlO3NpciZlYWN1dGU7ZS4gUG91ciBham91dGVyIGRlcyBwYXJhbSZlZ3JhdmU7dHJlcywgdm91cyBwb3V2ZXogdXRpbGlzZXIgbGVzIGV4ZW1wbGVzIHN1aXZhbnRzLjwvcD4NCjxoMz5FeGVtcGxlcyA6PC9oMz4NCjx1bD4NCjxsaT5SJmVhY3V0ZTtwZXJ0b3JpZXIgdG91cyBsZXMgdXRpbGlzYXRldXJzIDoNCjxwPjxjb2RlPntDR1VzZXJEaXJlY3RvcnkgYWN0aW9uPSZxdW90O2RpcmVjdG9yeSZxdW90O308L2NvZGU+PC9wPg0KPC9saT4NCjxsaT5SJmVhY3V0ZTtwZXJ0b3JpZXIgdG91cyBsZXMgdXRpbGlzYXRldXJzIGVuIGZvbmN0aW9uIGRlIGxhIHZpbGxlOg0KPHA+PGNvZGU+e0NHVXNlckRpcmVjdG9yeSBhY3Rpb249JnF1b3Q7ZGlyZWN0b3J5JnF1b3Q7IHByb3A9JnF1b3Q7dmlsbGUmcXVvdDt9PC9jb2RlPjwvcD4NCjwvbGk+DQo8bGk+QWZmaWNoZXIgdW5lIGxpc3RlIHImZWFjdXRlO3N1bWFudCB0b3VzIGxlcyB1dGlsaXNhdGV1cnMgZHUgZ3JvdXBlICZxdW90O21lbWJyZXMmcXVvdDsgOg0KPHA+PGNvZGU+e0NHVXNlckRpcmVjdG9yeSBncm91cD0mcXVvdDttZW1icmVzJnF1b3Q7fTwvY29kZT48L3A+DQo8L2xpPg0KPGxpPkFmZmljaGVyIHRvdXMgbGVzIHV0aWxpc2F0ZXVycyBheWFudCBwb3VyIHZpbGxlICZxdW90O1BlcnBpZ25hbiZxdW90OyA6DQo8cD48Y29kZT57Q0dVc2VyRGlyZWN0b3J5IHByb3A9JnF1b3Q7dmlsbGUmcXVvdDsgcHJvcHZhbD0mcXVvdDtwZXJwaWduYW4mcXVvdDt9PC9jb2RlPjwvcD4NCjwvbGk+DQo8bGk+RGlzcGxheSBhIHN1bW1hcnkgbGlzdCBvZiBhbGwgdXNlcnMgZnJvbSBjb3VudHJpZXMgdGhhdCBiZWdpbiB3aXRoIEM6DQo8cD48Y29kZT57Q0dVc2VyRGlyZWN0b3J5IHByb3A9JnF1b3Q7Y2l0eSZxdW90OyB1c2VsaWtlPTEgcHJvcHZhbD0mcXVvdDtjJSZxdW90O308L2NvZGU+PC9wPg0KPC9saT4NCjwvdWw+DQoNCjxoMz5Ob3RlcyBhdSBzdWpldCBkZXMgJnF1b3Q7UHJldHR5IFVSTHMmcXVvdDsgKHImZWFjdXRlOy0mZWFjdXRlO2NyaXR1cmUgZCYjMDM5O1VSTCk8L2gzPg0KPHA+JnF1b3Q7UHJldHR5JnF1b3Q7IG9yIFNFTyBmcmllbmRseSBVUkxTIGxpbWl0cyB0aGUgZmxleGliaWxpdHkgb2YgdGhpcyBtb2R1bGUsIGFuZCB0aGUgcGFyYW1ldGVycyB0aGF0IGNhbiBiZSBzcGVjaWZpZWQgb24gdGhlIHRhZy4gUGFydGljdWxhcmx5IHRob3NlIHRoYXQgY2FuIGJlIHBhc3NlZCBvbiB0byBzdWJzZXF1ZW50IHZpZXdzLiAgRm9yIHRoaXMgcmVhc29uLCB0aGUgZGlyZWN0b3J5IHZpZXcgZG9lcyBub3QgZ2VuZXJhdGUgcHJldHR5IHVybHMgdG8gdGhlIHN1YnNlcXVlbnQgc3VtbWFyeSBsaW5rcy4gIFRoaXMgYWxsb3dzIHBhcmFtZXRlcnMgbGlrZSBkZXRhaWxwYWdlLCBkZXRhaWx0ZW1wbGF0ZSwgYW5kIHN1bW1hcnl0ZW1wbGF0ZSB0byBiZSBwYXNzZWQgaW4gdGhlIHRhZyB0byB0aGUgZGlyZWN0b3J5IHZpZXcgYW5kIHRvIGhhdmUgdGhvc2UgcGFyYW1ldGVycyBwYXNzZWQgZG93biB0byB0aGUgc3Vic2VxdWVudCBzdW1tYXJ5IGRldGFpbCB2aWV3cy48L3A+DQo8L3A+DQo8aDM+U3VwcG9ydDwvaDM+DQo8cD5UaGlzIG1vZHVsZSBkb2VzIG5vdCBpbmNsdWRlIGNvbW1lcmNpYWwgc3VwcG9ydC4gSG93ZXZlciwgdGhlcmUgYXJlIGEgbnVtYmVyIG9mIHJlc291cmNlcyBhdmFpbGFibGUgdG8gaGVscCB5b3Ugd2l0aCBpdDo8L3A+DQo8dWw+DQo8bGk+Rm9yIHRoZSBsYXRlc3QgdmVyc2lvbiBvZiB0aGlzIG1vZHVsZSwgRkFRcywgb3IgdG8gZmlsZSBhIEJ1ZyBSZXBvcnQgb3IgYnV5IGNvbW1lcmNpYWwgc3VwcG9ydCwgcGxlYXNlIHZpc2l0IHRoZSBjbXMgZGV2ZWxvcG1lbnQgZm9yZ2UgYXQgPGEgaHJlZj0iaHR0cDovL2Rldi5jbXNtYWRlc2ltcGxlLm9yZyI+ZGV2LmNtc21hZGVzaW1wbGUub3JnPC9hPi48L2xpPg0KPGxpPkFkZGl0aW9uYWwgZGlzY3Vzc2lvbiBvZiB0aGlzIG1vZHVsZSBtYXkgYWxzbyBiZSBmb3VuZCBpbiB0aGUgPGEgaHJlZj0iaHR0cDovL2ZvcnVtLmNtc21hZGVzaW1wbGUub3JnIj5DTVMgTWFkZSBTaW1wbGUgRm9ydW1zPC9hPi48L2xpPg0KPGxpPlRoZSBhdXRob3IsIGNhbGd1eTEwMDAgYWxsIGNhbiBvZnRlbiBiZSBmb3VuZCBpbiB0aGUgPGEgaHJlZj0iaXJjOi8vaXJjLmZyZWVub2RlLm5ldC8jY21zIj5DTVMgSVJDIENoYW5uZWw8L2E+LjwvbGk+DQo8bGk+TGFzdGx5LCB5b3UgbWF5IGhhdmUgc29tZSBzdWNjZXNzIGVtYWlsaW5nIHRoZSBhdXRob3IocykgZGlyZWN0bHkuPC9saT4gIA0KPC91bD4NCg0KPGgzPkNvcHlyaWdodCBhbmQgTGljZW5zZTwvaDM+DQo8cD5Db3B5cmlnaHQgJmNvcHk7IDIwMDgsIFJvYmVydCBDYW1wYmVsIDxhIGhyZWY9Im1haWx0bzpjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnIj48Y2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZz48L2E+LiBBbGwgUmlnaHRzIEFyZSBSZXNlcnZlZC48L3A+DQo8cD5UaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQ0KaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkNCnRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yDQooYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLjwvcD4NCjxwPkhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZA0KYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlDQppbiBhbnkgTm9uIEdQTCB2ZXJzaW9uIG9mIENNUyBNYWRlIHNpbXBsZSwgb3IgaW4gYW55IHZlcnNpb24gb2YgQ01TDQpNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gDQpzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLjwvcD4NCjxwPlRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLA0KYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YNCk1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUNCkdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuDQpZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQ0KYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUNCkZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBDQpPciByZWFkIGl0IDxhIGhyZWY9Imh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTCI+b25saW5lPC9hPjwvcD4nOwokbGFuZ1snaGVscF9wYXJhbV9hY3Rpb24nXSA9ICdDZXMgcGFyYW0mZWdyYXZlO3RyZXMgY29udHImb2NpcmM7bGVudCBsZSBjb21wb3J0ZW1lbnQgZHUgbW9kdWxlLiAgSWwgeSBhIHRyb2lzIHBvc3NpYmlsaXQmZWFjdXRlO3MgOg0KPHVsPg0KPGxpPmJyb3dzZSAgLSBEaXNwbGF5IGEgbmF2aWdhdGlvbiBvZiBwcm9wZXJ0eSB2YWx1ZXMsIGFuZCBhbGxvdyBkcmlsbGluZyBkb3duIHRvIG1hdGNoaW5nIHN1bW1hcnkgdmlld3MuPC9saT4NCiAgPGxpPmRlZmF1bHQgLSBEaXNwbGF5cyBhIHN1bW1hcnkgdmlldyBvZiB1c2VycyB0aGF0IG1hdGNoIHRoZSBzcGVjaWZpZWQgY3JpdGVyaWEsIG9yIGFsbCB1c2VycyBpZiBubyBjcml0aWVyaWEgaXMgc3BlY2lmaWVkLjwvbGk+DQogIDxsaT5kaXJlY3RvcnkgLSBEaXNwbGF5cyBhbiBhbHBoYWJldGljYWwgZGlyZWN0b3J5IG9mIGxpbmtzIHRvIHN1bW1hcnkgdmlld3MgdG8gdXNlcnMgdGhhdCBtYXRjaCB0aGUgc3BlY2lmaWVkIGNyaXRlcmlhLiAgSXQgaXMgcG9zc2libGUgdG8gY3JlYXRlIGRpcmVjdG9yeSB2aWV3cyBvbiB1c2VybmFtZSwgb3Igb24gYW55IG90aGVyIHBhcmFtZXRlcjwvbGk+DQogIDxsaT5kZXRhaWwgLSBEaXNwbGF5cyBhIGRldGFpbCByZXBvcnQgYWJvdXQgYSBzcGVjaWZpYyB1c2VyLjwvbGk+DQo8bGk+c2VhcmNoIC0gRGlzcGxheXMgYSBzZWFyY2ggZm9ybS48L2xpPg0KPC91bD4nOwokbGFuZ1snaGVscF9wYXJhbV9icm93c2Vwcm9wdGVtcGxhdGUnXSA9ICdDZSBwYXJhbSZlZ3JhdmU7dHJlIHBlcm1ldCBkZSBzcCZlYWN1dGU7Y2lmaWVyIGF1Y3VuZSB2YWxldXIgcGFyIGQmZWFjdXRlO2ZhdXQgcG91ciBsYSByZWNoZXJjaGUgcG91ciBwYXJjb3VyaXIgbGUgbm9tIGR1IGdhYmFyaXQgJmFncmF2ZTsgdXRpbGlzZXInOwokbGFuZ1snaGVscF9wYXJhbV9ncm91cCddID0gJ1V0aWxpcyZlYWN1dGU7IGF2ZWMgbCYjMDM5O2FjdGlvbiBwYXIgZCZlYWN1dGU7ZmF1dCwgY2UgcGFyYW0mZWdyYXZlO3RyZSBkb2l0IGNvbnRlbmlyIGxlIG5vbSBkJiMwMzk7dW4gZ3JvdXBlIGQmIzAzOTt1dGlsaXNhdGV1cnMgRkVVLCBldCBsaW1pdGUgbGEgc29ydGllIGF1eCBtZW1icmVzIGR1IGdyb3VwZSc7CiRsYW5nWydoZWxwX3BhcmFtX2dpZCddID0gJ1V0aWxpcyZlYWN1dGU7IGF2ZWMgbCYjMDM5O2FjdGlvbiBwYXIgZCZlYWN1dGU7ZmF1dCwgY2UgcGFyYW0mZWdyYXZlO3RyZSBkb2l0IGNvbnRlbmlyIGwmIzAzOTtJRCBkJiMwMzk7dW4gZ3JvdXBlIGQmIzAzOTt1dGlsaXNhdGV1cnMgRkVVLCBldCBsaW1pdGUgbGEgc29ydGllIGF1eCBtZW1icmVzIGRlIGNlIGdyb3VwZS4gQ2UgcGFyYW0mZWdyYXZlO3RyZSBuZSBwZXV0IHBhcyAmZWNpcmM7dHJlIHV0aWxpcyZlYWN1dGU7IGVuIGNvbmpvbmN0aW9uIGF2ZWMgbGUgcGFyYW0mZWdyYXZlO3RyZSBncm91cGUuJzsKJGxhbmdbJ2hlbHBfcGFyYW1fc2hvd2V4cGlyZWQnXSA9ICdQYXIgZCZlYWN1dGU7ZmF1dCwgbGUgc3lzdCZlZ3JhdmU7bWUgdmEgZXhjbHVyZSBkdSByYXBwb3J0IHRvdXMgbGVzIHV0aWxpc2F0ZXVycyBleHBpciZlYWN1dGU7cy4gTWV0dHJlIHNlIHBhcmFtJmVncmF2ZTt0cmUgJmFncmF2ZTsgMSB2YSBpbmNsdXJlIGNlcyB1dGlsaXNhdGV1cnMuJzsKJGxhbmdbJ2hlbHBfcGFyYW1fYnNvcnRieSddID0gJ1V0aWxpcyZlYWN1dGU7IHBvdXIgbCYjMDM5O2FjdGlvbiBicm93c2UsIGNlIHBhcmFtJmVncmF2ZTt0cmUgZCZlYWN1dGU7ZmluaSBsJiMwMzk7b3JkcmUgZGUgdHJpIGRlIGxhIHNvcnRpZSBkZXMgcHJvcHJpJmVhY3V0ZTt0JmVhY3V0ZTtzIGcmZWFjdXRlO24mZWFjdXRlO3ImZWFjdXRlO2VzLiAgTGVzIHZhbGV1cnMgcG9zc2libGVzIHNvbnQgOg0KPHVsPg0KICA8bGk+bmFtZSAtIGxlIG5vbSBkZSBsYSBwcm9wcmkmZWFjdXRlO3QmZWFjdXRlOzwvbGk+DQogIDxsaT5jb3VudCAtIGxlIG5vbWJyZSBkZSBjb3JyZXNwb25kYW5jZXM8L2xpPg0KPC91bD4nOwokbGFuZ1snaGVscF9wYXJhbV9zcGFyc2UnXSA9ICdBcHBsaWNhYmxlIHVuaXF1ZW1lbnQgcG91ciBsJiMwMzk7YWZmaWNoYWdlIGR1IGRvc3NpZXIsIGNldHRlIG9wdGlvbiBuZSBmZXJhIHF1ZSBtb250cmVyIHVuZSBsZXR0cmUgciZlYWN1dGU7cGVydG9pcmUgcG91ciBsZXF1ZWwgaWwgZXhpc3RlIGRlcyB1dGlsaXNhdGV1cnMuJzsKJGxhbmdbJ2hlbHBfcGFyYW1fcmVzdWx0cGFnZSddID0gJ1V0aWxpcyZlYWN1dGU7IHBvdXIgbGEgcmVjaGVyY2hlIHBvdXIgbGVzIGFjdGlvbnMsIGNlIHBhcmFtJmVncmF2ZTt0cmUgc3AmZWFjdXRlO2NpZmllIGxlIGNvbnRlbnUgZGUgbGEgcGFnZSBDTVNNUyBxdWkgZGV2cmFpdCAmZWNpcmM7dHJlIHV0aWxpcyZlYWN1dGU7IHBvdXIgYWZmaWNoZXIgbGVzIGFydGljbGVzIGNvcnJlc3BvbmRhbnRzICZhZ3JhdmU7IGwmIzAzOTtvcCZlYWN1dGU7cmF0aW9uIGRlIGZpbHRyYWdlJzsKJGxhbmdbJ2hlbHBfcGFyYW1fc29ydGJ5J10gPSAnVXNlZCBmb3IgdGhlIGRlZmF1bHQgYWN0aW9uLCB0aGlzIHBhcmFtZXRlciBzcGVjaWZpZXMgdGhlIHNvcnRpbmcgb2YgdGhlIGdlbmVyYXRlZCBzdW1tYXJ5IG91dHB1dC4gIFBvc3NpYmxlIHZhbHVlcyBhcmU6DQo8dWw+DQogPGxpPmlkIC0gVGhlIHVzZXJzIGlkIChkZWZhdWx0IHZpZXcgb25seSk8L2xpPg0KIDxsaT51c2VybmFtZSAtIFRoZSB1c2VycyB1c2VybmFtZSAoZGVmYXVsdCB2aWV3IG9ubHkpPC9saT4NCiA8bGk+Y3JlYXRlZGF0ZSAtIFRoZSBkYXRlIGF0IHdoaWNoIHRoZSB1c2VyIGFjY291bnQgd2FzIGNyZWF0ZWQuIChkZWZhdWx0IHZpZXcgb25seSk8L2xpPg0KIDxsaT5leHBpcmVzIC0gVGhlIGRhdGUgYXQgd2hpY2ggdGhlIHVzZXIgYWNjb3VudCB3aWxsIGV4cGlyZSAob3IgZGlkIGV4cGlyZSkuIChkZWZhdWx0IHZpZXcgb25seSk8L2xpPg0KIDxsaT5hY3Rpdml0eSAtIFRoZSBkYXRlIGF0IHdoaWNoIHRoZSB1c2VyIGFjY291bnQgd2FzIGxhc3QgbG9nZ2VkIGluIG9yIGxvZ2dlZCBvdXQuIChkZWZhdWx0IHZpZXcgb25seSk8L2xpPg0KIDxsaT5mOnByb3BlcnR5bmFtZSAtIFRoaXMgYWxsb3dzIHNvcnRpbmcgdGhlIG91dHB1dCBieSBhIHNwZWNpZmllZCBGRVUgcHJvcGVydHkgbmFtZS4gaS5lOiBmOmZ1bGxfbmFtZS4gIDxzdHJvbmc+Tm90ZTo8L3N0cm9uZz4geW91IG1heSBleHBlcmllbmNlIHVuZXhwZWN0ZWQgcmVzdWx0cyBpZiB0aGUgZ3JvdXAgYmVpbmcgZGlzcGxheWVkIGRvZXMgbm90IGhhdmUgdGhhdCBwcm9wZXJ0eSwgb3Igbm90IGV2ZXJ5IHVzZXIgaW4gdGhlIHJlc3VsdGluZyBzZXQgaGFzIHRoYXQgcHJvcGVydHkgZGVmaW5lZC4gIEFsc28sIHlvdSBtYXkgZXhwZXJpZW5jZSB1bmV4cGVjdGVkIHJlc3VsdHMgaWYgdGhlIGZpZWxkIHNwZWNpZmllZCBpcyBub3QgYSB0ZXh0IHN0cmluZy4gIFlvdSBtYXkgaGF2ZSB0byBhZGp1c3QgdGhlIHNvcnRvcmRlciBwYXJhbWV0ZXIgdG8gZ2V0IHRoZSBkZXNpcmVkIG91dHB1dDwvdWw+Pic7CiRsYW5nWydoZWxwX3BhcmFtX2Jzb3J0b3JkZXInXSA9ICdVdGlsaXMmZWFjdXRlOyBwb3VyIGwmIzAzOTthY3Rpb24gYnJvd3NlLCBjZSBwYXJhbSZlZ3JhdmU7dHJlIGQmZWFjdXRlO2ZpbmkgbCYjMDM5O29yZHJlIGRlIHRyaSBkZSBsYSBzb3J0aWUgZyZlYWN1dGU7biZlYWN1dGU7ciZlYWN1dGU7ZS4gIExlcyB2YWxldXJzIHBvc3NpYmxlcyBzb250IDoNCjx1bD4NCiAgPGxpPkFTQyAtIG9yZHJlIGFzY2VuZGFudDwvbGk+DQogIDxsaT5ERVNDIC0gb3JkcmUgZGVzY2VuZGFudDwvbGk+DQo8L3VsPic7CiRsYW5nWydoZWxwX3BhcmFtX3NvcnRvcmRlciddID0gJ1V0aWxpcyZlYWN1dGU7IHBvdXIgbCYjMDM5O2FjdGlvbiBkZWZhdWx0LCBjZSBwYXJhbSZlZ3JhdmU7dHJlIGQmZWFjdXRlO2ZpbmkgbCYjMDM5O29yZHJlIGRlIHRyaSBkZSBsYSBzb3J0aWUgZGVzIHByb3ByaSZlYWN1dGU7dCZlYWN1dGU7cyBnJmVhY3V0ZTtuJmVhY3V0ZTtyJmVhY3V0ZTtlcy4gIExlcyB2YWxldXJzIHBvc3NpYmxlcyBzb250IDoNCjx1bD4NCiAgPGxpPkFTQyAtIG9yZHJlIGFzY2VuZGFudDwvbGk+DQogIDxsaT5ERVNDIC0gb3JkcmUgZGVzY2VuZGFudDwvbGk+DQo8L3VsPic7CiRsYW5nWydoZWxwX3BhcmFtX3BhZ2VsaW1pdCddID0gJ1V0aWxpcyZlYWN1dGU7IHBvdXIgbCYjMDM5O2FjdGlvbiBkZWZhdWx0LCBjZSBwYXJhbSZlZ3JhdmU7dHJlIHNwJmVhY3V0ZTtjaWZpZSBsZSBub21icmUgbWF4aW11bSBkJiMwMzk7aXRlbXMgcXVpIGRvaXZlbnQgJmVjaXJjO3RyZSByZXRvdXJuJmVhY3V0ZTtzLic7CiRsYW5nWydoZWxwX3BhcmFtX3Byb3AnXSA9ICdVc2VkIGZvciB0aGUgZGVmYXVsdCxicm93c2UgYW5kIGRpcmVjdG9yeSBhY3Rpb25zLCB0aGlzIHBhcmFtZXRlciBiZWhhdmVzIGluIHR3byBkaWZmZXJlbnQgd2F5cyBkZXBlbmRpbmcgdXBvbiB0aGUgYWN0aW9uOg0KPHVsPg0KICA8bGk+VGhlIGRlZmF1bHQgKHN1bW1hcnkpIGFjdGlvbg0KICAgIDxwPkluIHRoZSBkZWZhdWx0IChzdW1tYXJ5KSBhY3Rpb24sIHRoaXMgcGFyYW1ldGVyIGNhbiBiZSB1c2VkIHRvIHNwZWNpZnkgYSBwcm9wZXJ0eSB0byBmaWx0ZXIgdGhlIHJlc3VsdHMgYnkuICBJdCB3b3JrcyBpbiBjb25qdW5jdGlvbiB3aXRoIHRoZSBwcm9wdmFsIHBhcmFtZXRlciBiZWxvdy48L3A+DQogIDwvbGk+DQo8bGk+VGhlIGJyb3dzZSBhY3Rpb24NCiAgICA8cD5JbiB0aGUgYnJvd3NlIGFjdGlvbiwgdGhpcyBwYXJhbWV0ZXIgY2FuIGJlIHVzZWQgdG8gc3BlY2lmeSBhbiBGRVUgcHJvcGVydHkgdG8gYnJvd3NlPC9wPg0KICA8L2xpPg0KICA8bGk+VGhlIGRpcmVjdG9yeSBhY3Rpb24uDQogICAgPHA+SW4gdGhlIGRpcmVjdG9yeSBhY3Rpb24sIHRoaXMgYXByYW1ldGVyIGNhbiBiZSB1c2VkIHRvIHNwZWNpZnkgYSBwcm9wZXJ0eSB0byBnZW5lcmF0ZSBhIGRpcmVjdG9yeSBmcm9tLiAgIFRoZSBkZWZhdWx0IHZhbHVlIGluIHRoZSBkaXJlY3RvcnkgYWN0aW9uIGlzICZhbXA7cXVvdDt1c2VybmFtZSZhbXA7cXVvdGU7PC9wPg0KICA8L2xpPg0KPC91bD4nOwokbGFuZ1snaGVscF9wYXJhbV9wcm9wdmFsJ10gPSAnVXRpbGlzJmVhY3V0ZTsgY29uam9pbnRlbWVudCBhdmVjIGxlcyBwYXJhbSZlZ3JhdmU7dHJlcyAmcXVvdDthY2Nlc3NvaXJlcyZxdW90OyBwb3VyIGwmIzAzOTthY3Rpb24gcGFyIGQmZWFjdXRlO2ZhdXQgKHNvbW1haXJlKSwgY2UgcGFyYW0mZWdyYXZlO3RyZSB2b3VzIHBlcm1ldCBkZSBzcCZlYWN1dGU7Y2lmaWVyIHVuZSB2YWxldXIgYXZlYyBsYXF1ZWxsZSBmaWx0cmVyIGxlcyB1dGlsaXNhdGV1cnMuJzsKJGxhbmdbJ2hlbHBfcGFyYW1fdXNlbGlrZSddID0gJ1VzZWQgaW4gY29uanVuY3Rpb24gd2l0aCB0aGUgJnF1b3Q7cHJvcCZxdW90OyBhbmQgJnF1b3Q7cHJvcHZhbCZxdW90OyBwYXJhbWV0ZXJzLCB0aGlzIHBhcmFtZXRlciwgaWYgc2V0IHRvIGEgcG9zaXRpdmUgaW50ZWdlciB2YWx1ZSBpbmRpY2F0ZXMgdGhhdCB0aGUgcHJvcHZhbCBwYXJhbWV0ZXIgY29udGFpbnMgYSBMSUtFIGV4cHJlc3Npb24nOwokbGFuZ1snaGVscF9wYXJhbV9kZXRhaWxwYWdlJ10gPSAnQ2UgcGFyYW0mZWdyYXZlO3RyZSwgc2kgc3AmZWFjdXRlO2NpZmkmZWFjdXRlOywgZG9pdCBjb250ZW5pciBsYSBwYWdlaWQgb3UgYWxpYXMgZCYjMDM5O3VuZSBwYWdlIENNUyBkZSB0eXBlIGNvbnRlbnUsIHN1ciBsYXF1ZWxsZSB2b3VzIHNvdWhhaXRleiBhZmZpY2hlciBsZXMgcmFwcG9ydCBkZSBkJmVhY3V0ZTt0YWlsJzsKJGxhbmdbJ2hlbHBfcGFyYW1fc3VtbWFyeXRlbXBsYXRlJ10gPSAnQ2UgcGFyYW0mZWdyYXZlO3RyZSBwZXJtZXQgZGUgc3AmZWFjdXRlO2NpZmllciB1biBub20gZGUgZ2FiYXJpdCAmYWdyYXZlOyB1dGlsaXNlciBwb3VyIGwmIzAzOTthZmZpY2hhZ2UgZGVzIHImZWFjdXRlO3N1bSZlYWN1dGU7cyc7CiRsYW5nWydoZWxwX3BhcmFtX2RldGFpbHRlbXBsYXRlJ10gPSAnQ2UgcGFyYW0mZWdyYXZlO3RyZSBwZXJtZXQgZGUgc3AmZWFjdXRlO2NpZmllciB1biBub20gZGUgZ2FiYXJpdCAmYWdyYXZlOyB1dGlsaXNlciBwb3VyIGwmIzAzOTthZmZpY2hhZ2UgZGVzIGQmZWFjdXRlO3RhaWxzJzsKJGxhbmdbJ2hlbHBfcGFyYW1fZGlyZWN0b3J5dGVtcGxhdGUnXSA9ICdDZSBwYXJhbSZlZ3JhdmU7dHJlIHBlcm1ldCBkZSBzcCZlYWN1dGU7Y2lmaWVyIHVuIG5vbSBkZSBnYWJhcml0ICZhZ3JhdmU7IHV0aWxpc2VyIHBvdXIgbCYjMDM5O2FmZmljaGFnZSBkZXMgciZlYWN1dGU7cGVydG9pcmVzJzsKJGxhbmdbJ2hlbHBfcGFyYW1fc2VhcmNoZm9ybXRlbXBsYXRlJ10gPSAnQ2UgcGFyYW0mZWdyYXZlO3RyZSBwZXJtZXQgZGUgc3AmZWFjdXRlO2NpZmllciB1biBub20gZGUgZ2FiYXJpdCAmYWdyYXZlOyB1dGlsaXNlciBwb3VyIGwmIzAzOTthZmZpY2FnZSBkZXMgZm9ybXVsYWlyZSBkZSByZWNoZXJjaGUnOwokbGFuZ1snaGVscF9wYXJhbV9zZWFyY2hwcm9wZXJ0eSddID0gJ0NlIHBhcmFtJmVncmF2ZTt0cmUgcGVybWV0IGRlIHNwJmVhY3V0ZTtjaWZpZXIsIHVuZSBsaXN0ZSBzaW1wbGUgb3UgcyZlYWN1dGU7cGFyJmVhY3V0ZTtlIHBhciBkZXMgdmlyZ3VsZXMsIGRlIG5vbXMgZGUgcHJvcHJpJmVhY3V0ZTt0JmVhY3V0ZTsgc3VwcGwmZWFjdXRlO21lbnRhaXJlIGRlIEZFVSBwb3VyIGxlcyBmb3VybmlyIGRhbnMgbGUgZm9ybXVsYWlyZSBkZSByZWNoZXJjaGUnOwokbGFuZ1snaGVscF9wYXJhbV91aWQnXSA9ICdVdGlsaXMmZWFjdXRlOyBjb25qb2ludGVtZW50IGF2ZWMgbCYjMDM5O2FmZmljaGFnZSBkdSBkJmVhY3V0ZTt0YWlsLCBjZSBwYXJhbSZlZ3JhdmU7dHJlIGRvaXQgY29udGVuaXIgbCYjMDM5O3VpZCBkdSBjb21wdGUgZCYjMDM5O3VuIHV0aWxpc2F0ZXVyIGR1IEZFVS4nOwokbGFuZ1snaW5mb19icm93c2Vwcm9wX3RlbXBsYXRlJ10gPSAnQnJvd3NlIFByb3BlcnR5IHRlbXBsYXRlcyBkaXNwbGF5IEEgbGlzdCBvZiB1bmlxdWUgdmFsdWVzIGZvciB0aGUgc3BlY2lmaWVkIHByb3BlcnR5LiAgRWFjaCBpdGVtIGluIHRoZSBsaXN0IGlzIGEgbGluayB0byBhIHN1bW1hcnkgdmlldyBjb250YWluaW5nIHRoZSBtYXRjaGluZyB1c2VycyB0aGF0IG1hdGNoIHRoYXQgcHJvcGVydHkgdmFsdWUuICBZb3UgbWF5IHVzZSBhbnkgc21hcnR5IGxvZ2ljIG9yIHZhcmlhYmxlcyB0aGF0IGhhdmUgYmVlbiBjcmVhdGVkIHByZXZpb3VzbHksIG9yIHRoZSBvbmVzIG1hZGUgYXZhaWxhYmlsaXR5IHNwZWNpZmljYWxseSBmb3IgdGhpcyB2aWV3Lic7CiRsYW5nWydpbmZvX2Jyb3dzZXByb3BfdGVtcGxhdGVzX3RhYiddID0gJ0NldCBvbmdsZXQgY29udGllbnQgbGEgbGlzdGUgZGVzIGdhYmFyaXRzIGRpc3BvbmlibGVzIGNvbmNlcm5hbnQgbGVzIHByb3ByaSZlYWN1dGU7dCZlYWN1dGU7cy4gSWwgeSBhIHRvdWpvdXJzIHVuIGdhYmFyaXQgZCZlYWN1dGU7ZmluaXQgcGFyIGQmZWFjdXRlO2ZhdXQuIENlbHVpLWNpIHNlcmEgdXRpbGlzJmVhY3V0ZTsgc2kgYXVjdW4gYXV0cmUgbm9tIGRlIGdhYmFyaXQgZXN0IHNwJmVhY3V0ZTtjaWZpJmVhY3V0ZTsgZGFucyBsYSBiYWxpc2UgcXVpIGFwcGVsbGUgY2UgbW9kdWxlLic7CiRsYW5nWydpbmZvX2RldGFpbF90ZW1wbGF0ZSddID0gJ0RldGFpbCB0ZW1wbGF0ZXMgZGlzcGxheSBkZXRhaWxlZCBpbmZvcm1hdGlvbiBhYm91dCBhIHNwZWNpZmljIGZyb250ZW5kIHVzZXIuICBIZXJlIHlvdSBkZXNpZ24gdGhlIHdheSBpbiB3aGljaCB5b3Ugd2FudCB0aGF0IGluZm9ybWF0aW9uIGxhaWQgb3V0LiAgWW91IG1heSB1c2UgYW55IHNtYXJ0eSBsb2dpYyBvciB2YXJpYWJsZXMgdGhhdCBoYXZlIGJlZW4gZGVzaWduZWQgcHJldmlvdXNseSwgb3IgdGhlIG9uZXMgbWFkZSBhdmFpbGFibGUgc3BlY2lmaWNhbGx5IGZvciB0aGlzIHZpZXcnOwokbGFuZ1snaW5mb19kZXRhaWxfdGVtcGxhdGVzX3RhYiddID0gJ0NldCBvbmdsZXQgY29udGllbnQgbGEgbGlzdGUgZGVzIGdhYmFyaXRzIGRlIGQmZWFjdXRlO3RhaWwgZGlzcG9uaWJsZXMuIEwmIzAzOTt1biBkJiMwMzk7ZXV4IGVzdCBtYXJxdSZlYWN1dGU7IHBhciBkJmVhY3V0ZTtmYXV0LiBMYSB2YWxldXIgcGFyIGQmZWFjdXRlO2ZhdXQgc2VyYSB1dGlsaXMmZWFjdXRlOyBzaSBhdWN1biBub20gZGUgZ2FiYXJpdCBkZSByZW1wbGFjZW1lbnQgIGVzdCBmb3Vybmkgc3VyIGxhIGJhbGlzZSBxdWkgYXBwZWxsZSBjZSBtb2R1bGUuJzsKJGxhbmdbJ2luZm9fZGlyZWN0b3J5X3RlbXBsYXRlJ10gPSAnRGlyZWN0b3J5IHRlbXBsYXRlcyBkaXNwbGF5IGFuIGFscGhhYmV0aWNhbCBsaXN0IG9mIGxpbmtzLCB3aGVuIGEgbGluayBpcyBjbGlja2VkIGl0IHdpbGwgZGlzcGxheSBhIHN1bW1hcnkgdmlldyBvZiB0aGUgbWF0Y2hpbmcgdXNlcnMgZm9yIHRoYXQgbGV0dGVyLiAgSXQgaXMgcG9zc2libGUgdG8gY3JlYXRlIGRpcmVjdG9yaWVzIGJhc2VkIG9uIGRpZmZlcmVudCBwcm9wZXJ0aWVzLiAgSGVyZSB5b3UgZGVzaWduIHRoZSB3YXkgaW4gd2hpY2ggeW91IHdhbnQgdGhhdCBpbmZvcm1hdGlvbiBsYWlkIG91dC4gIFlvdSBtYXkgdXNlIGFueSBzbWFydHkgbG9naWMgb3IgdmFyaWFibGVzIHRoYXQgaGF2ZSBiZWVuIGRlc2lnbmVkIHByZXZpb3VzbHksIG9yIHRoZSBvbmVzIG1hZGUgYXZhaWxhYmxlIHNwZWNpZmljYWxseSBmb3IgdGhpcyB2aWV3JzsKJGxhbmdbJ2luZm9fZGlyZWN0b3J5X3RlbXBsYXRlc190YWInXSA9ICdDZXQgb25nbGV0IGNvbnRpZW50IGxhIGxpc3RlIGRlcyByJmVhY3V0ZTtwZXJ0b2lyZXMgZGVzIGdhYmFyaXRzIGRpc3BvbmlibGVzLiBMJiMwMzk7dW4gZCYjMDM5O2V1eCBlc3QgbWFycXUmZWFjdXRlOyBwYXIgZCZlYWN1dGU7ZmF1dC4gTGUgciZlYWN1dGU7cGVydG9pcmUgcGFyIGQmZWFjdXRlO2ZhdXQgc2VyYSB1dGlsaXMmZWFjdXRlOyBsb3JzcXVlIGF1Y3VuIG5vbSBlc3QgZm91cm5pIHN1ciBsYSBiYWxpc2UgcXVpIGFwcGVsbGUgY2UgbW9kdWxlJzsKJGxhbmdbJ2luZm9fc3VtbWFyeV90ZW1wbGF0ZSddID0gJ1N1bW1hcnkgdGVtcGxhdGVzIGRpc3BsYXkgaW5mb3JtYXRpb24gYWJvdXQgYSBsaXN0IG9mIHVzZXJzIHRoYXQgbWF0Y2ggYSBjcml0ZXJpYS4gIEhlcmUgeW91IGRlc2lnbiB0aGUgd2F5IGluIHdoaWNoIHlvdSB3YW50IHRoYXQgaW5mb3JtYXRpb24gbGFpZCBvdXQuICBZb3UgbWF5IHVzZSBhbnkgc21hcnR5IGxvZ2ljIG9yIHZhcmlhYmxlcyB0aGF0IGhhdmUgYmVlbiBkZXNpZ25lZCBwcmV2aW91c2x5LCBvciB0aGUgb25lcyBtYWRlIGF2YWlsYWJsZSBzcGVjaWZpY2FsbHkgZm9yIHRoaXMgdmlldyc7CiRsYW5nWydpbmZvX3NlYXJjaGZvcm1fdGVtcGxhdGUnXSA9ICdTZWFyY2ggZm9ybSB0ZW1wbGF0ZXMgZGlzcGxheSBBIGZvcm0gdG8gYWxsb3cgc2VhcmNoaW5nIGZvciBhIHBhcnRpY3VsYXIgdXNlciBvciBncm91cCBvZiB1c2Vycy4gIEhlcmUgeW91IGRlc2lnbiB0aGUgd2F5IGluIHdoaWNoIHlvdSB3YW50IHRoZSBmb3JtIGRpc3BsYXllZC4gIFlvdSBtYXkgdXNlIGFueSBzbWFydHkgbG9naWMgb3IgdmFyaWFibGVzIHRoYXQgaGF2ZSBiZWVuIGRlc2lnbmVkIHByZXZpb3VzbHksIG9yIHRoZSBvbmVzIG1hZGUgYXZhaWxhYmxlIHNwZWNpZmljYWxseSBmb3IgdGhpcyB2aWV3JzsKJGxhbmdbJ2luZm9fc2VhcmNoZm9ybV90ZW1wbGF0ZXNfdGFiJ10gPSAnQ2V0IG9uZ2xldCBjb250aWVudCBsYSBsaXN0ZSBkZXMgZ2FiYXJpdHMgZGlzcG9uaWJsZXMgZGFucyBsZSBmb3JtdWxhaXJlIGRlIHJlY2hlcmNoZS4gTCYjMDM5O3VuIGQmIzAzOTtldXggZXN0IG1hcnF1JmVhY3V0ZTsgcGFyIGQmZWFjdXRlO2ZhdXQuIExlIGdhYmFyaXQgcGFyIGQmZWFjdXRlO2ZhdXQgc2VyYSB1dGlsaXMmZWFjdXRlOyBsb3JzcXVlIGF1Y3VuIG5vbSAgZXN0IGZvdXJuaSBzdXIgbGEgYmFsaXNlIHF1aSBhcHBlbGxlIGNlIG1vZHVsZSc7CiRsYW5nWydpbmZvX3N1bW1hcnlfdGVtcGxhdGVzX3RhYiddID0gJ0NldCBvbmdsZXQgY29udGllbnQgbGEgbGlzdGUgZGVzIGdhYmFyaXRzIHNvbW1haXJlcyBkaXNwb25pYmxlcy4gTCYjMDM5O3VuIGQmIzAzOTtldXggZXN0IG1hcnF1JmVhY3V0ZTsgcGFyIGQmZWFjdXRlO2ZhdXQuIExlIGdhYmFyaXQgcGFyIGQmZWFjdXRlO2ZhdXQgc2VyYSB1dGlsaXMmZWFjdXRlOyBsb3JzcXVlIGF1Y3VuIG5vbSBlc3QgZm91cm5pIHN1ciBsYSBiYWxpc2UgcXVpIGFwcGVsbGUgY2UgbW9kdWxlJzsKJGxhbmdbJ2luZm9fc3lzZGZsdF9icm93c2Vwcm9wX3RlbXBsYXRlJ10gPSAnU3lzdGVtIERlZmF1bHQgQnJvd3NlIFByb3BlcnR5IFZpZXcgVGVtcGxhdGUnOwokbGFuZ1snaW5mb19zeXNkZmx0X2RldGFpbF90ZW1wbGF0ZSddID0gJ0dhYmFyaXQgcGFyIGQmZWFjdXRlO2ZhdXQgZGUgZCZlYWN1dGU7dGFpbCc7CiRsYW5nWydpbmZvX3N5c2RmbHRfZGlyZWN0b3J5X3RlbXBsYXRlJ10gPSAnR2FiYXJpdCBwYXIgZCZlYWN1dGU7ZmF1dCBkZSByJmVhY3V0ZTtwZXJ0b2lyZSc7CiRsYW5nWydpbmZvX3N5c2RmbHRfc2VhcmNoZm9ybV90ZW1wbGF0ZSddID0gJ1N5c3QmZWdyYXZlO21lIGRlIHJlY2hlcmNoZSBwYXIgZCZlYWN1dGU7ZmF1dCBkdSBnYWJhcml0JzsKJGxhbmdbJ2luZm9fc3lzZGZsdF9zdW1tYXJ5X3RlbXBsYXRlJ10gPSAnR2FiYXJpdCBwYXIgZCZlYWN1dGU7ZmF1dCBkZSByJmVhY3V0ZTtzdW0mZWFjdXRlOyc7CiRsYW5nWydpbmZvX3N5c2RmbHRfdGVtcGxhdGUnXSA9ICdNb2RpZmllciBjZSBnYWJhcml0IG4mIzAzOTthdXJhIGF1Y3VuIGVmZmV0IGltbSZlYWN1dGU7ZGlhdCBzdXIgbGVzIGFmZmljaGFnZXMuIElsIGVzdCB1dGlsaXMmZWFjdXRlOyB1bmlxdWVtZW50IGxvcnMgZGUgbGEgY3ImZWFjdXRlO2F0aW9uIGRlIG5vdXZlYXUgZ2FiYXJpdCBwYXIgdW4gY2xpYyBzdXIgJnF1b3Q7Tm91dmVhdSBnYWJhcml0JnF1b3Q7IGRhbnMgbCYjMDM5O29uZ2xldCBhcHByb3ByaSZlYWN1dGU7Lic7CiRsYW5nWydsYXN0X2FjdGl2ZSddID0gJ0Rlcm5pZXIgYWN0aWYmbmJzcDsnOwokbGFuZ1snbGJsX2Jyb3dzZXByb3B0ZW1wbGF0ZXMnXSA9ICdHYWJhcml0cyBkZSBwcm9wcmkmZWFjdXRlO3QmZWFjdXRlOyc7CiRsYW5nWydsYmxfZGVmYXVsdHRlbXBsYXRlcyddID0gJ0dhYmFyaXRzIHBhciBkJmVhY3V0ZTtmYXV0JzsKJGxhbmdbJ2xibF9kZXRhaWx0ZW1wbGF0ZXMnXSA9ICdHYWJhcml0cyBkZSBkJmVhY3V0ZTt0YWlsJzsKJGxhbmdbJ2xibF9kaXJlY3Rvcnl0ZW1wbGF0ZXMnXSA9ICdHYWJhcml0cyBkZSByJmVhY3V0ZTtwZXJ0b2lyZSc7CiRsYW5nWydsYmxfZmlyc3RfcGFnZSddID0gJ0FsbGVyICZhZ3JhdmU7IGxhIHByZW1pJmVncmF2ZTtyZSBwYWdlJzsKJGxhbmdbJ2xibF9sYXN0X3BhZ2UnXSA9ICdBbGxlciAmYWdyYXZlOyBsYSBkZXJuaSZlZ3JhdmU7cmUgcGFnZSc7CiRsYW5nWydsYmxfbmV4dF9wYWdlJ10gPSAnQWxsZXIgJmFncmF2ZTsgbGEgcGFnZSBzdWl2YW50ZSc7CiRsYW5nWydsYmxfcHJldl9wYWdlJ10gPSAnQWxsZXIgJmFncmF2ZTsgbGEgcGFnZSBwciZlYWN1dGU7YyZlYWN1dGU7ZGVudGUnOwokbGFuZ1snbGJsX3NlYXJjaGZvcm10ZW1wbGF0ZXMnXSA9ICdHYWJhcml0cyBkZSBmb3JtdWxhaXJlIGRlIHJlY2hlcmNoZSc7CiRsYW5nWydsYmxfc2V0dGluZ3MnXSA9ICdQYXJhbSZlZ3JhdmU7dHJlcyc7CiRsYW5nWydsYmxfc3VtbWFyeXRlbXBsYXRlcyddID0gJ0dhYmFyaXRzIGRlIHImZWFjdXRlO3N1bSZlYWN1dGU7JzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnVW4gbW9kdWxlIHBlcm1ldHRhbnQgbGEgcmVjaGVyY2hlLCBsYSBuYXZpZ2F0aW9uIGV0IGwmIzAzOTthZmZpY2hhZ2UgZCYjMDM5O2luZm9ybWF0aW9ucyBzdXIgbGEgZ2VzdGlvbiBkZXMgdXRpbGlzYXRldXJzIGR1IHNpdGUnOwokbGFuZ1snb2YnXSA9ICdkZSAnOwokbGFuZ1sncGFnZSddID0gJ1BhZ2UgJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsJ10gPSAnTGUgbW9kdWxlIFImZWFjdXRlO3BlcnRvaXJlIGRlcyB1dGlsaXNhdGV1cnMgZHUgc2l0ZSAoQ0cpIGVzdCBtYWludGVuYW50IHByJmVjaXJjO3QgJmFncmF2ZTsgJmVjaXJjO3RyZSBjb25maWd1ciZlYWN1dGU7JzsKJGxhbmdbJ3Bvc3R1bmluc3RhbGwnXSA9ICdMZSBtb2R1bGUgUiZlYWN1dGU7cGVydG9pcmUgZGVzIHV0aWxpc2F0ZXVycyBkdSBzaXRlIChDRyksIGV0IHRvdXRlcyBsZXMgZG9ubiZlYWN1dGU7ZXMgYXNzb2NpJmVhY3V0ZTtlcyBvbnQgJmVhY3V0ZTt0JmVhY3V0ZTsgZCZlYWN1dGU7c2luc3RhbGwmZWFjdXRlO3MgZGUgbGEgYmFzZSBkZSBkb25uJmVhY3V0ZTtlcyc7CiRsYW5nWydyZXN1bHRzX2FsbF9hbnknXSA9ICdSZW52b2llIGxlcyByJmVhY3V0ZTtzdWx0YXRzIHF1aSBjb3JyZXNwb25kZW50LCAmYWdyYXZlOyB0b3VzLCBvdSAmYWdyYXZlOyBsJiMwMzk7dW5lIGRlcyBjb25kaXRpb25zIHByJmVhY3V0ZTtjaXMmZWFjdXRlO2VzJzsKJGxhbmdbJ3N1Ym1pdCddID0gJ0Vudm95ZXInOwokbGFuZ1sndXNlcm5hbWUnXSA9ICdOb20gZCYjMDM5O3V0aWxpc2F0ZXVyJm5ic3A7JzsKJGxhbmdbJ3FjYSddID0gJ1AwLTEzMDk0Njg4OTAtMTI3MTAwNTEyMzc4Nic7CiRsYW5nWyd1dG1hJ10gPSAnMTU2ODYxMzUzLjM3NjIwMzMxOS4xMzExNDIwMDA0LjEzMTE0MjAwMDQuMTMxNzkzNDE4Ny4yJzsKJGxhbmdbJ3V0bWMnXSA9ICcxNTY4NjEzNTMnOwokbGFuZ1sndXRteiddID0gJzE1Njg2MTM1My4xMzExNDIwMDA0LjEuMS51dG1jc3I9KGRpcmVjdCl8dXRtY2NuPShkaXJlY3QpfHV0bWNtZD0obm9uZSknOwokbGFuZ1sndXRtYiddID0gJzE1Njg2MTM1My4yLjEwLjEzMTc5MzQxODcnOwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lang/ext/it_IT.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2FkZGVkaXRfZGV0YWlsX3RlbXBsYXRlJ10gPSAnQWdnaXVuZ2VyZS9Nb2RpZmljYSBUZW1wbGF0ZSBEZXR0YWdsaW8nOwokbGFuZ1snYWRkZWRpdF9kaXJlY3RvcnlfdGVtcGxhdGUnXSA9ICdBZ2dpdW5nZXJlL01vZGlmaWNhIFRlbXBsYXRlIERpcmVjdG9yeSc7CiRsYW5nWydhZGRlZGl0X3N1bW1hcnlfdGVtcGxhdGUnXSA9ICdBZ2dpdW5nZXJlL01vZGlmaWNhIFRlbXBsYXRlIFNvbW1hcmlvJzsKJGxhbmdbJ2Fza19yZWFsbHlfdW5pbnN0YWxsJ10gPSAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRvIHRoaXM/ICBDb250aW51aW5nIHdpbGwgcGVybWFuZW50bHkgZGVsZXRlIGFsbCBkYXRhIGFzc29jaWF0ZWQgd2l0aCB0aGlzIG1vZHVsZSc7CiRsYW5nWydjaGFuZ2Vsb2cnXSA9ICc8dWw+DQo8bGk+VmVyc2lvbiAxLjAgLSBKYW51YXJ5LCAyMDA5DQogIDxwPkluaXRpYWwgUmVsZWFzZTwvcD4NCjwvbGk+DQo8L3VsPic7CiRsYW5nWydjcmVhdGVkJ10gPSAnQ3JlYXRvJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRncm91cCddID0gJ0dydXBwbyBub24gdmFsaWRvJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRzb3J0ZmllbGQnXSA9ICdDYW1wbyBkaSBvcmRpbmFtZW50byBub24gdmFsaWRvOiAlcyc7CiRsYW5nWydlcnJvcl9taXNzaW5ncGFyYW0nXSA9ICdQYXJhbWV0cmkgaW5zdWZmaWNpZW50aSc7CiRsYW5nWydlcnJvcl9ub2ZldSddID0gJ0lsIG1vZHVsbyBGcm9udGVuZCBVc2VycyBub24gcHUmb2dyYXZlOyBlc3NlcmUgdHJvdmF0byc7CiRsYW5nWydlcnJvcl91c2Vybm90Zm91bmQnXSA9ICdMbyB1c2VyIGNvbiBsbyBzcGVjaWZpY2F0byBJRCBub24gcHUmb2dyYXZlOyBlc3NlcmUgdHJvdmF0byc7CiRsYW5nWydleHBpcmVzJ10gPSAnU2NhZGVuemUnOwokbGFuZ1snZnJpZW5kbHluYW1lJ10gPSAnQ2FsZ3V5cyBVc2VyIERpcmVjdG9yeSc7CiRsYW5nWydncm91cHMnXSA9ICdHcnVwcGknOwokbGFuZ1snaGVscCddID0gJzxoMz5XaGF0IGRvZXMgdGhpcyBkbz88L2gzPg0KICA8cD5UaGlzIG1vZHVsZSBwcm92aWRlcyB0aGUgYWJpbGl0eSBmb3IgZ2VuZXJhdGluZyBhIGRpcmVjdG9yeSBvZiB1c2VycyBmcm9tIHRoZSBGRVUgbW9kdWxlLCBmb3IgZ2VuZXJhdGluZyBhIHN1bW1hcnkgdmlldyBvZiB1c2VycyBtYXRjaGluZyBzcGVjaWZpZWQgY3JpdGVyaWEsIGFuZCBmb3IgZGlzcGxheWluZyBhIGRldGFpbCByZXBvcnQgb2YgYSBzcGVjaWZpYyB1c2VyLiAgSXQgY2FuIGJlIHVzZWQgZm9yIGdlbmVyYXRpbmcgcHJvZmlsZSBwYWdlcyBmb3IgeW91ciB1c2Vycywgb3IgYSBzdGFmZiBkaXJlY3RvcnkuPC9wPg0KPGgzPkZlYXR1cmVzOjwvaDM+DQo8dWw+DQogIDxsaT5Db21wbGV0ZSB0ZW1wbGF0ZSBjb250cm9sDQo8cD5BbGwgZGlzcGxheXMgYXJlIGNvbXBsZXRlbHkgY29uZmlndXJhYmxlIGJ5IHRlbXBsYXRlcyBhbGxvd2luZyBmb3IgamF2YXNjcmlwdCwgYWpheCwgb3IgYW55IG90aGVyIGZhbmN5IGRpc3BsYXlzLiAgU3R5bGluZyBpcyBjb21wbGV0ZWx5IGNvbnRyb2xsYWJsZSBieSB0aGUgd2Vic2l0ZSBkZXZlbG9wZXIuPC9wPg0KICA8L2xpPg0KICA8bGk+TXVsdGlwbGUgZGF0YWJhc2UgdGVtcGxhdGVzLg0KPHA+WW91IGNhbiBjb25maWd1cmUgbXVsdGlwbGUgZGlmZmVyZW50IHZpZXdzIGZvciBlYWNoIGRpc3BsYXksIGFuZCB1c2UgdGhlbSB1bmRlciBkaWZmZXJlbnQgc2l0dWF0aW9ucy48L3A+DQogIDwvbGk+DQo8bGk+RmlsdGVyIHN1bW1hcnkgdmlld3Mgb24gdXNlciBwcm9wZXJ0aWVzLg0KICAgPHA+WW91IGNhbiBmaWx0ZXIgdGhlIG91dHB1dCBmb3IgdGhlIHN1bW1hcnkgdmlldyBiYXNlZCBvbiB0aGUgdmFsdWUgb2YgYSBzcGVjaWZpYyB1c2VyIHByb3BlcnR5IGZyb20gdGhlIEZFVSBtb2R1bGUuICBUaGlzIGFsc28gaW5jbHVkZXMgJnF1b3Q7TElLRSZxdW90OyBiYXNlZCBjcml0ZXJhLg0KICA8L2xpPg0KICA8bGk+U29ydGluZyBvbiBtdWx0aXBsZSBkaWZmZXJlbnQgY3JpdGVyaWEuPC9saT4NCiAgPGxpPlN1cHBvcnRzIFNFTyBmcmllbmRseSBVUkxTPC9saT4NCjwvdWw+DQo8aDM+SG93IGRvIEkgdXNlIGl0PzwvaDM+DQo8cD5UaGUgc2ltcGxlc3Qgd2F5IHRvIHVzZSB0aGlzIG1vZHVsZSBpcyB0byBwbGFjZSBhIHRhZyBsaWtlIHRoaXMgaW50byB5b3VyIHBhZ2UgdGVtcGxhdGUsIG9yIHBhZ2UgY29udGVudCA8Y29kZT57Q0dVc2VyRGlyZWN0b3J5fTwvY29kZT4uICBUbyBleHBhbmQgb24gdGhpcyBmdW5jdGlvbmFsaXR5LCBvciB0byBkaXNwbGF5IGEgc3Vic2V0IG9mIHlvdXIgdXNlcnMsIHNlZSB0aGUgcGFyYW1ldGVycyBiZWxvdy48L3A+DQo8aDM+RXhhbXBsZXM6PC9oMz4NCjx1bD4NCjxsaT5EaXNwbGF5IGEgZGlyZWN0b3J5IG9mIGFsbCB1c2VyczoNCjxwPjxjb2RlPntDR1VzZXJEaXJlY3RvcnkgYWN0aW9uPSZxdW90O2RpcmVjdG9yeSZxdW90O308L2NvZGU+PC9wPg0KPC9saT4NCjxsaT5EaXNwbGF5IGEgZGlyZWN0b3J5IG9mIGFsbCB1c2VycyBvcmdhbml6ZWQgYnkgY2l0eToNCjxwPjxjb2RlPntDR1VzZXJEaXJlY3RvcnkgYWN0aW9uPSZxdW90O2RpcmVjdG9yeSZxdW90OyBwcm9wPSZxdW90O2NpdHkmcXVvdDt9PC9jb2RlPjwvcD4NCjwvbGk+DQo8bGk+RGlzcGxheSBhIHN1bW1hcnkgbGlzdCBvZiBhbGwgdXNlcnMgaW4gdGhlICZxdW90O21lbWJlcnMmcXVvdDsgZ3JvdXA6DQo8cD48Y29kZT57Q0dVc2VyRGlyZWN0b3J5IGdyb3VwPSZxdW90O21lbWJlcnMmcXVvdDt9PC9jb2RlPjwvcD4NCjwvbGk+DQo8bGk+RGlzcGxheSBhIHN1bW1hcnkgbGlzdCBvZiBhbGwgdXNlcnMgaW4gdGhlIGNpdHkgb2YgY2FsZ2FyeToNCjxwPjxjb2RlPntDR1VzZXJEaXJlY3RvcnkgcHJvcD0mcXVvdDtjaXR5JnF1b3Q7IHByb3B2YWw9JnF1b3Q7Y2FsZ2FyeSZxdW90O308L2NvZGU+PC9wPg0KPC9saT4NCjxsaT5EaXNwbGF5IGEgc3VtbWFyeSBsaXN0IG9mIGFsbCB1c2VycyBmcm9tIGNvdW50cmllcyB0aGF0IGJlZ2luIHdpdGggQzoNCjxwPjxjb2RlPntDR1VzZXJEaXJlY3RvcnkgcHJvcD0mcXVvdDtjaXR5JnF1b3Q7IHVzZWxpa2U9MSBwcm9wdmFsPSZxdW90O2MlJnF1b3Q7fTwvY29kZT48L3A+DQo8L2xpPg0KDQo8L3VsPg0KDQo8aDM+Tm90ZXMgYWJvdXQgcHJldHR5IFVSTFM8L2gzPg0KPHA+JnF1b3Q7UHJldHR5JnF1b3Q7IG9yIFNFTyBmcmllbmRseSBVUkxTIGxpbWl0cyB0aGUgZmxleGliaWxpdHkgb2YgdGhpcyBtb2R1bGUsIGFuZCB0aGUgcGFyYW1ldGVycyB0aGF0IGNhbiBiZSBzcGVjaWZpZWQgb24gdGhlIHRhZy4gUGFydGljdWxhcmx5IHRob3NlIHRoYXQgY2FuIGJlIHBhc3NlZCBvbiB0byBzdWJzZXF1ZW50IHZpZXdzLiAgRm9yIHRoaXMgcmVhc29uLCB0aGUgZGlyZWN0b3J5IHZpZXcgZG9lcyBub3QgZ2VuZXJhdGUgcHJldHR5IHVybHMgdG8gdGhlIHN1YnNlcXVlbnQgc3VtbWFyeSBsaW5rcy4gIFRoaXMgYWxsb3dzIHBhcmFtZXRlcnMgbGlrZSBkZXRhaWxwYWdlLCBkZXRhaWx0ZW1wbGF0ZSwgYW5kIHN1bW1hcnl0ZW1wbGF0ZSB0byBiZSBwYXNzZWQgaW4gdGhlIHRhZyB0byB0aGUgZGlyZWN0b3J5IHZpZXcgYW5kIHRvIGhhdmUgdGhvc2UgcGFyYW1ldGVycyBwYXNzZWQgZG93biB0byB0aGUgc3Vic2VxdWVudCBzdW1tYXJ5IGRldGFpbCB2aWV3cy48L3A+DQo8L3A+DQo8aDM+U3VwcG9ydDwvaDM+DQo8cD5UaGlzIG1vZHVsZSBkb2VzIG5vdCBpbmNsdWRlIGNvbW1lcmNpYWwgc3VwcG9ydC4gSG93ZXZlciwgdGhlcmUgYXJlIGEgbnVtYmVyIG9mIHJlc291cmNlcyBhdmFpbGFibGUgdG8gaGVscCB5b3Ugd2l0aCBpdDo8L3A+DQo8dWw+DQo8bGk+Rm9yIHRoZSBsYXRlc3QgdmVyc2lvbiBvZiB0aGlzIG1vZHVsZSwgRkFRcywgb3IgdG8gZmlsZSBhIEJ1ZyBSZXBvcnQgb3IgYnV5IGNvbW1lcmNpYWwgc3VwcG9ydCwgcGxlYXNlIHZpc2l0IHRoZSBjbXMgZGV2ZWxvcG1lbnQgZm9yZ2UgYXQgPGEgaHJlZj0iaHR0cDovL2Rldi5jbXNtYWRlc2ltcGxlLm9yZyI+ZGV2LmNtc21hZGVzaW1wbGUub3JnPC9hPi48L2xpPg0KPGxpPkFkZGl0aW9uYWwgZGlzY3Vzc2lvbiBvZiB0aGlzIG1vZHVsZSBtYXkgYWxzbyBiZSBmb3VuZCBpbiB0aGUgPGEgaHJlZj0iaHR0cDovL2ZvcnVtLmNtc21hZGVzaW1wbGUub3JnIj5DTVMgTWFkZSBTaW1wbGUgRm9ydW1zPC9hPi48L2xpPg0KPGxpPlRoZSBhdXRob3IsIGNhbGd1eTEwMDAgYWxsIGNhbiBvZnRlbiBiZSBmb3VuZCBpbiB0aGUgPGEgaHJlZj0iaXJjOi8vaXJjLmZyZWVub2RlLm5ldC8jY21zIj5DTVMgSVJDIENoYW5uZWw8L2E+LjwvbGk+DQo8bGk+TGFzdGx5LCB5b3UgbWF5IGhhdmUgc29tZSBzdWNjZXNzIGVtYWlsaW5nIHRoZSBhdXRob3IocykgZGlyZWN0bHkuPC9saT4gIA0KPC91bD4NCg0KPGgzPkNvcHlyaWdodCBhbmQgTGljZW5zZTwvaDM+DQo8cD5Db3B5cmlnaHQgJmNvcHk7IDIwMDgsIFJvYmVydCBDYW1wYmVsIDxhIGhyZWY9Im1haWx0bzpjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnIj48Y2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZz48L2E+LiBBbGwgUmlnaHRzIEFyZSBSZXNlcnZlZC48L3A+DQo8cD5UaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQ0KaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkNCnRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yDQooYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLjwvcD4NCjxwPkhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZA0KYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlDQppbiBhbnkgTm9uIEdQTCB2ZXJzaW9uIG9mIENNUyBNYWRlIHNpbXBsZSwgb3IgaW4gYW55IHZlcnNpb24gb2YgQ01TDQpNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gDQpzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLjwvcD4NCjxwPlRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLA0KYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YNCk1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUNCkdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuDQpZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQ0KYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUNCkZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBDQpPciByZWFkIGl0IDxhIGhyZWY9Imh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTCI+b25saW5lPC9hPjwvcD4nOwokbGFuZ1snaGVscF9wYXJhbV9hY3Rpb24nXSA9ICdUaGlzIHBhcmFtZXRlciBjb250cm9scyB0aGUgYmVoYXZpb3VyIG9mIHRoZSBtb2R1bGUuICBUaGVyZSBhcmUgdGhyZWUgcG9zc2libGUgdmFsdWVzOg0KPHVsPg0KICA8bGk+ZGVmYXVsdCAtIERpc3BsYXlzIGEgc3VtbWFyeSB2aWV3IG9mIHVzZXJzIHRoYXQgbWF0Y2ggdGhlIHNwZWNpZmllZCBjcml0ZXJpYSwgb3IgYWxsIHVzZXJzIGlmIG5vIGNyaXRpZXJpYSBpcyBzcGVjaWZpZWQuPC9saT4NCiAgPGxpPmRpcmVjdG9yeSAtIERpc3BsYXlzIGFuIGFscGhhYmV0aWNhbCBkaXJlY3Rvcnkgb2YgbGlua3MgdG8gc3VtbWFyeSB2aWV3cyB0byB1c2VycyB0aGF0IG1hdGNoIHRoZSBzcGVjaWZpZWQgY3JpdGVyaWEuICBJdCBpcyBwb3NzaWJsZSB0byBjcmVhdGUgZGlyZWN0b3J5IHZpZXdzIG9uIHVzZXJuYW1lLCBvciBvbiBhbnkgb3RoZXIgcGFyYW1ldGVyPC9saT4NCiAgPGxpPmRldGFpbCAtIERpc3BsYXlzIGEgZGV0YWlsIHJlcG9ydCBhYm91dCBhIHNwZWNpZmljIHVzZXIuPC9saT4NCjwvdWw+JzsKJGxhbmdbJ2hlbHBfcGFyYW1fZ3JvdXAnXSA9ICdVc2VkIHdpdGggdGhlIGRlZmF1bHQgYWN0aW9uLCB0aGlzIHBhcmFtZXRlciBzaG91bGQgY29udGFpbiB0aGUgbmFtZSBvZiBhbiBGRVUgdXNlciBncm91cCwgYW5kIHdpbGwgbGltaXQgdGhlIG91dHB1dCB0byBtZW1iZXJzIG9mIHRoYXQgZ3JvdXAnOwokbGFuZ1snaGVscF9wYXJhbV9naWQnXSA9ICdVc2VkIHdpdGggdGhlIGRlZmF1bHQgYWN0aW9uLCB0aGlzIHBhcmFtZXRlciBzaG91bGQgY29udGFpbiB0aGUgaWQgb2YgYW4gRkVVIHVzZXIgZ3JvdXAsIGFuZCB3aWxsIGxpbWl0IHRoZSBvdXRwdXQgdG8gbWVtYmVycyBvZiB0aGF0IGdyb3VwLiAgVGhpcyBwYXJhbWV0ZXIgY2Fubm90IGJlIHVzZWQgaW4gY29uanVuY3Rpb24gd2l0aCB0aGUgZ3JvdXAgcGFyYW1ldGVyLic7CiRsYW5nWydoZWxwX3BhcmFtX3Nob3dleHBpcmVkJ10gPSAnQnkgZGVmYXVsdCwgdGhlIHN5c3RlbSB3aWxsIGV4Y2x1ZGUgZXhwaXJlZCB1c2VycyBmcm9tIGFueSBnZW5lcmF0ZWQgcmVwb3J0LiAgU2V0dGluZyB0aGlzIHBhcmFtZXRlciB0byAxIHdpbGwgaW5jbHVkZSB0aGVzZSB1c2Vycy4nOwokbGFuZ1snaGVscF9wYXJhbV9zb3J0YnknXSA9ICdVc2VkIGZvciB0aGUgZGVmYXVsdCBhY3Rpb24sIHRoaXMgcGFyYW1ldGVyIHNwZWNpZmllcyB0aGUgc29ydGluZyBvZiB0aGUgZ2VuZXJhdGVkIG91dHB1dC4gIFBvc3NpYmxlIHZhbHVlcyBhcmU6DQo8dWw+DQogPGxpPmlkIC0gVGhlIHVzZXJzIGlkPC9saT4NCiA8bGk+dXNlcm5hbWUgLSBUaGUgdXNlcnMgdXNlcm5hbWU8L2xpPg0KIDxsaT5jcmVhdGVkYXRlIC0gVGhlIGRhdGUgYXQgd2hpY2ggdGhlIHVzZXIgYWNjb3VudCB3YXMgY3JlYXRlZC48L2xpPg0KIDxsaT5leHBpcmVzIC0gVGhlIGRhdGUgYXQgd2hpY2ggdGhlIHVzZXIgYWNjb3VudCB3aWxsIGV4cGlyZSAob3IgZGlkIGV4cGlyZSkuPC9saT4NCiA8bGk+YWN0aXZpdHkgLSBUaGUgZGF0ZSBhdCB3aGljaCB0aGUgdXNlciBhY2NvdW50IHdhcyBsYXN0IGxvZ2dlZCBpbiBvciBsb2dnZWQgb3V0LjwvbGk+DQo8L3VsPic7CiRsYW5nWydoZWxwX3BhcmFtX3NvcnRvcmRlciddID0gJ1VzZWQgZm9yIHRoZSBkZWZhdWx0IGFjdGlvbiwgdGhpcyBwYXJhbWV0ZXIgc3BlY2lmaWVzIHRoZSBzb3J0IG9yZGVyIG9mIHRoZSBnZW5lcmF0ZWQgb3V0cHV0LiAgUG9zc2libGUgdmFsdWVzIGFyZToNCjx1bD4NCiAgPGxpPkFTQyAtIEFzY2VuZGluZyBvcmRlcjwvbGk+DQogIDxsaT5ERVNDIC0gRGVzY2VuZGluZyBvcmRlcjwvbGk+DQo8L3VsPic7CiRsYW5nWydoZWxwX3BhcmFtX3BhZ2VsaW1pdCddID0gJ1VzZWQgZm9yIHRoZSBkZWZhdWx0IGFjdGlvbiwgdGhpcyBwYXJhbWV0ZXIgc3BlY2lmaWVzIHRoZSBtYXhpbXVtIG51bWJlciBvZiBpdGVtcyB0byBiZSByZXR1cm5lZC4nOwokbGFuZ1snaGVscF9wYXJhbV9wcm9wJ10gPSAnVXNlZCBmb3IgdGhlIGRlZmF1bHQgYW5kIGRpcmVjdG9yeSBhY3Rpb25zLCB0aGlzIHBhcmFtZXRlciBiZWhhdmVzIGluIHR3byBkaWZmZXJlbnQgd2F5cyBkZXBlbmRpbmcgdXBvbiB0aGUgYWN0aW9uOg0KPHVsPg0KICA8bGk+VGhlIGRlZmF1bHQgKHN1bW1hcnkpIGFjdGlvbg0KICAgIDxwPkluIHRoZSBkZWZhdWx0IChzdW1tYXJ5KSBhY3Rpb24sIHRoaXMgcGFyYW1ldGVyIGNhbiBiZSB1c2VkIHRvIHNwZWNpZnkgYSBwcm9wZXJ0eSB0byBmaWx0ZXIgdGhlIHJlc3VsdHMgYnkuPC9wPg0KICA8L2xpPg0KICA8bGk+VGhlIGRpcmVjdG9yeSBhY3Rpb24uDQogICAgPHA+SW4gdGhlIGRpcmVjdG9yeSBhY3Rpb24sIHRoaXMgYXByYW1ldGVyIGNhbiBiZSB1c2VkIHRvIHNwZWNpZnkgYSBwcm9wZXJ0eSB0byBnZW5lcmF0ZSBhIGRpcmVjdG9yeSBmcm9tLiAgIFRoZSBkZWZhdWx0IHZhbHVlIGluIHRoZSBkaXJlY3RvcnkgYWN0aW9uIGlzICZxdW90O3Vuc2VybmFtZSZhbXA7cXVvdGU7PC9wPg0KICA8L2xpPg0KPC91bD4nOwokbGFuZ1snaGVscF9wYXJhbV9wcm9wdmFsJ10gPSAnVXNlZCBpbiBjb25qdW5jdGlvbiB3aXRoIHRoZSAmcXVvdDtwcm9wJnF1b3Q7IHBhcmFtZXRlciBmb3IgdGhlIGRlZmF1bHQgKHN1bW1hcnkpIGFjdGlvbiwgdGhpcyBwYXJhbWV0ZXIgYWxsb3dzIHNwZWNpZnlpbmcgYSB2YWx1ZSBvbiB3aGljaCB0byBmaWx0ZXIgdXNlcnMgYnkuJzsKJGxhbmdbJ2hlbHBfcGFyYW1fdXNlbGlrZSddID0gJ1VzZWQgaW4gY29uanVuY3Rpb24gd2l0aCB0aGUgJnF1b3Q7cHJvcCZxdW90OyBhbmQgJnF1b3Q7cHJvcHZhbCZxdW90OyBwYXJhbWV0ZXJzLCB0aGlzIHBhcmFtZXRlciwgaWYgc2V0IHRvIGEgcG9zaXRpdmUgaW50ZWdlciB2YWx1ZSBpbmRpY2F0ZXMgdGhhdCB0aGUgcHJvcHZhbCBwYXJhbWV0ZXIgY29udGFpbnMgYSBMSUtFIGV4cHJlc3Npb24nOwokbGFuZ1snaGVscF9wYXJhbV9kZXRhaWxwYWdlJ10gPSAnVGhpcyBwYXJhbWV0ZXIsIGlmIHNwZWNpZmllZCwgc2hvdWxkIGNvbnRhaW4gdGhlIHBhZ2VpZCBvciBhbGlhcyBvZiBhIENNUyBjb250ZW50IHBhZ2Ugb24gd2hpY2ggeW91IHdvdWxkIGxpa2UgdG8gc2hvdyBhbnkgZGV0YWlsIHJlcG9ydCc7CiRsYW5nWydoZWxwX3BhcmFtX3N1bW1hcnl0ZW1wbGF0ZSddID0gJ1RoaXMgcGFyYW1ldGVyIGFsbG93cyBzcGVjaWZ5aW5nIGEgbm9uIGRlZmF1bHQgc3VtbWFyeSB0ZW1wbGF0ZSBuYW1lIHRvIHVzZSBmb3Igc3VtbWFyeSBkaXNwbGF5cyc7CiRsYW5nWydoZWxwX3BhcmFtX2RldGFpbHRlbXBsYXRlJ10gPSAnVGhpcyBwYXJhbWV0ZXIgYWxsb3dzIHNwZWNpZnlpbmcgYSBub24gZGVmYXVsdCBkZXRhaWwgdGVtcGxhdGUgbmFtZSB0byB1c2UgZm9yIGRldGFpbCBkaXNwbGF5cyc7CiRsYW5nWydoZWxwX3BhcmFtX2RpcmVjdG9yeXRlbXBsYXRlJ10gPSAnVGhpcyBwYXJhbWV0ZXIgYWxsb3dzIHNwZWNpZnlpbmcgYSBub24gZGVmYXVsdCBkaXJlY3RvcnkgdGVtcGxhdGUgbmFtZSB0byB1c2Ugd2l0aCBkaXJlY3RvcnkgZGlzcGxheXMnOwokbGFuZ1snaGVscF9wYXJhbV91aWQnXSA9ICdVc2VkIGluIGNvbmp1bmN0aW9uIHdpdGggdGhlIGRldGFpbCBkaXNwbGF5LCB0aGlzIHBhcmFtZXRlciBtdXN0IGNvbnRhaW4gdGhlIHVpZCBvZiBhIHZhbGlkIGZyb250ZW5kIHVzZXIgYWNjb3VudCc7CiRsYW5nWydpbmZvX2RldGFpbF90ZW1wbGF0ZSddID0gJ0RldGFpbCB0ZW1wbGF0ZXMgZGlzcGxheSBkZXRhaWxlZCBpbmZvcm1hdGlvbiBhYm91dCBhIHNwZWNpZmljIGZyb250ZW5kIHVzZXIuICBIZXJlIHlvdSBkZXNpZ24gdGhlIHdheSBpbiB3aGljaCB5b3Ugd2FudCB0aGF0IGluZm9ybWF0aW9uIGxhaWQgb3V0LiAgWW91IG1heSB1c2UgYW55IHNtYXJ0eSBsb2dpYyBvciB2YXJpYWJsZXMgdGhhdCBoYXZlIGJlZW4gZGVzaWduZWQgcHJldmlvdXNseSwgb3IgdGhlIG9uZXMgbWFkZSBhdmFpbGFibGUgc3BlY2lmaWNhbGx5IGZvciB0aGlzIHZpZXcnOwokbGFuZ1snaW5mb19kZXRhaWxfdGVtcGxhdGVzX3RhYiddID0gJ1RoaXMgdGFiIGNvbnRhaW5zIHRoZSBsaXN0IG9mIGF2YWlsYWJsZSBkZXRhaWwgdmlldyB0ZW1wbGF0ZXMuICBPbmUgb2YgdGhlbSBpcyBtYXJrZWQgYXMgZGVmYXVsdC4gIFRoZSBkZWZhdWx0IG9uZSB3aWxsIGJlIHVzZWQgd2hlbiBubyBhbHRlcm5hdGUgdGVtcGxhdGUgbmFtZSBpcyBzdXBwbGllZCBvbiB0aGUgdGFnIHRoYXQgY2FsbHMgdGhpcyBtb2R1bGUnOwokbGFuZ1snaW5mb19kaXJlY3RvcnlfdGVtcGxhdGUnXSA9ICdEaXJlY3RvcnkgdGVtcGxhdGVzIGRpc3BsYXkgYW4gYWxwaGFiZXRpY2FsIGxpc3Qgb2YgbGlua3MsIHdoZW4gYSBsaW5rIGlzIGNsaWNrZWQgaXQgd2lsbCBkaXNwbGF5IGEgc3VtbWFyeSB2aWV3IG9mIHRoZSBtYXRjaGluZyB1c2VycyBmb3IgdGhhdCBsZXR0ZXIuICBJdCBpcyBwb3NzaWJsZSB0byBjcmVhdGUgZGlyZWN0b3JpZXMgYmFzZWQgb24gZGlmZmVyZW50IHByb3BlcnRpZXMuICBIZXJlIHlvdSBkZXNpZ24gdGhlIHdheSBpbiB3aGljaCB5b3Ugd2FudCB0aGF0IGluZm9ybWF0aW9uIGxhaWQgb3V0LiAgWW91IG1heSB1c2UgYW55IHNtYXJ0eSBsb2dpYyBvciB2YXJpYWJsZXMgdGhhdCBoYXZlIGJlZW4gZGVzaWduZWQgcHJldmlvdXNseSwgb3IgdGhlIG9uZXMgbWFkZSBhdmFpbGFibGUgc3BlY2lmaWNhbGx5IGZvciB0aGlzIHZpZXcnOwokbGFuZ1snaW5mb19kaXJlY3RvcnlfdGVtcGxhdGVzX3RhYiddID0gJ1RoaXMgdGFiIGNvbnRhaW5zIHRoZSBsaXN0IG9mIGF2YWlsYWJsZSBkaXJlY3RvcnkgdGVtcGxhdGVzLiAgT25lIG9mIHRoZW0gaXMgbWFya2VkIGFzIGRlZmF1bHQuICBUaGUgZGVmYXVsdCBvbmUgd2lsbCBiZSB1c2VkIHdoZW4gbm8gYWx0ZXJuYXRlIHRlbXBsYXRlIG5hbWUgaXMgc3VwcGxpZWQgb24gdGhlIHRhZyB0aGF0IGNhbGxzIHRoaXMgbW9kdWxlJzsKJGxhbmdbJ2luZm9fc3VtbWFyeV90ZW1wbGF0ZSddID0gJ1N1bW1hcnkgdGVtcGxhdGVzIGRpc3BsYXkgaW5mb3JtYXRpb24gYWJvdXQgYSBsaXN0IG9mIHVzZXJzIHRoYXQgbWF0Y2ggYSBjcml0ZXJpYS4gIEhlcmUgeW91IGRlc2lnbiB0aGUgd2F5IGluIHdoaWNoIHlvdSB3YW50IHRoYXQgaW5mb3JtYXRpb24gbGFpZCBvdXQuICBZb3UgbWF5IHVzZSBhbnkgc21hcnR5IGxvZ2ljIG9yIHZhcmlhYmxlcyB0aGF0IGhhdmUgYmVlbiBkZXNpZ25lZCBwcmV2aW91c2x5LCBvciB0aGUgb25lcyBtYWRlIGF2YWlsYWJsZSBzcGVjaWZpY2FsbHkgZm9yIHRoaXMgdmlldyc7CiRsYW5nWydpbmZvX3N1bW1hcnlfdGVtcGxhdGVzX3RhYiddID0gJ1RoaXMgdGFiIGNvbnRhaW5zIHRoZSBsaXN0IG9mIGF2YWlsYWJsZSBzdW1tYXJ5IHRlbXBsYXRlcy4gIE9uZSBvZiB0aGVtIGlzIG1hcmtlZCBhcyBkZWZhdWx0LiAgVGhlIGRlZmF1bHQgb25lIHdpbGwgYmUgdXNlZCB3aGVuIG5vIGFsdGVybmF0ZSB0ZW1wbGF0ZSBuYW1lIGlzIHN1cHBsaWVkIG9uIHRoZSB0YWcgdGhhdCBjYWxscyB0aGlzIG1vZHVsZSc7CiRsYW5nWydpbmZvX3N5c2RmbHRfZGV0YWlsX3RlbXBsYXRlJ10gPSAnU3lzdGVtIERlZmF1bHQgRGV0YWlsIFZpZXcgVGVtcGxhdGUnOwokbGFuZ1snaW5mb19zeXNkZmx0X2RpcmVjdG9yeV90ZW1wbGF0ZSddID0gJ1N5c3RlbSBEZWZhdWx0IERpcmVjdG9yeSBUZW1wbGF0ZSc7CiRsYW5nWydpbmZvX3N5c2RmbHRfc3VtbWFyeV90ZW1wbGF0ZSddID0gJ1N5c3RlbSBEZWZhdWx0IFN1bW1hcnkgVmlldyBUZW1wbGF0ZSc7CiRsYW5nWydpbmZvX3N5c2RmbHRfdGVtcGxhdGUnXSA9ICdBbHRlcmluZyB0aGlzIHRlbXBsYXRlIHdpbGwgaGF2ZSBubyBpbW1lZGlhdGUgZWZmZWN0IG9uIGFueSBvdXRwdXQuICBUaGlzIGZvcm0gY29udHJvbHMgdGhlIHZhbHVlIG9mIHRoZSB0ZW1wbGF0ZSB0aGF0IGlzIGNyZWF0ZWQgd2hlbiB5b3UgY2xpY2sgJnF1b3Q7TmV3IFRlbXBsYXRlJnF1b3Q7IGluIHRoZSBhcHByb3ByaWF0ZSB0ZW1wbGF0ZSB0YWIuJzsKJGxhbmdbJ2xhc3RfYWN0aXZlJ10gPSAnTCYjMDM5O3VsdGltbyBhdHRpdm8nOwokbGFuZ1snbGJsX2RlZmF1bHR0ZW1wbGF0ZXMnXSA9ICdUZW1wbGF0ZSBwcmVkZWZpbml0aSc7CiRsYW5nWydsYmxfZGV0YWlsdGVtcGxhdGVzJ10gPSAnVGVtcGxhdGUgZGkgdmlzdWFsaXp6YXppb25lIGRldHRhZ2xpJzsKJGxhbmdbJ2xibF9kaXJlY3Rvcnl0ZW1wbGF0ZXMnXSA9ICdUZW1wbGF0ZSBEaXJlY3RvcnknOwokbGFuZ1snbGJsX2ZpcnN0X3BhZ2UnXSA9ICdWYWkgYWxsYSBwcmltYSBwYWdpbmEnOwokbGFuZ1snbGJsX2xhc3RfcGFnZSddID0gJ1ZhaSBhbGwmIzAzOTt1bHRpbWEgcGFnaW5hJzsKJGxhbmdbJ2xibF9uZXh0X3BhZ2UnXSA9ICdWYWkgYWxsYSBwYWdpbmEgc2VndWVudGUnOwokbGFuZ1snbGJsX3ByZXZfcGFnZSddID0gJ1ZhaSBhbGxhIHBhZ2luYSBwcmVjZWRlbnRlJzsKJGxhbmdbJ2xibF9zZXR0aW5ncyddID0gJ0NvbmZpZ3VyYXppb25pJzsKJGxhbmdbJ2xibF9zdW1tYXJ5dGVtcGxhdGVzJ10gPSAnU3VtbWFyeSBWaWV3IFRlbXBsYXRlcyc7CiRsYW5nWydtb2RkZXNjcmlwdGlvbiddID0gJ0EgbW9kdWxlIGFsbG93aW5nIHNlYXJjaGluZywgYnJvd3NpbmcsIGFuZCB2aWV3aW5nIGRldGFpbHMgYWJvdXQgZnJvbnRlbmQgdXNlcnMnOwokbGFuZ1snb2YnXSA9ICdkaSc7CiRsYW5nWydwYWdlJ10gPSAnUGFnZSc7CiRsYW5nWydwb3N0aW5zdGFsbCddID0gJ1RoZSBDR1VzZXJEaXJlY3RvcnkgbW9kdWxlIGlzIG5vdyByZWFkeSBmb3IgY29uZmlndXJhdGlvbic7CiRsYW5nWydwb3N0dW5pbnN0YWxsJ10gPSAnVGhlIENHVXNlcmRpcmVjdG9yeSBtb2R1bGUsIGFuZCBhbGwgYXNzb2NpYXRlZCBkYXRhIGhhcyBiZWVuIHVuaW5zdGFsbGVkIGZyb20gdGhlIGRhdGFiYXNlJzsKJGxhbmdbJ3VzZXJuYW1lJ10gPSAnVXNlcm5hbWUnOwokbGFuZ1sndXRtYSddID0gJzE1Njg2MTM1My41Njg3Mjc5MzcuMTIzNjM0MDE3MS4xMjM2MzQwMTcxLjEyMzYzNDAxNzEuMSc7CiRsYW5nWyd1dG1iJ10gPSAnMTU2ODYxMzUzJzsKJGxhbmdbJ3V0bWMnXSA9ICcxNTY4NjEzNTMnOwokbGFuZ1sndXRteiddID0gJzE1Njg2MTM1My4xMjM2MzQwMTcxLjEuMS51dG1jY249KHJlZmVycmFsKXx1dG1jc3I9ZGV2LmNtc21hZGVzaW1wbGUub3JnfHV0bWNjdD0vfHV0bWNtZD1yZWZlcnJhbCc7Cj8+]]></data>
	</file>
	<file>
	  <filename>/lang/ext/nb_NO.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2FkZGVkaXRfYnJvd3NlcHJvcF90ZW1wbGF0ZSddID0gJ0xlZ2cgdGlsL3JlZGlnZXIgcyZvc2xhc2g7ay1pLWVnZW5za2FwKEJyb3dzZSBQcm9wZXJ0eSktbWFsJzsKJGxhbmdbJ2FkZGVkaXRfZGV0YWlsX3RlbXBsYXRlJ10gPSAnTGVnZyB0aWwvcmVkaWdlciBkYXRhbGptYWwnOwokbGFuZ1snYWRkZWRpdF9kaXJlY3RvcnlfdGVtcGxhdGUnXSA9ICdMZWdnIHRpbC9yZWRpZ2VyIGthdGFsb2dtYWwnOwokbGFuZ1snYWRkZWRpdF9zZWFyY2hmb3JtX3RlbXBsYXRlJ10gPSAnTGVnZyB0aWwvcmVkaWdlciBzJm9zbGFzaDtrZXNramVtYW1hbCc7CiRsYW5nWydhZGRlZGl0X3N1bW1hcnlfdGVtcGxhdGUnXSA9ICdMZWdnIHRpbC9yZWRpZ2VyIHNhbW1lbmRyYWdzbWFsJzsKJGxhbmdbJ2FsbCddID0gJ0FsbGUnOwokbGFuZ1snYW55J10gPSAnRW5odmVyJzsKJGxhbmdbJ2Fza19yZWFsbHlfdW5pbnN0YWxsJ10gPSAnRXIgZHUgc2lra2VyIHAmYXJpbmc7IGF0IGR1IHZpbCBnaiZvc2xhc2g7cmUgZGV0dGU/ICZBcmluZzsgZm9ydHNldHRlIHZpbCB1Z2plbmthbGxlbGlnIHNsZXR0ZSBhbGwgZGF0YSBhc3Nvc2llcnQgbWVkIGRlbm5lIG1vZHVsZW4uJzsKJGxhbmdbJ2NoYW5nZWxvZyddID0gJzx1bD4NCjxsaT5WZXJzaW9uIDEuMCAtIEphbnVhcnksIDIwMDkNCiAgPHA+SW5pdGlhbCBSZWxlYXNlPC9wPg0KPC9saT4NCjxsaT5WZXJzaW9uIDEuMQ0KICA8cD5BZGRzIHNlYXJjaCBhbmQgYnJvd3NlIGNhcGFiaWxpdGllcy48L3A+DQo8L2xpPg0KPGxpPlZlcnNpb24gMS4xLjEgLSBTZXB0ZW1iZXIsIDIwMDkNCiAgPHA+QWRkcyBzb3J0aW5nIGluIHRoZSBicm93c2UgYWN0aW9uLjwvcD4NCjwvbGk+DQo8bGk+VmVyc2lvbiAxLjEuMiAtIFNlcHRlbWJlciwgMjAwOQ0KICA8cD5GaXggcGFyYW1ldGVyIGNvbmZsaWN0IHdydCBzb3J0aW5nIGluIHRoZSBicm93c2UgYWN0aW9uLjwvcD4NCjwvbGk+DQo8bGk+VmVyc2lvbiAxLjEuMyAtIE9jdG9iZXIsIDIwMDkNCiAgPHA+TWlub3IgYnVnIGZpeC48L3A+DQo8L2xpPg0KPGxpPlZlcnNpb24gMS4xLjQgLSBPY3RvYmVyLCAyMDA5DQogIDxwPk1pbm9yIGJ1ZyBmaXguPC9wPg0KPC9saT4NCjxsaT5WZXJzaW9uIDEuMS40IC0gT2N0b2JlciwgMjAwOQ0KICA8cD5BZGQgbWlzc2luZyBsYW5nIHN0cmluZy48L3A+DQo8L2xpPg0KPGxpPlZlcnNpb24gMS4xLjUgLSBOb3ZlbWJlciwgMjAwOQ0KICA8cD5NaW5vciBidWcgZml4ZXMuPC9wPg0KPC9saT4NCjxsaT5WZXJzaW9uIDEuMS42IC0gTWFyY2gsIDIwMTANCiAgPHA+QWRkIHRoZSBhYmlsaXR5IHRvIHNvcnQgYnkgdXNlciBwcm9wZXJ0eSBpbiBzdW1tYXJ5IHZpZXc8L3A+DQo8L2xpPg0KPGxpPlZlcnNpb24gMS4yIC0gTWFyY2gsIDIwMTANCiAgPHA+QWRkcyB0aGUgYWJpbGl0eSB0byBzZWFyY2ggYnkgdHdvIHVzZXIgZGVmaW5lZCBwcm9wZXJ0aWVzIGluIHRoZSBzZWFyY2ggYWN0aW9uLjwvcD4NCiAgPHA+QWRkcyBudW1lcmljYWwgb3B0aW9ucyB0byB0aGUgZGlyZWN0b3J5IHZpZXcuPC9wPg0KPC9saT4NCjxsaT5WZXJzaW9uIDEuMi4xIC0gTWFyY2gsIDIwMTANCiAgPHA+TW9kaWZpZXMgdGhlIHNlYXJjaHByb3BlcnR5IGZpZWxkIHRvIHN1cHBvcnQgYSBsaXN0IG9mIHByb3BlcnR5IG5hbWVzLjwvcD4NCiAgPHA+Q29tcGxldGVseSBicmVha3MgZXhpc3Rpbmcgc2VhcmNoIGZvcm0gdGVtcGxhdGVzLjwvcD4NCiAgPHA+UmVtb3ZlcyB0aGUgc2hvcnQgbGl2ZWQgc2VhcmNocHJvcGVydHkyIHBhcmFtLjwvcD4NCjwvbGk+DQo8L3VsPic7CiRsYW5nWydjcmVhdGVkJ10gPSAnT3BwcmV0dGV0JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRncm91cCddID0gJ1VneWxkaWcgZ3J1cHBlJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRzb3J0ZmllbGQnXSA9ICdVZ3lsZGlnIHNvcnRlcmluZ3NmZWx0OiAlcyc7CiRsYW5nWydlcnJvcl9taXNzaW5ncGFyYW0nXSA9ICdVdGlsc3RyZWtrZWxpZ2UgcGFyYW1ldGVyZSc7CiRsYW5nWydlcnJvcl9ub2ZldSddID0gJ0Zyb250ZW5kIFVzZXJzIG1vZHVsZW4gYmxlIGlra2UgZnVubmV0JzsKJGxhbmdbJ2Vycm9yX3VzZXJub3Rmb3VuZCddID0gJ0JydWtlcmVuIG1lZCBkZW4gb3BwZ2l0dGUgaWQgYmxlIGlra2UgZnVubmV0JzsKJGxhbmdbJ2V4cGlyZXMnXSA9ICdVdGwmb3NsYXNoO3Blcic7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdDYWxndXlzIFVzZXIgRGlyZWN0b3J5ICc7CiRsYW5nWydncm91cHMnXSA9ICdHcnVwcGVyJzsKJGxhbmdbJ2hlbHAnXSA9ICc8aDM+V2hhdCBkb2VzIHRoaXMgZG8/PC9oMz4NCiAgPHA+VGhpcyBtb2R1bGUgcHJvdmlkZXMgdGhlIGFiaWxpdHkgZm9yIGdlbmVyYXRpbmcgYSBkaXJlY3Rvcnkgb2YgdXNlcnMgZnJvbSB0aGUgRkVVIG1vZHVsZSwgZm9yIGdlbmVyYXRpbmcgYSBzdW1tYXJ5IHZpZXcgb2YgdXNlcnMgbWF0Y2hpbmcgc3BlY2lmaWVkIGNyaXRlcmlhLCBhbmQgZm9yIGRpc3BsYXlpbmcgYSBkZXRhaWwgcmVwb3J0IG9mIGEgc3BlY2lmaWMgdXNlci4gIEl0IGNhbiBiZSB1c2VkIGZvciBnZW5lcmF0aW5nIHByb2ZpbGUgcGFnZXMgZm9yIHlvdXIgdXNlcnMsIG9yIGEgc3RhZmYgZGlyZWN0b3J5LjwvcD4NCjxoMz5GZWF0dXJlczo8L2gzPg0KPHVsPg0KICA8bGk+Q29tcGxldGUgdGVtcGxhdGUgY29udHJvbA0KPHA+QWxsIGRpc3BsYXlzIGFyZSBjb21wbGV0ZWx5IGNvbmZpZ3VyYWJsZSBieSB0ZW1wbGF0ZXMgYWxsb3dpbmcgZm9yIGphdmFzY3JpcHQsIGFqYXgsIG9yIGFueSBvdGhlciBmYW5jeSBkaXNwbGF5cy4gIFN0eWxpbmcgaXMgY29tcGxldGVseSBjb250cm9sbGFibGUgYnkgdGhlIHdlYnNpdGUgZGV2ZWxvcGVyLjwvcD4NCiAgPC9saT4NCiAgPGxpPk11bHRpcGxlIGRhdGFiYXNlIHRlbXBsYXRlcy4NCjxwPllvdSBjYW4gY29uZmlndXJlIG11bHRpcGxlIGRpZmZlcmVudCB2aWV3cyBmb3IgZWFjaCBkaXNwbGF5LCBhbmQgdXNlIHRoZW0gdW5kZXIgZGlmZmVyZW50IHNpdHVhdGlvbnMuPC9wPg0KICA8L2xpPg0KPGxpPkZpbHRlciBzdW1tYXJ5IHZpZXdzIG9uIHVzZXIgcHJvcGVydGllcy4NCiAgIDxwPllvdSBjYW4gZmlsdGVyIHRoZSBvdXRwdXQgZm9yIHRoZSBzdW1tYXJ5IHZpZXcgYmFzZWQgb24gdGhlIHZhbHVlIG9mIGEgc3BlY2lmaWMgdXNlciBwcm9wZXJ0eSBmcm9tIHRoZSBGRVUgbW9kdWxlLiAgVGhpcyBhbHNvIGluY2x1ZGVzICZhbXA7cXVvdDtMSUtFJmFtcDtxdW90OyBiYXNlZCBjcml0ZXJhLg0KICA8L2xpPg0KICA8bGk+U29ydGluZyBvbiBtdWx0aXBsZSBkaWZmZXJlbnQgY3JpdGVyaWEuPC9saT4NCiAgPGxpPlN1cHBvcnRzIFNFTyBmcmllbmRseSBVUkxTPC9saT4NCjwvdWw+DQo8aDM+SG93IGRvIEkgdXNlIGl0PzwvaDM+DQo8cD5UaGUgc2ltcGxlc3Qgd2F5IHRvIHVzZSB0aGlzIG1vZHVsZSBpcyB0byBwbGFjZSBhIHRhZyBsaWtlIHRoaXMgaW50byB5b3VyIHBhZ2UgdGVtcGxhdGUsIG9yIHBhZ2UgY29udGVudCA8Y29kZT57Q0dVc2VyRGlyZWN0b3J5fTwvY29kZT4uICBUbyBleHBhbmQgb24gdGhpcyBmdW5jdGlvbmFsaXR5LCBvciB0byBkaXNwbGF5IGEgc3Vic2V0IG9mIHlvdXIgdXNlcnMsIHNlZSB0aGUgcGFyYW1ldGVycyBiZWxvdy48L3A+DQo8aDM+RXhhbXBsZXM6PC9oMz4NCjx1bD4NCjxsaT5EaXNwbGF5IGEgZGlyZWN0b3J5IG9mIGFsbCB1c2VyczoNCjxwPjxjb2RlPntDR1VzZXJEaXJlY3RvcnkgYWN0aW9uPSZhbXA7cXVvdDtkaXJlY3RvcnkmYW1wO3F1b3Q7fTwvY29kZT48L3A+DQo8L2xpPg0KPGxpPkRpc3BsYXkgYSBkaXJlY3Rvcnkgb2YgYWxsIHVzZXJzIG9yZ2FuaXplZCBieSBjaXR5Og0KPHA+PGNvZGU+e0NHVXNlckRpcmVjdG9yeSBhY3Rpb249JmFtcDtxdW90O2RpcmVjdG9yeSZhbXA7cXVvdDsgcHJvcD0mYW1wO3F1b3Q7Y2l0eSZhbXA7cXVvdDt9PC9jb2RlPjwvcD4NCjwvbGk+DQo8bGk+RGlzcGxheSBhIHN1bW1hcnkgbGlzdCBvZiBhbGwgdXNlcnMgaW4gdGhlICZhbXA7cXVvdDttZW1iZXJzJmFtcDtxdW90OyBncm91cDoNCjxwPjxjb2RlPntDR1VzZXJEaXJlY3RvcnkgZ3JvdXA9JmFtcDtxdW90O21lbWJlcnMmYW1wO3F1b3Q7fTwvY29kZT48L3A+DQo8L2xpPg0KPGxpPkRpc3BsYXkgYSBzdW1tYXJ5IGxpc3Qgb2YgYWxsIHVzZXJzIGluIHRoZSBjaXR5IG9mIGNhbGdhcnk6DQo8cD48Y29kZT57Q0dVc2VyRGlyZWN0b3J5IHByb3A9JmFtcDtxdW90O2NpdHkmYW1wO3F1b3Q7IHByb3B2YWw9JmFtcDtxdW90O2NhbGdhcnkmYW1wO3F1b3Q7fTwvY29kZT48L3A+DQo8L2xpPg0KPGxpPkRpc3BsYXkgYSBzdW1tYXJ5IGxpc3Qgb2YgYWxsIHVzZXJzIGZyb20gY291bnRyaWVzIHRoYXQgYmVnaW4gd2l0aCBDOg0KPHA+PGNvZGU+e0NHVXNlckRpcmVjdG9yeSBwcm9wPSZhbXA7cXVvdDtjaXR5JmFtcDtxdW90OyB1c2VsaWtlPTEgcHJvcHZhbD0mYW1wO3F1b3Q7YyUmYW1wO3F1b3Q7fTwvY29kZT48L3A+DQo8L2xpPg0KDQo8L3VsPg0KDQo8aDM+Tm90ZXMgYWJvdXQgcHJldHR5IFVSTFM8L2gzPg0KPHA+JmFtcDtxdW90O1ByZXR0eSZhbXA7cXVvdDsgb3IgU0VPIGZyaWVuZGx5IFVSTFMgbGltaXRzIHRoZSBmbGV4aWJpbGl0eSBvZiB0aGlzIG1vZHVsZSwgYW5kIHRoZSBwYXJhbWV0ZXJzIHRoYXQgY2FuIGJlIHNwZWNpZmllZCBvbiB0aGUgdGFnLiBQYXJ0aWN1bGFybHkgdGhvc2UgdGhhdCBjYW4gYmUgcGFzc2VkIG9uIHRvIHN1YnNlcXVlbnQgdmlld3MuICBGb3IgdGhpcyByZWFzb24sIHRoZSBkaXJlY3RvcnkgdmlldyBkb2VzIG5vdCBnZW5lcmF0ZSBwcmV0dHkgdXJscyB0byB0aGUgc3Vic2VxdWVudCBzdW1tYXJ5IGxpbmtzLiAgVGhpcyBhbGxvd3MgcGFyYW1ldGVycyBsaWtlIGRldGFpbHBhZ2UsIGRldGFpbHRlbXBsYXRlLCBhbmQgc3VtbWFyeXRlbXBsYXRlIHRvIGJlIHBhc3NlZCBpbiB0aGUgdGFnIHRvIHRoZSBkaXJlY3RvcnkgdmlldyBhbmQgdG8gaGF2ZSB0aG9zZSBwYXJhbWV0ZXJzIHBhc3NlZCBkb3duIHRvIHRoZSBzdWJzZXF1ZW50IHN1bW1hcnkgZGV0YWlsIHZpZXdzLjwvcD4NCjwvcD4NCjxoMz5TdXBwb3J0PC9oMz4NCjxwPlRoaXMgbW9kdWxlIGRvZXMgbm90IGluY2x1ZGUgY29tbWVyY2lhbCBzdXBwb3J0LiBIb3dldmVyLCB0aGVyZSBhcmUgYSBudW1iZXIgb2YgcmVzb3VyY2VzIGF2YWlsYWJsZSB0byBoZWxwIHlvdSB3aXRoIGl0OjwvcD4NCjx1bD4NCjxsaT5Gb3IgdGhlIGxhdGVzdCB2ZXJzaW9uIG9mIHRoaXMgbW9kdWxlLCBGQVFzLCBvciB0byBmaWxlIGEgQnVnIFJlcG9ydCBvciBidXkgY29tbWVyY2lhbCBzdXBwb3J0LCBwbGVhc2UgdmlzaXQgdGhlIGNtcyBkZXZlbG9wbWVudCBmb3JnZSBhdCA8YSBocmVmPSJodHRwOi8vZGV2LmNtc21hZGVzaW1wbGUub3JnIj5kZXYuY21zbWFkZXNpbXBsZS5vcmc8L2E+LjwvbGk+DQo8bGk+QWRkaXRpb25hbCBkaXNjdXNzaW9uIG9mIHRoaXMgbW9kdWxlIG1heSBhbHNvIGJlIGZvdW5kIGluIHRoZSA8YSBocmVmPSJodHRwOi8vZm9ydW0uY21zbWFkZXNpbXBsZS5vcmciPkNNUyBNYWRlIFNpbXBsZSBGb3J1bXM8L2E+LjwvbGk+DQo8bGk+VGhlIGF1dGhvciwgY2FsZ3V5MTAwMCBhbGwgY2FuIG9mdGVuIGJlIGZvdW5kIGluIHRoZSA8YSBocmVmPSJpcmM6Ly9pcmMuZnJlZW5vZGUubmV0LyNjbXMiPkNNUyBJUkMgQ2hhbm5lbDwvYT4uPC9saT4NCjxsaT5MYXN0bHksIHlvdSBtYXkgaGF2ZSBzb21lIHN1Y2Nlc3MgZW1haWxpbmcgdGhlIGF1dGhvcihzKSBkaXJlY3RseS48L2xpPiAgDQo8L3VsPg0KDQo8aDM+Q29weXJpZ2h0IGFuZCBMaWNlbnNlPC9oMz4NCjxwPkNvcHlyaWdodCAmYW1wO2NvcHk7IDIwMDgsIFJvYmVydCBDYW1wYmVsIDxhIGhyZWY9Im1haWx0bzpjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnIj4mYW1wO2x0O2NhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcmYW1wO2d0OzwvYT4uIEFsbCBSaWdodHMgQXJlIFJlc2VydmVkLjwvcD4NCjxwPlRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5DQppdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQ0KdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3INCihhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uPC9wPg0KPHA+SG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkDQphcyBhbiBhZGRvbiBtb2R1bGUgdG8gQ01TIE1hZGUgU2ltcGxlLiAgWW91IG1heSBub3QgdXNlIHRoaXMgc29mdHdhcmUNCmluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMNCk1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiANCnNlY3Rpb24gdGhhdCB0aGUgc2l0ZSB3YXMgYnVpbHQgd2l0aCBDTVMgTWFkZSBzaW1wbGUuPC9wPg0KPHA+VGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsDQpidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZg0KTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQ0KR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4NCllvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlDQphbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQ0KRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0ENCk9yIHJlYWQgaXQgPGEgaHJlZj0iaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMIj5vbmxpbmU8L2E+PC9wPic7CiRsYW5nWydoZWxwX3BhcmFtX2FjdGlvbiddID0gJ0Rlbm5lIHBhcmFtZXRlciBrb250cm9sbGVyZXIgb3BwZiZvc2xhc2g7cnNlbGVuIGZvciBkZW5uZSBtb2R1bGVuLiBEZXQgZXIgdHJlIG11bGlnZSB2ZXJkaWVyOg0KPHVsPg0KICA8bGk+YnJvd3NlICAtIFZpcyBlbiBuYXZpZ2Fzam9uIGF2IGVnZW5za2Fwc3ZlcmRpZXIsIG9nIHRpbGxhdGVyICZhcmluZzsgZHJpbGxlIG5lZCB0aWwgdGlsaCZvc2xhc2g7cmVuZGUgc2FtbWVuZHJhZ3N2aXNuaW5nZXIuPC9saT4NCiAgPGxpPmRlZmF1bHQgLSBWaXNlciBlbiBzYW1tZW5kcmFnc3Zpc25pbmcgYXYgYnJ1a2VyZSBzb20gcGFzc2VyIHRpbCBkZXQgc3Blc2lmaXNlcnRlIGtyaXRlcmlldCwgZWxsZXIgYWxsZSBicnVrZXJlIG9tIGluZ2VuIGtyaXRlcmllIGVyIHNhdHQuPC9saT4NCiAgPGxpPmRpcmVjdG9yeSAtIFZpc2VyIGVuIGFsZmFiZXRpc2sga2F0YWxvZyBhdiBsZW5rZXIgdGlsIHNhbW1lbmRyYWdzdmlzbmluZyBhdiBicnVrZXJlIHNvbSBwYXNzZXIgdGlsIGRldCBzcGVzaWZpc2VydGUga3JpdGVyaWV0LiBEZXQgZXIgbXVsaWcgJmFyaW5nOyBvcHByZXR0ZSBrYXRhbG9ndmlzbmluZ2VyIHAmYXJpbmc7IGJydWtlcm5hdm4gZWxsZXIgcCZhcmluZzsgZW5odmVyIGFubmVuIHBhcmFtZXRlci48L2xpPg0KICA8bGk+ZGV0YWlsIC0gVmlzZXIgZGV0YWxqcmFwcG9ydCBvbSBlbiBzcGVzaWZpayBicnVrZXIuPC9saT4NCiAgPGxpPnNlYXJjaCAtIFZpc2VyIGV0IHMmb3NsYXNoO2tlc2tqZW1hLjwvbGk+DQo8L3VsPic7CiRsYW5nWydoZWxwX3BhcmFtX2Jyb3dzZXByb3B0ZW1wbGF0ZSddID0gJ0Rlbm5lIHBhcmFtZXRlciB0aWxsYXRlciAmYXJpbmc7IHNwZXNpZmlzZXJlIG5hdm5ldCBwJmFyaW5nOyBlbiBzJm9zbGFzaDtrLWktZWdlbnNrYXAoYnJvd3NlIHByb3BlcnR5KS1tYWwgc29tIGlra2UgZXIgc3RhbmRhcmQgJmFyaW5nOyBiZW55dHRlIGZvciBzJm9zbGFzaDtrZS12aXNuaW5nZW4nOwokbGFuZ1snaGVscF9wYXJhbV9ncm91cCddID0gJ04mYXJpbmc7ciBiZW55dHRldCBtZWQgc3RhbmRhcmQgaGFuZGxpbmdlbiBiJm9zbGFzaDtyIGRlbm5lIHBhcmFtZXRlciBpbm5laG9sZGUgbmF2bmV0IHAmYXJpbmc7IGVuIEZFVSBicnVrZXJncnVwcGUsIG9nIHZpbCBkYSBiZWdyZW5zZSB2aXNuaW5nZW4gdGlsIGt1biBtZWRsZW1tZXIgYXYgZGVuIGdydXBwZW4uJzsKJGxhbmdbJ2hlbHBfcGFyYW1fZ2lkJ10gPSAnTiZhcmluZztyIGJlbnl0dGV0IG1lZCBzdGFuZGFyZCBoYW5kbGluZ2VuIGImb3NsYXNoO3IgZGVubmUgcGFyYW1ldGVyIGlubmVob2xkZSBpZCYjMDM5O2VuIHAmYXJpbmc7IGVuIEZFVSBicnVrZXJncnVwcGUsIG9nIHZpbCBkYSBiZWdyZW5zZSB2aXNuaW5nZW4gdGlsIGt1biBtZWRsZW1tZXIgYXYgZGVuIGdydXBwZW4uIERlbm5lIHBhcmFtZXRlciBrYW4gaWtrZSBicnVrZXMgc2FtbWVuIG1lZCAmIzAzOTtncm91cCYjMDM5OyBwYXJhbWV0ZXJlbi4nOwokbGFuZ1snaGVscF9wYXJhbV9zaG93ZXhwaXJlZCddID0gJ1NvbSBzdGFuZGFyZCwgdmlsIHN5c3RlbWV0IHV0ZWx1a2tlIHV0bCZvc2xhc2g7cHRlIGJydWtlcmUgZnJhIGFsbGUgZ2VuZXJlcnRlIHJhcHBvcnRlci4gJkFyaW5nOyBzZXR0ZSBkZW5uZSBwYXJhbWV0ZXIgdGlsICAxICB2aWwgb2dzJmFyaW5nOyB1dGwmb3NsYXNoO3B0ZSBicnVrZXJlIGJsaSBpbmtsdWRlcnQuJzsKJGxhbmdbJ2hlbHBfcGFyYW1fYnNvcnRieSddID0gJ04mYXJpbmc7ciBiZW55dHRldCBtZWQgcyZvc2xhc2g7a2UgaGFuZGxpbmdlbiwgdmlsIGRlbm5lIHBhcmFtZXRlciBzcGVzaWZpc2VyZSBzb3J0ZXJpbmdzcmVra2VmJm9zbGFzaDtsZ2VuIGZvciBkZW4gZ2VuZXJlcnRlIGVnZW5za2Fwc3Zpc25pbmdlbi4gIE11bGlnZSB2ZXJkaWVyIGVyOg0KPHVsPg0KICA8bGk+bmFtZSAtIGVnZW5za2FwZW5zIG5hdm4uPC9saT4NCiAgPGxpPmNvdW50IC0gYW50YWxsIHRyZWZmLjwvbGk+DQo8L3VsPic7CiRsYW5nWydoZWxwX3BhcmFtX3NwYXJzZSddID0gJ0dqZWxkZXIga3VuIGZvciBrYXRhbG9nZW52aXNuaW5nLiBEZW5uZSBtdWxpZ2hldGVuIHZpbCBiYXJlIHZpc2UgZW4ga2F0YWxvZ2Jva3N0YXYgZGVyIGRldCBlciBzYW1zdmFyZW5kZSBicnVrZXJlLic7CiRsYW5nWydoZWxwX3BhcmFtX3Jlc3VsdHBhZ2UnXSA9ICdCZW55dHRldCB2ZWQgcyZvc2xhc2g7ayBvZyBibGEtZ2plbm5vbSBoYW5kbGluZ2VyIHZpbCBkZW5uZSBwYXJhbWV0ZXIgc3Blc2lmaXNlcmUgaHZpbGtlbiBDTVNNUyBpbm5ob2xkc2lkZSBzb20gc2thbCBiZW55dHRlcyBmb3IgJmFyaW5nOyB2aXNlIGRlIHBhc3NlbmRlIGFydGlrbGVuZSBmcmEgZmlsdHJlcmluZ3NvcGVyYXNqb25lbi4nOwokbGFuZ1snaGVscF9wYXJhbV9zb3J0YnknXSA9ICdCcnVrdCBtZWQgc3RhbmRhcmQgaGFuZGxpbmdlbiB2aWwgZGVubmUgcGFyYW1ldGVyZW4gc3Blc2lmaXNlcmUgc29ydGVyaW5nZW4gYXYgZGVuIGdlbmVyZXJ0ZSB2aXNuaW5nZW4uIE11bGlnZSB2ZXJkaWVyIGVyOg0KPHVsPg0KIDxsaT5pZCAtIEJydWtlcmVucyBpZCAoa3VuIHN0YW5kYXJkIHZpc25pbmcpPC9saT4NCiA8bGk+dXNlcm5hbWUgLSBCcnVrZXJlbnMgYnJ1a2VybmF2biAoa3VuIHN0YW5kYXJkIHZpc25pbmcpPC9saT4NCiA8bGk+Y3JlYXRlZGF0ZSAtIERhdG8gZm9yIG4mYXJpbmc7ciBicnVrZXJrb250b2VuIGJsZSBvcHByZXR0ZXQuIChrdW4gc3RhbmRhcmQgdmlzbmluZyk8L2xpPg0KIDxsaT5leHBpcmVzIC0gRGF0byBmb3IgbiZhcmluZztyIGJydWtlcmtvbnRvZW4gdmlsIHV0bCZvc2xhc2g7cGUgKGVsbGVyIG4mYXJpbmc7ciBkZW4gdXRsJm9zbGFzaDtwKS4gKGt1biBzdGFuZGFyZCB2aXNuaW5nKTwvbGk+DQogPGxpPmFjdGl2aXR5IC0gRGF0byBmb3IgbiZhcmluZztyIGRldCBzaXN0IGJsZSBsb2dnZXQgaW5uIGVsbGVyIHV0IGF2IGJydWtlcmtvbnRvZW4uIChrdW4gc3RhbmRhcmQgdmlzbmluZyk8L2xpPg0KIDxsaT5mOnByb3BlcnR5bmFtZSAtIERldHRlIHRpbGxhdGVyIHNvcnRlcmluZyBhdiB1dGRhdGEgZXR0ZXIgZXQgc3Blc2lmaXNlcnQgRkVVLWVnZW5za2Fwc25hdm4gZi5la3MuOiBmOmZ1bGxfbmFtZS4gIDxzdHJvbmc+TWVyazo8L3N0cm9uZz4gZHUga2FuIHNlIHV2ZW50ZWRlIHJlc3VsdGF0ZXIgb20gZ3J1cHBlbiBzb20gdmlzZXMgaWtrZSBoYXIgZGVubmUgZWdlbnNrYXBlbiwgZWxsZXIgaWtrZSBodmVyIGJydWtlciBpIHJlc3VsdGF0c2V0dGV0IGhhciBkZW5uZSBlZ2Vuc2thcGVuIGRlZmluZXJ0LiBEdSBrYW4gb2dzJmFyaW5nOyBlcmZhcmUgdXZlbnRlZGUgcmVzdWx0YXRlciBvbSBmZWx0ZXQgc29tIGVyIHNwZXNpZmlzZXJ0IGlra2UgZXIgZW4gdGVrc3RzdHJlbmcuIER1IGthbiBrYW5za2plIHRyZW5nZSAmYXJpbmc7IGVuZHJlIHNvcnRvcmRlciAoc29ydGVyaW5nc3Jla2tlZiZvc2xhc2g7bGdlKS1wYXJhbWV0ZXJlbiBmb3IgJmFyaW5nOyBmJmFyaW5nOyBkZXQgJm9zbGFzaDtuc2tlZGUgcmVzdWx0YXQuPC91bD4nOwokbGFuZ1snaGVscF9wYXJhbV9ic29ydG9yZGVyJ10gPSAnTiZhcmluZztyIGJlbnl0dGV0IG1lZCBzJm9zbGFzaDtrZSBoYW5kbGluZ2VuLCB2aWwgZGVubmUgcGFyYW1ldGVyIHNwZXNpZmlzZXJlIHNvcnRlcmluZ3NyZWtrZWYmb3NsYXNoO2xnZW4gZm9yIGRlbiBnZW5lcmVydGUgdmlzbmluZ2UuICBNdWxpZ2UgdmVyZGllciBlcjoNCjx1bD4NCiAgPGxpPkFTQyAtIFN0aWdlbmRlIHJla2tlZiZvc2xhc2g7bGdlPC9saT4NCiAgPGxpPkRFU0MgLSBTeW5rZW5kZSByZWtrZWYmb3NsYXNoO2xnZTwvbGk+DQo8L3VsPic7CiRsYW5nWydoZWxwX3BhcmFtX3NvcnRvcmRlciddID0gJ0JydWt0IG1lZCBzdGFuZGFyZCBoYW5kbGluZ2VuIHZpbCBkZW5uZSBwYXJhbWV0ZXJlbiBzcGVzaWZpc2VyZSBzb3J0ZXJpbmdzcmV0bmluZ2VuIHAmYXJpbmc7IGRlbiBnZW5lcmVydGUgdmlzbmluZ2VuLiBNdWxpZ2UgdmVyZGllciBlcjoNCjx1bD4NCiAgPGxpPkFTQyAtIFN0aWdlbmRlIHJla2tlZiZvc2xhc2g7bGdlPC9saT4NCiAgPGxpPkRFU0MgLSBTeW5rZW5kZSByZWtrZWYmb3NsYXNoO2xnZTwvbGk+DQo8L3VsPic7CiRsYW5nWydoZWxwX3BhcmFtX3BhZ2VsaW1pdCddID0gJ0JydWt0IG1lZCBzdGFuZGFyZCBoYW5kbGluZ2VuIHZpbCBkZW5uZSBwYXJhbWV0ZXJlbiBzcGVzaWZpc2VyZSBtYWtzaW1hbHQgYW50YWxsIHBvc3RlciBzb20gc2thbCB2aXNlcy4nOwokbGFuZ1snaGVscF9wYXJhbV9wcm9wJ10gPSAnQnJ1a3QgbWVkIHN0YW5kYXJkIG9nIGRpcmVjdG9yeSBoYW5kbGluZ2VuZSB2aWwgZGVubmUgcGFyYW1ldGVyIG9wcGYmb3NsYXNoO3JlIHNlZyBwJmFyaW5nOyB0byB1bGlrZSBtJmFyaW5nO3RlciBhbHQgZXR0ZXIgaGFuZGxpbmdlbjoNCjx1bD4NCiAgPGxpPlN0YW5kYXJkIChzYW1tZW5kcmFnKSBoYW5kbGluZ2VuLg0KICAgIDxwPkkgc3RhbmRhcmQgKHNhbW1lbmRyYWcpIGhhbmRsaW5nZW4ga2FuIGRlbm5lIHBhcmFtZXRlcmVuIGJlbnl0dGVzIGZvciAmYXJpbmc7IHNwZXNpZmlzZXJlIGVuIGVnZW5za2FwIG1hbiB2aWwgZmlsdHJlcmUgcCZhcmluZzsuPC9wPg0KICA8L2xpPg0KICA8bGk+QnJvd3NlIGhhbmRsaW5nZW4NCiAgICA8cD5JIGJyb3dzZSBoYW5kbGluZ2VuIGthbiBkZW5uZSBwYXJhbWV0ZXJlbiBiZW55dHRlcyBmb3IgJmFyaW5nOyBzcGVzaWZpc2VyZSBlbiBGRVUgZWdlbnNrYXAgJmFyaW5nOyBsZXRlIGk8L3A+DQogIDwvbGk+DQogIDxsaT5LYXRhbG9nIGhhbmRsaW5nZW4uDQogICAgPHA+SSBkaXJlY3Rvcnkoa2F0YWxvZykgaGFuZGxpbmdlbiBrYW4gZGVubmUgcGFyYW1ldGVyZW4gYmVueXR0ZXMgZm9yICZhcmluZzsgc3Blc2lmaXNlcmUgZW4gZWdlbnNrYXAgbWFuIHZpbCBnZW5lcmVyZSBlbiBrYXRhbG9nIGZyYS4gU3RhbmRhcmQgdmVyZGkgaSBkaXJlY3Rvcnkoa2F0YWxvZykgaGFuZGxpbmdlbiBlciAmYW1wO3F1b3RlO3Vuc2VybmFtZSZhbXA7cXVvdGU7PC9wPg0KICA8L2xpPg0KPC91bD4nOwokbGFuZ1snaGVscF9wYXJhbV9wcm9wdmFsJ10gPSAnQmVueXR0ZXQgc2FtbWVuIG1lZCAgJnF1b3Q7cHJvcCZxdW90OyAgcGFyYW1ldGVyZW4gZm9yIHN0YW5kYXJkIChzYW1tZW5kcmFnKSBoYW5kbGluZ2VuLCB0aWxsYXRlciBkZW5uZSBwYXJhbWV0ZXJlbiAmYXJpbmc7IHNwZXNpZmlzZXJlIGVuIHZlcmRpIHNvbSBicnVrZXJlIHNrYWwgZmlsdHJlcmVzIG1lZC4nOwokbGFuZ1snaGVscF9wYXJhbV91c2VsaWtlJ10gPSAnQmVueXR0ZXQgc2FtbWVuIG1lZCAgJnF1b3Q7cHJvcCZxdW90OyAgb2cgICZxdW90O3Byb3B2YWwmcXVvdDsgIHBhcmFtZXRlcmVuLCB2aWwgZGVubmUgcGFyYW1ldGVyZW4gLSBvbSBkZW4gZXIgc2F0dCB0aWwgZW4gcG9zaXRpdiBpbnRlZ2VyIHZlcmRpIC0gaW5kaWtlcmUgYXQgcHJvcHZhbCBwYXJhbWV0ZXJlbiBpbm5laG9sZGVyIGV0IExJS0UgdXR0cnlrayAoTElLRSBleHByZXNzaW9uKS4nOwokbGFuZ1snaGVscF9wYXJhbV9kZXRhaWxwYWdlJ10gPSAnRGVubmUgcGFyYW1ldGVyZW4sIG9tIHNwZXNpZmlzZXJ0LCBiJm9zbGFzaDtyIGlubmVob2xkZSBwYWdlaWQgZWxsZXIgYWxpYXMgZm9yIGVuIENNUyBpbm5ob2xkc2lkZSBodm9yIGR1IHZpbCBhdCBkZXRhbGpyYXBwb3J0ZXIgc2thbCB2aXNlcy4nOwokbGFuZ1snaGVscF9wYXJhbV9zdW1tYXJ5dGVtcGxhdGUnXSA9ICdEZW5uZSBwYXJhbWV0ZXIgdGlsbGF0ZXIgJmFyaW5nOyBzcGVzaWZpc2VyZSBuYXZuZXQgcCZhcmluZzsgZW4gbWFsLCBzb20gaWtrZSBlciBzeXN0ZW1zdGFuZGFyZCBmb3Igc2FtbWVuZHJhZywgJmFyaW5nOyBiZW55dHRlIGZvciBzYW1tZW5kcmFnc3Zpc25pbmdlcic7CiRsYW5nWydoZWxwX3BhcmFtX2RldGFpbHRlbXBsYXRlJ10gPSAnRGVubmUgcGFyYW1ldGVyIHRpbGxhdGVyICZhcmluZzsgc3Blc2lmaXNlcmUgbmF2bmV0IHAmYXJpbmc7IGVuIG1hbCwgc29tIGlra2UgZXIgc3lzdGVtc3RhbmRhcmQgZm9yIGRldGFsanZpc25pbmcsICZhcmluZzsgYmVueXR0ZSBmb3IgZGV0YWxqdmlzbmluZ2VyJzsKJGxhbmdbJ2hlbHBfcGFyYW1fZGlyZWN0b3J5dGVtcGxhdGUnXSA9ICdEZW5uZSBwYXJhbWV0ZXIgdGlsbGF0ZXIgJmFyaW5nOyBzcGVzaWZpc2VyZSBuYXZuZXQgcCZhcmluZzsgZW4gbWFsLCBzb20gaWtrZSBlciBzeXN0ZW1zdGFuZGFyZCBmb3Iga2F0YWxvZ3Zpc25pbmcsICZhcmluZzsgYmVueXR0ZSBmb3Iga2F0YWxvZ3Zpc25pbmdlcic7CiRsYW5nWydoZWxwX3BhcmFtX3NlYXJjaGZvcm10ZW1wbGF0ZSddID0gJ0Rlbm5lIHBhcmFtZXRlciB0aWxsYXRlciAmYXJpbmc7IHNwZXNpZmlzZXJlIG5hdm5ldCBwJmFyaW5nOyBlbiBzJm9zbGFzaDtrZW1hbCBzb20gaWtrZSBlciBzYXR0IHN0YW5kYXJkICZhcmluZzsgYmVueXR0ZSBpIHMmb3NsYXNoO2tlc2tqZW1hJzsKJGxhbmdbJ2hlbHBfcGFyYW1fc2VhcmNocHJvcGVydHknXSA9ICdEZW5uZSBwYXJhbWV0ZXIgdGlsbGF0ZXIgJmFyaW5nOyBzcGVzaWZpc2VyZSBldCBlbmtlbHQgZWtzdHJhIEZFVSBlZ2Vuc2thcHNuYXZuICZhcmluZzsgdGlsZiZvc2xhc2g7cmUgdGlsIHMmb3NsYXNoO2tlc2tqZW1hZXQnOwokbGFuZ1snaGVscF9wYXJhbV91aWQnXSA9ICdCZW55dHRldCBzYW1tZW4gbWVkIGRldGFsanZpc25pbmdlbiwgbSZhcmluZzsgZGVubmUgcGFyYW1ldGVyZW4gaW5uZWhvbGRlIHVpZCBmb3IgZW4gZ3lsZGlnIEZyb250RW5kVXNlciBrb250byc7CiRsYW5nWydpbmZvX2Jyb3dzZXByb3BfdGVtcGxhdGUnXSA9ICdTJm9zbGFzaDtrLWllZ2Vuc2thcChCcm93c2UgUHJvcGVydHkpLW1hbGVyIHZpc2VyIGVuIGxpc3RlIG1lZCB1bmlrZSB2ZXJkaWVyIGZvciBkZW4gc3Blc2lmaXNlcnRlIGVnZW5za2FwZW4uIEh2ZXIgb3BwZiZvc2xhc2g7cmluZyBpIGxpc3RlbiBlciBlbiBsZW5rZSB0aWwgZW4gc2FtbWVuZHJhZ3N2aXNuaW5nIHNvbSBpbm5laG9sZGVyIGRlIGJydWtlcm5lIHNvbSBwYXNzZXIgZGVuIGVnZW5za2Fwc3ZlcmRpZW4uIER1IGthbiBiZW55dHRlIGVudmhlciBzbWFydHlsb2dpa2sgZWxsZXIgdmFyaWFibGVyIHNvbSBhbGxlcmVkZSBlciBvcHByZXR0ZXQsIGVsbGVyIGRlIHNvbSBzcGVzaWZpa3QgZXIgZ2pvcnQgdGlsZ2plbmdlbGlnZSBmb3IgZGVubmUgdmlzbmluZ2VuLic7CiRsYW5nWydpbmZvX2Jyb3dzZXByb3BfdGVtcGxhdGVzX3RhYiddID0gJ0Rlbm5lIGZhbmVuIGlubmVob2xkZXJsaXN0ZW4gbWVkIHRpbGdqZW5nZWxpZ2UgcyZvc2xhc2g7ay1pZWdlbnNrYXAoYnJvd3NlIHByb3BlcnR5KSB2aXNuaW5nc21hbGVyLiBFbiBhdiBkZW0gZXIgc2F0dCBzb20gc3RhbmRhcmQuIERlbiBzb20gZXIgc3RhbmRhcmQgdmlsIGJsaSBiZW55dHRldCBuJmFyaW5nO3IgaW5nZW4gYW5kcmUgbWFsbmF2biBlciBvcHBnaXR0IGkgdGFnZ2VuIHNvbSBrYWxsZXIgZGVubmUgbW9kdWxlbic7CiRsYW5nWydpbmZvX2RldGFpbF90ZW1wbGF0ZSddID0gJ0RldGFsam1hbGVyIHZpc2VyIGRldGFsamVydCBpbmZvcm1hc2pvbiBvbSBlbiBzcGVzaWZpZXNlcnQgRnJvbnRFbmRVc2VyLiBIRXIgZGVzaWduZXIgZHUgbSZhcmluZzt0ZW4gZHUgdmlsIGF0IGRlbm5lIGluZm9ybWFzam9uZW4gc2thbCB2aXNlcy4gRHUga2FuIGJydWtlIGFsbCBzbWFydHkgbG9naWtrIGVsbGVyIHZhcmlhYmxlciBzb20gZnJhIGYmb3NsYXNoO3IgaGFyIGJsaXR0IGRlc2lnbmV0LCBlbGxlciBkZSBzb20gZXIgZ2pvcnQgdGlsZ2plbmdlbGlnZSBzcGVzaWVsdCBmb3IgZGVubmUgdmlzbmluZ2VuJzsKJGxhbmdbJ2luZm9fZGV0YWlsX3RlbXBsYXRlc190YWInXSA9ICdEZW5uZSBmYW5lbiBpbm5laG9sZGVyIGxpc3RlbiBtZWQgdGlsZ2plbmdlbGlnZSBkZXRhbGp2aXNuaW5nIG1hbGVyLiBFbiBhdiBkZW0gZXIgbWFya2VydCBzb20gc3RhbmRhcmQuIERlbiBzb20gZXIgc3RhbmRhcmQgdmlsIGJsaSBiZW55dHRldCBuJmFyaW5nO3IgaWtrZSBldCBhbm5ldCBtYWxuYXZuIGVyIGVrc3BsaXNpdHQgYW5naXR0IGkgdGFnZ2VuIHNvbSBrYWxsZXIgZGVubmUgbW9kdWxlbic7CiRsYW5nWydpbmZvX2RpcmVjdG9yeV90ZW1wbGF0ZSddID0gJ0thdGFsb2dtYWxlciB2aXNlciBlbiBhbGZhYmV0aXNrIGxpc3RlIG1lZCBsZW5rZXIuIE4mYXJpbmc7ciBlbiBsZW5rZSBrbGlra2VzIHZpbCBkZW4gdmlzZSBlbiBzYW1tZW5kcmFnc3Zpc25pbmcgYXYgZGUgYnJ1a2VybmUgc29tIHBhc3NlciBtZWQgZGVuIGJva3N0YXZlbi4gRGV0IGVyIG11bGlnICZhcmluZzsgb3BwcmV0dGUga2F0YWxvZ2VyIGJhc2VydCBwJmFyaW5nOyBmb3Jza2plbGxpZ2UgZWdlbnNrYXBlci4gSGVyIGRlc2lnbmVyIGR1IGh2b3JkYW4gZHUgdmlsIGF0IGRlbm5lIGluZm9ybWFzam9uZW4gc2thbCB2aXNlcy4gRHUga2FuIGJydWtlIGFsbCBzbWFydHkgbG9naWtrIGVsbGVyIHZhcmlhYmxlciBzb20gZnJhIGYmb3NsYXNoO3IgaGFyIGJsaXR0IGRlc2lnbmV0LCBlbGxlciBkZSBzb20gZXIgZ2pvcnQgdGlsZ2plbmdlbGlnZSBzcGVzaWVsdCBmb3IgZGVubmUgdmlzbmluZ2VuJzsKJGxhbmdbJ2luZm9fZGlyZWN0b3J5X3RlbXBsYXRlc190YWInXSA9ICdEZW5uZSBmYW5lbiBpbm5laG9sZGVyIGxpc3RlbiBtZWQgdGlsZ2plbmdlbGlnZSBrYXRhbG9nbWFsZXIuIEVuIGF2IGRlbSBlciBtYXJrZXJ0IHNvbSBzdGFuZGFyZC4gRGVuIHNvbSBlciBzdGFuZGFyZCB2aWwgYmxpIGJlbnl0dGV0IG4mYXJpbmc7ciBpa2tlIGV0IGFubmV0IG1hbG5hdm4gZXIgZWtzcGxpc2l0dCBhbmdpdHQgaSB0YWdnZW4gc29tIGthbGxlciBkZW5uZSBtb2R1bGVuJzsKJGxhbmdbJ2luZm9fc3VtbWFyeV90ZW1wbGF0ZSddID0gJ1NhbW1lbmRyYWdzbWFsZXIgdmlzZXIgaW5mb3JtYXNqb24gb20gZW4gbGlzdGUgbWVkIGJydWtlcmUgc29tIHNhbXN2YXJlciBtZWQgZXQga3JpdGVyaXVtLiAgSGVyIGRlc2lnbmVyIGR1IGh2b3JkYW4gZHUgdmlsIGF0IGRlbm5lIGluZm9ybWFzam9uZW4gc2thbCB2aXNlcy4gRHUga2FuIGJydWtlIGFsbCBzbWFydHlsb2dpa2sgZWxsZXIgdmFyaWFibGVyIHNvbSBmcmEgZiZvc2xhc2g7ciBoYXIgYmxpdHQgZGVzaWduZXQsIGVsbGVyIGRlIHNvbSBlciBnam9ydCB0aWxnamVuZ2VsaWdlIHNwZXNpZWx0IGZvciBkZW5uZSB2aXNuaW5nZW4nOwokbGFuZ1snaW5mb19zZWFyY2hmb3JtX3RlbXBsYXRlJ10gPSAnUyZvc2xhc2g7a2Vza2plbWFtYWxlciB2aXNlciBldCBza2plbWEgZm9yICZhcmluZzsgdGlsbGF0ZSBzJm9zbGFzaDtraW5nIGV0dGVyIGVuIGJlc3RlbXQgYnJ1a2VyIGVsbGVyIGVuIGJydWtlcmdydXBwZS4gSGVyIGRlc2lnbmVyIGR1IG0mYXJpbmc7dGVuIGR1IHZpbCBhdCBza2plbWEgc2thbCB2aXNlcy4gRHUga2FuIGJydWtlIGFsbCBzbWFydHlsb2dpa2sgZWxsZXIgdmFyaWFibGVyIHNvbSBmcmEgZiZvc2xhc2g7ciBoYXIgYmxpdHQgZGVzaWduZXQsIGVsbGVyIGRlIHNvbSBlciBnam9ydCB0aWxnamVuZ2VsaWdlIHNwZXNpZWx0IGZvciBkZW5uZSB2aXNuaW5nZW4nOwokbGFuZ1snaW5mb19zZWFyY2hmb3JtX3RlbXBsYXRlc190YWInXSA9ICdEZW5uZSBmYW5lbiBpbm5laG9sZGVyIGxpc3RlbiBtZWQgdGlsZ2plbmdlbGlnZSBzJm9zbGFzaDtrZXNramVtYW1hbGVyLiBFbiBhdiBkaXNzZSBlciBtYXJrZXJ0IHNvbSBzdGFuZGFyZC4gRGVuIHNvbSBlciBzdGFuZGFyZCB2aWwgYXV0b21hdGlzayBibGkgYmVueXR0ZXQgb20gZGV0IGlra2UgZXQgYW5uZXQgbmF2biBvcHBnaXMgaSB0YWdnZW4gc29tIGthbGxlciBvcHAgZGVubmUgbW9kdWxlbic7CiRsYW5nWydpbmZvX3N1bW1hcnlfdGVtcGxhdGVzX3RhYiddID0gJ0Rlbm5lIGZhbmVuIGlubmVob2xkZXIgbGlzdGVuIG1lZCB0aWxnamVuZ2VsaWdlIHNhbW1lbmRyYWdzbWFsZXIuIEVuIGF2IGRlbSBlciBtYXJrZXJ0IHNvbSBzdGFuZGFyZC4gRGVuIHNvbSBlciBzdGFuZGFyZCB2aWwgYmxpIGJlbnl0dGV0IG4mYXJpbmc7ciBpa2tlIGV0IGFubmV0IG1hbG5hdm4gZXIgZWtzcGxpc2l0dCBhbmdpdHQgaSB0YWdnZW4gc29tIGthbGxlciBkZW5uZSBtb2R1bGVuJzsKJGxhbmdbJ2luZm9fc3lzZGZsdF9icm93c2Vwcm9wX3RlbXBsYXRlJ10gPSAnU3lzdGVtc3RhbmRhcmQgcyZvc2xhc2g7ay1pLWVnZW5za2FwKEJyb3dzZSBQcm9wZXJ0eSkgdmlzbmluZ3NtYWwnOwokbGFuZ1snaW5mb19zeXNkZmx0X2RldGFpbF90ZW1wbGF0ZSddID0gJ1N5c3RlbXN0YW5kYXJkIGRldGFsanZpc25pbmdzbWFsJzsKJGxhbmdbJ2luZm9fc3lzZGZsdF9kaXJlY3RvcnlfdGVtcGxhdGUnXSA9ICdTeXN0ZW1zdGFuZGFyZCBrYXRhbG9nbWFsJzsKJGxhbmdbJ2luZm9fc3lzZGZsdF9zZWFyY2hmb3JtX3RlbXBsYXRlJ10gPSAnU3lzdGVtc3RhbmRhcmQgcyZvc2xhc2g7a2Vza2plbWFtYWwnOwokbGFuZ1snaW5mb19zeXNkZmx0X3N1bW1hcnlfdGVtcGxhdGUnXSA9ICdTeXN0ZW1zdGFuZGFyZCBzYW1tZW5kcmFnc3Zpc25pbmdzbWFsJzsKJGxhbmdbJ2luZm9fc3lzZGZsdF90ZW1wbGF0ZSddID0gJyZBcmluZzsgZW5kcmUgaSBkZW5uZSBtYWwgdmlsIGlra2UgaGEgbm9lbiB1bWlkZGVsYmFyIGVmZmVrdCBwJmFyaW5nOyBub2VuIHZpc25pbmcuICBEZXR0ZSBza2plbWEga29udHJvbGxlcmVyIGlubmhvbGRldCBwJmFyaW5nOyBtYWxlbiBzb20gb3BwcmV0dGVzIG4mYXJpbmc7ciBkdSBrbGlra2VyICZxdW90O055IG1hbCZxdW90OyBpIGRlbiBha3R1ZWxsZSBmYW5lbi4nOwokbGFuZ1snbGFzdF9hY3RpdmUnXSA9ICdTaXN0ZSBha3RpdmUnOwokbGFuZ1snbGJsX2Jyb3dzZXByb3B0ZW1wbGF0ZXMnXSA9ICdTJm9zbGFzaDtrLWktZWdlbnNrYXAoQnJvd3NlIFByb3BlcnR5KSBtYWxlcic7CiRsYW5nWydsYmxfZGVmYXVsdHRlbXBsYXRlcyddID0gJ1N0YW5kYXJkIG1hbGVyJzsKJGxhbmdbJ2xibF9kZXRhaWx0ZW1wbGF0ZXMnXSA9ICdEZXRhbGp2aXNuaW5ncyBtYWxlcic7CiRsYW5nWydsYmxfZGlyZWN0b3J5dGVtcGxhdGVzJ10gPSAnS2F0YWxvZ21hbGVyJzsKJGxhbmdbJ2xibF9maXJzdF9wYWdlJ10gPSAnRyZhcmluZzsgdGlsIGYmb3NsYXNoO3JzdGUgc2lkZW4nOwokbGFuZ1snbGJsX2xhc3RfcGFnZSddID0gJ0cmYXJpbmc7IHRpbCBzaXN0ZSBzaWRlbic7CiRsYW5nWydsYmxfbmV4dF9wYWdlJ10gPSAnRyZhcmluZzsgdGlsIG5lc3RlIHNpZGUnOwokbGFuZ1snbGJsX3ByZXZfcGFnZSddID0gJ0cmYXJpbmc7IHRpbCBmb3JyaWdlIHNpZGUnOwokbGFuZ1snbGJsX3NlYXJjaGZvcm10ZW1wbGF0ZXMnXSA9ICdTJm9zbGFzaDtrZXNramVtYW1hbGVyJzsKJGxhbmdbJ2xibF9zZXR0aW5ncyddID0gJ0lubnN0aWxsaW5nZXInOwokbGFuZ1snbGJsX3N1bW1hcnl0ZW1wbGF0ZXMnXSA9ICdTYW1tZW5kcmFnc3Zpc25pbmdzIG1hbGVyJzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnRW4gbW9kdWwgc29tIHRpbGxhdGVyIHMmb3NsYXNoO2tpbmcsIGJsYWluZyBvZyB2aXNuaW5nIGF2IGRldGFsamVyIG9tIEZyb250RW5kVXNlcnMnOwokbGFuZ1snb2YnXSA9ICdhdic7CiRsYW5nWydwYWdlJ10gPSAnU2lkZSc7CiRsYW5nWydwb3N0aW5zdGFsbCddID0gJ0NHVXNlckRpcmVjdG9yeSBtb2R1bGVuIGVyIG4mYXJpbmc7IGtsYXIgZm9yICZhcmluZzsga29uZmlndXJlcmVzJzsKJGxhbmdbJ3Bvc3R1bmluc3RhbGwnXSA9ICdDR1VzZXJkaXJlY3RvcnkgbW9kdWxlbiwgb2cgYWxsZSBhc3Nvc2llcnRlIGRhdGEgaGFyIGJsaXR0IGF2aW5zdGFsbGVydCBmcmEgZGF0YWJhc2VuJzsKJGxhbmdbJ3Jlc3VsdHNfYWxsX2FueSddID0gJ1JldHVybmVyIHJlc3VsdGF0ZXIgc29tIHNhbXN2YXJlciBtZWQgYWxsZSBlbGxlciBlbmh2ZXIgYXYgdmlsayZhcmluZztyZW5lIHNwZXNpZmlzZXJ0JzsKJGxhbmdbJ3N1Ym1pdCddID0gJ1V0ZiZvc2xhc2g7cic7CiRsYW5nWyd1c2VybmFtZSddID0gJ0JydWtlcm5hdm4nOwokbGFuZ1sndXRteiddID0gJzE1Njg2MTM1My4xMjY5Mjg0OTA1LjI1MzYuNTUudXRtY3NyPWZvcnVtLmNtc21hZGVzaW1wbGUub3JnfHV0bWNjbj0ocmVmZXJyYWwpfHV0bWNtZD1yZWZlcnJhbHx1dG1jY3Q9L2luZGV4LnBocCc7CiRsYW5nWyd1dG1hJ10gPSAnMTU2ODYxMzUzLjE3OTA1MjYyMzA4NDExMDEwMC4xMjEwNDIzNTc3LjEyNjk3MjI1NzkuMTI2OTczNDQyMS4yNTY3JzsKJGxhbmdbJ3FjYSddID0gJzEyMTA5NzE2OTAtMjczMDgwNzMtODE5NTI4MzInOwokbGFuZ1sndXRtYiddID0gJzE1Njg2MTM1Myc7CiRsYW5nWyd1dG1jJ10gPSAnMTU2ODYxMzUzJzsKPz4=]]></data>
	</file>
	<file>
	  <filename>/lang/ext/nl_NL.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2FkZGVkaXRfYnJvd3NlcHJvcF90ZW1wbGF0ZSddID0gJ1RvZXZvZWdlbi93aWp6aWdlbiBicm93c2UgZWlnZW5zY2hhcHBlbiBzamFibG9vbic7CiRsYW5nWydhZGRlZGl0X2RldGFpbF90ZW1wbGF0ZSddID0gJ1RvZXZvZWdlbi93aWp6aWdlbiBkZXRhaWwgc2phYm9vbic7CiRsYW5nWydhZGRlZGl0X2RpcmVjdG9yeV90ZW1wbGF0ZSddID0gJ1RvZXZvZWdlbi93aWp6aWdlbiBkaXJlY3Rvcnkgc2phYmxvb24nOwokbGFuZ1snYWRkZWRpdF9zZWFyY2hmb3JtX3RlbXBsYXRlJ10gPSAnVG9ldm9lZ2VuL3dpanppZ2VuIGZvcm11bGllciBzamFib29uJzsKJGxhbmdbJ2FkZGVkaXRfc3VtbWFyeV90ZW1wbGF0ZSddID0gJ1RvZXZvZWdlbi93aWp6aWdlbiBzYW1lbnZhdHRpbmcgc2phYmxvb24nOwokbGFuZ1snYWxsJ10gPSAnQWxsZSc7CiRsYW5nWydhbnknXSA9ICdFbmlnZSc7CiRsYW5nWydhc2tfcmVhbGx5X3VuaW5zdGFsbCddID0gJ1dlZXQgdSB6ZWtlciBkYXQgdSBkaXQgd2lsdCBkb2VuPyBEb29yZ2FhbiB6YWwgYWxsZSBnZWdldmVucyB2YW4gZGV6ZSBtb2R1bGUgZGVmaW5pdGllZiB2ZXJ3aWpkZXJlbic7CiRsYW5nWydjcmVhdGVkJ10gPSAnR2VtYWFrdCc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZ3JvdXAnXSA9ICdWZXJrZWVyZGUgZ3JvZXAnOwokbGFuZ1snZXJyb3JfaW52YWxpZHNvcnRmaWVsZCddID0gJ1ZlcmtlZXJkIGtldXpldmVsZDogJXMnOwokbGFuZ1snZXJyb3JfbWlzc2luZ3BhcmFtJ10gPSAnVGUgd2VpbmlnIHBhcmFtZXRlcnMnOwokbGFuZ1snZXJyb3Jfbm9mZXUnXSA9ICdEZSBGcm9udGVuZCBVc2VycyBtb2R1bGUgaXMgbmlldCBhYW53ZXppZyc7CiRsYW5nWydlcnJvcl91c2Vybm90Zm91bmQnXSA9ICdEZSBnZWJydWlrZXIgbWV0IGRpdCBJRCBpcyBuaWV0IGdldm9uZGVuJzsKJGxhbmdbJ2V4cGlyZXMnXSA9ICdWZXJsb29wdCc7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdDYWxndXlzIFVzZXIgRGlyZWN0b3J5ICc7CiRsYW5nWydncm91cHMnXSA9ICdHcm9lcGVuJzsKJGxhbmdbJ2hlbHAnXSA9ICc8aDM+V2FhciB3b3JkdCBoZXQgdm9vciBnZWJydWlrdD88L2gzPg0KPHA+RGV6ZSBtb2R1bGUgZ2VlZnQgZGUgbW9nZWxpamtoZWlkIG9tIG92ZXJ6aWNodGVuIHRlIGdlbmVyZXJlbiBtZXQgc2FtZW52YXR0aW5nZW4gdmFuIGdlZ2V2ZW5zIHZhbiBGcm9udEVuZFVzZXJzIG9wIGJhc2lzIHZhbiB2b29yaW5nZXN0ZWxkZSB2b29yd2FhcmRlbi4gT29rIGthbiBlciBlZW4gdWl0Z2VicmVpZGRlIHBhZ2luYSB3b3JkZW4gZ2VtYWFrdC4gSGV0IGthbiBnZWJydWlrdCB3b3JkZW4gdm9vciBoZXQgbWFrZW4gdmFuIHByb2ZpZWwgcGFnaW5hJiMwMzk7cyBvZiBhbHMgZWVuIHpnbi4gc21vZWxlbmJvZWsuPC9wPg0KDQo8aDM+TW9nZWxpamtoZWRlbjo8L2gzPg0KPHVsPg0KICA8bGk+Vm9sbGVkaWcgc2phYmxvb25iZWhlZXINCjxwPkFsbGUgc2NoZXJtZW4gemlqbiBkb29yIGRlIGJlc2NoaWtiYXJlIHNqYWJsb25lbiBnZWhlZWwgdGUgY29uZmlndXJlcmVuLCBlciBrYW4gb29rIGdlYnJ1aWsgZ2VtYWFrdCB3b3JkZW4gdmFuIG8uYS4gamF2YXNjcmlwdCwgYWpheCwgZXRjLiBEZSB2b3JtZ2V2aW5nIGlzIGhpZXJkb29yIGdlaGVlbCB0ZSB3aWp6aWdlbiBkb29yIGRlIHdlYnNpdGUgdm9ybWdldmVyLjwvcD4NCiAgPC9saT4NCiAgPGxpPk1lZXJkZXJlIGRhdGFiYXNlIHNqYWJsb25lbi4NCjxwPlUga3VudCBvcCB2ZXJzY2hpbGxlbmRlIG1hbmllcmVuIG1ldCBkZSBnZWdldmVucyBzY2hlcm1lbiBvcGJvdXdlbiBlbiBkZXplIG9wIGRpdmVyc2UgbWFuaWVyZW4gZ2VicnVpa2VuLjwvcD4NCiAgPC9saT4NCjxsaT5GaWx0ZXIgc2FtZW52YXR0aW5nZW4gZG9vciBnZWJydWlrIHZhbiBnZWJydWlrZXJzZ2VnZXZlbnMuDQo8cD5VIGt1bnQgZGUgdWl0a29tc3QgZmlsdGVyZW4gZ2ViYXNlZXJkIG9wIGVlbiBzcGVjaWZpZWtlIGdlYnJ1aWtlciB1aXQgZGUgRkVVIG1vZHVsZS4gRGl0IGlzIGluY2x1c2llZiAmcXVvdDtMSUtFJnF1b3Q7IGdlYmFzZWVyZGUgY3JpdGVyaWEuPC9wPg0KICA8L2xpPg0KICA8bGk+U29ydGVyZW4gbWV0IG1lZXJkZXJlIGNyaXRlcmlhLjwvbGk+DQogIDxsaT5PbmRlcnN0ZXVuZCBTRU8gdnJpZW5kZWxpamtlIFVSTCYjMDM5O3M8L2xpPg0KPC91bD4NCjxoMz5Ib2UgZ2VicnVpayBpayBoZXQ/PC9oMz4NCjxwPkRlIG1ha2tlbGlqa3N0ZSBtYW5pZXIgb20gZGUgbW9kdWxlIHRlIGdlYnJ1aWtlbiBpcyBkb29yIGVlbiB0YWcgaW4gZGUgcGFnaW5hc2phYmxvb24gb2YgaW4gZGUgcGFnaW5hIGNvbnRlbnQgdGUgcGxhYXRzZW46IDxjb2RlPntDR1VzZXJEaXJlY3Rvcnl9PC9jb2RlPi4gT20gZGUgZnVuY3Rpb25hbGl0ZWl0IHVpdCB0ZSBicmVpZGVuIG9mIG9tIHNsZWNodHMgZWVuIGdlZGVlbHRlIHRlIGxhdGVuIHppZW4gZ2VicnVpayBvbmRlcnN0YWFuZGUgcGFyYW1ldGVycy48L3A+DQoNCjxoMz5Wb29yYmVlbGRlbjo8L2gzPg0KPHVsPg0KPGxpPkxhYXQgYWxsZSBnZWJydWlrZXJzIHppZW46DQo8cD48Y29kZT57Q0dVc2VyRGlyZWN0b3J5IGFjdGlvbj0mcXVvdDtkaXJlY3RvcnkmcXVvdDt9PC9jb2RlPjwvcD4NCjwvbGk+DQo8bGk+TGFhdCBkZSBnZWJydWlrZXJzIHBlciB3b29ucGxhYXRzIHppZW46DQo8cD48Y29kZT57Q0dVc2VyRGlyZWN0b3J5IGFjdGlvbj0mcXVvdDtkaXJlY3RvcnkmcXVvdDsgcHJvcD0mcXVvdDtjaXR5JnF1b3Q7fTwvY29kZT48L3A+DQo8L2xpPg0KPGxpPkxhYXQgZWVuIHNhbWVudmF0dGluZyB6aWVuIHZhbiBhbGxlIGdlYnJ1aWtlcnMgaW4gZGUgJnF1b3Q7bWVtYmVycyZxdW90OyBncm9lcDoNCjxwPjxjb2RlPntDR1VzZXJEaXJlY3RvcnkgZ3JvdXA9JnF1b3Q7bWVtYmVycyZxdW90O308L2NvZGU+PC9wPg0KPC9saT4NCjxsaT5MYWF0IGFsbGUgYmVicnVpa2VycyB6aWVuIGluIGRlIHdvb25wbGFhdHMgJnF1b3Q7Q2FsZ2FyeSZxdW90OzoNCjxwPjxjb2RlPntDR1VzZXJEaXJlY3RvcnkgcHJvcD0mcXVvdDtjaXR5JnF1b3Q7IHByb3B2YWw9JnF1b3Q7Y2FsZ2FyeSZxdW90O308L2NvZGU+PC9wPg0KPC9saT4NCjxsaT5MYWF0IGFsbGUgZ2VicnVpa2VycyB6aWVuIGRpZSB3b25lbiBpbiBlZW4gbGFuZCBkaWUgYmVnaW50IG1ldCBkZSBsZXR0ZXIgQzoNCjxwPjxjb2RlPntDR1VzZXJEaXJlY3RvcnkgcHJvcD0mcXVvdDtjaXR5JnF1b3Q7IHVzZWxpa2U9MSBwcm9wdmFsPSZxdW90O2MlJnF1b3Q7fTwvY29kZT48L3A+DQo8L2xpPg0KDQo8L3VsPg0KDQo8aDM+T3BtZXJraW5nZW4gb3ZlciAmcXVvdDtwcmV0dHkgVVJMJiMwMzk7cyZxdW90OzwvaDM+DQo8cD4mcXVvdDtQcmV0dHkmcXVvdDsgb2YgU0VPIHZyaWVuZGVsaWprZSBVUkwmIzAzOTtzIGJlcGVya2VuIGRlIGZsZXhpYmlsaXRlaXQgdmFuIGRlIG1vZHVsZSBlbiBkZSB0ZSBnZWJydWlrZW4gcGFyYW1ldGVycy4gTWV0IG5hbWUgZGllZ2VuZSBkaWUgZG9vcmdlc3R1dXJkIHdvcmRlbiB2YW4gb25kZXJsaWdnZW5kZSBzY2hlcm1lbi4gT20gZGV6ZSByZWRlbiB3b3JkZW4gZXIgZ2VlbiBwcmV0dHktdXJsJiMwMzk7cyBnZWdlbmVyZWVyZCBpbiBkZSBzYW1lbnZhdHRpbmdzIHZlcndpanppbmdlbi4gSGllcmRvb3Iga3VubmVuIGRlIHBhcmFtZXRlcnMgem9hbHMgJnF1b3Q7ZGV0YWlscGFnZSZxdW90OywgJnF1b3Q7ZGV0YWlsdGVtcGxhdGUmcXVvdDsgZW4gICZxdW90O3N1bW1hcnl0ZW1wbGF0ZSZxdW90OyB3b3JkZW4gZ2VicnVpa3QgaW4gZGUgdGFnIG9tIGRlIG1vZHVsZSB0ZSBnZWJydWlrZW4gZW4ga3VubmVuIGRlemUgZ2VicnVpa3Qgd29yZGVuIGluIGRlIG9uZGVybGlnZ2VuZGUgZGV0YWlsIG92ZXJ6aWNodGVuLjxiciAvPg0KPCEtLSBSb2xmOiAtLT5bVmVydGFsZXI6IEhvcGVsaWprIGlzIGRpdCB3YXQgQ2FsZ3V5IGJlZG9lbGRlLCBraWprIGFuZGVycyBldmVuIGluIGRlIEVuZ2Vsc2UgdmVyc2llIV0NCjwvcD4NCjxoMz5TdXBwb3J0IFtFbmcuXTwvaDM+DQo8cD5UaGlzIG1vZHVsZSBkb2VzIG5vdCBpbmNsdWRlIGNvbW1lcmNpYWwgc3VwcG9ydC4gSG93ZXZlciwgdGhlcmUgYXJlIGEgbnVtYmVyIG9mIHJlc291cmNlcyBhdmFpbGFibGUgdG8gaGVscCB5b3Ugd2l0aCBpdDo8L3A+DQo8dWw+DQo8bGk+Rm9yIHRoZSBsYXRlc3QgdmVyc2lvbiBvZiB0aGlzIG1vZHVsZSwgRkFRcywgb3IgdG8gZmlsZSBhIEJ1ZyBSZXBvcnQgb3IgYnV5IGNvbW1lcmNpYWwgc3VwcG9ydCwgcGxlYXNlIHZpc2l0IHRoZSBjbXMgZGV2ZWxvcG1lbnQgZm9yZ2UgYXQgPGEgaHJlZj0iaHR0cDovL2Rldi5jbXNtYWRlc2ltcGxlLm9yZyI+ZGV2LmNtc21hZGVzaW1wbGUub3JnPC9hPi48L2xpPg0KPGxpPkFkZGl0aW9uYWwgZGlzY3Vzc2lvbiBvZiB0aGlzIG1vZHVsZSBtYXkgYWxzbyBiZSBmb3VuZCBpbiB0aGUgPGEgaHJlZj0iaHR0cDovL2ZvcnVtLmNtc21hZGVzaW1wbGUub3JnIj5DTVMgTWFkZSBTaW1wbGUgRm9ydW1zPC9hPi48L2xpPg0KPGxpPlRoZSBhdXRob3IsIGNhbGd1eTEwMDAgYWxsIGNhbiBvZnRlbiBiZSBmb3VuZCBpbiB0aGUgPGEgaHJlZj0iaXJjOi8vaXJjLmZyZWVub2RlLm5ldC8jY21zIj5DTVMgSVJDIENoYW5uZWw8L2E+LjwvbGk+DQo8bGk+TGFzdGx5LCB5b3UgbWF5IGhhdmUgc29tZSBzdWNjZXNzIGVtYWlsaW5nIHRoZSBhdXRob3IocykgZGlyZWN0bHkuPC9saT4gIA0KPC91bD4NCg0KPGgzPkNvcHlyaWdodCBhbmQgTGljZW5zZSBbRW5nLl08L2gzPg0KPHA+Q29weXJpZ2h0ICZjb3B5OyAyMDA4LCBSb2JlcnQgQ2FtcGJlbCA8YSBocmVmPSJtYWlsdG86Y2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZyI+PGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmc+PC9hPi4gQWxsIFJpZ2h0cyBBcmUgUmVzZXJ2ZWQuPC9wPg0KPHA+VGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkNCml0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5DQp0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcg0KKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi48L3A+DQo8cD5Ib3dldmVyLCBhcyBhIHNwZWNpYWwgZXhjZXB0aW9uIHRvIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgZGlzdHJpYnV0ZWQNCmFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQ0KaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUw0KTWFkZSBzaW1wbGUgdGhhdCBkb2VzIG5vdCBpbmRpY2F0ZSBjbGVhcmx5IGFuZCBvYnZpb3VzbHkgaW4gaXRzIGFkbWluIA0Kc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS48L3A+DQo8cD5UaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwNCmJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mDQpNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlDQpHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLg0KWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UNCmFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlDQpGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQ0KT3IgcmVhZCBpdCA8YSBocmVmPSJodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwiPm9ubGluZTwvYT48L3A+JzsKJGxhbmdbJ2hlbHBfcGFyYW1fYWN0aW9uJ10gPSAnRGV6ZSBwYXJhbWV0ZXIgYmVoZWVydCBkZSB3ZXJrd2lqemUgdmFuIGRlIG1vZHVsZS4gRXIgemlqbiBkcmllIG1vZ2VsaWprZSB3YWFyZGVuOg0KPHVsPg0KICA8bGk+ZGVmYXVsdCAtIExhYXQgZWVuIHNhbWVudmF0dGluZyB2YW4gZGUgZ2VicnVpa2VycyB6aWVuLCBkaWUgYWFuIGRlemUgdm9vcndhYXJkZW4gdm9sZG9ldCAmb2FjdXRlO2YgYWxsZSBnZWJydWlrZXJzIGFscyBlciBnZWVuIHZvb3J3YWFyZGVuIGluZ2V2b2VyZCB6aWpuLjwvbGk+DQogIDxsaT5kaXJlY3RvcnkgLSBHZWVmdCBpbiBhbGZhYmV0aXNjaGUgdm9sZ29yZGUgdmVyd2lqemluZ2VuIHdlZXIgbmFhciBkZSBzYW1lbnZhdHRpbmdlbiB2YW4gZGUgZ2VicnVpa2VycyBkaWUgdm9sZG9lbiBhYW4gZGUgdm9vcndhYXJkZW4uIEhldCBpcyBtb2dlbGlqayBvbSBlZW4gZGlyZWN0b3J5IG92ZXJ6aWNodCB0ZSBrcmlqZ2VuIG1ldCBlZW4gZ2VicnVpa2Vyc25hYW0gb2YgZWxrZSBhbmRlcmUgcGFyYW1ldGVyLjwvbGk+DQogIDxsaT5kZXRhaWwgLSBHZWVmdCBlZW4gdm9sbGVkaWcgb3ZlcnppY2h0IHdlZXIgdmFuIGRlIGdlc3BlY2lmaWNlZXJkZSBnZWJydWlrZXIuPC9saT4NCjwvdWw+JzsKJGxhbmdbJ2hlbHBfcGFyYW1fYnJvd3NlcHJvcHRlbXBsYXRlJ10gPSAnRGV6ZSBwYXJhbWV0ZXIgc3RhYXQgdG9lIG9tIGVlbiBuaWV0LXN0YW5kYWFyZCBlaWdlbnNjaGFwcGVuc2phYmxvb24gd2VlciB0ZSBnZXZlbiB2b29yIGVlbiB3ZWVyZ2F2ZSB3YWFyYmlqIGRlIGVpZ2Vuc2NoYXBwZW4gYmVrZWtlbiBrdW5uZW4gd29yZGVuJzsKJGxhbmdbJ2hlbHBfcGFyYW1fZ3JvdXAnXSA9ICdEZXplIHBhcmFtZXRlciBtb2V0IGRlIG5hYW0gaW5ob3VkZW4gdmFuIGVlbiBGRVUgZ2VicnVpa2Vyc2dyb2VwICc7CiRsYW5nWydoZWxwX3BhcmFtX2dpZCddID0gJ0RlemUgcGFyYW1ldGVyIG1vZXQgZGUgSUQgdmFuIGVlbiBGRVUgZ2VicnVpa2Vyc2dyb2VwIGJldmF0dGVuIGVuIHphbCBkZSB1aXRrb21zdCBiZXBlcmtlbiB0b3QgZGUgbGVkZW4gdmFuIGRlemUgZ3JvZXAuIERlemUgcGFyYW1ldGVyIGthbiBuaWV0IGdlYnJ1aWt0IHdvcmRlbiBzYW1lbiBtZXQgZGUgJiMwMzk7Z3JvdXAmIzAzOTsgcGFyYW1ldGVyLic7CiRsYW5nWydoZWxwX3BhcmFtX3Nob3dleHBpcmVkJ10gPSAnU3RhbmRhYXJkIHdhYXJkZSwgZGUgbW9kdWxlIHphbCB2ZXJsb3BlbiBnZWJydWlrZXJzIG5pZXQgdG9uZW4gaW4gZGUgZ2VicnVpa3RlIHJhcHBvcnRlbi4gRG9vciBkZSBwYXJhbWV0ZXIgb3AgJnF1b3Q7MSZxdW90OyB0ZSB6ZXR0ZW4genVsbGVuIGRlemUgdyZlYWN1dGU7bCB3b3JkZW4gZ2V0b29uZC4nOwokbGFuZ1snaGVscF9wYXJhbV9ic29ydGJ5J10gPSAnVXNlZCBmb3IgdGhlIGJyb3dzZSBhY3Rpb24sIHRoaXMgcGFyYW1ldGVyIHNwZWNpZmllcyB0aGUgc29ydCBvcmRlciBvZiB0aGUgZ2VuZXJhdGVkIHByb3BlcnR5IG91dHB1dC4gIFBvc3NpYmxlIHZhbHVlcyBhcmU6DQo8dWw+DQogIDxsaT5uYW1lIC0gdGhlIHByb3BlcnR5IG5hbWUuPC9saT4NCiAgPGxpPmNvdW50IC0gdGhlIG51bWJlciBvZiBtYXRjaGVzLjwvbGk+DQo8L3VsPic7CiRsYW5nWydoZWxwX3BhcmFtX3NwYXJzZSddID0gJ0FsbGVlbiB2YW4gdG9lcGFzc2luZyBvcCBkZSBkaXJlY3Rvcnktd2VlcmdhdmU7IGRlemUgb3B0aWUgemFsIGFsbGVlbiBkZSBkaXJlY3RvcnktbGV0dGVyIHdlZXJnZXZlbiB2b29yIG92ZXJlZW5rb21zdGlnZSBnZWJydWlrZXJzLic7CiRsYW5nWydoZWxwX3BhcmFtX3Jlc3VsdHBhZ2UnXSA9ICdHZWJydWlrIGJpaiB6b2VrLSBlbiB3ZWVyZ2F2ZWFjdGllczsgZGV6ZSBwYXJhbWV0ZXIgZ2VlZnQgYWFuIHdlbGtlIENNU01TIGNvbnRlbnRwYWdpbmEgemFsIG1vZXRlbiB3b3JkZW4gZ2VicnVpa3Qgdm9vciBkZSB3ZWVyZ2F2ZSB2YW4gb3ZlcmVlbmtvbXN0aWdlIGFydGlrZWxlbiB1aXQgZGUgZmlsdGVyYWN0aWUuJzsKJGxhbmdbJ2hlbHBfcGFyYW1fc29ydGJ5J10gPSAnR2VicnVpa3Qgdm9vciBzdGFuZGFhcmQgYWN0aWVzLCBkZXplIHBhcmFtZXRlciBzcGVjaWZpY2VlcnQgZGUgdm9sZ29yZGUgdmFuIGRlIGdlZ2VuZXJlZXJkZSB1aXRrb21zdC4gIE1vZ2VsaWprZSB3YWFyZGVuIHppam46DQo8dWw+DQogPGxpPmlkIC0gRGUgZ2VicnVpa2VycyBpZDwvbGk+DQogPGxpPnVzZXJuYW1lIC0gRGUgZ2VicnVpa2Vyc25hYW08L2xpPg0KIDxsaT5jcmVhdGVkYXRlIC0gRGUgZGF0dW0gZGF0IGhldCBnZWJydWlrZXJzYWNjb3VudCBpcyBhYW5nZW1hYWt0LjwvbGk+DQogPGxpPmV4cGlyZXMgLSBEZSBkYXR1bSB3YW5uZWVyIGhldCBnZWJydWlrZXJzYWNjb3VudCB6YWwgdmVybG9wZW4gKG9mIGlzIHZlcmxvcGVuKS48L2xpPg0KIDxsaT5hY3Rpdml0eSAtIERlIGRhdHVtIHdhbm5lZXIgZGUgZ2VicnVpa2VyIGhldCBsYWF0c3Qgd2FzIGluLSBvZiB1aXRnZWxvZ2QuPC9saT4NCjwvdWw+JzsKJGxhbmdbJ2hlbHBfcGFyYW1fYnNvcnRvcmRlciddID0gJ1VzZWQgZm9yIHRoZSBicm93c2UgYWN0aW9uLCB0aGlzIHBhcmFtZXRlciBzcGVjaWZpZXMgdGhlIHNvcnQgb3JkZXIgb2YgdGhlIGdlbmVyYXRlZCBvdXRwdXQuICBQb3NzaWJsZSB2YWx1ZXMgYXJlOg0KPHVsPg0KICA8bGk+QVNDIC0gQXNjZW5kaW5nIG9yZGVyPC9saT4NCiAgPGxpPkRFU0MgLSBEZXNjZW5kaW5nIG9yZGVyPC9saT4NCjwvdWw+JzsKJGxhbmdbJ2hlbHBfcGFyYW1fc29ydG9yZGVyJ10gPSAnR2VicnVpayB2b29yIHN0YW5kYWFyZCBhY3RpZXMsIGRlemUgcGFyYW1ldGVyIHNwZWNpZmljZWVydCBkZSB2b2xnb3JkZSB2YW4gd2VlcmdldmVuIHZhbiBkZSBnZWZpbHRlcmRlIGluZm9ybWF0aWUuIE1vZ2VsaWprZSB3YWFyZGVuIHppam46DQo8dWw+DQogIDxsaT5BU0MgLSAoQXNjZW5kaW5nIG9yZGVyKSBBZmxvcGVuZGUgdm9sZ29yZGU8L2xpPg0KICA8bGk+REVTQyAtIChEZXNjZW5kaW5nIG9yZGVyKSBPcGxvcGVuZGUgdm9sZ29yZGU8L2xpPg0KPC91bD4nOwokbGFuZ1snaGVscF9wYXJhbV9wYWdlbGltaXQnXSA9ICdEZXplIHBhcmFtZXRlciBzcGVjaWZpY2VlcmQgaGV0IG1heGltdW0gYWFudGFsIGdlYnJ1aWtlcnMgZGllIHdvcmRlbiBnZXRvb25kLic7CiRsYW5nWydoZWxwX3BhcmFtX3Byb3AnXSA9ICdHZWJydWlrdCB2b29yIGRlIHN0YW5kYWFyZCBlbiBkaXJlY3RvcnkgYWN0aWVzLCAgZGV6ZSBwYXJhbWV0ZXIgZ2VkcmFhZ3QgemljaCBvcCB0d2VlIHZlcnNjaGlsbGVuZGUgbWFuaWVyZW4gYWZoYW5nZW5kIHZhbiBkZSBhY3RpZToNCg0KPHVsPg0KICA8bGk+RGUgc3RhbmRhYXJkIChzYW1lbnZhdHRpbmcpIGFjdGllDQogICAgPHA+SW4gZGUgc3RhbmRhYXJkIChzYW1lbnZhdHRpbmcpIGFjdGllLCBrYW4gZGV6ZSBwYXJhbWV0ZXIgd29yZGVuIGdlYnJ1aWt0IG9tIGVlbiBiZXBhYWxkZSBlaWdlbnNjaGFwIHRlIHNwZWNpZmljZXJlbiBvbSB0ZSBmaWx0ZXJlbi48L3A+DQogIDwvbGk+DQogIDxsaT5EZSBkaXJlY3RvcnkgYWN0aWUuDQogICAgPHA+SW4gZGUgZGlyZWN0b3J5IGFjdGllLCBrYW4gZGV6ZSBwYXJhbWV0ZXIgd29yZGVuIGdlYnJ1aWt0IG9tIGVlbiBlaWdlbnNjaGFwIHRlIHNwZWNpZmljZXJlbiBvbSBlZW4gZGlyZWN0b3J5IHRlIHNwZWNpZmljZXJlbi4gRGUgc3RhbmRhYXJkIHdhYXJkZSBpcyAmcXVvdDt1c2VybmFtZSZxdW90OyAoZ2VicnVpa2Vyc25hYW0pPC9wPg0KICA8L2xpPg0KPC91bD4nOwokbGFuZ1snaGVscF9wYXJhbV9wcm9wdmFsJ10gPSAnR2VicnVpa3QgaW4gc2FtZW5oYW5nIG1ldCBkZSAmcXVvdDtwcm9wJnF1b3Q7IHBhcmFtZXRlciB2b29yIGRlIHN0YW5kYWFyZCAoc2FtZW52YXR0aW5nKSBhY3RpZSwgbWV0IGRlemUgcGFyYW1ldGVyIGthbiBlZW4gd2FhcmRlIHdvcmRlbiBnZWdldmVuIHdhYXJtZWUgZGUgZ2VicnVpa2VycyBnZWZpbHRlcmQga2FuIHdvcmRlbi4nOwokbGFuZ1snaGVscF9wYXJhbV91c2VsaWtlJ10gPSAnR2VicnVpa3QgaW4gc2FtZW5oYW5nIG1ldCBkZSAmcXVvdDtwcm9wJnF1b3Q7IGVuIGRlICZxdW90O3Byb3B2YWwmcXVvdDsgcGFyYW1ldGVycy4gQWxzIGRlemUgcGFyYW1ldGVyIGVlbiBwb3NpdGlldmUgd2FhcmRlIGhlZWZ0LCB6YWwgZGl0IGFhbmdldmVuIGRhdCBkZSAmcXVvdDtwcm9wdmFsJnF1b3Q7IHBhcmFtZXRlciBlZW4gTElLRSAmIzAzOTtleHByZXNzaW9uJiMwMzk7IGJldmF0Lg0KJzsKJGxhbmdbJ2hlbHBfcGFyYW1fZGV0YWlscGFnZSddID0gJ0FscyBkZXplIHBhcmFtZXRlciB3b3JkdCBnZWJydWlrdCwgemFsIGRlemUgZWVuIHBhZ2luYSBJRCBvZiBlZW4gcGFnaW5hIGFsaWFzIGJldmF0dGVuIHZhbiBlZW4gQ01TIHBhZ2luYSB3YWFyIHUgaGV0IHJhcHBvcnQgd2lsdCB3ZWVyZ2V2ZW4uJzsKJGxhbmdbJ2hlbHBfcGFyYW1fc3VtbWFyeXRlbXBsYXRlJ10gPSAnRGV6ZSBwYXJhbWV0ZXIgd29yZHQgZ2VicnVpa3Qgb20gZWVuIG5pZXQgc3RhbmRhYXJkIHNhbWVudmF0dGluZ3NqYWJsb29uIHRlIHNwZWNpZmljZXJlbiB2b29yIGhldCBzYW1lbnZhdHRpbmdzY2hlcm0uJzsKJGxhbmdbJ2hlbHBfcGFyYW1fZGV0YWlsdGVtcGxhdGUnXSA9ICdEZXplIHBhcmFtZXRlciB3b3JkdCBnZWJydWlrdCBvbSBlZW4gbmlldCBzdGFuZGFhcmQgZGV0YWlsIHNqYWJsb29uIHRlIHNwZWNpZmljZXJlbiB2b29yIGhldCBkZXRhaWwgc2NoZXJtLic7CiRsYW5nWydoZWxwX3BhcmFtX2RpcmVjdG9yeXRlbXBsYXRlJ10gPSAnRGV6ZSBwYXJhbWV0ZXIgd29yZHQgZ2VicnVpa3Qgb20gZWVuIG5pZXQgc3RhbmRhYXJkIGRldGFpbCBzamFibG9vbiB0ZSBzcGVjaWZpY2VyZW4gdm9vciBoZXQgZGlyZWN0b3J5IHNjaGVybS4nOwokbGFuZ1snaGVscF9wYXJhbV9zZWFyY2hmb3JtdGVtcGxhdGUnXSA9ICdNZXQgZGV6ZSBwYXJhbWV0ZXIga3VudCB1IGVlbiBuaWV0IHN0YW5kYWFyZCB6b2Vrc2phYmxvb25uYWFtIHNwZWNpZmljZXJlbiB2b29yIGhldCBnZWJydWlrIHZhbiBlZW4gem9la2Zvcm11bGllcic7CiRsYW5nWydoZWxwX3BhcmFtX3NlYXJjaHByb3BlcnR5J10gPSAnTWV0IGRlemUgcGFyYW1ldGVyIGt1bnQgdSBlZW4gZW5rZWx2b3VkaWdlIEZFVSBlaWdlbnNjaGFwc25hYW0gdG9ldm9lZ2VuIGFhbiBoZXQgem9la2Zvcm11bGllcic7CiRsYW5nWydoZWxwX3BhcmFtX3VpZCddID0gJ0dlYnJ1aWt0IGluIHNhbWVuaGFuZyBtZXQgaGV0IGRldGFpbCBzY2hlcm0sIGRlemUgcGFyYW1ldGVyIG1vZXQgZWVuIFVJRCBiZXZhdHRlbiB2YW4gZWVuIGJlc3RhYW5kIEZyb250RW5kVXNlciBhY2NvdW50Lic7CiRsYW5nWydpbmZvX2Jyb3dzZXByb3BfdGVtcGxhdGUnXSA9ICdIZXQgJiMwMzk7d2VlcmdhdmUgdmFuIGVpZ2Vuc2NoYXBwZW4mIzAzOTstc2phYmxvb24gZ2VlZnQgZWVuIGxpanN0IHZhbiB1bmlla2Ugd2FhcmRlIHdlZXIgdm9vciBkZSBvcGdlZ2V2ZW4gZWlnZW5zY2hhcC4gRWxrIGl0ZW0gaW4gZGUgbGlqc3QgaXMgZWVuIGxpbmsgbmFhciBlZW4gc2FtZW52YXR0aW5nc3dlZXJnYXZlIG1ldCBkYWFyaW4gZGUgZ2VicnVpa2VycyBkaWUgb3ZlcmVlbmtvbWVuIG1ldCBkaWUgZWlnZW5zY2hhcHdhYXJkZS4gVSBrdW50IHNtYXJ0eSBsb2dpY2Egb2YgdmFyaWFiZWxlbiBnZWJydWlrZW4gZGllIHZvb3JoZWVuIHppam4gZ2VtYWFrdCBvZiB1IGt1bnQgZXIgZWVuIG1ha2VuIHNwZWNpYWFsIHZvb3IgZGV6ZSB3ZWVyZ2F2ZS4nOwokbGFuZ1snaW5mb19icm93c2Vwcm9wX3RlbXBsYXRlc190YWInXSA9ICdEZXplIHRhYiBiZXZhdCBlZW4gbGlqc3QgbWV0IGRlIGJlc2NoaWtiYXJlICYjMDM5O3dlZXJnYXZlIHZhbiBlaWdlbnNjaGFwcGVuJiMwMzk7LXNqYWJsb25lbi4gRWVuIHZhbiBkZXplIGlzIGdlbWFya2VlcmQgYWxzIHN0YW5kYWFyZC4gSGV0IHN0YW5kYWFyZCBzamFibG9vbiB6YWwgd29yZGVuIGdlYnJ1aWt0IGFscyBlciBnZWVuIGFsdGVybmF0aWVmIHNqYWJsb29uIGlzIGFhbmdlZ2V2ZW4gaW4gZGUgdGFnIGRpZSBkZXplIG1vZHVsZSBvcHJvZXB0Lic7CiRsYW5nWydpbmZvX2RldGFpbF90ZW1wbGF0ZSddID0gJ0RldGFpbCBzamFibG9uZW4gZ2V2ZW4gZWVuIGdlZGV0YWlsbGVlcmRlIGluZm9ybWF0aWUgd2VlciB2YW4gZWVuIGJlcGFhbGRlIEZyb250RW5kVXNlci4gSGllciBiZXBhYWwgamUgaG9lIGRlemUgaW5mb3JtYXRpZSB3b3JkdCB3ZWVyZ2VnZXZlbi4gVSBrdW50IGdlYnJ1aWsgbWFrZW4gdmFuICZxdW90O3NtYXJ0eSZxdW90OyBsb2dpY2Egb2YgdmFuIHZhcmlhYmVsZW4gZGllIGVlcmRlciB6aWpuIGdlbWFha3Qgb2YgdmFuIHZhcmlhYmVsZW4gZGllIHNwZWNpYWFsIHZvb3IgZGl0IGRvZWwgemlqbiBnZW1hYWt0JzsKJGxhbmdbJ2luZm9fZGV0YWlsX3RlbXBsYXRlc190YWInXSA9ICdEZXplIHRhYiBiZXZhdCBlZW4gbGlqc3QgbWV0IGJlc2NoaWtiYXJlIGRldGFpbCBzamFibG9uZW4uIEUmZWFjdXRlO24gaXMgYWFuZ2V2aW5rdCBhbHN6aWpuZGUgc3RhbmRhYXJkLiBEZXplIHN0YW5kYWFyZCBzamFibG9vbiB6YWwgd29yZGVuIGdlYnJ1aWt0IGFscyBlciBnZWVuIGFsdGVybmF0aWVmIHdvcmR0IGFhbmdlbWFha3QgaW4gZGUge3RhZ30gZGllIGRlemUgbW9kdWxlIGFhbnJvZXB0JzsKJGxhbmdbJ2luZm9fZGlyZWN0b3J5X3RlbXBsYXRlJ10gPSAnRGlyZWN0b3J5IHNqYWJsb25lbiBnZXZlbiBlZW4gYWxmYWJldGlzY2hlIGxpanN0IHZhbiB2ZXJ3aWp6aW5nZW4gd2Vlciwgd2FubmVlciBvcCBkZSBsaW5rIHdvcmR0IGdla2xpa3QgemFsIGVlbiBzYW1lbnZhdHRpbmcgZ2V2ZW4gdmFuIGRlIGJpamJlaG9yZW5kZSBnZWJydWlrZXJzIHZvb3IgZGllIGxldHRlci4gSGV0IGlzIG1vZ2VsaWprIG9tIGRpcmVjdG9yeSYjMDM5O3MgdGUgY3JlJmV1bWw7cmVuIGdlYmFzZWVyZCBvcCB2ZXJzY2hpbGxlbmRlIHBhcmFtZXRlcnMuICBIaWVyIGJlcGFhbCBqZSBob2UgZGV6ZSBpbmZvcm1hdGllIHdvcmR0IHdlZXJnZWdldmVuLiBVIGt1bnQgZ2VicnVpayBtYWtlbiB2YW4gJnF1b3Q7c21hcnR5JnF1b3Q7IGxvZ2ljYSBvZiB2YW4gdmFyaWFiZWxlbiBkaWUgZWVyZGVyIHppam4gZ2VtYWFrdCBvZiB2YW4gdmFyaWFiZWxlbiBkaWUgc3BlY2lhYWwgdm9vciBkaXQgZG9lbCB6aWpuIGdlbWFha3QnOwokbGFuZ1snaW5mb19kaXJlY3RvcnlfdGVtcGxhdGVzX3RhYiddID0gJ0RlemUgdGFiIGJldmF0IGVlbiBsaWpzdCBtZXQgYmVzY2hpa2JhcmUgZGlyZWN0b3J5IHNqYWJsb25lbi4gRSZlYWN1dGU7biBpcyBhYW5nZXZpbmt0IGFscyB6aWpuZGUgc3RhbmRhYXJkLiBEZXplIHN0YW5kYWFyZCBzamFibG9vbiB6YWwgd29yZGVuIGdlYnJ1aWt0IGFscyBlciBnZWVuIGFsdGVybmF0aWVmIHdvcmR0IGFhbmdlbWFha3QgaW4gZGUge3RhZ30gZGllIGRlemUgbW9kdWxlIGFhbnJvZXB0JzsKJGxhbmdbJ2luZm9fc3VtbWFyeV90ZW1wbGF0ZSddID0gJ1NhbWVudmF0dGluZ3NzamFibG9uZW4gZ2V2ZW4gaW5mb3JtYXRpZSB3ZWVyIHZhbiBlZW4gbGlqc3QgZ2VicnVpa2VycyBkaWUgdm9sZG9lbiBhYW4gZWVuIGJlcGFhbGRlIGNyaXRlcmlhLiBIaWVyIGJlcGFhbCBqZSBob2UgZGV6ZSBpbmZvcm1hdGllIHdvcmR0IHdlZXJnZWdldmVuLiBVIGt1bnQgZ2VicnVpayBtYWtlbiB2YW4gJnF1b3Q7c21hcnR5JnF1b3Q7IGxvZ2ljYSBvZiB2YW4gdmFyaWFiZWxlbiBkaWUgZWVyZGVyIHppam4gZ2VtYWFrdCBvZiB2YW4gdmFyaWFiZWxlbiBkaWUgc3BlY2lhYWwgdm9vciBkaXQgZG9lbCB6aWpuIGdlbWFha3QnOwokbGFuZ1snaW5mb19zZWFyY2hmb3JtX3RlbXBsYXRlJ10gPSAnWm9la2Zvcm11bGllciBzamFibG9uZW4gdG9uZW4gZWVuIGZvcm11bGllciBkaWUgdSBsYWF0IHpvZWtlbiBuYWFyIGVlbiBiZXBhYWxkZSBnZWJydWlrZXIgb2YgbmFhciBlZW4gZ3JvZXAgZ2VicnVpa2Vycy4gSGllciBrdW50IHUgaGV0IGZvcm11bGllciB2b3JtZ2V2ZW4uIFUga3VudCBnZWJydWlrIG1ha2VuIHZhbiBzbWFydHkgbG9naWNhIG9mIHZhcmlhYmVsZW4gZGllIGVlcmRlciBnZW1hYWt0IHppam4gb2YgZGllZ2VuZSBkaWUgc3BlY2lhYWwgdm9vciBkaXQgZG9lbCB6aWpuIGdlbWFha3QnOwokbGFuZ1snaW5mb19zZWFyY2hmb3JtX3RlbXBsYXRlc190YWInXSA9ICdEZXplIHRhYiBiZXZhdCBlZW4gbGlqc3QgdmFuIGJlc2NoaWtiYXJlIHpvZWtmb3JtdWxpZXIgc2phYmxvbmVuLiBFJiMwMzk7biBlcnZhbiBpcyBnZW1lcmt0IGFscyBzdGFuZGFhcmQuICBEZXplIHdvcmR0IGdlYnJ1aWt0IHdhbm5lZXIgZXIgZ2VlbiBhbmRlcmUgc2phYmxvb25uYWFtIGlzIGluZ2V2b2VyZCBpbiBkZSB0YWcgZGllIGRlemUgbW9kdWxlIGFhbnJvZXB0JzsKJGxhbmdbJ2luZm9fc3VtbWFyeV90ZW1wbGF0ZXNfdGFiJ10gPSAnRGV6ZSB0YWIgYmV2YXQgZWVuIGxpanN0IG1ldCBiZXNjaGlrYmFyZSBzYW1lbnZhdHRpbmdzamFibG9uZW4uIEUmZWFjdXRlO24gaXMgYWFuZ2V2aW5rdCBhbHMgemlqbmRlIHN0YW5kYWFyZC4gRGV6ZSBzdGFuZGFhcmQgc2phYmxvb24gemFsIHdvcmRlbiBnZWJydWlrdCBhbHMgZXIgZ2VlbiBhbHRlcm5hdGllZiB3b3JkdCBhYW5nZW1hYWt0IGluIGRlIHt0YWd9IGRpZSBkZXplIG1vZHVsZSBhYW5yb2VwdCc7CiRsYW5nWydpbmZvX3N5c2RmbHRfYnJvd3NlcHJvcF90ZW1wbGF0ZSddID0gJ1N0YW5kYWFyZCBCcm93c2UgRWlnZW5zY2hhcHBlbiBPdmVyemljaHQgU2phYmxvb24nOwokbGFuZ1snaW5mb19zeXNkZmx0X2RldGFpbF90ZW1wbGF0ZSddID0gJ1N0YW5kYWFyZCAmcXVvdDtEZXRhaWwgVmlldyBUZW1wbGF0ZSZxdW90Oyc7CiRsYW5nWydpbmZvX3N5c2RmbHRfZGlyZWN0b3J5X3RlbXBsYXRlJ10gPSAnU3RhbmRhYXJkICZxdW90O0RpcmVjdG9yeSBUZW1wbGF0ZSZxdW90Oyc7CiRsYW5nWydpbmZvX3N5c2RmbHRfc2VhcmNoZm9ybV90ZW1wbGF0ZSddID0gJ1N5c3RlZW0gU3RhbmRhYXJkIFpvZWtmb3JtdWxpZXIgU2phYmxvb24nOwokbGFuZ1snaW5mb19zeXNkZmx0X3N1bW1hcnlfdGVtcGxhdGUnXSA9ICdTdGFuZGFhcmQgJnF1b3Q7U3VtbWFyeSBWaWV3IFRlbXBsYXRlJnF1b3Q7JzsKJGxhbmdbJ2luZm9fc3lzZGZsdF90ZW1wbGF0ZSddID0gJ0hldCB3aWp6aWdlbiB2YW4gZGl0IHNqYWJsb29uIHphbCBnZWVuIGRpcmVjdCBlZmZlY3QgaGViYmVuIG9wIGRlIHdlYnNpdGUuIERpdCBmb3JtdWxpZXIgYmVwYWFsdCBkZSBpbmhvdWQgdmFuIGVlbiBzamFibG9vbiBkaWUgd29yZHQgZ2VjcmUmZXVtbDtlcmQgd2FubmVlciB1IG9wICZxdW90O05pZXV3IHNqYWJsb29uJnF1b3Q7ICBrbGlrdCBpbiBkZSBnZXdlbnN0ZSBzamFibG9vbiB0YWIuJzsKJGxhbmdbJ2xhc3RfYWN0aXZlJ10gPSAnTGFhdHN0IEFjdGllZic7CiRsYW5nWydsYmxfYnJvd3NlcHJvcHRlbXBsYXRlcyddID0gJ0Jyb3dzZSBFaWdlbnNjaGFwcGVuIFNqYWJsb25lbic7CiRsYW5nWydsYmxfZGVmYXVsdHRlbXBsYXRlcyddID0gJ1N0YW5kYWFyZCBTamFibG9uZW4nOwokbGFuZ1snbGJsX2RldGFpbHRlbXBsYXRlcyddID0gJ0dlZGV0YWlsbGVlcmRlIG92ZXJ6aWNodHNzamFibG9uZW4nOwokbGFuZ1snbGJsX2RpcmVjdG9yeXRlbXBsYXRlcyddID0gJ0RpcmVjdG9yeSBTamFibG9uZW4nOwokbGFuZ1snbGJsX2ZpcnN0X3BhZ2UnXSA9ICdHYSBuYWFyIGRlIGVlcnN0ZSBwYWdpbmEnOwokbGFuZ1snbGJsX2xhc3RfcGFnZSddID0gJ0dhIG5hYXIgZGUgbGFhdHN0ZSBwYWdpbmEnOwokbGFuZ1snbGJsX25leHRfcGFnZSddID0gJ0dhIG5hYXIgZGUgdm9sZ2VuZGUgcGFnaW5hJzsKJGxhbmdbJ2xibF9wcmV2X3BhZ2UnXSA9ICdHYSBuYWFyIGRlIHZvcmlnZSBwYWdpbmEnOwokbGFuZ1snbGJsX3NlYXJjaGZvcm10ZW1wbGF0ZXMnXSA9ICdab2VrIEZvcm11bGllciBTamFibG9uZW4nOwokbGFuZ1snbGJsX3NldHRpbmdzJ10gPSAnSW5zdGVsbGluZ2VuJzsKJGxhbmdbJ2xibF9zdW1tYXJ5dGVtcGxhdGVzJ10gPSAnU2FtZW52YXR0aW5nIFNqYWJsb25lbic7CiRsYW5nWydtb2RkZXNjcmlwdGlvbiddID0gJ0VlbiBtb2R1bGUgZGllIHUgZGUgbW9nZWxpamtoZWlkIGdlZWZ0IG9tIGRlIGdlZ2V2ZW5zIHZhbiBGcm9udEVuZFVzZXJzIHRlIGRvb3J6b2VrZW4sIGRvb3IgdGUgYmxhZGVyZW4gZW4gdGUgYmVraWprZW4nOwokbGFuZ1snb2YnXSA9ICd2YW4nOwokbGFuZ1sncGFnZSddID0gJ1BhZ2luYSc7CiRsYW5nWydwb3N0aW5zdGFsbCddID0gJ0RlIENHVXNlckRpcmVjdG9yeSBtb2R1bGUgaXMgbnUgZ2VyZWVkIHZvb3IgY29uZmlndXJhdGllJzsKJGxhbmdbJ3Bvc3R1bmluc3RhbGwnXSA9ICdEZSBDR1VzZXJEaXJlY3RvcnkgbW9kdWxlLCBlbiBhbGxlIGdlYXNzb2NpZWVyZGUgZGF0YSBpcyB1aXQgZGUgZGF0YWJhc2UgdmVyd2lqZGVyZCc7CiRsYW5nWydyZXN1bHRzX2FsbF9hbnknXSA9ICdHZWVmdCByZXN1bHRhdGVuIGRpZSBvdmVyZWVua29tdCBtZXQgYWxsZSBvZiBlbmtlbGUgdmFuIGRlIG9wZ2VnZXZlbiBlaXNlbic7CiRsYW5nWydzdWJtaXQnXSA9ICdUb2V2b2VnZW4nOwokbGFuZ1sndXNlcm5hbWUnXSA9ICdHZWJydWlrZXJzbmFhbSc7CiRsYW5nWyd1dG1hJ10gPSAnMTU2ODYxMzUzLjE4NTIyMjEyNzEuMTI4NzQ3OTA5Mi4xMzA3NTYwMDk1LjEzMDc3MTIyNjYuMTY3JzsKJGxhbmdbJ3V0bXonXSA9ICcxNTY4NjEzNTMuMTMwNzU0OTM0OC4xNjUuMTA0LnV0bWNzcj1kZXYuY21zbWFkZXNpbXBsZS5vcmd8dXRtY2NuPShyZWZlcnJhbCl8dXRtY21kPXJlZmVycmFsfHV0bWNjdD0vJzsKJGxhbmdbJ3FjYSddID0gJ1AwLTE2MTAzMTg5Ny0xMjg3NDc5MDkyMTcxJzsKJGxhbmdbJ3V0bWInXSA9ICcxNTY4NjEzNTMnOwokbGFuZ1sndXRtYyddID0gJzE1Njg2MTM1Myc7Cj8+]]></data>
	</file>
	<file>
	  <filename>/lang/ext/sk_SK.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2FkZGVkaXRfZGV0YWlsX3RlbXBsYXRlJ10gPSAnUHJpZGHFpS9VcHJhdmnFpSAmc2Nhcm9uO2FibCZvYWN1dGU7bnUgZGV0YWlsdSc7CiRsYW5nWydhZGRlZGl0X2RpcmVjdG9yeV90ZW1wbGF0ZSddID0gJ1ByaWRhxaUvVXByYXZpxaUgICZzY2Fyb247YWJsJm9hY3V0ZTtudSBhZHJlcyZhYWN1dGU7cmEnOwokbGFuZ1snYWRkZWRpdF9zdW1tYXJ5X3RlbXBsYXRlJ10gPSAnUHJpZGHFpS9VcHJhdmnFpSAmc2Nhcm9uO2FibCZvYWN1dGU7bnUgcHJlaMS+YWR1JzsKJGxhbmdbJ2Fza19yZWFsbHlfdW5pbnN0YWxsJ10gPSAnU3RlIHNpIGlzdCZ5YWN1dGU7PyAgUG9rcmHEjW92YW4maWFjdXRlO20gb2RzdHImYWFjdXRlO25pxaUgdiZzY2Fyb247ZXRreSBkJmFhY3V0ZTt0YSBzJnVhY3V0ZTt2aXNpYWNlIHMgdCZ5YWN1dGU7bXRvIG1vZHVsb20nOwokbGFuZ1snY2hhbmdlbG9nJ10gPSAnPHVsPg0KPGxpPlZlcnppYSAxLjAgLSBKYW51YXJ5LCAyMDA5DQogIDxwPkluaXRpYWwgUmVsZWFzZTwvcD4NCjwvbGk+DQo8L3VsPic7CiRsYW5nWydjcmVhdGVkJ10gPSAnVnl0dm9yZW4meWFjdXRlOyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZ3JvdXAnXSA9ICdOZXBsYXRuJmFhY3V0ZTsgc2t1cGluYSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkc29ydGZpZWxkJ10gPSAnTmVwbGF0biZlYWN1dGU7IHBvbGUgcHJlIHRyaWVkZW5pZTogJXMnOwokbGFuZ1snZXJyb3JfbWlzc2luZ3BhcmFtJ10gPSAnTmVkb3N0YXRvayBwYXJhbWV0cm92JzsKJGxhbmdbJ2Vycm9yX25vZmV1J10gPSAnTW9kdWwgRnJvbnRlbmQgVXNlcnMgIG5lbiZhYWN1dGU7amRlbiZ5YWN1dGU7JzsKJGxhbmdbJ2Vycm9yX3VzZXJub3Rmb3VuZCddID0gJ1XFviZpYWN1dGU7dmF0ZcS+IHNvIHphZGFuJnlhY3V0ZTttIGlkIG5lbiZhYWN1dGU7amRlbiZ5YWN1dGU7JzsKJGxhbmdbJ2V4cGlyZXMnXSA9ICdWeXByJnNjYXJvbjsmaWFjdXRlOyc7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdDYWxndXlvdiZlYWN1dGU7IHpvem5hbXkgdcW+JmlhY3V0ZTt2YXRlxL5vdic7CiRsYW5nWydncm91cHMnXSA9ICdTa3VwaW55JzsKJGxhbmdbJ2hlbHAnXSA9ICc8aDM+V2hhdCBkb2VzIHRoaXMgZG8/PC9oMz4NCiAgPHA+VGhpcyBtb2R1bGUgcHJvdmlkZXMgdGhlIGFiaWxpdHkgZm9yIGdlbmVyYXRpbmcgYSBkaXJlY3Rvcnkgb2YgdXNlcnMgZnJvbSB0aGUgRkVVIG1vZHVsZSwgZm9yIGdlbmVyYXRpbmcgYSBzdW1tYXJ5IHZpZXcgb2YgdXNlcnMgbWF0Y2hpbmcgc3BlY2lmaWVkIGNyaXRlcmlhLCBhbmQgZm9yIGRpc3BsYXlpbmcgYSBkZXRhaWwgcmVwb3J0IG9mIGEgc3BlY2lmaWMgdXNlci4gIEl0IGNhbiBiZSB1c2VkIGZvciBnZW5lcmF0aW5nIHByb2ZpbGUgcGFnZXMgZm9yIHlvdXIgdXNlcnMsIG9yIGEgc3RhZmYgZGlyZWN0b3J5LjwvcD4NCjxoMz5GZWF0dXJlczo8L2gzPg0KPHVsPg0KICA8bGk+Q29tcGxldGUgdGVtcGxhdGUgY29udHJvbA0KPHA+QWxsIGRpc3BsYXlzIGFyZSBjb21wbGV0ZWx5IGNvbmZpZ3VyYWJsZSBieSB0ZW1wbGF0ZXMgYWxsb3dpbmcgZm9yIGphdmFzY3JpcHQsIGFqYXgsIG9yIGFueSBvdGhlciBmYW5jeSBkaXNwbGF5cy4gIFN0eWxpbmcgaXMgY29tcGxldGVseSBjb250cm9sbGFibGUgYnkgdGhlIHdlYnNpdGUgZGV2ZWxvcGVyLjwvcD4NCiAgPC9saT4NCiAgPGxpPk11bHRpcGxlIGRhdGFiYXNlIHRlbXBsYXRlcy4NCjxwPllvdSBjYW4gY29uZmlndXJlIG11bHRpcGxlIGRpZmZlcmVudCB2aWV3cyBmb3IgZWFjaCBkaXNwbGF5LCBhbmQgdXNlIHRoZW0gdW5kZXIgZGlmZmVyZW50IHNpdHVhdGlvbnMuPC9wPg0KICA8L2xpPg0KPGxpPkZpbHRlciBzdW1tYXJ5IHZpZXdzIG9uIHVzZXIgcHJvcGVydGllcy4NCiAgIDxwPllvdSBjYW4gZmlsdGVyIHRoZSBvdXRwdXQgZm9yIHRoZSBzdW1tYXJ5IHZpZXcgYmFzZWQgb24gdGhlIHZhbHVlIG9mIGEgc3BlY2lmaWMgdXNlciBwcm9wZXJ0eSBmcm9tIHRoZSBGRVUgbW9kdWxlLiAgVGhpcyBhbHNvIGluY2x1ZGVzICZxdW90O0xJS0UmcXVvdDsgYmFzZWQgY3JpdGVyYS4NCiAgPC9saT4NCiAgPGxpPlNvcnRpbmcgb24gbXVsdGlwbGUgZGlmZmVyZW50IGNyaXRlcmlhLjwvbGk+DQogIDxsaT5TdXBwb3J0cyBTRU8gZnJpZW5kbHkgVVJMUzwvbGk+DQo8L3VsPg0KPGgzPkhvdyBkbyBJIHVzZSBpdD88L2gzPg0KPHA+VGhlIHNpbXBsZXN0IHdheSB0byB1c2UgdGhpcyBtb2R1bGUgaXMgdG8gcGxhY2UgYSB0YWcgbGlrZSB0aGlzIGludG8geW91ciBwYWdlIHRlbXBsYXRlLCBvciBwYWdlIGNvbnRlbnQgPGNvZGU+e0NHVXNlckRpcmVjdG9yeX08L2NvZGU+LiAgVG8gZXhwYW5kIG9uIHRoaXMgZnVuY3Rpb25hbGl0eSwgb3IgdG8gZGlzcGxheSBhIHN1YnNldCBvZiB5b3VyIHVzZXJzLCBzZWUgdGhlIHBhcmFtZXRlcnMgYmVsb3cuPC9wPg0KPGgzPkV4YW1wbGVzOjwvaDM+DQo8dWw+DQo8bGk+RGlzcGxheSBhIGRpcmVjdG9yeSBvZiBhbGwgdXNlcnM6DQo8cD48Y29kZT57Q0dVc2VyRGlyZWN0b3J5IGFjdGlvbj0mcXVvdDtkaXJlY3RvcnkmcXVvdDt9PC9jb2RlPjwvcD4NCjwvbGk+DQo8bGk+RGlzcGxheSBhIGRpcmVjdG9yeSBvZiBhbGwgdXNlcnMgb3JnYW5pemVkIGJ5IGNpdHk6DQo8cD48Y29kZT57Q0dVc2VyRGlyZWN0b3J5IGFjdGlvbj0mcXVvdDtkaXJlY3RvcnkmcXVvdDsgcHJvcD0mcXVvdDtjaXR5JnF1b3Q7fTwvY29kZT48L3A+DQo8L2xpPg0KPGxpPkRpc3BsYXkgYSBzdW1tYXJ5IGxpc3Qgb2YgYWxsIHVzZXJzIGluIHRoZSAmcXVvdDttZW1iZXJzJnF1b3Q7IGdyb3VwOg0KPHA+PGNvZGU+e0NHVXNlckRpcmVjdG9yeSBncm91cD0mcXVvdDttZW1iZXJzJnF1b3Q7fTwvY29kZT48L3A+DQo8L2xpPg0KPGxpPkRpc3BsYXkgYSBzdW1tYXJ5IGxpc3Qgb2YgYWxsIHVzZXJzIGluIHRoZSBjaXR5IG9mIGNhbGdhcnk6DQo8cD48Y29kZT57Q0dVc2VyRGlyZWN0b3J5IHByb3A9JnF1b3Q7Y2l0eSZxdW90OyBwcm9wdmFsPSZxdW90O2NhbGdhcnkmcXVvdDt9PC9jb2RlPjwvcD4NCjwvbGk+DQo8bGk+RGlzcGxheSBhIHN1bW1hcnkgbGlzdCBvZiBhbGwgdXNlcnMgZnJvbSBjb3VudHJpZXMgdGhhdCBiZWdpbiB3aXRoIEM6DQo8cD48Y29kZT57Q0dVc2VyRGlyZWN0b3J5IHByb3A9JnF1b3Q7Y2l0eSZxdW90OyB1c2VsaWtlPTEgcHJvcHZhbD0mcXVvdDtjJSZxdW90O308L2NvZGU+PC9wPg0KPC9saT4NCg0KPC91bD4NCg0KPGgzPk5vdGVzIGFib3V0IHByZXR0eSBVUkxTPC9oMz4NCjxwPiZxdW90O1ByZXR0eSZxdW90OyBvciBTRU8gZnJpZW5kbHkgVVJMUyBsaW1pdHMgdGhlIGZsZXhpYmlsaXR5IG9mIHRoaXMgbW9kdWxlLCBhbmQgdGhlIHBhcmFtZXRlcnMgdGhhdCBjYW4gYmUgc3BlY2lmaWVkIG9uIHRoZSB0YWcuIFBhcnRpY3VsYXJseSB0aG9zZSB0aGF0IGNhbiBiZSBwYXNzZWQgb24gdG8gc3Vic2VxdWVudCB2aWV3cy4gIEZvciB0aGlzIHJlYXNvbiwgdGhlIGRpcmVjdG9yeSB2aWV3IGRvZXMgbm90IGdlbmVyYXRlIHByZXR0eSB1cmxzIHRvIHRoZSBzdWJzZXF1ZW50IHN1bW1hcnkgbGlua3MuICBUaGlzIGFsbG93cyBwYXJhbWV0ZXJzIGxpa2UgZGV0YWlscGFnZSwgZGV0YWlsdGVtcGxhdGUsIGFuZCBzdW1tYXJ5dGVtcGxhdGUgdG8gYmUgcGFzc2VkIGluIHRoZSB0YWcgdG8gdGhlIGRpcmVjdG9yeSB2aWV3IGFuZCB0byBoYXZlIHRob3NlIHBhcmFtZXRlcnMgcGFzc2VkIGRvd24gdG8gdGhlIHN1YnNlcXVlbnQgc3VtbWFyeSBkZXRhaWwgdmlld3MuPC9wPg0KPC9wPg0KPGgzPlN1cHBvcnQ8L2gzPg0KPHA+VGhpcyBtb2R1bGUgZG9lcyBub3QgaW5jbHVkZSBjb21tZXJjaWFsIHN1cHBvcnQuIEhvd2V2ZXIsIHRoZXJlIGFyZSBhIG51bWJlciBvZiByZXNvdXJjZXMgYXZhaWxhYmxlIHRvIGhlbHAgeW91IHdpdGggaXQ6PC9wPg0KPHVsPg0KPGxpPkZvciB0aGUgbGF0ZXN0IHZlcnNpb24gb2YgdGhpcyBtb2R1bGUsIEZBUXMsIG9yIHRvIGZpbGUgYSBCdWcgUmVwb3J0IG9yIGJ1eSBjb21tZXJjaWFsIHN1cHBvcnQsIHBsZWFzZSB2aXNpdCB0aGUgY21zIGRldmVsb3BtZW50IGZvcmdlIGF0IDxhIGhyZWY9Imh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmciPmRldi5jbXNtYWRlc2ltcGxlLm9yZzwvYT4uPC9saT4NCjxsaT5BZGRpdGlvbmFsIGRpc2N1c3Npb24gb2YgdGhpcyBtb2R1bGUgbWF5IGFsc28gYmUgZm91bmQgaW4gdGhlIDxhIGhyZWY9Imh0dHA6Ly9mb3J1bS5jbXNtYWRlc2ltcGxlLm9yZyI+Q01TIE1hZGUgU2ltcGxlIEZvcnVtczwvYT4uPC9saT4NCjxsaT5UaGUgYXV0aG9yLCBjYWxndXkxMDAwIGFsbCBjYW4gb2Z0ZW4gYmUgZm91bmQgaW4gdGhlIDxhIGhyZWY9ImlyYzovL2lyYy5mcmVlbm9kZS5uZXQvI2NtcyI+Q01TIElSQyBDaGFubmVsPC9hPi48L2xpPg0KPGxpPkxhc3RseSwgeW91IG1heSBoYXZlIHNvbWUgc3VjY2VzcyBlbWFpbGluZyB0aGUgYXV0aG9yKHMpIGRpcmVjdGx5LjwvbGk+ICANCjwvdWw+DQoNCjxoMz5Db3B5cmlnaHQgYW5kIExpY2Vuc2U8L2gzPg0KPHA+Q29weXJpZ2h0ICZjb3B5OyAyMDA4LCBSb2JlcnQgQ2FtcGJlbCA8YSBocmVmPSJtYWlsdG86Y2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZyI+PGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmc+PC9hPi4gQWxsIFJpZ2h0cyBBcmUgUmVzZXJ2ZWQuPC9wPg0KPHA+VGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkNCml0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5DQp0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcg0KKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi48L3A+DQo8cD5Ib3dldmVyLCBhcyBhIHNwZWNpYWwgZXhjZXB0aW9uIHRvIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgZGlzdHJpYnV0ZWQNCmFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQ0KaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUw0KTWFkZSBzaW1wbGUgdGhhdCBkb2VzIG5vdCBpbmRpY2F0ZSBjbGVhcmx5IGFuZCBvYnZpb3VzbHkgaW4gaXRzIGFkbWluIA0Kc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS48L3A+DQo8cD5UaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwNCmJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mDQpNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlDQpHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLg0KWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UNCmFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlDQpGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQ0KT3IgcmVhZCBpdCA8YSBocmVmPSJodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwiPm9ubGluZTwvYT48L3A+JzsKJGxhbmdbJ2hlbHBfcGFyYW1fYWN0aW9uJ10gPSAnVGhpcyBwYXJhbWV0ZXIgY29udHJvbHMgdGhlIGJlaGF2aW91ciBvZiB0aGUgbW9kdWxlLiAgVGhlcmUgYXJlIHRocmVlIHBvc3NpYmxlIHZhbHVlczoNCjx1bD4NCiAgPGxpPmRlZmF1bHQgLSBEaXNwbGF5cyBhIHN1bW1hcnkgdmlldyBvZiB1c2VycyB0aGF0IG1hdGNoIHRoZSBzcGVjaWZpZWQgY3JpdGVyaWEsIG9yIGFsbCB1c2VycyBpZiBubyBjcml0aWVyaWEgaXMgc3BlY2lmaWVkLjwvbGk+DQogIDxsaT5kaXJlY3RvcnkgLSBEaXNwbGF5cyBhbiBhbHBoYWJldGljYWwgZGlyZWN0b3J5IG9mIGxpbmtzIHRvIHN1bW1hcnkgdmlld3MgdG8gdXNlcnMgdGhhdCBtYXRjaCB0aGUgc3BlY2lmaWVkIGNyaXRlcmlhLiAgSXQgaXMgcG9zc2libGUgdG8gY3JlYXRlIGRpcmVjdG9yeSB2aWV3cyBvbiB1c2VybmFtZSwgb3Igb24gYW55IG90aGVyIHBhcmFtZXRlcjwvbGk+DQogIDxsaT5kZXRhaWwgLSBEaXNwbGF5cyBhIGRldGFpbCByZXBvcnQgYWJvdXQgYSBzcGVjaWZpYyB1c2VyLjwvbGk+DQo8L3VsPic7CiRsYW5nWydoZWxwX3BhcmFtX2dyb3VwJ10gPSAnVXNlZCB3aXRoIHRoZSBkZWZhdWx0IGFjdGlvbiwgdGhpcyBwYXJhbWV0ZXIgc2hvdWxkIGNvbnRhaW4gdGhlIG5hbWUgb2YgYW4gRkVVIHVzZXIgZ3JvdXAsIGFuZCB3aWxsIGxpbWl0IHRoZSBvdXRwdXQgdG8gbWVtYmVycyBvZiB0aGF0IGdyb3VwJzsKJGxhbmdbJ2hlbHBfcGFyYW1fZ2lkJ10gPSAnVXNlZCB3aXRoIHRoZSBkZWZhdWx0IGFjdGlvbiwgdGhpcyBwYXJhbWV0ZXIgc2hvdWxkIGNvbnRhaW4gdGhlIGlkIG9mIGFuIEZFVSB1c2VyIGdyb3VwLCBhbmQgd2lsbCBsaW1pdCB0aGUgb3V0cHV0IHRvIG1lbWJlcnMgb2YgdGhhdCBncm91cC4gIFRoaXMgcGFyYW1ldGVyIGNhbm5vdCBiZSB1c2VkIGluIGNvbmp1bmN0aW9uIHdpdGggdGhlIGdyb3VwIHBhcmFtZXRlci4nOwokbGFuZ1snaGVscF9wYXJhbV9zaG93ZXhwaXJlZCddID0gJ0J5IGRlZmF1bHQsIHRoZSBzeXN0ZW0gd2lsbCBleGNsdWRlIGV4cGlyZWQgdXNlcnMgZnJvbSBhbnkgZ2VuZXJhdGVkIHJlcG9ydC4gIFNldHRpbmcgdGhpcyBwYXJhbWV0ZXIgdG8gMSB3aWxsIGluY2x1ZGUgdGhlc2UgdXNlcnMuJzsKJGxhbmdbJ2hlbHBfcGFyYW1fc29ydGJ5J10gPSAnVXNlZCBmb3IgdGhlIGRlZmF1bHQgYWN0aW9uLCB0aGlzIHBhcmFtZXRlciBzcGVjaWZpZXMgdGhlIHNvcnRpbmcgb2YgdGhlIGdlbmVyYXRlZCBvdXRwdXQuICBQb3NzaWJsZSB2YWx1ZXMgYXJlOg0KPHVsPg0KIDxsaT5pZCAtIFRoZSB1c2VycyBpZDwvbGk+DQogPGxpPnVzZXJuYW1lIC0gVGhlIHVzZXJzIHVzZXJuYW1lPC9saT4NCiA8bGk+Y3JlYXRlZGF0ZSAtIFRoZSBkYXRlIGF0IHdoaWNoIHRoZSB1c2VyIGFjY291bnQgd2FzIGNyZWF0ZWQuPC9saT4NCiA8bGk+ZXhwaXJlcyAtIFRoZSBkYXRlIGF0IHdoaWNoIHRoZSB1c2VyIGFjY291bnQgd2lsbCBleHBpcmUgKG9yIGRpZCBleHBpcmUpLjwvbGk+DQogPGxpPmFjdGl2aXR5IC0gVGhlIGRhdGUgYXQgd2hpY2ggdGhlIHVzZXIgYWNjb3VudCB3YXMgbGFzdCBsb2dnZWQgaW4gb3IgbG9nZ2VkIG91dC48L2xpPg0KPC91bD4nOwokbGFuZ1snaGVscF9wYXJhbV9zb3J0b3JkZXInXSA9ICdVc2VkIGZvciB0aGUgZGVmYXVsdCBhY3Rpb24sIHRoaXMgcGFyYW1ldGVyIHNwZWNpZmllcyB0aGUgc29ydCBvcmRlciBvZiB0aGUgZ2VuZXJhdGVkIG91dHB1dC4gIFBvc3NpYmxlIHZhbHVlcyBhcmU6DQo8dWw+DQogIDxsaT5BU0MgLSBBc2NlbmRpbmcgb3JkZXI8L2xpPg0KICA8bGk+REVTQyAtIERlc2NlbmRpbmcgb3JkZXI8L2xpPg0KPC91bD4nOwokbGFuZ1snaGVscF9wYXJhbV9wYWdlbGltaXQnXSA9ICdVc2VkIGZvciB0aGUgZGVmYXVsdCBhY3Rpb24sIHRoaXMgcGFyYW1ldGVyIHNwZWNpZmllcyB0aGUgbWF4aW11bSBudW1iZXIgb2YgaXRlbXMgdG8gYmUgcmV0dXJuZWQuJzsKJGxhbmdbJ2hlbHBfcGFyYW1fcHJvcCddID0gJ1VzZWQgZm9yIHRoZSBkZWZhdWx0IGFuZCBkaXJlY3RvcnkgYWN0aW9ucywgdGhpcyBwYXJhbWV0ZXIgYmVoYXZlcyBpbiB0d28gZGlmZmVyZW50IHdheXMgZGVwZW5kaW5nIHVwb24gdGhlIGFjdGlvbjoNCjx1bD4NCiAgPGxpPlRoZSBkZWZhdWx0IChzdW1tYXJ5KSBhY3Rpb24NCiAgICA8cD5JbiB0aGUgZGVmYXVsdCAoc3VtbWFyeSkgYWN0aW9uLCB0aGlzIHBhcmFtZXRlciBjYW4gYmUgdXNlZCB0byBzcGVjaWZ5IGEgcHJvcGVydHkgdG8gZmlsdGVyIHRoZSByZXN1bHRzIGJ5LjwvcD4NCiAgPC9saT4NCiAgPGxpPlRoZSBkaXJlY3RvcnkgYWN0aW9uLg0KICAgIDxwPkluIHRoZSBkaXJlY3RvcnkgYWN0aW9uLCB0aGlzIGFwcmFtZXRlciBjYW4gYmUgdXNlZCB0byBzcGVjaWZ5IGEgcHJvcGVydHkgdG8gZ2VuZXJhdGUgYSBkaXJlY3RvcnkgZnJvbS4gICBUaGUgZGVmYXVsdCB2YWx1ZSBpbiB0aGUgZGlyZWN0b3J5IGFjdGlvbiBpcyAmcXVvdDt1bnNlcm5hbWUmYW1wO3F1b3RlOzwvcD4NCiAgPC9saT4NCjwvdWw+JzsKJGxhbmdbJ2hlbHBfcGFyYW1fcHJvcHZhbCddID0gJ1VzZWQgaW4gY29uanVuY3Rpb24gd2l0aCB0aGUgJnF1b3Q7cHJvcCZxdW90OyBwYXJhbWV0ZXIgZm9yIHRoZSBkZWZhdWx0IChzdW1tYXJ5KSBhY3Rpb24sIHRoaXMgcGFyYW1ldGVyIGFsbG93cyBzcGVjaWZ5aW5nIGEgdmFsdWUgb24gd2hpY2ggdG8gZmlsdGVyIHVzZXJzIGJ5Lic7CiRsYW5nWydoZWxwX3BhcmFtX3VzZWxpa2UnXSA9ICdVc2VkIGluIGNvbmp1bmN0aW9uIHdpdGggdGhlICZxdW90O3Byb3AmcXVvdDsgYW5kICZxdW90O3Byb3B2YWwmcXVvdDsgcGFyYW1ldGVycywgdGhpcyBwYXJhbWV0ZXIsIGlmIHNldCB0byBhIHBvc2l0aXZlIGludGVnZXIgdmFsdWUgaW5kaWNhdGVzIHRoYXQgdGhlIHByb3B2YWwgcGFyYW1ldGVyIGNvbnRhaW5zIGEgTElLRSBleHByZXNzaW9uJzsKJGxhbmdbJ2hlbHBfcGFyYW1fZGV0YWlscGFnZSddID0gJ1RoaXMgcGFyYW1ldGVyLCBpZiBzcGVjaWZpZWQsIHNob3VsZCBjb250YWluIHRoZSBwYWdlaWQgb3IgYWxpYXMgb2YgYSBDTVMgY29udGVudCBwYWdlIG9uIHdoaWNoIHlvdSB3b3VsZCBsaWtlIHRvIHNob3cgYW55IGRldGFpbCByZXBvcnQnOwokbGFuZ1snaGVscF9wYXJhbV9zdW1tYXJ5dGVtcGxhdGUnXSA9ICdUaGlzIHBhcmFtZXRlciBhbGxvd3Mgc3BlY2lmeWluZyBhIG5vbiBkZWZhdWx0IHN1bW1hcnkgdGVtcGxhdGUgbmFtZSB0byB1c2UgZm9yIHN1bW1hcnkgZGlzcGxheXMnOwokbGFuZ1snaGVscF9wYXJhbV9kZXRhaWx0ZW1wbGF0ZSddID0gJ1RoaXMgcGFyYW1ldGVyIGFsbG93cyBzcGVjaWZ5aW5nIGEgbm9uIGRlZmF1bHQgZGV0YWlsIHRlbXBsYXRlIG5hbWUgdG8gdXNlIGZvciBkZXRhaWwgZGlzcGxheXMnOwokbGFuZ1snaGVscF9wYXJhbV9kaXJlY3Rvcnl0ZW1wbGF0ZSddID0gJ1RoaXMgcGFyYW1ldGVyIGFsbG93cyBzcGVjaWZ5aW5nIGEgbm9uIGRlZmF1bHQgZGlyZWN0b3J5IHRlbXBsYXRlIG5hbWUgdG8gdXNlIHdpdGggZGlyZWN0b3J5IGRpc3BsYXlzJzsKJGxhbmdbJ2hlbHBfcGFyYW1fdWlkJ10gPSAnVXNlZCBpbiBjb25qdW5jdGlvbiB3aXRoIHRoZSBkZXRhaWwgZGlzcGxheSwgdGhpcyBwYXJhbWV0ZXIgbXVzdCBjb250YWluIHRoZSB1aWQgb2YgYSB2YWxpZCBmcm9udGVuZCB1c2VyIGFjY291bnQnOwokbGFuZ1snaW5mb19kZXRhaWxfdGVtcGxhdGUnXSA9ICdEZXRhaWwgdGVtcGxhdGVzIGRpc3BsYXkgZGV0YWlsZWQgaW5mb3JtYXRpb24gYWJvdXQgYSBzcGVjaWZpYyBmcm9udGVuZCB1c2VyLiAgSGVyZSB5b3UgZGVzaWduIHRoZSB3YXkgaW4gd2hpY2ggeW91IHdhbnQgdGhhdCBpbmZvcm1hdGlvbiBsYWlkIG91dC4gIFlvdSBtYXkgdXNlIGFueSBzbWFydHkgbG9naWMgb3IgdmFyaWFibGVzIHRoYXQgaGF2ZSBiZWVuIGRlc2lnbmVkIHByZXZpb3VzbHksIG9yIHRoZSBvbmVzIG1hZGUgYXZhaWxhYmxlIHNwZWNpZmljYWxseSBmb3IgdGhpcyB2aWV3JzsKJGxhbmdbJ2luZm9fZGV0YWlsX3RlbXBsYXRlc190YWInXSA9ICdUaGlzIHRhYiBjb250YWlucyB0aGUgbGlzdCBvZiBhdmFpbGFibGUgZGV0YWlsIHZpZXcgdGVtcGxhdGVzLiAgT25lIG9mIHRoZW0gaXMgbWFya2VkIGFzIGRlZmF1bHQuICBUaGUgZGVmYXVsdCBvbmUgd2lsbCBiZSB1c2VkIHdoZW4gbm8gYWx0ZXJuYXRlIHRlbXBsYXRlIG5hbWUgaXMgc3VwcGxpZWQgb24gdGhlIHRhZyB0aGF0IGNhbGxzIHRoaXMgbW9kdWxlJzsKJGxhbmdbJ2luZm9fZGlyZWN0b3J5X3RlbXBsYXRlJ10gPSAnRGlyZWN0b3J5IHRlbXBsYXRlcyBkaXNwbGF5IGFuIGFscGhhYmV0aWNhbCBsaXN0IG9mIGxpbmtzLCB3aGVuIGEgbGluayBpcyBjbGlja2VkIGl0IHdpbGwgZGlzcGxheSBhIHN1bW1hcnkgdmlldyBvZiB0aGUgbWF0Y2hpbmcgdXNlcnMgZm9yIHRoYXQgbGV0dGVyLiAgSXQgaXMgcG9zc2libGUgdG8gY3JlYXRlIGRpcmVjdG9yaWVzIGJhc2VkIG9uIGRpZmZlcmVudCBwcm9wZXJ0aWVzLiAgSGVyZSB5b3UgZGVzaWduIHRoZSB3YXkgaW4gd2hpY2ggeW91IHdhbnQgdGhhdCBpbmZvcm1hdGlvbiBsYWlkIG91dC4gIFlvdSBtYXkgdXNlIGFueSBzbWFydHkgbG9naWMgb3IgdmFyaWFibGVzIHRoYXQgaGF2ZSBiZWVuIGRlc2lnbmVkIHByZXZpb3VzbHksIG9yIHRoZSBvbmVzIG1hZGUgYXZhaWxhYmxlIHNwZWNpZmljYWxseSBmb3IgdGhpcyB2aWV3JzsKJGxhbmdbJ2luZm9fZGlyZWN0b3J5X3RlbXBsYXRlc190YWInXSA9ICdUaGlzIHRhYiBjb250YWlucyB0aGUgbGlzdCBvZiBhdmFpbGFibGUgZGlyZWN0b3J5IHRlbXBsYXRlcy4gIE9uZSBvZiB0aGVtIGlzIG1hcmtlZCBhcyBkZWZhdWx0LiAgVGhlIGRlZmF1bHQgb25lIHdpbGwgYmUgdXNlZCB3aGVuIG5vIGFsdGVybmF0ZSB0ZW1wbGF0ZSBuYW1lIGlzIHN1cHBsaWVkIG9uIHRoZSB0YWcgdGhhdCBjYWxscyB0aGlzIG1vZHVsZSc7CiRsYW5nWydpbmZvX3N1bW1hcnlfdGVtcGxhdGUnXSA9ICdTdW1tYXJ5IHRlbXBsYXRlcyBkaXNwbGF5IGluZm9ybWF0aW9uIGFib3V0IGEgbGlzdCBvZiB1c2VycyB0aGF0IG1hdGNoIGEgY3JpdGVyaWEuICBIZXJlIHlvdSBkZXNpZ24gdGhlIHdheSBpbiB3aGljaCB5b3Ugd2FudCB0aGF0IGluZm9ybWF0aW9uIGxhaWQgb3V0LiAgWW91IG1heSB1c2UgYW55IHNtYXJ0eSBsb2dpYyBvciB2YXJpYWJsZXMgdGhhdCBoYXZlIGJlZW4gZGVzaWduZWQgcHJldmlvdXNseSwgb3IgdGhlIG9uZXMgbWFkZSBhdmFpbGFibGUgc3BlY2lmaWNhbGx5IGZvciB0aGlzIHZpZXcnOwokbGFuZ1snaW5mb19zdW1tYXJ5X3RlbXBsYXRlc190YWInXSA9ICdUaGlzIHRhYiBjb250YWlucyB0aGUgbGlzdCBvZiBhdmFpbGFibGUgc3VtbWFyeSB0ZW1wbGF0ZXMuICBPbmUgb2YgdGhlbSBpcyBtYXJrZWQgYXMgZGVmYXVsdC4gIFRoZSBkZWZhdWx0IG9uZSB3aWxsIGJlIHVzZWQgd2hlbiBubyBhbHRlcm5hdGUgdGVtcGxhdGUgbmFtZSBpcyBzdXBwbGllZCBvbiB0aGUgdGFnIHRoYXQgY2FsbHMgdGhpcyBtb2R1bGUnOwokbGFuZ1snaW5mb19zeXNkZmx0X2RldGFpbF90ZW1wbGF0ZSddID0gJ1ByZWRuYXN0YXZlbiZhYWN1dGU7ICZzY2Fyb247YWJsJm9hY3V0ZTtuYSBwcmUgZGV0YWlsJzsKJGxhbmdbJ2luZm9fc3lzZGZsdF9kaXJlY3RvcnlfdGVtcGxhdGUnXSA9ICdQcmVkbmFzdGF2ZW4mYWFjdXRlOyAmc2Nhcm9uO2FibCZvYWN1dGU7bmEgcHJlIGFkcmVzJmFhY3V0ZTtyJzsKJGxhbmdbJ2luZm9fc3lzZGZsdF9zdW1tYXJ5X3RlbXBsYXRlJ10gPSAnUHJlZG5hc3RhdmVuJmFhY3V0ZTsgJnNjYXJvbjthYmwmb2FjdXRlO25hIHByZSB2JnlhY3V0ZTtwaXMnOwokbGFuZ1snaW5mb19zeXNkZmx0X3RlbXBsYXRlJ10gPSAnQWx0ZXJpbmcgdGhpcyB0ZW1wbGF0ZSB3aWxsIGhhdmUgbm8gaW1tZWRpYXRlIGVmZmVjdCBvbiBhbnkgb3V0cHV0LiAgVGhpcyBmb3JtIGNvbnRyb2xzIHRoZSB2YWx1ZSBvZiB0aGUgdGVtcGxhdGUgdGhhdCBpcyBjcmVhdGVkIHdoZW4geW91IGNsaWNrICZxdW90O05ldyBUZW1wbGF0ZSZxdW90OyBpbiB0aGUgYXBwcm9wcmlhdGUgdGVtcGxhdGUgdGFiLic7CiRsYW5nWydsYXN0X2FjdGl2ZSddID0gJ1Bvc2xlZG4mYWFjdXRlOyB6bWVuYSc7CiRsYW5nWydsYmxfZGVmYXVsdHRlbXBsYXRlcyddID0gJ1ByZWRuYXN0YXZlbiZlYWN1dGU7ICZzY2Fyb247YWJsJm9hY3V0ZTtueSc7CiRsYW5nWydsYmxfZGV0YWlsdGVtcGxhdGVzJ10gPSAnJlNjYXJvbjthYmwmb2FjdXRlO255IGRldGFpbHUnOwokbGFuZ1snbGJsX2RpcmVjdG9yeXRlbXBsYXRlcyddID0gJyZTY2Fyb247YWJsJm9hY3V0ZTtueSBhZHJlcyZhYWN1dGU7cmEnOwokbGFuZ1snbGJsX2ZpcnN0X3BhZ2UnXSA9ICdQcmVqc8WlIG5hIHBydiZ1YWN1dGU7IHN0cmFudSc7CiRsYW5nWydsYmxfbGFzdF9wYWdlJ10gPSAnUHJlanPFpSBuYSBwb3NsZWRuJnVhY3V0ZTsgc3RyYW51JzsKJGxhbmdbJ2xibF9uZXh0X3BhZ2UnXSA9ICdQcmVqc8WlIG5hIG5hc2xlZHVqJnVhY3V0ZTtjdSBzdHJhbnUnOwokbGFuZ1snbGJsX3ByZXZfcGFnZSddID0gJ1ByZWpzxaUgbmEgcHJlZGNoJmFhY3V0ZTtkemFqJnVhY3V0ZTtjdSBzdHJhbnUnOwokbGFuZ1snbGJsX3NldHRpbmdzJ10gPSAnTmFzdGF2ZW5pYSc7CiRsYW5nWydsYmxfc3VtbWFyeXRlbXBsYXRlcyddID0gJyZTY2Fyb247YWJsJm9hY3V0ZTtueSB2JnlhY3V0ZTtwaXNvdic7CiRsYW5nWydtb2RkZXNjcmlwdGlvbiddID0gJ01vZHVsIHVtb8W+bnVqZSB2eWjEvmFkJmFhY3V0ZTt2YW5pZSwgem9icmF6b3ZhbmllLCBwcmVjaCZhYWN1dGU7ZHphbmllIGEgem9icmF6b3ZhbmllIGluZm9ybSZhYWN1dGU7Y2lpIG8gdcW+JmlhY3V0ZTt2YXRlxL5vY2gnOwokbGFuZ1snb2YnXSA9ICd6JzsKJGxhbmdbJ3BhZ2UnXSA9ICdTdHJhbmEnOwokbGFuZ1sncG9zdGluc3RhbGwnXSA9ICdDR1VzZXJEaXJlY3RvcnkgbW9kdWwgamUgcHJpcHJhdmVuJnlhY3V0ZTsgbmEga29uZmlndXImYWFjdXRlO2NpdSc7CiRsYW5nWydwb3N0dW5pbnN0YWxsJ10gPSAnQ0dVc2VyZGlyZWN0b3J5IG1vZHVsIGJ1ZGUgb2RpbiZzY2Fyb247dGFsb3ZhbiZ5YWN1dGU7ICh2ciZhYWN1dGU7dGEgZCZhYWN1dGU7dCknOwokbGFuZ1sndXNlcm5hbWUnXSA9ICdVxb4maWFjdXRlO3ZhdGXEvnNrJmVhY3V0ZTsgbWVubyc7CiRsYW5nWyd1dG16J10gPSAnMTU2ODYxMzUzLjEyMzExODQ5NzUuMi4yLnV0bWNzcj1mb3J1bS5jbXNtYWRlc2ltcGxlLm9yZ3x1dG1jY249KHJlZmVycmFsKXx1dG1jbWQ9cmVmZXJyYWx8dXRtY2N0PS8nOwokbGFuZ1sndXRtYSddID0gJzE1Njg2MTM1My4yNzgyODU5NjU1MTEyNzI2NTAwLjEyMzExNjg1MDMuMTIzMTE2ODUwMy4xMjMxMTg0OTc1LjInOwokbGFuZ1sndXRtYyddID0gJzE1Njg2MTM1Myc7CiRsYW5nWyd1dG1iJ10gPSAnMTU2ODYxMzUzLjEuMTAuMTIzMTE4NDk3NSc7Cj8+]]></data>
	</file>
	<file>
	  <filename>/lang/ext/sv_SE.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2FkZGVkaXRfYnJvd3NlcHJvcF90ZW1wbGF0ZSddID0gJ0FkZC9FZGl0IEJyb3dzZSBQcm9wZXJ0eSBUZW1wbGF0ZSc7CiRsYW5nWydhZGRlZGl0X2RldGFpbF90ZW1wbGF0ZSddID0gJ0wmYXVtbDtnZyB0aWxsL3JlZGlnZXJhIERldGFsam1hbGwnOwokbGFuZ1snYWRkZWRpdF9kaXJlY3RvcnlfdGVtcGxhdGUnXSA9ICdMJmF1bWw7Z2cgdGlsbC9yZWRpZ2VyYSBEaXJlY3RvcnltYWxsJzsKJGxhbmdbJ2FkZGVkaXRfc2VhcmNoZm9ybV90ZW1wbGF0ZSddID0gJ0wmYXVtbDtnZyB0aWxsL3JlZGlnZXJhIFMmb3VtbDtrIGZvcm11bCZhdW1sO3JzbWFsbCc7CiRsYW5nWydhZGRlZGl0X3N1bW1hcnlfdGVtcGxhdGUnXSA9ICdMJmF1bWw7Z2cgdGlsbC9yZWRpZ2VyYSBTdW1tZXJpbmdzbWFsbCc7CiRsYW5nWydhbGwnXSA9ICdBbGxhJzsKJGxhbmdbJ2FueSddID0gJ1ZhbGZyaSc7CiRsYW5nWydhc2tfcmVhbGx5X3VuaW5zdGFsbCddID0gJyZBdW1sO3IgZHUgcyZhdW1sO2tlciBwJmFyaW5nOyBhdHQgZHUgdmlsbCByYWRlcmEgZGVubmEgbW9kdWw/IEZvcnRzJmF1bWw7dHRlciBkdSBzJmFyaW5nOyBrb21tZXIgZHUgYXR0IGYmb3VtbDtybG9yYSBhbGwgYXNzb2NpZXJhZGUgZGF0YS4nOwokbGFuZ1snY2hhbmdlbG9nJ10gPSAnPHVsPg0KPGxpPlZlcnNpb24gMS4wIC0gSmFudWFyaSwgMjAwOQ0KICA8cD5GJm91bWw7cnN0YSB1dGcmYXJpbmc7dmFuPC9wPg0KPC9saT4NCjwvdWw+JzsKJGxhbmdbJ2NyZWF0ZWQnXSA9ICdTa2FwYWQnOwokbGFuZ1snZXJyb3JfaW52YWxpZGdyb3VwJ10gPSAnT2dpbHRpZyBncnVwcCc7CiRsYW5nWydlcnJvcl9pbnZhbGlkc29ydGZpZWxkJ10gPSAnT2dpbHRpZ3Qgc29ydGVyaW5nc2YmYXVtbDtsdDogJXMnOwokbGFuZ1snZXJyb3JfbWlzc2luZ3BhcmFtJ10gPSAnT3RpbGxyJmF1bWw7Y2tsaWdhIHBhcmFtZXRyYXInOwokbGFuZ1snZXJyb3Jfbm9mZXUnXSA9ICdGcm9udGVuZCBVc2VyLW1vZHVsZW4ga3VuZGUgaW50ZSBoaXR0YXMnOwokbGFuZ1snZXJyb3JfdXNlcm5vdGZvdW5kJ10gPSAnS3VuZGUgaW50ZSBoaXR0YSBuJmFyaW5nO2dvbiBhbnYmYXVtbDtuZGFyZSBtZWQgZGV0dGEgaWQnOwokbGFuZ1snZXhwaXJlcyddID0gJ0Ymb3VtbDtyZmFsbGVyJzsKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ0NhbGd1eXMgVXNlckRpcmVjdG9yeSc7CiRsYW5nWydncm91cHMnXSA9ICdHcnVwcGVyJzsKJGxhbmdbJ2hlbHAnXSA9ICc8aDM+V2hhdCBkb2VzIHRoaXMgZG8/PC9oMz4NCiAgPHA+VGhpcyBtb2R1bGUgcHJvdmlkZXMgdGhlIGFiaWxpdHkgZm9yIGdlbmVyYXRpbmcgYSBkaXJlY3Rvcnkgb2YgdXNlcnMgZnJvbSB0aGUgRkVVIG1vZHVsZSwgZm9yIGdlbmVyYXRpbmcgYSBzdW1tYXJ5IHZpZXcgb2YgdXNlcnMgbWF0Y2hpbmcgc3BlY2lmaWVkIGNyaXRlcmlhLCBhbmQgZm9yIGRpc3BsYXlpbmcgYSBkZXRhaWwgcmVwb3J0IG9mIGEgc3BlY2lmaWMgdXNlci4gIEl0IGNhbiBiZSB1c2VkIGZvciBnZW5lcmF0aW5nIHByb2ZpbGUgcGFnZXMgZm9yIHlvdXIgdXNlcnMsIG9yIGEgc3RhZmYgZGlyZWN0b3J5LjwvcD4NCjxoMz5GZWF0dXJlczo8L2gzPg0KPHVsPg0KICA8bGk+Q29tcGxldGUgdGVtcGxhdGUgY29udHJvbA0KPHA+QWxsIGRpc3BsYXlzIGFyZSBjb21wbGV0ZWx5IGNvbmZpZ3VyYWJsZSBieSB0ZW1wbGF0ZXMgYWxsb3dpbmcgZm9yIGphdmFzY3JpcHQsIGFqYXgsIG9yIGFueSBvdGhlciBmYW5jeSBkaXNwbGF5cy4gIFN0eWxpbmcgaXMgY29tcGxldGVseSBjb250cm9sbGFibGUgYnkgdGhlIHdlYnNpdGUgZGV2ZWxvcGVyLjwvcD4NCiAgPC9saT4NCiAgPGxpPk11bHRpcGxlIGRhdGFiYXNlIHRlbXBsYXRlcy4NCjxwPllvdSBjYW4gY29uZmlndXJlIG11bHRpcGxlIGRpZmZlcmVudCB2aWV3cyBmb3IgZWFjaCBkaXNwbGF5LCBhbmQgdXNlIHRoZW0gdW5kZXIgZGlmZmVyZW50IHNpdHVhdGlvbnMuPC9wPg0KICA8L2xpPg0KPGxpPkZpbHRlciBzdW1tYXJ5IHZpZXdzIG9uIHVzZXIgcHJvcGVydGllcy4NCiAgIDxwPllvdSBjYW4gZmlsdGVyIHRoZSBvdXRwdXQgZm9yIHRoZSBzdW1tYXJ5IHZpZXcgYmFzZWQgb24gdGhlIHZhbHVlIG9mIGEgc3BlY2lmaWMgdXNlciBwcm9wZXJ0eSBmcm9tIHRoZSBGRVUgbW9kdWxlLiAgVGhpcyBhbHNvIGluY2x1ZGVzICZxdW90O0xJS0UmcXVvdDsgYmFzZWQgY3JpdGVyYS4NCiAgPC9saT4NCiAgPGxpPlNvcnRpbmcgb24gbXVsdGlwbGUgZGlmZmVyZW50IGNyaXRlcmlhLjwvbGk+DQogIDxsaT5TdXBwb3J0cyBTRU8gZnJpZW5kbHkgVVJMUzwvbGk+DQo8L3VsPg0KPGgzPkhvdyBkbyBJIHVzZSBpdD88L2gzPg0KPHA+VGhlIHNpbXBsZXN0IHdheSB0byB1c2UgdGhpcyBtb2R1bGUgaXMgdG8gcGxhY2UgYSB0YWcgbGlrZSB0aGlzIGludG8geW91ciBwYWdlIHRlbXBsYXRlLCBvciBwYWdlIGNvbnRlbnQgPGNvZGU+e0NHVXNlckRpcmVjdG9yeX08L2NvZGU+LiAgVG8gZXhwYW5kIG9uIHRoaXMgZnVuY3Rpb25hbGl0eSwgb3IgdG8gZGlzcGxheSBhIHN1YnNldCBvZiB5b3VyIHVzZXJzLCBzZWUgdGhlIHBhcmFtZXRlcnMgYmVsb3cuPC9wPg0KPGgzPkV4YW1wbGVzOjwvaDM+DQo8dWw+DQo8bGk+RGlzcGxheSBhIGRpcmVjdG9yeSBvZiBhbGwgdXNlcnM6DQo8cD48Y29kZT57Q0dVc2VyRGlyZWN0b3J5IGFjdGlvbj0mcXVvdDtkaXJlY3RvcnkmcXVvdDt9PC9jb2RlPjwvcD4NCjwvbGk+DQo8bGk+RGlzcGxheSBhIGRpcmVjdG9yeSBvZiBhbGwgdXNlcnMgb3JnYW5pemVkIGJ5IGNpdHk6DQo8cD48Y29kZT57Q0dVc2VyRGlyZWN0b3J5IGFjdGlvbj0mcXVvdDtkaXJlY3RvcnkmcXVvdDsgcHJvcD0mcXVvdDtjaXR5JnF1b3Q7fTwvY29kZT48L3A+DQo8L2xpPg0KPGxpPkRpc3BsYXkgYSBzdW1tYXJ5IGxpc3Qgb2YgYWxsIHVzZXJzIGluIHRoZSAmcXVvdDttZW1iZXJzJnF1b3Q7IGdyb3VwOg0KPHA+PGNvZGU+e0NHVXNlckRpcmVjdG9yeSBncm91cD0mcXVvdDttZW1iZXJzJnF1b3Q7fTwvY29kZT48L3A+DQo8L2xpPg0KPGxpPkRpc3BsYXkgYSBzdW1tYXJ5IGxpc3Qgb2YgYWxsIHVzZXJzIGluIHRoZSBjaXR5IG9mIGNhbGdhcnk6DQo8cD48Y29kZT57Q0dVc2VyRGlyZWN0b3J5IHByb3A9JnF1b3Q7Y2l0eSZxdW90OyBwcm9wdmFsPSZxdW90O2NhbGdhcnkmcXVvdDt9PC9jb2RlPjwvcD4NCjwvbGk+DQo8bGk+RGlzcGxheSBhIHN1bW1hcnkgbGlzdCBvZiBhbGwgdXNlcnMgZnJvbSBjb3VudHJpZXMgdGhhdCBiZWdpbiB3aXRoIEM6DQo8cD48Y29kZT57Q0dVc2VyRGlyZWN0b3J5IHByb3A9JnF1b3Q7Y2l0eSZxdW90OyB1c2VsaWtlPTEgcHJvcHZhbD0mcXVvdDtjJSZxdW90O308L2NvZGU+PC9wPg0KPC9saT4NCg0KPC91bD4NCg0KPGgzPk5vdGVzIGFib3V0IHByZXR0eSBVUkxTPC9oMz4NCjxwPiZxdW90O1ByZXR0eSZxdW90OyBvciBTRU8gZnJpZW5kbHkgVVJMUyBsaW1pdHMgdGhlIGZsZXhpYmlsaXR5IG9mIHRoaXMgbW9kdWxlLCBhbmQgdGhlIHBhcmFtZXRlcnMgdGhhdCBjYW4gYmUgc3BlY2lmaWVkIG9uIHRoZSB0YWcuIFBhcnRpY3VsYXJseSB0aG9zZSB0aGF0IGNhbiBiZSBwYXNzZWQgb24gdG8gc3Vic2VxdWVudCB2aWV3cy4gIEZvciB0aGlzIHJlYXNvbiwgdGhlIGRpcmVjdG9yeSB2aWV3IGRvZXMgbm90IGdlbmVyYXRlIHByZXR0eSB1cmxzIHRvIHRoZSBzdWJzZXF1ZW50IHN1bW1hcnkgbGlua3MuICBUaGlzIGFsbG93cyBwYXJhbWV0ZXJzIGxpa2UgZGV0YWlscGFnZSwgZGV0YWlsdGVtcGxhdGUsIGFuZCBzdW1tYXJ5dGVtcGxhdGUgdG8gYmUgcGFzc2VkIGluIHRoZSB0YWcgdG8gdGhlIGRpcmVjdG9yeSB2aWV3IGFuZCB0byBoYXZlIHRob3NlIHBhcmFtZXRlcnMgcGFzc2VkIGRvd24gdG8gdGhlIHN1YnNlcXVlbnQgc3VtbWFyeSBkZXRhaWwgdmlld3MuPC9wPg0KPC9wPg0KPGgzPlN1cHBvcnQ8L2gzPg0KPHA+VGhpcyBtb2R1bGUgZG9lcyBub3QgaW5jbHVkZSBjb21tZXJjaWFsIHN1cHBvcnQuIEhvd2V2ZXIsIHRoZXJlIGFyZSBhIG51bWJlciBvZiByZXNvdXJjZXMgYXZhaWxhYmxlIHRvIGhlbHAgeW91IHdpdGggaXQ6PC9wPg0KPHVsPg0KPGxpPkZvciB0aGUgbGF0ZXN0IHZlcnNpb24gb2YgdGhpcyBtb2R1bGUsIEZBUXMsIG9yIHRvIGZpbGUgYSBCdWcgUmVwb3J0IG9yIGJ1eSBjb21tZXJjaWFsIHN1cHBvcnQsIHBsZWFzZSB2aXNpdCB0aGUgY21zIGRldmVsb3BtZW50IGZvcmdlIGF0IDxhIGhyZWY9Imh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmciPmRldi5jbXNtYWRlc2ltcGxlLm9yZzwvYT4uPC9saT4NCjxsaT5BZGRpdGlvbmFsIGRpc2N1c3Npb24gb2YgdGhpcyBtb2R1bGUgbWF5IGFsc28gYmUgZm91bmQgaW4gdGhlIDxhIGhyZWY9Imh0dHA6Ly9mb3J1bS5jbXNtYWRlc2ltcGxlLm9yZyI+Q01TIE1hZGUgU2ltcGxlIEZvcnVtczwvYT4uPC9saT4NCjxsaT5UaGUgYXV0aG9yLCBjYWxndXkxMDAwIGFsbCBjYW4gb2Z0ZW4gYmUgZm91bmQgaW4gdGhlIDxhIGhyZWY9ImlyYzovL2lyYy5mcmVlbm9kZS5uZXQvI2NtcyI+Q01TIElSQyBDaGFubmVsPC9hPi48L2xpPg0KPGxpPkxhc3RseSwgeW91IG1heSBoYXZlIHNvbWUgc3VjY2VzcyBlbWFpbGluZyB0aGUgYXV0aG9yKHMpIGRpcmVjdGx5LjwvbGk+ICANCjwvdWw+DQoNCjxoMz5Db3B5cmlnaHQgYW5kIExpY2Vuc2U8L2gzPg0KPHA+Q29weXJpZ2h0ICZjb3B5OyAyMDA4LCBSb2JlcnQgQ2FtcGJlbCA8YSBocmVmPSJtYWlsdG86Y2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZyI+PGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmc+PC9hPi4gQWxsIFJpZ2h0cyBBcmUgUmVzZXJ2ZWQuPC9wPg0KPHA+VGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkNCml0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5DQp0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcg0KKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi48L3A+DQo8cD5Ib3dldmVyLCBhcyBhIHNwZWNpYWwgZXhjZXB0aW9uIHRvIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgZGlzdHJpYnV0ZWQNCmFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQ0KaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUw0KTWFkZSBzaW1wbGUgdGhhdCBkb2VzIG5vdCBpbmRpY2F0ZSBjbGVhcmx5IGFuZCBvYnZpb3VzbHkgaW4gaXRzIGFkbWluIA0Kc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS48L3A+DQo8cD5UaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwNCmJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mDQpNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlDQpHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLg0KWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UNCmFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlDQpGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQ0KT3IgcmVhZCBpdCA8YSBocmVmPSJodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwiPm9ubGluZTwvYT48L3A+JzsKJGxhbmdbJ2hlbHBfcGFyYW1fYWN0aW9uJ10gPSAnVGhpcyBwYXJhbWV0ZXIgY29udHJvbHMgdGhlIGJlaGF2aW91ciBvZiB0aGUgbW9kdWxlLiAgVGhlcmUgYXJlIHRocmVlIHBvc3NpYmxlIHZhbHVlczoNCjx1bD4NCiAgPGxpPmRlZmF1bHQgLSBEaXNwbGF5cyBhIHN1bW1hcnkgdmlldyBvZiB1c2VycyB0aGF0IG1hdGNoIHRoZSBzcGVjaWZpZWQgY3JpdGVyaWEsIG9yIGFsbCB1c2VycyBpZiBubyBjcml0aWVyaWEgaXMgc3BlY2lmaWVkLjwvbGk+DQogIDxsaT5kaXJlY3RvcnkgLSBEaXNwbGF5cyBhbiBhbHBoYWJldGljYWwgZGlyZWN0b3J5IG9mIGxpbmtzIHRvIHN1bW1hcnkgdmlld3MgdG8gdXNlcnMgdGhhdCBtYXRjaCB0aGUgc3BlY2lmaWVkIGNyaXRlcmlhLiAgSXQgaXMgcG9zc2libGUgdG8gY3JlYXRlIGRpcmVjdG9yeSB2aWV3cyBvbiB1c2VybmFtZSwgb3Igb24gYW55IG90aGVyIHBhcmFtZXRlcjwvbGk+DQogIDxsaT5kZXRhaWwgLSBEaXNwbGF5cyBhIGRldGFpbCByZXBvcnQgYWJvdXQgYSBzcGVjaWZpYyB1c2VyLjwvbGk+DQo8L3VsPic7CiRsYW5nWydoZWxwX3BhcmFtX2Jyb3dzZXByb3B0ZW1wbGF0ZSddID0gJ0Rlbm5hIHBhcmFtZXRlciB0aWxsJmFyaW5nO3RlciBhdHQgbWFuIGFuZ2VyIGVuIGlja2Ugc3RhbmRhcmQgZWdlbmRvbXNtYWxsLic7CiRsYW5nWydoZWxwX3BhcmFtX2dyb3VwJ10gPSAnQW52JmF1bWw7bmQgbWVkIERlZmF1bHQgcyZhcmluZzsgc2thIGRlbm5hIHBhcmFtZXRlciBpbm5laCZhcmluZztsbGEgbmFtbmV0IHAmYXJpbmc7IGVuIEZFVSBhbnYmYXVtbDtuZGFyZ3J1cHBlbiBvY2gga29tbWVyIGF0dCBiZWdyJmF1bWw7bnNhIHZpc25pbmdlbiB0aWxsIG1lZGxlbW1hciBhdiBkZW4gZ3J1cHBlbi4nOwokbGFuZ1snaGVscF9wYXJhbV9naWQnXSA9ICdBbnYmYXVtbDtuZCBtZWQgRGVmYXVsdCBzJmFyaW5nOyBza2EgZGVubmEgcGFyYW1ldGVyIGlubmVoJmFyaW5nO2xsYSBJRDp0IHAmYXJpbmc7IGVuIEZFVSBhbnYmYXVtbDtuZGFyZ3J1cHBlbiBvY2gga29tbWVyIGF0dCBiZWdyJmF1bWw7bnNhIHZpc25pbmdlbiB0aWxsIG1lZGxlbW1hciBhdiBkZW4gZ3J1cHBlbi4gRGVubmEgcGFyYW1ldGVyIGthbiBpbnRlIGFudiZhdW1sO25kYXMgdGlsbHNhbW1hbnMgbWVkIEdyb3VwIHBhcmFtZXRlcm4uJzsKJGxhbmdbJ2hlbHBfcGFyYW1fc2hvd2V4cGlyZWQnXSA9ICdHcnVuZGluc3QmYXVtbDtsbG5pbmdlbiAmYXVtbDtyIGF0dCBzeXN0ZW1ldCBleGtsdWRlcmFyIGFudiZhdW1sO25kYXJrb250b24gc29tIGhhciBnJmFyaW5nO3R0IHV0LiBTdCZhdW1sO2xscyBwYXJhbWV0ZXJuIHRpbGwgMSBzJmFyaW5nOyBpbmtsdWRlcmFzIGRlc3NhIGFudiZhdW1sO25kYXJlLic7CiRsYW5nWydoZWxwX3BhcmFtX2Jzb3J0YnknXSA9ICdVc2VkIGZvciB0aGUgYnJvd3NlIGFjdGlvbiwgdGhpcyBwYXJhbWV0ZXIgc3BlY2lmaWVzIHRoZSBzb3J0IG9yZGVyIG9mIHRoZSBnZW5lcmF0ZWQgcHJvcGVydHkgb3V0cHV0LiAgUG9zc2libGUgdmFsdWVzIGFyZToNCjx1bD4NCiAgPGxpPm5hbWUgLSB0aGUgcHJvcGVydHkgbmFtZS48L2xpPg0KICA8bGk+Y291bnQgLSB0aGUgbnVtYmVyIG9mIG1hdGNoZXMuPC9saT4NCjwvdWw+JzsKJGxhbmdbJ2hlbHBfcGFyYW1fc3BhcnNlJ10gPSAnQXBwbGljYWJsZSBvbmx5IHRvIHRoZSBkaXJlY3RvcnkgdmlldyB0aGlzIG9wdGlvbiB3aWxsIG9ubHkgc2hvdyBhIGRpcmVjdG9yeSAgbGV0dGVyIGZvciB3aGljaCB0aGVyZSBhcmUgbWF0Y2hpbmcgdXNlcnMuJzsKJGxhbmdbJ2hlbHBfcGFyYW1fcmVzdWx0cGFnZSddID0gJ0FudiZhdW1sO25kcyBmJm91bWw7ciBhdHQgcyZvdW1sO2thIG9jaCBibCZhdW1sO2RkcmEgYmxhbmQgb2xpa2Ega3JpdGVyaWVyIHNhbXQgYW5nZXIgdmlsa2VuIGlubmVoJmFyaW5nO2xsc3NpZGEgc29tIHNrYSB2aXNhIHJlc3VsdGF0ZXQgZiZvdW1sO3IgbWF0Y2hhbmRlIGFydGlrbGFyLic7CiRsYW5nWydoZWxwX3BhcmFtX3NvcnRieSddID0gJ0FudiZhdW1sO25kIHNvbSBncnVuZGluc3QmYXVtbDtsbG5pbmcsIGRlbm5hIHBhcmFtZXRlciBzcGVjaWZpY2VyYXIgaHVyIHJlc3VsdGF0ZXQgc2thIHNvcnRlcmFzLiBNJm91bWw7amxpZ2EgdiZhdW1sO3JkZW4gJmF1bWw7cjoNCjx1bD4NCiA8bGk+aWQgLSBBbnYmYXVtbDtuZGFyZW5zIGlkLjwvbGk+DQogPGxpPnVzZXJuYW1lIC0gQW52JmF1bWw7bmRhcm5hbW5ldC48L2xpPg0KIDxsaT5jcmVhdGVkYXRlIC0gRGF0dW1ldCBkJmFyaW5nOyBrb250b3Qgc2thcGFkZXMuPC9saT4NCiA8bGk+ZXhwaXJlcyAtIERhdHVtZXQga29udG90IGF2c2x1dGFzIChlbGxlciBoYXIgYXZzbHV0YXRzKTwvbGk+DQogPGxpPmFjdGl2aXR5IC0gRGF0dW1ldCBmJm91bWw7ciBzZW5hc3RlIGFrdGl2aXRldCAoaW5sb2dnYWQgZWxsZXIgdXRsb2dnYWQpLjwvbGk+DQo8L3VsPic7CiRsYW5nWydoZWxwX3BhcmFtX2Jzb3J0b3JkZXInXSA9ICdVc2VkIGZvciB0aGUgYnJvd3NlIGFjdGlvbiwgdGhpcyBwYXJhbWV0ZXIgc3BlY2lmaWVzIHRoZSBzb3J0IG9yZGVyIG9mIHRoZSBnZW5lcmF0ZWQgb3V0cHV0LiAgUG9zc2libGUgdmFsdWVzIGFyZToNCjx1bD4NCiAgPGxpPkFTQyAtIEFzY2VuZGluZyBvcmRlcjwvbGk+DQogIDxsaT5ERVNDIC0gRGVzY2VuZGluZyBvcmRlcjwvbGk+DQo8L3VsPic7CiRsYW5nWydoZWxwX3BhcmFtX3NvcnRvcmRlciddID0gJ0FudiZhdW1sO25kIHNvbSBncnVuZGluc3QmYXVtbDtsbG5pbmcsIGRlbm5hIHBhcmFtZXRlciBzcGVjaWZpY2VyYXIgaHVyIHJlc3VsdGF0ZXQgc2thIHNvcnRlcmFzLiBNJm91bWw7amxpZ2EgdiZhdW1sO3JkZW4gJmF1bWw7cjoNCjx1bD4NCiAgPGxpPkFTQyAtIFN0aWdhbmRlIG9yZG5pbmc8L2xpPg0KICA8bGk+REVTQyAtIEZhbGxhbmRlIG9yZG5pbmc8L2xpPg0KPC91bD4nOwokbGFuZ1snaGVscF9wYXJhbV9wYWdlbGltaXQnXSA9ICdBbnYmYXVtbDtuZHMgZiZvdW1sO3Igc3RhbmRhcmQmYXJpbmc7dGcmYXVtbDtyZGVuLCBkZW5uYSBwYXJhbWV0ZXIgYW5nZXIgZGV0IGgmb3VtbDtnc3RhIGFudGFsZXQgcG9zdGVyIHNvbSBza2FsbCByZXR1cm5lcmFzLic7CiRsYW5nWydoZWxwX3BhcmFtX3Byb3AnXSA9ICdVc2VkIGZvciB0aGUgZGVmYXVsdCBhbmQgZGlyZWN0b3J5IGFjdGlvbnMsIHRoaXMgcGFyYW1ldGVyIGJlaGF2ZXMgaW4gdHdvIGRpZmZlcmVudCB3YXlzIGRlcGVuZGluZyB1cG9uIHRoZSBhY3Rpb246DQo8dWw+DQogIDxsaT5UaGUgZGVmYXVsdCAoc3VtbWFyeSkgYWN0aW9uDQogICAgPHA+SW4gdGhlIGRlZmF1bHQgKHN1bW1hcnkpIGFjdGlvbiwgdGhpcyBwYXJhbWV0ZXIgY2FuIGJlIHVzZWQgdG8gc3BlY2lmeSBhIHByb3BlcnR5IHRvIGZpbHRlciB0aGUgcmVzdWx0cyBieS48L3A+DQogIDwvbGk+DQogIDxsaT5UaGUgZGlyZWN0b3J5IGFjdGlvbi4NCiAgICA8cD5JbiB0aGUgZGlyZWN0b3J5IGFjdGlvbiwgdGhpcyBhcHJhbWV0ZXIgY2FuIGJlIHVzZWQgdG8gc3BlY2lmeSBhIHByb3BlcnR5IHRvIGdlbmVyYXRlIGEgZGlyZWN0b3J5IGZyb20uICAgVGhlIGRlZmF1bHQgdmFsdWUgaW4gdGhlIGRpcmVjdG9yeSBhY3Rpb24gaXMgJnF1b3Q7dW5zZXJuYW1lJmFtcDtxdW90ZTs8L3A+DQogIDwvbGk+DQo8L3VsPic7CiRsYW5nWydoZWxwX3BhcmFtX3Byb3B2YWwnXSA9ICdBbnYmYXVtbDtuZCB0aWxsc2FtbWFucyBtZWQgJnF1b3Q7cHJvcCZxdW90OyBwYXJhbWV0ZXJuIGYmb3VtbDtyIGdydW5kdmlzbmluZ2VuIGQmYXVtbDtyIGV0dCBzcGVjaWZpa3QgdiZhdW1sO3JkZSBrYW4gYW52JmF1bWw7bmRhcyB0aWxsIGF0dCBmaWx0cmVyYSBhbnYmYXVtbDtuZGFyZS4nOwokbGFuZ1snaGVscF9wYXJhbV91c2VsaWtlJ10gPSAnVXNlZCBpbiBjb25qdW5jdGlvbiB3aXRoIHRoZSAmcXVvdDtwcm9wJnF1b3Q7IGFuZCAmcXVvdDtwcm9wdmFsJnF1b3Q7IHBhcmFtZXRlcnMsIHRoaXMgcGFyYW1ldGVyLCBpZiBzZXQgdG8gYSBwb3NpdGl2ZSBpbnRlZ2VyIHZhbHVlIGluZGljYXRlcyB0aGF0IHRoZSBwcm9wdmFsIHBhcmFtZXRlciBjb250YWlucyBhIExJS0UgZXhwcmVzc2lvbic7CiRsYW5nWydoZWxwX3BhcmFtX2RldGFpbHBhZ2UnXSA9ICdEZW5uYSBwYXJhbWV0ZXIsIG9tIGRlbiBhbmdlcywgYiZvdW1sO3IgaW5uZWgmYXJpbmc7bGxhIHBhZ2VpZCBlbGxlciBhbGlhcyBmJm91bWw7ciBlbiBDTVMgaW5uZWgmYXJpbmc7bGxzIHNpZGEgZCZhdW1sO3IgZHUgdmlsbCB2aXNhIGVuIGRldGFsamVyYWQgcmFwcG9ydCc7CiRsYW5nWydoZWxwX3BhcmFtX3N1bW1hcnl0ZW1wbGF0ZSddID0gJ0Rlbm5hIHBhcmFtZXRlciB0aWxsJmFyaW5nO3RlciBhdHQgbWFuIGFuZ2VyIGVuIGlja2Ugc3RhbmRhcmQgc3VtbWVyaW5nc21hbGwgbmFtbiBzb20gc2thIGFudiZhdW1sO25kYXMgbiZhdW1sO3Igc2FtbWFuc3QmYXVtbDtsbG5pbmdlbiB2aXNhcyc7CiRsYW5nWydoZWxwX3BhcmFtX2RldGFpbHRlbXBsYXRlJ10gPSAnRGVubmEgcGFyYW1ldGVyIHRpbGwmYXJpbmc7dGVyIGF0dCBtYW4gYW5nZXIgZW4gaWNrZSBzdGFuZGFyZCBkZXRhbGptYWxscyBuYW1uIHNvbSBza2EgYW52JmF1bWw7bmRhcyBuJmF1bWw7ciBkZXRhbGplciB2aXNhcyc7CiRsYW5nWydoZWxwX3BhcmFtX2RpcmVjdG9yeXRlbXBsYXRlJ10gPSAnRGVubmEgcGFyYW1ldGVyIHRpbGwmYXJpbmc7dGVyIGF0dCBtYW4gYW5nZXIgZW4gaWNrZSBzdGFuZGFyZCBrYXRhbG9nbWFsbHMgbmFtbiBzb20gc2thIGFudiZhdW1sO25kYXMgbiZhdW1sO3Iga2F0YWxvZ2VuIHZpc2FzJzsKJGxhbmdbJ2hlbHBfcGFyYW1fc2VhcmNoZm9ybXRlbXBsYXRlJ10gPSAnRGVubmEgcGFyYW1ldGVyIHRpbGwmYXJpbmc7dGVyIGF0dCBtYW4gYW5nZXIgZW4gaWNrZSBzdGFuZGFyZCBzJm91bWw7a2Z1bmt0aW9uIHNvbSBkdSBza2EgYW52JmF1bWw7bmRhIGYmb3VtbDtyIGF0dCBzJm91bWw7a2EgZm9ybWVyJzsKJGxhbmdbJ2hlbHBfcGFyYW1fc2VhcmNocHJvcGVydHknXSA9ICdUaGlzIHBhcmFtZXRlciBhbGxvd3Mgc3BlY2lmeWluZyBhIHNpbmdsZSBhZGRpdGlvbmFsIEZFVSBwcm9wZXJ0eSBuYW1lIHRvIHN1cHBseSBpbiB0aGUgc2VhcmNoIGZvcm0nOwokbGFuZ1snaGVscF9wYXJhbV91aWQnXSA9ICdBbnYmYXVtbDtuZHMgaSBzYW1iYW5kIG1lZCBkZXRhbGogZGlzcGxheWVuLCBkZW5uYSBwYXJhbWV0ZXIgbSZhcmluZztzdGUgaW5uZWgmYXJpbmc7bGxhIHVpZCBldHQgZ2lsdGlndCBmcm9udGVuZCBhbnYmYXVtbDtuZGFya29udG8nOwokbGFuZ1snaW5mb19icm93c2Vwcm9wX3RlbXBsYXRlJ10gPSAnQnJvd3NlIFByb3BlcnR5IHRlbXBsYXRlcyBkaXNwbGF5IEEgbGlzdCBvZiB1bmlxdWUgdmFsdWVzIGZvciB0aGUgc3BlY2lmaWVkIHByb3BlcnR5LiAgRWFjaCBpdGVtIGluIHRoZSBsaXN0IGlzIGEgbGluayB0byBhIHN1bW1hcnkgdmlldyBjb250YWluaW5nIHRoZSBtYXRjaGluZyB1c2VycyB0aGF0IG1hdGNoIHRoYXQgcHJvcGVydHkgdmFsdWUuICBZb3UgbWF5IHVzZSBhbnkgc21hcnR5IGxvZ2ljIG9yIHZhcmlhYmxlcyB0aGF0IGhhdmUgYmVlbiBjcmVhdGVkIHByZXZpb3VzbHksIG9yIHRoZSBvbmVzIG1hZGUgYXZhaWxhYmlsaXR5IHNwZWNpZmljYWxseSBmb3IgdGhpcyB2aWV3Lic7CiRsYW5nWydpbmZvX2Jyb3dzZXByb3BfdGVtcGxhdGVzX3RhYiddID0gJ1RoaXMgdGFiIGNvbnRhaW5zIHRoZSBsaXN0IG9mIGF2YWlsYWJsZSBicm93c2UgcHJvcGVydHkgdmlldyB0ZW1wbGF0ZXMuICBPbmUgb2YgdGhlbSBpcyBtYXJrZWQgYXMgZGVmYXVsdC4gIFRoZSBkZWZhdWx0IG9uZSB3aWxsIGJlIHVzZWQgd2hlbiBubyBhbHRlcm5hdGUgdGVtcGxhdGUgbmFtZSBpcyBzdXBwbGllZCBvbiB0aGUgdGFnIHRoYXQgY2FsbHMgdGhpcyBtb2R1bGUnOwokbGFuZ1snaW5mb19kZXRhaWxfdGVtcGxhdGUnXSA9ICdEZXRhaWwgdGVtcGxhdGVzIGRpc3BsYXkgZGV0YWlsZWQgaW5mb3JtYXRpb24gYWJvdXQgYSBzcGVjaWZpYyBmcm9udGVuZCB1c2VyLiAgSGVyZSB5b3UgZGVzaWduIHRoZSB3YXkgaW4gd2hpY2ggeW91IHdhbnQgdGhhdCBpbmZvcm1hdGlvbiBsYWlkIG91dC4gIFlvdSBtYXkgdXNlIGFueSBzbWFydHkgbG9naWMgb3IgdmFyaWFibGVzIHRoYXQgaGF2ZSBiZWVuIGRlc2lnbmVkIHByZXZpb3VzbHksIG9yIHRoZSBvbmVzIG1hZGUgYXZhaWxhYmxlIHNwZWNpZmljYWxseSBmb3IgdGhpcyB2aWV3JzsKJGxhbmdbJ2luZm9fZGV0YWlsX3RlbXBsYXRlc190YWInXSA9ICdUaGlzIHRhYiBjb250YWlucyB0aGUgbGlzdCBvZiBhdmFpbGFibGUgZGV0YWlsIHZpZXcgdGVtcGxhdGVzLiAgT25lIG9mIHRoZW0gaXMgbWFya2VkIGFzIGRlZmF1bHQuICBUaGUgZGVmYXVsdCBvbmUgd2lsbCBiZSB1c2VkIHdoZW4gbm8gYWx0ZXJuYXRlIHRlbXBsYXRlIG5hbWUgaXMgc3VwcGxpZWQgb24gdGhlIHRhZyB0aGF0IGNhbGxzIHRoaXMgbW9kdWxlJzsKJGxhbmdbJ2luZm9fZGlyZWN0b3J5X3RlbXBsYXRlJ10gPSAnRGlyZWN0b3J5IHRlbXBsYXRlcyBkaXNwbGF5IGFuIGFscGhhYmV0aWNhbCBsaXN0IG9mIGxpbmtzLCB3aGVuIGEgbGluayBpcyBjbGlja2VkIGl0IHdpbGwgZGlzcGxheSBhIHN1bW1hcnkgdmlldyBvZiB0aGUgbWF0Y2hpbmcgdXNlcnMgZm9yIHRoYXQgbGV0dGVyLiAgSXQgaXMgcG9zc2libGUgdG8gY3JlYXRlIGRpcmVjdG9yaWVzIGJhc2VkIG9uIGRpZmZlcmVudCBwcm9wZXJ0aWVzLiAgSGVyZSB5b3UgZGVzaWduIHRoZSB3YXkgaW4gd2hpY2ggeW91IHdhbnQgdGhhdCBpbmZvcm1hdGlvbiBsYWlkIG91dC4gIFlvdSBtYXkgdXNlIGFueSBzbWFydHkgbG9naWMgb3IgdmFyaWFibGVzIHRoYXQgaGF2ZSBiZWVuIGRlc2lnbmVkIHByZXZpb3VzbHksIG9yIHRoZSBvbmVzIG1hZGUgYXZhaWxhYmxlIHNwZWNpZmljYWxseSBmb3IgdGhpcyB2aWV3JzsKJGxhbmdbJ2luZm9fZGlyZWN0b3J5X3RlbXBsYXRlc190YWInXSA9ICdUaGlzIHRhYiBjb250YWlucyB0aGUgbGlzdCBvZiBhdmFpbGFibGUgZGlyZWN0b3J5IHRlbXBsYXRlcy4gIE9uZSBvZiB0aGVtIGlzIG1hcmtlZCBhcyBkZWZhdWx0LiAgVGhlIGRlZmF1bHQgb25lIHdpbGwgYmUgdXNlZCB3aGVuIG5vIGFsdGVybmF0ZSB0ZW1wbGF0ZSBuYW1lIGlzIHN1cHBsaWVkIG9uIHRoZSB0YWcgdGhhdCBjYWxscyB0aGlzIG1vZHVsZSc7CiRsYW5nWydpbmZvX3N1bW1hcnlfdGVtcGxhdGUnXSA9ICdTdW1tYXJ5IHRlbXBsYXRlcyBkaXNwbGF5IGluZm9ybWF0aW9uIGFib3V0IGEgbGlzdCBvZiB1c2VycyB0aGF0IG1hdGNoIGEgY3JpdGVyaWEuICBIZXJlIHlvdSBkZXNpZ24gdGhlIHdheSBpbiB3aGljaCB5b3Ugd2FudCB0aGF0IGluZm9ybWF0aW9uIGxhaWQgb3V0LiAgWW91IG1heSB1c2UgYW55IHNtYXJ0eSBsb2dpYyBvciB2YXJpYWJsZXMgdGhhdCBoYXZlIGJlZW4gZGVzaWduZWQgcHJldmlvdXNseSwgb3IgdGhlIG9uZXMgbWFkZSBhdmFpbGFibGUgc3BlY2lmaWNhbGx5IGZvciB0aGlzIHZpZXcnOwokbGFuZ1snaW5mb19zZWFyY2hmb3JtX3RlbXBsYXRlJ10gPSAnU2VhcmNoIGZvcm0gdGVtcGxhdGVzIGRpc3BsYXkgQSBmb3JtIHRvIGFsbG93IHNlYXJjaGluZyBmb3IgYSBwYXJ0aWN1bGFyIHVzZXIgb3IgZ3JvdXAgb2YgdXNlcnMuICBIZXJlIHlvdSBkZXNpZ24gdGhlIHdheSBpbiB3aGljaCB5b3Ugd2FudCB0aGUgZm9ybSBkaXNwbGF5ZWQuICBZb3UgbWF5IHVzZSBhbnkgc21hcnR5IGxvZ2ljIG9yIHZhcmlhYmxlcyB0aGF0IGhhdmUgYmVlbiBkZXNpZ25lZCBwcmV2aW91c2x5LCBvciB0aGUgb25lcyBtYWRlIGF2YWlsYWJsZSBzcGVjaWZpY2FsbHkgZm9yIHRoaXMgdmlldyc7CiRsYW5nWydpbmZvX3NlYXJjaGZvcm1fdGVtcGxhdGVzX3RhYiddID0gJ1RoaXMgdGFiIGNvbnRhaW5zIHRoZSBsaXN0IG9mIGF2YWlsYWJsZSBzZWFyY2ggZm9ybSB0ZW1wbGF0ZXMuICBPbmUgb2YgdGhlbSBpcyBtYXJrZWQgYXMgZGVmYXVsdC4gIFRoZSBkZWZhdWx0IG9uZSB3aWxsIGJlIHVzZWQgd2hlbiBubyBhbHRlcm5hdGUgdGVtcGxhdGUgbmFtZSBpcyBzdXBwbGllZCBvbiB0aGUgdGFnIHRoYXQgY2FsbHMgdGhpcyBtb2R1bGUnOwokbGFuZ1snaW5mb19zdW1tYXJ5X3RlbXBsYXRlc190YWInXSA9ICdUaGlzIHRhYiBjb250YWlucyB0aGUgbGlzdCBvZiBhdmFpbGFibGUgc3VtbWFyeSB0ZW1wbGF0ZXMuICBPbmUgb2YgdGhlbSBpcyBtYXJrZWQgYXMgZGVmYXVsdC4gIFRoZSBkZWZhdWx0IG9uZSB3aWxsIGJlIHVzZWQgd2hlbiBubyBhbHRlcm5hdGUgdGVtcGxhdGUgbmFtZSBpcyBzdXBwbGllZCBvbiB0aGUgdGFnIHRoYXQgY2FsbHMgdGhpcyBtb2R1bGUnOwokbGFuZ1snaW5mb19zeXNkZmx0X2Jyb3dzZXByb3BfdGVtcGxhdGUnXSA9ICdTeXN0ZW0gRGVmYXVsdCBCcm93c2UgUHJvcGVydHkgVmlldyBUZW1wbGF0ZSc7CiRsYW5nWydpbmZvX3N5c2RmbHRfZGV0YWlsX3RlbXBsYXRlJ10gPSAnU3RhbmRhcmQgRGV0YWxqbWFsbCc7CiRsYW5nWydpbmZvX3N5c2RmbHRfZGlyZWN0b3J5X3RlbXBsYXRlJ10gPSAnU3RhbmRhcmQgRGlyZWN0b3J5bWFsbCc7CiRsYW5nWydpbmZvX3N5c2RmbHRfc2VhcmNoZm9ybV90ZW1wbGF0ZSddID0gJ1N0YW5kYXJkIFMmb3VtbDtrbWFsbCc7CiRsYW5nWydpbmZvX3N5c2RmbHRfc3VtbWFyeV90ZW1wbGF0ZSddID0gJ1N0YW5kYXJkIFN1bW1lcmluZ3NtYWxsJzsKJGxhbmdbJ2luZm9fc3lzZGZsdF90ZW1wbGF0ZSddID0gJyZBdW1sO25kcmluZyBhdiBkZW4gaCZhdW1sO3IgbWFsbGVuIGtvbW1lciBpbnRlIGF0dCBoYSBuJmFyaW5nO2dvbiBvbWVkZWxiYXIgZWZmZWt0IHAmYXJpbmc7IGJlZmludGxpZ2EgbWFsbGFyLiBEZW5uYSBmb3JtIHN0eXIgdiZhdW1sO3JkZXQgcCZhcmluZzsgZGVuIG1hbGwgc29tIHNrYXBhcyBuJmF1bWw7ciBkdSBrbGlja2FyIHAmYXJpbmc7ICZxdW90O05ldyBUZW1wbGF0ZSZxdW90OyBpIGwmYXVtbDttcGxpZyBtYWxsIGZsaWsuJzsKJGxhbmdbJ2xhc3RfYWN0aXZlJ10gPSAnU2VuYXN0IGFrdGl2JzsKJGxhbmdbJ2xibF9icm93c2Vwcm9wdGVtcGxhdGVzJ10gPSAnQnJvd3NlIFByb3BlcnR5IFRlbXBsYXRlcyc7CiRsYW5nWydsYmxfZGVmYXVsdHRlbXBsYXRlcyddID0gJ1N0YW5kYXJtYWxsYXInOwokbGFuZ1snbGJsX2RldGFpbHRlbXBsYXRlcyddID0gJ0RldGFsam1hbGxhcic7CiRsYW5nWydsYmxfZGlyZWN0b3J5dGVtcGxhdGVzJ10gPSAnRGlyZWN0b3J5bWFsbGFyJzsKJGxhbmdbJ2xibF9maXJzdF9wYWdlJ10gPSAnRyZhcmluZzsgdGlsbCBmJm91bWw7cnN0YSBzaWRhbic7CiRsYW5nWydsYmxfbGFzdF9wYWdlJ10gPSAnRyZhcmluZzsgdGlsbCBzaXN0YSBzaWRhbic7CiRsYW5nWydsYmxfbmV4dF9wYWdlJ10gPSAnRyZhcmluZzsgdGlsbCBuJmF1bWw7c3RhIHNpZGEnOwokbGFuZ1snbGJsX3ByZXZfcGFnZSddID0gJ0cmYXJpbmc7IHRpbGwgZiZvdW1sO3JlZyZhcmluZztlbmRlIHNpZGEnOwokbGFuZ1snbGJsX3NlYXJjaGZvcm10ZW1wbGF0ZXMnXSA9ICdTJm91bWw7a2Zvcm11bCZhdW1sO3JzbWFsbCc7CiRsYW5nWydsYmxfc2V0dGluZ3MnXSA9ICdJbnN0JmF1bWw7bGxuaW5nYXInOwokbGFuZ1snbGJsX3N1bW1hcnl0ZW1wbGF0ZXMnXSA9ICdTdW1tZXJpbmdzbWFsbGFyJzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnRW4gbW9kdWwgc29tIGcmb3VtbDtyIGRldCBtJm91bWw7amxpZ3QgYXR0IHMmb3VtbDtrYSwgYmwmYXVtbDtkZHJhIG9jaCB2aXNhIGluZm9ybWF0aW9uIG9tIEZyb250ZW5kIFVzZXJzJzsKJGxhbmdbJ29mJ10gPSAnQXYnOwokbGFuZ1sncGFnZSddID0gJ1NpZGEnOwokbGFuZ1sncG9zdGluc3RhbGwnXSA9ICdDR1VzZXJEaXJlY3RvcnkgbW9kdWxlbiAmYXVtbDtyIG51IGYmYXVtbDtyZGlnIGYmb3VtbDtyIGtvbmZpZ3VyYXRpb24nOwokbGFuZ1sncG9zdHVuaW5zdGFsbCddID0gJ0NHVXNlcmRpcmVjdG9yeSBtb2R1bGVuLCBvY2ggYWxsIGFzc29jaWVyYWQgZGF0YSAmYXVtbDtyIG51IHJhZGVyYXQgaSBkYXRhYmFzZW4nOwokbGFuZ1sncmVzdWx0c19hbGxfYW55J10gPSAnUmV0dXJuIHJlc3VsdHMgdGhhdCBtYXRjaCBhbGwsIG9yIGFueSBvZiB0aGUgY29uZGl0aW9ucyBzcGVjaWZpZWQnOwokbGFuZ1snc3VibWl0J10gPSAnU2tpY2thJzsKJGxhbmdbJ3VzZXJuYW1lJ10gPSAnQW52JmF1bWw7bmRhcm5hbW4nOwokbGFuZ1sncWNhJ10gPSAnUDAtMjQ1NzQ4MDcyLTEyNTE1MDQxODA5OTAnOwokbGFuZ1sndXRteiddID0gJzE1Njg2MTM1My4xMjY5ODk0OTAzLjIyLjE1LnV0bWNzcj1nb29nbGV8dXRtY2NuPShvcmdhbmljKXx1dG1jbWQ9b3JnYW5pY3x1dG1jdHI9bW9kdWxlcyBjbXNtcyc7CiRsYW5nWyd1dG1hJ10gPSAnMTU2ODYxMzUzLjI5MTcyODA3MTUzOTE4NTkwMDAuMTI1MTUwNDE4MS4xMjY5NTQwMTQ5LjEyNjk4OTExMTMuMjInOwokbGFuZ1sndXRtYyddID0gJzE1Njg2MTM1Myc7CiRsYW5nWyd1dG1iJ10gPSAnMTU2ODYxMzUzLjEuMTAuMTI2OTg5MTExMyc7Cj8+]]></data>
	</file>
	<file>
	  <filename>/method.install.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IENHVXNlckRpcmVjdG9yeSAoYykgMjAwOSBieSBSb2JlcnQgQ2FtcGJlbGwgCiMgICAgICAgICAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgQW4gYWRkb24gbW9kdWxlIGZvciBDTVMgTWFkZSBTaW1wbGUgdG8gcHJvdmlkZSB0aGUgYWJpbGl0eSB0byBicm93c2UKIyAgYW5kIHZpZXcgc3VtbWFyeSByZXBvcnRzIGFuZCBkZXRhaWwgcmVwb3J0cyBhYm91dCBncm91cHMgb2YgZnJvbnRlbmQKIyAgdXNlcnMuCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBIb3dldmVyLCBhcyBhIHNwZWNpYWwgZXhjZXB0aW9uIHRvIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgZGlzdHJpYnV0ZWQKIyBhcyBhbiBhZGRvbiBtb2R1bGUgdG8gQ01TIE1hZGUgU2ltcGxlLiAgWW91IG1heSBub3QgdXNlIHRoaXMgc29mdHdhcmUKIyBpbiBhbnkgTm9uIEdQTCB2ZXJzaW9uIG9mIENNUyBNYWRlIHNpbXBsZSwgb3IgaW4gYW55IHZlcnNpb24gb2YgQ01TCiMgTWFkZSBzaW1wbGUgdGhhdCBkb2VzIG5vdCBpbmRpY2F0ZSBjbGVhcmx5IGFuZCBvYnZpb3VzbHkgaW4gaXRzIGFkbWluIAojIHNlY3Rpb24gdGhhdCB0aGUgc2l0ZSB3YXMgYnVpbHQgd2l0aCBDTVMgTWFkZSBzaW1wbGUuCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojRU5EX0xJQ0VOU0UKaWYoICFpc3NldCgkZ0NtcykgKSBleGl0OwoKIyBEaXJlY3RvcnkgVGVtcGxhdGUKJGZuID0gZGlybmFtZShfX0ZJTEVfXykuJy90ZW1wbGF0ZXMvb3JpZ19kaXJlY3RvcnlfdGVtcGxhdGUudHBsJzsKaWYoIGZpbGVfZXhpc3RzKCAkZm4gKSApCiAgewogICAgJHRlbXBsYXRlID0gZmlsZV9nZXRfY29udGVudHMoJGZuKTsKICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKENHVVNFUkRJUl9QUkVGX05FV0RJUkVDVE9SWV9URU1QTEFURSwkdGVtcGxhdGUpOwogICAgJHRoaXMtPlNldFRlbXBsYXRlKCdkaXJlY3RvcnlfU2FtcGxlJywkdGVtcGxhdGUpOwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoQ0dVU0VSRElSX1BSRUZfREZMVERJUkVDVE9SWV9OQU1FLCdTYW1wbGUnKTsKICB9CgojIFN1bW1hcnkgVGVtcGxhdGUKJGZuID0gZGlybmFtZShfX0ZJTEVfXykuJy90ZW1wbGF0ZXMvb3JpZ19zdW1tYXJ5X3RlbXBsYXRlLnRwbCc7CmlmKCBmaWxlX2V4aXN0cyggJGZuICkgKQogIHsKICAgICR0ZW1wbGF0ZSA9IGZpbGVfZ2V0X2NvbnRlbnRzKCRmbik7CiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZShDR1VTRVJESVJfUFJFRl9ORVdTVU1NQVJZX1RFTVBMQVRFLCR0ZW1wbGF0ZSk7CiAgICAkdGhpcy0+U2V0VGVtcGxhdGUoJ3N1bW1hcnlfU2FtcGxlJywkdGVtcGxhdGUpOwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoQ0dVU0VSRElSX1BSRUZfREZMVFNVTU1BUllfTkFNRSwnU2FtcGxlJyk7CiAgfQoKIyBEZXRhaWwgdGVtcGxhdGUKJGZuID0gZGlybmFtZShfX0ZJTEVfXykuJy90ZW1wbGF0ZXMvb3JpZ19kZXRhaWxfdGVtcGxhdGUudHBsJzsKaWYoIGZpbGVfZXhpc3RzKCAkZm4gKSApCiAgewogICAgJHRlbXBsYXRlID0gZmlsZV9nZXRfY29udGVudHMoJGZuKTsKICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKENHVVNFUkRJUl9QUkVGX05FV0RFVEFJTF9URU1QTEFURSwkdGVtcGxhdGUpOwogICAgJHRoaXMtPlNldFRlbXBsYXRlKCdkZXRhaWxfU2FtcGxlJywkdGVtcGxhdGUpOwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoQ0dVU0VSRElSX1BSRUZfREZMVERFVEFJTF9OQU1FLCdTYW1wbGUnKTsKICB9CgojIFNlYXJjaGZvcm0gdGVtcGxhdGUKJGZuID0gZGlybmFtZShfX0ZJTEVfXykuJy90ZW1wbGF0ZXMvb3JpZ19zZWFyY2hmb3JtX3RlbXBsYXRlLnRwbCc7CmlmKCBmaWxlX2V4aXN0cyggJGZuICkgKQogIHsKICAgICR0ZW1wbGF0ZSA9IGZpbGVfZ2V0X2NvbnRlbnRzKCRmbik7CiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZShDR1VTRVJESVJfUFJFRl9ORVdTRUFSQ0hGT1JNX1RFTVBMQVRFLCR0ZW1wbGF0ZSk7CiAgICAkdGhpcy0+U2V0VGVtcGxhdGUoJ3NlYXJjaGZvcm1fU2FtcGxlJywkdGVtcGxhdGUpOwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoQ0dVU0VSRElSX1BSRUZfREZMVFNFQVJDSEZPUk1fTkFNRSwnU2FtcGxlJyk7CiAgfQoKIyBCcm93c2UgUHJvcGVydHkgdGVtcGxhdGUKJGZuID0gZGlybmFtZShfX0ZJTEVfXykuJy90ZW1wbGF0ZXMvb3JpZ19icm93c2Vwcm9wX3RlbXBsYXRlLnRwbCc7CmlmKCBmaWxlX2V4aXN0cyggJGZuICkgKQogIHsKICAgICR0ZW1wbGF0ZSA9IGZpbGVfZ2V0X2NvbnRlbnRzKCRmbik7CiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZShDR1VTRVJESVJfUFJFRl9ORVdCUk9XU0VQUk9QX1RFTVBMQVRFLCR0ZW1wbGF0ZSk7CiAgICAkdGhpcy0+U2V0VGVtcGxhdGUoJ2Jyb3dzZXByb3BfU2FtcGxlJywkdGVtcGxhdGUpOwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoQ0dVU0VSRElSX1BSRUZfREZMVEJST1dTRVBST1BfTkFNRSwnU2FtcGxlJyk7CiAgfQoKIwojIEVPRgojCj8+]]></data>
	</file>
	<file>
	  <filename>/method.uninstall.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IENHVXNlckRpcmVjdG9yeSAoYykgMjAwOSBieSBSb2JlcnQgQ2FtcGJlbGwgCiMgICAgICAgICAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgQW4gYWRkb24gbW9kdWxlIGZvciBDTVMgTWFkZSBTaW1wbGUgdG8gcHJvdmlkZSB0aGUgYWJpbGl0eSB0byBicm93c2UKIyAgYW5kIHZpZXcgc3VtbWFyeSByZXBvcnRzIGFuZCBkZXRhaWwgcmVwb3J0cyBhYm91dCBncm91cHMgb2YgZnJvbnRlbmQKIyAgdXNlcnMuCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBIb3dldmVyLCBhcyBhIHNwZWNpYWwgZXhjZXB0aW9uIHRvIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgZGlzdHJpYnV0ZWQKIyBhcyBhbiBhZGRvbiBtb2R1bGUgdG8gQ01TIE1hZGUgU2ltcGxlLiAgWW91IG1heSBub3QgdXNlIHRoaXMgc29mdHdhcmUKIyBpbiBhbnkgTm9uIEdQTCB2ZXJzaW9uIG9mIENNUyBNYWRlIHNpbXBsZSwgb3IgaW4gYW55IHZlcnNpb24gb2YgQ01TCiMgTWFkZSBzaW1wbGUgdGhhdCBkb2VzIG5vdCBpbmRpY2F0ZSBjbGVhcmx5IGFuZCBvYnZpb3VzbHkgaW4gaXRzIGFkbWluIAojIHNlY3Rpb24gdGhhdCB0aGUgc2l0ZSB3YXMgYnVpbHQgd2l0aCBDTVMgTWFkZSBzaW1wbGUuCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojRU5EX0xJQ0VOU0UKaWYoICFpc3NldCgkZ0NtcykgKSBleGl0OwoKLy8gUmVtb3ZlIGFsbCBwcmVmZXJlbmNlcyBmb3IgdGhpcyBtb2R1bGUKJHRoaXMtPlJlbW92ZVByZWZlcmVuY2UoKTsKCi8vIFJlbW92ZSBhbGwgZGF0YWJhc2UgdGVtcGxhdGVzIGZvciB0aGlzIG1vZHVsZQokdGhpcy0+RGVsZXRlVGVtcGxhdGUoKTsKCiMKIyBFT0YKIwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/method.upgrade.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IENHVXNlckRpcmVjdG9yeSAoYykgMjAwOSBieSBSb2JlcnQgQ2FtcGJlbGwgCiMgICAgICAgICAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgQW4gYWRkb24gbW9kdWxlIGZvciBDTVMgTWFkZSBTaW1wbGUgdG8gcHJvdmlkZSB0aGUgYWJpbGl0eSB0byBicm93c2UKIyAgYW5kIHZpZXcgc3VtbWFyeSByZXBvcnRzIGFuZCBkZXRhaWwgcmVwb3J0cyBhYm91dCBncm91cHMgb2YgZnJvbnRlbmQKIyAgdXNlcnMuCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBIb3dldmVyLCBhcyBhIHNwZWNpYWwgZXhjZXB0aW9uIHRvIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgZGlzdHJpYnV0ZWQKIyBhcyBhbiBhZGRvbiBtb2R1bGUgdG8gQ01TIE1hZGUgU2ltcGxlLiAgWW91IG1heSBub3QgdXNlIHRoaXMgc29mdHdhcmUKIyBpbiBhbnkgTm9uIEdQTCB2ZXJzaW9uIG9mIENNUyBNYWRlIHNpbXBsZSwgb3IgaW4gYW55IHZlcnNpb24gb2YgQ01TCiMgTWFkZSBzaW1wbGUgdGhhdCBkb2VzIG5vdCBpbmRpY2F0ZSBjbGVhcmx5IGFuZCBvYnZpb3VzbHkgaW4gaXRzIGFkbWluIAojIHNlY3Rpb24gdGhhdCB0aGUgc2l0ZSB3YXMgYnVpbHQgd2l0aCBDTVMgTWFkZSBzaW1wbGUuCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojRU5EX0xJQ0VOU0UKaWYoICFpc3NldCgkZ0NtcykgKSBleGl0OwoKJGN1cnJlbnRfdmVyc2lvbiA9ICRvbGR2ZXJzaW9uOwpzd2l0Y2goJGN1cnJlbnRfdmVyc2lvbikKICB7CiAgY2FzZSAnMS4wJzoKICBjYXNlICcxLjAuMSc6CiAgICAvLyBTZWFyY2hmb3JtIHRlbXBsYXRlCiAgICAkZm4gPSBkaXJuYW1lKF9fRklMRV9fKS4nL3RlbXBsYXRlcy9vcmlnX3NlYXJjaGZvcm1fdGVtcGxhdGUudHBsJzsKICAgIGlmKCBmaWxlX2V4aXN0cyggJGZuICkgKQogICAgICB7CgkkdGVtcGxhdGUgPSBmaWxlX2dldF9jb250ZW50cygkZm4pOwoJJHRoaXMtPlNldFByZWZlcmVuY2UoQ0dVU0VSRElSX1BSRUZfTkVXU0VBUkNIRk9STV9URU1QTEFURSwkdGVtcGxhdGUpOwoJJHRoaXMtPlNldFRlbXBsYXRlKCdzZWFyY2hmb3JtX1NhbXBsZScsJHRlbXBsYXRlKTsKCSR0aGlzLT5TZXRQcmVmZXJlbmNlKENHVVNFUkRJUl9QUkVGX0RGTFRTRUFSQ0hGT1JNX05BTUUsJ1NhbXBsZScpOwogICAgICB9CgogICAgJGZuID0gZGlybmFtZShfX0ZJTEVfXykuJy90ZW1wbGF0ZXMvb3JpZ19icm93c2Vwcm9wX3RlbXBsYXRlLnRwbCc7CiAgICBpZiggZmlsZV9leGlzdHMoICRmbiApICkKICAgICAgewoJJHRlbXBsYXRlID0gZmlsZV9nZXRfY29udGVudHMoJGZuKTsKCSR0aGlzLT5TZXRQcmVmZXJlbmNlKENHVVNFUkRJUl9QUkVGX05FV0JST1dTRVBST1BfVEVNUExBVEUsJHRlbXBsYXRlKTsKCSR0aGlzLT5TZXRUZW1wbGF0ZSgnYnJvd3NlcHJvcF9TYW1wbGUnLCR0ZW1wbGF0ZSk7CgkkdGhpcy0+U2V0UHJlZmVyZW5jZShDR1VTRVJESVJfUFJFRl9ERkxUQlJPV1NFUFJPUF9OQU1FLCdTYW1wbGUnKTsKICAgICAgfQogICAgYnJlYWs7CiAgfQoKIwojIEVPRgojCj8+]]></data>
	</file>
	<file>
	  <filename>/skeleton.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IENHVXNlckRpcmVjdG9yeSAoYykgMjAwOSBieSBSb2JlcnQgQ2FtcGJlbGwgCiMgICAgICAgICAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgQW4gYWRkb24gbW9kdWxlIGZvciBDTVMgTWFkZSBTaW1wbGUgdG8gcHJvdmlkZSB0aGUgYWJpbGl0eSB0byBicm93c2UKIyAgYW5kIHZpZXcgc3VtbWFyeSByZXBvcnRzIGFuZCBkZXRhaWwgcmVwb3J0cyBhYm91dCBncm91cHMgb2YgZnJvbnRlbmQKIyAgdXNlcnMuCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBIb3dldmVyLCBhcyBhIHNwZWNpYWwgZXhjZXB0aW9uIHRvIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgZGlzdHJpYnV0ZWQKIyBhcyBhbiBhZGRvbiBtb2R1bGUgdG8gQ01TIE1hZGUgU2ltcGxlLiAgWW91IG1heSBub3QgdXNlIHRoaXMgc29mdHdhcmUKIyBpbiBhbnkgTm9uIEdQTCB2ZXJzaW9uIG9mIENNUyBNYWRlIHNpbXBsZSwgb3IgaW4gYW55IHZlcnNpb24gb2YgQ01TCiMgTWFkZSBzaW1wbGUgdGhhdCBkb2VzIG5vdCBpbmRpY2F0ZSBjbGVhcmx5IGFuZCBvYnZpb3VzbHkgaW4gaXRzIGFkbWluIAojIHNlY3Rpb24gdGhhdCB0aGUgc2l0ZSB3YXMgYnVpbHQgd2l0aCBDTVMgTWFkZSBzaW1wbGUuCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojRU5EX0xJQ0VOU0UKaWYoICFpc3NldCgkZ0NtcykgKSBleGl0OwoKIwojIEVPRgojCj8+]]></data>
	</file>
	<file>
	  <filename>/templates/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/templates/orig_browseprop_template.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogYnJvd3NlIHByb3BlcnR5IHZhbHVlcyB0ZW1wbGF0ZSAqfQp7aWYgaXNzZXQoJGJyb3dzZW9wdGlvbnMpfQo8dWw+Cntmb3JlYWNoIGZyb209JGJyb3dzZW9wdGlvbnMgaXRlbT0nb25lJ30KICA8bGk+PGEgaHJlZj0ieyRvbmUudXJsfSIgdGl0bGU9Inskb25lLm5hbWV9Ij57JG9uZS5uYW1lfXtpZiBpc3NldCgkb25lLmNvdW50KX0gKHskb25lLmNvdW50fSl7L2lmfTwvYT48L2xpPgp7L2ZvcmVhY2h9CjwvdWw+CnsvaWZ9Cg==]]></data>
	</file>
	<file>
	  <filename>/templates/orig_detail_template.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogQ0dVc2VyRGlyZWN0b3J5IGRldGFpbCB0ZW1wbGF0ZSAqfQo8ZGl2IGlkPSJ1c2VyZGlyZWN0b3J5X2RldGFpbCI+CgogIDxkaXYgY2xhc3M9InJvdyIgc3R5bGU9Im1hcmdpbjogMC41ZW07Ij4KICAgIDxkaXYgc3R5bGU9IndpZHRoOiA0OSU7IGZsb2F0OiBsZWZ0OyI+eyRtb2QtPkxhbmcoJ3VzZXJuYW1lJyl9OjwvZGl2PgogICAgPGRpdiBzdHlsZT0id2lkdGg6IDQ5JTsgZmxvYXQ6IGxlZnQ7Ij57JG9uZXVzZXIudXNlcm5hbWV9ICh7JG9uZXVzZXIuaWR9KTwvZGl2PgogIDwvZGl2PgoKICA8ZGl2IGNsYXNzPSJyb3ciIHN0eWxlPSJtYXJnaW46IDAuNWVtOyI+CiAgICA8ZGl2IHN0eWxlPSJ3aWR0aDogNDklOyBmbG9hdDogbGVmdDsiPnskbW9kLT5MYW5nKCdjcmVhdGVkJyl9OjwvZGl2PgogICAgPGRpdiBzdHlsZT0id2lkdGg6IDQ5JTsgZmxvYXQ6IGxlZnQ7Ij57JG9uZXVzZXIuY3JlYXRlZGF0ZXxjbXNfZGF0ZV9mb3JtYXR9PC9kaXY+CiAgPC9kaXY+CgogIDxkaXYgY2xhc3M9InJvdyIgc3R5bGU9Im1hcmdpbjogMC41ZW07Ij4KICAgIDxkaXYgc3R5bGU9IndpZHRoOiA0OSU7IGZsb2F0OiBsZWZ0OyI+eyRtb2QtPkxhbmcoJ2V4cGlyZXMnKX06PC9kaXY+CiAgICA8ZGl2IHN0eWxlPSJ3aWR0aDogNDklOyBmbG9hdDogbGVmdDsiPnskb25ldXNlci5leHBpcmVzfGNtc19kYXRlX2Zvcm1hdH08L2Rpdj4KICA8L2Rpdj4KCiAge2lmIGlzc2V0KCRvbmV1c2VyLnJlZmRhdGUpfQogIDxkaXYgY2xhc3M9InJvdyIgc3R5bGU9Im1hcmdpbjogMC41ZW07Ij4KICAgIDxkaXYgc3R5bGU9IndpZHRoOiA0OSU7IGZsb2F0OiBsZWZ0OyI+eyRtb2QtPkxhbmcoJ2xhc3RfYWN0aXZlJyl9OjwvZGl2PgogICAgPGRpdiBzdHlsZT0id2lkdGg6IDQ5JTsgZmxvYXQ6IGxlZnQ7Ij57JG9uZXVzZXIucmVmZGF0ZXxjbXNfZGF0ZV9mb3JtYXR9PC9kaXY+CiAgPC9kaXY+CiAgey9pZn0KCiAgPGRpdiBjbGFzcz0icm93IiBzdHlsZT0ibWFyZ2luOiAwLjVlbTsiPgogICAgPGRpdiBzdHlsZT0id2lkdGg6IDQ5JTsgZmxvYXQ6IGxlZnQ7Ij57JG1vZC0+TGFuZygnZ3JvdXBzJyl9OjwvZGl2PgogICAgPGRpdiBzdHlsZT0id2lkdGg6IDQ5JTsgZmxvYXQ6IGxlZnQ7Ij4gICAgIAogICAge2ZvcmVhY2ggZnJvbT0kb25ldXNlci5ncm91cHMgaXRlbT0nb25lZ3JvdXAnfQogICAgICB7JGdyb3Vwcy4kb25lZ3JvdXAuZ3JvdXBuYW1lfSZuYnNwOwogICAgey9mb3JlYWNofQogICAgPC9kaXY+CiAgPC9kaXY+CgogIHsqIHByb3BlcnRpZXMgKn0KICB7Zm9yZWFjaCBmcm9tPSRvbmV1c2VyLnByb3BlcnRpZXMgaXRlbT0nb25lcHJvcHZhbHVlJyBrZXk9J3Byb3BuYW1lJ30KICA8ZGl2IGNsYXNzPSJyb3ciIHN0eWxlPSJtYXJnaW46IDAuNWVtOyI+CiAgICA8ZGl2IHN0eWxlPSJ3aWR0aDogNDklOyBmbG9hdDogbGVmdDsiPnskcHJvcGVydGllcy4kcHJvcG5hbWUucHJvbXB0fTo8L2Rpdj4KICAgIDxkaXYgc3R5bGU9IndpZHRoOiA0OSU7IGZsb2F0OiBsZWZ0OyI+CiAgICB7aWYgJHByb3BlcnRpZXMuJHByb3BuYW1lLnR5cGUgPT0gNn0KICAgICAgIHsqIGltYWdlICp9CiAgICAgICA8aW1nIHNyYz0ieyRmaWxlX2xvY2F0aW9ufS97JG9uZXByb3B2YWx1ZX0iIHdpZHRoPSIxMDAiLz4KICAgIHtlbHNlfQogICAgICAgeyRvbmVwcm9wdmFsdWV9CiAgICB7L2lmfQogICAgPC9kaXY+CiAgPC9kaXY+CiAgey9mb3JlYWNofQoKICAKPC9kaXY+]]></data>
	</file>
	<file>
	  <filename>/templates/orig_directory_template.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogZGlyZWN0b3J5IHRlbXBsYXRlICp9CjxkaXYgY2xhc3M9InVzZXJkaXJlY3RvcnlfZGlyZWN0b3J5Ij4KICB7aWYgaXNzZXQoJGNoYXJhcnJheSl9CiAge2ZvcmVhY2ggZnJvbT0kY2hhcmFycmF5IGl0ZW09J29uZSd9CgogICAge2lmIGlzc2V0KCRvbmVbMV0pfQogICAgICA8c3BhbiBjbGFzcz0idXNlcmRpcmVjdG9yeV9kaXJlY3RvcnlsZXR0ZXIiPjxhIGhyZWY9Inskb25lWzFdfSIgdGl0bGU9Inskb25lWzBdfSI+eyRvbmVbMF19PC9hPjwvc3Bhbj4KICAgIHtlbHNlfQogICAgICA8c3BhbiBjbGFzcz0idXNlcmRpcmVjdG9yeV9kaXJlY3RvcnlsZXR0ZXIiPnskb25lWzBdfTwvc3Bhbj4KICAgIHsvaWZ9CgogIHsvZm9yZWFjaH0KICB7L2lmfQo8L2Rpdj4K]]></data>
	</file>
	<file>
	  <filename>/templates/orig_searchform_template.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogc2VhcmNoIGZvcm0gdGVtcGxhdGUgKn0KeyogdmFsaWQgZmllbGRzIGFyZToKICAgeyRhY3Rpb25pZH11ZF9zdWJtaXQgICAgLSAoc3RyaW5nKSBmb3IgYSBzdWJtaXQgYnV0dG9uCiAgIHskYWN0aW9uaWR9dWRfY2FuY2VsICAgIC0gKHN0cmluZykgZm9yIGEgY2FuY2VsIGJ1dHRvbgogICB7JGFjdGlvbmlkfXVkX3VzZXJuYW1lICAtIChzdHJpbmcpIHVzZXJuYW1lIGV4cHJlc3Npb24KICAgeyRhY3Rpb25pZH11ZF9wcm9wdmFsdWUgLSAoc3RyaW5nKSBwcm9wZXJ0eSB2YWx1ZQoqfQoKPGRpdiBpZD0idWRfc2VhcmNoZm9ybSI+CnskZm9ybXN0YXJ0fQoKPGRpdiBjbGFzcz0icm93Ij4KICA8cCBjbGFzcz0iY29sMzAiPnskbW9kLT5MYW5nKCd1c2VybmFtZScpfTwvcD4KICA8cCBjbGFzcz0iY29sNzAiPgogICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9dWRfdXNlcm5hbWUiIHNpemU9IjIwIiBtYXhsZW5ndGg9IjQwIi8+CiAgPC9wPgo8L2Rpdj4KCntpZiBpc3NldCgkc2VhcmNocHJvcHMpfQp7Zm9yZWFjaCBmcm9tPSRzZWFyY2hwcm9wcyBrZXk9J3Byb3BuYW1lJyBpdGVtPSdkYXRhJ30KeyRkYXRhfEBkZWJ1Z19kaXNwbGF5fQo8ZGl2IGNsYXNzPSJyb3ciPgogIDxwIGNsYXNzPSJjb2wzMCI+eyRkYXRhLmZpZWxkZGVmbi5wcm9tcHR9OjwvcD4KICA8cCBjbGFzcz0iY29sNzAiPgogICAge2lmICRkYXRhLmZpZWxkdHlwZSA9PSAndGV4dCd9CiAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGFjdGlvbmlkfXVkX3Byb3B2YWx1ZVt7JHByb3BuYW1lfV0iIHNpemU9IjIwIiBtYXhsZW5ndGg9IjIwIi8+CiAgICB7ZWxzZSBpZiAkZGF0YS5maWVsZHR5cGUgPT0gJ3NlbGVjdCd9CiAgICAgIDxzZWxlY3QgbmFtZT0ieyRhY3Rpb25pZH11ZF9wcm9wdmFsdWVbeyRwcm9wbmFtZX1dIj4KICAgICAge2h0bWxfb3B0aW9ucyBvcHRpb25zPSRkYXRhLm9wdGlvbnN9CiAgICAgIDwvc2VsZWN0PgogICAgey9pZn0KICA8L3A+CjwvZGl2Pgp7L2ZvcmVhY2h9CnsvaWZ9Cgo8ZGl2IGNsYXNzPSJyb3ciPgogIDxwIGNsYXNzPSJjb2wzMCI+eyRtb2QtPkxhbmcoJ3Jlc3VsdHNfYWxsX2FueScpfT88L3A+CiAgPHAgY2xhc3M9ImNvbDcwIj4KICAgIDxzZWxlY3QgbmFtZT0ieyRhY3Rpb25pZH11ZF9hbGxhbnkiPgogICAgICA8b3B0aW9uIHZhbHVlPSJhbGwiPnskbW9kLT5MYW5nKCdhbGwnKX08L29wdGlvbj4KICAgICAgPG9wdGlvbiB2YWx1ZT0iYW55Ij57JG1vZC0+TGFuZygnYW55Jyl9PC9vcHRpb24+CiAgICA8L3NlbGVjdD4KICA8L3A+CjwvZGl2PgoKPGRpdiBjbGFzcz0icm93Ij4KICA8cCBjbGFzcz0iY29sMzAiPiA8L3A+CiAgPHAgY2xhc3M9ImNvbDcwIj4KICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9InskYWN0aW9uaWR9dWRfc3VibWl0IiB2YWx1ZT0ieyRtb2QtPkxhbmcoJ3N1Ym1pdCcpfSIvPgogIDwvcD4KPC9kaXY+Cgp7JGZvcm1lbmR9CjwvZGl2Pg==]]></data>
	</file>
	<file>
	  <filename>/templates/orig_summary_template.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogQ0dVc2VyRGlyZWN0b3J5IHN1bW1hcnkgdGVtcGxhdGUgKn0KCjxkaXYgaWQ9InVzZXJkaXJlY3Rvcnlfc3VtbWFyeSI+CntpZiBpc3NldCgkbnVtcGFnZXMpICYmICRudW1wYWdlcyA+IDF9CntpZiBpc3NldCgkZmlyc3RwYWdlX3VybCl9CiAgPGEgaHJlZj0ieyRmaXJzdHBhZ2VfdXJsfSIgdGl0bGU9InskbW9kLT5MYW5nKCdsYmxfZmlyc3RfcGFnZScpfSI+Jmx0OyZsdDs8L2E+CnsvaWZ9CntpZiBpc3NldCgkcHJldnBhZ2VfdXJsKX0KICA8YSBocmVmPSJ7JHByZXZwYWdlX3VybH0iIHRpdGxlPSJ7JG1vZC0+TGFuZygnbGlibF9wcmV2X3BhZ2UnKX0iPiZsdDs8L2E+CnsvaWZ9CiZuYnNwO3skbW9kLT5MYW5nKCdwYWdlJyl9Jm5ic3A7eyRjdXJwYWdlfSZuYnNwO3skbW9kLT5MYW5nKCdvZicpfSZuYnNwO3skbnVtcGFnZXN9Jm5ic3A7CntpZiBpc3NldCgkbmV4dHBhZ2VfdXJsKX0KICA8YSBocmVmPSJ7JG5leHRwYWdlX3VybH0iIHRpdGxlPSJ7JG1vZC0+TGFuZygnbGJsX25leHRfcGFnZScpfSI+Jmd0OzwvYT4Key9pZn0Ke2lmIGlzc2V0KCRsYXN0cGFnZV91cmwpfQogIDxhIGhyZWY9InskbGFzdHBhZ2VfdXJsfSIgdGl0bGU9InskbW9kLT5MYW5nKCdsYmxfbGFzdF9wYWdlJyl9Ij4mZ3Q7Jmd0OzwvYT4Key9pZn0Key9pZn0KCntmb3JlYWNoIGZyb209JHVzZXJzIGl0ZW09J29uZXVzZXInfQo8ZGl2IGNsYXNzPSJ1c2VyZGlyZWN0b3J5X29uZXVzZXIiIHN0eWxlPSJtYXJnaW46IDJlbTsgcGFkZGluZy1ib3R0b207IDJlbTsiPgoKICA8ZGl2IGNsYXNzPSJyb3ciIHN0eWxlPSJtYXJnaW46IDAuNWVtOyI+CiAgICA8ZGl2IHN0eWxlPSJ3aWR0aDogNDklOyBmbG9hdDogbGVmdDsiPnskbW9kLT5MYW5nKCd1c2VybmFtZScpfTo8L2Rpdj4KICAgIDxkaXYgc3R5bGU9IndpZHRoOiA0OSU7IGZsb2F0OiBsZWZ0OyI+PGEgaHJlZj0ieyRvbmV1c2VyLmRldGFpbF91cmx9IiB0aXRsZT0ieyRvbmV1c2VyLnVzZXJuYW1lfSI+eyRvbmV1c2VyLnVzZXJuYW1lfTwvYT4gKHskb25ldXNlci5pZH0pPC9kaXY+CiAgPC9kaXY+CgogIDxkaXYgY2xhc3M9InJvdyIgc3R5bGU9Im1hcmdpbjogMC41ZW07Ij4KICAgIDxkaXYgc3R5bGU9IndpZHRoOiA0OSU7IGZsb2F0OiBsZWZ0OyI+eyRtb2QtPkxhbmcoJ2NyZWF0ZWQnKX06PC9kaXY+CiAgICA8ZGl2IHN0eWxlPSJ3aWR0aDogNDklOyBmbG9hdDogbGVmdDsiPnskb25ldXNlci5jcmVhdGVkYXRlfGNtc19kYXRlX2Zvcm1hdH08L2Rpdj4KICA8L2Rpdj4KCiAgPGRpdiBjbGFzcz0icm93IiBzdHlsZT0ibWFyZ2luOiAwLjVlbTsiPgogICAgPGRpdiBzdHlsZT0id2lkdGg6IDQ5JTsgZmxvYXQ6IGxlZnQ7Ij57JG1vZC0+TGFuZygnZXhwaXJlcycpfTo8L2Rpdj4KICAgIDxkaXYgc3R5bGU9IndpZHRoOiA0OSU7IGZsb2F0OiBsZWZ0OyI+eyRvbmV1c2VyLmV4cGlyZXN8Y21zX2RhdGVfZm9ybWF0fTwvZGl2PgogIDwvZGl2PgoKICB7aWYgaXNzZXQoJG9uZXVzZXIucmVmZGF0ZSl9CiAgPGRpdiBjbGFzcz0icm93IiBzdHlsZT0ibWFyZ2luOiAwLjVlbTsiPgogICAgPGRpdiBzdHlsZT0id2lkdGg6IDQ5JTsgZmxvYXQ6IGxlZnQ7Ij57JG1vZC0+TGFuZygnbGFzdF9hY3RpdmUnKX06PC9kaXY+CiAgICA8ZGl2IHN0eWxlPSJ3aWR0aDogNDklOyBmbG9hdDogbGVmdDsiPnskb25ldXNlci5yZWZkYXRlfGNtc19kYXRlX2Zvcm1hdH08L2Rpdj4KICA8L2Rpdj4KICB7L2lmfQoKICA8ZGl2IGNsYXNzPSJyb3ciIHN0eWxlPSJtYXJnaW46IDAuNWVtOyI+CiAgICA8ZGl2IHN0eWxlPSJ3aWR0aDogNDklOyBmbG9hdDogbGVmdDsiPnskbW9kLT5MYW5nKCdncm91cHMnKX06PC9kaXY+CiAgICA8ZGl2IHN0eWxlPSJ3aWR0aDogNDklOyBmbG9hdDogbGVmdDsiPiAgICAgCiAgICB7Zm9yZWFjaCBmcm9tPSRvbmV1c2VyLmdyb3VwcyBpdGVtPSdvbmVncm91cCd9CiAgICAgIHskZ3JvdXBzLiRvbmVncm91cC5ncm91cG5hbWV9Jm5ic3A7CiAgICB7L2ZvcmVhY2h9CiAgICA8L2Rpdj4KICA8L2Rpdj4KCiAgeyogcHJvcGVydGllcyAqfQogIHtmb3JlYWNoIGZyb209JG9uZXVzZXIucHJvcGVydGllcyBpdGVtPSdvbmVwcm9wdmFsdWUnIGtleT0ncHJvcG5hbWUnfQogIDxkaXYgY2xhc3M9InJvdyIgc3R5bGU9Im1hcmdpbjogMC41ZW07Ij4KICAgIDxkaXYgc3R5bGU9IndpZHRoOiA0OSU7IGZsb2F0OiBsZWZ0OyI+eyRwcm9wZXJ0aWVzLiRwcm9wbmFtZS5wcm9tcHR9OjwvZGl2PgogICAgPGRpdiBzdHlsZT0id2lkdGg6IDQ5JTsgZmxvYXQ6IGxlZnQ7Ij4KICAgICAge2lmICRwcm9wZXJ0aWVzLiRwcm9wbmFtZS50eXBlID09IDR9CiAgICAgICAgeyRmZXVfc21hcnR5LT5nZXRfZHJvcGRvd25fdGV4dCgkcHJvcG5hbWUsJG9uZXByb3B2YWx1ZSl9CiAgICAgICAgeyogZHJvcGRvd24gKn0KICAgICAge2Vsc2VpZiAkcHJvcGVydGllcy4kcHJvcG5hbWUudHlwZSA9PSA1fQogICAgICAgIHsqIG11bHRpc2VsZWN0ICp9Cgl7YXNzaWduIHZhcj0ndG1wJyB2YWx1ZT0nLCd8ZXhwbG9kZTokb25lcHJvcHZhbHVlfQogICAgICAgIHskZmV1X3NtYXJ0eS0+Z2V0X211bHRpc2VsZWN0X3RleHQoJHByb3BuYW1lLCRvbmVwcm9wdmFsdWUsJ3ZhbHVlcycpfQogICAgICAgIHtjZ3VkX2dldHByb3BlcnR5c3VtbWFyeV91cmwgcHJvcD0iJHByb3BuYW1lIiBwcm9wdmFsPSIkb25lcHJvcHZhbHVlIiBhc3NpZ249J3VybHMnfQogICAgICAgIDx1bD4KICAgICAgICB7Zm9yZWFjaCBmcm9tPSR2YWx1ZXMgbmFtZT0nbXVsdGknIGl0ZW09J29uZSd9CiAgICAgICAgICA8bGk+CiAgICAgICAgICAgIHthc3NpZ24gdmFyPSdpJyB2YWx1ZT0kc21hcnR5LmZvcmVhY2gubXVsdGkuaW5kZXh9CiAgICAgICAgICAgIDxhIGhyZWY9InskdXJsc1skaV19IiB0aXRsZT0ieyRvbmV9Ij57JG9uZX08L2E+CiAgICAgICAgICA8L2xpPgogICAgICAgIHsvZm9yZWFjaH0KICAgICAgICA8L3VsPgogICAgICB7ZWxzZX0KICAgICAgICB7JG9uZXByb3B2YWx1ZX0KICAgICAgey9pZn0KICAgIDwvZGl2PgogIDwvZGl2PgogIHsvZm9yZWFjaH0KCjwvZGl2PnsqIHVzZXJkaXJlY3Rvcnlfb25ldXNlciAqfQo8YnIvPjxici8+CnsvZm9yZWFjaH0KPC9kaXY+eyogdXNlcmRpcmVjdG9yeV9zdW1tYXJ5ICp9]]></data>
	</file>
	<file>
	  <filename>/templates/template_tab.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PHAgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgeyRtc2d9CjwvcD4KCnskdGVtcGxhdGVsaXN0fQ==]]></data>
	</file>
</module>
