<?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>ScriptDeploy</name>
	<version>0.8</version>
  <mincmsversion>1.8</mincmsversion>
	<help><![CDATA[PGxpbmsgbWVkaWE9InNjcmVlbiIgaHJlZj0iLi4vbW9kdWxlcy9TY3JpcHREZXBsb3kvQ1NTL01hc3RlckNTUy5jc3MiIHR5cGU9InRleHQvY3NzIiByZWw9InN0eWxlc2hlZXQiLz48ZGl2IGNsYXNzPSJTaW1XcmFwIj48YiBjbGFzcz0icmJvdHRvbSI+PGIgY2xhc3M9InIxIj48L2I+IDxiIGNsYXNzPSJyMiI+PC9iPjxiIGNsYXNzPSJyMyI+PC9iPiA8YiBjbGFzcz0icjQiPjwvYj48L2I+DQoNCjxkaXYgY2xhc3M9IlNpbWNvbiI+IDxoMyBjbGFzcz0iQmFja0xpbmsiPjxhIG9uY2xpY2s9ImphdmFzY3JpcHQ6d2luZG93Lmhpc3RvcnkuZ28oLTEpIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub2ZvbGxvdyI+Jmx0OyZsdDsgQmFjazwvYT48L2gzPg0KPGgxPldoYXQgRG9lcyBUaGlzIERvPy0tLSB0aGlzIG5lZWRzIHVwZGF0aW5nPC9oMT4NCjxoMj5Xcml0ZSBtYW5hZ2UgYW5kIGRlcGxveSBKUyBhbmQgQ1NTPC9oMj4NCjxhIGlkPSJTY3JpcHREZXBsb3kiPjwvYT4NCjxwPlNjcmlwdERlcGxveSBtb2R1bGUgdGhhdCBjYW4gY29tYmluZSBtdWx0aXBsZSBDU1Mgb3IgSmF2YXNjcmlwdCBmaWxlcywgY29tcHJlc3MgdGhlaXIgY29udGVudHMgKGkuZS4gcmVtb3ZhbCBvZiB1bm5lY2Vzc2FyeSB3aGl0ZXNwYWNlL2NvbW1lbnRzKSwgYW5kIHNlcnZlIHRoZSByZXN1bHRzIHdpdGggSFRUUCBlbmNvZGluZyAoZ3ppcC9kZWZsYXRlKSBhbmQgaGVhZGVycyB0aGF0IGFsbG93IG9wdGltYWwgY2xpZW50LXNpZGUgY2FjaGluZy4gVGhpcyBoZWxwcyB5b3UgZm9sbG93IHNldmVyYWwgb2YgWWFob28hJ3MgPGEgaHJlZj0iaHR0cDovL2RldmVsb3Blci55YWhvby5jb20vcGVyZm9ybWFuY2UvaW5kZXguaHRtbCNydWxlcyIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPlJ1bGVzIGZvciBIaWdoIFBlcmZvcm1hbmNlIFdlYiBTaXRlczwvYT4uIChTZWUgJnF1b3Q7UHJvYmxlbSBEb21haW4mcXVvdDsgYmVsb3cgZm9yIG1vcmUgaW5mby4pIDwvcD4NCjxoMz5UaGUgU2hvcnQgb2YgaXQ8L2gzPg0KPHA+V2lydGUgeW91ciBzY3JpcHRzLCBzZXQgdGhlIG9yZGVyIGFuZCBTY3JpcHREZXBsb3kgd2lsbCBkbyB0aGUgcmVzdCE8L3A+DQo8dGFibGU+DQogIDx0Ym9keT4NCiAgICA8dHI+DQogICAgICA8dGQgc3R5bGU9IkJPUkRFUi1SSUdIVDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctUklHSFQ6IDVweDsgQk9SREVSLVRPUDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctTEVGVDogNXB4OyBQQURESU5HLUJPVFRPTTogNXB4OyBCT1JERVItTEVGVDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctVE9QOiA1cHg7IEJPUkRFUi1CT1RUT006ICNhYWEgMXB4IHNvbGlkIj48c3Ryb25nPkJlZm9yZTwvc3Ryb25nPjwvdGQ+DQogICAgICA8dGQgc3R5bGU9IkJPUkRFUi1SSUdIVDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctUklHSFQ6IDVweDsgQk9SREVSLVRPUDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctTEVGVDogNXB4OyBQQURESU5HLUJPVFRPTTogNXB4OyBCT1JERVItTEVGVDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctVE9QOiA1cHg7IEJPUkRFUi1CT1RUT006ICNhYWEgMXB4IHNvbGlkIj48aW1nIHNyYz0iaHR0cDovL21yY2xheS5vcmcvd3AtY29udGVudC91cGxvYWRzLzIwMDgvMDkvZmlkZGxlcl9iZWZvcmUucG5nIiBhbHQ9ImFmdGVyIiAvPjwvdGQ+DQogICAgPC90cj4NCiAgICA8dHI+DQogICAgICA8dGQgc3R5bGU9IkJPUkRFUi1SSUdIVDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctUklHSFQ6IDVweDsgQk9SREVSLVRPUDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctTEVGVDogNXB4OyBQQURESU5HLUJPVFRPTTogNXB4OyBCT1JERVItTEVGVDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctVE9QOiA1cHg7IEJPUkRFUi1CT1RUT006ICNhYWEgMXB4IHNvbGlkIj48c3Ryb25nPkFmdGVyPC9zdHJvbmc+PC90ZD4NCiAgICAgIDx0ZCBzdHlsZT0iQk9SREVSLVJJR0hUOiAjYWFhIDFweCBzb2xpZDsgUEFERElORy1SSUdIVDogNXB4OyBCT1JERVItVE9QOiAjYWFhIDFweCBzb2xpZDsgUEFERElORy1MRUZUOiA1cHg7IFBBRERJTkctQk9UVE9NOiA1cHg7IEJPUkRFUi1MRUZUOiAjYWFhIDFweCBzb2xpZDsgUEFERElORy1UT1A6IDVweDsgQk9SREVSLUJPVFRPTTogI2FhYSAxcHggc29saWQiPjxpbWcgc3JjPSJodHRwOi8vbXJjbGF5Lm9yZy93cC1jb250ZW50L3VwbG9hZHMvMjAwOC8wOS9maWRkbGVyX2FmdGVyLnBuZyIgYWx0PSJiZWZvcmUiIC8+PC90ZD4NCiAgICA8L3RyPg0KICA8L3Rib2R5Pg0KPC90YWJsZT4NCg0KDQoNCjxoMj48YSBpZD0iRmVhdHVyZXMiPjwvYT5GZWF0dXJlczwvaDI+DQo8dWw+DQogIDxsaT5Db21iaW5lcyBhbmQgbWluaWZpZXMgbXVsdGlwbGUgQ1NTIG9yIEphdmFTY3JpcHQgZmlsZXMgaW50byBhIHNpbmdsZSAgIGRvd25sb2FkIDwvbGk+DQogIDxsaT5Vc2VzIGFuIDxhIGhyZWY9Imh0dHA6Ly9jb2RlLmdvb2dsZS5jb20vcC9taW5pZnkvc291cmNlL2Jyb3dzZS90cnVuay9taW4vbGliL0pTTWluLnBocCIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPmVuaGFuY2VkIHBvcnQ8L2E+IG9mIERvdWdsYXMgQ3JvY2tmb3JkJ3MgPGEgaHJlZj0iaHR0cDovL3d3dy5jcm9ja2ZvcmQuY29tL2phdmFzY3JpcHQvanNtaW4uaHRtbCIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPkpTTWluICAgbGlicmFyeTwvYT4gYW5kIGN1c3RvbSBjbGFzc2VzIHRvIG1pbmlmeSA8YSBocmVmPSJodHRwOi8vY29kZS5nb29nbGUuY29tL3AvbWluaWZ5L3NvdXJjZS9icm93c2UvdHJ1bmsvbWluL2xpYi9NaW5pZnkvQ1NTLnBocCIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPkNTUzwvYT4gYW5kIDxhIGhyZWY9Imh0dHA6Ly9jb2RlLmdvb2dsZS5jb20vcC9taW5pZnkvc291cmNlL2Jyb3dzZS90cnVuay9taW4vbGliL01pbmlmeS9IVE1MLnBocCIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPkhUTUw8L2E+PC9saT4NCiAgPGxpPkNhY2hlcyBzZXJ2ZXItc2lkZSB0byBhdm9pZCBkb2luZyB1bm5lY2Vzc2FyeSB3b3JrIDwvbGk+DQogIDxsaT5SZXNwb25kcyB3aXRoIGFuIEhUVFAgMzA0IChOb3QgTW9kaWZpZWQpIHJlc3BvbnNlIHdoZW4gdGhlIGJyb3dzZXIgaGFzIGFuICAgdXAtdG8tZGF0ZSBjYWNoZSBjb3B5ICoqIDwvbGk+DQogIDxsaT5Nb3N0IG1vZHVsZXMgYXJlIGxhenktbG9hZGVkIGFzIG5lZWRlZCAoMzA0IHJlc3BvbnNlcyB1c2UgbWluaW1hbCBjb2RlKSAgKiogPC9saT4NCiAgPGxpPkF1dG9tYXRpY2FsbHkgcmV3cml0ZXMgcmVsYXRpdmUgVVJJcyBpbiBjb21iaW5lZCBDU1MgZmlsZXMgdG8gcG9pbnQgdG8gdmFsaWQgbG9jYXRpb25zIDwvbGk+DQogIDxsaT5XaXRoIGNhY2hpbmcgZW5hYmxlZCwgU2NyaXB0RGVwbG95IGlzIGNhcGFibGUgb2YgaGFuZGxpbmcgaHVuZHJlZHMgb2YgcmVxdWVzdHMgcGVyIHNlY29uZCBvbiBhIG1vZGVyYXRlbHkgcG93ZXJmdWwgc2VydmVyLiA8L2xpPg0KICA8bGk+Q29udGVudC1FbmNvZGluZzogZ3ppcCwgYmFzZWQgb24gcmVxdWVzdCBoZWFkZXJzLiBDYWNoaW5nIGFsbG93cyBpdCBzbyBzZXJ2ZSBnemlwcGVkIGZpbGVzIGZhc3RlciB0aGFuIEFwYWNoZSdzIG1vZF9kZWZsYXRlIG9wdGlvbiEgPC9saT4NCjwvdWw+DQo8aDM+PGVtPjxzdHJvbmc+KiogTm90ZTo8L3N0cm9uZz4gSXQgaXMgYmVzdCB0byB1c2UgYSAuaHRhY2Nlc3Mgc2NyaXB0IHRvIHNldCB0aGUgYWdlIHRpbWVzLiBTY3JpcHREZXBsb3kgaXMgZGVzaWduZWQgZm9yIGVmZmljaWVuY3ksIGJ1dCBmb3IgdmVyeSBoaWdoIHRyYWZmaWMgc2l0ZXMsIFNjcmlwdERlcGxveSBtYXkgc2VydmUgZmlsZXMgc2xvd2VyIHRoYW4geW91ciBIVFRQZCBkdWUgdG8gdGhlIENHSSBvdmVyaGVhZCBvZiBQSFAuICBUbyBvdmVyIGNvbWUgdGhpcyBKdXN0IGNoZWNrICJ1c2UgLmh0YWNjZXNzIGluIG9wdGlvbnMiPC9lbT48L2gzPg0KPGgyPjxhIG5hbWU9IlJlcXVpcmVtZW50cyI+PC9hPlJlcXVpcmVtZW50czwvaDI+DQo8dWw+DQogIDxsaT5UaGUgY29tbW9ubHkgaW5zdGFsbGVkIDxhIGhyZWY9Imh0dHA6Ly91czMucGhwLm5ldC9tYW51YWwvZW4vemxpYi5pbnN0YWxsYXRpb24ucGhwIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub2ZvbGxvdyI+emxpYiAgIGV4dGVuc2lvbjwvYT4gaXMgcmVjb21tZW5kZWQgZm9yIEhUVFAgZW5jb2RpbmcgZnVuY3Rpb25hbGl0eS4gPC9saT4NCjwvdWw+DQo8YnIvPjxici8+DQo8aDE+SG93IERvIEkgVXNlIEl0PC9oMT4NCg0KDQo8aDM+R2V0IGEgc2luZ2xlIHNjcmlwdDwvaDM+DQp1c2UgPHNwYW4gY2xhc3M9ImNvZGVISUdITElHSFQiPntjbXNfbW9kdWxlIG1vZHVsZT1TY3JpcHREZXBsb3kgc2NyaXB0SUQ9IjEifSA8L3NwYW4+IDxici8+PGJyLz4NCjxoMz5HZXQgYSBzY3JpcHQgZ3JvdXA8L2gzPg0KdXNlIDxzcGFuIGNsYXNzPSJjb2RlSElHSExJR0hUIj57Y21zX21vZHVsZSBtb2R1bGU9U2NyaXB0RGVwbG95IGdyb3VwSUQ9IjEifSA8L3NwYW4+IDxici8+PGJyLz4NCjxoMj5BbGwgb3V0cHV0IGlzIGluIHRoZSBYSFRNTCBmb3JtYXQsIHlvdSBzaG91bGQgd29yayBpbiB0aGF0LjwvaDI+DQoNCjxici8+PGJyLz4NCjxoND5QYXJhbXM8L2g0Pg0KPHVsPg0KPGxpPjxzdHJvbmc+c2NyaXB0SUQ9IiIgPC9zdHJvbmc+PGVtPihSZXF1aXJlZC9vcHRpb25hbCk8L2VtPiA8YnIvPnwgc2V0IHRoZSBJRCBSZXF1aXJlZCBvbmx5IGlmIGdyb3VwSUQgbm90IGNhbGxlZDxici8+PC9saT4NCjxsaT48c3Ryb25nPmdyb3VwSUQ9IiIgPC9zdHJvbmc+PGVtPihSZXF1aXJlZC9vcHRpb25hbCk8L2VtPiA8YnIvPnwgc2V0IHRoZSBJRCBSZXF1aXJlZCBvbmx5IGlmIHNjcmlwdElEIG5vdCBjYWxsZWQ8YnIvPjwvbGk+DQo8bGk+PHN0cm9uZz5TdHlwZT0iIiA8L3N0cm9uZz48ZW0+KFJlcXVpcmVkLykgSlMvQ1NTPC9lbT4gPGJyLz58IHNldCB0aGUgSUQgUmVxdWlyZWQgb25seSBpZiBzY3JpcHRJRCBub3QgY2FsbGVkPGJyLz48L2xpPg0KDQo8bGk+PHN0cm9uZz5zbWFydHk9IiIgPC9zdHJvbmc+PGVtPihvcHRpb25hbCkgdHJ1ZS9mYWxzZSA8c3Ryb25nPkRlZmF1bHQ6bnVsbDwvc3Ryb25nPjwvZW0+IDxici8+fCBUaGlzIGxldHMgeW91IG92ZXIgcmlkZSB0aGUgZ2xvYmxlczxici8+PC9saT4NCjxsaT48c3Ryb25nPm1pbmlmeT0iIiA8L3N0cm9uZz48ZW0+KG9wdGlvbmFsKSB0cnVlL2ZhbHNlIDxzdHJvbmc+RGVmYXVsdDp0cnVlPC9zdHJvbmc+PC9lbT4gPGJyLz58ICBUaGlzIGxldHMgeW91IG92ZXIgcmlkZSB0aGUgZ2xvYmxlczxici8+PC9saT4NCg0KDQoNCg0KDQoNCjxsaT48c3Ryb25nPm1lZGlhX3R5cGU9IiIgPC9zdHJvbmc+PGVtPihvcHRpb25hbCk8L2VtPiA8YnIvPnwgc2V0IE1lZGlhIHR5cGUgZm9yIENTUyBmaWxlcyBoZXJlLi4uIG92ZXJyaWRlcyBkYiBzZXRpbmdzLjxici8+PC9saT4NCjxsaT48c3Ryb25nPmltcG9ydD0iIiA8L3N0cm9uZz48ZW0+KG9wdGlvbmFsKSB0cnVlL2ZhbHNlPC9lbT4gPGJyLz58IHNldCB0aGUgaW5jbHVzaW9uIHN0eWxlIGZvciBDU1MgZmlsZXMgaGVyZS4uLiBvdmVycmlkZXMgZGIgc2V0aW5ncy4gRXg6IHRydWUgIGdpdmVzIDxzdHlsZSB0eXBlPVwidGV4dC9jc3NcIj5AaW1wb3J0IHVybCgidXJsL2Nzc2ZpbGUuY3NzIikgc2NyZWVuOzwvc3R5bGU+PGJyLz48L2xpPg0KDQo8bGk+PHN0cm9uZz5jYWNoZV9idXN0ZXI8L3N0cm9uZz4gPGVtPihvcHRpb25hbCkgPHN0cm9uZz5EZWZhdWx0OmZhbHNlPC9zdHJvbmc+PC9lbT48YnIvPnwgVGhpcyBpcyB0byBpbnN0YW50bHkgdW5jYWNoZSBhbiBzY3JpcHQgb24gdGhlIGNsaWVudCBzaWRlIGFmdGVyIGEgbmV3IHVwbG9hZGVkIHNjcmlwdCBpcyBjcmVhdGVkLi4uIGllOiAxMi5qcz8xMjU1MjI1MDA3ICA8Zm9udCBjb2xvcj0icmVkIj48c3Ryb25nPiggdHJ1ZS9mYWxzZSApPC9zdHJvbmc+PC9mb250PjwvbGk+DQo8bGk+PHN0cm9uZz5hc3NpZ249IiIgPC9zdHJvbmc+PGVtPihvcHRpb25hbCk8L2VtPiA8YnIvPnwgQXNzaWduIHRoZSBvdXRwdXQgKHJldHVybiB0aGUgc21hcnR5IGFzc2lnbm1lbnQpICBVc2UgaW4gY29uanVuY3Rpb24gd2l0aCBvdXQgd2l0aG91dCBVUkw8L2xpPg0KPGxpPjxzdHJvbmc+ZnNpemU9IiIgPC9zdHJvbmc+PGVtPihvcHRpb25hbCk8L2VtPiA8YnIvPnwgZ2V0IHRoZSBzaXplPC9saT4NCjxsaT48c3Ryb25nPnJvb3Q9IiIgPC9zdHJvbmc+PGVtPihvcHRpb25hbCk8L2VtPiA8YnIvPnwgU2NyaXB0RGVwbG95IGNyZWF0ZXMgYSB0ZW1wIGRpcmVjdG9yIGluIHRoZSB1cGxvYWQgZm9sZGVyLiAgSWYgeW91IG1vdmUgdGhlIHBhdGggdG8gdGhlIHVwbGFvZCB0byBhIHN1YmRvbWFpbiB5b3UgbWF5IGd1aWRlIHRoZSBvdXRwdXQgd2l0aCB0aGlzLjwvbGk+DQogICAgICAgIDx1bCBzdHlsZT0ibGlzdC1zdHlsZS1wb3NpdGlvbjppbnNpZGU7Ij48bGk+PHN0cm9uZz5FeGFwbWxlOjwvc3Ryb25nPiB5b3UgY2hhbmdlZCA8Q09ERT4kY29uZmlnWyd1cGxvYWRzX3BhdGgnXSA9ICcvdmFyL3d3dy92aG9zdHMvZG9tYWluLm9yZy9odHRwZG9jcy91cGxvYWRzJzs8L0NPREU+IDwvbGk+DQogICAgICAgICAgICA8bGk+PHN0cm9uZz50bzwvc3Ryb25nPiA8Q09ERT4kY29uZmlnWyd1cGxvYWRzX3BhdGgnXSA9IFwvdmFyL3d3dy92aG9zdHMvZG9tYWluLm9yZy9zdWJkb21haW5zL21lZGlhL2h0dHBkb2NzL3VwbG9hZHMnOzwvQ09ERT48L2xpPg0KICAgICAgICAgICAgPGxpPm5vdyB0aGUgdXBsb2FkcyB1cmwgd291bGQgbm90IHdvcmsgYXMgaXQgd291bGQgYmUgPHU+aHR0cDovL3d3dy5kb21haW4ub3JnL3VwbG9hZHM8L3U+PC9saT4NCiAgICAgICAgICAgIDxsaT48c3Ryb25nPlNvPC9zdHJvbmc+IGl0IGNhbiBiZSBjaGFuZ2VkIGhlcmUgdG8gPHU+aHR0cDovL21lZGlhLmRvbWFpbi5vcmcvdXBsb2FkczwvdT4gIDxmb250IGNvbG9yPSJyZWQiPjxzdHJvbmc+KE5PVEU6IHdhdGNoIHlvdXIgLyApPC9zdHJvbmc+PC9mb250PjwvbGk+DQogICAgICAgIDwvdWw+DQo8bGk+PHN0cm9uZz51cmw9IiIgPC9zdHJvbmc+PGVtPihvcHRpb25hbCk8L2VtPiA8YnIvPnxvdXRwdXRzIHRoZSB1cmwuPC9saT4NCg0KDQoNCg0KCQkNCg0KDQoNCg0KDQoNCg0KDQo8IS0tPGxpPjxzdHJvbmc+U2FuZEJveD10cnVlIDwvc3Ryb25nPjxlbT4ob3B0aW9uYWwpPC9lbT4gPGJyLz58IGZhbHNlPGJyLz48L2xpPg0KDQo8bGk+PHN0cm9uZz5SVU5hY3Rpb249IiIgPC9zdHJvbmc+PGVtPihvcHRpb25hbCk8L2VtPiA8YnIvPnwgVURUPGJyLz58IFVSTCA8ZW0+KC4uL3BsdWdpbnMvZnVuY3Rpb24uZmlsZW5hbWUucGhwKTwvZW0+PGJyLz58ICpNb3JlIGNvbWluZyBTb29uKjxici8+PC9saT4NCjxsaT48c3Ryb25nPkxhbmc9IiIgPC9zdHJvbmc+PGVtPihvcHRpb25hbCk8L2VtPiA8YnIvPnwgVXNlIENvdW50cnkgQ29kZXMgVG8gZHluYW1pY2x5IHNldCB0aGUgbGFuZ3VhZ2Ugb2YgdGhlIFBheVBhbCBwYWdlPGJyLz48L2xpPi0tPg0KDQo8L3VsPg0KPGJyLz4NCg0KPGJyLz48YnIvPg0KPGgyPjxhIGlkPSJQcm9ibGVtX0RvbWFpbiI+PC9hPlByb2JsZW0gRG9tYWluPC9oMj4NCjxwPlBhZ2VzIHRoYXQgcmVmZXIgdG8gbXVsdGlwbGUgQ1NTIG9yIEphdmFTY3JpcHQgZmlsZXMgb2Z0ZW4gc3VmZmVyIGZyb20gc2xvd2VyICAgcGFnZSBsb2FkcywgZHVlIHRvIHRoZSBicm93c2VyIHJlcXVlc3RpbmcgZWFjaCBmaWxlIGluZGl2aWR1YWxseS4gTWFueSBicm93c2VycyAgIGFsc28gYXJlIGxpbWl0ZWQgdG8gYSBmZXcgc2ltdWx0YW5lb3VzIHJlcXVlc3RzIHBlciBkb21haW4uIFRoZSB3YWl0IGZvciBhICAgc2VyaWVzIG9mIHJlcXVlc3RzIGFuZCB0aGUgdHJhbnNmZXIgb2YgdW5vcHRpbWl6ZWQgZmlsZXMgY2FuIGRyYW1hdGljYWxseSByZWR1Y2UgICB0aGUgY2xpZW50LXNpZGUgcGVyZm9ybWFuY2Ugb2YgeW91ciBzaXRlLiA8L3A+DQo8cD5IZXJlIGFyZSBhIGhhbmRmdWwgb2YgWWFob28hJ3MgYmVzdCBwcmFjdGljZXMgdGhhdCBhcmUgYWRkcmVzc2VkIGJ5IHRoZSB1c2Ugb2YgU2NyaXB0RGVwbG95LiA8L3A+DQo8dWw+DQogIDxsaT48YSBocmVmPSJodHRwOi8vZGV2ZWxvcGVyLnlhaG9vLmNvbS9wZXJmb3JtYW5jZS9ydWxlcy5odG1sI251bV9odHRwIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub2ZvbGxvdyI+TWFrZSBGZXdlciBIVFRQIFJlcXVlc3RzPC9hPjwvbGk+DQogIDxsaT48YSBocmVmPSJodHRwOi8vZGV2ZWxvcGVyLnlhaG9vLmNvbS9wZXJmb3JtYW5jZS9ydWxlcy5odG1sI2V4cGlyZXMiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij5BZGQgYW4gRXhwaXJlcyBvciBhIENhY2hlLUNvbnRyb2wgSGVhZGVyPC9hPjwvbGk+DQogIDxsaT48YSBocmVmPSJodHRwOi8vZGV2ZWxvcGVyLnlhaG9vLmNvbS9wZXJmb3JtYW5jZS9ydWxlcy5odG1sI2d6aXAiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij5HemlwIENvbXBvbmVudHM8L2E+PC9saT4NCiAgPGxpPjxhIGhyZWY9Imh0dHA6Ly9kZXZlbG9wZXIueWFob28uY29tL3BlcmZvcm1hbmNlL3J1bGVzLmh0bWwjbWluaWZ5IiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub2ZvbGxvdyI+TWluaWZ5IEphdmFTY3JpcHQgYW5kIENTUzwvYT48L2xpPg0KICA8bGk+PGEgaHJlZj0iaHR0cDovL2RldmVsb3Blci55YWhvby5jb20vcGVyZm9ybWFuY2UvcnVsZXMuaHRtbCNldGFncyIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPkNvbmZpZ3VyZSBFVGFnczwvYT48L2xpPg0KICA8bGk+PGEgaHJlZj0iaHR0cDovL2RldmVsb3Blci55YWhvby5jb20vcGVyZm9ybWFuY2UvcnVsZXMuaHRtbCN1bmRlcjI1IiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub2ZvbGxvdyI+S2VlcCBDb21wb25lbnRzIHVuZGVyIDI1SzwvYT48L2xpPg0KPC91bD4NCjxoMz48YSBuYW1lPSJBY2tub3dsZWRnbWVudHMiPjwvYT5BY2tub3dsZWRnbWVudHM8L2gzPg0KPHA+TWluaWZ5IHdhcyBpbnNwaXJlZCBieSA8YSBocmVmPSJodHRwOi8vY29kZS5nb29nbGUuY29tL3AvanNjc3Njb21wLyIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPmpzY3NzY29tcDwvYT4gYnkgTWF4aW0gTWFydHlueXVrIGFuZCBieSB0aGUgYXJ0aWNsZSAnPGEgaHJlZj0iaHR0cDovL3d3dy5odW5sb2NrLmNvbS9ibG9ncy9TdXBlcmNoYXJnZWRfSmF2YXNjcmlwdCIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPlN1cGVyY2hhcmdlZCBKYXZhU2NyaXB0PC9hPicgYnkgUGF0cmljayBIdW5sb2NrLiA8L3A+DQo8cD5UaGUgPGEgaHJlZj0iaHR0cDovL3d3dy5jcm9ja2ZvcmQuY29tL2phdmFzY3JpcHQvanNtaW4uaHRtbCIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPkpTTWluIGxpYnJhcnk8L2E+IHVzZWQgZm9yIEphdmFTY3JpcHQgbWluaWZpY2F0aW9uIHdhcyBvcmlnaW5hbGx5ICAgd3JpdHRlbiBieSBEb3VnbGFzIENyb2NrZm9yZCBhbmQgd2FzIDxhIGhyZWY9Imh0dHA6Ly9jb2RlLmdvb2dsZS5jb20vcC9qc21pbi1waHAiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij5wb3J0ZWQgdG8gUEhQPC9hPiBieSBSeWFuICAgR3JvdmUgc3BlY2lmaWNhbGx5IGZvciB1c2UgaW4gTWluaWZ5LiA8L3A+DQoNCg0KPGgzPlN1cHBvcnQ8L2gzPg0KPGg0PlNjcmVlbmNhc3RzIGZvciBleHRyYSBoZWxwIHdpbGwgZmFsbG93LS0tIG9uIHRoZSBUT0RPPC9oND4NCjxwPlRoaXMgbW9kdWxlIGRvZXMgbm90IGluY2x1ZGUgY29tbWVyY2lhbCBzdXBwb3J0LiBIb3dldmVyLCB0aGVyZSBhcmUgYSBudW1iZXIgb2YgcmVzb3VyY2VzIGF2YWlsYWJsZSB0byBoZWxwIHlvdSB3aXRoIGl0OjwvcD4NCjx1bD4NCjxsaT5Gb3IgdGhlIGxhdGVzdCB2ZXJzaW9uIG9mIHRoaXMgbW9kdWxlIG9yIHRvIGZpbGUgYSBidWcgcmVwb3J0IHZpc2l0IDxhIGhyZWY9Imh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvc2NyaXB0ZGVwbG95Ij50aGUgQ01TIEZvcmdlPC9hPi48L2xpPg0KPGxpPkFkZGl0aW9uYWwgZGlzY3Vzc2lvbiBvZiB0aGlzIG1vZHVsZSBtYXkgYWxzbyBiZSBmb3VuZCBpbiB0aGUgPGEgaHJlZj0iaHR0cDovL2ZvcnVtLmNtc21hZGVzaW1wbGUub3JnIj5DTVMgTWFkZSBTaW1wbGUgRm9ydW1zPC9hPi48L2xpPg0KPC91bD4NCg0KPGgzPkNvcHlyaWdodCBhbmQgTGljZW5zZTwvaDM+DQo8cD5Db3B5cmlnaHQgJmNvcHk7IDIwMDksIGplcmVteUJhc3MgJmx0OzxhIGhyZWY9Imh0dHA6Ly9jb3JiZW5zcHJvZHVjdHMuY29tIj5jb3JiZW5zcHJvZHVjdHMuY29tPC9hPiZndDsgQWxsIFJpZ2h0cyBBcmUgUmVzZXJ2ZWQuPC9wPg0KPHN0cm9uZz5TdXBwb3J0IG1vcmUgbW9kcyBsaWtlIHRoaXM6PC9zdHJvbmc+PGZvcm0gYWN0aW9uPSJodHRwczovL3d3dy5wYXlwYWwuY29tL2NnaS1iaW4vd2Vic2NyIiBtZXRob2Q9InBvc3QiPg0KPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iY21kIiB2YWx1ZT0iX3MteGNsaWNrIj4NCjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9Imhvc3RlZF9idXR0b25faWQiIHZhbHVlPSI4ODE3Njc1Ij4NCjxpbnB1dCB0eXBlPSJpbWFnZSIgc3JjPSJodHRwczovL3d3dy5wYXlwYWwuY29tL2VuX1VTL2kvYnRuL2J0bl9kb25hdGVfTEcuZ2lmIiBib3JkZXI9IjAiIG5hbWU9InN1Ym1pdCIgYWx0PSJQYXlQYWwgLSBUaGUgc2FmZXIsIGVhc2llciB3YXkgdG8gcGF5IG9ubGluZSEiPg0KPGltZyBhbHQ9IiIgYm9yZGVyPSIwIiBzcmM9Imh0dHBzOi8vd3d3LnBheXBhbC5jb20vZW5fVVMvaS9zY3IvcGl4ZWwuZ2lmIiB3aWR0aD0iMSIgaGVpZ2h0PSIxIj4NCjwvZm9ybT48YnIvPg0KPHA+VGhpcyBtb2R1bGUgaGFzIGJlZW4gcmVsZWFzZWQgdW5kZXIgdGhlIDxhIGhyZWY9Imh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTCI+R05VIFB1YmxpYyBMaWNlbnNlPC9hPi4gWW91IG11c3QgYWdyZWUgdG8gdGhpcyBsaWNlbnNlIGJlZm9yZSB1c2luZyB0aGUgbW9kdWxlLjwvcD4NCjwvZGl2ID48YiBjbGFzcz0icmJvdHRvbSI+PGIgY2xhc3M9InI0Ij48L2I+PGIgY2xhc3M9InIzIj48L2I+IDxiIGNsYXNzPSJyMiI+PC9iPiA8YiBjbGFzcz0icjEiPjwvYj48L2I+DQoNCjwvZGl2Pg0KPGgzPlBhcmFtZXRlcnM8L2gzPjx1bD48bGk+PGVtPihvcHRpb25hbCk8L2VtPiBsYW5nPSJlbl9VUyIgLSBQYXJhbWV0ZXIgaXMgdXNlZCB0byBzcGVjaWZ5IHdoYXQgbGFuZ3VhZ2UgdG8gdXNlIGZvciBkaXNwbGF5IG9uIHRoZSBmcm9udGVuZC4gTm90IGFsbCBtb2R1bGVzIHN1cHBvcnQgb3IgbmVlZCB0aGlzLjwvbGk+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gdGVtcGxhdGVJZD0iIiAtIDwvbGk+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gZ2V0bW9kdWxlPSIiIC0gPC9saT48bGk+PGVtPihvcHRpb25hbCk8L2VtPiBTdHlwZT0iIiAtIENTUzwvbGk+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gc21hcnR5PSIiIC0gdHVybiBzbWFydHkgb248L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IG1pbmlmeT0iIiAtIHRydW4gbWluaWZ5IG9uPC9saT48bGk+PGVtPihvcHRpb25hbCk8L2VtPiBtZWRpYV90eXBlPSIiIC0gc2V0IGEgbWVkaWEgdHlwZSBpZTogbW9yZSB0aGVuIG9uZTwvbGk+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gY2FjaGVfYnVzdGVyPSIiIC0gdHVybiBvZmY8L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGZzaXplPSIiIC0gZ2V0IHNpemU8L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IHJvb3Q9IiIgLSBzZXQgdGhlIHJvb3QgdXJsPC9saT48bGk+PGVtPihvcHRpb25hbCk8L2VtPiBkeW5hbWljPSIiIC0gZm9yY2UgaXQgdG8gYWx3YXlzIHJlYnVpbGQ8L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGltcG9ydD0iIiAtIHNldCwgd2hlbiBjc3MsIHRvIHVzZSBpbXBvcnQgZm9yIGlubGluZTwvbGk+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gZHVtcD0iIiAtIGR1bXAgb3V0IHRoZSBjb250YWludHM8L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IHVybD0iIiAtIGdldCBvbmx5IHRoZSB1cmwgdG8gdGhlIGZpbGU8L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGdyb3VwSUQ9IiIgLSB3aGF0IGlzIHRoZSBncm91cCBpZDwvbGk+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gc2NyaXB0SUQ9IiIgLSB3aGF0IGlzIHRoZSBzY3JpcHQgaWQ8L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGFjdGlvbj0iZGVmYXVsdCIgLSAtLUFkZCBNZSAtIG1vZHVsZTpTY3JpcHREZXBsb3kgc3RyaW5nOmhlbHBfYWN0aW9uLS08L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGR1cmF0aW9uPSIiIC0gLS1BZGQgTWUgLSBtb2R1bGU6U2NyaXB0RGVwbG95IHN0cmluZzpoZWxwX2R1cmF0aW9uLS08L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGNvb2tpZW5hbWU9ImNtc19zdHlsZW5hbWUiIC0gLS1BZGQgTWUgLSBtb2R1bGU6U2NyaXB0RGVwbG95IHN0cmluZzpoZWxwX2Nvb2tpZW5hbWUtLTwvbGk+PC91bD4=]]></help>
	<about><![CDATA[PGJyIC8+QXV0aG9yOiBqZXJlbXlCYXNzICZsdDtqZXJlbXliYXNzQGNhYmxlb25lLm5ldCZndDs8YnIgLz48YnIgLz5WZXJzaW9uOiAwLjg8YnIgLz48YnIgLz5DaGFuZ2UgSGlzdG9yeTo8YnIgLz48dWw+DQoJPGxpPlZlcnNpb24gMC4xIEJldGEgcmVsZWFzZS48L2xpPg0KCTxsaT5WZXJzaW9uIDAuMiBsb3RzIG9mIGNoYW5nZXMgdG8gZml4IGJ1Zy4uLjwvbGk+DQoJPGxpPlZlcnNpb24gMC4zIHNldCB0aGUgc21hcnR5IHRvIHVzZSB7eyB9fTwvbGk+DQoJPGxpPlZlcnNpb24gMC40IGZpeGVkIGJ1Zy4uIGltcHJvdmVkIHRoZSBtaW5pYWZjYXRpb24gdG8gYSBzYXZlcyBvZiB1cCB0byA2MCU8L2xpPg0KCTxsaT5WZXJzaW9uIDAuNy4xIG1hbnkgY2hhbmdlcy4uLiA8c3Ryb25nPkJSRUFLUyBVUEdSQURFPC9zdHJvbmc+IENvcHkgc2NyaXB0cywgaW5zdGFsbCBhbmQgdGhlIHVwbG9hZCBhbmQgcmVpbnN0YWxsLi4uIFNvcnJ5IGJ1dCBpdCB3YXMgbmVlZGVkIGZvciBWRVJTSU9OIEhJU1RPUlkgZml4ZWQgYnVncy4uIG1hbnkgaW1wcm92ZW1lbnRzPC9saT4NCgk8bGk+VmVyc2lvbiAwLjcuNiBNYW55IGZpeGVzLCBBZGQgdGhlIGR1bXAgcGFyYW0sIGFkZCB0aGUgYWN0aW9uIGZvciB0aGUgaW1wb3J0IHBhcmFtICdpbl9zY3JpcHQnLjwvbGk+DQo8L3VsPjxiciAvPg==]]></about>
	<description><![CDATA[SPEED YOUR SITE UP ...!!!! &bull; Output dynamic JS files and CSS WITH smarty... &bull; Set the files to use a subdomain... &bull; cached... &bull; minified... &bull; Did I mention you can use smarty in your JS and CSS script!!!! - Simple, flexible!]]></description>
	<file>
	  <filename>/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/action.add_template.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiNDTVMgLSBDTVMgTWFkZSBTaW1wbGUNCiMoYykyMDA0IGJ5IFRlZCBLdWxwICh3aXNoeUB1c2Vycy5zZi5uZXQpDQojVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly9jbXNtYWRlc2ltcGxlLnNmLm5ldA0KIw0KI1RoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5DQojaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkNCiN0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcg0KIyhhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uDQojDQojVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsDQojYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YNCiNNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlDQojR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4NCiNZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQ0KI2Fsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlDQojRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgIDAyMTExLTEzMDcgIFVTQQ0KIw0KIyRJZDogYWRkdGVtcGxhdGUucGhwIDUxNjggMjAwOC0xMC0yOSAxNjowNzo0NVogc2lsbWFyaWxsaW9uICQNCg0KaWYoIWNtc21zKCkpIGV4aXQoKTsNCiRDTVNfVVNFUl9LRVk9Q01TX1NFQ1VSRV9QQVJBTV9OQU1FLic9Jy4kX1NFU1NJT05bQ01TX1VTRVJfS0VZXTsNCg0KaWYoISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBUZW1wbGF0ZXMnKSl7DQogICAgLy8gdG9kbywgcGVybWlzc2lvbnMgbWVzc2FnZSBoZXJlDQogICAgcmV0dXJuOw0KfQ0KJGNvbmZpZyA9IGNtc21zKCktPkdldENvbmZpZygpOyANCiR0ZW1wbGF0ZW9wcyA9IGNtc21zKCktPkdldFRlbXBsYXRlT3BlcmF0aW9ucygpOw0KDQokZGIgPSBjbXNtcygpLT5HZXREYigpOw0KDQppZighaXNzZXQoJHBhcmFtc1snYWN0aXZlX3RhYiddKSl7DQoJJHBhcmFtc1snYWN0aXZlX3RhYiddPSd0ZW1wbGF0ZV9tYW5nJzsJDQp9DQoNCiRkZmx0X2NvbnRlbnQ9Jw0Ke3Byb2Nlc3NfcGFnZWRhdGF9DQo8IURPQ1RZUEUgaHRtbCBQVUJMSUMgIi0vL1czQy8vRFREIFhIVE1MIDEuMCBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL0RURC94aHRtbDEtdHJhbnNpdGlvbmFsLmR0ZCI+DQo8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIgeG1sOmxhbmc9ImVuIiA+DQo8aGVhZD4NCjx0aXRsZT57c2l0ZW5hbWV9IC0ge3RpdGxlfTwvdGl0bGU+DQp7bWV0YWRhdGF9DQp7U2NyaXB0RGVwbG95fQ0KPC9oZWFkPg0KPGJvZHk+DQoNCjwhLS0gc3RhcnQgaGVhZGVyIC0tPg0KPGRpdiBpZD0iaGVhZGVyIj4NCiAgPGgxPntzaXRlbmFtZX08L2gxPg0KPC9kaXY+DQo8IS0tIGVuZCBoZWFkZXIgLS0+DQoNCjwhLS0gc3RhcnQgbWVudSAtLT4NCjxkaXYgaWQ9Im1lbnUiPg0KICB7bWVudX0NCjwvZGl2Pg0KPCEtLSBlbmQgbWVudSAtLT4NCg0KPCEtLSBzdGFydCBjb250ZW50IC0tPg0KPGRpdiBpZD0iY29udGVudCI+DQogIDxoMT57dGl0bGV9PC9oMT4NCiAge2NvbnRlbnR9DQo8L2Rpdj4NCjwhLS0gZW5kIGNvbnRlbnQgLS0+DQo8L2JvZHk+DQo8L2h0bWw+DQonOw0KDQokZXJyb3IgPSAiIjsNCg0KJHRlbXBsYXRlID0gIiI7DQppZiAoaXNzZXQoJF9QT1NUWyJ0ZW1wbGF0ZSJdKSkgJHRlbXBsYXRlID0gJF9QT1NUWyJ0ZW1wbGF0ZSJdOw0KDQokY29udGVudCA9ICRkZmx0X2NvbnRlbnQ7DQppZiAoaXNzZXQoJF9QT1NUWyJjb250ZW50Il0pKSAkY29udGVudCA9ICRfUE9TVFsiY29udGVudCJdOw0KDQokc3R5bGVzaGVldCA9ICIiOw0KaWYgKGlzc2V0KCRfUE9TVFsic3R5bGVzaGVldCJdKSkgJHN0eWxlc2hlZXQgPSAkX1BPU1RbInN0eWxlc2hlZXQiXTsNCg0KDQoNCg0KJGFjdGl2ZSA9IDE7DQppZiAoIWlzc2V0KCRfUE9TVFsiYWN0aXZlIl0pICYmIGlzc2V0KCRfUE9TVFsiYWRkc2VjdGlvbiJdKSkgJGFjdGl2ZSA9IDA7DQoNCg0KDQoNCg0KDQoNCglpZiAoaXNzZXQoJF9QT1NUWyJhZGR0ZW1wbGF0ZSJdKSkNCgl7DQoJCSR2YWxpZGluZm8gPSB0cnVlOw0KDQoJCWlmICgkdGVtcGxhdGUgPT0gIiIpDQoJCXsNCgkJCSRlcnJvciAuPSAiPGxpPiIubGFuZygibm9maWVsZGdpdmVuIixhcnJheShsYW5nKCduYW1lJykpKS4iPC9saT4iOw0KCQkJJHZhbGlkaW5mbyA9IGZhbHNlOw0KCQl9DQoJCWVsc2UNCgkJew0KCQkJJHF1ZXJ5ID0gIlNFTEVDVCB0ZW1wbGF0ZV9pZCBmcm9tICIuY21zX2RiX3ByZWZpeCgpLiJ0ZW1wbGF0ZXMgV0hFUkUgdGVtcGxhdGVfbmFtZSA9ICIgLiAkZGItPnFzdHIoJHRlbXBsYXRlKTsNCgkJCSRyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5KTsNCg0KCQkJaWYgKCRyZXN1bHQgJiYgJHJlc3VsdC0+UmVjb3JkQ291bnQoKSA+IDApDQoJCQl7DQoJCQkJJGVycm9yIC49ICI8bGk+Ii5sYW5nKCd0ZW1wbGF0ZWV4aXN0cycpLiI8L2xpPiI7DQoJCQkJJHZhbGlkaW5mbyA9IGZhbHNlOw0KCQkJfQ0KCQl9DQoNCgkJaWYgKCRjb250ZW50ID09ICIiKQ0KCQl7DQoJCQkkZXJyb3IgLj0gIjxsaT4iLmxhbmcoJ25vZmllbGRnaXZlbicsIGFycmF5KGxhbmcoJ2NvbnRlbnQnKSkpLiI8L2xpPiI7DQoJCQkkdmFsaWRpbmZvID0gZmFsc2U7DQoJCX0NCg0KCQlpZiAoJHZhbGlkaW5mbykNCgkJew0KCQkJJG5ld3RlbXBsYXRlID0gbmV3IFRlbXBsYXRlKCk7DQoJCQkkbmV3dGVtcGxhdGUtPm5hbWUgPSAkdGVtcGxhdGU7DQoJCQkkbmV3dGVtcGxhdGUtPmNvbnRlbnQgPSAkY29udGVudDsNCgkJCSRuZXd0ZW1wbGF0ZS0+c3R5bGVzaGVldCA9ICRzdHlsZXNoZWV0Ow0KCQkJJG5ld3RlbXBsYXRlLT5hY3RpdmUgPSAkYWN0aXZlOw0KCQkJJG5ld3RlbXBsYXRlLT5kZWZhdWx0ID0gMDsNCg0KCQkJI1BlcmZvcm0gdGhlIGFkZHRlbXBsYXRlX3ByZSBjYWxsYmFjaw0KCQkJZm9yZWFjaChjbXNtcygpLT5tb2R1bGVzIGFzICRrZXk9PiR2YWx1ZSkNCgkJCXsNCgkJCQlpZiAoY21zbXMoKS0+bW9kdWxlc1ska2V5XVsnaW5zdGFsbGVkJ10gPT0gdHJ1ZSAmJg0KCQkJCQljbXNtcygpLT5tb2R1bGVzWyRrZXldWydhY3RpdmUnXSA9PSB0cnVlKQ0KCQkJCXsNCgkJCQkJY21zbXMoKS0+bW9kdWxlc1ska2V5XVsnb2JqZWN0J10tPkFkZFRlbXBsYXRlUHJlKCRuZXd0ZW1wbGF0ZSk7DQoJCQkJfQ0KCQkJfQ0KCQkJDQoJCQlFdmVudHM6OlNlbmRFdmVudCgnQ29yZScsICdBZGRUZW1wbGF0ZVByZScsIGFycmF5KCd0ZW1wbGF0ZScgPT4gJiRuZXd0ZW1wbGF0ZSkpOw0KDQoJCQkkcmVzdWx0ID0gJG5ld3RlbXBsYXRlLT5zYXZlKCk7DQoNCgkJCWlmICgkcmVzdWx0KQ0KCQkJew0KCQkJCSNQZXJmb3JtIHRoZSBhZGR0ZW1wbGF0ZV9wb3N0IGNhbGxiYWNrDQoJCQkJZm9yZWFjaChjbXNtcygpLT5tb2R1bGVzIGFzICRrZXk9PiR2YWx1ZSkNCgkJCQl7DQoJCQkJCWlmIChjbXNtcygpLT5tb2R1bGVzWyRrZXldWydpbnN0YWxsZWQnXSA9PSB0cnVlICYmDQoJCQkJCQljbXNtcygpLT5tb2R1bGVzWyRrZXldWydhY3RpdmUnXSA9PSB0cnVlKQ0KCQkJCQl7DQoJCQkJCQljbXNtcygpLT5tb2R1bGVzWyRrZXldWydvYmplY3QnXS0+QWRkVGVtcGxhdGVQb3N0KCRuZXd0ZW1wbGF0ZSk7DQoJCQkJCX0NCgkJCQl9DQoJCQkJDQoJCQkJRXZlbnRzOjpTZW5kRXZlbnQoJ0NvcmUnLCAnQWRkVGVtcGxhdGVQb3N0JywgYXJyYXkoJ3RlbXBsYXRlJyA9PiAmJG5ld3RlbXBsYXRlKSk7DQoNCgkJCQlhdWRpdCgkbmV3dGVtcGxhdGUtPmlkLCAkdGVtcGxhdGUsICdBZGRlZCBUZW1wbGF0ZScpOw0KCQkJCXJlZGlyZWN0KCRmcm9tKTsNCgkJCQlyZXR1cm47DQoJCQl9DQoJCQllbHNlDQoJCQl7DQoJCQkJJGVycm9yIC49ICI8bGk+Ii5sYW5nKCdlcnJvcmluc2VydGluZ3RlbXBsYXRlJykuIiRxdWVyeTwvbGk+IjsNCgkJCX0NCgkJfQ0KCX0NCiR0aGlzLT5zbWFydHktPmFzc2lnbigndGVtcGxhdGVfcHJldmlldycsJycpOw0KDQovL2VjaG8gJHRoaXMtPmpzTmNzcygpOw0KZWNobyAnPGRpdiBpZD0iZGVtb3RpcCI+PGltZyBjbGFzcz0icHJvZ3Jlc3MiIHNyYz0iLi4vbW9kdWxlcy9TY3JpcHREZXBsb3kvaW1hZ2VzL2xvYWRpbmcuZ2lmIiBhbHQ9IiIvPjwvZGl2Pic7DQoNCg0KDQovLyBoYW5kbGUgZXJyb3JzLg0KaWYoaXNzZXQoJHBhcmFtc1snZXJyb3JzJ10pKXsNCiAgICBlY2hvICR0aGlzLT5TaG93RXJyb3JzKCRwYXJhbXNbJ2Vycm9ycyddKTsNCn0NCg0KJHBhcmFtc1snb3JpZ2FjdGlvbiddID0gJHBhcmFtc1snYWN0aW9uJ107DQokY29udGVudHMgPSAiIjsNCiRzY3JpcHRzX25hbWU9Jyc7DQogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdmb3Jtc3RhcnQnLA0KCQkJICAgICR0aGlzLT5DcmVhdGVGb3JtU3RhcnQgKCRpZCwgJ3NhdmVfU2NyaXB0X1NldHVwJywkcmV0dXJuaWQsJ3Bvc3QnLCcnLA0KCQkJCQkJICAgIGZhbHNlLCAnJywgJHBhcmFtcykpOw0KICAgICR0aGlzLT5zbWFydHktPmFzc2lnbignaGlkZGVuJywNCgkJCSAgJHRoaXMtPkNyZWF0ZUlucHV0SGlkZGVuKCRpZCwgJ21vZGUnLCAkcGFyYW1zWydtb2RlJ10gKQ0KCQkJICAuJHRoaXMtPkNyZWF0ZUlucHV0SGlkZGVuKCRpZCwgJ1Byb2NjZXNzaW5nJywgJHRoaXMtPkxhbmcoJ1Byb2NjZXNzaW5nJykpDQoJCQkgIC4kdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLCAnU2F2ZWQnLCAkdGhpcy0+TGFuZygnU2F2ZWQnKSkNCgkJCSAgLiR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsICdEb25lJywgJHRoaXMtPkxhbmcoJ0RvbmUnKSkNCgkJCSAgLiR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsICdWYWxpZGF0aW5nJywgJHRoaXMtPkxhbmcoJ1ZhbGlkYXRpbmcnKSApDQoJCQkgICk7DQoNCg0KICAgICR0aGlzLT5zbWFydHktPmFzc2lnbignZm9ybXN0YXJ0JywNCgkJCSAgICAkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0ICgkaWQsICdzYXZlX1NjcmlwdF9TZXR1cCcsJHJldHVybmlkLCdwb3N0JywnJyxmYWxzZSwgJycsICRwYXJhbXMpKTsNCg0KDQogICAgaWYoIGlzc2V0KCRwYXJhbXNbJ2RlZmF1bHR0ZW1wbGF0ZXByZWYnXSkgJiYgJHBhcmFtc1snZGVmYXVsdHRlbXBsYXRlcHJlZiddICE9ICcnICl7DQoJCSRjb250ZW50cyA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCRwYXJhbXNbJ2RlZmF1bHR0ZW1wbGF0ZXByZWYnXSk7DQogICAgIH0NCg0KDQovLyR0aGlzLT5zbWFydHktPmFzc2lnbigndGl0bGUnLGNtc19odG1sX2VudGl0eV9kZWNvZGUoJHBhcmFtc1sndGl0bGUnXSkpOw0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0ZW1wbGF0ZW5hbWUnLCR0ZW1wbGF0ZSk7DQogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0ZW1wbGF0ZW5hbWVfaW5wdXQnLA0KCQkJICAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCAkaWQsICd0ZW1wbGF0ZScsICR0ZW1wbGF0ZSwgNDAgKSk7DQogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdTY3JpcHRJc19pbnB1dCcsDQoJCQkkdGhpcy0+Q3JlYXRlVGV4dEFyZWEgKDEsICRpZCwgJGNvbnRlbnQsICdjb250ZW50JywgJycsJ1NJQScsJycsJycsJzgwJywnMjAnLCdFZGl0QXJlYScpKTsgDQoNCg0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzY3JpcHRzX25hbWUnLCRzY3JpcHRzX25hbWUpOw0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdtb2RlJywgJHBhcmFtc1snbW9kZSddICk7ICANCg0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdoaWRkZW5Nb2RlJywNCgkJCSR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsICdtb2RlJywgJHBhcmFtc1snbW9kZSddKQ0KCQkJLiR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsICdzcF8nLCAkQ01TX1VTRVJfS0VZKQ0KCQkJKTsNCgkJDQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3NtYXJ0eUhvd19sYWJlbCcsICR0aGlzLT5MYW5nKCdzbWFydHlIb3cnKSk7IA0KCQ0KDQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RlbXBsYXRlbmFtZV9sYWJlbCcsICR0aGlzLT5MYW5nKCd0ZW1wbGF0ZW5hbWVfbGFiZWwnKSk7IA0KDQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ1NjcmlwdElzX2xhYmVsJywgJHRoaXMtPkxhbmcoJ1NjcmlwdElzX2xhYmVsJykpOw0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdub3Rlc19sYWJlbCcsICR0aGlzLT5MYW5nKCdub3Rlc19sYWJlbCcpKTsNCg0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdmb3JtX2NhbmNlbCcsICc8aW5wdXQgdHlwZT0iYnV0dG9uIiB2YWx1ZT0iJy4kdGhpcy0+TGFuZygnZm9ybV9jYW5jZWwnKS4nIiBvbmNsaWNrPSJqYXZhc2NyaXB0OndpbmRvdy5oaXN0b3J5LmdvKC0xKSIgLz4nKTsJICANCiR0aGlzLT5zbWFydHktPmFzc2lnbigncHJvbXB0X3RlbXBsYXRlbmFtZScsJHRoaXMtPkxhbmcoJ3Byb21wdF90ZW1wbGF0ZW5hbWUnKSk7DQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3Byb21wdF90ZW1wbGF0ZScsJHRoaXMtPkxhbmcoJ3Byb21wdF90ZW1wbGF0ZScpKTsNCiR0aGlzLT5zbWFydHktPmFzc2lnbigndGVtcGxhdGUnLA0KCQkgICAgICAkdGhpcy0+Q3JlYXRlU3ludGF4QXJlYSAoJGlkLCAkY29udGVudHMsICd0ZW1wbGF0ZWNvbnRlbnQnKSk7DQoJCQkgIA0KCQkgIA0KDQoJCQkgIA0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzdWJtaXQnLCR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCAoJGlkLCAnc3VibWl0YnV0dG9uJywNCgkJCQkJCQkgJHRoaXMtPkxhbmcgKCdzdWJtaXQnKSkpOw0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdjYW5jZWwnLCR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCAoJGlkLCAnY2FuY2VsJywgDQoJCQkJCQkJICR0aGlzLT5MYW5nICgnY2FuY2VsJykpKTsNCg0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdhcHBseScsJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0ICgkaWQsICdhcHBseScsIA0KCQkJCQkJCSAkdGhpcy0+TGFuZyAoJ2FwcGx5JykpKTsNCiR0aGlzLT5zbWFydHktPmFzc2lnbigncmV2ZXJ0JywkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQgKCRpZCwgJ3JldmVydCcsIA0KCQkJCQkJCSAkdGhpcy0+TGFuZyAoJ3JldmVydCcpKSk7DQoNCg0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdmb3JtZW5kJywkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsNCg0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdmaWx0ZXJQcm9wJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZmlsdGVyUHJvcCcsICcnKSk7DQoNCg0KZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCdlZGl0X3RlbXBsYXRlLnRwbCcpOw0KDQoNCg0KDQoNCj8+DQo=]]></data>
	</file>
	<file>
	  <filename>/action.admin_editcssassoc.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCi8qKg0KICAqIFRlbXBsYXRlTWFuYWdlciBpcyBhIG1vZHVsZSBmb3IgQ01TIE1hZGUgc2ltcGxlIChjbXNtYWRlc2ltcGxlLm9yZykNCiAgKiB0aGF0IHByZXNlbnRzIGEgdXNlciBzd2l0Y2hhYmxlIHN0eWxlIHNlbGVjdG9yIG9uIHRoZSBmcm9udCBlbmQgb2YgdGhlIHNpdGUNCiAgKiBXcml0dGVuIGJ5IFRob21hcyBXaWxsaWFtcyAodG9tQHdlYnJvY2tldGRlc2lnbi5jb20pDQogICogQ29weXJpZ2h0IDIwMDUgV2ViIFJvY2tldCBEZXNpZ24sIDQgQmx1ZSBDb2F0IEJ1aWxkaW5ncywgRHVyaGFtLCBVSywgREgxMVJGDQogICoNCiAgKiAgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkNCiAgKiAgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkNCiAgKiAgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3INCiAgKiAgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4NCiAgKg0KICAqICBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwNCiAgKiAgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YNCiAgKiAgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQ0KICAqICBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLg0KICAqIA0KICAqICBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQ0KICAqICBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQ0KICAqICBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdCwgRmlmdGggRmxvb3IsIEJvc3RvbiwgTUEgIDAyMTEwLTEzMDEgIFVTQQ0KICAqLw0KDQpmdW5jdGlvbiBVcGRhdGVTdHlsZXNoZWV0UmVjb3JkRnJvbVBhcmFtcygkYWN0LCYkcmVjb3JkLCYkcGFyYW1zKQ0Kew0KICBpZiggaXNzZXQoICRwYXJhbXNbJ2lucHV0X3ByZWZlcnJlZF9zdHlsZXNoZWV0J10gKSApDQogICAgew0KICAgICAgJHJlY29yZC0+cHJlZmVycmVkX3NzID0gJHBhcmFtc1snaW5wdXRfcHJlZmVycmVkX3N0eWxlc2hlZXQnXTsNCiAgICB9DQogIGlmKCBpc3NldCgkcGFyYW1zWydidXR0b25fYWRkcGVyc2lzdCddKSAmJiANCiAgICAgaXNzZXQoJHBhcmFtc1snaW5wdXRfYWRkcGVyc2lzdCddKSAmJiANCiAgICAgICRwYXJhbXNbJ2lucHV0X2FkZHBlcnNpc3QnXSAhPSAiLTEiICkNCiAgICB7DQogICAgICAkc3NpZCA9ICRwYXJhbXNbJ2lucHV0X2FkZHBlcnNpc3QnXTsNCiAgICAgIGlmKCBhcnJheV9zZWFyY2goICRzc2lkLCAkcmVjb3JkLT5wZXJzaXN0ZW50ICkgPT09IEZBTFNFICkNCgl7DQoJICAkcmVjb3JkLT5wZXJzaXN0ZW50W10gPSAkc3NpZDsNCgl9DQogICAgICB1bnNldCgkcGFyYW1zWydpbnB1dF9hZGRwZXJzaXN0J10pOw0KICAgICAgdW5zZXQoJHBhcmFtc1snYnV0dG9uX2FkZHBlcnNpc3QnXSk7DQogICAgfQ0KICBpZiggaXNzZXQoJHBhcmFtc1sncGVyc2lzdF9hY3Rpb24nXSApICkNCiAgICB7DQogICAgICAkaWR4ID0gYXJyYXlfc2VhcmNoKCAkcGFyYW1zWydzaGVldGlkJ10sICRyZWNvcmQtPnBlcnNpc3RlbnQgKTsNCiAgICAgIGlmKCAkaWR4ICE9PSBGQUxTRSApDQoJew0KCSAgc3dpdGNoKCAkcGFyYW1zWydwZXJzaXN0X2FjdGlvbiddICkNCgkgICAgew0KCSAgICBjYXNlICdtb3ZlX3VwJzoNCgkgICAgICAkaWR4MiA9ICRpZHggLSAxOw0KCSAgICAgICR2YWwgPSAkcmVjb3JkLT5wZXJzaXN0ZW50WyRpZHhdOw0KCSAgICAgICRyZWNvcmQtPnBlcnNpc3RlbnRbJGlkeF0gPSAkcmVjb3JkLT5wZXJzaXN0ZW50WyRpZHgyXTsNCgkgICAgICAkcmVjb3JkLT5wZXJzaXN0ZW50WyRpZHgyXSA9ICR2YWw7DQoJICAgICAgYnJlYWs7DQoJICAgIGNhc2UgJ21vdmVfZG93bic6DQoJICAgICAgJGlkeDIgPSAkaWR4ICsgMTsNCgkgICAgICAkdmFsID0gJHJlY29yZC0+cGVyc2lzdGVudFskaWR4XTsNCgkgICAgICAkcmVjb3JkLT5wZXJzaXN0ZW50WyRpZHhdID0gJHJlY29yZC0+cGVyc2lzdGVudFskaWR4Ml07DQoJICAgICAgJHJlY29yZC0+cGVyc2lzdGVudFskaWR4Ml0gPSAkdmFsOw0KCSAgICAgIGJyZWFrOw0KCSAgICBjYXNlICdyZW1vdmUnOg0KCSAgICAgIHVuc2V0KCRyZWNvcmQtPnBlcnNpc3RlbnRbJGlkeF0pOw0KCSAgICAgIGJyZWFrOw0KCSAgICB9DQoJfQ0KICAgICAgdW5zZXQoJHBhcmFtc1snc2hlZXRpZCddKTsNCiAgICAgIHVuc2V0KCRwYXJhbXNbJ3BlcnNpc3RfYWN0aW9uJ10pOw0KICAgIH0NCg0KICBpZiggaXNzZXQoJHBhcmFtc1snaW5wdXRfYWx0ZXJuYXRlX3N0eWxlc2hlZXQnXSkgKQ0KICAgIHsNCiAgICAgICRyZWNvcmQtPmFsdGVybmF0ZSA9ICRwYXJhbXNbJ2lucHV0X2FsdGVybmF0ZV9zdHlsZXNoZWV0J107DQogICAgfQ0KICBlbHNlDQogICAgew0KICAgICAgJHJlY29yZC0+YWx0ZXJuYXRlID0gYXJyYXkoKTsNCiAgICB9DQogIGlmKCBpc3NldCgkcGFyYW1zWydpbnB1dF9wcmVmZXJyZWRfc3R5bGVzaGVldCddKSApDQogICAgew0KICAgICAgJHJlY29yZC0+cHJlZmVycmVkX3NzID0gJHBhcmFtc1snaW5wdXRfcHJlZmVycmVkX3N0eWxlc2hlZXQnXTsNCiAgICB9DQp9DQoNCi8vDQovLw0KLy8NCg0KaWYoICEkdGhpcy0+VmlzaWJsZVRvQWRtaW5Vc2VyKCkgKQ0KICB7DQogICAgcmV0dXJuOw0KICB9DQoNCmlmKCAhaXNzZXQoJHBhcmFtc1sndGVtcGxhdGVpZCddKSApDQogIHsNCiAgICAkcGFyYW1zWydlcnJvciddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX21pc3NpbmdwYXJhbScpOw0KICAgICR0aGlzLT5SZWRpcmVjdCggJGlkLCAnZGVmYXVsdGFkbWluJywgJHJldHVybmlkLCAkcGFyYW1zICk7DQogIH0NCiR0ZW1wbGF0ZWlkID0gJHBhcmFtc1sndGVtcGxhdGVpZCddOw0KDQoNCiRlcnJvcnMgPSBhcnJheSgpOw0KaWYoIGlzc2V0KCAkcGFyYW1zWydjYW5jZWwnXSApICkNCiAgew0KICAgIHVuc2V0KCRfU0VTU0lPTlsnc3RvcmVkX29iamVjdCddKTsNCiAgICAkdGhpcy0+UmVkaXJlY3QoICRpZCwgJ2RlZmF1bHRhZG1pbicsICRyZXR1cm5pZCApOw0KICB9DQoNCiRzdHlsZXNoZWV0aW5mbyA9IG5ldyBTdHlsZXNoZWV0X1JlY29yZCgkdGVtcGxhdGVpZCk7DQppZiggaXNzZXQoICRfU0VTU0lPTlsnc3RvcmVkX29iamVjdCddICkgKQ0KICB7DQogICAgLy8gRXhwYW5kIGZyb20gcGFyYW1zDQogICAgJHN0eWxlc2hlZXRpbmZvID0gU3R5bGVzaGVldF9SZWNvcmQ6OlJldHJpZXZlKCRfU0VTU0lPTlsnc3RvcmVkX29iamVjdCddKTsNCiAgICB1bnNldCgkX1NFU1NJT05bJ3N0b3JlZF9vYmplY3QnXSk7DQogIH0NCmVsc2UNCiAgew0KICAgIC8vIExvYWQgZXZlcnl0aGluZyBmcm9tIHRoZSBkYXRhYmFzZQ0KICAgICRzdHlsZXNoZWV0aW5mby0+TG9hZCgkdGVtcGxhdGVpZCk7DQogIH0NCg0KaWYoIGlzc2V0KCRwYXJhbXNbJ2J1dHRvbl9hZGRwZXJzaXN0J10pIHx8IA0KICAgIGlzc2V0KCRwYXJhbXNbJ3BlcnNpc3RfYWN0aW9uJ10pIHx8DQogICAgaXNzZXQoJHBhcmFtc1snYXBwbHknXSkgfHwNCiAgICBpc3NldCgkcGFyYW1zWydzdWJtaXQnXSkpDQogIHsNCiAgICBVcGRhdGVTdHlsZXNoZWV0UmVjb3JkRnJvbVBhcmFtcygxLCRzdHlsZXNoZWV0aW5mbywkcGFyYW1zKTsNCiAgfQ0KDQppZiggaXNzZXQoICRwYXJhbXNbJ2FwcGx5J10gKSB8fCBpc3NldCggJHBhcmFtc1snc3VibWl0J10gKSApDQogIHsNCiAgICAvLyBoYW5kbGUgc2F2aW5nIHRoZSBvYmplY3QNCiAgICB1bnNldCgkX1NFU1NJT05bJ3N0b3JlZF9vYmplY3QnXSk7DQogICAgJHN0eWxlc2hlZXRpbmZvLT5TYXZlKCk7DQoNCiAgICBpZiggaXNzZXQoJHBhcmFtc1snc3VibWl0J10pICkNCiAgICAgIHsNCgkkdGhpcy0+UmVkaXJlY3QoICRpZCwgJ2RlZmF1bHRhZG1pbicsICRyZXR1cm5pZCwgJHBhcmFtcyApOw0KICAgICAgfQ0KICB9DQoNCi8vDQovLyBkaXNwbGF5IGVycm9ycw0KLy8NCmlmKCBjb3VudCgkZXJyb3JzKSApDQogIHsNCiAgICAkZXJyb3JzdHIgPSBpbXBsb2RlKCc8YnIvPicsJGVycm9ycyk7DQogICAgJHNtYXJ0eS0+YXNzaWduKCdlcnJvcicsJGVycm9yc3RyKTsNCiAgfQ0KDQovLw0KLy8gYXNzaWduIHByb21wdHMgdG8gc21hcnR5DQovLw0KJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfdGVtcGxhdGUnLCR0aGlzLT5MYW5nKCdwcm9tcHRfdGVtcGxhdGUnKSk7DQokc21hcnR5LT5hc3NpZ24oJ3Byb21wdF9wZXJzaXN0ZW50JywkdGhpcy0+TGFuZygncGVyc2lzdGVudCcpKTsNCiRzbWFydHktPmFzc2lnbignbmFtZXRleHQnLCR0aGlzLT5MYW5nKCduYW1lJykpOw0KJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfYWRkJywkdGhpcy0+TGFuZygncHJvbXB0X2FkZCcpKTsNCiRzbWFydHktPmFzc2lnbigncHJvbXB0X3ByZWZlcnJlZCcsJHRoaXMtPkxhbmcoJ3ByZWZlcnJlZCcpKTsNCiRzbWFydHktPmFzc2lnbigncHJvbXB0X2FsdGVybmF0ZScsJHRoaXMtPkxhbmcoJ2FsdGVybmF0ZScpKTsNCiRzbWFydHktPmFzc2lnbigncHJvbXB0X3ByZWZlcnJlZF9zdHlsZXNoZWV0JywkdGhpcy0+TGFuZygncHJvbXB0X3RlbXBsYXRlJykpOw0KJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfYWx0ZXJuYXRlX3N0eWxlc2hlZXQnLCR0aGlzLT5MYW5nKCdhbHRlcm5hdGUnKSk7DQoNCi8vDQovLyBidWlsZCBhIGNvdXBsZSBvZiB1c2VmdWwgYXJyYXlzDQovLyBhbmQgZ2V0IHRoZSBpbmZvIGFib3V0IHRoZSB0ZW1wbGF0ZSB3ZSBuZWVkDQovLw0KDQokYWRtaW50aGVtZSA9IGNtc21zKCktPnZhcmlhYmxlc1snYWRtaW50aGVtZSddOw0KJHRlbXBsYXRlb3BzID0gY21zbXMoKS0+R2V0VGVtcGxhdGVPcGVyYXRpb25zKCk7DQokdGhldGVtcGxhdGUgPSAkdGVtcGxhdGVvcHMtPkxvYWRUZW1wbGF0ZUJ5SWQoICR0ZW1wbGF0ZWlkICk7DQoNCiRzdHlsZXNoZWV0b3BzID0gY21zbXMoKS0+R2V0U3R5bGVzaGVldE9wZXJhdGlvbnMoKTsNCiRzdHlsZXNoZWV0cyA9ICRzdHlsZXNoZWV0b3BzLT5Mb2FkU3R5bGVzaGVldHMoKTsNCiRzdHlsZXNoZWV0X3NlbGVjdF9saXN0ID0gYXJyYXkoKTsNCiRzdHlsZXNoZWV0X3NlbGVjdF9saXN0WyR0aGlzLT5MYW5nKCdwcm9tcHRfc2VsZWN0b25lJyldID0gJy0xJzs7DQokc3R5bGVzaGVldF9pZF9tYXAgPSBhcnJheSgpOw0KZm9yZWFjaCggJHN0eWxlc2hlZXRzIGFzICRvbmVzdHlsZSApDQp7DQogICRzdHlsZXNoZWV0X3NlbGVjdF9saXN0WyRvbmVzdHlsZS0+TmFtZSgpXSA9ICRvbmVzdHlsZS0+SWQoKTsNCiAgJHN0eWxlc2hlZXRfaWRfbWFwWyRvbmVzdHlsZS0+SWQoKV0gPSAkb25lc3R5bGUtPk5hbWUoKTsNCn0NCg0KLy8NCi8vIHN0YXJ0IGJ1aWxkaW5nIHRoZSBmb3JtDQovLw0KJF9TRVNTSU9OWydzdG9yZWRfb2JqZWN0J10gPSAkc3R5bGVzaGVldGluZm8tPlN0b3JlKCk7DQokc21hcnR5LT5hc3NpZ24oJ3N0YXJ0Zm9ybScsJHRoaXMtPkNyZWF0ZUZvcm1TdGFydCgkaWQsJ2FkbWluX2VkaXRjc3Nhc3NvYycsJHJldHVybmlkLCdwb3N0JywnJyxmYWxzZSwnJywkcGFyYW1zKSk7DQokc21hcnR5LT5hc3NpZ24oJ2VuZGZvcm0nLCR0aGlzLT5DcmVhdGVGb3JtRW5kKCkpOw0KJHBlcnNpc3RlbnRzID0gYXJyYXkoKTsNCiRpID0gMDsNCiRyb3djbGFzcyA9ICdyb3cxJzsNCiRwYXJtcyA9ICRwYXJhbXM7DQpmb3JlYWNoKCAgJHN0eWxlc2hlZXRpbmZvLT5wZXJzaXN0ZW50IGFzICRzaGVldGlkICkNCnsNCiAgaWYoICRzaGVldGlkICE9ICcnICkgDQogICAgew0KICAgICAgJG9iaiA9IG5ldyBTdGRDbGFzcygpOw0KICAgICAgJG9iai0+SWQgPSAkc2hlZXRpZDsNCiAgICAgICRvYmotPm5hbWUgPSAkc3R5bGVzaGVldF9pZF9tYXBbJHNoZWV0aWRdOw0KICAgICAgJG9iai0+ZWRpdGxpbmsgPSAkdGhpcy0+Q3JlYXRlTGluayggJGlkLCAnZWRpdGNzcycsICRyZXR1cm5pZCwgDQoJCQkJCSAgJGFkbWludGhlbWUtPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL2VkaXQuZ2lmJywgJHRoaXMtPkxhbmcoJ2VkaXQnKSwgJycsJycsJ3N5c3RlbWljb24nKSwNCgkJCQkJICBhcnJheSgnY3NzX2lkJz0+JHNoZWV0aWQpKTsNCiAgICAgIGlmKCBjb3VudCgkcGVyc2lzdGVudHMpID4gMCApIHsNCgkkcGFybXNbJ3BlcnNpc3RfYWN0aW9uJ10gPSAnbW92ZV91cCc7DQoJJHBhcm1zWydzaGVldGlkJ10gPSAkc2hlZXRpZDsNCgkkb2JqLT5tb3ZldXBsaW5rID0gJHRoaXMtPkNyZWF0ZUxpbmsoICRpZCwgJ2FkbWluX2VkaXRjc3Nhc3NvYycsICRyZXR1cm5pZCwgDQoJCQkJCSAgICAgICRhZG1pbnRoZW1lLT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9zb3J0X3VwLmdpZicsICR0aGlzLT5MYW5nKCdtb3ZlX3VwJyksICcnLCAnJywgJ3N5c3RlbWljb24nKSwNCgkJCQkJICAgICAgJHBhcm1zICk7DQogICAgICB9DQogICAgICBpZiggJGkgPCAoY291bnQoJHN0eWxlc2hlZXRpbmZvLT5wZXJzaXN0ZW50KSAtIDEpICkNCgl7DQoJICAkcGFybXNbJ3BlcnNpc3RfYWN0aW9uJ10gPSAnbW92ZV9kb3duJzsNCgkgICRwYXJtc1snc2hlZXRpZCddID0gJHNoZWV0aWQ7DQoJICAkb2JqLT5tb3ZlZG93bmxpbmsgPSAkdGhpcy0+Q3JlYXRlTGluayggJGlkLCAnYWRtaW5fZWRpdGNzc2Fzc29jJywgJHJldHVybmlkLCANCgkJCQkJCSAgJGFkbWludGhlbWUtPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL3NvcnRfZG93bi5naWYnLCAkdGhpcy0+TGFuZygnbW92ZV9kb3duJyksICcnLCAnJywgJ3N5c3RlbWljb24nKSwNCgkJCQkJCSAgJHBhcm1zICk7DQoJfQ0KICAgICAgJHBhcm1zWydwZXJzaXN0X2FjdGlvbiddID0gJ3JlbW92ZSc7DQogICAgICAkcGFybXNbJ3NoZWV0aWQnXSA9ICRzaGVldGlkOw0KICAgICAgJG9iai0+cmVtb3ZlbGluayA9ICR0aGlzLT5DcmVhdGVMaW5rKCAkaWQsICdhZG1pbl9lZGl0Y3NzYXNzb2MnLCAkcmV0dXJuaWQsDQoJCQkJCSAgICAkYWRtaW50aGVtZS0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vZGVsZXRlLmdpZicsICR0aGlzLT5MYW5nKCdyZW1vdmVfZnJvbV9saXN0JyksICcnLCAnJywgJ3N5c3RlbWljb24nKSwNCgkJCQkJICAgICRwYXJtcyApOw0KICAgICAgJG9iai0+cm93Y2xhc3MgPSAkcm93Y2xhc3M7DQogICAgICAkcGVyc2lzdGVudHNbXSA9ICRvYmo7DQogICAgICAkcm93Y2xhc3MgPSAoJHJvd2NsYXNzID09ICdyb3cxJyk/J3JvdzInOidyb3cxJzsNCiAgICB9DQogICRpKys7DQp9DQokc21hcnR5LT5hc3NpZ24oJ3BlcnNpc3RlbnRzJywkcGVyc2lzdGVudHMpOw0KJHNtYXJ0eS0+YXNzaWduKCdsYWJlbF90ZW1wbGF0ZScsJHRoZXRlbXBsYXRlLT5OYW1lKCkpOw0KJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9hZGRwZXJzaXN0JywkdGhpcy0+Q3JlYXRlSW5wdXREcm9wZG93bigkaWQsJ2lucHV0X2FkZHBlcnNpc3QnLCRzdHlsZXNoZWV0X3NlbGVjdF9saXN0KSk7DQokc21hcnR5LT5hc3NpZ24oJ2J1dHRvbl9hZGRwZXJzaXN0JywkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCdidXR0b25fYWRkcGVyc2lzdCcsJHRoaXMtPkxhbmcoJ3Byb21wdF9hZGQnKSkpOw0KJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9wcmVmZXJyZWRfc3R5bGVzaGVldCcsJHRoaXMtPkNyZWF0ZUlucHV0RHJvcGRvd24oJGlkLCdpbnB1dF9wcmVmZXJyZWRfc3R5bGVzaGVldCcsJHN0eWxlc2hlZXRfc2VsZWN0X2xpc3QsLTEsJHN0eWxlc2hlZXRpbmZvLT5wcmVmZXJyZWRfc3MpKTsNCg0KJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9hbHRlcm5hdGVfc3R5bGVzaGVldCcsDQoJCSR0aGlzLT5DcmVhdGVJbnB1dFNlbGVjdExpc3QoJGlkLCdpbnB1dF9hbHRlcm5hdGVfc3R5bGVzaGVldFtdJywNCgkJCQkJICAgICAkc3R5bGVzaGVldF9zZWxlY3RfbGlzdCwNCgkJCQkJICAgICAkc3R5bGVzaGVldGluZm8tPmFsdGVybmF0ZSksDQoJCWFycmF5KCksNSk7DQokc21hcnR5LT5hc3NpZ24oJ3N1Ym1pdCcsJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwnc3VibWl0JywkdGhpcy0+TGFuZygnc3VibWl0JykpKTsNCiRzbWFydHktPmFzc2lnbignYXBwbHknLCR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsJ2FwcGx5JywkdGhpcy0+TGFuZygnYXBwbHknKSkpOw0KJHNtYXJ0eS0+YXNzaWduKCdjYW5jZWwnLCR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsJ2NhbmNlbCcsJHRoaXMtPkxhbmcoJ2NhbmNlbCcpKSk7DQoNCmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSgnZWRpdGNzc2Fzc29jLnRwbCcpOw0KLy8gRU9GDQo/Pg0K]]></data>
	</file>
	<file>
	  <filename>/action.admin_savetemplate.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCi8qKg0KICogTW9kdWxlOiBTY3JpcHREZXBsb3kgLSBNaW5pZnkgYW5kIGRlcGxveW1lbnQgb2YgSlMgQ1NTIGFuZCBIVE1MDQogKiANCiAqIA0KICogQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykNCiAqIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnDQogKiBUaGUgbW9kdWxlJ3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvc2NyaXB0ZGVwbG95Lw0KICogDQogKiBAcGFja2FnZSBTY3JpcHREZXBsb3kNCiAqIEBhdXRob3IgamVyZW15QmFzcyA8amVyZW15QmFzc0BjYWJsZW9uZS5uZXQ+DQogKiBAY29weXJpZ2h0IEplcmVteSBCYXNzDQogKiBAbGljZW5zZSBodHRwOi8vd3d3LmdudS5vcmcvY29weWxlZnQvZ3BsLmh0bWwgRnJlZWx5IGF2YWlsYWJsZSB1bmRlciBHUEwNCiAqLyANCg0KaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0X3RlbXBsYXRlJ10gKSApDQogIHsNCiAgICAkdGhpcy0+U2V0VGVtcGxhdGUoJ2Zvcm1fdGVtcGxhdGUnLCRwYXJhbXNbJ2lucHV0X3RlbXBsYXRlJ10pOw0KICB9DQoNCiRwYXJhbXNbJ2FjdGl2ZV90YWInXSA9ICd0ZW1wbGF0ZSc7DQokdGhpcy0+UmVkaXJlY3QoICRpZCwgJ2RlZmF1bHRhZG1pbicsICRyZXR1cm5pZCwgJHBhcmFtcyApOw0KLy8gRU9GDQo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.ajax.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIE1vZHVsZTogUGF5UGFsQnV0dG9uTWFrZXIgLSBQYXlQYWwgQnV0dG9uIENyZWF0b3IgYW5kIE1hbmFnZXIgDQojIE1vZCBkZXNpZ25lZCBieSBqZXJlbXlCYXNzIChqZXJlbXlCYXNzQGNhYmxlb25lLm5ldCkNCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpDQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnDQojIFRoZSBtb2R1bGUncyBob21lcGFnZSBpczogaHR0cDovL2Rldi5jbXNtYWRlc2ltcGxlLm9yZy9wcm9qZWN0cy9QYXlQYWxCdXR0b25NYWtlci8NCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5DQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5DQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yDQojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uDQojDQojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLA0KIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZg0KIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlDQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuDQojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlDQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlDQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBDQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwNCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQoNCi8vaWYgKCFpc3NldChjbXNtcygpKSkgZXhpdDsNCi8vLy8vLy0tLS0tYnV0dG9uIHZhcnMNCmlmKGlzc2V0KCRwYXJhbXNbJ0Rlc2NyaXB0aW9uJ10pKXsNCgkkZGlzPSR0aGlzLT5MYW5nKCRwYXJhbXNbJ0Rlc2NyaXB0aW9uJ10pOw0KCWVjaG8gICI8c3BhbiBpZD1cIkRJU0NSUFwiPiIuJGRpcy4iPC9zcGFuPiI7DQoJZXhpdDsNCn0NCg0KaWYoaXNzZXQoJHBhcmFtc1snZnVuY3Rpb24nXSkpew0KCSRmdW5jdGlvbklTID0kcGFyYW1zWydmdW5jdGlvbiddOyANCgkkcGFyYW1hPSBpc3NldCgkcGFyYW1zWydwYXJhbWEnXSkgPyBleHBsb2RlKCcsJywkcGFyYW1zWydwYXJhbWEnXSk6Jyc7DQoJIGVjaG8gY2FsbF91c2VyX2Z1bmNfYXJyYXkoYXJyYXkoJHRoaXMsICRmdW5jdGlvbklTKSwgJHBhcmFtYSk7IA0KDQoJZXhpdDsNCn0NCg0KDQovL2lmKGlzc2V0KCRwYXJhbXNbJ2Z1bmN0aW9uJ10pKXsNCi8vCSRmdW5jdGlvbklTID0kcGFyYW1zWydmdW5jdGlvbiddOyANCi8vCSRwYXJhbWE9IGlzc2V0KCRwYXJhbXNbJ3BhcmFtYSddKSA/ICRwYXJhbXNbJ3BhcmFtYSddOicnOw0KLy8JZWNobyAkdGhpcy0+JGZ1bmN0aW9uSVMoJHBhcmFtYSk7DQovLwlleGl0Ow0KLy99DQoNCj8+DQo=]]></data>
	</file>
	<file>
	  <filename>/action.bodytag.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCi8qKg0KICogTW9kdWxlOiBTY3JpcHREZXBsb3kgLSBNaW5pZnkgYW5kIGRlcGxveW1lbnQgb2YgSlMgQ1NTIGFuZCBIVE1MDQogKiANCiAqIA0KICogQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykNCiAqIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnDQogKiBUaGUgbW9kdWxlJ3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvc2NyaXB0ZGVwbG95Lw0KICogDQogKiBAcGFja2FnZSBTY3JpcHREZXBsb3kNCiAqIEBhdXRob3IgamVyZW15QmFzcyA8amVyZW15QmFzc0BjYWJsZW9uZS5uZXQ+DQogKiBAY29weXJpZ2h0IEplcmVteSBCYXNzDQogKiBAbGljZW5zZSBodHRwOi8vd3d3LmdudS5vcmcvY29weWxlZnQvZ3BsLmh0bWwgRnJlZWx5IGF2YWlsYWJsZSB1bmRlciBHUEwNCiAqLyANCg0KJGNvb2tpZW5hbWUgPSAnY21zX3N0eWxlbmFtZSc7DQokZHVyYXRpb24gICA9ICcnOw0KDQppZiggaXNzZXQoJHBhcmFtc1snY29va2llbmFtZSddKSApDQogIHsNCiAgICAkY29va2llbmFtZSA9IHRyaW0oJHBhcmFtc1snY29va2llbmFtZSddKTsNCiAgfQ0KaWYoIGlzc2V0KCRwYXJhbXNbJ2R1cmF0aW9uJ10pICkNCiAgew0KICAgICRkdXJhdGlvbiA9IChpbnQpJHBhcmFtc1snZHVyYXRpb24nXTsNCiAgfQ0KDQokZm10ID0gJzxib2R5IG9ubG9hZD0idXNlU3R5bGVBZ2FpbihcJyVzXCcpOyIgb251bmxvYWQ9InJlbWVtYmVyU3R5bGUoXCclc1wnLCVkKTsiPic7DQokdHh0ID0gc3ByaW50ZigkZm10LCRjb29raWVuYW1lLCRjb29raWVuYW1lLCRkdXJhdGlvbik7DQplY2hvICR0eHQ7DQoNCi8vIEVPRg0KPz4NCg==]]></data>
	</file>
	<file>
	  <filename>/action.CSSreport.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCg0KaW5jbHVkZSgiQ1NTVHJlZS5pbmMucGhwIik7DQppZiAoRkFMU0UgPT0gZW1wdHkoJHBhcmFtc1snYWN0aXZlX3RhYiddKSl7DQoJJHRhYiA9ICRwYXJhbXNbJ2FjdGl2ZV90YWInXTsNCn0gZWxzZSB7DQoJJHRhYiA9ICcnOw0KfQ0KJHRhYklzPTA7DQppZiAoJHRhYj09InNjcmlwdF90ZW1wbGF0ZSIpeyR0YWJJcz0wO30NCmlmICgkdGFiPT0idGVtcGxhdGVfbWFuZyIpeyR0YWJJcz0xO30NCmlmICgkdGFiPT0iaHRtbHNldHRpbmdzIil7JHRhYklzPTI7fQ0KaWYgKCR0YWI9PSJWYWxzZXR0aW5ncyIpeyR0YWJJcz0zO30NCmlmICgkdGFiPT0ib3B0aW9ucyIpeyR0YWJJcz00O30NCiRwYXlsb2FkPSAnPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uKCl7JCgidWwudGFiZXJzIikudGFicygiZGl2LlRhYnBhbmVzID4gZGl2LnBhbmUiLCB7ZWZmZWN0OiAiZmFkZSIsIGZhZGVPdXRTcGVlZDogMjAwLCBpbml0aWFsSW5kZXg6Jy4kdGFiSXMuJywgb25DbGljazpmdW5jdGlvbihldmVudCwgdGFiSW5kZXgpIHtpZiAoJCgiLnBhZ2VtZXNzYWdlIikubGVuZ3RoID4gMCl7JCgiLnBhZ2VtZXNzYWdlIikuY2xvc2VzdCgiLnBhZ2VtY29udGFpbmVyIikuZmFkZU91dCgzNTAwLGZ1bmN0aW9uKCl7JCgiLnBhZ2VtZXNzYWdlIikuY2xvc2VzdCgiLnBhZ2VtY29udGFpbmVyIikucmVtb3ZlKCk7fSk7fX19KTskKCJ1bC50YWJlcnMyIikudGFicygiZGl2LlRhYnBhbmVzMiA+IGRpdi5wYW5lIiwge2VmZmVjdDogImZhZGUiLCBmYWRlT3V0U3BlZWQ6IDIwMCwgaW5pdGlhbEluZGV4OicuJHRhYklzLicsIG9uQ2xpY2s6ZnVuY3Rpb24oZXZlbnQsIHRhYkluZGV4KSB7aWYgKCQoIi5wYWdlbWVzc2FnZSIpLmxlbmd0aCA+IDApeyQoIi5wYWdlbWVzc2FnZSIpLmNsb3Nlc3QoIi5wYWdlbWNvbnRhaW5lciIpLmZhZGVPdXQoMzUwMCxmdW5jdGlvbigpeyQoIi5wYWdlbWVzc2FnZSIpLmNsb3Nlc3QoIi5wYWdlbWNvbnRhaW5lciIpLnJlbW92ZSgpO30pO319fSk7IH0pOzwvc2NyaXB0Pic7DQovLy8vIGR1bW15IGRhdGEgDQovLyRkZGF0YT1hcnJheSgiYm9yZGVyIj0+IjFweCBzb2xpZCBibGFjayIpOw0KLy8kZGRhdGEyPWFycmF5KCJib3JkZXIiPT4iMnB4IHNvbGlkIHNpbHZlciIpOw0KDQovLyBjc3NmaWxlIHRvIHJlYWQgZnJvbSANCg0KDQovLyBpbml0IHRoZSB0cmVlIChUcmVlLmluYy5waHApLCBhdmFpbGFibGUgZnJvbToNCi8vIGh0dHA6Ly93d3cucGhwY2xhc3Nlcy5vcmcvYnJvd3NlL3BhY2thZ2UvMjgxNy5odG1sDQoNCiRudWxsPW51bGw7DQokdHJlZSA9IG5ldyBDU1NUcmVlKCRudWxsLCIiKTsNCg0KDQoNCiRwYXlsb2FkLj0nPHVsIGNsYXNzPSJ0YWJlcnMiPg0KCTxsaT48YSBocmVmPSIjRXh0cmFjdGVkIj5FeHRyYWN0ZWQgVXJsczwvYT48L2xpPg0KCTxsaT48YSBocmVmPSIjUmVuZGVyZWQiPlJlbmRlcmVkIENTUzwvYT48L2xpPg0KCTxsaT48YSBocmVmPSIjU3RydWN0dXJlIj5TdHJ1Y3R1cmU8L2E+PC9saT4NCgk8bGk+PGEgaHJlZj0iI2NvbnRlbnQiPkZpbGUgY29udGVudDwvYT48L2xpPg0KPC91bD4nOw0KDQokY3NzPWZpbGVfZ2V0X2NvbnRlbnRzKCRjc3NmaWxlKTsNCgkvLyBwYXJzZSB0aGUgY3NzLWZpbGUgYW5kIGdlbmVyYXRlIHRyZWUgc3RydWN0dXJlIA0KCSR0cmVlPSR0cmVlLT5wYXJzZUZpbGUoJGNzc2ZpbGUpOw0KJHBheWxvYWQuPSAnPGRpdiBjbGFzcz0iVGFicGFuZXMiIGlkPSJQUEJNIj4NCgk8ZGl2IGNsYXNzPSJwYW5lIiA+JzsNCg0KCSRwYXlsb2FkLj0gJzxoMj5FeHRyYWN0ZWQgdXJsczwvaDI+JzsNCgkNCgkkY3NzX3VybHM9JHRoaXMtPmV4dHJhY3RfY3NzX3VybHMoJGNzcyk7DQoJZm9yZWFjaCgkY3NzX3VybHNbJ3Byb3BlcnR5J10gYXMgJGtleT0+JGNzc191cmwpew0KCQkkYWRqS2V5PSRrZXkrMTsNCgkJCSRwYXlsb2FkLj0gJGFkaktleS4nIC0gJy4kY3NzX3VybC4nPGJyLz4nOwkNCgl9CQ0KCQ0KDQoJDQokcGF5bG9hZC49ICc8L2Rpdj4NCjxkaXYgY2xhc3M9InBhbmUiPic7DQoNCgkkcGF5bG9hZC49ICc8aDI+UmVuZGVyZWQgQ1NTPC9oMj4nOw0KCSRwYXlsb2FkLj0gJzxwcmU+JzsNCgkkcGF5bG9hZC49ICR0cmVlLT5yZW5kZXJDU1NBbGwoKTsNCgkkcGF5bG9hZC49ICc8L3ByZT4nOw0KCQ0KJHBheWxvYWQuPSAnPC9kaXY+DQo8ZGl2IGNsYXNzPSJwYW5lIj4nOw0KCSRwYXlsb2FkLj0gJzxoMj5TdHJ1Y3R1cmU8L2gyPic7DQoJJHBheWxvYWQuPSAnPHByZT4nOw0KCSRwYXlsb2FkLj0gJHRyZWUtPmVjaG9TdHJ1Y3R1cmUoKTsNCgkkcGF5bG9hZC49ICc8L3ByZT4nOw0KDQokcGF5bG9hZC49ICc8L2Rpdj4NCgkJPGRpdiBjbGFzcz0icGFuZSI+JzsNCg0KCQ0KCSRwYXlsb2FkLj0gJzxoMj5GaWxlIGNvbnRlbnQ8L2gyPic7DQoJJHBheWxvYWQuPSAnPGRpdiAgc3R5bGU9IndpZHRoOjYwMHB4OyI+JzsNCgkkcGF5bG9hZC49ZmlsZV9nZXRfY29udGVudHMoJGNzc2ZpbGUpOw0KCSRwYXlsb2FkLj0gJzwvZGl2Pic7DQoJDQoJICAkcGF5bG9hZC49ICc8L2Rpdj4NCjwvZGl2Pic7DQoNCi8vIGFkZCBzb21lIGNoaWxkcw0KLy8kdG1wPSYkdHJlZS0+YWRkQ2hpbGQoJ2N1c3RvbTEnLCRkZGF0YSk7DQovLyR0bXA9JiR0bXAtPmFkZENoaWxkKCdjdXN0b20yJywkZGRhdGEyKTsNCg0KDQoNCi8vZWNobyAnPGgyPl9fX19fcmVuZGVyQ1NTUHJvcGVydGllc19fX19fXzwvaDI+JzsNCi8vZWNobyAnPHA+VGhpcyBpcyB3aGF0IHlvdSBuZWVkIGZvciB0YWdzICgmbHQ7ZGl2IHN0eWxlPSIiJmd0Oyk8L3A+JzsNCi8vZWNobyAnPHByZT4nOw0KLy9lY2hvICR0bXAtPnJlbmRlckNTU1Byb3BlcnRpZXMoKTsNCi8vZWNobyAnPC9wcmU+JzsNCi8vDQovL2VjaG8gJzxoMj5fX19fX3JlbmRlckNTUygpX19fX19fPC9oMj4nOw0KLy9lY2hvICc8cD5UaGlzIGlzIHdoYXQgeW91IG5lZWQgaW4gdGhlIGhlYWRlciBzZWN0aW9uICZsdDtzdHlsZSZndDs8L3A+JzsNCi8vZWNobyAnPHByZT4nOw0KLy9lY2hvICR0bXAtPnJlbmRlckNTUygpOw0KLy9lY2hvICc8L3ByZT4nOw0KDQoNCiR0aGlzLT5zbWFydHktPmFzc2lnbigncmVwb3J0JywkcGF5bG9hZCk7ICANCg0KPz4NCg==]]></data>
	</file>
	<file>
	  <filename>/action.default.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCi8qKg0KICogTW9kdWxlOiBTY3JpcHREZXBsb3kgLSBNaW5pZnkgYW5kIGRlcGxveW1lbnQgb2YgSlMgQ1NTIGFuZCBIVE1MDQogKiANCiAqIA0KICogQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykNCiAqIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnDQogKiBUaGUgbW9kdWxlJ3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvc2NyaXB0ZGVwbG95Lw0KICogDQogKiBAcGFja2FnZSBTY3JpcHREZXBsb3kNCiAqIEBhdXRob3IgamVyZW15QmFzcyA8amVyZW15QmFzc0BjYWJsZW9uZS5uZXQ+DQogKiBAY29weXJpZ2h0IEplcmVteSBCYXNzDQogKiBAbGljZW5zZSBodHRwOi8vd3d3LmdudS5vcmcvY29weWxlZnQvZ3BsLmh0bWwgRnJlZWx5IGF2YWlsYWJsZSB1bmRlciBHUEwNCiAqLyANCi8vaWYgKCFpc3NldChjbXNtcygpKSkgZXhpdDsNCiAvLyR0aGlzLT5BZGRFdmVudEZvcm0oJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQpOw0KCS8vDQoJJGNvbmZpZyA9IGNtc21zKCktPkdldENvbmZpZygpOyANCglpZihpc3NldCgkcGFyYW1zWydzY3JpcHRJRCddKSl7DQoJCSRJRD0kcGFyYW1zWydzY3JpcHRJRCddOw0KCQkkU0R0eXBlPSJzY3JpcHRJRCI7DQoJfWVsc2VpZihpc3NldCgkcGFyYW1zWydncm91cElEJ10pKXsNCgkJJElEPSRwYXJhbXNbJ2dyb3VwSUQnXTsJDQoJCSRTRHR5cGU9Imdyb3VwSUQiOw0KCX0NCg0KCSRTdHlwZT0gaXNzZXQoJHBhcmFtc1snU3R5cGUnXSkgPyAkcGFyYW1zWydTdHlwZSddOicnOw0KCSRmaWxlbmFtZT0kY29uZmlnWydyb290X3BhdGgnXS4iL3VwbG9hZHMvbGliL1NELXRlbXAvJFNEdHlwZS8kSUQuIi5zdHJ0b2xvd2VyKCRTdHlwZSk7CQ0KDQoJaWYoZmlsZV9leGlzdHMoJGZpbGVuYW1lKSl7aWYoJHRoaXMtPkdldFByZWZlcmVuY2UoJ2RlYnVnSVQnKT09dHJ1ZSl7dW5saW5rICgkZmlsZW5hbWUpO319DQoJJGR5bmFtaWM9IGlzc2V0KCRwYXJhbXNbJ2R5bmFtaWMnXSkgPyAkcGFyYW1zWydkeW5hbWljJ106ZmFsc2U7DQoJaWYoIWZpbGVfZXhpc3RzKCRmaWxlbmFtZSl8fCRkeW5hbWljKXsNCgkJJFNtYXJ0eU9uPSBpc3NldCgkcGFyYW1zWydzbWFydHknXSkgPyAkcGFyYW1zWydzbWFydHknXTp0cnVlOw0KCQkkTWluaWZ5PSBpc3NldCgkcGFyYW1zWydtaW5pZnknXSkgPyAkcGFyYW1zWydtaW5pZnknXTp0cnVlOw0KCQkkUHJvY2Nlc3MgPSBuZXcgc2NyaXB0UHJvY2Vzc2luZygpOw0KCQkkZGF0YT0kUHJvY2Nlc3MtPlByb2NjZXNzU0QoJElELCRTRHR5cGUsJFNtYXJ0eU9uLCRNaW5pZnksJFN0eXBlKTsNCgkJJGV2ZW50PSRkYXRhWzBdOw0KCQlpZighZmlsZV9leGlzdHMoJGNvbmZpZ1sncm9vdF9wYXRoJ10uIi91cGxvYWRzL2xpYi9TRC10ZW1wLyIuJFNEdHlwZSkpe21rZGlyKCRjb25maWdbJ3Jvb3RfcGF0aCddLiIvdXBsb2Fkcy9saWIvU0QtdGVtcC8iLiRTRHR5cGUsIDA3NzcsIHRydWUpO30NCgkJDQoJCSRvdXJGaWxlTmFtZSA9ICRmaWxlbmFtZTsNCgkJJG91ckZpbGVIYW5kbGUgPSBmb3Blbigkb3VyRmlsZU5hbWUsICd3Jykgb3IgZGllKCJjYW4ndCBvcGVuIGZpbGUiKTsNCgkJZmNsb3NlKCRvdXJGaWxlSGFuZGxlKTsNCgkJLy8gR0VUIExFTkdUSCwgQU5EIFNUT1JFIERBVEEgVE8gT1VSIFNFUlZFUiAoT1IgREFUQSBCQVNFKQ0KCQkkbGVuID0gc3RybGVuKCRldmVudCk7DQoJCSRjaGsgPSBmaWxlX3B1dF9jb250ZW50cygkZmlsZW5hbWUsICRldmVudCk7DQoJCS8vIFRFU1QgRk9SIFNVQ0NFU1NGVUwgU1RPUkFHRQ0KCQlpZiAoJGxlbiE9JGNoaykgZGllKCJMRU5HVEggTUlTTUFUQ0giKTsNCgkJaWYoJHRoaXMtPkdldFByZWZlcmVuY2UoJ2xvY2tmaWxlcycpKXtjaG1vZCgkZmlsZW5hbWUsIDA2NDQpO30NCgl9DQoJJG5vT3V0UHV0ID0gaXNzZXQoJHBhcmFtc1snbm9PdXRQdXQnXSkgPyAkcGFyYW1zWydub091dFB1dCddOmZhbHNlOw0KCWlmKCRub091dFB1dD09ZmFsc2Upew0KCQkvLyRhc3NpZ24gPSBpc3NldCgkcGFyYW1zWydhc3NpZ24nXSkgPyAkcGFyYW1zWydhc3NpZ24nXTonJzsNCgkJJGNhY2hlQnVzdGVyPSBpc3NldCgkcGFyYW1zWydjYWNoZV9idXN0ZXInXSkgPyAkcGFyYW1zWydjYWNoZV9idXN0ZXInXTokdGhpcy0+R2V0UHJlZmVyZW5jZSgnY2FjaGVCdXN0ZXInLHRydWUpOw0KCQkkZnNpemUgPSBpc3NldCgkcGFyYW1zWydmc2l6ZSddKSA/ICRwYXJhbXNbJ2ZzaXplJ106ZmFsc2U7DQoJCQ0KCQkNCgkJJEdyb290VVJMPSR0aGlzLT5HZXRQcmVmZXJlbmNlKCdyb290VVJMJywkY29uZmlnWydyb290X3VybCddKTsNCgkJJFRBR3Jvb3RVcmwgPSBpc3NldCgkcGFyYW1zWydyb290J10pID8gJHBhcmFtc1sncm9vdCddIDogJyc7DQoJCSRyb290VXJsPSR0aGlzLT5HZXRQcmVmZXJlbmNlKCRJRC4nLXJvb3RVUkwtU0QnLCcnKTsNCgkJaWYoJFRBR3Jvb3RVcmwhPScnKXsNCgkJCSRyb290VXJsPSRUQUdyb290VXJsOw0KCQl9ZWxzZWlmKCRyb290VXJsIT0nJyl7DQoJCQlpZiAoc3Vic3RyKCRyb290VXJsLCAtMSk9PSIvIil7JHJvb3RVcmw9cnRyaW0oJHJvb3RVcmwsICcvJyk7fQ0KCQkJJHJvb3RVcmw9JHJvb3RVcmw7DQoJCX1lbHNlaWYoJEdyb290VVJMIT0nJyl7DQoJCQlpZiAoc3Vic3RyKCRHcm9vdFVSTCwgLTEpPT0iLyIpeyRHcm9vdFVSTD1ydHJpbSgkR3Jvb3RVUkwsICcvJyk7fQ0KCQkJJHJvb3RVcmw9JEdyb290VVJMOw0KCQl9ZWxzZXsNCgkJCSRyb290VXJsPSRjb25maWdbJ3Jvb3RfdXJsJ107DQoJCX0NCgkJaWYgKHN1YnN0cigkcm9vdFVybCwgLTEpPT0iLyIpeyRyb290VXJsPXJ0cmltKCRyb290VXJsLCAnLycpO30NCg0KCQkkVVJMPSBpc3NldCgkcGFyYW1zWyd1cmwnXSkgPyAkcGFyYW1zWyd1cmwnXTpmYWxzZTsNCgkJJGZpbGVMSU5LPSRyb290VXJsLiIvdXBsb2Fkcy9saWIvU0QtdGVtcC8iLiRTRHR5cGUuIi8iLiRJRC4iLiIuc3RydG9sb3dlcigkU3R5cGUpOw0KCQlpZigkY2FjaGVCdXN0ZXI9PXRydWUpew0KCQkJJGZpbGVMSU5LPSRmaWxlTElOSy4iPyIuZmlsZW10aW1lKCRmaWxlbmFtZSk7DQoJCX0NCgkJJFRhZz0nJzsNCgkJDQoJCSRpbXBvcnQgPSBpc3NldCgkcGFyYW1zWydpbXBvcnQnXSkgPyAkcGFyYW1zWydpbXBvcnQnXTpmYWxzZTsNCgkJJGR1bXAgPSBpc3NldCgkcGFyYW1zWydkdW1wJ10pID8gJHBhcmFtc1snZHVtcCddOmZhbHNlOw0KCQlpZigkU3R5cGU9PSdKUycpew0KCQkJJFRhZz0nPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iJy4kZmlsZUxJTksuJyI+PC9zY3JpcHQ+JzsNCgkJfWVsc2VpZigkU3R5cGU9PSdDU1MnKXsNCgkJCSRNZWRpYVR5cGUgPSBpc3NldCgkcGFyYW1zWydtZWRpYV90eXBlJ10pID8gJHBhcmFtc1snbWVkaWFfdHlwZSddOiAkdGhpcy0+R2V0UHJlZmVyZW5jZSgkSUQuJy1NZWRpYVR5cGUtU0QnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCd1c2VybWVkaXVtJywnQWxsJykpOw0KCQkJaWYoJGR1bXApew0KCQkJCWVjaG8gZmlsZV9nZXRfY29udGVudHMoJGZpbGVMSU5LKTsgDQoJCQl9ZWxzZXsNCgkJCQlpZighJGltcG9ydCl7DQoJCQkJCSRUYWc9JzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgbWVkaWE9IicuJE1lZGlhVHlwZS4nIiB0eXBlPSJ0ZXh0L2NzcyIgaHJlZj0iJy4kZmlsZUxJTksuJyIgLz4nOw0KCQkJCX1lbHNlaWYoJGltcG9ydD09J2luX3NjcmlwdCcpew0KCQkJCQkkVGFnPSdAaW1wb3J0ICInLiRmaWxlTElOSy4nIjsnOw0KCQkJCX1lbHNlew0KCQkJCQkkVGFnPSc8c3R5bGUgdHlwZT0idGV4dC9jc3MiPkBpbXBvcnQgdXJsKCcuJGZpbGVMSU5LLicpICcuJE1lZGlhVHlwZS4nOzwvc3R5bGU+JzsNCgkJCQl9DQoJCQl9DQoJCX0NCgkJLy9lY2hvICRmaWxlTElOSzsNCgkJaWYoJFVSTD09ZmFsc2Upew0KCQkJLy9pZigkYXNzaWduIT0nJyl7JHRoaXMtPnNtYXJ0eS0+YXNzaWduKCRhc3NpZ24sJFRhZyk7DQoJCQkvL31lbHNlew0KCQkJCWVjaG8gJFRhZzsNCgkJCS8vfQ0KCQl9ZWxzZXsNCgkJCS8vaWYoJGFzc2lnbiE9JycpeyR0aGlzLT5zbWFydHktPmFzc2lnbigkYXNzaWduLCRmaWxlTElOSyk7CQkJDQoJCQkvL31lbHNlew0KCQkJCWlmKCRmc2l6ZT09dHJ1ZSl7DQoJCQkJCWVjaG8gJHRoaXMtPlNpemVJdFVwKGZpbGVzaXplKCRmaWxlbmFtZSkpOw0KCQkJCX1lbHNlew0KCQkJCQllY2hvICRmaWxlTElOSzsNCgkJCQl9DQoJCQkvL30NCgkJfQ0KCX0NCj8+DQo=]]></data>
	</file>
	<file>
	  <filename>/action.defaultadmin.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCi8qKg0KICogTW9kdWxlOiBTY3JpcHREZXBsb3kgLSBNaW5pZnkgYW5kIGRlcGxveW1lbnQgb2YgSlMgQ1NTIGFuZCBIVE1MDQogKiANCiAqIA0KICogQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykNCiAqIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnDQogKiBUaGUgbW9kdWxlJ3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvc2NyaXB0ZGVwbG95Lw0KICogDQogKiBAcGFja2FnZSBTY3JpcHREZXBsb3kNCiAqIEBhdXRob3IgamVyZW15QmFzcyA8amVyZW15QmFzc0BjYWJsZW9uZS5uZXQ+DQogKiBAY29weXJpZ2h0IEplcmVteSBCYXNzDQogKiBAbGljZW5zZSBodHRwOi8vd3d3LmdudS5vcmcvY29weWxlZnQvZ3BsLmh0bWwgRnJlZWx5IGF2YWlsYWJsZSB1bmRlciBHUEwNCiAqLyANCi8vLy9pZiAoIWlzc2V0KGNtc21zKCkpKSBleGl0Ow0KJGNvbmZpZyA9IGNtc21zKCktPkdldENvbmZpZygpOyANCg0KDQoJJGRpciA9ICRjb25maWdbJ3Jvb3RfdXJsJ107DQoJJEFkbWluZGlyID0gJGRpci4nLycuJGNvbmZpZ1snYWRtaW5fZGlyJ107DQoNCiMNCiNUaGUgdGFiIGhlYWRlcnMNCiMNCi8vZWNobyAkdGhpcy0+anNOY3NzKCk7DQoNCmVjaG8gJzxkaXYgaWQ9ImRlbW90aXAiPjxpbWcgY2xhc3M9InByb2dyZXNzIiBzcmM9IicuJGRpci4nL21vZHVsZXMvU2NyaXB0RGVwbG95L2ltYWdlcy9sb2FkaW5nLmdpZiIgYWx0PSIiLz48L2Rpdj4nOw0KDQppZiAoRkFMU0UgPT0gZW1wdHkoJHBhcmFtc1snYWN0aXZlX3RhYiddKSl7DQoJJHRhYiA9ICRwYXJhbXNbJ2FjdGl2ZV90YWInXTsNCn0gZWxzZSB7DQoJJHRhYiA9ICcnOw0KfQ0KJHRhYklzPTA7DQokdGFiSXMyPTA7DQppZiAoJHRhYj09InNjcmlwdF90ZW1wbGF0ZSIpeyR0YWJJcz0wO30NCmlmICgkdGFiPT0idGVtcGxhdGVfbWFuZyIpeyR0YWJJcz0xO30NCmlmICgkdGFiPT0iVmFsc2V0dGluZ3MiKXskdGFiSXM9Mjt9DQppZiAoJHRhYj09ImltcG9ydEV4cG9ydCIpeyR0YWJJcz0zO30NCmlmICgkdGFiPT0iaHRtbHNldHRpbmdzIil7JHRhYklzPTQ7fQ0KaWYgKCR0YWI9PSJvcHRpb25zIil7JHRhYklzPTU7fQ0KaWYgKCR0YWI9PSJzY3JpcHRzIil7JHRhYklzPTA7JHRhYklzMj0wO30NCmlmICgkdGFiPT0iZ3JvdXBzIil7JHRhYklzPTA7JHRhYklzMj0xO30NCmlmICgkdGFiPT0iY3NzIil7JHRhYklzPTA7JHRhYklzMz0wO30NCmlmICgkdGFiPT0ianMiKXskdGFiSXM9MDskdGFiSXMzPTE7fQ0KDQovL2lmICgkdGFiPT0ic2NyaXB0X3RlbXBsYXRlIil7JHRhYklzPTA7fQ0KLy8vL2lmICgkdGFiPT0idGVtcGxhdGVfbWFuZyIpeyR0YWJJcz0xO30NCi8vaWYgKCR0YWI9PSJodG1sc2V0dGluZ3MiKXskdGFiSXM9Mjt9DQovL2lmICgkdGFiPT0iVmFsc2V0dGluZ3MiKXskdGFiSXM9MTt9DQovL2lmICgkdGFiPT0ib3B0aW9ucyIpeyR0YWJJcz0zO30NCi8vaWYgKCR0YWI9PSJjc3MiKXskdGFiSXM9MDskdGFiSXMyPTA7fQ0KLy9pZiAoJHRhYj09ImpzIil7JHRhYklzPTA7JHRhYklzMj0xO30NCg0KDQplY2hvICc8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChkb2N1bWVudCkucmVhZHkoZnVuY3Rpb24oKXsNCgkkKCJ1bC50YWJlcnMiKS50YWJzKCJkaXYuVGFicGFuZXMgPiBkaXYucGFuZSIsIHsNCgkJCQllZmZlY3Q6ICJkZWZhdWx0IiwNCgkJCQlmYWRlT3V0U3BlZWQ6IDIwMCwNCgkJCQlpbml0aWFsSW5kZXg6Jy4kdGFiSXMuJywNCgkJCQlvbkNsaWNrOmZ1bmN0aW9uKGV2ZW50LCB0YWJJbmRleCkgew0KDQoJCQl9DQoJfSk7DQoJJCgidWwudGFiZXJzMiIpLnRhYnMoImRpdi5UYWJwYW5lczIgPiBkaXYucGFuZSIsIHsNCgkJCQkgZWZmZWN0OiAiZGVmYXVsdCIsDQoJCQkJIGZhZGVPdXRTcGVlZDogMjAwLA0KCQkJCSBpbml0aWFsSW5kZXg6Jy4kdGFiSXMyLicsDQoJCQkJIG9uQ2xpY2s6ZnVuY3Rpb24oZXZlbnQsIHRhYkluZGV4KSB7DQoNCgkJCQkgfQ0KCX0pOw0KfSk7PC9zY3JpcHQ+JzsNCiANCmlmIChGQUxTRSA9PSBlbXB0eSgkcGFyYW1zWydhY3RpdmVfdGFiJ10pICYmIEZBTFNFID09IGVtcHR5KCRwYXJhbXNbJ3RhYl9tZXNzYWdlJ10pKSB7DQoJJG1lc3NhZ2UgPSAkdGhpcy0+U2hvd01lc3NhZ2UoJHRoaXMtPkxhbmcoJHBhcmFtc1sndGFiX21lc3NhZ2UnXSkpOw0KfSBlbHNlIHsNCgkkbWVzc2FnZSA9ICcnOw0KfQ0KZWNobyAkbWVzc2FnZTsNCmlmICgkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdNb2RpZnkgU2l0ZSBQcmVmZXJlbmNlcycpKXsNCmVjaG8nDQo8dWwgY2xhc3M9InRhYmVycyI+DQoJPGxpPjxhIGhyZWY9IiNzY3JpcHRfdGVtcGxhdGUiPicuJHRoaXMtPkxhbmcoJ1NjcmlwdF9saXN0JykuJzwvYT48L2xpPg0KCTxsaT48YSBocmVmPSIjdGVtcGxhdGVfbWFuZyI+Jy4kdGhpcy0+TGFuZygndGVtcGxhdGVfbWFuZycpLic8L2E+PC9saT48IS0tLS0+DQoJPGxpPjxhIGhyZWY9IiNWYWxzZXR0aW5ncyI+Jy4kdGhpcy0+TGFuZygnVmFsc2V0dGluZ3MnKS4nPC9hPjwvbGk+DQoJPGxpPjxhIGhyZWY9IiNpbXBvcnRFeHBvcnQiPicuJHRoaXMtPkxhbmcoJ2ltcG9ydEV4cG9ydCcpLic8L2E+PC9saT4NCgk8bGk+PGEgaHJlZj0iI2h0bWxzZXR0aW5ncyI+Jy4kdGhpcy0+TGFuZygnRGVwbG95bWVudHNldHRpbmdzJykuJzwvYT48L2xpPg0KCTxsaT48YSBocmVmPSIjb3B0aW9ucyI+Jy4kdGhpcy0+TGFuZygnbW9kdWxlX29wdGlvbnMnKS4nPC9hPjwvbGk+DQo8L3VsPiANCic7DQp9DQogIA0KaWYgKCR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBTaXRlIFByZWZlcmVuY2VzJykpDQogIHsNCmVjaG8gJzxkaXYgY2xhc3M9IlRhYnBhbmVzIiBpZD0iUFBCTSI+DQo8ZGl2IGNsYXNzPSJwYW5lIiBzdHlsZT0iZGlzcGxheTpibG9jazsiPic7DQoNCg0KZWNobycNCjx1bCBjbGFzcz0idGFiZXJzMiI+DQo8bGk+PGEgaHJlZj0iI0NTUyI+ICBTaW5nbGUgU2NyaXB0cyAgPC9hPjwvbGk+DQoJPGxpPjxhIGhyZWY9IiNKUyI+ICBHcm91cGVkIFNjcmlwdHMgIDwvYT48L2xpPg0KCQ0KPC91bD4nOw0KZWNobyAnPGRpdiBjbGFzcz0iVGFicGFuZXMyIj48ZGl2IGNsYXNzPSJwYW5lIGFjb3IiICBzdHlsZT0iZGlzcGxheTpibG9jazsiPic7DQoNCg0KCQkJLy8vc2luZ2xlIHNjcmlwdHMNCgkJCWVjaG8gJzxoMj4nLiR0aGlzLT5MYW5nKCd0aXRsZV9TY3JpcHRzJykuJzwvaDI+PCEtLTx1bCBpZD0ic2NyaXB0Q2hvaWNlIj48bGkgaWQ9IlNfQ1NTIiBjbGFzcz0iYWN0aXZlIj5DU1M8L2xpPjxsaSBpZD0iU19KUyI+SlM8L2xpPjwvdWw+LS0+PHNwYW4gc3R5bGU9InBvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjBweDt0b3A6MnB4O2Zsb2F0OnJpZ2h0O3BhZGRpbmctcmlnaHQ6MTVweDttYXJnaW4tYm90dG9tOjBweDtwYWRkaW5nLXRvcDo1cHg7Ij4nLiR0aGlzLT5DcmVhdGVMaW5rKCAkaWQsICdlZGl0X3NjcmlwdCcsICRyZXR1cm5pZCwNCgkJCQkJCQknPGltZyBzcmM9IicuJGRpci4nL21vZHVsZXMvU2NyaXB0RGVwbG95L2ltYWdlcy9hZGQucG5nIiBhbHQ9IicuJHRoaXMtPkxhbmcgKCdwcm9tcHRfbmV3U2NyaXB0JykuJyIgLz4nLiR0aGlzLT5MYW5nKCdwcm9tcHRfbmV3U2NyaXB0JyksDQoJCQkJCQkJIGFycmF5KCdzdGF0dXMnID0+ICduZXcnLCdtb2RlJyA9PiAnYWRkJykpLic8L3NwYW4+JzsNCgkJCQ0KCQkJDQoJCQkNCgkJCQ0KCQkJDQoJCQllY2hvICc8aDM+PHNwYW4+Q1NTPGltZyBzcmM9IicuJGRpci4nL21vZHVsZXMvU2NyaXB0RGVwbG95L2ltYWdlcy9fYmxhbmsucG5nIiBhbHQ9IkNTUyIgLz48L3NwYW4+PC9oMz4nOw0KCQkJZWNobyc8ZGl2IGNsYXNzPSJjb250ZW50IiBzdHlsZT0iZGlzcGxheTpibG9jazsiPic7DQoJCQkkdGhpcy0+X0FkbWluQ3JlYXRlU2NyaXB0TGlzdCgkaWQsJHJldHVybmlkLA0KCQkJCQkJICAnZW1haWwnLA0KCQkJCQkJICAnZGVmYXVsdF9zY3JpcHRfdGVtcGxhdGVfY29udGVudHMnLA0KCQkJCQkJICAnc2NyaXB0X3RlbXBsYXRlJywNCgkJCQkJCSAgJ2N1cnJlbnRfc2NyaXB0X3RlbXBsYXRlJywNCgkJCQkJCSAgJHRoaXMtPkxhbmcoJ3RpdGxlX3NjcmlwdF90ZW1wbGF0ZScpLA0KCQkJCQkJICAnQ1NTJyk7CQ0KCQkJCWVjaG8gJzwvZGl2Pic7ICANCgkJCQkNCgkJCQ0KCQkJDQoJCQkNCgkJCWVjaG8gJzxoMz48c3Bhbj5KUzxpbWcgc3JjPSInLiRkaXIuJy9tb2R1bGVzL1NjcmlwdERlcGxveS9pbWFnZXMvX2JsYW5rLnBuZyIgYWx0PSJKUyIgLz48L3NwYW4+PC9oMz4nOw0KCQkJZWNobyc8ZGl2IGNsYXNzPSJjb250ZW50Ij4nOw0KCQkJJHRoaXMtPl9BZG1pbkNyZWF0ZVNjcmlwdExpc3QoJGlkLCRyZXR1cm5pZCwNCgkJCQkJCQkgICdlbWFpbCcsDQoJCQkJCQkJICAnZGVmYXVsdF9zY3JpcHRfdGVtcGxhdGVfY29udGVudHMnLA0KCQkJCQkJCSAgJ3NjcmlwdF90ZW1wbGF0ZScsDQoJCQkJCQkJICAnY3VycmVudF9zY3JpcHRfdGVtcGxhdGUnLA0KCQkJCQkJCSAgJHRoaXMtPkxhbmcoJ3RpdGxlX3NjcmlwdF90ZW1wbGF0ZScpLA0KCQkJCQkJCSAgJ0pTJyk7DQoJCQkJZWNobyAnPC9kaXY+JzsNCgkJCQkNCgkJCQkNCgkJCQkNCgkJCQkNCgkJCQkNCgkgIGVjaG8gJzwvZGl2PjxkaXYgY2xhc3M9InBhbmUiPic7IA0KICAgICAgCQllY2hvICc8aDI+Jy4kdGhpcy0+TGFuZygndGl0bGVfR3JvdXBzJykuJzwvaDI+PHNwYW4gc3R5bGU9InBvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjBweDt0b3A6MnB4O2Zsb2F0OnJpZ2h0O3BhZGRpbmctcmlnaHQ6MTVweDttYXJnaW4tYm90dG9tOjBweDtwYWRkaW5nLXRvcDo1cHg7Ij4nLiAkdGhpcy0+Q3JlYXRlTGluayggJGlkLCAnZWRpdGFzc2lnbm1lbnQnLCAkcmV0dXJuaWQsJzxpbWcgc3JjPSInLiRkaXIuJy9tb2R1bGVzL1NjcmlwdERlcGxveS9pbWFnZXMvYWRkX2dyb3VwLnBuZyIgYWx0PSInLiR0aGlzLT5MYW5nICgncHJvbXB0X25ld1NjcmlwdCcpLiciIC8+Jy4kdGhpcy0+TGFuZygncHJvbXB0X25ld1NjcmlwdEFzcycpLGFycmF5KCdzdGF0dXMnID0+ICduZXcnLCdtb2RlJyA9PiAnYWRkJykpLic8L3NwYW4+JzsNCgkgIGluY2x1ZGVfb25jZShkaXJuYW1lKF9fRklMRV9fKS4nL2Z1bmN0aW9uLmFkbWluX2dyb3VwbGlzdF90YWIucGhwJyk7DQoJICBlY2hvICc8L2Rpdj48L2Rpdj4nOw0KDQoNCg0KZWNobyAnPC9kaXY+DQo8ZGl2IGNsYXNzPSJwYW5lIj4nOw0KCQkJZWNobyAnPGgzPjxzcGFuPk1haW4gVGVtcGxhdGVzIChIVE1MKTxpbWcgc3JjPSInLiRkaXIuJy9tb2R1bGVzL1NjcmlwdERlcGxveS9pbWFnZXMvX2JsYW5rLnBuZyIgYWx0PSJIVE1MIiAvPjwvc3Bhbj48L2gzPic7DQoJCQllY2hvJzxkaXYgY2xhc3M9ImNvbnRlbnQiIHN0eWxlPSJkaXNwbGF5OmJsb2NrOyI+JzsNCmluY2x1ZGVfb25jZShkaXJuYW1lKF9fRklMRV9fKS4nL2Z1bmN0aW9uLmFkbWluX2Fzc29jaWF0aW9uc3RhYi5waHAnKTsNCgkJCWVjaG8nPC9kaXY+JzsNCgkJCQ0KZWNobyAnPC9kaXY+PCEtLS0tPg0KPGRpdiBjbGFzcz0icGFuZSI+JzsNCiAgICBpbmNsdWRlX29uY2UoZGlybmFtZShfX0ZJTEVfXykuJy9mdW5jdGlvbi5hZG1pbl9WYWx0YWIucGhwJyk7DQoJCQkNCmVjaG8gJzwvZGl2Pg0KPGRpdiBjbGFzcz0icGFuZSI+JzsNCiAgICBpbmNsdWRlX29uY2UoZGlybmFtZShfX0ZJTEVfXykuJy9mdW5jdGlvbi5hZG1pbl9pbXBvcnRFeHBvcnRfdGFiLnBocCcpOw0KCQ0KZWNobyAnPC9kaXY+DQo8ZGl2IGNsYXNzPSJwYW5lIj4nOw0KICAgIGluY2x1ZGVfb25jZShkaXJuYW1lKF9fRklMRV9fKS4nL2Z1bmN0aW9uLmFkbWluX2RlcGxveW1lbnRfdGFiLnBocCcpOw0KDQplY2hvICc8L2Rpdj4NCjxkaXYgY2xhc3M9InBhbmUiPic7DQogICAgaW5jbHVkZV9vbmNlKGRpcm5hbWUoX19GSUxFX18pLicvZnVuY3Rpb24uYWRtaW5fbW9kdWxlX29wdGlvbnN0YWIucGhwJyk7DQoJICBlY2hvICc8L2Rpdj4NCgk8L2Rpdj4nOw0KfQ0KDQoNCg0KDQoNCg0KDQoNCg0KDQoNCg0KDQoNCg0KDQojIHZpbTp0cz00IHN3PTQgbm9ldA0KPz4NCg==]]></data>
	</file>
	<file>
	  <filename>/action.deleteassignment.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCi8qKg0KICogTW9kdWxlOiBTY3JpcHREZXBsb3kgLSBNaW5pZnkgYW5kIGRlcGxveW1lbnQgb2YgSlMgQ1NTIGFuZCBIVE1MDQogKiANCiAqIA0KICogQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykNCiAqIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnDQogKiBUaGUgbW9kdWxlJ3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvc2NyaXB0ZGVwbG95Lw0KICogDQogKiBAcGFja2FnZSBTY3JpcHREZXBsb3kNCiAqIEBhdXRob3IgamVyZW15QmFzcyA8amVyZW15QmFzc0BjYWJsZW9uZS5uZXQ+DQogKiBAY29weXJpZ2h0IEplcmVteSBCYXNzDQogKiBAbGljZW5zZSBodHRwOi8vd3d3LmdudS5vcmcvY29weWxlZnQvZ3BsLmh0bWwgRnJlZWx5IGF2YWlsYWJsZSB1bmRlciBHUEwNCiAqLyANCg0KaWYoISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBUZW1wbGF0ZXMnKSl7DQogICAgLy8gdG9kbywgcGVybWlzc2lvbnMgbWVzc2FnZSBoZXJlDQogICAgcmV0dXJuOw0KICB9DQoNCg0KICANCiRHcm91cHRTZXQ9JHBhcmFtc1snR3JvdXB0U2V0J107DQoNCgkJJGRiID0gY21zbXMoKS0+ZGI7DQoJICAJJHF1ZXJ5ID0gIkRFTEVURSBzZEcsIGdhIEZST00gIi5TRF9HUk9VUC4iIEFTIHNkRyAiDQoJCQkJCS4iSU5ORVIgam9pbiAgIi5TRF9HUk9VUEFTU0lHTk1FTlQuIiBBUyBnYSBPTiBnYS5Hcm91cHRTZXRJRCA9IHNkRy5JRCAiDQoJCQkJCS4iV0hFUkUgc2RHLklEID0gJyIuJEdyb3VwdFNldC4iJyI7DQoJCSRyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5KTsNCgkJDQoJCSRxdWVyeSA9ICJERUxFVEUgc2RHIEZST00gIi5TRF9HUk9VUC4iIEFTIHNkRyAiDQoJCQkJCS4iV0hFUkUgc2RHLklEID0gJyIuJEdyb3VwdFNldC4iJyI7DQoJCSRyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5KTsNCgkJDQoJCWlmKCEkcmVzdWx0KXsNCgkJCWVjaG8gJ0Vycm9yOiAnLm15c3FsX2Vycm9yKCk7DQoJCQkkcGFyYW1zWydtZXNzYWdlJ10gPSBteXNxbF9lcnJvcigpOw0KCQkJDQoJCX1lbHNlew0KDQoJCQkkcGFyYW1zWydtZXNzYWdlJ10gPSBteXNxbF9lcnJvcigpOw0KCQkJDQoJCX0NCgkJDQoJCQ0KCQkNCgkJLy8kdGhpcy0+bXlSZWRpcmVjdFRvVGFiKCRpZCwgJ3VwbG9hZGZvcm1fdGVtcGxhdGUnKTsNCgkJJHBhcmFtcyA9IGFycmF5KCd0YWJfbWVzc2FnZSc9PiAnQnRuREVMRVRFRCcsICdhY3RpdmVfdGFiJyA9PiAndGVtcGxhdGVfbWFuZycpOw0KCQkkdGhpcy0+UmVkaXJlY3QoJGlkLCAnZGVmYXVsdGFkbWluJywgJycsICRwYXJhbXMpOw0KPz4=]]></data>
	</file>
	<file>
	  <filename>/action.delete_script.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCi8qKg0KICogTW9kdWxlOiBTY3JpcHREZXBsb3kgLSBNaW5pZnkgYW5kIGRlcGxveW1lbnQgb2YgSlMgQ1NTIGFuZCBIVE1MDQogKiANCiAqIA0KICogQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykNCiAqIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnDQogKiBUaGUgbW9kdWxlJ3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvc2NyaXB0ZGVwbG95Lw0KICogDQogKiBAcGFja2FnZSBTY3JpcHREZXBsb3kNCiAqIEBhdXRob3IgamVyZW15QmFzcyA8amVyZW15QmFzc0BjYWJsZW9uZS5uZXQ+DQogKiBAY29weXJpZ2h0IEplcmVteSBCYXNzDQogKiBAbGljZW5zZSBodHRwOi8vd3d3LmdudS5vcmcvY29weWxlZnQvZ3BsLmh0bWwgRnJlZWx5IGF2YWlsYWJsZSB1bmRlciBHUEwNCiAqLyANCg0KLy9pZighJHRoaXMtPkNoZWNrUGVybWlzc2lvbignTW9kaWZ5IFRlbXBsYXRlcycpKXsNCiAgICAvLyB0b2RvLCBwZXJtaXNzaW9ucyBtZXNzYWdlIGhlcmUNCiAgLy8gIHJldHVybjsNCiAvLyB9DQoNCiANCgkJJFNpZD0kcGFyYW1zWydTY3JpcHRJRCddOw0KCQkkZGIgPSBjbXNtcygpLT5kYjsNCgkgIAkkcXVlcnkgPSAiREVMRVRFIHNuLCBzbywgc3AsIHN1IEZST00gIi5TRF9TQ1JJUFROQU1FUy4iIEFTIHNuICINCgkJCQkJLiJJTk5FUiBqb2luICAiLlNEX1NDUklQVE9QVElPTlMuIiBBUyBzbyBPTiBzbi5JRCA9IHNvLklEICINCgkJCQkJLiJJTk5FUiBqb2luICAiLlNEX1NDUklQVFVORE8uIiBBUyBzdSBPTiBzbi5JRCA9IHN1LnNjcmlwdElEICINCgkJCQkJLiJJTk5FUiBqb2luICAiLlNEX1NDUklQVFBBUlRTLiIgQVMgc3AgT04gc24uSUQgPSBzcC5JRCAiDQoJCQkJCS4iV0hFUkUgc24uSUQgPSA/IjsNCgkJJHJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkoJFNpZCkpOw0KCQlpZighJHJlc3VsdCl7DQoJCQllY2hvICdFcnJvcjogJy5teXNxbF9lcnJvcigpOw0KCQkJJHBhcmFtc1snbWVzc2FnZSddID0gbXlzcWxfZXJyb3IoKTsNCgkJfWVsc2V7DQoJCQkkcGFyYW1zWydtZXNzYWdlJ10gPSBteXNxbF9lcnJvcigpOw0KCQl9DQoNCgkJJHRoaXMtPlJlbW92ZVByZWZlcmVuY2UoJFNpZC4nLUxvY2tlZC1TRCcpOw0KCQkkdGhpcy0+UmVtb3ZlUHJlZmVyZW5jZSgkU2lkLictTG9ja2VkLUVkaXRvci1TRCcpOw0KCQkkdGhpcy0+UmVtb3ZlUHJlZmVyZW5jZSgkU2lkLictTG9ja2VkLUVkaXRlZFRpbWUtU0QnKTsNCgkJJHRoaXMtPlJlbW92ZVByZWZlcmVuY2UoJFNpZC4nLU1lZGlhVHlwZS1TRCcpOw0KCQkkdGhpcy0+UmVtb3ZlUHJlZmVyZW5jZSgkU2lkLictTWluaWZ5LVNEJyk7DQoJCSR0aGlzLT5SZW1vdmVQcmVmZXJlbmNlKCRTaWQuJy1QYXRoT3AtU0QnKTsNCgkJJHRoaXMtPlJlbW92ZVByZWZlcmVuY2UoJFNpZC4nLXJvb3RVUkwtU0QnKTsNCgkJLy8kdGhpcy0+bXlSZWRpcmVjdFRvVGFiKCRpZCwgJ3VwbG9hZGZvcm1fdGVtcGxhdGUnKTsNCgkJJHBhcmFtcyA9IGFycmF5KCd0YWJfbWVzc2FnZSc9PiAnQnRuREVMRVRFRCcsICdhY3RpdmVfdGFiJyA9PiAnc2NyaXB0X3RlbXBsYXRlJyk7DQoJCSR0aGlzLT5SZWRpcmVjdCgkaWQsICdkZWZhdWx0YWRtaW4nLCAnJywgJHBhcmFtcyk7DQo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.description.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIE1vZHVsZTogUGF5UGFsQnV0dG9uTWFrZXIgLSBQYXlQYWwgQnV0dG9uIENyZWF0b3IgYW5kIE1hbmFnZXIgDQojIE1vZCBkZXNpZ25lZCBieSBqZXJlbXlCYXNzIChqZXJlbXlCYXNzQGNhYmxlb25lLm5ldCkNCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpDQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnDQojIFRoZSBtb2R1bGUncyBob21lcGFnZSBpczogaHR0cDovL2Rldi5jbXNtYWRlc2ltcGxlLm9yZy9wcm9qZWN0cy9QYXlQYWxCdXR0b25NYWtlci8NCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5DQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5DQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yDQojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uDQojDQojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLA0KIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZg0KIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlDQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuDQojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlDQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlDQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBDQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwNCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQoNCg0KLy8vLy8vLS0tLS1idXR0b24gdmFycw0KJGRpcz0kdGhpcy0+TGFuZygkcGFyYW1zWydEZXNjcmlwdGlvbiddKTsNCmVjaG8gICI8ZGl2IGlkPVwiRElTQ1JQXCI+Ii4kZGlzLiI8L2Rpdj4iOw0KZXhpdDsNCg0KDQo/Pg0K]]></data>
	</file>
	<file>
	  <filename>/action.do_exporttemplate.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCg0KaWYodmVyc2lvbl9jb21wYXJlKENNU19WRVJTSU9OLCcxLjktYmV0YTEnKSA+PSAwICl7DQoJJG1vZD1jbXNfdXRpbHM6OmdldF9tb2R1bGUoJ1NjcmlwdERlcGxveScpOw0KfWVsc2V7DQoJZ2xvYmFsICRnQ21zOw0KCSRtb2Q9JGdDbXMtPm1vZHVsZXNbJ1NjcmlwdERlcGxveSddWydvYmplY3QnXTsNCn0NCg0KJHBhc3M9Jyc7DQokZmlsZWNvdW50PTA7DQoNCiRQcm9jY2VzcyA9IG5ldyBzY3JpcHRQcm9jZXNzaW5nKCk7DQoNCiRpZD0kcGFyYW1zWydpZCddOw0KJGdyb3VwZWQ9JHBhcmFtc1snZ3JvdXBlZCddOw0KJGV4dD0kcGFyYW1zWydleHQnXTsNCg0KJGdldEFzc2V0cz10cnVlOw0KDQokeG1sdHh0ICA9ICc8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJJU08tODg1OS0xIj8+Jy4iXG4iOw0KJHhtbHR4dCAuPSAiPHNjcmlwdHBhY2thZ2U+XG4iOw0KZm9yZWFjaCggJGZpbGVzIGFzICRmaWxlICl7DQoJJHhtbHR4dCAuPSAiCTxncm91cD48IVtDREFUQVsiLmJhc2U2NF9lbmNvZGUoJGRhdGFbMF0pLiJdXT48L2dyb3VwPlxuIjsNCgkkeG1sdHh0IC49ICIJPHNjcmlwdHR5cGU+PCFbQ0RBVEFbIi5iYXNlNjRfZW5jb2RlKCRleHQpLiJdXT48L3NjcmlwdHR5cGU+XG4iOw0KCSR4bWx0eHQgLj0gIgk8c2NyaXB0PlxuIjsNCgkJJHhtbHR4dCAuPSAiCTxuYW1lPjwhW0NEQVRBWyIuYmFzZTY0X2VuY29kZSgkZGF0YVswXSkuIl1dPjwvbmFtZT5cbiI7DQoJCSR4bWx0eHQgLj0gIgk8b3JkZXI+PCFbQ0RBVEFbIi5iYXNlNjRfZW5jb2RlKCRkYXRhWzBdKS4iXV0+PC9vcmRlcj5cbiI7DQoJCSR4bWx0eHQgLj0gIgk8cmV2aXNpb24+PCFbQ0RBVEFbIi5iYXNlNjRfZW5jb2RlKCRkYXRhWzBdKS4iXV0+PC9yZXZpc2lvbj5cbiI7DQoJCSR4bWx0eHQgLj0gIgk8bWVkaWF0eXBlPjwhW0NEQVRBWyIuYmFzZTY0X2VuY29kZSgkZGF0YVswXSkuIl1dPjwvbWVkaWF0eXBlPlxuIjsNCgkJJHhtbHR4dCAuPSAiCTx0dXJub2ZmcHJlbG9hZD48IVtDREFUQVsiLmJhc2U2NF9lbmNvZGUoJGRhdGFbMF0pLiJdXT48L3R1cm5vZmZwcmVsb2FkPlxuIjsNCgkJJHhtbHR4dCAuPSAiCTxtaW5pZnk+PCFbQ0RBVEFbIi5iYXNlNjRfZW5jb2RlKCRkYXRhWzBdKS4iXV0+PC9taW5pZnk+XG4iOw0KCQkkeG1sdHh0IC49ICIJPHJvb3Q+PCFbQ0RBVEFbIi5iYXNlNjRfZW5jb2RlKCRkYXRhWzBdKS4iXV0+PC9yb290PlxuIjsNCgkJJHhtbHR4dCAuPSAiCTxwYXRoPjwhW0NEQVRBWyIuYmFzZTY0X2VuY29kZSgkZGF0YVswXSkuIl1dPjwvcGF0aD5cbiI7DQoJCQ0KCQkkZGF0YT0kUHJvY2Nlc3MtPlByb2NjZXNzU0QoJGlkLCRncm91cGVkLGZhbHNlLGZhbHNlLCRleHQsdHJ1ZSk7DQoJCSR4bWx0eHQgLj0gIgk8c2NyaXB0aXM+PCFbQ0RBVEFbIi5iYXNlNjRfZW5jb2RlKCRkYXRhWzBdKS4iXV0+PC9zY3JpcHRpcz5cbiI7DQoJCWlmKCRnZXRBc3NldHMpew0KCQkJJHBhc3M9JG1vZC0+YnVpbGRfcHJlbG9hZCgkZGF0YSwkSUQsdHJ1ZSk7DQoJCQkkZmlsZWNvdW50Kz1jb3VudCgkcGFzcyk7DQoJCQlmb3JlYWNoKCAkcGFzcyBhcyAkcGF0aCApew0KCQkJCSR4bWx0eHQgLj0gIgkJPGZpbGVzPlxuIjsNCgkJCQkkeG1sdHh0IC49ICIJCQk8ZmlsZXR5cGU+PCFbQ0RBVEFbIi5iYXNlNjRfZW5jb2RlKGVuZChleHBsb2RlKCIuIiwkcGF0aCkpKS4iXV0+PC9maWxldHlwZT5cbiI7DQoJCQkJJHhtbHR4dCAuPSAiCQkJPGZpbGU+PCFbQ0RBVEFbIi5iYXNlNjRfZW5jb2RlKGZpbGVfZ2V0X2NvbnRlbnRzKCRwYXRoKSkuIl1dPjwvZmlsZT5cbiI7DQoJCQkJJHhtbHR4dCAuPSAiCQkJPGxvY2F0aW9uPjwhW0NEQVRBWyIuYmFzZTY0X2VuY29kZSgkcGF0aCkuIl1dPjwvbG9jYXRpb24+XG4iOw0KCQkJCSR4bWx0eHQgLj0gIgkJPC9maWxlcz5cbiI7DQoJCQl9DQoJCQljb3VudCgpIA0KCQl9DQoJJHhtbHR4dCAuPSAiCTwvc2NyaXB0PlxuIjsNCgkrKyRmaWxlY291bnQ7DQp9DQokeG1sdHh0IC49ICI8L3NjcmlwdHBhY2thZ2U+XG4iOw0KDQokbG9nID0gbmV3IHNkX2xvZ2dpbigpOyANCiRsb2ctPl9kb0F1ZGl0KCAnYWRkJyAsICdvaycsICdYTUwgcGFja2FnZSBvZiAnLnN0cmxlbigkeG1sdHh0KS4nIGJ5dGVzIGNyZWF0ZWQgZm9yIFNjcmlwdERlcGxveSB0ZW1wbGF0ZSAnLiRwYXJhbXNbJ3RlbXBsYXRlJ10uJyBpbmNsdWRpbmcgJy4kZmlsZWNvdW50LicgZmlsZXMnKTsNCg0KJHhtbG5hbWUgPSAnU0QtcGNrLScgLiAkcGFyYW1zWyd0ZW1wbGF0ZSddIC4gJy54bWwnOw0KDQovLyBzZW5kIHRoZSBmaWxlDQpvYl9lbmRfY2xlYW4oKTsNCm9iX2VuZF9jbGVhbigpOw0KaGVhZGVyKCdDb250ZW50LURlc2NyaXB0aW9uOiBGaWxlIFRyYW5zZmVyJyk7DQpoZWFkZXIoJ0NvbnRlbnQtVHlwZTogYXBwbGljYXRpb24vZm9yY2UtZG93bmxvYWQnKTsNCmhlYWRlcignQ29udGVudC1EaXNwb3NpdGlvbjogYXR0YWNobWVudDsgZmlsZW5hbWU9Jy4keG1sbmFtZSk7DQplY2hvICR4bWx0eHQ7DQpleGl0KCk7DQoNCj8+]]></data>
	</file>
	<file>
	  <filename>/action.do_importtemplate.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCmlmKCAhaXNzZXQoIGNtc21zKCkgKSApIGV4aXQoKTsNCg0KDQppZiggISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBUZW1wbGF0ZXMnKSApDQp7DQoJZWNobyAkdGhpcy0+U2hvd0Vycm9ycygkdGhpcy0+TGFuZygnYWNjZXNzZGVuaWVkJykpOw0KCXJldHVybjsNCn0NCg0KJGZpZWxkTmFtZSA9ICRpZCAuICJpbXBvcnR4bWwiOw0KaWYgKCAhaXNzZXQoJF9GSUxFU1skZmllbGROYW1lXSkgfHwgIWlzc2V0KCRfRklMRVMpIHx8ICFpc19hcnJheSgkX0ZJTEVTWyRmaWVsZE5hbWVdKSB8fCAhJF9GSUxFU1skZmllbGROYW1lXVsnbmFtZSddKQ0Kew0KCSRwYXJhbXMgPSBhcnJheSgnZXJyb3JzJz0+ICdlcnJvcl9pbnN1ZmZpY2llbnRwYXJhbXMnLCAnYWN0aXZlX3RhYicgPT4gJ3RlbXBsYXRlcycpOw0KCSR0aGlzLT5SZWRpcmVjdCgkaWQsICdkZWZhdWx0YWRtaW4nICwgJHJldHVybmlkLCAkcGFyYW1zKTsNCglyZXR1cm47DQp9DQplbHNlDQp7DQoJLy8gbm9ybWFsaXplIHRoZSBmaWxlIHZhcmlhYmxlDQoJJGZpbGUgPSAkX0ZJTEVTWyRmaWVsZE5hbWVdOw0KDQoJLy8gJGZpbGVbJ3RtcF9uYW1lJ10gaXMgdGhlIGZpbGUgd2UgaGF2ZSB0byBwYXJzZQ0KCSR4bWwgPSBmaWxlX2dldF9jb250ZW50cygkZmlsZVsndG1wX25hbWUnXSk7DQoJJGZuID0gJyc7DQoNCglyZXF1aXJlX29uY2UgJ2Z1bmN0aW9uLmltcG9ydHRlbXBsYXRlLnBocCc7DQoJDQoJJHRoaXMtPlJlZGlyZWN0KCRpZCwgJ2RlZmF1bHRhZG1pbicgLCAkcmV0dXJuaWQsIGFycmF5KCdhY3RpdmVfdGFiJyA9PiAndGVtcGxhdGVzJykpOw0KfQ0KPz4=]]></data>
	</file>
	<file>
	  <filename>/action.editassignment.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCi8qKg0KICogTW9kdWxlOiBTY3JpcHREZXBsb3kgLSBNaW5pZnkgYW5kIGRlcGxveW1lbnQgb2YgSlMgQ1NTIGFuZCBIVE1MDQogKiANCiAqIA0KICogQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykNCiAqIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnDQogKiBUaGUgbW9kdWxlJ3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvc2NyaXB0ZGVwbG95Lw0KICogDQogKiBAcGFja2FnZSBTY3JpcHREZXBsb3kNCiAqIEBhdXRob3IgamVyZW15QmFzcyA8amVyZW15QmFzc0BjYWJsZW9uZS5uZXQ+DQogKiBAY29weXJpZ2h0IEplcmVteSBCYXNzDQogKiBAbGljZW5zZSBodHRwOi8vd3d3LmdudS5vcmcvY29weWxlZnQvZ3BsLmh0bWwgRnJlZWx5IGF2YWlsYWJsZSB1bmRlciBHUEwNCiAqLyANCg0KCWlmKCFjbXNtcygpKSBleGl0KCk7DQoNCgkkY29uZmlnID0gY21zbXMoKS0+R2V0Q29uZmlnKCk7DQoNCgkkZGlyID0gJGNvbmZpZ1sncm9vdF91cmwnXTsNCgkkQWRtaW5kaXIgPSAkZGlyLicvJy4kY29uZmlnWydhZG1pbl9kaXInXTsNCgkNCgkkQ01TX1VTRVJfS0VZPUNNU19TRUNVUkVfUEFSQU1fTkFNRS4nPScuJF9TRVNTSU9OW0NNU19VU0VSX0tFWV07DQoJDQoJaWYoISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBUZW1wbGF0ZXMnKSl7DQoJCS8vIHRvZG8sIHBlcm1pc3Npb25zIG1lc3NhZ2UgaGVyZQ0KCQlyZXR1cm47DQoJfQ0KCS8vZWNobyAkdGhpcy0+anNOY3NzKCk7DQplY2hvICc8ZGl2IGlkPSJkZW1vdGlwIj48aW1nIGNsYXNzPSJwcm9ncmVzcyIgc3JjPSInLiRkaXIuJy9tb2R1bGVzL1NjcmlwdERlcGxveS9pbWFnZXMvbG9hZGluZy5naWYiIGFsdD0iIi8+PC9kaXY+JzsNCg0KDQoJJE1lZGlhVHlwZUFycmF5PWFycmF5KA0KCQkJJ2FsbCc9PidhbGwnLA0KCQkJJ2F1cmFsJz0+J2F1cmFsJywNCgkJCSdicmFpbGxlJz0+J2JyYWlsbGUnLA0KCQkJJ2hhbmRoZWxkJz0+J2hhbmRoZWxkJywNCgkJCSdwcmludCc9PidwcmludCcsDQoJCQknZW1ib3NzZWQnPT4nZW1ib3NzZWQnLA0KCQkJJ3Byb2plY3Rpb24nPT4ncHJvamVjdGlvbicsDQoJCQknc2NyZWVuJz0+J3NjcmVlbicsDQoJCQkndHR5Jz0+J3R0eScsDQoJCQkndHYnPT4ndHYnDQoJKTsNCgkJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQoJCS8qLS0tLVN0YXJ0LS0tLS0tLS0tLS0tLS0tLS0qLw0KCQkvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8NCgkvLyBoYW5kbGUgZXJyb3JzLg0KCWlmKGlzc2V0KCRwYXJhbXNbJ2Vycm9ycyddKSl7DQoJCWVjaG8gJHRoaXMtPlNob3dFcnJvcnMoJHBhcmFtc1snZXJyb3JzJ10pOw0KCX0NCgkkYWN0aXZlX3RhYj0idGVtcGxhdGVfbWFuZyI7DQoJJHBhcmFtc1snb3JpZ2FjdGlvbiddID0gJHBhcmFtc1snYWN0aW9uJ107DQoJJGNvbnRlbnRzID0gIiI7DQogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdmb3Jtc3RhcnQnLA0KCQkJICAgICR0aGlzLT5DcmVhdGVGb3JtU3RhcnQgKCRpZCwgJ3NhdmVfZ3JvdXBfYXNzaWduJywkcmV0dXJuaWQsJ3Bvc3QnLCcnLGZhbHNlLCAnJywgJHBhcmFtcykpOw0KCWlmKCRwYXJhbXNbJ21vZGUnXT09J2FkZCcpew0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2Zvcm1zdGFydCcsDQoJCQkJCSR0aGlzLT5DcmVhdGVGb3JtU3RhcnQgKCRpZCwgJ3NhdmVfZ3JvdXBfYXNzaWduJywkcmV0dXJuaWQsJ3Bvc3QnLCcnLGZhbHNlLCAnJywgJHBhcmFtcykpOw0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RlbXBsYXRlbmFtZScsDQoJCQkJICAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCAkaWQsICd0ZW1wbGF0ZScsICIiLCA0MCApKTsNCgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdoaWRkZW4nLA0KCQkJCSAgJHRoaXMtPkNyZWF0ZUlucHV0SGlkZGVuKCRpZCwgJ21vZGUnLCAkcGFyYW1zWydtb2RlJ10pDQoJCQkJICApOw0KCQlpZihpc3NldCgkcGFyYW1zWydkZWZhdWx0dGVtcGxhdGVwcmVmJ10pJiYkcGFyYW1zWydkZWZhdWx0dGVtcGxhdGVwcmVmJ10hPScnKXsNCgkJCSRjb250ZW50cyA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCRwYXJhbXNbJ2RlZmF1bHR0ZW1wbGF0ZXByZWYnXSk7DQoJCX0NCgkJDQoJCSR0aGlzLT5zbWFydHktPmFzc2lnbignc3VibWl0JywkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQgKCRpZCwgJ3N1Ym1pdGJ1dHRvbicsDQoJCQkJCQkJICR0aGlzLT5MYW5nICgnc3VibWl0JykpKTsJDQoJCSR0aGlzLT5zbWFydHktPmFzc2lnbignYWRkJywnJyk7DQoJCSR0aGlzLT5zbWFydHktPmFzc2lnbignZG9uZScsJycpOw0KCX1lbHNlew0KCQ0KCQkkR2lkPSRwYXJhbXNbJ0dyb3VwdElEJ107DQoJCSRHcm91cHRTZXQ9JHRoaXMtPkdldEdyb3VwTmFtZSgkR2lkKTsNCgkJLy8kR2lkPSR0aGlzLT5HZXRHcm91cElEKCRHcm91cHRTZXQpOw0KDQoJCWV4dHJhY3QoJHRoaXMtPkdldEdyb3VwRGF0YSgkR2lkKSk7DQoJDQoJCSR0aGlzLT5zbWFydHktPmFzc2lnbignR3JvdXB0U2V0JywiPGgxPiRHcm91cHRTZXQ8L2gxPiIpOw0KCQkNCgkJaWYoJEdyb3VwdFR5cGU9PScnKXsNCgkJCSR0aGlzLT5zbWFydHktPmFzc2lnbignR3JvdXB0VHlwZScsDQoJCQkJJHRoaXMtPkNyZWF0ZUlucHV0UmFkaW9Hcm91cCAoJGlkLCAnR3JvdXB0VHlwZScsIGFycmF5KCdKUyc9PidKUycsJ0NTUyc9PidDU1MnKSwgJEdyb3VwdFR5cGUsICcnLCcnKSk7IA0KCQl9ZWxzZXsNCgkJCSR0aGlzLT5zbWFydHktPmFzc2lnbignR3JvdXB0VHlwZScsDQoJCQkJLy8kdGhpcy0+Q3JlYXRlSW5wdXRSYWRpb0dyb3VwICgkaWQsICdHcm91cHRUeXBlJywgYXJyYXkoJ0pTJz0+J0pTJywnQ1NTJz0+J0NTUycpLCAkR3JvdXB0VHlwZSwnIGRpc2FibGVkPSJkaXNhYmxlZCInLCcnKSk7IA0KCQkJJzxpbWcgc3JjPSInLiRkaXIuJy9tb2R1bGVzL1NjcmlwdERlcGxveS9pbWFnZXMvJy4kR3JvdXB0VHlwZS4nLnBuZyIgd2lkdGg9IjM1IiBoZWlnaHQ9IjM1IiBhbHQ9IicuJEdyb3VwdFR5cGUuJyIvPicpOyANCgkJfQ0KDQovLwkJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQovLwkJLyotLS1tYWtlLXNjcmlwdC1jaGVja2xpc3QtLSovDQovLwkJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQoJCSRhbGxQcm9maWxlcyA9ICR0aGlzLT5nZXRTY3JpcHRzTGlzdCgpOw0KCQkkU2NyaXB0UGlja2VyQXJyYXk9YXJyYXkoKTsNCgkJJHJvd2FycmF5ID0gYXJyYXkoKTsNCgkJJHJvd2FycmF5MiA9IGFycmF5KCk7DQoJCSR0Q291bnQ9MDsNCgkJJGhhc1NjcmlwdHM9ZmFsc2U7DQoJCWZvcmVhY2goJGFsbFByb2ZpbGVzIGFzICRrZXkgPT4gJG9uZVByb2ZpbGUgKXsNCgkJCSRTY3JpcHRTZXQ9ICRvbmVQcm9maWxlWydTY3JpcHRTZXQnXTsNCgkJCSRzY3JpcHRUeXBlPSAkb25lUHJvZmlsZVsnc2NyaXB0VHlwZSddOw0KCQkJaWYoJHNjcmlwdFR5cGU9PSRHcm91cHRUeXBlKXsNCgkJCQlpZiAoISR0aGlzLT5DaGVja1NjcmlwdCgka2V5LCRHaWQpKXsNCgkJCQkJJHRDb3VudD0kdENvdW50KzE7DQoJCQkJCSRyb3cgPSBuZXcgU3RkQ2xhc3MoKTsNCgkJCQkJJHJvdy0+U2NyaXB0bmFtZUxhYmxlID0gJFNjcmlwdFNldDsNCgkJCQkJDQoJCQkJCSRyb3ctPlNjcmlwdGlkID0gJGtleTsNCgkJCQkJJHJvdy0+U2NyaXB0bmFtZSA9ICR0aGlzLT5DcmVhdGVJbnB1dENoZWNrYm94ICgkaWQsICdTY3JpcHRQaWNrZXJbXScsICRrZXksICAkdGhpcy0+Q2hlY2tTY3JpcHQoJGtleSwkR2lkKSk7DQoJCQkJCWFycmF5X3B1c2ggKCRyb3dhcnJheSwgJHJvdyk7DQoJCQkJfWVsc2VpZiAoJHRoaXMtPkNoZWNrU2NyaXB0KCRrZXksJEdpZCkpew0KCQkJCQkkcm93ID0gbmV3IFN0ZENsYXNzKCk7DQoJCQkJCSRyb3ctPlNjcmlwdG5hbWVMYWJsZSA9ICRTY3JpcHRTZXQ7DQoJCQkJCSRyb3ctPlNjcmlwdGlkID0gJGtleTsNCgkJCQkJJHJvdy0+U2NyaXB0bmFtZSA9ICR0aGlzLT5DcmVhdGVJbnB1dENoZWNrYm94ICgkaWQsICdTY3JpcHRQaWNrZXJbXScsICRrZXksICAkdGhpcy0+Q2hlY2tTY3JpcHQoJGtleSwkR2lkKSk7DQoJCQkJCWFycmF5X3B1c2ggKCRyb3dhcnJheTIsICRyb3cpOw0KCQkJCQkkaGFzU2NyaXB0cz10cnVlOw0KCQkJCX0NCgkJCX0NCgkJfQ0KDQoJCSR0aGlzLT5zbWFydHktPmFzc2lnbignU2NyaXB0bmFtZU1lc3MnLCR0aGlzLT5MYW5nICgnYWxsU2NyaXB0c1VzZWQnKSk7DQoJCSR0aGlzLT5zbWFydHktPmFzc2lnbignYWxsU2NyaXB0c1VzZWQnLGZhbHNlKTsNCgkJaWYoJHRDb3VudD09MCYmISRoYXNTY3JpcHRzKXsNCgkJCSRyb3cgPSBuZXcgU3RkQ2xhc3MoKTsNCgkJCSRyb3ctPlNjcmlwdG5hbWVNZXNzID0gJHRoaXMtPkxhbmcgKCdub25lSW5UeXBlJyk7DQoJCQkkcm93LT5TY3JpcHRuYW1lID0gJyc7DQoJCQlhcnJheV9wdXNoICgkcm93YXJyYXksICRyb3cpOw0KCQkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdhbGxTY3JpcHRzVXNlZCcsdHJ1ZSk7DQoJCX1lbHNlaWYgKCR0Q291bnQ9PTAmJiRoYXNTY3JpcHRzKXsNCgkJCSR0aGlzLT5zbWFydHktPmFzc2lnbignYWxsU2NyaXB0c1VzZWQnLHRydWUpOw0KCQl9DQoJCQ0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ1NjcmlwdFBpY2tlcicsICRyb3dhcnJheSk7DQoJCSR0aGlzLT5zbWFydHktPmFzc2lnbignU2NyaXB0UGlja2VyaGlkZGVuJywgJHJvd2FycmF5Mik7DQoNCg0KCQkkYWxsZGJQcm9maWxlcyA9ICR0aGlzLT5zZWxlY3RHcm91cHNMaXN0aW5ncygkR2lkKTsNCgkJJHJvd2FycmF5ID0gYXJyYXkoKTsNCgkJJHJvd2NsYXNzID0gJ3JvdzEnOw0KCQkkR3JvdXB0U2l6ZT0wOw0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2Zvcm1SRU9SREVSc3RhcnQnLCR0aGlzLT5DcmVhdGVGb3JtU3RhcnQgKCRpZCwgJ3NhdmVfZ3JvdXBfYXNzaWduJywkcmV0dXJuaWQsJ3Bvc3QnLCcnLGZhbHNlLCAnJywgJHBhcmFtcykpOw0KCQkNCgkJDQoJCWZvcmVhY2goJGFsbGRiUHJvZmlsZXMgYXMgJGtleSA9PiAkb25lZGJQcm9maWxlICl7DQoJCQkNCgkJCSRTY3JpcHRJRD0gJGtleTsNCgkJCSRTY3JpcHRTZXQ9ICRvbmVkYlByb2ZpbGVbJ1NjcmlwdFNldCddOw0KCQkJJHNjcmlwdFNpemU9ICRvbmVkYlByb2ZpbGVbJ3NjcmlwdFNpemUnXTsNCgkJCSRTY3JpcHRPUkRFUj0gJG9uZWRiUHJvZmlsZVsnU2NyaXB0T1JERVInXTsNCgkJCQ0KCQkJDQoJCQkNCg0KCQkJJEdyb3VwdFNpemUrPSRzY3JpcHRTaXplOw0KCQkJJGVkaXRhYmxlPSR0aGlzLT5pc19lZGl0YWJsZSgka2V5KTsNCg0KCQkJJHJvdyA9IG5ldyBTdGRDbGFzcygpOw0KCQkJaWYoJGVkaXRhYmxlKXsNCgkJCQkkcm93LT5lZGl0TW9kZSA9ICcnOw0KCQkJfWVsc2V7DQoJCQkJJHJvdy0+ZWRpdE1vZGUgPSAnSW5FZGl0JzsNCgkJCX0JDQoJCQlpZighJGVkaXRhYmxlKXsNCgkJCSR1aWQ9JHRoaXMtPkdldFByZWZlcmVuY2UoJGtleS4nLUxvY2tlZC1FZGl0b3ItU0QnKTsNCgkJCSR1PSR0aGlzLT5nZXRVc2VySW5mbygkdWlkKTskdW5hbWU9JHVbJ3VzZXJuYW1lJ107DQoJCQkkcm93LT5uYW1lID0gJFNjcmlwdElEOw0KCQkJJHJvdy0+U2NyaXB0aWQgPSAka2V5Ow0KCQkJDQoJCQkkcm93LT5kZWZhdWx0ID0gJHVuYW1lLicgaXMgZWRpdGluZyAnLiRTY3JpcHRTZXQ7DQoJCQl9ZWxzZXsNCgkJCSRyb3ctPlNjcmlwdGlkID0gJGtleTsNCgkJCSRyb3ctPm5hbWUgPSAkdGhpcy0+Q3JlYXRlTGluayggJGlkLCAnZWRpdF9zY3JpcHQnLCAkcmV0dXJuaWQsDQoJCQkJCQkJJFNjcmlwdElELCBhcnJheSgnU2NyaXB0U2V0JyA9PiAkU2NyaXB0SUQsDQoJCQkJCQkJCQknYWN0aXZlX3RhYicgPT4gJGFjdGl2ZV90YWIsDQoJCQkJCQkJCQknbW9kZSc9PidlZGl0JykpOw0KCQkJJHJvdy0+ZGVmYXVsdCA9ICR0aGlzLT5DcmVhdGVMaW5rKCAkaWQsICdlZGl0X3NjcmlwdCcsICRyZXR1cm5pZCwNCgkJCQkJCQkkU2NyaXB0U2V0LCBhcnJheSgnU2NyaXB0U2V0JyA9PiAkU2NyaXB0SUQsDQoJCQkJCQkJCQknYWN0aXZlX3RhYicgPT4gJGFjdGl2ZV90YWIsDQoJCQkJCQkJCQknbW9kZSc9PidlZGl0JykpOw0KCQkJfQ0KCQkJJHJvdy0+cm93Y2xhc3MgPSAkcm93Y2xhc3M7DQoJCQkkcm93LT5zY3JpcHRTaXplID0gJHRoaXMtPlNpemVJdFVwKCRzY3JpcHRTaXplKTsNCgkJCSRyb3ctPlNjcmlwdE9SREVSID0gJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCggJGlkLCAnU2NyaXB0T1JERVJbJy4ka2V5LiddJywgJFNjcmlwdE9SREVSLCAzLCAyICk7DQoJCQlpZigkZWRpdGFibGUpew0KCQkJJHJvdy0+ZWRpdGxpbmsgPSAkdGhpcy0+Q3JlYXRlTGluayggJGlkLCAnZWRpdF9zY3JpcHQnLCAkcmV0dXJuaWQsDQoJCQkJCQkJCWNtc21zKCktPnZhcmlhYmxlc1snYWRtaW50aGVtZSddLT4NCgkJCQkJCQkJRGlzcGxheUltYWdlICgnaWNvbnMvc3lzdGVtL2VkaXQuZ2lmJywNCgkJCQkJCQkJCSAgJHRoaXMtPkxhbmcgKCdlZGl0JyksICcnLCAnJywgJ3N5c3RlbWljb24nKSwNCgkJCQkJCQkJYXJyYXkgKCdTY3JpcHRTZXQnID0+ICRrZXksDQoJCQkJCQkJCSAgICdhY3RpdmVfdGFiJyA9PiAkYWN0aXZlX3RhYiwNCgkJCQkJCQkJICAgJ21vZGUnPT4nZWRpdCcpKTsNCgkJCX1lbHNlew0KCQkJCSRyb3ctPmVkaXRsaW5rID0gJy0tJzsNCgkJCX0NCgkJCQ0KCQkJJHJvdy0+ZGVsZXRlbGluayA9ICR0aGlzLT5DcmVhdGVMaW5rKCAkaWQsICdkZWxldGVfc2NyaXB0JywgJHJldHVybmlkLA0KCQkJCQkJCSAgY21zbXMoKS0+dmFyaWFibGVzWydhZG1pbnRoZW1lJ10tPg0KCQkJCQkJCSAgRGlzcGxheUltYWdlICgnaWNvbnMvc3lzdGVtL2RlbGV0ZS5naWYnLA0KCQkJCQkJCQkJJHRoaXMtPkxhbmcgKCdkZWxldGUnKSwgJycsICcnLCAnc3lzdGVtaWNvbicpLA0KCQkJCQkJCSAgYXJyYXkgKCdTY3JpcHRTZXQnID0+ICRrZXkpLA0KCQkJCQkJCSAgJHRoaXMtPkxhbmcgKCdhcmV5b3VzdXJlJykpOw0KCQkJDQoJCQkNCgkJCWFycmF5X3B1c2ggKCRyb3dhcnJheSwgJHJvdyk7DQoJCQkoJHJvd2NsYXNzID09ICJyb3cxIiA/ICRyb3djbGFzcyA9ICJyb3cyIiA6ICRyb3djbGFzcyA9ICJyb3cxIik7DQoJCQkNCgkJfQ0KDQoJCSR0aGlzLT5zbWFydHktPmFzc2lnbignR3JvdXB0U2l6ZScsICR0aGlzLT5TaXplSXRVcCgkR3JvdXB0U2l6ZSkpOw0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ0dyb3VwdFNpemVfbGFiZWwnLCAkdGhpcy0+TGFuZygnR3JvdXB0U2l6ZV9sYWJlbCcpKTsNCgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdTY3JpcHRMaXN0JywgJHJvd2FycmF5ICk7DQoJCQkNCg0KDQoJDQoJDQoJfQ0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2FkZCcsJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0ICgkaWQsICdzdWJtaXRidXR0b24nLA0KCQkJCQkJCQkJICR0aGlzLT5MYW5nICgnYWRkJykpKTsNCgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdSRU9SREVSJywkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQgKCRpZCwgJ1JFT1JERVInLCAkdGhpcy0+TGFuZyAoJ1JFT1JERVInKSkpOw0KCS8vJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0aXRsZScsY21zX2h0bWxfZW50aXR5X2RlY29kZSgkcGFyYW1zWyd0aXRsZSddKSk7DQoJDQoJaWYoJHBhcmFtc1snbW9kZSddPT0nYWRkJyl7DQoJCSR0aGlzLT5zbWFydHktPmFzc2lnbignR3JvdXB0U2V0JywNCgkJCSR0aGlzLT5DcmVhdGVJbnB1dFRleHQoICRpZCwgJ0dyb3VwdFNldCcsICIiLCA0MCwgMjU1LCAnJyApKTsNCgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdHcm91cHRUeXBlJywNCgkJCSR0aGlzLT5DcmVhdGVJbnB1dFJhZGlvR3JvdXAgKCRpZCwgJ0dyb3VwdFR5cGUnLCBhcnJheSgnSlMnPT4nSlMnLCdDU1MnPT4nQ1NTJyksICcnLCcnLCcmbmJzcDsmbmJzcDsmbmJzcDsnKSk7IAkNCgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdTY3JpcHRQaWNrZXInLCcnKTsgIAkNCgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdoaWRkZW5Nb2RlJywNCgkJCSR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsICdtb2RlJywgJHBhcmFtc1snbW9kZSddICkpOw0KCQlpZihpc3NldCgkcGFyYW1zWydHcm91cHRTZXQnXSkpeyRHaWQ9JHBhcmFtc1snR3JvdXB0U2V0J107fWVsc2V7JEdpZD0nWCc7fSANCgkJCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ1NhdmUnLCR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCAoJGlkLCAnU2F2ZScsIA0KCQkJCQkJCQkJICR0aGlzLT5MYW5nICgnU2F2ZScpKSk7DQoJfQ0KCQ0KCQ0KCSR0aGlzLT5zbWFydHktPmFzc2lnbignaGlkZGVuTW9kZScsDQoJCQkkdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLCAnbW9kZScsICRwYXJhbXNbJ21vZGUnXSkNCgkJCS4kdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLCAnR3JvdXB0SUQnLCAkR2lkKQ0KCQkJLiR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsICdzcF8nLCAkQ01TX1VTRVJfS0VZKQ0KCQkJKTsgDQoJDQoJDQoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdncm91cHlUaXRsZScsICR0aGlzLT5MYW5nKCdncm91cHlUaXRsZScpKTsNCgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ0dyb3VwdFR5cGVfbGFiZWwnLCAkdGhpcy0+TGFuZygnR3JvdXB0VHlwZV9sYWJlbCcpKTsNCgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ0dyb3VwdFNldF9sYWJlbCcsICR0aGlzLT5MYW5nKCdHcm91cHRTZXRfbGFiZWwnKSk7DQoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdTY3JpcHRQaWNrZXJfbGFiZWwnLCAkdGhpcy0+TGFuZygnU2NyaXB0UGlja2VyX2xhYmVsJykpOw0KCSR0aGlzLT5zbWFydHktPmFzc2lnbigndHlwZV9sYWJlbCcsICR0aGlzLT5MYW5nKCd0eXBlX2xhYmVsJykpOw0KCSR0aGlzLT5zbWFydHktPmFzc2lnbignTmFtZV9sYWJlbCcsICR0aGlzLT5MYW5nKCdTY3JpcHRTZXRfbGFiZWwnKSk7DQoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCduYW1lcHJvbXB0X2xhYmVsJywgJHRoaXMtPkxhbmcoJ3Byb21wdF9uYW1lJykpOw0KCSR0aGlzLT5zbWFydHktPmFzc2lnbignU2NyaXB0TmFtZV9sYWJlbCcsICR0aGlzLT5MYW5nKCdTY3JpcHROYW1lX2xhYmVsJykpOw0KCSR0aGlzLT5zbWFydHktPmFzc2lnbignU2luZ2xlQ29kZV9sYWJlbCcsICR0aGlzLT5MYW5nKCdTaW5nbGVDb2RlX2xhYmVsJykpOy8vJHRoaXMtPkxhbmcoJ3Byb21wdF9kZWZhdWx0JykNCgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2Zvcm1fY2FuY2VsJywgJzxpbnB1dCB0eXBlPSJidXR0b24iIHZhbHVlPSInLiR0aGlzLT5MYW5nKCdmb3JtX2NhbmNlbCcpLiciIG9uY2xpY2s9ImphdmFzY3JpcHQ6d2luZG93Lmhpc3RvcnkuZ28oLTEpIiAvPicpOwkgIA0KCSR0aGlzLT5zbWFydHktPmFzc2lnbigncHJvbXB0X3RlbXBsYXRlbmFtZScsJHRoaXMtPkxhbmcoJ3Byb21wdF90ZW1wbGF0ZW5hbWUnKSk7DQoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfdGVtcGxhdGUnLCR0aGlzLT5MYW5nKCdwcm9tcHRfdGVtcGxhdGUnKSk7DQoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0ZW1wbGF0ZScsDQoJJHRoaXMtPkNyZWF0ZVN5bnRheEFyZWEgKCRpZCwgJGNvbnRlbnRzLCAndGVtcGxhdGVjb250ZW50JykpOw0KCQ0KDQoNCg0KCSR0aGlzLT5zbWFydHktPmFzc2lnbignY2FuY2VsJywkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQgKCRpZCwgJ2NhbmNlbCcsIA0KCQkJCQkJCQkgJHRoaXMtPkxhbmcgKCdGaW5pc2gnKSkpOw0KCSR0aGlzLT5zbWFydHktPmFzc2lnbignZm9ybWVuZCcsJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7DQoNCgkNCgkNCgllY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ2VkaXRBc3NpZ25tZW50LnRwbCcpOw0KDQo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.edit_script.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCi8qKg0KICogTW9kdWxlOiBTY3JpcHREZXBsb3kgLSBNaW5pZnkgYW5kIGRlcGxveW1lbnQgb2YgSlMgQ1NTIGFuZCBIVE1MDQogKiANCiAqIA0KICogQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykNCiAqIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnDQogKiBUaGUgbW9kdWxlJ3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvc2NyaXB0ZGVwbG95Lw0KICogDQogKiBAcGFja2FnZSBTY3JpcHREZXBsb3kNCiAqIEBhdXRob3IgamVyZW15QmFzcyA8amVyZW15QmFzc0BjYWJsZW9uZS5uZXQ+DQogKiBAY29weXJpZ2h0IEplcmVteSBCYXNzDQogKiBAbGljZW5zZSBodHRwOi8vd3d3LmdudS5vcmcvY29weWxlZnQvZ3BsLmh0bWwgRnJlZWx5IGF2YWlsYWJsZSB1bmRlciBHUEwNCiAqLyANCg0KCWlmKCFjbXNtcygpKSBleGl0KCk7DQoNCgkkY29uZmlnID0gY21zbXMoKS0+R2V0Q29uZmlnKCk7DQoNCgkkZGlyID0gJGNvbmZpZ1sncm9vdF91cmwnXTsNCgkkQWRtaW5kaXIgPSAkZGlyLicvJy4kY29uZmlnWydhZG1pbl9kaXInXTsNCiRDTVNfVVNFUl9LRVk9Q01TX1NFQ1VSRV9QQVJBTV9OQU1FLic9Jy4kX1NFU1NJT05bQ01TX1VTRVJfS0VZXTsNCg0KaWYoISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBUZW1wbGF0ZXMnKSl7DQogICAgLy8gdG9kbywgcGVybWlzc2lvbnMgbWVzc2FnZSBoZXJlDQogICAgcmV0dXJuOw0KfQ0KDQppZighaXNzZXQoJHBhcmFtc1snYWN0aXZlX3RhYiddKSl7DQokcGFyYW1zWydhY3RpdmVfdGFiJ109J3NjcmlwdF90ZW1wbGF0ZSc7CQ0KfQ0KDQovL2VjaG8gJHRoaXMtPmpzTmNzcygpOw0KZWNobyAnPGRpdiBpZD0iZGVtb3RpcCI+PGltZyBjbGFzcz0icHJvZ3Jlc3MiIHNyYz0iJy4kZGlyLicvbW9kdWxlcy9TY3JpcHREZXBsb3kvaW1hZ2VzL2xvYWRpbmcuZ2lmIiBhbHQ9IiIvPjwvZGl2Pic7DQokTWVkaWFUeXBlQXJyYXk9YXJyYXkoDQoJCSdhbGwnPT4nYWxsJywNCgkJJ2F1cmFsJz0+J2F1cmFsJywNCgkJJ2JyYWlsbGUnPT4nYnJhaWxsZScsDQoJCSdoYW5kaGVsZCc9PidoYW5kaGVsZCcsDQoJCSdwcmludCc9PidwcmludCcsDQoJCSdlbWJvc3NlZCc9PidlbWJvc3NlZCcsDQoJCSdwcm9qZWN0aW9uJz0+J3Byb2plY3Rpb24nLA0KCQknc2NyZWVuJz0+J3NjcmVlbicsDQoJCSdzcGVlY2gnPT4nc3BlZWNoJywNCgkJJ3R0eSc9Pid0dHknLA0KCQkndHYnPT4ndHYnDQopOw0KDQovLyBoYW5kbGUgZXJyb3JzLg0KaWYoaXNzZXQoJHBhcmFtc1snZXJyb3JzJ10pKXsNCiAgICBlY2hvICR0aGlzLT5TaG93RXJyb3JzKCRwYXJhbXNbJ2Vycm9ycyddKTsNCn0NCg0KJHBhcmFtc1snb3JpZ2FjdGlvbiddID0gJHBhcmFtc1snYWN0aW9uJ107DQokY29udGVudHMgPSAiIjsNCiRzY3JpcHRzX25hbWU9Jyc7DQogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdmb3Jtc3RhcnQnLA0KCQkJICAgICR0aGlzLT5DcmVhdGVGb3JtU3RhcnQgKCRpZCwgJ3NhdmVfU2NyaXB0X1NldHVwJywkcmV0dXJuaWQsJ3Bvc3QnLCcnLA0KCQkJCQkJICAgIGZhbHNlLCAnJywgJHBhcmFtcykpOw0KICAgICR0aGlzLT5zbWFydHktPmFzc2lnbignaGlkZGVuJywNCgkJCSAgJHRoaXMtPkNyZWF0ZUlucHV0SGlkZGVuKCRpZCwgJ21vZGUnLCAkcGFyYW1zWydtb2RlJ10gKQ0KCQkJICAuJHRoaXMtPkNyZWF0ZUlucHV0SGlkZGVuKCRpZCwgJ1Byb2NjZXNzaW5nJywgJHRoaXMtPkxhbmcoJ1Byb2NjZXNzaW5nJykpDQoJCQkgIC4kdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLCAnU2F2ZWQnLCAkdGhpcy0+TGFuZygnU2F2ZWQnKSkNCgkJCSAgLiR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsICdEb25lJywgJHRoaXMtPkxhbmcoJ0RvbmUnKSkNCgkJCSAgLiR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsICdWYWxpZGF0aW5nJywgJHRoaXMtPkxhbmcoJ1ZhbGlkYXRpbmcnKSApDQoJCQkgICk7DQoNCg0KCSR0aGlzLT5zbWFydHktPmFzc2lnbignbm90ZWQnLCcnKTsNCgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ0VfaW5wdXQnLCcnKTsNCgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ1dfaW5wdXQnLCcnKTsNCgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ1ZBbGVkJywnJyk7DQoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdyZXBvcnRiYXInLCcnKTsNCgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3JlcG9ydCcsJycpOw0KDQppZigkcGFyYW1zWydtb2RlJ109PSdhZGQnKXsNCiAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2Zvcm1zdGFydCcsDQoJCQkgICAgJHRoaXMtPkNyZWF0ZUZvcm1TdGFydCAoJGlkLCAnc2F2ZV9TY3JpcHRfU2V0dXAnLCRyZXR1cm5pZCwncG9zdCcsJycsZmFsc2UsICcnLCAkcGFyYW1zKSk7DQogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0ZW1wbGF0ZW5hbWUnLA0KCQkJICAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCAkaWQsICd0ZW1wbGF0ZScsICIiLCA0MCApKTsNCg0KICAgIGlmKCBpc3NldCgkcGFyYW1zWydkZWZhdWx0dGVtcGxhdGVwcmVmJ10pICYmICRwYXJhbXNbJ2RlZmF1bHR0ZW1wbGF0ZXByZWYnXSAhPSAnJyApew0KCQkkY29udGVudHMgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgkcGFyYW1zWydkZWZhdWx0dGVtcGxhdGVwcmVmJ10pOw0KICAgICB9DQoJICR0aGlzLT5zbWFydHktPmFzc2lnbignTWVkaWFUeXBlX2xhYmVsJywgJHRoaXMtPkxhbmcoJ01lZGlhVHlwZV9sYWJlbCcpKTsgDQogIH1lbHNlew0KCSRzSUQ9JHBhcmFtc1snU2NyaXB0U2V0J107DQoJJGhvdExpbmtDaGVjayA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdob3RMaW5rQ2hlY2snLDEpOw0KDQoJZXh0cmFjdCgkdGhpcy0+Z2V0U2NyaXB0RnVsbCgkc0lEKSk7DQoJJHNjcmlwdHNfbmFtZT0kU2NyaXB0U2V0Ow0KCSRUdXJuT05WYWw9JHRoaXMtPkdldFByZWZlcmVuY2UoJ1R1cm5PTlZhbCcsMSk7DQoJDQoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdTY3JpcHRJc19pbnB1dCcsICR0aGlzLT5DcmVhdGVUZXh0QXJlYSgwLCRpZCwgJFNjcmlwdElzLCAnU2NyaXB0SXNfaW5wdXQnLCAnJywnU0lBJywnJywnJywnODAnLCcyMCcsJycsJycsJyBzdHlsZT0iaGVpZ2h0OiA2MDBweDsgd2lkdGg6IDEwMCU7IiAnKSk7IA0KCQ0KDQoJaWYoJFR1cm5PTlZhbCl7IA0KCQkkdmFsSVQgPSBuZXcgc2RWYWwoKTsNCgkJJHZhbElULT52YWxfSXQoJHNjcmlwdFR5cGUsJHNJRCk7DQoJfQ0KCQkNCgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3NjcmlwdFR5cGVKUycsJzxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4gc3ludGF4X2lzPSInLnN0cnRvbG93ZXIoJHNjcmlwdFR5cGUpLiciOzwvc2NyaXB0PicpOw0KCSRHcm91cEluZm89JHRoaXMtPkdldFNjcmlwdEdyb3VwSW5mbygkc0lEKTsNCgkJaWYoJEdyb3VwSW5mbyE9ZmFsc2UmJiRHcm91cEluZm9bMF0hPScnKXsNCgkJCSR0aGlzLT5zbWFydHktPmFzc2lnbignc2NyaXB0c0dyb3VwTnVtYmVyJywkR3JvdXBJbmZvWzBdKTsJDQoJCQkNCgkJCSRHbGlua3M9Jyc7DQoJCQkJZm9yZWFjaChleHBsb2RlKCcsJywkR3JvdXBJbmZvWzFdKSBhcyAka2V5PT4kR25hbWUpew0KCQkJCQkkR2xpbmtzLj0gJyAnLiR0aGlzLT5DcmVhdGVMaW5rKCAkaWQsICdlZGl0YXNzaWdubWVudCcsICRyZXR1cm5pZCwgJEduYW1lLCBhcnJheSAoJ0dyb3VwdElEJyA9PiAkdGhpcy0+R2V0R3JvdXBJRCgkR25hbWUpLA0KCQkJCQkJCQkJCSAgICdhY3RpdmVfdGFiJyA9PiAkcGFyYW1zWydhY3RpdmVfdGFiJ10sDQoJCQkJCQkJCQkJICAgJ21vZGUnPT4nZWRpdCcpKS4nLCc7DQoJCQkJfQ0KCQkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzY3JpcHRzR3JvdXAnLHJUcmltKCRHbGlua3MsJywnKS4nICcpOw0KCQl9ZWxzZXsNCgkJCSR0aGlzLT5zbWFydHktPmFzc2lnbignc2NyaXB0c0dyb3VwTnVtYmVyJywnMCcpOwkNCgkJCSR0aGlzLT5zbWFydHktPmFzc2lnbignc2NyaXB0c0dyb3VwJywnbm9uZScpOw0KCQl9DQoNCgkJaWYoJHNjcmlwdFR5cGU9PSdDU1MnKXsJDQoNCgkJCSR1PSR0aGlzLT5nZXRVc2VySW5mbygpOw0KCQkJJHVJRD0kdVsnVXNlcmlkJ107DQoJCQllY2hvICc8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+VUlEPScuJHVbJ1VzZXJpZCddLic7U0lEPScuJHNJRC4nOyQoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uKCl7cmVwb3J0RWRpdFN0YXR1cygnLiRzSUQuJywnLiR1SUQuJyk7fSk7PC9zY3JpcHQ+JzsNCgkJCSR0aGlzLT5zbWFydHktPmFzc2lnbigncmVwb3J0JywnJyk7DQoJCQkkYmFyPSc8YSBocmVmPSIjb3AiIGlkPSJzY3JpcHRPUCI+Jy4kdGhpcy0+TGFuZygnc2NpcHRvcHRpb25zJykuJzwvYT4gIHwgIDxhIGhyZWY9IiNoZWxwIiBpZD0ic2NyaXB0SGVscCI+Jy4kdGhpcy0+TGFuZygnaW5saW5laGVscCcpLic8L2E+JzsJDQoJCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ29wdGlvbmJhcicsJGJhcik7CQkJDQoJCQkkYmFyPSc8YSBocmVmPSJqYXZhc2NyaXB0OnZvaWQoMCkiIGNsYXNzPSJwb3B1cCBFVVJMUyI+Jy4kdGhpcy0+TGFuZygnRVVSTFMnKS4nPC9hPiAgfCAgPGEgaHJlZj0iamF2YXNjcmlwdDp2b2lkKDApIiBjbGFzcz0icG9wdXAgUkNTUyI+Jy4kdGhpcy0+TGFuZygnUkNTUycpLic8L2E+ICB8ICA8YSBocmVmPSJqYXZhc2NyaXB0OnZvaWQoMCkiIGNsYXNzPSJwb3B1cCBGQ09OVCI+Jy4kdGhpcy0+TGFuZygnRkNPTlQnKS4nPC9hPiAgfCAgPGEgaHJlZj0iamF2YXNjcmlwdDp2b2lkKDApIiBjbGFzcz0icG9wdXAgU0NTUyI+Jy4kdGhpcy0+TGFuZygnU0NTUycpLic8L2E+JzsJCQ0KCQkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdyZXBvcnRiYXInLCRiYXIpOw0KCQl9DQoJCQ0KDQoNCgkJaWYoJHNjcmlwdFR5cGU9PSdDU1MnKXsJDQoJCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ01lZGlhVHlwZV9sYWJlbCcsICR0aGlzLT5MYW5nKCdNZWRpYVR5cGVfbGFiZWwnKSk7IA0KCQkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdNZWRpYVR5cGVfaW5wdXQnLA0KCQkJCSAgJHRoaXMtPkNyZWF0ZUlucHV0RHJvcGRvd24oJGlkLCAnTWVkaWFUeXBlX2lucHV0JywgJE1lZGlhVHlwZUFycmF5LCAnJywgJHRoaXMtPkdldFByZWZlcmVuY2UoJHNJRC4nLU1lZGlhVHlwZS1TRCcsJHRoaXMtPkdldFByZWZlcmVuY2UoJ3VzZXJtZWRpdW0nLCdBbGwnKSApICkNCgkJCQkgICk7DQoJCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3R1cm5PZmZQcmVsb2FkX2xhYmVsJywgJHRoaXMtPkxhbmcoJ3R1cm5PZmZQcmVsb2FkX2xhYmVsJykpOyANCgkJCSR0aGlzLT5zbWFydHktPmFzc2lnbigndHVybk9mZlByZWxvYWRfaW5wdXQnLA0KCQkJCQkgJHRoaXMtPkNyZWF0ZUlucHV0UmFkaW9Hcm91cCAoJGlkLCAndHVybk9mZlByZWxvYWRfaW5wdXQnLCBhcnJheSgnTm8nPT4nMCcsJ1llcyc9PicxJyksICR0aGlzLT5HZXRQcmVmZXJlbmNlKCRzSUQuJy10dXJuT2ZmUHJlbG9hZC1TRCcsJzAnKSwnJywnJm5ic3A7Jm5ic3A7Jm5ic3A7JykpOw0KCQl9DQoJDQoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdTY3JpcHRTZXRfaW5wdXQnLA0KCQkJICAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCAkaWQsICdTY3JpcHRTZXRfaW5wdXQnLCAkU2NyaXB0U2V0LCA0MCwgMjU1ICkpOw0KCQkJICANCiAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ01pbmlmeV9pbnB1dCcsDQoJCQkgJHRoaXMtPkNyZWF0ZUlucHV0UmFkaW9Hcm91cCAoJGlkLCAnTWluaWZ5X2lucHV0JywgYXJyYXkoJ05vJz0+JzAnLCdZZXMnPT4nMScpLCAkdGhpcy0+R2V0UHJlZmVyZW5jZSgkc0lELictTWluaWZ5LVNEJywnMScpLCcnLCcmbmJzcDsmbmJzcDsmbmJzcDsnKSk7DQoJDQoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdVc2VQYXRoT3B0aW9uX2lucHV0JywNCgkJCQkkdGhpcy0+Q3JlYXRlSW5wdXRDaGVja2JveCAoJGlkLCdVc2VQYXRoT3B0aW9uX2lucHV0JywgICcxJywgJHRoaXMtPkdldFByZWZlcmVuY2UoJHNJRC4nLVBhdGhPcC1TRCcsJzAnKSkgKTsgIA0KCQ0KCS8vcm9vdCB1cmwgbG9naWMNCgkkcm9vdFVSTD0kdGhpcy0+R2V0UHJlZmVyZW5jZSgkc0lELictcm9vdFVSTC1TRCcsJycpOw0KCWlmKCRyb290VVJMPT0nJyl7JHJvb3RVUkxjaz0wO31lbHNleyRyb290VVJMY2s9MTt9DQoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdyb290VVJMT3B0aW9uX2lucHV0JywNCgkJCQkkdGhpcy0+Q3JlYXRlSW5wdXRDaGVja2JveCAoJGlkLCdyb290VVJMT3B0aW9uX2lucHV0JywgICcxJywgJHJvb3RVUkxjaykgKTsgIA0KCSR0aGlzLT5zbWFydHktPmFzc2lnbigncm9vdFVSTF9pbnB1dCcsDQoJCQkkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCAkaWQsICdyb290VVJMX2lucHV0JywgICRyb290VVJMLCA0MCApKTsNCgkNCgkNCiAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3BhdGhPcHRpb25faW5wdXQnLA0KCQkJICAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCAkaWQsICdwYXRoT3B0aW9uX2lucHV0JywgJHBhdGhPcHRpb24sIDQwICkpOyAgDQoJJGxvZ24gPSBuZXcgc2RfbG9nZ2luKCk7DQoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdub3Rlc19pbnB1dCcsICR0aGlzLT5DcmVhdGVUZXh0QXJlYSgwLCAkaWQsICRsb2duLT5HZXRfTm90ZXMoJHNJRCksICdub3Rlc19pbnB1dCcsJycsJ05PVEVTJywnJywnJywnJywxMCkpOw0KDQogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzY3JpcHRUeXBlX2lucHV0JywNCgkJCSAkdGhpcy0+Q3JlYXRlSW5wdXRSYWRpb0dyb3VwICgkaWQsICdzY3JpcHRUeXBlX2lucHV0JywgYXJyYXkoJ0pTJz0+J0pTJywnQ1NTJz0+J0NTUycpLCAkc2NyaXB0VHlwZSwnJywnJm5ic3A7Jm5ic3A7Jm5ic3A7JykpOyAJDQogICB9DQoNCi8vJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0aXRsZScsY21zX2h0bWxfZW50aXR5X2RlY29kZSgkcGFyYW1zWyd0aXRsZSddKSk7DQppZiggJHBhcmFtc1snbW9kZSddID09ICdhZGQnICl7DQoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdNZWRpYVR5cGVfaW5wdXQnLA0KCQkJJHRoaXMtPkNyZWF0ZUlucHV0RHJvcGRvd24oJGlkLCAnTWVkaWFUeXBlX2lucHV0JywgJE1lZGlhVHlwZUFycmF5LCAnJywgJHRoaXMtPkdldFByZWZlcmVuY2UoJ3VzZXJtZWRpdW0nLCdBbGwnKSkpOyANCgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3R1cm5PZmZQcmVsb2FkX2xhYmVsJywgJHRoaXMtPkxhbmcoJ3R1cm5PZmZQcmVsb2FkX2xhYmVsJykpOyANCgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3R1cm5PZmZQcmVsb2FkX2lucHV0JywNCgkJCSAkdGhpcy0+Q3JlYXRlSW5wdXRSYWRpb0dyb3VwICgkaWQsICd0dXJuT2ZmUHJlbG9hZF9pbnB1dCcsIGFycmF5KCdObyc9PicwJywnWWVzJz0+JzEnKSwgJzAnLCcnLCcmbmJzcDsmbmJzcDsmbmJzcDsnKSk7DQogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdTY3JpcHRTZXRfaW5wdXQnLA0KCQkJJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCggJGlkLCAnU2NyaXB0U2V0X2lucHV0JywgIiIsIDQwLCAyNTUsICcnICkpOw0KICAgICR0aGlzLT5zbWFydHktPmFzc2lnbignTWluaWZ5X2lucHV0JywNCgkJCSR0aGlzLT5DcmVhdGVJbnB1dFJhZGlvR3JvdXAgKCRpZCwgJ01pbmlmeV9pbnB1dCcsIGFycmF5KCdObyc9PicwJywnWWVzJz0+JzEnKSwgJzEnLCcnLCcmbmJzcDsmbmJzcDsmbmJzcDsnKSk7IAkJDQoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdwYXRoT3B0aW9uX2lucHV0JywNCgkJCSR0aGlzLT5DcmVhdGVJbnB1dFRleHQoICRpZCwgJ3BhdGhPcHRpb25faW5wdXQnLCAiIiwgNDAgKSk7DQoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdub3Rlc19pbnB1dCcsJHRoaXMtPkNyZWF0ZVRleHRBcmVhICgwLCAkaWQsICcnLCAnbm90ZXNfaW5wdXQnLCcnLCdOT1RFUycsJycsJycsJycsMTApKTsNCgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ1NjcmlwdElzX2lucHV0JywgJHRoaXMtPkNyZWF0ZVRleHRBcmVhKDAsJGlkLCAnJywgJ1NjcmlwdElzX2lucHV0JywgJycsJ1NJQScsJycsJycsJzgwJywnMjAnLCcnLCcnLCcgc3R5bGU9ImhlaWdodDo2MDBweDsgd2lkdGg6IDEwMCU7IiAnKSk7IA0KICAgICR0aGlzLT5zbWFydHktPmFzc2lnbignc2NyaXB0VHlwZV9pbnB1dCcsDQoJCQkkdGhpcy0+Q3JlYXRlSW5wdXRSYWRpb0dyb3VwKCRpZCwgJ3NjcmlwdFR5cGVfaW5wdXQnLCBhcnJheSgnSlMnPT4nSlMnLCdDU1MnPT4nQ1NTJyksICdKUycsJycsJyZuYnNwOyZuYnNwOyZuYnNwOycpKTsgCQkNCiAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ0NTU21lZGlhX2lucHV0JywNCgkJCSR0aGlzLT5DcmVhdGVJbnB1dFJhZGlvR3JvdXAoJGlkLCAnQ1NTbWVkaWFfaW5wdXQnLCBhcnJheSgnSlMnPT4nSlMnLCdDU1MnPT4nQ1NTJyksICdKUycsJycsJyZuYnNwOyZuYnNwOyZuYnNwOycpKTsNCgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2hpZGRlbk1vZGUnLA0KCQkJJHRoaXMtPkNyZWF0ZUlucHV0SGlkZGVuKCRpZCwgJ21vZGUnLCAkcGFyYW1zWydtb2RlJ10gKSk7ICANCgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ1VzZVBhdGhPcHRpb25faW5wdXQnLA0KCQkJJHRoaXMtPkNyZWF0ZUlucHV0Q2hlY2tib3ggKCRpZCwnVXNlUGF0aE9wdGlvbl9pbnB1dCcsIDEsIDApICk7IA0KCQ0KCSR0aGlzLT5zbWFydHktPmFzc2lnbigncm9vdFVSTE9wdGlvbl9pbnB1dCcsDQoJCQkJJHRoaXMtPkNyZWF0ZUlucHV0Q2hlY2tib3ggKCRpZCwncm9vdFVSTE9wdGlvbl9pbnB1dCcsICAnMScsIDApKTsgIA0KCSR0aGlzLT5zbWFydHktPmFzc2lnbigncm9vdFVSTF9pbnB1dCcsDQoJCQkkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCAkaWQsICdyb290VVJMX2lucHV0JywgIiIsIDQwICkpOw0KCQ0KfQ0KDQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3NjcmlwdHNfbmFtZScsJHNjcmlwdHNfbmFtZSk7DQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ21vZGUnLCAkcGFyYW1zWydtb2RlJ10gKTsgIA0KDQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2hpZGRlbk1vZGUnLCANCgkJCQkJICAkdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLCAnbW9kZScsICRwYXJhbXNbJ21vZGUnXSkNCgkJCQkJICAuJHRoaXMtPkNyZWF0ZUlucHV0SGlkZGVuKCRpZCwgJ3NwXycsICRDTVNfVVNFUl9LRVkpDQoJCQkJCSAgKTsNCgkJDQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3NtYXJ0eUhvd19sYWJlbCcsICR0aGlzLT5MYW5nKCdzbWFydHlIb3cnKSk7IA0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzY3JpcHRUeXBlX2xhYmVsJywgJHRoaXMtPkxhbmcoJ3NjcmlwdFR5cGVfbGFiZWwnKSk7IA0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdTY3JpcHROYW1lX2xhYmVsJywgJHRoaXMtPkxhbmcoJ1NjcmlwdE5hbWVfbGFiZWwnKSk7IA0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdNaW5pZnlfbGFiZWwnLCAkdGhpcy0+TGFuZygnTWluaWZ5X2xhYmVsJykpOyAJCSAgDQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3BhdGhPcHRpb25fbGFiZWwnLCAkdGhpcy0+TGFuZygncGF0aE9wdGlvbl9sYWJlbCcpKTsgDQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3Jvb3RVUkxPcHRpb25fbGFiZWwnLCAkdGhpcy0+TGFuZygncm9vdFVSTE9wdGlvbl9sYWJlbCcpKTsgDQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ1NjcmlwdElzX2xhYmVsJywgJHRoaXMtPkxhbmcoJ1NjcmlwdElzX2xhYmVsJykpOw0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdub3Rlc19sYWJlbCcsICR0aGlzLT5MYW5nKCdub3Rlc19sYWJlbCcpKTsNCg0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdmaWx0ZXJQcm9wJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZmlsdGVyUHJvcCcsICcnKSk7DQoNCiR0aGlzLT5zbWFydHktPmFzc2lnbignZm9ybV9jYW5jZWwnLCAnPGlucHV0IHR5cGU9ImJ1dHRvbiIgdmFsdWU9IicuJHRoaXMtPkxhbmcoJ2Zvcm1fY2FuY2VsJykuJyIgb25jbGljaz0iamF2YXNjcmlwdDp3aW5kb3cuaGlzdG9yeS5nbygtMSkiIC8+Jyk7CSAgDQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3Byb21wdF90ZW1wbGF0ZW5hbWUnLCR0aGlzLT5MYW5nKCdwcm9tcHRfdGVtcGxhdGVuYW1lJykpOw0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfdGVtcGxhdGUnLCR0aGlzLT5MYW5nKCdwcm9tcHRfdGVtcGxhdGUnKSk7DQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RlbXBsYXRlJywgJHRoaXMtPkNyZWF0ZVN5bnRheEFyZWEgKCRpZCwgJGNvbnRlbnRzLCAndGVtcGxhdGVjb250ZW50JykpOw0KCQkJICANCgkJICANCiR0aGlzLT5zbWFydHktPmFzc2lnbignc3VibWl0JywkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQgKCRpZCwgJ3N1Ym1pdGJ1dHRvbicsICR0aGlzLT5MYW5nICgnc3VibWl0JykpKTsNCiR0aGlzLT5zbWFydHktPmFzc2lnbignY2FuY2VsJywkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQgKCRpZCwgJ2NhbmNlbCcsICR0aGlzLT5MYW5nICgnY2FuY2VsJykpKTsNCiR0aGlzLT5zbWFydHktPmFzc2lnbignYXBwbHknLCR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCAoJGlkLCAnYXBwbHknLCAkdGhpcy0+TGFuZyAoJ2FwcGx5JykpKTsNCiR0aGlzLT5zbWFydHktPmFzc2lnbigncmV2ZXJ0JywkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQgKCRpZCwgJ3JldmVydCcsICAkdGhpcy0+TGFuZyAoJ3JldmVydCcpKSk7DQoNCg0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdmb3JtZW5kJywkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsNCg0KZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCdlZGl0X3NjcmlwdC50cGwnKTsNCg0KPz4=]]></data>
	</file>
	<file>
	  <filename>/action.edit_template.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiNDTVMgLSBDTVMgTWFkZSBTaW1wbGUNCiMoYykyMDA0IGJ5IFRlZCBLdWxwICh3aXNoeUB1c2Vycy5zZi5uZXQpDQojVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly9jbXNtYWRlc2ltcGxlLnNmLm5ldA0KIw0KI1RoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5DQojaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkNCiN0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcg0KIyhhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uDQojDQojVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsDQojYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YNCiNNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlDQojR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4NCiNZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQ0KI2Fsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlDQojRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgIDAyMTExLTEzMDcgIFVTQQ0KIw0KIyRJZDogZWRpdHRlbXBsYXRlLnBocCA1MTgwIDIwMDgtMTAtMjkgMTg6MjU6MjdaIGNhbGd1eTEwMDAgJA0KDQppZighY21zbXMoKSkgZXhpdCgpOw0KJENNU19VU0VSX0tFWT1DTVNfU0VDVVJFX1BBUkFNX05BTUUuJz0nLiRfU0VTU0lPTltDTVNfVVNFUl9LRVldOw0KDQppZighJHRoaXMtPkNoZWNrUGVybWlzc2lvbignTW9kaWZ5IFRlbXBsYXRlcycpKXsNCiAgICAvLyB0b2RvLCBwZXJtaXNzaW9ucyBtZXNzYWdlIGhlcmUNCiAgICByZXR1cm47DQp9DQokY29uZmlnID0gY21zbXMoKS0+R2V0Q29uZmlnKCk7IA0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzY3JpcHRUeXBlSlMnLCc8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+IHN5bnRheF9pcz0iaHRtbCI7PC9zY3JpcHQ+Jyk7DQokdGVtcGxhdGVvcHMgPSBjbXNtcygpLT5HZXRUZW1wbGF0ZU9wZXJhdGlvbnMoKTsNCmlmKCFpc3NldCgkcGFyYW1zWydhY3RpdmVfdGFiJ10pKXsNCiRwYXJhbXNbJ2FjdGl2ZV90YWInXT0ndGVtcGxhdGVfbWFuZyc7CQ0KfQ0KJHRlbXBsYXRlX2lkID0gLTE7DQppZiAoaXNzZXQoJHBhcmFtc1sidGVtcGxhdGVfaWQiXSkpICR0ZW1wbGF0ZV9pZCA9ICRwYXJhbXNbInRlbXBsYXRlX2lkIl07DQoNCiRwcmV2aWV3ID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ3ByZXZpZXcnLHRydWUpOw0KLy9lY2hvICR0aGlzLT5qc05jc3MoKTsNCmVjaG8gJzxkaXYgaWQ9ImRlbW90aXAiPjxpbWcgY2xhc3M9InByb2dyZXNzIiBzcmM9Ii4uL21vZHVsZXMvU2NyaXB0RGVwbG95L2ltYWdlcy9sb2FkaW5nLmdpZiIgYWx0PSIiLz48L2Rpdj4nOw0KDQoNCi8vIGhhbmRsZSBlcnJvcnMuDQppZihpc3NldCgkcGFyYW1zWydlcnJvcnMnXSkpew0KICAgIGVjaG8gJHRoaXMtPlNob3dFcnJvcnMoJHBhcmFtc1snZXJyb3JzJ10pOw0KfQ0KDQokcGFyYW1zWydvcmlnYWN0aW9uJ10gPSAkcGFyYW1zWydhY3Rpb24nXTsNCiRjb250ZW50cyA9ICIiOw0KJHNjcmlwdHNfbmFtZT0nJzsNCiAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2Zvcm1zdGFydCcsDQoJCQkgICAgJHRoaXMtPkNyZWF0ZUZvcm1TdGFydCAoJGlkLCAnc2F2ZV9TY3JpcHRfU2V0dXAnLCRyZXR1cm5pZCwncG9zdCcsJycsDQoJCQkJCQkgICAgZmFsc2UsICcnLCAkcGFyYW1zKSk7DQogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdoaWRkZW4nLA0KCQkJICAkdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLCAnbW9kZScsICRwYXJhbXNbJ21vZGUnXSApDQoJCQkgIC4kdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLCAnUHJvY2Nlc3NpbmcnLCAkdGhpcy0+TGFuZygnUHJvY2Nlc3NpbmcnKSkNCgkJCSAgLiR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsICdTYXZlZCcsICR0aGlzLT5MYW5nKCdTYXZlZCcpKQ0KCQkJICAuJHRoaXMtPkNyZWF0ZUlucHV0SGlkZGVuKCRpZCwgJ0RvbmUnLCAkdGhpcy0+TGFuZygnRG9uZScpKQ0KCQkJICAuJHRoaXMtPkNyZWF0ZUlucHV0SGlkZGVuKCRpZCwgJ1ZhbGlkYXRpbmcnLCAkdGhpcy0+TGFuZygnVmFsaWRhdGluZycpICkNCgkJCSAgKTsNCg0KDQoJaWYgKGlzc2V0KCRfUE9TVFsiZWRpdHRlbXBsYXRlIl0pKXsNCgkJJHZhbGlkaW5mbyA9IHRydWU7DQoJCWlmICgkdGVtcGxhdGUgPT0gIiIpew0KCQkJJGVycm9yIC49ICI8bGk+Ii5sYW5nKCdub2ZpZWxkZ2l2ZW4nLCBhcnJheShsYW5nKCduYW1lJykpKS4iPC9saT4iOw0KCQkJJHZhbGlkaW5mbyA9IGZhbHNlOw0KCQl9DQoJCWVsc2UgaWYgKCR0ZW1wbGF0ZW9wcy0+Q2hlY2tFeGlzdGluZ1RlbXBsYXRlTmFtZSgkdGVtcGxhdGUsICR0ZW1wbGF0ZV9pZCkpew0KCQkJJGVycm9yIC49ICI8bGk+Ii5sYW5nKCd0ZW1wbGF0ZWV4aXN0cycpLiI8L2xpPiI7DQoJCQkkdmFsaWRpbmZvID0gZmFsc2U7DQoJCX0NCgkJaWYgKCRjb250ZW50ID09ICIiKXsNCgkJCSRlcnJvciAuPSAiPGxpPiIubGFuZygnbm9maWVsZGdpdmVuJywgYXJyYXkobGFuZygnY29udGVudCcpKSkuIjwvbGk+IjsNCgkJCSR2YWxpZGluZm8gPSBmYWxzZTsNCgkJfQ0KDQoJCWlmICgkdmFsaWRpbmZvKXsNCgkJCSRvbmV0ZW1wbGF0ZSA9ICR0ZW1wbGF0ZW9wcy0+TG9hZFRlbXBsYXRlQnlJRCgkdGVtcGxhdGVfaWQpOw0KCQkJJG9uZXRlbXBsYXRlLT5uYW1lID0gJHRlbXBsYXRlOw0KCQkJJG9uZXRlbXBsYXRlLT5jb250ZW50ID0gJGNvbnRlbnQ7DQoJCQkkb25ldGVtcGxhdGUtPnN0eWxlc2hlZXQgPSAkc3R5bGVzaGVldDsNCgkJCSRvbmV0ZW1wbGF0ZS0+ZW5jb2RpbmcgPSAkZW5jb2Rpbmc7DQoJCQkkb25ldGVtcGxhdGUtPmFjdGl2ZSA9ICRhY3RpdmU7DQoNCgkJCSNQZXJmb3JtIHRoZSBlZGl0dGVtcGxhdGVfcHJlIGNhbGxiYWNrDQoJCQlmb3JlYWNoKGNtc21zKCktPm1vZHVsZXMgYXMgJGtleT0+JHZhbHVlKXsNCgkJCQlpZiAoY21zbXMoKS0+bW9kdWxlc1ska2V5XVsnaW5zdGFsbGVkJ10gPT0gdHJ1ZSAmJg0KCQkJCQljbXNtcygpLT5tb2R1bGVzWyRrZXldWydhY3RpdmUnXSA9PSB0cnVlKXsNCgkJCQkJY21zbXMoKS0+bW9kdWxlc1ska2V5XVsnb2JqZWN0J10tPkVkaXRUZW1wbGF0ZVByZSgkb25ldGVtcGxhdGUpOw0KCQkJCX0NCgkJCX0NCgkJCQ0KCQkJRXZlbnRzOjpTZW5kRXZlbnQoJ0NvcmUnLCAnRWRpdFRlbXBsYXRlUHJlJywgYXJyYXkoJ3RlbXBsYXRlJyA9PiAmJG9uZXRlbXBsYXRlKSk7DQoNCgkJCSRyZXN1bHQgPSAkb25ldGVtcGxhdGUtPlNhdmUoKTsNCg0KCQkJaWYgKCRyZXN1bHQpew0KCQkJCSNNYWtlIHN1cmUgdGhlIG5ldyBuYW1lIGlzIHVzZWQgaWYgdGhpcyBpcyBhbiBhcHBseQ0KCQkJCSRvcmlnX3RlbXBsYXRlID0gJHRlbXBsYXRlOw0KDQoJCQkJI1BlcmZvcm0gdGhlIGVkaXR0ZW1wbGF0ZV9wb3N0IGNhbGxiYWNrDQoJCQkJZm9yZWFjaChjbXNtcygpLT5tb2R1bGVzIGFzICRrZXk9PiR2YWx1ZSl7DQoJCQkJCWlmIChjbXNtcygpLT5tb2R1bGVzWyRrZXldWydpbnN0YWxsZWQnXSA9PSB0cnVlICYmIGNtc21zKCktPm1vZHVsZXNbJGtleV1bJ2FjdGl2ZSddID09IHRydWUpew0KCQkJCQkJY21zbXMoKS0+bW9kdWxlc1ska2V5XVsnb2JqZWN0J10tPkVkaXRUZW1wbGF0ZVBvc3QoJG9uZXRlbXBsYXRlKTsNCgkJCQkJfQ0KCQkJCX0NCgkJCQkNCgkJCQlFdmVudHM6OlNlbmRFdmVudCgnQ29yZScsICdFZGl0VGVtcGxhdGVQb3N0JywgYXJyYXkoJ3RlbXBsYXRlJyA9PiAmJG9uZXRlbXBsYXRlKSk7DQoNCgkJCQlhdWRpdCgkdGVtcGxhdGVfaWQsICRvbmV0ZW1wbGF0ZS0+bmFtZSwgJ0VkaXRlZCBUZW1wbGF0ZScpOw0KCQkJCWlmICghJGFwcGx5KXsNCgkJCQkgIHN3aXRjaCgkZnJvbSl7DQoJCQkJICAgIGNhc2UgJ2NvbnRlbnQnOg0KCQkJCSAgICAgIHJlZGlyZWN0KCJsaXN0Y29udGVudC5waHAiLiR1cmxleHQpOw0KCQkJCSAgICAgIGJyZWFrOw0KCQkJCSAgICBjYXNlICdjc3Nhc3NvYyc6DQoJCQkJICAgICAgcmVkaXJlY3QoJ3RlbXBsYXRlY3NzLnBocCcuJHVybGV4dC4nJmlkPScuJGNzc2lkLicmdHlwZT10ZW1wbGF0ZScpOw0KCQkJCSAgICAgIGJyZWFrOw0KCQkJCSAgICBjYXNlICdtb2R1bGVfVGVtcGxhdGVNYW5hZ2VyJzoNCgkJCQkgICAgICByZWRpcmVjdCgnbW9kdWxlaW50ZXJmYWNlLnBocCcuJHVybGV4dC4nJm1vZHVsZT1UZW1wbGF0ZU1hbmFnZXInKTsNCgkJCQkgICAgICBicmVhazsNCgkJCQkgICAgZGVmYXVsdDoNCgkJCQkgICAgICByZWRpcmVjdCgibGlzdHRlbXBsYXRlcy5waHAiLiR1cmxleHQpOw0KCQkJCSAgICAgIGJyZWFrOw0KCQkJCSAgICB9DQoJCQkJfQ0KCQkJfWVsc2V7DQoJCQkJJGVycm9yIC49ICI8bGk+Ii5sYW5nKCdlcnJvcnVwZGF0aW5ndGVtcGxhdGUnKS4iPC9saT4iOw0KCQkJfQ0KCQl9DQoNCgkJaWYgKCRhamF4KXsNCgkJCWhlYWRlcignQ29udGVudC1UeXBlOiB0ZXh0L3htbCcpOw0KCQkJcHJpbnQgJzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+JzsNCgkJCXByaW50ICc8RWRpdFRlbXBsYXRlPic7DQoJCQlpZiAoJGVycm9yKXsNCgkJCQlwcmludCAnPFJlc3BvbnNlPkVycm9yPC9SZXNwb25zZT4nOw0KCQkJCXByaW50ICc8RGV0YWlscz48IVtDREFUQVsnIC4gJGVycm9yIC4gJ11dPjwvRGV0YWlscz4nOw0KCQkJfWVsc2V7DQoJCQkJcHJpbnQgJzxSZXNwb25zZT5TdWNjZXNzPC9SZXNwb25zZT4nOw0KCQkJCXByaW50ICc8RGV0YWlscz48IVtDREFUQVsnIC4gbGFuZygnZWRpdHRlbXBsYXRlc3VjY2VzcycpIC4gJ11dPjwvRGV0YWlscz4nOw0KCQkJfQ0KCQkJcHJpbnQgJzwvRWRpdFRlbXBsYXRlPic7DQoJCQlleGl0Ow0KCQl9DQoJfWVsc2UgaWYgKCR0ZW1wbGF0ZV9pZCAhPSAtMSl7DQoJCSRvbmV0ZW1wbGF0ZSA9ICR0ZW1wbGF0ZW9wcy0+TG9hZFRlbXBsYXRlQnlJRCgkdGVtcGxhdGVfaWQpOw0KCQkkdGVtcGxhdGUgPSAkb25ldGVtcGxhdGUtPm5hbWU7DQoJCSRvcmlnX3RlbXBsYXRlID0gJG9uZXRlbXBsYXRlLT5uYW1lOw0KCQkkY29udGVudCA9ICRvbmV0ZW1wbGF0ZS0+Y29udGVudDsNCgkJJHN0eWxlc2hlZXQgPSAkb25ldGVtcGxhdGUtPnN0eWxlc2hlZXQ7DQoJCSRlbmNvZGluZyA9ICRvbmV0ZW1wbGF0ZS0+ZW5jb2Rpbmc7DQoJCSRkZWZhdWx0ID0gJG9uZXRlbXBsYXRlLT5kZWZhdWx0Ow0KCQkkYWN0aXZlID0gJG9uZXRlbXBsYXRlLT5hY3RpdmU7DQoJCSRsYXN0ZWRpdGVkID0gJG9uZXRlbXBsYXRlLT5tb2RpZmllZF9kYXRlOw0KCX0NCg0KDQoNCgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RlbXBsYXRlX3ByZXZpZXcnLCcnKTsNCglpZiAoJHByZXZpZXcpew0KCQkkZGF0YVsidGl0bGUiXSA9ICJUSVRMRSBIRVJFIjsNCgkJJGRhdGFbImNvbnRlbnQiXSA9ICJUZXN0IENvbnRlbnQiOw0KCQkjJGRhdGFbInRlbXBsYXRlX2lkIl0gPSAkdGVtcGxhdGVfaWQ7DQoJCSRkYXRhWyJzdHlsZXNoZWV0Il0gPSAkc3R5bGVzaGVldDsNCgkJJGRhdGFbInRlbXBsYXRlIl0gPSAkY29udGVudDsNCg0KCQkkdG1wZm5hbWUgPSAnJzsNCg0KCQkkdG1wZm5hbWUgPSB0ZW1wbmFtKCRjb25maWdbInByZXZpZXdzX3BhdGgiXSwgImNtc3ByZXZpZXciKTsNCg0KCQkkaGFuZGxlID0gZm9wZW4oJHRtcGZuYW1lLCAidyIpOw0KCQlmd3JpdGUoJGhhbmRsZSwgc2VyaWFsaXplKCRkYXRhKSk7DQoJCWZjbG9zZSgkaGFuZGxlKTsNCgkJDQoJCSRwYXJhbXNbJ3RlbXBsYXRlX2lkJ109JHRlbXBsYXRlX2lkOw0KCQkkcGFyYW1zWydzZXJpYWxpemVkX2NvbnRlbnQnXT1zZXJpYWxpemUoJGNvbnRlbnQpOw0KDQoJCSR0aGlzLT5zbWFydHktPmFzc2lnbigndGVtcGxhdGVfcHJldmlldycsJzxkaXYgY2xhc3M9InBhZ2Vjb250YWluZXIiPg0KCQkJPHAgY2xhc3M9InBhZ2VoZWFkZXIiPicuJHRoaXMtPkxhbmcoJ3ByZXZpZXcnKS4nPC9wPg0KCQkJPGlmcmFtZSBjbGFzcz0icHJldmlldyIgbmFtZT0icHJldmlldyIgc3JjPSInLiR0aGlzLT50ZW1wbGF0ZV9wcmV2aWV3KCRwYXJhbXMpLiciPjwvaWZyYW1lPg0KCQk8L2Rpdj4nKTsNCg0KCX0NCg0KDQoNCgkvL2VjaG8gJHRoaXMtPmpzTmNzcygpOw0KCWVjaG8gJzxkaXYgaWQ9ImRlbW90aXAiPjxpbWcgY2xhc3M9InByb2dyZXNzIiBzcmM9Ii4uL21vZHVsZXMvU2NyaXB0RGVwbG95L2ltYWdlcy9sb2FkaW5nLmdpZiIgYWx0PSIiLz48L2Rpdj4nOw0KCQ0KCQ0KCQ0KCS8vIGhhbmRsZSBlcnJvcnMuDQoJaWYoaXNzZXQoJHBhcmFtc1snZXJyb3JzJ10pKXsNCgkJZWNobyAkdGhpcy0+U2hvd0Vycm9ycygkcGFyYW1zWydlcnJvcnMnXSk7DQoJfQ0KCQ0KCSRwYXJhbXNbJ29yaWdhY3Rpb24nXSA9ICRwYXJhbXNbJ2FjdGlvbiddOw0KCSRjb250ZW50cyA9ICIiOw0KCSRzY3JpcHRzX25hbWU9Jyc7DQogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdmb3Jtc3RhcnQnLA0KCQkJICAgICR0aGlzLT5DcmVhdGVGb3JtU3RhcnQgKCRpZCwgJ3NhdmVfU2NyaXB0X1NldHVwJywkcmV0dXJuaWQsJ3Bvc3QnLCcnLA0KCQkJCQkJICAgIGZhbHNlLCAnJywgJHBhcmFtcykpOw0KICAgICR0aGlzLT5zbWFydHktPmFzc2lnbignaGlkZGVuJywNCgkJCSAgJHRoaXMtPkNyZWF0ZUlucHV0SGlkZGVuKCRpZCwgJ21vZGUnLCAkcGFyYW1zWydtb2RlJ10gKQ0KCQkJICAuJHRoaXMtPkNyZWF0ZUlucHV0SGlkZGVuKCRpZCwgJ1Byb2NjZXNzaW5nJywgJHRoaXMtPkxhbmcoJ1Byb2NjZXNzaW5nJykpDQoJCQkgIC4kdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLCAnU2F2ZWQnLCAkdGhpcy0+TGFuZygnU2F2ZWQnKSkNCgkJCSAgLiR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsICdEb25lJywgJHRoaXMtPkxhbmcoJ0RvbmUnKSkNCgkJCSAgLiR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsICdWYWxpZGF0aW5nJywgJHRoaXMtPkxhbmcoJ1ZhbGlkYXRpbmcnKSApDQoJCQkgICk7DQoNCg0KICAgICR0aGlzLT5zbWFydHktPmFzc2lnbignZm9ybXN0YXJ0JywNCgkJCSAgICAkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0ICgkaWQsICdzYXZlX1NjcmlwdF9TZXR1cCcsJHJldHVybmlkLCdwb3N0JywnJyxmYWxzZSwgJycsICRwYXJhbXMpKTsNCg0KDQogICAgaWYoIGlzc2V0KCRwYXJhbXNbJ2RlZmF1bHR0ZW1wbGF0ZXByZWYnXSkgJiYgJHBhcmFtc1snZGVmYXVsdHRlbXBsYXRlcHJlZiddICE9ICcnICl7DQoJCSRjb250ZW50cyA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCRwYXJhbXNbJ2RlZmF1bHR0ZW1wbGF0ZXByZWYnXSk7DQogICAgIH0NCg0KDQovLyR0aGlzLT5zbWFydHktPmFzc2lnbigndGl0bGUnLGNtc19odG1sX2VudGl0eV9kZWNvZGUoJHBhcmFtc1sndGl0bGUnXSkpOw0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0ZW1wbGF0ZW5hbWUnLA0KCQkJICAkdGVtcGxhdGUpOw0KICAgICR0aGlzLT5zbWFydHktPmFzc2lnbigndGVtcGxhdGVuYW1lX2lucHV0JywNCgkJCSAgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCggJGlkLCAndGVtcGxhdGUnLCAkdGVtcGxhdGUsIDQwICkpOw0KICAgICR0aGlzLT5zbWFydHktPmFzc2lnbignU2NyaXB0SXNfaW5wdXQnLA0KCQkJJHRoaXMtPkNyZWF0ZVRleHRBcmVhICgxLCAkaWQsICRjb250ZW50LCAnY29udGVudCcsICcnLCdTSUEnLCcnLCcnLCc4MCcsJzIwJywnRWRpdEFyZWEnKSk7IA0KDQoNCiR0aGlzLT5zbWFydHktPmFzc2lnbignc2NyaXB0c19uYW1lJywkc2NyaXB0c19uYW1lKTsNCiR0aGlzLT5zbWFydHktPmFzc2lnbignbW9kZScsICRwYXJhbXNbJ21vZGUnXSApOyAgDQoNCiR0aGlzLT5zbWFydHktPmFzc2lnbignaGlkZGVuTW9kZScsDQoJCQkkdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLCAnbW9kZScsICRwYXJhbXNbJ21vZGUnXSkNCgkJCS4kdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLCAnc3BfJywgJENNU19VU0VSX0tFWSkNCgkJCSk7DQoNCiR0aGlzLT5zbWFydHktPmFzc2lnbignYWRkTGliX2xhYmVsJywgJHRoaXMtPkxhbmcoJ2FkZExpYl9sYWJlbCcpKTsgDQoNCg0KDQoNCg0KDQoNCiR0aGlzLT5zbWFydHktPmFzc2lnbignc21hcnR5SG93X2xhYmVsJywgJHRoaXMtPkxhbmcoJ3NtYXJ0eUhvdycpKTsgDQoJDQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RlbXBsYXRlbmFtZV9sYWJlbCcsICR0aGlzLT5MYW5nKCd0ZW1wbGF0ZW5hbWVfbGFiZWwnKSk7IA0KDQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ1NjcmlwdElzX2xhYmVsJywgJHRoaXMtPkxhbmcoJ1NjcmlwdElzX2xhYmVsJykpOw0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdub3Rlc19sYWJlbCcsICR0aGlzLT5MYW5nKCdub3Rlc19sYWJlbCcpKTsNCg0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdmb3JtX2NhbmNlbCcsICc8aW5wdXQgdHlwZT0iYnV0dG9uIiB2YWx1ZT0iJy4kdGhpcy0+TGFuZygnZm9ybV9jYW5jZWwnKS4nIiBvbmNsaWNrPSJqYXZhc2NyaXB0OndpbmRvdy5oaXN0b3J5LmdvKC0xKSIgLz4nKTsJICANCiR0aGlzLT5zbWFydHktPmFzc2lnbigncHJvbXB0X3RlbXBsYXRlbmFtZScsJHRoaXMtPkxhbmcoJ3Byb21wdF90ZW1wbGF0ZW5hbWUnKSk7DQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3Byb21wdF90ZW1wbGF0ZScsJHRoaXMtPkxhbmcoJ3Byb21wdF90ZW1wbGF0ZScpKTsNCiR0aGlzLT5zbWFydHktPmFzc2lnbigndGVtcGxhdGUnLA0KCQkgICAgICAkdGhpcy0+Q3JlYXRlU3ludGF4QXJlYSAoJGlkLCAkY29udGVudHMsICd0ZW1wbGF0ZWNvbnRlbnQnKSk7DQoJCQkgIA0KCQkgIA0KDQoJCQkgIA0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzdWJtaXQnLCR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCAoJGlkLCAnc3VibWl0YnV0dG9uJywNCgkJCQkJCQkgJHRoaXMtPkxhbmcgKCdzdWJtaXQnKSkpOw0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdjYW5jZWwnLCR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCAoJGlkLCAnY2FuY2VsJywgDQoJCQkJCQkJICR0aGlzLT5MYW5nICgnY2FuY2VsJykpKTsNCg0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdhcHBseScsJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0ICgkaWQsICdhcHBseScsIA0KCQkJCQkJCSAkdGhpcy0+TGFuZyAoJ2FwcGx5JykpKTsNCiR0aGlzLT5zbWFydHktPmFzc2lnbigncmV2ZXJ0JywkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQgKCRpZCwgJ3JldmVydCcsIA0KCQkJCQkJCSAkdGhpcy0+TGFuZyAoJ3JldmVydCcpKSk7DQoNCg0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdmb3JtZW5kJywkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsNCg0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdmaWx0ZXJQcm9wJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZmlsdGVyUHJvcCcsICcnKSk7DQoNCg0KZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCdlZGl0X3RlbXBsYXRlLnRwbCcpOw0KDQoNCg0KPz4NCg==]]></data>
	</file>
	<file>
	  <filename>/action.form.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCi8qKg0KICogTW9kdWxlOiBTY3JpcHREZXBsb3kgLSBNaW5pZnkgYW5kIGRlcGxveW1lbnQgb2YgSlMgQ1NTIGFuZCBIVE1MDQogKiANCiAqIA0KICogQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykNCiAqIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnDQogKiBUaGUgbW9kdWxlJ3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvc2NyaXB0ZGVwbG95Lw0KICogDQogKiBAcGFja2FnZSBTY3JpcHREZXBsb3kNCiAqIEBhdXRob3IgamVyZW15QmFzcyA8amVyZW15QmFzc0BjYWJsZW9uZS5uZXQ+DQogKiBAY29weXJpZ2h0IEplcmVteSBCYXNzDQogKiBAbGljZW5zZSBodHRwOi8vd3d3LmdudS5vcmcvY29weWxlZnQvZ3BsLmh0bWwgRnJlZWx5IGF2YWlsYWJsZSB1bmRlciBHUEwNCiAqLyANCg0KDQokY29uZmlnID0gY21zbXMoKS0+Y29uZmlnOw0KJHBhZ2VpbmZvID0gY21zbXMoKS0+dmFyaWFibGVzWydwYWdlaW5mbyddOw0KJHN0eWxlc2hlZXRvcHMgPSBjbXNtcygpLT5HZXRTdHlsZXNoZWV0T3BlcmF0aW9ucygpOw0KJGFsbHN0eWxlc2hlZXRzID0gJHN0eWxlc2hlZXRvcHMtPkxvYWRTdHlsZXNoZWV0cygpOw0KJHRtcGFyciA9IGFycmF5KCk7DQpmb3JlYWNoKCAkYWxsc3R5bGVzaGVldHMgYXMgJG9zICkNCnsNCiAgJHRtcGFyclskb3MtPklkKCldID0gJG9zLT5OYW1lKCk7DQp9DQoNCiRzdHlsZXMgPSBuZXcgU3R5bGVzaGVldF9SZWNvcmQoKTsNCiRzdHlsZXMtPkxvYWQoJHBhZ2VpbmZvLT50ZW1wbGF0ZV9pZCk7DQokb3B0aW9ucyA9IGFycmF5KCk7DQppZiggJHN0eWxlcy0+cHJlZmVycmVkX3NzID4gMCApDQogIHsNCiAgICAkb2JqID0gbmV3IFN0ZENsYXNzOw0KICAgICRvYmotPmlkID0gJHN0eWxlcy0+cHJlZmVycmVkX3NzOw0KICAgICRvYmotPm5hbWUgPSAkdG1wYXJyWyRzdHlsZXMtPnByZWZlcnJlZF9zc107DQogICAgJG9wdGlvbnNbXSA9ICRvYmo7DQogIH0NCg0KZm9yZWFjaCggJHN0eWxlcy0+YWx0ZXJuYXRlIGFzICRhICkNCnsNCiAgICAkb2JqID0gbmV3IFN0ZENsYXNzOw0KICAgICRvYmotPmlkID0gJGE7DQogICAgJG9iai0+bmFtZSA9ICR0bXBhcnJbJGFdOw0KICAgICRvcHRpb25zW10gPSAkb2JqOw0KfQ0KDQokc21hcnR5LT5hc3NpZ24oJ29wdGlvbnMnLCRvcHRpb25zKTsNCiRzbWFydHktPmFzc2lnbigncHJvbXB0X3N0eWxlc2hlZXQnLCR0aGlzLT5MYW5nKCdwcm9tcHRfc3R5bGVzaGVldCcpKTsNCmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhYmFzZSgnZm9ybV90ZW1wbGF0ZScpOw0KDQovLyBFT0YNCj8+DQo=]]></data>
	</file>
	<file>
	  <filename>/action.jsinclude.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCi8qKg0KICogTW9kdWxlOiBTY3JpcHREZXBsb3kgLSBNaW5pZnkgYW5kIGRlcGxveW1lbnQgb2YgSlMgQ1NTIGFuZCBIVE1MDQogKiANCiAqIA0KICogQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykNCiAqIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnDQogKiBUaGUgbW9kdWxlJ3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvc2NyaXB0ZGVwbG95Lw0KICogDQogKiBAcGFja2FnZSBTY3JpcHREZXBsb3kNCiAqIEBhdXRob3IgamVyZW15QmFzcyA8amVyZW15QmFzc0BjYWJsZW9uZS5uZXQ+DQogKiBAY29weXJpZ2h0IEplcmVteSBCYXNzDQogKiBAbGljZW5zZSBodHRwOi8vd3d3LmdudS5vcmcvY29weWxlZnQvZ3BsLmh0bWwgRnJlZWx5IGF2YWlsYWJsZSB1bmRlciBHUEwNCiAqLyANCg0KZWNobyAnPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0ibW9kdWxlcy8nLiR0aGlzLT5HZXROYW1lKCkuJy9zd2Fwc3R5bGUuanMiPjwvc2NyaXB0PicuIlxuIjsNCi8vRU9GDQo/Pg0K]]></data>
	</file>
	<file>
	  <filename>/action.revert.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCi8qKg0KICogTW9kdWxlOiBTY3JpcHREZXBsb3kgLSBNaW5pZnkgYW5kIGRlcGxveW1lbnQgb2YgSlMgQ1NTIGFuZCBIVE1MDQogKiANCiAqIA0KICogQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykNCiAqIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnDQogKiBUaGUgbW9kdWxlJ3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvc2NyaXB0ZGVwbG95Lw0KICogDQogKiBAcGFja2FnZSBTY3JpcHREZXBsb3kNCiAqIEBhdXRob3IgamVyZW15QmFzcyA8amVyZW15QmFzc0BjYWJsZW9uZS5uZXQ+DQogKiBAY29weXJpZ2h0IEplcmVteSBCYXNzDQogKiBAbGljZW5zZSBodHRwOi8vd3d3LmdudS5vcmcvY29weWxlZnQvZ3BsLmh0bWwgRnJlZWx5IGF2YWlsYWJsZSB1bmRlciBHUEwNCiAqLyANCg0KLy9pZiAoIWlzc2V0KGNtc21zKCkpKSBleGl0Ow0KDQoNCiRDTVNfVVNFUl9LRVk9Q01TX1NFQ1VSRV9QQVJBTV9OQU1FLic9Jy4kX1NFU1NJT05bQ01TX1VTRVJfS0VZXTsNCg0KaWYoISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBUZW1wbGF0ZXMnKSl7DQogICAgLy8gdG9kbywgcGVybWlzc2lvbnMgbWVzc2FnZSBoZXJlDQogICAgcmV0dXJuOw0KfQ0KJGNvbmZpZyA9IGNtc21zKCktPkdldENvbmZpZygpOyANCmlmKCFpc3NldCgkcGFyYW1zWydhY3RpdmVfdGFiJ10pKXsNCiRwYXJhbXNbJ2FjdGl2ZV90YWInXT0nc2NyaXB0X3RlbXBsYXRlJzsJDQp9DQoNCg0KLy8vYWRkIHRoZSBjbGVhciBoaXN0b3J5IHN0dWZmLi4uIA0KDQovLwlpZihpc3NldCgkcGFyYW1zWydjbGVhcmNhY2hlJ10pJiYkcGFyYW1zWydjbGVhcmNhY2hlJ109PSdDbGVhciBDYWNoZScpew0KLy8JJExJTUlUPSR0aGlzLT5HZXRQcmVmZXJlbmNlKCdyZXZpc2lvbl9MSU1JVCcpOwkNCi8vCWZ1bmN0aW9uIENsZWFyVGhpc1JldmlzaW9uKCRzSUQsKTsNCi8vZWNobyAkdGhpcy0+anNOY3NzKCk7DQplY2hvICc8ZGl2IGlkPSJkZW1vdGlwIj48aW1nIGNsYXNzPSJwcm9ncmVzcyIgc3JjPSIuLi9tb2R1bGVzL1NjcmlwdERlcGxveS9pbWFnZXMvbG9hZGluZy5naWYiIGFsdD0iIi8+PC9kaXY+JzsNCg0KLy8gaGFuZGxlIGVycm9ycy4NCmlmKGlzc2V0KCRwYXJhbXNbJ2Vycm9ycyddKSl7DQogICAgZWNobyAkdGhpcy0+U2hvd0Vycm9ycygkcGFyYW1zWydlcnJvcnMnXSk7DQp9DQoNCiRwYXJhbXNbJ29yaWdhY3Rpb24nXSA9ICRwYXJhbXNbJ2FjdGlvbiddOw0KJHNJRD0kcGFyYW1zWydTY3JpcHRTZXQnXTsNCg0KaWYoaXNzZXQoJHBhcmFtc1snY2xlYXJSZXYnXSkpew0KCSRMSU1JVD0kdGhpcy0+R2V0UHJlZmVyZW5jZSgncmV2aXNpb25fTElNSVQnKTsJDQoJJHRoaXMtPkNsZWFyVGhpc1JldmlzaW9uKCRzSUQpOw0KfQ0KDQoNCg0KLy8kdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RpdGxlJyxjbXNfaHRtbF9lbnRpdHlfZGVjb2RlKCRwYXJhbXNbJ3RpdGxlJ10pKTsNCi8vJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdtb2RlJywgJHBhcmFtc1snbW9kZSddICk7ICANCg0KLy8kdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2hpZGRlbk1vZGUnLA0KLy8JCQkkdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLCAnbW9kZScsICRwYXJhbXNbJ21vZGUnXSkNCi8vCQkJLiR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsICdzcF8nLCAkQ01TX1VTRVJfS0VZKQ0KLy8JCQkpOw0KJGxvZz0kdGhpcy0+R2V0UmV2aXNpb25zKCRzSUQsMSw5OTk5OSwic2NyaXB0SUQ9JyRzSUQnIik7CQkNCiRsYXN0Vj0kdGhpcy0+R2V0TGFzdFJldmlzaW9uKCRzSUQpOw0KDQokU2NyaXB0TmFtZT0kdGhpcy0+R2V0U2NyaXB0TmFtZSgkc0lEKTsNCg0KDQoJICAkdGFibGU9ICAnPGgxIHN0eWxlPSJmbG9hdDogbGVmdDsiPlZlcnNpb24gSGlzdG9yeSBmb3Igc2NyaXB0IG5hbWUgPHNwYW4gaWQ9IlNuYW1lIj4nLiR0aGlzLT5DcmVhdGVMaW5rKCAkaWQsICdlZGl0X3NjcmlwdCcsICRyZXR1cm5pZCwkU2NyaXB0TmFtZSwgYXJyYXkoJ1NjcmlwdFNldCcgPT4gJHNJRCwnYWN0aXZlX3RhYicgPT4gJ3NjcmlwdF90ZW1wbGF0ZScsJ21vZGUnPT4nZWRpdCcpKS4nPC9zcGFuPiAoaWQgPHNwYW4gaWQ9IlNpZCI+Jy4kc0lELic8L3NwYW4+KTwvaDE+PGJyLz48ZGl2IGlkPSJ2ZXJzaW9uUGxhbmUiPg0KCSAgDQoJICA8dGFibGUgY2VsbHNwYWNpbmc9IjEiIGNsYXNzPSJ0YWJsZXNvcnRlciIgaWQ9IlRTMSI+DQoJCQk8dGhlYWQ+DQoJCQkJPHRyPjx0aD51c2VySUQ8L3RoPg0KCQkJCQk8dGg+cmV2aXNpb248L3RoPg0KCQkJCQk8dGg+Y3JlYXRlZDwvdGg+DQoJCQkJPC90cj4NCgkJCTwvdGhlYWQ+DQoJCQk8dGJvZHk+Jy4kbG9nLic8L3Rib2R5Pg0KCQk8L3RhYmxlPg0KCQk8IS0tPGRpdiBpZD0iY1NjcmlwdFBsYW5lIj48ZGl2ICBpZD0iY1NjcmlwdFBsYW5lSU5GTyI+PC9kaXY+LS0+DQoJCTx0ZXh0YXJlYSBpZD0iY1NjcmlwdFBsYW5lIiByb3dzPSIxNSIgPg0KCQkNCgkJJy4kdGhpcy0+R2V0VGhpc1JldmlzaW9uKCRzSUQgLCRsYXN0VikuJw0KCQk8L3RleHRhcmVhPjwhLS08L2Rpdj4tLT4NCgkJPGRpdiBpZD0icGFnZXIiIGNsYXNzPSJwYWdlciI+DQoJDQoJCTxpbWcgc3JjPSIuLi9tb2R1bGVzL1NjcmlwdERlcGxveS9pbmNsdWRlcy9hZGRvbnMvcGFnZXIvaWNvbnMvZmlyc3QucG5nIiBjbGFzcz0iZmlyc3QiLz4NCgkJPGltZyBzcmM9Ii4uL21vZHVsZXMvU2NyaXB0RGVwbG95L2luY2x1ZGVzL2FkZG9ucy9wYWdlci9pY29ucy9wcmV2LnBuZyIgY2xhc3M9InByZXYiLz4NCgkJPGlucHV0IHR5cGU9InRleHQiIGNsYXNzPSJwYWdlZGlzcGxheSIvPg0KCQk8aW1nIHNyYz0iLi4vbW9kdWxlcy9TY3JpcHREZXBsb3kvaW5jbHVkZXMvYWRkb25zL3BhZ2VyL2ljb25zL25leHQucG5nIiBjbGFzcz0ibmV4dCIvPg0KCQk8aW1nIHNyYz0iLi4vbW9kdWxlcy9TY3JpcHREZXBsb3kvaW5jbHVkZXMvYWRkb25zL3BhZ2VyL2ljb25zL2xhc3QucG5nIiBjbGFzcz0ibGFzdCIvPg0KCQk8c2VsZWN0IGNsYXNzPSJwYWdlc2l6ZSI+DQoJCTxvcHRpb24gc2VsZWN0ZWQ9InNlbGVjdGVkIiB2YWx1ZT0iNSI+NTwvb3B0aW9uPg0KCQkJPG9wdGlvbiB2YWx1ZT0iMTAiPjEwPC9vcHRpb24+DQoJCQk8b3B0aW9uIHZhbHVlPSIyMCI+MjA8L29wdGlvbj4NCgkJCTxvcHRpb24gdmFsdWU9IjMwIj4zMDwvb3B0aW9uPg0KCQkJPG9wdGlvbiAgdmFsdWU9IjQwIj40MDwvb3B0aW9uPg0KCQk8L3NlbGVjdD4NCjwvZGl2PjwvZGl2Pg0KJzsNCiR0aGlzLT5zbWFydHktPmFzc2lnbigndGFibGUnLCAkdGFibGUpOw0KDQoNCiAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2NsZWFyUmV2X3N0YXJ0JywgJHRoaXMtPkNyZWF0ZUZvcm1TdGFydCgkaWQsICdyZXZlcnQnLCAkcmV0dXJuaWQsICdwb3N0JywgJ211bHRpcGFydC9mb3JtLWRhdGEnKSk7DQogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdjbGVhclJldl9lbmQnLCAkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsNCgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2NsZWFyUmV2JywgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwgJ2NsZWFyUmV2JywgJHRoaXMtPkxhbmcoJ2NsZWFyUmV2JykpKTsNCiAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2hpZGRlbicsDQoJCQkgICR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsICdTY3JpcHRTZXQnLCRzSUQgKQ0KCQkJICApOw0KDQogDQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2Zvcm1fY2FuY2VsJywgJzxpbnB1dCB0eXBlPSJidXR0b24iIHZhbHVlPSInLiR0aGlzLT5MYW5nKCdmb3JtX2NhbmNlbCcpLiciIG9uY2xpY2s9ImphdmFzY3JpcHQ6d2luZG93Lmhpc3RvcnkuZ28oLTEpIiAvPicpOwkgIA0KLy8kdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3N1Ym1pdCcsJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0ICgkaWQsICdzdWJtaXRidXR0b24nLA0KLy8JCQkJCQkJICR0aGlzLT5MYW5nICgnc3VibWl0JykpKTsNCi8vJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdjYW5jZWwnLCR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCAoJGlkLCAnY2FuY2VsJywgDQovLwkJCQkJCQkgJHRoaXMtPkxhbmcgKCdjYW5jZWwnKSkpOw0KLy8NCi8vJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdhcHBseScsJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0ICgkaWQsICdhcHBseScsIA0KLy8JCQkJCQkJICR0aGlzLT5MYW5nICgnYXBwbHknKSkpOw0KLy8kdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3JldmVydCcsJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0ICgkaWQsICdyZXZlcnQnLCANCi8vCQkJCQkJCSAkdGhpcy0+TGFuZyAoJ3JldmVydCcpKSk7DQovLw0KLy8NCi8vJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdmb3JtZW5kJywkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsNCg0KDQoNCmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSgncmV2ZXJ0LnRwbCcpOw0KDQo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.saveVALsettings.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCi8qLS1DU1MtLSovDQppZiAoaXNzZXQoJHBhcmFtc1siQ1NTcHJvZmlsZSJdKSkgJHRoaXMtPlNldFByZWZlcmVuY2UoJ0NTU3Byb2ZpbGUnLCAkcGFyYW1zWyJDU1Nwcm9maWxlIl0pOw0KaWYgKGlzc2V0KCRwYXJhbXNbIlZBTExhbmciXSkpICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdWQUxMYW5nJywgJHBhcmFtc1siVkFMTGFuZyJdKTsJCQkJCQkJCQkJCQkJCQkJCQkJDQppZiAoaXNzZXQoJHBhcmFtc1sidzNjQ1NTd2FybmluZyJdKSkgJHRoaXMtPlNldFByZWZlcmVuY2UoJ3czY0NTU3dhcm5pbmcnLCAkcGFyYW1zWyJ3M2NDU1N3YXJuaW5nIl0pOwkJCQkJCQkJCQkJCQkJCQkJCQkNCmlmIChpc3NldCgkcGFyYW1zWyJ1c2VybWVkaXVtIl0pKSAkdGhpcy0+U2V0UHJlZmVyZW5jZSgndXNlcm1lZGl1bScsICRwYXJhbXNbInVzZXJtZWRpdW0iXSk7CQkJCQkJCQkJCQkJCQkJCQkJCQ0KaWYgKGlzc2V0KCRwYXJhbXNbIlNob3dWYWwiXSkpICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdTaG93VmFsJywgJHBhcmFtc1siU2hvd1ZhbCJdKTsJCQkJCQkJCQkJCQkJCQkJCQkJCQ0KaWYgKGlzc2V0KCRwYXJhbXNbIlR1cm5PTlZhbCJdKSkgJHRoaXMtPlNldFByZWZlcmVuY2UoJ1R1cm5PTlZhbCcsICRwYXJhbXNbIlR1cm5PTlZhbCJdKTsJDQppZiAoaXNzZXQoJHBhcmFtc1siZmlsdGVyUHJvcCJdKSkgJHRoaXMtPlNldFByZWZlcmVuY2UoJ2ZpbHRlclByb3AnLCAkcGFyYW1zWyJmaWx0ZXJQcm9wIl0pOwkNCmlmIChpc3NldCgkcGFyYW1zWyJob3RMaW5rQ2hlY2siXSkpICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdob3RMaW5rQ2hlY2snLCAkcGFyYW1zWyJob3RMaW5rQ2hlY2siXSk7CQ0KDQoNCi8qLS1IVE1MLS0qLw0KaWYgKGlzc2V0KCRwYXJhbXNbIlR1cm5PTlZhbEhUTUwiXSkpICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdUdXJuT05WYWxIVE1MJywgJHBhcmFtc1siVHVybk9OVmFsSFRNTCJdKTsJCQkJCQkJCQkJCQkJCQkJCQkJDQppZiAoaXNzZXQoJHBhcmFtc1siZG9jVHlwZSJdKSkgJHRoaXMtPlNldFByZWZlcmVuY2UoJ2RvY1R5cGUnLCAkcGFyYW1zWyJkb2NUeXBlIl0pOwkJCQkJCQkJCQkJCQkJCQkJCQkJDQppZiAoaXNzZXQoJHBhcmFtc1siZW5jb2RpbmciXSkpICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdlbmNvZGluZycsICRwYXJhbXNbImVuY29kaW5nIl0pOwkNCmlmIChpc3NldCgkcGFyYW1zWyJWYWxIVE1MVmVyYm9zZSJdKSkgJHRoaXMtPlNldFByZWZlcmVuY2UoJ1ZhbEhUTUxWZXJib3NlJywgJHBhcmFtc1siVmFsSFRNTFZlcmJvc2UiXSk7CQ0KaWYgKGlzc2V0KCRwYXJhbXNbImRlZmF1bHRQYWdlIl0pKSAkdGhpcy0+U2V0UHJlZmVyZW5jZSgnZGVmYXVsdFBhZ2UnLCAkcGFyYW1zWyJkZWZhdWx0UGFnZSJdKTsJDQoNCmlmKCRwYXJhbXNbImRlZmF1bHRQYWdlIl0hPSdhdXRvJyl7DQoJaWYoJHBhcmFtc1siZGVmYXVsdFBhZ2UiXSE9J3VzZXJHZW5lcmF0ZWQnKXsNCgkJaWYgKGlzc2V0KCRwYXJhbXNbIm93bkNvbnRlbnQiXSkpICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdvd25Db250ZW50JywgJycpOw0KCX1lbHNlew0KCQlpZiAoaXNzZXQoJHBhcmFtc1sib3duQ29udGVudCJdKSkgJHRoaXMtPlNldFByZWZlcmVuY2UoJ293bkNvbnRlbnQnLCAkcGFyYW1zWyJvd25Db250ZW50Il0pOw0KCX0NCglpZigkcGFyYW1zWyJkZWZhdWx0UGFnZSJdIT0ndXNlckNob2ljZScpew0KCQlpZiAoaXNzZXQoJHBhcmFtc1sidXNlckRlZmF1bHRQYWdlIl0pKSAkdGhpcy0+U2V0UHJlZmVyZW5jZSgndXNlckRlZmF1bHRQYWdlJywgJycpOwkNCgl9ZWxzZXsNCgkJaWYgKGlzc2V0KCRwYXJhbXNbInVzZXJEZWZhdWx0UGFnZSJdKSkgJHRoaXMtPlNldFByZWZlcmVuY2UoJ3VzZXJEZWZhdWx0UGFnZScsICRwYXJhbXNbInVzZXJEZWZhdWx0UGFnZSJdKTsNCgl9DQp9DQoJDQokcGFyYW1zID0gYXJyYXkoJ3RhYl9tZXNzYWdlJz0+ICdzZXR0aW5nc3NhdmVkJywgJ2FjdGl2ZV90YWInID0+ICdWYWxzZXR0aW5ncycpOw0KCSR0aGlzLT5SZWRpcmVjdCgkaWQsICdkZWZhdWx0YWRtaW4nLCAnJywgJHBhcmFtcyk7DQovLyR0aGlzLT5SZWRpcmVjdCgkaWQsICdEZXBsb3ltZW50c2V0dGluZ3MnLCAkcmV0dXJuaWQsYXJyYXkoIm1vZHVsZV9tZXNzYWdlIj0+JHRoaXMtPkxhbmcoInNldHRpbmdzc2F2ZWQiKSkpOw0KPz4=]]></data>
	</file>
	<file>
	  <filename>/action.save_deployment_settings.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCg0KDQppc3NldCgkcGFyYW1zWydzbWFydHlPbiddKSA/ICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdzbWFydHlPbicsJHBhcmFtc1snc21hcnR5T24nXSk6JHRoaXMtPlNldFByZWZlcmVuY2UoJ3NtYXJ0eU9uJywwKTsNCmlzc2V0KCRwYXJhbXNbJ3Jvb3RVUkxfaW5wdXQnXSkgPyAkdGhpcy0+U2V0UHJlZmVyZW5jZSgncm9vdFVSTCcsICRwYXJhbXNbJ3Jvb3RVUkxfaW5wdXQnXSk6JHRoaXMtPlNldFByZWZlcmVuY2UoJ3Jvb3RVUkwnLCcnKTsNCmlzc2V0KCRwYXJhbXNbJ2ZpbGVUaW1lX2Nzc191cmxzJ10pID8gJHRoaXMtPlNldFByZWZlcmVuY2UoJ2ZpbGVUaW1lX2Nzc191cmxzJywgJHBhcmFtc1snZmlsZVRpbWVfY3NzX3VybHMnXSk6JHRoaXMtPlNldFByZWZlcmVuY2UoJ2ZpbGVUaW1lX2Nzc191cmxzJywxKTsNCmlzc2V0KCRwYXJhbXNbJ3ByZWxvYWRfQ1NTaW1hZ2VfaW5wdXQnXSkgPyAkdGhpcy0+U2V0UHJlZmVyZW5jZSgncHJlbG9hZF9DU1NpbWFnZScsICRwYXJhbXNbJ3ByZWxvYWRfQ1NTaW1hZ2VfaW5wdXQnXSk6JHRoaXMtPlNldFByZWZlcmVuY2UoJ3ByZWxvYWRfQ1NTaW1hZ2UnLCAwKTsJDQoNCiBpZiAoaXNzZXQoJHBhcmFtc1sibWFuZ2xldHlwZSJdKSkgJHRoaXMtPlNldFByZWZlcmVuY2UoIm1hbmdsZXR5cGUiLCRwYXJhbXNbIm1hbmdsZXR5cGUiXSk7DQogaWYgKGlzc2V0KCRwYXJhbXNbImRlYnVnIl0pKSB7DQogICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgiZGVidWciLCJ0cnVlIik7DQogfSBlbHNlIHsNCiAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCJkZWJ1ZyIsImZhbHNlIik7DQogfQ0KDQogaWYgKGlzc2V0KCRwYXJhbXNbImhpZGVtZXNzYWdlcyJdKSkgew0KICAgJHRoaXMtPlNldFByZWZlcmVuY2UoImhpZGVtZXNzYWdlcyIsJHBhcmFtc1siaGlkZW1lc3NhZ2VzIl0pOw0KIH0gZWxzZSB7DQogICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgiaGlkZW1lc3NhZ2VzIiwiMCIpOw0KIH0NCg0KIGlmIChpc3NldCgkcGFyYW1zWyJpbmRlbnR3aWR0aCJdKSkgJHRoaXMtPlNldFByZWZlcmVuY2UoImluZGVudHdpZHRoIiwkcGFyYW1zWyJpbmRlbnR3aWR0aCJdKTsNCiBpZiAoaXNzZXQoJHBhcmFtc1siZGVidWdsZXZlbCJdKSkgJHRoaXMtPlNldFByZWZlcmVuY2UoImRlYnVnbGV2ZWwiLCRwYXJhbXNbImRlYnVnbGV2ZWwiXSk7DQogaWYgKGlzc2V0KCRwYXJhbXNbImZvcmNlbG93ZXJ0YWdzIl0pKSB7DQogICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgiZm9yY2Vsb3dlcnRhZ3MiLCRwYXJhbXNbImZvcmNlbG93ZXJ0YWdzIl0pOw0KIH0gZWxzZSB7DQogICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgiZm9yY2Vsb3dlcnRhZ3MiLCIwIik7DQogfQ0KIA0KIA0KICRwYXJhbXMgPSBhcnJheSgndGFiX21lc3NhZ2UnPT4gJ3NldHRpbmdzc2F2ZWQnLCAnYWN0aXZlX3RhYicgPT4gJ2h0bWxzZXR0aW5ncycpOw0KCSR0aGlzLT5SZWRpcmVjdCgkaWQsICdkZWZhdWx0YWRtaW4nLCAnJywgJHBhcmFtcyk7DQovLyR0aGlzLT5SZWRpcmVjdCgkaWQsICdEZXBsb3ltZW50c2V0dGluZ3MnLCAkcmV0dXJuaWQsYXJyYXkoIm1vZHVsZV9tZXNzYWdlIj0+JHRoaXMtPkxhbmcoInNldHRpbmdzc2F2ZWQiKSkpOw0KPz4=]]></data>
	</file>
	<file>
	  <filename>/action.save_group_assign.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCi8qKg0KICogTW9kdWxlOiBTY3JpcHREZXBsb3kgLSBNaW5pZnkgYW5kIGRlcGxveW1lbnQgb2YgSlMgQ1NTIGFuZCBIVE1MDQogKiANCiAqIA0KICogQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykNCiAqIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnDQogKiBUaGUgbW9kdWxlJ3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvc2NyaXB0ZGVwbG95Lw0KICogDQogKiBAcGFja2FnZSBTY3JpcHREZXBsb3kNCiAqIEBhdXRob3IgamVyZW15QmFzcyA8amVyZW15QmFzc0BjYWJsZW9uZS5uZXQ+DQogKiBAY29weXJpZ2h0IEplcmVteSBCYXNzDQogKiBAbGljZW5zZSBodHRwOi8vd3d3LmdudS5vcmcvY29weWxlZnQvZ3BsLmh0bWwgRnJlZWx5IGF2YWlsYWJsZSB1bmRlciBHUEwNCiAqLyANCg0KCS8vaWYgKCFpc3NldChjbXNtcygpKSkgZXhpdDsNCgkNCgkkY29uZmlnID0gY21zbXMoKS0+R2V0Q29uZmlnKCk7IA0KCWlmKGlzc2V0KCRwYXJhbXNbJ2NhbmNlbCddKSl7DQoJCSRwYXJhbXMgPSBhcnJheSgndGFiX21lc3NhZ2UnPT4gJ0NhbmNlbGVkJywgJ2FjdGl2ZV90YWInID0+ICdncm91cHMnKTsNCgkJJHRoaXMtPlJlZGlyZWN0KCRpZCwgJ2RlZmF1bHRhZG1pbicsICcnLCAkcGFyYW1zKTsNCgl9DQokR3JvdXBOYW1lPScnOw0KJEdyb3VwdFNldD0nJzsNCgkkZGIgPSAkdGhpcy0+R2V0RGIoKTsNCi8vCWlmKGlzc2V0KCRwYXJhbXNbJ2dyb3VwJ10pKXsNCi8vCQlpZihpc19udW1lcmljKCRwYXJhbXNbJ2dyb3VwJ10pKXsNCi8vCQkJJEdpZD0kcGFyYW1zWydncm91cCddOw0KLy8JCQkkR3JvdXBJRD0kcGFyYW1zWydncm91cCddOw0KLy8JCX1lbHNlew0KLy8JCQkkR2lkPSRwYXJhbXNbJ0dyb3VwdFNldCddOw0KLy8JCQkkR3JvdXBJRD0kcGFyYW1zWydHcm91cHRTZXQnXTsNCi8vCQl9DQovLwl9ZWxzZXsNCi8vCQkkR2lkPSRwYXJhbXNbJ0dyb3VwdFNldCddOw0KLy8JCSRHcm91cElEPSRwYXJhbXNbJ0dyb3VwdFNldCddOw0KLy8JfQ0KCWlmKCRwYXJhbXNbJ21vZGUnXT09J2FkZCcpew0KCQkJJEdyb3VwTmFtZT0kcGFyYW1zWydHcm91cHRTZXQnXTsNCgkJCSRHcm91cHRUeXBlPSRwYXJhbXNbJ0dyb3VwdFR5cGUnXTsNCgkJCSRxdWVyeSA9ICJJTlNFUlQgSU5UTyAiLlNEX0dST1VQLiIgU0VUIEdyb3VwdFNldD0/LCBHcm91cHRUeXBlPT8iOw0KCQkJJHJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkoJEdyb3VwTmFtZSwkR3JvdXB0VHlwZSkpOw0KCQkJaWYoISRyZXN1bHQpew0KCQkJICAvL2VjaG8gJ0Vycm9yOiAnLm15c3FsX2Vycm9yKCk7DQoJCQkgICRwYXJhbXNbJ21lc3NhZ2UnXSA9IG15c3FsX2Vycm9yKCk7DQoJCQl9ZWxzZXsNCgkJCSAgICRwYXJhbXNbJ21lc3NhZ2UnXSA9ICR0aGlzLT5MYW5nKCdwcmVmc3VwZGF0ZWQnKTsNCgkJCX0NCgkJCSRHaWQ9JHRoaXMtPkdldEdyb3VwSUQoJEdyb3VwTmFtZSk7DQoJfQ0KCQ0KCS8vJEdyb3VwdFNldD0kcGFyYW1zWydHcm91cHRTZXQnXTsNCglpZigkcGFyYW1zWydtb2RlJ109PSdlZGl0Jyl7DQoJCSRHaWQ9JHBhcmFtc1snR3JvdXB0SUQnXTsNCgl9DQoJZm9yZWFjaCgkcGFyYW1zIGFzICRrZXkgPT4gJHBhcmFtc0l0ZW0pew0KCQkJDQoJfQ0KCQ0KCWlmKGlzc2V0KCRwYXJhbXNbJ1JFT1JERVInXSkpew0KCQlmb3JlYWNoKCRwYXJhbXNbJ1NjcmlwdE9SREVSJ10gYXMgJGtleSA9PiAkU2NyaXB0T1JERVIpew0KCQkJCQ0KCQkJJFNjcmlwdElEPSRrZXk7DQoJCQkNCgkJCQ0KCQkJJHF1ZXJ5ID0gIlVQREFURSAiLlNEX0dST1VQQVNTSUdOTUVOVC4iIFNFVCBTY3JpcHRPUkRFUj0/IFdIRVJFIFNjcmlwdElEPSA/IEFORCBHcm91cHRTZXRJRD0/IjsNCgkNCgkJCSRyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KCRTY3JpcHRPUkRFUiwkU2NyaXB0SUQsJEdpZCkpOw0KCQkJJGRiLT5zcWw7DQoJCQlpZighJHJlc3VsdCl7DQoJCQkgIC8vZWNobyAnRXJyb3I6ICcubXlzcWxfZXJyb3IoKTsNCgkJCSAgJHBhcmFtc1snbWVzc2FnZSddID0gbXlzcWxfZXJyb3IoKTsNCgkJCSAgDQoJCQl9ZWxzZXsNCgkJCSAgICRwYXJhbXNbJ21lc3NhZ2UnXSA9ICR0aGlzLT5MYW5nKCdwcmVmc3VwZGF0ZWQnKTsNCgkJCX0NCgkJfQ0KCQkkcGFyYW1zID0gYXJyYXkoJ3RhYl9tZXNzYWdlJz0+ICdFZGl0ZWQnLCAnYWN0aXZlX3RhYicgPT4gJ3NjcmlwdF90ZW1wbGF0ZScsJ21vZGUnPT4nZWRpdCcsJ0dyb3VwdFNldCc9PiRHcm91cHRTZXQsJ0dyb3VwdElEJz0+JEdpZCwnZ3JvdXAnPT4kR2lkLCdncm91cHQxJz0+JEdpZCk7DQoJCSR0aGlzLT5SZWRpcmVjdCgkaWQsICdlZGl0YXNzaWdubWVudCcsICcnLCAkcGFyYW1zKTsNCgl9DQoNCg0KCS8vJHNjcmlwdFNpemU9bWJfc3RybGVuKCRfUE9TVFsnbTFfU2NyaXB0SXNfaW5wdXQnXSwgJzhiaXQnKTsNCgkvLyRzY3JpcHRTaXplPXN0cmxlbih1dGY4X2RlY29kZSgkcGFyYW1zWydTY3JpcHRJc19pbnB1dCddKSk7DQoNCg0KCWlmKCRwYXJhbXNbJ21vZGUnXT09J2VkaXQnKXsNCgkJCS8vJEdyb3VwTmFtZT0kcGFyYW1zWydHcm91cHRTZXQnXTsNCgkJCSRTY3JpcHRJRD0kcGFyYW1zWydTY3JpcHRQaWNrZXInXTsNCgkJDQoJCQkkYWxsZGJQcm9maWxlcyA9ICR0aGlzLT5zZWxlY3RHcm91cHNMaXN0aW5ncygkR2lkKTsNCg0KCQkNCgkJCSRxdWVyeSA9ICJERUxFVEUgc24gRlJPTSAiLlNEX0dST1VQQVNTSUdOTUVOVC4iIEFTIHNuIFdIRVJFIHNuLkdyb3VwdFNldElEID0gPyI7DQoJCQkkcmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkR2lkKSk7DQoJCQkNCgkJCSRTY3JpcHRPUkRFUj0nJzsNCgkJCSBmb3JlYWNoKCRTY3JpcHRJRCBhcyAka2V5ID0+ICRTQXJyYXlJdGVtKXsNCgkJCQkgJFNjcmlwdE9SREVSPScnOw0KCQkJCWZvcmVhY2goJGFsbGRiUHJvZmlsZXMgYXMgJGtleXMgPT4gJG9uZWRiUHJvZmlsZSApew0KCQkJCQlpZigka2V5cz09JFNBcnJheUl0ZW0pew0KCQkJCQkJJFNjcmlwdE9SREVSPSRvbmVkYlByb2ZpbGVbJ1NjcmlwdE9SREVSJ107DQoJCQkJCX0NCgkJCQl9DQoJCQkJIA0KCQkJCSRxdWVyeSA9ICJJTlNFUlQgSU5UTyAiLlNEX0dST1VQQVNTSUdOTUVOVC4iIChHcm91cHRTZXRJRCwgU2NyaXB0SUQsIFNjcmlwdE9SREVSKSBWQUxVRVMgKCA/LD8sPykiOw0KCQkJCSRyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KCRHaWQsJFNBcnJheUl0ZW0sJFNjcmlwdE9SREVSKSk7DQoJCQkJaWYoISRyZXN1bHQpew0KCQkJCSAgLy9lY2hvICdFcnJvcjogJy5teXNxbF9lcnJvcigpOw0KCQkJCSAgJHBhcmFtc1snbWVzc2FnZSddID0gbXlzcWxfZXJyb3IoKTsNCgkJCQl9ZWxzZXsNCgkJCQkgICAkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygncHJlZnN1cGRhdGVkJyk7DQoJCQkJfQkJCQ0KCQkJfQ0KCX0vL2Vsc2UgaWYoJHBhcmFtc1snbW9kZSddPT0nYWRkU2NyaXB0Jyl7CQ0KLy8JCSANCi8vCQkkcXVlcnkgPSAiVVBEQVRFICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfc2NyaXB0ZGVwbG95X2dyb3VwIEFTIHNkRyAiDQovLwkJCQkuIklOTkVSIGpvaW4gICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfc2NyaXB0ZGVwbG95X3NjcmlwdG9wdGlvbnMgc28gT04gc24uSUQgPSBzby5JRCAiDQovLwkJCQkuIklOTkVSIGpvaW4gICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfc2NyaXB0ZGVwbG95X3NjcmlwdHBhcnRzIHNwIE9OIHNuLklEID0gc3AuSUQgIg0KLy8JCQkJLiJTRVQgc28uTWluaWZ5PT8sIHNuLlNjcmlwdFNldD0/LCBzby5wYXRoT3B0aW9uPT8sIHNvLnNjcmlwdFR5cGU9Pywgc3AuU2NyaXB0SXM9Pywgc28uc2NyaXB0U2l6ZT0/IFdIRVJFIHNuLklEID0gPyI7DQovLw0KLy8JCSRyZXN1bHQgPSAmJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkTWluaWZ5LCRzY3JpcHROYW1lLCRwYXRoT3B0aW9uLCRzY3JpcHRUeXBlLCRTY3JpcHRJcywkc2NyaXB0U2l6ZSwkU2NyaXB0SUQpKTsNCi8vCQlpZighJHJlc3VsdCl7DQovLwkJICAvL2VjaG8gJ0Vycm9yOiAnLm15c3FsX2Vycm9yKCk7DQovLwkJICAkcGFyYW1zWydtZXNzYWdlJ10gPSBteXNxbF9lcnJvcigpOw0KLy8JCSAgDQovLwkJfWVsc2V7DQovLwkJICAgJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ3ByZWZzdXBkYXRlZCcpOw0KLy8JCX0NCi8vCQkNCi8vCX0NCglpZihpc3NldCgkcGFyYW1zWydzdWJtaXRidXR0b24nXSl8fGlzc2V0KCRwYXJhbXNbJ1NhdmUnXSkpew0KCQkkZGlycGF0aD0kY29uZmlnWyd1cGxvYWRzX3BhdGgnXS4iL2xpYi9TRC10ZW1wLyI7DQoJCSRkZWxldGVkID0gc2RfZmlsZWhhbmRsaW5nOjpyZWN1cnNpdmVfcm1kaXIoJGRpcnBhdGgpOw0KCQkkcGFyYW1zID0gYXJyYXkoJ3RhYl9tZXNzYWdlJz0+ICdFZGl0ZWQnLCAnYWN0aXZlX3RhYicgPT4gJ3NjcmlwdF90ZW1wbGF0ZScsJ21vZGUnPT4nZWRpdCcsJ0dyb3VwdFNldCc9PiRHcm91cE5hbWUsJ0dyb3VwdElEJz0+JEdpZCwnZ3JvdXAnPT4kR2lkLCdncm91cHQxJz0+JEdpZCk7DQoJCSR0aGlzLT5SZWRpcmVjdCgkaWQsICdlZGl0YXNzaWdubWVudCcsICcnLCAkcGFyYW1zKTsNCgl9DQoNCglpZigkcGFyYW1zWydtb2RlJ109PSdhZGQnKXsNCgkJJHBhcmFtcyA9IGFycmF5KCd0YWJfbWVzc2FnZSc9PiAnQnRuQURERUQnLCAnYWN0aXZlX3RhYicgPT4gJ2dyb3VwcycpOw0KCX1lbHNlew0KCQkkcGFyYW1zID0gYXJyYXkoJ3RhYl9tZXNzYWdlJz0+ICdCdG5FRElURUQnLCAnYWN0aXZlX3RhYicgPT4gJ2dyb3VwcycpOw0KCX0NCg0KCQkkZGlycGF0aD0kY29uZmlnWyd1cGxvYWRzX3BhdGgnXS4iL2xpYi9TRC10ZW1wLyI7DQoJCSRkZWxldGVkID0gc2RfZmlsZWhhbmRsaW5nOjpyZWN1cnNpdmVfcm1kaXIoJGRpcnBhdGgpOw0KCSR0aGlzLT5SZWRpcmVjdCgkaWQsICdkZWZhdWx0YWRtaW4nLCAnJywgJHBhcmFtcyk7DQo/Pg0K]]></data>
	</file>
	<file>
	  <filename>/action.save_module_options.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCi8qKg0KICogTW9kdWxlOiBTY3JpcHREZXBsb3kgLSBNaW5pZnkgYW5kIGRlcGxveW1lbnQgb2YgSlMgQ1NTIGFuZCBIVE1MDQogKiANCiAqIA0KICogQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykNCiAqIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnDQogKiBUaGUgbW9kdWxlJ3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvc2NyaXB0ZGVwbG95Lw0KICogDQogKiBAcGFja2FnZSBTY3JpcHREZXBsb3kNCiAqIEBhdXRob3IgamVyZW15QmFzcyA8amVyZW15QmFzc0BjYWJsZW9uZS5uZXQ+DQogKiBAY29weXJpZ2h0IEplcmVteSBCYXNzDQogKiBAbGljZW5zZSBodHRwOi8vd3d3LmdudS5vcmcvY29weWxlZnQvZ3BsLmh0bWwgRnJlZWx5IGF2YWlsYWJsZSB1bmRlciBHUEwNCiAqLyANCg0KLy9pZiAoIWlzc2V0KGNtc21zKCkpKSBleGl0Ow0KCQ0KCSRjb25maWcgPSBjbXNtcygpLT5HZXRDb25maWcoKTsgDQoJJGZIID0gbmV3IHNkX2ZpbGVoYW5kbGluZygpOyANCglpc3NldCgkcGFyYW1zWydkZWJ1Z0lUJ10pID8gJHRoaXMtPlNldFByZWZlcmVuY2UoJ2RlYnVnSVQnLCAkcGFyYW1zWydkZWJ1Z0lUJ10pOicnOw0KDQoJDQoJaXNzZXQoJHBhcmFtc1sncmV2aXNpb25faW5wdXQnXSkgPyAkdGhpcy0+U2V0UHJlZmVyZW5jZSgncmV2aXNpb24nLCAkcGFyYW1zWydyZXZpc2lvbl9pbnB1dCddKTonJzsNCglpc3NldCgkcGFyYW1zWydyZXZpc2lvbl9MSU1JVF9pbnB1dCddKSA/ICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdyZXZpc2lvbl9MSU1JVCcsICRwYXJhbXNbJ3JldmlzaW9uX0xJTUlUX2lucHV0J10pOicnOw0KCWlzc2V0KCRwYXJhbXNbJ2xvY2tmaWxlc19pbnB1dCddKSA/ICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdsb2NrZmlsZXMnLCAkcGFyYW1zWydsb2NrZmlsZXNfaW5wdXQnXSk6Jyc7DQoJaXNzZXQoJHBhcmFtc1sndXNlRWRpdG9yX2lucHV0J10pID8gJHRoaXMtPlNldFByZWZlcmVuY2UoJ3VzZUVkaXRvcicsICRwYXJhbXNbJ3VzZUVkaXRvcl9pbnB1dCddKTonJzsNCglpc3NldCgkcGFyYW1zWydlZGl0b3JIZWlnaHRfaW5wdXQnXSkgPyAkdGhpcy0+U2V0UHJlZmVyZW5jZSgnZWRpdG9ySGVpZ2h0JywgJHBhcmFtc1snZWRpdG9ySGVpZ2h0X2lucHV0J10pOicnOw0KDQoNCiRjbGVhck09Jyc7DQoJDQoJJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ3ByZWZzdXBkYXRlZCcpOw0KCWlmKGlzc2V0KCRwYXJhbXNbJ2NsZWFyY2FjaGUnXSkmJiRwYXJhbXNbJ2NsZWFyY2FjaGUnXT09J0NsZWFyIENhY2hlJyl7DQoJCSRkaXJwYXRoPSRjb25maWdbJ3VwbG9hZHNfcGF0aCddLiIvbGliL1NELXRlbXAvIjsNCgkJLy8kc2RfZmYgPSBuZXcgc2RfZmlsZWhhbmRsaW5nKCk7DQoJCSRkZWxldGVkID0gJGZILT5yZWN1cnNpdmVfcm1kaXIoJGRpcnBhdGgpOw0KCQkNCgkJaWYoJGRlbGV0ZWQpew0KCQkJLy8kdGhpcy0+TGFuZygncHJlZnN1cGRhdGVkJyk7DQoJCQkkY2xlYXJNID0gIjxoMj5DbGVhcmVkICRkaXJwYXRoPC9oMj4iOw0KCQl9ZWxzZXsNCgkJCS8vJHRoaXMtPkxhbmcoJ3ByZWZzdXBkYXRlZCcpOw0KCQkJJGNsZWFyTSA9ICI8aDI+U29ycnk6ICRkaXJwYXRoPGJyLz48Zm9udCBjb2xvcj1cInJlZFwiPjxzdHJvbmc+RE9FUyBOT1QgeWV0IGV4aXN0IHJ1biB0aGUgcGx1Zy1pbiBvbiBhbiBpbWFnZSBmaXJzdC48L3N0cm9uZz48L2ZvbnQ+PGJyLz48L2gyPiI7DQoJCX0NCgl9DQoJZm9yZWFjaCgkcGFyYW1zIGFzICRrZXkgPT4gJHBhcmFtc0l0ZW0pew0KCQkJDQoJfQ0KCSRwYXJhbXMgPSBhcnJheSgndGFiX21lc3NhZ2UnPT4gJ29wdGlvbnN1cGRhdGVkJywgJ2FjdGl2ZV90YWInID0+ICdvcHRpb25zJywgJ2NsZWFyJyA9PiAkY2xlYXJNKTsNCgkkdGhpcy0+UmVkaXJlY3QoJGlkLCAnZGVmYXVsdGFkbWluJywgJycsICRwYXJhbXMpOw0KPz4NCg==]]></data>
	</file>
	<file>
	  <filename>/action.save_Script_Setup.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCi8qKg0KICogTW9kdWxlOiBTY3JpcHREZXBsb3kgLSBNaW5pZnkgYW5kIGRlcGxveW1lbnQgb2YgSlMgQ1NTIGFuZCBIVE1MDQogKiANCiAqIA0KICogQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykNCiAqIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnDQogKiBUaGUgbW9kdWxlJ3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvc2NyaXB0ZGVwbG95Lw0KICogDQogKiBAcGFja2FnZSBTY3JpcHREZXBsb3kNCiAqIEBhdXRob3IgamVyZW15QmFzcyA8amVyZW15QmFzc0BjYWJsZW9uZS5uZXQ+DQogKiBAY29weXJpZ2h0IEplcmVteSBCYXNzDQogKiBAbGljZW5zZSBodHRwOi8vd3d3LmdudS5vcmcvY29weWxlZnQvZ3BsLmh0bWwgRnJlZWx5IGF2YWlsYWJsZSB1bmRlciBHUEwNCiAqLyANCg0KLy9pZiAoIWlzc2V0KGNtc21zKCkpKSBleGl0Ow0KDQokY29uZmlnID0gY21zbXMoKS0+R2V0Q29uZmlnKCk7IA0KDQoNCiRkYiA9ICR0aGlzLT5HZXREYigpOw0KJGxvZyA9IG5ldyBzZF9sb2dnaW4oKTsgDQokTWluaWZ5PSRzY3JpcHROYW1lPSRwYXRoT3B0aW9uPSRzY3JpcHRUeXBlPSRTY3JpcHRJcz0kc2NyaXB0U2l6ZT0kbm90ZXM9JE1lZGlhVHlwZT0kU2NyaXB0SUQ9JHJldk1lc3M9Jyc7DQovLy8vDQovLyBDcmVhdCBidG4gdGFibGUNCi8vLy8NCg0KLy8JJE1lZGlhVHlwZT0kcGFyYW1zWydNZWRpYVR5cGVfaW5wdXQnXTsNCi8vCSRNaW5pZnk9JHBhcmFtc1snTWluaWZ5X2lucHV0J107DQovLwkkcGF0aE9wdGlvbj0kcGFyYW1zWydwYXRoT3B0aW9uX2lucHV0J107DQovLwkkc2NyaXB0VHlwZT0kcGFyYW1zWydzY3JpcHRUeXBlX2lucHV0J107DQovLwkkc2NyaXB0TmFtZT0kcGFyYW1zWydTY3JpcHRTZXRfaW5wdXQnXTsJDQovLwkkVXNlUGF0aE9wdGlvbj0kcGFyYW1zWydVc2VQYXRoT3B0aW9uX2lucHV0J107CQ0KLy8JJHJvb3RVUkw9JHBhcmFtc1sncm9vdFVSTF9pbnB1dCddOwkNCi8vCQ0KCSRNZWRpYVR5cGU9aXNzZXQoJHBhcmFtc1snTWVkaWFUeXBlX2lucHV0J10pID8gJHBhcmFtc1snTWVkaWFUeXBlX2lucHV0J106Jyc7DQoJJE1pbmlmeT1pc3NldCgkcGFyYW1zWydNaW5pZnlfaW5wdXQnXSkgPyAkcGFyYW1zWydNaW5pZnlfaW5wdXQnXTowOw0KCSR0dXJuT2ZmUHJlbG9hZD1pc3NldCgkcGFyYW1zWyd0dXJuT2ZmUHJlbG9hZF9sYWJlbCddKSA/ICRwYXJhbXNbJ3R1cm5PZmZQcmVsb2FkX2xhYmVsJ106MDsNCgkNCgkNCgkkcGF0aE9wdGlvbj1pc3NldCgkcGFyYW1zWydwYXRoT3B0aW9uX2lucHV0J10pID8gJHBhcmFtc1sncGF0aE9wdGlvbl9pbnB1dCddOicnOw0KCSRzY3JpcHRUeXBlPWlzc2V0KCRwYXJhbXNbJ3NjcmlwdFR5cGVfaW5wdXQnXSkgPyAkcGFyYW1zWydzY3JpcHRUeXBlX2lucHV0J106Jyc7DQoJJHNjcmlwdE5hbWU9aXNzZXQoJHBhcmFtc1snU2NyaXB0U2V0X2lucHV0J10pID8gJHBhcmFtc1snU2NyaXB0U2V0X2lucHV0J106Jyc7DQoJJFVzZVBhdGhPcHRpb249aXNzZXQoJHBhcmFtc1snVXNlUGF0aE9wdGlvbl9pbnB1dCddKSA/ICRwYXJhbXNbJ1VzZVBhdGhPcHRpb25faW5wdXQnXTonJzsNCgkkcm9vdFVSTD1pc3NldCgkcGFyYW1zWydyb290VVJMX2lucHV0J10pID8gJHBhcmFtc1sncm9vdFVSTF9pbnB1dCddOicnOw0KCS8vaXNzZXQoJHBhcmFtc1snZGVidWdJVCddKSA/ICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdkZWJ1Z0lUJywgJHBhcmFtc1snZGVidWdJVCddKTonJzsNCgkkcmV2aXNpb249JHRoaXMtPkdldFByZWZlcmVuY2UoJ3JldmlzaW9uJyk7DQoJDQoJDQoJJG5vdGVzPWlzc2V0KCRwYXJhbXNbJ25vdGVzX2lucHV0J10pID8gJHBhcmFtc1snbm90ZXNfaW5wdXQnXTonJzsNCgkkbm90ZXMgPSBzdHJfcmVwbGFjZSgnLyonLCAiIiwgJG5vdGVzKTsNCgkkbm90ZXMgPSBzdHJfcmVwbGFjZSgnKi8nLCAiIiwgJG5vdGVzKTsJDQoJLy8kU2NyaXB0SXM9bXlzcWxfcmVhbF9lc2NhcGVfc3RyaW5nKCRwYXJhbXNbJ1NjcmlwdElzX2lucHV0J10pOwkNCgkvLyRTY3JpcHRJcz0kcGFyYW1zWydTY3JpcHRJc19pbnB1dCddOw0KCS8vJFNjcmlwdElEPSRwYXJhbXNbJ1NjcmlwdFNldCddOw0KCSRTY3JpcHRJcz0gaXNzZXQoJHBhcmFtc1snU2NyaXB0SXNfaW5wdXQnXSkgPyAkcGFyYW1zWydTY3JpcHRJc19pbnB1dCddOicnOw0KCSRTY3JpcHRJRD0gaXNzZXQoJHBhcmFtc1snU2NyaXB0U2V0J10pID8gJHBhcmFtc1snU2NyaXB0U2V0J106Jyc7DQoJDQoJDQppZihpc3NldCgkcGFyYW1zWydjYW5jZWwnXSkpew0KCSRwYXJhbXMgPSBhcnJheSgndGFiX21lc3NhZ2UnPT4gJ0NhbmNlbGVkJywgJ2FjdGl2ZV90YWInID0+ICdzY3JpcHRfdGVtcGxhdGUnKTsNCgkkdGhpcy0+dW5sb2NrX3NjcmlwdCgkU2NyaXB0SUQpOw0KCSR0aGlzLT5SZWRpcmVjdCgkaWQsICdkZWZhdWx0YWRtaW4nLCAnJywgJHBhcmFtcyk7DQp9DQoJLy8kc2NyaXB0U2l6ZT1tYl9zdHJsZW4oJF9QT1NUWydtMV9TY3JpcHRJc19pbnB1dCddLCAnOGJpdCcpOw0KCS8vJHNjcmlwdFNpemU9c3RybGVuKHV0ZjhfZGVjb2RlKCRwYXJhbXNbJ1NjcmlwdElzX2lucHV0J10pKTsNCgkkc2NyaXB0U2l6ZT1zdHJsZW4odXRmOF9kZWNvZGUoJFNjcmlwdElzKSk7DQoJDQppZihpc3NldCgkcGFyYW1zWydyZXZlcnQnXSkpew0KCSRwYXJhbXMgPSBhcnJheSgndGFiX21lc3NhZ2UnPT4gJ0J0bkFEREVEJywgJ1NjcmlwdFNldCcgPT4gJFNjcmlwdElELCAnbW9kZScgPT4gJ2VkaXQnLCAnU2NyaXB0SXNfaW5wdXQnPT4nJyk7DQoJJHRoaXMtPlJlZGlyZWN0KCRpZCwgJ2VkaXRfc2NyaXB0JywgJycsICRwYXJhbXMpOw0KfQ0KLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQovKi0tLS0tLS0tLS1ERUJVRy0tLS0tLS0tLS0tKi8NCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwkJDQoJCQ0KCQkNCgkJDQoJCQ0KCQkNCgkNCg0KCWlmKCRwYXJhbXNbJ21vZGUnXT09J2FkZCcpew0KCQkJJFVzZXJpZD0kdGhpcy0+Z2V0VXNlckluZm8oKTsNCgkJCSR1SUQ9JFVzZXJpZFsnVXNlcmlkJ107DQoJCQkkcXVlcnkgPSAiSU5TRVJUIElOVE8gIi5TRF9TQ1JJUFROQU1FUy4iIFNFVCBTY3JpcHRTZXQ9PyI7DQoJCQkkcmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkc2NyaXB0TmFtZSkpOw0KCQkJaWYoISRyZXN1bHQpew0KCQkJICAvL2VjaG8gJ0Vycm9yOiAnLm15c3FsX2Vycm9yKCk7DQoJCQkgICRwYXJhbXNbJ21lc3NhZ2UnXSA9IG15c3FsX2Vycm9yKCk7DQoJCQl9DQoJCQkNCgkJCS8vJHF1ZXJ5ID0gIlNFTEVDVCBJRCBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfc2NyaXB0ZGVwbG95X3NjcmlwdG5hbWVzIE9SREVSIEJZIElEIERFU0MgTElNSVQgMSI7DQoJCQkvLyRMYXN0SUQgPSAmJGRiLT5HZXRPbmUoJHF1ZXJ5KTsNCgkJCSRMYXN0SUQgPSAkZGItPkluc2VydF9JRCgpOw0KCQkJJG5vdyA9IHRyaW0oJGRiLT5EQlRpbWVTdGFtcCh0aW1lKCkpLCAiJyIpOwkJCQkNCgkJCSRxdWVyeSA9ICJJTlNFUlQgSU5UTyAiLlNEX1NDUklQVE9QVElPTlMuIiAiDQoJCQkuIihJRCx1c2VySUQscGF0aE9wdGlvbixzY3JpcHRUeXBlLHNjcmlwdFNpemUsbm90ZXMsY3JlYXRlZCxsYXN0X2VkaXQpICINCgkJCS4iVkFMVUVTICg/LD8sPyw/LD8sPyw/LD8pIjsNCgkJCS8vLiJWQUxVRVMgKCBMQVNUX0lOU0VSVF9JRCgpLD8sPyw/LD8sPyw/LD8pIjsNCgkJCSRyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KCRMYXN0SUQsJHVJRCwkcGF0aE9wdGlvbiwkc2NyaXB0VHlwZSwkc2NyaXB0U2l6ZSwkbm90ZXMsJG5vdywkbm93KSk7DQoJCQlpZighJHJlc3VsdCl7DQoJCQkgIC8vZWNobyAnRXJyb3I6ICcubXlzcWxfZXJyb3IoKTsNCgkJCSAgJHBhcmFtc1snbWVzc2FnZSddID0gbXlzcWxfZXJyb3IoKTsNCgkJCX0NCgkJCSRxdWVyeSA9ICJJTlNFUlQgSU5UTyAiLlNEX1NDUklQVFBBUlRTLiIgIg0KCQkJLiIoSUQsIFNjcmlwdElzKSAiDQoJCQkuIlZBTFVFUyAoPyw/KSI7DQoJCQkNCgkJCSRyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KCRMYXN0SUQsJFNjcmlwdElzKSk7DQoJCQlpZighJHJlc3VsdCl7DQoJCQkgIC8vZWNobyAnRXJyb3I6ICcubXlzcWxfZXJyb3IoKTsNCgkJCSAgJHBhcmFtc1snbWVzc2FnZSddID0gbXlzcWxfZXJyb3IoKTsNCgkJCX1lbHNlew0KCQkJICAgJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ3ByZWZzdXBkYXRlZCcpOw0KCQkJfQ0KCQkJaWYoJHJldmlzaW9uKXsNCgkJCQkkdGhpcy0+U2V0U2NyaXB0QmFja3VwKCRMYXN0SUQsJFNjcmlwdElzLCcxJyk7CQ0KCQkJCSRyZXZNZXNzID0gJ3wgcmV2OjEnOw0KCQkJfQ0KCQkJDQoJCQkkdGhpcy0+U2V0UHJlZmVyZW5jZSgkTGFzdElELictTWluaWZ5LVNEJywkTWluaWZ5KTsNCgkJCSR0aGlzLT5TZXRQcmVmZXJlbmNlKCRMYXN0SUQuJy1QYXRoT3AtU0QnLCRwYXRoT3B0aW9uKTsNCgkJCSR0aGlzLT5TZXRQcmVmZXJlbmNlKCRMYXN0SUQuJy1yb290VVJMLVNEJywkcm9vdFVSTCk7DQoJCQkkdGhpcy0+U2V0UHJlZmVyZW5jZSgkTGFzdElELictdHVybk9mZlByZWxvYWQtU0QnLCR0dXJuT2ZmUHJlbG9hZCk7DQoJCQkNCgkJCQ0KCQkJaWYoJHNjcmlwdFR5cGU9PSdDU1MnKXsNCgkJCQkkdGhpcy0+U2V0UHJlZmVyZW5jZSgkTGFzdElELictTWVkaWFUeXBlLVNEJywkTWVkaWFUeXBlKTsNCgkJCX0NCg0KCQkJDQoJCQkkbG9nLT5fZG9BdWRpdCggJ2FkZCcgLCAnb2snLCAiYWRkZWQgJHNjcmlwdE5hbWUgLSBzY3JpcHQgaWQ6JExhc3RJRCAkcmV2TWVzcyIpOw0KCQkJLy9TZXQgdXAgbG9ja3MNCgkJCSR0aGlzLT5sb2NrX3NjcmlwdCgkTGFzdElELCR1SUQpOw0KCQkJJHRoaXMtPnVubG9ja19zY3JpcHQoJExhc3RJRCk7DQoJfWVsc2UgaWYoJHBhcmFtc1snbW9kZSddPT0nZWRpdCcpew0KCQkNCgkJJG5vdyA9IHRyaW0oJGRiLT5EQlRpbWVTdGFtcCh0aW1lKCkpLCAiJyIpOwkNCgkJJHF1ZXJ5ID0gIlVQREFURSAiLlNEX1NDUklQVE5BTUVTLiIgc24gIg0KCQkJCS4iSU5ORVIgam9pbiAgIi5TRF9TQ1JJUFRPUFRJT05TLiIgc28gT04gc24uSUQgPSBzby5JRCAiDQoJCQkJLiJJTk5FUiBqb2luICAiLlNEX1NDUklQVFBBUlRTLiIgc3AgT04gc24uSUQgPSBzcC5JRCAiDQoJCQkJLiJTRVQgIHNuLlNjcmlwdFNldD0/LCBzby5wYXRoT3B0aW9uPT8sIHNvLnNjcmlwdFR5cGU9Pywgc3AuU2NyaXB0SXM9Pywgc28uc2NyaXB0U2l6ZT0/LCBzby5ub3Rlcz0/LCAgc28ubGFzdF9lZGl0PT8gV0hFUkUgc24uSUQgPSA/IjsNCgkJJHJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkoJHNjcmlwdE5hbWUsJHBhdGhPcHRpb24sJHNjcmlwdFR5cGUsJFNjcmlwdElzLCRzY3JpcHRTaXplLCRub3Rlcywkbm93LCRTY3JpcHRJRCkpOw0KCQkNCgkJZWNobyAkc2NyaXB0TmFtZS4nPGJyLz4nLiRwYXRoT3B0aW9uLic8YnIvPicuJHNjcmlwdFR5cGUuJzxici8+Jy4kU2NyaXB0SXMuJzxici8+Jy4kc2NyaXB0U2l6ZS4nPGJyLz4nLiRub3Rlcy4nPGJyLz4nLiRub3cuJzxici8+Jy4kU2NyaXB0SUQ7DQoJCWlmKCEkcmVzdWx0KXsNCgkJICAvL2VjaG8gJ0Vycm9yOiAnLm15c3FsX2Vycm9yKCk7DQoJCSAgJHBhcmFtc1snbWVzc2FnZSddID0gbXlzcWxfZXJyb3IoKTsNCgkJICANCgkJfWVsc2V7DQoJCSAgICRwYXJhbXNbJ21lc3NhZ2UnXSA9ICR0aGlzLT5MYW5nKCdwcmVmc3VwZGF0ZWQnKTsNCgkJfQ0KCQkNCgkJJHRoaXMtPlNldFByZWZlcmVuY2UoJFNjcmlwdElELictUGF0aE9wLVNEJywkcGF0aE9wdGlvbik7DQoJCSR0aGlzLT5TZXRQcmVmZXJlbmNlKCRTY3JpcHRJRC4nLXJvb3RVUkwtU0QnLCRyb290VVJMKTsNCgkJJHRoaXMtPlNldFByZWZlcmVuY2UoJFNjcmlwdElELictTWluaWZ5LVNEJywkTWluaWZ5KTsNCgkJJHRoaXMtPlNldFByZWZlcmVuY2UoJFNjcmlwdElELictdHVybk9mZlByZWxvYWQtU0QnLCR0dXJuT2ZmUHJlbG9hZCk7DQoJCSRsb2ctPl9kb0F1ZGl0KCAnZWRpdCcgLCAnb2snLCAkdGhpcy0+TGFuZygnQ2hlY2tlZE91dF9kb0F1ZGl0JykuIiBpZDokU2NyaXB0SUQiKTsNCgkJaWYoJHNjcmlwdFR5cGU9PSdDU1MnKXsNCgkJCSR0aGlzLT5TZXRQcmVmZXJlbmNlKCRTY3JpcHRJRC4nLU1lZGlhVHlwZS1TRCcsJE1lZGlhVHlwZSk7DQoJCX0NCgkJaWYoJHJldmlzaW9uKXsNCgkJCSRyZXZpc2lvbj0kdGhpcy0+R2V0TGFzdFJldmlzaW9uKCRTY3JpcHRJRCkrMTsNCgkJCS8vU2NyaXB0RGVwbG95OjpTZXRTY3JpcHRCYWNrdXAoJFNjcmlwdElELCRTY3JpcHRJcywkcmV2aXNpb24pOyAgLy8gdGVzdCBmb3IgcHJvdGVjdGVkIGZ1bmN0aW9uIFNldFNjcmlwdEJhY2t1cCgpDQoJCQkkdGhpcy0+U2V0U2NyaXB0QmFja3VwKCRTY3JpcHRJRCwkU2NyaXB0SXMsJHJldmlzaW9uKTsNCgkJCSR0aGlzLT5DbGVhclRoaXNSZXZpc2lvbigkU2NyaXB0SUQsJHRoaXMtPkdldFByZWZlcmVuY2UoJ3JldmlzaW9uX0xJTUlUJykpOw0KCQkJJHJldk1lc3MgPSAnfCByZXY6Jy4kcmV2aXNpb247DQoJCX0NCg0KCQkNCgkJJGxvZy0+X2RvQXVkaXQoICdlZGl0JyAsICdvaycsICJlZGl0ZWQgJHNjcmlwdE5hbWUgLSBzY3JpcHQgaWQ6JFNjcmlwdElEICRyZXZNZXNzIik7DQoJCQ0KCX0NCgkJDQoNCglpZihpc3NldCgkcGFyYW1zWydhcHBseSddKSl7DQoJCSRwYXJhbXMgPSBhcnJheSgndGFiX21lc3NhZ2UnPT4gJ0J0bkFEREVEJywgJ1NjcmlwdFNldCcgPT4gJFNjcmlwdElELCAnbW9kZScgPT4gJ2VkaXQnLCAnU2NyaXB0SXNfaW5wdXQnPT4nJyk7DQoJCSRkaXJwYXRoPSRjb25maWdbJ3VwbG9hZHNfcGF0aCddLiIvbGliL1NELXRlbXAvIjsNCgkJJGRlbGV0ZWQgPSBzZF9maWxlaGFuZGxpbmc6OnJlY3Vyc2l2ZV9ybWRpcigkZGlycGF0aCk7DQoJCWlmKCRkZWxldGVkPXRydWUpew0KCQkJaWYoJF9QT1NUWydhamF4c2F2ZSddPT10cnVlKXsNCgkJCQllY2hvICd0cnVlJzsNCgkJCQlleGl0KCk7DQoJCQl9ZWxzZXsNCgkJCQkkdGhpcy0+UmVkaXJlY3QoJGlkLCAnZWRpdF9zY3JpcHQnLCAnJywgJHBhcmFtcyk7DQoJCQl9DQoJCX0NCgl9CQ0KCWlmKCRwYXJhbXNbJ21vZGUnXT09J2FkZCcpew0KCQkkcGFyYW1zID0gYXJyYXkoJ3RhYl9tZXNzYWdlJz0+ICdCdG5BRERFRCcsICdhY3RpdmVfdGFiJyA9PiAnc2NyaXB0X3RlbXBsYXRlJyk7DQoJfWVsc2V7DQoJCSRwYXJhbXMgPSBhcnJheSgndGFiX21lc3NhZ2UnPT4gJ0J0bkVESVRFRCcsICdhY3RpdmVfdGFiJyA9PiAnc2NyaXB0X3RlbXBsYXRlJyk7DQoJfQ0KCSRkaXJwYXRoPSRjb25maWdbJ3VwbG9hZHNfcGF0aCddLiIvbGliL1NELXRlbXAvIjsNCglpZihzZF9maWxlaGFuZGxpbmc6OnJlY3Vyc2l2ZV9ybWRpcigkZGlycGF0aCkpeyRsb2ctPl9kb0F1ZGl0KCAnZGVzdHJveScgLCAnb2snLCAkdGhpcy0+TGFuZygnZW1wdGllZENhY2hfZG9BdWRpdCcpKTt9DQoNCi8vJHBhcmFtc1snc3J0J10gPSAkc3J0Ow0KICAgIC8vIHRvIGNhbGwgYW5vdGhlciBtZXRob2Qgb2YgdGhlIG1vZHVsZSwgeW91IGhhdmUgdG8gYmUgY2FyZWZ1bCBub3cgdGhhdA0KICAgIC8vIG1ldGhvZHMgY2FuIGJlIHNwbGl0IGludG8gb3RoZXIgZmlsZXMuIEhlcmUncyB0aGUgcHJlZmVyZWQgYXBwcm9hY2g6DQoJDQoJDQppZigkX1BPU1RbJ2FqYXhzYXZlJ109PXRydWUpew0KCSRkaXJwYXRoPSRjb25maWdbJ3VwbG9hZHNfcGF0aCddLiIvbGliL1NELXRlbXAvIjsNCglpZihzZF9maWxlaGFuZGxpbmc6OnJlY3Vyc2l2ZV9ybWRpcigkZGlycGF0aCkpeyRsb2ctPl9kb0F1ZGl0KCAnZGVzdHJveScgLCAnb2snLCAkdGhpcy0+TGFuZygnZW1wdGllZENhY2hfZG9BdWRpdCcpKTt9DQoJZWNobyAndHJ1ZSc7DQoJZXhpdCgpOw0KfWVsc2V7DQoJJHRoaXMtPnVubG9ja19zY3JpcHQoJFNjcmlwdElEKTsNCgkkdGhpcy0+UmVkaXJlY3QoJGlkLCAnZGVmYXVsdGFkbWluJywgJycsICRwYXJhbXMpOw0KfQ0KPz4NCg==]]></data>
	</file>
	<file>
	  <filename>/action.valCSS.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCi8vaWYgKCFpc3NldChjbXNtcygpKSkgZXhpdDsNCiRzSUQ9MzsNCnNkVmFsOjpWYWxDU1N3YXJuaW5ncygkc0lEKTsNCnNkVmFsOjpWYWxDU1NlcnJvcnMoJHNJRCk7DQoNCg0KDQoNCg0KDQo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.valHTML.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCi8qKg0KICogTW9kdWxlOiBTY3JpcHREZXBsb3kgLSBNaW5pZnkgYW5kIGRlcGxveW1lbnQgb2YgSlMgQ1NTIGFuZCBIVE1MDQogKiANCiAqIA0KICogQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykNCiAqIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnDQogKiBUaGUgbW9kdWxlJ3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvc2NyaXB0ZGVwbG95Lw0KICogDQogKiBAcGFja2FnZSBTY3JpcHREZXBsb3kNCiAqIEBhdXRob3IgamVyZW15QmFzcyA8amVyZW15QmFzc0BjYWJsZW9uZS5uZXQ+DQogKiBAY29weXJpZ2h0IEplcmVteSBCYXNzDQogKiBAbGljZW5zZSBodHRwOi8vd3d3LmdudS5vcmcvY29weWxlZnQvZ3BsLmh0bWwgRnJlZWx5IGF2YWlsYWJsZSB1bmRlciBHUEwNCiAqLyANCi8vaWYgKCFpc3NldChjbXNtcygpKSkgZXhpdDsNCiAvLyR0aGlzLT5BZGRFdmVudEZvcm0oJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQpOw0KCS8vDQokY29uZmlnID0gY21zbXMoKS0+R2V0Q29uZmlnKCk7IA0KDQppZiAoaXNzZXQoJHBhcmFtc1snZ2V0bW9kdWxlJ10pJiZpc3NldCgkcGFyYW1zWyd0ZW1wbGF0ZUlkJ10pKXsNCglpZigkcGFyYW1zWydnZXRtb2R1bGUnXT09J2NvcmUnKXsNCgkJJHRoaXMtPkdldFByZWZlcmVuY2UoJ2RlZmF1bHRQYWdlJywnYXV0bycpOw0KCQkkdGhpcy0+R2V0UHJlZmVyZW5jZSgnYXV0b0NvbnRlbnQnKTsNCgkJJHBhcmFtWyJzZXJpYWxpemVkX2NvbnRlbnQiXT1zZXJpYWxpemUoJHRoaXMtPkdldFByZWZlcmVuY2UoJ2F1dG9Db250ZW50JykpOw0KCQkkcGFyYW1bJ3RlbXBsYXRlX2lkJ109JHBhcmFtc1sndGVtcGxhdGVJZCddOw0KCQlmaWxlX2dldF9jb250ZW50cygkdGhpcy0+dGVtcGxhdGVfcHJldmlldygkcGFyYW0pKTsNCgl9DQoJLy9lY2hvICcgRm91bmQgcGF0aCAnLiRwYXJhbXNbJ2dldG1vZHVsZSddLicgLSAnLiRwYXJhbXNbJ3RlbXBsYXRlSWQnXTsNCn0NCg0KPz4NCg==]]></data>
	</file>
	<file>
	  <filename>/action.view_logs.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCi8qKg0KICogTW9kdWxlOiBTY3JpcHREZXBsb3kgLSBNaW5pZnkgYW5kIGRlcGxveW1lbnQgb2YgSlMgQ1NTIGFuZCBIVE1MDQogKiANCiAqIA0KICogQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykNCiAqIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnDQogKiBUaGUgbW9kdWxlJ3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvc2NyaXB0ZGVwbG95Lw0KICogDQogKiBAcGFja2FnZSBTY3JpcHREZXBsb3kNCiAqIEBhdXRob3IgamVyZW15QmFzcyA8amVyZW15QmFzc0BjYWJsZW9uZS5uZXQ+DQogKiBAY29weXJpZ2h0IEplcmVteSBCYXNzDQogKiBAbGljZW5zZSBodHRwOi8vd3d3LmdudS5vcmcvY29weWxlZnQvZ3BsLmh0bWwgRnJlZWx5IGF2YWlsYWJsZSB1bmRlciBHUEwNCiAqLyANCg0KLy9pZiAoIWlzc2V0KGNtc21zKCkpKSBleGl0Ow0KDQoNCiRDTVNfVVNFUl9LRVk9Q01TX1NFQ1VSRV9QQVJBTV9OQU1FLic9Jy4kX1NFU1NJT05bQ01TX1VTRVJfS0VZXTsNCg0KaWYoISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBUZW1wbGF0ZXMnKSl7DQogICAgLy8gdG9kbywgcGVybWlzc2lvbnMgbWVzc2FnZSBoZXJlDQogICAgcmV0dXJuOw0KfQ0KJGNvbmZpZyA9IGNtc21zKCktPkdldENvbmZpZygpOyANCmlmKCFpc3NldCgkcGFyYW1zWydhY3RpdmVfdGFiJ10pKXsNCiRwYXJhbXNbJ2FjdGl2ZV90YWInXT0nc2NyaXB0X3RlbXBsYXRlJzsJDQp9DQoNCiRjYWNoZUluZm89Jyc7DQokbG9nbiA9IG5ldyBzZF9sb2dnaW4oKTsNCiRsb2c9JGxvZ24tPnB1bGxMb2coMSw5OTk5OSwiaXRlbV9uYW1lPSdTY3JpcHREZXBsb3knIik7DQoJICAkY2FjaGVJbmZvLj0gICc8aDEgc3R5bGU9ImZsb2F0OiBsZWZ0OyI+Jy4kdGhpcy0+TGFuZygnRWRpdEhpc3RvcnknKS4nPC9oMT48dGFibGUgY2VsbHNwYWNpbmc9IjEiIGNsYXNzPSJ0YWJsZXNvcnRlciIgaWQ9IlRTMSI+DQoJCQk8dGhlYWQ+DQoJCQkJPHRyPg0KCQkJCQk8dGggc3R5bGU9InBhZGRpbmctcmlnaHQ6MTVweDsiPnVzZXJuYW1lPC90aD4NCgkJCQkJPHRoIHN0eWxlPSJwYWRkaW5nLXJpZ2h0OjE1cHg7Ij5pZDwvdGg+DQoJCQkJCTx0aCBzdHlsZT0icGFkZGluZy1yaWdodDoxNXB4OyI+Y29kZTwvdGg+DQoJCQkJCTwhLS08dGg+aXRlbV9uYW1lPC90aD4tLT4NCgkJCQkJPHRoIHN0eWxlPSJwYWRkaW5nLXJpZ2h0OjE1cHg7Ij5hY3Rpb24gdG9vazwvdGg+DQoJCQkJCTx0aCBzdHlsZT0icGFkZGluZy1yaWdodDoxNXB4OyI+dGltZXN0YW1wPC90aD4NCgkJCQk8L3RyPg0KCQkJPC90aGVhZD4NCgkJCTx0Ym9keT4nLiRsb2cuJzwvdGJvZHk+DQoJCTwvdGFibGU+DQoJCQ0KCQk8ZGl2IGlkPSJwYWdlciIgY2xhc3M9InBhZ2VyIj4NCgkNCgkJPGltZyBzcmM9Ii4uL21vZHVsZXMvU2NyaXB0RGVwbG95L2luY2x1ZGVzL2FkZG9ucy9wYWdlci9pY29ucy9maXJzdC5wbmciIGNsYXNzPSJmaXJzdCIgYWx0PSJmaXJzdCIvPg0KCQk8aW1nIHNyYz0iLi4vbW9kdWxlcy9TY3JpcHREZXBsb3kvaW5jbHVkZXMvYWRkb25zL3BhZ2VyL2ljb25zL3ByZXYucG5nIiBjbGFzcz0icHJldiIgYWx0PSJwcmV2Ii8+DQoJCTxpbnB1dCB0eXBlPSJ0ZXh0IiBjbGFzcz0icGFnZWRpc3BsYXkiLz4NCgkJPGltZyBzcmM9Ii4uL21vZHVsZXMvU2NyaXB0RGVwbG95L2luY2x1ZGVzL2FkZG9ucy9wYWdlci9pY29ucy9uZXh0LnBuZyIgY2xhc3M9Im5leHQiIGFsdD0ibmV4dCIvPg0KCQk8aW1nIHNyYz0iLi4vbW9kdWxlcy9TY3JpcHREZXBsb3kvaW5jbHVkZXMvYWRkb25zL3BhZ2VyL2ljb25zL2xhc3QucG5nIiBjbGFzcz0ibGFzdCIgYWx0PSJsYXN0Ii8+DQoJCTxzZWxlY3QgY2xhc3M9InBhZ2VzaXplIj4NCgkJPG9wdGlvbiBzZWxlY3RlZD0ic2VsZWN0ZWQiIHZhbHVlPSI1Ij41PC9vcHRpb24+DQoJCQk8b3B0aW9uIHZhbHVlPSIxMCI+MTA8L29wdGlvbj4NCgkJCTxvcHRpb24gdmFsdWU9IjIwIj4yMDwvb3B0aW9uPg0KCQkJPG9wdGlvbiB2YWx1ZT0iMzAiPjMwPC9vcHRpb24+DQoJCQk8b3B0aW9uICB2YWx1ZT0iNDAiPjQwPC9vcHRpb24+DQoJCTwvc2VsZWN0Pg0KPC9kaXY+DQonOw0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdjYWNoZUluZm8nLCRjYWNoZUluZm8pOw0KDQogICAgZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCdhZG1pbl92aWV3X2xvZ3MudHBsJyk7DQoNCj8+]]></data>
	</file>
	<file>
	  <filename>/changelog.inc</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PHVsPg0KCTxsaT5WZXJzaW9uIDAuMSBCZXRhIHJlbGVhc2UuPC9saT4NCgk8bGk+VmVyc2lvbiAwLjIgbG90cyBvZiBjaGFuZ2VzIHRvIGZpeCBidWcuLi48L2xpPg0KCTxsaT5WZXJzaW9uIDAuMyBzZXQgdGhlIHNtYXJ0eSB0byB1c2Uge3sgfX08L2xpPg0KCTxsaT5WZXJzaW9uIDAuNCBmaXhlZCBidWcuLiBpbXByb3ZlZCB0aGUgbWluaWFmY2F0aW9uIHRvIGEgc2F2ZXMgb2YgdXAgdG8gNjAlPC9saT4NCgk8bGk+VmVyc2lvbiAwLjcuMSBtYW55IGNoYW5nZXMuLi4gPHN0cm9uZz5CUkVBS1MgVVBHUkFERTwvc3Ryb25nPiBDb3B5IHNjcmlwdHMsIGluc3RhbGwgYW5kIHRoZSB1cGxvYWQgYW5kIHJlaW5zdGFsbC4uLiBTb3JyeSBidXQgaXQgd2FzIG5lZWRlZCBmb3IgVkVSU0lPTiBISVNUT1JZIGZpeGVkIGJ1Z3MuLiBtYW55IGltcHJvdmVtZW50czwvbGk+DQoJPGxpPlZlcnNpb24gMC43LjYgTWFueSBmaXhlcywgQWRkIHRoZSBkdW1wIHBhcmFtLCBhZGQgdGhlIGFjdGlvbiBmb3IgdGhlIGltcG9ydCBwYXJhbSAnaW5fc2NyaXB0Jy48L2xpPg0KPC91bD4=]]></data>
	</file>
	<file>
	  <filename>/CSS/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/CSS/asc.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[R0lGODlhFQAEAIAAACMtMP///yH5BAEAAAEALAAAAAAVAAQAAAINjB+gC+jP2ptn0WskLQA7]]></data>
	</file>
	<file>
	  <filename>/CSS/bg.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[R0lGODlhFQAJAIAAACMtMP///yH5BAEAAAEALAAAAAAVAAkAAAIXjI+AywnaYnhUMoqt3gZXPmVg94yJVQAAOw==]]></data>
	</file>
	<file>
	  <filename>/CSS/desc.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[R0lGODlhFQAEAIAAACMtMP///yH5BAEAAAEALAAAAAAVAAQAAAINjI8Bya2wnINUMopZAQA7]]></data>
	</file>
	<file>
	  <filename>/CSS/flexigrid/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/CSS/flexigrid/flexigrid.css</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[QGNoYXJzZXQgIlVURi04IjsNCi8qIENTUyBEb2N1bWVudCAqLw0KDQouZmxleGlncmlkDQoJew0KCWZvbnQtZmFtaWx5OiBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmOw0KCWZvbnQtc2l6ZTogMTFweDsNCglwb3NpdGlvbjogcmVsYXRpdmU7DQoJYm9yZGVyOiAwcHggc29saWQgI2VlZTsNCglvdmVyZmxvdzogaGlkZGVuOw0KCWNvbG9yOiAjMDAwOw0KCX0NCg0KCS5mbGV4aWdyaWQuaGlkZUJvZHkNCgkJew0KCQloZWlnaHQ6IDI2cHggIWltcG9ydGFudDsNCgkJYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjY2M7DQoJCX0NCg0KCS5pZTZmdWxsd2lkdGhidWcNCgkJew0KCQlib3JkZXItcmlnaHQ6IDBweCBzb2xpZCAjY2NjOw0KCQlwYWRkaW5nLXJpZ2h0OiAycHg7CQ0KCQl9DQoNCi5mbGV4aWdyaWQgZGl2Lm5EaXYNCgl7DQoJYmFja2dyb3VuZDogI2VlZSB1cmwoaW1hZ2VzL2xpbmUuZ2lmKSByZXBlYXQteSAtMXB4IHRvcDsNCglib3JkZXI6IDFweCBzb2xpZCAjY2NjOw0KCWJvcmRlci10b3A6IDBweDsNCglvdmVyZmxvdzogYXV0bzsNCglsZWZ0OiAwcHg7DQoJcG9zaXRpb246IGFic29sdXRlOw0KCXotaW5kZXg6IDk5OTsNCglmbG9hdDogbGVmdDsNCgl9DQoNCgkuZmxleGlncmlkIGRpdi5uRGl2IHRhYmxlDQoJCXsNCgkJbWFyZ2luOiAycHg7DQoJCX0NCg0KLmZsZXhpZ3JpZCBkaXYuaERpdkJveA0KCXsNCglmbG9hdDogbGVmdDsgDQoJcGFkZGluZy1yaWdodDogNDBweDsNCgl9DQoNCi5mbGV4aWdyaWQgZGl2LmJEaXYgdGFibGUNCgl7DQoJbWFyZ2luLWJvdHRvbTogMTBweDsNCgl9DQoJDQoJLmZsZXhpZ3JpZCBkaXYuYkRpdiB0YWJsZS5hdXRvaHQNCgkJew0KCQlib3JkZXItYm90dG9tOiAwcHg7DQoJCW1hcmdpbi1ib3R0b206IDBweDsNCgkJfQ0KCQ0KLmZsZXhpZ3JpZCBkaXYubkRpdiB0ZA0KCXsNCglwYWRkaW5nOiAycHggM3B4Ow0KCWJvcmRlcjogMXB4IHNvbGlkICNlZWU7DQoJY3Vyc29yOiBkZWZhdWx0Ow0KCX0NCg0KLmZsZXhpZ3JpZCBkaXYubkRpdiB0cjpob3ZlciB0ZCwgLmZsZXhpZ3JpZCBkaXYubkRpdiB0ci5uZGNvbG92ZXIgdGQNCgl7DQoJYmFja2dyb3VuZDogI2Q1ZWZmYyB1cmwoaW1hZ2VzL2hsLnBuZykgcmVwZWF0LXggdG9wOw0KCWJvcmRlcjogMXB4IHNvbGlkICNhOGQ4ZWI7DQoJfQ0KCQ0KCS5mbGV4aWdyaWQgZGl2Lm5EaXYgdGQubmRjb2wxDQoJCXsNCgkJYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2NjYzsNCgkJfQ0KCQkNCgkuZmxleGlncmlkIGRpdi5uRGl2IHRkLm5kY29sMg0KCQl7DQoJCWJvcmRlci1sZWZ0OiAxcHggc29saWQgI2ZmZjsNCgkJcGFkZGluZy1yaWdodDogMTBweDsNCgkJfQ0KDQoJLmZsZXhpZ3JpZCBkaXYubkRpdiB0cjpob3ZlciB0ZC5uZGNvbDEsIC5mbGV4aWdyaWQgZGl2Lm5EaXYgdHIubmRjb2xvdmVyIHRkLm5kY29sMQ0KCQl7DQoJCWJvcmRlci1yaWdodDogMXB4IHNvbGlkICNkMmUzZWM7DQoJCX0NCgkJDQoJLmZsZXhpZ3JpZCBkaXYubkRpdiB0cjpob3ZlciB0ZC5uZGNvbDIsIC5mbGV4aWdyaWQgZGl2Lm5EaXYgdHIubmRjb2xvdmVyIHRkLm5kY29sMg0KCQl7DQoJCWJvcmRlci1sZWZ0OiAxcHggc29saWQgI2VlZjhmZjsNCgkJfQ0KCQ0KCS5mbGV4aWdyaWQgZGl2Lm5CdG4NCgkJew0KCQlwb3NpdGlvbjogYWJzb2x1dGU7DQoJCWhlaWdodDogMjRweDsNCgkJd2lkdGg6IDE0cHg7DQoJCXotaW5kZXg6IDkwMDsNCgkJYmFja2dyb3VuZDogI2ZhZmFmYSB1cmwoaW1hZ2VzL2ZoYmcuZ2lmKSByZXBlYXQteCBib3R0b207DQoJCWJvcmRlcjogMHB4IHNvbGlkICNjY2M7DQoJCWJvcmRlci1sZWZ0OiAxcHggc29saWQgI2NjYzsNCgkJdG9wOiAwcHg7DQoJCWxlZnQ6IDBweDsNCgkJbWFyZ2luLXRvcDogMXB4Ow0KCQljdXJzb3I6IHBvaW50ZXI7DQoJCWRpc3BsYXk6IG5vbmU7DQoJCX0NCgkJDQoJCS5mbGV4aWdyaWQgZGl2Lm5CdG4gZGl2DQoJCQl7DQoJCQloZWlnaHQ6IDI0cHg7DQoJCQl3aWR0aDogMTJweDsNCgkJCWJvcmRlci1sZWZ0OiAxcHggc29saWQgI2ZmZjsNCgkJCWZsb2F0OiBsZWZ0Ow0KCQkJYmFja2dyb3VuZDogdXJsKGltYWdlcy9kZG4ucG5nKSBuby1yZXBlYXQgY2VudGVyOw0KCQkJfQkJDQoJCQ0KCQkuZmxleGlncmlkIGRpdi5uQnRuLnNydGQNCgkJCXsNCgkJCWJhY2tncm91bmQ6IHVybChpbWFnZXMvd2JnLmdpZikgcmVwZWF0LXggMHB4IC0xcHg7DQoJCQl9DQoJCQ0KDQouZmxleGlncmlkIGRpdi5tRGl2DQoJew0KCWJhY2tncm91bmQ6IHVybChpbWFnZXMvd2JnLmdpZikgcmVwZWF0LXggdG9wOw0KCWJvcmRlcjogMXB4IHNvbGlkICNjY2M7DQoJYm9yZGVyLWJvdHRvbTogMHB4Ow0KCWJvcmRlci10b3A6IDBweDsNCglmb250LXdlaWdodDogYm9sZDsNCglkaXNwbGF5OiBibG9jazsNCglvdmVyZmxvdzogaGlkZGVuOw0KCXdoaXRlLXNwYWNlOiBub3dyYXA7DQoJcG9zaXRpb246IHJlbGF0aXZlOw0KCX0NCg0KLmZsZXhpZ3JpZCBkaXYubURpdiBkaXYNCgl7DQoJcGFkZGluZzogNnB4Ow0KCXdoaXRlLXNwYWNlOiBub3dyYXA7DQoJfQ0KCQ0KCQkuZmxleGlncmlkIGRpdi5tRGl2IGRpdi5wdG9ndGl0bGUNCgkJCXsNCgkJCXBvc2l0aW9uOiBhYnNvbHV0ZTsNCgkJCXRvcDogNHB4Ow0KCQkJcmlnaHQ6IDNweDsNCgkJCXBhZGRpbmc6IDBweDsNCgkJCWhlaWdodDogMTZweDsNCgkJCXdpZHRoOiAxNnB4Ow0KCQkJb3ZlcmZsb3c6IGhpZGRlbjsNCgkJCWJvcmRlcjogMXB4IHNvbGlkICNjY2M7DQoJCQljdXJzb3I6IHBvaW50ZXI7DQoJCQl9DQoNCgkJCS5mbGV4aWdyaWQgZGl2Lm1EaXYgZGl2LnB0b2d0aXRsZTpob3Zlcg0KCQkJew0KCQkJYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCAtMnB4Ow0KCQkJYm9yZGVyLWNvbG9yOiAjYmJiOw0KCQkJfQ0KCQkJDQoJCQkuZmxleGlncmlkIGRpdi5tRGl2IGRpdi5wdG9ndGl0bGUgc3Bhbg0KCQkJew0KCQkJZGlzcGxheTogYmxvY2s7DQoJCQlib3JkZXItbGVmdDogMXB4IHNvbGlkICNlZWU7DQoJCQlib3JkZXItdG9wOiAxcHggc29saWQgI2ZmZjsNCgkJCWJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGRkOw0KCQkJd2lkdGg6IDE0cHg7DQoJCQloZWlnaHQ6IDE0cHg7DQoJCQliYWNrZ3JvdW5kOiB1cmwoaW1hZ2VzL3V1cC5wbmcpIG5vLXJlcGVhdCBjZW50ZXI7DQoJCQl9DQoJCQkNCgkJCS5mbGV4aWdyaWQgZGl2Lm1EaXYgZGl2LnB0b2d0aXRsZS52c2JsZSBzcGFuDQoJCQl7DQoJCQliYWNrZ3JvdW5kOiB1cmwoaW1hZ2VzL2Rkbi5wbmcpIG5vLXJlcGVhdCBjZW50ZXI7CQkJDQoJCQl9CQkJDQoNCi5mbGV4aWdyaWQgZGl2LnREaXYgLyp0b29sYmFyKi8NCgl7DQoJYmFja2dyb3VuZDogI2ZhZmFmYSB1cmwoaW1hZ2VzL2JnLmdpZikgcmVwZWF0LXggdG9wOw0KCXBvc2l0aW9uOiByZWxhdGl2ZTsJCQkNCglib3JkZXI6IDFweCBzb2xpZCAjY2NjOw0KCWJvcmRlci1ib3R0b206IDBweDsNCglvdmVyZmxvdzogaGlkZGVuOw0KCX0NCg0KCS5mbGV4aWdyaWQgZGl2LnREaXYyDQoJCXsNCgkJZmxvYXQ6IGxlZnQ7DQoJCWNsZWFyOiBib3RoOw0KCQlwYWRkaW5nOiAxcHg7DQoJCX0NCg0KLmZsZXhpZ3JpZCBkaXYuc0RpdiAvKnRvb2xiYXIqLw0KCXsNCgliYWNrZ3JvdW5kOiAjZmFmYWZhIHVybChpbWFnZXMvYmcuZ2lmKSByZXBlYXQteCB0b3A7DQoJcG9zaXRpb246IHJlbGF0aXZlOw0KCWJvcmRlcjogMXB4IHNvbGlkICNjY2M7DQoJYm9yZGVyLXRvcDogMHB4Ow0KCW92ZXJmbG93OiBoaWRkZW47DQoJZGlzcGxheTogbm9uZTsNCgl9DQoNCgkuZmxleGlncmlkIGRpdi5zRGl2Mg0KCQl7DQoJCWZsb2F0OiBsZWZ0Ow0KCQljbGVhcjogYm90aDsNCgkJcGFkZGluZzogNXB4Ow0KCQlwYWRkaW5nLWxlZnQ6IDVweDsNCgkJd2lkdGg6IDEwMjRweDsNCgkJfQ0KDQoJCS5mbGV4aWdyaWQgZGl2LnNEaXYyIGlucHV0LCAuZmxleGlncmlkIGRpdi5zRGl2MiBzZWxlY3QNCgkJew0KCQl2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOw0KCQl9DQoJCQkNCgkuZmxleGlncmlkIGRpdi5idG5zZXBhcmF0b3INCgkJew0KCQlmbG9hdDogbGVmdDsNCgkJaGVpZ2h0OiAyMnB4Ow0KCQlib3JkZXItbGVmdDogMXB4IHNvbGlkICNjY2M7DQoJCWJvcmRlci1yaWdodDogMXB4IHNvbGlkICNmZmY7DQoJCW1hcmdpbjogMXB4Ow0KCQl9DQoJDQoJLmZsZXhpZ3JpZCBkaXYuZmJ1dHRvbg0KCQl7DQoJCQlmbG9hdDogbGVmdDsNCgkJCWRpc3BsYXk6IGJsb2NrOw0KCQkJY3Vyc29yOiBwb2ludGVyOw0KCQkJcGFkZGluZzogMXB4Ow0KCQl9DQoNCgkuZmxleGlncmlkIGRpdi5mYnV0dG9uIGRpdg0KCQl7DQoJCQlmbG9hdDogbGVmdDsNCgkJCXBhZGRpbmc6IDFweCAzcHg7DQoJCX0JCQ0KCQkNCgkuZmxleGlncmlkIGRpdi5mYnV0dG9uIHNwYW4NCgkJew0KCQlmbG9hdDogbGVmdDsNCgkJZGlzcGxheTogYmxvY2s7DQoJCXBhZGRpbmc6IDNweDsNCgkJfQ0KDQoJLmZsZXhpZ3JpZCBkaXYuZmJ1dHRvbjpob3ZlciwgLmZsZXhpZ3JpZCBkaXYuZmJ1dHRvbi5mYk92ZXINCgkJew0KCQkJcGFkZGluZzogMHB4Ow0KCQkJYm9yZGVyOiAxcHggc29saWQgI2NjYzsNCgkJfQ0KDQoJLmZsZXhpZ3JpZCBkaXYuZmJ1dHRvbjpob3ZlciBkaXYsIC5mbGV4aWdyaWQgZGl2LmZidXR0b24uZmJPdmVyIGRpdg0KCQl7DQoJCQlwYWRkaW5nOiAwcHggMnB4Ow0KCQkJYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZmZmOw0KCQkJYm9yZGVyLXRvcDogMXB4IHNvbGlkICNmZmY7DQoJCQlib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjZWVlOw0KCQkJYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlZWU7DQoJCX0JCQ0KCQkNCgkNCi8qIGVuZCB0b29sYmFyKi8NCg0KLmZsZXhpZ3JpZCBkaXYuaERpdg0KCXsNCgliYWNrZ3JvdW5kOiAjZmFmYWZhIHVybChpbWFnZXMvZmhiZy5naWYpIHJlcGVhdC14IGJvdHRvbTsNCglwb3NpdGlvbjogcmVsYXRpdmU7DQoJYm9yZGVyOiAxcHggc29saWQgI2NjYzsNCglib3JkZXItYm90dG9tOiAwcHg7DQoJb3ZlcmZsb3c6IGhpZGRlbjsNCgl9CQ0KDQouZmxleGlncmlkIGRpdi5oRGl2IHRhYmxlDQoJew0KCWJvcmRlci1yaWdodDogMXB4IHNvbGlkICNmZmY7DQoJfQ0KDQoJLmZsZXhpZ3JpZCBkaXYuY0RyYWcNCgkJew0KCQlmbG9hdDogbGVmdDsNCgkJcG9zaXRpb246IGFic29sdXRlOw0KCQl6LWluZGV4OiAyOw0KCQlvdmVyZmxvdzogdmlzaWJsZTsNCgkJfQ0KDQoJCS5mbGV4aWdyaWQgZGl2LmNEcmFnIGRpdg0KCQkJew0KCQkJZmxvYXQ6IGxlZnQ7DQoJCQliYWNrZ3JvdW5kOiBub25lOw0KCQkJZGlzcGxheTogYmxvY2s7DQoJCQlwb3NpdGlvbjogYWJzb2x1dGU7DQoJCQloZWlnaHQ6IDI0cHg7DQoJCQl3aWR0aDogNXB4Ow0KCQkJY3Vyc29yOiBjb2wtcmVzaXplOw0KCQkJfQ0KCQkJDQoJCS5mbGV4aWdyaWQgZGl2LmNEcmFnIGRpdjpob3ZlciwgLmZsZXhpZ3JpZCBkaXYuY0RyYWcgZGl2LmRyYWdnaW5nDQoJCQl7DQoJCQliYWNrZ3JvdW5kOiB1cmwoaW1hZ2VzL2xpbmUuZ2lmKSByZXBlYXQteSAycHggY2VudGVyOw0KCQkJfQ0KDQouZmxleGlncmlkIGRpdi5pRGl2DQoJew0KCQlib3JkZXI6IDFweCBzb2xpZCAjMzE2YWM1Ow0KCQlwb3NpdGlvbjogYWJzb2x1dGU7DQoJCW92ZXJmbG93OiB2aXNpYmxlOw0KCQliYWNrZ3JvdW5kOiBub25lOw0KCX0NCgkNCgkuZmxleGlncmlkIGRpdi5pRGl2IGlucHV0LCAuZmxleGlncmlkIGRpdi5pRGl2IHNlbGVjdCwgLmZsZXhpZ3JpZCBkaXYuaURpdiB0ZXh0YXJlYQ0KCQl7DQoJCWZvbnQtZmFtaWx5OiBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmOw0KCQlmb250LXNpemU6IDExcHg7DQoJCX0NCgkJDQoJLmZsZXhpZ3JpZCBkaXYuaURpdiBpbnB1dC50Yg0KCQl7DQoJCWJvcmRlcjogMHB4Ow0KCQlwYWRkaW5nOiAwcHg7DQoJCXdpZHRoOiAxMDAlOw0KCQloZWlnaHQ6IDEwMCU7DQoJCXBhZGRpbmc6IDBweDsNCgkJYmFja2dyb3VuZDogbm9uZTsNCgkJfQkJCQ0KCQkJCQkNCi5mbGV4aWdyaWQgZGl2LmJEaXYNCgl7DQoJYm9yZGVyOiAxcHggc29saWQgI2NjYzsNCglib3JkZXItdG9wOiAwcHg7DQoJYmFja2dyb3VuZDogI2ZmZjsNCglvdmVyZmxvdzogYXV0bzsNCglwb3NpdGlvbjogcmVsYXRpdmU7DQoJfQ0KCQ0KLmZsZXhpZ3JpZCBkaXYuYkRpdiB0YWJsZQ0KCXsNCglib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NjYzsNCgl9DQoJDQoJLmZsZXhpZ3JpZCBkaXYuaEdyaXANCgl7DQoJcG9zaXRpb246IGFic29sdXRlOw0KCXRvcDogMHB4Ow0KCXJpZ2h0OiAwcHg7DQoJaGVpZ2h0OiA1cHg7DQoJd2lkdGg6IDVweDsNCgliYWNrZ3JvdW5kOiB1cmwoaW1hZ2VzL2xpbmUuZ2lmKSByZXBlYXQteCBjZW50ZXI7DQoJbWFyZ2luLXJpZ2h0OiAxcHg7DQoJY3Vyc29yOiBjb2wtcmVzaXplOw0KCX0NCgkNCgkJLmZsZXhpZ3JpZCBkaXYuaEdyaXA6aG92ZXIsIC5mbGV4aWdyaWQgZGl2LmhHcmlwLmhnT3Zlcg0KCQkJew0KCQkJCWJvcmRlci1yaWdodDogMXB4IHNvbGlkICM5OTk7CQkJCQ0KCQkJCW1hcmdpbi1yaWdodDogMHB4Ow0KCQkJfQ0KCQ0KCS5mbGV4aWdyaWQgZGl2LnZHcmlwDQoJCXsNCgkJaGVpZ2h0OiA1cHg7DQoJCW92ZXJmbG93OiBoaWRkZW47DQoJCXBvc2l0aW9uOiByZWxhdGl2ZTsNCgkJYmFja2dyb3VuZDogI2ZhZmFmYSB1cmwoaW1hZ2VzL3diZy5naWYpIHJlcGVhdC14IDBweCAtMXB4Ow0KCQlib3JkZXI6IDFweCBzb2xpZCAjY2NjOw0KCQlib3JkZXItdG9wOiAwcHg7DQoJCXRleHQtYWxpZ246IGNlbnRlcjsNCgkJY3Vyc29yOiByb3ctcmVzaXplOw0KCQl9DQoJCQkNCgkJCS5mbGV4aWdyaWQgZGl2LnZHcmlwIHNwYW4NCgkJCQkJew0KCQkJCQlkaXNwbGF5OiBibG9jazsNCgkJCQkJbWFyZ2luOiAxcHggYXV0bzsNCgkJCQkJd2lkdGg6IDIwcHg7DQoJCQkJCWhlaWdodDogMXB4Ow0KCQkJCQlvdmVyZmxvdzogaGlkZGVuOw0KCQkJCQlib3JkZXItdG9wOiAxcHggc29saWQgI2FhYTsNCgkJCQkJYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNhYWE7CQ0KCQkJCQliYWNrZ3JvdW5kOiBub25lOw0KCQkJCQl9DQoNCi5mbGV4aWdyaWQgZGl2LmhEaXYgdGgsIC5mbGV4aWdyaWQgIGRpdi5iRGl2IHRkICAvKiBjb21tb24gY2VsbCBwcm9wZXJ0aWVzKi8NCgl7DQoJdGV4dC1hbGlnbjogbGVmdDsNCglib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjZGRkOw0KCWJvcmRlci1sZWZ0OiAxcHggc29saWQgI2ZmZjsNCglvdmVyZmxvdzogaGlkZGVuOw0KCXZlcnRpY2FsLWFsaWduOiB0b3AgIWltcG9ydGFudDsNCgl9DQoNCgkJLmZsZXhpZ3JpZCBkaXYuaERpdiB0aCBkaXYsIC5mbGV4aWdyaWQgIGRpdi5iRGl2IHRkICBkaXYsIGRpdi5jb2xDb3B5IGRpdi8qIGNvbW1vbiBpbm5lciBjZWxsIHByb3BlcnRpZXMqLw0KCQkJew0KCQkJcGFkZGluZzogNXB4Ow0KCQkJYm9yZGVyLWxlZnQ6IDBweCBzb2xpZCAjZmZmOw0KCQkJfQ0KDQouZmxleGlncmlkIGRpdi5oRGl2IHRoLCBkaXYuY29sQ29weQ0KCXsNCglmb250LXdlaWdodDogbm9ybWFsOw0KCWhlaWdodDogMjRweDsNCgljdXJzb3I6IGRlZmF1bHQ7DQoJd2hpdGUtc3BhY2U6IG5vd3JhcDsNCglvdmVyZmxvdzogaGlkZGVuOw0KCX0JDQoNCmRpdi5jb2xDb3B5IHsNCglmb250LWZhbWlseTogQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjsNCglmb250LXNpemU6IDExcHg7DQoJYmFja2dyb3VuZDogI2ZhZmFmYSB1cmwoaW1hZ2VzL2ZoYmcuZ2lmKSByZXBlYXQteCBib3R0b207DQoJYm9yZGVyOiAxcHggc29saWQgI2NjYzsNCglib3JkZXItYm90dG9tOiAwcHg7DQoJb3ZlcmZsb3c6IGhpZGRlbjsNCgl9DQoNCi5mbGV4aWdyaWQgZGl2LmhEaXYgdGguc29ydGVkDQoJew0KCWJhY2tncm91bmQ6IHVybChpbWFnZXMvd2JnLmdpZikgcmVwZWF0LXggMHB4IC0xcHg7DQoJYm9yZGVyLWJvdHRvbTogMHB4IHNvbGlkICNjY2M7DQoJfQ0KCQ0KCS5mbGV4aWdyaWQgZGl2LmhEaXYgdGgudGhPdmVyDQoJew0KCX0NCg0KCS5mbGV4aWdyaWQgZGl2LmhEaXYgdGgudGhPdmVyIGRpdiwgLmZsZXhpZ3JpZCBkaXYuaERpdiB0aC5zb3J0ZWQudGhPdmVyIGRpdg0KCXsNCglib3JkZXItYm90dG9tOiAxcHggc29saWQgb3JhbmdlOw0KCXBhZGRpbmctYm90dG9tOiA0cHg7DQoJfQ0KCQ0KCS5mbGV4aWdyaWQgZGl2LmhEaXYgdGguc29ydGVkIGRpdg0KCXsNCglib3JkZXItYm90dG9tOiAwcHggc29saWQgI2NjYzsNCglwYWRkaW5nLWJvdHRvbTogNXB4Ow0KCX0NCg0KCS5mbGV4aWdyaWQgZGl2LmhEaXYgdGgudGhNb3ZlDQoJew0KCWJhY2tncm91bmQ6ICNmZmY7DQoJY29sb3I6ICNmZmY7DQoJfQ0KCQ0KCS5mbGV4aWdyaWQgZGl2LmhEaXYgdGguc29ydGVkLnRoTW92ZSBkaXYNCgkJew0KCQlib3JkZXItYm90dG9tOiAxcHggc29saWQgI2ZmZjsNCgkJcGFkZGluZy1ib3R0b206IDRweA0KCQl9DQoJDQoJLmZsZXhpZ3JpZCBkaXYuaERpdiB0aC50aE1vdmUgZGl2DQoJew0KCQliYWNrZ3JvdW5kOiAjZmZmICFpbXBvcnRhbnQ7DQoJfQkNCgkNCgkuZmxleGlncmlkIGRpdi5oRGl2IHRoIGRpdi5zZGVzYw0KCQl7DQoJCWJhY2tncm91bmQ6IHVybChpbWFnZXMvZG4ucG5nKSBuby1yZXBlYXQgY2VudGVyIHRvcDsNCgkJfQkNCg0KCS5mbGV4aWdyaWQgZGl2LmhEaXYgdGggZGl2LnNhc2MNCgkJew0KCQliYWNrZ3JvdW5kOiB1cmwoaW1hZ2VzL3VwLnBuZykgbm8tcmVwZWF0IGNlbnRlciB0b3A7DQoJCX0JDQoJCQ0KLmZsZXhpZ3JpZCBkaXYuYkRpdiB0ZA0KCXsNCglib3JkZXItYm90dG9tOiAxcHggc29saWQgI2ZmZjsNCgl2ZXJ0aWNhbC1hbGlnbjogdG9wOw0KCXdoaXRlLXNwYWNlOiBub3dyYXA7DQoJfQ0KDQoJCS5mbGV4aWdyaWQgZGl2LmhEaXYgdGggZGl2DQoJCQl7DQoJCQl9DQoJCQkNCgkJCS5mbGV4aWdyaWQgc3Bhbi5jZHJvcGxlZnQNCgkJCXsNCgkJCWRpc3BsYXk6IGJsb2NrOw0KCQkJYmFja2dyb3VuZDogdXJsKGltYWdlcy9wcmV2LmdpZikgbm8tcmVwZWF0IC00cHggY2VudGVyOw0KCQkJd2lkdGg6IDI0cHg7DQoJCQloZWlnaHQ6IDI0cHg7DQoJCQlwb3NpdGlvbjogcmVsYXRpdmU7DQoJCQl0b3A6IC0yNHB4Ow0KCQkJbWFyZ2luLWJvdHRvbTogLTI0cHg7DQoJCQl6LWluZGV4OiAzOw0KCQkJfQ0KDQoJCQkuZmxleGlncmlkIGRpdi5oRGl2IHNwYW4uY2Ryb3ByaWdodA0KCQkJew0KCQkJZGlzcGxheTogYmxvY2s7DQoJCQliYWNrZ3JvdW5kOiB1cmwoaW1hZ2VzL25leHQuZ2lmKSBuby1yZXBlYXQgMTJweCBjZW50ZXI7DQoJCQl3aWR0aDogMjRweDsNCgkJCWhlaWdodDogMjRweDsNCgkJCWZsb2F0OiByaWdodDsNCgkJCXBvc2l0aW9uOiByZWxhdGl2ZTsNCgkJCXRvcDogLTI0cHg7DQoJCQltYXJnaW4tYm90dG9tOiAtMjRweDsNCgkJCX0NCg0KDQoJCS5mbGV4aWdyaWQgZGl2LmJEaXYgdGQgZGl2DQoJCQl7DQoJCQlib3JkZXItdG9wOiAwcHggc29saWQgI2ZmZjsNCgkJCXBhZGRpbmctYm90dG9tOiA0cHg7DQoJCQl9DQoJDQoJCQkJDQoJCS5mbGV4aWdyaWQgdHIgdGQuc29ydGVkDQoJCQkJew0KCQkJCWJhY2tncm91bmQ6ICNmM2YzZjM7DQoJCQkJYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2RkZDsNCgkJCQlib3JkZXItYm90dG9tOiAxcHggc29saWQgI2YzZjNmMzsNCgkJCQl9CQkNCg0KCQkJCS5mbGV4aWdyaWQgdHIgdGQuc29ydGVkIGRpdg0KCQkJCQl7DQoJCQkJCX0NCg0KDQoJCS5mbGV4aWdyaWQgdHIuZXJvdyB0ZA0KCQkJCXsNCgkJCQliYWNrZ3JvdW5kOiAjZjdmN2Y3Ow0KCQkJCWJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjdmN2Y3Ow0KCQkJCX0NCgkJCQkNCgkJLmZsZXhpZ3JpZCB0ci5lcm93IHRkLnNvcnRlZA0KCQkJCXsNCgkJCQliYWNrZ3JvdW5kOiAjZTNlM2UzOw0KCQkJCWJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTNlM2UzOw0KCQkJCX0JCQkJCQkNCg0KCQkJCS5mbGV4aWdyaWQgdHIuZXJvdyB0ZC5zb3J0ZWQgZGl2DQoJCQkJCXsNCgkJCQkJfQ0KDQoJCS5mbGV4aWdyaWQgZGl2LmJEaXYgdHI6aG92ZXIgdGQsIA0KCQkuZmxleGlncmlkIGRpdi5iRGl2IHRyOmhvdmVyIHRkLnNvcnRlZCwNCgkJLmZsZXhpZ3JpZCBkaXYuYkRpdiB0ci50ck92ZXIgdGQuc29ydGVkLCANCgkJLmZsZXhpZ3JpZCBkaXYuYkRpdiB0ci50ck92ZXIgdGQNCgkJCXsNCgkJCWJhY2tncm91bmQ6ICNkOWViZjU7DQoJCQlib3JkZXItbGVmdDogMXB4IHNvbGlkICNlZWY4ZmY7DQoJCQlib3JkZXItYm90dG9tOiAxcHggZG90dGVkICNhOGQ4ZWI7DQoJCQl9DQoJCQkJCQ0KCQkuZmxleGlncmlkIGRpdi5iRGl2IHRyLnRyU2VsZWN0ZWQ6aG92ZXIgdGQsIA0KCQkuZmxleGlncmlkIGRpdi5iRGl2IHRyLnRyU2VsZWN0ZWQ6aG92ZXIgdGQuc29ydGVkLA0KCQkuZmxleGlncmlkIGRpdi5iRGl2IHRyLnRyT3Zlci50clNlbGVjdGVkIHRkLnNvcnRlZCwgDQoJCS5mbGV4aWdyaWQgZGl2LmJEaXYgdHIudHJPdmVyLnRyU2VsZWN0ZWQgdGQsDQoJCS5mbGV4aWdyaWQgdHIudHJTZWxlY3RlZCB0ZC5zb3J0ZWQsIA0KCQkuZmxleGlncmlkIHRyLnRyU2VsZWN0ZWQgdGQNCgkJCXsNCgkJCWJhY2tncm91bmQ6ICNkNWVmZmMgdXJsKGltYWdlcy9obC5wbmcpIHJlcGVhdC14IHRvcDsNCgkJCWJvcmRlci1yaWdodDogMXB4IHNvbGlkICNkMmUzZWM7DQoJCQlib3JkZXItbGVmdDogMXB4IHNvbGlkICNlZWY4ZmY7DQoJCQlib3JkZXItYm90dG9tOiAxcHggc29saWQgI2E4ZDhlYjsNCgkJCX0NCg0KCS8qIG5vdnN0cmlwZSBhZGp1c3RtZW50cyAqLw0KDQoJLmZsZXhpZ3JpZC5ub3ZzdHJpcGUgLmJEaXYgdGFibGUNCgl7DQoJCWJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2NjOw0KCQlib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjY2NjOw0KCX0NCg0KCS5mbGV4aWdyaWQubm92c3RyaXBlICBkaXYuYkRpdiB0ZCAgDQoJCXsNCgkJYm9yZGVyLXJpZ2h0LWNvbG9yOiAjZmZmOw0KCQl9DQoJCQ0KCS5mbGV4aWdyaWQubm92c3RyaXBlIGRpdi5iRGl2IHRyLmVyb3cgdGQuc29ydGVkDQoJCXsNCgkJYm9yZGVyLXJpZ2h0LWNvbG9yOiAjZTNlM2UzOw0KCQl9DQoNCgkuZmxleGlncmlkLm5vdnN0cmlwZSBkaXYuYkRpdiB0ciB0ZC5zb3J0ZWQNCgkJew0KCQlib3JkZXItcmlnaHQtY29sb3I6ICNmM2YzZjM7DQoJCX0NCg0KCS5mbGV4aWdyaWQubm92c3RyaXBlICBkaXYuYkRpdiB0ci5lcm93IHRkICANCgkJew0KCQlib3JkZXItcmlnaHQtY29sb3I6ICNmN2Y3Zjc7DQoJCWJvcmRlci1sZWZ0LWNvbG9yOiAjZjdmN2Y3Ow0KCQl9DQoJCQ0KCQkuZmxleGlncmlkLm5vdnN0cmlwZSBkaXYuYkRpdiB0ci50clNlbGVjdGVkOmhvdmVyIHRkLCANCgkJLmZsZXhpZ3JpZC5ub3ZzdHJpcGUgZGl2LmJEaXYgdHIudHJTZWxlY3RlZDpob3ZlciB0ZC5zb3J0ZWQsDQoJCS5mbGV4aWdyaWQubm92c3RyaXBlIGRpdi5iRGl2IHRyLnRyT3Zlci50clNlbGVjdGVkIHRkLnNvcnRlZCwgDQoJCS5mbGV4aWdyaWQubm92c3RyaXBlIGRpdi5iRGl2IHRyLnRyT3Zlci50clNlbGVjdGVkIHRkLA0KCQkuZmxleGlncmlkLm5vdnN0cmlwZSB0ci50clNlbGVjdGVkIHRkLnNvcnRlZCwgDQoJCS5mbGV4aWdyaWQubm92c3RyaXBlIHRyLnRyU2VsZWN0ZWQgdGQNCgkJCXsNCgkJCWJvcmRlci1yaWdodDogMXB4IHNvbGlkICMwMDY2RkY7DQoJCQlib3JkZXItbGVmdDogMXB4IHNvbGlkICMwMDY2RkY7DQoJCQl9CQkNCg0KCS5mbGV4aWdyaWQubm92c3RyaXBlIGRpdi5iRGl2IHRyLnRyT3ZlciB0ZCwgLmZsZXhpZ3JpZC5ub3ZzdHJpcGUgZGl2LmJEaXYgdHI6aG92ZXIgdGQNCgkJew0KCQlib3JkZXItbGVmdC1jb2xvcjogI2Q5ZWJmNTsNCgkJYm9yZGVyLXJpZ2h0LWNvbG9yOiAjZDllYmY1Ow0KCQl9DQoNCgkvKiBlbmQgbm92c3RyaXBlICovDQoNCi5mbGV4aWdyaWQgZGl2LnBEaXYNCgl7DQoJYmFja2dyb3VuZDogdXJsKGltYWdlcy93YmcuZ2lmKSByZXBlYXQteCAwIC0xcHg7DQoJYm9yZGVyOiAxcHggc29saWQgI2NjYzsNCglib3JkZXItdG9wOiAwcHg7DQoJb3ZlcmZsb3c6IGhpZGRlbjsNCgl3aGl0ZS1zcGFjZTogbm93cmFwOw0KCXBvc2l0aW9uOiByZWxhdGl2ZTsNCgl9DQoNCi5mbGV4aWdyaWQgZGl2LnBEaXYgZGl2LnBEaXYyDQoJew0KCW1hcmdpbjogM3B4Ow0KCW1hcmdpbi1sZWZ0OiAtMnB4Ow0KCWZsb2F0OiBsZWZ0Ow0KCXdpZHRoOiAxMDI0cHg7DQoJfQkNCgkNCglkaXYucEdyb3VwDQoJCXsNCgkJZmxvYXQ6IGxlZnQ7DQoJCWJhY2tncm91bmQ6IG5vbmU7DQoJCWhlaWdodDogMjRweDsNCgkJbWFyZ2luOiAwcHggNXB4Ow0KCQl9DQoJDQoJLmZsZXhpZ3JpZCBkaXYucERpdiAucFBhZ2VTdGF0LCAuZmxleGlncmlkIGRpdi5wRGl2IC5wY29udHJvbA0KCQl7DQoJCXBvc2l0aW9uOiByZWxhdGl2ZTsNCg0KCQl0b3A6IDVweDsNCgkJb3ZlcmZsb3c6IHZpc2libGU7DQoJCX0NCgkJDQoJLmZsZXhpZ3JpZCBkaXYucERpdiBpbnB1dA0KCQl7DQoJCXZlcnRpY2FsLWFsaWduOiB0ZXh0LXRvcDsNCgkJcG9zaXRpb246IHJlbGF0aXZlOw0KCQl0b3A6IC01cHg7DQoJCX0NCgkNCgkuZmxleGlncmlkIGRpdi5wRGl2ICBkaXYucEJ1dHRvbg0KCQl7DQoJCWZsb2F0OiBsZWZ0Ow0KCQl3aWR0aDogMjJweDsNCgkJaGVpZ2h0OiAyMnB4Ow0KCQlib3JkZXI6IDBweDsNCgkJY3Vyc29yOiBwb2ludGVyOw0KCQlvdmVyZmxvdzogaGlkZGVuOw0KCQl9DQoNCgkJLmZsZXhpZ3JpZCBkaXYucERpdiAgZGl2LnBCdXR0b246aG92ZXIsIC5mbGV4aWdyaWQgZGl2LnBEaXYgIGRpdi5wQnV0dG9uLnBCdG5PdmVyDQoJCQl7DQoJCQl3aWR0aDogMjBweDsNCgkJCWhlaWdodDogMjBweDsNCgkJCWJvcmRlcjogMXB4IHNvbGlkICNjY2M7DQoJCQljdXJzb3I6IHBvaW50ZXI7DQoJCQl9DQoJCQ0KCS5mbGV4aWdyaWQgZGl2LnBEaXYgIGRpdi5wQnV0dG9uIHNwYW4NCgkJew0KCQl3aWR0aDogMjBweDsNCgkJaGVpZ2h0OiAyMHB4Ow0KCQlkaXNwbGF5OiBibG9jazsNCgkJZmxvYXQ6IGxlZnQ7DQoJCX0JCQ0KCQ0KCQkuZmxleGlncmlkIGRpdi5wRGl2ICBkaXYucEJ1dHRvbjpob3ZlciBzcGFuLCAuZmxleGlncmlkIGRpdi5wRGl2ICBkaXYucEJ1dHRvbi5wQnRuT3ZlciBzcGFuDQoJCQl7DQoJCQl3aWR0aDogMTlweDsNCgkJCWhlaWdodDogMTlweDsNCgkJCWJvcmRlci10b3A6IDFweCBzb2xpZCAjZmZmOw0KCQkJYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZmZmOw0KCQkJfQkJDQoJCQ0KDQoJCS5mbGV4aWdyaWQgLnBTZWFyY2gNCgkJCXsNCgkJCWJhY2tncm91bmQ6IHVybChpbWFnZXMvbWFnbmlmaWVyLnBuZykgbm8tcmVwZWF0IGNlbnRlcjsNCgkJCX0NCgkNCgkJLmZsZXhpZ3JpZCAucEZpcnN0DQoJCQl7DQoJCQliYWNrZ3JvdW5kOiB1cmwoaW1hZ2VzL2ZpcnN0LmdpZikgbm8tcmVwZWF0IGNlbnRlcjsNCgkJCX0NCgkJCQ0KCQkuZmxleGlncmlkIC5wUHJldg0KCQkJew0KCQkJYmFja2dyb3VuZDogdXJsKGltYWdlcy9wcmV2LmdpZikgbm8tcmVwZWF0IGNlbnRlcjsNCgkJCX0NCg0KCQkuZmxleGlncmlkIC5wTmV4dA0KCQkJew0KCQkJYmFja2dyb3VuZDogdXJsKGltYWdlcy9uZXh0LmdpZikgbm8tcmVwZWF0IGNlbnRlcjsNCgkJCX0NCg0KCQkuZmxleGlncmlkIC5wTGFzdA0KCQkJew0KCQkJYmFja2dyb3VuZDogdXJsKGltYWdlcy9sYXN0LmdpZikgbm8tcmVwZWF0IGNlbnRlcjsNCgkJCX0NCgkJCQ0KCQkuZmxleGlncmlkIC5wUmVsb2FkDQoJCQl7DQoJCQliYWNrZ3JvdW5kOiB1cmwoaW1hZ2VzL2xvYWQucG5nKSBuby1yZXBlYXQgY2VudGVyOw0KCQkJfQ0KCQkJDQoJCS5mbGV4aWdyaWQgLnBSZWxvYWQubG9hZGluZw0KCQkJew0KCQkJYmFja2dyb3VuZDogdXJsKGltYWdlcy9sb2FkLmdpZikgbm8tcmVwZWF0IGNlbnRlcjsNCgkJCX0JCQkJCQkJCQkJCQkJCQkNCg0KLyogaWUgYWRqdXN0bWVudHMgKi8NCgkJCQ0KCQkuZmxleGlncmlkLmllIGRpdi5oRGl2IHRoIGRpdiwgLmZsZXhpZ3JpZC5pZSAgZGl2LmJEaXYgdGQgIGRpdiwgZGl2LmNvbENvcHkuaWUgZGl2LyogY29tbW9uIGlubmVyIGNlbGwgcHJvcGVydGllcyovDQoJCQl7DQoJCQlvdmVyZmxvdzogaGlkZGVuOw0KCQkJfQkJCQ0KCQk=]]></data>
	</file>
	<file>
	  <filename>/CSS/flexigrid/images/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/CSS/flexigrid/images/._fhbg.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[AAUWBwACAABNYWMgT1MgWCAgICAgICAgAAIAAAAJAAAAMgAADrAAAAACAAAO4gAAAR4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQVRUUi9cJmYAAA7iAAAAmAAAACoAAAAAAAAAAAAAAAAAAAABAAAAmAAAACoAABVjb20uYXBwbGUucXVhcmFudGluZQAwMDAwOzQ3N2RlY2IyO0ZpcmVmb3g7fG9yZy5tb3ppbGxhLmZpcmVmb3gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAAAAAAAHlRoaXMgcmVzb3VyY2UgZm9yayBpbnRlbnRpb25hbGx5IGxlZnQgYmxhbmsgICAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAAAAAAAAB4AAAAAAAAAAAAcAB7//w==]]></data>
	</file>
	<file>
	  <filename>/CSS/flexigrid/images/._wbg.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[AAUWBwACAABNYWMgT1MgWCAgICAgICAgAAIAAAAJAAAAMgAADrAAAAACAAAO4gAAAR4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQVRUUj1cv+kAAA7iAAAAmAAAACoAAAAAAAAAAAAAAAAAAAABAAAAmAAAACoAABVjb20uYXBwbGUucXVhcmFudGluZQAwMDAwOzQ3N2U1NGZiO0ZpcmVmb3g7fG9yZy5tb3ppbGxhLmZpcmVmb3gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAAAAAAAHlRoaXMgcmVzb3VyY2UgZm9yayBpbnRlbnRpb25hbGx5IGxlZnQgYmxhbmsgICAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAAAAAAAAB4AAAAAAAAAAAAcAB7//w==]]></data>
	</file>
	<file>
	  <filename>/CSS/flexigrid/images/bg.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[R0lGODlhAgA4AIcAAObm5ufn5+jo6Onp6erq6uvr6+zs7O3t7e7u7u/v7/Dw8P///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAAAP8ALAAAAAACADgAAAgzABcsAEAQQICDAQQoXDig4QACECMWmFjAgMWLBzIeQMCxY4KPCRSIHEmypMmTKFOqPBkQADs=]]></data>
	</file>
	<file>
	  <filename>/CSS/flexigrid/images/btn-sprite.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[R0lGODlhAwA/APcAAAA8dAD/AED/QFaLxOWXAPiyMIiGhq2trYyy2L7T6f3YidDQ0Nzc3N7e3s7f79Hh8NTj8dfk8tjl8tvn897p9N/q9f/wz+Dg4OLi4uPj4+Xl5efn5+Pn6+jo6Onp6evr6+zs7O3t7e7u7uHr9ePt9uXu9+bv9+jw+P7+/f///f7+//7////+/v/+/////v///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAAAEALAAAAAADAD8AAAiYAAMEODBQxQEXGg6gEHEwxAEWIA68+CDRg8QOEjdITPgig0SPLzBIvCCxQUmJDA6kWDCwhUADBAMYDKDBhQERKAyEsAmChYEPLwx4CNoh6IagGoJmUBoUQ9ALQRtEDcog6IIUBloYCLB14AGJL15oGCuibIizINJ+WOuhbYe3G+KO1ZChrl0MeC/obcC3L4O/CwKHDWrAQEAAOw==]]></data>
	</file>
	<file>
	  <filename>/CSS/flexigrid/images/ddn.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAAAgAAAAEAgMAAADOo5ZjAAAACVBMVEUAAAAAAABZWVjux8MkAAAAAXRSTlMAQObYZgAAABRJREFUeNpjmBrGoBrBwJnAwNQAAA+QAlRLCPc3AAAAAElFTkSuQmCC]]></data>
	</file>
	<file>
	  <filename>/CSS/flexigrid/images/dn.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAAAcAAAAEBAMAAACw6DhOAAAAMFBMVEX////U1NSgoKCwsLCWlpaMjIy5ubmPj4/Jycmvr69ERESOjo60tLRtbW3ExMR9fX3wBco8AAAAAXRSTlMAQObYZgAAABpJREFUaN5jWB+tacDA69bIwMBQJwAkeBgYACgEAtKsiYDIAAAAAElFTkSuQmCC]]></data>
	</file>
	<file>
	  <filename>/CSS/flexigrid/images/fhbg.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[R0lGODlhAgAYAIcAANDQ0Ovs7uzt7+3u8O7v8e/w8vDx8/Hy9Pn5+QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAAAP8ALAAAAAACABgAAAghABEIHEiwYMEDCA8YWMiwgMMCBAgMmDhAgIAAGAMAABAQADs=]]></data>
	</file>
	<file>
	  <filename>/CSS/flexigrid/images/first.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[R0lGODlhEAAQAMQNACRIkC1TnjNZpj9otyxm2Dhu3D913Sxx7kRvwEJt1Ep1yEh630574f///1OA1lGD4VaE6V+L4GCM5GiU5W+W7G2Z5mec+3Ga536f7oKg542r8Iiu/5a076G+8KK9/6rE7yH5BAEAAA0ALAAAAAAQABAAAAVWYCOOZGme55RdJls+X1VGcul0Exl5uc1Jo8TGAywpNBFRwmLhJEsIzKMhIBwsmmlpQFmIANaLtySgGEbgx5ksKZAACXcpACGUwCYAw17iv+EogYKDJCEAOw==]]></data>
	</file>
	<file>
	  <filename>/CSS/flexigrid/images/hl.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAAAEAAAAQBAMAAAAlsQiEAAAAMFBMVEXe8vzv+P3X7/zV7/zm9f3q9v3o9v3s9/3w+P3W7/zh8/za8Pzk8/3c8fzx+P32+/1uHvCUAAAAJklEQVR42mP4wPSBWYBBgCmBWYJJAMg6wPSAgYHhApBUYJjA/AIAcVIHl+VFkDQAAAAASUVORK5CYII=]]></data>
	</file>
	<file>
	  <filename>/CSS/flexigrid/images/last.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[R0lGODlhEAAQAMQNACRIkC1TnjNZpj9otyxm2Dhu3D913Sxx7kRvwEJt1Ep1yEh630574f///1OA1lGD4VaE6V+L4GCM5GiU5W+W7G2Z5mec+3Ga536f7oKg542r8Iiu/5a076G+8KK9/6rE7yH5BAEAAA0ALAAAAAAQABAAAAVZYCOOZGme52Ve2WRWUVl9jzl58Th1jil5m8RIwumVIhyLRdiIaBSmh8ZyIAgaDwzCtLhUAaIFZWAyPAhgkYFyLRUSaVFB0iahSwRIwETgM+IoInCAgYWGDSEAOw==]]></data>
	</file>
	<file>
	  <filename>/CSS/flexigrid/images/line.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[R0lGODlhAgANAIcAAKyomf///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAAAP8ALAAAAAACAA0AAAgOAAEEEEhwoMGCCA8GCAgAOw==]]></data>
	</file>
	<file>
	  <filename>/CSS/flexigrid/images/load.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[R0lGODlhEAAQAPYAAOfn5xhFjMPL15CiwGWBrkttok5vo3GLs5urxcvR2p2txjRbmDhemT5inENnn0psoW2Isa+7zi5WlXSNtNfa39nc4LXA0YecvFh3p2SArbK9z8HJ1kZpoClTk4mdvaGwyGJ/rHyTt8/U3ISZuyJNkGyGsJanw2qFr6u4zFBwpCBLj6e1ypGkwSpTkxxIjdTX3t3f4nmRtoOZu9/h44GXuqCvx+Pk5eXl5rO+0LvF0+Hi5MXM2KWzytvd4cLJ1tHW3czR2r/I1bnD0rC7zs3T28fO2N3f4snP2XqRtqm3y6i1ylV1p1p4qGB9q2eDrk1vo0hqoLfB0XePtUBkndXZ3zpfmoufvl99qzthmzBXlpmqxFZ1pyZQkoabvGiDrkJlnrrD0r3G1NPX3q26zX6UuI6hv5ipw117qoyfvlRzplJypTJZl56txiROkSBLj6OyyRpGjJWnwzZcmShRkkRnn3aOtTxhmx5JjnKLszFZl1x6qW+Jsn+WuQAAAAAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh/hpDcmVhdGVkIHdpdGggYWpheGxvYWQuaW5mbwAh+QQJCgAAACwAAAAAEAAQAAAHjYAAgoOEhYUbIykthoUIHCQqLoI2OjeFCgsdJSsvgjcwPTaDAgYSHoY2FBSWAAMLE4wAPT89ggQMEbEzQD+CBQ0UsQA7RYIGDhWxN0E+ggcPFrEUQjuCCAYXsT5DRIIJEBgfhjsrFkaDERkgJhswMwk4CDzdhBohJwcxNB4sPAmMIlCwkOGhRo5gwhIGAgAh+QQJCgAAACwAAAAAEAAQAAAHjIAAgoOEhYU7A1dYDFtdG4YAPBhVC1ktXCRfJoVKT1NIERRUSl4qXIRHBFCbhTKFCgYjkII3g0hLUbMAOjaCBEw9ukZGgidNxLMUFYIXTkGzOmLLAEkQCLNUQMEAPxdSGoYvAkS9gjkyNEkJOjovRWAb04NBJlYsWh9KQ2FUkFQ5SWqsEJIAhq6DAAIBACH5BAkKAAAALAAAAAAQABAAAAeJgACCg4SFhQkKE2kGXiwChgBDB0sGDw4NDGpshTheZ2hRFRVDUmsMCIMiZE48hmgtUBuCYxBmkAAQbV2CLBM+t0puaoIySDC3VC4tgh40M7eFNRdH0IRgZUO3NjqDFB9mv4U6Pc+DRzUfQVQ3NzAULxU2hUBDKENCQTtAL9yGRgkbcvggEq9atUAAIfkECQoAAAAsAAAAABAAEAAAB4+AAIKDhIWFPygeEE4hbEeGADkXBycZZ1tqTkqFQSNIbBtGPUJdD088g1QmMjiGZl9MO4I5ViiQAEgMA4JKLAm3EWtXgmxmOrcUElWCb2zHkFQdcoIWPGK3Sm1LgkcoPrdOKiOCRmA4IpBwDUGDL2A5IjCCN/QAcYUURQIJIlQ9MzZu6aAgRgwFGAFvKRwUCAAh+QQJCgAAACwAAAAAEAAQAAAHjIAAgoOEhYUUYW9lHiYRP4YACStxZRc0SBMyFoVEPAoWQDMzAgolEBqDRjg8O4ZKIBNAgkBjG5AAZVtsgj44VLdCanWCYUI3txUPS7xBx5AVDgazAjC3Q3ZeghUJv5B1cgOCNmI/1YUeWSkCgzNUFDODKydzCwqFNkYwOoIubnQIt244MzDC1q2DggIBACH5BAkKAAAALAAAAAAQABAAAAeJgACCg4SFhTBAOSgrEUEUhgBUQThjSh8IcQo+hRUbYEdUNjoiGlZWQYM2QD4vhkI0ZWKCPQmtkG9SEYJURDOQAD4HaLuyv0ZeB4IVj8ZNJ4IwRje/QkxkgjYz05BdamyDN9uFJg9OR4YEK1RUYzFTT0qGdnduXC1Zchg8kEEjaQsMzpTZ8avgoEAAIfkECQoAAAAsAAAAABAAEAAAB4iAAIKDhIWFNz0/Oz47IjCGADpURAkCQUI4USKFNhUvFTMANxU7KElAhDA9OoZHH0oVgjczrJBRZkGyNpCCRCw8vIUzHmXBhDM0HoIGLsCQAjEmgjIqXrxaBxGCGw5cF4Y8TnybglprLXhjFBUWVnpeOIUIT3lydg4PantDz2UZDwYOIEhgzFggACH5BAkKAAAALAAAAAAQABAAAAeLgACCg4SFhjc6RhUVRjaGgzYzRhRiREQ9hSaGOhRFOxSDQQ0uj1RBPjOCIypOjwAJFkSCSyQrrhRDOYILXFSuNkpjggwtvo86H7YAZ1korkRaEYJlC3WuESxBggJLWHGGFhcIxgBvUHQyUT1GQWwhFxuFKyBPakxNXgceYY9HCDEZTlxA8cOVwUGBAAA7AAAAAAAAAAAA]]></data>
	</file>
	<file>
	  <filename>/CSS/flexigrid/images/load.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAABgFBMVEX///+VzI39/v2k1Juaz5KPyYdPlUiQyohPkEliolvm7eaFxH6QvIucz5SZz5COxoZUlU651Lav2KqbvpeOyYWLxoNstGSJxoJWl1B2nHO0zrKSs49TnktAhjlRm0lusGZamVS/3LxUnExoqGCQtoyNx4af0peBwneRyoqf0Za64rRXo06Fx3tjpF2Lx4Vlp15NlkWLw4Nrl2iWzY4+gzeiwp9Dfz12s2+Yzo+h0ph+v3WUy4xrrGOw1KygvJ6407VOi0djnV6Ex3ul2J6v26lboFRRkkuiv6BtnWlaplDC375smWmDxHmLw4Soz6RkqV1MjUe92bqc0JSKxIPe8Ny20bS717iSyololmS+4bmPyYheq1SQyYmJrIeDw3lsrWW73rdNgUru9+271rd8vXOgyZv8/fyxy69Eiz2WzY9uq2eCwnqr2qTO3M2Xz5CBvnqn156HxIBoqmGUupA3ezIzdi6gy5uBpX5Hi0Dv+O2UspKJw4Ce0ZU6fjRKi0V/wXnPsN2/AAAAAXRSTlMAQObYZgAAAL5JREFUeNpjYIABWyYGVJDFA2NVRsaIecoYKHOqQPgheXHhQTV81qyFAtIgfpKxCLMFCyO7KHd9QCxIIMHKkldVX7a2lKOuHKzDt5oxWKEYyEiUhBjhr8TGIQxiVKV5KQYm2zOECYZKpTNpgYT8XNkqHCDKnJ2ARConf5S5B5ifo6MerS1nY8gqLuEO4rv4FDCrAW3O5tb15gIJCKVo8mZq6OXHuxnlQowoky/KMCkxi7DjgnmHxxHNp0ymcCYAHGogH+6u80IAAAAASUVORK5CYII=]]></data>
	</file>
	<file>
	  <filename>/CSS/flexigrid/images/magnifier.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAB7klEQVR42q2TvWtTYRSHf/crMWJN1DTCtX4PVf8AoSIEahcxUzcLnYQuxVmcRHBwE4Q7CW7STUEKflDEgCBqBkEbUqG1tRATjVYwubnvec95XwdrRZooos9yzvSc34FzgH/E+dGUl9g1xkQstiQiIYuBZqkzy6zWMj1xYtD0FTxeYteIeZRN2+KOrQ581wIWSNhitZXg3cduWTOPTo3t3SRxAUDERNvTpljY5iDRglZb0GwLYjI4MJhBIRsUFXHUK4ELAMxS2plx8FUJYrJgYyFi0SGLz13Bnl0ZKOJSX4FmCT0XiMlCjIUYfJcYi44ySAUeiDjsJfABgDTD2ABsLIwBxP6s1gBiAaUZfRMQcT3RBr7rrE/GRg18B3GiwUQf+gs0zy43YwykXaQ8B7KeJO07yGU8vF5sYXfnZW7uypnhngJFPP220S7Pr3xB4AGFAR+FrI+Ua/G82kD7UwOnwuYWpeIndy6MDPc8pGt3F13NHGktJWIJWQs0y/t8d55Gs68ODh09jvrCC7ypPGxpnZycjGoLvwj6ce/SWIoomcnvOzK+/9gIVmvPUK08aJ27sTK4scLvOH15jpSKzy5Xn96uVe6jMHQYRCq/aYU/cXPqUIpZzXhBejxur109f2vt4l9/XjSZ965P5EL8T74BN3IdzGJ3khwAAAAASUVORK5CYII=]]></data>
	</file>
	<file>
	  <filename>/CSS/flexigrid/images/next.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[R0lGODlhEAAQAMQRACRIkChNli1TnjNZpjhgrz9otx1m9S9kzy9l0zBiyD5z2yRq8ixx7jRy6ERvwEp1yE970P///1OA1lOE3VWF3liH30+K9k+J/VeH4F+M4Wec+2ic+YWu/4iu/6K9/6W//yH5BAEAABEALAAAAAAQABAAAAU2YCSOZGmeqIilppSxJPS9cPRoX1U7F/dRsMJF0/FMWASGRaOADRaNQ01gSNQiAcQ1Ath6v7UQADs=]]></data>
	</file>
	<file>
	  <filename>/CSS/flexigrid/images/prev.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[R0lGODlhEAAQAMQfAF+M4aW//1WF3lOE3Sxx7h1m9S9kz4iu/y1Tnk970CRq8jhgr6K9/0+K9oWu/yRIkC9l0zBiyERvwD5z20p1yDNZpliH31OA1leH4D9ot2ib/TRy6Gic+UeE+yhNlv///yH5BAEAAB8ALAAAAAAQABAAAAU34CeOZGmeaImlJXCxIxAk8GcFGgULgdNIrAHjwOlkYBNOg7CoGTaKSu0TKSCmH4gH+3lwv2BTCAA7]]></data>
	</file>
	<file>
	  <filename>/CSS/flexigrid/images/up.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAAAcAAAAECAMAAAB1GNVPAAAAM1BMVEX////U1NR9fX3R0dG0tLSXl5dAQEBHR0fV1dVERESvr6/Z2dmfn59sbGx5eXlGRkbMzMypZP6kAAAAAXRSTlMAQObYZgAAACJJREFUeNpjYGBgYGcAA04mXhDFxsfFwsPAwM/KLMDIzQEABd0Aiem8x60AAAAASUVORK5CYII=]]></data>
	</file>
	<file>
	  <filename>/CSS/flexigrid/images/uup.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAAAgAAAAECAYAAACzzX7wAAAAIklEQVR42mNgQAKRkRH/QZgBG4BKgDGGImRJDEXYJJEVAQDl3xw9KTmDLgAAAABJRU5ErkJggg==]]></data>
	</file>
	<file>
	  <filename>/CSS/flexigrid/images/wbg.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[R0lGODlhAQAsAYcAANfX19jY2Nra2tvb29zc3N7e3uDg4OLi4uPj4+Xl5efn5+jo6Onp6evr6+zs7O3t7e7u7vDw8P///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAAAP8ALAAAAAABACwBAAhBAAVIiADhgYMGDBYoSIAAwQEDBQoQGCAgAICLGDNq3Mixo8ePIEOKHEnSo4STKFOqXMmypcuXMGPKnEmzpkwBAQEAOw==]]></data>
	</file>
	<file>
	  <filename>/CSS/images/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/CSS/images/add.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAABgFBMVEX///+X1YuYzIav36ag2ZabwZiDtW59uWt0t1x3vGBJjz9zulyTv3/r8+m81bnZ6dHv9uzo8ebc8djU689koFZJj0K95LaW04m32qpEjDtwwWPn8OWU04qmyKButVi02qZIjUHL5sONvnunyaGd2JKVv4Jno1tVlk2YzIqOzIR5vW5oq1N9vmeJvniTzYiGyXyKwnmIuHdrqlhDjziMy4FvtVikzpQ9hjW136x4rmjF3bnj7eHM4MbK3sVTlUyr1J1lq1XF6MDO6cmGt3Gy26iz3al8w2u03arg8ty34K+BzHVCjTa41a+O0oO61rF/uW2Z0Yt6xmt+x2+SxYBenFaXx4W43a/X7tJyuVuz2aVxvl+KuXl4tGSJyH+Kz32GyXqFzXlXnkWPwn18umSVwIKMu3ZqrFtsqlpFjTy73K+126iV1Iphnlh+wWmmz5a+4ram0Ja23axmolh2rGd/smrE3Lh9vGbj7uKl25tQmUHN4MfJ3sR5wWRvtVlwuFn///8guUIpAAAAAXRSTlMAQObYZgAAAMZJREFUeNpjYMAGBKxSnNmi/XhhfH4eM0VhpzB/yyooPzXTQ6yChdnRoMgWrJ5HQkhFTzM729eTXU0QKFAaGs4iE1tfn+AWZJGoDBRQLWQ20deqr0/j5A4IzgEKsOUzxteDQV2uPRdQoMQ1zgsqoGMvCRQw1BAPlHIAcusimJTUgQI+2u41UZxAATkOeWNWoABvMbsLJ3ddrSlHZLpoOcghNiIxWUxlyUyRRuZ8EKdWi1QmFeTpeivwwTwjLRvClWHHao3V5wDDGi1NCzgVpQAAAABJRU5ErkJggg==]]></data>
	</file>
	<file>
	  <filename>/CSS/images/close.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAABgFBMVEX////uycPxnZa/XED2hGz76+vuko/2z8/nxLn6nYvjf33wjHfcppbzeWPmWU7ual7cp5fjeHngZVzWYFTOYlT2q6L6q53uZlLEZEzja2Hxjnr15+Lyd2PvycXwtrb36ObieXnwg3v4tqj0oJ7AVT3WbmTpW0/nXVn4r6Tpe3DwkX/UcWXBTTP6o5G6UjTbVkv81M3feXTMUjzicGbzp6P7qZzpY1vuhH3ea2r6uq73kX71o5/vysbwtbX8x7r36OXqsKz1rKHxjYHNaFj5y8T0tKrhqZ7EUDTpf3jQTz7AWT/uinXzc13mVlDhq6DmWlLhb3D56ejwZFbvhn74jHb1r6X4w772gmi/UzrmVkzIa1X6mofqg33NYFHbaWXMZlXXXVH929T93Njrs6/keHHoenXcbmn508zwhXD4lH/1pqHjbmP56ujqZlzCZ0ztk474hnDca2i+Vjn5ua/yrar3k3715uH0op7qXFD6k3/mWEz5kn73q6HsX1TpWU3////t8u6ZAAAAAXRSTlMAQObYZgAAAL5JREFUeNpjYMAGWOW4LAoNkwNhfHaF/LB0F1djVRsoP6AkyVKX09ROU4QRrF7QJDFaSyqzOkQp21keKGAbY8BZ6s0CBLwann5AAa5QMe5aMJBx8ogCCqQVV2bUg0EdP5MKUCCupiAcKpDLVAQUMHSy8qkDAzVFQwmggIO+aJA4iF/lb+3OAxTI0ZZ0rK2o44v0LRdmlgY5RDZWKCvYTN1cOUGPA+JUxnijVDa2FB1mDphn7N2ivCLyBMqw+hwArDYvSbfrpQIAAAAASUVORK5CYII=]]></data>
	</file>
	<file>
	  <filename>/CSS/MasterCSS.css</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[QGNoYXJzZXQgInV0Zi04IjsNCi8qIENTUyBEb2N1bWVudCBDb21mb3J0YWFSZWd1bGFyKi8NCmEgeyB0ZXh0LWRlY29yYXRpb246bm9uZTt9DQphOmhvdmVyIHsgdGV4dC1kZWNvcmF0aW9uOm5vbmU7fQ0KDQpkaXYucGFnZWNvbnRhaW5lciB7DQovKmZvbnQtZmFtaWx5OiJDb21mb3J0YWFSZWd1bGFyIjsqLw0KfQ0KLkJhY2tMaW5re2N1cnNvcjpwb2ludGVyO2Zsb2F0OnJpZ2h0O30NCi5oaWRkZW57ZGlzcGxheTpub25lO30NCg0KDQojTWFpbkNvbnRlbnQgaDEsI01haW5Db250ZW50IGgyLCNNYWluQ29udGVudCBoMywjTWFpbkNvbnRlbnQgaDQsI01haW5Db250ZW50IGg1e21hcmdpbjowO30NCg0KYmxvY2txdW90ZSwgaW5wdXQsIGxpLCBzZWxlY3QsIHRoLCB0ZCB7DQpmb250LXNpemU6MTJweDsNCn0NCiNNYWluQ29udGVudCAuZXh0ZXJuYWwsDQouZXh0ZXJuYWx7DQpiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoLi4vaW1hZ2VzL2V4dGVybmFsLmdpZikgbm8tcmVwZWF0IHJpZ2h0IDVweDsJDQoJcGFkZGluZy1yaWdodDoxNXB4Ow0KCW1hcmdpbi1yaWdodDoyNXB4Ow0KCX0NCiBiLnJib3R0b20gew0KZGlzcGxheTpibG9jazsNCn0NCiBiLnJib3R0b20gKiB7DQpiYWNrZ3JvdW5kOiNBOEI3QzYgbm9uZSByZXBlYXQgc2Nyb2xsIDAgMDsNCmRpc3BsYXk6YmxvY2s7DQpoZWlnaHQ6MXB4Ow0Kb3ZlcmZsb3c6aGlkZGVuOw0KfQ0KIGIucjEgew0KYmFja2dyb3VuZDojMDAwMDAwIG5vbmUgcmVwZWF0IHNjcm9sbCAwIDA7DQptYXJnaW46MCA1cHg7DQp9DQogYi5yMiB7DQptYXJnaW46MCAzcHg7DQp9DQogYi5yMyB7DQptYXJnaW46MCAycHg7DQp9DQogYi5yNCB7DQpoZWlnaHQ6MnB4Ow0KbWFyZ2luOjAgMXB4Ow0KfQ0KLlNpbWNvbnsNCglwYWRkaW5nOiAxMHB4Ow0KCWJvcmRlci1yaWdodDogMnB4IHNvbGlkICMwMDA7DQoJYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCAjMDAwOw0KCWJvcmRlci10b3Atc3R5bGU6IG5vbmU7DQoJYm9yZGVyLWJvdHRvbS1zdHlsZTogbm9uZTsNCgliYWNrZ3JvdW5kLWNvbG9yOiNBOEI3QzY7DQp9DQouU2ltV3JhcHtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyB9DQouY29kZUhJR0hMSUdIVHtjb2xvcjojMzU0ZDU4OyBmb250LXNpemU6MTRweDsgZm9udC13ZWlnaHQ6NjAwOyBsaW5lLWhlaWdodDoxNXB4O30NCmRpdi5wYWdlY29udGFpbmVyIC5wYWdlaGVhZGVyIHtjb2xvcjojMzU0ZDU4OyBmb250LXNpemU6MjRweDsgZm9udC13ZWlnaHQ6NjAwOyBsaW5lLWhlaWdodDoxNXB4O30NCg0KZGl2LnBhZ2Vjb250YWluZXIgLnBhZ2VoZWFkZXIgc3Bhbi5oZWxwdGV4dHsNCglmb250LXNpemU6MTJweDsgDQoJZm9udC13ZWlnaHQ6bm9ybWFsOw0KCW1hcmdpbi10b3A6LTRweDsNCglwYWRkaW5nOjJweDsNCglwb3NpdGlvbjphYnNvbHV0ZTsNCglyaWdodDozNXB4Ow0KCXotaW5kZXg6MTA7DQp9DQpocnsNCglkaXNwbGF5OmJsb2NrOw0KCX0NCnRleHRhcmVhew0KCXdpZHRoOjI1MHB4Ow0KCWhlaWdodDo3NXB4Ow0KfQ0KDQojUFBCTSBoMyBzcGFue2JhY2tncm91bmQtY29sb3I6Izk5OTk5OTsNCmJvcmRlcjoxcHggc29saWQgI0NDQ0NDQzsNCmNvbG9yOiMzMzMzMzM7DQpmb250LXNpemU6MThweDsNCnBhZGRpbmc6NXB4IDVweCA1cHggMTVweDtjdXJzb3I6cG9pbnRlcjsgZGlzcGxheTpibG9jazt3aWR0aDphdXRvOyBwb3NpdGlvbjpyZWxhdGl2ZTsgei1pbmRleDo5O30NCiNQUEJNIGgzIHNwYW4gaW1neyB6LWluZGV4Ojk7IHBvc2l0aW9uOmFic29sdXRlOyB3aWR0aDo5NSU7DQpoZWlnaHQ6MTAwJTt9DQojUFBCTSBoMyBzcGFuOmhvdmVye2JhY2tncm91bmQtY29sb3I6I2NjYzsNCmJvcmRlcjoxcHggc29saWQgIzk5OTtjb2xvcjojMDAwO30NCmRpdi5jb250ZW50ew0KYmFja2dyb3VuZC1jb2xvcjojRTJFMkUyOw0KYm9yZGVyOjFweCBzb2xpZCAjNjY2NjY2Ow0KbWFyZ2luOjFweCAxcHggNXB4Ow0KcGFkZGluZzozcHggNHB4IDVweDsNCn0NCg0KDQoNCiNQUEJNIC5UYWJwYW5lczIgaDJ7Zm9udC1zaXplOjIwcHg7DQpsZWZ0OjA7DQptYXJnaW4tYm90dG9tOjVweDsNCnBhZGRpbmctbGVmdDoxNXB4Ow0KcGFkZGluZy10b3A6MDt9DQoNCg0KLmV4dGVuZEhBTkRMRSAqIHsNCglkaXNwbGF5OmlubGluZTsNCgltYXJnaW46MWVtIDAgMC4yZW0gMjAlOw0KCWN1cnNvcjpwb2ludGVyOw0KfQ0KDQouTmV4dGVuZCB7DQoJbWFyZ2luOjFlbSAwIDAuMmVtIDIwJTsNCglwb3NpdGlvbjogcmVsYXRpdmU7DQp9DQouTmV4dGVuZCB7DQoJZGlzcGxheTpub25lOw0KfQ0KDQouVHJhbnNsYXRlQ29uIHsNCgliYWNrZ3JvdW5kLWNvbG9yOiNGRkZGRkY7DQoJYm9yZGVyOjJweCBzb2xpZCAjMDAwMDAwOw0KCXBvc2l0aW9uOmFic29sdXRlOw0KCXdpZHRoOjE5NXB4Ow0KCXotaW5kZXg6NzAwOw0KfQ0KLmNvbnRyeUNvZGVzew0KCXdpZHRoOjM1MHB4Ow0KCWhlaWdodDoxNTBweDsNCglvdmVyZmxvdzpzY3JvbGw7DQoJYm9yZGVyOiBtZWRpdW0gaW5zZXQgIzMzMzsNCgliYWNrZ3JvdW5kLWNvbG9yOiNDQ0M7DQoJcGFkZGluZzoxMHB4Ow0KCWxpbmUtaGVpZ2h0OjIwcHg7DQp9DQoNCg0KDQovKiBzdHlsZSB0aGUgdHJpZ2dlciBlbGVtZW50cyAqLw0KI2RlbW8gaW1nIHsNCglib3JkZXI6MDsNCgljdXJzb3I6cG9pbnRlcjsNCgltYXJnaW46MCA4cHg7DQp9DQppbWcuc3lzdGVtaWNvbnsgY3Vyc29yOnBvaW50ZXI7fQ0KLnByb2dyZXNzIHtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NDUlO2xlZnQ6NTAlOyB6LWluZGV4Ojk5OTc7fQ0KDQojcGFnZV90YWJzIGRpdnsNCgliYWNrZ3JvdW5kOnRyYW5zcGFyZW50IG5vbmU7DQoJYm9yZGVyOiBub25lOw0KCW1hcmdpbjowcHg7DQoJcGFkZGluZzowcHg7DQoJZmxvYXQ6bm9uZTsNCgljdXJzb3I6ZGVmYXVsdDt6LWluZGV4Ojk7fQ0KZGl2LlRhYnBhbmVzIGRpdi5wYW5lLGRpdi5UYWJwYW5lczIgZGl2LnBhbmUgew0KCWRpc3BsYXk6bm9uZTsJCQ0KCXBhZGRpbmc6MTVweCAxMHB4Ow0KCWJvcmRlcjoxcHggc29saWQgIzk5OTsNCglib3JkZXItdG9wOjA7DQoJZm9udC1zaXplOjEycHg7DQoJYmFja2dyb3VuZC1jb2xvcjojZmZmOw0KfQ0KDQovKiByb290IGVsZW1lbnQgZm9yIHRhYnMgICovDQp1bC50YWJlcnMsdWwudGFiZXJzMiB7IA0KCWxpc3Qtc3R5bGU6bm9uZTsgDQoJbWFyZ2luOjAgIWltcG9ydGFudDsgDQoJcGFkZGluZzowOw0KCWhlaWdodDozMHB4Ow0KCWJvcmRlci1ib3R0b206MXB4IHNvbGlkICM2NjY7CQ0KfQ0KDQovKiBzaW5nbGUgdGFiICovDQp1bC50YWJlcnMgbGksdWwudGFiZXJzMiBsaSB7IA0KCWZsb2F0OmxlZnQ7CSANCgl0ZXh0LWluZGVudDowOw0KCXBhZGRpbmc6MDsNCgltYXJnaW46MCAhaW1wb3J0YW50Ow0KCWxpc3Qtc3R5bGUtaW1hZ2U6bm9uZSAhaW1wb3J0YW50OyANCn0NCg0KLyogbGluayBpbnNpZGUgdGhlIHRhYi4gdXNlcyBhIGJhY2tncm91bmQgaW1hZ2UgKi8NCnVsLnRhYmVycyBhLHVsLnRhYmVyczIgYSB7IA0KCWJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvYmx1ZS5wbmcpIG5vLXJlcGVhdCAtNDIwcHggMDsNCglmb250LXNpemU6MTFweDsNCglkaXNwbGF5OmJsb2NrOw0KCWhlaWdodDogMzBweDsgIA0KCWxpbmUtaGVpZ2h0OjMwcHg7DQoJd2lkdGg6IDEzNHB4Ow0KCXRleHQtYWxpZ246Y2VudGVyOwkNCgl0ZXh0LWRlY29yYXRpb246bm9uZTsNCgljb2xvcjojMDAwOw0KCXBhZGRpbmc6MHB4Ow0KCW1hcmdpbjowcHg7CQ0KCXBvc2l0aW9uOnJlbGF0aXZlOw0KCXRvcDoxcHg7DQp9DQoNCnVsLnRhYmVycyBhOmFjdGl2ZSx1bC50YWJlcnMyIGE6YWN0aXZlIHsNCglvdXRsaW5lOm5vbmU7CQkNCn0NCg0KLyogd2hlbiBtb3VzZSBlbnRlcnMgdGhlIHRhYiBtb3ZlIHRoZSBiYWNrZ3JvdW5kIGltYWdlICovDQp1bC50YWJlcnMgYTpob3Zlcix1bC50YWJlcnMyIGE6aG92ZXIgew0KCWJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvYmx1ZS5wbmcpIG5vLXJlcGVhdCAtNDIwcHggIC0zMXB4OzsNCgljb2xvcjojZmZmOwkNCn0NCg0KLyogYWN0aXZlIHRhYiB1c2VzIGEgY2xhc3MgbmFtZSAiY3VycmVudCIuIGl0J3MgaGlnaGxpZ2h0IGlzIGFsc28gZG9uZSBieSBtb3ZpbmcgdGhlIGJhY2tncm91bmQgaW1hZ2UuICovDQp1bC50YWJlcnMgYS5jdXJyZW50LCB1bC50YWJlcnMgYS5jdXJyZW50OmhvdmVyLCB1bC50YWJlcnMgbGkuY3VycmVudCBhICwgIHVsLnRhYmVyczIgYS5jdXJyZW50LCB1bC50YWJlcnMyIGEuY3VycmVudDpob3ZlciwgdWwudGFiZXJzMiBsaS5jdXJyZW50IGEgew0KCWJhY2tncm91bmQtcG9zaXRpb246IC00MjBweCAtNjJweDsJCQ0KCWN1cnNvcjpkZWZhdWx0ICFpbXBvcnRhbnQ7IA0KCWNvbG9yOiMwMDAgIWltcG9ydGFudDsNCn0NCg0KLyogRGlmZmVyZW50IHdpZHRocyBmb3IgdGFiczogdXNlIGEgY2xhc3MgbmFtZTogdzEsIHcyLCB3MyBvciB3MiAqLw0KDQoNCi8qIHdpZHRoIDEgKi8NCnVsLnRhYmVycyBhLncxIAkJCXsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTUxOXB4IDA7IHdpZHRoOjEzNHB4OyB9DQp1bC50YWJlcnMgYS53MTpob3ZlciAJeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNTE5cHggLTMxcHg7IH0NCnVsLnRhYmVycyBhLncxLmN1cnJlbnQgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNTE5cHggLTYycHg7IH0NCg0KLyogd2lkdGggMiAqLw0KdWwudGFiZXJzIGEudzIgCQkJeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzY2cHggLTBweDsgd2lkdGg6MTU0cHg7IH0NCnVsLnRhYmVycyBhLncyOmhvdmVyIAl7IGJhY2tncm91bmQtcG9zaXRpb246IC0zNjZweCAtMzFweDsgfQ0KdWwudGFiZXJzIGEudzIuY3VycmVudCB7IGJhY2tncm91bmQtcG9zaXRpb246IC0zNjZweCAtNjJweDsgfQ0KDQoNCi8qIHdpZHRoIDMgKi8NCnVsLnRhYmVycyBhLnczIAkJCXsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE5M3B4IC0wcHg7IHdpZHRoOjE3NHB4OyB9DQp1bC50YWJlcnMgYS53Mzpob3ZlciAJeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTkzcHggLTMxcHg7IH0NCnVsLnRhYmVycyBhLnczLmN1cnJlbnQgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTkzcHggLTYycHg7IH0NCg0KLyogd2lkdGggNCAqLw0KdWwudGFiZXJzIGEudzQgCQkJeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMHB4IC0wcHg7IHdpZHRoOjE5NHB4OyB9DQp1bC50YWJlcnMgYS53NDpob3ZlciAJeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMHB4IC0zMXB4OyB9DQp1bC50YWJlcnMgYS53NC5jdXJyZW50IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTBweCAtNjJweDsgfQ0KDQoNCi8qIGluaXRpYWxseSBhbGwgcGFuZXMgYXJlIGhpZGRlbiAqLyANCmRpdi5UYWJwYW5lcyBkaXYucGFuZSB7DQoJZGlzcGxheTpub25lOwkNCglwb3NpdGlvbjpyZWxhdGl2ZTsJDQp9DQpkaXYuVGFicGFuZXMyIGRpdi5wYW5lIHsNCglkaXNwbGF5Om5vbmU7CQ0KCXBvc2l0aW9uOnJlbGF0aXZlOwkNCn0NCg0KDQoNCg0KDQoNCi5jb250ZW50e2Rpc3BsYXk6bm9uZTt9DQoNCg0KDQoNCg0KDQoNCiNwYWdlX3RhYnMgI1BQQk17DQoJYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzMzMzsNCglib3JkZXItYm90dG9tOiAxcHggc29saWQgIzMzMzsNCglib3JkZXItbGVmdDogMXB4IHNvbGlkICMzMzM7DQoJd2lkdGg6MTAwJTsNCn0NCiNwYWdlX3RhYnMgZGl2LnBhbmV7DQoJd2lkdGg6MTAwJTsNCnBhZGRpbmctdG9wOjEwcHg7DQp0ZXh0LWFsaWduOmxlZnQ7DQoJfQ0KI3BhZ2VfdGFic3sgbWFyZ2luOjBweDsgcGFkZGluZzowcHg7fQ0KDQpkaXYucGFnZWNvbnRhaW5lciAucGFnZXRleHQgeyB0ZXh0LWFsaWduOmxlZnQ7fQ0KDQojcGFnZV90YWJzIGRpdi5UcmFuc2xhdGV7DQoJdGV4dC1hbGlnbjpsZWZ0Ow0KY29sb3I6IzM4NDY1NDsNCmZvbnQtd2VpZ2h0OmJvbGQ7DQptYXJnaW46MWVtIDAgMC4yZW0gMjAlOw0KcGFkZGluZzowOw0Kd2lkdGg6YXV0bzsJDQp9DQoNCmRpdi5UcmFuc2xhdGUgKnsNCgltYXJnaW46MHB4OyBwYWRkaW5nOjBweDsNCn0NCi8qI2VkaXRhcmVhMCwjU0lBLCNmcmFtZV9lZGl0YXJlYTB7ICBoZWlnaHQ6ODAwcHg7DQogIHdpZHRoOjQwMHB4Ow0KICBtaW4td2lkdGg6IDkwJTsNCiAgbWF4LXdpZHRoOiA5MCU7DQp9Ki8NCg0KDQoNCiNTSUF7ICBoZWlnaHQ6ODAwcHg7DQogIHdpZHRoOjQwMHB4Ow0KICBtaW4td2lkdGg6IDEwMCU7DQogIG1heC13aWR0aDogMTAwJTsNCn0NCg0KDQojdG9vbEJhci10e2JhY2tncm91bmQ6dXJsKCIuLi9pbWFnZXMvdG9vbF9iYXItYmsucG5nIikgcmVwZWF0LXggc2Nyb2xsIGxlZnQgdG9wIHRyYW5zcGFyZW50Ow0KaGVpZ2h0OjI2cHg7DQpwb3NpdGlvbjphYnNvbHV0ZTsNCnJpZ2h0OjA7DQp0b3A6NTJweDsNCndpZHRoOjEwMCU7DQp6LWluZGV4Ojk7DQp0ZXh0LWFsaWduOmNlbnRlcjsNCn0NCiNvcEJhcnsNCmRpc3BsYXk6aW5saW5lOw0KZmxvYXQ6bGVmdDsNCi8qZm9udC1mYW1pbHk6IkNvbWZvcnRhYUJvbGQiOyovDQpmb250LXNpemU6MTJweDsNCmhlaWdodDoyNnB4Ow0KcGFkZGluZy1sZWZ0OjE1cHg7DQpwYWRkaW5nLXRvcDo1cHg7DQpjdXJzb3I6cG9pbnRlcjsNCn0NCiNtaWRCYXJ7ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC1zaXplOjEycHg7Lypmb250LWZhbWlseToiQ29tZm9ydGFhQm9sZCI7Ki9oZWlnaHQ6MjZweDtjdXJzb3I6cG9pbnRlcjtwYWRkaW5nLXRvcDo1cHg7fQ0KI2dvdG9Cb3h7ZmxvYXQ6cmlnaHQ7cGFkZGluZy1yaWdodDoxNXB4O2ZvbnQtc2l6ZToxNnB4Oy8qZm9udC1mYW1pbHk6IkNvbWZvcnRhYUJvbGQiOyovfQ0KI2dvdG9Cb3ggaW5wdXR7Zm9udC1zaXplOjE2cHg7DQpsaW5lLWhlaWdodDoxNnB4Ow0KbWFyZ2luLXRvcDoycHg7DQpwYWRkaW5nOjAgNXB4Ow0KdGV4dC1hbGlnbjpyaWdodDsNCndpZHRoOjMycHg7Lypmb250LWZhbWlseToiQ29tZm9ydGFhQm9sZCI7Ki99DQoNCi5yZXBvcnRBcmVhew0KYmFja2dyb3VuZC1jb2xvcjojRkZGRkZGOw0KaGVpZ2h0Ojk4JTsNCm92ZXJmbG93OnNjcm9sbDsNCnBhZGRpbmc6NXB4Ow0KfQ0KI3Rvb2xCYXItYntiYWNrZ3JvdW5kOnVybCgiLi4vaW1hZ2VzL3Rvb2xfYmFyLWJrLnBuZyIpIHJlcGVhdC14IHNjcm9sbCBsZWZ0IHRvcCB0cmFuc3BhcmVudDsNCmhlaWdodDoyNnB4Ow0KcG9zaXRpb246YWJzb2x1dGU7DQpyaWdodDowOw0KYm90dG9tOjA7DQp3aWR0aDoxMDAlOw0Kei1pbmRleDo5Ow0KfQ0KI3Rvb2xCYXItYiAuaW5uZXJ7cGFkZGluZzo1cHggNXB4IDA7DQp9DQovKiNKQl9udW1hcmVhIHVsLCNKQl9udW1hcmVhIHVsIGxpew0KCWJvcmRlci1ib3R0b206MXB4IHNvbGlkICNkZWU0ZWI7DQpmb250LWZhbWlseToiQ29tZm9ydGFhQm9sZCI7Zm9udC1zaXplOjEzcHg7DQpsaW5lLWhlaWdodDoyMHB4Ow0KbGlzdC1zdHlsZTpub25lIG91dHNpZGUgbm9uZTsNCm1hcmdpbjowOw0KdGV4dC1hbGlnbjpyaWdodDsNCnBhZGRpbmc6MDsNCmNvbG9yOiMzZTNlM2U7DQp9DQojSkJfbnVtYXJlYSB1bCBsaXtwYWRkaW5nLWxlZnQ6MzBweDt9Ki8NCg0KDQoNCiNDTV9saW5lTnVtYmVycyAud2FybnsNCgliYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL3dhcm5BcnJvdy5wbmcpOw0KCWJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7DQoJYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCBjZW50ZXI7DQoJYmFja2dyb3VuZC1jb2xvcjojZTVlNGFkOw0KCWZvbnQtd2VpZ2h0OmJvbGQ7DQp9DQojQ01fbGluZU51bWJlcnMgLmVycm9yew0KCWJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvZXJyb3JBcnJvdy5wbmcpOw0KCWJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7DQoJYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCBjZW50ZXI7DQoJYmFja2dyb3VuZC1jb2xvcjojZTViZWFkOw0KCWZvbnQtd2VpZ2h0OmJvbGQ7DQp9DQoNCg0KDQojTk9URVN7ZGlzcGxheTpub25lOw0KfQ0KDQoNCmRpdi5wYWdlbWNvbnRhaW5lciB7DQoJYmFja2dyb3VuZDojRDZFNEM1IG5vbmUgcmVwZWF0IHNjcm9sbCAwIDA7DQoJYm9yZGVyOjFweCBzb2xpZCAjQkREM0EzOw0KCWhlaWdodDo1MHB4Ow0KCW1hcmdpbjoxMHB4Ow0KCXBhZGRpbmc6MTBweDsNCglwb3NpdGlvbjphYnNvbHV0ZTsNCglyaWdodDotMjBweDsNCgl0b3A6MjBweDsNCgl3aWR0aDoyNSU7DQoJei1pbmRleDo5OTk5Ow0KfQ0KI05PVEVhY2NvcmRpb24sI1dhcm5hY2NvcmRpb24sI0Vycm9yYWNjb3JkaW9uewkNCgkvKiBmb3IgSUUgKi8NCglmaWx0ZXI6YWxwaGEob3BhY2l0eT04MCk7DQoJLyogQ1NTMyBzdGFuZGFyZCAqLw0KCW9wYWNpdHk6MC44Ow0KCQ0KICAtbW96LWJvcmRlci1yYWRpdXM6IDlweDsNCiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA5cHg7DQogIGJvcmRlci1yYWRpdXM6IDlweDsNCg0KfQ0KDQojRXJyb3JhY2NvcmRpb257DQoJcG9zaXRpb246cmVsYXRpdmU7DQoJcGFkZGluZy10b3A6MzBweDsNCglib3JkZXI6MXB4IHNvbGlkICM5MDA7DQoJbWFyZ2luOjVweDsNCgliYWNrZ3JvdW5kOiNGMzAgdXJsKC4uL2ltYWdlcy9hY29yLnBuZykgcmVwZWF0LXggc2Nyb2xsIHRvcCBsZWZ0Ow0KfQ0KI1dhcm5hY2NvcmRpb257DQoJcG9zaXRpb246cmVsYXRpdmU7DQoJcGFkZGluZy10b3A6MzBweDsNCglib3JkZXI6MXB4IHNvbGlkICNGOTA7DQoJbWFyZ2luOjVweDsNCgliYWNrZ3JvdW5kOiNGOTAgdXJsKC4uL2ltYWdlcy9hY29yLnBuZykgcmVwZWF0LXggc2Nyb2xsIHRvcCBsZWZ0Ow0KCX0NCiNOT1RFYWNjb3JkaW9uew0KCXBvc2l0aW9uOnJlbGF0aXZlOw0KCXBhZGRpbmctdG9wOjMwcHg7DQoJYm9yZGVyOjFweCBzb2xpZCAjNjlDOw0KCW1hcmdpbjo1cHg7DQoJYmFja2dyb3VuZDojM0M5OUY3IHVybCguLi9pbWFnZXMvYWNvci5wbmcpIHJlcGVhdC14IHNjcm9sbCB0b3AgbGVmdDsNCgl9CQ0KI05PVEVhY2NvcmRpb246aG92ZXIsI1dhcm5hY2NvcmRpb246aG92ZXIsI0Vycm9yYWNjb3JkaW9uOmhvdmVyewkNCgkvKiBmb3IgSUUgKi8NCglmaWx0ZXI6YWxwaGEob3BhY2l0eT0xMDApOw0KCS8qIENTUzMgc3RhbmRhcmQgKi8NCglvcGFjaXR5OjEuMDsNCn0JDQojTk9URWFjY29yZGlvbiBoMSwjV2FybmFjY29yZGlvbiBoMSwjRXJyb3JhY2NvcmRpb24gaDF7DQoNCmxlZnQ6MDsNCnBvc2l0aW9uOmFic29sdXRlOw0KdG9wOjBweDsNCndpZHRoOjEwMCU7DQp6LWluZGV4Ojk5OTsNCmN1cnNvcjpwb2ludGVyOw0KbWFyZ2luOjBweDsNCgl9CQ0KDQojUFBCTSBoMSwjUFBCTSBoMiwjUFBCTSBoM3ttYXJnaW46MHB4O30JDQojTk9URWFjY29yZGlvbiBoMS50b2dhbCwjV2FybmFjY29yZGlvbiBoMS50b2dhbCwjRXJyb3JhY2NvcmRpb24gaDEudG9nYWx7DQoNCnJpZ2h0OjA7DQpwb3NpdGlvbjphYnNvbHV0ZTsNCnRvcDowcHg7DQp3aWR0aDoxMDAlOw0Kei1pbmRleDo5OTk7DQoJfQ0KCQ0KCQ0KI05PVEVhY2NvcmRpb24gaDEuY3VycmVudCwjV2FybmFjY29yZGlvbiBoMS5jdXJyZW50LCNFcnJvcmFjY29yZGlvbiBoMS5jdXJyZW50ew0Kei1pbmRleDo5Ow0KCX0JDQoNCgkNCiNOT1RFYWNjb3JkaW9uIGgxLnRvZ2FsLmN1cnJlbnQsI1dhcm5hY2NvcmRpb24gaDEudG9nYWwuY3VycmVudCwjRXJyb3JhY2NvcmRpb24gaDEudG9nYWwuY3VycmVudHsNCnotaW5kZXg6OTsNCgl9DQoJDQojTk9URWFjY29yZGlvbiBoMSBzcGFuLCNXYXJuYWNjb3JkaW9uIGgxIHNwYW4sI0Vycm9yYWNjb3JkaW9uIGgxIHNwYW57DQoNCn0NCiNOT1RFYWNjb3JkaW9uICBoMTpob3ZlciBzcGFuLCNXYXJuYWNjb3JkaW9uICBoMTpob3ZlciBzcGFuLCNFcnJvcmFjY29yZGlvbiAgaDE6aG92ZXIgc3BhbiwjV2FybmFjY29yZGlvbiAgaDE6aG92ZXIgLCNOT1RFYWNjb3JkaW9uICBoMTpob3ZlciAsI0Vycm9yYWNjb3JkaW9uICBoMTpob3ZlciB7CQ0KCWNvbG9yOiMzMzM7DQp9DQojV2FybmFjY29yZGlvbjpob3ZlciwjRXJyb3JhY2NvcmRpb246aG92ZXJ7CQ0KDQp9DQouRXJyb3J7DQoJCSAgLW1vei1ib3JkZXItcmFkaXVzOiAwIDAgOHB4IDhweDsNCiAgLXdlYmtpdC1ib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiA4cHg7DQogIC13ZWJraXQtYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDhweDsNCiAgYm9yZGVyLXJhZGl1czogMCAwIDhweCA4cHg7DQoJY29sb3I6ICMzMzM7DQoJYmFja2dyb3VuZDogI0Y5OTsNCglwYWRkaW5nOiA1cHg7DQoJYm9yZGVyOiAxcHggc29saWQgIzkwMDsNCglvdmVyZmxvdy14OmhpZGRlbjsNCglvdmVyZmxvdy15OmF1dG87DQoJaGVpZ2h0OmF1dG8gIWltcG9ydGFudDsgLyogcmVhbCBicm93c2VycyAqLw0KCWhlaWdodDoxNTBweDsgLyogSUU2OiB0cmVhZGVkIGFzIG1pbi1oZWlnaHQgKi8NCgltaW4taGVpZ2h0OjE1MHB4OyAvKiByZWFsIGJyb3dzZXJzICovDQoJbWF4LWhlaWdodDoyNTBweDsgLyogcmVhbCBicm93c2VycyAqLw0KCWRpc3BsYXk6bm9uZTsNCg0KDQp9DQoNCi5XYXJuew0KCQkgIC1tb3otYm9yZGVyLXJhZGl1czogMCAwIDhweCA4cHg7DQogIC13ZWJraXQtYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogOHB4Ow0KICAtd2Via2l0LWJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA4cHg7DQogIGJvcmRlci1yYWRpdXM6IDAgMCA4cHggOHB4Ow0KCWNvbG9yOiAjMzMzOw0KCWJhY2tncm91bmQ6ICNGRjk7DQoJcGFkZGluZzogNXB4Ow0KCWhlaWdodDphdXRvICFpbXBvcnRhbnQ7IC8qIHJlYWwgYnJvd3NlcnMgKi8NCgloZWlnaHQ6MTUwcHg7IC8qIElFNjogdHJlYWRlZCBhcyBtaW4taGVpZ2h0ICovDQoJbWluLWhlaWdodDoxNTBweDsgLyogcmVhbCBicm93c2VycyAqLw0KCW1heC1oZWlnaHQ6MjUwcHg7IC8qIHJlYWwgYnJvd3NlcnMgKi8NCglib3JkZXI6IDFweCBzb2xpZCAjRjkwOw0KCW92ZXJmbG93LXg6aGlkZGVuOw0KCW92ZXJmbG93LXk6YXV0bzsNCglkaXNwbGF5Om5vbmU7DQoNCg0KfQ0KLk5PVEV7DQoJCSAgLW1vei1ib3JkZXItcmFkaXVzOiAwIDAgOHB4IDhweDsNCiAgLXdlYmtpdC1ib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiA4cHg7DQogIC13ZWJraXQtYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDhweDsNCiAgYm9yZGVyLXJhZGl1czogMCAwIDhweCA4cHg7DQoJY29sb3I6ICMzMzM7DQoJYmFja2dyb3VuZDogIzZDRjsNCglwYWRkaW5nOiA1cHg7DQoJaGVpZ2h0OmF1dG8gIWltcG9ydGFudDsgLyogcmVhbCBicm93c2VycyAqLw0KCWhlaWdodDoxNTBweDsgLyogSUU2OiB0cmVhZGVkIGFzIG1pbi1oZWlnaHQgKi8NCgltaW4taGVpZ2h0OjE1MHB4OyAvKiByZWFsIGJyb3dzZXJzICovDQoJbWF4LWhlaWdodDoyNTBweDsgLyogcmVhbCBicm93c2VycyAqLw0KCWJvcmRlcjogMXB4IHNvbGlkICM2OUM7DQoJb3ZlcmZsb3cteDpoaWRkZW47DQoJb3ZlcmZsb3cteTphdXRvOw0KCWRpc3BsYXk6bm9uZTsNCg0KDQp9DQouRXJyb3IgaDN7Y29sb3I6ICM5MDA7bWFyZ2luLWJvdHRvbTowcHg7fQ0KLldhcm4gaDN7Y29sb3I6ICNGOTA7bWFyZ2luLWJvdHRvbTowcHg7fQ0KLk5PVEUgaDN7Y29sb3I6ICNGOTA7bWFyZ2luLWJvdHRvbTowcHg7fQ0KLk5PVEUuY2xvc2VyLC5XYXJuLmNsb3NlciwgLkVycm9yLmNsb3NlcnsNCgliYWNrZ3JvdW5kOnRyYW5zcGFyZW50IG5vbmU7DQoJYm9yZGVyOiBub25lOw0KCW1hcmdpbjowcHg7DQoJcGFkZGluZzowcHg7DQoJb3ZlcmZsb3c6aGlkZGVuOw0KCWhlaWdodDowcHggIWltcG9ydGFudDsNCgltaW4taGVpZ2h0OjBweDsgLyogcmVhbCBicm93c2VycyAqLw0KCW1heC1oZWlnaHQ6MHB4OyAvKiByZWFsIGJyb3dzZXJzICovDQoJd2lkdGg6MHB4ICFpbXBvcnRhbnQ7fQ0Kc3Bhbi5DbG9zZXtkaXNwbGF5OmJsb2NrOyBmbG9hdDpyaWdodH0NCnNwYW4uT3BlbntkaXNwbGF5Om5vbmU7ZmxvYXQ6cmlnaHR9DQouY3VycmVudCBzcGFuLkNsb3Nle2Rpc3BsYXk6bm9uZTt9DQouY3VycmVudCBzcGFuLk9wZW57ZGlzcGxheTpibG9jazt9DQoNCg0KDQoNCg0KDQouY2FjaGVUYWJsZXsNCgliYWNrZ3JvdW5kOiAjRTRFNEU0Ow0KCWJvcmRlcjogdGhpbiBzb2xpZCAjNjY2Ow0KCXdpZHRoOjEwMCU7DQp9DQouY2FjaGVUYWJsZSB0aHsNCgliYWNrZ3JvdW5kOiAjMzMzOw0KCWJvcmRlcjogdGhpbiBzb2xpZCAjRTRFNEU0Ow0KCWZvbnQtd2VpZ2h0OmJvbGQ7DQoJY29sb3I6I0U0RTRFNDsNCn0NCg0KLmNhY2hlVGFibGUgdGR7DQoJYm9yZGVyOiB0aGluIHNvbGlkICM2NjY7DQoJcGFkZGluZzozcHg7DQp9DQoNCg0KI0Vycm9yQXJlYXsgcG9zaXRpb246cmVsYXRpdmU7fQ0KI0FqYXhNZXNzYWdlew0KCXBvc2l0aW9uOmZpeGVkOw0KCXJpZ2h0OjBweDsNCgl0b3A6NTAlOw0KCWhlaWdodDo3NXB4Ow0KCS8qd2lkdGg6MzAwcHg7Ki8NCgliYWNrZ3JvdW5kLWNvbG9yOiNGQzY7DQoJbWFyZ2luLXRvcDotMzdweDsNCgl6LWluZGV4Ojk5OTk7DQoJZm9udC1zaXplOjE5cHg7DQoJY29sb3I6IzMzMzsNCgktbW96LWJvcmRlci1yYWRpdXM6ICA4cHggMHB4IDBweCA4cHggOw0KCS13ZWJraXQtYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogOHB4Ow0KCS13ZWJraXQtYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogOHB4Ow0KfQ0KI0FqYXhNZXNzYWdlIGgyew0KLyoJcG9zaXRpb246YWJzb2x1dGU7DQoJbGVmdDoxNXB4Ow0KCXRvcDo1MCU7Ki8NCglwYWRkaW5nLXRvcDo2cHg7DQoJcGFkZGluZy1yaWdodDoxNXB4Ow0KCXBhZGRpbmctbGVmdDoxMzBweDsNCn0NCg0KI0FqYXhNZXNzYWdlICNBSkFYbG9nbyB7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTttYXJnaW4tdG9wOi00OHB4O2xlZnQ6MHB4OyB6LWluZGV4Ojk5OTc7fQ0KI0FqYXhNZXNzYWdlIC5wcm9ncmVzcyB7cG9zaXRpb246YWJzb2x1dGU7dG9wOjQ1JTtsZWZ0Ojk4cHg7ei1pbmRleDo5OTk3O30NCiNBamF4T3ZlckxheXsNCnBvc2l0aW9uOmFic29sdXRlOyB0b3A6MDsgbGVmdDowOyB6LWluZGV4Ojk5OTg7DQpwb3NpdGlvbjpmaXhlZDsgd2lkdGg6MTAwJTsgaGVpZ2h0OjEwMCU7DQpiYWNrZ3JvdW5kOiMzNkY7DQoJLyogZm9yIElFICovDQoJZmlsdGVyOmFscGhhKG9wYWNpdHk9ODApOw0KCS8qIENTUzMgc3RhbmRhcmQgKi8NCglvcGFjaXR5OjAuODsNCn0NCg0KDQoNCg0KDQojdmVyc2lvblBsYW5le2NsZWFyOmxlZnQ7Ym9yZGVyOjFweCBzb2xpZCAjOTk5OTk5O2JhY2tncm91bmQtY29sb3I6I0YwRjBGNjt9DQojY1NjcmlwdFBsYW5lew0KCWJhY2tncm91bmQ6bm9uZTsNCgliYWNrZ3JvdW5kLWNvbG9yOiNmZmY7DQpmbG9hdDpyaWdodDsNCndpZHRoOjQ5LjUlOw0KaGVpZ2h0OjI1MHB4Ow0KY29sb3I6IzNEM0QzRDsNCn0NCg0KI3ZlcnNpb25QbGFuZSAjVFMxe21hcmdpbjowcHg7d2lkdGg6NTAlO2Zsb2F0OmxlZnQ7fQ0KI3BhZ2Vye2NsZWFyOmJvdGg7IGJhY2tncm91bmQtY29sb3I6IzY2NjsgdGV4dC1hbGlnbjpsZWZ0O2JvcmRlcjoxcHggc29saWQgIzk5OTk5OTtwYWRkaW5nOjNweDt9DQoNCiNjU2NyaXB0UGxhbmVJTkZPe2Rpc3BsYXk6bm9uZTtiYWNrZ3JvdW5kLWNvbG9yOiM5OTk7IHRleHQtYWxpZ246bGVmdDtib3JkZXI6MXB4IHNvbGlkICNjY2M7cGFkZGluZzozcHg7fQ0KdHIuY3VycmVudHt9DQoNCiN2ZXJzaW9uUGxhbmUgdHIgdGQgew0KCWN1cnNvcjpwb2ludGVyOw0KfQ0KI3ZlcnNpb25QbGFuZSB0cjpob3ZlciB0ZCB7DQpiYWNrZ3JvdW5kLWNvbG9yOiNGRjk7DQpjb2xvcjojM0QzRDNEOw0KfQ0KI3ZlcnNpb25QbGFuZSB0ci5jdXJyZW50IHRkIHsNCmJhY2tncm91bmQtY29sb3I6I0ZDNjsNCmNvbG9yOiMzRDNEM0Q7DQp9DQoNCiNjU2NyaXB0UGxhbmUucHJvY2Vzc2luZ3sNCgljb2xvcjojQkVCRUJFOw0KCWJhY2tncm91bmQ6dXJsKCcuLi8uLi8uLi9tb2R1bGVzL1NjcmlwdERlcGxveS9pbWFnZXMvbG9hZGluZy5naWYnKSBuby1yZXBlYXQgc2Nyb2xsIGNlbnRlciBjZW50ZXIgI0U1RTVFNTsNCgl9DQojRXhpdHsNCgliYWNrZ3JvdW5kLWNvbG9yOiMzMzMzMzM7DQpib3JkZXI6MXB4IHNvbGlkICNDQ0NDQ0M7DQpjb2xvcjojQ0NDQ0NDOw0KZm9udC1zaXplOjE3cHg7DQpmb250LXdlaWdodDpib2xkOw0KcGFkZGluZzo1cHggMTBweDsNCmZsb2F0OnJpZ2h0Ow0KfQ0KDQojRXhpdDpob3ZlcnsNCgliYWNrZ3JvdW5kLWNvbG9yOiM2NjY7DQp9DQoNCiNTbmFtZXsgY29sb3I6IzAwQztmb250LXNpemU6MS4yNWVtO30NCg0KDQoNCi5lZGl0YmFyew0KYmFja2dyb3VuZC1jb2xvcjojREFGRUUzOw0KYm9yZGVyOjFweCBzb2xpZCAjQTNGRUJCOw0KZm9udC13ZWlnaHQ6Ym9sZDsNCm1hcmdpbjoycHg7DQpwYWRkaW5nOjZweCAzcHggMnB4IDRweDsNCgkJICAtbW96LWJvcmRlci1yYWRpdXM6IDVweCA1cHggNXB4IDVweDsNCiAgLXdlYmtpdC1ib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiA1cHg7DQogIC13ZWJraXQtYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDVweDsNCiAgLXdlYmtpdC1ib3JkZXItdG9wLWxlZnQtcmFkaXVzOiA1cHg7DQogIC13ZWJraXQtYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDVweDsNCn0NCg0KLmVkaXRiYXIgaW1ne21hcmdpbjowcHggM3B4O30NCi5lZGl0YmFyIGEge2ZpbHRlcjphbHBoYShvcGFjaXR5PTgwKTtvcGFjaXR5OjAuODt9IA0KLmVkaXRiYXIgYTpob3ZlciB7ZmlsdGVyOmFscGhhKG9wYWNpdHk9MTAwKTtvcGFjaXR5OjEuMDt9ICANCiAgDQogIA0KLmVkaXRiYXIuSW5FZGl0e2JhY2tncm91bmQtY29sb3I6I2Y2YjljMjtib3JkZXI6MXB4IHNvbGlkICNmNjZiN2Y7fQ0KLkluRWRpdCBoNCBpbWd7cGFkZGluZy1yaWdodDo1cHg7cGFkZGluZy10b3A6M3B4O30NCg0KLmVkaXRiYXIuSW5FZGl0IGltZ3tmaWx0ZXI6YWxwaGEob3BhY2l0eT0zNSk7b3BhY2l0eTowLjM1O30gIA0KICANCi5lZGl0YmFyLkluRWRpdCAuc3RlYWx7ZmlsdGVyOmFscGhhKG9wYWNpdHk9MTAwKTtvcGFjaXR5OjEuMDt9DQoNCg0KLmVkaXRiYXIuSW5FZGl0IGltZ3sNCgktbW96LWJvcmRlci1yYWRpdXM6IDVweCA1cHggNXB4IDVweDsNCgktd2Via2l0LWJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDVweDsNCgktd2Via2l0LWJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA1cHg7DQoJLXdlYmtpdC1ib3JkZXItdG9wLWxlZnQtcmFkaXVzOiA1cHg7DQoJLXdlYmtpdC1ib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogNXB4Ow0KfSAgDQoNCg0KDQoNCnRhYmxlLnRhYmxlc29ydGVyIHRib2R5ICB0ci5ldmVuIHRkLmVycm9ye2JhY2tncm91bmQtY29sb3I6I2Y2YjljMjt9DQp0YWJsZS50YWJsZXNvcnRlciB0Ym9keSAgdHIub2RkIHRkLmVycm9ye2JhY2tncm91bmQtY29sb3I6I2Y0YTNhZTt9DQoNCnRhYmxlLnRhYmxlc29ydGVyIHRib2R5ICB0ci5ldmVuIHRkLm9re2JhY2tncm91bmQtY29sb3I6I0RBRkVFMzt9DQp0YWJsZS50YWJsZXNvcnRlciB0Ym9keSAgdHIub2RkIHRkLm9re2JhY2tncm91bmQtY29sb3I6I2M4ZmVkNjt9DQogIA0KICANCmJvZHkgLnJldmVydFZlcnNpb24gYSB7DQpjb2xvcjojMDM5Ow0KfQ0KDQoNCnRhYmxlLnBhZ2V0YWJsZSB0ZCB7DQpjb2xvcjojMzg0NjU0Ow0KcGFkZGluZy1sZWZ0OjZweDsNCnBhZGRpbmctcmlnaHQ6MnB4Ow0KYm9yZGVyLWJvdHRvbToxcHggc29saWQgIzk5OTk5OTsNCn0NCg0KdHIucm93MS5JbkVkaXQgew0KYmFja2dyb3VuZC1jb2xvcjojZjZkNWRhOw0KfQ0KdHIucm93Mi5JbkVkaXQgew0KYmFja2dyb3VuZC1jb2xvcjojZjZjNWNjOw0KfQ0KdGFibGUucGFnZXRhYmxlIHtib3JkZXI6MXB4IHNvbGlkICMzMzMzMzM7fQ0KDQoNCg0KDQoNCg0KDQoNCg0KI3NjcmlwdE9wdGlvbnN7YmFja2dyb3VuZC1jb2xvcjojZmZmO3BhZGRpbmc6NXB4IDE1cHggMTVweDt9DQojc2NyaXB0TmFtZV9JU3sgY3Vyc29yOnBvaW50ZXI7DQpkaXNwbGF5OmJsb2NrOw0KZm9udC1zaXplOjE4cHg7DQpoZWlnaHQ6MThweDsNCmxpbmUtaGVpZ2h0OjE4cHg7DQpwb3NpdGlvbjphYnNvbHV0ZTsNCnRvcDo4cHg7DQp6LWluZGV4Ojk5O30NCiNzY3JpcHROYW1lX0lTOmhvdmVye2NvbG9yOiM2QzY2NEQ7fQ0KI1NjcmlwdF9ncm91cHN7cG9zaXRpb246YWJzb2x1dGU7dG9wOjM1cHg7ei1pbmRleDo5OTt9DQojU2NyaXB0X2dyb3VwcyBhOmhvdmVyew0KY29sb3I6ICM2QzY2NEQ7DQp9DQojbm90aWNlYmFye3Bvc2l0aW9uOmFic29sdXRlOw0KdG9wOjhweDtyaWdodDo1cHg7ei1pbmRleDo5O30NCiNub3RpY2ViYXIgKntkaXNwbGF5OmlubGluZTt9DQojbm90aWNlYmFyICNOb3RlX3RyaWcsI25vdGljZWJhciAjV190cmlnLCNub3RpY2ViYXIgI0VfdHJpZ3sNCmRpc3BsYXk6aW5saW5lLWJsb2NrOw0KfQ0KI25vdGljZWJhciAjTm90ZV90cmlnOmhvdmVyLCNub3RpY2ViYXIgI1dfdHJpZzpob3Zlciwjbm90aWNlYmFyICNFX3RyaWc6aG92ZXJ7DQpkaXNwbGF5OmlubGluZS1ibG9jazsNCmNvbG9yOiAjNkM2NjREOw0KfQ0KDQovKg0KICAgIENvbG9yQm94IENvcmUgU3R5bGUNCiAgICBUaGUgZm9sbG93aW5nIHJ1bGVzIGFyZSB0aGUgc3R5bGVzIHRoYXQgYXJlIGNvbnNpc3RhbnQgYmV0d2VlbiB0aGVtZXMuDQogICAgQXZvaWQgY2hhbmdpbmcgdGhpcyBhcmVhIHRvIG1haW50YWluIGNvbXBhdGFiaWxpdHkgd2l0aCBmdXR1cmUgdmVyc2lvbnMgb2YgQ29sb3JCb3guDQoqLw0KI2NvbG9yYm94LCAjY2JveE92ZXJsYXksICNjYm94V3JhcHBlcntwb3NpdGlvbjphYnNvbHV0ZTsgdG9wOjA7IGxlZnQ6MDsgei1pbmRleDo5OTk5OyBvdmVyZmxvdzpoaWRkZW47fQ0KLyojY29sb3Jib3h7cG9zaXRpb246Zml4ZWQ7fS0tLXJlbWViZXIgdG8gZGJsIGNoZWNrIC0tKi8NCiNjYm94T3ZlcmxheXtwb3NpdGlvbjpmaXhlZDsgd2lkdGg6MTAwJTsgaGVpZ2h0OjEwMCU7fQ0KI2Nib3hNaWRkbGVMZWZ0LCAjY2JveEJvdHRvbUxlZnR7Y2xlYXI6bGVmdDt9DQojY2JveENvbnRlbnR7cG9zaXRpb246cmVsYXRpdmU7fQ0KI2Nib3hMb2FkZWRDb250ZW50e292ZXJmbG93OmF1dG87fQ0KI2Nib3hMb2FkZWRDb250ZW50IGlmcmFtZXtkaXNwbGF5OmJsb2NrOyB3aWR0aDoxMDAlOyBoZWlnaHQ6MTAwJTsgYm9yZGVyOjA7fQ0KI2Nib3hUaXRsZXttYXJnaW46MDt9DQojY2JveExvYWRpbmdPdmVybGF5LCAjY2JveExvYWRpbmdHcmFwaGlje3Bvc2l0aW9uOmFic29sdXRlOyB0b3A6MDsgbGVmdDowOyB3aWR0aDoxMDAlO30NCiNjYm94UHJldmlvdXMsICNjYm94TmV4dCwgI2Nib3hDbG9zZSwgI2Nib3hTbGlkZXNob3d7Y3Vyc29yOnBvaW50ZXI7fQ0KDQovKiANCiAgICBDb2xvckJveCBleGFtcGxlIHVzZXIgc3R5bGUNCiAgICBUaGUgZm9sbG93aW5nIHJ1bGVzIGFyZSBvcmRlcmVkIGFuZCB0YWJiZWQgaW4gYSB3YXkgdGhhdCByZXByZXNlbnRzIHRoZQ0KICAgIG9yZGVyL25lc3Rpbmcgb2YgdGhlIGdlbmVyYXRlZCBIVE1MLCBzbyB0aGF0IHRoZSBzdHJ1Y3R1cmUgZWFzaWVyIHRvIHVuZGVyc3RhbmQuDQoqLw0KI2Nib3hPdmVybGF5e2JhY2tncm91bmQ6IzE5OWNkZjt9DQoNCiNjb2xvcmJveHt9DQogICAgI2Nib3hDb250ZW50e21hcmdpbi10b3A6MjBweDt9DQogICAgICAgICNjYm94TG9hZGVkQ29udGVudHtiYWNrZ3JvdW5kOiMwMDVhODQ7IHBhZGRpbmc6NXB4O30NCiAgICAgICAgI2Nib3hUaXRsZXtwb3NpdGlvbjphYnNvbHV0ZTsgdG9wOi0yMHB4OyBsZWZ0OjA7IGNvbG9yOiM0ODQ3NDc7fQ0KICAgICAgICAjY2JveEN1cnJlbnR7cG9zaXRpb246YWJzb2x1dGU7IHRvcDotMjBweDsgcmlnaHQ6MHB4OyBjb2xvcjojNDg0NzQ3O30NCiAgICAgICAgI2Nib3hTbGlkZXNob3d7cG9zaXRpb246YWJzb2x1dGU7IHRvcDotMjBweDsgcmlnaHQ6OTBweDsgY29sb3I6IzY2NjY2Njt9DQogICAgICAgICNjYm94UHJldmlvdXN7cG9zaXRpb246YWJzb2x1dGU7IHRvcDo1MCU7IGxlZnQ6NXB4OyBtYXJnaW4tdG9wOi0zMnB4OyBiYWNrZ3JvdW5kOnVybCguLi9pbWFnZXMvY29udHJvbHMucG5nKSB0b3AgbGVmdCBuby1yZXBlYXQ7IHdpZHRoOjI4cHg7IGhlaWdodDo2NXB4OyB0ZXh0LWluZGVudDotOTk5OXB4O30NCiAgICAgICAgI2Nib3hQcmV2aW91cy5ob3ZlcntiYWNrZ3JvdW5kLXBvc2l0aW9uOmJvdHRvbSBsZWZ0O30NCiAgICAgICAgI2Nib3hOZXh0e3Bvc2l0aW9uOmFic29sdXRlOyB0b3A6NTAlOyByaWdodDo1cHg7IG1hcmdpbi10b3A6LTMycHg7IGJhY2tncm91bmQ6dXJsKC4uL2ltYWdlcy9jb250cm9scy5wbmcpIHRvcCByaWdodCBuby1yZXBlYXQ7IHdpZHRoOjI4cHg7IGhlaWdodDo2NXB4OyB0ZXh0LWluZGVudDotOTk5OXB4O30NCiAgICAgICAgI2Nib3hOZXh0LmhvdmVye2JhY2tncm91bmQtcG9zaXRpb246Ym90dG9tIHJpZ2h0O30NCiAgICAgICAgI2Nib3hMb2FkaW5nT3ZlcmxheXtiYWNrZ3JvdW5kOiMwMDVhODQ7fQ0KICAgICAgICAjY2JveExvYWRpbmdHcmFwaGlje2JhY2tncm91bmQ6dXJsKC4uL2ltYWdlcy9sb2FkaW5nLmdpZikgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7fQ0KICAgICAgICAjY2JveENsb3Nle3Bvc2l0aW9uOmFic29sdXRlOyB0b3A6NXB4OyByaWdodDoyNXB4OyBkaXNwbGF5OmJsb2NrOyBiYWNrZ3JvdW5kOnVybCguLi9pbWFnZXMvY29udHJvbHMucG5nKSB0b3AgY2VudGVyIG5vLXJlcGVhdDsgd2lkdGg6MzhweDsgaGVpZ2h0OjE5cHg7IHRleHQtaW5kZW50Oi05OTk5cHg7fQ0KICAgICAgICAjY2JveENsb3NlLmhvdmVye2JhY2tncm91bmQtcG9zaXRpb246Ym90dG9tIGNlbnRlcjt9DQoNCg0KDQoNCg0KDQoNCg0KDQojcG9wdXBOT1RFU3sNCgloZWlnaHQ6YXV0byAhaW1wb3J0YW50OyAvKiByZWFsIGJyb3dzZXJzICovDQoJaGVpZ2h0OjE1MHB4OyAvKiBJRTY6IHRyZWFkZWQgYXMgbWluLWhlaWdodCAqLw0KCW1pbi1oZWlnaHQ6MTUwcHg7IC8qIHJlYWwgYnJvd3NlcnMgKi8NCgltYXgtaGVpZ2h0OjQ1MHB4OyAvKiByZWFsIGJyb3dzZXJzICovDQoJb3ZlcmZsb3c6c2Nyb2xsOw0KCW92ZXJmbG93LXg6aGlkZGVuOw0KCXdpZHRoOjQ4N3B4Ow0KfQ0KDQoNCg0KI3BvcHVwRXJyb3JBcmVheyBiYWNrZ3JvdW5kLWNvbG9yOiNGRkZGRkY7IHBhZGRpbmc6NXB4OwloZWlnaHQ6YXV0byAhaW1wb3J0YW50OyAvKiByZWFsIGJyb3dzZXJzICovDQoJaGVpZ2h0OjE1MHB4OyAvKiBJRTY6IHRyZWFkZWQgYXMgbWluLWhlaWdodCAqLw0KCW1pbi1oZWlnaHQ6MTUwcHg7IC8qIHJlYWwgYnJvd3NlcnMgKi8NCgltYXgtaGVpZ2h0OjQ1MHB4OyAvKiByZWFsIGJyb3dzZXJzICovDQoJb3ZlcmZsb3c6c2Nyb2xsOw0KCW92ZXJmbG93LXg6aGlkZGVuO30NCiNwb3B1cHdhcm5BcmVheyBiYWNrZ3JvdW5kLWNvbG9yOiNGRkZGRkY7IHBhZGRpbmc6NXB4Ow0KCWhlaWdodDphdXRvICFpbXBvcnRhbnQ7IC8qIHJlYWwgYnJvd3NlcnMgKi8NCgloZWlnaHQ6MTUwcHg7IC8qIElFNjogdHJlYWRlZCBhcyBtaW4taGVpZ2h0ICovDQoJbWluLWhlaWdodDoxNTBweDsgLyogcmVhbCBicm93c2VycyAqLw0KCW1heC1oZWlnaHQ6NDUwcHg7IC8qIHJlYWwgYnJvd3NlcnMgKi8NCglvdmVyZmxvdzpzY3JvbGw7DQoJb3ZlcmZsb3cteDpoaWRkZW47fQ0KDQoNCiNNYWluQ29udGVudHtwb3NpdGlvbjpyZWxhdGl2ZTt9DQojc2lkZWJhcntwb3NpdGlvbjphYnNvbHV0ZTsNCnJpZ2h0OjVweDsNCnRvcDoxNjNweDt9DQojc2lkZW5vdGV7cGFkZGluZy1sZWZ0OjM2cHg7fQ0KI3NpZGViYXIgaDF7IGZvbnQtc2l6ZToyNHB4O2NvbG9yOiMzOTNiM2U7IGZvbnQtd2VpZ2h0OmJvbGQ7IHBvc2l0aW9uOnJlbGF0aXZlO30NCiNhc3RlcnsgZm9udC1zaXplOjY1cHg7Y29sb3I6IzM5M2IzZTsgZm9udC13ZWlnaHQ6Ym9sZDsgcG9zaXRpb246YWJzb2x1dGU7IHRvcDotMTVweDsgbGVmdDowcHg7fQ0KDQoNCi5kaWFsb2cgew0KCW1hcmdpbjoyMHB4Ow0KCXBvc2l0aW9uOnJlbGF0aXZlOw0KIC8qIHdpZHRoOjY3JTsNCiBtYXJnaW46MHB4IGF1dG87DQogbWluLXdpZHRoOjIwZW07DQogbWF4LXdpZHRoOjgwMHB4OyBJIG9ubHkgY3V0IHRoZSBsZWZ0IGJhY2tncm91bmQgaW1hZ2VzIG91dCB0byA4MDBweC4gWW91IGNvdWxkIGRvIG11Y2ggbGFyZ2VyLCBldGMuIA0KIGNvbG9yOiNmZmY7Ki8NCn0NCi5kaWFsb2cgYSwuZGlhbG9nIGE6dmlzaXRlZHtjb2xvcjojMzAzMjM0O3RleHQtZGVjb3JhdGlvbjpub25lO30NCi5kaWFsb2cgLmhkIC5jLA0KLmRpYWxvZyAuZnQgLmMgew0KIGZvbnQtc2l6ZToxcHg7IC8qIGVuc3VyZSBtaW5pbXVtIGhlaWdodCAqLw0KIGhlaWdodDoxMXB4Ow0KfQ0KDQouZGlhbG9nIC5mdCAuYyB7DQogaGVpZ2h0OjE0cHg7DQp9DQoNCi5kaWFsb2cgLmhkIHsNCiBiYWNrZ3JvdW5kOnRyYW5zcGFyZW50IHVybCguLi9pbWFnZXMvdGwucG5nKSBuby1yZXBlYXQgMHB4IDBweDsNCiBtYXJnaW4tcmlnaHQ6MTRweDsgLyogc3BhY2UgZm9yIHJpZ2h0IGNvcm5lciAqLw0KfQ0KDQouZGlhbG9nIC5oZCAuYyB7DQogYmFja2dyb3VuZDp0cmFuc3BhcmVudCB1cmwoLi4vaW1hZ2VzL3RyLnBuZykgbm8tcmVwZWF0IHJpZ2h0IDBweDsNCiBtYXJnaW4tcmlnaHQ6LTE0cHg7IC8qIHB1bGwgcmlnaHQgY29ybmVyIGJhY2sgb3ZlciAiZW1wdHkiIHNwYWNlIChmcm9tIGFib3ZlIG1hcmdpbikgKi8NCn0NCg0KLmRpYWxvZyAuYmQgew0KIGJhY2tncm91bmQ6dHJhbnNwYXJlbnQgdXJsKC4uL2ltYWdlcy9tbC5wbmcpIHJlcGVhdC15IDBweCAwcHg7DQogbWFyZ2luLXJpZ2h0OjZweDsNCn0NCg0KLmRpYWxvZyAuYmQgLmMgew0KIGJhY2tncm91bmQ6dHJhbnNwYXJlbnQgdXJsKC4uL2ltYWdlcy9tci5wbmcpIHJlcGVhdC15IHJpZ2h0IDBweDsNCiBtYXJnaW4tcmlnaHQ6LTZweDsNCn0NCg0KLmRpYWxvZyAuYmQgLmMgLnMgew0KIG1hcmdpbjowcHggOHB4IDBweCA0cHg7DQogYmFja2dyb3VuZDojZGRkOGQwIHVybCguLi9pbWFnZXMvbXMuanBnKSByZXBlYXQteCAwcHggMHB4Ow0KIHBhZGRpbmc6MCAxMHB4Ow0KfQ0KDQouZGlhbG9nIC5mdCB7DQogYmFja2dyb3VuZDp0cmFuc3BhcmVudCB1cmwoLi4vaW1hZ2VzL2JsLnBuZykgbm8tcmVwZWF0IDBweCAwcHg7DQogbWFyZ2luLXJpZ2h0OjE0cHg7DQp9DQoNCi5kaWFsb2cgLmZ0IC5jIHsNCiBiYWNrZ3JvdW5kOnRyYW5zcGFyZW50IHVybCguLi9pbWFnZXMvYnIucG5nKSBuby1yZXBlYXQgcmlnaHQgMHB4Ow0KIG1hcmdpbi1yaWdodDotMTRweDsNCn0NCg0KLyogY29udGVudC1zcGVjaWZpYyAqLw0KDQouZGlhbG9nIGgxIHsNCiAvKiBoZWFkZXIgKi8NCiBmb250LXNpemU6MmVtOw0KIG1hcmdpbjowcHg7DQogcGFkZGluZzowcHg7DQogbWFyZ2luLXRvcDotMC42ZW07DQp9DQoNCg0KDQoNCg0KDQojc2NyaXB0Q2hvaWNle2Rpc3BsYXk6aW5saW5lO2xpc3Qtc3R5bGU6bm9uZSBvdXRzaWRlIG5vbmU7fQ0KI3NjcmlwdENob2ljZSBsaXtiYWNrZ3JvdW5kOm5vbmUgcmVwZWF0IHNjcm9sbCAwIDAgI0NDQ0NDQztib3JkZXI6MXB4IHNvbGlkICMzMzMzMzM7Y3Vyc29yOnBvaW50ZXI7ZGlzcGxheTppbmxpbmU7bWFyZ2luOjVweCAycHg7cGFkZGluZzoycHggNXB4O30NCiNzY3JpcHRDaG9pY2UgbGk6aG92ZXJ7YmFja2dyb3VuZDpub25lIHJlcGVhdCBzY3JvbGwgMCAwICMzMzM7Y29sb3I6I0NDQzt9DQoNCg0KI3NjcmlwdENob2ljZSBsaS5hY3RpdmV7Zm9udC1zaXplOjE2cHg7fQ0KDQoNCi8qLS0tLS0tLS0tLS1ncm91cCBzb3J0LS0tLSovDQoNCi5Bc3NQb3RMaXN0ew0KCXdpZHRoOjI1MHB4Ow0KCWhlaWdodDoxNTBweDsNCglvdmVyZmxvdzphdXRvOw0KCWJhY2tncm91bmQtY29sb3I6Izk5OTsNCglib3JkZXI6MnB4IGluc2V0ICMwMDk7DQp9DQoNCi5Bc3NQb3RMaXN0Q09Oew0KaGVpZ3RoOmF1dG87DQp3aWR0aDoyMzNweDsNCmZvbnQtc2l6ZToxNHB4Ow0KfQ0KDQojc29ydGFibGUxLCAjc29ydGFibGUyLCAjc29ydGFibGUzIHsgbGlzdC1zdHlsZS10eXBlOiBub25lOyBtYXJnaW46IDA7IHBhZGRpbmc6IDA7IGZsb2F0OiBsZWZ0Oy8qIG1hcmdpbi1yaWdodDogMTBweDsqLyBiYWNrZ3JvdW5kOiAjZWVlOyAvKnBhZGRpbmc6IDVweDsqLyB3aWR0aDoyMzNweDt9DQojc29ydGFibGUxIGxpLCAjc29ydGFibGUyIGxpLCAjc29ydGFibGUzIGxpIHsgbWFyZ2luOjFweDsgLypwYWRkaW5nOiA1cHg7Ki8gZm9udC1zaXplOjE0cHg7fQ0KI3NvcnRhYmxlMSBsaTpob3ZlciwgI3NvcnRhYmxlMiBsaTpob3ZlciwgI3NvcnRhYmxlMyBsaTpob3ZlciB7IG1hcmdpbjoxcHg7IC8qcGFkZGluZzogNXB4OyovIGZvbnQtc2l6ZToxNHB4O2JhY2tncm91bmQ6ICNDQkQyREE7fQ0KI3NvcnRhYmxlMXsNCgloZWlnaHQ6YXV0byAhaW1wb3J0YW50OyAvKiByZWFsIGJyb3dzZXJzICovDQoJaGVpZ2h0OjE0OHB4OyAvKiBJRTY6IHRyZWFkZWQgYXMgbWluLWhlaWdodCAqLw0KCW1pbi1oZWlnaHQ6MTQ4cHg7IC8qIHJlYWwgYnJvd3NlcnMgKi8NCglvdmVyZmxvdy15OmhpZGRlbjsNCn0NCiNzb3J0YWJsZTEgbGkuaGlkZGVueyB0ZXh0LWluZGVudDotOTk5OWVtOyBwb3NpdGlvbjphYnNvbHV0ZTsgdG9wOi05OTk5ZW07fQ0KDQojaGVhZGVyc3tsaXN0LXN0eWxlOm5vbmUgb3V0c2lkZSBub25lO30NCiNoZWFkZXJzIGxpe2Rpc3BsYXk6aW5saW5lLWJsb2NrO30NCiNyZU9yMXt9DQojcmVPcjJ7fQ0KI3JlT3Ize30NCiNyZU9yNHt9DQojcmVPcjV7fQ0KLnVpLXNvcnRhYmxle2JvcmRlcjoxcHggc29saWQgIzY2NjY2NjtsaXN0LXN0eWxlOm5vbmUgb3V0c2lkZSBub25lO3BhZGRpbmc6MDt9DQoudWktc29ydGFibGUgbGl7cGFkZGluZzoxcHg7aGVpZ2h0OjMzcHg7Y3Vyc29yOm1vdmU7fQ0KLnVpLXNvcnRhYmxlIGxpLnJvdzF7YmFja2dyb3VuZDpub25lIHJlcGVhdCBzY3JvbGwgMCAwICNkN2U2ZjU7fQ0KLnVpLXNvcnRhYmxlIGxpLnJvdzJ7YmFja2dyb3VuZDpub25lIHJlcGVhdCBzY3JvbGwgMCAwICM5Y2M4ZjU7fQ0KLnVpLXNvcnRhYmxlIGxpOmhvdmVye2JvcmRlcjoxcHggZGFzaGVkICNhYjcxMDA7cGFkZGluZzowcHg7YmFja2dyb3VuZDpub25lIHJlcGVhdCBzY3JvbGwgMCAwICNmZmRhOTM7fQ0KLnVpLXNvcnRhYmxlIGxpIHNwYW4sLnVpLXNvcnRhYmxlIGxpIGRpdntkaXNwbGF5OmlubGluZS1ibG9jaztwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4Ojk5OTk7fQ0KLnVpLXNvcnRhYmxlIC5yZW1vdmV7Y3Vyc29yOnBvaW50ZXI7ZmxvYXQ6cmlnaHQ7bWFyZ2luOjNweDtmaWx0ZXI6YWxwaGEob3BhY2l0eT03NSk7b3BhY2l0eTowLjc1O30NCi51aS1zb3J0YWJsZSAucmVtb3ZlOmhvdmVyIHtmaWx0ZXI6YWxwaGEob3BhY2l0eT0xMDApO29wYWNpdHk6MS4wO30NCg0KLnBhZ2V0YWJsZSAudWktc29ydGFibGV7DQoJaGVpZ2h0OmF1dG8gIWltcG9ydGFudDsgLyogcmVhbCBicm93c2VycyAqLw0KCWhlaWdodDozNXB4OyAvKiBJRTY6IHRyZWFkZWQgYXMgbWluLWhlaWdodCAqLw0KCW1pbi1oZWlnaHQ6MzVweDsgLyogcmVhbCBicm93c2VycyAqLw0KCW92ZXJmbG93LXk6aGlkZGVuOw0KfQ0KDQoudWktc3RhdGUtaGlnaGxpZ2h0e2JvcmRlcjoxcHggZGFzaGVkICNmZmRhOTM7cGFkZGluZzowcHg7YmFja2dyb3VuZDpub25lIHJlcGVhdCBzY3JvbGwgMCAwICNmNWNkNTU7fQ0KI3NvcnRhYmxlMSBsaSBpbnB1dHt0ZXh0LWluZGVudDotOTk5OWVtOyBwb3NpdGlvbjphYnNvbHV0ZTsgdG9wOi05OTk5ZW07fQ0KLnVpLXNvcnRhYmxlIGxpIGlucHV0e2Rpc3BsYXk6aW5saW5lLWJsb2NrO30NCi5jb3VudFNpemUsLm5hbWV7Zm9udC1zaXplOjE2cHg7fQ0KLmNvdW50U2l6ZXtmb250LXdlaWdodDpib2xkO30NCi51aS1zb3J0YWJsZSAgLmhhbmRsZXtjdXJzb3I6bW92ZTt9DQoucmVPcjF7ZmxvYXQ6bGVmdDttYXJnaW46N3B4O30NCi5yZU9yMnttYXJnaW46NnB4OyB3aWR0aDo1MCU7fQ0KLnJlT3Ize2Zsb2F0OnJpZ2h0O21hcmdpbjo0cHg7d2lkdGg6ODBweDt9DQoudWktc29ydGFibGUgLnJlT3IzIC5oYW5kbGV7bWFyZ2luOjNweDtmbG9hdDpyaWdodDt9DQoucmVPcjR7ZmxvYXQ6cmlnaHQ7bWFyZ2luOjRweDt9DQoucmVPcjV7ZmxvYXQ6cmlnaHQ7bWFyZ2luOjZweDt3aWR0aDo4MHB4O30NCg0KDQoNCmltZy5zeXN0ZW1pY29ueyBwb3NpdGlvbjpyZWxhdGl2ZTt9DQoNCiNkZW1vdGlwIHsNCglkaXNwbGF5Om5vbmU7DQoJZm9udC1zaXplOjEycHg7DQoJLypoZWlnaHQ6MTY2cHg7Ki8NCgl3aWR0aDoyMjhweDsNCglwYWRkaW5nOjI1cHg7DQoJY29sb3I6I2ZmZjsNCglwb3NpdGlvbjogYWJzb2x1dGU7DQoJei1pbmRleDo5OTk2Ow0KfQ0KI0RJU0NSUHtmb250LXNpemU6MTJweDtjb2xvcjojMmIyYjJiO2Rpc3BsYXk6YmxvY2s7fQ0KI1RUX3RvcHtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50IHVybCguLi9pbWFnZXMvVFRfdG9wLnBuZykgdG9wIGxlZnQgbm8tcmVwZWF0O2hlaWdodDozM3B4O30NCiNUVF9taWR7YmFja2dyb3VuZDp0cmFuc3BhcmVudCB1cmwoLi4vaW1hZ2VzL1RUX21pZC5wbmcpIHRvcCBsZWZ0IHJlcGVhdC15O3BhZGRpbmctbGVmdDo1M3B4O3BhZGRpbmctcmlnaHQ6MTBweDt9DQojVFRfYnRte2JhY2tncm91bmQ6dHJhbnNwYXJlbnQgdXJsKC4uL2ltYWdlcy9UVF9idG0ucG5nKSB0b3AgbGVmdCBuby1yZXBlYXQ7aGVpZ2h0OjE3cHg7fQ0KI0RJU0NSUCBoMSwjRElTQ1JQIGgye2ZvbnQtc2l6ZToxOHB4O2xpbmUtaGVpZ2h0OjE4cHg7Y29sb3I6I0ZGRjt9DQojRElTQ1JQIGgxe21hcmdpbi10b3A6LTE4cHg7ZGlzcGxheTppbmxpbmUtYmxvY2s7fQ0KDQojRElTQ1JQIGgze2ZvbnQtc2l6ZToxMnB4O30NCg0K]]></data>
	</file>
	<file>
	  <filename>/CSS/style.css</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[LyogdGFibGVzICovDQp0YWJsZS50YWJsZXNvcnRlciB7DQoJZm9udC1mYW1pbHk6YXJpYWw7DQoJYmFja2dyb3VuZC1jb2xvcjogI0NEQ0RDRDsNCgltYXJnaW46MTBweCAwcHQgMTVweDsNCglmb250LXNpemU6IDhwdDsNCgl3aWR0aDogMTAwJTsNCgl0ZXh0LWFsaWduOiBsZWZ0Ow0KfQ0KdGFibGUudGFibGVzb3J0ZXIgdGhlYWQgdHIgdGgsIHRhYmxlLnRhYmxlc29ydGVyIHRmb290IHRyIHRoIHsNCgliYWNrZ3JvdW5kLWNvbG9yOiAjZTZFRUVFOw0KCWJvcmRlcjogMXB4IHNvbGlkICNGRkY7DQoJZm9udC1zaXplOiA4cHQ7DQoJcGFkZGluZzogNHB4Ow0KfQ0KdGFibGUudGFibGVzb3J0ZXIgdGhlYWQgdHIgLmhlYWRlciB7DQoJYmFja2dyb3VuZC1pbWFnZTogdXJsKGJnLmdpZik7DQoJYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsNCgliYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgcmlnaHQ7DQoJY3Vyc29yOiBwb2ludGVyOw0KfQ0KdGFibGUudGFibGVzb3J0ZXIgdGJvZHkgdGQgew0KCWNvbG9yOiAjM0QzRDNEOw0KCXBhZGRpbmc6IDRweDsNCgliYWNrZ3JvdW5kLWNvbG9yOiAjRkZGOw0KCXZlcnRpY2FsLWFsaWduOiB0b3A7DQp9DQp0YWJsZS50YWJsZXNvcnRlciB0Ym9keSB0ci5vZGQgdGQgew0KCWJhY2tncm91bmQtY29sb3I6I0YwRjBGNjsNCn0NCnRhYmxlLnRhYmxlc29ydGVyIHRoZWFkIHRyIC5oZWFkZXJTb3J0VXAgew0KCWJhY2tncm91bmQtaW1hZ2U6IHVybChhc2MuZ2lmKTsNCn0NCnRhYmxlLnRhYmxlc29ydGVyIHRoZWFkIHRyIC5oZWFkZXJTb3J0RG93biB7DQoJYmFja2dyb3VuZC1pbWFnZTogdXJsKGRlc2MuZ2lmKTsNCn0NCnRhYmxlLnRhYmxlc29ydGVyIHRoZWFkIHRyIC5oZWFkZXJTb3J0RG93biwgdGFibGUudGFibGVzb3J0ZXIgdGhlYWQgdHIgLmhlYWRlclNvcnRVcCB7DQpiYWNrZ3JvdW5kLWNvbG9yOiAjOGRiZGQ4Ow0KfQ0KDQp0YWJsZS5wYWdldGFibGUgdGgge2hlaWdodDozMHB4O30NCg==]]></data>
	</file>
	<file>
	  <filename>/CSSQuery.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCi8qKg0KICogICAgVGhpcyBwYWNrYWdlIGNvbnRhaW5zIG9uZSBjbGFzcyBmb3IgdXNpbmcgQ2FzY2FkaW5nIFN0eWxlIFNoZWV0DQogKiAgICBzZWxlY3RvcnMgdG8gcmV0cmlldmUgZWxlbWVudHMgZnJvbSBhIERPTURvY3VtZW50IG9iamVjdCBzaW1pbGFybHkNCiAqICAgIHRvIERPTVhQYXRoIGRvZXMgd2l0aCBYUGF0aCBzZWxlY3RvcnMNCiAqICAgIA0KICogICAgUEhQIHZlcnNpb24gNSANCiAqDQogKiAgICBAY2F0ZWdvcnkgICBIVE1MDQogKiAgICBAcGFja2FnZSAgICBDU1NRdWVyeQ0KICogICAgQGF1dGhvciAgICAgU2FtIFNodWxsIDxzYW0uc2h1bGxAamhzcGVjaWFsdHkuY29tPg0KICogICAgQGNvcHlyaWdodCAgQ29weXJpZ2h0IChjKSAyMDA5IFNhbSBTaHVsbCA8c2FtLnNodWxsQGpoc3BlaWNhbHR5LmNvbT4NCiAqICAgIEBsaWNlbnNlICAgIDxodHRwOi8vd3d3Lm9wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL21pdC1saWNlbnNlLmh0bWw+DQogKiAgICBAdmVyc2lvbiAgICAxLjQNCiAqDQogKiAgICBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5DQogKiAgICBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSAiU29mdHdhcmUiKSwgdG8gZGVhbA0KICogICAgaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0cw0KICogICAgdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbA0KICogICAgY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzDQogKiAgICBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOg0KICogICAgDQogKiAgICBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpbg0KICogICAgYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuDQogKiAgICANCiAqICAgIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCAiQVMgSVMiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SDQogKiAgICBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSwNCiAqICAgIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQ0KICogICAgQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUg0KICogICAgTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSwNCiAqICAgIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4NCiAqICAgIFRIRSBTT0ZUV0FSRS4NCiAqDQogKiAgICBDSEFOR0VTOg0KICogICAgICAgIDA2LTA4LTIwMDkgLSBhZGRlZCBub3JtYWxpemUtc3BhY2UgZnVuY3Rpb24gdG8gQ1NTUXVlcnk6OmNsYXNzTmFtZQ0KICogICAgICAgICAgICAgICAgICAgICBhbmQgcmVtb3ZlZCB1bmVjZXNzYXJ5IHNwcmludGYocykgaW4gZmF2b3Igb2YgIiBzdHJpbmdzDQogKiAgICAgICAgICAgICAgICAgICAgIGFuZCBmaXhlZCBydW50aW1lIHBhc3MtYnktcmVmZXJlbmNlIGVycm9ycw0KICogICAgICAgIDA3LTE0LTIwMDkgLSBhZGRlZCByZWZlcmVuY2VzIGFuZCB0eXBlIGhpbnRpbmcgdG8gbWFueSBvZiB0aGUgZnVuY3Rpb25zIA0KICogICAgICAgICAgICAgICAgICAgICBpbiBvcmRlciB0byBpbXByb3ZlIHBlcmZvcm1hbmNlIGEgbGl0dGxlDQogKiAgICAgICAgMDctMjUtMjAwOSAtIGFkZGVkIHN1cHBvcnQgZm9yIGNsYXNzICguKSBhbmQgaWQgKCMpIGFzIGZpbHRlcnMgKGRpdiNpZC5jbGFzcykNCiAqICAgICAgICAwOC0wNS0yMDA5IC0gY29ycmVjdGVkIG15IGhvcnJpYmxlIHR5cGluZyBlcnJvcnMNCiAqICAgICAgICAgICAgICAgICAgICAgY2hhbmdlZCB0aGUgYXR0cmlidXRlIGZpbHRlciBoYW5kbGluZyB0byBtYXRjaCB0aGUgZW50aXJlIG9wZXJhdG9yDQogKi8NCg0KLyoqDQogKiAgICBQZXJmb3JtIGEgQ1NTIHF1ZXJ5IG9uIGEgRE9NRG9jdW1lbnQgdXNpbmcgRE9NWFBhdGgNCiAqDQogKiAgICA8Y29kZT4NCiAqICAgICAgICAkZG9jID0gbmV3IERPTURvY3VtZW50KCk7DQogKiAgICAgICAgJGRvYy0+bG9hZEhUTUwoJzxodG1sPjxib2R5PjxwPmhlbGxvIHdvcmxkPC9wPjwvYm9keT48L2h0bWw+Jyk7DQogKiAgICAgICAgJGNzcyA9IG5ldyBDU1NRdWVyeSgkZG9jKTsNCiAqICAgICAgICBwcmludCBjb3VudCggJGNzcy0+cXVlcnkoInA6Y29udGFpbnMoJ2hlbGxvIHdvcmxkJykiKSApOw0KICogICAgPC9jb2RlPg0KICogICAgDQogKg0KICogICAgQGNhdGVnb3J5ICAgSFRNTA0KICogICAgQHBhY2thZ2UgICAgQ1NTUXVlcnkNCiAqICAgIEBhdXRob3IgICAgIFNhbSBTaHVsbCA8c2FtLnNodWxsQGpoc3BlY2lhbHR5LmNvbT4NCiAqICAgIEBjb3B5cmlnaHQgIENvcHlyaWdodCAoYykgMjAwOSBTYW0gU2h1bGwgPHNhbS5zaHVsbEBqaHNwZWljYWx0eS5jb20+DQogKiAgICBAbGljZW5zZSAgICA8aHR0cDovL3d3dy5vcGVuc291cmNlLm9yZy9saWNlbnNlcy9taXQtbGljZW5zZS5odG1sPg0KICogICAgQHZlcnNpb24gICAgUmVsZWFzZTogQHBhY2thZ2VfdmVyc2lvbkANCiAqICAgIEBsaW5rICAgICAgIA0KICogICAgQHNpbmNlICAgICAgQ2xhc3MgYXZhaWxhYmxlIHNpbmNlIFJlbGVhc2UgMS4wDQogKi8gDQpjbGFzcyBDU1NRdWVyeQ0Kew0KICAgIC8qKg0KICAgICAqICAgIFRoaXMgUENSRSBzdHJpbmcgbWF0Y2hlcyBvbmUgdmFsaWQgY3NzIHNlbGVjdG9yIGF0IGEgdGltZQ0KICAgICAqDQogICAgICogICAgQGNvbnN0IHN0cmluZw0KICAgICAqLyANCiAgICBjb25zdCBDSFVOS0VSID0gJy9eXHMqKFsjXC4+flwrOlxbLF0/KVxzKihcKnxbXlwqI1wuPn5cKzpcW1xdXClcKFxzLF0qKS8nOw0KICAgIA0KICAgIC8qKg0KICAgICAqICAgIFRoaXMgUENSRSBzdHJpbmcgbWF0Y2hlcyBvbmUgcHN1ZWRvIGNzcyBzZWxlY3RvciBhdCBhIHRpbWUNCiAgICAgKg0KICAgICAqICAgIEBjb25zdCBzdHJpbmcNCiAgICAgKi8gDQogICAgY29uc3QgUFNVRURPID0gJy9eXHMqOihbXHdcLV0rKVxzKihcKFxzKihbXlwoXCldKihcKFteXChcKV0qXCkpPyk/XHMqXCkpP1xzKi8nOw0KICAgIA0KICAgIC8qKg0KICAgICAqICAgIFRoaXMgUENSRSBzdHJpbmcgbWF0Y2hlcyBvbmUgY3NzIGF0dHJpYnV0ZSBzZWxlY3RvciBhdCBhIHRpbWUNCiAgICAgKg0KICAgICAqICAgIEBjb25zdCBzdHJpbmcNCiAgICAgKi8gDQogICAgY29uc3QgQVRUUklCVVRFUyA9ICcvXFtAPyhbXHdcLV0rKFx8W1x3XC1dKyk/KVxzKigoXFMqPSlccyooW1wnIl0/KSg/KDUpKFteXFw1XSopXFw1fChbXlxdXSspKSk/XHMqXF0vaSc7DQogICAgDQogICAgLyoqDQogICAgICogICAgQW4gYXJyYXkgb2YgZnVuY3Rpb25zIHJlcHJlc2VudGluZyBwc3VlZG8gc2VsZWN0b3JzDQogICAgICoNCiAgICAgKiAgICBAYWNjZXNzIHB1YmxpYw0KICAgICAqDQogICAgICogICAgQHN0YXRpY3ZhciBhcnJheQ0KICAgICAqLw0KICAgIHB1YmxpYyBzdGF0aWMgJGZpbHRlcnM7DQogICAgDQogICAgLyoqDQogICAgICogICAgQW4gYXJyYXkgb2YgZnVuY3Rpb25zIHJlcHJlc2VudGluZyBhdHRyaWJ1dGUgc2VsZWN0b3JzDQogICAgICoNCiAgICAgKiAgICBAYWNjZXNzIHB1YmxpYw0KICAgICAqDQogICAgICogICAgQHN0YXRpY3ZhciBhcnJheQ0KICAgICAqLw0KICAgIHB1YmxpYyBzdGF0aWMgJGF0dHJpYnV0ZUZpbHRlcnM7DQogICAgDQogICAgLyoqDQogICAgICogICAgQW4gaW5zdGFuY2Ugb2YgRE9NWFBhdGggZm9yIGZpbmRpbmcgdGhlIGluZm9ybWF0aW9uIG9uIHRoZSBkb2N1bWVudA0KICAgICAqDQogICAgICogICAgQGFjY2VzcyBwdWJsaWMNCiAgICAgKg0KICAgICAqICAgIEB2YXIgRE9NWFBhdGgNCiAgICAgKi8NCiAgICBwdWJsaWMgJHhwYXRoOw0KICAgIA0KICAgIC8qKg0KICAgICAqICAgIFRoZSBkb2N1bWVudCB0aGF0IHRoZSBxdWVyaWVzIHdpbGwgb3JpZ2luYXRlIGZyb20NCiAgICAgKg0KICAgICAqICAgIEBhY2Nlc3MgcHVibGljDQogICAgICoNCiAgICAgKiAgICBAdmFyIERPTURvY3VtZW50DQogICAgICovDQogICAgcHVibGljICRkb2N1bWVudDsNCiAgICANCiAgICAvKioNCiAgICAgKiAgICBJbml0aWFsaXplIHRoZSBvYmplY3QgLSBvcGVucyBhIG5ldyBET01YUGF0aA0KICAgICAqDQogICAgICogICAgQGFjY2VzcyBwdWJsaWMNCiAgICAgKg0KICAgICAqICAgIEBwYXJhbSBET01Eb2N1bWVudCAkZG9jdW1lbnQNCiAgICAgKi8NCiAgICBwdWJsaWMgZnVuY3Rpb24gX19jb25zdHJ1Y3QgKERPTURvY3VtZW50ICYkZG9jdW1lbnQpDQogICAgew0KICAgICAgICAkdGhpcy0+eHBhdGggPSBuZXcgRE9NWFBhdGgoJGRvY3VtZW50KTsNCiAgICAgICAgJHRoaXMtPmRvY3VtZW50ID0mICRkb2N1bWVudDsNCiAgICB9DQogICAgDQogICAgLyoqDQogICAgICogICAgcmVnaXN0ZXIgYSBuYW1lc3BhY2UNCiAgICAgKg0KICAgICAqICAgIEBhY2Nlc3MgcHVibGljDQogICAgICoNCiAgICAgKiAgICBAcGFyYW0gc3RyaW5nICRwcmVmaXgNCiAgICAgKiAgICBAcGFyYW0gc3RyaW5nICRVUkkNCiAgICAgKg0KICAgICAqICAgIEByZXR1cm5zIGJvb2xlYW4NCiAgICAgKi8NCiAgICBwdWJsaWMgZnVuY3Rpb24gcmVnaXN0ZXJOYW1lc3BhY2UgKCRwcmVmaXgsICRVUkkpDQogICAgew0KICAgICAgICByZXR1cm4gJHRoaXMtPnhwYXRoLT5yZWdpc3Rlck5hbWVzcGFjZSgkcHJlZml4LCAkVVJJKTsNCiAgICB9DQogICAgDQogICAgLyoqDQogICAgICogICAgR2V0IGFuIGFycmF5IG9mIERPTU5vZGVzIHRoYXQgbWF0Y2ggYSBDU1MgcXVlcnkgZXhwcmVzc2lvbg0KICAgICAqDQogICAgICogICAgQGFjY2VzcyBwdWJsaWMNCiAgICAgKg0KICAgICAqICAgIEBwYXJhbSBzdHJpbmcgJGV4cHJlc3Npb24NCiAgICAgKiAgICBAcGFyYW0gbWl4ZWQgJGNvbnRleHQgLSBhIERPTU5vZGUgb3IgYW4gYXJyYXkgb2YgRE9NTm9kZXMNCiAgICAgKg0KICAgICAqICAgIEByZXR1cm5zIGFycmF5DQogICAgICovDQogICAgcHVibGljIGZ1bmN0aW9uIHF1ZXJ5ICgkZXhwcmVzc2lvbiwgJGNvbnRleHQ9bnVsbCkNCiAgICB7DQogICAgICAgICRvcmlnaW5hbF9jb250ZXh0ID0gZnVuY19udW1fYXJncygpIDwgMyA/ICRjb250ZXh0IDogZnVuY19nZXRfYXJnKDIpOw0KICAgICAgICANCiAgICAgICAgJGN1cnJlbnQgPSAkY29udGV4dCBpbnN0YW5jZW9mIERPTU5vZGUgPyBhcnJheSgkY29udGV4dCkgOiBzZWxmOjptYWtlQXJyYXkoJGNvbnRleHQpOw0KICAgICAgICANCiAgICAgICAgJG5ldyA9IGFycmF5KCk7DQogICAgICAgIA0KICAgICAgICAkbSA9IGFycmF5KCcnKTsNCiAgICANCiAgICAgICAgaWYgKCRleHByZXNzaW9uICYmIHByZWdfbWF0Y2goc2VsZjo6Q0hVTktFUiwgJGV4cHJlc3Npb24sICRtKSkNCiAgICAgICAgew0KICAgICAgICAgICAgLy9yZXBsYWNlIGEgcGlwZSB3aXRoIGEgc2VtaS1jb2xvbiBpbiBhIHNlbGVjdG9yDQogICAgICAgICAgICAvL2ZvciBuYW1lc3BhY2UgdXNlcw0KICAgICAgICAgICAgJG1bMl0gPSAkbVsyXSA/IHN0cl9yZXBsYWNlKCd8JywgJzonLCAkbVsyXSkgOiAnKic7DQogICAgICAgICAgICANCiAgICAgICAgICAgIHN3aXRjaCAoJG1bMV0pDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgY2FzZSAnLCc6DQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAkbmV3ID0gJHRoaXMtPnF1ZXJ5KGx0cmltKHN1YnN0cigkZXhwcmVzc2lvbiwgc3RycG9zKCRleHByZXNzaW9uLCAkbVsxXSkgKyAxKSksIGFycmF5KCksICRvcmlnaW5hbF9jb250ZXh0KTsNCiAgICAgICAgICAgICAgICAgICAgJG5ldyA9IGFycmF5X21lcmdlKCRjdXJyZW50LCAkbmV3KTsNCiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHNlbGY6OnVuaXF1ZSgkbmV3KTsNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgLy8jaWQNCiAgICAgICAgICAgICAgICBjYXNlICcjJzogICAgDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAkbmV3ID0gJHRoaXMtPmlkKCRtWzJdLCAkY3VycmVudCk7DQogICAgICAgICAgICAgICAgICAgIGJyZWFrOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAvLy5jbGFzcw0KICAgICAgICAgICAgICAgIGNhc2UgJy4nOiAgICANCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICRuZXcgPSAkdGhpcy0+Y2xhc3NOYW1lKCRtWzJdLCAkY3VycmVudCk7DQogICAgICAgICAgICAgICAgICAgIGJyZWFrOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAvLyA+IGNoaWxkDQogICAgICAgICAgICAgICAgY2FzZSAnPic6ICAgIA0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgJG5ldyA9ICR0aGlzLT5jaGlsZHJlbigkbVsyXSwgJGN1cnJlbnQpOw0KICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgYnJlYWs7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIC8vICsgYWRqYWNlbnQgc2libGluZw0KICAgICAgICAgICAgICAgIGNhc2UgJysnOiAgICANCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICRuZXcgPSAkdGhpcy0+YWRqYWNlbnRTaWJsaW5nKCRtWzJdLCRjdXJyZW50KTsNCiAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgIGJyZWFrOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAvLyB+IGdlbmVyYWwgc2libGluZw0KICAgICAgICAgICAgICAgIGNhc2UgJ34nOiAgICANCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICRuZXcgPSAkdGhpcy0+Z2VuZXJhbFNpYmxpbmcoJG1bMl0sICRjdXJyZW50KTsNCiAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgIGJyZWFrOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAvLzpwc3VlZG8tZmlsdGVyDQogICAgICAgICAgICAgICAgY2FzZSAnOic6DQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICBpZiAoJG1bMl0gPT0gJ3Jvb3QnKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAkbmV3ID0gYXJyYXkoJHRoaXMtPmRvY3VtZW50LT5kb2N1bWVudEVsZW1lbnQpOw0KICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgIC8vYSBwc3VlZG8gc2VsZWN0b3IgaXMgYSBmaWx0ZXINCiAgICAgICAgICAgICAgICAgICAgZWxzZWlmIChwcmVnX21hdGNoKHNlbGY6OlBTVUVETywgJGV4cHJlc3Npb24sICRuKSkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCRuWzFdICYmIGlzc2V0KHNlbGY6OiRmaWx0ZXJzWyRuWzFdXSkgJiYgaXNfY2FsbGFibGUoc2VsZjo6JGZpbHRlcnNbJG5bMV1dKSkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoISRjdXJyZW50KQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGN1cnJlbnQgPSAkdGhpcy0+eHBhdGgtPnF1ZXJ5KCcvLyonKTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGN1cnJlbnQgPSBzZWxmOjptYWtlQXJyYXkoJGN1cnJlbnQpOw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkaSA9IDA7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yZWFjaCAoJGN1cnJlbnQgYXMgJGVsZW0pDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoJGl0ZW0gPSBjYWxsX3VzZXJfZnVuYyhzZWxmOjokZmlsdGVyc1skblsxXV0sICRlbGVtLCAkaSsrLCAkbiwgJGN1cnJlbnQsICR0aGlzKSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCRpdGVtIGluc3RhbmNlb2YgRE9NTm9kZSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoc2VsZjo6aW5BcnJheSgkaXRlbSwgJG5ldykgPCAwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJG5ld1tdID0gJGl0ZW07DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy91c3VhbGx5IGJvb2xlYW4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2VpZiAoaXNfc2NhbGFyKCRpdGVtKSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoJGl0ZW0pDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkbmV3W10gPSAkZWxlbTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbHNlDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJG5ldyA9IGFycmF5X21lcmdlKCRuZXcsIHNlbGY6Om1ha2VBcnJheSgkaXRlbSkpOw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRuZXcgPSBzZWxmOjp1bmlxdWUoJG5ldyk7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICBlbHNlDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEV4Y2VwdGlvbigiVW5rbm93biBwc3VlZG8tZmlsdGVyOiB7JG1bMl19LCBpbiB7JGV4cHJlc3Npb259Iik7DQogICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgIC8vc2V0IHRoaXMgZm9yIHRoZSBzdWJzdHINCiAgICAgICAgICAgICAgICAgICAgICAgICRtWzBdID0gJG5bMF07DQogICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgZWxzZQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXhjZXB0aW9uKCJVbmtub3duIHVzZSBvZiBzZW1pLWNvbG9uOiB7JG1bMl19LCBpbiB7JGV4cHJlc3Npb259Iik7DQogICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgYnJlYWs7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIC8vW2F0dHJpYnV0ZT0idmFsdWUiXSBmaWx0ZXINCiAgICAgICAgICAgICAgICBjYXNlICdbJzoNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIGlmIChwcmVnX21hdGNoKHNlbGY6OkFUVFJJQlVURVMsICRleHByZXNzaW9uLCAkbikpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIC8vY2hhbmdlIGEgcGlwZSB0byBhIHNlbWktY29sb24gZm9yIG5hbWVzcGFjZSBwdXJwb3Nlcw0KICAgICAgICAgICAgICAgICAgICAgICAgJG5bMV0gPSBzdHJfcmVwbGFjZSgnfCcsICc6JywgJG5bMV0pOw0KICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICBpZiAoIWlzc2V0KCRuWzRdKSB8fCAhJG5bNF0pDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgJG5bNF0gPSAnJzsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkbls2XSA9IG51bGw7DQogICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgIGlmICghaXNzZXQoc2VsZjo6JGF0dHJpYnV0ZUZpbHRlcnNbJG5bNF1dKSB8fCAhaXNfY2FsbGFibGUoc2VsZjo6JGF0dHJpYnV0ZUZpbHRlcnNbJG5bNF1dKSkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvL3ByaW50X3IoJG4pOw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vdGhyb3duIGlmIHRoZXJlIGlzIG5vIHZpYWJsZSBhdHRyaWJ1dGVGaWx0ZXIgZnVuY3Rpb24gZm9yIHRoZSBnaXZlbiBvcGVyYXRvcg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFeGNlcHRpb24oIlVua25vd24gYXR0cmlidXRlIGZpbHRlcjogeyRuWzRdfSIpOw0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICBpZiAoISRjdXJyZW50KQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICRjdXJyZW50ID0gJHRoaXMtPnhwYXRoLT5xdWVyeSgnLy8qJyk7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGN1cnJlbnQgPSBzZWxmOjptYWtlQXJyYXkoJGN1cnJlbnQpOw0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICBmb3JlYWNoICgkY3VycmVudCBhcyAkZWxlbSkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodHJ1ZSA9PT0gY2FsbF91c2VyX2Z1bmMoc2VsZjo6JGF0dHJpYnV0ZUZpbHRlcnNbJG5bNF1dLCAkZWxlbSwgJG5bMV0sICRuWzZdLCAkbiwgJGN1cnJlbnQpKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJG5ld1tdID0gJGVsZW07DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgICAgICAvL3NldCB0aGlzIGZvciB0aGUgc3Vic3RyDQogICAgICAgICAgICAgICAgICAgICAgICAkbVswXSA9ICRuWzBdOw0KICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgIGVsc2UNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgLy9vbmx5IHRocm93biBpZiBxdWVyeSBpcyBtYWxmb3JtZWQNCiAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFeGNlcHRpb24oIlVuaWRlbnRpZmllZCB1c2Ugb2YgJ1snIGluIHskbVswXX0iKTsNCiAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICBicmVhazsNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgLy9qdXN0IGEgdGFnIC0gaS5lLiBhbnkgZGVzY2VuZGFudCBvZiB0aGUgY3VycmVudCBjb250ZXh0DQogICAgICAgICAgICAgICAgZGVmYXVsdDoNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICRuZXcgPSAkdGhpcy0+dGFnKCRtWzJdLCAkY3VycmVudCk7DQogICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICBicmVhazsNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9DQogICAgICAgICAgICANCiAgICAgICAgICAgIC8vY2hlY2sgZm9yICMgb3IgLiBhcyBmaWx0ZXIgICAgDQogICAgICAgICAgICAkZXhwID0gc3Vic3RyKCRleHByZXNzaW9uLCBzdHJsZW4oJG1bMF0pKTsNCiAgICAgICAgICAgIA0KICAgICAgICAgICAgd2hpbGUgKCRleHAgJiYgKCRleHBbMF0gPT0gIi4iIHx8ICRleHBbMF0gPT0gIiMiKSkNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICBpZiAocHJlZ19tYXRjaChzZWxmOjpDSFVOS0VSLCAkZXhwLCAkbSkpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAkZXhwcmVzc2lvbiA9ICRleHA7DQogICAgICAgICAgICAgICAgICAgICRuZXcgPSAkbVsxXSA9PSAiLiIgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPyAkdGhpcy0+Y2xhc3NOYW1lKCRtWzJdLCAkbmV3LCB0cnVlKSANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICR0aGlzLT5pZCgkbVsyXSwgJG5ldywgdHJ1ZSk7DQogICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAkZXhwID0gc3Vic3RyKCRleHByZXNzaW9uLCBzdHJsZW4oJG1bMF0pKTsNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9DQogICAgICAgIH0NCiAgICAgICAgDQogICAgICAgIHJldHVybiBzdHJsZW4oJG1bMF0pIDwgc3RybGVuKCRleHByZXNzaW9uKSANCiAgICAgICAgICAgICAgICA/ICR0aGlzLT5xdWVyeShzdWJzdHIoJGV4cHJlc3Npb24sIHN0cmxlbigkbVswXSkpLCAkbmV3LCAkb3JpZ2luYWxfY29udGV4dCkgDQogICAgICAgICAgICAgICAgOiBzZWxmOjp1bmlxdWUoJG5ldyk7DQogICAgfQ0KICAgIA0KICAgIC8qKg0KICAgICAqICAgIGdldCBhbiBlbGVtZW50IGJ5IGl0cyBpZCBhdHRyaWJ1dGUNCiAgICAgKg0KICAgICAqICAgIEBhY2Nlc3MgcHVibGljDQogICAgICoNCiAgICAgKiAgICBAcGFyYW0gc3RyaW5nICRpZA0KICAgICAqICAgIEBwYXJhbSBhcnJheSAkY29udGV4dA0KICAgICAqDQogICAgICogICAgQHJldHVybnMgYXJyYXkNCiAgICAgKi8NCiAgICBwdWJsaWMgZnVuY3Rpb24gaWQgKCYkaWQsIGFycmF5ICYkY29udGV4dD1hcnJheSgpLCAkZmlsdGVyPWZhbHNlKQ0KICAgIHsNCiAgICAgICAgJG5ldyA9IGFycmF5KCk7DQogICAgICAgIA0KICAgICAgICAvL2lmIGEgY29udGV4dCBpcyBwcmVzZW50IC0gZGl2I2lkIHNob3VsZCBhY3QgbGlrZSBhIGZpbHRlcg0KICAgICAgICBpZiAoJGZpbHRlciB8fCAkY29udGV4dCkNCiAgICAgICAgew0KICAgICAgICAgICAgZm9yZWFjaCAoJGNvbnRleHQgYXMgJGVsZW0pDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgaWYgKCRlbGVtIGluc3RhbmNlb2YgRE9NRWxlbWVudCAmJiAkZWxlbS0+aGFzQXR0cmlidXRlKCdpZCcpICYmICRlbGVtLT5nZXRBdHRyaWJ1dGUoJ2lkJykgPT0gJGlkKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgJG5ld1tdID0gJGVsZW07DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgICAgIGVsc2VpZiAoKCRpdGVtcyA9ICR0aGlzLT54cGF0aC0+cXVlcnkoIi8vKltAaWQ9J3skaWR9J10iKSkgJiYgJGl0ZW1zLT5sZW5ndGggPiAwKQ0KICAgICAgICB7DQogICAgICAgICAgICBmb3JlYWNoICgkaXRlbXMgYXMgJGl0ZW0pDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgJG5ld1tdID0gJGl0ZW07DQogICAgICAgICAgICB9DQogICAgICAgIH0NCiAgICAgICAgDQogICAgICAgIHJldHVybiAkbmV3Ow0KICAgIH0NCiAgICANCiAgICAvKioNCiAgICAgKiAgICBnZXQgYW4gZWxlbWVudCBieSBpdHMgY2xhc3MgYXR0cmlidXRlDQogICAgICoNCiAgICAgKiAgICBAYWNjZXNzIHB1YmxpYw0KICAgICAqDQogICAgICogICAgQHBhcmFtIHN0cmluZyAkaWQNCiAgICAgKiAgICBAcGFyYW0gYXJyYXkgJGNvbnRleHQNCiAgICAgKg0KICAgICAqICAgIEByZXR1cm5zIGFycmF5DQogICAgICovDQogICAgcHVibGljIGZ1bmN0aW9uIGNsYXNzTmFtZSAoJiRjbGFzc05hbWUsIGFycmF5ICYkY29udGV4dD1hcnJheSgpLCAkZmlsdGVyPWZhbHNlKQ0KICAgIHsNCiAgICAgICAgJG5ldyA9IGFycmF5KCk7DQogICAgICAgIA0KICAgICAgICBpZiAoJGZpbHRlciAmJiAkY29udGV4dCkNCiAgICAgICAgew0KICAgICAgICAgICAgJHJlZ2V4ID0gJy9ccysnIC4gcHJlZ19xdW90ZSgkY2xhc3NOYW1lLCAnLycpIC4gJ1xzKy8nOw0KICAgICAgICAgICAgDQogICAgICAgICAgICBmb3JlYWNoICgkY29udGV4dCBhcyAkZWxlbSkNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICBpZiAoJGVsZW0tPmhhc0F0dHJpYnV0ZSgnY2xhc3MnKSAmJiBwcmVnX21hdGNoKCRyZWdleCwgIiB7JGVsZW0tPmdldEF0dHJpYnV0ZSgnY2xhc3MnKX0gIikpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAkbmV3W10gPSAkZWxlbTsNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9DQogICAgICAgIH0NCiAgICAgICAgLy9pZiB0aGVyZSBpcyBhIGNvbnRleHQgZm9yIHRoZSBxdWVyeQ0KICAgICAgICBlbHNlaWYgKCRjb250ZXh0KQ0KICAgICAgICB7DQogICAgICAgICAgICAvLzA2LTA4LTIwMDkgLSBhZGRlZCBub3JtYWxpemUtc3BhY2UgZnVuY3Rpb24sIGh0dHA6Ly93ZXN0aG9mZnN3ZWx0LmRlL2Jsb2cvMDAzNl94cGF0aF90b19zZWxlY3RfaHRtbF9ieV9jbGFzcy5odG1sDQogICAgICAgICAgICAkcXVlcnkgPSAiLi9kZXNjZW5kYW50OjoqWyBAY2xhc3MgYW5kIGNvbnRhaW5zKCBjb25jYXQoJyAnLCBub3JtYWxpemUtc3BhY2UoQGNsYXNzKSwgJyAnKSwgJyB7JGNsYXNzTmFtZX0gJykgXSI7DQogICAgICAgICAgICANCiAgICAgICAgICAgIGZvcmVhY2ggKCRjb250ZXh0IGFzICRlbGVtKQ0KICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgIGlmICgNCiAgICAgICAgICAgICAgICAgICAgKCRpdGVtcyA9ICR0aGlzLT54cGF0aC0+cXVlcnkoJHF1ZXJ5LCAkZWxlbSkpICYmIA0KICAgICAgICAgICAgICAgICAgICAkaXRlbXMtPmxlbmd0aCA+IDANCiAgICAgICAgICAgICAgICApDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICBmb3JlYWNoICgkaXRlbXMgYXMgJGl0ZW0pDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICRuZXdbXSA9ICRpdGVtOw0KICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgICAgIC8vb3RoZXJ3aXNlIHNlbGVjdCBhbnkgZWxlbWVudCBpbiB0aGUgZG9jdW1lbnQgdGhhdCBtYXRjaGVzIHRoZSBzZWxlY3Rvcg0KICAgICAgICBlbHNlaWYgKCgkaXRlbXMgPSAkdGhpcy0+eHBhdGgtPnF1ZXJ5KCIvLypbIEBjbGFzcyBhbmQgY29udGFpbnMoIGNvbmNhdCgnICcsIG5vcm1hbGl6ZS1zcGFjZShAY2xhc3MpLCAnICcpLCAnIHskY2xhc3NOYW1lfSAnKSBdIikpICYmICRpdGVtcy0+bGVuZ3RoID4gMCkNCiAgICAgICAgew0KICAgICAgICAgICAgZm9yZWFjaCAoJGl0ZW1zIGFzICRpdGVtKQ0KICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICRuZXdbXSA9ICRpdGVtOw0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgICAgIA0KICAgICAgICByZXR1cm4gJG5ldzsNCiAgICB9DQogICAgDQogICAgLyoqDQogICAgICogICAgZ2V0IHRoZSBjaGlsZHJlbiBlbGVtZW50cw0KICAgICAqDQogICAgICogICAgQGFjY2VzcyBwdWJsaWMNCiAgICAgKg0KICAgICAqICAgIEBwYXJhbSBzdHJpbmcgJHRhZw0KICAgICAqICAgIEBwYXJhbSBhcnJheSAkY29udGV4dA0KICAgICAqDQogICAgICogICAgQHJldHVybnMgYXJyYXkNCiAgICAgKi8NCiAgICBwdWJsaWMgZnVuY3Rpb24gY2hpbGRyZW4gKCYkdGFnPScqJywgYXJyYXkgJiRjb250ZXh0PWFycmF5KCkpDQogICAgew0KICAgICAgICAkbmV3ID0gYXJyYXkoKTsNCiAgICAgICAgDQogICAgICAgICRxdWVyeSA9ICIuL3skdGFnfSI7DQogICAgICAgIA0KICAgICAgICAvL2lmIHRoZXJlIGlzIGEgY29udGV4dCBmb3IgdGhlIHF1ZXJ5DQogICAgICAgIGlmICgkY29udGV4dCkNCiAgICAgICAgew0KICAgICAgICAgICAgZm9yZWFjaCAoJGNvbnRleHQgYXMgJGVsZW0pDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgaWYgKCgkaXRlbXMgPSAkdGhpcy0+eHBhdGgtPnF1ZXJ5KCRxdWVyeSwgJGVsZW0pKSAmJiAkaXRlbXMtPmxlbmd0aCA+IDApDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICBmb3JlYWNoICgkaXRlbXMgYXMgJGl0ZW0pDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICRuZXdbXSA9ICRpdGVtOw0KICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgICAgIC8vb3RoZXJ3aXNlIHNlbGVjdCBhbnkgZWxlbWVudCBpbiB0aGUgZG9jdW1lbnQgdGhhdCBtYXRjaGVzIHRoZSBzZWxlY3Rvcg0KICAgICAgICBlbHNlaWYgKCgkaXRlbXMgPSAkdGhpcy0+eHBhdGgtPnF1ZXJ5KCRxdWVyeSwgJHRoaXMtPmRvY3VtZW50LT5kb2N1bWVudEVsZW1lbnQpKSAmJiAkaXRlbXMtPmxlbmd0aCA+IDApDQogICAgICAgIHsNCiAgICAgICAgICAgIGZvcmVhY2ggKCRpdGVtcyBhcyAkaXRlbSkNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAkbmV3W10gPSAkaXRlbTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfQ0KICAgICAgICANCiAgICAgICAgcmV0dXJuICRuZXc7DQogICAgfQ0KICAgIA0KICAgIC8qKg0KICAgICAqICAgIGdldCB0aGUgYWRqYWNlbnQgc2libGluZyBlbGVtZW50cw0KICAgICAqDQogICAgICogICAgQGFjY2VzcyBwdWJsaWMNCiAgICAgKg0KICAgICAqICAgIEBwYXJhbSBzdHJpbmcgJHRhZw0KICAgICAqICAgIEBwYXJhbSBhcnJheSAkY29udGV4dA0KICAgICAqDQogICAgICogICAgQHJldHVybnMgYXJyYXkNCiAgICAgKi8NCiAgICBwdWJsaWMgZnVuY3Rpb24gYWRqYWNlbnRTaWJsaW5nICgmJHRhZz0nKicsIGFycmF5ICYkY29udGV4dD1hcnJheSgpKQ0KICAgIHsNCiAgICAgICAgJG5ldyA9IGFycmF5KCk7DQogICAgICAgIA0KICAgICAgICAkdGFnID0gc3RydG9sb3dlcigkdGFnKTsNCiAgICAgICAgDQogICAgICAgIC8vaWYgdGhlcmUgaXMgYSBjb250ZXh0IGZvciB0aGUgcXVlcnkNCiAgICAgICAgaWYgKCRjb250ZXh0KQ0KICAgICAgICB7ICAgIA0KICAgICAgICAgICAgZm9yZWFjaCAoJGNvbnRleHQgYXMgJGVsZW0pDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgaWYgKCR0YWcgPT0gJyonIHx8IHN0cnRvbG93ZXIoJGVsZW0tPm5leHRTaWJsaW5nLT5ub2RlTmFtZSkgPT0gJHRhZykNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICRuZXdbXSA9ICRlbGVtLT5uZXh0U2libGluZzsNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9DQogICAgICAgIH0NCiAgICAgICAgDQogICAgICAgIHJldHVybiAkbmV3Ow0KICAgIH0NCiAgICANCiAgICAvKioNCiAgICAgKiAgICBnZXQgdGhlIGFsbCBzaWJsaW5nIGVsZW1lbnRzDQogICAgICoNCiAgICAgKiAgICBAYWNjZXNzIHB1YmxpYw0KICAgICAqDQogICAgICogICAgQHBhcmFtIHN0cmluZyAkdGFnDQogICAgICogICAgQHBhcmFtIGFycmF5ICRjb250ZXh0DQogICAgICoNCiAgICAgKiAgICBAcmV0dXJucyBhcnJheQ0KICAgICAqLw0KICAgIHB1YmxpYyBmdW5jdGlvbiBnZW5lcmFsU2libGluZyAoJiR0YWc9JyonLCBhcnJheSAmJGNvbnRleHQ9YXJyYXkoKSkNCiAgICB7DQogICAgICAgICRuZXcgPSBhcnJheSgpOw0KICAgICAgICANCiAgICAgICAgLy9pZiB0aGVyZSBpcyBhIGNvbnRleHQgZm9yIHRoZSBxdWVyeQ0KICAgICAgICBpZiAoJGNvbnRleHQpDQogICAgICAgIHsNCiAgICAgICAgICAgICRxdWVyeSA9ICIuL2ZvbGxvd2luZy1zaWJsaW5nOjp7JHRhZ30gfCAuL3ByZWNlZGluZy1zaWJsaW5nOjp7JHRhZ30iOw0KICAgICAgICAgICAgDQogICAgICAgICAgICBmb3JlYWNoICgkY29udGV4dCBhcyAkZWxlbSkNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICBpZiAoKCRpdGVtcyA9ICR0aGlzLT54cGF0aC0+cXVlcnkoJHF1ZXJ5LCAkZWxlbSkpICYmICRpdGVtcy0+bGVuZ3RoID4gMCkNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIGZvcmVhY2ggKCRpdGVtcyBhcyAkaXRlbSkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgJG5ld1tdID0gJGl0ZW07DQogICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9DQogICAgICAgIH0NCiAgICAgICAgDQogICAgICAgIHJldHVybiAkbmV3Ow0KICAgIH0NCiAgICANCiAgICAvKioNCiAgICAgKiAgICBnZXQgdGhlIGFsbCBkZXNjZW5kYW50IGVsZW1lbnRzDQogICAgICoNCiAgICAgKiAgICBAYWNjZXNzIHB1YmxpYw0KICAgICAqDQogICAgICogICAgQHBhcmFtIHN0cmluZyAkdGFnDQogICAgICogICAgQHBhcmFtIGFycmF5ICRjb250ZXh0DQogICAgICoNCiAgICAgKiAgICBAcmV0dXJucyBhcnJheQ0KICAgICAqLw0KICAgIHB1YmxpYyBmdW5jdGlvbiB0YWcgKCYkdGFnPScqJywgYXJyYXkgJiRjb250ZXh0PWFycmF5KCkpDQogICAgew0KICAgICAgICAkbmV3ID0gYXJyYXkoKTsNCiAgICAgICAgDQogICAgICAgIC8vZ2V0IGFsbCB0aGUgZGVzY2VuZGFudHMgd2l0aCB0aGUgZ2l2ZW4gdGFnTmFtZQ0KICAgICAgICBpZiAoJGNvbnRleHQpDQogICAgICAgIHsNCiAgICAgICAgICAgICRxdWVyeSA9ICIuL2Rlc2NlbmRhbnQ6OnskdGFnfSI7DQogICAgICAgICAgICANCiAgICAgICAgICAgIGZvcmVhY2ggKCRjb250ZXh0IGFzICRlbGVtKQ0KICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgIGlmICgkaXRlbXMgPSAkdGhpcy0+eHBhdGgtPnF1ZXJ5KCRxdWVyeSwgJGVsZW0pKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgZm9yZWFjaCAoJGl0ZW1zIGFzICRpdGVtKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAkbmV3W10gPSAkaXRlbTsNCiAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0NCiAgICAgICAgfQ0KICAgICAgICAvL2dldCBhbGwgZWxlbWVudHMgd2l0aCB0aGUgZ2l2ZW4gdGFnTmFtZQ0KICAgICAgICBlbHNlDQogICAgICAgIHsNCiAgICAgICAgICAgIGlmICgkaXRlbXMgPSAkdGhpcy0+eHBhdGgtPnF1ZXJ5KCIvL3skdGFnfSIpKQ0KICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgIGZvcmVhY2ggKCRpdGVtcyBhcyAkaXRlbSkNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICRuZXdbXSA9ICRpdGVtOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0NCiAgICAgICAgfQ0KICAgICAgICANCiAgICAgICAgcmV0dXJuICRuZXc7DQogICAgfQ0KICAgIA0KICAgIC8qKg0KICAgICAqICAgIEEgdXRpbGl0eSBmdW5jdGlvbiBmb3IgY2FsY3VsYXRpbmcgbnRoLSogc3R5bGUgcHN1ZWRvIHNlbGVjdG9ycw0KICAgICAqDQogICAgICogICAgQHN0YXRpYw0KICAgICAqICAgIEBhY2Nlc3MgcHVibGljDQogICAgICoNCiAgICAgKiAgICBAcGFyYW0gRE9NTm9kZSAkY29udGV4dCAtIHRoZSBlbGVtZW50IHdob3NlIHBvc2l0aW9uIGlzIGJlaW5nIGNhbGN1bGF0ZWQNCiAgICAgKiAgICBAcGFyYW0gc3RyaW5nICRmdW5jIC0gdGhlIG5hbWUgb2YgdGhlIHBzdWVkbyBmdW5jdGlvbiB0aGF0IGlzIGJlaW5nIGNhbGN1bGF0ZWQgZm9yDQogICAgICogICAgQHBhcmFtIHN0cmluZyAkZXhwciAtIHRoZSBzdHJpbmcgYXJndW1lbnQgZm9yIHRoZSBzZWxlY3Rvcg0KICAgICAqICAgIEBwYXJhbSBET01YUGF0aCAkeHBhdGggLSBhbiBleGlzdGluZyB4cGF0aCBpbnN0YW5jZSBmb3IgdGhlIGRvY3VtZW50IHRoYXQgdGhlIGNvbnRleHQgYmVsb25nIHRvDQogICAgICoNCiAgICAgKiAgICBAcmV0dXJucyBib29sZWFuDQogICAgICovDQogICAgcHVibGljIHN0YXRpYyBmdW5jdGlvbiBudGhDaGlsZCAoRE9NTm9kZSAmJGNvbnRleHQsICRmdW5jLCAkZXhwciwgRE9NWFBhdGggJiR4cGF0aCkNCiAgICB7DQogICAgICAgIC8vcmVtb3ZlIGFsbCB0aGUgd2hpdGVzcGFjZQ0KICAgICAgICAkZXhwciA9IHByZWdfcmVwbGFjZSgnL1xzKy8nLCAnJywgdHJpbShzdHJ0b2xvd2VyKCRleHByKSkpOw0KICAgICAgICANCiAgICAgICAgLy9hbGwNCiAgICAgICAgaWYgKCRleHByID09ICduJyB8fCAkZXhwciA9PSAnbiswJyB8fCAkZXhwciA9PSAnMW4rMCcgfHwgJGV4cHIgPT0gJzFuJykNCiAgICAgICAgew0KICAgICAgICAgICAgcmV0dXJuIHRydWU7DQogICAgICAgIH0NCiAgICAgICAgDQogICAgICAgIC8vdGhlIGRpcmVjdGlvbiB3ZSB3aWxsIGxvb2sgZm9yIHNpYmxpbmdzDQogICAgICAgICRESVIgPSAoc3RyaXN0cigkZnVuYywgJ2xhc3QnKSA/ICdmb2xsb3dpbmcnIDogJ3ByZWNlZGluZycpOw0KICAgICAgICANCiAgICAgICAgLy9kbyBhIHRhZ05hbWUgY2hlY2s/DQogICAgICAgICR0eXBlID0gc3RyaXN0cigkZnVuYywgJ3R5cGUnKSA/ICdbbG9jYWwtbmFtZSgpPW5hbWUoLildJyA6ICcnOw0KICAgICAgICANCiAgICAgICAgLy90aGUgcG9zaXRpb24gb2YgdGhpcyBub2RlDQogICAgICAgICRjb3VudCA9ICR4cGF0aC0+ZXZhbHVhdGUoImNvdW50KCB7JERJUn0tc2libGluZzo6KnskdHlwZX0gKSArIDEiLCAkY29udGV4dCk7DQogICAgICAgIA0KICAgICAgICAvL29kZA0KICAgICAgICBpZigkZXhwciA9PSAnb2RkJyB8fCAkZXhwciA9PSAnMm4rMScpDQogICAgICAgIHsNCiAgICAgICAgICAgIHJldHVybiAkY291bnQgJSAyICE9IDA7DQogICAgICAgIH0NCiAgICAgICAgLy9ldmVuDQogICAgICAgIGVsc2VpZigkZXhwciA9PSAnZXZlbicgfHwgJGV4cHIgPT0gJzJuJyB8fCAkZXhwciA9PSAnMm4rMCcpDQogICAgICAgIHsNCiAgICAgICAgICAgIHJldHVybiAkY291bnQgPiAwICYmICRjb3VudCAlIDIgPT0gMDsNCiAgICAgICAgfQ0KICAgICAgICAvL2EgcGFydGljdWxhciBwb3NpdGlvbg0KICAgICAgICBlbHNlaWYocHJlZ19tYXRjaCgnL14oW1wrXC1dP1xkKykkL2knLCAkZXhwciwgJG1hdCkpDQogICAgICAgIHsNCiAgICAgICAgICAgICRkID0gKHN0cmlzdHIoJGZ1bmMsICdsYXN0JykgPyAtMSA6IDEpICogaW50dmFsKCRtYXRbMV0pOw0KICAgICAgICAgICAgJHIgPSAkeHBhdGgtPnF1ZXJ5KHNwcmludGYoJy4uLyVzJywgJHR5cGUgPyAkY29udGV4dC0+dGFnTmFtZSA6ICcqJyksICRjb250ZXh0KTsNCiAgICAgICAgICAgIHJldHVybiAkciAmJiAkci0+bGVuZ3RoID49IGFicygkZCkgJiYgKCRkID4gMCA/ICRyLT5pdGVtKCRkIC0gMSktPmlzU2FtZU5vZGUoJGNvbnRleHQpIDogJHItPml0ZW0oJHItPmxlbmd0aCArICRkKS0+aXNTYW1lTm9kZSgkY29udGV4dCkpOw0KICAgICAgICB9DQogICAgICAgIC8vZ3JvdXBlZCBhZnRlciBhIHBhcnRpY3VsYXIgcG9zaXRpb24NCiAgICAgICAgZWxzZWlmKHByZWdfbWF0Y2goJy9eKFtcK1wtXT9cZCopP24oW1wrXC1dXGQrKT8vaScsICRleHByLCAkbWF0KSkNCiAgICAgICAgew0KICAgICAgICAgICAgJGEgPSAoaXNzZXQoJG1hdFsyXSkgJiYgJG1hdFsyXSA/IGludHZhbCgkbWF0WzJdKSA6IDApOw0KICAgICAgICAgICAgJGIgPSAoaXNzZXQoJG1hdFsyXSkgJiYgJG1hdFsyXSA/IGludHZhbCgkbWF0WzJdKSA6IDEpOw0KICAgICAgICAgICAgDQogICAgICAgICAgICByZXR1cm4gKCRhID09IDAgJiYgJGNvdW50ID09ICRiKSB8fA0KICAgICAgICAgICAgICAgICAgICAoJGEgPiAwICYmICRjb3VudCA+PSAkYiAmJiAoJGNvdW50IC0gJGIpICUgJGEgPT0gMCkgfHwNCiAgICAgICAgICAgICAgICAgICAgKCRhIDwgMCAmJiAkY291bnQgPD0gJGIgJiYgKCgkYiAtICRjb3VudCkgJSAoJGEgKiAtMSkpID09IDApOw0KICAgICAgICB9DQogICAgICAgIA0KICAgICAgICByZXR1cm4gZmFsc2U7DQogICAgfQ0KICAgIA0KICAgIC8qKg0KICAgICAqICAgIEEgdXRpbGl0eSBmdW5jdGlvbiBmb3IgZmlsdGVyaW5nIGlucHV0cyBvZiBhIHNwZWNpZmljIHR5cGUNCiAgICAgKg0KICAgICAqICAgIEBzdGF0aWMNCiAgICAgKiAgICBAYWNjZXNzIHB1YmxpYw0KICAgICAqDQogICAgICogICAgQHBhcmFtIG1peGVkICRlbGVtDQogICAgICogICAgQHBhcmFtIHN0cmluZyAkdHlwZQ0KICAgICAqDQogICAgICogICAgQHJldHVybnMgYm9vbGVhbg0KICAgICAqLw0KICAgIHB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gaW5wdXRGaWx0ZXIgKCYkZWxlbSwgJHR5cGUpDQogICAgew0KICAgICAgICAkdCA9IHRyaW0oc3RydG9sb3dlcigkdHlwZSkpOw0KICAgICAgICANCiAgICAgICAgICAgICAgICAvL2dvdHRhIGJlIGEgLURPTU5vZGUtIERPTUVsZW1lbnQNCiAgICAgICAgcmV0dXJuICRlbGVtIGluc3RhbmNlb2YgRE9NRWxlbWVudCAmJiANCiAgICAgICAgICAgICAgICAvL3dpdGggdGhlIHRhZ05hbWUgaW5wdXQNCiAgICAgICAgICAgICAgICBzdHJ0b2xvd2VyKCRlbGVtLT50YWdOYW1lKSA9PSAnaW5wdXQnICYmIA0KICAgICAgICAgICAgICAgICgNCiAgICAgICAgICAgICAgICAgICAgKCR0ID09ICd0ZXh0JyAmJiAhJGVsZW0tPmhhc0F0dHJpYnV0ZSgndHlwZScpKSB8fA0KICAgICAgICAgICAgICAgICAgICAoJHQgPT0gJ2J1dHRvbicgJiYgc3RydG9sb3dlcigkZS0+dGFnTmFtZSkgPT0gImJ1dHRvbiIpIHx8IA0KICAgICAgICAgICAgICAgICAgICAoDQogICAgICAgICAgICAgICAgICAgICAgICAvL2FuZCB0aGUgYXR0cmlidXRlIHR5cGUNCiAgICAgICAgICAgICAgICAgICAgICAgICRlbGVtLT5oYXNBdHRyaWJ1dGUoJ3R5cGUnKSAmJiANCiAgICAgICAgICAgICAgICAgICAgICAgIC8vdGhlIGF0dHJpYnV0ZSB0eXBlIHNob3VsZCBtYXRjaCB0aGUgZ2l2ZW4gdmFyaWFibGUgdHlwZSBjYXNlIGluc2Vuc2l0aXZlDQogICAgICAgICAgICAgICAgICAgICAgICB0cmltKHN0cnRvbG93ZXIoJGVsZW0tPmdldEF0dHJpYnV0ZSgndHlwZScpKSkgPT0gJHQNCiAgICAgICAgICAgICAgICAgICAgKQ0KICAgICAgICAgICAgICAgICk7DQogICAgfQ0KICAgIA0KICAgIC8qKg0KICAgICAqICAgIEEgdXRpbGl0eSBmdW5jdGlvbiBmb3IgbWFraW5nIGFuIGl0ZXJhYmxlIG9iamVjdCBpbnRvIGFuIGFycmF5DQogICAgICoNCiAgICAgKiAgICBAc3RhdGljDQogICAgICogICAgQGFjY2VzcyBwdWJsaWMNCiAgICAgKg0KICAgICAqICAgIEBwYXJhbSBhcnJheXxUcmF2ZXJzYWJsZSAkYXJyDQogICAgICoNCiAgICAgKiAgICBAcmV0dXJuIGFycmF5DQogICAgICovDQogICAgcHVibGljIHN0YXRpYyBmdW5jdGlvbiBtYWtlQXJyYXkgKCYkYXJyKQ0KICAgIHsNCiAgICAgICAgaWYgKGlzX2FycmF5KCRhcnIpKQ0KICAgICAgICB7DQogICAgICAgICAgICByZXR1cm4gYXJyYXlfdmFsdWVzKCRhcnIpOw0KICAgICAgICB9DQogICAgICAgIA0KICAgICAgICAkcmV0ID0gYXJyYXkoKTsNCiAgICAgICAgDQogICAgICAgIGlmICgkYXJyKQ0KICAgICAgICB7DQogICAgICAgICAgICBmb3JlYWNoICgkYXJyIGFzICRlbGVtKQ0KICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICRyZXRbY291bnQoJHJldCldID0gJGVsZW07DQogICAgICAgICAgICB9DQogICAgICAgIH0NCiAgICAgICAgDQogICAgICAgIHJldHVybiAkcmV0Ow0KICAgIH0NCiAgICANCiAgICAvKioNCiAgICAgKiAgICBBIHV0aWxpdHkgZnVuY3Rpb24gZm9yIHN0cmlwcGluZyBkdXBsaWNhdGUgZWxlbWVudHMgZnJvbSBhbiBhcnJheQ0KICAgICAqICAgIHdvcmtzIG9uIERPTU5vZGVzDQogICAgICoNCiAgICAgKiAgICBAc3RhdGljDQogICAgICogICAgQGFjY2VzcyBwdWJsaWMNCiAgICAgKg0KICAgICAqICAgIEBwYXJhbSBhcnJheXxUcmF2ZXJzYWJsZSAkYXJyDQogICAgICoNCiAgICAgKiAgICBAcmV0dXJucyBhcnJheQ0KICAgICAqLw0KICAgIHB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gdW5pcXVlICgmJGFycikNCiAgICB7DQogICAgICAgIC8vZmlyc3Qgc3RlcCBtYWtlIHN1cmUgYWxsIHRoZSBlbGVtZW50cyBhcmUgdW5pcXVlDQogICAgICAgICRuZXcgPSBhcnJheSgpOw0KICAgICAgICANCiAgICAgICAgZm9yZWFjaCAoJGFyciBhcyAkY3VycmVudCkNCiAgICAgICAgew0KICAgICAgICAgICAgaWYgKA0KICAgICAgICAgICAgICAgIC8vaWYgdGhlIG5ldyBhcnJheSBpcyBlbXB0eQ0KICAgICAgICAgICAgICAgIC8vanVzdCBwdXQgdGhlIGVsZW1lbnQgaW4gdGhlIGFycmF5DQogICAgICAgICAgICAgICAgZW1wdHkoJG5ldykgfHwgDQogICAgICAgICAgICAgICAgKA0KICAgICAgICAgICAgICAgICAgICAvL2lmIGl0IGlzIG5vdCBhbiBpbnN0YW5jZSBvZiBhIERPTU5vZGUNCiAgICAgICAgICAgICAgICAgICAgLy9ubyBuZWVkIHRvIGNoZWNrIGZvciBpc1NhbWVOb2RlDQogICAgICAgICAgICAgICAgICAgICEoJGN1cnJlbnQgaW5zdGFuY2VvZiBET01Ob2RlKSAmJiANCiAgICAgICAgICAgICAgICAgICAgIWluX2FycmF5KCRjdXJyZW50LCAkbmV3KQ0KICAgICAgICAgICAgICAgICkgfHwgDQogICAgICAgICAgICAgICAgLy9kbyBET01Ob2RlIHRlc3Qgb24gYXJyYXkNCiAgICAgICAgICAgICAgICBzZWxmOjppbkFycmF5KCRjdXJyZW50LCAkbmV3KSA8IDANCiAgICAgICAgICAgICkNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAkbmV3W10gPSAkY3VycmVudDsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfQ0KICAgICAgICANCiAgICAgICAgcmV0dXJuICRuZXc7DQogICAgfQ0KICAgIA0KICAgIC8qKg0KICAgICAqICAgIEEgdXRpbGl0eSBmdW5jdGlvbiBmb3IgZGV0ZXJtaW5pbmcgdGhlIHBvc2l0aW9uIG9mIGFuIGVsZW1lbnQgaW4gYW4gYXJyYXkNCiAgICAgKiAgICB3b3JrcyBvbiBET01Ob2RlcywgcmV0dXJucyAtMSBvbiBmYWlsdXJlDQogICAgICoNCiAgICAgKiAgICBAc3RhdGljDQogICAgICogICAgQGFjY2VzcyBwdWJsaWMNCiAgICAgKg0KICAgICAqICAgIEBwYXJhbSBtaXhlZCAkZWxlbQ0KICAgICAqICAgIEBwYXJhbSBhcnJheXxUcmF2ZXJzYWJsZSAkYXJyDQogICAgICoNCiAgICAgKiAgICBAcmV0dXJucyBpbnRlZ2VyDQogICAgICovDQogICAgcHVibGljIHN0YXRpYyBmdW5jdGlvbiBpbkFycmF5IChET01Ob2RlICYkZWxlbSwgJGFycikNCiAgICB7DQogICAgICAgICRpID0gMDsNCiAgICAgICAgDQogICAgICAgIGZvcmVhY2ggKCRhcnIgYXMgJGN1cnJlbnQpDQogICAgICAgIHsNCiAgICAgICAgICAgIC8vaWYgaXQgaXMgYW4gaWRlbnRpY2FsIG9iamVjdCBvciBhIERPTUVsZW1lbnQgdGhhdCByZXByZXNlbnRzIHRoZSBzYW1lIG5vZGUNCiAgICAgICAgICAgIGlmICgkY3VycmVudCA9PT0gJGVsZW0gfHwgKCRjdXJyZW50IGluc3RhbmNlb2YgRE9NTm9kZSAmJiAkY3VycmVudC0+aXNTYW1lTm9kZSgkZWxlbSkpKQ0KICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgIHJldHVybiAkaTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgICAgIA0KICAgICAgICAgICAgJGkgKz0gMTsNCiAgICAgICAgfQ0KICAgICAgICANCiAgICAgICAgcmV0dXJuIC0xOw0KICAgIH0NCiAgICANCiAgICAvKioNCiAgICAgKiAgICBBIHV0aWxpdHkgZnVuY3Rpb24gZm9yIGZpbHRlcmluZyBlbGVtZW50cyBmcm9tIGFuIGFycmF5IG9yIGFycmF5LWxpa2Ugb2JqZWN0DQogICAgICoNCiAgICAgKiAgICBAc3RhdGljDQogICAgICogICAgQGFjY2VzcyBwdWJsaWMNCiAgICAgKg0KICAgICAqICAgIEBwYXJhbSBtaXhlZCAkZWxlbQ0KICAgICAqICAgIEBwYXJhbSBhcnJheXxUcmF2ZXJzYWJsZSAkYXJyDQogICAgICoNCiAgICAgKiAgICBAcmV0dXJucyBhcnJheQ0KICAgICAqLw0KICAgIHB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gZmlsdGVyICgkYXJyYXksICRmdW5jKQ0KICAgIHsNCiAgICAgICAgJHJldCA9IGFycmF5KCk7DQogICAgICAgIA0KICAgICAgICBpZiAoIWlzX2NhbGxhYmxlKCRmdW5jKSkNCiAgICAgICAgew0KICAgICAgICAgICAgcmV0dXJuICRhcnJheTsNCiAgICAgICAgfQ0KICAgICAgICANCiAgICAgICAgZm9yZWFjaCAoJGFycmF5IGFzICRuID0+ICR2KQ0KICAgICAgICB7DQogICAgICAgICAgICBpZiAoZmFsc2UgIT09IGNhbGxfdXNlcl9mdW5jKCRmdW5jLCAkdiwgJG4sICRhcnJheSwgJHRoaXMpKQ0KICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICRyZXRbXSA9ICR2Ow0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgICAgIA0KICAgICAgICByZXR1cm4gJHJldDsNCiAgICB9DQogICAgDQogICAgLyoqDQogICAgICogICAgQSBzdGF0aWMgZnVuY3Rpb24gZGVzaWduZWQgdG8gbWFrZSBpdCBlYXNpZXIgdG8gZ2V0IHRoZSBpbmZvDQogICAgICoNCiAgICAgKiAgICBAc3RhdGljDQogICAgICogICAgQGFjY2VzcyBwdWJsaWMNCiAgICAgKg0KICAgICAqICAgIEBwYXJhbSBzdHJpbmcgJHF1ZXJ5DQogICAgICogICAgQHBhcmFtIG1peGVkICRjb250ZXh0DQogICAgICogICAgQHBhcmFtIGFycmF5fFRyYXZlcnNhYmxlICRyZXQgLSBwYXNzZWQgYnkgcmVmZXJlbmNlDQogICAgICoNCiAgICAgKiAgICBAcmV0dXJuIGFycmF5DQogICAgICovDQogICAgcHVibGljIHN0YXRpYyBmdW5jdGlvbiBmaW5kICgkcXVlcnksICRjb250ZXh0LCAkcmV0PW51bGwpDQogICAgew0KICAgICAgICAkbmV3ID0gYXJyYXkoKTsNCiAgICAgICAgDQogICAgICAgIC8vcXVlcnkgdXNpbmcgRE9NRG9jdW1lbnQNCiAgICAgICAgaWYgKCRjb250ZXh0IGluc3RhbmNlb2YgRE9NRG9jdW1lbnQpDQogICAgICAgIHsNCiAgICAgICAgICAgICRjc3MgPSBuZXcgc2VsZigkY29udGV4dCk7DQogICAgICAgICAgICAkbmV3ID0gJGNzcy0+cXVlcnkoJHF1ZXJ5KTsNCiAgICAgICAgfQ0KICAgICAgICBlbHNlaWYgKCRjb250ZXh0IGluc3RhbmNlb2YgRE9NTm9kZUxpc3QpDQogICAgICAgIHsNCiAgICAgICAgICAgIGlmICgkY29udGV4dC0+bGVuZ3RoKQ0KICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICRjc3MgPSBuZXcgc2VsZigkY29udGV4dC0+aXRlbSgwKS0+b3duZXJEb2N1bWVudCk7DQogICAgICAgICAgICAgICAgJG5ldyA9ICRjc3MtPnF1ZXJ5KCRxdWVyeSwgJGNvbnRleHQpOw0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgICAgIC8vc2hvdWxkIGJlIGFuIGFycmF5IGlmIGl0IGlzbid0IGEgRE9NTm9kZQ0KICAgICAgICAvL2luIHdoaWNoIGNhc2UgdGhlIGZpcnN0IGVsZW1lbnQgc2hvdWxkIGJlIGEgRE9NTm9kZQ0KICAgICAgICAvL3JlcHJlc2VudGluZyB0aGUgZGVzaXJlZCBjb250ZXh0DQogICAgICAgIGVsc2VpZiAoISgkY29udGV4dCBpbnN0YW5jZW9mIERPTU5vZGUpICYmIGNvdW50KCRjb250ZXh0KSkNCiAgICAgICAgew0KICAgICAgICAgICAgJGNzcyA9IG5ldyBzZWxmKCRjb250ZXh0WzBdLT5vd25lckRvY3VtZW50KTsNCiAgICAgICAgICAgICRuZXcgPSAkY3NzLT5xdWVyeSgkcXVlcnksICRjb250ZXh0KTsNCiAgICAgICAgfQ0KICAgICAgICAvL290aGVyd2lzZSB1c2UgdGhlIG93bmVyRG9jdW1lbnQgYW5kIHRoZSBjb250ZXh0IGFzIHRoZSBjb250ZXh0IG9mIHRoZSBxdWVyeQ0KICAgICAgICBlbHNlDQogICAgICAgIHsNCiAgICAgICAgICAgICRjc3MgPSBuZXcgc2VsZigkY29udGV4dC0+b3duZXJEb2N1bWVudCk7DQogICAgICAgICAgICAkbmV3ID0gJGNzcy0+cXVlcnkoJHF1ZXJ5LCAkY29udGV4dCk7DQogICAgICAgIH0NCiAgICAgICAgDQogICAgICAgIC8vaWYgdGhlcmUgaXMgYSBwbGFjZSB0byBzdG9yZSB0aGUgbmV3bHkgc2VsZWN0ZWQgZWxlbWVudHMNCiAgICAgICAgaWYgKCRyZXQpDQogICAgICAgIHsNCiAgICAgICAgICAgIC8vYXBwZW5kIHRoZSBuZXdseSBzZWxlY3RlZCBlbGVtZW50cyB0byB0aGUgZ2l2ZW4gYXJyYXl8b2JqZWN0DQogICAgICAgICAgICAvL29yIGlmIGl0IGlzIGFuIGluc3RhbmNlIG9mIEFycmF5QWNjZXNzIGp1c3QgcHVzaCBpdCBvbiB0byB0aGUgb2JqZWN0DQogICAgICAgICAgICBpZiAoaXNfYXJyYXkoJHJldCkpDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgJG5ldyA9IGFycmF5X21lcmdlKCRyZXQsICRuZXcpOw0KICAgICAgICAgICAgICAgICRuZXcgPSBzZWxmOjp1bmlxdWUoJG5ldyk7DQogICAgICAgICAgICAgICAgJHJldCA9ICRuZXc7DQogICAgICAgICAgICB9DQogICAgICAgICAgICBlbHNlaWYgKGlzX29iamVjdCgkcmV0KSkNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICBpZiAoJHJldCBpbnN0YW5jZW9mIEFycmF5QWNjZXNzKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgZm9yZWFjaCAoJG5ldyBhcyAkZWxlbSkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgJHJldFtjb3VudCgkcmV0KV0gPSAkZWxlbTsNCiAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAvL2FwcGVuZGluZyBlbGVtZW50cyB0byBhIERPTURvY3VtZW50RnJhZ21lbnQgaXMgYSBmYXN0IHdheSB0byBtb3ZlIHRoZW0gYXJvdW5kDQogICAgICAgICAgICAgICAgZWxzZWlmICgkcmV0IGluc3RhbmNlb2YgRE9NRG9jdW1lbnRGcmFnbWVudCkNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIGZvcmVhY2ggKCRuZXcgYXMgJGVsZW0pDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIC8vYXBwZW5kQ2hpbGQsIGJ1dCBkb24ndCBmb3JnZXQgdG8gdmVyaWZ5IHNhbWUgZG9jdW1lbnQNCiAgICAgICAgICAgICAgICAgICAgICAgICRyZXQtPmFwcGVuZENoaWxkKAkhJHJldC0+b3duZXJEb2N1bWVudC0+aXNTYW1lTm9kZSgkZWxlbS0+b3duZXJEb2N1bWVudCkgDQoJCQkJCQkJCQkJCT8gJHJldC0+b3duZXJEb2N1bWVudC0+aW1wb3J0Tm9kZSgkZWxlbSwgdHJ1ZSkgDQoJCQkJCQkJCQkJCTogJGVsZW0pOw0KICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIC8vb3RoZXJ3aXNlIHdlIG5lZWQgdG8gZmluZCBhIG1ldGhvZCB0byB1c2UgdG8gYXR0YWNoIHRoZSBlbGVtZW50cw0KICAgICAgICAgICAgICAgIGVsc2VpZiAoKCRtID0gbWV0aG9kX2V4aXN0cygkcmV0LCAncHVzaCcpKSB8fCBtZXRob2RfZXhpc3RzKCRyZXQsICdhZGQnKSkNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICRtZXRob2QgPSAkbSA/ICdwdXNoJyA6ICdhZGQnOw0KICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgZm9yZWFjaCAoJG5ldyBhcyAkZWxlbSkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgJHJldC0+JG1ldGhvZCgkZWxlbSk7DQogICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgZWxzZWlmICgoJG0gPSBtZXRob2RfZXhpc3RzKCRyZXQsICdjb25jYXQnKSkgfHwgbWV0aG9kX2V4aXN0cygkcmV0LCAnY29uY2F0ZW5hdGUnKSkNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICRtZXRob2QgPSAkbSA/ICdjb25jYXQnIDogJ2NvbmNhdGVuYXRlJzsNCiAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICRyZXQtPiRtZXRob2QoJG5ldyk7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgLy90aGlzIHdpbGwgc2F2ZSB0aGUgc2VsZWN0ZWQgZWxlbWVudHMgaW50byBhIHN0cmluZw0KICAgICAgICAgICAgZWxzZWlmIChpc19zdHJpbmcoJHJldCkpDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgZm9yZWFjaCAoJG5ldyBhcyAkZWxlbSkNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICRyZXQgLj0gJGVsZW0tPm93bmVyRG9jdW1lbnQtPnNhdmVYTUwoJGVsZW0pOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0NCiAgICAgICAgfQ0KICAgICAgICANCiAgICAgICAgcmV0dXJuICRuZXc7DQogICAgfQ0KfQ0KDQovKioNCiAqICAgIHRoaXMgY3JlYXRlcyB0aGUgZGVmYXVsdCBmaWx0ZXJzIGFycmF5IG9uIHRoZSBDU1NRdWVyeSBvYmplY3QNCiAqDQogKiAgICA8Y29kZT4NCiAqICAgICAgICAvL3Byb3RvdHlwZSBmdW5jdGlvbiAoRE9NTm9kZSAkZWxlbWVudCwgaW50ZWdlciAkaSwgYXJyYXkgJG1hdGNoZXMsIGFycmF5ICRjb250ZXh0LCBDU1NRdWVyeSAkY3NzUXVlcnkpOw0KICogICAgICAgIENTU1F1ZXJ5OjokZmlsdGVyc1snbXlmaWx0ZXInXSA9IGNyZWF0ZV9mdW5jdGlvbignJywgJycpOw0KICogICAgICAgIA0KICogICAgPC9jb2RlPg0KICovDQpDU1NRdWVyeTo6JGZpbHRlcnMgPSBuZXcgUmVjdXJzaXZlQXJyYXlJdGVyYXRvcihhcnJheSgNCiAgICAvL0NTUzMgc2VsZWN0b3JzDQogICAgJ2ZpcnN0LWNoaWxkJyAgICAgICAgPT4gY3JlYXRlX2Z1bmN0aW9uKCdET01Ob2RlICYkZSwkaSwmJG0sJiRhLENTU1F1ZXJ5ICYkYycsICAgICAncmV0dXJuICEkZS0+aXNTYW1lTm9kZSgkZS0+b3duZXJEb2N1bWVudC0+ZG9jdW1lbnRFbGVtZW50KSAmJiANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRjLT54cGF0aC0+cXVlcnkoIi4uLypbcG9zaXRpb24oKT0xXSIsICRlKS0+aXRlbSgwKS0+aXNTYW1lTm9kZSgkZSk7JyksDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiAgICAnbGFzdC1jaGlsZCcgICAgICAgICA9PiBjcmVhdGVfZnVuY3Rpb24oJ0RPTU5vZGUgJiRlLCRpLCYkbSwmJGEsQ1NTUXVlcnkgJiRjJywgICAgICdyZXR1cm4gISRlLT5pc1NhbWVOb2RlKCRlLT5vd25lckRvY3VtZW50LT5kb2N1bWVudEVsZW1lbnQpICYmIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGMtPnhwYXRoLT5xdWVyeSgiLi4vKltsYXN0KCldIiwgJGUpLT5pdGVtKDApLT5pc1NhbWVOb2RlKCRlKTsnKSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KICAgICdvbmx5LWNoaWxkJyAgICAgICAgID0+IGNyZWF0ZV9mdW5jdGlvbignRE9NTm9kZSAmJGUsJGksJiRtLCYkYSxDU1NRdWVyeSAmJGMnLCAgICAgJ3JldHVybiAhJGUtPmlzU2FtZU5vZGUoJGUtPm93bmVyRG9jdW1lbnQtPmRvY3VtZW50RWxlbWVudCkgJiYgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZS0+cGFyZW50Tm9kZS0+Z2V0RWxlbWVudHNCeVRhZ05hbWUoIioiKS0+bGVuZ3RoID09IDE7JyksDQogICAgDQogICAgJ2NoZWNrZWQnICAgICAgICAgICAgPT4gY3JlYXRlX2Z1bmN0aW9uKCdET01Ob2RlICYkZScsICAgICAgICAgICAgICAncmV0dXJuIHN0cnRvbG93ZXIoJGUtPnRhZ05hbWUpID09ICJpbnB1dCIgJiYgJGUtPmhhc0F0dHJpYnV0ZSgiY2hlY2tlZCIpOycpLA0KCQ0KICAgICdkaXNhYmxlZCcgICAgICAgICAgID0+IGNyZWF0ZV9mdW5jdGlvbignRE9NTm9kZSAmJGUnLCAgICAgICAgICAgICAgJ3JldHVybiAkZS0+aGFzQXR0cmlidXRlKCJkaXNhYmxlZCIpICYmIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJpc3RyKCJ8aW5wdXR8dGV4dGFyZWF8c2VsZWN0fGJ1dHRvbnwiLCAifCIuJGUtPnRhZ05hbWUuInwiKSAhPT0gZmFsc2U7JyksDQoJCQkJCQkJCQkJCQkJCQkJCQkJCQ0KICAgICdlbmFibGVkJyAgICAgICAgICAgID0+IGNyZWF0ZV9mdW5jdGlvbignRE9NTm9kZSAmJGUnLCAgICAgICAgICAgICAgJ3JldHVybiAhJGUtPmhhc0F0dHJpYnV0ZSgiZGlzYWJsZWQiKSAmJiANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cmlzdHIoInxpbnB1dHx0ZXh0YXJlYXxzZWxlY3R8YnV0dG9ufCIsICJ8Ii4kZS0+dGFnTmFtZSAuICJ8IikgIT09IGZhbHNlICYmDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoISRlLT5oYXNBdHRyaWJ1dGUoInR5cGUiKSB8fCBzdHJ0b2xvd2VyKCRlLT5nZXRBdHRyaWJ1dGUoInR5cGUiKSkgIT0gImhpZGRlbiIpOycpLA0KICAgIC8vbnRoIGNoaWxkIHNlbGVjdG9ycw0KICAgICJudGgtY2hpbGQiICAgICAgICAgICA9PiBjcmVhdGVfZnVuY3Rpb24oJ0RPTU5vZGUgJiRlLCRpLCYkbSwmJGEsQ1NTUXVlcnkgJiRjJywgICAgICdyZXR1cm4gQ1NTUXVlcnk6Om50aENoaWxkKCRlLCAibnRoLWNoaWxkIiwgICAgICAgICAgICAkbVszXSwgJGMtPnhwYXRoKTsnKSwNCiAgICAibnRoLWxhc3QtY2hpbGQiICAgICAgPT4gY3JlYXRlX2Z1bmN0aW9uKCdET01Ob2RlICYkZSwkaSwmJG0sJiRhLENTU1F1ZXJ5ICYkYycsICAgICAncmV0dXJuIENTU1F1ZXJ5OjpudGhDaGlsZCgkZSwgIm50aC1sYXN0LWNoaWxkIiwgICAgICAgJG1bM10sICRjLT54cGF0aCk7JyksDQogICAgIm50aC1vZi10eXBlIiAgICAgICAgID0+IGNyZWF0ZV9mdW5jdGlvbignRE9NTm9kZSAmJGUsJGksJiRtLCYkYSxDU1NRdWVyeSAmJGMnLCAgICAgJ3JldHVybiBDU1NRdWVyeTo6bnRoQ2hpbGQoJGUsICJudGgtb2YtdHlwZSIsICAgICAgICAgICRtWzNdLCAkYy0+eHBhdGgpOycpLA0KICAgICJudGgtbGFzdC1vZi10eXBlIiAgICA9PiBjcmVhdGVfZnVuY3Rpb24oJ0RPTU5vZGUgJiRlLCRpLCYkbSwmJGEsQ1NTUXVlcnkgJiRjJywgICAgICdyZXR1cm4gQ1NTUXVlcnk6Om50aENoaWxkKCRlLCAibnRoLWxhc3Qtb2YtdHlwZSIsICAgICAkbVszXSwgJGMtPnhwYXRoKTsnKSwNCiAgICANCiAgICAiZmlyc3Qtb2YtdHlwZSIgPT4gY3JlYXRlX2Z1bmN0aW9uKCdET01Ob2RlICYkZSwkaSwmJG0sJiRhLENTU1F1ZXJ5ICYkYycsICdyZXR1cm4gY2FsbF91c2VyX2Z1bmMoQ1NTUXVlcnk6OiRmaWx0ZXJzWyJudGgtb2YtdHlwZSJdLCAgICAgJGUsICRpLCBhcnJheSgwLDEsMSwxKSwgJGEsICRjKTsnKSwNCiAgICAibGFzdC1vZi10eXBlIiAgPT4gY3JlYXRlX2Z1bmN0aW9uKCdET01Ob2RlICYkZSwkaSwmJG0sJiRhLENTU1F1ZXJ5ICYkYycsICdyZXR1cm4gY2FsbF91c2VyX2Z1bmMoQ1NTUXVlcnk6OiRmaWx0ZXJzWyJudGgtbGFzdC1vZi10eXBlIl0sJGUsICRpLCBhcnJheSgwLDEsMSwxKSwgJGEsICRjKTsnKSwNCiAgICAib25seS1vZi10eXBlIiAgPT4gY3JlYXRlX2Z1bmN0aW9uKCdET01Ob2RlICYkZSwkaSwmJG0sJiRhLENTU1F1ZXJ5ICYkYycsICdyZXR1cm4gY2FsbF91c2VyX2Z1bmMoQ1NTUXVlcnk6OiRmaWx0ZXJzWyJmaXJzdC1vZi10eXBlIl0sICAgJGUsICRpLCAkbSwgICAgICAgICAgICAgJGEsICRjKSAmJiANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FsbF91c2VyX2Z1bmMoQ1NTUXVlcnk6OiRmaWx0ZXJzWyJsYXN0LW9mLXR5cGUiXSwgICAgJGUsICRpLCAkbSwgICAgICAgICAgICAgJGEsICRjKTsnKSwNCiAgICAvL2Nsb3Nlc3QgdGhpbmcgdG8gdGhlIGxhbmcgZmlsdGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KICAgICJsYW5nIiAgICAgICAgICAgICAgICA9PiBjcmVhdGVfZnVuY3Rpb24oJ0RPTU5vZGUgJiRlLCRpLCRtLCRhLENTU1F1ZXJ5ICYkYycsICdyZXR1cm4gJGMtPnhwYXRoLT5ldmFsdWF0ZSgNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcHJpbnRmKA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiY291bnQoLi9hbmNlc3Rvci1vci1zZWxmOjoqW0BsYW5nIGFuZCAoQGxhbmcgPSIuDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiIFwiJXNcIiBvciBzdWJzdHJpbmcoQGxhbmcsIDEsICV1KT1cIiVzLVwiKV0pIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJG1bM10sIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJsZW4oJG1bM10pICsgMSwgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRtWzNdDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSwgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGUNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICkgPiAwOycpLA0KICAgIA0KICAgIC8vbmVnYXRpb24gZmlsdGVyDQogICAgIm5vdCIgICAgICAgICAgICAgICAgID0+IGNyZWF0ZV9mdW5jdGlvbignRE9NTm9kZSAmJGUsJGksJG0sJGEsQ1NTUXVlcnkgJiRjJywgICdyZXR1cm4gQ1NTUXVlcnk6OmluQXJyYXkoJGUsICRjLT5xdWVyeSh0cmltKCRtWzNdKSkpID09IC0xOycpLA0KICAgIA0KICAgIC8vZWxlbWVudCBoYXMgbm8gY2hpbGQgbm9kZXMNCiAgICAiZW1wdHkiICAgICAgICAgICAgICAgPT4gY3JlYXRlX2Z1bmN0aW9uKCdET01Ob2RlICYkZScsICAgICAgICAgICAgICAgICAgICAgICAgJ3JldHVybiAhJGUtPmhhc0NoaWxkTm9kZXMoKTsnKSwNCiAgICANCiAgICAvL2VsZW1lbnQgaGFzIGNoaWxkIG5vZGVzIHRoYXQgYXJlIGVsZW1lbnRzDQogICAgInBhcmVudCIgICAgICAgICAgICAgID0+IGNyZWF0ZV9mdW5jdGlvbignRE9NTm9kZSAmJGUnLCAgICAgICAgICAgICAgICAgICAgICAgICdyZXR1cm4gKCRuID0gJGUtPmdldEVsZW1lbnRzQnlUYWdOYW1lKCIqIikpICYmICRuLT5sZW5ndGggPiAwOycpLA0KICAgIA0KICAgIC8vZ2V0IHRoZSBwYXJlbnQgbm9kZSBvZiB0aGUgY3VycmVudCBlbGVtZW50DQogICAgInBhcmVudC1ub2RlIiAgICAgICAgID0+IGNyZWF0ZV9mdW5jdGlvbignRE9NTm9kZSAmJGUsJGksJG0sJGEsQ1NTUXVlcnkgJiRjJywgICcvL2lmIHRoZXJlIGlzIG5vIGZpbHRlciBqdXN0IHJldHVybiB0aGUgZmlyc3QgcGFyZW50Tm9kZQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCEkbSB8fCAhaXNzZXQoJG1bM10pIHx8ICF0cmltKCRtWzNdKSkgcmV0dXJuICRlLT5wYXJlbnROb2RlOw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy9vdGhlcndpc2UgaWYgdGhlIGZpbHRlciBpcyBtb3JlIHRoYW4gYSB0YWdOYW1lDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gIHByZWdfbWF0Y2goIi9eKFwqfFx3KykoW15cd10rLispLyIsIHRyaW0oJG1bM10pLCAkbikgDQoJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCT8gQ1NTUXVlcnk6OmZpbmQodHJpbSgkblsyXSksICRjLT54cGF0aC0+cXVlcnkoIi4vYW5jZXN0b3I6OnskblsxXX0iLCAkZSkpIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvL2lmIHRoZSBmaWx0ZXIgaXMgb25seSBhIHRhZ05hbWUgc2F2ZSB0aGUgdHJvdWJsZQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICRjLT54cGF0aC0+cXVlcnkoc3ByaW50ZigiLi9hbmNlc3Rvcjo6JXMiLCB0cmltKCRtWzNdKSksICRlKTsnKSwNCiAgICANCiAgICAvL2dldCB0aGUgYW5jZXN0b3JzIG9mIHRoZSBjdXJyZW50IGVsZW1lbnQNCiAgICAicGFyZW50cyIgICAgICAgICAgICAgPT4gY3JlYXRlX2Z1bmN0aW9uKCdET01Ob2RlICYkZSwkaSwmJG0sJiRhLENTU1F1ZXJ5ICYkYycsICckciA9ICRjLT54cGF0aC0+cXVlcnkoIi4vYW5jZXN0b3I6OioiLCAkZSk7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gJG0gJiYgaXNzZXQoJG1bM10pICYmIHRyaW0oJG1bM10pID8gQ1NTUXVlcnk6OmZpbmQodHJpbSgkbVszXSksICRyKSA6ICRyOycpLA0KICAgIA0KICAgIC8vdGhlIGVsZW1lbnQgaGFzIG5leHRTaWJsaW5ncw0KICAgICJuZXh0LXNpYmxpbmciICAgICAgID0+IGNyZWF0ZV9mdW5jdGlvbignRE9NTm9kZSAmJGUnLCAgICAgICAgICAgICAgICAgICAgICAgICAgJ3JldHVybiAoJG4gPSAkZS0+cGFyZW50Tm9kZS0+Z2V0RWxlbWVudHNCeVRhZ05hbWUoIioiKSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYmICEkbi0+aXRlbSgkbi0+bGVuZ3RoLTEpLT5pc1NhbWVOb2RlKCRlKTsnKSwNCiAgICANCiAgICAvL3RoZSBlbGVtZW50IGhhcyBwcmV2aW91c1NpYmxpbmdzDQogICAgInByZXZpb3VzLXNpYmxpbmciICAgPT4gY3JlYXRlX2Z1bmN0aW9uKCdET01Ob2RlICYkZScsICAgICAgICAgICAgICAgICAgICAgICAgICAncmV0dXJuICEkZS0+cGFyZW50Tm9kZS0+Z2V0RWxlbWVudHNCeVRhZ05hbWUoIioiKS0+aXRlbSgwKS0+aXNTYW1lTm9kZSgkZSk7JyksDQogICAgDQogICAgLy9nZXQgdGhlIHByZXZpb3VzU2libGluZ3Mgb2YgdGhlIGN1cnJlbnQgZWxlbWVudA0KICAgICJwcmV2aW91cy1zaWJsaW5ncyIgID0+IGNyZWF0ZV9mdW5jdGlvbignRE9NTm9kZSAmJGUsJGksJiRtLCYkYSxDU1NRdWVyeSAmJGMnLCAgJyRyID0gJGMtPnhwYXRoLT5xdWVyeSgiLi9wcmVjZWRpbmctc2libGluZzo6KiIsICRlKTsgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gJG0gJiYgaXNzZXQoJG1bM10pICYmIHRyaW0oJG1bM10pID8gQ1NTUXVlcnk6OmZpbmQodHJpbSgkbVszXSksICRyKSA6ICRyOycpLA0KICAgIA0KICAgIC8vZ2V0IHRoZSBuZXh0U2libGluZ3Mgb2YgdGhlIGN1cnJlbnQgZWxlbWVudA0KICAgICJuZXh0LXNpYmxpbmdzIiAgICAgID0+IGNyZWF0ZV9mdW5jdGlvbignRE9NTm9kZSAmJGUsJGksJiRtLCYkYSxDU1NRdWVyeSAmJGMnLCAnJHIgPSAkYy0+eHBhdGgtPnF1ZXJ5KCIuL2ZvbGxvd2luZy1zaWJsaW5nOjoqIiwgJGUpOyANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAkbSAmJiBpc3NldCgkbVszXSkgJiYgdHJpbSgkbVszXSkgPyBDU1NRdWVyeTo6ZmluZCh0cmltKCRtWzNdKSwgJHIpIDogJHI7JyksDQogICAgDQogICAgLy9nZXQgYWxsIHRoZSBzaWJsaW5ncyBvZiB0aGUgY3VycmVudCBlbGVtZW50DQogICAgInNpYmxpbmdzIiAgICAgICAgICAgPT4gY3JlYXRlX2Z1bmN0aW9uKCdET01Ob2RlICYkZSwkaSwmJG0sJiRhLENTU1F1ZXJ5ICYkYycsICckciA9ICRjLT54cGF0aC0+cXVlcnkoIi4vcHJlY2VkaW5nLXNpYmxpbmc6OiogfCAuL2ZvbGxvd2luZy1zaWJsaW5nOjoqIiwgJGUpOyANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAkbSAmJiBpc3NldCgkbVszXSkgJiYgdHJpbSgkbVszXSkgPyBDU1NRdWVyeTo6ZmluZCh0cmltKCRtWzNdKSwgJHIpIDogJHI7JyksDQogICAgDQogICAgLy9zZWxlY3QgdGhlIGhlYWRlciBlbGVtZW50cw0KICAgICJoZWFkZXIiICAgICAgICAgICAgID0+IGNyZWF0ZV9mdW5jdGlvbignRE9NTm9kZSAmJGUnLCAgICAgICAgICAgICAgICAgJ3JldHVybiAoYm9vbClwcmVnX21hdGNoKCIvXmhbMS02XSQvaSIsICRlLT50YWdOYW1lKTsnKSwNCiAgICANCiAgICAvL2Zvcm0gZWxlbWVudCBzZWxlY3RvcnMNCiAgICAic2VsZWN0ZWQiICAgICAgICAgICA9PiBjcmVhdGVfZnVuY3Rpb24oJ0RPTU5vZGUgJiRlJywgICAgICAgICAgICAgICAgICdyZXR1cm4gJGUtPmhhc0F0dHJpYnV0ZSgic2VsZWN0ZWQiKTsnKSwNCiAgICANCiAgICAvL2FueSBlbGVtZW50IHRoYXQgd291bGQgYmUgY29uc2lkZXJlZCBpbnB1dCBiYXNlZCBvbiB0YWdOYW1lDQogICAgImlucHV0IiAgICAgICAgICAgICAgPT4gY3JlYXRlX2Z1bmN0aW9uKCdET01Ob2RlICYkZScsICAgICAgICAgICAgICAgICAncmV0dXJuIHN0cmlzdHIoInxpbnB1dHx0ZXh0YXJlYXxzZWxlY3R8YnV0dG9ufCIsICJ8IiAuICRlLT50YWdOYW1lIC4gInwiKSAhPT0gZmFsc2U7JyksDQogICAgLy9hbnkgaW5wdXQgZWxlbWVudCBhbmQgdHlwZQ0KICAgICJyYWRpbyIgICAgICAgICAgICAgID0+IGNyZWF0ZV9mdW5jdGlvbignRE9NTm9kZSAmJGUnLCAgICAgICAgICAgICAgICAgJ3JldHVybiBDU1NRdWVyeTo6aW5wdXRGaWx0ZXIoJGUsICJyYWRpbyIpOycpLA0KICAgICJjaGVja2JveCIgICAgICAgICAgID0+IGNyZWF0ZV9mdW5jdGlvbignRE9NTm9kZSAmJGUnLCAgICAgICAgICAgICAgICAgJ3JldHVybiBDU1NRdWVyeTo6aW5wdXRGaWx0ZXIoJGUsICJjaGVja2JveCIpOycpLA0KICAgICJmaWxlIiAgICAgICAgICAgICAgID0+IGNyZWF0ZV9mdW5jdGlvbignRE9NTm9kZSAmJGUnLCAgICAgICAgICAgICAgICAgJ3JldHVybiBDU1NRdWVyeTo6aW5wdXRGaWx0ZXIoJGUsICJmaWxlIik7JyksDQogICAgInBhc3N3b3JkIiAgICAgICAgICAgPT4gY3JlYXRlX2Z1bmN0aW9uKCdET01Ob2RlICYkZScsICAgICAgICAgICAgICAgICAncmV0dXJuIENTU1F1ZXJ5OjppbnB1dEZpbHRlcigkZSwgInBhc3N3b3JkIik7JyksDQogICAgInN1Ym1pdCIgICAgICAgICAgICAgPT4gY3JlYXRlX2Z1bmN0aW9uKCdET01Ob2RlICYkZScsICAgICAgICAgICAgICAgICAncmV0dXJuIENTU1F1ZXJ5OjppbnB1dEZpbHRlcigkZSwgInN1Ym1pdCIpOycpLA0KICAgICJpbWFnZSIgICAgICAgICAgICAgID0+IGNyZWF0ZV9mdW5jdGlvbignRE9NTm9kZSAmJGUnLCAgICAgICAgICAgICAgICAgJ3JldHVybiBDU1NRdWVyeTo6aW5wdXRGaWx0ZXIoJGUsICJpbWFnZSIpOycpLA0KICAgICJyZXNldCIgICAgICAgICAgICAgID0+IGNyZWF0ZV9mdW5jdGlvbignRE9NTm9kZSAmJGUnLCAgICAgICAgICAgICAgICAgJ3JldHVybiBDU1NRdWVyeTo6aW5wdXRGaWx0ZXIoJGUsICJyZXNldCIpOycpLA0KICAgICJidXR0b24iICAgICAgICAgICAgID0+IGNyZWF0ZV9mdW5jdGlvbignRE9NTm9kZSAmJGUnLCAgICAgICAgICAgICAgICAgJ3JldHVybiBDU1NRdWVyeTo6aW5wdXRGaWx0ZXIoJGUsICJidXR0b24iKTsnKSwNCiAgICAidGV4dCIgICAgICAgICAgICAgICA9PiBjcmVhdGVfZnVuY3Rpb24oJ0RPTU5vZGUgJiRlJywgICAgICAgICAgICAgICAgICdyZXR1cm4gQ1NTUXVlcnk6OmlucHV0RmlsdGVyKCRlLCAidGV4dCIpOycpLA0KICAgIA0KICAgIC8vbGltaXRpbmcgZmlsdGVyDQogICAgImhhcyIgICAgICAgICAgICAgICAgPT4gY3JlYXRlX2Z1bmN0aW9uKCdET01Ob2RlICYkZSwkaSwmJG0sJiRhLENTU1F1ZXJ5ICYkYycsICAgICAncmV0dXJuIGNvdW50KCRjLT5xdWVyeSgkbVszXSwgJGUpKSA+IDA7JyksDQogICAgDQogICAgLy90ZXh0IGxpbWl0aW5nIGZpbHRlcg0KICAgICJjb250YWlucyIgICAgICAgICAgID0+IGNyZWF0ZV9mdW5jdGlvbignRE9NTm9kZSAmJGUsJGksJiRtLCYkYSxDU1NRdWVyeSAmJGMnLCAgICAgJ3JldHVybiBzdHJzdHIoJGUtPnRleHRDb250ZW50LCANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmVnX3JlcGxhY2UoIi9eXHMqKFtcJ1wiXSkoLiopXFxcXDFccyokLyIsICJcXFxcMiIsICRtWzNdKSk7JyksDQogICAgIkNvbnRhaW5zIiAgICAgICAgICAgPT4gY3JlYXRlX2Z1bmN0aW9uKCdET01Ob2RlICYkZSwkaSwmJG0sJiRhLENTU1F1ZXJ5ICYkYycsICAgICAncmV0dXJuIHN0cmlzdHIoJGUtPnRleHRDb250ZW50LCANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmVnX3JlcGxhY2UoIi9eXHMqKFtcJ1wiXSkoLiopXFxcXDFccyokLyIsICJcXFxcMiIsICRtWzNdKSk7JyksDQogICAgDQogICAgLy9wb3NpdGlvbmFsIHNlbGVjdG9ycyBmb3IgdGhlIGN1cnJlbnQgbm9kZS1zZXQNCiAgICAiZmlyc3QiICAgICAgICAgICAgICA9PiBjcmVhdGVfZnVuY3Rpb24oJ0RPTU5vZGUgJiRlLCRpJywgICAgICAgICAgICAgJ3JldHVybiAkaSA9PT0gMDsnKSwNCiAgICAibGFzdCIgICAgICAgICAgICAgICA9PiBjcmVhdGVfZnVuY3Rpb24oJ0RPTU5vZGUgJiRlLCRpLCYkbSwmJGEnLCAgICAgJ3JldHVybiAkaSA9PT0gKGNvdW50KCRhKSAtIDEpOycpLA0KICAgICJsdCIgICAgICAgICAgICAgICAgID0+IGNyZWF0ZV9mdW5jdGlvbignRE9NTm9kZSAmJGUsJGksJiRtJywgICAgICAgICAncmV0dXJuICRpIDwgJG1bM107JyksDQogICAgImd0IiAgICAgICAgICAgICAgICAgPT4gY3JlYXRlX2Z1bmN0aW9uKCdET01Ob2RlICYkZSwkaSwmJG0nLCAgICAgICAgICdyZXR1cm4gJGkgPiAkbVszXTsnKSwNCiAgICAiZXEiICAgICAgICAgICAgICAgICA9PiBjcmVhdGVfZnVuY3Rpb24oJ0RPTU5vZGUgJiRlLCRpLCYkbScsICAgICAgICAgJ3JldHVybiAkaSA9PT0gaW50dmFsKCRtWzNdKTsnKSwNCiAgICANCiAgICAvL3dvcmtzIGxpa2UgbnRoLWNoaWxkIG9uIHRoZSBjdXJyZW50bHkgc2VsZWN0ZWQgbm9kZS1zZXQNCiAgICAibnRoIiAgICAgICAgICAgICAgICA9PiBjcmVhdGVfZnVuY3Rpb24oJ0RPTU5vZGUgJiRlLCRpLCYkbScsICAgICAgICAgJyRleHByID0gcHJlZ19yZXBsYWNlKCIvXHMrLyIsICIiLCBzdHJ0b2xvd2VyKHRyaW0oJG1bM10pKSk7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvL3RoZXNlIHNlbGVjdG9ycyBzZWxlY3QgYWxsIHNvIGRvbnQgd2FzdGUgdGltZSBmaWd1cmluZyB0aGVtIG91dA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICgkZXhwciA9PSAibiIgfHwgJGV4cHIgPT0gIm4rMCIgfHwgJGV4cHIgPT0gIjFuKzAiIHx8ICRleHByID09ICIxbiIpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy9ldmVuIG51bWJlcmVkIGVsZW1lbnRzDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxzZWlmICgkZXhwciA9PSAiZXZlbiIgfHwgJGV4cHIgPT0gIjJuIiB8fCAkZXhwciA9PSAiMm4rMCIpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gJGkgJSAyID09IDA7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vb2RkIG51bWJlcmVkIGVsZW1lbnRzDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxzZWlmICgkZXhwciA9PSAib2RkIiB8fCAkZXhwciA9PSAiMm4rMSIpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gJGkgJSAyICE9IDA7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vcG9zaXRpb25hbCAtIGEgbmVnYXRpdmUgcG9zaXRpb24gaXMgbm90IHN1cHBvcnRlZA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2VpZiAocHJlZ19tYXRjaCgiL14oW1wrXC1dP1xkKykkL2kiLCAkZXhwciwgJG1hdCkpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gJGkgPT0gaW50dmFsKCRtYXRbMV0pOw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvL2dyb3VwZWQgYWNjb3JkaW5nIHRvIGEgcG9zaXRpb24NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbHNlaWYgKHByZWdfbWF0Y2goIi9eKFtcK1wtXT9cZCopP24oW1wrXC1dXGQrKT8vaSIsICRleHByLCAkbWF0KSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRhID0gKGlzc2V0KCRtYXRbMl0pICYmICRtYXRbMl0gPyBpbnR2YWwoJG1hdFsyXSkgOiAwKTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGIgPSAoaXNzZXQoJG1hdFsyXSkgJiYgJG1hdFsyXSA/IGludHZhbCgkbWF0WzJdKSA6IDEpOw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gKCRhID09IDAgJiYgJGkgPT0gJGIpIHx8DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKCRhID4gMCAmJiAkaSA+PSAkYiAmJiAoJGkgLSAkYikgJSAkYSA9PSAwKSB8fA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgkYSA8IDAgJiYgJGkgPD0gJGIgJiYgKCgkYiAtICRpKSAlICgkYSAqIC0xKSkgPT0gMCk7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICcpLA0KKSwgMik7DQoNCi8qKg0KICogICAgY3JlYXRlIGEgZGVmYXVsdCBhcnJheSBvZiBhdHRyaWJ1dGUgZmlsdGVycw0KICoNCiAqICAgIDxjb2RlPg0KICogICAgICAgIC8vcHJvdG90eXBlIGZ1bmN0aW9uIChET01Ob2RlICRlbGVtZW50LCBzdHJpbmcgJGF0dHJpYnV0ZU5hbWUsIHN0cmluZyAkdmFsdWUgPSAnJywgYXJyYXkgJG1hdGNoZXMsIGFycmF5ICRjb250ZXh0PWFycmF5KCkpOw0KICogICAgICAgIENTU1F1ZXJ5OjokYXR0cmlidXRlRmlsdGVyc1snPiddID0gY3JlYXRlX2Z1bmN0aW9uKCcnLCAnJyk7DQogKiAgICAgICAgDQogKiAgICA8L2NvZGU+DQogKi8NCkNTU1F1ZXJ5OjokYXR0cmlidXRlRmlsdGVycyA9IG5ldyBSZWN1cnNpdmVBcnJheUl0ZXJhdG9yKGFycmF5KA0KICAgIC8vaGFzQXR0cmlidXRlIGFuZC9vciBhdHRyaWJ1dGUgPT0gdmFsdWUNCiAgICAiIiAgICAgID0+IGNyZWF0ZV9mdW5jdGlvbignJiRlLCYkYSwmJHY9bnVsbCcsICAgJ3JldHVybiAkZS0+aGFzQXR0cmlidXRlKCRhKTsnKSwNCiAgICAvL2hhc0F0dHJpYnV0ZSBhbmQvb3IgYXR0cmlidXRlID09IHZhbHVlDQogICAgIj0iICAgICA9PiBjcmVhdGVfZnVuY3Rpb24oJyYkZSwmJGEsJiR2PW51bGwnLCAgICdyZXR1cm4gJGUtPmhhc0F0dHJpYnV0ZSgkYSkgJiYgJGUtPmdldEF0dHJpYnV0ZSgkYSkgPT0gJHY7JyksDQogICAgLy8haGFzQXR0cmlidXRlIG9yIGF0dHJpYnV0ZSAhPSB2YWx1ZQ0KICAgICIhPSIgICAgPT4gY3JlYXRlX2Z1bmN0aW9uKCcmJGUsJiRhLCYkdicsICAgICAgICAncmV0dXJuICEkZS0+aGFzQXR0cmlidXRlKCRhKSB8fCAkZS0+Z2V0QXR0cmlidXRlKCRhKSAhPSAkdjsnKSwNCiAgICAvL2hhc0F0dHJpYnV0ZSBhbmQgdGhlIGF0dHJpYnV0ZSBiZWdpbnMgd2l0aCB2YWx1ZQ0KICAgICJePSIgICAgPT4gY3JlYXRlX2Z1bmN0aW9uKCcmJGUsJiRhLCYkdicsICAgICAgICAncmV0dXJuICRlLT5oYXNBdHRyaWJ1dGUoJGEpICYmIHN1YnN0cigkZS0+Z2V0QXR0cmlidXRlKCRhKSwgMCwgc3RybGVuKCR2KSkgPT0gJHY7JyksDQogICAgLy9oYXNBdHRyaWJ1dGUgYW5kIHRoZSBhdHRyaWJ1dGUgZW5kcyB3aXRoIHZhbHVlDQogICAgJyQ9JyAgICA9PiBjcmVhdGVfZnVuY3Rpb24oJyYkZSwmJGEsJiR2JywgICAgICAgICdyZXR1cm4gJGUtPmhhc0F0dHJpYnV0ZSgkYSkgJiYgc3Vic3RyKCRlLT5nZXRBdHRyaWJ1dGUoJGEpLCAtc3RybGVuKCR2KSkgPT0gJHY7JyksDQogICAgLy9oYXNBdHRyaWJ1dGUgYW5kIHRoZSBhdHRyaWJ1dGUgYmVnaW5zIHdpdGggdmFsdWUgLiAtDQogICAgInw9IiAgICA9PiBjcmVhdGVfZnVuY3Rpb24oJyYkZSwmJGEsJiR2JywgICAgICAgICdyZXR1cm4gJGUtPmhhc0F0dHJpYnV0ZSgkYSkgJiYgc3Vic3RyKCRlLT5nZXRBdHRyaWJ1dGUoJGEpLCAwLCBzdHJsZW4oJHYpICsgMSkgPT0gJHYuIi0iOycpLA0KICAgIC8vaGFzQXR0cmlidXRlIGFuZCBhdHRyaWJ1dGUgY29udGFpbnMgdmFsdWUNCiAgICAiKj0iICAgID0+IGNyZWF0ZV9mdW5jdGlvbignJiRlLCYkYSwmJHYnLCAgICAgICAgJ3JldHVybiAkZS0+aGFzQXR0cmlidXRlKCRhKSAmJiBzdHJzdHIoJGUtPmdldEF0dHJpYnV0ZSgkYSksICR2KTsnKSwNCiAgICANCiAgICAvL3NwZWNpYWwNCiAgICAvL2hhc0F0dHJpYnV0ZSBhbmQgYXR0cmlidXRlIGNvbnRhaW5zIHZhbHVlIC0gY2FzZSBpbnNlbnNpdGl2ZQ0KICAgICIlPSIgICAgPT4gY3JlYXRlX2Z1bmN0aW9uKCcmJGUsJiRhLCYkdicsICAgICAgICAncmV0dXJuICRlLT5oYXNBdHRyaWJ1dGUoJGEpICYmIHN0cmlzdHIoJGUtPmdldEF0dHJpYnV0ZSgkYSksICR2KTsnKSwNCiAgICAvL2hhc0F0dHJpYnV0ZSBhbmQgdGhlIGF0dHJyaWJ1dGVzIHZhbHVlIG1hdGNoZXMgdGhlIGdpdmVuIFBDUkUgcGF0dGVybg0KICAgICJAPSIgICAgPT4gY3JlYXRlX2Z1bmN0aW9uKCcmJGUsJiRhLCYkdicsICAgICAgICAncmV0dXJuICRlLT5oYXNBdHRyaWJ1dGUoJGEpICYmIHByZWdfbWF0Y2goJHYsICRlLT5nZXRBdHRyaWJ1dGUoJGEpKTsnKSwNCiksIDIpOw0KDQo/Pg0KDQo=]]></data>
	</file>
	<file>
	  <filename>/CSSQuery_test.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCi8qKg0KICoJVGhlIENTU1F1ZXJ5IG9iamVjdCBoYXMgZmFyIHRvbyBtYW55IHZhcmlhdGlvbnMNCiAqCXRvIHRlc3QgYWxsIG9mIHRoZW0sIGJ1dCBoZXJlIGFyZSB0aGUgbW9zdCBwb3B1bGFyDQogKg0KICogICAgQ0hBTkdFUyAtIA0KICogICAgICAgIDA4LTA1LTIwMDkgLSBjb3JyZWN0ZWQgbXkgaG9ycmlibGUgdHlwaW5nIGVycm9ycw0KICovDQoNCg0KZXJyb3JfcmVwb3J0aW5nKEVfQUxMIHwgRV9TVFJJQ1QpOw0KDQovL2xvYWQgdGhlIENTU1F1ZXJ5IGNsYXNzIGZpbGUNCnJlcXVpcmUgJ0NTU1F1ZXJ5LnBocCc7DQoNCiRiciA9ICJcbiI7Ly8iXG48YnI+IjsNCg0KJFRSVUUgPSAnVFJVRSc7DQokRkFMU0UgPSAnRkFMU0UnOw0KDQovL2VzdGFibGlzaCBhIERPTURvY3VtZW50IG9iamVjdA0KJGRvYyA9IG5ldyBET01Eb2N1bWVudCgpOw0KLy9sb2FkIHNvbWUgSFRNTCBmb3IgdGVzdGluZw0KJGRvYy0+bG9hZEhUTUwoJzwhRE9DVFlQRSBodG1sIFBVQkxJQyAiLS8vVzNDLy9EVEQgWEhUTUwgMS4wIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi94aHRtbDEvRFREL3hodG1sMS10cmFuc2l0aW9uYWwuZHRkIj4NCjxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj48IS0tIHhtbG5zOnhzZD0idXJpOnNhbSI+LS0+DQoJCQkJCQk8Ym9keT4NCgkJCQkJCQk8aDM+SGVhZGVyIDM8L2gzPg0KCQkJCQkJCTx0YWJsZSBpZD0iZGF0YXNldCI+DQoJCQkJCQkJCTx0cj4NCgkJCQkJCQkJCTx0ZD5jb2x1bW4gMTwvdGQ+DQoJCQkJCQkJCQk8dGQ+Y29sdW1uIDI8L3RkPg0KCQkJCQkJCQkJPHRkPmNvbHVtbiAzPC90ZD4NCgkJCQkJCQkJCTx0ZD5jb2x1bW4gNDwvdGQ+DQoJCQkJCQkJCQk8dGQ+Y29sdW1uIDU8L3RkPg0KCQkJCQkJCQk8L3RyPg0KCQkJCQkJCQk8dHI+DQoJCQkJCQkJCQk8dGQ+Y29sdW1uIDE8L3RkPg0KCQkJCQkJCQkJPHRkPmNvbHVtbiAyPC90ZD4NCgkJCQkJCQkJCTx0ZD5jb2x1bW4gMzwvdGQ+DQoJCQkJCQkJCQk8dGQ+Y29sdW1uIDQ8L3RkPg0KCQkJCQkJCQkJPHRkPmNvbHVtbiA1PC90ZD4NCgkJCQkJCQkJPC90cj4NCgkJCQkJCQkJPHRyPg0KCQkJCQkJCQkJPHRkPmNvbHVtbiAxPC90ZD4NCgkJCQkJCQkJCTx0ZD5jb2x1bW4gMjwvdGQ+DQoJCQkJCQkJCQk8dGQ+Y29sdW1uIDM8L3RkPg0KCQkJCQkJCQkJPHRkPmNvbHVtbiA0PC90ZD4NCgkJCQkJCQkJCTx0ZD5jb2x1bW4gNTwvdGQ+DQoJCQkJCQkJCTwvdHI+DQoJCQkJCQkJCTx0cj4NCgkJCQkJCQkJCTx0ZD5jb2x1bW4gMTwvdGQ+DQoJCQkJCQkJCQk8dGQ+Y29sdW1uIDI8L3RkPg0KCQkJCQkJCQkJPHRkPmNvbHVtbiAzPC90ZD4NCgkJCQkJCQkJCTx0ZD5jb2x1bW4gNDwvdGQ+DQoJCQkJCQkJCQk8dGQ+Y29sdW1uIDU8L3RkPg0KCQkJCQkJCQk8L3RyPg0KCQkJCQkJCQk8dHI+DQoJCQkJCQkJCQk8dGQ+Y29sdW1uIDE8L3RkPg0KCQkJCQkJCQkJPHRkPmNvbHVtbiAyPC90ZD4NCgkJCQkJCQkJCTx0ZD5jb2x1bW4gMzwvdGQ+DQoJCQkJCQkJCQk8dGQ+Y29sdW1uIDQ8L3RkPg0KCQkJCQkJCQkJPHRkPmNvbHVtbiA1PC90ZD4NCgkJCQkJCQkJPC90cj4NCgkJCQkJCQkJPHRyPg0KCQkJCQkJCQkJPHRkPmNvbHVtbiAxPC90ZD4NCgkJCQkJCQkJCTx0ZD5jb2x1bW4gMjwvdGQ+DQoJCQkJCQkJCQk8dGQ+Y29sdW1uIDM8L3RkPg0KCQkJCQkJCQkJPHRkPmNvbHVtbiA0PC90ZD4NCgkJCQkJCQkJCTx0ZD5jb2x1bW4gNTwvdGQ+DQoJCQkJCQkJCTwvdHI+DQoJCQkJCQkJCTx0cj4NCgkJCQkJCQkJCTx0ZD5jb2x1bW4gMTwvdGQ+DQoJCQkJCQkJCQk8dGQ+Y29sdW1uIDI8L3RkPg0KCQkJCQkJCQkJPHRkPmNvbHVtbiAzPC90ZD4NCgkJCQkJCQkJCTx0ZD5jb2x1bW4gNDwvdGQ+DQoJCQkJCQkJCQk8dGQ+Y29sdW1uIDU8L3RkPg0KCQkJCQkJCQk8L3RyPg0KCQkJCQkJCQk8dHI+DQoJCQkJCQkJCQk8dGQ+Y29sdW1uIDE8L3RkPg0KCQkJCQkJCQkJPHRkPmNvbHVtbiAyPC90ZD4NCgkJCQkJCQkJCTx0ZD5jb2x1bW4gMzwvdGQ+DQoJCQkJCQkJCQk8dGQ+Y29sdW1uIDQ8L3RkPg0KCQkJCQkJCQkJPHRkPmNvbHVtbiA1PC90ZD4NCgkJCQkJCQkJPC90cj4NCgkJCQkJCQk8L3RhYmxlPg0KCQkJCQkJCTxwIGNsYXNzPSJzZWNvbmQtY2xhc3MtbmFtZSBwYXJhZ3JhcGggdGVzdGluZyI+DQoJCQkJCQkJCTxzcGFuIGlkPSJzcGFubmVyIiBjbGFzcz0ic29tZXdoZXJlIj4NCgkJCQkJCQkJCTxhIG5hbWU9ImFuY2hvciI+DQoJCQkJCQkJCQkJPGltZyBzcmM9ImphdmFzY3JpcHQ6OyIgYWx0PSJlbXB0eSIgY2xhc3M9InRlc3RpbmciLz4NCgkJCQkJCQkJCTwvYT4NCgkJCQkJCQkJPC9zcGFuPjxiIGNsYXNzPSJ0ZXN0aW5nIj5BZGphY2VudCBzaUJMaW5nPC9iPjxpPkdlbmVyYWwgc2libGluZzwvaT4NCgkJCQkJCQk8L3A+DQoJCQkJCQkJPHA+DQoJCQkJCQkJCTxzcGFuPkVNcHR5PC9zcGFuPg0KCQkJCQkJCQk8dT5BZGphY2VudCBzaWJsaW5nPC91Pg0KCQkJCQkJCQk8Yj5HZW5lcmFsIHNpYmxpbmc8L2I+DQoJCQkJCQkJPC9wPg0KCQkJCQkJCTxpPiBtb25rZXkgd3JlbmNoPC9pPg0KCQkJCQkJCTxhIGhyZWY9IiMiPkp1c3QgYW5vdGhlciB0ZXN0PC9hPg0KCQkJCQkJCTxpbnB1dCBkaXNhYmxlZC8+DQoJCQkJCQkJPGlucHV0IHR5cGU9ImNoZWNrYm94IiBjaGVja2VkLz4NCgkJCQkJCQk8IS0tPGRpdiB4c2Q6dGVzdGluZz0idGVzdCIvPi0tPg0KCQkJCQkJPC9ib2R5Pg0KCQkJCQk8L2h0bWw+Jyk7DQoNCi8vZXN0YWJsaXNoIG5ldyBDU1NRdWVyeSBsaWtlIHlvdSB3b3VsZCBhIERPTVhQYXRoIHF1ZXJ5DQokY3NzID0gbmV3IENTU1F1ZXJ5KCRkb2MpOw0KDQovL2dldCBlbGVtZW50cyBieSB0YWcgbmFtZQ0KcHJpbnQgInskYnJ9VGFnOiAiIC4gKGNvdW50KCAkY3NzLT5xdWVyeSgncCcpICkgPT0gMiA/ICRUUlVFIDogJEZBTFNFKTsNCg0KLy9nZXQgZWxlbWVudHMgYnkgaWQNCnByaW50ICJ7JGJyfUlEOiAiIC4gKGNvdW50KCAkY3NzLT5xdWVyeSgnI3NwYW5uZXInKSApID09IDEgPyAkVFJVRSA6ICRGQUxTRSk7DQoNCi8vZ2V0IHNwYW4gZWxlbWVudHMgYnkgaWQNCnByaW50ICJ7JGJyfXRhZyBhbmQgSUQ6ICIgLiAoY291bnQoICRjc3MtPnF1ZXJ5KCdzcGFuI3NwYW5uZXInKSApID09IDEgPyAkVFJVRSA6ICRGQUxTRSk7DQoNCi8vZ2V0IGVsZW1lbnRzIGJ5IGNsYXNzIG5hbWUNCnByaW50ICJ7JGJyfWNsYXNzTmFtZTogIiAuIChjb3VudCggJGNzcy0+cXVlcnkoJy5wYXJhZ3JhcGgnKSApID09IDEgPyAkVFJVRSA6ICRGQUxTRSk7DQoNCi8vZ2V0IHAgZWxlbWVudHMgYnkgY2xhc3MgbmFtZQ0KcHJpbnQgInskYnJ9dGFnIGFuZCBjbGFzc05hbWU6ICIgLiAoY291bnQoICRjc3MtPnF1ZXJ5KCdwLnBhcmFncmFwaCcpICkgPT0gMSA/ICRUUlVFIDogJEZBTFNFKTsNCg0KLy9nZXQgZWxlbWVudHMgYnkgYW4gYXR0cmlidXRlDQpwcmludCAieyRicn1oYXMgYXR0cmlidXRlOiAiIC4gKGNvdW50KCAkY3NzLT5xdWVyeSgncFtjbGFzc10nKSApID09IDEgPyAkVFJVRSA6ICRGQUxTRSk7DQoNCi8vZ2V0IGVsZW1lbnRzIGJ5IGFuIGF0dHJpYnV0ZQ0KcHJpbnQgInskYnJ9YXR0cmlidXRlIGVxdWFsczogIiAuIChjb3VudCggJGNzcy0+cXVlcnkoJ2FbbmFtZT0iYW5jaG9yIl0nKSApID09IDEgPyAkVFJVRSA6ICRGQUxTRSk7DQoNCi8vZ2V0IGVsZW1lbnRzIGJ5IGFuIGF0dHJpYnV0ZQ0KcHJpbnQgInskYnJ9YXR0cmlidXRlIGJlZ2lucyB3aXRoOiAiIC4gKGNvdW50KCAkY3NzLT5xdWVyeSgnYVtuYW1lXj0iYW4iXScpICkgPT0gMSA/ICRUUlVFIDogJEZBTFNFKTsNCg0KLy9nZXQgZWxlbWVudHMgYnkgYW4gYXR0cmlidXRlDQpwcmludCAieyRicn1hdHRyaWJ1dGUgZW5kcyB3aXRoOiAiIC4gKGNvdW50KCAkY3NzLT5xdWVyeSgnaW1nW2FsdCQ9dHldJykgKSA9PSAxID8gJFRSVUUgOiAkRkFMU0UpOw0KDQovL2dldCBlbGVtZW50cyBieSBhbiBhdHRyaWJ1dGUNCnByaW50ICJ7JGJyfWF0dHJpYnV0ZSBjb250YWluczogIiAuIChjb3VudCggJGNzcy0+cXVlcnkoJ2FbbmFtZSo9ImNoIl0nKSApID09IDEgPyAkVFJVRSA6ICRGQUxTRSk7DQoNCi8vZ2V0IGVsZW1lbnRzIGJ5IGFuIGF0dHJpYnV0ZQ0KcHJpbnQgInskYnJ9YXR0cmlidXRlIGRhc2hlZDogIiAuIChjb3VudCggJGNzcy0+cXVlcnkoJ3BbY2xhc3N8PSJzZWNvbmQiXScpICkgPT0gMSA/ICRUUlVFIDogJEZBTFNFKTsNCg0KLy9nZXQgZWxlbWVudHMgdXNpbmcgZGVzY2VuZGFudCBzZWxlY3Rvcg0KcHJpbnQgInskYnJ9ZGVzY2VuZGFudDogIiAuIChjb3VudCggJGNzcy0+cXVlcnkoJ3NwYW4gaW1nJykgKSA9PSAxID8gJFRSVUUgOiAkRkFMU0UpOw0KDQovL2dldCBlbGVtZW50cyB1c2luZyBjaGlsZHJlbiBzZWxlY3Rvcg0KcHJpbnQgInskYnJ9Y2hpbGRyZW46ICIgLiAoY291bnQoICRjc3MtPnF1ZXJ5KCdhID4gaW1nJykgKSA9PSAxID8gJFRSVUUgOiAkRkFMU0UpOw0KDQovL2dldCBlbGVtZW50cyB1c2luZyBhZGphY2VudCBzaWJsaW5nIHNlbGVjdG9yDQpwcmludCAieyRicn1hZGphY2VudCBzaWJsaW5nOiAiIC4gKGNvdW50KCAkY3NzLT5xdWVyeSgnc3BhbiArIGInKSApID09IDEgPyAkVFJVRSA6ICRGQUxTRSk7DQoNCi8vZ2V0IGVsZW1lbnRzIHVzaW5nIGdlbmVyYWwgc2libGluZyBzZWxlY3Rvcg0KcHJpbnQgInskYnJ9Z2VuZXJhbCBzaWJsaW5nOiAiIC4gKGNvdW50KCAkY3NzLT5xdWVyeSgnaSB+IHNwYW4nKSApID09IDEgPyAkVFJVRSA6ICRGQUxTRSk7DQoNCi8vZ2V0IGVsZW1lbnRzIHVzaW5nIGZpcnN0LWNoaWxkIHBzdWVkbyBzZWxlY3Rvcg0KcHJpbnQgInskYnJ9Zmlyc3QtY2hpbGQ6ICIgLiAoY291bnQoICRjc3MtPnF1ZXJ5KCdwIHNwYW46Zmlyc3QtY2hpbGQnKSApID09IDIgPyAkVFJVRSA6ICRGQUxTRSk7DQoNCi8vZ2V0IGVsZW1lbnRzIHVzaW5nIGxhc3QtY2hpbGQgcHN1ZWRvIHNlbGVjdG9yDQpwcmludCAieyRicn1sYXN0LWNoaWxkOiAiIC4gKGNvdW50KCAkY3NzLT5xdWVyeSgncCBiOmxhc3QtY2hpbGQnKSApID09IDEgPyAkVFJVRSA6ICRGQUxTRSk7DQoNCi8vZ2V0IGVsZW1lbnRzIHVzaW5nIG9ubHktY2hpbGQgcHN1ZWRvIHNlbGVjdG9yDQpwcmludCAieyRicn1vbmx5LWNoaWxkOiAiIC4gKGNvdW50KCAkY3NzLT5xdWVyeSgnYSBpbWc6b25seS1jaGlsZCcpICkgPT0gMSA/ICRUUlVFIDogJEZBTFNFKTsNCg0KLy9nZXQgZWxlbWVudHMgdXNpbmcgZGlzYWJsZWQgcHN1ZWRvIHNlbGVjdG9yDQpwcmludCAieyRicn1kaXNhYmxlZDogIiAuIChjb3VudCggJGNzcy0+cXVlcnkoJ2lucHV0OmRpc2FibGVkJykgKSA9PSAxID8gJFRSVUUgOiAkRkFMU0UpOw0KDQovL2dldCBlbGVtZW50cyB1c2luZyBlbmFibGVkIHBzdWVkbyBzZWxlY3Rvcg0KcHJpbnQgInskYnJ9ZW5hYmxlZDogIiAuIChjb3VudCggJGNzcy0+cXVlcnkoJ2lucHV0OmVuYWJsZWQnKSApID09IDEgPyAkVFJVRSA6ICRGQUxTRSk7DQoNCi8vZ2V0IGVsZW1lbnRzIHVzaW5nIGNoZWNrZWQgcHN1ZWRvIHNlbGVjdG9yDQpwcmludCAieyRicn1jaGVja2VkOiAiIC4gKGNvdW50KCAkY3NzLT5xdWVyeSgnaW5wdXQ6Y2hlY2tlZCcpICkgPT0gMSA/ICRUUlVFIDogJEZBTFNFKTsNCg0KLy9nZXQgZWxlbWVudHMgdXNpbmcgY2hlY2tlZCBwc3VlZG8gc2VsZWN0b3INCnByaW50ICJ7JGJyfWVtcHR5OiAiIC4gKGNvdW50KCAkY3NzLT5xdWVyeSgnKjplbXB0eScpICkgPT0gMyA/ICRUUlVFIDogJEZBTFNFKTsNCg0KLy9nZXQgZWxlbWVudHMgdXNpbmcgZmlyc3Qtb2YtdHlwZSBwc3VlZG8gc2VsZWN0b3INCnByaW50ICJ7JGJyfWZpcnN0LW9mLXR5cGU6ICIgLiAoY291bnQoICRjc3MtPnF1ZXJ5KCd0cjpmaXJzdC1vZi10eXBlJykgKSA9PSAxID8gJFRSVUUgOiAkRkFMU0UpOw0KDQovL2dldCBlbGVtZW50cyB1c2luZyBsYXN0LW9mLXR5cGUgcHN1ZWRvIHNlbGVjdG9yDQpwcmludCAieyRicn1sYXN0LW9mLXR5cGU6ICIgLiAoY291bnQoICRjc3MtPnF1ZXJ5KCd0ZDpsYXN0LW9mLXR5cGUnKSApID09IDggPyAkVFJVRSA6ICRGQUxTRSk7DQoNCi8vZ2V0IGVsZW1lbnRzIHVzaW5nIG9ubHktb2YtdHlwZSBwc3VlZG8gc2VsZWN0b3INCnByaW50ICJ7JGJyfW9ubHktb2YtdHlwZTogIiAuIChjb3VudCggJGNzcy0+cXVlcnkoJ3U6b25seS1vZi10eXBlJykgKSA9PSAxID8gJFRSVUUgOiAkRkFMU0UpOw0KDQovL2dldCBlbGVtZW50cyB1c2luZyBub3QNCnByaW50ICJ7JGJyfW5vdDogIiAuIChjb3VudCggJGNzcy0+cXVlcnkoJ2E6bm90KFtocmVmXSknKSApID09IDEgPyAkVFJVRSA6ICRGQUxTRSk7DQoNCi8vZ2V0IGVsZW1lbnRzIHVzaW5nIG50aC1vZi10eXBlIHBzdWVkbyBzZWxlY3Rvcg0KcHJpbnQgInskYnJ9bnRoLW9mLXR5cGU6ICIgLiAoY291bnQoICRjc3MtPnF1ZXJ5KCd0cjpudGgtb2YtdHlwZShvZGQpJykgKSA9PSA0ID8gJFRSVUUgOiAkRkFMU0UpOw0KDQovL2dldCBlbGVtZW50cyB1c2luZyBudGgtbGFzdC1vZi10eXBlIHBzdWVkbyBzZWxlY3Rvcg0KcHJpbnQgInskYnJ9bnRoLWxhc3Qtb2YtdHlwZTogIiAuIChjb3VudCggJGNzcy0+cXVlcnkoJ3RyOm50aC1sYXN0LW9mLXR5cGUoZXZlbiknKSApID09IDQgPyAkVFJVRSA6ICRGQUxTRSk7DQoNCi8vZ2V0IGVsZW1lbnRzIHVzaW5nIG50aC1jaGlsZCBwc3VlZG8gc2VsZWN0b3INCnByaW50ICJ7JGJyfW50aC1jaGlsZDogIiAuIChjb3VudCggJGNzcy0+cXVlcnkoJ3RyOm50aC1jaGlsZChuKzIpJykgKSA9PSA0ID8gJFRSVUUgOiAkRkFMU0UpOw0KDQovL2dldCBlbGVtZW50cyB1c2luZyBudGgtbGFzdC1jaGlsZCBwc3VlZG8gc2VsZWN0b3INCnByaW50ICJ7JGJyfW50aC1sYXN0LWNoaWxkOiAiIC4gKGNvdW50KCAkY3NzLT5xdWVyeSgndGQ6bnRoLWxhc3QtY2hpbGQoMyknKSApID09IDggPyAkVFJVRSA6ICRGQUxTRSk7DQoNCi8vZ2V0IGVsZW1lbnRzIHVzaW5nIGZpcnN0IHBzdWVkbyBzZWxlY3Rvcg0KcHJpbnQgInskYnJ9Zmlyc3Q6ICIgLiAoY291bnQoICRjc3MtPnF1ZXJ5KCd0cjpmaXJzdCcpICkgPT0gMSA/ICRUUlVFIDogJEZBTFNFKTsNCg0KLy9nZXQgZWxlbWVudHMgdXNpbmcgbGFzdCBwc3VlZG8gc2VsZWN0b3INCnByaW50ICJ7JGJyfWxhc3Q6ICIgLiAoY291bnQoICRjc3MtPnF1ZXJ5KCd0cjpsYXN0JykgKSA9PSAxID8gJFRSVUUgOiAkRkFMU0UpOw0KDQovL2dldCBlbGVtZW50cyB1c2luZyBlcSBwc3VlZG8gc2VsZWN0b3INCnByaW50ICJ7JGJyfWVxOiAiIC4gKGNvdW50KCAkY3NzLT5xdWVyeSgndHI6ZXEoNSknKSApID09IDEgPyAkVFJVRSA6ICRGQUxTRSk7DQoNCi8vZ2V0IGVsZW1lbnRzIHVzaW5nIGx0IHBzdWVkbyBzZWxlY3Rvcg0KcHJpbnQgInskYnJ9bHQ6ICIgLiAoY291bnQoICRjc3MtPnF1ZXJ5KCd0cjpsdCg1KScpICkgPT0gNSA/ICRUUlVFIDogJEZBTFNFKTsNCg0KLy9nZXQgZWxlbWVudHMgdXNpbmcgZ3QgcHN1ZWRvIHNlbGVjdG9yDQpwcmludCAieyRicn1ndDogIiAuIChjb3VudCggJGNzcy0+cXVlcnkoJ3RyOmd0KDUpJykgKSA9PSAyID8gJFRSVUUgOiAkRkFMU0UpOw0KDQovL2dldCBlbGVtZW50cyB1c2luZyBudGggcHN1ZWRvIHNlbGVjdG9yDQpwcmludCAieyRicn1udGg6ICIgLiAoY291bnQoICRjc3MtPnF1ZXJ5KCd0cjpudGgob2RkKScpICkgPT0gNCA/ICRUUlVFIDogJEZBTFNFKTsNCg0KLy9nZXQgZWxlbWVudHMgdXNpbmcgcGFyZW50IHBzdWVkbyBzZWxlY3Rvcg0KcHJpbnQgInskYnJ9cGFyZW50OiAiIC4gKGNvdW50KCAkY3NzLT5xdWVyeSgnYTpwYXJlbnQnKSApID09IDEgPyAkVFJVRSA6ICRGQUxTRSk7DQoNCi8vZ2V0IGVsZW1lbnRzIHVzaW5nIHBhcmVudC1ub2RlIHBzdWVkbyBzZWxlY3Rvcg0KcHJpbnQgInskYnJ9cGFyZW50LW5vZGU6ICIgLiAoY291bnQoICRjc3MtPnF1ZXJ5KCdhOnBhcmVudC1ub2RlJykgKSA9PSAyID8gJFRSVUUgOiAkRkFMU0UpOw0KDQovL2dldCBlbGVtZW50cyB1c2luZyBwYXJlbnQtbm9kZSBwc3VlZG8gc2VsZWN0b3INCnByaW50ICJ7JGJyfXBhcmVudC1ub2RlKHNwYW4pOiAiIC4gKGNvdW50KCAkY3NzLT5xdWVyeSgnYTpwYXJlbnQtbm9kZShzcGFuKScpICkgPT0gMSA/ICRUUlVFIDogJEZBTFNFKTsNCg0KLy9nZXQgZWxlbWVudHMgdXNpbmcgcGFyZW50cyBwc3VlZG8gc2VsZWN0b3INCnByaW50ICJ7JGJyfXBhcmVudHM6ICIgLiAoY291bnQoICRjc3MtPnF1ZXJ5KCdpbnB1dDpwYXJlbnRzJykgKSA9PSAyID8gJFRSVUUgOiAkRkFMU0UpOw0KDQovL2dldCBlbGVtZW50cyB1c2luZyBwYXJlbnRzIHBzdWVkbyBzZWxlY3Rvcg0KcHJpbnQgInskYnJ9cGFyZW50cyhwKTogIiAuIChjb3VudCggJGNzcy0+cXVlcnkoJ3NwYW46cGFyZW50cyhwKScpICkgPT0gMiA/ICRUUlVFIDogJEZBTFNFKTsNCg0KLy9nZXQgZWxlbWVudHMgdXNpbmcgaGVhZGVycyBwc3VlZG8gc2VsZWN0b3INCnByaW50ICJ7JGJyfWhlYWRlcjogIiAuIChjb3VudCggJGNzcy0+cXVlcnkoJzpoZWFkZXInKSApID09IDEgPyAkVFJVRSA6ICRGQUxTRSk7DQoNCi8vZ2V0IGVsZW1lbnRzIHVzaW5nIGNoZWNrYm94IHBzdWVkbyBzZWxlY3Rvcg0KcHJpbnQgInskYnJ9Y2hlY2tib3g6ICIgLiAoY291bnQoICRjc3MtPnF1ZXJ5KCc6Y2hlY2tib3gnKSApID09IDEgPyAkVFJVRSA6ICRGQUxTRSk7DQoNCi8vZ2V0IGVsZW1lbnRzIHVzaW5nIGlucHV0IHBzdWVkbyBzZWxlY3Rvcg0KcHJpbnQgInskYnJ9aW5wdXQ6ICIgLiAoY291bnQoICRjc3MtPnF1ZXJ5KCc6aW5wdXQnKSApID09IDIgPyAkVFJVRSA6ICRGQUxTRSk7DQoNCi8vZ2V0IGVsZW1lbnRzIHVzaW5nIGNvbnRhaW5zIHBzdWVkbyBzZWxlY3Rvcg0KcHJpbnQgInskYnJ9Y29udGFpbnM6ICIgLiAoY291bnQoICRjc3MtPnF1ZXJ5KCdiOmNvbnRhaW5zKCJHZW5lcmFsIiknKSApID09IDEgPyAkVFJVRSA6ICRGQUxTRSk7DQoNCi8vZ2V0IGVsZW1lbnRzIHVzaW5nIENvbnRhaW5zIHBzdWVkbyBzZWxlY3Rvcg0KcHJpbnQgInskYnJ9Q29udGFpbnM6ICIgLiAoY291bnQoICRjc3MtPnF1ZXJ5KCdiOkNvbnRhaW5zKHNpYmxpbmcpJykgKSA9PSAyID8gJFRSVUUgOiAkRkFMU0UpOw0KDQovL2NvbW1hDQpwcmludCAieyRicn1jb21tYTogIiAuIChjb3VudCggJGNzcy0+cXVlcnkoJ3AsICNzcGFubmVyLCB0cjpmaXJzdCcpICkgPT0gNCA/ICRUUlVFIDogJEZBTFNFKTsNCg0KLy8kY3NzLT5yZWdpc3Rlck5hbWVzcGFjZSgndXJpOnNhbScsICd4c2QnKTsNCg0KLy9wcmludCAieyRicn1uc0BhdHRyaWJ1dGU6ICIgLiAoY291bnQoICRjc3MtPnF1ZXJ5KCdkaXZbeHNkfHRlc3RpbmddJykgKSA9PSAxID8gJFRSVUUgOiAkRkFMU0UpOw0KDQpDU1NRdWVyeTo6JGF0dHJpYnV0ZUZpbHRlcnNbJz49J10gPSBjcmVhdGVfZnVuY3Rpb24oJyYkZSwmJGEsJiR2JywncmV0dXJuICRlLT5oYXNBdHRyaWJ1dGUoJGEpICYmIHN0cmxlbigkZS0+Z2V0QXR0cmlidXRlKCRhKSkgPiAkdjsnKTsNCg0KLy9nZXQgZWxlbWVudHMgYnkgYW4gYXR0cmlidXRlDQpwcmludCAieyRicn1hdHRyaWJ1dGUgbGVuZ3RoID4gNDogIiAuIChjb3VudCggJGNzcy0+cXVlcnkoJ2FbbmFtZT49NF0nKSApID09IDEgPyAkVFJVRSA6ICRGQUxTRSk7DQoNCi8vdXNlICMgYW5kIC4gYXMgYSBmaWx0ZXIgaW5zdGVhZCBvZiBhIHNlbGVjdG9yDQpwcmludCAieyRicn1maWx0ZXIgc2VsZWN0b3JzOiAiIC4gKGNvdW50KCAkY3NzLT5xdWVyeSgnc3BhbiNzcGFubmVyLnNvbWV3aGVyZTpub3QoW3RhYmluZGV4XSksIHAucGFyYWdyYXBoJykgKSA9PSAyID8gJFRSVUUgOiAkRkFMU0UpOw0KDQovL3VzZSAjIGFuZCAuIGFzIGEgZmlsdGVyIGluc3RlYWQgb2YgYSBzZWxlY3Rvcg0KcHJpbnQgInskYnJ9ZmlsdGVyIHNlbGVjdG9ycyAyOiAiIC4gKCgkeCA9IGNvdW50KCAkY3NzLT5xdWVyeSgnc3BhbiNzcGFubmVyOm5vdCguc29tZXdoZXJlKSwgcC5zZWNvbmQtY2xhc3MtbmFtZTpub3QoW3RhYmluZGV4XSkucGFyYWdyYXBoJykgKSkgPT0gMSA/ICRUUlVFIDogJHgpOw0KDQovL3VzZSAjIGFuZCAuIGFzIGEgZmlsdGVyIGluc3RlYWQgb2YgYSBzZWxlY3Rvcg0KcHJpbnQgInskYnJ9ZmlsdGVyIHNlbGVjdG9ycyAzOiAiIC4gKGNvdW50KCAkY3NzLT5xdWVyeSgnLnBhcmFncmFwaCAudGVzdGluZycpICkgPT0gMiA/ICRUUlVFIDogJEZBTFNFKTsNCg0KJGNvbnRleHQgPSAkY3NzLT5xdWVyeSgnLnBhcmFncmFwaCcpOw0KLy91c2UgIyBhbmQgLiBhcyBhIGZpbHRlciBpbnN0ZWFkIG9mIGEgc2VsZWN0b3INCnByaW50ICJ7JGJyfWZpbHRlciBzZWxlY3RvcnMgNDogIiAuIChjb3VudCggJGNzcy0+cXVlcnkoJz4gLnRlc3RpbmcnLCAkY29udGV4dCkgKSA9PSAxID8gJFRSVUUgOiAkRkFMU0UpOw0KDQo/Pg0KDQo=]]></data>
	</file>
	<file>
	  <filename>/CSSTree.inc.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCgkvKioNCgkqIEBwYWNrYWdlIENTU1RyZWUNCgkqLw0KCQ0KCS8qKg0KCSogUEhQNCBDU1NUcmVlIGNsYXNzDQoJKiB3aXRoIHRoaXMgY2xhc3MgQ2FzY2FkaW5nIFN0eWxlIHNoZWV0cyBtYXkgYmUgZ2VuZXJhdGVkIHVzaW5nIGEgdHJlZQ0KCSogdGhlIG5vZGVzIHN0b3JlIHRoZSBhdHRyaWJ1dGVzIGFuZCB2YWx1ZXMNCgkqDQoJKjxjb2RlPg0KCSogLy8gZXhhbXBsZXMgZm9sbG93DQoJKiRkZGF0YT1hcnJheSgiYm9yZGVyIj0+IjFweCBzb2xpZCBibGFjayIpOw0KCSokZGRhdGEyPWFycmF5KCJib3JkZXIiPT4iMnB4IHNvbGlkIHNpbHZlciIpOw0KCSokbnVsbD1udWxsOw0KCSoNCgkqJHRyZWUgPSBuZXcgQ1NTVHJlZSgkbnVsbCwiYm9keSIsJGRkYXRhLCdjbGFzcycpOw0KCSokdG1wPSYkdHJlZS0+YWRkQ2hpbGQoJ2gxJywkZGRhdGEyLCdwc2V1ZG8nKTsNCgkqJHRtcD0mJHRyZWUtPmFkZENoaWxkKCdoMicsJGRkYXRhLCdwc2V1ZG8nKTsNCgkqPC9jb2RlPg0KCSoNCgkqIFRPRE86IGNvbW1lbnRzIGluIHRoZSBjc3MgYXJlIG5vdCBoYW5kbGVkLCBidXQgdGhleSBtYXkgd29yaw0KCSovDQoJDQoJLy8gaW5jbHVkZSB0aGUgVHJlZSBjbGFzcw0KCXJlcXVpcmVfb25jZSAnVHJlZS5pbmMucGhwJzsNCg0KY2xhc3MgQ1NTVHJlZSBleHRlbmRzIFRyZWV7DQoNCgkvKioNCgkqIFZhcmlhYmxlIGRlY2xhcmF0aW9uDQoJKi8NCgkNCgkvKioNCgkqIHByb3BlcnRpZXMgb2YgdGhpcyBOb2RlDQoJKiBAYWNjZXNzIHByaXZhdGUNCgkqIEB2YXIgYXJyYXkNCgkqLw0KCXZhciAkX2Nzc3Byb3BlcnRpZXM7DQoJDQoJLyoqDQoJKiBuYW1lIG9mIHRoaXMgTm9kZSAoY2xhc3M9fGlkPXwuLi4pDQoJKiBAYWNjZXNzIHB1YmxpYw0KCSogQHZhciBzdHJpbmcNCgkqLw0KCXZhciAkdGFnbmFtZTsNCg0KCS8qKg0KCSogdHlwZSBvZiBDU1MgKCdpZCd8J2NsYXNzJ3wncHNldWRvJykgbm90IGltcGxlbWVudGVkOiB1c2VsZXNzDQoJKiBAYWNjZXNzIHByaXZhdGUNCgkqIEB2YXIgc3RyaW5nDQoJKi8NCgkvL3ZhciAkX3R5cGU7DQoNCgkvKioNCgkqIGRlZmF1bHQgY29uc3RydWN0b3INCgkqIA0KCSogY3JlYXRlcyBhIENTUyBub2RlIG9mIHR5cGUgJHR5cGUgd2l0aCAkbmFtZSwgc2V0IHByb3BlcnRpZXMNCgkqIEBhY2Nlc3MgcHVibGljDQoJKiANCgkqLw0KCSAgIGZ1bmN0aW9uIENTU1RyZWUoJiRfcGFyZW50LCR0YWduYW1lLCRwcm9wZXJ0aWVzPW51bGwpIHsNCgkJCS8vIGNhbGwgdGhlIGNvbnN0cnVjdG9yIG9mIHRoZSBwYXJlbnQgY2xhc3MNCgkJCXBhcmVudDo6VHJlZSgkX3BhcmVudCk7DQoJICAgCS8qIHdlIGRvbid0IG5lZWQgdGhpcyBzdHVmZg0KCSAgIAlzd2l0Y2ggKCR0eXBlKXsNCgkJICAgCWNhc2UgJ2NsYXNzJzogJHRoaXMtPl90eXBlPSdjbGFzcyc7YnJlYWs7DQoJCSAgIAljYXNlICdpZCc6ICR0aGlzLT5fdHlwZT0naWQnO2JyZWFrOw0KCQkgICAJY2FzZSAncHNldWRvJzogJHRoaXMtPl90eXBlPSdwc2V1ZG8nO2JyZWFrOw0KCQkgICAJZGVmYXVsdDogLy9yYWlzZSBhbiBlcnJvciwgVE9ETzogcmFpc2UgYSByZWFsIGVycm9yIDotKQ0KCQkgICAJCQkJZWNobyAnISEhIG5vIHZhbGlkIHR5cGUgZm9yIENTUyBlbGVtZW50IHR5cGUsIHVzZSBlaXRoZXIgb2YgaWR8Y2xhc3N8cHNldWRvICEhISc7DQoJCQkJCQkJJHRoaXMtPl90eXBlPSdjbGFzcyc7DQoJCSAgIAkJCQlicmVhazsNCgkgICAJfQ0KCQkJKi8NCgkJCS8vIHNldCBwcm9wZXJ0aWVzLCBpZiBnaXZlbg0KCQkJaWYgKCghJHByb3BlcnRpZXM9PW51bGwpICYgKGlzX2FycmF5KCRwcm9wZXJ0aWVzKSkpew0KCSAgIAkJJHRoaXMtPl9jc3Nwcm9wZXJ0aWVzPSRwcm9wZXJ0aWVzOw0KCSAgIAl9DQoJICAgCWVsc2V7DQoJICAgCQkkdGhpcy0+X2Nzc3Byb3BlcnRpZXM9YXJyYXkoKTsNCgkgICAJfQ0KCSAgIAkkdGhpcy0+dGFnbmFtZT0kdGFnbmFtZTsNCgl9DQoNCgkvKioNCgkqIGFkZCBhIHN1YmNsYXNzDQoJKiBAcmV0dXJuIFRyZWUgcmVmZXJlbmNlIHRvIHRoZSBjaGlsZA0KCSovDQoJZnVuY3Rpb24gJmFkZENoaWxkKCR0YWduYW1lLCRwcm9wZXJ0aWVzPW51bGwpIHsNCgkJJHRlc3RpZmFscmVhZHlleGlzdHM9JHRoaXMtPmdldENoaWxkQnlOYW1lKCR0YWduYW1lKTsNCgkJaWYgKCR0ZXN0aWZhbHJlYWR5ZXhpc3RzIT09ZmFsc2Upe3JldHVybiAkdGVzdGlmYWxyZWFkeWV4aXN0czt9DQoJCSR0aGlzLT5fY2hpbGRyZW5bXT1uZXcgQ1NTVHJlZSgkdGhpcywkdGFnbmFtZSwkcHJvcGVydGllcyk7DQoJCS8vZ2V0IHRoZSBhdXRvbWF0aWNhbGx5IHNldCBpZCAoPWFycmF5IGtleSkgLSBpdCBpcyB0aGUgbGFzdCBlbGVtZW50IG5vdw0KCQllbmQoJHRoaXMtPl9jaGlsZHJlbik7DQoJCSRrZXk9a2V5KCR0aGlzLT5fY2hpbGRyZW4pOw0KCQkkdGhpcy0+X2NoaWxkcmVuWyRrZXldLT5fc2V0SWQoJGtleSk7DQoJCSR0aGlzLT5fY2hpbGRyZW5bJGtleV0tPmxldmVsID0gJHRoaXMtPl9sZXZlbCArIDE7DQoJCXJldHVybiAkdGhpcy0+X2NoaWxkcmVuWyRrZXldOw0KCX0NCg0KCS8qKg0KCSogb3V0cHV0IENTUyBwcm9wZXJ0aWVzIGZvciB0aGlzIG5vZGUsIGZvciB1c2UgaW4gc3R5bGU9IiINCgkqIEByZXR1cm4gc3RyaW5nDQoJKi8NCglmdW5jdGlvbiByZW5kZXJDU1NQcm9wZXJ0aWVzKCl7DQoJCSRjc3M9Jyc7DQoJCWZvcmVhY2ggKCR0aGlzLT5fY3NzcHJvcGVydGllcyBhcyAkcHJvcD0+JHZhbHVlKSB7DQoJCQkJJGNzcy49JHByb3AuJzogJy4kdmFsdWUuJzsnOw0KCQl9DQoJcmV0dXJuICRjc3M7DQoJfQ0KDQoJLyoqDQoJKiBvdXRwdXQgQ1NTIGZvciB0aGlzIG5vZGUNCgkqIEByZXR1cm4gc3RyaW5nDQoJKi8NCglmdW5jdGlvbiByZW5kZXJDU1MoKXsNCgkJJGNzcz0nICc7DQoJCSRwcm9wPSR0aGlzLT5yZW5kZXJDU1NQcm9wZXJ0aWVzKCk7DQoJCS8vc2tpcCBpZiB0aGVyZSBhcmUgbm8gcHJvcGVydGllcw0KCQlpZiAoJHByb3AhPScnKXsNCgkJCSRjc3MuPSR0aGlzLT50YWduYW1lLid7JzsNCgkJCSRjc3MuPSRwcm9wOw0KCQkJJGNzcy49In1cbiI7DQoJCX0NCgkJcmV0dXJuICRjc3M7DQoJfQ0KDQoJLyoqDQoJKiAJZ2V0IGEgcmVmZXJlbmNlIGNoaWxkIGJ5IGl0cyBuYW1lLCBvdGhlcndpc2UgZmFsc2UNCgkqCUByZXR1cm4gQ1NTVHJlZSByZWZlcmVuY2UgdG8gdGhlIGNoaWxkIG5vZGUgb3IgZmFsc2UNCgkqDQoJKi8NCglmdW5jdGlvbiAmZ2V0Q2hpbGRCeU5hbWUoJG5hbWUpew0KCQkJJHJldD1mYWxzZTsNCgkJCS8vZWNobyAnc2VsZWN0aW5nIGNoaWxkIHdpdGggbmFtZSAnLiRuYW1lOyANCgkJCWZvcmVhY2ggKCR0aGlzLT5fY2hpbGRyZW4gYXMgJGNoaWxkKXsNCgkJCQlpZiAoIXN0cmNhc2VjbXAoJG5hbWUsJGNoaWxkLT50YWduYW1lKSl7DQoJCQkJCSRyZXQ9JiR0aGlzLT5fY2hpbGRyZW5bJGNoaWxkLT5nZXRJZCgpXTsNCgkJCQlyZXR1cm4gJHJldDsNCgkJCQl9DQoJCQl9DQoJCXJldHVybiAkcmV0Ow0KCX0NCg0KCS8qKg0KCSogCUFkZCBhIHByb3BlcnR5IHRvIHRoZSBwcm9wZXJ0aWVzIA0KCSoJDQoJKi8NCglmdW5jdGlvbiBzZXRQcm9wZXJ0eSgkcHJvcGVydHksICR2YWx1ZSl7DQoJCQkkdGhpcy0+X2Nzc3Byb3BlcnRpZXNbJHByb3BlcnR5XT0kdmFsdWU7DQoJfQkJDQoNCgkvKioNCgkqIG91dHB1dCBDU1MgZm9yIHRoZSBjb21wbGV0ZSB0cmVlLCBmb3IgdXNlIGluIGhlYWRlciAoPHN0eWxlIHR5cGU9InRleHQvY3NzIj4pIG9yIGZpbGUNCgkqIEByZXR1cm4gc3RyaW5nDQoJKi8NCglmdW5jdGlvbiByZW5kZXJDU1NBbGwoKXsNCgkJJHJvb3Q9JiR0aGlzLT5nZXRSb290KCk7DQoJCXJldHVybiAkcm9vdC0+X3JlbmRlckNTU0FsbCgnJyk7DQoJfQ0KDQoNCgkvKioNCgkqIGludGVybmFsIGZ1bmN0aW9uIHJldHVybmluZyBzdHJpbmcgZm9yIG9uZSBub2RlIHVzaW5nIHRoZSAoY2FzY2FkZWQpIHByZWZpeA0KCSogQHZhciAkcHJlZml4IHRoZSBhY2N1bXVsYXRlZCBjYXNjYWRlZCBwcmVmaXggKGNsYXNzL2lkL3RhZyBuYW1lKSANCgkqIEByZXR1cm4gc3RyaW5nDQoJKiBAYWNjZXNzIHByaXZhdGUNCgkqLw0KCWZ1bmN0aW9uIF9yZW5kZXJDU1NBbGwoJHByZWZpeCl7DQoJCSRjc3M9Jyc7DQoJCS8vIGNoZWNrIGlmIHRoaXMgaXMgYSAndmlydHVhbCBub2RlJyB3aXRob3V0IHByb3BlcnRpZXMsDQoJCS8vIHRoZW4gd2UgZG9udCBuZWVkIHRvIG91dHB1dCBzb21ldGhpbmcgDQoJCWlmIChjb3VudCgkdGhpcy0+X2Nzc3Byb3BlcnRpZXMpICE9IDApew0KCQkJJGNzcy49JHByZWZpeC4kdGhpcy0+cmVuZGVyQ1NTKCk7DQoJCX0JCQkJDQoJCS8vc2V0IHByZWZpeCBmb3IgdGhlIGNoaWxkcmVuDQoJCSRwcmVmaXguPScgJy4kdGhpcy0+dGFnbmFtZTsNCgkJZm9yZWFjaCAoJHRoaXMtPl9jaGlsZHJlbiBhcyAkY2hpbGQpIHsNCgkJCQkkY3NzLj0kY2hpbGQtPl9yZW5kZXJDU1NBbGwoJHByZWZpeCk7DQoJCX0NCglyZXR1cm4gJGNzczsJCQ0KCX0NCg0KCS8qKg0KCSogQ1NTIGZpbGUgcGFyc2VyLCByZXR1cm5zIHRoZSBjc3MgcHJvcGVydGllcyBhcyAobmV3KSB0cmVlDQoJKiBAcmV0dXJuIENTU1RyZWUNCgkqIEBwYXJhbSBzdHJpbmcgZmlsZW5hbWUNCgkqIEBhY2Nlc3MgcHVibGljDQoJKi8NCiAgIGZ1bmN0aW9uIHBhcnNlRmlsZSgkZmlsZW5hbWUpICB7DQoJLyogT3BlbiBGaWxlIGFuZCBQYXJzZSBpdCAqLw0KICAgIAkkZnA9Zm9wZW4oJGZpbGVuYW1lLCJyIikgb3IgZGllKCJFcnJvciBvcGVuaW5nIGZpbGUgJGZpbGVuYW1lIik7DQogICAgCSRjc3Nfc3RyID0gZnJlYWQoJGZwLCBmaWxlc2l6ZSAoJGZpbGVuYW1lKSk7DQogICAgCWZjbG9zZSgkZnApOw0KICAgIAkvL2VjaG8gInJlYWQ6ICIuJGNzc19zdHI7DQoJCXJldHVybigkdGhpcy0+cGFyc2UoJGNzc19zdHIpKTsNCiAgICB9DQoJDQoJLyoqDQoJKiBDU1Mgc3RyaW5nIHBhcnNlciwgcmV0dXJucyB0aGUgY3NzIHByb3BlcnRpZXMgYXMgKG5ldykgdHJlZQ0KCSogQHJldHVybiBDU1NUcmVlDQoJKiBAcGFyYW0gc3RyaW5nIGNzc3N0cmluZw0KCSogQGFjY2VzcyBwdWJsaWMNCgkqLw0KCWZ1bmN0aW9uICZwYXJzZSgkY3Nzc3RyaW5nKXsNCgkJJHByb3B2YWw9YXJyYXkoKTsNCgkJCSRudWxsPW51bGw7DQoJCQkvLyBuZXcgQ1NTVHJlZSB3aXRoIGVtcHR5IHRhZ25hbWUNCgkJCSR0cmVlPW5ldyBDU1NUcmVlKCRudWxsLCcnKTsNCgkJCS8vIHJlcGxhY2UgdW5uZWNlc3Nhcnkgd2hpdGUgc3BhY2VzIHdpdGggb25lIA0KCQkJJGNzc19zdHI9cHJlZ19yZXBsYWNlKCIvW1xzXSsvIiwnICcsJGNzc3N0cmluZyk7DQoJCQkvLyBkaXZpZGUgaW50byBjbGFzc2VzDQoJCQkkY3NzX2NsYXNzID0gZXhwbG9kZSgifSIsICRjc3Nfc3RyKTsNCgkJCS8vaXRlcmF0ZSB0aHJvdWdoIGNsYXNzZXMNCgkJCXdoaWxlIChsaXN0KCRrZXksJHZhbCkgPSBlYWNoICgkY3NzX2NsYXNzKSl7DQoJCQkJLy8gZGl2aWRlIGludG8gY2xhc3NlcyBhbmQgdGhlaXIgcHJvcGVydGllcw0KCQkJCSRhQ1NTT2JqPWV4cGxvZGUoInsiLCR2YWwpOw0KCQkJCS8vIGZpbmQgbXVsdGlwbGUgZGVmaW5pdGlvbnMgYW5kIGNyZWF0ZSBhIG5vZGUgZm9yIGFueQ0KCQkJCSRjbGFzc2VzPWV4cGxvZGUoIiwiLCRhQ1NTT2JqWzBdKTsNCgkJCQlmb3JlYWNoICgkY2xhc3NlcyBhcyAkY2xhc3Mpew0KCQkJCQkkbmVzdGluZz1leHBsb2RlKCIgIix0cmltKCRjbGFzcykpOw0KCQkJCQlpZiAoaXNzZXQoJGFDU1NPYmpbMV0pKXsNCgkJCQkJJHByb3B2YWw9ZXhwbG9kZSgiOyIsJGFDU1NPYmpbMV0pOw0KCQkJCQl9DQoJCQkJCS8vcHJpbnRfcigkcHJvcGVydGllcyk7DQoJCQkJCS8vIGJlZ2luIGF0IHJvb3Qgbm9kZSBhbmQgc2V0IG5lc3RlZCBwcm9wZXJ0aWVzDQoJCQkJCSR0bXA9JiR0cmVlOw0KCQkJCQlmb3JlYWNoICgkbmVzdGluZyBhcyAkbmV3bGV2ZWwpew0KCQkJCQkJJHRtcD0mJHRtcC0+YWRkQ2hpbGQoJG5ld2xldmVsKTsNCgkJCQkJfQ0KCQkJCQkvL3BvcHVsYXRlIHByb3BlcnRpZXMNCgkJCQkJZm9yZWFjaCAoJHByb3B2YWwgYXMgJHByb3Apew0KCQkJCQkJJHByb3A9ZXhwbG9kZSgiOiIsJHByb3ApOw0KCQkJCQkJJHByb3BuYW1lPXRyaW0oJHByb3BbMF0pOw0KCQkJCQkJLy8gZG8gb25seSBmb3Igbm9uLWVtcHR5IG9uZXMgKGxhc3QgbWF5IGJlIGVtcHR5IGJlY2F1c2Ugb2YgdHJhaWxpbmcgJzsnKQ0KCQkJCQkJaWYgKCRwcm9wbmFtZSE9JycmJmlzc2V0KCRwcm9wWzFdKSl7DQoJCQkJCQkJJHRtcC0+c2V0UHJvcGVydHkoJHByb3BuYW1lLCRwcm9wWzFdKTsNCgkJCQkJCX0NCgkJCQkJfQ0KCQkJCX0NCgkJCX0NCglyZXR1cm4gJHRyZWU7DQoJfQkNCg0KCS8qKg0KCSogZWNobyB0aGUgc3RydWN0dXJlIG9mIHRoZSBzdWJub2RlcyBvZiBvdXIgdHJlZS9ub2RlDQoJKiBhbmQgdGVsbCB1cyBhZGR0aXRpb25hbGx5IHRoZSBuYW1lDQoJKiBAcGFyYW0gc3RyaW5nIHByZWZpeCAodXNlZCBmb3IgdGhlIHJlY3Vyc2l2ZSBvdXRwdXQpDQoJKiBAcmV0dXJuIHZvaWQNCgkqLw0KCWZ1bmN0aW9uIGVjaG9TdHJ1Y3R1cmUoJHByZT0nJykgew0KCQlmb3IgKCRpPTA7JGk8JHRoaXMtPmdldExldmVsKCk7JGkrKyl7DQoJCQkkcHJlLj0nfCc7Ly8kdGhpcy0+Z2V0TGV2ZWwoKTsNCgkJfQ0KCQkkcmV0dXJuPSAkcHJlLiIrWyIuJHRoaXMtPl9pZC4nICcuJHRoaXMtPnRhZ25hbWUuJ10nOw0KCQlpZiAoaXNfYXJyYXkoJHRoaXMtPmRhdGEpKXsNCgkJCWZvcmVhY2ggKCR0aGlzLT5kYXRhIGFzICRrZXk9PiR2YWx1ZSkgew0KCQkgICAgCQkgJHJldHVybi49ICcoJy4ka2V5Lid8Jy4kdmFsdWUuJyknOw0KCSAgICAJfQ0KICAgIAl9DQogICAgCQkkcmV0dXJuLj0gICJcbiI7DQoJCWlmICgkdGhpcy0+bnVtQ2hpbGRyZW4oKT4wKXsNCgkJCQ0KCQkJZm9yZWFjaCAoJHRoaXMtPl9jaGlsZHJlbiBhcyAkY2hpbGQpIHsNCgkJICAgIAkkcmV0dXJuLj0kY2hpbGQtPmVjaG9TdHJ1Y3R1cmUoKTsNCgkJCX0NCgkJfQ0KCQlyZXR1cm4gJHJldHVybjsNCgl9DQoNCn0gLy8gZW5kIGNsYXNzDQoNCgkJDQo/Pg0K]]></data>
	</file>
	<file>
	  <filename>/event.Core.ContentPostRender.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCi8vaWYgKCFpc3NldChjbXNtcygpKSkgZXhpdDsNCiRjb250ZW50PSRwYXJhbXNbImNvbnRlbnQiXTsNCg0KaWYoJHRoaXMtPkdldFByZWZlcmVuY2UoInByZWxvYWRfQ1NTaW1hZ2UiKSl7DQoJJHM9JGNvbnRlbnQ7DQoJJHNjcmlwdElEPWFycmF5KCk7DQoJJGdyb3VwSUQ9YXJyYXkoKTsNCgkNCgkkcGF0dGVybiA9ICcvc2NyaXB0SURcLyhbMC05XXswLDN9KVwuY3NzLyc7DQoJcHJlZ19tYXRjaF9hbGwoICRwYXR0ZXJuLCAkcywgJG1hdGNoZXMsUFJFR19TRVRfT1JERVIpOw0KCWZvcmVhY2goJG1hdGNoZXMgYXMgJHVybCl7DQoJCSRzY3JpcHRJRFtdPSAkdXJsWzFdOw0KCX0NCgkkcGF0dGVybiA9ICcvZ3JvdXBJRFwvKFswLTldezAsM30pXC5jc3MvJzsNCglwcmVnX21hdGNoX2FsbCggJHBhdHRlcm4sICRzLCAkbWF0Y2hlcyxQUkVHX1NFVF9PUkRFUik7DQoJZm9yZWFjaCgkbWF0Y2hlcyBhcyAkdXJsKXsNCgkJJGdyb3VwSURbXT0gJHVybFsxXTsNCgl9DQoNCgkkdXJsUGFja2FnZT0nJzsNCg0KCWZvcmVhY2goJHNjcmlwdElEICBhcyAka2V5ID0+ICRTaWQpew0KCQkkdXJsUGFja2FnZS49JycuJHRoaXMtPkdldFByZWZlcmVuY2UoJFNpZC4nLXByZWxvYWRfQ1NTaW1hZ2Utc2NyaXB0LVNEJykuJyc7DQoJCQ0KCQkNCgl9DQoJZm9yZWFjaCgkZ3JvdXBJRCBhcyAka2V5ID0+ICRTaWQpew0KCQkkdXJsUGFja2FnZS49JycuJHRoaXMtPkdldFByZWZlcmVuY2UoJFNpZC4nLXByZWxvYWRfQ1NTaW1hZ2UtZ3JvdXAtU0QnKS4nJzsNCgkJDQoJCQ0KCX0NCgkkcGF0dGVybiA9ICcvPGJvZHkoLio/KT4vJzsNCgkkcmVwbGFjZW1lbnQ9Jzxib2R5JDE+PGRpdiBzdHlsZT0icG9zaXRpb246YWJzb2x1dGU7IHRvcDotOTk5OWVtOyBsZWZ0Oi05OTk5ZW07Ij4nLiR1cmxQYWNrYWdlLic8L2Rpdj4nOw0KCSRjb250ZW50ID0gcHJlZ19yZXBsYWNlKCRwYXR0ZXJuLCAkcmVwbGFjZW1lbnQsICRjb250ZW50KTsgDQp9DQoNCg0KJG1hbmdsZXR5cGU9JHRoaXMtPkdldFByZWZlcmVuY2UoIm1hbmdsZXR5cGUiLCJub2NoYW5nZSIpOw0KaWYoJG1hbmdsZXR5cGUhPSdub2NoYW5nZScpew0KCSRHTE9CQUxTWyJuZWNob19kZWJ1Z21vZGUiXT0oJHRoaXMtPkdldFByZWZlcmVuY2UoImRlYnVnIiwiZmFsc2UiKT09InRydWUiKTsNCgkkR0xPQkFMU1sibmVjaG9fZGVidWdsZXZlbCJdPSR0aGlzLT5HZXRQcmVmZXJlbmNlKCJkZWJ1Z2xldmVsIiwiYnJpZWYiKTsNCgkkR0xPQkFMU1sibmVjaG9faW5kZW50d2lkdGgiXT0kdGhpcy0+R2V0UHJlZmVyZW5jZSgiaW5kZW50d2lkdGgiLCIyIik7DQoJJEdMT0JBTFNbIm5lY2hvX2ZvcmNlbG93ZXJ0YWdzIl09KCR0aGlzLT5HZXRQcmVmZXJlbmNlKCJmb3JjZWxvd2VydGFncyIsIjAiKT09IjEiKTsNCgkkcz0kY29udGVudDsNCglzd2l0Y2ggKCRtYW5nbGV0eXBlKSB7DQoJICBjYXNlICJzY3JhbWJsZSIgOiB7DQoJCSAgJHM9bmVjaG9fdWdseWZ5KCRzKTsNCgkJICBicmVhazsNCgkJfQ0KCSAgY2FzZSAibmljZSIgOiB7DQoJCSAgJHM9bmVjaG9fdWdseWZ5KCRzKTsNCgkJICAkcz1uZWNob19mb3JtYXQoJHMpOw0KCQkgIGJyZWFrOw0KCQl9DQoJICBjYXNlICJjbGVhbiIgOiB7DQoJCSAgJHM9bmVjaG9fY2xlYW4oJHMpOw0KCQkgIGJyZWFrOw0KCQl9DQoJfQ0KCSRjb250ZW50PSRzOw0KfQ0KaWYgKCR0aGlzLT5HZXRQcmVmZXJlbmNlKCJoaWRlbWVzc2FnZXMiKSE9InRydWUiKSB7DQoJJHM9JGNvbnRlbnQ7DQoJJHMuPSJcbjwhLS0gU2NyaXB0RGVwbG95IHZlcnNpb24gIi4kdGhpcy0+R2V0VmVyc2lvbigpLiIgd2FzIGhlcmUgYXQgIi5kYXRlKCJyIix0aW1lKCkpLiJcbiAgTW9kZT0iLiRtYW5nbGV0eXBlOw0KCSRzLj0iXG4gIEZpbmFsIGluZGVudGF0aW9uIGxldmVsPSIuJEdMT0JBTFNbIm5lY2hvX2luZGVudGxldmVsIl07DQoJaWYgKCRHTE9CQUxTWyJuZWNob19kZWJ1Z21vZGUiXSkgJHMuPSJcbiAgQXNzdW1lZCBlcnJvcnM9Ii4kR0xPQkFMU1sibmVjaG9fZXJyb3JzIl07DQoJaWYgKCRtYW5nbGV0eXBlPT0ibmljZSIpICRzLj0iXG4gIFNlY29uZHMgd2FzdGVkIGZvcm1hdHRpbmcgY29kZT0iLiRHTE9CQUxTWyJuZWNob190aW1lciJdOw0KCSRzLj0iXG4tLT5cbiI7DQoJJGNvbnRlbnQ9JHM7DQp9DQoNCg0KJHBhcmFtc1siY29udGVudCJdPXRyaW0oJGNvbnRlbnQpOw0KPz4NCg==]]></data>
	</file>
	<file>
	  <filename>/example.css</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[Ym9keSB7CgkJbWFyZ2luOjIwcHggMjBweCAwcHggMjBweDsKCQl9CgkKCSNtYWluIHsKCQlib3JkZXI6MXB4IHNvbGlkICMwMDA7IAoJCWJhY2tncm91bmQ6I2ZmZjsKCQl9CgoKCSNtYWluICNtZW51IHsKCQlib3JkZXItbGVmdDoxcHggc29saWQgIzAwMDsgCgkJYm9yZGVyLWJvdHRvbToxcHggc29saWQgIzAwMDsKCQlmbG9hdDpyaWdodDsKCQl3aWR0aDoyMzBweDsKCQliYWNrZ3JvdW5kOiNlZWU7CgkJbWFyZ2luOjBweCAwcHggMTBweCAxMHB4OwoJCX0KCQkKCXAsaDEscHJlIHsKCQltYXJnaW46MHB4IDEwcHggMTBweCAxMHB4OwoJCX0KCQkKCWgxIHsKCQlmb250LXNpemU6MTRweDsKCQlwYWRkaW5nLXRvcDoxMHB4OwoJCX0KCQoJI21lbnUgcCB7IGZvbnQtc2l6ZToxMHB4fQ==]]></data>
	</file>
	<file>
	  <filename>/extract_css_urls.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKLyoqCiAqIENvcHlyaWdodCAoYykgMjAwOCwgRGF2aWQgUi4gTmFkZWF1LCBOYWRlYXVTb2Z0d2FyZS5jb20uCiAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAqCiAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKICogYXJlIG1ldDoKICoKICoJKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAogKgkgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KICoKICoJKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCiAqCSAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKICoJICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQKICoJICB3aXRoIHRoZSBkaXN0cmlidXRpb24uCiAqCiAqCSogTmVpdGhlciB0aGUgbmFtZXMgb2YgRGF2aWQgUi4gTmFkZWF1IG9yIE5hZGVhdVNvZnR3YXJlLmNvbSwgbm9yCiAqCSAgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlCiAqCSAgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgogKgkgIHdyaXR0ZW4gcGVybWlzc2lvbi4KICoKICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwogKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAogKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUwogKiBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQogKiBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsCiAqIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsCiAqIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUgogKiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZCiAqIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZCiAqIE9GIFNVQ0ggREFNQUdFLgogKi8KCi8qCiAqIFRoaXMgaXMgYSBCU0QgTGljZW5zZSBhcHByb3ZlZCBieSB0aGUgT3BlbiBTb3VyY2UgSW5pdGlhdGl2ZSAoT1NJKS4KICogU2VlOiAgaHR0cDovL3d3dy5vcGVuc291cmNlLm9yZy9saWNlbnNlcy9ic2QtbGljZW5zZS5waHAKICovCgoKLyoqCiAqIEV4dHJhY3QgVVJMcyBmcm9tIFVURi04IENTUyB0ZXh0LgogKgogKiBVUkxzIHdpdGhpbiBAaW1wb3J0IHN0YXRlbWVudHMgYW5kIHVybCgpIHByb3BlcnR5IGZ1bmN0aW9ucyBhcmUgZXh0cmFjdGVkCiAqIGFuZCByZXR1cm5lZCBpbiBhbiBhc3NvY2lhdGl2ZSBhcnJheSBvZiBhcnJheXMuICBBcnJheSBrZXlzIGluZGljYXRlCiAqIHRoZSB1c2UgY29udGV4dCBmb3IgdGhlIFVSTCwgaW5jbHVkaW5nOgogKgogKiAJImltcG9ydCIKICogCSJwcm9wZXJ0eSIKICoKICogRWFjaCB2YWx1ZSBpbiB0aGUgYXNzb2NpYXRpdmUgYXJyYXkgaXMgYW4gYXJyYXkgb2YgVVJMcy4KICoKICogUGFyYW1ldGVyczoKICogCXRleHQJCXRoZSBVVEYtOCB0ZXh0IHRvIHNjYW4KICoKICogUmV0dXJuIHZhbHVlczoKICogCWFuIGFzc29jaWF0aXZlIGFycmF5IG9mIGFycmF5cyBvZiBVUkxzLgogKgogKiBTZWU6CiAqIAlodHRwOi8vbmFkZWF1c29mdHdhcmUuY29tL2FydGljbGVzLzIwMDgvMDEvcGhwX3RpcF9ob3dfZXh0cmFjdF91cmxzX2Nzc19maWxlCiAqLwpmdW5jdGlvbiBleHRyYWN0X2Nzc191cmxzKCAkdGV4dCApCnsKCSR1cmxzID0gYXJyYXkoICk7CgoJJHVybF9wYXR0ZXJuICAgICA9ICcoKFteXFxcXFwnIiwgXChcKV0qKFxcXFwuKT8pKyknOwoJJHVybGZ1bmNfcGF0dGVybiA9ICd1cmxcKFxzKltcJyJdPycgLiAkdXJsX3BhdHRlcm4gLiAnW1wnIl0/XHMqXCknOwoJJHBhdHRlcm4gICAgICAgICA9ICcvKCcgLgoJCSAnKEBpbXBvcnRccypbXCciXScgLiAkdXJsX3BhdHRlcm4gICAgIC4gJ1tcJyJdKScgLgoJCSd8KEBpbXBvcnRccyonICAgICAgLiAkdXJsZnVuY19wYXR0ZXJuIC4gJyknICAgICAgLgoJCSd8KCcgICAgICAgICAgICAgICAgLiAkdXJsZnVuY19wYXR0ZXJuIC4gJyknICAgICAgLiAgJykvaXUnOwoJaWYgKCAhcHJlZ19tYXRjaF9hbGwoICRwYXR0ZXJuLCAkdGV4dCwgJG1hdGNoZXMgKSApCgkJcmV0dXJuICR1cmxzOwoKCS8vIEBpbXBvcnQgJy4uLicKCS8vIEBpbXBvcnQgIi4uLiIKCWZvcmVhY2ggKCAkbWF0Y2hlc1szXSBhcyAkbWF0Y2ggKQoJCWlmICggIWVtcHR5KCRtYXRjaCkgKQoJCQkkdXJsc1snaW1wb3J0J11bXSA9IAoJCQkJcHJlZ19yZXBsYWNlKCAnL1xcXFwoLikvdScsICdcXDEnLCAkbWF0Y2ggKTsKCgkvLyBAaW1wb3J0IHVybCguLi4pCgkvLyBAaW1wb3J0IHVybCgnLi4uJykKCS8vIEBpbXBvcnQgdXJsKCIuLi4iKQoJZm9yZWFjaCAoICRtYXRjaGVzWzddIGFzICRtYXRjaCApCgkJaWYgKCAhZW1wdHkoJG1hdGNoKSApCgkJCSR1cmxzWydpbXBvcnQnXVtdID0gCgkJCQlwcmVnX3JlcGxhY2UoICcvXFxcXCguKS91JywgJ1xcMScsICRtYXRjaCApOwoKCS8vIHVybCguLi4pCgkvLyB1cmwoJy4uLicpCgkvLyB1cmwoIi4uLiIpCglmb3JlYWNoICggJG1hdGNoZXNbMTFdIGFzICRtYXRjaCApCgkJaWYgKCAhZW1wdHkoJG1hdGNoKSApCgkJCSR1cmxzWydwcm9wZXJ0eSddW10gPSAKCQkJCXByZWdfcmVwbGFjZSggJy9cXFxcKC4pL3UnLCAnXFwxJywgJG1hdGNoICk7CgoJcmV0dXJuICR1cmxzOwp9Cgo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/extract_html_urls.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKLyoqCiAqIENvcHlyaWdodCAoYykgMjAwOCwgRGF2aWQgUi4gTmFkZWF1LCBOYWRlYXVTb2Z0d2FyZS5jb20uCiAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAqCiAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKICogYXJlIG1ldDoKICoKICoJKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAogKgkgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KICoKICoJKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCiAqCSAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKICoJICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQKICoJICB3aXRoIHRoZSBkaXN0cmlidXRpb24uCiAqCiAqCSogTmVpdGhlciB0aGUgbmFtZXMgb2YgRGF2aWQgUi4gTmFkZWF1IG9yIE5hZGVhdVNvZnR3YXJlLmNvbSwgbm9yCiAqCSAgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlCiAqCSAgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvcgogKgkgIHdyaXR0ZW4gcGVybWlzc2lvbi4KICoKICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwogKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAogKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUwogKiBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQogKiBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsCiAqIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsCiAqIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUgogKiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZCiAqIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZCiAqIE9GIFNVQ0ggREFNQUdFLgogKi8KCi8qCiAqIFRoaXMgaXMgYSBCU0QgTGljZW5zZSBhcHByb3ZlZCBieSB0aGUgT3BlbiBTb3VyY2UgSW5pdGlhdGl2ZSAoT1NJKS4KICogU2VlOiAgaHR0cDovL3d3dy5vcGVuc291cmNlLm9yZy9saWNlbnNlcy9ic2QtbGljZW5zZS5waHAKICovCgoKcmVxdWlyZSAnZXh0cmFjdF9jc3NfdXJscy5waHAnOwoKLyoqCiAqIEV4dHJhY3QgVVJMcyBmcm9tIGEgd2ViIHBhZ2UuCiAqCiAqIFVSTHMgYXJlIGV4dHJhY3RlZCBmcm9tIGEgbG9uZyBsaXN0IG9mIHRhZ3MgYW5kIGF0dHJpYnV0ZXMgYXMgZGVmaW5lZAogKiBieSB0aGUgSFRNTCAyLjAsIEhUTUwgMy4yLCBIVE1MIDQuMDEsIGFuZCBkcmFmdCBIVE1MIDUuMCBzcGVjaWZpY2F0aW9ucy4KICogVVJMcyBhcmUgYWxzbyBleHRyYWN0ZWQgZnJvbSB0YWdzIGFuZCBhdHRyaWJ1dGVzIHRoYXQgYXJlIGNvbW1vbgogKiBleHRlbnNpb25zIG9mIEhUTUwsIGZyb20gdGhlIGRyYWZ0IEZvcm1zIDIuMCBzcGVjaWZpY2F0aW9uLCBmcm9tIFhIVE1MLAogKiBhbmQgZnJvbSBXTUwgMS4zIGFuZCAyLjAuCiAqCiAqIFRoZSBmdW5jdGlvbiByZXR1cm5zIGFuIGFzc29jaWF0aXZlIGFycmF5IG9mIGFzc29jaWF0aXZlIGFycmF5cyBvZgogKiBhcnJheXMgb2YgVVJMcy4gIFRoZSBvdXRlcm1vc3QgYXJyYXkncyBrZXlzIGFyZSB0aGUgdGFnIChlbGVtZW50KSBuYW1lLAogKiBzdWNoIGFzICJhIiBmb3IgPGE+IG9yICJpbWciIGZvciA8aW1nPi4gIFRoZSB2YWx1ZXMgZm9yIHRoZXNlIGVudHJpZXMKICogYXJlIGFzc29jaWF0aXZlIGFycmF5cyB3aGVyZSB0aGUga2V5cyBhcmUgYXR0cmlidXRlIG5hbWVzIGZvciB0aG9zZQogKiB0YWdzLCBzdWNoIGFzICJocmVmIiBmb3IgPGEgaHJlZj0iLi4uIj4uICBGaW5hbGx5LCB0aGUgdmFsdWVzIGZvcgogKiB0aG9zZSBhcnJheXMgYXJlIFVSTHMgZm91bmQgaW4gdGhvc2UgdGFncyBhbmQgYXR0cmlidXRlcyB0aHJvdWdob3V0CiAqIHRoZSB0ZXh0LgogKgogKiBQYXJhbWV0ZXJzOgogKiAJdGV4dAkJdGhlIFVURi04IHRleHQgdG8gc2NhbgogKgogKiBSZXR1cm4gdmFsdWVzOgogKiAJYW4gYXNzb2NpYXRpdmUgYXJyYXkgd2hlcmUga2V5cyBhcmUgdGFncyBhbmQgdmFsdWVzIGFyZSBhbgogKiAJYXNzb2NpYXRpdmUgYXJyYXkgd2hlcmUga2V5cyBhcmUgYXR0cmlidXRlcyBhbmQgdmFsdWVzIGFyZQogKiAJYW4gYXJyYXkgb2YgVVJMcy4KICoKICogU2VlOgogKiAJaHR0cDovL25hZGVhdXNvZnR3YXJlLmNvbS9hcnRpY2xlcy8yMDA4LzAxL3BocF90aXBfaG93X2V4dHJhY3RfdXJsc193ZWJfcGFnZQogKi8KZnVuY3Rpb24gZXh0cmFjdF9odG1sX3VybHMoICR0ZXh0ICkKewoJJG1hdGNoX2VsZW1lbnRzID0gYXJyYXkoCgkJLy8gSFRNTAoJCWFycmF5KCdlbGVtZW50Jz0+J2EnLAkJJ2F0dHJpYnV0ZSc9PidocmVmJyksCQkvLyAyLjAKCQlhcnJheSgnZWxlbWVudCc9PidhJywJCSdhdHRyaWJ1dGUnPT4ndXJuJyksCQkvLyAyLjAKCQlhcnJheSgnZWxlbWVudCc9PidiYXNlJywJJ2F0dHJpYnV0ZSc9PidocmVmJyksCQkvLyAyLjAKCQlhcnJheSgnZWxlbWVudCc9Pidmb3JtJywJJ2F0dHJpYnV0ZSc9PidhY3Rpb24nKSwJCS8vIDIuMAoJCWFycmF5KCdlbGVtZW50Jz0+J2ltZycsCQknYXR0cmlidXRlJz0+J3NyYycpLAkJLy8gMi4wCgkJYXJyYXkoJ2VsZW1lbnQnPT4nbGluaycsCSdhdHRyaWJ1dGUnPT4naHJlZicpLAkJLy8gMi4wCgoJCWFycmF5KCdlbGVtZW50Jz0+J2FwcGxldCcsCSdhdHRyaWJ1dGUnPT4nY29kZScpLAkJLy8gMy4yCgkJYXJyYXkoJ2VsZW1lbnQnPT4nYXBwbGV0JywJJ2F0dHJpYnV0ZSc9Pidjb2RlYmFzZScpLAkvLyAzLjIKCQlhcnJheSgnZWxlbWVudCc9PidhcmVhJywJJ2F0dHJpYnV0ZSc9PidocmVmJyksCQkvLyAzLjIKCQlhcnJheSgnZWxlbWVudCc9Pidib2R5JywJJ2F0dHJpYnV0ZSc9PidiYWNrZ3JvdW5kJyksCS8vIDMuMgoJCWFycmF5KCdlbGVtZW50Jz0+J2ltZycsCQknYXR0cmlidXRlJz0+J3VzZW1hcCcpLAkJLy8gMy4yCgkJYXJyYXkoJ2VsZW1lbnQnPT4naW5wdXQnLAknYXR0cmlidXRlJz0+J3NyYycpLAkJLy8gMy4yCgoJCWFycmF5KCdlbGVtZW50Jz0+J2FwcGxldCcsCSdhdHRyaWJ1dGUnPT4nYXJjaGl2ZScpLAkvLyA0LjAxCgkJYXJyYXkoJ2VsZW1lbnQnPT4nYXBwbGV0JywJJ2F0dHJpYnV0ZSc9PidvYmplY3QnKSwJCS8vIDQuMDEKCQlhcnJheSgnZWxlbWVudCc9PidibG9ja3F1b3RlJywJJ2F0dHJpYnV0ZSc9PidjaXRlJyksCQkvLyA0LjAxCgkJYXJyYXkoJ2VsZW1lbnQnPT4nZGVsJywJCSdhdHRyaWJ1dGUnPT4nY2l0ZScpLAkJLy8gNC4wMQoJCWFycmF5KCdlbGVtZW50Jz0+J2ZyYW1lJywJJ2F0dHJpYnV0ZSc9Pidsb25nZGVzYycpLAkvLyA0LjAxCgkJYXJyYXkoJ2VsZW1lbnQnPT4nZnJhbWUnLAknYXR0cmlidXRlJz0+J3NyYycpLAkJLy8gNC4wMQoJCWFycmF5KCdlbGVtZW50Jz0+J2hlYWQnLAknYXR0cmlidXRlJz0+J3Byb2ZpbGUnKSwJLy8gNC4wMQoJCWFycmF5KCdlbGVtZW50Jz0+J2lmcmFtZScsCSdhdHRyaWJ1dGUnPT4nbG9uZ2Rlc2MnKSwJLy8gNC4wMQoJCWFycmF5KCdlbGVtZW50Jz0+J2lmcmFtZScsCSdhdHRyaWJ1dGUnPT4nc3JjJyksCQkvLyA0LjAxCgkJYXJyYXkoJ2VsZW1lbnQnPT4naW1nJywJCSdhdHRyaWJ1dGUnPT4nbG9uZ2Rlc2MnKSwJLy8gNC4wMQoJCWFycmF5KCdlbGVtZW50Jz0+J2lucHV0JywJJ2F0dHJpYnV0ZSc9Pid1c2VtYXAnKSwJCS8vIDQuMDEKCQlhcnJheSgnZWxlbWVudCc9PidpbnMnLAkJJ2F0dHJpYnV0ZSc9PidjaXRlJyksCQkvLyA0LjAxCgkJYXJyYXkoJ2VsZW1lbnQnPT4nb2JqZWN0JywJJ2F0dHJpYnV0ZSc9PidhcmNoaXZlJyksCS8vIDQuMDEKCQlhcnJheSgnZWxlbWVudCc9PidvYmplY3QnLAknYXR0cmlidXRlJz0+J2NsYXNzaWQnKSwJLy8gNC4wMQoJCWFycmF5KCdlbGVtZW50Jz0+J29iamVjdCcsCSdhdHRyaWJ1dGUnPT4nY29kZWJhc2UnKSwJLy8gNC4wMQoJCWFycmF5KCdlbGVtZW50Jz0+J29iamVjdCcsCSdhdHRyaWJ1dGUnPT4nZGF0YScpLAkJLy8gNC4wMQoJCWFycmF5KCdlbGVtZW50Jz0+J29iamVjdCcsCSdhdHRyaWJ1dGUnPT4ndXNlbWFwJyksCQkvLyA0LjAxCgkJYXJyYXkoJ2VsZW1lbnQnPT4ncScsCQknYXR0cmlidXRlJz0+J2NpdGUnKSwJCS8vIDQuMDEKCQlhcnJheSgnZWxlbWVudCc9PidzY3JpcHQnLAknYXR0cmlidXRlJz0+J3NyYycpLAkJLy8gNC4wMQoKCQlhcnJheSgnZWxlbWVudCc9PidhdWRpbycsCSdhdHRyaWJ1dGUnPT4nc3JjJyksCQkvLyA1LjAKCQlhcnJheSgnZWxlbWVudCc9Pidjb21tYW5kJywJJ2F0dHJpYnV0ZSc9PidpY29uJyksCQkvLyA1LjAKCQlhcnJheSgnZWxlbWVudCc9PidlbWJlZCcsCSdhdHRyaWJ1dGUnPT4nc3JjJyksCQkvLyA1LjAKCQlhcnJheSgnZWxlbWVudCc9PidldmVudC1zb3VyY2UnLCdhdHRyaWJ1dGUnPT4nc3JjJyksCQkvLyA1LjAKCQlhcnJheSgnZWxlbWVudCc9PidodG1sJywJJ2F0dHJpYnV0ZSc9PidtYW5pZmVzdCcpLAkvLyA1LjAKCQlhcnJheSgnZWxlbWVudCc9Pidzb3VyY2UnLAknYXR0cmlidXRlJz0+J3NyYycpLAkJLy8gNS4wCgkJYXJyYXkoJ2VsZW1lbnQnPT4ndmlkZW8nLAknYXR0cmlidXRlJz0+J3NyYycpLAkJLy8gNS4wCgkJYXJyYXkoJ2VsZW1lbnQnPT4ndmlkZW8nLAknYXR0cmlidXRlJz0+J3Bvc3RlcicpLAkJLy8gNS4wCgoJCWFycmF5KCdlbGVtZW50Jz0+J2Jnc291bmQnLAknYXR0cmlidXRlJz0+J3NyYycpLAkJLy8gRXh0ZW5zaW9uCgkJYXJyYXkoJ2VsZW1lbnQnPT4nYm9keScsCSdhdHRyaWJ1dGUnPT4nY3JlZGl0cycpLAkvLyBFeHRlbnNpb24KCQlhcnJheSgnZWxlbWVudCc9Pidib2R5JywJJ2F0dHJpYnV0ZSc9PidpbnN0cnVjdGlvbnMnKSwJLy8gRXh0ZW5zaW9uCgkJYXJyYXkoJ2VsZW1lbnQnPT4nYm9keScsCSdhdHRyaWJ1dGUnPT4nbG9nbycpLAkJLy8gRXh0ZW5zaW9uCgkJYXJyYXkoJ2VsZW1lbnQnPT4nZGl2JywJCSdhdHRyaWJ1dGUnPT4naHJlZicpLAkJLy8gRXh0ZW5zaW9uCgkJYXJyYXkoJ2VsZW1lbnQnPT4nZGl2JywJCSdhdHRyaWJ1dGUnPT4nc3JjJyksCQkvLyBFeHRlbnNpb24KCQlhcnJheSgnZWxlbWVudCc9PidlbWJlZCcsCSdhdHRyaWJ1dGUnPT4nY29kZScpLAkJLy8gRXh0ZW5zaW9uCgkJYXJyYXkoJ2VsZW1lbnQnPT4nZW1iZWQnLAknYXR0cmlidXRlJz0+J3BsdWdpbnNwYWdlJyksCS8vIEV4dGVuc2lvbgoJCWFycmF5KCdlbGVtZW50Jz0+J2h0bWwnLAknYXR0cmlidXRlJz0+J2JhY2tncm91bmQnKSwJLy8gRXh0ZW5zaW9uCgkJYXJyYXkoJ2VsZW1lbnQnPT4naWxheWVyJywJJ2F0dHJpYnV0ZSc9PidzcmMnKSwJCS8vIEV4dGVuc2lvbgoJCWFycmF5KCdlbGVtZW50Jz0+J2ltZycsCQknYXR0cmlidXRlJz0+J2R5bnNyYycpLAkJLy8gRXh0ZW5zaW9uCgkJYXJyYXkoJ2VsZW1lbnQnPT4naW1nJywJCSdhdHRyaWJ1dGUnPT4nbG93c3JjJyksCQkvLyBFeHRlbnNpb24KCQlhcnJheSgnZWxlbWVudCc9PidpbnB1dCcsCSdhdHRyaWJ1dGUnPT4nZHluc3JjJyksCQkvLyBFeHRlbnNpb24KCQlhcnJheSgnZWxlbWVudCc9PidpbnB1dCcsCSdhdHRyaWJ1dGUnPT4nbG93c3JjJyksCQkvLyBFeHRlbnNpb24KCQlhcnJheSgnZWxlbWVudCc9Pid0YWJsZScsCSdhdHRyaWJ1dGUnPT4nYmFja2dyb3VuZCcpLAkvLyBFeHRlbnNpb24KCQlhcnJheSgnZWxlbWVudCc9Pid0ZCcsCQknYXR0cmlidXRlJz0+J2JhY2tncm91bmQnKSwJLy8gRXh0ZW5zaW9uCgkJYXJyYXkoJ2VsZW1lbnQnPT4ndGgnLAkJJ2F0dHJpYnV0ZSc9PidiYWNrZ3JvdW5kJyksCS8vIEV4dGVuc2lvbgoJCWFycmF5KCdlbGVtZW50Jz0+J2xheWVyJywJJ2F0dHJpYnV0ZSc9PidzcmMnKSwJCS8vIEV4dGVuc2lvbgoJCWFycmF5KCdlbGVtZW50Jz0+J3htbCcsCQknYXR0cmlidXRlJz0+J3NyYycpLAkJLy8gRXh0ZW5zaW9uCgoJCWFycmF5KCdlbGVtZW50Jz0+J2J1dHRvbicsCSdhdHRyaWJ1dGUnPT4nYWN0aW9uJyksCQkvLyBGb3JtcyAyLjAKCQlhcnJheSgnZWxlbWVudCc9PidkYXRhbGlzdCcsCSdhdHRyaWJ1dGUnPT4nZGF0YScpLAkJLy8gRm9ybXMgMi4wCgkJYXJyYXkoJ2VsZW1lbnQnPT4nZm9ybScsCSdhdHRyaWJ1dGUnPT4nZGF0YScpLAkJLy8gRm9ybXMgMi4wCgkJYXJyYXkoJ2VsZW1lbnQnPT4naW5wdXQnLAknYXR0cmlidXRlJz0+J2FjdGlvbicpLAkJLy8gRm9ybXMgMi4wCgkJYXJyYXkoJ2VsZW1lbnQnPT4nc2VsZWN0JywJJ2F0dHJpYnV0ZSc9PidkYXRhJyksCQkvLyBGb3JtcyAyLjAKCgkJLy8gWEhUTUwKCQlhcnJheSgnZWxlbWVudCc9PidodG1sJywJJ2F0dHJpYnV0ZSc9Pid4bWxucycpLAoKCQkvLyBXTUwKCQlhcnJheSgnZWxlbWVudCc9PidhY2Nlc3MnLAknYXR0cmlidXRlJz0+J3BhdGgnKSwJCS8vIDEuMwoJCWFycmF5KCdlbGVtZW50Jz0+J2NhcmQnLAknYXR0cmlidXRlJz0+J29uZW50ZXJmb3J3YXJkJyksCS8vIDEuMwoJCWFycmF5KCdlbGVtZW50Jz0+J2NhcmQnLAknYXR0cmlidXRlJz0+J29uZW50ZXJiYWNrd2FyZCcpLC8vIDEuMwoJCWFycmF5KCdlbGVtZW50Jz0+J2NhcmQnLAknYXR0cmlidXRlJz0+J29udGltZXInKSwJLy8gMS4zCgkJYXJyYXkoJ2VsZW1lbnQnPT4nZ28nLAkJJ2F0dHJpYnV0ZSc9PidocmVmJyksCQkvLyAxLjMKCQlhcnJheSgnZWxlbWVudCc9PidvcHRpb24nLAknYXR0cmlidXRlJz0+J29ucGljaycpLAkJLy8gMS4zCgkJYXJyYXkoJ2VsZW1lbnQnPT4ndGVtcGxhdGUnLAknYXR0cmlidXRlJz0+J29uZW50ZXJmb3J3YXJkJyksCS8vIDEuMwoJCWFycmF5KCdlbGVtZW50Jz0+J3RlbXBsYXRlJywJJ2F0dHJpYnV0ZSc9PidvbmVudGVyYmFja3dhcmQnKSwvLyAxLjMKCQlhcnJheSgnZWxlbWVudCc9Pid0ZW1wbGF0ZScsCSdhdHRyaWJ1dGUnPT4nb250aW1lcicpLAkvLyAxLjMKCQlhcnJheSgnZWxlbWVudCc9Pid3bWwnLAkJJ2F0dHJpYnV0ZSc9Pid4bWxucycpLAkJLy8gMi4wCgkpOwoKCSRtYXRjaF9tZXRhcyA9IGFycmF5KAoJCSdjb250ZW50LWJhc2UnLAoJCSdjb250ZW50LWxvY2F0aW9uJywKCQkncmVmZXJlcicsCgkJJ2xvY2F0aW9uJywKCQkncmVmcmVzaCcsCgkpOwoKCS8vIEV4dHJhY3QgYWxsIGVsZW1lbnRzCglpZiAoICFwcmVnX21hdGNoX2FsbCggJy88KFthLXpdW14+XSopPi9pdScsICR0ZXh0LCAkbWF0Y2hlcyApICkKCQlyZXR1cm4gYXJyYXkoICk7CgkkZWxlbWVudHMgPSAkbWF0Y2hlc1sxXTsKCSR2YWx1ZV9wYXR0ZXJuID0gJz0oKCIoW14iXSopIil8KFteXHNdKikpJzsKCgkvLyBNYXRjaCBlbGVtZW50cyBhbmQgYXR0cmlidXRlcwoJZm9yZWFjaCAoICRtYXRjaF9lbGVtZW50cyBhcyAkbWF0Y2hfZWxlbWVudCApCgl7CgkJJG5hbWUgPSAkbWF0Y2hfZWxlbWVudFsnZWxlbWVudCddOwoJCSRhdHRyID0gJG1hdGNoX2VsZW1lbnRbJ2F0dHJpYnV0ZSddOwoJCSRwYXR0ZXJuID0gJy9eJyAuICRuYW1lIC4gJ1xzLionIC4gJGF0dHIgLiAkdmFsdWVfcGF0dGVybiAuICcvaXUnOwoJCWlmICggJG5hbWUgPT0gJ29iamVjdCcgKQoJCQkkc3BsaXRfcGF0dGVybiA9ICcvXHMqL3UnOwkvLyBTcGFjZS1zZXBhcmF0ZWQgVVJMIGxpc3QKCQllbHNlIGlmICggJG5hbWUgPT0gJ2FyY2hpdmUnICkKCQkJJHNwbGl0X3BhdHRlcm4gPSAnLyxccyovdSc7CS8vIENvbW1hLXNlcGFyYXRlZCBVUkwgbGlzdAoJCWVsc2UKCQkJdW5zZXQoICRzcGxpdF9wYXR0ZXJuICk7CS8vIFNpbmdsZSBVUkwKCQlmb3JlYWNoICggJGVsZW1lbnRzIGFzICRlbGVtZW50ICkKCQl7CgkJCWlmICggIXByZWdfbWF0Y2goICRwYXR0ZXJuLCAkZWxlbWVudCwgJG1hdGNoICkgKQoJCQkJY29udGludWU7CgkJCSRtID0gZW1wdHkoJG1hdGNoWzNdKSA/ICRtYXRjaFs0XSA6ICRtYXRjaFszXTsKCQkJaWYgKCAhaXNzZXQoICRzcGxpdF9wYXR0ZXJuICkgKQoJCQkJJHVybHNbJG5hbWVdWyRhdHRyXVtdID0gJG07CgkJCWVsc2UKCQkJewoJCQkJJG1zcGxpdCA9IHByZWdfc3BsaXQoICRzcGxpdF9wYXR0ZXJuLCAkbSApOwoJCQkJZm9yZWFjaCAoICRtc3BsaXQgYXMgJG1zICkKCQkJCQkkdXJsc1skbmFtZV1bJGF0dHJdW10gPSAkbXM7CgkJCX0KCQl9Cgl9CgoJLy8gTWF0Y2ggbWV0YSBodHRwLWVxdWl2IGVsZW1lbnRzCglmb3JlYWNoICggJG1hdGNoX21ldGFzIGFzICRtYXRjaF9tZXRhICkKCXsKCQkkYXR0cl9wYXR0ZXJuICAgID0gJy9odHRwLWVxdWl2PSI/JyAuICRtYXRjaF9tZXRhIC4gJyI/L2l1JzsKCQkkY29udGVudF9wYXR0ZXJuID0gJy9jb250ZW50JyAgLiAkdmFsdWVfcGF0dGVybiAuICcvaXUnOwoJCSRyZWZyZXNoX3BhdHRlcm4gPSAnL1xkKjtccyoodXJsPSk/KC4qKSQvaXUnOwoJCWZvcmVhY2ggKCAkZWxlbWVudHMgYXMgJGVsZW1lbnQgKQoJCXsKCQkJaWYgKCAhcHJlZ19tYXRjaCggJy9ebWV0YS9pdScsICRlbGVtZW50ICkgfHwKCQkJCSFwcmVnX21hdGNoKCAkYXR0cl9wYXR0ZXJuLCAkZWxlbWVudCApIHx8CgkJCQkhcHJlZ19tYXRjaCggJGNvbnRlbnRfcGF0dGVybiwgJGVsZW1lbnQsICRtYXRjaCApICkKCQkJCWNvbnRpbnVlOwoJCQkkbSA9IGVtcHR5KCRtYXRjaFszXSkgPyAkbWF0Y2hbNF0gOiAkbWF0Y2hbM107CgkJCWlmICggJG1hdGNoX21ldGEgIT0gJ3JlZnJlc2gnICkKCQkJCSR1cmxzWydtZXRhJ11bJ2h0dHAtZXF1aXYnXVtdID0gJG07CgkJCWVsc2UgaWYgKCBwcmVnX21hdGNoKCAkcmVmcmVzaF9wYXR0ZXJuLCAkbSwgJG1hdGNoICkgKQoJCQkJJHVybHNbJ21ldGEnXVsnaHR0cC1lcXVpdiddW10gPSAkbWF0Y2hbMl07CgkJfQoJfQoKCS8vIE1hdGNoIHN0eWxlIGF0dHJpYnV0ZXMKCSR1cmxzWydzdHlsZSddID0gYXJyYXkoICk7Cgkkc3R5bGVfcGF0dGVybiA9ICcvc3R5bGUnIC4gJHZhbHVlX3BhdHRlcm4gLiAnL2l1JzsKCWZvcmVhY2ggKCAkZWxlbWVudHMgYXMgJGVsZW1lbnQgKQoJewoJCWlmICggIXByZWdfbWF0Y2goICRzdHlsZV9wYXR0ZXJuLCAkZWxlbWVudCwgJG1hdGNoICkgKQoJCQljb250aW51ZTsKCQkkbSA9IGVtcHR5KCRtYXRjaFszXSkgPyAkbWF0Y2hbNF0gOiAkbWF0Y2hbM107CgkJJHN0eWxlX3VybHMgPSBleHRyYWN0X2Nzc191cmxzKCAkbSApOwoJCWlmICggIWVtcHR5KCAkc3R5bGVfdXJscyApICkKCQkJJHVybHNbJ3N0eWxlJ10gPSBhcnJheV9tZXJnZV9yZWN1cnNpdmUoCgkJCQkkdXJsc1snc3R5bGUnXSwgJHN0eWxlX3VybHMgKTsKCX0KCgkvLyBNYXRjaCBzdHlsZSBib2RpZXMKCWlmICggcHJlZ19tYXRjaF9hbGwoICcvPHN0eWxlW14+XSo+KC4qPyk8XC9zdHlsZT4vc2l1JywgJHRleHQsICRzdHlsZV9ib2RpZXMgKSApCgl7CgkJZm9yZWFjaCAoICRzdHlsZV9ib2RpZXNbMV0gYXMgJHN0eWxlX2JvZHkgKQoJCXsKCQkJJHN0eWxlX3VybHMgPSBleHRyYWN0X2Nzc191cmxzKCAkc3R5bGVfYm9keSApOwoJCQlpZiAoICFlbXB0eSggJHN0eWxlX3VybHMgKSApCgkJCQkkdXJsc1snc3R5bGUnXSA9IGFycmF5X21lcmdlX3JlY3Vyc2l2ZSgKCQkJCQkkdXJsc1snc3R5bGUnXSwgJHN0eWxlX3VybHMgKTsKCQl9Cgl9CglpZiAoIGVtcHR5KCR1cmxzWydzdHlsZSddKSApCgkJdW5zZXQoICR1cmxzWydzdHlsZSddICk7CgoJcmV0dXJuICR1cmxzOwp9Cgo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/function.admin_associationstab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCi8qKg0KICogTW9kdWxlOiBTY3JpcHREZXBsb3kgLSBNaW5pZnkgYW5kIGRlcGxveW1lbnQgb2YgSlMgQ1NTIGFuZCBIVE1MDQogKiANCiAqIA0KICogQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykNCiAqIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnDQogKiBUaGUgbW9kdWxlJ3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvc2NyaXB0ZGVwbG95Lw0KICogDQogKiBAcGFja2FnZSBTY3JpcHREZXBsb3kNCiAqIEBhdXRob3IgamVyZW15QmFzcyA8amVyZW15QmFzc0BjYWJsZW9uZS5uZXQ+DQogKiBAY29weXJpZ2h0IEplcmVteSBCYXNzDQogKiBAbGljZW5zZSBodHRwOi8vd3d3LmdudS5vcmcvY29weWxlZnQvZ3BsLmh0bWwgRnJlZWx5IGF2YWlsYWJsZSB1bmRlciBHUEwNCiAqLyANCg0KJGRiID0gJHRoaXMtPkdldERiKCk7DQoNCiRjb25maWcgPSBjbXNtcygpLT5HZXRDb25maWcoKTsNCg0KCSRkaXIgPSAkY29uZmlnWydyb290X3VybCddOw0KCSRBZG1pbmRpciA9ICRkaXIuJy8nLiRjb25maWdbJ2FkbWluX2RpciddOw0KDQokYWRtaW50aGVtZSA9IGNtc21zKCktPnZhcmlhYmxlc1snYWRtaW50aGVtZSddOw0KJHRlbXBsYXRlb3BzID0gY21zbXMoKS0+R2V0VGVtcGxhdGVPcGVyYXRpb25zKCk7DQokdGVtcGxhdGVzID0gJHRlbXBsYXRlb3BzLT5Mb2FkVGVtcGxhdGVzKCk7DQokQ01TX1VTRVJfS0VZPUNNU19TRUNVUkVfUEFSQU1fTkFNRS4nPScuJF9TRVNTSU9OW0NNU19VU0VSX0tFWV07DQokcXVlcnkgPSAnU0VMRUNUIHRlbXBsYXRlX2lkIEZST00gJy5TRF9UQUJMRTsNCiRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHF1ZXJ5ICk7DQokaGFuZGxlZF90ZW1wbGF0ZXMgPSBhcnJheSgpOw0Kd2hpbGUoICRkYnJlc3VsdCAmJiAoJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKSkgKQ0KICB7DQogICAgJGhhbmRsZWRfdGVtcGxhdGVzW10gPSAkcm93Wyd0ZW1wbGF0ZV9pZCddOw0KICB9DQoNCiRyb3djbGFzcyA9ICdyb3cxJzsNCiRlbnRyaWVzID0gYXJyYXkoKTsNCmZvcmVhY2goICR0ZW1wbGF0ZXMgYXMgJG9uZXRlbXBsYXRlICl7DQogIGlmKCAkb25ldGVtcGxhdGUtPmFjdGl2ZSApew0KICAgICAgJG9uZXRlbXBsYXRlLT5hY3RpdmVfZmxhZyA9ICc8aW1nIHNyYz0iJy4kZGlyLicvbW9kdWxlcy9TY3JpcHREZXBsb3kvaW1hZ2VzL3N0YXRlLXRydWUucG5nIiBhbHQ9IicuJHRoaXMtPkxhbmcgKCd5ZXMnKS4nIiAvPic7DQogICAgfSBlbHNlew0KICAgICAgJG9uZXRlbXBsYXRlLT5hY3RpdmVfZmxhZyA9JzxpbWcgc3JjPSInLiRkaXIuJy9tb2R1bGVzL1NjcmlwdERlcGxveS9pbWFnZXMvc3RhdGUtZmFsc2UucG5nIiBhbHQ9IicuJHRoaXMtPkxhbmcgKCdubycpLiciIC8+JzsNCiAgICB9DQoNCiAgaWYoICRvbmV0ZW1wbGF0ZS0+ZGVmYXVsdCApew0KICAgICAgJG9uZXRlbXBsYXRlLT5kZWZhdWx0X2ZsYWcgPSAnPGltZyBzcmM9IicuJGRpci4nL21vZHVsZXMvU2NyaXB0RGVwbG95L2ltYWdlcy9zdGF0ZS10cnVlLnBuZyIgYWx0PSInLiR0aGlzLT5MYW5nICgneWVzJykuJyIgLz4nOw0KICAgIH1lbHNlew0KICAgICAgJG9uZXRlbXBsYXRlLT5kZWZhdWx0X2ZsYWcgPSAnPGltZyBzcmM9IicuJGRpci4nL21vZHVsZXMvU2NyaXB0RGVwbG95L2ltYWdlcy9zdGF0ZS1mYWxzZS5wbmciIGFsdD0iJy4kdGhpcy0+TGFuZyAoJ25vJykuJyIgLz4nOw0KICAgIH0NCg0KICAkb25ldGVtcGxhdGUtPnVzZWRfY291bnQgPSAkdGVtcGxhdGVvcHMtPlVzYWdlQ291bnQoJG9uZXRlbXBsYXRlLT5JZCgpKTsNCg0KICBpZiggJHRoaXMtPkNoZWNrUGVybWlzc2lvbignTW9kaWZ5IFN0eWxlc2hlZXQgQXNzb2NpYXRpb25zJykgKSB7DQogICAgICAkb25ldGVtcGxhdGUtPmVkaXRjc3NfbGluayA9DQoJJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCdhZG1pbl9lZGl0Y3NzYXNzb2MnLCRyZXR1cm5pZCwNCgkJCSAgJGFkbWludGhlbWUtPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL2Nzcy5naWYnLCR0aGlzLT5MYW5nKCdlZGl0Y3NzJyksJycsJycsJ3N5c3RlbWljb24nKSwNCgkJCSAgYXJyYXkoJ3RlbXBsYXRlaWQnPT4kb25ldGVtcGxhdGUtPklkKCkpKTsNCiAgICB9DQoNCiAgaWYoICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBUZW1wbGF0ZXMnKSApIHsNCg0KICAgIC8vICAkb25ldGVtcGxhdGUtPmVkaXRfbGluayA9ICc8YSBocmVmPSJlZGl0dGVtcGxhdGUucGhwPycuJENNU19VU0VSX0tFWS4nJnRlbXBsYXRlX2lkPScuJG9uZXRlbXBsYXRlLT5JZCgpLicmZnJvbT1tb2R1bGVfU2NyaXB0RGVwbG95Ij48aW1nIHNyYz0iLi4vbW9kdWxlcy9TY3JpcHREZXBsb3kvaW1hZ2VzL2VkaXQucG5nIiBhbHQ9IicuJHRoaXMtPkxhbmcgKCdlZGl0dGVtcGxhdGUnKS4nIiAvPjwvYT4nOw0KCSAgDQoJICAkb25ldGVtcGxhdGUtPmVkaXRfbGluayA9ICR0aGlzLT5DcmVhdGVMaW5rKCAkaWQsICdlZGl0X3RlbXBsYXRlJywgJHJldHVybmlkLCc8aW1nIHNyYz0iJy4kZGlyLicvbW9kdWxlcy9TY3JpcHREZXBsb3kvaW1hZ2VzL2VkaXQucG5nIiBhbHQ9IicuJHRoaXMtPkxhbmcgKCdlZGl0dGVtcGxhdGUnKS4nIiAvPicsYXJyYXkgKCdhY3RpdmVfdGFiJyA9Pid0ZW1wbGF0ZV9tYW5nJywnbW9kZSc9PidlZGl0JywndGVtcGxhdGVfaWQnPT4kb25ldGVtcGxhdGUtPklkKCkpKTsNCgkgIA0KDQogICAgfQ0KDQogIGlmKCAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdSZW1vdmUgVGVtcGxhdGVzJykgJiYNCiAgICAgICRvbmV0ZW1wbGF0ZS0+dXNlZF9jb3VudCA9PSAwICkNCiAgICB7DQogICAgICAkb25ldGVtcGxhdGUtPmRlbGV0ZV9saW5rID0gJzxhIGhyZWY9ImRlbGV0ZXRlbXBsYXRlLnBocD8nLiRDTVNfVVNFUl9LRVkuJyZ0ZW1wbGF0ZV9pZD0nLiRvbmV0ZW1wbGF0ZS0+SWQoKS4nJmZyb209U2NyaXB0RGVwbG95Ij48aW1nIHNyYz0iJy4kZGlyLicvbW9kdWxlcy9TY3JpcHREZXBsb3kvaW1hZ2VzL2RlbGV0ZS5wbmciIGFsdD0iJy4kdGhpcy0+TGFuZyAoJ2RlbGV0ZXRlbXBsYXRlJykuJyIgLz48L2E+JzsNCgkgIC8vJHRoaXMtPkNyZWF0ZUxpbmsoICRpZCwgJ2RlbGV0ZXRlbXBsYXRlJywgJHJldHVybmlkLCc8aW1nIHNyYz0iLi4vbW9kdWxlcy9TY3JpcHREZXBsb3kvaW1hZ2VzL2RlbGV0ZS5wbmciIGFsdD0iJy4kdGhpcy0+TGFuZyAoJ2RlbGV0ZScpLiciIC8+JyxhcnJheSAoJ1NjcmlwdElEJyA9PiAka2V5KSwkdGhpcy0+TGFuZyAoJ2FyZXlvdXN1cmUnKSk7DQogICAgfQ0KDQogIC8vIGlmIHdlIGhhdmUgdGhpcyBpdGVtIGluIG91ciB0YWJsZXMsIHdlIG1hcmsgaXQgYXMgJ3ZhbGlkJyANCiAgJGZvdW5kID0gZmFsc2U7DQogIGZvcmVhY2goICRoYW5kbGVkX3RlbXBsYXRlcyBhcyAkb2h0ICkNCiAgICB7DQogICAgICBpZiggJG9odCA9PSAkb25ldGVtcGxhdGUtPmlkICkNCgl7DQoJICAkZm91bmQgPSB0cnVlOw0KCSAgYnJlYWs7DQoJfQ0KICAgIH0NCiAgaWYoICRmb3VuZCApDQogICAgew0KICAgICAgJG9uZXRlbXBsYXRlLT52YWxpZF9mbGFnID0gDQoJJGFkbWludGhlbWUtPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL3RydWUuZ2lmJywgJHRoaXMtPkxhbmcoJ3llcycpLCcnLCcnLCdzeXN0ZW1pY29uJyk7DQogICAgfQ0KICBlbHNlDQogICAgew0KICAgICAgJG9uZXRlbXBsYXRlLT52YWxpZF9mbGFnID0NCgkkYWRtaW50aGVtZS0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vZmFsc2UuZ2lmJywgJHRoaXMtPkxhbmcoJ25vJyksJycsJycsJ3N5c3RlbWljb24nKTsNCiAgICB9DQoNCiAgJG9uZXRlbXBsYXRlLT5yb3djbGFzcyA9ICRyb3djbGFzczsNCiAgJHJvd2NsYXNzID0gKCRyb3djbGFzcz09J3JvdzEnKT8ncm93Mic6J3JvdzEnOw0KICAkZW50cmllc1tdID0gJG9uZXRlbXBsYXRlOw0KfQ0KDQppZiggJHRoaXMtPkNoZWNrUGVybWlzc2lvbignQWRkIFRlbXBsYXRlcycpICkNCiAgew0KICAgLy8gJHVybD0nYWRkdGVtcGxhdGUucGhwPycuJENNU19VU0VSX0tFWS4nJmZyb209U2NyaXB0RGVwbG95JzsNCiAgICAkc21hcnR5LT5hc3NpZ24oJ2FkZF9saW5rJywNCgkJCQkgICR0aGlzLT5DcmVhdGVMaW5rKCAkaWQsICdhZGRfdGVtcGxhdGUnLCAkcmV0dXJuaWQsDQoJCQkJCQkJJzxpbWcgc3JjPSInLiRkaXIuJy9tb2R1bGVzL1NjcmlwdERlcGxveS9pbWFnZXMvYWRkLnBuZyIgYWx0PSInLiR0aGlzLT5MYW5nKCdwcm9tcHRfYWRkdGVtcGxhdGUnKS4nIiAvPicuJHRoaXMtPkxhbmcoJ3Byb21wdF9hZGR0ZW1wbGF0ZScpLA0KCQkJCQkJCSBhcnJheSgnYWN0aXZlX3RhYicgPT4gJ3RlbXBsYXRlX21hbmcnLA0KCQkJCQkJCSAgICdtb2RlJyA9PiAnYWRkJywNCgkJCQkJCQkgICAnc3RhdHVzJyA9PiAnbmV3Jw0KCQkJCQkJCSAgICkpKTsNCi8vCQkgICAgJzxhIGhyZWY9IicuJHVybC4nIj4nLiRhZG1pbnRoZW1lLT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9uZXdvYmplY3QuZ2lmJywgbGFuZygnYWRkdGVtcGxhdGUnKSwnJywnJywnc3lzdGVtaWNvbicpLic8L2E+Jy4NCi8vCQkgICAgJyA8YSBjbGFzcz0icGFnZW9wdGlvbnMiIGhyZWY9IicuJHVybC4nIj4nLmxhbmcoImFkZHRlbXBsYXRlIikuJzwvYT4nKTsNCg0KCQ0KICB9DQoNCiRzbWFydHktPmFzc2lnbigndGVtcGxhdGVzJywkZW50cmllcyk7DQokc21hcnR5LT5hc3NpZ24oJ2lkdGV4dCcsJHRoaXMtPkxhbmcoJ2lkJykpOw0KJHNtYXJ0eS0+YXNzaWduKCd1c2VkdGV4dCcsJHRoaXMtPkxhbmcoJ3VzYWdlX2NvdW50JykpOw0KJHNtYXJ0eS0+YXNzaWduKCduYW1ldGV4dCcsJHRoaXMtPkxhbmcoJ25hbWUnKSk7DQokc21hcnR5LT5hc3NpZ24oJ2FjdGl2ZXRleHQnLCR0aGlzLT5MYW5nKCdhY3RpdmUnKSk7DQokc21hcnR5LT5hc3NpZ24oJ2RlZmF1bHR0ZXh0JywkdGhpcy0+TGFuZygnZGVmYXVsdCcpKTsNCiRzbWFydHktPmFzc2lnbigndmFsaWR0ZXh0JywkdGhpcy0+TGFuZygndmFsaWQnKSk7DQplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ2Fzc29jaWF0aW9ucy50cGwnKTsNCg0KLy8gRU9GDQo/Pg0K]]></data>
	</file>
	<file>
	  <filename>/function.admin_deployment_tab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIE1vZHVsZTogU2NyaXB0RGVwbG95IC0gUGF5UGFsIEJ1dHRvbiBDcmVhdG9yIGFuZCBNYW5hZ2VyIA0KIyBNb2QgZGVzaWduZWQgYnkgamVyZW15QmFzcyAoamVyZW15QmFzc0BjYWJsZW9uZS5uZXQpDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQ0KIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZw0KIyBUaGUgbW9kdWxlJ3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvU2NyaXB0RGVwbG95Lw0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkNCiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkNCiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3INCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4NCiMNCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsDQojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mDQojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUNCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4NCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UNCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUNCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0ENCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTA0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCi8vaWYgKCFpc3NldChjbXNtcygpKSkgZXhpdDsNCiRjb25maWcgPSBjbXNtcygpLT5HZXRDb25maWcoKTsNCg0KJGRpciA9ICRjb25maWdbJ3Jvb3RfdXJsJ107DQokQWRtaW5kaXIgPSAkZGlyLicvJy4kY29uZmlnWydhZG1pbl9kaXInXTsNCiR1cmxleHQ9Q01TX1NFQ1VSRV9QQVJBTV9OQU1FLic9Jy4kX1NFU1NJT05bQ01TX1VTRVJfS0VZXTsNCiRpbWdIZWxwRj0nJm5ic3A7PGltZyBzcmM9IicuJEFkbWluZGlyLicvdGhlbWVzL05DbGVhbkdyZXkvaW1hZ2VzL2ljb25zL3N5c3RlbS9pbmZvLWV4dGVybmFsLmdpZiIgYWx0PSInLiR1cmxleHQuJyIgY2xhc3M9InN5c3RlbWljb24iIHRpdGxlPSIiIHJlbD0iJzsNCiRpbWdIZWxwQj0nIi8+JzsNCg0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdmb3Jtc3RhcnQnLCAkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0KCRpZCwic2F2ZV9kZXBsb3ltZW50X3NldHRpbmdzIikpOw0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdmb3JtZW5kJywgJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7DQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3N1Ym1pdCcsJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwnc2F2ZV9kZXBsb3ltZW50X3NldHRpbmdzJywkdGhpcy0+TGFuZygic2F2ZXNldHRpbmdzIikpKTsNCg0KJHZhbHVlcz1hcnJheSgkdGhpcy0+TGFuZygibGVhdmVjb2RlIik9PiJub2NoYW5nZSIsDQogICR0aGlzLT5MYW5nKCJmb3JtYXRjb2RlIik9PiJuaWNlIiwNCiAgLy8kdGhpcy0+TGFuZygiY2xlYW5jb2RlIik9PiJjbGVhbiIsDQogICR0aGlzLT5MYW5nKCJzY3JhbWJsZWNvZGUiKT0+InNjcmFtYmxlIiwNCik7DQoNCiR0aGlzLT5zbWFydHktPmFzc2lnbignc21hcnR5T25fbGFiZWwnLCAkdGhpcy0+TGFuZygnc21hcnR5T25fbGFiZWwnKS4kaW1nSGVscEYuInNtYXJ0eU9uIi4kaW1nSGVscEIpOw0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzbWFydHlPbl9pbnB1dCcsICR0aGlzLT5DcmVhdGVJbnB1dFJhZGlvR3JvdXAgKCRpZCwgJ3NtYXJ0eU9uJywgYXJyYXkoJ05vJz0+JzAnLCdZZXMnPT4nMScpLCAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnc21hcnR5T24nLCcwJyksJycsJyZuYnNwOyZuYnNwOyZuYnNwOycpKTsNCg0KJHJvb3RVUkw9JHRoaXMtPkdldFByZWZlcmVuY2UoJ3Jvb3RVUkwnLCcnKTsNCmlmKCRyb290VVJMPT0nJyl7JHJvb3RVUkxjaz0wO31lbHNleyRyb290VVJMY2s9MTt9DQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3Jvb3RVUkxPcHRpb25faW5wdXQnLA0KCQkJJHRoaXMtPkNyZWF0ZUlucHV0Q2hlY2tib3ggKCRpZCwncm9vdFVSTE9wdGlvbl9pbnB1dCcsICAnMScsICRyb290VVJMY2spICk7ICANCiR0aGlzLT5zbWFydHktPmFzc2lnbigncm9vdFVSTF9pbnB1dCcsDQoJCSR0aGlzLT5DcmVhdGVJbnB1dFRleHQoICRpZCwgJ3Jvb3RVUkxfaW5wdXQnLCAgJHJvb3RVUkwsIDQwICkpOw0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdyb290VVJMT3B0aW9uX2xhYmVsJywgJHRoaXMtPkxhbmcoJ3Jvb3RVUkxPcHRpb25fbGFiZWwnKS4kaW1nSGVscEYuImdsb2JhbHVybCIuJGltZ0hlbHBCKTsNCiR0aGlzLT5zbWFydHktPmFzc2lnbignR3Jvb3RVUkwnLCAkdGhpcy0+TGFuZygnR3Jvb3RVUkwnKSk7DQoNCg0KCSR0aGlzLT5zbWFydHktPmFzc2lnbignZmlsZVRpbWVfY3NzX3VybHNfbGFiZWwnLCAkdGhpcy0+TGFuZygnZmlsZVRpbWVfY3NzX3VybHNfbGFiZWwnKS4kaW1nSGVscEYuImZpbGVUaW1lX2Nzc191cmxzIi4kaW1nSGVscEIpOw0KICAgICR0aGlzLT5zbWFydHktPmFzc2lnbignZmlsZVRpbWVfY3NzX3VybHNfaW5wdXQnLCAkdGhpcy0+Q3JlYXRlSW5wdXRSYWRpb0dyb3VwICgkaWQsICdmaWxlVGltZV9jc3NfdXJscycsIGFycmF5KCdObyc9PicwJywnWWVzJz0+JzEnKSwgJHRoaXMtPkdldFByZWZlcmVuY2UoJ2ZpbGVUaW1lX2Nzc191cmxzJywnMCcpLCcnLCcmbmJzcDsmbmJzcDsmbmJzcDsnKSk7DQoNCgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3ByZWxvYWRfQ1NTaW1hZ2VUaXRsZScsICR0aGlzLT5MYW5nKCdwcmVsb2FkX0NTU2ltYWdlVGl0bGUnKSk7DQoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdwcmVsb2FkX0NTU2ltYWdlX2xhYmVsJywgJHRoaXMtPkxhbmcoJ3ByZWxvYWRfQ1NTaW1hZ2VfbGFiZWwnKS4kaW1nSGVscEYuInByZWxvYWRfQ1NTaW1hZ2UiLiRpbWdIZWxwQik7DQogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdwcmVsb2FkX0NTU2ltYWdlX2lucHV0JywgJHRoaXMtPkNyZWF0ZUlucHV0UmFkaW9Hcm91cCAoJGlkLCAncHJlbG9hZF9DU1NpbWFnZV9pbnB1dCcsIGFycmF5KCdObyc9PicwJywnWWVzJz0+JzEnKSwgJHRoaXMtPkdldFByZWZlcmVuY2UoJ3ByZWxvYWRfQ1NTaW1hZ2UnLDEpLCcnLCcmbmJzcDsmbmJzcDsmbmJzcDsnKSk7DQoNCg0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdtYW5nbGV0eXBldGV4dCcsICR0aGlzLT5MYW5nKCJtYW5nbGV0eXBldGV4dCIpKTsNCiR0aGlzLT5zbWFydHktPmFzc2lnbignbWFuZ2xldHlwZScsJHRoaXMtPkNyZWF0ZUlucHV0RHJvcGRvd24oJGlkLCJtYW5nbGV0eXBlIiwkdmFsdWVzLC0xLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCJtYW5nbGV0eXBlIiwiZm9ybWF0IikpKTsNCg0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdoaWRlbWVzc2FnZXN0ZXh0JywgJHRoaXMtPkxhbmcoImhpZGVtZXNzYWdlc3RleHQiKSk7DQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2hpZGVtZXNzYWdlc2lucHV0JywkdGhpcy0+Q3JlYXRlSW5wdXRDaGVja0JveCgkaWQsImhpZGVtZXNzYWdlcyIsInRydWUiLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCJoaWRlbWVzc2FnZXMiKSkpOw0KDQoNCiR0aGlzLT5zbWFydHktPmFzc2lnbignZGVidWd0ZXh0JywgJHRoaXMtPkxhbmcoImRlYnVndGV4dCIpKTsNCiR0aGlzLT5zbWFydHktPmFzc2lnbignZGVidWdpbnB1dCcsJHRoaXMtPkNyZWF0ZUlucHV0Q2hlY2tCb3goJGlkLCJkZWJ1ZyIsInRydWUiLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCJkZWJ1ZyIsImZhbHNlIikpKTsNCg0KDQokdmFsdWVzPWFycmF5KCR0aGlzLT5MYW5nKCJicmllZiIpPT4iYnJpZWYiLA0KICAkdGhpcy0+TGFuZygidmVyYm9zZSIpPT4idmVyYm9zZSIsDQopOw0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdkZWJ1Z2xldmVsdGV4dCcsICR0aGlzLT5MYW5nKCJkZWJ1Z2xldmVsdGV4dCIpKTsNCiR0aGlzLT5zbWFydHktPmFzc2lnbignZGVidWdsZXZlbGlucHV0JywkdGhpcy0+Q3JlYXRlSW5wdXREcm9wZG93bigkaWQsImRlYnVnbGV2ZWwiLCR2YWx1ZXMsLTEsJHRoaXMtPkdldFByZWZlcmVuY2UoImRlYnVnbGV2ZWwiLCJicmllZiIpKSk7DQoNCiR0aGlzLT5zbWFydHktPmFzc2lnbignZm9yY2Vsb3dlcnRhZ3N0ZXh0JywgJHRoaXMtPkxhbmcoImZvcmNlbG93ZXJ0YWdzdGV4dCIpKTsNCiR0aGlzLT5zbWFydHktPmFzc2lnbignZm9yY2Vsb3dlcnRhZ3NpbnB1dCcsJHRoaXMtPkNyZWF0ZUlucHV0Q2hlY2tib3goJGlkLCJmb3JjZWxvd2VydGFncyIsIjEiLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCJmb3JjZWxvd2VydGFncyIsIjAiKSkpOw0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdmb3JjZWxvd2VydGFnc2hlbHAnLCAkdGhpcy0+TGFuZygiZm9yY2Vsb3dlcnRhZ3NoZWxwIikpOw0KDQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2luZGVudHdpZHRodGV4dCcsICR0aGlzLT5MYW5nKCJpbmRlbnR3aWR0aHRleHQiKSk7DQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2luZGVudHdpZHRoaW5wdXQnLCR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCJpbmRlbnR3aWR0aCIsJHRoaXMtPkdldFByZWZlcmVuY2UoImluZGVudHdpZHRoIiwiMiIpLDIsMikpOw0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzcGFjZXMnLCAkdGhpcy0+TGFuZygic3BhY2VzIikpOw0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdjb2RlZml4ZXMnLCAkdGhpcy0+TGFuZygiY29kZWZpeGVzIikpOw0KDQplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ2FkbWluX0RlcGxveW1lbnRzZXR0aW5ncy50cGwnKTsNCj8+]]></data>
	</file>
	<file>
	  <filename>/function.admin_grouplist_tab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCi8qKg0KICogTW9kdWxlOiBTY3JpcHREZXBsb3kgLSBNaW5pZnkgYW5kIGRlcGxveW1lbnQgb2YgSlMgQ1NTIGFuZCBIVE1MDQogKiANCiAqIA0KICogQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykNCiAqIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnDQogKiBUaGUgbW9kdWxlJ3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvc2NyaXB0ZGVwbG95Lw0KICogDQogKi8gDQovL2lmICghaXNzZXQoY21zbXMoKSkpIGV4aXQ7DQoNCgkJLy8NCgkJJGNvbmZpZyA9IGNtc21zKCktPkdldENvbmZpZygpOw0KDQoJJGRpciA9ICRjb25maWdbJ3Jvb3RfdXJsJ107DQoJJEFkbWluZGlyID0gJGRpci4nLycuJGNvbmZpZ1snYWRtaW5fZGlyJ107DQoJCSRmYWxzZWltYWdlMSA9IGNtc21zKCktPnZhcmlhYmxlc1snYWRtaW50aGVtZSddLT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9mYWxzZS5naWYnLCdtYWtlIGRlZmF1bHQnLCcnLCcnLCdzeXN0ZW1pY29uJyk7DQoJCSR0cnVlaW1hZ2UxID0gY21zbXMoKS0+dmFyaWFibGVzWydhZG1pbnRoZW1lJ10tPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL3RydWUuZ2lmJywnZGVmYXVsdCcsJycsJycsJ3N5c3RlbWljb24nKTsNCgkJJGFsbGRiUHJvZmlsZXMgPSAkdGhpcy0+Z2V0R3JvdXBzTGlzdCgpOw0KCQkkcm93YXJyYXkgPSBhcnJheSgpOw0KCQkkcm93Y2xhc3MgPSAncm93MSc7DQoJCQ0KDQoNCgkJZm9yZWFjaCgkYWxsZGJQcm9maWxlcyBhcyAka2V5ID0+ICRvbmVkYlByb2ZpbGUgKXsNCgkJCSRHcm91cHRTZXQ9ICRvbmVkYlByb2ZpbGVbJ0dyb3VwdFNldCddOw0KCQkJJFNjcmlwdE51bT0gJHRoaXMtPkdldEdyb3Vwc1NjcmlwdE5VTSgka2V5KTsNCgkJCSRHcm91cHRUeXBlPSAkb25lZGJQcm9maWxlWydHcm91cHRUeXBlJ107DQoJCQkNCg0KCQkJDQoJCQkkcm93ID0gbmV3IFN0ZENsYXNzKCk7DQoJCQkkcm93LT5uYW1lID0gJHRoaXMtPkNyZWF0ZUxpbmsoICRpZCwgJ2VkaXRhc3NpZ25tZW50JywgJHJldHVybmlkLA0KCQkJCQkJCSRrZXksIGFycmF5KCdHcm91cHRJRCcgPT4gJGtleSwNCgkJCQkJCQkJCSdhY3RpdmVfdGFiJyA9PiAnc2NyaXB0X3RlbXBsYXRlJywNCgkJCQkJCQkJCSdtb2RlJz0+J2VkaXQnKSk7DQoJCQkNCgkJCWlmKGlzc2V0KCRTY3JpcHROdW0pJiYkU2NyaXB0TnVtIT0wKXsNCgkJCQkkcm93LT5TYW1wbGU9JzxhIGhyZWY9IiMiIGNsYXNzPSJnZXRUYWciICB0aXRsZT1cJycuJHRoaXMtPkxhbmcoJ2dldF90YWcnKS4nIHtTY3JpcHREZXBsb3kgZ3JvdXBJRD0iJy4ka2V5LiciIFN0eXBlPSInLiRHcm91cHRUeXBlLicifVwnID48aW1nIHNyYz0iJy4kZGlyLicvbW9kdWxlcy9TY3JpcHREZXBsb3kvaW1hZ2VzL0dldFRhZy5wbmciIGFsdD1cJycuJHRoaXMtPkxhbmcoJ2dldF90YWcnKS4nIHtTY3JpcHREZXBsb3kgZ3JvdXBJRD0iJy4ka2V5LiciIFN0eXBlPSInLiRHcm91cHRUeXBlLicifVwnICAvPkdldCBUYWc8c3BhbiBjbGFzcz0iaGlkZGVuIGNvcHlhcmVhIj57U2NyaXB0RGVwbG95IGdyb3VwSUQ9IicuJGtleS4nIiBTdHlwZT0iJy4kR3JvdXB0VHlwZS4nIn08L3NwYW4+PC9hPic7DQoJCQl9ZWxzZXsNCgkJCQkkcm93LT5TYW1wbGU9JzxoNT4nLiR0aGlzLT5MYW5nICgnZW10cHlHcm91cCcpLic8L2g1Pic7DQoJCQl9DQoJCQkNCgkJCSRyb3ctPmRlZmF1bHQgPSAkdGhpcy0+Q3JlYXRlTGluayggJGlkLCAnZWRpdGFzc2lnbm1lbnQnLCAkcmV0dXJuaWQsDQoJCQkJCQkJJEdyb3VwdFNldCwgYXJyYXkoJ0dyb3VwdElEJyA9PiAka2V5LA0KCQkJCQkJCQkJJ2FjdGl2ZV90YWInID0+ICdzY3JpcHRfdGVtcGxhdGUnLA0KCQkJCQkJCQkJJ21vZGUnPT4nZWRpdCcpKTsNCgkJCSRyb3ctPkJ0biA9ICRrZXk7DQoJCQkkcm93LT5OdW1iZXJPZiA9ICRTY3JpcHROdW07DQoJCQkkcm93LT5yb3djbGFzcyA9ICRyb3djbGFzczsNCgkJCSRyb3ctPnR5cGVJY29uID0nPGRpdiBzdHlsZT0iIHBvc2l0aW9uOnJlbGF0aXZlOyBoZWlnaHQ6MzVweDsiPjxpbWcgc3JjPSInLiRkaXIuJy9tb2R1bGVzL1NjcmlwdERlcGxveS9pbWFnZXMvJy4kR3JvdXB0VHlwZS4nLnBuZyIgd2lkdGg9IjM1IiBoZWlnaHQ9IjM1IiBzdHlsZT0icG9zaXRpb246YWJzb2x1dGU7IHotaW5kZXg6OTsgdG9wOjBweDsiLz48L2Rpdj4nOw0KCQkJJHJvdy0+R3JvdXB0VHlwZSA9JEdyb3VwdFR5cGU7DQoJCQkkcm93LT5lZGl0bGluayA9ICR0aGlzLT5DcmVhdGVMaW5rKCAkaWQsICdlZGl0YXNzaWdubWVudCcsICRyZXR1cm5pZCwNCgkJCQkJCQkJY21zbXMoKS0+dmFyaWFibGVzWydhZG1pbnRoZW1lJ10tPg0KCQkJCQkJCQlEaXNwbGF5SW1hZ2UgKCdpY29ucy9zeXN0ZW0vZWRpdC5naWYnLA0KCQkJCQkJCQkJICAkdGhpcy0+TGFuZyAoJ2VkaXQnKSwgJycsICcnLCAnc3lzdGVtaWNvbicpLA0KCQkJCQkJCQlhcnJheSAoJ0dyb3VwdElEJyA9PiAka2V5LA0KCQkJCQkJCQkgICAnYWN0aXZlX3RhYicgPT4gJ3NjcmlwdF90ZW1wbGF0ZScsDQoJCQkJCQkJCSAgICdtb2RlJz0+J2VkaXQnKSk7DQoJCQkNCgkJCQ0KCQkJJHJvdy0+ZGVsZXRlbGluayA9ICR0aGlzLT5DcmVhdGVMaW5rKCAkaWQsICdkZWxldGVhc3NpZ25tZW50JywgJHJldHVybmlkLA0KCQkJCQkJCSAgY21zbXMoKS0+dmFyaWFibGVzWydhZG1pbnRoZW1lJ10tPg0KCQkJCQkJCSAgRGlzcGxheUltYWdlICgnaWNvbnMvc3lzdGVtL2RlbGV0ZS5naWYnLA0KCQkJCQkJCQkJJHRoaXMtPkxhbmcgKCdkZWxldGUnKSwgJycsICcnLCAnc3lzdGVtaWNvbicpLA0KCQkJCQkJCSAgYXJyYXkgKCdHcm91cHRTZXQnID0+ICRrZXkpLA0KCQkJCQkJCSAgJHRoaXMtPkxhbmcgKCdhcmV5b3VzdXJlJykpOw0KCQkJDQoJCQlhcnJheV9wdXNoICgkcm93YXJyYXksICRyb3cpOw0KCQkJKCRyb3djbGFzcyA9PSAicm93MSIgPyAkcm93Y2xhc3MgPSAicm93MiIgOiAkcm93Y2xhc3MgPSAicm93MSIpOw0KCQl9DQoNCgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdOb19Hcm91cHMnLCAkdGhpcy0+TGFuZygnTm9fR3JvdXBzJykgKTsNCgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdBc3NfaXRlbXMnLCAkcm93YXJyYXkgKTsNCgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdBc3NfaGVhZGVyJywgJHRoaXMtPkxhbmcoJ0Fzc19oZWFkZXInKSk7DQoJCSR0aGlzLT5zbWFydHktPmFzc2lnbignU2FtcGxlQ29kZScsICR0aGlzLT5MYW5nKCdTYW1wbGVUYWcnKSk7Ly8kdGhpcy0+TGFuZygncHJvbXB0X2RlZmF1bHQnKQ0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ25ld1NjcmlwdEFzc2xpbmsnLA0KCQkJCSAgJHRoaXMtPkNyZWF0ZUxpbmsoICRpZCwgJ2VkaXRhc3NpZ25tZW50JywgJHJldHVybmlkLA0KCQkJCQkJCSAnPGltZyBzcmM9IicuJGRpci4nL21vZHVsZXMvU2NyaXB0RGVwbG95L2ltYWdlcy9hZGRfZ3JvdXAucG5nIiBhbHQ9IicuJHRoaXMtPkxhbmcgKCdwcm9tcHRfbmV3U2NyaXB0JykuJyIgLz4nLiR0aGlzLT5MYW5nKCdwcm9tcHRfbmV3U2NyaXB0QXNzJyksDQoJCQkJCQkJIGFycmF5KCdhY3RpdmVfdGFiJyA9PiAnc2NyaXB0X3RlbXBsYXRlJywNCgkJCQkJCQkgICAnbW9kZScgPT4gJ2FkZCcNCgkJCQkJCQkgICApKSk7DQoJCSR0aGlzLT5zbWFydHktPmFzc2lnbigkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsNCgkJZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCdlZGl0QXNzaWdubWVudHMudHBsJyk7DQoNCj8+]]></data>
	</file>
	<file>
	  <filename>/function.admin_importExport_tab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIE1vZHVsZTogU2NyaXB0RGVwbG95IC0gUGF5UGFsIEJ1dHRvbiBDcmVhdG9yIGFuZCBNYW5hZ2VyIA0KIyBNb2QgZGVzaWduZWQgYnkgamVyZW15QmFzcyAoamVyZW15QmFzc0BjYWJsZW9uZS5uZXQpDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQ0KIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZw0KIyBUaGUgbW9kdWxlJ3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvU2NyaXB0RGVwbG95Lw0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkNCiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkNCiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3INCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4NCiMNCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsDQojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mDQojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUNCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4NCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UNCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUNCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0ENCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTA0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCi8vaWYgKCFpc3NldChjbXNtcygpKSkgZXhpdDsNCg0KLyoNCiogQ1NTIHZhbGlkYXRpb24gc2V0dGluZ3MNCioNCioNCioNCiovDQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2Zvcm1zdGFydEltcG9ydCcsICR0aGlzLT5DcmVhdGVGb3JtU3RhcnQoJGlkLCJzdGFydEltcG9ydCIpKTsNCiR0aGlzLT5zbWFydHktPmFzc2lnbignc3VibWl0SW1wb3J0JywkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCdzdGFydEltcG9ydCcsJHRoaXMtPkxhbmcoInN0YXJ0SW1wb3J0IikpKTsNCg0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdmb3Jtc3RhcnRFeHBvcnQnLCAkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0KCRpZCwic3RhcnRFeHBvcnQiKSk7DQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3N1Ym1pdEV4cG9ydCcsJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwnc3RhcnRFeHBvcnQnLCR0aGlzLT5MYW5nKCJzdGFydEV4cG9ydCIpKSk7DQoNCiR0aGlzLT5zbWFydHktPmFzc2lnbignZm9ybWVuZCcsICR0aGlzLT5DcmVhdGVGb3JtRW5kKCkpOw0KDQoNCi8vJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdUdXJuT05WYWxfbGFibGUnLCAkdGhpcy0+TGFuZygiVHVybk9OVmFsX2xhYmxlIikpOw0KLy8kdGhpcy0+c21hcnR5LT5hc3NpZ24oJ1R1cm5PTlZhbF9pbnB1dCcsICR0aGlzLT5DcmVhdGVJbnB1dFJhZGlvR3JvdXAgKCRpZCwgJ1R1cm5PTlZhbCcsIGFycmF5KCdObyc9PicwJywnWWVzJz0+JzEnKSwgJHRoaXMtPkdldFByZWZlcmVuY2UoJ1R1cm5PTlZhbCcsJzEnKSwnJywnJm5ic3A7Jm5ic3A7Jm5ic3A7JykpOw0KLy8NCi8vJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdob3RMaW5rQ2hlY2tfbGFibGUnLCAkdGhpcy0+TGFuZygiaG90TGlua0NoZWNrX2xhYmxlIikpOw0KLy8kdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2hvdExpbmtDaGVja19pbnB1dCcsICR0aGlzLT5DcmVhdGVJbnB1dFJhZGlvR3JvdXAgKCRpZCwgJ2hvdExpbmtDaGVjaycsIGFycmF5KCdObyc9PicwJywnWWVzJz0+JzEnKSwgJHRoaXMtPkdldFByZWZlcmVuY2UoJ2hvdExpbmtDaGVjaycsJzEnKSwnJywnJm5ic3A7Jm5ic3A7Jm5ic3A7JykpOw0KLy8NCi8vJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdTaG93VmFsX2xhYmxlJywgJHRoaXMtPkxhbmcoIlNob3dWYWxfbGFibGUiKSk7DQovLyR0aGlzLT5zbWFydHktPmFzc2lnbignU2hvd1ZhbF9pbnB1dCcsICR0aGlzLT5DcmVhdGVJbnB1dFJhZGlvR3JvdXAgKCRpZCwgJ1Nob3dWYWwnLCBhcnJheSgnTm8nPT4nMCcsJ1llcyc9PicxJyksICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdTaG93VmFsJywnMCcpLCcnLCcmbmJzcDsmbmJzcDsmbmJzcDsnKSk7DQovLw0KLy8kdGhpcy0+c21hcnR5LT5hc3NpZ24oJ0NTU3Byb2ZpbGVfbGFibGUnLCAkdGhpcy0+TGFuZygiQ1NTcHJvZmlsZV9sYWJsZSIpKTsNCi8vJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdDU1Nwcm9maWxlX2lucHV0JywkdGhpcy0+Q3JlYXRlSW5wdXREcm9wZG93bigkaWQsIkNTU3Byb2ZpbGUiLCRDU1Nwcm9maWxlQXJyYXksJycsJHRoaXMtPkdldFByZWZlcmVuY2UoIkNTU3Byb2ZpbGUiLCJhbGwiKSkpOw0KLy8NCi8vJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd1c2VybWVkaXVtX2xhYmxlJywgJHRoaXMtPkxhbmcoInVzZXJtZWRpdW1fbGFibGUiKSk7DQovLyR0aGlzLT5zbWFydHktPmFzc2lnbigndXNlcm1lZGl1bV9pbnB1dCcsJHRoaXMtPkNyZWF0ZUlucHV0RHJvcGRvd24oJGlkLCJ1c2VybWVkaXVtIiwkdXNlcm1lZGl1bUFycmF5LCcnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCJ1c2VybWVkaXVtIiwiYWxsIikpKTsNCi8vDQovLyR0aGlzLT5zbWFydHktPmFzc2lnbignVkFMTGFuZ19sYWJsZScsICR0aGlzLT5MYW5nKCJWQUxMYW5nX2xhYmxlIikpOw0KLy8kdGhpcy0+c21hcnR5LT5hc3NpZ24oJ1ZBTExhbmdfaW5wdXQnLCR0aGlzLT5DcmVhdGVJbnB1dERyb3Bkb3duKCRpZCwiVkFMTGFuZyIsJFZBTExhbmdBcnJheSwnJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgiVkFMTGFuZyIsImFsbCIpKSk7DQovLw0KLy8kdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3czY0NTU3dhcm5pbmdfbGFibGUnLCAkdGhpcy0+TGFuZygidzNjQ1NTd2FybmluZ19sYWJsZSIpKTsNCi8vJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd3M2NDU1N3YXJuaW5nX2lucHV0JywkdGhpcy0+Q3JlYXRlSW5wdXREcm9wZG93bigkaWQsInczY0NTU3dhcm5pbmciLCR3M2NDU1N3YXJuaW5nQXJyYXksJycsJHRoaXMtPkdldFByZWZlcmVuY2UoInczY0NTU3dhcm5pbmciLCJhbGwiKSkpOw0KLy8NCi8vJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdmaWx0ZXJQcm9wX2xhYmxlJywgJHRoaXMtPkxhbmcoImZpbHRlclByb3BfbGFibGUiKSk7DQovLyR0aGlzLT5zbWFydHktPmFzc2lnbignZmlsdGVyUHJvcF9pbnB1dCcsJHRoaXMtPkNyZWF0ZVRleHRBcmVhKDAsJGlkLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCJmaWx0ZXJQcm9wIiwnJyksImZpbHRlclByb3AiLCdmaWx0ZXJQcm9wJywnJywnJywnJywxMCw4KSk7DQoNCg0KZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCdhZG1pbl9pbXBvcnRFeHBvcnQudHBsJyk7DQo/Pg==]]></data>
	</file>
	<file>
	  <filename>/function.admin_module_optionstab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIE1vZHVsZTogU2NyaXB0RGVwbG95IC0gUGF5UGFsIEJ1dHRvbiBDcmVhdG9yIGFuZCBNYW5hZ2VyIA0KIyBNb2QgZGVzaWduZWQgYnkgamVyZW15QmFzcyAoamVyZW15QmFzc0BjYWJsZW9uZS5uZXQpDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQ0KIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZw0KIyBUaGUgbW9kdWxlJ3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvU2NyaXB0RGVwbG95Lw0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkNCiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkNCiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3INCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4NCiMNCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsDQojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mDQojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUNCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4NCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UNCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUNCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0ENCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTA0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCi8vaWYgKCFpc3NldChjbXNtcygpKSkgZXhpdDsNCg0KCSRjb25maWcgPSBjbXNtcygpLT5HZXRDb25maWcoKTsNCg0KCSRkaXIgPSAkY29uZmlnWydyb290X3VybCddOw0KCSRkaXJwYXRoPSRjb25maWdbJ3VwbG9hZHNfcGF0aCddLiIvbGliL1NELXRlbXAvIjsNCgkkQWRtaW5kaXIgPSAkZGlyLicvJy4kY29uZmlnWydhZG1pbl9kaXInXTsNCgkNCgkkdXJsZXh0PUNNU19TRUNVUkVfUEFSQU1fTkFNRS4nPScuJF9TRVNTSU9OW0NNU19VU0VSX0tFWV07DQoJJGltZ0hlbHBGPScmbmJzcDs8aW1nIHNyYz0iJy4kQWRtaW5kaXIuJy90aGVtZXMvTkNsZWFuR3JleS9pbWFnZXMvaWNvbnMvc3lzdGVtL2luZm8tZXh0ZXJuYWwuZ2lmIiBhbHQ9IicuJHVybGV4dC4nIiBjbGFzcz0ic3lzdGVtaWNvbiIgdGl0bGU9IiIgcmVsPSInOw0KCSRpbWdIZWxwQj0nIi8+JzsNCgkkY2xlYXIgPSBpc3NldCgkcGFyYW1zWydjbGVhciddKSA/ICRwYXJhbXNbJ2NsZWFyJ10gOiAiIjsNCg0KICAgICR0aGlzLT5zbWFydHktPmFzc2lnbignbW9kX3ByZWZzX3RpdGxlJywgJHRoaXMtPkxhbmcoJ21vZF9wcmVmc190aXRsZScpKTsNCiAgICANCiAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2Zvcm1fc3RhcnQnLCAkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0KCRpZCwgJ3NhdmVfbW9kdWxlX29wdGlvbnMnLCAkcmV0dXJuaWQsICdwb3N0JywgJ211bHRpcGFydC9mb3JtLWRhdGEnKSk7DQogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdmb3JtX2VuZCcsICR0aGlzLT5DcmVhdGVGb3JtRW5kKCkpOw0KICAgICR0aGlzLT5zbWFydHktPmFzc2lnbignZm9ybV9zdWJtaXQnLCAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCAnZm9ybV9zdWJtaXQnLCAkdGhpcy0+TGFuZygnZm9ybV9zdWJtaXQnKSkpOw0KCQ0KCQ0KDQoJDQoNCg0KDQoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdyZXZpc2lvblRpdGxlJywgJHRoaXMtPkxhbmcoJ3JldmlzaW9uVGl0bGUnKSk7DQoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdyZXZpc2lvbl9sYWJlbCcsICR0aGlzLT5MYW5nKCdyZXZpc2lvbl9sYWJlbCcpLiRpbWdIZWxwRi4icmV2aXNpb25fb3AiLiRpbWdIZWxwQik7DQogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdyZXZpc2lvbl9pbnB1dCcsICR0aGlzLT5DcmVhdGVJbnB1dFJhZGlvR3JvdXAgKCRpZCwgJ3JldmlzaW9uX2lucHV0JywgYXJyYXkoJ05vJz0+JzAnLCdZZXMnPT4nMScpLCAkdGhpcy0+R2V0UHJlZmVyZW5jZSgncmV2aXNpb24nLDEpLCcnLCcmbmJzcDsmbmJzcDsmbmJzcDsnKSk7DQoNCg0KDQoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdyZXZpc2lvbl9MSU1JVF9sYWJlbCcsICR0aGlzLT5MYW5nKCdyZXZpc2lvbl9MSU1JVF9sYWJlbCcpKTsNCiAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3JldmlzaW9uX0xJTUlUX2lucHV0JywgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCAoJGlkLCAncmV2aXNpb25fTElNSVRfaW5wdXQnLCAgJHRoaXMtPkdldFByZWZlcmVuY2UoJ3JldmlzaW9uX0xJTUlUJywwKSwxMCw1KSk7DQoNCg0KDQoNCgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2xvY2tmaWxlc1RpdGxlJywgJHRoaXMtPkxhbmcoJ2xvY2tmaWxlc1RpdGxlJykpOw0KCSR0aGlzLT5zbWFydHktPmFzc2lnbignbG9ja2ZpbGVzX2xhYmVsJywgJHRoaXMtPkxhbmcoJ2xvY2tmaWxlc19sYWJlbCcpLiRpbWdIZWxwRi4ibG9ja2ZpbGVzX29wIi4kaW1nSGVscEIpOw0KICAgICR0aGlzLT5zbWFydHktPmFzc2lnbignbG9ja2ZpbGVzX2lucHV0JywgJHRoaXMtPkNyZWF0ZUlucHV0UmFkaW9Hcm91cCAoJGlkLCAnbG9ja2ZpbGVzX2lucHV0JywgYXJyYXkoJ05vJz0+JzAnLCdZZXMnPT4nMScpLCAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnbG9ja2ZpbGVzJywxKSwnJywnJm5ic3A7Jm5ic3A7Jm5ic3A7JykpOw0KDQoNCg0KDQoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdkZWJ1Z1QnLCAkdGhpcy0+TGFuZygnZGVidWdUJykpOw0KCSRmaXJlcGhwbW9kdWxlPSR0aGlzLT5HZXRNb2R1bGVJbnN0YW5jZSgnRmlyZVBIUERlYnVnJyk7DQoJICBpZiAoJGZpcmVwaHBtb2R1bGUpew0KCQkkZGVidWdJVF9sYWJlbD0kdGhpcy0+TGFuZygnZGVidWdJVF9sYWJlbCcpOw0KCQkkZGlzYWJsZT0nJzsNCgkgIH1lbHNlew0KCQkgICRkZWJ1Z0lUX2xhYmVsPSAkdGhpcy0+TGFuZygnZGVidWdJVF9sYWJlbCcpLiR0aGlzLT5MYW5nKCdkZWJ1Z0lUbm90ZV9sYWJlbCcpOw0KCQkgICRkaXNhYmxlPSdkaXNhYmxlZD0iZGlzYWJsZWQiJzsNCgkgIH0NCgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2RlYnVnSVRfbGFiZWwnLCAkZGVidWdJVF9sYWJlbCk7CQ0KICAgICR0aGlzLT5zbWFydHktPmFzc2lnbignZGVidWdJVF9pbnB1dCcsICR0aGlzLT5DcmVhdGVJbnB1dFJhZGlvR3JvdXAgKCRpZCwgJ2RlYnVnSVQnLCBhcnJheSgnTm8nPT4nMCcsJ1llcyc9PicxJyksICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdkZWJ1Z0lUJyksJycuJGRpc2FibGUuJycsJyZuYnNwOyZuYnNwOyZuYnNwOycpKTsNCg0KCQkNCg0KDQoNCgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3VzZUVkaXRvclRpdGxlJywgJHRoaXMtPkxhbmcoJ3VzZUVkaXRvclRpdGxlJykpOw0KCSR0aGlzLT5zbWFydHktPmFzc2lnbigndXNlRWRpdG9yX2xhYmVsJywgJHRoaXMtPkxhbmcoJ3VzZUVkaXRvcl9sYWJlbCcpLiRpbWdIZWxwRi4idXNlRWRpdG9yX29wIi4kaW1nSGVscEIpOw0KICAgICR0aGlzLT5zbWFydHktPmFzc2lnbigndXNlRWRpdG9yX2lucHV0JywgJHRoaXMtPkNyZWF0ZUlucHV0UmFkaW9Hcm91cCAoJGlkLCAndXNlRWRpdG9yX2lucHV0JywgYXJyYXkoJ05vJz0+JzAnLCdZZXMnPT4nMScpLCAkdGhpcy0+R2V0UHJlZmVyZW5jZSgndXNlRWRpdG9yJywxKSwnJywnJm5ic3A7Jm5ic3A7Jm5ic3A7JykpOw0KCQ0KCSR0aGlzLT5zbWFydHktPmFzc2lnbignZWRpdG9ySGVpZ2h0X2xhYmVsJywgJHRoaXMtPkxhbmcoJ2VkaXRvckhlaWdodF9sYWJlbCcpLiRpbWdIZWxwRi4iZWRpdG9ySGVpZ2h0X29wIi4kaW1nSGVscEIpOw0KICAgICR0aGlzLT5zbWFydHktPmFzc2lnbignZWRpdG9ySGVpZ2h0X2lucHV0JywgICR0aGlzLT5DcmVhdGVJbnB1dFRleHQgKCRpZCwgJ2VkaXRvckhlaWdodF9pbnB1dCcsICAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZWRpdG9ySGVpZ2h0JywnJyksMTAsMTApKTsNCg0KDQoNCg0KDQoNCgkNCgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2NsZWFyZWRfbGFiZWwnLCAkY2xlYXIpOw0KCS8vJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdDbGVhcl9pbnB1dCcsICR0aGlzLT5DcmVhdGVJbnB1dFJhZGlvR3JvdXAgKCRpZCwgJ2NsZWFyY2FjaGUnLCBhcnJheSgnTm8nPT4nMCcsJ1llcyc9PicxJyksICcwJywnJywnJm5ic3A7Jm5ic3A7Jm5ic3A7JykpOw0KCSR0aGlzLT5zbWFydHktPmFzc2lnbignQ2xlYXJfaW5wdXQnLCAgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwgJ2NsZWFyY2FjaGUnLCAnQ2xlYXIgQ2FjaGUnKSk7DQoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdDbGVhcl9sYWJlbCcsICR0aGlzLT5sYW5nKCdjbGVhblRlbXAnKS4iIDxzcGFuIHN0eWxlPVwiY29sb3I6IzAwNjZDQzsgZm9udC13ZWlnaHQ6OTAwO1wiPiIuJHRoaXMtPmxhbmcoJ3VyVGVtcFBhdGgnKS4iOiAiLiRjb25maWdbJ3VwbG9hZHNfcGF0aCddLiIvbGliL1NELXRlbXAvPC9zcGFuPiIpOwkNCg0KDQoJDQoJDQoJDQoJDQoNCgkkZkggPSBuZXcgc2RfZmlsZWhhbmRsaW5nKCk7IA0KCSRkaXJsaXN0ID0gJGZILT5wcm9jZXNzX2RpcigkZGlycGF0aCx0cnVlKTsNCglpZigkZGlybGlzdCE9ZmFsc2Upew0KCQkgDQoJCSAgDQoJCSRjYWNoZUluZm89ICI8dGFibGUgIGNlbGxzcGFjaW5nPVwiMVwiIGlkPVwiVFMyXCIgY2xhc3M9XCJ0YWJsZXNvcnRlclwiPlxuIjsNCgkJJGNhY2hlSW5mby49ICI8dGhlYWQ+PHRyPjx0aD4iLiR0aGlzLT5MYW5nKCdOYW1lJykuIjwvdGg+PCEtLTx0aD5UeXBlPC90aD4tLT48dGg+Ii4kdGhpcy0+TGFuZygnU2l6ZScpLiI8L3RoPjx0aD4iLiR0aGlzLT5MYW5nKCdMYXN0TW9kJykuIjwvdGg+PC90cj48L3RoZWFkPjx0Ym9keT5cbiI7DQoJCWZvcmVhY2goJGRpcmxpc3QgYXMgJGZpbGUpIHsNCgkJJGNhY2hlSW5mby49ICI8dHI+XG4iOw0KCQkkY2FjaGVJbmZvLj0gIjx0ZD57JGZpbGVbJ25hbWUnXX0gPC90ZD5cbiI7DQoJCS8vZWNobyAiPHRkPnskZmlsZVsndHlwZSddfTwvdGQ+XG4iOw0KCQkkY2FjaGVJbmZvLj0gIjx0ZD57JGZpbGVbJ3NpemUnXX0gPC90ZD5cbiI7DQoJCSRjYWNoZUluZm8uPSI8dGQ+IiAuIGRhdGUoInIiLCAkZmlsZVsnbGFzdG1vZCddKSAuICIgPC90ZD5cbiI7DQoJCSRjYWNoZUluZm8uPSI8L3RyPlxuIjsNCgl9DQogICRjYWNoZUluZm8uPSAiPC90Ym9keT48L3RhYmxlPlxuXG4iOwkNCiAJICAkY2FjaGVJbmZvLj0gICcNCgkJPGRpdiBpZD0icGFnZXIyIiBjbGFzcz0icGFnZXIiPg0KCQ0KCQk8aW1nIHNyYz0iJy4kZGlyLicvbW9kdWxlcy9TY3JpcHREZXBsb3kvaW5jbHVkZXMvYWRkb25zL3BhZ2VyL2ljb25zL2ZpcnN0LnBuZyIgY2xhc3M9ImZpcnN0IiBhbHQ9ImZpcnN0Ii8+DQoJCTxpbWcgc3JjPSInLiRkaXIuJy9tb2R1bGVzL1NjcmlwdERlcGxveS9pbmNsdWRlcy9hZGRvbnMvcGFnZXIvaWNvbnMvcHJldi5wbmciIGNsYXNzPSJwcmV2IiBhbHQ9InByZXYiLz4NCgkJPGlucHV0IHR5cGU9InRleHQiIGNsYXNzPSJwYWdlZGlzcGxheSIvPg0KCQk8aW1nIHNyYz0iJy4kZGlyLicvbW9kdWxlcy9TY3JpcHREZXBsb3kvaW5jbHVkZXMvYWRkb25zL3BhZ2VyL2ljb25zL25leHQucG5nIiBjbGFzcz0ibmV4dCIgYWx0PSJuZXh0Ii8+DQoJCTxpbWcgc3JjPSInLiRkaXIuJy9tb2R1bGVzL1NjcmlwdERlcGxveS9pbmNsdWRlcy9hZGRvbnMvcGFnZXIvaWNvbnMvbGFzdC5wbmciIGNsYXNzPSJsYXN0IiBhbHQ9Imxhc3QiLz4NCgkJPHNlbGVjdCBjbGFzcz0icGFnZXNpemUiPg0KCQk8b3B0aW9uIHNlbGVjdGVkPSJzZWxlY3RlZCIgdmFsdWU9IjUiPjU8L29wdGlvbj4NCgkJCTxvcHRpb24gdmFsdWU9IjEwIj4xMDwvb3B0aW9uPg0KCQkJPG9wdGlvbiB2YWx1ZT0iMjAiPjIwPC9vcHRpb24+DQoJCQk8b3B0aW9uIHZhbHVlPSIzMCI+MzA8L29wdGlvbj4NCgkJCTxvcHRpb24gIHZhbHVlPSI0MCI+NDA8L29wdGlvbj4NCgkJPC9zZWxlY3Q+DQo8L2Rpdj4NCjxoMT4nLiR0aGlzLT5DcmVhdGVMaW5rKCAkaWQsICd2aWV3X2xvZ3MnLCAkcmV0dXJuaWQsJHRoaXMtPkxhbmcoJ3VzZXJMb2dzJykpLiI8L2gxPiI7DQoNCiAgDQogIH1lbHNlew0KDQppZighZmlsZV9leGlzdHMoJGNvbmZpZ1sndXBsb2Fkc19wYXRoJ10uIi9saWIvU0QtdGVtcC8iKSl7JG1lc3NhZ2U9JHRoaXMtPkxhbmcoJ2NhY2hlRmVycm9yJyk7fWVsc2V7JG1lc3NhZ2U9JHRoaXMtPkxhbmcoJ2RpckVtcHR5Jyk7fQ0KDQoNCiAkY2FjaGVJbmZvPSAiPHRhYmxlICBjZWxsc3BhY2luZz1cIjFcIiBjbGFzcz1cInRhYmxlc29ydGVyXCI+PHRyPjx0aD4iLiR0aGlzLT5MYW5nKCdOYW1lJykuIjwvdGg+PCEtLTx0aD5UeXBlPC90aD4tLT48dGg+Ii4kdGhpcy0+TGFuZygnU2l6ZScpLiI8L3RoPjx0aD4iLiR0aGlzLT5MYW5nKCdMYXN0TW9kJykuIjwvdGg+PC90cj48dHI+PHRkPiIuJG1lc3NhZ2UuIjwvdGQ+PHRkPiAtLSA8L3RkPjx0ZD4gLS0gPC90ZD48L3RyPjwvdGFibGU+IDxoMT4iLiR0aGlzLT5DcmVhdGVMaW5rKCAkaWQsICd2aWV3X2xvZ3MnLCAkcmV0dXJuaWQsJHRoaXMtPkxhbmcoJ3VzZXJMb2dzJykpLiI8L2gxPiI7CQ0KICB9DQoNCiR0aGlzLT5zbWFydHktPmFzc2lnbignY2FjaGVJbmZvJywkY2FjaGVJbmZvKTsNCgkNCgkNCgkNCiAgICAvLyB5b3UnbGwgb2Z0ZW4gd2FudCB0byBkbyB0aGluZ3MgbGlrZSB0aGlzIHRvIHByb3ZpZGUgZmVlZGJhY2s6DQogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdtZXNzYWdlJywgKGlzc2V0KCRwYXJhbXNbJ21lc3NhZ2UnXSk/JHBhcmFtc1snbWVzc2FnZSddOicnKSk7CQ0KCQ0KICAgIGVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSgnYWRtaW5fb3B0aW9ucy50cGwnKTsNCg0KDQoJLy9lY2hvJzxmb3JtIGFjdGlvbj0iIiBtZXRob2Q9InBvc3QiPg0KLy88aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJjbGVhcmNhY2hlIiB2YWx1ZT0iMSI+PGlucHV0IG5hbWU9IiIgdHlwZT0ic3VibWl0IiB2YWx1ZT0iQ2xlYXIgdGhlIGNhY2hlIiAvPg0KLy88L2Zvcm0+JzsNCg0KDQo/Pg==]]></data>
	</file>
	<file>
	  <filename>/function.admin_scriptlist_tab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIE1vZHVsZTogU2NyaXB0RGVwbG95IC0gUGF5UGFsIEJ1dHRvbiBDcmVhdG9yIGFuZCBNYW5hZ2VyIA0KIyBNb2QgZGVzaWduZWQgYnkgamVyZW15QmFzcyAoamVyZW15QmFzc0BjYWJsZW9uZS5uZXQpDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQ0KIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZw0KIyBUaGUgbW9kdWxlJ3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvU2NyaXB0RGVwbG95Lw0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkNCiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkNCiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3INCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4NCiMNCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsDQojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mDQojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUNCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4NCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UNCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUNCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0ENCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTA0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCgkNCgkvLy8vaWYgKCFpc3NldChjbXNtcygpKSkgZXhpdDsNCgkkY29uZmlnID0gY21zbXMoKS0+R2V0Q29uZmlnKCk7DQoNCgkkZGlyID0gJGNvbmZpZ1sncm9vdF91cmwnXTsNCgkkQWRtaW5kaXIgPSAkZGlyLicvJy4kY29uZmlnWydhZG1pbl9kaXInXTsNCgkJJGZhbHNlaW1hZ2UxID0gY21zbXMoKS0+dmFyaWFibGVzWydhZG1pbnRoZW1lJ10tPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL2ZhbHNlLmdpZicsJ21ha2UgZGVmYXVsdCcsJycsJycsJ3N5c3RlbWljb24nKTsNCgkJJHRydWVpbWFnZTEgPSBjbXNtcygpLT52YXJpYWJsZXNbJ2FkbWludGhlbWUnXS0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vdHJ1ZS5naWYnLCdkZWZhdWx0JywnJywnJywnc3lzdGVtaWNvbicpOw0KCQkkYWxsZGJQcm9maWxlcyA9ICR0aGlzLT5nZXRTY3JpcHRzTGlzdCgpOw0KCQkkcm93YXJyYXkgPSBhcnJheSgpOw0KCQkkcm93Y2xhc3MgPSAncm93MSc7DQoJCSRyZXZfb3B0ID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ3JldmlzaW9uJyk7DQoNCgkJDQoJCWZvcmVhY2goJGFsbGRiUHJvZmlsZXMgYXMgJGtleSA9PiAkb25lZGJQcm9maWxlICl7DQoJCQkkdXNlck1lZGl1bT0nJzsNCgkJCSR1aWQ9Jyc7DQoJCQkkdW5hbWU9Jyc7DQoJCQkkU2NyaXB0U2V0PSAkb25lZGJQcm9maWxlWydTY3JpcHRTZXQnXTsNCgkJCSRwYXRoT3B0aW9uPSAkb25lZGJQcm9maWxlWydwYXRoT3B0aW9uJ107DQoJCQkkc2NyaXB0VHlwZT0gJG9uZWRiUHJvZmlsZVsnc2NyaXB0VHlwZSddOw0KCQkJJHNjcmlwdFNpemU9ICRvbmVkYlByb2ZpbGVbJ3NjcmlwdFNpemUnXTsNCgkJCQ0KCQkJaWYoJHR5cGVJUz09JHNjcmlwdFR5cGUpew0KCQkJCSRyb3cgPSBuZXcgU3RkQ2xhc3MoKTsNCgkJCQkkZWRpdGFibGU9JHRoaXMtPmlzX2VkaXRhYmxlKCRrZXkpOw0KCQkJCWlmKCEkZWRpdGFibGUpeyR1aWQ9JHRoaXMtPkdldFByZWZlcmVuY2UoJGtleS4nLUxvY2tlZC1FZGl0b3ItU0QnKTt9DQoJCQkJaWYoJHVpZCE9JycpeyR1PSR0aGlzLT5nZXRVc2VySW5mbygkdWlkKTskdW5hbWU9JHVbJ3VzZXJuYW1lJ107fQ0KCQkJCQ0KCQkJCSRNaW5pZnk9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCRrZXkuJy1NaW5pZnktU0QnLCcxJyk7DQoJCQkJaWYoJHR5cGVJUz09J0NTUycpew0KCQkJCQkkdXNlck1lZGl1bT0nIHw8ZW0+KCcuJHRoaXMtPkdldFByZWZlcmVuY2UoJGtleS4nLU1lZGlhVHlwZS1TRCcsJ0FsbCcpLiIpPC9lbT4iOw0KCQkJCX0NCgkJCQkkcm93LT50eXBlID0gJHNjcmlwdFR5cGU7DQoJCQkJJHJvdy0+c2NyaXB0U2l6ZSA9ICR0aGlzLT5TaXplSXRVcCgkc2NyaXB0U2l6ZSk7DQoJCQkJDQoJCQkJaWYoJGVkaXRhYmxlKXsNCgkJCQkJJHJvdy0+ZWRpdE1vZGUgPSAnJzsNCgkJCQl9ZWxzZXsNCgkJCQkJJHJvdy0+ZWRpdE1vZGUgPSAnSW5FZGl0JzsNCgkJCQl9DQoJCQkJDQoJCQkJaWYoJGVkaXRhYmxlKXsNCgkJCQkJJHJvdy0+bmFtZSA9ICR0aGlzLT5DcmVhdGVMaW5rKCAkaWQsICdlZGl0X3NjcmlwdCcsICRyZXR1cm5pZCwka2V5LCBhcnJheSgnU2NyaXB0U2V0JyA9PiAka2V5LCdhY3RpdmVfdGFiJyA9PidzY3JpcHRfdGVtcGxhdGUnLCdtb2RlJz0+J2VkaXQnKSk7DQoJCQkJfWVsc2V7DQoJCQkJCSRyb3ctPm5hbWUgPSAka2V5Ow0KCQkJCX0NCgkJCQkJDQoJCQkJaWYoJGVkaXRhYmxlKXsNCgkJCQkJJHJvdy0+ZGVmYXVsdCA9ICR0aGlzLT5DcmVhdGVMaW5rKCAkaWQsICdlZGl0X3NjcmlwdCcsICRyZXR1cm5pZCwnPHN0cm9uZz4nLiRTY3JpcHRTZXQuJzwvc3Ryb25nPicuJHVzZXJNZWRpdW0sIGFycmF5KCdTY3JpcHRTZXQnID0+ICRrZXksJ2FjdGl2ZV90YWInID0+J3NjcmlwdF90ZW1wbGF0ZScsJ21vZGUnPT4nZWRpdCcpKTsNCgkJCQl9ZWxzZXsNCgkJCQkJJHJvdy0+ZGVmYXVsdCA9JzxpbWcgc3JjPSInLiRkaXIuJy9tb2R1bGVzL1NjcmlwdERlcGxveS9pbWFnZXMvdXNlcl9lZGl0LnBuZyIgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2IiBzdHlsZT0iIiBhbHQ9IiIvPjxzdHJvbmc+Jy4kdW5hbWUuJyAnLiR0aGlzLT5sYW5nKCdpc0VkaXQnKS4nICcuJFNjcmlwdFNldC4nPC9zdHJvbmc+Jy4kdXNlck1lZGl1bTsNCgkJCQl9DQoJCQkJDQoJCQkJLy8kcm93LT50eXBlSWNvbiA9JzxpbWcgc3JjPSIuLi9tb2R1bGVzL1NjcmlwdERlcGxveS9pbWFnZXMvJy4kc2NyaXB0VHlwZS4nLnBuZyIgd2lkdGg9IjM1IiBoZWlnaHQ9IjM1IiAvPic7DQoJCQkJaWYoJE1pbmlmeT09MSl7DQoJCQkJCSRtaW5pbWc9JzxpbWcgc3JjPSInLiRkaXIuJy9tb2R1bGVzL1NjcmlwdERlcGxveS9pbWFnZXMvTWluLnBuZyIgd2lkdGg9IjM1IiBoZWlnaHQ9IjM1IiBzdHlsZT0icG9zaXRpb246YWJzb2x1dGU7IHotaW5kZXg6OTk7dG9wOjBweDsiIGFsdD0iIi8+JzsNCgkJCQl9ZWxzZXsNCgkJCQkJJG1pbmltZz0nJzsNCgkJCQl9DQoJCQkJJGluRWQ9Jyc7DQoJCQkJaWYoISRlZGl0YWJsZSl7DQoJCQkJCSRpbkVkID0gJzxpbWcgc3JjPSInLiRkaXIuJy9tb2R1bGVzL1NjcmlwdERlcGxveS9pbWFnZXMvdXNlcl9lZGl0LnBuZyIgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2IiBzdHlsZT0icG9zaXRpb246YWJzb2x1dGU7IHotaW5kZXg6OTk7Ym90dG9tOjBweDsiICBhbHQ9IiIvPic7DQoJCQkJfQ0KCQkJCQ0KCQkJCQ0KCQkJCQ0KCQkJCSRyb3ctPnR5cGVJY29uID0nPGRpdiBzdHlsZT0iIHBvc2l0aW9uOnJlbGF0aXZlOyBoZWlnaHQ6MzVweDsiPicuJG1pbmltZy4kaW5FZC4nPGltZyBzcmM9IicuJGRpci4nL21vZHVsZXMvU2NyaXB0RGVwbG95L2ltYWdlcy8nLiRzY3JpcHRUeXBlLicucG5nIiB3aWR0aD0iMzUiIGhlaWdodD0iMzUiIHN0eWxlPSJwb3NpdGlvbjphYnNvbHV0ZTsgei1pbmRleDo5OyB0b3A6MHB4OyIgIGFsdD0iIi8+PC9kaXY+JzsNCgkJCQkkcm93LT5CdG4gPSAka2V5Ow0KCQkJCSRyb3ctPnJvd2NsYXNzID0gJHJvd2NsYXNzOw0KCQkJCQ0KCQkJCWlmKCRlZGl0YWJsZSl7DQoJCQkJCSRyb3ctPmVkaXRsaW5rID0gJHRoaXMtPkNyZWF0ZUxpbmsoICRpZCwgJ2VkaXRfc2NyaXB0JywgJHJldHVybmlkLCc8aW1nIHNyYz0iJy4kZGlyLicvbW9kdWxlcy9TY3JpcHREZXBsb3kvaW1hZ2VzL2VkaXQucG5nIiBhbHQ9IicuJHRoaXMtPkxhbmcgKCdlZGl0JykuJyIgLz4nLGFycmF5ICgnU2NyaXB0U2V0JyA9PiAka2V5LCdhY3RpdmVfdGFiJyA9PidzY3JpcHRfdGVtcGxhdGUnLCdtb2RlJz0+J2VkaXQnKSk7DQoJCQkJfWVsc2V7DQoJCQkJCSRyb3ctPmVkaXRsaW5rID0gJzxpbWcgc3JjPSInLiRkaXIuJy9tb2R1bGVzL1NjcmlwdERlcGxveS9pbWFnZXMvaW4tZWRpdC5wbmciIGFsdD0iJy4kdGhpcy0+TGFuZyAoJ2VkaXQnKS4nIiAvPic7DQoJCQkJfQ0KCQkJCQ0KJHJvdy0+Z2V0VGFnID0nPGEgaHJlZj0iIyIgY2xhc3M9ImdldFRhZyIgdGl0bGU9XCcnLiR0aGlzLT5MYW5nKCdnZXRfdGFnJykuJyB7U2NyaXB0RGVwbG95IHNjcmlwdElEPSInLiRrZXkuJyIgU3R5cGU9IicuJHNjcmlwdFR5cGUuJyJ9XCcgPjxpbWcgc3JjPSInLiRkaXIuJy9tb2R1bGVzL1NjcmlwdERlcGxveS9pbWFnZXMvR2V0VGFnLnBuZyIgYWx0PVwnJy4kdGhpcy0+TGFuZygnZ2V0X3RhZycpLicge1NjcmlwdERlcGxveSBzY3JpcHRJRD0iJy4ka2V5LiciIFN0eXBlPSInLiRzY3JpcHRUeXBlLicifVwnIC8+R2V0IFRhZzxzcGFuIGNsYXNzPSJoaWRkZW4gY29weWFyZWEiPntTY3JpcHREZXBsb3kgc2NyaXB0SUQ9IicuJGtleS4nIiBTdHlwZT0iJy4kc2NyaXB0VHlwZS4nIn08L3NwYW4+PC9hPic7DQoJCQkJDQoJCQkJDQoJCQkJDQoJCQkJaWYoJGVkaXRhYmxlJiYkcmV2X29wdCl7DQoJCQkJCSRyb3ctPlJldmlzaW9uPSR0aGlzLT5MYW5nICgncmV2aXNpb24nKS4nOjxlbT48c3BhbiBjbGFzcz0icmV2ZXJ0VmVyc2lvbiI+Jy4kdGhpcy0+Q3JlYXRlTGluayggJGlkLCAncmV2ZXJ0JywgJHJldHVybmlkLCc8aW1nIHNyYz0iJy4kZGlyLicvbW9kdWxlcy9TY3JpcHREZXBsb3kvaW1hZ2VzL3JldmVydC5wbmciIGFsdD0iJy4kdGhpcy0+TGFuZyAoJ3JldmVydCcpLiciIC8+Jy4kdGhpcy0+R2V0TGFzdFJldmlzaW9uKCRrZXkpLGFycmF5ICgnU2NyaXB0U2V0JyA9PiAka2V5LCdhY3RpdmVfdGFiJyA9PidzY3JpcHRfdGVtcGxhdGUnLCdtb2RlJz0+J3JldmVydCcpKS4nPC9zcGFuPjwvZW0+JzsNCgkJCQl9ZWxzZXsNCgkJCQkJaWYoJHJldl9vcHQpew0KCQkJCQkkcm93LT5SZXZpc2lvbiA9ICR0aGlzLT5MYW5nICgncmV2aXNpb24nKS4nOjxlbT48c3BhbiBjbGFzcz0icmV2ZXJ0VmVyc2lvbiI+PGltZyBzcmM9IicuJGRpci4nL21vZHVsZXMvU2NyaXB0RGVwbG95L2ltYWdlcy9yZXZlcnQucG5nIiBhbHQ9IicuJHRoaXMtPkxhbmcgKCdyZXZlcnQnKS4nIiAvPicuJHRoaXMtPkdldExhc3RSZXZpc2lvbigka2V5KS4nPC9zcGFuPjwvZW0+JzsNCgkJCQkJfWVsc2V7DQoJCQkJCQkkcm93LT5SZXZpc2lvbiA9ICcnOw0KCQkJCQl9DQoJCQkJfQ0KCQ0KCQkJCWlmKCRlZGl0YWJsZSYmJHJldl9vcHQpew0KCQkJCQkkcm93LT5yZXZlcnQgPSAkdGhpcy0+Q3JlYXRlTGluayggJGlkLCAncmV2ZXJ0JywgJHJldHVybmlkLCc8aW1nIHNyYz0iJy4kZGlyLicvbW9kdWxlcy9TY3JpcHREZXBsb3kvaW1hZ2VzL3JldmVydC5wbmciIGFsdD0iJy4kdGhpcy0+TGFuZyAoJ3JldmVydCcpLiciIC8+JyxhcnJheSAoJ1NjcmlwdFNldCcgPT4gJGtleSwnYWN0aXZlX3RhYicgPT4gJGFjdGl2ZV90YWIsJ21vZGUnPT4ncmV2ZXJ0JykpOw0KCQkJCX1lbHNlew0KCQkJCQlpZigkcmV2X29wdCl7DQoJCQkJCQkkcm93LT5yZXZlcnQgPSAnPGltZyBzcmM9IicuJGRpci4nL21vZHVsZXMvU2NyaXB0RGVwbG95L2ltYWdlcy9yZXZlcnQucG5nIiBhbHQ9IicuJHRoaXMtPkxhbmcgKCdyZXZlcnQnKS4nIiAvPic7DQoJCQkJCX1lbHNlew0KCQkJCQkJJHJvdy0+cmV2ZXJ0ID0gJyc7DQoJCQkJCX0NCgkJCQl9DQoJDQoJCQkJJEdyb3VwSW5mbz0kdGhpcy0+R2V0U2NyaXB0R3JvdXBJbmZvKCRrZXkpOw0KCQkJCWlmKCRHcm91cEluZm8hPWZhbHNlJiYkR3JvdXBJbmZvWzBdIT0nJyl7DQoJCQkJCSRyb3ctPmRlbGV0ZWxpbmsgPSAnLS0nOw0KCQkJCX1lbHNlew0KCQkJCQlpZigkZWRpdGFibGUpew0KCQkJCQkJJHJvdy0+ZGVsZXRlbGluayA9ICR0aGlzLT5DcmVhdGVMaW5rKCAkaWQsICdkZWxldGVfc2NyaXB0JywgJHJldHVybmlkLCc8aW1nIHNyYz0iJy4kZGlyLicvbW9kdWxlcy9TY3JpcHREZXBsb3kvaW1hZ2VzL2RlbGV0ZS5wbmciIGFsdD0iJy4kdGhpcy0+TGFuZyAoJ2RlbGV0ZScpLiciIC8+JyxhcnJheSAoJ1NjcmlwdElEJyA9PiAka2V5LCdhY3RpdmVfdGFiJyA9PidzY3JpcHRfdGVtcGxhdGUnKSwkdGhpcy0+TGFuZyAoJ2FyZXlvdXN1cmUnKSk7DQoJCQkJCX1lbHNlew0KCQkJCQkJJHJvdy0+ZGVsZXRlbGluayA9ICc8aW1nIHNyYz0iJy4kZGlyLicvbW9kdWxlcy9TY3JpcHREZXBsb3kvaW1hZ2VzL2RlbGV0ZS5wbmciIGFsdD0iJy4kdGhpcy0+TGFuZyAoJ2RlbGV0ZScpLiciIC8+JzsNCgkJCQkJfQ0KCQkJCX0NCgkNCgkJCQkJaWYoJGVkaXRhYmxlKXsNCgkJCQkJCSRyb3ctPnN0ZWFsID0gJyc7DQoJCQkJCX1lbHNlew0KCQkJCQkJJHJvdy0+c3RlYWwgPSAnPGltZyBzcmM9IicuJGRpci4nL21vZHVsZXMvU2NyaXB0RGVwbG95L2ltYWdlcy9zdGVhbC5wbmciIGFsdD0iJy4kdGhpcy0+TGFuZyAoJ3N0ZWFsJykuJyIgY2xhc3M9InN0ZWFsIi8+JzsNCgkJCQkJfQkNCgkNCgkNCgkJCQlhcnJheV9wdXNoICgkcm93YXJyYXksICRyb3cpOw0KCQkJCSgkcm93Y2xhc3MgPT0gInJvdzEiID8gJHJvd2NsYXNzID0gInJvdzIiIDogJHJvd2NsYXNzID0gInJvdzEiKTsNCgkJCQl9DQoJCX0NCgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdOb19TY3JpcHRzJywgJHRoaXMtPkxhbmcoJ05vX1NjcmlwdHMnKSApOw0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2l0ZW1zJywgJHJvd2FycmF5ICk7DQoJCQ0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3R5cGVfbGFiZWwnLCAkdGhpcy0+TGFuZygndHlwZV9sYWJlbCcpKTsNCgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdOYW1lX2xhYmVsJywgJHRoaXMtPkxhbmcoJ1NjcmlwdFNldF9sYWJlbCcpKTsNCgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCduYW1lcHJvbXB0X2xhYmVsJywgJHRoaXMtPkxhbmcoJ3Byb21wdF9uYW1lJykpOw0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ1NjcmlwdE5hbWVfbGFiZWwnLCAkdGhpcy0+TGFuZygnU2NyaXB0TmFtZV9sYWJlbCcpKTsNCgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdTaW5nbGVDb2RlX2xhYmVsJywgJHRoaXMtPkxhbmcoJ1NpbmdsZUNvZGVfbGFiZWwnKSk7Ly8kdGhpcy0+TGFuZygncHJvbXB0X2RlZmF1bHQnKQ0KCQkNCgkJIA0KCQkNCgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCduZXdfc2NyaXB0X2xpbmsnLA0KCQkJCSAgJHRoaXMtPkNyZWF0ZUxpbmsoICRpZCwgJ2VkaXRfc2NyaXB0JywgJHJldHVybmlkLA0KCQkJCQkJCSc8aW1nIHNyYz0iJy4kZGlyLicvbW9kdWxlcy9TY3JpcHREZXBsb3kvaW1hZ2VzL2FkZC5wbmciIGFsdD0iJy4kdGhpcy0+TGFuZyAoJ3Byb21wdF9uZXdTY3JpcHQnKS4nIiAvPicuJHRoaXMtPkxhbmcoJ3Byb21wdF9uZXdTY3JpcHQnKSwNCgkJCQkJCQkgYXJyYXkoJ2FjdGl2ZV90YWInID0+ICRhY3RpdmVfdGFiLA0KCQkJCQkJCSAgICdtb2RlJyA9PiAnYWRkJywNCgkJCQkJCQkgICAnc3RhdHVzJyA9PiAnbmV3Jw0KCQkJCQkJCSAgICkpKTsNCgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCR0aGlzLT5DcmVhdGVGb3JtRW5kKCkpOw0KCQllY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ2VkaXRfc2NyaXB0X2xpc3QudHBsJyk7DQoNCj8+]]></data>
	</file>
	<file>
	  <filename>/function.admin_Valtab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIE1vZHVsZTogU2NyaXB0RGVwbG95IC0gUGF5UGFsIEJ1dHRvbiBDcmVhdG9yIGFuZCBNYW5hZ2VyIA0KIyBNb2QgZGVzaWduZWQgYnkgamVyZW15QmFzcyAoamVyZW15QmFzc0BjYWJsZW9uZS5uZXQpDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQ0KIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZw0KIyBUaGUgbW9kdWxlJ3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvU2NyaXB0RGVwbG95Lw0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkNCiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkNCiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3INCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4NCiMNCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsDQojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mDQojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUNCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4NCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UNCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUNCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0ENCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTA0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCi8vaWYgKCFpc3NldChjbXNtcygpKSkgZXhpdDsNCg0KLyoNCiogQ1NTIHZhbGlkYXRpb24gc2V0dGluZ3MNCioNCioNCioNCiovDQokY29uZmlnID0gY21zbXMoKS0+R2V0Q29uZmlnKCk7DQoNCiRkaXIgPSAkY29uZmlnWydyb290X3VybCddOw0KJEFkbWluZGlyID0gJGRpci4nLycuJGNvbmZpZ1snYWRtaW5fZGlyJ107DQokdXJsZXh0PUNNU19TRUNVUkVfUEFSQU1fTkFNRS4nPScuJF9TRVNTSU9OW0NNU19VU0VSX0tFWV07DQokaW1nSGVscEY9JyZuYnNwOzxpbWcgc3JjPSInLiRBZG1pbmRpci4nL3RoZW1lcy9OQ2xlYW5HcmV5L2ltYWdlcy9pY29ucy9zeXN0ZW0vaW5mby1leHRlcm5hbC5naWYiIGFsdD0iJy4kdXJsZXh0LiciIGNsYXNzPSJzeXN0ZW1pY29uIiB0aXRsZT0iIiByZWw9Iic7DQokaW1nSGVscEI9JyIvPic7DQoNCg0KDQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2Zvcm1zdGFydCcsICR0aGlzLT5DcmVhdGVGb3JtU3RhcnQoJGlkLCJzYXZlVkFMc2V0dGluZ3MiKSk7DQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3N1Ym1pdCcsJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwnc2F2ZVZBTHNldHRpbmdzJywkdGhpcy0+TGFuZygic2F2ZVZBTHNldHRpbmdzIikpKTsNCg0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdmb3Jtc3RhcnRIVE1MJywgJHRoaXMtPkNyZWF0ZUZvcm1TdGFydCgkaWQsInNhdmVWQUxzZXR0aW5ncyIpKTsNCiR0aGlzLT5zbWFydHktPmFzc2lnbignc3VibWl0SFRNTCcsJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwnc2F2ZVZBTHNldHRpbmdzJywkdGhpcy0+TGFuZygic2F2ZVZBTHNldHRpbmdzIikpKTsNCg0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdmb3JtZW5kJywgJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7DQokdXNlcm1lZGl1bUFycmF5PWFycmF5KA0KCQknYWxsJz0+J2FsbCcsDQoJCSdhdXJhbCc9PidhdXJhbCcsDQoJCSdicmFpbGxlJz0+J2JyYWlsbGUnLA0KCQknaGFuZGhlbGQnPT4naGFuZGhlbGQnLA0KCQkncHJpbnQnPT4ncHJpbnQnLA0KCQknZW1ib3NzZWQnPT4nZW1ib3NzZWQnLA0KCQkncHJvamVjdGlvbic9Pidwcm9qZWN0aW9uJywNCgkJJ3NwZWVjaCc9PidzcGVlY2gnLA0KCQknc2NyZWVuJz0+J3NjcmVlbicsDQoJCSd0dHknPT4ndHR5JywNCgkJJ3R2Jz0+J3R2Jw0KKTsNCiRWQUxMYW5nQXJyYXk9YXJyYXkoDQoJCSR0aGlzLT5MYW5nKCJlbiIpPT4nZW4nLA0KCQkkdGhpcy0+TGFuZygiZnIiKT0+J2ZyJywNCgkJJHRoaXMtPkxhbmcoIml0Iik9PidpdCcsDQoJCSR0aGlzLT5MYW5nKCJrbyIpPT4na28nLA0KCQkkdGhpcy0+TGFuZygiamEiKT0+J2phJywNCgkJJHRoaXMtPkxhbmcoImVzIik9PidlcycsDQoJCSR0aGlzLT5MYW5nKCJ6aC1jbiIpPT4nemgtY24nLA0KCQkkdGhpcy0+TGFuZygibmwiKT0+J25sJywNCgkJJHRoaXMtPkxhbmcoImRlIik9PidkZScsDQoJCSR0aGlzLT5MYW5nKCJwbCIpPT4ncGwnLA0KCQkkdGhpcy0+TGFuZygicm8iKT0+J3JvJywNCgkJJHRoaXMtPkxhbmcoImNzIik9PidjcycsDQoJCSR0aGlzLT5MYW5nKCJiZyIpPT4nYmcnLA0KCQkkdGhpcy0+TGFuZygic3YiKT0+J3N2JywNCgkJJHRoaXMtPkxhbmcoImZhIik9PidmYScsDQoJCSR0aGlzLT5MYW5nKCJydSIpPT4ncnUnLA0KCQkkdGhpcy0+TGFuZygicHQtQlIiKT0+J3B0LUJSJw0KKTsNCg0KDQokdzNjQ1NTd2FybmluZ0FycmF5PWFycmF5KA0KCQkkdGhpcy0+TGFuZygiTG5vbmUiKT0+J25vJywNCgkJJHRoaXMtPkxhbmcoIkwwIik9PicwJywNCgkJJHRoaXMtPkxhbmcoIkwxIik9PicxJywNCgkJJHRoaXMtPkxhbmcoIkwyIik9PicyJw0KKTsNCg0KJENTU3Byb2ZpbGVBcnJheT1hcnJheSgNCgkJJHRoaXMtPkxhbmcoImNzczEiKT0+J2NzczEnLA0KCQkkdGhpcy0+TGFuZygiY3NzMiIpPT4nY3NzMicsDQoJCSR0aGlzLT5MYW5nKCJjc3MyMSIpPT4nY3NzMjEnLA0KCQkkdGhpcy0+TGFuZygiY3NzMyIpPT4nY3NzMycsDQoJCSR0aGlzLT5MYW5nKCJzdmciKT0+J3N2ZycsDQoJCSR0aGlzLT5MYW5nKCJzdmdiYXNpYyIpPT4nc3ZnYmFzaWMnLA0KCQkkdGhpcy0+TGFuZygic3ZndGlueSIpPT4nc3ZndGlueScsDQoJCSR0aGlzLT5MYW5nKCJtb2JpbGUiKT0+J21vYmlsZScsDQoJCSR0aGlzLT5MYW5nKCJhdHNjLXR2Iik9PidhdHNjLXR2JywNCgkJJHRoaXMtPkxhbmcoInR2Iik9Pid0dicsDQoJCSR0aGlzLT5MYW5nKCJub25lIik9Pidub25lJw0KKTsNCg0KDQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ1R1cm5PTlZhbF9sYWJsZScsICR0aGlzLT5MYW5nKCJUdXJuT05WYWxfbGFibGUiKSk7DQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ1R1cm5PTlZhbF9pbnB1dCcsICR0aGlzLT5DcmVhdGVJbnB1dFJhZGlvR3JvdXAgKCRpZCwgJ1R1cm5PTlZhbCcsIGFycmF5KCdObyc9PicwJywnWWVzJz0+JzEnKSwgJHRoaXMtPkdldFByZWZlcmVuY2UoJ1R1cm5PTlZhbCcsJzEnKSwnJywnJm5ic3A7Jm5ic3A7Jm5ic3A7JykpOw0KDQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2hvdExpbmtDaGVja19sYWJsZScsICR0aGlzLT5MYW5nKCJob3RMaW5rQ2hlY2tfbGFibGUiKSk7DQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2hvdExpbmtDaGVja19pbnB1dCcsICR0aGlzLT5DcmVhdGVJbnB1dFJhZGlvR3JvdXAgKCRpZCwgJ2hvdExpbmtDaGVjaycsIGFycmF5KCdObyc9PicwJywnWWVzJz0+JzEnKSwgJHRoaXMtPkdldFByZWZlcmVuY2UoJ2hvdExpbmtDaGVjaycsJzEnKSwnJywnJm5ic3A7Jm5ic3A7Jm5ic3A7JykpOw0KDQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ1Nob3dWYWxfbGFibGUnLCAkdGhpcy0+TGFuZygiU2hvd1ZhbF9sYWJsZSIpKTsNCiR0aGlzLT5zbWFydHktPmFzc2lnbignU2hvd1ZhbF9pbnB1dCcsICR0aGlzLT5DcmVhdGVJbnB1dFJhZGlvR3JvdXAgKCRpZCwgJ1Nob3dWYWwnLCBhcnJheSgnTm8nPT4nMCcsJ1llcyc9PicxJyksICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdTaG93VmFsJywnMCcpLCcnLCcmbmJzcDsmbmJzcDsmbmJzcDsnKSk7DQoNCiR0aGlzLT5zbWFydHktPmFzc2lnbignQ1NTcHJvZmlsZV9sYWJsZScsICR0aGlzLT5MYW5nKCJDU1Nwcm9maWxlX2xhYmxlIikpOw0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdDU1Nwcm9maWxlX2lucHV0JywkdGhpcy0+Q3JlYXRlSW5wdXREcm9wZG93bigkaWQsIkNTU3Byb2ZpbGUiLCRDU1Nwcm9maWxlQXJyYXksJycsJHRoaXMtPkdldFByZWZlcmVuY2UoIkNTU3Byb2ZpbGUiLCJhbGwiKSkpOw0KDQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3VzZXJtZWRpdW1fbGFibGUnLCAkdGhpcy0+TGFuZygidXNlcm1lZGl1bV9sYWJsZSIpKTsNCiR0aGlzLT5zbWFydHktPmFzc2lnbigndXNlcm1lZGl1bV9pbnB1dCcsJHRoaXMtPkNyZWF0ZUlucHV0RHJvcGRvd24oJGlkLCJ1c2VybWVkaXVtIiwkdXNlcm1lZGl1bUFycmF5LCcnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCJ1c2VybWVkaXVtIiwiYWxsIikpKTsNCg0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdWQUxMYW5nX2xhYmxlJywgJHRoaXMtPkxhbmcoIlZBTExhbmdfbGFibGUiKSk7DQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ1ZBTExhbmdfaW5wdXQnLCR0aGlzLT5DcmVhdGVJbnB1dERyb3Bkb3duKCRpZCwiVkFMTGFuZyIsJFZBTExhbmdBcnJheSwnJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgiVkFMTGFuZyIsImFsbCIpKSk7DQoNCiR0aGlzLT5zbWFydHktPmFzc2lnbigndzNjQ1NTd2FybmluZ19sYWJsZScsICR0aGlzLT5MYW5nKCJ3M2NDU1N3YXJuaW5nX2xhYmxlIikpOw0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd3M2NDU1N3YXJuaW5nX2lucHV0JywkdGhpcy0+Q3JlYXRlSW5wdXREcm9wZG93bigkaWQsInczY0NTU3dhcm5pbmciLCR3M2NDU1N3YXJuaW5nQXJyYXksJycsJHRoaXMtPkdldFByZWZlcmVuY2UoInczY0NTU3dhcm5pbmciLCJhbGwiKSkpOw0KDQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2ZpbHRlclByb3BfbGFibGUnLCAkdGhpcy0+TGFuZygiZmlsdGVyUHJvcF9sYWJsZSIpKTsNCiR0aGlzLT5zbWFydHktPmFzc2lnbignZmlsdGVyUHJvcF9pbnB1dCcsJHRoaXMtPkNyZWF0ZVRleHRBcmVhKDAsJGlkLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCJmaWx0ZXJQcm9wIiwnJyksImZpbHRlclByb3AiLCdmaWx0ZXJQcm9wJywnJywnJywnJywxMCw4KSk7DQoNCi8qDQoqIEhUTUwgdmFsaWRhdGlvbiBzZXR0aW5ncw0KKg0KKg0KKg0KKi8NCg0KDQoNCiRlbmNvZGluZ0FycmF5PWFycmF5KA0KCQkkdGhpcy0+TGFuZygnZGV0ZWN0Jyk9PicoZGV0ZWN0IGF1dG9tYXRpY2FsbHkpJywNCgkJJHRoaXMtPkxhbmcoJ3V0Zi04Jyk9Pid1dGYtOCcsDQoJCSR0aGlzLT5MYW5nKCd1dGYtMTYnKT0+J3V0Zi0xNicsDQoJCSR0aGlzLT5MYW5nKCdpc28tODg1OS0xJyk9Pidpc28tODg1OS0xJywNCgkJJHRoaXMtPkxhbmcoJ2lzby04ODU5LTInKT0+J2lzby04ODU5LTInLA0KCQkkdGhpcy0+TGFuZygnaXNvLTg4NTktMycpPT4naXNvLTg4NTktMycsDQoJCSR0aGlzLT5MYW5nKCdpc28tODg1OS00Jyk9Pidpc28tODg1OS00JywNCgkJJHRoaXMtPkxhbmcoJ2lzby04ODU5LTUnKT0+J2lzby04ODU5LTUnLA0KCQkkdGhpcy0+TGFuZygnaXNvLTg4NTktNi1pJyk9Pidpc28tODg1OS02LWknLA0KCQkkdGhpcy0+TGFuZygnaXNvLTg4NTktNycpPT4naXNvLTg4NTktNycsDQoJCSR0aGlzLT5MYW5nKCdpc28tODg1OS04Jyk9Pidpc28tODg1OS04JywNCgkJJHRoaXMtPkxhbmcoJ2lzby04ODU5LTgtaScpPT4naXNvLTg4NTktOC1pJywNCgkJJHRoaXMtPkxhbmcoJ2lzby04ODU5LTknKT0+J2lzby04ODU5LTknLA0KCQkkdGhpcy0+TGFuZygnaXNvLTg4NTktMTAnKT0+J2lzby04ODU5LTEwJywNCgkJJHRoaXMtPkxhbmcoJ2lzby04ODU5LTExJyk9Pidpc28tODg1OS0xMScsDQoJCSR0aGlzLT5MYW5nKCdpc28tODg1OS0xMycpPT4naXNvLTg4NTktMTMnLA0KCQkkdGhpcy0+TGFuZygnaXNvLTg4NTktMTQnKT0+J2lzby04ODU5LTE0JywNCgkJJHRoaXMtPkxhbmcoJ2lzby04ODU5LTE1Jyk9Pidpc28tODg1OS0xNScsDQoJCSR0aGlzLT5MYW5nKCdpc28tODg1OS0xNicpPT4naXNvLTg4NTktMTYnLA0KCQkkdGhpcy0+TGFuZygndXMtYXNjaWknKT0+J3VzLWFzY2lpJywNCgkJJHRoaXMtPkxhbmcoJ2V1Yy1qcCcpPT4nZXVjLWpwJywNCgkJJHRoaXMtPkxhbmcoJ3NoaWZ0X2ppcycpPT4nc2hpZnRfamlzJywNCgkJJHRoaXMtPkxhbmcoJ2lzby0yMDIyLWpwJyk9Pidpc28tMjAyMi1qcCcsDQoJCSR0aGlzLT5MYW5nKCdldWMta3InKT0+J2V1Yy1rcicsDQoJCSR0aGlzLT5MYW5nKCdnYjIzMTInKT0+J2diMjMxMicsDQoJCSR0aGlzLT5MYW5nKCdnYjE4MDMwJyk9PidnYjE4MDMwJywNCgkJJHRoaXMtPkxhbmcoJ2JpZzUnKT0+J2JpZzUnLA0KCQkkdGhpcy0+TGFuZygnYmlnNS1IS1NDUycpPT4nYmlnNS1IS1NDUycsDQoJCSR0aGlzLT5MYW5nKCd0aXMtNjIwJyk9Pid0aXMtNjIwJywNCgkJJHRoaXMtPkxhbmcoJ2tvaTgtcicpPT4na29pOC1yJywNCgkJJHRoaXMtPkxhbmcoJ2tvaTgtdScpPT4na29pOC11JywNCgkJJHRoaXMtPkxhbmcoJ2lzby1pci0xMTEnKT0+J2lzby1pci0xMTEnLA0KCQkkdGhpcy0+TGFuZygnbWFjaW50b3NoJyk9PidtYWNpbnRvc2gnLA0KCQkkdGhpcy0+TGFuZygnd2luZG93cy0xMjUwJyk9Pid3aW5kb3dzLTEyNTAnLA0KCQkkdGhpcy0+TGFuZygnd2luZG93cy0xMjUxJyk9Pid3aW5kb3dzLTEyNTEnLA0KCQkkdGhpcy0+TGFuZygnd2luZG93cy0xMjUyJyk9Pid3aW5kb3dzLTEyNTInLA0KCQkkdGhpcy0+TGFuZygnd2luZG93cy0xMjUzJyk9Pid3aW5kb3dzLTEyNTMnLA0KCQkkdGhpcy0+TGFuZygnd2luZG93cy0xMjU0Jyk9Pid3aW5kb3dzLTEyNTQnLA0KCQkkdGhpcy0+TGFuZygnd2luZG93cy0xMjU1Jyk9Pid3aW5kb3dzLTEyNTUnLA0KCQkkdGhpcy0+TGFuZygnd2luZG93cy0xMjU2Jyk9Pid3aW5kb3dzLTEyNTYnLA0KCQkkdGhpcy0+TGFuZygnd2luZG93cy0xMjU3Jyk9Pid3aW5kb3dzLTEyNTcnDQopOw0KDQoNCiRkb2NUeXBlQXJyYXk9YXJyYXkoDQoJCSR0aGlzLT5MYW5nKCdJbmxpbmUnKT0+J0lubGluZScsDQoJCSR0aGlzLT5MYW5nKCdIVE1MNScpPT4nSFRNTDUnLA0KCQkkdGhpcy0+TGFuZygnWEhUTUwgMS4wIFN0cmljdCcpPT4nWEhUTUwgMS4wIFN0cmljdCcsDQoJCSR0aGlzLT5MYW5nKCdYSFRNTCAxLjAgVHJhbnNpdGlvbmFsJyk9PidYSFRNTCAxLjAgVHJhbnNpdGlvbmFsJywNCgkJJHRoaXMtPkxhbmcoJ1hIVE1MIDEuMCBGcmFtZXNldCcpPT4nWEhUTUwgMS4wIEZyYW1lc2V0JywNCgkJJHRoaXMtPkxhbmcoJ0hUTUwgNC4wMSBTdHJpY3QnKT0+J0hUTUwgNC4wMSBTdHJpY3QnLA0KCQkkdGhpcy0+TGFuZygnSFRNTCA0LjAxIFRyYW5zaXRpb25hbCcpPT4nSFRNTCA0LjAxIFRyYW5zaXRpb25hbCcsDQoJCSR0aGlzLT5MYW5nKCdIVE1MIDQuMDEgRnJhbWVzZXQnKT0+J0hUTUwgNC4wMSBGcmFtZXNldCcsDQoJCSR0aGlzLT5MYW5nKCdIVE1MIDMuMicpPT4nSFRNTCAzLjInLA0KCQkkdGhpcy0+TGFuZygnSFRNTCAyLjAnKT0+J0hUTUwgMi4wJywNCgkJJHRoaXMtPkxhbmcoJ0lTTy9JRUMgMTU0NDU6MjAwMCAoJnF1b3Q7SVNPIEhUTUwmcXVvdDspJyk9PidJU08vSUVDIDE1NDQ1OjIwMDAgKCZxdW90O0lTTyBIVE1MJnF1b3Q7KScsDQoJCSR0aGlzLT5MYW5nKCdYSFRNTCAxLjEnKT0+J1hIVE1MIDEuMScsDQoJCSR0aGlzLT5MYW5nKCdYSFRNTCArIFJERmEnKT0+J1hIVE1MICsgUkRGYScsDQoJCSR0aGlzLT5MYW5nKCdYSFRNTCBCYXNpYyAxLjAnKT0+J1hIVE1MIEJhc2ljIDEuMCcsDQoJCSR0aGlzLT5MYW5nKCdYSFRNTCBCYXNpYyAxLjEnKT0+J1hIVE1MIEJhc2ljIDEuMScsDQoJCSR0aGlzLT5MYW5nKCdYSFRNTCBNb2JpbGUgUHJvZmlsZSAxLjInKT0+J1hIVE1MIE1vYmlsZSBQcm9maWxlIDEuMicsDQoJCSR0aGlzLT5MYW5nKCdYSFRNTC1QcmludCAxLjAnKT0+J1hIVE1MLVByaW50IDEuMCcsDQoJCSR0aGlzLT5MYW5nKCdYSFRNTCAxLjEgcGx1cyBNYXRoTUwgMi4wJyk9PidYSFRNTCAxLjEgcGx1cyBNYXRoTUwgMi4wJywNCgkJJHRoaXMtPkxhbmcoJ1hIVE1MIDEuMSBwbHVzIE1hdGhNTCAyLjAgcGx1cyBTVkcgMS4xJyk9PidYSFRNTCAxLjEgcGx1cyBNYXRoTUwgMi4wIHBsdXMgU1ZHIDEuMScsDQoJCSR0aGlzLT5MYW5nKCdNYXRoTUwgMi4wJyk9PidNYXRoTUwgMi4wJywNCgkJJHRoaXMtPkxhbmcoJ1NWRyAxLjAnKT0+J1NWRyAxLjAnLA0KCQkkdGhpcy0+TGFuZygnU1ZHIDEuMScpPT4nU1ZHIDEuMScsDQoJCSR0aGlzLT5MYW5nKCdTVkcgMS4xIFRpbnknKT0+J1NWRyAxLjEgVGlueScsDQoJCSR0aGlzLT5MYW5nKCdTVkcgMS4xIEJhc2ljJyk9PidTVkcgMS4xIEJhc2ljJywNCgkJJHRoaXMtPkxhbmcoJ1NNSUwgMS4wJyk9PidTTUlMIDEuMCcsDQoJCSR0aGlzLT5MYW5nKCdTTUlMIDIuMCcpPT4nU01JTCAyLjAnDQopOw0KDQokZGVmYXVsdFBhZ2VBcnJheT1hcnJheSgNCgkJJHRoaXMtPkxhbmcoJ2F1dG8nKT0+J2F1dG8nLA0KCQkkdGhpcy0+TGFuZygndXNlckNob2ljZScpPT4ndXNlckNob2ljZScsDQoJCSR0aGlzLT5MYW5nKCd1c2VyR2VuZXJhdGVkJyk9Pid1c2VyR2VuZXJhdGVkJw0KKTsNCg0KDQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ1R1cm5PTlZhbF9sYWJsZScsICR0aGlzLT5MYW5nKCJUdXJuT05WYWxfbGFibGUiKSk7DQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ1R1cm5PTlZhbEhUTUxfaW5wdXQnLCAkdGhpcy0+Q3JlYXRlSW5wdXRSYWRpb0dyb3VwICgkaWQsICdUdXJuT05WYWxIVE1MJywgYXJyYXkoJ05vJz0+JzAnLCdZZXMnPT4nMScpLCAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnVHVybk9OVmFsSFRNTCcsJzEnKSwnJywnJm5ic3A7Jm5ic3A7Jm5ic3A7JykpOw0KDQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2RvY1R5cGVfbGFibGUnLCAkdGhpcy0+TGFuZygiZG9jVHlwZV9sYWJsZSIpKTsNCiR0aGlzLT5zbWFydHktPmFzc2lnbignZG9jVHlwZV9pbnB1dCcsJHRoaXMtPkNyZWF0ZUlucHV0RHJvcGRvd24oJGlkLCJkb2NUeXBlIiwkZG9jVHlwZUFycmF5LCcnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCJkb2NUeXBlIiwiWEhUTUwgMS4wIFRyYW5zaXRpb25hbCIpKSk7DQoNCiR0aGlzLT5zbWFydHktPmFzc2lnbignZW5jb2RpbmdfbGFibGUnLCAkdGhpcy0+TGFuZygiZW5jb2RpbmdfbGFibGUiKSk7DQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2VuY29kaW5nX2lucHV0JywkdGhpcy0+Q3JlYXRlSW5wdXREcm9wZG93bigkaWQsImVuY29kaW5nIiwkZW5jb2RpbmdBcnJheSwnJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgiZW5jb2RpbmciLCJ1dGYtOCIpKSk7DQoNCiR0aGlzLT5zbWFydHktPmFzc2lnbignVmFsSFRNTFZlcmJvc2VfbGFibGUnLCAkdGhpcy0+TGFuZygiVmFsSFRNTFZlcmJvc2VfbGFibGUiKSk7DQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ1ZhbEhUTUxWZXJib3NlX2lucHV0JywgJHRoaXMtPkNyZWF0ZUlucHV0UmFkaW9Hcm91cCAoJGlkLCAnVmFsSFRNTFZlcmJvc2UnLCBhcnJheSgnTm8nPT4nMCcsJ1llcyc9PicxJyksICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdWYWxIVE1MVmVyYm9zZScsJzAnKSwnJywnJm5ic3A7Jm5ic3A7Jm5ic3A7JykpOw0KDQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2RlZmF1bHRQYWdlX2xhYmxlJywgJHRoaXMtPkxhbmcoImRlZmF1bHRQYWdlX2xhYmxlIikuJGltZ0hlbHBGLiJkZWZhdWx0UGFnZSIuJGltZ0hlbHBCKTsNCiR0aGlzLT5zbWFydHktPmFzc2lnbignZGVmYXVsdFBhZ2VfaW5wdXQnLCR0aGlzLT5DcmVhdGVJbnB1dERyb3Bkb3duKCRpZCwiZGVmYXVsdFBhZ2UiLCRkZWZhdWx0UGFnZUFycmF5LCcnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCJkZWZhdWx0UGFnZSIsImF1dG8iKSkpOw0KIA0KICR0aGlzLT5zbWFydHktPmFzc2lnbignZGVmYXVsdFBhZ2VfaXMnLCAkdGhpcy0+R2V0UHJlZmVyZW5jZSgiZGVmYXVsdFBhZ2UiLCJhdXRvIikpOw0KIA0KIA0KIA0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd1c2VyRGVmYXVsdFBhZ2VfbGFibGUnLCAkdGhpcy0+TGFuZygidXNlckRlZmF1bHRQYWdlX2xhYmxlIikuJGltZ0hlbHBGLiJ1c2VyRGVmYXVsdFBhZ2UiLiRpbWdIZWxwQik7DQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3VzZXJEZWZhdWx0UGFnZV9pbnB1dCcsICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoICRpZCwgJ3VzZXJEZWZhdWx0UGFnZScsICAkdGhpcy0+R2V0UHJlZmVyZW5jZSgndXNlckRlZmF1bHRQYWdlJywnJyksIDQwKSk7DQoNCiR0aGlzLT5zbWFydHktPmFzc2lnbignb3duQ29udGVudF9sYWJsZScsICR0aGlzLT5MYW5nKCJvd25Db250ZW50X2xhYmxlIikuJGltZ0hlbHBGLiJvd25Db250ZW50Ii4kaW1nSGVscEIpOw0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdvd25Db250ZW50X2lucHV0JywkdGhpcy0+Q3JlYXRlVGV4dEFyZWEoMCwkaWQsJHRoaXMtPkdldFByZWZlcmVuY2UoIm93bkNvbnRlbnQiLCcnKSwib3duQ29udGVudCIsJ293bkNvbnRlbnQnLCcnLCcnLCcnLDEwLDE1KSk7DQoNCmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSgnYWRtaW5fVmFsc2V0dGluZ3MudHBsJyk7DQo/Pg==]]></data>
	</file>
	<file>
	  <filename>/images/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/images/acor.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAADIAAAAeCAYAAABuUU38AAADjUlEQVR42u1YyVIbMRTsBlURyD/m37nhcsqHwCEkoM5Bb5NmMFQq5EAxB9tjLW/v1xJvb2+/4QM87erLFShCBCCBsN8ACOVM+1MEiDFXJABhfAL06YStJCABIEhA8VuxOyFAGHvJVjHHZJv5eoJFECARBNC+3nzFGKtqhxpI3XxzQL6RW+VWKGcOx6ShJsR1XZ4iqQqFG0BbrnBbiLXvdn1zbRHR0IUEzXOi5p391Tzt0aNp52vDDRHlObBhsytlRo+gj8HJHlZnWlRNjgeyXV5cfoQSwQU+yPPBDNFLw/ovSugf7NBGwQw0SQSkoZPhTal50YpcpgIrPGsq8sC6KGYHFATAjMJNhbyAHQFrK5C4oKoBNIGGLnTXtBvimDTH/YHXpUmgJyzHPIfPoazb1B2FHM1UnABA6KZg9gh1pB69qq5JeUnhv9ZtlaTRqCaPITFbiPFeukqXwafr3oHOfKE1tO4uYDf4ZYHino1Syv7UlVEpTdFlyRxOAO35+fnd8p7vseKFae3p+anEjpEeI7WtAXFnI5U27FSldLvh1FdqaeENU+0kjcgijUap6PquR/v9++lNxTRxJ2Z9wPgQa6idF5Fe815pQViCV6G0emMNtYZSttuf/A2FKrVfj49nI8nyYxA0TZDJ5JPFUJeuErwkhSjca8Xeys62wMx9sCbQHn/+LBC3w2JVlN2gq3GeojimjGBEafLuhICZenRUm8hWJaGYIlHNavcPDxFKglP4I2+dl7MgStB4f026Xjh2GmS1RC+gqK3MlKlnxf8G57Q0935UTRHQTqfT3yPOqxOzfuYC52b03GbnxYzRdjweNzm/UWU6d7zRiDU9+cqClxTYdcpWl3Y4HP6qT8x2MSDxPR6+gY+1w93dxtHzaUYlx0seF+UTERmHLJBT3QzQmE+O2AsCrVr94LRU79TDnHkIaHeHQxJELZszi6mgfno/9ypHUM6pEIQ0VzKKvShtBmZjXGA7u180XpW7hHb8fizwmEfaKZScPbQlAgXtkt7utAHOFwpTx1/g3p1QiIGWM3NN6HY6ncKrAYc7/q8Yz6ndrmxDcbORtyl5zk5uYZIiJZGwukPhK1XRWgQC2v2P+60+XCxebkRULg20YQFL4Wu+iNjlaaXr1tXEcmbxW5jlAoMQmqTtSU01Lpi69vSpPQTVPrZqV0hussr0t/q/sJP6Y+zz8uHTkE9Dzj9/AKgloyNtXUzfAAAAAElFTkSuQmCC]]></data>
	</file>
	<file>
	  <filename>/images/add.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACYUlEQVR42q2T60+ScRTH/VvgTW1suWJmTTc1XblZ01GGgVPnLSARQ6cYD0iCCHhZpojzUq1gCiyWXARU5mVmTtRSWuoD07Vgtba2gvH220ObkFvaG7/befn5/H7n7Jy0tLOObraZ3u1pIpQuIdlh50elb+qjra+rSbGlkhBOcun/gcUstbsp8mpzEOuRZQS+b2Hz2xrcIRvkngbwjOxI7YvbrFNgUWw2aMPhryDmv7hgJEfxfE8P24ERK18XoF2SoGKiOMYZLTou0XrFNAoOz+ybEfy5i/HdATzd6EafXwl9QIehgBZ9252YObSB8AhQargRLhnMpyUFFCwbXlXh049t6sUhDO5ooXknx1FUGxJIlwWQrTbCeWDF3YkCFD3JkSUFnc4G0hWyUl81oWddga41KSTzwqSAb+Wgda4SYi8XIx90GFjpwPW+LDIpkE3z4r7PLgx/1FFwO06KyF0G2SIP5sA48nSZ8aSg3VYbt4emoN0ioPC3nCogfPWwBMaQ3c1MCVqsVaTBr4V+R4P2twKIFqtRa7lzDEzUQw8Hw34Ven2PcEWVnmpBNFUuu29hwREyQ7JYgyZfxZ+e/xYInWw0z3Dh2DfhWn8mmI8ZqSEKTGW0upelYcLDxzQ5mRxYAmx0JioBc2DfM+KB+V4CDqfLz9OO7ULVsxJW+djNWJujBk5KYvCrQczVQeqtgWG9Cw4KFpjZYCoYMQr+9zayRwpZLH1BpHgkF/1LBEzv9TBt6aHxtSGvNyMBR06Ej3JrIJde2J9N5PdcJXM0GdEs9cXoZeUF8pKCQaTLz9HP/Hp/A8Wz0Ay+WdgCAAAAAElFTkSuQmCC]]></data>
	</file>
	<file>
	  <filename>/images/add_group.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACwUlEQVR42o2S3S9bYRzH7WIXy7JbF/tDtosldiHZZiammURkw1johm3qvUa1aylS05aJppiX6Oq9NGHUS+tYpcSGjraUktWMdC+18JwmfPdowmR14SSfq3N+n+eXz3mCojK0HJnOaSjQrDD8Nkqrg8l594XJbrAymfXzDE/1iXlZN8vkqxjm6Nug/x9Jp9Ok+LDFnIcXVUZTgODo5POSXDHOBAj4rcsMgHORVDoSKMhvsftf6k0Oh3p4fU/au0ZKeyhdq6SkY4W81tqJULNIilut5HntDKEtXLRF3D9Bs80vkOtd+/Xj2+QY9dh3ojK4Se3gOlHql0mVzsYK2+ZYaefSRmrZ4BodvUi5EJSmmPILjk4+prRnlYjbbaSwaYbNqhlh08p72WSJ1hfLb/HFFWs3H2Q2uulwMOVSEF1HxK2cYPKabeTXLkshZNuzS+wr6+zwuJFVdEsPNNMqGJx96LdpITMIDqNFSXtXgi+HUMHV0y1cdBOXbszmqei0HnJlQ+CpBBha7sbk1igal96iwVGN3o33qDAWgiN8hOucxzWnW/gFJV1OlHXZkakYQJNFibHNARR+zID56wSmvpmQOhILtbUS6doE3OXHH54IaAu/gP5vZKimESfQoNfRBuW8FAbXALzsb/z840H/kgZFJi7kkyJwyqNxIqAtqmkLF70X2NnZgdFoRNNCDSSzebD/WMS+bx++AwK7ZwH5I4mQMyJElnNw1r2Ax+OB2WxGyWg2FHNixOpu4fOmBXNbFsR0hEA5LUB6ewJu8CLOEDTb4PV6YbVakdPylK4qRJWlEEVjXLwypOCNmQ+pIRf3y8IQmpIXKKAtQAiB2+2G3tAHbt1DFOjToKQiOSMAr/MJIqV30KFvx+0kZaCAttCmyIxIlAwiJleD8DQxQrNi6FAUwsQRuPbsHm7G59LhaoRz1V1/AXtqXRNDcj9mAAAAAElFTkSuQmCC]]></data>
	</file>
	<file>
	  <filename>/images/bg-slice-squidfingers.com.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[R0lGODlhDgAOALMMAKmpqcnKysTExL29vZmZmczMzLW2tra2tsTExba1tbW2tba1tgAAAAAAAAAAAAAAACH5BAEAAAwALAAAAAAOAA4AAAQ2kElGJgMzWHY2G1MlCRZmGVPhiQw5eqikSoqHTK4nT0u55RPQxZKwaHTGjMQUVH42TOFRx4wAADs=]]></data>
	</file>
	<file>
	  <filename>/images/bl.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAABkAAAAAPCAYAAAC80gMkAAACLElEQVR42u3dz0pUcRjH4bmAoAsIupV2s4jWZyFeREuhSFy5EHfhNkKEoHCbF+BGcFGW4qjj/NXxjMdxZHRs9zbnOBAERcs58XzguYGz/fJ7T+XgYCeGg25cdI+jVd+P09rXqB9+AQAAAAAAKK3K1tbHGN2cR3pej07jIBpHez4MAAAAAABQ7gFkeXkhxrf9yNJmnLUOo3n8zSsQAAAAAACg3API3NzzyLJmDK86xRms9ul+nHoFAgAAAAAAlHkASZLq0sbGWtyNLuIybTy8AjnxCgQAAAAAACj3API4fwWSpidxc92N9Oyk+BeIU1gAAAAAAEBpB5C8JKm+Wll5Hffjyxhk7egVp7CMIAAAAAAAQIkHkOkIsvbp07sY36YxuGwVI0jxEiQ/h3W0ZwgBAAAAAABKOYA8mfiwvf35YQTJ2sU5rPyfIPmP0fMhpDEdQowhAAAAAABAKQaQ6QjyLB9BNjffF+ew8n+CZGkjLrrHxRCSvwhp1/ejdfK9GETyE1kAAAAAAACzpvJ7SVJ9mp/DWl19E73eUdyNLmI46ETWb0a/Vy/GkPPOUZy3a3HWqhXDCAAAAAAAwCyp/KkkqS7Mz7+I9fW3kWXNGN/1Y3TTi+GgG9dZu/hPyFWu3yxkAAAAAAAAM6Lyt5Kk+mhiaaK/uPgy8tNYtcPdwo/7rDiT9UsfAAAAAABgJlT+ten/QZYndiZ2JwIAAAAAAGAWVSRJkiRJkiRJkv63fgIf5EmiqpUpyAAAAABJRU5ErkJggg==]]></data>
	</file>
	<file>
	  <filename>/images/blocked.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACU0lEQVR42q2T7U9SYRjG/VvgQys313pbc81WW80EBT1EICDiIdMjNlojTcdhptlWzoY0PzS11F618kumMWPlS7bUXpmWx0ohTsGK0HNAIN0V0oK51E9e2/Xt+f2ePffuJyVls+MqLxfOUWXmT1QJM6MnuWm9jvtIaphJUmV2FimEG8JuQznxhaLYn7ZGhIcciLwfR2RsGPzDLriMxXhbQLCvNFJiXXi2lOIX7ndheeYDovYHiHZaEW29hN93W7A0aoe32ohxlZh/qchcLZkzGAQx2MPd7sQy40T06gUErBbMN1YhfMWCSBONcMMZhB/dgfskidFjhzwj8gOChCAG075aM5acE/EbF200/BdNCNUZVpU7SyLccwNvJBkYlGXQCcFn6gQT7LmJaHcrAg0V+KGVrdmFChJ8Yw28lko8JdKZhIAp1Ycij3sQtVkQOG/EevEqs+GnCjDf2gyHZE8oIZgmtaHF7naE640InSvZUOArVmO+pRkD0h1JwVSRmvE31GDRSoM7rYkfXLMqCQK11XBVm2AXpSWf4CxU0IxchFB3BwJ6OfzFef/BrEIMNj8Pwc5rGJbuQn/WtuQQ32llgtc6wuMu0yF4rz0+MJ9a+hdU5oCVx2C5FHxHGyYLZSuwp1e0VbBqFybys4kx5RF+9rgawVvt+FVPw0uq8E2jhL/ODP56G6Y0uejLSuVj8Nrb+EJxmHh+9CA7nrcP36tM8Dddjvdr5Sk8y965ArPrwv8yJNsvHJSmmx3EXuZJ7m5uQLSd689JY/rEqebezC3CTf+9fwCiP9Om7nIiOAAAAABJRU5ErkJggg==]]></data>
	</file>
	<file>
	  <filename>/images/blue.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/br.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAAA4AAAAPCAYAAADUFP50AAABUklEQVR42o3STUtCQRTG8f+cc+Ze7YP1EfoKQZ+hVSAIQVs3EREENasi8uUGQZukJLWil0VtXJWuArmFKLXwChqYnfX8OM88M+71uf3NH+OcQ1XxsSefzzNixNraak/4zziHOMGJ0O12AV5ksXGIOJwIqkKn0wFoyyI0hoKqomq0WjcAp7Iwoo6RmZJ+pdzf3wGcyaKIqop6w0eeWq3McDjcCCEZyHw02WRE3tNP+1QqZYAtAJmHRBXzHh9HRLmYvb1dBoPBegjJB4BNA6bimffEcUQuF1Oplmk0rkshJIXJeZs052Q2ns9Qs93k4GD/EChOJzMzm0VZEVE83pShUghJZwZGcYRodidTfFbEzu429fplCSj+RgCWW8qPKzcl/Uw5OTqmVqtOiijMey57777x8PjA7W2Lp6fHHlACNkNI+n/+jZWV5SvgHKiGkFzwz/kBJON0JB0tp4gAAAAASUVORK5CYII=]]></data>
	</file>
	<file>
	  <filename>/images/controls.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/css-error.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAFBUlEQVR42q1Xa1BUZRgmm6aZ8kf9cqbGGeSyCGILK+h0EYjRQTETAbkIXhAlkoVRbIpIGnKcpkKGLhb/ssufaqamX01jppRO4SV3THGwgLWExtw9lz3n7IJuzNv7fGcPbbArtz0zzyzn+973eZ7vfb/znUNc3CwuKclWJCXajkkJyS4GSUsY8aHfBAGXmOe4uFheTLiTyd0QUlasIm3rNjJeaqXRo90TwD3GMS/FJ5GI57z5CmfwilzSkiRSCwpp9P1uGvv8C/IfOkz68w2k19ZNQNu1W4xjPtDRKeKRJ6rCPHNctU2R0+xktLwixH1bKkkrryL/a4cp0PXuFBitbWJeq6gS8chDPptQZtUWIZ6YTPIyuylcvIW0sq3kf/0NCnR2TQvE+YpKRB7ywSP2yExaEiq7IqfbRUmVp3LIaNpHgTffmjXQFiU3X/AIA4miEhnTGeAdbiN9Tz3Jmdlk7GsWBHOFvtdJWAz4wIs9dTfxdg4wAxna9hrytx6cN7AnLE4B1olmQBEGGOradWQ0vxAzKE/mkMUNnSgbzwwwS/acKF/MwHxSSlq4iZ2TDRyTElMIUAufIa2mNuZQ89eQpQG9yQbcYsKWRr7SCtE3PEYq7+KIyIuAKLG+TcUm3+bScAPuyQbEBI5SJACyI4uCvWfnDdme+R/nY46QgRSKaEDOzCJ13QbylZTx3ysoFpec4eDVl4jjGfyhCkQwwJDT0kldX8hHakXsDDAP+NS1BYLf0opggFuQzS3YsFEApYuJAbTA4nRkC52oBuS05aL8ogVcupi1IMQpHsUoBk6ZEynke7aItOodvBe4FdXb+TlumDOQb/IwX8F6sjSgN9lAlzUpZ60yD6IYAwdcmIGuqW/BUBtEFcoqSee3YKygbiwKExcG4iMdxxNtkFLTydh/gIwXW+YNva5e8PmKiiOXP8xAHqqgPLGaZH4aAKOllfyvts8ZyAcPHkHwhgzk3e2V3GW2oJwUPl6VlY+Tv/2Q+MqZNTgP+Vg5DETsfdSPEpio2mYaWZ0rVhI40jljGM0HxNeUxuUPE3fN9JvwIcuEyoeHvr9ZrMJXXCq+cgJvvxMVmPeVVwrjyEMVLXHwTit+Jxi8NxAILFQ++TRVylopNqVsd4hqGAfbxIq03fwpzhtUb2gkjcfxi3e+GHc28v8ILeaGE8cuizMP+MAL/ojC4+Pj94yNjS3UNG2xx+O13xgeyRsccm++4Wz8yJu6bFQQ4T3B5dRqdplCbMgCjMGkKHdIGHnIFzzMB17wQwd6/1/5neD9um484vFKy4eHR54eGBwq7bvaX3fRdan1/DffHu3f6zx305HlDz8rIsNGiLvG8chDPnjAB17wQwd6UwwYRsjAyEjewKC7BIku16WXe8+eP9Lz45kPj3938usf3vvgwkVn05+u2j0ed/4avwXcYxzziEM853Ug3zTgLgEv+KEzxYBowe3bD2i6/qjH62UTf+UMua9v6r/2245fL/c1XfjF1fZz77mO02d+6j7Vc/rjE9/3fHb8xMkvWewr/OIe45hHHOKRh3zwgA+84IfOlBZYVzAYXBAYHX2QAxdJspx88+9bDu5frvv6H4W/DwyWMmE1r6j2St/V+stX+hpYxIlf3GMc84hDPPKQDx7wgRf8M/4XLRj8ZwFvmPv8/gAMPayqvkWyrCyWJCmBV2O75fEuZaTy5lqKe4xjHnGIRx7ywRNN419+QN3rDj+4dwAAAABJRU5ErkJggg==]]></data>
	</file>
	<file>
	  <filename>/images/css-warn.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAFo0lEQVR42q1XaUxUZxTFpW6gLCKjUtdEwS0aTEwTq2DskmpsNS5tWlPb2lSqjSZt06SmTf3T/rGJf0y6aIQWVEyF2tTEDRnqIDvMDAwjIDC0AlUGGDosw8ybmdtz3lMMDijLTHLyeN937znnfusjJGQEP9fJ+dvd52aneK5GGRVDuHjLQ8VXO0V8lqnCd0UfYWQ/40KC+QPhe55rkTafdYqII0bEuVmk50MR13ePwXe2o99fN0kYz7yxCq9xn9cZ/dWTRNpWiXRDqPc0hI5AaCew7TE6tmrt7O86qsb76yeK53KUkTyjq/rPKIc0h0KA1UG89UURe6JIJ4Sc3wTCcUDrb03S4pmHfK8hzDGiaaG4N2e6SCPEO0HU8oLIvxtQ5ecg/erZYFzLOi2P+Y00ESrDmhIOl+cSKq+HuB2V2uaL3H8LQ/rFyNHyGsQXaTx3Q8Sbo47E06fDnaYzSvU4kabXkRQFkrdFHhwZPZqxVmrCND7werJmGp9W/TFf3jSRqgkaGl+FgQNjh21TP6e/dJL0nY49Nnj16TqHVEwUFTUrRO69GzzcWSiPuD2Z0Y7BF961cBETtpwZz4YdcL4neCCfKVTl9xdODVyQaEiR4qkiZZNFrAkidduCD8tyjR9wp8xNGTj8qXNsUoKTrhQL5g72cfVL4jclinIlYQisHQSDx/pLNqh8YsU5Qg3Ac3GWbYABz9nZoo5AeSwWy3oVnow48TUVjBnu9CX9nFIWo+oov0fLAANKVrRIIXZA6RwslLUIThT32XgJxs+dHofhR/XmBI0fOtR7wsAskQIskiLsfTMNbEZisAzEq3xiWqPxQ4d6A6fgvE4kHwaKcfKZ1qlwpy0JjgHyPOSU4lhVR8l8woA7da7IbSzAAjis2KTCnRYXJANx/ZySH67qKBdiBhro+3GeXm7jAiJMWCyWreLNXi/K1V340Ng/eiCfPOST8rXySMOTPlv/5Dlwwn8jQiQPAYULMGe7g4/8GI3/rxk8iE4E3oLnsBUN0zWYX8be3Rc8lK/v5/ZiB0Bv4WDHsd5/E6NgmAGnM5H4gUht8thR9abGZ9yocuMy0g91GyZ50rBPi5ZiGhZqqD2EY/TT0YP55ClNUHmVizGsPulpV/IJ7x84lMw4OktWInkxiD7DZXJ05GAe81k5DPivRwbO/WA/7Agjg6ViC3YEjBQtQyUHcasdGz6q9yOPB9AerfrccCHvcL8JIxjsu4IzoQzfdXewFspRhRGXVB0+tRq/HRrsN72iGWde8UrxX4uUvlPP8+s44pniHkWZ0NvbG9ZVlrqs99RqvfIbts5tHFJmjEbtYexnVGTZrS1Q615tlPi0vqO18++aZM1wXjRW/CxxpazSq3zgJf+gwj6fb1xfX1+Y0+mcZ7e3rb7X1JxU32Db8SDr41TX6UUudV2AUEownJXbNSEaegQao0n2I46j1/frAhfzyUM+8pKfOtQbWLlHmdzV1T3X3ta+qqmpeVNdfcOuKmv1R+VG89FSw9WTDRnJxc5TK3p4bfsuz1SHVW7N6Ic/O0JtVzJ04jyzvIfxzGM+echHXvJTh3oBBrq7Hxpobk6qq7ftZKLRaP6ysKjk+9xbeWeu38i5ZMg8WVqZdvAfS8r79pafN/a0/ATgyXe2s59xjEfeceZrBmw7yUt+6gQYUKfA7Z7m7OqKtbe1wUTLxgZb4xvVNbX7KiqrDpeWGb8uKCw+bsjL/0Gfa/gl+2ZuxvXsnEyIZfHJd7azn3GMZx7zyUM+8pKfOgFT0P9doCjje12uUATq2js6ltx/0JqA+Uu0Nf695W5d/S4Q7kVF+y1V1uRKS9UhiHzCJ9/Zzn7GMZ55zCcP+chL/mH/i6Yo3vFYMM/19PTSUGRn53+6jg7HvPb29sWoZmmrvS0eWIbFFc93trOfcYxnHvPJM5TG/8kd8Ef+Yv6qAAAAAElFTkSuQmCC]]></data>
	</file>
	<file>
	  <filename>/images/CSS.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAACMAAAAjCAMAAAApB0NrAAAAzFBMVEX///8CHVT///8AAACWlpY8PDyJlq+ZmZmapbtnd5g1SnbMzMzu8PQTLF8kO2tjY2N4hqS7u7vd4ejM0t2rtMYzMzNFWYJvb2/u7u6FhYXd3d0DAwN3d3e8w9HDw8MSEhLV1dVmZmaxsbEODg4PDw/S0tJ0dHQwMDBWaI1XV1cfHx82NjYhISGIiIiqqqrk5ORLS0ufn59CQkJ1dXXh4eFdXV1FRUWQkJARERFUVFRSUlJERERVVVXz8/MkJCRBQUH29vaHh4ciIiJ+fn4+2s6rAAAAAXRSTlMAQObYZgAAAVxJREFUeNrtU9d2wyAMBRmDsfHebuKk2bPp3rv//08V2O0X9KEP0YOOLF10ha4h5Gj/yia2ZVk2Onte5iayL8bnM2tmUhpxffvJAECgYyehhz4GsTypK6hMakzIy7ZOIkqpdCh12NCllBdUCub41M8wdSoIWS9Sn/bmJH0ghfOTQkx7rwL6i8GGPuAZ6WG/FTgd5mPAdTWCBKGO1D2SCkSjD3Lo5nk4W2mM2ixSztOOQapaSBNxL1wTchkX+gOs0XM8yPuSn4bKNZGrNhNytY9Mn2WYFTxZiszUXC/0uLlKtC/J5Glo2kOib40L8TI9ioqhqbhB5+T9tRvIUCjMDkHzqYIGCQQdhty99dRYrnkfRd2UaFlYohZrpNYomTLcQ4D7RU7ESBw0yNjooAUrpwNPC5Zvpwwa1AnY9DE2AjaL0bzTvdVqo9akta0d6m3Z7ZdtfoTdzeH4LP7CvgGPyxhkN5jejgAAAABJRU5ErkJggg==]]></data>
	</file>
	<file>
	  <filename>/images/delete.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACUklEQVR42n1SW0hTcRjfU6+91XvTbUcmRc4HH4aztYE+lNkurTWzi4qiwSCksqSLNp3RhEgo6cGolyBG7aHIaF0IhFKpyLlVW6SZZRs7Zztnl6Bf5zuytYv1wQ++7/td/ufP/8hkJTWrq9ItdlZ4V0cakbhzDMK9XlBPO+Jk/6u3esbDjrUg6/cg+3gUv15OSKA+OzWM5PgehM0Kz7rmN1rGkxg7gPTd88h4B5HxjRZD3BEnXLUjYFAVhzxTVutWrXKkrh1H6vop8GfWQH3pLHjaEbPLMaMpuE5Iq/LG96nBj3SDdw0hV9SXzaImblIi0qD05gPCdUpwbTuR7GsFf+4s/lWpGxOShnXUY0mrQD5gsUYB1moA12EGd8SMzMMHZeaMzydx3FETWJMey5rKggC1GLDLCK7VgsQhG4RL7rIAweWSONLEG3VYqS4IiCiViBv04GxWcI6D+M2y614hebJf0sR36PBFUXCF95XMXKxKjURnF4Qr438/23tfQq7Sk7ckDWmDFaq5fMC0Qt32c1st2N17kejoRvrmbQnUl86s2YZogxHkKfoX3skZP2u2iyf0gD9xWoIwOCwhNyd6nOIhFgS2MP7yP7G9a/M8s3U+1mxB0tkHfsgtPunFNQxcEJ+vH2xTM0hD2iIzz/Mbv618rw2GPthfOQ6/CG+vy/zQGSUDIVpvxCd1TYY40pCWPKUBGpHc/3pmduDJ0+eTj9yXp6d6nQsE6mlHHGlIWxRAJQjChmg0tmnp6zITjnzWhkIfmwILwRYC9bQjjjSkzfn+AP1sTO/MPaL/AAAAAElFTkSuQmCC]]></data>
	</file>
	<file>
	  <filename>/images/edit.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACUUlEQVR42qXT3UtTYRwH8P0L3UZXXUQg1V8Q9AKRdTVSiCS9mEngcuXQtUmBxNAww8Z62XAVasnmiGxiGDm0Jmszyr3P3FDncqPY3NvZ2dnZ2bfnnL1QEFH2g+/N4fl9nh/Pcx6R6H9LfM3YOTwdzvVNhqB6TjLxBcqxIHqf+tDz2Au5wY1u/Wdc1X2C7MEypFoHVHpbju8TALU5zGnm4vjXyEYWOQHgd95NOoYWIACqiTXspiQD8xVAOb4qfGDYEgokNMMiR7PI0EWkKAaJLI1vO3nEvlOIBGYQfHYea9NqrBhOwXW/oVXEHxhfRY5DsVQSoHyRBVWoQOk8i2SugHh4CjGrAin3DJD9ih23GfY7p+Mi/rT5KhGA5REShkA0gSh+GgIlNi1I+vvBbL1CbGEIec8LlDZs8DzpoEX8VQlAuSwANYghKRAos21F0nsDXN6GfFiKhPMKAuMSOHQSODXiAyL5qKsO1MJWkXSMNHuU4Gg7qFAb6EgLMn4VImNidN0crRyi7OHHCkDC/QRFfS8RW1ZUm1tBb15A2tuHsP4s6LgfTT3mCtClddavplxFtv0WBN70krHfgV6XoBC5iBSZJKQ7Ayq5Jaw9JzdVAKnmwy/3u7o0Cd+sCq7XI4g6mkGttyCxch1hgxjFVLS+TtxtRO0tGC/ffS/8We2DVphunwQyGwjqm2BV7cXSo0bM9h9Dp1JHxp4iOxtBevgYf/u4bl1qYBm7FozjHhzq4zC178vOKQ8f+evX2Xx0Dz3QdpCdH2xk3w6fWLQoDu3/0/oftoKuIJzlL/sAAAAASUVORK5CYII=]]></data>
	</file>
	<file>
	  <filename>/images/edit_area-design.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAABQAAAAUUCAIAAAAPwSgtAAAABnRSTlMAAQAAAABTxi4hAADyL0lEQVR42uydCXwUVb7vc+8831znPRWd633DnTt3ouM8lztPo1wdkHEMipCELSEEQsLShMXIlhD2IBJ2hABhlx3ZRAcksolCgGERRSBBSFyQRYJsiqAjjDrj5P2rq7u6urqqutPZupvv7/P95FNdfarqnKom9Dfn1Kmof4qKAgAAAAAAAIh4OAUAAAAAAACAAAMAAAAAAAAgwAAAAAAAAAAIMAAAAAAAAAACDAAAAAAAAIAAAwAAAAAAACDAAAAAAAAAAAgwAAAAAAAAAAIMAAAAAAAACDAAAAAAAAAAAgwAAAAAAACAAAMAAAAAAAAgwAAAAAAAAAAIMAAAAAAAAAACDAAAAAAAAIAAAwAAAAAAACDAAAAAAAAAAAgwAAAAAAAAIMAAAAAAAAAACDAAAAAAAAAAAgwAAAAAAACAAAMAAAAAAAAgwAAAAAAAAAAIMAAAAAAAAAACDAAAAAAAAIAAAwAAAAAAACDAAAAAAAAAgAADAAAAAAAAIMAAAAAAAAAACDAAAAAAAAAAAgwAAAAAAACAAAMAAAAAAAAgwAAAAAAAAAAIMAAAAAAAAAACDAAAAAAAAIAAAwAAAAAAAAIMAAAAAAAAgAADAAAAAAAAIMAAAAAAAAAACDAAAAAAAAAAAgwAAAAAAACAAAMAAAAAAAAgwAAAAAAAAAAIMAAAAAAAAAACDAAAAAAAAAgwAAAAAAAAAAIMAAAAAAAAgAADAAAAAAAAIMAAAAAAAAAACDAAAAAAAAAAAgwAAAAAAACAAAMAAAAAAAAgwAAAAAAAAAAIMAAAAAAAACDAAAAAAAAAAAgwAAAAAAAAAAIMAAAAAAAAgAADAAAAAAAAIMAAAAAAAAAACDAAAAAAAAAAAnxDsHjxywAAAAAAcCNQUVGBASHAN7oAD8jqAQAAAAAAkc3pU+UIMAKMACsCfM/DjwIAAAAAQLjw1eXPy45/PL1gyebNOzZtEor0bNT/3FiUP3WRFEaAEWBwCXBy524AAHVFQkrH5m3b/zGhdePmLRo8+XTMH2L5WgMAAOBXgGfPWV5WdrwigEgxKYwAI8DgEuC2nR0AALVAfEpqs7YpjZsnNGwa99AfYh947HG+wQAAAAQtwBUBBwFGgEEnwJ26AgBUL/HtOjRLate4mbhu84f+8CSuCwAAUBMC/Le//90vCDACDF4CnJTeBQAgaFqnpjdLbBfbos3jzeIfavzk/bguAABAbQnwt9/+1S8IMAIMCDAABEl8cnvRXXHdR5s0Fd29t8Hv+RYCAABQVwL85Zdf63nyiScMawQEGAEGLwFOTOsMAGBKXNuUp1olPv5M/CN/bPK7Rn/gCwcAAEBICXB5+RcaYr8q+pUCAowAg5cAt+nYGQBAaJ6U8lTLxEbPxD/8RJPfNUR3AQAAQl2AP/7krIpmvyraegEBRoABAQYAdBcAACDsBfjIB6cFzXsNyyoIMAIMXgLcumMnAIh44tt1eLpN20bPxP13bFN0FwAAIDIE+OCh45rxyrKKYQ0CjACDlwC3Sk0HgMjj6dZJjZsnPPZUswcb//H/MlUVAABAJArw+wc/EcR11QUN/RoEGAEGBBgg0ohLbi/G27Bp3MNPNOFBRAAAADeUANuDACPAgAADhD3PJLX7Y0Krx55upjyL6L8b/vaRxwAAAOAGAQFGgKEK9wCnpgNA6NO0Tdsn4lo81qTpg4//8d4GvwcAAIAbFgQYAQYmwQKIKFp2SGuamPx4s4QGTz79oLOPFwAAAEAFAUaAgccgAYQ3rTqkP5PY7g/NWzza5JkHH//j/Y89DgAAAGCKKsAnTn6mf96vFVIMAUaAQSfAaZ0BoPZplZreLKndH+JaPqpM1PzkA79vDAAAABAIIsBfXv52Sv78xUv+5JfJU+aXn7uMACPA4BLgxLTOAFA7NE9KiW3RptEzcTF/iP1dwz8AAAAABIEI8I8//lAwY+mbb+7Us2lTkWGNIMWkPAKMAIMmwF0AoIaIb5f6dOu2jz8T3+DJp/9foycAAAAAqo46BLqs7HhFAJFiDIFGgEEnwOldAaC6aNkh/ZmklCfiWz32dPMHGz8JAAAAUO1ok2D99a/ff/nl18LFi18J5eWXjh8/JxwrPX24+MTBQ8cPHf6USbAQYDAIcBcAqApxye2fbNG60TPxDz/R5KHGTwIAAADUKL4CfOHiV0L5mS90AvwpAowAg4kAt+3kAIBK0bJ9WrPEdk8mtP79081FegEAAABqExMBvnBFOHPm0vHjnwuKAJfQA4wAg5kAJ3d2AIBfWqSkPt06qXGz+EebNG3w5FMAAAAAdYXdEOhPPxfoAUaAwboHuLMjMkhKSmrduvWwYcMWL148bdo0h8MRHx8fMa2D2qd1x07N2qbEtkps9Excg9inAQAAAEIEBBgBhuAFuF2XbhFAixYtXnnllR9//FE/5d2ZM2dEg0WMI6ONUAso0puU8mRCa5HeR5s8AwAAABCCIMAIMFRFgDPCndTU1IsXL1rN/L5q1SrR4whoJtQQyrzNie2UeZufagYAAAAQ+iDACDAEL8ApXTPCmqSkpOvXr9s//eyNN94QBw73lkJ1kdzZ0bJD2jOJyU/Et2zYtDkAAABAeIEAI8BQBQHukhG+iNZeuHAhkCeAz549Ozk5OawbC1UhKb1rQrvUZ9ok/zG+VaOmcQAAAADhCwKMAEPwAtzeEa4kJiZu2rSpIuCkpqaGb2MhCNp27taifVpT5/Dmx5slAAAAAEQGCDACDFUR4O5hSq9evSoqk23btiUnJ4dveyEQtOHNf0xo1bh5AgAAAEDkgQAjwBC8AHdwhAqJiYnNmjVr27ZtZmZmbm7uyJEjZaFNmzbx8fG+hVu2bFleXu5Xer93Rl3++9//HhcXFzrtheqiXedurTqkN09KiW3R5om4lgAAAACRDQKMAEPwApzarWed065duy5duuzcufPrr7/2ldjjx4+LD4sG6zfp27evlfT+4x//0JbFohMSEtLT06V8UVGRLIdCe6HqpHTJaJ3aKa5t+yYtE/8Y3woAAADgxgEBRoChCgKc0bNuSU5OHjNmjN++3NLS0tatW6ubtGzZ8sSJE1YlN2zYkJGRkZmZ2bZt2zZt2mgHatWqVaqkrtsLQdO+W4/E9C4JKalN27R9skVrAAAAgBsTBBgBhnAV4JSUlNzc3ABv4r169aoqtLKVacfvunXrioqK5s6di+hGEm07dW3ZIa1pYnJsyzYAAAAAgAAjwBC8AKd1f7YOqexEVleuXGnZsqW+x/iHH3746KOPTp8+PWzYMNHjnJwceVd+9u7dWzy5efPmrVq1qts2QhCkdO3epmPn+HapT7VKAgAAAAA9CDACDMELcHqPZ+uKFi1aXL16taKSOeeM/mXTpk3XrFlTVlb2448/Ggp/++23Bw4cECWOj4/v2LFjHTYW/JLarUfbTl1btO/4TGJy0zZtAQAAAMAUBBgBhioIcM9n64SkpKSioqKKKue777777LPPAuk6zsvLa926dV21F6xo16Vbm46d4tt1EO8FAAAAAL8gwAgwVEWAM+uELl26BG653377bUV1ZOHChSLeddVk0OigdPY6WnVIb5aUAgAAAACVAgFGgCF4Ae7UK7P2admy5ccff2wvqy+//PLJkycvX75cUFBw6tSpimpK+/bt66TJkN7z2RRHRpuOnRLadWjeNgUAAAAAggMBRoAheAHu/OxztU9ycrKpnZaVlYnuXr16dcyYMSLJSUlJrVq1euONNyqqL7L/OmnyDUvH7r3ade3WumN6fLsOAAAAAFB1EGAEGKoiwL1rn759+/qq6Q8//JCSkiLGGxcX16FDBykWHx//2muvVVRrtm/fXidNvtHo0K1HkvPxRQkpqQAAAABQjSDACDAEL8BdM/vUPhMmTFB19MSJE7Nnz5aFCxcudOnSpWPHjlqZxMTELVu2mErsP/7xj6AF+PDhw3XS5BuBzr2e6+Dorjy2t31HAAAAAKghEGAEGIIX4C6ZfWqfpUuXyr/Aa9euieXGx8c7HI64uDhDGZFhK4ktLS09cOCAfs3169fPnj0biADv3bu3TpocwXTsoczk3Lpjp5Yd0gAAAGqUGYeV/80PzquLo88rdv4p/aXwbkVonIFwPXvDN30uxz6/aUBdXwsEGAGGKvQAP9e39lmzZo38C+zSpYtVgZSUlE2bNllJ7NWrVzMzMz/99FNtzYkTJ9LT07///nu/Arxo0aI6aXKEoXivcnNvRpu0zqK+AAAQ0Sw46DWYakHr3M3nnIvnNj3vKvOSU40qLhTm6l+64ikm+N3Wllmq/LwUQLV96pCz6YKxMpVC3aE0v2Mljm5a1cBbUZk6+1ymav8kVOoM1BiV+AwYUD975zfn2J5tuxPobw8+l6N4Vs2cBAQYAYbgBdjxXL/aR+T2lVdeEcu1KhAfH/+Xv/zFxmOHOaO9PHLkSNOmTb/44gu/Aty3b986aXJk0OXZPh0zerXrktGmY2cAALgRcH+PFzvVrczd4tSAC+fOb8lRyowsVJZdxTRNMt+h7bZ+6+OWH3/Vtq1DkKeiMvtU66nE2czgWlHFy1T9H4YaOKtBEMTZ8/rrgNkVMbROPcS5TSMtPr3mezA7oghwjZwEBBgBhuAFuFvvfrVPS2dsCtiMf1azatUqMV7984G7dOmSkJAwZMiQ3Nzca9eumW713XfftWjRok6aHNZ0ebZ3Wnfx3m5J6V0AAOCGYtBmZw/k5he81j/v0oA3iisOzne+LN7yhlNi33jeYpPAtnW9q3Xbuncy26s317mhrJ+vW3t+yyC/1VbLFy901+GC+1jFs7VdqfvxroZrpba57aF1bSw+qLXLqhV+a6IdVF3QSgbSXvd6r5NpsR993dSSltsGcgYsMB7F9HIHUEPn2XvhDf3pdX+u7Gri2rNFGd27attdHzPfK+vbcJ+z4V3b4tkWH+ygQYARYAhegDP69g81xH5HjhxpL8B///vfmzVrtm3bNv1zg9XNW7duvX//ftOtZs6c2b59+xBscmjSJbN3xx7KOOe2nR0AAHBjMsf5Pf7gAu/1I99Uvs1feHPwgpKK4kVS5uCCvA2KMlzYMNLRVlbqv+tvyavEtp6SPjssXuRVH+d+XDt3FvA6kGkdtP2odagomdPZMXjLBaudK5V0F1D24L255aF1m3i27WzXCruaaFupC84q+V4U88tkekSz/XjV0++2AZwBU0yOYnO5DS21r49758Yz0NnshDj3bF0Hi8+t4dOrb4752Vh00H1lLVtahX+YCDACDFUQ4D5ZoUZKSsrixYvtBbioqEgEWJ1BWs3Jkyfj4uLUPSQlJX311VeXL18WT9bfORwfHx+C7Q01OrvHOSd37gYAADc4qmwcWuC9fuRWpwZsHdJ5tPJtXltQvtarZRYf8uoAWxz4tkO26CzEuVJfB23Zu5jPUUzr4PKlxbo6uPZzbstor8bqCni2ci/4O7SuObr9mLbCf018jm56UUwvk9dK2/3oW2SsQBBnwPPXB+3zYLyy6lFML7dpDc3PnusSi2Sq51wWbD/PLgF2XlbferquRckhd40857/C5IL6Oxta3bpZtrQK/zARYAQYghfgHv2yQw0bAT579mxWVlZmZmZCQoKUzMvL0/cJqyuFjh07igw3bdr0zJkzWgHZKgQbGzp0fa5veo9n2zu6p3TNAAAAUBn6pvKt/fybo73Wj9rqHHy6dahn5eiNTuvbOCrDT0nbbfWHc045rKxU5x4+tCjDvVJZNq+YKdoRF6nGskRfB58jOg+kr6S2lXvBz6EXlfh+gZF9mrbCf018ju71ru1l8irmdz/6ahcvsd+2Eiff5uR470e73KY1ND977oYfKi4JqD6LXAI81Oxd8yZ3tf48+zkbS1QBnudzgTwtrcI/TAQYAYaIEmDR1zFjxpgK8N/+9jfRWq2kyLD+XYPitm/fft26depbkydPTk5OxnINdO+b1TWzT5rTewEAAMxY4pwP6MKmPN3KPJcGDPMUG+OcQNe7mLDoiNMClgS47TynU5x/c4x+5TCXPMhKV4HDi9x7rjgyz28TtDpoC7o6mO9cV8B4RG0/FofWNUF5qe5ftvJ7ILtm6iuvf9f+MpluYr8ftT5WhwvsDPjHfRTTy216aPOTo+2qwuyzZ/VJ8PrsedCuVHvva2FSc9MPhvFsqFfEtdK8pVX4h4kAI8AQvAD37DcgBMnIyPC13yNHjqSmprZs2VIr1qtXL32BgoICkWf9fkR6r1+/vnDhwjZt2oRmS+uEHn2zHZl9O/V8LrVbTwAAAHs6dFt6WP/fbcnSDqPfcmrAW8M9Zca5vtaP7jnPuwf0/NZxXnuz3VZ3rAvnPSvHbfIeZHp4sW5XZgcyrUOHxUd86z986wWtgEtpFhv3LJvoN7c5tLv+SrW92isiZNYK/zXR6qw7uvau/WVKde/T9CTo96Mvpl0a+21tTr4Vvkcxv9xmNbT6DHiutbN8oJ9hn7Nn8rEx26HpB8PqbOjaK1ffpKVV+VeJACPAUAUB7j8gBGnVqtWPP/5oEOBBgwYZinXq1ElfYNu2be3atdMX6NChQ1xcXOvWrUOzmbVMj37Zjuf6dur1XGpGTwAAALDC46WcjRC/UhkuMT685MZqOAKMAEPwAtwrOycEadmy5WeffaaX2ytXrojKGooZnpZ09uzZhISE0GxRHdIza0C3PsqUzmk9ngUAAAD/jH3bKcBvj+BUhNmVWlZscgvdhU1jI63hCDACDMEL8LPZA0OQ1NTUpUuXqr+0vv/++7feeqtt27a+xdLT0w2P+RVJDs0W1Qnd1amtemYCAAAAQMSAACPAELwAZw4YFJq0b99e/pV+8cUXrVq1SkpKMi3je6twcnJyyLao1ujZf0C33v26PNu7c6/nAAAAACDCQIARYAhegJ8bMCg0adOmzRtvvDFkyBCbMn379jUIcI8eoduimubZrJyMPv27ZvYR9QUAAACoWZYdVb57fbD8Bmry+G3OGay2vVDXNUGAEWCoggDnDA5ZxIGTkpJsCrzwwgsGAc7Nze3YsWMoN6raUYc6O3r36/pcXwAAAIDKsshpssUvK8ujtl1UXhxdobw1YfsFbdmXl49W2LxbWxWuVdQTcnH7qLq+ZAgwAgzBC3CfgUPCFP19wlqWL1+ekpISvo0KnN6ivlk53ftmdevdDwAAACBoRjul98K2ybK82OmW4nijvdebsFwV4JU30Lma6BLg0XVdEwQYAYYqCPCgoWGEyG2zZs0ee+yxBx544Fe/+tWBAwcMArx79+6bb775lltuuf322++888677rpLSkr5pk2bJicnh1djrVDv8s3o0x8AAACgGpik9vSuzOizskSM9+IlebGkT/8liuFe2jrJWWbFUc/3LTFAbY2ylcm7o7df8szCvH2y5ygXL7kfj3t0ibaVukPr/bj24GSJu0jJCouKTXJrqvKW0hDrMlaVmbz1oq7t2g7VBdNdGRqrq6e20ndN0CDACDAEL8D9Bg8LfRISEkRixXhFbqPcEcu9fv26QYA//vjjn/zkJ1FmkW3r16//8MMPN2/ePCxabaDPwCHPZg/s2S+7BwAAAEB1suqIonNFYycXXRDrW+n8OTnfKYHHlkgBZb04W75SeOWxCnXZuVBxdJVrQTZXdpW/9WjRWO2tftmq9R1Z6dqJusOxqh6bFTAcZaxLgPP1FbbfxHUgl9weW2JTxqYyuiaoBTxNcLbUrGL5Lm2ebPKuaUOCBgFGgCF4Ae47eGgok5ycfNddd5k6rXis74Pezp8/byXAWqSAuHTr1q1DvO0qfQYNyRwwsGfWgB79swEAAABqAqf4HVuiWN+xJf0VHz6y0mnFYoD93Yqoj+a9R1d5pNFrb+41mkmq9nipaGx/nQ3qCpsfxbK21ptocussbFfGujI9nCfBuZP8rZfce9Nt5WmX8RAeAXZ39uYbyqhrqgICjABD8ALcf8jwUKZ+/fpWHnvfffddu3bN8AstMzMzKrDceeedodzwfkOGq12+vbJyAAAAAGqU8UWiZ5c+OHap4tKO8VnT3rpUceFYqdJxWjTN/a5r2cPKUqchrl7qNMEPVnre8lrjLtZryg6nPcr+vXaoFTY/ihl+NtEdyLLy/iqjbfjBsVLP5vo9u9vls/mlt6boGq5Gmm+6JlgQYAQYqiDAQ3NDmdtvv91eYh0Ox2uvvfbuu+8uWrSoSZMmUQHnlltuCc0mi/r2dqovAAAAQC2Rv9N1I+uxV+TlsmOuzsy3853vrlLNrXSZfhN1pZRXFy7tHK+sn/72sZ3jtbfcu/pglfsQzmJuaZzuVcDsKPqSGvab6A9kWXm/ldGfE+086LbSSqoLzs2nv31JV1h/IOepsFxTeRBgBBiCF+CsYbmhTMuWLX/1q1/5HdVc2Yg5N2vWLNQa23fw0N4DBz+XMwgAAACgdlmjztB0dLXz5WqXNL6sFZi286J++qcd011lStfoyqu2uHNCzqAJO77wKqztQfeuuv7lUt1xfY6iL6lhv4n+QJaVD6Qy7peuNvrsx71+jXtyqy+U6cMqvtg2zav5vifEq25BgQAjwBC8AGcPGxH6NG/e/IEHHrj99turYsKy7S233PLb3/62adOmIdW6/kOG9x00tHfOYAAAAADwx/Rt6qxVqyPmQJUGAUaAIXgBHjD8+XAhNTW1RYsWjRo1Ehm+66676tevf+edd97izM033/wTd252RlbKu1JGexJSXFxc+/btQ6c5LvUdPCwyHs4EAAAAUNNM2unuRy19rcYPN32X0t/7xa5JoXceEGAEGKogwLkjoZbJEvUdmivqCwAAAABQWRBgBBiCF+CBI16AWiN72IisobkhPvM2AAAAAIQyJgJ84Suh/IwmwJ8hwAgwmAvwoOdHhRF9snN69e3frVdmp27dO3ZxtE/vnJLWqW2HjkJS+9Q27dqryLIgK+VdKSMlpbyj57O9+vTrnTWg9qst6quOeQYAAAAAqCIIMAIMVRDgkaPCgl59+3Xq3iMlvVOiiG5Kh+CQbZM7pqd3y+jZp2/tVDtnxMjs4SMAAAAAAKoLBBgBhuAFeMio0SHOc9kD0rt1T05Lb9sxzYpkN20DpmNXR2b/rBqq8+AX8lT7BQAAAACoXhBgBBiqIMAvjA5xOnbt1i6tkxXpjozswcPGT5k6bdbc0RNffLZfVop1YQOpXRzVXtvBI/PUMc8AAAAAADUBAowAQ/ACPCxvTIjTpUfPDp27mJKR+dyCZcsXr1ipZ1DuCKvyBjp3r87mDx0l9jsKAAAAAKBGQYARYIhkAc4aPKTbs8+lObp17Oow0GdAzsKXlxuYs3CRaWE9UsDRK7PfwMHVpb5DXsgDAAAAAKgFEGAEGIIX4OGjx4UF/QcNeS5rQPfn+nTp0atTRg+VLj2fnbd46YJly/XMmDe/c/eeWhk9sm1GZu9n+2eL+la9SsPyxgpDR40BAAAAAKg1EGAEGIIX4NzR48KLAUOH9x84pHd2zrP9snr07ps/c/b8Jcv0TCmY5eiZ2a1XZsazz3XP7N2zTz8pKeX7Dxw8YMjwaqmDZr8AAAAAALUMAowAQ/ACPGLs+PBlYO6IsS9OnrdkqZ6xk6cMHD6i5g6aO2YcAAAAAEBdgQAjwBC8AD8/bkIoIyorlmtXZuy4uYuWzF3s4fkx4waPGFntNQnrvxQAAAAAQMSAACPAELwAjxw3MWQZlPv8xKnTRWhtyuSOGjNn4eI5C5doDHshr3qr8TwAAAAAQMiAACPAUAUBHj8xZBkyctSsBYsK5r00+PmRg59/wbTMsFF5UkbPkJEvhHKjAAAAAACqAgKMAEPwAjxq4ouhyfBRo8dNmTp7wSJh1vyFk6bPENc1KZY3epazjFZStDlkGwUAAAAAUEUQYAQYghfg0ZOmhCbDR42ZPmferPmLNGbMWyBWbCg2YvQ4fZnpc16SDUO2UQAAAAAAVQQBRoAheAEe8+KU0GTE6LEzX1pgIG/CJEOxkWPH6wu8OH3G82PG6Qs8P3bciNFjZG8h21IAAAAAgMBBgBFgCF6Ax06ZGpqMmjBpxvwFM73JnzXnhfETR44b7yk20avY+PypUkC/n5HjJsx4af6EqdNlIWQbCwAAAAAQIAgwAgzBC/C4KdNCkLwJL46bPHXGvAW+FMyb/8K4iVrJMZOmyBrt3dETJ+v3IxY9adoM9a3x8nL8pNBsLwAAAABAgCDACDAEL8ATpk4PQcZMmjxpWoGYrS/T5swdNzl/7OT80RNflJLj86fp3n1JXans4cXJspw38cVps+dqBWSr0GwvAAAAAECAIMAIMAQvwBOnFYQgYqovTp9RMPclG6bMnCWWq3iye83U2XPHvDjFtYcXp0yfM0/QbyIvtQIAAAAAAOEIAowAQ/ACPKlgZggyfur0idNnTBdlnWfN3JfG5U+bMmu2tubFGbNcm+dPy581x3SrF5WdTwvNVgMAAAAA+AUBRoAheAEWIawT1PEbNgUmTps+bc48GybPmCV7mDZ7rrZm4rQCWTNp+gxBv96bufbHBQAAAAAIZRBgBBiCF+ApM2fXCfmz5gjyD9iqgLw1zTmG2QoRYEF7OXX23BcLZthvom1YV60GAAAAAKgiCDACDMELsCqidYLIqmbCvshbU51lzJk9Vymg6+ad6lxj32msUodNBgAAAACoIggwAgzBC7AyVBgAAAAAAMIEBBgBhuAFWJloCgAAAAAAwgQEGAGG4AXY9Fm7AAAAAAAQmiDACDAEL8AzX1oAAAAAAADhAgKMAEPwAjxr/kIAAAAAAAgXEGAEGIIX4DkLFwMAAAAAQLiAACPAUAUBXrQEAAAAAADCBQQYAYbgBXje4qUAAAAAABAuIMAIMAQvwC8tWQYAAAAAAOECAowAQ/AC/PGZcwAAAAAAEC4gwAgwBC/AT7bvBAAAAAAA4QICjABD8AJ8z8OPAgAAAABAuIAAI8CAAAMAAAAAIMAIMAIMCDAAAAAAAAKMBCHACDC/QQAAAAAAEGBAgBFgAAAAAABAgAEBRoABAAAAAAABBgQYAQYAAAAAAAQYAQYEGAAAAAAAEGAEGBBgAAAAAABAgBFgQIABAAAAABBgBBgBBgQ4Avn62l8jFS4uAAAAQHUJ8IWLXwlndAJcXHwCAUaAAQEOM06cuxCpcHEBAAAAEGAEGBBg8PDRmc8jFS4uAAAAVJGEhIRevXr16dNHfspyLR+9V4MG49q1G5eermd89+4G8vv00SNrujVpggAjwIAAgwlHT34WqXBxAQAAIHj57NVran7+bO/IGllfC0dv8bvfzezXd/fy5e+uXatyePNmL7ZtO7Zjh8qH+/YZkJWrJ0584pFHEGAEGBBg8OLw8ZORChcXAAAAguCpp54S1128YuXcBQtXrl1XVFT05jv75acsT50xQ9bLu1Km5irw2H89sLpPH7HfzZMnb54wQdiWn69n76xZet5ZuNBAycqVosHb5syRXSHACDAgwODhvQ+PRypcXAAAAAjCfletWiWWO2fl6uIPP7x8+fK37siyrJm6fIWIsZSpOQfu1aDB5txcDxMmbB8/3oDixpMn758yRdPgg3PmaKgaXLx27eDmzRFgBBgQYPDwzrGPIxUuLgAAAFSW2bNnr1y7bvbqV8V1Pz1+XDj5+Tk9sl7eFQGemp9fQ3Xoc/fdGwcMEPQavGPkSA2RW6nYqdJS8d49Y8eKBmvoNVgY0bgxAowAAwIMHvZ88GGkwsUFAACAyt73u2nLlqnLV7xWtPPNd/YLe4pLxHhVZFnWbNq1W96VMus3bEhLS6uJanS65ZY1GRmqA2vsGjRIo2zr1s+dObZ6tfiwOHDxuHEaJfn5KrLc7447EGAEGBBg8LCr5FikwsUFAACASjF//nzlRt/lK1Zt2iKI6Iruqsarrlm4bv3s1a8KkxctVkrWTCewCPBLKW0Ke/dW2dSnj0phjx7qQtm6daoAl6xcuTczUxArLs7N1WuwYsI5OQgwAgwIMHix4/DRSIWLCwAAAJW4+zc+Yf2GDWK/wpyVqwURXTFeeSm6qzFu7kvCC7PmKJ68atXjjRrVhAAvjo0V3dV4Iy1NTHjbnDmbc3PfTk/XBPiD+fNFfQ9v2/bu2rWyIMaraLCTD/Mn72/bFgFGgAEBBi+2HTwSqXBxAQAAIHDS0tI2bdmSN61Ar7vyMjc/3xR5S4S5Jh4OLAI8v0EDkV6VDcnJYr8fFher0rs3M/PY6tWuHuD8fE2GpYA48JHevUWDVfZGRQ285RYEGAEGBBg8vPV+SaTCxQUAAIBK3QAsQjts3HgxWxWx3IHjxlshJaV8fOs2NSHAi+6///V27TQ0+z17+vTb6eklK1dqAlycm/u5O8q0WJmZ4sClAwe+96/1EGAEGBBgMLL1QHGkwsUFAACAwElOThah1eRW6DvieUsGDZZia9eurYmHISn3AN9777oWLYS1jRq9u3at3m93xMbqBfiduKYlOTnylrqmbN260u6Oo/f85mBU1EEEGAEGBBgMbHnvcKTCxQUAAIBK3AP81FMitGOnTs3o02dg7gix3J45A61Iz+wtJVetWtWgQYMaEmBxa7HfDcnJWgev2O/bjRsL2hDoD/MnH4p/RigdOFAr9n7jxqr9IsAIMCDAYGTzu4ciFS4u3ID8psuaM+Vr2nMq1LPx8IQ9Fc7sm8DZAIBAmJqfLw7cNi1dHFgsV36aIvYrZaRk7vPP10Q1RIAX/PKXYr+v3XPPnrFjtScebXnwwR2xsX+OiSnJz1dXHundu7hJExFg+andDFza3SHq+8FtNwkIMAIMkSDA7VeXV7hzZnU35Quf9/ebUfvk9TujtK+DWula+V5oqF5lvqt1W1FevqJLEF/ygtxQ2LT/UGWY31b+7UU16r/+UCU3DJKJ6crx2s4JZttKa4P7M+P7svo/G7Zfx/UfofD94u71T8+6LVX59IaL+Pn+FnLXNpi2O8+Y5W+zAM9DnZwu+9/VAX+WKvEPU/ZfqV/CAAAJCQlFRUVjx42Pb90mLaO7FU/FJ4j6rt+woSamgNYE+LUHH3zl7mhttPPezMyt992n9gALJTk5Yr/vN24s6quidQJ/On+uCPCx+j8TEGAEGMJegJ1u4Jbbhyfske9wynej8jPlupXuL0nq8p7x2peh6lca/9ULbQGeuW5LZZj0tCKkDdLmbankhkHSr7VyvKfHBLNtqAmwc5/KZTJ8LG0+QrXzoa1J2wnAbapJgEO8E9L0t1BwbXe6a7n6WQrDPwSY/64O/LOk/AMJrIER/9ECgBqiT58+e4pLxG/FchOS2rZNS9cjaxo3adJ30OBNW7akpaXVUB363XHHwttue+2eewStX3d/27Zv3X33n2NiVPbdf78gAqwMeG7QoOSmm479vwfUkqdXLfvgln8ui/55yb31EWAEGMJbgJ1fmIxfaNTvRitWl6tfMX8z/p0z+95Rvy3VUD9eparn3X3helf9krpin2elq1fH0E3kWVm5DQOv89w33qoMU5o6BbjTQt3KhQPuj/Lk/r4rjMVcBdple/agxrvAIwPGKQVWdHrE9da4vg2ivKLuIVCqS4BH7fPqz7e9KMomhvK+h7D5Xm7lxoZDWH2i2nsrkO+n5R6zFtWaALtOnbsDUKnGvjXBfex9G+LV6opKb17LfwhwVumdPQG03fRPJFJhQ9+meSez8xejuk4+VKP0vzfU02VxZmr0VJj9rlZarX3sZb3h95j+HHr+HRn+UficOu36+vyqNP+XG/gHz+u3rvWFq50PGADUBDkDBxYVFc1dsFCMVzRYj6yZOmOG2K/aUXy/M9VeAbHWxVFRr9wdvfqmm7Qe4P2dO791553iwKr6CuK9Ir0f3HaTertvadMmHgG+7aaye+uXIcAIMIS9AFt9lZSV7q+/o/aVrxivmYaiE7X25cO8errvdtoXO/XbqnGljxdp33Eru2HgLNi0rTLkN1NE9NEuS3Qrl+T8V9t8w7sDnUOl/6v/Slk/sf+jznHM+UpJRXRzJiqFV3Z5xL0rq/WbXPtpNnFbJeupUC0CrDvJE1Y4r0XAF8VV3jAgU75q77Eelmn1JxuvQ1h9okwF2L2V1m9mX8Oa/+fgMnybPwcEeoa9G6IbVBzYP7daOw9mv4WshkD7tt2qV9Priutb7X31PXsznAFNgH3OTI1/JEx/V8vRdX8ZMfwNyFKAvbrWfT423qfX/nMV+AfP/bebCaZjrWv/AwYANURycvKqVavEcleuXSfGO3bqVPkpa0R9F69YmZCgDIEWAU7L6F4TDqwK8MLbblsVFbVr0CBVaw/OmbM5Kmrfr3+t8t6/1tNmulL5MH+yawj0yKHH6v+s7JG7hLxf3IEAI8AQzgJs9hXN/X1I/a6jDYo2uQfYatBpjVfP8z3V1UVsriveX9echfVjBQPdsFIseXNHZZge51RcxzLzAkOSlbfjXtyxZNmg3yn9uIMmv/mKo4Frk8lZign/LusVtbDnpaewrPeU99rhm5WmegU40ItiaxHGLjhfP/T67u6549H0uvv/YJiWrHnPsboHWCcSSuenzueD+tgbLo2uS7N95TevtVPhran+2241wll/3ox+aP03EeOJsihTw38TMfldrbVdfxLusRqR4ZRPn4+3z8dGf4r8fq4q8fvWWEPzbWvxAwYANUSDBg3S0tLEcuc7M3v2bMV409LUaZ/r//t/yIKsl5XRd91dvQ6sCvDqm24SAd7y4IPaE4C33nff9qiovTo0+xUllgKuqaGf/n1Z9M/Ffj9sdC8CjABD+Auw9XcjZWRgebl7WiwztajhMX7m1dN9DdI6agISYKM/1IgAL3/7z5WhIEER0se6r/RaPzzFa6RywhRZ+Vr3Bs6SU4Y8qMjtkGlv/3nagMdk8cEBr7k2nNJRKZ1SsHylp4xnw5WePTt3WGmqR4B1Yx3d/Za2F8W7vPHmXucXd+ddvs6+L8u/5vhUw8Kx/XyiTG3Quoa1dg+wvgOtah9770sj6yv3z62W/jTm+1vIXIDN2m43QVqFSXdxOAiw+e9qtRNV+2diP4uYSaN8PzbGvxH4+1wF+MHzHdtvefTa/oABQA1xvzuGleLAjZs0WbVqlbjxvXdXpwPnOQV4lZuDc+a4JoLesWNzVNRmH/t971/rndi3Txv/rHX/IsAIMETyPcCj9JMM+RuKXJv3AHt1zgTbA2zen1wdAvxK0d7KMLOlU4B7rfasHNleWfXQwLXacstpzrempWlKrL47c+Bj2rLXy9VDH1I6fYfOVNav7fWo5xBeO6wk1TsJlnsIsZ+L4lPefEJaVWN8B0Ib7gE2F2CrT5TfPkDzFtW2ADsHu65ZEUAPsP3H3tgQz5jegP651dp5MP0t5LcHOJBZnexdN5QF2PR3tfu+aKtpFGw/FaYfG4se4ErsIUABtr1wtfkBA4Ba5uEHHhAHfrxRI3HgqTNmVGM/sEGAxXjLj5SofnuqtHR/587v3nyz6sCyUNzNISvVd6WYor7O7l/h06cfRIARYIjUWaB9/x7vGr+qOYb2lavWZ4EO9I5N35vf9MqkTh4b4IaB86dd+yvDHOeszL/PXONZmddBWdV6uiyvz3xMW9YKS9Lz9Js/NnzeLq2wuiu1pFrM6xDzBv9ekeTB6ytZT4XgzMSnt/Yd1xdo9z2K9hfFt7zlZ8Ni/luvYqYCbHmbq27uH5+PmU2Lav0eYPcAUV3XXxAfe0ND/NwD7G/zGu319f0t9BvPfbB+2m7zpxZdr77nT2+em71DWIAt/j5o+XgnvwJs/rGxuAfY9HMV+AfPMJeb1ba19gEDgFBwYG0sdHXdD6wKsN6B37rzTq2PV428FLRhz6r9ftjoXqX79976avcvAowAQwQ+B1g/m47ZdLuqZtTSHKem1fMeIGfso7McyOczStP/l9qgZoFev/dAZZiX6D0vc9RjIxasHfGw60Wjh50CnDjTVX6c2gecNs9iD436rHWtXzC0UZTXTrS33ujzmFa+07jK1Da4yYqMwyydswd5XTv7i+JT3uweYNe7rrHQtsNcXWNcDebj84nSb7Vnte98yHYtqrV7gF1zPutngTbUszIfe0NDzGaBtvvnVnvnwey3kEltLdpuOorefO4l9QOz750z4SnANn/IC0SALWZmtp262e8eLO+915VUb0j23ba2PmAAEDoOPHXGjNznn6+WsdAzbr1Vs991brZHRRWPG6c3Xn0+zJ9cFv1zbfJnTYDz69dHgBFgCHsBhmpk0/5DNcZ85xTOUW3nHKrJo1jCxQ3lR8ICmP2lAFcEgHCdLiv6rrsfb9Ro7LjxOQMHVn0stAiwwX43u1HHPCu6u26dIAul3R1Ho395MCpKsd/onytoAtzskSl3/RoBRoABAQYPWw8U1xTzujg7dF94ueYOYQsXFwGGMMJ0+isAgPByYPlZLQ7c74473rrzzsU+DrzdjWESLMV+b/nnY/V/pox/VgX43voiwEfjmqb84hcIMAIMCDB42H7og0iFiwsAAAC17MAPP/BA7vPP9+nTpyoOLBu+cnf0vvvv9+0B3mtqv7fd5Or+dfb9KtNfNXvkTKfEBb/8ZdB1QIARYECAI5NdJaWRChcXAAAAatmB6//7f4hz5gwcmJaWVpVO4HvvvnvKXb/eERv7TlxTlUPxzxgobdrEl6NxTYX3GzceUb++7CToCiDACDAgwJHJvqMfRSpcXAAAAKiTfmBR38ZNmlRxV7ITMdiH/vM/g6Dq9yEjwAgwIMCRyXtlxyMVLi4AAADUiQNX1wOB6xAEGAEGBDgyOfTJyUiFiwsAAACAACPAgACDhyMnPotUuLgAAAAACDACDAgweCg9fTZS4eICAAAAIMAIMCDA4OGT8vORChcXAAAAAAFGgAEBBg8nz12MVLi4AAAAAAgwAgwIMHg4c/HLSIWLCwAAAIAAI8CAAIOHc19eiVS4uAAAAAAIMAIMCDB4+OLqN5EKFxcAAAAAAUaAAQEGD1f+ci1S4eICAAAAIMAIMCDA4OGba3+NVLi4AAAAAAgwAgwIMCDAAAAAAIAAI8BQAwIcwYoFAAAAABB5IMAIMCDAAAAAAAAIMAKMAAMCDAAAAAAQSnz3ww9lZ85uP3z0jf0H/7T73ZVFe5a8tXPepm0F67dMfm3D2NWvj3z5taGLVg0xAwFGgAEBBgAAAAAID774+pu9pR/vKDm29f0SKwGeveEtYeGbRcu37X5l177X9x7Y9N7htw99gAAjwIAAAwAAAACEB9//7W/vf3wCAUaAAQEGAAAAAIhwyi99WVMCXO4S4FJFgD9FgBFgQIABAAAAAOqS0tPlCDACDAgwAAAAAEDk88HJzxBgBBgQYAAAAAAABBgBRoABAQYAAAAAuAEEOMqZlzZv00CAEWBAgAEAAAAAIlaA9x79cPXOvXM30gOMAAMCDAAAAAAQ0QL8Sfnna/e8iwAjwIAAhwOfrEjutKKM8wAAAAAACDACDBEiwDWneZXds5R/+NF7nCQv+zTIPfu+pdutMHwHAgwAAAAACDAgwAhwXQrwruEPd134iXs5b1e1HVS/xinDgTowAgwAAAAAgQlwVADZcuDwhv2HBAQYAYYQEuCyZV3VztLfuIz004WdNGl0a6q7W/U3D499y1cylWVlK5Pu3B1jnbvyVVzZs3NXxpXunttlym4X5jmPqB5C+Tl2eCd9167ZQQ0N1F56muBukWFvJiXVGpqdEP4bAAAAAECAbXPs1GfbDn1ADzACDKHaA7xj7G9UTTUuKF6qGqDYsrLGRICt9qzYo2Knsivvd9/Kc0qmR4z1nundeasJsCafsjdfFTdvoGraOt+22ptrQ5/Gmp4ZAAAAALiBBVh+lp0+c+bCJRXVeK9+883ZS1+cOndekJUIMAIMISnAuptm3Y7q0kVxVK+uUVdhzRUDEWCX6xr3o7NulwZb9dzqldVTQNc1HYgAe98Y/BtDE9S97fA5itpY3xPC/wEAAAAAN7YAa2x699D6fQdUAf7swsWdJcde3/vuhv3vv3mgWGAINAIMISbA+o5Q3VtO03P3mlZJgC17gL/xddSaEGCTbX2L+RVg7xMCAAAAADe2ADMJFgIMYSvA7pfKiF/v6aPcN9aaDYF2q6BnK91K//cAS2Ftje4uYq8h0DYCrOm070GNZvuoqwKG2bB892YzBNp4QgAAAAAAAUaAEWAICwHWjwR234urzCOVN1anjqKjutmejPNCeabO0m+l7iowS/TMX/UbfRe09yRYRgH2rvk3pgf1KmbSBNdIb9+9WU6CZXZCAAAAAAABRoARYAh1AQ4QuxHLdUT1PqaosnsLwRMCAAAAAKEhwCu2795f+rGweudeBBgBhtAS4Ht000HVEJEnwEx/BQAAAIAAWwmwsGTrzpc2b9NAgBFgCKseYAAAAAAACEyAC9ZvmfzahrGrX5+94S2BHmAEGBBgAAAAAIBwpfR0OQKMAAMCDAAAAAAQ+ZRf+hIBRoABAQYAAAAAiHx++NvfEGAEGBBgAAAAAIAbgi+//gYBRoABAQYAAAAAuCH47ocfys6c3X74qJUAj3z5taGLVg0xAwFGgAEBBgAAAAC4IUCAEWBAgAEAAAAAEGAEGAEGBBgAAAAAAAFGghBgBJjfIAAAAAAACDAgwDeEAJ+5+AUAAAAAAIQLCDACDMELcAUhhBBCCCEkfIIAI8CAABNCCCGEEIIAI8AIMCDAhBBCCCGEIMBIEAKMAPMbhBBCCCGEEAQYEGAEmBBCCCGEEIIAAwKMABNCCCGEEEIQYECAEWBCCCGEEEIIAowAAwJMCCGEEEIIQYARYECACSGEEEIIIQgwAgwIMCGEEEIIIQgwAowAAwJMCCGEEELIjSjAFy9+JZSLAB8/JxwrPX24+AQCjAADAkwIIYREcq7o8s1fvpWfX126wGmpbM7ZhvNDEGBAgBHggHL16tVdzpSUlPCbixBCCKl29f3u+nXFe792oTmw/OQUBXICr3399XfXvpGF45988h/PLfIFASYIMCDACLCfLFu2LNGRXa9JdlSTUVHx06PS1isLTUZFx2U7MrPlXRFjfpERQgghQefkiROqv5WdPLf3WPmOwyeFTe+dEOTlZ+cuigOfO/c5J8rcJb68dO36deHKN99evPy1ivKHg4vner+8o/6I1/UgwAQBBgQYAbZMYWFhdGzXqIydUWMrLOldLG6cl5eHBhNCCCFB5ODBg+K3xZ+ce/PgaY3X934q9isLS7Z/OGdjyZ92HhMBvlB+mtNlUN9Tp06J654+/+WBD88WlXwmZ2zTeydVZM3ZC1/uLf20wbzdd07fo4IAEwQYEGAE2DzitFFJS+3UV0/OqXrRMfw6I4QQQiqV0tJSMdsdh0+K8aqs/vMnIr2yoBYQDR79yiHhxdV7pST9wFpEZcvKDoviqt77+jsnBPXPByt3fDx701GVDz7+TCT5kVeO3LG8VECACQIMCDACbJJly5ZVwn6dODKz+XVGCCGEVOJLsHNgs9jvip0fC+K9KuPXfjBg5ftfX7505dzJ2BF/uq3XeuGWjFdajn7tQvnpar4f+PON3fttPBvcuzVxRK8cntBq3jsW731YVnay/LzqvWK8e0s/Vwc/f3ftG+HwyXPD1hzs/dK+HjO2//lg2bkzp2/ddF640QW4Mhe0vHD4o9bnPzSas6lbzqbyIDeWT1eHboXnEWBAgBHgitOnT0c1yjKx3NwrynBoFcNbSUt37doVdv8LSEvVab1kge9hhBBCajliv8dPfz5nY8nsLcdUspa///uxO27quzWqx8Z6fVb9svdKWfCQvODVt981mRdarKZZu0bTD2kr9k9v16jZ3P21JsBKBXSHM7ysAQFW53Nev+fYsh0fzd50tKjkM1l54MOziS9uf3Tw+r1HFGcQMY5qv0K4o+vCI0fLTp06dcu2r0wF+OzrQxs2a6fS/fU6NWTXyTn3ar+hr34e8CY1cfLFLevQfgM02yoJsPoBG76mLgZVIMAIMISWADsysxXX9Vbfek2yJaouFhYWynJMXFetlzg6tmsIfrGwkdtly5ZFR0dH6SIvZSXfxgghhNROrly58vXlSxveKRv1p4MvvlEyYOX79+ftiOq3SUgueHtH2bkpRad/OvKAcPOId4SbcnZE9Xw9PX/r9SuXjZ3AivMM7d5P055Dk5pFuAB/dfGcWG7+GyXC2HUlfz5YJitPn/8yKmN9lGNr9op3K5x3CP+sz/p/6r0xquPKIYve+svli+LAvgIs9qs7V4cmVXuPd1B/G6lzAX5nZp31jla/J1tH6eWeeRgBBgT4RhdgZcJn7w7e6IZtTOe4Er2MTewaFT+9oKAgdH4Zip/HxsYa5FarofhwTExMlEVkQ2bzIoQQUhvfgC9dEJWdvvU9Ud+E2UX/MvCNqEFv/ixv7y0TDz48dadyr++PXz+39oOo/OP15n1069TDsv6fhu/477zXv/vLVeOdwE7nefX1oZMOOF8emNt9+lyPBTn7hxsqSqxzKvdKZb1qRHo10pY9K0XJfHYSkIP5bKju0/nz1enW+7QWYDHbK1euLHjz8At/OjRszcEHx2+vP3j9qFd2tp6x7X+O3R814nDB2+LDf93xbslPBhf9S+7uqEGbHx25VgRYNvQR4EOTLFvkU23nSVZPmpzq/frK+33X4twaz4Cycu6kfu0aeq6O8tJ1ZZ0Xt5HBYGvk5Ht3jTo9c83MDo+2Sn3Uq8v0/Joc75UH52k+KQqtXzbqtH1J1Wytjqv0TqsrUx/VBNizslKVsRtmjwAjwHBDCHBJSYnx7t+09aKU9sIZItIo1TCorz7ivcuWLatXr54sy0+1Q1vdSprgcDi0YjgwIYSQmo5IrKjsC2v2NpyyLWrg2n8Z+fatk/fcPvv9f3rpVNrWs99/dVHI3XT4J8u/+Pmqi4Jo8P+ccvDBcRu/u37dVID3u81q//Shrx7QLEhRIE2MG+ls1rXSxHVNVorOucYG+wqYrYOZbKg5WDNXHZQ+WPNuSQsBvnhOBHjUmn2dF+27M3ej+O0/j9sj/I9pZf9j3pmGKz8V17148qOGs3b/dNant047Ilb869z1sonJ+Gfz/lKzk+assNaWhs28C/h91/TcNjM7iu8QaHnXPb5dzqdHhmvu5Bt6Vp1uOeGg2yrdb3lMUlvp2VDceHi3HPXyKcvGkcb2JTUBNjmuYt2ulV478SkZUGXM6oYAI8BwQwmwOKHxFt8mo0Ln64KoqUisyGqsM4mJiQUFBeogZ1F3VW6jo6Pz8vLkpab08lJ9S42or6niSkm1c1j2zDczQgghNZqTJ0784/trvRZvF/v92Qtvqvb785Wn/tfrl7Z+cl7c+NqF8qfXHrtt6w+/2PKtcOern/90/odNZ2+TrcwF2GVNzkG8mgV5DXl193bqlSkgAZYN9eOrffoMdf3Jrn5LV3mzDXWdkGdt9mktwOKx177+uufCov89rPAnwzfdOnF3vVnFdyw9edurX/zn2gvy7vGyY79f+v5PX7vyb2u//Pnyz342t/S3E96UTcScjfuy8nnTk+Z7firMmhPgu3YrDUOgtdOoP581efJ1fadGH/Ys66+O1mOsM9iZh8sLhzul1PQ62pbU9QAbj6u/OVm/0mPslauMaLzLnBFgBBgQYE2AQ6RH1OCx+ogSq29ZPZFYJFnr+7WZ8kq2VR04pAZ1E0IIibzs27dPVHbsun1R/V+9dcL2ejPf+9eXP7pt/cUndn11/cplYc+hI/+28dK/7/uHws6//mLLV/+06MMxG96r+PG70tJSMwFWevO69xuqdPppiusleO6OTf3KQHzMW7EamQuwWSek6YZVFuAPy8oqfvhr4szNUQNfv2X8dtV+/63w4r9s/nZZ2SV59z9f+eiWoh/rb7su/J+Nl3+6/GTCwl2yyalTp0wE2FcpTU9aXQqwqy9X6a3VTXVWgyc/EAHWj0PWDTxWfdJlm+p+nP7pe3XtStoIsK4L2nylrjc4kMogwIAAI8C7otLWewlw72Kxyrr9lqB5qeq6y5YtUye4UnuDNQ22sdbExER1W78dvOqx7D2ZEEIIqWJ27Nhx8mTZ+ctXbx20+uZJO2+f/f6dq4/fvPHy6EOfX7tQ/uXJTzLfePe2/RXR+35UEQf+t5fe/ezcxa8uXbASYHU2LK8+Xi87su3MtOsWNut4DMTBrHosfZ3QfP/mAlxUtP0vly+u3P1BVNaa2/L/fMf84l+8dqr+218LBw8eTHzzo//9bsWv9v9DRRz4n5d+tGzPB99d++ZYia+GWXVoB3bSAhfgynW5+0yC5bo3uFI3YFfh5PsOgfbTA+wlz90KD7vHFTvLKGvM5tOyKWnfA2zfLay/gdl/ZRgCDQjwDS/Aon8mz0BqlFWHTznSxjZbDV3W7vuVYtrIZ30KCwvlXXWSZ5F5vx28yo3QTlvm+xkhhJCay7p16+TnnI0lUQPXigD/n+Uf/a/XL43fefTvX3y+59CR324s1+xX+Omq09O3vqd8pT940I8Cea0xvQfYY32eW0A1eVafomR1D7CybDoK199tqNqGPg5m3rFprVjHP/lk9+7dsvD7ia9Hjd2uCfCv9/4g9nvfn7/+1fsVKr/e/+Nt2643Xrq34oe/ylYmPcDms0Bb3ANcJQG2PLemVuxzr69SJfM7pWvk5JtMguUjwF6zSb0zUz8sebhXmZx55oZpU9JGgHV1U+ZwtrkHOKDKMAkWIMDMAl1RkejINnkIcJNRdTIqWIy3njNWBi61kk+sKK74rekUVuoe9DYrwixr7Md1q55MJzAhhJCay5YtW/bt2ycLw1btEge+derhWxecbLzsgw8OHRDSlu+Ofv1q9MbvBFnff9nb33918UL5aWP3rx8B1k9orCvjnKhJeezt9Ll6F3JNYvy65SzQnlmjA3Mwkw19hlU3snwwj6WcrF+//qsvL50+/+Wvc9f/87g9v1j00R1rLrbZeKLii5Oj9p2qt7nirre/F36+8bt75uw/crTs2vXrJn840DmwNlTYMzeY4aRVRYD9nFuzbmGtAu4yJtNf1eTJ95oq2UKAdbNApxpGIHu2FR21NEzrknYCrJZUDtpt5rxuJrNA6w/npzI8BgkQYARYiTIKuskoEwfO2BkTm1jLXcHqaGTTfl1NbrUR2qoDZ2dnG1Q2Ojpar7vq/cD247qlvGxl2BUhhBBSvcnPzz954oQsrNpRcs+Q12/K2fHT0aX/Pvq9h8bt/vfJx+8ouHD7xOP35+0Yt3DtZx8dk5IizN9dvx4JLQ/ogbSWAnzq1KnZs2dX/PDXsxe+fHrihqhBm382/uh/FnzSZs6+B2d/VH/R1Ttf+vL2/ONP5W/euXP3VxfPif2aTAEdTvE3Cr3aT77XoOJIjXdHNwKMAMMNK8ASEb+o3sUmDizET3dkZtfOtFhSDRv7lTgcDjFk/Rq1Q1izdNWQfR/jpM6nZX909ZlJfDkjhBBScxGnFQfesWOHLIvZLt3yfnr+1sYjtz00Yqf8TBm/adyizdu2bC5+b5/gtDiTb+sNvScBDl8CF2DJ1q1b58+f/9WXl2R5/Z5jKVO2PjD07X8duOdXQ/Y9OHxHm/GbJy9c+07RW8dKDgvKvFlmiZhTVwMn39k7GskOLJ+uDuY3JyPACDDcgAKsuGWmtQPnXqnX0GH/cGD7iJeK3MY68sRgrfxW6Yh2jm222snp06elgO/m6hOSNNE1nfJKFWP1rmCbSprKMyGEEFK9DjxkyJA5c+YoXcE/fid8ffnShfLTn5/4UPjso2P79u3b4Yyp/d7IEQceNGhQUdH27659IyohMiyie/DgQTHe42XH5OduZ6zsl5C6CgKMAEMoCrDLgQ0zQutJWhr0COHohm3EotX91GuSbXqrbUxMjP3+Hc5YibHaCWxz87C4cWJion09pQJMhUUIIaSmI7o7zplVq1aJ7paWlooMC+Jy+c6IHpvc+ksqKnbu3C0OPHv2bNFgEd1zZ04Lxz/5ZP369VOnTpX16nRZhCDAgAAjwAGlsLCwXkOHJqtGeheLJFd2n8ocy/p7jHNO+d6Ou2zZMsONuyYWHR1tNUmV2vErO7F54pHqyfaHUCeg5tc0IYSQms65c5+vW7dO0935zqgvZb16nzAxzbGSw3KuJkyYIMY73x15KT9tJr4iBAEGBBgBNo8ootIVLMpqqsFJS7VBwqKLebrIeitBVaRa20Paet+hyCK39uOT7aPKbUxMjP1O/BZQa2JzEzIhhBBSvSktLd22ZbNIr/yk17cyf0E4t3v37vXOyEKYT3lFEGAEGAGGuhNgTSljE7tGZez0dWCxWaXDNraryHBUzin9rNGKNgv3tYl15MU2V2aQFjFWZ66Kin5SeatRVvYwY/evCKfp4Gd1W9mVcqwmo+yncZaS4q72jSooKPA7wlkK1MnznwghhBBCCAKMACPAUDcCrBmjYrkGBxbp9V3py31tPMVkE02Po5+MiesqWpuYmChOK5IsArzLHf3RDQ9nshdgedcwQbSp1fuV5MLCQr+3ChNCCCGEEIIAI8AQaQJcoT5r12ZmLF831s0dbV5GtFZXrF50TFT8dEWPhbT19ZpkyxGzhykdyF4CnLHTvmM2Nja2Xr16fh/X5PdOY3nXr0gTQgghhBCCACPAEK4CvMs7hlt5lbHQVsbbuzg6tmteXl52dnZMXNeAVLlRluEZS763GSvjpX3V2tmBLMJsaq1itg6H/2c1SRmraaL1ksxvakIIIYQQggAjwBCBAiz6qriluKvaDRs/3TVW+eGu6pN7Y2NjrR4RLPardagqD/I13DMs+7yvjbJD/UpfufXF7N5jzZ99myDeKwa+bNky+2HSFc5B3X5v8U1MTGQeLEIIIYQQggAjwBCBAmzXwevu5vUa22xxX65yw7BeXN2DlsWivbZ6uKth57HNE5U6GBzbYhrqmEQTARb7VeegtnkMkmbpfiVZvTOZX9aEEEIIIQQBRoAhcgRYjLGkpMQoqJVBxFXvjQaDVdcrczgbJscyE9rouGyvYr94yLA3ZWZp5+TSJg7v9l6/o5evXr3qV5ID6UkmhBBCCCEEAUaAIZwEWH3eb72YRK87ctWB0BZjno2krc/OzhaLVp4e7HCYjlU2TOZsGAKtCa3Rw72L1Wto9/gizWn9ym0gZQLpJSaEEEIIIQQBRoAhnAS4XpNs4zRUznHLhYWF6rxW0Q3b+J/XKueU67Zh72cjRcd2NRFgOZb3JFiaahp7gL1HSose2/iq9hjhxMREwwxeQQiw1XOJCSGEEEIIQYARYAhLAVaeb+Q711Tv4pi4rqJ/DocjJjFLMVurpxn5HR3tVFZlZiz9JFjq04D1Q6DjlGm0TB62ZOgoTs2yaYhEXQ7k9t1q6SUmhBBCCCEEAUaAIWwEONGRHfStv/YzY+nHNhunhlZnmTY8BkmU2KDiPk9CMr31V5NebdJmBJgQQgghhCDAgAAjwMYE9Dgi25HPYomJqQ7X3FSOPOVeYvX5SaKvGTvVsc3GfmaxX5tHHLmVODaxq/GW4LT1yqDoer+2l1U5HAJMCCGEEEIQYECAEWCvlJSUxMR19a+jenf1vn1XNvfd7dWrV3c5o96LKwuqzSpzQYsbi3UbOoQNQ6xzTqmDopUJunxHX7tnltYnMdHTOawe2r7hgUxwhQATQgghhJCaEGDfAggwAgy19xxgZepm+7t8c05FJS2NiU0UsbSa5znwKI9K0h+uySgRXWUuLmfXcXRcthQQ+1VFut59sYa61YtJtJdVBJgQQgghhISyAAvT5iw3gAAjwFBLAmx4eK+4qNpbG5OYJQuJjmz9Hba+45m1t4I7nGmPrhZxYGUmarXr2In+scN6h0eACSGEEEJIWAiwbwF6gBFgqD0BTkz16tTVy6RvfGe08mub9oeLin5Sm8DZNIWFhfY7FAPXC62U91sl/ZBpBJgQQgghhNSmANMDjABDXQqwYa4p+97RqgtwbGqWYe5o+yP6FVGpgH4PzAJNCCGEEEJCWYB9Czh7gD9FgBFgqA0BVh72q7vdt6YFuKSkxOs5wLlXqi7A+j5kBJgQQgghhISyAFv0ACPACDDUigArzxYKWGgLCwu9BDhtfVSjrOjYrompDnVDv7fgKgqtfw5wxk77IdB+79c1HNF+CHeA+5RkZ2fzy5oQQgghhFS7APsWoAcYAYZaFGB9f6w/ATZOYaUnaany4CLRafFb2WejrNjmiQUFBeozkOSnLKtPSKpUH7JfWTU8+LdaencN9xUTQgghhBBSXQJMDzACDHUmwMYByU1GqQ/vtVTH1Cy7Byb1Lvbq3ZU962/3zTlVr6EjOzvbS4CTlmpdx2LI6gBmfR3s61PhM+Y5kB5gv5NgGe4rJoQQQgghpBoF+MLFr4TyM18cP35OoAcYAYZaEmBjf6y/hxJFNcoyPMRIeUaReK+NFRu4r43hOcCimspzgNPWKzVRiZ8e3bCNqKz4tvzMc8YgxvomaOulhtUit4ZeZUIIIYQQQhBgBBjCXoCN9/Q+3NWmsDL+Wd+jm7EzJiZGRDE65klL3ZXyBj3W26/zScKW/py01FM32U/GTlVcRXejfvGQ6zHFqYoea3cRByK30mT7u44rAptJixBCCCGEEAQYAYZwEmCD04pVWpUU7awXn2cy5lkcNW29lf2KoIptmmxo5cO278YmKn5eUFBgGFmtSW8g4hpImUAeFEwIIYQQQggCjABDuAmw3jAd5t2nV69ejYnr6kdWfWkySjascM6oHEj5eknTpaQyHNqiQHScMjOzUhP9Vk2y1aNUOGe30patwjOQCCGEEEIIAowAw40owA6HQy+Tpj2fu3btMrdftfvXxmndA6rt5o726cg1dvB6G7Uya5d+ni1d969i6TEx1SK3CDAhhBBCCEGAEWCINAGOdXj3ADdPFJ8sLCwU6ZWfsqyob9JSq3t0o6Ojs51Rn3Vk6LzVBlQrj0fyK8Dx00VuK3zn5dKTtl4UXa/HcsTTp0+LM1c4Z67y+/BeOYTfaaKlDA8BJoQQQgghCDACDBEuwK7bbrXZmP2OeZYyjbKiYxX7VaZ31j9Rydlhu8sZ43qL3l21SuKxXgLsfbtv1C8e0r8UU9WcVtxYVWibiCr7nQErkDKEEEIIIYQgwAgwhJkAK9Ya+D294sONsrxGIPv6sE+/rmUHskUPsLG7WORZP02093OG1Qcgqbf+RkdH+22vSLLfBwsHUoYQQgghhBAEGAGGcBPghwN7im/OKTHP2MSuYoaFhYX1Gjosb9MNxKIt1sc0fFK5W9hbmJXnDJsqd+4VUWW1FfXq1VOfFWzf2AAlOZAyhBBCCCGEIMAIMISZAJeUlKi3zsamZsUkZikdvE1G6RHXlbcKCgr0naJikrJG1iv+rC+vd1cRXV9JlvL6XmLfUdYGG8/YKdUzTPts6P6tcPYAi7X67bYN8CZhnoFECCGEEEIQYAQYIlCAreL3Sbmmm3gJcMbO2OaJyrRYqhs3ykp0ZCtTWOkfGtxklCK3Vp3JvYvVPl6TeaF13b8VzkHLgVhrIDcJ5+XlcQMwIYQQQghBgBFguIEEODhnNvTuqhZd4oxaRp2xWSRT7XOOTex69erV7GF5Ss+zoWe4UZY2pFl59JHhRuJGWVp/r+xBHQJtXz0pH8jY5piYGG4AJoQQQgghCDACDAiwXYyzN8dPD7wbWSRWfeqSGtmVrNHeUqbF0u+5d7Fed8WlRYD99gCrj2uyLyOmHciThAkhhBBCCEGAEWC4oQVYmb/K7LFGgUTs1+FwaNKrGbWorzKI2nv8c3TDNlpJpds5KkrpIo6KshdskWS/XbtiyOojhQkhhBBCCEGAEWBAgO0kNjZReSBwvZhE5abf6CcD31adn9nQi6sYtc+U0eLD+gHV2uDnmJgYqYCNnPvtIg5QkgkhhBBCCEGAEWC40QW46v4sn0N9B6zSu6ufMcs5ibQ2Q5X4aowz6svs7GyHw2G6Z9WT/Y7Hlj0z/3Mo5uC8R1ulKuRsKudsEEIIIQQBBgQYAY6MKHNER0XpFVeZHEtV37T10bFd9X2/or76DlvxW3lptdvY2Fi/R4+OjrbpQ7bPOzM7uCRNR7fC89V4csoLh7v3PO+d2rken2/q1sqkXU6Gr/kcASaEEEIIQYARYECAg43aqSufRm22qtjmibGOPEdmtqipMhuW8z5hWa7njOGZRrLG9wlGasdyII8IDmSOaDs9s2DCwVAQ4MMTXCpbGXG1E+Bqbh0CTAghhBAEGAFGgOHGEmC9A4uO6ueCrnD2+qrr5aev/VY4R0EbJFbKSEm/kz+rd/8G8/hfL0XUeanOimtDEWtcgL22MnR313gDEWBCCCGEIMCAACPAEezA6lhoNbHuaGvEcg3zResN2fcmYdPC9uYcYDwqaOZmap9t5AmwM+fX5HSopeHQCDAhhBBCEGBAgBHgyI4yp7ROejUZFlM17f5VoxYQ49VuErYqqT+Q7Dmou389Eli9t/uGgwB7O3CNqikCTAghhBAEGBBgBPhGiKjsLnfUjlz1kb9WI5bVxwInJiZKAX1vsFXUMdLBTv6sM8CZhwPcxmS6LM3rPMKpjKbWl1S6kX09UL/GeCuyR1l1Nw9XcpouPwKsH+ltLGByUIO+BlZ5WwHW90L7tsj+6mh/EQiRLnpCCCGEIMAIMAIMN7wAm0a0VusQNjzcSJ0fS33Xr/2qY6SlvN8x0gHYbAA9q3bTZTk3t550yo8A285QVYMCrNNIz65sp87y2Gbgk4eZCrDd5u6bsT1ljNOGec4JvcqEEEIIQYARYECAQ9+BNdGVBcNNwoEIcElJiTrbVtCPPjKTPev5ma2my3KtNxNgQ7+lPwF2G6O+X1Q7UE0Mga4w6WXVN0FXf52Eu3cVeOXtG64dRX9oV0kzP/c+Ct2/hBBCCEGAEWBAgMMgp0+fdjgcBukVGc7Ly9O6iGXZdNuCgoIAx0j7j1VXpHfXov10WQEJp/0QaK+ivuJXQwKsa5dTRLWXvn3LxrcCr7yxpPXYZp0DG3u/9UfxHmpOCCGEEIIAI8CAAIeNBhcWFuY5ox8OrTlwdHS06K68JSXlpyyrD1KqHvv1q8EuQwvsjlN7MauEABu9tLYEWDuKbf3VKgVeeUNJH8u129asCT4nhxBCCCEEAUaAAQEO8+iHSft2FFdp5LNtDPfcKpIWYJdj9QmwT89nrQyBtr3719g3HnjlLQXY5Cz5NNy3uzioU0EIIYQQggAjwIAAh3jUYdJ6DY6Ojs7Lywt61quA4+ny9Z7lOMIE2Hu4sr95rapHgG1PpsmYZ0N5HqpECCGEEAQYEGAEOLJTUlKijoKutSPq+oHnvVOHAlyjQ6ANj0Gq1L21gVe+Sj3AFd7jz5n+ihBCCCEIMCDACDCpOQEWE7O9bbUmBNhnMqqaEOCqjS4OvPJVuQfY+MeI1ID+EkEIIYQQggAjwIAAE+8cnpAzvJv5SFqDHOpemnd4BtCDGrgAm4hrtQuw/nlFZvNLmZ4W5w79zALte9AqzALtuz6gByATQgghhCDACDAgwMQowK1MfU+33vSxtyajc6smwHpBNX8Sr7U0Vl6ATWb5MldNfSusH27kt/L2zwHWVpo8B9hU15n+ihBCCCEIMHAKEGBSFQG2QC+HZgNxUytxD629B/p7ELHp0f10hPqf1dnMJP1t5SPA/ipv1ldsezJtzx5PPyKEEEIIAgwIMAJMqlmDzS3L0BXpXbL6BNjcbH3KV0GA/XSimguqqdb6rbzl3cImJ9O6RYE9ipkQQgghBAFGgAEBJqGYsH6iTy1XnqcfEUIIIQQBBgQYASYI8A1QeU9fMdNfEUIIIQQBBgQYASYIcORWvlIPKCaEEEIIQYARYECACQIcppU3fTgwIYQQQggCjAADAkxwyMiqvNXDgQkhhBBCEGAEGBBgQgghhBBCCAKMAAMCTAghhBBCCKmyAF+4Ipw5c+n48c8FRYBLTiDACDAgwIQQQgghhCDAgAAjwIQQQgghhBAEGBBgBJgQQgghhBCCAAMCjAATQgghhBBCEGAEGBBgQgghhBBCCAKMAEO4C3DZqTMAAAAAAFBZEGAEGOgBJoQQQgghhCDACDAgwIQQQgghhBAEGAEGBJgQQgghhBAEGAFGgAEBJoQQQgghBAFGgBFgBBgBJoQQQgghBAEGBBgBJoQQQgghhCDAgAAjwIQQQgghhBAEGBBgBJgQQgghhBCCACPAgAATQgghhBBCEGAEGBBgQgghhBBCCAKMAAMCTAgh5P+z9ybgchV1+n/U33+cGQaYcRzHWX7OjKOAiLLE5aeC27AzzrDILjpKCCjRqEBAtolKAoIMSwQESWCULaBCQtgSEpYkkJB9JfuekPVmD1ug/+/NmxSV092nTy/33u6+n/d5n35O16mqU1V97u3z6W+dOgghhABgABgAxgAwQgghhBBCADAADABjABghhBBCCCEAGAgCgAFghBBCCCGEEACMAWAAGCGEEEIIIQQAYwAYAEYIIYQQQggBwJghAIARQgghhBBCADAAjAFghBBCCCGEEAAMAGMAGCGEEEIIIQQAA8AYAEYIIYQQQggABoABYNxRAPzQC/ObxvSRHnV4sxFCCCGEAGAAGNc1ADfHv5J0lKKP9Kh9mo0QQgghBAADwLjeAXjT1lcb2llQij7So3ZoNkIIIYQQAAwA43oH4OsG3NPQzoJS9JEetUOzEUIIIYQAYAAY1zsAX3PnbxvaWVCKPtKjdmg2QgghhBAADADjegfgPrff1dDOglL0kR61Q7MRQgghhABgABjXOwD/7Lb+De0sKEUf6VE7NBshhBBCCAAGgHG9A/B/3/KbhnYWlKKP9Kgdmo0QQgghBAADwLjeAfjym3+dzcNffqfowt+XyLn++ft+nbnmHb5v0hpXGzayOQtKldmM8C9q0i03l9mLcjvbnn2Mu5bpc2zDTtXuU6voZCv/I8jSbIQQQgghABgAxvUOwD+54dYMfnpmLjfziZ1v+720PtcyoV9a5vXP3XNrtprzfM+ENbkFD2bOnwWlsh76iQW56NClulmFO6SPeQetcQfL6VTNPrUnFsyct2DNSwPb+iPI0myEEEIIIQAYAMb1DsC9rv9Vaf92vGhh4DspQ2fmWp797e7p72y37p05r8V/5q3ZvLdl/MCxTszNfPxXA+flwnZUXGWt+HBpzoJSmfp4/QPPtuxq7TspcfPyGtwy/tlEL3Z2P7db3/M7lRzPdulj/kF3S9m9kTt6d2NyZAp1pGXBzJa4OZn6VaNPzQ0bOjM0dbcPJW5kocQd2zoP4w/0xiqajRBCCCEEAAPAuN4B+IJrb8rge59Zl8utG39DIv3u8atz8+9Pbj85Q/XOfbI1ccj8naVa9+ZWj7l3Z2K8/U6GHcXjOjM4C0plqirtuOpRyzN3754t0aOdg9M6UDOG3BQltqYU7Wx79jHvoDeMaYmbvXsjlRJ1Oa0ju/pbTqdq1qMdzbh/btyGnY18p3dFE3e0dsj80KmdG5U2GyGEEEIIAAaAcb0D8A+vuSGrh8wLf7zDB+xIGfDS6ty8e69JbD8xPWQI24VzRtv5G9mcBaUyVaXjrnvpl6Vzqkd57Uxp/G4p9wxflzca7dbH1oPurtDfQo385ZiW1WPuUcrOjZIdKadTNelRaGHrmTnnibw2FPqkCiQ+MX3HONw7J5y0FTYbIYQQQggABoBxvQPwD/peX7b7j12da3m6vzfm3fNOorcfnxYS+/726XUpOaPt/I1szoJSmTuVdtx75oRa89oZN37d2GuT1e72fy85Gu3Wx/igg+ftbEl6I1v7En+CqR0pp1O16JEaFhfKP3l0HuaPdn6iO/j4tMQHV36zEUIIIYQAYAAY1zsAf+/n15b2I3Nzs4fEKb+dnZv2yLXfu2PMqtzc3zrxne0h03Lrht3hnLu2C+eMtvM3sjkLSmWr6u5ha3d0qkCKerFrV8F2pjS+YHc6pI+7H/Tq0cLHQp/Ibt1fN+yRMavWjrk6S0fK6VQNenTHroYVOyFbP7X8D6VAooZi2uy5q0bfXWWzEUIIIYQAYAAY1zsAn9v7mgweMjWXm/pw/Hbd0NvijWv6jBJQzbl7V+aVowbsTFw7po8SbxuzcufeItv5G9mcBaUyVnXuw3Nyu7oj3z0rV6TxO/IU7tGAoWt3DdTOxNYUj0YH9zF50NaG5WYNCdvJRu78THell+xIOZ2qvkdqW3RC7vjs1JfWNkTnnntXNDHvM62u2QghhBBCADAAjOsdgM+5sm82D57yTtF1T922M/2qkTvnoa4c+eKU3Jy7duac89TOdKf0Pee2F1emb7+T2P+pNVHBUs6CUpn72PecP7wz0Tm35sWrrkx2M7dmzpQ1uSl/KN6jdwYqjNI7Q9daMJm/vfqYf9DWFH1w/Qs3cmeGdz7rUh0p44Orukc6VuJAatu6p/7Q2p4ps3L5517BxLuK1lZJsxFCCCGEAGAAGNc7AB///V4N7SwoRR87S4+ufXZFbma/LImJDNMGVt9shBBCCCEAGADGADBwSB/rF4AveHpNLrdm0LW9AGCEEEIItT8Ar1rVIi9dunruvOVyKwBPmgcAA8AYAAaAAeB6bzZCCCGEEAAMAGMAGJSijwAwQgghhBAADABjABg4BIABYIQQQggBwAAwAIzbB4BP7HlJQzsLStFHetQOzUYIIYQQAoABYFzvAPz1H/2koZ0FpegjPWqHZiOEEEIIAcAAMK53AD7lx5c1tLOgFH2kR+3QbIQQQgghABgAxvUOwE2gkihFH+lROzQbIYQQQggABoBxXQNw05g+0qMObzZCCCGEEAAMAOP6BWCEEEIIIYQQAAwAYwAYIYQQQgghBAADwBgARgghhBBCCAHAADAGgBFCCCGEEEIAMACMAWCEEEIIIYQAYAAYAMYAMEIIIYQQQgAwAAwAYwAYIYQQQgghABgDwABwjTVjxpT77ut/6aXfv+SS80877ehTTjkSY4wxxrhRrKsXXcPoSkbXM7qqAboQAIwBYAC4gF5//bUHH/zfbt1OvvKKng892H/atBemT3tx4/plmzas2LRh+cb1GGOMMcZ1bV2x6LpFVy+6htGVjK5ndFWjaxtd4eg6B/pCADAGgAHgnXr44Qe+8Y1/H9D/hldWzNXXRsvaJWtXL1qzcuHqVxasfmX+qhX2PIwxxhjjenXr5YquW3T1omsYXcnoekZXNbq20RWOrnN0tQOAIQAYA8CdHYDXrFl15503X331JYsXz9iwbunaVQv1FfLK0jkrlsxetnjWskUvL1v48tKFMzHGGGOM69+6bmm9elk8S1cyup7RVY2ubXSFo+scXe3omkdXPmAYAoAxANxJAXjGjCk33tjnoQf7b9qwfN3qRSuXz9O3hb48lsyfsXje9EVzp8kL505dOAdjjDHGuBE8d6ovYHQlo+sZXdXo2kZXOLrO0dWOrnl05cONwQgAxgBwZwTgdevW6DvgmWcGb2hZtmblghVL5+hLQt8W+uZYMGfKgtmtnj9rMsYYY4xxY9mXMbqe0VWNrm1aMXjpHF3t6JpHVz66/tFVEDCGAGAMAHcuAL7zzpsHPvAbfROsfmXB8sWzlsyfsWjuNKMvX5wYY4wxbhISnjNFVzi6ztHVjq55dOWj6x9dBQFjCADGAHAnAuA//OG+X/zi0k0blq9Z2Uq/i+dPXzhnKuiLMcYY46bEYF3n6GpH1zy68tH1j66CdC0EjyEAGDMEnQKAX3112xlnHLt0ycvrVi9asXTOkvkzoF+MMcYYNz0D65pHVz66/tFVkK6FdEUEkiEAGADGzQ/ADz74v3fdddOGdUtXLp+3dOHM1pnP0C/GGGOMm52Bdc2jKx9d/+gqSNdCuiICyRAADADjJgfgt95667TTjn5l+dy1qxYuXzJ78bzpGel30KBBhx56aJddOnSHwvbUqVN79uzZtWvXxF693nXXXTNmzDjuuOP23ntvpeg1UZCvZIwxxhi3DwPrymf54tm6CtK10BlnHPvmm29CZQgABoBxMwPwhAlj+/TptXH9slUrWsO/rWs+lwLgxYsXH3HEER/+8IdvvfXWUM/tt98e3mrjPe95z9lnnz1+/PiQMmzYMGc76KCDtLdPnz4tLS2tf/ktLYmCwmO+kjHGGGPcHhOh507V9Y+ugnQtpCsiXRdBZQgABoBxMwPwgAG/Gjz43pa1S17Zcffvgjkl6Hfz5s2f+cxnhK/zF6+8pO897/6/X7fPvfjXd9w7zNvaEMo+PXLKp4/t5ZRf3PrwEaf/zNmMysrz1wd8Syl6fWjIC6Fg9+7dlYGvZIwxxp3HS+7+zSvndl99+BHrPvzRdf/y0XX/vOP1wx9VitK1t91asnzkr1ueOmvriM+8OXLv7RP3eGvOn741/c+0vXXUp5SuvR0yPo8+M+ba+5696v7Rtz812f6fR8ZdPmCE0mvAwHOm6PpHV0G6FtIVka6LoDIEAAPAuJkB+PLLe06ZPHrtqkUZ5z+feuqpF1544fip842vBS2OFR4X3GUADqicXxAAxhhj3Hm89Fc3rvnc54W767t+dtMZZ225+NJXf3WbrW2lKH3dP39EeZSzTVvyyojrtw3/2Fsz/zS3/gO5Tf+W29ot92rfnda2UtZ/4O15f6I8ytk+g/Pci+O63/LM8f3GXjRk0R/mb3t88WsjX3nd1rZS/nv48m73TO/Zf9R9T4yuxSzoRboi0nURVIYAYAAYNzMAd+t28orlrc+CX7Zo1qK509K/JEaOHPlXf/VXLRu2fOQL5xejX3NsCA6Lk3WUAMwC4PHjx4fI8CnnXa+9cegYAMYYY9wZvOjxR1YfceS6f/nIhqOOffWW214b+ODWn121+bvnbz67u73pO92UovRt112vPMq5+vAjVKr28edxf9zyyOffnvUnubWfyG3pm9t2Z25Tz9z6k3Lrv7bTLce1pih986XK8/b8/7N12GdUqk3R9+x+I0769eTbJ7SMWLh1ysrXnl245ZGXNz00Y+OdE1vum7pB20oZt/xV7R0waf0P/rjgtBufqzggrOsfXQXpWkhXRLougsoQAAwA42YG4DPOOLZl7ZLVr8xftujlkgB89dVXX3zxxb+49eEYd8W6qmf+4pWBisWxAt046qu9vuO3FW7nz4/5WbWFxnAPMMYY404S+F37iYNb9j9wyyWXiX43nnz6plPP3PrTq7bdcHPsLZdeofRNp52pPMqp/Gs/cVBtZ0S/MuL61x77UG75Hrn13XKb+uZWH5pb86Xchp65Tf+9m9ef25q++suteZRz+R5vjPpgG82Ivva+Z4+87sVLn1z+5OyND09ff91zKy95YtkNo1b9esyagVNbbG0rRel9RryiPCPmbfrp0yv+45bJP7/nuUoB+GVdC+mKSNdFUBkCgAFg3MwAfMopR27asHz1ivlLF768cE6JFZi//vWvP/jgg6ecd30MwC0btvzTP/2T50WLZmVt5E9yFgYrZ58+fcTAMR4HDB4/fvzZZ5996qmncmGEMca4uel33b9+tOXjB7ai74knbzrljK19r9l2/Q3FrL0bjz9JOZVfpdZ9+KO1mg4t+t0+Ys/coj1yG/rmVvy/3CuH5VouzK2/vKi1d8VnWnMq/6I9to/co+bToc/t9/RXrx938WOLfz91Xc9HFvZ4eGG/Ua88PK2lmLVXeZRT+fs8vezkATPOueXZcg+q6x9dBelaSFdEui6CyhAADADj5gfgVa0APLMkAH/1q18dNmyYl7MKViU6Vd73vvedfPLJ2nvxxRd37dq1IOX+9QHfEhuLckXCYRZ0sFLM0oMGDeLyCGOMcbPOfF77yYNbDjhw68+uWn/oF7f84IfbfnFtFm/6Trf1X/qqSgmA137yoOrnQi8Z98fXHv1Qbv4euTU9cws/lFt5Wm5tr0xecUxu0b+0lprb5Y1nP1jDudDX3vfsp65+8Zzfz/vZ00u/dtfLlz+55O7xq7NYOZVfpXo8suCoO6Z3v3lY+QA8c1VmAB7y2OOf+8IX0/3zq/o681nf+k4i5c7+AxKZe11y6YSJkxJH2bx5s4q4uF51UHARAAaAAWBcGwDeuH75zmcglQLgiy666JprrokXf3YE+KCDDhLWPjTkBbHxL259eP7ilUoRAyslAbp660ivXpUzsZKWalb9PXv25AoJY4xxU3r1kUeu+/A+m885r+XgT2/54Y8FtNm9+Xs9RM4qqxpWH3FklS3Z8ofP52a9K7fsP3Jz35dbcUZuVc8yvPyk3Oy/aC07611bH/9srZZ6/r8XPf2F26Z+/Z5ZX759eu9hS24ctSK7lV+lVFY1fLzvi79+eGT5ADxPV0S1AmAxrTMLYhMAXKxIjLhz5sw94qhjikF100vwDwADwAAwrgsAHjRo0OGHH/70yCmJuc2+Bzh+6FF4tK9AVxgc3/QrYPYzgefPn9/S0hLfUWw87tq1K1dIGGOMm8/Lr7xs3b/uI3yVN33z21svvbxcbzrtTBeXVVvlHP74xW+N+vPcjPe0etFRuRXnlu2FX3Hxt8f/yZqhF1U/OIdd8djHb5goH3TzpB8Mnn/lsMXlWqVU1pV8/NKhbQfACU2YOEl0+r3zf1Asg/G12FuxrmjZiStWvOJE1ebAr1JEg2Jj83BnYEL/ZKBhCb81eDuLlF+DZn72oGUvCwBjABgALuBt27Z95CMfyb8NODHPWYgbsFa0rKPE06G115OoRcXCZu0NeAwAY4wxbmKvPfDgVgD+1302HHH0lh9fWJnXf+GLrkS1VdySV+//19zU/9Pq2R/PLf1mhX75n13Ja4/8c5Ujc98To9930fAPXTtOPunel3sMnl+ZVdaV/P3PX7j2vmcbAoAtM/ADAx+M8wQelrRd5yxXE5l4TzjpZGO/tgWx2QPCN9x4s3840LYG09v1HE8GgAFgXO8ALN94441f+cpXCt7EG4i3T58+iZWi40nO+XcRBz805IWzzz6bKdAYY4ybdO2rVnDdMY353M3f61Ghzzl33b77u6rKVsNqXfvqqb1zk/8kN2Xv3IITcgtPqdAqO3kP1fP2mD+rcjWsk/o+vvdPR//lVS/uc8P40x6YVY1Vg+qRj+77VAMBcKISQ2BnuyHWg+CwbZgEnn93dLocPPd0cQeTUz4aABgDwADw1CzfE6eeemq4iTfG4NZn/E6df+utt4ZHJX3kC+ffce+wcKOvp0YHAFb+cDuxcop+tfd973vfsmXLuE7CGGPcZH7lvO7r/nVfecOx/77p22dX4w1fPdxVqc4KWrLuj9/OvfRnuQnvzc08JDfva1V5+v6t9Ux4b8uQb1UzOPtfNOTdvUfLn/vNlK/cNa0aqwZXtXfPxxsagBMR4IIqmaGBFIh3yGOPb9682dshJF7W/cNeOezO/gPCdt3ePg0AA8C4MQBY7tmz51577SXQFQaHqm6//fauXbt+5jOf0S7fAzx//vw+ffr4CcC5HY/51a4TTzzR9wArf7hVWDkvvPBC0e/UqVO5SMIYY9x8XvOFL7RS6z77b/z6aZtOO3PjiSdv+NJXk/7y7s7LsPE/T2wte8LXDcCqs4KWbL3/oNy4P82N/4vcy1/OzTr87clfevOJQ/LcdXcnM7w97jCVzc08tLWqcX+6bfAB1QxOl2/+ocsVI/+yzwtdb5tUvVWPauty3pAGAmDHKgOn+e0JJ52cEv9UHlFi06wOHag1bFdMrYGln3v++cDS9TlQADAAjBsGgOWRI0cKg0W8XXbp0EMPveuuu7xL20r5l3/5l+OOO27vvfcOGbTryiuv9N5Dd8i7lPOss84i9osxxrhZve4j+whZ13f9rCBWbjnkU2+OGVuuWw48eGfxTx7SysAf2beClrxx7wdbI8AT/yE34wvyGw/s+9ayF8v16/d81MVzEz6g2t58+P3VAvClz/3plSM/dO2Yff9nXDX+11++pHpUW5dzGwOARWjhwUgBd0Po0lbliRuA9Tax3HSjL/tsTHU34+3K5JuBPTge3vocKAAYAMaNBMAYY4wxLheAWw7+1Iajj9t40iktB3et5HL5oEM2nnDShqOOVT07AHifClry5h/fnxvz57nxf5eb2jU340uv37tfBS15/Z59c9MPzU05pLWeMX+uOqsZnL26P9zlkmftPa4c+Tc/H/0PfV8s13971QsqG+rp0v3Regbg9McgWQ8MfNB3tBbMoLeCuqZ5YlBY8mrFilfCdmUMHFf13PPPV1MVAAwAYwAYY4wxxpUC8Ef2adn/gA3HHLvp1NMqBOCDu6rshiOOUj2usCIA/pvci3vkxr4vN0UA/G+v31MZAO+nsrnJB7XW8+IeqrOawfnsRYO6XPxM7Hdf8sx7L33uzy9/bo8rnv+L4tZe5XnvZc8pf6KG/S9+vCEAWGx2w403p+CZENczok10TbwIVljDOUTFK1jDOV49K54LzT3AGAAGgAFgjDHGuJ0BeN/1n/7sxuO+JrcceHAll8sHHryz+CGfVm2VAfAb9/9t7oU9ci99KDf5M/Lrv/toJQCsUjuK5176B9X25h+qAuDLB4zocv4TXS4aUTNfMPzb//NkA90DXFJ+TpJvkW1iuZuerlzBGs7xHb/aPuGkkytbSQsABoAxAIwxxhjjGgBwy/6f2HjSKa1ToA86pMIp0DuKtz4JqVIAfv3uv8+N/ovci+/LTf2K/Prv9q0IgPd18dwLe6u2Nwd+oJrBmTR5wl7n/LHLhcNr5m6Dn3txXDMBsKfy1vMTfWp1M7BvftaoxtsZi8driSXWFQOAMQAMAAPAGGOMcft51Qkn7EDWfTf+x/GbvvGtDUcfu+kb39z8vfOzW/l3lPrWhqOOcVWqs4KWbHzg2NzoPVs9+Qu56cdtf/oLbz759TefObsMP/l1lVLZ3MSurmrzoCOrHJ8f3DqsS48n9rz02S4XDK/GXW94qcuPnj7pmieyH7ohALjkUZqJgUPM1nOhs8+CHvLY4zfceHP+NgCMAWAAGADGGGOM29UrLviRqbXlU5/dfM651bjlgANdleqsoCVrB/d4e9hf5kbtmRvzT7kZJ1flFz7QWs9ze6nOKsdn0uQJ+//gkT0veeZzN4//k14jKkBflfryrRP0+o89Bqm2xgVg8V7+PaueGxwTXcFsqLFUAIBXtshLlwQAXgwAA8AYAMYYY4wbz4sef8SzoFuDwKecvvkHP6zMG752vCuRFz43rIKWLBn3xzfu+2Bu5J6tnnJEbta3KvTEL7iS7X98/6JJQ6sfoudeHLfXd36/58Ujjrx90t/3Htnlx09n9z5Xv/C1OyeLfvc6b9Cjz4wp67j1BsDhPtiwMtYDAx90qbAIVpge3DTPAQaAAWAAGAPAGGOMcXPOgl73sQO2/OiCLb0uKdebu5+nshuPP7Hi+c/2hnuPe3v4X+ZG7pUb9de5Wd/JzTmvbM84tbXspC+qko0PHV2rIRID7/+jR/7kh0M/d/O4k+6eKqxtjQYX517tVZ7Tfze96/+81OWHw/6xR9n029YA7JWN4+BtSQAOaxfLJ5x0ctiOWdcHTcSEEQCMAWAAGADGGGOM68WLH7p33Uf2Wf/5w1o+/Vl5yyWXbr2yd3Yrv0ptOOIo1SAAVm0Vt2TZi79743d/lxu7T27MP7d6zvm5eT8uw8qvUuMPUQ1v/v4Dqq2GozRp8oRv/8+TXc4etOfFI758y4T/un/G1+6cLL7956tG/X3vkba2laJ07RUq7/mTZ7qcO+SI/36srJnPtQLgFSteEaMWi8Q6Tusn+oSFmsJ2CgM7DhzK5s92vrP/AOgXAMYAMAAMAGOMMcb1fifwxlNOXf/lr67/zOe29v7Z1r7XZHLvnyn/xuNPFABXfPdv4k7g7YPen5tyeG7cAbkxH87NuyC34NJMVk7ln/RFAfDbQ/+q+rt/C/qInz3e5b8e7vLtR7r0eFLEK9wV6Ip4bW1/4roxrdOkf/BUl3MGf/YnQ+57YnTFx6oSgBECgAFgDABjjDHGuLBXH3lkKwOfeVYrBh/2pS2XXLrtl9ene8uPL1h/6Bc3dT/P9KsaatKSzfd8SQSbm3psbvLhubEfy835Xm5h7xKedXZu7H65Gae0hn+f3Vs1tMUQPffiuC7dBne5cPiHej///h89+WfnDHr3tx/ucvag2Ht1f1jce/mAEdkfdwQAIwAYA8AAcHkAfOcdt5wZ6aYbrqv5d97TTz1abNdll15yZp66n9Nt6sQXZO3Vax1e6GTskToy+I8DnV4n3bn/nrvUKn3oxU4G7U3pHcYY44JeMGG0GXjDcV/b/KMfbzz+xI0nfn3rz67aduNN+Vb6xlNPFyor5/ovf9X0qxpq0pKF00eLYN964n25Cf8v9/J3chO/mJv05dy8XrlFfQpY6ZOPbEVl5XzpgLef+qvN931RNbTFEJ10zZNdeo046KZxX7590qd/NeHD1475655D7nhk9OQpk+9/aoxeF8yZumC2PEWeP2sKAIwAYAwAA8BtAsDitM8fepiBTRsHHfKpH/7wB+lFRHHZGUlErTqL7dWuI448Kh+AXxz5dN8+P9PeAJB1Rb8pDYt7pG3ZtKn8NeyO2lABpvqzkNW2/L363L1XI1+rsTqh1y8T5ioZY9yMFrNNXTRp7Kqzzmp9JNKBh2w886wtl1+xqft5m7p13/yjCzaf//1NZ56l183f69Ga0uP7Wy6+pHXVq/0PaF346qyzVFY1VE99bsnimWM2PHjqmw99IDf673NTjs3N+UFu+im56Se3row18xutwWG9zjyzNUUbs89rheRR79/+x7/Z8IdTVLZGLYl+HZg95bHnXvr/LhjW9bZJ5zwy95QHXt7vFy+eeP3wSVOmzJ8zQ14wt9ULd/P0Vs+ZZiQGgBEAjAFgALiWABzjkCno/nvuSikiQDo+8zKV5tgUAC6GW3ULwOkoG/dIGK+BcvdrC8Ddz+lW8neKgr9cqAGJTzyxt4YA3LV7q+IzEwDGGDdh7HfOVKHaonmt2CaWW/yrm9d+8qDWRaH3P2DDEUdt+vZ3WnH38itsIbHYuHXO8w70VU7lVymV3VHD9AVV3LiUaMnyETdsG7BP6y3Bo96fG3dIbtrxrbgrGLaFxGJjpY96/1tPvO/Vez6q/LVqSYS+U+fNnjZu4qTDrh7xmV+9dNPz0799//jv3PHcYyNenDJpwtQpE6dPnTRz+uSXZ0yZPXPanFnT5s2ebh42BqsliwzDrSQ8BQBGADAGgAHg2gOwKEgIdNmll3g7TNlNkJvQrgMBOPvRS7qCqrIDsKccO3OiVLG50BnnSKvZFc+mLgbAJT+RyiLAXSMGBoAxxs1Gv7OntOLZLuac8/I04dy0Uc/P/ulPV37u8+ERwXneR3vn/PSnyqn8KmXyXGjyrCjgWbgl459fMPjKjf0PfuPeD7415K/ffuqvcs/vZb/99F8q5c0H/nbj3Qcrj3LWqiXvePa0CeNfGvzE09+8bfA373n8zDse/9l9T/zx0aeGDx/+3LPPjho1csyLo8e9NGbihHGCYZPwrJlTi2Dw9IVzp5XF5AAwAoAxAAwAlwHAji7qVbvCzNgwdVZ4fMSRRzn/8SecIF7qfk63kEf5A5s5/ml//tDD8mmzLAAWTIZ5xaotLui7l9UwpYddyu8GqLWJo6RUpSLqQqLXoeVxjwqGyrMAsGrTQfPnMKv9GsnwQahH4XCeFh5HgJ3TVflG7oLdqRKAHe13zRrG9KkB9gePvzxYxHv77bcDwBjjTgXAUyZPGPfS2NGjRr34v7+dfMlPJvf4/sKjj7G1rRSla6/yTJ08oU0BOLRkzON3Tx/Ya8bvvrfizsNX/OZwvWpbKUqveUuCZ8+c8vs/Pvzru3/3y9/8bsDv7rv/gYd+/4eHBw0e8vjjTwwb9vSzzz6zg4FfGP/S2IkTx6kBM6btCAW/PG3urOli4AW7WhLFgcuYDl1zAL5zwP2XXnFt7DFjJy5YuGTa9FkdTlxbtmxVS9q0fnU/Y+ZVq9ZoZBJDV+4RQw2DHx2qowPAGAAGgNt8CrRvWw1MJdYSCAnPHBl2euClwL3K4+JhgrQQzpm1S84PWmYHYDXJdKc2BDoN04AD+ynFdzLH6KvX+ECuSokpVSV6pDrdeBGgU7w3vUfa62YIU2MALhZDDp9FKOijqJ2JXxBCTlcVRkaZPeD+pKoEYPdUmd0GD2OxBbRiAA64a/rVq+PAADDGuBkZeGpMnoK3WTOniuWmTJowcfxLL40V4o0ePXqUOFOv2laK0rVXeZRT+XdnzqlN0JLQHmHtyOefGzp02BNPPvXkk08NHTr06aefHvHMM88//5zaMHZMK/1O2kG/OyLAU2YnI8AzdwHwzvuBOzACLCS7f+Cgm/r1/8+TztaGLOb0RocTl9ogIG+7+gX56nX2zG6Mx0cb2csmanDZxE8M4mF9CgAwBoAB4NosgmXCCfga2DW/SAKAY5YzXoZQYckp0AknCoaQqRsWgFMbDjs7f8yoeg0cHvI7c8GqlOIeOSTrZsSrYXvVq5BScgp0WATLKO4BLAuA458hQhuMuAUBOBFPdvFis7szArBrju80jnm+JADH9Ovlr7p37w4AY4ybGYPnTNuxdNOOJZ3mzBDFCSnnvDxt9stTxXUiTL1qe04U4VwQFnwqk+4aoiWOS8+fM23Oy1Nb52NPmSjQFW+33v07eecNwK1R3+lTWmc+72rMO5OfA/rW0z3ACRQ0ABcMwK5ataZYcFj54116a4e3BfPHGVS5G6MNvTUAO0OcLa6qYP3xdqILPoQS3ZG413Hj8/sY8DV0My4bH6XYEI0ZOzF0xwCsUnFT4whzPDIAMAaAAeCyATjxgBzvKlgkBuB8mvIs4owA7ABjcAC5GIC9fHEi9miUNRMmYp75izkF5nRViam8RlznN8Hmr5AcErMDsEqFbGUBsIY9f5kxT/AuCMCJeK/nsRd7olVGADZFJ0LcHqj0idAGYHGviNf0qxSvicUlMsa4M0yKbl24eE6g0OAZu72dMy089afpW+K1qRe0Hmi6mfwdzy2+BPTcabvmPNfRKtD5ANztvF5KOf2sHjf16x+g0YmyNhJgqSLxrsGPDtWGisvDR4y6c8D92tXzgt4mQ6Fd32v6Ob8zeFawioRDhApl7QrRUW3E0Wnld/NUuevRsZxZpVS5j2u2TBxC+d1r1SA0VWY1zIluWIJIDcCqxBsu674osypRx3WsgkPkEbaV7gw+iir08LpCbbjZbiEAjAFgALjCKdBZdiUAOD9EbHaq4SJY3i5otzBRjwmwIABnqSq/13EvyloEq+DSWd7On0scBrxgJeF24nwATqmqYgBWnoJrfZdcJStMgTb9asMAjDHGTebnhj/+2U93DX704YGH/9uXtfHrX90Q9ipF6XGRy39y0YnHf+3aq3f+I/1Bj/OUTa+TXhrpFGWI3+b7vt/e6UM4s3O6Zm3ocGGvjqLK/+ubZzpPyBzKupHKr5yJXXGDVUOoU21Lb54dN8NtDuOgdI2AKlHlYQSC9VYZwlsNoI6lnCoSV1g/AGwENVgK1YyaJljjYjw52cUFctolGpRdg1K0yxgsmNRb419cv0lYBZ2otyHyGaZAK8V5wkY4tFhXxKsUg67bKW5UTh3Utakew23iEKHZ2uvYrOrRtrK5PcqZD8ChVSqrTim/jmvWVbqO7iFSWY9bsSnQKqgUt0F1ho9ApVRWNRjXAWAMAAPAHQnAMS7WBICNeV5wK+EwbzlRTzEANkamV9XWABwvtR3boeN4jatEBLgYAKcEkysGYHc5EQHO8pykAMBBADDGuCktqPvYfvvo1Ran6SrLiSJGb4jZ9tzzL0xuQjhlMOP9w9//nd4qUW+NxEoxebq49xa0alMebfiIhlURrIvoVUd0Tleu2lS5M4snQz1660S9KqfrDLtcZ2iwCuq4qs1vU5oXOFllA/Qam8WxapvsDmpDh1CixkpvZW3orXLqQGFg3RHtdRvqDYAD+zky6VehpmdH+57heNKvQ5pKN3wqT1gjyjzsbbGiATLENk2qeqt0E2zBe4ANuiH6GqSCOq5Z0USqVzcgvqVWNStP4hAhKuv4bWiMETSxTlVBAHaoNkR6te0AdRiimNWL3QPsdcjCR6AWGt39gwIAjAFgALheALjg7OUKFsHKv9k4vZ5iAGz4DHf8FpuVXRKAizU7CwCH6eVxGzxQPrTvo86/B7jmAOy1pgu237OdC94DXBKA882FMsa4KQFYYBanBG5Uetgr2BPR6a0o1DhndjUeO6feigb1KswL0dcUm1pVPDCtXh3FVT06kEExrlwsqsw6qBoTt9avyqk8AWuVKBDVawI4dZQszTPx6ljuVABgFdchQvTYYxITctgOA+UotLLFgfR6uwc4vDVSOnbqXfmrZKkGsaiozxHUOEO8LdIzXcccK+B0ngTcximOJDu6m7iROEwkdrDa6G4kDgTr4yYO4V57DrPKOrNo1nO2zfPpACxAVZ5wIINrPEQFEToBwK4wfARqgDBeDVCTEr8IAMAYAO5sALykrgDYHOXVmAuumZy4B1g2krmSAGBhFWileEXiOIKaHYATC0oXrCodgI3QftpQPkWnA3DoTgBar7AdniNVbBVoZ645AIcVrVNWgQ7Rcq+RVtsHBWOMcUMDsMDM5GY801WWcNdxYO8V8hkC86OmYktldmxTObVtMDaIenpwMRt3PZHYBOujmL31aip25QJRv3VINkSkEwDsYLXnZodQdpjPbJB2CDfMqU4HYHfZvwL4bRwTtnWIMBE6BmB3Lcy1FnVriDKyd8cCsAO5nrUrPEs8EMh0KuYUOoZwbgoA+z5bbage3zRbEIBdW2BI376b3/gwidpTrE3IDkoLI8MhPKs5H4BN0cojlPX9t26hjhU/6KggAIfwslPM/x6fxBCFwzmomwLAqsHNDvPMDeRmY8/fNrS36TOiAGAAGDdeBDh+9mzCBSfiuki4O9QPoU1k8ANsE3N3Cy7LFLguYfGh5yrHdKeUwGAqGNemwyUqV4Z4rSZzeODV9KryJycrf7wemBG6IArmtyRuQNwdpYQHTZlC5fg5wIlnETtE7OLK5kYWe6Rwsc8uLpu/wLXHLX6rDobPyM8BTmTAGGMAOB+AhW0BgI2RnjwcF1eK7xk2AIe7gh0HTmROOMya1nE9ZdpH8UxmvTqEGwDY6GjWNeg6wBsDsG/TDbFivTVUe4K0e+p4rAO5WQDYiOsYuCd+x6FdOaSkA7AhPPB5BwKwF7gKb0WSXpkpkGdi5ar8hySZDw1viRribc/sNfX53mBBowo6T3zPbXw3skkvnkqdv7pymMAcgNnh2cQiWPEh4l5727cBqzZPZk4MkW8YVlWuJJQ1P3tJZx8xv3iM9H4N+Kq3vuk3jLMrCUtGO7gdGul7oUOnAGAAGAPAuH4dM2oiCl1s5jbGGOM6mQItPvQ9wN5ruA1UGU/rDZOltREmA4ebe9PX3/JU53C3bbjD1hk8ldqVB5QNdXp+cj4Ah5uQQ1Q5htKw7TB1RgB2qzz12jQeY3yoJ2UKdHC4z7kDAbj+5YhuXd0T29kEAAPAGADGZdsx8zi8HNbuYnAwxrieF8EKyGe4dcTVpBqmOns1rLAIVljnyVzq15KkF2ZNG631Gs+ydvw5VG4mj6HaUeJ4EazAnG5eWATLwViHkR0Hjm8kLgnAbkyM6GEZMCXGq2HHABwvguVFv9R+lS0IxgBwInaaHx9GADAAjAFg3ABB4PBIYd8PrNf8m6gxxhh3lL1ecbAQNNykKmazQ6jTU3mVEk+ZNmT6Jli9aq+yKXPieUXF8DtU4uOqeHznsBJDim8Pju+h9YHcBdUTPwbJdyyHo7jB7kv25vm24fiGZ7fWNajC0PH8/OGgYRa025l9/nNnBmAEAGMAGAAGgBvVd95xizBYAHzZpZcw8xljjDEGgBEAjAFgABgAxhhjjDEGgBEAjAFgABgAxhhjjDEAXLXiB9X6+ToFd9XPUlgFF4JGADAAjAFgjDHGGGMAuIS6ndcrPJD2pn79w5Nv/cQdvSaezduxCg/jjTX40aExFRd8nBICgAFgDABjjDHGGHd2AI6hV8R7+lk9vK1EYWRB4OxAbdmyNT8CrJQ4Udt11WYAGAICgAHgtgXgMSOfxhhjjDFudLcPAA8fMUrc65Dvf550tgDYAeGeF/TWLm17Q0gZAsWOxIqQlTj40aEh7qpseg2Jnq6st8qZmE0dSgWg1YYfdKTXEIIO2aQxYyeGXa7cDVCiNhIArDbrVbWpkrgG0b6LBPgPDdOG48bacAxZe+MuIwAYAMb1C8DL176GMcYYY9y4bjcAFu+Je8WTZleBn3hSb50oAtSGrESxsRFRJKkUYbMTHW7Vq/lZ5KmqVFbbsvI4sBwzsFJMoXoVrJpaVVzMqbeOQicCuYm32vaxlF8FEwDslrh5jm/rQEo0GLs7bkYoGOp3hUZlbcDAADAAjAFgjDHGGOMmAWAjX4jcmkgDlxqADYFhW7vEhyESa1RWcaUHyhVhxm8D8YYIsGnT6SquDXG1gdyJKQDsNqhUCFyHWdzO6buXfSA3TyQc4r1mYFOxyVzWhhpgtg9xYxUJPUUAMACMAWCMMcYYN5gnvTSint0hAGwcNfgZaIWXRsrEPcCeCC1WdFg42NniMGzfa/ol8sR7HXbWcc2fDuQmWDdAcj4Aq20xl/p25WKxYjdPrwbscHRTvYPAZuYAzLG5nRgABoAxAIwxxhjjRvXY5x9Zv251fVpt6xAAdhDVBBjmADsKWhCARZtxdDfsSizFLLiNb8HNX3zLM41DGNmAqvo9uVplw8RpJ4aWOE7r/Hp18DYdgJWiGlybKdcA7FugVYMD1G5JHKxGADAAjAFgjDHGGDcwAL9Wr+ooAHYgNMwiFkCGtaALArDRVAzsG3ELArBQUxlMrQVJ2FFZT2N2FNe3Ezv+HOYquwbf0xu3ROQc8idmKRcEYDOzavY9xvHNvTpEgP+4ZiXGq3AhABgAxgAwxhhjjAHgZgBgY21g1xAC1XYcXNW20dQrPMsBI7UrQbleTll5CgZU8x9W5DqVOY4te4K0mxe3JOQPCB0HtOOcakPcZr8Nic6fWOnKdyDHeRAADABjABhjjDFuNg99dmzvq677ca/Lfz9oaFkFX56/UqXy3f+3D2Za8GnibB0aAO5AAG5/JZbFQgAwBoAB4E4BwLpi0KUGl1xN5gnTFoweN4NxyPf8ZesfGzaKcUj4D4OHaWQYBwakw9F3/49/skukf/y/H8qOwQLdLoWkOrMUP+qYr33u84cVY2MAuCkBmNnFADAGgAHgdgJgfUn/uNflwk7BZ8kfpEvmqdK6ttCpm3I5Ev8innibqKfdfjuvfw8fOf7eBwfLM+a9UgG7qqBeqwE2H71k8+xi9VfQ+ILdyZ45bok6Lggp9jbuS1mgMnrcjD6/uCFlb8UfXJsSVLFu+qOMB9ldCO1XKb1VtvT6z/nu90v+YqI69QGpX/Hg6G3cU5+9BUcvcaZVP8I6aNsxasqAeEhjh/HXRlknfGWubOhq8ufc1vS75157yzf0+42++GR9VwpKK/tm0feavmfLKiL6LQjAao84HABuSgBGADAGgAHgNgdgfY/q233/j3/y5NO+4W/69KlZ+jL2V7hndrU/AHv+WLG3BZuKZSHWLXf8rz7c7//oooLYluIrfnr19Tf/WpfRghZZV+G6Fq8tALt54fK9WAuVrcowcjptFqSOuGzK24obmd4k7ZL9wVUZKM6ClGWdUYna1DwdwmeLXi/6yZWGHLVcmfVq6FVftMv9qqa1OmGUR8eSVbneGr+1rRQdQocWGfpYek2Mnk4zN8ztTHzWlTn9JG87APapmABgvQYwbtP/LeX+TVVTqp0tyJRL/uYrHs7yu3AxAE6JJxcDYB80EQpOmS+t9JJRawAYIQAYAMadAoCNmmLgkNL7quvEwClzq2KqbKOJytUAcNxyALggrogtda0ch6rS4zDKL5wI16x2AhWyRHJKAnAWNouzuf1ZDh0H5fIvuwtG7cxOGQHYbQj11ByAPW76IARsFQTQQsNigkr0utjJkH8I5XRiopsejfyAqk4e/6bmIwrM1AsfLj0ymQ7A/kUgnpXgwynRpbwrnL2J/mqv/wriPoYPN2SOo9bFzqh4iOKTvGCRxKlSsMKKAbhgiD7/7y7ltKksfJ3xb6rhAFjfjOkxW0Fvt3N7iJA9q1nfOOkYnKhNUOrfnV1cVWUHYH9TuxJ/iStbmFwdY7CqDYdQU+MfuFUqfgsAF9OYsRPvHzgoLGTV95p+KQ8xaiCpXyxnBQADwLgzAvBRx3xNX8D5iSZbfTX6q11fqIZk7fL3qOeA+Qs4fMXK2vAVgLZVs4prQ1/5ThTZukK9pkwhqwyA9eqveU9XSwSr1Rjv0kZbT+GucwB2iEyXpw6a6VWXzo6eiRYu+smVfuurZL+1laIMupiOr7YFPK6hZHyyXADWsdwqx/rk0BhtK7Mje6FtQporfnq134p5fP2tV+dRZofFQne0rb3K6bfKFoq4HvVIfwJZADgeSR0lHmq3Wa8psJcFgN1UZ4ubHWp2G/RWG/GM35DT8VIdq2Cv808GE2ai8a7EeZQef2SOxBacER2TqicUZFkBKB2AE7Adg7HqT4BuwcH3pIPAhOHEULX+EMNpkPiA9NY9DZ+vcnrit2twf+NfK8LbxKlS8KOsFQC7GeHvLv1YYa9Pe58VbqrPqHCe+MQIiT50+t9UfikNV1yqPv9n6utD3xopPwfrm9FfcOqdvvtK3tkbA7C+hsLkak+r1t78r+NiAOy2ha9L16xtT40Os6PdKh3FK3j5K9JfvqEBAHC6Vq1ac/pZPfz0XS+MrLdi4Pw1lmuo9gFsUb2fftQ+NzY3MWkDwAAwbjAADqyY+GlZX8b61tder/bhH8L9rRmoMmCqN5ToxUL8FR6+dA2fxk7zp7KlLOyRBYDVKl8WyNpWiluoL3s1O1y1hKaaft1CJeZfZHSeKdAGGF8Q++rT16MOoBkddT3qKaz54OrtcLXtDdOyr/5TiKUkAOuInhbr+c+evKpLQ0c+E1FHH1pFfM3ti2xPsvUuI1bgNGVzSgwznv7qIj56mKDrIh6ikgAc+N8j6UZ66q9ZPbBrZQCs9hi0PAjGEt/46rm+iU9TGUxonuWrDrox/oAK9jpxMrigQdoTjH3jt4/rjybxcaueYr+A+KzTawj8qp4EP1fAewUjmf79Ip7n7ykP6kV+cNvNCHcjhw/XJ7N/RlG2fAD2W/8Eowym3/gkz3iq+KPUW//RhcnYlQ2I/3zcpJA/NKngaZOYEO5TxQDsCe3+2ci/H4X2u5LwC0LJv6m4VPj5o/4jwP6uiQO24XtHXfDqVvFPOabN/K/UggDszPEPwQ7hJn4azgjAiWlQbpg34rh0+BYuuIIGAFxQ8fN+hXDdzuvlp+YmnlRUW+kQ7UNufuZwOxwofrwwAAwAA8C4gwHYX+SJRH07Kl3sKpoNX5yG2IIAHM+qUqK+X1UqvjLwW3/1qk598fu7uWIAdhtsb+tVNYdEs3doasz5rrwTBoHDTbaBUnRVGi9EpL2BGcwGjsykALDxMtx2GK6Sq7wHOFzlm5Ti6/4YgHUlHaZZ6m2YWOtj+RbQODGfNk1lPqghLZ6gG0AoCwAnUNAAbETX2W6uqBiA3cjQMLOZm+0YtVk9fJrKZj6M++KYW/jNIu6188cngzkqfLLeGyOr60lEgFOmAHjGQXxrt39oqCYCnDLJ1p2NJzD7x5SCp2UI1cYAHEezCwKwOpsf8c4CwHGn4o/Sn0XKeZL9HuB4xntoUsHTJv50EuMZR4kdxk/80/AJFo+PT6TE2ZUoFYLhDQHA8ZdFeKCRf3UNCBrPiI7xMh2A88nW302JG4syAnDi/l4VOeqYr3mX2hM/fimOD3MPcLkAPHzEqNPP6qG3CZYrN2Cr/HEA2dt6DYkFoTQRQXVmJeZHVrNHp7MAcFx/frPTDxo6FQNwwTYDwBgABoDbD4BNiflf4WG6VMBUUatzFgTg8J1t1vVdSfFXsnP6UYr6Yk6/SqhgCrTvpAo/zxvsQ1MTE8/yLxc61RToYtfTujgOM0INDN6bAsC+jA5xJzllad8K7gH2FXY8gTYG4Pjq2QQYajD/JBILAnBYjUl29DsuYq6O2xNTjY4SAlwF++IJqI6gpkz6zXgPsFjaH5ADwvGwu2EJsvIgxD9qBNZN9NqJCYb3AlHBcRgwIFNMawLC+CeJgutpx910DemIm7LXLJd+wscZDPAFc4ZTPQbguKz7HqO75ykoMdHfeL5xjOj+LPJPFYegEx9lraZAJwC44GkT/2KS+OONb2rw30X+7w5hJkgMwAXPrvyF5eofgB1Bzb8H2N8snnaUP6mq4K28+QDsH5rzD5cIIGcE4MRPui7lL+J4wpRdrIUAcEkAFssJ5MTAY8ZODCirt04UHvttt/N66fX+gYMMzN4VI7Tyy3cOuN81aLvvNf2cqFLe8LaqMivqiImYszLc1K+/D62czqYW9rygtxJVUImee+wDqQbPdlbOAL0FAViNdBFJh3A9SnHLlWLgT/wQoL3xWx3FLQm9815vK7PqaRoMBoABYNxgAGzcFZH66txzmH0Xk79fPRfatyeFG2vNrgFTfQOwyqoSx3j9TZ8AYN8z7PudHAeuIQD7WsQzrsNxYwB2e9zCmj89ojkA2DMedRHsm2lDRCgFgH1ZHG4FTF/2pgIANvL57sGwvlSIsCWuns0SfjSR48auwYnqV5iuGeJsYa3g+FExoe+OfCbA1fHYxJTvggDsSJdG1cHq6gHYLVe1nsvqIHNodj4Ae+q1MdWzlz0CBXudKO5pwz5ESA9hQ8cD41ttw9xj3w3rCbThcB4Nr8PsO2w9z7aaCHCIearmcHe6B8dv3XEd3eF3NSzBw57o68kCiSPmn6ueEO6J9P7Rxz8oeF63OxWmHhQ8VQoCcMGPso0AOP1YYaK7MnhknD+cPAV/64lvhUj5mypZqm7t22fyodQLWyQCtv4ayjgF2jOo4xnIPlZiblRGAC5257CX4Sg234op0FlCtcI8MVu8cJSZ1hAozvT9wKJEE6B5zwVNuUZcgag3lK78qkfbQk0XUT0xPQYoFUManlXKIBrncSmjpveKKp0oG9TN5N6lInqrCsN9v0Z6NTIR5lWiXo3KKuJG6hBKVO+M4gkATkxyDgOiSkzO2jb/aygM6gGzAWAMAAPA7f0YJN8rG5aIDKtYea6U0dfrfIT8wlevYuX1MzwxzKtr+Fdn/xAef7M6p76qfax4cnUFABxfcwQe9i1Vbq0P7caHX/G9/lZoYScE4MRVb2JpIjNw/qJNMQwEzAhLJcWLYKVfwacDcFg4JyyfE0cUffdyiMWZqRITUL3Ljfe1u8OeYd2mGOO91lFYIit0JzxS1Tid/+DcsDcO6iYWZ3b4NMzT9kToipfDVTdDFFdHNHGFZoeaE+Pvt3Frw8zYgr3O//hMeh7PxBnivhdcIDp8jmHCs3vnzzT+RKq5BziMW1gXLZ6wEPobHz0RnY5HJkQ+fTIXfBCX8ntAfHb53AuVh1B2GAEPTjhEOCETKFjwo6xgQBJrbiUWwQrLU6UcKwyIf/SJbwVPLGdV8CFh6X9TJUvV7b9NfU/5O0tfHwJUfcvoyytwr7909EXjWUj+fsm+CrSr8hRlHyX/d+GwzkWw/+1kBGAzuWtwzDnAMItgVQbABj/HeA3AXhPLUBcHVAV7IWYr0jPBxitOuWYXScRC40p0iECkiTwhRZU4W4gYG0HdACWa282cOmhg6YIAbFpWojoVWDcEsUNjUgDY0BvqdB/dyDBd3IgOAGMAGADuGABOv9W2Q6450gG4Ate2NlyHj0htaDfEA1Hb37V9ajEDgqt5HpJhNcBk+AE3/LTqRSjS61GeeCaIV4gMvx0XDB2HH3aDjKyeSOWfpPPnNKlUYGnnDI9viH961hHjgwLAJadAB3AVDZroHFAVKwrtDITx7OJQ0Czq+GegVlNxwUnIcYrvOhaRpuRxJY4wB8IUvpq33TwHhL2IV0yhBe8BNp0qs7k3jtY6LOzeJag4MSNaDQi/Ixjy8xObFYBXrmqRl0QAPGnSfAAYAMYAMAAMAGMAGN5jQHC9GAAuCcCOnfrRQY5eemKwb9AtCcCmRG94QnIKAAeYFHkm3ho78wHYwV61TWzpUo70erq1EdpYm2URrBDlNkt7wrYjya7BPK8UJyYA2B1Uisv66Hr1vGglGuwBYAwAA8D1BcC+p7ejZp0lVsKs0rWtDVfmCdMWcPlebIXkep4F2lHOn3/OgDAgGADu2EWwwhJTDqLGKLtly9Zww60jnGHutHjP2yEG6xnRvls4fyawkdL46lnQYVcIxsaJoRK1wTff+tnFcTzWC3cpMU5PAeB4pnRoRrjDOR4cr2gV7otOFHEYOUyHjutp4kWwAGAAGDcqAGOMMcYYAO7MAGy2FAoGuvONu+0GV2EdrJorRLMLPr4o/65jBAADwBgAxhhjjHHzAPD6davr0x0IwI5zxgDcnhKCxqtJ1VZjxk4Mz0/KfxJSYukvBAADwBgAxhhjjHHzeNJLI+rZHQjACAHAADAGgDHGGGOMO8AAMAKAMQAMAAPAGGOMMQaAOwaAFyxc0jTrOSEAGADGADDGGGOMcecF4EuvuPY/TzrbqyiHhaniFL2N9zau+l7TL6wXHfruBxdBuQAwAIwbEoBffeOthPmfhRBCCKGO0qIla2Iv3uVFRdy9+5Uq1c6PQep2Xq84wDv40aFxiqBRMCxKbKO1mnM7lsJqnyWpdKD7Bw6KH4zklCwP7E2s1xX/KBCeAuVlpfUaHsWkmlNWF1MNHtWCD4vK7XjsEwCMAWAAGABGCCGEUGNo5tzZN9w44LHHRgwZIg+P/Wj8+ujwX15/pzJ3CAAn8C8GQu0VmImHxXhtFwROeVpvOxwrfwSKSePgQfBTlAK0q7jGRxB7U7/+iQq1kRJe1lD7WcQFR0CJ8TONAWAMAAPAADBCCCGE6loigZkz52ZC5ZlzlbneAHj4iFGivp4X9I4pTrAn0tPrli1bZeWR/dZ741ixEh0gFcs5QKoUP3VJlciqWa/CPyVqO2C2MifqUQYHV8OxLBVRDSGzanbQVZnjIG31AOwGu7bTz+rhetQSP1LYwWS9VR4NmltrNlaKQTeW2qa9zuBW+eFMYajVCzfbfdeutgvCA8AAMAaAEUIIIYRqAMBlZW5/ABZTJfBPhBmniOVMp2Gvg58iQIc39VYWJDtWrFft1VsvneXbiUWAziAmDEVU3NAbA7Bh0gcybcbg6lJKDzfuqv1uj+sPvB2aqhShZphg7Hpifs6fBF5Mqkc5czumhau1vp04JBqk1fgEAHtwVESJ8XTofAD2QCmbEg29/iDcNc9F75CYMAAMAGMAGCGEEEIoKwC/uX17SXcIAJseY840NCYoyxDrEK5JVRtGTZObuU4ZBG/epSIO1QZS9T20gXJDSDa3e1RWjVFB1ZBYmypRSvUop7J5enZgdW27kd7lsGqI3FpGzfDW+Q2x6XKwV531q5vq11wUSU5MgfahPSZxM3J5U6Adr3b9arYBOASHVYN2dchqZAAwAIwBYIQQQgihrAC8ZcurJZ2r1wiwKc7hRzObwVKvKhvDnkOaAe0c4I1Xt1LNnuKbPwk5pPiuY3GscLFYnvDWM7RDokqFkKlJ3ugb7t3NVRcBzu2I/Xrh6Nyu+eFhWeliABwwPh6fggAcD7h3Ob/j7Y4kd8iC1QAwAIwBYIQQQgihrABsZgj+0mGHJVLkjgLg9HuAxWwiQ70N04kdng0TfePi8bYrUfEQ2FQR8VsIaebDbbzAsuHWbx1eLgjADt46Aqxsnmmc23WPrra9unK8wHL2e4DdzUSiag4xcweEY3QPABywPAbggkMd1s0qBsBhTWl3MBFDBoABYAwAA8AIIYQQqi8AXrp0TbDo144T5foEYM9qdvjRU459/214UHA6AHver/L7Lt/4tuFEM8yuZl3jq3nYc6G9VlY+APtAZl2Dblj+KiC02p9/L3EWAHadicS45tyu2HiiHuXRQd2ddAD2zcnqgn8pKAbAelWF/iBSHqoEAAPAGAAGgBFCCCHU8QA8e84yO9CvHdLlDgTgxGRjcVec4kWe4kWMVcS38hpQAw3Gqy6Hu1V9q7DzO9EpiWY40XSXuGVXRbyeVlwqfuvll333b8gQVor2cUO6b3uODx0mTidU7IZb344b8gS+9Wpbie7EmePxiY/ie6rj3rnLcQM85h1CvwAwAIwBYIQQQgihMgB4ytRFcuDexLbdUQDsGc5xVDMs3RxSYopra4WnCrVF5b6TOX6YkPveIStLNZAAYAAYA8CFpVOx4rKHHHxgwe3mU8neldv9Ohmu5v7U2nR8GDqEUNMDsMAgEK+27URKRwFwvalgfBgBwBgABoDrC4C77FKVeJD/2ujME9whAFywAZBth6BvylnNCCOEmh6Ax42fI4t1vREcpwDACADGADAA3DAAHDC4esSqHtjqCnvy37YbABdrAADcgT+FMLwIoc4MwOkGgBEAjAFgALjTAXDTRIAzzndNCREXRKbsIeX00ct+3DhnwcSUD7Gs9pesv9FPhmJnNQCMEAKAAWAEAGMAGADupADcNEiQBYBTQsRZpkynh5Sz33Fa8rglWbqyesrtb7OeEgAwQggArh8A9uLDfGoFFZaVjtU+y4O10ZJgADAAjAHgjgHgpgSAlEndWYCwLHCqIQBnrz8dgKupv1MBIfSLEAKA6wqA/fhZPrWC+s+Tzg5PPIpHLD+xLQ4NAGMAGADuXACcmBNbn2/TO1UTAC42IbmdATi9GemR3iztT5//3HAnAwCMEOrkADx/weL4eb/FrGwdBcAhwGgA3rJla37IMZEYwp758c+CEdGCdWZUosJi9edni48YtlOakd7xGIBDYk0A2E85TnRQ9YdEABgDwAAwEeB6V1sAcFkR2rYD4JLZyo0kd+bnAwHACKGm19p1W6775e39BzxU0tded/vSFevaGYBv6tf/9LN6iK/6XtNPGCac63ZeL6eYhI1nfiywrAxOVJ47B9yvV1k5TYPa5QftqpIwYdjVurjqiUlPeVRJaImffhSqVYqr1XY8MTvxNjzH2EVMwvERnVkpapsapsRQc34lcZHcrqcEe3wCAHvbiaowBmAV9CHUmOEjRumtNlShR2nM2InaK4fHDiuPR1v2UKiIW+hElfKGt1XWA6iDqm0AMACMAeCOfwxSuQ9DamIAqBUo1gos22iKcs371Xn4EPpFCHUGvfXWGzfedNcTTzwTe8iQ4YkUWdmEGe0JwIKoALqmNfOeUwRmAjxlMxL79uCQaMYz5YrWZCWqYMgZiE74Z0qUte3ilihU2Yys2tDb0CRtqzGuNjH3OPE2HFRF3B4VDG3ToXXQgLLumqpN0GPBIqZT1exEH9eJvvU3JAaKdgeV4la5O6pclfhHBB3aiTqWR0npbrm2Va33umx+BFiZlccQ3p6T1QFgABgDwDBA1t6lL9pcLEOx+bTZp0Cn1J/Ltpp0+m3MFUyBzn7cZloCGgBGCHVyiQRmzpybJaeytfMUaINZIiWEZE1ifg0kJk4TmxnJQlnxmxLNzCGnCdCIK+rTW9mBzcQRvctEqlcDXsBjvxYD4MRBQ4YQwlUj3f64ZueJg8BxkdBl8W0iUa9xyDckhnoc4FU3dazA82HoAnVrkN3xmMMN/IkBTwCwqlX9YWQAYAAYA8AAMEIAMEII1RcAx9iwalWLvHTp6rlzV8jTZyyauDs2tCcA97ygd8DdGEcTlBizbiC6fIB0FDeR04liNtVsxxHgQHSy6VRNCg1wWceNY9hOAHB80NAYz6aO8ydu1k2Aq6coJ44bJwbmVFPzE0M9AmZ1RBzrLscAHE9aNvo6mBxY11QcF8kHYAN//jACwAAwBoAbA4ABAAT9IoRQpwJgY8PSJWsiAJ7XUQAcpt0K4cRswsh8ADaUOpbr8G8A4HxCE5X5Bt1w56oTHUq185thAI6bJAhUY1SV05VoBnZigl19UDVPe7Xt+5DdDN9zmwWAfVtvoojj1WbaMPdbmBq3MDGV2rOsfbiSAGx+dptdbQoAh9aGBgDAADAGgBsyAowQQgihTgTAK9fLrdgwd7ncCsCTOywCnNsVgA2rWwnGQuw0tyMumotWsXLw04l+TeRUDc7gnAa5eH0p39ObUBz1TTQpnoHsW5G9aldiESwf1PCZ231ZLO9yFzKupOVVuLzXjXE9IVRbMNES05qlvdyX75r2Lm2HsK0G2dsB6T353EuRJcY2ZPNH46O382kMAAPAGABGCCGEECobgN+ZAr0TGzoyAlxzeXUo86RwzktJpav9b2dtdGlU4x8pAGAAGAPApQF4wbI17WD+QSOEEEKoUwGwo77hQUoFJzwnJJYrGBZGxX4vyF/0CwAGgDEATAQYIYQQQgBwB8hPAPJTgvj0m0YAMACMAWCEEEIIIQAYAcAAMACMAWCEEEIIIQAYAcBAEAAMAAPACCGEEAKAAWAEAGMAGAAGgBFCCCEEALcTAPuhO2UVybJc8+BHh44ZO7Gdx1kNi5+lVCfyI5GKDZofj6y97f9YIwAYAMYAMEIIIYRQ5wLgS6+4dtr0WTVnZlXb/iyqjui4dfXRq0k9L+idMlxiY+WR/cBkABgDwABwIwFwl0iV1XDIwQcW3EYIIYQQANzWACxOG/zoUDlevVmJXtI5pOit45nKpvSb+vVPIPSYsRO7nddLNYdn1SpFpQrGhBOV6K1K6aBKuXPA/T6Qdmk7cSCVUqJsvHQRHVcHcvt1uPxScfH8pardzpBfb71XlcfNCzXEjdQuj4wTvRS2x8FNUsE4DuxxBoAxAAwANyoAJ6C3MgY29Oa/IoQQQggAblMAFpv5+b19r+l3+lk9nGgwUx4lerJuXEQb2ivY0674Qb4JAPaTgfW25wW95fwGxJX4iM6vt2qVdvmtcxrFtSs0zAyZAOCCpYK8V43RXnXWXBraqUrcTvOzD+cpyqrHu9wAD4tqMCGHlhcE4ESw3W8BYAwAA8CNCsDpPJydfsO2zUUDQgghBAC3AwCL6IRzDnh6WxuCPc9kVnqgXBdJTO5NPPI3TIF2QfOntsWKMYvmV2IUDFFWx0jDW9Xp/CHR9Xvmc5gCbZhPlAoH9d4wQ9u8WrCdqlAbStGriui4GhaHiA2urkGJAd0TE7/jqeAAMAaAAWAAuDAAEwFGCCGEAOD2BGAzYYBYE6bxLySOGTvRkOYinuibUq3BTxQaw6eKGK2t/EpUc7wcVAirxk7kUcOMqQGAC5ZK1Bn3S8UTkBzaqV1qpF5NucZgdSpReaDZYuOQD8DqAgCMAWAAuEkAuJr5z8XeIoQQQggAbrsIsCc/53bEP418xj8DqmfwxgA8fMQo06DryY8Au6BZ2nf/aluQGRNvfiX5C1kZQU2Jnuoch3DdWjfM8WSXUkqiVAKAQ3HPzQ7Mn2inK9erm2rwdgM8z9lWSkkADhOqc7umWwPAGAAGgBsegCteAQvcRQghhADgDgFgUZk40IFQ3+wabpod/OhQM7DnAMcAbHRUZu9NTP11bZ6EbJw2SYYbbgPxJirJB2Czomdlh6O4Nt85HBqmmt3acA9wolQAYHfHDfMdvMXa6bi3V8MKPweEzHqr1nqsSgKwjhJuhA6h7ADS4WeCxgPgXWfyjFYAngcAA8C4c60CXXFZABghhBACgNsfgL3useO3XqlYbw2EfutXMV6YAh2vnOylnhJLTMW7vO0n9CbWl07kDPff5tfmRsbrM+d2X8Y53O7rA7n9BUvlds2UVk4veR0DecF2hl6owjizGxCviR2aEbc88Qwkt0pFQst9uGKrZAPAGAAGgBtjFWgAGCGEEEL1D8ApcszT8V6HYdv/0b5toTp8XHBDCAAGgDEAnATghKBfhBBCCDUuAOd2zdr1va/NQb/uVLwQFwKAAWAMALe3AGCEEEIIAK5DAEYIAAaAMQAMACOEEEIIAEYAMAAMAGMAGPpFCCGEEACMAGAAGADGADBCCCGEAOCmB+B4qWQEAENAADAADAAjhBBCCABuVAD2A4SK7WWNZQAYAAaAcT0C8IJla9rB/K9ECCGEUCMCcPwg3BDRDQ+8LfjgXwAYAAaAAWBMBBghhBBCAHD9ArBotucFvf/zpLNPP6uHsVYpfa/p55T7Bw7yW7nbeb2U6McCG3G1yw9JCjlVg97aouUxYye6lF4XLFzCmQAAYwAYAAaAEUIIIQQAdxgAi2DNtCJYkapStCGgFbsKWe8ccH+gXG3ndgSBAwA7ffCjQ5UzPCg47FVO1XNTv/5KET8TFgaAMQAMAAPACCGEEAKAOxiAxa7C1OEjRoljhbui1nj+s/MYbq2AuKLfENcVMKtgAoCVoecFvVVWe1kZCwDGADAADAAjhBBCCADuSAAWlwp9BcDCYNnUKohNAHCcEgNwuBlYJOwAcnwPsBJFv3rrOdKcCQAwBoABYAAYIYQQQgBwhwGw0VSkKgbueUFv3xIsEtaGUDZMgS4GwCqusoMfHaoNJ2qvY8hK933FSlGdnkGtY6UsoIUAYAwAA8AAMEIIIYQA4DaMAAt9A8rmdixt5duAleiwbT4A972mnwE45FRKmDgt1vXsaOX0IlgCYO/ShssiABgDwABwwwNwl0j8l2wOHXLwgTVJb/RBaLJ+lexOp/p8EUKdHICtxE2/uSKPQUrs9ZzngorXfI6ryj8QAoAxAAwANyQAJ6AXBi5JDsaqfLgqll6f3clvfJ0MV8GU2v4EUP8fU6KdobUVtxkARgjVBoBXtshLlwQAXlyHzwHOohQARgAwAAwA4841BRoAzieQFJBoa55sIACuyXClbNQQgBsCCwu2DQBGCAHANRF38wLAADAAjAHgGgBwPgIVjLaFWFYMOSWDcsW4JUFKJauNs2WhgvoE4IyjkT8Oie4nQovVh0Y7BIDzP+iUMyp96DKePyW3K/5byAjAWQY2/1NGCCEAGAHAADAAjAHgndxb5T3ABS/ri12jp0Thyg3cFas2hRzKigG2AwDnT3Ytq1XpAJy9wTUJjdYWgKv5haKCEynLaVnWTw9Zaivrrt0KfkFon19kEEIAMACMAGAMAAPAjQTAMQnXhHwqZsWSEJv/muUSv2IwqNsp0BlHo+afQlsPVyIGWy4oZgHgkqHdki0s9zwst5HF2gkAI4QAYIQAYAAYA8AND8DFrvULXv1nB490hCiIWNnvYq0hb1QQAe4QAC53pnr1w5XoV03YsvoBSR/5XKl7AVLOxiwfAQCMEAKAEQKAAWAMANeMeDs8Alw98tX26ESAqzkNqhmujPcD1yEAV9wYABghBAAjBAADwBgAbg8Grvge4JR7I9sCvSqbs9qUAJxxNErOLgaAqzmdMkJsZVOgs/+5pY8Vi2AhhABgBAADwAAwBoDbhMGyr3ybqKTKxZ9y5UyBzni4lJtF6+Q5wBlHo9iDZFMeMFtBF2o7XCUfDlyyqirvAc5VtJR0uf2tGICLfXwZP1+EEAKAEQAMAAPAGADuFIIEEEIIIQAYAcAAMACMAWAAGCGEEEIAMAKAAWAAGAAGgBFCCCEEAAPACADGADAADAAjhBBCCAAGgBEAjAFgALjGALxg2Zp2MP8rEUIIIQQAIwAYA8AAcAcDMEIIIYQQAIwQAAwA42YG4G+ffPKyZcv4F4YQQgghABghABgAxs0JwNKbb745f/78r3ziE4d94hPXX3st/8UQQgghBAAjBAADwLgJAXjr1q0rVqyYMGGCAPiFd7/76wcc8NPLLuMfGUIIIYQAYIQAYAAYNxsAr127dtSoUffee++XPv7xqV26TH7Xu8756Ed/1L379u3b+XeGEEIIIQAYIQAYAMZNAsA/+fEF3zrxxBOOOOKYww47er/9BMD2jz70odP//d+3bNnCfzSEEEIIAcAIAcAAMG5gAN72+vYtr76xccur++/3sf577GEH+rV7ffCDRx922Nq1a2v7D0JnI/8lm0OHHHxgTdKbcmTc2Zp0ufOMG0IIAAaAEQCMAWAAuE0AWOi7aMny8ZOmfGzf/ca/610J9A1+7L3vPeBjH6vh0tBddoj/kglSCrxUcFfG/HUIxvmN7wzDVfNjAcAIIQAYAEYAMAaAAeCqAHjV2vXPjRx9y22377fPvikALI98z3tqtTS00RcALgY28duCzFNznmwsAG6U4QKAEUIIAEYAMAAMAOP6AuBXVq0dPOSJK67sXRKA5ZosDR24t0oAzg/oFYzyhQmoMYyVDAYWY6oE0ZWsNs6W8XAp3NhRRJdxNPLHIdH9xHzgikOytRquYs0oSdRlnZ+JKdApByoZuwaAEUIAMACMAGAMAAPA7QfAY9/97jP23//yCy+snn6rBOCCkFkMclJ4JgsyFUO+LECbfvQshJbC1ZVBWqLOLFiVHYAzomnGYakAgMsarmLZagLAGX8sKHfcuLBACAHAADACgDEADAC3BwCPfM97Dv/EJ67p06eafwpd8lQ9WlSDECUhNv81C4qUCzDlNr79uSjjaNT8U2jT4So5lbqGU7XTKweAEUIIAEYAMAaAAeA6AuDH3vvej++336hRo956661a/YOoVQS4XIQoGCcsmFIWABertlirUhrQpgBcQQS4QwA4vXk1Ga6aYHn6clwZK085LQFghBAADAAjABgDwABwmwBwsccgXfiBD3zpU58aO3bs1q1b33777UYH4LIOkRGAa3t0IsCVnQxNEwFuo4FCCCEAGCEAGADGAPBOAD7ii1/66qc/bR/x0Y8G+v3uP/7jCYcfPmvWrNdee62G9FsZAKfcSNkW6FUB8VZPqnU7M7bchmWPZNb8PtsagnH93APMIlgIIQAYAEaNCcDr5aUC4Lkr5NYzefJ8ABgAxh3/GKSrr7m2b9++l1122TnnnPP5ffYR+o5717tO//CHv33aaStXrnzjjTfq4X9KwVVz81Oyz1WuHq4KVltyWaaCx0p/qm2HP9g242gUXPo4Jb0yyKzJcGVZNKt9ADhLy3NEgBFCADAAjBoRgFe2yEuWrHkHgCcBwAAw7jgA3rjl1UVLlo+fNOWFMS8NHz781ltvPf/88wXAL7znPUfvu+8Pzz9/7dq127dv599Z9QiE+HQQQghlB+CdE0cjAJ60OzYAwKiRAHjpmuinHAAYAMYdB8DbXt++5dU3hMEbNm9bvHjxwIEDf/jDH35+330P3m+/n1xyycaNG2u46hWIhfh0EEIIAcCo6QF4/oLFk6csLGllA4ABYNzeABx75cqVDz/88E033XTSUUfVfMkrhBBCCCEAGDU9AK/bsOm6X97Rf8Dvd/dDyZS7fn/9Db9RfgAYAMYdBsBr164dPXr0iBEj5s+fX/MlrxBCCCGEAGDU3Fq+omVty+a167e0rN+yfsPWDRu3bd786patr+vEfu21N19/vdVvvPHWm2++bSs/AAwA4w4D4G3btq1cuXLNmjWvv/66q1qwbE07mP+VCCGEEAKAEQCMAWAAuF0BmP9ZCCGEEAKAEQKAAWAMACOEEEIIAcAIAcAAMAaAEUIIIYQAYAQAA8AAMAaAEUIIIYQAYAQAA8AAMAaAEUIIIYQAYAQAA0EAMAAMACOEEEIIAAaAEQCMAWAAuEEBuEue+EfZBDrk4ANrkt6UI+PO1qTLnWfcEEIAMACMAGAMAAPATQLA/GcshkmxC+4qVqT+wTi/8Z1huGp+LAAYIQQAA8AIAMYAMAAMADchD6dzY215suEAuFGGCwBGCCEAGAHAADAAjJkCXZv5zxmjf2ECaoxDJYOB+TUUZKqS1cbZMtJLsUN3INFlHI38cUh0PzEfuCYh2WqGq1gzUuqs4PxMTIFOOVDJ2DUAjBACgAFgBABjABgAbiQAzufhWmFPCuRkYaQKkC8LP6cfvUMAOH/+cMni2QE4e4NrApnVA3AWnq9t20om5how1I8QQgAwQgAwAIwB4HYC4GoQoiTE5r9mQZGKAaZgv9JDlO3DRRlHo+afQpsOV0ozarJyVfoPB3UY6kcIIQAYIQAYAMYAcLMBcMHgZ8GUsgC4WLXFWlVsvmv1VF9y6MqNAHcIAJc7Uz1X6RToKrE8pZ3Zf7NIOS0BYIQQAAwAIwAYA8AAcKMCcIJ4OzwCXD3y1fDo7dCpilWHEeDqh6tuI8C1HSiEEAKAGVsEAAPAGADusAhwNYtgpdxI2RboVQHxNisA58qfsps9kllvAFyf9wCzCBZCCAAGgBEAjAFgALjxALiGDJZ9FehEJVUu/pQrZwp0xsOlxADr5MG2GUej4NLHKemVQWZNhivlYcLtDMBZWp4jAowQAoABYAQAYwAYAO5UANxwglj4dBBCCAHACAAGgAFgDACDWIhPByGEEACMAGAAGAAGgAFghBBCCAHAADACgDEADAADwAghhBACgAFgBABjABgArjEAL1i2ph3M/0qEEEIIAcAIAMYAMADcwQCMEEIIIQQAIwQAA8AYAEYIIYQQAoARAoABYAwAI4QQQggBwAgABoABYAwAI4QQQggBwAgABoABYAwAI4QQQggABoARAIwBYAAYAEYIIYRQpwLgpTsBeEYrAM8DgBEAjAFgALjxALjLLvFfsml0yMEH1iQdVTw+bTSkBauth4+vbk+hjm1YRx2dv2gEACMEAAPAGAAuSr9cOndCkEuMef18BPV5MtQ5ANfDmDTNB9c0LeH/KgKAEQKAAWAMANcj/XKhBgADwAAwAMz/VQQAIwQAA8AYAG4PAI5V5cWWXfLiOOR0Yvw2Lp5ISSmY5fqv4HZcT/pxqzlcW1/apnQtv1PFxjxjHxv3ZKimF+mHztLrkudVxpqL9bHgKZ1+rpZ1nqd/KCVPoYzdTxnMjKdBdkTP+Olk+adRcqDKOrFrOw4wMAKAEQKAAWAMACcBOOVtNTyWfvlYViipGFGUvMjLQolZgDb9yrh6AE5cHGcBuewAnPGDyNjHxj0ZqoyelTWeBXtd7nlVVqy+3HO1rLJVnkIpxbP/KVV253MWAK7ggy7rRvqMn2PJDlY2DgAwAoARAoABYAwAtzkAl3VZ2dbMk4hNlQVLFcwWTief2ipj1yrDqloBcF2dDO0GwBl/KKmgp1VSVmXtqfIUKuvTL2swywXgLP8EatvsGgJwZeMAACMAGCEAGADGAHAHA3CuyKS+mjBPyvzDjABcbKZiSiyo+thpBRHgDgHgjM2rk5Oh3JHPDsBZTpJcqVnouSIR1OynXzUAXO55XiUAZxyxjKdfycSOAuD08znjx13bcQCAEQCMEAAMAGMAuOMBuCahpLaIAFcTgit2ed12aoIIcDufDNX0oiT/pPS6yvOq5gBcK9Ct7M8n+99RuXhcDwCckr+a4HzF4wAAIwAYIQAYAMYAcAEGrngRrIw3QGZcuaeNmKcC4q0eVNqTgcsatHYG4Ho7GSruRTX3ANcQIKscvXoA4HIjwNVMA67hHPu2BuCM9wADwAgARggABoAxANyRKjmXNbFCbK6cFXTTJ8e2BQDnMizWWierQJfVtYIfREp69e2v25Oh4l7UcBXo9FnTJWtu/ynQlTWs3GWW00+hCpaAzs6NZfWusrW1s3eqhuMA/SIAGCEAGADGADCqljMRQg39x9t5/pz5x4UAYIQAYAAYA8CI60iE6luJezH0toKUIn+/jfS3XN048F8LAcAIAcAAMAaAEUKoodivsg3GASEAGCEAGADGADBCCDUS+1UX+GUcEAKAEQKAAWDc8AC8YNmadjD/KxFCCCEEACMAGAPAAHAHAzBCCCGEEACMEAAMAGMAGCGEEEIIAEYIAAaAMQCMEEIIIQQAIwAYAAaAMQCMEEIIIQQAIwAYAAaAMQCMEEIIIQAYAEYAMAaAAWAAGCGEEEIAMACMAGAMAAPADQHAXfJUbg2HHHxgBbsQQgghBAAjBAADwBgA7sgIcFkAbL6NXwFghBBCCAAGgBEAjAFgALgBALiy8K8N/SKEEEIAMACMAGAMAAPATQvA6RFgABghhBACgAFgBABjABgArkcAriD8mw66ADBCCCEEAAPACADGADAA3FQADP0ihBBCADAAjABgDAADwA0DwLWlXwAYIYQQAoABYAQAYwAYAAaAEUIIIQQAIwQAA8AYAO4gAIZ+EUIIIZQBgNfLSwXAc1fI02csnjh5PgCMAGAMAAPADQbANRcAjBBCCAHAADACgDEADAADwAghhBACgBECgAFgDAA3BQBDvwghhBAADAAjABgDwABwZ4kAI4QQQggABoARAIwBYAAYAEYIIYQQAIwQAAwAYwA4AwAvWLamHcz/SoQQQggBwAgAxgAwANzBAIwQQgghBAAjBAADwBgARgghhBACgBECgAFgDAAjhBBCCAHACAAGgAFgDAAjhBBCCAHACAAGgAFgDAAjhBBCCAAGgBEAjAFgABgARgghhBAADAAjABgDwABwowBwl0j8l2wHHXLwgTLjgBBCCABGCAAGgDEA3K4AnIBeGDgfVgviaz7EFksvWSFCCCEEACMEAAPAGAAGgDsYfQtSbsG36dkAYIQQQgAwAIwAYAwAA8BNBcD5xFgwKOrtODFL7DS/hoIIWrLaOFsWFgWAEUIIAcAAMAKAMQAMADcJAOdqdA9wQcgsxorFaDaFD7MAcBbsTD86AIwQQggBwAgABoABYACYCHAZAFwNK5ZEx/zXLGBZAanWHIBZ+wohhBAADAAjABgzBABwZwfghPPTKwPgYtUWa1VZN/1WzNUwMEIIIQCYsUUAMACMAWAiwJkOkRGAa3V0ABghhBAADAAjABgDwABwkwBwrrp7gAsSYMl7gLMTZgo9tnWoFgBGCCEEAAPACADGADAA3GwAXI0Krvmcn5J9rnJZh0sHy5Izq0vCdrH28xxghBBCADAAjABgDAADwJ0OgBtOHc6fADBCCCEAmLFFADAAjAFgALiz8CfLQSOEEAKAEQKAAWAMAAPACCGEEAKAEQKAAWAMACOEEEIIAcAIAcAAMO48ALxg2Zp2MP8rEUIIIQQAIwAYA8AAcAcDMEIIIYQQAIwQAAwA4yYH4Esv6rFy5Ur+iyGEEEIIAEYIAAaAcXMC8Ftv6Q/yzcWLF3/rtGO+ccqx/e+8g39kCCGEEGp/AF61qkWOAHjRxEkAMAKAMQAMANcUgLdu3bpixYopU6YIgNfcu9ePux15y83X878MIYQQQgAwQgAwAIybDYDXrl07atSogQMHfvPUo179/R5bHvyLq75/6NU/v2z79u38R0MIIYQQAIwQAAwA4yYB4Buu79vrR+d9t9uZ3/7GSd3P/IoA2L7pwk9d0POcbdu28U8NIYQQQgAwQgAwAIwbGIC3vb59y6tvbNzy6rHHHPX89f9oB/q1f93rk2d/69T169dX/3+hS6TG+o92yMEH1iQdIYQQQgAwAoABYAAYdwwAC30XLVk+ftKUY48+cuPAPRPoGzzrjg+IkKtcGjoBvQ3HwOmgmyDeagA4v6xSgrOnA+QIIYQAYMYWAcAAMAaA3wHgVWvXPzdy9C233X7MUUekALC86nd/WeXS0ABwltpKsmvJI6ZsIIQQQgAwQgAwAIw7LwC/smrt4CFPXHFl76NLAbBc5dLQ9QzAMSIW3E4kJkKvBVMyAm16Y9oUgAFjhBBCADBCADAAjAHgwm65f+9Lzv3qDdf37cwAnB1HS9bZPgCccjgAGCGEEACMEAAMAGMAuPAU6O+ccdQdt99azf+FLrurrv5nJSK3uQyh4FzmKdBloWaVAJzA73gD4kUIIQQAIwQAA8AYAC4BwLPu+MAxRx85duzYt956q1b/IwDgtgPgYv3KEfVFCCEEACMEAAPAGAAWABd7DNKtFx5wxin/MX78+K1bt7799ttNSb/NCsAsiIUQQggARggABoAxAJwE4DNPPfH0k4+zzz7tS4F+f/H9Q77b7cw5c+a89tpr1dNvnT8EOOVO3ZTVsMoF4La+Bzg7AAPDCCGEAGCEAGAAGHfGxyBdd911ffv2veyyy7773e+edsJXhb4bHtjrJ90+3+uCHitXrnzjjTc6w7+tLACc231t5yzp2bEzfzXp/PRi+bOANA8HRgghBAAjBAADwLjzAvDGLa8uWrJ8/KQp48ePHz58+K233tqzZ08B8Kp79z7njK/8tPfla9eu3b59O//Rmh74EUIIIQAYIQAYAMZNDsDbXt++5dU3hMGvvfba4sWLBw78/9u72x857sOw43zfNumrvuqfUJQg0VdFDSMJKtuqUaQObKuy0qCN4tZpDKGNKji24qYPlmVTrB5sKZYtybDqqKbkQEAs10AQKU5qJVBEVaYeKInHO/J4R/LIPR5FlSL1QPn6o1ZeDXeefjM7uzsz+/niC2J3bm4e9k5z89VvdnbfjTfeeM3HfuVXP3rVrbd++dy5cw3e9QrqFwAAAQwBLIAFMOcWwCPD925sbDz66KN33nnnb3/6159++ukGb3kFAAAggCGABbAAZosCeHNz88knn3ziiSeWl5cbueUVAACAAIYAFsACmG0M4AsXLmxsbAwGgzfffDM8XVkfzEDHSgAAIIAhgCmABfCsAxgAAEAAAwJYAFMAAwAACGBAAAtgCmAAAAABDAEsgAUwBTAAAIAAhgAWwAKYAhgAAEAAQwBTAAtgAQwAAASwAIYApgAWwF0J4PBbN/Z0RNVF7d61M+jYCgCAABbAEMAUwAK4XQGcDt10DNdYrAYGAKDfAZz+qgCGAKYAFsBtD+B05QpgAABQGsDB/3H3g2MKYAhgCmABLIABAEDfAjj9VSPAEMAUwAJYAAMAgB4GsBFgCGAKYAEsgK9oYBkMAEBfAzj91XdHgA8LYAhgCmABvHABLH0BAOh3AOeMAAtgCGAKYAEsgAEAQL8COP1VI8AQwBTAArjtAbzjStIT6y1WAAMA0O8ANgIMAUwBLIC7F8BTQgADAND7AN44tRVcOzZYWjoRNAIMAUwBLIAFMAAAEMACGAKYAlgA9zGA3fwZAAABLIAhgCmABfBCBDAAABDAAhgCmAJYAAtgAAAggAUwBDAFsACuG8Ar64MZ6FgJAAAEMAQwBbAAnnMAAwAACGBAAAtgCmAAAAABDAhgAUwBDAAAIIAhgAWwAKYABgAAEMAQwAJYAFMAAwAAASyAIYApgAWwAAYAAAJYAEMAUwAL4NYGcPiti5yIabB7186g1wEAIIABASyAKYCnGMA7fk7pRAwzNTNWM6cXzD82m9cWACCAAQEsgCmAjQC3qH7znmYWbMH8AhgAIIAFMAQwBbAA7lsAp8c/MwdFh4+TE2PGTvMSNLmQmMUmZ4vP1LG1CGAAgAAWwBDAFMACeHEDODMy8xqyYEA1pjDzAjgmO4vXHhPABV0tgAEAAlgAQwBTAAvgxQrg0oaMmS1vFel/Y8Iycu21Nz5mse59BQAQwAIYApheAgG86AGcOayaOaVSAOctNm+rCjagkQCOCXUAAAQwIIAFMAVwnwO40ioiA7jZtQtgAIAAFsAQwBTAArhjAbzjSgomVu3eSu8BjinV0nqstJxJAjhmpQIYACCABTAEMAWwAG5XADdO5j2f01Pir1WevEUzF1t6F6vMdRV/CLDPAQYACGABDAFMASyAFyiAO8fc+1MAAwAEsNcWAlgAUwAL4EXpT7eDBgAIYEAAC2AKYAEMAAAEMCCABTAFMAAAgAAGBLAA5uIE8Mr6YAY6VgIAgPEA3jgbPHbs9NLS8eDlAP7psgCGAKYAFsBTDGAAAAABDAhgAcyeB/Dn/9PvbGxsOIoBAAABDAhgAcx+BvA774T/IN9eXV39jWs+ct0nrr7/vm86kAEAAAEMCGABzB4G8Ouvv37ixIkDBw6EAB780S/8x+uvuvuuvY5lAABAAAMCWACzbwG8ubn5k5/8ZN++ff/qkx+6+P2/df7hv/3fP/tPvvzfvnDp0iVHNAAAIIABASyA2ZMAvn3vLTf9h3/3mes/9a+v+7VPf+qXQgAPvfPGf/S7N/zWhQsXHNQAAIAABgSwAGaHA/jCm5fOX3zr3PmLV3/kQ3+59+8PHdXv0G/c9A9/8zc+efbs2RrbE37rxp6O6NYRbfeunY1MBwAAAhgCWAALYM4ngEP6Hj12fP+zB67+8FXn9v2dsfQd+fI3/14o5Eq3hk6HbjqGe3CkG4XuWPHWC+DwXSPzvhQ5PwAAAlgAQwALYArgKwL41ObZv/g/T979h/d+5EP/tCCAg6f+59+tcWvogsoVwHmLSj/NXFojyQ0AgAAGBLAA5qIE8MlTm3/y2I9+/4t/8OGyAA7WuDV0VwI4rzYz+zY57jqcnjllO3/YtlIA15s/veqYxwAACGBAAAtgCuDLbv2vX/zcv/3l2/feMnkAt234Nz6AIzM1Mj4jgzbzUufi+UsbXgADAAQwIIAFMAVw7iXQ/+baD33z3nsqbU86dFt7B6yxkdvtiKHg7ehLoGMis+qSa2xJer8AABDAgAAWwBTA4zfB+siHr3rqqafeeeedSQK4ze/7nXsAb+cM9jYYwOoXACCAAQEsgCmALwdw3scg3XPjP7j2E/98//79r7/++s9+9rPaAdzyu161IYAbCV0jwAAAASyAIYApgAVwUQB/6pMf+5cf/2dDf/OaD47q9yuf3f2Z6z916NChN954o1L97riS9JQW9nDkO2yTE2sEcNXLoadxabT3AAMABDAggAUwF/djkPbs2XPLLbd84Qtf+MxnPnPNv/jlkL6vfu8Xfu/6f3zT7/7OxsbGW2+9tQiHrZjs3L7yBssx0+ODs/RDgGM+BzjmplkCGAAggAEBLIC5cAF87vzFo8eO73/2wP79+x9//PF77rnnhhtuCAF86o9+8beu/aX/8gc3b25uXrp0yRGtoxk/jfkBABDAgAAWwOxkAF9489L5i2+FDH7jjTdWV1f37dt34403XvOxX/nVj151661fPnfuXNW7XqFbAax+AQACGBDAApiLEsAjw/dubGw8+uijd955529/+teffvrpGre8AgAAEMAQwAJYALMDAby5ufnkk08+8cQTy8vLVW95BQAAIIAhgAWwAGZnAvjChQsbGxuDweDNN98MT1fWBzPQsRIAAAhgCGAKYAE86wAGAAAQwIAAFsAUwAAAAAIYEMACmAIYAABAAEMAC2ABTAEMAAAggCGABbAApgAGAAAQwBDAFMACWAADAAABLIAhgCmABXBXAjj81o09HVF1Ubt37Qw6tgIAIIAFMAQwBbAAblcAp0M3HcM1FquBAQAQwAIYApgCWAC3K4BLK1cAAwCAzAA+dWoruLZ2eunw8eDlAH72sACGAKYAFsACGAAACGABDAFMASyAWxnAtd8DLIABABDAAhgCmAJYAHcpgGO+VNrAMhgAAAEsgCGAKYAFsEugAQCAABbAEMD0EgjguQawu0ADAAABDAEsgAUw+/wxSMl3/E7yOcACGAAAASyAIYApgAVwGwN4SghgAAAEsACGAKYAFsACGAAACGABDAFMASyAux/Abv4MAIAAFsAQwBTAAnghAhgAAAhgAQwBTAEsgAUwAAAQwAIYApgCWADXDeCV9cEMdKwEAAACGAKYAlgAzzmAAQAABDAggAUwBTAAAIAABgSwAKYABgAAEMAQwAJYAFMAAwAACGAIYAEsgCmAAQCAABbAEMAUwAJYAAMAAAEsgCGAKYAFcGsDOPzWVZqOydm9a2fQ6wAAEMACGAJYAFMAzyiAd/ycvC9p1KSZX8r7luIl+/MDABDAAhgCmAJYALdiBHg4xQhwZrWmo7d4ugAGAAhgAQwBTAEsgFsawKOnNQI4crB0+Dg5MWbsNL2EzAQtXWxytsgWzVu1AAYACGABDAFMASyAuxrAeY/rVWJBK8YkZY0AjsnO4rULYAAABDAEsAAWwFyUAB6jXgBP0oql6Zj+NyYsa5RqwX7lDSwXL9a9rwAAAlgAQwBTAAvgPtwFepIAzrzdVOaUSgGct9i8rcq7tdXkVV8puQEAEMCAABbAFMC9DeBKq4gM4EbWPo2dEsAAAAEsgCGAKYAF8Nw+Binzauepvgc4Jikj1yKAAQAQwIAAFsAUwLOm0l2gM7+x0jtyS5uz9Mrqeh/Y63OAAQACWABDAFMAC+BFD+BOMPf+FMAAAAEsgCGAKYAFsABelP50O2gAgAAWwBDAFMACWAADAIAuBPDGVnDt2CiAVwUwBDAFsAAWwAAAQAALYAhgCmABPHEAr6wPZqBjJQAAEMAQwBTAAnjOAQwAACCAAQEsgCmAAQAABDAggAUwBTAAAIAAhgAWwAKYAhgAAEAAQwALYAFMAQwAAASwAIYApgAWwAIYAAAIYAEMAUwBLIBbG8Dhty75eIwOHdF279rZyHQAACCAIYAFsABm3wI4XbndKt6qYTxWvDUCOHzLmJlfyvsWf3UAAAJYAEMAUwAL4BaNAAvgBpfc+BoBABDAgAAWwBTAjQVwa69/HhtuLa7N9Dht5pTk9Kqlmrc98WGcOYwcs3wAAAQwIIAFMAXwpAEc/6U2B3B8jk4SnBMGcEzDC2AAgAAGBLAApgBexADeTgycjv1bO4ALnsbXb7JpC6I6ckvS+wUAgAAGBLAApgAWwG0J4HqXQDeyJQAACGBAAAtgCuA6ATxWvAI4pn6bDWAjwAAAAQwIYAFMATzFj0FK3vKq5R8CXPUC4+Q1yfEBXNyf0wtg7wEGAAhgQAALYArgKY4Ad4uYAN6+8gbLMdPjgzPvS5U+B7jgw4QFMABAAAMCWABTAAvgfmb8NOYHAEAAAwJYAFMAo3sBrH4BAAIYEMACmAIYAABAAAMCWABTAAMAAAhgQAALYPYmgFfWBzPQsRIAAAhgCGAKYAE85wAGAAAQwIAAFsAUwAAAAAIYEMACmAIYAABAAEMAC2ABTAEMAAAggCGABbAApgAGAAACWABDAFMAC2ABDAAABLAAhgCmABbArQ3g8FuXnjKk6qJ279oZdGwFAKD3Abxxait4LBHAzz67LIAhgCmABXB7AzgzdGt0bzqDHV4BABDAAhgCmAJYALd6BHjy+hXAAAAIYAEMAUwBLIC7EcBJBDAAABDAEMAKSAAL4IUYAa7XwAIYAAABLIAhgCmABfBCBPC2u2EBACCABTAEMAWwAN42AgwAAASwAIYApgAWwAIYAAAIYEAAC2AK4Cl+DFLyllduggUAAAQwBLAAFsDs5whw4whgAAAEsACGAKYAFsACGAAACGABDAFMASyAux/Abv4MAIAAFsAQwBTAAnghAhgAAAhgAQwBTAEsgAUwAAAQwAIYApgCWADXDeCV9cEMdKwEAAACGAKYAlgAzzmAAQAABDAggAUwBTAAAIAABgSwAKYABgAAEMAQwAJYAFMAAwAACGAIYAEsgCmAAQCAABbAEMAUwAJYAAMAAAEsgCGAKYAFcGsDOPzWJR+P4UAJAAAEMAQwBbAA7nwAl1auAB5j966d6SkjY6YDACCABTAEMAWwAG7FCLD6LUjfzMrNfFo8GwAAAlgAQwBTAAvgXgVwuhgzB0WHj5MTY8ZO00vITNDSxSZni8lUAQwAEMACGAKYAlgA9y2AJ6/fdGTmtWJezRakY0wAx/Rz8doFMAAAAhgCWAALYAEsgCsE8CStWBqx6X9jmrN2qQpgAIAAFsAQwBTAArhXATz5u38nCeAx09PrBXDeYvO2qtKbfgUwAEAAC2AIYApgASyAp9WKlQK4qbULYACAABbAEMAUwAK4kwGc+ZG/k9RvZgGWvgc4vjALcnQ2Q7WTL1YMAwAEsACGAKYAFsBzGwFukMx7PqenxF+rXGl1xSlbemV1aWznbX+lzwEWwACAXgXw2nsB/OLlAD4sgCGAKYAF8AIFcOeYfY4KYACAABbAEMAUwAJYAPc/gNUvAEAAC2AIYApgASyAAQCAAAYEsACmABbAAABAAAMCWABzwQN4ZX0wAx0rAQCAAIYApgAWwHMOYAAAAAEMCGABTAEMAAAggAEBLIApgAEAAAQwBLAAFsAUwAAAAAIYAlgAC2AKYAAAIIAFMAQwBbAAFsAAAEAAC2AIYApgAdzaAA6/dWNPRzhKAgAAAQwBrIAEsADuQwCnQzcdww6UQ3bv2jky70uR8wMAIIAFMAQwBbAAnv8IsADOq9+8p5l9WzA/AAACWABDAFMAC+C+BXB6/DNzUHT4ODkxZuw0L0GTC4lZbHK2yNWl1yKAAQACWABDAFMAC+DuBfB2Q+8BzozMvIYsGFCNKcy8AI4J2uK1xwRwQVcLYACAABbAEMAUwAK4/yPAmW+UzWvImNnyVpH+N6Y5I9dee+MFMABAAAtgCGAKYAEsgMtbMXNYNXNKpQDOW2zeVhVsgAAGAAhgAQwBTAEsgAVwAwFcaRWRAdzs2gUwAEAAC2AIYApgAdyxAN5xJemJtbu30nuAY0q1NLMrLWeSUo1ZadW7RgMAIIABASyAKYBnMQLcIJn3fE5Pib9WefIWzVxs6V2sMtdV/CHAkZ8DLIABAAJYAEMAUwAL4D4EcOeYfY4KYACAABbAEMAUwAJYAPc/gNUvAEAAC2AIYApgASyAAQCAAAYEsACmABbAAABAAAMCWABzwQN4ZX0wAx0rAQCAAIYApgAWwHMOYAAAAAEMCGABTAEMAAAggAEBLIApgAEAAAQwBLAAFsAUwAAAAGUBfDa4FgJ46UTwhRdX/+9PlwUwBDAFsAAWwAAAoHcBvLEVPHZs8H4APyuAIYApgAWwAAYAAH0N4LXB8BJoAQwBTAEsgLsRwOG3buzpCEdJAAAwCuDlldWfHjhSaphNAEMAUwAL4NYFcDp00zHsQBnYvWvnmJlfyvsWLyAAoAecefW1Pbd98/4Hvn+lj4xP+fb3997+ra0zxwUwBDAFsABuVwCnK1cAR/bw2IPI6QAAdJeq2SCAIYApgAXwAgVw5GDp8HFyYszYaXoJmQlautjkbJGZmrdqAQwAEMACGAKYAlgAL2IAZ0ZmXivGJGWNAI7p5+K1C2AAAAQwBLAAFsACeFFugtVIAE/SiqURm/43pjlrl2rmfuUNLAtgAIAAFsAQwBTAArjVARz5pekFcObtpjKnVArgvMXmbVXera0mr3oAAASwAIYApgAWwO0K4AnfAFw7gCutIjKAG1n7DHYKAAABDAhgAUwBPN2PQUpe7TzJxc+ZBVj6HuCYpCwt0hkM1TYSwGIYACCABTAEMAWwAJ7bCHCDZN7zOT0l/lrlSqsrjdXiK6ur1m/x1kZeRA0AgAD22kIAC2AK4E4GcOeYfY4KYACAABbAEMAUwAJYAPc/gNUvAEAAC2AIYApgASyAAQCAAAYEsACmABbAAABAAAMCWABzwQN4ZX0wAx0rAQCAAIYApgAWwHMOYAAAAAEMCGABTAEMAAAggAEBLIApgAEAAAQwBLAAFsAUwAAAAAIYAlgAC2AKYAAAIIAFMAQwBbAAFsAAAEAAC2AIYApgAdzCAN6RoHgipsruXTuDXgcAgAAGBLAApgCeSgCP9e3waebEuQThQtWvv0YAAAEMCGABTAE8u0ugBbAABgBAAEMAC2ABTAFcs+uSV/aOZV7y6WjO4cTk0+S3j00p+MaY1Mx8nFxO8XonWZ0ABgAIYAEMAUwBLIDnFsCj0G0qgDNzMXOGzPwrqOW8742pzZgAjinVzB4WwAAAASyAIYApgAVwqwM4fQesxgM4PmKnHcBjNZ4u8+IWjRnNLlhd5lfVLwBAAHttIYAFMAXwjO4CXTxlBgG8nXUtcVMBnHkpdaUAzrseO297Svcl5rUCAEAAAwJYAFMAT7d+5xXAxWW7Pb8R4MhR69ojwAIYACCABTAEsACmAJ5RAI+Rnl67e4vfA5x36e8MArhe8dYLYO8BBgAIYAEMAUwBLIDbeBfoRii9sDl5x+axiemqjLwb8/QCeDviltTuAg0AEMACGAKYAlgAL2IALwjNJqsABgAIYEAAC2AKYAG8EAG87XbQAAABDAhgAUwBLIABAIAABgSwAKYABgAAEMCAABbAXJgAXlkfzEDHSgAAIIAhgCmABfCcAxgAAEAAAwJYAFMAAwAACGBAAAtgCmAAAAABDAEsgAUwBTAAAIAAhgAWwAKYAhgAAAhgAQwBTAEsgAUwAAAQwAIYApgCWAC3MIB3JEh/adEOiLt37Wx8/jBP1cUCACCAAQEsgCmAGw7gscQdPc1LYlQN4OQM08tggQ0AEMCAABbAFMDN9DAEMAAAAhgCmAJYAAvgWQfnyOTTgnmSiZicmJwtOTE9f0Fejq0ivbQ8S8O1YC8yd6pg1VIZACCAAQEsgCmAt4tzt50BXPo4c/6Ykoyfv+AbC6anFxKZo5XWUvxUAAMABDAEsAAWwFzoAM57u2/PAjgmESPnbyqAq+715AEMAIAAhgAWwAKYC30X6BpfanMAx1xsXDuA09dgZ6508gCutBcCGAAggAEBLIApgOvXb0cDeMJEbGoEuHSD43dz2wgwAEAAAwJYAFMANxLAY2RO73cAF9wEq3YAT/ge4MileQ8wAEAAAwJYAFMA95amLoHevvIOz5MH8Hb0fZtr3AU6cy15ay/YGAEMABDAgAAWwBTAi87iZKEABgAIYAhgASyAKYAXMXpLP+ZX/QIAIIAhgAWwAKYABgAAAlgAQwBTAAtgAQwAAASwAIYApgAWwI0H8Mr6YAY6VgIAAAEMAUwBLIDnHMAAAAACGBDAApgCGAAAQAADAlgAUwADAAAIYAhgASyAKYABAAAEMASwABbAFMAAAEAAC2AIYApgASyAAQCAABbAEMAUwAK4hQG8I0HxxEVg966dU/32CZcPAIAABgSwAKYArl+/6aeZEzHVwJ5eGEtuAIAABgSwAKYALu9hASyAAQAQwBDAAlgAUwDPLSBHJp8WzJPswOTE5GzJien5CxpybLFja8xbfnpiwZaUvgiZ84+tKG91UhkAIIAhgAWwAOYiBnAnhn/zkq90ZDUmF+PnH2vRguVELja9/MgcjVljwWJj9hEAAAEMASyABbAA7k8AZ97sqp13wJokgGM6MHL++OXUm17jBZk8gAEAEMAQwAJYALP/d4GOnNiVAI65orh2AKevwZ59AFfaQQEMABDAgAAWwBTA3avfmACesAPbPwLc1BoFMABAAEMAC2ABzIUL4DHyJvY4gAtugtVIANcYp53BGotfTwAABDAEsAAWwOz5XaDbT1OXQG9feSvmxgO4dPnF829H3wW6dI3bhTedjtlHAAAEMASwABbAAlgA97Oru7j8xdlIAIAABgSwAKYARp3eK/2Y3zYvX/0CAAQwIIAFMAUwAACAAAYEsACmAAYAABDAEMACWACzowG8sj6YgY6VAABAAEMAUwAL4DkHMAAAgAAGBLAApgAGAAAQwIAAFsAUwAAAAAIYAlgAC2AKYAAAAAEMASyABTAFMAAAEMACGAKYAlgAC2AAACCABTAEMAWwAG5hAO9IUDwxkt27dgYdWwEAEMACGAKYAlgAtyiAx/p2+DRzYo0MdngFAEAAC2AIYApgAdzSS6AzW1cAAwAAAQwBrIAEsAAWwAIYAAABLIAhgCmABXDXAjh95XO99wALYAAABLAAhgCmABbALQ3g4tCdpIFlMAAAAlgAQwBTAAvgFt0FesIZ8urX4RUAAAEsgCGAKYAFcEvvAp05UQADAAABDAGsgASwAO5DAI+Rnl5vyQIYAAABLIAhgCmABXCLAnh6CGAAAASwAIYApgAWwAIYAAAIYAEMAUwBLIC7H8Bu/gwAgAAWwBDAFMACeCECGAAACGABDAFMASyABTAAABDAAhgCmAJYANcN4JX1wQx0rAQAAAIYApgCWADPOYABAAAEMCCABTAFMAAAgAAGBLAApgAGAAAQwBDAAlgAUwADAAAIYAhgASyAKYABAIAAFsAQwBTAAlgAAwAAASyAIYApgAVwCwN4R4LMr9Zb7O5dOzMf94/Svau6+/Hz9/uFbepF8yoBgAAGBLAApgDO6Nv00wkDOP1v1ytr5IwDOLnq0QbUfkn71ISlv2MCGAAEMCCABTAFcEkPDx/XC+CxPhwrxk6HVvrpzAK4wbTrWRMW/I6pXwAQwIAAFsAUwCUBnH5Qr696MwIceYVtwRBxZqTFDymXTsxcVOb09EhyD/7HRN7vmAAGAAEMCGABTAEcVb/bTYwAb/fl4ufI2s+cHnPJdPGQcvHEyBc8ftS6Nz8gAQwAAhgQwAKYAng8fceid4ymWrEffZUeUC0N4MnrNHPYVgAv4K8iAAhgQAALYArgieq39ldrV0f6Zk4tfFq8U40EcHHWlr6qza6ioz8aAQwAAhgQwAKYAriB+p1eAHeOaQRwpbtq1Qvg2jfu6utPDQAggAEBLIC50AFcfLWz65/zdk0Aq18AEMACGAKYAlgAdymAVUfVvSu+aXPeDDG3aJ4kgLfj7gLdy4+nEsAAIIABASyAKYBVBxYav4oAIIABASyAKYAlB9QvAEAAQwALYAFMAQwAACCAIYAFsACmAAYAAAJYAEMAUwAL4HkG8Mr6YAY6VgIAAAEMAUwBLIDnHMAAAAACGBDAApgCGAAAQAADAlgAUwADAAAIYAhgASyAKYABAAAEMASwABbAFMAAAEAAC2AIYApgASyAAQCAABbAEMAUwAK4hQG8I0F6SnI6+sTuXTuDwwdTWn78NgAABLDXFgJYAFMATz2Ax+J2+FTxVk27Ycilcy5veqt2ofa2FX9j6WIb2QYAgAAGBLAApgCeqIcFcEGzZVZu5tPi2QSwAAYAASyAIYApgAVwKwK4qeuf08WYOSg6uhY3WY+lY6d5BTWWoKWLTc4WeeHuDAJ4ei/d2Aylq8icnpySuaLixY59e2uHygEAAhgCWAALYPYzgPNat3YDZ3ZaXisWjAcWhFxpAMf0c/Ha5xLAc3npqn5v5AhwzOujewFAAHttIYAFMAXwjAK4eKS3kQCepBVLIzb9byOF1pIAnsZLJ4ABAAIYAlgAC2Au6F2gJ5xhGhWXeVls5pRKAZy32LytqvSm35YEcMxLVzWAI1+3zFUUbJIABgABLIAhgCmABfDc7gKdOXHuI8Clq4gM4KbW3qER4JjlVxqq3Z54BLh4GwAAAhgQwAKYAniKAZx5y6tJboJVMMTX+CXQ9Yq3tQE8s5dujgEcOQIsiQFAAAMCWABTAL/T/mNK5qWz6Snx1ypXWl1xRJVeHlwadXnb38jnAM/spSu4f1jpjhRvZPxi81YhgAFAAAMCWABTAHcmgDuH1vJDAQAIYAhgASyAKYC1FvxEAAACGAJYAAtgASyAAQCAABbAEMAUwAJYAAMAAAEsgCGAKYAFcMMBvLI+mIGOlQAAQABDAFMAC+A5BzAAAIAABgSwAKYABgAAEMCAABbAFMAAAAACGAJYAAtgCmAAAAABDAEsgAUwBTAAAFhEDi69cvsdD/zwh0889ljw8aQ/SP77g8dv23tfmFkAQwBTAAtgAQwAADrJ1+9+8ODBpahUPrgUZhbAEMAUwAK4XQG8I0HmdEfJXrJ7187g8MGUlh+/DQCADgVwpZkFMAQwBbAAblEAp6M3czqSwZaZbZnTC+af+45UKtUaiVu62Ea2AQAwlwB++9KlUgUwBDAFsABuXQBn9rD6jSm60n4rmF8AC2AA6HQAnz9/sVQBDAFMASyAOxPAeddF12iksfHPzEHR0bW4o4kxY6d5BZVcSMxik7NFri69lsYDeHov3dgMpavInJ6cUtr/pd/e2qFyAEBmAG9unitVAEMAUwAL4FYHcN71z7UbOLPT8hqyYDwwpjDzAjgmaIvXHhPABWlaL4Dn8tJV/d7IEeCY/3GgewGgWwG8tjYIfvADHxg+GJmcIoAhgCmABXBLA3hspHcaARzfQpXSMRmHmeOZkxTahBvfVABP46UTwACASQL4lUProXWHhsdDx6YIYAhgCmAB3MYATvdtGwI4c1g1c0qlAM5bbN5WxVz327YAjnnpqgZw5I5nrqJgkwQwAHQ0gA88dzQ4Kt6xx0MFMAQwBbAAbl0AZ8Zt20aAS1cRGcDNrr0TI8Axy6+9I/VGgIu3AQDQiQDe/8zS0FH3Dh1NDwpgCGAKYAHcxgDOvOXVJDfBKhjia/wS6HrFO3lDxqx0ksVO+6WbYwBHjgBLYgBocwA/vf/QyFH9JicGBTAEMAWwAG5dAE+DzEtn01Pir1WevEUzFxt/Q+OC3Sne2qo3N57ZS1dw/7DSHSneyPjF5q1CAANAtwJ42MBjUwQwBDAFsABelADuHFrLDwUAMEkAZyqAIYApgAWwANZa8BMBAAEsgCGAKYAFsAAGAAACGBDAApgCWAADAIA2BPDyyuros38LDLMJYAhgCmAB3HwAr6wPZqBjJQAA2Dxzfs9t997/wCOlfnXPvWsnzghgCGAKYAHccAADAADMhhC0VRXAEMAUwAI4NoBJkiS7rgCGAKYAFsBXvfZqCODlggAmSZLsqz8P4OVwRiSAIYAFMBcigE9fDuCXBDBJklzIAH7ptACGAKYAXoQAvvbaq7c2j50+ubx+9KWjS8/7K0iSJBfKcP4TzoLCuVA4IwrnRaoMAlgAs88BfP31Hz9x/NBgY2X96MsCmCRJLmQAvxzOhcIZUTgvUmUQwAKYfQ7gm2++4cBPn9w8dfT46itHD7+w8soBfwhJkuSCGM58wvlPOAsK50LhjCicF6kyCGABzD4H8H333fXYYw9tbR47uXbo2PKLK4cEMEmSXJgAPnQgnP+Es6BwLhTOiMJ5kSqDABbA7HMAP/PMU1/60k3nttbf+ySkpecMApMkyQUZ/g1nPu99BtLWejgjCudFqgwCWACzzwH89ttvX3vt1SePL22eOnJ89ZVVV0GTJMmFCeDV965/PhLOhcIZUTgvUmUQwAKYfQ7gwMMPf+c73/naq2fWNo5fHgQ+uvS8BiZJkv1/9+/S8+HMJ5z/hLOgcC4UzogkGQSwAGb/A/j1189fe+3Va8deOnP66Il33wl85JALoUmSZK8vfj70XDjnCWc+m6ePhrOg6677aDgjkmQQwAKY/Q/gwB//8UNf+crnX3v1+GBj5fjqy6vLL2hgkiTZ4/oNZzvhnCec+YTzn3AWFM6F9BgEML0EixLAw9tB7/vet17dWj998nIDH1t+cXgttAwmSZK9Sd/hlc/hPCec7Zw+uRzOfB55+H43f4YApgBeuAA+c2Zwxx1f+vM//5Pwl+DyZ8GvHVo7cnD18AuX7wt96IASJkmSne7ecD4TzmrCuU04wwnnOeFsJ5zzhDOfcP4zGJwSYxDAFMCLFcCBF188EP4GPPLw/a+9evzM6aMbxw8fP/ZK+CNxbPnF8Nfi6NLzwfCX48ghkiTJLrj03PAEJpzJhPOZcFYTzm3CGU44zwlnO+GcJ5z5hPMfJQYBTAG8iAEcGAxO3XffXXu+evPq6ouvnlnbPHXk1InDJ9cOnTj2yvrqy+tHX1o/8lL440GSJNl+w3nL5bOX1ZfDmUw4nwlnNeHcJpzhrB17ae9tXwznPMZ+IYApgBc6gIc8+uj3rrvuo9/+9p0njy+dO7u+tXls8/TRwcaR0ydXTp9cPnVi6GGSJMm2evl0JZy3hLOXcA4TzmTC+Uw4qwnnNuEMJ5znuOsVBDAFsAB+n4sXLzz88Heuv/7jX/z9Gx55+P7nn/+rF57/6/937sRrrwaPnztLkiTZasMZSzhvCWcv4RwmnMmE85lwVhPObcIZTjjPUV8QwBTAAjj7jcEPPXT/5z//2c997t9/4hNXkSRJdstwDhPOZML5jLf7QgBTAAtgAAAAAAKYXgIBDAAAAEAAC2AKYAAAAAACWABTAAMAAAAQwAKYAhgAAAAQwAJYAFMAAwAAAAJYAAtgCmAAAABAAFMAC2AAAAAAApgCWAADAAAAEMAUwAIYAAAAgAAWwBTAAAAAAASwAKYABgAAACCABTAFMAAAAAABLIApgAEAAAABLIAFMAUwAAAAIIAFsACmAAYAAAAEMAWwAAYAAAAggCmABTAAAAAAAUwBLIABAAAACGABTAEMAAAAQAALYApgAAAAAAJYAFMAAwAAABDAApgCGAAAAFhUts4cP7j0yu13PPDDHz7x2GPBx5P+IPnvDx6/be99YWYBLIApgAEAAIBOBvDX737w4MGlmJnDbGFmASyAKYABAACArgZw/PwCWABTAAMAAADdDuC3L10qVQALYApgAAAAoPMBfP78xVIFsACmAAYAAAA6H8Cbm+dKFcACmI0F8CN/tdwb7aM9mvtmAwAAVArgtbVB8IMf+MDwwcjkFAEsgNlkAPfjIFKcUvbRHs1mswEAACoF8CuH1kPrDg2Ph45NEcACmA0H8GuvX+y0MSllH+3RDDYbAACgUgAfeO5ocFS8Y4+HCmABzIYDeM8D3+20MSllH+3RDDYbAACgUgDvf2Zp6Kh7h46mBwWwAGbDAXzrfQ922piUso/2aAabDQAAUCmAn95/aOSofpMTgwJYALPhAP7Svd/utDEpZR/t0Qw2GwAAoHYADxt4bIoAFsBsPoD/6x/e32ljUso+2qMZbDYAAMAkAZypABbAbDiA//Pd3+q0MSllH+3RDDYbAABAAAtgtj2Ab77rG3E+/tL733rk+yVznv3Lh74RveR3fejZwXCxowdxxqRUxc0YHZyevfuuintRdWdnuY/JXYv6OU5xp5r7qdX6Zav+I4jZbAAAAAEsgNn2AP692++J8M8Obm8f/NF7T7/2N2e3t575WtHMZ//iu/fELTnld58ZbK88HD1/TErFrvpHK9uJVZft5gTOZR9TK214B6vsVGM/tR+tHDy8MvibfdP+EcRsNgAAQHwAL6+sjj77t8AwmwAWwGwygG/a+/VyH9wfamHf+1P+9OD21o8fvHL6+48vf/Xg4a3hf+CXZxt+dWv/vqeGE7cP/u+v7zu8PXqc+PbwvUOSqysyJqWi9nHv93689fOtfX9KcvNSG7y1/8dje/He7m9fse/pnRp/PWeyj+mVXjHlyo18d+/uGH9lsnZka+XgVnJzovaroZ/acMP+9OBoU6/4oSQ3Mmviu4/D72HyB3rHBJsNAAAQGcCbZ87vue3e+x94pNSv7rl37cQZASyAeTmAw38JJEmSJHuvABbAi67/eQYAAAAsDgpIAJMkSZIkKYBJkiRJkhTAJEmSJEkKYJIkSZKkACZJkiRJUgCTJEmSJCmASZIkSZIUwCRJkiRJCmCSJEmSJAUwSZIkSZICmCRJkiRJAUySJEmSpJeAJEmSJCmASZIkSZIUwCRJkiRJCmCSJEmSJAUwSZIkSZICmCRJkiRJAUySJEmSpAAmSZIkSVIAkyRJkiQFMEmSJEmSApgkSZIkSQFMkiRJkqQAJkmSJElSAJMkSZIkKYBJkiRJkhTAJEmSJEkKYJIkSZIkBTBJkiRJUgCTJEmSJCmASZIkSZIUwCRJkiRJCmCSJEmSJAUwSZIkSZICmCRJkiRJAUySJEmSpAAmSZIkSVIAkyRJkiQFMEmSJEmSApgkSZIkSQFMkiRJkqQAJkmSJElSAJMkSZIkKYBJkiRJkhTAJEmSJEkKYJIkSZIkBTBJkiRJUgCTJEmSJCmASZIkSZIUwCRJkiRJCmCSJEmSJAUwSZIkSZICmCRJkiRJAUySJEmSpAAmSZIkSVIAkyRJkiQFMEmSJEmSApgkSZIkSQFMkiRJkqQAJkmSJElSAJMkSZIkKYBJkiRJkhTAJEmSJEkKYJIkSZIkBTBJkiRJUgCTJEmSJCmASZIkSZIUwCRJkiRJCmCSJEmSJAUwSZIkSZICmCRJkiRJAUySJEmSpAAmSZIkSVIAkyRJkiQFMEmSJEmSApgkSZIkSQFMkiRJkqQAJkmSJElSAJMkSZIkKYBJkiRJkhTAJEmSJEkKYJIkSZIkBTBJkiRJUgCTJEmSJCmASZIkSZIUwCRJkiRJCmCSJEmSJAUwSZIkSZICmCRJkiRJAUySJEmSpAAmSZIkSVIAkyRJkiQFMEmSJEmSApgkSZIkSQFMkiRJkqQAJkmSJElSAJMkSZIkKYBJkiRJkhTAJEmSJEkKYJIkSZKkAPYSkCRJkiQFMEmSJEmSApgkSZIkSQFMkiRJkqQAJkmSJElSAJMkSZIkKYBJkiRJkhTAJEmSJEkKYJIkSZKkACZJkiRJUgCTJEmSJCmASZIkSZIUwCRJkiRJCmCSJEmSJAUwSZIkSZICmCRJkiRJAUySJEmSpAAmSZIkSQpgkiRJkiQFMEmSJEmSApgkSZIkSQFMkiRJkqQAJkmSJElSAJMkSZIkKYBJkiRJkhTAJEmSJEkKYJIkSZKkACZJkiRJUgCTJEmSJCmASZIkSZIUwCRJkiRJCmCSJEmSJAUwSZIkSZICmCRJkiRJAUySJEmSpAAmSZIkSQpgkiRJkiQFMEmSJEmSApgkSZIkSQFMkiRJkqQAJkmSJElSAJMkSZIkKYBJkiRJkhTAJEmSJEkKYJIkSZKkACZJkiRJUgCTJEmSJCmASZIkSZIUwCRJkiRJCmCSJEmSJAUwSZIkSZICmCRJkiRJAUySJEmSpAAmSZIkSQpgkiRJkiQFMEmSJEmSApgkSZIkSQFMkiRJkqQAJkmSJElSAJMkSZIkKYBJkiRJkhTAJEmSJEkKYJIkSZKkACZJkiRJUgCTJEmSJCmASZIkSZIUwCRJkiRJCmCSJEmSJAUwSZIkSZICmCRJkiRJAUySJEmSpAAmSZIkSQpgkiRJkiQFMEmSJEmSApgkSZIkSQFMkiRJkqQAJkmSJElSAJMkSZIkKYBJkiRJkhTAJEmSJEl6CUiSJEmSApgkSZIkSQFMkiRJkqQAJkmSJElSAJMkSZIkKYBJkiRJkhTAJEmSJEkKYJIkSZIkBTBJkiRJUgCTJEmSJCmASZIkSZIUwCRJkiRJCmCSJEmSJAUwSZIkSZICmCRJkiRJAUySJEmSpAAmSZIkSVIAkyRJkiQFMEmSJEmSApgkSZIkyR74/wEeM2hOxVxnsgAAAABJRU5ErkJggg==]]></data>
	</file>
	<file>
	  <filename>/images/errorArrow.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAABgAAAAUCAIAAAAY12rUAAAC4UlEQVR42mN4um8tVRDDvY0Lry2ajIxuLp9BjkEPtixZ5eO6wV8djtZ4ahxtLIVI31kzZ6mTzRxDXTiaZ2JwdkIzFoOA+MHWpWuDvc/WqP09Kv73qNj79dLHizWOt1ZAVNxdO3elp/NJY6M3evpvdfVvGhgusjE/N7kVi0FA9HDr0s2xIReajH8fUQWidxs0T1WZnuqqhZq1YcH6EN/TDnZvrK2B6JadLdDoi9M7sRgEMmv7sp2ZCZe6nH4cNgOit5uszja5nJ0I9cW9jYu2JkWeD/B+7e0JRLd9vTeEB1ye04fFICB6tGP5gbLsq5OCvx1yB6I3W7wvdgfDbb6/efGe/NRLiVGvYiKA6G5c5I60uGsLJ2ExCGTWzhXHmspuzEz8fCgCiF5vi74yJenKvH6ILDA0D9cUXi3IeJmTBkT38tL3l2bfWDYdi0FA9HjXytM99c82Zn08mPbhYPqr7ZnXZ+dfXzwFHgInO6rv1RS/rCoCovs1xccay26tms2ANVHcXjPn2uyK9wcLIOj+ytIzvY2Pd62Chv26eZfba140V0HQ3dbq0931WAy6s2busaZyoIuAzgGie0tzTrRVAZMbNKQ2LTreUgl30R2gi5rK721YgG7QrZWzDpTlPF4VBwmjuwsSDlUVADVD427DgoOVeTfy0yFhdCs/Haj4ztq56GF0Y+m0nRnxj5b5QWLt9qyA3bnJd9cvgLp07bxd2YnX4iMhsXYjPhKoGGgxeqxdXTBpY2Tgo0W2kHR0c4rDlrgwiG2gUFs1e1NMyGV/aDq66u+9MSLwxtLp6OkImLRWerk8mqcLSdnX+wzXBnoBNUNkby6fudrf46K9LSRlX7a3BSq+vmgyesq+OLN7sZ3lw1kKr1fIANG1TpXlbg63VsyE+Xf6Umfb80aGdw0MgOiikeFiB+ur8yei5zWghrVB3qt93eFoTaAXvCQBBjMwKyDLAtGVuf3Ycz91CrZBZxAAU3fFKsDeZfIAAAAASUVORK5CYII=]]></data>
	</file>
	<file>
	  <filename>/images/external.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[R0lGODlhCgDSAMQQAP////8AAHWDqVF2jP8AM4iUuBhQfL3M1P/M/5mZmWhxdswzADNmZsxmAGZmZo6Znv///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAABAALAAAAAAKANIAAAXMICRCQ2mOjAOswDCSDDsYtDEksrHeQBLPLVyi5AAmHEMDhAHR9QYApcjJkjZrtZd2y+16v+CweEwum8/otHrNbrvf8Lh8Tq/b7/i8fs/v+/9fBYKDIwoPLAAFLwUKLAUCkAIFB44CK5MAB42PiZQHgg+cBw+fAhAKEJaZBQCmIqosrqmRkYC2t7i5uru8vb6/wMHCw8TFfQTIySMLDYgELwQLLAQB1QEECNMBK9gACNLUAN0IyA3hCA3kARALENveBADrIu8s8+7W1iMhADs=]]></data>
	</file>
	<file>
	  <filename>/images/folder.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/folder.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/foldersmall.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/GetTag.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACqElEQVR42pWSS0iUYRSG3/86FzW7oJRjRaJGblwEgRFtirBV0K6l0QWCdhpi0LJlLaJNBNmigpCIga40pFkakTBhRlppjTccZ8aZ//Ldv5k2FUFa9O7Pc85zzjHwj9wdKdpCqwYhdIIyVUe4aCVcXAypSPmEHzH+Vnzn5UpMCJ1SWnYIqSGVglYCsYiJTNbHl8Xgsf03AOXirGtVOmrjJrgsgwsDlJsohRxRx0C+6B1Yc4JrjxfckKvSlvVOlHKOnMdAuUDIFGpiFj5+zePb7EqPuRbgVGeD8Ai99DXrIWQCERsoBhwlnyAgFIVcAFEKp/5QuDmY26ankxeklNbpYzu7Tl4epR5V5zdvcKM1UROLOQbLjCAoBRA+Wf6lcGs4HxNS35alucNbo0sRx3GQTqf7u7u7uw6ee7BPUf60sb4mVlXtgEuJ8ZFpMJ9sN350taWUHyKO0YKKxuJ0WjVv4PbExEQ/pfQEpbT2dWFPm2Ts6ebEupifD5HN5D6Vy6LNBADKRAPlqiXuApZRhrOp1R6eccWUs/8GpfQ6IWSkpfLos/TJoZl3GbKUWbqvNGufHOpVNgAERCQADcoqmM8TVEUNxDYmXDn5/llTU5NTX1+PgYGBwe32k72T4d5dk0O9mZ/qNgD4lNZZBhCyCgLCkF2RqI3baNzR7Lwaf4H2YBqc89FkMlkAkoXfl24CQMmnrUJyECbhEQ4/ZJiaK6Doc8Qad+PBGyWzuv3Maue2zlwdc33CU3XrXcsLGVzLgG0BtmlAlzUyM8so5Cp9Yw97h1YD2EWfBuvipqOVQkg5ZudL8FdC0ICBBRzUC0e11lfWeji7GJCUWXE6P+R8zM0VpAxZnxZqSjOxrISY12W18PF5j1oTQHxy1MvKe4ryA4qK6rcDxwX+I98Bx/ui3T5ZBwsAAAAASUVORK5CYII=]]></data>
	</file>
	<file>
	  <filename>/images/groups.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABlElEQVR42o2S3StDYRzH/YtzgQsNkRR5mYxZCWsvpYmlZJk0i04Mq1NiXmaeCxei5GWbbR65kcJY2ePCfr7PKbOcmfOrz8XpnPP9nedzvjWmPqXWG8ns2lfSbHgZhFLMunjJBhYuWH/gnFn8Z6x37pTZ/IzJZ2t+j3MtE/dtPzAj9EwdxnUBcrNR2idiTBcwHLphRGSIVveePsC2lNRuqvFUaj569+7ZvBXuDRDOCtdqWjiUpBhbuRKjoQvRPXsi4ILDhfknIJjQAqZVXgjEHkU1vOq9gAsOF9lSQJfvWAuQm/9jMHgt4ILDBS8F4HPGOyaP2FAwIXL5DyDEy5ukUOJZ8loQ+fePHJZxuOCVXHB5M3KQeJpWs0VsIvSC0AvCMQndIPSC0AtCLwguCMs7y11oAa5whnBOQ8DFZ7kLLUBuNgpcULmLGbjg6AUZHbigSi7+fKEoKUqK2nWzc6dCAIRVm+8QOeaxLX0AXBg+gsmi6APgQoELTVCbZ59anFFqcmxT44hKDfYI1dvWqc4alr9QonwBRdCT/JJs1ccAAAAASUVORK5CYII=]]></data>
	</file>
	<file>
	  <filename>/images/icon.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/in-edit.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAB9ElEQVR42qWSPWhUURCFv7n3JVldIqhFohLiQjpthO0UItiIlYJkEUsFUbGIjYIgaRStAoEQsbM0IAFDGrUQYmEpNinEnxV3owhbGPOieW9mLN7bGLsEBwYOw+W759w78J8lZ8YfXz12vH6/k3rVHTDDzVBT3Bxzw1Uxd1wVNWNXb7a6tNS6MTfZmE7qR+tTPZVqGKhs6+LqaqpTwHSSZh7Szs9tW1/LPAAkrs6d8yPbBly816QAuAGwnisOuDlqYDhmjpqhuRftxro6tcF+1LQA4F68ZhDEHQ+CiyMmhCCIBEQUiU60QJIX5y0vAV1SAFwEBKKDCZg50SFIJBFQcTQUjk2tjGBefqiA+z8gEXB1TMAFCEK0WAC6EbqiYEghNoEsERIz2vMPWJ6fIf38jp6BAxzuGy0AeZZtOBDA3RERfBNoeeEhK69nOXL2An21Q6y9fcaOxRfUTyTXgpdZIiClCyl1ECGI0HwyycjoaSrvXyKPzrHzwxy14T24+HhiZn8jlE03Slnr7SaVwRqcur4xSyb2EU0OJq2PzdnLk9mYqWJqqCpmhmYZZoa5M1bZTfpmgerTK/xe+0oKrPyIaKQtW9m6xcb+id7+6q2hvXmShC+sfM/59C1q9stvy1ZX91Vj6OZqp30pqgxr9JbDzMnnevcP5hoKlIBOhkoAAAAASUVORK5CYII=]]></data>
	</file>
	<file>
	  <filename>/images/index.html</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[]]></data>
	</file>
	<file>
	  <filename>/images/JS.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAACMAAAAjCAMAAAApB0NrAAAAwFBMVEX///8UNkP///8AAADy8vLg5ObAyc3Dw8M0NDSRoaehoaFFRUWurq5TbHWxvMDS0tIjIyMsLCwUFBQ7OztDXmmClJskQ1Dv8vKysrJ9fX14eHihr7QzUVyQkJBlZWVieYJ/f3/r6+uJiYl5eXnQ19na2tq+vr5yho7e3t7MzMxERETOzs5ubm5MTEwkJCTv7+8bGxsEBAT8/PxZWVkqKiqqqqrm5uarq6tWVlZISEi8vLxVVVWdnZ24uLgZGRmnp6f1tcsQAAAAAXRSTlMAQObYZgAAAXBJREFUeNqtlNl2gkAQRLEQWaKogECCG+5RY9SYffH//yqzMMOIGF9SLwzFPd2nu+nRtH9UVSo3MjszHEuXssYv2mJEjd2S2ZbDkLYJKXPojX/W1HiMmW22KWQpCNFwmJ68mx5JqgMVqQY+AHdATqGdUMNAq3nGAI2KonJmXrnKROzZjdC5zLjsGYicjGF11WRkJPw0mHCaM7Q/CuOKkIQStRPoRmFSdGXiuSF6qNVVxskDEdmAf8600gLEc50y7RTGXO3Pw3OR4QM2OoLpoNcvMlMxy4wKcL8pMvxYk1AXC6+cCV0g4F3C63s5kyvBenSFCbA/rAjz9SZbEhWYIOJlPfkm7MxDxkxsOpFGAhx1MtKZr/x6yGtn2vf0GQlzeyej0GbwHprOgi3Jod/UCgxtKt+qT48t24pvoMKEbDhVuaRyj3MmrOHbK911wYR2hOm2Xsqwurji7ejCpUH7w/bb38QXbxZ+b+yW8dX754/Pv/61G2KLqFr2AAAAAElFTkSuQmCC]]></data>
	</file>
	<file>
	  <filename>/images/loading.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/marker.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAABEAAAARCAYAAAA7bUf6AAABvklEQVR42rWUv0sCYRjHO0zFOCoSSUFsq1AHoSkaisAGbXCRlsAtWiSD1v6AoMUtUAQnSRGkpNGoIWjMoU0qInSRTNGwunv6PvAeHKbm4guf4R64zz2/3puYGNchIgksggg4BodgE0yNKnCDC9ABClAF3+AZ7IHJYYIQqPJLrVaLSqUSpVIpymazVKlUSJwuyPTNSmRQVVWVCoUC+Xy+rizL9waDIWM2my/tdnstGo1SvV5n0Q846dcDLkHN5/Nks9leEQ6DGWAAZrAE4Xk4HKZ2u82iFljRS7iJnUajQR6P5xOhEJD6VDxvMpnu0uk0iT7F9RKeglIsFslisdwgJA/p/W4gEND686CX8BjVeDxOeEz8M0C3y+XSJB96yRFLkskkcSNFHwadVa/Xq0ne9JIt3oNyuUxWq/UJoYUBApafxmIxTXKll8hsVRSFIpEISZLEJc31EWw7HI53/phYxP3eMR+Ar1qtRsFgUDUajdcI74BlLoEzYEEul9Mmwya5V2ICBf5Cs9mkRCJBfr+fnE4ncQ+4BJEBC3jj1gat/Sw4E/dGpb+HS3gE66Ncwg3AG/UiVrwJbsVtnh7Lr+MXM921rfVCPpAAAAAASUVORK5CYII=]]></data>
	</file>
	<file>
	  <filename>/images/mask.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/Min.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAACMAAAAjCAMAAAApB0NrAAAAdVBMVEX////z8/N+fn6vipWjeoX07vCIiIhSUlIPDw+FhYXo3uGMWGd0dHRmZmZCQkLGrLNqJjnu7u5LS0vd3d1dXV0hISGZmZnS0tJEREReFiq6urr29vYkJCTRvMKYaXaWlpa7u7u6m6SBSFg8PDwAAAD///9TBRvc5fvrAAAAAXRSTlMAQObYZgAAAJFJREFUeNrtkUkSgzAMBJ09ZCPscQAbY6z/P5ExXC2KB7gP0qVrpJKEiEQie2jsBOzRt6o8hJS20w7o24BavMqQ8//1BMwwon6LasMZH8Q7bYeEJ5EiBJnwLPGBkyJDnuC8a9a5SAQZ1llmOUXUe0dbdmeVknR+aTfxTibPG85ywzrJruspLfsLm9/z9SXNrv/N9OsWK50hqQAAAAAASUVORK5CYII=]]></data>
	</file>
	<file>
	  <filename>/images/ml.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAAyAAAAAFBAMAAABP15VDAAAAElBMVEXd2NDg29Pl4djs6uD39upWVkaCjt6rAAAAIElEQVR42mMIMRJgGAWDCIxGyGiEjILRCBmNkFFAJgAAyHoC7/OwqHYAAAAASUVORK5CYII=]]></data>
	</file>
	<file>
	  <filename>/images/mr.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAAA4AAAALCAIAAADA5ys1AAAAJElEQVR42mO4e+MCLvTg9uWnD2+8efXg+7dXYWFuDKNKh5BSAAx1edikuuYkAAAAAElFTkSuQmCC]]></data>
	</file>
	<file>
	  <filename>/images/ms.jpg</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[/9j/4AAQSkZJRgABAgAAZABkAAD/7AARRHVja3kAAQAEAAAAZAAA/+4ADkFkb2JlAGTAAAAAAf/bAIQAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQICAgICAgICAgICAwMDAwMDAwMDAwEBAQEBAQECAQECAgIBAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMD/8AAEQgBkAZAAwERAAIRAQMRAf/EAE0AAQEAAAAAAAAAAAAAAAAAAAAKAQEBAQAAAAAAAAAAAAAAAAAABQYQAQAAAAAAAAAAAAAAAAAAAAARAQAAAAAAAAAAAAAAAAAAAAD/2gAMAwEAAhEDEQA/AKxWYWQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH//2Q==]]></data>
	</file>
	<file>
	  <filename>/images/notes.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/ppbmDonate.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/revert.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACBklEQVR42r1TQUiUURic9+9qqEW6aparFApiZ0/VRS/tKRZaiIgOJR0V7KIdNOggdZOgDh2FLiJezGMaWIc8SKCgkusuKivVQSNSc9/M93fQtjU7FEQPPh4z8A3vezMf8D/PzZGr964/T0aKueBvBJjXDXo+K+ZcMeh+1dlotJSkhKg2UbWkIC+QQn1lHEZhJZd5PNH1sueQQPdU5wVJffHyhmRVWQwVJRWIBlEoFGQGM4Gh4EXMp+eQXlsZnOx90x8FgK7J242i+lpj55N1Faexyx0ELgKaoIOyUAXsPUHPUgCIAoCoVPx4Q7K2/BRoRJ5E+uMish+yKIzgifqaOCRhZTXzZLr/bW+xQOLksUrs+G1IhqmFqXVRY6O3Ju4W/1HHo0tz8pydHpjpPuQCqbayknI4BMht5kDPI837LnDEe94p5qIAQE9QhHMOXgTz/K2Nr+/PDP7KBQf+zm593cKu30HsRDW8Zyox1D70J9lwAHBt+EpPfVV8qPlMMxQatne3sby6jOx6FvQ/cyBqH0tYePreFUbwnmOZXKa9NFKarI3VIY88Wppa0HSuGRYKZgaaYDDIDOOjLwoviADA0nj6S9Pls6sbnzZqvu3ttbrQwQUOBuw3hwYLBYUhQhMW55ew+e7zgyNR7nh4sZFeKZIJebWRqpZXIAqS4cdtMmSH19w/2dDvlBNR315yTx0AAAAASUVORK5CYII=]]></data>
	</file>
	<file>
	  <filename>/images/scriptdeploy.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAAH0AAABeCAYAAAAOuBu9AAANVElEQVR42u1dTY7sSBHO5TAbMzM8CSGERyMQiFlYCAkJNtZILGBVYjEbNpZYsrHEko0XHMBH8BF8BB/BR6gj1BGKDoejnXZn5E+Eq15Vt1OyePSUq+z84ueLn8w05hjHSBynl6t9uQbzm7+dzbfl9fX61V/G6e/GNPPnsmO6nndkE5C/+OPF/L29mn+PV/O/K3/Bf/9HdzW/O11f7utfruqYwucapfnqu4v51+AHmrv+e7lOgvL1r8+z9h/jwUdl/lAhcBLAt+Cj5pfHtD464Fqw7Qu1/RgPOnLz3V8vuwIO7gEJ3jEedHTmP2c/iETUiLH/8k/I5H9o3EQPrAYI0zFiRjEryGBd3UyIs9touc+sg28GFs8/QDmFdGDKQTDoHmTxH89i4jw1VhibB8AGgK+e63ILi1mbf/Y86Ah4Ec0LAHwkcB+JuQPQZw9wg4PQNgGwXd+xm9b3LFsHzU2PubMP5MtBGcYE4Pp5fjrH3ytLufJZabafG/cCfmC1HP3yR8uy5bNWNpMVxH/njHbbgJwNZi5P8z3lfH/vMNe29uYRz9PvC/z3P/KgA1H7GIOsk89Ej5bVqzZgV4nASSIb+zc73et+W/Kg/7m+JvjzZ/bHlwQTbQtGKwSNtNwogFdxpsGbU1dL1UNrd78xu52DcZOZ3vrulHkp5u+/bIRMwn1qS/jEZr71FlRQ26t3CPi4CYmyiHu2FqGKVqz15wvrOySWtFcIzfwAAKwvMYOErnmHgI8JCSQCrt6w6iJSM1vGVA/CdyDLIdT2Lz8NwSILVM7gc8+fZRsE5rlyAFdbliILgDMGNFZSlKotIRSNMqjtcEGqFhl9Y54zlGsFgPuAa6042zWagDXI5+8ehO9zni/FhFAaNaaYAjX358q6lcJwJwQcp60kLK3y+2MskKp83UUDDxcUW3ZOD0YAR3ntKlFbz4LERmbCuW/6zNkBZozPzazIQTI091rAg/+OBR6Yf1p+Xv5cIGRgZeAC4fzym1gQCYBCoOUxoVHlYPMphRJ6PqnLuuwxwfVUNIntoIHPff/j5YahXeGsBGLNPmQ+cyHhyay4OpYgnjcJn1irkisSLvkeJn6ZaNCkFHOPod0tNL6ctNz1m2ES1HnYcyih0iY94zL5oyDE7RVmekx81gitj22UXGrv2UZjTpYvtq8yWutcnT3h7pxdtSBS2ykkTA1tK4WZroWCHTR1TZTJX1K3+fS/cA9YCwCI7oXPwP8H7gD/fd1D31tA2sStmz4H98C9EGJi3iAL+MouwjzavzOYT78fzM8LTVGkE86x1FJShu9GvhVMfqgPHsw8aHyoBctX3YNmDJu4Aci0yGKdPiUmT+XM1Eiimb4bfsN+XuwlkFgITdq6VyRbLre0aFkQeNDoFBLoyvfH3A9CQYJB/0ZeMRqqZYPWQiURrUjrMLutUzgxHC2FGtcqzHSvEJibpsqzSRNT++Ph86S5NNEpRNEFjItrgDVwfS8IKrZyoRkny8HnIKpE30y+9Sy2pPJ7xQKTW2YyJOWnpHh+iqs/DZZJxmZKX39e6AIAJStx4Fl+mvs/A89F1iPev48zadV0Aku7lco0MvfFV5fJpNJL2hdpA7DnpTW3nqSS0xJXzh4Bf+tPOdBoeRQ8A2cN4Pely69SBBajhDpo/Rb2PShS1IPCNyeQuVjwCAzQAhCSmCINTbB7EhonN4DfwGwb9ptxzwca6NNmYvvahRtx/v1kmddG4V9bBZk7x1qYLBq8/SetjxCS3JOY4U3zEjbV7P0gFFzPv8094kBvLdZeKghZrRCYoJXIDHVvcpOy14Wxe+t8SF5I8mA27ouM9/W2XwSrwXUF8QI1rmL3sJ+1ew0yRbJEIzBNyK2gBkC2zfXiIOEk7aG4PD5F26zMDyRkwl24pdNEwzNxZv9tF+/gDfncQpqqbRe5f31DpgcF6J7nJunnYmrUttb6ot787Lfja4ZNuqiRkizwPZxpXYPmJnvwNw502DHDHvDcKSFf+uLLwqGdUuCMwkqcfM8d7otb1pYXVihXq8Os7eS6/g4gxYDOvQMsrgxV6HzsHzlBCvuuHJN9Jxb+xjW0POmI2VJkG77tBXboWmtJy1oizh9jChUzVJAO5pJIwAlc85CejXMVjxoF6IMCdOZemIh7gAcTSnntNND7KH/sC8eIk/hCOghx+OihTgQpfwDQM+7ecjLd9wAdLuylW6pXkOShqhpkxcD02pYEwVhMJSR1OGKo2RcH8wANa/EoMQXPGAbvLGHSNwDde281Tb500lJIFZrKIsIslZZvLFegE/Ej4QDBgMSM6/lDxR6wAEt7VxUkpXGmfkhn0vcHfamRa/aZgQnEUKybLpfW7LsNSTEDcJoYLufrQTsBTLt6tq7B56soxickuMInE4RYp0cEHYcLdKqGuXw0lTFRW7qoJMptdqUYAppZWYmVbv53wfYIgJC4wA+v3C0ZcB8WdDdQqJ3dfFEtmuq1NWvuOK6ge4k00OVr6qvpfbH+vhSa0PdLQE9t0/7MoMsaCIwnQ7Y/6NxuWKiZqQWL3MgbOhu2mHR/9h51b+WMvfcGHTY+2HtwvwUuKH3/ulJhijlwHxZ0d7YLTaR5aNCByHHMO33S3gvoWRzoLsYt3XaEAx1zyaXZtyde0wu/J+gd8169kXfPaCp0wfdw17OxSya9OsTlwu1ULn43sf7c0ogycZLc1TcI09IB1IA+fJ6wS/4ew45su4zuUgFgsKDTTa6E2qIoC7Z0zdjRwzATNBKMeqcK2a1AH29pouXvwdWzZT/aJNfdKQXrqvDB37etyUA6F3beeECvkq3U/v5XA5y0hToi9evywbjFZ/qPct0pdlKH0/qYXvi3BZGLpw+AkjP95E5IiJYGT9qsLzPyRRI+cEsjX5emSepEkEdXMkVmHvn9ZTESaKdrz63FuUQQgPuTr3F1DCc88Hdg/lAMgpQtfJaaO0AoMFU7bAhansA7KiVw0kJNkDwWnmxcanLDvYs0kqqzWYoPY1Jen+ts4SwEWYFYNwPgc+QTGymq1YRu28Ihe7dwjS2jl7qLThHlCLNxaDrLJB8U0mDqtYOJjFkVM/XJfzO++reUNmbJqRQuAVo3c2Zey/J2vjRbeWpWn57DvsOV3EjLxsmWN6W2THM9bikrWuA5wXSnkM1Fc9wl2KUuv2XfGuCk90Y1VLrZb7iUuLiHmBWsUn8dE1qmr67JkxpIlnxF7yGNlcOfS9m3pv05Kuxs2MV/4TiymSYktBSZ1p/bnTExLdWxLcyy1TVDYts2LyhLjj/b+GQpEauNfHVLVFWv8zQN0LLe7c4RwzQBsQ2Si29uzdL8sLRUx/ata3r6NFYDBca949ayF35l3m4wJPXnvYIA9jEEcIheVqxZ8EALESkcguKL3f4U3rumUS1njrUaLkHGSMZNDhctt9uiTkbXMHK5JYkzU7hxi87XPfreYZIB+D0WIG41navDw+9t3RWdLec/8cJOxGhOnywVWbzIVTEpK1Xj+uRw64yUrchuQQLdANWvPpOzGpCkcQmYywJgh+8WLNrUSGraNatVI8kj+FoysanmG4Ben61arln9C1sGrb8VqBxwnLART+EsEbWHxTD7bYv2elfJTmmeC4U/P6WalfqVqAFg1Ju+vZaNCVoTPjNsOWuMznCzL26bMl+efiFXfHwvETR8r8z4DjF6+1l70MZHUhKm2XZESx7vOlpP7Du8HvQH5hWABi1F8lRNCxQ50paaO0DXdPImYdap2YZJf55Vc6GL7UfzJCPUwmxXwLZdN8tphXSmO5hmXI2CGgtC4ssjAIDYxn1amWpfShl9eebIW2gPzNPsrduaJzqAYe8WZrOZOGTVYB1AKGi7lKVJo3YCCMDybqViCiSa3v5KaSU0XODOw9/C/DkGnh7pcg38Rkm0H6xmJ+ZRwdpPSoG58+BCRll/nq/U6Ns6BMMtMPOgyRyJQ0EsHGb9bMXHki0+S2WY15mdNwK+vXmHiyIFap1ya5R0lAHTG96cwV1UoTDpYpamhUEAwKAI8ygv8PQnV+/dJk3g8I0hvrw+xuSdx4/XG3KZYmorJWjNM7H2ew/7PDW3xnJpYDcr5ohbkWDiyTV0yneqDnj9hIc7QG8pMa+XM7sO4iHAuc6YWCDbHbT8csAaHrVxn5FKB9fTttuFJSgErn1ktq8Vqo3IjpVGt1P0HnmBDzXskxNDpyE3Fsixx1iTiW8CgGnSpq15orTro4zt6cbUB283i7TGfaBuzESPDCj2cZ/SzpqQUB0jMHmDiT8+OyVNWjmAsQHXxNXjoeX7hIidWZ+JfrUIWWm5hBTgz1YMvz3QVzpaozsq5BiJxMk+dvuUoO2jFS5qeuE1JzAfQzhysz47PbQFaLGxHBrAC0vg8gOK+/OAkXEDyzFib12F5rjrUyCxdIw7mfougfzZZDGVcXN5hWN8ZgJ4cYBNCzbJnA8bt5BHfPewCRWP8YBm37fGPXO4BWqVtjuDakcYeQD+5G6hT8wL1Me0vY9RMURvq90HS3+H4zSTM+rsobPuDrCPcYxjHOMYxzjGMY5xjGMc4/2P/wNhnT09WjaGWQAAAABJRU5ErkJggg==]]></data>
	</file>
	<file>
	  <filename>/images/state-false.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACn0lEQVR42n2TX0hTYRjGvYkuuikouky6UKN/UpRJtf5YCSmWJV5laF0UiKEF3QSFXnQrEuJF4ECCiIouarhIcXObmx63s+mcZ5vb3NnZ5ja34+bOthR5es8uxpbDDx443znv+/ve877PV1Hx39IbTNcX7Y4fXt8qhGAoL3oWWeuCcmJSU1mx12IYy2AovIa0JCGby2Fraws7OzvY3t5GjvZ+PgDTLNNZNtnC2galTAab6TSSfh6WvldwvnydF/uuH0mez4MikSh0emMphEqrTSREiBsbcH/+As+jLuRGx5AZGkZ25CNyyjHYmu4hYluAJGWw4vGJlHOwAHC5V5Sx2DoCzDxc9deQfjuA1LPuEkkD78HWK5CkCqIUO8eYewsAPiCIcmn2nl4kbjRCbGkrq4TiFmzDI4jHE1SFd6oACAhBhMJhOFrbEa2tQ+zilbKKnrkA0+MnCK9F4Fh2ogCQuxsKhbFIAOFYFYTKGgjHT5RKfkffNPfbIE+K41wo6oEHQQIYO7rgrazeU9ahD9SDGCiHLQDIJKxMtavGsXDuEparTsNBpxaLo/LNd5rgs9qQTKVgNDHK4jF28ryA9fU4pl/0wdrcisWrDbDUnAV76jzs1FhTQyPYUWV+Ar5VP3a5kswxJQNkuv3rd2g7n0J98zYmmlqge94Nt96Q736c/EKxg7ucODtnPqLTzyx5vL48JJXaJGMlkRA3IJIi0RiWHBwlz3wjM+0vSc5ksgcooNa94mnXThu0hhnTX7I2aA/O6YbZYoVGq5emdQYV53R1UL/q0mnpUFkABb/RaHWj6t8T+l8qtf2nSr00rv5jnJzSfmLmzf1lAfLKZrP76D4cpnFWe33+y2Tvu8uc8wHpodPlbqYrrRCCwZPUp6PFv/APVTNnxtHLXwgAAAAASUVORK5CYII=]]></data>
	</file>
	<file>
	  <filename>/images/state-true.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACnElEQVR42n2TXUhTYRjHvYkuuikouu2ui2686yKILsrAIkj7IDJZGZYmzqBAWR9YYJTBCKSuahftoiBaoebMbWdn29nm5jZNN8++nO7Tfbu5D1Pk33N2MVwOX/jDed/zPD/e83/+p6Hhv2XgzGfmF1yKpcAywpFoRfScdcz+kanU2mMNey2r1S6NxlZRKBZR3tjA5uYmtre3sbW1hQ3arwRDME9bRXWb7Y45abFUwnqhgFAuhiHjMN7NvK1IanlfORNA8XgCeoOpFkJXa8xkssiureEHP4HX5gFwYQXUK3Jog1/BRRR4pHmA+bgbxWIJPn8gSz0HqwCP1ydLJlOwhxaosA0/vSP47Bys0ZjvA7om25DIpZCgWovV1lcFBEPhrHC1YdMQhi0ijNh76urNdDtk9i9IpzN0iyWmCgiFI4jGYnjGivGca8VL4/W6empoQb9GgthqHK5FN6oAwd1oNIYnWjHEmrPoY5rwkDlfI+FMeNc9IYYwKZ73YIcHfkQI0K8ewH31uT31cUZOHiRBPY4qgELiEKhKJ4u7qiu4rWpG+1RTje4xl9Gj7sTcsgu5fB4ms1W2c4yiYDCMVCoNieYVenXd6GTbcPX3BdxQXUKXToQ7Ux2Q279XJhBYXsGuVFI4GAEg0BXzSvSqJWgd7cDNX914zLwA57VV3E9TXqhWuiuJ0xbbEb3B6PQvBSqQfH6dgpVDJruGLCmeSMLp4qnZ+I3CtL+muVQqH6CCRq/Pf43VcSxnNP+laIP24N1e2Oyz0LKGok7PjfNuzy3y62ShUDxUF0DFEi2r/6ScVBnGxpULo+NK54RyyqRmWLl1xjZYFyCscrm8j/6HwzTO42TSKYp38yLvbiG1uj3ei/RLnw5HIifIp6M7P+EfY+R4usBp3woAAAAASUVORK5CYII=]]></data>
	</file>
	<file>
	  <filename>/images/steal.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACd0lEQVR42rWST0ySYRzHgdd3viJkvKDyRxj5B5Qa/mmN1JCsZvzTg4OmDMEBWWwQi2YE1GDiWAet1jzoSg9tNBceaq1La+veqq3V5qGDh24dautUZn573vfA5hbZpXf7Hp73/X4+z+959goE/+O5OHVucaS9Hm1sDToVNehRMzhrPf7kn+BoOJh3mZWgREIIBQIIhQI0MCKcNskRDkze2lcwfETHQ3W0EFKGgu5gDVgJDUmtCO1NddiPn2PFFBiaQkN9LXoOKSAj664WKcS1FLQyGhQlWiM9bTVBqaGO2jV3tqK0kMRCahqPitNYvDyO3CU/OpqYX2S6LdILVR1h2qbfXL89C2OrFlNjNpw42oULPhfsQ33IjnV8IBVVVbhvJMpYrdbyWmIY31/fx8ZSBlfC49h8dgcPrw7DYrFsmE+dF/8RttvtBxwOR2FwcBA+nw9+vx9pvw1z4TNwu91YXl6Gy+UC2eAu6Ur2wAQUEWBFp9NBoVBAr9djYmIC5XIZpVIJHo8HxWIRBoMBWq0WRqPxHpHQFQHZISaVShEKhTA6OsoVeAkHr66uwmQyQSaT8YJ0Oo3m5mbu3VJF8PZ6587np9eQyWRQKBSQzWbR29sLhmEgl8vR3d0Nr9eLQCCAeDyOxzensDKp364I3t3o2v3yfA7BYBCRSAQzMzNIpVL82ul0IplMIpFIYH5+nhd9fVHAq5RptyJ4/yCefpPu+EnOBZVKhVgsxpfz+Tx/fm6qXC4H7jt3By9nD/8gTGHPRW6tR6UDAwPH1Gr1J1L6RrKj0WjQ2NgIlmW5bJN7+ahUKqNZf3/T337nNpIhkpMk/SQtJHS18m8kfwz/+zz+/AAAAABJRU5ErkJggg==]]></data>
	</file>
	<file>
	  <filename>/images/support.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/tl.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAABkAAAAALCAYAAAAnQ0EyAAABz0lEQVR42u3dTUtUYRTAcaFV0DcI+irthojWFxE/RMuoQFyFuItwG+LGhbjtC7gJXJSlzIzjOG86b7dRMW0TnO592ogg1aoZ+F34Le/m2f4558zN/cOXZZXHhTeFj4Xdws9CAAAAAAAATJO/iR73C8uF0dLS89jeXo9adTe5vhrFj+vxDSMAAAAAAID/7k/x48Xi4rNYX38bed5KwePyoh/nk16c5Z2YjNvxrTRqJTkAAAAAAMAUuCt8PCqsray8jH6/HleXgzifdNMPo/5RDHqHcdqtx2mnFiftUhUAAAAAAGBq3HXnY7NcdVWutbo460U+PE7Ro/yhe3wQnaP9aDe+RqvxJVqHAAAAAAAA0+V2/HhYxo+dnQ9x/X0Yk7wTw5NGCh+d5n4KHsf1vWjWPidH1U8AAAAAAABT53YAWdvaev87fozb0e8dpomPm+HDowEAAAAAADMTQLKs8mp19XVae1VOfpTxo9M8SGMiwgcAAAAAADBzASTLKg8WFp7GcNhINz/KtVdp8kP8AAAAAAAAZjiALG9svIury0E6eF7e/CjXXokfAAAAAADATAaQLKvcm59/EnneivNJNwZp9dV+NOt7HggAAAAAAJhJvwCfszWxoGaKkQAAAABJRU5ErkJggg==]]></data>
	</file>
	<file>
	  <filename>/images/tool_bar-bk.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAAA8AAAAaCAIAAADnr5E1AAAANUlEQVR42mO4ducF8Yjh/tOPxCOGp29+EI9GVY+qHlU9CFU/evGFeMRw98l74hHDzfuviUcAJFE2MOdbgZ8AAAAASUVORK5CYII=]]></data>
	</file>
	<file>
	  <filename>/images/tr.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAAA4AAAALCAYAAABPhbxiAAABJElEQVR42oWSvU7CYBiFWU28AxNvxc3BODMQLsKRqAlhIoTNGFfTsDgQVm+A0cE/TCkt/cXS0hQIguPxPZ9AarTY5IzP+Xm/Fvr6A6hOR0O1eoZi8TgW1UR7hV3fNPEwSwMs5iFWyxhJ4kDTrlAun9Kkkgu++wbGwQBxaCGJHTHxsVyMEYYGGo1zwjeiw1+ga77Cs3rw7TeMXF2ZJJGN+TTA52qiJgh4Jzr6AQ77T6Bs4xmO+QJv2FMG0chEKjNWHxG63fsNfLAFLf0RG2UN2CCU9HTiKrjdvlW1/wSzBs6A6WtYklm72bwkfJELZmEmszY3R5GJUumE8H4uuIWlNjfzYLx2q3VNsLYTVLBs5sF4bT4V35mp/4Pryt+pjvpJ6vUKvgCLWaRd8CeVQgAAAABJRU5ErkJggg==]]></data>
	</file>
	<file>
	  <filename>/images/TT_btm.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAAOQAAAARCAYAAADNCAAnAAAEx0lEQVR42u2aT2hcVRSHv/Pem5nMpJPUpIlJxdoYS5RqbBUNgWI2ASsKlSCYjYu6CLhxoYtCQd1UU9wVuzcoiF2EKtQogVikUtAkhqqVhDYZTY0lte0kmcn8e+/e62LehBh02Wam3G+4zPZdON/7nXPvE6qfONAGdF26dOn97u7up9779Ifsd1fzhViyWXuJRuNFE8aJxIw4LhZL1WEMOihKUMpLkF+TUjbtJFnzvnzn8M5sNptJJpNHgcvAklMD29GAAvx0On0boKUh6mIURisxRgMGTLgslmrzEYMxBmM0RiuMVuxKRh2ATCazAvhhnetaEdIHCleuXLkG8Eh7o6tVIDrcnNEag5XRUp3piNawIaPGKJ+HdiUcgOXl5WWgWJGyVoQsAYWxsbFfAZ7o2OXpwMeUl2gdCFqJwaakpbpk3PjpspBa+aKVL90dTRGA+fn5BaAQ1riqpYTMnT17NpXNZjMPtDQ4XW3xiA6KogMfowKMVlBJSiulpZqkVIFo5Yv2i6L9oqhiXro7WjyAc+fOzQDrYUrWREKa8O2RA9ZmZmYmAQZ6H4qpUl50UN6kDgKMDsRKaakaEY3GqECMCtBBibKQeZ4/0BZ9ePd97o0bN66PjIz8BmRrSUiAIBRy9fTp02MAPY/tjiTckqOK66L8AioolNNyq5RWTMt2iLgho48KiqJKeVHFnASFnBx++sEYwPj4+LfAaihkCTBSI9t0gATQDuybnZ0d7urq6v76x/nSB6OzmUj9ThOpb9RurN64Xp1xPA/EQcQBxzGC2EKx3IVWzoDWwqaZUfkFUaWc+PmM+Otp58jBpvjbrzyTyOfz2f3797+RSqV+Bq4Ba4DyamSvlYOdNeDm8ePHPz5z5syHLzzbGb3wy1LswtXVIuAYrbWJ+CKRqHEcDxHXiONYGy13NSG1URIe4KBLeQmKOQnWV5ymqO8O9nXVAYyMjHyWSqX+BFbCQx0N1FR0VFKyFdg7Ojo6NDAw8CrAaye/Wvs9je/Fdxi38pGA6yGbUhKxXlrurIhoHZ70a8pzoy+qlJOgkJUGt+iefL13x+Mdrd7CwsJsZ2fnMWAeWApb1qDWhBTAA3aEreveixcvHuvt7X1Oa8NHX0zlPv/+j0IkVm+cSJ1xvAjiRoyIAyJYIS13XMjNBzk6QPtF8YvrcmBPfeTNlw8mHt3T4i4vLy/19fW9Ozc3dxlYBG5X5sdaE7LyvBFgJ7A7Ho93nD9//q2enp5DANNzfwUTM4ulnxbS/uKtvHK8qBERNqS0WO7kYQ4GtEGpkrQmo86+9oT3Uk9HrO/JvRGApaWlxSNHjgxPT09fDufGv4F8pV2tRSErrWsslPJ+oP3UqVMvDg0NHa2rq0vYyrBUG0opNTExMT44OPhJOp2+BlwHblK+OVCVdKxVISWUMgokgWagtampqW14eLi/v7//UGNjY1Nzc3OrLQXLdpHJZFYzmczK1NTU9IkTJ76ZnJxMAbdCEVfCZPyXjLUqZOW5KzNlHGgIE7MxnDHjYWvr1PAeLTXavIbLp3zZn6V8O7AS/ufCmVFvlZF7oFgFcEP56kIRY2F6uqGQFst2SKlCKQthGm58r/pfIt4rQm5tY91Ny6ajZbtTUoUr+L9E3Mo/iK6PuFw6sQsAAAAASUVORK5CYII=]]></data>
	</file>
	<file>
	  <filename>/images/TT_mid.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAAOQAAAAHCAYAAAAYh+GhAAAAoElEQVR42u3TsQ3CMBCF4WeDiUkBEh0LWEKswR7MQUPNHszAFIiSInUWiBQhbEzuaJgBOeh90g1wevoNylcDWAPYNE1zCiFsD+dbf20lunqpbr4Q6yrY6UxhDIhKpMMbw+tpcuxNfnS2yt3kctytUkrRe78HcAfQ2lF+JwpV+Z5ybfob4wwSCjBEYpCF5CgCVTEAoyQGSUQMkohBEtEPfQATJTgCk+9IIQAAAABJRU5ErkJggg==]]></data>
	</file>
	<file>
	  <filename>/images/TT_top.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/user_edit.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADOUlEQVR42m3Tf0yMcRwH8Of8miN3LmIiWpik0BbDklJOKW3Idli5dGtERsOlRKorHUuEkvzYxIUmhKyssCOX4q4u8mslWTQuv7pzuXvePnc9+Yfv9tqePd/v+/P98TxfhulrPDKMzCBRJI3kcNK4d17EgRv7TxvKhTf6uzo8zRaLLLmhI6EMFiLJX2SZ7zpCR31xxJPw/1dgPJH6ThxefzxchFMSR5wkeatEyFomxHY/AWa6OGhpTCQZ978CttkV+aFCnKWgkkJZoTYiKMKcsDPAERJvwW9uS2FkNpdx7i8wy9aZ5eeAO/l70FGhxOOi7djq74SEoHHYvMQNsgUidsjggTdpXCE5bJuQO5u/K8jMW+PSa/r4Et8e5uNDVQ50l/ah9VY2DK0NOCdz+7126ZjmlgsSvL6ugPa0GLHBTvf7C3iQ9MRQt25D3UV01V+BUasiJfZnQ4MKxfIpps5qOb423gR+fEB3Yykq0wPNtvAIIuYNGHzS2WNZpyreB7/qi2DSl9kZn11AjXImuhr3sub3N9B57yCMTVdhaVPj6SmZ1VZgIW8Q/wB/ysqmCcF3oW//iUvJ4ShJXm5XeWgxDPoUWI1qGN9uwZe6eLw4H4NHRyW9nq6OpfRb8FKHuIZrJ4Wp8bzDiOIOIEEPbNIAmVU1MDTthtVUi54362FqX4fvz5OgPexrnjdtVBlNHs04uvmrgyKUuPLYggIdEF/LYmMNi1TVNXQ+kXPhKJjercU3fTL0R8QI9F34isKpxJupT3Znu8oTcexMOaQVQMxtIOV8OZru7KJlP4CpNQa/2iPxlVbScnwpum7shDrBnaVwhv3wtSnTYahMgyT2LDKqerDjqArNt5Ogq8hFh2Y1elrX4Ys2EY0nViBSdgLdd9OhkXuA+w9mMCnSgIYniVNZqTSDnSOtweXsQOB7G1oKI1Cd5IyHBSGoOBCCxRFFiIuWW+r2eFkzYoN09v33XQFGOlrIzxEIhKoxc3e/2y/zgrn2GMyaI9AoAlC8YTIWiNN7XRblfBIIRCU0NpcLe3I3mJlgPwyGkZC8Vb4iqyLKna3KDGYLd8z9PHksnz4VoyTbyEriw2Vst5L3B6vfyopLmJ43AAAAAElFTkSuQmCC]]></data>
	</file>
	<file>
	  <filename>/images/valPack/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/images/valPack/error/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/images/valPack/error/cssB.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAAFMAAAAZCAYAAABNcRIKAAAHYElEQVR42u1ZC1BUZRS+aA9Dmx5WU03TTDVp00PLnsZoUvaysfIBNk42GpYJFm4IIqgh4GJSDqCoPRAVAhWFBXZhl9VlF3aB3RVYaAEBWVIMCFNgcWFlha/z38VyLEC5ONOgO/PNvffce89/v+8/5/yP5bgh/BYu83cl3D5CMYa7lj9Lk3VUfWO726mTZ8P+rGtRtNY0VViPNdZba5pGFogTcSs/XdeS3tDQutrS2P7ssApZ29A6s7Hqd7WtuA69hhqAwVg7skEcewgdJZaelhNnUhcs8X1ekIgPPDrR5dTvbRttJRZAX+1shAS9rsA4M+6//WkP+/bH1UMS8hbXcaMP7T+ciPITzki83kS8FEePOzWoP42omMRNVy3mQUl+JKobnb3CnN2AU9CaJnj7hS2/8pHaS+SOhtZe6CqcDm7gH1BwWStP2Z58bupzgwp5061jRhlVJs3FFwXDcNnx4vml4G01/xyHq+1rgcJjQNlviI1NTiW5XAYUc7an11RWG3q1ZvTSi0MFa9RRUIUeAju36yqdH6Jn96vQqa1EVx9gpBQqtfAfydLpQkEl/+GDtmE45uyMS236Ppt+YJsgbvR9fxhr7fc+9MiUAcXcGScJY8R6KMV76KWhAsZj+D5Oh9c35aJHXYrJITlI3mcgsaow7/s8cCsV4PyVuHuDBsbkHLw5dQYWz10Efy8R3nabCf2eTF7Y//RdSDBUoVllhkVpdl7z4rJOqkB1jhm2/Io+Eav4c2Zj95hNCC8GFmioaIDHx8vXDyimVmGUM/UvkJhCwMSM/1EO7osM1KdrcU+ABK+Lj8CqPArOW4r3v9wKzisF7uvS4fXBAkx8ZAImT3gaM1+ZAc9350O7S8JPS/7lt4CO2l+xINYIbhV1ikgNbmMB2lQm5GWYwK3XUUcdAReUj1JpsdO2jmy+ZAvOhz7jKC++YH6meoRsiMkiyUb3I6WLizotz8zCuDv/V0FgPpqlWhLzEDbvVIELVBJ5JaJ2EikfCUSRUrqXjexdmfh0zkIUxKejMVOH2oMqdKpKcV5TDgdFwKU+2TWKzPDdUQhuqRSeolgsDdiBDwP34CxrK5TweQbE62KxfG08yvYdJhsJuUzC25YFx0N/QI1h4UdZs31bUhmJdnd/Wrpo0vKOs1FcaGM88bwSTAtOpajIJJIp4D47AO5rGaavOYjP1v8CblEyXghVIiZQjDaF8e8Cz0rM5UIyXGB1XFMCzk8BtzWHgCOF1EYpenPp3TwTFoVQG4szwK1Wwzs6H12qYiz8hmxLyBaohk+0Bp25Jt6PYDFpkNz9c2otqfZwv2meK8k3sZrAIkMoUGCmSS4RWSLHEyt/waSVCfx51Faqh0d0iIpMIoEzIImToZvqKosYlkL9+XMwQVWU3itS8XhwDhGiNgyVfNqzAGjJ0GCbOA5zVmwDtzANvjH5sMvU2Eq2D3ibBF/HaKjDhoEbiRkTvbdyQDFlaXkZLCq6qAeFopfIl7JU80pDUKQEG7ekU3qmwTsiHckppUhKpBT8eD9C/DZRfaxGWZIcISuCYVeX8bjcH7OxCAwVJ4Pz2I8JwSq8FqrBHf4KNGfpsXSzCm7rc7EgNBucZwpEYSn4IlKFaSFqeG4gm8cBiMJTAW2ZYG4szQPWfKsjye7rV0z/oM3BbAllUxbztUsIWKPn5EV4QZQA6Z4cKBOUmO6XgIDQRBKY0n+ZDG5+iVi39CtMmzIVD95zP0SLv+LTsD+fdrUJbTItAoN2kjjR4OZtxSzv7Tgp0SBCTKXDIwrc/O2Y6xOLuv0KhIcnOp/z2IH5PttQl6LEeeoUIbxsOUfRTTMe97fn7CbJXPsVc/IrM6Z0lJ9wnKMaZjtcMizQJ2ShWVaI01lF0CZk40xmHrZs3IWAoO2oTpbjNN2LEIXgu1Xh+IPOWScM5I+PDqURpw7IUZ8sgzVL5yTKbCkKHE+Skk0LOz3XqTTwtjqyddBz9kF8Xwm6CCaF0XGL6zjvwRZBo/bukWax2mWlHuigCBUKu6qEj3Tb4WIaFErQSR/jyCWo2LWzt7upDjGw8yvxyUgxYXjB+t65aLsYef3ZhKBdbuA3P3z9wkpJq8GXlBMnvTjtTInFbqUX20lQ6w3waKdstVOHFGbru8aMu+Mbkuq2K9rsWOQlEnebT6I9qxBtTFRC23UKJiI7stLXQgPPpJems3X5U1ezCzfWR7Qhge2uW8nJGap316uYrbICqr3FOEurnvfmfqIhbd4cyh7xnTNneUQf11Wed9Bkuo0EPSvVoZWOrdn6kY0+rh3ZReimOWWR3GB72X2WnDT5kG2uDWnH3e2N2bfefNvYT4PWfqevyTU5zpFjB02u2cSVDSRCp0//R/ArOAqeDuJarDB2Lf9ybTlpsIXJwQZowX+qjbn9zsfG3jXe563ZH+1btTrCFLn5J0v8T4eaaEnVTGgaCdhLXOJ+SGmMEO+wrFwVbn7VfVbmza7jxGxnklba46/Fv753EZ4hvEZ4nzB/BOIdwquEx9nYcTXi/AVtISHM/10wewAAAABJRU5ErkJggg==]]></data>
	</file>
	<file>
	  <filename>/images/valPack/error/csslevel1B.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/valPack/error/csslevel2B.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAAFMAAAAZCAYAAABNcRIKAAAH9klEQVR42u1ZC1BU1xm+mCZRNG1S00ybNp1pbJs2SW2ME1uTtJVJbCyNmeZBTG18JKaVxxggvApojG6Uh4kDCIggJi4KKmF3eS0Lu+yD18IubxZEQMSg0ICIuwgLrPD1P3dxkziAXNJMZ9Cd+ebO/c/ud8/3/f85556zHDeLz/qtAc6Ee+Yo5nPf5qe92zLvXJf5mQufXxZdOtuT39/S3Whp7jpnaemeWyBNpK2+92xPZmdnf1B7l/mJ/6mRrZ39z3edvqgdrDqLcUMLwGBsndsgjWOEger2sZ7zfZJ1b3kv/0Ym/ujhR5wuXLyyZ7C6Hag4Y38IGXpLgWlm2jsuDYsiEoNmZeRdzovuyDipOob68/ZKvNVM/Coq2+wenOtFVMyxcMFmfiYr3oczXfasMLLbsBva0g1PP5HHzFfqLb4u6OwfR2mjneA2vgQVl6XpwuCjy1Yuu6mR37l7/jyjulZ3/YeCYbjh+tW4YZI43zbLZ/0/oG8G6joQF5cmIbucpjVz7etbVrK5YbzEhHH6oRBcKzsNW2kTPbQZw6Wn+Rj/cLofKmmClUcjxivIvNpzdtS0Y6ysie/ozfgZjz0ZwmOONgbDBATqc3BQf78wtg7/4Cc/e3JaMxOSZSJeIA1xJnKmYJ2rzDLiuzuUMKtqsDVKA68DJWRYM/Z/ogfnWwDOPx9ckBp5p/TwcNuEF1f9BaHugfw17v39DmMn5Tc2w6JrREuBiU8IbxhDWSPaKNar+XqMfa9X28j3y8HBoG9Ch9KEzkITfZcl/LQgnQys0NDYCbc3Pd6f1sySfKOCrzIyUwiYiI7MYnD/kuCIuAT/3p8LzjsP49oqcKFKPOyeCM79KMWyscdnJ364+AGseupZLP3l41jn6oaDH0TzryGTcusbsS+FeIJLwflowG0vhUpaCbO2Hg9GUKJ81OD8dIhJMaBfU4/7wydi/jpEiyuob418caC0AW4x1OZNbe9psS7OQDET3yZYL42qD3bFyMmyO6aw0slJKy0ysQyOFjcIwjWWLV01fh2YgRfDlNj4kYqMLYA4ma7bchAcKaWrCqIYOT5098WBHR9jSF2DulQFBlTVsGrrYCOOG3mhN0GWbgDnqcJyr0R4B8djtU8SytNUCEwoA/dPJd6jmE9oEiTJOXg3roRiBfAPOQhvih1NzKWKNNlN0NUhJPwUAkIPYX0AJddLhWpZOZ8soXrZ6h4fm1pHpn1/Ki+ddNKiNraKCyW/Lnx3VA51Mgvcu2TeplSqDrr3kUEUnkb3YqouNSKCP0bdcbnjhZhVxmRG2jkb8Fo4JcQzE+bMQqqkeoypqKLKGpAQlw1u82dUZWq8EKbDRUUlEuPpeZso5qeGa7gOrTlGvvocfNpqMqIBgbFFZLoUbdIifloQrJUWzU8PS1rJtZ9OOcw1suJaNieM6OoFg3WqMk1JnSSRnjL8IyAJ3NsFWLNDAmjKoE86xQsIiszEqNLgmJen56zHxt2UHHc5BpRV9BLdxA/Xa2SQlThSo1Lg6X8A3JsnsCBUjbECPR/z8LPHFodSAopqMEpco8XEV96AXYeoot+SICzsGLXV8m2CtZKZMdHipmnNzJUWZbEqsWpqBYM9ZFhBHfWW4OdBMqiTZeDeycTrO9MhOmLA+dwKMjkPazbvwlB+OYZpaIdsDUCHVMsLmowTJQ1QJFNy1qVQhSvxUhhVlE8BclNLkHykGA8GFcIjkip3gwSPbUtDTLwSDwVr4B6p5GNLvNJgUxl5/mvaGry8h+bLN/LI6DS8ujsPzdlGjNHwF6qVDfPA4IhSsuyBKc0MCIkMZVuoQaoCNqcJBRtG7+xOR1CEFAPyEqzwTUFk+HEy9SRvJOd5EvsC9uK5Fc/i8SW/wuqVLrisMPDGTs5Zi2FVJQ5HinH/+ihwr8Ti0Q3R0IgVyErKxkMs9mo8nth8ANrDUmQkZOLHE7FlFCtIkmJUSxxkgFlRgeXuyeDcYik5B8H9PQGFKUqM6+oEaRwsqMQovXm4vPDyp2SZ85Rm/vb3q54cqD9vu5pvxCAtDEJh1dTAdEKFM+lqDNF9kViO3pxSnIxJg3dgHPIOZcCqqkKyKBY7PIJgSsvnhU7HyQSMqKvxhUSFs6k56MvSwkr3jKdHVoi249m4lKkhnhqKfxnry9JghGLXedg0cTFDiVZqY+g4IYc534CrhTXCNBJq8422u5wXed5sEzRPfDRHzlY/C2WAdUAo2MOGJjrPRLMOMFE2daVD3Ahbvdm0QEbOmJdNJfQ7K5nriDGjZxC7kYPhehKFaDPTKGIj19tPVENe3XxL+cjSp/7QV90+bKEfmslQy23wMNNoHaYE6fMqrPMXfW8nWbVgRocdG7b47h01fQ6zXI8rzFTClVsUzER2ZVNfDy08S1f8ke3LHxNyCrfQy3dXCjtdtxBJn7z8ljWzP7cMQzTEL9Ou56+vbNSRN6tnc0Z87/OubtFtpU0jNtpiXiFDL9Ni0k/X/ryKuY0JrQN55Rild8pyhWHwdy6uCvLkb+xwbVYn7s88t/buOxcsfDtk+0cVLZpa21Uitk28aA9NrLRzDWyHw4pngLRW5RutHtu215MH+5kdbIH+xn+qzb/n3iUL71vs9ee1b5zwDwqr3ReZ1P5JUkY3ban+Q+ieCxCTluRD6V1hew+2+/h/aHraxTX7TudFe9nJJO20F38b//reR/gN4U+ElwivzUGsITxN+AVbO4SY819ldQXdfm3+QAAAAABJRU5ErkJggg==]]></data>
	</file>
	<file>
	  <filename>/images/valPack/error/csslevel3B.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/valPack/error/html2_0B.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/valPack/error/html3_2B.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/valPack/error/html4_0B.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAAFMAAAAZCAYAAABNcRIKAAAIvElEQVR42u1ZC1BU1xleTJMYNY1pmrSZtnbaTifTdLQxtibRNqk1xsbUjsloYjSaKBofiKioKGqMQjASmwiKPMSKuoDyWHbltcvyWhZYd1fkIYsICioI8YksIsjDr9+5ixXR3UXTzHRQZr65e+495398/+Oce5HJ7uNv2rwVA4gn+yj6y77Pv6p6a7/qusbRtWcu+1w8eV7TUFFvsZbXVVsr6vsW6BN9K7lw8ryqpqbBq6qu8aX/KZGVNQ1v1h07m91ccBI3TBWAgLmyb4M+dhJNR6o6z5++pPhglseI70Ti879+waX27JUvmo9UAcbjNiUk9IGC8Fn4fupiq8/mMK/7IvKxAYMeiT+QLkfJaVsmPmgkdsfhEzYOqi9ga6D8y3smM06p/wrH62xREcIewkZoRT0Wevos6P1O7bp0DGoabiDPYhPwELfA5LKW1Ta/OPy14U6J/MHj/fuZM4t0Nxc6hanHtft9U/fn3eT1Vvb/IwzlQPEpBAVFK0iXi0MyJ77v+proDTdyS3GDCx2hI/8YUUYl5WjNK7Mp4m9xvZZbhhYJIrvZxAu5iRVVSz2oU1pz3K5cmGxyeo6la/cg3bxv7LHecOu+mOPMD9s8G1E3egHQ/nPmytZnf/6rlx2SGbJL6SMc72SJC6ftAeZy7I8y4MWNGejUFWGcXzr+tdtAwsrhvj0XsiUayFakQbY2C4YYHd4b+w4+mDAFqz5djvF/HgfVNrlE8N1kn80sRaPOIhktglWTUSoFpzbTgkptKaq0R3GS11O8b9Vb0CbakbErsAKGMlzl/WYGspZzOhz5wbntXH+aMtvzyhz6fBMi0WCpwZSPFnzmkMxcjVktZR0VOIKIpDYyA7I5ShjjcjF+/UHI1mjRmV1AItUY47YDsrlReNbrIJZ/vABDfvozjBw6AqNfegVT3p4MReA+6dhxm0w61pRZCNln2VgXlsumfwzn0jheo0d4RA4DQ31LMiFblQfZsizIvLTYGJyB3/nn47quRFoPcxl8I0yYHajHPjmD6p2N6hSz9OwOHwTyj+L1b4yUlYNjiaa7zrur/6yyzzcEppCyR+xQ6eKSnZBTKqLbpj/qECJzW9JoxKI4eAZkYOgGZqG7FuHhdNhNBe8tJHeBBvKwZCyeOgsJAXtxSW3CsQNaXCVhrXS+nRHuLhPMjIuphyBbrMacLWkMmAXHVQbKS8fXwWmI3b4f7quCKVeNacvDEBUgx5ZtSZDN02E4CYWhBLExh2lTLsb6qBEYQpsWqlGckCuR1F2X0C3ke4VRn2uSNM8Yq79jnj2I3X3H9qhikvYje1y66BJyToiIORMmGZNXjOm+KpKYSAfjIZu9HzLPZAxZqcBKnyjIZsjxw/WZ+MZrE2pVObaNh1kvAtGTSBuZFhuZHqkkhEFZwexbxkycq0HYzgygpAKmOD3HSYjaky2Nd+7i89nUPzMWf/yCz9y5dqYKE33VCApmq5mXjKMKkpl/u08wlGK3nMkwPxFvL2aA5idLsmGw9I5M+hIRrqgka0PslnmWUl8keoIoG2dAfiliwlPoDB1wj8Fbnrshm5UGz80qICsf+wOj2QZUCA06iOtZBbaeQ8LsyRN6L6SQTDdmyif/xj/ctmHUp9slckJC06Wyz4rO5rMEOpIhjYND0qk/AStXB0E2/QDbSyiJicTf1qdgexDtclXitEq0DNEfSYSoCJLRmllgC9oMkZX04RM1Rn+uRUd2Icnqhe8kMzBgb5lDMpMTcg6KrGnJKnKKdiqtU+lovAIfblQiIkhJ41Vw9VUgKLIA+niW6Gwl5i/cCOSWoDYxD97zVqAx7bBk0B3yeK8+KU8ia84GBaAzSm1BNi0BW4NsZa+VMxOnxiGcJQyzBQFBzL5p8ciL0kK54wBORpMYj0S86qVCYCCJmqbEh9wcPQLysYYb40XNYclua5oZi7wjMG5uIFxmMjPfV+CjlRFoSadt2cVOfRdlvnL15jxS9pxdMld4+68Rx5dmbQGusbc5ghDakW7GeK9IhO5IRnlsFkYu3QcfPzlJjWPpp+AnHlHwXbQab4wYhV8+/wvMmDQdrTS2lWt7yrvOe98m5WPY3J3w8yeZRguqmVVPfRwKeUiytFkcis7A4JkhUISnSpkWHZqC5zguismWKqWDFTBp2V7MXxeNAyEs/6kkajKz9t1t6E85FQl6tFG/0NeadgjQ5iNmhwI/JqHFURp06Iqd+t3MZGjjSWTM+HcjSNkAu2T+4dW/vtxUcrr9qsaM5vQjTiGEmyPVLCU9GrkmZ08KLiflItR/D5Z5BcG0JxFWjQlbV30J38XrcEapk4JgT14Tg1gXr8VFyhCyrTT8bKwGDakGaSx01Mam4Qp7qxg38Cqei/uSo5RxTpmJ8wd10pzq6GRURiZKOBOjkeR1t13Y0qg24mxc2m3PHKGFKNKY2x8bMGihs5egfnv3JKWI7V8IF845Q0smDUu/9VsobM8qRHvmYfYmRpNjqVeJ0ubYqTyRtV3ECrR2kS9+N/cc8yqNb7On8L/EimeibK93VcPd9N1Nhj008kQiKtfD06eQXDl/pXxh2J/+culIVauVC0V/sz6EBJH9IjkMqcaW/oOeWk+qnujVx44Zrkv92krPoDHFgCuCVOLKAwpBoriK1neeG8+wka+L9/Lf38tXuIFuSzfsE1/XrRRyiUeWB5XMhuR8XGOJX+ZbzzvvzdSRm3H384148JsTpgScyCu73s7D9hUSeplHlwZeG1KNfRtdvjZxE2vjmfKQ2tT8ypgJanIySXxcu68v7qPHTnz80ScGzvZeu8VYkVXUfpWC23n4FufEa107Yl+D9IbH5GmirwUac8sC97Ul5OBrQYfYoL/zP9X6Pzn4NwOffsbtrYlT9y/32lT0lf/Oqt074+v5SvUtUd8XsJe+7AqNrdvkF1y1ZLlv6agxExIfHTDIT3yZ5Jv2M9/Hf32fJoYSbxD/JCb3QfydGEX8Vuwd90LOfwA7h+skrIoX3wAAAABJRU5ErkJggg==]]></data>
	</file>
	<file>
	  <filename>/images/valPack/error/html4_0_1B.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/valPack/error/html5_0B.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/valPack/error/MathML2_0B.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/valPack/error/SVG1_0B.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/valPack/error/SVG1_1B.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/valPack/error/SVG1_2B.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/valPack/error/SVGtiny1_1B.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/valPack/error/SVGtiny1_2B.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/valPack/error/xhtml1_0.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/valPack/error/xhtml1_1.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/valPack/error/xhtml2_0.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/valPack/error/xhtmlbasic1_0.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/valPack/error/xhtmlprint1_0.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAAFMAAAAZCAYAAABNcRIKAAALjUlEQVR42uVZCVBUVxb96sQYYyqJTlLl1NRUZVKZWJnK5tREjZkkRrOMickkE41J1EFFBQwqIhIBt2BQUFEQ2Vo22QSkaaDpjaVpGmjobpoGwQUUYjQgRtk3QThz3+uGqBNoYiY1NaarTv3//n/vvnvPve/e934Lwl38PlvnNpnw0D2KScIv+atrbB9f39A29/K3zd7XLlxVttQ0Vrefbahvr2m8t0A2kW2V31+4mn7pUot7XUPbC/9VImsvtSxoOPNdflfZBQzqawAGQ+29DbJxgNBhqhu4evG6+JOVG//ys0ic/senx13+rvXrLlMdUHrOMgkR+qsCs5nZ/s21Xm/fcPe7InLi5CkTUpNy4lB50RKJvzYSb4XxvIWD+u9xODBu308m86REux/nGixeYcL+1yi3ooxgPm8xcqhtsF55H3puqrXcD13LrX2HZHEZF36QMVYdGKE1jXBy9XYce6Ve7TIPl1oGUVRtETAiai2GmSw5Bka6Vpy3XIf6mKzPzFYMvWfLp/oSUPWtRVFzvaVd8c3tc1DfhuwKzPbXQSdj+pzFG4EGnEwuhZPIiKRUE1B5HsliM5zC9AiKN2C8rxF/8jdg+n4j3qK+YfF6pElO0RwsTdWiTXsGfrFlyBCXYWmwATeLTw/nSZug4Go/fbnrmRfnvGiTyN/cP2m8Ic+sGRo4GgZ1Z+EbbUAGM6isBlXySmwX6XElr4qUO8eRkmLCtnAD3CPK4BVhgCe9N2RV8ohIOxKHXFEq+gqrUJGoRJRPCIqi0i3kDs3DCkG+CS9sPQFhewHmHyqB4CRGTZISgkc+3ILygHM12BaSD2GLCpFHJXjbORiCo5wQA/evYrBiP/XdosMpBc1bdhZPHSiFsC0H2wMVEFxy0Kwy/pAbbYFsZg4/ejRRTHSNG5XMRUtWz2G5YZAMZGSNBOiJTE05BGcJBLdsUuYMMhM0EJZnYHtIAUVBDXryK0hZFYTPxYQ4CCuzIPwrCwmxWgS67wFNx7Fgzjy8PXcBpj0yFYvmLeTkMhKH5yJDm8Q5EDamE0G5EIdJgGKS7ZlHKOCRKnhpIbgrgYJy9Kl0EDYrsPso6VVeBY9QereaiPNSY+FhcoY9Ee2Vjd2BMgiuKlxXGm6bzxZAkdxkqO197PdPzByVzNAIiTfK6zBAS3yABo0ELlR3Ciu+TufKVUuNaFWQog7pmLqdjDCehjyZjLJXYK3XccQciKF7KaZvTsHlk9l4bOo0vPPKm3C334yJ903EllWbsJXug3ceQr/VkUNzwXAW9UozhA1EwupMHInVU5QQmR5qCGuO47X1QRDWxkLYqiIyzejMM5ETFdgRnE8p4Bw2BxdCWJ+MZ7+IoH4pmL3hGI3Nwc4AGSe9P4/INNXwFHJzFJuHbWfOppS0eJnjjlHJLFQaFMyQm0SmLbDJkyPIQLtM7AvX4rJMT5FDkfiFEt05RmwILICwKgNVSTn46BARu0qCwjgF1KFJmPHE02iSlfCIyApOxJUsHSfxP+YorkaH5hQt8UL8zjkW69zDSH4uCsTkOLccbPCTklP1cDlAxDjLMKAxoU1Fkeosx5eBuRSZp+EQQCnAVYmaRDlKotOx4aCKR+QOfymRnIf3DhZhcYARx+JpueuqxmY75fhdFNpE2YQRqBw3Lj+toIqFcZ/2lE2wflcyyesOaXjeOxf+YbTsVsl5pEZFUtR4sqWZhrQYUn4d3TvIIE81Is3/GOwX2/HcyBWjXDQwpCgRetscumrkndBg1hci6MgR3UodPnQ9hj3+6VizIxGRoTKer6PC5VjmGYcb+WZ05JiwZFss4kRymuMcwkNksPOKx6C2greP0ZhVNDZZJMWzjiJMWR2KKXbB2HkgjZPZPxbbSffgoIQKIm3qSFyO06QVnGdVfCxkskhCgQmvelBOXE8kbqXosKflZn8CD3xJ+dFRgZU+GSiJV2GOAy1FuyRaVlqE749FkMc+TqLtearQq7bkwcHCUxbCc/ToyTagL1uPfrWJ63GDXen58LjsUnpXPvyO9WWyWLvf2mbE98gL0S3TcvTlGXmfMQUSrajoY+JaYu0PIy5ztURrZjnhhqZyTEDxKRwKzKBcRmSuUWHd7iT8c0cKEUrRaC9DgiiL+lTipkKLffviiVAZXA6pcClZMSyDRQLLRb0jzMGVL63mORpFDOTE0ir+jBE8/IzAZPB2cTWPMj6G+g5Y3/Wx92wpW21kz6E/zVcAm2fMdhOZgQHHT49KZlZaQQbzXo/aPCYMkgLlidm0jC2ESiKyEH40k+5pO+IkQZ1YjQ41LS/9GagTWBqQYYFbLK/GfVYi27PLYI6X8/ad8nspetpzyhEaWYy9oToUpRlRIzVgb1gxAiJK0KQsh4L2nNqTpbgop5xXWAFpUgnkBN9wHfaHF8OH+tbSmAFNBbpJZlwsG0fRydp55YikglaRYcRAQcWY7WbLfOs23yKi7PERyXTz8PNkJ4MuMpBNZAvcYEUxVU9a6g4SNKVrcDY5l6IyHfM8TmKNH0WsRx6aFAa4HKFCsCYHbyx1R4DbVzznMjh9tg7L3l/K7++Uf5PIrEylvGyXiBl2lCrWpVDkk+OWR+PRFSF4ZVsGZrlJ8MGXybza16QXYya1P/dMwlzHcAifJGCGfSg0CbncgQ5+tGI+TaZ2Pm9vOEi6LmZFLRUNcgOlBNs2d9G+tI92PPPe/jCaKJs8IpnPz359Zkflxf5O2nt1USIfC5BfhlXeqZi55QRAeatXocPDGxOpSEgQdpiW/PJUqq5UkNayIhQPXWQa/k7bopkznsMzT87AhAkTELnnKF96d8pmZJqSyQkrEjB5ZRQeXynCErfjvC2sTMBHm6Mwa9MJvOdK+9gl4fitUyI5LAV+h6W8egt2cSiIllI+LEMvERF8gN5/LoIqTk1RXEa5XoJgv1g85hiP2Ag6AGjMNu3tIZiVhv6Jk6c42ToEjT8eI5WxRN9OHuigCLUF5s2caBmSQiX8nk0WG5SK0sQcdNPe09c7Ai+tCcI7649AHprCq2rZcSk+fXcJ5s9+HeG7AoYVvVM2KyLFieSIZTHY5RWGymgxXHwy8eTKMExfEYq1u8SY7ZqKl2nbNH9THLw8QyC8H4ODR5Sol9BmfXkCSk6oySmkF+0/r2UVYtLaeISGKHEhXYdZzvGY7yXnRTMrUs6dN5qtbQo9P9NvdPUuJ65sHymffu6vf7tuquttp4FtRGi7DbA+nbS361L+0L9LpQeLbqZAD923ZOSjXaolosv4+24rca00Ry+lik4mh/rfKZs5piIpDyvcItGYoeXFLNBfDF/fk5CEpOJjl0g4eMRgi1c0vLyT0ENV2cMzHImhWahP0+ADZxEfz+R0ZRtxVVrM++/5OhHBgZnIIBkPfRYAp60itMqKuE4j2kn6sejWyUt7Jk15eCdR9cCYPnYsX+3i01f1LdpkOm4w80jrKGATMfxYm107b1FoqE/7jzz7Mbkt8lJcz9BQu5S3m6WFHG3UbpLk4Wp6Pq5nFqA5U8vldVKaaZEV83HX0tX8yvWxymymvt9T32tDMk6q0EKObh9BjyH9WHBcpcLz3EuvsnP5n3/KV7gH17vsjmVf19kk1+m00mqD0F8SjKRbjWu3Oms4cqzP7nTkreNuc6K1z7CjR3FoS1Yxuilim+nU8+5HKzTEzZt38434kQULFwecLzp9o5+OmK1EaLO0iLxewr19T8Nqa4e8BH20pyxR6LtmzVuoIE7+wT6u3dUX97nzF91/3wMPrvLwOlBaozb3d5LgftrCsI0ry3tj2T79v4Gf7ih4OsjWMqWhx9HZq5I48Gd0sAL9s/9Um/TQI08++Oi09W8tWnpii/te834/UV2UKLWRjlRXCI33Ao6TLRFhKQ17fULqNm3ZU/XyvIWZ902e4sO+TNJJe9ov8a/vo4RnCa8R3id8fA/iHcLLhKdY7fgp5PwbPIhPTxZXOWwAAAAASUVORK5CYII=]]></data>
	</file>
	<file>
	  <filename>/images/valPack/error/XML1_0.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/valPack/error/XML1_1.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/valPack/valid/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/images/valPack/valid/cssB.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAAHUAAAAjCAYAAACq00VWAAAMaklEQVR42u2bd3TUVRbHfyGIihVExIrAorCA6HEFd2UXdRGP5aDoggiISMeANBE4oQRIAAOkEIgpxMSUSe9tMsmkNzKZlElPJoUkpJOeSYH43fveJIB79pCJZMg/8zvnc37zmzvz3sv9vnvffb/fRBB0h+743yMz99qz8vxry4jtsvzqY7KCahPCWIdmkN/2EKvludVzyZf6oyZkSWXr5OLK5i25NQ3BsoaaluTWCsS3lyG2swzRKh2aEtNVitiOCiS2VSCtqapHUVOXUVh1/YSyvOXN+yhmy+MkpoG8rqYiro0GpVIiurcEMTfKEM8p5yTq0Ai1v8oQR0T3KSHtJl92lCG1sVJV3tD26+crNs3UqqBt7X2vK67Vy+Jay9Sd95UigQ+ugpN086qOP8mgD5nIXGAWKB1KVHS3tdo4h+3W1x878mn5JyPLT8s72hqkXUo+o9QzrOLWYHSMLMy3LGhY8GT31iMgJt1pzmsLHxo5QY9brirpa+2WdBWToKW8Qx33h5i+MkT2FCPrZgNcguJcx4zRv/eIPXzyl8XXbqjaxKoiSgmllBrKddxv+sohIWEVfQ0wtfYwvidBF7zzwcTW/hu5ks5iSHuUfNboGB1YQIm7i1Da04YtO49+/adFdQ2MN07troKERWmPkjesY/SIpPU1UlWCuIKSkinPTXth2IIu+Wjl9KKO5saIzgK+WHNRdYw6EV0FyO6rw97D50yGLapbYMLhKz3VCKdG+AzREtE9JUi5qURsr5LPwkSqrJNvqPdrzC4lezLZU+6AXbPvMRurwqN7lbxSZGkqqf8qv9bmmEcTiaqYixsqV5Q99vjEaRoL+vDDTzycU18vD+vI541oU1C/9iIczsqEe3M+EvpKYF6eg1OF2RCrirlokd3FMM7PgmFmJv/ckcwMHM/JQmBHCZ8IjkVxNHuLEHA9G561cpyP9kdgs+J2utKQOOqb9c/O/2+cCQP26J4/2qR3sWlL1JDOfGR31WPR4k82aizqXsNzc4p7WnqDOnJ4I9oigaLSPD8VwtZQLHWPQ05/ARbYRUDYIcYlZTpk/UqY5adB2BUJYbMYwrZQIgrCvgjYlsmw+sAu0HAx+52FWPrt11j81XI8MvEJGFieQXx/BSTdQ48htrcYyX1FcGvKg211Htwa85B6o5gLxCZWUl8xIjoLYVeTx2GvmYBiPn5qo2vAdk1tS+or0arPGGG0JMp6a3DQ5KKI/v4HNRLV2NxpU86NJgR35PIo0BYs0hwKYiF87w3hmASR7ZnY6eUH4dtQrPaRIre/EB+6RdN1MObvN8XkfZYQ1kfgRWN3HBf9Aj09PbwwdzYmz5gK2r7hg3Wr8PysmdhpdRZR1DZzwF377ymCqCkXzzrTxDGSQTjCzml4yVUGVxKXiW1RmgXB4goEQ7IbpkM4nwaTIgVSyXahjGyWf7SdoCzD2tWm38Jp8kR3l8LOR5xHcr2kkajHztqfTuur4aKyBrQFn3kt6Xj5jBeELWGwLkrBjlCKyvXhEM6KEdNGjjpF1wb+sIyizxjR+1u9YBYfhJV7t2P6W/NxKS0cp4JFWGd0CBdSQ2GZEATXqyn0x9+97yiq6H2uKyCcS6S+4yBsdKGzLYQN7hC2B8A0PQ6BrWQ/kUB9SmniWdP5IoTvfLDcNYzSfQYEY2aLvsPmjY+dQhDVmXfL+dqARapYVQifJFmTIOi9rZGox89ftk/pq0JoOxO1QGuwdBWjKsA2EQm2PgybAyR4xVpCkUkp9oAYxvESnoonmXhhlYgE3UhRfcAH3nVpWLV/JzafMeJFEWsrqEXBzxI2m/kff/e+E3oKsMo/ntI6CbrHHkZuNjAPd8dBFzscEDkhqEFGwpLdgNgRgoMiR1xO9IaJnxM8lLE4J6fv7WC2UPzk6ggHZvN1wm/5Uq367A8ocjrHj39ymUainjB3cEzuq0QwicpmhTZhe+BLcgmPDsHQH8LBEBL1V1o7A/DIaUrFW8XY4OSGRRYe6vc3hONpm3h8f/YYTvg780KFiXhnZAzVJ/tMTGc2BNMwii4JfvLxglSVz4sytoUTU4Zirx2LaBLtcaY+KVJ/TKHITMGHXsm8DbcyEnTfb7dtJ1OwxDMZAa25fJ3Vtt9YsRSRX9A94akpazSLVDOHSyxSg9pyEEoVsDYJJwd415BTjlLa20ipdls43j92HsJOX0qHTGw/nEsOh0uhFCbul8jJJKyBFHs9PWErD+MCDbYz+Hoo+GRqp/R5kibNOjFOJEqp6CkamGS0XvWoX4dQ+j0r9sCCg+dIPDMIa5wgrJVgrl0MxO3ZMIv0xMJDA7a1attM62hEdCjo+9r1GxM1LFvRNe6Bh1aTZGOGFPXoWTsjWe81+Ldm82jVJmyAke1Z+NKBiqXvqPI1CIZpOEWlEYm8gSLF0BOelfG80kxUKbDYNhjC6gCesll0sTbYfWmPWhnca9J4e5r0KaY+P7USQVhJmeHnCAS2ZCOmOx+u9dkwzZfTBMnnwliUpMMuJwoumf5Ya3mR9y38EAjPOhmsyjJu2dZbkW0N2XYEwqUyladHbfmMBRubdO7SpGaSazmhN6Soh05eXKPoaYRPcyZvQNtEkPOMJeSQzeTgQ57wrYjBV44+FEVheM/clarPSHzql4zYdjmlTIreDSF4a/U6XM6RILW/mou06D/L8KPDBX5/VJM+wzryeFElbKDiaAX1u4smlBEryui8JRRWBamwLqEMsp1S9J5ITLWKoTRL6/qXwZhxxAnmMhrHTrrePWDbr7ZNOuAIj+pkHkna8pd/SxaknUqcd/QpJbmWapR+X3vjnZkZjTUq76Z0BFEK0jahtIaJyigqd4nwnpUX4joycFxCDt8qwj53qkqPUERtJocfZ4UNrWEHnWFgegRTX5/D96dT583GuEfH41Sou7po0qDPYHJOIFWwRj6/4ZmtZyB8YQPhM1o/l1tj4vdmuJAeBfuCGMzaa07vUdr/jMbxhQMmbf0ZZyXesM+VYt6PFrdtyx0wYcvPNAYPStvZvH1t+Yvpkt5TizWb9kaRXH/TSNSxY8eNk2TmR4c058DveiZPTdqEDdS3IR3fOjjjmDiQIjeP3yn6xMoZtjlSnA7zwGO7yLlryYE7LWBCWxj3qhSsObwfk6a9gOdnz8QPVqbwqlNPwuH0y4S1k4fgqMgW++zMcMzdlq6D4dckp21LJn5VRMDIyx57bc1g6HwJtmnB9J0sBDZnwTEnAse9LmMf2Q6RzSYtiGyZwxrDcPGnfn1pzEn1VzHjlfnWJJfmN/Z3HzTdJVfVwqMxncI9W+v40WDdqpJpbUzj+0Pfpgw4l8bDu1FOEysD9hkhMA11hc2VIPg2ZvDPuFWlwiI5GBdpr+pZn87fG26/7DvqtKYYYDDFqe23379t18SmLbzJF+xR6C+eYbUkkwExXmNRJ0956bnk0opyFqne5GDmdG0zKO4gga3Zt96/0/GDn+OCtN8W4Z7H0DLASNpGEF/SQtSQBnlHLf790Ypwkumfw35Ss37bof253Y0Q1V0hYTN5ozpGD1G9jPbX5bARhVZTwWvIYm/Yoo7RH/u0Y2B0YkxnKdzqUnnE6hgd3ElQ/+ZsSAoLu16aNsuD5Hn/T//64enJL74blV1QE9leCLfaVL7G6bi/MEG9qXBTNDf0L3p/mYRkYY/cnryXnyrpzXjltbUkbGNURwlca1N4UeJFnenQMg1yypC09FFhWNTZ/PtX3+xIIT32Davivcvx4ISnpnzjEBhVxvZHbI11rUmFR4NO3JHGg0F+FdWlwaUmBRGUIa9cq+r9fMWmJPYAjXh1JH/P/eCYMfrLDp+2SZI31PZLO0rhSuss69it9gpPEe4NMvVZx/AY8JtayFTKhqm0J1Ugo6sWzoGx9a/+9c0QdqOPmDPiv9JftuK7sewOxvS/zDM9Z+9VlFx7tT9NVY2Q5lwevS6UmjkkNBuYjiGoUQfFoN/8mrKQ0HUVV1qqf/eITr7+8effJOjp6VmRz9dp/DD8Ho5JxMfTZ86z+Hr97phLopDKyLwCVXxl2c3E2or+pMYKJDVe1aEBiQ0VvydUl9+MVSr7RJGJjT8cOqN46+0l4fpjH7hIPt5OvEE8JNyPY8knK/UHFux/EZsoNZ969LGJ9nPn/93j3aXLg4gQHXfnvQ+/DF3wjw8Cnnl2qqv+mLF2FJXmA4UQe/Lyxssz5zwxmv93zGbSFGIGMZdYOHC3Q8fQLCLY/6LOIqYSEzR6PjrE8V/z3Nwsmb3qrwAAAABJRU5ErkJggg==]]></data>
	</file>
	<file>
	  <filename>/images/valPack/valid/csslevel1B.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/valPack/valid/csslevel2B.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/valPack/valid/csslevel3B.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/valPack/valid/html2_0B.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/valPack/valid/html3_2B.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAAHUAAAAjCAYAAACq00VWAAAP1UlEQVR42u1bd3yUVboeylqva1u96F0L9l0s63qvu3utu7qu7npZUMECKmgsETQUYUFCE1QghCYkMSEhddLLJFOSmUzapEx6IZlJIA0CCSmkkB7A5z7nTOKKlySDsvDHne/3e37zfSfnO+973udt33wThcJxOI4fHsXlR28qtBydTjjnW46szbce+YLY6IB9oN0WE28Ulh+5n7acdNGIPHi488YDh9vfL29sSchvaezI7qxHxolapPXUIqXPAXuR2luDtO56ZHbVI6+tYaCs8VhRZcPxz6vrOh65gGR2/JxkLig81lif3kWl+qqRMngQqSdrkSFRJ5HpgF2w2asW6UTKUDWM/bRldy3MrYf76lq6/GbMcrr7X0po14mh35Qdbc5P76y1CR+qgUkqVy+RdeqQAz8SIzYUJEuCRaB0V6O+v6vTK1C7aNKkyec/LS9ft/PFuu6uFmNvtfQom4fVf6eMA+cXwrYiaETwlA42Iy61wH/ag7+77PwRun7naweHOvv1vQdIaI0U6MCFQepQLQwDB1ByqgVB8enBEydO+ukR67rB86mjJ/u6EvuqmBJqmBrqHLjQGKqDnsSWDbVgi0fYxp9E6KOP/fm6ztMny/U9B2AcqJZe48DFgQioxP4q1Ax04f2P17z+o0kNVmVsNPc3QC+idKBaLuzAxYOB9dXQdxDp1oMHp9w89ZfnTOizL8y+o6q7vTWpxyqLtSTVgYuOpF4rSoeOYYnr1i/OmdQQlck1d+AIdFxEesgoEITnnKqGiR2x9KIh23XKwD/nZJ6slmPfR9qg7ZlMPKOJLk94okgzor1PF83BGDL/P0Pfd0CSqyksq73q59dNtZvQyy+/+vL9zc2F2m6LXGQ8IevKS+HTVE5iD8K3yYK1ZcVI6K6SdTidz1vbasqwqqgIriXFRBHW8DOozYrMU3UIrM2C6ngZtCcqENVShB0Z8VA25Moue7wNCqcQMtMGzxwX12JcnKcPn58NxgHbXOMo6wvHHHFOMT990H7jj+ggnNxox7wRfewhVd1jQWlvMx5/6m/v2k3qklVbpx0Y6BiM794vFxkNQomYtmIolmmh2JaMwpMWfKhJheI9LZaaclBwuhoRLSVQuBqgcEqC4gMNFB/pJVxzzVjptxMTJ03E9VNvwQtOb+Hp117CdbfchBc/nG8jdeDgqLINhJaPWHubKqA8LrLJsE78DGmzwKexgqnqAJ3HAu+jFfL6h1DR8UJ5bzJ7BmP/meunsNtUd1cistOKRF77HrMgsNUypj1GYD55EFEdFnhRrl9zBTIGq+R6P5yXSSKjO23zxD7SBqokyeOtr2VJzB9sxIovditJ16V2kbpxu7/T/pNtjLZyGqZqVAjPUbXkQ7EqDIqFegQfLcD2bB0U78bj9t16FJ6yYllGJhTzSbrLTjy6YgsU7/B8SRi2JIbjyuuvwdU33YipjzwIisVTs2fi9t/ej5cXL5CKi/VHky2MtM2aB8WaTDwQkAFjLw1OYrIGLFB4Z0Ox1oSAQ7lQeBArCjiPeq7m+Gpeu/La1YwVWSZc5W3CE1F5yB6qlA2hWFsQnMz1rvbLwayEbEQ0F0GxKQOKnZlQtZfKv59NJ3G/jnrP0BZCsZG6rRIy83GlvxnRHeW8b3ie0J/nC3IYEF+KeQVynsIzF/ua9su9jWV3XU8l76+Bd1RiBe12q12krnXz+SpvqFGSKhYYDUJAam85XtsXDcXbaiw2ZmBXWToUH5K45VpojufjMb9kEqnGBpUS937N8XdUWBYVgeXfuOP6227GV2olduVoMHf1P+BmiOK5Gnsr0ySput7RZafQq9ekcW3nNCjcNDB2lzDVVSOrh4balALFghRsyzXgiZ2hzBA7CE86nom6RRK8/tQLrtpYGl9kDhPeSjLDPExsJh3joaAsKN5Px3MBOuyt4p4WM9us0iPksFmSejadRMTHtpLQL2LoyEHUbSdl7aXsdPwxPBMZA1Y5T8hQd5Zi6vY4zosY1o/z3kvH3XvTkNFv+Y68s0HYJrGvElFZ+W0KxYTf20Xqeve9PjlDDdCcKJeeNxaEcTelqRmdcfittwFzI2mk+QaZYtelMuWuIZZGwSUugWP09o9i4WnNxKeeWzHd2QmJrA96khffwboqarj0xspx5ab2V2JNqiDESG+PR1BDPkJaKxB6lJG4wZbi3QvSoDqcAWVZAlyCA2lgOsH6cARkRyCiyoCQGpK1niXhA2YTFxMWmXJRcsqCmSpGtDN1/SANL+zTwM/KkrIoEYrPdAg5lCMj7mw6JdHgmhP7scsUjw2xgQgviYeLvy/XoY4bddB3Fss5AondFdhj1mBV6D74mWOwMWof59FGGxKR3FVklw10Zft7rrjimul2kfr5dt992UOHkUBShVeMBfFNU9RhGmVZFNNqPNMeMS+EJIdzI/TEhUl4bLsSc/zpke/QG+dR8c0muHjtwGKPrTJlJg1H/T+90TquXCNJXZ1C8pzpNAto9OUkYbnJ9vkRo9dZA/fCNJjYeWefqsHqVBr23URc6aZGUneZ7Lojm0R6VMtMoniL+i5Nw5OB4l5G+jzux8mA5/3U8BWkLiT5yzUIJqkGkjqaXkJ/I6MosrUUiq/NXJO2cdLjRY9Q6E+UfhdpI8To+XRRzN7jQ51JBsOvNocjsatYZqmx9i+apSSLtf/a66fMsS9St/nuEZEa37UfGkbPWJDEnijBUzuUNJpohvSYtmo30xvTz/uiQYrHolgVIuszsD3Bl3/z4FgyXvWLwu6MmO/WkamWGE/eCJL7rHA1Ut57jKC3mVLn7oHiTabYuZQ9n870vgZujFRBfmq/FSv1nPu2Bld9pYK6vVASE3aURl9JJ3OKw/S1G/hJYucKUn3xyLLNJDYJz/skwMdKkp3jpdMGH8rmvcLgFomz6ZY+VCXJV3zqDcUbzBBv63DHdjUMdCZhr5F54pkze8iKBcmc62yUKXujNoJObjlj3tkgSNWWlvVe8rPL3iBlE8cldY2b97r8waOIZd4X0ToeknsrsCKBhnSiNzslYllkGJ7ZxWh9h+nu4xh4FiUiixsVzYiLilExV4Mn3IO4Sdv6wntjjpcguD5HKmyPTD0bGVeDThKlWOSLTbF7sVkdAvc4GtKFdfTteLjlp0jyjX0WfJZI8ueocBXrXcLxAta1SoQ20JjLWP/eVcEtLR5z9/De+V5YqfTD3ABG6utqPP+NCnvLSep73N+iGEQcyYJpsFKumdwnDHymXiKt7qwuhv+RIgSVa7HAg/VyLh3ik0TEteaxXFUO30dS+HTxegwzyzzu460ALPX3hpYOpyahY+1dBJsgPdSY1U66ZhITxiV15Ybdc8oGWhHVXiwXGA/iW6dvSpkKP2HDtCAGXsWJWKNT0UAaXL0+BI96aXGDTybS2cQ87W+QkXrzKx9gc3wgzKcbkHm6Hi8tcsYbny2R6dwemYLUVUlsvF6lsVdHQttRKJuH5C52kitpxFejscVsJHkWm9NpOXdWLC5fH434tnwZJSGHWTsXk7w3Y7CtIEUStiM1CurWXMwJ4hovqfAXj1h47xfNXrQsHTe4JeGur9MwZUcqHv0mBX4NhSSnQuqk66nA7kpGvzMd95Mk/PJrpm1XOtMsZoNl/ohuysbLUVl4KTKTqbgId+2iLWbTKV8TJYCZbpkGv/JIhX7Y2Ufbe2xHCYw91XDfF1VDup6zK/0++PBjdxe1NvZFthUgvrNsXIiGSt1Cr1/PCHENg67NDJ9yGmJBCGZ7h+CpbcE2b1yXbqt3Hyvhsmcr7vnDI3iSjzEPPfMEJkycgE92u8k6o+4aX2YSDbhWT4PMDsRda4NIVIFstBLbWSdXUI/ZvnA3J8PANGXg3NU6Gu6Vfbjvc6UkVcdxpSSVZWKOP3bkJssIEgQl95RjfiBJnOGPmZ6R8BGkOvmTZKbSvwcQPP8f4g1/uOelyPWFTlpGrbeFZP9jGxQvswz8nfNn+vHerbLLD22gvI84tjSUfUi6rUTN4HqzOPYKz1/k+cIQ6VTCpqPtXfBSMNCEOU5LkknXf9pF6uTJl1yiL7akqNv3My0WQ9VROiaEIDW9xyU8AgtDw6DpKkVUUy5e9gzClxk6eOYm4DcrtzMiWPc+2Iklgb5sUnKxyNMd/zHtHvlo8/rKxUy/2UigJ44nb0RmQI0Jq5Ve2GaMRhzTdzydIba9BJu1oVgT6s1O1baeGA+o5twQzk2LkXPEWHRrETZplFgfsZcEm+WYqtO2tneZAZ8FesCjQIewxjxsjPHHEi93LP1mm8QS6r4u3EfWTnnfsF5xzG4B1mRsiPLFp5y3ImA3PDJjqV8Rm6dCuOlC4Z4ciYhjBdiiCz9jzcV8IvgyPgjRbUVSh7PtW+gezbWymg/hznse8iBd9n+xv2jFFpfCviaEtRYw3EvtQigbDwFxHkPhQXUmhDXlSWX8rQZuKITNUTTCOSbSSNixfOzO02JHdgKCeZ+KG7FX1ghGiPj+mFhHEvwT5kpyvzdfnJ8NZ9Mp7rtUOTJv/xk6xA3fNyL7+xjPBpEkVLwK9QzXNpGmBcQVdpN645Rbb86uqa8TkRpJzxEkjYcRwSPXwiAj59/fZOzwuG2THOezndiMPTL+DzrOYXy0MXvW6BgFP0a3sdYcY340uVC25KGwuwnPvDBLR5qeOOc3NfM+XLmsvL8VymO5JLZYLurAxYOyOR+pPXXwUmqOsOFdJWLvnEmdOGnyDftUKZmpPTUIOWaWEevAxUEoCY1tL4W+srL31qn3hZGeP/3oXz/ccOMtTyeXWhsNJyoR0mSWxd6BCwtBaGRbIcraW04//qfpetIiXrld81N+qjThznsenEtiW5O7DyK4KQfhzQWIoDAH/sVoKWSGZOljl17V0/7tq28uzCEfS8+p4x3juPTa66e86atKrhXPR6LGBjeaEdbiIPd8I0yAdlUey0NQYw6SmCFzjzYMzpjllCVeoBH3ns/fc186ceKk6a5feWUVtjSdNnbXIJh1VggO4TOnSBGhLfm2TwfODcN2sxFpZjbk411HGYp6mxCoSmu+99ePqMUXfcS08/4r/emz5k8W32DccdcDW7b6RFRlNx06ndd3BOr2chm9QUzNEiRaKObAOGi0BcWI3WLaSmDqPYTcjiPfhqVkH//rjDdNEyZM+Jo2f8vul+E/4fgF8dc77n5gx+vzFqXuUaoPGyqsfRmHa09lNtWfzmqtR1brIQfsQGZL/bemI3Wn0qqrh5SGzNZPVm4q+6/fP6ubNPlnu2ljZ+Jh4jLFhTie/dvsScMF+0nCian5y3+76jqf+x/6Q9jTz82MJ9QOjI0//uVlzaP//ee4f7/ptuBJEyd7Myq3DzdC4s3Lw7ffPe3qi/l/x8KTphB3EvcTvxv+tsOB8fE4If4X9T7iNuJau96PjnP8L3LKPp33y3hKAAAAAElFTkSuQmCC]]></data>
	</file>
	<file>
	  <filename>/images/valPack/valid/html4_0B.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/valPack/valid/html4_0_1B.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/valPack/valid/html5_0B.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/valPack/valid/MathML2_0B.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/valPack/valid/SVG1_0B.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/valPack/valid/SVG1_1B.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/valPack/valid/SVG1_2B.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/valPack/valid/SVGtiny1_1B.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/valPack/valid/SVGtiny1_2B.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/valPack/valid/xhtml1_0.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/valPack/valid/xhtml1_1.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/valPack/valid/xhtml2_0.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/valPack/valid/xhtmlbasic1_0.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/valPack/valid/xhtmlprint1_0.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/valPack/valid/XML1_0.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/valPack/valid/XML1_1.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/vcss-blue-off.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAAFgAAAAfCAYAAABjyArgAAAFeElEQVR42u2Zf2iVVRjH/cvYH9WqP4YlC2c/hLGV0goFK6xG04ybiLdSK2cl034yFeNWmncSuGqtbLW7lOjpx5aYq0a01FjGlVmxYiPIwe0PwaAmXGJsrIJRn0PP5bzvfe/P3dtWvoOH9z3POe95937Oc77nOefOGhwcFN+mbp1dXTLL64/KycnJGWO/xkfl+PfD/xl7Zf+78mLLPgneu84HXAwjcn3ARbS33vEB+4B9wD7gwgDuiQ7KDRt2yV751PHR+z/5Sm7c1GSubiCj4xMy/65GYzzrtkeaJdF2bGxMdoebpKGhQfS9vb29MvH7n+cG4DNnf5O5Kx6Ta9aGHBAHTp02/sC21iTADAp1qay160iibW1tLf+Esdmzz5NYLCZVVVXmWmjAJ4ZiM1Milm1+3oA5dfoXh7/y7h3GHx8dd/gbWzuNn0ilDkCH+gYSAzU+8Ydp908iLhUVFRIKhaSmpkZKSy+SkpISicfj544GIw/AafvwC4e/7vEXjJ+Itf1AxE/0qw85cbddvnyFgWrLQX19vYFdbA3WaC5GVOcMWOVgZeNLjo/WKW9r6lDsjPER9bZeu5/HiFb3u4CNLmcC3NTSJitXBWXJTbfImnX10tlzzPg/O/GdbN+5R26+rc7U3fPAw3L4aNTU9Q38KHv3dcjtd66SmsVLzfNvyMGiAlZGGbOIq1dvd8iBTnkMqdB26Cs+XRRpr1ICfHtxKy8vzyuLAJ5qdmX1Qimbc6mBRV0gaKJGFlRWS/XC68wgvhx5OwGXujmXzZVF1y82VwanWICvDWxyrD1pAROl9hTXssoEU82WDaKe8lNtBxMvCB/42GQYGqkscLkCVkhlZWWJyMQO9R43V4ACDqCUj37zg3x+csgxMNpWI74YZxG3PhjyXOBTAtbMQOWAiCbl4gM0YlU27IimvWqyyoQucpFIJGfATHkgcfX6OGSB+vMvuNDcE71ah3TYkU9Z4RfS7tgSTptFeQJmqlMJWDrhnugEFvkumquy8UTLe0nPIw8qFQwKvv7+/pwBIwVA2rjlSc+PA9ij256WKxdUJtK/rc+EHTMAeQAydQxCocAya9Y++3p6uOl2cuS8tizQKX7tNFVWobaz43BiYPLdyYX2NBswl8+bbwZKM4GeL78293rVqUrbpctqTRlJAQLtkQaiHPtX4aYDHOnuSzQmkjW90ixBTXXWbRr5pGxT2SprdJZefImJaCKSxY06cmgtazsGhTpA4yOL4J467jPBYyAJrvePnEzZJmu46QCz0dAHNoTfTNrtYat3vJoSlOo12m1vJNxGhmGnam7A9INEAJIMgqumW8gDZSKcVIyy6izyANh5V1xlNHj9Q5sdC2Uq05lJUBFMU4Kb6bAHODz0wbFvPXd7ejbBaLOj85KI+3a1SzQaTQmZcwnqs91oMOVz2TDk0t4Nj/WGDVc2cOvW3J/7aZqmXXy0127vp5/POtrhZ4FEl3WR4x55CQaDMjIykgSXBWh4eHjat8oaEF7GdxEoXnUMwtbnmvM7rtQp4/aT9y7ZuDtRJrvQ9IwX2mmatuE95LOBQMAYGw900Z2+TRdg1d50098LLrvMvM+DiTz3mYS9i7PLRDNRAGiMqLbPHTBOzYALaE7Rurs/SuoXjZ+ug5tssgMbLhLpH7jnYbpzzQTX/0VjCmZv+91w2/9OYf2fjIqw8JG62XB9wAUw1hr9ScwN1wdcIGNX6wX3fw2YFV+PKXNJxXLJKLLpP2vA/Lo7E4zU7bX2Aw7jA9y+jo6OJB9GXp2qPX6v59K1T9W/9sPZBxumtIA5DCc/5Yrx+5laPmXtK1XZ63l9N8ZhuV1W47jRXXb77Ofd/dhl+96rj3TtbdPvIK/34vsXNL9NGhbZlMYAAAAASUVORK5CYII=]]></data>
	</file>
	<file>
	  <filename>/images/vcss-blue.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/warnArrow.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAABgAAAAUCAIAAAAY12rUAAABo0lEQVR42mN4+mQtVRADHrl7VxZeOzQZGd08MYMcgx7cWLIq2nVDuDocrQnSODqrlGSDQGbdXLo22ftsi9rf4+J/j4u93yx9vFrj+LwKkg0Cooe3lm7OD7nQa/z7lCoQvduhearV9NTSWpINApl1e9nOuoRLM5x+nDUDord7rc5OdDm7tplkg4Do0Z3lB3qzry4J/nbBHYjeHPa+ODf44tZOkg0CmXVvxbHZZTfWJX6+EgFEr09EX1mZdGVvP8kGAdHj+ytPr6h/djzr47W0D9fSX53NvL45//rhKSQbBES3z825tq3i/Y0CCLp/qPTMqsbH91eRZtCd83OPzSkHugjoHCC6tzfnxMIqYHIjzUW3Ts860JfzeG8cJIzubk04NLng/tVFpIXRjWPTdtbEP9rmB4m126sDdjcn3720gLRYu3pg0sbswEfrbCHp6OYihy2FYUBvkpaOLu/uWxnp8miZLiRlX59huDbJ6/aZ2aSl7Ivbuxd7Wz5coPB6jQwQXZugsjzU4dapmaTlNaAGYI5dHesOR2sSvXCVJAz0KNgGxiAALzVVM11TTqQAAAAASUVORK5CYII=]]></data>
	</file>
	<file>
	  <filename>/images/warning.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACIElEQVR42qWTTUiUURSGn3u/b2zGvwwL7RcESYSKTAmhFu5aRhhFuG3Xqjbti8BWkeAihBaBkPQHFbVpa5HWFEFYgpimlYs0bX505jvntJhvRhdupAuHc+Fyn/O+594D/7ncmcsjl072dN1czFmNGaCKqSIqmBpqiomgZpgIokp9VTE7MTF/9cmt84Nh14mugUSyxjclt1S4JpuTAWAwzBXN5xYzW5aeL5oHCE2MG32tWwZc7J+hBDAFoBAJBpgaoqAYqoaoIpGVwpSCGC3NdYgKAB6zUje9wzvw3uEDCJwj9J4wCLG/HyhM9ZNweaoTIQAaxYB1EjjncN4ReIcPHM6Dtzyrs4+pbTxC8ecLwipfAkhJuTe1+EFdBeSdw3tHEDhy319S3dhB/e4OsrOvIDNdApQLlzfECjaCJDPPn6nn1O1sQFaesqv9Astf72MaoRoriIrFigIXXy7n318e0Nh6GlbTjN0bprYhz8r0KMszr4mKUWwh9hIArtwHIPsrjWSXqNuRQ9emwRTJjNPSc4W5N3dIsFq2oOsWys00YeHdXRoOHEVznzDN09nbhhZ+kExOUr+vm47UWGUWRpr27zmnIqgoIsKhbeOcPZ6k+WAKyYxhVuD9owk6e9txwXZInWJ06PpaleWPuc1+2dvb3XOH+4b3Bv4bFi0BtuHUE6TaWPj8kcln1x6GmwGitUIyPdSbNzUsns5SWCWjipk1/wOwZR+ItxFIhAAAAABJRU5ErkJggg==]]></data>
	</file>
	<file>
	  <filename>/images/wheel.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/_blank.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVR42mNgAAIAAAUAAen63NgAAAAASUVORK5CYII=]]></data>
	</file>
	<file>
	  <filename>/includes/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/includes/addons/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/includes/addons/pager/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/includes/addons/pager/icons/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/includes/addons/pager/icons/first.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACX0lEQVR42qWTTW8SURSG+QH+An5Hu3TphoWJ3XVn/IoJGxMXTV056cZFYwqZAaKYNq0NVCI1qQqpkbbSEaRpLHSgDB8CbaFQGHAYGBiGcpxzS8eideVN3mS4nPc5H/deg+GPdcMORk3jmkyaJocyDfeMhn8t7c9rmsaerIpm79cjJryXZvfjB0KMSwjbu0n2zVaOmfLUzRiDsVeZr7uDJSp2kOXLNREkuQfq2YCo2VagWKlDaJfj59ezFMaOQJCKZi75Q+p0VcAlK32oSz0QNLW6fbInyQpsR6KS05dCyJjeM5aNmS/MxXoXSo0ulBsKEX6vhis6ZH0jxD9aLpvJTHA4XvaQwbJxYcaJmS14YI+PmO8xHBzVOiQmmTsB2hNm0IsAU+h7isWesdRaEwGbBICVvNXMN6kdAihUOyC2VThtyLCw8p5FLwImo/txAYeF5qqowAS1CfdtHDC+AvlGISBXkUkVinoGy64VAb0EsBfjCADNqFtPA8Rg8x+OALJleVhFDxYWX+sA05edBNuQutCUVaj8RMBnYsifyuctDQGZkzY5mfRxA2inS29h3BXIMIViDQYDIIPD4Dv0eUYUVoV7qWIbev0BbHxLAOX4qA/R+NhdNQeCEV4QOyTg4vjSpTYRGvE3Jsho2a0vlvi7jrRZv9p4Keh3MWrtU1Aq11sksNFSSb/YBh4tgtPHdbA43dI07ft9kS5f5VlXhFryrPHhaAYKZZHMBHtO5AXwB2MwS8/zU9YPf1/ly4/p4au8eealn3luX2Rpm0OYszLCM4uTnbZ4mdtM8urH9D/P+Rc0EaljTdAswQAAAABJRU5ErkJggg==]]></data>
	</file>
	<file>
	  <filename>/includes/addons/pager/icons/last.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACcElEQVR42qVTS28SYRTtD/AX8DvapUs37MRH0p3xFZPZmLho6spJNXbRGCEzQBTTprWBSkJtUCE10iKdgjSNhQJlCgi0QHkNIwwMz3Kd+7WOVevKm5zNzD3nnvv4Rkb+iEsm0CgYU6BVMH4K7ek3zci/Qvl5QcHow+U65dg8ZAM7CW43uieEIzFhYzvOvfGm2Ql7jcIczD2PfNHmK9DhvRRfrNZBknvQPx4SNFpdyJdq4N+O8LOrKRpzfxNBVSRH4t+kdqcPGHJ3ADWpB4KCZmdAvklyFzaCIcni2keRUbVntI2Vf5KdW2Uofe9CUTxBQexAvtZRRVbX/Pz9xSJFZoLDcXAHLNrGqNS7cPWJD1aCJZWsm/LCXVOUuMGIp4+AsQdY5KKA1v91n8Oe0SqSrjz2KfDCcqAEOaGtCKwTgWqjB/VWH8qiDHNL7zjkosB4aDcq4LAwAQWwIuL6dABYVxZ09DrcMUaIu8NqG7r9Y1i0LgnIJQI74QgRwATsFcnXnm6Sykb3AVx+5IHb7IlAttJWXPRgbv61KqD9vBXjRKkDDblPKhCyUhUdpUuyIvCJCOBgcTOJnAiMxaq2MGb1JNlsvgrDIZAKOtpDyKmiTIDkm0yEtNcbDGHtSwxo8wd1iJoHtgrl8QV5od5WN4HE5FELEoWWuk4kJ5XqhhcL/C1zglJPG4+CeRumnR99UrHWJE7EZp+4yZRlsj4kJ3I10Fts0iTj+nVIZ095xhqkF+xOPhBKQrZYJzPBnmMZAdy+MMwws/yE4f3fp3z2Md17laGmXrrZZ6Z5jjGahecGVpjWW7hJvYO9wcbPf0z/85x/APdIqMvUOSghAAAAAElFTkSuQmCC]]></data>
	</file>
	<file>
	  <filename>/includes/addons/pager/icons/next.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACb0lEQVR42qVTS28SURTmB/gL+jvapUs37KjWpDsTNyZsTFw0dWMn9dFFY4QwliimTWsDlQRNqrapKRXpAGIaCwXK8BAojw6FGRyGGR5DOc651LFqXXmSbzF3zved8517rsHwR1xZgBENYxqMGibPYDw7GzH8K7SflzSM3n0tmj2BIh3aTzMH8UM+Gkvwu3tJ5pUvR0+5BTPmYO5F5Msuf4WKHmZZri6CpPRAPR0QNOUulKsCBPdi7OJWlsLc30RQFcmx5Dep3VEBQ+n2QZB6wGtodfrkTFK6sBuOSI6NFIqM6p6xbaz8k5w5lqH6vQtcY4hUWYay0NFFtnaC7O1VzkxmgsPxMEc0to1RE7tw7YGfkJBcaXRgfNYH8aIExXqb5CRzx2Bzh2jkooAx+DXFoGdsFUlX7/s1+CBZbkGJb2sCHwliRxKIsgonDQWW1t4yyEWBychBnMdh1Zs9IoAVEdfnQpCuyDBOaQKUFyYeBsh3Vz2FVecaj1wisB+NEQFsH70ieeJRgFRFUdOMl9gyzWyTb1HuwdLyS13A+OlLgmlIHWgqKvFJyNSQnKsqOhkL4M2kSw2wOZy6hTGnN0MXynUYDAAKtTZpF8lZTiEw3dsmt4KD7fUHsPM5AZT9vT7EkTuumtnrD7O82NZvAol4negZyThQLJDRqlufrbA37Wmzvtq4FLY3UWr9g1/ihGFio6WSbvInClkmrJwuCWBxuKRp28avRTq/yvPOMLXiXmdDkQwUOJHMBD0n8jxs+qMwb1tkp6zv/l7l84/p1ou8efb5Jv14YZmxPbXzT6w0P2dxMNMWD32DTl78mP7nOf8AaxCosMjM2Z8AAAAASUVORK5CYII=]]></data>
	</file>
	<file>
	  <filename>/includes/addons/pager/icons/prev.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACdklEQVR42qVTTW8SYRDmB/gL+jvao0cvJBo/ohb1YOLFhIuJh6Y1MZIa01ishbCWKKZNawOVBE1AW2tsrXQFaUiBUsryIWCBQmHZwsLCspRx56Ui1XpykiebfXeeZ56ZnVeh+CPOTEGfjAEZShmqIyiPzvoU/wr54ykZ/SNvymrb113K7YvSW9s7bCAYYte9Yfr1WoIaspbUmIO5J5FPW5xZTWAnzuSKZeCFJkiHbYJKTYRMvgQub5CZXo5rMPeYCKoiORj+ztcbEmAIYgtKfBNYGdVGi5zxggjrHj9vWoygSH+3Z7SNlX+RC2URdot1yHEiQZZrQCIvdEWWV13MnfmcmswEh2Ojf1Bou5es0nqPkQfHN8g5RjixBwarm0IuCihdmxEae0arqUIdLj10EoFMqQHxnADn7jmIAH4r1yTY5wSYWXDQyEUBlX9rm8Vh5Q9EuDj6WcYaIWDlsyN2GQ64+thD3tGFKB3CvHmBRS4R8AWCRKBYacK1CT9cePCJCKDg5Uc0nL//Aa6MuYmbjosmzMy+6goov2yEaI5vQEWQIM3K/T/xyS1sQnK/Q0CxwXEvxPZq5M9E0xwYTOZuCwPmlRiVyhSh3QZCQJs3JgOkIgKtX3/qh0imBs1WG1a/hUBjfN8dYt9dS0G94vQwbLkzZSRhdawYzdYIEZ9YICZX1z+fY24Zo+ruauNSGN4GNPaPTj5XqpJErioRNyiEy4SVo+kS6EwWftiw+HuReldZa/Zo5qx2xu2PQSpXJjPBnkNJFpacAdAappkh/bu/V7n3Mt1+mVSPvliiJqZmacMzIzupp9gxnYke1tmom1T45Mv0P9f5J1RWqY0WdGOnAAAAAElFTkSuQmCC]]></data>
	</file>
	<file>
	  <filename>/includes/addons/pager/jquery.tablesorter.pager.css</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[ZGl2LnRhYmxlc29ydGVyUGFnZXIgew0KCXBhZGRpbmc6IDEwcHggMCAxMHB4IDA7DQoJYmFja2dyb3VuZC1jb2xvcjogI0Q2RDJDMjsNCgl0ZXh0LWFsaWduOiBjZW50ZXI7DQp9DQpkaXYudGFibGVzb3J0ZXJQYWdlciBzcGFuIHsNCglwYWRkaW5nOiAwIDVweCAwIDVweDsNCn0NCmRpdi50YWJsZXNvcnRlclBhZ2VyIGlucHV0LnByZXYgew0KCXdpZHRoOiBhdXRvOw0KCW1hcmdpbi1yaWdodDogMTBweDsNCn0NCmRpdi50YWJsZXNvcnRlclBhZ2VyIGlucHV0Lm5leHQgew0KCXdpZHRoOiBhdXRvOw0KCW1hcmdpbi1sZWZ0OiAxMHB4Ow0KfQ0KZGl2LnRhYmxlc29ydGVyUGFnZXIgaW5wdXQgew0KCWZvbnQtc2l6ZTogOHB4Ow0KCXdpZHRoOiA1MHB4Ow0KCWJvcmRlcjogMXB4IHNvbGlkICMzMzAwMDA7DQoJdGV4dC1hbGlnbjogY2VudGVyOw0KfQ0KDQoNCiAg]]></data>
	</file>
	<file>
	  <filename>/includes/addons/pager/jquery.tablesorter.pager.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[KGZ1bmN0aW9uKCQpIHsNCgkkLmV4dGVuZCh7DQoJCXRhYmxlc29ydGVyUGFnZXI6IG5ldyBmdW5jdGlvbigpIHsNCgkJCQ0KCQkJZnVuY3Rpb24gdXBkYXRlUGFnZURpc3BsYXkoYykgew0KCQkJCXZhciBzID0gJChjLmNzc1BhZ2VEaXNwbGF5LGMuY29udGFpbmVyKS52YWwoKGMucGFnZSsxKSArIGMuc2VwZXJhdG9yICsgYy50b3RhbFBhZ2VzKTsJDQoJCQl9DQoJCQkNCgkJCWZ1bmN0aW9uIHNldFBhZ2VTaXplKHRhYmxlLHNpemUpIHsNCgkJCQl2YXIgYyA9IHRhYmxlLmNvbmZpZzsNCgkJCQljLnNpemUgPSBzaXplOw0KCQkJCWMudG90YWxQYWdlcyA9IE1hdGguY2VpbChjLnRvdGFsUm93cyAvIGMuc2l6ZSk7DQoJCQkJYy5wYWdlclBvc2l0aW9uU2V0ID0gZmFsc2U7DQoJCQkJbW92ZVRvUGFnZSh0YWJsZSk7DQoJCQkJZml4UG9zaXRpb24odGFibGUpOw0KCQkJfQ0KCQkJDQoJCQlmdW5jdGlvbiBmaXhQb3NpdGlvbih0YWJsZSkgew0KCQkJCXZhciBjID0gdGFibGUuY29uZmlnOw0KCQkJCWlmKCFjLnBhZ2VyUG9zaXRpb25TZXQgJiYgYy5wb3NpdGlvbkZpeGVkKSB7DQoJCQkJCXZhciBjID0gdGFibGUuY29uZmlnLCBvID0gJCh0YWJsZSk7DQoJCQkJCWlmKG8ub2Zmc2V0KSB7DQoJCQkJCQljLmNvbnRhaW5lci5jc3Moew0KCQkJCQkJCXRvcDogby5vZmZzZXQoKS50b3AgKyBvLmhlaWdodCgpICsgJ3B4JywNCgkJCQkJCQlwb3NpdGlvbjogJ2Fic29sdXRlJw0KCQkJCQkJfSk7DQoJCQkJCX0NCgkJCQkJYy5wYWdlclBvc2l0aW9uU2V0ID0gdHJ1ZTsNCgkJCQl9DQoJCQl9DQoJCQkNCgkJCWZ1bmN0aW9uIG1vdmVUb0ZpcnN0UGFnZSh0YWJsZSkgew0KCQkJCXZhciBjID0gdGFibGUuY29uZmlnOw0KCQkJCWMucGFnZSA9IDA7DQoJCQkJbW92ZVRvUGFnZSh0YWJsZSk7DQoJCQl9DQoJCQkNCgkJCWZ1bmN0aW9uIG1vdmVUb0xhc3RQYWdlKHRhYmxlKSB7DQoJCQkJdmFyIGMgPSB0YWJsZS5jb25maWc7DQoJCQkJYy5wYWdlID0gKGMudG90YWxQYWdlcy0xKTsNCgkJCQltb3ZlVG9QYWdlKHRhYmxlKTsNCgkJCX0NCgkJCQ0KCQkJZnVuY3Rpb24gbW92ZVRvTmV4dFBhZ2UodGFibGUpIHsNCgkJCQl2YXIgYyA9IHRhYmxlLmNvbmZpZzsNCgkJCQljLnBhZ2UrKzsNCgkJCQlpZihjLnBhZ2UgPj0gKGMudG90YWxQYWdlcy0xKSkgew0KCQkJCQljLnBhZ2UgPSAoYy50b3RhbFBhZ2VzLTEpOw0KCQkJCX0NCgkJCQltb3ZlVG9QYWdlKHRhYmxlKTsNCgkJCX0NCgkJCQ0KCQkJZnVuY3Rpb24gbW92ZVRvUHJldlBhZ2UodGFibGUpIHsNCgkJCQl2YXIgYyA9IHRhYmxlLmNvbmZpZzsNCgkJCQljLnBhZ2UtLTsNCgkJCQlpZihjLnBhZ2UgPD0gMCkgew0KCQkJCQljLnBhZ2UgPSAwOw0KCQkJCX0NCgkJCQltb3ZlVG9QYWdlKHRhYmxlKTsNCgkJCX0NCgkJCQkJCQ0KCQkJDQoJCQlmdW5jdGlvbiBtb3ZlVG9QYWdlKHRhYmxlKSB7DQoJCQkJdmFyIGMgPSB0YWJsZS5jb25maWc7DQoJCQkJaWYoYy5wYWdlIDwgMCB8fCBjLnBhZ2UgPiAoYy50b3RhbFBhZ2VzLTEpKSB7DQoJCQkJCWMucGFnZSA9IDA7DQoJCQkJfQ0KCQkJCQ0KCQkJCXJlbmRlclRhYmxlKHRhYmxlLGMucm93c0NvcHkpOw0KCQkJfQ0KCQkJDQoJCQlmdW5jdGlvbiByZW5kZXJUYWJsZSh0YWJsZSxyb3dzKSB7DQoJCQkJDQoJCQkJdmFyIGMgPSB0YWJsZS5jb25maWc7DQoJCQkJdmFyIGwgPSByb3dzLmxlbmd0aDsNCgkJCQl2YXIgcyA9IChjLnBhZ2UgKiBjLnNpemUpOw0KCQkJCXZhciBlID0gKHMgKyBjLnNpemUpOw0KCQkJCWlmKGUgPiByb3dzLmxlbmd0aCApIHsNCgkJCQkJZSA9IHJvd3MubGVuZ3RoOw0KCQkJCX0NCgkJCQkNCgkJCQkNCgkJCQl2YXIgdGFibGVCb2R5ID0gJCh0YWJsZS50Qm9kaWVzWzBdKTsNCgkJCQkNCgkJCQkvLyBjbGVhciB0aGUgdGFibGUgYm9keQ0KCQkJCQ0KCQkJCSQudGFibGVzb3J0ZXIuY2xlYXJUYWJsZUJvZHkodGFibGUpOw0KCQkJCQ0KCQkJCWZvcih2YXIgaSA9IHM7IGkgPCBlOyBpKyspIHsNCgkJCQkJDQoJCQkJCS8vdGFibGVCb2R5LmFwcGVuZChyb3dzW2ldKTsNCgkJCQkJDQoJCQkJCXZhciBvID0gcm93c1tpXTsNCgkJCQkJdmFyIGwgPSBvLmxlbmd0aDsNCgkJCQkJZm9yKHZhciBqPTA7IGogPCBsOyBqKyspIHsNCgkJCQkJCQ0KCQkJCQkJdGFibGVCb2R5WzBdLmFwcGVuZENoaWxkKG9bal0pOw0KDQoJCQkJCX0NCgkJCQl9DQoJCQkJDQoJCQkJZml4UG9zaXRpb24odGFibGUsdGFibGVCb2R5KTsNCgkJCQkNCgkJCQkkKHRhYmxlKS50cmlnZ2VyKCJhcHBseVdpZGdldHMiKTsNCgkJCQkNCgkJCQlpZiggYy5wYWdlID49IGMudG90YWxQYWdlcyApIHsNCiAgICAgICAgCQkJbW92ZVRvTGFzdFBhZ2UodGFibGUpOw0KCQkJCX0NCgkJCQkNCgkJCQl1cGRhdGVQYWdlRGlzcGxheShjKTsNCgkJCX0NCgkJCQ0KCQkJdGhpcy5hcHBlbmRlciA9IGZ1bmN0aW9uKHRhYmxlLHJvd3MpIHsNCgkJCQkNCgkJCQl2YXIgYyA9IHRhYmxlLmNvbmZpZzsNCgkJCQkNCgkJCQljLnJvd3NDb3B5ID0gcm93czsNCgkJCQljLnRvdGFsUm93cyA9IHJvd3MubGVuZ3RoOw0KCQkJCWMudG90YWxQYWdlcyA9IE1hdGguY2VpbChjLnRvdGFsUm93cyAvIGMuc2l6ZSk7DQoJCQkJDQoJCQkJcmVuZGVyVGFibGUodGFibGUscm93cyk7DQoJCQl9Ow0KCQkJDQoJCQl0aGlzLmRlZmF1bHRzID0gew0KCQkJCXNpemU6IDEwLA0KCQkJCW9mZnNldDogMCwNCgkJCQlwYWdlOiAwLA0KCQkJCXRvdGFsUm93czogMCwNCgkJCQl0b3RhbFBhZ2VzOiAwLA0KCQkJCWNvbnRhaW5lcjogbnVsbCwNCgkJCQljc3NOZXh0OiAnLm5leHQnLA0KCQkJCWNzc1ByZXY6ICcucHJldicsDQoJCQkJY3NzRmlyc3Q6ICcuZmlyc3QnLA0KCQkJCWNzc0xhc3Q6ICcubGFzdCcsDQoJCQkJY3NzUGFnZURpc3BsYXk6ICcucGFnZWRpc3BsYXknLA0KCQkJCWNzc1BhZ2VTaXplOiAnLnBhZ2VzaXplJywNCgkJCQlzZXBlcmF0b3I6ICIvIiwNCgkJCQlwb3NpdGlvbkZpeGVkOiB0cnVlLA0KCQkJCWFwcGVuZGVyOiB0aGlzLmFwcGVuZGVyDQoJCQl9Ow0KCQkJDQoJCQl0aGlzLmNvbnN0cnVjdCA9IGZ1bmN0aW9uKHNldHRpbmdzKSB7DQoJCQkJDQoJCQkJcmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpIHsJDQoJCQkJCQ0KCQkJCQljb25maWcgPSAkLmV4dGVuZCh0aGlzLmNvbmZpZywgJC50YWJsZXNvcnRlclBhZ2VyLmRlZmF1bHRzLCBzZXR0aW5ncyk7DQoJCQkJCQ0KCQkJCQl2YXIgdGFibGUgPSB0aGlzLCBwYWdlciA9IGNvbmZpZy5jb250YWluZXI7DQoJCQkJDQoJCQkJCSQodGhpcykudHJpZ2dlcigiYXBwZW5kQ2FjaGUiKTsNCgkJCQkJDQoJCQkJCWNvbmZpZy5zaXplID0gcGFyc2VJbnQoJCgiLnBhZ2VzaXplIixwYWdlcikudmFsKCkpOw0KCQkJCQkNCgkJCQkJJChjb25maWcuY3NzRmlyc3QscGFnZXIpLmNsaWNrKGZ1bmN0aW9uKCkgew0KCQkJCQkJbW92ZVRvRmlyc3RQYWdlKHRhYmxlKTsNCgkJCQkJCXJldHVybiBmYWxzZTsNCgkJCQkJfSk7DQoJCQkJCSQoY29uZmlnLmNzc05leHQscGFnZXIpLmNsaWNrKGZ1bmN0aW9uKCkgew0KCQkJCQkJbW92ZVRvTmV4dFBhZ2UodGFibGUpOw0KCQkJCQkJcmV0dXJuIGZhbHNlOw0KCQkJCQl9KTsNCgkJCQkJJChjb25maWcuY3NzUHJldixwYWdlcikuY2xpY2soZnVuY3Rpb24oKSB7DQoJCQkJCQltb3ZlVG9QcmV2UGFnZSh0YWJsZSk7DQoJCQkJCQlyZXR1cm4gZmFsc2U7DQoJCQkJCX0pOw0KCQkJCQkkKGNvbmZpZy5jc3NMYXN0LHBhZ2VyKS5jbGljayhmdW5jdGlvbigpIHsNCgkJCQkJCW1vdmVUb0xhc3RQYWdlKHRhYmxlKTsNCgkJCQkJCXJldHVybiBmYWxzZTsNCgkJCQkJfSk7DQoJCQkJCSQoY29uZmlnLmNzc1BhZ2VTaXplLHBhZ2VyKS5jaGFuZ2UoZnVuY3Rpb24oKSB7DQoJCQkJCQlzZXRQYWdlU2l6ZSh0YWJsZSxwYXJzZUludCgkKHRoaXMpLnZhbCgpKSk7DQoJCQkJCQlyZXR1cm4gZmFsc2U7DQoJCQkJCX0pOw0KCQkJCX0pOw0KCQkJfTsNCgkJCQ0KCQl9DQoJfSk7DQoJLy8gZXh0ZW5kIHBsdWdpbiBzY29wZQ0KCSQuZm4uZXh0ZW5kKHsNCiAgICAgICAgdGFibGVzb3J0ZXJQYWdlcjogJC50YWJsZXNvcnRlclBhZ2VyLmNvbnN0cnVjdA0KCX0pOw0KCQ0KfSkoalF1ZXJ5KTsJCQkJ]]></data>
	</file>
	<file>
	  <filename>/includes/CodeMirror/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/includes/CodeMirror/css/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/includes/CodeMirror/css/csscolors.css</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[aHRtbCB7DQogIGN1cnNvcjogdGV4dDsNCn0NCg0KLmVkaXRib3ggew0KICAvKm1hcmdpbjogLjRlbTsqLw0KICBtYXJnaW46MHB4Ow0KICBwYWRkaW5nOjAgNXB4Ow0KICBmb250LWZhbWlseTogbW9ub3NwYWNlOw0KICBmb250LXNpemU6IDEwcHQ7DQogIGNvbG9yOiBibGFjazsNCn0NCg0KcHJlLmNvZGUsIC5lZGl0Ym94IHsNCiAgY29sb3I6ICM2NjY7DQp9DQoNCi5lZGl0Ym94IHAgew0KICBtYXJnaW46IDA7DQp9DQoNCnNwYW4uY3NzLWF0IHsNCiAgY29sb3I6ICM3MDg7DQp9DQoNCnNwYW4uY3NzLXVuaXQgew0KICBjb2xvcjogIzI4MTsNCn0NCg0Kc3Bhbi5jc3MtdmFsdWUgew0KICBjb2xvcjogIzcwODsNCn0NCg0Kc3Bhbi5jc3MtaWRlbnRpZmllciB7DQoJY29sb3I6ICMwMDAwNjY7DQp9DQoNCnNwYW4uY3NzLXNlbGVjdG9yIHsNCgljb2xvcjogI0ZGMDA5OTsNCn0NCg0Kc3Bhbi5jc3MtaW1wb3J0YW50IHsNCiAgY29sb3I6ICMwMEY7DQp9DQoNCnNwYW4uY3NzLWNvbG9yY29kZSB7DQogIGNvbG9yOiAjMjk5Ow0KfQ0KDQpzcGFuLmNzcy1jb21tZW50IHsNCgljb2xvcjogIzY2NjY2NjsNCn0NCg0Kc3Bhbi5jc3Mtc3RyaW5nIHsNCiAgY29sb3I6ICNBMjI7DQp9DQo=]]></data>
	</file>
	<file>
	  <filename>/includes/CodeMirror/css/jscolors.css</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[aHRtbCB7DQogIGN1cnNvcjogdGV4dDsNCn0NCg0KLmVkaXRib3ggew0KICAvKm1hcmdpbjogLjRlbTsqLw0KICBtYXJnaW46MHB4Ow0KICBwYWRkaW5nOjAgNXB4Ow0KICBmb250LWZhbWlseTogbW9ub3NwYWNlOw0KICBmb250LXNpemU6IDEwcHQ7DQogIGNvbG9yOiBibGFjazsNCn0NCg0KcHJlLmNvZGUsIC5lZGl0Ym94IHsNCiAgY29sb3I6ICM2NjY2NjY7DQp9DQoNCi5lZGl0Ym94IHAgew0KICBtYXJnaW46IDA7DQp9DQoNCnNwYW4uanMtcHVuY3R1YXRpb24gew0KICBjb2xvcjogIzY2NjY2NjsNCn0NCg0Kc3Bhbi5qcy1vcGVyYXRvciB7DQogIGNvbG9yOiAjNjY2NjY2Ow0KfQ0KDQpzcGFuLmpzLWtleXdvcmQgew0KICBjb2xvcjogIzc3MDA4ODsNCn0NCg0Kc3Bhbi5qcy1hdG9tIHsNCiAgY29sb3I6ICMyMjg4MTE7DQp9DQoNCnNwYW4uanMtdmFyaWFibGUgew0KICBjb2xvcjogYmxhY2s7DQp9DQoNCnNwYW4uanMtdmFyaWFibGVkZWYgew0KICBjb2xvcjogIzAwMDBGRjsNCn0NCg0Kc3Bhbi5qcy1sb2NhbHZhcmlhYmxlIHsNCiAgY29sb3I6ICMwMDQ0OTk7DQp9DQoNCnNwYW4uanMtcHJvcGVydHkgew0KICBjb2xvcjogYmxhY2s7DQp9DQoNCnNwYW4uanMtY29tbWVudCB7DQogIGNvbG9yOiAjQUE3NzAwOw0KfQ0KDQpzcGFuLmpzLXN0cmluZyB7DQogIGNvbG9yOiAjQUEyMjIyOw0KfQ0K]]></data>
	</file>
	<file>
	  <filename>/includes/CodeMirror/css/sparqlcolors.css</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[aHRtbCB7DQogIGN1cnNvcjogdGV4dDsNCn0NCg0KLmVkaXRib3ggew0KICAvKm1hcmdpbjogLjRlbTsqLw0KICBtYXJnaW46MHB4Ow0KICBwYWRkaW5nOjAgNXB4Ow0KICBmb250LWZhbWlseTogbW9ub3NwYWNlOw0KICBmb250LXNpemU6IDEwcHQ7DQogIGNvbG9yOiBibGFjazsNCn0NCg0KLmVkaXRib3ggcCB7DQogIG1hcmdpbjogMDsNCn0NCg0Kc3Bhbi5zcC1rZXl3b3JkIHsNCiAgY29sb3I6ICM3MDg7DQp9DQoNCnNwYW4uc3AtcHJlZml4ZWQgew0KICBjb2xvcjogIzVkMTsNCn0NCg0Kc3Bhbi5zcC12YXIgew0KICBjb2xvcjogIzAwYzsNCn0NCg0Kc3Bhbi5zcC1jb21tZW50IHsNCiAgY29sb3I6ICNhNzA7DQp9DQoNCnNwYW4uc3AtbGl0ZXJhbCB7DQogIGNvbG9yOiAjYTIyOw0KfQ0KDQpzcGFuLnNwLXVyaSB7DQogIGNvbG9yOiAjMjkyOw0KfQ0KDQpzcGFuLnNwLW9wZXJhdG9yIHsNCiAgY29sb3I6ICMwODg7DQp9DQo=]]></data>
	</file>
	<file>
	  <filename>/includes/CodeMirror/css/xmlcolors.css</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[aHRtbCB7DQogIGN1cnNvcjogdGV4dDsNCn0NCg0KLmVkaXRib3ggew0KICAvKm1hcmdpbjogLjRlbTsqLw0KICBtYXJnaW46MHB4Ow0KICBwYWRkaW5nOjAgNXB4Ow0KICBmb250LWZhbWlseTogbW9ub3NwYWNlOw0KICBmb250LXNpemU6IDEwcHQ7DQogIGNvbG9yOiBibGFjazsNCn0NCg0KLmVkaXRib3ggcCB7DQogIG1hcmdpbjogMDsNCn0NCg0Kc3Bhbi54bWwtdGFnbmFtZSB7DQogIGNvbG9yOiAjQTBCOw0KfQ0KDQpzcGFuLnhtbC1hdHRyaWJ1dGUgew0KICBjb2xvcjogIzI4MTsNCn0NCg0Kc3Bhbi54bWwtcHVuY3R1YXRpb24gew0KICBjb2xvcjogYmxhY2s7DQp9DQoNCnNwYW4ueG1sLWF0dG5hbWUgew0KICBjb2xvcjogIzAwRjsNCn0NCg0Kc3Bhbi54bWwtY29tbWVudCB7DQogIGNvbG9yOiAjQTcwOw0KfQ0KDQpzcGFuLnhtbC1jZGF0YSB7DQogIGNvbG9yOiAjNDhBOw0KfQ0KDQpzcGFuLnhtbC1wcm9jZXNzaW5nIHsNCiAgY29sb3I6ICM5OTk7DQp9DQoNCnNwYW4ueG1sLWVudGl0eSB7DQogIGNvbG9yOiAjQTIyOw0KfQ0KDQpzcGFuLnhtbC1lcnJvciB7DQogY29sb3I6ICNGMDAgIWltcG9ydGFudDsNCn0NCg0Kc3Bhbi54bWwtdGV4dCB7DQogIGNvbG9yOiBibGFjazsNCn0NCg==]]></data>
	</file>
	<file>
	  <filename>/includes/CodeMirror/js/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/includes/CodeMirror/js/codemirror.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[LyogQ29kZU1pcnJvciBtYWluIG1vZHVsZSAoaHR0cDovL2NvZGVtaXJyb3IubmV0LykNCiAqDQogKiBJbXBsZW1lbnRzIHRoZSBDb2RlTWlycm9yIGNvbnN0cnVjdG9yIGFuZCBwcm90b3R5cGUsIHdoaWNoIHRha2UgY2FyZQ0KICogb2YgaW5pdGlhbGl6aW5nIHRoZSBlZGl0b3IgZnJhbWUsIGFuZCBwcm92aWRpbmcgdGhlIG91dHNpZGUgaW50ZXJmYWNlLg0KICovDQoNCi8vIFRoZSBDb2RlTWlycm9yQ29uZmlnIG9iamVjdCBpcyB1c2VkIHRvIHNwZWNpZnkgYSBkZWZhdWx0DQovLyBjb25maWd1cmF0aW9uLiBJZiB5b3Ugc3BlY2lmeSBzdWNoIGFuIG9iamVjdCBiZWZvcmUgbG9hZGluZyB0aGlzDQovLyBmaWxlLCB0aGUgdmFsdWVzIHlvdSBwdXQgaW50byBpdCB3aWxsIG92ZXJyaWRlIHRoZSBkZWZhdWx0cyBnaXZlbg0KLy8gYmVsb3cuIFlvdSBjYW4gYWxzbyBhc3NpZ24gdG8gaXQgYWZ0ZXIgbG9hZGluZy4NCnZhciBDb2RlTWlycm9yQ29uZmlnID0gd2luZG93LkNvZGVNaXJyb3JDb25maWcgfHwge307DQoNCnZhciBDb2RlTWlycm9yID0gKGZ1bmN0aW9uKCl7DQogIGZ1bmN0aW9uIHNldERlZmF1bHRzKG9iamVjdCwgZGVmYXVsdHMpIHsNCiAgICBmb3IgKHZhciBvcHRpb24gaW4gZGVmYXVsdHMpIHsNCiAgICAgIGlmICghb2JqZWN0Lmhhc093blByb3BlcnR5KG9wdGlvbikpDQogICAgICAgIG9iamVjdFtvcHRpb25dID0gZGVmYXVsdHNbb3B0aW9uXTsNCiAgICB9DQogIH0NCiAgZnVuY3Rpb24gZm9yRWFjaChhcnJheSwgYWN0aW9uKSB7DQogICAgZm9yICh2YXIgaSA9IDA7IGkgPCBhcnJheS5sZW5ndGg7IGkrKykNCiAgICAgIGFjdGlvbihhcnJheVtpXSk7DQogIH0NCg0KICAvLyBUaGVzZSBkZWZhdWx0IG9wdGlvbnMgY2FuIGJlIG92ZXJyaWRkZW4gYnkgcGFzc2luZyBhIHNldCBvZg0KICAvLyBvcHRpb25zIHRvIGEgc3BlY2lmaWMgQ29kZU1pcnJvciBjb25zdHJ1Y3Rvci4gU2VlIG1hbnVhbC5odG1sIGZvcg0KICAvLyB0aGVpciBtZWFuaW5nLg0KICBzZXREZWZhdWx0cyhDb2RlTWlycm9yQ29uZmlnLCB7DQogICAgc3R5bGVzaGVldDogW10sDQogICAgcGF0aDogIiIsDQogICAgcGFyc2VyZmlsZTogW10sDQogICAgYmFzZWZpbGVzOiBbInV0aWwuanMiLCAic3RyaW5nc3RyZWFtLmpzIiwgInNlbGVjdC5qcyIsICJ1bmRvLmpzIiwgImVkaXRvci5qcyIsICJ0b2tlbml6ZS5qcyJdLA0KICAgIGlmcmFtZUNsYXNzOiBudWxsLA0KICAgIHBhc3NEZWxheTogMjAwLA0KICAgIHBhc3NUaW1lOiA1MCwNCiAgICBsaW5lTnVtYmVyRGVsYXk6IDIwMCwNCiAgICBsaW5lTnVtYmVyVGltZTogNTAsDQogICAgY29udGludW91c1NjYW5uaW5nOiBmYWxzZSwNCiAgICBzYXZlRnVuY3Rpb246IG51bGwsDQogICAgb25DaGFuZ2U6IG51bGwsDQogICAgdW5kb0RlcHRoOiA1MCwNCiAgICB1bmRvRGVsYXk6IDgwMCwNCiAgICBkaXNhYmxlU3BlbGxjaGVjazogdHJ1ZSwNCiAgICB0ZXh0V3JhcHBpbmc6IHRydWUsDQogICAgcmVhZE9ubHk6IGZhbHNlLA0KICAgIHdpZHRoOiAiIiwNCiAgICBoZWlnaHQ6ICIzMDBweCIsDQogICAgbWluSGVpZ2h0OiAxMDAsDQogICAgYXV0b01hdGNoUGFyZW5zOiBmYWxzZSwNCiAgICBwYXJzZXJDb25maWc6IG51bGwsDQogICAgdGFiTW9kZTogImluZGVudCIsIC8vIG9yICJzcGFjZXMiLCAiZGVmYXVsdCIsICJzaGlmdCINCiAgICBlbnRlck1vZGU6ICJpbmRlbnQiLCAvLyBvciAia2VlcCIsICJmbGF0Ig0KICAgIGVsZWN0cmljQ2hhcnM6IHRydWUsDQogICAgcmVpbmRlbnRPbkxvYWQ6IGZhbHNlLA0KICAgIGFjdGl2ZVRva2VuczogbnVsbCwNCiAgICBjdXJzb3JBY3Rpdml0eTogbnVsbCwNCiAgICBsaW5lTnVtYmVyczogZmFsc2UsDQogICAgZmlyc3RMaW5lTnVtYmVyOiAxLA0KICAgIGluZGVudFVuaXQ6IDIsDQogICAgZG9tYWluOiBudWxsDQogIH0pOw0KDQogIGZ1bmN0aW9uIGFkZExpbmVOdW1iZXJEaXYoY29udGFpbmVyLCBmaXJzdE51bSkgew0KICAgIHZhciBudW1zID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiRElWIiksDQogICAgICAgIHNjcm9sbGVyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiRElWIik7DQogICAgbnVtcy5zdHlsZS5wb3NpdGlvbiA9ICJhYnNvbHV0ZSI7DQogICAgbnVtcy5zdHlsZS5oZWlnaHQgPSAiMTAwJSI7DQogICAgaWYgKG51bXMuc3R5bGUuc2V0RXhwcmVzc2lvbikgew0KICAgICAgdHJ5IHtudW1zLnN0eWxlLnNldEV4cHJlc3Npb24oImhlaWdodCIsICJ0aGlzLnByZXZpb3VzU2libGluZy5vZmZzZXRIZWlnaHQgKyAncHgnIik7fQ0KICAgICAgY2F0Y2goZSkge30gLy8gU2VlbXMgdG8gdGhyb3cgJ05vdCBJbXBsZW1lbnRlZCcgb24gc29tZSBJRTggdmVyc2lvbnMNCiAgICB9DQoJLyogIGplcmVteUJhc3MgUmVtb3ZlZCAtLSBBbGwgc3R5bGVzIHNob3VkIGJlIGluIGEgY3NzIGRvYyAqLw0KICAgIC8qbnVtcy5zdHlsZS50b3AgPSAiMHB4IjsNCiAgICBudW1zLnN0eWxlLmxlZnQgPSAiMHB4IjsqLwkNCgludW1zLnNldEF0dHJpYnV0ZSgnaWQnLCdDTV9saW5lTnVtYmVycycpOw0KDQogICAgbnVtcy5zdHlsZS5vdmVyZmxvdyA9ICJoaWRkZW4iOw0KICAgIGNvbnRhaW5lci5hcHBlbmRDaGlsZChudW1zKTsNCiAgICBzY3JvbGxlci5jbGFzc05hbWUgPSAiQ29kZU1pcnJvci1saW5lLW51bWJlcnMiOw0KICAgIG51bXMuYXBwZW5kQ2hpbGQoc2Nyb2xsZXIpOw0KICAgIHNjcm9sbGVyLmlubmVySFRNTCA9ICI8ZGl2IGlkPSdMXyIgKyBmaXJzdE51bSArICInPiIgKyBmaXJzdE51bSArICI8L2Rpdj4iOw0KICAgIHJldHVybiBudW1zOw0KICB9DQoNCiAgZnVuY3Rpb24gZnJhbWVIVE1MKG9wdGlvbnMpIHsNCiAgICBpZiAodHlwZW9mIG9wdGlvbnMucGFyc2VyZmlsZSA9PSAic3RyaW5nIikNCiAgICAgIG9wdGlvbnMucGFyc2VyZmlsZSA9IFtvcHRpb25zLnBhcnNlcmZpbGVdOw0KICAgIGlmICh0eXBlb2Ygb3B0aW9ucy5iYXNlZmlsZXMgPT0gInN0cmluZyIpDQogICAgICBvcHRpb25zLmJhc2VmaWxlcyA9IFtvcHRpb25zLmJhc2VmaWxlc107DQogICAgaWYgKHR5cGVvZiBvcHRpb25zLnN0eWxlc2hlZXQgPT0gInN0cmluZyIpDQogICAgICBvcHRpb25zLnN0eWxlc2hlZXQgPSBbb3B0aW9ucy5zdHlsZXNoZWV0XTsNCg0KICAgIHZhciBodG1sID0gWyI8IURPQ1RZUEUgSFRNTCBQVUJMSUMgXCItLy9XM0MvL0RURCBIVE1MIDQuMCBUcmFuc2l0aW9uYWwvL0VOXCIgXCJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9sb29zZS5kdGRcIj48aHRtbD48aGVhZD4iXTsNCiAgICAvLyBIYWNrIHRvIHdvcmsgYXJvdW5kIGEgYnVuY2ggb2YgSUU4LXNwZWNpZmljIHByb2JsZW1zLg0KICAgIGh0bWwucHVzaCgiPG1ldGEgaHR0cC1lcXVpdj1cIlgtVUEtQ29tcGF0aWJsZVwiIGNvbnRlbnQ9XCJJRT1FbXVsYXRlSUU3XCIvPiIpOw0KICAgIGZvckVhY2gob3B0aW9ucy5zdHlsZXNoZWV0LCBmdW5jdGlvbihmaWxlKSB7DQogICAgICBodG1sLnB1c2goIjxsaW5rIHJlbD1cInN0eWxlc2hlZXRcIiB0eXBlPVwidGV4dC9jc3NcIiBocmVmPVwiIiArIGZpbGUgKyAiXCIvPiIpOw0KICAgIH0pOw0KICAgIGZvckVhY2gob3B0aW9ucy5iYXNlZmlsZXMuY29uY2F0KG9wdGlvbnMucGFyc2VyZmlsZSksIGZ1bmN0aW9uKGZpbGUpIHsNCiAgICAgIGlmICghL15odHRwcz86Ly50ZXN0KGZpbGUpKSBmaWxlID0gb3B0aW9ucy5wYXRoICsgZmlsZTsNCiAgICAgIGh0bWwucHVzaCgiPHNjcmlwdCB0eXBlPVwidGV4dC9qYXZhc2NyaXB0XCIgc3JjPVwiIiArIGZpbGUgKyAiXCI+PCIgKyAiL3NjcmlwdD4iKTsNCiAgICB9KTsNCiAgICBodG1sLnB1c2goIjwvaGVhZD48Ym9keSBzdHlsZT1cImJvcmRlci13aWR0aDogMDtcIiBjbGFzcz1cImVkaXRib3hcIiBzcGVsbGNoZWNrPVwiIiArDQogICAgICAgICAgICAgIChvcHRpb25zLmRpc2FibGVTcGVsbGNoZWNrID8gImZhbHNlIiA6ICJ0cnVlIikgKyAiXCI+PC9ib2R5PjwvaHRtbD4iKTsNCiAgICByZXR1cm4gaHRtbC5qb2luKCIiKTsNCiAgfQ0KDQogIHZhciBpbnRlcm5ldEV4cGxvcmVyID0gZG9jdW1lbnQuc2VsZWN0aW9uICYmIHdpbmRvdy5BY3RpdmVYT2JqZWN0ICYmIC9NU0lFLy50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpOw0KDQogIGZ1bmN0aW9uIENvZGVNaXJyb3IocGxhY2UsIG9wdGlvbnMpIHsNCiAgICAvLyBVc2UgcGFzc2VkIG9wdGlvbnMsIGlmIGFueSwgdG8gb3ZlcnJpZGUgZGVmYXVsdHMuDQogICAgdGhpcy5vcHRpb25zID0gb3B0aW9ucyA9IG9wdGlvbnMgfHwge307DQogICAgc2V0RGVmYXVsdHMob3B0aW9ucywgQ29kZU1pcnJvckNvbmZpZyk7DQoNCiAgICAvLyBCYWNrd2FyZCBjb21wYXRpYmlsaXR5IGZvciBkZXByZWNhdGVkIG9wdGlvbnMuDQogICAgaWYgKG9wdGlvbnMuZHVtYlRhYnMpIG9wdGlvbnMudGFiTW9kZSA9ICJzcGFjZXMiOw0KICAgIGVsc2UgaWYgKG9wdGlvbnMubm9ybWFsVGFiKSBvcHRpb25zLnRhYk1vZGUgPSAiZGVmYXVsdCI7DQoNCiAgICB2YXIgZnJhbWUgPSB0aGlzLmZyYW1lID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiSUZSQU1FIik7DQogICAgaWYgKG9wdGlvbnMuaWZyYW1lQ2xhc3MpIGZyYW1lLmNsYXNzTmFtZSA9IG9wdGlvbnMuaWZyYW1lQ2xhc3M7DQogICAgZnJhbWUuZnJhbWVCb3JkZXIgPSAwOw0KICAgIGZyYW1lLnN0eWxlLmJvcmRlciA9ICIwIjsNCiAgICBmcmFtZS5zdHlsZS53aWR0aCA9ICcxMDAlJzsNCiAgICBmcmFtZS5zdHlsZS5oZWlnaHQgPSAnMTAwJSc7DQogICAgLy8gZGlzcGxheTogYmxvY2sgb2NjYXNpb25hbGx5IHN1cHByZXNzZXMgc29tZSBGaXJlZm94IGJ1Z3MsIHNvIHdlDQogICAgLy8gYWx3YXlzIGFkZCBpdCwgcmVkdW5kYW50IGFzIGl0IHNvdW5kcy4NCiAgICBmcmFtZS5zdHlsZS5kaXNwbGF5ID0gImJsb2NrIjsNCg0KICAgIHZhciBkaXYgPSB0aGlzLndyYXBwaW5nID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiRElWIik7DQogICAgZGl2LnN0eWxlLnBvc2l0aW9uID0gInJlbGF0aXZlIjsNCiAgICBkaXYuY2xhc3NOYW1lID0gIkNvZGVNaXJyb3Itd3JhcHBpbmciOw0KICAgIGRpdi5zdHlsZS53aWR0aCA9IG9wdGlvbnMud2lkdGg7DQogICAgZGl2LnN0eWxlLmhlaWdodCA9IChvcHRpb25zLmhlaWdodCA9PSAiZHluYW1pYyIpID8gb3B0aW9ucy5taW5IZWlnaHQrNTAgKyAicHgiIDogb3B0aW9ucy5oZWlnaHQrNTA7DQogICAgLy8gVGhpcyBpcyB1c2VkIGJ5IEVkaXRvci5yZXJvdXRlUGFzdGVFdmVudA0KICAgIHZhciB0ZUhhY2sgPSB0aGlzLnRleHRhcmVhSGFjayA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoIlRFWFRBUkVBIik7DQogICAgZGl2LmFwcGVuZENoaWxkKHRlSGFjayk7DQogICAgdGVIYWNrLnN0eWxlLnBvc2l0aW9uID0gImFic29sdXRlIjsNCiAgICB0ZUhhY2suc3R5bGUubGVmdCA9ICItMTAwMDBweCI7DQogICAgdGVIYWNrLnN0eWxlLndpZHRoID0gIjEwcHgiOw0KDQogICAgLy8gTGluayBiYWNrIHRvIHRoaXMgb2JqZWN0LCBzbyB0aGF0IHRoZSBlZGl0b3IgY2FuIGZldGNoIG9wdGlvbnMNCiAgICAvLyBhbmQgYWRkIGEgcmVmZXJlbmNlIHRvIGl0c2VsZi4NCiAgICBmcmFtZS5Db2RlTWlycm9yID0gdGhpczsNCiAgICBpZiAob3B0aW9ucy5kb21haW4gJiYgaW50ZXJuZXRFeHBsb3Jlcikgew0KICAgICAgdGhpcy5odG1sID0gZnJhbWVIVE1MKG9wdGlvbnMpOw0KICAgICAgZnJhbWUuc3JjID0gImphdmFzY3JpcHQ6KGZ1bmN0aW9uKCl7ZG9jdW1lbnQub3BlbigpOyIgKw0KICAgICAgICAob3B0aW9ucy5kb21haW4gPyAiZG9jdW1lbnQuZG9tYWluPVwiIiArIG9wdGlvbnMuZG9tYWluICsgIlwiOyIgOiAiIikgKw0KICAgICAgICAiZG9jdW1lbnQud3JpdGUod2luZG93LmZyYW1lRWxlbWVudC5Db2RlTWlycm9yLmh0bWwpO2RvY3VtZW50LmNsb3NlKCk7fSkoKSI7DQogICAgfQ0KICAgIGVsc2Ugew0KICAgICAgZnJhbWUuc3JjID0gImphdmFzY3JpcHQ6OyI7DQogICAgfQ0KDQogICAgaWYgKHBsYWNlLmFwcGVuZENoaWxkKSBwbGFjZS5hcHBlbmRDaGlsZChkaXYpOw0KICAgIGVsc2UgcGxhY2UoZGl2KTsNCiAgICBkaXYuYXBwZW5kQ2hpbGQoZnJhbWUpOw0KICAgIGlmIChvcHRpb25zLmxpbmVOdW1iZXJzKSB0aGlzLmxpbmVOdW1iZXJzID0gYWRkTGluZU51bWJlckRpdihkaXYsIG9wdGlvbnMuZmlyc3RMaW5lTnVtYmVyKTsNCg0KICAgIHRoaXMud2luID0gZnJhbWUuY29udGVudFdpbmRvdzsNCiAgICBpZiAoIW9wdGlvbnMuZG9tYWluIHx8ICFpbnRlcm5ldEV4cGxvcmVyKSB7DQogICAgICB0aGlzLndpbi5kb2N1bWVudC5vcGVuKCk7DQogICAgICB0aGlzLndpbi5kb2N1bWVudC53cml0ZShmcmFtZUhUTUwob3B0aW9ucykpOw0KICAgICAgdGhpcy53aW4uZG9jdW1lbnQuY2xvc2UoKTsNCiAgICB9DQogIH0NCg0KICBDb2RlTWlycm9yLnByb3RvdHlwZSA9IHsNCiAgICBpbml0OiBmdW5jdGlvbigpIHsNCiAgICAgIGlmICh0aGlzLm9wdGlvbnMuaW5pdENhbGxiYWNrKSB0aGlzLm9wdGlvbnMuaW5pdENhbGxiYWNrKHRoaXMpOw0KICAgICAgaWYgKHRoaXMub3B0aW9ucy5saW5lTnVtYmVycykgdGhpcy5hY3RpdmF0ZUxpbmVOdW1iZXJzKCk7DQogICAgICBpZiAodGhpcy5vcHRpb25zLnJlaW5kZW50T25Mb2FkKSB0aGlzLnJlaW5kZW50KCk7DQogICAgICBpZiAodGhpcy5vcHRpb25zLmhlaWdodCA9PSAiZHluYW1pYyIpIHRoaXMuc2V0RHluYW1pY0hlaWdodCgpOw0KICAgIH0sDQoNCiAgICBnZXRDb2RlOiBmdW5jdGlvbigpIHtyZXR1cm4gdGhpcy5lZGl0b3IuZ2V0Q29kZSgpO30sDQogICAgc2V0Q29kZTogZnVuY3Rpb24oY29kZSkge3RoaXMuZWRpdG9yLmltcG9ydENvZGUoY29kZSk7fSwNCiAgICBzZWxlY3Rpb246IGZ1bmN0aW9uKCkge3RoaXMuZm9jdXNJZklFKCk7IHJldHVybiB0aGlzLmVkaXRvci5zZWxlY3RlZFRleHQoKTt9LA0KICAgIHJlaW5kZW50OiBmdW5jdGlvbigpIHt0aGlzLmVkaXRvci5yZWluZGVudCgpO30sDQogICAgcmVpbmRlbnRTZWxlY3Rpb246IGZ1bmN0aW9uKCkge3RoaXMuZm9jdXNJZklFKCk7IHRoaXMuZWRpdG9yLnJlaW5kZW50U2VsZWN0aW9uKG51bGwpO30sDQoNCiAgICBmb2N1c0lmSUU6IGZ1bmN0aW9uKCkgew0KICAgICAgLy8gaW4gSUUsIGEgbG90IG9mIHNlbGVjdGlvbi1yZWxhdGVkIGZ1bmN0aW9uYWxpdHkgb25seSB3b3JrcyB3aGVuIHRoZSBmcmFtZSBpcyBmb2N1c2VkDQogICAgICBpZiAodGhpcy53aW4uc2VsZWN0LmllX3NlbGVjdGlvbikgdGhpcy5mb2N1cygpOw0KICAgIH0sDQogICAgZm9jdXM6IGZ1bmN0aW9uKCkgew0KICAgICAgdGhpcy53aW4uZm9jdXMoKTsNCiAgICAgIGlmICh0aGlzLmVkaXRvci5zZWxlY3Rpb25TbmFwc2hvdCkgLy8gSUUgaGFjaw0KICAgICAgICB0aGlzLndpbi5zZWxlY3Quc2V0Qm9va21hcmsodGhpcy53aW4uZG9jdW1lbnQuYm9keSwgdGhpcy5lZGl0b3Iuc2VsZWN0aW9uU25hcHNob3QpOw0KICAgIH0sDQogICAgcmVwbGFjZVNlbGVjdGlvbjogZnVuY3Rpb24odGV4dCkgew0KICAgICAgdGhpcy5mb2N1cygpOw0KICAgICAgdGhpcy5lZGl0b3IucmVwbGFjZVNlbGVjdGlvbih0ZXh0KTsNCiAgICAgIHJldHVybiB0cnVlOw0KICAgIH0sDQogICAgcmVwbGFjZUNoYXJzOiBmdW5jdGlvbih0ZXh0LCBzdGFydCwgZW5kKSB7DQogICAgICB0aGlzLmVkaXRvci5yZXBsYWNlQ2hhcnModGV4dCwgc3RhcnQsIGVuZCk7DQogICAgfSwNCiAgICBnZXRTZWFyY2hDdXJzb3I6IGZ1bmN0aW9uKHN0cmluZywgZnJvbUN1cnNvciwgY2FzZUZvbGQpIHsNCiAgICAgIHJldHVybiB0aGlzLmVkaXRvci5nZXRTZWFyY2hDdXJzb3Ioc3RyaW5nLCBmcm9tQ3Vyc29yLCBjYXNlRm9sZCk7DQogICAgfSwNCg0KICAgIHVuZG86IGZ1bmN0aW9uKCkge3RoaXMuZWRpdG9yLmhpc3RvcnkudW5kbygpO30sDQogICAgcmVkbzogZnVuY3Rpb24oKSB7dGhpcy5lZGl0b3IuaGlzdG9yeS5yZWRvKCk7fSwNCiAgICBoaXN0b3J5U2l6ZTogZnVuY3Rpb24oKSB7cmV0dXJuIHRoaXMuZWRpdG9yLmhpc3RvcnkuaGlzdG9yeVNpemUoKTt9LA0KICAgIGNsZWFySGlzdG9yeTogZnVuY3Rpb24oKSB7dGhpcy5lZGl0b3IuaGlzdG9yeS5jbGVhcigpO30sDQoNCiAgICBncmFiS2V5czogZnVuY3Rpb24oY2FsbGJhY2ssIGZpbHRlcikge3RoaXMuZWRpdG9yLmdyYWJLZXlzKGNhbGxiYWNrLCBmaWx0ZXIpO30sDQogICAgdW5ncmFiS2V5czogZnVuY3Rpb24oKSB7dGhpcy5lZGl0b3IudW5ncmFiS2V5cygpO30sDQoNCiAgICBzZXRQYXJzZXI6IGZ1bmN0aW9uKG5hbWUsIHBhcnNlckNvbmZpZykge3RoaXMuZWRpdG9yLnNldFBhcnNlcihuYW1lLCBwYXJzZXJDb25maWcpO30sDQogICAgc2V0U3BlbGxjaGVjazogZnVuY3Rpb24ob24pIHt0aGlzLndpbi5kb2N1bWVudC5ib2R5LnNwZWxsY2hlY2sgPSBvbjt9LA0KICAgIHNldFN0eWxlc2hlZXQ6IGZ1bmN0aW9uKG5hbWVzKSB7DQogICAgICBpZiAodHlwZW9mIG5hbWVzID09PSAic3RyaW5nIikgbmFtZXMgPSBbbmFtZXNdOw0KICAgICAgdmFyIGFjdGl2ZVN0eWxlc2hlZXRzID0ge307DQogICAgICB2YXIgbWF0Y2hlZE5hbWVzID0ge307DQogICAgICB2YXIgbGlua3MgPSB0aGlzLndpbi5kb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgibGluayIpOw0KICAgICAgLy8gQ3JlYXRlIGhhc2hlcyBvZiBhY3RpdmUgc3R5bGVzaGVldHMgYW5kIG1hdGNoZWQgbmFtZXMuDQogICAgICAvLyBUaGlzIGlzIE8obl4yKSBidXQgbiBpcyBleHBlY3RlZCB0byBiZSB2ZXJ5IHNtYWxsLg0KICAgICAgZm9yICh2YXIgeCA9IDAsIGxpbms7IGxpbmsgPSBsaW5rc1t4XTsgeCsrKSB7DQogICAgICAgIGlmIChsaW5rLnJlbC5pbmRleE9mKCJzdHlsZXNoZWV0IikgIT09IC0xKSB7DQogICAgICAgICAgZm9yICh2YXIgeSA9IDA7IHkgPCBuYW1lcy5sZW5ndGg7IHkrKykgew0KICAgICAgICAgICAgdmFyIG5hbWUgPSBuYW1lc1t5XTsNCiAgICAgICAgICAgIGlmIChsaW5rLmhyZWYuc3Vic3RyaW5nKGxpbmsuaHJlZi5sZW5ndGggLSBuYW1lLmxlbmd0aCkgPT09IG5hbWUpIHsNCiAgICAgICAgICAgICAgYWN0aXZlU3R5bGVzaGVldHNbbGluay5ocmVmXSA9IHRydWU7DQogICAgICAgICAgICAgIG1hdGNoZWROYW1lc1tuYW1lXSA9IHRydWU7DQogICAgICAgICAgICB9DQogICAgICAgICAgfQ0KICAgICAgICB9DQogICAgICB9DQogICAgICAvLyBBY3RpdmF0ZSB0aGUgc2VsZWN0ZWQgc3R5bGVzaGVldHMgYW5kIGRpc2FibGUgdGhlIHJlc3QuDQogICAgICBmb3IgKHZhciB4ID0gMCwgbGluazsgbGluayA9IGxpbmtzW3hdOyB4KyspIHsNCiAgICAgICAgaWYgKGxpbmsucmVsLmluZGV4T2YoInN0eWxlc2hlZXQiKSAhPT0gLTEpIHsNCiAgICAgICAgICBsaW5rLmRpc2FibGVkID0gIShsaW5rLmhyZWYgaW4gYWN0aXZlU3R5bGVzaGVldHMpOw0KICAgICAgICB9DQogICAgICB9DQogICAgICAvLyBDcmVhdGUgYW55IG5ldyBzdHlsZXNoZWV0cy4NCiAgICAgIGZvciAodmFyIHkgPSAwOyB5IDwgbmFtZXMubGVuZ3RoOyB5KyspIHsNCiAgICAgICAgdmFyIG5hbWUgPSBuYW1lc1t5XTsNCiAgICAgICAgaWYgKCEobmFtZSBpbiBtYXRjaGVkTmFtZXMpKSB7DQogICAgICAgICAgdmFyIGxpbmsgPSB0aGlzLndpbi5kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJsaW5rIik7DQogICAgICAgICAgbGluay5yZWwgPSAic3R5bGVzaGVldCI7DQogICAgICAgICAgbGluay50eXBlID0gInRleHQvY3NzIjsNCiAgICAgICAgICBsaW5rLmhyZWYgPSBuYW1lOw0KICAgICAgICAgIHRoaXMud2luLmRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCdoZWFkJylbMF0uYXBwZW5kQ2hpbGQobGluayk7DQogICAgICAgIH0NCiAgICAgIH0NCiAgICB9LA0KICAgIHNldFRleHRXcmFwcGluZzogZnVuY3Rpb24ob24pIHsNCiAgICAgIGlmIChvbiA9PSB0aGlzLm9wdGlvbnMudGV4dFdyYXBwaW5nKSByZXR1cm47DQogICAgICB0aGlzLndpbi5kb2N1bWVudC5ib2R5LnN0eWxlLndoaXRlU3BhY2UgPSBvbiA/ICIiIDogIm5vd3JhcCI7DQogICAgICB0aGlzLm9wdGlvbnMudGV4dFdyYXBwaW5nID0gb247DQogICAgICBpZiAodGhpcy5saW5lTnVtYmVycykgew0KICAgICAgICB0aGlzLnNldExpbmVOdW1iZXJzKGZhbHNlKTsNCiAgICAgICAgdGhpcy5zZXRMaW5lTnVtYmVycyh0cnVlKTsNCiAgICAgIH0NCiAgICB9LA0KICAgIHNldEluZGVudFVuaXQ6IGZ1bmN0aW9uKHVuaXQpIHt0aGlzLndpbi5pbmRlbnRVbml0ID0gdW5pdDt9LA0KICAgIHNldFVuZG9EZXB0aDogZnVuY3Rpb24oZGVwdGgpIHt0aGlzLmVkaXRvci5oaXN0b3J5Lm1heERlcHRoID0gZGVwdGg7fSwNCiAgICBzZXRUYWJNb2RlOiBmdW5jdGlvbihtb2RlKSB7dGhpcy5vcHRpb25zLnRhYk1vZGUgPSBtb2RlO30sDQogICAgc2V0RW50ZXJNb2RlOiBmdW5jdGlvbihtb2RlKSB7dGhpcy5vcHRpb25zLmVudGVyTW9kZSA9IG1vZGU7fSwNCiAgICBzZXRMaW5lTnVtYmVyczogZnVuY3Rpb24ob24pIHsNCiAgICAgIGlmIChvbiAmJiAhdGhpcy5saW5lTnVtYmVycykgew0KICAgICAgICB0aGlzLmxpbmVOdW1iZXJzID0gYWRkTGluZU51bWJlckRpdih0aGlzLndyYXBwaW5nKTsNCiAgICAgICAgdGhpcy5hY3RpdmF0ZUxpbmVOdW1iZXJzKCk7DQogICAgICB9DQogICAgICBlbHNlIGlmICghb24gJiYgdGhpcy5saW5lTnVtYmVycykgew0KICAgICAgICB0aGlzLndyYXBwaW5nLnJlbW92ZUNoaWxkKHRoaXMubGluZU51bWJlcnMpOw0KICAgICAgICB0aGlzLndyYXBwaW5nLnN0eWxlLm1hcmdpbkxlZnQgPSAiIjsNCiAgICAgICAgdGhpcy5saW5lTnVtYmVycyA9IG51bGw7DQogICAgICB9DQogICAgfSwNCg0KICAgIGN1cnNvclBvc2l0aW9uOiBmdW5jdGlvbihzdGFydCkge3RoaXMuZm9jdXNJZklFKCk7IHJldHVybiB0aGlzLmVkaXRvci5jdXJzb3JQb3NpdGlvbihzdGFydCk7fSwNCiAgICBmaXJzdExpbmU6IGZ1bmN0aW9uKCkge3JldHVybiB0aGlzLmVkaXRvci5maXJzdExpbmUoKTt9LA0KICAgIGxhc3RMaW5lOiBmdW5jdGlvbigpIHtyZXR1cm4gdGhpcy5lZGl0b3IubGFzdExpbmUoKTt9LA0KICAgIG5leHRMaW5lOiBmdW5jdGlvbihsaW5lKSB7cmV0dXJuIHRoaXMuZWRpdG9yLm5leHRMaW5lKGxpbmUpO30sDQogICAgcHJldkxpbmU6IGZ1bmN0aW9uKGxpbmUpIHtyZXR1cm4gdGhpcy5lZGl0b3IucHJldkxpbmUobGluZSk7fSwNCiAgICBsaW5lQ29udGVudDogZnVuY3Rpb24obGluZSkge3JldHVybiB0aGlzLmVkaXRvci5saW5lQ29udGVudChsaW5lKTt9LA0KICAgIHNldExpbmVDb250ZW50OiBmdW5jdGlvbihsaW5lLCBjb250ZW50KSB7dGhpcy5lZGl0b3Iuc2V0TGluZUNvbnRlbnQobGluZSwgY29udGVudCk7fSwNCiAgICByZW1vdmVMaW5lOiBmdW5jdGlvbihsaW5lKXt0aGlzLmVkaXRvci5yZW1vdmVMaW5lKGxpbmUpO30sDQogICAgaW5zZXJ0SW50b0xpbmU6IGZ1bmN0aW9uKGxpbmUsIHBvc2l0aW9uLCBjb250ZW50KSB7dGhpcy5lZGl0b3IuaW5zZXJ0SW50b0xpbmUobGluZSwgcG9zaXRpb24sIGNvbnRlbnQpO30sDQogICAgc2VsZWN0TGluZXM6IGZ1bmN0aW9uKHN0YXJ0TGluZSwgc3RhcnRPZmZzZXQsIGVuZExpbmUsIGVuZE9mZnNldCkgew0KICAgICAgdGhpcy53aW4uZm9jdXMoKTsNCiAgICAgIHRoaXMuZWRpdG9yLnNlbGVjdExpbmVzKHN0YXJ0TGluZSwgc3RhcnRPZmZzZXQsIGVuZExpbmUsIGVuZE9mZnNldCk7DQogICAgfSwNCiAgICBudGhMaW5lOiBmdW5jdGlvbihuKSB7DQogICAgICB2YXIgbGluZSA9IHRoaXMuZmlyc3RMaW5lKCk7DQogICAgICBmb3IgKDsgbiA+IDEgJiYgbGluZSAhPT0gZmFsc2U7IG4tLSkNCiAgICAgICAgbGluZSA9IHRoaXMubmV4dExpbmUobGluZSk7DQogICAgICByZXR1cm4gbGluZTsNCiAgICB9LA0KICAgIGxpbmVOdW1iZXI6IGZ1bmN0aW9uKGxpbmUpIHsNCiAgICAgIHZhciBudW0gPSAwOw0KICAgICAgd2hpbGUgKGxpbmUgIT09IGZhbHNlKSB7DQogICAgICAgIG51bSsrOw0KICAgICAgICBsaW5lID0gdGhpcy5wcmV2TGluZShsaW5lKTsNCiAgICAgIH0NCiAgICAgIHJldHVybiBudW07DQogICAgfSwNCiAgICBqdW1wVG9MaW5lOiBmdW5jdGlvbihsaW5lKSB7DQogICAgICBpZiAodHlwZW9mIGxpbmUgPT0gIm51bWJlciIpIGxpbmUgPSB0aGlzLm50aExpbmUobGluZSk7DQogICAgICB0aGlzLnNlbGVjdExpbmVzKGxpbmUsIDApOw0KICAgICAgdGhpcy53aW4uZm9jdXMoKTsNCiAgICB9LA0KICAgIGN1cnJlbnRMaW5lOiBmdW5jdGlvbigpIHsgLy8gRGVwcmVjYXRlZCwgYnV0IHN0aWxsIHRoZXJlIGZvciBiYWNrd2FyZCBjb21wYXRpYmlsaXR5DQogICAgICByZXR1cm4gdGhpcy5saW5lTnVtYmVyKHRoaXMuY3Vyc29yTGluZSgpKTsNCiAgICB9LA0KICAgIGN1cnNvckxpbmU6IGZ1bmN0aW9uKCkgew0KICAgICAgcmV0dXJuIHRoaXMuY3Vyc29yUG9zaXRpb24oKS5saW5lOw0KICAgIH0sDQogICAgY3Vyc29yQ29vcmRzOiBmdW5jdGlvbihzdGFydCkge3JldHVybiB0aGlzLmVkaXRvci5jdXJzb3JDb29yZHMoc3RhcnQpO30sDQoNCiAgICBhY3RpdmF0ZUxpbmVOdW1iZXJzOiBmdW5jdGlvbigpIHsNCiAgICAgIHZhciBmcmFtZSA9IHRoaXMuZnJhbWUsIHdpbiA9IGZyYW1lLmNvbnRlbnRXaW5kb3csIGRvYyA9IHdpbi5kb2N1bWVudCwgYm9keSA9IGRvYy5ib2R5LA0KICAgICAgICAgIG51bXMgPSB0aGlzLmxpbmVOdW1iZXJzLCBzY3JvbGxlciA9IG51bXMuZmlyc3RDaGlsZCwgc2VsZiA9IHRoaXM7DQogICAgICB2YXIgYmFyV2lkdGggPSBudWxsOw0KDQogICAgICBmdW5jdGlvbiBzaXplQmFyKCkgew0KICAgICAgICBpZiAoZnJhbWUub2Zmc2V0V2lkdGggPT0gMCkgcmV0dXJuOw0KICAgICAgICBmb3IgKHZhciByb290ID0gZnJhbWU7IHJvb3QucGFyZW50Tm9kZTsgcm9vdCA9IHJvb3QucGFyZW50Tm9kZSl7fQ0KICAgICAgICBpZiAoIW51bXMucGFyZW50Tm9kZSB8fCByb290ICE9IGRvY3VtZW50IHx8ICF3aW4uRWRpdG9yKSB7DQogICAgICAgICAgLy8gQ2xlYXIgZXZlbnQgaGFuZGxlcnMgKHRoZWlyIG5vZGVzIG1pZ2h0IGFscmVhZHkgYmUgY29sbGVjdGVkLCBzbyB0cnkvY2F0Y2gpDQogICAgICAgICAgdHJ5e2NsZWFyKCk7fWNhdGNoKGUpe30NCiAgICAgICAgICBjbGVhckludGVydmFsKHNpemVJbnRlcnZhbCk7DQogICAgICAgICAgcmV0dXJuOw0KICAgICAgICB9DQoNCiAgICAgICAgaWYgKG51bXMub2Zmc2V0V2lkdGggIT0gYmFyV2lkdGgpIHsNCiAgICAgICAgICBiYXJXaWR0aCA9IG51bXMub2Zmc2V0V2lkdGg7DQoJCSAgLyogSmVyZW15IGVkaXRlZC4uIFNob3VsZCBiZSBhIHNldCBzaXplIGluIENTUyAxMC04LTEwICovDQogICAgICAgICAgLy9mcmFtZS5wYXJlbnROb2RlLnN0eWxlLnBhZGRpbmdMZWZ0ID0gYmFyV2lkdGggKyAicHgiOw0KICAgICAgICB9DQogICAgICB9DQogICAgICBmdW5jdGlvbiBkb1Njcm9sbCgpIHsNCiAgICAgICAgbnVtcy5zY3JvbGxUb3AgPSBib2R5LnNjcm9sbFRvcCB8fCBkb2MuZG9jdW1lbnRFbGVtZW50LnNjcm9sbFRvcCB8fCAwOw0KICAgICAgfQ0KICAgICAgLy8gQ2xlYW51cCBmdW5jdGlvbiwgcmVnaXN0ZXJlZCBieSBub25XcmFwcGluZyBhbmQgd3JhcHBpbmcuDQogICAgICB2YXIgY2xlYXIgPSBmdW5jdGlvbigpe307DQogICAgICBzaXplQmFyKCk7DQogICAgICB2YXIgc2l6ZUludGVydmFsID0gc2V0SW50ZXJ2YWwoc2l6ZUJhciwgNTAwKTsNCg0KICAgICAgZnVuY3Rpb24gZW5zdXJlRW5vdWdoTGluZU51bWJlcnMoZmlsbCkgew0KICAgICAgICB2YXIgbGluZUhlaWdodCA9IHNjcm9sbGVyLmZpcnN0Q2hpbGQub2Zmc2V0SGVpZ2h0Ow0KICAgICAgICBpZiAobGluZUhlaWdodCA9PSAwKSByZXR1cm47DQogICAgICAgIHZhciB0YXJnZXRIZWlnaHQgPSA1MCArIE1hdGgubWF4KGJvZHkub2Zmc2V0SGVpZ2h0LCBNYXRoLm1heChmcmFtZS5vZmZzZXRIZWlnaHQsIGJvZHkuc2Nyb2xsSGVpZ2h0IHx8IDApKSwNCiAgICAgICAgICAgIGxhc3ROdW1iZXIgPSBNYXRoLmNlaWwodGFyZ2V0SGVpZ2h0IC8gbGluZUhlaWdodCk7DQogICAgICAgIGZvciAodmFyIGkgPSBzY3JvbGxlci5jaGlsZE5vZGVzLmxlbmd0aDsgaSA8PSBsYXN0TnVtYmVyOyBpKyspIHsNCiAgICAgICAgICB2YXIgZGl2ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiRElWIik7DQogICAgICAgICAgZGl2LmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKGZpbGwgPyBTdHJpbmcoaSArIHNlbGYub3B0aW9ucy5maXJzdExpbmVOdW1iZXIpIDogIlx1MDBhMCIpKTsNCiAgICAgICAgICBzY3JvbGxlci5hcHBlbmRDaGlsZChkaXYpOw0KICAgICAgICB9DQogICAgICB9DQoNCiAgICAgIGZ1bmN0aW9uIG5vbldyYXBwaW5nKCkgew0KICAgICAgICBmdW5jdGlvbiB1cGRhdGUoKSB7DQogICAgICAgICAgZW5zdXJlRW5vdWdoTGluZU51bWJlcnModHJ1ZSk7DQogICAgICAgICAgZG9TY3JvbGwoKTsNCiAgICAgICAgfQ0KICAgICAgICBzZWxmLnVwZGF0ZU51bWJlcnMgPSB1cGRhdGU7DQogICAgICAgIHZhciBvblNjcm9sbCA9IHdpbi5hZGRFdmVudEhhbmRsZXIod2luLCAic2Nyb2xsIiwgZG9TY3JvbGwsIHRydWUpLA0KICAgICAgICAgICAgb25SZXNpemUgPSB3aW4uYWRkRXZlbnRIYW5kbGVyKHdpbiwgInJlc2l6ZSIsIHVwZGF0ZSwgdHJ1ZSk7DQogICAgICAgIGNsZWFyID0gZnVuY3Rpb24oKXsNCiAgICAgICAgICBvblNjcm9sbCgpOyBvblJlc2l6ZSgpOw0KICAgICAgICAgIGlmIChzZWxmLnVwZGF0ZU51bWJlcnMgPT0gdXBkYXRlKSBzZWxmLnVwZGF0ZU51bWJlcnMgPSBudWxsOw0KICAgICAgICB9Ow0KICAgICAgICB1cGRhdGUoKTsNCiAgICAgIH0NCg0KICAgICAgZnVuY3Rpb24gd3JhcHBpbmcoKSB7DQogICAgICAgIHZhciBub2RlLCBsaW5lTnVtLCBuZXh0LCBwb3MsIGNoYW5nZXMgPSBbXSwgc3R5bGVOdW1zID0gc2VsZi5vcHRpb25zLnN0eWxlTnVtYmVyczsNCg0KICAgICAgICBmdW5jdGlvbiBzZXROdW0obiwgbm9kZSkgew0KICAgICAgICAgIC8vIERvZXMgbm90IHR5cGljYWxseSBoYXBwZW4gKGJ1dCBjYW4sIGlmIHlvdSBtZXNzIHdpdGggdGhlDQogICAgICAgICAgLy8gZG9jdW1lbnQgZHVyaW5nIHRoZSBudW1iZXJpbmcpDQogICAgICAgICAgaWYgKCFsaW5lTnVtKSBsaW5lTnVtID0gc2Nyb2xsZXIuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiRElWIikpOw0KICAgICAgICAgIGlmIChzdHlsZU51bXMpIHN0eWxlTnVtcyhsaW5lTnVtLCBub2RlLCBuKTsNCiAgICAgICAgICAvLyBDaGFuZ2VzIGFyZSBhY2N1bXVsYXRlZCwgc28gdGhhdCB0aGUgZG9jdW1lbnQgbGF5b3V0DQogICAgICAgICAgLy8gZG9lc24ndCBoYXZlIHRvIGJlIHJlY29tcHV0ZWQgZHVyaW5nIHRoZSBwYXNzDQogICAgICAgICAgY2hhbmdlcy5wdXNoKGxpbmVOdW0pOyBjaGFuZ2VzLnB1c2gobik7DQogICAgICAgICAgcG9zID0gbGluZU51bS5vZmZzZXRIZWlnaHQgKyBsaW5lTnVtLm9mZnNldFRvcDsNCiAgICAgICAgICBsaW5lTnVtID0gbGluZU51bS5uZXh0U2libGluZzsNCiAgICAgICAgfQ0KICAgICAgICBmdW5jdGlvbiBjb21taXRDaGFuZ2VzKCkgew0KICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgY2hhbmdlcy5sZW5ndGg7IGkgKz0gMikNCiAgICAgICAgICAgIGNoYW5nZXNbaV0uaW5uZXJIVE1MID0gY2hhbmdlc1tpICsgMV07DQogICAgICAgICAgY2hhbmdlcyA9IFtdOw0KICAgICAgICB9DQogICAgICAgIGZ1bmN0aW9uIHdvcmsoKSB7DQogICAgICAgICAgaWYgKCFzY3JvbGxlci5wYXJlbnROb2RlIHx8IHNjcm9sbGVyLnBhcmVudE5vZGUgIT0gc2VsZi5saW5lTnVtYmVycykgcmV0dXJuOw0KDQogICAgICAgICAgdmFyIGVuZFRpbWUgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKSArIHNlbGYub3B0aW9ucy5saW5lTnVtYmVyVGltZTsNCiAgICAgICAgICB3aGlsZSAobm9kZSkgew0KICAgICAgICAgICAgc2V0TnVtKG5leHQrKywgbm9kZS5wcmV2aW91c1NpYmxpbmcpOw0KICAgICAgICAgICAgZm9yICg7IG5vZGUgJiYgIXdpbi5pc0JSKG5vZGUpOyBub2RlID0gbm9kZS5uZXh0U2libGluZykgew0KICAgICAgICAgICAgICB2YXIgYm90dCA9IG5vZGUub2Zmc2V0VG9wICsgbm9kZS5vZmZzZXRIZWlnaHQ7DQogICAgICAgICAgICAgIHdoaWxlIChzY3JvbGxlci5vZmZzZXRIZWlnaHQgJiYgYm90dCAtIDMgPiBwb3MpIHNldE51bSgiJm5ic3A7Iik7DQogICAgICAgICAgICB9DQogICAgICAgICAgICBpZiAobm9kZSkgbm9kZSA9IG5vZGUubmV4dFNpYmxpbmc7DQogICAgICAgICAgICBpZiAobmV3IERhdGUoKS5nZXRUaW1lKCkgPiBlbmRUaW1lKSB7DQogICAgICAgICAgICAgIGNvbW1pdENoYW5nZXMoKTsNCiAgICAgICAgICAgICAgcGVuZGluZyA9IHNldFRpbWVvdXQod29yaywgc2VsZi5vcHRpb25zLmxpbmVOdW1iZXJEZWxheSk7DQogICAgICAgICAgICAgIHJldHVybjsNCiAgICAgICAgICAgIH0NCiAgICAgICAgICB9DQogICAgICAgICAgd2hpbGUgKGxpbmVOdW0pIHNldE51bShuZXh0KyspOw0KICAgICAgICAgIGNvbW1pdENoYW5nZXMoKTsNCiAgICAgICAgICBkb1Njcm9sbCgpOw0KICAgICAgICB9DQogICAgICAgIGZ1bmN0aW9uIHN0YXJ0KGZpcnN0VGltZSkgew0KICAgICAgICAgIGRvU2Nyb2xsKCk7DQogICAgICAgICAgZW5zdXJlRW5vdWdoTGluZU51bWJlcnMoZmlyc3RUaW1lKTsNCiAgICAgICAgICBub2RlID0gYm9keS5maXJzdENoaWxkOw0KICAgICAgICAgIGxpbmVOdW0gPSBzY3JvbGxlci5maXJzdENoaWxkOw0KICAgICAgICAgIHBvcyA9IDA7DQogICAgICAgICAgbmV4dCA9IHNlbGYub3B0aW9ucy5maXJzdExpbmVOdW1iZXI7DQogICAgICAgICAgd29yaygpOw0KICAgICAgICB9DQoNCiAgICAgICAgc3RhcnQodHJ1ZSk7DQogICAgICAgIHZhciBwZW5kaW5nID0gbnVsbDsNCiAgICAgICAgZnVuY3Rpb24gdXBkYXRlKCkgew0KICAgICAgICAgIGlmIChwZW5kaW5nKSBjbGVhclRpbWVvdXQocGVuZGluZyk7DQogICAgICAgICAgaWYgKHNlbGYuZWRpdG9yLmFsbENsZWFuKCkpIHN0YXJ0KCk7DQogICAgICAgICAgZWxzZSBwZW5kaW5nID0gc2V0VGltZW91dCh1cGRhdGUsIDIwMCk7DQogICAgICAgIH0NCiAgICAgICAgc2VsZi51cGRhdGVOdW1iZXJzID0gdXBkYXRlOw0KICAgICAgICB2YXIgb25TY3JvbGwgPSB3aW4uYWRkRXZlbnRIYW5kbGVyKHdpbiwgInNjcm9sbCIsIGRvU2Nyb2xsLCB0cnVlKSwNCiAgICAgICAgICAgIG9uUmVzaXplID0gd2luLmFkZEV2ZW50SGFuZGxlcih3aW4sICJyZXNpemUiLCB1cGRhdGUsIHRydWUpOw0KICAgICAgICBjbGVhciA9IGZ1bmN0aW9uKCl7DQogICAgICAgICAgaWYgKHBlbmRpbmcpIGNsZWFyVGltZW91dChwZW5kaW5nKTsNCiAgICAgICAgICBpZiAoc2VsZi51cGRhdGVOdW1iZXJzID09IHVwZGF0ZSkgc2VsZi51cGRhdGVOdW1iZXJzID0gbnVsbDsNCiAgICAgICAgICBvblNjcm9sbCgpOw0KICAgICAgICAgIG9uUmVzaXplKCk7DQogICAgICAgIH07DQogICAgICB9DQogICAgICAodGhpcy5vcHRpb25zLnRleHRXcmFwcGluZyB8fCB0aGlzLm9wdGlvbnMuc3R5bGVOdW1iZXJzID8gd3JhcHBpbmcgOiBub25XcmFwcGluZykoKTsNCiAgICB9LA0KDQogICAgc2V0RHluYW1pY0hlaWdodDogZnVuY3Rpb24oKSB7DQogICAgICB2YXIgc2VsZiA9IHRoaXMsIGFjdGl2aXR5ID0gc2VsZi5vcHRpb25zLmN1cnNvckFjdGl2aXR5LCB3aW4gPSBzZWxmLndpbiwgYm9keSA9IHdpbi5kb2N1bWVudC5ib2R5LA0KICAgICAgICAgIGxpbmVIZWlnaHQgPSBudWxsLCB0aW1lb3V0ID0gbnVsbCwgdm1hcmdpbiA9IDIgKiBzZWxmLmZyYW1lLm9mZnNldFRvcDsNCiAgICAgIGJvZHkuc3R5bGUub3ZlcmZsb3dZID0gImhpZGRlbiI7DQogICAgICB3aW4uZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnN0eWxlLm92ZXJmbG93WSA9ICJoaWRkZW4iOw0KICAgICAgdGhpcy5mcmFtZS5zY3JvbGxpbmcgPSAibm8iOw0KDQogICAgICBmdW5jdGlvbiB1cGRhdGVIZWlnaHQoKSB7DQogICAgICAgIHZhciB0cmFpbGluZ0xpbmVzID0gMCwgbm9kZSA9IGJvZHkubGFzdENoaWxkLCBjb21wdXRlZEhlaWdodDsNCiAgICAgICAgd2hpbGUgKG5vZGUgJiYgd2luLmlzQlIobm9kZSkpIHsNCiAgICAgICAgICBpZiAoIW5vZGUuaGFja0JSKSB0cmFpbGluZ0xpbmVzKys7DQogICAgICAgICAgbm9kZSA9IG5vZGUucHJldmlvdXNTaWJsaW5nOw0KICAgICAgICB9DQogICAgICAgIGlmIChub2RlKSB7DQogICAgICAgICAgbGluZUhlaWdodCA9IG5vZGUub2Zmc2V0SGVpZ2h0Ow0KICAgICAgICAgIGNvbXB1dGVkSGVpZ2h0ID0gbm9kZS5vZmZzZXRUb3AgKyAoMSArIHRyYWlsaW5nTGluZXMpICogbGluZUhlaWdodDsNCiAgICAgICAgfQ0KICAgICAgICBlbHNlIGlmIChsaW5lSGVpZ2h0KSB7DQogICAgICAgICAgY29tcHV0ZWRIZWlnaHQgPSB0cmFpbGluZ0xpbmVzICogbGluZUhlaWdodDsNCiAgICAgICAgfQ0KICAgICAgICBpZiAoY29tcHV0ZWRIZWlnaHQpDQogICAgICAgICAgc2VsZi53cmFwcGluZy5zdHlsZS5oZWlnaHQgPSBNYXRoLm1heCh2bWFyZ2luICsgY29tcHV0ZWRIZWlnaHQsIHNlbGYub3B0aW9ucy5taW5IZWlnaHQpICsgInB4IjsNCiAgICAgIH0NCiAgICAgIHNldFRpbWVvdXQodXBkYXRlSGVpZ2h0LCAzMDApOw0KICAgICAgc2VsZi5vcHRpb25zLmN1cnNvckFjdGl2aXR5ID0gZnVuY3Rpb24oeCkgew0KICAgICAgICBpZiAoYWN0aXZpdHkpIGFjdGl2aXR5KHgpOw0KICAgICAgICBjbGVhclRpbWVvdXQodGltZW91dCk7DQogICAgICAgIHRpbWVvdXQgPSBzZXRUaW1lb3V0KHVwZGF0ZUhlaWdodCwgMTAwKTsNCiAgICAgIH07DQogICAgfQ0KICB9Ow0KDQogIENvZGVNaXJyb3IuSW52YWxpZExpbmVIYW5kbGUgPSB7dG9TdHJpbmc6IGZ1bmN0aW9uKCl7cmV0dXJuICJDb2RlTWlycm9yLkludmFsaWRMaW5lSGFuZGxlIjt9fTsNCg0KICBDb2RlTWlycm9yLnJlcGxhY2UgPSBmdW5jdGlvbihlbGVtZW50KSB7DQogICAgaWYgKHR5cGVvZiBlbGVtZW50ID09ICJzdHJpbmciKQ0KICAgICAgZWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGVsZW1lbnQpOw0KICAgIHJldHVybiBmdW5jdGlvbihuZXdFbGVtZW50KSB7DQogICAgICBlbGVtZW50LnBhcmVudE5vZGUucmVwbGFjZUNoaWxkKG5ld0VsZW1lbnQsIGVsZW1lbnQpOw0KICAgIH07DQogIH07DQoNCiAgQ29kZU1pcnJvci5mcm9tVGV4dEFyZWEgPSBmdW5jdGlvbihhcmVhLCBvcHRpb25zKSB7DQogICAgaWYgKHR5cGVvZiBhcmVhID09ICJzdHJpbmciKQ0KICAgICAgYXJlYSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGFyZWEpOw0KDQogICAgb3B0aW9ucyA9IG9wdGlvbnMgfHwge307DQogICAgaWYgKGFyZWEuc3R5bGUud2lkdGggJiYgb3B0aW9ucy53aWR0aCA9PSBudWxsKQ0KICAgICAgb3B0aW9ucy53aWR0aCA9IGFyZWEuc3R5bGUud2lkdGg7DQogICAgaWYgKGFyZWEuc3R5bGUuaGVpZ2h0ICYmIG9wdGlvbnMuaGVpZ2h0ID09IG51bGwpDQogICAgICBvcHRpb25zLmhlaWdodCA9IGFyZWEuc3R5bGUuaGVpZ2h0Ow0KICAgIGlmIChvcHRpb25zLmNvbnRlbnQgPT0gbnVsbCkgb3B0aW9ucy5jb250ZW50ID0gYXJlYS52YWx1ZTsNCg0KICAgIGlmIChhcmVhLmZvcm0pIHsNCiAgICAgIGZ1bmN0aW9uIHVwZGF0ZUZpZWxkKCkgew0KICAgICAgICBhcmVhLnZhbHVlID0gbWlycm9yLmdldENvZGUoKTsNCiAgICAgIH0NCiAgICAgIGlmICh0eXBlb2YgYXJlYS5mb3JtLmFkZEV2ZW50TGlzdGVuZXIgPT0gImZ1bmN0aW9uIikNCiAgICAgICAgYXJlYS5mb3JtLmFkZEV2ZW50TGlzdGVuZXIoInN1Ym1pdCIsIHVwZGF0ZUZpZWxkLCBmYWxzZSk7DQogICAgICBlbHNlDQogICAgICAgIGFyZWEuZm9ybS5hdHRhY2hFdmVudCgib25zdWJtaXQiLCB1cGRhdGVGaWVsZCk7DQogICAgICB2YXIgcmVhbFN1Ym1pdCA9IGFyZWEuZm9ybS5zdWJtaXQ7DQogICAgICBmdW5jdGlvbiB3cmFwU3VibWl0KCkgew0KICAgICAgICB1cGRhdGVGaWVsZCgpOw0KICAgICAgICAvLyBDYW4ndCB1c2UgcmVhbFN1Ym1pdC5hcHBseSBiZWNhdXNlIElFNiBpcyB0b28gc3R1cGlkDQogICAgICAgIGFyZWEuZm9ybS5zdWJtaXQgPSByZWFsU3VibWl0Ow0KICAgICAgICBhcmVhLmZvcm0uc3VibWl0KCk7DQogICAgICAgIGFyZWEuZm9ybS5zdWJtaXQgPSB3cmFwU3VibWl0Ow0KICAgICAgfQ0KICAgICAgYXJlYS5mb3JtLnN1Ym1pdCA9IHdyYXBTdWJtaXQ7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gaW5zZXJ0KGZyYW1lKSB7DQogICAgICBpZiAoYXJlYS5uZXh0U2libGluZykNCiAgICAgICAgYXJlYS5wYXJlbnROb2RlLmluc2VydEJlZm9yZShmcmFtZSwgYXJlYS5uZXh0U2libGluZyk7DQogICAgICBlbHNlDQogICAgICAgIGFyZWEucGFyZW50Tm9kZS5hcHBlbmRDaGlsZChmcmFtZSk7DQogICAgfQ0KDQogICAgYXJlYS5zdHlsZS5kaXNwbGF5ID0gIm5vbmUiOw0KICAgIHZhciBtaXJyb3IgPSBuZXcgQ29kZU1pcnJvcihpbnNlcnQsIG9wdGlvbnMpOw0KICAgIG1pcnJvci50b1RleHRBcmVhID0gZnVuY3Rpb24oKSB7DQogICAgICBhcmVhLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQobWlycm9yLndyYXBwaW5nKTsNCiAgICAgIGFyZWEuc3R5bGUuZGlzcGxheSA9ICIiOw0KICAgICAgaWYgKGFyZWEuZm9ybSkgew0KICAgICAgICBhcmVhLmZvcm0uc3VibWl0ID0gcmVhbFN1Ym1pdDsNCiAgICAgICAgaWYgKHR5cGVvZiBhcmVhLmZvcm0ucmVtb3ZlRXZlbnRMaXN0ZW5lciA9PSAiZnVuY3Rpb24iKQ0KICAgICAgICAgIGFyZWEuZm9ybS5yZW1vdmVFdmVudExpc3RlbmVyKCJzdWJtaXQiLCB1cGRhdGVGaWVsZCwgZmFsc2UpOw0KICAgICAgICBlbHNlDQogICAgICAgICAgYXJlYS5mb3JtLmRldGFjaEV2ZW50KCJvbnN1Ym1pdCIsIHVwZGF0ZUZpZWxkKTsNCiAgICAgIH0NCiAgICB9Ow0KDQogICAgcmV0dXJuIG1pcnJvcjsNCiAgfTsNCg0KICBDb2RlTWlycm9yLmlzUHJvYmFibHlTdXBwb3J0ZWQgPSBmdW5jdGlvbigpIHsNCiAgICAvLyBUaGlzIGlzIHJhdGhlciBhd2Z1bCwgYnV0IGNhbiBiZSB1c2VmdWwuDQogICAgdmFyIG1hdGNoOw0KICAgIGlmICh3aW5kb3cub3BlcmEpDQogICAgICByZXR1cm4gTnVtYmVyKHdpbmRvdy5vcGVyYS52ZXJzaW9uKCkpID49IDkuNTI7DQogICAgZWxzZSBpZiAoL0FwcGxlIENvbXB1dGVycywgSW5jLy50ZXN0KG5hdmlnYXRvci52ZW5kb3IpICYmIChtYXRjaCA9IG5hdmlnYXRvci51c2VyQWdlbnQubWF0Y2goL1ZlcnNpb25cLyhcZCsoPzpcLlxkKyk/KVwuLykpKQ0KICAgICAgcmV0dXJuIE51bWJlcihtYXRjaFsxXSkgPj0gMzsNCiAgICBlbHNlIGlmIChkb2N1bWVudC5zZWxlY3Rpb24gJiYgd2luZG93LkFjdGl2ZVhPYmplY3QgJiYgKG1hdGNoID0gbmF2aWdhdG9yLnVzZXJBZ2VudC5tYXRjaCgvTVNJRSAoXGQrKD86XC5cZCopPylcYi8pKSkNCiAgICAgIHJldHVybiBOdW1iZXIobWF0Y2hbMV0pID49IDY7DQogICAgZWxzZSBpZiAobWF0Y2ggPSBuYXZpZ2F0b3IudXNlckFnZW50Lm1hdGNoKC9nZWNrb1wvKFxkezh9KS9pKSkNCiAgICAgIHJldHVybiBOdW1iZXIobWF0Y2hbMV0pID49IDIwMDUwOTAxOw0KICAgIGVsc2UgaWYgKG1hdGNoID0gbmF2aWdhdG9yLnVzZXJBZ2VudC5tYXRjaCgvQXBwbGVXZWJLaXRcLyhcZCspLykpDQogICAgICByZXR1cm4gTnVtYmVyKG1hdGNoWzFdKSA+PSA1MjU7DQogICAgZWxzZQ0KICAgICAgcmV0dXJuIG51bGw7DQogIH07DQoNCiAgcmV0dXJuIENvZGVNaXJyb3I7DQp9KSgpOw0K]]></data>
	</file>
	<file>
	  <filename>/includes/CodeMirror/js/editor.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[LyogVGhlIEVkaXRvciBvYmplY3QgbWFuYWdlcyB0aGUgY29udGVudCBvZiB0aGUgZWRpdGFibGUgZnJhbWUuIEl0CiAqIGNhdGNoZXMgZXZlbnRzLCBjb2xvdXJzIG5vZGVzLCBhbmQgaW5kZW50cyBsaW5lcy4gVGhpcyBmaWxlIGFsc28KICogaG9sZHMgc29tZSBmdW5jdGlvbnMgZm9yIHRyYW5zZm9ybWluZyBhcmJpdHJhcnkgRE9NIHN0cnVjdHVyZXMgaW50bwogKiBwbGFpbiBzZXF1ZW5jZXMgb2YgPHNwYW4+IGFuZCA8YnI+IGVsZW1lbnRzCiAqLwoKdmFyIGludGVybmV0RXhwbG9yZXIgPSBkb2N1bWVudC5zZWxlY3Rpb24gJiYgd2luZG93LkFjdGl2ZVhPYmplY3QgJiYgL01TSUUvLnRlc3QobmF2aWdhdG9yLnVzZXJBZ2VudCk7CnZhciB3ZWJraXQgPSAvQXBwbGVXZWJLaXQvLnRlc3QobmF2aWdhdG9yLnVzZXJBZ2VudCk7CnZhciBzYWZhcmkgPSAvQXBwbGUgQ29tcHV0ZXJzLCBJbmMvLnRlc3QobmF2aWdhdG9yLnZlbmRvcik7CnZhciBnZWNrbyA9IC9nZWNrb1wvKFxkezh9KS9pLnRlc3QobmF2aWdhdG9yLnVzZXJBZ2VudCk7CnZhciBtYWMgPSAvTWFjLy50ZXN0KG5hdmlnYXRvci5wbGF0Zm9ybSk7CgovLyBUT0RPIHRoaXMgaXMgcmVsYXRlZCB0byB0aGUgYmFja3NwYWNlLWF0LWVuZC1vZi1saW5lIGJ1Zy4gUmVtb3ZlCi8vIHRoaXMgaWYgT3BlcmEgZ2V0cyB0aGVpciBhY3QgdG9nZXRoZXIsIG1ha2UgdGhlIHZlcnNpb24gY2hlY2sgbW9yZQovLyBicm9hZCBpZiB0aGV5IGRvbid0Lgp2YXIgYnJva2VuT3BlcmEgPSB3aW5kb3cub3BlcmEgJiYgL1ZlcnNpb25cLzEwLls1Nl0vLnRlc3QobmF2aWdhdG9yLnVzZXJBZ2VudCk7Ci8vIFRPRE8gcmVtb3ZlIHRoaXMgb25jZSBXZWJLaXQgNTMzIGJlY29tZXMgbGVzcyBjb21tb24uCnZhciBzbG93V2Via2l0ID0gL0FwcGxlV2ViS2l0XC81MzMvLnRlc3QobmF2aWdhdG9yLnVzZXJBZ2VudCk7CgovLyBNYWtlIHN1cmUgYSBzdHJpbmcgZG9lcyBub3QgY29udGFpbiB0d28gY29uc2VjdXRpdmUgJ2NvbGxhcHNlYWJsZScKLy8gd2hpdGVzcGFjZSBjaGFyYWN0ZXJzLgpmdW5jdGlvbiBtYWtlV2hpdGVTcGFjZShuKSB7CiAgdmFyIGJ1ZmZlciA9IFtdLCBuYiA9IHRydWU7CiAgZm9yICg7IG4gPiAwOyBuLS0pIHsKICAgIGJ1ZmZlci5wdXNoKChuYiB8fCBuID09IDEpID8gbmJzcCA6ICIgIik7CiAgICBuYiBePSB0cnVlOwogIH0KICByZXR1cm4gYnVmZmVyLmpvaW4oIiIpOwp9CgovLyBDcmVhdGUgYSBzZXQgb2Ygd2hpdGUtc3BhY2UgY2hhcmFjdGVycyB0aGF0IHdpbGwgbm90IGJlIGNvbGxhcHNlZAovLyBieSB0aGUgYnJvd3NlciwgYnV0IHdpbGwgbm90IGJyZWFrIHRleHQtd3JhcHBpbmcgZWl0aGVyLgpmdW5jdGlvbiBmaXhTcGFjZXMoc3RyaW5nKSB7CiAgaWYgKHN0cmluZy5jaGFyQXQoMCkgPT0gIiAiKSBzdHJpbmcgPSBuYnNwICsgc3RyaW5nLnNsaWNlKDEpOwogIHJldHVybiBzdHJpbmcucmVwbGFjZSgvXHQvZywgZnVuY3Rpb24oKSB7cmV0dXJuIG1ha2VXaGl0ZVNwYWNlKGluZGVudFVuaXQpO30pCiAgICAucmVwbGFjZSgvWyBcdTAwYTBdezIsfS9nLCBmdW5jdGlvbihzKSB7cmV0dXJuIG1ha2VXaGl0ZVNwYWNlKHMubGVuZ3RoKTt9KTsKfQoKZnVuY3Rpb24gY2xlYW5UZXh0KHRleHQpIHsKICByZXR1cm4gdGV4dC5yZXBsYWNlKC9cdTAwYTAvZywgIiAiKTsKfQoKLy8gQ3JlYXRlIGEgU1BBTiBub2RlIHdpdGggdGhlIGV4cGVjdGVkIHByb3BlcnRpZXMgZm9yIGRvY3VtZW50IHBhcnQKLy8gc3BhbnMuCmZ1bmN0aW9uIG1ha2VQYXJ0U3Bhbih2YWx1ZSkgewogIHZhciB0ZXh0ID0gdmFsdWU7CiAgaWYgKHZhbHVlLm5vZGVUeXBlID09IDMpIHRleHQgPSB2YWx1ZS5ub2RlVmFsdWU7CiAgZWxzZSB2YWx1ZSA9IGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKHRleHQpOwoKICB2YXIgc3BhbiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoIlNQQU4iKTsKICBzcGFuLmlzUGFydCA9IHRydWU7CiAgc3Bhbi5hcHBlbmRDaGlsZCh2YWx1ZSk7CiAgc3Bhbi5jdXJyZW50VGV4dCA9IHRleHQ7CiAgcmV0dXJuIHNwYW47Cn0KCi8vIE9uIHdlYmtpdCwgd2hlbiB0aGUgbGFzdCBCUiBvZiB0aGUgZG9jdW1lbnQgZG9lcyBub3QgaGF2ZSB0ZXh0Ci8vIGJlaGluZCBpdCwgdGhlIGN1cnNvciBjYW4gbm90IGJlIHB1dCBvbiB0aGUgbGluZSBhZnRlciBpdC4gVGhpcwovLyBtYWtlcyBwcmVzc2luZyBlbnRlciBhdCB0aGUgZW5kIG9mIHRoZSBkb2N1bWVudCBvY2Nhc2lvbmFsbHkgZG8KLy8gbm90aGluZyAob3IgYXQgbGVhc3Qgc2VlbSB0byBkbyBub3RoaW5nKS4gVG8gd29yayBhcm91bmQgaXQsIHRoaXMKLy8gZnVuY3Rpb24gbWFrZXMgc3VyZSB0aGUgZG9jdW1lbnQgZW5kcyB3aXRoIGEgc3BhbiBjb250YWluaW5nIGEKLy8gemVyby13aWR0aCBzcGFjZSBjaGFyYWN0ZXIuIFRoZSB0cmF2ZXJzZURPTSBpdGVyYXRvciBmaWx0ZXJzIHN1Y2gKLy8gY2hhcmFjdGVyIG91dCBhZ2Fpbiwgc28gdGhhdCB0aGUgcGFyc2VycyB3b24ndCBzZWUgdGhlbS4gVGhpcwovLyBmdW5jdGlvbiBpcyBjYWxsZWQgZnJvbSBhIGZldyBzdHJhdGVnaWMgcGxhY2VzIHRvIG1ha2Ugc3VyZSB0aGUKLy8gendzcCBpcyByZXN0b3JlZCBhZnRlciB0aGUgaGlnaGxpZ2h0aW5nIHByb2Nlc3MgZWF0cyBpdC4KdmFyIHdlYmtpdExhc3RMaW5lSGFjayA9IHdlYmtpdCA/CiAgZnVuY3Rpb24oY29udGFpbmVyKSB7CiAgICB2YXIgbGFzdCA9IGNvbnRhaW5lci5sYXN0Q2hpbGQ7CiAgICBpZiAoIWxhc3QgfHwgIWxhc3QuaGFja0JSKSB7CiAgICAgIHZhciBiciA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoIkJSIik7CiAgICAgIGJyLmhhY2tCUiA9IHRydWU7CiAgICAgIGNvbnRhaW5lci5hcHBlbmRDaGlsZChicik7CiAgICB9CiAgfSA6IGZ1bmN0aW9uKCkge307Cgp2YXIgRWRpdG9yID0gKGZ1bmN0aW9uKCl7CiAgLy8gVGhlIEhUTUwgZWxlbWVudHMgd2hvc2UgY29udGVudCBzaG91bGQgYmUgc3VmZml4ZWQgYnkgYSBuZXdsaW5lCiAgLy8gd2hlbiBjb252ZXJ0aW5nIHRoZW0gdG8gZmxhdCB0ZXh0LgogIHZhciBuZXdsaW5lRWxlbWVudHMgPSB7IlAiOiB0cnVlLCAiRElWIjogdHJ1ZSwgIkxJIjogdHJ1ZX07CgogIGZ1bmN0aW9uIGFzRWRpdG9yTGluZXMoc3RyaW5nKSB7CiAgICB2YXIgdGFiID0gbWFrZVdoaXRlU3BhY2UoaW5kZW50VW5pdCk7CiAgICByZXR1cm4gbWFwKHN0cmluZy5yZXBsYWNlKC9cdC9nLCB0YWIpLnJlcGxhY2UoL1x1MDBhMC9nLCAiICIpLnJlcGxhY2UoL1xyXG4/L2csICJcbiIpLnNwbGl0KCJcbiIpLCBmaXhTcGFjZXMpOwogIH0KCiAgLy8gSGVscGVyIGZ1bmN0aW9uIGZvciB0cmF2ZXJzZURPTS4gRmxhdHRlbnMgYW4gYXJiaXRyYXJ5IERPTSBub2RlCiAgLy8gaW50byBhbiBhcnJheSBvZiB0ZXh0bm9kZXMgYW5kIDxicj4gdGFncy4KICBmdW5jdGlvbiBzaW1wbGlmeURPTShyb290LCBhdEVuZCkgewogICAgdmFyIHJlc3VsdCA9IFtdOwogICAgdmFyIGxlYXZpbmcgPSB0cnVlOwoKICAgIGZ1bmN0aW9uIHNpbXBsaWZ5Tm9kZShub2RlLCB0b3ApIHsKICAgICAgaWYgKG5vZGUubm9kZVR5cGUgPT0gMykgewogICAgICAgIHZhciB0ZXh0ID0gbm9kZS5ub2RlVmFsdWUgPSBmaXhTcGFjZXMobm9kZS5ub2RlVmFsdWUucmVwbGFjZSgvXHIvZywgIiIpLnJlcGxhY2UoL1xuL2csICIgIikpOwogICAgICAgIGlmICh0ZXh0Lmxlbmd0aCkgbGVhdmluZyA9IGZhbHNlOwogICAgICAgIHJlc3VsdC5wdXNoKG5vZGUpOwogICAgICB9CiAgICAgIGVsc2UgaWYgKGlzQlIobm9kZSkgJiYgbm9kZS5jaGlsZE5vZGVzLmxlbmd0aCA9PSAwKSB7CiAgICAgICAgbGVhdmluZyA9IHRydWU7CiAgICAgICAgcmVzdWx0LnB1c2gobm9kZSk7CiAgICAgIH0KICAgICAgZWxzZSB7CiAgICAgICAgZm9yICh2YXIgbiA9IG5vZGUuZmlyc3RDaGlsZDsgbjsgbiA9IG4ubmV4dFNpYmxpbmcpIHNpbXBsaWZ5Tm9kZShuKTsKICAgICAgICBpZiAoIWxlYXZpbmcgJiYgbmV3bGluZUVsZW1lbnRzLmhhc093blByb3BlcnR5KG5vZGUubm9kZU5hbWUudG9VcHBlckNhc2UoKSkpIHsKICAgICAgICAgIGxlYXZpbmcgPSB0cnVlOwogICAgICAgICAgaWYgKCFhdEVuZCB8fCAhdG9wKQogICAgICAgICAgICByZXN1bHQucHVzaChkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJCUiIpKTsKICAgICAgICB9CiAgICAgIH0KICAgIH0KCiAgICBzaW1wbGlmeU5vZGUocm9vdCwgdHJ1ZSk7CiAgICByZXR1cm4gcmVzdWx0OwogIH0KCiAgLy8gQ3JlYXRlcyBhIE1vY2hpS2l0LXN0eWxlIGl0ZXJhdG9yIHRoYXQgZ29lcyBvdmVyIGEgc2VyaWVzIG9mIERPTQogIC8vIG5vZGVzLiBUaGUgdmFsdWVzIGl0IHlpZWxkcyBhcmUgc3RyaW5ncywgdGhlIHRleHR1YWwgY29udGVudCBvZgogIC8vIHRoZSBub2Rlcy4gSXQgbWFrZXMgc3VyZSB0aGF0IGFsbCBub2RlcyB1cCB0byBhbmQgaW5jbHVkaW5nIHRoZQogIC8vIG9uZSB3aG9zZSB0ZXh0IGlzIGJlaW5nIHlpZWxkZWQgaGF2ZSBiZWVuICdub3JtYWxpemVkJyB0byBiZSBqdXN0CiAgLy8gPHNwYW4+IGFuZCA8YnI+IGVsZW1lbnRzLgogIGZ1bmN0aW9uIHRyYXZlcnNlRE9NKHN0YXJ0KXsKICAgIHZhciBub2RlUXVldWUgPSBbXTsKCiAgICAvLyBDcmVhdGUgYSBmdW5jdGlvbiB0aGF0IGNhbiBiZSB1c2VkIHRvIGluc2VydCBub2RlcyBhZnRlciB0aGUKICAgIC8vIG9uZSBnaXZlbiBhcyBhcmd1bWVudC4KICAgIGZ1bmN0aW9uIHBvaW50QXQobm9kZSl7CiAgICAgIHZhciBwYXJlbnQgPSBub2RlLnBhcmVudE5vZGU7CiAgICAgIHZhciBuZXh0ID0gbm9kZS5uZXh0U2libGluZzsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKG5ld25vZGUpIHsKICAgICAgICBwYXJlbnQuaW5zZXJ0QmVmb3JlKG5ld25vZGUsIG5leHQpOwogICAgICB9OwogICAgfQogICAgdmFyIHBvaW50ID0gbnVsbDsKCiAgICAvLyBUaGlzIGFuIE9wZXJhLXNwZWNpZmljIGhhY2sgLS0gYWx3YXlzIGluc2VydCBhbiBlbXB0eSBzcGFuCiAgICAvLyBiZXR3ZWVuIHR3byBCUnMsIGJlY2F1c2UgT3BlcmEncyBjdXJzb3IgY29kZSBnZXRzIHRlcnJpYmx5CiAgICAvLyBjb25mdXNlZCB3aGVuIHRoZSBjdXJzb3IgaXMgYmV0d2VlbiB0d28gQlJzLgogICAgdmFyIGFmdGVyQlIgPSB0cnVlOwoKICAgIC8vIEluc2VydCBhIG5vcm1hbGl6ZWQgbm9kZSBhdCB0aGUgY3VycmVudCBwb2ludC4gSWYgaXQgaXMgYSB0ZXh0CiAgICAvLyBub2RlLCB3cmFwIGl0IGluIGEgPHNwYW4+LCBhbmQgZ2l2ZSB0aGF0IHNwYW4gYSBjdXJyZW50VGV4dAogICAgLy8gcHJvcGVydHkgLS0gdGhpcyBpcyB1c2VkIHRvIGNhY2hlIHRoZSBub2RlVmFsdWUsIGJlY2F1c2UKICAgIC8vIGRpcmVjdGx5IGFjY2Vzc2luZyBub2RlVmFsdWUgaXMgaG9ycmlibHkgc2xvdyBvbiBzb21lIGJyb3dzZXJzLgogICAgLy8gVGhlIGRpcnR5IHByb3BlcnR5IGlzIHVzZWQgYnkgdGhlIGhpZ2hsaWdodGVyIHRvIGRldGVybWluZQogICAgLy8gd2hpY2ggcGFydHMgb2YgdGhlIGRvY3VtZW50IGhhdmUgdG8gYmUgcmUtaGlnaGxpZ2h0ZWQuCiAgICBmdW5jdGlvbiBpbnNlcnRQYXJ0KHBhcnQpewogICAgICB2YXIgdGV4dCA9ICJcbiI7CiAgICAgIGlmIChwYXJ0Lm5vZGVUeXBlID09IDMpIHsKICAgICAgICBzZWxlY3Quc25hcHNob3RDaGFuZ2VkKCk7CiAgICAgICAgcGFydCA9IG1ha2VQYXJ0U3BhbihwYXJ0KTsKICAgICAgICB0ZXh0ID0gcGFydC5jdXJyZW50VGV4dDsKICAgICAgICBhZnRlckJSID0gZmFsc2U7CiAgICAgIH0KICAgICAgZWxzZSB7CiAgICAgICAgaWYgKGFmdGVyQlIgJiYgd2luZG93Lm9wZXJhKQogICAgICAgICAgcG9pbnQobWFrZVBhcnRTcGFuKCIiKSk7CiAgICAgICAgYWZ0ZXJCUiA9IHRydWU7CiAgICAgIH0KICAgICAgcGFydC5kaXJ0eSA9IHRydWU7CiAgICAgIG5vZGVRdWV1ZS5wdXNoKHBhcnQpOwogICAgICBwb2ludChwYXJ0KTsKICAgICAgcmV0dXJuIHRleHQ7CiAgICB9CgogICAgLy8gRXh0cmFjdCB0aGUgdGV4dCBhbmQgbmV3bGluZXMgZnJvbSBhIERPTSBub2RlLCBpbnNlcnQgdGhlbSBpbnRvCiAgICAvLyB0aGUgZG9jdW1lbnQsIGFuZCByZXR1cm4gdGhlIHRleHR1YWwgY29udGVudC4gVXNlZCB0byByZXBsYWNlCiAgICAvLyBub24tbm9ybWFsaXplZCBub2Rlcy4KICAgIGZ1bmN0aW9uIHdyaXRlTm9kZShub2RlLCBlbmQpIHsKICAgICAgdmFyIHNpbXBsaWZpZWQgPSBzaW1wbGlmeURPTShub2RlLCBlbmQpOwogICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHNpbXBsaWZpZWQubGVuZ3RoOyBpKyspCiAgICAgICAgc2ltcGxpZmllZFtpXSA9IGluc2VydFBhcnQoc2ltcGxpZmllZFtpXSk7CiAgICAgIHJldHVybiBzaW1wbGlmaWVkLmpvaW4oIiIpOwogICAgfQoKICAgIC8vIENoZWNrIHdoZXRoZXIgYSBub2RlIGlzIGEgbm9ybWFsaXplZCA8c3Bhbj4gZWxlbWVudC4KICAgIGZ1bmN0aW9uIHBhcnROb2RlKG5vZGUpewogICAgICBpZiAobm9kZS5pc1BhcnQgJiYgbm9kZS5jaGlsZE5vZGVzLmxlbmd0aCA9PSAxICYmIG5vZGUuZmlyc3RDaGlsZC5ub2RlVHlwZSA9PSAzKSB7CiAgICAgICAgbm9kZS5jdXJyZW50VGV4dCA9IG5vZGUuZmlyc3RDaGlsZC5ub2RlVmFsdWU7CiAgICAgICAgcmV0dXJuICEvW1xuXHRccl0vLnRlc3Qobm9kZS5jdXJyZW50VGV4dCk7CiAgICAgIH0KICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQoKICAgIC8vIEFkdmFuY2UgdG8gbmV4dCBub2RlLCByZXR1cm4gc3RyaW5nIGZvciBjdXJyZW50IG5vZGUuCiAgICBmdW5jdGlvbiBuZXh0KCkgewogICAgICBpZiAoIXN0YXJ0KSB0aHJvdyBTdG9wSXRlcmF0aW9uOwogICAgICB2YXIgbm9kZSA9IHN0YXJ0OwogICAgICBzdGFydCA9IG5vZGUubmV4dFNpYmxpbmc7CgogICAgICBpZiAocGFydE5vZGUobm9kZSkpewogICAgICAgIG5vZGVRdWV1ZS5wdXNoKG5vZGUpOwogICAgICAgIGFmdGVyQlIgPSBmYWxzZTsKICAgICAgICByZXR1cm4gbm9kZS5jdXJyZW50VGV4dDsKICAgICAgfQogICAgICBlbHNlIGlmIChpc0JSKG5vZGUpKSB7CiAgICAgICAgaWYgKGFmdGVyQlIgJiYgd2luZG93Lm9wZXJhKQogICAgICAgICAgbm9kZS5wYXJlbnROb2RlLmluc2VydEJlZm9yZShtYWtlUGFydFNwYW4oIiIpLCBub2RlKTsKICAgICAgICBub2RlUXVldWUucHVzaChub2RlKTsKICAgICAgICBhZnRlckJSID0gdHJ1ZTsKICAgICAgICByZXR1cm4gIlxuIjsKICAgICAgfQogICAgICBlbHNlIHsKICAgICAgICB2YXIgZW5kID0gIW5vZGUubmV4dFNpYmxpbmc7CiAgICAgICAgcG9pbnQgPSBwb2ludEF0KG5vZGUpOwogICAgICAgIHJlbW92ZUVsZW1lbnQobm9kZSk7CiAgICAgICAgcmV0dXJuIHdyaXRlTm9kZShub2RlLCBlbmQpOwogICAgICB9CiAgICB9CgogICAgLy8gTW9jaGlLaXQgaXRlcmF0b3JzIGFyZSBvYmplY3RzIHdpdGggYSBuZXh0IGZ1bmN0aW9uIHRoYXQKICAgIC8vIHJldHVybnMgdGhlIG5leHQgdmFsdWUgb3IgdGhyb3dzIFN0b3BJdGVyYXRpb24gd2hlbiB0aGVyZSBhcmUKICAgIC8vIG5vIG1vcmUgdmFsdWVzLgogICAgcmV0dXJuIHtuZXh0OiBuZXh0LCBub2Rlczogbm9kZVF1ZXVlfTsKICB9CgogIC8vIERldGVybWluZSB0aGUgdGV4dCBzaXplIG9mIGEgcHJvY2Vzc2VkIG5vZGUuCiAgZnVuY3Rpb24gbm9kZVNpemUobm9kZSkgewogICAgcmV0dXJuIGlzQlIobm9kZSkgPyAxIDogbm9kZS5jdXJyZW50VGV4dC5sZW5ndGg7CiAgfQoKICAvLyBTZWFyY2ggYmFja3dhcmRzIHRocm91Z2ggdGhlIHRvcC1sZXZlbCBub2RlcyB1bnRpbCB0aGUgbmV4dCBCUiBvcgogIC8vIHRoZSBzdGFydCBvZiB0aGUgZnJhbWUuCiAgZnVuY3Rpb24gc3RhcnRPZkxpbmUobm9kZSkgewogICAgd2hpbGUgKG5vZGUgJiYgIWlzQlIobm9kZSkpIG5vZGUgPSBub2RlLnByZXZpb3VzU2libGluZzsKICAgIHJldHVybiBub2RlOwogIH0KICBmdW5jdGlvbiBlbmRPZkxpbmUobm9kZSwgY29udGFpbmVyKSB7CiAgICBpZiAoIW5vZGUpIG5vZGUgPSBjb250YWluZXIuZmlyc3RDaGlsZDsKICAgIGVsc2UgaWYgKGlzQlIobm9kZSkpIG5vZGUgPSBub2RlLm5leHRTaWJsaW5nOwoKICAgIHdoaWxlIChub2RlICYmICFpc0JSKG5vZGUpKSBub2RlID0gbm9kZS5uZXh0U2libGluZzsKICAgIHJldHVybiBub2RlOwogIH0KCiAgZnVuY3Rpb24gdGltZSgpIHtyZXR1cm4gbmV3IERhdGUoKS5nZXRUaW1lKCk7fQoKICAvLyBDbGllbnQgaW50ZXJmYWNlIGZvciBzZWFyY2hpbmcgdGhlIGNvbnRlbnQgb2YgdGhlIGVkaXRvci4gQ3JlYXRlCiAgLy8gdGhlc2UgYnkgY2FsbGluZyBDb2RlTWlycm9yLmdldFNlYXJjaEN1cnNvci4gVG8gdXNlLCBjYWxsCiAgLy8gZmluZE5leHQgb24gdGhlIHJlc3VsdGluZyBvYmplY3QgLS0gdGhpcyByZXR1cm5zIGEgYm9vbGVhbgogIC8vIGluZGljYXRpbmcgd2hldGhlciBhbnl0aGluZyB3YXMgZm91bmQsIGFuZCBjYW4gYmUgY2FsbGVkIGFnYWluIHRvCiAgLy8gc2tpcCB0byB0aGUgbmV4dCBmaW5kLiBVc2UgdGhlIHNlbGVjdCBhbmQgcmVwbGFjZSBtZXRob2RzIHRvCiAgLy8gYWN0dWFsbHkgZG8gc29tZXRoaW5nIHdpdGggdGhlIGZvdW5kIGxvY2F0aW9ucy4KICBmdW5jdGlvbiBTZWFyY2hDdXJzb3IoZWRpdG9yLCBzdHJpbmcsIGZyb20sIGNhc2VGb2xkKSB7CiAgICB0aGlzLmVkaXRvciA9IGVkaXRvcjsKICAgIHRoaXMuaGlzdG9yeSA9IGVkaXRvci5oaXN0b3J5OwogICAgdGhpcy5oaXN0b3J5LmNvbW1pdCgpOwogICAgdGhpcy52YWxpZCA9ICEhc3RyaW5nOwogICAgdGhpcy5hdE9jY3VycmVuY2UgPSBmYWxzZTsKICAgIGlmIChjYXNlRm9sZCA9PSB1bmRlZmluZWQpIGNhc2VGb2xkID0gc3RyaW5nID09IHN0cmluZy50b0xvd2VyQ2FzZSgpOwoKICAgIGZ1bmN0aW9uIGdldFRleHQobm9kZSl7CiAgICAgIHZhciBsaW5lID0gY2xlYW5UZXh0KGVkaXRvci5oaXN0b3J5LnRleHRBZnRlcihub2RlKSk7CiAgICAgIHJldHVybiAoY2FzZUZvbGQgPyBsaW5lLnRvTG93ZXJDYXNlKCkgOiBsaW5lKTsKICAgIH0KCiAgICB2YXIgdG9wUG9zID0ge25vZGU6IG51bGwsIG9mZnNldDogMH07CiAgICBpZiAoZnJvbSAmJiB0eXBlb2YgZnJvbSA9PSAib2JqZWN0IiAmJiB0eXBlb2YgZnJvbS5jaGFyYWN0ZXIgPT0gIm51bWJlciIpIHsKICAgICAgZWRpdG9yLmNoZWNrTGluZShmcm9tLmxpbmUpOwogICAgICB2YXIgcG9zID0ge25vZGU6IGZyb20ubGluZSwgb2Zmc2V0OiBmcm9tLmNoYXJhY3Rlcn07CiAgICAgIHRoaXMucG9zID0ge2Zyb206IHBvcywgdG86IHBvc307CiAgICB9CiAgICBlbHNlIGlmIChmcm9tKSB7CiAgICAgIHRoaXMucG9zID0ge2Zyb206IHNlbGVjdC5jdXJzb3JQb3MoZWRpdG9yLmNvbnRhaW5lciwgdHJ1ZSkgfHwgdG9wUG9zLAogICAgICAgICAgICAgICAgICB0bzogc2VsZWN0LmN1cnNvclBvcyhlZGl0b3IuY29udGFpbmVyLCBmYWxzZSkgfHwgdG9wUG9zfTsKICAgIH0KICAgIGVsc2UgewogICAgICB0aGlzLnBvcyA9IHtmcm9tOiB0b3BQb3MsIHRvOiB0b3BQb3N9OwogICAgfQoKICAgIGlmIChjYXNlRm9sZCkgc3RyaW5nID0gc3RyaW5nLnRvTG93ZXJDYXNlKCk7CiAgICAvLyBDcmVhdGUgYSBtYXRjaGVyIGZ1bmN0aW9uIGJhc2VkIG9uIHRoZSBraW5kIG9mIHN0cmluZyB3ZSBoYXZlLgogICAgdmFyIHRhcmdldCA9IHN0cmluZy5zcGxpdCgiXG4iKTsKICAgIHRoaXMubWF0Y2hlcyA9ICh0YXJnZXQubGVuZ3RoID09IDEpID8KICAgICAgLy8gRm9yIG9uZS1saW5lIHN0cmluZ3MsIHNlYXJjaGluZyBjYW4gYmUgZG9uZSBzaW1wbHkgYnkgY2FsbGluZwogICAgICAvLyBpbmRleE9mIG9yIGxhc3RJbmRleE9mIG9uIHRoZSBjdXJyZW50IGxpbmUuCiAgICAgIGZ1bmN0aW9uKHJldmVyc2UsIG5vZGUsIG9mZnNldCkgewogICAgICAgIHZhciBsaW5lID0gZ2V0VGV4dChub2RlKSwgbGVuID0gc3RyaW5nLmxlbmd0aCwgbWF0Y2g7CiAgICAgICAgaWYgKHJldmVyc2UgPyAob2Zmc2V0ID49IGxlbiAmJiAobWF0Y2ggPSBsaW5lLmxhc3RJbmRleE9mKHN0cmluZywgb2Zmc2V0IC0gbGVuKSkgIT0gLTEpCiAgICAgICAgICAgICAgICAgICAgOiAobWF0Y2ggPSBsaW5lLmluZGV4T2Yoc3RyaW5nLCBvZmZzZXQpKSAhPSAtMSkKICAgICAgICAgIHJldHVybiB7ZnJvbToge25vZGU6IG5vZGUsIG9mZnNldDogbWF0Y2h9LAogICAgICAgICAgICAgICAgICB0bzoge25vZGU6IG5vZGUsIG9mZnNldDogbWF0Y2ggKyBsZW59fTsKICAgICAgfSA6CiAgICAgIC8vIE11bHRpLWxpbmUgc3RyaW5ncyByZXF1aXJlIGludGVybmFsIGl0ZXJhdGlvbiBvdmVyIGxpbmVzLCBhbmQKICAgICAgLy8gc29tZSBjbHVua3kgY2hlY2tzIHRvIG1ha2Ugc3VyZSB0aGUgZmlyc3QgbWF0Y2ggZW5kcyBhdCB0aGUKICAgICAgLy8gZW5kIG9mIHRoZSBsaW5lIGFuZCB0aGUgbGFzdCBtYXRjaCBzdGFydHMgYXQgdGhlIHN0YXJ0LgogICAgICBmdW5jdGlvbihyZXZlcnNlLCBub2RlLCBvZmZzZXQpIHsKICAgICAgICB2YXIgaWR4ID0gKHJldmVyc2UgPyB0YXJnZXQubGVuZ3RoIC0gMSA6IDApLCBtYXRjaCA9IHRhcmdldFtpZHhdLCBsaW5lID0gZ2V0VGV4dChub2RlKTsKICAgICAgICB2YXIgb2Zmc2V0QSA9IChyZXZlcnNlID8gbGluZS5pbmRleE9mKG1hdGNoKSArIG1hdGNoLmxlbmd0aCA6IGxpbmUubGFzdEluZGV4T2YobWF0Y2gpKTsKICAgICAgICBpZiAocmV2ZXJzZSA/IG9mZnNldEEgPj0gb2Zmc2V0IHx8IG9mZnNldEEgIT0gbWF0Y2gubGVuZ3RoCiAgICAgICAgICAgICAgICAgICAgOiBvZmZzZXRBIDw9IG9mZnNldCB8fCBvZmZzZXRBICE9IGxpbmUubGVuZ3RoIC0gbWF0Y2gubGVuZ3RoKQogICAgICAgICAgcmV0dXJuOwoKICAgICAgICB2YXIgcG9zID0gbm9kZTsKICAgICAgICB3aGlsZSAodHJ1ZSkgewogICAgICAgICAgaWYgKHJldmVyc2UgJiYgIXBvcykgcmV0dXJuOwogICAgICAgICAgcG9zID0gKHJldmVyc2UgPyB0aGlzLmhpc3Rvcnkubm9kZUJlZm9yZShwb3MpIDogdGhpcy5oaXN0b3J5Lm5vZGVBZnRlcihwb3MpICk7CiAgICAgICAgICBpZiAoIXJldmVyc2UgJiYgIXBvcykgcmV0dXJuOwoKICAgICAgICAgIGxpbmUgPSBnZXRUZXh0KHBvcyk7CiAgICAgICAgICBtYXRjaCA9IHRhcmdldFtyZXZlcnNlID8gLS1pZHggOiArK2lkeF07CgogICAgICAgICAgaWYgKGlkeCA+IDAgJiYgaWR4IDwgdGFyZ2V0Lmxlbmd0aCAtIDEpIHsKICAgICAgICAgICAgaWYgKGxpbmUgIT0gbWF0Y2gpIHJldHVybjsKICAgICAgICAgICAgZWxzZSBjb250aW51ZTsKICAgICAgICAgIH0KICAgICAgICAgIHZhciBvZmZzZXRCID0gKHJldmVyc2UgPyBsaW5lLmxhc3RJbmRleE9mKG1hdGNoKSA6IGxpbmUuaW5kZXhPZihtYXRjaCkgKyBtYXRjaC5sZW5ndGgpOwogICAgICAgICAgaWYgKHJldmVyc2UgPyBvZmZzZXRCICE9IGxpbmUubGVuZ3RoIC0gbWF0Y2gubGVuZ3RoIDogb2Zmc2V0QiAhPSBtYXRjaC5sZW5ndGgpCiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgIHJldHVybiB7ZnJvbToge25vZGU6IHJldmVyc2UgPyBwb3MgOiBub2RlLCBvZmZzZXQ6IHJldmVyc2UgPyBvZmZzZXRCIDogb2Zmc2V0QX0sCiAgICAgICAgICAgICAgICAgIHRvOiB7bm9kZTogcmV2ZXJzZSA/IG5vZGUgOiBwb3MsIG9mZnNldDogcmV2ZXJzZSA/IG9mZnNldEEgOiBvZmZzZXRCfX07CiAgICAgICAgfQogICAgICB9OwogIH0KCiAgU2VhcmNoQ3Vyc29yLnByb3RvdHlwZSA9IHsKICAgIGZpbmROZXh0OiBmdW5jdGlvbigpIHtyZXR1cm4gdGhpcy5maW5kKGZhbHNlKTt9LAogICAgZmluZFByZXZpb3VzOiBmdW5jdGlvbigpIHtyZXR1cm4gdGhpcy5maW5kKHRydWUpO30sCgogICAgZmluZDogZnVuY3Rpb24ocmV2ZXJzZSkgewogICAgICBpZiAoIXRoaXMudmFsaWQpIHJldHVybiBmYWxzZTsKCiAgICAgIHZhciBzZWxmID0gdGhpcywgcG9zID0gcmV2ZXJzZSA/IHRoaXMucG9zLmZyb20gOiB0aGlzLnBvcy50bywKICAgICAgICAgIG5vZGUgPSBwb3Mubm9kZSwgb2Zmc2V0ID0gcG9zLm9mZnNldDsKICAgICAgLy8gUmVzZXQgdGhlIGN1cnNvciBpZiB0aGUgY3VycmVudCBsaW5lIGlzIG5vIGxvbmdlciBpbiB0aGUgRE9NIHRyZWUuCiAgICAgIGlmIChub2RlICYmICFub2RlLnBhcmVudE5vZGUpIHsKICAgICAgICBub2RlID0gbnVsbDsgb2Zmc2V0ID0gMDsKICAgICAgfQogICAgICBmdW5jdGlvbiBzYXZlUG9zQW5kRmFpbCgpIHsKICAgICAgICB2YXIgcG9zID0ge25vZGU6IG5vZGUsIG9mZnNldDogb2Zmc2V0fTsKICAgICAgICBzZWxmLnBvcyA9IHtmcm9tOiBwb3MsIHRvOiBwb3N9OwogICAgICAgIHNlbGYuYXRPY2N1cnJlbmNlID0gZmFsc2U7CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICB9CgogICAgICB3aGlsZSAodHJ1ZSkgewogICAgICAgIGlmICh0aGlzLnBvcyA9IHRoaXMubWF0Y2hlcyhyZXZlcnNlLCBub2RlLCBvZmZzZXQpKSB7CiAgICAgICAgICB0aGlzLmF0T2NjdXJyZW5jZSA9IHRydWU7CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9CgogICAgICAgIGlmIChyZXZlcnNlKSB7CiAgICAgICAgICBpZiAoIW5vZGUpIHJldHVybiBzYXZlUG9zQW5kRmFpbCgpOwogICAgICAgICAgbm9kZSA9IHRoaXMuaGlzdG9yeS5ub2RlQmVmb3JlKG5vZGUpOwogICAgICAgICAgb2Zmc2V0ID0gdGhpcy5oaXN0b3J5LnRleHRBZnRlcihub2RlKS5sZW5ndGg7CiAgICAgICAgfQogICAgICAgIGVsc2UgewogICAgICAgICAgdmFyIG5leHQgPSB0aGlzLmhpc3Rvcnkubm9kZUFmdGVyKG5vZGUpOwogICAgICAgICAgaWYgKCFuZXh0KSB7CiAgICAgICAgICAgIG9mZnNldCA9IHRoaXMuaGlzdG9yeS50ZXh0QWZ0ZXIobm9kZSkubGVuZ3RoOwogICAgICAgICAgICByZXR1cm4gc2F2ZVBvc0FuZEZhaWwoKTsKICAgICAgICAgIH0KICAgICAgICAgIG5vZGUgPSBuZXh0OwogICAgICAgICAgb2Zmc2V0ID0gMDsKICAgICAgICB9ICAgICAgICAKICAgICAgfQogICAgfSwKCiAgICBzZWxlY3Q6IGZ1bmN0aW9uKCkgewogICAgICBpZiAodGhpcy5hdE9jY3VycmVuY2UpIHsKICAgICAgICBzZWxlY3Quc2V0Q3Vyc29yUG9zKHRoaXMuZWRpdG9yLmNvbnRhaW5lciwgdGhpcy5wb3MuZnJvbSwgdGhpcy5wb3MudG8pOwogICAgICAgIHNlbGVjdC5zY3JvbGxUb0N1cnNvcih0aGlzLmVkaXRvci5jb250YWluZXIpOwogICAgICB9CiAgICB9LAoKICAgIHJlcGxhY2U6IGZ1bmN0aW9uKHN0cmluZykgewogICAgICBpZiAodGhpcy5hdE9jY3VycmVuY2UpIHsKICAgICAgICB2YXIgZW5kID0gdGhpcy5lZGl0b3IucmVwbGFjZVJhbmdlKHRoaXMucG9zLmZyb20sIHRoaXMucG9zLnRvLCBzdHJpbmcpOwogICAgICAgIHRoaXMucG9zLnRvID0gZW5kOwogICAgICAgIHRoaXMuYXRPY2N1cnJlbmNlID0gZmFsc2U7CiAgICAgIH0KICAgIH0sCgogICAgcG9zaXRpb246IGZ1bmN0aW9uKCkgewogICAgICBpZiAodGhpcy5hdE9jY3VycmVuY2UpCiAgICAgICAgcmV0dXJuIHtsaW5lOiB0aGlzLnBvcy5mcm9tLm5vZGUsIGNoYXJhY3RlcjogdGhpcy5wb3MuZnJvbS5vZmZzZXR9OwogICAgfQogIH07CgogIC8vIFRoZSBFZGl0b3Igb2JqZWN0IGlzIHRoZSBtYWluIGluc2lkZS10aGUtaWZyYW1lIGludGVyZmFjZS4KICBmdW5jdGlvbiBFZGl0b3Iob3B0aW9ucykgewogICAgdGhpcy5vcHRpb25zID0gb3B0aW9uczsKICAgIHdpbmRvdy5pbmRlbnRVbml0ID0gb3B0aW9ucy5pbmRlbnRVbml0OwogICAgdGhpcy5wYXJlbnQgPSBwYXJlbnQ7CiAgICB2YXIgY29udGFpbmVyID0gdGhpcy5jb250YWluZXIgPSBkb2N1bWVudC5ib2R5OwogICAgdGhpcy5oaXN0b3J5ID0gbmV3IFVuZG9IaXN0b3J5KGNvbnRhaW5lciwgb3B0aW9ucy51bmRvRGVwdGgsIG9wdGlvbnMudW5kb0RlbGF5LCB0aGlzKTsKICAgIHZhciBzZWxmID0gdGhpczsKCiAgICBpZiAoIUVkaXRvci5QYXJzZXIpCiAgICAgIHRocm93ICJObyBwYXJzZXIgbG9hZGVkLiI7CiAgICBpZiAob3B0aW9ucy5wYXJzZXJDb25maWcgJiYgRWRpdG9yLlBhcnNlci5jb25maWd1cmUpCiAgICAgIEVkaXRvci5QYXJzZXIuY29uZmlndXJlKG9wdGlvbnMucGFyc2VyQ29uZmlnKTsKCiAgICBpZiAoIW9wdGlvbnMucmVhZE9ubHkpCiAgICAgIHNlbGVjdC5zZXRDdXJzb3JQb3MoY29udGFpbmVyLCB7bm9kZTogbnVsbCwgb2Zmc2V0OiAwfSk7CgogICAgdGhpcy5kaXJ0eSA9IFtdOwogICAgdGhpcy5pbXBvcnRDb2RlKG9wdGlvbnMuY29udGVudCB8fCAiIik7CiAgICB0aGlzLmhpc3Rvcnkub25DaGFuZ2UgPSBvcHRpb25zLm9uQ2hhbmdlOwoKICAgIGlmICghb3B0aW9ucy5yZWFkT25seSkgewogICAgICBpZiAob3B0aW9ucy5jb250aW51b3VzU2Nhbm5pbmcgIT09IGZhbHNlKSB7CiAgICAgICAgdGhpcy5zY2FubmVyID0gdGhpcy5kb2N1bWVudFNjYW5uZXIob3B0aW9ucy5wYXNzVGltZSk7CiAgICAgICAgdGhpcy5kZWxheVNjYW5uaW5nKCk7CiAgICAgIH0KCiAgICAgIGZ1bmN0aW9uIHNldEVkaXRhYmxlKCkgewogICAgICAgIC8vIFVzZSBjb250ZW50RWRpdGFibGUgaW5zdGVhZCBvZiBkZXNpZ25Nb2RlIG9uIElFLCBzaW5jZSBkZXNpZ25Nb2RlIGZyYW1lcwogICAgICAgIC8vIGNhbiBub3QgcnVuIGFueSBzY3JpcHRzLiBJdCB3b3VsZCBiZSBuaWNlIGlmIHdlIGNvdWxkIHVzZSBjb250ZW50RWRpdGFibGUKICAgICAgICAvLyBldmVyeXdoZXJlLCBidXQgaXQgaXMgc2lnbmlmaWNhbnRseSBmbGFraWVyIHRoYW4gZGVzaWduTW9kZSBvbiBldmVyeQogICAgICAgIC8vIHNpbmdsZSBub24tSUUgYnJvd3Nlci4KICAgICAgICBpZiAoZG9jdW1lbnQuYm9keS5jb250ZW50RWRpdGFibGUgIT0gdW5kZWZpbmVkICYmIGludGVybmV0RXhwbG9yZXIpCiAgICAgICAgICBkb2N1bWVudC5ib2R5LmNvbnRlbnRFZGl0YWJsZSA9ICJ0cnVlIjsKICAgICAgICBlbHNlCiAgICAgICAgICBkb2N1bWVudC5kZXNpZ25Nb2RlID0gIm9uIjsKCiAgICAgICAgLy8gV29yayBhcm91bmQgaXNzdWUgd2hlcmUgeW91IGhhdmUgdG8gY2xpY2sgb24gdGhlIGFjdHVhbAogICAgICAgIC8vIGJvZHkgb2YgdGhlIGRvY3VtZW50IHRvIGZvY3VzIGl0IGluIElFLCBtYWtpbmcgZm9jdXNpbmcKICAgICAgICAvLyBoYXJkIHdoZW4gdGhlIGRvY3VtZW50IGlzIHNtYWxsLgogICAgICAgIGlmIChpbnRlcm5ldEV4cGxvcmVyICYmIG9wdGlvbnMuaGVpZ2h0ICE9ICJkeW5hbWljIikKICAgICAgICAgIGRvY3VtZW50LmJvZHkuc3R5bGUubWluSGVpZ2h0ID0gKGZyYW1lRWxlbWVudC5jbGllbnRIZWlnaHQgLSAyICogZG9jdW1lbnQuYm9keS5vZmZzZXRUb3AgLSA1KSArICJweCI7CgogICAgICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZS5ib3JkZXJXaWR0aCA9ICIwIjsKICAgICAgICBpZiAoIW9wdGlvbnMudGV4dFdyYXBwaW5nKQogICAgICAgICAgY29udGFpbmVyLnN0eWxlLndoaXRlU3BhY2UgPSAibm93cmFwIjsKICAgICAgfQoKICAgICAgLy8gSWYgc2V0dGluZyB0aGUgZnJhbWUgZWRpdGFibGUgZmFpbHMsIHRyeSBhZ2FpbiB3aGVuIHRoZSB1c2VyCiAgICAgIC8vIGZvY3VzIGl0IChoYXBwZW5zIHdoZW4gdGhlIGZyYW1lIGlzIG5vdCB2aXNpYmxlIG9uCiAgICAgIC8vIGluaXRpYWxpc2F0aW9uLCBpbiBGaXJlZm94KS4KICAgICAgdHJ5IHsKICAgICAgICBzZXRFZGl0YWJsZSgpOwogICAgICB9CiAgICAgIGNhdGNoKGUpIHsKICAgICAgICB2YXIgZm9jdXNFdmVudCA9IGFkZEV2ZW50SGFuZGxlcihkb2N1bWVudCwgImZvY3VzIiwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBmb2N1c0V2ZW50KCk7CiAgICAgICAgICBzZXRFZGl0YWJsZSgpOwogICAgICAgIH0sIHRydWUpOwogICAgICB9CgogICAgICBhZGRFdmVudEhhbmRsZXIoZG9jdW1lbnQsICJrZXlkb3duIiwgbWV0aG9kKHRoaXMsICJrZXlEb3duIikpOwogICAgICBhZGRFdmVudEhhbmRsZXIoZG9jdW1lbnQsICJrZXlwcmVzcyIsIG1ldGhvZCh0aGlzLCAia2V5UHJlc3MiKSk7CiAgICAgIGFkZEV2ZW50SGFuZGxlcihkb2N1bWVudCwgImtleXVwIiwgbWV0aG9kKHRoaXMsICJrZXlVcCIpKTsKCiAgICAgIGZ1bmN0aW9uIGN1cnNvckFjdGl2aXR5KCkge3NlbGYuY3Vyc29yQWN0aXZpdHkoZmFsc2UpO30KICAgICAgYWRkRXZlbnRIYW5kbGVyKGRvY3VtZW50LmJvZHksICJtb3VzZXVwIiwgY3Vyc29yQWN0aXZpdHkpOwogICAgICBhZGRFdmVudEhhbmRsZXIoZG9jdW1lbnQuYm9keSwgImN1dCIsIGN1cnNvckFjdGl2aXR5KTsKCiAgICAgIC8vIHdvcmthcm91bmQgZm9yIGEgZ2Vja28gYnVnIFs/XSB3aGVyZSBnb2luZyBmb3J3YXJkIGFuZCB0aGVuCiAgICAgIC8vIGJhY2sgYWdhaW4gYnJlYWtzIGRlc2lnbm1vZGUgKG5vIG1vcmUgY3Vyc29yKQogICAgICBpZiAoZ2Vja28pCiAgICAgICAgYWRkRXZlbnRIYW5kbGVyKHdpbmRvdywgInBhZ2VoaWRlIiwgZnVuY3Rpb24oKXtzZWxmLnVubG9hZGVkID0gdHJ1ZTt9KTsKCiAgICAgIGFkZEV2ZW50SGFuZGxlcihkb2N1bWVudC5ib2R5LCAicGFzdGUiLCBmdW5jdGlvbihldmVudCkgewogICAgICAgIGN1cnNvckFjdGl2aXR5KCk7CiAgICAgICAgdmFyIHRleHQgPSBudWxsOwogICAgICAgIHRyeSB7CiAgICAgICAgICB2YXIgY2xpcGJvYXJkRGF0YSA9IGV2ZW50LmNsaXBib2FyZERhdGEgfHwgd2luZG93LmNsaXBib2FyZERhdGE7CiAgICAgICAgICBpZiAoY2xpcGJvYXJkRGF0YSkgdGV4dCA9IGNsaXBib2FyZERhdGEuZ2V0RGF0YSgnVGV4dCcpOwogICAgICAgIH0KICAgICAgICBjYXRjaChlKSB7fQogICAgICAgIGlmICh0ZXh0ICE9PSBudWxsKSB7CiAgICAgICAgICBldmVudC5zdG9wKCk7CiAgICAgICAgICBzZWxmLnJlcGxhY2VTZWxlY3Rpb24odGV4dCk7CiAgICAgICAgICBzZWxlY3Quc2Nyb2xsVG9DdXJzb3Ioc2VsZi5jb250YWluZXIpOwogICAgICAgIH0KICAgICAgfSk7CgogICAgICBpZiAodGhpcy5vcHRpb25zLmF1dG9NYXRjaFBhcmVucykKICAgICAgICBhZGRFdmVudEhhbmRsZXIoZG9jdW1lbnQuYm9keSwgImNsaWNrIiwgbWV0aG9kKHRoaXMsICJzY2hlZHVsZVBhcmVuSGlnaGxpZ2h0IikpOwogICAgfQogICAgZWxzZSBpZiAoIW9wdGlvbnMudGV4dFdyYXBwaW5nKSB7CiAgICAgIGNvbnRhaW5lci5zdHlsZS53aGl0ZVNwYWNlID0gIm5vd3JhcCI7CiAgICB9CiAgfQoKICBmdW5jdGlvbiBpc1NhZmVLZXkoY29kZSkgewogICAgcmV0dXJuIChjb2RlID49IDE2ICYmIGNvZGUgPD0gMTgpIHx8IC8vIHNoaWZ0LCBjb250cm9sLCBhbHQKICAgICAgICAgICAoY29kZSA+PSAzMyAmJiBjb2RlIDw9IDQwKTsgLy8gYXJyb3dzLCBob21lLCBlbmQKICB9CgogIEVkaXRvci5wcm90b3R5cGUgPSB7CiAgICAvLyBJbXBvcnQgYSBwaWVjZSBvZiBjb2RlIGludG8gdGhlIGVkaXRvci4KICAgIGltcG9ydENvZGU6IGZ1bmN0aW9uKGNvZGUpIHsKICAgICAgdGhpcy5oaXN0b3J5LnB1c2gobnVsbCwgbnVsbCwgYXNFZGl0b3JMaW5lcyhjb2RlKSk7CiAgICAgIHRoaXMuaGlzdG9yeS5yZXNldCgpOwogICAgfSwKCiAgICAvLyBFeHRyYWN0IHRoZSBjb2RlIGZyb20gdGhlIGVkaXRvci4KICAgIGdldENvZGU6IGZ1bmN0aW9uKCkgewogICAgICBpZiAoIXRoaXMuY29udGFpbmVyLmZpcnN0Q2hpbGQpCiAgICAgICAgcmV0dXJuICIiOwoKICAgICAgdmFyIGFjY3VtID0gW107CiAgICAgIHNlbGVjdC5tYXJrU2VsZWN0aW9uKCk7CiAgICAgIGZvckVhY2godHJhdmVyc2VET00odGhpcy5jb250YWluZXIuZmlyc3RDaGlsZCksIG1ldGhvZChhY2N1bSwgInB1c2giKSk7CiAgICAgIHdlYmtpdExhc3RMaW5lSGFjayh0aGlzLmNvbnRhaW5lcik7CiAgICAgIHNlbGVjdC5zZWxlY3RNYXJrZWQoKTsKICAgICAgLy8gT24gd2Via2l0LCBkb24ndCBjb3VudCBsYXN0IChlbXB0eSkgbGluZSBpZiB0aGUgd2Via2l0TGFzdExpbmVIYWNrIEJSIGlzIHByZXNlbnQKICAgICAgaWYgKHdlYmtpdCAmJiB0aGlzLmNvbnRhaW5lci5sYXN0Q2hpbGQuaGFja0JSKQogICAgICAgIGFjY3VtLnBvcCgpOwogICAgICByZXR1cm4gY2xlYW5UZXh0KGFjY3VtLmpvaW4oIiIpKTsKICAgIH0sCgogICAgY2hlY2tMaW5lOiBmdW5jdGlvbihub2RlKSB7CiAgICAgIGlmIChub2RlID09PSBmYWxzZSB8fCAhKG5vZGUgPT0gbnVsbCB8fCBub2RlLnBhcmVudE5vZGUgPT0gdGhpcy5jb250YWluZXIpKQogICAgICAgIHRocm93IHBhcmVudC5Db2RlTWlycm9yLkludmFsaWRMaW5lSGFuZGxlOwogICAgfSwKCiAgICBjdXJzb3JQb3NpdGlvbjogZnVuY3Rpb24oc3RhcnQpIHsKICAgICAgaWYgKHN0YXJ0ID09IG51bGwpIHN0YXJ0ID0gdHJ1ZTsKICAgICAgdmFyIHBvcyA9IHNlbGVjdC5jdXJzb3JQb3ModGhpcy5jb250YWluZXIsIHN0YXJ0KTsKICAgICAgaWYgKHBvcykgcmV0dXJuIHtsaW5lOiBwb3Mubm9kZSwgY2hhcmFjdGVyOiBwb3Mub2Zmc2V0fTsKICAgICAgZWxzZSByZXR1cm4ge2xpbmU6IG51bGwsIGNoYXJhY3RlcjogMH07CiAgICB9LAoKICAgIGZpcnN0TGluZTogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiBudWxsOwogICAgfSwKCiAgICBsYXN0TGluZTogZnVuY3Rpb24oKSB7CiAgICAgIGlmICh0aGlzLmNvbnRhaW5lci5sYXN0Q2hpbGQpIHJldHVybiBzdGFydE9mTGluZSh0aGlzLmNvbnRhaW5lci5sYXN0Q2hpbGQpOwogICAgICBlbHNlIHJldHVybiBudWxsOwogICAgfSwKCiAgICBuZXh0TGluZTogZnVuY3Rpb24obGluZSkgewogICAgICB0aGlzLmNoZWNrTGluZShsaW5lKTsKICAgICAgdmFyIGVuZCA9IGVuZE9mTGluZShsaW5lLCB0aGlzLmNvbnRhaW5lcik7CiAgICAgIHJldHVybiBlbmQgfHwgZmFsc2U7CiAgICB9LAoKICAgIHByZXZMaW5lOiBmdW5jdGlvbihsaW5lKSB7CiAgICAgIHRoaXMuY2hlY2tMaW5lKGxpbmUpOwogICAgICBpZiAobGluZSA9PSBudWxsKSByZXR1cm4gZmFsc2U7CiAgICAgIHJldHVybiBzdGFydE9mTGluZShsaW5lLnByZXZpb3VzU2libGluZyk7CiAgICB9LAoKICAgIHZpc2libGVMaW5lQ291bnQ6IGZ1bmN0aW9uKCkgewogICAgICB2YXIgbGluZSA9IHRoaXMuY29udGFpbmVyLmZpcnN0Q2hpbGQ7CiAgICAgIHdoaWxlIChsaW5lICYmIGlzQlIobGluZSkpIGxpbmUgPSBsaW5lLm5leHRTaWJsaW5nOyAvLyBCUiBoZWlnaHRzIGFyZSB1bnJlbGlhYmxlCiAgICAgIGlmICghbGluZSkgcmV0dXJuIGZhbHNlOwogICAgICB2YXIgaW5uZXJIZWlnaHQgPSAod2luZG93LmlubmVySGVpZ2h0CiAgICAgICAgICAgICAgICAgICAgICAgICB8fCBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50SGVpZ2h0CiAgICAgICAgICAgICAgICAgICAgICAgICB8fCBkb2N1bWVudC5ib2R5LmNsaWVudEhlaWdodCk7CiAgICAgIHJldHVybiBNYXRoLmZsb29yKGlubmVySGVpZ2h0IC8gbGluZS5vZmZzZXRIZWlnaHQpOwogICAgfSwKCiAgICBzZWxlY3RMaW5lczogZnVuY3Rpb24oc3RhcnRMaW5lLCBzdGFydE9mZnNldCwgZW5kTGluZSwgZW5kT2Zmc2V0KSB7CiAgICAgIHRoaXMuY2hlY2tMaW5lKHN0YXJ0TGluZSk7CiAgICAgIHZhciBzdGFydCA9IHtub2RlOiBzdGFydExpbmUsIG9mZnNldDogc3RhcnRPZmZzZXR9LCBlbmQgPSBudWxsOwogICAgICBpZiAoZW5kT2Zmc2V0ICE9PSB1bmRlZmluZWQpIHsKICAgICAgICB0aGlzLmNoZWNrTGluZShlbmRMaW5lKTsKICAgICAgICBlbmQgPSB7bm9kZTogZW5kTGluZSwgb2Zmc2V0OiBlbmRPZmZzZXR9OwogICAgICB9CiAgICAgIHNlbGVjdC5zZXRDdXJzb3JQb3ModGhpcy5jb250YWluZXIsIHN0YXJ0LCBlbmQpOwogICAgICBzZWxlY3Quc2Nyb2xsVG9DdXJzb3IodGhpcy5jb250YWluZXIpOwogICAgfSwKCiAgICBsaW5lQ29udGVudDogZnVuY3Rpb24obGluZSkgewogICAgICB2YXIgYWNjdW0gPSBbXTsKICAgICAgZm9yIChsaW5lID0gbGluZSA/IGxpbmUubmV4dFNpYmxpbmcgOiB0aGlzLmNvbnRhaW5lci5maXJzdENoaWxkOwogICAgICAgICAgIGxpbmUgJiYgIWlzQlIobGluZSk7IGxpbmUgPSBsaW5lLm5leHRTaWJsaW5nKQogICAgICAgIGFjY3VtLnB1c2gobm9kZVRleHQobGluZSkpOwogICAgICByZXR1cm4gY2xlYW5UZXh0KGFjY3VtLmpvaW4oIiIpKTsKICAgIH0sCgogICAgc2V0TGluZUNvbnRlbnQ6IGZ1bmN0aW9uKGxpbmUsIGNvbnRlbnQpIHsKICAgICAgdGhpcy5oaXN0b3J5LmNvbW1pdCgpOwogICAgICB0aGlzLnJlcGxhY2VSYW5nZSh7bm9kZTogbGluZSwgb2Zmc2V0OiAwfSwKICAgICAgICAgICAgICAgICAgICAgICAge25vZGU6IGxpbmUsIG9mZnNldDogdGhpcy5oaXN0b3J5LnRleHRBZnRlcihsaW5lKS5sZW5ndGh9LAogICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50KTsKICAgICAgdGhpcy5hZGREaXJ0eU5vZGUobGluZSk7CiAgICAgIHRoaXMuc2NoZWR1bGVIaWdobGlnaHQoKTsKICAgIH0sCgogICAgcmVtb3ZlTGluZTogZnVuY3Rpb24obGluZSkgewogICAgICB2YXIgbm9kZSA9IGxpbmUgPyBsaW5lLm5leHRTaWJsaW5nIDogdGhpcy5jb250YWluZXIuZmlyc3RDaGlsZDsKICAgICAgd2hpbGUgKG5vZGUpIHsKICAgICAgICB2YXIgbmV4dCA9IG5vZGUubmV4dFNpYmxpbmc7CiAgICAgICAgcmVtb3ZlRWxlbWVudChub2RlKTsKICAgICAgICBpZiAoaXNCUihub2RlKSkgYnJlYWs7CiAgICAgICAgbm9kZSA9IG5leHQ7CiAgICAgIH0KICAgICAgdGhpcy5hZGREaXJ0eU5vZGUobGluZSk7CiAgICAgIHRoaXMuc2NoZWR1bGVIaWdobGlnaHQoKTsKICAgIH0sCgogICAgaW5zZXJ0SW50b0xpbmU6IGZ1bmN0aW9uKGxpbmUsIHBvc2l0aW9uLCBjb250ZW50KSB7CiAgICAgIHZhciBiZWZvcmUgPSBudWxsOwogICAgICBpZiAocG9zaXRpb24gPT0gImVuZCIpIHsKICAgICAgICBiZWZvcmUgPSBlbmRPZkxpbmUobGluZSwgdGhpcy5jb250YWluZXIpOwogICAgICB9CiAgICAgIGVsc2UgewogICAgICAgIGZvciAodmFyIGN1ciA9IGxpbmUgPyBsaW5lLm5leHRTaWJsaW5nIDogdGhpcy5jb250YWluZXIuZmlyc3RDaGlsZDsgY3VyOyBjdXIgPSBjdXIubmV4dFNpYmxpbmcpIHsKICAgICAgICAgIGlmIChwb3NpdGlvbiA9PSAwKSB7CiAgICAgICAgICAgIGJlZm9yZSA9IGN1cjsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgICB2YXIgdGV4dCA9IG5vZGVUZXh0KGN1cik7CiAgICAgICAgICBpZiAodGV4dC5sZW5ndGggPiBwb3NpdGlvbikgewogICAgICAgICAgICBiZWZvcmUgPSBjdXIubmV4dFNpYmxpbmc7CiAgICAgICAgICAgIGNvbnRlbnQgPSB0ZXh0LnNsaWNlKDAsIHBvc2l0aW9uKSArIGNvbnRlbnQgKyB0ZXh0LnNsaWNlKHBvc2l0aW9uKTsKICAgICAgICAgICAgcmVtb3ZlRWxlbWVudChjdXIpOwogICAgICAgICAgICBicmVhazsKICAgICAgICAgIH0KICAgICAgICAgIHBvc2l0aW9uIC09IHRleHQubGVuZ3RoOwogICAgICAgIH0KICAgICAgfQoKICAgICAgdmFyIGxpbmVzID0gYXNFZGl0b3JMaW5lcyhjb250ZW50KTsKICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBsaW5lcy5sZW5ndGg7IGkrKykgewogICAgICAgIGlmIChpID4gMCkgdGhpcy5jb250YWluZXIuaW5zZXJ0QmVmb3JlKGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoIkJSIiksIGJlZm9yZSk7CiAgICAgICAgdGhpcy5jb250YWluZXIuaW5zZXJ0QmVmb3JlKG1ha2VQYXJ0U3BhbihsaW5lc1tpXSksIGJlZm9yZSk7CiAgICAgIH0KICAgICAgdGhpcy5hZGREaXJ0eU5vZGUobGluZSk7CiAgICAgIHRoaXMuc2NoZWR1bGVIaWdobGlnaHQoKTsKICAgIH0sCgogICAgLy8gUmV0cmlldmUgdGhlIHNlbGVjdGVkIHRleHQuCiAgICBzZWxlY3RlZFRleHQ6IGZ1bmN0aW9uKCkgewogICAgICB2YXIgaCA9IHRoaXMuaGlzdG9yeTsKICAgICAgaC5jb21taXQoKTsKCiAgICAgIHZhciBzdGFydCA9IHNlbGVjdC5jdXJzb3JQb3ModGhpcy5jb250YWluZXIsIHRydWUpLAogICAgICAgICAgZW5kID0gc2VsZWN0LmN1cnNvclBvcyh0aGlzLmNvbnRhaW5lciwgZmFsc2UpOwogICAgICBpZiAoIXN0YXJ0IHx8ICFlbmQpIHJldHVybiAiIjsKCiAgICAgIGlmIChzdGFydC5ub2RlID09IGVuZC5ub2RlKQogICAgICAgIHJldHVybiBoLnRleHRBZnRlcihzdGFydC5ub2RlKS5zbGljZShzdGFydC5vZmZzZXQsIGVuZC5vZmZzZXQpOwoKICAgICAgdmFyIHRleHQgPSBbaC50ZXh0QWZ0ZXIoc3RhcnQubm9kZSkuc2xpY2Uoc3RhcnQub2Zmc2V0KV07CiAgICAgIGZvciAodmFyIHBvcyA9IGgubm9kZUFmdGVyKHN0YXJ0Lm5vZGUpOyBwb3MgIT0gZW5kLm5vZGU7IHBvcyA9IGgubm9kZUFmdGVyKHBvcykpCiAgICAgICAgdGV4dC5wdXNoKGgudGV4dEFmdGVyKHBvcykpOwogICAgICB0ZXh0LnB1c2goaC50ZXh0QWZ0ZXIoZW5kLm5vZGUpLnNsaWNlKDAsIGVuZC5vZmZzZXQpKTsKICAgICAgcmV0dXJuIGNsZWFuVGV4dCh0ZXh0LmpvaW4oIlxuIikpOwogICAgfSwKCiAgICAvLyBSZXBsYWNlIHRoZSBzZWxlY3Rpb24gd2l0aCBhbm90aGVyIHBpZWNlIG9mIHRleHQuCiAgICByZXBsYWNlU2VsZWN0aW9uOiBmdW5jdGlvbih0ZXh0KSB7CiAgICAgIHRoaXMuaGlzdG9yeS5jb21taXQoKTsKCiAgICAgIHZhciBzdGFydCA9IHNlbGVjdC5jdXJzb3JQb3ModGhpcy5jb250YWluZXIsIHRydWUpLAogICAgICAgICAgZW5kID0gc2VsZWN0LmN1cnNvclBvcyh0aGlzLmNvbnRhaW5lciwgZmFsc2UpOwogICAgICBpZiAoIXN0YXJ0IHx8ICFlbmQpIHJldHVybjsKCiAgICAgIGVuZCA9IHRoaXMucmVwbGFjZVJhbmdlKHN0YXJ0LCBlbmQsIHRleHQpOwogICAgICBzZWxlY3Quc2V0Q3Vyc29yUG9zKHRoaXMuY29udGFpbmVyLCBlbmQpOwogICAgICB3ZWJraXRMYXN0TGluZUhhY2sodGhpcy5jb250YWluZXIpOwogICAgfSwKCiAgICBjdXJzb3JDb29yZHM6IGZ1bmN0aW9uKHN0YXJ0KSB7CiAgICAgIHZhciBzZWwgPSBzZWxlY3QuY3Vyc29yUG9zKHRoaXMuY29udGFpbmVyLCBzdGFydCk7CiAgICAgIGlmICghc2VsKSByZXR1cm4gbnVsbDsKICAgICAgdmFyIG9mZiA9IHNlbC5vZmZzZXQsIG5vZGUgPSBzZWwubm9kZSwgc2VsZiA9IHRoaXM7CiAgICAgIGZ1bmN0aW9uIG1lYXN1cmVGcm9tTm9kZShub2RlLCB4T2Zmc2V0KSB7CiAgICAgICAgdmFyIHkgPSAtKGRvY3VtZW50LmJvZHkuc2Nyb2xsVG9wIHx8IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zY3JvbGxUb3AgfHwgMCksCiAgICAgICAgICAgIHggPSAtKGRvY3VtZW50LmJvZHkuc2Nyb2xsTGVmdCB8fCBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc2Nyb2xsTGVmdCB8fCAwKSArIHhPZmZzZXQ7CiAgICAgICAgZm9yRWFjaChbbm9kZSwgd2luZG93LmZyYW1lRWxlbWVudF0sIGZ1bmN0aW9uKG4pIHsKICAgICAgICAgIHdoaWxlIChuKSB7eCArPSBuLm9mZnNldExlZnQ7IHkgKz0gbi5vZmZzZXRUb3A7biA9IG4ub2Zmc2V0UGFyZW50O30KICAgICAgICB9KTsKICAgICAgICByZXR1cm4ge3g6IHgsIHk6IHksIHlCb3Q6IHkgKyBub2RlLm9mZnNldEhlaWdodH07CiAgICAgIH0KICAgICAgZnVuY3Rpb24gd2l0aFRlbXBOb2RlKHRleHQsIGYpIHsKICAgICAgICB2YXIgbm9kZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoIlNQQU4iKTsKICAgICAgICBub2RlLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKHRleHQpKTsKICAgICAgICB0cnkge3JldHVybiBmKG5vZGUpO30KICAgICAgICBmaW5hbGx5IHtpZiAobm9kZS5wYXJlbnROb2RlKSBub2RlLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQobm9kZSk7fQogICAgICB9CgogICAgICB3aGlsZSAob2ZmKSB7CiAgICAgICAgbm9kZSA9IG5vZGUgPyBub2RlLm5leHRTaWJsaW5nIDogdGhpcy5jb250YWluZXIuZmlyc3RDaGlsZDsKICAgICAgICB2YXIgdHh0ID0gbm9kZVRleHQobm9kZSk7CiAgICAgICAgaWYgKG9mZiA8IHR4dC5sZW5ndGgpCiAgICAgICAgICByZXR1cm4gd2l0aFRlbXBOb2RlKHR4dC5zdWJzdHIoMCwgb2ZmKSwgZnVuY3Rpb24odG1wKSB7CiAgICAgICAgICAgIHRtcC5zdHlsZS5wb3NpdGlvbiA9ICJhYnNvbHV0ZSI7IHRtcC5zdHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7CiAgICAgICAgICAgIHRtcC5jbGFzc05hbWUgPSBub2RlLmNsYXNzTmFtZTsKICAgICAgICAgICAgc2VsZi5jb250YWluZXIuYXBwZW5kQ2hpbGQodG1wKTsKICAgICAgICAgICAgcmV0dXJuIG1lYXN1cmVGcm9tTm9kZShub2RlLCB0bXAub2Zmc2V0V2lkdGgpOwogICAgICAgICAgfSk7CiAgICAgICAgb2ZmIC09IHR4dC5sZW5ndGg7CiAgICAgIH0KICAgICAgaWYgKG5vZGUgJiYgaXNTcGFuKG5vZGUpKQogICAgICAgIHJldHVybiBtZWFzdXJlRnJvbU5vZGUobm9kZSwgbm9kZS5vZmZzZXRXaWR0aCk7CiAgICAgIGVsc2UgaWYgKG5vZGUgJiYgbm9kZS5uZXh0U2libGluZyAmJiBpc1NwYW4obm9kZS5uZXh0U2libGluZykpCiAgICAgICAgcmV0dXJuIG1lYXN1cmVGcm9tTm9kZShub2RlLm5leHRTaWJsaW5nLCAwKTsKICAgICAgZWxzZQogICAgICAgIHJldHVybiB3aXRoVGVtcE5vZGUoIlx1MjAwYiIsIGZ1bmN0aW9uKHRtcCkgewogICAgICAgICAgaWYgKG5vZGUpIG5vZGUucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUodG1wLCBub2RlLm5leHRTaWJsaW5nKTsKICAgICAgICAgIGVsc2Ugc2VsZi5jb250YWluZXIuaW5zZXJ0QmVmb3JlKHRtcCwgc2VsZi5jb250YWluZXIuZmlyc3RDaGlsZCk7CiAgICAgICAgICByZXR1cm4gbWVhc3VyZUZyb21Ob2RlKHRtcCwgMCk7CiAgICAgICAgfSk7CiAgICB9LAoKICAgIHJlcm91dGVQYXN0ZUV2ZW50OiBmdW5jdGlvbigpIHsKICAgICAgaWYgKHRoaXMuY2FwdHVyaW5nUGFzdGUgfHwgd2luZG93Lm9wZXJhKSByZXR1cm47CiAgICAgIHRoaXMuY2FwdHVyaW5nUGFzdGUgPSB0cnVlOwogICAgICB2YXIgdGUgPSB3aW5kb3cuZnJhbWVFbGVtZW50LkNvZGVNaXJyb3IudGV4dGFyZWFIYWNrOwogICAgICBwYXJlbnQuZm9jdXMoKTsKICAgICAgdGUudmFsdWUgPSAiIjsKICAgICAgdGUuZm9jdXMoKTsKCiAgICAgIHZhciBzZWxmID0gdGhpczsKICAgICAgdGhpcy5wYXJlbnQuc2V0VGltZW91dChmdW5jdGlvbigpIHsKICAgICAgICBzZWxmLmNhcHR1cmluZ1Bhc3RlID0gZmFsc2U7CiAgICAgICAgd2luZG93LmZvY3VzKCk7CiAgICAgICAgaWYgKHNlbGYuc2VsZWN0aW9uU25hcHNob3QpIC8vIElFIGhhY2sKICAgICAgICAgIHdpbmRvdy5zZWxlY3Quc2V0Qm9va21hcmsoc2VsZi5jb250YWluZXIsIHNlbGYuc2VsZWN0aW9uU25hcHNob3QpOwogICAgICAgIHZhciB0ZXh0ID0gdGUudmFsdWU7CiAgICAgICAgaWYgKHRleHQpIHsKICAgICAgICAgIHNlbGYucmVwbGFjZVNlbGVjdGlvbih0ZXh0KTsKICAgICAgICAgIHNlbGVjdC5zY3JvbGxUb0N1cnNvcihzZWxmLmNvbnRhaW5lcik7CiAgICAgICAgfQogICAgICB9LCAxMCk7CiAgICB9LAoKICAgIHJlcGxhY2VSYW5nZTogZnVuY3Rpb24oZnJvbSwgdG8sIHRleHQpIHsKICAgICAgdmFyIGxpbmVzID0gYXNFZGl0b3JMaW5lcyh0ZXh0KTsKICAgICAgbGluZXNbMF0gPSB0aGlzLmhpc3RvcnkudGV4dEFmdGVyKGZyb20ubm9kZSkuc2xpY2UoMCwgZnJvbS5vZmZzZXQpICsgbGluZXNbMF07CiAgICAgIHZhciBsYXN0TGluZSA9IGxpbmVzW2xpbmVzLmxlbmd0aCAtIDFdOwogICAgICBsaW5lc1tsaW5lcy5sZW5ndGggLSAxXSA9IGxhc3RMaW5lICsgdGhpcy5oaXN0b3J5LnRleHRBZnRlcih0by5ub2RlKS5zbGljZSh0by5vZmZzZXQpOwogICAgICB2YXIgZW5kID0gdGhpcy5oaXN0b3J5Lm5vZGVBZnRlcih0by5ub2RlKTsKICAgICAgdGhpcy5oaXN0b3J5LnB1c2goZnJvbS5ub2RlLCBlbmQsIGxpbmVzKTsKICAgICAgcmV0dXJuIHtub2RlOiB0aGlzLmhpc3Rvcnkubm9kZUJlZm9yZShlbmQpLAogICAgICAgICAgICAgIG9mZnNldDogbGFzdExpbmUubGVuZ3RofTsKICAgIH0sCgogICAgZ2V0U2VhcmNoQ3Vyc29yOiBmdW5jdGlvbihzdHJpbmcsIGZyb21DdXJzb3IsIGNhc2VGb2xkKSB7CiAgICAgIHJldHVybiBuZXcgU2VhcmNoQ3Vyc29yKHRoaXMsIHN0cmluZywgZnJvbUN1cnNvciwgY2FzZUZvbGQpOwogICAgfSwKCiAgICAvLyBSZS1pbmRlbnQgdGhlIHdob2xlIGJ1ZmZlcgogICAgcmVpbmRlbnQ6IGZ1bmN0aW9uKCkgewogICAgICBpZiAodGhpcy5jb250YWluZXIuZmlyc3RDaGlsZCkKICAgICAgICB0aGlzLmluZGVudFJlZ2lvbihudWxsLCB0aGlzLmNvbnRhaW5lci5sYXN0Q2hpbGQpOwogICAgfSwKCiAgICByZWluZGVudFNlbGVjdGlvbjogZnVuY3Rpb24oZGlyZWN0aW9uKSB7CiAgICAgIGlmICghc2VsZWN0LnNvbWV0aGluZ1NlbGVjdGVkKCkpIHsKICAgICAgICB0aGlzLmluZGVudEF0Q3Vyc29yKGRpcmVjdGlvbik7CiAgICAgIH0KICAgICAgZWxzZSB7CiAgICAgICAgdmFyIHN0YXJ0ID0gc2VsZWN0LnNlbGVjdGlvblRvcE5vZGUodGhpcy5jb250YWluZXIsIHRydWUpLAogICAgICAgICAgICBlbmQgPSBzZWxlY3Quc2VsZWN0aW9uVG9wTm9kZSh0aGlzLmNvbnRhaW5lciwgZmFsc2UpOwogICAgICAgIGlmIChzdGFydCA9PT0gZmFsc2UgfHwgZW5kID09PSBmYWxzZSkgcmV0dXJuOwogICAgICAgIHRoaXMuaW5kZW50UmVnaW9uKHN0YXJ0LCBlbmQsIGRpcmVjdGlvbik7CiAgICAgIH0KICAgIH0sCgogICAgZ3JhYktleXM6IGZ1bmN0aW9uKGV2ZW50SGFuZGxlciwgZmlsdGVyKSB7CiAgICAgIHRoaXMuZnJvemVuID0gZXZlbnRIYW5kbGVyOwogICAgICB0aGlzLmtleUZpbHRlciA9IGZpbHRlcjsKICAgIH0sCiAgICB1bmdyYWJLZXlzOiBmdW5jdGlvbigpIHsKICAgICAgdGhpcy5mcm96ZW4gPSAibGVhdmUiOwogICAgfSwKCiAgICBzZXRQYXJzZXI6IGZ1bmN0aW9uKG5hbWUsIHBhcnNlckNvbmZpZykgewogICAgICBFZGl0b3IuUGFyc2VyID0gd2luZG93W25hbWVdOwogICAgICBwYXJzZXJDb25maWcgPSBwYXJzZXJDb25maWcgfHwgdGhpcy5vcHRpb25zLnBhcnNlckNvbmZpZzsKICAgICAgaWYgKHBhcnNlckNvbmZpZyAmJiBFZGl0b3IuUGFyc2VyLmNvbmZpZ3VyZSkKICAgICAgICBFZGl0b3IuUGFyc2VyLmNvbmZpZ3VyZShwYXJzZXJDb25maWcpOwoKICAgICAgaWYgKHRoaXMuY29udGFpbmVyLmZpcnN0Q2hpbGQpIHsKICAgICAgICBmb3JFYWNoKHRoaXMuY29udGFpbmVyLmNoaWxkTm9kZXMsIGZ1bmN0aW9uKG4pIHsKICAgICAgICAgIGlmIChuLm5vZGVUeXBlICE9IDMpIG4uZGlydHkgPSB0cnVlOwogICAgICAgIH0pOwogICAgICAgIHRoaXMuYWRkRGlydHlOb2RlKHRoaXMuZmlyc3RDaGlsZCk7CiAgICAgICAgdGhpcy5zY2hlZHVsZUhpZ2hsaWdodCgpOwogICAgICB9CiAgICB9LAoKICAgIC8vIEludGVyY2VwdCBlbnRlciBhbmQgdGFiLCBhbmQgYXNzaWduIHRoZWlyIG5ldyBmdW5jdGlvbnMuCiAgICBrZXlEb3duOiBmdW5jdGlvbihldmVudCkgewogICAgICBpZiAodGhpcy5mcm96ZW4gPT0gImxlYXZlIikge3RoaXMuZnJvemVuID0gbnVsbDsgdGhpcy5rZXlGaWx0ZXIgPSBudWxsO30KICAgICAgaWYgKHRoaXMuZnJvemVuICYmICghdGhpcy5rZXlGaWx0ZXIgfHwgdGhpcy5rZXlGaWx0ZXIoZXZlbnQua2V5Q29kZSwgZXZlbnQpKSkgewogICAgICAgIGV2ZW50LnN0b3AoKTsKICAgICAgICB0aGlzLmZyb3plbihldmVudCk7CiAgICAgICAgcmV0dXJuOwogICAgICB9CgogICAgICB2YXIgY29kZSA9IGV2ZW50LmtleUNvZGU7CiAgICAgIC8vIERvbid0IHNjYW4gd2hlbiB0aGUgdXNlciBpcyB0eXBpbmcuCiAgICAgIHRoaXMuZGVsYXlTY2FubmluZygpOwogICAgICAvLyBTY2hlZHVsZSBhIHBhcmVuLWhpZ2hsaWdodCBldmVudCwgaWYgY29uZmlndXJlZC4KICAgICAgaWYgKHRoaXMub3B0aW9ucy5hdXRvTWF0Y2hQYXJlbnMpCiAgICAgICAgdGhpcy5zY2hlZHVsZVBhcmVuSGlnaGxpZ2h0KCk7CgogICAgICAvLyBUaGUgdmFyaW91cyBjaGVja3MgZm9yICFhbHRLZXkgYXJlIHRoZXJlIGJlY2F1c2UgQWx0R3Igc2V0cyBib3RoCiAgICAgIC8vIGN0cmxLZXkgYW5kIGFsdEtleSB0byB0cnVlLCBhbmQgc2hvdWxkIG5vdCBiZSByZWNvZ25pc2VkIGFzCiAgICAgIC8vIENvbnRyb2wuCiAgICAgIGlmIChjb2RlID09IDEzKSB7IC8vIGVudGVyCiAgICAgICAgaWYgKGV2ZW50LmN0cmxLZXkgJiYgIWV2ZW50LmFsdEtleSkgewogICAgICAgICAgdGhpcy5yZXBhcnNlQnVmZmVyKCk7CiAgICAgICAgfQogICAgICAgIGVsc2UgewogICAgICAgICAgc2VsZWN0Lmluc2VydE5ld2xpbmVBdEN1cnNvcigpOwogICAgICAgICAgdmFyIG1vZGUgPSB0aGlzLm9wdGlvbnMuZW50ZXJNb2RlOwogICAgICAgICAgaWYgKG1vZGUgIT0gImZsYXQiKSB0aGlzLmluZGVudEF0Q3Vyc29yKG1vZGUgPT0gImtlZXAiID8gImtlZXAiIDogdW5kZWZpbmVkKTsKICAgICAgICAgIHNlbGVjdC5zY3JvbGxUb0N1cnNvcih0aGlzLmNvbnRhaW5lcik7CiAgICAgICAgfQogICAgICAgIGV2ZW50LnN0b3AoKTsKICAgICAgfQogICAgICBlbHNlIGlmIChjb2RlID09IDkgJiYgdGhpcy5vcHRpb25zLnRhYk1vZGUgIT0gImRlZmF1bHQiICYmICFldmVudC5jdHJsS2V5KSB7IC8vIHRhYgogICAgICAgIHRoaXMuaGFuZGxlVGFiKCFldmVudC5zaGlmdEtleSk7CiAgICAgICAgZXZlbnQuc3RvcCgpOwogICAgICB9CiAgICAgIGVsc2UgaWYgKGNvZGUgPT0gMzIgJiYgZXZlbnQuc2hpZnRLZXkgJiYgdGhpcy5vcHRpb25zLnRhYk1vZGUgPT0gImRlZmF1bHQiKSB7IC8vIHNwYWNlCiAgICAgICAgdGhpcy5oYW5kbGVUYWIodHJ1ZSk7CiAgICAgICAgZXZlbnQuc3RvcCgpOwogICAgICB9CiAgICAgIGVsc2UgaWYgKGNvZGUgPT0gMzYgJiYgIWV2ZW50LnNoaWZ0S2V5ICYmICFldmVudC5jdHJsS2V5KSB7IC8vIGhvbWUKICAgICAgICBpZiAodGhpcy5ob21lKCkpIGV2ZW50LnN0b3AoKTsKICAgICAgfQogICAgICBlbHNlIGlmIChjb2RlID09IDM1ICYmICFldmVudC5zaGlmdEtleSAmJiAhZXZlbnQuY3RybEtleSkgeyAvLyBlbmQKICAgICAgICBpZiAodGhpcy5lbmQoKSkgZXZlbnQuc3RvcCgpOwogICAgICB9CiAgICAgIC8vIE9ubHkgaW4gRmlyZWZveCBpcyB0aGUgZGVmYXVsdCBiZWhhdmlvciBmb3IgUGdVcC9QZ0RuIGNvcnJlY3QuCiAgICAgIGVsc2UgaWYgKGNvZGUgPT0gMzMgJiYgIWV2ZW50LnNoaWZ0S2V5ICYmICFldmVudC5jdHJsS2V5ICYmICFnZWNrbykgeyAvLyBQZ1VwCiAgICAgICAgaWYgKHRoaXMucGFnZVVwKCkpIGV2ZW50LnN0b3AoKTsKICAgICAgfQogICAgICBlbHNlIGlmIChjb2RlID09IDM0ICYmICFldmVudC5zaGlmdEtleSAmJiAhZXZlbnQuY3RybEtleSAmJiAhZ2Vja28pIHsgIC8vIFBnRG4KICAgICAgICBpZiAodGhpcy5wYWdlRG93bigpKSBldmVudC5zdG9wKCk7CiAgICAgIH0KICAgICAgZWxzZSBpZiAoKGNvZGUgPT0gMjE5IHx8IGNvZGUgPT0gMjIxKSAmJiBldmVudC5jdHJsS2V5ICYmICFldmVudC5hbHRLZXkpIHsgLy8gWywgXQogICAgICAgIHRoaXMuaGlnaGxpZ2h0UGFyZW5zKGV2ZW50LnNoaWZ0S2V5LCB0cnVlKTsKICAgICAgICBldmVudC5zdG9wKCk7CiAgICAgIH0KICAgICAgZWxzZSBpZiAoZXZlbnQubWV0YUtleSAmJiAhZXZlbnQuc2hpZnRLZXkgJiYgKGNvZGUgPT0gMzcgfHwgY29kZSA9PSAzOSkpIHsgLy8gTWV0YS1sZWZ0L3JpZ2h0CiAgICAgICAgdmFyIGN1cnNvciA9IHNlbGVjdC5zZWxlY3Rpb25Ub3BOb2RlKHRoaXMuY29udGFpbmVyKTsKICAgICAgICBpZiAoY3Vyc29yID09PSBmYWxzZSB8fCAhdGhpcy5jb250YWluZXIuZmlyc3RDaGlsZCkgcmV0dXJuOwoKICAgICAgICBpZiAoY29kZSA9PSAzNykgc2VsZWN0LmZvY3VzQWZ0ZXJOb2RlKHN0YXJ0T2ZMaW5lKGN1cnNvciksIHRoaXMuY29udGFpbmVyKTsKICAgICAgICBlbHNlIHsKICAgICAgICAgIHZhciBlbmQgPSBlbmRPZkxpbmUoY3Vyc29yLCB0aGlzLmNvbnRhaW5lcik7CiAgICAgICAgICBzZWxlY3QuZm9jdXNBZnRlck5vZGUoZW5kID8gZW5kLnByZXZpb3VzU2libGluZyA6IHRoaXMuY29udGFpbmVyLmxhc3RDaGlsZCwgdGhpcy5jb250YWluZXIpOwogICAgICAgIH0KICAgICAgICBldmVudC5zdG9wKCk7CiAgICAgIH0KICAgICAgZWxzZSBpZiAoKGV2ZW50LmN0cmxLZXkgfHwgZXZlbnQubWV0YUtleSkgJiYgIWV2ZW50LmFsdEtleSkgewogICAgICAgIGlmICgoZXZlbnQuc2hpZnRLZXkgJiYgY29kZSA9PSA5MCkgfHwgY29kZSA9PSA4OSkgeyAvLyBzaGlmdC1aLCBZCiAgICAgICAgICBzZWxlY3Quc2Nyb2xsVG9Ob2RlKHRoaXMuaGlzdG9yeS5yZWRvKCkpOwogICAgICAgICAgZXZlbnQuc3RvcCgpOwogICAgICAgIH0KICAgICAgICBlbHNlIGlmIChjb2RlID09IDkwIHx8IChzYWZhcmkgJiYgY29kZSA9PSA4KSkgeyAvLyBaLCBiYWNrc3BhY2UKICAgICAgICAgIHNlbGVjdC5zY3JvbGxUb05vZGUodGhpcy5oaXN0b3J5LnVuZG8oKSk7CiAgICAgICAgICBldmVudC5zdG9wKCk7CiAgICAgICAgfQogICAgICAgIGVsc2UgaWYgKGNvZGUgPT0gODMgJiYgdGhpcy5vcHRpb25zLnNhdmVGdW5jdGlvbikgeyAvLyBTCiAgICAgICAgICB0aGlzLm9wdGlvbnMuc2F2ZUZ1bmN0aW9uKCk7CiAgICAgICAgICBldmVudC5zdG9wKCk7CiAgICAgICAgfQogICAgICAgIGVsc2UgaWYgKGNvZGUgPT0gODYgJiYgIW1hYykgeyAvLyBWCiAgICAgICAgICB0aGlzLnJlcm91dGVQYXN0ZUV2ZW50KCk7CiAgICAgICAgfQogICAgICB9CiAgICB9LAoKICAgIC8vIENoZWNrIGZvciBjaGFyYWN0ZXJzIHRoYXQgc2hvdWxkIHJlLWluZGVudCB0aGUgY3VycmVudCBsaW5lLAogICAgLy8gYW5kIHByZXZlbnQgT3BlcmEgZnJvbSBoYW5kbGluZyBlbnRlciBhbmQgdGFiIGFueXdheS4KICAgIGtleVByZXNzOiBmdW5jdGlvbihldmVudCkgewogICAgICB2YXIgZWxlY3RyaWMgPSB0aGlzLm9wdGlvbnMuZWxlY3RyaWNDaGFycyAmJiBFZGl0b3IuUGFyc2VyLmVsZWN0cmljQ2hhcnMsIHNlbGYgPSB0aGlzOwogICAgICAvLyBIYWNrIGZvciBPcGVyYSwgYW5kIEZpcmVmb3ggb24gT1MgWCwgaW4gd2hpY2ggc3RvcHBpbmcgYQogICAgICAvLyBrZXlkb3duIGV2ZW50IGRvZXMgbm90IHByZXZlbnQgdGhlIGFzc29jaWF0ZWQga2V5cHJlc3MgZXZlbnQKICAgICAgLy8gZnJvbSBoYXBwZW5pbmcsIHNvIHdlIGhhdmUgdG8gY2FuY2VsIGVudGVyIGFuZCB0YWIgYWdhaW4KICAgICAgLy8gaGVyZS4KICAgICAgaWYgKCh0aGlzLmZyb3plbiAmJiAoIXRoaXMua2V5RmlsdGVyIHx8IHRoaXMua2V5RmlsdGVyKGV2ZW50LmtleUNvZGUgfHwgZXZlbnQuY29kZSwgZXZlbnQpKSkgfHwKICAgICAgICAgIGV2ZW50LmNvZGUgPT0gMTMgfHwgKGV2ZW50LmNvZGUgPT0gOSAmJiB0aGlzLm9wdGlvbnMudGFiTW9kZSAhPSAiZGVmYXVsdCIpIHx8CiAgICAgICAgICAoZXZlbnQuY29kZSA9PSAzMiAmJiBldmVudC5zaGlmdEtleSAmJiB0aGlzLm9wdGlvbnMudGFiTW9kZSA9PSAiZGVmYXVsdCIpKQogICAgICAgIGV2ZW50LnN0b3AoKTsKICAgICAgZWxzZSBpZiAobWFjICYmIChldmVudC5jdHJsS2V5IHx8IGV2ZW50Lm1ldGFLZXkpICYmIGV2ZW50LmNoYXJhY3RlciA9PSAidiIpIHsKICAgICAgICB0aGlzLnJlcm91dGVQYXN0ZUV2ZW50KCk7CiAgICAgIH0KICAgICAgZWxzZSBpZiAoZWxlY3RyaWMgJiYgZWxlY3RyaWMuaW5kZXhPZihldmVudC5jaGFyYWN0ZXIpICE9IC0xKQogICAgICAgIHRoaXMucGFyZW50LnNldFRpbWVvdXQoZnVuY3Rpb24oKXtzZWxmLmluZGVudEF0Q3Vyc29yKG51bGwpO30sIDApOwogICAgICAvLyBXb3JrIGFyb3VuZCBhIGJ1ZyB3aGVyZSBwcmVzc2luZyBiYWNrc3BhY2UgYXQgdGhlIGVuZCBvZiBhCiAgICAgIC8vIGxpbmUsIG9yIGRlbGV0ZSBhdCB0aGUgc3RhcnQsIG9mdGVuIGNhdXNlcyB0aGUgY3Vyc29yIHRvIGp1bXAKICAgICAgLy8gdG8gdGhlIHN0YXJ0IG9mIHRoZSBsaW5lIGluIE9wZXJhIDEwLjYwLgogICAgICBlbHNlIGlmIChicm9rZW5PcGVyYSkgewogICAgICAgIGlmIChldmVudC5jb2RlID09IDgpIHsgLy8gYmFja3NwYWNlCiAgICAgICAgICB2YXIgc2VsID0gc2VsZWN0LnNlbGVjdGlvblRvcE5vZGUodGhpcy5jb250YWluZXIpLCBzZWxmID0gdGhpcywKICAgICAgICAgICAgICBuZXh0ID0gc2VsID8gc2VsLm5leHRTaWJsaW5nIDogdGhpcy5jb250YWluZXIuZmlyc3RDaGlsZDsKICAgICAgICAgIGlmIChzZWwgIT09IGZhbHNlICYmIG5leHQgJiYgaXNCUihuZXh0KSkKICAgICAgICAgICAgdGhpcy5wYXJlbnQuc2V0VGltZW91dChmdW5jdGlvbigpewogICAgICAgICAgICAgIGlmIChzZWxlY3Quc2VsZWN0aW9uVG9wTm9kZShzZWxmLmNvbnRhaW5lcikgPT0gbmV4dCkKICAgICAgICAgICAgICAgIHNlbGVjdC5mb2N1c0FmdGVyTm9kZShuZXh0LnByZXZpb3VzU2libGluZywgc2VsZi5jb250YWluZXIpOwogICAgICAgICAgICB9LCAyMCk7CiAgICAgICAgfQogICAgICAgIGVsc2UgaWYgKGV2ZW50LmNvZGUgPT0gNDYpIHsgLy8gZGVsZXRlCiAgICAgICAgICB2YXIgc2VsID0gc2VsZWN0LnNlbGVjdGlvblRvcE5vZGUodGhpcy5jb250YWluZXIpLCBzZWxmID0gdGhpczsKICAgICAgICAgIGlmIChzZWwgJiYgaXNCUihzZWwpKSB7CiAgICAgICAgICAgIHRoaXMucGFyZW50LnNldFRpbWVvdXQoZnVuY3Rpb24oKXsKICAgICAgICAgICAgICBpZiAoc2VsZWN0LnNlbGVjdGlvblRvcE5vZGUoc2VsZi5jb250YWluZXIpICE9IHNlbCkKICAgICAgICAgICAgICAgIHNlbGVjdC5mb2N1c0FmdGVyTm9kZShzZWwsIHNlbGYuY29udGFpbmVyKTsKICAgICAgICAgICAgfSwgMjApOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfQogICAgICAvLyBJbiA1MzMuKiBXZWJLaXQgdmVyc2lvbnMsIHdoZW4gdGhlIGRvY3VtZW50IGlzIGJpZywgdHlwaW5nCiAgICAgIC8vIHNvbWV0aGluZyBhdCB0aGUgZW5kIG9mIGEgbGluZSBjYXVzZXMgdGhlIGJyb3dzZXIgdG8gZG8gc29tZQogICAgICAvLyBraW5kIG9mIHN0dXBpZCBoZWF2eSBvcGVyYXRpb24sIGNyZWF0aW5nIGRlbGF5cyBvZiBzZXZlcmFsCiAgICAgIC8vIHNlY29uZHMgYmVmb3JlIHRoZSB0eXBlZCBjaGFyYWN0ZXJzIGFwcGVhci4gVGhpcyB2ZXJ5IGNydWRlCiAgICAgIC8vIGhhY2sgaW5zZXJ0cyBhIHRlbXBvcmFyeSB6ZXJvLXdpZHRoIHNwYWNlIGFmdGVyIHRoZSBjdXJzb3IgdG8KICAgICAgLy8gbWFrZSBpdCBub3QgYmUgYXQgdGhlIGVuZCBvZiB0aGUgbGluZS4KICAgICAgZWxzZSBpZiAoc2xvd1dlYmtpdCkgewogICAgICAgIHZhciBzZWwgPSBzZWxlY3Quc2VsZWN0aW9uVG9wTm9kZSh0aGlzLmNvbnRhaW5lciksCiAgICAgICAgICAgIG5leHQgPSBzZWwgPyBzZWwubmV4dFNpYmxpbmcgOiB0aGlzLmNvbnRhaW5lci5maXJzdENoaWxkOwogICAgICAgIC8vIERvZXNuJ3Qgd29yayBvbiBlbXB0eSBsaW5lcywgZm9yIHNvbWUgcmVhc29uIHRob3NlIGFsd2F5cwogICAgICAgIC8vIHRyaWdnZXIgdGhlIGRlbGF5LgogICAgICAgIGlmIChzZWwgJiYgbmV4dCAmJiBpc0JSKG5leHQpICYmICFpc0JSKHNlbCkpIHsKICAgICAgICAgIHZhciBjaGVhdCA9IGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKCJcdTIwMGIiKTsKICAgICAgICAgIHRoaXMuY29udGFpbmVyLmluc2VydEJlZm9yZShjaGVhdCwgbmV4dCk7CiAgICAgICAgICB0aGlzLnBhcmVudC5zZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewogICAgICAgICAgICBpZiAoY2hlYXQubm9kZVZhbHVlID09ICJcdTIwMGIiKSByZW1vdmVFbGVtZW50KGNoZWF0KTsKICAgICAgICAgICAgZWxzZSBjaGVhdC5ub2RlVmFsdWUgPSBjaGVhdC5ub2RlVmFsdWUucmVwbGFjZSgiXHUyMDBiIiwgIiIpOwogICAgICAgICAgfSwgMjApOwogICAgICAgIH0KICAgICAgfQogICAgfSwKCiAgICAvLyBNYXJrIHRoZSBub2RlIGF0IHRoZSBjdXJzb3IgZGlydHkgd2hlbiBhIG5vbi1zYWZlIGtleSBpcwogICAgLy8gcmVsZWFzZWQuCiAgICBrZXlVcDogZnVuY3Rpb24oZXZlbnQpIHsKICAgICAgdGhpcy5jdXJzb3JBY3Rpdml0eShpc1NhZmVLZXkoZXZlbnQua2V5Q29kZSkpOwogICAgfSwKCiAgICAvLyBJbmRlbnQgdGhlIGxpbmUgZm9sbG93aW5nIGEgZ2l2ZW4gPGJyPiwgb3IgbnVsbCBmb3IgdGhlIGZpcnN0CiAgICAvLyBsaW5lLiBJZiBnaXZlbiBhIDxicj4gZWxlbWVudCwgdGhpcyBtdXN0IGhhdmUgYmVlbiBoaWdobGlnaHRlZAogICAgLy8gc28gdGhhdCBpdCBoYXMgYW4gaW5kZW50YXRpb24gbWV0aG9kLiBSZXR1cm5zIHRoZSB3aGl0ZXNwYWNlCiAgICAvLyBlbGVtZW50IHRoYXQgaGFzIGJlZW4gbW9kaWZpZWQgb3IgY3JlYXRlZCAoaWYgYW55KS4KICAgIGluZGVudExpbmVBZnRlcjogZnVuY3Rpb24oc3RhcnQsIGRpcmVjdGlvbikgewogICAgICBmdW5jdGlvbiB3aGl0ZVNwYWNlQWZ0ZXIobm9kZSkgewogICAgICAgIHZhciB3cyA9IG5vZGUgPyBub2RlLm5leHRTaWJsaW5nIDogc2VsZi5jb250YWluZXIuZmlyc3RDaGlsZDsKICAgICAgICBpZiAoIXdzIHx8ICFoYXNDbGFzcyh3cywgIndoaXRlc3BhY2UiKSkgcmV0dXJuIG51bGw7CiAgICAgICAgcmV0dXJuIHdzOwogICAgICB9CgogICAgICAvLyB3aGl0ZVNwYWNlIGlzIHRoZSB3aGl0ZXNwYWNlIHNwYW4gYXQgdGhlIHN0YXJ0IG9mIHRoZSBsaW5lLAogICAgICAvLyBvciBudWxsIGlmIHRoZXJlIGlzIG5vIHN1Y2ggbm9kZS4KICAgICAgdmFyIHNlbGYgPSB0aGlzLCB3aGl0ZVNwYWNlID0gd2hpdGVTcGFjZUFmdGVyKHN0YXJ0KTsKICAgICAgdmFyIG5ld0luZGVudCA9IDAsIGN1ckluZGVudCA9IHdoaXRlU3BhY2UgPyB3aGl0ZVNwYWNlLmN1cnJlbnRUZXh0Lmxlbmd0aCA6IDA7CgogICAgICBpZiAoZGlyZWN0aW9uID09ICJrZWVwIikgewogICAgICAgIGlmIChzdGFydCkgewogICAgICAgICAgdmFyIHByZXZXUyA9IHdoaXRlU3BhY2VBZnRlcihzdGFydE9mTGluZShzdGFydC5wcmV2aW91c1NpYmxpbmcpKQogICAgICAgICAgaWYgKHByZXZXUykgbmV3SW5kZW50ID0gcHJldldTLmN1cnJlbnRUZXh0Lmxlbmd0aDsKICAgICAgICB9CiAgICAgIH0KICAgICAgZWxzZSB7CiAgICAgICAgLy8gU29tZXRpbWVzIHRoZSBzdGFydCBvZiB0aGUgbGluZSBjYW4gaW5mbHVlbmNlIHRoZSBjb3JyZWN0CiAgICAgICAgLy8gaW5kZW50YXRpb24sIHNvIHdlIHJldHJpZXZlIGl0LgogICAgICAgIHZhciBmaXJzdFRleHQgPSB3aGl0ZVNwYWNlID8gd2hpdGVTcGFjZS5uZXh0U2libGluZyA6IChzdGFydCA/IHN0YXJ0Lm5leHRTaWJsaW5nIDogdGhpcy5jb250YWluZXIuZmlyc3RDaGlsZCk7CiAgICAgICAgdmFyIG5leHRDaGFycyA9IChzdGFydCAmJiBmaXJzdFRleHQgJiYgZmlyc3RUZXh0LmN1cnJlbnRUZXh0KSA/IGZpcnN0VGV4dC5jdXJyZW50VGV4dCA6ICIiOwoKICAgICAgICAvLyBBc2sgdGhlIGxleGljYWwgY29udGV4dCBmb3IgdGhlIGNvcnJlY3QgaW5kZW50YXRpb24sIGFuZAogICAgICAgIC8vIGNvbXB1dGUgaG93IG11Y2ggdGhpcyBkaWZmZXJzIGZyb20gdGhlIGN1cnJlbnQgaW5kZW50YXRpb24uCiAgICAgICAgaWYgKGRpcmVjdGlvbiAhPSBudWxsICYmIHRoaXMub3B0aW9ucy50YWJNb2RlID09ICJzaGlmdCIpCiAgICAgICAgICBuZXdJbmRlbnQgPSBkaXJlY3Rpb24gPyBjdXJJbmRlbnQgKyBpbmRlbnRVbml0IDogTWF0aC5tYXgoMCwgY3VySW5kZW50IC0gaW5kZW50VW5pdCkKICAgICAgICBlbHNlIGlmIChzdGFydCkKICAgICAgICAgIG5ld0luZGVudCA9IHN0YXJ0LmluZGVudGF0aW9uKG5leHRDaGFycywgY3VySW5kZW50LCBkaXJlY3Rpb24pOwogICAgICAgIGVsc2UgaWYgKEVkaXRvci5QYXJzZXIuZmlyc3RJbmRlbnRhdGlvbikKICAgICAgICAgIG5ld0luZGVudCA9IEVkaXRvci5QYXJzZXIuZmlyc3RJbmRlbnRhdGlvbihuZXh0Q2hhcnMsIGN1ckluZGVudCwgZGlyZWN0aW9uKTsKICAgICAgfQogICAgICAKICAgICAgdmFyIGluZGVudERpZmYgPSBuZXdJbmRlbnQgLSBjdXJJbmRlbnQ7CgogICAgICAvLyBJZiB0aGVyZSBpcyB0b28gbXVjaCwgdGhpcyBpcyBqdXN0IGEgbWF0dGVyIG9mIHNocmlua2luZyBhIHNwYW4uCiAgICAgIGlmIChpbmRlbnREaWZmIDwgMCkgewogICAgICAgIGlmIChuZXdJbmRlbnQgPT0gMCkgewogICAgICAgICAgaWYgKGZpcnN0VGV4dCkgc2VsZWN0LnNuYXBzaG90TW92ZSh3aGl0ZVNwYWNlLmZpcnN0Q2hpbGQsIGZpcnN0VGV4dC5maXJzdENoaWxkIHx8IGZpcnN0VGV4dCwgMCk7CiAgICAgICAgICByZW1vdmVFbGVtZW50KHdoaXRlU3BhY2UpOwogICAgICAgICAgd2hpdGVTcGFjZSA9IG51bGw7CiAgICAgICAgfQogICAgICAgIGVsc2UgewogICAgICAgICAgc2VsZWN0LnNuYXBzaG90TW92ZSh3aGl0ZVNwYWNlLmZpcnN0Q2hpbGQsIHdoaXRlU3BhY2UuZmlyc3RDaGlsZCwgaW5kZW50RGlmZiwgdHJ1ZSk7CiAgICAgICAgICB3aGl0ZVNwYWNlLmN1cnJlbnRUZXh0ID0gbWFrZVdoaXRlU3BhY2UobmV3SW5kZW50KTsKICAgICAgICAgIHdoaXRlU3BhY2UuZmlyc3RDaGlsZC5ub2RlVmFsdWUgPSB3aGl0ZVNwYWNlLmN1cnJlbnRUZXh0OwogICAgICAgIH0KICAgICAgfQogICAgICAvLyBOb3QgZW5vdWdoLi4uCiAgICAgIGVsc2UgaWYgKGluZGVudERpZmYgPiAwKSB7CiAgICAgICAgLy8gSWYgdGhlcmUgaXMgd2hpdGVzcGFjZSwgd2UgZ3JvdyBpdC4KICAgICAgICBpZiAod2hpdGVTcGFjZSkgewogICAgICAgICAgd2hpdGVTcGFjZS5jdXJyZW50VGV4dCA9IG1ha2VXaGl0ZVNwYWNlKG5ld0luZGVudCk7CiAgICAgICAgICB3aGl0ZVNwYWNlLmZpcnN0Q2hpbGQubm9kZVZhbHVlID0gd2hpdGVTcGFjZS5jdXJyZW50VGV4dDsKICAgICAgICAgIHNlbGVjdC5zbmFwc2hvdE1vdmUod2hpdGVTcGFjZS5maXJzdENoaWxkLCB3aGl0ZVNwYWNlLmZpcnN0Q2hpbGQsIGluZGVudERpZmYsIHRydWUpOwogICAgICAgIH0KICAgICAgICAvLyBPdGhlcndpc2UsIHdlIGhhdmUgdG8gYWRkIGEgbmV3IHdoaXRlc3BhY2Ugbm9kZS4KICAgICAgICBlbHNlIHsKICAgICAgICAgIHdoaXRlU3BhY2UgPSBtYWtlUGFydFNwYW4obWFrZVdoaXRlU3BhY2UobmV3SW5kZW50KSk7CiAgICAgICAgICB3aGl0ZVNwYWNlLmNsYXNzTmFtZSA9ICJ3aGl0ZXNwYWNlIjsKICAgICAgICAgIGlmIChzdGFydCkgaW5zZXJ0QWZ0ZXIod2hpdGVTcGFjZSwgc3RhcnQpOwogICAgICAgICAgZWxzZSB0aGlzLmNvbnRhaW5lci5pbnNlcnRCZWZvcmUod2hpdGVTcGFjZSwgdGhpcy5jb250YWluZXIuZmlyc3RDaGlsZCk7CiAgICAgICAgICBzZWxlY3Quc25hcHNob3RNb3ZlKGZpcnN0VGV4dCAmJiAoZmlyc3RUZXh0LmZpcnN0Q2hpbGQgfHwgZmlyc3RUZXh0KSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2hpdGVTcGFjZS5maXJzdENoaWxkLCBuZXdJbmRlbnQsIGZhbHNlLCB0cnVlKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgLy8gTWFrZSBzdXJlIGN1cnNvciBlbmRzIHVwIGFmdGVyIHRoZSB3aGl0ZXNwYWNlCiAgICAgIGVsc2UgaWYgKHdoaXRlU3BhY2UpIHsKCXNlbGVjdC5zbmFwc2hvdE1vdmUod2hpdGVTcGFjZS5maXJzdENoaWxkLCB3aGl0ZVNwYWNlLmZpcnN0Q2hpbGQsIG5ld0luZGVudCwgZmFsc2UpOwogICAgICB9CiAgICAgIGlmIChpbmRlbnREaWZmICE9IDApIHRoaXMuYWRkRGlydHlOb2RlKHN0YXJ0KTsKICAgIH0sCgogICAgLy8gUmUtaGlnaGxpZ2h0IHRoZSBzZWxlY3RlZCBwYXJ0IG9mIHRoZSBkb2N1bWVudC4KICAgIGhpZ2hsaWdodEF0Q3Vyc29yOiBmdW5jdGlvbigpIHsKICAgICAgdmFyIHBvcyA9IHNlbGVjdC5zZWxlY3Rpb25Ub3BOb2RlKHRoaXMuY29udGFpbmVyLCB0cnVlKTsKICAgICAgdmFyIHRvID0gc2VsZWN0LnNlbGVjdGlvblRvcE5vZGUodGhpcy5jb250YWluZXIsIGZhbHNlKTsKICAgICAgaWYgKHBvcyA9PT0gZmFsc2UgfHwgdG8gPT09IGZhbHNlKSByZXR1cm4gZmFsc2U7CgogICAgICBzZWxlY3QubWFya1NlbGVjdGlvbigpOwogICAgICBpZiAodGhpcy5oaWdobGlnaHQocG9zLCBlbmRPZkxpbmUodG8sIHRoaXMuY29udGFpbmVyKSwgdHJ1ZSwgMjApID09PSBmYWxzZSkKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIHNlbGVjdC5zZWxlY3RNYXJrZWQoKTsKICAgICAgcmV0dXJuIHRydWU7CiAgICB9LAoKICAgIC8vIFdoZW4gdGFiIGlzIHByZXNzZWQgd2l0aCB0ZXh0IHNlbGVjdGVkLCB0aGUgd2hvbGUgc2VsZWN0aW9uIGlzCiAgICAvLyByZS1pbmRlbnRlZCwgd2hlbiBub3RoaW5nIGlzIHNlbGVjdGVkLCB0aGUgbGluZSB3aXRoIHRoZSBjdXJzb3IKICAgIC8vIGlzIHJlLWluZGVudGVkLgogICAgaGFuZGxlVGFiOiBmdW5jdGlvbihkaXJlY3Rpb24pIHsKICAgICAgaWYgKHRoaXMub3B0aW9ucy50YWJNb2RlID09ICJzcGFjZXMiKQogICAgICAgIHNlbGVjdC5pbnNlcnRUYWJBdEN1cnNvcigpOwogICAgICBlbHNlCiAgICAgICAgdGhpcy5yZWluZGVudFNlbGVjdGlvbihkaXJlY3Rpb24pOwogICAgfSwKCiAgICAvLyBDdXN0b20gaG9tZSBiZWhhdmlvdXIgdGhhdCBkb2Vzbid0IGxhbmQgdGhlIGN1cnNvciBpbiBmcm9udCBvZgogICAgLy8gbGVhZGluZyB3aGl0ZXNwYWNlIHVubGVzcyBwcmVzc2VkIHR3aWNlLgogICAgaG9tZTogZnVuY3Rpb24oKSB7CiAgICAgIHZhciBjdXIgPSBzZWxlY3Quc2VsZWN0aW9uVG9wTm9kZSh0aGlzLmNvbnRhaW5lciwgdHJ1ZSksIHN0YXJ0ID0gY3VyOwogICAgICBpZiAoY3VyID09PSBmYWxzZSB8fCAhKCFjdXIgfHwgY3VyLmlzUGFydCB8fCBpc0JSKGN1cikpIHx8ICF0aGlzLmNvbnRhaW5lci5maXJzdENoaWxkKQogICAgICAgIHJldHVybiBmYWxzZTsKCiAgICAgIHdoaWxlIChjdXIgJiYgIWlzQlIoY3VyKSkgY3VyID0gY3VyLnByZXZpb3VzU2libGluZzsKICAgICAgdmFyIG5leHQgPSBjdXIgPyBjdXIubmV4dFNpYmxpbmcgOiB0aGlzLmNvbnRhaW5lci5maXJzdENoaWxkOwogICAgICBpZiAobmV4dCAmJiBuZXh0ICE9IHN0YXJ0ICYmIG5leHQuaXNQYXJ0ICYmIGhhc0NsYXNzKG5leHQsICJ3aGl0ZXNwYWNlIikpCiAgICAgICAgc2VsZWN0LmZvY3VzQWZ0ZXJOb2RlKG5leHQsIHRoaXMuY29udGFpbmVyKTsKICAgICAgZWxzZQogICAgICAgIHNlbGVjdC5mb2N1c0FmdGVyTm9kZShjdXIsIHRoaXMuY29udGFpbmVyKTsKCiAgICAgIHNlbGVjdC5zY3JvbGxUb0N1cnNvcih0aGlzLmNvbnRhaW5lcik7CiAgICAgIHJldHVybiB0cnVlOwogICAgfSwKCiAgICAvLyBTb21lIGJyb3dzZXJzIChPcGVyYSkgZG9uJ3QgbWFuYWdlIHRvIGhhbmRsZSB0aGUgZW5kIGtleQogICAgLy8gcHJvcGVybHkgaW4gdGhlIGZhY2Ugb2YgdmVydGljYWwgc2Nyb2xsaW5nLgogICAgZW5kOiBmdW5jdGlvbigpIHsKICAgICAgdmFyIGN1ciA9IHNlbGVjdC5zZWxlY3Rpb25Ub3BOb2RlKHRoaXMuY29udGFpbmVyLCB0cnVlKTsKICAgICAgaWYgKGN1ciA9PT0gZmFsc2UpIHJldHVybiBmYWxzZTsKICAgICAgY3VyID0gZW5kT2ZMaW5lKGN1ciwgdGhpcy5jb250YWluZXIpOwogICAgICBpZiAoIWN1cikgcmV0dXJuIGZhbHNlOwogICAgICBzZWxlY3QuZm9jdXNBZnRlck5vZGUoY3VyLnByZXZpb3VzU2libGluZywgdGhpcy5jb250YWluZXIpOwogICAgICBzZWxlY3Quc2Nyb2xsVG9DdXJzb3IodGhpcy5jb250YWluZXIpOwogICAgICByZXR1cm4gdHJ1ZTsKICAgIH0sCgogICAgcGFnZVVwOiBmdW5jdGlvbigpIHsKICAgICAgdmFyIGxpbmUgPSB0aGlzLmN1cnNvclBvc2l0aW9uKCkubGluZSwgc2Nyb2xsQW1vdW50ID0gdGhpcy52aXNpYmxlTGluZUNvdW50KCk7CiAgICAgIGlmIChsaW5lID09PSBmYWxzZSB8fCBzY3JvbGxBbW91bnQgPT09IGZhbHNlKSByZXR1cm4gZmFsc2U7CiAgICAgIC8vIFRyeSB0byBrZWVwIG9uZSBsaW5lIG9uIHRoZSBzY3JlZW4uCiAgICAgIHNjcm9sbEFtb3VudCAtPSAyOwogICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHNjcm9sbEFtb3VudDsgaSsrKSB7CiAgICAgICAgbGluZSA9IHRoaXMucHJldkxpbmUobGluZSk7CiAgICAgICAgaWYgKGxpbmUgPT09IGZhbHNlKSBicmVhazsKICAgICAgfQogICAgICBpZiAoaSA9PSAwKSByZXR1cm4gZmFsc2U7IC8vIEFscmVhZHkgYXQgZmlyc3QgbGluZQogICAgICBzZWxlY3Quc2V0Q3Vyc29yUG9zKHRoaXMuY29udGFpbmVyLCB7bm9kZTogbGluZSwgb2Zmc2V0OiAwfSk7CiAgICAgIHNlbGVjdC5zY3JvbGxUb0N1cnNvcih0aGlzLmNvbnRhaW5lcik7CiAgICAgIHJldHVybiB0cnVlOwogICAgfSwKCiAgICBwYWdlRG93bjogZnVuY3Rpb24oKSB7CiAgICAgIHZhciBsaW5lID0gdGhpcy5jdXJzb3JQb3NpdGlvbigpLmxpbmUsIHNjcm9sbEFtb3VudCA9IHRoaXMudmlzaWJsZUxpbmVDb3VudCgpOwogICAgICBpZiAobGluZSA9PT0gZmFsc2UgfHwgc2Nyb2xsQW1vdW50ID09PSBmYWxzZSkgcmV0dXJuIGZhbHNlOwogICAgICAvLyBUcnkgdG8gbW92ZSB0byB0aGUgbGFzdCBsaW5lIG9mIHRoZSBjdXJyZW50IHBhZ2UuCiAgICAgIHNjcm9sbEFtb3VudCAtPSAyOwogICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHNjcm9sbEFtb3VudDsgaSsrKSB7CiAgICAgICAgdmFyIG5leHRMaW5lID0gdGhpcy5uZXh0TGluZShsaW5lKTsKICAgICAgICBpZiAobmV4dExpbmUgPT09IGZhbHNlKSBicmVhazsKICAgICAgICBsaW5lID0gbmV4dExpbmU7CiAgICAgIH0KICAgICAgaWYgKGkgPT0gMCkgcmV0dXJuIGZhbHNlOyAvLyBBbHJlYWR5IGF0IGxhc3QgbGluZQogICAgICBzZWxlY3Quc2V0Q3Vyc29yUG9zKHRoaXMuY29udGFpbmVyLCB7bm9kZTogbGluZSwgb2Zmc2V0OiAwfSk7CiAgICAgIHNlbGVjdC5zY3JvbGxUb0N1cnNvcih0aGlzLmNvbnRhaW5lcik7CiAgICAgIHJldHVybiB0cnVlOwogICAgfSwKCiAgICAvLyBEZWxheSAob3IgaW5pdGlhdGUpIHRoZSBuZXh0IHBhcmVuIGhpZ2hsaWdodCBldmVudC4KICAgIHNjaGVkdWxlUGFyZW5IaWdobGlnaHQ6IGZ1bmN0aW9uKCkgewogICAgICBpZiAodGhpcy5wYXJlbkV2ZW50KSB0aGlzLnBhcmVudC5jbGVhclRpbWVvdXQodGhpcy5wYXJlbkV2ZW50KTsKICAgICAgdmFyIHNlbGYgPSB0aGlzOwogICAgICB0aGlzLnBhcmVuRXZlbnQgPSB0aGlzLnBhcmVudC5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7c2VsZi5oaWdobGlnaHRQYXJlbnMoKTt9LCAzMDApOwogICAgfSwKCiAgICAvLyBUYWtlIHRoZSB0b2tlbiBiZWZvcmUgdGhlIGN1cnNvci4gSWYgaXQgY29udGFpbnMgYSBjaGFyYWN0ZXIgaW4KICAgIC8vICcoKVtde30nLCBzZWFyY2ggZm9yIHRoZSBtYXRjaGluZyBwYXJlbi9icmFjZS9icmFja2V0LCBhbmQKICAgIC8vIGhpZ2hsaWdodCB0aGVtIGluIGdyZWVuIGZvciBhIG1vbWVudCwgb3IgcmVkIGlmIG5vIHByb3BlciBtYXRjaAogICAgLy8gd2FzIGZvdW5kLgogICAgaGlnaGxpZ2h0UGFyZW5zOiBmdW5jdGlvbihqdW1wLCBmcm9tS2V5KSB7CiAgICAgIHZhciBzZWxmID0gdGhpczsKICAgICAgLy8gZ2l2ZSB0aGUgcmVsZXZhbnQgbm9kZXMgYSBjb2xvdXIuCiAgICAgIGZ1bmN0aW9uIGhpZ2hsaWdodChub2RlLCBvaykgewogICAgICAgIGlmICghbm9kZSkgcmV0dXJuOwogICAgICAgIGlmIChzZWxmLm9wdGlvbnMubWFya1BhcmVuKSB7CiAgICAgICAgICBzZWxmLm9wdGlvbnMubWFya1BhcmVuKG5vZGUsIG9rKTsKICAgICAgICB9CiAgICAgICAgZWxzZSB7CiAgICAgICAgICBub2RlLnN0eWxlLmZvbnRXZWlnaHQgPSAiYm9sZCI7CiAgICAgICAgICBub2RlLnN0eWxlLmNvbG9yID0gb2sgPyAiIzhGOCIgOiAiI0Y4OCI7CiAgICAgICAgfQogICAgICB9CiAgICAgIGZ1bmN0aW9uIHVuaGlnaGxpZ2h0KG5vZGUpIHsKICAgICAgICBpZiAoIW5vZGUpIHJldHVybjsKICAgICAgICBpZiAoc2VsZi5vcHRpb25zLnVubWFya1BhcmVuKSB7CiAgICAgICAgICBzZWxmLm9wdGlvbnMudW5tYXJrUGFyZW4obm9kZSk7CiAgICAgICAgfQogICAgICAgIGVsc2UgewogICAgICAgICAgbm9kZS5zdHlsZS5mb250V2VpZ2h0ID0gIiI7CiAgICAgICAgICBub2RlLnN0eWxlLmNvbG9yID0gIiI7CiAgICAgICAgfQogICAgICB9CiAgICAgIGlmICghZnJvbUtleSAmJiBzZWxmLmhpZ2hsaWdodGVkKSB7CiAgICAgICAgdW5oaWdobGlnaHQoc2VsZi5oaWdobGlnaHRlZFswXSk7CiAgICAgICAgdW5oaWdobGlnaHQoc2VsZi5oaWdobGlnaHRlZFsxXSk7CiAgICAgIH0KCiAgICAgIGlmICghd2luZG93LnBhcmVudCB8fCAhd2luZG93LnNlbGVjdCkgcmV0dXJuOwogICAgICAvLyBDbGVhciB0aGUgZXZlbnQgcHJvcGVydHkuCiAgICAgIGlmICh0aGlzLnBhcmVuRXZlbnQpIHRoaXMucGFyZW50LmNsZWFyVGltZW91dCh0aGlzLnBhcmVuRXZlbnQpOwogICAgICB0aGlzLnBhcmVuRXZlbnQgPSBudWxsOwoKICAgICAgLy8gRXh0cmFjdCBhICdwYXJlbicgZnJvbSBhIHBpZWNlIG9mIHRleHQuCiAgICAgIGZ1bmN0aW9uIHBhcmVuKG5vZGUpIHsKICAgICAgICBpZiAobm9kZS5jdXJyZW50VGV4dCkgewogICAgICAgICAgdmFyIG1hdGNoID0gbm9kZS5jdXJyZW50VGV4dC5tYXRjaCgvXltcc1x1MDBhMF0qKFtcKFwpXFtcXXt9XSlbXHNcdTAwYTBdKiQvKTsKICAgICAgICAgIHJldHVybiBtYXRjaCAmJiBtYXRjaFsxXTsKICAgICAgICB9CiAgICAgIH0KICAgICAgLy8gRGV0ZXJtaW5lIHRoZSBkaXJlY3Rpb24gYSBwYXJlbiBpcyBmYWNpbmcuCiAgICAgIGZ1bmN0aW9uIGZvcndhcmQoY2gpIHsKICAgICAgICByZXR1cm4gL1tcKFxbXHtdLy50ZXN0KGNoKTsKICAgICAgfQoKICAgICAgdmFyIGNoLCBjdXJzb3IgPSBzZWxlY3Quc2VsZWN0aW9uVG9wTm9kZSh0aGlzLmNvbnRhaW5lciwgdHJ1ZSk7CiAgICAgIGlmICghY3Vyc29yIHx8ICF0aGlzLmhpZ2hsaWdodEF0Q3Vyc29yKCkpIHJldHVybjsKICAgICAgY3Vyc29yID0gc2VsZWN0LnNlbGVjdGlvblRvcE5vZGUodGhpcy5jb250YWluZXIsIHRydWUpOwogICAgICBpZiAoIShjdXJzb3IgJiYgKChjaCA9IHBhcmVuKGN1cnNvcikpIHx8IChjdXJzb3IgPSBjdXJzb3IubmV4dFNpYmxpbmcpICYmIChjaCA9IHBhcmVuKGN1cnNvcikpKSkpCiAgICAgICAgcmV0dXJuOwogICAgICAvLyBXZSBvbmx5IGxvb2sgZm9yIHRva2VucyB3aXRoIHRoZSBzYW1lIGNsYXNzTmFtZS4KICAgICAgdmFyIGNsYXNzTmFtZSA9IGN1cnNvci5jbGFzc05hbWUsIGRpciA9IGZvcndhcmQoY2gpLCBtYXRjaCA9IG1hdGNoaW5nW2NoXTsKCiAgICAgIC8vIFNpbmNlIHBhcnRzIG9mIHRoZSBkb2N1bWVudCBtaWdodCBub3QgaGF2ZSBiZWVuIHByb3Blcmx5CiAgICAgIC8vIGhpZ2hsaWdodGVkLCBhbmQgaXQgaXMgaGFyZCB0byBrbm93IGluIGFkdmFuY2Ugd2hpY2ggcGFydCB3ZQogICAgICAvLyBoYXZlIHRvIHNjYW4sIHdlIGp1c3QgdHJ5LCBhbmQgd2hlbiB3ZSBmaW5kIGRpcnR5IG5vZGVzIHdlCiAgICAgIC8vIGFib3J0LCBwYXJzZSB0aGVtLCBhbmQgcmUtdHJ5LgogICAgICBmdW5jdGlvbiB0cnlGaW5kTWF0Y2goKSB7CiAgICAgICAgdmFyIHN0YWNrID0gW10sIGNoLCBvayA9IHRydWU7CiAgICAgICAgZm9yICh2YXIgcnVubmVyID0gY3Vyc29yOyBydW5uZXI7IHJ1bm5lciA9IGRpciA/IHJ1bm5lci5uZXh0U2libGluZyA6IHJ1bm5lci5wcmV2aW91c1NpYmxpbmcpIHsKICAgICAgICAgIGlmIChydW5uZXIuY2xhc3NOYW1lID09IGNsYXNzTmFtZSAmJiBpc1NwYW4ocnVubmVyKSAmJiAoY2ggPSBwYXJlbihydW5uZXIpKSkgewogICAgICAgICAgICBpZiAoZm9yd2FyZChjaCkgPT0gZGlyKQogICAgICAgICAgICAgIHN0YWNrLnB1c2goY2gpOwogICAgICAgICAgICBlbHNlIGlmICghc3RhY2subGVuZ3RoKQogICAgICAgICAgICAgIG9rID0gZmFsc2U7CiAgICAgICAgICAgIGVsc2UgaWYgKHN0YWNrLnBvcCgpICE9IG1hdGNoaW5nW2NoXSkKICAgICAgICAgICAgICBvayA9IGZhbHNlOwogICAgICAgICAgICBpZiAoIXN0YWNrLmxlbmd0aCkgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgICBlbHNlIGlmIChydW5uZXIuZGlydHkgfHwgIWlzU3BhbihydW5uZXIpICYmICFpc0JSKHJ1bm5lcikpIHsKICAgICAgICAgICAgcmV0dXJuIHtub2RlOiBydW5uZXIsIHN0YXR1czogImRpcnR5In07CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiB7bm9kZTogcnVubmVyLCBzdGF0dXM6IHJ1bm5lciAmJiBva307CiAgICAgIH0KCiAgICAgIHdoaWxlICh0cnVlKSB7CiAgICAgICAgdmFyIGZvdW5kID0gdHJ5RmluZE1hdGNoKCk7CiAgICAgICAgaWYgKGZvdW5kLnN0YXR1cyA9PSAiZGlydHkiKSB7CiAgICAgICAgICB0aGlzLmhpZ2hsaWdodChmb3VuZC5ub2RlLCBlbmRPZkxpbmUoZm91bmQubm9kZSkpOwogICAgICAgICAgLy8gTmVlZGVkIGJlY2F1c2UgaW4gc29tZSBjb3JuZXIgY2FzZXMgYSBoaWdobGlnaHQgZG9lcyBub3QKICAgICAgICAgIC8vIHJlYWNoIGEgbm9kZS4KICAgICAgICAgIGZvdW5kLm5vZGUuZGlydHkgPSBmYWxzZTsKICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICBlbHNlIHsKICAgICAgICAgIGhpZ2hsaWdodChjdXJzb3IsIGZvdW5kLnN0YXR1cyk7CiAgICAgICAgICBoaWdobGlnaHQoZm91bmQubm9kZSwgZm91bmQuc3RhdHVzKTsKICAgICAgICAgIGlmIChmcm9tS2V5KQogICAgICAgICAgICBzZWxmLnBhcmVudC5zZXRUaW1lb3V0KGZ1bmN0aW9uKCkge3VuaGlnaGxpZ2h0KGN1cnNvcik7IHVuaGlnaGxpZ2h0KGZvdW5kLm5vZGUpO30sIDUwMCk7CiAgICAgICAgICBlbHNlCiAgICAgICAgICAgIHNlbGYuaGlnaGxpZ2h0ZWQgPSBbY3Vyc29yLCBmb3VuZC5ub2RlXTsKICAgICAgICAgIGlmIChqdW1wICYmIGZvdW5kLm5vZGUpCiAgICAgICAgICAgIHNlbGVjdC5mb2N1c0FmdGVyTm9kZShmb3VuZC5ub2RlLnByZXZpb3VzU2libGluZywgdGhpcy5jb250YWluZXIpOwogICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgICB9CiAgICB9LAoKICAgIC8vIEFkanVzdCB0aGUgYW1vdW50IG9mIHdoaXRlc3BhY2UgYXQgdGhlIHN0YXJ0IG9mIHRoZSBsaW5lIHRoYXQKICAgIC8vIHRoZSBjdXJzb3IgaXMgb24gc28gdGhhdCBpdCBpcyBpbmRlbnRlZCBwcm9wZXJseS4KICAgIGluZGVudEF0Q3Vyc29yOiBmdW5jdGlvbihkaXJlY3Rpb24pIHsKICAgICAgaWYgKCF0aGlzLmNvbnRhaW5lci5maXJzdENoaWxkKSByZXR1cm47CiAgICAgIC8vIFRoZSBsaW5lIGhhcyB0byBoYXZlIHVwLXRvLWRhdGUgbGV4aWNhbCBpbmZvcm1hdGlvbiwgc28gd2UKICAgICAgLy8gaGlnaGxpZ2h0IGl0IGZpcnN0LgogICAgICBpZiAoIXRoaXMuaGlnaGxpZ2h0QXRDdXJzb3IoKSkgcmV0dXJuOwogICAgICB2YXIgY3Vyc29yID0gc2VsZWN0LnNlbGVjdGlvblRvcE5vZGUodGhpcy5jb250YWluZXIsIGZhbHNlKTsKICAgICAgLy8gSWYgd2UgY291bGRuJ3QgZGV0ZXJtaW5lIHRoZSBwbGFjZSBvZiB0aGUgY3Vyc29yLAogICAgICAvLyB0aGVyZSdzIG5vdGhpbmcgdG8gaW5kZW50LgogICAgICBpZiAoY3Vyc29yID09PSBmYWxzZSkKICAgICAgICByZXR1cm47CiAgICAgIHNlbGVjdC5tYXJrU2VsZWN0aW9uKCk7CiAgICAgIHRoaXMuaW5kZW50TGluZUFmdGVyKHN0YXJ0T2ZMaW5lKGN1cnNvciksIGRpcmVjdGlvbik7CiAgICAgIHNlbGVjdC5zZWxlY3RNYXJrZWQoKTsKICAgIH0sCgogICAgLy8gSW5kZW50IGFsbCBsaW5lcyB3aG9zZSBzdGFydCBmYWxscyBpbnNpZGUgb2YgdGhlIGN1cnJlbnQKICAgIC8vIHNlbGVjdGlvbi4KICAgIGluZGVudFJlZ2lvbjogZnVuY3Rpb24oc3RhcnQsIGVuZCwgZGlyZWN0aW9uKSB7CiAgICAgIHZhciBjdXJyZW50ID0gKHN0YXJ0ID0gc3RhcnRPZkxpbmUoc3RhcnQpKSwgYmVmb3JlID0gc3RhcnQgJiYgc3RhcnRPZkxpbmUoc3RhcnQucHJldmlvdXNTaWJsaW5nKTsKICAgICAgaWYgKCFpc0JSKGVuZCkpIGVuZCA9IGVuZE9mTGluZShlbmQsIHRoaXMuY29udGFpbmVyKTsKICAgICAgdGhpcy5hZGREaXJ0eU5vZGUoc3RhcnQpOwoKICAgICAgZG8gewogICAgICAgIHZhciBuZXh0ID0gZW5kT2ZMaW5lKGN1cnJlbnQsIHRoaXMuY29udGFpbmVyKTsKICAgICAgICBpZiAoY3VycmVudCkgdGhpcy5oaWdobGlnaHQoYmVmb3JlLCBuZXh0LCB0cnVlKTsKICAgICAgICB0aGlzLmluZGVudExpbmVBZnRlcihjdXJyZW50LCBkaXJlY3Rpb24pOwogICAgICAgIGJlZm9yZSA9IGN1cnJlbnQ7CiAgICAgICAgY3VycmVudCA9IG5leHQ7CiAgICAgIH0gd2hpbGUgKGN1cnJlbnQgIT0gZW5kKTsKICAgICAgc2VsZWN0LnNldEN1cnNvclBvcyh0aGlzLmNvbnRhaW5lciwge25vZGU6IHN0YXJ0LCBvZmZzZXQ6IDB9LCB7bm9kZTogZW5kLCBvZmZzZXQ6IDB9KTsKICAgIH0sCgogICAgLy8gRmluZCB0aGUgbm9kZSB0aGF0IHRoZSBjdXJzb3IgaXMgaW4sIG1hcmsgaXQgYXMgZGlydHksIGFuZCBtYWtlCiAgICAvLyBzdXJlIGEgaGlnaGxpZ2h0IHBhc3MgaXMgc2NoZWR1bGVkLgogICAgY3Vyc29yQWN0aXZpdHk6IGZ1bmN0aW9uKHNhZmUpIHsKICAgICAgLy8gcGFnZWhpZGUgZXZlbnQgaGFjayBhYm92ZQogICAgICBpZiAodGhpcy51bmxvYWRlZCkgewogICAgICAgIHdpbmRvdy5kb2N1bWVudC5kZXNpZ25Nb2RlID0gIm9mZiI7CiAgICAgICAgd2luZG93LmRvY3VtZW50LmRlc2lnbk1vZGUgPSAib24iOwogICAgICAgIHRoaXMudW5sb2FkZWQgPSBmYWxzZTsKICAgICAgfQoKICAgICAgaWYgKGludGVybmV0RXhwbG9yZXIpIHsKICAgICAgICB0aGlzLmNvbnRhaW5lci5jcmVhdGVUZXh0UmFuZ2UoKS5leGVjQ29tbWFuZCgidW5saW5rIik7CiAgICAgICAgdGhpcy5zZWxlY3Rpb25TbmFwc2hvdCA9IHNlbGVjdC5nZXRCb29rbWFyayh0aGlzLmNvbnRhaW5lcik7CiAgICAgIH0KCiAgICAgIHZhciBhY3Rpdml0eSA9IHRoaXMub3B0aW9ucy5jdXJzb3JBY3Rpdml0eTsKICAgICAgaWYgKCFzYWZlIHx8IGFjdGl2aXR5KSB7CiAgICAgICAgdmFyIGN1cnNvciA9IHNlbGVjdC5zZWxlY3Rpb25Ub3BOb2RlKHRoaXMuY29udGFpbmVyLCBmYWxzZSk7CiAgICAgICAgaWYgKGN1cnNvciA9PT0gZmFsc2UgfHwgIXRoaXMuY29udGFpbmVyLmZpcnN0Q2hpbGQpIHJldHVybjsKICAgICAgICBjdXJzb3IgPSBjdXJzb3IgfHwgdGhpcy5jb250YWluZXIuZmlyc3RDaGlsZDsKICAgICAgICBpZiAoYWN0aXZpdHkpIGFjdGl2aXR5KGN1cnNvcik7CiAgICAgICAgaWYgKCFzYWZlKSB7CiAgICAgICAgICB0aGlzLnNjaGVkdWxlSGlnaGxpZ2h0KCk7CiAgICAgICAgICB0aGlzLmFkZERpcnR5Tm9kZShjdXJzb3IpOwogICAgICAgIH0KICAgICAgfQogICAgfSwKCiAgICByZXBhcnNlQnVmZmVyOiBmdW5jdGlvbigpIHsKICAgICAgZm9yRWFjaCh0aGlzLmNvbnRhaW5lci5jaGlsZE5vZGVzLCBmdW5jdGlvbihub2RlKSB7bm9kZS5kaXJ0eSA9IHRydWU7fSk7CiAgICAgIGlmICh0aGlzLmNvbnRhaW5lci5maXJzdENoaWxkKQogICAgICAgIHRoaXMuYWRkRGlydHlOb2RlKHRoaXMuY29udGFpbmVyLmZpcnN0Q2hpbGQpOwogICAgfSwKCiAgICAvLyBBZGQgYSBub2RlIHRvIHRoZSBzZXQgb2YgZGlydHkgbm9kZXMsIGlmIGl0IGlzbid0IGFscmVhZHkgaW4KICAgIC8vIHRoZXJlLgogICAgYWRkRGlydHlOb2RlOiBmdW5jdGlvbihub2RlKSB7CiAgICAgIG5vZGUgPSBub2RlIHx8IHRoaXMuY29udGFpbmVyLmZpcnN0Q2hpbGQ7CiAgICAgIGlmICghbm9kZSkgcmV0dXJuOwoKICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCB0aGlzLmRpcnR5Lmxlbmd0aDsgaSsrKQogICAgICAgIGlmICh0aGlzLmRpcnR5W2ldID09IG5vZGUpIHJldHVybjsKCiAgICAgIGlmIChub2RlLm5vZGVUeXBlICE9IDMpCiAgICAgICAgbm9kZS5kaXJ0eSA9IHRydWU7CiAgICAgIHRoaXMuZGlydHkucHVzaChub2RlKTsKICAgIH0sCgogICAgYWxsQ2xlYW46IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gIXRoaXMuZGlydHkubGVuZ3RoOwogICAgfSwKCiAgICAvLyBDYXVzZSBhIGhpZ2hsaWdodCBwYXNzIHRvIGhhcHBlbiBpbiBvcHRpb25zLnBhc3NEZWxheQogICAgLy8gbWlsbGlzZWNvbmRzLiBDbGVhciB0aGUgZXhpc3RpbmcgdGltZW91dCwgaWYgb25lIGV4aXN0cy4gVGhpcwogICAgLy8gd2F5LCB0aGUgcGFzc2VzIGRvIG5vdCBoYXBwZW4gd2hpbGUgdGhlIHVzZXIgaXMgdHlwaW5nLCBhbmQKICAgIC8vIHNob3VsZCBhcyB1bm9idHJ1c2l2ZSBhcyBwb3NzaWJsZS4KICAgIHNjaGVkdWxlSGlnaGxpZ2h0OiBmdW5jdGlvbigpIHsKICAgICAgLy8gVGltZW91dHMgYXJlIHJvdXRlZCB0aHJvdWdoIHRoZSBwYXJlbnQgd2luZG93LCBiZWNhdXNlIG9uCiAgICAgIC8vIHNvbWUgYnJvd3NlcnMgZGVzaWduTW9kZSB3aW5kb3dzIGRvIG5vdCBmaXJlIHRpbWVvdXRzLgogICAgICB2YXIgc2VsZiA9IHRoaXM7CiAgICAgIHRoaXMucGFyZW50LmNsZWFyVGltZW91dCh0aGlzLmhpZ2hsaWdodFRpbWVvdXQpOwogICAgICB0aGlzLmhpZ2hsaWdodFRpbWVvdXQgPSB0aGlzLnBhcmVudC5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7c2VsZi5oaWdobGlnaHREaXJ0eSgpO30sIHRoaXMub3B0aW9ucy5wYXNzRGVsYXkpOwogICAgfSwKCiAgICAvLyBGZXRjaCBvbmUgZGlydHkgbm9kZSwgYW5kIHJlbW92ZSBpdCBmcm9tIHRoZSBkaXJ0eSBzZXQuCiAgICBnZXREaXJ0eU5vZGU6IGZ1bmN0aW9uKCkgewogICAgICB3aGlsZSAodGhpcy5kaXJ0eS5sZW5ndGggPiAwKSB7CiAgICAgICAgdmFyIGZvdW5kID0gdGhpcy5kaXJ0eS5wb3AoKTsKICAgICAgICAvLyBJRTggc29tZXRpbWVzIHRocm93cyBhbiB1bmV4cGxhaW5hYmxlICdpbnZhbGlkIGFyZ3VtZW50JwogICAgICAgIC8vIGV4Y2VwdGlvbiBmb3IgZm91bmQucGFyZW50Tm9kZQogICAgICAgIHRyeSB7CiAgICAgICAgICAvLyBJZiB0aGUgbm9kZSBoYXMgYmVlbiBjb2xvdXJlZCBpbiB0aGUgbWVhbnRpbWUsIG9yIGlzIG5vCiAgICAgICAgICAvLyBsb25nZXIgaW4gdGhlIGRvY3VtZW50LCBpdCBzaG91bGQgbm90IGJlIHJldHVybmVkLgogICAgICAgICAgd2hpbGUgKGZvdW5kICYmIGZvdW5kLnBhcmVudE5vZGUgIT0gdGhpcy5jb250YWluZXIpCiAgICAgICAgICAgIGZvdW5kID0gZm91bmQucGFyZW50Tm9kZTsKICAgICAgICAgIGlmIChmb3VuZCAmJiAoZm91bmQuZGlydHkgfHwgZm91bmQubm9kZVR5cGUgPT0gMykpCiAgICAgICAgICAgIHJldHVybiBmb3VuZDsKICAgICAgICB9IGNhdGNoIChlKSB7fQogICAgICB9CiAgICAgIHJldHVybiBudWxsOwogICAgfSwKCiAgICAvLyBQaWNrIGRpcnR5IG5vZGVzLCBhbmQgaGlnaGxpZ2h0IHRoZW0sIHVudGlsIG9wdGlvbnMucGFzc1RpbWUKICAgIC8vIG1pbGxpc2Vjb25kcyBoYXZlIGdvbmUgYnkuIFRoZSBoaWdobGlnaHQgbWV0aG9kIHdpbGwgY29udGludWUKICAgIC8vIHRvIG5leHQgbGluZXMgYXMgbG9uZyBhcyBpdCBmaW5kcyBkaXJ0eSBub2Rlcy4gSXQgcmV0dXJucwogICAgLy8gaW5mb3JtYXRpb24gYWJvdXQgdGhlIHBsYWNlIHdoZXJlIGl0IHN0b3BwZWQuIElmIHRoZXJlIGFyZQogICAgLy8gZGlydHkgbm9kZXMgbGVmdCBhZnRlciB0aGlzIGZ1bmN0aW9uIGhhcyBzcGVudCBhbGwgaXRzIGxpbmVzLAogICAgLy8gaXQgc2hlZHVsZXMgYW5vdGhlciBoaWdobGlnaHQgdG8gZmluaXNoIHRoZSBqb2IuCiAgICBoaWdobGlnaHREaXJ0eTogZnVuY3Rpb24oZm9yY2UpIHsKICAgICAgLy8gUHJldmVudCBGRiBmcm9tIHJhaXNpbmcgYW4gZXJyb3Igd2hlbiBpdCBpcyBmaXJpbmcgdGltZW91dHMKICAgICAgLy8gb24gYSBwYWdlIHRoYXQncyBubyBsb25nZXIgbG9hZGVkLgogICAgICBpZiAoIXdpbmRvdy5wYXJlbnQgfHwgIXdpbmRvdy5zZWxlY3QpIHJldHVybiBmYWxzZTsKCiAgICAgIGlmICghdGhpcy5vcHRpb25zLnJlYWRPbmx5KSBzZWxlY3QubWFya1NlbGVjdGlvbigpOwogICAgICB2YXIgc3RhcnQsIGVuZFRpbWUgPSBmb3JjZSA/IG51bGwgOiB0aW1lKCkgKyB0aGlzLm9wdGlvbnMucGFzc1RpbWU7CiAgICAgIHdoaWxlICgodGltZSgpIDwgZW5kVGltZSB8fCBmb3JjZSkgJiYgKHN0YXJ0ID0gdGhpcy5nZXREaXJ0eU5vZGUoKSkpIHsKICAgICAgICB2YXIgcmVzdWx0ID0gdGhpcy5oaWdobGlnaHQoc3RhcnQsIGVuZFRpbWUpOwogICAgICAgIGlmIChyZXN1bHQgJiYgcmVzdWx0Lm5vZGUgJiYgcmVzdWx0LmRpcnR5KQogICAgICAgICAgdGhpcy5hZGREaXJ0eU5vZGUocmVzdWx0Lm5vZGUubmV4dFNpYmxpbmcpOwogICAgICB9CiAgICAgIGlmICghdGhpcy5vcHRpb25zLnJlYWRPbmx5KSBzZWxlY3Quc2VsZWN0TWFya2VkKCk7CiAgICAgIGlmIChzdGFydCkgdGhpcy5zY2hlZHVsZUhpZ2hsaWdodCgpOwogICAgICByZXR1cm4gdGhpcy5kaXJ0eS5sZW5ndGggPT0gMDsKICAgIH0sCgogICAgLy8gQ3JlYXRlcyBhIGZ1bmN0aW9uIHRoYXQsIHdoZW4gY2FsbGVkIHRocm91Z2ggYSB0aW1lb3V0LCB3aWxsCiAgICAvLyBjb250aW51b3VzbHkgcmUtcGFyc2UgdGhlIGRvY3VtZW50LgogICAgZG9jdW1lbnRTY2FubmVyOiBmdW5jdGlvbihwYXNzVGltZSkgewogICAgICB2YXIgc2VsZiA9IHRoaXMsIHBvcyA9IG51bGw7CiAgICAgIHJldHVybiBmdW5jdGlvbigpIHsKICAgICAgICAvLyBGRiB0aW1lb3V0IHdlaXJkbmVzcyB3b3JrYXJvdW5kLgogICAgICAgIGlmICghd2luZG93LnBhcmVudCB8fCAhd2luZG93LnNlbGVjdCkgcmV0dXJuOwogICAgICAgIC8vIElmIHRoZSBjdXJyZW50IG5vZGUgaXMgbm8gbG9uZ2VyIGluIHRoZSBkb2N1bWVudC4uLiBvaAogICAgICAgIC8vIHdlbGwsIHdlIHN0YXJ0IG92ZXIuCiAgICAgICAgaWYgKHBvcyAmJiBwb3MucGFyZW50Tm9kZSAhPSBzZWxmLmNvbnRhaW5lcikKICAgICAgICAgIHBvcyA9IG51bGw7CiAgICAgICAgc2VsZWN0Lm1hcmtTZWxlY3Rpb24oKTsKICAgICAgICB2YXIgcmVzdWx0ID0gc2VsZi5oaWdobGlnaHQocG9zLCB0aW1lKCkgKyBwYXNzVGltZSwgdHJ1ZSk7CiAgICAgICAgc2VsZWN0LnNlbGVjdE1hcmtlZCgpOwogICAgICAgIHZhciBuZXdQb3MgPSByZXN1bHQgPyAocmVzdWx0Lm5vZGUgJiYgcmVzdWx0Lm5vZGUubmV4dFNpYmxpbmcpIDogbnVsbDsKICAgICAgICBwb3MgPSAocG9zID09IG5ld1BvcykgPyBudWxsIDogbmV3UG9zOwogICAgICAgIHNlbGYuZGVsYXlTY2FubmluZygpOwogICAgICB9OwogICAgfSwKCiAgICAvLyBTdGFydHMgdGhlIGNvbnRpbnVvdXMgc2Nhbm5pbmcgcHJvY2VzcyBmb3IgdGhpcyBkb2N1bWVudCBhZnRlcgogICAgLy8gYSBnaXZlbiBpbnRlcnZhbC4KICAgIGRlbGF5U2Nhbm5pbmc6IGZ1bmN0aW9uKCkgewogICAgICBpZiAodGhpcy5zY2FubmVyKSB7CiAgICAgICAgdGhpcy5wYXJlbnQuY2xlYXJUaW1lb3V0KHRoaXMuZG9jdW1lbnRTY2FuKTsKICAgICAgICB0aGlzLmRvY3VtZW50U2NhbiA9IHRoaXMucGFyZW50LnNldFRpbWVvdXQodGhpcy5zY2FubmVyLCB0aGlzLm9wdGlvbnMuY29udGludW91c1NjYW5uaW5nKTsKICAgICAgfQogICAgfSwKCiAgICAvLyBUaGUgZnVuY3Rpb24gdGhhdCBkb2VzIHRoZSBhY3R1YWwgaGlnaGxpZ2h0aW5nL2NvbG91cmluZyAod2l0aAogICAgLy8gaGVscCBmcm9tIHRoZSBwYXJzZXIgYW5kIHRoZSBET00gbm9ybWFsaXplcikuIEl0cyBpbnRlcmZhY2UgaXMKICAgIC8vIHJhdGhlciBvdmVyY29tcGxpY2F0ZWQsIGJlY2F1c2UgaXQgaXMgdXNlZCBpbiBkaWZmZXJlbnQKICAgIC8vIHNpdHVhdGlvbnM6IGVuc3VyaW5nIHRoYXQgYSBjZXJ0YWluIGxpbmUgaXMgaGlnaGxpZ2h0ZWQsIG9yCiAgICAvLyBoaWdobGlnaHRpbmcgdXAgdG8gWCBtaWxsaXNlY29uZHMgc3RhcnRpbmcgZnJvbSBhIGNlcnRhaW4KICAgIC8vIHBvaW50LiBUaGUgJ2Zyb20nIGFyZ3VtZW50IGdpdmVzIHRoZSBub2RlIGF0IHdoaWNoIGl0IHNob3VsZAogICAgLy8gc3RhcnQuIElmIHRoaXMgaXMgbnVsbCwgaXQgd2lsbCBzdGFydCBhdCB0aGUgYmVnaW5uaW5nIG9mIHRoZQogICAgLy8gZG9jdW1lbnQuIFdoZW4gYSB0aW1lc3RhbXAgaXMgZ2l2ZW4gd2l0aCB0aGUgJ3RhcmdldCcgYXJndW1lbnQsCiAgICAvLyBpdCB3aWxsIHN0b3AgaGlnaGxpZ2h0aW5nIGF0IHRoYXQgdGltZS4gSWYgdGhpcyBhcmd1bWVudCBob2xkcwogICAgLy8gYSBET00gbm9kZSwgaXQgd2lsbCBoaWdobGlnaHQgdW50aWwgaXQgcmVhY2hlcyB0aGF0IG5vZGUuIElmIGF0CiAgICAvLyBhbnkgdGltZSBpdCBjb21lcyBhY3Jvc3MgdHdvICdjbGVhbicgbGluZXMgKG5vIGRpcnR5IG5vZGVzKSwgaXQKICAgIC8vIHdpbGwgc3RvcCwgZXhjZXB0IHdoZW4gJ2NsZWFuTGluZXMnIGlzIHRydWUuIG1heEJhY2t0cmFjayBpcwogICAgLy8gdGhlIG1heGltdW0gbnVtYmVyIG9mIGxpbmVzIHRvIGJhY2t0cmFjayB0byBmaW5kIGFuIGV4aXN0aW5nCiAgICAvLyBwYXJzZXIgaW5zdGFuY2UuIFRoaXMgaXMgdXNlZCB0byBnaXZlIHVwIGluIHNpdHVhdGlvbnMgd2hlcmUgYQogICAgLy8gaGlnaGxpZ2h0IHdvdWxkIHRha2UgdG9vIGxvbmcgYW5kIGZyZWV6ZSB0aGUgYnJvd3NlciBpbnRlcmZhY2UuCiAgICBoaWdobGlnaHQ6IGZ1bmN0aW9uKGZyb20sIHRhcmdldCwgY2xlYW5MaW5lcywgbWF4QmFja3RyYWNrKXsKICAgICAgdmFyIGNvbnRhaW5lciA9IHRoaXMuY29udGFpbmVyLCBzZWxmID0gdGhpcywgYWN0aXZlID0gdGhpcy5vcHRpb25zLmFjdGl2ZVRva2VuczsKICAgICAgdmFyIGVuZFRpbWUgPSAodHlwZW9mIHRhcmdldCA9PSAibnVtYmVyIiA/IHRhcmdldCA6IG51bGwpOwoKICAgICAgaWYgKCFjb250YWluZXIuZmlyc3RDaGlsZCkKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIC8vIEJhY2t0cmFjayB0byB0aGUgZmlyc3Qgbm9kZSBiZWZvcmUgZnJvbSB0aGF0IGhhcyBhIHBhcnRpYWwKICAgICAgLy8gcGFyc2Ugc3RvcmVkLgogICAgICB3aGlsZSAoZnJvbSAmJiAoIWZyb20ucGFyc2VyRnJvbUhlcmUgfHwgZnJvbS5kaXJ0eSkpIHsKICAgICAgICBpZiAobWF4QmFja3RyYWNrICE9IG51bGwgJiYgaXNCUihmcm9tKSAmJiAoLS1tYXhCYWNrdHJhY2spIDwgMCkKICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICBmcm9tID0gZnJvbS5wcmV2aW91c1NpYmxpbmc7CiAgICAgIH0KICAgICAgLy8gSWYgd2UgYXJlIGF0IHRoZSBlbmQgb2YgdGhlIGRvY3VtZW50LCBkbyBub3RoaW5nLgogICAgICBpZiAoZnJvbSAmJiAhZnJvbS5uZXh0U2libGluZykKICAgICAgICByZXR1cm4gZmFsc2U7CgogICAgICAvLyBDaGVjayB3aGV0aGVyIGEgcGFydCAoPHNwYW4+IG5vZGUpIGFuZCB0aGUgY29ycmVzcG9uZGluZyB0b2tlbgogICAgICAvLyBtYXRjaC4KICAgICAgZnVuY3Rpb24gY29ycmVjdFBhcnQodG9rZW4sIHBhcnQpewogICAgICAgIHJldHVybiAhcGFydC5yZWR1Y2VkICYmIHBhcnQuY3VycmVudFRleHQgPT0gdG9rZW4udmFsdWUgJiYgcGFydC5jbGFzc05hbWUgPT0gdG9rZW4uc3R5bGU7CiAgICAgIH0KICAgICAgLy8gU2hvcnRlbiB0aGUgdGV4dCBhc3NvY2lhdGVkIHdpdGggYSBwYXJ0IGJ5IGNob3BwaW5nIG9mZgogICAgICAvLyBjaGFyYWN0ZXJzIGZyb20gdGhlIGZyb250LiBOb3RlIHRoYXQgb25seSB0aGUgY3VycmVudFRleHQKICAgICAgLy8gcHJvcGVydHkgZ2V0cyBjaGFuZ2VkLiBGb3IgZWZmaWNpZW5jeSByZWFzb25zLCB3ZSBsZWF2ZSB0aGUKICAgICAgLy8gbm9kZVZhbHVlIGFsb25lIC0tIHdlIHNldCB0aGUgcmVkdWNlZCBmbGFnIHRvIGluZGljYXRlIHRoYXQKICAgICAgLy8gdGhpcyBwYXJ0IG11c3QgYmUgcmVwbGFjZWQuCiAgICAgIGZ1bmN0aW9uIHNob3J0ZW5QYXJ0KHBhcnQsIG1pbnVzKXsKICAgICAgICBwYXJ0LmN1cnJlbnRUZXh0ID0gcGFydC5jdXJyZW50VGV4dC5zdWJzdHJpbmcobWludXMpOwogICAgICAgIHBhcnQucmVkdWNlZCA9IHRydWU7CiAgICAgIH0KICAgICAgLy8gQ3JlYXRlIGEgcGFydCBjb3JyZXNwb25kaW5nIHRvIGEgZ2l2ZW4gdG9rZW4uCiAgICAgIGZ1bmN0aW9uIHRva2VuUGFydCh0b2tlbil7CiAgICAgICAgdmFyIHBhcnQgPSBtYWtlUGFydFNwYW4odG9rZW4udmFsdWUpOyAgICAgCiAgICAgICAgcGFydC5jbGFzc05hbWUgPSB0b2tlbi5zdHlsZTsKICAgICAgICByZXR1cm4gcGFydDsKICAgICAgfQoKICAgICAgZnVuY3Rpb24gbWF5YmVUb3VjaChub2RlKSB7CiAgICAgICAgaWYgKG5vZGUpIHsKICAgICAgICAgIHZhciBvbGQgPSBub2RlLm9sZE5leHRTaWJsaW5nOwogICAgICAgICAgaWYgKGxpbmVEaXJ0eSB8fCBvbGQgPT09IHVuZGVmaW5lZCB8fCBub2RlLm5leHRTaWJsaW5nICE9IG9sZCkKICAgICAgICAgICAgc2VsZi5oaXN0b3J5LnRvdWNoKG5vZGUpOwogICAgICAgICAgbm9kZS5vbGROZXh0U2libGluZyA9IG5vZGUubmV4dFNpYmxpbmc7CiAgICAgICAgfQogICAgICAgIGVsc2UgewogICAgICAgICAgdmFyIG9sZCA9IHNlbGYuY29udGFpbmVyLm9sZEZpcnN0Q2hpbGQ7CiAgICAgICAgICBpZiAobGluZURpcnR5IHx8IG9sZCA9PT0gdW5kZWZpbmVkIHx8IHNlbGYuY29udGFpbmVyLmZpcnN0Q2hpbGQgIT0gb2xkKQogICAgICAgICAgICBzZWxmLmhpc3RvcnkudG91Y2gobnVsbCk7CiAgICAgICAgICBzZWxmLmNvbnRhaW5lci5vbGRGaXJzdENoaWxkID0gc2VsZi5jb250YWluZXIuZmlyc3RDaGlsZDsKICAgICAgICB9CiAgICAgIH0KCiAgICAgIC8vIEdldCB0aGUgdG9rZW4gc3RyZWFtLiBJZiBmcm9tIGlzIG51bGwsIHdlIHN0YXJ0IHdpdGggYSBuZXcKICAgICAgLy8gcGFyc2VyIGZyb20gdGhlIHN0YXJ0IG9mIHRoZSBmcmFtZSwgb3RoZXJ3aXNlIGEgcGFydGlhbCBwYXJzZQogICAgICAvLyBpcyByZXN1bWVkLgogICAgICB2YXIgdHJhdmVyc2FsID0gdHJhdmVyc2VET00oZnJvbSA/IGZyb20ubmV4dFNpYmxpbmcgOiBjb250YWluZXIuZmlyc3RDaGlsZCksCiAgICAgICAgICBzdHJlYW0gPSBzdHJpbmdTdHJlYW0odHJhdmVyc2FsKSwKICAgICAgICAgIHBhcnNlZCA9IGZyb20gPyBmcm9tLnBhcnNlckZyb21IZXJlKHN0cmVhbSkgOiBFZGl0b3IuUGFyc2VyLm1ha2Uoc3RyZWFtKTsKCiAgICAgIGZ1bmN0aW9uIHN1cnJvdW5kZWRCeUJScyhub2RlKSB7CiAgICAgICAgcmV0dXJuIChub2RlLnByZXZpb3VzU2libGluZyA9PSBudWxsIHx8IGlzQlIobm9kZS5wcmV2aW91c1NpYmxpbmcpKSAmJgogICAgICAgICAgICAgICAobm9kZS5uZXh0U2libGluZyA9PSBudWxsIHx8IGlzQlIobm9kZS5uZXh0U2libGluZykpOwogICAgICB9CgogICAgICAvLyBwYXJ0cyBpcyBhbiBpbnRlcmZhY2UgdG8gbWFrZSBpdCBwb3NzaWJsZSB0byAnZGVsYXknIGZldGNoaW5nCiAgICAgIC8vIHRoZSBuZXh0IERPTSBub2RlIHVudGlsIHdlIGFyZSBjb21wbGV0ZWx5IGRvbmUgd2l0aCB0aGUgb25lCiAgICAgIC8vIGJlZm9yZSBpdC4gVGhpcyBpcyBuZWNlc3NhcnkgYmVjYXVzZSBvZnRlbiB0aGUgbmV4dCBub2RlIGlzCiAgICAgIC8vIG5vdCB5ZXQgYXZhaWxhYmxlIHdoZW4gd2Ugd2FudCB0byBwcm9jZWVkIHBhc3QgdGhlIGN1cnJlbnQKICAgICAgLy8gb25lLgogICAgICB2YXIgcGFydHMgPSB7CiAgICAgICAgY3VycmVudDogbnVsbCwKICAgICAgICAvLyBGZXRjaCBjdXJyZW50IG5vZGUuCiAgICAgICAgZ2V0OiBmdW5jdGlvbigpewogICAgICAgICAgaWYgKCF0aGlzLmN1cnJlbnQpCiAgICAgICAgICAgIHRoaXMuY3VycmVudCA9IHRyYXZlcnNhbC5ub2Rlcy5zaGlmdCgpOwogICAgICAgICAgcmV0dXJuIHRoaXMuY3VycmVudDsKICAgICAgICB9LAogICAgICAgIC8vIEFkdmFuY2UgdG8gdGhlIG5leHQgcGFydCAoZG8gbm90IGZldGNoIGl0IHlldCkuCiAgICAgICAgbmV4dDogZnVuY3Rpb24oKXsKICAgICAgICAgIHRoaXMuY3VycmVudCA9IG51bGw7CiAgICAgICAgfSwKICAgICAgICAvLyBSZW1vdmUgdGhlIGN1cnJlbnQgcGFydCBmcm9tIHRoZSBET00gdHJlZSwgYW5kIG1vdmUgdG8gdGhlCiAgICAgICAgLy8gbmV4dC4KICAgICAgICByZW1vdmU6IGZ1bmN0aW9uKCl7CiAgICAgICAgICBjb250YWluZXIucmVtb3ZlQ2hpbGQodGhpcy5nZXQoKSk7CiAgICAgICAgICB0aGlzLmN1cnJlbnQgPSBudWxsOwogICAgICAgIH0sCiAgICAgICAgLy8gQWR2YW5jZSB0byB0aGUgbmV4dCBwYXJ0IHRoYXQgaXMgbm90IGVtcHR5LCBkaXNjYXJkaW5nIGVtcHR5CiAgICAgICAgLy8gcGFydHMuCiAgICAgICAgZ2V0Tm9uRW1wdHk6IGZ1bmN0aW9uKCl7CiAgICAgICAgICB2YXIgcGFydCA9IHRoaXMuZ2V0KCk7CiAgICAgICAgICAvLyBBbGxvdyBlbXB0eSBub2RlcyB3aGVuIHRoZXkgYXJlIGFsb25lIG9uIGEgbGluZSwgbmVlZGVkCiAgICAgICAgICAvLyBmb3IgdGhlIEZGIGN1cnNvciBidWcgd29ya2Fyb3VuZCAoc2VlIHNlbGVjdC5qcywKICAgICAgICAgIC8vIGluc2VydE5ld2xpbmVBdEN1cnNvcikuCiAgICAgICAgICB3aGlsZSAocGFydCAmJiBpc1NwYW4ocGFydCkgJiYgcGFydC5jdXJyZW50VGV4dCA9PSAiIikgewogICAgICAgICAgICAvLyBMZWF2ZSBlbXB0eSBub2RlcyB0aGF0IGFyZSBhbG9uZSBvbiBhIGxpbmUgYWxvbmUgaW4KICAgICAgICAgICAgLy8gT3BlcmEsIHNpbmNlIHRoYXQgYnJvd3NlcnMgZG9lc24ndCBkZWFsIHdlbGwgd2l0aAogICAgICAgICAgICAvLyBoYXZpbmcgMiBCUnMgaW4gYSByb3cuCiAgICAgICAgICAgIGlmICh3aW5kb3cub3BlcmEgJiYgc3Vycm91bmRlZEJ5QlJzKHBhcnQpKSB7CiAgICAgICAgICAgICAgdGhpcy5uZXh0KCk7CiAgICAgICAgICAgICAgcGFydCA9IHRoaXMuZ2V0KCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAgdmFyIG9sZCA9IHBhcnQ7CiAgICAgICAgICAgICAgdGhpcy5yZW1vdmUoKTsKICAgICAgICAgICAgICBwYXJ0ID0gdGhpcy5nZXQoKTsKICAgICAgICAgICAgICAvLyBBZGp1c3Qgc2VsZWN0aW9uIGluZm9ybWF0aW9uLCBpZiBhbnkuIFNlZSBzZWxlY3QuanMgZm9yIGRldGFpbHMuCiAgICAgICAgICAgICAgc2VsZWN0LnNuYXBzaG90TW92ZShvbGQuZmlyc3RDaGlsZCwgcGFydCAmJiAocGFydC5maXJzdENoaWxkIHx8IHBhcnQpLCAwKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgCiAgICAgICAgICByZXR1cm4gcGFydDsKICAgICAgICB9CiAgICAgIH07CgogICAgICB2YXIgbGluZURpcnR5ID0gZmFsc2UsIHByZXZMaW5lRGlydHkgPSB0cnVlLCBsaW5lTm9kZXMgPSAwOwoKICAgICAgLy8gVGhpcyBmb3JFYWNoIGxvb3BzIG92ZXIgdGhlIHRva2VucyBmcm9tIHRoZSBwYXJzZWQgc3RyZWFtLCBhbmQKICAgICAgLy8gYXQgdGhlIHNhbWUgdGltZSB1c2VzIHRoZSBwYXJ0cyBvYmplY3QgdG8gcHJvY2VlZCB0aHJvdWdoIHRoZQogICAgICAvLyBjb3JyZXNwb25kaW5nIERPTSBub2Rlcy4KICAgICAgZm9yRWFjaChwYXJzZWQsIGZ1bmN0aW9uKHRva2VuKXsKICAgICAgICB2YXIgcGFydCA9IHBhcnRzLmdldE5vbkVtcHR5KCk7CgogICAgICAgIGlmICh0b2tlbi52YWx1ZSA9PSAiXG4iKXsKICAgICAgICAgIC8vIFRoZSBpZGVhIG9mIHRoZSB0d28gc3RyZWFtcyBhY3R1YWxseSBzdGF5aW5nIHN5bmNocm9uaXplZAogICAgICAgICAgLy8gaXMgc3VjaCBhIGxvbmcgc2hvdCB0aGF0IHdlIGV4cGxpY2l0bHkgY2hlY2suCiAgICAgICAgICBpZiAoIWlzQlIocGFydCkpCiAgICAgICAgICAgIHRocm93ICJQYXJzZXIgb3V0IG9mIHN5bmMuIEV4cGVjdGVkIEJSLiI7CgogICAgICAgICAgaWYgKHBhcnQuZGlydHkgfHwgIXBhcnQuaW5kZW50YXRpb24pIGxpbmVEaXJ0eSA9IHRydWU7CiAgICAgICAgICBtYXliZVRvdWNoKGZyb20pOwogICAgICAgICAgZnJvbSA9IHBhcnQ7CgogICAgICAgICAgLy8gRXZlcnkgPGJyPiBnZXRzIGEgY29weSBvZiB0aGUgcGFyc2VyIHN0YXRlIGFuZCBhIGxleGljYWwKICAgICAgICAgIC8vIGNvbnRleHQgYXNzaWduZWQgdG8gaXQuIFRoZSBmaXJzdCBpcyB1c2VkIHRvIGJlIGFibGUgdG8KICAgICAgICAgIC8vIGxhdGVyIHJlc3VtZSBwYXJzaW5nIGZyb20gdGhpcyBwb2ludCwgdGhlIHNlY29uZCBpcyB1c2VkCiAgICAgICAgICAvLyBmb3IgaW5kZW50YXRpb24uCiAgICAgICAgICBwYXJ0LnBhcnNlckZyb21IZXJlID0gcGFyc2VkLmNvcHkoKTsKICAgICAgICAgIHBhcnQuaW5kZW50YXRpb24gPSB0b2tlbi5pbmRlbnRhdGlvbjsKICAgICAgICAgIHBhcnQuZGlydHkgPSBmYWxzZTsKCiAgICAgICAgICAvLyBJZiB0aGUgdGFyZ2V0IGFyZ3VtZW50IHdhc24ndCBhbiBpbnRlZ2VyLCBnbyBhdCBsZWFzdAogICAgICAgICAgLy8gdW50aWwgdGhhdCBub2RlLgogICAgICAgICAgaWYgKGVuZFRpbWUgPT0gbnVsbCAmJiBwYXJ0ID09IHRhcmdldCkgdGhyb3cgU3RvcEl0ZXJhdGlvbjsKCiAgICAgICAgICAvLyBBIGNsZWFuIGxpbmUgd2l0aCBtb3JlIHRoYW4gb25lIG5vZGUgbWVhbnMgd2UgYXJlIGRvbmUuCiAgICAgICAgICAvLyBUaHJvd2luZyBhIFN0b3BJdGVyYXRpb24gaXMgdGhlIHdheSB0byBicmVhayBvdXQgb2YgYQogICAgICAgICAgLy8gTW9jaGlLaXQgZm9yRWFjaCBsb29wLgogICAgICAgICAgaWYgKChlbmRUaW1lICE9IG51bGwgJiYgdGltZSgpID49IGVuZFRpbWUpIHx8ICghbGluZURpcnR5ICYmICFwcmV2TGluZURpcnR5ICYmIGxpbmVOb2RlcyA+IDEgJiYgIWNsZWFuTGluZXMpKQogICAgICAgICAgICB0aHJvdyBTdG9wSXRlcmF0aW9uOwogICAgICAgICAgcHJldkxpbmVEaXJ0eSA9IGxpbmVEaXJ0eTsgbGluZURpcnR5ID0gZmFsc2U7IGxpbmVOb2RlcyA9IDA7CiAgICAgICAgICBwYXJ0cy5uZXh0KCk7CiAgICAgICAgfQogICAgICAgIGVsc2UgewogICAgICAgICAgaWYgKCFpc1NwYW4ocGFydCkpCiAgICAgICAgICAgIHRocm93ICJQYXJzZXIgb3V0IG9mIHN5bmMuIEV4cGVjdGVkIFNQQU4uIjsKICAgICAgICAgIGlmIChwYXJ0LmRpcnR5KQogICAgICAgICAgICBsaW5lRGlydHkgPSB0cnVlOwogICAgICAgICAgbGluZU5vZGVzKys7CgogICAgICAgICAgLy8gSWYgdGhlIHBhcnQgbWF0Y2hlcyB0aGUgdG9rZW4sIHdlIGNhbiBsZWF2ZSBpdCBhbG9uZS4KICAgICAgICAgIGlmIChjb3JyZWN0UGFydCh0b2tlbiwgcGFydCkpewogICAgICAgICAgICBwYXJ0LmRpcnR5ID0gZmFsc2U7CiAgICAgICAgICAgIHBhcnRzLm5leHQoKTsKICAgICAgICAgIH0KICAgICAgICAgIC8vIE90aGVyd2lzZSwgd2UgaGF2ZSB0byBmaXggaXQuCiAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgbGluZURpcnR5ID0gdHJ1ZTsKICAgICAgICAgICAgLy8gSW5zZXJ0IHRoZSBjb3JyZWN0IHBhcnQuCiAgICAgICAgICAgIHZhciBuZXdQYXJ0ID0gdG9rZW5QYXJ0KHRva2VuKTsKICAgICAgICAgICAgY29udGFpbmVyLmluc2VydEJlZm9yZShuZXdQYXJ0LCBwYXJ0KTsKICAgICAgICAgICAgaWYgKGFjdGl2ZSkgYWN0aXZlKG5ld1BhcnQsIHRva2VuLCBzZWxmKTsKICAgICAgICAgICAgdmFyIHRva2Vuc2l6ZSA9IHRva2VuLnZhbHVlLmxlbmd0aDsKICAgICAgICAgICAgdmFyIG9mZnNldCA9IDA7CiAgICAgICAgICAgIC8vIEVhdCB1cCBwYXJ0cyB1bnRpbCB0aGUgdGV4dCBmb3IgdGhpcyB0b2tlbiBoYXMgYmVlbgogICAgICAgICAgICAvLyByZW1vdmVkLCBhZGp1c3RpbmcgdGhlIHN0b3JlZCBzZWxlY3Rpb24gaW5mbyAoc2VlCiAgICAgICAgICAgIC8vIHNlbGVjdC5qcykgaW4gdGhlIHByb2Nlc3MuCiAgICAgICAgICAgIHdoaWxlICh0b2tlbnNpemUgPiAwKSB7CiAgICAgICAgICAgICAgcGFydCA9IHBhcnRzLmdldCgpOwogICAgICAgICAgICAgIHZhciBwYXJ0c2l6ZSA9IHBhcnQuY3VycmVudFRleHQubGVuZ3RoOwogICAgICAgICAgICAgIHNlbGVjdC5zbmFwc2hvdFJlcGxhY2VOb2RlKHBhcnQuZmlyc3RDaGlsZCwgbmV3UGFydC5maXJzdENoaWxkLCB0b2tlbnNpemUsIG9mZnNldCk7CiAgICAgICAgICAgICAgaWYgKHBhcnRzaXplID4gdG9rZW5zaXplKXsKICAgICAgICAgICAgICAgIHNob3J0ZW5QYXJ0KHBhcnQsIHRva2Vuc2l6ZSk7CiAgICAgICAgICAgICAgICB0b2tlbnNpemUgPSAwOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgIHRva2Vuc2l6ZSAtPSBwYXJ0c2l6ZTsKICAgICAgICAgICAgICAgIG9mZnNldCArPSBwYXJ0c2l6ZTsKICAgICAgICAgICAgICAgIHBhcnRzLnJlbW92ZSgpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfSk7CiAgICAgIG1heWJlVG91Y2goZnJvbSk7CiAgICAgIHdlYmtpdExhc3RMaW5lSGFjayh0aGlzLmNvbnRhaW5lcik7CgogICAgICAvLyBUaGUgZnVuY3Rpb24gcmV0dXJucyBzb21lIHN0YXR1cyBpbmZvcm1hdGlvbiB0aGF0IGlzIHVzZWQgYnkKICAgICAgLy8gaGlnaHRsaWdodERpcnR5IHRvIGRldGVybWluZSB3aGV0aGVyIGFuZCB3aGVyZSBpdCBoYXMgdG8KICAgICAgLy8gY29udGludWUuCiAgICAgIHJldHVybiB7bm9kZTogcGFydHMuZ2V0Tm9uRW1wdHkoKSwKICAgICAgICAgICAgICBkaXJ0eTogbGluZURpcnR5fTsKICAgIH0KICB9OwoKICByZXR1cm4gRWRpdG9yOwp9KSgpOwoKYWRkRXZlbnRIYW5kbGVyKHdpbmRvdywgImxvYWQiLCBmdW5jdGlvbigpIHsKICB2YXIgQ29kZU1pcnJvciA9IHdpbmRvdy5mcmFtZUVsZW1lbnQuQ29kZU1pcnJvcjsKICB2YXIgZSA9IENvZGVNaXJyb3IuZWRpdG9yID0gbmV3IEVkaXRvcihDb2RlTWlycm9yLm9wdGlvbnMpOwogIHRoaXMucGFyZW50LnNldFRpbWVvdXQobWV0aG9kKENvZGVNaXJyb3IsICJpbml0IiksIDApOwp9KTsK]]></data>
	</file>
	<file>
	  <filename>/includes/CodeMirror/js/highlight.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[Ly8gTWluaW1hbCBmcmFtaW5nIG5lZWRlZCB0byB1c2UgQ29kZU1pcnJvci1zdHlsZSBwYXJzZXJzIHRvIGhpZ2hsaWdodAovLyBjb2RlLiBMb2FkIHRoaXMgYWxvbmcgd2l0aCB0b2tlbml6ZS5qcywgc3RyaW5nc3RyZWFtLmpzLCBhbmQgeW91cgovLyBwYXJzZXIuIFRoZW4gY2FsbCBoaWdobGlnaHRUZXh0LCBwYXNzaW5nIGEgc3RyaW5nIGFzIHRoZSBmaXJzdAovLyBhcmd1bWVudCwgYW5kIGFzIHRoZSBzZWNvbmQgYXJndW1lbnQgZWl0aGVyIGEgY2FsbGJhY2sgZnVuY3Rpb24KLy8gdGhhdCB3aWxsIGJlIGNhbGxlZCB3aXRoIGFuIGFycmF5IG9mIFNQQU4gbm9kZXMgZm9yIGV2ZXJ5IGxpbmUgaW4KLy8gdGhlIGNvZGUsIG9yIGEgRE9NIG5vZGUgdG8gd2hpY2ggdG8gYXBwZW5kIHRoZXNlIHNwYW5zLCBhbmQKLy8gb3B0aW9uYWxseSAobm90IG5lZWRlZCBpZiB5b3Ugb25seSBsb2FkZWQgb25lIHBhcnNlcikgYSBwYXJzZXIKLy8gb2JqZWN0LgoKLy8gU3R1ZmYgZnJvbSB1dGlsLmpzIHRoYXQgdGhlIHBhcnNlcnMgYXJlIHVzaW5nLgp2YXIgU3RvcEl0ZXJhdGlvbiA9IHt0b1N0cmluZzogZnVuY3Rpb24oKSB7cmV0dXJuICJTdG9wSXRlcmF0aW9uIn19OwoKdmFyIEVkaXRvciA9IHt9Owp2YXIgaW5kZW50VW5pdCA9IDI7CgooZnVuY3Rpb24oKXsKICBmdW5jdGlvbiBub3JtYWxpc2VTdHJpbmcoc3RyaW5nKSB7CiAgICB2YXIgdGFiID0gIiI7CiAgICBmb3IgKHZhciBpID0gMDsgaSA8IGluZGVudFVuaXQ7IGkrKykgdGFiICs9ICIgIjsKCiAgICBzdHJpbmcgPSBzdHJpbmcucmVwbGFjZSgvXHQvZywgdGFiKS5yZXBsYWNlKC9cdTAwYTAvZywgIiAiKS5yZXBsYWNlKC9cclxuPy9nLCAiXG4iKTsKICAgIHZhciBwb3MgPSAwLCBwYXJ0cyA9IFtdLCBsaW5lcyA9IHN0cmluZy5zcGxpdCgiXG4iKTsKICAgIGZvciAodmFyIGxpbmUgPSAwOyBsaW5lIDwgbGluZXMubGVuZ3RoOyBsaW5lKyspIHsKICAgICAgaWYgKGxpbmUgIT0gMCkgcGFydHMucHVzaCgiXG4iKTsKICAgICAgcGFydHMucHVzaChsaW5lc1tsaW5lXSk7CiAgICB9CgogICAgcmV0dXJuIHsKICAgICAgbmV4dDogZnVuY3Rpb24oKSB7CiAgICAgICAgaWYgKHBvcyA8IHBhcnRzLmxlbmd0aCkgcmV0dXJuIHBhcnRzW3BvcysrXTsKICAgICAgICBlbHNlIHRocm93IFN0b3BJdGVyYXRpb247CiAgICAgIH0KICAgIH07CiAgfQoKICB3aW5kb3cuaGlnaGxpZ2h0VGV4dCA9IGZ1bmN0aW9uKHN0cmluZywgY2FsbGJhY2ssIHBhcnNlcikgewogICAgcGFyc2VyID0gKHBhcnNlciB8fCBFZGl0b3IuUGFyc2VyKS5tYWtlKHN0cmluZ1N0cmVhbShub3JtYWxpc2VTdHJpbmcoc3RyaW5nKSkpOwogICAgdmFyIGxpbmUgPSBbXTsKICAgIGlmIChjYWxsYmFjay5ub2RlVHlwZSA9PSAxKSB7CiAgICAgIHZhciBub2RlID0gY2FsbGJhY2s7CiAgICAgIGNhbGxiYWNrID0gZnVuY3Rpb24obGluZSkgewogICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgbGluZS5sZW5ndGg7IGkrKykKICAgICAgICAgIG5vZGUuYXBwZW5kQ2hpbGQobGluZVtpXSk7CiAgICAgICAgbm9kZS5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJCUiIpKTsKICAgICAgfTsKICAgIH0KCiAgICB0cnkgewogICAgICB3aGlsZSAodHJ1ZSkgewogICAgICAgIHZhciB0b2tlbiA9IHBhcnNlci5uZXh0KCk7CiAgICAgICAgaWYgKHRva2VuLnZhbHVlID09ICJcbiIpIHsKICAgICAgICAgIGNhbGxiYWNrKGxpbmUpOwogICAgICAgICAgbGluZSA9IFtdOwogICAgICAgIH0KICAgICAgICBlbHNlIHsKICAgICAgICAgIHZhciBzcGFuID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiU1BBTiIpOwogICAgICAgICAgc3Bhbi5jbGFzc05hbWUgPSB0b2tlbi5zdHlsZTsKICAgICAgICAgIHNwYW4uYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUodG9rZW4udmFsdWUpKTsKICAgICAgICAgIGxpbmUucHVzaChzcGFuKTsKICAgICAgICB9CiAgICAgIH0KICAgIH0KICAgIGNhdGNoIChlKSB7CiAgICAgIGlmIChlICE9IFN0b3BJdGVyYXRpb24pIHRocm93IGU7CiAgICB9CiAgICBpZiAobGluZS5sZW5ndGgpIGNhbGxiYWNrKGxpbmUpOwogIH0KfSkoKTsK]]></data>
	</file>
	<file>
	  <filename>/includes/CodeMirror/js/mirrorframe.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[LyogRGVtb25zdHJhdGlvbiBvZiBlbWJlZGRpbmcgQ29kZU1pcnJvciBpbiBhIGJpZ2dlciBhcHBsaWNhdGlvbi4gVGhlCiAqIGludGVyZmFjZSBkZWZpbmVkIGhlcmUgaXMgYSBtZXNzIG9mIHByb21wdHMgYW5kIGNvbmZpcm1zLCBhbmQKICogc2hvdWxkIHByb2JhYmx5IG5vdCBiZSB1c2VkIGluIGEgcmVhbCBwcm9qZWN0LgogKi8KCmZ1bmN0aW9uIE1pcnJvckZyYW1lKHBsYWNlLCBvcHRpb25zKSB7CiAgdGhpcy5ob21lID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiRElWIik7CiAgaWYgKHBsYWNlLmFwcGVuZENoaWxkKQogICAgcGxhY2UuYXBwZW5kQ2hpbGQodGhpcy5ob21lKTsKICBlbHNlCiAgICBwbGFjZSh0aGlzLmhvbWUpOwoKICB2YXIgc2VsZiA9IHRoaXM7CiAgZnVuY3Rpb24gbWFrZUJ1dHRvbihuYW1lLCBhY3Rpb24pIHsKICAgIHZhciBidXR0b24gPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJJTlBVVCIpOwogICAgYnV0dG9uLnR5cGUgPSAiYnV0dG9uIjsKICAgIGJ1dHRvbi52YWx1ZSA9IG5hbWU7CiAgICBzZWxmLmhvbWUuYXBwZW5kQ2hpbGQoYnV0dG9uKTsKICAgIGJ1dHRvbi5vbmNsaWNrID0gZnVuY3Rpb24oKXtzZWxmW2FjdGlvbl0uY2FsbChzZWxmKTt9OwogIH0KCiAgbWFrZUJ1dHRvbigiU2VhcmNoIiwgInNlYXJjaCIpOwogIG1ha2VCdXR0b24oIlJlcGxhY2UiLCAicmVwbGFjZSIpOwogIG1ha2VCdXR0b24oIkN1cnJlbnQgbGluZSIsICJsaW5lIik7CiAgbWFrZUJ1dHRvbigiSnVtcCB0byBsaW5lIiwgImp1bXAiKTsKICBtYWtlQnV0dG9uKCJJbnNlcnQgY29uc3RydWN0b3IiLCAibWFjcm8iKTsKICBtYWtlQnV0dG9uKCJJbmRlbnQgYWxsIiwgInJlaW5kZW50Iik7CgogIHRoaXMubWlycm9yID0gbmV3IENvZGVNaXJyb3IodGhpcy5ob21lLCBvcHRpb25zKTsKfQoKTWlycm9yRnJhbWUucHJvdG90eXBlID0gewogIHNlYXJjaDogZnVuY3Rpb24oKSB7CiAgICB2YXIgdGV4dCA9IHByb21wdCgiRW50ZXIgc2VhcmNoIHRlcm06IiwgIiIpOwogICAgaWYgKCF0ZXh0KSByZXR1cm47CgogICAgdmFyIGZpcnN0ID0gdHJ1ZTsKICAgIGRvIHsKICAgICAgdmFyIGN1cnNvciA9IHRoaXMubWlycm9yLmdldFNlYXJjaEN1cnNvcih0ZXh0LCBmaXJzdCk7CiAgICAgIGZpcnN0ID0gZmFsc2U7CiAgICAgIHdoaWxlIChjdXJzb3IuZmluZE5leHQoKSkgewogICAgICAgIGN1cnNvci5zZWxlY3QoKTsKICAgICAgICBpZiAoIWNvbmZpcm0oIlNlYXJjaCBhZ2Fpbj8iKSkKICAgICAgICAgIHJldHVybjsKICAgICAgfQogICAgfSB3aGlsZSAoY29uZmlybSgiRW5kIG9mIGRvY3VtZW50IHJlYWNoZWQuIFN0YXJ0IG92ZXI/IikpOwogIH0sCgogIHJlcGxhY2U6IGZ1bmN0aW9uKCkgewogICAgLy8gVGhpcyBpcyBhIHJlcGxhY2UtYWxsLCBidXQgaXQgaXMgcG9zc2libGUgdG8gaW1wbGVtZW50IGEKICAgIC8vIHByb21wdGluZyByZXBsYWNlLgogICAgdmFyIGZyb20gPSBwcm9tcHQoIkVudGVyIHNlYXJjaCBzdHJpbmc6IiwgIiIpLCB0bzsKICAgIGlmIChmcm9tKSB0byA9IHByb21wdCgiV2hhdCBzaG91bGQgaXQgYmUgcmVwbGFjZWQgd2l0aD8iLCAiIik7CiAgICBpZiAodG8gPT0gbnVsbCkgcmV0dXJuOwoKICAgIHZhciBjdXJzb3IgPSB0aGlzLm1pcnJvci5nZXRTZWFyY2hDdXJzb3IoZnJvbSwgZmFsc2UpOwogICAgd2hpbGUgKGN1cnNvci5maW5kTmV4dCgpKQogICAgICBjdXJzb3IucmVwbGFjZSh0byk7CiAgfSwKCiAganVtcDogZnVuY3Rpb24oKSB7CiAgICB2YXIgbGluZSA9IHByb21wdCgiSnVtcCB0byBsaW5lOiIsICIiKTsKICAgIGlmIChsaW5lICYmICFpc05hTihOdW1iZXIobGluZSkpKQogICAgICB0aGlzLm1pcnJvci5qdW1wVG9MaW5lKE51bWJlcihsaW5lKSk7CiAgfSwKCiAgbGluZTogZnVuY3Rpb24oKSB7CiAgICBhbGVydCgiVGhlIGN1cnNvciBpcyBjdXJyZW50bHkgYXQgbGluZSAiICsgdGhpcy5taXJyb3IuY3VycmVudExpbmUoKSk7CiAgICB0aGlzLm1pcnJvci5mb2N1cygpOwogIH0sCgogIG1hY3JvOiBmdW5jdGlvbigpIHsKICAgIHZhciBuYW1lID0gcHJvbXB0KCJOYW1lIHlvdXIgY29uc3RydWN0b3I6IiwgIiIpOwogICAgaWYgKG5hbWUpCiAgICAgIHRoaXMubWlycm9yLnJlcGxhY2VTZWxlY3Rpb24oImZ1bmN0aW9uICIgKyBuYW1lICsgIigpIHtcbiAgXG59XG5cbiIgKyBuYW1lICsgIi5wcm90b3R5cGUgPSB7XG4gIFxufTtcbiIpOwogIH0sCgogIHJlaW5kZW50OiBmdW5jdGlvbigpIHsKICAgIHRoaXMubWlycm9yLnJlaW5kZW50KCk7CiAgfQp9Owo=]]></data>
	</file>
	<file>
	  <filename>/includes/CodeMirror/js/parsecss.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[LyogU2ltcGxlIHBhcnNlciBmb3IgQ1NTICovCgp2YXIgQ1NTUGFyc2VyID0gRWRpdG9yLlBhcnNlciA9IChmdW5jdGlvbigpIHsKICB2YXIgdG9rZW5pemVDU1MgPSAoZnVuY3Rpb24oKSB7CiAgICBmdW5jdGlvbiBub3JtYWwoc291cmNlLCBzZXRTdGF0ZSkgewogICAgICB2YXIgY2ggPSBzb3VyY2UubmV4dCgpOwogICAgICBpZiAoY2ggPT0gIkAiKSB7CiAgICAgICAgc291cmNlLm5leHRXaGlsZU1hdGNoZXMoL1x3Lyk7CiAgICAgICAgcmV0dXJuICJjc3MtYXQiOwogICAgICB9CiAgICAgIGVsc2UgaWYgKGNoID09ICIvIiAmJiBzb3VyY2UuZXF1YWxzKCIqIikpIHsKICAgICAgICBzZXRTdGF0ZShpbkNDb21tZW50KTsKICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgfQogICAgICBlbHNlIGlmIChjaCA9PSAiPCIgJiYgc291cmNlLmVxdWFscygiISIpKSB7CiAgICAgICAgc2V0U3RhdGUoaW5TR01MQ29tbWVudCk7CiAgICAgICAgcmV0dXJuIG51bGw7CiAgICAgIH0KICAgICAgZWxzZSBpZiAoY2ggPT0gIj0iKSB7CiAgICAgICAgcmV0dXJuICJjc3MtY29tcGFyZSI7CiAgICAgIH0KICAgICAgZWxzZSBpZiAoc291cmNlLmVxdWFscygiPSIpICYmIChjaCA9PSAifiIgfHwgY2ggPT0gInwiKSkgewogICAgICAgIHNvdXJjZS5uZXh0KCk7CiAgICAgICAgcmV0dXJuICJjc3MtY29tcGFyZSI7CiAgICAgIH0KICAgICAgZWxzZSBpZiAoY2ggPT0gIlwiIiB8fCBjaCA9PSAiJyIpIHsKICAgICAgICBzZXRTdGF0ZShpblN0cmluZyhjaCkpOwogICAgICAgIHJldHVybiBudWxsOwogICAgICB9CiAgICAgIGVsc2UgaWYgKGNoID09ICIjIikgewogICAgICAgIHNvdXJjZS5uZXh0V2hpbGVNYXRjaGVzKC9cdy8pOwogICAgICAgIHJldHVybiAiY3NzLWhhc2giOwogICAgICB9CiAgICAgIGVsc2UgaWYgKGNoID09ICIhIikgewogICAgICAgIHNvdXJjZS5uZXh0V2hpbGVNYXRjaGVzKC9bIFx0XS8pOwogICAgICAgIHNvdXJjZS5uZXh0V2hpbGVNYXRjaGVzKC9cdy8pOwogICAgICAgIHJldHVybiAiY3NzLWltcG9ydGFudCI7CiAgICAgIH0KICAgICAgZWxzZSBpZiAoL1xkLy50ZXN0KGNoKSkgewogICAgICAgIHNvdXJjZS5uZXh0V2hpbGVNYXRjaGVzKC9bXHcuJV0vKTsKICAgICAgICByZXR1cm4gImNzcy11bml0IjsKICAgICAgfQogICAgICBlbHNlIGlmICgvWywuKz4qXC9dLy50ZXN0KGNoKSkgewogICAgICAgIHJldHVybiAiY3NzLXNlbGVjdC1vcCI7CiAgICAgIH0KICAgICAgZWxzZSBpZiAoL1s7e306XFtcXV0vLnRlc3QoY2gpKSB7CiAgICAgICAgcmV0dXJuICJjc3MtcHVuY3R1YXRpb24iOwogICAgICB9CiAgICAgIGVsc2UgewogICAgICAgIHNvdXJjZS5uZXh0V2hpbGVNYXRjaGVzKC9bXHdcXFwtX10vKTsKICAgICAgICByZXR1cm4gImNzcy1pZGVudGlmaWVyIjsKICAgICAgfQogICAgfQoKICAgIGZ1bmN0aW9uIGluQ0NvbW1lbnQoc291cmNlLCBzZXRTdGF0ZSkgewogICAgICB2YXIgbWF5YmVFbmQgPSBmYWxzZTsKICAgICAgd2hpbGUgKCFzb3VyY2UuZW5kT2ZMaW5lKCkpIHsKICAgICAgICB2YXIgY2ggPSBzb3VyY2UubmV4dCgpOwogICAgICAgIGlmIChtYXliZUVuZCAmJiBjaCA9PSAiLyIpIHsKICAgICAgICAgIHNldFN0YXRlKG5vcm1hbCk7CiAgICAgICAgICBicmVhazsKICAgICAgICB9CiAgICAgICAgbWF5YmVFbmQgPSAoY2ggPT0gIioiKTsKICAgICAgfQogICAgICByZXR1cm4gImNzcy1jb21tZW50IjsKICAgIH0KCiAgICBmdW5jdGlvbiBpblNHTUxDb21tZW50KHNvdXJjZSwgc2V0U3RhdGUpIHsKICAgICAgdmFyIGRhc2hlcyA9IDA7CiAgICAgIHdoaWxlICghc291cmNlLmVuZE9mTGluZSgpKSB7CiAgICAgICAgdmFyIGNoID0gc291cmNlLm5leHQoKTsKICAgICAgICBpZiAoZGFzaGVzID49IDIgJiYgY2ggPT0gIj4iKSB7CiAgICAgICAgICBzZXRTdGF0ZShub3JtYWwpOwogICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgICAgIGRhc2hlcyA9IChjaCA9PSAiLSIpID8gZGFzaGVzICsgMSA6IDA7CiAgICAgIH0KICAgICAgcmV0dXJuICJjc3MtY29tbWVudCI7CiAgICB9CgogICAgZnVuY3Rpb24gaW5TdHJpbmcocXVvdGUpIHsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKHNvdXJjZSwgc2V0U3RhdGUpIHsKICAgICAgICB2YXIgZXNjYXBlZCA9IGZhbHNlOwogICAgICAgIHdoaWxlICghc291cmNlLmVuZE9mTGluZSgpKSB7CiAgICAgICAgICB2YXIgY2ggPSBzb3VyY2UubmV4dCgpOwogICAgICAgICAgaWYgKGNoID09IHF1b3RlICYmICFlc2NhcGVkKQogICAgICAgICAgICBicmVhazsKICAgICAgICAgIGVzY2FwZWQgPSAhZXNjYXBlZCAmJiBjaCA9PSAiXFwiOwogICAgICAgIH0KICAgICAgICBpZiAoIWVzY2FwZWQpCiAgICAgICAgICBzZXRTdGF0ZShub3JtYWwpOwogICAgICAgIHJldHVybiAiY3NzLXN0cmluZyI7CiAgICAgIH07CiAgICB9CgogICAgcmV0dXJuIGZ1bmN0aW9uKHNvdXJjZSwgc3RhcnRTdGF0ZSkgewogICAgICByZXR1cm4gdG9rZW5pemVyKHNvdXJjZSwgc3RhcnRTdGF0ZSB8fCBub3JtYWwpOwogICAgfTsKICB9KSgpOwoKICBmdW5jdGlvbiBpbmRlbnRDU1MoaW5CcmFjZXMsIGluUnVsZSwgYmFzZSkgewogICAgcmV0dXJuIGZ1bmN0aW9uKG5leHRDaGFycykgewogICAgICBpZiAoIWluQnJhY2VzIHx8IC9eXH0vLnRlc3QobmV4dENoYXJzKSkgcmV0dXJuIGJhc2U7CiAgICAgIGVsc2UgaWYgKGluUnVsZSkgcmV0dXJuIGJhc2UgKyBpbmRlbnRVbml0ICogMjsKICAgICAgZWxzZSByZXR1cm4gYmFzZSArIGluZGVudFVuaXQ7CiAgICB9OwogIH0KCiAgLy8gVGhpcyBpcyBhIHZlcnkgc2ltcGxpc3RpYyBwYXJzZXIgLS0gc2luY2UgQ1NTIGRvZXMgbm90IHJlYWxseQogIC8vIG5lc3QsIGl0IHdvcmtzIGFjY2VwdGFibHkgd2VsbCwgYnV0IHNvbWUgbmljZXIgY29sb3Vyb2luZyBjb3VsZAogIC8vIGJlIHByb3ZpZGVkIHdpdGggYSBtb3JlIGNvbXBsaWNhdGVkIHBhcnNlci4KICBmdW5jdGlvbiBwYXJzZUNTUyhzb3VyY2UsIGJhc2Vjb2x1bW4pIHsKICAgIGJhc2Vjb2x1bW4gPSBiYXNlY29sdW1uIHx8IDA7CiAgICB2YXIgdG9rZW5zID0gdG9rZW5pemVDU1Moc291cmNlKTsKICAgIHZhciBpbkJyYWNlcyA9IGZhbHNlLCBpblJ1bGUgPSBmYWxzZSwgaW5EZWNsID0gZmFsc2U7OwoKICAgIHZhciBpdGVyID0gewogICAgICBuZXh0OiBmdW5jdGlvbigpIHsKICAgICAgICB2YXIgdG9rZW4gPSB0b2tlbnMubmV4dCgpLCBzdHlsZSA9IHRva2VuLnN0eWxlLCBjb250ZW50ID0gdG9rZW4uY29udGVudDsKCiAgICAgICAgaWYgKHN0eWxlID09ICJjc3MtaGFzaCIpCiAgICAgICAgICBzdHlsZSA9IHRva2VuLnN0eWxlID0gIGluUnVsZSA/ICJjc3MtY29sb3Jjb2RlIiA6ICJjc3MtaWRlbnRpZmllciI7CiAgICAgICAgaWYgKHN0eWxlID09ICJjc3MtaWRlbnRpZmllciIpIHsKICAgICAgICAgIGlmIChpblJ1bGUpIHRva2VuLnN0eWxlID0gImNzcy12YWx1ZSI7CiAgICAgICAgICBlbHNlIGlmICghaW5CcmFjZXMgJiYgIWluRGVjbCkgdG9rZW4uc3R5bGUgPSAiY3NzLXNlbGVjdG9yIjsKICAgICAgICB9CgogICAgICAgIGlmIChjb250ZW50ID09ICJcbiIpCiAgICAgICAgICB0b2tlbi5pbmRlbnRhdGlvbiA9IGluZGVudENTUyhpbkJyYWNlcywgaW5SdWxlLCBiYXNlY29sdW1uKTsKCiAgICAgICAgaWYgKGNvbnRlbnQgPT0gInsiKQogICAgICAgICAgaW5CcmFjZXMgPSB0cnVlOwogICAgICAgIGVsc2UgaWYgKGNvbnRlbnQgPT0gIn0iKQogICAgICAgICAgaW5CcmFjZXMgPSBpblJ1bGUgPSBpbkRlY2wgPSBmYWxzZTsKICAgICAgICBlbHNlIGlmIChjb250ZW50ID09ICI7IikKICAgICAgICAgIGluUnVsZSA9IGluRGVjbCA9IGZhbHNlOwogICAgICAgIGVsc2UgaWYgKGluQnJhY2VzICYmIHN0eWxlICE9ICJjc3MtY29tbWVudCIgJiYgc3R5bGUgIT0gIndoaXRlc3BhY2UiKQogICAgICAgICAgaW5SdWxlID0gdHJ1ZTsKICAgICAgICBlbHNlIGlmICghaW5CcmFjZXMgJiYgc3R5bGUgPT0gImNzcy1hdCIgJiYgY29udGVudCAhPSAiQG1lZGlhIikKICAgICAgICAgIGluRGVjbCA9IHRydWU7CgogICAgICAgIHJldHVybiB0b2tlbjsKICAgICAgfSwKCiAgICAgIGNvcHk6IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBfaW5CcmFjZXMgPSBpbkJyYWNlcywgX2luUnVsZSA9IGluUnVsZSwgX3Rva2VuU3RhdGUgPSB0b2tlbnMuc3RhdGU7CiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKHNvdXJjZSkgewogICAgICAgICAgdG9rZW5zID0gdG9rZW5pemVDU1Moc291cmNlLCBfdG9rZW5TdGF0ZSk7CiAgICAgICAgICBpbkJyYWNlcyA9IF9pbkJyYWNlczsKICAgICAgICAgIGluUnVsZSA9IF9pblJ1bGU7CiAgICAgICAgICByZXR1cm4gaXRlcjsKICAgICAgICB9OwogICAgICB9CiAgICB9OwogICAgcmV0dXJuIGl0ZXI7CiAgfQoKICByZXR1cm4ge21ha2U6IHBhcnNlQ1NTLCBlbGVjdHJpY0NoYXJzOiAifSJ9Owp9KSgpOwo=]]></data>
	</file>
	<file>
	  <filename>/includes/CodeMirror/js/parsedummy.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[dmFyIER1bW15UGFyc2VyID0gRWRpdG9yLlBhcnNlciA9IChmdW5jdGlvbigpIHsKICBmdW5jdGlvbiB0b2tlbml6ZUR1bW15KHNvdXJjZSkgewogICAgd2hpbGUgKCFzb3VyY2UuZW5kT2ZMaW5lKCkpIHNvdXJjZS5uZXh0KCk7CiAgICByZXR1cm4gInRleHQiOwogIH0KICBmdW5jdGlvbiBwYXJzZUR1bW15KHNvdXJjZSkgewogICAgZnVuY3Rpb24gaW5kZW50VG8obikge3JldHVybiBmdW5jdGlvbigpIHtyZXR1cm4gbjt9fQogICAgc291cmNlID0gdG9rZW5pemVyKHNvdXJjZSwgdG9rZW5pemVEdW1teSk7CiAgICB2YXIgc3BhY2UgPSAwOwoKICAgIHZhciBpdGVyID0gewogICAgICBuZXh0OiBmdW5jdGlvbigpIHsKICAgICAgICB2YXIgdG9rID0gc291cmNlLm5leHQoKTsKICAgICAgICBpZiAodG9rLnR5cGUgPT0gIndoaXRlc3BhY2UiKSB7CiAgICAgICAgICBpZiAodG9rLnZhbHVlID09ICJcbiIpIHRvay5pbmRlbnRhdGlvbiA9IGluZGVudFRvKHNwYWNlKTsKICAgICAgICAgIGVsc2Ugc3BhY2UgPSB0b2sudmFsdWUubGVuZ3RoOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdG9rOwogICAgICB9LAogICAgICBjb3B5OiBmdW5jdGlvbigpIHsKICAgICAgICB2YXIgX3NwYWNlID0gc3BhY2U7CiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKF9zb3VyY2UpIHsKICAgICAgICAgIHNwYWNlID0gX3NwYWNlOwogICAgICAgICAgc291cmNlID0gdG9rZW5pemVyKF9zb3VyY2UsIHRva2VuaXplRHVtbXkpOwogICAgICAgICAgcmV0dXJuIGl0ZXI7CiAgICAgICAgfTsKICAgICAgfQogICAgfTsKICAgIHJldHVybiBpdGVyOwogIH0KICByZXR1cm4ge21ha2U6IHBhcnNlRHVtbXl9Owp9KSgpOwo=]]></data>
	</file>
	<file>
	  <filename>/includes/CodeMirror/js/parsehtmlmixed.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[dmFyIEhUTUxNaXhlZFBhcnNlciA9IEVkaXRvci5QYXJzZXIgPSAoZnVuY3Rpb24oKSB7CiAgaWYgKCEoQ1NTUGFyc2VyICYmIEpTUGFyc2VyICYmIFhNTFBhcnNlcikpCiAgICB0aHJvdyBuZXcgRXJyb3IoIkNTUywgSlMsIGFuZCBYTUwgcGFyc2VycyBtdXN0IGJlIGxvYWRlZCBmb3IgSFRNTCBtaXhlZCBtb2RlIHRvIHdvcmsuIik7CiAgWE1MUGFyc2VyLmNvbmZpZ3VyZSh7dXNlSFRNTEtsdWRnZXM6IHRydWV9KTsKCiAgZnVuY3Rpb24gcGFyc2VNaXhlZChzdHJlYW0pIHsKICAgIHZhciBodG1sUGFyc2VyID0gWE1MUGFyc2VyLm1ha2Uoc3RyZWFtKSwgbG9jYWxQYXJzZXIgPSBudWxsLCBpblRhZyA9IGZhbHNlOwogICAgdmFyIGl0ZXIgPSB7bmV4dDogdG9wLCBjb3B5OiBjb3B5fTsKCiAgICBmdW5jdGlvbiB0b3AoKSB7CiAgICAgIHZhciB0b2tlbiA9IGh0bWxQYXJzZXIubmV4dCgpOwogICAgICBpZiAodG9rZW4uY29udGVudCA9PSAiPCIpCiAgICAgICAgaW5UYWcgPSB0cnVlOwogICAgICBlbHNlIGlmICh0b2tlbi5zdHlsZSA9PSAieG1sLXRhZ25hbWUiICYmIGluVGFnID09PSB0cnVlKQogICAgICAgIGluVGFnID0gdG9rZW4uY29udGVudC50b0xvd2VyQ2FzZSgpOwogICAgICBlbHNlIGlmICh0b2tlbi5jb250ZW50ID09ICI+IikgewogICAgICAgIGlmIChpblRhZyA9PSAic2NyaXB0IikKICAgICAgICAgIGl0ZXIubmV4dCA9IGxvY2FsKEpTUGFyc2VyLCAiPC9zY3JpcHQiKTsKICAgICAgICBlbHNlIGlmIChpblRhZyA9PSAic3R5bGUiKQogICAgICAgICAgaXRlci5uZXh0ID0gbG9jYWwoQ1NTUGFyc2VyLCAiPC9zdHlsZSIpOwogICAgICAgIGluVGFnID0gZmFsc2U7CiAgICAgIH0KICAgICAgcmV0dXJuIHRva2VuOwogICAgfQogICAgZnVuY3Rpb24gbG9jYWwocGFyc2VyLCB0YWcpIHsKICAgICAgdmFyIGJhc2VJbmRlbnQgPSBodG1sUGFyc2VyLmluZGVudGF0aW9uKCk7CiAgICAgIGxvY2FsUGFyc2VyID0gcGFyc2VyLm1ha2Uoc3RyZWFtLCBiYXNlSW5kZW50ICsgaW5kZW50VW5pdCk7CiAgICAgIHJldHVybiBmdW5jdGlvbigpIHsKICAgICAgICBpZiAoc3RyZWFtLmxvb2tBaGVhZCh0YWcsIGZhbHNlLCBmYWxzZSwgdHJ1ZSkpIHsKICAgICAgICAgIGxvY2FsUGFyc2VyID0gbnVsbDsKICAgICAgICAgIGl0ZXIubmV4dCA9IHRvcDsKICAgICAgICAgIHJldHVybiB0b3AoKTsKICAgICAgICB9CgogICAgICAgIHZhciB0b2tlbiA9IGxvY2FsUGFyc2VyLm5leHQoKTsKICAgICAgICB2YXIgbHQgPSB0b2tlbi52YWx1ZS5sYXN0SW5kZXhPZigiPCIpLCBzeiA9IE1hdGgubWluKHRva2VuLnZhbHVlLmxlbmd0aCAtIGx0LCB0YWcubGVuZ3RoKTsKICAgICAgICBpZiAobHQgIT0gLTEgJiYgdG9rZW4udmFsdWUuc2xpY2UobHQsIGx0ICsgc3opLnRvTG93ZXJDYXNlKCkgPT0gdGFnLnNsaWNlKDAsIHN6KSAmJgogICAgICAgICAgICBzdHJlYW0ubG9va0FoZWFkKHRhZy5zbGljZShzeiksIGZhbHNlLCBmYWxzZSwgdHJ1ZSkpIHsKICAgICAgICAgIHN0cmVhbS5wdXNoKHRva2VuLnZhbHVlLnNsaWNlKGx0KSk7CiAgICAgICAgICB0b2tlbi52YWx1ZSA9IHRva2VuLnZhbHVlLnNsaWNlKDAsIGx0KTsKICAgICAgICB9CgogICAgICAgIGlmICh0b2tlbi5pbmRlbnRhdGlvbikgewogICAgICAgICAgdmFyIG9sZEluZGVudCA9IHRva2VuLmluZGVudGF0aW9uOwogICAgICAgICAgdG9rZW4uaW5kZW50YXRpb24gPSBmdW5jdGlvbihjaGFycykgewogICAgICAgICAgICBpZiAoY2hhcnMgPT0gIjwvIikKICAgICAgICAgICAgICByZXR1cm4gYmFzZUluZGVudDsKICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgIHJldHVybiBvbGRJbmRlbnQoY2hhcnMpOwogICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgcmV0dXJuIHRva2VuOwogICAgICB9OwogICAgfQoKICAgIGZ1bmN0aW9uIGNvcHkoKSB7CiAgICAgIHZhciBfaHRtbCA9IGh0bWxQYXJzZXIuY29weSgpLCBfbG9jYWwgPSBsb2NhbFBhcnNlciAmJiBsb2NhbFBhcnNlci5jb3B5KCksCiAgICAgICAgICBfbmV4dCA9IGl0ZXIubmV4dCwgX2luVGFnID0gaW5UYWc7CiAgICAgIHJldHVybiBmdW5jdGlvbihfc3RyZWFtKSB7CiAgICAgICAgc3RyZWFtID0gX3N0cmVhbTsKICAgICAgICBodG1sUGFyc2VyID0gX2h0bWwoX3N0cmVhbSk7CiAgICAgICAgbG9jYWxQYXJzZXIgPSBfbG9jYWwgJiYgX2xvY2FsKF9zdHJlYW0pOwogICAgICAgIGl0ZXIubmV4dCA9IF9uZXh0OwogICAgICAgIGluVGFnID0gX2luVGFnOwogICAgICAgIHJldHVybiBpdGVyOwogICAgICB9OwogICAgfQogICAgcmV0dXJuIGl0ZXI7CiAgfQoKICByZXR1cm4ge21ha2U6IHBhcnNlTWl4ZWQsIGVsZWN0cmljQ2hhcnM6ICJ7fS86In07Cgp9KSgpOwo=]]></data>
	</file>
	<file>
	  <filename>/includes/CodeMirror/js/parsejavascript.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[LyogUGFyc2UgZnVuY3Rpb24gZm9yIEphdmFTY3JpcHQuIE1ha2VzIHVzZSBvZiB0aGUgdG9rZW5pemVyIGZyb20KICogdG9rZW5pemVqYXZhc2NyaXB0LmpzLiBOb3RlIHRoYXQgeW91ciBwYXJzZXJzIGRvIG5vdCBoYXZlIHRvIGJlCiAqIHRoaXMgY29tcGxpY2F0ZWQgLS0gaWYgeW91IGRvbid0IHdhbnQgdG8gcmVjb2duaXplIGxvY2FsIHZhcmlhYmxlcywKICogaW4gbWFueSBsYW5ndWFnZXMgaXQgaXMgZW5vdWdoIHRvIGp1c3QgbG9vayBmb3IgYnJhY2VzLCBzZW1pY29sb25zLAogKiBwYXJlbnRoZXNlcywgZXRjLCBhbmQga25vdyB3aGVuIHlvdSBhcmUgaW5zaWRlIGEgc3RyaW5nIG9yIGNvbW1lbnQuCiAqCiAqIFNlZSBtYW51YWwuaHRtbCBmb3IgbW9yZSBpbmZvIGFib3V0IHRoZSBwYXJzZXIgaW50ZXJmYWNlLgogKi8KCnZhciBKU1BhcnNlciA9IEVkaXRvci5QYXJzZXIgPSAoZnVuY3Rpb24oKSB7CiAgLy8gVG9rZW4gdHlwZXMgdGhhdCBjYW4gYmUgY29uc2lkZXJlZCB0byBiZSBhdG9tcy4KICB2YXIgYXRvbWljVHlwZXMgPSB7ImF0b20iOiB0cnVlLCAibnVtYmVyIjogdHJ1ZSwgInZhcmlhYmxlIjogdHJ1ZSwgInN0cmluZyI6IHRydWUsICJyZWdleHAiOiB0cnVlfTsKICAvLyBTZXR0aW5nIHRoYXQgY2FuIGJlIHVzZWQgdG8gaGF2ZSBKU09OIGRhdGEgaW5kZW50IHByb3Blcmx5LgogIHZhciBqc29uID0gZmFsc2U7CiAgLy8gQ29uc3RydWN0b3IgZm9yIHRoZSBsZXhpY2FsIGNvbnRleHQgb2JqZWN0cy4KICBmdW5jdGlvbiBKU0xleGljYWwoaW5kZW50ZWQsIGNvbHVtbiwgdHlwZSwgYWxpZ24sIHByZXYsIGluZm8pIHsKICAgIC8vIGluZGVudGF0aW9uIGF0IHN0YXJ0IG9mIHRoaXMgbGluZQogICAgdGhpcy5pbmRlbnRlZCA9IGluZGVudGVkOwogICAgLy8gY29sdW1uIGF0IHdoaWNoIHRoaXMgc2NvcGUgd2FzIG9wZW5lZAogICAgdGhpcy5jb2x1bW4gPSBjb2x1bW47CiAgICAvLyB0eXBlIG9mIHNjb3BlICgndmFyZGVmJywgJ3N0YXQnIChzdGF0ZW1lbnQpLCAnZm9ybScgKHNwZWNpYWwgZm9ybSksICdbJywgJ3snLCBvciAnKCcpCiAgICB0aGlzLnR5cGUgPSB0eXBlOwogICAgLy8gJ1snLCAneycsIG9yICcoJyBibG9ja3MgdGhhdCBoYXZlIGFueSB0ZXh0IGFmdGVyIHRoZWlyIG9wZW5pbmcKICAgIC8vIGNoYXJhY3RlciBhcmUgc2FpZCB0byBiZSAnYWxpZ25lZCcgLS0gYW55IGxpbmVzIGJlbG93IGFyZQogICAgLy8gaW5kZW50ZWQgYWxsIHRoZSB3YXkgdG8gdGhlIG9wZW5pbmcgY2hhcmFjdGVyLgogICAgaWYgKGFsaWduICE9IG51bGwpCiAgICAgIHRoaXMuYWxpZ24gPSBhbGlnbjsKICAgIC8vIFBhcmVudCBzY29wZSwgaWYgYW55LgogICAgdGhpcy5wcmV2ID0gcHJldjsKICAgIHRoaXMuaW5mbyA9IGluZm87CiAgfQoKICAvLyBNeSBmYXZvdXJpdGUgSmF2YVNjcmlwdCBpbmRlbnRhdGlvbiBydWxlcy4KICBmdW5jdGlvbiBpbmRlbnRKUyhsZXhpY2FsKSB7CiAgICByZXR1cm4gZnVuY3Rpb24oZmlyc3RDaGFycykgewogICAgICB2YXIgZmlyc3RDaGFyID0gZmlyc3RDaGFycyAmJiBmaXJzdENoYXJzLmNoYXJBdCgwKSwgdHlwZSA9IGxleGljYWwudHlwZTsKICAgICAgdmFyIGNsb3NpbmcgPSBmaXJzdENoYXIgPT0gdHlwZTsKICAgICAgaWYgKHR5cGUgPT0gInZhcmRlZiIpCiAgICAgICAgcmV0dXJuIGxleGljYWwuaW5kZW50ZWQgKyA0OwogICAgICBlbHNlIGlmICh0eXBlID09ICJmb3JtIiAmJiBmaXJzdENoYXIgPT0gInsiKQogICAgICAgIHJldHVybiBsZXhpY2FsLmluZGVudGVkOwogICAgICBlbHNlIGlmICh0eXBlID09ICJzdGF0IiB8fCB0eXBlID09ICJmb3JtIikKICAgICAgICByZXR1cm4gbGV4aWNhbC5pbmRlbnRlZCArIGluZGVudFVuaXQ7CiAgICAgIGVsc2UgaWYgKGxleGljYWwuaW5mbyA9PSAic3dpdGNoIiAmJiAhY2xvc2luZykKICAgICAgICByZXR1cm4gbGV4aWNhbC5pbmRlbnRlZCArICgvXig/OmNhc2V8ZGVmYXVsdClcYi8udGVzdChmaXJzdENoYXJzKSA/IGluZGVudFVuaXQgOiAyICogaW5kZW50VW5pdCk7CiAgICAgIGVsc2UgaWYgKGxleGljYWwuYWxpZ24pCiAgICAgICAgcmV0dXJuIGxleGljYWwuY29sdW1uIC0gKGNsb3NpbmcgPyAxIDogMCk7CiAgICAgIGVsc2UKICAgICAgICByZXR1cm4gbGV4aWNhbC5pbmRlbnRlZCArIChjbG9zaW5nID8gMCA6IGluZGVudFVuaXQpOwogICAgfTsKICB9CgogIC8vIFRoZSBwYXJzZXItaXRlcmF0b3ItcHJvZHVjaW5nIGZ1bmN0aW9uIGl0c2VsZi4KICBmdW5jdGlvbiBwYXJzZUpTKGlucHV0LCBiYXNlY29sdW1uKSB7CiAgICAvLyBXcmFwIHRoZSBpbnB1dCBpbiBhIHRva2VuIHN0cmVhbQogICAgdmFyIHRva2VucyA9IHRva2VuaXplSmF2YVNjcmlwdChpbnB1dCk7CiAgICAvLyBUaGUgcGFyc2VyIHN0YXRlLiBjYyBpcyBhIHN0YWNrIG9mIGFjdGlvbnMgdGhhdCBoYXZlIHRvIGJlCiAgICAvLyBwZXJmb3JtZWQgdG8gZmluaXNoIHRoZSBjdXJyZW50IHN0YXRlbWVudC4gRm9yIGV4YW1wbGUgd2UgbWlnaHQKICAgIC8vIGtub3cgdGhhdCB3ZSBzdGlsbCBuZWVkIHRvIGZpbmQgYSBjbG9zaW5nIHBhcmVudGhlc2lzIGFuZCBhCiAgICAvLyBzZW1pY29sb24uIEFjdGlvbnMgYXQgdGhlIGVuZCBvZiB0aGUgc3RhY2sgZ28gZmlyc3QuIEl0IGlzCiAgICAvLyBpbml0aWFsaXplZCB3aXRoIGFuIGluZmluaXRlbHkgbG9vcGluZyBhY3Rpb24gdGhhdCBjb25zdW1lcwogICAgLy8gd2hvbGUgc3RhdGVtZW50cy4KICAgIHZhciBjYyA9IFtqc29uID8gZXhwcmVzc2lvbnMgOiBzdGF0ZW1lbnRzXTsKICAgIC8vIENvbnRleHQgY29udGFpbnMgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGN1cnJlbnQgbG9jYWwgc2NvcGUsIHRoZQogICAgLy8gdmFyaWFibGVzIGRlZmluZWQgaW4gdGhhdCwgYW5kIHRoZSBzY29wZXMgYWJvdmUgaXQuCiAgICB2YXIgY29udGV4dCA9IG51bGw7CiAgICAvLyBUaGUgbGV4aWNhbCBzY29wZSwgdXNlZCBtb3N0bHkgZm9yIGluZGVudGF0aW9uLgogICAgdmFyIGxleGljYWwgPSBuZXcgSlNMZXhpY2FsKChiYXNlY29sdW1uIHx8IDApIC0gaW5kZW50VW5pdCwgMCwgImJsb2NrIiwgZmFsc2UpOwogICAgLy8gQ3VycmVudCBjb2x1bW4sIGFuZCB0aGUgaW5kZW50YXRpb24gYXQgdGhlIHN0YXJ0IG9mIHRoZSBjdXJyZW50CiAgICAvLyBsaW5lLiBVc2VkIHRvIGNyZWF0ZSBsZXhpY2FsIHNjb3BlIG9iamVjdHMuCiAgICB2YXIgY29sdW1uID0gMDsKICAgIHZhciBpbmRlbnRlZCA9IDA7CiAgICAvLyBWYXJpYWJsZXMgd2hpY2ggYXJlIHVzZWQgYnkgdGhlIG1hcmssIGNvbnQsIGFuZCBwYXNzIGZ1bmN0aW9ucwogICAgLy8gYmVsb3cgdG8gY29tbXVuaWNhdGUgd2l0aCB0aGUgZHJpdmVyIGxvb3AgaW4gdGhlICduZXh0JwogICAgLy8gZnVuY3Rpb24uCiAgICB2YXIgY29uc3VtZSwgbWFya2VkOwogIAogICAgLy8gVGhlIGl0ZXJhdG9yIG9iamVjdC4KICAgIHZhciBwYXJzZXIgPSB7bmV4dDogbmV4dCwgY29weTogY29weX07CgogICAgZnVuY3Rpb24gbmV4dCgpewogICAgICAvLyBTdGFydCBieSBwZXJmb3JtaW5nIGFueSAnbGV4aWNhbCcgYWN0aW9ucyAoYWRqdXN0aW5nIHRoZQogICAgICAvLyBsZXhpY2FsIHZhcmlhYmxlKSwgb3IgdGhlIG9wZXJhdGlvbnMgYmVsb3cgd2lsbCBiZSB3b3JraW5nCiAgICAgIC8vIHdpdGggdGhlIHdyb25nIGxleGljYWwgc3RhdGUuCiAgICAgIHdoaWxlKGNjW2NjLmxlbmd0aCAtIDFdLmxleCkKICAgICAgICBjYy5wb3AoKSgpOwoKICAgICAgLy8gRmV0Y2ggYSB0b2tlbi4KICAgICAgdmFyIHRva2VuID0gdG9rZW5zLm5leHQoKTsKCiAgICAgIC8vIEFkanVzdCBjb2x1bW4gYW5kIGluZGVudGVkLgogICAgICBpZiAodG9rZW4udHlwZSA9PSAid2hpdGVzcGFjZSIgJiYgY29sdW1uID09IDApCiAgICAgICAgaW5kZW50ZWQgPSB0b2tlbi52YWx1ZS5sZW5ndGg7CiAgICAgIGNvbHVtbiArPSB0b2tlbi52YWx1ZS5sZW5ndGg7CiAgICAgIGlmICh0b2tlbi5jb250ZW50ID09ICJcbiIpewogICAgICAgIGluZGVudGVkID0gY29sdW1uID0gMDsKICAgICAgICAvLyBJZiB0aGUgbGV4aWNhbCBzY29wZSdzIGFsaWduIHByb3BlcnR5IGlzIHN0aWxsIHVuZGVmaW5lZCBhdAogICAgICAgIC8vIHRoZSBlbmQgb2YgdGhlIGxpbmUsIGl0IGlzIGFuIHVuLWFsaWduZWQgc2NvcGUuCiAgICAgICAgaWYgKCEoImFsaWduIiBpbiBsZXhpY2FsKSkKICAgICAgICAgIGxleGljYWwuYWxpZ24gPSBmYWxzZTsKICAgICAgICAvLyBOZXdsaW5lIHRva2VucyBnZXQgYW4gaW5kZW50YXRpb24gZnVuY3Rpb24gYXNzb2NpYXRlZCB3aXRoCiAgICAgICAgLy8gdGhlbS4KICAgICAgICB0b2tlbi5pbmRlbnRhdGlvbiA9IGluZGVudEpTKGxleGljYWwpOwogICAgICB9CiAgICAgIC8vIE5vIG1vcmUgcHJvY2Vzc2luZyBmb3IgbWVhbmluZ2xlc3MgdG9rZW5zLgogICAgICBpZiAodG9rZW4udHlwZSA9PSAid2hpdGVzcGFjZSIgfHwgdG9rZW4udHlwZSA9PSAiY29tbWVudCIpCiAgICAgICAgcmV0dXJuIHRva2VuOwogICAgICAvLyBXaGVuIGEgbWVhbmluZ2Z1bCB0b2tlbiBpcyBmb3VuZCBhbmQgdGhlIGxleGljYWwgc2NvcGUncwogICAgICAvLyBhbGlnbiBpcyB1bmRlZmluZWQsIGl0IGlzIGFuIGFsaWduZWQgc2NvcGUuCiAgICAgIGlmICghKCJhbGlnbiIgaW4gbGV4aWNhbCkpCiAgICAgICAgbGV4aWNhbC5hbGlnbiA9IHRydWU7CgogICAgICAvLyBFeGVjdXRlIGFjdGlvbnMgdW50aWwgb25lICdjb25zdW1lcycgdGhlIHRva2VuIGFuZCB3ZSBjYW4KICAgICAgLy8gcmV0dXJuIGl0LgogICAgICB3aGlsZSh0cnVlKSB7CiAgICAgICAgY29uc3VtZSA9IG1hcmtlZCA9IGZhbHNlOwogICAgICAgIC8vIFRha2UgYW5kIGV4ZWN1dGUgdGhlIHRvcG1vc3QgYWN0aW9uLgogICAgICAgIGNjLnBvcCgpKHRva2VuLnR5cGUsIHRva2VuLmNvbnRlbnQpOwogICAgICAgIGlmIChjb25zdW1lKXsKICAgICAgICAgIC8vIE1hcmtlZCBpcyB1c2VkIHRvIGNoYW5nZSB0aGUgc3R5bGUgb2YgdGhlIGN1cnJlbnQgdG9rZW4uCiAgICAgICAgICBpZiAobWFya2VkKQogICAgICAgICAgICB0b2tlbi5zdHlsZSA9IG1hcmtlZDsKICAgICAgICAgIC8vIEhlcmUgd2UgZGlmZmVyZW50aWF0ZSBiZXR3ZWVuIGxvY2FsIGFuZCBnbG9iYWwgdmFyaWFibGVzLgogICAgICAgICAgZWxzZSBpZiAodG9rZW4udHlwZSA9PSAidmFyaWFibGUiICYmIGluU2NvcGUodG9rZW4uY29udGVudCkpCiAgICAgICAgICAgIHRva2VuLnN0eWxlID0gImpzLWxvY2FsdmFyaWFibGUiOwogICAgICAgICAgcmV0dXJuIHRva2VuOwogICAgICAgIH0KICAgICAgfQogICAgfQoKICAgIC8vIFRoaXMgbWFrZXMgYSBjb3B5IG9mIHRoZSBwYXJzZXIgc3RhdGUuIEl0IHN0b3JlcyBhbGwgdGhlCiAgICAvLyBzdGF0ZWZ1bCB2YXJpYWJsZXMgaW4gYSBjbG9zdXJlLCBhbmQgcmV0dXJucyBhIGZ1bmN0aW9uIHRoYXQKICAgIC8vIHdpbGwgcmVzdG9yZSB0aGVtIHdoZW4gY2FsbGVkIHdpdGggYSBuZXcgaW5wdXQgc3RyZWFtLiBOb3RlCiAgICAvLyB0aGF0IHRoZSBjYyBhcnJheSBoYXMgdG8gYmUgY29waWVkLCBiZWNhdXNlIGl0IGlzIGNvbnRhbnRseQogICAgLy8gYmVpbmcgbW9kaWZpZWQuIExleGljYWwgb2JqZWN0cyBhcmUgbm90IG11dGF0ZWQsIGFuZCBjb250ZXh0CiAgICAvLyBvYmplY3RzIGFyZSBub3QgbXV0YXRlZCBpbiBhIGhhcm1mdWwgd2F5LCBzbyB0aGV5IGNhbiBiZSBzaGFyZWQKICAgIC8vIGJldHdlZW4gcnVucyBvZiB0aGUgcGFyc2VyLgogICAgZnVuY3Rpb24gY29weSgpewogICAgICB2YXIgX2NvbnRleHQgPSBjb250ZXh0LCBfbGV4aWNhbCA9IGxleGljYWwsIF9jYyA9IGNjLmNvbmNhdChbXSksIF90b2tlblN0YXRlID0gdG9rZW5zLnN0YXRlOwogIAogICAgICByZXR1cm4gZnVuY3Rpb24gY29weVBhcnNlcihpbnB1dCl7CiAgICAgICAgY29udGV4dCA9IF9jb250ZXh0OwogICAgICAgIGxleGljYWwgPSBfbGV4aWNhbDsKICAgICAgICBjYyA9IF9jYy5jb25jYXQoW10pOyAvLyBjb3BpZXMgdGhlIGFycmF5CiAgICAgICAgY29sdW1uID0gaW5kZW50ZWQgPSAwOwogICAgICAgIHRva2VucyA9IHRva2VuaXplSmF2YVNjcmlwdChpbnB1dCwgX3Rva2VuU3RhdGUpOwogICAgICAgIHJldHVybiBwYXJzZXI7CiAgICAgIH07CiAgICB9CgogICAgLy8gSGVscGVyIGZ1bmN0aW9uIGZvciBwdXNoaW5nIGEgbnVtYmVyIG9mIGFjdGlvbnMgb250byB0aGUgY2MKICAgIC8vIHN0YWNrIGluIHJldmVyc2Ugb3JkZXIuCiAgICBmdW5jdGlvbiBwdXNoKGZzKXsKICAgICAgZm9yICh2YXIgaSA9IGZzLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKQogICAgICAgIGNjLnB1c2goZnNbaV0pOwogICAgfQogICAgLy8gY29udCBhbmQgcGFzcyBhcmUgdXNlZCBieSB0aGUgYWN0aW9uIGZ1bmN0aW9ucyB0byBhZGQgb3RoZXIKICAgIC8vIGFjdGlvbnMgdG8gdGhlIHN0YWNrLiBjb250IHdpbGwgY2F1c2UgdGhlIGN1cnJlbnQgdG9rZW4gdG8gYmUKICAgIC8vIGNvbnN1bWVkLCBwYXNzIHdpbGwgbGVhdmUgaXQgZm9yIHRoZSBuZXh0IGFjdGlvbi4KICAgIGZ1bmN0aW9uIGNvbnQoKXsKICAgICAgcHVzaChhcmd1bWVudHMpOwogICAgICBjb25zdW1lID0gdHJ1ZTsKICAgIH0KICAgIGZ1bmN0aW9uIHBhc3MoKXsKICAgICAgcHVzaChhcmd1bWVudHMpOwogICAgICBjb25zdW1lID0gZmFsc2U7CiAgICB9CiAgICAvLyBVc2VkIHRvIGNoYW5nZSB0aGUgc3R5bGUgb2YgdGhlIGN1cnJlbnQgdG9rZW4uCiAgICBmdW5jdGlvbiBtYXJrKHN0eWxlKXsKICAgICAgbWFya2VkID0gc3R5bGU7CiAgICB9CgogICAgLy8gUHVzaCBhIG5ldyBzY29wZS4gV2lsbCBhdXRvbWF0aWNhbGx5IGxpbmsgdGhlIGN1cnJlbnQgc2NvcGUuCiAgICBmdW5jdGlvbiBwdXNoY29udGV4dCgpewogICAgICBjb250ZXh0ID0ge3ByZXY6IGNvbnRleHQsIHZhcnM6IHsidGhpcyI6IHRydWUsICJhcmd1bWVudHMiOiB0cnVlfX07CiAgICB9CiAgICAvLyBQb3Agb2ZmIHRoZSBjdXJyZW50IHNjb3BlLgogICAgZnVuY3Rpb24gcG9wY29udGV4dCgpewogICAgICBjb250ZXh0ID0gY29udGV4dC5wcmV2OwogICAgfQogICAgLy8gUmVnaXN0ZXIgYSB2YXJpYWJsZSBpbiB0aGUgY3VycmVudCBzY29wZS4KICAgIGZ1bmN0aW9uIHJlZ2lzdGVyKHZhcm5hbWUpewogICAgICBpZiAoY29udGV4dCl7CiAgICAgICAgbWFyaygianMtdmFyaWFibGVkZWYiKTsKICAgICAgICBjb250ZXh0LnZhcnNbdmFybmFtZV0gPSB0cnVlOwogICAgICB9CiAgICB9CiAgICAvLyBDaGVjayB3aGV0aGVyIGEgdmFyaWFibGUgaXMgZGVmaW5lZCBpbiB0aGUgY3VycmVudCBzY29wZS4KICAgIGZ1bmN0aW9uIGluU2NvcGUodmFybmFtZSl7CiAgICAgIHZhciBjdXJzb3IgPSBjb250ZXh0OwogICAgICB3aGlsZSAoY3Vyc29yKSB7CiAgICAgICAgaWYgKGN1cnNvci52YXJzW3Zhcm5hbWVdKQogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgY3Vyc29yID0gY3Vyc29yLnByZXY7CiAgICAgIH0KICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQogIAogICAgLy8gUHVzaCBhIG5ldyBsZXhpY2FsIGNvbnRleHQgb2YgdGhlIGdpdmVuIHR5cGUuCiAgICBmdW5jdGlvbiBwdXNobGV4KHR5cGUsIGluZm8pIHsKICAgICAgdmFyIHJlc3VsdCA9IGZ1bmN0aW9uKCl7CiAgICAgICAgbGV4aWNhbCA9IG5ldyBKU0xleGljYWwoaW5kZW50ZWQsIGNvbHVtbiwgdHlwZSwgbnVsbCwgbGV4aWNhbCwgaW5mbykKICAgICAgfTsKICAgICAgcmVzdWx0LmxleCA9IHRydWU7CiAgICAgIHJldHVybiByZXN1bHQ7CiAgICB9CiAgICAvLyBQb3Agb2ZmIHRoZSBjdXJyZW50IGxleGljYWwgY29udGV4dC4KICAgIGZ1bmN0aW9uIHBvcGxleCgpewogICAgICBpZiAobGV4aWNhbC50eXBlID09ICIpIikKICAgICAgICBpbmRlbnRlZCA9IGxleGljYWwuaW5kZW50ZWQ7CiAgICAgIGxleGljYWwgPSBsZXhpY2FsLnByZXY7CiAgICB9CiAgICBwb3BsZXgubGV4ID0gdHJ1ZTsKICAgIC8vIFRoZSAnbGV4JyBmbGFnIG9uIHRoZXNlIGFjdGlvbnMgaXMgdXNlZCBieSB0aGUgJ25leHQnIGZ1bmN0aW9uCiAgICAvLyB0byBrbm93IHRoZXkgY2FuIChhbmQgaGF2ZSB0bykgYmUgcmFuIGJlZm9yZSBtb3Zpbmcgb24gdG8gdGhlCiAgICAvLyBuZXh0IHRva2VuLgogIAogICAgLy8gQ3JlYXRlcyBhbiBhY3Rpb24gdGhhdCBkaXNjYXJkcyB0b2tlbnMgdW50aWwgaXQgZmluZHMgb25lIG9mCiAgICAvLyB0aGUgZ2l2ZW4gdHlwZS4KICAgIGZ1bmN0aW9uIGV4cGVjdCh3YW50ZWQpewogICAgICByZXR1cm4gZnVuY3Rpb24gZXhwZWN0aW5nKHR5cGUpewogICAgICAgIGlmICh0eXBlID09IHdhbnRlZCkgY29udCgpOwogICAgICAgIGVsc2UgaWYgKHdhbnRlZCA9PSAiOyIpIHBhc3MoKTsKICAgICAgICBlbHNlIGNvbnQoYXJndW1lbnRzLmNhbGxlZSk7CiAgICAgIH07CiAgICB9CgogICAgLy8gTG9va3MgZm9yIGEgc3RhdGVtZW50LCBhbmQgdGhlbiBjYWxscyBpdHNlbGYuCiAgICBmdW5jdGlvbiBzdGF0ZW1lbnRzKHR5cGUpewogICAgICByZXR1cm4gcGFzcyhzdGF0ZW1lbnQsIHN0YXRlbWVudHMpOwogICAgfQogICAgZnVuY3Rpb24gZXhwcmVzc2lvbnModHlwZSl7CiAgICAgIHJldHVybiBwYXNzKGV4cHJlc3Npb24sIGV4cHJlc3Npb25zKTsKICAgIH0KICAgIC8vIERpc3BhdGNoZXMgdmFyaW91cyB0eXBlcyBvZiBzdGF0ZW1lbnRzIGJhc2VkIG9uIHRoZSB0eXBlIG9mIHRoZQogICAgLy8gY3VycmVudCB0b2tlbi4KICAgIGZ1bmN0aW9uIHN0YXRlbWVudCh0eXBlKXsKICAgICAgaWYgKHR5cGUgPT0gInZhciIpIGNvbnQocHVzaGxleCgidmFyZGVmIiksIHZhcmRlZjEsIGV4cGVjdCgiOyIpLCBwb3BsZXgpOwogICAgICBlbHNlIGlmICh0eXBlID09ICJrZXl3b3JkIGEiKSBjb250KHB1c2hsZXgoImZvcm0iKSwgZXhwcmVzc2lvbiwgc3RhdGVtZW50LCBwb3BsZXgpOwogICAgICBlbHNlIGlmICh0eXBlID09ICJrZXl3b3JkIGIiKSBjb250KHB1c2hsZXgoImZvcm0iKSwgc3RhdGVtZW50LCBwb3BsZXgpOwogICAgICBlbHNlIGlmICh0eXBlID09ICJ7IikgY29udChwdXNobGV4KCJ9IiksIGJsb2NrLCBwb3BsZXgpOwogICAgICBlbHNlIGlmICh0eXBlID09ICI7IikgY29udCgpOwogICAgICBlbHNlIGlmICh0eXBlID09ICJmdW5jdGlvbiIpIGNvbnQoZnVuY3Rpb25kZWYpOwogICAgICBlbHNlIGlmICh0eXBlID09ICJmb3IiKSBjb250KHB1c2hsZXgoImZvcm0iKSwgZXhwZWN0KCIoIiksIHB1c2hsZXgoIikiKSwgZm9yc3BlYzEsIGV4cGVjdCgiKSIpLCBwb3BsZXgsIHN0YXRlbWVudCwgcG9wbGV4KTsKICAgICAgZWxzZSBpZiAodHlwZSA9PSAidmFyaWFibGUiKSBjb250KHB1c2hsZXgoInN0YXQiKSwgbWF5YmVsYWJlbCk7CiAgICAgIGVsc2UgaWYgKHR5cGUgPT0gInN3aXRjaCIpIGNvbnQocHVzaGxleCgiZm9ybSIpLCBleHByZXNzaW9uLCBwdXNobGV4KCJ9IiwgInN3aXRjaCIpLCBleHBlY3QoInsiKSwgYmxvY2ssIHBvcGxleCwgcG9wbGV4KTsKICAgICAgZWxzZSBpZiAodHlwZSA9PSAiY2FzZSIpIGNvbnQoZXhwcmVzc2lvbiwgZXhwZWN0KCI6IikpOwogICAgICBlbHNlIGlmICh0eXBlID09ICJkZWZhdWx0IikgY29udChleHBlY3QoIjoiKSk7CiAgICAgIGVsc2UgaWYgKHR5cGUgPT0gImNhdGNoIikgY29udChwdXNobGV4KCJmb3JtIiksIHB1c2hjb250ZXh0LCBleHBlY3QoIigiKSwgZnVuYXJnLCBleHBlY3QoIikiKSwgc3RhdGVtZW50LCBwb3BsZXgsIHBvcGNvbnRleHQpOwogICAgICBlbHNlIHBhc3MocHVzaGxleCgic3RhdCIpLCBleHByZXNzaW9uLCBleHBlY3QoIjsiKSwgcG9wbGV4KTsKICAgIH0KICAgIC8vIERpc3BhdGNoIGV4cHJlc3Npb24gdHlwZXMuCiAgICBmdW5jdGlvbiBleHByZXNzaW9uKHR5cGUpewogICAgICBpZiAoYXRvbWljVHlwZXMuaGFzT3duUHJvcGVydHkodHlwZSkpIGNvbnQobWF5YmVvcGVyYXRvcik7CiAgICAgIGVsc2UgaWYgKHR5cGUgPT0gImZ1bmN0aW9uIikgY29udChmdW5jdGlvbmRlZik7CiAgICAgIGVsc2UgaWYgKHR5cGUgPT0gImtleXdvcmQgYyIpIGNvbnQoZXhwcmVzc2lvbik7CiAgICAgIGVsc2UgaWYgKHR5cGUgPT0gIigiKSBjb250KHB1c2hsZXgoIikiKSwgZXhwcmVzc2lvbiwgZXhwZWN0KCIpIiksIHBvcGxleCwgbWF5YmVvcGVyYXRvcik7CiAgICAgIGVsc2UgaWYgKHR5cGUgPT0gIm9wZXJhdG9yIikgY29udChleHByZXNzaW9uKTsKICAgICAgZWxzZSBpZiAodHlwZSA9PSAiWyIpIGNvbnQocHVzaGxleCgiXSIpLCBjb21tYXNlcChleHByZXNzaW9uLCAiXSIpLCBwb3BsZXgsIG1heWJlb3BlcmF0b3IpOwogICAgICBlbHNlIGlmICh0eXBlID09ICJ7IikgY29udChwdXNobGV4KCJ9IiksIGNvbW1hc2VwKG9ianByb3AsICJ9IiksIHBvcGxleCwgbWF5YmVvcGVyYXRvcik7CiAgICAgIGVsc2UgY29udCgpOwogICAgfQogICAgLy8gQ2FsbGVkIGZvciBwbGFjZXMgd2hlcmUgb3BlcmF0b3JzLCBmdW5jdGlvbiBjYWxscywgb3IKICAgIC8vIHN1YnNjcmlwdHMgYXJlIHZhbGlkLiBXaWxsIHNraXAgb24gdG8gdGhlIG5leHQgYWN0aW9uIGlmIG5vbmUKICAgIC8vIGlzIGZvdW5kLgogICAgZnVuY3Rpb24gbWF5YmVvcGVyYXRvcih0eXBlLCB2YWx1ZSl7CiAgICAgIGlmICh0eXBlID09ICJvcGVyYXRvciIgJiYgL1wrXCt8LS0vLnRlc3QodmFsdWUpKSBjb250KG1heWJlb3BlcmF0b3IpOwogICAgICBlbHNlIGlmICh0eXBlID09ICJvcGVyYXRvciIpIGNvbnQoZXhwcmVzc2lvbik7CiAgICAgIGVsc2UgaWYgKHR5cGUgPT0gIjsiKSBwYXNzKCk7CiAgICAgIGVsc2UgaWYgKHR5cGUgPT0gIigiKSBjb250KHB1c2hsZXgoIikiKSwgY29tbWFzZXAoZXhwcmVzc2lvbiwgIikiKSwgcG9wbGV4LCBtYXliZW9wZXJhdG9yKTsKICAgICAgZWxzZSBpZiAodHlwZSA9PSAiLiIpIGNvbnQocHJvcGVydHksIG1heWJlb3BlcmF0b3IpOwogICAgICBlbHNlIGlmICh0eXBlID09ICJbIikgY29udChwdXNobGV4KCJdIiksIGV4cHJlc3Npb24sIGV4cGVjdCgiXSIpLCBwb3BsZXgsIG1heWJlb3BlcmF0b3IpOwogICAgfQogICAgLy8gV2hlbiBhIHN0YXRlbWVudCBzdGFydHMgd2l0aCBhIHZhcmlhYmxlIG5hbWUsIGl0IG1pZ2h0IGJlIGEKICAgIC8vIGxhYmVsLiBJZiBubyBjb2xvbiBmb2xsb3dzLCBpdCdzIGEgcmVndWxhciBzdGF0ZW1lbnQuCiAgICBmdW5jdGlvbiBtYXliZWxhYmVsKHR5cGUpewogICAgICBpZiAodHlwZSA9PSAiOiIpIGNvbnQocG9wbGV4LCBzdGF0ZW1lbnQpOwogICAgICBlbHNlIHBhc3MobWF5YmVvcGVyYXRvciwgZXhwZWN0KCI7IiksIHBvcGxleCk7CiAgICB9CiAgICAvLyBQcm9wZXJ0eSBuYW1lcyBuZWVkIHRvIGhhdmUgdGhlaXIgc3R5bGUgYWRqdXN0ZWQgLS0gdGhlCiAgICAvLyB0b2tlbml6ZXIgdGhpbmtzIHRoZXkgYXJlIHZhcmlhYmxlcy4KICAgIGZ1bmN0aW9uIHByb3BlcnR5KHR5cGUpewogICAgICBpZiAodHlwZSA9PSAidmFyaWFibGUiKSB7bWFyaygianMtcHJvcGVydHkiKTsgY29udCgpO30KICAgIH0KICAgIC8vIFRoaXMgcGFyc2VzIGEgcHJvcGVydHkgYW5kIGl0cyB2YWx1ZSBpbiBhbiBvYmplY3QgbGl0ZXJhbC4KICAgIGZ1bmN0aW9uIG9ianByb3AodHlwZSl7CiAgICAgIGlmICh0eXBlID09ICJ2YXJpYWJsZSIpIG1hcmsoImpzLXByb3BlcnR5Iik7CiAgICAgIGlmIChhdG9taWNUeXBlcy5oYXNPd25Qcm9wZXJ0eSh0eXBlKSkgY29udChleHBlY3QoIjoiKSwgZXhwcmVzc2lvbik7CiAgICB9CiAgICAvLyBQYXJzZXMgYSBjb21tYS1zZXBhcmF0ZWQgbGlzdCBvZiB0aGUgdGhpbmdzIHRoYXQgYXJlIHJlY29nbml6ZWQKICAgIC8vIGJ5IHRoZSAnd2hhdCcgYXJndW1lbnQuCiAgICBmdW5jdGlvbiBjb21tYXNlcCh3aGF0LCBlbmQpewogICAgICBmdW5jdGlvbiBwcm9jZWVkKHR5cGUpIHsKICAgICAgICBpZiAodHlwZSA9PSAiLCIpIGNvbnQod2hhdCwgcHJvY2VlZCk7CiAgICAgICAgZWxzZSBpZiAodHlwZSA9PSBlbmQpIGNvbnQoKTsKICAgICAgICBlbHNlIGNvbnQoZXhwZWN0KGVuZCkpOwogICAgICB9CiAgICAgIHJldHVybiBmdW5jdGlvbiBjb21tYVNlcGFyYXRlZCh0eXBlKSB7CiAgICAgICAgaWYgKHR5cGUgPT0gZW5kKSBjb250KCk7CiAgICAgICAgZWxzZSBwYXNzKHdoYXQsIHByb2NlZWQpOwogICAgICB9OwogICAgfQogICAgLy8gTG9vayBmb3Igc3RhdGVtZW50cyB1bnRpbCBhIGNsb3NpbmcgYnJhY2UgaXMgZm91bmQuCiAgICBmdW5jdGlvbiBibG9jayh0eXBlKXsKICAgICAgaWYgKHR5cGUgPT0gIn0iKSBjb250KCk7CiAgICAgIGVsc2UgcGFzcyhzdGF0ZW1lbnQsIGJsb2NrKTsKICAgIH0KICAgIC8vIFZhcmlhYmxlIGRlZmluaXRpb25zIGFyZSBzcGxpdCBpbnRvIHR3byBhY3Rpb25zIC0tIDEgbG9va3MgZm9yCiAgICAvLyBhIG5hbWUgb3IgdGhlIGVuZCBvZiB0aGUgZGVmaW5pdGlvbiwgMiBsb29rcyBmb3IgYW4gJz0nIHNpZ24gb3IKICAgIC8vIGEgY29tbWEuCiAgICBmdW5jdGlvbiB2YXJkZWYxKHR5cGUsIHZhbHVlKXsKICAgICAgaWYgKHR5cGUgPT0gInZhcmlhYmxlIil7cmVnaXN0ZXIodmFsdWUpOyBjb250KHZhcmRlZjIpO30KICAgICAgZWxzZSBjb250KCk7CiAgICB9CiAgICBmdW5jdGlvbiB2YXJkZWYyKHR5cGUsIHZhbHVlKXsKICAgICAgaWYgKHZhbHVlID09ICI9IikgY29udChleHByZXNzaW9uLCB2YXJkZWYyKTsKICAgICAgZWxzZSBpZiAodHlwZSA9PSAiLCIpIGNvbnQodmFyZGVmMSk7CiAgICB9CiAgICAvLyBGb3IgbG9vcHMuCiAgICBmdW5jdGlvbiBmb3JzcGVjMSh0eXBlKXsKICAgICAgaWYgKHR5cGUgPT0gInZhciIpIGNvbnQodmFyZGVmMSwgZm9yc3BlYzIpOwogICAgICBlbHNlIGlmICh0eXBlID09ICI7IikgcGFzcyhmb3JzcGVjMik7CiAgICAgIGVsc2UgaWYgKHR5cGUgPT0gInZhcmlhYmxlIikgY29udChmb3JtYXliZWluKTsKICAgICAgZWxzZSBwYXNzKGZvcnNwZWMyKTsKICAgIH0KICAgIGZ1bmN0aW9uIGZvcm1heWJlaW4odHlwZSwgdmFsdWUpewogICAgICBpZiAodmFsdWUgPT0gImluIikgY29udChleHByZXNzaW9uKTsKICAgICAgZWxzZSBjb250KG1heWJlb3BlcmF0b3IsIGZvcnNwZWMyKTsKICAgIH0KICAgIGZ1bmN0aW9uIGZvcnNwZWMyKHR5cGUsIHZhbHVlKXsKICAgICAgaWYgKHR5cGUgPT0gIjsiKSBjb250KGZvcnNwZWMzKTsKICAgICAgZWxzZSBpZiAodmFsdWUgPT0gImluIikgY29udChleHByZXNzaW9uKTsKICAgICAgZWxzZSBjb250KGV4cHJlc3Npb24sIGV4cGVjdCgiOyIpLCBmb3JzcGVjMyk7CiAgICB9CiAgICBmdW5jdGlvbiBmb3JzcGVjMyh0eXBlKSB7CiAgICAgIGlmICh0eXBlID09ICIpIikgcGFzcygpOwogICAgICBlbHNlIGNvbnQoZXhwcmVzc2lvbik7CiAgICB9CiAgICAvLyBBIGZ1bmN0aW9uIGRlZmluaXRpb24gY3JlYXRlcyBhIG5ldyBjb250ZXh0LCBhbmQgdGhlIHZhcmlhYmxlcwogICAgLy8gaW4gaXRzIGFyZ3VtZW50IGxpc3QgaGF2ZSB0byBiZSBhZGRlZCB0byB0aGlzIGNvbnRleHQuCiAgICBmdW5jdGlvbiBmdW5jdGlvbmRlZih0eXBlLCB2YWx1ZSl7CiAgICAgIGlmICh0eXBlID09ICJ2YXJpYWJsZSIpe3JlZ2lzdGVyKHZhbHVlKTsgY29udChmdW5jdGlvbmRlZik7fQogICAgICBlbHNlIGlmICh0eXBlID09ICIoIikgY29udChwdXNoY29udGV4dCwgY29tbWFzZXAoZnVuYXJnLCAiKSIpLCBzdGF0ZW1lbnQsIHBvcGNvbnRleHQpOwogICAgfQogICAgZnVuY3Rpb24gZnVuYXJnKHR5cGUsIHZhbHVlKXsKICAgICAgaWYgKHR5cGUgPT0gInZhcmlhYmxlIil7cmVnaXN0ZXIodmFsdWUpOyBjb250KCk7fQogICAgfQogIAogICAgcmV0dXJuIHBhcnNlcjsKICB9CgogIHJldHVybiB7CiAgICBtYWtlOiBwYXJzZUpTLAogICAgZWxlY3RyaWNDaGFyczogInt9OiIsCiAgICBjb25maWd1cmU6IGZ1bmN0aW9uKG9iaikgewogICAgICBpZiAob2JqLmpzb24gIT0gbnVsbCkganNvbiA9IG9iai5qc29uOwogICAgfQogIH07Cn0pKCk7Cg==]]></data>
	</file>
	<file>
	  <filename>/includes/CodeMirror/js/parsesparql.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[dmFyIFNwYXJxbFBhcnNlciA9IEVkaXRvci5QYXJzZXIgPSAoZnVuY3Rpb24oKSB7CiAgZnVuY3Rpb24gd29yZFJlZ2V4cCh3b3JkcykgewogICAgcmV0dXJuIG5ldyBSZWdFeHAoIl4oPzoiICsgd29yZHMuam9pbigifCIpICsgIikkIiwgImkiKTsKICB9CiAgdmFyIG9wcyA9IHdvcmRSZWdleHAoWyJzdHIiLCAibGFuZyIsICJsYW5nbWF0Y2hlcyIsICJkYXRhdHlwZSIsICJib3VuZCIsICJzYW1ldGVybSIsICJpc2lyaSIsICJpc3VyaSIsCiAgICAgICAgICAgICAgICAgICAgICAgICJpc2JsYW5rIiwgImlzbGl0ZXJhbCIsICJ1bmlvbiIsICJhIl0pOwogIHZhciBrZXl3b3JkcyA9IHdvcmRSZWdleHAoWyJiYXNlIiwgInByZWZpeCIsICJzZWxlY3QiLCAiZGlzdGluY3QiLCAicmVkdWNlZCIsICJjb25zdHJ1Y3QiLCAiZGVzY3JpYmUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICJhc2siLCAiZnJvbSIsICJuYW1lZCIsICJ3aGVyZSIsICJvcmRlciIsICJsaW1pdCIsICJvZmZzZXQiLCAiZmlsdGVyIiwgIm9wdGlvbmFsIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZ3JhcGgiLCAiYnkiLCAiYXNjIiwgImRlc2MiXSk7CiAgdmFyIG9wZXJhdG9yQ2hhcnMgPSAvWyorXC08Pj0mfF0vOwoKICB2YXIgdG9rZW5pemVTcGFycWwgPSAoZnVuY3Rpb24oKSB7CiAgICBmdW5jdGlvbiBub3JtYWwoc291cmNlLCBzZXRTdGF0ZSkgewogICAgICB2YXIgY2ggPSBzb3VyY2UubmV4dCgpOwogICAgICBpZiAoY2ggPT0gIiQiIHx8IGNoID09ICI/IikgewogICAgICAgIHNvdXJjZS5uZXh0V2hpbGVNYXRjaGVzKC9bXHdcZF0vKTsKICAgICAgICByZXR1cm4gInNwLXZhciI7CiAgICAgIH0KICAgICAgZWxzZSBpZiAoY2ggPT0gIjwiICYmICFzb3VyY2UubWF0Y2hlcygvW1xzXHUwMGEwPV0vKSkgewogICAgICAgIHNvdXJjZS5uZXh0V2hpbGVNYXRjaGVzKC9bXlxzXHUwMGEwPl0vKTsKICAgICAgICBpZiAoc291cmNlLmVxdWFscygiPiIpKSBzb3VyY2UubmV4dCgpOwogICAgICAgIHJldHVybiAic3AtdXJpIjsKICAgICAgfQogICAgICBlbHNlIGlmIChjaCA9PSAiXCIiIHx8IGNoID09ICInIikgewogICAgICAgIHNldFN0YXRlKGluTGl0ZXJhbChjaCkpOwogICAgICAgIHJldHVybiBudWxsOwogICAgICB9CiAgICAgIGVsc2UgaWYgKC9be31cKFwpLFwuO1xbXF1dLy50ZXN0KGNoKSkgewogICAgICAgIHJldHVybiAic3AtcHVuYyI7CiAgICAgIH0KICAgICAgZWxzZSBpZiAoY2ggPT0gIiMiKSB7CiAgICAgICAgd2hpbGUgKCFzb3VyY2UuZW5kT2ZMaW5lKCkpIHNvdXJjZS5uZXh0KCk7CiAgICAgICAgcmV0dXJuICJzcC1jb21tZW50IjsKICAgICAgfQogICAgICBlbHNlIGlmIChvcGVyYXRvckNoYXJzLnRlc3QoY2gpKSB7CiAgICAgICAgc291cmNlLm5leHRXaGlsZU1hdGNoZXMob3BlcmF0b3JDaGFycyk7CiAgICAgICAgcmV0dXJuICJzcC1vcGVyYXRvciI7CiAgICAgIH0KICAgICAgZWxzZSBpZiAoY2ggPT0gIjoiKSB7CiAgICAgICAgc291cmNlLm5leHRXaGlsZU1hdGNoZXMoL1tcd1xkXC5fXC1dLyk7CiAgICAgICAgcmV0dXJuICJzcC1wcmVmaXhlZCI7CiAgICAgIH0KICAgICAgZWxzZSB7CiAgICAgICAgc291cmNlLm5leHRXaGlsZU1hdGNoZXMoL1tfXHdcZF0vKTsKICAgICAgICBpZiAoc291cmNlLmVxdWFscygiOiIpKSB7CiAgICAgICAgICBzb3VyY2UubmV4dCgpOwogICAgICAgICAgc291cmNlLm5leHRXaGlsZU1hdGNoZXMoL1tcd1xkX1wtXS8pOwogICAgICAgICAgcmV0dXJuICJzcC1wcmVmaXhlZCI7CiAgICAgICAgfQogICAgICAgIHZhciB3b3JkID0gc291cmNlLmdldCgpLCB0eXBlOwogICAgICAgIGlmIChvcHMudGVzdCh3b3JkKSkKICAgICAgICAgIHR5cGUgPSAic3Atb3BlcmF0b3IiOwogICAgICAgIGVsc2UgaWYgKGtleXdvcmRzLnRlc3Qod29yZCkpCiAgICAgICAgICB0eXBlID0gInNwLWtleXdvcmQiOwogICAgICAgIGVsc2UKICAgICAgICAgIHR5cGUgPSAic3Atd29yZCI7CiAgICAgICAgcmV0dXJuIHtzdHlsZTogdHlwZSwgY29udGVudDogd29yZH07CiAgICAgIH0KICAgIH0KCiAgICBmdW5jdGlvbiBpbkxpdGVyYWwocXVvdGUpIHsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKHNvdXJjZSwgc2V0U3RhdGUpIHsKICAgICAgICB2YXIgZXNjYXBlZCA9IGZhbHNlOwogICAgICAgIHdoaWxlICghc291cmNlLmVuZE9mTGluZSgpKSB7CiAgICAgICAgICB2YXIgY2ggPSBzb3VyY2UubmV4dCgpOwogICAgICAgICAgaWYgKGNoID09IHF1b3RlICYmICFlc2NhcGVkKSB7CiAgICAgICAgICAgIHNldFN0YXRlKG5vcm1hbCk7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgfQogICAgICAgICAgZXNjYXBlZCA9ICFlc2NhcGVkICYmIGNoID09ICJcXCI7CiAgICAgICAgfQogICAgICAgIHJldHVybiAic3AtbGl0ZXJhbCI7CiAgICAgIH07CiAgICB9CgogICAgcmV0dXJuIGZ1bmN0aW9uKHNvdXJjZSwgc3RhcnRTdGF0ZSkgewogICAgICByZXR1cm4gdG9rZW5pemVyKHNvdXJjZSwgc3RhcnRTdGF0ZSB8fCBub3JtYWwpOwogICAgfTsKICB9KSgpOwoKICBmdW5jdGlvbiBpbmRlbnRTcGFycWwoY29udGV4dCkgewogICAgcmV0dXJuIGZ1bmN0aW9uKG5leHRDaGFycykgewogICAgICB2YXIgZmlyc3RDaGFyID0gbmV4dENoYXJzICYmIG5leHRDaGFycy5jaGFyQXQoMCk7CiAgICAgIGlmICgvW1xdXH1dLy50ZXN0KGZpcnN0Q2hhcikpCiAgICAgICAgd2hpbGUgKGNvbnRleHQgJiYgY29udGV4dC50eXBlID09ICJwYXR0ZXJuIikgY29udGV4dCA9IGNvbnRleHQucHJldjsKCiAgICAgIHZhciBjbG9zaW5nID0gY29udGV4dCAmJiBmaXJzdENoYXIgPT0gbWF0Y2hpbmdbY29udGV4dC50eXBlXTsKICAgICAgaWYgKCFjb250ZXh0KQogICAgICAgIHJldHVybiAwOwogICAgICBlbHNlIGlmIChjb250ZXh0LnR5cGUgPT0gInBhdHRlcm4iKQogICAgICAgIHJldHVybiBjb250ZXh0LmNvbDsKICAgICAgZWxzZSBpZiAoY29udGV4dC5hbGlnbikKICAgICAgICByZXR1cm4gY29udGV4dC5jb2wgLSAoY2xvc2luZyA/IGNvbnRleHQud2lkdGggOiAwKTsKICAgICAgZWxzZQogICAgICAgIHJldHVybiBjb250ZXh0LmluZGVudCArIChjbG9zaW5nID8gMCA6IGluZGVudFVuaXQpOwogICAgfQogIH0KCiAgZnVuY3Rpb24gcGFyc2VTcGFycWwoc291cmNlKSB7CiAgICB2YXIgdG9rZW5zID0gdG9rZW5pemVTcGFycWwoc291cmNlKTsKICAgIHZhciBjb250ZXh0ID0gbnVsbCwgaW5kZW50ID0gMCwgY29sID0gMDsKICAgIGZ1bmN0aW9uIHB1c2hDb250ZXh0KHR5cGUsIHdpZHRoKSB7CiAgICAgIGNvbnRleHQgPSB7cHJldjogY29udGV4dCwgaW5kZW50OiBpbmRlbnQsIGNvbDogY29sLCB0eXBlOiB0eXBlLCB3aWR0aDogd2lkdGh9OwogICAgfQogICAgZnVuY3Rpb24gcG9wQ29udGV4dCgpIHsKICAgICAgY29udGV4dCA9IGNvbnRleHQucHJldjsKICAgIH0KCiAgICB2YXIgaXRlciA9IHsKICAgICAgbmV4dDogZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIHRva2VuID0gdG9rZW5zLm5leHQoKSwgdHlwZSA9IHRva2VuLnN0eWxlLCBjb250ZW50ID0gdG9rZW4uY29udGVudCwgd2lkdGggPSB0b2tlbi52YWx1ZS5sZW5ndGg7CgogICAgICAgIGlmIChjb250ZW50ID09ICJcbiIpIHsKICAgICAgICAgIHRva2VuLmluZGVudGF0aW9uID0gaW5kZW50U3BhcnFsKGNvbnRleHQpOwogICAgICAgICAgaW5kZW50ID0gY29sID0gMDsKICAgICAgICAgIGlmIChjb250ZXh0ICYmIGNvbnRleHQuYWxpZ24gPT0gbnVsbCkgY29udGV4dC5hbGlnbiA9IGZhbHNlOwogICAgICAgIH0KICAgICAgICBlbHNlIGlmICh0eXBlID09ICJ3aGl0ZXNwYWNlIiAmJiBjb2wgPT0gMCkgewogICAgICAgICAgaW5kZW50ID0gd2lkdGg7CiAgICAgICAgfQogICAgICAgIGVsc2UgaWYgKHR5cGUgIT0gInNwLWNvbW1lbnQiICYmIGNvbnRleHQgJiYgY29udGV4dC5hbGlnbiA9PSBudWxsKSB7CiAgICAgICAgICBjb250ZXh0LmFsaWduID0gdHJ1ZTsKICAgICAgICB9CgogICAgICAgIGlmIChjb250ZW50ICE9ICJcbiIpIGNvbCArPSB3aWR0aDsKCiAgICAgICAgaWYgKC9bXFtce1woXS8udGVzdChjb250ZW50KSkgewogICAgICAgICAgcHVzaENvbnRleHQoY29udGVudCwgd2lkdGgpOwogICAgICAgIH0KICAgICAgICBlbHNlIGlmICgvW1xdXH1cKV0vLnRlc3QoY29udGVudCkpIHsKICAgICAgICAgIHdoaWxlIChjb250ZXh0ICYmIGNvbnRleHQudHlwZSA9PSAicGF0dGVybiIpCiAgICAgICAgICAgIHBvcENvbnRleHQoKTsKICAgICAgICAgIGlmIChjb250ZXh0ICYmIGNvbnRlbnQgPT0gbWF0Y2hpbmdbY29udGV4dC50eXBlXSkKICAgICAgICAgICAgcG9wQ29udGV4dCgpOwogICAgICAgIH0KICAgICAgICBlbHNlIGlmIChjb250ZW50ID09ICIuIiAmJiBjb250ZXh0ICYmIGNvbnRleHQudHlwZSA9PSAicGF0dGVybiIpIHsKICAgICAgICAgIHBvcENvbnRleHQoKTsKICAgICAgICB9CiAgICAgICAgZWxzZSBpZiAoKHR5cGUgPT0gInNwLXdvcmQiIHx8IHR5cGUgPT0gInNwLXByZWZpeGVkIiB8fCB0eXBlID09ICJzcC11cmkiIHx8IHR5cGUgPT0gInNwLXZhciIgfHwgdHlwZSA9PSAic3AtbGl0ZXJhbCIpICYmCiAgICAgICAgICAgICAgICAgY29udGV4dCAmJiAvW1x7XFtdLy50ZXN0KGNvbnRleHQudHlwZSkpIHsKICAgICAgICAgIHB1c2hDb250ZXh0KCJwYXR0ZXJuIiwgd2lkdGgpOwogICAgICAgIH0KCiAgICAgICAgcmV0dXJuIHRva2VuOwogICAgICB9LAoKICAgICAgY29weTogZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIF9jb250ZXh0ID0gY29udGV4dCwgX2luZGVudCA9IGluZGVudCwgX2NvbCA9IGNvbCwgX3Rva2VuU3RhdGUgPSB0b2tlbnMuc3RhdGU7CiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKHNvdXJjZSkgewogICAgICAgICAgdG9rZW5zID0gdG9rZW5pemVTcGFycWwoc291cmNlLCBfdG9rZW5TdGF0ZSk7CiAgICAgICAgICBjb250ZXh0ID0gX2NvbnRleHQ7CiAgICAgICAgICBpbmRlbnQgPSBfaW5kZW50OwogICAgICAgICAgY29sID0gX2NvbDsKICAgICAgICAgIHJldHVybiBpdGVyOwogICAgICAgIH07CiAgICAgIH0KICAgIH07CiAgICByZXR1cm4gaXRlcjsKICB9CgogIHJldHVybiB7bWFrZTogcGFyc2VTcGFycWwsIGVsZWN0cmljQ2hhcnM6ICJ9XSJ9Owp9KSgpOwo=]]></data>
	</file>
	<file>
	  <filename>/includes/CodeMirror/js/parsexml.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[LyogVGhpcyBmaWxlIGRlZmluZXMgYW4gWE1MIHBhcnNlciwgd2l0aCBhIGZldyBrbHVkZ2VzIHRvIG1ha2UgaXQKICogdXNlYWJsZSBmb3IgSFRNTC4gYXV0b1NlbGZDbG9zZXJzIGRlZmluZXMgYSBzZXQgb2YgdGFnIG5hbWVzIHRoYXQKICogYXJlIGV4cGVjdGVkIHRvIG5vdCBoYXZlIGEgY2xvc2luZyB0YWcsIGFuZCBkb05vdEluZGVudCBzcGVjaWZpZXMKICogdGhlIHRhZ3MgaW5zaWRlIG9mIHdoaWNoIG5vIGluZGVudGF0aW9uIHNob3VsZCBoYXBwZW4gKHNlZSBDb25maWcKICogb2JqZWN0KS4gVGhlc2UgY2FuIGJlIGRpc2FibGVkIGJ5IHBhc3NpbmcgdGhlIGVkaXRvciBhbiBvYmplY3QgbGlrZQogKiB7dXNlSFRNTEtsdWRnZXM6IGZhbHNlfSBhcyBwYXJzZXJDb25maWcgb3B0aW9uLgogKi8KCnZhciBYTUxQYXJzZXIgPSBFZGl0b3IuUGFyc2VyID0gKGZ1bmN0aW9uKCkgewogIHZhciBLbHVkZ2VzID0gewogICAgYXV0b1NlbGZDbG9zZXJzOiB7ImJyIjogdHJ1ZSwgImltZyI6IHRydWUsICJociI6IHRydWUsICJsaW5rIjogdHJ1ZSwgImlucHV0IjogdHJ1ZSwKICAgICAgICAgICAgICAgICAgICAgICJtZXRhIjogdHJ1ZSwgImNvbCI6IHRydWUsICJmcmFtZSI6IHRydWUsICJiYXNlIjogdHJ1ZSwgImFyZWEiOiB0cnVlfSwKICAgIGRvTm90SW5kZW50OiB7InByZSI6IHRydWUsICIhY2RhdGEiOiB0cnVlfQogIH07CiAgdmFyIE5vS2x1ZGdlcyA9IHthdXRvU2VsZkNsb3NlcnM6IHt9LCBkb05vdEluZGVudDogeyIhY2RhdGEiOiB0cnVlfX07CiAgdmFyIFVzZUtsdWRnZXMgPSBLbHVkZ2VzOwogIHZhciBhbGlnbkNEQVRBID0gZmFsc2U7CgogIC8vIFNpbXBsZSBzdGF0ZWZ1bCB0b2tlbml6ZXIgZm9yIFhNTCBkb2N1bWVudHMuIFJldHVybnMgYQogIC8vIE1vY2hpS2l0LXN0eWxlIGl0ZXJhdG9yLCB3aXRoIGEgc3RhdGUgcHJvcGVydHkgdGhhdCBjb250YWlucyBhCiAgLy8gZnVuY3Rpb24gZW5jYXBzdWxhdGluZyB0aGUgY3VycmVudCBzdGF0ZS4gU2VlIHRva2VuaXplLmpzLgogIHZhciB0b2tlbml6ZVhNTCA9IChmdW5jdGlvbigpIHsKICAgIGZ1bmN0aW9uIGluVGV4dChzb3VyY2UsIHNldFN0YXRlKSB7CiAgICAgIHZhciBjaCA9IHNvdXJjZS5uZXh0KCk7CiAgICAgIGlmIChjaCA9PSAiPCIpIHsKICAgICAgICBpZiAoc291cmNlLmVxdWFscygiISIpKSB7CiAgICAgICAgICBzb3VyY2UubmV4dCgpOwogICAgICAgICAgaWYgKHNvdXJjZS5lcXVhbHMoIlsiKSkgewogICAgICAgICAgICBpZiAoc291cmNlLmxvb2tBaGVhZCgiW0NEQVRBWyIsIHRydWUpKSB7CiAgICAgICAgICAgICAgc2V0U3RhdGUoaW5CbG9jaygieG1sLWNkYXRhIiwgIl1dPiIpKTsKICAgICAgICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgICAgICAgfQogICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICByZXR1cm4gInhtbC10ZXh0IjsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgZWxzZSBpZiAoc291cmNlLmxvb2tBaGVhZCgiLS0iLCB0cnVlKSkgewogICAgICAgICAgICBzZXRTdGF0ZShpbkJsb2NrKCJ4bWwtY29tbWVudCIsICItLT4iKSk7CiAgICAgICAgICAgIHJldHVybiBudWxsOwogICAgICAgICAgfQogICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgIHJldHVybiAieG1sLXRleHQiOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBlbHNlIGlmIChzb3VyY2UuZXF1YWxzKCI/IikpIHsKICAgICAgICAgIHNvdXJjZS5uZXh0KCk7CiAgICAgICAgICBzb3VyY2UubmV4dFdoaWxlTWF0Y2hlcygvW1x3XC5fXC1dLyk7CiAgICAgICAgICBzZXRTdGF0ZShpbkJsb2NrKCJ4bWwtcHJvY2Vzc2luZyIsICI/PiIpKTsKICAgICAgICAgIHJldHVybiAieG1sLXByb2Nlc3NpbmciOwogICAgICAgIH0KICAgICAgICBlbHNlIHsKICAgICAgICAgIGlmIChzb3VyY2UuZXF1YWxzKCIvIikpIHNvdXJjZS5uZXh0KCk7CiAgICAgICAgICBzZXRTdGF0ZShpblRhZyk7CiAgICAgICAgICByZXR1cm4gInhtbC1wdW5jdHVhdGlvbiI7CiAgICAgICAgfQogICAgICB9CiAgICAgIGVsc2UgaWYgKGNoID09ICImIikgewogICAgICAgIHdoaWxlICghc291cmNlLmVuZE9mTGluZSgpKSB7CiAgICAgICAgICBpZiAoc291cmNlLm5leHQoKSA9PSAiOyIpCiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KICAgICAgICByZXR1cm4gInhtbC1lbnRpdHkiOwogICAgICB9CiAgICAgIGVsc2UgewogICAgICAgIHNvdXJjZS5uZXh0V2hpbGVNYXRjaGVzKC9bXiY8XG5dLyk7CiAgICAgICAgcmV0dXJuICJ4bWwtdGV4dCI7CiAgICAgIH0KICAgIH0KCiAgICBmdW5jdGlvbiBpblRhZyhzb3VyY2UsIHNldFN0YXRlKSB7CiAgICAgIHZhciBjaCA9IHNvdXJjZS5uZXh0KCk7CiAgICAgIGlmIChjaCA9PSAiPiIpIHsKICAgICAgICBzZXRTdGF0ZShpblRleHQpOwogICAgICAgIHJldHVybiAieG1sLXB1bmN0dWF0aW9uIjsKICAgICAgfQogICAgICBlbHNlIGlmICgvWz9cL10vLnRlc3QoY2gpICYmIHNvdXJjZS5lcXVhbHMoIj4iKSkgewogICAgICAgIHNvdXJjZS5uZXh0KCk7CiAgICAgICAgc2V0U3RhdGUoaW5UZXh0KTsKICAgICAgICByZXR1cm4gInhtbC1wdW5jdHVhdGlvbiI7CiAgICAgIH0KICAgICAgZWxzZSBpZiAoY2ggPT0gIj0iKSB7CiAgICAgICAgcmV0dXJuICJ4bWwtcHVuY3R1YXRpb24iOwogICAgICB9CiAgICAgIGVsc2UgaWYgKC9bXCdcIl0vLnRlc3QoY2gpKSB7CiAgICAgICAgc2V0U3RhdGUoaW5BdHRyaWJ1dGUoY2gpKTsKICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgfQogICAgICBlbHNlIHsKICAgICAgICBzb3VyY2UubmV4dFdoaWxlTWF0Y2hlcygvW15cc1x1MDBhMD08PlwiXCdcLz9dLyk7CiAgICAgICAgcmV0dXJuICJ4bWwtbmFtZSI7CiAgICAgIH0KICAgIH0KCiAgICBmdW5jdGlvbiBpbkF0dHJpYnV0ZShxdW90ZSkgewogICAgICByZXR1cm4gZnVuY3Rpb24oc291cmNlLCBzZXRTdGF0ZSkgewogICAgICAgIHdoaWxlICghc291cmNlLmVuZE9mTGluZSgpKSB7CiAgICAgICAgICBpZiAoc291cmNlLm5leHQoKSA9PSBxdW90ZSkgewogICAgICAgICAgICBzZXRTdGF0ZShpblRhZyk7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gInhtbC1hdHRyaWJ1dGUiOwogICAgICB9OwogICAgfQoKICAgIGZ1bmN0aW9uIGluQmxvY2soc3R5bGUsIHRlcm1pbmF0b3IpIHsKICAgICAgcmV0dXJuIGZ1bmN0aW9uKHNvdXJjZSwgc2V0U3RhdGUpIHsKICAgICAgICB3aGlsZSAoIXNvdXJjZS5lbmRPZkxpbmUoKSkgewogICAgICAgICAgaWYgKHNvdXJjZS5sb29rQWhlYWQodGVybWluYXRvciwgdHJ1ZSkpIHsKICAgICAgICAgICAgc2V0U3RhdGUoaW5UZXh0KTsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICAgICBzb3VyY2UubmV4dCgpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gc3R5bGU7CiAgICAgIH07CiAgICB9CgogICAgcmV0dXJuIGZ1bmN0aW9uKHNvdXJjZSwgc3RhcnRTdGF0ZSkgewogICAgICByZXR1cm4gdG9rZW5pemVyKHNvdXJjZSwgc3RhcnRTdGF0ZSB8fCBpblRleHQpOwogICAgfTsKICB9KSgpOwoKICAvLyBUaGUgcGFyc2VyLiBUaGUgc3RydWN0dXJlIG9mIHRoaXMgZnVuY3Rpb24gbGFyZ2VseSBmb2xsb3dzIHRoYXQgb2YKICAvLyBwYXJzZUphdmFTY3JpcHQgaW4gcGFyc2VqYXZhc2NyaXB0LmpzICh0aGVyZSBpcyBhY3R1YWxseSBhIGJpdCBtb3JlCiAgLy8gc2hhcmVkIGNvZGUgdGhhbiBJJ2QgbGlrZSksIGJ1dCBpdCBpcyBxdWl0ZSBhIGJpdCBzaW1wbGVyLgogIGZ1bmN0aW9uIHBhcnNlWE1MKHNvdXJjZSkgewogICAgdmFyIHRva2VucyA9IHRva2VuaXplWE1MKHNvdXJjZSksIHRva2VuOwogICAgdmFyIGNjID0gW2Jhc2VdOwogICAgdmFyIHRva2VuTnIgPSAwLCBpbmRlbnRlZCA9IDA7CiAgICB2YXIgY3VycmVudFRhZyA9IG51bGwsIGNvbnRleHQgPSBudWxsOwogICAgdmFyIGNvbnN1bWU7CiAgICAKICAgIGZ1bmN0aW9uIHB1c2goZnMpIHsKICAgICAgZm9yICh2YXIgaSA9IGZzLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKQogICAgICAgIGNjLnB1c2goZnNbaV0pOwogICAgfQogICAgZnVuY3Rpb24gY29udCgpIHsKICAgICAgcHVzaChhcmd1bWVudHMpOwogICAgICBjb25zdW1lID0gdHJ1ZTsKICAgIH0KICAgIGZ1bmN0aW9uIHBhc3MoKSB7CiAgICAgIHB1c2goYXJndW1lbnRzKTsKICAgICAgY29uc3VtZSA9IGZhbHNlOwogICAgfQoKICAgIGZ1bmN0aW9uIG1hcmtFcnIoKSB7CiAgICAgIHRva2VuLnN0eWxlICs9ICIgeG1sLWVycm9yIjsKICAgIH0KICAgIGZ1bmN0aW9uIGV4cGVjdCh0ZXh0KSB7CiAgICAgIHJldHVybiBmdW5jdGlvbihzdHlsZSwgY29udGVudCkgewogICAgICAgIGlmIChjb250ZW50ID09IHRleHQpIGNvbnQoKTsKICAgICAgICBlbHNlIHttYXJrRXJyKCk7IGNvbnQoYXJndW1lbnRzLmNhbGxlZSk7fQogICAgICB9OwogICAgfQoKICAgIGZ1bmN0aW9uIHB1c2hDb250ZXh0KHRhZ25hbWUsIHN0YXJ0T2ZMaW5lKSB7CiAgICAgIHZhciBub0luZGVudCA9IFVzZUtsdWRnZXMuZG9Ob3RJbmRlbnQuaGFzT3duUHJvcGVydHkodGFnbmFtZSkgfHwgKGNvbnRleHQgJiYgY29udGV4dC5ub0luZGVudCk7CiAgICAgIGNvbnRleHQgPSB7cHJldjogY29udGV4dCwgbmFtZTogdGFnbmFtZSwgaW5kZW50OiBpbmRlbnRlZCwgc3RhcnRPZkxpbmU6IHN0YXJ0T2ZMaW5lLCBub0luZGVudDogbm9JbmRlbnR9OwogICAgfQogICAgZnVuY3Rpb24gcG9wQ29udGV4dCgpIHsKICAgICAgY29udGV4dCA9IGNvbnRleHQucHJldjsKICAgIH0KICAgIGZ1bmN0aW9uIGNvbXB1dGVJbmRlbnRhdGlvbihiYXNlQ29udGV4dCkgewogICAgICByZXR1cm4gZnVuY3Rpb24obmV4dENoYXJzLCBjdXJyZW50KSB7CiAgICAgICAgdmFyIGNvbnRleHQgPSBiYXNlQ29udGV4dDsKICAgICAgICBpZiAoY29udGV4dCAmJiBjb250ZXh0Lm5vSW5kZW50KQogICAgICAgICAgcmV0dXJuIGN1cnJlbnQ7CiAgICAgICAgaWYgKGFsaWduQ0RBVEEgJiYgLzwhXFtDREFUQVxbLy50ZXN0KG5leHRDaGFycykpCiAgICAgICAgICByZXR1cm4gMDsKICAgICAgICBpZiAoY29udGV4dCAmJiAvXjxcLy8udGVzdChuZXh0Q2hhcnMpKQogICAgICAgICAgY29udGV4dCA9IGNvbnRleHQucHJldjsKICAgICAgICB3aGlsZSAoY29udGV4dCAmJiAhY29udGV4dC5zdGFydE9mTGluZSkKICAgICAgICAgIGNvbnRleHQgPSBjb250ZXh0LnByZXY7CiAgICAgICAgaWYgKGNvbnRleHQpCiAgICAgICAgICByZXR1cm4gY29udGV4dC5pbmRlbnQgKyBpbmRlbnRVbml0OwogICAgICAgIGVsc2UKICAgICAgICAgIHJldHVybiAwOwogICAgICB9OwogICAgfQoKICAgIGZ1bmN0aW9uIGJhc2UoKSB7CiAgICAgIHJldHVybiBwYXNzKGVsZW1lbnQsIGJhc2UpOwogICAgfQogICAgdmFyIGhhcm1sZXNzVG9rZW5zID0geyJ4bWwtdGV4dCI6IHRydWUsICJ4bWwtZW50aXR5IjogdHJ1ZSwgInhtbC1jb21tZW50IjogdHJ1ZSwgInhtbC1wcm9jZXNzaW5nIjogdHJ1ZX07CiAgICBmdW5jdGlvbiBlbGVtZW50KHN0eWxlLCBjb250ZW50KSB7CiAgICAgIGlmIChjb250ZW50ID09ICI8IikgY29udCh0YWduYW1lLCBhdHRyaWJ1dGVzLCBlbmR0YWcodG9rZW5OciA9PSAxKSk7CiAgICAgIGVsc2UgaWYgKGNvbnRlbnQgPT0gIjwvIikgY29udChjbG9zZXRhZ25hbWUsIGV4cGVjdCgiPiIpKTsKICAgICAgZWxzZSBpZiAoc3R5bGUgPT0gInhtbC1jZGF0YSIpIHsKICAgICAgICBpZiAoIWNvbnRleHQgfHwgY29udGV4dC5uYW1lICE9ICIhY2RhdGEiKSBwdXNoQ29udGV4dCgiIWNkYXRhIik7CiAgICAgICAgaWYgKC9cXVxdPiQvLnRlc3QoY29udGVudCkpIHBvcENvbnRleHQoKTsKICAgICAgICBjb250KCk7CiAgICAgIH0KICAgICAgZWxzZSBpZiAoaGFybWxlc3NUb2tlbnMuaGFzT3duUHJvcGVydHkoc3R5bGUpKSBjb250KCk7CiAgICAgIGVsc2Uge21hcmtFcnIoKTsgY29udCgpO30KICAgIH0KICAgIGZ1bmN0aW9uIHRhZ25hbWUoc3R5bGUsIGNvbnRlbnQpIHsKICAgICAgaWYgKHN0eWxlID09ICJ4bWwtbmFtZSIpIHsKICAgICAgICBjdXJyZW50VGFnID0gY29udGVudC50b0xvd2VyQ2FzZSgpOwogICAgICAgIHRva2VuLnN0eWxlID0gInhtbC10YWduYW1lIjsKICAgICAgICBjb250KCk7CiAgICAgIH0KICAgICAgZWxzZSB7CiAgICAgICAgY3VycmVudFRhZyA9IG51bGw7CiAgICAgICAgcGFzcygpOwogICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBjbG9zZXRhZ25hbWUoc3R5bGUsIGNvbnRlbnQpIHsKICAgICAgaWYgKHN0eWxlID09ICJ4bWwtbmFtZSIpIHsKICAgICAgICB0b2tlbi5zdHlsZSA9ICJ4bWwtdGFnbmFtZSI7CiAgICAgICAgaWYgKGNvbnRleHQgJiYgY29udGVudC50b0xvd2VyQ2FzZSgpID09IGNvbnRleHQubmFtZSkgcG9wQ29udGV4dCgpOwogICAgICAgIGVsc2UgbWFya0VycigpOwogICAgICB9CiAgICAgIGNvbnQoKTsKICAgIH0KICAgIGZ1bmN0aW9uIGVuZHRhZyhzdGFydE9mTGluZSkgewogICAgICByZXR1cm4gZnVuY3Rpb24oc3R5bGUsIGNvbnRlbnQpIHsKICAgICAgICBpZiAoY29udGVudCA9PSAiLz4iIHx8IChjb250ZW50ID09ICI+IiAmJiBVc2VLbHVkZ2VzLmF1dG9TZWxmQ2xvc2Vycy5oYXNPd25Qcm9wZXJ0eShjdXJyZW50VGFnKSkpIGNvbnQoKTsKICAgICAgICBlbHNlIGlmIChjb250ZW50ID09ICI+Iikge3B1c2hDb250ZXh0KGN1cnJlbnRUYWcsIHN0YXJ0T2ZMaW5lKTsgY29udCgpO30KICAgICAgICBlbHNlIHttYXJrRXJyKCk7IGNvbnQoYXJndW1lbnRzLmNhbGxlZSk7fQogICAgICB9OwogICAgfQogICAgZnVuY3Rpb24gYXR0cmlidXRlcyhzdHlsZSkgewogICAgICBpZiAoc3R5bGUgPT0gInhtbC1uYW1lIikge3Rva2VuLnN0eWxlID0gInhtbC1hdHRuYW1lIjsgY29udChhdHRyaWJ1dGUsIGF0dHJpYnV0ZXMpO30KICAgICAgZWxzZSBwYXNzKCk7CiAgICB9CiAgICBmdW5jdGlvbiBhdHRyaWJ1dGUoc3R5bGUsIGNvbnRlbnQpIHsKICAgICAgaWYgKGNvbnRlbnQgPT0gIj0iKSBjb250KHZhbHVlKTsKICAgICAgZWxzZSBpZiAoY29udGVudCA9PSAiPiIgfHwgY29udGVudCA9PSAiLz4iKSBwYXNzKGVuZHRhZyk7CiAgICAgIGVsc2UgcGFzcygpOwogICAgfQogICAgZnVuY3Rpb24gdmFsdWUoc3R5bGUpIHsKICAgICAgaWYgKHN0eWxlID09ICJ4bWwtYXR0cmlidXRlIikgY29udCh2YWx1ZSk7CiAgICAgIGVsc2UgcGFzcygpOwogICAgfQoKICAgIHJldHVybiB7CiAgICAgIGluZGVudGF0aW9uOiBmdW5jdGlvbigpIHtyZXR1cm4gaW5kZW50ZWQ7fSwKCiAgICAgIG5leHQ6IGZ1bmN0aW9uKCl7CiAgICAgICAgdG9rZW4gPSB0b2tlbnMubmV4dCgpOwogICAgICAgIGlmICh0b2tlbi5zdHlsZSA9PSAid2hpdGVzcGFjZSIgJiYgdG9rZW5OciA9PSAwKQogICAgICAgICAgaW5kZW50ZWQgPSB0b2tlbi52YWx1ZS5sZW5ndGg7CiAgICAgICAgZWxzZQogICAgICAgICAgdG9rZW5OcisrOwogICAgICAgIGlmICh0b2tlbi5jb250ZW50ID09ICJcbiIpIHsKICAgICAgICAgIGluZGVudGVkID0gdG9rZW5OciA9IDA7CiAgICAgICAgICB0b2tlbi5pbmRlbnRhdGlvbiA9IGNvbXB1dGVJbmRlbnRhdGlvbihjb250ZXh0KTsKICAgICAgICB9CgogICAgICAgIGlmICh0b2tlbi5zdHlsZSA9PSAid2hpdGVzcGFjZSIgfHwgdG9rZW4udHlwZSA9PSAieG1sLWNvbW1lbnQiKQogICAgICAgICAgcmV0dXJuIHRva2VuOwoKICAgICAgICB3aGlsZSh0cnVlKXsKICAgICAgICAgIGNvbnN1bWUgPSBmYWxzZTsKICAgICAgICAgIGNjLnBvcCgpKHRva2VuLnN0eWxlLCB0b2tlbi5jb250ZW50KTsKICAgICAgICAgIGlmIChjb25zdW1lKSByZXR1cm4gdG9rZW47CiAgICAgICAgfQogICAgICB9LAoKICAgICAgY29weTogZnVuY3Rpb24oKXsKICAgICAgICB2YXIgX2NjID0gY2MuY29uY2F0KFtdKSwgX3Rva2VuU3RhdGUgPSB0b2tlbnMuc3RhdGUsIF9jb250ZXh0ID0gY29udGV4dDsKICAgICAgICB2YXIgcGFyc2VyID0gdGhpczsKICAgICAgICAKICAgICAgICByZXR1cm4gZnVuY3Rpb24oaW5wdXQpewogICAgICAgICAgY2MgPSBfY2MuY29uY2F0KFtdKTsKICAgICAgICAgIHRva2VuTnIgPSBpbmRlbnRlZCA9IDA7CiAgICAgICAgICBjb250ZXh0ID0gX2NvbnRleHQ7CiAgICAgICAgICB0b2tlbnMgPSB0b2tlbml6ZVhNTChpbnB1dCwgX3Rva2VuU3RhdGUpOwogICAgICAgICAgcmV0dXJuIHBhcnNlcjsKICAgICAgICB9OwogICAgICB9CiAgICB9OwogIH0KCiAgcmV0dXJuIHsKICAgIG1ha2U6IHBhcnNlWE1MLAogICAgZWxlY3RyaWNDaGFyczogIi8iLAogICAgY29uZmlndXJlOiBmdW5jdGlvbihjb25maWcpIHsKICAgICAgaWYgKGNvbmZpZy51c2VIVE1MS2x1ZGdlcyAhPSBudWxsKQogICAgICAgIFVzZUtsdWRnZXMgPSBjb25maWcudXNlSFRNTEtsdWRnZXMgPyBLbHVkZ2VzIDogTm9LbHVkZ2VzOwogICAgICBpZiAoY29uZmlnLmFsaWduQ0RBVEEpCiAgICAgICAgYWxpZ25DREFUQSA9IGNvbmZpZy5hbGlnbkNEQVRBOwogICAgfQogIH07Cn0pKCk7Cg==]]></data>
	</file>
	<file>
	  <filename>/includes/CodeMirror/js/select.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[LyogRnVuY3Rpb25hbGl0eSBmb3IgZmluZGluZywgc3RvcmluZywgYW5kIHJlc3RvcmluZyBzZWxlY3Rpb25zCiAqCiAqIFRoaXMgZG9lcyBub3QgcHJvdmlkZSBhIGdlbmVyaWMgQVBJLCBqdXN0IHRoZSBtaW5pbWFsIGZ1bmN0aW9uYWxpdHkKICogcmVxdWlyZWQgYnkgdGhlIENvZGVNaXJyb3Igc3lzdGVtLgogKi8KCi8vIE5hbWVzcGFjZSBvYmplY3QuCnZhciBzZWxlY3QgPSB7fTsKCihmdW5jdGlvbigpIHsKICBzZWxlY3QuaWVfc2VsZWN0aW9uID0gZG9jdW1lbnQuc2VsZWN0aW9uICYmIGRvY3VtZW50LnNlbGVjdGlvbi5jcmVhdGVSYW5nZUNvbGxlY3Rpb247CgogIC8vIEZpbmQgdGhlICd0b3AtbGV2ZWwnIChkZWZpbmVkIGFzICdhIGRpcmVjdCBjaGlsZCBvZiB0aGUgbm9kZQogIC8vIHBhc3NlZCBhcyB0aGUgdG9wIGFyZ3VtZW50Jykgbm9kZSB0aGF0IHRoZSBnaXZlbiBub2RlIGlzCiAgLy8gY29udGFpbmVkIGluLiBSZXR1cm4gbnVsbCBpZiB0aGUgZ2l2ZW4gbm9kZSBpcyBub3QgaW5zaWRlIHRoZSB0b3AKICAvLyBub2RlLgogIGZ1bmN0aW9uIHRvcExldmVsTm9kZUF0KG5vZGUsIHRvcCkgewogICAgd2hpbGUgKG5vZGUgJiYgbm9kZS5wYXJlbnROb2RlICE9IHRvcCkKICAgICAgbm9kZSA9IG5vZGUucGFyZW50Tm9kZTsKICAgIHJldHVybiBub2RlOwogIH0KCiAgLy8gRmluZCB0aGUgdG9wLWxldmVsIG5vZGUgdGhhdCBjb250YWlucyB0aGUgbm9kZSBiZWZvcmUgdGhpcyBvbmUuCiAgZnVuY3Rpb24gdG9wTGV2ZWxOb2RlQmVmb3JlKG5vZGUsIHRvcCkgewogICAgd2hpbGUgKCFub2RlLnByZXZpb3VzU2libGluZyAmJiBub2RlLnBhcmVudE5vZGUgIT0gdG9wKQogICAgICBub2RlID0gbm9kZS5wYXJlbnROb2RlOwogICAgcmV0dXJuIHRvcExldmVsTm9kZUF0KG5vZGUucHJldmlvdXNTaWJsaW5nLCB0b3ApOwogIH0KCiAgdmFyIGZvdXJTcGFjZXMgPSAiXHUwMGEwXHUwMGEwXHUwMGEwXHUwMGEwIjsKCiAgc2VsZWN0LnNjcm9sbFRvTm9kZSA9IGZ1bmN0aW9uKG5vZGUsIGN1cnNvcikgewogICAgaWYgKCFub2RlKSByZXR1cm47CiAgICB2YXIgZWxlbWVudCA9IG5vZGUsIGJvZHkgPSBkb2N1bWVudC5ib2R5LAogICAgICAgIGh0bWwgPSBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQsCiAgICAgICAgYXRFbmQgPSAhZWxlbWVudC5uZXh0U2libGluZyB8fCAhZWxlbWVudC5uZXh0U2libGluZy5uZXh0U2libGluZwogICAgICAgICAgICAgICAgfHwgIWVsZW1lbnQubmV4dFNpYmxpbmcubmV4dFNpYmxpbmcubmV4dFNpYmxpbmc7CiAgICAvLyBJbiBPcGVyYSAoYW5kIHJlY2VudCBXZWJraXQgdmVyc2lvbnMpLCBCUiBlbGVtZW50cyAqYWx3YXlzKgogICAgLy8gaGF2ZSBhIG9mZnNldFRvcCBwcm9wZXJ0eSBvZiB6ZXJvLgogICAgdmFyIGNvbXBlbnNhdGVIYWNrID0gMDsKICAgIHdoaWxlIChlbGVtZW50ICYmICFlbGVtZW50Lm9mZnNldFRvcCkgewogICAgICBjb21wZW5zYXRlSGFjaysrOwogICAgICBlbGVtZW50ID0gZWxlbWVudC5wcmV2aW91c1NpYmxpbmc7CiAgICB9CiAgICAvLyBhdEVuZCBpcyBhbm90aGVyIGtsdWRnZSBmb3IgdGhlc2UgYnJvd3NlcnMgLS0gaWYgdGhlIGN1cnNvciBpcwogICAgLy8gYXQgdGhlIGVuZCBvZiB0aGUgZG9jdW1lbnQsIGFuZCB0aGUgbm9kZSBkb2Vzbid0IGhhdmUgYW4KICAgIC8vIG9mZnNldCwganVzdCBzY3JvbGwgdG8gdGhlIGVuZC4KICAgIGlmIChjb21wZW5zYXRlSGFjayA9PSAwKSBhdEVuZCA9IGZhbHNlOwoKICAgIC8vIFdlYktpdCBoYXMgYSBiYWQgaGFiaXQgb2YgKHNvbWV0aW1lcykgaGFwcGlseSByZXR1cm5pbmcgYm9ndXMKICAgIC8vIG9mZnNldHMgd2hlbiB0aGUgZG9jdW1lbnQgaGFzIGp1c3QgYmVlbiBjaGFuZ2VkLiBUaGlzIHNlZW1zIHRvCiAgICAvLyBhbHdheXMgYmUgNS81LCBzbyB3ZSBkb24ndCB1c2UgdGhvc2UuCiAgICBpZiAod2Via2l0ICYmIGVsZW1lbnQgJiYgZWxlbWVudC5vZmZzZXRUb3AgPT0gNSAmJiBlbGVtZW50Lm9mZnNldExlZnQgPT0gNSkKICAgICAgcmV0dXJuOwoKICAgIHZhciB5ID0gY29tcGVuc2F0ZUhhY2sgKiAoZWxlbWVudCA/IGVsZW1lbnQub2Zmc2V0SGVpZ2h0IDogMCksIHggPSAwLAogICAgICAgIHdpZHRoID0gKG5vZGUgPyBub2RlLm9mZnNldFdpZHRoIDogMCksIHBvcyA9IGVsZW1lbnQ7CiAgICB3aGlsZSAocG9zICYmIHBvcy5vZmZzZXRQYXJlbnQpIHsKICAgICAgeSArPSBwb3Mub2Zmc2V0VG9wOwogICAgICAvLyBEb24ndCBjb3VudCBYIG9mZnNldCBmb3IgPGJyPiBub2RlcwogICAgICBpZiAoIWlzQlIocG9zKSkKICAgICAgICB4ICs9IHBvcy5vZmZzZXRMZWZ0OwogICAgICBwb3MgPSBwb3Mub2Zmc2V0UGFyZW50OwogICAgfQoKICAgIHZhciBzY3JvbGxfeCA9IGJvZHkuc2Nyb2xsTGVmdCB8fCBodG1sLnNjcm9sbExlZnQgfHwgMCwKICAgICAgICBzY3JvbGxfeSA9IGJvZHkuc2Nyb2xsVG9wIHx8IGh0bWwuc2Nyb2xsVG9wIHx8IDAsCiAgICAgICAgc2Nyb2xsID0gZmFsc2UsIHNjcmVlbl93aWR0aCA9IHdpbmRvdy5pbm5lcldpZHRoIHx8IGh0bWwuY2xpZW50V2lkdGggfHwgMDsKCiAgICBpZiAoY3Vyc29yIHx8IHdpZHRoIDwgc2NyZWVuX3dpZHRoKSB7CiAgICAgIGlmIChjdXJzb3IpIHsKICAgICAgICB2YXIgb2ZmID0gc2VsZWN0Lm9mZnNldEluTm9kZShub2RlKSwgc2l6ZSA9IG5vZGVUZXh0KG5vZGUpLmxlbmd0aDsKICAgICAgICBpZiAoc2l6ZSkgeCArPSB3aWR0aCAqIChvZmYgLyBzaXplKTsKICAgICAgfQogICAgICB2YXIgc2NyZWVuX3ggPSB4IC0gc2Nyb2xsX3g7CiAgICAgIGlmIChzY3JlZW5feCA8IDAgfHwgc2NyZWVuX3ggPiBzY3JlZW5fd2lkdGgpIHsKICAgICAgICBzY3JvbGxfeCA9IHg7CiAgICAgICAgc2Nyb2xsID0gdHJ1ZTsKICAgICAgfQogICAgfQogICAgdmFyIHNjcmVlbl95ID0geSAtIHNjcm9sbF95OwogICAgaWYgKHNjcmVlbl95IDwgMCB8fCBhdEVuZCB8fCBzY3JlZW5feSA+ICh3aW5kb3cuaW5uZXJIZWlnaHQgfHwgaHRtbC5jbGllbnRIZWlnaHQgfHwgMCkgLSA1MCkgewogICAgICBzY3JvbGxfeSA9IGF0RW5kID8gMWU2IDogeTsKICAgICAgc2Nyb2xsID0gdHJ1ZTsKICAgIH0KICAgIGlmIChzY3JvbGwpIHdpbmRvdy5zY3JvbGxUbyhzY3JvbGxfeCwgc2Nyb2xsX3kpOwogIH07CgogIHNlbGVjdC5zY3JvbGxUb0N1cnNvciA9IGZ1bmN0aW9uKGNvbnRhaW5lcikgewogICAgc2VsZWN0LnNjcm9sbFRvTm9kZShzZWxlY3Quc2VsZWN0aW9uVG9wTm9kZShjb250YWluZXIsIHRydWUpIHx8IGNvbnRhaW5lci5maXJzdENoaWxkLCB0cnVlKTsKICB9OwoKICAvLyBVc2VkIHRvIHByZXZlbnQgcmVzdG9yaW5nIGEgc2VsZWN0aW9uIHdoZW4gd2UgZG8gbm90IG5lZWQgdG8uCiAgdmFyIGN1cnJlbnRTZWxlY3Rpb24gPSBudWxsOwoKICBzZWxlY3Quc25hcHNob3RDaGFuZ2VkID0gZnVuY3Rpb24oKSB7CiAgICBpZiAoY3VycmVudFNlbGVjdGlvbikgY3VycmVudFNlbGVjdGlvbi5jaGFuZ2VkID0gdHJ1ZTsKICB9OwoKICAvLyBUaGlzIGlzIGNhbGxlZCBieSB0aGUgY29kZSBpbiBlZGl0b3IuanMgd2hlbmV2ZXIgaXQgaXMgcmVwbGFjaW5nCiAgLy8gYSB0ZXh0IG5vZGUuIFRoZSBmdW5jdGlvbiBzZWVzIHdoZXRoZXIgdGhlIGdpdmVuIG9sZE5vZGUgaXMgcGFydAogIC8vIG9mIHRoZSBjdXJyZW50IHNlbGVjdGlvbiwgYW5kIHVwZGF0ZXMgdGhpcyBzZWxlY3Rpb24gaWYgaXQgaXMuCiAgLy8gQmVjYXVzZSBub2RlcyBhcmUgb2Z0ZW4gb25seSBwYXJ0aWFsbHkgcmVwbGFjZWQsIHRoZSBsZW5ndGggb2YKICAvLyB0aGUgcGFydCB0aGF0IGdldHMgcmVwbGFjZWQgaGFzIHRvIGJlIHRha2VuIGludG8gYWNjb3VudCAtLSB0aGUKICAvLyBzZWxlY3Rpb24gbWlnaHQgc3RheSBpbiB0aGUgb2xkTm9kZSBpZiB0aGUgbmV3Tm9kZSBpcyBzbWFsbGVyCiAgLy8gdGhhbiB0aGUgc2VsZWN0aW9uJ3Mgb2Zmc2V0LiBUaGUgb2Zmc2V0IGFyZ3VtZW50IGlzIG5lZWRlZCBpbgogIC8vIGNhc2UgdGhlIHNlbGVjdGlvbiBkb2VzIG1vdmUgdG8gdGhlIG5ldyBvYmplY3QsIGFuZCB0aGUgZ2l2ZW4KICAvLyBsZW5ndGggaXMgbm90IHRoZSB3aG9sZSBsZW5ndGggb2YgdGhlIG5ldyBub2RlIChwYXJ0IG9mIGl0IG1pZ2h0CiAgLy8gaGF2ZSBiZWVuIHVzZWQgdG8gcmVwbGFjZSBhbm90aGVyIG5vZGUpLgogIHNlbGVjdC5zbmFwc2hvdFJlcGxhY2VOb2RlID0gZnVuY3Rpb24oZnJvbSwgdG8sIGxlbmd0aCwgb2Zmc2V0KSB7CiAgICBpZiAoIWN1cnJlbnRTZWxlY3Rpb24pIHJldHVybjsKCiAgICBmdW5jdGlvbiByZXBsYWNlKHBvaW50KSB7CiAgICAgIGlmIChmcm9tID09IHBvaW50Lm5vZGUpIHsKICAgICAgICBjdXJyZW50U2VsZWN0aW9uLmNoYW5nZWQgPSB0cnVlOwogICAgICAgIGlmIChsZW5ndGggJiYgcG9pbnQub2Zmc2V0ID4gbGVuZ3RoKSB7CiAgICAgICAgICBwb2ludC5vZmZzZXQgLT0gbGVuZ3RoOwogICAgICAgIH0KICAgICAgICBlbHNlIHsKICAgICAgICAgIHBvaW50Lm5vZGUgPSB0bzsKICAgICAgICAgIHBvaW50Lm9mZnNldCArPSAob2Zmc2V0IHx8IDApOwogICAgICAgIH0KICAgICAgfQogICAgfQogICAgcmVwbGFjZShjdXJyZW50U2VsZWN0aW9uLnN0YXJ0KTsKICAgIHJlcGxhY2UoY3VycmVudFNlbGVjdGlvbi5lbmQpOwogIH07CgogIHNlbGVjdC5zbmFwc2hvdE1vdmUgPSBmdW5jdGlvbihmcm9tLCB0bywgZGlzdGFuY2UsIHJlbGF0aXZlLCBpZkF0U3RhcnQpIHsKICAgIGlmICghY3VycmVudFNlbGVjdGlvbikgcmV0dXJuOwoKICAgIGZ1bmN0aW9uIG1vdmUocG9pbnQpIHsKICAgICAgaWYgKGZyb20gPT0gcG9pbnQubm9kZSAmJiAoIWlmQXRTdGFydCB8fCBwb2ludC5vZmZzZXQgPT0gMCkpIHsKICAgICAgICBjdXJyZW50U2VsZWN0aW9uLmNoYW5nZWQgPSB0cnVlOwogICAgICAgIHBvaW50Lm5vZGUgPSB0bzsKICAgICAgICBpZiAocmVsYXRpdmUpIHBvaW50Lm9mZnNldCA9IE1hdGgubWF4KDAsIHBvaW50Lm9mZnNldCArIGRpc3RhbmNlKTsKICAgICAgICBlbHNlIHBvaW50Lm9mZnNldCA9IGRpc3RhbmNlOwogICAgICB9CiAgICB9CiAgICBtb3ZlKGN1cnJlbnRTZWxlY3Rpb24uc3RhcnQpOwogICAgbW92ZShjdXJyZW50U2VsZWN0aW9uLmVuZCk7CiAgfTsKCiAgLy8gTW9zdCBmdW5jdGlvbnMgYXJlIGRlZmluZWQgaW4gdHdvIHdheXMsIG9uZSBmb3IgdGhlIElFIHNlbGVjdGlvbgogIC8vIG1vZGVsLCBvbmUgZm9yIHRoZSBXM0Mgb25lLgogIGlmIChzZWxlY3QuaWVfc2VsZWN0aW9uKSB7CiAgICBmdW5jdGlvbiBzZWxlY3Rpb25Ob2RlKHN0YXJ0KSB7CiAgICAgIHZhciByYW5nZSA9IGRvY3VtZW50LnNlbGVjdGlvbi5jcmVhdGVSYW5nZSgpOwogICAgICByYW5nZS5jb2xsYXBzZShzdGFydCk7CgogICAgICBmdW5jdGlvbiBub2RlQWZ0ZXIobm9kZSkgewogICAgICAgIHZhciBmb3VuZCA9IG51bGw7CiAgICAgICAgd2hpbGUgKCFmb3VuZCAmJiBub2RlKSB7CiAgICAgICAgICBmb3VuZCA9IG5vZGUubmV4dFNpYmxpbmc7CiAgICAgICAgICBub2RlID0gbm9kZS5wYXJlbnROb2RlOwogICAgICAgIH0KICAgICAgICByZXR1cm4gbm9kZUF0U3RhcnRPZihmb3VuZCk7CiAgICAgIH0KCiAgICAgIGZ1bmN0aW9uIG5vZGVBdFN0YXJ0T2Yobm9kZSkgewogICAgICAgIHdoaWxlIChub2RlICYmIG5vZGUuZmlyc3RDaGlsZCkgbm9kZSA9IG5vZGUuZmlyc3RDaGlsZDsKICAgICAgICByZXR1cm4ge25vZGU6IG5vZGUsIG9mZnNldDogMH07CiAgICAgIH0KCiAgICAgIHZhciBjb250YWluaW5nID0gcmFuZ2UucGFyZW50RWxlbWVudCgpOwogICAgICBpZiAoIWlzQW5jZXN0b3IoZG9jdW1lbnQuYm9keSwgY29udGFpbmluZykpIHJldHVybiBudWxsOwogICAgICBpZiAoIWNvbnRhaW5pbmcuZmlyc3RDaGlsZCkgcmV0dXJuIG5vZGVBdFN0YXJ0T2YoY29udGFpbmluZyk7CgogICAgICB2YXIgd29ya2luZyA9IHJhbmdlLmR1cGxpY2F0ZSgpOwogICAgICB3b3JraW5nLm1vdmVUb0VsZW1lbnRUZXh0KGNvbnRhaW5pbmcpOwogICAgICB3b3JraW5nLmNvbGxhcHNlKHRydWUpOwogICAgICBmb3IgKHZhciBjdXIgPSBjb250YWluaW5nLmZpcnN0Q2hpbGQ7IGN1cjsgY3VyID0gY3VyLm5leHRTaWJsaW5nKSB7CiAgICAgICAgaWYgKGN1ci5ub2RlVHlwZSA9PSAzKSB7CiAgICAgICAgICB2YXIgc2l6ZSA9IGN1ci5ub2RlVmFsdWUubGVuZ3RoOwogICAgICAgICAgd29ya2luZy5tb3ZlKCJjaGFyYWN0ZXIiLCBzaXplKTsKICAgICAgICB9CiAgICAgICAgZWxzZSB7CiAgICAgICAgICB3b3JraW5nLm1vdmVUb0VsZW1lbnRUZXh0KGN1cik7CiAgICAgICAgICB3b3JraW5nLmNvbGxhcHNlKGZhbHNlKTsKICAgICAgICB9CgogICAgICAgIHZhciBkaXIgPSByYW5nZS5jb21wYXJlRW5kUG9pbnRzKCJTdGFydFRvU3RhcnQiLCB3b3JraW5nKTsKICAgICAgICBpZiAoZGlyID09IDApIHJldHVybiBub2RlQWZ0ZXIoY3VyKTsKICAgICAgICBpZiAoZGlyID09IDEpIGNvbnRpbnVlOwogICAgICAgIGlmIChjdXIubm9kZVR5cGUgIT0gMykgcmV0dXJuIG5vZGVBdFN0YXJ0T2YoY3VyKTsKCiAgICAgICAgd29ya2luZy5zZXRFbmRQb2ludCgiU3RhcnRUb0VuZCIsIHJhbmdlKTsKICAgICAgICByZXR1cm4ge25vZGU6IGN1ciwgb2Zmc2V0OiBzaXplIC0gd29ya2luZy50ZXh0Lmxlbmd0aH07CiAgICAgIH0KICAgICAgcmV0dXJuIG5vZGVBZnRlcihjb250YWluaW5nKTsKICAgIH0KCiAgICBzZWxlY3QubWFya1NlbGVjdGlvbiA9IGZ1bmN0aW9uKCkgewogICAgICBjdXJyZW50U2VsZWN0aW9uID0gbnVsbDsKICAgICAgdmFyIHNlbCA9IGRvY3VtZW50LnNlbGVjdGlvbjsKICAgICAgaWYgKCFzZWwpIHJldHVybjsKICAgICAgdmFyIHN0YXJ0ID0gc2VsZWN0aW9uTm9kZSh0cnVlKSwKICAgICAgICAgIGVuZCA9IHNlbGVjdGlvbk5vZGUoZmFsc2UpOwogICAgICBpZiAoIXN0YXJ0IHx8ICFlbmQpIHJldHVybjsKICAgICAgY3VycmVudFNlbGVjdGlvbiA9IHtzdGFydDogc3RhcnQsIGVuZDogZW5kLCBjaGFuZ2VkOiBmYWxzZX07CiAgICB9OwoKICAgIHNlbGVjdC5zZWxlY3RNYXJrZWQgPSBmdW5jdGlvbigpIHsKICAgICAgaWYgKCFjdXJyZW50U2VsZWN0aW9uIHx8ICFjdXJyZW50U2VsZWN0aW9uLmNoYW5nZWQpIHJldHVybjsKCiAgICAgIGZ1bmN0aW9uIG1ha2VSYW5nZShwb2ludCkgewogICAgICAgIHZhciByYW5nZSA9IGRvY3VtZW50LmJvZHkuY3JlYXRlVGV4dFJhbmdlKCksCiAgICAgICAgICAgIG5vZGUgPSBwb2ludC5ub2RlOwogICAgICAgIGlmICghbm9kZSkgewogICAgICAgICAgcmFuZ2UubW92ZVRvRWxlbWVudFRleHQoZG9jdW1lbnQuYm9keSk7CiAgICAgICAgICByYW5nZS5jb2xsYXBzZShmYWxzZSk7CiAgICAgICAgfQogICAgICAgIGVsc2UgaWYgKG5vZGUubm9kZVR5cGUgPT0gMykgewogICAgICAgICAgcmFuZ2UubW92ZVRvRWxlbWVudFRleHQobm9kZS5wYXJlbnROb2RlKTsKICAgICAgICAgIHZhciBvZmZzZXQgPSBwb2ludC5vZmZzZXQ7CiAgICAgICAgICB3aGlsZSAobm9kZS5wcmV2aW91c1NpYmxpbmcpIHsKICAgICAgICAgICAgbm9kZSA9IG5vZGUucHJldmlvdXNTaWJsaW5nOwogICAgICAgICAgICBvZmZzZXQgKz0gKG5vZGUuaW5uZXJUZXh0IHx8ICIiKS5sZW5ndGg7CiAgICAgICAgICB9CiAgICAgICAgICByYW5nZS5tb3ZlKCJjaGFyYWN0ZXIiLCBvZmZzZXQpOwogICAgICAgIH0KICAgICAgICBlbHNlIHsKICAgICAgICAgIHJhbmdlLm1vdmVUb0VsZW1lbnRUZXh0KG5vZGUpOwogICAgICAgICAgcmFuZ2UuY29sbGFwc2UodHJ1ZSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiByYW5nZTsKICAgICAgfQoKICAgICAgdmFyIHN0YXJ0ID0gbWFrZVJhbmdlKGN1cnJlbnRTZWxlY3Rpb24uc3RhcnQpLCBlbmQgPSBtYWtlUmFuZ2UoY3VycmVudFNlbGVjdGlvbi5lbmQpOwogICAgICBzdGFydC5zZXRFbmRQb2ludCgiU3RhcnRUb0VuZCIsIGVuZCk7CiAgICAgIHN0YXJ0LnNlbGVjdCgpOwogICAgfTsKCiAgICBzZWxlY3Qub2Zmc2V0SW5Ob2RlID0gZnVuY3Rpb24obm9kZSkgewogICAgICB2YXIgc2VsID0gZG9jdW1lbnQuc2VsZWN0aW9uOwogICAgICBpZiAoIXNlbCkgcmV0dXJuIDA7CiAgICAgIHZhciByYW5nZSA9IHNlbC5jcmVhdGVSYW5nZSgpLCByYW5nZTIgPSByYW5nZS5kdXBsaWNhdGUoKTsKICAgICAgdHJ5IHtyYW5nZTIubW92ZVRvRWxlbWVudFRleHQobm9kZSk7fSBjYXRjaChlKXtyZXR1cm4gMDt9CiAgICAgIHJhbmdlLnNldEVuZFBvaW50KCJTdGFydFRvU3RhcnQiLCByYW5nZTIpOwogICAgICByZXR1cm4gcmFuZ2UudGV4dC5sZW5ndGg7CiAgICB9OwoKICAgIC8vIEdldCB0aGUgdG9wLWxldmVsIG5vZGUgdGhhdCBvbmUgZW5kIG9mIHRoZSBjdXJzb3IgaXMgaW5zaWRlIG9yCiAgICAvLyBhZnRlci4gTm90ZSB0aGF0IHRoaXMgcmV0dXJucyBmYWxzZSBmb3IgJ25vIGN1cnNvcicsIGFuZCBudWxsCiAgICAvLyBmb3IgJ3N0YXJ0IG9mIGRvY3VtZW50Jy4KICAgIHNlbGVjdC5zZWxlY3Rpb25Ub3BOb2RlID0gZnVuY3Rpb24oY29udGFpbmVyLCBzdGFydCkgewogICAgICB2YXIgc2VsZWN0aW9uID0gZG9jdW1lbnQuc2VsZWN0aW9uOwogICAgICBpZiAoIXNlbGVjdGlvbikgcmV0dXJuIGZhbHNlOwoKICAgICAgdmFyIHJhbmdlID0gc2VsZWN0aW9uLmNyZWF0ZVJhbmdlKCksIHJhbmdlMiA9IHJhbmdlLmR1cGxpY2F0ZSgpOwogICAgICByYW5nZS5jb2xsYXBzZShzdGFydCk7CiAgICAgIHZhciBhcm91bmQgPSByYW5nZS5wYXJlbnRFbGVtZW50KCk7CiAgICAgIGlmIChhcm91bmQgJiYgaXNBbmNlc3Rvcihjb250YWluZXIsIGFyb3VuZCkpIHsKICAgICAgICAvLyBPbmx5IHVzZSB0aGlzIG5vZGUgaWYgdGhlIHNlbGVjdGlvbiBpcyBub3QgYXQgaXRzIHN0YXJ0LgogICAgICAgIHJhbmdlMi5tb3ZlVG9FbGVtZW50VGV4dChhcm91bmQpOwogICAgICAgIGlmIChyYW5nZS5jb21wYXJlRW5kUG9pbnRzKCJTdGFydFRvU3RhcnQiLCByYW5nZTIpID09IDEpCiAgICAgICAgICByZXR1cm4gdG9wTGV2ZWxOb2RlQXQoYXJvdW5kLCBjb250YWluZXIpOwogICAgICB9CgogICAgICAvLyBNb3ZlIHRoZSBzdGFydCBvZiBhIHJhbmdlIHRvIHRoZSBzdGFydCBvZiBhIG5vZGUsCiAgICAgIC8vIGNvbXBlbnNhdGluZyBmb3IgdGhlIGZhY3QgdGhhdCB5b3UgY2FuJ3QgY2FsbAogICAgICAvLyBtb3ZlVG9FbGVtZW50VGV4dCB3aXRoIHRleHQgbm9kZXMuCiAgICAgIGZ1bmN0aW9uIG1vdmVUb05vZGVTdGFydChyYW5nZSwgbm9kZSkgewogICAgICAgIGlmIChub2RlLm5vZGVUeXBlID09IDMpIHsKICAgICAgICAgIHZhciBjb3VudCA9IDAsIGN1ciA9IG5vZGUucHJldmlvdXNTaWJsaW5nOwogICAgICAgICAgd2hpbGUgKGN1ciAmJiBjdXIubm9kZVR5cGUgPT0gMykgewogICAgICAgICAgICBjb3VudCArPSBjdXIubm9kZVZhbHVlLmxlbmd0aDsKICAgICAgICAgICAgY3VyID0gY3VyLnByZXZpb3VzU2libGluZzsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChjdXIpIHsKICAgICAgICAgICAgdHJ5e3JhbmdlLm1vdmVUb0VsZW1lbnRUZXh0KGN1cik7fQogICAgICAgICAgICBjYXRjaChlKXtyZXR1cm4gZmFsc2U7fQogICAgICAgICAgICByYW5nZS5jb2xsYXBzZShmYWxzZSk7CiAgICAgICAgICB9CiAgICAgICAgICBlbHNlIHJhbmdlLm1vdmVUb0VsZW1lbnRUZXh0KG5vZGUucGFyZW50Tm9kZSk7CiAgICAgICAgICBpZiAoY291bnQpIHJhbmdlLm1vdmUoImNoYXJhY3RlciIsIGNvdW50KTsKICAgICAgICB9CiAgICAgICAgZWxzZSB7CiAgICAgICAgICB0cnl7cmFuZ2UubW92ZVRvRWxlbWVudFRleHQobm9kZSk7fQogICAgICAgICAgY2F0Y2goZSl7cmV0dXJuIGZhbHNlO30KICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgIH0KCiAgICAgIC8vIERvIGEgYmluYXJ5IHNlYXJjaCB0aHJvdWdoIHRoZSBjb250YWluZXIgb2JqZWN0LCBjb21wYXJpbmcKICAgICAgLy8gdGhlIHN0YXJ0IG9mIGVhY2ggbm9kZSB0byB0aGUgc2VsZWN0aW9uCiAgICAgIHZhciBzdGFydCA9IDAsIGVuZCA9IGNvbnRhaW5lci5jaGlsZE5vZGVzLmxlbmd0aCAtIDE7CiAgICAgIHdoaWxlIChzdGFydCA8IGVuZCkgewogICAgICAgIHZhciBtaWRkbGUgPSBNYXRoLmNlaWwoKGVuZCArIHN0YXJ0KSAvIDIpLCBub2RlID0gY29udGFpbmVyLmNoaWxkTm9kZXNbbWlkZGxlXTsKICAgICAgICBpZiAoIW5vZGUpIHJldHVybiBmYWxzZTsgLy8gRG9uJ3QgYXNrLiBJRTYgbWFuYWdlcyB0aGlzIHNvbWV0aW1lcy4KICAgICAgICBpZiAoIW1vdmVUb05vZGVTdGFydChyYW5nZTIsIG5vZGUpKSByZXR1cm4gZmFsc2U7CiAgICAgICAgaWYgKHJhbmdlLmNvbXBhcmVFbmRQb2ludHMoIlN0YXJ0VG9TdGFydCIsIHJhbmdlMikgPT0gMSkKICAgICAgICAgIHN0YXJ0ID0gbWlkZGxlOwogICAgICAgIGVsc2UKICAgICAgICAgIGVuZCA9IG1pZGRsZSAtIDE7CiAgICAgIH0KICAgICAgCiAgICAgIGlmIChzdGFydCA9PSAwKSB7CiAgICAgICAgdmFyIHRlc3QxID0gc2VsZWN0aW9uLmNyZWF0ZVJhbmdlKCksIHRlc3QyID0gdGVzdDEuZHVwbGljYXRlKCk7CiAgICAgICAgdGVzdDIubW92ZVRvRWxlbWVudFRleHQoY29udGFpbmVyKTsKICAgICAgICBpZiAodGVzdDEuY29tcGFyZUVuZFBvaW50cygiU3RhcnRUb1N0YXJ0IiwgdGVzdDIpID09IDApCiAgICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgfQogICAgICByZXR1cm4gY29udGFpbmVyLmNoaWxkTm9kZXNbc3RhcnRdIHx8IG51bGw7CiAgICB9OwoKICAgIC8vIFBsYWNlIHRoZSBjdXJzb3IgYWZ0ZXIgdGhpcy5zdGFydC4gVGhpcyBpcyBvbmx5IHVzZWZ1bCB3aGVuCiAgICAvLyBtYW51YWxseSBtb3ZpbmcgdGhlIGN1cnNvciBpbnN0ZWFkIG9mIHJlc3RvcmluZyBpdCB0byBpdHMgb2xkCiAgICAvLyBwb3NpdGlvbi4KICAgIHNlbGVjdC5mb2N1c0FmdGVyTm9kZSA9IGZ1bmN0aW9uKG5vZGUsIGNvbnRhaW5lcikgewogICAgICB2YXIgcmFuZ2UgPSBkb2N1bWVudC5ib2R5LmNyZWF0ZVRleHRSYW5nZSgpOwogICAgICByYW5nZS5tb3ZlVG9FbGVtZW50VGV4dChub2RlIHx8IGNvbnRhaW5lcik7CiAgICAgIHJhbmdlLmNvbGxhcHNlKCFub2RlKTsKICAgICAgcmFuZ2Uuc2VsZWN0KCk7CiAgICB9OwoKICAgIHNlbGVjdC5zb21ldGhpbmdTZWxlY3RlZCA9IGZ1bmN0aW9uKCkgewogICAgICB2YXIgc2VsID0gZG9jdW1lbnQuc2VsZWN0aW9uOwogICAgICByZXR1cm4gc2VsICYmIChzZWwuY3JlYXRlUmFuZ2UoKS50ZXh0ICE9ICIiKTsKICAgIH07CgogICAgZnVuY3Rpb24gaW5zZXJ0QXRDdXJzb3IoaHRtbCkgewogICAgICB2YXIgc2VsZWN0aW9uID0gZG9jdW1lbnQuc2VsZWN0aW9uOwogICAgICBpZiAoc2VsZWN0aW9uKSB7CiAgICAgICAgdmFyIHJhbmdlID0gc2VsZWN0aW9uLmNyZWF0ZVJhbmdlKCk7CiAgICAgICAgcmFuZ2UucGFzdGVIVE1MKGh0bWwpOwogICAgICAgIHJhbmdlLmNvbGxhcHNlKGZhbHNlKTsKICAgICAgICByYW5nZS5zZWxlY3QoKTsKICAgICAgfQogICAgfQoKICAgIC8vIFVzZWQgdG8gbm9ybWFsaXplIHRoZSBlZmZlY3Qgb2YgdGhlIGVudGVyIGtleSwgc2luY2UgYnJvd3NlcnMKICAgIC8vIGRvIHdpZGVseSBkaWZmZXJlbnQgdGhpbmdzIHdoZW4gcHJlc3NpbmcgZW50ZXIgaW4gZGVzaWduTW9kZS4KICAgIHNlbGVjdC5pbnNlcnROZXdsaW5lQXRDdXJzb3IgPSBmdW5jdGlvbigpIHsKICAgICAgaW5zZXJ0QXRDdXJzb3IoIjxicj4iKTsKICAgIH07CgogICAgc2VsZWN0Lmluc2VydFRhYkF0Q3Vyc29yID0gZnVuY3Rpb24oKSB7CiAgICAgIGluc2VydEF0Q3Vyc29yKGZvdXJTcGFjZXMpOwogICAgfTsKCiAgICAvLyBHZXQgdGhlIEJSIG5vZGUgYXQgdGhlIHN0YXJ0IG9mIHRoZSBsaW5lIG9uIHdoaWNoIHRoZSBjdXJzb3IKICAgIC8vIGN1cnJlbnRseSBpcywgYW5kIHRoZSBvZmZzZXQgaW50byB0aGUgbGluZS4gUmV0dXJucyBudWxsIGFzCiAgICAvLyBub2RlIGlmIGN1cnNvciBpcyBvbiBmaXJzdCBsaW5lLgogICAgc2VsZWN0LmN1cnNvclBvcyA9IGZ1bmN0aW9uKGNvbnRhaW5lciwgc3RhcnQpIHsKICAgICAgdmFyIHNlbGVjdGlvbiA9IGRvY3VtZW50LnNlbGVjdGlvbjsKICAgICAgaWYgKCFzZWxlY3Rpb24pIHJldHVybiBudWxsOwoKICAgICAgdmFyIHRvcE5vZGUgPSBzZWxlY3Quc2VsZWN0aW9uVG9wTm9kZShjb250YWluZXIsIHN0YXJ0KTsKICAgICAgd2hpbGUgKHRvcE5vZGUgJiYgIWlzQlIodG9wTm9kZSkpCiAgICAgICAgdG9wTm9kZSA9IHRvcE5vZGUucHJldmlvdXNTaWJsaW5nOwoKICAgICAgdmFyIHJhbmdlID0gc2VsZWN0aW9uLmNyZWF0ZVJhbmdlKCksIHJhbmdlMiA9IHJhbmdlLmR1cGxpY2F0ZSgpOwogICAgICByYW5nZS5jb2xsYXBzZShzdGFydCk7CiAgICAgIGlmICh0b3BOb2RlKSB7CiAgICAgICAgcmFuZ2UyLm1vdmVUb0VsZW1lbnRUZXh0KHRvcE5vZGUpOwogICAgICAgIHJhbmdlMi5jb2xsYXBzZShmYWxzZSk7CiAgICAgIH0KICAgICAgZWxzZSB7CiAgICAgICAgLy8gV2hlbiBub3RoaW5nIGlzIHNlbGVjdGVkLCB3ZSBjYW4gZ2V0IGFsbCBraW5kcyBvZiBmdW5reSBlcnJvcnMgaGVyZS4KICAgICAgICB0cnkgeyByYW5nZTIubW92ZVRvRWxlbWVudFRleHQoY29udGFpbmVyKTsgfQogICAgICAgIGNhdGNoIChlKSB7IHJldHVybiBudWxsOyB9CiAgICAgICAgcmFuZ2UyLmNvbGxhcHNlKHRydWUpOwogICAgICB9CiAgICAgIHJhbmdlLnNldEVuZFBvaW50KCJTdGFydFRvU3RhcnQiLCByYW5nZTIpOwoKICAgICAgcmV0dXJuIHtub2RlOiB0b3BOb2RlLCBvZmZzZXQ6IHJhbmdlLnRleHQubGVuZ3RofTsKICAgIH07CgogICAgc2VsZWN0LnNldEN1cnNvclBvcyA9IGZ1bmN0aW9uKGNvbnRhaW5lciwgZnJvbSwgdG8pIHsKICAgICAgZnVuY3Rpb24gcmFuZ2VBdChwb3MpIHsKICAgICAgICB2YXIgcmFuZ2UgPSBkb2N1bWVudC5ib2R5LmNyZWF0ZVRleHRSYW5nZSgpOwogICAgICAgIGlmICghcG9zLm5vZGUpIHsKICAgICAgICAgIHJhbmdlLm1vdmVUb0VsZW1lbnRUZXh0KGNvbnRhaW5lcik7CiAgICAgICAgICByYW5nZS5jb2xsYXBzZSh0cnVlKTsKICAgICAgICB9CiAgICAgICAgZWxzZSB7CiAgICAgICAgICByYW5nZS5tb3ZlVG9FbGVtZW50VGV4dChwb3Mubm9kZSk7CiAgICAgICAgICByYW5nZS5jb2xsYXBzZShmYWxzZSk7CiAgICAgICAgfQogICAgICAgIHJhbmdlLm1vdmUoImNoYXJhY3RlciIsIHBvcy5vZmZzZXQpOwogICAgICAgIHJldHVybiByYW5nZTsKICAgICAgfQoKICAgICAgdmFyIHJhbmdlID0gcmFuZ2VBdChmcm9tKTsKICAgICAgaWYgKHRvICYmIHRvICE9IGZyb20pCiAgICAgICAgcmFuZ2Uuc2V0RW5kUG9pbnQoIkVuZFRvRW5kIiwgcmFuZ2VBdCh0bykpOwogICAgICByYW5nZS5zZWxlY3QoKTsKICAgIH0KCiAgICAvLyBTb21lIGhhY2tzIGZvciBzdG9yaW5nIGFuZCByZS1zdG9yaW5nIHRoZSBzZWxlY3Rpb24gd2hlbiB0aGUgZWRpdG9yIGxvc2VzIGFuZCByZWdhaW5zIGZvY3VzLgogICAgc2VsZWN0LmdldEJvb2ttYXJrID0gZnVuY3Rpb24gKGNvbnRhaW5lcikgewogICAgICB2YXIgZnJvbSA9IHNlbGVjdC5jdXJzb3JQb3MoY29udGFpbmVyLCB0cnVlKSwgdG8gPSBzZWxlY3QuY3Vyc29yUG9zKGNvbnRhaW5lciwgZmFsc2UpOwogICAgICBpZiAoZnJvbSAmJiB0bykgcmV0dXJuIHtmcm9tOiBmcm9tLCB0bzogdG99OwogICAgfTsKCiAgICAvLyBSZXN0b3JlIGEgc3RvcmVkIHNlbGVjdGlvbi4KICAgIHNlbGVjdC5zZXRCb29rbWFyayA9IGZ1bmN0aW9uKGNvbnRhaW5lciwgbWFyaykgewogICAgICBpZiAoIW1hcmspIHJldHVybjsKICAgICAgc2VsZWN0LnNldEN1cnNvclBvcyhjb250YWluZXIsIG1hcmsuZnJvbSwgbWFyay50byk7CiAgICB9OwogIH0KICAvLyBXM0MgbW9kZWwKICBlbHNlIHsKICAgIC8vIEZpbmQgdGhlIG5vZGUgcmlnaHQgYXQgdGhlIGN1cnNvciwgbm90IG9uZSBvZiBpdHMKICAgIC8vIGFuY2VzdG9ycyB3aXRoIGEgc3VpdGFibGUgb2Zmc2V0LiBUaGlzIGdvZXMgZG93biB0aGUgRE9NIHRyZWUKICAgIC8vIHVudGlsIGEgJ2xlYWYnIGlzIHJlYWNoZWQgKG9yIGlzIGl0ICp1cCogdGhlIERPTSB0cmVlPykuCiAgICBmdW5jdGlvbiBpbm5lck5vZGUobm9kZSwgb2Zmc2V0KSB7CiAgICAgIHdoaWxlIChub2RlLm5vZGVUeXBlICE9IDMgJiYgIWlzQlIobm9kZSkpIHsKICAgICAgICB2YXIgbmV3Tm9kZSA9IG5vZGUuY2hpbGROb2Rlc1tvZmZzZXRdIHx8IG5vZGUubmV4dFNpYmxpbmc7CiAgICAgICAgb2Zmc2V0ID0gMDsKICAgICAgICB3aGlsZSAoIW5ld05vZGUgJiYgbm9kZS5wYXJlbnROb2RlKSB7CiAgICAgICAgICBub2RlID0gbm9kZS5wYXJlbnROb2RlOwogICAgICAgICAgbmV3Tm9kZSA9IG5vZGUubmV4dFNpYmxpbmc7CiAgICAgICAgfQogICAgICAgIG5vZGUgPSBuZXdOb2RlOwogICAgICAgIGlmICghbmV3Tm9kZSkgYnJlYWs7CiAgICAgIH0KICAgICAgcmV0dXJuIHtub2RlOiBub2RlLCBvZmZzZXQ6IG9mZnNldH07CiAgICB9CgogICAgLy8gU3RvcmUgc3RhcnQgYW5kIGVuZCBub2RlcywgYW5kIG9mZnNldHMgd2l0aGluIHRoZXNlLCBhbmQgcmVmZXIKICAgIC8vIGJhY2sgdG8gdGhlIHNlbGVjdGlvbiBvYmplY3QgZnJvbSB0aG9zZSBub2Rlcywgc28gdGhhdCB0aGlzCiAgICAvLyBvYmplY3QgY2FuIGJlIHVwZGF0ZWQgd2hlbiB0aGUgbm9kZXMgYXJlIHJlcGxhY2VkIGJlZm9yZSB0aGUKICAgIC8vIHNlbGVjdGlvbiBpcyByZXN0b3JlZC4KICAgIHNlbGVjdC5tYXJrU2VsZWN0aW9uID0gZnVuY3Rpb24gKCkgewogICAgICB2YXIgc2VsZWN0aW9uID0gd2luZG93LmdldFNlbGVjdGlvbigpOwogICAgICBpZiAoIXNlbGVjdGlvbiB8fCBzZWxlY3Rpb24ucmFuZ2VDb3VudCA9PSAwKQogICAgICAgIHJldHVybiAoY3VycmVudFNlbGVjdGlvbiA9IG51bGwpOwogICAgICB2YXIgcmFuZ2UgPSBzZWxlY3Rpb24uZ2V0UmFuZ2VBdCgwKTsKCiAgICAgIGN1cnJlbnRTZWxlY3Rpb24gPSB7CiAgICAgICAgc3RhcnQ6IGlubmVyTm9kZShyYW5nZS5zdGFydENvbnRhaW5lciwgcmFuZ2Uuc3RhcnRPZmZzZXQpLAogICAgICAgIGVuZDogaW5uZXJOb2RlKHJhbmdlLmVuZENvbnRhaW5lciwgcmFuZ2UuZW5kT2Zmc2V0KSwKICAgICAgICBjaGFuZ2VkOiBmYWxzZQogICAgICB9OwogICAgfTsKCiAgICBzZWxlY3Quc2VsZWN0TWFya2VkID0gZnVuY3Rpb24gKCkgewogICAgICB2YXIgY3MgPSBjdXJyZW50U2VsZWN0aW9uOwogICAgICAvLyBvbiB3ZWJraXQtYmFzZWQgYnJvd3NlcnMsIGl0IGlzIGFwcGFyZW50bHkgcG9zc2libGUgdGhhdCB0aGUKICAgICAgLy8gc2VsZWN0aW9uIGdldHMgcmVzZXQgZXZlbiB3aGVuIGEgbm9kZSB0aGF0IGlzIG5vdCBvbmUgb2YgdGhlCiAgICAgIC8vIGVuZHBvaW50cyBnZXQgbWVzc2VkIHdpdGguIHRoZSBtb3N0IGNvbW1vbiBzaXR1YXRpb24gd2hlcmUKICAgICAgLy8gdGhpcyBvY2N1cnMgaXMgd2hlbiBhIHNlbGVjdGlvbiBpcyBkZWxldGVkIG9yIG92ZXJ3aXR0ZW4uIHdlCiAgICAgIC8vIGNoZWNrIGZvciB0aGF0IGhlcmUuCiAgICAgIGZ1bmN0aW9uIGZvY3VzSXNzdWUoKSB7CiAgICAgICAgaWYgKGNzLnN0YXJ0Lm5vZGUgPT0gY3MuZW5kLm5vZGUgJiYgY3Muc3RhcnQub2Zmc2V0ID09IGNzLmVuZC5vZmZzZXQpIHsKICAgICAgICAgIHZhciBzZWxlY3Rpb24gPSB3aW5kb3cuZ2V0U2VsZWN0aW9uKCk7CiAgICAgICAgICBpZiAoIXNlbGVjdGlvbiB8fCBzZWxlY3Rpb24ucmFuZ2VDb3VudCA9PSAwKSByZXR1cm4gdHJ1ZTsKICAgICAgICAgIHZhciByYW5nZSA9IHNlbGVjdGlvbi5nZXRSYW5nZUF0KDApLCBwb2ludCA9IGlubmVyTm9kZShyYW5nZS5zdGFydENvbnRhaW5lciwgcmFuZ2Uuc3RhcnRPZmZzZXQpOwogICAgICAgICAgcmV0dXJuIGNzLnN0YXJ0Lm5vZGUgIT0gcG9pbnQubm9kZSB8fCBjcy5zdGFydC5vZmZzZXQgIT0gcG9pbnQub2Zmc2V0OwogICAgICAgIH0KICAgICAgfQogICAgICBpZiAoIWNzIHx8ICEoY3MuY2hhbmdlZCB8fCAod2Via2l0ICYmIGZvY3VzSXNzdWUoKSkpKSByZXR1cm47CiAgICAgIHZhciByYW5nZSA9IGRvY3VtZW50LmNyZWF0ZVJhbmdlKCk7CgogICAgICBmdW5jdGlvbiBzZXRQb2ludChwb2ludCwgd2hpY2gpIHsKICAgICAgICBpZiAocG9pbnQubm9kZSkgewogICAgICAgICAgLy8gU29tZSBtYWdpYyB0byBnZW5lcmFsaXplIHRoZSBzZXR0aW5nIG9mIHRoZSBzdGFydCBhbmQgZW5kCiAgICAgICAgICAvLyBvZiBhIHJhbmdlLgogICAgICAgICAgaWYgKHBvaW50Lm9mZnNldCA9PSAwKQogICAgICAgICAgICByYW5nZVsic2V0IiArIHdoaWNoICsgIkJlZm9yZSJdKHBvaW50Lm5vZGUpOwogICAgICAgICAgZWxzZQogICAgICAgICAgICByYW5nZVsic2V0IiArIHdoaWNoXShwb2ludC5ub2RlLCBwb2ludC5vZmZzZXQpOwogICAgICAgIH0KICAgICAgICBlbHNlIHsKICAgICAgICAgIHJhbmdlLnNldFN0YXJ0QWZ0ZXIoZG9jdW1lbnQuYm9keS5sYXN0Q2hpbGQgfHwgZG9jdW1lbnQuYm9keSk7CiAgICAgICAgfQogICAgICB9CgogICAgICBzZXRQb2ludChjcy5lbmQsICJFbmQiKTsKICAgICAgc2V0UG9pbnQoY3Muc3RhcnQsICJTdGFydCIpOwogICAgICBzZWxlY3RSYW5nZShyYW5nZSk7CiAgICB9OwoKICAgIC8vIEhlbHBlciBmb3Igc2VsZWN0aW5nIGEgcmFuZ2Ugb2JqZWN0LgogICAgZnVuY3Rpb24gc2VsZWN0UmFuZ2UocmFuZ2UpIHsKICAgICAgdmFyIHNlbGVjdGlvbiA9IHdpbmRvdy5nZXRTZWxlY3Rpb24oKTsKICAgICAgaWYgKCFzZWxlY3Rpb24pIHJldHVybjsKICAgICAgc2VsZWN0aW9uLnJlbW92ZUFsbFJhbmdlcygpOwogICAgICBzZWxlY3Rpb24uYWRkUmFuZ2UocmFuZ2UpOwogICAgfQogICAgZnVuY3Rpb24gc2VsZWN0aW9uUmFuZ2UoKSB7CiAgICAgIHZhciBzZWxlY3Rpb24gPSB3aW5kb3cuZ2V0U2VsZWN0aW9uKCk7CiAgICAgIGlmICghc2VsZWN0aW9uIHx8IHNlbGVjdGlvbi5yYW5nZUNvdW50ID09IDApCiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICBlbHNlCiAgICAgICAgcmV0dXJuIHNlbGVjdGlvbi5nZXRSYW5nZUF0KDApOwogICAgfQoKICAgIC8vIEZpbmRpbmcgdGhlIHRvcC1sZXZlbCBub2RlIGF0IHRoZSBjdXJzb3IgaW4gdGhlIFczQyBpcywgYXMgeW91CiAgICAvLyBjYW4gc2VlLCBxdWl0ZSBhbiBpbnZvbHZlZCBwcm9jZXNzLgogICAgc2VsZWN0LnNlbGVjdGlvblRvcE5vZGUgPSBmdW5jdGlvbihjb250YWluZXIsIHN0YXJ0KSB7CiAgICAgIHZhciByYW5nZSA9IHNlbGVjdGlvblJhbmdlKCk7CiAgICAgIGlmICghcmFuZ2UpIHJldHVybiBmYWxzZTsKCiAgICAgIHZhciBub2RlID0gc3RhcnQgPyByYW5nZS5zdGFydENvbnRhaW5lciA6IHJhbmdlLmVuZENvbnRhaW5lcjsKICAgICAgdmFyIG9mZnNldCA9IHN0YXJ0ID8gcmFuZ2Uuc3RhcnRPZmZzZXQgOiByYW5nZS5lbmRPZmZzZXQ7CiAgICAgIC8vIFdvcmsgYXJvdW5kICh5ZXQgYW5vdGhlcikgYnVnIGluIE9wZXJhJ3Mgc2VsZWN0aW9uIG1vZGVsLgogICAgICBpZiAod2luZG93Lm9wZXJhICYmICFzdGFydCAmJiByYW5nZS5lbmRDb250YWluZXIgPT0gY29udGFpbmVyICYmIHJhbmdlLmVuZE9mZnNldCA9PSByYW5nZS5zdGFydE9mZnNldCArIDEgJiYKICAgICAgICAgIGNvbnRhaW5lci5jaGlsZE5vZGVzW3JhbmdlLnN0YXJ0T2Zmc2V0XSAmJiBpc0JSKGNvbnRhaW5lci5jaGlsZE5vZGVzW3JhbmdlLnN0YXJ0T2Zmc2V0XSkpCiAgICAgICAgb2Zmc2V0LS07CgogICAgICAvLyBGb3IgdGV4dCBub2Rlcywgd2UgbG9vayBhdCB0aGUgbm9kZSBpdHNlbGYgaWYgdGhlIGN1cnNvciBpcwogICAgICAvLyBpbnNpZGUsIG9yIGF0IHRoZSBub2RlIGJlZm9yZSBpdCBpZiB0aGUgY3Vyc29yIGlzIGF0IHRoZQogICAgICAvLyBzdGFydC4KICAgICAgaWYgKG5vZGUubm9kZVR5cGUgPT0gMyl7CiAgICAgICAgaWYgKG9mZnNldCA+IDApCiAgICAgICAgICByZXR1cm4gdG9wTGV2ZWxOb2RlQXQobm9kZSwgY29udGFpbmVyKTsKICAgICAgICBlbHNlCiAgICAgICAgICByZXR1cm4gdG9wTGV2ZWxOb2RlQmVmb3JlKG5vZGUsIGNvbnRhaW5lcik7CiAgICAgIH0KICAgICAgLy8gT2NjYXNpb25hbGx5LCBicm93c2VycyB3aWxsIHJldHVybiB0aGUgSFRNTCBub2RlIGFzCiAgICAgIC8vIHNlbGVjdGlvbi4gSWYgdGhlIG9mZnNldCBpcyAwLCB3ZSB0YWtlIHRoZSBzdGFydCBvZiB0aGUgZnJhbWUKICAgICAgLy8gKCdhZnRlciBudWxsJyksIG90aGVyd2lzZSwgd2UgdGFrZSB0aGUgbGFzdCBub2RlLgogICAgICBlbHNlIGlmIChub2RlLm5vZGVOYW1lLnRvVXBwZXJDYXNlKCkgPT0gIkhUTUwiKSB7CiAgICAgICAgcmV0dXJuIChvZmZzZXQgPT0gMSA/IG51bGwgOiBjb250YWluZXIubGFzdENoaWxkKTsKICAgICAgfQogICAgICAvLyBJZiB0aGUgZ2l2ZW4gbm9kZSBpcyBvdXIgJ2NvbnRhaW5lcicsIHdlIGp1c3QgbG9vayB1cCB0aGUKICAgICAgLy8gY29ycmVjdCBub2RlIGJ5IHVzaW5nIHRoZSBvZmZzZXQuCiAgICAgIGVsc2UgaWYgKG5vZGUgPT0gY29udGFpbmVyKSB7CiAgICAgICAgcmV0dXJuIChvZmZzZXQgPT0gMCkgPyBudWxsIDogbm9kZS5jaGlsZE5vZGVzW29mZnNldCAtIDFdOwogICAgICB9CiAgICAgIC8vIEluIGFueSBvdGhlciBjYXNlLCB3ZSBoYXZlIGEgcmVndWxhciBub2RlLiBJZiB0aGUgY3Vyc29yIGlzCiAgICAgIC8vIGF0IHRoZSBlbmQgb2YgdGhlIG5vZGUsIHdlIHVzZSB0aGUgbm9kZSBpdHNlbGYsIGlmIGl0IGlzIGF0CiAgICAgIC8vIHRoZSBzdGFydCwgd2UgdXNlIHRoZSBub2RlIGJlZm9yZSBpdCwgYW5kIGluIGFueSBvdGhlcgogICAgICAvLyBjYXNlLCB3ZSBsb29rIHVwIHRoZSBjaGlsZCBiZWZvcmUgdGhlIGN1cnNvciBhbmQgdXNlIHRoYXQuCiAgICAgIGVsc2UgewogICAgICAgIGlmIChvZmZzZXQgPT0gbm9kZS5jaGlsZE5vZGVzLmxlbmd0aCkKICAgICAgICAgIHJldHVybiB0b3BMZXZlbE5vZGVBdChub2RlLCBjb250YWluZXIpOwogICAgICAgIGVsc2UgaWYgKG9mZnNldCA9PSAwKQogICAgICAgICAgcmV0dXJuIHRvcExldmVsTm9kZUJlZm9yZShub2RlLCBjb250YWluZXIpOwogICAgICAgIGVsc2UKICAgICAgICAgIHJldHVybiB0b3BMZXZlbE5vZGVBdChub2RlLmNoaWxkTm9kZXNbb2Zmc2V0IC0gMV0sIGNvbnRhaW5lcik7CiAgICAgIH0KICAgIH07CgogICAgc2VsZWN0LmZvY3VzQWZ0ZXJOb2RlID0gZnVuY3Rpb24obm9kZSwgY29udGFpbmVyKSB7CiAgICAgIHZhciByYW5nZSA9IGRvY3VtZW50LmNyZWF0ZVJhbmdlKCk7CiAgICAgIHJhbmdlLnNldFN0YXJ0QmVmb3JlKGNvbnRhaW5lci5maXJzdENoaWxkIHx8IGNvbnRhaW5lcik7CiAgICAgIC8vIEluIE9wZXJhLCBzZXR0aW5nIHRoZSBlbmQgb2YgYSByYW5nZSBhdCB0aGUgZW5kIG9mIGEgbGluZQogICAgICAvLyAoYmVmb3JlIGEgQlIpIHdpbGwgY2F1c2UgdGhlIGN1cnNvciB0byBhcHBlYXIgb24gdGhlIG5leHQKICAgICAgLy8gbGluZSwgc28gd2Ugc2V0IHRoZSBlbmQgaW5zaWRlIG9mIHRoZSBzdGFydCBub2RlIHdoZW4KICAgICAgLy8gcG9zc2libGUuCiAgICAgIGlmIChub2RlICYmICFub2RlLmZpcnN0Q2hpbGQpCiAgICAgICAgcmFuZ2Uuc2V0RW5kQWZ0ZXIobm9kZSk7CiAgICAgIGVsc2UgaWYgKG5vZGUpCiAgICAgICAgcmFuZ2Uuc2V0RW5kKG5vZGUsIG5vZGUuY2hpbGROb2Rlcy5sZW5ndGgpOwogICAgICBlbHNlCiAgICAgICAgcmFuZ2Uuc2V0RW5kQmVmb3JlKGNvbnRhaW5lci5maXJzdENoaWxkIHx8IGNvbnRhaW5lcik7CiAgICAgIHJhbmdlLmNvbGxhcHNlKGZhbHNlKTsKICAgICAgc2VsZWN0UmFuZ2UocmFuZ2UpOwogICAgfTsKCiAgICBzZWxlY3Quc29tZXRoaW5nU2VsZWN0ZWQgPSBmdW5jdGlvbigpIHsKICAgICAgdmFyIHJhbmdlID0gc2VsZWN0aW9uUmFuZ2UoKTsKICAgICAgcmV0dXJuIHJhbmdlICYmICFyYW5nZS5jb2xsYXBzZWQ7CiAgICB9OwoKICAgIHNlbGVjdC5vZmZzZXRJbk5vZGUgPSBmdW5jdGlvbihub2RlKSB7CiAgICAgIHZhciByYW5nZSA9IHNlbGVjdGlvblJhbmdlKCk7CiAgICAgIGlmICghcmFuZ2UpIHJldHVybiAwOwogICAgICByYW5nZSA9IHJhbmdlLmNsb25lUmFuZ2UoKTsKICAgICAgcmFuZ2Uuc2V0U3RhcnRCZWZvcmUobm9kZSk7CiAgICAgIHJldHVybiByYW5nZS50b1N0cmluZygpLmxlbmd0aDsKICAgIH07CgogICAgZnVuY3Rpb24gaW5zZXJ0Tm9kZUF0Q3Vyc29yKG5vZGUpIHsKICAgICAgdmFyIHJhbmdlID0gc2VsZWN0aW9uUmFuZ2UoKTsKICAgICAgaWYgKCFyYW5nZSkgcmV0dXJuOwoKICAgICAgcmFuZ2UuZGVsZXRlQ29udGVudHMoKTsKICAgICAgcmFuZ2UuaW5zZXJ0Tm9kZShub2RlKTsKICAgICAgd2Via2l0TGFzdExpbmVIYWNrKGRvY3VtZW50LmJvZHkpOwoKICAgICAgLy8gd29yayBhcm91bmQgd2VpcmRuZXNzIHdoZXJlIE9wZXJhIHdpbGwgbWFnaWNhbGx5IGluc2VydCBhIG5ldwogICAgICAvLyBCUiBub2RlIHdoZW4gYSBCUiBub2RlIGluc2lkZSBhIHNwYW4gaXMgbW92ZWQgYXJvdW5kLiBtYWtlcwogICAgICAvLyBzdXJlIHRoZSBCUiBlbmRzIHVwIG91dHNpZGUgb2Ygc3BhbnMuCiAgICAgIGlmICh3aW5kb3cub3BlcmEgJiYgaXNCUihub2RlKSAmJiBpc1NwYW4obm9kZS5wYXJlbnROb2RlKSkgewogICAgICAgIHZhciBuZXh0ID0gbm9kZS5uZXh0U2libGluZywgcCA9IG5vZGUucGFyZW50Tm9kZSwgb3V0ZXIgPSBwLnBhcmVudE5vZGU7CiAgICAgICAgb3V0ZXIuaW5zZXJ0QmVmb3JlKG5vZGUsIHAubmV4dFNpYmxpbmcpOwogICAgICAgIHZhciB0ZXh0QWZ0ZXIgPSAiIjsKICAgICAgICBmb3IgKDsgbmV4dCAmJiBuZXh0Lm5vZGVUeXBlID09IDM7IG5leHQgPSBuZXh0Lm5leHRTaWJsaW5nKSB7CiAgICAgICAgICB0ZXh0QWZ0ZXIgKz0gbmV4dC5ub2RlVmFsdWU7CiAgICAgICAgICByZW1vdmVFbGVtZW50KG5leHQpOwogICAgICAgIH0KICAgICAgICBvdXRlci5pbnNlcnRCZWZvcmUobWFrZVBhcnRTcGFuKHRleHRBZnRlciwgZG9jdW1lbnQpLCBub2RlLm5leHRTaWJsaW5nKTsKICAgICAgfQogICAgICByYW5nZSA9IGRvY3VtZW50LmNyZWF0ZVJhbmdlKCk7CiAgICAgIHJhbmdlLnNlbGVjdE5vZGUobm9kZSk7CiAgICAgIHJhbmdlLmNvbGxhcHNlKGZhbHNlKTsKICAgICAgc2VsZWN0UmFuZ2UocmFuZ2UpOwogICAgfQoKICAgIHNlbGVjdC5pbnNlcnROZXdsaW5lQXRDdXJzb3IgPSBmdW5jdGlvbigpIHsKICAgICAgaW5zZXJ0Tm9kZUF0Q3Vyc29yKGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoIkJSIikpOwogICAgfTsKCiAgICBzZWxlY3QuaW5zZXJ0VGFiQXRDdXJzb3IgPSBmdW5jdGlvbigpIHsKICAgICAgaW5zZXJ0Tm9kZUF0Q3Vyc29yKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKGZvdXJTcGFjZXMpKTsKICAgIH07CgogICAgc2VsZWN0LmN1cnNvclBvcyA9IGZ1bmN0aW9uKGNvbnRhaW5lciwgc3RhcnQpIHsKICAgICAgdmFyIHJhbmdlID0gc2VsZWN0aW9uUmFuZ2UoKTsKICAgICAgaWYgKCFyYW5nZSkgcmV0dXJuOwoKICAgICAgdmFyIHRvcE5vZGUgPSBzZWxlY3Quc2VsZWN0aW9uVG9wTm9kZShjb250YWluZXIsIHN0YXJ0KTsKICAgICAgd2hpbGUgKHRvcE5vZGUgJiYgIWlzQlIodG9wTm9kZSkpCiAgICAgICAgdG9wTm9kZSA9IHRvcE5vZGUucHJldmlvdXNTaWJsaW5nOwoKICAgICAgcmFuZ2UgPSByYW5nZS5jbG9uZVJhbmdlKCk7CiAgICAgIHJhbmdlLmNvbGxhcHNlKHN0YXJ0KTsKICAgICAgaWYgKHRvcE5vZGUpCiAgICAgICAgcmFuZ2Uuc2V0U3RhcnRBZnRlcih0b3BOb2RlKTsKICAgICAgZWxzZQogICAgICAgIHJhbmdlLnNldFN0YXJ0QmVmb3JlKGNvbnRhaW5lcik7CgogICAgICB2YXIgdGV4dCA9IHJhbmdlLnRvU3RyaW5nKCk7CiAgICAgIHJldHVybiB7bm9kZTogdG9wTm9kZSwgb2Zmc2V0OiB0ZXh0Lmxlbmd0aH07CiAgICB9OwoKICAgIHNlbGVjdC5zZXRDdXJzb3JQb3MgPSBmdW5jdGlvbihjb250YWluZXIsIGZyb20sIHRvKSB7CiAgICAgIHZhciByYW5nZSA9IGRvY3VtZW50LmNyZWF0ZVJhbmdlKCk7CgogICAgICBmdW5jdGlvbiBzZXRQb2ludChub2RlLCBvZmZzZXQsIHNpZGUpIHsKICAgICAgICBpZiAob2Zmc2V0ID09IDAgJiYgbm9kZSAmJiAhbm9kZS5uZXh0U2libGluZykgewogICAgICAgICAgcmFuZ2VbInNldCIgKyBzaWRlICsgIkFmdGVyIl0obm9kZSk7CiAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9CgogICAgICAgIGlmICghbm9kZSkKICAgICAgICAgIG5vZGUgPSBjb250YWluZXIuZmlyc3RDaGlsZDsKICAgICAgICBlbHNlCiAgICAgICAgICBub2RlID0gbm9kZS5uZXh0U2libGluZzsKCiAgICAgICAgaWYgKCFub2RlKSByZXR1cm47CgogICAgICAgIGlmIChvZmZzZXQgPT0gMCkgewogICAgICAgICAgcmFuZ2VbInNldCIgKyBzaWRlICsgIkJlZm9yZSJdKG5vZGUpOwogICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgfQoKICAgICAgICB2YXIgYmFja2xvZyA9IFtdCiAgICAgICAgZnVuY3Rpb24gZGVjb21wb3NlKG5vZGUpIHsKICAgICAgICAgIGlmIChub2RlLm5vZGVUeXBlID09IDMpCiAgICAgICAgICAgIGJhY2tsb2cucHVzaChub2RlKTsKICAgICAgICAgIGVsc2UKICAgICAgICAgICAgZm9yRWFjaChub2RlLmNoaWxkTm9kZXMsIGRlY29tcG9zZSk7CiAgICAgICAgfQogICAgICAgIHdoaWxlICh0cnVlKSB7CiAgICAgICAgICB3aGlsZSAobm9kZSAmJiAhYmFja2xvZy5sZW5ndGgpIHsKICAgICAgICAgICAgZGVjb21wb3NlKG5vZGUpOwogICAgICAgICAgICBub2RlID0gbm9kZS5uZXh0U2libGluZzsKICAgICAgICAgIH0KICAgICAgICAgIHZhciBjdXIgPSBiYWNrbG9nLnNoaWZ0KCk7CiAgICAgICAgICBpZiAoIWN1cikgcmV0dXJuIGZhbHNlOwoKICAgICAgICAgIHZhciBsZW5ndGggPSBjdXIubm9kZVZhbHVlLmxlbmd0aDsKICAgICAgICAgIGlmIChsZW5ndGggPj0gb2Zmc2V0KSB7CiAgICAgICAgICAgIHJhbmdlWyJzZXQiICsgc2lkZV0oY3VyLCBvZmZzZXQpOwogICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgIH0KICAgICAgICAgIG9mZnNldCAtPSBsZW5ndGg7CiAgICAgICAgfQogICAgICB9CgogICAgICB0byA9IHRvIHx8IGZyb207CiAgICAgIGlmIChzZXRQb2ludCh0by5ub2RlLCB0by5vZmZzZXQsICJFbmQiKSAmJiBzZXRQb2ludChmcm9tLm5vZGUsIGZyb20ub2Zmc2V0LCAiU3RhcnQiKSkKICAgICAgICBzZWxlY3RSYW5nZShyYW5nZSk7CiAgICB9OwogIH0KfSkoKTsK]]></data>
	</file>
	<file>
	  <filename>/includes/CodeMirror/js/stringstream.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[LyogU3RyaW5nIHN0cmVhbXMgYXJlIHRoZSB0aGluZ3MgZmVkIHRvIHBhcnNlcnMgKHdoaWNoIGNhbiBmZWVkIHRoZW0KICogdG8gYSB0b2tlbml6ZXIgaWYgdGhleSB3YW50KS4gVGhleSBwcm92aWRlIHBlZWsgYW5kIG5leHQgbWV0aG9kcwogKiBmb3IgbG9va2luZyBhdCB0aGUgY3VycmVudCBjaGFyYWN0ZXIgKG5leHQgJ2NvbnN1bWVzJyB0aGlzCiAqIGNoYXJhY3RlciwgcGVlayBkb2VzIG5vdCksIGFuZCBhIGdldCBtZXRob2QgZm9yIHJldHJpZXZpbmcgYWxsIHRoZQogKiB0ZXh0IHRoYXQgd2FzIGNvbnN1bWVkIHNpbmNlIHRoZSBsYXN0IHRpbWUgZ2V0IHdhcyBjYWxsZWQuCiAqCiAqIEFuIGVhc3kgbWlzdGFrZSB0byBtYWtlIGlzIHRvIGxldCBhIFN0b3BJdGVyYXRpb24gZXhjZXB0aW9uIGZpbmlzaAogKiB0aGUgdG9rZW4gc3RyZWFtIHdoaWxlIHRoZXJlIGFyZSBzdGlsbCBjaGFyYWN0ZXJzIHBlbmRpbmcgaW4gdGhlCiAqIHN0cmluZyBzdHJlYW0gKGhpdHRpbmcgdGhlIGVuZCBvZiB0aGUgYnVmZmVyIHdoaWxlIHBhcnNpbmcgYQogKiB0b2tlbikuIFRvIG1ha2UgaXQgZWFzaWVyIHRvIGRldGVjdCBzdWNoIGVycm9ycywgdGhlIHN0cmluZ3N0cmVhbXMKICogdGhyb3cgYW4gZXhjZXB0aW9uIHdoZW4gdGhpcyBoYXBwZW5zLgogKi8KCi8vIE1ha2UgYSBzdHJpbmdzdHJlYW0gc3RyZWFtIG91dCBvZiBhbiBpdGVyYXRvciB0aGF0IHJldHVybnMgc3RyaW5ncy4KLy8gVGhpcyBpcyBhcHBsaWVkIHRvIHRoZSByZXN1bHQgb2YgdHJhdmVyc2VET00gKHNlZSBjb2RlbWlycm9yLmpzKSwKLy8gYW5kIHRoZSByZXN1bHRpbmcgc3RyZWFtIGlzIGZlZCB0byB0aGUgcGFyc2VyLgp2YXIgc3RyaW5nU3RyZWFtID0gZnVuY3Rpb24oc291cmNlKXsKICAvLyBTdHJpbmcgdGhhdCdzIGN1cnJlbnRseSBiZWluZyBpdGVyYXRlZCBvdmVyLgogIHZhciBjdXJyZW50ID0gIiI7CiAgLy8gUG9zaXRpb24gaW4gdGhhdCBzdHJpbmcuCiAgdmFyIHBvcyA9IDA7CiAgLy8gQWNjdW11bGF0b3IgZm9yIHN0cmluZ3MgdGhhdCBoYXZlIGJlZW4gaXRlcmF0ZWQgb3ZlciBidXQgbm90CiAgLy8gZ2V0KCktZWQgeWV0LgogIHZhciBhY2N1bSA9ICIiOwogIC8vIE1ha2Ugc3VyZSB0aGVyZSBhcmUgbW9yZSBjaGFyYWN0ZXJzIHJlYWR5LCBvciB0aHJvdwogIC8vIFN0b3BJdGVyYXRpb24uCiAgZnVuY3Rpb24gZW5zdXJlQ2hhcnMoKSB7CiAgICB3aGlsZSAocG9zID09IGN1cnJlbnQubGVuZ3RoKSB7CiAgICAgIGFjY3VtICs9IGN1cnJlbnQ7CiAgICAgIGN1cnJlbnQgPSAiIjsgLy8gSW4gY2FzZSBzb3VyY2UubmV4dCgpIHRocm93cwogICAgICBwb3MgPSAwOwogICAgICB0cnkge2N1cnJlbnQgPSBzb3VyY2UubmV4dCgpO30KICAgICAgY2F0Y2ggKGUpIHsKICAgICAgICBpZiAoZSAhPSBTdG9wSXRlcmF0aW9uKSB0aHJvdyBlOwogICAgICAgIGVsc2UgcmV0dXJuIGZhbHNlOwogICAgICB9CiAgICB9CiAgICByZXR1cm4gdHJ1ZTsKICB9CgogIHJldHVybiB7CiAgICAvLyBwZWVrOiAtPiBjaGFyYWN0ZXIKICAgIC8vIFJldHVybiB0aGUgbmV4dCBjaGFyYWN0ZXIgaW4gdGhlIHN0cmVhbS4KICAgIHBlZWs6IGZ1bmN0aW9uKCkgewogICAgICBpZiAoIWVuc3VyZUNoYXJzKCkpIHJldHVybiBudWxsOwogICAgICByZXR1cm4gY3VycmVudC5jaGFyQXQocG9zKTsKICAgIH0sCiAgICAvLyBuZXh0OiAtPiBjaGFyYWN0ZXIKICAgIC8vIEdldCB0aGUgbmV4dCBjaGFyYWN0ZXIsIHRocm93IFN0b3BJdGVyYXRpb24gaWYgYXQgZW5kLCBjaGVjawogICAgLy8gZm9yIHVudXNlZCBjb250ZW50LgogICAgbmV4dDogZnVuY3Rpb24oKSB7CiAgICAgIGlmICghZW5zdXJlQ2hhcnMoKSkgewogICAgICAgIGlmIChhY2N1bS5sZW5ndGggPiAwKQogICAgICAgICAgdGhyb3cgIkVuZCBvZiBzdHJpbmdzdHJlYW0gcmVhY2hlZCB3aXRob3V0IGVtcHR5aW5nIGJ1ZmZlciAoJyIgKyBhY2N1bSArICInKS4iOwogICAgICAgIGVsc2UKICAgICAgICAgIHRocm93IFN0b3BJdGVyYXRpb247CiAgICAgIH0KICAgICAgcmV0dXJuIGN1cnJlbnQuY2hhckF0KHBvcysrKTsKICAgIH0sCiAgICAvLyBnZXQoKTogLT4gc3RyaW5nCiAgICAvLyBSZXR1cm4gdGhlIGNoYXJhY3RlcnMgaXRlcmF0ZWQgb3ZlciBzaW5jZSB0aGUgbGFzdCBjYWxsIHRvCiAgICAvLyAuZ2V0KCkuCiAgICBnZXQ6IGZ1bmN0aW9uKCkgewogICAgICB2YXIgdGVtcCA9IGFjY3VtOwogICAgICBhY2N1bSA9ICIiOwogICAgICBpZiAocG9zID4gMCl7CiAgICAgICAgdGVtcCArPSBjdXJyZW50LnNsaWNlKDAsIHBvcyk7CiAgICAgICAgY3VycmVudCA9IGN1cnJlbnQuc2xpY2UocG9zKTsKICAgICAgICBwb3MgPSAwOwogICAgICB9CiAgICAgIHJldHVybiB0ZW1wOwogICAgfSwKICAgIC8vIFB1c2ggYSBzdHJpbmcgYmFjayBpbnRvIHRoZSBzdHJlYW0uCiAgICBwdXNoOiBmdW5jdGlvbihzdHIpIHsKICAgICAgY3VycmVudCA9IGN1cnJlbnQuc2xpY2UoMCwgcG9zKSArIHN0ciArIGN1cnJlbnQuc2xpY2UocG9zKTsKICAgIH0sCiAgICBsb29rQWhlYWQ6IGZ1bmN0aW9uKHN0ciwgY29uc3VtZSwgc2tpcFNwYWNlcywgY2FzZUluc2Vuc2l0aXZlKSB7CiAgICAgIGZ1bmN0aW9uIGNhc2VkKHN0cikge3JldHVybiBjYXNlSW5zZW5zaXRpdmUgPyBzdHIudG9Mb3dlckNhc2UoKSA6IHN0cjt9CiAgICAgIHN0ciA9IGNhc2VkKHN0cik7CiAgICAgIHZhciBmb3VuZCA9IGZhbHNlOwoKICAgICAgdmFyIF9hY2N1bSA9IGFjY3VtLCBfcG9zID0gcG9zOwogICAgICBpZiAoc2tpcFNwYWNlcykgdGhpcy5uZXh0V2hpbGVNYXRjaGVzKC9bXHNcdTAwYTBdLyk7CgogICAgICB3aGlsZSAodHJ1ZSkgewogICAgICAgIHZhciBlbmQgPSBwb3MgKyBzdHIubGVuZ3RoLCBsZWZ0ID0gY3VycmVudC5sZW5ndGggLSBwb3M7CiAgICAgICAgaWYgKGVuZCA8PSBjdXJyZW50Lmxlbmd0aCkgewogICAgICAgICAgZm91bmQgPSBzdHIgPT0gY2FzZWQoY3VycmVudC5zbGljZShwb3MsIGVuZCkpOwogICAgICAgICAgcG9zID0gZW5kOwogICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgICAgIGVsc2UgaWYgKHN0ci5zbGljZSgwLCBsZWZ0KSA9PSBjYXNlZChjdXJyZW50LnNsaWNlKHBvcykpKSB7CiAgICAgICAgICBhY2N1bSArPSBjdXJyZW50OyBjdXJyZW50ID0gIiI7CiAgICAgICAgICB0cnkge2N1cnJlbnQgPSBzb3VyY2UubmV4dCgpO30KICAgICAgICAgIGNhdGNoIChlKSB7YnJlYWs7fQogICAgICAgICAgcG9zID0gMDsKICAgICAgICAgIHN0ciA9IHN0ci5zbGljZShsZWZ0KTsKICAgICAgICB9CiAgICAgICAgZWxzZSB7CiAgICAgICAgICBicmVhazsKICAgICAgICB9CiAgICAgIH0KCiAgICAgIGlmICghKGZvdW5kICYmIGNvbnN1bWUpKSB7CiAgICAgICAgY3VycmVudCA9IGFjY3VtLnNsaWNlKF9hY2N1bS5sZW5ndGgpICsgY3VycmVudDsKICAgICAgICBwb3MgPSBfcG9zOwogICAgICAgIGFjY3VtID0gX2FjY3VtOwogICAgICB9CgogICAgICByZXR1cm4gZm91bmQ7CiAgICB9LAoKICAgIC8vIFV0aWxzIGJ1aWx0IG9uIHRvcCBvZiB0aGUgYWJvdmUKICAgIC8vIG1vcmU6IC0+IGJvb2xlYW4KICAgIC8vIFByb2R1Y2UgdHJ1ZSBpZiB0aGUgc3RyZWFtIGlzbid0IGVtcHR5LgogICAgbW9yZTogZnVuY3Rpb24oKSB7CiAgICAgIHJldHVybiB0aGlzLnBlZWsoKSAhPT0gbnVsbDsKICAgIH0sCiAgICBhcHBsaWVzOiBmdW5jdGlvbih0ZXN0KSB7CiAgICAgIHZhciBuZXh0ID0gdGhpcy5wZWVrKCk7CiAgICAgIHJldHVybiAobmV4dCAhPT0gbnVsbCAmJiB0ZXN0KG5leHQpKTsKICAgIH0sCiAgICBuZXh0V2hpbGU6IGZ1bmN0aW9uKHRlc3QpIHsKICAgICAgdmFyIG5leHQ7CiAgICAgIHdoaWxlICgobmV4dCA9IHRoaXMucGVlaygpKSAhPT0gbnVsbCAmJiB0ZXN0KG5leHQpKQogICAgICAgIHRoaXMubmV4dCgpOwogICAgfSwKICAgIG1hdGNoZXM6IGZ1bmN0aW9uKHJlKSB7CiAgICAgIHZhciBuZXh0ID0gdGhpcy5wZWVrKCk7CiAgICAgIHJldHVybiAobmV4dCAhPT0gbnVsbCAmJiByZS50ZXN0KG5leHQpKTsKICAgIH0sCiAgICBuZXh0V2hpbGVNYXRjaGVzOiBmdW5jdGlvbihyZSkgewogICAgICB2YXIgbmV4dDsKICAgICAgd2hpbGUgKChuZXh0ID0gdGhpcy5wZWVrKCkpICE9PSBudWxsICYmIHJlLnRlc3QobmV4dCkpCiAgICAgICAgdGhpcy5uZXh0KCk7CiAgICB9LAogICAgZXF1YWxzOiBmdW5jdGlvbihjaCkgewogICAgICByZXR1cm4gY2ggPT09IHRoaXMucGVlaygpOwogICAgfSwKICAgIGVuZE9mTGluZTogZnVuY3Rpb24oKSB7CiAgICAgIHZhciBuZXh0ID0gdGhpcy5wZWVrKCk7CiAgICAgIHJldHVybiBuZXh0ID09IG51bGwgfHwgbmV4dCA9PSAiXG4iOwogICAgfQogIH07Cn07Cg==]]></data>
	</file>
	<file>
	  <filename>/includes/CodeMirror/js/tokenize.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[Ly8gQSBmcmFtZXdvcmsgZm9yIHNpbXBsZSB0b2tlbml6ZXJzLiBUYWtlcyBjYXJlIG9mIG5ld2xpbmVzIGFuZAovLyB3aGl0ZS1zcGFjZSwgYW5kIG9mIGdldHRpbmcgdGhlIHRleHQgZnJvbSB0aGUgc291cmNlIHN0cmVhbSBpbnRvCi8vIHRoZSB0b2tlbiBvYmplY3QuIEEgc3RhdGUgaXMgYSBmdW5jdGlvbiBvZiB0d28gYXJndW1lbnRzIC0tIGEKLy8gc3RyaW5nIHN0cmVhbSBhbmQgYSBzZXRTdGF0ZSBmdW5jdGlvbi4gVGhlIHNlY29uZCBjYW4gYmUgdXNlZCB0bwovLyBjaGFuZ2UgdGhlIHRva2VuaXplcidzIHN0YXRlLCBhbmQgY2FuIGJlIGlnbm9yZWQgZm9yIHN0YXRlbGVzcwovLyB0b2tlbml6ZXJzLiBUaGlzIGZ1bmN0aW9uIHNob3VsZCBhZHZhbmNlIHRoZSBzdHJlYW0gb3ZlciBhIHRva2VuCi8vIGFuZCByZXR1cm4gYSBzdHJpbmcgb3Igb2JqZWN0IGNvbnRhaW5pbmcgaW5mb3JtYXRpb24gYWJvdXQgdGhlIG5leHQKLy8gdG9rZW4sIG9yIG51bGwgdG8gcGFzcyBhbmQgaGF2ZSB0aGUgKG5ldykgc3RhdGUgYmUgY2FsbGVkIHRvIGZpbmlzaAovLyB0aGUgdG9rZW4uIFdoZW4gYSBzdHJpbmcgaXMgZ2l2ZW4sIGl0IGlzIHdyYXBwZWQgaW4gYSB7c3R5bGUsIHR5cGV9Ci8vIG9iamVjdC4gSW4gdGhlIHJlc3VsdGluZyBvYmplY3QsIHRoZSBjaGFyYWN0ZXJzIGNvbnN1bWVkIGFyZSBzdG9yZWQKLy8gdW5kZXIgdGhlIGNvbnRlbnQgcHJvcGVydHkuIEFueSB3aGl0ZXNwYWNlIGZvbGxvd2luZyB0aGVtIGlzIGFsc28KLy8gYXV0b21hdGljYWxseSBjb25zdW1lZCwgYW5kIGFkZGVkIHRvIHRoZSB2YWx1ZSBwcm9wZXJ0eS4gKFRodXMsCi8vIGNvbnRlbnQgaXMgdGhlIGFjdHVhbCBtZWFuaW5nZnVsIHBhcnQgb2YgdGhlIHRva2VuLCB3aGlsZSB2YWx1ZQovLyBjb250YWlucyBhbGwgdGhlIHRleHQgaXQgc3BhbnMuKQoKZnVuY3Rpb24gdG9rZW5pemVyKHNvdXJjZSwgc3RhdGUpIHsKICAvLyBOZXdsaW5lcyBhcmUgYWx3YXlzIGEgc2VwYXJhdGUgdG9rZW4uCiAgZnVuY3Rpb24gaXNXaGl0ZVNwYWNlKGNoKSB7CiAgICAvLyBUaGUgbWVzc3kgcmVnZXhwIGlzIGJlY2F1c2UgSUUncyByZWdleHAgbWF0Y2hlciBpcyBvZiB0aGUKICAgIC8vIG9waW5pb24gdGhhdCBub24tYnJlYWtpbmcgc3BhY2VzIGFyZSBubyB3aGl0ZXNwYWNlLgogICAgcmV0dXJuIGNoICE9ICJcbiIgJiYgL15bXHNcdTAwYTBdKiQvLnRlc3QoY2gpOwogIH0KCiAgdmFyIHRva2VuaXplciA9IHsKICAgIHN0YXRlOiBzdGF0ZSwKCiAgICB0YWtlOiBmdW5jdGlvbih0eXBlKSB7CiAgICAgIGlmICh0eXBlb2YodHlwZSkgPT0gInN0cmluZyIpCiAgICAgICAgdHlwZSA9IHtzdHlsZTogdHlwZSwgdHlwZTogdHlwZX07CgogICAgICB0eXBlLmNvbnRlbnQgPSAodHlwZS5jb250ZW50IHx8ICIiKSArIHNvdXJjZS5nZXQoKTsKICAgICAgaWYgKCEvXG4kLy50ZXN0KHR5cGUuY29udGVudCkpCiAgICAgICAgc291cmNlLm5leHRXaGlsZShpc1doaXRlU3BhY2UpOwogICAgICB0eXBlLnZhbHVlID0gdHlwZS5jb250ZW50ICsgc291cmNlLmdldCgpOwogICAgICByZXR1cm4gdHlwZTsKICAgIH0sCgogICAgbmV4dDogZnVuY3Rpb24gKCkgewogICAgICBpZiAoIXNvdXJjZS5tb3JlKCkpIHRocm93IFN0b3BJdGVyYXRpb247CgogICAgICB2YXIgdHlwZTsKICAgICAgaWYgKHNvdXJjZS5lcXVhbHMoIlxuIikpIHsKICAgICAgICBzb3VyY2UubmV4dCgpOwogICAgICAgIHJldHVybiB0aGlzLnRha2UoIndoaXRlc3BhY2UiKTsKICAgICAgfQogICAgICAKICAgICAgaWYgKHNvdXJjZS5hcHBsaWVzKGlzV2hpdGVTcGFjZSkpCiAgICAgICAgdHlwZSA9ICJ3aGl0ZXNwYWNlIjsKICAgICAgZWxzZQogICAgICAgIHdoaWxlICghdHlwZSkKICAgICAgICAgIHR5cGUgPSB0aGlzLnN0YXRlKHNvdXJjZSwgZnVuY3Rpb24ocykge3Rva2VuaXplci5zdGF0ZSA9IHM7fSk7CgogICAgICByZXR1cm4gdGhpcy50YWtlKHR5cGUpOwogICAgfQogIH07CiAgcmV0dXJuIHRva2VuaXplcjsKfQo=]]></data>
	</file>
	<file>
	  <filename>/includes/CodeMirror/js/tokenizejavascript.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[LyogVG9rZW5pemVyIGZvciBKYXZhU2NyaXB0IGNvZGUgKi8KCnZhciB0b2tlbml6ZUphdmFTY3JpcHQgPSAoZnVuY3Rpb24oKSB7CiAgLy8gQWR2YW5jZSB0aGUgc3RyZWFtIHVudGlsIHRoZSBnaXZlbiBjaGFyYWN0ZXIgKG5vdCBwcmVjZWRlZCBieSBhCiAgLy8gYmFja3NsYXNoKSBpcyBlbmNvdW50ZXJlZCwgb3IgdGhlIGVuZCBvZiB0aGUgbGluZSBpcyByZWFjaGVkLgogIGZ1bmN0aW9uIG5leHRVbnRpbFVuZXNjYXBlZChzb3VyY2UsIGVuZCkgewogICAgdmFyIGVzY2FwZWQgPSBmYWxzZTsKICAgIHdoaWxlICghc291cmNlLmVuZE9mTGluZSgpKSB7CiAgICAgIHZhciBuZXh0ID0gc291cmNlLm5leHQoKTsKICAgICAgaWYgKG5leHQgPT0gZW5kICYmICFlc2NhcGVkKQogICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgZXNjYXBlZCA9ICFlc2NhcGVkICYmIG5leHQgPT0gIlxcIjsKICAgIH0KICAgIHJldHVybiBlc2NhcGVkOwogIH0KCiAgLy8gQSBtYXAgb2YgSmF2YVNjcmlwdCdzIGtleXdvcmRzLiBUaGUgYS9iL2Mga2V5d29yZCBkaXN0aW5jdGlvbiBpcwogIC8vIHZlcnkgcm91Z2gsIGJ1dCBpdCBnaXZlcyB0aGUgcGFyc2VyIGVub3VnaCBpbmZvcm1hdGlvbiB0byBwYXJzZQogIC8vIGNvcnJlY3QgY29kZSBjb3JyZWN0bHkgKHdlIGRvbid0IGNhcmUgdGhhdCBtdWNoIGhvdyB3ZSBwYXJzZQogIC8vIGluY29ycmVjdCBjb2RlKS4gVGhlIHN0eWxlIGluZm9ybWF0aW9uIGluY2x1ZGVkIGluIHRoZXNlIG9iamVjdHMKICAvLyBpcyB1c2VkIGJ5IHRoZSBoaWdobGlnaHRlciB0byBwaWNrIHRoZSBjb3JyZWN0IENTUyBzdHlsZSBmb3IgYQogIC8vIHRva2VuLgogIHZhciBrZXl3b3JkcyA9IGZ1bmN0aW9uKCl7CiAgICBmdW5jdGlvbiByZXN1bHQodHlwZSwgc3R5bGUpewogICAgICByZXR1cm4ge3R5cGU6IHR5cGUsIHN0eWxlOiAianMtIiArIHN0eWxlfTsKICAgIH0KICAgIC8vIGtleXdvcmRzIHRoYXQgdGFrZSBhIHBhcmVudGhpc2VkIGV4cHJlc3Npb24sIGFuZCB0aGVuIGEKICAgIC8vIHN0YXRlbWVudCAoaWYpCiAgICB2YXIga2V5d29yZEEgPSByZXN1bHQoImtleXdvcmQgYSIsICJrZXl3b3JkIik7CiAgICAvLyBrZXl3b3JkcyB0aGF0IHRha2UganVzdCBhIHN0YXRlbWVudCAoZWxzZSkKICAgIHZhciBrZXl3b3JkQiA9IHJlc3VsdCgia2V5d29yZCBiIiwgImtleXdvcmQiKTsKICAgIC8vIGtleXdvcmRzIHRoYXQgb3B0aW9uYWxseSB0YWtlIGFuIGV4cHJlc3Npb24sIGFuZCBmb3JtIGEKICAgIC8vIHN0YXRlbWVudCAocmV0dXJuKQogICAgdmFyIGtleXdvcmRDID0gcmVzdWx0KCJrZXl3b3JkIGMiLCAia2V5d29yZCIpOwogICAgdmFyIG9wZXJhdG9yID0gcmVzdWx0KCJvcGVyYXRvciIsICJrZXl3b3JkIik7CiAgICB2YXIgYXRvbSA9IHJlc3VsdCgiYXRvbSIsICJhdG9tIik7CiAgICByZXR1cm4gewogICAgICAiaWYiOiBrZXl3b3JkQSwgIndoaWxlIjoga2V5d29yZEEsICJ3aXRoIjoga2V5d29yZEEsCiAgICAgICJlbHNlIjoga2V5d29yZEIsICJkbyI6IGtleXdvcmRCLCAidHJ5Ijoga2V5d29yZEIsICJmaW5hbGx5Ijoga2V5d29yZEIsCiAgICAgICJyZXR1cm4iOiBrZXl3b3JkQywgImJyZWFrIjoga2V5d29yZEMsICJjb250aW51ZSI6IGtleXdvcmRDLCAibmV3Ijoga2V5d29yZEMsICJkZWxldGUiOiBrZXl3b3JkQywgInRocm93Ijoga2V5d29yZEMsCiAgICAgICJpbiI6IG9wZXJhdG9yLCAidHlwZW9mIjogb3BlcmF0b3IsICJpbnN0YW5jZW9mIjogb3BlcmF0b3IsCiAgICAgICJ2YXIiOiByZXN1bHQoInZhciIsICJrZXl3b3JkIiksICJmdW5jdGlvbiI6IHJlc3VsdCgiZnVuY3Rpb24iLCAia2V5d29yZCIpLCAiY2F0Y2giOiByZXN1bHQoImNhdGNoIiwgImtleXdvcmQiKSwKICAgICAgImZvciI6IHJlc3VsdCgiZm9yIiwgImtleXdvcmQiKSwgInN3aXRjaCI6IHJlc3VsdCgic3dpdGNoIiwgImtleXdvcmQiKSwKICAgICAgImNhc2UiOiByZXN1bHQoImNhc2UiLCAia2V5d29yZCIpLCAiZGVmYXVsdCI6IHJlc3VsdCgiZGVmYXVsdCIsICJrZXl3b3JkIiksCiAgICAgICJ0cnVlIjogYXRvbSwgImZhbHNlIjogYXRvbSwgIm51bGwiOiBhdG9tLCAidW5kZWZpbmVkIjogYXRvbSwgIk5hTiI6IGF0b20sICJJbmZpbml0eSI6IGF0b20KICAgIH07CiAgfSgpOwoKICAvLyBTb21lIGhlbHBlciByZWdleHBzCiAgdmFyIGlzT3BlcmF0b3JDaGFyID0gL1srXC0qJiU9PD4hP3xdLzsKICB2YXIgaXNIZXhEaWdpdCA9IC9bMC05QS1GYS1mXS87CiAgdmFyIGlzV29yZENoYXIgPSAvW1x3XCRfXS87CgogIC8vIFdyYXBwZXIgYXJvdW5kIGpzVG9rZW4gdGhhdCBoZWxwcyBtYWludGFpbiBwYXJzZXIgc3RhdGUgKHdoZXRoZXIKICAvLyB3ZSBhcmUgaW5zaWRlIG9mIGEgbXVsdGktbGluZSBjb21tZW50IGFuZCB3aGV0aGVyIHRoZSBuZXh0IHRva2VuCiAgLy8gY291bGQgYmUgYSByZWd1bGFyIGV4cHJlc3Npb24pLgogIGZ1bmN0aW9uIGpzVG9rZW5TdGF0ZShpbnNpZGUsIHJlZ2V4cCkgewogICAgcmV0dXJuIGZ1bmN0aW9uKHNvdXJjZSwgc2V0U3RhdGUpIHsKICAgICAgdmFyIG5ld0luc2lkZSA9IGluc2lkZTsKICAgICAgdmFyIHR5cGUgPSBqc1Rva2VuKGluc2lkZSwgcmVnZXhwLCBzb3VyY2UsIGZ1bmN0aW9uKGMpIHtuZXdJbnNpZGUgPSBjO30pOwogICAgICB2YXIgbmV3UmVnZXhwID0gdHlwZS50eXBlID09ICJvcGVyYXRvciIgfHwgdHlwZS50eXBlID09ICJrZXl3b3JkIGMiIHx8IHR5cGUudHlwZS5tYXRjaCgvXltcW3t9XCgsOzpdJC8pOwogICAgICBpZiAobmV3UmVnZXhwICE9IHJlZ2V4cCB8fCBuZXdJbnNpZGUgIT0gaW5zaWRlKQogICAgICAgIHNldFN0YXRlKGpzVG9rZW5TdGF0ZShuZXdJbnNpZGUsIG5ld1JlZ2V4cCkpOwogICAgICByZXR1cm4gdHlwZTsKICAgIH07CiAgfQoKICAvLyBUaGUgdG9rZW4gcmVhZGVyLCBpbnRlbmRlZCB0byBiZSB1c2VkIGJ5IHRoZSB0b2tlbml6ZXIgZnJvbQogIC8vIHRva2VuaXplLmpzICh0aHJvdWdoIGpzVG9rZW5TdGF0ZSkuIEFkdmFuY2VzIHRoZSBzb3VyY2Ugc3RyZWFtCiAgLy8gb3ZlciBhIHRva2VuLCBhbmQgcmV0dXJucyBhbiBvYmplY3QgY29udGFpbmluZyB0aGUgdHlwZSBhbmQgc3R5bGUKICAvLyBvZiB0aGF0IHRva2VuLgogIGZ1bmN0aW9uIGpzVG9rZW4oaW5zaWRlLCByZWdleHAsIHNvdXJjZSwgc2V0SW5zaWRlKSB7CiAgICBmdW5jdGlvbiByZWFkSGV4TnVtYmVyKCl7CiAgICAgIHNvdXJjZS5uZXh0KCk7IC8vIHNraXAgdGhlICd4JwogICAgICBzb3VyY2UubmV4dFdoaWxlTWF0Y2hlcyhpc0hleERpZ2l0KTsKICAgICAgcmV0dXJuIHt0eXBlOiAibnVtYmVyIiwgc3R5bGU6ICJqcy1hdG9tIn07CiAgICB9CgogICAgZnVuY3Rpb24gcmVhZE51bWJlcigpIHsKICAgICAgc291cmNlLm5leHRXaGlsZU1hdGNoZXMoL1swLTldLyk7CiAgICAgIGlmIChzb3VyY2UuZXF1YWxzKCIuIikpewogICAgICAgIHNvdXJjZS5uZXh0KCk7CiAgICAgICAgc291cmNlLm5leHRXaGlsZU1hdGNoZXMoL1swLTldLyk7CiAgICAgIH0KICAgICAgaWYgKHNvdXJjZS5lcXVhbHMoImUiKSB8fCBzb3VyY2UuZXF1YWxzKCJFIikpewogICAgICAgIHNvdXJjZS5uZXh0KCk7CiAgICAgICAgaWYgKHNvdXJjZS5lcXVhbHMoIi0iKSkKICAgICAgICAgIHNvdXJjZS5uZXh0KCk7CiAgICAgICAgc291cmNlLm5leHRXaGlsZU1hdGNoZXMoL1swLTldLyk7CiAgICAgIH0KICAgICAgcmV0dXJuIHt0eXBlOiAibnVtYmVyIiwgc3R5bGU6ICJqcy1hdG9tIn07CiAgICB9CiAgICAvLyBSZWFkIGEgd29yZCwgbG9vayBpdCB1cCBpbiBrZXl3b3Jkcy4gSWYgbm90IGZvdW5kLCBpdCBpcyBhCiAgICAvLyB2YXJpYWJsZSwgb3RoZXJ3aXNlIGl0IGlzIGEga2V5d29yZCBvZiB0aGUgdHlwZSBmb3VuZC4KICAgIGZ1bmN0aW9uIHJlYWRXb3JkKCkgewogICAgICBzb3VyY2UubmV4dFdoaWxlTWF0Y2hlcyhpc1dvcmRDaGFyKTsKICAgICAgdmFyIHdvcmQgPSBzb3VyY2UuZ2V0KCk7CiAgICAgIHZhciBrbm93biA9IGtleXdvcmRzLmhhc093blByb3BlcnR5KHdvcmQpICYmIGtleXdvcmRzLnByb3BlcnR5SXNFbnVtZXJhYmxlKHdvcmQpICYmIGtleXdvcmRzW3dvcmRdOwogICAgICByZXR1cm4ga25vd24gPyB7dHlwZToga25vd24udHlwZSwgc3R5bGU6IGtub3duLnN0eWxlLCBjb250ZW50OiB3b3JkfSA6CiAgICAgIHt0eXBlOiAidmFyaWFibGUiLCBzdHlsZTogImpzLXZhcmlhYmxlIiwgY29udGVudDogd29yZH07CiAgICB9CiAgICBmdW5jdGlvbiByZWFkUmVnZXhwKCkgewogICAgICBuZXh0VW50aWxVbmVzY2FwZWQoc291cmNlLCAiLyIpOwogICAgICBzb3VyY2UubmV4dFdoaWxlTWF0Y2hlcygvW2dpXS8pOwogICAgICByZXR1cm4ge3R5cGU6ICJyZWdleHAiLCBzdHlsZTogImpzLXN0cmluZyJ9OwogICAgfQogICAgLy8gTXV0bGktbGluZSBjb21tZW50cyBhcmUgdHJpY2t5LiBXZSB3YW50IHRvIHJldHVybiB0aGUgbmV3bGluZXMKICAgIC8vIGVtYmVkZGVkIGluIHRoZW0gYXMgcmVndWxhciBuZXdsaW5lIHRva2VucywgYW5kIHRoZW4gY29udGludWUKICAgIC8vIHJldHVybmluZyBhIGNvbW1lbnQgdG9rZW4gZm9yIGV2ZXJ5IGxpbmUgb2YgdGhlIGNvbW1lbnQuIFNvCiAgICAvLyBzb21lIHN0YXRlIGhhcyB0byBiZSBzYXZlZCAoaW5zaWRlKSB0byBpbmRpY2F0ZSB3aGV0aGVyIHdlIGFyZQogICAgLy8gaW5zaWRlIGEgLyogKi8gc2VxdWVuY2UuCiAgICBmdW5jdGlvbiByZWFkTXVsdGlsaW5lQ29tbWVudChzdGFydCl7CiAgICAgIHZhciBuZXdJbnNpZGUgPSAiLyoiOwogICAgICB2YXIgbWF5YmVFbmQgPSAoc3RhcnQgPT0gIioiKTsKICAgICAgd2hpbGUgKHRydWUpIHsKICAgICAgICBpZiAoc291cmNlLmVuZE9mTGluZSgpKQogICAgICAgICAgYnJlYWs7CiAgICAgICAgdmFyIG5leHQgPSBzb3VyY2UubmV4dCgpOwogICAgICAgIGlmIChuZXh0ID09ICIvIiAmJiBtYXliZUVuZCl7CiAgICAgICAgICBuZXdJbnNpZGUgPSBudWxsOwogICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgICAgIG1heWJlRW5kID0gKG5leHQgPT0gIioiKTsKICAgICAgfQogICAgICBzZXRJbnNpZGUobmV3SW5zaWRlKTsKICAgICAgcmV0dXJuIHt0eXBlOiAiY29tbWVudCIsIHN0eWxlOiAianMtY29tbWVudCJ9OwogICAgfQogICAgZnVuY3Rpb24gcmVhZE9wZXJhdG9yKCkgewogICAgICBzb3VyY2UubmV4dFdoaWxlTWF0Y2hlcyhpc09wZXJhdG9yQ2hhcik7CiAgICAgIHJldHVybiB7dHlwZTogIm9wZXJhdG9yIiwgc3R5bGU6ICJqcy1vcGVyYXRvciJ9OwogICAgfQogICAgZnVuY3Rpb24gcmVhZFN0cmluZyhxdW90ZSkgewogICAgICB2YXIgZW5kQmFja1NsYXNoID0gbmV4dFVudGlsVW5lc2NhcGVkKHNvdXJjZSwgcXVvdGUpOwogICAgICBzZXRJbnNpZGUoZW5kQmFja1NsYXNoID8gcXVvdGUgOiBudWxsKTsKICAgICAgcmV0dXJuIHt0eXBlOiAic3RyaW5nIiwgc3R5bGU6ICJqcy1zdHJpbmcifTsKICAgIH0KCiAgICAvLyBGZXRjaCB0aGUgbmV4dCB0b2tlbi4gRGlzcGF0Y2hlcyBvbiBmaXJzdCBjaGFyYWN0ZXIgaW4gdGhlCiAgICAvLyBzdHJlYW0sIG9yIGZpcnN0IHR3byBjaGFyYWN0ZXJzIHdoZW4gdGhlIGZpcnN0IGlzIGEgc2xhc2guCiAgICBpZiAoaW5zaWRlID09ICJcIiIgfHwgaW5zaWRlID09ICInIikKICAgICAgcmV0dXJuIHJlYWRTdHJpbmcoaW5zaWRlKTsKICAgIHZhciBjaCA9IHNvdXJjZS5uZXh0KCk7CiAgICBpZiAoaW5zaWRlID09ICIvKiIpCiAgICAgIHJldHVybiByZWFkTXVsdGlsaW5lQ29tbWVudChjaCk7CiAgICBlbHNlIGlmIChjaCA9PSAiXCIiIHx8IGNoID09ICInIikKICAgICAgcmV0dXJuIHJlYWRTdHJpbmcoY2gpOwogICAgLy8gd2l0aCBwdW5jdHVhdGlvbiwgdGhlIHR5cGUgb2YgdGhlIHRva2VuIGlzIHRoZSBzeW1ib2wgaXRzZWxmCiAgICBlbHNlIGlmICgvW1xbXF17fVwoXCksO1w6XC5dLy50ZXN0KGNoKSkKICAgICAgcmV0dXJuIHt0eXBlOiBjaCwgc3R5bGU6ICJqcy1wdW5jdHVhdGlvbiJ9OwogICAgZWxzZSBpZiAoY2ggPT0gIjAiICYmIChzb3VyY2UuZXF1YWxzKCJ4IikgfHwgc291cmNlLmVxdWFscygiWCIpKSkKICAgICAgcmV0dXJuIHJlYWRIZXhOdW1iZXIoKTsKICAgIGVsc2UgaWYgKC9bMC05XS8udGVzdChjaCkpCiAgICAgIHJldHVybiByZWFkTnVtYmVyKCk7CiAgICBlbHNlIGlmIChjaCA9PSAiLyIpewogICAgICBpZiAoc291cmNlLmVxdWFscygiKiIpKQogICAgICB7IHNvdXJjZS5uZXh0KCk7IHJldHVybiByZWFkTXVsdGlsaW5lQ29tbWVudChjaCk7IH0KICAgICAgZWxzZSBpZiAoc291cmNlLmVxdWFscygiLyIpKQogICAgICB7IG5leHRVbnRpbFVuZXNjYXBlZChzb3VyY2UsIG51bGwpOyByZXR1cm4ge3R5cGU6ICJjb21tZW50Iiwgc3R5bGU6ICJqcy1jb21tZW50In07fQogICAgICBlbHNlIGlmIChyZWdleHApCiAgICAgICAgcmV0dXJuIHJlYWRSZWdleHAoKTsKICAgICAgZWxzZQogICAgICAgIHJldHVybiByZWFkT3BlcmF0b3IoKTsKICAgIH0KICAgIGVsc2UgaWYgKGlzT3BlcmF0b3JDaGFyLnRlc3QoY2gpKQogICAgICByZXR1cm4gcmVhZE9wZXJhdG9yKCk7CiAgICBlbHNlCiAgICAgIHJldHVybiByZWFkV29yZCgpOwogIH0KCiAgLy8gVGhlIGV4dGVybmFsIGludGVyZmFjZSB0byB0aGUgdG9rZW5pemVyLgogIHJldHVybiBmdW5jdGlvbihzb3VyY2UsIHN0YXJ0U3RhdGUpIHsKICAgIHJldHVybiB0b2tlbml6ZXIoc291cmNlLCBzdGFydFN0YXRlIHx8IGpzVG9rZW5TdGF0ZShmYWxzZSwgdHJ1ZSkpOwogIH07Cn0pKCk7Cg==]]></data>
	</file>
	<file>
	  <filename>/includes/CodeMirror/js/undo.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[LyoqCiAqIFN0b3JhZ2UgYW5kIGNvbnRyb2wgZm9yIHVuZG8gaW5mb3JtYXRpb24gd2l0aGluIGEgQ29kZU1pcnJvcgogKiBlZGl0b3IuICdXaHkgb24gZWFydGggaXMgc3VjaCBhIGNvbXBsaWNhdGVkIG1lc3MgcmVxdWlyZWQgZm9yCiAqIHRoYXQ/JywgSSBoZWFyIHlvdSBhc2suIFRoZSBnb2FsLCBpbiBpbXBsZW1lbnRpbmcgdGhpcywgd2FzIHRvIG1ha2UKICogdGhlIGNvbXBsZXhpdHkgb2Ygc3RvcmluZyBhbmQgcmV2ZXJ0aW5nIHVuZG8gaW5mb3JtYXRpb24gZGVwZW5kCiAqIG9ubHkgb24gdGhlIHNpemUgb2YgdGhlIGVkaXRlZCBvciByZXN0b3JlZCBjb250ZW50LCBub3Qgb24gdGhlIHNpemUKICogb2YgdGhlIHdob2xlIGRvY3VtZW50LiBUaGlzIG1ha2VzIGl0IG5lY2Vzc2FyeSB0byB1c2UgYSBraW5kIG9mCiAqICdkaWZmJyBzeXN0ZW0sIHdoaWNoLCB3aGVuIGFwcGxpZWQgdG8gYSBET00gdHJlZSwgY2F1c2VzIHNvbWUKICogY29tcGxleGl0eSBhbmQgaGFja2VyeS4KICoKICogSW4gc2hvcnQsIHRoZSBlZGl0b3IgJ3RvdWNoZXMnIEJSIGVsZW1lbnRzIGFzIGl0IHBhcnNlcyB0aGVtLCBhbmQKICogdGhlIFVuZG9IaXN0b3J5IHN0b3JlcyB0aGVzZS4gV2hlbiBub3RoaW5nIGlzIHRvdWNoZWQgaW4gY29tbWl0RGVsYXkKICogbWlsbGlzZWNvbmRzLCB0aGUgY2hhbmdlcyBhcmUgY29tbWl0dGVkOiBJdCBnb2VzIG92ZXIgYWxsIHRvdWNoZWQKICogbm9kZXMsIHRocm93cyBvdXQgdGhlIG9uZXMgdGhhdCBkaWQgbm90IGNoYW5nZSBzaW5jZSBsYXN0IGNvbW1pdCBvcgogKiBhcmUgbm8gbG9uZ2VyIGluIHRoZSBkb2N1bWVudCwgYW5kIGFzc2VtYmxlcyB0aGUgcmVzdCBpbnRvIHplcm8gb3IKICogbW9yZSAnY2hhaW5zJyAtLSBhcnJheXMgb2YgYWRqYWNlbnQgbGluZXMuIExpbmtzIGJhY2sgdG8gdGhlc2UKICogY2hhaW5zIGFyZSBhZGRlZCB0byB0aGUgQlIgbm9kZXMsIHdoaWxlIHRoZSBjaGFpbiB0aGF0IHByZXZpb3VzbHkKICogc3Bhbm5lZCB0aGVzZSBub2RlcyBpcyBhZGRlZCB0byB0aGUgdW5kbyBoaXN0b3J5LiBVbmRvaW5nIGEgY2hhbmdlCiAqIG1lYW5zIHRha2luZyBzdWNoIGEgY2hhaW4gb2ZmIHRoZSB1bmRvIGhpc3RvcnksIHJlc3RvcmluZyBpdHMKICogY29udGVudCAodGV4dCBpcyBzYXZlZCBwZXIgbGluZSkgYW5kIGxpbmtpbmcgaXQgYmFjayBpbnRvIHRoZQogKiBkb2N1bWVudC4KICovCgovLyBBIGhpc3Rvcnkgb2JqZWN0IG5lZWRzIHRvIGtub3cgYWJvdXQgdGhlIERPTSBjb250YWluZXIgaG9sZGluZyB0aGUKLy8gZG9jdW1lbnQsIHRoZSBtYXhpbXVtIGFtb3VudCBvZiB1bmRvIGxldmVscyBpdCBzaG91bGQgc3RvcmUsIHRoZQovLyBkZWxheSAob2Ygbm8gaW5wdXQpIGFmdGVyIHdoaWNoIGl0IGNvbW1pdHMgYSBzZXQgb2YgY2hhbmdlcywgYW5kLAovLyB1bmZvcnR1bmF0ZWx5LCB0aGUgJ3BhcmVudCcgd2luZG93IC0tIGEgd2luZG93IHRoYXQgaXMgbm90IGluCi8vIGRlc2lnbk1vZGUsIGFuZCBvbiB3aGljaCBzZXRUaW1lb3V0IHdvcmtzIGluIGV2ZXJ5IGJyb3dzZXIuCmZ1bmN0aW9uIFVuZG9IaXN0b3J5KGNvbnRhaW5lciwgbWF4RGVwdGgsIGNvbW1pdERlbGF5LCBlZGl0b3IpIHsKICB0aGlzLmNvbnRhaW5lciA9IGNvbnRhaW5lcjsKICB0aGlzLm1heERlcHRoID0gbWF4RGVwdGg7IHRoaXMuY29tbWl0RGVsYXkgPSBjb21taXREZWxheTsKICB0aGlzLmVkaXRvciA9IGVkaXRvcjsgdGhpcy5wYXJlbnQgPSBlZGl0b3IucGFyZW50OwogIC8vIFRoaXMgbGluZSBvYmplY3QgcmVwcmVzZW50cyB0aGUgaW5pdGlhbCwgZW1wdHkgZWRpdG9yLgogIHZhciBpbml0aWFsID0ge3RleHQ6ICIiLCBmcm9tOiBudWxsLCB0bzogbnVsbH07CiAgLy8gQXMgdGhlIGJvcmRlcnMgYmV0d2VlbiBsaW5lcyBhcmUgcmVwcmVzZW50ZWQgYnkgQlIgZWxlbWVudHMsIHRoZQogIC8vIHN0YXJ0IG9mIHRoZSBmaXJzdCBsaW5lIGFuZCB0aGUgZW5kIG9mIHRoZSBsYXN0IG9uZSBhcmUKICAvLyByZXByZXNlbnRlZCBieSBudWxsLiBTaW5jZSB5b3UgY2FuIG5vdCBzdG9yZSBhbnkgcHJvcGVydGllcwogIC8vIChsaW5rcyB0byBsaW5lIG9iamVjdHMpIGluIG51bGwsIHRoZXNlIHByb3BlcnRpZXMgYXJlIHVzZWQgaW4KICAvLyB0aG9zZSBjYXNlcy4KICB0aGlzLmZpcnN0ID0gaW5pdGlhbDsgdGhpcy5sYXN0ID0gaW5pdGlhbDsKICAvLyBTaW1pbGFybHksIGEgJ2hpc3RvcnlUb3VjaGVkJyBwcm9wZXJ0eSBpcyBhZGRlZCB0byB0aGUgQlIgaW4KICAvLyBmcm9udCBvZiBsaW5lcyB0aGF0IGhhdmUgYWxyZWFkeSBiZWVuIHRvdWNoZWQsIGFuZCAnZmlyc3RUb3VjaGVkJwogIC8vIGlzIHVzZWQgZm9yIHRoZSBmaXJzdCBsaW5lLgogIHRoaXMuZmlyc3RUb3VjaGVkID0gZmFsc2U7CiAgLy8gSGlzdG9yeSBpcyB0aGUgc2V0IG9mIGNvbW1pdHRlZCBjaGFuZ2VzLCB0b3VjaGVkIGlzIHRoZSBzZXQgb2YKICAvLyBub2RlcyB0b3VjaGVkIHNpbmNlIHRoZSBsYXN0IGNvbW1pdC4KICB0aGlzLmhpc3RvcnkgPSBbXTsgdGhpcy5yZWRvSGlzdG9yeSA9IFtdOyB0aGlzLnRvdWNoZWQgPSBbXTsKfQoKVW5kb0hpc3RvcnkucHJvdG90eXBlID0gewogIC8vIFNjaGVkdWxlIGEgY29tbWl0IChpZiBubyBvdGhlciB0b3VjaGVzIGNvbWUgaW4gZm9yIGNvbW1pdERlbGF5CiAgLy8gbWlsbGlzZWNvbmRzKS4KICBzY2hlZHVsZUNvbW1pdDogZnVuY3Rpb24oKSB7CiAgICB2YXIgc2VsZiA9IHRoaXM7CiAgICB0aGlzLnBhcmVudC5jbGVhclRpbWVvdXQodGhpcy5jb21taXRUaW1lb3V0KTsKICAgIHRoaXMuY29tbWl0VGltZW91dCA9IHRoaXMucGFyZW50LnNldFRpbWVvdXQoZnVuY3Rpb24oKXtzZWxmLnRyeUNvbW1pdCgpO30sIHRoaXMuY29tbWl0RGVsYXkpOwogIH0sCgogIC8vIE1hcmsgYSBub2RlIGFzIHRvdWNoZWQuIE51bGwgaXMgYSB2YWxpZCBhcmd1bWVudC4KICB0b3VjaDogZnVuY3Rpb24obm9kZSkgewogICAgdGhpcy5zZXRUb3VjaGVkKG5vZGUpOwogICAgdGhpcy5zY2hlZHVsZUNvbW1pdCgpOwogIH0sCgogIC8vIFVuZG8gdGhlIGxhc3QgY2hhbmdlLgogIHVuZG86IGZ1bmN0aW9uKCkgewogICAgLy8gTWFrZSBzdXJlIHBlbmRpbmcgY2hhbmdlcyBoYXZlIGJlZW4gY29tbWl0dGVkLgogICAgdGhpcy5jb21taXQoKTsKCiAgICBpZiAodGhpcy5oaXN0b3J5Lmxlbmd0aCkgewogICAgICAvLyBUYWtlIHRoZSB0b3AgZGlmZiBmcm9tIHRoZSBoaXN0b3J5LCBhcHBseSBpdCwgYW5kIHN0b3JlIGl0cwogICAgICAvLyBzaGFkb3cgaW4gdGhlIHJlZG8gaGlzdG9yeS4KICAgICAgdmFyIGl0ZW0gPSB0aGlzLmhpc3RvcnkucG9wKCk7CiAgICAgIHRoaXMucmVkb0hpc3RvcnkucHVzaCh0aGlzLnVwZGF0ZVRvKGl0ZW0sICJhcHBseUNoYWluIikpOwogICAgICB0aGlzLm5vdGlmeUVudmlyb25tZW50KCk7CiAgICAgIHJldHVybiB0aGlzLmNoYWluTm9kZShpdGVtKTsKICAgIH0KICB9LAoKICAvLyBSZWRvIHRoZSBsYXN0IHVuZG9uZSBjaGFuZ2UuCiAgcmVkbzogZnVuY3Rpb24oKSB7CiAgICB0aGlzLmNvbW1pdCgpOwogICAgaWYgKHRoaXMucmVkb0hpc3RvcnkubGVuZ3RoKSB7CiAgICAgIC8vIFRoZSBpbnZlcnNlIG9mIHVuZG8sIGJhc2ljYWxseS4KICAgICAgdmFyIGl0ZW0gPSB0aGlzLnJlZG9IaXN0b3J5LnBvcCgpOwogICAgICB0aGlzLmFkZFVuZG9MZXZlbCh0aGlzLnVwZGF0ZVRvKGl0ZW0sICJhcHBseUNoYWluIikpOwogICAgICB0aGlzLm5vdGlmeUVudmlyb25tZW50KCk7CiAgICAgIHJldHVybiB0aGlzLmNoYWluTm9kZShpdGVtKTsKICAgIH0KICB9LAoKICBjbGVhcjogZnVuY3Rpb24oKSB7CiAgICB0aGlzLmhpc3RvcnkgPSBbXTsKICAgIHRoaXMucmVkb0hpc3RvcnkgPSBbXTsKICB9LAoKICAvLyBBc2sgZm9yIHRoZSBzaXplIG9mIHRoZSB1bi9yZWRvIGhpc3Rvcmllcy4KICBoaXN0b3J5U2l6ZTogZnVuY3Rpb24oKSB7CiAgICByZXR1cm4ge3VuZG86IHRoaXMuaGlzdG9yeS5sZW5ndGgsIHJlZG86IHRoaXMucmVkb0hpc3RvcnkubGVuZ3RofTsKICB9LAoKICAvLyBQdXNoIGEgY2hhbmdlc2V0IGludG8gdGhlIGRvY3VtZW50LgogIHB1c2g6IGZ1bmN0aW9uKGZyb20sIHRvLCBsaW5lcykgewogICAgdmFyIGNoYWluID0gW107CiAgICBmb3IgKHZhciBpID0gMDsgaSA8IGxpbmVzLmxlbmd0aDsgaSsrKSB7CiAgICAgIHZhciBlbmQgPSAoaSA9PSBsaW5lcy5sZW5ndGggLSAxKSA/IHRvIDogdGhpcy5jb250YWluZXIub3duZXJEb2N1bWVudC5jcmVhdGVFbGVtZW50KCJCUiIpOwogICAgICBjaGFpbi5wdXNoKHtmcm9tOiBmcm9tLCB0bzogZW5kLCB0ZXh0OiBjbGVhblRleHQobGluZXNbaV0pfSk7CiAgICAgIGZyb20gPSBlbmQ7CiAgICB9CiAgICB0aGlzLnB1c2hDaGFpbnMoW2NoYWluXSwgZnJvbSA9PSBudWxsICYmIHRvID09IG51bGwpOwogICAgdGhpcy5ub3RpZnlFbnZpcm9ubWVudCgpOwogIH0sCgogIHB1c2hDaGFpbnM6IGZ1bmN0aW9uKGNoYWlucywgZG9Ob3RIaWdobGlnaHQpIHsKICAgIHRoaXMuY29tbWl0KGRvTm90SGlnaGxpZ2h0KTsKICAgIHRoaXMuYWRkVW5kb0xldmVsKHRoaXMudXBkYXRlVG8oY2hhaW5zLCAiYXBwbHlDaGFpbiIpKTsKICAgIHRoaXMucmVkb0hpc3RvcnkgPSBbXTsKICB9LAoKICAvLyBSZXRyaWV2ZSBhIERPTSBub2RlIGZyb20gYSBjaGFpbiAoZm9yIHNjcm9sbGluZyB0byBpdCBhZnRlciB1bmRvL3JlZG8pLgogIGNoYWluTm9kZTogZnVuY3Rpb24oY2hhaW5zKSB7CiAgICBmb3IgKHZhciBpID0gMDsgaSA8IGNoYWlucy5sZW5ndGg7IGkrKykgewogICAgICB2YXIgc3RhcnQgPSBjaGFpbnNbaV1bMF0sIG5vZGUgPSBzdGFydCAmJiAoc3RhcnQuZnJvbSB8fCBzdGFydC50byk7CiAgICAgIGlmIChub2RlKSByZXR1cm4gbm9kZTsKICAgIH0KICB9LAoKICAvLyBDbGVhciB0aGUgdW5kbyBoaXN0b3J5LCBtYWtlIHRoZSBjdXJyZW50IGRvY3VtZW50IHRoZSBzdGFydAogIC8vIHBvc2l0aW9uLgogIHJlc2V0OiBmdW5jdGlvbigpIHsKICAgIHRoaXMuaGlzdG9yeSA9IFtdOyB0aGlzLnJlZG9IaXN0b3J5ID0gW107CiAgfSwKCiAgdGV4dEFmdGVyOiBmdW5jdGlvbihicikgewogICAgcmV0dXJuIHRoaXMuYWZ0ZXIoYnIpLnRleHQ7CiAgfSwKCiAgbm9kZUFmdGVyOiBmdW5jdGlvbihicikgewogICAgcmV0dXJuIHRoaXMuYWZ0ZXIoYnIpLnRvOwogIH0sCgogIG5vZGVCZWZvcmU6IGZ1bmN0aW9uKGJyKSB7CiAgICByZXR1cm4gdGhpcy5iZWZvcmUoYnIpLmZyb207CiAgfSwKCiAgLy8gQ29tbWl0IHVubGVzcyB0aGVyZSBhcmUgcGVuZGluZyBkaXJ0eSBub2Rlcy4KICB0cnlDb21taXQ6IGZ1bmN0aW9uKCkgewogICAgaWYgKCF3aW5kb3cucGFyZW50IHx8ICF3aW5kb3cuVW5kb0hpc3RvcnkpIHJldHVybjsgLy8gU3RvcCB3aGVuIGZyYW1lIGhhcyBiZWVuIHVubG9hZGVkCiAgICBpZiAodGhpcy5lZGl0b3IuaGlnaGxpZ2h0RGlydHkoKSkgdGhpcy5jb21taXQodHJ1ZSk7CiAgICBlbHNlIHRoaXMuc2NoZWR1bGVDb21taXQoKTsKICB9LAoKICAvLyBDaGVjayB3aGV0aGVyIHRoZSB0b3VjaGVkIG5vZGVzIGhvbGQgYW55IGNoYW5nZXMsIGlmIHNvLCBjb21taXQKICAvLyB0aGVtLgogIGNvbW1pdDogZnVuY3Rpb24oZG9Ob3RIaWdobGlnaHQpIHsKICAgIHRoaXMucGFyZW50LmNsZWFyVGltZW91dCh0aGlzLmNvbW1pdFRpbWVvdXQpOwogICAgLy8gTWFrZSBzdXJlIHRoZXJlIGFyZSBubyBwZW5kaW5nIGRpcnR5IG5vZGVzLgogICAgaWYgKCFkb05vdEhpZ2hsaWdodCkgdGhpcy5lZGl0b3IuaGlnaGxpZ2h0RGlydHkodHJ1ZSk7CiAgICAvLyBCdWlsZCBzZXQgb2YgY2hhaW5zLgogICAgdmFyIGNoYWlucyA9IHRoaXMudG91Y2hlZENoYWlucygpLCBzZWxmID0gdGhpczsKCiAgICBpZiAoY2hhaW5zLmxlbmd0aCkgewogICAgICB0aGlzLmFkZFVuZG9MZXZlbCh0aGlzLnVwZGF0ZVRvKGNoYWlucywgImxpbmtDaGFpbiIpKTsKICAgICAgdGhpcy5yZWRvSGlzdG9yeSA9IFtdOwogICAgICB0aGlzLm5vdGlmeUVudmlyb25tZW50KCk7CiAgICB9CiAgfSwKCiAgLy8gWyBlbmQgb2YgcHVibGljIGludGVyZmFjZSBdCgogIC8vIFVwZGF0ZSB0aGUgZG9jdW1lbnQgd2l0aCBhIGdpdmVuIHNldCBvZiBjaGFpbnMsIHJldHVybiBpdHMKICAvLyBzaGFkb3cuIHVwZGF0ZUZ1bmMgc2hvdWxkIGJlICJhcHBseUNoYWluIiBvciAibGlua0NoYWluIi4gSW4gdGhlCiAgLy8gc2Vjb25kIGNhc2UsIHRoZSBjaGFpbnMgYXJlIHRha2VuIHRvIGNvcnJlc3BvbmQgdGhlIHRoZSBjdXJyZW50CiAgLy8gZG9jdW1lbnQsIGFuZCBvbmx5IHRoZSBzdGF0ZSBvZiB0aGUgbGluZSBkYXRhIGlzIHVwZGF0ZWQuIEluIHRoZQogIC8vIGZpcnN0IGNhc2UsIHRoZSBjb250ZW50IG9mIHRoZSBjaGFpbnMgaXMgYWxzbyBwdXNoZWQgaWludG8gdGhlCiAgLy8gZG9jdW1lbnQuCiAgdXBkYXRlVG86IGZ1bmN0aW9uKGNoYWlucywgdXBkYXRlRnVuYykgewogICAgdmFyIHNoYWRvd3MgPSBbXSwgZGlydHkgPSBbXTsKICAgIGZvciAodmFyIGkgPSAwOyBpIDwgY2hhaW5zLmxlbmd0aDsgaSsrKSB7CiAgICAgIHNoYWRvd3MucHVzaCh0aGlzLnNoYWRvd0NoYWluKGNoYWluc1tpXSkpOwogICAgICBkaXJ0eS5wdXNoKHRoaXNbdXBkYXRlRnVuY10oY2hhaW5zW2ldKSk7CiAgICB9CiAgICBpZiAodXBkYXRlRnVuYyA9PSAiYXBwbHlDaGFpbiIpCiAgICAgIHRoaXMubm90aWZ5RGlydHkoZGlydHkpOwogICAgcmV0dXJuIHNoYWRvd3M7CiAgfSwKCiAgLy8gTm90aWZ5IHRoZSBlZGl0b3IgdGhhdCBzb21lIG5vZGVzIGhhdmUgY2hhbmdlZC4KICBub3RpZnlEaXJ0eTogZnVuY3Rpb24obm9kZXMpIHsKICAgIGZvckVhY2gobm9kZXMsIG1ldGhvZCh0aGlzLmVkaXRvciwgImFkZERpcnR5Tm9kZSIpKQogICAgdGhpcy5lZGl0b3Iuc2NoZWR1bGVIaWdobGlnaHQoKTsKICB9LAoKICBub3RpZnlFbnZpcm9ubWVudDogZnVuY3Rpb24oKSB7CiAgICBpZiAodGhpcy5vbkNoYW5nZSkgdGhpcy5vbkNoYW5nZSgpOwogICAgLy8gVXNlZCBieSB0aGUgbGluZS13cmFwcGluZyBsaW5lLW51bWJlcmluZyBjb2RlLgogICAgaWYgKHdpbmRvdy5mcmFtZUVsZW1lbnQgJiYgd2luZG93LmZyYW1lRWxlbWVudC5Db2RlTWlycm9yLnVwZGF0ZU51bWJlcnMpCiAgICAgIHdpbmRvdy5mcmFtZUVsZW1lbnQuQ29kZU1pcnJvci51cGRhdGVOdW1iZXJzKCk7CiAgfSwKCiAgLy8gTGluayBhIGNoYWluIGludG8gdGhlIERPTSBub2RlcyAob3IgdGhlIGZpcnN0L2xhc3QgbGlua3MgZm9yIG51bGwKICAvLyBub2RlcykuCiAgbGlua0NoYWluOiBmdW5jdGlvbihjaGFpbikgewogICAgZm9yICh2YXIgaSA9IDA7IGkgPCBjaGFpbi5sZW5ndGg7IGkrKykgewogICAgICB2YXIgbGluZSA9IGNoYWluW2ldOwogICAgICBpZiAobGluZS5mcm9tKSBsaW5lLmZyb20uaGlzdG9yeUFmdGVyID0gbGluZTsKICAgICAgZWxzZSB0aGlzLmZpcnN0ID0gbGluZTsKICAgICAgaWYgKGxpbmUudG8pIGxpbmUudG8uaGlzdG9yeUJlZm9yZSA9IGxpbmU7CiAgICAgIGVsc2UgdGhpcy5sYXN0ID0gbGluZTsKICAgIH0KICB9LAoKICAvLyBHZXQgdGhlIGxpbmUgb2JqZWN0IGFmdGVyL2JlZm9yZSBhIGdpdmVuIG5vZGUuCiAgYWZ0ZXI6IGZ1bmN0aW9uKG5vZGUpIHsKICAgIHJldHVybiBub2RlID8gbm9kZS5oaXN0b3J5QWZ0ZXIgOiB0aGlzLmZpcnN0OwogIH0sCiAgYmVmb3JlOiBmdW5jdGlvbihub2RlKSB7CiAgICByZXR1cm4gbm9kZSA/IG5vZGUuaGlzdG9yeUJlZm9yZSA6IHRoaXMubGFzdDsKICB9LAoKICAvLyBNYXJrIGEgbm9kZSBhcyB0b3VjaGVkIGlmIGl0IGhhcyBub3QgYWxyZWFkeSBiZWVuIG1hcmtlZC4KICBzZXRUb3VjaGVkOiBmdW5jdGlvbihub2RlKSB7CiAgICBpZiAobm9kZSkgewogICAgICBpZiAoIW5vZGUuaGlzdG9yeVRvdWNoZWQpIHsKICAgICAgICB0aGlzLnRvdWNoZWQucHVzaChub2RlKTsKICAgICAgICBub2RlLmhpc3RvcnlUb3VjaGVkID0gdHJ1ZTsKICAgICAgfQogICAgfQogICAgZWxzZSB7CiAgICAgIHRoaXMuZmlyc3RUb3VjaGVkID0gdHJ1ZTsKICAgIH0KICB9LAoKICAvLyBTdG9yZSBhIG5ldyBzZXQgb2YgdW5kbyBpbmZvLCB0aHJvdyBhd2F5IGluZm8gaWYgdGhlcmUgaXMgbW9yZSBvZgogIC8vIGl0IHRoYW4gYWxsb3dlZC4KICBhZGRVbmRvTGV2ZWw6IGZ1bmN0aW9uKGRpZmZzKSB7CiAgICB0aGlzLmhpc3RvcnkucHVzaChkaWZmcyk7CiAgICBpZiAodGhpcy5oaXN0b3J5Lmxlbmd0aCA+IHRoaXMubWF4RGVwdGgpCiAgICAgIHRoaXMuaGlzdG9yeS5zaGlmdCgpOwogIH0sCgogIC8vIEJ1aWxkIGNoYWlucyBmcm9tIGEgc2V0IG9mIHRvdWNoZWQgbm9kZXMuCiAgdG91Y2hlZENoYWluczogZnVuY3Rpb24oKSB7CiAgICB2YXIgc2VsZiA9IHRoaXM7CgogICAgLy8gVGhlIHRlbXAgc3lzdGVtIGlzIGEgY3J1bW15IGhhY2sgdG8gc3BlZWQgdXAgZGV0ZXJtaW5pbmcKICAgIC8vIHdoZXRoZXIgYSAoY3VycmVudGx5IHRvdWNoZWQpIG5vZGUgaGFzIGEgbGluZSBvYmplY3QgYXNzb2NpYXRlZAogICAgLy8gd2l0aCBpdC4gbnVsbFRlbXAgaXMgdXNlZCB0byBzdG9yZSB0aGUgb2JqZWN0IGZvciB0aGUgZmlyc3QKICAgIC8vIGxpbmUsIG90aGVyIG5vZGVzIGdldCBpdCBzdG9yZWQgaW4gdGhlaXIgaGlzdG9yeVRlbXAgcHJvcGVydHkuCiAgICB2YXIgbnVsbFRlbXAgPSBudWxsOwogICAgZnVuY3Rpb24gdGVtcChub2RlKSB7cmV0dXJuIG5vZGUgPyBub2RlLmhpc3RvcnlUZW1wIDogbnVsbFRlbXA7fQogICAgZnVuY3Rpb24gc2V0VGVtcChub2RlLCBsaW5lKSB7CiAgICAgIGlmIChub2RlKSBub2RlLmhpc3RvcnlUZW1wID0gbGluZTsKICAgICAgZWxzZSBudWxsVGVtcCA9IGxpbmU7CiAgICB9CgogICAgZnVuY3Rpb24gYnVpbGRMaW5lKG5vZGUpIHsKICAgICAgdmFyIHRleHQgPSBbXTsKICAgICAgZm9yICh2YXIgY3VyID0gbm9kZSA/IG5vZGUubmV4dFNpYmxpbmcgOiBzZWxmLmNvbnRhaW5lci5maXJzdENoaWxkOwogICAgICAgICAgIGN1ciAmJiAhaXNCUihjdXIpOyBjdXIgPSBjdXIubmV4dFNpYmxpbmcpCiAgICAgICAgaWYgKGN1ci5jdXJyZW50VGV4dCkgdGV4dC5wdXNoKGN1ci5jdXJyZW50VGV4dCk7CiAgICAgIHJldHVybiB7ZnJvbTogbm9kZSwgdG86IGN1ciwgdGV4dDogY2xlYW5UZXh0KHRleHQuam9pbigiIikpfTsKICAgIH0KCiAgICAvLyBGaWx0ZXIgb3V0IHVuY2hhbmdlZCBsaW5lcyBhbmQgbm9kZXMgdGhhdCBhcmUgbm8gbG9uZ2VyIGluIHRoZQogICAgLy8gZG9jdW1lbnQuIEJ1aWxkIHVwIGxpbmUgb2JqZWN0cyBmb3IgcmVtYWluaW5nIG5vZGVzLgogICAgdmFyIGxpbmVzID0gW107CiAgICBpZiAoc2VsZi5maXJzdFRvdWNoZWQpIHNlbGYudG91Y2hlZC5wdXNoKG51bGwpOwogICAgZm9yRWFjaChzZWxmLnRvdWNoZWQsIGZ1bmN0aW9uKG5vZGUpIHsKICAgICAgaWYgKG5vZGUgJiYgbm9kZS5wYXJlbnROb2RlICE9IHNlbGYuY29udGFpbmVyKSByZXR1cm47CgogICAgICBpZiAobm9kZSkgbm9kZS5oaXN0b3J5VG91Y2hlZCA9IGZhbHNlOwogICAgICBlbHNlIHNlbGYuZmlyc3RUb3VjaGVkID0gZmFsc2U7CgogICAgICB2YXIgbGluZSA9IGJ1aWxkTGluZShub2RlKSwgc2hhZG93ID0gc2VsZi5hZnRlcihub2RlKTsKICAgICAgaWYgKCFzaGFkb3cgfHwgc2hhZG93LnRleHQgIT0gbGluZS50ZXh0IHx8IHNoYWRvdy50byAhPSBsaW5lLnRvKSB7CiAgICAgICAgbGluZXMucHVzaChsaW5lKTsKICAgICAgICBzZXRUZW1wKG5vZGUsIGxpbmUpOwogICAgICB9CiAgICB9KTsKCiAgICAvLyBHZXQgdGhlIEJSIGVsZW1lbnQgYWZ0ZXIvYmVmb3JlIHRoZSBnaXZlbiBub2RlLgogICAgZnVuY3Rpb24gbmV4dEJSKG5vZGUsIGRpcikgewogICAgICB2YXIgbGluayA9IGRpciArICJTaWJsaW5nIiwgc2VhcmNoID0gbm9kZVtsaW5rXTsKICAgICAgd2hpbGUgKHNlYXJjaCAmJiAhaXNCUihzZWFyY2gpKQogICAgICAgIHNlYXJjaCA9IHNlYXJjaFtsaW5rXTsKICAgICAgcmV0dXJuIHNlYXJjaDsKICAgIH0KCiAgICAvLyBBc3NlbWJsZSBsaW5lIG9iamVjdHMgaW50byBjaGFpbnMgYnkgc2Nhbm5pbmcgdGhlIERPTSB0cmVlCiAgICAvLyBhcm91bmQgdGhlbS4KICAgIHZhciBjaGFpbnMgPSBbXTsgc2VsZi50b3VjaGVkID0gW107CiAgICBmb3JFYWNoKGxpbmVzLCBmdW5jdGlvbihsaW5lKSB7CiAgICAgIC8vIE5vdGUgdGhhdCB0aGlzIG1ha2VzIHRoZSBsb29wIHNraXAgbGluZSBvYmplY3RzIHRoYXQgaGF2ZQogICAgICAvLyBiZWVuIHB1bGxlZCBpbnRvIGNoYWlucyBieSBsaW5lcyBiZWZvcmUgdGhlbS4KICAgICAgaWYgKCF0ZW1wKGxpbmUuZnJvbSkpIHJldHVybjsKCiAgICAgIHZhciBjaGFpbiA9IFtdLCBjdXJOb2RlID0gbGluZS5mcm9tLCBzYWZlID0gdHJ1ZTsKICAgICAgLy8gUHV0IGFueSBsaW5lIG9iamVjdHMgKHJlZmVycmVkIHRvIGJ5IHRlbXAgaW5mbykgYmVmb3JlIHRoaXMKICAgICAgLy8gb25lIG9uIHRoZSBmcm9udCBvZiB0aGUgYXJyYXkuCiAgICAgIHdoaWxlICh0cnVlKSB7CiAgICAgICAgdmFyIGN1ckxpbmUgPSB0ZW1wKGN1ck5vZGUpOwogICAgICAgIGlmICghY3VyTGluZSkgewogICAgICAgICAgaWYgKHNhZmUpIGJyZWFrOwogICAgICAgICAgZWxzZSBjdXJMaW5lID0gYnVpbGRMaW5lKGN1ck5vZGUpOwogICAgICAgIH0KICAgICAgICBjaGFpbi51bnNoaWZ0KGN1ckxpbmUpOwogICAgICAgIHNldFRlbXAoY3VyTm9kZSwgbnVsbCk7CiAgICAgICAgaWYgKCFjdXJOb2RlKSBicmVhazsKICAgICAgICBzYWZlID0gc2VsZi5hZnRlcihjdXJOb2RlKTsKICAgICAgICBjdXJOb2RlID0gbmV4dEJSKGN1ck5vZGUsICJwcmV2aW91cyIpOwogICAgICB9CiAgICAgIGN1ck5vZGUgPSBsaW5lLnRvOyBzYWZlID0gc2VsZi5iZWZvcmUobGluZS5mcm9tKTsKICAgICAgLy8gQWRkIGxpbmVzIGFmdGVyIHRoaXMgb25lIGF0IGVuZCBvZiBhcnJheS4KICAgICAgd2hpbGUgKHRydWUpIHsKICAgICAgICBpZiAoIWN1ck5vZGUpIGJyZWFrOwogICAgICAgIHZhciBjdXJMaW5lID0gdGVtcChjdXJOb2RlKTsKICAgICAgICBpZiAoIWN1ckxpbmUpIHsKICAgICAgICAgIGlmIChzYWZlKSBicmVhazsKICAgICAgICAgIGVsc2UgY3VyTGluZSA9IGJ1aWxkTGluZShjdXJOb2RlKTsKICAgICAgICB9CiAgICAgICAgY2hhaW4ucHVzaChjdXJMaW5lKTsKICAgICAgICBzZXRUZW1wKGN1ck5vZGUsIG51bGwpOwogICAgICAgIHNhZmUgPSBzZWxmLmJlZm9yZShjdXJOb2RlKTsKICAgICAgICBjdXJOb2RlID0gbmV4dEJSKGN1ck5vZGUsICJuZXh0Iik7CiAgICAgIH0KICAgICAgY2hhaW5zLnB1c2goY2hhaW4pOwogICAgfSk7CgogICAgcmV0dXJuIGNoYWluczsKICB9LAoKICAvLyBGaW5kIHRoZSAnc2hhZG93JyBvZiBhIGdpdmVuIGNoYWluIGJ5IGZvbGxvd2luZyB0aGUgbGlua3MgaW4gdGhlCiAgLy8gRE9NIG5vZGVzIGF0IGl0cyBzdGFydCBhbmQgZW5kLgogIHNoYWRvd0NoYWluOiBmdW5jdGlvbihjaGFpbikgewogICAgdmFyIHNoYWRvd3MgPSBbXSwgbmV4dCA9IHRoaXMuYWZ0ZXIoY2hhaW5bMF0uZnJvbSksIGVuZCA9IGNoYWluW2NoYWluLmxlbmd0aCAtIDFdLnRvOwogICAgd2hpbGUgKHRydWUpIHsKICAgICAgc2hhZG93cy5wdXNoKG5leHQpOwogICAgICB2YXIgbmV4dE5vZGUgPSBuZXh0LnRvOwogICAgICBpZiAoIW5leHROb2RlIHx8IG5leHROb2RlID09IGVuZCkKICAgICAgICBicmVhazsKICAgICAgZWxzZQogICAgICAgIG5leHQgPSBuZXh0Tm9kZS5oaXN0b3J5QWZ0ZXIgfHwgdGhpcy5iZWZvcmUoZW5kKTsKICAgICAgLy8gKFRoZSB0aGlzLmJlZm9yZShlbmQpIGlzIGEgaGFjayAtLSBGRiBzb21ldGltZXMgcmVtb3ZlcwogICAgICAvLyBwcm9wZXJ0aWVzIGZyb20gQlIgbm9kZXMsIGluIHdoaWNoIGNhc2UgdGhlIGJlc3Qgd2UgY2FuIGhvcGUKICAgICAgLy8gZm9yIGlzIHRvIG5vdCBicmVhay4pCiAgICB9CiAgICByZXR1cm4gc2hhZG93czsKICB9LAoKICAvLyBVcGRhdGUgdGhlIERPTSB0cmVlIHRvIGNvbnRhaW4gdGhlIGxpbmVzIHNwZWNpZmllZCBpbiBhIGdpdmVuCiAgLy8gY2hhaW4sIGxpbmsgdGhpcyBjaGFpbiBpbnRvIHRoZSBET00gbm9kZXMuCiAgYXBwbHlDaGFpbjogZnVuY3Rpb24oY2hhaW4pIHsKICAgIC8vIFNvbWUgYXR0ZW1wdCBpcyBtYWRlIHRvIHByZXZlbnQgdGhlIGN1cnNvciBmcm9tIGp1bXBpbmcKICAgIC8vIHJhbmRvbWx5IHdoZW4gYW4gdW5kbyBvciByZWRvIGhhcHBlbnMuIEl0IHN0aWxsIGJlaGF2ZXMgYSBiaXQKICAgIC8vIHN0cmFuZ2Ugc29tZXRpbWVzLgogICAgdmFyIGN1cnNvciA9IHNlbGVjdC5jdXJzb3JQb3ModGhpcy5jb250YWluZXIsIGZhbHNlKSwgc2VsZiA9IHRoaXM7CgogICAgLy8gUmVtb3ZlIGFsbCBub2RlcyBpbiB0aGUgRE9NIHRyZWUgYmV0d2VlbiBmcm9tIGFuZCB0byAobnVsbCBmb3IKICAgIC8vIHN0YXJ0L2VuZCBvZiBjb250YWluZXIpLgogICAgZnVuY3Rpb24gcmVtb3ZlUmFuZ2UoZnJvbSwgdG8pIHsKICAgICAgdmFyIHBvcyA9IGZyb20gPyBmcm9tLm5leHRTaWJsaW5nIDogc2VsZi5jb250YWluZXIuZmlyc3RDaGlsZDsKICAgICAgd2hpbGUgKHBvcyAhPSB0bykgewogICAgICAgIHZhciB0ZW1wID0gcG9zLm5leHRTaWJsaW5nOwogICAgICAgIHJlbW92ZUVsZW1lbnQocG9zKTsKICAgICAgICBwb3MgPSB0ZW1wOwogICAgICB9CiAgICB9CgogICAgdmFyIHN0YXJ0ID0gY2hhaW5bMF0uZnJvbSwgZW5kID0gY2hhaW5bY2hhaW4ubGVuZ3RoIC0gMV0udG87CiAgICAvLyBDbGVhciB0aGUgc3BhY2Ugd2hlcmUgdGhpcyBjaGFuZ2UgaGFzIHRvIGJlIG1hZGUuCiAgICByZW1vdmVSYW5nZShzdGFydCwgZW5kKTsKCiAgICAvLyBJbnNlcnQgdGhlIGNvbnRlbnQgc3BlY2lmaWVkIGJ5IHRoZSBjaGFpbiBpbnRvIHRoZSBET00gdHJlZS4KICAgIGZvciAodmFyIGkgPSAwOyBpIDwgY2hhaW4ubGVuZ3RoOyBpKyspIHsKICAgICAgdmFyIGxpbmUgPSBjaGFpbltpXTsKICAgICAgLy8gVGhlIHN0YXJ0IGFuZCBlbmQgb2YgdGhlIHNwYWNlIGFyZSBhbHJlYWR5IGNvcnJlY3QsIGJ1dCBCUgogICAgICAvLyB0YWdzIGluc2lkZSBpdCBoYXZlIHRvIGJlIHB1dCBiYWNrLgogICAgICBpZiAoaSA+IDApCiAgICAgICAgc2VsZi5jb250YWluZXIuaW5zZXJ0QmVmb3JlKGxpbmUuZnJvbSwgZW5kKTsKCiAgICAgIC8vIEFkZCB0aGUgdGV4dC4KICAgICAgdmFyIG5vZGUgPSBtYWtlUGFydFNwYW4oZml4U3BhY2VzKGxpbmUudGV4dCkpOwogICAgICBzZWxmLmNvbnRhaW5lci5pbnNlcnRCZWZvcmUobm9kZSwgZW5kKTsKICAgICAgLy8gU2VlIGlmIHRoZSBjdXJzb3Igd2FzIG9uIHRoaXMgbGluZS4gUHV0IGl0IGJhY2ssIGFkanVzdGluZwogICAgICAvLyBmb3IgY2hhbmdlZCBsaW5lIGxlbmd0aCwgaWYgaXQgd2FzLgogICAgICBpZiAoY3Vyc29yICYmIGN1cnNvci5ub2RlID09IGxpbmUuZnJvbSkgewogICAgICAgIHZhciBjdXJzb3JkaWZmID0gMDsKICAgICAgICB2YXIgcHJldiA9IHRoaXMuYWZ0ZXIobGluZS5mcm9tKTsKICAgICAgICBpZiAocHJldiAmJiBpID09IGNoYWluLmxlbmd0aCAtIDEpIHsKICAgICAgICAgIC8vIE9ubHkgYWRqdXN0IGlmIHRoZSBjdXJzb3IgaXMgYWZ0ZXIgdGhlIHVuY2hhbmdlZCBwYXJ0IG9mCiAgICAgICAgICAvLyB0aGUgbGluZS4KICAgICAgICAgIGZvciAodmFyIG1hdGNoID0gMDsgbWF0Y2ggPCBjdXJzb3Iub2Zmc2V0ICYmCiAgICAgICAgICAgICAgIGxpbmUudGV4dC5jaGFyQXQobWF0Y2gpID09IHByZXYudGV4dC5jaGFyQXQobWF0Y2gpOyBtYXRjaCsrKXt9CiAgICAgICAgICBpZiAoY3Vyc29yLm9mZnNldCA+IG1hdGNoKQogICAgICAgICAgICBjdXJzb3JkaWZmID0gbGluZS50ZXh0Lmxlbmd0aCAtIHByZXYudGV4dC5sZW5ndGg7CiAgICAgICAgfQogICAgICAgIHNlbGVjdC5zZXRDdXJzb3JQb3ModGhpcy5jb250YWluZXIsIHtub2RlOiBsaW5lLmZyb20sIG9mZnNldDogTWF0aC5tYXgoMCwgY3Vyc29yLm9mZnNldCArIGN1cnNvcmRpZmYpfSk7CiAgICAgIH0KICAgICAgLy8gQ3Vyc29yIHdhcyBpbiByZW1vdmVkIGxpbmUsIHRoaXMgaXMgbGFzdCBuZXcgbGluZS4KICAgICAgZWxzZSBpZiAoY3Vyc29yICYmIChpID09IGNoYWluLmxlbmd0aCAtIDEpICYmIGN1cnNvci5ub2RlICYmIGN1cnNvci5ub2RlLnBhcmVudE5vZGUgIT0gdGhpcy5jb250YWluZXIpIHsKICAgICAgICBzZWxlY3Quc2V0Q3Vyc29yUG9zKHRoaXMuY29udGFpbmVyLCB7bm9kZTogbGluZS5mcm9tLCBvZmZzZXQ6IGxpbmUudGV4dC5sZW5ndGh9KTsKICAgICAgfQogICAgfQoKICAgIC8vIEFuY2hvciB0aGUgY2hhaW4gaW4gdGhlIERPTSB0cmVlLgogICAgdGhpcy5saW5rQ2hhaW4oY2hhaW4pOwogICAgcmV0dXJuIHN0YXJ0OwogIH0KfTsK]]></data>
	</file>
	<file>
	  <filename>/includes/CodeMirror/js/util.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[LyogQSBmZXcgdXNlZnVsIHV0aWxpdHkgZnVuY3Rpb25zLiAqLwoKLy8gQ2FwdHVyZSBhIG1ldGhvZCBvbiBhbiBvYmplY3QuCmZ1bmN0aW9uIG1ldGhvZChvYmosIG5hbWUpIHsKICByZXR1cm4gZnVuY3Rpb24oKSB7b2JqW25hbWVdLmFwcGx5KG9iaiwgYXJndW1lbnRzKTt9Owp9CgovLyBUaGUgdmFsdWUgdXNlZCB0byBzaWduYWwgdGhlIGVuZCBvZiBhIHNlcXVlbmNlIGluIGl0ZXJhdG9ycy4KdmFyIFN0b3BJdGVyYXRpb24gPSB7dG9TdHJpbmc6IGZ1bmN0aW9uKCkge3JldHVybiAiU3RvcEl0ZXJhdGlvbiJ9fTsKCi8vIEFwcGx5IGEgZnVuY3Rpb24gdG8gZWFjaCBlbGVtZW50IGluIGEgc2VxdWVuY2UuCmZ1bmN0aW9uIGZvckVhY2goaXRlciwgZikgewogIGlmIChpdGVyLm5leHQpIHsKICAgIHRyeSB7d2hpbGUgKHRydWUpIGYoaXRlci5uZXh0KCkpO30KICAgIGNhdGNoIChlKSB7aWYgKGUgIT0gU3RvcEl0ZXJhdGlvbikgdGhyb3cgZTt9CiAgfQogIGVsc2UgewogICAgZm9yICh2YXIgaSA9IDA7IGkgPCBpdGVyLmxlbmd0aDsgaSsrKQogICAgICBmKGl0ZXJbaV0pOwogIH0KfQoKLy8gTWFwIGEgZnVuY3Rpb24gb3ZlciBhIHNlcXVlbmNlLCBwcm9kdWNpbmcgYW4gYXJyYXkgb2YgcmVzdWx0cy4KZnVuY3Rpb24gbWFwKGl0ZXIsIGYpIHsKICB2YXIgYWNjdW0gPSBbXTsKICBmb3JFYWNoKGl0ZXIsIGZ1bmN0aW9uKHZhbCkge2FjY3VtLnB1c2goZih2YWwpKTt9KTsKICByZXR1cm4gYWNjdW07Cn0KCi8vIENyZWF0ZSBhIHByZWRpY2F0ZSBmdW5jdGlvbiB0aGF0IHRlc3RzIGEgc3RyaW5nIGFnYWluc3RzIGEgZ2l2ZW4KLy8gcmVndWxhciBleHByZXNzaW9uLiBObyBsb25nZXIgdXNlZCBidXQgbWlnaHQgYmUgdXNlZCBieSAzcmQgcGFydHkKLy8gcGFyc2Vycy4KZnVuY3Rpb24gbWF0Y2hlcihyZWdleHApewogIHJldHVybiBmdW5jdGlvbih2YWx1ZSl7cmV0dXJuIHJlZ2V4cC50ZXN0KHZhbHVlKTt9Owp9CgovLyBUZXN0IHdoZXRoZXIgYSBET00gbm9kZSBoYXMgYSBjZXJ0YWluIENTUyBjbGFzcy4gTXVjaCBmYXN0ZXIgdGhhbgovLyB0aGUgTW9jaGlLaXQgZXF1aXZhbGVudCwgZm9yIHNvbWUgcmVhc29uLgpmdW5jdGlvbiBoYXNDbGFzcyhlbGVtZW50LCBjbGFzc05hbWUpewogIHZhciBjbGFzc2VzID0gZWxlbWVudC5jbGFzc05hbWU7CiAgcmV0dXJuIGNsYXNzZXMgJiYgbmV3IFJlZ0V4cCgiKF58ICkiICsgY2xhc3NOYW1lICsgIigkfCApIikudGVzdChjbGFzc2VzKTsKfQoKLy8gSW5zZXJ0IGEgRE9NIG5vZGUgYWZ0ZXIgYW5vdGhlciBub2RlLgpmdW5jdGlvbiBpbnNlcnRBZnRlcihuZXdOb2RlLCBvbGROb2RlKSB7CiAgdmFyIHBhcmVudCA9IG9sZE5vZGUucGFyZW50Tm9kZTsKICBwYXJlbnQuaW5zZXJ0QmVmb3JlKG5ld05vZGUsIG9sZE5vZGUubmV4dFNpYmxpbmcpOwogIHJldHVybiBuZXdOb2RlOwp9CgpmdW5jdGlvbiByZW1vdmVFbGVtZW50KG5vZGUpIHsKICBpZiAobm9kZS5wYXJlbnROb2RlKQogICAgbm9kZS5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKG5vZGUpOwp9CgpmdW5jdGlvbiBjbGVhckVsZW1lbnQobm9kZSkgewogIHdoaWxlIChub2RlLmZpcnN0Q2hpbGQpCiAgICBub2RlLnJlbW92ZUNoaWxkKG5vZGUuZmlyc3RDaGlsZCk7Cn0KCi8vIENoZWNrIHdoZXRoZXIgYSBub2RlIGlzIGNvbnRhaW5lZCBpbiBhbm90aGVyIG9uZS4KZnVuY3Rpb24gaXNBbmNlc3Rvcihub2RlLCBjaGlsZCkgewogIHdoaWxlIChjaGlsZCA9IGNoaWxkLnBhcmVudE5vZGUpIHsKICAgIGlmIChub2RlID09IGNoaWxkKQogICAgICByZXR1cm4gdHJ1ZTsKICB9CiAgcmV0dXJuIGZhbHNlOwp9CgovLyBUaGUgbm9uLWJyZWFraW5nIHNwYWNlIGNoYXJhY3Rlci4KdmFyIG5ic3AgPSAiXHUwMGEwIjsKdmFyIG1hdGNoaW5nID0geyJ7IjogIn0iLCAiWyI6ICJdIiwgIigiOiAiKSIsCiAgICAgICAgICAgICAgICAifSI6ICJ7IiwgIl0iOiAiWyIsICIpIjogIigifTsKCi8vIFN0YW5kYXJkaXplIGEgZmV3IHVucG9ydGFibGUgZXZlbnQgcHJvcGVydGllcy4KZnVuY3Rpb24gbm9ybWFsaXplRXZlbnQoZXZlbnQpIHsKICBpZiAoIWV2ZW50LnN0b3BQcm9wYWdhdGlvbikgewogICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uID0gZnVuY3Rpb24oKSB7dGhpcy5jYW5jZWxCdWJibGUgPSB0cnVlO307CiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCA9IGZ1bmN0aW9uKCkge3RoaXMucmV0dXJuVmFsdWUgPSBmYWxzZTt9OwogIH0KICBpZiAoIWV2ZW50LnN0b3ApIHsKICAgIGV2ZW50LnN0b3AgPSBmdW5jdGlvbigpIHsKICAgICAgdGhpcy5zdG9wUHJvcGFnYXRpb24oKTsKICAgICAgdGhpcy5wcmV2ZW50RGVmYXVsdCgpOwogICAgfTsKICB9CgogIGlmIChldmVudC50eXBlID09ICJrZXlwcmVzcyIpIHsKICAgIGV2ZW50LmNvZGUgPSAoZXZlbnQuY2hhckNvZGUgPT0gbnVsbCkgPyBldmVudC5rZXlDb2RlIDogZXZlbnQuY2hhckNvZGU7CiAgICBldmVudC5jaGFyYWN0ZXIgPSBTdHJpbmcuZnJvbUNoYXJDb2RlKGV2ZW50LmNvZGUpOwogIH0KICByZXR1cm4gZXZlbnQ7Cn0KCi8vIFBvcnRhYmx5IHJlZ2lzdGVyIGV2ZW50IGhhbmRsZXJzLgpmdW5jdGlvbiBhZGRFdmVudEhhbmRsZXIobm9kZSwgdHlwZSwgaGFuZGxlciwgcmVtb3ZlRnVuYykgewogIGZ1bmN0aW9uIHdyYXBIYW5kbGVyKGV2ZW50KSB7CiAgICBoYW5kbGVyKG5vcm1hbGl6ZUV2ZW50KGV2ZW50IHx8IHdpbmRvdy5ldmVudCkpOwogIH0KICBpZiAodHlwZW9mIG5vZGUuYWRkRXZlbnRMaXN0ZW5lciA9PSAiZnVuY3Rpb24iKSB7CiAgICBub2RlLmFkZEV2ZW50TGlzdGVuZXIodHlwZSwgd3JhcEhhbmRsZXIsIGZhbHNlKTsKICAgIGlmIChyZW1vdmVGdW5jKSByZXR1cm4gZnVuY3Rpb24oKSB7bm9kZS5yZW1vdmVFdmVudExpc3RlbmVyKHR5cGUsIHdyYXBIYW5kbGVyLCBmYWxzZSk7fTsKICB9CiAgZWxzZSB7CiAgICBub2RlLmF0dGFjaEV2ZW50KCJvbiIgKyB0eXBlLCB3cmFwSGFuZGxlcik7CiAgICBpZiAocmVtb3ZlRnVuYykgcmV0dXJuIGZ1bmN0aW9uKCkge25vZGUuZGV0YWNoRXZlbnQoIm9uIiArIHR5cGUsIHdyYXBIYW5kbGVyKTt9OwogIH0KfQoKZnVuY3Rpb24gbm9kZVRleHQobm9kZSkgewogIHJldHVybiBub2RlLnRleHRDb250ZW50IHx8IG5vZGUuaW5uZXJUZXh0IHx8IG5vZGUubm9kZVZhbHVlIHx8ICIiOwp9CgpmdW5jdGlvbiBub2RlVG9wKG5vZGUpIHsKICB2YXIgdG9wID0gMDsKICB3aGlsZSAobm9kZS5vZmZzZXRQYXJlbnQpIHsKICAgIHRvcCArPSBub2RlLm9mZnNldFRvcDsKICAgIG5vZGUgPSBub2RlLm9mZnNldFBhcmVudDsKICB9CiAgcmV0dXJuIHRvcDsKfQoKZnVuY3Rpb24gaXNCUihub2RlKSB7CiAgdmFyIG5uID0gbm9kZS5ub2RlTmFtZTsKICByZXR1cm4gbm4gPT0gIkJSIiB8fCBubiA9PSAiYnIiOwp9CmZ1bmN0aW9uIGlzU3Bhbihub2RlKSB7CiAgdmFyIG5uID0gbm9kZS5ub2RlTmFtZTsKICByZXR1cm4gbm4gPT0gIlNQQU4iIHx8IG5uID09ICJzcGFuIjsKfQo=]]></data>
	</file>
	<file>
	  <filename>/includes/jquery.colorbox-min.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[LyoJQ29sb3JCb3ggdjEuMy42IC0gYSBmdWxsIGZlYXR1cmVkLCBsaWdodC13ZWlnaHQsIGN1c3RvbWl6YWJsZSBsaWdodGJveCBiYXNlZCBvbiBqUXVlcnkgMS4zICovCihmdW5jdGlvbihjKXtmdW5jdGlvbiByKGIsZCl7ZD1kPT09IngiP20ud2lkdGgoKTptLmhlaWdodCgpO3JldHVybiB0eXBlb2YgYj09PSJzdHJpbmciP01hdGgucm91bmQoYi5tYXRjaCgvJS8pP2QvMTAwKnBhcnNlSW50KGIsMTApOnBhcnNlSW50KGIsMTApKTpifWZ1bmN0aW9uIE0oYil7Yj1jLmlzRnVuY3Rpb24oYik/Yi5jYWxsKGkpOmI7cmV0dXJuIGEucGhvdG98fGIubWF0Y2goL1wuKGdpZnxwbmd8anBnfGpwZWd8Ym1wKSg/Olw/KFteI10qKSk/KD86IyhcLiopKT8kL2kpfWZ1bmN0aW9uIFkoKXtmb3IodmFyIGIgaW4gYSlpZihjLmlzRnVuY3Rpb24oYVtiXSkmJmIuc3Vic3RyaW5nKDAsMikhPT0ib24iKWFbYl09YVtiXS5jYWxsKGkpO2EucmVsPWEucmVsfHxpLnJlbDthLmhyZWY9YS5ocmVmfHxpLmhyZWY7YS50aXRsZT1hLnRpdGxlfHxpLnRpdGxlfWZ1bmN0aW9uIFooYil7aT1iO2E9Yy5leHRlbmQoe30sYyhpKS5kYXRhKHEpKTtZKCk7aWYoYS5yZWwmJmEucmVsIT09Im5vZm9sbG93Iil7Zz0gYygiLmNib3hFbGVtZW50IikuZmlsdGVyKGZ1bmN0aW9uKCl7cmV0dXJuKGModGhpcykuZGF0YShxKS5yZWx8fHRoaXMucmVsKT09PWEucmVsfSk7aj1nLmluZGV4KGkpO2lmKGo8MCl7Zz1nLmFkZChpKTtqPWcubGVuZ3RoLTF9fWVsc2V7Zz1jKGkpO2o9MH1pZighQil7Qz1CPW47Tj1pO04uYmx1cigpO2MoZG9jdW1lbnQpLmJpbmQoImtleWRvd24uY2JveF9jbG9zZSIsZnVuY3Rpb24oZCl7aWYoZC5rZXlDb2RlPT09Mjcpe2QucHJldmVudERlZmF1bHQoKTtlLmNsb3NlKCl9fSkuYmluZCgia2V5ZG93bi5jYm94X2Fycm93cyIsZnVuY3Rpb24oZCl7aWYoZy5sZW5ndGg+MSlpZihkLmtleUNvZGU9PT0zNyl7ZC5wcmV2ZW50RGVmYXVsdCgpO0QuY2xpY2soKX1lbHNlIGlmKGQua2V5Q29kZT09PTM5KXtkLnByZXZlbnREZWZhdWx0KCk7RS5jbGljaygpfX0pO2Eub3ZlcmxheUNsb3NlJiZzLmNzcyh7Y3Vyc29yOiJwb2ludGVyIn0pLm9uZSgiY2xpY2siLGUuY2xvc2UpO2MuZXZlbnQudHJpZ2dlcihhYSk7IGEub25PcGVuJiZhLm9uT3Blbi5jYWxsKGkpO3MuY3NzKHtvcGFjaXR5OmEub3BhY2l0eX0pLnNob3coKTthLnc9cihhLmluaXRpYWxXaWR0aCwieCIpO2EuaD1yKGEuaW5pdGlhbEhlaWdodCwieSIpO2UucG9zaXRpb24oMCk7TyYmbS5iaW5kKCJyZXNpemUuY2JveGllNiBzY3JvbGwuY2JveGllNiIsZnVuY3Rpb24oKXtzLmNzcyh7d2lkdGg6bS53aWR0aCgpLGhlaWdodDptLmhlaWdodCgpLHRvcDptLnNjcm9sbFRvcCgpLGxlZnQ6bS5zY3JvbGxMZWZ0KCl9KX0pLnRyaWdnZXIoInNjcm9sbC5jYm94aWU2Iil9UC5hZGQoRCkuYWRkKEUpLmFkZCh0KS5hZGQoUSkuaGlkZSgpO1IuaHRtbChhLmNsb3NlKS5zaG93KCk7ZS5zbGlkZXNob3coKTtlLmxvYWQoKX12YXIgcT0iY29sb3Jib3giLEY9ImhvdmVyIixuPXRydWUsZSx4PWMuYnJvd3Nlci5tc2llJiYhYy5zdXBwb3J0Lm9wYWNpdHksTz14JiZjLmJyb3dzZXIudmVyc2lvbjw3LGFhPSJjYm94X29wZW4iLEg9ImNib3hfbG9hZCIsUz0gImNib3hfY29tcGxldGUiLFQ9InJlc2l6ZS5jYm94X3Jlc2l6ZSIscyxrLHUscCxVLFYsVyxYLGcsbSxsLEksSixLLFEsUCx0LEUsRCxSLHkseix2LHcsaSxOLGosYSxCLEMsJD17dHJhbnNpdGlvbjoiZWxhc3RpYyIsc3BlZWQ6MzUwLHdpZHRoOmZhbHNlLGhlaWdodDpmYWxzZSxpbm5lcldpZHRoOmZhbHNlLGlubmVySGVpZ2h0OmZhbHNlLGluaXRpYWxXaWR0aDoiNDAwIixpbml0aWFsSGVpZ2h0OiI0MDAiLG1heFdpZHRoOmZhbHNlLG1heEhlaWdodDpmYWxzZSxzY2FsZVBob3RvczpuLHNjcm9sbGluZzpuLGlubGluZTpmYWxzZSxodG1sOmZhbHNlLGlmcmFtZTpmYWxzZSxwaG90bzpmYWxzZSxocmVmOmZhbHNlLHRpdGxlOmZhbHNlLHJlbDpmYWxzZSxvcGFjaXR5OjAuOSxwcmVsb2FkaW5nOm4sY3VycmVudDoiaW1hZ2Uge2N1cnJlbnR9IG9mIHt0b3RhbH0iLHByZXZpb3VzOiJwcmV2aW91cyIsbmV4dDoibmV4dCIsY2xvc2U6ImNsb3NlIixvcGVuOmZhbHNlLG92ZXJsYXlDbG9zZTpuLCBzbGlkZXNob3c6ZmFsc2Usc2xpZGVzaG93QXV0bzpuLHNsaWRlc2hvd1NwZWVkOjI1MDAsc2xpZGVzaG93U3RhcnQ6InN0YXJ0IHNsaWRlc2hvdyIsc2xpZGVzaG93U3RvcDoic3RvcCBzbGlkZXNob3ciLG9uT3BlbjpmYWxzZSxvbkxvYWQ6ZmFsc2Usb25Db21wbGV0ZTpmYWxzZSxvbkNsZWFudXA6ZmFsc2Usb25DbG9zZWQ6ZmFsc2V9O2U9Yy5mbi5jb2xvcmJveD1mdW5jdGlvbihiLGQpe3ZhciBoPXRoaXM7aWYoIWgubGVuZ3RoKWlmKGguc2VsZWN0b3I9PT0iIil7aD1jKCI8YS8+Iik7Yi5vcGVuPW59ZWxzZSByZXR1cm4gdGhpcztoLmVhY2goZnVuY3Rpb24oKXt2YXIgZj1jLmV4dGVuZCh7fSxjKHRoaXMpLmRhdGEocSk/Yyh0aGlzKS5kYXRhKHEpOiQsYik7Yyh0aGlzKS5kYXRhKHEsZikuYWRkQ2xhc3MoImNib3hFbGVtZW50Iik7aWYoZCljKHRoaXMpLmRhdGEocSkub25Db21wbGV0ZT1kfSk7YiYmYi5vcGVuJiZaKGgpO3JldHVybiB0aGlzfTtlLmluaXQ9ZnVuY3Rpb24oKXtmdW5jdGlvbiBiKGQpe3JldHVybiBjKCc8ZGl2IGlkPSJjYm94JysgZCsnIi8+Jyl9bT1jKHdpbmRvdyk7az1jKCc8ZGl2IGlkPSJjb2xvcmJveCIvPicpO3M9YigiT3ZlcmxheSIpLmhpZGUoKTt1PWIoIldyYXBwZXIiKTtwPWIoIkNvbnRlbnQiKS5hcHBlbmQobD1iKCJMb2FkZWRDb250ZW50IikuY3NzKHt3aWR0aDowLGhlaWdodDowfSksSj1iKCJMb2FkaW5nT3ZlcmxheSIpLEs9YigiTG9hZGluZ0dyYXBoaWMiKSxRPWIoIlRpdGxlIiksUD1iKCJDdXJyZW50IiksdD1iKCJTbGlkZXNob3ciKSxFPWIoIk5leHQiKSxEPWIoIlByZXZpb3VzIiksUj1iKCJDbG9zZSIpKTt1LmFwcGVuZChjKCI8ZGl2Lz4iKS5hcHBlbmQoYigiVG9wTGVmdCIpLFU9YigiVG9wQ2VudGVyIiksYigiVG9wUmlnaHQiKSksYygiPGRpdi8+IikuYXBwZW5kKFY9YigiTWlkZGxlTGVmdCIpLHAsVz1iKCJNaWRkbGVSaWdodCIpKSxjKCI8ZGl2Lz4iKS5hcHBlbmQoYigiQm90dG9tTGVmdCIpLFg9YigiQm90dG9tQ2VudGVyIiksYigiQm90dG9tUmlnaHQiKSkpLmNoaWxkcmVuKCkuY2hpbGRyZW4oKS5jc3MoeyJmbG9hdCI6ImxlZnQifSk7IEk9YygiPGRpdiBzdHlsZT0ncG9zaXRpb246YWJzb2x1dGU7IHRvcDowOyBsZWZ0OjA7IHdpZHRoOjk5OTlweDsgaGVpZ2h0OjA7Jy8+Iik7YygiYm9keSIpLnByZXBlbmQocyxrLmFwcGVuZCh1LEkpKTtpZih4KXtrLmFkZENsYXNzKCJjYm94SUUiKTtPJiZzLmNzcygicG9zaXRpb24iLCJhYnNvbHV0ZSIpfXAuY2hpbGRyZW4oKS5iaW5kKCJtb3VzZW92ZXIgbW91c2VvdXQiLGZ1bmN0aW9uKCl7Yyh0aGlzKS50b2dnbGVDbGFzcyhGKX0pLmFkZENsYXNzKEYpO3k9VS5oZWlnaHQoKStYLmhlaWdodCgpK3Aub3V0ZXJIZWlnaHQobiktcC5oZWlnaHQoKTt6PVYud2lkdGgoKStXLndpZHRoKCkrcC5vdXRlcldpZHRoKG4pLXAud2lkdGgoKTt2PWwub3V0ZXJIZWlnaHQobik7dz1sLm91dGVyV2lkdGgobik7ay5jc3MoeyJwYWRkaW5nLWJvdHRvbSI6eSwicGFkZGluZy1yaWdodCI6en0pLmhpZGUoKTtFLmNsaWNrKGUubmV4dCk7RC5jbGljayhlLnByZXYpO1IuY2xpY2soZS5jbG9zZSk7cC5jaGlsZHJlbigpLnJlbW92ZUNsYXNzKEYpOyBjKCIuY2JveEVsZW1lbnQiKS5saXZlKCJjbGljayIsZnVuY3Rpb24oZCl7aWYoZC5idXR0b24hPT0wJiZ0eXBlb2YgZC5idXR0b24hPT0idW5kZWZpbmVkIilyZXR1cm4gbjtlbHNle1oodGhpcyk7cmV0dXJuIGZhbHNlfX0pfTtlLnBvc2l0aW9uPWZ1bmN0aW9uKGIsZCl7ZnVuY3Rpb24gaChBKXtVWzBdLnN0eWxlLndpZHRoPVhbMF0uc3R5bGUud2lkdGg9cFswXS5zdHlsZS53aWR0aD1BLnN0eWxlLndpZHRoO0tbMF0uc3R5bGUuaGVpZ2h0PUpbMF0uc3R5bGUuaGVpZ2h0PXBbMF0uc3R5bGUuaGVpZ2h0PVZbMF0uc3R5bGUuaGVpZ2h0PVdbMF0uc3R5bGUuaGVpZ2h0PUEuc3R5bGUuaGVpZ2h0fXZhciBmPW0uaGVpZ2h0KCk7Zj1NYXRoLm1heChmLWEuaC12LXksMCkvMittLnNjcm9sbFRvcCgpO3ZhciBvPU1hdGgubWF4KGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRXaWR0aC1hLnctdy16LDApLzIrbS5zY3JvbGxMZWZ0KCk7Yj1rLndpZHRoKCk9PT1hLncrdyYmay5oZWlnaHQoKT09PSBhLmgrdj8wOmI7dVswXS5zdHlsZS53aWR0aD11WzBdLnN0eWxlLmhlaWdodD0iOTk5OXB4IjtrLmRlcXVldWUoKS5hbmltYXRlKHt3aWR0aDphLncrdyxoZWlnaHQ6YS5oK3YsdG9wOmYsbGVmdDpvfSx7ZHVyYXRpb246Yixjb21wbGV0ZTpmdW5jdGlvbigpe2godGhpcyk7Qz1mYWxzZTt1WzBdLnN0eWxlLndpZHRoPWEudyt3K3orInB4Ijt1WzBdLnN0eWxlLmhlaWdodD1hLmgrdit5KyJweCI7ZCYmZCgpfSxzdGVwOmZ1bmN0aW9uKCl7aCh0aGlzKX19KX07ZS5yZXNpemU9ZnVuY3Rpb24oYil7ZnVuY3Rpb24gZCgpe2Eudz1hLnd8fGwud2lkdGgoKTthLnc9YS5tdyYmYS5tdzxhLnc/YS5tdzphLnc7cmV0dXJuIGEud31mdW5jdGlvbiBoKCl7YS5oPWEuaHx8bC5oZWlnaHQoKTthLmg9YS5taCYmYS5taDxhLmg/YS5taDphLmg7cmV0dXJuIGEuaH1mdW5jdGlvbiBmKEcpe2UucG9zaXRpb24oRyxmdW5jdGlvbigpe2lmKEIpe2lmKHgpe0EmJmwuZmFkZUluKDEwMCk7a1swXS5zdHlsZS5yZW1vdmVBdHRyaWJ1dGUoImZpbHRlciIpfWlmKGEuaWZyYW1lKWwuYXBwZW5kKCI8aWZyYW1lIGlkPSdjYm94SWZyYW1lJyIrIChhLnNjcm9sbGluZz8iICI6InNjcm9sbGluZz0nbm8nIikrIiBuYW1lPSdpZnJhbWVfIisobmV3IERhdGUpLmdldFRpbWUoKSsiJyBmcmFtZWJvcmRlcj0wIHNyYz0nIithLmhyZWYrIicgIisoeD8iYWxsb3d0cmFuc3BhcmVuY3k9J3RydWUnIjoiIikrIiAvPiIpO2wuc2hvdygpO1Euc2hvdygpLmh0bWwoYS50aXRsZSk7aWYoZy5sZW5ndGg+MSl7UC5odG1sKGEuY3VycmVudC5yZXBsYWNlKC9ce2N1cnJlbnRcfS8saisxKS5yZXBsYWNlKC9ce3RvdGFsXH0vLGcubGVuZ3RoKSkuc2hvdygpO0UuaHRtbChhLm5leHQpLnNob3coKTtELmh0bWwoYS5wcmV2aW91cykuc2hvdygpO2Euc2xpZGVzaG93JiZ0LnNob3coKX1KLmhpZGUoKTtLLmhpZGUoKTtjLmV2ZW50LnRyaWdnZXIoUyk7YS5vbkNvbXBsZXRlJiZhLm9uQ29tcGxldGUuY2FsbChpKTthLnRyYW5zaXRpb249PT0iZmFkZSImJmsuZmFkZVRvKEwsMSxmdW5jdGlvbigpe3gmJmtbMF0uc3R5bGUucmVtb3ZlQXR0cmlidXRlKCJmaWx0ZXIiKX0pOyBtLmJpbmQoVCxmdW5jdGlvbigpe2UucG9zaXRpb24oMCl9KX19KX1pZihCKXt2YXIgbyxBLEw9YS50cmFuc2l0aW9uPT09Im5vbmUiPzA6YS5zcGVlZDttLnVuYmluZChUKTtpZihiKXtsLnJlbW92ZSgpO2w9YygnPGRpdiBpZD0iY2JveExvYWRlZENvbnRlbnQiLz4nKS5odG1sKGIpO2wuaGlkZSgpLmFwcGVuZFRvKEkpLmNzcyh7d2lkdGg6ZCgpLG92ZXJmbG93OmEuc2Nyb2xsaW5nPyJhdXRvIjoiaGlkZGVuIn0pLmNzcyh7aGVpZ2h0OmgoKX0pLnByZXBlbmRUbyhwKTtjKCIjY2JveFBob3RvIikuY3NzKHtjc3NGbG9hdDoibm9uZSJ9KTtPJiZjKCJzZWxlY3Q6bm90KCNjb2xvcmJveCBzZWxlY3QpIikuZmlsdGVyKGZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuc3R5bGUudmlzaWJpbGl0eSE9PSJoaWRkZW4ifSkuY3NzKHt2aXNpYmlsaXR5OiJoaWRkZW4ifSkub25lKCJjYm94X2NsZWFudXAiLGZ1bmN0aW9uKCl7dGhpcy5zdHlsZS52aXNpYmlsaXR5PSJpbmhlcml0In0pO2EudHJhbnNpdGlvbj09PSAiZmFkZSImJmsuZmFkZVRvKEwsMCxmdW5jdGlvbigpe2YoMCl9KXx8ZihMKTtpZihhLnByZWxvYWRpbmcmJmcubGVuZ3RoPjEpe2I9aj4wP2dbai0xXTpnW2cubGVuZ3RoLTFdO289ajxnLmxlbmd0aC0xP2dbaisxXTpnWzBdO289YyhvKS5kYXRhKHEpLmhyZWZ8fG8uaHJlZjtiPWMoYikuZGF0YShxKS5ocmVmfHxiLmhyZWY7TShvKSYmYygiPGltZyAvPiIpLmF0dHIoInNyYyIsbyk7TShiKSYmYygiPGltZyAvPiIpLmF0dHIoInNyYyIsYil9fWVsc2Ugc2V0VGltZW91dChmdW5jdGlvbigpe3ZhciBHPWwud3JhcElubmVyKCI8ZGl2IHN0eWxlPSdvdmVyZmxvdzphdXRvJz48L2Rpdj4iKS5jaGlsZHJlbigpO2EuaD1HLmhlaWdodCgpO2wuY3NzKHtoZWlnaHQ6YS5ofSk7Ry5yZXBsYWNlV2l0aChHLmNoaWxkcmVuKCkpO2UucG9zaXRpb24oTCl9LDEpfX07ZS5sb2FkPWZ1bmN0aW9uKCl7dmFyIGIsZCxoLGY9ZS5yZXNpemU7Qz1uO2k9Z1tqXTthPWMuZXh0ZW5kKHt9LGMoaSkuZGF0YShxKSk7IFkoKTtjLmV2ZW50LnRyaWdnZXIoSCk7YS5vbkxvYWQmJmEub25Mb2FkLmNhbGwoaSk7YS5oPWEuaGVpZ2h0P3IoYS5oZWlnaHQsInkiKS12LXk6YS5pbm5lckhlaWdodD9yKGEuaW5uZXJIZWlnaHQsInkiKTpmYWxzZTthLnc9YS53aWR0aD9yKGEud2lkdGgsIngiKS13LXo6YS5pbm5lcldpZHRoP3IoYS5pbm5lcldpZHRoLCJ4Iik6ZmFsc2U7YS5tdz1hLnc7YS5taD1hLmg7aWYoYS5tYXhXaWR0aCl7YS5tdz1yKGEubWF4V2lkdGgsIngiKS13LXo7YS5tdz1hLncmJmEudzxhLm13P2EudzphLm13fWlmKGEubWF4SGVpZ2h0KXthLm1oPXIoYS5tYXhIZWlnaHQsInkiKS12LXk7YS5taD1hLmgmJmEuaDxhLm1oP2EuaDphLm1ofWI9YS5ocmVmO0ouc2hvdygpO0suc2hvdygpO2lmKGEuaW5saW5lKXtjKCc8ZGl2IGlkPSJjYm94SW5saW5lVGVtcCIgLz4nKS5oaWRlKCkuaW5zZXJ0QmVmb3JlKGMoYilbMF0pLmJpbmQoSCsiIGNib3hfY2xlYW51cCIsZnVuY3Rpb24oKXtjKHRoaXMpLnJlcGxhY2VXaXRoKGwuY2hpbGRyZW4oKSl9KTsgZihjKGIpKX1lbHNlIGlmKGEuaWZyYW1lKWYoIiAiKTtlbHNlIGlmKGEuaHRtbClmKGEuaHRtbCk7ZWxzZSBpZihNKGIpKXtkPW5ldyBJbWFnZTtkLm9ubG9hZD1mdW5jdGlvbigpe3ZhciBvO2Qub25sb2FkPW51bGw7ZC5pZD0iY2JveFBob3RvIjtjKGQpLmNzcyh7bWFyZ2luOiJhdXRvIixib3JkZXI6Im5vbmUiLGRpc3BsYXk6ImJsb2NrIixjc3NGbG9hdDoibGVmdCJ9KTtpZihhLnNjYWxlUGhvdG9zKXtoPWZ1bmN0aW9uKCl7ZC5oZWlnaHQtPWQuaGVpZ2h0Km87ZC53aWR0aC09ZC53aWR0aCpvfTtpZihhLm13JiZkLndpZHRoPmEubXcpe289KGQud2lkdGgtYS5tdykvZC53aWR0aDtoKCl9aWYoYS5taCYmZC5oZWlnaHQ+YS5taCl7bz0oZC5oZWlnaHQtYS5taCkvZC5oZWlnaHQ7aCgpfX1pZihhLmgpZC5zdHlsZS5tYXJnaW5Ub3A9TWF0aC5tYXgoYS5oLWQuaGVpZ2h0LDApLzIrInB4IjtmKGQpO2cubGVuZ3RoPjEmJmMoZCkuY3NzKHtjdXJzb3I6InBvaW50ZXIifSkuY2xpY2soZS5uZXh0KTsgaWYoeClkLnN0eWxlLm1zSW50ZXJwb2xhdGlvbk1vZGU9ImJpY3ViaWMifTtkLnNyYz1ifWVsc2UgYygiPGRpdiAvPiIpLmFwcGVuZFRvKEkpLmxvYWQoYixmdW5jdGlvbihvLEEpe0E9PT0ic3VjY2VzcyI/Zih0aGlzKTpmKGMoIjxwPlJlcXVlc3QgdW5zdWNjZXNzZnVsLjwvcD4iKSl9KX07ZS5uZXh0PWZ1bmN0aW9uKCl7aWYoIUMpe2o9ajxnLmxlbmd0aC0xP2orMTowO2UubG9hZCgpfX07ZS5wcmV2PWZ1bmN0aW9uKCl7aWYoIUMpe2o9aj4wP2otMTpnLmxlbmd0aC0xO2UubG9hZCgpfX07ZS5zbGlkZXNob3c9ZnVuY3Rpb24oKXtmdW5jdGlvbiBiKCl7dC50ZXh0KGEuc2xpZGVzaG93U3RvcCkuYmluZChTLGZ1bmN0aW9uKCl7aD1zZXRUaW1lb3V0KGUubmV4dCxhLnNsaWRlc2hvd1NwZWVkKX0pLmJpbmQoSCxmdW5jdGlvbigpe2NsZWFyVGltZW91dChoKX0pLm9uZSgiY2xpY2siLGZ1bmN0aW9uKCl7ZCgpO2ModGhpcykucmVtb3ZlQ2xhc3MoRil9KTtrLnJlbW92ZUNsYXNzKGYrICJvZmYiKS5hZGRDbGFzcyhmKyJvbiIpfXZhciBkLGgsZj0iY2JveFNsaWRlc2hvd18iO3QuYmluZCgiY2JveF9jbG9zZWQiLGZ1bmN0aW9uKCl7dC51bmJpbmQoKTtjbGVhclRpbWVvdXQoaCk7ay5yZW1vdmVDbGFzcyhmKyJvZmYgIitmKyJvbiIpfSk7ZD1mdW5jdGlvbigpe2NsZWFyVGltZW91dChoKTt0LnRleHQoYS5zbGlkZXNob3dTdGFydCkudW5iaW5kKFMrIiAiK0gpLm9uZSgiY2xpY2siLGZ1bmN0aW9uKCl7YigpO2g9c2V0VGltZW91dChlLm5leHQsYS5zbGlkZXNob3dTcGVlZCk7Yyh0aGlzKS5yZW1vdmVDbGFzcyhGKX0pO2sucmVtb3ZlQ2xhc3MoZisib24iKS5hZGRDbGFzcyhmKyJvZmYiKX07aWYoYS5zbGlkZXNob3cmJmcubGVuZ3RoPjEpYS5zbGlkZXNob3dBdXRvP2IoKTpkKCl9O2UuY2xvc2U9ZnVuY3Rpb24oKXtjLmV2ZW50LnRyaWdnZXIoImNib3hfY2xlYW51cCIpO2Eub25DbGVhbnVwJiZhLm9uQ2xlYW51cC5jYWxsKGkpO0I9ZmFsc2U7Yyhkb2N1bWVudCkudW5iaW5kKCJrZXlkb3duLmNib3hfY2xvc2Uga2V5ZG93bi5jYm94X2Fycm93cyIpOyBtLnVuYmluZChUKyIgcmVzaXplLmNib3hpZTYgc2Nyb2xsLmNib3hpZTYiKTtzLmNzcyh7Y3Vyc29yOiJhdXRvIn0pLmZhZGVPdXQoImZhc3QiKTtrLnN0b3AobixmYWxzZSkuZmFkZU91dCgiZmFzdCIsZnVuY3Rpb24oKXtjKCIjY29sb3Jib3ggaWZyYW1lIikuYXR0cigic3JjIiwiYWJvdXQ6YmxhbmsiKTtsLnJlbW92ZSgpO2suY3NzKHtvcGFjaXR5OjF9KTt0cnl7Ti5mb2N1cygpfWNhdGNoKGIpe31jLmV2ZW50LnRyaWdnZXIoImNib3hfY2xvc2VkIik7YS5vbkNsb3NlZCYmYS5vbkNsb3NlZC5jYWxsKGkpfSl9O2UuZWxlbWVudD1mdW5jdGlvbigpe3JldHVybiBjKGkpfTtlLnNldHRpbmdzPSQ7YyhlLmluaXQpfSkoalF1ZXJ5KTs=]]></data>
	</file>
	<file>
	  <filename>/includes/jquery.hotkeys.min.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[KGZ1bmN0aW9uKGpRdWVyeSl7alF1ZXJ5LmZuLl9fYmluZF9fPWpRdWVyeS5mbi5iaW5kO2pRdWVyeS5mbi5fX3VuYmluZF9fPWpRdWVyeS5mbi51bmJpbmQ7alF1ZXJ5LmZuLl9fZmluZF9fPWpRdWVyeS5mbi5maW5kO3ZhciBob3RrZXlzPXt2ZXJzaW9uOicwLjcuOScsb3ZlcnJpZGU6L2tleXByZXNzfGtleWRvd258a2V5dXAvZyx0cmlnZ2Vyc01hcDp7fSxzcGVjaWFsS2V5czp7Mjc6J2VzYycsOTondGFiJywzMjonc3BhY2UnLDEzOidyZXR1cm4nLDg6J2JhY2tzcGFjZScsMTQ1OidzY3JvbGwnLDIwOidjYXBzbG9jaycsMTQ0OidudW1sb2NrJywxOToncGF1c2UnLDQ1OidpbnNlcnQnLDM2Oidob21lJyw0NjonZGVsJywzNTonZW5kJywzMzoncGFnZXVwJywzNDoncGFnZWRvd24nLDM3OidsZWZ0JywzODondXAnLDM5OidyaWdodCcsNDA6J2Rvd24nLDEwOTonLScsMTEyOidmMScsMTEzOidmMicsMTE0OidmMycsMTE1OidmNCcsMTE2OidmNScsMTE3OidmNicsMTE4OidmNycsMTE5OidmOCcsMTIwOidmOScsMTIxOidmMTAnLDEyMjonZjExJywxMjM6J2YxMicsMTkxOicvJ30sc2hpZnROdW1zOnsiYCI6In4iLCIxIjoiISIsIjIiOiJAIiwiMyI6IiMiLCI0IjoiJCIsIjUiOiIlIiwiNiI6Il4iLCI3IjoiJiIsIjgiOiIqIiwiOSI6IigiLCIwIjoiKSIsIi0iOiJfIiwiPSI6IisiLCI7IjoiOiIsIiciOiJcIiIsIiwiOiI8IiwiLiI6Ij4iLCIvIjoiPyIsIlxcIjoifCJ9LG5ld1RyaWdnZXI6ZnVuY3Rpb24odHlwZSxjb21iaSxjYWxsYmFjayl7dmFyIHJlc3VsdD17fTtyZXN1bHRbdHlwZV09e307cmVzdWx0W3R5cGVdW2NvbWJpXT17Y2I6Y2FsbGJhY2ssZGlzYWJsZUluSW5wdXQ6ZmFsc2V9O3JldHVybiByZXN1bHQ7fX07aG90a2V5cy5zcGVjaWFsS2V5cz1qUXVlcnkuZXh0ZW5kKGhvdGtleXMuc3BlY2lhbEtleXMsezk2OicwJyw5NzonMScsOTg6JzInLDk5OiczJywxMDA6JzQnLDEwMTonNScsMTAyOic2JywxMDM6JzcnLDEwNDonOCcsMTA1Oic5JywxMDY6JyonLDEwNzonKycsMTA5OictJywxMTA6Jy4nLDExMTonLyd9KTtqUXVlcnkuZm4uZmluZD1mdW5jdGlvbihzZWxlY3Rvcil7dGhpcy5xdWVyeT1zZWxlY3RvcjtyZXR1cm4galF1ZXJ5LmZuLl9fZmluZF9fLmFwcGx5KHRoaXMsYXJndW1lbnRzKTt9O2pRdWVyeS5mbi51bmJpbmQ9ZnVuY3Rpb24odHlwZSxjb21iaSxmbil7aWYoalF1ZXJ5LmlzRnVuY3Rpb24oY29tYmkpKXtmbj1jb21iaTtjb21iaT1udWxsO30KaWYoY29tYmkmJnR5cGVvZiBjb21iaT09PSdzdHJpbmcnKXt2YXIgc2VsZWN0b3JJZD0oKHRoaXMucHJldk9iamVjdCYmdGhpcy5wcmV2T2JqZWN0LnF1ZXJ5KXx8KHRoaXNbMF0uaWQmJnRoaXNbMF0uaWQpfHx0aGlzWzBdKS50b1N0cmluZygpO3ZhciBoa1R5cGVzPXR5cGUuc3BsaXQoJyAnKTtmb3IodmFyIHg9MDt4PGhrVHlwZXMubGVuZ3RoO3grKyl7ZGVsZXRlIGhvdGtleXMudHJpZ2dlcnNNYXBbc2VsZWN0b3JJZF1baGtUeXBlc1t4XV1bY29tYmldO319CnJldHVybiB0aGlzLl9fdW5iaW5kX18odHlwZSxmbik7fTtqUXVlcnkuZm4uYmluZD1mdW5jdGlvbih0eXBlLGRhdGEsZm4pe3ZhciBoYW5kbGU9dHlwZS5tYXRjaChob3RrZXlzLm92ZXJyaWRlKTtpZihqUXVlcnkuaXNGdW5jdGlvbihkYXRhKXx8IWhhbmRsZSl7cmV0dXJuIHRoaXMuX19iaW5kX18odHlwZSxkYXRhLGZuKTt9CmVsc2V7dmFyIHJlc3VsdD1udWxsLHBhc3MyanE9alF1ZXJ5LnRyaW0odHlwZS5yZXBsYWNlKGhvdGtleXMub3ZlcnJpZGUsJycpKTtpZihwYXNzMmpxKXtyZXN1bHQ9dGhpcy5fX2JpbmRfXyhwYXNzMmpxLGRhdGEsZm4pO30KaWYodHlwZW9mIGRhdGE9PT0ic3RyaW5nIil7ZGF0YT17J2NvbWJpJzpkYXRhfTt9CmlmKGRhdGEuY29tYmkpe2Zvcih2YXIgeD0wO3g8aGFuZGxlLmxlbmd0aDt4Kyspe3ZhciBldmVudFR5cGU9aGFuZGxlW3hdO3ZhciBjb21iaT1kYXRhLmNvbWJpLnRvTG93ZXJDYXNlKCksdHJpZ2dlcj1ob3RrZXlzLm5ld1RyaWdnZXIoZXZlbnRUeXBlLGNvbWJpLGZuKSxzZWxlY3RvcklkPSgodGhpcy5wcmV2T2JqZWN0JiZ0aGlzLnByZXZPYmplY3QucXVlcnkpfHwodGhpc1swXS5pZCYmdGhpc1swXS5pZCl8fHRoaXNbMF0pLnRvU3RyaW5nKCk7dHJpZ2dlcltldmVudFR5cGVdW2NvbWJpXS5kaXNhYmxlSW5JbnB1dD1kYXRhLmRpc2FibGVJbklucHV0O2lmKCFob3RrZXlzLnRyaWdnZXJzTWFwW3NlbGVjdG9ySWRdKXtob3RrZXlzLnRyaWdnZXJzTWFwW3NlbGVjdG9ySWRdPXRyaWdnZXI7fQplbHNlIGlmKCFob3RrZXlzLnRyaWdnZXJzTWFwW3NlbGVjdG9ySWRdW2V2ZW50VHlwZV0pe2hvdGtleXMudHJpZ2dlcnNNYXBbc2VsZWN0b3JJZF1bZXZlbnRUeXBlXT10cmlnZ2VyW2V2ZW50VHlwZV07fQp2YXIgbWFwUG9pbnQ9aG90a2V5cy50cmlnZ2Vyc01hcFtzZWxlY3RvcklkXVtldmVudFR5cGVdW2NvbWJpXTtpZighbWFwUG9pbnQpe2hvdGtleXMudHJpZ2dlcnNNYXBbc2VsZWN0b3JJZF1bZXZlbnRUeXBlXVtjb21iaV09W3RyaWdnZXJbZXZlbnRUeXBlXVtjb21iaV1dO30KZWxzZSBpZihtYXBQb2ludC5jb25zdHJ1Y3RvciE9PUFycmF5KXtob3RrZXlzLnRyaWdnZXJzTWFwW3NlbGVjdG9ySWRdW2V2ZW50VHlwZV1bY29tYmldPVttYXBQb2ludF07fQplbHNle2hvdGtleXMudHJpZ2dlcnNNYXBbc2VsZWN0b3JJZF1bZXZlbnRUeXBlXVtjb21iaV1bbWFwUG9pbnQubGVuZ3RoXT10cmlnZ2VyW2V2ZW50VHlwZV1bY29tYmldO30KdGhpcy5lYWNoKGZ1bmN0aW9uKCl7dmFyIGpxRWxlbT1qUXVlcnkodGhpcyk7aWYoanFFbGVtLmF0dHIoJ2hrSWQnKSYmanFFbGVtLmF0dHIoJ2hrSWQnKSE9PXNlbGVjdG9ySWQpe3NlbGVjdG9ySWQ9anFFbGVtLmF0dHIoJ2hrSWQnKSsiOyIrc2VsZWN0b3JJZDt9CmpxRWxlbS5hdHRyKCdoa0lkJyxzZWxlY3RvcklkKTt9KTtyZXN1bHQ9dGhpcy5fX2JpbmRfXyhoYW5kbGUuam9pbignICcpLGRhdGEsaG90a2V5cy5oYW5kbGVyKX19CnJldHVybiByZXN1bHQ7fX07aG90a2V5cy5maW5kRWxlbWVudD1mdW5jdGlvbihlbGVtKXtpZighalF1ZXJ5KGVsZW0pLmF0dHIoJ2hrSWQnKSl7aWYoalF1ZXJ5LmJyb3dzZXIub3BlcmF8fGpRdWVyeS5icm93c2VyLnNhZmFyaSl7d2hpbGUoIWpRdWVyeShlbGVtKS5hdHRyKCdoa0lkJykmJmVsZW0ucGFyZW50Tm9kZSl7ZWxlbT1lbGVtLnBhcmVudE5vZGU7fX19CnJldHVybiBlbGVtO307aG90a2V5cy5oYW5kbGVyPWZ1bmN0aW9uKGV2ZW50KXt2YXIgdGFyZ2V0PWhvdGtleXMuZmluZEVsZW1lbnQoZXZlbnQuY3VycmVudFRhcmdldCksalRhcmdldD1qUXVlcnkodGFyZ2V0KSxpZHM9alRhcmdldC5hdHRyKCdoa0lkJyk7aWYoaWRzKXtpZHM9aWRzLnNwbGl0KCc7Jyk7dmFyIGNvZGU9ZXZlbnQud2hpY2gsdHlwZT1ldmVudC50eXBlLHNwZWNpYWw9aG90a2V5cy5zcGVjaWFsS2V5c1tjb2RlXSxjaGFyYWN0ZXI9IXNwZWNpYWwmJlN0cmluZy5mcm9tQ2hhckNvZGUoY29kZSkudG9Mb3dlckNhc2UoKSxzaGlmdD1ldmVudC5zaGlmdEtleSxjdHJsPWV2ZW50LmN0cmxLZXksYWx0PWV2ZW50LmFsdEtleXx8ZXZlbnQub3JpZ2luYWxFdmVudC5hbHRLZXksbWFwUG9pbnQ9bnVsbDtmb3IodmFyIHg9MDt4PGlkcy5sZW5ndGg7eCsrKXtpZihob3RrZXlzLnRyaWdnZXJzTWFwW2lkc1t4XV1bdHlwZV0pe21hcFBvaW50PWhvdGtleXMudHJpZ2dlcnNNYXBbaWRzW3hdXVt0eXBlXTticmVhazt9fQppZihtYXBQb2ludCl7dmFyIHRyaWdnZXI7aWYoIXNoaWZ0JiYhY3RybCYmIWFsdCl7dHJpZ2dlcj1tYXBQb2ludFtzcGVjaWFsXXx8KGNoYXJhY3RlciYmbWFwUG9pbnRbY2hhcmFjdGVyXSk7fQplbHNle3ZhciBtb2RpZj0nJztpZihhbHQpbW9kaWYrPSdhbHQrJztpZihjdHJsKW1vZGlmKz0nY3RybCsnO2lmKHNoaWZ0KW1vZGlmKz0nc2hpZnQrJzt0cmlnZ2VyPW1hcFBvaW50W21vZGlmK3NwZWNpYWxdO2lmKCF0cmlnZ2VyKXtpZihjaGFyYWN0ZXIpe3RyaWdnZXI9bWFwUG9pbnRbbW9kaWYrY2hhcmFjdGVyXXx8bWFwUG9pbnRbbW9kaWYraG90a2V5cy5zaGlmdE51bXNbY2hhcmFjdGVyXV18fChtb2RpZj09PSdzaGlmdCsnJiZtYXBQb2ludFtob3RrZXlzLnNoaWZ0TnVtc1tjaGFyYWN0ZXJdXSk7fX19CmlmKHRyaWdnZXIpe3ZhciByZXN1bHQ9ZmFsc2U7Zm9yKHZhciB4PTA7eDx0cmlnZ2VyLmxlbmd0aDt4Kyspe2lmKHRyaWdnZXJbeF0uZGlzYWJsZUluSW5wdXQpe3ZhciBlbGVtPWpRdWVyeShldmVudC50YXJnZXQpO2lmKGpUYXJnZXQuaXMoImlucHV0Iil8fGpUYXJnZXQuaXMoInRleHRhcmVhIil8fGpUYXJnZXQuaXMoInNlbGVjdCIpfHxlbGVtLmlzKCJpbnB1dCIpfHxlbGVtLmlzKCJ0ZXh0YXJlYSIpfHxlbGVtLmlzKCJzZWxlY3QiKSl7cmV0dXJuIHRydWU7fX0KcmVzdWx0PXJlc3VsdHx8dHJpZ2dlclt4XS5jYi5hcHBseSh0aGlzLFtldmVudF0pO30KcmV0dXJuIHJlc3VsdDt9fX19O3dpbmRvdy5ob3RrZXlzPWhvdGtleXM7cmV0dXJuIGpRdWVyeTt9KShqUXVlcnkpOw==]]></data>
	</file>
	<file>
	  <filename>/includes/jquery.metadata.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[LyoKICogTWV0YWRhdGEgLSBqUXVlcnkgcGx1Z2luIGZvciBwYXJzaW5nIG1ldGFkYXRhIGZyb20gZWxlbWVudHMKICoKICogQ29weXJpZ2h0IChjKSAyMDA2IEpvaG4gUmVzaWcsIFllaHVkYSBLYXR6LCBK77+9w7ZybiBaYWVmZmVyZXIsIFBhdWwgTWNMYW5haGFuCiAqCiAqIER1YWwgbGljZW5zZWQgdW5kZXIgdGhlIE1JVCBhbmQgR1BMIGxpY2Vuc2VzOgogKiAgIGh0dHA6Ly93d3cub3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvbWl0LWxpY2Vuc2UucGhwCiAqICAgaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2dwbC5odG1sCiAqCiAqIFJldmlzaW9uOiAkSWQkCiAqCiAqLwoKLyoqCiAqIFNldHMgdGhlIHR5cGUgb2YgbWV0YWRhdGEgdG8gdXNlLiBNZXRhZGF0YSBpcyBlbmNvZGVkIGluIEpTT04sIGFuZCBlYWNoIHByb3BlcnR5CiAqIGluIHRoZSBKU09OIHdpbGwgYmVjb21lIGEgcHJvcGVydHkgb2YgdGhlIGVsZW1lbnQgaXRzZWxmLgogKgogKiBUaGVyZSBhcmUgdGhyZWUgc3VwcG9ydGVkIHR5cGVzIG9mIG1ldGFkYXRhIHN0b3JhZ2U6CiAqCiAqICAgYXR0cjogIEluc2lkZSBhbiBhdHRyaWJ1dGUuIFRoZSBuYW1lIHBhcmFtZXRlciBpbmRpY2F0ZXMgKndoaWNoKiBhdHRyaWJ1dGUuCiAqICAgICAgICAgIAogKiAgIGNsYXNzOiBJbnNpZGUgdGhlIGNsYXNzIGF0dHJpYnV0ZSwgd3JhcHBlZCBpbiBjdXJseSBicmFjZXM6IHsgfQogKiAgIAogKiAgIGVsZW06ICBJbnNpZGUgYSBjaGlsZCBlbGVtZW50IChlLmcuIGEgc2NyaXB0IHRhZykuIFRoZQogKiAgICAgICAgICBuYW1lIHBhcmFtZXRlciBpbmRpY2F0ZXMgKndoaWNoKiBlbGVtZW50LgogKiAgICAgICAgICAKICogVGhlIG1ldGFkYXRhIGZvciBhbiBlbGVtZW50IGlzIGxvYWRlZCB0aGUgZmlyc3QgdGltZSB0aGUgZWxlbWVudCBpcyBhY2Nlc3NlZCB2aWEgalF1ZXJ5LgogKgogKiBBcyBhIHJlc3VsdCwgeW91IGNhbiBkZWZpbmUgdGhlIG1ldGFkYXRhIHR5cGUsIHVzZSAkKGV4cHIpIHRvIGxvYWQgdGhlIG1ldGFkYXRhIGludG8gdGhlIGVsZW1lbnRzCiAqIG1hdGNoZWQgYnkgZXhwciwgdGhlbiByZWRlZmluZSB0aGUgbWV0YWRhdGEgdHlwZSBhbmQgcnVuIGFub3RoZXIgJChleHByKSBmb3Igb3RoZXIgZWxlbWVudHMuCiAqIAogKiBAbmFtZSAkLm1ldGFkYXRhLnNldFR5cGUKICoKICogQGV4YW1wbGUgPHAgaWQ9Im9uZSIgY2xhc3M9InNvbWVfY2xhc3Mge2l0ZW1faWQ6IDEsIGl0ZW1fbGFiZWw6ICdMYWJlbCd9Ij5UaGlzIGlzIGEgcDwvcD4KICogQGJlZm9yZSAkLm1ldGFkYXRhLnNldFR5cGUoImNsYXNzIikKICogQGFmdGVyICQoIiNvbmUiKS5tZXRhZGF0YSgpLml0ZW1faWQgPT0gMTsgJCgiI29uZSIpLm1ldGFkYXRhKCkuaXRlbV9sYWJlbCA9PSAiTGFiZWwiCiAqIEBkZXNjIFJlYWRzIG1ldGFkYXRhIGZyb20gdGhlIGNsYXNzIGF0dHJpYnV0ZQogKiAKICogQGV4YW1wbGUgPHAgaWQ9Im9uZSIgY2xhc3M9InNvbWVfY2xhc3MiIGRhdGE9IntpdGVtX2lkOiAxLCBpdGVtX2xhYmVsOiAnTGFiZWwnfSI+VGhpcyBpcyBhIHA8L3A+CiAqIEBiZWZvcmUgJC5tZXRhZGF0YS5zZXRUeXBlKCJhdHRyIiwgImRhdGEiKQogKiBAYWZ0ZXIgJCgiI29uZSIpLm1ldGFkYXRhKCkuaXRlbV9pZCA9PSAxOyAkKCIjb25lIikubWV0YWRhdGEoKS5pdGVtX2xhYmVsID09ICJMYWJlbCIKICogQGRlc2MgUmVhZHMgbWV0YWRhdGEgZnJvbSBhICJkYXRhIiBhdHRyaWJ1dGUKICogCiAqIEBleGFtcGxlIDxwIGlkPSJvbmUiIGNsYXNzPSJzb21lX2NsYXNzIj48c2NyaXB0PntpdGVtX2lkOiAxLCBpdGVtX2xhYmVsOiAnTGFiZWwnfTwvc2NyaXB0PlRoaXMgaXMgYSBwPC9wPgogKiBAYmVmb3JlICQubWV0YWRhdGEuc2V0VHlwZSgiZWxlbSIsICJzY3JpcHQiKQogKiBAYWZ0ZXIgJCgiI29uZSIpLm1ldGFkYXRhKCkuaXRlbV9pZCA9PSAxOyAkKCIjb25lIikubWV0YWRhdGEoKS5pdGVtX2xhYmVsID09ICJMYWJlbCIKICogQGRlc2MgUmVhZHMgbWV0YWRhdGEgZnJvbSBhIG5lc3RlZCBzY3JpcHQgZWxlbWVudAogKiAKICogQHBhcmFtIFN0cmluZyB0eXBlIFRoZSBlbmNvZGluZyB0eXBlCiAqIEBwYXJhbSBTdHJpbmcgbmFtZSBUaGUgbmFtZSBvZiB0aGUgYXR0cmlidXRlIHRvIGJlIHVzZWQgdG8gZ2V0IG1ldGFkYXRhIChvcHRpb25hbCkKICogQGNhdCBQbHVnaW5zL01ldGFkYXRhCiAqIEBkZXNjciBTZXRzIHRoZSB0eXBlIG9mIGVuY29kaW5nIHRvIGJlIHVzZWQgd2hlbiBsb2FkaW5nIG1ldGFkYXRhIGZvciB0aGUgZmlyc3QgdGltZQogKiBAdHlwZSB1bmRlZmluZWQKICogQHNlZSBtZXRhZGF0YSgpCiAqLwoKKGZ1bmN0aW9uKCQpIHsKCiQuZXh0ZW5kKHsKCW1ldGFkYXRhIDogewoJCWRlZmF1bHRzIDogewoJCQl0eXBlOiAnY2xhc3MnLAoJCQluYW1lOiAnbWV0YWRhdGEnLAoJCQljcmU6IC8oey4qfSkvLAoJCQlzaW5nbGU6ICdtZXRhZGF0YScKCQl9LAoJCXNldFR5cGU6IGZ1bmN0aW9uKCB0eXBlLCBuYW1lICl7CgkJCXRoaXMuZGVmYXVsdHMudHlwZSA9IHR5cGU7CgkJCXRoaXMuZGVmYXVsdHMubmFtZSA9IG5hbWU7CgkJfSwKCQlnZXQ6IGZ1bmN0aW9uKCBlbGVtLCBvcHRzICl7CgkJCXZhciBzZXR0aW5ncyA9ICQuZXh0ZW5kKHt9LHRoaXMuZGVmYXVsdHMsb3B0cyk7CgkJCS8vIGNoZWNrIGZvciBlbXB0eSBzdHJpbmcgaW4gc2luZ2xlIHByb3BlcnR5CgkJCWlmICggIXNldHRpbmdzLnNpbmdsZS5sZW5ndGggKSBzZXR0aW5ncy5zaW5nbGUgPSAnbWV0YWRhdGEnOwoJCQkKCQkJdmFyIGRhdGEgPSAkLmRhdGEoZWxlbSwgc2V0dGluZ3Muc2luZ2xlKTsKCQkJLy8gcmV0dXJuZWQgY2FjaGVkIGRhdGEgaWYgaXQgYWxyZWFkeSBleGlzdHMKCQkJaWYgKCBkYXRhICkgcmV0dXJuIGRhdGE7CgkJCQoJCQlkYXRhID0gInt9IjsKCQkJCgkJCWlmICggc2V0dGluZ3MudHlwZSA9PSAiY2xhc3MiICkgewoJCQkJdmFyIG0gPSBzZXR0aW5ncy5jcmUuZXhlYyggZWxlbS5jbGFzc05hbWUgKTsKCQkJCWlmICggbSApCgkJCQkJZGF0YSA9IG1bMV07CgkJCX0gZWxzZSBpZiAoIHNldHRpbmdzLnR5cGUgPT0gImVsZW0iICkgewoJCQkJaWYoICFlbGVtLmdldEVsZW1lbnRzQnlUYWdOYW1lICkKCQkJCQlyZXR1cm4gdW5kZWZpbmVkOwoJCQkJdmFyIGUgPSBlbGVtLmdldEVsZW1lbnRzQnlUYWdOYW1lKHNldHRpbmdzLm5hbWUpOwoJCQkJaWYgKCBlLmxlbmd0aCApCgkJCQkJZGF0YSA9ICQudHJpbShlWzBdLmlubmVySFRNTCk7CgkJCX0gZWxzZSBpZiAoIGVsZW0uZ2V0QXR0cmlidXRlICE9IHVuZGVmaW5lZCApIHsKCQkJCXZhciBhdHRyID0gZWxlbS5nZXRBdHRyaWJ1dGUoIHNldHRpbmdzLm5hbWUgKTsKCQkJCWlmICggYXR0ciApCgkJCQkJZGF0YSA9IGF0dHI7CgkJCX0KCQkJCgkJCWlmICggZGF0YS5pbmRleE9mKCAneycgKSA8MCApCgkJCWRhdGEgPSAieyIgKyBkYXRhICsgIn0iOwoJCQkKCQkJZGF0YSA9IGV2YWwoIigiICsgZGF0YSArICIpIik7CgkJCQoJCQkkLmRhdGEoIGVsZW0sIHNldHRpbmdzLnNpbmdsZSwgZGF0YSApOwoJCQlyZXR1cm4gZGF0YTsKCQl9Cgl9Cn0pOwoKLyoqCiAqIFJldHVybnMgdGhlIG1ldGFkYXRhIG9iamVjdCBmb3IgdGhlIGZpcnN0IG1lbWJlciBvZiB0aGUgalF1ZXJ5IG9iamVjdC4KICoKICogQG5hbWUgbWV0YWRhdGEKICogQGRlc2NyIFJldHVybnMgZWxlbWVudCdzIG1ldGFkYXRhIG9iamVjdAogKiBAcGFyYW0gT2JqZWN0IG9wdHMgQW4gb2JqZWN0IGNvbnRpYW5pbmcgc2V0dGluZ3MgdG8gb3ZlcnJpZGUgdGhlIGRlZmF1bHRzCiAqIEB0eXBlIGpRdWVyeQogKiBAY2F0IFBsdWdpbnMvTWV0YWRhdGEKICovCiQuZm4ubWV0YWRhdGEgPSBmdW5jdGlvbiggb3B0cyApewoJcmV0dXJuICQubWV0YWRhdGEuZ2V0KCB0aGlzWzBdLCBvcHRzICk7Cn07Cgp9KShqUXVlcnkpOw==]]></data>
	</file>
	<file>
	  <filename>/includes/jquery.scrollTo-min.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[LyoqDQogKiBqUXVlcnkuU2Nyb2xsVG8gLSBFYXN5IGVsZW1lbnQgc2Nyb2xsaW5nIHVzaW5nIGpRdWVyeS4NCiAqIENvcHlyaWdodCAoYykgMjAwNy0yMDA5IEFyaWVsIEZsZXNsZXIgLSBhZmxlc2xlcihhdClnbWFpbChkb3QpY29tIHwgaHR0cDovL2ZsZXNsZXIuYmxvZ3Nwb3QuY29tDQogKiBEdWFsIGxpY2Vuc2VkIHVuZGVyIE1JVCBhbmQgR1BMLg0KICogRGF0ZTogNS8yNS8yMDA5DQogKiBAYXV0aG9yIEFyaWVsIEZsZXNsZXINCiAqIEB2ZXJzaW9uIDEuNC4yDQogKg0KICogaHR0cDovL2ZsZXNsZXIuYmxvZ3Nwb3QuY29tLzIwMDcvMTAvanF1ZXJ5c2Nyb2xsdG8uaHRtbA0KICovDQo7KGZ1bmN0aW9uKGQpe3ZhciBrPWQuc2Nyb2xsVG89ZnVuY3Rpb24oYSxpLGUpe2Qod2luZG93KS5zY3JvbGxUbyhhLGksZSl9O2suZGVmYXVsdHM9e2F4aXM6J3h5JyxkdXJhdGlvbjpwYXJzZUZsb2F0KGQuZm4uanF1ZXJ5KT49MS4zPzA6MX07ay53aW5kb3c9ZnVuY3Rpb24oYSl7cmV0dXJuIGQod2luZG93KS5fc2Nyb2xsYWJsZSgpfTtkLmZuLl9zY3JvbGxhYmxlPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubWFwKGZ1bmN0aW9uKCl7dmFyIGE9dGhpcyxpPSFhLm5vZGVOYW1lfHxkLmluQXJyYXkoYS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpLFsnaWZyYW1lJywnI2RvY3VtZW50JywnaHRtbCcsJ2JvZHknXSkhPS0xO2lmKCFpKXJldHVybiBhO3ZhciBlPShhLmNvbnRlbnRXaW5kb3d8fGEpLmRvY3VtZW50fHxhLm93bmVyRG9jdW1lbnR8fGE7cmV0dXJuIGQuYnJvd3Nlci5zYWZhcml8fGUuY29tcGF0TW9kZT09J0JhY2tDb21wYXQnP2UuYm9keTplLmRvY3VtZW50RWxlbWVudH0pfTtkLmZuLnNjcm9sbFRvPWZ1bmN0aW9uKG4saixiKXtpZih0eXBlb2Ygaj09J29iamVjdCcpe2I9ajtqPTB9aWYodHlwZW9mIGI9PSdmdW5jdGlvbicpYj17b25BZnRlcjpifTtpZihuPT0nbWF4JyluPTllOTtiPWQuZXh0ZW5kKHt9LGsuZGVmYXVsdHMsYik7aj1qfHxiLnNwZWVkfHxiLmR1cmF0aW9uO2IucXVldWU9Yi5xdWV1ZSYmYi5heGlzLmxlbmd0aD4xO2lmKGIucXVldWUpai89MjtiLm9mZnNldD1wKGIub2Zmc2V0KTtiLm92ZXI9cChiLm92ZXIpO3JldHVybiB0aGlzLl9zY3JvbGxhYmxlKCkuZWFjaChmdW5jdGlvbigpe3ZhciBxPXRoaXMscj1kKHEpLGY9bixzLGc9e30sdT1yLmlzKCdodG1sLGJvZHknKTtzd2l0Y2godHlwZW9mIGYpe2Nhc2UnbnVtYmVyJzpjYXNlJ3N0cmluZyc6aWYoL14oWystXT0pP1xkKyhcLlxkKyk/KHB4fCUpPyQvLnRlc3QoZikpe2Y9cChmKTticmVha31mPWQoZix0aGlzKTtjYXNlJ29iamVjdCc6aWYoZi5pc3x8Zi5zdHlsZSlzPShmPWQoZikpLm9mZnNldCgpfWQuZWFjaChiLmF4aXMuc3BsaXQoJycpLGZ1bmN0aW9uKGEsaSl7dmFyIGU9aT09J3gnPydMZWZ0JzonVG9wJyxoPWUudG9Mb3dlckNhc2UoKSxjPSdzY3JvbGwnK2UsbD1xW2NdLG09ay5tYXgocSxpKTtpZihzKXtnW2NdPXNbaF0rKHU/MDpsLXIub2Zmc2V0KClbaF0pO2lmKGIubWFyZ2luKXtnW2NdLT1wYXJzZUludChmLmNzcygnbWFyZ2luJytlKSl8fDA7Z1tjXS09cGFyc2VJbnQoZi5jc3MoJ2JvcmRlcicrZSsnV2lkdGgnKSl8fDB9Z1tjXSs9Yi5vZmZzZXRbaF18fDA7aWYoYi5vdmVyW2hdKWdbY10rPWZbaT09J3gnPyd3aWR0aCc6J2hlaWdodCddKCkqYi5vdmVyW2hdfWVsc2V7dmFyIG89ZltoXTtnW2NdPW8uc2xpY2UmJm8uc2xpY2UoLTEpPT0nJSc/cGFyc2VGbG9hdChvKS8xMDAqbTpvfWlmKC9eXGQrJC8udGVzdChnW2NdKSlnW2NdPWdbY108PTA/MDpNYXRoLm1pbihnW2NdLG0pO2lmKCFhJiZiLnF1ZXVlKXtpZihsIT1nW2NdKXQoYi5vbkFmdGVyRmlyc3QpO2RlbGV0ZSBnW2NdfX0pO3QoYi5vbkFmdGVyKTtmdW5jdGlvbiB0KGEpe3IuYW5pbWF0ZShnLGosYi5lYXNpbmcsYSYmZnVuY3Rpb24oKXthLmNhbGwodGhpcyxuLGIpfSl9fSkuZW5kKCl9O2subWF4PWZ1bmN0aW9uKGEsaSl7dmFyIGU9aT09J3gnPydXaWR0aCc6J0hlaWdodCcsaD0nc2Nyb2xsJytlO2lmKCFkKGEpLmlzKCdodG1sLGJvZHknKSlyZXR1cm4gYVtoXS1kKGEpW2UudG9Mb3dlckNhc2UoKV0oKTt2YXIgYz0nY2xpZW50JytlLGw9YS5vd25lckRvY3VtZW50LmRvY3VtZW50RWxlbWVudCxtPWEub3duZXJEb2N1bWVudC5ib2R5O3JldHVybiBNYXRoLm1heChsW2hdLG1baF0pLU1hdGgubWluKGxbY10sbVtjXSl9O2Z1bmN0aW9uIHAoYSl7cmV0dXJuIHR5cGVvZiBhPT0nb2JqZWN0Jz9hOnt0b3A6YSxsZWZ0OmF9fX0pKGpRdWVyeSk7]]></data>
	</file>
	<file>
	  <filename>/includes/jquery.tablesorter.min.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[CihmdW5jdGlvbigkKXskLmV4dGVuZCh7dGFibGVzb3J0ZXI6bmV3IGZ1bmN0aW9uKCl7dmFyIHBhcnNlcnM9W10sd2lkZ2V0cz1bXTt0aGlzLmRlZmF1bHRzPXtjc3NIZWFkZXI6ImhlYWRlciIsY3NzQXNjOiJoZWFkZXJTb3J0VXAiLGNzc0Rlc2M6ImhlYWRlclNvcnREb3duIixzb3J0SW5pdGlhbE9yZGVyOiJhc2MiLHNvcnRNdWx0aVNvcnRLZXk6InNoaWZ0S2V5Iixzb3J0Rm9yY2U6bnVsbCxzb3J0QXBwZW5kOm51bGwsdGV4dEV4dHJhY3Rpb246InNpbXBsZSIscGFyc2Vyczp7fSx3aWRnZXRzOltdLHdpZGdldFplYnJhOntjc3M6WyJldmVuIiwib2RkIl19LGhlYWRlcnM6e30sd2lkdGhGaXhlZDpmYWxzZSxjYW5jZWxTZWxlY3Rpb246dHJ1ZSxzb3J0TGlzdDpbXSxoZWFkZXJMaXN0OltdLGRhdGVGb3JtYXQ6InVzIixkZWNpbWFsOicuJyxkZWJ1ZzpmYWxzZX07ZnVuY3Rpb24gYmVuY2htYXJrKHMsZCl7bG9nKHMrIiwiKyhuZXcgRGF0ZSgpLmdldFRpbWUoKS1kLmdldFRpbWUoKSkrIm1zIik7fXRoaXMuYmVuY2htYXJrPWJlbmNobWFyaztmdW5jdGlvbiBsb2cocyl7aWYodHlwZW9mIGNvbnNvbGUhPSJ1bmRlZmluZWQiJiZ0eXBlb2YgY29uc29sZS5kZWJ1ZyE9InVuZGVmaW5lZCIpe2NvbnNvbGUubG9nKHMpO31lbHNle2FsZXJ0KHMpO319ZnVuY3Rpb24gYnVpbGRQYXJzZXJDYWNoZSh0YWJsZSwkaGVhZGVycyl7aWYodGFibGUuY29uZmlnLmRlYnVnKXt2YXIgcGFyc2Vyc0RlYnVnPSIiO312YXIgcm93cz10YWJsZS50Qm9kaWVzWzBdLnJvd3M7aWYodGFibGUudEJvZGllc1swXS5yb3dzWzBdKXt2YXIgbGlzdD1bXSxjZWxscz1yb3dzWzBdLmNlbGxzLGw9Y2VsbHMubGVuZ3RoO2Zvcih2YXIgaT0wO2k8bDtpKyspe3ZhciBwPWZhbHNlO2lmKCQubWV0YWRhdGEmJigkKCRoZWFkZXJzW2ldKS5tZXRhZGF0YSgpJiYkKCRoZWFkZXJzW2ldKS5tZXRhZGF0YSgpLnNvcnRlcikpe3A9Z2V0UGFyc2VyQnlJZCgkKCRoZWFkZXJzW2ldKS5tZXRhZGF0YSgpLnNvcnRlcik7fWVsc2UgaWYoKHRhYmxlLmNvbmZpZy5oZWFkZXJzW2ldJiZ0YWJsZS5jb25maWcuaGVhZGVyc1tpXS5zb3J0ZXIpKXtwPWdldFBhcnNlckJ5SWQodGFibGUuY29uZmlnLmhlYWRlcnNbaV0uc29ydGVyKTt9aWYoIXApe3A9ZGV0ZWN0UGFyc2VyRm9yQ29sdW1uKHRhYmxlLGNlbGxzW2ldKTt9aWYodGFibGUuY29uZmlnLmRlYnVnKXtwYXJzZXJzRGVidWcrPSJjb2x1bW46IitpKyIgcGFyc2VyOiIrcC5pZCsiXG4iO31saXN0LnB1c2gocCk7fX1pZih0YWJsZS5jb25maWcuZGVidWcpe2xvZyhwYXJzZXJzRGVidWcpO31yZXR1cm4gbGlzdDt9O2Z1bmN0aW9uIGRldGVjdFBhcnNlckZvckNvbHVtbih0YWJsZSxub2RlKXt2YXIgbD1wYXJzZXJzLmxlbmd0aDtmb3IodmFyIGk9MTtpPGw7aSsrKXtpZihwYXJzZXJzW2ldLmlzKCQudHJpbShnZXRFbGVtZW50VGV4dCh0YWJsZS5jb25maWcsbm9kZSkpLHRhYmxlLG5vZGUpKXtyZXR1cm4gcGFyc2Vyc1tpXTt9fXJldHVybiBwYXJzZXJzWzBdO31mdW5jdGlvbiBnZXRQYXJzZXJCeUlkKG5hbWUpe3ZhciBsPXBhcnNlcnMubGVuZ3RoO2Zvcih2YXIgaT0wO2k8bDtpKyspe2lmKHBhcnNlcnNbaV0uaWQudG9Mb3dlckNhc2UoKT09bmFtZS50b0xvd2VyQ2FzZSgpKXtyZXR1cm4gcGFyc2Vyc1tpXTt9fXJldHVybiBmYWxzZTt9ZnVuY3Rpb24gYnVpbGRDYWNoZSh0YWJsZSl7aWYodGFibGUuY29uZmlnLmRlYnVnKXt2YXIgY2FjaGVUaW1lPW5ldyBEYXRlKCk7fXZhciB0b3RhbFJvd3M9KHRhYmxlLnRCb2RpZXNbMF0mJnRhYmxlLnRCb2RpZXNbMF0ucm93cy5sZW5ndGgpfHwwLHRvdGFsQ2VsbHM9KHRhYmxlLnRCb2RpZXNbMF0ucm93c1swXSYmdGFibGUudEJvZGllc1swXS5yb3dzWzBdLmNlbGxzLmxlbmd0aCl8fDAscGFyc2Vycz10YWJsZS5jb25maWcucGFyc2VycyxjYWNoZT17cm93OltdLG5vcm1hbGl6ZWQ6W119O2Zvcih2YXIgaT0wO2k8dG90YWxSb3dzOysraSl7dmFyIGM9dGFibGUudEJvZGllc1swXS5yb3dzW2ldLGNvbHM9W107Y2FjaGUucm93LnB1c2goJChjKSk7Zm9yKHZhciBqPTA7ajx0b3RhbENlbGxzOysrail7Y29scy5wdXNoKHBhcnNlcnNbal0uZm9ybWF0KGdldEVsZW1lbnRUZXh0KHRhYmxlLmNvbmZpZyxjLmNlbGxzW2pdKSx0YWJsZSxjLmNlbGxzW2pdKSk7fWNvbHMucHVzaChpKTtjYWNoZS5ub3JtYWxpemVkLnB1c2goY29scyk7Y29scz1udWxsO307aWYodGFibGUuY29uZmlnLmRlYnVnKXtiZW5jaG1hcmsoIkJ1aWxkaW5nIGNhY2hlIGZvciAiK3RvdGFsUm93cysiIHJvd3M6IixjYWNoZVRpbWUpO31yZXR1cm4gY2FjaGU7fTtmdW5jdGlvbiBnZXRFbGVtZW50VGV4dChjb25maWcsbm9kZSl7aWYoIW5vZGUpcmV0dXJuIiI7dmFyIHQ9IiI7aWYoY29uZmlnLnRleHRFeHRyYWN0aW9uPT0ic2ltcGxlIil7aWYobm9kZS5jaGlsZE5vZGVzWzBdJiZub2RlLmNoaWxkTm9kZXNbMF0uaGFzQ2hpbGROb2RlcygpKXt0PW5vZGUuY2hpbGROb2Rlc1swXS5pbm5lckhUTUw7fWVsc2V7dD1ub2RlLmlubmVySFRNTDt9fWVsc2V7aWYodHlwZW9mKGNvbmZpZy50ZXh0RXh0cmFjdGlvbik9PSJmdW5jdGlvbiIpe3Q9Y29uZmlnLnRleHRFeHRyYWN0aW9uKG5vZGUpO31lbHNle3Q9JChub2RlKS50ZXh0KCk7fX1yZXR1cm4gdDt9ZnVuY3Rpb24gYXBwZW5kVG9UYWJsZSh0YWJsZSxjYWNoZSl7aWYodGFibGUuY29uZmlnLmRlYnVnKXt2YXIgYXBwZW5kVGltZT1uZXcgRGF0ZSgpfXZhciBjPWNhY2hlLHI9Yy5yb3csbj1jLm5vcm1hbGl6ZWQsdG90YWxSb3dzPW4ubGVuZ3RoLGNoZWNrQ2VsbD0oblswXS5sZW5ndGgtMSksdGFibGVCb2R5PSQodGFibGUudEJvZGllc1swXSkscm93cz1bXTtmb3IodmFyIGk9MDtpPHRvdGFsUm93cztpKyspe3Jvd3MucHVzaChyW25baV1bY2hlY2tDZWxsXV0pO2lmKCF0YWJsZS5jb25maWcuYXBwZW5kZXIpe3ZhciBvPXJbbltpXVtjaGVja0NlbGxdXTt2YXIgbD1vLmxlbmd0aDtmb3IodmFyIGo9MDtqPGw7aisrKXt0YWJsZUJvZHlbMF0uYXBwZW5kQ2hpbGQob1tqXSk7fX19aWYodGFibGUuY29uZmlnLmFwcGVuZGVyKXt0YWJsZS5jb25maWcuYXBwZW5kZXIodGFibGUscm93cyk7fXJvd3M9bnVsbDtpZih0YWJsZS5jb25maWcuZGVidWcpe2JlbmNobWFyaygiUmVidWlsdCB0YWJsZToiLGFwcGVuZFRpbWUpO31hcHBseVdpZGdldCh0YWJsZSk7c2V0VGltZW91dChmdW5jdGlvbigpeyQodGFibGUpLnRyaWdnZXIoInNvcnRFbmQiKTt9LDApO307ZnVuY3Rpb24gYnVpbGRIZWFkZXJzKHRhYmxlKXtpZih0YWJsZS5jb25maWcuZGVidWcpe3ZhciB0aW1lPW5ldyBEYXRlKCk7fXZhciBtZXRhPSgkLm1ldGFkYXRhKT90cnVlOmZhbHNlLHRhYmxlSGVhZGVyc1Jvd3M9W107Zm9yKHZhciBpPTA7aTx0YWJsZS50SGVhZC5yb3dzLmxlbmd0aDtpKyspe3RhYmxlSGVhZGVyc1Jvd3NbaV09MDt9OyR0YWJsZUhlYWRlcnM9JCgidGhlYWQgdGgiLHRhYmxlKTskdGFibGVIZWFkZXJzLmVhY2goZnVuY3Rpb24oaW5kZXgpe3RoaXMuY291bnQ9MDt0aGlzLmNvbHVtbj1pbmRleDt0aGlzLm9yZGVyPWZvcm1hdFNvcnRpbmdPcmRlcih0YWJsZS5jb25maWcuc29ydEluaXRpYWxPcmRlcik7aWYoY2hlY2tIZWFkZXJNZXRhZGF0YSh0aGlzKXx8Y2hlY2tIZWFkZXJPcHRpb25zKHRhYmxlLGluZGV4KSl0aGlzLnNvcnREaXNhYmxlZD10cnVlO2lmKCF0aGlzLnNvcnREaXNhYmxlZCl7JCh0aGlzKS5hZGRDbGFzcyh0YWJsZS5jb25maWcuY3NzSGVhZGVyKTt9dGFibGUuY29uZmlnLmhlYWRlckxpc3RbaW5kZXhdPXRoaXM7fSk7aWYodGFibGUuY29uZmlnLmRlYnVnKXtiZW5jaG1hcmsoIkJ1aWx0IGhlYWRlcnM6Iix0aW1lKTtsb2coJHRhYmxlSGVhZGVycyk7fXJldHVybiAkdGFibGVIZWFkZXJzO307ZnVuY3Rpb24gY2hlY2tDZWxsQ29sU3Bhbih0YWJsZSxyb3dzLHJvdyl7dmFyIGFycj1bXSxyPXRhYmxlLnRIZWFkLnJvd3MsYz1yW3Jvd10uY2VsbHM7Zm9yKHZhciBpPTA7aTxjLmxlbmd0aDtpKyspe3ZhciBjZWxsPWNbaV07aWYoY2VsbC5jb2xTcGFuPjEpe2Fycj1hcnIuY29uY2F0KGNoZWNrQ2VsbENvbFNwYW4odGFibGUsaGVhZGVyQXJyLHJvdysrKSk7fWVsc2V7aWYodGFibGUudEhlYWQubGVuZ3RoPT0xfHwoY2VsbC5yb3dTcGFuPjF8fCFyW3JvdysxXSkpe2Fyci5wdXNoKGNlbGwpO319fXJldHVybiBhcnI7fTtmdW5jdGlvbiBjaGVja0hlYWRlck1ldGFkYXRhKGNlbGwpe2lmKCgkLm1ldGFkYXRhKSYmKCQoY2VsbCkubWV0YWRhdGEoKS5zb3J0ZXI9PT1mYWxzZSkpe3JldHVybiB0cnVlO307cmV0dXJuIGZhbHNlO31mdW5jdGlvbiBjaGVja0hlYWRlck9wdGlvbnModGFibGUsaSl7aWYoKHRhYmxlLmNvbmZpZy5oZWFkZXJzW2ldKSYmKHRhYmxlLmNvbmZpZy5oZWFkZXJzW2ldLnNvcnRlcj09PWZhbHNlKSl7cmV0dXJuIHRydWU7fTtyZXR1cm4gZmFsc2U7fWZ1bmN0aW9uIGFwcGx5V2lkZ2V0KHRhYmxlKXt2YXIgYz10YWJsZS5jb25maWcud2lkZ2V0czt2YXIgbD1jLmxlbmd0aDtmb3IodmFyIGk9MDtpPGw7aSsrKXtnZXRXaWRnZXRCeUlkKGNbaV0pLmZvcm1hdCh0YWJsZSk7fX1mdW5jdGlvbiBnZXRXaWRnZXRCeUlkKG5hbWUpe3ZhciBsPXdpZGdldHMubGVuZ3RoO2Zvcih2YXIgaT0wO2k8bDtpKyspe2lmKHdpZGdldHNbaV0uaWQudG9Mb3dlckNhc2UoKT09bmFtZS50b0xvd2VyQ2FzZSgpKXtyZXR1cm4gd2lkZ2V0c1tpXTt9fX07ZnVuY3Rpb24gZm9ybWF0U29ydGluZ09yZGVyKHYpe2lmKHR5cGVvZih2KSE9Ik51bWJlciIpe2k9KHYudG9Mb3dlckNhc2UoKT09ImRlc2MiKT8xOjA7fWVsc2V7aT0odj09KDB8fDEpKT92OjA7fXJldHVybiBpO31mdW5jdGlvbiBpc1ZhbHVlSW5BcnJheSh2LGEpe3ZhciBsPWEubGVuZ3RoO2Zvcih2YXIgaT0wO2k8bDtpKyspe2lmKGFbaV1bMF09PXYpe3JldHVybiB0cnVlO319cmV0dXJuIGZhbHNlO31mdW5jdGlvbiBzZXRIZWFkZXJzQ3NzKHRhYmxlLCRoZWFkZXJzLGxpc3QsY3NzKXskaGVhZGVycy5yZW1vdmVDbGFzcyhjc3NbMF0pLnJlbW92ZUNsYXNzKGNzc1sxXSk7dmFyIGg9W107JGhlYWRlcnMuZWFjaChmdW5jdGlvbihvZmZzZXQpe2lmKCF0aGlzLnNvcnREaXNhYmxlZCl7aFt0aGlzLmNvbHVtbl09JCh0aGlzKTt9fSk7dmFyIGw9bGlzdC5sZW5ndGg7Zm9yKHZhciBpPTA7aTxsO2krKyl7aFtsaXN0W2ldWzBdXS5hZGRDbGFzcyhjc3NbbGlzdFtpXVsxXV0pO319ZnVuY3Rpb24gZml4Q29sdW1uV2lkdGgodGFibGUsJGhlYWRlcnMpe3ZhciBjPXRhYmxlLmNvbmZpZztpZihjLndpZHRoRml4ZWQpe3ZhciBjb2xncm91cD0kKCc8Y29sZ3JvdXA+Jyk7JCgidHI6Zmlyc3QgdGQiLHRhYmxlLnRCb2RpZXNbMF0pLmVhY2goZnVuY3Rpb24oKXtjb2xncm91cC5hcHBlbmQoJCgnPGNvbD4nKS5jc3MoJ3dpZHRoJywkKHRoaXMpLndpZHRoKCkpKTt9KTskKHRhYmxlKS5wcmVwZW5kKGNvbGdyb3VwKTt9O31mdW5jdGlvbiB1cGRhdGVIZWFkZXJTb3J0Q291bnQodGFibGUsc29ydExpc3Qpe3ZhciBjPXRhYmxlLmNvbmZpZyxsPXNvcnRMaXN0Lmxlbmd0aDtmb3IodmFyIGk9MDtpPGw7aSsrKXt2YXIgcz1zb3J0TGlzdFtpXSxvPWMuaGVhZGVyTGlzdFtzWzBdXTtvLmNvdW50PXNbMV07by5jb3VudCsrO319ZnVuY3Rpb24gbXVsdGlzb3J0KHRhYmxlLHNvcnRMaXN0LGNhY2hlKXtpZih0YWJsZS5jb25maWcuZGVidWcpe3ZhciBzb3J0VGltZT1uZXcgRGF0ZSgpO312YXIgZHluYW1pY0V4cD0idmFyIHNvcnRXcmFwcGVyID0gZnVuY3Rpb24oYSxiKSB7IixsPXNvcnRMaXN0Lmxlbmd0aDtmb3IodmFyIGk9MDtpPGw7aSsrKXt2YXIgYz1zb3J0TGlzdFtpXVswXTt2YXIgb3JkZXI9c29ydExpc3RbaV1bMV07dmFyIHM9KGdldENhY2hlZFNvcnRUeXBlKHRhYmxlLmNvbmZpZy5wYXJzZXJzLGMpPT0idGV4dCIpPygob3JkZXI9PTApPyJzb3J0VGV4dCI6InNvcnRUZXh0RGVzYyIpOigob3JkZXI9PTApPyJzb3J0TnVtZXJpYyI6InNvcnROdW1lcmljRGVzYyIpO3ZhciBlPSJlIitpO2R5bmFtaWNFeHArPSJ2YXIgIitlKyIgPSAiK3MrIihhWyIrYysiXSxiWyIrYysiXSk7ICI7ZHluYW1pY0V4cCs9ImlmKCIrZSsiKSB7IHJldHVybiAiK2UrIjsgfSAiO2R5bmFtaWNFeHArPSJlbHNlIHsgIjt9dmFyIG9yZ09yZGVyQ29sPWNhY2hlLm5vcm1hbGl6ZWRbMF0ubGVuZ3RoLTE7ZHluYW1pY0V4cCs9InJldHVybiBhWyIrb3JnT3JkZXJDb2wrIl0tYlsiK29yZ09yZGVyQ29sKyJdOyI7Zm9yKHZhciBpPTA7aTxsO2krKyl7ZHluYW1pY0V4cCs9In07ICI7fWR5bmFtaWNFeHArPSJyZXR1cm4gMDsgIjtkeW5hbWljRXhwKz0ifTsgIjtldmFsKGR5bmFtaWNFeHApO2NhY2hlLm5vcm1hbGl6ZWQuc29ydChzb3J0V3JhcHBlcik7aWYodGFibGUuY29uZmlnLmRlYnVnKXtiZW5jaG1hcmsoIlNvcnRpbmcgb24gIitzb3J0TGlzdC50b1N0cmluZygpKyIgYW5kIGRpciAiK29yZGVyKyIgdGltZToiLHNvcnRUaW1lKTt9cmV0dXJuIGNhY2hlO307ZnVuY3Rpb24gc29ydFRleHQoYSxiKXtyZXR1cm4oKGE8Yik/LTE6KChhPmIpPzE6MCkpO307ZnVuY3Rpb24gc29ydFRleHREZXNjKGEsYil7cmV0dXJuKChiPGEpPy0xOigoYj5hKT8xOjApKTt9O2Z1bmN0aW9uIHNvcnROdW1lcmljKGEsYil7cmV0dXJuIGEtYjt9O2Z1bmN0aW9uIHNvcnROdW1lcmljRGVzYyhhLGIpe3JldHVybiBiLWE7fTtmdW5jdGlvbiBnZXRDYWNoZWRTb3J0VHlwZShwYXJzZXJzLGkpe3JldHVybiBwYXJzZXJzW2ldLnR5cGU7fTt0aGlzLmNvbnN0cnVjdD1mdW5jdGlvbihzZXR0aW5ncyl7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe2lmKCF0aGlzLnRIZWFkfHwhdGhpcy50Qm9kaWVzKXJldHVybjt2YXIgJHRoaXMsJGRvY3VtZW50LCRoZWFkZXJzLGNhY2hlLGNvbmZpZyxzaGlmdERvd249MCxzb3J0T3JkZXI7dGhpcy5jb25maWc9e307Y29uZmlnPSQuZXh0ZW5kKHRoaXMuY29uZmlnLCQudGFibGVzb3J0ZXIuZGVmYXVsdHMsc2V0dGluZ3MpOyR0aGlzPSQodGhpcyk7JGhlYWRlcnM9YnVpbGRIZWFkZXJzKHRoaXMpO3RoaXMuY29uZmlnLnBhcnNlcnM9YnVpbGRQYXJzZXJDYWNoZSh0aGlzLCRoZWFkZXJzKTtjYWNoZT1idWlsZENhY2hlKHRoaXMpO3ZhciBzb3J0Q1NTPVtjb25maWcuY3NzRGVzYyxjb25maWcuY3NzQXNjXTtmaXhDb2x1bW5XaWR0aCh0aGlzKTskaGVhZGVycy5jbGljayhmdW5jdGlvbihlKXskdGhpcy50cmlnZ2VyKCJzb3J0U3RhcnQiKTt2YXIgdG90YWxSb3dzPSgkdGhpc1swXS50Qm9kaWVzWzBdJiYkdGhpc1swXS50Qm9kaWVzWzBdLnJvd3MubGVuZ3RoKXx8MDtpZighdGhpcy5zb3J0RGlzYWJsZWQmJnRvdGFsUm93cz4wKXt2YXIgJGNlbGw9JCh0aGlzKTt2YXIgaT10aGlzLmNvbHVtbjt0aGlzLm9yZGVyPXRoaXMuY291bnQrKyUyO2lmKCFlW2NvbmZpZy5zb3J0TXVsdGlTb3J0S2V5XSl7Y29uZmlnLnNvcnRMaXN0PVtdO2lmKGNvbmZpZy5zb3J0Rm9yY2UhPW51bGwpe3ZhciBhPWNvbmZpZy5zb3J0Rm9yY2U7Zm9yKHZhciBqPTA7ajxhLmxlbmd0aDtqKyspe2lmKGFbal1bMF0hPWkpe2NvbmZpZy5zb3J0TGlzdC5wdXNoKGFbal0pO319fWNvbmZpZy5zb3J0TGlzdC5wdXNoKFtpLHRoaXMub3JkZXJdKTt9ZWxzZXtpZihpc1ZhbHVlSW5BcnJheShpLGNvbmZpZy5zb3J0TGlzdCkpe2Zvcih2YXIgaj0wO2o8Y29uZmlnLnNvcnRMaXN0Lmxlbmd0aDtqKyspe3ZhciBzPWNvbmZpZy5zb3J0TGlzdFtqXSxvPWNvbmZpZy5oZWFkZXJMaXN0W3NbMF1dO2lmKHNbMF09PWkpe28uY291bnQ9c1sxXTtvLmNvdW50Kys7c1sxXT1vLmNvdW50JTI7fX19ZWxzZXtjb25maWcuc29ydExpc3QucHVzaChbaSx0aGlzLm9yZGVyXSk7fX07c2V0VGltZW91dChmdW5jdGlvbigpe3NldEhlYWRlcnNDc3MoJHRoaXNbMF0sJGhlYWRlcnMsY29uZmlnLnNvcnRMaXN0LHNvcnRDU1MpO2FwcGVuZFRvVGFibGUoJHRoaXNbMF0sbXVsdGlzb3J0KCR0aGlzWzBdLGNvbmZpZy5zb3J0TGlzdCxjYWNoZSkpO30sMSk7cmV0dXJuIGZhbHNlO319KS5tb3VzZWRvd24oZnVuY3Rpb24oKXtpZihjb25maWcuY2FuY2VsU2VsZWN0aW9uKXt0aGlzLm9uc2VsZWN0c3RhcnQ9ZnVuY3Rpb24oKXtyZXR1cm4gZmFsc2V9O3JldHVybiBmYWxzZTt9fSk7JHRoaXMuYmluZCgidXBkYXRlIixmdW5jdGlvbigpe3RoaXMuY29uZmlnLnBhcnNlcnM9YnVpbGRQYXJzZXJDYWNoZSh0aGlzLCRoZWFkZXJzKTtjYWNoZT1idWlsZENhY2hlKHRoaXMpO30pLmJpbmQoInNvcnRvbiIsZnVuY3Rpb24oZSxsaXN0KXskKHRoaXMpLnRyaWdnZXIoInNvcnRTdGFydCIpO2NvbmZpZy5zb3J0TGlzdD1saXN0O3ZhciBzb3J0TGlzdD1jb25maWcuc29ydExpc3Q7dXBkYXRlSGVhZGVyU29ydENvdW50KHRoaXMsc29ydExpc3QpO3NldEhlYWRlcnNDc3ModGhpcywkaGVhZGVycyxzb3J0TGlzdCxzb3J0Q1NTKTthcHBlbmRUb1RhYmxlKHRoaXMsbXVsdGlzb3J0KHRoaXMsc29ydExpc3QsY2FjaGUpKTt9KS5iaW5kKCJhcHBlbmRDYWNoZSIsZnVuY3Rpb24oKXthcHBlbmRUb1RhYmxlKHRoaXMsY2FjaGUpO30pLmJpbmQoImFwcGx5V2lkZ2V0SWQiLGZ1bmN0aW9uKGUsaWQpe2dldFdpZGdldEJ5SWQoaWQpLmZvcm1hdCh0aGlzKTt9KS5iaW5kKCJhcHBseVdpZGdldHMiLGZ1bmN0aW9uKCl7YXBwbHlXaWRnZXQodGhpcyk7fSk7aWYoJC5tZXRhZGF0YSYmKCQodGhpcykubWV0YWRhdGEoKSYmJCh0aGlzKS5tZXRhZGF0YSgpLnNvcnRsaXN0KSl7Y29uZmlnLnNvcnRMaXN0PSQodGhpcykubWV0YWRhdGEoKS5zb3J0bGlzdDt9aWYoY29uZmlnLnNvcnRMaXN0Lmxlbmd0aD4wKXskdGhpcy50cmlnZ2VyKCJzb3J0b24iLFtjb25maWcuc29ydExpc3RdKTt9YXBwbHlXaWRnZXQodGhpcyk7fSk7fTt0aGlzLmFkZFBhcnNlcj1mdW5jdGlvbihwYXJzZXIpe3ZhciBsPXBhcnNlcnMubGVuZ3RoLGE9dHJ1ZTtmb3IodmFyIGk9MDtpPGw7aSsrKXtpZihwYXJzZXJzW2ldLmlkLnRvTG93ZXJDYXNlKCk9PXBhcnNlci5pZC50b0xvd2VyQ2FzZSgpKXthPWZhbHNlO319aWYoYSl7cGFyc2Vycy5wdXNoKHBhcnNlcik7fTt9O3RoaXMuYWRkV2lkZ2V0PWZ1bmN0aW9uKHdpZGdldCl7d2lkZ2V0cy5wdXNoKHdpZGdldCk7fTt0aGlzLmZvcm1hdEZsb2F0PWZ1bmN0aW9uKHMpe3ZhciBpPXBhcnNlRmxvYXQocyk7cmV0dXJuKGlzTmFOKGkpKT8wOmk7fTt0aGlzLmZvcm1hdEludD1mdW5jdGlvbihzKXt2YXIgaT1wYXJzZUludChzKTtyZXR1cm4oaXNOYU4oaSkpPzA6aTt9O3RoaXMuaXNEaWdpdD1mdW5jdGlvbihzLGNvbmZpZyl7dmFyIERFQ0lNQUw9J1xcJytjb25maWcuZGVjaW1hbDt2YXIgZXhwPScvKF5bK10/MCgnK0RFQ0lNQUwrJzArKT8kKXwoXihbLStdP1sxLTldWzAtOV0qKSQpfCheKFstK10/KCgwP3xbMS05XVswLTldKiknK0RFQ0lNQUwrJygwKlsxLTldWzAtOV0qKSkpJCl8KF5bLStdP1sxLTldK1swLTldKicrREVDSU1BTCsnMCskKS8nO3JldHVybiBSZWdFeHAoZXhwKS50ZXN0KCQudHJpbShzKSk7fTt0aGlzLmNsZWFyVGFibGVCb2R5PWZ1bmN0aW9uKHRhYmxlKXtpZigkLmJyb3dzZXIubXNpZSl7ZnVuY3Rpb24gZW1wdHkoKXt3aGlsZSh0aGlzLmZpcnN0Q2hpbGQpdGhpcy5yZW1vdmVDaGlsZCh0aGlzLmZpcnN0Q2hpbGQpO31lbXB0eS5hcHBseSh0YWJsZS50Qm9kaWVzWzBdKTt9ZWxzZXt0YWJsZS50Qm9kaWVzWzBdLmlubmVySFRNTD0iIjt9fTt9fSk7JC5mbi5leHRlbmQoe3RhYmxlc29ydGVyOiQudGFibGVzb3J0ZXIuY29uc3RydWN0fSk7dmFyIHRzPSQudGFibGVzb3J0ZXI7dHMuYWRkUGFyc2VyKHtpZDoidGV4dCIsaXM6ZnVuY3Rpb24ocyl7cmV0dXJuIHRydWU7fSxmb3JtYXQ6ZnVuY3Rpb24ocyl7cmV0dXJuICQudHJpbShzLnRvTG93ZXJDYXNlKCkpO30sdHlwZToidGV4dCJ9KTt0cy5hZGRQYXJzZXIoe2lkOiJkaWdpdCIsaXM6ZnVuY3Rpb24ocyx0YWJsZSl7dmFyIGM9dGFibGUuY29uZmlnO3JldHVybiAkLnRhYmxlc29ydGVyLmlzRGlnaXQocyxjKTt9LGZvcm1hdDpmdW5jdGlvbihzKXtyZXR1cm4gJC50YWJsZXNvcnRlci5mb3JtYXRGbG9hdChzKTt9LHR5cGU6Im51bWVyaWMifSk7dHMuYWRkUGFyc2VyKHtpZDoiY3VycmVuY3kiLGlzOmZ1bmN0aW9uKHMpe3JldHVybi9eW8KjJOKCrD8uXS8udGVzdChzKTt9LGZvcm1hdDpmdW5jdGlvbihzKXtyZXR1cm4gJC50YWJsZXNvcnRlci5mb3JtYXRGbG9hdChzLnJlcGxhY2UobmV3IFJlZ0V4cCgvW14wLTkuXS9nKSwiIikpO30sdHlwZToibnVtZXJpYyJ9KTt0cy5hZGRQYXJzZXIoe2lkOiJpcEFkZHJlc3MiLGlzOmZ1bmN0aW9uKHMpe3JldHVybi9eXGR7MiwzfVtcLl1cZHsyLDN9W1wuXVxkezIsM31bXC5dXGR7MiwzfSQvLnRlc3Qocyk7fSxmb3JtYXQ6ZnVuY3Rpb24ocyl7dmFyIGE9cy5zcGxpdCgiLiIpLHI9IiIsbD1hLmxlbmd0aDtmb3IodmFyIGk9MDtpPGw7aSsrKXt2YXIgaXRlbT1hW2ldO2lmKGl0ZW0ubGVuZ3RoPT0yKXtyKz0iMCIraXRlbTt9ZWxzZXtyKz1pdGVtO319cmV0dXJuICQudGFibGVzb3J0ZXIuZm9ybWF0RmxvYXQocik7fSx0eXBlOiJudW1lcmljIn0pO3RzLmFkZFBhcnNlcih7aWQ6InVybCIsaXM6ZnVuY3Rpb24ocyl7cmV0dXJuL14oaHR0cHM/fGZ0cHxmaWxlKTpcL1wvJC8udGVzdChzKTt9LGZvcm1hdDpmdW5jdGlvbihzKXtyZXR1cm4galF1ZXJ5LnRyaW0ocy5yZXBsYWNlKG5ldyBSZWdFeHAoLyhodHRwcz98ZnRwfGZpbGUpOlwvXC8vKSwnJykpO30sdHlwZToidGV4dCJ9KTt0cy5hZGRQYXJzZXIoe2lkOiJpc29EYXRlIixpczpmdW5jdGlvbihzKXtyZXR1cm4vXlxkezR9W1wvLV1cZHsxLDJ9W1wvLV1cZHsxLDJ9JC8udGVzdChzKTt9LGZvcm1hdDpmdW5jdGlvbihzKXtyZXR1cm4gJC50YWJsZXNvcnRlci5mb3JtYXRGbG9hdCgocyE9IiIpP25ldyBEYXRlKHMucmVwbGFjZShuZXcgUmVnRXhwKC8tL2cpLCIvIikpLmdldFRpbWUoKToiMCIpO30sdHlwZToibnVtZXJpYyJ9KTt0cy5hZGRQYXJzZXIoe2lkOiJwZXJjZW50IixpczpmdW5jdGlvbihzKXtyZXR1cm4vXCUkLy50ZXN0KCQudHJpbShzKSk7fSxmb3JtYXQ6ZnVuY3Rpb24ocyl7cmV0dXJuICQudGFibGVzb3J0ZXIuZm9ybWF0RmxvYXQocy5yZXBsYWNlKG5ldyBSZWdFeHAoLyUvZyksIiIpKTt9LHR5cGU6Im51bWVyaWMifSk7dHMuYWRkUGFyc2VyKHtpZDoidXNMb25nRGF0ZSIsaXM6ZnVuY3Rpb24ocyl7cmV0dXJuIHMubWF0Y2gobmV3IFJlZ0V4cCgvXltBLVphLXpdezMsMTB9XC4/IFswLTldezEsMn0sIChbMC05XXs0fXwnP1swLTldezJ9KSAoKFswLTJdP1swLTldOlswLTVdWzAtOV0pfChbMC0xXT9bMC05XTpbMC01XVswLTldXHMoQU18UE0pKSkkLykpO30sZm9ybWF0OmZ1bmN0aW9uKHMpe3JldHVybiAkLnRhYmxlc29ydGVyLmZvcm1hdEZsb2F0KG5ldyBEYXRlKHMpLmdldFRpbWUoKSk7fSx0eXBlOiJudW1lcmljIn0pO3RzLmFkZFBhcnNlcih7aWQ6InNob3J0RGF0ZSIsaXM6ZnVuY3Rpb24ocyl7cmV0dXJuL1xkezEsMn1bXC9cLV1cZHsxLDJ9W1wvXC1dXGR7Miw0fS8udGVzdChzKTt9LGZvcm1hdDpmdW5jdGlvbihzLHRhYmxlKXt2YXIgYz10YWJsZS5jb25maWc7cz1zLnJlcGxhY2UoL1wtL2csIi8iKTtpZihjLmRhdGVGb3JtYXQ9PSJ1cyIpe3M9cy5yZXBsYWNlKC8oXGR7MSwyfSlbXC9cLV0oXGR7MSwyfSlbXC9cLV0oXGR7NH0pLywiJDMvJDEvJDIiKTt9ZWxzZSBpZihjLmRhdGVGb3JtYXQ9PSJ1ayIpe3M9cy5yZXBsYWNlKC8oXGR7MSwyfSlbXC9cLV0oXGR7MSwyfSlbXC9cLV0oXGR7NH0pLywiJDMvJDIvJDEiKTt9ZWxzZSBpZihjLmRhdGVGb3JtYXQ9PSJkZC9tbS95eSJ8fGMuZGF0ZUZvcm1hdD09ImRkLW1tLXl5Iil7cz1zLnJlcGxhY2UoLyhcZHsxLDJ9KVtcL1wtXShcZHsxLDJ9KVtcL1wtXShcZHsyfSkvLCIkMS8kMi8kMyIpO31yZXR1cm4gJC50YWJsZXNvcnRlci5mb3JtYXRGbG9hdChuZXcgRGF0ZShzKS5nZXRUaW1lKCkpO30sdHlwZToibnVtZXJpYyJ9KTt0cy5hZGRQYXJzZXIoe2lkOiJ0aW1lIixpczpmdW5jdGlvbihzKXtyZXR1cm4vXigoWzAtMl0/WzAtOV06WzAtNV1bMC05XSl8KFswLTFdP1swLTldOlswLTVdWzAtOV1ccyhhbXxwbSkpKSQvLnRlc3Qocyk7fSxmb3JtYXQ6ZnVuY3Rpb24ocyl7cmV0dXJuICQudGFibGVzb3J0ZXIuZm9ybWF0RmxvYXQobmV3IERhdGUoIjIwMDAvMDEvMDEgIitzKS5nZXRUaW1lKCkpO30sdHlwZToibnVtZXJpYyJ9KTt0cy5hZGRQYXJzZXIoe2lkOiJtZXRhZGF0YSIsaXM6ZnVuY3Rpb24ocyl7cmV0dXJuIGZhbHNlO30sZm9ybWF0OmZ1bmN0aW9uKHMsdGFibGUsY2VsbCl7dmFyIGM9dGFibGUuY29uZmlnLHA9KCFjLnBhcnNlck1ldGFkYXRhTmFtZSk/J3NvcnRWYWx1ZSc6Yy5wYXJzZXJNZXRhZGF0YU5hbWU7cmV0dXJuICQoY2VsbCkubWV0YWRhdGEoKVtwXTt9LHR5cGU6Im51bWVyaWMifSk7dHMuYWRkV2lkZ2V0KHtpZDoiemVicmEiLGZvcm1hdDpmdW5jdGlvbih0YWJsZSl7aWYodGFibGUuY29uZmlnLmRlYnVnKXt2YXIgdGltZT1uZXcgRGF0ZSgpO30kKCJ0cjp2aXNpYmxlIix0YWJsZS50Qm9kaWVzWzBdKS5maWx0ZXIoJzpldmVuJykucmVtb3ZlQ2xhc3ModGFibGUuY29uZmlnLndpZGdldFplYnJhLmNzc1sxXSkuYWRkQ2xhc3ModGFibGUuY29uZmlnLndpZGdldFplYnJhLmNzc1swXSkuZW5kKCkuZmlsdGVyKCc6b2RkJykucmVtb3ZlQ2xhc3ModGFibGUuY29uZmlnLndpZGdldFplYnJhLmNzc1swXSkuYWRkQ2xhc3ModGFibGUuY29uZmlnLndpZGdldFplYnJhLmNzc1sxXSk7aWYodGFibGUuY29uZmlnLmRlYnVnKXskLnRhYmxlc29ydGVyLmJlbmNobWFyaygiQXBwbHlpbmcgWmVicmEgd2lkZ2V0Iix0aW1lKTt9fX0pO30pKGpRdWVyeSk7]]></data>
	</file>
	<file>
	  <filename>/includes/jquery.textarea.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[LyoKICoJVGFiYnkgalF1ZXJ5IHBsdWdpbiB2ZXJzaW9uIDAuMTIKICoKICoJVGVkIERldml0byAtIGh0dHA6Ly90ZWRkZXZpdG8uY29tL2RlbW9zL3RleHRhcmVhLmh0bWwKICoKICoJWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKICoJYWxvbmcgd2l0aCBFYXN5IFdpZGdldHMuIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPgogKgogKglQbHVnaW4gZGV2ZWxvcG1lbnQgcGF0dGVybiBiYXNlZCBvbjoJaHR0cDovL3d3dy5sZWFybmluZ2pxdWVyeS5jb20vMjAwNy8xMC9hLXBsdWdpbi1kZXZlbG9wbWVudC1wYXR0ZXJuCiAqCiAqLwogCi8vIGNyZWF0ZSBjbG9zdXJlCgooZnVuY3Rpb24oJCkgewogCgkvLyBwbHVnaW4gZGVmaW5pdGlvbgoKCSQuZm4udGFiYnkgPSBmdW5jdGlvbihvcHRpb25zKSB7CgkJLy9kZWJ1Zyh0aGlzKTsKCQkvLyBidWlsZCBtYWluIG9wdGlvbnMgYmVmb3JlIGVsZW1lbnQgaXRlcmF0aW9uCgkJdmFyIG9wdHMgPSAkLmV4dGVuZCh7fSwgJC5mbi50YWJieS5kZWZhdWx0cywgb3B0aW9ucyk7CgkJdmFyIHByZXNzZWQgPSAkLmZuLnRhYmJ5LnByZXNzZWQ7IAoJCQoJCS8vIGl0ZXJhdGUgYW5kIHJlZm9ybWF0IGVhY2ggbWF0Y2hlZCBlbGVtZW50CgkJcmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpIHsKCQkJJHRoaXMgPSAkKHRoaXMpOwoJCQkKCQkJLy8gYnVpbGQgZWxlbWVudCBzcGVjaWZpYyBvcHRpb25zCgkJCXZhciBvcHRpb25zID0gJC5tZXRhID8gJC5leHRlbmQoe30sIG9wdHMsICR0aGlzLmRhdGEoKSkgOiBvcHRzOwoJCQkKCQkJJHRoaXMuYmluZCgna2V5ZG93bicsZnVuY3Rpb24gKGUpIHsKCQkJCXZhciBrYyA9ICQuZm4udGFiYnkuY2F0Y2hfa2MoZSk7CgkJCQlpZiAoMTYgPT0ga2MpIHByZXNzZWQuc2hmdCA9IHRydWU7CgkJCQkvKgoJCQkJYmVjYXVzZSBib3RoIENUUkwrVEFCIGFuZCBBTFQrVEFCIGRlZmF1bHQgdG8gYW4gZXZlbnQgKGNoYW5naW5nIHRhYi93aW5kb3cpIHRoYXQgCgkJCQl3aWxsIHByZXZlbnQganMgZnJvbSBjYXB0dXJpbmcgdGhlIGtleXVwIGV2ZW50LCB3ZSdsbCBzZXQgYSB0aW1lciBvbiByZWxlYXNpbmcgdGhlbS4KCQkJCSovCgkJCQlpZiAoMTcgPT0ga2MpIHtwcmVzc2VkLmN0cmwgPSB0cnVlOwlzZXRUaW1lb3V0KCIkLmZuLnRhYmJ5LnByZXNzZWQuY3RybCA9IGZhbHNlOyIsMTAwMCk7fQoJCQkJaWYgKDE4ID09IGtjKSB7cHJlc3NlZC5hbHQgPSB0cnVlOyAJc2V0VGltZW91dCgiJC5mbi50YWJieS5wcmVzc2VkLmFsdCA9IGZhbHNlOyIsMTAwMCk7fQoJCQkJCQoJCQkJaWYgKDkgPT0ga2MgJiYgIXByZXNzZWQuY3RybCAmJiAhcHJlc3NlZC5hbHQpIHsKCQkJCQllLnByZXZlbnREZWZhdWx0OyAvLyBkb2VzIG5vdCB3b3JrIGluIE85LjYzID8/CgkJCQkJcHJlc3NlZC5sYXN0ID0ga2M7CXNldFRpbWVvdXQoIiQuZm4udGFiYnkucHJlc3NlZC5sYXN0ID0gbnVsbDsiLDApOwoJCQkJCXByb2Nlc3Nfa2V5cHJlc3MgKCQoZS50YXJnZXQpLmdldCgwKSwgcHJlc3NlZC5zaGZ0LCBvcHRpb25zKTsKCQkJCQlyZXR1cm4gZmFsc2U7CgkJCQl9CgkJCQkKCQkJfSkuYmluZCgna2V5dXAnLGZ1bmN0aW9uIChlKSB7CgkJCQlpZiAoMTYgPT0gJC5mbi50YWJieS5jYXRjaF9rYyhlKSkgcHJlc3NlZC5zaGZ0ID0gZmFsc2U7CgkJCX0pLmJpbmQoJ2JsdXInLGZ1bmN0aW9uIChlKSB7IC8vIHdvcmthcm91bmQgZm9yIE9wZXJhIC0tIGh0dHA6Ly93d3cud2ViZGV2ZWxvcGVyLmNvbS9mb3J1bS9zaG93dGhyZWFkLnBocD9wPTgwNjU4OAoJCQkJaWYgKDkgPT0gcHJlc3NlZC5sYXN0KSAkKGUudGFyZ2V0KS5vbmUoJ2ZvY3VzJyxmdW5jdGlvbiAoZSkge3ByZXNzZWQubGFzdCA9IG51bGw7fSkuZ2V0KDApLmZvY3VzKCk7CgkJCX0pOwoJCQoJCX0pOwoJfTsKCQoJLy8gZGVmaW5lIGFuZCBleHBvc2UgYW55IGV4dHJhIG1ldGhvZHMKCSQuZm4udGFiYnkuY2F0Y2hfa2MgPSBmdW5jdGlvbihlKSB7IHJldHVybiBlLmtleUNvZGUgPyBlLmtleUNvZGUgOiBlLmNoYXJDb2RlID8gZS5jaGFyQ29kZSA6IGUud2hpY2g7IH07CgkkLmZuLnRhYmJ5LnByZXNzZWQgPSB7c2hmdCA6IGZhbHNlLCBjdHJsIDogZmFsc2UsIGFsdCA6IGZhbHNlLCBsYXN0OiBudWxsfTsKCQoJLy8gcHJpdmF0ZSBmdW5jdGlvbiBmb3IgZGVidWdnaW5nCglmdW5jdGlvbiBkZWJ1Zygkb2JqKSB7CgkJaWYgKHdpbmRvdy5jb25zb2xlICYmIHdpbmRvdy5jb25zb2xlLmxvZykKCQl3aW5kb3cuY29uc29sZS5sb2coJ3RleHRhcmVhIGNvdW50OiAnICsgJG9iai5zaXplKCkpOwoJfTsKCglmdW5jdGlvbiBwcm9jZXNzX2tleXByZXNzIChvLHNoZnQsb3B0aW9ucykgewoJCXZhciBzY3JvbGxUbyA9IG8uc2Nyb2xsVG9wOwoJCS8vdmFyIHRhYlN0cmluZyA9IFN0cmluZy5mcm9tQ2hhckNvZGUoOSk7CgkJCgkJLy8gZ2Vja287IG8uc2V0U2VsZWN0aW9uUmFuZ2UgaXMgb25seSBhdmFpbGFibGUgd2hlbiB0aGUgdGV4dCBib3ggaGFzIGZvY3VzCgkJaWYgKG8uc2V0U2VsZWN0aW9uUmFuZ2UpIGdlY2tvX3RhYiAobywgc2hmdCwgb3B0aW9ucyk7CgkJCgkJLy8gaWU7IGRvY3VtZW50LnNlbGVjdGlvbiBpcyBhbHdheXMgYXZhaWxhYmxlCgkJZWxzZSBpZiAoZG9jdW1lbnQuc2VsZWN0aW9uKSBpZV90YWIgKG8sIHNoZnQsIG9wdGlvbnMpOwoJCQoJCW8uc2Nyb2xsVG9wID0gc2Nyb2xsVG87Cgl9CgkKCS8vIHBsdWdpbiBkZWZhdWx0cwoJJC5mbi50YWJieS5kZWZhdWx0cyA9IHt0YWJTdHJpbmcgOiBTdHJpbmcuZnJvbUNoYXJDb2RlKDkpfTsKCQoJZnVuY3Rpb24gZ2Vja29fdGFiIChvLCBzaGZ0LCBvcHRpb25zKSB7CgkJdmFyIHNzID0gby5zZWxlY3Rpb25TdGFydDsKCQl2YXIgZXMgPSBvLnNlbGVjdGlvbkVuZDsJCgkJCQkKCQkvLyB3aGVuIHRoZXJlJ3Mgbm8gc2VsZWN0aW9uIGFuZCB3ZSdyZSBqdXN0IHdvcmtpbmcgd2l0aCB0aGUgY2FyZXQsIHdlJ2xsIGFkZC9yZW1vdmUgdGhlIHRhYnMgYXQgdGhlIGNhcmV0LCBwcm92aWRpbmcgbW9yZSBjb250cm9sCgkJaWYoc3MgPT0gZXMpIHsKCQkJLy8gU0hJRlQrVEFCCgkJCWlmIChzaGZ0KSB7CgkJCQkvLyBjaGVjayB0byB0aGUgbGVmdCBvZiB0aGUgY2FyZXQgZmlyc3QKCQkJCWlmICgiXHQiID09IG8udmFsdWUuc3Vic3RyaW5nKHNzLW9wdGlvbnMudGFiU3RyaW5nLmxlbmd0aCwgc3MpKSB7CgkJCQkJby52YWx1ZSA9IG8udmFsdWUuc3Vic3RyaW5nKDAsIHNzLW9wdGlvbnMudGFiU3RyaW5nLmxlbmd0aCkgKyBvLnZhbHVlLnN1YnN0cmluZyhzcyk7IC8vIHB1dCBpdCBiYWNrIHRvZ2V0aGVyIG9taXR0aW5nIG9uZSBjaGFyYWN0ZXIgdG8gdGhlIGxlZnQKCQkJCQlvLmZvY3VzKCk7CgkJCQkJby5zZXRTZWxlY3Rpb25SYW5nZShzcyAtIG9wdGlvbnMudGFiU3RyaW5nLmxlbmd0aCwgc3MgLSBvcHRpb25zLnRhYlN0cmluZy5sZW5ndGgpOwoJCQkJfSAKCQkJCS8vIHRoZW4gY2hlY2sgdG8gdGhlIHJpZ2h0IG9mIHRoZSBjYXJldAoJCQkJZWxzZSBpZiAoIlx0IiA9PSBvLnZhbHVlLnN1YnN0cmluZyhzcywgc3MgKyBvcHRpb25zLnRhYlN0cmluZy5sZW5ndGgpKSB7CgkJCQkJby52YWx1ZSA9IG8udmFsdWUuc3Vic3RyaW5nKDAsIHNzKSArIG8udmFsdWUuc3Vic3RyaW5nKHNzICsgb3B0aW9ucy50YWJTdHJpbmcubGVuZ3RoKTsgLy8gcHV0IGl0IGJhY2sgdG9nZXRoZXIgb21pdHRpbmcgb25lIGNoYXJhY3RlciB0byB0aGUgcmlnaHQKCQkJCQlvLmZvY3VzKCk7CgkJCQkJby5zZXRTZWxlY3Rpb25SYW5nZShzcyxzcyk7CgkJCQl9CgkJCX0KCQkJLy8gVEFCCgkJCWVsc2UgewkJCQoJCQkJby52YWx1ZSA9IG8udmFsdWUuc3Vic3RyaW5nKDAsIHNzKSArIG9wdGlvbnMudGFiU3RyaW5nICsgby52YWx1ZS5zdWJzdHJpbmcoc3MpOwoJCQkJby5mb2N1cygpOwoJICAgIAkJby5zZXRTZWxlY3Rpb25SYW5nZShzcyArIG9wdGlvbnMudGFiU3RyaW5nLmxlbmd0aCwgc3MgKyBvcHRpb25zLnRhYlN0cmluZy5sZW5ndGgpOwoJCQl9CgkJfSAKCQkvLyBzZWxlY3Rpb25zIHdpbGwgYWx3YXlzIGFkZC9yZW1vdmUgdGFicyBmcm9tIHRoZSBzdGFydCBvZiB0aGUgbGluZQoJCWVsc2UgewoJCQkvLyBzcGxpdCB0aGUgdGV4dGFyZWEgdXAgaW50byBsaW5lcyBhbmQgZmlndXJlIG91dCB3aGljaCBsaW5lcyBhcmUgaW5jbHVkZWQgaW4gdGhlIHNlbGVjdGlvbgoJCQl2YXIgbGluZXMgPSBvLnZhbHVlLnNwbGl0KCJcbiIpOwoJCQl2YXIgaW5kaWNlcyA9IG5ldyBBcnJheSgpOwoJCQl2YXIgc2wgPSAwOyAvLyBzdGFydCBvZiB0aGUgbGluZQoJCQl2YXIgZWwgPSAwOyAvLyBlbmQgb2YgdGhlIGxpbmUKCQkJdmFyIHNlbCA9IGZhbHNlOwoJCQlmb3IgKHZhciBpIGluIGxpbmVzKSB7CgkJCQllbCA9IHNsICsgbGluZXNbaV0ubGVuZ3RoOwoJCQkJaW5kaWNlcy5wdXNoKHtzdGFydDogc2wsIGVuZDogZWwsIHNlbGVjdGVkOiAoc2wgPD0gc3MgJiYgZWwgPiBzcykgfHwgKGVsID49IGVzICYmIHNsIDwgZXMpIHx8IChzbCA+IHNzICYmIGVsIDwgZXMpfSk7CgkJCQlzbCA9IGVsICsgMTsvLyBmb3IgIlxuIgoJCQl9CgkJCQoJCQkvLyB3YWxrIHRocm91Z2ggdGhlIGFycmF5IG9mIGxpbmVzIChpbmRpY2VzKSBhbmQgYWRkIHRhYnMgd2hlcmUgYXBwcm9wcmlhdGUJCQkJCQkKCQkJdmFyIG1vZGlmaWVyID0gMDsKCQkJZm9yICh2YXIgaSBpbiBpbmRpY2VzKSB7CgkJCQlpZiAoaW5kaWNlc1tpXS5zZWxlY3RlZCkgewoJCQkJCXZhciBwb3MgPSBpbmRpY2VzW2ldLnN0YXJ0ICsgbW9kaWZpZXI7IC8vIGFkanVzdCBmb3IgdGFicyBhbHJlYWR5IGluc2VydGVkL3JlbW92ZWQKCQkJCQkvLyBTSElGVCtUQUIKCQkJCQlpZiAoc2hmdCAmJiBvcHRpb25zLnRhYlN0cmluZyA9PSBvLnZhbHVlLnN1YnN0cmluZyhwb3MscG9zK29wdGlvbnMudGFiU3RyaW5nLmxlbmd0aCkpIHsgLy8gb25seSBTSElGVCtUQUIgaWYgdGhlcmUncyBhIHRhYiBhdCB0aGUgc3RhcnQgb2YgdGhlIGxpbmUKCQkJCQkJby52YWx1ZSA9IG8udmFsdWUuc3Vic3RyaW5nKDAscG9zKSArIG8udmFsdWUuc3Vic3RyaW5nKHBvcyArIG9wdGlvbnMudGFiU3RyaW5nLmxlbmd0aCk7IC8vIG9taXQgdGhlIHRhYnN0cmluZyB0byB0aGUgcmlnaHQKCQkJCQkJbW9kaWZpZXIgLT0gb3B0aW9ucy50YWJTdHJpbmcubGVuZ3RoOwoJCQkJCX0KCQkJCQkvLyBUQUIKCQkJCQllbHNlIGlmICghc2hmdCkgewoJCQkJCQlvLnZhbHVlID0gby52YWx1ZS5zdWJzdHJpbmcoMCxwb3MpICsgb3B0aW9ucy50YWJTdHJpbmcgKyBvLnZhbHVlLnN1YnN0cmluZyhwb3MpOyAvLyBpbnNlcnQgdGhlIHRhYnN0cmluZwoJCQkJCQltb2RpZmllciArPSBvcHRpb25zLnRhYlN0cmluZy5sZW5ndGg7CgkJCQkJfQoJCQkJfQoJCQl9CgkJCW8uZm9jdXMoKTsKCQkJdmFyIG5zID0gc3MgKyAoKG1vZGlmaWVyID4gMCkgPyBvcHRpb25zLnRhYlN0cmluZy5sZW5ndGggOiAobW9kaWZpZXIgPCAwKSA/IC1vcHRpb25zLnRhYlN0cmluZy5sZW5ndGggOiAwKTsKCQkJdmFyIG5lID0gZXMgKyBtb2RpZmllcjsKCQkJby5zZXRTZWxlY3Rpb25SYW5nZShucyxuZSk7CgkJfQoJfQoJCglmdW5jdGlvbiBpZV90YWIgKG8sIHNoZnQsIG9wdGlvbnMpIHsKCQl2YXIgcmFuZ2UgPSBkb2N1bWVudC5zZWxlY3Rpb24uY3JlYXRlUmFuZ2UoKTsKCQkKCQlpZiAobyA9PSByYW5nZS5wYXJlbnRFbGVtZW50KCkpIHsKCQkJLy8gd2hlbiB0aGVyZSdzIG5vIHNlbGVjdGlvbiBhbmQgd2UncmUganVzdCB3b3JraW5nIHdpdGggdGhlIGNhcmV0LCB3ZSdsbCBhZGQvcmVtb3ZlIHRoZSB0YWJzIGF0IHRoZSBjYXJldCwgcHJvdmlkaW5nIG1vcmUgY29udHJvbAoJCQlpZiAoJycgPT0gcmFuZ2UudGV4dCkgewoJCQkJLy8gU0hJRlQrVEFCCgkJCQlpZiAoc2hmdCkgewoJCQkJCXZhciBib29rbWFyayA9IHJhbmdlLmdldEJvb2ttYXJrKCk7CgkJCQkJLy9maXJzdCB0cnkgdG8gdGhlIGxlZnQgYnkgbW92aW5nIG9wZW5pbmcgdXAgb3VyIGVtcHR5IHJhbmdlIHRvIHRoZSBsZWZ0CgkJCQkgICAgcmFuZ2UubW92ZVN0YXJ0KCdjaGFyYWN0ZXInLCAtb3B0aW9ucy50YWJTdHJpbmcubGVuZ3RoKTsKCQkJCSAgICBpZiAob3B0aW9ucy50YWJTdHJpbmcgPT0gcmFuZ2UudGV4dCkgewoJCQkJICAgIAlyYW5nZS50ZXh0ID0gJyc7CgkJCQkgICAgfSBlbHNlIHsKCQkJCSAgICAJLy8gaWYgdGhhdCBkaWRuJ3Qgd29yayB0aGVuIHJlc2V0IHRoZSByYW5nZSBhbmQgdHJ5IG9wZW5pbmcgaXQgdG8gdGhlIHJpZ2h0CgkJCQkgICAgCXJhbmdlLm1vdmVUb0Jvb2ttYXJrKGJvb2ttYXJrKTsKCQkJCSAgICAJcmFuZ2UubW92ZUVuZCgnY2hhcmFjdGVyJywgb3B0aW9ucy50YWJTdHJpbmcubGVuZ3RoKTsKCQkJCSAgICAJaWYgKG9wdGlvbnMudGFiU3RyaW5nID09IHJhbmdlLnRleHQpIAoJCQkJICAgIAkJcmFuZ2UudGV4dCA9ICcnOwoJCQkJICAgIH0KCQkJCSAgICAvLyBtb3ZlIHRoZSBwb2ludGVyIHRvIHRoZSBzdGFydCBvZiB0aGVtIGVtcHR5IHJhbmdlIGFuZCBzZWxlY3QgaXQKCQkJCSAgICByYW5nZS5jb2xsYXBzZSh0cnVlKTsKCQkJCQlyYW5nZS5zZWxlY3QoKTsKCQkJCX0KCQkJCQoJCQkJZWxzZSB7CgkJCQkJLy8gdmVyeSBzaW1wbGUgaGVyZS4ganVzdCBpbnNlcnQgdGhlIHRhYiBpbnRvIHRoZSByYW5nZSBhbmQgcHV0IHRoZSBwb2ludGVyIGF0IHRoZSBlbmQKCQkJCQlyYW5nZS50ZXh0ID0gb3B0aW9ucy50YWJTdHJpbmc7IAoJCQkJCXJhbmdlLmNvbGxhcHNlKGZhbHNlKTsKCQkJCQlyYW5nZS5zZWxlY3QoKTsKCQkJCX0KCQkJfQoJCQkvLyBzZWxlY3Rpb25zIHdpbGwgYWx3YXlzIGFkZC9yZW1vdmUgdGFicyBmcm9tIHRoZSBzdGFydCBvZiB0aGUgbGluZQoJCQllbHNlIHsKCQkJCgkJCQl2YXIgc2VsZWN0aW9uX3RleHQgPSByYW5nZS50ZXh0OwoJCQkJdmFyIHNlbGVjdGlvbl9sZW4gPSBzZWxlY3Rpb25fdGV4dC5sZW5ndGg7CgkJCQl2YXIgc2VsZWN0aW9uX2FyciA9IHNlbGVjdGlvbl90ZXh0LnNwbGl0KCJcclxuIik7CgkJCQkKCQkJCXZhciBiZWZvcmVfcmFuZ2UgPSBkb2N1bWVudC5ib2R5LmNyZWF0ZVRleHRSYW5nZSgpOwoJCQkJYmVmb3JlX3JhbmdlLm1vdmVUb0VsZW1lbnRUZXh0KG8pOwoJCQkJYmVmb3JlX3JhbmdlLnNldEVuZFBvaW50KCJFbmRUb1N0YXJ0IiwgcmFuZ2UpOwoJCQkJdmFyIGJlZm9yZV90ZXh0ID0gYmVmb3JlX3JhbmdlLnRleHQ7CgkJCQl2YXIgYmVmb3JlX2FyciA9IGJlZm9yZV90ZXh0LnNwbGl0KCJcclxuIik7CgkJCQl2YXIgYmVmb3JlX2xlbiA9IGJlZm9yZV90ZXh0Lmxlbmd0aDsgLy8gLSBiZWZvcmVfYXJyLmxlbmd0aCArIDE7CgkJCQkKCQkJCXZhciBhZnRlcl9yYW5nZSA9IGRvY3VtZW50LmJvZHkuY3JlYXRlVGV4dFJhbmdlKCk7CgkJCQlhZnRlcl9yYW5nZS5tb3ZlVG9FbGVtZW50VGV4dChvKTsKCQkJCWFmdGVyX3JhbmdlLnNldEVuZFBvaW50KCJTdGFydFRvRW5kIiwgcmFuZ2UpOwoJCQkJdmFyIGFmdGVyX3RleHQgPSBhZnRlcl9yYW5nZS50ZXh0OyAvLyB3ZSBjYW4gYWNjdXJhdGVseSBjYWxjdWxhdGUgZGlzdGFuY2UgdG8gdGhlIGVuZCBiZWNhdXNlIHdlJ3JlIG5vdCB3b3JyaWVkIGFib3V0IE1TSUUgdHJpbW1pbmcgYSBcclxuCgkJCQkKCQkJCXZhciBlbmRfcmFuZ2UgPSBkb2N1bWVudC5ib2R5LmNyZWF0ZVRleHRSYW5nZSgpOwoJCQkJZW5kX3JhbmdlLm1vdmVUb0VsZW1lbnRUZXh0KG8pOwoJCQkJZW5kX3JhbmdlLnNldEVuZFBvaW50KCJTdGFydFRvRW5kIiwgYmVmb3JlX3JhbmdlKTsKCQkJCXZhciBlbmRfdGV4dCA9IGVuZF9yYW5nZS50ZXh0OyAvLyB3ZSBjYW4gYWNjdXJhdGVseSBjYWxjdWxhdGUgZGlzdGFuY2UgdG8gdGhlIGVuZCBiZWNhdXNlIHdlJ3JlIG5vdCB3b3JyaWVkIGFib3V0IE1TSUUgdHJpbW1pbmcgYSBcclxuCgkJCQkJCQkJCgkJCQl2YXIgY2hlY2tfaHRtbCA9ICQobykuaHRtbCgpOwoJCQkJJCgiI3IzIikudGV4dChiZWZvcmVfbGVuICsgIiArICIgKyBzZWxlY3Rpb25fbGVuICsgIiArICIgKyBhZnRlcl90ZXh0Lmxlbmd0aCArICIgPSAiICsgY2hlY2tfaHRtbC5sZW5ndGgpOwkJCQkKCQkJCWlmKChiZWZvcmVfbGVuICsgZW5kX3RleHQubGVuZ3RoKSA8IGNoZWNrX2h0bWwubGVuZ3RoKSB7CgkJCQkJYmVmb3JlX2Fyci5wdXNoKCIiKTsKCQkJCQliZWZvcmVfbGVuICs9IDI7IC8vIGZvciB0aGUgXHJcbiB0aGF0IHdhcyB0cmltbWVkCQoJCQkJCWlmIChzaGZ0ICYmIG9wdGlvbnMudGFiU3RyaW5nID09IHNlbGVjdGlvbl9hcnJbMF0uc3Vic3RyaW5nKDAsb3B0aW9ucy50YWJTdHJpbmcubGVuZ3RoKSkKCQkJCQkJc2VsZWN0aW9uX2FyclswXSA9IHNlbGVjdGlvbl9hcnJbMF0uc3Vic3RyaW5nKG9wdGlvbnMudGFiU3RyaW5nLmxlbmd0aCk7CgkJCQkJZWxzZSBpZiAoIXNoZnQpIHNlbGVjdGlvbl9hcnJbMF0gPSBvcHRpb25zLnRhYlN0cmluZyArIHNlbGVjdGlvbl9hcnJbMF07CQoJCQkJfSBlbHNlIHsKCQkJCQlpZiAoc2hmdCAmJiBvcHRpb25zLnRhYlN0cmluZyA9PSBiZWZvcmVfYXJyW2JlZm9yZV9hcnIubGVuZ3RoLTFdLnN1YnN0cmluZygwLG9wdGlvbnMudGFiU3RyaW5nLmxlbmd0aCkpIAoJCQkJCQliZWZvcmVfYXJyW2JlZm9yZV9hcnIubGVuZ3RoLTFdID0gYmVmb3JlX2FycltiZWZvcmVfYXJyLmxlbmd0aC0xXS5zdWJzdHJpbmcob3B0aW9ucy50YWJTdHJpbmcubGVuZ3RoKTsKCQkJCQllbHNlIGlmICghc2hmdCkgYmVmb3JlX2FycltiZWZvcmVfYXJyLmxlbmd0aC0xXSA9IG9wdGlvbnMudGFiU3RyaW5nICsgYmVmb3JlX2FycltiZWZvcmVfYXJyLmxlbmd0aC0xXTsKCQkJCX0KCQkJCQoJCQkJZm9yICh2YXIgaSA9IDE7IGkgPCBzZWxlY3Rpb25fYXJyLmxlbmd0aDsgaSsrKSB7CgkJCQkJaWYgKHNoZnQgJiYgb3B0aW9ucy50YWJTdHJpbmcgPT0gc2VsZWN0aW9uX2FycltpXS5zdWJzdHJpbmcoMCxvcHRpb25zLnRhYlN0cmluZy5sZW5ndGgpKQoJCQkJCQlzZWxlY3Rpb25fYXJyW2ldID0gc2VsZWN0aW9uX2FycltpXS5zdWJzdHJpbmcob3B0aW9ucy50YWJTdHJpbmcubGVuZ3RoKTsKCQkJCQllbHNlIGlmICghc2hmdCkgc2VsZWN0aW9uX2FycltpXSA9IG9wdGlvbnMudGFiU3RyaW5nICsgc2VsZWN0aW9uX2FycltpXTsKCQkJCX0KCQkJCQoJCQkJaWYgKDEgPT0gYmVmb3JlX2Fyci5sZW5ndGggJiYgMCA9PSBiZWZvcmVfbGVuKSB7CgkJCQkJaWYgKHNoZnQgJiYgb3B0aW9ucy50YWJTdHJpbmcgPT0gc2VsZWN0aW9uX2FyclswXS5zdWJzdHJpbmcoMCxvcHRpb25zLnRhYlN0cmluZy5sZW5ndGgpKQoJCQkJCQlzZWxlY3Rpb25fYXJyWzBdID0gc2VsZWN0aW9uX2FyclswXS5zdWJzdHJpbmcob3B0aW9ucy50YWJTdHJpbmcubGVuZ3RoKTsKCQkJCQllbHNlIGlmICghc2hmdCkgc2VsZWN0aW9uX2FyclswXSA9IG9wdGlvbnMudGFiU3RyaW5nICsgc2VsZWN0aW9uX2FyclswXTsKCQkJCX0KCgkJCQlpZiAoKGJlZm9yZV9sZW4gKyBzZWxlY3Rpb25fbGVuICsgYWZ0ZXJfdGV4dC5sZW5ndGgpIDwgY2hlY2tfaHRtbC5sZW5ndGgpIHsKCQkJCQlzZWxlY3Rpb25fYXJyLnB1c2goIiIpOwoJCQkJCXNlbGVjdGlvbl9sZW4gKz0gMjsgLy8gZm9yIHRoZSBcclxuIHRoYXQgd2FzIHRyaW1tZWQKCQkJCX0KCQkJCQoJCQkJYmVmb3JlX3JhbmdlLnRleHQgPSBiZWZvcmVfYXJyLmpvaW4oIlxyXG4iKTsKCQkJCXJhbmdlLnRleHQgPSBzZWxlY3Rpb25fYXJyLmpvaW4oIlxyXG4iKTsKCQkJCQoJCQkJdmFyIG5ld19yYW5nZSA9IGRvY3VtZW50LmJvZHkuY3JlYXRlVGV4dFJhbmdlKCk7CgkJCQluZXdfcmFuZ2UubW92ZVRvRWxlbWVudFRleHQobyk7CgkJCQkKCQkJCWlmICgwIDwgYmVmb3JlX2xlbikJbmV3X3JhbmdlLnNldEVuZFBvaW50KCJTdGFydFRvRW5kIiwgYmVmb3JlX3JhbmdlKTsKCQkJCWVsc2UgbmV3X3JhbmdlLnNldEVuZFBvaW50KCJTdGFydFRvU3RhcnQiLCBiZWZvcmVfcmFuZ2UpOwoJCQkJbmV3X3JhbmdlLnNldEVuZFBvaW50KCJFbmRUb0VuZCIsIHJhbmdlKTsKCQkJCQoJCQkJbmV3X3JhbmdlLnNlbGVjdCgpOwoJCQkJCgkJCX0gCgkJfQoJfQoKLy8gZW5kIG9mIGNsb3N1cmUKfSkoalF1ZXJ5KTsK]]></data>
	</file>
	<file>
	  <filename>/includes/themes/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/includes/themes/blue/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/includes/themes/blue/asc.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[R0lGODlhFQAEAIAAACMtMP///yH5BAEAAAEALAAAAAAVAAQAAAINjB+gC+jP2ptn0WskLQA7]]></data>
	</file>
	<file>
	  <filename>/includes/themes/blue/bg.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[R0lGODlhFQAJAIAAACMtMP///yH5BAEAAAEALAAAAAAVAAkAAAIXjI+AywnaYnhUMoqt3gZXPmVg94yJVQAAOw==]]></data>
	</file>
	<file>
	  <filename>/includes/themes/blue/desc.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[R0lGODlhFQAEAIAAACMtMP///yH5BAEAAAEALAAAAAAVAAQAAAINjI8Bya2wnINUMopZAQA7]]></data>
	</file>
	<file>
	  <filename>/includes/themes/blue/style.css</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[LyogdGFibGVzICovCnRhYmxlLnRhYmxlc29ydGVyIHsKCWZvbnQtZmFtaWx5OmFyaWFsOwoJYmFja2dyb3VuZC1jb2xvcjogI0NEQ0RDRDsKCW1hcmdpbjoxMHB4IDBwdCAxNXB4OwoJZm9udC1zaXplOiA4cHQ7Cgl3aWR0aDogMTAwJTsKCXRleHQtYWxpZ246IGxlZnQ7Cn0KdGFibGUudGFibGVzb3J0ZXIgdGhlYWQgdHIgdGgsIHRhYmxlLnRhYmxlc29ydGVyIHRmb290IHRyIHRoIHsKCWJhY2tncm91bmQtY29sb3I6ICNlNkVFRUU7Cglib3JkZXI6IDFweCBzb2xpZCAjRkZGOwoJZm9udC1zaXplOiA4cHQ7CglwYWRkaW5nOiA0cHg7Cn0KdGFibGUudGFibGVzb3J0ZXIgdGhlYWQgdHIgLmhlYWRlciB7CgliYWNrZ3JvdW5kLWltYWdlOiB1cmwoYmcuZ2lmKTsKCWJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7CgliYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgcmlnaHQ7CgljdXJzb3I6IHBvaW50ZXI7Cn0KdGFibGUudGFibGVzb3J0ZXIgdGJvZHkgdGQgewoJY29sb3I6ICMzRDNEM0Q7CglwYWRkaW5nOiA0cHg7CgliYWNrZ3JvdW5kLWNvbG9yOiAjRkZGOwoJdmVydGljYWwtYWxpZ246IHRvcDsKfQp0YWJsZS50YWJsZXNvcnRlciB0Ym9keSB0ci5vZGQgdGQgewoJYmFja2dyb3VuZC1jb2xvcjojRjBGMEY2Owp9CnRhYmxlLnRhYmxlc29ydGVyIHRoZWFkIHRyIC5oZWFkZXJTb3J0VXAgewoJYmFja2dyb3VuZC1pbWFnZTogdXJsKGFzYy5naWYpOwp9CnRhYmxlLnRhYmxlc29ydGVyIHRoZWFkIHRyIC5oZWFkZXJTb3J0RG93biB7CgliYWNrZ3JvdW5kLWltYWdlOiB1cmwoZGVzYy5naWYpOwp9CnRhYmxlLnRhYmxlc29ydGVyIHRoZWFkIHRyIC5oZWFkZXJTb3J0RG93biwgdGFibGUudGFibGVzb3J0ZXIgdGhlYWQgdHIgLmhlYWRlclNvcnRVcCB7CmJhY2tncm91bmQtY29sb3I6ICM4ZGJkZDg7Cn0K]]></data>
	</file>
	<file>
	  <filename>/includes/themes/green/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/includes/themes/green/asc.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/includes/themes/green/bg.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/includes/themes/green/desc.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/includes/themes/green/style.css</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[dGFibGUudGFibGVzb3J0ZXIgewoJZm9udC1zaXplOiAxMnB4OwoJYmFja2dyb3VuZC1jb2xvcjogIzRENEQ0RDsKCXdpZHRoOiAxMDI0cHg7Cglib3JkZXI6IDFweCBzb2xpZCAjMDAwOwp9CnRhYmxlLnRhYmxlc29ydGVyIHRoIHsKCXRleHQtYWxpZ246IGxlZnQ7CglwYWRkaW5nOiA1cHg7CgliYWNrZ3JvdW5kLWNvbG9yOiAjNkU2RTZFOwp9CnRhYmxlLnRhYmxlc29ydGVyIHRkIHsKCWNvbG9yOiAjRkZGOwoJcGFkZGluZzogNXB4Owp9CnRhYmxlLnRhYmxlc29ydGVyIC5ldmVuIHsKCWJhY2tncm91bmQtY29sb3I6ICMzRDNEM0Q7Cn0KdGFibGUudGFibGVzb3J0ZXIgLm9kZCB7CgliYWNrZ3JvdW5kLWNvbG9yOiAjNkU2RTZFOwp9CnRhYmxlLnRhYmxlc29ydGVyIC5oZWFkZXIgewoJYmFja2dyb3VuZC1pbWFnZTogdXJsKGJnLnBuZyk7CgliYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OwoJYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjRkZGOwoJYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzAwMDsKCWJvcmRlci10b3A6IDFweCBzb2xpZCAjRkZGOwoJcGFkZGluZy1sZWZ0OiAzMHB4OwoJcGFkZGluZy10b3A6IDhweDsKCWhlaWdodDogYXV0bzsKfQp0YWJsZS50YWJsZXNvcnRlciAuaGVhZGVyU29ydFVwIHsKCWJhY2tncm91bmQtaW1hZ2U6IHVybChhc2MucG5nKTsKCWJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7Cn0KdGFibGUudGFibGVzb3J0ZXIgLmhlYWRlclNvcnREb3duIHsKCWJhY2tncm91bmQtaW1hZ2U6IHVybChkZXNjLnBuZyk7CgliYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0Owp9]]></data>
	</file>
	<file>
	  <filename>/includes/zeroclipboard/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/includes/zeroclipboard/ZeroClipboard.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[Ly8gU2ltcGxlIFNldCBDbGlwYm9hcmQgU3lzdGVtCi8vIEF1dGhvcjogSm9zZXBoIEh1Y2thYnkKCnZhciBaZXJvQ2xpcGJvYXJkID0gewoJCgl2ZXJzaW9uOiAiMS4wLjciLAoJY2xpZW50czoge30sIC8vIHJlZ2lzdGVyZWQgdXBsb2FkIGNsaWVudHMgb24gcGFnZSwgaW5kZXhlZCBieSBpZAoJbW92aWVQYXRoOiAnWmVyb0NsaXBib2FyZC5zd2YnLCAvLyBVUkwgdG8gbW92aWUKCW5leHRJZDogMSwgLy8gSUQgb2YgbmV4dCBtb3ZpZQoJCgkkOiBmdW5jdGlvbih0aGluZ3kpIHsKCQkvLyBzaW1wbGUgRE9NIGxvb2t1cCB1dGlsaXR5IGZ1bmN0aW9uCgkJaWYgKHR5cGVvZih0aGluZ3kpID09ICdzdHJpbmcnKSB0aGluZ3kgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCh0aGluZ3kpOwoJCWlmICghdGhpbmd5LmFkZENsYXNzKSB7CgkJCS8vIGV4dGVuZCBlbGVtZW50IHdpdGggYSBmZXcgdXNlZnVsIG1ldGhvZHMKCQkJdGhpbmd5LmhpZGUgPSBmdW5jdGlvbigpIHsgdGhpcy5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnOyB9OwoJCQl0aGluZ3kuc2hvdyA9IGZ1bmN0aW9uKCkgeyB0aGlzLnN0eWxlLmRpc3BsYXkgPSAnJzsgfTsKCQkJdGhpbmd5LmFkZENsYXNzID0gZnVuY3Rpb24obmFtZSkgeyB0aGlzLnJlbW92ZUNsYXNzKG5hbWUpOyB0aGlzLmNsYXNzTmFtZSArPSAnICcgKyBuYW1lOyB9OwoJCQl0aGluZ3kucmVtb3ZlQ2xhc3MgPSBmdW5jdGlvbihuYW1lKSB7CgkJCQl2YXIgY2xhc3NlcyA9IHRoaXMuY2xhc3NOYW1lLnNwbGl0KC9ccysvKTsKCQkJCXZhciBpZHggPSAtMTsKCQkJCWZvciAodmFyIGsgPSAwOyBrIDwgY2xhc3Nlcy5sZW5ndGg7IGsrKykgewoJCQkJCWlmIChjbGFzc2VzW2tdID09IG5hbWUpIHsgaWR4ID0gazsgayA9IGNsYXNzZXMubGVuZ3RoOyB9CgkJCQl9CgkJCQlpZiAoaWR4ID4gLTEpIHsKCQkJCQljbGFzc2VzLnNwbGljZSggaWR4LCAxICk7CgkJCQkJdGhpcy5jbGFzc05hbWUgPSBjbGFzc2VzLmpvaW4oJyAnKTsKCQkJCX0KCQkJCXJldHVybiB0aGlzOwoJCQl9OwoJCQl0aGluZ3kuaGFzQ2xhc3MgPSBmdW5jdGlvbihuYW1lKSB7CgkJCQlyZXR1cm4gISF0aGlzLmNsYXNzTmFtZS5tYXRjaCggbmV3IFJlZ0V4cCgiXFxzKiIgKyBuYW1lICsgIlxccyoiKSApOwoJCQl9OwoJCX0KCQlyZXR1cm4gdGhpbmd5OwoJfSwKCQoJc2V0TW92aWVQYXRoOiBmdW5jdGlvbihwYXRoKSB7CgkJLy8gc2V0IHBhdGggdG8gWmVyb0NsaXBib2FyZC5zd2YKCQl0aGlzLm1vdmllUGF0aCA9IHBhdGg7Cgl9LAoJCglkaXNwYXRjaDogZnVuY3Rpb24oaWQsIGV2ZW50TmFtZSwgYXJncykgewoJCS8vIHJlY2VpdmUgZXZlbnQgZnJvbSBmbGFzaCBtb3ZpZSwgc2VuZCB0byBjbGllbnQJCQoJCXZhciBjbGllbnQgPSB0aGlzLmNsaWVudHNbaWRdOwoJCWlmIChjbGllbnQpIHsKCQkJY2xpZW50LnJlY2VpdmVFdmVudChldmVudE5hbWUsIGFyZ3MpOwoJCX0KCX0sCgkKCXJlZ2lzdGVyOiBmdW5jdGlvbihpZCwgY2xpZW50KSB7CgkJLy8gcmVnaXN0ZXIgbmV3IGNsaWVudCB0byByZWNlaXZlIGV2ZW50cwoJCXRoaXMuY2xpZW50c1tpZF0gPSBjbGllbnQ7Cgl9LAoJCglnZXRET01PYmplY3RQb3NpdGlvbjogZnVuY3Rpb24ob2JqLCBzdG9wT2JqKSB7CgkJLy8gZ2V0IGFic29sdXRlIGNvb3JkaW5hdGVzIGZvciBkb20gZWxlbWVudAoJCXZhciBpbmZvID0gewoJCQlsZWZ0OiAwLCAKCQkJdG9wOiAwLCAKCQkJd2lkdGg6IG9iai53aWR0aCA/IG9iai53aWR0aCA6IG9iai5vZmZzZXRXaWR0aCwgCgkJCWhlaWdodDogb2JqLmhlaWdodCA/IG9iai5oZWlnaHQgOiBvYmoub2Zmc2V0SGVpZ2h0CgkJfTsKCgkJd2hpbGUgKG9iaiAmJiAob2JqICE9IHN0b3BPYmopKSB7CgkJCWluZm8ubGVmdCArPSBvYmoub2Zmc2V0TGVmdDsKCQkJaW5mby50b3AgKz0gb2JqLm9mZnNldFRvcDsKCQkJb2JqID0gb2JqLm9mZnNldFBhcmVudDsKCQl9CgoJCXJldHVybiBpbmZvOwoJfSwKCQoJQ2xpZW50OiBmdW5jdGlvbihlbGVtKSB7CgkJLy8gY29uc3RydWN0b3IgZm9yIG5ldyBzaW1wbGUgdXBsb2FkIGNsaWVudAoJCXRoaXMuaGFuZGxlcnMgPSB7fTsKCQkKCQkvLyB1bmlxdWUgSUQKCQl0aGlzLmlkID0gWmVyb0NsaXBib2FyZC5uZXh0SWQrKzsKCQl0aGlzLm1vdmllSWQgPSAnWmVyb0NsaXBib2FyZE1vdmllXycgKyB0aGlzLmlkOwoJCQoJCS8vIHJlZ2lzdGVyIGNsaWVudCB3aXRoIHNpbmdsZXRvbiB0byByZWNlaXZlIGZsYXNoIGV2ZW50cwoJCVplcm9DbGlwYm9hcmQucmVnaXN0ZXIodGhpcy5pZCwgdGhpcyk7CgkJCgkJLy8gY3JlYXRlIG1vdmllCgkJaWYgKGVsZW0pIHRoaXMuZ2x1ZShlbGVtKTsKCX0KfTsKClplcm9DbGlwYm9hcmQuQ2xpZW50LnByb3RvdHlwZSA9IHsKCQoJaWQ6IDAsIC8vIHVuaXF1ZSBJRCBmb3IgdXMKCXJlYWR5OiBmYWxzZSwgLy8gd2hldGhlciBtb3ZpZSBpcyByZWFkeSB0byByZWNlaXZlIGV2ZW50cyBvciBub3QKCW1vdmllOiBudWxsLCAvLyByZWZlcmVuY2UgdG8gbW92aWUgb2JqZWN0CgljbGlwVGV4dDogJycsIC8vIHRleHQgdG8gY29weSB0byBjbGlwYm9hcmQKCWhhbmRDdXJzb3JFbmFibGVkOiB0cnVlLCAvLyB3aGV0aGVyIHRvIHNob3cgaGFuZCBjdXJzb3IsIG9yIGRlZmF1bHQgcG9pbnRlciBjdXJzb3IKCWNzc0VmZmVjdHM6IHRydWUsIC8vIGVuYWJsZSBDU1MgbW91c2UgZWZmZWN0cyBvbiBkb20gY29udGFpbmVyCgloYW5kbGVyczogbnVsbCwgLy8gdXNlciBldmVudCBoYW5kbGVycwoJCglnbHVlOiBmdW5jdGlvbihlbGVtLCBhcHBlbmRFbGVtLCBzdHlsZXNUb0FkZCkgewoJCS8vIGdsdWUgdG8gRE9NIGVsZW1lbnQKCQkvLyBlbGVtIGNhbiBiZSBJRCBvciBhY3R1YWwgRE9NIGVsZW1lbnQgb2JqZWN0CgkJdGhpcy5kb21FbGVtZW50ID0gWmVyb0NsaXBib2FyZC4kKGVsZW0pOwoJCQoJCS8vIGZsb2F0IGp1c3QgYWJvdmUgb2JqZWN0LCBvciB6SW5kZXggOTkgaWYgZG9tIGVsZW1lbnQgaXNuJ3Qgc2V0CgkJdmFyIHpJbmRleCA9IDk5OwoJCWlmICh0aGlzLmRvbUVsZW1lbnQuc3R5bGUuekluZGV4KSB7CgkJCXpJbmRleCA9IHBhcnNlSW50KHRoaXMuZG9tRWxlbWVudC5zdHlsZS56SW5kZXgsIDEwKSArIDE7CgkJfQoJCQoJCWlmICh0eXBlb2YoYXBwZW5kRWxlbSkgPT0gJ3N0cmluZycpIHsKCQkJYXBwZW5kRWxlbSA9IFplcm9DbGlwYm9hcmQuJChhcHBlbmRFbGVtKTsKCQl9CgkJZWxzZSBpZiAodHlwZW9mKGFwcGVuZEVsZW0pID09ICd1bmRlZmluZWQnKSB7CgkJCWFwcGVuZEVsZW0gPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgnYm9keScpWzBdOwoJCX0KCQkKCQkvLyBmaW5kIFgvWSBwb3NpdGlvbiBvZiBkb21FbGVtZW50CgkJdmFyIGJveCA9IFplcm9DbGlwYm9hcmQuZ2V0RE9NT2JqZWN0UG9zaXRpb24odGhpcy5kb21FbGVtZW50LCBhcHBlbmRFbGVtKTsKCQkKCQkvLyBjcmVhdGUgZmxvYXRpbmcgRElWIGFib3ZlIGVsZW1lbnQKCQl0aGlzLmRpdiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpOwoJCXZhciBzdHlsZSA9IHRoaXMuZGl2LnN0eWxlOwoJCXN0eWxlLnBvc2l0aW9uID0gJ2Fic29sdXRlJzsKCQlzdHlsZS5sZWZ0ID0gJycgKyBib3gubGVmdCArICdweCc7CgkJc3R5bGUudG9wID0gJycgKyBib3gudG9wICsgJ3B4JzsKCQlzdHlsZS53aWR0aCA9ICcnICsgYm94LndpZHRoICsgJ3B4JzsKCQlzdHlsZS5oZWlnaHQgPSAnJyArIGJveC5oZWlnaHQgKyAncHgnOwoJCXN0eWxlLnpJbmRleCA9IHpJbmRleDsKCQkKCQlpZiAodHlwZW9mKHN0eWxlc1RvQWRkKSA9PSAnb2JqZWN0JykgewoJCQlmb3IgKGFkZGVkU3R5bGUgaW4gc3R5bGVzVG9BZGQpIHsKCQkJCXN0eWxlW2FkZGVkU3R5bGVdID0gc3R5bGVzVG9BZGRbYWRkZWRTdHlsZV07CgkJCX0KCQl9CgkJCgkJLy8gc3R5bGUuYmFja2dyb3VuZENvbG9yID0gJyNmMDAnOyAvLyBkZWJ1ZwoJCQoJCWFwcGVuZEVsZW0uYXBwZW5kQ2hpbGQodGhpcy5kaXYpOwoJCQoJCXRoaXMuZGl2LmlubmVySFRNTCA9IHRoaXMuZ2V0SFRNTCggYm94LndpZHRoLCBib3guaGVpZ2h0ICk7Cgl9LAoJCglnZXRIVE1MOiBmdW5jdGlvbih3aWR0aCwgaGVpZ2h0KSB7CgkJLy8gcmV0dXJuIEhUTUwgZm9yIG1vdmllCgkJdmFyIGh0bWwgPSAnJzsKCQl2YXIgZmxhc2h2YXJzID0gJ2lkPScgKyB0aGlzLmlkICsgCgkJCScmd2lkdGg9JyArIHdpZHRoICsgCgkJCScmaGVpZ2h0PScgKyBoZWlnaHQ7CgkJCQoJCWlmIChuYXZpZ2F0b3IudXNlckFnZW50Lm1hdGNoKC9NU0lFLykpIHsKCQkJLy8gSUUgZ2V0cyBhbiBPQkpFQ1QgdGFnCgkJCXZhciBwcm90b2NvbCA9IGxvY2F0aW9uLmhyZWYubWF0Y2goL15odHRwcy9pKSA/ICdodHRwczovLycgOiAnaHR0cDovLyc7CgkJCWh0bWwgKz0gJzxvYmplY3QgY2xhc3NpZD0iY2xzaWQ6ZDI3Y2RiNmUtYWU2ZC0xMWNmLTk2YjgtNDQ0NTUzNTQwMDAwIiBjb2RlYmFzZT0iJytwcm90b2NvbCsnZG93bmxvYWQubWFjcm9tZWRpYS5jb20vcHViL3Nob2Nrd2F2ZS9jYWJzL2ZsYXNoL3N3Zmxhc2guY2FiI3ZlcnNpb249OSwwLDAsMCIgd2lkdGg9Iicrd2lkdGgrJyIgaGVpZ2h0PSInK2hlaWdodCsnIiBpZD0iJyt0aGlzLm1vdmllSWQrJyIgYWxpZ249Im1pZGRsZSI+PHBhcmFtIG5hbWU9ImFsbG93U2NyaXB0QWNjZXNzIiB2YWx1ZT0iYWx3YXlzIiAvPjxwYXJhbSBuYW1lPSJhbGxvd0Z1bGxTY3JlZW4iIHZhbHVlPSJmYWxzZSIgLz48cGFyYW0gbmFtZT0ibW92aWUiIHZhbHVlPSInK1plcm9DbGlwYm9hcmQubW92aWVQYXRoKyciIC8+PHBhcmFtIG5hbWU9Imxvb3AiIHZhbHVlPSJmYWxzZSIgLz48cGFyYW0gbmFtZT0ibWVudSIgdmFsdWU9ImZhbHNlIiAvPjxwYXJhbSBuYW1lPSJxdWFsaXR5IiB2YWx1ZT0iYmVzdCIgLz48cGFyYW0gbmFtZT0iYmdjb2xvciIgdmFsdWU9IiNmZmZmZmYiIC8+PHBhcmFtIG5hbWU9ImZsYXNodmFycyIgdmFsdWU9IicrZmxhc2h2YXJzKyciLz48cGFyYW0gbmFtZT0id21vZGUiIHZhbHVlPSJ0cmFuc3BhcmVudCIvPjwvb2JqZWN0Pic7CgkJfQoJCWVsc2UgewoJCQkvLyBhbGwgb3RoZXIgYnJvd3NlcnMgZ2V0IGFuIEVNQkVEIHRhZwoJCQlodG1sICs9ICc8ZW1iZWQgaWQ9IicrdGhpcy5tb3ZpZUlkKyciIHNyYz0iJytaZXJvQ2xpcGJvYXJkLm1vdmllUGF0aCsnIiBsb29wPSJmYWxzZSIgbWVudT0iZmFsc2UiIHF1YWxpdHk9ImJlc3QiIGJnY29sb3I9IiNmZmZmZmYiIHdpZHRoPSInK3dpZHRoKyciIGhlaWdodD0iJytoZWlnaHQrJyIgbmFtZT0iJyt0aGlzLm1vdmllSWQrJyIgYWxpZ249Im1pZGRsZSIgYWxsb3dTY3JpcHRBY2Nlc3M9ImFsd2F5cyIgYWxsb3dGdWxsU2NyZWVuPSJmYWxzZSIgdHlwZT0iYXBwbGljYXRpb24veC1zaG9ja3dhdmUtZmxhc2giIHBsdWdpbnNwYWdlPSJodHRwOi8vd3d3Lm1hY3JvbWVkaWEuY29tL2dvL2dldGZsYXNocGxheWVyIiBmbGFzaHZhcnM9IicrZmxhc2h2YXJzKyciIHdtb2RlPSJ0cmFuc3BhcmVudCIgLz4nOwoJCX0KCQlyZXR1cm4gaHRtbDsKCX0sCgkKCWhpZGU6IGZ1bmN0aW9uKCkgewoJCS8vIHRlbXBvcmFyaWx5IGhpZGUgZmxvYXRlciBvZmZzY3JlZW4KCQlpZiAodGhpcy5kaXYpIHsKCQkJdGhpcy5kaXYuc3R5bGUubGVmdCA9ICctMjAwMHB4JzsKCQl9Cgl9LAoJCglzaG93OiBmdW5jdGlvbigpIHsKCQkvLyBzaG93IG91cnNlbHZlcyBhZnRlciBhIGNhbGwgdG8gaGlkZSgpCgkJdGhpcy5yZXBvc2l0aW9uKCk7Cgl9LAoJCglkZXN0cm95OiBmdW5jdGlvbigpIHsKCQkvLyBkZXN0cm95IGNvbnRyb2wgYW5kIGZsb2F0ZXIKCQlpZiAodGhpcy5kb21FbGVtZW50ICYmIHRoaXMuZGl2KSB7CgkJCXRoaXMuaGlkZSgpOwoJCQl0aGlzLmRpdi5pbm5lckhUTUwgPSAnJzsKCQkJCgkJCXZhciBib2R5ID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ2JvZHknKVswXTsKCQkJdHJ5IHsgYm9keS5yZW1vdmVDaGlsZCggdGhpcy5kaXYgKTsgfSBjYXRjaChlKSB7O30KCQkJCgkJCXRoaXMuZG9tRWxlbWVudCA9IG51bGw7CgkJCXRoaXMuZGl2ID0gbnVsbDsKCQl9Cgl9LAoJCglyZXBvc2l0aW9uOiBmdW5jdGlvbihlbGVtKSB7CgkJLy8gcmVwb3NpdGlvbiBvdXIgZmxvYXRpbmcgZGl2LCBvcHRpb25hbGx5IHRvIG5ldyBjb250YWluZXIKCQkvLyB3YXJuaW5nOiBjb250YWluZXIgQ0FOTk9UIGNoYW5nZSBzaXplLCBvbmx5IHBvc2l0aW9uCgkJaWYgKGVsZW0pIHsKCQkJdGhpcy5kb21FbGVtZW50ID0gWmVyb0NsaXBib2FyZC4kKGVsZW0pOwoJCQlpZiAoIXRoaXMuZG9tRWxlbWVudCkgdGhpcy5oaWRlKCk7CgkJfQoJCQoJCWlmICh0aGlzLmRvbUVsZW1lbnQgJiYgdGhpcy5kaXYpIHsKCQkJdmFyIGJveCA9IFplcm9DbGlwYm9hcmQuZ2V0RE9NT2JqZWN0UG9zaXRpb24odGhpcy5kb21FbGVtZW50KTsKCQkJdmFyIHN0eWxlID0gdGhpcy5kaXYuc3R5bGU7CgkJCXN0eWxlLmxlZnQgPSAnJyArIGJveC5sZWZ0ICsgJ3B4JzsKCQkJc3R5bGUudG9wID0gJycgKyBib3gudG9wICsgJ3B4JzsKCQl9Cgl9LAoJCglzZXRUZXh0OiBmdW5jdGlvbihuZXdUZXh0KSB7CgkJLy8gc2V0IHRleHQgdG8gYmUgY29waWVkIHRvIGNsaXBib2FyZAoJCXRoaXMuY2xpcFRleHQgPSBuZXdUZXh0OwoJCWlmICh0aGlzLnJlYWR5KSB0aGlzLm1vdmllLnNldFRleHQobmV3VGV4dCk7Cgl9LAoJCglhZGRFdmVudExpc3RlbmVyOiBmdW5jdGlvbihldmVudE5hbWUsIGZ1bmMpIHsKCQkvLyBhZGQgdXNlciBldmVudCBsaXN0ZW5lciBmb3IgZXZlbnQKCQkvLyBldmVudCB0eXBlczogbG9hZCwgcXVldWVTdGFydCwgZmlsZVN0YXJ0LCBmaWxlQ29tcGxldGUsIHF1ZXVlQ29tcGxldGUsIHByb2dyZXNzLCBlcnJvciwgY2FuY2VsCgkJZXZlbnROYW1lID0gZXZlbnROYW1lLnRvU3RyaW5nKCkudG9Mb3dlckNhc2UoKS5yZXBsYWNlKC9eb24vLCAnJyk7CgkJaWYgKCF0aGlzLmhhbmRsZXJzW2V2ZW50TmFtZV0pIHRoaXMuaGFuZGxlcnNbZXZlbnROYW1lXSA9IFtdOwoJCXRoaXMuaGFuZGxlcnNbZXZlbnROYW1lXS5wdXNoKGZ1bmMpOwoJfSwKCQoJc2V0SGFuZEN1cnNvcjogZnVuY3Rpb24oZW5hYmxlZCkgewoJCS8vIGVuYWJsZSBoYW5kIGN1cnNvciAodHJ1ZSksIG9yIGRlZmF1bHQgYXJyb3cgY3Vyc29yIChmYWxzZSkKCQl0aGlzLmhhbmRDdXJzb3JFbmFibGVkID0gZW5hYmxlZDsKCQlpZiAodGhpcy5yZWFkeSkgdGhpcy5tb3ZpZS5zZXRIYW5kQ3Vyc29yKGVuYWJsZWQpOwoJfSwKCQoJc2V0Q1NTRWZmZWN0czogZnVuY3Rpb24oZW5hYmxlZCkgewoJCS8vIGVuYWJsZSBvciBkaXNhYmxlIENTUyBlZmZlY3RzIG9uIERPTSBjb250YWluZXIKCQl0aGlzLmNzc0VmZmVjdHMgPSAhIWVuYWJsZWQ7Cgl9LAoJCglyZWNlaXZlRXZlbnQ6IGZ1bmN0aW9uKGV2ZW50TmFtZSwgYXJncykgewoJCS8vIHJlY2VpdmUgZXZlbnQgZnJvbSBmbGFzaAoJCWV2ZW50TmFtZSA9IGV2ZW50TmFtZS50b1N0cmluZygpLnRvTG93ZXJDYXNlKCkucmVwbGFjZSgvXm9uLywgJycpOwoJCQkJCgkJLy8gc3BlY2lhbCBiZWhhdmlvciBmb3IgY2VydGFpbiBldmVudHMKCQlzd2l0Y2ggKGV2ZW50TmFtZSkgewoJCQljYXNlICdsb2FkJzoKCQkJCS8vIG1vdmllIGNsYWltcyBpdCBpcyByZWFkeSwgYnV0IGluIElFIHRoaXMgaXNuJ3QgYWx3YXlzIHRoZSBjYXNlLi4uCgkJCQkvLyBidWcgZml4OiBDYW5ub3QgZXh0ZW5kIEVNQkVEIERPTSBlbGVtZW50cyBpbiBGaXJlZm94LCBtdXN0IHVzZSB0cmFkaXRpb25hbCBmdW5jdGlvbgoJCQkJdGhpcy5tb3ZpZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRoaXMubW92aWVJZCk7CgkJCQlpZiAoIXRoaXMubW92aWUpIHsKCQkJCQl2YXIgc2VsZiA9IHRoaXM7CgkJCQkJc2V0VGltZW91dCggZnVuY3Rpb24oKSB7IHNlbGYucmVjZWl2ZUV2ZW50KCdsb2FkJywgbnVsbCk7IH0sIDEgKTsKCQkJCQlyZXR1cm47CgkJCQl9CgkJCQkKCQkJCS8vIGZpcmVmb3ggb24gcGMgbmVlZHMgYSAia2ljayIgaW4gb3JkZXIgdG8gc2V0IHRoZXNlIGluIGNlcnRhaW4gY2FzZXMKCQkJCWlmICghdGhpcy5yZWFkeSAmJiBuYXZpZ2F0b3IudXNlckFnZW50Lm1hdGNoKC9GaXJlZm94LykgJiYgbmF2aWdhdG9yLnVzZXJBZ2VudC5tYXRjaCgvV2luZG93cy8pKSB7CgkJCQkJdmFyIHNlbGYgPSB0aGlzOwoJCQkJCXNldFRpbWVvdXQoIGZ1bmN0aW9uKCkgeyBzZWxmLnJlY2VpdmVFdmVudCgnbG9hZCcsIG51bGwpOyB9LCAxMDAgKTsKCQkJCQl0aGlzLnJlYWR5ID0gdHJ1ZTsKCQkJCQlyZXR1cm47CgkJCQl9CgkJCQkKCQkJCXRoaXMucmVhZHkgPSB0cnVlOwoJCQkJdGhpcy5tb3ZpZS5zZXRUZXh0KCB0aGlzLmNsaXBUZXh0ICk7CgkJCQl0aGlzLm1vdmllLnNldEhhbmRDdXJzb3IoIHRoaXMuaGFuZEN1cnNvckVuYWJsZWQgKTsKCQkJCWJyZWFrOwoJCQkKCQkJY2FzZSAnbW91c2VvdmVyJzoKCQkJCWlmICh0aGlzLmRvbUVsZW1lbnQgJiYgdGhpcy5jc3NFZmZlY3RzKSB7CgkJCQkJdGhpcy5kb21FbGVtZW50LmFkZENsYXNzKCdob3ZlcicpOwoJCQkJCWlmICh0aGlzLnJlY292ZXJBY3RpdmUpIHRoaXMuZG9tRWxlbWVudC5hZGRDbGFzcygnYWN0aXZlJyk7CgkJCQl9CgkJCQlicmVhazsKCQkJCgkJCWNhc2UgJ21vdXNlb3V0JzoKCQkJCWlmICh0aGlzLmRvbUVsZW1lbnQgJiYgdGhpcy5jc3NFZmZlY3RzKSB7CgkJCQkJdGhpcy5yZWNvdmVyQWN0aXZlID0gZmFsc2U7CgkJCQkJaWYgKHRoaXMuZG9tRWxlbWVudC5oYXNDbGFzcygnYWN0aXZlJykpIHsKCQkJCQkJdGhpcy5kb21FbGVtZW50LnJlbW92ZUNsYXNzKCdhY3RpdmUnKTsKCQkJCQkJdGhpcy5yZWNvdmVyQWN0aXZlID0gdHJ1ZTsKCQkJCQl9CgkJCQkJdGhpcy5kb21FbGVtZW50LnJlbW92ZUNsYXNzKCdob3ZlcicpOwoJCQkJfQoJCQkJYnJlYWs7CgkJCQoJCQljYXNlICdtb3VzZWRvd24nOgoJCQkJaWYgKHRoaXMuZG9tRWxlbWVudCAmJiB0aGlzLmNzc0VmZmVjdHMpIHsKCQkJCQl0aGlzLmRvbUVsZW1lbnQuYWRkQ2xhc3MoJ2FjdGl2ZScpOwoJCQkJfQoJCQkJYnJlYWs7CgkJCQoJCQljYXNlICdtb3VzZXVwJzoKCQkJCWlmICh0aGlzLmRvbUVsZW1lbnQgJiYgdGhpcy5jc3NFZmZlY3RzKSB7CgkJCQkJdGhpcy5kb21FbGVtZW50LnJlbW92ZUNsYXNzKCdhY3RpdmUnKTsKCQkJCQl0aGlzLnJlY292ZXJBY3RpdmUgPSBmYWxzZTsKCQkJCX0KCQkJCWJyZWFrOwoJCX0gLy8gc3dpdGNoIGV2ZW50TmFtZQoJCQoJCWlmICh0aGlzLmhhbmRsZXJzW2V2ZW50TmFtZV0pIHsKCQkJZm9yICh2YXIgaWR4ID0gMCwgbGVuID0gdGhpcy5oYW5kbGVyc1tldmVudE5hbWVdLmxlbmd0aDsgaWR4IDwgbGVuOyBpZHgrKykgewoJCQkJdmFyIGZ1bmMgPSB0aGlzLmhhbmRsZXJzW2V2ZW50TmFtZV1baWR4XTsKCQkJCgkJCQlpZiAodHlwZW9mKGZ1bmMpID09ICdmdW5jdGlvbicpIHsKCQkJCQkvLyBhY3R1YWwgZnVuY3Rpb24gcmVmZXJlbmNlCgkJCQkJZnVuYyh0aGlzLCBhcmdzKTsKCQkJCX0KCQkJCWVsc2UgaWYgKCh0eXBlb2YoZnVuYykgPT0gJ29iamVjdCcpICYmIChmdW5jLmxlbmd0aCA9PSAyKSkgewoJCQkJCS8vIFBIUCBzdHlsZSBvYmplY3QgKyBtZXRob2QsIGkuZS4gW215T2JqZWN0LCAnbXlNZXRob2QnXQoJCQkJCWZ1bmNbMF1bIGZ1bmNbMV0gXSh0aGlzLCBhcmdzKTsKCQkJCX0KCQkJCWVsc2UgaWYgKHR5cGVvZihmdW5jKSA9PSAnc3RyaW5nJykgewoJCQkJCS8vIG5hbWUgb2YgZnVuY3Rpb24KCQkJCQl3aW5kb3dbZnVuY10odGhpcywgYXJncyk7CgkJCQl9CgkJCX0gLy8gZm9yZWFjaCBldmVudCBoYW5kbGVyIGRlZmluZWQKCQl9IC8vIHVzZXIgZGVmaW5lZCBoYW5kbGVyIGZvciBldmVudAoJfQoJCn07Cg==]]></data>
	</file>
	<file>
	  <filename>/includes/zeroclipboard/ZeroClipboard.swf</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[Q1dTCYgGAAB4nH1V61LbRhTeXV2OJNsYczFgIEC4JCGABSRpSy+B2JDQQtWJocl0BqK1tUZqhOSRZAj/8ih9hz5AXsGZTl+ndHUhxU2nO56z3/l05uye7+wc6xr6DeUxqpcUhFCNXF9ffxjNcYhRo8U8NruO0IeRLTkm+BpEa4i8/+t3GRGUrRf5tktDe41dMC8Kpd14Q/DM911GPfHCd6zCLyzwa67Tafo0sAppuOWEHZdeyY1O4ERMbnajyPcKIYteUM+qdYPQD/It12m9jX2XBcSx5EYUON6ZwunOEXsXAY+O94HsAu8iFnjULe1mYN/je5u2WLnvAsnRNGrZ6rnfDZlxwQKxRV1XSd1ulPJ1/9KDBB13pDCiZ2ygEdsGj2WHvsXU3dc7taM3e/tHanjDZVqEV2HEzpUGa3V5dVd4Ocfz+5d1/5w6nnbgU4sF+17bFwPfjzT3k691aEDPGb92KBvNX1krmrOjqLNVrVLLb7K1ln9e3WlsVjd0/Um12XXcyPFy6ZHdyHHDkT5tt1JtF/rJerqn6Wu+F/ErsWCmPyiRjrYi54KlgZP/k2Tq9gPYSh5APZOYBVra2VicAtfyn+4qZwHt2E4rVJvszPH2HNcVD2lkS5eOxW3b9f1AtplzZkeKFdDLl/wkibodmyrUsmq241raYdye5ECpdrBf+2GQf0ncA4c3gJelHRrHjd03xs+7L9UMHh9lZN149aOSwuOfcnFO3qQmbb0V44aoSVEXlHeikXQzz1/bpzek8E50XN6o4r/KLfQpU/pMx/J/yz9cxmWhDOOyhMqD5SkJjQnKYnmpIlfuVe5XHlSWKw8rC6QoEayoWk7MFwaKg6Whx4AJEBGIBEQGQQFJBaKBlAMpD6QA0gCQIsglICNAxkGYAFIBMgkwDWQGhFkgc0DuApkHsqDmMZAVIKtA1oBUgejqOmc21E1uHwF5DOQJ4C+AfAnkKyBbQL4G8g2Qb4F8B+o2wA6QZ4DrIOyCsAfCcw0lUwR/ZvgiOP3IhwgWcDZIsCipIpJkPmskBBiBgpGiIqQJOJdYPqbiOaRiUcRIQ5hrIfT055ySiKYVzMLKkKmuDM8aAyInyW1yNCOF22Q5I8Xb5FhGSjLR8n/gnv5q+U+9t4/MojnYLtEhc3jljjGCGT4Z7bXL7bG9Udwefz9xjk9Vhl3crtjqqXwifS8hWzblJToZmylTbk+vYuMOjsECWjZnkuDZvTmcwbscGvOiKVcxXThZNGVjkQebS+17pmLcJwl8sI1v4PI2uYEPt4UbuLItxrCwoplgrMagaOZTENf2NK0NryE8gWRCVE3p6ae5j3aOFwyZb8of6RT3FYn7Y9yvmjlDx1mKGncSfVTC9Z/v6QyZE7q5rpsburmpm490U+K/12g6WXYc+nR4CKX/H31zGG1z5m9Pt5ok]]></data>
	</file>
	<file>
	  <filename>/includes/zeroclipboard/ZeroClipboard10.swf</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[Q1dTChQHAAB4nH1V63LTRhTeXUs6kmzHzs0QE0iAcAshVriTXkiwHQjEqIOdwnSGQWt5FanIkkeSE/jHo/Qd+gD86QOIH/3fJyldXXAT6HRHc853Ph3t7rnMkaai31AJo9a0jBBqks+fP3+cL3KIUddkHlveQOjj3B9SQvBVReuIfPj7dwkRlK/nJculob3ODpkXhWI7UQge+b7LqCcc+s6g8gsL/KbrjPo+DQYbWjn7YOCEI5e+l7qjwImY1B9Hke+VQxY9od6gOQ5CPyiZrmO+TWyXBcQZSN0ocLwDmdOjHnsXAfdO9FR+hXcRCzzqTrdzsOtxbVGT1U5cIT2aRqatDP1xyPRDFggmdV05M8dRxrf8Iw9StD8Sw4gesKluIrvcl3X8AVPar7abvTc7uz0l/MLl2QjfhxEbyl1mjnl07/Fqke/vH7X8IXU8dc+nAxbsepYvBL4fqe7EVkc0oEPGrx1Kev9XZkbn7SgabTYadOD32brpDxvb3VuNm5p2t9EfO27keMXsyHHkuOHcidxuZrldOUm2Mp1t3/S9iF+JBUsnndLUUTNyDlnmeOZ/Nlk83gKbaQu08hSzQM0qmySnzHP5b3Xlg4CObMcMlT47cLwdx3WFDo1s8cgZcGm5vh9INnMO7EgeBPToBT9JpO7IpjIdDJq24w7UTlKe9ECxubfbfFblb1Jzz+EF4GGpHX2/236j/9x+oeRwv5eTLf3lczmD+z8Vkz15kfrUfCskBVHSoA5pEH5pWBa+jfyRMumj6kFyAnUnhGjypg+qE3vHD4Y0Cou99iveJvqLznYvadkWjWjxSa+zl3Myr+rI5UWvfJW68oksT39Tk9p/l3KuhmuFGpyWRFSr1hZFdKogX6pdrkv1K/Wr9Wv11fr1+kptm1REgmVFLQql8lSlOj2zCZgAEYCIQCQoyCAqQFQQiyCWgJRBnAJSAWkayByQ01BYAFIHcgbgLJAlKCwDOQ/kApCLQFaUEgayBuQGkHUgDSCassGZm8otLm8DuQPkLuB7QO4DeQBkE8h3QL4H8gOQH0HZgtlHQJpAWjDbBrID5DGQJ4CfQuEZFPag0FFROqTwN4IvgrOXfEbhAs7nFBZERUCixEeZiAAjkDGSFYTUAi6mkk/BZMwpWBAwUhHmqSnE2mNOiURVy0Z5bcZQ1maX9SmBk+Q4OZ+TheNkLSeF4+SpnBQlopb+wrH2cvVPLd5FRsWoWtN0xphdO6fPYYZfz8dWzTq1M4+t0x8Whjhm2MVW3Vbi1+JTEdlSbEmX6ZlULnJpnb2B9XM4RSto1VhK/Zd3zuMcXuBQvyhwhwamK68vcaBfSvyNy9aV2JL1qyQzrm3hCV7dIhN8faswwWtbAsc8JjW2QL+RoEpslTI0E1vK2sMsULyO8AKSCFFUiLX4k13kwUNiKty0pE90kROyyIk7sWY0LE3fQIkyblq3Yquo3ya5dSe38v13EzNNpUJ4qS7GGkPGgmbc1Yx7mnFfMx5ohsifV+hsuuzE9eHsHMr+ZF/9ktAW5/4BvdnQmw==]]></data>
	</file>
	<file>
	  <filename>/index.html</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[]]></data>
	</file>
	<file>
	  <filename>/lang/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lang/en_US.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCg0KDQokbGFuZ1snZnJpZW5kbHluYW1lJ10gPSAnU2NyaXB0IERlcGxveSc7DQokbGFuZ1sncG9zdGluc3RhbGwnXSA9ICdUaGUgZmlyc3Qgc3RvcCB5b3VcJ2xsIHdhbnQgdG8gbWFrZSBpcyB0aGUgaGVscCc7DQokbGFuZ1sncG9zdHVuaW5zdGFsbCddID0gJ1BsZWFzZSBmZWVsIGZyZWUgdG8gbGV0IHVzIGtub3cgaWYgdGhlcmUgaXMgYSB3YXkgdG8gbWFrZSBTY3JpcHREZXBsb3kgYmV0dGVyLCA8YSBocmVmPSJodHRwOi8vaGVscC5jb3JiZW5zcHJvZHVjdHMuY29tL21ha2UtY29udGFjdC5odG1sIj5Db250YWN0IHVzIHdlXCdlciBoYXBweSB0byBoZWFyIGZyb20geW91LjwvYT4nOw0KJGxhbmdbJ3JlYWxseV91bmluc3RhbGwnXSA9ICdVbmluc3RhbGxpbmcgdGhpcyBtb2R1bGUgd2lsbCBub3QgYWZmZWN0IGFueSBldmVudCBkYXRhIGFuZCBhbGwgYm9va3MgdG8gZGF0ZSB3aWxsIHN0aWxsIGJlIHRoZXJlLiBEbyB5b3Ugd2lzaCB0byBjb250aW51ZT8nOw0KJGxhbmdbJ3VuaW5zdGFsbGVkJ10gPSAnTW9kdWxlIFVuaW5zdGFsbGVkLic7DQokbGFuZ1snaW5zdGFsbGVkJ10gPSAnTW9kdWxlIHZlcnNpb24gJXMgaW5zdGFsbGVkLic7DQokbGFuZ1sndXBncmFkZWQnXSA9ICdNb2R1bGUgdXBncmFkZWQgdG8gdmVyc2lvbiAlcy4nOw0KDQovLy9BZG1pbg0KJGxhbmdbJ21vZHVsZV9vcHRpb25zJ10gPSAnTW9kdWxlIE9wdGlvbnMnOw0KJGxhbmdbJ3RlbXBsYXRlX21hbmcnXSA9ICdUZW1wbGF0ZXMnOw0KJGxhbmdbJ0RlcGxveW1lbnRzZXR0aW5ncyddID0gJ0RlcGxveW1lbnQgT3B0aW9ucyc7DQokbGFuZ1snVmFsc2V0dGluZ3MnXSA9ICdWYWxpZGF0aW9uJzsNCg0KDQoNCg0KLy9sYW5nIGFycmF5IHZhbHVlcw0KJGxhbmdbImVuIl09J0VuZ2xpc2gnOw0KJGxhbmdbImZyIl09J0ZyYW4mY2NlZGlsO2FpcyAoRnJlbmNoKSc7DQokbGFuZ1siaXQiXT0nSXRhbGlhbm8gKEl0YWxpYW4pJzsNCiRsYW5nWyJrbyJdPSdLb3JlYW4nOw0KJGxhbmdbImphIl09J0phcGFuZXNlJzsNCiRsYW5nWyJlcyJdPSdFc3BhJm50aWxkZTtvbCAoU3BhbmlzaCknOw0KJGxhbmdbInpoLWNuIl09J0NoaW5lc2UnOw0KJGxhbmdbIm5sIl09J05lZGVybGFuZHMgKER1dGNoKSc7DQokbGFuZ1siZGUiXT0nRGV1dHNjaCAoR2VybWFuKSc7DQokbGFuZ1sicGwiXT0nUG9sc2tpIChQb2xpc2gpJzsNCiRsYW5nWyJybyJdPSdSb21hbmlhbic7DQokbGFuZ1siY3MiXT0nJiMyMDA7ZSYjMzUzO3RpbmEnOw0KJGxhbmdbImJnIl09J0J1bGdhcmlhJzsNCiRsYW5nWyJzdiJdPSdTdmVuc2thJzsNCiRsYW5nWyJmYSJdPSdQZXJzaWFuIChGYXJzaSknOw0KJGxhbmdbInJ1Il09J1J1c3NpYW4gJzsNCiRsYW5nWyJwdC1CUiJdPScgQnJhemlsbGlhbiBQb3J0dWd1ZXNlIChzdGFuZGFyZCknOw0KDQoNCg0KDQokbGFuZ1siTG5vbmUiXT0nTm8gV2FybmluZ3MnOw0KJGxhbmdbIkwwIl09J0xldmVsIDAnOw0KJGxhbmdbIkwxIl09J0xldmVsIDEnOw0KJGxhbmdbIkwyIl09J0xldmVsIDInOw0KDQoNCiRsYW5nWyJjc3MxIl09J0NTUyAxJzsNCiRsYW5nWyJjc3MyIl09J0NTUyAyJzsNCiRsYW5nWyJjc3MyMSJdPSdDU1MgMi4xJzsNCiRsYW5nWyJjc3MzIl09J0NTUyAzJzsNCiRsYW5nWyJzdmciXT0nU1ZHJzsNCiRsYW5nWyJzdmdiYXNpYyJdPSdTVkcgYmFzaWMnOw0KJGxhbmdbInN2Z3RpbnkiXT0nU1ZHIHRpbnknOw0KJGxhbmdbIm1vYmlsZSJdPSdtb2JpbGUnOw0KJGxhbmdbImF0c2MtdHYiXT0nYXRzYy10dic7DQokbGFuZ1sidHYiXT0nVFYnOw0KJGxhbmdbIm5vbmUiXT0nbm9uZSc7DQoNCg0KDQokbGFuZ1snSW5saW5lJ109J2RldGVjdCBhdXRvbWF0aWNhbGx5JzsNCiRsYW5nWydIVE1MNSddPSdIVE1MNSAoZXhwZXJpbWVudGFsKSc7DQokbGFuZ1snWEhUTUwgMS4wIFN0cmljdCddPSdYSFRNTCAxLjAgU3RyaWN0JzsNCiRsYW5nWydYSFRNTCAxLjAgVHJhbnNpdGlvbmFsJ109J1hIVE1MIDEuMCBUcmFuc2l0aW9uYWwnOw0KJGxhbmdbJ1hIVE1MIDEuMCBGcmFtZXNldCddPSdYSFRNTCAxLjAgRnJhbWVzZXQnOw0KJGxhbmdbJ0hUTUwgNC4wMSBTdHJpY3QnXT0nSFRNTCA0LjAxIFN0cmljdCc7DQokbGFuZ1snSFRNTCA0LjAxIFRyYW5zaXRpb25hbCddPSdIVE1MIDQuMDEgVHJhbnNpdGlvbmFsJzsNCiRsYW5nWydIVE1MIDQuMDEgRnJhbWVzZXQnXT0nSFRNTCA0LjAxIEZyYW1lc2V0JzsNCiRsYW5nWydIVE1MIDMuMiddPSdIVE1MIDMuMic7DQokbGFuZ1snSFRNTCAyLjAnXT0nSFRNTCAyLjAnOw0KJGxhbmdbJ0lTTy9JRUMgMTU0NDU6MjAwMCAoJnF1b3Q7SVNPIEhUTUwmcXVvdDspJ109J0lTTy9JRUMgMTU0NDU6MjAwMCAoIklTTyBIVE1MIiknOw0KJGxhbmdbJ1hIVE1MIDEuMSddPSdYSFRNTCAxLjEnOw0KJGxhbmdbJ1hIVE1MICsgUkRGYSddPSdYSFRNTCArIFJERmEnOw0KJGxhbmdbJ1hIVE1MIEJhc2ljIDEuMCddPSdYSFRNTCBCYXNpYyAxLjAnOw0KJGxhbmdbJ1hIVE1MIEJhc2ljIDEuMSddPSdYSFRNTCBCYXNpYyAxLjEnOw0KJGxhbmdbJ1hIVE1MIE1vYmlsZSBQcm9maWxlIDEuMiddPSdYSFRNTCBNb2JpbGUgUHJvZmlsZSAxLjInOw0KJGxhbmdbJ1hIVE1MLVByaW50IDEuMCddPSdYSFRNTC1QcmludCAxLjAnOw0KJGxhbmdbJ1hIVE1MIDEuMSBwbHVzIE1hdGhNTCAyLjAnXT0nWEhUTUwgMS4xIHBsdXMgTWF0aE1MIDIuMCAnOw0KJGxhbmdbJ1hIVE1MIDEuMSBwbHVzIE1hdGhNTCAyLjAgcGx1cyBTVkcgMS4xJ109J1hIVE1MIDEuMSBwbHVzIE1hdGhNTCAyLjAgcGx1cyBTVkcgMS4xICc7DQokbGFuZ1snTWF0aE1MIDIuMCddPSdNYXRoTUwgMi4wJzsNCiRsYW5nWydTVkcgMS4wJ109J1NWRyAxLjAnOw0KJGxhbmdbJ1NWRyAxLjEnXT0nU1ZHIDEuMSc7DQokbGFuZ1snU1ZHIDEuMSBUaW55J109J1NWRyAxLjEgVGlueSc7DQokbGFuZ1snU1ZHIDEuMSBCYXNpYyddPSdTVkcgMS4xIEJhc2ljJzsNCiRsYW5nWydTTUlMIDEuMCddPSdTTUlMIDEuMCc7DQokbGFuZ1snU01JTCAyLjAnXT0nU01JTCAyLjAnOw0KDQoNCg0KJGxhbmdbJ2RlZmF1bHRQYWdlX2xhYmxlJ109J0NoZWNrIGFnYWluc3QgdGhpcyBwYWdlJzsNCg0KJGxhbmdbJ2VuY29kaW5nX2xhYmxlJ109J0VuY29kaW5nJzsNCiRsYW5nWydkZXRlY3QnXT0nZGV0ZWN0IGF1dG9tYXRpY2FsbHknOw0KJGxhbmdbJ3V0Zi04J109J3V0Zi04IChVbmljb2RlLCB3b3JsZHdpZGUpJzsNCiRsYW5nWyd1dGYtMTYnXT0ndXRmLTE2IChVbmljb2RlLCB3b3JsZHdpZGUpJzsNCiRsYW5nWydpc28tODg1OS0xJ109J2lzby04ODU5LTEgKFdlc3Rlcm4gRXVyb3BlKSc7DQokbGFuZ1snaXNvLTg4NTktMiddPSdpc28tODg1OS0yIChDZW50cmFsIEV1cm9wZSknOw0KJGxhbmdbJ2lzby04ODU5LTMnXT0naXNvLTg4NTktMyAoU291dGhlcm4gRXVyb3BlKSc7DQokbGFuZ1snaXNvLTg4NTktNCddPSdpc28tODg1OS00IChOb3J0aCBFdXJvcGVhbiknOw0KJGxhbmdbJ2lzby04ODU5LTUnXT0naXNvLTg4NTktNSAoQ3lyaWxsaWMpJzsNCiRsYW5nWydpc28tODg1OS02LWknXT0naXNvLTg4NTktNi1pIChBcmFiaWMpJzsNCiRsYW5nWydpc28tODg1OS03J109J2lzby04ODU5LTcgKEdyZWVrKSc7DQokbGFuZ1snaXNvLTg4NTktOCddPSdpc28tODg1OS04IChIZWJyZXcsIHZpc3VhbCknOw0KJGxhbmdbJ2lzby04ODU5LTgtaSddPSdpc28tODg1OS04LWkgKEhlYnJldywgbG9naWNhbCknOw0KJGxhbmdbJ2lzby04ODU5LTknXT0naXNvLTg4NTktOSAoVHVya2lzaCknOw0KJGxhbmdbJ2lzby04ODU5LTEwJ109J2lzby04ODU5LTEwIChMYXRpbiA2KSc7DQokbGFuZ1snaXNvLTg4NTktMTEnXT0naXNvLTg4NTktMTEgKExhdGluL1RoYWkpJzsNCiRsYW5nWydpc28tODg1OS0xMyddPSdpc28tODg1OS0xMyAoTGF0aW4gNywgQmFsdGljIFJpbSknOw0KJGxhbmdbJ2lzby04ODU5LTE0J109J2lzby04ODU5LTE0IChMYXRpbiA4LCBDZWx0aWMpJzsNCiRsYW5nWydpc28tODg1OS0xNSddPSdpc28tODg1OS0xNSAoTGF0aW4gOSknOw0KJGxhbmdbJ2lzby04ODU5LTE2J109J2lzby04ODU5LTE2IChMYXRpbiAxMCknOw0KJGxhbmdbJ3VzLWFzY2lpJ109J3VzLWFzY2lpIChiYXNpYyBFbmdsaXNoKSc7DQokbGFuZ1snZXVjLWpwJ109J2V1Yy1qcCAoSmFwYW5lc2UsIFVuaXgpJzsNCiRsYW5nWydzaGlmdF9qaXMnXT0nc2hpZnRfamlzIChKYXBhbmVzZSwgV2luL01hYyknOw0KJGxhbmdbJ2lzby0yMDIyLWpwJ109J2lzby0yMDIyLWpwIChKYXBhbmVzZSwgZW1haWwpJzsNCiRsYW5nWydldWMta3InXT0nZXVjLWtyIChLb3JlYW4pJzsNCiRsYW5nWydnYjIzMTInXT0nZ2IyMzEyIChDaGluZXNlLCBzaW1wbGlmaWVkKSc7DQokbGFuZ1snZ2IxODAzMCddPSdnYjE4MDMwIChDaGluZXNlLCBzaW1wbGlmaWVkKSc7DQokbGFuZ1snYmlnNSddPSdiaWc1IChDaGluZXNlLCB0cmFkaXRpb25hbCknOw0KJGxhbmdbJ2JpZzUtSEtTQ1MnXT0nQmlnNS1IS1NDUyAoQ2hpbmVzZSwgSG9uZyBLb25nKSc7DQokbGFuZ1sndGlzLTYyMCddPSd0aXMtNjIwIChUaGFpKSc7DQokbGFuZ1sna29pOC1yJ109J2tvaTgtciAoUnVzc2lhbiknOw0KJGxhbmdbJ2tvaTgtdSddPSdrb2k4LXUgKFVrcmFpbmlhbiknOw0KJGxhbmdbJ2lzby1pci0xMTEnXT0naXNvLWlyLTExMSAoQ3lyaWxsaWMgS09JLTgpICAnOw0KJGxhbmdbJ21hY2ludG9zaCddPSdtYWNpbnRvc2ggKE1hY1JvbWFuKSc7DQokbGFuZ1snd2luZG93cy0xMjUwJ109J3dpbmRvd3MtMTI1MCAoQ2VudHJhbCBFdXJvcGUpJzsNCiRsYW5nWyd3aW5kb3dzLTEyNTEnXT0nd2luZG93cy0xMjUxIChDeXJpbGxpYyknOw0KJGxhbmdbJ3dpbmRvd3MtMTI1MiddPSd3aW5kb3dzLTEyNTIgKFdlc3Rlcm4gRXVyb3BlKSc7DQokbGFuZ1snd2luZG93cy0xMjUzJ109J3dpbmRvd3MtMTI1MyAoR3JlZWspJzsNCiRsYW5nWyd3aW5kb3dzLTEyNTQnXT0nd2luZG93cy0xMjU0IChUdXJraXNoKSc7DQokbGFuZ1snd2luZG93cy0xMjU1J109J3dpbmRvd3MtMTI1NSAoSGVicmV3KSc7DQokbGFuZ1snd2luZG93cy0xMjU2J109J3dpbmRvd3MtMTI1NiAoQXJhYmljKSc7DQokbGFuZ1snd2luZG93cy0xMjU3J109J3dpbmRvd3MtMTI1NyAoQmFsdGljIFJpbSknOw0KDQoNCiRsYW5nWydhdXRvJ109J0F1dG8gR2VuZXJhdGVkIENvbnRlbnQnOw0KJGxhbmdbJ3VzZXJDaG9pY2UnXT0nQ2hvb3NlIGEgUGFnZSc7DQokbGFuZ1sndXNlckdlbmVyYXRlZCddPSdTZXQgeW91ciBDb250ZW50JzsNCg0KDQokbGFuZ1sic2F2ZVZBTHNldHRpbmdzIl09J1NhdmUgVmFsaWRhdGlvbiBTZXR0aW5ncyc7DQokbGFuZ1sic2V0dGluZ3MiXT0iU2V0dGluZ3MiOw0KJGxhbmdbInNldHRpbmdzc2F2ZWQiXT0nU2V0dGluZ3Mgc2F2ZWQnOw0KJGxhbmdbImxlYXZlY29kZSJdPSJEbyBub3QgdG91Y2ggY29kZSI7DQokbGFuZ1siZm9ybWF0Y29kZSJdPSJGb3JtYXQgdGhlIGNvZGUgbmljZWx5IjsNCiRsYW5nWyJzY3JhbWJsZWNvZGUiXT0iU2NyYW1ibGUgdGhlIGNvZGUiOw0KJGxhbmdbImNsZWFuY29kZSJdPSJDbGVhbiB1cCB0aGUgY29kZSByZW1vdmluZyBzdHVmZiB0aGF0IGRvZXNuJ3QgbWF0dGVyIjsNCiRsYW5nWyJzZXR0aW5nc3NhdmVkIl09IlRoZSBzZXR0aW5ncyB3YXMgc2F2ZWQiOw0KJGxhbmdbInNhdmVzZXR0aW5ncyJdPSJTYXZlIHNldHRpbmdzIjsNCiRsYW5nWyJtYW5nbGV0eXBldGV4dCJdPSJIb3cgdG8gZm9ybWF0IHRoZSBjb2RlIjsNCiRsYW5nWyJicmllZiJdPSJCcmllZiI7DQokbGFuZ1sidmVyYm9zZSJdPSJWZXJib3NlIjsNCiRsYW5nWyJjb2RlZml4ZXMiXT0iQ29kZSBmaXhlcyI7DQokbGFuZ1siZm9yY2Vsb3dlcnRhZ3N0ZXh0Il09IkZvcmNlIHRhZ3MgdG8gbG93ZXJjYXNlIjsNCiRsYW5nWyJmb3JjZWxvd2VydGFnc2hlbHAiXT0iRm9yIGJldHRlciBYSFRNTC1jb21wYXRpYmlsaXR5IjsNCiRsYW5nWyJoaWRlbWVzc2FnZXN0ZXh0Il09IkhpZGUgbWVzc2FnZXMgaW4gYm90dG9tIG9mICh4KWh0bWwtY29kZSI7DQokbGFuZ1siaW5kZW50d2lkdGh0ZXh0Il09IldpZHRoIG9mIGluZGVudGF0aW9uIjsNCiRsYW5nWyJzcGFjZXMiXT0iU3BhY2VzIjsNCiRsYW5nWyJkZWJ1Z2xldmVsdGV4dCJdPSJBbW91bnQgb2YgZGVidWdnaW5nIG91dHB1dDogIjsNCiRsYW5nWyJkZWJ1Z3RleHQiXT0iQ29kZSBkZWJ1ZyBtb2RlIjsNCg0KDQokbGFuZ1snU2NyaXB0X2xpc3QnXSA9ICdTY3JpcHRzJzsNCiRsYW5nWydBc3NfaGVhZGVyJ10gPSAnVW5pZmllZCBTY3JpcHRzJzsNCiRsYW5nWydTYW1wbGVUYWcnXSA9ICdTYW1wbGUgVGFnJzsNCg0KJGxhbmdbJ3Byb21wdF9uZXdTY3JpcHQnXSA9ICdBZGQgc2NyaXB0JzsNCiRsYW5nWydwcm9tcHRfbmV3U2NyaXB0QXNzJ10gPSAnQWRkIHNjcmlwdCBncm91cGluZyc7DQokbGFuZ1sncHJvbXB0X2FkZHRlbXBsYXRlJ10gPSAnQWRkIHRlbXBsYXRlJzsNCg0KDQokbGFuZ1snYWRkTGliX2xhYmVsJ10gPSAnQWRkIGEgbGlicmFyeSc7DQoNCg0KDQokbGFuZ1sndGl0bGVfR3JvdXBzJ10gPSAnR3JvdXBlZCBTY3JpcHQgTGlzdCc7DQokbGFuZ1sndGl0bGVfU2NyaXB0cyddID0gJ1NpbmdsZSBTY3JpcHRzIExpc3QnOw0KJGxhbmdbJ2FyZXlvdXN1cmUnXSA9ICdJbXBvcnRhbnQ6XG5cbklmIHRoaXMgaXMgZGVsZXRlZCBhbGwgaW5mb3JtYXRpb24gd2lsbCBiZSBsb3N0IVxuXG5JZiB5b3UgaGF2ZSB0aGlzIHNjcmlwdCBpbiBhIGdyb3VwIHlvdSB3aWxsIGJyZWFrIHRoZSB0aWUgYW5kIHdpbGwgbmVlZCB0byBlZGl0IHRoZSBncm91cC5cbkl0IGlzIGJlc3QgdG8gc3RhcnQgdGhlIGRlbGV0aW9uIHByb2Nlc3MgZnJvbSB0aGUgQXNzaWdubWVudCBhcmVhLlxuXG5ZT1UgQUxTTyBMT1NFIFlPVVIgUkVWSVNJT04gSElTVE9SWSBGT1IgVEhJUyBTQ1JJUFQuLiBBUkUgWU9VIFJFQUxZIFNVUkU/Pz8nOw0KDQovLy9UaXBzIC0tDQokbGFuZ1snc21hcnR5SG93J10gPSAnVGhlIHNtYXJ0eSB3b3JrcyBsaWtlIHRoaXMgaW4gSlMgYW5kIENTUy4uLiBXaGVyZSB5b3VcJ2QgaGF2ZSB7JHNtYXJ0eS5ub3d9IHlvdSBkbyB7eyRzbWFydHkubm93fX0gIC4gIE5vdyB5b3UgY2FuIGRvIHNtYXJ0eSBzdHVmZi4gIFNtYXJ0eSAzIGFjY291bnRzIGZvciB0aGlzIGFuZCBzbyBDTVNNUyAyLjAgd2lsbCBub3QgbmVlZCB0aGUge3sgfX0nOw0KJGxhbmdbJ3RpcF9nZW5lcmFsX3NtYXJ0eSddID0gJ1RoZSBzbWFydHkgd29ya3MgbGlrZSB0aGlzIGluIEpTIGFuZCBDU1MuLi4gV2hlcmUgeW91XCdkIGhhdmUgeyRzbWFydHkubm93fSB5b3UgZG8ge3skc21hcnR5Lm5vd319ICAuICBOb3cgeW91IGNhbiBkbyBzbWFydHkgc3R1ZmYuICBTbWFydHkgMyBhY2NvdW50cyBmb3IgdGhpcyBhbmQgc28gQ01TTVMgMi4wIHdpbGwgbm90IG5lZWQgdGhlIHt7IH19JzsNCiRsYW5nWyd0aXBfZ2VuZXJhbF9ncm91cGluZyddID0gJ0pvaW5pbmcgeW91ciBDU1MgZmlsZXMgc3BlZWRzIHVwIHlvdXIgdXNlcnMgZXhwZXJpZW5jZSBhbmQgaGVscCB5b3UgZ2V0IGNsb3NlciB0byBhbiAiQSIgaW4gPGEgaHJlZj0iaHR0cDovL2RldmVsb3Blci55YWhvby5jb20veXNsb3cvIiB0YXJnZXQ9Il9ibGFuayI+eVNsb3c8L2E+JzsNCiRsYW5nWyd0aXBfZWRpdG9yX3RhYiddID0gJ0RpZCB5b3Uga25vdyB0aGF0IHlvdSBjYW4gdXNlIHRoZSBUYWIga2V5IHRvIGluZGVudCB5b3UgY29kZT8gIFRyeSBpdCBvdXQuJzsNCiRsYW5nWyd0aXBfZWRpdG9yX3NlYXJjaE5yZXBsYWNlJ10gPSAnRGlkIHlvdSBrbm93IHRoYXQgeW91IGNhbiB1c2UgcmVndWxhciBleHByZXNzaW9uIHRvIHF1aWNrbHkgc2VhcmNoIGFuZCByZXBsYWNlPyAgVXNlIEN0cmwrZiBpbiB0aGUgZWRpdG9yIHRvIGJyaW5nIHVwIHRoZSBib3guJzsNCiRsYW5nWyd0aXBfZWRpdG9yX3Jlc2V0SGlnaGxpZ2h0J10gPSAnSWYgeW91IGFyZSBzZWVpbmcgZG91YmxlcyBpbiB0aGUgZWRpdG9yLCBpZTogdGhlIGhpZ2hsaWdodCBpcyBkZXN5bmNyb25pemVkIGZyb20gdGV4dCBqdXN0IHVzZSB0aGUgcmVzZXQgaGlnaGxpZ2h0IGJ1dHRvbiA8aW1nIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgb25tb3VzZWRvd249ImVkaXRBcmVhLnJlc3RvcmVBbmRTd2l0Y2hDbGFzcyh0aGlzLFwnZWRpdEFyZWFCdXR0b25Eb3duXCcpOyIgb25tb3VzZW91dD0iZWRpdEFyZWEucmVzdG9yZUNsYXNzKHRoaXMpOyIgb25tb3VzZW92ZXI9ImVkaXRBcmVhLnN3aXRjaENsYXNzKHRoaXMsXCdlZGl0QXJlYUJ1dHRvbk92ZXJcJyk7IiBjbGFzcz0iZWRpdEFyZWFCdXR0b25Ob3JtYWwiIHRpdGxlPSJyZXNldCBoaWdobGlnaHQgKGVkKSIgc3JjPSIuLi9tb2R1bGVzL1NjcmlwdERlcGxveS9pbmNsdWRlcy9lZGl0X2FyZWEvaW1hZ2VzL3Jlc2V0X2hpZ2hsaWdodC5naWYiIGlkPSJyZXNldF9oaWdobGlnaHQiPic7DQokbGFuZ1sndGlwX3RlbXBsYXRlX3NtYXJ0eSddID0gJ1NtYXJ0eSBzeW50YXggaXMgdGhlIHNhbWUgYXMgZXZlcnl3aGVyZSBlbHNlIGp1c3QgYSBzdHJhaWdodCB7JHNtYXJ0eS5ub3d9LiAgVGhlIHt7IH19IGlzIGZvciB0aGUgQ1NTIGFuZCBKUyBhcyB7fSBhcmUgaW4gdGhlaXIgc3ludGF4LiAgU21hcnR5IDMgYWNjb3VudHMgZm9yIHRoaXMgYW5kIHNvIENNU01TIDIuMCB3aWxsIG5vdCBuZWVkIHRoZSB7eyB9fSc7DQokbGFuZ1sndGlwX2dyb3VwX2RyYWdOZHJvcCddID0gJ3RvIGdldCBzdGFydGVkIGp1c3QgZHJhZyBmcm9tIHRoZSBwb29sIHRvIHRoZSBncm91cFwncyBsaXN0JzsNCg0KDQoNCg0KDQoNCg0KJGxhbmdbJ2FsbCddPSdTdWl0YWJsZSBmb3IgYWxsIGRldmljZXMuJzsNCiRsYW5nWydhdXJhbCddPScgSW50ZW5kZWQgZm9yIHNwZWVjaCBzeW50aGVzaXplcnMuJzsNCiRsYW5nWydicmFpbGxlJ109J0ludGVuZGVkIGZvciBicmFpbGxlIHRhY3RpbGUgZmVlZGJhY2sgZGV2aWNlcy4nOw0KJGxhbmdbJ2VtYm9zc2VkJ109J0ludGVuZGVkIGZvciBwYWdlZCBicmFpbGxlIHByaW50ZXJzLic7DQokbGFuZ1snaGFuZGhlbGQnXT0nSW50ZW5kZWQgZm9yIGhhbmRoZWxkIGRldmljZXMnOw0KJGxhbmdbJ3ByaW50J109J0ludGVuZGVkIGZvciBwYWdlZCwgb3BhcXVlIG1hdGVyaWFsIGFuZCBmb3IgZG9jdW1lbnRzIHZpZXdlZCBvbiBzY3JlZW4gaW4gcHJpbnQgcHJldmlldyBtb2RlLic7DQokbGFuZ1sncHJvamVjdGlvbiddPScgSW50ZW5kZWQgZm9yIHByb2plY3RlZCBwcmVzZW50YXRpb25zLCBmb3IgZXhhbXBsZSBwcm9qZWN0b3JzIG9yIHByaW50IHRvIHRyYW5zcGFyZW5jaWVzLic7DQokbGFuZ1snc2NyZWVuJ109J0ludGVuZGVkIHByaW1hcmlseSBmb3IgY29sb3IgY29tcHV0ZXIgc2NyZWVucy4nOw0KJGxhbmdbJ3R0eSddPSdJbnRlbmRlZCBmb3IgbWVkaWEgdXNpbmcgYSBmaXhlZC1waXRjaCBjaGFyYWN0ZXIgZ3JpZCwgc3VjaCBhcyB0ZWxldHlwZXMgYW5kIHRlcm1pbmFscy4nOw0KJGxhbmdbJ3R2J109J0ludGVuZGVkIGZvciB0ZWxldmlzaW9uLXR5cGUgZGV2aWNlcy4nOw0KDQokbGFuZ1snTWVkaWFUeXBlJ109J2FsbCA6IFN1aXRhYmxlIGZvciBhbGwgZGV2aWNlcy48YnIvPg0KYXVyYWwgOiBJbnRlbmRlZCBmb3Igc3BlZWNoIHN5bnRoZXNpemVycy48YnIvPg0KYnJhaWxsZSA6IEludGVuZGVkIGZvciBicmFpbGxlIHRhY3RpbGUgZmVlZGJhY2sgZGV2aWNlcy48YnIvPg0KZW1ib3NzZWQgOiBJbnRlbmRlZCBmb3IgcGFnZWQgYnJhaWxsZSBwcmludGVycy48YnIvPg0KaGFuZGhlbGQgOiBJbnRlbmRlZCBmb3IgaGFuZGhlbGQgZGV2aWNlczxici8+DQpwcmludCA6IEludGVuZGVkIGZvciBwYWdlZCwgb3BhcXVlIG1hdGVyaWFsIGFuZCBmb3IgZG9jdW1lbnRzIHZpZXdlZCBvbiBzY3JlZW4gaW4gcHJpbnQgcHJldmlldyBtb2RlLjxici8+DQpwcm9qZWN0aW9uIDogSW50ZW5kZWQgZm9yIHByb2plY3RlZCBwcmVzZW50YXRpb25zLCBmb3IgZXhhbXBsZSBwcm9qZWN0b3JzIG9yIHByaW50IHRvIHRyYW5zcGFyZW5jaWVzLjxici8+DQpzY3JlZW4gOiBJbnRlbmRlZCBwcmltYXJpbHkgZm9yIGNvbG9yIGNvbXB1dGVyIHNjcmVlbnMuPGJyLz4NCnR0eSA6IEludGVuZGVkIGZvciBtZWRpYSB1c2luZyBhIGZpeGVkLXBpdGNoIGNoYXJhY3RlciBncmlkLCBzdWNoIGFzIHRlbGV0eXBlcyBhbmQgdGVybWluYWxzLjxici8+DQp0diA6IEludGVuZGVkIGZvciB0ZWxldmlzaW9uLXR5cGUgZGV2aWNlcy4nOw0KDQoNCg0KLy8vbWVzc2FnZXMNCg0KJGxhbmdbJ0NhbmNlbGVkJ10gPSAnWW91IENhbmNlbGVkIG91dCBvZiB0aGUgb3BlcmF0aW9uLiAgQW55IFdvcmsgeW91IG1heSBoYXZlIGVudGVyZWQgaGFzIGJlZW4gbG9zdC4nOw0KDQokbGFuZ1snQnRuQURERUQnXSA9ICdZb3UgSnVzdCBBZGRlZCBhIG5ldyBTY3JpcHQnOw0KJGxhbmdbJ0J0bkVESVRFRCddID0gJ1lvdSBKdXN0IEVkaXRlZCBhbiBleGlzdGluZyBTY3JpcHQnOw0KJGxhbmdbJ0J0bkRFTEVURUQnXSA9ICdZb3UgSnVzdCBEZWxldGVkIGFuIGV4aXN0aW5nIFNjcmlwdCc7DQokbGFuZ1sndHlwZV9sYWJlbCddID0gJ1R5cGUnOw0KJGxhbmdbJ3JldmlzaW9uJ10gPSAnUmV2aXNpb24nOw0KJGxhbmdbJ2lzRWRpdCddPSdpcyBlZGl0aW5nJzsNCiRsYW5nWydzdGVhbCddPSdTdGVhbCB0aGUgZG9jdW1lbnQnOw0KJGxhbmdbJ2dldF90YWcnXT0nR2V0IHRoZSB0YWcnOw0KDQokbGFuZ1snZW10cHlHcm91cCddID0gIllvdSdsbCBuZWVkIHRvIGFkZCBhIHNjcmlwdCB0byB0aGUgZ3JvdXAgYmVmb3JlIGNhbGxpbmcgaXQiOw0KJGxhbmdbJ2FsbFNjcmlwdHNVc2VkJ10gPSAiQWxsIHRoZSBzY3JpcHRzIGhhdmUgYmVlbiB1c2VkIjsNCiRsYW5nWydOb19TY3JpcHRzJ10gPSAiVGhlcmUgY3VycmVudGx5IG5vIHNjcmlwdHMiOw0KJGxhbmdbJ05vX0dyb3VwcyddID0gIlRoZXJlIGN1cnJlbnRseSBubyBncm91cHMiOw0KDQovL3RoZW1wbGF0ZU1hbmcNCiRsYW5nWydzZXRpbmFjdGl2ZSddID0gJ1NldCB0ZW1wbGF0ZSBpbmFjdGl2ZSc7DQokbGFuZ1snc2V0YWN0aXZlJ10gPSAnU2V0IHRlbXBsYXRlIGFjdGl2ZSc7DQokbGFuZ1snbm90ZGVmYXVsdCddID0gJ05vdCB0aGUgZGVmYXVsdCB0ZW1wbGF0ZS4nOw0KJGxhbmdbJ25vdHZhbGlkJ10gPSAnU3R5bGVzaGVldCBhc3NvY2lhdGlvbnMgaGF2ZSBub3QgYmVlbiBzZXQgcHJvcGVybHkgZm9yIHRoaXMgdGVtcGxhdGUnOw0KJGxhbmdbJ3RlbXBsYXRlX3RhYiddID0gJ1N0eWxlc3dpdGNoZXIgRm9ybSB0ZW1wbGF0ZSc7DQokbGFuZ1sncGFnZV90ZW1wbGF0ZXNfdGFiJ10gPSAnUGFnZSBUZW1wbGF0ZXMnOw0KJGxhbmdbJ3N1Ym1pdCddID0gJ1N1Ym1pdCc7DQokbGFuZ1snYXBwbHknXSA9ICdBcHBseSc7DQokbGFuZ1snY2FuY2VsJ10gPSAnQ2FuY2VsJzsNCiRsYW5nWydnbyddID0gJ0dvJzsNCiRsYW5nWydwcmV2aWV3J10gPSAncHJldmlldyc7DQoNCiRsYW5nWydpbmxpbmVoZWxwJ10gPSAnSGVscCc7DQokbGFuZ1snc2NpcHRvcHRpb25zJ10gPSAnT3B0aW9ucyc7DQoJDQoJDQoNCg0KDQoNCiRsYW5nWydwZXJzaXN0ZW50J10gPSAnUGVyc2lzdGVudCc7DQokbGFuZ1sncHJlZmVycmVkJ10gPSAnUHJlZmVycmVkJzsNCiRsYW5nWydhbHRlcm5hdGUnXSA9ICdBbHRlcm5hdGUnOw0KJGxhbmdbJ25hbWUnXSA9ICdOYW1lJzsNCiRsYW5nWyd0aXRsZSddID0gJ1RpdGxlJzsNCiRsYW5nWydpZCddID0gJ0lkJzsNCiRsYW5nWydhY3RpdmUnXSA9ICdBY3RpdmUnOw0KJGxhbmdbJ2RlZmF1bHQnXSA9ICdEZWZhdWx0JzsNCiRsYW5nWyd2YWxpZCddID0gJ1ZhbGlkJzsNCiRsYW5nWyd1c2FnZV9jb3VudCddID0gJ1VzYWdlJzsNCiRsYW5nWyd5ZXMnXSA9ICdZZXMnOw0KJGxhbmdbJ25vJ10gPSAnTm8nOw0KJGxhbmdbJ2VkaXRjc3MnXSA9ICdFZGl0IHN0eWxlc2hlZXQgYXNzb2NpYXRpb25zJzsNCiRsYW5nWydlZGl0dGVtcGxhdGUnXSA9ICdFZGl0IFRlbXBsYXRlIGNvbnRlbnQnOw0KJGxhbmdbJ2RlbGV0ZXRlbXBsYXRlJ10gPSAnRGVsZXRlIFRlbXBsYXRlJzsNCiRsYW5nWydjb3B5dGVtcGxhdGUnXSA9ICdDb3B5IFRlbXBsYXRlJzsNCg0KJGxhbmdbJ3Byb21wdF9zdHlsZXNoZWV0J10gPSAnU2VsZWN0IGEgcGFnZSBzdHlsZSc7DQokbGFuZ1sncHJvbXB0X3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUnOw0KJGxhbmdbJ3Byb21wdF9ncm91cG5hbWUnXSA9ICdHcm91cCBOYW1lJzsNCiRsYW5nWydwcm9tcHRfYWRkZ3JvdXAnXSA9ICdBZGQgQSBHcm91cCc7DQokbGFuZ1sncHJvbXB0X2dyb3VwbmFtZSddID0gJ0dyb3VwIE5hbWUnOw0KJGxhbmdbJ3Byb21wdF9ncm91cHR5cGUnXSA9ICdHcm91cCBUeXBlJzsNCiRsYW5nWydwcm9tcHRfYWRkJ10gPSAnQWRkJzsNCiRsYW5nWydwcm9tcHRfc2VsZWN0b25lJ10gPSAnU2VsZWN0IE9uZSc7DQokbGFuZ1sncHJvbXB0X2FkZF9hbHRlcm5hdGUnXSA9ICdBZGQgYW4gQWx0ZXJuYXRlJzsNCg0KJGxhbmdbJ2Vycm9yX3BsZWFzZV9zZWxlY3Rfc3R5bGVzaGVldCddID0gJ1BsZWFzZSBTZWxlY3QgYSBTdHlsZXNoZWV0JzsNCiRsYW5nWyd1c2VyTG9ncyddID0gJ1ZpZXcgVXNlciBIaXN0b3J5IExvZ3MnOw0KDQoNCi8vQWNjb3VudCBvcHRpb25zDQokbGFuZ1snU2NyaXB0U2V0X2xhYmVsJ10gPSAnU2NyaXB0IElEJzsNCiRsYW5nWydzY3JpcHRUeXBlX2xhYmVsJ10gPSAnU2NyaXB0IFR5cGUnOw0KJGxhbmdbJ1NjcmlwdE5hbWVfbGFiZWwnXSA9ICdTY3JpcHQgTmFtZSc7DQokbGFuZ1sndGVtcGxhdGVuYW1lX2xhYmVsJ10gPSAnVGVtcGxhdGUgTmFtZSc7DQoNCg0KJGxhbmdbJ1NpbmdsZUNvZGVfbGFiZWwnXSA9ICdEZWZhdWx0IFRhZyc7DQokbGFuZ1snR3JvdXB0U2l6ZV9sYWJlbCddID0gJ1RvdGFsJzsNCiRsYW5nWydub3Rlc19sYWJlbCddID0gJ05vdGVzJzsNCg0KDQokbGFuZ1siZG9jVHlwZV9sYWJsZSJdPSdEb2N0eXBlJzsNCiRsYW5nWyJWYWxIVE1MVmVyYm9zZV9sYWJsZSJdPSdDaGVjayBWZXJib3NlbHknOw0KDQoNCg0KDQokbGFuZ1snU2hvd1ZhbF9sYWJsZSddID0gJ0tlZXAgTWVzc2FnZXMgT3Blbic7DQokbGFuZ1snVHVybk9OVmFsX2xhYmxlJ10gPSAnVHVybiA8c3Ryb25nPk9OPC9zdHJvbmc+IFZhbGlkYXRpb24nOw0KDQokbGFuZ1snaG90TGlua0NoZWNrX2xhYmxlJ10gPSAnRG8gSG90TGluayBDaGVjayc7DQokbGFuZ1snVHJ1bk9uaG90TGlua0NoZWNrJ10gPSAnWW91IG5lZWQgdG8gdHVybiBvbiB0aGUgSG90TGluayBDaGVjayc7DQoNCg0KJGxhbmdbJ2ZpbHRlclByb3BfbGFibGUnXSA9ICcgRmlsdGVyIG91dCBwcm9wZXJ0aWVzIHRvIGhlbHAgdmFsaWRhdGUnOw0KJGxhbmdbJ0NTU3Byb2ZpbGVfbGFibGUnXSA9ICcgQ1NTIFByb2ZpbGUnOw0KJGxhbmdbJ3VzZXJtZWRpdW1fbGFibGUnXSA9ICcgVXNlciBNZWRpdW0nOw0KJGxhbmdbJ1ZBTExhbmdfbGFibGUnXSA9ICcgTGFuZ3VhZ2UnOw0KJGxhbmdbJ3czY0NTU3dhcm5pbmdfbGFibGUnXSA9ICcgdzNjIENTUyBXYXJuaW5nIExldmVsJzsNCg0KJGxhbmdbJ01lZGlhVHlwZV9sYWJlbCddID0gJ01lZGlhVHlwZSc7DQokbGFuZ1snTWluaWZ5X2xhYmVsJ10gPSAnTWluaWZ5IG9uIE91dHB1dCc7DQokbGFuZ1sndHVybk9mZlByZWxvYWRfbGFiZWwnXSA9ICdUdXJuIG9mZiB1cmwgcHJlbG9hZCc7DQokbGFuZ1snQ3JlYXRpb25EYXRlX2xhYmVsJ10gPSAnQ3JlYXRpb24gRGF0ZSc7DQokbGFuZ1snTW9kaWZlZERhdGVfbGFiZWwnXSA9ICdNb2RpZmllZCBEYXRlJzsNCiRsYW5nWydwYXRoT3B0aW9uX2xhYmVsJ10gPSAnVXNlIGEgcGF0aDxlbT4odXNlICIvdXBsb2Fkcy8uLi4iKTwvZW0+JzsNCiRsYW5nWydyb290VVJMT3B0aW9uX2xhYmVsJ10gPSAnVXNlIGEgc3BlY2lmaWMgcm9vdCBVUkwnOw0KJGxhbmdbJ0dyb290VVJMJ10gPSAnR2xvYmFsIFNjcmlwdCBSb290IFVSTCc7DQoNCg0KDQoNCg0KJGxhbmdbJ2VtcHR5Y2FjaGVFcnJvcl9kb0F1ZGl0J10gPSAnZmFpbGVkIHRvIGVtcHR5IHRoZSBjYWNoZSBhdCc7DQokbGFuZ1snZW1wdGllZENhY2hfZG9BdWRpdCddID0gJ2VtcHRpZWQgdGhlIHNjcmlwdCBjYWNoZSc7DQokbGFuZ1snY2xlYXJlZFJldmlzaW9uX2RvQXVkaXQnXSA9ICdjbGVhcmVkIHRoZSByZXZpc2lvbiBoaXN0b3J5IGZvcic7DQoNCiRsYW5nWydDaGVja2VkT3V0X2RvQXVkaXQnXSA9ICdDaGVja2VkIG91dCBzY3JpcHQgJzsNCiRsYW5nWydyZWxlYXNlZF9kb0F1ZGl0J10gPSAncmVsZWFzZWQgc2NyaXB0ICc7DQoNCg0KDQokbGFuZ1snU2NyaXB0SXNfbGFiZWwnXSA9ICdVc2UgdGhpcyBzY3JpcHQgPGVtPihOb3RlOiBJZiBhIHBhdGggaXMgc2V0LCBpdCB3aWxsIG92ZXIgcmlkZSB0aGlzKTwvZW0+JzsNCiRsYW5nWydkZWJ1Z0lUX2xhYmVsJ10gPSAnZGVidWdJVCc7DQokbGFuZ1snZGVidWdJVG5vdGVfbGFiZWwnXSA9ICc8ZW0+KE11c3QgaGF2ZSBGaXJlcGhwIG1vZCk8L2VtPic7DQokbGFuZ1snZGVidWdUJ10gPSAnRGVidWdpbmcgT3B0aW9ucyc7DQokbGFuZ1snRWRpdEhpc3RvcnknXSA9ICdVc2VyIEhpc3RvcnkgRWRpdGluZyc7DQoNCiRsYW5nWydlZGl0b3JIZWlnaHRfb3AnXSA9ICc8aDE+RWRpdG9yIEhlaWdodDwvaDE+DQo8aDM+eW91IG1heSBjaG9vc2UgdG8gc2V0IGEgc3RhdGljIGhlaWdodCBmb3IgdGhlIGVkaXRvci4gIElmIG5vdCBpdFwnbGwgZHluYW1pY2x5IGdhaW4gaGVpZ2h0IGFzIHlvdSB3cml0ZSB5b3VyIHNjcmlwdC48L2gzPic7DQokbGFuZ1snZWRpdG9ySGVpZ2h0X2xhYmVsJ10gPSAnU2V0IEVkaXRvciBIZWlnaHQnOw0KDQoNCg0KDQoNCg0KJGxhbmdbJ25vbmVJblR5cGUnXSA9ICc8aDE+WW91IG11c3QgZmlyc3QgYWRkIDxici8+YSBzY3JpcHQgaW4gdGhpcyB0eXBlPC9oMT4nOw0KDQoNCiRsYW5nWydncm91cHlUaXRsZSddID0gJ0xpc3Qgb2YgU2NyaXB0cyBpbiBncm91cCc7DQokbGFuZ1sncmV2aXNpb25UaXRsZSddID0gJ1JldmlzaW9uIEhpc3RvcnknOw0KJGxhbmdbJ3JldmlzaW9uX2xhYmVsJ10gPSAnPHN0cm9uZz5UdXJuIG9uIHRoZSByZXZpc2lvbiBoaXN0b3J5PC9zdHJvbmc+JzsNCiRsYW5nWydyZXZpc2lvbl9vcCddID0gJzxoMT5SZXZpc2lvbjwvaDE+DQo8aDM+VHVybmluZyB0aGlzIG9mZiBkb2VzIG5vdCBjbGVhciB0aGUgaGlzdG9yeSBpZiBpdCB3YXMgb24gYmVmb3JlLiAgTGlrZSBpdCB0byBwYXVzZS48L2gzPic7DQokbGFuZ1sncmV2aXNpb25fTElNSVRfbGFiZWwnXSA9ICdTZXQgUmV2aXNpb24gTElNSVQnOw0KJGxhbmdbJ2NsZWFyUmV2J10gPSAnQ2xlYXIgSGlzdG9yeSc7DQoNCg0KDQoNCiRsYW5nWyd1c2VyRGVmYXVsdFBhZ2UnXSA9ICc8aDE+VXNlciBwaWNrZWQgcGFnZTwvaDE+DQo8aDM+U2luY2UgYSB1c2VyIHBhZ2UgaXMgdGhlIG9wdGlvbiB5b3UgcGlja2VkLCB5b3VcJ2xsIHdhbnQgdG8gY2hvb3NlIGEgcGFnZSBmcm9tIHRoZSBkcm9wIGRvd24gZm9yIHRoZSBjb250ZW50IHRvIHJlbmRlciBvdXQuICBBZ2FpbiB0aGUgY29udGVudCBzaG91bGQgdmFsaWRhdGUuPC9oMz4nOw0KJGxhbmdbJ2RlZmF1bHRQYWdlJ10gPSAnPGgxPkNob29zZSBIb3c8L2gxPg0KPGgzPldoYXQgeW91IGFyZSBwaWNraW5nIGlzIHRoZSB3YXkgdG8gdmFsaWRhdGUgeW91ciB0ZW1wbGF0ZXMuICBUaGUgZ29hbCBpcyB0byBwaWNrIHNvbWV0aGluZyB0aGF0IGRvZXNuXCd0IGhhdmUgZXJyb3JzIGluIHRoZSBjb250ZW50IHlvdSBhcmUgdXNpbmcuPC9oMz4nOw0KJGxhbmdbJ3VzZXJEZWZhdWx0UGFnZV9sYWJsZSddID0gJ0dpdmUgdGhlIHBhZ2UgYWxpYXMnOw0KDQoNCiRsYW5nWydvd25Db250ZW50J10gPSAnPGgxPkZpbGwgaXQgaW48L2gxPg0KPGgzPlRoZSBnb2FsIGhlcmUgaXMgdG8gZ2l2ZSBzb21lIHRoaW5nIHRvIHByb2Nlc3MuICBCeSBmaWxsaW5nIGl0IGluIHlvdSBjYW4gY2hlYWNrIHRvIHNlZSBpZiB5b3UgaGF2ZSB0aGUgY29udGVudCB0YWcgYW5kIGJsb2NrcyBmaWxsZWQgaW4gY29ycmVjdGx5LiAgSUU6IHlvdSBjb3VsZCBwdXQgdGhlIGRlZmF1bHQgb3MgdGhlIGF1dG8gZ2VuZXJhdGVkIG9uZSB3aGVyZSBpdFwncyAmbHQ7ZGl2Jmd0OyZsdDtzcGFuJmd0OyZsdDtwJmd0OyBhbmQgb3RoZXIgZWxlbWVudHMgbGlrZSB0aGF0LjwvaDM+JzsNCiRsYW5nWydvd25Db250ZW50X2xhYmxlJ10gPSAnQ3JlYXRlIHRoZSBjb250ZW50JzsNCg0KDQoNCg0KJGxhbmdbJ2xvY2tmaWxlc1RpdGxlJ10gPSAnUHJvdGVjdCBGaWxlcyc7DQokbGFuZ1snbG9ja2ZpbGVzX2xhYmVsJ10gPSAnPHN0cm9uZz5UdXJuIG9uIHNldCBmaWxlcyB0byA2NDQ8L3N0cm9uZz4nOw0KJGxhbmdbJ2xvY2tmaWxlc19vcCddID0gJzxoMT5Qcm90ZWN0IEZpbGVzPC9oMT4NCjxoMz5UdXJuaW5nIHRoaXMgb24gc2V0IHRoZSBjcmVhdGVkIGZpbGUgdG8gYmUgY2htb2QgdG8gNjQ0LiAgVGhpcyB3aWxsIGhlbHAgdG8gcHJvdGVjdCB5b3UgZnJvbSBKUyBpbnRydXNpb24gYXR0YWNrcy48L2gzPic7DQoNCiRsYW5nWyd1c2VFZGl0b3JUaXRsZSddID0gJ0VkaXRvciBzZXR0aW5ncyc7DQokbGFuZ1sndXNlRWRpdG9yX2xhYmVsJ10gPSAnPHN0cm9uZz5UdXJuIG9uIHRoZSBlZGl0b3I8L3N0cm9uZz4nOw0KJGxhbmdbJ3VzZUVkaXRvcl9vcCddID0gJzxoMT5UdXJuIG9uIEVkaXRvcjwvaDE+DQo8aDM+VHVybmluZyB0aGlzIG9uIHN3aWxsIGhlbHAgeW91IHNlZSB0aGUgY29kZSB5b3VyIHdvcmtpbmcgd2l0aC4gIEl0IGhpbnRzIHRvIGNvcnJlY3Qgc3ludGF4IHZpYSBoaWdobGlnaHRpbmcuPC9oMz4nOw0KDQoNCg0KJGxhbmdbJ3ByZWxvYWRfQ1NTaW1hZ2VUaXRsZSddID0gJ1ByZWxvYWQgQ3NzIEltYWdlcyc7DQokbGFuZ1sncHJlbG9hZF9DU1NpbWFnZV9sYWJlbCddID0gJzxzdHJvbmc+VHVybiBvbiBQcmVsb2FkZWQgQ3NzIEltYWdlczwvc3Ryb25nPic7DQokbGFuZ1sncHJlbG9hZF9DU1NpbWFnZSddID0gJzxoMT5QcmVsb2FkIENzcyBJbWFnZXM8L2gxPg0KPGgzPklmIHlvdSBoYXZlIHlvdXIgc3lzdGVtIGFsbCBzZXQgdXAgcmlnaHQsIHRoaXMgd2lsbCBoZWxwIHlvdSBnZXQgYSBmYXN0IHBhcmFsbGVsIGRvd24gbG9hZCBvZiBhbGwgZWxlbWVudHMuPC9oMz4nOw0KDQoNCg0KDQokbGFuZ1snZ2xvYmFsdXJsJ10gPSAnPGgxPlNldCB0aGUgcm9vdCBVUkw8L2gxPg0KPGgzPlVzZWQgZm9yIHdoZW4geW91IG5lZWQgU1NMIHN1cHBvcnQgb3Igd2FudCB0byBwdXNoIHRoZSBzY3JpcHRzIHRvIGEgc3ViZG9tYWluIHRvIGxvc2UgdGhlIG5lZWRsZXMgY29va2llcy48L2gzPjxlbT4odXNlIHNjaGVtYSAiaHR0cHM6Ly9zdWIuZG9tYWluLnRsZC8iKTwvZW0+JzsNCg0KJGxhbmdbJ3NtYXJ0eU9uX2xhYmVsJ10gPSAnPHN0cm9uZz5Qcm9jZXNzIFNtYXJ0eTwvc3Ryb25nPjxici8+IGRhdGEgaW4gYnV0dG9uIGZpZWxkcyc7DQokbGFuZ1snc21hcnR5T24nXSA9ICc8aDE+UHJvY2VzcyBTbWFydHkgZGF0YTwvaDE+DQo8aDM+V2l0aCB0aGlzIHR1cm5lZCBvbiB5b3UgY2FuIHNldCB0aGUgYnV0dG9uIGZpZWxkcyB3aXRoIHRoZSB2YWx1ZXMgcGFzc2VkIGJ5IG90aGVyIG1vZHVsZXMgc3VjaCBhcyBQcm9kdWN0cyBvciBDYXRhbG9nZXI8L2gzPic7DQoNCg0KJGxhbmdbJ2ZpbGVUaW1lX2Nzc191cmxzX2xhYmVsJ10gPSAnPHN0cm9uZz5oZWxwIGJyZWFrIGEgY2xpZW50IHNpZGUgY2FjaGU8L3N0cm9uZz4nOw0KJGxhbmdbJ2ZpbGVUaW1lX2Nzc191cmxzJ10gPSAnPGgxPmhlbHAgYnJlYWsgYSBjbGllbnQgc2lkZSBjYWNoZTwvaDE+DQo8aDM+VGhpcyBpcyBkb25lIGJ5IGFkZGluZyBhIGZpbGUgY3JlYXRpb24gdGltZSBhdCB0aGUgZW5kIG9mIGEgZmlsZS4gIFR1cm5pbmcgdGhpcyBvbiB3aWxsIGFkZCB0aGlzIHRvIGFsbCBsb2NhbCB1cmxzLiAoQ1NTIG9ubHkgYXRtKSAtTm90aGluZyBpcyBkb25lIHRvIGhvdGxpbmtzPC9oMz4nOw0KDQovLy9BY3Rpb25zDQokbGFuZ1snZWRpdCddID0gJ0VkaXQnOw0KJGxhbmdbJ2RlbGV0ZSddID0gJ0RlbGV0ZSc7DQokbGFuZ1snQ2xvc2UnXSA9ICdDbG9zZSc7DQokbGFuZ1snT3BlbiddID0gJ09wZW4nOw0KDQokbGFuZ1snZGlyRW1wdHknXT0iVGhlIGZvbGRlciB3YXMgZW1wdHkiOw0KDQokbGFuZ1snY2xlYW5UZW1wJ10gPSAnQ2xlYW4gdGhlIHRlbXA/JzsNCiRsYW5nWyd1clRlbXBQYXRoJ10gPSdZb3VyIGNhY2hlIHBhdGggaXMnOw0KDQoNCg0KJGxhbmdbJ0xhc3RNb2QnXSA9J0xhc3QgTW9kaWZpZWQnOw0KDQoNCiRsYW5nWydjYWNoZUZlcnJvciddPSdTY3JpcHREZXBsb3kgY291bGQgbm90IG1ha2UgdGhlIGNhY2hlIGZvbGRlciwgY2hlY2sgeW91ciBmaWxlIHBlcm1pc3Npb25zIGZvciB0aGUgVXBsb2FkcyBhcmVhLic7DQoNCiRsYW5nWydOYW1lJ109J05hbWUnOw0KDQovLy9BSkFYIG1lc3MNCiRsYW5nWydQcm9jY2Vzc2luZyddPSdQcm9jZXNzaW5nJzsNCiRsYW5nWydTYXZlZCddPSdTYXZlZCc7DQokbGFuZ1snRG9uZSddPSdEb25lJzsNCiRsYW5nWydWYWxpZGF0aW5nJ109J1ZhbGlkYXRpbmcnOw0KDQoNCiAgDQokbGFuZ1snR3JvdXB0U2V0X2xhYmVsJ109J0dyb3VwIE5hbWUnOw0KJGxhbmdbJ0dyb3VwdFR5cGVfbGFiZWwnXT0nVHlwZSBvZiBzY3JpcHRzJzsNCiRsYW5nWydTY3JpcHRQaWNrZXJfbGFiZWwnXT0nU2NyaXB0IFBvb2wnOw0KDQovLy0tLVZhbGlkYXRpb25zIA0KJGxhbmdbJ0xJTkUnXT0nTElORSc7DQokbGFuZ1snVFlQRSddPSdUWVBFJzsNCiRsYW5nWydTVUJUWVBFJ109J1NVQlRZUEUnOw0KJGxhbmdbJ1NUUklORyddPSdTVFJJTkcnOw0KJGxhbmdbJ01FU1NBR0UnXT0nTUVTU0FHRSc7DQokbGFuZ1snTEVWRUwnXT0nTEVWRUwnOw0KDQoNCiRsYW5nWydOb3RlcyddPSdOb3Rlcyc7DQokbGFuZ1snV2FybmluZ3MnXT0nV2FybmluZ3MnOw0KJGxhbmdbJ0Vycm9ycyddPSdFcnJvcnMnOw0KJGxhbmdbJ2hpZGRlbiddPSdoaWRkZW4nOw0KDQoJDQovLyp0YWJzDQokbGFuZ1snU2NyaXB0J109J1NjcmlwdCc7DQokbGFuZ1snRVVSTFMnXT0nRXh0cmFjdGVkIFVybHMnOw0KJGxhbmdbJ1JDU1MnXT0nUmVuZGVyZWQgQ1NTJzsNCiRsYW5nWydTQ1NTJ109J0NTUyBTdHJ1Y3R1cmUnOw0KJGxhbmdbJ0ZDT05UJ109J0ZpbGUgY29udGVudCc7DQoNCg0KJGxhbmdbJ2lVUkwnXT0naW1hZ2UgVVJMJzsNCiRsYW5nWydUeXBlJ109J1R5cGUnOw0KJGxhbmdbJ1NpemUnXT0nU2l6ZSc7DQokbGFuZ1snU3RhdHVzJ109J1N0YXR1cyc7DQoNCiRsYW5nWydob3RsaW5rJ109JzxzdHJvbmc+SG90bGlua2luZzo8L3N0cm9uZz4gYXBwZWFycyAgdG8gYmUgYSBob3RsaW5rLic7DQokbGFuZ1snQnJva2VubGluayddPSdCcm9rZW4gTGluayc7DQoNCiRsYW5nWydOT2Nzc0knXT0nTm8gY3NzIGltYWdlcyc7DQoNCg0KJGxhbmdbJ1llc1ZBbGFzdGVyJ109JzxzdHJvbmc+KiogeW91IGFyZSBmaWx0ZXJpbmcgZXJyb3JzIGFuZCBtYXkgaGF2ZSBmaWx0ZXJlZCBhIHJlYWwgZXJyb3IgPGEgaHJlZj0iamF2YXNjcmlwdDp2b2lkKDApIiBpZD0id2hpY2hGaWx0ZXIiPih3aGljaD8pPC9hPjwvc3Ryb25nPic7DQoNCiRsYW5nWydyZWxvYWRfYWxlcnQnXT0nWW91IGFyZSByZWxvYWRpbmcgdGhlIHNyY2lwdCBmcm9tIHRoZSBsYXN0IHNhdmUgcG9pbnQuICBZb3UgaGF2ZSBzYXZlZCB0aGUgc2NyaXB0IGFscmVhZHkgYW5kIGlmIHlvdSBuZWVkIHRvIGdvIGJhY2sgdG8gdGhlIHZlcnNpb24gd2hlbiB5b3UgZmlyc3QgY2FtZSBpbiB0byBlZGl0IHBsZWFzZSBjaGVjayB5b3VyIHJldmlzaW9uIGhpc3RvcnkuJzsNCg0KDQokbGFuZ1snaW1wb3J0RXhwb3J0J10gPSAnSW1wb3J0L0V4cG9ydCc7DQokbGFuZ1snc3RhcnRFeHBvcnQnXSA9ICdTdGFydCBFeHBvcnQnOw0KJGxhbmdbJ3N0YXJ0SW1wb3J0J10gPSAnU3RhcnQgSW1wb3J0JzsNCg0KDQoNCg0KLy9BbGVydHMgYW5kIE1lc3NhZ2VzDQokbGFuZ1snQ2xlYXJJbWcnXSA9ICdEZWxldGUgQ3VycmVudCBJbWFnZSc7DQoNCiRsYW5nWydGaW5pc2gnXSA9ICdGaW5pc2gnOw0KDQokbGFuZ1sncmV2ZXJ0J10gPSAnUmVsb2FkJzsNCiRsYW5nWydhcHBseSddID0gJ0FwcGx5JzsNCiRsYW5nWydjYW5jZWwnXSA9ICdDYW5jZWwnOw0KJGxhbmdbJ2Zvcm1fY2FuY2VsJ10gPSAnQ2FuY2VsJzsNCg0KJGxhbmdbJ1NhdmUnXSA9ICdTYXZlJzsNCg0KJGxhbmdbJ2RvbmUnXSA9ICdEb25lJzsNCiRsYW5nWydhZGQnXSA9ICdBZGQnOw0KJGxhbmdbJ3N1Ym1pdCddID0gJ1N1Ym1pdCc7DQoNCg0KJGxhbmdbJ1JFT1JERVInXSA9ICdSZW9yZGVyJzsNCg0KJGxhbmdbJ2Zvcm1fc3VibWl0J10gPSAnU2F2ZSBQcmVmZXJlbmNlcyc7DQoNCiRsYW5nWydtb2RfcHJlZnNfdGl0bGUnXSA9ICdNb2R1bGUgUHJlZmVyZW5jZXMnOw0KJGxhbmdbJ3ByZWZzdXBkYXRlZCddID0gJ01vZHVsZSBwcmVmZXJlbmNlcyB1cGRhdGVkLic7DQokbGFuZ1snb3B0aW9uc3VwZGF0ZWQnXSA9ICdvcHRpb25zIHVwZGF0ZWQnOw0KDQoNCg0KDQoNCiRsYW5nWydtb2RkZXNjcmlwdGlvbiddID0gJ1NQRUVEIFlPVVIgU0lURSBVUCAuLi4hISEhICZidWxsOyBPdXRwdXQgZHluYW1pYyBKUyBmaWxlcyBhbmQgQ1NTIFdJVEggc21hcnR5Li4uICZidWxsOyBTZXQgdGhlIGZpbGVzIHRvIHVzZSBhIHN1YmRvbWFpbi4uLiAmYnVsbDsgY2FjaGVkLi4uICZidWxsOyBtaW5pZmllZC4uLiAmYnVsbDsgRGlkIEkgbWVudGlvbiB5b3UgY2FuIHVzZSBzbWFydHkgaW4geW91ciBKUyBhbmQgQ1NTIHNjcmlwdCEhISEgLSBTaW1wbGUsIGZsZXhpYmxlISc7DQokbGFuZ1snd2VsY29tZV90ZXh0J10gPSAnPHA+SGVsbG8hPC9wPic7DQoNCiRsYW5nWydoZWxwJ10gPSAnPGxpbmsgbWVkaWE9InNjcmVlbiIgaHJlZj0iLi4vbW9kdWxlcy9TY3JpcHREZXBsb3kvQ1NTL01hc3RlckNTUy5jc3MiIHR5cGU9InRleHQvY3NzIiByZWw9InN0eWxlc2hlZXQiLz48ZGl2IGNsYXNzPSJTaW1XcmFwIj48YiBjbGFzcz0icmJvdHRvbSI+PGIgY2xhc3M9InIxIj48L2I+IDxiIGNsYXNzPSJyMiI+PC9iPjxiIGNsYXNzPSJyMyI+PC9iPiA8YiBjbGFzcz0icjQiPjwvYj48L2I+DQoNCjxkaXYgY2xhc3M9IlNpbWNvbiI+IDxoMyBjbGFzcz0iQmFja0xpbmsiPjxhIG9uY2xpY2s9ImphdmFzY3JpcHQ6d2luZG93Lmhpc3RvcnkuZ28oLTEpIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub2ZvbGxvdyI+Jmx0OyZsdDsgQmFjazwvYT48L2gzPg0KPGgxPldoYXQgRG9lcyBUaGlzIERvPy0tLSB0aGlzIG5lZWRzIHVwZGF0aW5nPC9oMT4NCjxoMj5Xcml0ZSBtYW5hZ2UgYW5kIGRlcGxveSBKUyBhbmQgQ1NTPC9oMj4NCjxhIGlkPSJTY3JpcHREZXBsb3kiPjwvYT4NCjxwPlNjcmlwdERlcGxveSBtb2R1bGUgdGhhdCBjYW4gY29tYmluZSBtdWx0aXBsZSBDU1Mgb3IgSmF2YXNjcmlwdCBmaWxlcywgY29tcHJlc3MgdGhlaXIgY29udGVudHMgKGkuZS4gcmVtb3ZhbCBvZiB1bm5lY2Vzc2FyeSB3aGl0ZXNwYWNlL2NvbW1lbnRzKSwgYW5kIHNlcnZlIHRoZSByZXN1bHRzIHdpdGggSFRUUCBlbmNvZGluZyAoZ3ppcC9kZWZsYXRlKSBhbmQgaGVhZGVycyB0aGF0IGFsbG93IG9wdGltYWwgY2xpZW50LXNpZGUgY2FjaGluZy4gVGhpcyBoZWxwcyB5b3UgZm9sbG93IHNldmVyYWwgb2YgWWFob28hXCdzIDxhIGhyZWY9Imh0dHA6Ly9kZXZlbG9wZXIueWFob28uY29tL3BlcmZvcm1hbmNlL2luZGV4Lmh0bWwjcnVsZXMiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij5SdWxlcyBmb3IgSGlnaCBQZXJmb3JtYW5jZSBXZWIgU2l0ZXM8L2E+LiAoU2VlICZxdW90O1Byb2JsZW0gRG9tYWluJnF1b3Q7IGJlbG93IGZvciBtb3JlIGluZm8uKSA8L3A+DQo8aDM+VGhlIFNob3J0IG9mIGl0PC9oMz4NCjxwPldpcnRlIHlvdXIgc2NyaXB0cywgc2V0IHRoZSBvcmRlciBhbmQgU2NyaXB0RGVwbG95IHdpbGwgZG8gdGhlIHJlc3QhPC9wPg0KPHRhYmxlPg0KICA8dGJvZHk+DQogICAgPHRyPg0KICAgICAgPHRkIHN0eWxlPSJCT1JERVItUklHSFQ6ICNhYWEgMXB4IHNvbGlkOyBQQURESU5HLVJJR0hUOiA1cHg7IEJPUkRFUi1UT1A6ICNhYWEgMXB4IHNvbGlkOyBQQURESU5HLUxFRlQ6IDVweDsgUEFERElORy1CT1RUT006IDVweDsgQk9SREVSLUxFRlQ6ICNhYWEgMXB4IHNvbGlkOyBQQURESU5HLVRPUDogNXB4OyBCT1JERVItQk9UVE9NOiAjYWFhIDFweCBzb2xpZCI+PHN0cm9uZz5CZWZvcmU8L3N0cm9uZz48L3RkPg0KICAgICAgPHRkIHN0eWxlPSJCT1JERVItUklHSFQ6ICNhYWEgMXB4IHNvbGlkOyBQQURESU5HLVJJR0hUOiA1cHg7IEJPUkRFUi1UT1A6ICNhYWEgMXB4IHNvbGlkOyBQQURESU5HLUxFRlQ6IDVweDsgUEFERElORy1CT1RUT006IDVweDsgQk9SREVSLUxFRlQ6ICNhYWEgMXB4IHNvbGlkOyBQQURESU5HLVRPUDogNXB4OyBCT1JERVItQk9UVE9NOiAjYWFhIDFweCBzb2xpZCI+PGltZyBzcmM9Imh0dHA6Ly9tcmNsYXkub3JnL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDA4LzA5L2ZpZGRsZXJfYmVmb3JlLnBuZyIgYWx0PSJhZnRlciIgLz48L3RkPg0KICAgIDwvdHI+DQogICAgPHRyPg0KICAgICAgPHRkIHN0eWxlPSJCT1JERVItUklHSFQ6ICNhYWEgMXB4IHNvbGlkOyBQQURESU5HLVJJR0hUOiA1cHg7IEJPUkRFUi1UT1A6ICNhYWEgMXB4IHNvbGlkOyBQQURESU5HLUxFRlQ6IDVweDsgUEFERElORy1CT1RUT006IDVweDsgQk9SREVSLUxFRlQ6ICNhYWEgMXB4IHNvbGlkOyBQQURESU5HLVRPUDogNXB4OyBCT1JERVItQk9UVE9NOiAjYWFhIDFweCBzb2xpZCI+PHN0cm9uZz5BZnRlcjwvc3Ryb25nPjwvdGQ+DQogICAgICA8dGQgc3R5bGU9IkJPUkRFUi1SSUdIVDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctUklHSFQ6IDVweDsgQk9SREVSLVRPUDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctTEVGVDogNXB4OyBQQURESU5HLUJPVFRPTTogNXB4OyBCT1JERVItTEVGVDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctVE9QOiA1cHg7IEJPUkRFUi1CT1RUT006ICNhYWEgMXB4IHNvbGlkIj48aW1nIHNyYz0iaHR0cDovL21yY2xheS5vcmcvd3AtY29udGVudC91cGxvYWRzLzIwMDgvMDkvZmlkZGxlcl9hZnRlci5wbmciIGFsdD0iYmVmb3JlIiAvPjwvdGQ+DQogICAgPC90cj4NCiAgPC90Ym9keT4NCjwvdGFibGU+DQoNCg0KDQo8aDI+PGEgaWQ9IkZlYXR1cmVzIj48L2E+RmVhdHVyZXM8L2gyPg0KPHVsPg0KICA8bGk+Q29tYmluZXMgYW5kIG1pbmlmaWVzIG11bHRpcGxlIENTUyBvciBKYXZhU2NyaXB0IGZpbGVzIGludG8gYSBzaW5nbGUgICBkb3dubG9hZCA8L2xpPg0KICA8bGk+VXNlcyBhbiA8YSBocmVmPSJodHRwOi8vY29kZS5nb29nbGUuY29tL3AvbWluaWZ5L3NvdXJjZS9icm93c2UvdHJ1bmsvbWluL2xpYi9KU01pbi5waHAiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij5lbmhhbmNlZCBwb3J0PC9hPiBvZiBEb3VnbGFzIENyb2NrZm9yZFwncyA8YSBocmVmPSJodHRwOi8vd3d3LmNyb2NrZm9yZC5jb20vamF2YXNjcmlwdC9qc21pbi5odG1sIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub2ZvbGxvdyI+SlNNaW4gICBsaWJyYXJ5PC9hPiBhbmQgY3VzdG9tIGNsYXNzZXMgdG8gbWluaWZ5IDxhIGhyZWY9Imh0dHA6Ly9jb2RlLmdvb2dsZS5jb20vcC9taW5pZnkvc291cmNlL2Jyb3dzZS90cnVuay9taW4vbGliL01pbmlmeS9DU1MucGhwIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub2ZvbGxvdyI+Q1NTPC9hPiBhbmQgPGEgaHJlZj0iaHR0cDovL2NvZGUuZ29vZ2xlLmNvbS9wL21pbmlmeS9zb3VyY2UvYnJvd3NlL3RydW5rL21pbi9saWIvTWluaWZ5L0hUTUwucGhwIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub2ZvbGxvdyI+SFRNTDwvYT48L2xpPg0KICA8bGk+Q2FjaGVzIHNlcnZlci1zaWRlIHRvIGF2b2lkIGRvaW5nIHVubmVjZXNzYXJ5IHdvcmsgPC9saT4NCiAgPGxpPlJlc3BvbmRzIHdpdGggYW4gSFRUUCAzMDQgKE5vdCBNb2RpZmllZCkgcmVzcG9uc2Ugd2hlbiB0aGUgYnJvd3NlciBoYXMgYW4gICB1cC10by1kYXRlIGNhY2hlIGNvcHkgKiogPC9saT4NCiAgPGxpPk1vc3QgbW9kdWxlcyBhcmUgbGF6eS1sb2FkZWQgYXMgbmVlZGVkICgzMDQgcmVzcG9uc2VzIHVzZSBtaW5pbWFsIGNvZGUpICAqKiA8L2xpPg0KICA8bGk+QXV0b21hdGljYWxseSByZXdyaXRlcyByZWxhdGl2ZSBVUklzIGluIGNvbWJpbmVkIENTUyBmaWxlcyB0byBwb2ludCB0byB2YWxpZCBsb2NhdGlvbnMgPC9saT4NCiAgPGxpPldpdGggY2FjaGluZyBlbmFibGVkLCBTY3JpcHREZXBsb3kgaXMgY2FwYWJsZSBvZiBoYW5kbGluZyBodW5kcmVkcyBvZiByZXF1ZXN0cyBwZXIgc2Vjb25kIG9uIGEgbW9kZXJhdGVseSBwb3dlcmZ1bCBzZXJ2ZXIuIDwvbGk+DQogIDxsaT5Db250ZW50LUVuY29kaW5nOiBnemlwLCBiYXNlZCBvbiByZXF1ZXN0IGhlYWRlcnMuIENhY2hpbmcgYWxsb3dzIGl0IHNvIHNlcnZlIGd6aXBwZWQgZmlsZXMgZmFzdGVyIHRoYW4gQXBhY2hlXCdzIG1vZF9kZWZsYXRlIG9wdGlvbiEgPC9saT4NCjwvdWw+DQo8aDM+PGVtPjxzdHJvbmc+KiogTm90ZTo8L3N0cm9uZz4gSXQgaXMgYmVzdCB0byB1c2UgYSAuaHRhY2Nlc3Mgc2NyaXB0IHRvIHNldCB0aGUgYWdlIHRpbWVzLiBTY3JpcHREZXBsb3kgaXMgZGVzaWduZWQgZm9yIGVmZmljaWVuY3ksIGJ1dCBmb3IgdmVyeSBoaWdoIHRyYWZmaWMgc2l0ZXMsIFNjcmlwdERlcGxveSBtYXkgc2VydmUgZmlsZXMgc2xvd2VyIHRoYW4geW91ciBIVFRQZCBkdWUgdG8gdGhlIENHSSBvdmVyaGVhZCBvZiBQSFAuICBUbyBvdmVyIGNvbWUgdGhpcyBKdXN0IGNoZWNrICJ1c2UgLmh0YWNjZXNzIGluIG9wdGlvbnMiPC9lbT48L2gzPg0KPGgyPjxhIG5hbWU9IlJlcXVpcmVtZW50cyI+PC9hPlJlcXVpcmVtZW50czwvaDI+DQo8dWw+DQogIDxsaT5UaGUgY29tbW9ubHkgaW5zdGFsbGVkIDxhIGhyZWY9Imh0dHA6Ly91czMucGhwLm5ldC9tYW51YWwvZW4vemxpYi5pbnN0YWxsYXRpb24ucGhwIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub2ZvbGxvdyI+emxpYiAgIGV4dGVuc2lvbjwvYT4gaXMgcmVjb21tZW5kZWQgZm9yIEhUVFAgZW5jb2RpbmcgZnVuY3Rpb25hbGl0eS4gPC9saT4NCjwvdWw+DQo8YnIvPjxici8+DQo8aDE+SG93IERvIEkgVXNlIEl0PC9oMT4NCg0KDQo8aDM+R2V0IGEgc2luZ2xlIHNjcmlwdDwvaDM+DQp1c2UgPHNwYW4gY2xhc3M9ImNvZGVISUdITElHSFQiPntjbXNfbW9kdWxlIG1vZHVsZT1TY3JpcHREZXBsb3kgc2NyaXB0SUQ9IjEifSA8L3NwYW4+IDxici8+PGJyLz4NCjxoMz5HZXQgYSBzY3JpcHQgZ3JvdXA8L2gzPg0KdXNlIDxzcGFuIGNsYXNzPSJjb2RlSElHSExJR0hUIj57Y21zX21vZHVsZSBtb2R1bGU9U2NyaXB0RGVwbG95IGdyb3VwSUQ9IjEifSA8L3NwYW4+IDxici8+PGJyLz4NCjxoMj5BbGwgb3V0cHV0IGlzIGluIHRoZSBYSFRNTCBmb3JtYXQsIHlvdSBzaG91bGQgd29yayBpbiB0aGF0LjwvaDI+DQoNCjxici8+PGJyLz4NCjxoND5QYXJhbXM8L2g0Pg0KPHVsPg0KPGxpPjxzdHJvbmc+c2NyaXB0SUQ9IiIgPC9zdHJvbmc+PGVtPihSZXF1aXJlZC9vcHRpb25hbCk8L2VtPiA8YnIvPnwgc2V0IHRoZSBJRCBSZXF1aXJlZCBvbmx5IGlmIGdyb3VwSUQgbm90IGNhbGxlZDxici8+PC9saT4NCjxsaT48c3Ryb25nPmdyb3VwSUQ9IiIgPC9zdHJvbmc+PGVtPihSZXF1aXJlZC9vcHRpb25hbCk8L2VtPiA8YnIvPnwgc2V0IHRoZSBJRCBSZXF1aXJlZCBvbmx5IGlmIHNjcmlwdElEIG5vdCBjYWxsZWQ8YnIvPjwvbGk+DQo8bGk+PHN0cm9uZz5TdHlwZT0iIiA8L3N0cm9uZz48ZW0+KFJlcXVpcmVkLykgSlMvQ1NTPC9lbT4gPGJyLz58IHNldCB0aGUgSUQgUmVxdWlyZWQgb25seSBpZiBzY3JpcHRJRCBub3QgY2FsbGVkPGJyLz48L2xpPg0KDQo8bGk+PHN0cm9uZz5zbWFydHk9IiIgPC9zdHJvbmc+PGVtPihvcHRpb25hbCkgdHJ1ZS9mYWxzZSA8c3Ryb25nPkRlZmF1bHQ6bnVsbDwvc3Ryb25nPjwvZW0+IDxici8+fCBUaGlzIGxldHMgeW91IG92ZXIgcmlkZSB0aGUgZ2xvYmxlczxici8+PC9saT4NCjxsaT48c3Ryb25nPm1pbmlmeT0iIiA8L3N0cm9uZz48ZW0+KG9wdGlvbmFsKSB0cnVlL2ZhbHNlIDxzdHJvbmc+RGVmYXVsdDp0cnVlPC9zdHJvbmc+PC9lbT4gPGJyLz58ICBUaGlzIGxldHMgeW91IG92ZXIgcmlkZSB0aGUgZ2xvYmxlczxici8+PC9saT4NCg0KDQoNCg0KDQoNCjxsaT48c3Ryb25nPm1lZGlhX3R5cGU9IiIgPC9zdHJvbmc+PGVtPihvcHRpb25hbCk8L2VtPiA8YnIvPnwgc2V0IE1lZGlhIHR5cGUgZm9yIENTUyBmaWxlcyBoZXJlLi4uIG92ZXJyaWRlcyBkYiBzZXRpbmdzLjxici8+PC9saT4NCjxsaT48c3Ryb25nPmltcG9ydD0iIiA8L3N0cm9uZz48ZW0+KG9wdGlvbmFsKSB0cnVlL2ZhbHNlPC9lbT4gPGJyLz58IHNldCB0aGUgaW5jbHVzaW9uIHN0eWxlIGZvciBDU1MgZmlsZXMgaGVyZS4uLiBvdmVycmlkZXMgZGIgc2V0aW5ncy4gRXg6IHRydWUgIGdpdmVzIDxzdHlsZSB0eXBlPVwidGV4dC9jc3NcIj5AaW1wb3J0IHVybCgidXJsL2Nzc2ZpbGUuY3NzIikgc2NyZWVuOzwvc3R5bGU+PGJyLz48L2xpPg0KDQo8bGk+PHN0cm9uZz5jYWNoZV9idXN0ZXI8L3N0cm9uZz4gPGVtPihvcHRpb25hbCkgPHN0cm9uZz5EZWZhdWx0OmZhbHNlPC9zdHJvbmc+PC9lbT48YnIvPnwgVGhpcyBpcyB0byBpbnN0YW50bHkgdW5jYWNoZSBhbiBzY3JpcHQgb24gdGhlIGNsaWVudCBzaWRlIGFmdGVyIGEgbmV3IHVwbG9hZGVkIHNjcmlwdCBpcyBjcmVhdGVkLi4uIGllOiAxMi5qcz8xMjU1MjI1MDA3ICA8Zm9udCBjb2xvcj0icmVkIj48c3Ryb25nPiggdHJ1ZS9mYWxzZSApPC9zdHJvbmc+PC9mb250PjwvbGk+DQo8bGk+PHN0cm9uZz5hc3NpZ249IiIgPC9zdHJvbmc+PGVtPihvcHRpb25hbCk8L2VtPiA8YnIvPnwgQXNzaWduIHRoZSBvdXRwdXQgKHJldHVybiB0aGUgc21hcnR5IGFzc2lnbm1lbnQpICBVc2UgaW4gY29uanVuY3Rpb24gd2l0aCBvdXQgd2l0aG91dCBVUkw8L2xpPg0KPGxpPjxzdHJvbmc+ZnNpemU9IiIgPC9zdHJvbmc+PGVtPihvcHRpb25hbCk8L2VtPiA8YnIvPnwgZ2V0IHRoZSBzaXplPC9saT4NCjxsaT48c3Ryb25nPnJvb3Q9IiIgPC9zdHJvbmc+PGVtPihvcHRpb25hbCk8L2VtPiA8YnIvPnwgU2NyaXB0RGVwbG95IGNyZWF0ZXMgYSB0ZW1wIGRpcmVjdG9yIGluIHRoZSB1cGxvYWQgZm9sZGVyLiAgSWYgeW91IG1vdmUgdGhlIHBhdGggdG8gdGhlIHVwbGFvZCB0byBhIHN1YmRvbWFpbiB5b3UgbWF5IGd1aWRlIHRoZSBvdXRwdXQgd2l0aCB0aGlzLjwvbGk+DQogICAgICAgIDx1bCBzdHlsZT0ibGlzdC1zdHlsZS1wb3NpdGlvbjppbnNpZGU7Ij48bGk+PHN0cm9uZz5FeGFwbWxlOjwvc3Ryb25nPiB5b3UgY2hhbmdlZCA8Q09ERT4kY29uZmlnW1wndXBsb2Fkc19wYXRoXCddID0gXCcvdmFyL3d3dy92aG9zdHMvZG9tYWluLm9yZy9odHRwZG9jcy91cGxvYWRzXCc7PC9DT0RFPiA8L2xpPg0KICAgICAgICAgICAgPGxpPjxzdHJvbmc+dG88L3N0cm9uZz4gPENPREU+JGNvbmZpZ1tcJ3VwbG9hZHNfcGF0aFwnXSA9IFwvdmFyL3d3dy92aG9zdHMvZG9tYWluLm9yZy9zdWJkb21haW5zL21lZGlhL2h0dHBkb2NzL3VwbG9hZHNcJzs8L0NPREU+PC9saT4NCiAgICAgICAgICAgIDxsaT5ub3cgdGhlIHVwbG9hZHMgdXJsIHdvdWxkIG5vdCB3b3JrIGFzIGl0IHdvdWxkIGJlIDx1Pmh0dHA6Ly93d3cuZG9tYWluLm9yZy91cGxvYWRzPC91PjwvbGk+DQogICAgICAgICAgICA8bGk+PHN0cm9uZz5Tbzwvc3Ryb25nPiBpdCBjYW4gYmUgY2hhbmdlZCBoZXJlIHRvIDx1Pmh0dHA6Ly9tZWRpYS5kb21haW4ub3JnL3VwbG9hZHM8L3U+ICA8Zm9udCBjb2xvcj0icmVkIj48c3Ryb25nPihOT1RFOiB3YXRjaCB5b3VyIC8gKTwvc3Ryb25nPjwvZm9udD48L2xpPg0KICAgICAgICA8L3VsPg0KPGxpPjxzdHJvbmc+dXJsPSIiIDwvc3Ryb25nPjxlbT4ob3B0aW9uYWwpPC9lbT4gPGJyLz58b3V0cHV0cyB0aGUgdXJsLjwvbGk+DQoNCg0KDQoNCgkJDQoNCg0KDQoNCg0KDQoNCg0KPCEtLTxsaT48c3Ryb25nPlNhbmRCb3g9dHJ1ZSA8L3N0cm9uZz48ZW0+KG9wdGlvbmFsKTwvZW0+IDxici8+fCBmYWxzZTxici8+PC9saT4NCg0KPGxpPjxzdHJvbmc+UlVOYWN0aW9uPSIiIDwvc3Ryb25nPjxlbT4ob3B0aW9uYWwpPC9lbT4gPGJyLz58IFVEVDxici8+fCBVUkwgPGVtPiguLi9wbHVnaW5zL2Z1bmN0aW9uLmZpbGVuYW1lLnBocCk8L2VtPjxici8+fCAqTW9yZSBjb21pbmcgU29vbio8YnIvPjwvbGk+DQo8bGk+PHN0cm9uZz5MYW5nPSIiIDwvc3Ryb25nPjxlbT4ob3B0aW9uYWwpPC9lbT4gPGJyLz58IFVzZSBDb3VudHJ5IENvZGVzIFRvIGR5bmFtaWNseSBzZXQgdGhlIGxhbmd1YWdlIG9mIHRoZSBQYXlQYWwgcGFnZTxici8+PC9saT4tLT4NCg0KPC91bD4NCjxici8+DQoNCjxici8+PGJyLz4NCjxoMj48YSBpZD0iUHJvYmxlbV9Eb21haW4iPjwvYT5Qcm9ibGVtIERvbWFpbjwvaDI+DQo8cD5QYWdlcyB0aGF0IHJlZmVyIHRvIG11bHRpcGxlIENTUyBvciBKYXZhU2NyaXB0IGZpbGVzIG9mdGVuIHN1ZmZlciBmcm9tIHNsb3dlciAgIHBhZ2UgbG9hZHMsIGR1ZSB0byB0aGUgYnJvd3NlciByZXF1ZXN0aW5nIGVhY2ggZmlsZSBpbmRpdmlkdWFsbHkuIE1hbnkgYnJvd3NlcnMgICBhbHNvIGFyZSBsaW1pdGVkIHRvIGEgZmV3IHNpbXVsdGFuZW91cyByZXF1ZXN0cyBwZXIgZG9tYWluLiBUaGUgd2FpdCBmb3IgYSAgIHNlcmllcyBvZiByZXF1ZXN0cyBhbmQgdGhlIHRyYW5zZmVyIG9mIHVub3B0aW1pemVkIGZpbGVzIGNhbiBkcmFtYXRpY2FsbHkgcmVkdWNlICAgdGhlIGNsaWVudC1zaWRlIHBlcmZvcm1hbmNlIG9mIHlvdXIgc2l0ZS4gPC9wPg0KPHA+SGVyZSBhcmUgYSBoYW5kZnVsIG9mIFlhaG9vIVwncyBiZXN0IHByYWN0aWNlcyB0aGF0IGFyZSBhZGRyZXNzZWQgYnkgdGhlIHVzZSBvZiBTY3JpcHREZXBsb3kuIDwvcD4NCjx1bD4NCiAgPGxpPjxhIGhyZWY9Imh0dHA6Ly9kZXZlbG9wZXIueWFob28uY29tL3BlcmZvcm1hbmNlL3J1bGVzLmh0bWwjbnVtX2h0dHAiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij5NYWtlIEZld2VyIEhUVFAgUmVxdWVzdHM8L2E+PC9saT4NCiAgPGxpPjxhIGhyZWY9Imh0dHA6Ly9kZXZlbG9wZXIueWFob28uY29tL3BlcmZvcm1hbmNlL3J1bGVzLmh0bWwjZXhwaXJlcyIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPkFkZCBhbiBFeHBpcmVzIG9yIGEgQ2FjaGUtQ29udHJvbCBIZWFkZXI8L2E+PC9saT4NCiAgPGxpPjxhIGhyZWY9Imh0dHA6Ly9kZXZlbG9wZXIueWFob28uY29tL3BlcmZvcm1hbmNlL3J1bGVzLmh0bWwjZ3ppcCIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPkd6aXAgQ29tcG9uZW50czwvYT48L2xpPg0KICA8bGk+PGEgaHJlZj0iaHR0cDovL2RldmVsb3Blci55YWhvby5jb20vcGVyZm9ybWFuY2UvcnVsZXMuaHRtbCNtaW5pZnkiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij5NaW5pZnkgSmF2YVNjcmlwdCBhbmQgQ1NTPC9hPjwvbGk+DQogIDxsaT48YSBocmVmPSJodHRwOi8vZGV2ZWxvcGVyLnlhaG9vLmNvbS9wZXJmb3JtYW5jZS9ydWxlcy5odG1sI2V0YWdzIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub2ZvbGxvdyI+Q29uZmlndXJlIEVUYWdzPC9hPjwvbGk+DQogIDxsaT48YSBocmVmPSJodHRwOi8vZGV2ZWxvcGVyLnlhaG9vLmNvbS9wZXJmb3JtYW5jZS9ydWxlcy5odG1sI3VuZGVyMjUiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij5LZWVwIENvbXBvbmVudHMgdW5kZXIgMjVLPC9hPjwvbGk+DQo8L3VsPg0KPGgzPjxhIG5hbWU9IkFja25vd2xlZGdtZW50cyI+PC9hPkFja25vd2xlZGdtZW50czwvaDM+DQo8cD5NaW5pZnkgd2FzIGluc3BpcmVkIGJ5IDxhIGhyZWY9Imh0dHA6Ly9jb2RlLmdvb2dsZS5jb20vcC9qc2Nzc2NvbXAvIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub2ZvbGxvdyI+anNjc3Njb21wPC9hPiBieSBNYXhpbSBNYXJ0eW55dWsgYW5kIGJ5IHRoZSBhcnRpY2xlIFwnPGEgaHJlZj0iaHR0cDovL3d3dy5odW5sb2NrLmNvbS9ibG9ncy9TdXBlcmNoYXJnZWRfSmF2YXNjcmlwdCIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPlN1cGVyY2hhcmdlZCBKYXZhU2NyaXB0PC9hPlwnIGJ5IFBhdHJpY2sgSHVubG9jay4gPC9wPg0KPHA+VGhlIDxhIGhyZWY9Imh0dHA6Ly93d3cuY3JvY2tmb3JkLmNvbS9qYXZhc2NyaXB0L2pzbWluLmh0bWwiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij5KU01pbiBsaWJyYXJ5PC9hPiB1c2VkIGZvciBKYXZhU2NyaXB0IG1pbmlmaWNhdGlvbiB3YXMgb3JpZ2luYWxseSAgIHdyaXR0ZW4gYnkgRG91Z2xhcyBDcm9ja2ZvcmQgYW5kIHdhcyA8YSBocmVmPSJodHRwOi8vY29kZS5nb29nbGUuY29tL3AvanNtaW4tcGhwIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub2ZvbGxvdyI+cG9ydGVkIHRvIFBIUDwvYT4gYnkgUnlhbiAgIEdyb3ZlIHNwZWNpZmljYWxseSBmb3IgdXNlIGluIE1pbmlmeS4gPC9wPg0KDQoNCjxoMz5TdXBwb3J0PC9oMz4NCjxoND5TY3JlZW5jYXN0cyBmb3IgZXh0cmEgaGVscCB3aWxsIGZhbGxvdy0tLSBvbiB0aGUgVE9ETzwvaDQ+DQo8cD5UaGlzIG1vZHVsZSBkb2VzIG5vdCBpbmNsdWRlIGNvbW1lcmNpYWwgc3VwcG9ydC4gSG93ZXZlciwgdGhlcmUgYXJlIGEgbnVtYmVyIG9mIHJlc291cmNlcyBhdmFpbGFibGUgdG8gaGVscCB5b3Ugd2l0aCBpdDo8L3A+DQo8dWw+DQo8bGk+Rm9yIHRoZSBsYXRlc3QgdmVyc2lvbiBvZiB0aGlzIG1vZHVsZSBvciB0byBmaWxlIGEgYnVnIHJlcG9ydCB2aXNpdCA8YSBocmVmPSJodHRwOi8vZGV2LmNtc21hZGVzaW1wbGUub3JnL3Byb2plY3RzL3NjcmlwdGRlcGxveSI+dGhlIENNUyBGb3JnZTwvYT4uPC9saT4NCjxsaT5BZGRpdGlvbmFsIGRpc2N1c3Npb24gb2YgdGhpcyBtb2R1bGUgbWF5IGFsc28gYmUgZm91bmQgaW4gdGhlIDxhIGhyZWY9Imh0dHA6Ly9mb3J1bS5jbXNtYWRlc2ltcGxlLm9yZyI+Q01TIE1hZGUgU2ltcGxlIEZvcnVtczwvYT4uPC9saT4NCjwvdWw+DQoNCjxoMz5Db3B5cmlnaHQgYW5kIExpY2Vuc2U8L2gzPg0KPHA+Q29weXJpZ2h0ICZjb3B5OyAyMDA5LCBqZXJlbXlCYXNzICZsdDs8YSBocmVmPSJodHRwOi8vY29yYmVuc3Byb2R1Y3RzLmNvbSI+Y29yYmVuc3Byb2R1Y3RzLmNvbTwvYT4mZ3Q7IEFsbCBSaWdodHMgQXJlIFJlc2VydmVkLjwvcD4NCjxzdHJvbmc+U3VwcG9ydCBtb3JlIG1vZHMgbGlrZSB0aGlzOjwvc3Ryb25nPjxmb3JtIGFjdGlvbj0iaHR0cHM6Ly93d3cucGF5cGFsLmNvbS9jZ2ktYmluL3dlYnNjciIgbWV0aG9kPSJwb3N0Ij4NCjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImNtZCIgdmFsdWU9Il9zLXhjbGljayI+DQo8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJob3N0ZWRfYnV0dG9uX2lkIiB2YWx1ZT0iODgxNzY3NSI+DQo8aW5wdXQgdHlwZT0iaW1hZ2UiIHNyYz0iaHR0cHM6Ly93d3cucGF5cGFsLmNvbS9lbl9VUy9pL2J0bi9idG5fZG9uYXRlX0xHLmdpZiIgYm9yZGVyPSIwIiBuYW1lPSJzdWJtaXQiIGFsdD0iUGF5UGFsIC0gVGhlIHNhZmVyLCBlYXNpZXIgd2F5IHRvIHBheSBvbmxpbmUhIj4NCjxpbWcgYWx0PSIiIGJvcmRlcj0iMCIgc3JjPSJodHRwczovL3d3dy5wYXlwYWwuY29tL2VuX1VTL2kvc2NyL3BpeGVsLmdpZiIgd2lkdGg9IjEiIGhlaWdodD0iMSI+DQo8L2Zvcm0+PGJyLz4NCjxwPlRoaXMgbW9kdWxlIGhhcyBiZWVuIHJlbGVhc2VkIHVuZGVyIHRoZSA8YSBocmVmPSJodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwiPkdOVSBQdWJsaWMgTGljZW5zZTwvYT4uIFlvdSBtdXN0IGFncmVlIHRvIHRoaXMgbGljZW5zZSBiZWZvcmUgdXNpbmcgdGhlIG1vZHVsZS48L3A+DQo8L2RpdiA+PGIgY2xhc3M9InJib3R0b20iPjxiIGNsYXNzPSJyNCI+PC9iPjxiIGNsYXNzPSJyMyI+PC9iPiA8YiBjbGFzcz0icjIiPjwvYj4gPGIgY2xhc3M9InIxIj48L2I+PC9iPg0KDQo8L2Rpdj4NCic7DQo/Pg0K]]></data>
	</file>
	<file>
	  <filename>/lang/ext/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lang/ext/de_DE.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ1NjcmlwdCBEZXBsb3knOwokbGFuZ1sncG9zdGluc3RhbGwnXSA9ICdTaWUgc29sbHRlbiBzaWNoIGFscyBlcnN0ZXMgZGllIEhpbGZlIGFuc2VoZW4uJzsKJGxhbmdbJ3Bvc3R1bmluc3RhbGwnXSA9ICdMYXNzZW4gU2llIHVucyB3aXNzZW4sIHdpZSB3aXIgU2NyaXB0RGVwbG95IGJlc3NlciBtYWNoZW4gayZvdW1sO25uZW4uIDxhIGhyZWY9Imh0dHA6Ly9oZWxwLmNvcmJlbnNwcm9kdWN0cy5jb20vbWFrZS1jb250YWN0Lmh0bWwiPktvbnRha3RpZXJlbiBTaWUgdW5zLCB3aXIgZnJldWVuIHVucyB2b24gSWhuZW4genUgaCZvdW1sO3Jlbi48L2E+JzsKJGxhbmdbJ3JlYWxseV91bmluc3RhbGwnXSA9ICdVbmluc3RhbGxpbmcgdGhpcyBtb2R1bGUgd2lsbCBub3QgYWZmZWN0IGFueSBldmVudCBkYXRhIGFuZCBhbGwgYm9va3MgdG8gZGF0ZSB3aWxsIHN0aWxsIGJlIHRoZXJlLiBEbyB5b3Ugd2lzaCB0byBjb250aW51ZT8nOwokbGFuZ1sndW5pbnN0YWxsZWQnXSA9ICdNb2R1bCBkZWluc3RhbGxpZXJ0Lic7CiRsYW5nWydpbnN0YWxsZWQnXSA9ICdNb2R1bHZlcnNpb24gJXMgaW5zdGFsbGllcnQuJzsKJGxhbmdbJ3VwZ3JhZGVkJ10gPSAnTW9kdWwgYXVmIFZlcnNpb24gJXMgYWt0dWFsaXNpZXJ0Lic7CiRsYW5nWydtb2R1bGVfb3B0aW9ucyddID0gJ01vZHVsb3B0aW9uZW4nOwokbGFuZ1sndGVtcGxhdGVfbWFuZyddID0gJ1RlbXBsYXRlIE1hbmFnZXInOwokbGFuZ1snRGVwbG95bWVudHNldHRpbmdzJ10gPSAnRW50d2lja2x1bmdzb3B0aW9uZW4nOwokbGFuZ1snVmFsc2V0dGluZ3MnXSA9ICdWYWxpZGllcnVuZ3NlaW5zdGVsbHVuZ2VuJzsKJGxhbmdbJ2VuJ10gPSAnRW5nbGlzY2ggKEVuZ2xpc2gpJzsKJGxhbmdbJ2ZyJ10gPSAnRnJhbiZjY2VkaWw7YWlzIChGcmFueiZvdW1sO3Npc2NoKSc7CiRsYW5nWydpdCddID0gJ0l0YWxpYW5vIChJdGFsaWVuaXNjaCknOwokbGFuZ1sna28nXSA9ICdLb3JlYW4gKEtvcmVhbmlzY2gpJzsKJGxhbmdbJ2phJ10gPSAnSmFwYW5lc2UgKEphcGFuaXNjaCknOwokbGFuZ1snZXMnXSA9ICdFc3BhJm50aWxkZTtvbCAoU3BhbmlzY2gpJzsKJGxhbmdbJ3poLWNuJ10gPSAnQ2hpbmVzZSAoQ2hpbmVzaXNjaCknOwokbGFuZ1snbmwnXSA9ICdOZWRlcmxhbmRzIChIb2xsJmF1bWw7bmRpc2NoKSc7CiRsYW5nWydkZSddID0gJ0RldXRzY2gnOwokbGFuZ1sncGwnXSA9ICdQb2xza2kgKFBvbG5pc2NoKSc7CiRsYW5nWydybyddID0gJ1JvbWFuaWFuIChSb20mYXVtbDtuaXNjaCknOwokbGFuZ1snY3MnXSA9ICcmRWdyYXZlO2Umc2Nhcm9uO3RpbmEgKEVzdGlzY2gpJzsKJGxhbmdbJ2JnJ10gPSAnQnVsZ2FyaWEnOwokbGFuZ1snc3YnXSA9ICdTdmVuc2thJzsKJGxhbmdbJ2ZhJ10gPSAnUGVyc2lhbiAoRmFyc2kpJzsKJGxhbmdbJ3J1J10gPSAnUnVzc2lhbiAnOwokbGFuZ1sncHQtQlInXSA9ICcgQnJhemlsbGlhbiBQb3J0dWd1ZXNlIChzdGFuZGFyZCknOwokbGFuZ1snTG5vbmUnXSA9ICdLZWluZSBXYXJudW5nZW4nOwokbGFuZ1snTDAnXSA9ICdMZXZlbCAwJzsKJGxhbmdbJ0wxJ10gPSAnTGV2ZWwgMSc7CiRsYW5nWydMMiddID0gJ0xldmVsIDInOwokbGFuZ1snY3NzMSddID0gJ0NTUyAxJzsKJGxhbmdbJ2NzczInXSA9ICdDU1MgMic7CiRsYW5nWydjc3MyMSddID0gJ0NTUyAyLjEnOwokbGFuZ1snY3NzMyddID0gJ0NTUyAzJzsKJGxhbmdbJ3N2ZyddID0gJ1NWRyc7CiRsYW5nWydzdmdiYXNpYyddID0gJ1NWRyBiYXNpYyc7CiRsYW5nWydzdmd0aW55J10gPSAnU1ZHIHRpbnknOwokbGFuZ1snbW9iaWxlJ10gPSAnbW9iaWxlJzsKJGxhbmdbJ2F0c2MtdHYnXSA9ICdhdHNjLXR2JzsKJGxhbmdbJ3R2J10gPSAnSW50ZW5kZWQgZm9yIHRlbGV2aXNpb24tdHlwZSBkZXZpY2VzLic7CiRsYW5nWydub25lJ10gPSAnbmljaHRzJzsKJGxhbmdbJ3NhdmVWQUxzZXR0aW5ncyddID0gJ1ZhbGlkaWVydW5nc2VpbnN0ZWxsdW5nZW4gc3BlaWNoZXJuJzsKJGxhbmdbJ3NldHRpbmdzJ10gPSAnRWluc3RlbGx1bmdlbic7CiRsYW5nWydzZXR0aW5nc3NhdmVkJ10gPSAnRWluc3RlbGx1bmdlbiBnZXNwZWljaGVydCc7CiRsYW5nWydsZWF2ZWNvZGUnXSA9ICdDb2RlIG5pY2h0IHZlciZhdW1sO25kZXJuJzsKJGxhbmdbJ2Zvcm1hdGNvZGUnXSA9ICdDb2RlIHNjaCZvdW1sO24gZm9ybWF0aWVyZW4nOwokbGFuZ1snc2NyYW1ibGVjb2RlJ10gPSAnQ29kZSB6dXNhbW1lbnNjaHJlaWJlbic7CiRsYW5nWydjbGVhbmNvZGUnXSA9ICdDb2RlIGJlcmVpbmlnZW4gdW5kIGlycmVsZXZhbnRlIFN0ZWxsZW4gZW50ZmVybmVuJzsKJGxhbmdbJ3NhdmVzZXR0aW5ncyddID0gJ0VpbnN0ZWxsdW5nZW4gc3BlaWNoZXJuJzsKJGxhbmdbJ21hbmdsZXR5cGV0ZXh0J10gPSAnQ29kZWZvcm1hdGllcnVuZyc7CiRsYW5nWydicmllZiddID0gJ0JyaWVmJzsKJGxhbmdbJ3ZlcmJvc2UnXSA9ICdWZXJib3NlJzsKJGxhbmdbJ2NvZGVmaXhlcyddID0gJ0NvZGUgZml4ZXMnOwokbGFuZ1snZm9yY2Vsb3dlcnRhZ3N0ZXh0J10gPSAnS2xlaW5idWNoc3RhYmVuIGluIFRhZ3MgZXJ6d2luZ2VuJzsKJGxhbmdbJ2ZvcmNlbG93ZXJ0YWdzaGVscCddID0gJ1p1ciBiZXNzZXJlbiBYSFRNTC1Lb21wYXRpYmlsaXQmYXVtbDt0JzsKJGxhbmdbJ2hpZGVtZXNzYWdlc3RleHQnXSA9ICdOYWNocmljaHRlbiBhbSBFbmRlIGRlcyAoWClIVE1MLUNvZGVzIHZlcmJlcmdlbic7CiRsYW5nWydpbmRlbnR3aWR0aHRleHQnXSA9ICdCcmVpdGUgZGVyIEVpbnImdXVtbDtja3VuZyc7CiRsYW5nWydzcGFjZXMnXSA9ICdMZWVyemVpY2hlbic7CiRsYW5nWydkZWJ1Z2xldmVsdGV4dCddID0gJ0Ftb3VudCBvZiBkZWJ1Z2dpbmcgb3V0cHV0OiAnOwokbGFuZ1snZGVidWd0ZXh0J10gPSAnQ29kZSBkZWJ1ZyBtb2RlJzsKJGxhbmdbJ1NjcmlwdF9saXN0J10gPSAnU2NyaXB0cyc7CiRsYW5nWydBc3NfaGVhZGVyJ10gPSAnVW5pZmllZCBTY3JpcHRzJzsKJGxhbmdbJ1NhbXBsZVRhZyddID0gJ0JlaXNwaWVsLVRhZyc7CiRsYW5nWydwcm9tcHRfbmV3U2NyaXB0J10gPSAnTmV1ZXMgU2NyaXB0IGhpbnp1ZiZ1dW1sO2dlbic7CiRsYW5nWydwcm9tcHRfbmV3U2NyaXB0QXNzJ10gPSAnTmV1ZSBTY3JpcHQtR3J1cHBpZXJ1bmcgaGluenVmJnV1bWw7Z2VuJzsKJGxhbmdbJ3Byb21wdF9hZGR0ZW1wbGF0ZSddID0gJ05ldWVzIFRlbXBsYXRlIGhpbnp1ZiZ1dW1sO2dlbic7CiRsYW5nWyd0aXRsZV9Hcm91cHMnXSA9ICdMaXN0ZSBncnVwcGllcnRlciBTY3JpcHRlJzsKJGxhbmdbJ3RpdGxlX1NjcmlwdHMnXSA9ICdMaXN0ZSBlaW56ZWxuZXIgU2NyaXB0ZSc7CiRsYW5nWydhcmV5b3VzdXJlJ10gPSAnSW1wb3J0YW50OlxuXG5JZiB0aGlzIGlzIGRlbGV0ZWQgYWxsIGluZm9ybWF0aW9uIHdpbGwgYmUgbG9zdCFcblxuSWYgeW91IGhhdmUgdGhpcyBzY3JpcHQgaW4gYSBncm91cCB5b3Ugd2lsbCBicmVhayB0aGUgdGllIGFuZCB3aWxsIG5lZWQgdG8gZWRpdCB0aGUgZ3JvdXAuXG5JdCBpcyBiZXN0IHRvIHN0YXJ0IHRoZSBkZWxldGlvbiBwcm9jZXNzIGZyb20gdGhlIEFzc2lnbm1lbnQgYXJlYS5cblxuWU9VIEFMU08gTE9TRSBZT1VSIFJFVklTSU9OIEhJU1RPUlkgRk9SIFRISVMgU0NSSVBULi4gQVJFIFlPVSBSRUFMWSBTVVJFPz8/JzsKJGxhbmdbJ3NtYXJ0eUhvdyddID0gJ1RoZSBzbWFydHkgd29ya3MgbGlrZSB0aGlzLi4uIFdoZXJlIHlvdSYjMDM5O2QgaGF2ZSB7JHNtYXJ0eS5ub3d9IHlvdSBkbyB7eyRzbWFydHkubm93fX0gIC4gIE5vdyB5b3UgY2FuIGRvIHNtYXJ0eSBzdHVmZic7CiRsYW5nWydhbGwnXSA9ICdTdWl0YWJsZSBmb3IgYWxsIGRldmljZXMuJzsKJGxhbmdbJ2F1cmFsJ10gPSAnSW50ZW5kZWQgZm9yIHNwZWVjaCBzeW50aGVzaXplcnMuJzsKJGxhbmdbJ2JyYWlsbGUnXSA9ICdJbnRlbmRlZCBmb3IgYnJhaWxsZSB0YWN0aWxlIGZlZWRiYWNrIGRldmljZXMuJzsKJGxhbmdbJ2VtYm9zc2VkJ10gPSAnSW50ZW5kZWQgZm9yIHBhZ2VkIGJyYWlsbGUgcHJpbnRlcnMuJzsKJGxhbmdbJ2hhbmRoZWxkJ10gPSAnSW50ZW5kZWQgZm9yIGhhbmRoZWxkIGRldmljZXMnOwokbGFuZ1sncHJpbnQnXSA9ICdJbnRlbmRlZCBmb3IgcGFnZWQsIG9wYXF1ZSBtYXRlcmlhbCBhbmQgZm9yIGRvY3VtZW50cyB2aWV3ZWQgb24gc2NyZWVuIGluIHByaW50IHByZXZpZXcgbW9kZS4nOwokbGFuZ1sncHJvamVjdGlvbiddID0gJyBJbnRlbmRlZCBmb3IgcHJvamVjdGVkIHByZXNlbnRhdGlvbnMsIGZvciBleGFtcGxlIHByb2plY3RvcnMgb3IgcHJpbnQgdG8gdHJhbnNwYXJlbmNpZXMuJzsKJGxhbmdbJ3NjcmVlbiddID0gJ0ludGVuZGVkIHByaW1hcmlseSBmb3IgY29sb3IgY29tcHV0ZXIgc2NyZWVucy4nOwokbGFuZ1sndHR5J10gPSAnSW50ZW5kZWQgZm9yIG1lZGlhIHVzaW5nIGEgZml4ZWQtcGl0Y2ggY2hhcmFjdGVyIGdyaWQsIHN1Y2ggYXMgdGVsZXR5cGVzIGFuZCB0ZXJtaW5hbHMuJzsKJGxhbmdbJ01lZGlhVHlwZSddID0gJ2FsbCA6IFN1aXRhYmxlIGZvciBhbGwgZGV2aWNlcy48YnIvPg0KYXVyYWwgOiBJbnRlbmRlZCBmb3Igc3BlZWNoIHN5bnRoZXNpemVycy48YnIvPg0KYnJhaWxsZSA6IEludGVuZGVkIGZvciBicmFpbGxlIHRhY3RpbGUgZmVlZGJhY2sgZGV2aWNlcy48YnIvPg0KZW1ib3NzZWQgOiBJbnRlbmRlZCBmb3IgcGFnZWQgYnJhaWxsZSBwcmludGVycy48YnIvPg0KaGFuZGhlbGQgOiBJbnRlbmRlZCBmb3IgaGFuZGhlbGQgZGV2aWNlczxici8+DQpwcmludCA6IEludGVuZGVkIGZvciBwYWdlZCwgb3BhcXVlIG1hdGVyaWFsIGFuZCBmb3IgZG9jdW1lbnRzIHZpZXdlZCBvbiBzY3JlZW4gaW4gcHJpbnQgcHJldmlldyBtb2RlLjxici8+DQpwcm9qZWN0aW9uIDogSW50ZW5kZWQgZm9yIHByb2plY3RlZCBwcmVzZW50YXRpb25zLCBmb3IgZXhhbXBsZSBwcm9qZWN0b3JzIG9yIHByaW50IHRvIHRyYW5zcGFyZW5jaWVzLjxici8+DQpzY3JlZW4gOiBJbnRlbmRlZCBwcmltYXJpbHkgZm9yIGNvbG9yIGNvbXB1dGVyIHNjcmVlbnMuPGJyLz4NCnR0eSA6IEludGVuZGVkIGZvciBtZWRpYSB1c2luZyBhIGZpeGVkLXBpdGNoIGNoYXJhY3RlciBncmlkLCBzdWNoIGFzIHRlbGV0eXBlcyBhbmQgdGVybWluYWxzLjxici8+DQp0diA6IEludGVuZGVkIGZvciB0ZWxldmlzaW9uLXR5cGUgZGV2aWNlcy4nOwokbGFuZ1snQ2FuY2VsZWQnXSA9ICdZb3UgQ2FuY2VsZWQgb3V0IG9mIHRoZSBvcGVyYXRpb24uICBBbnkgV29yayB5b3UgbWF5IGhhdmUgZW50ZXJlZCBoYXMgYmVlbiBsb3N0Lic7CiRsYW5nWydCdG5BRERFRCddID0gJ1lvdSBKdXN0IEFkZGVkIGEgbmV3IFNjcmlwdCc7CiRsYW5nWydCdG5FRElURUQnXSA9ICdZb3UgSnVzdCBFZGl0ZWQgYW4gZXhpc3RpbmcgU2NyaXB0JzsKJGxhbmdbJ0J0bkRFTEVURUQnXSA9ICdZb3UgSnVzdCBEZWxldGVkIGFuIGV4aXN0aW5nIFNjcmlwdCc7CiRsYW5nWyd0eXBlX2xhYmVsJ10gPSAnVHlwZSc7CiRsYW5nWydyZXZpc2lvbiddID0gJ1JldmlzaW9uJzsKJGxhbmdbJ2lzRWRpdCddID0gJ2lzIGVkaXRpbmcnOwokbGFuZ1snc3RlYWwnXSA9ICdTdGVhbCB0aGUgZG9jdW1lbnQnOwokbGFuZ1snZ2V0X3RhZyddID0gJ0dldCB0aGUgdGFnJzsKJGxhbmdbJ2VtdHB5R3JvdXAnXSA9ICdZb3UmIzAzOTtsbCBuZWVkIHRvIGFkZCBhIHNjcmlwdCB0byB0aGUgZ3JvdXAgYmVmb3JlIGNhbGxpbmcgaXQnOwokbGFuZ1snTm9fU2NyaXB0cyddID0gJ1RoZXJlIGN1cnJlbnRseSBubyBzY3JpcHRzJzsKJGxhbmdbJ05vX0dyb3VwcyddID0gJ1RoZXJlIGN1cnJlbnRseSBubyBncm91cHMnOwokbGFuZ1snc2V0aW5hY3RpdmUnXSA9ICdTZXQgdGVtcGxhdGUgaW5hY3RpdmUnOwokbGFuZ1snc2V0YWN0aXZlJ10gPSAnU2V0IHRlbXBsYXRlIGFjdGl2ZSc7CiRsYW5nWydub3RkZWZhdWx0J10gPSAnTm90IHRoZSBkZWZhdWx0IHRlbXBsYXRlLic7CiRsYW5nWydub3R2YWxpZCddID0gJ1N0eWxlc2hlZXQgYXNzb2NpYXRpb25zIGhhdmUgbm90IGJlZW4gc2V0IHByb3Blcmx5IGZvciB0aGlzIHRlbXBsYXRlJzsKJGxhbmdbJ3RlbXBsYXRlX3RhYiddID0gJ1N0eWxlc3dpdGNoZXIgRm9ybSB0ZW1wbGF0ZSc7CiRsYW5nWydwYWdlX3RlbXBsYXRlc190YWInXSA9ICdQYWdlIFRlbXBsYXRlcyc7CiRsYW5nWydzdWJtaXQnXSA9ICdTdWJtaXQnOwokbGFuZ1snYXBwbHknXSA9ICdBcHBseSc7CiRsYW5nWydjYW5jZWwnXSA9ICdDYW5jZWwnOwokbGFuZ1snZ28nXSA9ICdHbyc7CiRsYW5nWydwcmV2aWV3J10gPSAncHJldmlldyc7CiRsYW5nWydpbmxpbmVoZWxwJ10gPSAnSGVscCc7CiRsYW5nWydzY2lwdG9wdGlvbnMnXSA9ICdPcHRpb25zJzsKJGxhbmdbJ3BlcnNpc3RlbnQnXSA9ICdQZXJzaXN0ZW50JzsKJGxhbmdbJ3ByZWZlcnJlZCddID0gJ1ByZWZlcnJlZCc7CiRsYW5nWydhbHRlcm5hdGUnXSA9ICdBbHRlcm5hdGUnOwokbGFuZ1snbmFtZSddID0gJ05hbWUnOwokbGFuZ1sndGl0bGUnXSA9ICdUaXRsZSc7CiRsYW5nWydpZCddID0gJ0lkJzsKJGxhbmdbJ2FjdGl2ZSddID0gJ0FjdGl2ZSc7CiRsYW5nWydkZWZhdWx0J10gPSAnRGVmYXVsdCc7CiRsYW5nWyd2YWxpZCddID0gJ1ZhbGlkJzsKJGxhbmdbJ3VzYWdlX2NvdW50J10gPSAnVXNhZ2UnOwokbGFuZ1sneWVzJ10gPSAnWWVzJzsKJGxhbmdbJ25vJ10gPSAnTm8nOwokbGFuZ1snZWRpdGNzcyddID0gJ0VkaXQgc3R5bGVzaGVldCBhc3NvY2lhdGlvbnMnOwokbGFuZ1snZWRpdHRlbXBsYXRlJ10gPSAnRWRpdCBUZW1wbGF0ZSBjb250ZW50JzsKJGxhbmdbJ2RlbGV0ZXRlbXBsYXRlJ10gPSAnRGVsZXRlIFRlbXBsYXRlJzsKJGxhbmdbJ2NvcHl0ZW1wbGF0ZSddID0gJ0NvcHkgVGVtcGxhdGUnOwokbGFuZ1sncHJvbXB0X3N0eWxlc2hlZXQnXSA9ICdTZWxlY3QgYSBwYWdlIHN0eWxlJzsKJGxhbmdbJ3Byb21wdF90ZW1wbGF0ZSddID0gJ1RlbXBsYXRlJzsKJGxhbmdbJ3Byb21wdF9ncm91cG5hbWUnXSA9ICdHcm91cCBOYW1lJzsKJGxhbmdbJ3Byb21wdF9hZGRncm91cCddID0gJ0FkZCBBIEdyb3VwJzsKJGxhbmdbJ3Byb21wdF9ncm91cHR5cGUnXSA9ICdHcm91cCBUeXBlJzsKJGxhbmdbJ3Byb21wdF9hZGQnXSA9ICdBZGQnOwokbGFuZ1sncHJvbXB0X3NlbGVjdG9uZSddID0gJ1NlbGVjdCBPbmUnOwokbGFuZ1sncHJvbXB0X2FkZF9hbHRlcm5hdGUnXSA9ICdBZGQgYW4gQWx0ZXJuYXRlJzsKJGxhbmdbJ2Vycm9yX3BsZWFzZV9zZWxlY3Rfc3R5bGVzaGVldCddID0gJ1BsZWFzZSBTZWxlY3QgYSBTdHlsZXNoZWV0JzsKJGxhbmdbJ1NjcmlwdFNldF9sYWJlbCddID0gJ1NjcmlwdCBJRCc7CiRsYW5nWydzY3JpcHRUeXBlX2xhYmVsJ10gPSAnU2NyaXB0IFR5cGUnOwokbGFuZ1snU2NyaXB0TmFtZV9sYWJlbCddID0gJ1NjcmlwdCBOYW1lJzsKJGxhbmdbJ3RlbXBsYXRlbmFtZV9sYWJlbCddID0gJ1RlbXBsYXRlIE5hbWUnOwokbGFuZ1snU2luZ2xlQ29kZV9sYWJlbCddID0gJ0RlZmF1bHQgVGFnJzsKJGxhbmdbJ0dyb3VwdFNpemVfbGFiZWwnXSA9ICdUb3RhbCc7CiRsYW5nWydub3Rlc19sYWJlbCddID0gJ05vdGVzJzsKJGxhbmdbJ1Nob3dWYWxfbGFibGUnXSA9ICdLZWVwIE1lc3NhZ2VzIE9wZW4nOwokbGFuZ1snVHVybk9OVmFsX2xhYmxlJ10gPSAnVHVybiA8c3Ryb25nPk9OPC9zdHJvbmc+IFZhbGlkYXRpb24nOwokbGFuZ1snaG90TGlua0NoZWNrX2xhYmxlJ10gPSAnRG8gSG90TGluayBDaGVjayc7CiRsYW5nWydUcnVuT25ob3RMaW5rQ2hlY2snXSA9ICdZb3UgbmVlZCB0byB0dXJuIG9uIHRoZSBIb3RMaW5rIENoZWNrJzsKJGxhbmdbJ2ZpbHRlclByb3BfbGFibGUnXSA9ICcgRmlsdGVyIG91dCBwcm9wZXJ0aWVzIHRvIGhlbHAgdmFsaWRhdGUnOwokbGFuZ1snQ1NTcHJvZmlsZV9sYWJsZSddID0gJyBDU1MgUHJvZmlsZSc7CiRsYW5nWyd1c2VybWVkaXVtX2xhYmxlJ10gPSAnIFVzZXIgTWVkaXVtJzsKJGxhbmdbJ1ZBTExhbmdfbGFibGUnXSA9ICcgTGFuZ3VhZ2UnOwokbGFuZ1sndzNjQ1NTd2FybmluZ19sYWJsZSddID0gJyB3M2MgQ1NTIFdhcm5pbmcgTGV2ZWwnOwokbGFuZ1snTWVkaWFUeXBlX2xhYmVsJ10gPSAnTWVkaWFUeXBlJzsKJGxhbmdbJ01pbmlmeV9sYWJlbCddID0gJ01pbmlmeSBvbiBPdXRwdXQnOwokbGFuZ1snQ3JlYXRpb25EYXRlX2xhYmVsJ10gPSAnQ3JlYXRpb24gRGF0ZSc7CiRsYW5nWydNb2RpZmVkRGF0ZV9sYWJlbCddID0gJ01vZGlmaWVkIERhdGUnOwokbGFuZ1sncGF0aE9wdGlvbl9sYWJlbCddID0gJ1VzZSBhIHBhdGg8ZW0+KHVzZSAmcXVvdDsvdXBsb2Fkcy8uLi4mcXVvdDspPC9lbT4nOwokbGFuZ1sncm9vdFVSTE9wdGlvbl9sYWJlbCddID0gJ1VzZSBhIHNwZWNpZmljIHJvb3QgVVJMPGVtPih1c2Ugc2NoZW1hICZxdW90O2h0dHBzOi8vc3ViLmRvbWFpbi50bGQvJnF1b3Q7KTwvZW0+JzsKJGxhbmdbJ0dyb290VVJMJ10gPSAnR2xvYmFsIFNjcmlwdCBSb290IFVSTCc7CiRsYW5nWydlbXB0eWNhY2hlRXJyb3JfZG9BRFVJVCddID0gJ2ZhaWxlZCB0byBlbXB0eSB0aGUgY2FjaGUgYXQnOwokbGFuZ1snZW1wdGllZENhY2hfZG9BRFVJVCddID0gJ2VtcHRpZWQgdGhlIHNjcmlwdCBjYWNoZSc7CiRsYW5nWydjbGVhcmVkUmV2aXNpb25fZG9BRFVJVCddID0gJ2NsZWFyZWQgdGhlIHJldmlzaW9uIGhpc3RvcnkgZm9yJzsKJGxhbmdbJ0NoZWNrZWRPdXRfZG9BRFVJVCddID0gJ0NoZWNrZWQgb3V0IHNjcmlwdCAnOwokbGFuZ1sncmVsZWFzZWRfZG9BRFVJVCddID0gJ3JlbGVhc2VkIHNjcmlwdCAnOwokbGFuZ1snU2NyaXB0SXNfbGFiZWwnXSA9ICdVc2UgdGhpcyBzY3JpcHQgPGVtPihOb3RlOiBJZiBhIHBhdGggaXMgc2V0LCBpdCB3aWxsIG92ZXIgcmlkZSB0aGlzKTwvZW0+JzsKJGxhbmdbJ2RlYnVnSVRfbGFiZWwnXSA9ICdkZWJ1Z0lUJzsKJGxhbmdbJ2RlYnVnSVRub3RlX2xhYmVsJ10gPSAnPGVtPihNdXN0IGhhdmUgRmlyZXBocCBtb2QpPC9lbT4nOwokbGFuZ1snZGVidWdUJ10gPSAnRGVidWdpbmcgT3B0aW9ucyc7CiRsYW5nWydFZGl0SGlzdG9yeSddID0gJ1VzZXIgSGlzdG9yeSBFZGl0aW5nJzsKJGxhbmdbJ25vbmVJblR5cGUnXSA9ICc8aDE+WW91IG11c3QgZmlyc3QgYWRkIDxici8+YSBzY3JpcHQgaW4gdGhpcyB0eXBlPC9oMT4nOwokbGFuZ1sncmV2aXNpb25UaXRsZSddID0gJ1JldmlzaW9uIEhpc3RvcnknOwokbGFuZ1sncmV2aXNpb25fbGFiZWwnXSA9ICc8c3Ryb25nPlR1cm4gb24gdGhlIHJldmlzaW9uIGhpc3Rvcnk8L3N0cm9uZz4nOwokbGFuZ1sncmV2aXNpb25fb3AnXSA9ICc8aDE+UmV2aXNpb248L2gxPg0KPGgzPlR1cm5pbmcgdGhpcyBvZmYgZG9lcyBub3QgY2xlYXIgdGhlIGhpc3RvcnkgaWYgaXQgd2FzIG9uIGJlZm9yZS4gIExpa2UgaXQgdG8gcGF1c2UuPC9oMz4nOwokbGFuZ1sncmV2aXNpb25fTElNSVRfbGFiZWwnXSA9ICdTZXQgUmV2aXNpb24gTElNSVQnOwokbGFuZ1snY2xlYXJSZXYnXSA9ICdDbGVhciBIaXN0b3J5JzsKJGxhbmdbJ3ByZWxvYWRfQ1NTaW1hZ2VUaXRsZSddID0gJ1ByZWxvYWQgQ3NzIEltYWdlcyc7CiRsYW5nWydwcmVsb2FkX0NTU2ltYWdlX2xhYmVsJ10gPSAnPHN0cm9uZz5UdXJuIG9uIFByZWxvYWRlZCBDc3MgSW1hZ2VzPC9zdHJvbmc+JzsKJGxhbmdbJ3ByZWxvYWRfQ1NTaW1hZ2UnXSA9ICc8aDE+UHJlbG9hZCBDc3MgSW1hZ2VzPC9oMT4NCjxoMz5JZiB5b3UgaGF2ZSB5b3VyIHN5c3RlbSBhbGwgc2V0IHVwIHJpZ2h0LCB0aGlzIHdpbGwgaGVscCB5b3UgZ2V0IGEgZmFzdCBwYXJhbGxlbCBkb3duIGxvYWQgb2YgYWxsIGVsZW1lbnRzLjwvaDM+JzsKJGxhbmdbJ2dsb2JhbHVybCddID0gJzxoMT5TZXQgdGhlIHJvb3QgVVJMPC9oMT4NCjxoMz5Vc2VkIGZvciB3aGVuIHlvdSBuZWVkIFNTTCBzdXBwb3J0IG9yIHdhbnQgdG8gcHVzaCB0aGUgc2NyaXB0cyB0byBhIHN1YmRvbWFpbiB0byBsb3NlIHRoZSBuZWVkbGVzIGNvb2tpZXMuPC9oMz4nOwokbGFuZ1snc21hcnR5T25fbGFiZWwnXSA9ICc8c3Ryb25nPlByb2Nlc3MgU21hcnR5PC9zdHJvbmc+PGJyLz4gZGF0YSBpbiBidXR0b24gZmllbGRzJzsKJGxhbmdbJ3NtYXJ0eU9uJ10gPSAnPGgxPlByb2Nlc3MgU21hcnR5IGRhdGE8L2gxPg0KPGgzPldpdGggdGhpcyB0dXJuZWQgb24geW91IGNhbiBzZXQgdGhlIGJ1dHRvbiBmaWVsZHMgd2l0aCB0aGUgdmFsdWVzIHBhc3NlZCBieSBvdGhlciBtb2R1bGVzIHN1Y2ggYXMgUHJvZHVjdHMgb3IgQ2F0YWxvZ2VyPC9oMz4nOwokbGFuZ1snZmlsZVRpbWVfY3NzX3VybHNfbGFiZWwnXSA9ICc8c3Ryb25nPmhlbHAgYnJlYWsgYSBjbGllbnQgc2lkZSBjYWNoZTwvc3Ryb25nPic7CiRsYW5nWydmaWxlVGltZV9jc3NfdXJscyddID0gJzxoMT5oZWxwIGJyZWFrIGEgY2xpZW50IHNpZGUgY2FjaGU8L2gxPg0KPGgzPlRoaXMgaXMgZG9uZSBieSBhZGRpbmcgYSBmaWxlIGNyZWF0aW9uIHRpbWUgYXQgdGhlIGVuZCBvZiBhIGZpbGUuICBUdXJuaW5nIHRoaXMgb24gd2lsbCBhZGQgdGhpcyB0byBhbGwgbG9jYWwgdXJscy4gKENTUyBvbmx5IGF0bSkgLU5vdGhpbmcgaXMgZG9uZSB0byBob3RsaW5rczwvaDM+JzsKJGxhbmdbJ2VkaXQnXSA9ICdFZGl0JzsKJGxhbmdbJ2RlbGV0ZSddID0gJ0RlbGV0ZSc7CiRsYW5nWydDbG9zZSddID0gJ0Nsb3NlJzsKJGxhbmdbJ09wZW4nXSA9ICdPcGVuJzsKJGxhbmdbJ2RpckVtcHR5J10gPSAnVGhlIGZvbGRlciB3YXMgZW1wdHknOwokbGFuZ1snY2xlYW5UZW1wJ10gPSAnQ2xlYW4gdGhlIHRlbXA/JzsKJGxhbmdbJ3VyVGVtcFBhdGgnXSA9ICdZb3VyIGNhY2hlIHBhdGggaXMnOwokbGFuZ1snTGFzdE1vZCddID0gJ0xhc3QgTW9kaWZpZWQnOwokbGFuZ1snY2FjaGVGZXJyb3InXSA9ICdTY3JpcHREZXBsb3kgY291bGQgbm90IG1ha2UgdGhlIGNhY2hlIGZvbGRlciwgY2hlY2sgeW91ciBmaWxlIHBlcm1pc3Npb25zIGZvciB0aGUgVXBsb2FkcyBhcmVhLic7CiRsYW5nWydOYW1lJ10gPSAnTmFtZSc7CiRsYW5nWydQcm9jY2Vzc2luZyddID0gJ1Byb2Nlc3NpbmcnOwokbGFuZ1snU2F2ZWQnXSA9ICdTYXZlZCc7CiRsYW5nWydEb25lJ10gPSAnRG9uZSc7CiRsYW5nWydWYWxpZGF0aW5nJ10gPSAnVmFsaWRhdGluZyc7CiRsYW5nWydHcm91cHRTZXRfbGFiZWwnXSA9ICdHcm91cCBOYW1lJzsKJGxhbmdbJ0dyb3VwdFR5cGVfbGFiZWwnXSA9ICdUeXBlIG9mIHNjcmlwdHMnOwokbGFuZ1snU2NyaXB0UGlja2VyX2xhYmVsJ10gPSAnU2NyaXB0IFBvb2wnOwokbGFuZ1snTElORSddID0gJ0xJTkUnOwokbGFuZ1snVFlQRSddID0gJ1RZUEUnOwokbGFuZ1snU1VCVFlQRSddID0gJ1NVQlRZUEUnOwokbGFuZ1snU1RSSU5HJ10gPSAnU1RSSU5HJzsKJGxhbmdbJ01FU1NBR0UnXSA9ICdNRVNTQUdFJzsKJGxhbmdbJ0xFVkVMJ10gPSAnTEVWRUwnOwokbGFuZ1snTm90ZXMnXSA9ICdOb3Rlcyc7CiRsYW5nWydXYXJuaW5ncyddID0gJ1dhcm5pbmdzJzsKJGxhbmdbJ0Vycm9ycyddID0gJ0Vycm9ycyc7CiRsYW5nWydoaWRkZW4nXSA9ICdoaWRkZW4nOwokbGFuZ1snU2NyaXB0J10gPSAnU2NyaXB0JzsKJGxhbmdbJ0VVUkxTJ10gPSAnRXh0cmFjdGVkIFVybHMnOwokbGFuZ1snUkNTUyddID0gJ1JlbmRlcmVkIENTUyc7CiRsYW5nWydTQ1NTJ10gPSAnQ1NTIFN0cnVjdHVyZSc7CiRsYW5nWydGQ09OVCddID0gJ0ZpbGUgY29udGVudCc7CiRsYW5nWydpVVJMJ10gPSAnaW1hZ2UgVVJMJzsKJGxhbmdbJ1R5cGUnXSA9ICdUeXBlJzsKJGxhbmdbJ1NpemUnXSA9ICdTaXplJzsKJGxhbmdbJ1N0YXR1cyddID0gJ1N0YXR1cyc7CiRsYW5nWydob3RsaW5rJ10gPSAnPHN0cm9uZz5Ib3RsaW5raW5nOjwvc3Ryb25nPiBhcHBlYXJzICB0byBiZSBhIGhvdGxpbmsuJzsKJGxhbmdbJ0Jyb2tlbmxpbmsnXSA9ICdCcm9rZW4gTGluayc7CiRsYW5nWydOT2Nzc0knXSA9ICdObyBjc3MgaW1hZ2VzJzsKJGxhbmdbJ1llc1ZBbGFzdGVyJ10gPSAnPHN0cm9uZz4qKiB5b3UgYXJlIGZpbHRlcmluZyBlcnJvcnMgYW5kIG1heSBoYXZlIGZpbHRlcmVkIGEgcmVhbCBlcnJvciA8YSBocmVmPSJqYXZhc2NyaXB0OnZvaWQoMCkiIGlkPSJ3aGljaEZpbHRlciI+KHdoaWNoPyk8L2E+PC9zdHJvbmc+JzsKJGxhbmdbJ3JlbG9hZF9hbGVydCddID0gJ1lvdSBhcmUgcmVsb2FkaW5nIHRoZSBzcmNpcHQgZnJvbSB0aGUgbGFzdCBzYXZlIHBvaW50LiAgWW91IGhhdmUgc2F2ZWQgdGhlIHNjcmlwdCBhbHJlYWR5IGFuZCBpZiB5b3UgbmVlZCB0byBnbyBiYWNrIHRvIHRoZSB2ZXJzaW9uIHdoZW4geW91IGZpcnN0IGNhbWUgaW4gdG8gZWRpdCBwbGVhc2UgY2hlY2sgeW91ciByZXZpc2lvbiBoaXN0b3J5Lic7CiRsYW5nWydDbGVhckltZyddID0gJ0RlbGV0ZSBDdXJyZW50IEltYWdlJzsKJGxhbmdbJ0ZpbmlzaCddID0gJ0ZpbmlzaCc7CiRsYW5nWydyZXZlcnQnXSA9ICdSZWxvYWQnOwokbGFuZ1snZm9ybV9jYW5jZWwnXSA9ICdDYW5jZWwnOwokbGFuZ1snU2F2ZSddID0gJ1NhdmUnOwokbGFuZ1snZG9uZSddID0gJ0RvbmUnOwokbGFuZ1snYWRkJ10gPSAnQWRkJzsKJGxhbmdbJ1JFT1JERVInXSA9ICdSZW9yZGVyJzsKJGxhbmdbJ2Zvcm1fc3VibWl0J10gPSAnU2F2ZSBQcmVmZXJlbmNlcyc7CiRsYW5nWydtb2RfcHJlZnNfdGl0bGUnXSA9ICdNb2R1bGUgUHJlZmVyZW5jZXMnOwokbGFuZ1sncHJlZnN1cGRhdGVkJ10gPSAnTW9kdWxlIHByZWZlcmVuY2VzIHVwZGF0ZWQuJzsKJGxhbmdbJ29wdGlvbnN1cGRhdGVkJ10gPSAnb3B0aW9ucyB1cGRhdGVkJzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnU1BFRUQgWU9VUiBTSVRFIFVQIC4uLiEhISEgJmJ1bGw7IE91dHB1dCBkeW5hbWljIEpTIGZpbGVzIGFuZCBDU1MgV0lUSCBzbWFydHkuLi4gJmJ1bGw7IFNldCB0aGUgZmlsZXMgdG8gdXNlIGEgc3ViZG9tYWluLi4uICZidWxsOyBjYWNoZWQuLi4gJmJ1bGw7IG1pbmlmaWVkLi4uICZidWxsOyBEaWQgSSBtZW50aW9uIHlvdSBjYW4gdXNlIHNtYXJ0eSBpbiB5b3VyIEpTIGFuZCBDU1Mgc2NyaXB0ISEhISAtIFNpbXBsZSwgZmxleGlibGUhJzsKJGxhbmdbJ3dlbGNvbWVfdGV4dCddID0gJzxwPkhlbGxvITwvcD4nOwokbGFuZ1snaGVscCddID0gJzxsaW5rIG1lZGlhPSZxdW90O3NjcmVlbiZxdW90OyBocmVmPSZxdW90Oy4uL21vZHVsZXMvU2NyaXB0RGVwbG95L0NTUy9NYXN0ZXJDU1MuY3NzJnF1b3Q7IHR5cGU9JnF1b3Q7dGV4dC9jc3MmcXVvdDsgcmVsPSZxdW90O3N0eWxlc2hlZXQmcXVvdDsvPjxkaXYgY2xhc3M9JnF1b3Q7U2ltV3JhcCZxdW90Oz48YiBjbGFzcz0mcXVvdDtyYm90dG9tJnF1b3Q7PjxiIGNsYXNzPSZxdW90O3IxJnF1b3Q7PjwvYj4gPGIgY2xhc3M9JnF1b3Q7cjImcXVvdDs+PC9iPjxiIGNsYXNzPSZxdW90O3IzJnF1b3Q7PjwvYj4gPGIgY2xhc3M9JnF1b3Q7cjQmcXVvdDs+PC9iPjwvYj4NCg0KPGRpdiBjbGFzcz0mcXVvdDtTaW1jb24mcXVvdDs+IDxoMyBjbGFzcz0mcXVvdDtCYWNrTGluayZxdW90Oz48YSBvbmNsaWNrPSJqYXZhc2NyaXB0OndpbmRvdy5oaXN0b3J5LmdvKC0xKSIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPjw8IEJhY2s8L2E+PC9oMz4NCjxoMT5XaGF0IERvZXMgVGhpcyBEbz8tLS0gdGhpcyBuZWVkcyB1cGRhdGluZzwvaDE+DQo8aDI+V3JpdGUgbWFuYWdlIGFuZCBkZXBsb3kgSlMgYW5kIENTUzwvaDI+DQo8YSBpZD0iU2NyaXB0RGVwbG95Ij48L2E+DQo8cD5TY3JpcHREZXBsb3kgbW9kdWxlIHRoYXQgY2FuIGNvbWJpbmUgbXVsdGlwbGUgQ1NTIG9yIEphdmFzY3JpcHQgZmlsZXMsIGNvbXByZXNzIHRoZWlyIGNvbnRlbnRzIChpLmUuIHJlbW92YWwgb2YgdW5uZWNlc3Nhcnkgd2hpdGVzcGFjZS9jb21tZW50cyksIGFuZCBzZXJ2ZSB0aGUgcmVzdWx0cyB3aXRoIEhUVFAgZW5jb2RpbmcgKGd6aXAvZGVmbGF0ZSkgYW5kIGhlYWRlcnMgdGhhdCBhbGxvdyBvcHRpbWFsIGNsaWVudC1zaWRlIGNhY2hpbmcuIFRoaXMgaGVscHMgeW91IGZvbGxvdyBzZXZlcmFsIG9mIFlhaG9vISYjMDM5O3MgPGEgaHJlZj0iaHR0cDovL2RldmVsb3Blci55YWhvby5jb20vcGVyZm9ybWFuY2UvaW5kZXguaHRtbCNydWxlcyIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPlJ1bGVzIGZvciBIaWdoIFBlcmZvcm1hbmNlIFdlYiBTaXRlczwvYT4uIChTZWUgJnF1b3Q7UHJvYmxlbSBEb21haW4mcXVvdDsgYmVsb3cgZm9yIG1vcmUgaW5mby4pIDwvcD4NCjxoMz5UaGUgU2hvcnQgb2YgaXQ8L2gzPg0KPHA+V2lydGUgeW91ciBzY3JpcHRzLCBzZXQgdGhlIG9yZGVyIGFuZCBTY3JpcHREZXBsb3kgd2lsbCBkbyB0aGUgcmVzdCE8L3A+DQo8dGFibGU+DQogIDx0Ym9keT4NCiAgICA8dHI+DQogICAgICA8dGQgc3R5bGU9JnF1b3Q7Qk9SREVSLVJJR0hUOiAjYWFhIDFweCBzb2xpZDsgUEFERElORy1SSUdIVDogNXB4OyBCT1JERVItVE9QOiAjYWFhIDFweCBzb2xpZDsgUEFERElORy1MRUZUOiA1cHg7IFBBRERJTkctQk9UVE9NOiA1cHg7IEJPUkRFUi1MRUZUOiAjYWFhIDFweCBzb2xpZDsgUEFERElORy1UT1A6IDVweDsgQk9SREVSLUJPVFRPTTogI2FhYSAxcHggc29saWQmcXVvdDs+PHN0cm9uZz5CZWZvcmU8L3N0cm9uZz48L3RkPg0KICAgICAgPHRkIHN0eWxlPSZxdW90O0JPUkRFUi1SSUdIVDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctUklHSFQ6IDVweDsgQk9SREVSLVRPUDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctTEVGVDogNXB4OyBQQURESU5HLUJPVFRPTTogNXB4OyBCT1JERVItTEVGVDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctVE9QOiA1cHg7IEJPUkRFUi1CT1RUT006ICNhYWEgMXB4IHNvbGlkJnF1b3Q7PjxpbWcgc3JjPSZxdW90O2h0dHA6Ly9tcmNsYXkub3JnL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDA4LzA5L2ZpZGRsZXJfYmVmb3JlLnBuZyZxdW90OyBhbHQ9JnF1b3Q7YWZ0ZXImcXVvdDsgLz48L3RkPg0KICAgIDwvdHI+DQogICAgPHRyPg0KICAgICAgPHRkIHN0eWxlPSZxdW90O0JPUkRFUi1SSUdIVDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctUklHSFQ6IDVweDsgQk9SREVSLVRPUDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctTEVGVDogNXB4OyBQQURESU5HLUJPVFRPTTogNXB4OyBCT1JERVItTEVGVDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctVE9QOiA1cHg7IEJPUkRFUi1CT1RUT006ICNhYWEgMXB4IHNvbGlkJnF1b3Q7PjxzdHJvbmc+QWZ0ZXI8L3N0cm9uZz48L3RkPg0KICAgICAgPHRkIHN0eWxlPSZxdW90O0JPUkRFUi1SSUdIVDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctUklHSFQ6IDVweDsgQk9SREVSLVRPUDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctTEVGVDogNXB4OyBQQURESU5HLUJPVFRPTTogNXB4OyBCT1JERVItTEVGVDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctVE9QOiA1cHg7IEJPUkRFUi1CT1RUT006ICNhYWEgMXB4IHNvbGlkJnF1b3Q7PjxpbWcgc3JjPSZxdW90O2h0dHA6Ly9tcmNsYXkub3JnL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDA4LzA5L2ZpZGRsZXJfYWZ0ZXIucG5nJnF1b3Q7IGFsdD0mcXVvdDtiZWZvcmUmcXVvdDsgLz48L3RkPg0KICAgIDwvdHI+DQogIDwvdGJvZHk+DQo8L3RhYmxlPg0KDQoNCg0KPGgyPjxhIGlkPSJGZWF0dXJlcyI+PC9hPkZlYXR1cmVzPC9oMj4NCjx1bD4NCiAgPGxpPkNvbWJpbmVzIGFuZCBtaW5pZmllcyBtdWx0aXBsZSBDU1Mgb3IgSmF2YVNjcmlwdCBmaWxlcyBpbnRvIGEgc2luZ2xlICAgZG93bmxvYWQgPC9saT4NCiAgPGxpPlVzZXMgYW4gPGEgaHJlZj0iaHR0cDovL2NvZGUuZ29vZ2xlLmNvbS9wL21pbmlmeS9zb3VyY2UvYnJvd3NlL3RydW5rL21pbi9saWIvSlNNaW4ucGhwIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub2ZvbGxvdyI+ZW5oYW5jZWQgcG9ydDwvYT4gb2YgRG91Z2xhcyBDcm9ja2ZvcmQmIzAzOTtzIDxhIGhyZWY9Imh0dHA6Ly93d3cuY3JvY2tmb3JkLmNvbS9qYXZhc2NyaXB0L2pzbWluLmh0bWwiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij5KU01pbiAgIGxpYnJhcnk8L2E+IGFuZCBjdXN0b20gY2xhc3NlcyB0byBtaW5pZnkgPGEgaHJlZj0iaHR0cDovL2NvZGUuZ29vZ2xlLmNvbS9wL21pbmlmeS9zb3VyY2UvYnJvd3NlL3RydW5rL21pbi9saWIvTWluaWZ5L0NTUy5waHAiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij5DU1M8L2E+IGFuZCA8YSBocmVmPSJodHRwOi8vY29kZS5nb29nbGUuY29tL3AvbWluaWZ5L3NvdXJjZS9icm93c2UvdHJ1bmsvbWluL2xpYi9NaW5pZnkvSFRNTC5waHAiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij5IVE1MPC9hPjwvbGk+DQogIDxsaT5DYWNoZXMgc2VydmVyLXNpZGUgdG8gYXZvaWQgZG9pbmcgdW5uZWNlc3Nhcnkgd29yayA8L2xpPg0KICA8bGk+UmVzcG9uZHMgd2l0aCBhbiBIVFRQIDMwNCAoTm90IE1vZGlmaWVkKSByZXNwb25zZSB3aGVuIHRoZSBicm93c2VyIGhhcyBhbiAgIHVwLXRvLWRhdGUgY2FjaGUgY29weSAqKiA8L2xpPg0KICA8bGk+TW9zdCBtb2R1bGVzIGFyZSBsYXp5LWxvYWRlZCBhcyBuZWVkZWQgKDMwNCByZXNwb25zZXMgdXNlIG1pbmltYWwgY29kZSkgICoqIDwvbGk+DQogIDxsaT5BdXRvbWF0aWNhbGx5IHJld3JpdGVzIHJlbGF0aXZlIFVSSXMgaW4gY29tYmluZWQgQ1NTIGZpbGVzIHRvIHBvaW50IHRvIHZhbGlkIGxvY2F0aW9ucyA8L2xpPg0KICA8bGk+V2l0aCBjYWNoaW5nIGVuYWJsZWQsIFNjcmlwdERlcGxveSBpcyBjYXBhYmxlIG9mIGhhbmRsaW5nIGh1bmRyZWRzIG9mIHJlcXVlc3RzIHBlciBzZWNvbmQgb24gYSBtb2RlcmF0ZWx5IHBvd2VyZnVsIHNlcnZlci4gPC9saT4NCiAgPGxpPkNvbnRlbnQtRW5jb2Rpbmc6IGd6aXAsIGJhc2VkIG9uIHJlcXVlc3QgaGVhZGVycy4gQ2FjaGluZyBhbGxvd3MgaXQgc28gc2VydmUgZ3ppcHBlZCBmaWxlcyBmYXN0ZXIgdGhhbiBBcGFjaGUmIzAzOTtzIG1vZF9kZWZsYXRlIG9wdGlvbiEgPC9saT4NCjwvdWw+DQo8aDM+PGVtPjxzdHJvbmc+KiogTm90ZTo8L3N0cm9uZz4gSXQgaXMgYmVzdCB0byB1c2UgYSAuaHRhY2Nlc3Mgc2NyaXB0IHRvIHNldCB0aGUgYWdlIHRpbWVzLiBTY3JpcHREZXBsb3kgaXMgZGVzaWduZWQgZm9yIGVmZmljaWVuY3ksIGJ1dCBmb3IgdmVyeSBoaWdoIHRyYWZmaWMgc2l0ZXMsIFNjcmlwdERlcGxveSBtYXkgc2VydmUgZmlsZXMgc2xvd2VyIHRoYW4geW91ciBIVFRQZCBkdWUgdG8gdGhlIENHSSBvdmVyaGVhZCBvZiBQSFAuICBUbyBvdmVyIGNvbWUgdGhpcyBKdXN0IGNoZWNrICZxdW90O3VzZSAuaHRhY2Nlc3MgaW4gb3B0aW9ucyZxdW90OzwvZW0+PC9oMz4NCjxoMj48YSBuYW1lPSJSZXF1aXJlbWVudHMiPjwvYT5SZXF1aXJlbWVudHM8L2gyPg0KPHVsPg0KICA8bGk+VGhlIGNvbW1vbmx5IGluc3RhbGxlZCA8YSBocmVmPSJodHRwOi8vdXMzLnBocC5uZXQvbWFudWFsL2VuL3psaWIuaW5zdGFsbGF0aW9uLnBocCIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPnpsaWIgICBleHRlbnNpb248L2E+IGlzIHJlY29tbWVuZGVkIGZvciBIVFRQIGVuY29kaW5nIGZ1bmN0aW9uYWxpdHkuIDwvbGk+DQo8L3VsPg0KPGJyLz48YnIvPg0KPGgxPkhvdyBEbyBJIFVzZSBJdDwvaDE+DQoNCg0KPGgzPkdldCBhIHNpbmdsZSBzY3JpcHQ8L2gzPg0KdXNlIDxzcGFuIGNsYXNzPSZxdW90O2NvZGVISUdITElHSFQmcXVvdDs+e2Ntc19tb2R1bGUgbW9kdWxlPVNjcmlwdERlcGxveSBzY3JpcHRJRD0mcXVvdDsxJnF1b3Q7fSA8L3NwYW4+IDxici8+PGJyLz4NCjxoMz5HZXQgYSBzY3JpcHQgZ3JvdXA8L2gzPg0KdXNlIDxzcGFuIGNsYXNzPSZxdW90O2NvZGVISUdITElHSFQmcXVvdDs+e2Ntc19tb2R1bGUgbW9kdWxlPVNjcmlwdERlcGxveSBncm91cElEPSZxdW90OzEmcXVvdDt9IDwvc3Bhbj4gPGJyLz48YnIvPg0KPGgyPkFsbCBvdXRwdXQgaXMgaW4gdGhlIFhIVE1MIGZvcm1hdCwgeW91IHNob3VsZCB3b3JrIGluIHRoYXQuPC9oMj4NCg0KPGJyLz48YnIvPg0KPGg0PlBhcmFtczwvaDQ+DQo8dWw+DQo8bGk+PHN0cm9uZz5zY3JpcHRJRD0mcXVvdDsmcXVvdDsgPC9zdHJvbmc+PGVtPihSZXF1aXJlZC9vcHRpb25hbCk8L2VtPiA8YnIvPnwgc2V0IHRoZSBJRCBSZXF1aXJlZCBvbmx5IGlmIGdyb3VwSUQgbm90IGNhbGxlZDxici8+PC9saT4NCjxsaT48c3Ryb25nPmdyb3VwSUQ9JnF1b3Q7JnF1b3Q7IDwvc3Ryb25nPjxlbT4oUmVxdWlyZWQvb3B0aW9uYWwpPC9lbT4gPGJyLz58IHNldCB0aGUgSUQgUmVxdWlyZWQgb25seSBpZiBzY3JpcHRJRCBub3QgY2FsbGVkPGJyLz48L2xpPg0KPGxpPjxzdHJvbmc+U3R5cGU9JnF1b3Q7JnF1b3Q7IDwvc3Ryb25nPjxlbT4oUmVxdWlyZWQvKSBKUy9DU1M8L2VtPiA8YnIvPnwgc2V0IHRoZSBJRCBSZXF1aXJlZCBvbmx5IGlmIHNjcmlwdElEIG5vdCBjYWxsZWQ8YnIvPjwvbGk+DQoNCjxsaT48c3Ryb25nPlNtYXJ0eU9uPSZxdW90OyZxdW90OyA8L3N0cm9uZz48ZW0+KG9wdGlvbmFsKSB0cnVlL2ZhbHNlIDxzdHJvbmc+RGVmYXVsdDpudWxsPC9zdHJvbmc+PC9lbT4gPGJyLz58IFRoaXMgbGV0cyB5b3Ugb3ZlciByaWRlIHRoZSBnbG9ibGVzPGJyLz48L2xpPg0KPGxpPjxzdHJvbmc+TWluaWZ5PSZxdW90OyZxdW90OyA8L3N0cm9uZz48ZW0+KG9wdGlvbmFsKSB0cnVlL2ZhbHNlIDxzdHJvbmc+RGVmYXVsdDp0cnVlPC9zdHJvbmc+PC9lbT4gPGJyLz58ICBUaGlzIGxldHMgeW91IG92ZXIgcmlkZSB0aGUgZ2xvYmxlczxici8+PC9saT4NCg0KDQoNCg0KDQoNCjxsaT48c3Ryb25nPk1lZGlhVHlwZT0mcXVvdDsmcXVvdDsgPC9zdHJvbmc+PGVtPihvcHRpb25hbCk8L2VtPiA8YnIvPnwgc2V0IE1lZGlhIHR5cGUgZm9yIENTUyBmaWxlcyBoZXJlLi4uIG92ZXJyaWRlcyBkYiBzZXRpbmdzLjxici8+PC9saT4NCjxsaT48c3Ryb25nPmltcG9ydD0mcXVvdDsmcXVvdDsgPC9zdHJvbmc+PGVtPihvcHRpb25hbCkgdHJ1ZS9mYWxzZTwvZW0+IDxici8+fCBzZXQgdGhlIGluY2x1c2lvbiBzdHlsZSBmb3IgQ1NTIGZpbGVzIGhlcmUuLi4gb3ZlcnJpZGVzIGRiIHNldGluZ3MuIEV4OiB0cnVlICBnaXZlcyA8c3R5bGUgdHlwZT1cJnF1b3Q7dGV4dC9jc3NcJnF1b3Q7PkBpbXBvcnQgdXJsKCZxdW90O3VybC9jc3NmaWxlLmNzcyZxdW90Oykgc2NyZWVuOzwvc3R5bGU+PGJyLz48L2xpPg0KDQo8bGk+PHN0cm9uZz5jYWNoZUJ1c3Rlcjwvc3Ryb25nPiA8ZW0+KG9wdGlvbmFsKSA8c3Ryb25nPkRlZmF1bHQ6ZmFsc2U8L3N0cm9uZz48L2VtPjxici8+fCBUaGlzIGlzIHRvIGluc3RhbnRseSB1bmNhY2hlIGFuIHNjcmlwdCBvbiB0aGUgY2xpZW50IHNpZGUgYWZ0ZXIgYSBuZXcgdXBsb2FkZWQgc2NyaXB0IGlzIGNyZWF0ZWQuLi4gaWU6IDEyLmpzPzEyNTUyMjUwMDcgIDxmb250IGNvbG9yPSZxdW90O3JlZCZxdW90Oz48c3Ryb25nPiggdHJ1ZS9mYWxzZSApPC9zdHJvbmc+PC9mb250PjwvbGk+DQo8bGk+PHN0cm9uZz5hc3NpZ249JnF1b3Q7JnF1b3Q7IDwvc3Ryb25nPjxlbT4ob3B0aW9uYWwpPC9lbT4gPGJyLz58IEFzc2lnbiB0aGUgb3V0cHV0IChyZXR1cm4gdGhlIHNtYXJ0eSBhc3NpZ25tZW50KSAgVXNlIGluIGNvbmp1bmN0aW9uIHdpdGggb3V0IHdpdGhvdXQgVVJMPC9saT4NCjxsaT48c3Ryb25nPmZzaXplPSZxdW90OyZxdW90OyA8L3N0cm9uZz48ZW0+KG9wdGlvbmFsKTwvZW0+IDxici8+fCBnZXQgdGhlIHNpemU8L2xpPg0KPGxpPjxzdHJvbmc+cm9vdFVybD0mcXVvdDsmcXVvdDsgPC9zdHJvbmc+PGVtPihvcHRpb25hbCk8L2VtPiA8YnIvPnwgU2NyaXB0RGVwbG95IGNyZWF0ZXMgYSB0ZW1wIGRpcmVjdG9yIGluIHRoZSB1cGxvYWQgZm9sZGVyLiAgSWYgeW91IG1vdmUgdGhlIHBhdGggdG8gdGhlIHVwbGFvZCB0byBhIHN1YmRvbWFpbiB5b3UgbWF5IGd1aWRlIHRoZSBvdXRwdXQgd2l0aCB0aGlzLjwvbGk+DQogICAgICAgIDx1bCBzdHlsZT0mcXVvdDtsaXN0LXN0eWxlLXBvc2l0aW9uOmluc2lkZTsmcXVvdDs+PGxpPjxzdHJvbmc+RXhhcG1sZTo8L3N0cm9uZz4geW91IGNoYW5nZWQgPENPREU+JGNvbmZpZ1smIzAzOTt1cGxvYWRzX3BhdGgmIzAzOTtdID0gJiMwMzk7L3Zhci93d3cvdmhvc3RzL2RvbWFpbi5vcmcvaHR0cGRvY3MvdXBsb2FkcyYjMDM5Ozs8L0NPREU+IDwvbGk+DQogICAgICAgICAgICA8bGk+PHN0cm9uZz50bzwvc3Ryb25nPiA8Q09ERT4kY29uZmlnWyYjMDM5O3VwbG9hZHNfcGF0aCYjMDM5O10gPSBcL3Zhci93d3cvdmhvc3RzL2RvbWFpbi5vcmcvc3ViZG9tYWlucy9tZWRpYS9odHRwZG9jcy91cGxvYWRzJiMwMzk7OzwvQ09ERT48L2xpPg0KICAgICAgICAgICAgPGxpPm5vdyB0aGUgdXBsb2FkcyB1cmwgd291bGQgbm90IHdvcmsgYXMgaXQgd291bGQgYmUgPHU+aHR0cDovL3d3dy5kb21haW4ub3JnL3VwbG9hZHM8L3U+PC9saT4NCiAgICAgICAgICAgIDxsaT48c3Ryb25nPlNvPC9zdHJvbmc+IGl0IGNhbiBiZSBjaGFuZ2VkIGhlcmUgdG8gPHU+aHR0cDovL21lZGlhLmRvbWFpbi5vcmcvdXBsb2FkczwvdT4gIDxmb250IGNvbG9yPSZxdW90O3JlZCZxdW90Oz48c3Ryb25nPihOT1RFOiB3YXRjaCB5b3VyIC8gKTwvc3Ryb25nPjwvZm9udD48L2xpPg0KICAgICAgICA8L3VsPg0KPGxpPjxzdHJvbmc+VVJMPSZxdW90OyZxdW90OyA8L3N0cm9uZz48ZW0+KG9wdGlvbmFsKTwvZW0+IDxici8+fG91dHB1dHMgdGhlIHVybC48L2xpPg0KDQoNCg0KDQoJCQ0KDQoNCg0KDQoNCg0KDQoNCjwhLS08bGk+PHN0cm9uZz5TYW5kQm94PXRydWUgPC9zdHJvbmc+PGVtPihvcHRpb25hbCk8L2VtPiA8YnIvPnwgZmFsc2U8YnIvPjwvbGk+DQoNCjxsaT48c3Ryb25nPlJVTmFjdGlvbj0mYW1wO3F1b3Q7JmFtcDtxdW90OyA8L3N0cm9uZz48ZW0+KG9wdGlvbmFsKTwvZW0+IDxici8+fCBVRFQ8YnIvPnwgVVJMIDxlbT4oLi4vcGx1Z2lucy9mdW5jdGlvbi5maWxlbmFtZS5waHApPC9lbT48YnIvPnwgKk1vcmUgY29taW5nIFNvb24qPGJyLz48L2xpPg0KPGxpPjxzdHJvbmc+TGFuZz0mYW1wO3F1b3Q7JmFtcDtxdW90OyA8L3N0cm9uZz48ZW0+KG9wdGlvbmFsKTwvZW0+IDxici8+fCBVc2UgQ291bnRyeSBDb2RlcyBUbyBkeW5hbWljbHkgc2V0IHRoZSBsYW5ndWFnZSBvZiB0aGUgUGF5UGFsIHBhZ2U8YnIvPjwvbGk+LS0+DQoNCjwvdWw+DQo8YnIvPg0KDQo8YnIvPjxici8+DQo8aDI+PGEgaWQ9IlByb2JsZW1fRG9tYWluIj48L2E+UHJvYmxlbSBEb21haW48L2gyPg0KPHA+UGFnZXMgdGhhdCByZWZlciB0byBtdWx0aXBsZSBDU1Mgb3IgSmF2YVNjcmlwdCBmaWxlcyBvZnRlbiBzdWZmZXIgZnJvbSBzbG93ZXIgICBwYWdlIGxvYWRzLCBkdWUgdG8gdGhlIGJyb3dzZXIgcmVxdWVzdGluZyBlYWNoIGZpbGUgaW5kaXZpZHVhbGx5LiBNYW55IGJyb3dzZXJzICAgYWxzbyBhcmUgbGltaXRlZCB0byBhIGZldyBzaW11bHRhbmVvdXMgcmVxdWVzdHMgcGVyIGRvbWFpbi4gVGhlIHdhaXQgZm9yIGEgICBzZXJpZXMgb2YgcmVxdWVzdHMgYW5kIHRoZSB0cmFuc2ZlciBvZiB1bm9wdGltaXplZCBmaWxlcyBjYW4gZHJhbWF0aWNhbGx5IHJlZHVjZSAgIHRoZSBjbGllbnQtc2lkZSBwZXJmb3JtYW5jZSBvZiB5b3VyIHNpdGUuIDwvcD4NCjxwPkhlcmUgYXJlIGEgaGFuZGZ1bCBvZiBZYWhvbyEmIzAzOTtzIGJlc3QgcHJhY3RpY2VzIHRoYXQgYXJlIGFkZHJlc3NlZCBieSB0aGUgdXNlIG9mIFNjcmlwdERlcGxveS4gPC9wPg0KPHVsPg0KICA8bGk+PGEgaHJlZj0iaHR0cDovL2RldmVsb3Blci55YWhvby5jb20vcGVyZm9ybWFuY2UvcnVsZXMuaHRtbCNudW1faHR0cCIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPk1ha2UgRmV3ZXIgSFRUUCBSZXF1ZXN0czwvYT48L2xpPg0KICA8bGk+PGEgaHJlZj0iaHR0cDovL2RldmVsb3Blci55YWhvby5jb20vcGVyZm9ybWFuY2UvcnVsZXMuaHRtbCNleHBpcmVzIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub2ZvbGxvdyI+QWRkIGFuIEV4cGlyZXMgb3IgYSBDYWNoZS1Db250cm9sIEhlYWRlcjwvYT48L2xpPg0KICA8bGk+PGEgaHJlZj0iaHR0cDovL2RldmVsb3Blci55YWhvby5jb20vcGVyZm9ybWFuY2UvcnVsZXMuaHRtbCNnemlwIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub2ZvbGxvdyI+R3ppcCBDb21wb25lbnRzPC9hPjwvbGk+DQogIDxsaT48YSBocmVmPSJodHRwOi8vZGV2ZWxvcGVyLnlhaG9vLmNvbS9wZXJmb3JtYW5jZS9ydWxlcy5odG1sI21pbmlmeSIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPk1pbmlmeSBKYXZhU2NyaXB0IGFuZCBDU1M8L2E+PC9saT4NCiAgPGxpPjxhIGhyZWY9Imh0dHA6Ly9kZXZlbG9wZXIueWFob28uY29tL3BlcmZvcm1hbmNlL3J1bGVzLmh0bWwjZXRhZ3MiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij5Db25maWd1cmUgRVRhZ3M8L2E+PC9saT4NCiAgPGxpPjxhIGhyZWY9Imh0dHA6Ly9kZXZlbG9wZXIueWFob28uY29tL3BlcmZvcm1hbmNlL3J1bGVzLmh0bWwjdW5kZXIyNSIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPktlZXAgQ29tcG9uZW50cyB1bmRlciAyNUs8L2E+PC9saT4NCjwvdWw+DQo8aDM+PGEgbmFtZT0iQWNrbm93bGVkZ21lbnRzIj48L2E+QWNrbm93bGVkZ21lbnRzPC9oMz4NCjxwPk1pbmlmeSB3YXMgaW5zcGlyZWQgYnkgPGEgaHJlZj0iaHR0cDovL2NvZGUuZ29vZ2xlLmNvbS9wL2pzY3NzY29tcC8iIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij5qc2Nzc2NvbXA8L2E+IGJ5IE1heGltIE1hcnR5bnl1ayBhbmQgYnkgdGhlIGFydGljbGUgJiMwMzk7PGEgaHJlZj0iaHR0cDovL3d3dy5odW5sb2NrLmNvbS9ibG9ncy9TdXBlcmNoYXJnZWRfSmF2YXNjcmlwdCIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPlN1cGVyY2hhcmdlZCBKYXZhU2NyaXB0PC9hPiYjMDM5OyBieSBQYXRyaWNrIEh1bmxvY2suIDwvcD4NCjxwPlRoZSA8YSBocmVmPSJodHRwOi8vd3d3LmNyb2NrZm9yZC5jb20vamF2YXNjcmlwdC9qc21pbi5odG1sIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub2ZvbGxvdyI+SlNNaW4gbGlicmFyeTwvYT4gdXNlZCBmb3IgSmF2YVNjcmlwdCBtaW5pZmljYXRpb24gd2FzIG9yaWdpbmFsbHkgICB3cml0dGVuIGJ5IERvdWdsYXMgQ3JvY2tmb3JkIGFuZCB3YXMgPGEgaHJlZj0iaHR0cDovL2NvZGUuZ29vZ2xlLmNvbS9wL2pzbWluLXBocCIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPnBvcnRlZCB0byBQSFA8L2E+IGJ5IFJ5YW4gICBHcm92ZSBzcGVjaWZpY2FsbHkgZm9yIHVzZSBpbiBNaW5pZnkuIDwvcD4NCg0KDQo8aDM+U3VwcG9ydDwvaDM+DQo8aDQ+U2NyZWVuY2FzdHMgZm9yIGV4dHJhIGhlbHAgd2lsbCBmYWxsb3ctLS0gb24gdGhlIFRPRE88L2g0Pg0KPHA+VGhpcyBtb2R1bGUgZG9lcyBub3QgaW5jbHVkZSBjb21tZXJjaWFsIHN1cHBvcnQuIEhvd2V2ZXIsIHRoZXJlIGFyZSBhIG51bWJlciBvZiByZXNvdXJjZXMgYXZhaWxhYmxlIHRvIGhlbHAgeW91IHdpdGggaXQ6PC9wPg0KPHVsPg0KPGxpPkZvciB0aGUgbGF0ZXN0IHZlcnNpb24gb2YgdGhpcyBtb2R1bGUgb3IgdG8gZmlsZSBhIGJ1ZyByZXBvcnQgdmlzaXQgPGEgaHJlZj0iaHR0cDovL2Rldi5jbXNtYWRlc2ltcGxlLm9yZy9wcm9qZWN0cy9zY3JpcHRkZXBsb3kiPnRoZSBDTVMgRm9yZ2U8L2E+LjwvbGk+DQo8bGk+QWRkaXRpb25hbCBkaXNjdXNzaW9uIG9mIHRoaXMgbW9kdWxlIG1heSBhbHNvIGJlIGZvdW5kIGluIHRoZSA8YSBocmVmPSJodHRwOi8vZm9ydW0uY21zbWFkZXNpbXBsZS5vcmciPkNNUyBNYWRlIFNpbXBsZSBGb3J1bXM8L2E+LjwvbGk+DQo8L3VsPg0KDQo8aDM+Q29weXJpZ2h0IGFuZCBMaWNlbnNlPC9oMz4NCjxwPkNvcHlyaWdodCAmY29weTsgMjAwOSwgamVyZW15QmFzcyA8PGEgaHJlZj0iaHR0cDovL2NvcmJlbnNwcm9kdWN0cy5jb20iPmNvcmJlbnNwcm9kdWN0cy5jb208L2E+PiBBbGwgUmlnaHRzIEFyZSBSZXNlcnZlZC48L3A+DQo8c3Ryb25nPlN1cHBvcnQgbW9yZSBtb2RzIGxpa2UgdGhpczo8L3N0cm9uZz48Zm9ybSBhY3Rpb249JnF1b3Q7aHR0cHM6Ly93d3cucGF5cGFsLmNvbS9jZ2ktYmluL3dlYnNjciZxdW90OyBtZXRob2Q9JnF1b3Q7cG9zdCZxdW90Oz4NCjxpbnB1dCB0eXBlPSZxdW90O2hpZGRlbiZxdW90OyBuYW1lPSZxdW90O2NtZCZxdW90OyB2YWx1ZT0mcXVvdDtfcy14Y2xpY2smcXVvdDs+DQo8aW5wdXQgdHlwZT0mcXVvdDtoaWRkZW4mcXVvdDsgbmFtZT0mcXVvdDtob3N0ZWRfYnV0dG9uX2lkJnF1b3Q7IHZhbHVlPSZxdW90Ozg4MTc2NzUmcXVvdDs+DQo8aW5wdXQgdHlwZT0mcXVvdDtpbWFnZSZxdW90OyBzcmM9JnF1b3Q7aHR0cHM6Ly93d3cucGF5cGFsLmNvbS9lbl9VUy9pL2J0bi9idG5fZG9uYXRlX0xHLmdpZiZxdW90OyBib3JkZXI9JnF1b3Q7MCZxdW90OyBuYW1lPSZxdW90O3N1Ym1pdCZxdW90OyBhbHQ9JnF1b3Q7UGF5UGFsIC0gVGhlIHNhZmVyLCBlYXNpZXIgd2F5IHRvIHBheSBvbmxpbmUhJnF1b3Q7Pg0KPGltZyBhbHQ9JnF1b3Q7JnF1b3Q7IGJvcmRlcj0mcXVvdDswJnF1b3Q7IHNyYz0mcXVvdDtodHRwczovL3d3dy5wYXlwYWwuY29tL2VuX1VTL2kvc2NyL3BpeGVsLmdpZiZxdW90OyB3aWR0aD0mcXVvdDsxJnF1b3Q7IGhlaWdodD0mcXVvdDsxJnF1b3Q7Pg0KPC9mb3JtPjxici8+DQo8cD5UaGlzIG1vZHVsZSBoYXMgYmVlbiByZWxlYXNlZCB1bmRlciB0aGUgPGEgaHJlZj0iaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMIj5HTlUgUHVibGljIExpY2Vuc2U8L2E+LiBZb3UgbXVzdCBhZ3JlZSB0byB0aGlzIGxpY2Vuc2UgYmVmb3JlIHVzaW5nIHRoZSBtb2R1bGUuPC9wPg0KPC9kaXYgPjxiIGNsYXNzPSZxdW90O3Jib3R0b20mcXVvdDs+PGIgY2xhc3M9JnF1b3Q7cjQmcXVvdDs+PC9iPjxiIGNsYXNzPSZxdW90O3IzJnF1b3Q7PjwvYj4gPGIgY2xhc3M9JnF1b3Q7cjImcXVvdDs+PC9iPiA8YiBjbGFzcz0mcXVvdDtyMSZxdW90Oz48L2I+PC9iPg0KDQo8L2Rpdj4NCic7CiRsYW5nWyd1dG1hJ10gPSAnMTU2ODYxMzUzLjkxNTQ5NjA1Ny4xMjcwMDUzMDcxLjEyNzkyODYzOTUuMTI3OTcxOTQ3My41Nic7CiRsYW5nWyd1dG16J10gPSAnMTU2ODYxMzUzLjEyNzk3MTk0NzMuNTYuNDUudXRtY2NuPShvcmdhbmljKXx1dG1jc3I9Z29vZ2xlfHV0bWN0cj1odHRwOi8vdHJhbnNsYXRpb25zLmNtc21hZGVzaW1wbGUub3JnL3x1dG1jbWQ9b3JnYW5pYyc7CiRsYW5nWydxY2EnXSA9ICdQMC0xMzg3Mzk1NDU2LTEyNzAwNTMwNzE1MzMnOwokbGFuZ1sndXRtYiddID0gJzE1Njg2MTM1Myc7CiRsYW5nWyd1dG1jJ10gPSAnMTU2ODYxMzUzJzsKPz4=]]></data>
	</file>
	<file>
	  <filename>/lang/ext/es_ES.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ1NjcmlwdCBEZXBsb3kgKEltcGxlbWVudGFkb3IgZGUgU2NyaXB0cyknOwokbGFuZ1sncG9zdGluc3RhbGwnXSA9ICdFcyByZWNvbWVuZGFkbyB2aXNpdGFyIGxhIHNlY2NpJm9hY3V0ZTtuIGRlIEF5dWRhIGFudGVzIGRlIGNvbWVuemFyJzsKJGxhbmdbJ3Bvc3R1bmluc3RhbGwnXSA9ICdQb3IgZmF2b3IgZW52aWFyIGNvbWVudGFyaW9zIGFjZXJjYSBkZSBlc3RlIG0mb2FjdXRlO2R1bG8gKGZhdm9yIGVzY3JpYmlyIGVuIGluZ2wmZWFjdXRlO3MsIGVsIGlkaW9tYSBkZWwgYXV0b3IpPGEgaHJlZj0iaHR0cDovL2hlbHAuY29yYmVuc3Byb2R1Y3RzLmNvbS9tYWtlLWNvbnRhY3QuaHRtbCI+SmVyZW15IEJhc3M8L2E+JzsKJGxhbmdbJ3JlYWxseV91bmluc3RhbGwnXSA9ICdVbmluc3RhbGxpbmcgdGhpcyBtb2R1bGUgd2lsbCBub3QgYWZmZWN0IGFueSBldmVudCBkYXRhIGFuZCBhbGwgYm9va3MgdG8gZGF0ZSB3aWxsIHN0aWxsIGJlIHRoZXJlLiBEbyB5b3Ugd2lzaCB0byBjb250aW51ZT8nOwokbGFuZ1sndW5pbnN0YWxsZWQnXSA9ICdNb2R1bG8gZGVzaW5zdGFsYWRvJzsKJGxhbmdbJ2luc3RhbGxlZCddID0gJ1ZlcnNpJm9hY3V0ZTtuICVzIGluc3RhbGFkYSc7CiRsYW5nWyd1cGdyYWRlZCddID0gJ01vZHVsbyBhY3R1YWxpemFkbyBhIGxhIHZlcnNpJm9hY3V0ZTtuICVzLic7CiRsYW5nWydBQ1RvcHRpb25zJ10gPSAnT3BjaW9uZXMgZGUgSW1wbGVtZW50YWNpJm9hY3V0ZTtuJzsKJGxhbmdbJ21hbnVhbGFzc2lnbm1lbnQnXSA9ICdBZ3J1cGFjaW9uZXMgZGUgU2NyaXB0cyc7CiRsYW5nWydIVE1Mc2V0dGluZ3MnXSA9ICdJbXBsZW1lbnRhY2kmb2FjdXRlO24gSFRNTCc7CiRsYW5nWydWYWxzZXR0aW5ncyddID0gJ0FqdXN0ZXMgZGUgdmFsaWRhY2kmb2FjdXRlO24nOwokbGFuZ1snZW4nXSA9ICdJbmdsJmVhY3V0ZTtzJzsKJGxhbmdbJ2ZyJ10gPSAnRnJhbiZjY2VkaWw7YWlzIChGcmFuYyZlYWN1dGU7cyknOwokbGFuZ1snaXQnXSA9ICdJdGFsaWFubyc7CiRsYW5nWydrbyddID0gJ0tvcmVhbiAoQ29yZWFubyknOwokbGFuZ1snamEnXSA9ICdKYXBhbmVzZSAoSmFwb24mZWFjdXRlO3MpJzsKJGxhbmdbJ2VzJ10gPSAnRXNwYSZudGlsZGU7b2wnOwokbGFuZ1snemgtY24nXSA9ICdDaGluZXNlIChDaGlubyknOwokbGFuZ1snbmwnXSA9ICdOZWRlcmxhbmRzIChOZWVybGFuZCZlYWN1dGU7cyknOwokbGFuZ1snZGUnXSA9ICdEZXV0c2NoIChBbGVtJmFhY3V0ZTtuKSc7CiRsYW5nWydwbCddID0gJ1BvbHNraSAoUG9sYWNvKSc7CiRsYW5nWydMbm9uZSddID0gJ05vIGhheSBhZHZlcnRlbmNpYXMnOwokbGFuZ1snTDAnXSA9ICdOaXZlbCAwJzsKJGxhbmdbJ0wxJ10gPSAnTml2ZWwgMSc7CiRsYW5nWydMMiddID0gJ05pdmVsIDInOwokbGFuZ1snY3NzMSddID0gJ0NTUyAxICc7CiRsYW5nWydjc3MyJ10gPSAnQ1NTIDIgJzsKJGxhbmdbJ2NzczIxJ10gPSAnQ1NTIDIuMSAnOwokbGFuZ1snY3NzMyddID0gJ0NTUyAzICc7CiRsYW5nWydzdmcnXSA9ICdTVkcgJzsKJGxhbmdbJ3N2Z2Jhc2ljJ10gPSAnU1ZHIGJhc2ljbyc7CiRsYW5nWydzdmd0aW55J10gPSAnU1ZHIG1pbmltbyc7CiRsYW5nWydtb2JpbGUnXSA9ICdtb2JpbGUgJzsKJGxhbmdbJ2F0c2MtdHYnXSA9ICdhdHNjLXR2ICc7CiRsYW5nWyd0diddID0gJ0FkZWN1YWRvIHBhcmEgZGlzcG9zaXRpdm9zIGRlIHRpcG8gVFYnOwokbGFuZ1snbm9uZSddID0gJ25pbmd1bm8nOwokbGFuZ1snc2F2ZVZBTHNldHRpbmdzJ10gPSAnR3VhcmRhciBhanVzdGVzIGRlIHZhbGlkYWNpJm9hY3V0ZTtuJzsKJGxhbmdbJ3NldHRpbmdzJ10gPSAnQWp1c3Rlcyc7CiRsYW5nWydzZXR0aW5nc3NhdmVkJ10gPSAnTG9zIGFqdXN0ZXMgaGFuIHNpZG8gZ3VhcmRhZG9zJzsKJGxhbmdbJ2xlYXZlY29kZSddID0gJ05vIHRvY2FyIGVsIGMmb2FjdXRlO2RpZ28nOwokbGFuZ1snZm9ybWF0Y29kZSddID0gJ01lam9yIGZvcm1hdGVvIGRlIGMmb2FjdXRlO2RpZ28nOwokbGFuZ1snc2NyYW1ibGVjb2RlJ10gPSAnUmV2b2x2ZXIgZWwgYyZvYWN1dGU7ZGlnbyc7CiRsYW5nWydjbGVhbmNvZGUnXSA9ICdMaW1waWFyIGVsIGMmb2FjdXRlO2RpZ28sIHJlbW92aWVuZG8gY29kaWdvIGlubmVjZXNhcmlvJzsKJGxhbmdbJ3NhdmVzZXR0aW5ncyddID0gJ0d1YXJkYXIgYWp1c3Rlcyc7CiRsYW5nWydtYW5nbGV0eXBldGV4dCddID0gJ0NvbW8gZm9ybWF0ZWFyIGVsIGMmb2FjdXRlO2RpZ28nOwokbGFuZ1snYnJpZWYnXSA9ICdDb3J0byc7CiRsYW5nWyd2ZXJib3NlJ10gPSAnVmVyYm9zbyc7CiRsYW5nWydjb2RlZml4ZXMnXSA9ICdSZXBhcmFjaW9uZXMgZGUgYyZvYWN1dGU7ZGlnbyc7CiRsYW5nWydmb3JjZWxvd2VydGFnc3RleHQnXSA9ICdGb3J6YXIgbG9zIHRhZ3MgYSBtaW4mdWFjdXRlO3NjdWxhcyc7CiRsYW5nWydmb3JjZWxvd2VydGFnc2hlbHAnXSA9ICdQYXJhIG1lam9yIGNvbXBhdGliaWxpZGFkIFhIVE1MJzsKJGxhbmdbJ2hpZGVtZXNzYWdlc3RleHQnXSA9ICdFc2NvbmRlciBtZW5zYWplcyBkZSBDb2RlTWFuZ2xlciBhbCBmdW5hbCBkZWwgYyZvYWN1dGU7ZGlnbyAoeClodG1sJzsKJGxhbmdbJ2luZGVudHdpZHRodGV4dCddID0gJ0FuY2hvIGRlIGxhIHNhbmdyJmlhY3V0ZTthJzsKJGxhbmdbJ3NwYWNlcyddID0gJ0VzcGFjaW9zJzsKJGxhbmdbJ2RlYnVnbGV2ZWx0ZXh0J10gPSAnQ2FudGlkYWQgZGUgbW9kbyBkZSBkZXB1cmFjaSZvYWN1dGU7bjonOwokbGFuZ1snZGVidWd0ZXh0J10gPSAnTW9kbyBkZSBkZXB1cmFjaSZvYWN1dGU7biBkZSBjJm9hY3V0ZTtkaWdvJzsKJGxhbmdbJ1NjcmlwdF9saXN0J10gPSAnU2NyaXB0cyAnOwokbGFuZ1snQXNzX2hlYWRlciddID0gJ1NjcmlwdHMgdW5pZmljYWRvcyc7CiRsYW5nWydTYW1wbGVUYWcnXSA9ICdUYWcgZGUgbXVlc3RyYSc7CiRsYW5nWydwcm9tcHRfbmV3U2NyaXB0J10gPSAnQWdyZWdhciBudWV2byBzY3JpcHQnOwokbGFuZ1sncHJvbXB0X25ld1NjcmlwdEFzcyddID0gJ051ZXZhIGFzaWduYWNpJm9hY3V0ZTtuIGRlIHNjcmlwdCc7CiRsYW5nWyd0aXRsZV9Hcm91cHMnXSA9ICdMaXN0YSBkZSBncnVwb3MgZGUgc2NyaXB0cyc7CiRsYW5nWyd0aXRsZV9TY3JpcHRzJ10gPSAnTGlzdGEgZGUgc2NyaXB0cyBzdWVsdG9zJzsKJGxhbmdbJ2FyZXlvdXN1cmUnXSA9ICdJbXBvcnRhbnQ6XG5cbklmIHRoaXMgaXMgZGVsZXRlZCBhbGwgaW5mb3JtYXRpb24gd2lsbCBiZSBsb3N0IVxuXG5JZiB5b3UgaGF2ZSB0aGlzIHNjcmlwdCBpbiBhIGdyb3VwIHlvdSB3aWxsIGJyZWFrIHRoZSB0aWUgYW5kIHdpbGwgbmVlZCB0byBlZGl0IHRoZSBncm91cC5cbkl0IGlzIGJlc3QgdG8gc3RhcnQgdGhlIGRlbGV0aW9uIHByb2Nlc3MgZnJvbSB0aGUgQXNzaWdubWVudCBhcmVhLic7CiRsYW5nWydzbWFydHlIb3cnXSA9ICdUaGUgc21hcnR5IHdvcmtzIGxpa2UgdGhpcy4uLiBXaGVyZSB5b3UmIzAzOTtkIGhhdmUgeyRzbWFydHkubm93fSB5b3UgZG8ge3skc21hcnR5Lm5vd319ICAuICBOb3cgeW91IGNhbiBkbyBzbWFydHkgc3R1ZmYnOwokbGFuZ1snYWxsJ10gPSAnQWRlY3VhZG8gcGFyYSB0b2RvcyBsb3MgZGlzcG9zaXRpdm9zJzsKJGxhbmdbJ2F1cmFsJ10gPSAnQWRlY3VhZG8gcGFyYSBzaW50ZXRpemFkb3JlcyBkZSBwYWxhYnJhcyc7CiRsYW5nWydicmFpbGxlJ10gPSAnQWRlY3VhZG8gcGFyYSBkaXNwb3NpdGl2b3MgdGFjdGlsZXMgZGUgYnJhaWxlJzsKJGxhbmdbJ2VtYm9zc2VkJ10gPSAnQWRlY3VhZG8gcGFyYSBpbXByZXNvcmFzIGRlIGJyYWlsZSc7CiRsYW5nWydoYW5kaGVsZCddID0gJ0FkZWN1YWRvIHBhcmEgZGlzcG9zaXRpdm9zIHBvcnQmYWFjdXRlO3RpbGVzIGRlIG1hbm8nOwokbGFuZ1sncHJpbnQnXSA9ICdBZGVjdWFkbyBwYXJhIG1hdGVyaWFsIHBhZ2luYWRvLCBvcGFjbyB5IGRvY3VtZW50b3MgdmlzdG9zIGVuIHBhbnRhbGxhIGVuIG1vZG8gcHJlbGltaW5hciBkZSBpbXByZXNpJm9hY3V0ZTtuJzsKJGxhbmdbJ3Byb2plY3Rpb24nXSA9ICdBZGVjdWFkbyBwYXJhIHByZXNlbnRhY2lvbmVzIHByb3llY3RhZGFzJzsKJGxhbmdbJ3NjcmVlbiddID0gJ0FkZWN1YWRvIHByaW1vcmRpYWxtZW50ZSBwYXJhIHBhbnRhbGxhcyBkZSBjb2xvciBkZSBjb21wdXRhZG9yZXMnOwokbGFuZ1sndHR5J10gPSAnQWRlY3VhZG8gcGFyYSBtZWRpb3MgdGFsZXMgY29tbyB0ZWxldGlwb3MgeSB0ZXJtaW5hbGVzJzsKJGxhbmdbJ01lZGlhVHlwZSddID0gJ2FsbCA6IFN1aXRhYmxlIGZvciBhbGwgZGV2aWNlcy48YnIvPg0KYXVyYWwgOiBJbnRlbmRlZCBmb3Igc3BlZWNoIHN5bnRoZXNpemVycy48YnIvPg0KYnJhaWxsZSA6IEludGVuZGVkIGZvciBicmFpbGxlIHRhY3RpbGUgZmVlZGJhY2sgZGV2aWNlcy48YnIvPg0KZW1ib3NzZWQgOiBJbnRlbmRlZCBmb3IgcGFnZWQgYnJhaWxsZSBwcmludGVycy48YnIvPg0KaGFuZGhlbGQgOiBJbnRlbmRlZCBmb3IgaGFuZGhlbGQgZGV2aWNlczxici8+DQpwcmludCA6IEludGVuZGVkIGZvciBwYWdlZCwgb3BhcXVlIG1hdGVyaWFsIGFuZCBmb3IgZG9jdW1lbnRzIHZpZXdlZCBvbiBzY3JlZW4gaW4gcHJpbnQgcHJldmlldyBtb2RlLjxici8+DQpwcm9qZWN0aW9uIDogSW50ZW5kZWQgZm9yIHByb2plY3RlZCBwcmVzZW50YXRpb25zLCBmb3IgZXhhbXBsZSBwcm9qZWN0b3JzIG9yIHByaW50IHRvIHRyYW5zcGFyZW5jaWVzLjxici8+DQpzY3JlZW4gOiBJbnRlbmRlZCBwcmltYXJpbHkgZm9yIGNvbG9yIGNvbXB1dGVyIHNjcmVlbnMuPGJyLz4NCnR0eSA6IEludGVuZGVkIGZvciBtZWRpYSB1c2luZyBhIGZpeGVkLXBpdGNoIGNoYXJhY3RlciBncmlkLCBzdWNoIGFzIHRlbGV0eXBlcyBhbmQgdGVybWluYWxzLjxici8+DQp0diA6IEludGVuZGVkIGZvciB0ZWxldmlzaW9uLXR5cGUgZGV2aWNlcy4nOwokbGFuZ1snQ2FuY2VsZWQnXSA9ICdPcGVyaWFjaSZvYWN1dGU7biBjYW5jZWxhZGEuIExhIGluZm9ybWFjaSZvYWN1dGU7biBxdWUgc2UgaGF5YSBpbmdyZXNhZG8gbyBhY3R1YWxpemFkbyBubyBzZSBndWFyZCZvYWN1dGU7Lic7CiRsYW5nWydCdG5BRERFRCddID0gJ1NlIGFncmVnJm9hY3V0ZTsgdW4gbnVldm8gc2NyaXB0JzsKJGxhbmdbJ0J0bkVESVRFRCddID0gJ1NlIGVkaXQmb2FjdXRlOyB1biBzY3JpcHQgZXhpc3RlbnRlJzsKJGxhbmdbJ0J0bkRFTEVURUQnXSA9ICdTZSBlbGltaW4mb2FjdXRlOyB1biBzY3JpcHQgZXhpc3RlbnRlJzsKJGxhbmdbJ3R5cGVfbGFiZWwnXSA9ICdUaXBvJzsKJGxhbmdbJ2VtdHB5R3JvdXAnXSA9ICdZb3UmIzAzOTtsbCBuZWVkIHRvIGFkZCBhIHNjcmlwdCB0byB0aGUgZ3JvdXAgYmVmb3JlIGNhbGxpbmcgaXQnOwokbGFuZ1snU2NyaXB0U2V0X2xhYmVsJ10gPSAnSUQgZGVsIHNjcmlwdCc7CiRsYW5nWydzY3JpcHRUeXBlX2xhYmVsJ10gPSAnVGlwbyBkZSBzY3JpcHQnOwokbGFuZ1snU2NyaXB0TmFtZV9sYWJlbCddID0gJ05vbWJyZSBkZWwgc2NyaXB0ICc7CiRsYW5nWydTaW5nbGVDb2RlX2xhYmVsJ10gPSAnTGxhbWFkYSBwcmVkZXRlcm1pbmFkYSBwYXJhIGVsIHNjcmlwdCc7CiRsYW5nWydHcm91cHRTaXplX2xhYmVsJ10gPSAnVG90YWwgJzsKJGxhbmdbJ25vdGVzX2xhYmVsJ10gPSAnTm90YXMnOwokbGFuZ1snU2hvd1ZhbF9sYWJsZSddID0gJ01hbnRlbmVyIG1lbnNhamVzIGFiaWVydG9zJzsKJGxhbmdbJ1R1cm5PTlZhbF9sYWJsZSddID0gJ0Rlc2FiaWxpdGFyIHZhbGlkYWNpJm9hY3V0ZTtuJzsKJGxhbmdbJ2ZpbHRlclByb3BfbGFibGUnXSA9ICdGaWx0cmFyIHByb3BpZWRhZGVzIHBhcmEgYXl1ZGFyIGNvbiBsYSB2YWxpZGFjaSZvYWN1dGU7bic7CiRsYW5nWydDU1Nwcm9maWxlX2xhYmxlJ10gPSAnUGVyZmlsIENTUyc7CiRsYW5nWyd1c2VybWVkaXVtX2xhYmxlJ10gPSAnVXNhciBtZWRpbyc7CiRsYW5nWydWQUxMYW5nX2xhYmxlJ10gPSAnTGVuZ3VhamUnOwokbGFuZ1sndzNjQ1NTd2FybmluZ19sYWJsZSddID0gJ05pdmVsIGRlIGFkdmVydGVuY2lhIHBhcmEgdzNjIENTUyc7CiRsYW5nWydNZWRpYVR5cGVfbGFiZWwnXSA9ICdUaXBvIGRlIG1lZGlvOic7CiRsYW5nWydNaW5pZnlfbGFiZWwnXSA9ICdQcmUgTWluaW1pemFkbyc7CiRsYW5nWydtYXhBZ2VfbGFiZWwnXSA9ICdUaWVtcG8gbSZhYWN1dGU7eGltbyc7CiRsYW5nWydDcmVhdGlvbkRhdGVfbGFiZWwnXSA9ICdGZWNoYSBkZSBjcmVhY2kmb2FjdXRlO24nOwokbGFuZ1snTW9kaWZlZERhdGVfbGFiZWwnXSA9ICdGZWNoYSBkZSBtb2RpZmljYWNpJm9hY3V0ZTtuJzsKJGxhbmdbJ3BhdGhPcHRpb25fbGFiZWwnXSA9ICdVc2FyIHVuYSBydXRhIDxlbT4oZGViZSBkZSBpbmljaWFyIGNvbiAmcXVvdDsvdXBsb2Fkcy8uLi4mcXVvdDspPC9lbT4nOwokbGFuZ1snU2NyaXB0SXNfbGFiZWwnXSA9ICdVc2FyIGVzdGUgc2NyaXB0IDxlbT4oTm90YTogc2UgaGFyYSBjYXNvIG9taXNvIHNpIHNlIGVzcGVmaWMmb2FjdXRlOyB1bmEgcnV0YSk8L2VtPic7CiRsYW5nWydkZWJ1Z0lUX2xhYmVsJ10gPSAnZGVidWdJVCc7CiRsYW5nWydkZWJ1Z0lUbm90ZV9sYWJlbCddID0gJzxlbT4oTW9kbyBGaXJlcGhwIGRlYmVyJmFhY3V0ZTsgZXN0YXIgZGlzcG9uaWJsZSk8L2VtPic7CiRsYW5nWydkZWJ1Z1QnXSA9ICdPcGNpb25lcyBkZSBkZXB1cmFjaSZvYWN1dGU7bic7CiRsYW5nWydub25lSW5UeXBlJ10gPSAnPGgxPkFncmVnYXIgcHJpbWVybzxici8+dW4gc2NyaXB0IGVuIGVzdGUgdGlwbzwvaDE+JzsKJGxhbmdbJ3NtYXJ0eU9uX2xhYmVsJ10gPSAnPHN0cm9uZz5Qcm9jZXNvIFNtYXJ0eTwvc3Ryb25nPjxici8+IGNvbnRlbmlkbyBlbiBsb3MgY2FtcG9zICZxdW90O2J1dHRvbiZxdW90Oyc7CiRsYW5nWydzbWFydHlPbiddID0gJzxoMT5Qcm9jZXNzIFNtYXJ0eSBkYXRhPC9oMT4NCjxoMz5XaXRoIHRoaXMgdHVybmVkIG9uIHlvdSBjYW4gc2V0IHRoZSBidXR0b24gZmllbGRzIHdpdGggdGhlIHZhbHVlcyBwYXNzZWQgYnkgb3RoZXIgbW9kdWxlcyBzdWNoIGFzIFByb2R1Y3RzIG9yIENhdGFsb2dlcjwvaDM+JzsKJGxhbmdbJ2VkaXQnXSA9ICdFZGl0YXInOwokbGFuZ1snZGVsZXRlJ10gPSAnQm9ycmFyJzsKJGxhbmdbJ0Nsb3NlJ10gPSAnQ2VycmFyJzsKJGxhbmdbJ09wZW4nXSA9ICdBYnJpcic7CiRsYW5nWydjbGVhblRlbXAnXSA9ICdMaW1waWFyIGxhIGNhcnBldGEgdGVtcD8nOwokbGFuZ1sndXJUZW1wUGF0aCddID0gJ0xhIHJ1dGEgY2FjaGUgZXMnOwokbGFuZ1snTGFzdE1vZCddID0gJ1VsdGltYSBtb2RpZmljYWNpJm9hY3V0ZTtuJzsKJGxhbmdbJ2NhY2hlRmVycm9yJ10gPSAnU2NyaXB0RGVwbG95IG5vIHB1ZG8gY3JlYXIgbGEgY2FycGV0YSBkZSBjYWNoZSwgcmV2aXNhciBwZXJtaXNvcyBkZSBhcmNoaXZvcyBwYXJhIGxhIGNhcnBldGEgVXBsb2Fkcy4nOwokbGFuZ1snTmFtZSddID0gJ05vbWJyZSAnOwokbGFuZ1snUHJvY2Nlc3NpbmcnXSA9ICdQcm9jZXNhbmRvJzsKJGxhbmdbJ1NhdmVkJ10gPSAnR3VhcmRhZG8nOwokbGFuZ1snRG9uZSddID0gJ0NvbXBsZXRvJzsKJGxhbmdbJ1ZhbGlkYXRpbmcnXSA9ICdWYWxpZGFuZG8nOwokbGFuZ1snR3JvdXB0U2V0X2xhYmVsJ10gPSAnTm9tYnJlIGRlIGdydXBvJzsKJGxhbmdbJ0dyb3VwdFR5cGVfbGFiZWwnXSA9ICdUaXBvIGRlIHNjcmlwdHMnOwokbGFuZ1snU2NyaXB0UGlja2VyX2xhYmVsJ10gPSAnTGlzdGEgZGUgc2NyaXB0cyc7CiRsYW5nWydMSU5FJ10gPSAnTElORSc7CiRsYW5nWydUWVBFJ10gPSAnVFlQRSAnOwokbGFuZ1snU1VCVFlQRSddID0gJ1NVQlRZUEUgJzsKJGxhbmdbJ1NUUklORyddID0gJ1NUUklORyAnOwokbGFuZ1snTUVTU0FHRSddID0gJ01FU1NBR0UgJzsKJGxhbmdbJ0xFVkVMJ10gPSAnTEVWRUwgJzsKJGxhbmdbJ05vdGVzJ10gPSAnTm90YXMnOwokbGFuZ1snV2FybmluZ3MnXSA9ICdBZHZlcnRlbmNpYSc7CiRsYW5nWydFcnJvcnMnXSA9ICdFcnJvcmVzJzsKJGxhbmdbJ2hpZGRlbiddID0gJ2VzY29uZGlkbyc7CiRsYW5nWydTY3JpcHQnXSA9ICdTY3JpcHQgJzsKJGxhbmdbJ0VVUkxTJ10gPSAnVXJscyBleHRyYWlkYXMnOwokbGFuZ1snUkNTUyddID0gJ0NTUyBlamVjdXRhZG8nOwokbGFuZ1snU0NTUyddID0gJ0VzdHJ1Y3R1cmEgQ1NTICc7CiRsYW5nWydGQ09OVCddID0gJ0NvbnRlbmlkbyBkZSBhcmNoaXZvJzsKJGxhbmdbJ2lVUkwnXSA9ICdVUkwgZGUgaW1hZ2VuJzsKJGxhbmdbJ1R5cGUnXSA9ICdUeXBvJzsKJGxhbmdbJ1NpemUnXSA9ICdUYW1hJm50aWxkZTtvJzsKJGxhbmdbJ1N0YXR1cyddID0gJ1N0YXR1cyAnOwokbGFuZ1snaG90bGluayddID0gJzxzdHJvbmc+SG90bGlua2luZzo8L3N0cm9uZz4gcGFyZWNlIHNlciB1biBlbmxhY2UgZGlyZWN0byAoYWN0aXZvKS4nOwokbGFuZ1snQnJva2VubGluayddID0gJ0VubGFjZSByb3RvJzsKJGxhbmdbJ05PY3NzSSddID0gJ05vIGhheSBpbWFnZW5lcyBjc3MnOwokbGFuZ1snWWVzVkFsYXN0ZXInXSA9ICc8aDI+WW91IHZhbGlkYXRlZCEgKio8L2gyPjxpbWcgc3R5bGU9JnF1b3Q7Ym9yZGVyOjA7d2lkdGg6ODhweDtoZWlnaHQ6MzFweCZxdW90O3NyYz0mcXVvdDtodHRwOi8vamlnc2F3LnczLm9yZy9jc3MtdmFsaWRhdG9yL2ltYWdlcy92Y3NzLWJsdWUmcXVvdDthbHQ9JnF1b3Q7VmFsaWQgQ1NTISZxdW90OyAvPjxici8+IDxzdHJvbmc+KiogeW91IGFyZSBmaWx0ZXJpbmcgZXJyb3JzIGFuZCBtYXkgaGF2ZSBmaWx0ZXJlZCBhIHJlYWwgZXJyb3I8L3N0cm9uZz4nOwokbGFuZ1snWWVzVkFsJ10gPSAnPGgyPllvdSB2YWxpZGF0ZWQhPC9oMj48aW1nIHN0eWxlPSZxdW90O2JvcmRlcjowO3dpZHRoOjg4cHg7aGVpZ2h0OjMxcHgmcXVvdDtzcmM9JnF1b3Q7aHR0cDovL2ppZ3Nhdy53My5vcmcvY3NzLXZhbGlkYXRvci9pbWFnZXMvdmNzcy1ibHVlJnF1b3Q7YWx0PSZxdW90O1ZhbGlkIENTUyEmcXVvdDsgLz4nOwokbGFuZ1snQ2xlYXJJbWcnXSA9ICdCb3JyYXIgaW1hZ2VuIGFjdHVhbCc7CiRsYW5nWydGaW5pc2gnXSA9ICdUZXJtaW5hcic7CiRsYW5nWydyZXZlcnQnXSA9ICdSZXZlcnRpcic7CiRsYW5nWydhcHBseSddID0gJ0FwcGxpY2FyJzsKJGxhbmdbJ2NhbmNlbCddID0gJ0NhbmNlbGFyJzsKJGxhbmdbJ2Zvcm1fY2FuY2VsJ10gPSAnQ2FuY2VsYXInOwokbGFuZ1snU2F2ZSddID0gJ0d1YXJkYXInOwokbGFuZ1snZG9uZSddID0gJ0NvbXBsZXRvJzsKJGxhbmdbJ2FkZCddID0gJ0FncmVnYXInOwokbGFuZ1snc3VibWl0J10gPSAnRW52aWFyJzsKJGxhbmdbJ1JFT1JERVInXSA9ICdSZW9yZGVuYXInOwokbGFuZ1snZm9ybV9zdWJtaXQnXSA9ICdHdWFyZGFyIHByZWZlcmVuY2lhcyc7CiRsYW5nWydtb2RfcHJlZnNfdGl0bGUnXSA9ICdQcmVmZXJlbmNpYXMgZGUgTW9kdWxvJzsKJGxhbmdbJ3ByZWZzdXBkYXRlZCddID0gJ1ByZWZlcmVuY2lhcyBkZSBNb2R1bG8gYWN0dWFsaXphZGFzJzsKJGxhbmdbJ29wdGlvbnN1cGRhdGVkJ10gPSAnb3BjaW9uZXMgYWN0dWFsaXphZGFzJzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnU1BFRUQgWU9VUiBTSVRFIFVQIC4uLiEhISEgJmJ1bGw7IE91dHB1dCBkeW5hbWljIEpTIGZpbGVzIGFuZCBDU1MgV0lUSCBzbWFydHkuLi4gJmJ1bGw7IFNldCB0aGUgZmlsZXMgdG8gdXNlIGEgc3ViZG9tYWluLi4uICZidWxsOyBjYWNoZWQuLi4gJmJ1bGw7IG1pbmlmaWVkLi4uICZidWxsOyBEaWQgSSBtZW50aW9uIHlvdSBjYW4gdXNlIHNtYXJ0eSBpbiB5b3VyIEpTIGFuZCBDU1Mgc2NyaXB0ISEhISAtIFNpbXBsZSwgZmxleGlibGUhJzsKJGxhbmdbJ3dlbGNvbWVfdGV4dCddID0gJzxwPkhvbGEhPC9wPic7CiRsYW5nWydjaGFuZ2Vsb2cnXSA9ICc8dWw+DQoNCiAgPGxpPlZlcnNpb24gMC4xIEJldGEgcmVsZWFzZS48L2xpPg0KICA8bGk+VmVyc2lvbiAwLjIgbG90cyBvZiBjaGFuZ2VzIHRvIGZpeCBidWcuLi48L2xpPg0KICAgPGxpPlZlcnNpb24gMC4zIHNldCB0aGUgc21hcnR5IHRvIHVzZSB7eyB9fTwvbGk+DQogICAgPGxpPlZlcnNpb24gMC40IGZpeGVkIGJ1Zy4uIGltcHJvdmVkIHRoZSBtaW5pYWZjYXRpb24gdG8gYSBzYXZlcyBvZiB1cCB0byA2MCU8L2xpPg0KPC91bD4nOwokbGFuZ1snaGVscCddID0gJzxsaW5rIG1lZGlhPSZxdW90O3NjcmVlbiZxdW90OyBocmVmPSZxdW90Oy4uL21vZHVsZXMvU2NyaXB0RGVwbG95L0NTUy9NYXN0ZXJDU1MuY3NzJnF1b3Q7IHR5cGU9JnF1b3Q7dGV4dC9jc3MmcXVvdDsgcmVsPSZxdW90O3N0eWxlc2hlZXQmcXVvdDsvPjxkaXYgY2xhc3M9JnF1b3Q7U2ltV3JhcCZxdW90Oz48YiBjbGFzcz0mcXVvdDtyYm90dG9tJnF1b3Q7PjxiIGNsYXNzPSZxdW90O3IxJnF1b3Q7PjwvYj4gPGIgY2xhc3M9JnF1b3Q7cjImcXVvdDs+PC9iPjxiIGNsYXNzPSZxdW90O3IzJnF1b3Q7PjwvYj4gPGIgY2xhc3M9JnF1b3Q7cjQmcXVvdDs+PC9iPjwvYj4NCg0KPGRpdiBjbGFzcz0mcXVvdDtTaW1jb24mcXVvdDs+IDxoMyBjbGFzcz0mcXVvdDtCYWNrTGluayZxdW90Oz48YSBvbmNsaWNrPSJqYXZhc2NyaXB0OndpbmRvdy5oaXN0b3J5LmdvKC0xKSIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPjw8IEJhY2s8L2E+PC9oMz4NCjxoMT5XaGF0IERvZXMgVGhpcyBEbz8tLS0gdGhpcyBuZWVkcyB1cGRhdGluZzwvaDE+DQo8aDI+V3JpdGUgbWFuYWdlIGFuZCBkZXBsb3kgSlMgYW5kIENTUzwvaDI+DQo8YSBpZD0iU2NyaXB0RGVwbG95Ij48L2E+DQo8cD5TY3JpcHREZXBsb3kgbW9kdWxlIHRoYXQgY2FuIGNvbWJpbmUgbXVsdGlwbGUgQ1NTIG9yIEphdmFzY3JpcHQgZmlsZXMsIGNvbXByZXNzIHRoZWlyIGNvbnRlbnRzIChpLmUuIHJlbW92YWwgb2YgdW5uZWNlc3Nhcnkgd2hpdGVzcGFjZS9jb21tZW50cyksIGFuZCBzZXJ2ZSB0aGUgcmVzdWx0cyB3aXRoIEhUVFAgZW5jb2RpbmcgKGd6aXAvZGVmbGF0ZSkgYW5kIGhlYWRlcnMgdGhhdCBhbGxvdyBvcHRpbWFsIGNsaWVudC1zaWRlIGNhY2hpbmcuIFRoaXMgaGVscHMgeW91IGZvbGxvdyBzZXZlcmFsIG9mIFlhaG9vISYjMDM5O3MgPGEgaHJlZj0iaHR0cDovL2RldmVsb3Blci55YWhvby5jb20vcGVyZm9ybWFuY2UvaW5kZXguaHRtbCNydWxlcyIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPlJ1bGVzIGZvciBIaWdoIFBlcmZvcm1hbmNlIFdlYiBTaXRlczwvYT4uIChTZWUgJnF1b3Q7UHJvYmxlbSBEb21haW4mcXVvdDsgYmVsb3cgZm9yIG1vcmUgaW5mby4pIDwvcD4NCjxoMz5UaGUgU2hvcnQgb2YgaXQ8L2gzPg0KPHA+V2lydGUgeW91ciBzY3JpcHRzLCBzZXQgdGhlIG9yZGVyIGFuZCBTY3JpcHREZXBsb3kgd2lsbCBkbyB0aGUgcmVzdCE8L3A+DQo8dGFibGU+DQogIDx0Ym9keT4NCiAgICA8dHI+DQogICAgICA8dGQgc3R5bGU9JnF1b3Q7Qk9SREVSLVJJR0hUOiAjYWFhIDFweCBzb2xpZDsgUEFERElORy1SSUdIVDogNXB4OyBCT1JERVItVE9QOiAjYWFhIDFweCBzb2xpZDsgUEFERElORy1MRUZUOiA1cHg7IFBBRERJTkctQk9UVE9NOiA1cHg7IEJPUkRFUi1MRUZUOiAjYWFhIDFweCBzb2xpZDsgUEFERElORy1UT1A6IDVweDsgQk9SREVSLUJPVFRPTTogI2FhYSAxcHggc29saWQmcXVvdDs+PHN0cm9uZz5CZWZvcmU8L3N0cm9uZz48L3RkPg0KICAgICAgPHRkIHN0eWxlPSZxdW90O0JPUkRFUi1SSUdIVDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctUklHSFQ6IDVweDsgQk9SREVSLVRPUDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctTEVGVDogNXB4OyBQQURESU5HLUJPVFRPTTogNXB4OyBCT1JERVItTEVGVDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctVE9QOiA1cHg7IEJPUkRFUi1CT1RUT006ICNhYWEgMXB4IHNvbGlkJnF1b3Q7PjxpbWcgc3JjPSZxdW90O2h0dHA6Ly9tcmNsYXkub3JnL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDA4LzA5L2ZpZGRsZXJfYmVmb3JlLnBuZyZxdW90OyBhbHQ9JnF1b3Q7YWZ0ZXImcXVvdDsgLz48L3RkPg0KICAgIDwvdHI+DQogICAgPHRyPg0KICAgICAgPHRkIHN0eWxlPSZxdW90O0JPUkRFUi1SSUdIVDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctUklHSFQ6IDVweDsgQk9SREVSLVRPUDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctTEVGVDogNXB4OyBQQURESU5HLUJPVFRPTTogNXB4OyBCT1JERVItTEVGVDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctVE9QOiA1cHg7IEJPUkRFUi1CT1RUT006ICNhYWEgMXB4IHNvbGlkJnF1b3Q7PjxzdHJvbmc+QWZ0ZXI8L3N0cm9uZz48L3RkPg0KICAgICAgPHRkIHN0eWxlPSZxdW90O0JPUkRFUi1SSUdIVDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctUklHSFQ6IDVweDsgQk9SREVSLVRPUDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctTEVGVDogNXB4OyBQQURESU5HLUJPVFRPTTogNXB4OyBCT1JERVItTEVGVDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctVE9QOiA1cHg7IEJPUkRFUi1CT1RUT006ICNhYWEgMXB4IHNvbGlkJnF1b3Q7PjxpbWcgc3JjPSZxdW90O2h0dHA6Ly9tcmNsYXkub3JnL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDA4LzA5L2ZpZGRsZXJfYWZ0ZXIucG5nJnF1b3Q7IGFsdD0mcXVvdDtiZWZvcmUmcXVvdDsgLz48L3RkPg0KICAgIDwvdHI+DQogIDwvdGJvZHk+DQo8L3RhYmxlPg0KDQoNCg0KPGgyPjxhIGlkPSJGZWF0dXJlcyI+PC9hPkZlYXR1cmVzPC9oMj4NCjx1bD4NCiAgPGxpPkNvbWJpbmVzIGFuZCBtaW5pZmllcyBtdWx0aXBsZSBDU1Mgb3IgSmF2YVNjcmlwdCBmaWxlcyBpbnRvIGEgc2luZ2xlICAgZG93bmxvYWQgPC9saT4NCiAgPGxpPlVzZXMgYW4gPGEgaHJlZj0iaHR0cDovL2NvZGUuZ29vZ2xlLmNvbS9wL21pbmlmeS9zb3VyY2UvYnJvd3NlL3RydW5rL21pbi9saWIvSlNNaW4ucGhwIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub2ZvbGxvdyI+ZW5oYW5jZWQgcG9ydDwvYT4gb2YgRG91Z2xhcyBDcm9ja2ZvcmQmIzAzOTtzIDxhIGhyZWY9Imh0dHA6Ly93d3cuY3JvY2tmb3JkLmNvbS9qYXZhc2NyaXB0L2pzbWluLmh0bWwiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij5KU01pbiAgIGxpYnJhcnk8L2E+IGFuZCBjdXN0b20gY2xhc3NlcyB0byBtaW5pZnkgPGEgaHJlZj0iaHR0cDovL2NvZGUuZ29vZ2xlLmNvbS9wL21pbmlmeS9zb3VyY2UvYnJvd3NlL3RydW5rL21pbi9saWIvTWluaWZ5L0NTUy5waHAiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij5DU1M8L2E+IGFuZCA8YSBocmVmPSJodHRwOi8vY29kZS5nb29nbGUuY29tL3AvbWluaWZ5L3NvdXJjZS9icm93c2UvdHJ1bmsvbWluL2xpYi9NaW5pZnkvSFRNTC5waHAiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij5IVE1MPC9hPjwvbGk+DQogIDxsaT5DYWNoZXMgc2VydmVyLXNpZGUgdG8gYXZvaWQgZG9pbmcgdW5uZWNlc3Nhcnkgd29yayA8L2xpPg0KICA8bGk+UmVzcG9uZHMgd2l0aCBhbiBIVFRQIDMwNCAoTm90IE1vZGlmaWVkKSByZXNwb25zZSB3aGVuIHRoZSBicm93c2VyIGhhcyBhbiAgIHVwLXRvLWRhdGUgY2FjaGUgY29weSAqKiA8L2xpPg0KICA8bGk+TW9zdCBtb2R1bGVzIGFyZSBsYXp5LWxvYWRlZCBhcyBuZWVkZWQgKDMwNCByZXNwb25zZXMgdXNlIG1pbmltYWwgY29kZSkgICoqIDwvbGk+DQogIDxsaT5BdXRvbWF0aWNhbGx5IHJld3JpdGVzIHJlbGF0aXZlIFVSSXMgaW4gY29tYmluZWQgQ1NTIGZpbGVzIHRvIHBvaW50IHRvIHZhbGlkIGxvY2F0aW9ucyA8L2xpPg0KICA8bGk+V2l0aCBjYWNoaW5nIGVuYWJsZWQsIFNjcmlwdERlcGxveSBpcyBjYXBhYmxlIG9mIGhhbmRsaW5nIGh1bmRyZWRzIG9mIHJlcXVlc3RzIHBlciBzZWNvbmQgb24gYSBtb2RlcmF0ZWx5IHBvd2VyZnVsIHNlcnZlci4gPC9saT4NCiAgPGxpPkNvbnRlbnQtRW5jb2Rpbmc6IGd6aXAsIGJhc2VkIG9uIHJlcXVlc3QgaGVhZGVycy4gQ2FjaGluZyBhbGxvd3MgaXQgc28gc2VydmUgZ3ppcHBlZCBmaWxlcyBmYXN0ZXIgdGhhbiBBcGFjaGUmIzAzOTtzIG1vZF9kZWZsYXRlIG9wdGlvbiEgPC9saT4NCjwvdWw+DQo8aDM+PGVtPjxzdHJvbmc+KiogTm90ZTo8L3N0cm9uZz4gSXQgaXMgYmVzdCB0byB1c2UgYSAuaHRhY2Nlc3Mgc2NyaXB0IHRvIHNldCB0aGUgYWdlIHRpbWVzLiBTY3JpcHREZXBsb3kgaXMgZGVzaWduZWQgZm9yIGVmZmljaWVuY3ksIGJ1dCBmb3IgdmVyeSBoaWdoIHRyYWZmaWMgc2l0ZXMsIFNjcmlwdERlcGxveSBtYXkgc2VydmUgZmlsZXMgc2xvd2VyIHRoYW4geW91ciBIVFRQZCBkdWUgdG8gdGhlIENHSSBvdmVyaGVhZCBvZiBQSFAuICBUbyBvdmVyIGNvbWUgdGhpcyBKdXN0IGNoZWNrICZxdW90O3VzZSAuaHRhY2Nlc3MgaW4gb3B0aW9ucyZxdW90OzwvZW0+PC9oMz4NCjxoMj48YSBuYW1lPSJSZXF1aXJlbWVudHMiPjwvYT5SZXF1aXJlbWVudHM8L2gyPg0KPHVsPg0KICA8bGk+VGhlIGNvbW1vbmx5IGluc3RhbGxlZCA8YSBocmVmPSJodHRwOi8vdXMzLnBocC5uZXQvbWFudWFsL2VuL3psaWIuaW5zdGFsbGF0aW9uLnBocCIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPnpsaWIgICBleHRlbnNpb248L2E+IGlzIHJlY29tbWVuZGVkIGZvciBIVFRQIGVuY29kaW5nIGZ1bmN0aW9uYWxpdHkuIDwvbGk+DQo8L3VsPg0KPGJyLz48YnIvPg0KPGgxPkhvdyBEbyBJIFVzZSBJdDwvaDE+DQoNCg0KPGgzPkdldCBhIHNpbmdsZSBzY3JpcHQ8L2gzPg0KdXNlIDxzcGFuIGNsYXNzPSZxdW90O2NvZGVISUdITElHSFQmcXVvdDs+e2Ntc19tb2R1bGUgbW9kdWxlPVNjcmlwdERlcGxveSBzY3JpcHRJRD0mcXVvdDsxJnF1b3Q7fSA8L3NwYW4+IDxici8+PGJyLz4NCjxoMz5HZXQgYSBzY3JpcHQgZ3JvdXA8L2gzPg0KdXNlIDxzcGFuIGNsYXNzPSZxdW90O2NvZGVISUdITElHSFQmcXVvdDs+e2Ntc19tb2R1bGUgbW9kdWxlPVNjcmlwdERlcGxveSBncm91cElEPSZxdW90OzEmcXVvdDt9IDwvc3Bhbj4gPGJyLz48YnIvPg0KPGgyPkFsbCBvdXRwdXQgaXMgaW4gdGhlIFhIVE1MIGZvcm1hdCwgeW91IHNob3VsZCB3b3JrIGluIHRoYXQuPC9oMj4NCg0KPGJyLz48YnIvPg0KPGg0PlBhcmFtczwvaDQ+DQo8dWw+DQo8bGk+PHN0cm9uZz5zY3JpcHRJRD0mcXVvdDsmcXVvdDsgPC9zdHJvbmc+PGVtPihSZXF1aXJlZC9vcHRpb25hbCk8L2VtPiA8YnIvPnwgc2V0IHRoZSBJRCBSZXF1aXJlZCBvbmx5IGlmIGdyb3VwSUQgbm90IGNhbGxlZDxici8+PC9saT4NCjxsaT48c3Ryb25nPmdyb3VwSUQ9JnF1b3Q7JnF1b3Q7IDwvc3Ryb25nPjxlbT4oUmVxdWlyZWQvb3B0aW9uYWwpPC9lbT4gPGJyLz58IHNldCB0aGUgSUQgUmVxdWlyZWQgb25seSBpZiBzY3JpcHRJRCBub3QgY2FsbGVkPGJyLz48L2xpPg0KPGxpPjxzdHJvbmc+U3R5cGU9JnF1b3Q7JnF1b3Q7IDwvc3Ryb25nPjxlbT4oUmVxdWlyZWQvKSBKUy9DU1M8L2VtPiA8YnIvPnwgc2V0IHRoZSBJRCBSZXF1aXJlZCBvbmx5IGlmIHNjcmlwdElEIG5vdCBjYWxsZWQ8YnIvPjwvbGk+DQoNCjxsaT48c3Ryb25nPlNtYXJ0eU9uPSZxdW90OyZxdW90OyA8L3N0cm9uZz48ZW0+KG9wdGlvbmFsKSB0cnVlL2ZhbHNlIDxzdHJvbmc+RGVmYXVsdDpudWxsPC9zdHJvbmc+PC9lbT4gPGJyLz58IFRoaXMgbGV0cyB5b3Ugb3ZlciByaWRlIHRoZSBnbG9ibGVzPGJyLz48L2xpPg0KPGxpPjxzdHJvbmc+TWluaWZ5PSZxdW90OyZxdW90OyA8L3N0cm9uZz48ZW0+KG9wdGlvbmFsKSB0cnVlL2ZhbHNlIDxzdHJvbmc+RGVmYXVsdDpudWxsPC9zdHJvbmc+PC9lbT4gPGJyLz58ICBUaGlzIGxldHMgeW91IG92ZXIgcmlkZSB0aGUgZ2xvYmxlczxici8+PC9saT4NCg0KDQoNCg0KDQoNCjxsaT48c3Ryb25nPk1lZGlhVHlwZT0mcXVvdDsmcXVvdDsgPC9zdHJvbmc+PGVtPihvcHRpb25hbCk8L2VtPiA8YnIvPnwgc2V0IE1lZGlhIHR5cGUgZm9yIENTUyBmaWxlcyBoZXJlLi4uIG92ZXJyaWRlcyBkYiBzZXRpbmdzLjxici8+PC9saT4NCjxsaT48c3Ryb25nPmltcG9ydD0mcXVvdDsmcXVvdDsgPC9zdHJvbmc+PGVtPihvcHRpb25hbCkgdHJ1ZS9mYWxzZTwvZW0+IDxici8+fCBzZXQgdGhlIGluY2x1c2lvbiBzdHlsZSBmb3IgQ1NTIGZpbGVzIGhlcmUuLi4gb3ZlcnJpZGVzIGRiIHNldGluZ3MuIEV4OiB0cnVlICBnaXZlcyA8c3R5bGUgdHlwZT1cJnF1b3Q7dGV4dC9jc3NcJnF1b3Q7PkBpbXBvcnQgdXJsKCZxdW90O3VybC9jc3NmaWxlLmNzcyZxdW90Oykgc2NyZWVuOzwvc3R5bGU+PGJyLz48L2xpPg0KDQo8bGk+PHN0cm9uZz5jYWNoZUJ1c3Rlcjwvc3Ryb25nPiA8ZW0+KG9wdGlvbmFsKSA8c3Ryb25nPkRlZmF1bHQ6ZmFsc2U8L3N0cm9uZz48L2VtPjxici8+fCBUaGlzIGlzIHRvIGluc3RhbnRseSB1bmNhY2hlIGFuIHNjcmlwdCBvbiB0aGUgY2xpZW50IHNpZGUgYWZ0ZXIgYSBuZXcgdXBsb2FkZWQgc2NyaXB0IGlzIGNyZWF0ZWQuLi4gaWU6IDEyLmpzPzEyNTUyMjUwMDcgIDxmb250IGNvbG9yPSZxdW90O3JlZCZxdW90Oz48c3Ryb25nPiggdHJ1ZS9mYWxzZSApPC9zdHJvbmc+PC9mb250PjwvbGk+DQo8bGk+PHN0cm9uZz5hc3NpZ249JnF1b3Q7JnF1b3Q7IDwvc3Ryb25nPjxlbT4ob3B0aW9uYWwpPC9lbT4gPGJyLz58IEFzc2lnbiB0aGUgb3V0cHV0IChyZXR1cm4gdGhlIHNtYXJ0eSBhc3NpZ25tZW50KSAgVXNlIGluIGNvbmp1bmN0aW9uIHdpdGggb3V0IHdpdGhvdXQgVVJMPC9saT4NCjxsaT48c3Ryb25nPmZzaXplPSZxdW90OyZxdW90OyA8L3N0cm9uZz48ZW0+KG9wdGlvbmFsKTwvZW0+IDxici8+fCBnZXQgdGhlIHNpemU8L2xpPg0KPGxpPjxzdHJvbmc+cm9vdFVybD0mcXVvdDsmcXVvdDsgPC9zdHJvbmc+PGVtPihvcHRpb25hbCk8L2VtPiA8YnIvPnwgU2NyaXB0RGVwbG95IGNyZWF0ZXMgYSB0ZW1wIGRpcmVjdG9yIGluIHRoZSB1cGxvYWQgZm9sZGVyLiAgSWYgeW91IG1vdmUgdGhlIHBhdGggdG8gdGhlIHVwbGFvZCB0byBhIHN1YmRvbWFpbiB5b3UgbWF5IGd1aWRlIHRoZSBvdXRwdXQgd2l0aCB0aGlzLjwvbGk+DQogICAgICAgIDx1bCBzdHlsZT0mcXVvdDtsaXN0LXN0eWxlLXBvc2l0aW9uOmluc2lkZTsmcXVvdDs+PGxpPjxzdHJvbmc+RXhhcG1sZTo8L3N0cm9uZz4geW91IGNoYW5nZWQgPENPREU+JGNvbmZpZ1smIzAzOTt1cGxvYWRzX3BhdGgmIzAzOTtdID0gJiMwMzk7L3Zhci93d3cvdmhvc3RzL2RvbWFpbi5vcmcvaHR0cGRvY3MvdXBsb2FkcyYjMDM5Ozs8L0NPREU+IDwvbGk+DQogICAgICAgICAgICA8bGk+PHN0cm9uZz50bzwvc3Ryb25nPiA8Q09ERT4kY29uZmlnWyYjMDM5O3VwbG9hZHNfcGF0aCYjMDM5O10gPSBcL3Zhci93d3cvdmhvc3RzL2RvbWFpbi5vcmcvc3ViZG9tYWlucy9tZWRpYS9odHRwZG9jcy91cGxvYWRzJiMwMzk7OzwvQ09ERT48L2xpPg0KICAgICAgICAgICAgPGxpPm5vdyB0aGUgdXBsb2FkcyB1cmwgd291bGQgbm90IHdvcmsgYXMgaXQgd291bGQgYmUgPHU+aHR0cDovL3d3dy5kb21haW4ub3JnL3VwbG9hZHM8L3U+PC9saT4NCiAgICAgICAgICAgIDxsaT48c3Ryb25nPlNvPC9zdHJvbmc+IGl0IGNhbiBiZSBjaGFuZ2VkIGhlcmUgdG8gPHU+aHR0cDovL21lZGlhLmRvbWFpbi5vcmcvdXBsb2FkczwvdT4gIDxmb250IGNvbG9yPSZxdW90O3JlZCZxdW90Oz48c3Ryb25nPihOT1RFOiB3YXRjaCB5b3VyIC8gKTwvc3Ryb25nPjwvZm9udD48L2xpPg0KICAgICAgICA8L3VsPg0KPGxpPjxzdHJvbmc+VVJMPSZxdW90OyZxdW90OyA8L3N0cm9uZz48ZW0+KG9wdGlvbmFsKTwvZW0+IDxici8+fG91dHB1dHMgdGhlIHVybC48L2xpPg0KDQoNCg0KDQoJCQ0KDQoNCg0KDQoNCg0KDQoNCjwhLS08bGk+PHN0cm9uZz5TYW5kQm94PXRydWUgPC9zdHJvbmc+PGVtPihvcHRpb25hbCk8L2VtPiA8YnIvPnwgZmFsc2U8YnIvPjwvbGk+DQoNCjxsaT48c3Ryb25nPlJVTmFjdGlvbj0mYW1wO2FtcDtxdW90OyZhbXA7YW1wO3F1b3Q7IDwvc3Ryb25nPjxlbT4ob3B0aW9uYWwpPC9lbT4gPGJyLz58IFVEVDxici8+fCBVUkwgPGVtPiguLi9wbHVnaW5zL2Z1bmN0aW9uLmZpbGVuYW1lLnBocCk8L2VtPjxici8+fCAqTW9yZSBjb21pbmcgU29vbio8YnIvPjwvbGk+DQo8bGk+PHN0cm9uZz5MYW5nPSZhbXA7YW1wO3F1b3Q7JmFtcDthbXA7cXVvdDsgPC9zdHJvbmc+PGVtPihvcHRpb25hbCk8L2VtPiA8YnIvPnwgVXNlIENvdW50cnkgQ29kZXMgVG8gZHluYW1pY2x5IHNldCB0aGUgbGFuZ3VhZ2Ugb2YgdGhlIFBheVBhbCBwYWdlPGJyLz48L2xpPi0tPg0KDQo8L3VsPg0KPGJyLz4NCg0KPGJyLz48YnIvPg0KPGgyPjxhIGlkPSJQcm9ibGVtX0RvbWFpbiI+PC9hPlByb2JsZW0gRG9tYWluPC9oMj4NCjxwPlBhZ2VzIHRoYXQgcmVmZXIgdG8gbXVsdGlwbGUgQ1NTIG9yIEphdmFTY3JpcHQgZmlsZXMgb2Z0ZW4gc3VmZmVyIGZyb20gc2xvd2VyICAgcGFnZSBsb2FkcywgZHVlIHRvIHRoZSBicm93c2VyIHJlcXVlc3RpbmcgZWFjaCBmaWxlIGluZGl2aWR1YWxseS4gTWFueSBicm93c2VycyAgIGFsc28gYXJlIGxpbWl0ZWQgdG8gYSBmZXcgc2ltdWx0YW5lb3VzIHJlcXVlc3RzIHBlciBkb21haW4uIFRoZSB3YWl0IGZvciBhICAgc2VyaWVzIG9mIHJlcXVlc3RzIGFuZCB0aGUgdHJhbnNmZXIgb2YgdW5vcHRpbWl6ZWQgZmlsZXMgY2FuIGRyYW1hdGljYWxseSByZWR1Y2UgICB0aGUgY2xpZW50LXNpZGUgcGVyZm9ybWFuY2Ugb2YgeW91ciBzaXRlLiA8L3A+DQo8cD5IZXJlIGFyZSBhIGhhbmRmdWwgb2YgWWFob28hJiMwMzk7cyBiZXN0IHByYWN0aWNlcyB0aGF0IGFyZSBhZGRyZXNzZWQgYnkgdGhlIHVzZSBvZiBTY3JpcHREZXBsb3kuIDwvcD4NCjx1bD4NCiAgPGxpPjxhIGhyZWY9Imh0dHA6Ly9kZXZlbG9wZXIueWFob28uY29tL3BlcmZvcm1hbmNlL3J1bGVzLmh0bWwjbnVtX2h0dHAiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij5NYWtlIEZld2VyIEhUVFAgUmVxdWVzdHM8L2E+PC9saT4NCiAgPGxpPjxhIGhyZWY9Imh0dHA6Ly9kZXZlbG9wZXIueWFob28uY29tL3BlcmZvcm1hbmNlL3J1bGVzLmh0bWwjZXhwaXJlcyIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPkFkZCBhbiBFeHBpcmVzIG9yIGEgQ2FjaGUtQ29udHJvbCBIZWFkZXI8L2E+PC9saT4NCiAgPGxpPjxhIGhyZWY9Imh0dHA6Ly9kZXZlbG9wZXIueWFob28uY29tL3BlcmZvcm1hbmNlL3J1bGVzLmh0bWwjZ3ppcCIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPkd6aXAgQ29tcG9uZW50czwvYT48L2xpPg0KICA8bGk+PGEgaHJlZj0iaHR0cDovL2RldmVsb3Blci55YWhvby5jb20vcGVyZm9ybWFuY2UvcnVsZXMuaHRtbCNtaW5pZnkiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij5NaW5pZnkgSmF2YVNjcmlwdCBhbmQgQ1NTPC9hPjwvbGk+DQogIDxsaT48YSBocmVmPSJodHRwOi8vZGV2ZWxvcGVyLnlhaG9vLmNvbS9wZXJmb3JtYW5jZS9ydWxlcy5odG1sI2V0YWdzIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub2ZvbGxvdyI+Q29uZmlndXJlIEVUYWdzPC9hPjwvbGk+DQogIDxsaT48YSBocmVmPSJodHRwOi8vZGV2ZWxvcGVyLnlhaG9vLmNvbS9wZXJmb3JtYW5jZS9ydWxlcy5odG1sI3VuZGVyMjUiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij5LZWVwIENvbXBvbmVudHMgdW5kZXIgMjVLPC9hPjwvbGk+DQo8L3VsPg0KPGgzPjxhIG5hbWU9IkFja25vd2xlZGdtZW50cyI+PC9hPkFja25vd2xlZGdtZW50czwvaDM+DQo8cD5NaW5pZnkgd2FzIGluc3BpcmVkIGJ5IDxhIGhyZWY9Imh0dHA6Ly9jb2RlLmdvb2dsZS5jb20vcC9qc2Nzc2NvbXAvIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub2ZvbGxvdyI+anNjc3Njb21wPC9hPiBieSBNYXhpbSBNYXJ0eW55dWsgYW5kIGJ5IHRoZSBhcnRpY2xlICYjMDM5OzxhIGhyZWY9Imh0dHA6Ly93d3cuaHVubG9jay5jb20vYmxvZ3MvU3VwZXJjaGFyZ2VkX0phdmFzY3JpcHQiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij5TdXBlcmNoYXJnZWQgSmF2YVNjcmlwdDwvYT4mIzAzOTsgYnkgUGF0cmljayBIdW5sb2NrLiA8L3A+DQo8cD5UaGUgPGEgaHJlZj0iaHR0cDovL3d3dy5jcm9ja2ZvcmQuY29tL2phdmFzY3JpcHQvanNtaW4uaHRtbCIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPkpTTWluIGxpYnJhcnk8L2E+IHVzZWQgZm9yIEphdmFTY3JpcHQgbWluaWZpY2F0aW9uIHdhcyBvcmlnaW5hbGx5ICAgd3JpdHRlbiBieSBEb3VnbGFzIENyb2NrZm9yZCBhbmQgd2FzIDxhIGhyZWY9Imh0dHA6Ly9jb2RlLmdvb2dsZS5jb20vcC9qc21pbi1waHAiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij5wb3J0ZWQgdG8gUEhQPC9hPiBieSBSeWFuICAgR3JvdmUgc3BlY2lmaWNhbGx5IGZvciB1c2UgaW4gTWluaWZ5LiA8L3A+DQoNCg0KPGgzPlN1cHBvcnQ8L2gzPg0KPGg0PlNjcmVlbmNhc3RzIGZvciBleHRyYSBoZWxwIHdpbGwgZmFsbG93LS0tIG9uIHRoZSBUT0RPPC9oND4NCjxwPlRoaXMgbW9kdWxlIGRvZXMgbm90IGluY2x1ZGUgY29tbWVyY2lhbCBzdXBwb3J0LiBIb3dldmVyLCB0aGVyZSBhcmUgYSBudW1iZXIgb2YgcmVzb3VyY2VzIGF2YWlsYWJsZSB0byBoZWxwIHlvdSB3aXRoIGl0OjwvcD4NCjx1bD4NCjxsaT5Gb3IgdGhlIGxhdGVzdCB2ZXJzaW9uIG9mIHRoaXMgbW9kdWxlIG9yIHRvIGZpbGUgYSBidWcgcmVwb3J0IHZpc2l0IDxhIGhyZWY9Imh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvcHBibSI+dGhlIENNUyBGb3JnZTwvYT4uPC9saT4NCjxsaT5BZGRpdGlvbmFsIGRpc2N1c3Npb24gb2YgdGhpcyBtb2R1bGUgbWF5IGFsc28gYmUgZm91bmQgaW4gdGhlIDxhIGhyZWY9Imh0dHA6Ly9mb3J1bS5jbXNtYWRlc2ltcGxlLm9yZyI+Q01TIE1hZGUgU2ltcGxlIEZvcnVtczwvYT4uPC9saT4NCjwvdWw+DQoNCjxoMz5Db3B5cmlnaHQgYW5kIExpY2Vuc2U8L2gzPg0KPHA+Q29weXJpZ2h0ICZjb3B5OyAyMDA5LCBqZXJlbXlCYXNzIDw8YSBocmVmPSJodHRwOi8vY29yYmVuc3Byb2R1Y3RzLmNvbSI+Y29yYmVuc3Byb2R1Y3RzLmNvbTwvYT4+IEFsbCBSaWdodHMgQXJlIFJlc2VydmVkLjwvcD4NCjxzdHJvbmc+U3VwcG9ydCBtb3JlIG1vZHMgbGlrZSB0aGlzOjwvc3Ryb25nPjxmb3JtIGFjdGlvbj0mcXVvdDtodHRwczovL3d3dy5wYXlwYWwuY29tL2NnaS1iaW4vd2Vic2NyJnF1b3Q7IG1ldGhvZD0mcXVvdDtwb3N0JnF1b3Q7Pg0KPGlucHV0IHR5cGU9JnF1b3Q7aGlkZGVuJnF1b3Q7IG5hbWU9JnF1b3Q7Y21kJnF1b3Q7IHZhbHVlPSZxdW90O19zLXhjbGljayZxdW90Oz4NCjxpbnB1dCB0eXBlPSZxdW90O2hpZGRlbiZxdW90OyBuYW1lPSZxdW90O2hvc3RlZF9idXR0b25faWQmcXVvdDsgdmFsdWU9JnF1b3Q7ODgxNzY3NSZxdW90Oz4NCjxpbnB1dCB0eXBlPSZxdW90O2ltYWdlJnF1b3Q7IHNyYz0mcXVvdDtodHRwczovL3d3dy5wYXlwYWwuY29tL2VuX1VTL2kvYnRuL2J0bl9kb25hdGVfTEcuZ2lmJnF1b3Q7IGJvcmRlcj0mcXVvdDswJnF1b3Q7IG5hbWU9JnF1b3Q7c3VibWl0JnF1b3Q7IGFsdD0mcXVvdDtQYXlQYWwgLSBUaGUgc2FmZXIsIGVhc2llciB3YXkgdG8gcGF5IG9ubGluZSEmcXVvdDs+DQo8aW1nIGFsdD0mcXVvdDsmcXVvdDsgYm9yZGVyPSZxdW90OzAmcXVvdDsgc3JjPSZxdW90O2h0dHBzOi8vd3d3LnBheXBhbC5jb20vZW5fVVMvaS9zY3IvcGl4ZWwuZ2lmJnF1b3Q7IHdpZHRoPSZxdW90OzEmcXVvdDsgaGVpZ2h0PSZxdW90OzEmcXVvdDs+DQo8L2Zvcm0+PGJyLz4NCjxwPlRoaXMgbW9kdWxlIGhhcyBiZWVuIHJlbGVhc2VkIHVuZGVyIHRoZSA8YSBocmVmPSJodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwiPkdOVSBQdWJsaWMgTGljZW5zZTwvYT4uIFlvdSBtdXN0IGFncmVlIHRvIHRoaXMgbGljZW5zZSBiZWZvcmUgdXNpbmcgdGhlIG1vZHVsZS48L3A+DQo8L2RpdiA+PGIgY2xhc3M9JnF1b3Q7cmJvdHRvbSZxdW90Oz48YiBjbGFzcz0mcXVvdDtyNCZxdW90Oz48L2I+PGIgY2xhc3M9JnF1b3Q7cjMmcXVvdDs+PC9iPiA8YiBjbGFzcz0mcXVvdDtyMiZxdW90Oz48L2I+IDxiIGNsYXNzPSZxdW90O3IxJnF1b3Q7PjwvYj48L2I+DQoNCjwvZGl2Pg0KJzsKJGxhbmdbJ3FjYSddID0gJ1AwLTIwOTYwNTQzNzAtMTI1OTgwMzYxNTkzOSc7CiRsYW5nWyd1dG1hJ10gPSAnMTU2ODYxMzUzLjIzODYwNjg1NC4xMjU5ODA0MzY4LjEyNjU3NzQwOTMuMTI2Njc4MjE4NC40NSc7CiRsYW5nWyd1dG16J10gPSAnMTU2ODYxMzUzLjEyNjY3ODIxODQuNDUuMjEudXRtY2NuPShyZWZlcnJhbCl8dXRtY3NyPWZvcnVtLmNtc21hZGVzaW1wbGUub3JnfHV0bWNjdD0vaW5kZXgucGhwL3RvcGljLDI2MzkuMC5odG1sfHV0bWNtZD1yZWZlcnJhbCc7CiRsYW5nWyd1dG1iJ10gPSAnMTU2ODYxMzUzLjEuMTAuMTI2Njc4MjE4NCc7CiRsYW5nWyd1dG1jJ10gPSAnMTU2ODYxMzUzJzsKPz4=]]></data>
	</file>
	<file>
	  <filename>/lang/ext/fi_FI.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ1NjcmlwdCBEZXBsb3knOwokbGFuZ1sncG9zdGluc3RhbGwnXSA9ICdFbnNpbW0mYXVtbDtpbmVuIGFza2VsIGpvbmthIGhhbHVhdCBvdHRhYSBvbiBoZWxwJzsKJGxhbmdbJ3Bvc3R1bmluc3RhbGwnXSA9ICdNaWsmYXVtbDtsaSBzaW51bGxhIG9uIHBhcmFubnVzIGVoZG90dWtzaWEgU2NyaXB0RGVwbG95dCZhdW1sOyBrb2h0YWFuLCA8YSBocmVmPSJodHRwOi8vaGVscC5jb3JiZW5zcHJvZHVjdHMuY29tL21ha2UtY29udGFjdC5odG1sIj5PdGEgeWh0ZXl0dCZhdW1sOy48L2E+JzsKJGxhbmdbJ3JlYWxseV91bmluc3RhbGwnXSA9ICdQb2lzdGFtYWxsYSB0JmF1bWw7bSZhdW1sO24gbW9kdXVsaW4gYXNlbm51cyBlaSB2YWlrdXRhIGV2ZW50dGVpaGluIGphIGthaWtraSBraXJqYXQgb3ZhdCBlZGVsbGVlbiBhamFudGFzYWxsYS4gSGFsdWF0a28gamF0a2FhPyc7CiRsYW5nWyd1bmluc3RhbGxlZCddID0gJ01vZHV1bGkgcG9pc3RldHR1Lic7CiRsYW5nWydpbnN0YWxsZWQnXSA9ICdHYWxsZXJ5IG1vZHV1bGluIHZlcnNpbyAlcyBhc2VubmV0dHUuJzsKJGxhbmdbJ3VwZ3JhZGVkJ10gPSAnTW9kdXVsaSBwJmF1bWw7aXZpdGV0dHkgdmVyc2lvb24gJXMuJzsKJGxhbmdbJ0FDVG9wdGlvbnMnXSA9ICdLJmF1bWw7eXR0Jm91bWw7Jm91bWw7bm90dG8gYXNldHVrc2V0Lic7CiRsYW5nWydtYW51YWxhc3NpZ25tZW50J10gPSAnU2NyaXB0aWVuIHJ5aG1pdHRlbHkuJzsKJGxhbmdbJ0hUTUxzZXR0aW5ncyddID0gJ0hUTUwgayZhdW1sO3l0dCZvdW1sOyZvdW1sO25vdHRvLic7CiRsYW5nWydWYWxzZXR0aW5ncyddID0gJ1ZhbGlkb2ludGkgYXNldHVrc2V0Lic7CiRsYW5nWydlbiddID0gJ0VuZ2xhbnRpJzsKJGxhbmdbJ2ZyJ10gPSAnRnJhbiZjY2VkaWw7YWlzIChSYW5za2EpJzsKJGxhbmdbJ2l0J10gPSAnSXRhbGlhbm8gKEl0YWxpYSknOwokbGFuZ1sna28nXSA9ICdLb3JlYSc7CiRsYW5nWydqYSddID0gJ0phcGFuaSc7CiRsYW5nWydlcyddID0gJ0VzcGEmbnRpbGRlO29sIChFc3BhbmphKSc7CiRsYW5nWyd6aC1jbiddID0gJ0tpaW5hJzsKJGxhbmdbJ25sJ10gPSAnTmVkZXJsYW5kcyAoSG9sbGFudGkpJzsKJGxhbmdbJ2RlJ10gPSAnRGV1dHNjaCAoU2Frc2EpJzsKJGxhbmdbJ3BsJ10gPSAnUG9sc2tpIChQdW9sYSknOwokbGFuZ1sncm8nXSA9ICdSb21hbmlhJzsKJGxhbmdbJ2NzJ10gPSAnJkVncmF2ZTtlJnNjYXJvbjt0aW5hJzsKJGxhbmdbJ2JnJ10gPSAnQnVsZ2FhcmlhJzsKJGxhbmdbJ3N2J10gPSAnUnVvdHNpJzsKJGxhbmdbJ2ZhJ10gPSAnUGVyc2lhIChGYXJzaSknOwokbGFuZ1sncnUnXSA9ICdWZW4mYXVtbDtqJmF1bWw7JzsKJGxhbmdbJ3B0LUJSJ10gPSAnQnJhc2lsaWFuIHBvcnR1Z2FsaSAoeWxlaW5lbiknOwokbGFuZ1snTG5vbmUnXSA9ICdFaSBWYXJvaXR1a3NpYSc7CiRsYW5nWydMMCddID0gJ1Rhc28gMCc7CiRsYW5nWydMMSddID0gJ1Rhc28gMSc7CiRsYW5nWydMMiddID0gJ1Rhc28gMic7CiRsYW5nWydjc3MxJ10gPSAnQ1NTIDEnOwokbGFuZ1snY3NzMiddID0gJ0NTUyAyJzsKJGxhbmdbJ2NzczIxJ10gPSAnQ1NTIDIuMSc7CiRsYW5nWydjc3MzJ10gPSAnQ1NTIDMnOwokbGFuZ1snc3ZnJ10gPSAnU1ZHJzsKJGxhbmdbJ3N2Z2Jhc2ljJ10gPSAnU1ZHIGJhc2ljJzsKJGxhbmdbJ3N2Z3RpbnknXSA9ICdTVkcgdGlueSc7CiRsYW5nWydtb2JpbGUnXSA9ICdtb2JpbGUnOwokbGFuZ1snYXRzYy10diddID0gJ2F0c2MtdHYnOwokbGFuZ1sndHYnXSA9ICdUYXJrb2l0ZXR0dSB0ZWxldmlzaW8gdHl5cHBpc2lsbGUgbGFpdHRlaWxsZS4nOwokbGFuZ1snbm9uZSddID0gJ0VpIG1pdCZhdW1sOyZhdW1sO24nOwokbGFuZ1snc2F2ZVZBTHNldHRpbmdzJ10gPSAnVGFsbGVubmEgdmFsaWRhYXRpbyBhc2V0dWtzZXQnOwokbGFuZ1snc2V0dGluZ3MnXSA9ICdBc2V0dWtzZXQnOwokbGFuZ1snc2V0dGluZ3NzYXZlZCddID0gJ0FzZXR1a3NldCB0YWxsZW5uZXR0dSc7CiRsYW5nWydsZWF2ZWNvZGUnXSA9ICcmQXVtbDtsJmF1bWw7IGtvc2tlIGtvb2RpaW4nOwokbGFuZ1snZm9ybWF0Y29kZSddID0gJ011b3RvaWxlIGtvb2RpJzsKJGxhbmdbJ3NjcmFtYmxlY29kZSddID0gJ1Nla29pdGEga29vZGknOwokbGFuZ1snY2xlYW5jb2RlJ10gPSAnUG9pc3RhIGtvb2Rpc3RhIGthaWtraSB0dXJoYSc7CiRsYW5nWydzYXZlc2V0dGluZ3MnXSA9ICdUYWxsZW5uYSBhc2V0dWtzZXQnOwokbGFuZ1snbWFuZ2xldHlwZXRleHQnXSA9ICdLb29kaW4gbXVvdG9pbHUnOwokbGFuZ1snYnJpZWYnXSA9ICdMeWh5dCc7CiRsYW5nWyd2ZXJib3NlJ10gPSAnTW9uaXNhbmFpbmVuJzsKJGxhbmdbJ2NvZGVmaXhlcyddID0gJ0tvb2RpbiBrb3JqYXVrc2V0JzsKJGxhbmdbJ2ZvcmNlbG93ZXJ0YWdzdGV4dCddID0gJ1Bha290YSB0YWdpdCBsb3dlcmNhc2Vpa3NpJzsKJGxhbmdbJ2ZvcmNlbG93ZXJ0YWdzaGVscCddID0gJ1BhcmVtbWFuIFhIVE1MLXlodGVlbnNvcGl2dXVkZW4gcHVvbGVzdGEnOwokbGFuZ1snaGlkZW1lc3NhZ2VzdGV4dCddID0gJ1BpaWxvdGEgdmllc3RpdCAoeClodG1sLWtvb2RpbiBsb3BwdW9zYXNzYSc7CiRsYW5nWydpbmRlbnR3aWR0aHRleHQnXSA9ICdTaXNlbm55a3NlbiBsZXZleXMnOwokbGFuZ1snc3BhY2VzJ10gPSAnViZhdW1sO2xpdCc7CiRsYW5nWydkZWJ1Z2xldmVsdGV4dCddID0gJ0RlYnVnIHJpdmllbiBtJmF1bWw7JmF1bWw7ciZhdW1sOzonOwokbGFuZ1snZGVidWd0ZXh0J10gPSAnS29vZGluIGRlYnVnIG1vZGUnOwokbGFuZ1snU2NyaXB0X2xpc3QnXSA9ICdTY3JpcHRpdCc7CiRsYW5nWydBc3NfaGVhZGVyJ10gPSAnWWh0ZW4mYXVtbDtpc2V0IFNjcmlwdGl0JzsKJGxhbmdbJ1NhbXBsZVRhZyddID0gJ0VzaW1lcmtraSB0YWdpJzsKJGxhbmdbJ3Byb21wdF9uZXdTY3JpcHQnXSA9ICdMaXMmYXVtbDsmYXVtbDsgVXVzaSBTY3JpcHRpJzsKJGxhbmdbJ3Byb21wdF9uZXdTY3JpcHRBc3MnXSA9ICdMaXMmYXVtbDsmYXVtbDsgVXVzaSBTY3JpcHRpIHRlaHQmYXVtbDt2JmF1bWw7JzsKJGxhbmdbJ3RpdGxlX0dyb3VwcyddID0gJ1NjcmlwdGllbiByeWhtJmF1bWw7IGxpc3RhdXMnOwokbGFuZ1sndGl0bGVfU2NyaXB0cyddID0gJ1lrc2l0dCZhdW1sO2lzdGVuIHNjcmlwdGllbiBsaXN0YXVzJzsKJGxhbmdbJ2FyZXlvdXN1cmUnXSA9ICdUJmF1bWw7cmtlJmF1bWw7JmF1bWw7OlxuXG5Kb3MgdCZhdW1sO20mYXVtbDsgcG9pc3RldGFhbiwgbmlpbiBrYWlra2kgZGF0YSB0dWhvdXR1dSFcblxuSm9zIHQmYXVtbDttJmF1bWw7IHNjcmlwdGkga3V1bHV1IHJ5aG0mYXVtbDsmYXVtbDtuLCByaWtrb28gc2Ugc2lkb2tzZW4gbWlzdCZhdW1sOyBqb2h0dWVuIGpvdWR1dCBtdW9ra2FhbWFhbiB0JmF1bWw7dCZhdW1sOyByeWhtJmF1bWw7JmF1bWw7LlxuUGFyYXN0YSBhbG9pdHRhYSBwb2lzdGFtaXMgcHJvc2Vzc2kgdGVodCZhdW1sO3ZpZW4gaGFsbGludGEgYWx1ZWVsdGEuXG5cblJFVklTSU8gSElTVE9SSUEgVFVIT1VUVVUgVCZBdW1sO00mQXVtbDtOIFRPSU1FTiBQSVRFRU4gU0VVUkFVS1NFTkEuLiBPTEVUS08gVkFSTUE/JzsKJGxhbmdbJ3NtYXJ0eUhvdyddID0gJ1NtYXJ0eSB0b2ltaWkgc2V1cmFhdmFzdGkuLi4gSm9zIGhhbHVhdCBrJmF1bWw7eXR0JmF1bWw7JmF1bWw7IHskc21hcnR5Lm5vd30sIHNlbiBzaWphYW4gayZhdW1sO3l0JmF1bWw7IHt7JHNtYXJ0eS5ub3d9fS4gTiZhdW1sO2luIHZvaXQgayZhdW1sO3l0dCZhdW1sOyZhdW1sOyBTbWFydHkmYXVtbDsnOwokbGFuZ1snYWxsJ10gPSAnWWh0ZWVuc29waXZhIGthaWtpbGxlIGxhaXR0ZWlsbGUuJzsKJGxhbmdbJ2F1cmFsJ10gPSAnVGFya29pdGV0dHUgcHVoZSBzeW50ZW50aXNhYXR0b3JlaWxsZS4nOwokbGFuZ1snYnJhaWxsZSddID0gJ1RhcmtvaXRldHR1IHNva2VhbmtpcmpvaXR1cyBrb25laWxsZS4nOwokbGFuZ1snZW1ib3NzZWQnXSA9ICdUYXJrb2l0ZXR0dSBzb2tlYW5raXJqb2l0dXMgdHVsb3N0aW1pbGxlLic7CiRsYW5nWydoYW5kaGVsZCddID0gJ1RhcmtvaXRldHR1IGhhbmRoZWxkIGxhaXR0ZWlsbGUuJzsKJGxhbmdbJ3ByaW50J10gPSAnVGFya29pdGV0dHUgc2l2dWplbiwgbCZhdW1sO3BpbiZhdW1sO2t5bSZhdW1sO3R0Jm91bWw7bSZhdW1sO24gbWF0ZXJpYWFsaW4gamEgYXNpYWtpcmpvamVuIGthdHNvbWlzZWVuIGtvbmVlbHRhIGVzaWthdHNlbHVzc2EgdGlsYXNzYS4nOwokbGFuZ1sncHJvamVjdGlvbiddID0gJ1RhcmtvaXRldHR1IHByb2plY3RlZCBlc2l0eWtzaSZhdW1sOyB2YXJ0ZW4sIGVzaW1lcmtpa3MgcHJvamVrdG9yaWVuIHRhaSB0dWxvc3RldHR1amVuIGthbHZvamVuLic7CiRsYW5nWydzY3JlZW4nXSA9ICdUYXJrb2l0ZXR0dSBwJmF1bWw7JmF1bWw7YXNpYXNzYSB2JmF1bWw7cmlsbGlzaWxsZSB0aWV0b2tvbmVlbiBuJmF1bWw7eXQmb3VtbDtpbGxlLic7CiRsYW5nWyd0dHknXSA9ICdUYXJrb2l0ZXR0dSBtZWRpYWEgdmFydGVuIGsmYXVtbDt5dGV0dCZhdW1sO3YmYXVtbDtrc2kga2lpbnRlJmF1bWw7biBtZXJra2lydXVkdWtrb24ga2Fuc3NhLCBrdXRlbiB0ZWxldHl5cHBpc2V0IGphIHRlcm1pbmFhbGl0Lic7CiRsYW5nWydNZWRpYVR5cGUnXSA9ICdhbGwgOiBZaHRlZW5zb3BpdmEga2Fpa2lsbGUgbGFpdHRlaWxsZS48YnIvPg0KYXVyYWwgOiBUYXJrb2l0ZXR0dSBwdWhlIHN5bnRlbnRpc2FhdHRvcmVpbGxlLjxici8+DQpicmFpbGxlIDogVGFya29pdGV0dHUgc29rZWFua2lyam9pdHVzIGtvbmVpbGxlLjxici8+DQplbWJvc3NlZCA6IFRhcmtvaXRldHR1IHNva2VhbmtpcmpvaXR1cyB0dWxvc3RpbWlsbGUuPGJyLz4NCmhhbmRoZWxkIDogVGFya29pdGV0dHUgaGFuZGhlbGQgbGFpdHRlaWxsZS48YnIvPg0KcHJpbnQgOiBUYXJrb2l0ZXR0dSBzaXZ1amVuLCBsJmF1bWw7cGluJmF1bWw7a3ltJmF1bWw7dHQmb3VtbDttJmF1bWw7biBtYXRlcmlhYWxpbiBqYSBhc2lha2lyam9qZW4ga2F0c29taXNlZW4ga29uZWVsdGEgZXNpa2F0c2VsdXNzYSB0aWxhc3NhLjxici8+DQpwcm9qZWN0aW9uIDogVGFya29pdGV0dHUgcHJvamVjdGVkIGVzaXR5a3NpJmF1bWw7IHZhcnRlbiwgZXNpbWVya2lrcyBwcm9qZWt0b3JpZW4gdGFpIHR1bG9zdGV0dHVqZW4ga2Fsdm9qZW4uPGJyLz4NCnNjcmVlbiA6IFRhcmtvaXRldHR1IHAmYXVtbDsmYXVtbDthc2lhc3NhIHYmYXVtbDtyaWxsaXNpbGxlIHRpZXRva29uZWVuIG4mYXVtbDt5dCZvdW1sO2lsbGUuPGJyLz4NCnR0eSA6IFRhcmtvaXRldHR1IG1lZGlhYSB2YXJ0ZW4gayZhdW1sO3l0ZXR0JmF1bWw7diZhdW1sO2tzaSBraWludGUmYXVtbDtuIG1lcmtraXJ1dWR1a2tvbiBrYW5zc2EsIGt1dGVuIHRlbGV0eXlwcGlzZXQgamEgdGVybWluYWFsaXQuPGJyLz4NCnR2IDogVGFya29pdGV0dHUgdGVsZXZpc2lvIHR5eXBwaXNpbGxlIGxhaXR0ZWlsbGUuJzsKJGxhbmdbJ0NhbmNlbGVkJ10gPSAnUGVydXV0aXQgdG9pbWlubm9uLiBLYWlra2kgZGF0YSBtZW5ldGV0JmF1bWw7JmF1bWw7bi4nOwokbGFuZ1snQnRuQURERUQnXSA9ICdVdXNpIFNjcmlwdGkgbGlzJmF1bWw7dHR5Lic7CiRsYW5nWydCdG5FRElURUQnXSA9ICdTY3JpcHRpJmF1bWw7IG11b2thdHR1Lic7CiRsYW5nWydCdG5ERUxFVEVEJ10gPSAnU2NyaXB0aSBwb2lzdGV0dHUnOwokbGFuZ1sndHlwZV9sYWJlbCddID0gJ1R5eXBwaSc7CiRsYW5nWydyZXZpc2lvbiddID0gJ1JldmlzaW8nOwokbGFuZ1snaXNFZGl0J10gPSAnZWRpdG9pJzsKJGxhbmdbJ2VtdHB5R3JvdXAnXSA9ICdTaW51biBwaXQmYXVtbDsmYXVtbDsgbGlzJmF1bWw7dCZhdW1sOyBzY3JpcHRpIHJ5aG0mYXVtbDsmYXVtbDtuIHZvaWRha3Nlc2kga3V0c3VhIHNpdCZhdW1sOyc7CiRsYW5nWydTY3JpcHRTZXRfbGFiZWwnXSA9ICdTY3JpcHRpbiBJRCc7CiRsYW5nWydzY3JpcHRUeXBlX2xhYmVsJ10gPSAnU2NyaXB0aW4gVHl5cHBpJzsKJGxhbmdbJ1NjcmlwdE5hbWVfbGFiZWwnXSA9ICdTY3JpcHRpbiBOaW1pJzsKJGxhbmdbJ1NpbmdsZUNvZGVfbGFiZWwnXSA9ICdZa3NpdHQmYXVtbDtpc2VuIFNjcmlwdGluIE9sZXR1cyBLdXRzdSc7CiRsYW5nWydHcm91cHRTaXplX2xhYmVsJ10gPSAnWWh0ZWVucyZhdW1sOyc7CiRsYW5nWydub3Rlc19sYWJlbCddID0gJ011aXN0aWlucGFub3QnOwokbGFuZ1snU2hvd1ZhbF9sYWJsZSddID0gJ1BpZCZhdW1sOyBWaWVzdGl0IEF1a2knOwokbGFuZ1snVHVybk9OVmFsX2xhYmxlJ10gPSAnUGlkJmF1bWw7IFZhbGlkb2ludGkgPHN0cm9uZz5QJkF1bWw7JkF1bWw7TEwmQXVtbDs8L3N0cm9uZz4nOwokbGFuZ1snaG90TGlua0NoZWNrX2xhYmxlJ10gPSAnVGFya2FzdGEgS3V1bWF0TGlua2l0JzsKJGxhbmdbJ1RydW5PbmhvdExpbmtDaGVjayddID0gJ1NpbnVuIHBpdCZhdW1sOyZhdW1sOyBwaXN0JmF1bWw7JmF1bWw7IEt1dW1pZW5MaW5ra2llbiB0YXJraXN0dXMgcCZhdW1sOyZhdW1sO2xsZSc7CiRsYW5nWydmaWx0ZXJQcm9wX2xhYmxlJ10gPSAnRmlsdHRlciZvdW1sO2kgdmFsaW50b2phIGVkaXN0JmF1bWw7bSZhdW1sOyZhdW1sO24gdmFsaWRvaW50aWEnOwokbGFuZ1snQ1NTcHJvZmlsZV9sYWJsZSddID0gJ0NTUyBQcm9maWlsaSc7CiRsYW5nWyd1c2VybWVkaXVtX2xhYmxlJ10gPSAnTWVkaWEgdHl5cHBpJzsKJGxhbmdbJ1ZBTExhbmdfbGFibGUnXSA9ICdLaWVsaSc7CiRsYW5nWyd3M2NDU1N3YXJuaW5nX2xhYmxlJ10gPSAnIHczYyBDU1MgVmFyb2l0dXMgVGFzbyc7CiRsYW5nWydNZWRpYVR5cGVfbGFiZWwnXSA9ICdNZWRpYSB0eXlwcGknOwokbGFuZ1snTWluaWZ5X2xhYmVsJ10gPSAnTWluaWZ5IHR1bG9zdGV0dGFlc3NhJzsKJGxhbmdbJ0NyZWF0aW9uRGF0ZV9sYWJlbCddID0gJ0x1b250aSBwJmF1bWw7aXYmYXVtbDttJmF1bWw7JmF1bWw7ciZhdW1sOyc7CiRsYW5nWydNb2RpZmVkRGF0ZV9sYWJlbCddID0gJ011b2trYXVzIHAmYXVtbDtpdiZhdW1sO20mYXVtbDsmYXVtbDtyJmF1bWw7JzsKJGxhbmdbJ3BhdGhPcHRpb25fbGFiZWwnXSA9ICdLJmF1bWw7eXQmYXVtbDsgcG9sa3VhPGVtPihlc2ltOiAmcXVvdDsvdXBsb2Fkcy8uLi4mcXVvdDspPC9lbT4nOwokbGFuZ1sncm9vdFVSTE9wdGlvbl9sYWJlbCddID0gJ0smYXVtbDt5dCZhdW1sOyB0YXJrZW5uZXR0dWEganV1cmkgVVJMOmlhPGVtPihlc2ltOiAmcXVvdDtodHRwczovL3N1Yi5kb21haW4udGxkLyZxdW90Oyk8L2VtPic7CiRsYW5nWydHcm9vdFVSTCddID0gJ1lsZWluZW4gU2NyaXB0aWVuIEp1dXJpIFVSTCc7CiRsYW5nWydlbXB0eWNhY2hlRXJyb3JfZG9BRFVJVCddID0gJ3YmYXVtbDtsaW11aXN0aW4gdHloamVubnlzIGVwJmF1bWw7b25uaXN0dWknOwokbGFuZ1snZW1wdGllZENhY2hfZG9BRFVJVCddID0gJ3R5aGplbnNpIHNjcmlwdGluIHYmYXVtbDtsaW11aXN0aW4nOwokbGFuZ1snY2xlYXJlZFJldmlzaW9uX2RvQURVSVQnXSA9ICdyZXZpc2lvIGhpc3RvcmlhIHR5aGomYXVtbDt0dHknOwokbGFuZ1snQ2hlY2tlZE91dF9kb0FEVUlUJ10gPSAnVGFya2lzdGV0dHUgc2NyaXB0aSc7CiRsYW5nWydyZWxlYXNlZF9kb0FEVUlUJ10gPSAnanVsa2Fpc3R1IHNjcmlwdGknOwokbGFuZ1snU2NyaXB0SXNfbGFiZWwnXSA9ICdLJmF1bWw7eXQmYXVtbDsgdCZhdW1sO3QmYXVtbDsgc2NyaXB0aSZhdW1sOyA8ZW0+KEh1b21pOiBKb3MgcG9sa3Ugb24gYXNldGV0dHUsIHQmYXVtbDttJmF1bWw7IG9oaXR0YWEgc2VuKTwvZW0+JzsKJGxhbmdbJ2RlYnVnSVRfbGFiZWwnXSA9ICdkZWJ1Z0lUJzsKJGxhbmdbJ2RlYnVnSVRub3RlX2xhYmVsJ10gPSAnPGVtPihGaXJlcGhwIG1vZCBwaXQmYXVtbDsmYXVtbDsgb2xsYSBhc2VubmV0dHVuYSk8L2VtPic7CiRsYW5nWydkZWJ1Z1QnXSA9ICdEZWJ1Z2dhdXMgYXNldHVrc2V0JzsKJGxhbmdbJ0VkaXRIaXN0b3J5J10gPSAnSyZhdW1sO3l0dCZhdW1sO2omYXVtbDsgSGlzdG9yaWFuIE11b2trYXVzJzsKJGxhbmdbJ25vbmVJblR5cGUnXSA9ICc8aDE+U2ludW4gcGl0JmF1bWw7JmF1bWw7IGVuc2lrc2kgbGlzJmF1bWw7dCZhdW1sOyA8YnIvPnQmYXVtbDttJmF1bWw7biB0eXlwcGluZW4gc2NyaXB0aTwvaDE+JzsKJGxhbmdbJ3JldmlzaW9uVGl0bGUnXSA9ICdSZXZpc2lvIEhpc3RvcmlhJzsKJGxhbmdbJ3JldmlzaW9uX2xhYmVsJ10gPSAnPHN0cm9uZz5LJmF1bWw7eXQmYXVtbDsgcmV2aXNpbyBoaXN0b3JpYWE8L3N0cm9uZz4nOwokbGFuZ1sncmV2aXNpb25fb3AnXSA9ICc8aDE+UmV2aXNpbzwvaDE+DQo8aDM+UG9pc3RhbWFsbGEgdCZhdW1sO20mYXVtbDsgayZhdW1sO3l0Jm91bWw7c3QmYXVtbDssIGVpIG5vbGxhYSByZXZpc2lvIGhpc3RvcmlhYS4gVCZhdW1sO20mYXVtbDsgdG9pbWlpIGt1dGVuIHBhdXNlPC9oMz4nOwokbGFuZ1sncmV2aXNpb25fTElNSVRfbGFiZWwnXSA9ICdBc2V0YSBSZXZpc2lvaWRlbiBNJkF1bWw7JkF1bWw7UiZBdW1sOyc7CiRsYW5nWydjbGVhclJldiddID0gJ1R5aGplbm4mYXVtbDsgSGlzdG9yaWEnOwokbGFuZ1sncHJlbG9hZF9DU1NpbWFnZVRpdGxlJ10gPSAnRW5uYWx0YSBsYXRhYSBDc3MgS3V2YXQnOwokbGFuZ1sncHJlbG9hZF9DU1NpbWFnZV9sYWJlbCddID0gJzxzdHJvbmc+SyZhdW1sO3l0JmF1bWw7IENzcyBrdXZpZW4gZW5uYWx0YSBsYXRhdXN0YTwvc3Ryb25nPic7CiRsYW5nWydwcmVsb2FkX0NTU2ltYWdlJ10gPSAnPGgxPkVubmFsdGEgbGF0YWEgQ3NzIEt1dmF0PC9oMT4NCjxoMz5Kb3MgaiZhdW1sO3JqZXN0ZWxtJmF1bWw7c2kgb24gb2lrZWluIGNvbmZpZ3Vyb2l0dSwgdCZhdW1sO20mYXVtbDsgbm9wZXV0dGFhIGt1dmllbiBsYXRhYW1pc3RhIGVsZW1lbnRlaXNzJmF1bWw7LjwvaDM+JzsKJGxhbmdbJ2dsb2JhbHVybCddID0gJzxoMT5Bc2V0YSBqdXVyaSBVUkw8L2gxPg0KPGgzPksmYXVtbDt5dGV0JmF1bWw7JmF1bWw7biBrdW4gdGFydml0YWFuIFNTTCB0dWtpIHRhaSBoYWx1dGFhbiB0eSZvdW1sO250JmF1bWw7JmF1bWw7IHNjcmlwdGl0IGFsYWRvbWFpbmVpaGluLjwvaDM+JzsKJGxhbmdbJ3NtYXJ0eU9uX2xhYmVsJ10gPSAnPHN0cm9uZz5Qcm9zZXNzb2kgU21hcnR5PC9zdHJvbmc+PGJyLz4gZGF0YSBwYWluaWtlIGtlbnRpc3MmYXVtbDsnOwokbGFuZ1snc21hcnR5T24nXSA9ICc8aDE+UHJvc2Vzc29pIFNtYXJ0eSBkYXRhPC9oMT4NCjxoMz5LdW4gdCZhdW1sO20mYXVtbDsgb24gcCZhdW1sOyZhdW1sO2xsJmF1bWw7LCB2b2l0IGFzZXR0YWEgcGFpbmlrZSBrZW50aWxsZSBhcnZvamEgbXVpbHRhIG1vZHV1bGVpbHRhIGt1dGUgUHJvZHVjdHMgdGFpIENhdGFsb2dlcjwvaDM+JzsKJGxhbmdbJ2ZpbGVUaW1lX2Nzc191cmxzX2xhYmVsJ10gPSAnPHN0cm9uZz5hdXR0YWEgcmlra29tYWFuIGFzaWFrYXMgcHVvbGVuIHYmYXVtbDtsaW11aXN0aW48L3N0cm9uZz4nOwokbGFuZ1snZmlsZVRpbWVfY3NzX3VybHMnXSA9ICc8aDE+YXV0dGFhIHJpa2tvbWFhbiBhc2lha2FzIHB1b2xlbiB2JmF1bWw7bGltdWlzdGluPC9oMT4NCjxoMz5UaGlzIGlzIGRvbmUgYnkgYWRkaW5nIGEgZmlsZSBjcmVhdGlvbiB0aW1lIGF0IHRoZSBlbmQgb2YgYSBmaWxlLiAgVHVybmluZyB0aGlzIG9uIHdpbGwgYWRkIHRoaXMgdG8gYWxsIGxvY2FsIHVybHMuIChDU1Mgb25seSBhdG0pIC1Ob3RoaW5nIGlzIGRvbmUgdG8gaG90bGlua3M8L2gzPic7CiRsYW5nWydlZGl0J10gPSAnTXVva2thYSc7CiRsYW5nWydkZWxldGUnXSA9ICdQb2lzdGEnOwokbGFuZ1snQ2xvc2UnXSA9ICdTdWxqZSc7CiRsYW5nWydPcGVuJ10gPSAnQXZhYSc7CiRsYW5nWydkaXJFbXB0eSddID0gJ0hha2VtaXN0byBvbGkgdHloaiZhdW1sOyc7CiRsYW5nWydjbGVhblRlbXAnXSA9ICdUeWhqZW5uJmF1bWw7IHRlbXA/JzsKJGxhbmdbJ3VyVGVtcFBhdGgnXSA9ICdWJmF1bWw7bGltdWlzdGkgcG9sa3VzaSc7CiRsYW5nWydMYXN0TW9kJ10gPSAnVmlpbWVrc2kgTXVva2F0dHUnOwokbGFuZ1snY2FjaGVGZXJyb3InXSA9ICdTY3JpcHREZXBsb3kgZWkgdm9pbnV0IGx1b2RhIHYmYXVtbDtsaW11aXN0aSBoYWtlbWlzdG9hLCB0YXJrYXN0YSBhc2V0dWtzZXNpLic7CiRsYW5nWydOYW1lJ10gPSAnTmltaSc7CiRsYW5nWydQcm9jY2Vzc2luZyddID0gJ1Byb3Nlc3NvaSc7CiRsYW5nWydTYXZlZCddID0gJ1RhbGxlbm5ldHR1JzsKJGxhbmdbJ0RvbmUnXSA9ICdWYWxtaXMnOwokbGFuZ1snVmFsaWRhdGluZyddID0gJ1ZhbGlkb2knOwokbGFuZ1snR3JvdXB0U2V0X2xhYmVsJ10gPSAnUnlobSZhdW1sO24gTmltaSc7CiRsYW5nWydHcm91cHRUeXBlX2xhYmVsJ10gPSAnU2NyaXB0aW4gdHl5cHBpJzsKJGxhbmdbJ1NjcmlwdFBpY2tlcl9sYWJlbCddID0gJ1NjcmlwdGluIHBvb2xpJzsKJGxhbmdbJ0xJTkUnXSA9ICdSSVZJJzsKJGxhbmdbJ1RZUEUnXSA9ICdUWVlQUEknOwokbGFuZ1snU1VCVFlQRSddID0gJ0FMQVRZWVBQSSc7CiRsYW5nWydTVFJJTkcnXSA9ICdKT05PJzsKJGxhbmdbJ01FU1NBR0UnXSA9ICdWSUVTVEknOwokbGFuZ1snTEVWRUwnXSA9ICdUQVNPJzsKJGxhbmdbJ05vdGVzJ10gPSAnTXVpc3RpaW5wYW5vdCc7CiRsYW5nWydXYXJuaW5ncyddID0gJ1Zhcm9pdHVrc2V0JzsKJGxhbmdbJ0Vycm9ycyddID0gJ1ZpcmhlZXQnOwokbGFuZ1snaGlkZGVuJ10gPSAncGlpbG90ZXR0dSc7CiRsYW5nWydTY3JpcHQnXSA9ICdTY3JpcHRpJzsKJGxhbmdbJ0VVUkxTJ10gPSAnUHVyZXR1dCBVUkw6aXQnOwokbGFuZ1snUkNTUyddID0gJ1JlbmRlciZvdW1sO2lkeXQgQ1NTOiZhdW1sO3QnOwokbGFuZ1snU0NTUyddID0gJ0NTUyBSYWtlbm5lJzsKJGxhbmdbJ0ZDT05UJ10gPSAnVGllZG9zdG8gc2lzJmF1bWw7bHQmb3VtbDsnOwokbGFuZ1snaVVSTCddID0gJ2t1dmFuIFVSTCc7CiRsYW5nWydUeXBlJ10gPSAnVHl5cHBpJzsKJGxhbmdbJ1NpemUnXSA9ICdLb2tvJzsKJGxhbmdbJ1N0YXR1cyddID0gJ1RpbGEnOwokbGFuZ1snaG90bGluayddID0gJzxzdHJvbmc+TGlua2l0ZXQmYXVtbDsmYXVtbDtuOjwvc3Ryb25nPiBuJmF1bWw7eXR0JmF1bWw7JmF1bWw7IG9sZXZhbiBrdXVtYWxpbmtraS4nOwokbGFuZ1snQnJva2VubGluayddID0gJ1Jpa2tpbiZhdW1sO2luZW4gTGlua2tpJzsKJGxhbmdbJ05PY3NzSSddID0gJ0VpIGNzcyBrdXZpYSc7CiRsYW5nWydZZXNWQWxhc3RlciddID0gJzxoMj5Zb3UgdmFsaWRhdGVkISAqKjwvaDI+PGltZyBzdHlsZT0mcXVvdDtib3JkZXI6MDt3aWR0aDo4OHB4O2hlaWdodDozMXB4JnF1b3Q7c3JjPSZxdW90O2h0dHA6Ly9qaWdzYXcudzMub3JnL2Nzcy12YWxpZGF0b3IvaW1hZ2VzL3Zjc3MtYmx1ZSZxdW90O2FsdD0mcXVvdDtWYWxpZCBDU1MhJnF1b3Q7IC8+PGJyLz4gPHN0cm9uZz4qKiB5b3UgYXJlIGZpbHRlcmluZyBlcnJvcnMgYW5kIG1heSBoYXZlIGZpbHRlcmVkIGEgcmVhbCBlcnJvcjwvc3Ryb25nPic7CiRsYW5nWydZZXNWQWwnXSA9ICc8aDI+WW91IHZhbGlkYXRlZCE8L2gyPjxpbWcgc3R5bGU9JnF1b3Q7Ym9yZGVyOjA7d2lkdGg6ODhweDtoZWlnaHQ6MzFweCZxdW90O3NyYz0mcXVvdDtodHRwOi8vamlnc2F3LnczLm9yZy9jc3MtdmFsaWRhdG9yL2ltYWdlcy92Y3NzLWJsdWUmcXVvdDthbHQ9JnF1b3Q7VmFsaWQgQ1NTISZxdW90OyAvPic7CiRsYW5nWydDbGVhckltZyddID0gJ1BvaXN0YSBLdXZhJzsKJGxhbmdbJ0ZpbmlzaCddID0gJ1ZhbG1pcyc7CiRsYW5nWydyZXZlcnQnXSA9ICdQYWxhdXRhJzsKJGxhbmdbJ2FwcGx5J10gPSAnSyZhdW1sO3l0JmF1bWw7JzsKJGxhbmdbJ2NhbmNlbCddID0gJ1BlcnV1dGEnOwokbGFuZ1snZm9ybV9jYW5jZWwnXSA9ICdQZXJ1dXRhJzsKJGxhbmdbJ1NhdmUnXSA9ICdUYWxsZW5uYSc7CiRsYW5nWydkb25lJ10gPSAnVmFsbWlzJzsKJGxhbmdbJ2FkZCddID0gJ0xpcyZhdW1sOyZhdW1sOyc7CiRsYW5nWydzdWJtaXQnXSA9ICdMJmF1bWw7aGV0JmF1bWw7JzsKJGxhbmdbJ1JFT1JERVInXSA9ICdVdWRlbGxlZW4gaiZhdW1sO3JqZXN0JmF1bWw7JzsKJGxhbmdbJ2Zvcm1fc3VibWl0J10gPSAnVGFsbGVubmEgQXNldHVrc2V0JzsKJGxhbmdbJ21vZF9wcmVmc190aXRsZSddID0gJ01vZHV1bGluIEFzZXR1a3NldCc7CiRsYW5nWydwcmVmc3VwZGF0ZWQnXSA9ICdNb2R1dWxpbiBhc2V0dWtzZXQgcCZhdW1sO2l2aXRldHR5Lic7CiRsYW5nWydvcHRpb25zdXBkYXRlZCddID0gJ3ZhbGlubmF0IHAmYXVtbDtpdml0ZXR0eSc7CiRsYW5nWydtb2RkZXNjcmlwdGlvbiddID0gJ05PUEVVVEEgU0FJVFRJQVNJIC4uLiEhISEgJmJ1bGw7IFR1bG9zdGEgZHluYWFtaXN0YSBKUzomYXVtbDsmYXVtbDsgc2VrJmF1bWw7IENTUzomYXVtbDsmYXVtbDsgc21hcnR5biBrYW5zc2EuLi4gJmJ1bGw7IEFzZXRhIHRpZWRvc3RvdCBrJmF1bWw7eXR0JmF1bWw7bSZhdW1sOyZhdW1sO24gYWxhZG9tYWluZWphLi4uICZidWxsOyB2JmF1bWw7bGltdWlzdGkuLi4gJmJ1bGw7IG1pbmlmaWVkLi4uICZidWxsOyBNdWlzdGlua28gbWFpbml0YSBldHQmYXVtbDsgdm9pdCBrJmF1bWw7eXR0JmF1bWw7JmF1bWw7IHNtYXJ0eWEgSlMgamEgQ1NTIHNjcmlwdGVpc3MmYXVtbDtzaSEhISEgLSBZa3NpbmtlcnRhaW5lbiwgam91c3RhdmEhJzsKJGxhbmdbJ3dlbGNvbWVfdGV4dCddID0gJzxwPkhlaSE8L3A+JzsKJGxhbmdbJ2NoYW5nZWxvZyddID0gJzx1bD4NCg0KICA8bGk+VmVyc2lvbiAwLjEgQmV0YSByZWxlYXNlLjwvbGk+DQogIDxsaT5WZXJzaW9uIDAuMiBsb3RzIG9mIGNoYW5nZXMgdG8gZml4IGJ1Zy4uLjwvbGk+DQogICA8bGk+VmVyc2lvbiAwLjMgc2V0IHRoZSBzbWFydHkgdG8gdXNlIHt7IH19PC9saT4NCiAgICA8bGk+VmVyc2lvbiAwLjQgZml4ZWQgYnVnLi4gaW1wcm92ZWQgdGhlIG1pbmlhZmNhdGlvbiB0byBhIHNhdmVzIG9mIHVwIHRvIDYwJTwvbGk+DQoJPGxpPlZlcnNpb24gMC43LjEgbWFueSBjaGFuZ2VzLi4uIDxzdHJvbmc+QlJFQUtTIFVQR1JBREU8L3N0cm9uZz4gQ29weSBzY3JpcHRzLCBpbnN0YWxsIGFuZCB0aGUgdXBsb2FkIGFuZCByZWluc3RhbGwuLi4gU29ycnkgYnV0IGl0IHdhcyBuZWVkZWQgZm9yIFZFUlNJT04gSElTVE9SWSBmaXhlZCBidWdzLi4gbWFueSBpbXByb3ZlbWVudHM8L2xpPg0KPC91bD4nOwokbGFuZ1snaGVscCddID0gJzxsaW5rIG1lZGlhPSZxdW90O3NjcmVlbiZxdW90OyBocmVmPSZxdW90Oy4uL21vZHVsZXMvU2NyaXB0RGVwbG95L0NTUy9NYXN0ZXJDU1MuY3NzJnF1b3Q7IHR5cGU9JnF1b3Q7dGV4dC9jc3MmcXVvdDsgcmVsPSZxdW90O3N0eWxlc2hlZXQmcXVvdDsvPjxkaXYgY2xhc3M9JnF1b3Q7U2ltV3JhcCZxdW90Oz48YiBjbGFzcz0mcXVvdDtyYm90dG9tJnF1b3Q7PjxiIGNsYXNzPSZxdW90O3IxJnF1b3Q7PjwvYj4gPGIgY2xhc3M9JnF1b3Q7cjImcXVvdDs+PC9iPjxiIGNsYXNzPSZxdW90O3IzJnF1b3Q7PjwvYj4gPGIgY2xhc3M9JnF1b3Q7cjQmcXVvdDs+PC9iPjwvYj4NCg0KPGRpdiBjbGFzcz0mcXVvdDtTaW1jb24mcXVvdDs+IDxoMyBjbGFzcz0mcXVvdDtCYWNrTGluayZxdW90Oz48YSBvbmNsaWNrPSJqYXZhc2NyaXB0OndpbmRvdy5oaXN0b3J5LmdvKC0xKSIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPjw8IEJhY2s8L2E+PC9oMz4NCjxoMT5XaGF0IERvZXMgVGhpcyBEbz8tLS0gdGhpcyBuZWVkcyB1cGRhdGluZzwvaDE+DQo8aDI+V3JpdGUgbWFuYWdlIGFuZCBkZXBsb3kgSlMgYW5kIENTUzwvaDI+DQo8YSBpZD0iU2NyaXB0RGVwbG95Ij48L2E+DQo8cD5TY3JpcHREZXBsb3kgbW9kdWxlIHRoYXQgY2FuIGNvbWJpbmUgbXVsdGlwbGUgQ1NTIG9yIEphdmFzY3JpcHQgZmlsZXMsIGNvbXByZXNzIHRoZWlyIGNvbnRlbnRzIChpLmUuIHJlbW92YWwgb2YgdW5uZWNlc3Nhcnkgd2hpdGVzcGFjZS9jb21tZW50cyksIGFuZCBzZXJ2ZSB0aGUgcmVzdWx0cyB3aXRoIEhUVFAgZW5jb2RpbmcgKGd6aXAvZGVmbGF0ZSkgYW5kIGhlYWRlcnMgdGhhdCBhbGxvdyBvcHRpbWFsIGNsaWVudC1zaWRlIGNhY2hpbmcuIFRoaXMgaGVscHMgeW91IGZvbGxvdyBzZXZlcmFsIG9mIFlhaG9vISYjMDM5O3MgPGEgaHJlZj0iaHR0cDovL2RldmVsb3Blci55YWhvby5jb20vcGVyZm9ybWFuY2UvaW5kZXguaHRtbCNydWxlcyIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPlJ1bGVzIGZvciBIaWdoIFBlcmZvcm1hbmNlIFdlYiBTaXRlczwvYT4uIChTZWUgJnF1b3Q7UHJvYmxlbSBEb21haW4mcXVvdDsgYmVsb3cgZm9yIG1vcmUgaW5mby4pIDwvcD4NCjxoMz5UaGUgU2hvcnQgb2YgaXQ8L2gzPg0KPHA+V2lydGUgeW91ciBzY3JpcHRzLCBzZXQgdGhlIG9yZGVyIGFuZCBTY3JpcHREZXBsb3kgd2lsbCBkbyB0aGUgcmVzdCE8L3A+DQo8dGFibGU+DQogIDx0Ym9keT4NCiAgICA8dHI+DQogICAgICA8dGQgc3R5bGU9JnF1b3Q7Qk9SREVSLVJJR0hUOiAjYWFhIDFweCBzb2xpZDsgUEFERElORy1SSUdIVDogNXB4OyBCT1JERVItVE9QOiAjYWFhIDFweCBzb2xpZDsgUEFERElORy1MRUZUOiA1cHg7IFBBRERJTkctQk9UVE9NOiA1cHg7IEJPUkRFUi1MRUZUOiAjYWFhIDFweCBzb2xpZDsgUEFERElORy1UT1A6IDVweDsgQk9SREVSLUJPVFRPTTogI2FhYSAxcHggc29saWQmcXVvdDs+PHN0cm9uZz5CZWZvcmU8L3N0cm9uZz48L3RkPg0KICAgICAgPHRkIHN0eWxlPSZxdW90O0JPUkRFUi1SSUdIVDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctUklHSFQ6IDVweDsgQk9SREVSLVRPUDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctTEVGVDogNXB4OyBQQURESU5HLUJPVFRPTTogNXB4OyBCT1JERVItTEVGVDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctVE9QOiA1cHg7IEJPUkRFUi1CT1RUT006ICNhYWEgMXB4IHNvbGlkJnF1b3Q7PjxpbWcgc3JjPSZxdW90O2h0dHA6Ly9tcmNsYXkub3JnL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDA4LzA5L2ZpZGRsZXJfYmVmb3JlLnBuZyZxdW90OyBhbHQ9JnF1b3Q7YWZ0ZXImcXVvdDsgLz48L3RkPg0KICAgIDwvdHI+DQogICAgPHRyPg0KICAgICAgPHRkIHN0eWxlPSZxdW90O0JPUkRFUi1SSUdIVDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctUklHSFQ6IDVweDsgQk9SREVSLVRPUDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctTEVGVDogNXB4OyBQQURESU5HLUJPVFRPTTogNXB4OyBCT1JERVItTEVGVDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctVE9QOiA1cHg7IEJPUkRFUi1CT1RUT006ICNhYWEgMXB4IHNvbGlkJnF1b3Q7PjxzdHJvbmc+QWZ0ZXI8L3N0cm9uZz48L3RkPg0KICAgICAgPHRkIHN0eWxlPSZxdW90O0JPUkRFUi1SSUdIVDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctUklHSFQ6IDVweDsgQk9SREVSLVRPUDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctTEVGVDogNXB4OyBQQURESU5HLUJPVFRPTTogNXB4OyBCT1JERVItTEVGVDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctVE9QOiA1cHg7IEJPUkRFUi1CT1RUT006ICNhYWEgMXB4IHNvbGlkJnF1b3Q7PjxpbWcgc3JjPSZxdW90O2h0dHA6Ly9tcmNsYXkub3JnL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDA4LzA5L2ZpZGRsZXJfYWZ0ZXIucG5nJnF1b3Q7IGFsdD0mcXVvdDtiZWZvcmUmcXVvdDsgLz48L3RkPg0KICAgIDwvdHI+DQogIDwvdGJvZHk+DQo8L3RhYmxlPg0KDQoNCg0KPGgyPjxhIGlkPSJGZWF0dXJlcyI+PC9hPkZlYXR1cmVzPC9oMj4NCjx1bD4NCiAgPGxpPkNvbWJpbmVzIGFuZCBtaW5pZmllcyBtdWx0aXBsZSBDU1Mgb3IgSmF2YVNjcmlwdCBmaWxlcyBpbnRvIGEgc2luZ2xlICAgZG93bmxvYWQgPC9saT4NCiAgPGxpPlVzZXMgYW4gPGEgaHJlZj0iaHR0cDovL2NvZGUuZ29vZ2xlLmNvbS9wL21pbmlmeS9zb3VyY2UvYnJvd3NlL3RydW5rL21pbi9saWIvSlNNaW4ucGhwIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub2ZvbGxvdyI+ZW5oYW5jZWQgcG9ydDwvYT4gb2YgRG91Z2xhcyBDcm9ja2ZvcmQmIzAzOTtzIDxhIGhyZWY9Imh0dHA6Ly93d3cuY3JvY2tmb3JkLmNvbS9qYXZhc2NyaXB0L2pzbWluLmh0bWwiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij5KU01pbiAgIGxpYnJhcnk8L2E+IGFuZCBjdXN0b20gY2xhc3NlcyB0byBtaW5pZnkgPGEgaHJlZj0iaHR0cDovL2NvZGUuZ29vZ2xlLmNvbS9wL21pbmlmeS9zb3VyY2UvYnJvd3NlL3RydW5rL21pbi9saWIvTWluaWZ5L0NTUy5waHAiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij5DU1M8L2E+IGFuZCA8YSBocmVmPSJodHRwOi8vY29kZS5nb29nbGUuY29tL3AvbWluaWZ5L3NvdXJjZS9icm93c2UvdHJ1bmsvbWluL2xpYi9NaW5pZnkvSFRNTC5waHAiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij5IVE1MPC9hPjwvbGk+DQogIDxsaT5DYWNoZXMgc2VydmVyLXNpZGUgdG8gYXZvaWQgZG9pbmcgdW5uZWNlc3Nhcnkgd29yayA8L2xpPg0KICA8bGk+UmVzcG9uZHMgd2l0aCBhbiBIVFRQIDMwNCAoTm90IE1vZGlmaWVkKSByZXNwb25zZSB3aGVuIHRoZSBicm93c2VyIGhhcyBhbiAgIHVwLXRvLWRhdGUgY2FjaGUgY29weSAqKiA8L2xpPg0KICA8bGk+TW9zdCBtb2R1bGVzIGFyZSBsYXp5LWxvYWRlZCBhcyBuZWVkZWQgKDMwNCByZXNwb25zZXMgdXNlIG1pbmltYWwgY29kZSkgICoqIDwvbGk+DQogIDxsaT5BdXRvbWF0aWNhbGx5IHJld3JpdGVzIHJlbGF0aXZlIFVSSXMgaW4gY29tYmluZWQgQ1NTIGZpbGVzIHRvIHBvaW50IHRvIHZhbGlkIGxvY2F0aW9ucyA8L2xpPg0KICA8bGk+V2l0aCBjYWNoaW5nIGVuYWJsZWQsIFNjcmlwdERlcGxveSBpcyBjYXBhYmxlIG9mIGhhbmRsaW5nIGh1bmRyZWRzIG9mIHJlcXVlc3RzIHBlciBzZWNvbmQgb24gYSBtb2RlcmF0ZWx5IHBvd2VyZnVsIHNlcnZlci4gPC9saT4NCiAgPGxpPkNvbnRlbnQtRW5jb2Rpbmc6IGd6aXAsIGJhc2VkIG9uIHJlcXVlc3QgaGVhZGVycy4gQ2FjaGluZyBhbGxvd3MgaXQgc28gc2VydmUgZ3ppcHBlZCBmaWxlcyBmYXN0ZXIgdGhhbiBBcGFjaGUmIzAzOTtzIG1vZF9kZWZsYXRlIG9wdGlvbiEgPC9saT4NCjwvdWw+DQo8aDM+PGVtPjxzdHJvbmc+KiogTm90ZTo8L3N0cm9uZz4gSXQgaXMgYmVzdCB0byB1c2UgYSAuaHRhY2Nlc3Mgc2NyaXB0IHRvIHNldCB0aGUgYWdlIHRpbWVzLiBTY3JpcHREZXBsb3kgaXMgZGVzaWduZWQgZm9yIGVmZmljaWVuY3ksIGJ1dCBmb3IgdmVyeSBoaWdoIHRyYWZmaWMgc2l0ZXMsIFNjcmlwdERlcGxveSBtYXkgc2VydmUgZmlsZXMgc2xvd2VyIHRoYW4geW91ciBIVFRQZCBkdWUgdG8gdGhlIENHSSBvdmVyaGVhZCBvZiBQSFAuICBUbyBvdmVyIGNvbWUgdGhpcyBKdXN0IGNoZWNrICZxdW90O3VzZSAuaHRhY2Nlc3MgaW4gb3B0aW9ucyZxdW90OzwvZW0+PC9oMz4NCjxoMj48YSBuYW1lPSJSZXF1aXJlbWVudHMiPjwvYT5SZXF1aXJlbWVudHM8L2gyPg0KPHVsPg0KICA8bGk+VGhlIGNvbW1vbmx5IGluc3RhbGxlZCA8YSBocmVmPSJodHRwOi8vdXMzLnBocC5uZXQvbWFudWFsL2VuL3psaWIuaW5zdGFsbGF0aW9uLnBocCIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPnpsaWIgICBleHRlbnNpb248L2E+IGlzIHJlY29tbWVuZGVkIGZvciBIVFRQIGVuY29kaW5nIGZ1bmN0aW9uYWxpdHkuIDwvbGk+DQo8L3VsPg0KPGJyLz48YnIvPg0KPGgxPkhvdyBEbyBJIFVzZSBJdDwvaDE+DQoNCg0KPGgzPkdldCBhIHNpbmdsZSBzY3JpcHQ8L2gzPg0KdXNlIDxzcGFuIGNsYXNzPSZxdW90O2NvZGVISUdITElHSFQmcXVvdDs+e2Ntc19tb2R1bGUgbW9kdWxlPVNjcmlwdERlcGxveSBzY3JpcHRJRD0mcXVvdDsxJnF1b3Q7fSA8L3NwYW4+IDxici8+PGJyLz4NCjxoMz5HZXQgYSBzY3JpcHQgZ3JvdXA8L2gzPg0KdXNlIDxzcGFuIGNsYXNzPSZxdW90O2NvZGVISUdITElHSFQmcXVvdDs+e2Ntc19tb2R1bGUgbW9kdWxlPVNjcmlwdERlcGxveSBncm91cElEPSZxdW90OzEmcXVvdDt9IDwvc3Bhbj4gPGJyLz48YnIvPg0KPGgyPkFsbCBvdXRwdXQgaXMgaW4gdGhlIFhIVE1MIGZvcm1hdCwgeW91IHNob3VsZCB3b3JrIGluIHRoYXQuPC9oMj4NCg0KPGJyLz48YnIvPg0KPGg0PlBhcmFtczwvaDQ+DQo8dWw+DQo8bGk+PHN0cm9uZz5zY3JpcHRJRD0mcXVvdDsmcXVvdDsgPC9zdHJvbmc+PGVtPihSZXF1aXJlZC9vcHRpb25hbCk8L2VtPiA8YnIvPnwgc2V0IHRoZSBJRCBSZXF1aXJlZCBvbmx5IGlmIGdyb3VwSUQgbm90IGNhbGxlZDxici8+PC9saT4NCjxsaT48c3Ryb25nPmdyb3VwSUQ9JnF1b3Q7JnF1b3Q7IDwvc3Ryb25nPjxlbT4oUmVxdWlyZWQvb3B0aW9uYWwpPC9lbT4gPGJyLz58IHNldCB0aGUgSUQgUmVxdWlyZWQgb25seSBpZiBzY3JpcHRJRCBub3QgY2FsbGVkPGJyLz48L2xpPg0KPGxpPjxzdHJvbmc+U3R5cGU9JnF1b3Q7JnF1b3Q7IDwvc3Ryb25nPjxlbT4oUmVxdWlyZWQvKSBKUy9DU1M8L2VtPiA8YnIvPnwgc2V0IHRoZSBJRCBSZXF1aXJlZCBvbmx5IGlmIHNjcmlwdElEIG5vdCBjYWxsZWQ8YnIvPjwvbGk+DQoNCjxsaT48c3Ryb25nPlNtYXJ0eU9uPSZxdW90OyZxdW90OyA8L3N0cm9uZz48ZW0+KG9wdGlvbmFsKSB0cnVlL2ZhbHNlIDxzdHJvbmc+RGVmYXVsdDpudWxsPC9zdHJvbmc+PC9lbT4gPGJyLz58IFRoaXMgbGV0cyB5b3Ugb3ZlciByaWRlIHRoZSBnbG9ibGVzPGJyLz48L2xpPg0KPGxpPjxzdHJvbmc+TWluaWZ5PSZxdW90OyZxdW90OyA8L3N0cm9uZz48ZW0+KG9wdGlvbmFsKSB0cnVlL2ZhbHNlIDxzdHJvbmc+RGVmYXVsdDp0cnVlPC9zdHJvbmc+PC9lbT4gPGJyLz58ICBUaGlzIGxldHMgeW91IG92ZXIgcmlkZSB0aGUgZ2xvYmxlczxici8+PC9saT4NCg0KDQoNCg0KDQoNCjxsaT48c3Ryb25nPk1lZGlhVHlwZT0mcXVvdDsmcXVvdDsgPC9zdHJvbmc+PGVtPihvcHRpb25hbCk8L2VtPiA8YnIvPnwgc2V0IE1lZGlhIHR5cGUgZm9yIENTUyBmaWxlcyBoZXJlLi4uIG92ZXJyaWRlcyBkYiBzZXRpbmdzLjxici8+PC9saT4NCjxsaT48c3Ryb25nPmltcG9ydD0mcXVvdDsmcXVvdDsgPC9zdHJvbmc+PGVtPihvcHRpb25hbCkgdHJ1ZS9mYWxzZTwvZW0+IDxici8+fCBzZXQgdGhlIGluY2x1c2lvbiBzdHlsZSBmb3IgQ1NTIGZpbGVzIGhlcmUuLi4gb3ZlcnJpZGVzIGRiIHNldGluZ3MuIEV4OiB0cnVlICBnaXZlcyA8c3R5bGUgdHlwZT1cJnF1b3Q7dGV4dC9jc3NcJnF1b3Q7PkBpbXBvcnQgdXJsKCZxdW90O3VybC9jc3NmaWxlLmNzcyZxdW90Oykgc2NyZWVuOzwvc3R5bGU+PGJyLz48L2xpPg0KDQo8bGk+PHN0cm9uZz5jYWNoZUJ1c3Rlcjwvc3Ryb25nPiA8ZW0+KG9wdGlvbmFsKSA8c3Ryb25nPkRlZmF1bHQ6ZmFsc2U8L3N0cm9uZz48L2VtPjxici8+fCBUaGlzIGlzIHRvIGluc3RhbnRseSB1bmNhY2hlIGFuIHNjcmlwdCBvbiB0aGUgY2xpZW50IHNpZGUgYWZ0ZXIgYSBuZXcgdXBsb2FkZWQgc2NyaXB0IGlzIGNyZWF0ZWQuLi4gaWU6IDEyLmpzPzEyNTUyMjUwMDcgIDxmb250IGNvbG9yPSZxdW90O3JlZCZxdW90Oz48c3Ryb25nPiggdHJ1ZS9mYWxzZSApPC9zdHJvbmc+PC9mb250PjwvbGk+DQo8bGk+PHN0cm9uZz5hc3NpZ249JnF1b3Q7JnF1b3Q7IDwvc3Ryb25nPjxlbT4ob3B0aW9uYWwpPC9lbT4gPGJyLz58IEFzc2lnbiB0aGUgb3V0cHV0IChyZXR1cm4gdGhlIHNtYXJ0eSBhc3NpZ25tZW50KSAgVXNlIGluIGNvbmp1bmN0aW9uIHdpdGggb3V0IHdpdGhvdXQgVVJMPC9saT4NCjxsaT48c3Ryb25nPmZzaXplPSZxdW90OyZxdW90OyA8L3N0cm9uZz48ZW0+KG9wdGlvbmFsKTwvZW0+IDxici8+fCBnZXQgdGhlIHNpemU8L2xpPg0KPGxpPjxzdHJvbmc+cm9vdFVybD0mcXVvdDsmcXVvdDsgPC9zdHJvbmc+PGVtPihvcHRpb25hbCk8L2VtPiA8YnIvPnwgU2NyaXB0RGVwbG95IGNyZWF0ZXMgYSB0ZW1wIGRpcmVjdG9yIGluIHRoZSB1cGxvYWQgZm9sZGVyLiAgSWYgeW91IG1vdmUgdGhlIHBhdGggdG8gdGhlIHVwbGFvZCB0byBhIHN1YmRvbWFpbiB5b3UgbWF5IGd1aWRlIHRoZSBvdXRwdXQgd2l0aCB0aGlzLjwvbGk+DQogICAgICAgIDx1bCBzdHlsZT0mcXVvdDtsaXN0LXN0eWxlLXBvc2l0aW9uOmluc2lkZTsmcXVvdDs+PGxpPjxzdHJvbmc+RXhhcG1sZTo8L3N0cm9uZz4geW91IGNoYW5nZWQgPENPREU+JGNvbmZpZ1smIzAzOTt1cGxvYWRzX3BhdGgmIzAzOTtdID0gJiMwMzk7L3Zhci93d3cvdmhvc3RzL2RvbWFpbi5vcmcvaHR0cGRvY3MvdXBsb2FkcyYjMDM5Ozs8L0NPREU+IDwvbGk+DQogICAgICAgICAgICA8bGk+PHN0cm9uZz50bzwvc3Ryb25nPiA8Q09ERT4kY29uZmlnWyYjMDM5O3VwbG9hZHNfcGF0aCYjMDM5O10gPSBcL3Zhci93d3cvdmhvc3RzL2RvbWFpbi5vcmcvc3ViZG9tYWlucy9tZWRpYS9odHRwZG9jcy91cGxvYWRzJiMwMzk7OzwvQ09ERT48L2xpPg0KICAgICAgICAgICAgPGxpPm5vdyB0aGUgdXBsb2FkcyB1cmwgd291bGQgbm90IHdvcmsgYXMgaXQgd291bGQgYmUgPHU+aHR0cDovL3d3dy5kb21haW4ub3JnL3VwbG9hZHM8L3U+PC9saT4NCiAgICAgICAgICAgIDxsaT48c3Ryb25nPlNvPC9zdHJvbmc+IGl0IGNhbiBiZSBjaGFuZ2VkIGhlcmUgdG8gPHU+aHR0cDovL21lZGlhLmRvbWFpbi5vcmcvdXBsb2FkczwvdT4gIDxmb250IGNvbG9yPSZxdW90O3JlZCZxdW90Oz48c3Ryb25nPihOT1RFOiB3YXRjaCB5b3VyIC8gKTwvc3Ryb25nPjwvZm9udD48L2xpPg0KICAgICAgICA8L3VsPg0KPGxpPjxzdHJvbmc+VVJMPSZxdW90OyZxdW90OyA8L3N0cm9uZz48ZW0+KG9wdGlvbmFsKTwvZW0+IDxici8+fG91dHB1dHMgdGhlIHVybC48L2xpPg0KDQoNCg0KDQoJCQ0KDQoNCg0KDQoNCg0KDQoNCjwhLS08bGk+PHN0cm9uZz5TYW5kQm94PXRydWUgPC9zdHJvbmc+PGVtPihvcHRpb25hbCk8L2VtPiA8YnIvPnwgZmFsc2U8YnIvPjwvbGk+DQoNCjxsaT48c3Ryb25nPlJVTmFjdGlvbj0mYW1wO2FtcDthbXA7YW1wO2FtcDthbXA7YW1wO2FtcDthbXA7YW1wO3F1b3Q7JmFtcDthbXA7YW1wO2FtcDthbXA7YW1wO2FtcDthbXA7YW1wO2FtcDtxdW90OyA8L3N0cm9uZz48ZW0+KG9wdGlvbmFsKTwvZW0+IDxici8+fCBVRFQ8YnIvPnwgVVJMIDxlbT4oLi4vcGx1Z2lucy9mdW5jdGlvbi5maWxlbmFtZS5waHApPC9lbT48YnIvPnwgKk1vcmUgY29taW5nIFNvb24qPGJyLz48L2xpPg0KPGxpPjxzdHJvbmc+TGFuZz0mYW1wO2FtcDthbXA7YW1wO2FtcDthbXA7YW1wO2FtcDthbXA7YW1wO3F1b3Q7JmFtcDthbXA7YW1wO2FtcDthbXA7YW1wO2FtcDthbXA7YW1wO2FtcDtxdW90OyA8L3N0cm9uZz48ZW0+KG9wdGlvbmFsKTwvZW0+IDxici8+fCBVc2UgQ291bnRyeSBDb2RlcyBUbyBkeW5hbWljbHkgc2V0IHRoZSBsYW5ndWFnZSBvZiB0aGUgUGF5UGFsIHBhZ2U8YnIvPjwvbGk+LS0+DQoNCjwvdWw+DQo8YnIvPg0KDQo8YnIvPjxici8+DQo8aDI+PGEgaWQ9IlByb2JsZW1fRG9tYWluIj48L2E+UHJvYmxlbSBEb21haW48L2gyPg0KPHA+UGFnZXMgdGhhdCByZWZlciB0byBtdWx0aXBsZSBDU1Mgb3IgSmF2YVNjcmlwdCBmaWxlcyBvZnRlbiBzdWZmZXIgZnJvbSBzbG93ZXIgICBwYWdlIGxvYWRzLCBkdWUgdG8gdGhlIGJyb3dzZXIgcmVxdWVzdGluZyBlYWNoIGZpbGUgaW5kaXZpZHVhbGx5LiBNYW55IGJyb3dzZXJzICAgYWxzbyBhcmUgbGltaXRlZCB0byBhIGZldyBzaW11bHRhbmVvdXMgcmVxdWVzdHMgcGVyIGRvbWFpbi4gVGhlIHdhaXQgZm9yIGEgICBzZXJpZXMgb2YgcmVxdWVzdHMgYW5kIHRoZSB0cmFuc2ZlciBvZiB1bm9wdGltaXplZCBmaWxlcyBjYW4gZHJhbWF0aWNhbGx5IHJlZHVjZSAgIHRoZSBjbGllbnQtc2lkZSBwZXJmb3JtYW5jZSBvZiB5b3VyIHNpdGUuIDwvcD4NCjxwPkhlcmUgYXJlIGEgaGFuZGZ1bCBvZiBZYWhvbyEmIzAzOTtzIGJlc3QgcHJhY3RpY2VzIHRoYXQgYXJlIGFkZHJlc3NlZCBieSB0aGUgdXNlIG9mIFNjcmlwdERlcGxveS4gPC9wPg0KPHVsPg0KICA8bGk+PGEgaHJlZj0iaHR0cDovL2RldmVsb3Blci55YWhvby5jb20vcGVyZm9ybWFuY2UvcnVsZXMuaHRtbCNudW1faHR0cCIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPk1ha2UgRmV3ZXIgSFRUUCBSZXF1ZXN0czwvYT48L2xpPg0KICA8bGk+PGEgaHJlZj0iaHR0cDovL2RldmVsb3Blci55YWhvby5jb20vcGVyZm9ybWFuY2UvcnVsZXMuaHRtbCNleHBpcmVzIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub2ZvbGxvdyI+QWRkIGFuIEV4cGlyZXMgb3IgYSBDYWNoZS1Db250cm9sIEhlYWRlcjwvYT48L2xpPg0KICA8bGk+PGEgaHJlZj0iaHR0cDovL2RldmVsb3Blci55YWhvby5jb20vcGVyZm9ybWFuY2UvcnVsZXMuaHRtbCNnemlwIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub2ZvbGxvdyI+R3ppcCBDb21wb25lbnRzPC9hPjwvbGk+DQogIDxsaT48YSBocmVmPSJodHRwOi8vZGV2ZWxvcGVyLnlhaG9vLmNvbS9wZXJmb3JtYW5jZS9ydWxlcy5odG1sI21pbmlmeSIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPk1pbmlmeSBKYXZhU2NyaXB0IGFuZCBDU1M8L2E+PC9saT4NCiAgPGxpPjxhIGhyZWY9Imh0dHA6Ly9kZXZlbG9wZXIueWFob28uY29tL3BlcmZvcm1hbmNlL3J1bGVzLmh0bWwjZXRhZ3MiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij5Db25maWd1cmUgRVRhZ3M8L2E+PC9saT4NCiAgPGxpPjxhIGhyZWY9Imh0dHA6Ly9kZXZlbG9wZXIueWFob28uY29tL3BlcmZvcm1hbmNlL3J1bGVzLmh0bWwjdW5kZXIyNSIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPktlZXAgQ29tcG9uZW50cyB1bmRlciAyNUs8L2E+PC9saT4NCjwvdWw+DQo8aDM+PGEgbmFtZT0iQWNrbm93bGVkZ21lbnRzIj48L2E+QWNrbm93bGVkZ21lbnRzPC9oMz4NCjxwPk1pbmlmeSB3YXMgaW5zcGlyZWQgYnkgPGEgaHJlZj0iaHR0cDovL2NvZGUuZ29vZ2xlLmNvbS9wL2pzY3NzY29tcC8iIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij5qc2Nzc2NvbXA8L2E+IGJ5IE1heGltIE1hcnR5bnl1ayBhbmQgYnkgdGhlIGFydGljbGUgJiMwMzk7PGEgaHJlZj0iaHR0cDovL3d3dy5odW5sb2NrLmNvbS9ibG9ncy9TdXBlcmNoYXJnZWRfSmF2YXNjcmlwdCIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPlN1cGVyY2hhcmdlZCBKYXZhU2NyaXB0PC9hPiYjMDM5OyBieSBQYXRyaWNrIEh1bmxvY2suIDwvcD4NCjxwPlRoZSA8YSBocmVmPSJodHRwOi8vd3d3LmNyb2NrZm9yZC5jb20vamF2YXNjcmlwdC9qc21pbi5odG1sIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub2ZvbGxvdyI+SlNNaW4gbGlicmFyeTwvYT4gdXNlZCBmb3IgSmF2YVNjcmlwdCBtaW5pZmljYXRpb24gd2FzIG9yaWdpbmFsbHkgICB3cml0dGVuIGJ5IERvdWdsYXMgQ3JvY2tmb3JkIGFuZCB3YXMgPGEgaHJlZj0iaHR0cDovL2NvZGUuZ29vZ2xlLmNvbS9wL2pzbWluLXBocCIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPnBvcnRlZCB0byBQSFA8L2E+IGJ5IFJ5YW4gICBHcm92ZSBzcGVjaWZpY2FsbHkgZm9yIHVzZSBpbiBNaW5pZnkuIDwvcD4NCg0KDQo8aDM+U3VwcG9ydDwvaDM+DQo8aDQ+U2NyZWVuY2FzdHMgZm9yIGV4dHJhIGhlbHAgd2lsbCBmYWxsb3ctLS0gb24gdGhlIFRPRE88L2g0Pg0KPHA+VGhpcyBtb2R1bGUgZG9lcyBub3QgaW5jbHVkZSBjb21tZXJjaWFsIHN1cHBvcnQuIEhvd2V2ZXIsIHRoZXJlIGFyZSBhIG51bWJlciBvZiByZXNvdXJjZXMgYXZhaWxhYmxlIHRvIGhlbHAgeW91IHdpdGggaXQ6PC9wPg0KPHVsPg0KPGxpPkZvciB0aGUgbGF0ZXN0IHZlcnNpb24gb2YgdGhpcyBtb2R1bGUgb3IgdG8gZmlsZSBhIGJ1ZyByZXBvcnQgdmlzaXQgPGEgaHJlZj0iaHR0cDovL2Rldi5jbXNtYWRlc2ltcGxlLm9yZy9wcm9qZWN0cy9wcGJtIj50aGUgQ01TIEZvcmdlPC9hPi48L2xpPg0KPGxpPkFkZGl0aW9uYWwgZGlzY3Vzc2lvbiBvZiB0aGlzIG1vZHVsZSBtYXkgYWxzbyBiZSBmb3VuZCBpbiB0aGUgPGEgaHJlZj0iaHR0cDovL2ZvcnVtLmNtc21hZGVzaW1wbGUub3JnIj5DTVMgTWFkZSBTaW1wbGUgRm9ydW1zPC9hPi48L2xpPg0KPC91bD4NCg0KPGgzPkNvcHlyaWdodCBhbmQgTGljZW5zZTwvaDM+DQo8cD5Db3B5cmlnaHQgJmNvcHk7IDIwMDksIGplcmVteUJhc3MgPDxhIGhyZWY9Imh0dHA6Ly9jb3JiZW5zcHJvZHVjdHMuY29tIj5jb3JiZW5zcHJvZHVjdHMuY29tPC9hPj4gQWxsIFJpZ2h0cyBBcmUgUmVzZXJ2ZWQuPC9wPg0KPHN0cm9uZz5TdXBwb3J0IG1vcmUgbW9kcyBsaWtlIHRoaXM6PC9zdHJvbmc+PGZvcm0gYWN0aW9uPSZxdW90O2h0dHBzOi8vd3d3LnBheXBhbC5jb20vY2dpLWJpbi93ZWJzY3ImcXVvdDsgbWV0aG9kPSZxdW90O3Bvc3QmcXVvdDs+DQo8aW5wdXQgdHlwZT0mcXVvdDtoaWRkZW4mcXVvdDsgbmFtZT0mcXVvdDtjbWQmcXVvdDsgdmFsdWU9JnF1b3Q7X3MteGNsaWNrJnF1b3Q7Pg0KPGlucHV0IHR5cGU9JnF1b3Q7aGlkZGVuJnF1b3Q7IG5hbWU9JnF1b3Q7aG9zdGVkX2J1dHRvbl9pZCZxdW90OyB2YWx1ZT0mcXVvdDs4ODE3Njc1JnF1b3Q7Pg0KPGlucHV0IHR5cGU9JnF1b3Q7aW1hZ2UmcXVvdDsgc3JjPSZxdW90O2h0dHBzOi8vd3d3LnBheXBhbC5jb20vZW5fVVMvaS9idG4vYnRuX2RvbmF0ZV9MRy5naWYmcXVvdDsgYm9yZGVyPSZxdW90OzAmcXVvdDsgbmFtZT0mcXVvdDtzdWJtaXQmcXVvdDsgYWx0PSZxdW90O1BheVBhbCAtIFRoZSBzYWZlciwgZWFzaWVyIHdheSB0byBwYXkgb25saW5lISZxdW90Oz4NCjxpbWcgYWx0PSZxdW90OyZxdW90OyBib3JkZXI9JnF1b3Q7MCZxdW90OyBzcmM9JnF1b3Q7aHR0cHM6Ly93d3cucGF5cGFsLmNvbS9lbl9VUy9pL3Njci9waXhlbC5naWYmcXVvdDsgd2lkdGg9JnF1b3Q7MSZxdW90OyBoZWlnaHQ9JnF1b3Q7MSZxdW90Oz4NCjwvZm9ybT48YnIvPg0KPHA+VGhpcyBtb2R1bGUgaGFzIGJlZW4gcmVsZWFzZWQgdW5kZXIgdGhlIDxhIGhyZWY9Imh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTCI+R05VIFB1YmxpYyBMaWNlbnNlPC9hPi4gWW91IG11c3QgYWdyZWUgdG8gdGhpcyBsaWNlbnNlIGJlZm9yZSB1c2luZyB0aGUgbW9kdWxlLjwvcD4NCjwvZGl2ID48YiBjbGFzcz0mcXVvdDtyYm90dG9tJnF1b3Q7PjxiIGNsYXNzPSZxdW90O3I0JnF1b3Q7PjwvYj48YiBjbGFzcz0mcXVvdDtyMyZxdW90Oz48L2I+IDxiIGNsYXNzPSZxdW90O3IyJnF1b3Q7PjwvYj4gPGIgY2xhc3M9JnF1b3Q7cjEmcXVvdDs+PC9iPjwvYj4NCg0KPC9kaXY+DQonOwokbGFuZ1sndXRtYSddID0gJzE1Njg2MTM1My4xNDQ4MjM4MTEuMTI1MTM3NTQzOS4xMjc0MjgyODY0LjEyNzQyOTU2ODYuMjMwJzsKJGxhbmdbJ3V0bXonXSA9ICcxNTY4NjEzNTMuMTI3NDEwMjgyOS4yMjMuMjgudXRtY2NuPShvcmdhbmljKXx1dG1jc3I9Z29vZ2xlfHV0bWN0cj1jbXNtcyBsb2dnZWQgaW4gdXNlcmlkfHV0bWNtZD1vcmdhbmljJzsKJGxhbmdbJ3FjYSddID0gJ1AwLTEzNzk4OTMxMDUtMTI1MjA2Nzc3OTY5NCc7CiRsYW5nWyd1dG1jJ10gPSAnMTU2ODYxMzUzJzsKJGxhbmdbJ3V0bWInXSA9ICcxNTY4NjEzNTMuMS4xMC4xMjc0Mjk1Njg2JzsKPz4=]]></data>
	</file>
	<file>
	  <filename>/lang/ext/fr_FR.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ1NjcmlwdCBEZXBsb3kgJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsJ10gPSAnTGEgcHJlbWkmZWdyYXZlO3JlICZlYWN1dGU7dGFwZSAmYWdyYXZlOyBmYWlyZSBlc3QgbCYjMDM5O2FpZGUnOwokbGFuZ1sncG9zdHVuaW5zdGFsbCddID0gJ04mIzAzOTtoJmVhY3V0ZTtzaXRleiBwYXMgJmFncmF2ZTsgbm91cyBkaXJlIHNpIHZvdXMgdHJvdXZlciB1biBtb3llbiBkJiMwMzk7YW0mZWFjdXRlO2xpb3JlciBTY3JpcHREZXBsb3ksIDxhIGhyZWY9Imh0dHA6Ly9oZWxwLmNvcmJlbnNwcm9kdWN0cy5jb20vbWFrZS1jb250YWN0Lmh0bWwiPkNvbnRhY3Rlei1ub3VzLCBub3VzIHNvbW1lcyBoZXVyZXV4IGQmIzAzOTthdm9pciBkZSB2b3Mgbm91dmVsbGVzLjwvYT4nOwokbGFuZ1sncmVhbGx5X3VuaW5zdGFsbCddID0gJ0xhIGQmZWFjdXRlO3NpbnN0YWxsYXRpb24gZGUgY2UgbW9kdWxlIG5lIHBvcnRlcmEgcGFzIGF0dGVpbnRlIGF1eCBkb25uJmVhY3V0ZTtlcyBldCBhdXggJmVhY3V0ZTt2JmVhY3V0ZTtuZW1lbnRzLiBWb3VsZXotdm91cyBjb250aW51ZXIgPyc7CiRsYW5nWyd1bmluc3RhbGxlZCddID0gJ0xlIG1vZHVsZSBhICZlYWN1dGU7dCZlYWN1dGU7IGQmZWFjdXRlO3NpbnN0YWxsJmVhY3V0ZTsuJzsKJGxhbmdbJ2luc3RhbGxlZCddID0gJ0xlIG1vZHVsZSAgdmVyc2lvbiAlcyBhICZlYWN1dGU7dCZlYWN1dGU7IGluc3RhbGwmZWFjdXRlOy4nOwokbGFuZ1sndXBncmFkZWQnXSA9ICdMZSBtb2R1bGUgYSAmZWFjdXRlO3QmZWFjdXRlOyBtaXMgJmFncmF2ZTsgam91ciAmYWdyYXZlOyBsYSB2ZXJzaW9uICVzLic7CiRsYW5nWydtb2R1bGVfb3B0aW9ucyddID0gJ09wdGlvbnMgZHUgbW9kdWxlJzsKJGxhbmdbJ3RlbXBsYXRlX21hbmcnXSA9ICdHYWJhcml0JzsKJGxhbmdbJ0RlcGxveW1lbnRzZXR0aW5ncyddID0gJ09wdGlvbnMgZGUgZCZlYWN1dGU7cGxvaWVtZW50JzsKJGxhbmdbJ1ZhbHNldHRpbmdzJ10gPSAnUGFyYW0mZWdyYXZlO3RyZXMgZGUgdmFsaWRhdGlvbic7CiRsYW5nWydlbiddID0gJ0FuZ2xhaXMnOwokbGFuZ1snZnInXSA9ICdGcmFuJmNjZWRpbDthaXMmbmJzcDsoRnJlbmNoKSc7CiRsYW5nWydpdCddID0gJ0l0YWxpZW4gKEl0YWxpYW4pJzsKJGxhbmdbJ2tvJ10gPSAnQ29yJmVhY3V0ZTtlbic7CiRsYW5nWydqYSddID0gJ0phcG9uYWlzJzsKJGxhbmdbJ2VzJ10gPSAnRXNwYWdub2wgKFNwYW5pc2gpJzsKJGxhbmdbJ3poLWNuJ10gPSAnQ2hpbm9pcyc7CiRsYW5nWydubCddID0gJ0hvbGxhbmRhaXMgKER1dGNoKSc7CiRsYW5nWydkZSddID0gJ0FsbGVtYW5kIChHZXJtYW4pJzsKJGxhbmdbJ3BsJ10gPSAnUG9sb25haXMgKFBvbGlzaCknOwokbGFuZ1sncm8nXSA9ICdSb3VtYWluIChSb21hbmlhbiknOwokbGFuZ1snY3MnXSA9ICdFc3RvbmllbiAoJkVncmF2ZTtlJnNjYXJvbjt0aW5hKSc7CiRsYW5nWydiZyddID0gJ0J1bGdhcmllIChCdWxnYXJpYSknOwokbGFuZ1snc3YnXSA9ICdTdSZlYWN1dGU7ZG9pcyAoU3ZlbnNrYSknOwokbGFuZ1snZmEnXSA9ICdQZXJzYW4gKEZhcnNpKSc7CiRsYW5nWydydSddID0gJ1J1c3NlIChSdXNzaWFuKSc7CiRsYW5nWydwdC1CUiddID0gJ1BvcnR1Z2FpcyBCciZlYWN1dGU7c2lsaWVuIChCcmF6aWxsaWFuIFBvcnR1Z3Vlc2UgLSBzdGFuZGFyZCknOwokbGFuZ1snTG5vbmUnXSA9ICdBdWN1biBhdmVydGlzc2VtZW50JzsKJGxhbmdbJ0wwJ10gPSAnTml2ZWF1IDAnOwokbGFuZ1snTDEnXSA9ICdOaXZlYXUgMSc7CiRsYW5nWydMMiddID0gJ05pdmVhdSAyJzsKJGxhbmdbJ2NzczEnXSA9ICdDU1MgMSAnOwokbGFuZ1snY3NzMiddID0gJ0NTUyAyICc7CiRsYW5nWydjc3MyMSddID0gJ0NTUyAyLjEgJzsKJGxhbmdbJ2NzczMnXSA9ICdDU1MgMyAnOwokbGFuZ1snc3ZnJ10gPSAnU1ZHICc7CiRsYW5nWydzdmdiYXNpYyddID0gJ1NWRyBiYXNpYyAnOwokbGFuZ1snc3ZndGlueSddID0gJ1NWRyB0aW55ICc7CiRsYW5nWydtb2JpbGUnXSA9ICdtb2JpbGUgJzsKJGxhbmdbJ2F0c2MtdHYnXSA9ICdhdHNjLXR2ICc7CiRsYW5nWyd0diddID0gJ0EgbCYjMDM5O2F0dGVudGlvbiBkZXMgYXBwYXJlaWxzIGRlIHR5cGUgdCZlYWN1dGU7bCZlYWN1dGU7dmlzaW9uLic7CiRsYW5nWydub25lJ10gPSAnYXVjdW4nOwokbGFuZ1snSW5saW5lJ10gPSAnZCZlYWN1dGU7dGVjdGlvbiBhdXRvbWF0aXF1ZSc7CiRsYW5nWydIVE1MNSddID0gJ0hUTUw1IChleHBlcmltZW50YWwpICc7CiRsYW5nWydYSFRNTF8xXzBfU3RyaWN0J10gPSAnWEhUTUwgMS4wIFN0cmljdCc7CiRsYW5nWydYSFRNTF8xXzBfVHJhbnNpdGlvbmFsJ10gPSAnWEhUTUwgMS4wIFRyYW5zaXRpb25hbCc7CiRsYW5nWydYSFRNTF8xXzBfRnJhbWVzZXQnXSA9ICdYSFRNTCAxLjAgRnJhbWVzZXQnOwokbGFuZ1snSFRNTF80XzAxX1N0cmljdCddID0gJ0hUTUwgNC4wMSBTdHJpY3QnOwokbGFuZ1snSFRNTF80XzAxX1RyYW5zaXRpb25hbCddID0gJ0hUTUwgNC4wMSBUcmFuc2l0aW9uYWwnOwokbGFuZ1snSFRNTF80XzAxX0ZyYW1lc2V0J10gPSAnSFRNTCA0LjAxIEZyYW1lc2V0JzsKJGxhbmdbJ0hUTUxfM18yJ10gPSAnSFRNTCAzLjInOwokbGFuZ1snSFRNTF8yXzAnXSA9ICdIVE1MIDIuMCc7CiRsYW5nWydJU08vSUVDXzE1NDQ1OjIwMDBfKCJJU09fSFRNTCIpJ10gPSAnSVNPL0lFQyAxNTQ0NToyMDAwICgmcXVvdDtJU08gSFRNTCZxdW90OyknOwokbGFuZ1snWEhUTUxfMV8xJ10gPSAnWEhUTUwgMS4xJzsKJGxhbmdbJ1hIVE1MXytfUkRGYSddID0gJ1hIVE1MICsgUkRGYSc7CiRsYW5nWydYSFRNTF9CYXNpY18xXzAnXSA9ICdYSFRNTCBCYXNpYyAxLjAnOwokbGFuZ1snWEhUTUxfQmFzaWNfMV8xJ10gPSAnWEhUTUwgQmFzaWMgMS4xJzsKJGxhbmdbJ1hIVE1MX01vYmlsZV9Qcm9maWxlXzFfMiddID0gJ1hIVE1MIE1vYmlsZSBQcm9maWxlIDEuMic7CiRsYW5nWydYSFRNTC1QcmludF8xXzAnXSA9ICdYSFRNTC1QcmludCAxLjAnOwokbGFuZ1snWEhUTUxfMV8xX3BsdXNfTWF0aE1MXzJfMCddID0gJ1hIVE1MIDEuMSBwbHVzIE1hdGhNTCAyLjAgJzsKJGxhbmdbJ1hIVE1MXzFfMV9wbHVzX01hdGhNTF8yXzBfcGx1c19TVkdfMV8xJ10gPSAnWEhUTUwgMS4xIHBsdXMgTWF0aE1MIDIuMCBwbHVzIFNWRyAxLjEgJzsKJGxhbmdbJ01hdGhNTF8yXzAnXSA9ICdNYXRoTUwgMi4wJzsKJGxhbmdbJ1NWR18xXzAnXSA9ICdTVkcgMS4wJzsKJGxhbmdbJ1NWR18xXzEnXSA9ICdTVkcgMS4xJzsKJGxhbmdbJ1NWR18xXzFfVGlueSddID0gJ1NWRyAxLjEgVGlueSc7CiRsYW5nWydTVkdfMV8xX0Jhc2ljJ10gPSAnU1ZHIDEuMSBCYXNpYyc7CiRsYW5nWydTTUlMXzFfMCddID0gJ1NNSUwgMS4wJzsKJGxhbmdbJ1NNSUxfMl8wJ10gPSAnU01JTCAyLjAnOwokbGFuZ1snZGVmYXVsdFBhZ2VfbGFibGUnXSA9ICdSZXYmZWFjdXRlO3JpZmllciBjZXR0ZSBwYWdlJzsKJGxhbmdbJ2VuY29kaW5nX2xhYmxlJ10gPSAnRW5jb2RhZ2UnOwokbGFuZ1snZGV0ZWN0J10gPSAnZCZlYWN1dGU7dGVjdGlvbiBhdXRvbWF0aXF1ZSc7CiRsYW5nWyd1dGYtOCddID0gJ3V0Zi04IChVbmljb2RlLCB3b3JsZHdpZGUpICc7CiRsYW5nWyd1dGYtMTYnXSA9ICd1dGYtMTYgKFVuaWNvZGUsIHdvcmxkd2lkZSkgJzsKJGxhbmdbJ2lzby04ODU5LTEnXSA9ICdpc28tODg1OS0xIChXZXN0ZXJuIEV1cm9wZSkgJzsKJGxhbmdbJ2lzby04ODU5LTInXSA9ICdpc28tODg1OS0yIChDZW50cmFsIEV1cm9wZSkgJzsKJGxhbmdbJ2lzby04ODU5LTMnXSA9ICdpc28tODg1OS0zIChTb3V0aGVybiBFdXJvcGUpICc7CiRsYW5nWydpc28tODg1OS00J10gPSAnaXNvLTg4NTktNCAoTm9ydGggRXVyb3BlYW4pICc7CiRsYW5nWydpc28tODg1OS01J10gPSAnaXNvLTg4NTktNSAoQ3lyaWxsaWMpICc7CiRsYW5nWydpc28tODg1OS02LWknXSA9ICdpc28tODg1OS02LWkgKEFyYWJpYykgJzsKJGxhbmdbJ2lzby04ODU5LTcnXSA9ICdpc28tODg1OS03IChHcmVlaykgJzsKJGxhbmdbJ2lzby04ODU5LTgnXSA9ICdpc28tODg1OS04IChIZWJyZXcsIHZpc3VhbCkgJzsKJGxhbmdbJ2lzby04ODU5LTgtaSddID0gJ2lzby04ODU5LTgtaSAoSGVicmV3LCBsb2dpY2FsKSAnOwokbGFuZ1snaXNvLTg4NTktOSddID0gJ2lzby04ODU5LTkgKFR1cmtpc2gpICc7CiRsYW5nWydpc28tODg1OS0xMCddID0gJ2lzby04ODU5LTEwIChMYXRpbiA2KSAnOwokbGFuZ1snaXNvLTg4NTktMTEnXSA9ICdpc28tODg1OS0xMSAoTGF0aW4vVGhhaSkgJzsKJGxhbmdbJ2lzby04ODU5LTEzJ10gPSAnaXNvLTg4NTktMTMgKExhdGluIDcsIEJhbHRpYyBSaW0pICc7CiRsYW5nWydpc28tODg1OS0xNCddID0gJ2lzby04ODU5LTE0IChMYXRpbiA4LCBDZWx0aWMpICc7CiRsYW5nWydpc28tODg1OS0xNSddID0gJ2lzby04ODU5LTE1IChMYXRpbiA5KSAgJzsKJGxhbmdbJ2lzby04ODU5LTE2J10gPSAnaXNvLTg4NTktMTYgKExhdGluIDEwKSAgJzsKJGxhbmdbJ3VzLWFzY2lpJ10gPSAndXMtYXNjaWkgKGJhc2ljIEVuZ2xpc2gpICAnOwokbGFuZ1snZXVjLWpwJ10gPSAnZXVjLWpwIChKYXBhbmVzZSwgVW5peCkgICc7CiRsYW5nWydzaGlmdF9qaXMnXSA9ICdzaGlmdF9qaXMgKEphcGFuZXNlLCBXaW4vTWFjKSAnOwokbGFuZ1snaXNvLTIwMjItanAnXSA9ICdpc28tMjAyMi1qcCAoSmFwYW5lc2UsIGVtYWlsKSAnOwokbGFuZ1snZXVjLWtyJ10gPSAnZXVjLWtyIChLb3JlYW4pICc7CiRsYW5nWydnYjIzMTInXSA9ICdnYjIzMTIgKENoaW5lc2UsIHNpbXBsaWZpZWQpICc7CiRsYW5nWydnYjE4MDMwJ10gPSAnZ2IxODAzMCAoQ2hpbmVzZSwgc2ltcGxpZmllZCkgJzsKJGxhbmdbJ2JpZzUnXSA9ICdiaWc1IChDaGluZXNlLCB0cmFkaXRpb25hbCkgJzsKJGxhbmdbJ2JpZzUtSEtTQ1MnXSA9ICdCaWc1LUhLU0NTIChDaGluZXNlLCBIb25nIEtvbmcpICc7CiRsYW5nWyd0aXMtNjIwJ10gPSAndGlzLTYyMCAoVGhhaSkgJzsKJGxhbmdbJ2tvaTgtciddID0gJ2tvaTgtciAoUnVzc2lhbikgJzsKJGxhbmdbJ2tvaTgtdSddID0gJ2tvaTgtdSAoVWtyYWluaWFuKSAnOwokbGFuZ1snaXNvLWlyLTExMSddID0gJ2lzby1pci0xMTEgKEN5cmlsbGljIEtPSS04KSAgICc7CiRsYW5nWydtYWNpbnRvc2gnXSA9ICdtYWNpbnRvc2ggKE1hY1JvbWFuKSAnOwokbGFuZ1snd2luZG93cy0xMjUwJ10gPSAnd2luZG93cy0xMjUwIChDZW50cmFsIEV1cm9wZSkgJzsKJGxhbmdbJ3dpbmRvd3MtMTI1MSddID0gJ3dpbmRvd3MtMTI1MSAoQ3lyaWxsaWMpICc7CiRsYW5nWyd3aW5kb3dzLTEyNTInXSA9ICd3aW5kb3dzLTEyNTIgKFdlc3Rlcm4gRXVyb3BlKSAnOwokbGFuZ1snd2luZG93cy0xMjUzJ10gPSAnd2luZG93cy0xMjUzIChHcmVlaykgJzsKJGxhbmdbJ3dpbmRvd3MtMTI1NCddID0gJ3dpbmRvd3MtMTI1NCAoVHVya2lzaCkgJzsKJGxhbmdbJ3dpbmRvd3MtMTI1NSddID0gJ3dpbmRvd3MtMTI1NSAoSGVicmV3KSAnOwokbGFuZ1snd2luZG93cy0xMjU2J10gPSAnd2luZG93cy0xMjU2IChBcmFiaWMpICc7CiRsYW5nWyd3aW5kb3dzLTEyNTcnXSA9ICd3aW5kb3dzLTEyNTcgKEJhbHRpYyBSaW0pICc7CiRsYW5nWydhdXRvJ10gPSAnQXV0by1nJmVhY3V0ZTtuJmVhY3V0ZTtyJmVhY3V0ZTsnOwokbGFuZ1sndXNlckNob2ljZSddID0gJ0Nob2lzaXNzZXogdW5lIHBhZ2UnOwokbGFuZ1sndXNlckdlbmVyYXRlZCddID0gJ0QmZWFjdXRlO2Zpbmlzc2V6IHZvdHJlIGNvbnRlbnUnOwokbGFuZ1snc2F2ZVZBTHNldHRpbmdzJ10gPSAnRW5yZWdpc3RyZXIgbGVzIHBhcmFtJmVncmF2ZTt0cmVzIGRlIHZhbGlkYXRpb24nOwokbGFuZ1snc2V0dGluZ3MnXSA9ICdQYXJhbSZlZ3JhdmU7dHJlcyc7CiRsYW5nWydzZXR0aW5nc3NhdmVkJ10gPSAnUGFyYW0mZWdyYXZlO3RyZXMgc2F1dmVnYXJkJmVhY3V0ZTtzJzsKJGxhbmdbJ2xlYXZlY29kZSddID0gJ05lIHRvdWNoZXogcGFzIGF1IGNvZGUnOwokbGFuZ1snZm9ybWF0Y29kZSddID0gJ0Zvcm1hdHRleiBiaWVuIGxlIGNvZGUnOwokbGFuZ1snc2NyYW1ibGVjb2RlJ10gPSAnQnJvdWlsbGV6IGxlIGNvZGUnOwokbGFuZ1snY2xlYW5jb2RlJ10gPSAnTmV0dG95ZXIgbGUgY29kZSBlbiBzdXBwcmltYW50IGNlIHF1aSBuJiMwMzk7aW1wb3J0ZSBwYXMnOwokbGFuZ1snc2F2ZXNldHRpbmdzJ10gPSAnU2F1dmVnYXJkZXIgbGVzIHBhcmFtJmVncmF2ZTt0cmVzICc7CiRsYW5nWydtYW5nbGV0eXBldGV4dCddID0gJ0NvbW1lbnQgZmFpcmUgcG91ciBmb3JtYXRlciBsZSBjb2RlJzsKJGxhbmdbJ2JyaWVmJ10gPSAnQnImZWdyYXZlO3ZlJzsKJGxhbmdbJ3ZlcmJvc2UnXSA9ICdWZXJiZXV4JzsKJGxhbmdbJ2NvZGVmaXhlcyddID0gJ0NvZGVzIGZpeGVzJzsKJGxhbmdbJ2ZvcmNlbG93ZXJ0YWdzdGV4dCddID0gJ0ZvcmNlciBsZXMgYmFsaXNlcyBlbiBtaW51c2N1bGVzJzsKJGxhbmdbJ2ZvcmNlbG93ZXJ0YWdzaGVscCddID0gJ1BvdXIgdW5lIG1laWxsZXVyZSBjb21wYXRpYmlsaXQmZWFjdXRlOyBYSFRNTCc7CiRsYW5nWydoaWRlbWVzc2FnZXN0ZXh0J10gPSAnQ2FjaGVyIGxlcyBtZXNzYWdlcyBDb2RlTWFuZ2xlciBlbiBiYXMgZHUgY29kZSAoeClodG1sJzsKJGxhbmdbJ2luZGVudHdpZHRodGV4dCddID0gJ0xhcmdldXIgZGUgbCYjMDM5O2luZGVudGF0aW9uJzsKJGxhbmdbJ3NwYWNlcyddID0gJ0VzcGFjZXMnOwokbGFuZ1snZGVidWdsZXZlbHRleHQnXSA9ICdOaXZlYXUgZHUgZCZlYWN1dGU7YnVnIGVuIHNvcnRpZTonOwokbGFuZ1snZGVidWd0ZXh0J10gPSAnTW9kZSBkJmVhY3V0ZTtidWcgZHUgY29kZSc7CiRsYW5nWydTY3JpcHRfbGlzdCddID0gJ1NjcmlwdHMgJzsKJGxhbmdbJ0Fzc19oZWFkZXInXSA9ICdTY3JpcHRzIHVuaWZpJmVhY3V0ZTtzJzsKJGxhbmdbJ1NhbXBsZVRhZyddID0gJ0V4ZW1wbGUgZGUgYmFsaXNlJzsKJGxhbmdbJ3Byb21wdF9uZXdTY3JpcHQnXSA9ICdBam91dGVyIHVuZSBub3V2ZWF1IHNjcmlwdCc7CiRsYW5nWydwcm9tcHRfbmV3U2NyaXB0QXNzJ10gPSAnQWRkIE5ldyBTY3JpcHQgQXNzaWdubWVudCc7CiRsYW5nWydwcm9tcHRfYWRkdGVtcGxhdGUnXSA9ICdBam91dGVyIHVuIGdhYmFyaXQnOwokbGFuZ1snYWRkTGliX2xhYmVsJ10gPSAnQWpvdXRlciB1bmUgbGlicmFpcmllJzsKJGxhbmdbJ3RpdGxlX0dyb3VwcyddID0gJ0xpc3RlIGRlIHNjcmlwdHMgZ3JvdXAmZWFjdXRlO3MnOwokbGFuZ1sndGl0bGVfU2NyaXB0cyddID0gJ0xpc3RlIGRlIHNjcmlwdHMgdW5pcXVlJzsKJGxhbmdbJ2FyZXlvdXN1cmUnXSA9ICdJbXBvcnRhbnQ6XG5cblNpIGMmIzAzOTtlc3Qgc3VwcHJpbSZlYWN1dGU7LCB0b3V0ZXMgbGVzIGluZm9ybWF0aW9ucyBzZXJvbnQgcGVyZHVlcyFcblxuU2kgdm91cyBhdmV6IGNlIHNjcmlwdCBkYW5zIHVuIGdyb3VwZSB2b3VzIGFsbGV6IGNhc3NlciBsZSBsaWVuIGV0IGRldnJleiAmZWFjdXRlO2RpdGVyIGxlIGdyb3VwZS5cbklsIGVzdCBtaWV1eCBkZSBkJmVhY3V0ZTttYXJyZXIgbGUgcHJvY2Vzc3VzIGRlIHN1cHByZXNzaW9uIGRlcHVpcyBsYSBsaXN0ZSBkZXMgYXNzb2NpYXRpb25zLlxuXG5WT1VTIEFMTEVaICZFYWN1dGU7R0FMRU1FTlQgUEVSRFJFIFZPVFJFIEhJU1RPUklRVUUgREVTIE1PRElGSUNBVElPTlMgUE9VUiBDRSBTQ1JJUFQuICZFY2lyYztURVMgVk9VUyBSJkVhY3V0ZTtFTExFTUVOVCBTVVI/Pz8nOwokbGFuZ1snc21hcnR5SG93J10gPSAnVGhlIHNtYXJ0eSB3b3JrcyBsaWtlIHRoaXMgaW4gSlMgYW5kIENTUy4uLiBXaGVyZSB5b3UmIzAzOTtkIGhhdmUgeyRzbWFydHkubm93fSB5b3UgZG8ge3skc21hcnR5Lm5vd319ICAuICBOb3cgeW91IGNhbiBkbyBzbWFydHkgc3R1ZmYuICBTbWFydHkgMyBhY2NvdW50cyBmb3IgdGhpcyBhbmQgc28gQ01TTVMgMi4wIHdpbGwgbm90IG5lZWQgdGhlIHt7IH19JzsKJGxhbmdbJ3RpcF9nZW5lcmFsX3NtYXJ0eSddID0gJ1RoZSBzbWFydHkgd29ya3MgbGlrZSB0aGlzIGluIEpTIGFuZCBDU1MuLi4gV2hlcmUgeW91JiMwMzk7ZCBoYXZlIHskc21hcnR5Lm5vd30geW91IGRvIHt7JHNtYXJ0eS5ub3d9fSAgLiAgTm93IHlvdSBjYW4gZG8gc21hcnR5IHN0dWZmLiAgU21hcnR5IDMgYWNjb3VudHMgZm9yIHRoaXMgYW5kIHNvIENNU01TIDIuMCB3aWxsIG5vdCBuZWVkIHRoZSB7eyB9fSc7CiRsYW5nWyd0aXBfZ2VuZXJhbF9ncm91cGluZyddID0gJ0Z1c2lvbm5lciBsZXMgZmljaGllcnMgQ1NTIGF1Z21lbnRlIGxhIHZpdGVzc2UgYyZvY2lyYzt0JmVhY3V0ZTsgdXRpbGlzYXRldXIgZXQgdm91cyBhaWRlICZhZ3JhdmU7IHZvdXMgcmFwcHJvY2hlciBkZSBsYSBub3RyZSAmcXVvdDtBJnF1b3Q7IGQmIzAzOTs8YSBocmVmPSJodHRwOi8vZGV2ZWxvcGVyLnlhaG9vLmNvbS95c2xvdy8iIHRhcmdldD0iX2JsYW5rIj55U2xvdzwvYT4nOwokbGFuZ1sndGlwX2VkaXRvcl90YWInXSA9ICdTYXZpZXogdm91cyBxdWUgdm91cyBwb3V2ZXogdXRpbGlzZXIgbGEgdG91Y2hlIFRhYiBwb3VyIGluZGVudGVyIHZvdHJlIGNvZGUgPyBFc3NheWV6IGxlLic7CiRsYW5nWyd0aXBfZWRpdG9yX3NlYXJjaE5yZXBsYWNlJ10gPSAnU2F2aWV6IHZvdXMgcXVlIHZvdXMgcG91dmV6IHV0aWxpc2VyIGxlcyBleHByZXNzaW9ucyByJmVhY3V0ZTtndWxpJmVncmF2ZTtyZXMgcG91ciByYXBpZGVtZW50IHJlY2hlcmNoZXIgZXQgcmVtcGxhY2VyID8gVXRpbGlzZXogQ3RybCtmIGRhbnMgbCYjMDM5OyZlYWN1dGU7ZGl0ZXVyIHBvdXIgYWZmaWNoZXIgbGEgZmVuJmVjaXJjO3RyZSc7CiRsYW5nWyd0aXBfZWRpdG9yX3Jlc2V0SGlnaGxpZ2h0J10gPSAnSWYgeW91IGFyZSBzZWVpbmcgZG91YmxlcyBpbiB0aGUgZWRpdG9yLCBpZTogdGhlIGhpZ2hsaWdodCBpcyBkZXN5bmNyb25pemVkIGZyb20gdGV4dCBqdXN0IHVzZSB0aGUgcmVzZXQgaGlnaGxpZ2h0IGJ1dHRvbiA8aW1nIHdpZHRoPSZxdW90OzIwJnF1b3Q7IGhlaWdodD0mcXVvdDsyMCZxdW90OyBvbm1vdXNlZG93bj0mcXVvdDtlZGl0QXJlYS5yZXN0b3JlQW5kU3dpdGNoQ2xhc3ModGhpcywmIzAzOTtlZGl0QXJlYUJ1dHRvbkRvd24mIzAzOTspOyZxdW90OyBvbm1vdXNlb3V0PSZxdW90O2VkaXRBcmVhLnJlc3RvcmVDbGFzcyh0aGlzKTsmcXVvdDsgb25tb3VzZW92ZXI9JnF1b3Q7ZWRpdEFyZWEuc3dpdGNoQ2xhc3ModGhpcywmIzAzOTtlZGl0QXJlYUJ1dHRvbk92ZXImIzAzOTspOyZxdW90OyBjbGFzcz0mcXVvdDtlZGl0QXJlYUJ1dHRvbk5vcm1hbCZxdW90OyB0aXRsZT0mcXVvdDtyZXNldCBoaWdobGlnaHQgKGVkKSZxdW90OyBzcmM9JnF1b3Q7Li4vbW9kdWxlcy9TY3JpcHREZXBsb3kvaW5jbHVkZXMvZWRpdF9hcmVhL2ltYWdlcy9yZXNldF9oaWdobGlnaHQuZ2lmJnF1b3Q7IGlkPSZxdW90O3Jlc2V0X2hpZ2hsaWdodCZxdW90Oz4nOwokbGFuZ1sndGlwX3RlbXBsYXRlX3NtYXJ0eSddID0gJ1NtYXJ0eSBzeW50YXggaXMgdGhlIHNhbWUgYXMgZXZlcnl3aGVyZSBlbHNlIGp1c3QgYSBzdHJhaWdodCB7JHNtYXJ0eS5ub3d9LiAgVGhlIHt7IH19IGlzIGZvciB0aGUgQ1NTIGFuZCBKUyBhcyB7fSBhcmUgaW4gdGhlaXIgc3ludGF4LiAgU21hcnR5IDMgYWNjb3VudHMgZm9yIHRoaXMgYW5kIHNvIENNU01TIDIuMCB3aWxsIG5vdCBuZWVkIHRoZSB7eyB9fSc7CiRsYW5nWyd0aXBfZ3JvdXBfZHJhZ05kcm9wJ10gPSAndG8gZ2V0IHN0YXJ0ZWQganVzdCBkcmFnIGZyb20gdGhlIHBvb2wgdG8gdGhlIGdyb3VwJiMwMzk7cyBsaXN0JzsKJGxhbmdbJ2FsbCddID0gJ0NvbXBhdGlibGUgcG91ciB0b3VzIGxlcyBhcHBhcmVpbHMuJzsKJGxhbmdbJ2F1cmFsJ10gPSAnQSBsJiMwMzk7YXR0ZW50aW9uIGRlcyBzeW50aCZlYWN1dGU7dGlzZXVycyBkZSB2b2l4Lic7CiRsYW5nWydicmFpbGxlJ10gPSAnQSBsJiMwMzk7YXR0ZW50aW9uIGRlcyBhcHBhcmVpbHMgdGFjdGlsZXMgZW4gYnJhaWxsZS4nOwokbGFuZ1snZW1ib3NzZWQnXSA9ICdBIGwmIzAzOTthdHRlbnRpb24gZGVzIGltcHJpbWFudGVzIGJyYWlsbGUuJzsKJGxhbmdbJ2hhbmRoZWxkJ10gPSAnQSBsJiMwMzk7YXR0ZW50aW9uIGRlcyBhcHBhcmVpbHMgZGUgcG9jaGUgKFBEQSknOwokbGFuZ1sncHJpbnQnXSA9ICdBIGwmIzAzOTthdHRlbnRpb24gZGUgZG9jdW1lbnRzIGltcHJpbSZlYWN1dGU7cyBzdXIgZHUgbWF0JmVhY3V0ZTtyaWVsIG9wYXF1ZSwgZXQgcG91ciBsZXMgZG9jdW1lbnRzIHZpc3VhbGlzJmVhY3V0ZTtzICZhZ3JhdmU7IGwmIzAzOTsmZWFjdXRlO2NyYW4gZW4gcHImZWFjdXRlO3Zpc3VhbGlzYXRpb24gZCYjMDM5O2ltcHJlc3Npb24nOwokbGFuZ1sncHJvamVjdGlvbiddID0gJ0EgbCYjMDM5O2F0dGVudGlvbiBkZXMgcHImZWFjdXRlO3NlbnRhdGlvbnMgcHJvamV0JmVhY3V0ZTtlcywgcGFyIGV4ZW1wbGUgcHJvamVjdGV1cnMgb3UgaW1wcmVzc2lvbnMgc3VyIHRyYW5zcGFyZW50cyc7CiRsYW5nWydzY3JlZW4nXSA9ICdBIGwmIzAzOTthdHRlbnRpb24gcHJpbmNpcGFsZW1lbnQgZGVzICZlYWN1dGU7Y3JhbnMgZCYjMDM5O29yZGluYXRldXJzJzsKJGxhbmdbJ3R0eSddID0gJ0EgbCYjMDM5O2F0dGVudGlvbiBkZXMgbSZlYWN1dGU7ZGlhIHV0aWxpc2FudCBkZXMgY2FyYWN0JmVncmF2ZTtyZXMgZml4ZXMsIHRlbHMgcXVlIHQmZWFjdXRlO2wmZWFjdXRlO3R5cGVzIGV0IHRlcm1pbmF1eC4nOwokbGFuZ1snTWVkaWFUeXBlJ10gPSAnVG91cyA6IGNvbXBhdGlibGUgcG91ciB0b3VzIGxlcyBhcHBhcmVpbHMuPGJyLz4NCmF1cmFsIDogJmFncmF2ZTsgbCYjMDM5O2F0dGVudGlvbiBkZXMgc3ludGgmZWFjdXRlO3Rpc2V1cnMgZGUgdm9peC48YnIvPg0KYnJhaWxsZSA6ICZhZ3JhdmU7IGwmIzAzOTthdHRlbnRpb24gZGVzIGFwcGFyZWlscyB0YWN0aWxlcyBlbiBicmFpbGxlLjxici8+DQplbWJvc3NlZCA6ICAmYWdyYXZlOyBsJiMwMzk7YXR0ZW50aW9uIGRlcyBpbXByaW1hbnRlcyBicmFpbGxlLjxici8+DQpoYW5kaGVsZCA6ICZhZ3JhdmU7IGwmIzAzOTthdHRlbnRpb24gZGVzIGFwcGFyZWlscyBkZSBwb2NoZSAoUERBKS48YnIvPg0KcHJpbnQgOiAmYWdyYXZlOyBsJiMwMzk7YXR0ZW50aW9uIGRlIGRvY3VtZW50cyBpbXByaW0mZWFjdXRlO3Mgc3VyIGR1IG1hdCZlYWN1dGU7cmllbCBvcGFxdWUsIGV0IHBvdXIgbGVzIGRvY3VtZW50cyB2aXN1YWxpcyZlYWN1dGU7cyAmYWdyYXZlOyBsJiMwMzk7JmVhY3V0ZTtjcmFuIGVuIHByJmVhY3V0ZTt2aXN1YWxpc2F0aW9uIGQmIzAzOTtpbXByZXNzaW9uLjxici8+DQpwcm9qZWN0aW9uIDogJmFncmF2ZTsgbCYjMDM5O2F0dGVudGlvbiBkZXMgcHImZWFjdXRlO3NlbnRhdGlvbnMgcHJvamV0JmVhY3V0ZTtlcywgcGFyIGV4ZW1wbGUgcHJvamVjdGV1cnMgb3UgaW1wcmVzc2lvbnMgc3VyIHRyYW5zcGFyZW50czxici8+DQpzY3JlZW4gOiAmYWdyYXZlOyBsJiMwMzk7YXR0ZW50aW9uIHByaW5jaXBhbGVtZW50IGRlcyAmZWFjdXRlO2NyYW5zIGQmIzAzOTtvcmRpbmF0ZXVycy48YnIvPg0KdHR5IDogJmFncmF2ZTsgbCYjMDM5O2F0dGVudGlvbiBkZXMgbSZlYWN1dGU7ZGlhIHV0aWxpc2FudCBkZXMgY2FyYWN0JmVncmF2ZTtyZXMgZml4ZXMsIHRlbHMgcXVlIHQmZWFjdXRlO2wmZWFjdXRlO3R5cGVzIGV0IHRlcm1pbmF1eC48YnIvPg0KdHYgOiAmYWdyYXZlOyBsJiMwMzk7YXR0ZW50aW9uIGRlcyBhcHBhcmVpbHMgZGUgdHlwZSB0JmVhY3V0ZTtsJmVhY3V0ZTt2aXNpb24uJzsKJGxhbmdbJ0NhbmNlbGVkJ10gPSAnWW91IENhbmNlbGVkIG91dCBvZiB0aGUgb3BlcmF0aW9uLiAgQW55IFdvcmsgeW91IG1heSBoYXZlIGVudGVyZWQgaGFzIGJlZW4gbG9zdC4nOwokbGFuZ1snQnRuQURERUQnXSA9ICdWb3VzIHZlbmV6IGQmIzAzOTtham91dGVyIHVuIG5vdXZlYXUgc2NyaXB0JzsKJGxhbmdbJ0J0bkVESVRFRCddID0gJ1ZvdXMgdmVuZXogZGUgbW9kaWZpZXIgdW4gc2NyaXB0IGV4aXN0YW50JzsKJGxhbmdbJ0J0bkRFTEVURUQnXSA9ICdWb3VzIHZlbmV6IGRlIHN1cHByaW1lciB1biBzY3JpcHQgZXhpc3RhbnQnOwokbGFuZ1sndHlwZV9sYWJlbCddID0gJ1R5cGUmbmJzcDsnOwokbGFuZ1sncmV2aXNpb24nXSA9ICdSJmVhY3V0ZTt2aXNpb24nOwokbGFuZ1snaXNFZGl0J10gPSAnZXN0IG1vZGlmaSZlYWN1dGU7JzsKJGxhbmdbJ3N0ZWFsJ10gPSAnVm9sZXogbGUgZG9jdW1lbnQnOwokbGFuZ1snZ2V0X3RhZyddID0gJ09idGVuZXogY2V0dGUgYmFsaXNlJzsKJGxhbmdbJ2VtdHB5R3JvdXAnXSA9ICdWb3VzIGRldnJleiBham91dGVyIHVuIHNjcmlwdCBhdSBncm91cCBhdmFudCBkZSBwb3V2b2lyIGwmIzAzOTthcHBlbGVyJzsKJGxhbmdbJ2FsbFNjcmlwdHNVc2VkJ10gPSAnVG91cyBsZXMgc2NyaXB0IHNvbnQgdXRpbGlzJmVhY3V0ZTtzJzsKJGxhbmdbJ05vX1NjcmlwdHMnXSA9ICdJbCBuJiMwMzk7eSBhIGFjdHVlbGxlbWVudCBhdWN1biBzY3JpcHQnOwokbGFuZ1snTm9fR3JvdXBzJ10gPSAnSWwgbiYjMDM5O3kgYSBhY3R1ZWxsZW1lbnQgYXVjdW4gZ3JvdXBlJzsKJGxhbmdbJ3NldGluYWN0aXZlJ10gPSAnRCZlYWN1dGU7c2FjdGl2ZXIgbGUgZ2FiYXJpdCc7CiRsYW5nWydzZXRhY3RpdmUnXSA9ICdBY3RpdmVyIGxlIGdhYmFyaXQnOwokbGFuZ1snbm90ZGVmYXVsdCddID0gJ04mIzAzOTtlc3QgcGFzIGxlIGdhYmFyaXQgcGFyIGQmZWFjdXRlO2ZhdXQuJzsKJGxhbmdbJ25vdHZhbGlkJ10gPSAnTGVzIGZldWlsbGVzIGRlIHN0eWxlcyBhc3NvY2kmZWFjdXRlO2VzIG4mIzAzOTtvbnQgcGFzICZlYWN1dGU7dCZlYWN1dGU7IGNvcnJlY3RlbWVudCBwYXJhbSZlYWN1dGU7dHImZWFjdXRlOyBwb3VyIGNlIGdhYmFyaXQnOwokbGFuZ1sndGVtcGxhdGVfdGFiJ10gPSAnZ2FiYXJpdCBkZSBmb3JtdWxhaXJlIGRlIGNoYW5nZW1lbnQgZGUgc3R5bGUnOwokbGFuZ1sncGFnZV90ZW1wbGF0ZXNfdGFiJ10gPSAnR2FiYXJpdCBkZSBwYWdlJzsKJGxhbmdbJ3N1Ym1pdCddID0gJ1NvdW1ldHRyZSc7CiRsYW5nWydhcHBseSddID0gJ0FwcGxpcXVlcic7CiRsYW5nWydjYW5jZWwnXSA9ICdBbm51bGVyJzsKJGxhbmdbJ2dvJ10gPSAnQWxsZXInOwokbGFuZ1sncHJldmlldyddID0gJ1ByJmVhY3V0ZTt2aXN1YWxpc2F0aW9uJzsKJGxhbmdbJ2lubGluZWhlbHAnXSA9ICdBaWRlJzsKJGxhbmdbJ3NjaXB0b3B0aW9ucyddID0gJ09wdGlvbnMnOwokbGFuZ1sncGVyc2lzdGVudCddID0gJ1BlcnNpc3RhbnQnOwokbGFuZ1sncHJlZmVycmVkJ10gPSAnUHImZWFjdXRlO2YmZWFjdXRlO3ImZWFjdXRlOyc7CiRsYW5nWydhbHRlcm5hdGUnXSA9ICdBbHRlcm5hdGlmJzsKJGxhbmdbJ25hbWUnXSA9ICdOb20nOwokbGFuZ1sndGl0bGUnXSA9ICdUaXRyZSc7CiRsYW5nWydpZCddID0gJ0lEJzsKJGxhbmdbJ2FjdGl2ZSddID0gJ0FjdGlmJzsKJGxhbmdbJ2RlZmF1bHQnXSA9ICdEJmVhY3V0ZTtmYXVsdCc7CiRsYW5nWyd2YWxpZCddID0gJ1ZhbGlkZSc7CiRsYW5nWyd1c2FnZV9jb3VudCddID0gJ1VzYWdlJzsKJGxhbmdbJ3llcyddID0gJ091aSc7CiRsYW5nWydubyddID0gJ05vbic7CiRsYW5nWydlZGl0Y3NzJ10gPSAnTW9kaWZpZXIgbCYjMDM5O2Fzc29jaWF0aW9uIGRlcyBmZXVpbGxlcyBkZSBzdHlsZSc7CiRsYW5nWydlZGl0dGVtcGxhdGUnXSA9ICdNb2RpZmllciBsZSBnYWJhcml0IGRlIGNvbnRlbnUnOwokbGFuZ1snZGVsZXRldGVtcGxhdGUnXSA9ICdTdXBwcmltZXIgbGUgZ2FiYXJpdCc7CiRsYW5nWydjb3B5dGVtcGxhdGUnXSA9ICdEdXBwbGlxdWVyIGxlIGdhYmFyaXQnOwokbGFuZ1sncHJvbXB0X3N0eWxlc2hlZXQnXSA9ICdTJmVhY3V0ZTtsZWN0aW9ubmVyIHVuIHN0eWxlIGRlIHBhZ2UnOwokbGFuZ1sncHJvbXB0X3RlbXBsYXRlJ10gPSAnR2FiYXJpdCc7CiRsYW5nWydwcm9tcHRfZ3JvdXBuYW1lJ10gPSAnTm9tIGR1IGdyb3VwZSc7CiRsYW5nWydwcm9tcHRfYWRkZ3JvdXAnXSA9ICdBam91dGVyIHVuIGdyb3VwZSAnOwokbGFuZ1sncHJvbXB0X2dyb3VwdHlwZSddID0gJ1R5cGUgZGUgR3JvdXBlJzsKJGxhbmdbJ3Byb21wdF9hZGQnXSA9ICdBam91dGVyJzsKJGxhbmdbJ3Byb21wdF9zZWxlY3RvbmUnXSA9ICdTJmVhY3V0ZTtsZWN0aW9ubmVyIHVuJzsKJGxhbmdbJ3Byb21wdF9hZGRfYWx0ZXJuYXRlJ10gPSAnQWpvdXRlciB1bmUgYWx0ZXJuYXRpdmUnOwokbGFuZ1snZXJyb3JfcGxlYXNlX3NlbGVjdF9zdHlsZXNoZWV0J10gPSAnVmV1aWxsZXogc2VsZWN0aW9ubmVyIHVuZSBmZXVpbGxlIGRlIHN0eWxlJzsKJGxhbmdbJ3VzZXJMb2dzJ10gPSAnVm9pciBsJiMwMzk7aGlzdG9yaXF1ZSBkJiMwMzk7dXRpbGlzYXRpb24nOwokbGFuZ1snU2NyaXB0U2V0X2xhYmVsJ10gPSAnSUQgZHUgc2NyaXB0ICc7CiRsYW5nWydzY3JpcHRUeXBlX2xhYmVsJ10gPSAnVHlwZSBkZSBzY3JpcHQgJzsKJGxhbmdbJ1NjcmlwdE5hbWVfbGFiZWwnXSA9ICdOb20gZHUgc2NyaXB0JzsKJGxhbmdbJ3RlbXBsYXRlbmFtZV9sYWJlbCddID0gJ05vbSBkdSBnYWJhcml0JzsKJGxhbmdbJ1NpbmdsZUNvZGVfbGFiZWwnXSA9ICdBcHBlbCBkdSBzY3JpcHQgc2ltcGxlIHBhciBkJmVhY3V0ZTtmYXV0JzsKJGxhbmdbJ0dyb3VwdFNpemVfbGFiZWwnXSA9ICdUb3RhbCc7CiRsYW5nWydub3Rlc19sYWJlbCddID0gJ05vdGVzJzsKJGxhbmdbJ2RvY1R5cGVfbGFibGUnXSA9ICdEb2N0eXBlJzsKJGxhbmdbJ1ZhbEhUTUxWZXJib3NlX2xhYmxlJ10gPSAnQ2hlY2sgVmVyYm9zZWx5JzsKJGxhbmdbJ1Nob3dWYWxfbGFibGUnXSA9ICdHYXJkZSBsZXMgbWVzc2FnZXMgb3V2ZXJ0cyc7CiRsYW5nWydUdXJuT05WYWxfbGFibGUnXSA9ICdNZXR0cmUgbGEgdmFsaWRhdGlvbiBzdXIgPHN0cm9uZz5PTjwvc3Ryb25nPic7CiRsYW5nWydob3RMaW5rQ2hlY2tfbGFibGUnXSA9ICdEbyBIb3RMaW5rIENoZWNrJzsKJGxhbmdbJ1RydW5PbmhvdExpbmtDaGVjayddID0gJ1lvdSBuZWVkIHRvIHR1cm4gb24gdGhlIEhvdExpbmsgQ2hlY2snOwokbGFuZ1snZmlsdGVyUHJvcF9sYWJsZSddID0gJyBGaWx0ZXIgb3V0IHByb3BlcnRpZXMgdG8gaGVscCB2YWxpZGF0ZSc7CiRsYW5nWydDU1Nwcm9maWxlX2xhYmxlJ10gPSAnUHJvZmlsIENTUyc7CiRsYW5nWyd1c2VybWVkaXVtX2xhYmxlJ10gPSAnIFVzZXIgTWVkaXVtJzsKJGxhbmdbJ1ZBTExhbmdfbGFibGUnXSA9ICcgTGFuZ2FnZSc7CiRsYW5nWyd3M2NDU1N3YXJuaW5nX2xhYmxlJ10gPSAnIE5pdmVhdSBkJiMwMzk7YXZlcnRpc3NlbWVudCB3M2MgQ1NTJzsKJGxhbmdbJ01lZGlhVHlwZV9sYWJlbCddID0gJ1R5cGUgZGUgbSZlYWN1dGU7ZGlhJzsKJGxhbmdbJ01pbmlmeV9sYWJlbCddID0gJ1ByZSBNaW5pZmllZCc7CiRsYW5nWyd0dXJuT2ZmUHJlbG9hZF9sYWJlbCddID0gJ1R1cm4gb2ZmIHVybCBwcmVsb2FkJzsKJGxhbmdbJ0NyZWF0aW9uRGF0ZV9sYWJlbCddID0gJ0RhdGUgZGUgY3ImZWFjdXRlO2F0aW9uJzsKJGxhbmdbJ01vZGlmZWREYXRlX2xhYmVsJ10gPSAnRGF0ZSBkZSBtb2RpZmljYXRpb24nOwokbGFuZ1sncGF0aE9wdGlvbl9sYWJlbCddID0gJ1V0aWxpc2UgdW4gY2hlbWluIDxlbT4odXNlICZxdW90Oy91cGxvYWRzLy4uLiZxdW90Oyk8L2VtPic7CiRsYW5nWydyb290VVJMT3B0aW9uX2xhYmVsJ10gPSAnVXRpbGlzZSB1biBVUkwgcmFjaW5lIHNwJmVhY3V0ZTtjaWZpcXVlIDxlbT4odXNlIHNjaGVtYSAmcXVvdDtodHRwczovL3N1Yi5kb21haW4udGxkLyZxdW90Oyk8L2VtPic7CiRsYW5nWydHcm9vdFVSTCddID0gJ0dsb2JhbCBTY3JpcHQgUm9vdCBVUkwnOwokbGFuZ1snZW1wdHljYWNoZUVycm9yX2RvQXVkaXQnXSA9ICdmYWlsZWQgdG8gZW1wdHkgdGhlIGNhY2hlIGF0JzsKJGxhbmdbJ2VtcHRpZWRDYWNoX2RvQXVkaXQnXSA9ICdlbXB0aWVkIHRoZSBzY3JpcHQgY2FjaGUnOwokbGFuZ1snY2xlYXJlZFJldmlzaW9uX2RvQXVkaXQnXSA9ICdjbGVhcmVkIHRoZSByZXZpc2lvbiBoaXN0b3J5IGZvcic7CiRsYW5nWydDaGVja2VkT3V0X2RvQXVkaXQnXSA9ICdDaGVja2VkIG91dCBzY3JpcHQgJzsKJGxhbmdbJ3JlbGVhc2VkX2RvQXVkaXQnXSA9ICdyZWxlYXNlZCBzY3JpcHQgJzsKJGxhbmdbJ1NjcmlwdElzX2xhYmVsJ10gPSAnVXNlIHRoaXMgc2NyaXB0IDxlbT4oTm90ZTogSWYgYSBwYXRoIGlzIHNldCwgaXQgd2lsbCBvdmVyIHJpZGUgdGhpcyk8L2VtPic7CiRsYW5nWydkZWJ1Z0lUX2xhYmVsJ10gPSAnZGVidWdJVCc7CiRsYW5nWydkZWJ1Z0lUbm90ZV9sYWJlbCddID0gJzxlbT4oTXVzdCBoYXZlIEZpcmVwaHAgbW9kKTwvZW0+JzsKJGxhbmdbJ2RlYnVnVCddID0gJ0RlYnVnaW5nIE9wdGlvbnMnOwokbGFuZ1snRWRpdEhpc3RvcnknXSA9ICdVc2VyIEhpc3RvcnkgRWRpdGluZyc7CiRsYW5nWydub25lSW5UeXBlJ10gPSAnPGgxPllvdSBtdXN0IGZpcnN0IGFkZCA8YnIvPmEgc2NyaXB0IGluIHRoaXMgdHlwZTwvaDE+JzsKJGxhbmdbJ2dyb3VweVRpdGxlJ10gPSAnTGlzdCBvZiBTY3JpcHRzIGluIGdyb3VwJzsKJGxhbmdbJ3JldmlzaW9uVGl0bGUnXSA9ICdSZXZpc2lvbiBIaXN0b3J5JzsKJGxhbmdbJ3JldmlzaW9uX2xhYmVsJ10gPSAnPHN0cm9uZz5UdXJuIG9uIHRoZSByZXZpc2lvbiBoaXN0b3J5PC9zdHJvbmc+JzsKJGxhbmdbJ3JldmlzaW9uX29wJ10gPSAnPGgxPlJldmlzaW9uPC9oMT4NCjxoMz5UcnVuaW5nIHRoaXMgb2ZmIGRvZXMgbm90IGNsZWFyIHRoZSBoaXN0b3J5IGlmIGl0IHdhcyBvbiBiZWZvcmUuICBMaWtlIGl0IHRvIHBhdXNlLjwvaDM+JzsKJGxhbmdbJ3JldmlzaW9uX0xJTUlUX2xhYmVsJ10gPSAnU2V0IFJldmlzaW9uIExJTUlUJzsKJGxhbmdbJ2NsZWFyUmV2J10gPSAnVmlkZXIgbCYjMDM5O0hpc3RvcmlxdWUnOwokbGFuZ1sndXNlckRlZmF1bHRQYWdlJ10gPSAnPGgxPlVzZXIgcGlja2VkIHBhZ2U8L2gxPg0KPGgzPlNpbmNlIGEgdXNlciBwYWdlIGlzIHRoZSBvcHRpb24geW91IHBpY2tlZCwgeW91JiMwMzk7bGwgd2FudCB0byBjaG9vc2UgYSBwYWdlIGZyb20gdGhlIGRyb3AgZG93biBmb3IgdGhlIGNvbnRlbnQgdG8gcmVuZGVyIG91dC4gIEFnYWluIHRoZSBjb250ZW50IHNob3VsZCB2YWxpZGF0ZS48L2gzPic7CiRsYW5nWydkZWZhdWx0UGFnZSddID0gJzxoMT5DaG9vc2UgSG93PC9oMT4NCjxoMz5XaGF0IHlvdSBhcmUgcGlja2luZyBpcyB0aGUgd2F5IHRvIHZhbGlkYXRlIHlvdXIgdGVtcGxhdGVzLiAgVGhlIGdvYWwgaXMgdG8gcGljayBzb21ldGhpbmcgdGhhdCBkb2VzbiYjMDM5O3QgaGF2ZSBlcnJvcnMgaW4gdGhlIGNvbnRlbnQgeW91IGFyZSB1c2luZy48L2gzPic7CiRsYW5nWyd1c2VyRGVmYXVsdFBhZ2VfbGFibGUnXSA9ICdHaXZlIHRoZSBwYWdlIGFsaWFzJzsKJGxhbmdbJ293bkNvbnRlbnQnXSA9ICc8aDE+RmlsbCBpdCBpbjwvaDE+DQo8aDM+VGhlIGdvYWwgaGVyZSBpcyB0byBnaXZlIHNvbWUgdGhpbmcgdG8gcHJvY2Vzcy4gIEJ5IGZpbGxpbmcgaXQgaW4geW91IGNhbiBjaGVhY2sgdG8gc2VlIGlmIHlvdSBoYXZlIHRoZSBjb250ZW50IHRhZyBhbmQgYmxvY2tzIGZpbGxlZCBpbiBjb3JyZWN0bHkuICBJRTogeW91IGNvdWxkIHB1dCB0aGUgZGVmYXVsdCBvcyB0aGUgYXV0byBnZW5lcmF0ZWQgb25lIHdoZXJlIGl0JiMwMzk7cyA8ZGl2PjxzcGFuPjxwPiBhbmQgb3RoZXIgZWxlbWVudHMgbGlrZSB0aGF0LjwvaDM+JzsKJGxhbmdbJ293bkNvbnRlbnRfbGFibGUnXSA9ICdDcmVhdGUgdGhlIGNvbnRlbnQnOwokbGFuZ1snbG9ja2ZpbGVzVGl0bGUnXSA9ICdGaWNoaWVycyBwcm90JmVhY3V0ZTtnJmVhY3V0ZTtzJzsKJGxhbmdbJ2xvY2tmaWxlc19sYWJlbCddID0gJzxzdHJvbmc+VHVybiBvbiBzZXQgZmlsZXMgdG8gNjQ0PC9zdHJvbmc+JzsKJGxhbmdbJ2xvY2tmaWxlc19vcCddID0gJzxoMT5Qcm90ZWN0IEZpbGVzPC9oMT4NCjxoMz5UdXJuaW5nIHRoaXMgb24gc2V0IHRoZSBjcmVhdGVkIGZpbGUgdG8gYmUgY2htb2QgdG8gNjQ0LiAgVGhpcyB3aWxsIGhlbHAgdG8gcHJvdGVjdCB5b3UgZnJvbSBKUyBpbnRydXNpb24gYXR0YWNrcy48L2gzPic7CiRsYW5nWyd1c2VFZGl0b3JUaXRsZSddID0gJ1BhcmFtJmVncmF2ZTt0cmVzIGRlIGwmIzAzOTsmZWFjdXRlO2RpdGV1cic7CiRsYW5nWyd1c2VFZGl0b3JfbGFiZWwnXSA9ICc8c3Ryb25nPlR1cm4gb24gdGhlIGVkaXRvcjwvc3Ryb25nPic7CiRsYW5nWyd1c2VFZGl0b3Jfb3AnXSA9ICc8aDE+VHVybiBvbiBFZGl0b3I8L2gxPg0KPGgzPlR1cm5pbmcgdGhpcyBvbiBzd2lsbCBoZWxwIHlvdSBzZWUgdGhlIGNvZGUgeW91ciB3b3JraW5nIHdpdGguICBJdCBoaW50cyB0byBjb3JyZWN0IHN5bnRheCB2aWEgaGlnaGxpZ2h0aW5nLjwvaDM+JzsKJGxhbmdbJ3ByZWxvYWRfQ1NTaW1hZ2VUaXRsZSddID0gJ1ByZWxvYWQgQ3NzIEltYWdlcyc7CiRsYW5nWydwcmVsb2FkX0NTU2ltYWdlX2xhYmVsJ10gPSAnPHN0cm9uZz5UdXJuIG9uIFByZWxvYWRlZCBDc3MgSW1hZ2VzPC9zdHJvbmc+JzsKJGxhbmdbJ3ByZWxvYWRfQ1NTaW1hZ2UnXSA9ICc8aDE+UHJlbG9hZCBDc3MgSW1hZ2VzPC9oMT4NCjxoMz5JZiB5b3UgaGF2ZSB5b3VyIHN5c3RlbSBhbGwgc2V0IHVwIHJpZ2h0LCB0aGlzIHdpbGwgaGVscCB5b3UgZ2V0IGEgZmFzdCBwYXJhbGxlbCBkb3duIGxvYWQgb2YgYWxsIGVsZW1lbnRzLjwvaDM+JzsKJGxhbmdbJ2dsb2JhbHVybCddID0gJzxoMT5TZXQgdGhlIHJvb3QgVVJMPC9oMT4NCjxoMz5Vc2VkIGZvciB3aGVuIHlvdSBuZWVkIFNTTCBzdXBwb3J0IG9yIHdhbnQgdG8gcHVzaCB0aGUgc2NyaXB0cyB0byBhIHN1YmRvbWFpbiB0byBsb3NlIHRoZSBuZWVkbGVzIGNvb2tpZXMuPC9oMz4nOwokbGFuZ1snc21hcnR5T25fbGFiZWwnXSA9ICc8c3Ryb25nPlByb2Nlc3MgU21hcnR5PC9zdHJvbmc+PGJyLz4gZGF0YSBpbiBidXR0b24gZmllbGRzJzsKJGxhbmdbJ3NtYXJ0eU9uJ10gPSAnPGgxPlByb2Nlc3MgU21hcnR5IGRhdGE8L2gxPg0KPGgzPldpdGggdGhpcyB0dXJuZWQgb24geW91IGNhbiBzZXQgdGhlIGJ1dHRvbiBmaWVsZHMgd2l0aCB0aGUgdmFsdWVzIHBhc3NlZCBieSBvdGhlciBtb2R1bGVzIHN1Y2ggYXMgUHJvZHVjdHMgb3IgQ2F0YWxvZ2VyPC9oMz4nOwokbGFuZ1snZmlsZVRpbWVfY3NzX3VybHNfbGFiZWwnXSA9ICc8c3Ryb25nPmhlbHAgYnJlYWsgYSBjbGllbnQgc2lkZSBjYWNoZTwvc3Ryb25nPic7CiRsYW5nWydmaWxlVGltZV9jc3NfdXJscyddID0gJzxoMT5oZWxwIGJyZWFrIGEgY2xpZW50IHNpZGUgY2FjaGU8L2gxPg0KPGgzPlRoaXMgaXMgZG9uZSBieSBhZGRpbmcgYSBmaWxlIGNyZWF0aW9uIHRpbWUgYXQgdGhlIGVuZCBvZiBhIGZpbGUuICBUdXJuaW5nIHRoaXMgb24gd2lsbCBhZGQgdGhpcyB0byBhbGwgbG9jYWwgdXJscy4gKENTUyBvbmx5IGF0bSkgLU5vdGhpbmcgaXMgZG9uZSB0byBob3RsaW5rczwvaDM+JzsKJGxhbmdbJ2VkaXQnXSA9ICdFZGl0ZXInOwokbGFuZ1snZGVsZXRlJ10gPSAnU3VwcHJpbWVyJzsKJGxhbmdbJ0Nsb3NlJ10gPSAnRmVybWVyJzsKJGxhbmdbJ09wZW4nXSA9ICdPdXZyaXInOwokbGFuZ1snZGlyRW1wdHknXSA9ICdMZSByJmVhY3V0ZTtwZXJ0b2lyZSAmZWFjdXRlO3RhaXQgdmlkZSc7CiRsYW5nWydjbGVhblRlbXAnXSA9ICdWaWRlciBsZSByJmVhY3V0ZTtwZXJ0b2lyZSB0ZW1wPyc7CiRsYW5nWyd1clRlbXBQYXRoJ10gPSAnVm90cmUgciZlYWN1dGU7cGVydG9pcmUgZHUgY2FjaGUgZXN0JzsKJGxhbmdbJ0xhc3RNb2QnXSA9ICdEZXJuaSZlZ3JhdmU7cmUgbW9kaWZpY2F0aW9uJzsKJGxhbmdbJ2NhY2hlRmVycm9yJ10gPSAnU2NyaXB0RGVwbG95IGNvdWxkIG5vdCBtYWtlIHRoZSBjYWNoZSBmb2xkZXIsIGNoZWNrIHlvdXIgZmlsZSBwZXJtaXNzaW9ucyBmb3IgdGhlIFVwbG9hZHMgYXJlYS4nOwokbGFuZ1snTmFtZSddID0gJ05vbSc7CiRsYW5nWydQcm9jY2Vzc2luZyddID0gJ1Byb2NjZXNzaW5nJzsKJGxhbmdbJ1NhdmVkJ10gPSAnU2F1dmVnYXJkJmVhY3V0ZTsnOwokbGFuZ1snRG9uZSddID0gJ0ZhaXQnOwokbGFuZ1snVmFsaWRhdGluZyddID0gJ1ZhbGlkYXRpb24nOwokbGFuZ1snR3JvdXB0U2V0X2xhYmVsJ10gPSAnTm9tIGR1IGdyb3VwZSc7CiRsYW5nWydHcm91cHRUeXBlX2xhYmVsJ10gPSAnVHlwZSBkdSBzY3JpcHRzJzsKJGxhbmdbJ1NjcmlwdFBpY2tlcl9sYWJlbCddID0gJ1NjcmlwdCBQb29sJzsKJGxhbmdbJ0xJTkUnXSA9ICdMSUdORSc7CiRsYW5nWydUWVBFJ10gPSAnVFlQRSc7CiRsYW5nWydTVUJUWVBFJ10gPSAnU09VU1RZUEUnOwokbGFuZ1snU1RSSU5HJ10gPSAnVEVYVEUnOwokbGFuZ1snTUVTU0FHRSddID0gJ01FU1NBR0UnOwokbGFuZ1snTEVWRUwnXSA9ICdOSVZFQVUnOwokbGFuZ1snTm90ZXMnXSA9ICdOb3Rlcyc7CiRsYW5nWydXYXJuaW5ncyddID0gJ0F2ZXJ0aXNzZW1lbnRzJzsKJGxhbmdbJ0Vycm9ycyddID0gJ0VycmV1cnMnOwokbGFuZ1snaGlkZGVuJ10gPSAnY2FjaCZlYWN1dGU7JzsKJGxhbmdbJ1NjcmlwdCddID0gJ1NjcmlwdCc7CiRsYW5nWydFVVJMUyddID0gJ1VybHMgZXh0cmFpdGVzJzsKJGxhbmdbJ1JDU1MnXSA9ICdSZW5kZXJlZCBDU1MnOwokbGFuZ1snU0NTUyddID0gJ0NTUyBTdHJ1Y3R1cmUnOwokbGFuZ1snRkNPTlQnXSA9ICdDb250ZW51IGR1IGZpY2hpZXInOwokbGFuZ1snaVVSTCddID0gJ1VSTCBkZSBsJiMwMzk7aW1hZ2UnOwokbGFuZ1snVHlwZSddID0gJ1R5cGUnOwokbGFuZ1snU2l6ZSddID0gJ1RhaWxsZSc7CiRsYW5nWydTdGF0dXMnXSA9ICdTdGF0dXRzJzsKJGxhbmdbJ2hvdGxpbmsnXSA9ICc8c3Ryb25nPkhvdGxpbmtpbmc6PC9zdHJvbmc+IGFwcHJlYXMgdG8gYmUgYSBob3RsaW5rLic7CiRsYW5nWydCcm9rZW5saW5rJ10gPSAnTGllbiBicmlzJmVhY3V0ZTsnOwokbGFuZ1snTk9jc3NJJ10gPSAnQXVjdW5lIGltYWdlIENTUyc7CiRsYW5nWydZZXNWQWxhc3RlciddID0gJzxoMj5Zb3UgdmFsaWRhdGVkISAqKjwvaDI+PGltZyBzdHlsZT0mcXVvdDtib3JkZXI6MDt3aWR0aDo4OHB4O2hlaWdodDozMXB4JnF1b3Q7c3JjPSZxdW90O2h0dHA6Ly9qaWdzYXcudzMub3JnL2Nzcy12YWxpZGF0b3IvaW1hZ2VzL3Zjc3MtYmx1ZSZxdW90O2FsdD0mcXVvdDtWYWxpZCBDU1MhJnF1b3Q7IC8+PGJyLz4gPHN0cm9uZz4qKiB5b3UgYXJlIGZpbHRlcmluZyBlcnJvcnMgYW5kIG1heSBoYXZlIGZpbHRlcmVkIGEgcmVhbCBlcnJvcjwvc3Ryb25nPic7CiRsYW5nWydyZWxvYWRfYWxlcnQnXSA9ICdZb3UgYXJlIHJlbG9hZGluZyB0aGUgc3JjaXB0IGZyb20gdGhlIGxhc3Qgc2F2ZSBwb2ludC4gIFlvdSBoYXZlIHNhdmVkIHRoZSBzY3JpcHQgYWxyZWFkeSBhbmQgaWYgeW91IG5lZWQgdG8gZ28gYmFjayB0byB0aGUgdmVyc2lvbiB3aGVuIHlvdSBmaXJzdCBjYW1lIGluIHRvIGVkaXQgcGxlYXNlIGNoZWNrIHlvdXIgcmV2aXNpb24gaGlzdG9yeS4nOwokbGFuZ1snaW1wb3J0RXhwb3J0J10gPSAnSW1wb3J0L0V4cG9ydCc7CiRsYW5nWydzdGFydEV4cG9ydCddID0gJ1N0YXJ0IEV4cG9ydCc7CiRsYW5nWydzdGFydEltcG9ydCddID0gJ1N0YXJ0IEltcG9ydCc7CiRsYW5nWydDbGVhckltZyddID0gJ1N1cHByaW1lciBsJiMwMzk7aW1hZ2UgZW4gY291cnMnOwokbGFuZ1snRmluaXNoJ10gPSAnVGVybWluZXInOwokbGFuZ1sncmV2ZXJ0J10gPSAnUmV0b3VybmVyJzsKJGxhbmdbJ2Zvcm1fY2FuY2VsJ10gPSAnQW5udWxlcic7CiRsYW5nWydTYXZlJ10gPSAnU2F1dmVnYXJkZXInOwokbGFuZ1snZG9uZSddID0gJ0ZhaXQnOwokbGFuZ1snYWRkJ10gPSAnQWpvdXRlcic7CiRsYW5nWydSRU9SREVSJ10gPSAnUiZlYWN1dGU7b3Jkb25uZXInOwokbGFuZ1snZm9ybV9zdWJtaXQnXSA9ICdTYXV2ZWdhcmRlciBsZXMgcHImZWFjdXRlO2YmZWFjdXRlO3JlbmNlcyc7CiRsYW5nWydtb2RfcHJlZnNfdGl0bGUnXSA9ICdQciZlYWN1dGU7ZiZlYWN1dGU7cmVuY2VzIGR1IG1vZHVsZSc7CiRsYW5nWydwcmVmc3VwZGF0ZWQnXSA9ICdMZXMgcHImZWFjdXRlO2YmZWFjdXRlO3JlbmNlcyBkdSBtb2R1bGUgb250ICZlYWN1dGU7dCZlYWN1dGU7ZXMgbWlzZSAmYWdyYXZlOyBqb3VyLic7CiRsYW5nWydvcHRpb25zdXBkYXRlZCddID0gJ09wdGlvbnMgbWlzZSAmYWdyYXZlOyBqb3VyJzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnU1BFRUQgWU9VUiBTSVRFIFVQIC4uLiEhISEgJmFtcDtidWxsOyBPdXRwdXQgZHluYW1pYyBKUyBmaWxlcyBhbmQgQ1NTIFdJVEggc21hcnR5Li4uICZhbXA7YnVsbDsgU2V0IHRoZSBmaWxlcyB0byB1c2UgYSBzdWJkb21haW4uLi4gJmFtcDtidWxsOyBjYWNoZWQuLi4gJmFtcDtidWxsOyBtaW5pZmllZC4uLiAmYW1wO2J1bGw7IERpZCBJIG1lbnRpb24geW91IGNhbiB1c2Ugc21hcnR5IGluIHlvdXIgSlMgYW5kIENTUyBzY3JpcHQhISEhIC0gU2ltcGxlLCBmbGV4aWJsZSEnOwokbGFuZ1snd2VsY29tZV90ZXh0J10gPSAnPHA+U2FsdXQgITwvcD4nOwokbGFuZ1snaGVscCddID0gJzxsaW5rIG1lZGlhPSZxdW90O3NjcmVlbiZxdW90OyBocmVmPSZxdW90Oy4uL21vZHVsZXMvU2NyaXB0RGVwbG95L0NTUy9NYXN0ZXJDU1MuY3NzJnF1b3Q7IHR5cGU9JnF1b3Q7dGV4dC9jc3MmcXVvdDsgcmVsPSZxdW90O3N0eWxlc2hlZXQmcXVvdDsvPjxkaXYgY2xhc3M9JnF1b3Q7U2ltV3JhcCZxdW90Oz48YiBjbGFzcz0mcXVvdDtyYm90dG9tJnF1b3Q7PjxiIGNsYXNzPSZxdW90O3IxJnF1b3Q7PjwvYj4gPGIgY2xhc3M9JnF1b3Q7cjImcXVvdDs+PC9iPjxiIGNsYXNzPSZxdW90O3IzJnF1b3Q7PjwvYj4gPGIgY2xhc3M9JnF1b3Q7cjQmcXVvdDs+PC9iPjwvYj4NCg0KPGRpdiBjbGFzcz0mcXVvdDtTaW1jb24mcXVvdDs+IDxoMyBjbGFzcz0mcXVvdDtCYWNrTGluayZxdW90Oz48YSBvbmNsaWNrPSJqYXZhc2NyaXB0OndpbmRvdy5oaXN0b3J5LmdvKC0xKSIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPiZhbXA7bHQ7JmFtcDtsdDsgQmFjazwvYT48L2gzPg0KPGgxPldoYXQgRG9lcyBUaGlzIERvPy0tLSB0aGlzIG5lZWRzIHVwZGF0aW5nPC9oMT4NCjxoMj5Xcml0ZSBtYW5hZ2UgYW5kIGRlcGxveSBKUyBhbmQgQ1NTPC9oMj4NCjxhIGlkPSJTY3JpcHREZXBsb3kiPjwvYT4NCjxwPlNjcmlwdERlcGxveSBtb2R1bGUgdGhhdCBjYW4gY29tYmluZSBtdWx0aXBsZSBDU1Mgb3IgSmF2YXNjcmlwdCBmaWxlcywgY29tcHJlc3MgdGhlaXIgY29udGVudHMgKGkuZS4gcmVtb3ZhbCBvZiB1bm5lY2Vzc2FyeSB3aGl0ZXNwYWNlL2NvbW1lbnRzKSwgYW5kIHNlcnZlIHRoZSByZXN1bHRzIHdpdGggSFRUUCBlbmNvZGluZyAoZ3ppcC9kZWZsYXRlKSBhbmQgaGVhZGVycyB0aGF0IGFsbG93IG9wdGltYWwgY2xpZW50LXNpZGUgY2FjaGluZy4gVGhpcyBoZWxwcyB5b3UgZm9sbG93IHNldmVyYWwgb2YgWWFob28hJiMwMzk7cyA8YSBocmVmPSJodHRwOi8vZGV2ZWxvcGVyLnlhaG9vLmNvbS9wZXJmb3JtYW5jZS9pbmRleC5odG1sI3J1bGVzIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub2ZvbGxvdyI+UnVsZXMgZm9yIEhpZ2ggUGVyZm9ybWFuY2UgV2ViIFNpdGVzPC9hPi4gKFNlZSAmYW1wO3F1b3Q7UHJvYmxlbSBEb21haW4mYW1wO3F1b3Q7IGJlbG93IGZvciBtb3JlIGluZm8uKSA8L3A+DQo8aDM+VGhlIFNob3J0IG9mIGl0PC9oMz4NCjxwPldpcnRlIHlvdXIgc2NyaXB0cywgc2V0IHRoZSBvcmRlciBhbmQgU2NyaXB0RGVwbG95IHdpbGwgZG8gdGhlIHJlc3QhPC9wPg0KPHRhYmxlPg0KICA8dGJvZHk+DQogICAgPHRyPg0KICAgICAgPHRkIHN0eWxlPSZxdW90O0JPUkRFUi1SSUdIVDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctUklHSFQ6IDVweDsgQk9SREVSLVRPUDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctTEVGVDogNXB4OyBQQURESU5HLUJPVFRPTTogNXB4OyBCT1JERVItTEVGVDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctVE9QOiA1cHg7IEJPUkRFUi1CT1RUT006ICNhYWEgMXB4IHNvbGlkJnF1b3Q7PjxzdHJvbmc+QmVmb3JlPC9zdHJvbmc+PC90ZD4NCiAgICAgIDx0ZCBzdHlsZT0mcXVvdDtCT1JERVItUklHSFQ6ICNhYWEgMXB4IHNvbGlkOyBQQURESU5HLVJJR0hUOiA1cHg7IEJPUkRFUi1UT1A6ICNhYWEgMXB4IHNvbGlkOyBQQURESU5HLUxFRlQ6IDVweDsgUEFERElORy1CT1RUT006IDVweDsgQk9SREVSLUxFRlQ6ICNhYWEgMXB4IHNvbGlkOyBQQURESU5HLVRPUDogNXB4OyBCT1JERVItQk9UVE9NOiAjYWFhIDFweCBzb2xpZCZxdW90Oz48aW1nIHNyYz0mcXVvdDtodHRwOi8vbXJjbGF5Lm9yZy93cC1jb250ZW50L3VwbG9hZHMvMjAwOC8wOS9maWRkbGVyX2JlZm9yZS5wbmcmcXVvdDsgYWx0PSZxdW90O2FmdGVyJnF1b3Q7IC8+PC90ZD4NCiAgICA8L3RyPg0KICAgIDx0cj4NCiAgICAgIDx0ZCBzdHlsZT0mcXVvdDtCT1JERVItUklHSFQ6ICNhYWEgMXB4IHNvbGlkOyBQQURESU5HLVJJR0hUOiA1cHg7IEJPUkRFUi1UT1A6ICNhYWEgMXB4IHNvbGlkOyBQQURESU5HLUxFRlQ6IDVweDsgUEFERElORy1CT1RUT006IDVweDsgQk9SREVSLUxFRlQ6ICNhYWEgMXB4IHNvbGlkOyBQQURESU5HLVRPUDogNXB4OyBCT1JERVItQk9UVE9NOiAjYWFhIDFweCBzb2xpZCZxdW90Oz48c3Ryb25nPkFmdGVyPC9zdHJvbmc+PC90ZD4NCiAgICAgIDx0ZCBzdHlsZT0mcXVvdDtCT1JERVItUklHSFQ6ICNhYWEgMXB4IHNvbGlkOyBQQURESU5HLVJJR0hUOiA1cHg7IEJPUkRFUi1UT1A6ICNhYWEgMXB4IHNvbGlkOyBQQURESU5HLUxFRlQ6IDVweDsgUEFERElORy1CT1RUT006IDVweDsgQk9SREVSLUxFRlQ6ICNhYWEgMXB4IHNvbGlkOyBQQURESU5HLVRPUDogNXB4OyBCT1JERVItQk9UVE9NOiAjYWFhIDFweCBzb2xpZCZxdW90Oz48aW1nIHNyYz0mcXVvdDtodHRwOi8vbXJjbGF5Lm9yZy93cC1jb250ZW50L3VwbG9hZHMvMjAwOC8wOS9maWRkbGVyX2FmdGVyLnBuZyZxdW90OyBhbHQ9JnF1b3Q7YmVmb3JlJnF1b3Q7IC8+PC90ZD4NCiAgICA8L3RyPg0KICA8L3Rib2R5Pg0KPC90YWJsZT4NCg0KDQoNCjxoMj48YSBpZD0iRmVhdHVyZXMiPjwvYT5GZWF0dXJlczwvaDI+DQo8dWw+DQogIDxsaT5Db21iaW5lcyBhbmQgbWluaWZpZXMgbXVsdGlwbGUgQ1NTIG9yIEphdmFTY3JpcHQgZmlsZXMgaW50byBhIHNpbmdsZSAgIGRvd25sb2FkIDwvbGk+DQogIDxsaT5Vc2VzIGFuIDxhIGhyZWY9Imh0dHA6Ly9jb2RlLmdvb2dsZS5jb20vcC9taW5pZnkvc291cmNlL2Jyb3dzZS90cnVuay9taW4vbGliL0pTTWluLnBocCIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPmVuaGFuY2VkIHBvcnQ8L2E+IG9mIERvdWdsYXMgQ3JvY2tmb3JkJiMwMzk7cyA8YSBocmVmPSJodHRwOi8vd3d3LmNyb2NrZm9yZC5jb20vamF2YXNjcmlwdC9qc21pbi5odG1sIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub2ZvbGxvdyI+SlNNaW4gICBsaWJyYXJ5PC9hPiBhbmQgY3VzdG9tIGNsYXNzZXMgdG8gbWluaWZ5IDxhIGhyZWY9Imh0dHA6Ly9jb2RlLmdvb2dsZS5jb20vcC9taW5pZnkvc291cmNlL2Jyb3dzZS90cnVuay9taW4vbGliL01pbmlmeS9DU1MucGhwIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub2ZvbGxvdyI+Q1NTPC9hPiBhbmQgPGEgaHJlZj0iaHR0cDovL2NvZGUuZ29vZ2xlLmNvbS9wL21pbmlmeS9zb3VyY2UvYnJvd3NlL3RydW5rL21pbi9saWIvTWluaWZ5L0hUTUwucGhwIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub2ZvbGxvdyI+SFRNTDwvYT48L2xpPg0KICA8bGk+Q2FjaGVzIHNlcnZlci1zaWRlIHRvIGF2b2lkIGRvaW5nIHVubmVjZXNzYXJ5IHdvcmsgPC9saT4NCiAgPGxpPlJlc3BvbmRzIHdpdGggYW4gSFRUUCAzMDQgKE5vdCBNb2RpZmllZCkgcmVzcG9uc2Ugd2hlbiB0aGUgYnJvd3NlciBoYXMgYW4gICB1cC10by1kYXRlIGNhY2hlIGNvcHkgKiogPC9saT4NCiAgPGxpPk1vc3QgbW9kdWxlcyBhcmUgbGF6eS1sb2FkZWQgYXMgbmVlZGVkICgzMDQgcmVzcG9uc2VzIHVzZSBtaW5pbWFsIGNvZGUpICAqKiA8L2xpPg0KICA8bGk+QXV0b21hdGljYWxseSByZXdyaXRlcyByZWxhdGl2ZSBVUklzIGluIGNvbWJpbmVkIENTUyBmaWxlcyB0byBwb2ludCB0byB2YWxpZCBsb2NhdGlvbnMgPC9saT4NCiAgPGxpPldpdGggY2FjaGluZyBlbmFibGVkLCBTY3JpcHREZXBsb3kgaXMgY2FwYWJsZSBvZiBoYW5kbGluZyBodW5kcmVkcyBvZiByZXF1ZXN0cyBwZXIgc2Vjb25kIG9uIGEgbW9kZXJhdGVseSBwb3dlcmZ1bCBzZXJ2ZXIuIDwvbGk+DQogIDxsaT5Db250ZW50LUVuY29kaW5nOiBnemlwLCBiYXNlZCBvbiByZXF1ZXN0IGhlYWRlcnMuIENhY2hpbmcgYWxsb3dzIGl0IHNvIHNlcnZlIGd6aXBwZWQgZmlsZXMgZmFzdGVyIHRoYW4gQXBhY2hlJiMwMzk7cyBtb2RfZGVmbGF0ZSBvcHRpb24hIDwvbGk+DQo8L3VsPg0KPGgzPjxlbT48c3Ryb25nPioqIE5vdGU6PC9zdHJvbmc+IEl0IGlzIGJlc3QgdG8gdXNlIGEgLmh0YWNjZXNzIHNjcmlwdCB0byBzZXQgdGhlIGFnZSB0aW1lcy4gU2NyaXB0RGVwbG95IGlzIGRlc2lnbmVkIGZvciBlZmZpY2llbmN5LCBidXQgZm9yIHZlcnkgaGlnaCB0cmFmZmljIHNpdGVzLCBTY3JpcHREZXBsb3kgbWF5IHNlcnZlIGZpbGVzIHNsb3dlciB0aGFuIHlvdXIgSFRUUGQgZHVlIHRvIHRoZSBDR0kgb3ZlcmhlYWQgb2YgUEhQLiAgVG8gb3ZlciBjb21lIHRoaXMgSnVzdCBjaGVjayAmcXVvdDt1c2UgLmh0YWNjZXNzIGluIG9wdGlvbnMmcXVvdDs8L2VtPjwvaDM+DQo8aDI+PGEgbmFtZT0iUmVxdWlyZW1lbnRzIj48L2E+UmVxdWlyZW1lbnRzPC9oMj4NCjx1bD4NCiAgPGxpPlRoZSBjb21tb25seSBpbnN0YWxsZWQgPGEgaHJlZj0iaHR0cDovL3VzMy5waHAubmV0L21hbnVhbC9lbi96bGliLmluc3RhbGxhdGlvbi5waHAiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij56bGliICAgZXh0ZW5zaW9uPC9hPiBpcyByZWNvbW1lbmRlZCBmb3IgSFRUUCBlbmNvZGluZyBmdW5jdGlvbmFsaXR5LiA8L2xpPg0KPC91bD4NCjxici8+PGJyLz4NCjxoMT5Ib3cgRG8gSSBVc2UgSXQ8L2gxPg0KDQoNCjxoMz5HZXQgYSBzaW5nbGUgc2NyaXB0PC9oMz4NCnVzZSA8c3BhbiBjbGFzcz0mcXVvdDtjb2RlSElHSExJR0hUJnF1b3Q7PntjbXNfbW9kdWxlIG1vZHVsZT1TY3JpcHREZXBsb3kgc2NyaXB0SUQ9JnF1b3Q7MSZxdW90O30gPC9zcGFuPiA8YnIvPjxici8+DQo8aDM+R2V0IGEgc2NyaXB0IGdyb3VwPC9oMz4NCnVzZSA8c3BhbiBjbGFzcz0mcXVvdDtjb2RlSElHSExJR0hUJnF1b3Q7PntjbXNfbW9kdWxlIG1vZHVsZT1TY3JpcHREZXBsb3kgZ3JvdXBJRD0mcXVvdDsxJnF1b3Q7fSA8L3NwYW4+IDxici8+PGJyLz4NCjxoMj5BbGwgb3V0cHV0IGlzIGluIHRoZSBYSFRNTCBmb3JtYXQsIHlvdSBzaG91bGQgd29yayBpbiB0aGF0LjwvaDI+DQoNCjxici8+PGJyLz4NCjxoND5QYXJhbXM8L2g0Pg0KPHVsPg0KPGxpPjxzdHJvbmc+c2NyaXB0SUQ9JnF1b3Q7JnF1b3Q7IDwvc3Ryb25nPjxlbT4oUmVxdWlyZWQvb3B0aW9uYWwpPC9lbT4gPGJyLz58IHNldCB0aGUgSUQgUmVxdWlyZWQgb25seSBpZiBncm91cElEIG5vdCBjYWxsZWQ8YnIvPjwvbGk+DQo8bGk+PHN0cm9uZz5ncm91cElEPSZxdW90OyZxdW90OyA8L3N0cm9uZz48ZW0+KFJlcXVpcmVkL29wdGlvbmFsKTwvZW0+IDxici8+fCBzZXQgdGhlIElEIFJlcXVpcmVkIG9ubHkgaWYgc2NyaXB0SUQgbm90IGNhbGxlZDxici8+PC9saT4NCjxsaT48c3Ryb25nPlN0eXBlPSZxdW90OyZxdW90OyA8L3N0cm9uZz48ZW0+KFJlcXVpcmVkLykgSlMvQ1NTPC9lbT4gPGJyLz58IHNldCB0aGUgSUQgUmVxdWlyZWQgb25seSBpZiBzY3JpcHRJRCBub3QgY2FsbGVkPGJyLz48L2xpPg0KDQo8bGk+PHN0cm9uZz5zbWFydHk9JnF1b3Q7JnF1b3Q7IDwvc3Ryb25nPjxlbT4ob3B0aW9uYWwpIHRydWUvZmFsc2UgPHN0cm9uZz5EZWZhdWx0Om51bGw8L3N0cm9uZz48L2VtPiA8YnIvPnwgVGhpcyBsZXRzIHlvdSBvdmVyIHJpZGUgdGhlIGdsb2JsZXM8YnIvPjwvbGk+DQo8bGk+PHN0cm9uZz5taW5pZnk9JnF1b3Q7JnF1b3Q7IDwvc3Ryb25nPjxlbT4ob3B0aW9uYWwpIHRydWUvZmFsc2UgPHN0cm9uZz5EZWZhdWx0OnRydWU8L3N0cm9uZz48L2VtPiA8YnIvPnwgIFRoaXMgbGV0cyB5b3Ugb3ZlciByaWRlIHRoZSBnbG9ibGVzPGJyLz48L2xpPg0KDQoNCg0KDQoNCg0KPGxpPjxzdHJvbmc+bWVkaWFfdHlwZT0mcXVvdDsmcXVvdDsgPC9zdHJvbmc+PGVtPihvcHRpb25hbCk8L2VtPiA8YnIvPnwgc2V0IE1lZGlhIHR5cGUgZm9yIENTUyBmaWxlcyBoZXJlLi4uIG92ZXJyaWRlcyBkYiBzZXRpbmdzLjxici8+PC9saT4NCjxsaT48c3Ryb25nPmltcG9ydD0mcXVvdDsmcXVvdDsgPC9zdHJvbmc+PGVtPihvcHRpb25hbCkgdHJ1ZS9mYWxzZTwvZW0+IDxici8+fCBzZXQgdGhlIGluY2x1c2lvbiBzdHlsZSBmb3IgQ1NTIGZpbGVzIGhlcmUuLi4gb3ZlcnJpZGVzIGRiIHNldGluZ3MuIEV4OiB0cnVlICBnaXZlcyA8c3R5bGUgdHlwZT1cJnF1b3Q7dGV4dC9jc3NcJnF1b3Q7PkBpbXBvcnQgdXJsKCZxdW90O3VybC9jc3NmaWxlLmNzcyZxdW90Oykgc2NyZWVuOzwvc3R5bGU+PGJyLz48L2xpPg0KDQo8bGk+PHN0cm9uZz5jYWNoZV9idXN0ZXI8L3N0cm9uZz4gPGVtPihvcHRpb25hbCkgPHN0cm9uZz5EZWZhdWx0OmZhbHNlPC9zdHJvbmc+PC9lbT48YnIvPnwgVGhpcyBpcyB0byBpbnN0YW50bHkgdW5jYWNoZSBhbiBzY3JpcHQgb24gdGhlIGNsaWVudCBzaWRlIGFmdGVyIGEgbmV3IHVwbG9hZGVkIHNjcmlwdCBpcyBjcmVhdGVkLi4uIGllOiAxMi5qcz8xMjU1MjI1MDA3ICA8Zm9udCBjb2xvcj0mcXVvdDtyZWQmcXVvdDs+PHN0cm9uZz4oIHRydWUvZmFsc2UgKTwvc3Ryb25nPjwvZm9udD48L2xpPg0KPGxpPjxzdHJvbmc+YXNzaWduPSZxdW90OyZxdW90OyA8L3N0cm9uZz48ZW0+KG9wdGlvbmFsKTwvZW0+IDxici8+fCBBc3NpZ24gdGhlIG91dHB1dCAocmV0dXJuIHRoZSBzbWFydHkgYXNzaWdubWVudCkgIFVzZSBpbiBjb25qdW5jdGlvbiB3aXRoIG91dCB3aXRob3V0IFVSTDwvbGk+DQo8bGk+PHN0cm9uZz5mc2l6ZT0mcXVvdDsmcXVvdDsgPC9zdHJvbmc+PGVtPihvcHRpb25hbCk8L2VtPiA8YnIvPnwgZ2V0IHRoZSBzaXplPC9saT4NCjxsaT48c3Ryb25nPnJvb3Q9JnF1b3Q7JnF1b3Q7IDwvc3Ryb25nPjxlbT4ob3B0aW9uYWwpPC9lbT4gPGJyLz58IFNjcmlwdERlcGxveSBjcmVhdGVzIGEgdGVtcCBkaXJlY3RvciBpbiB0aGUgdXBsb2FkIGZvbGRlci4gIElmIHlvdSBtb3ZlIHRoZSBwYXRoIHRvIHRoZSB1cGxhb2QgdG8gYSBzdWJkb21haW4geW91IG1heSBndWlkZSB0aGUgb3V0cHV0IHdpdGggdGhpcy48L2xpPg0KICAgICAgICA8dWwgc3R5bGU9JnF1b3Q7bGlzdC1zdHlsZS1wb3NpdGlvbjppbnNpZGU7JnF1b3Q7PjxsaT48c3Ryb25nPkV4YXBtbGU6PC9zdHJvbmc+IHlvdSBjaGFuZ2VkIDxDT0RFPiRjb25maWdbJiMwMzk7dXBsb2Fkc19wYXRoJiMwMzk7XSA9ICYjMDM5Oy92YXIvd3d3L3Zob3N0cy9kb21haW4ub3JnL2h0dHBkb2NzL3VwbG9hZHMmIzAzOTs7PC9DT0RFPiA8L2xpPg0KICAgICAgICAgICAgPGxpPjxzdHJvbmc+dG88L3N0cm9uZz4gPENPREU+JGNvbmZpZ1smIzAzOTt1cGxvYWRzX3BhdGgmIzAzOTtdID0gXC92YXIvd3d3L3Zob3N0cy9kb21haW4ub3JnL3N1YmRvbWFpbnMvbWVkaWEvaHR0cGRvY3MvdXBsb2FkcyYjMDM5Ozs8L0NPREU+PC9saT4NCiAgICAgICAgICAgIDxsaT5ub3cgdGhlIHVwbG9hZHMgdXJsIHdvdWxkIG5vdCB3b3JrIGFzIGl0IHdvdWxkIGJlIDx1Pmh0dHA6Ly93d3cuZG9tYWluLm9yZy91cGxvYWRzPC91PjwvbGk+DQogICAgICAgICAgICA8bGk+PHN0cm9uZz5Tbzwvc3Ryb25nPiBpdCBjYW4gYmUgY2hhbmdlZCBoZXJlIHRvIDx1Pmh0dHA6Ly9tZWRpYS5kb21haW4ub3JnL3VwbG9hZHM8L3U+ICA8Zm9udCBjb2xvcj0mcXVvdDtyZWQmcXVvdDs+PHN0cm9uZz4oTk9URTogd2F0Y2ggeW91ciAvICk8L3N0cm9uZz48L2ZvbnQ+PC9saT4NCiAgICAgICAgPC91bD4NCjxsaT48c3Ryb25nPnVybD0mcXVvdDsmcXVvdDsgPC9zdHJvbmc+PGVtPihvcHRpb25hbCk8L2VtPiA8YnIvPnxvdXRwdXRzIHRoZSB1cmwuPC9saT4NCg0KDQoNCg0KCQkNCg0KDQoNCg0KDQoNCg0KDQo8IS0tPGxpPjxzdHJvbmc+U2FuZEJveD10cnVlIDwvc3Ryb25nPjxlbT4ob3B0aW9uYWwpPC9lbT4gPGJyLz58IGZhbHNlPGJyLz48L2xpPg0KDQo8bGk+PHN0cm9uZz5SVU5hY3Rpb249JmFtcDtxdW90OyZhbXA7cXVvdDsgPC9zdHJvbmc+PGVtPihvcHRpb25hbCk8L2VtPiA8YnIvPnwgVURUPGJyLz58IFVSTCA8ZW0+KC4uL3BsdWdpbnMvZnVuY3Rpb24uZmlsZW5hbWUucGhwKTwvZW0+PGJyLz58ICpNb3JlIGNvbWluZyBTb29uKjxici8+PC9saT4NCjxsaT48c3Ryb25nPkxhbmc9JmFtcDtxdW90OyZhbXA7cXVvdDsgPC9zdHJvbmc+PGVtPihvcHRpb25hbCk8L2VtPiA8YnIvPnwgVXNlIENvdW50cnkgQ29kZXMgVG8gZHluYW1pY2x5IHNldCB0aGUgbGFuZ3VhZ2Ugb2YgdGhlIFBheVBhbCBwYWdlPGJyLz48L2xpPi0tPg0KDQo8L3VsPg0KPGJyLz4NCg0KPGJyLz48YnIvPg0KPGgyPjxhIGlkPSJQcm9ibGVtX0RvbWFpbiI+PC9hPlByb2JsZW0gRG9tYWluPC9oMj4NCjxwPlBhZ2VzIHRoYXQgcmVmZXIgdG8gbXVsdGlwbGUgQ1NTIG9yIEphdmFTY3JpcHQgZmlsZXMgb2Z0ZW4gc3VmZmVyIGZyb20gc2xvd2VyICAgcGFnZSBsb2FkcywgZHVlIHRvIHRoZSBicm93c2VyIHJlcXVlc3RpbmcgZWFjaCBmaWxlIGluZGl2aWR1YWxseS4gTWFueSBicm93c2VycyAgIGFsc28gYXJlIGxpbWl0ZWQgdG8gYSBmZXcgc2ltdWx0YW5lb3VzIHJlcXVlc3RzIHBlciBkb21haW4uIFRoZSB3YWl0IGZvciBhICAgc2VyaWVzIG9mIHJlcXVlc3RzIGFuZCB0aGUgdHJhbnNmZXIgb2YgdW5vcHRpbWl6ZWQgZmlsZXMgY2FuIGRyYW1hdGljYWxseSByZWR1Y2UgICB0aGUgY2xpZW50LXNpZGUgcGVyZm9ybWFuY2Ugb2YgeW91ciBzaXRlLiA8L3A+DQo8cD5IZXJlIGFyZSBhIGhhbmRmdWwgb2YgWWFob28hJiMwMzk7cyBiZXN0IHByYWN0aWNlcyB0aGF0IGFyZSBhZGRyZXNzZWQgYnkgdGhlIHVzZSBvZiBTY3JpcHREZXBsb3kuIDwvcD4NCjx1bD4NCiAgPGxpPjxhIGhyZWY9Imh0dHA6Ly9kZXZlbG9wZXIueWFob28uY29tL3BlcmZvcm1hbmNlL3J1bGVzLmh0bWwjbnVtX2h0dHAiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij5NYWtlIEZld2VyIEhUVFAgUmVxdWVzdHM8L2E+PC9saT4NCiAgPGxpPjxhIGhyZWY9Imh0dHA6Ly9kZXZlbG9wZXIueWFob28uY29tL3BlcmZvcm1hbmNlL3J1bGVzLmh0bWwjZXhwaXJlcyIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPkFkZCBhbiBFeHBpcmVzIG9yIGEgQ2FjaGUtQ29udHJvbCBIZWFkZXI8L2E+PC9saT4NCiAgPGxpPjxhIGhyZWY9Imh0dHA6Ly9kZXZlbG9wZXIueWFob28uY29tL3BlcmZvcm1hbmNlL3J1bGVzLmh0bWwjZ3ppcCIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPkd6aXAgQ29tcG9uZW50czwvYT48L2xpPg0KICA8bGk+PGEgaHJlZj0iaHR0cDovL2RldmVsb3Blci55YWhvby5jb20vcGVyZm9ybWFuY2UvcnVsZXMuaHRtbCNtaW5pZnkiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij5NaW5pZnkgSmF2YVNjcmlwdCBhbmQgQ1NTPC9hPjwvbGk+DQogIDxsaT48YSBocmVmPSJodHRwOi8vZGV2ZWxvcGVyLnlhaG9vLmNvbS9wZXJmb3JtYW5jZS9ydWxlcy5odG1sI2V0YWdzIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub2ZvbGxvdyI+Q29uZmlndXJlIEVUYWdzPC9hPjwvbGk+DQogIDxsaT48YSBocmVmPSJodHRwOi8vZGV2ZWxvcGVyLnlhaG9vLmNvbS9wZXJmb3JtYW5jZS9ydWxlcy5odG1sI3VuZGVyMjUiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij5LZWVwIENvbXBvbmVudHMgdW5kZXIgMjVLPC9hPjwvbGk+DQo8L3VsPg0KPGgzPjxhIG5hbWU9IkFja25vd2xlZGdtZW50cyI+PC9hPkFja25vd2xlZGdtZW50czwvaDM+DQo8cD5NaW5pZnkgd2FzIGluc3BpcmVkIGJ5IDxhIGhyZWY9Imh0dHA6Ly9jb2RlLmdvb2dsZS5jb20vcC9qc2Nzc2NvbXAvIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub2ZvbGxvdyI+anNjc3Njb21wPC9hPiBieSBNYXhpbSBNYXJ0eW55dWsgYW5kIGJ5IHRoZSBhcnRpY2xlICYjMDM5OzxhIGhyZWY9Imh0dHA6Ly93d3cuaHVubG9jay5jb20vYmxvZ3MvU3VwZXJjaGFyZ2VkX0phdmFzY3JpcHQiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij5TdXBlcmNoYXJnZWQgSmF2YVNjcmlwdDwvYT4mIzAzOTsgYnkgUGF0cmljayBIdW5sb2NrLiA8L3A+DQo8cD5UaGUgPGEgaHJlZj0iaHR0cDovL3d3dy5jcm9ja2ZvcmQuY29tL2phdmFzY3JpcHQvanNtaW4uaHRtbCIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPkpTTWluIGxpYnJhcnk8L2E+IHVzZWQgZm9yIEphdmFTY3JpcHQgbWluaWZpY2F0aW9uIHdhcyBvcmlnaW5hbGx5ICAgd3JpdHRlbiBieSBEb3VnbGFzIENyb2NrZm9yZCBhbmQgd2FzIDxhIGhyZWY9Imh0dHA6Ly9jb2RlLmdvb2dsZS5jb20vcC9qc21pbi1waHAiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij5wb3J0ZWQgdG8gUEhQPC9hPiBieSBSeWFuICAgR3JvdmUgc3BlY2lmaWNhbGx5IGZvciB1c2UgaW4gTWluaWZ5LiA8L3A+DQoNCg0KPGgzPlN1cHBvcnQ8L2gzPg0KPGg0PlNjcmVlbmNhc3RzIGZvciBleHRyYSBoZWxwIHdpbGwgZmFsbG93LS0tIG9uIHRoZSBUT0RPPC9oND4NCjxwPlRoaXMgbW9kdWxlIGRvZXMgbm90IGluY2x1ZGUgY29tbWVyY2lhbCBzdXBwb3J0LiBIb3dldmVyLCB0aGVyZSBhcmUgYSBudW1iZXIgb2YgcmVzb3VyY2VzIGF2YWlsYWJsZSB0byBoZWxwIHlvdSB3aXRoIGl0OjwvcD4NCjx1bD4NCjxsaT5Gb3IgdGhlIGxhdGVzdCB2ZXJzaW9uIG9mIHRoaXMgbW9kdWxlIG9yIHRvIGZpbGUgYSBidWcgcmVwb3J0IHZpc2l0IDxhIGhyZWY9Imh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvc2NyaXB0ZGVwbG95Ij50aGUgQ01TIEZvcmdlPC9hPi48L2xpPg0KPGxpPkFkZGl0aW9uYWwgZGlzY3Vzc2lvbiBvZiB0aGlzIG1vZHVsZSBtYXkgYWxzbyBiZSBmb3VuZCBpbiB0aGUgPGEgaHJlZj0iaHR0cDovL2ZvcnVtLmNtc21hZGVzaW1wbGUub3JnIj5DTVMgTWFkZSBTaW1wbGUgRm9ydW1zPC9hPi48L2xpPg0KPC91bD4NCg0KPGgzPkNvcHlyaWdodCBhbmQgTGljZW5zZTwvaDM+DQo8cD5Db3B5cmlnaHQgJmFtcDtjb3B5OyAyMDA5LCBqZXJlbXlCYXNzICZhbXA7bHQ7PGEgaHJlZj0iaHR0cDovL2NvcmJlbnNwcm9kdWN0cy5jb20iPmNvcmJlbnNwcm9kdWN0cy5jb208L2E+JmFtcDtndDsgQWxsIFJpZ2h0cyBBcmUgUmVzZXJ2ZWQuPC9wPg0KPHN0cm9uZz5TdXBwb3J0IG1vcmUgbW9kcyBsaWtlIHRoaXM6PC9zdHJvbmc+PGZvcm0gYWN0aW9uPSZxdW90O2h0dHBzOi8vd3d3LnBheXBhbC5jb20vY2dpLWJpbi93ZWJzY3ImcXVvdDsgbWV0aG9kPSZxdW90O3Bvc3QmcXVvdDs+DQo8aW5wdXQgdHlwZT0mcXVvdDtoaWRkZW4mcXVvdDsgbmFtZT0mcXVvdDtjbWQmcXVvdDsgdmFsdWU9JnF1b3Q7X3MteGNsaWNrJnF1b3Q7Pg0KPGlucHV0IHR5cGU9JnF1b3Q7aGlkZGVuJnF1b3Q7IG5hbWU9JnF1b3Q7aG9zdGVkX2J1dHRvbl9pZCZxdW90OyB2YWx1ZT0mcXVvdDs4ODE3Njc1JnF1b3Q7Pg0KPGlucHV0IHR5cGU9JnF1b3Q7aW1hZ2UmcXVvdDsgc3JjPSZxdW90O2h0dHBzOi8vd3d3LnBheXBhbC5jb20vZW5fVVMvaS9idG4vYnRuX2RvbmF0ZV9MRy5naWYmcXVvdDsgYm9yZGVyPSZxdW90OzAmcXVvdDsgbmFtZT0mcXVvdDtzdWJtaXQmcXVvdDsgYWx0PSZxdW90O1BheVBhbCAtIFRoZSBzYWZlciwgZWFzaWVyIHdheSB0byBwYXkgb25saW5lISZxdW90Oz4NCjxpbWcgYWx0PSZxdW90OyZxdW90OyBib3JkZXI9JnF1b3Q7MCZxdW90OyBzcmM9JnF1b3Q7aHR0cHM6Ly93d3cucGF5cGFsLmNvbS9lbl9VUy9pL3Njci9waXhlbC5naWYmcXVvdDsgd2lkdGg9JnF1b3Q7MSZxdW90OyBoZWlnaHQ9JnF1b3Q7MSZxdW90Oz4NCjwvZm9ybT48YnIvPg0KPHA+VGhpcyBtb2R1bGUgaGFzIGJlZW4gcmVsZWFzZWQgdW5kZXIgdGhlIDxhIGhyZWY9Imh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTCI+R05VIFB1YmxpYyBMaWNlbnNlPC9hPi4gWW91IG11c3QgYWdyZWUgdG8gdGhpcyBsaWNlbnNlIGJlZm9yZSB1c2luZyB0aGUgbW9kdWxlLjwvcD4NCjwvZGl2ID48YiBjbGFzcz0mcXVvdDtyYm90dG9tJnF1b3Q7PjxiIGNsYXNzPSZxdW90O3I0JnF1b3Q7PjwvYj48YiBjbGFzcz0mcXVvdDtyMyZxdW90Oz48L2I+IDxiIGNsYXNzPSZxdW90O3IyJnF1b3Q7PjwvYj4gPGIgY2xhc3M9JnF1b3Q7cjEmcXVvdDs+PC9iPjwvYj4NCg0KPC9kaXY+DQonOwokbGFuZ1sndXRtYSddID0gJzE1Njg2MTM1My4xOTQ5NjczMTEyLjEyNjUyMTA3NjkuMTI4NzQ3MzIwNy4xMjg3NDc2OTg5LjIzMic7CiRsYW5nWyd1dG16J10gPSAnMTU2ODYxMzUzLjEyODcwNzA0MTAuMjIyLjQzLnV0bWNzcj1jbXNtYWRlc2ltcGxlLmZyfHV0bWNjbj0ocmVmZXJyYWwpfHV0bWNtZD1yZWZlcnJhbHx1dG1jY3Q9L2ZvcnVtL3ZpZXd0b3BpYy5waHAnOwokbGFuZ1sncWNhJ10gPSAnUDAtMTA3NTgyMDU1MS0xMjY1MjEwNzY4NzY0JzsKJGxhbmdbJ3V0bWInXSA9ICcxNTY4NjEzNTMuMi4xMC4xMjg3NDc2OTg5JzsKJGxhbmdbJ3V0bWMnXSA9ICcxNTY4NjEzNTMnOwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lang/ext/nb_NO.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ1NjcmlwdCBEZXBsb3kgJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsJ10gPSAnRiZvc2xhc2g7cnN0ZSBzdG9wcCBkdSB2aWwgZ2omb3NsYXNoO3JlIG4mYXJpbmc7IGVyIGkgSGplbHBlc2Vrc2pvbmVuJzsKJGxhbmdbJ3Bvc3R1bmluc3RhbGwnXSA9ICdQbGVhc2UgZmVlbCBmcmVlIHRvIGxldCB1cyBrbm93IGlmIHRoZXJlIGlzIGEgd2F5IHRvIG1ha2UgU2NyaXB0RGVwbG95IGJldHRlciwgPGEgaHJlZj0iaHR0cDovL2hlbHAuY29yYmVuc3Byb2R1Y3RzLmNvbS9tYWtlLWNvbnRhY3QuaHRtbCI+Q29udGFjdCB1cyB3ZSYjMDM5O2VyIGhhcHB5IHRvIGhlYXIgZnJvbSB5b3UuPC9hPic7CiRsYW5nWydyZWFsbHlfdW5pbnN0YWxsJ10gPSAnVW5pbnN0YWxsaW5nIHRoaXMgbW9kdWxlIHdpbGwgbm90IGFmZmVjdCBhbnkgZXZlbnQgZGF0YSBhbmQgYWxsIGJvb2tzIHRvIGRhdGUgd2lsbCBzdGlsbCBiZSB0aGVyZS4gRG8geW91IHdpc2ggdG8gY29udGludWU/JzsKJGxhbmdbJ3VuaW5zdGFsbGVkJ10gPSAnTW9kdWxlbiBibGUgYXZpbnN0YWxsZXJ0JzsKJGxhbmdbJ2luc3RhbGxlZCddID0gJ01vZHVsZSB2ZXJzam9uICVzIGVyIGluc3RhbGxlcnQnOwokbGFuZ1sndXBncmFkZWQnXSA9ICdNb2R1bCBvcHBncmFkZXJ0IHRpbCB2ZXJzam9uICVzJzsKJGxhbmdbJ21vZHVsZV9vcHRpb25zJ10gPSAnTW9kdWx2YWxnJzsKJGxhbmdbJ3RlbXBsYXRlX21hbmcnXSA9ICdNYWxlcic7CiRsYW5nWydEZXBsb3ltZW50c2V0dGluZ3MnXSA9ICdEZXBsb3ltZW50IHZhbGcnOwokbGFuZ1snVmFsc2V0dGluZ3MnXSA9ICdWYWxpZGVyaW5nc2lubnN0aWxsaW5nZXInOwokbGFuZ1snZW4nXSA9ICdFbmdlbHNrJzsKJGxhbmdbJ2ZyJ10gPSAnZnJhbnNrJzsKJGxhbmdbJ2l0J10gPSAnSXRhbGlhbnNrJzsKJGxhbmdbJ2tvJ10gPSAnS29yZWFuc2snOwokbGFuZ1snamEnXSA9ICdKYXBhbmVzaXNrJzsKJGxhbmdbJ2VzJ10gPSAnU3BhbnNrJzsKJGxhbmdbJ3poLWNuJ10gPSAnS2luZXNpc2snOwokbGFuZ1snbmwnXSA9ICdOZWRlcmxhbnNrJzsKJGxhbmdbJ2RlJ10gPSAnVHlzayc7CiRsYW5nWydwbCddID0gJ1BvbHNrJzsKJGxhbmdbJ3JvJ10gPSAnUnVtZW5zayc7CiRsYW5nWydjcyddID0gJ0VzdG9uaXNrJzsKJGxhbmdbJ2JnJ10gPSAnQnVsZ2Fyc2snOwokbGFuZ1snc3YnXSA9ICdTdmVuc2snOwokbGFuZ1snZmEnXSA9ICdQZXJzaXNrIChGYXJzaSknOwokbGFuZ1sncnUnXSA9ICdSdXNzaXNrJzsKJGxhbmdbJ3B0LUJSJ10gPSAnIEJyYXNpbGlhbnNrIFBvcnR1Z2lzaXNrIChzdGFuZGFyZCknOwokbGFuZ1snTG5vbmUnXSA9ICdJbmdlbiBhZHZhcnNsZXInOwokbGFuZ1snTDAnXSA9ICdOaXYmYXJpbmc7IDAnOwokbGFuZ1snTDEnXSA9ICdOaXYmYXJpbmc7IDEnOwokbGFuZ1snTDInXSA9ICdOaXYmYXJpbmc7IDInOwokbGFuZ1snY3NzMSddID0gJ0NTUyAxICc7CiRsYW5nWydjc3MyJ10gPSAnQ1NTIDIgJzsKJGxhbmdbJ2NzczIxJ10gPSAnQ1NTIDIuMSAnOwokbGFuZ1snY3NzMyddID0gJ0NTUyAzICc7CiRsYW5nWydzdmcnXSA9ICdTVkcgJzsKJGxhbmdbJ3N2Z2Jhc2ljJ10gPSAnU1ZHIGJhc2ljICc7CiRsYW5nWydzdmd0aW55J10gPSAnU1ZHIHRpbnkgJzsKJGxhbmdbJ21vYmlsZSddID0gJ21vYmlsZSAnOwokbGFuZ1snYXRzYy10diddID0gJ2F0c2MtdHYgJzsKJGxhbmdbJ3R2J10gPSAnSW50ZW5kZWQgZm9yIHRlbGV2aXNpb24tdHlwZSBkZXZpY2VzLiAnOwokbGFuZ1snbm9uZSddID0gJ2luZ2VuJzsKJGxhbmdbJ0lubGluZSddID0gJ29wcGRhZyBhdXRvbWF0aXNrJzsKJGxhbmdbJ0hUTUw1J10gPSAnSFRNTDUgKGVrc3BlcmltZW50ZWxsKSc7CiRsYW5nWydYSFRNTF8xXzBfU3RyaWN0J10gPSAnWEhUTUwgMS4wIFN0cmljdCAnOwokbGFuZ1snWEhUTUxfMV8wX1RyYW5zaXRpb25hbCddID0gJ1hIVE1MIDEuMCBUcmFuc2l0aW9uYWwgJzsKJGxhbmdbJ1hIVE1MXzFfMF9GcmFtZXNldCddID0gJ1hIVE1MIDEuMCBGcmFtZXNldCAnOwokbGFuZ1snSFRNTF80XzAxX1N0cmljdCddID0gJ0hUTUwgNC4wMSBTdHJpY3QgJzsKJGxhbmdbJ0hUTUxfNF8wMV9UcmFuc2l0aW9uYWwnXSA9ICdIVE1MIDQuMDEgVHJhbnNpdGlvbmFsICc7CiRsYW5nWydIVE1MXzRfMDFfRnJhbWVzZXQnXSA9ICdIVE1MIDQuMDEgRnJhbWVzZXQgJzsKJGxhbmdbJ0hUTUxfM18yJ10gPSAnSFRNTCAzLjIgJzsKJGxhbmdbJ0hUTUxfMl8wJ10gPSAnSFRNTCAyLjAgJzsKJGxhbmdbJ0lTTy9JRUNfMTU0NDU6MjAwMF8oIklTT19IVE1MIiknXSA9ICdJU08vSUVDIDE1NDQ1OjIwMDAgKCZxdW90O0lTTyBIVE1MJnF1b3Q7KSAnOwokbGFuZ1snWEhUTUxfMV8xJ10gPSAnWEhUTUwgMS4xICc7CiRsYW5nWydYSFRNTF8rX1JERmEnXSA9ICdYSFRNTCArIFJERmEgJzsKJGxhbmdbJ1hIVE1MX0Jhc2ljXzFfMCddID0gJ1hIVE1MIEJhc2ljIDEuMCAnOwokbGFuZ1snWEhUTUxfQmFzaWNfMV8xJ10gPSAnWEhUTUwgQmFzaWMgMS4xICc7CiRsYW5nWydYSFRNTF9Nb2JpbGVfUHJvZmlsZV8xXzInXSA9ICdYSFRNTCBNb2JpbGUgUHJvZmlsZSAxLjIgJzsKJGxhbmdbJ1hIVE1MLVByaW50XzFfMCddID0gJ1hIVE1MLVByaW50IDEuMCAnOwokbGFuZ1snWEhUTUxfMV8xX3BsdXNfTWF0aE1MXzJfMCddID0gJ1hIVE1MIDEuMSBwbHVzIE1hdGhNTCAyLjAnOwokbGFuZ1snWEhUTUxfMV8xX3BsdXNfTWF0aE1MXzJfMF9wbHVzX1NWR18xXzEnXSA9ICdYSFRNTCAxLjEgcGx1cyBNYXRoTUwgMi4wIHBsdXMgU1ZHIDEuMSc7CiRsYW5nWydNYXRoTUxfMl8wJ10gPSAnTWF0aE1MIDIuMCAnOwokbGFuZ1snU1ZHXzFfMCddID0gJ1NWRyAxLjAgJzsKJGxhbmdbJ1NWR18xXzEnXSA9ICdTVkcgMS4xICc7CiRsYW5nWydTVkdfMV8xX1RpbnknXSA9ICdTVkcgMS4xIFRpbnkgJzsKJGxhbmdbJ1NWR18xXzFfQmFzaWMnXSA9ICdTVkcgMS4xIEJhc2ljICc7CiRsYW5nWydTTUlMXzFfMCddID0gJ1NNSUwgMS4wICc7CiRsYW5nWydTTUlMXzJfMCddID0gJ1NNSUwgMi4wICc7CiRsYW5nWydkZWZhdWx0UGFnZV9sYWJsZSddID0gJ1NqZWtrIG1vdCBkZW5uZSBzaWRlbic7CiRsYW5nWydlbmNvZGluZ19sYWJsZSddID0gJ0Vua29kaW5nJzsKJGxhbmdbJ2RldGVjdCddID0gJ29wcGRhZyBhdXRvbWF0aXNrJzsKJGxhbmdbJ3V0Zi04J10gPSAndXRmLTggKFVuaWNvZGUsIHdvcmxkd2lkZSkgJzsKJGxhbmdbJ3V0Zi0xNiddID0gJ3V0Zi0xNiAoVW5pY29kZSwgd29ybGR3aWRlKSAnOwokbGFuZ1snaXNvLTg4NTktMSddID0gJ2lzby04ODU5LTEgKFdlc3Rlcm4gRXVyb3BlKSAnOwokbGFuZ1snaXNvLTg4NTktMiddID0gJ2lzby04ODU5LTIgKENlbnRyYWwgRXVyb3BlKSAnOwokbGFuZ1snaXNvLTg4NTktMyddID0gJ2lzby04ODU5LTMgKFNvdXRoZXJuIEV1cm9wZSkgJzsKJGxhbmdbJ2lzby04ODU5LTQnXSA9ICdpc28tODg1OS00IChOb3J0aCBFdXJvcGVhbikgJzsKJGxhbmdbJ2lzby04ODU5LTUnXSA9ICdpc28tODg1OS01IChDeXJpbGxpYykgJzsKJGxhbmdbJ2lzby04ODU5LTYtaSddID0gJ2lzby04ODU5LTYtaSAoQXJhYmljKSAnOwokbGFuZ1snaXNvLTg4NTktNyddID0gJ2lzby04ODU5LTcgKEdyZWVrKSAnOwokbGFuZ1snaXNvLTg4NTktOCddID0gJ2lzby04ODU5LTggKEhlYnJldywgdmlzdWFsKSAnOwokbGFuZ1snaXNvLTg4NTktOC1pJ10gPSAnaXNvLTg4NTktOC1pIChIZWJyZXcsIGxvZ2ljYWwpICc7CiRsYW5nWydpc28tODg1OS05J10gPSAnaXNvLTg4NTktOSAoVHVya2lzaCkgJzsKJGxhbmdbJ2lzby04ODU5LTEwJ10gPSAnaXNvLTg4NTktMTAgKExhdGluIDYpICc7CiRsYW5nWydpc28tODg1OS0xMSddID0gJ2lzby04ODU5LTExIChMYXRpbi9UaGFpKSAnOwokbGFuZ1snaXNvLTg4NTktMTMnXSA9ICdpc28tODg1OS0xMyAoTGF0aW4gNywgQmFsdGljIFJpbSkgJzsKJGxhbmdbJ2lzby04ODU5LTE0J10gPSAnaXNvLTg4NTktMTQgKExhdGluIDgsIENlbHRpYykgJzsKJGxhbmdbJ2lzby04ODU5LTE1J10gPSAnaXNvLTg4NTktMTUgKExhdGluIDkpICc7CiRsYW5nWydpc28tODg1OS0xNiddID0gJ2lzby04ODU5LTE2IChMYXRpbiAxMCkgJzsKJGxhbmdbJ3VzLWFzY2lpJ10gPSAndXMtYXNjaWkgKGJhc2ljIEVuZ2xpc2gpICc7CiRsYW5nWydldWMtanAnXSA9ICdldWMtanAgKEphcGFuZXNlLCBVbml4KSAnOwokbGFuZ1snc2hpZnRfamlzJ10gPSAnc2hpZnRfamlzIChKYXBhbmVzZSwgV2luL01hYykgJzsKJGxhbmdbJ2lzby0yMDIyLWpwJ10gPSAnaXNvLTIwMjItanAgKEphcGFuZXNlLCBlbWFpbCkgJzsKJGxhbmdbJ2V1Yy1rciddID0gJ2V1Yy1rciAoS29yZWFuKSAnOwokbGFuZ1snZ2IyMzEyJ10gPSAnZ2IyMzEyIChDaGluZXNlLCBzaW1wbGlmaWVkKSAnOwokbGFuZ1snZ2IxODAzMCddID0gJ2diMTgwMzAgKENoaW5lc2UsIHNpbXBsaWZpZWQpICc7CiRsYW5nWydiaWc1J10gPSAnYmlnNSAoQ2hpbmVzZSwgdHJhZGl0aW9uYWwpICc7CiRsYW5nWydiaWc1LUhLU0NTJ10gPSAnQmlnNS1IS1NDUyAoQ2hpbmVzZSwgSG9uZyBLb25nKSAnOwokbGFuZ1sndGlzLTYyMCddID0gJ3Rpcy02MjAgKFRoYWkpICc7CiRsYW5nWydrb2k4LXInXSA9ICdrb2k4LXIgKFJ1c3NpYW4pICc7CiRsYW5nWydrb2k4LXUnXSA9ICdrb2k4LXUgKFVrcmFpbmlhbikgJzsKJGxhbmdbJ2lzby1pci0xMTEnXSA9ICdpc28taXItMTExIChDeXJpbGxpYyBLT0ktOCknOwokbGFuZ1snbWFjaW50b3NoJ10gPSAnbWFjaW50b3NoIChNYWNSb21hbikgJzsKJGxhbmdbJ3dpbmRvd3MtMTI1MCddID0gJ3dpbmRvd3MtMTI1MCAoQ2VudHJhbCBFdXJvcGUpICc7CiRsYW5nWyd3aW5kb3dzLTEyNTEnXSA9ICd3aW5kb3dzLTEyNTEgKEN5cmlsbGljKSAnOwokbGFuZ1snd2luZG93cy0xMjUyJ10gPSAnd2luZG93cy0xMjUyIChXZXN0ZXJuIEV1cm9wZSkgJzsKJGxhbmdbJ3dpbmRvd3MtMTI1MyddID0gJ3dpbmRvd3MtMTI1MyAoR3JlZWspICc7CiRsYW5nWyd3aW5kb3dzLTEyNTQnXSA9ICd3aW5kb3dzLTEyNTQgKFR1cmtpc2gpICc7CiRsYW5nWyd3aW5kb3dzLTEyNTUnXSA9ICd3aW5kb3dzLTEyNTUgKEhlYnJldykgJzsKJGxhbmdbJ3dpbmRvd3MtMTI1NiddID0gJ3dpbmRvd3MtMTI1NiAoQXJhYmljKSAnOwokbGFuZ1snd2luZG93cy0xMjU3J10gPSAnd2luZG93cy0xMjU3IChCYWx0aWMgUmltKSAnOwokbGFuZ1snYXV0byddID0gJ0F1dG9nZW5lcmVydCc7CiRsYW5nWydhc3NpZ25lZCddID0gJ1NpZGUgbWVkIHRpbGtueXR0ZXQgbWFsJzsKJGxhbmdbJ3VzZXJDaG9pY2UnXSA9ICdWZWxnIGVuIHNpZGUnOwokbGFuZ1sndXNlckdlbmVyYXRlZCddID0gJ1NldHQgZGl0dCBpbm5ob2xkJzsKJGxhbmdbJ3NhdmVWQUxzZXR0aW5ncyddID0gJ0xhZ3JlIHZhbGlkZXJpbmdzaW5uc3RpbGxpbmdlcic7CiRsYW5nWydzZXR0aW5ncyddID0gJ0lubnN0aWxsaW5nZXInOwokbGFuZ1snc2V0dGluZ3NzYXZlZCddID0gJ0lubnN0aWxsaW5nZXIgbGFncmV0JzsKJGxhbmdbJ2xlYXZlY29kZSddID0gJ0lra2UgciZvc2xhc2g7ciBrb2RlJzsKJGxhbmdbJ2Zvcm1hdGNvZGUnXSA9ICdGb3JtYXRlciBrb2RlIHBlbnQnOwokbGFuZ1snc2NyYW1ibGVjb2RlJ10gPSAnU2NyYW1ibGUgdGhlIGNvZGUnOwokbGFuZ1snY2xlYW5jb2RlJ10gPSAnUkVucyBvcHAgaSBrb2RlbiB2ZWQgJmFyaW5nOyBmamVybmUgdGluZyBzb20gaWtlayBoYXIgYmV0eWRuaW5nJzsKJGxhbmdbJ3NhdmVzZXR0aW5ncyddID0gJ0xhZ3JlIGlubnN0aWxsaW5nZXInOwokbGFuZ1snbWFuZ2xldHlwZXRleHQnXSA9ICdIdm9yZGFuIGZvcm1hdGVyZSBrb2RlJzsKJGxhbmdbJ2JyaWVmJ10gPSAnS29ydCc7CiRsYW5nWyd2ZXJib3NlJ10gPSAnRnlsZGlnJzsKJGxhbmdbJ2NvZGVmaXhlcyddID0gJ0tvZGVmaWtzZXInOwokbGFuZ1snZm9yY2Vsb3dlcnRhZ3N0ZXh0J10gPSAnVHZpbmcgdGFnZ2VyIHRpbCBzbSZhcmluZzsgYm9rc3RhdmVyJzsKJGxhbmdbJ2ZvcmNlbG93ZXJ0YWdzaGVscCddID0gJ0ZvciBiZWRyZSBYSFRNTC1rb21wYXRpYmlsaXRldCc7CiRsYW5nWydoaWRlbWVzc2FnZXN0ZXh0J10gPSAnR2plbSBtZWxkaW5nZXIgaSBidW5uZW4gcCZhcmluZzsgKHgpaHRtbC1rb2RlJzsKJGxhbmdbJ2luZGVudHdpZHRodGV4dCddID0gJ0JyZWRkZSBwJmFyaW5nOyBpbm5yeWtrJzsKJGxhbmdbJ3NwYWNlcyddID0gJ01lbGxvbXJvbSc7CiRsYW5nWydkZWJ1Z2xldmVsdGV4dCddID0gJ01lbmdkZSBhdiBmZWlscyZvc2xhc2g7a2luZ3NpbmZvcm1hc2pvbjogJzsKJGxhbmdbJ2RlYnVndGV4dCddID0gJ0tvZGUgZmVpbHMmb3NsYXNoO2tpbmdzbW9kdXMnOwokbGFuZ1snU2NyaXB0X2xpc3QnXSA9ICdTa3JpcHQnOwokbGFuZ1snQXNzX2hlYWRlciddID0gJ1VuaWZpZWQgc2tyaXB0JzsKJGxhbmdbJ1NhbXBsZVRhZyddID0gJ0Vrc2VtcGVsdGFnZyc7CiRsYW5nWydwcm9tcHRfbmV3U2NyaXB0J10gPSAnTGVnZyB0aWwgbnl0dCBza3JpcHQnOwokbGFuZ1sncHJvbXB0X25ld1NjcmlwdEFzcyddID0gJ0xlZ2cgdGlsIHNrcmlwdCBncnVwcGVyaW5nJzsKJGxhbmdbJ3Byb21wdF9hZGR0ZW1wbGF0ZSddID0gJ0xlZ2cgdGlsIG1hbCc7CiRsYW5nWydhZGRMaWJfbGFiZWwnXSA9ICdMZWdnIHRpbCBiaWJsaW90ZWsnOwokbGFuZ1sndGl0bGVfR3JvdXBzJ10gPSAnR3J1cHBlIHNrcmlwdCBsaXN0ZSc7CiRsYW5nWyd0aXRsZV9TY3JpcHRzJ10gPSAnRW5rbGUgc2tyaXB0IGxpc3RlJzsKJGxhbmdbJ2FyZXlvdXN1cmUnXSA9ICdJbXBvcnRhbnQ6XG5cbklmIHRoaXMgaXMgZGVsZXRlZCBhbGwgaW5mb3JtYXRpb24gd2lsbCBiZSBsb3N0IVxuXG5JZiB5b3UgaGF2ZSB0aGlzIHNjcmlwdCBpbiBhIGdyb3VwIHlvdSB3aWxsIGJyZWFrIHRoZSB0aWUgYW5kIHdpbGwgbmVlZCB0byBlZGl0IHRoZSBncm91cC5cbkl0IGlzIGJlc3QgdG8gc3RhcnQgdGhlIGRlbGV0aW9uIHByb2Nlc3MgZnJvbSB0aGUgQXNzaWdubWVudCBhcmVhLlxuXG5ZT1UgQUxTTyBMT1NFIFlPVVIgUkVWSVNJT04gSElTVE9SWSBGT1IgVEhJUyBTQ1JJUFQuLiBBUkUgWU9VIFJFQUxZIFNVUkU/Pz8nOwokbGFuZ1snc21hcnR5SG93J10gPSAnVGhlIHNtYXJ0eSB3b3JrcyBsaWtlIHRoaXMgaW4gSlMgYW5kIENTUy4uLiBXaGVyZSB5b3UmIzAzOTtkIGhhdmUgeyRzbWFydHkubm93fSB5b3UgZG8ge3skc21hcnR5Lm5vd319ICAuICBOb3cgeW91IGNhbiBkbyBzbWFydHkgc3R1ZmYuICBTbWFydHkgMyBhY2NvdW50cyBmb3IgdGhpcyBhbmQgc28gQ01TTVMgMi4wIHdpbGwgbm90IG5lZWQgdGhlIHt7IH19JzsKJGxhbmdbJ3RpcF9nZW5lcmFsX3NtYXJ0eSddID0gJ1RoZSBzbWFydHkgd29ya3MgbGlrZSB0aGlzIGluIEpTIGFuZCBDU1MuLi4gV2hlcmUgeW91JiMwMzk7ZCBoYXZlIHskc21hcnR5Lm5vd30geW91IGRvIHt7JHNtYXJ0eS5ub3d9fSAgLiAgTm93IHlvdSBjYW4gZG8gc21hcnR5IHN0dWZmLiAgU21hcnR5IDMgYWNjb3VudHMgZm9yIHRoaXMgYW5kIHNvIENNU01TIDIuMCB3aWxsIG5vdCBuZWVkIHRoZSB7eyB9fSc7CiRsYW5nWyd0aXBfZ2VuZXJhbF9ncm91cGluZyddID0gJ0pvaW5pbmcgeW91ciBDU1MgZmlsZXMgc3BlZWRzIHVwIHlvdXIgdXNlcnMgZXhwZXJpZW5jZSBhbmQgaGVscCB5b3UgZ2V0IGNsb3NlciB0byBhbiAmcXVvdDtBJnF1b3Q7IGluIDxhIGhyZWY9Imh0dHA6Ly9kZXZlbG9wZXIueWFob28uY29tL3lzbG93LyIgdGFyZ2V0PSJfYmxhbmsiPnlTbG93PC9hPic7CiRsYW5nWyd0aXBfZWRpdG9yX3RhYiddID0gJ0RpZCB5b3Uga25vdyB0aGF0IHlvdSBjYW4gdXNlIHRoZSBUYWIga2V5IHRvIGluZGVudCB5b3UgY29kZT8gIFRyeSBpdCBvdXQuJzsKJGxhbmdbJ3RpcF9lZGl0b3Jfc2VhcmNoTnJlcGxhY2UnXSA9ICdEaWQgeW91IGtub3cgdGhhdCB5b3UgY2FuIHVzZSByZWd1bGFyIGV4cHJlc3Npb24gdG8gcXVpY2tseSBzZWFyY2ggYW5kIHJlcGxhY2U/ICBVc2UgQ3RybCtmIGluIHRoZSBlZGl0b3IgdG8gYnJpbmcgdXAgdGhlIGJveC4nOwokbGFuZ1sndGlwX2VkaXRvcl9yZXNldEhpZ2hsaWdodCddID0gJ0lmIHlvdSBhcmUgc2VlaW5nIGRvdWJsZXMgaW4gdGhlIGVkaXRvciwgaWU6IHRoZSBoaWdobGlnaHQgaXMgZGVzeW5jcm9uaXplZCBmcm9tIHRleHQganVzdCB1c2UgdGhlIHJlc2V0IGhpZ2hsaWdodCBidXR0b24gPGltZyB3aWR0aD0mcXVvdDsyMCZxdW90OyBoZWlnaHQ9JnF1b3Q7MjAmcXVvdDsgb25tb3VzZWRvd249JnF1b3Q7ZWRpdEFyZWEucmVzdG9yZUFuZFN3aXRjaENsYXNzKHRoaXMsJiMwMzk7ZWRpdEFyZWFCdXR0b25Eb3duJiMwMzk7KTsmcXVvdDsgb25tb3VzZW91dD0mcXVvdDtlZGl0QXJlYS5yZXN0b3JlQ2xhc3ModGhpcyk7JnF1b3Q7IG9ubW91c2VvdmVyPSZxdW90O2VkaXRBcmVhLnN3aXRjaENsYXNzKHRoaXMsJiMwMzk7ZWRpdEFyZWFCdXR0b25PdmVyJiMwMzk7KTsmcXVvdDsgY2xhc3M9JnF1b3Q7ZWRpdEFyZWFCdXR0b25Ob3JtYWwmcXVvdDsgdGl0bGU9JnF1b3Q7cmVzZXQgaGlnaGxpZ2h0IChlZCkmcXVvdDsgc3JjPSZxdW90Oy4uL21vZHVsZXMvU2NyaXB0RGVwbG95L2luY2x1ZGVzL2VkaXRfYXJlYS9pbWFnZXMvcmVzZXRfaGlnaGxpZ2h0LmdpZiZxdW90OyBpZD0mcXVvdDtyZXNldF9oaWdobGlnaHQmcXVvdDs+JzsKJGxhbmdbJ3RpcF90ZW1wbGF0ZV9zbWFydHknXSA9ICdTbWFydHkgc3ludGF4IGlzIHRoZSBzYW1lIGFzIGV2ZXJ5d2hlcmUgZWxzZSBqdXN0IGEgc3RyYWlnaHQgeyRzbWFydHkubm93fS4gIFRoZSB7eyB9fSBpcyBmb3IgdGhlIENTUyBhbmQgSlMgYXMge30gYXJlIGluIHRoZWlyIHN5bnRheC4gIFNtYXJ0eSAzIGFjY291bnRzIGZvciB0aGlzIGFuZCBzbyBDTVNNUyAyLjAgd2lsbCBub3QgbmVlZCB0aGUge3sgfX0nOwokbGFuZ1sndGlwX2dyb3VwX2RyYWdOZHJvcCddID0gJ3RvIGdldCBzdGFydGVkIGp1c3QgZHJhZyBmcm9tIHRoZSBwb29sIHRvIHRoZSBncm91cCYjMDM5O3MgbGlzdCc7CiRsYW5nWydhbGwnXSA9ICdFZ25ldCBmb3IgYWxsZSBlbmhldGVyJzsKJGxhbmdbJ2F1cmFsJ10gPSAnQmVyZWduZXQgZm9yIHN5bnRldGlzayB0YWxlJzsKJGxhbmdbJ2JyYWlsbGUnXSA9ICdCZXJlZ25ldCBmb3IgYnJhaWxsZSc7CiRsYW5nWydlbWJvc3NlZCddID0gJ0JlcmVnbmV0IGZvciBicmFpbGxlIHNrcml2ZXJlJzsKJGxhbmdbJ2hhbmRoZWxkJ10gPSAnQmVyZWduZXQgZm9yIGgmYXJpbmc7bmRob2xkdGUgZW5oZXRlcic7CiRsYW5nWydwcmludCddID0gJ0ludGVuZGVkIGZvciBwYWdlZCwgb3BhcXVlIG1hdGVyaWFsIGFuZCBmb3IgZG9jdW1lbnRzIHZpZXdlZCBvbiBzY3JlZW4gaW4gcHJpbnQgcHJldmlldyBtb2RlLiAnOwokbGFuZ1sncHJvamVjdGlvbiddID0gJ0ludGVuZGVkIGZvciBwcm9qZWN0ZWQgcHJlc2VudGF0aW9ucywgZm9yIGV4YW1wbGUgcHJvamVjdG9ycyBvciBwcmludCB0byB0cmFuc3BhcmVuY2llcy4nOwokbGFuZ1snc2NyZWVuJ10gPSAnSW50ZW5kZWQgcHJpbWFyaWx5IGZvciBjb2xvciBjb21wdXRlciBzY3JlZW5zLiAnOwokbGFuZ1sndHR5J10gPSAnSW50ZW5kZWQgZm9yIG1lZGlhIHVzaW5nIGEgZml4ZWQtcGl0Y2ggY2hhcmFjdGVyIGdyaWQsIHN1Y2ggYXMgdGVsZXR5cGVzIGFuZCB0ZXJtaW5hbHMuICc7CiRsYW5nWydNZWRpYVR5cGUnXSA9ICdhbGwgOiBTdWl0YWJsZSBmb3IgYWxsIGRldmljZXMuPGJyLz4NCmF1cmFsIDogSW50ZW5kZWQgZm9yIHNwZWVjaCBzeW50aGVzaXplcnMuPGJyLz4NCmJyYWlsbGUgOiBJbnRlbmRlZCBmb3IgYnJhaWxsZSB0YWN0aWxlIGZlZWRiYWNrIGRldmljZXMuPGJyLz4NCmVtYm9zc2VkIDogSW50ZW5kZWQgZm9yIHBhZ2VkIGJyYWlsbGUgcHJpbnRlcnMuPGJyLz4NCmhhbmRoZWxkIDogSW50ZW5kZWQgZm9yIGhhbmRoZWxkIGRldmljZXM8YnIvPg0KcHJpbnQgOiBJbnRlbmRlZCBmb3IgcGFnZWQsIG9wYXF1ZSBtYXRlcmlhbCBhbmQgZm9yIGRvY3VtZW50cyB2aWV3ZWQgb24gc2NyZWVuIGluIHByaW50IHByZXZpZXcgbW9kZS48YnIvPg0KcHJvamVjdGlvbiA6IEludGVuZGVkIGZvciBwcm9qZWN0ZWQgcHJlc2VudGF0aW9ucywgZm9yIGV4YW1wbGUgcHJvamVjdG9ycyBvciBwcmludCB0byB0cmFuc3BhcmVuY2llcy48YnIvPg0Kc2NyZWVuIDogSW50ZW5kZWQgcHJpbWFyaWx5IGZvciBjb2xvciBjb21wdXRlciBzY3JlZW5zLjxici8+DQp0dHkgOiBJbnRlbmRlZCBmb3IgbWVkaWEgdXNpbmcgYSBmaXhlZC1waXRjaCBjaGFyYWN0ZXIgZ3JpZCwgc3VjaCBhcyB0ZWxldHlwZXMgYW5kIHRlcm1pbmFscy48YnIvPg0KdHYgOiBJbnRlbmRlZCBmb3IgdGVsZXZpc2lvbi10eXBlIGRldmljZXMuJzsKJGxhbmdbJ0NhbmNlbGVkJ10gPSAnWW91IENhbmNlbGVkIG91dCBvZiB0aGUgb3BlcmF0aW9uLiAgQW55IFdvcmsgeW91IG1heSBoYXZlIGVudGVyZWQgaGFzIGJlZW4gbG9zdC4nOwokbGFuZ1snQnRuQURERUQnXSA9ICdEdSBsYSBha2t1cmF0IHRpbCBldCBueXR0IHNrcnB0JzsKJGxhbmdbJ0J0bkVESVRFRCddID0gJ0R1IHJlZGlnZXJ0ZSBldCBla3Npc3RlcmVuZGUgc2tyaXB0JzsKJGxhbmdbJ0J0bkRFTEVURUQnXSA9ICdEdSBzbGV0dGV0IGV0IGVrc2lzdGVyZW5kZSBza3JwdCc7CiRsYW5nWyd0eXBlX2xhYmVsJ10gPSAnVHlwZSAnOwokbGFuZ1sncmV2aXNpb24nXSA9ICdSZXZpc2pvbic7CiRsYW5nWydpc0VkaXQnXSA9ICdyZWRpZ2VyZXInOwokbGFuZ1snc3RlYWwnXSA9ICdUamVsIGRva3VtZW50ZXQnOwokbGFuZ1snZ2V0X3RhZyddID0gJ0YmYXJpbmc7IHRhZ2dlbic7CiRsYW5nWydlbXRweUdyb3VwJ10gPSAnRHUgbSZhcmluZzsgbGVnZ2UgdGlsZSBldCBza3JpcHQgdGlsIGdydXBwZW4gZiZvc2xhc2g7ciBkdSBrYWxsZXIgZGVuJzsKJGxhbmdbJ2FsbFNjcmlwdHNVc2VkJ10gPSAnQWxsZSBza3JpcHRlbmUgZXIgYmVueXR0ZXQnOwokbGFuZ1snTm9fU2NyaXB0cyddID0gJ0RldCBmaW5uZXMgYWtrdXJhdCBuJmFyaW5nOyBpbmdlbiBza3JpcHQnOwokbGFuZ1snTm9fR3JvdXBzJ10gPSAnRGV0IGVyIGFra3VyYXQgbiZhcmluZzsgaW5nZW4gZ3J1cHBlcic7CiRsYW5nWydzZXRpbmFjdGl2ZSddID0gJ1NldCBtYWwgaW5ha3Rpdic7CiRsYW5nWydzZXRhY3RpdmUnXSA9ICdTZXQgbWFsIGFrdGl2JzsKJGxhbmdbJ25vdGRlZmF1bHQnXSA9ICdJa2tlIHN0YW5kYXJkbWFsZW4uJzsKJGxhbmdbJ25vdHZhbGlkJ10gPSAnU3RpbGFya3RpbGtvYmxpbmdlciBlciBpa2tlIHNhdHQga29ycmVrdCBmb3IgZGVubmUgbWFsZW4nOwokbGFuZ1sndGVtcGxhdGVfdGFiJ10gPSAnU3R5bGVzd2l0Y2hlciBza2plbWFtYWwnOwokbGFuZ1sncGFnZV90ZW1wbGF0ZXNfdGFiJ10gPSAnU2lkZW1hbGVyJzsKJGxhbmdbJ3N1Ym1pdCddID0gJ1V0ZiZvc2xhc2g7cic7CiRsYW5nWydhcHBseSddID0gJ0JydWsnOwokbGFuZ1snY2FuY2VsJ10gPSAnQXZicnl0JzsKJGxhbmdbJ2dvJ10gPSAnRyZhcmluZzsnOwokbGFuZ1sncHJldmlldyddID0gJ2ZvcmgmYXJpbmc7bmRzdmlzJzsKJGxhbmdbJ2lubGluZWhlbHAnXSA9ICdIamVscCc7CiRsYW5nWydzY2lwdG9wdGlvbnMnXSA9ICdWYWxnJzsKJGxhbmdbJ3BlcnNpc3RlbnQnXSA9ICdWZWR2YXJlbmRlJzsKJGxhbmdbJ3ByZWZlcnJlZCddID0gJ0ZvcmV0cnVra2V0JzsKJGxhbmdbJ2FsdGVybmF0ZSddID0gJ0FsdGVybmF0aXYnOwokbGFuZ1snbmFtZSddID0gJ05hdm4nOwokbGFuZ1sndGl0bGUnXSA9ICdUaXR0ZWwnOwokbGFuZ1snaWQnXSA9ICdJRCc7CiRsYW5nWydhY3RpdmUnXSA9ICdBa3Rpdic7CiRsYW5nWydkZWZhdWx0J10gPSAnU3RhbmRhcmQnOwokbGFuZ1sndmFsaWQnXSA9ICdHeWxkaWcnOwokbGFuZ1sndXNhZ2VfY291bnQnXSA9ICdCcnVrJzsKJGxhbmdbJ3llcyddID0gJ0phJzsKJGxhbmdbJ25vJ10gPSAnTmVpJzsKJGxhbmdbJ2VkaXRjc3MnXSA9ICdSZWRpZ2VyIHN0aWxhcmtzYW1tZW5rb2JsaW5nZXInOwokbGFuZ1snZWRpdHRlbXBsYXRlJ10gPSAnUkVkaWdlciBtYWxpbm5ob2xkJzsKJGxhbmdbJ2RlbGV0ZXRlbXBsYXRlJ10gPSAnU2xldHQgbWFsJzsKJGxhbmdbJ2NvcHl0ZW1wbGF0ZSddID0gJ0tvcGllciBtYWwnOwokbGFuZ1sncHJvbXB0X3N0eWxlc2hlZXQnXSA9ICdWZWxnIGVuIHNpZGVzdGlsJzsKJGxhbmdbJ3Byb21wdF90ZW1wbGF0ZSddID0gJ01hbCc7CiRsYW5nWydwcm9tcHRfZ3JvdXBuYW1lJ10gPSAnR3J1cHBlbmF2bic7CiRsYW5nWydwcm9tcHRfYWRkZ3JvdXAnXSA9ICdMZWdnIHRpbCBlbiBncnVwcGUnOwokbGFuZ1sncHJvbXB0X2dyb3VwdHlwZSddID0gJ0dydXBwZXR5cGUnOwokbGFuZ1sncHJvbXB0X2FkZCddID0gJ0xlZ2cgdGlsJzsKJGxhbmdbJ3Byb21wdF9zZWxlY3RvbmUnXSA9ICdWZWxnIGVuJzsKJGxhbmdbJ3Byb21wdF9hZGRfYWx0ZXJuYXRlJ10gPSAnTGVnZyB0aWwgZXQgYWx0ZXJuYXRpdic7CiRsYW5nWydlcnJvcl9wbGVhc2Vfc2VsZWN0X3N0eWxlc2hlZXQnXSA9ICdWZW5ubGlnc3QgdmVsZyBldCBzdGlsYXJrJzsKJGxhbmdbJ3VzZXJMb2dzJ10gPSAnVmlzIGJydWtlcmhpc3RvcmlrayBsb2dnZW5lJzsKJGxhbmdbJ1NjcmlwdFNldF9sYWJlbCddID0gJ1NrcmlwdCBJRCc7CiRsYW5nWydzY3JpcHRUeXBlX2xhYmVsJ10gPSAnU2tyaXB0IHR5cGUnOwokbGFuZ1snU2NyaXB0TmFtZV9sYWJlbCddID0gJ1NrcmlwdG5hdm4nOwokbGFuZ1sndGVtcGxhdGVuYW1lX2xhYmVsJ10gPSAnTWFsbmF2bic7CiRsYW5nWydTaW5nbGVDb2RlX2xhYmVsJ10gPSAnU3RhbmRhcmQgdGFnZyc7CiRsYW5nWydHcm91cHRTaXplX2xhYmVsJ10gPSAnVG90YWwgJzsKJGxhbmdbJ25vdGVzX2xhYmVsJ10gPSAnTWVya25hZGVyJzsKJGxhbmdbJ2RvY1R5cGVfbGFibGUnXSA9ICdEb2N0eXBlICc7CiRsYW5nWydWYWxIVE1MVmVyYm9zZV9sYWJsZSddID0gJ0NoZWNrIFZlcmJvc2VseSc7CiRsYW5nWydTaG93VmFsX2xhYmxlJ10gPSAnSG9sZCBtZWxkaW5nZXIgJmFyaW5nO3BuZSc7CiRsYW5nWydUdXJuT05WYWxfbGFibGUnXSA9ICdTa3J1IDxzdHJvbmc+UCZBcmluZzs8L3N0cm9uZz4gdmFsaWRlcmluZyc7CiRsYW5nWydob3RMaW5rQ2hlY2tfbGFibGUnXSA9ICdEbyBIb3RMaW5rIENoZWNrJzsKJGxhbmdbJ1RydW5PbmhvdExpbmtDaGVjayddID0gJ1lvdSBuZWVkIHRvIHR1cm4gb24gdGhlIEhvdExpbmsgQ2hlY2snOwokbGFuZ1snZmlsdGVyUHJvcF9sYWJsZSddID0gJyBGaWx0ZXIgb3V0IHByb3BlcnRpZXMgdG8gaGVscCB2YWxpZGF0ZSc7CiRsYW5nWydDU1Nwcm9maWxlX2xhYmxlJ10gPSAnIENTUyBQcm9maWxlJzsKJGxhbmdbJ3VzZXJtZWRpdW1fbGFibGUnXSA9ICcgVXNlciBNZWRpdW0nOwokbGFuZ1snVkFMTGFuZ19sYWJsZSddID0gJ1NwciZhcmluZztrJzsKJGxhbmdbJ3czY0NTU3dhcm5pbmdfbGFibGUnXSA9ICcgdzNjIENTUyBhZHZhcnNlbHNuaXYmYXJpbmc7JzsKJGxhbmdbJ01lZGlhVHlwZV9sYWJlbCddID0gJ01lZGlhdHlwZSc7CiRsYW5nWydNaW5pZnlfbGFiZWwnXSA9ICdNaW5pZnkgb24gT3V0cHV0JzsKJGxhbmdbJ0NyZWF0aW9uRGF0ZV9sYWJlbCddID0gJ09wcHJldHRlbHNlc2RhdG8nOwokbGFuZ1snTW9kaWZlZERhdGVfbGFiZWwnXSA9ICdFbmRyZXQgZGF0byc7CiRsYW5nWydwYXRoT3B0aW9uX2xhYmVsJ10gPSAnVXNlIGEgcGF0aDxlbT4odXNlICZxdW90Oy91cGxvYWRzLy4uLiZxdW90Oyk8L2VtPic7CiRsYW5nWydyb290VVJMT3B0aW9uX2xhYmVsJ10gPSAnVXNlIGEgc3BlY2lmaWMgcm9vdCBVUkw8ZW0+KHVzZSBzY2hlbWEgJnF1b3Q7aHR0cHM6Ly9zdWIuZG9tYWluLnRsZC8mcXVvdDspPC9lbT4nOwokbGFuZ1snR3Jvb3RVUkwnXSA9ICdHbG9iYWwgU2NyaXB0IFJvb3QgVVJMJzsKJGxhbmdbJ2VtcHR5Y2FjaGVFcnJvcl9kb0FEVUlUJ10gPSAnZmFpbGVkIHRvIGVtcHR5IHRoZSBjYWNoZSBhdCc7CiRsYW5nWydlbXB0aWVkQ2FjaF9kb0FEVUlUJ10gPSAnZW1wdGllZCB0aGUgc2NyaXB0IGNhY2hlJzsKJGxhbmdbJ2NsZWFyZWRSZXZpc2lvbl9kb0FEVUlUJ10gPSAnY2xlYXJlZCB0aGUgcmV2aXNpb24gaGlzdG9yeSBmb3InOwokbGFuZ1snQ2hlY2tlZE91dF9kb0FEVUlUJ10gPSAnQ2hlY2tlZCBvdXQgc2NyaXB0ICc7CiRsYW5nWydyZWxlYXNlZF9kb0FEVUlUJ10gPSAncmVsZWFzZWQgc2NyaXB0ICc7CiRsYW5nWydTY3JpcHRJc19sYWJlbCddID0gJ1VzZSB0aGlzIHNjcmlwdCA8ZW0+KE5vdGU6IElmIGEgcGF0aCBpcyBzZXQsIGl0IHdpbGwgb3ZlciByaWRlIHRoaXMpPC9lbT4nOwokbGFuZ1snZGVidWdJVF9sYWJlbCddID0gJ2RlYnVnSVQnOwokbGFuZ1snZGVidWdJVG5vdGVfbGFiZWwnXSA9ICc8ZW0+KE11c3QgaGF2ZSBGaXJlcGhwIG1vZCk8L2VtPic7CiRsYW5nWydkZWJ1Z1QnXSA9ICdEZWJ1Z2luZyBPcHRpb25zJzsKJGxhbmdbJ0VkaXRIaXN0b3J5J10gPSAnVXNlciBIaXN0b3J5IEVkaXRpbmcnOwokbGFuZ1snbm9uZUluVHlwZSddID0gJzxoMT5Zb3UgbXVzdCBmaXJzdCBhZGQgPGJyLz5hIHNjcmlwdCBpbiB0aGlzIHR5cGU8L2gxPic7CiRsYW5nWydncm91cHlUaXRsZSddID0gJ0xpc3Qgb2YgU2NyaXB0cyBpbiBncm91cCc7CiRsYW5nWydyZXZpc2lvblRpdGxlJ10gPSAnUmV2aXNpb24gSGlzdG9yeSc7CiRsYW5nWydyZXZpc2lvbl9sYWJlbCddID0gJzxzdHJvbmc+VHVybiBvbiB0aGUgcmV2aXNpb24gaGlzdG9yeTwvc3Ryb25nPic7CiRsYW5nWydyZXZpc2lvbl9vcCddID0gJzxoMT5SZXZpc2lvbjwvaDE+DQo8aDM+VHVybmluZyB0aGlzIG9mZiBkb2VzIG5vdCBjbGVhciB0aGUgaGlzdG9yeSBpZiBpdCB3YXMgb24gYmVmb3JlLiAgTGlrZSBpdCB0byBwYXVzZS48L2gzPic7CiRsYW5nWydyZXZpc2lvbl9MSU1JVF9sYWJlbCddID0gJ1NldCBSZXZpc2lvbiBMSU1JVCc7CiRsYW5nWydjbGVhclJldiddID0gJ0NsZWFyIEhpc3RvcnknOwokbGFuZ1snbG9ja2ZpbGVzVGl0bGUnXSA9ICdQcm90ZWN0IEZpbGVzJzsKJGxhbmdbJ2xvY2tmaWxlc19sYWJlbCddID0gJzxzdHJvbmc+VHVybiBvbiBzZXQgZmlsZXMgdG8gNjQ0PC9zdHJvbmc+JzsKJGxhbmdbJ2xvY2tmaWxlc19vcCddID0gJzxoMT5Qcm90ZWN0IEZpbGVzPC9oMT4NCjxoMz5UdXJuaW5nIHRoaXMgb24gc2V0IHRoZSBjcmVhdGVkIGZpbGUgdG8gYmUgY2htb2QgdG8gNjQ0LiAgVGhpcyB3aWxsIGhlbHAgdG8gcHJvdGVjdCB5b3UgZnJvbSBKUyBpbnRydXNpb24gYXR0YWNrcy48L2gzPic7CiRsYW5nWyd1c2VFZGl0b3JUaXRsZSddID0gJ0VkaXRvciBzZXR0aW5ncyc7CiRsYW5nWyd1c2VFZGl0b3JfbGFiZWwnXSA9ICc8c3Ryb25nPlR1cm4gb24gdGhlIGVkaXRvcjwvc3Ryb25nPic7CiRsYW5nWyd1c2VFZGl0b3Jfb3AnXSA9ICc8aDE+VHVybiBvbiBFZGl0b3I8L2gxPg0KPGgzPlR1cm5pbmcgdGhpcyBvbiBzd2lsbCBoZWxwIHlvdSBzZWUgdGhlIGNvZGUgeW91ciB3b3JraW5nIHdpdGguICBJdCBoaW50cyB0byBjb3JyZWN0IHN5bnRheCB2aWEgaGlnaGxpZ2h0aW5nLjwvaDM+JzsKJGxhbmdbJ3ByZWxvYWRfQ1NTaW1hZ2VUaXRsZSddID0gJ1ByZWxvYWQgQ3NzIEltYWdlcyc7CiRsYW5nWydwcmVsb2FkX0NTU2ltYWdlX2xhYmVsJ10gPSAnPHN0cm9uZz5UdXJuIG9uIFByZWxvYWRlZCBDc3MgSW1hZ2VzPC9zdHJvbmc+JzsKJGxhbmdbJ3ByZWxvYWRfQ1NTaW1hZ2UnXSA9ICc8aDE+UHJlbG9hZCBDc3MgSW1hZ2VzPC9oMT4NCjxoMz5JZiB5b3UgaGF2ZSB5b3VyIHN5c3RlbSBhbGwgc2V0IHVwIHJpZ2h0LCB0aGlzIHdpbGwgaGVscCB5b3UgZ2V0IGEgZmFzdCBwYXJhbGxlbCBkb3duIGxvYWQgb2YgYWxsIGVsZW1lbnRzLjwvaDM+JzsKJGxhbmdbJ2dsb2JhbHVybCddID0gJzxoMT5TZXQgdGhlIHJvb3QgVVJMPC9oMT4NCjxoMz5Vc2VkIGZvciB3aGVuIHlvdSBuZWVkIFNTTCBzdXBwb3J0IG9yIHdhbnQgdG8gcHVzaCB0aGUgc2NyaXB0cyB0byBhIHN1YmRvbWFpbiB0byBsb3NlIHRoZSBuZWVkbGVzIGNvb2tpZXMuPC9oMz4nOwokbGFuZ1snc21hcnR5T25fbGFiZWwnXSA9ICc8c3Ryb25nPlByb2Nlc3MgU21hcnR5PC9zdHJvbmc+PGJyLz4gZGF0YSBpbiBidXR0b24gZmllbGRzJzsKJGxhbmdbJ3NtYXJ0eU9uJ10gPSAnPGgxPlByb2Nlc3MgU21hcnR5IGRhdGE8L2gxPg0KPGgzPldpdGggdGhpcyB0dXJuZWQgb24geW91IGNhbiBzZXQgdGhlIGJ1dHRvbiBmaWVsZHMgd2l0aCB0aGUgdmFsdWVzIHBhc3NlZCBieSBvdGhlciBtb2R1bGVzIHN1Y2ggYXMgUHJvZHVjdHMgb3IgQ2F0YWxvZ2VyPC9oMz4nOwokbGFuZ1snZmlsZVRpbWVfY3NzX3VybHNfbGFiZWwnXSA9ICc8c3Ryb25nPmhlbHAgYnJlYWsgYSBjbGllbnQgc2lkZSBjYWNoZTwvc3Ryb25nPic7CiRsYW5nWydmaWxlVGltZV9jc3NfdXJscyddID0gJzxoMT5oZWxwIGJyZWFrIGEgY2xpZW50IHNpZGUgY2FjaGU8L2gxPg0KPGgzPlRoaXMgaXMgZG9uZSBieSBhZGRpbmcgYSBmaWxlIGNyZWF0aW9uIHRpbWUgYXQgdGhlIGVuZCBvZiBhIGZpbGUuICBUdXJuaW5nIHRoaXMgb24gd2lsbCBhZGQgdGhpcyB0byBhbGwgbG9jYWwgdXJscy4gKENTUyBvbmx5IGF0bSkgLU5vdGhpbmcgaXMgZG9uZSB0byBob3RsaW5rczwvaDM+JzsKJGxhbmdbJ2VkaXQnXSA9ICdFZGl0JzsKJGxhbmdbJ2RlbGV0ZSddID0gJ0RlbGV0ZSc7CiRsYW5nWydDbG9zZSddID0gJ0Nsb3NlJzsKJGxhbmdbJ09wZW4nXSA9ICdPcGVuJzsKJGxhbmdbJ2RpckVtcHR5J10gPSAnVGhlIGZvbGRlciB3YXMgZW1wdHknOwokbGFuZ1snY2xlYW5UZW1wJ10gPSAnQ2xlYW4gdGhlIHRlbXA/JzsKJGxhbmdbJ3VyVGVtcFBhdGgnXSA9ICdZb3VyIGNhY2hlIHBhdGggaXMnOwokbGFuZ1snTGFzdE1vZCddID0gJ0xhc3QgTW9kaWZpZWQnOwokbGFuZ1snY2FjaGVGZXJyb3InXSA9ICdTY3JpcHREZXBsb3kgY291bGQgbm90IG1ha2UgdGhlIGNhY2hlIGZvbGRlciwgY2hlY2sgeW91ciBmaWxlIHBlcm1pc3Npb25zIGZvciB0aGUgVXBsb2FkcyBhcmVhLic7CiRsYW5nWydOYW1lJ10gPSAnTmFtZSc7CiRsYW5nWydQcm9jY2Vzc2luZyddID0gJ1Byb2Nlc3NpbmcnOwokbGFuZ1snU2F2ZWQnXSA9ICdTYXZlZCc7CiRsYW5nWydEb25lJ10gPSAnRG9uZSc7CiRsYW5nWydWYWxpZGF0aW5nJ10gPSAnVmFsaWRhdGluZyc7CiRsYW5nWydHcm91cHRTZXRfbGFiZWwnXSA9ICdHcm91cCBOYW1lJzsKJGxhbmdbJ0dyb3VwdFR5cGVfbGFiZWwnXSA9ICdUeXBlIG9mIHNjcmlwdHMnOwokbGFuZ1snU2NyaXB0UGlja2VyX2xhYmVsJ10gPSAnU2NyaXB0IFBvb2wnOwokbGFuZ1snTElORSddID0gJ0xJTkUnOwokbGFuZ1snVFlQRSddID0gJ1RZUEUnOwokbGFuZ1snU1VCVFlQRSddID0gJ1NVQlRZUEUnOwokbGFuZ1snU1RSSU5HJ10gPSAnU1RSSU5HJzsKJGxhbmdbJ01FU1NBR0UnXSA9ICdNRVNTQUdFJzsKJGxhbmdbJ0xFVkVMJ10gPSAnTEVWRUwnOwokbGFuZ1snTm90ZXMnXSA9ICdOb3Rlcyc7CiRsYW5nWydXYXJuaW5ncyddID0gJ1dhcm5pbmdzJzsKJGxhbmdbJ0Vycm9ycyddID0gJ0Vycm9ycyc7CiRsYW5nWydoaWRkZW4nXSA9ICdoaWRkZW4nOwokbGFuZ1snU2NyaXB0J10gPSAnU2NyaXB0JzsKJGxhbmdbJ0VVUkxTJ10gPSAnRXh0cmFjdGVkIFVybHMnOwokbGFuZ1snUkNTUyddID0gJ1JlbmRlcmVkIENTUyc7CiRsYW5nWydTQ1NTJ10gPSAnQ1NTIFN0cnVjdHVyZSc7CiRsYW5nWydGQ09OVCddID0gJ0ZpbGUgY29udGVudCc7CiRsYW5nWydpVVJMJ10gPSAnaW1hZ2UgVVJMJzsKJGxhbmdbJ1R5cGUnXSA9ICdUeXBlJzsKJGxhbmdbJ1NpemUnXSA9ICdTaXplJzsKJGxhbmdbJ1N0YXR1cyddID0gJ1N0YXR1cyc7CiRsYW5nWydob3RsaW5rJ10gPSAnPHN0cm9uZz5Ib3RsaW5raW5nOjwvc3Ryb25nPiBhcHBlYXJzICB0byBiZSBhIGhvdGxpbmsuJzsKJGxhbmdbJ0Jyb2tlbmxpbmsnXSA9ICdCcm9rZW4gTGluayc7CiRsYW5nWydOT2Nzc0knXSA9ICdObyBjc3MgaW1hZ2VzJzsKJGxhbmdbJ1llc1ZBbGFzdGVyJ10gPSAnPGgyPllvdSB2YWxpZGF0ZWQhICoqPC9oMj48aW1nIHN0eWxlPSZxdW90O2JvcmRlcjowO3dpZHRoOjg4cHg7aGVpZ2h0OjMxcHgmcXVvdDtzcmM9JnF1b3Q7aHR0cDovL2ppZ3Nhdy53My5vcmcvY3NzLXZhbGlkYXRvci9pbWFnZXMvdmNzcy1ibHVlJnF1b3Q7YWx0PSZxdW90O1ZhbGlkIENTUyEmcXVvdDsgLz48YnIvPiA8c3Ryb25nPioqIHlvdSBhcmUgZmlsdGVyaW5nIGVycm9ycyBhbmQgbWF5IGhhdmUgZmlsdGVyZWQgYSByZWFsIGVycm9yPC9zdHJvbmc+JzsKJGxhbmdbJ3JlbG9hZF9hbGVydCddID0gJ1lvdSBhcmUgcmVsb2FkaW5nIHRoZSBzcmNpcHQgZnJvbSB0aGUgbGFzdCBzYXZlIHBvaW50LiAgWW91IGhhdmUgc2F2ZWQgdGhlIHNjcmlwdCBhbHJlYWR5IGFuZCBpZiB5b3UgbmVlZCB0byBnbyBiYWNrIHRvIHRoZSB2ZXJzaW9uIHdoZW4geW91IGZpcnN0IGNhbWUgaW4gdG8gZWRpdCBwbGVhc2UgY2hlY2sgeW91ciByZXZpc2lvbiBoaXN0b3J5Lic7CiRsYW5nWydpbXBvcnRFeHBvcnQnXSA9ICdJbXBvcnQvRXhwb3J0JzsKJGxhbmdbJ3N0YXJ0RXhwb3J0J10gPSAnU3RhcnQgRXhwb3J0JzsKJGxhbmdbJ3N0YXJ0SW1wb3J0J10gPSAnU3RhcnQgSW1wb3J0JzsKJGxhbmdbJ0NsZWFySW1nJ10gPSAnRGVsZXRlIEN1cnJlbnQgSW1hZ2UnOwokbGFuZ1snRmluaXNoJ10gPSAnRmluaXNoJzsKJGxhbmdbJ3JldmVydCddID0gJ1JldmVydCc7CiRsYW5nWydmb3JtX2NhbmNlbCddID0gJ0NhbmNlbCc7CiRsYW5nWydTYXZlJ10gPSAnU2F2ZSc7CiRsYW5nWydkb25lJ10gPSAnRG9uZSc7CiRsYW5nWydhZGQnXSA9ICdBZGQnOwokbGFuZ1snUkVPUkRFUiddID0gJ1Jlb3JkZXInOwokbGFuZ1snZm9ybV9zdWJtaXQnXSA9ICdTYXZlIFByZWZlcmVuY2VzJzsKJGxhbmdbJ21vZF9wcmVmc190aXRsZSddID0gJ01vZHVsZSBQcmVmZXJlbmNlcyc7CiRsYW5nWydwcmVmc3VwZGF0ZWQnXSA9ICdNb2R1bGUgcHJlZmVyZW5jZXMgdXBkYXRlZC4nOwokbGFuZ1snb3B0aW9uc3VwZGF0ZWQnXSA9ICdvcHRpb25zIHVwZGF0ZWQnOwokbGFuZ1snbW9kZGVzY3JpcHRpb24nXSA9ICdTUEVFRCBZT1VSIFNJVEUgVVAgLi4uISEhISAmYnVsbDsgT3V0cHV0IGR5bmFtaWMgSlMgZmlsZXMgYW5kIENTUyBXSVRIIHNtYXJ0eS4uLiAmYnVsbDsgU2V0IHRoZSBmaWxlcyB0byB1c2UgYSBzdWJkb21haW4uLi4gJmJ1bGw7IGNhY2hlZC4uLiAmYnVsbDsgbWluaWZpZWQuLi4gJmJ1bGw7IERpZCBJIG1lbnRpb24geW91IGNhbiB1c2Ugc21hcnR5IGluIHlvdXIgSlMgYW5kIENTUyBzY3JpcHQhISEhIC0gU2ltcGxlLCBmbGV4aWJsZSEnOwokbGFuZ1snd2VsY29tZV90ZXh0J10gPSAnPHA+SGVsbG8hPC9wPic7CiRsYW5nWydoZWxwJ10gPSAnPGxpbmsgbWVkaWE9JnF1b3Q7c2NyZWVuJnF1b3Q7IGhyZWY9JnF1b3Q7Li4vbW9kdWxlcy9TY3JpcHREZXBsb3kvQ1NTL01hc3RlckNTUy5jc3MmcXVvdDsgdHlwZT0mcXVvdDt0ZXh0L2NzcyZxdW90OyByZWw9JnF1b3Q7c3R5bGVzaGVldCZxdW90Oy8+PGRpdiBjbGFzcz0mcXVvdDtTaW1XcmFwJnF1b3Q7PjxiIGNsYXNzPSZxdW90O3Jib3R0b20mcXVvdDs+PGIgY2xhc3M9JnF1b3Q7cjEmcXVvdDs+PC9iPiA8YiBjbGFzcz0mcXVvdDtyMiZxdW90Oz48L2I+PGIgY2xhc3M9JnF1b3Q7cjMmcXVvdDs+PC9iPiA8YiBjbGFzcz0mcXVvdDtyNCZxdW90Oz48L2I+PC9iPg0KDQo8ZGl2IGNsYXNzPSZxdW90O1NpbWNvbiZxdW90Oz4gPGgzIGNsYXNzPSZxdW90O0JhY2tMaW5rJnF1b3Q7PjxhIG9uY2xpY2s9ImphdmFzY3JpcHQ6d2luZG93Lmhpc3RvcnkuZ28oLTEpIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub2ZvbGxvdyI+JmFtcDtsdDsmYW1wO2x0OyBCYWNrPC9hPjwvaDM+DQo8aDE+V2hhdCBEb2VzIFRoaXMgRG8/LS0tIHRoaXMgbmVlZHMgdXBkYXRpbmc8L2gxPg0KPGgyPldyaXRlIG1hbmFnZSBhbmQgZGVwbG95IEpTIGFuZCBDU1M8L2gyPg0KPGEgaWQ9IlNjcmlwdERlcGxveSI+PC9hPg0KPHA+U2NyaXB0RGVwbG95IG1vZHVsZSB0aGF0IGNhbiBjb21iaW5lIG11bHRpcGxlIENTUyBvciBKYXZhc2NyaXB0IGZpbGVzLCBjb21wcmVzcyB0aGVpciBjb250ZW50cyAoaS5lLiByZW1vdmFsIG9mIHVubmVjZXNzYXJ5IHdoaXRlc3BhY2UvY29tbWVudHMpLCBhbmQgc2VydmUgdGhlIHJlc3VsdHMgd2l0aCBIVFRQIGVuY29kaW5nIChnemlwL2RlZmxhdGUpIGFuZCBoZWFkZXJzIHRoYXQgYWxsb3cgb3B0aW1hbCBjbGllbnQtc2lkZSBjYWNoaW5nLiBUaGlzIGhlbHBzIHlvdSBmb2xsb3cgc2V2ZXJhbCBvZiBZYWhvbyEmIzAzOTtzIDxhIGhyZWY9Imh0dHA6Ly9kZXZlbG9wZXIueWFob28uY29tL3BlcmZvcm1hbmNlL2luZGV4Lmh0bWwjcnVsZXMiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij5SdWxlcyBmb3IgSGlnaCBQZXJmb3JtYW5jZSBXZWIgU2l0ZXM8L2E+LiAoU2VlICZhbXA7cXVvdDtQcm9ibGVtIERvbWFpbiZhbXA7cXVvdDsgYmVsb3cgZm9yIG1vcmUgaW5mby4pIDwvcD4NCjxoMz5UaGUgU2hvcnQgb2YgaXQ8L2gzPg0KPHA+V2lydGUgeW91ciBzY3JpcHRzLCBzZXQgdGhlIG9yZGVyIGFuZCBTY3JpcHREZXBsb3kgd2lsbCBkbyB0aGUgcmVzdCE8L3A+DQo8dGFibGU+DQogIDx0Ym9keT4NCiAgICA8dHI+DQogICAgICA8dGQgc3R5bGU9JnF1b3Q7Qk9SREVSLVJJR0hUOiAjYWFhIDFweCBzb2xpZDsgUEFERElORy1SSUdIVDogNXB4OyBCT1JERVItVE9QOiAjYWFhIDFweCBzb2xpZDsgUEFERElORy1MRUZUOiA1cHg7IFBBRERJTkctQk9UVE9NOiA1cHg7IEJPUkRFUi1MRUZUOiAjYWFhIDFweCBzb2xpZDsgUEFERElORy1UT1A6IDVweDsgQk9SREVSLUJPVFRPTTogI2FhYSAxcHggc29saWQmcXVvdDs+PHN0cm9uZz5CZWZvcmU8L3N0cm9uZz48L3RkPg0KICAgICAgPHRkIHN0eWxlPSZxdW90O0JPUkRFUi1SSUdIVDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctUklHSFQ6IDVweDsgQk9SREVSLVRPUDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctTEVGVDogNXB4OyBQQURESU5HLUJPVFRPTTogNXB4OyBCT1JERVItTEVGVDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctVE9QOiA1cHg7IEJPUkRFUi1CT1RUT006ICNhYWEgMXB4IHNvbGlkJnF1b3Q7PjxpbWcgc3JjPSZxdW90O2h0dHA6Ly9tcmNsYXkub3JnL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDA4LzA5L2ZpZGRsZXJfYmVmb3JlLnBuZyZxdW90OyBhbHQ9JnF1b3Q7YWZ0ZXImcXVvdDsgLz48L3RkPg0KICAgIDwvdHI+DQogICAgPHRyPg0KICAgICAgPHRkIHN0eWxlPSZxdW90O0JPUkRFUi1SSUdIVDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctUklHSFQ6IDVweDsgQk9SREVSLVRPUDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctTEVGVDogNXB4OyBQQURESU5HLUJPVFRPTTogNXB4OyBCT1JERVItTEVGVDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctVE9QOiA1cHg7IEJPUkRFUi1CT1RUT006ICNhYWEgMXB4IHNvbGlkJnF1b3Q7PjxzdHJvbmc+QWZ0ZXI8L3N0cm9uZz48L3RkPg0KICAgICAgPHRkIHN0eWxlPSZxdW90O0JPUkRFUi1SSUdIVDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctUklHSFQ6IDVweDsgQk9SREVSLVRPUDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctTEVGVDogNXB4OyBQQURESU5HLUJPVFRPTTogNXB4OyBCT1JERVItTEVGVDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctVE9QOiA1cHg7IEJPUkRFUi1CT1RUT006ICNhYWEgMXB4IHNvbGlkJnF1b3Q7PjxpbWcgc3JjPSZxdW90O2h0dHA6Ly9tcmNsYXkub3JnL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDA4LzA5L2ZpZGRsZXJfYWZ0ZXIucG5nJnF1b3Q7IGFsdD0mcXVvdDtiZWZvcmUmcXVvdDsgLz48L3RkPg0KICAgIDwvdHI+DQogIDwvdGJvZHk+DQo8L3RhYmxlPg0KDQoNCg0KPGgyPjxhIGlkPSJGZWF0dXJlcyI+PC9hPkZlYXR1cmVzPC9oMj4NCjx1bD4NCiAgPGxpPkNvbWJpbmVzIGFuZCBtaW5pZmllcyBtdWx0aXBsZSBDU1Mgb3IgSmF2YVNjcmlwdCBmaWxlcyBpbnRvIGEgc2luZ2xlICAgZG93bmxvYWQgPC9saT4NCiAgPGxpPlVzZXMgYW4gPGEgaHJlZj0iaHR0cDovL2NvZGUuZ29vZ2xlLmNvbS9wL21pbmlmeS9zb3VyY2UvYnJvd3NlL3RydW5rL21pbi9saWIvSlNNaW4ucGhwIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub2ZvbGxvdyI+ZW5oYW5jZWQgcG9ydDwvYT4gb2YgRG91Z2xhcyBDcm9ja2ZvcmQmIzAzOTtzIDxhIGhyZWY9Imh0dHA6Ly93d3cuY3JvY2tmb3JkLmNvbS9qYXZhc2NyaXB0L2pzbWluLmh0bWwiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij5KU01pbiAgIGxpYnJhcnk8L2E+IGFuZCBjdXN0b20gY2xhc3NlcyB0byBtaW5pZnkgPGEgaHJlZj0iaHR0cDovL2NvZGUuZ29vZ2xlLmNvbS9wL21pbmlmeS9zb3VyY2UvYnJvd3NlL3RydW5rL21pbi9saWIvTWluaWZ5L0NTUy5waHAiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij5DU1M8L2E+IGFuZCA8YSBocmVmPSJodHRwOi8vY29kZS5nb29nbGUuY29tL3AvbWluaWZ5L3NvdXJjZS9icm93c2UvdHJ1bmsvbWluL2xpYi9NaW5pZnkvSFRNTC5waHAiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij5IVE1MPC9hPjwvbGk+DQogIDxsaT5DYWNoZXMgc2VydmVyLXNpZGUgdG8gYXZvaWQgZG9pbmcgdW5uZWNlc3Nhcnkgd29yayA8L2xpPg0KICA8bGk+UmVzcG9uZHMgd2l0aCBhbiBIVFRQIDMwNCAoTm90IE1vZGlmaWVkKSByZXNwb25zZSB3aGVuIHRoZSBicm93c2VyIGhhcyBhbiAgIHVwLXRvLWRhdGUgY2FjaGUgY29weSAqKiA8L2xpPg0KICA8bGk+TW9zdCBtb2R1bGVzIGFyZSBsYXp5LWxvYWRlZCBhcyBuZWVkZWQgKDMwNCByZXNwb25zZXMgdXNlIG1pbmltYWwgY29kZSkgICoqIDwvbGk+DQogIDxsaT5BdXRvbWF0aWNhbGx5IHJld3JpdGVzIHJlbGF0aXZlIFVSSXMgaW4gY29tYmluZWQgQ1NTIGZpbGVzIHRvIHBvaW50IHRvIHZhbGlkIGxvY2F0aW9ucyA8L2xpPg0KICA8bGk+V2l0aCBjYWNoaW5nIGVuYWJsZWQsIFNjcmlwdERlcGxveSBpcyBjYXBhYmxlIG9mIGhhbmRsaW5nIGh1bmRyZWRzIG9mIHJlcXVlc3RzIHBlciBzZWNvbmQgb24gYSBtb2RlcmF0ZWx5IHBvd2VyZnVsIHNlcnZlci4gPC9saT4NCiAgPGxpPkNvbnRlbnQtRW5jb2Rpbmc6IGd6aXAsIGJhc2VkIG9uIHJlcXVlc3QgaGVhZGVycy4gQ2FjaGluZyBhbGxvd3MgaXQgc28gc2VydmUgZ3ppcHBlZCBmaWxlcyBmYXN0ZXIgdGhhbiBBcGFjaGUmIzAzOTtzIG1vZF9kZWZsYXRlIG9wdGlvbiEgPC9saT4NCjwvdWw+DQo8aDM+PGVtPjxzdHJvbmc+KiogTm90ZTo8L3N0cm9uZz4gSXQgaXMgYmVzdCB0byB1c2UgYSAuaHRhY2Nlc3Mgc2NyaXB0IHRvIHNldCB0aGUgYWdlIHRpbWVzLiBTY3JpcHREZXBsb3kgaXMgZGVzaWduZWQgZm9yIGVmZmljaWVuY3ksIGJ1dCBmb3IgdmVyeSBoaWdoIHRyYWZmaWMgc2l0ZXMsIFNjcmlwdERlcGxveSBtYXkgc2VydmUgZmlsZXMgc2xvd2VyIHRoYW4geW91ciBIVFRQZCBkdWUgdG8gdGhlIENHSSBvdmVyaGVhZCBvZiBQSFAuICBUbyBvdmVyIGNvbWUgdGhpcyBKdXN0IGNoZWNrICZxdW90O3VzZSAuaHRhY2Nlc3MgaW4gb3B0aW9ucyZxdW90OzwvZW0+PC9oMz4NCjxoMj48YSBuYW1lPSJSZXF1aXJlbWVudHMiPjwvYT5SZXF1aXJlbWVudHM8L2gyPg0KPHVsPg0KICA8bGk+VGhlIGNvbW1vbmx5IGluc3RhbGxlZCA8YSBocmVmPSJodHRwOi8vdXMzLnBocC5uZXQvbWFudWFsL2VuL3psaWIuaW5zdGFsbGF0aW9uLnBocCIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPnpsaWIgICBleHRlbnNpb248L2E+IGlzIHJlY29tbWVuZGVkIGZvciBIVFRQIGVuY29kaW5nIGZ1bmN0aW9uYWxpdHkuIDwvbGk+DQo8L3VsPg0KPGJyLz48YnIvPg0KPGgxPkhvdyBEbyBJIFVzZSBJdDwvaDE+DQoNCg0KPGgzPkdldCBhIHNpbmdsZSBzY3JpcHQ8L2gzPg0KdXNlIDxzcGFuIGNsYXNzPSZxdW90O2NvZGVISUdITElHSFQmcXVvdDs+e2Ntc19tb2R1bGUgbW9kdWxlPVNjcmlwdERlcGxveSBzY3JpcHRJRD0mcXVvdDsxJnF1b3Q7fSA8L3NwYW4+IDxici8+PGJyLz4NCjxoMz5HZXQgYSBzY3JpcHQgZ3JvdXA8L2gzPg0KdXNlIDxzcGFuIGNsYXNzPSZxdW90O2NvZGVISUdITElHSFQmcXVvdDs+e2Ntc19tb2R1bGUgbW9kdWxlPVNjcmlwdERlcGxveSBncm91cElEPSZxdW90OzEmcXVvdDt9IDwvc3Bhbj4gPGJyLz48YnIvPg0KPGgyPkFsbCBvdXRwdXQgaXMgaW4gdGhlIFhIVE1MIGZvcm1hdCwgeW91IHNob3VsZCB3b3JrIGluIHRoYXQuPC9oMj4NCg0KPGJyLz48YnIvPg0KPGg0PlBhcmFtczwvaDQ+DQo8dWw+DQo8bGk+PHN0cm9uZz5zY3JpcHRJRD0mcXVvdDsmcXVvdDsgPC9zdHJvbmc+PGVtPihSZXF1aXJlZC9vcHRpb25hbCk8L2VtPiA8YnIvPnwgc2V0IHRoZSBJRCBSZXF1aXJlZCBvbmx5IGlmIGdyb3VwSUQgbm90IGNhbGxlZDxici8+PC9saT4NCjxsaT48c3Ryb25nPmdyb3VwSUQ9JnF1b3Q7JnF1b3Q7IDwvc3Ryb25nPjxlbT4oUmVxdWlyZWQvb3B0aW9uYWwpPC9lbT4gPGJyLz58IHNldCB0aGUgSUQgUmVxdWlyZWQgb25seSBpZiBzY3JpcHRJRCBub3QgY2FsbGVkPGJyLz48L2xpPg0KPGxpPjxzdHJvbmc+U3R5cGU9JnF1b3Q7JnF1b3Q7IDwvc3Ryb25nPjxlbT4oUmVxdWlyZWQvKSBKUy9DU1M8L2VtPiA8YnIvPnwgc2V0IHRoZSBJRCBSZXF1aXJlZCBvbmx5IGlmIHNjcmlwdElEIG5vdCBjYWxsZWQ8YnIvPjwvbGk+DQoNCjxsaT48c3Ryb25nPlNtYXJ0eU9uPSZxdW90OyZxdW90OyA8L3N0cm9uZz48ZW0+KG9wdGlvbmFsKSB0cnVlL2ZhbHNlIDxzdHJvbmc+RGVmYXVsdDpudWxsPC9zdHJvbmc+PC9lbT4gPGJyLz58IFRoaXMgbGV0cyB5b3Ugb3ZlciByaWRlIHRoZSBnbG9ibGVzPGJyLz48L2xpPg0KPGxpPjxzdHJvbmc+TWluaWZ5PSZxdW90OyZxdW90OyA8L3N0cm9uZz48ZW0+KG9wdGlvbmFsKSB0cnVlL2ZhbHNlIDxzdHJvbmc+RGVmYXVsdDp0cnVlPC9zdHJvbmc+PC9lbT4gPGJyLz58ICBUaGlzIGxldHMgeW91IG92ZXIgcmlkZSB0aGUgZ2xvYmxlczxici8+PC9saT4NCg0KDQoNCg0KDQoNCjxsaT48c3Ryb25nPk1lZGlhVHlwZT0mcXVvdDsmcXVvdDsgPC9zdHJvbmc+PGVtPihvcHRpb25hbCk8L2VtPiA8YnIvPnwgc2V0IE1lZGlhIHR5cGUgZm9yIENTUyBmaWxlcyBoZXJlLi4uIG92ZXJyaWRlcyBkYiBzZXRpbmdzLjxici8+PC9saT4NCjxsaT48c3Ryb25nPmltcG9ydD0mcXVvdDsmcXVvdDsgPC9zdHJvbmc+PGVtPihvcHRpb25hbCkgdHJ1ZS9mYWxzZTwvZW0+IDxici8+fCBzZXQgdGhlIGluY2x1c2lvbiBzdHlsZSBmb3IgQ1NTIGZpbGVzIGhlcmUuLi4gb3ZlcnJpZGVzIGRiIHNldGluZ3MuIEV4OiB0cnVlICBnaXZlcyA8c3R5bGUgdHlwZT1cJnF1b3Q7dGV4dC9jc3NcJnF1b3Q7PkBpbXBvcnQgdXJsKCZxdW90O3VybC9jc3NmaWxlLmNzcyZxdW90Oykgc2NyZWVuOzwvc3R5bGU+PGJyLz48L2xpPg0KDQo8bGk+PHN0cm9uZz5jYWNoZUJ1c3Rlcjwvc3Ryb25nPiA8ZW0+KG9wdGlvbmFsKSA8c3Ryb25nPkRlZmF1bHQ6ZmFsc2U8L3N0cm9uZz48L2VtPjxici8+fCBUaGlzIGlzIHRvIGluc3RhbnRseSB1bmNhY2hlIGFuIHNjcmlwdCBvbiB0aGUgY2xpZW50IHNpZGUgYWZ0ZXIgYSBuZXcgdXBsb2FkZWQgc2NyaXB0IGlzIGNyZWF0ZWQuLi4gaWU6IDEyLmpzPzEyNTUyMjUwMDcgIDxmb250IGNvbG9yPSZxdW90O3JlZCZxdW90Oz48c3Ryb25nPiggdHJ1ZS9mYWxzZSApPC9zdHJvbmc+PC9mb250PjwvbGk+DQo8bGk+PHN0cm9uZz5hc3NpZ249JnF1b3Q7JnF1b3Q7IDwvc3Ryb25nPjxlbT4ob3B0aW9uYWwpPC9lbT4gPGJyLz58IEFzc2lnbiB0aGUgb3V0cHV0IChyZXR1cm4gdGhlIHNtYXJ0eSBhc3NpZ25tZW50KSAgVXNlIGluIGNvbmp1bmN0aW9uIHdpdGggb3V0IHdpdGhvdXQgVVJMPC9saT4NCjxsaT48c3Ryb25nPmZzaXplPSZxdW90OyZxdW90OyA8L3N0cm9uZz48ZW0+KG9wdGlvbmFsKTwvZW0+IDxici8+fCBnZXQgdGhlIHNpemU8L2xpPg0KPGxpPjxzdHJvbmc+cm9vdFVybD0mcXVvdDsmcXVvdDsgPC9zdHJvbmc+PGVtPihvcHRpb25hbCk8L2VtPiA8YnIvPnwgU2NyaXB0RGVwbG95IGNyZWF0ZXMgYSB0ZW1wIGRpcmVjdG9yIGluIHRoZSB1cGxvYWQgZm9sZGVyLiAgSWYgeW91IG1vdmUgdGhlIHBhdGggdG8gdGhlIHVwbGFvZCB0byBhIHN1YmRvbWFpbiB5b3UgbWF5IGd1aWRlIHRoZSBvdXRwdXQgd2l0aCB0aGlzLjwvbGk+DQogICAgICAgIDx1bCBzdHlsZT0mcXVvdDtsaXN0LXN0eWxlLXBvc2l0aW9uOmluc2lkZTsmcXVvdDs+PGxpPjxzdHJvbmc+RXhhcG1sZTo8L3N0cm9uZz4geW91IGNoYW5nZWQgPENPREU+JGNvbmZpZ1smIzAzOTt1cGxvYWRzX3BhdGgmIzAzOTtdID0gJiMwMzk7L3Zhci93d3cvdmhvc3RzL2RvbWFpbi5vcmcvaHR0cGRvY3MvdXBsb2FkcyYjMDM5Ozs8L0NPREU+IDwvbGk+DQogICAgICAgICAgICA8bGk+PHN0cm9uZz50bzwvc3Ryb25nPiA8Q09ERT4kY29uZmlnWyYjMDM5O3VwbG9hZHNfcGF0aCYjMDM5O10gPSBcL3Zhci93d3cvdmhvc3RzL2RvbWFpbi5vcmcvc3ViZG9tYWlucy9tZWRpYS9odHRwZG9jcy91cGxvYWRzJiMwMzk7OzwvQ09ERT48L2xpPg0KICAgICAgICAgICAgPGxpPm5vdyB0aGUgdXBsb2FkcyB1cmwgd291bGQgbm90IHdvcmsgYXMgaXQgd291bGQgYmUgPHU+aHR0cDovL3d3dy5kb21haW4ub3JnL3VwbG9hZHM8L3U+PC9saT4NCiAgICAgICAgICAgIDxsaT48c3Ryb25nPlNvPC9zdHJvbmc+IGl0IGNhbiBiZSBjaGFuZ2VkIGhlcmUgdG8gPHU+aHR0cDovL21lZGlhLmRvbWFpbi5vcmcvdXBsb2FkczwvdT4gIDxmb250IGNvbG9yPSZxdW90O3JlZCZxdW90Oz48c3Ryb25nPihOT1RFOiB3YXRjaCB5b3VyIC8gKTwvc3Ryb25nPjwvZm9udD48L2xpPg0KICAgICAgICA8L3VsPg0KPGxpPjxzdHJvbmc+VVJMPSZxdW90OyZxdW90OyA8L3N0cm9uZz48ZW0+KG9wdGlvbmFsKTwvZW0+IDxici8+fG91dHB1dHMgdGhlIHVybC48L2xpPg0KDQoNCg0KDQoJCQ0KDQoNCg0KDQoNCg0KDQoNCjwhLS08bGk+PHN0cm9uZz5TYW5kQm94PXRydWUgPC9zdHJvbmc+PGVtPihvcHRpb25hbCk8L2VtPiA8YnIvPnwgZmFsc2U8YnIvPjwvbGk+DQoNCjxsaT48c3Ryb25nPlJVTmFjdGlvbj0mYW1wO3F1b3Q7JmFtcDtxdW90OyA8L3N0cm9uZz48ZW0+KG9wdGlvbmFsKTwvZW0+IDxici8+fCBVRFQ8YnIvPnwgVVJMIDxlbT4oLi4vcGx1Z2lucy9mdW5jdGlvbi5maWxlbmFtZS5waHApPC9lbT48YnIvPnwgKk1vcmUgY29taW5nIFNvb24qPGJyLz48L2xpPg0KPGxpPjxzdHJvbmc+TGFuZz0mYW1wO3F1b3Q7JmFtcDtxdW90OyA8L3N0cm9uZz48ZW0+KG9wdGlvbmFsKTwvZW0+IDxici8+fCBVc2UgQ291bnRyeSBDb2RlcyBUbyBkeW5hbWljbHkgc2V0IHRoZSBsYW5ndWFnZSBvZiB0aGUgUGF5UGFsIHBhZ2U8YnIvPjwvbGk+LS0+DQoNCjwvdWw+DQo8YnIvPg0KDQo8YnIvPjxici8+DQo8aDI+PGEgaWQ9IlByb2JsZW1fRG9tYWluIj48L2E+UHJvYmxlbSBEb21haW48L2gyPg0KPHA+UGFnZXMgdGhhdCByZWZlciB0byBtdWx0aXBsZSBDU1Mgb3IgSmF2YVNjcmlwdCBmaWxlcyBvZnRlbiBzdWZmZXIgZnJvbSBzbG93ZXIgICBwYWdlIGxvYWRzLCBkdWUgdG8gdGhlIGJyb3dzZXIgcmVxdWVzdGluZyBlYWNoIGZpbGUgaW5kaXZpZHVhbGx5LiBNYW55IGJyb3dzZXJzICAgYWxzbyBhcmUgbGltaXRlZCB0byBhIGZldyBzaW11bHRhbmVvdXMgcmVxdWVzdHMgcGVyIGRvbWFpbi4gVGhlIHdhaXQgZm9yIGEgICBzZXJpZXMgb2YgcmVxdWVzdHMgYW5kIHRoZSB0cmFuc2ZlciBvZiB1bm9wdGltaXplZCBmaWxlcyBjYW4gZHJhbWF0aWNhbGx5IHJlZHVjZSAgIHRoZSBjbGllbnQtc2lkZSBwZXJmb3JtYW5jZSBvZiB5b3VyIHNpdGUuIDwvcD4NCjxwPkhlcmUgYXJlIGEgaGFuZGZ1bCBvZiBZYWhvbyEmIzAzOTtzIGJlc3QgcHJhY3RpY2VzIHRoYXQgYXJlIGFkZHJlc3NlZCBieSB0aGUgdXNlIG9mIFNjcmlwdERlcGxveS4gPC9wPg0KPHVsPg0KICA8bGk+PGEgaHJlZj0iaHR0cDovL2RldmVsb3Blci55YWhvby5jb20vcGVyZm9ybWFuY2UvcnVsZXMuaHRtbCNudW1faHR0cCIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPk1ha2UgRmV3ZXIgSFRUUCBSZXF1ZXN0czwvYT48L2xpPg0KICA8bGk+PGEgaHJlZj0iaHR0cDovL2RldmVsb3Blci55YWhvby5jb20vcGVyZm9ybWFuY2UvcnVsZXMuaHRtbCNleHBpcmVzIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub2ZvbGxvdyI+QWRkIGFuIEV4cGlyZXMgb3IgYSBDYWNoZS1Db250cm9sIEhlYWRlcjwvYT48L2xpPg0KICA8bGk+PGEgaHJlZj0iaHR0cDovL2RldmVsb3Blci55YWhvby5jb20vcGVyZm9ybWFuY2UvcnVsZXMuaHRtbCNnemlwIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub2ZvbGxvdyI+R3ppcCBDb21wb25lbnRzPC9hPjwvbGk+DQogIDxsaT48YSBocmVmPSJodHRwOi8vZGV2ZWxvcGVyLnlhaG9vLmNvbS9wZXJmb3JtYW5jZS9ydWxlcy5odG1sI21pbmlmeSIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPk1pbmlmeSBKYXZhU2NyaXB0IGFuZCBDU1M8L2E+PC9saT4NCiAgPGxpPjxhIGhyZWY9Imh0dHA6Ly9kZXZlbG9wZXIueWFob28uY29tL3BlcmZvcm1hbmNlL3J1bGVzLmh0bWwjZXRhZ3MiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij5Db25maWd1cmUgRVRhZ3M8L2E+PC9saT4NCiAgPGxpPjxhIGhyZWY9Imh0dHA6Ly9kZXZlbG9wZXIueWFob28uY29tL3BlcmZvcm1hbmNlL3J1bGVzLmh0bWwjdW5kZXIyNSIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPktlZXAgQ29tcG9uZW50cyB1bmRlciAyNUs8L2E+PC9saT4NCjwvdWw+DQo8aDM+PGEgbmFtZT0iQWNrbm93bGVkZ21lbnRzIj48L2E+QWNrbm93bGVkZ21lbnRzPC9oMz4NCjxwPk1pbmlmeSB3YXMgaW5zcGlyZWQgYnkgPGEgaHJlZj0iaHR0cDovL2NvZGUuZ29vZ2xlLmNvbS9wL2pzY3NzY29tcC8iIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij5qc2Nzc2NvbXA8L2E+IGJ5IE1heGltIE1hcnR5bnl1ayBhbmQgYnkgdGhlIGFydGljbGUgJiMwMzk7PGEgaHJlZj0iaHR0cDovL3d3dy5odW5sb2NrLmNvbS9ibG9ncy9TdXBlcmNoYXJnZWRfSmF2YXNjcmlwdCIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPlN1cGVyY2hhcmdlZCBKYXZhU2NyaXB0PC9hPiYjMDM5OyBieSBQYXRyaWNrIEh1bmxvY2suIDwvcD4NCjxwPlRoZSA8YSBocmVmPSJodHRwOi8vd3d3LmNyb2NrZm9yZC5jb20vamF2YXNjcmlwdC9qc21pbi5odG1sIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub2ZvbGxvdyI+SlNNaW4gbGlicmFyeTwvYT4gdXNlZCBmb3IgSmF2YVNjcmlwdCBtaW5pZmljYXRpb24gd2FzIG9yaWdpbmFsbHkgICB3cml0dGVuIGJ5IERvdWdsYXMgQ3JvY2tmb3JkIGFuZCB3YXMgPGEgaHJlZj0iaHR0cDovL2NvZGUuZ29vZ2xlLmNvbS9wL2pzbWluLXBocCIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPnBvcnRlZCB0byBQSFA8L2E+IGJ5IFJ5YW4gICBHcm92ZSBzcGVjaWZpY2FsbHkgZm9yIHVzZSBpbiBNaW5pZnkuIDwvcD4NCg0KDQo8aDM+U3VwcG9ydDwvaDM+DQo8aDQ+U2NyZWVuY2FzdHMgZm9yIGV4dHJhIGhlbHAgd2lsbCBmYWxsb3ctLS0gb24gdGhlIFRPRE88L2g0Pg0KPHA+VGhpcyBtb2R1bGUgZG9lcyBub3QgaW5jbHVkZSBjb21tZXJjaWFsIHN1cHBvcnQuIEhvd2V2ZXIsIHRoZXJlIGFyZSBhIG51bWJlciBvZiByZXNvdXJjZXMgYXZhaWxhYmxlIHRvIGhlbHAgeW91IHdpdGggaXQ6PC9wPg0KPHVsPg0KPGxpPkZvciB0aGUgbGF0ZXN0IHZlcnNpb24gb2YgdGhpcyBtb2R1bGUgb3IgdG8gZmlsZSBhIGJ1ZyByZXBvcnQgdmlzaXQgPGEgaHJlZj0iaHR0cDovL2Rldi5jbXNtYWRlc2ltcGxlLm9yZy9wcm9qZWN0cy9zY3JpcHRkZXBsb3kiPnRoZSBDTVMgRm9yZ2U8L2E+LjwvbGk+DQo8bGk+QWRkaXRpb25hbCBkaXNjdXNzaW9uIG9mIHRoaXMgbW9kdWxlIG1heSBhbHNvIGJlIGZvdW5kIGluIHRoZSA8YSBocmVmPSJodHRwOi8vZm9ydW0uY21zbWFkZXNpbXBsZS5vcmciPkNNUyBNYWRlIFNpbXBsZSBGb3J1bXM8L2E+LjwvbGk+DQo8L3VsPg0KDQo8aDM+Q29weXJpZ2h0IGFuZCBMaWNlbnNlPC9oMz4NCjxwPkNvcHlyaWdodCAmYW1wO2NvcHk7IDIwMDksIGplcmVteUJhc3MgJmFtcDtsdDs8YSBocmVmPSJodHRwOi8vY29yYmVuc3Byb2R1Y3RzLmNvbSI+Y29yYmVuc3Byb2R1Y3RzLmNvbTwvYT4mYW1wO2d0OyBBbGwgUmlnaHRzIEFyZSBSZXNlcnZlZC48L3A+DQo8c3Ryb25nPlN1cHBvcnQgbW9yZSBtb2RzIGxpa2UgdGhpczo8L3N0cm9uZz48Zm9ybSBhY3Rpb249JnF1b3Q7aHR0cHM6Ly93d3cucGF5cGFsLmNvbS9jZ2ktYmluL3dlYnNjciZxdW90OyBtZXRob2Q9JnF1b3Q7cG9zdCZxdW90Oz4NCjxpbnB1dCB0eXBlPSZxdW90O2hpZGRlbiZxdW90OyBuYW1lPSZxdW90O2NtZCZxdW90OyB2YWx1ZT0mcXVvdDtfcy14Y2xpY2smcXVvdDs+DQo8aW5wdXQgdHlwZT0mcXVvdDtoaWRkZW4mcXVvdDsgbmFtZT0mcXVvdDtob3N0ZWRfYnV0dG9uX2lkJnF1b3Q7IHZhbHVlPSZxdW90Ozg4MTc2NzUmcXVvdDs+DQo8aW5wdXQgdHlwZT0mcXVvdDtpbWFnZSZxdW90OyBzcmM9JnF1b3Q7aHR0cHM6Ly93d3cucGF5cGFsLmNvbS9lbl9VUy9pL2J0bi9idG5fZG9uYXRlX0xHLmdpZiZxdW90OyBib3JkZXI9JnF1b3Q7MCZxdW90OyBuYW1lPSZxdW90O3N1Ym1pdCZxdW90OyBhbHQ9JnF1b3Q7UGF5UGFsIC0gVGhlIHNhZmVyLCBlYXNpZXIgd2F5IHRvIHBheSBvbmxpbmUhJnF1b3Q7Pg0KPGltZyBhbHQ9JnF1b3Q7JnF1b3Q7IGJvcmRlcj0mcXVvdDswJnF1b3Q7IHNyYz0mcXVvdDtodHRwczovL3d3dy5wYXlwYWwuY29tL2VuX1VTL2kvc2NyL3BpeGVsLmdpZiZxdW90OyB3aWR0aD0mcXVvdDsxJnF1b3Q7IGhlaWdodD0mcXVvdDsxJnF1b3Q7Pg0KPC9mb3JtPjxici8+DQo8cD5UaGlzIG1vZHVsZSBoYXMgYmVlbiByZWxlYXNlZCB1bmRlciB0aGUgPGEgaHJlZj0iaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMIj5HTlUgUHVibGljIExpY2Vuc2U8L2E+LiBZb3UgbXVzdCBhZ3JlZSB0byB0aGlzIGxpY2Vuc2UgYmVmb3JlIHVzaW5nIHRoZSBtb2R1bGUuPC9wPg0KPC9kaXYgPjxiIGNsYXNzPSZxdW90O3Jib3R0b20mcXVvdDs+PGIgY2xhc3M9JnF1b3Q7cjQmcXVvdDs+PC9iPjxiIGNsYXNzPSZxdW90O3IzJnF1b3Q7PjwvYj4gPGIgY2xhc3M9JnF1b3Q7cjImcXVvdDs+PC9iPiA8YiBjbGFzcz0mcXVvdDtyMSZxdW90Oz48L2I+PC9iPg0KDQo8L2Rpdj4nOwokbGFuZ1sndXRteiddID0gJzE1Njg2MTM1My4xMjgzMjg3MzQ5LjMyMDIuNzQudXRtY3NyPWZvcnVtLmNtc21hZGVzaW1wbGUub3JnfHV0bWNjbj0ocmVmZXJyYWwpfHV0bWNtZD1yZWZlcnJhbHx1dG1jY3Q9L2luZGV4LnBocCc7CiRsYW5nWyd1dG1hJ10gPSAnMTU2ODYxMzUzLjE3OTA1MjYyMzA4NDExMDEwMC4xMjEwNDIzNTc3LjEyODQyNDE5MDQuMTI4NDI0NjcyMS4zMjUxJzsKJGxhbmdbJ3FjYSddID0gJzEyMTA5NzE2OTAtMjczMDgwNzMtODE5NTI4MzInOwokbGFuZ1sndXRtYyddID0gJzE1Njg2MTM1Myc7CiRsYW5nWyd1dG1iJ10gPSAnMTU2ODYxMzUzLjEuMTAuMTI4NDI0NjcyMSc7Cj8+]]></data>
	</file>
	<file>
	  <filename>/lang/ext/nl_NL.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ1NjcmlwdCBEZXBsb3kgJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsJ10gPSAnVSBrdW50IGhldCBiZXN0ZSBudSBlZXJzdCBkZSBoZWxwIHBhZ2luYSBsZXplbi4uLic7CiRsYW5nWydwb3N0dW5pbnN0YWxsJ10gPSAnUGxlYXNlIGZlZWwgZnJlZSB0byBsZXQgdXMga25vdyBpZiB0aGVyZSBpcyBhIHdheSB0byBtYWtlIFNjcmlwdERlcGxveSBiZXR0ZXIsIDxhIGhyZWY9Imh0dHA6Ly9oZWxwLmNvcmJlbnNwcm9kdWN0cy5jb20vbWFrZS1jb250YWN0Lmh0bWwiPkNvbnRhY3QgdXMgd2UmIzAzOTtlciBoYXBweSB0byBoZWFyIGZyb20geW91LjwvYT4nOwokbGFuZ1sncmVhbGx5X3VuaW5zdGFsbCddID0gJ0hldCBkZSZpdW1sO25zdGFsbGVyZW4gdmFuIGRlemUgbW9kdWxlIHphbCBnZWVuIGVmZmVjdCBoZWJiZW4gb3AgZGUgZ2ViZXVydGVuaXNzZW4gZGF0YSBlbiBhbGxlICZxdW90O2Jvb2tzIGRhdGEmcXVvdDsgemFsIG5pZXQgd29yZGVuIHZlcndpamRlcmQuIFdpbHQgdSBkb29yZ2Fhbj8nOwokbGFuZ1sndW5pbnN0YWxsZWQnXSA9ICdNb2R1bGUgZ2VkZSZpdW1sO25zdGFsbGVlcmQuJzsKJGxhbmdbJ2luc3RhbGxlZCddID0gJ01vZHVsZSB2ZXJzaWUgJXMgZ2UmaXVtbDtuc3RhbGxlZXJkLic7CiRsYW5nWyd1cGdyYWRlZCddID0gJ01vZHVsZSBiaWpnZXdlcmt0IG5hYXIgdmVyc2llICVzLic7CiRsYW5nWydtb2R1bGVfb3B0aW9ucyddID0gJ01vZHVsZSBPcHRpZXMnOwokbGFuZ1sndGVtcGxhdGVfbWFuZyddID0gJ1NqYWJsb29uIGJlaGVlcic7CiRsYW5nWydEZXBsb3ltZW50c2V0dGluZ3MnXSA9ICdEZXBsb3ltZW50IE9wdGllcyc7CiRsYW5nWydWYWxzZXR0aW5ncyddID0gJ1ZhbGlkYXRpZSBpbnN0ZWxsaW5nZW4nOwokbGFuZ1snZW4nXSA9ICdFbmdlbHMnOwokbGFuZ1snZnInXSA9ICdGcmFucyc7CiRsYW5nWydpdCddID0gJ0l0YWxpYWFucyc7CiRsYW5nWydrbyddID0gJ0tvcmVhYW5zJzsKJGxhbmdbJ2phJ10gPSAnSmFwYW5zJzsKJGxhbmdbJ2VzJ10gPSAnU3BhYW5zJzsKJGxhbmdbJ3poLWNuJ10gPSAnQ2hpbmVlcyc7CiRsYW5nWydubCddID0gJ05lZGVybGFuZHMnOwokbGFuZ1snZGUnXSA9ICdEdWl0cyc7CiRsYW5nWydwbCddID0gJ1Bvb2xzJzsKJGxhbmdbJ3JvJ10gPSAnUm9lbWVlbnMnOwokbGFuZ1snY3MnXSA9ICdFc3RzJzsKJGxhbmdbJ2JnJ10gPSAnQnVsZ2FhcnMnOwokbGFuZ1snc3YnXSA9ICdad2VlZHMnOwokbGFuZ1snZmEnXSA9ICdQZXJzaXNjaCAoRmFyc2kpJzsKJGxhbmdbJ3J1J10gPSAnUnVzc2lzY2gnOwokbGFuZ1sncHQtQlInXSA9ICdQb3J0dWdlZXMnOwokbGFuZ1snTG5vbmUnXSA9ICdHZWVuIHdhYXJzY2h1d2luZ2VuJzsKJGxhbmdbJ0wwJ10gPSAnTGV2ZWwgMCAnOwokbGFuZ1snTDEnXSA9ICdMZXZlbCAxICc7CiRsYW5nWydMMiddID0gJ0xldmVsIDIgJzsKJGxhbmdbJ2NzczEnXSA9ICdDc3MgMSc7CiRsYW5nWydjc3MyJ10gPSAnQ3NzIDInOwokbGFuZ1snY3NzMjEnXSA9ICdDc3MgMi4xJzsKJGxhbmdbJ2NzczMnXSA9ICdDc3MgMyc7CiRsYW5nWydzdmcnXSA9ICdTdmcnOwokbGFuZ1snc3ZnYmFzaWMnXSA9ICdTdmQgc3RhbmRhYXJkJzsKJGxhbmdbJ3N2Z3RpbnknXSA9ICdTdmcgdGlueSc7CiRsYW5nWydtb2JpbGUnXSA9ICdtb2JpZWwnOwokbGFuZ1snYXRzYy10diddID0gJ0F0c2MtVHYnOwokbGFuZ1sndHYnXSA9ICdUdic7CiRsYW5nWydub25lJ10gPSAnZ2Vlbic7CiRsYW5nWydJbmxpbmUnXSA9ICdBdXRvbWF0aXNjaCBkZXRlY3RlcmVuJzsKJGxhbmdbJ0hUTUw1J10gPSAnSFRNTDUgKGV4cGVyaW1lbnRlZWwpJzsKJGxhbmdbJ1hIVE1MXzFfMF9TdHJpY3QnXSA9ICdYSFRNTCAxLjAgU3RyaWN0ICc7CiRsYW5nWydYSFRNTF8xXzBfVHJhbnNpdGlvbmFsJ10gPSAnWEhUTUwgMS4wIFRyYW5zaXRpb25hbCAnOwokbGFuZ1snWEhUTUxfMV8wX0ZyYW1lc2V0J10gPSAnWEhUTUwgMS4wIEZyYW1lc2V0ICc7CiRsYW5nWydIVE1MXzRfMDFfU3RyaWN0J10gPSAnSFRNTCA0LjAxIFN0cmljdCAnOwokbGFuZ1snSFRNTF80XzAxX1RyYW5zaXRpb25hbCddID0gJ0hUTUwgNC4wMSBUcmFuc2l0aW9uYWwgJzsKJGxhbmdbJ0hUTUxfNF8wMV9GcmFtZXNldCddID0gJ0hUTUwgNC4wMSBGcmFtZXNldCAnOwokbGFuZ1snSFRNTF8zXzInXSA9ICdIVE1MIDMuMiAnOwokbGFuZ1snSFRNTF8yXzAnXSA9ICdIVE1MIDIuMCAnOwokbGFuZ1snSVNPL0lFQ18xNTQ0NToyMDAwXygiSVNPX0hUTUwiKSddID0gJ0lTTy9JRUMgMTU0NDU6MjAwMCAoJnF1b3Q7SVNPIEhUTUwmcXVvdDspICc7CiRsYW5nWydYSFRNTF8xXzEnXSA9ICdYSFRNTCAxLjEgJzsKJGxhbmdbJ1hIVE1MXytfUkRGYSddID0gJ1hIVE1MICsgUkRGYSAnOwokbGFuZ1snWEhUTUxfQmFzaWNfMV8wJ10gPSAnWEhUTUwgQmFzaWMgMS4wICc7CiRsYW5nWydYSFRNTF9CYXNpY18xXzEnXSA9ICdYSFRNTCBCYXNpYyAxLjEgJzsKJGxhbmdbJ1hIVE1MX01vYmlsZV9Qcm9maWxlXzFfMiddID0gJ1hIVE1MIE1vYmlsZSBQcm9maWxlIDEuMiAnOwokbGFuZ1snWEhUTUwtUHJpbnRfMV8wJ10gPSAnWEhUTUwtUHJpbnQgMS4wICc7CiRsYW5nWydYSFRNTF8xXzFfcGx1c19NYXRoTUxfMl8wJ10gPSAnWEhUTUwgMS4xIHBsdXMgTWF0aE1MIDIuMCAgJzsKJGxhbmdbJ1hIVE1MXzFfMV9wbHVzX01hdGhNTF8yXzBfcGx1c19TVkdfMV8xJ10gPSAnWEhUTUwgMS4xIHBsdXMgTWF0aE1MIDIuMCBwbHVzIFNWRyAxLjEgICc7CiRsYW5nWydNYXRoTUxfMl8wJ10gPSAnTWF0aE1MIDIuMCAnOwokbGFuZ1snU1ZHXzFfMCddID0gJ1NWRyAxLjAgJzsKJGxhbmdbJ1NWR18xXzEnXSA9ICdTVkcgMS4xICc7CiRsYW5nWydTVkdfMV8xX1RpbnknXSA9ICdTVkcgMS4xIFRpbnkgJzsKJGxhbmdbJ1NWR18xXzFfQmFzaWMnXSA9ICdTVkcgMS4xIEJhc2ljICc7CiRsYW5nWydTTUlMXzFfMCddID0gJ1NNSUwgMS4wICc7CiRsYW5nWydTTUlMXzJfMCddID0gJ1NNSUwgMi4wICc7CiRsYW5nWydkZWZhdWx0UGFnZV9sYWJsZSddID0gJ0NvbnRyb2xlZXIgdGVuIG9wemljaHRlIHZhbiBkZXplIHBhZ2luYSc7CiRsYW5nWydlbmNvZGluZ19sYWJsZSddID0gJ0NvZGVyaW5nJzsKJGxhbmdbJ2RldGVjdCddID0gJ0F1dG9tYXRpc2NoIGRldGVjdGVyZW4nOwokbGFuZ1sndXRmLTgnXSA9ICd1dGYtOCAoVW5pY29kZSwgd2VyZWxkd2lqZCknOwokbGFuZ1sndXRmLTE2J10gPSAndXRmLTE2IChVbmljb2RlLCB3ZXJlbGR3aWpkKSc7CiRsYW5nWydpc28tODg1OS0xJ10gPSAnaXNvLTg4NTktMSAoV2VzdCBFdXJvcGEpJzsKJGxhbmdbJ2lzby04ODU5LTInXSA9ICdpc28tODg1OS0yIChDZW50cmFhbCBFdXJvcGEpJzsKJGxhbmdbJ2lzby04ODU5LTMnXSA9ICdpc28tODg1OS0zIChadWlkIEV1cm9wYSknOwokbGFuZ1snaXNvLTg4NTktNCddID0gJ2lzby04ODU5LTQgKE5vb3JkIEV1cm9wYSknOwokbGFuZ1snaXNvLTg4NTktNSddID0gJ2lzby04ODU5LTUgKEN5cmlsbGljKSAnOwokbGFuZ1snaXNvLTg4NTktNi1pJ10gPSAnaXNvLTg4NTktNi1pIChBcmFiaXNjaCknOwokbGFuZ1snaXNvLTg4NTktNyddID0gJ2lzby04ODU5LTcgKEdyaWVrcyknOwokbGFuZ1snaXNvLTg4NTktOCddID0gJ2lzby04ODU5LTggKEhlYnJlZXdzLCB2aXN1YWwpJzsKJGxhbmdbJ2lzby04ODU5LTgtaSddID0gJ2lzby04ODU5LTgtaSAoSGVicmVld3MsIGxvZ2ljYWwpJzsKJGxhbmdbJ2lzby04ODU5LTknXSA9ICdpc28tODg1OS05IChUdXJrcyknOwokbGFuZ1snaXNvLTg4NTktMTAnXSA9ICdpc28tODg1OS0xMCAoTGF0aW4gNikgJzsKJGxhbmdbJ2lzby04ODU5LTExJ10gPSAnaXNvLTg4NTktMTEgKExhdGluL1RoYWlzKSc7CiRsYW5nWydpc28tODg1OS0xMyddID0gJ2lzby04ODU5LTEzIChMYXRpbiA3LCBCYWx0aWMgUmltKSAnOwokbGFuZ1snaXNvLTg4NTktMTQnXSA9ICdpc28tODg1OS0xNCAoTGF0aW4gOCwgQ2VsdGljKSAnOwokbGFuZ1snaXNvLTg4NTktMTUnXSA9ICdpc28tODg1OS0xNSAoTGF0aW4gOSkgJzsKJGxhbmdbJ2lzby04ODU5LTE2J10gPSAnaXNvLTg4NTktMTYgKExhdGluIDEwKSAnOwokbGFuZ1sndXMtYXNjaWknXSA9ICd1cy1hc2NpaSAoYmFzaXMgRW5nZWxzKSc7CiRsYW5nWydldWMtanAnXSA9ICdldWMtanAgKEphcGFucywgVW5peCknOwokbGFuZ1snc2hpZnRfamlzJ10gPSAnc2hpZnRfamlzIChKYXBhbnMsIFdpbi9NYWMpJzsKJGxhbmdbJ2lzby0yMDIyLWpwJ10gPSAnaXNvLTIwMjItanAgKEphcGFucywgZS1tYWlsKSc7CiRsYW5nWydldWMta3InXSA9ICdldWMta3IgKEtvcmVhYW5zKSc7CiRsYW5nWydnYjIzMTInXSA9ICdnYjIzMTIgKENoaW5lZXMsIGVlbnZvdWRpZyknOwokbGFuZ1snZ2IxODAzMCddID0gJ2diMTgwMzAgKENoaW5lZWUsIGVlbnZvdWRpZyknOwokbGFuZ1snYmlnNSddID0gJ2JpZzUgKENoaW5lZXMsIHRyYWRpdGlvbmVlbCknOwokbGFuZ1snYmlnNS1IS1NDUyddID0gJ0JpZzUtSEtTQ1MgKENoaW5lZXMsIEhvbmcgS29uZyknOwokbGFuZ1sndGlzLTYyMCddID0gJ3Rpcy02MjAgKFRoYWlzKSc7CiRsYW5nWydrb2k4LXInXSA9ICdrb2k4LXIgKFJ1c3Npc2NoKSc7CiRsYW5nWydrb2k4LXUnXSA9ICdrb2k4LXUgKFVrcmEmaXVtbDtucyc7CiRsYW5nWydpc28taXItMTExJ10gPSAnaXNvLWlyLTExMSAoQ3lyaWxsaWMgS09JLTgpICAgJzsKJGxhbmdbJ21hY2ludG9zaCddID0gJ21hY2ludG9zaCAoTWFjUm9tYW4pICc7CiRsYW5nWyd3aW5kb3dzLTEyNTAnXSA9ICd3aW5kb3dzLTEyNTAgKENlbnRyYWFsIEV1cm9wYSknOwokbGFuZ1snd2luZG93cy0xMjUxJ10gPSAnd2luZG93cy0xMjUxIChDeXJpbGxpYykgJzsKJGxhbmdbJ3dpbmRvd3MtMTI1MiddID0gJ3dpbmRvd3MtMTI1MiAoV2VzdCBFdXJvcGEpJzsKJGxhbmdbJ3dpbmRvd3MtMTI1MyddID0gJ3dpbmRvd3MtMTI1MyAoR3JpZWtzKSc7CiRsYW5nWyd3aW5kb3dzLTEyNTQnXSA9ICd3aW5kb3dzLTEyNTQgKFR1cmtzKSc7CiRsYW5nWyd3aW5kb3dzLTEyNTUnXSA9ICd3aW5kb3dzLTEyNTUgKEhlYnJlZXdzKSc7CiRsYW5nWyd3aW5kb3dzLTEyNTYnXSA9ICd3aW5kb3dzLTEyNTYgKEFyYWJpc2NoKSc7CiRsYW5nWyd3aW5kb3dzLTEyNTcnXSA9ICd3aW5kb3dzLTEyNTcgKEJhbHRpYyBSaW0pICc7CiRsYW5nWydhdXRvJ10gPSAnQXV0b21hdGlzY2ggR2VuZXJlcmVuJzsKJGxhbmdbJ2Fzc2lnbmVkJ10gPSAnUGFnaW5hIG1ldCBzamFibG9vbiB0b2VnZWtlbmQnOwokbGFuZ1sndXNlckNob2ljZSddID0gJ0tpZXMgZWVuIHBhZ2luYSc7CiRsYW5nWyd1c2VyR2VuZXJhdGVkJ10gPSAnU3RlbCB1dyBDb250ZW50IGluJzsKJGxhbmdbJ3NhdmVWQUxzZXR0aW5ncyddID0gJ1ZhbGlkYXRpZSBpbnN0ZWxsaW5nZW4gb3BzbGFhbic7CiRsYW5nWydzZXR0aW5ncyddID0gJ0luc3RlbGxpbmdlbic7CiRsYW5nWydzZXR0aW5nc3NhdmVkJ10gPSAnRGUgaW5zdGVsbGluZ2VuIHppam4gb3BnZXNsYWdlbic7CiRsYW5nWydsZWF2ZWNvZGUnXSA9ICdDb2RlIG5pZXQgYWFucGFzc2VuJzsKJGxhbmdbJ2Zvcm1hdGNvZGUnXSA9ICdGb3JtYXQgZGUgY29kZSBuZXRqZXMnOwokbGFuZ1snc2NyYW1ibGVjb2RlJ10gPSAnU2NyYW1ibGUgZGUgY29kZSc7CiRsYW5nWydjbGVhbmNvZGUnXSA9ICdDbGVhbiB1cCB0aGUgY29kZSByZW1vdmluZyBzdHVmZiB0aGF0IGRvZXNuJiMwMzk7dCBtYXR0ZXInOwokbGFuZ1snc2F2ZXNldHRpbmdzJ10gPSAnSW5zdGVsbGluZ2VuIG9wc2xhYW4nOwokbGFuZ1snbWFuZ2xldHlwZXRleHQnXSA9ICdIb2UgbW9ldCBkZSBjb2RlIHdvcmRlbiB3ZWVyZ2VnZXZlbic7CiRsYW5nWydicmllZiddID0gJ0tvcnQnOwokbGFuZ1sndmVyYm9zZSddID0gJ1VpdGdlYnJlaWR0JzsKJGxhbmdbJ2NvZGVmaXhlcyddID0gJ0NvZGUgcmVwYXJhdGllcyc7CiRsYW5nWydmb3JjZWxvd2VydGFnc3RleHQnXSA9ICdNYWFrIHRhZ3MgaW4ga2xlaW5lIGxldHRlcnMnOwokbGFuZ1snZm9yY2Vsb3dlcnRhZ3NoZWxwJ10gPSAnVm9vciBiZXRlcmUgWEhUTUwtY29tcGF0aWJpbGl0ZWl0JzsKJGxhbmdbJ2hpZGVtZXNzYWdlc3RleHQnXSA9ICdWZXJiZXJnIENvZGVNYW5nbGVyIGJlcmljaHRlbiBhYW5uIGhldCBlaW5kIHZhbiBkZSAoeClodG1sLWNvZGUnOwokbGFuZ1snaW5kZW50d2lkdGh0ZXh0J10gPSAnQnJlZWR0ZSB2YW4gJiMwMzk7aW5kZW50YXRpb24mIzAzOTsnOwokbGFuZ1snc3BhY2VzJ10gPSAnU3BhdGllcyc7CiRsYW5nWydkZWJ1Z2xldmVsdGV4dCddID0gJ0hvZXZlZWxoZWlkIGRlYnVnZ2luZyBvdXRwdXQ6ICc7CiRsYW5nWydkZWJ1Z3RleHQnXSA9ICdDb2RlIGRlYnVnIG1vZHVzJzsKJGxhbmdbJ1NjcmlwdF9saXN0J10gPSAnU2NyaXB0cyAnOwokbGFuZ1snQXNzX2hlYWRlciddID0gJ1VuaWZpZWQgU2NyaXB0cyAnOwokbGFuZ1snU2FtcGxlVGFnJ10gPSAnVm9vcmJlZWxkIFRhZyc7CiRsYW5nWydwcm9tcHRfbmV3U2NyaXB0J10gPSAnTmlldXcgU2NyaXB0IFRvZXZvZWdlbic7CiRsYW5nWydwcm9tcHRfbmV3U2NyaXB0QXNzJ10gPSAnTmlldXdlIFNjcmlwdCBWZXJiaW5kaW5nIFRvZXZvZWdlbic7CiRsYW5nWydwcm9tcHRfYWRkdGVtcGxhdGUnXSA9ICdOaWV1dyBzamFibG9vbiB0b2V2b2VnZW4nOwokbGFuZ1snYWRkTGliX2xhYmVsJ10gPSAnQmlibGlvdGhlZWsgdG9ldm9lZ2VuJzsKJGxhbmdbJ3RpdGxlX0dyb3VwcyddID0gJ1NjcmlwdCBHcm9lcGVuIExpanN0JzsKJGxhbmdbJ3RpdGxlX1NjcmlwdHMnXSA9ICdFbmtlbGUgU2NyaXB0IExpanN0JzsKJGxhbmdbJ2FyZXlvdXN1cmUnXSA9ICdJbXBvcnRhbnQ6XG5cbklmIHRoaXMgaXMgZGVsZXRlZCBhbGwgaW5mb3JtYXRpb24gd2lsbCBiZSBsb3N0IVxuXG5JZiB5b3UgaGF2ZSB0aGlzIHNjcmlwdCBpbiBhIGdyb3VwIHlvdSB3aWxsIGJyZWFrIHRoZSB0aWUgYW5kIHdpbGwgbmVlZCB0byBlZGl0IHRoZSBncm91cC5cbkl0IGlzIGJlc3QgdG8gc3RhcnQgdGhlIGRlbGV0aW9uIHByb2Nlc3MgZnJvbSB0aGUgQXNzaWdubWVudCBhcmVhLlxuXG5ZT1UgQUxTTyBMT1NFIFlPVVIgUkVWSVNJT04gSElTVE9SWSBGT1IgVEhJUyBTQ1JJUFQuLiBBUkUgWU9VIFJFQUxZIFNVUkU/Pz8gJzsKJGxhbmdbJ3NtYXJ0eUhvdyddID0gJ3RoZSBzbWFydHkgd29ya3MgbGlrZSB0aGlzLi4uIFdoZXJlIHlvdSYjMDM5O2QgaGF2ZSB7JHNtYXJ0eS5ub3d9IHlvdSBkbyB7eyRzbWFydHkubm93fX0gIC4gIE5vdyB5b3UgY2FuIGRvIHNtYXJ0eSBzdHVmZic7CiRsYW5nWyd0aXBfZ2VuZXJhbF9zbWFydHknXSA9ICdUaGUgc21hcnR5IHdvcmtzIGxpa2UgdGhpcyBpbiBKUyBhbmQgQ1NTLi4uIFdoZXJlIHlvdSYjMDM5O2QgaGF2ZSB7JHNtYXJ0eS5ub3d9IHlvdSBkbyB7eyRzbWFydHkubm93fX0gIC4gIE5vdyB5b3UgY2FuIGRvIHNtYXJ0eSBzdHVmZi4gIFNtYXJ0eSAzIGFjY291bnRzIGZvciB0aGlzIGFuZCBzbyBDTVNNUyAyLjAgd2lsbCBub3QgbmVlZCB0aGUge3sgfX0nOwokbGFuZ1sndGlwX2dlbmVyYWxfZ3JvdXBpbmcnXSA9ICdKb2luaW5nIHlvdXIgQ1NTIGZpbGVzIHNwZWVkcyB1cCB5b3VyIHVzZXJzIGV4cGVyaWVuY2UgYW5kIGhlbHAgeW91IGdldCBjbG9zZXIgdG8gYW4gJnF1b3Q7QSZxdW90OyBpbiA8YSBocmVmPSJodHRwOi8vZGV2ZWxvcGVyLnlhaG9vLmNvbS95c2xvdy8iIHRhcmdldD0iX2JsYW5rIj55U2xvdzwvYT4nOwokbGFuZ1sndGlwX2VkaXRvcl90YWInXSA9ICdEaWQgeW91IGtub3cgdGhhdCB5b3UgY2FuIHVzZSB0aGUgVGFiIGtleSB0byBpbmRlbnQgeW91IGNvZGU/ICBUcnkgaXQgb3V0Lic7CiRsYW5nWyd0aXBfZWRpdG9yX3NlYXJjaE5yZXBsYWNlJ10gPSAnRGlkIHlvdSBrbm93IHRoYXQgeW91IGNhbiB1c2UgcmVndWxhciBleHByZXNzaW9uIHRvIHF1aWNrbHkgc2VhcmNoIGFuZCByZXBsYWNlPyAgVXNlIEN0cmwrZiBpbiB0aGUgZWRpdG9yIHRvIGJyaW5nIHVwIHRoZSBib3guJzsKJGxhbmdbJ3RpcF9lZGl0b3JfcmVzZXRIaWdobGlnaHQnXSA9ICdJZiB5b3UgYXJlIHNlZWluZyBkb3VibGVzIGluIHRoZSBlZGl0b3IsIGllOiB0aGUgaGlnaGxpZ2h0IGlzIGRlc3luY3Jvbml6ZWQgZnJvbSB0ZXh0IGp1c3QgdXNlIHRoZSByZXNldCBoaWdobGlnaHQgYnV0dG9uIDxpbWcgd2lkdGg9JnF1b3Q7MjAmcXVvdDsgaGVpZ2h0PSZxdW90OzIwJnF1b3Q7IG9ubW91c2Vkb3duPSZxdW90O2VkaXRBcmVhLnJlc3RvcmVBbmRTd2l0Y2hDbGFzcyh0aGlzLCYjMDM5O2VkaXRBcmVhQnV0dG9uRG93biYjMDM5Oyk7JnF1b3Q7IG9ubW91c2VvdXQ9JnF1b3Q7ZWRpdEFyZWEucmVzdG9yZUNsYXNzKHRoaXMpOyZxdW90OyBvbm1vdXNlb3Zlcj0mcXVvdDtlZGl0QXJlYS5zd2l0Y2hDbGFzcyh0aGlzLCYjMDM5O2VkaXRBcmVhQnV0dG9uT3ZlciYjMDM5Oyk7JnF1b3Q7IGNsYXNzPSZxdW90O2VkaXRBcmVhQnV0dG9uTm9ybWFsJnF1b3Q7IHRpdGxlPSZxdW90O3Jlc2V0IGhpZ2hsaWdodCAoZWQpJnF1b3Q7IHNyYz0mcXVvdDsuLi9tb2R1bGVzL1NjcmlwdERlcGxveS9pbmNsdWRlcy9lZGl0X2FyZWEvaW1hZ2VzL3Jlc2V0X2hpZ2hsaWdodC5naWYmcXVvdDsgaWQ9JnF1b3Q7cmVzZXRfaGlnaGxpZ2h0JnF1b3Q7Pic7CiRsYW5nWyd0aXBfdGVtcGxhdGVfc21hcnR5J10gPSAnU21hcnR5IHN5bnRheCBpcyB0aGUgc2FtZSBhcyBldmVyeXdoZXJlIGVsc2UganVzdCBhIHN0cmFpZ2h0IHskc21hcnR5Lm5vd30uICBUaGUge3sgfX0gaXMgZm9yIHRoZSBDU1MgYW5kIEpTIGFzIHt9IGFyZSBpbiB0aGVpciBzeW50YXguICBTbWFydHkgMyBhY2NvdW50cyBmb3IgdGhpcyBhbmQgc28gQ01TTVMgMi4wIHdpbGwgbm90IG5lZWQgdGhlIHt7IH19JzsKJGxhbmdbJ3RpcF9ncm91cF9kcmFnTmRyb3AnXSA9ICd0byBnZXQgc3RhcnRlZCBqdXN0IGRyYWcgZnJvbSB0aGUgcG9vbCB0byB0aGUgZ3JvdXAmIzAzOTtzIGxpc3QnOwokbGFuZ1snYWxsJ10gPSAnVG9lcGFzYmFhciB2b29yIGFsbGUgYXBwYXJhdGVuLic7CiRsYW5nWydhdXJhbCddID0gJ0JlZG9lbGQgdm9vciBzcHJhYWsgc3ludGhlc2l6ZXJzLic7CiRsYW5nWydicmFpbGxlJ10gPSAnQmVkb2VsZCB2b29yIGJyYWlsbGVhcHBhcmF0dXVyLic7CiRsYW5nWydlbWJvc3NlZCddID0gJ0JlZG9lbGQgdm9vciBicmFpbGxlIHByaW50ZXJzLic7CiRsYW5nWydoYW5kaGVsZCddID0gJ0JlZG9lbGQgdm9vciBoYW5kaGVsZCBhcHBhcmF0dXVyJzsKJGxhbmdbJ3ByaW50J10gPSAnSW50ZW5kZWQgZm9yIHBhZ2VkLCBvcGFxdWUgbWF0ZXJpYWwgYW5kIGZvciBkb2N1bWVudHMgdmlld2VkIG9uIHNjcmVlbiBpbiBwcmludCBwcmV2aWV3IG1vZGUuJzsKJGxhbmdbJ3Byb2plY3Rpb24nXSA9ICdCZWRvZWxkIHZvb3IgcHJvamVjdGllcyc7CiRsYW5nWydzY3JlZW4nXSA9ICdCZWRvZWxkIHZvb3Iga2xldXJlbiBjb21wdXRlciBiZWVsZHNjaGVybWVuLic7CiRsYW5nWyd0dHknXSA9ICdJbnRlbmRlZCBmb3IgbWVkaWEgdXNpbmcgYSBmaXhlZC1waXRjaCBjaGFyYWN0ZXIgZ3JpZCwgc3VjaCBhcyB0ZWxldHlwZXMgYW5kIHRlcm1pbmFscy4nOwokbGFuZ1snTWVkaWFUeXBlJ10gPSAnYWxsIDogU3VpdGFibGUgZm9yIGFsbCBkZXZpY2VzLiA8YnIvPg0KYXVyYWwgOiBJbnRlbmRlZCBmb3Igc3BlZWNoIHN5bnRoZXNpemVycy48YnIvPg0KYnJhaWxsZSA6IEludGVuZGVkIGZvciBicmFpbGxlIHRhY3RpbGUgZmVlZGJhY2sgZGV2aWNlcy48YnIvPg0KZW1ib3NzZWQgOiBJbnRlbmRlZCBmb3IgcGFnZWQgYnJhaWxsZSBwcmludGVycy48YnIvPg0KaGFuZGhlbGQgOiBJbnRlbmRlZCBmb3IgaGFuZGhlbGQgZGV2aWNlczxici8+DQpwcmludCA6IEludGVuZGVkIGZvciBwYWdlZCwgb3BhcXVlIG1hdGVyaWFsIGFuZCBmb3IgZG9jdW1lbnRzIHZpZXdlZCBvbiBzY3JlZW4gaW4gcHJpbnQgcHJldmlldyBtb2RlLjxici8+DQpwcm9qZWN0aW9uIDogSW50ZW5kZWQgZm9yIHByb2plY3RlZCBwcmVzZW50YXRpb25zLCBmb3IgZXhhbXBsZSBwcm9qZWN0b3JzIG9yIHByaW50IHRvIHRyYW5zcGFyZW5jaWVzLjxici8+DQpzY3JlZW4gOiBJbnRlbmRlZCBwcmltYXJpbHkgZm9yIGNvbG9yIGNvbXB1dGVyIHNjcmVlbnMuPGJyLz4NCnR0eSA6IEludGVuZGVkIGZvciBtZWRpYSB1c2luZyBhIGZpeGVkLXBpdGNoIGNoYXJhY3RlciBncmlkLCBzdWNoIGFzIHRlbGV0eXBlcyBhbmQgdGVybWluYWxzLjxici8+DQp0diA6IEludGVuZGVkIGZvciB0ZWxldmlzaW9uLXR5cGUgZGV2aWNlcy4nOwokbGFuZ1snQ2FuY2VsZWQnXSA9ICdVdyBoZWVmdCBkZSBiZXdlcmtpbmcgZ2Vhbm51bGVlcmQuIEFsbGUgYWFuZ2VicmFjaHRlIHdpanppZ2luZ2VuIHppam4gaGllcmRvb3IgdmVybG9yZW4gZ2VnYWFuLic7CiRsYW5nWydCdG5BRERFRCddID0gJ1UgaGVlZnQgZWVuIG5pZXV3IHNjcmlwdCB0b2VnZXZvZWdkJzsKJGxhbmdbJ0J0bkVESVRFRCddID0gJ1UgaGVlZnQgZWVuIGJlc3RhYW5kIHNjcmlwdCBnZXdpanppZ2QnOwokbGFuZ1snQnRuREVMRVRFRCddID0gJ1UgaGVlZnQgZWVuIGJlc3RhYW5kIHNjcmlwdCBhYW5nZXBhc3QnOwokbGFuZ1sndHlwZV9sYWJlbCddID0gJ1R5cGUgJzsKJGxhbmdbJ3JldmlzaW9uJ10gPSAnUmV2aXNpZSc7CiRsYW5nWydpc0VkaXQnXSA9ICd3b3JkdCBnZXdpanppZ2QnOwokbGFuZ1snc3RlYWwnXSA9ICdTdGVhbCB0aGUgZG9jdW1lbnQnOwokbGFuZ1snZ2V0X3RhZyddID0gJ0dldCB0aGUgdGFnJzsKJGxhbmdbJ2VtdHB5R3JvdXAnXSA9ICdZb3UmIzAzOTtsbCBuZWVkIHRvIGFkZCBhIHNjcmlwdCB0byB0aGUgZ3JvdXAgYmVmb3JlIGNhbGxpbmcgaXQnOwokbGFuZ1snYWxsU2NyaXB0c1VzZWQnXSA9ICdBbGxlIHNjcmlwdHMgemlqbiBnZWJydWlrdCc7CiRsYW5nWydOb19TY3JpcHRzJ10gPSAnRXIgemlqbiBub2cgZ2VlbiBzY3JpcHRzJzsKJGxhbmdbJ05vX0dyb3VwcyddID0gJ0VyIHppam4gbm9nIGdlZW4gZ3JvZXBlbic7CiRsYW5nWydzZXRpbmFjdGl2ZSddID0gJ01hYWsgc2phYmxvb24gaW5hY3RpZWYnOwokbGFuZ1snc2V0YWN0aXZlJ10gPSAnTWFhayBzamFibG9vbiBhY3RpZWYnOwokbGFuZ1snbm90ZGVmYXVsdCddID0gJ05pZXQgaGV0IHN0YW5kYWFyZCBzamFibG9vbi4nOwokbGFuZ1snbm90dmFsaWQnXSA9ICdTdHlsZXNoZWV0IGFzc29jaWF0aW9ucyBoYXZlIG5vdCBiZWVuIHNldCBwcm9wZXJseSBmb3IgdGhpcyB0ZW1wbGF0ZSc7CiRsYW5nWyd0ZW1wbGF0ZV90YWInXSA9ICdTdHlsZXN3aXRjaGVyIEZvcm0gdGVtcGxhdGUnOwokbGFuZ1sncGFnZV90ZW1wbGF0ZXNfdGFiJ10gPSAnUGFnaW5hIFNqYWJsb25lbic7CiRsYW5nWydzdWJtaXQnXSA9ICdWZXJzdHVyZW4nOwokbGFuZ1snYXBwbHknXSA9ICdUb2VwYXNzZW4nOwokbGFuZ1snY2FuY2VsJ10gPSAnQW5udWxlZXInOwokbGFuZ1snZ28nXSA9ICdWZXJkZXInOwokbGFuZ1sncHJldmlldyddID0gJ1Zvb3JiZWVsZCc7CiRsYW5nWydpbmxpbmVoZWxwJ10gPSAnSGVscCAnOwokbGFuZ1snc2NpcHRvcHRpb25zJ10gPSAnT3B0aWVzJzsKJGxhbmdbJ3BlcnNpc3RlbnQnXSA9ICdQZXJzaXN0ZW50JzsKJGxhbmdbJ3ByZWZlcnJlZCddID0gJ1Zvb3JrZXVyJzsKJGxhbmdbJ2FsdGVybmF0ZSddID0gJ0FsdGVybmF0aWVmJzsKJGxhbmdbJ25hbWUnXSA9ICdOYWFtJzsKJGxhbmdbJ3RpdGxlJ10gPSAnVGl0ZWwnOwokbGFuZ1snaWQnXSA9ICdJRCc7CiRsYW5nWydhY3RpdmUnXSA9ICdBY3RpZWYnOwokbGFuZ1snZGVmYXVsdCddID0gJ1N0YW5kYWFyZCc7CiRsYW5nWyd2YWxpZCddID0gJ0NvcnJlY3QnOwokbGFuZ1sndXNhZ2VfY291bnQnXSA9ICdHZWJydWlrJzsKJGxhbmdbJ3llcyddID0gJ0phJzsKJGxhbmdbJ25vJ10gPSAnTmVlJzsKJGxhbmdbJ2VkaXRjc3MnXSA9ICdFZGl0IHN0eWxlc2hlZXQgYXNzb2NpYXRpb25zJzsKJGxhbmdbJ2VkaXR0ZW1wbGF0ZSddID0gJ0VkaXQgVGVtcGxhdGUgY29udGVudCc7CiRsYW5nWydkZWxldGV0ZW1wbGF0ZSddID0gJ1ZlcndpamRlciBTamFibG9vbic7CiRsYW5nWydjb3B5dGVtcGxhdGUnXSA9ICdLb3BpZWVyIFNqYWJsb29uJzsKJGxhbmdbJ3Byb21wdF9zdHlsZXNoZWV0J10gPSAnU2VsZWN0ZWVyIGVlbiBwYWdpbmEgc3RpamwnOwokbGFuZ1sncHJvbXB0X3RlbXBsYXRlJ10gPSAnU2phYmxvb24nOwokbGFuZ1sncHJvbXB0X2dyb3VwbmFtZSddID0gJ0dyb2Vwc25hYW0nOwokbGFuZ1sncHJvbXB0X2FkZGdyb3VwJ10gPSAnR3JvZXAgVG9ldm9lZ2VuJzsKJGxhbmdbJ3Byb21wdF9ncm91cHR5cGUnXSA9ICdHcm9lcCBUeXBlJzsKJGxhbmdbJ3Byb21wdF9hZGQnXSA9ICdUb2V2b2VnZW4nOwokbGFuZ1sncHJvbXB0X3NlbGVjdG9uZSddID0gJ0tpZXMgJmVhY3V0ZTsmZWFjdXRlO24nOwokbGFuZ1sncHJvbXB0X2FkZF9hbHRlcm5hdGUnXSA9ICdWb2VnIGVlbiBhbHRlcm5hdGllZiB0b2UnOwokbGFuZ1snZXJyb3JfcGxlYXNlX3NlbGVjdF9zdHlsZXNoZWV0J10gPSAnU2VsZWN0ZWVyIGVlbiBTdHlsZXNoZWV0JzsKJGxhbmdbJ3VzZXJMb2dzJ10gPSAnQmVraWprIGdlYnJ1aWtlcnNnZXNjaGllZGVuaXMnOwokbGFuZ1snU2NyaXB0U2V0X2xhYmVsJ10gPSAnU2NyaXB0IElkJzsKJGxhbmdbJ3NjcmlwdFR5cGVfbGFiZWwnXSA9ICdTY3JpcHQgVHlwZSAnOwokbGFuZ1snU2NyaXB0TmFtZV9sYWJlbCddID0gJ1NjcmlwdCBOYWFtJzsKJGxhbmdbJ3RlbXBsYXRlbmFtZV9sYWJlbCddID0gJ1NqYWJsb29uIG5hYW0nOwokbGFuZ1snU2luZ2xlQ29kZV9sYWJlbCddID0gJ0RlZmF1bHQgU2luZ2xlIFNjcmlwdCBDYWxsICc7CiRsYW5nWydHcm91cHRTaXplX2xhYmVsJ10gPSAnVG90YWFsJzsKJGxhbmdbJ25vdGVzX2xhYmVsJ10gPSAnT3BtZXJraW5nZW4nOwokbGFuZ1snZG9jVHlwZV9sYWJsZSddID0gJ0RvY3R5cGUgJzsKJGxhbmdbJ1ZhbEhUTUxWZXJib3NlX2xhYmxlJ10gPSAnQ2hlY2sgVmVyYm9zZWx5JzsKJGxhbmdbJ1Nob3dWYWxfbGFibGUnXSA9ICdMYWF0IEJlcmljaHRlbiBPcGVuJzsKJGxhbmdbJ1R1cm5PTlZhbF9sYWJsZSddID0gJyBaZXQgVmFsaWRhdGllIDxzdHJvbmc+QUFOPC9zdHJvbmc+JzsKJGxhbmdbJ2hvdExpbmtDaGVja19sYWJsZSddID0gJ1ZvZXIgZWVuIEhvdExpbmsgQ29udHJvbGUgdWl0JzsKJGxhbmdbJ1RydW5PbmhvdExpbmtDaGVjayddID0gJ1UgbW9ldCBkZSBIb3RMaW5rIENvbnRyb2xlIGluc2NoYWtlbGVuJzsKJGxhbmdbJ2ZpbHRlclByb3BfbGFibGUnXSA9ICcgRmlsdGVyIG91dCBwcm9wZXJ0aWVzIHRvIGhlbHAgdmFsaWRhdGUnOwokbGFuZ1snQ1NTcHJvZmlsZV9sYWJsZSddID0gJyBDc3MgUHJvZmllbCc7CiRsYW5nWyd1c2VybWVkaXVtX2xhYmxlJ10gPSAnIEdlYnJ1aWtlciBNZWRpYSc7CiRsYW5nWydWQUxMYW5nX2xhYmxlJ10gPSAnVGFhbCc7CiRsYW5nWyd3M2NDU1N3YXJuaW5nX2xhYmxlJ10gPSAnIHczYyBDU1MgV2FhcnNjaHV3aW5ncyBMZXZlbCc7CiRsYW5nWydNZWRpYVR5cGVfbGFiZWwnXSA9ICdNZWRpYSBUeXBlJzsKJGxhbmdbJ01pbmlmeV9sYWJlbCddID0gJ1ByZSBNaW5pZmllZCc7CiRsYW5nWydDcmVhdGlvbkRhdGVfbGFiZWwnXSA9ICdBYW5tYWFrIERhdHVtJzsKJGxhbmdbJ01vZGlmZWREYXRlX2xhYmVsJ10gPSAnV2lqemlnIERhdHVtJzsKJGxhbmdbJ3BhdGhPcHRpb25fbGFiZWwnXSA9ICdVc2UgYSBwYXRoPGVtPih1c2UgJnF1b3Q7L3VwbG9hZHMvLi4uJnF1b3Q7KTwvZW0+JzsKJGxhbmdbJ3Jvb3RVUkxPcHRpb25fbGFiZWwnXSA9ICdVc2UgYSBzcGVjaWZpYyByb290IFVSTDxlbT4odXNlIHNjaGVtYSAmcXVvdDtodHRwczovL3N1Yi5kb21haW4udGxkLyZxdW90Oyk8L2VtPic7CiRsYW5nWydHcm9vdFVSTCddID0gJ0dsb2JhbCBTY3JpcHQgUm9vdCBVUkwgJzsKJGxhbmdbJ2VtcHR5Y2FjaGVFcnJvcl9kb0FEVUlUJ10gPSAnQnVmZmVyIGxlZ2VuIG1pc2x1a3QgYmlqJzsKJGxhbmdbJ2VtcHRpZWRDYWNoX2RvQURVSVQnXSA9ICdzY3JpcHQgYnVmZmVyIGdlbGVlZ2QnOwokbGFuZ1snY2xlYXJlZFJldmlzaW9uX2RvQURVSVQnXSA9ICdyZXZpc2llIGdlc2NoaWVkZW5pcyBnZXdpc3Qgdm9vcic7CiRsYW5nWydDaGVja2VkT3V0X2RvQURVSVQnXSA9ICdTY3JpcHQgZ2Vjb250cm9sZWVyZCAnOwokbGFuZ1sncmVsZWFzZWRfZG9BRFVJVCddID0gJ3VpdGdldm9lcmRlIHNjcmlwdCAnOwokbGFuZ1snU2NyaXB0SXNfbGFiZWwnXSA9ICdHZWJydWlrIGRpdCBzY3JpcHQgPGVtPihPcG0uOiBBbHMgZWVuIHBhZCBpcyBpbmdlc3RlbGQsIGRhbiB6YWwgaGV0IGRlemUgb3ZlcnNjaHJpanZlbik8L2VtPic7CiRsYW5nWydkZWJ1Z0lUX2xhYmVsJ10gPSAnZGVidWcgSVQnOwokbGFuZ1snZGVidWdJVG5vdGVfbGFiZWwnXSA9ICc8ZW0+KE1vZXQgRmlyZXBocCBtb2QgaGViYmVuKTwvZW0+JzsKJGxhbmdbJ2RlYnVnVCddID0gJ0RlYnVnIE9wdGllcyc7CiRsYW5nWydFZGl0SGlzdG9yeSddID0gJ0dlYnJ1aWtlcnN3aWp6aWdpbmdlbiBnZXNjaGllZGVuaXMnOwokbGFuZ1snbm9uZUluVHlwZSddID0gJzxoMT5VIG1vZXQgaW4gZGl0IHR5cGUgZWVyc3Q8YnIvPmVlbiBzY3JpcHQgdG9ldm9lZ2VuPC9oMT4nOwokbGFuZ1snZ3JvdXB5VGl0bGUnXSA9ICdMaWpzdCB2YW4gU2NyaXB0cyBpbiBncm9lcCc7CiRsYW5nWydyZXZpc2lvblRpdGxlJ10gPSAnV2lqemlnaW5nZW4gZ2VzY2hpZWRlbmlzJzsKJGxhbmdbJ3JldmlzaW9uX2xhYmVsJ10gPSAnPHN0cm9uZz5Lb3J0IGRlIHdpanppZ2luZ2VuZ2VzY2hpZWRlbmlzIGluPC9zdHJvbmc+JzsKJGxhbmdbJ3JldmlzaW9uX29wJ10gPSAnPGgxPlJldmlzaW9uIDwvaDE+DQo8aDM+VHJ1bmluZyB0aGlzIG9mZiBkb2VzIG5vdCBjbGVhciB0aGUgaGlzdG9yeSBpZiBpdCB3YXMgb24gYmVmb3JlLiAgTGlrZSBpdCB0byBwYXVzZS48L2gzPic7CiRsYW5nWydyZXZpc2lvbl9MSU1JVF9sYWJlbCddID0gJ1N0ZWwgZWVuIHJldmlzaWUgbGltaWV0IGluJzsKJGxhbmdbJ2NsZWFyUmV2J10gPSAnV2lzIGdlc2NoaWVkZW5pcyc7CiRsYW5nWydsb2NrZmlsZXNUaXRsZSddID0gJ0JldmVpbGlnIGJlc3RhbmRlbic7CiRsYW5nWydsb2NrZmlsZXNfbGFiZWwnXSA9ICc8c3Ryb25nPlR1cm4gb24gc2V0IGZpbGVzIHRvIDY0NDwvc3Ryb25nPic7CiRsYW5nWydsb2NrZmlsZXNfb3AnXSA9ICc8aDE+UHJvdGVjdCBGaWxlczwvaDE+DQo8aDM+VHVybmluZyB0aGlzIG9uIHNldCB0aGUgY3JlYXRlZCBmaWxlIHRvIGJlIGNobW9kIHRvIDY0NC4gIFRoaXMgd2lsbCBoZWxwIHRvIHByb3RlY3QgeW91IGZyb20gSlMgaW50cnVzaW9uIGF0dGFja3MuPC9oMz4nOwokbGFuZ1sndXNlRWRpdG9yVGl0bGUnXSA9ICdFZGl0b3IgaW5zdGVsbGluZ2VuJzsKJGxhbmdbJ3VzZUVkaXRvcl9sYWJlbCddID0gJzxzdHJvbmc+RWRpdG9yIGluc2NoYWtlbGVuPC9zdHJvbmc+JzsKJGxhbmdbJ3VzZUVkaXRvcl9vcCddID0gJzxoMT5UdXJuIG9uIEVkaXRvcjwvaDE+DQo8aDM+VHVybmluZyB0aGlzIG9uIHN3aWxsIGhlbHAgeW91IHNlZSB0aGUgY29kZSB5b3VyIHdvcmtpbmcgd2l0aC4gIEl0IGhpbnRzIHRvIGNvcnJlY3Qgc3ludGF4IHZpYSBoaWdobGlnaHRpbmcuPC9oMz4nOwokbGFuZ1sncHJlbG9hZF9DU1NpbWFnZVRpdGxlJ10gPSAnUHJlbG9hZCBDU1MgQWZiZWVsZGluZ2VuJzsKJGxhbmdbJ3ByZWxvYWRfQ1NTaW1hZ2VfbGFiZWwnXSA9ICc8c3Ryb25nPlRydW4gb24gUHJlbG9hZGVkIENzcyBJbWFnZXM8L3N0cm9uZz4nOwokbGFuZ1sncHJlbG9hZF9DU1NpbWFnZSddID0gJzxoMT5QcmVsb2FkIENzcyBJbWFnZXMgPC9oMT4NCjxoMz5JZiB5b3UgaGF2ZSB5b3VyIHN5c3RlbSBhbGwgc2V0IHVwIHJpZ2h0LCB0aGlzIHdpbGwgaGVscCB5b3UgZ2V0IGEgZmFzdCBwYXJhbGxlbCBkb3duIGxvYWQgb2YgYWxsIGVsZW1lbnRzLjwvaDM+JzsKJGxhbmdbJ2dsb2JhbHVybCddID0gJzxoMT5TZXQgdGhlIHJvb3QgVVJMIDwvaDE+DQo8aDM+VXNlZCBmb3Igd2hlbiB5b3UgbmVlZCBTU0wgc3VwcG9ydCBvciB3YW50IHRvIHB1c2ggdGhlIHNjcmlwdHMgdG8gYSBzdWJkb21haW4gdG8gbG9zZSB0aGUgbmVlZGxlcyBjb29raWVzLjwvaDM+JzsKJGxhbmdbJ3NtYXJ0eU9uX2xhYmVsJ10gPSAnPHN0cm9uZz5TbWFydHkgVWl0dm9lcmVuPC9zdHJvbmc+PGJyLz4gZGF0YSBpbiBidXR0b24gdmVsZGVuJzsKJGxhbmdbJ3NtYXJ0eU9uJ10gPSAnPGgxPlByb2Nlc3MgU21hcnR5IGRhdGEgPC9oMT4NCjxoMz5XaXRoIHRoaXMgdHVybmVkIG9uIHlvdSBjYW4gc2V0IHRoZSBidXR0b24gZmllbGRzIHdpdGggdGhlIHZhbHVlcyBwYXNzZWQgYnkgb3RoZXIgbW9kdWxlcyBzdWNoIGFzIFByb2R1Y3RzIG9yIENhdGFsb2dlcjwvaDM+JzsKJGxhbmdbJ2ZpbGVUaW1lX2Nzc191cmxzX2xhYmVsJ10gPSAnPHN0cm9uZz5oZWxwIGJyZWFrIGEgY2xpZW50IHNpZGUgY2FjaGU8L3N0cm9uZz4nOwokbGFuZ1snZmlsZVRpbWVfY3NzX3VybHMnXSA9ICc8aDE+aGVscCBicmVhayBhIGNsaWVudCBzaWRlIGNhY2hlIDwvaDE+DQo8aDM+VGhpcyBpcyBkb25lIGJ5IGFkZGluZyBhIGZpbGUgY3JlYXRpb24gdGltZSBhdCB0aGUgZW5kIG9mIGEgZmlsZS4gIFR1cm5pbmcgdGhpcyBvbiB3aWxsIGFkZCB0aGlzIHRvIGFsbCBsb2NhbCB1cmxzLiAoQ1NTIG9ubHkgYXRtKSAtTm90aGluZyBpcyBkb25lIHRvIGhvdGxpbmtzPC9oMz4nOwokbGFuZ1snZWRpdCddID0gJ1dpanppZyc7CiRsYW5nWydkZWxldGUnXSA9ICdWZXJ3aWpkZXJlbic7CiRsYW5nWydDbG9zZSddID0gJ1NsdWl0ZW4nOwokbGFuZ1snT3BlbiddID0gJ09wZW5lbic7CiRsYW5nWydkaXJFbXB0eSddID0gJ0RlIG5ldHdlcmttYXAgd2FzIGxlZWcnOwokbGFuZ1snY2xlYW5UZW1wJ10gPSAnTGVlZyBkZSB0ZW1wPyc7CiRsYW5nWyd1clRlbXBQYXRoJ10gPSAnVXcgYnVmZmVyIHBhZCBpcyc7CiRsYW5nWydMYXN0TW9kJ10gPSAnTGFhdHN0IGdld2lqemlnZCc7CiRsYW5nWydjYWNoZUZlcnJvciddID0gJ1NjcmlwdERlcGxveSBrYW4gZ2VlbiBidWZmZXJtYXAgYWFubWFrZW4sIGNvbnRyb2xlZXIgZGUgcmVjaHRlbiBpbiBkZSBVcGxvYWRzbWFwIG9wIGRlIHNlcnZlci4nOwokbGFuZ1snTmFtZSddID0gJ05hYW0nOwokbGFuZ1snUHJvY2Nlc3NpbmcnXSA9ICdCZXdlcmtlbic7CiRsYW5nWydTYXZlZCddID0gJ09wZ2VzbGFnZW4nOwokbGFuZ1snRG9uZSddID0gJ0dlcmVlZCc7CiRsYW5nWydWYWxpZGF0aW5nJ10gPSAnVmFsaWRlcmVuJzsKJGxhbmdbJ0dyb3VwdFNldF9sYWJlbCddID0gJ0dyb2VwIE5hYW0nOwokbGFuZ1snR3JvdXB0VHlwZV9sYWJlbCddID0gJ1R5cGUgc2NyaXB0cyc7CiRsYW5nWydTY3JpcHRQaWNrZXJfbGFiZWwnXSA9ICdTY3JpcHQgUG9vbCAnOwokbGFuZ1snTElORSddID0gJ0xJTkUgJzsKJGxhbmdbJ1RZUEUnXSA9ICdUWVBFICc7CiRsYW5nWydTVUJUWVBFJ10gPSAnU1VCVFlQRSAnOwokbGFuZ1snU1RSSU5HJ10gPSAnU1RSSU5HICc7CiRsYW5nWydNRVNTQUdFJ10gPSAnQkVSSUNIVCc7CiRsYW5nWydMRVZFTCddID0gJ0xFVkVMICc7CiRsYW5nWydOb3RlcyddID0gJ05vdGl0aWVzJzsKJGxhbmdbJ1dhcm5pbmdzJ10gPSAnV2FhcnNjaHV3aW5nZW4nOwokbGFuZ1snRXJyb3JzJ10gPSAnRm91dGVuJzsKJGxhbmdbJ2hpZGRlbiddID0gJ1ZlcmJvcmdlbic7CiRsYW5nWydTY3JpcHQnXSA9ICdTY3JpcHQgJzsKJGxhbmdbJ0VVUkxTJ10gPSAnRXh0cmFjdGVkIFVybHMnOwokbGFuZ1snUkNTUyddID0gJ0dlZ2VuZXJlZXJkZSBDU1MnOwokbGFuZ1snU0NTUyddID0gJ0NTUyBTdHJ1Y3R1dXInOwokbGFuZ1snRkNPTlQnXSA9ICdCZXN0YW5kc2luaG91ZCc7CiRsYW5nWydpVVJMJ10gPSAnYWZiZWVsZGluZyBVUkwnOwokbGFuZ1snVHlwZSddID0gJ1R5cGUgJzsKJGxhbmdbJ1NpemUnXSA9ICdBZm1ldGluZyc7CiRsYW5nWydTdGF0dXMnXSA9ICdTdGF0dXMgJzsKJGxhbmdbJ2hvdGxpbmsnXSA9ICc8c3Ryb25nPkhvdGxpbmtpbmc6PC9zdHJvbmc+IGxpamt0IGVlbiBob3RsaW5rLic7CiRsYW5nWydCcm9rZW5saW5rJ10gPSAnVmVyYnJva2VuIExpbmsnOwokbGFuZ1snTk9jc3NJJ10gPSAnR2VlbiBjc3MgYWZiZWVsZGluZ2VuJzsKJGxhbmdbJ1llc1ZBbGFzdGVyJ10gPSAnPGgyPllvdSB2YWxpZGF0ZWQhICoqPC9oMj48aW1nIHN0eWxlPSZxdW90O2JvcmRlcjowO3dpZHRoOjg4cHg7aGVpZ2h0OjMxcHgmcXVvdDtzcmM9JnF1b3Q7aHR0cDovL2ppZ3Nhdy53My5vcmcvY3NzLXZhbGlkYXRvci9pbWFnZXMvdmNzcy1ibHVlJnF1b3Q7YWx0PSZxdW90O1ZhbGlkIENTUyEmcXVvdDsgLz48YnIvPiA8c3Ryb25nPioqIHlvdSBhcmUgZmlsdGVyaW5nIGVycm9ycyBhbmQgbWF5IGhhdmUgZmlsdGVyZWQgYSByZWFsIGVycm9yPC9zdHJvbmc+JzsKJGxhbmdbJ3JlbG9hZF9hbGVydCddID0gJ1lvdSBhcmUgcmVsb2FkaW5nIHRoZSBzcmNpcHQgZnJvbSB0aGUgbGFzdCBzYXZlIHBvaW50LiAgWW91IGhhdmUgc2F2ZWQgdGhlIHNjcmlwdCBhbHJlYWR5IGFuZCBpZiB5b3UgbmVlZCB0byBnbyBiYWNrIHRvIHRoZSB2ZXJzaW9uIHdoZW4geW91IGZpcnN0IGNhbWUgaW4gdG8gZWRpdCBwbGVhc2UgY2hlY2sgeW91ciByZXZpc2lvbiBoaXN0b3J5Lic7CiRsYW5nWydpbXBvcnRFeHBvcnQnXSA9ICdJbXBvcnRlZXIgLyBFeHBvcnRlZXInOwokbGFuZ1snc3RhcnRFeHBvcnQnXSA9ICdTdGFydCBFeHBvcnRlcmVuJzsKJGxhbmdbJ3N0YXJ0SW1wb3J0J10gPSAnU3RhcnQgSW1wb3J0ZXJlbic7CiRsYW5nWydDbGVhckltZyddID0gJ1ZlcndpamRlciBodWlkaWdlIGFmYmVlbGRpbmcnOwokbGFuZ1snRmluaXNoJ10gPSAnR2VyZWVkJzsKJGxhbmdbJ3JldmVydCddID0gJ1RlcnVnemV0dGVuJzsKJGxhbmdbJ2Zvcm1fY2FuY2VsJ10gPSAnQW5udWxlZXInOwokbGFuZ1snU2F2ZSddID0gJ09wc2xhYW4nOwokbGFuZ1snZG9uZSddID0gJ0dlcmVlZCc7CiRsYW5nWydhZGQnXSA9ICdUb2V2b2VnZW4nOwokbGFuZ1snUkVPUkRFUiddID0gJ1Jlb3JnYW5pc2VyZW4nOwokbGFuZ1snZm9ybV9zdWJtaXQnXSA9ICdJbnN0ZWxsaW5nZW4gb3BzbGFhbic7CiRsYW5nWydtb2RfcHJlZnNfdGl0bGUnXSA9ICdNb2R1bGUgaW5zdGVsbGluZ2VuJzsKJGxhbmdbJ3ByZWZzdXBkYXRlZCddID0gJ01vZHVsZSBpbnN0ZWxsaW5nZW4gYmlqZ2V3ZXJrdCc7CiRsYW5nWydvcHRpb25zdXBkYXRlZCddID0gJ29wdGllcyBiaWpnZXdlcmt0JzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnU1BFRUQgWU9VUiBTSVRFIFVQIC4uLiEhISEgJmJ1bGw7IE91dHB1dCBkeW5hbWljIEpTIGZpbGVzIGFuZCBDU1MgV0lUSCBzbWFydHkuLi4gJmJ1bGw7IFNldCB0aGUgZmlsZXMgdG8gdXNlIGEgc3ViZG9tYWluLi4uICZidWxsOyBjYWNoZWQuLi4gJmJ1bGw7IG1pbmlmaWVkLi4uICZidWxsOyBEaWQgSSBtZW50aW9uIHlvdSBjYW4gdXNlIHNtYXJ0eSBpbiB5b3VyIEpTIGFuZCBDU1Mgc2NyaXB0ISEhISAtIFNpbXBsZSwgZmxleGlibGUhICc7CiRsYW5nWyd3ZWxjb21lX3RleHQnXSA9ICc8cD5IYWxsbyE8L3A+JzsKJGxhbmdbJ2hlbHAnXSA9ICc8bGluayBtZWRpYT0mcXVvdDtzY3JlZW4mcXVvdDsgaHJlZj0mcXVvdDsuLi9tb2R1bGVzL1NjcmlwdERlcGxveS9DU1MvTWFzdGVyQ1NTLmNzcyZxdW90OyB0eXBlPSZxdW90O3RleHQvY3NzJnF1b3Q7IHJlbD0mcXVvdDtzdHlsZXNoZWV0JnF1b3Q7Lz48ZGl2IGNsYXNzPSZxdW90O1NpbVdyYXAmcXVvdDs+PGIgY2xhc3M9JnF1b3Q7cmJvdHRvbSZxdW90Oz48YiBjbGFzcz0mcXVvdDtyMSZxdW90Oz48L2I+IDxiIGNsYXNzPSZxdW90O3IyJnF1b3Q7PjwvYj48YiBjbGFzcz0mcXVvdDtyMyZxdW90Oz48L2I+IDxiIGNsYXNzPSZxdW90O3I0JnF1b3Q7PjwvYj48L2I+DQoNCjxkaXYgY2xhc3M9JnF1b3Q7U2ltY29uJnF1b3Q7PiA8aDMgY2xhc3M9JnF1b3Q7QmFja0xpbmsmcXVvdDs+PGEgb25jbGljaz0iamF2YXNjcmlwdDp3aW5kb3cuaGlzdG9yeS5nbygtMSkiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij48PCBCYWNrPC9hPjwvaDM+DQo8aDE+V2hhdCBEb2VzIFRoaXMgRG8/LS0tIHRoaXMgbmVlZHMgdXBkYXRpbmc8L2gxPg0KPGgyPldyaXRlIG1hbmFnZSBhbmQgZGVwbG95IEpTIGFuZCBDU1M8L2gyPg0KPGEgaWQ9IlNjcmlwdERlcGxveSI+PC9hPg0KPHA+U2NyaXB0RGVwbG95IG1vZHVsZSB0aGF0IGNhbiBjb21iaW5lIG11bHRpcGxlIENTUyBvciBKYXZhc2NyaXB0IGZpbGVzLCBjb21wcmVzcyB0aGVpciBjb250ZW50cyAoaS5lLiByZW1vdmFsIG9mIHVubmVjZXNzYXJ5IHdoaXRlc3BhY2UvY29tbWVudHMpLCBhbmQgc2VydmUgdGhlIHJlc3VsdHMgd2l0aCBIVFRQIGVuY29kaW5nIChnemlwL2RlZmxhdGUpIGFuZCBoZWFkZXJzIHRoYXQgYWxsb3cgb3B0aW1hbCBjbGllbnQtc2lkZSBjYWNoaW5nLiBUaGlzIGhlbHBzIHlvdSBmb2xsb3cgc2V2ZXJhbCBvZiBZYWhvbyEmIzAzOTtzIDxhIGhyZWY9Imh0dHA6Ly9kZXZlbG9wZXIueWFob28uY29tL3BlcmZvcm1hbmNlL2luZGV4Lmh0bWwjcnVsZXMiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij5SdWxlcyBmb3IgSGlnaCBQZXJmb3JtYW5jZSBXZWIgU2l0ZXM8L2E+LiAoU2VlICZxdW90O1Byb2JsZW0gRG9tYWluJnF1b3Q7IGJlbG93IGZvciBtb3JlIGluZm8uKSA8L3A+DQo8aDM+VGhlIFNob3J0IG9mIGl0PC9oMz4NCjxwPldpcnRlIHlvdXIgc2NyaXB0cywgc2V0IHRoZSBvcmRlciBhbmQgU2NyaXB0RGVwbG95IHdpbGwgZG8gdGhlIHJlc3QhPC9wPg0KPHRhYmxlPg0KICA8dGJvZHk+DQogICAgPHRyPg0KICAgICAgPHRkIHN0eWxlPSZxdW90O0JPUkRFUi1SSUdIVDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctUklHSFQ6IDVweDsgQk9SREVSLVRPUDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctTEVGVDogNXB4OyBQQURESU5HLUJPVFRPTTogNXB4OyBCT1JERVItTEVGVDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctVE9QOiA1cHg7IEJPUkRFUi1CT1RUT006ICNhYWEgMXB4IHNvbGlkJnF1b3Q7PjxzdHJvbmc+QmVmb3JlPC9zdHJvbmc+PC90ZD4NCiAgICAgIDx0ZCBzdHlsZT0mcXVvdDtCT1JERVItUklHSFQ6ICNhYWEgMXB4IHNvbGlkOyBQQURESU5HLVJJR0hUOiA1cHg7IEJPUkRFUi1UT1A6ICNhYWEgMXB4IHNvbGlkOyBQQURESU5HLUxFRlQ6IDVweDsgUEFERElORy1CT1RUT006IDVweDsgQk9SREVSLUxFRlQ6ICNhYWEgMXB4IHNvbGlkOyBQQURESU5HLVRPUDogNXB4OyBCT1JERVItQk9UVE9NOiAjYWFhIDFweCBzb2xpZCZxdW90Oz48aW1nIHNyYz0mcXVvdDtodHRwOi8vbXJjbGF5Lm9yZy93cC1jb250ZW50L3VwbG9hZHMvMjAwOC8wOS9maWRkbGVyX2JlZm9yZS5wbmcmcXVvdDsgYWx0PSZxdW90O2FmdGVyJnF1b3Q7IC8+PC90ZD4NCiAgICA8L3RyPg0KICAgIDx0cj4NCiAgICAgIDx0ZCBzdHlsZT0mcXVvdDtCT1JERVItUklHSFQ6ICNhYWEgMXB4IHNvbGlkOyBQQURESU5HLVJJR0hUOiA1cHg7IEJPUkRFUi1UT1A6ICNhYWEgMXB4IHNvbGlkOyBQQURESU5HLUxFRlQ6IDVweDsgUEFERElORy1CT1RUT006IDVweDsgQk9SREVSLUxFRlQ6ICNhYWEgMXB4IHNvbGlkOyBQQURESU5HLVRPUDogNXB4OyBCT1JERVItQk9UVE9NOiAjYWFhIDFweCBzb2xpZCZxdW90Oz48c3Ryb25nPkFmdGVyPC9zdHJvbmc+PC90ZD4NCiAgICAgIDx0ZCBzdHlsZT0mcXVvdDtCT1JERVItUklHSFQ6ICNhYWEgMXB4IHNvbGlkOyBQQURESU5HLVJJR0hUOiA1cHg7IEJPUkRFUi1UT1A6ICNhYWEgMXB4IHNvbGlkOyBQQURESU5HLUxFRlQ6IDVweDsgUEFERElORy1CT1RUT006IDVweDsgQk9SREVSLUxFRlQ6ICNhYWEgMXB4IHNvbGlkOyBQQURESU5HLVRPUDogNXB4OyBCT1JERVItQk9UVE9NOiAjYWFhIDFweCBzb2xpZCZxdW90Oz48aW1nIHNyYz0mcXVvdDtodHRwOi8vbXJjbGF5Lm9yZy93cC1jb250ZW50L3VwbG9hZHMvMjAwOC8wOS9maWRkbGVyX2FmdGVyLnBuZyZxdW90OyBhbHQ9JnF1b3Q7YmVmb3JlJnF1b3Q7IC8+PC90ZD4NCiAgICA8L3RyPg0KICA8L3Rib2R5Pg0KPC90YWJsZT4NCg0KDQoNCjxoMj48YSBpZD0iRmVhdHVyZXMiPjwvYT5GZWF0dXJlczwvaDI+DQo8dWw+DQogIDxsaT5Db21iaW5lcyBhbmQgbWluaWZpZXMgbXVsdGlwbGUgQ1NTIG9yIEphdmFTY3JpcHQgZmlsZXMgaW50byBhIHNpbmdsZSAgIGRvd25sb2FkIDwvbGk+DQogIDxsaT5Vc2VzIGFuIDxhIGhyZWY9Imh0dHA6Ly9jb2RlLmdvb2dsZS5jb20vcC9taW5pZnkvc291cmNlL2Jyb3dzZS90cnVuay9taW4vbGliL0pTTWluLnBocCIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPmVuaGFuY2VkIHBvcnQ8L2E+IG9mIERvdWdsYXMgQ3JvY2tmb3JkJiMwMzk7cyA8YSBocmVmPSJodHRwOi8vd3d3LmNyb2NrZm9yZC5jb20vamF2YXNjcmlwdC9qc21pbi5odG1sIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub2ZvbGxvdyI+SlNNaW4gICBsaWJyYXJ5PC9hPiBhbmQgY3VzdG9tIGNsYXNzZXMgdG8gbWluaWZ5IDxhIGhyZWY9Imh0dHA6Ly9jb2RlLmdvb2dsZS5jb20vcC9taW5pZnkvc291cmNlL2Jyb3dzZS90cnVuay9taW4vbGliL01pbmlmeS9DU1MucGhwIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub2ZvbGxvdyI+Q1NTPC9hPiBhbmQgPGEgaHJlZj0iaHR0cDovL2NvZGUuZ29vZ2xlLmNvbS9wL21pbmlmeS9zb3VyY2UvYnJvd3NlL3RydW5rL21pbi9saWIvTWluaWZ5L0hUTUwucGhwIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub2ZvbGxvdyI+SFRNTDwvYT48L2xpPg0KICA8bGk+Q2FjaGVzIHNlcnZlci1zaWRlIHRvIGF2b2lkIGRvaW5nIHVubmVjZXNzYXJ5IHdvcmsgPC9saT4NCiAgPGxpPlJlc3BvbmRzIHdpdGggYW4gSFRUUCAzMDQgKE5vdCBNb2RpZmllZCkgcmVzcG9uc2Ugd2hlbiB0aGUgYnJvd3NlciBoYXMgYW4gICB1cC10by1kYXRlIGNhY2hlIGNvcHkgKiogPC9saT4NCiAgPGxpPk1vc3QgbW9kdWxlcyBhcmUgbGF6eS1sb2FkZWQgYXMgbmVlZGVkICgzMDQgcmVzcG9uc2VzIHVzZSBtaW5pbWFsIGNvZGUpICAqKiA8L2xpPg0KICA8bGk+QXV0b21hdGljYWxseSByZXdyaXRlcyByZWxhdGl2ZSBVUklzIGluIGNvbWJpbmVkIENTUyBmaWxlcyB0byBwb2ludCB0byB2YWxpZCBsb2NhdGlvbnMgPC9saT4NCiAgPGxpPldpdGggY2FjaGluZyBlbmFibGVkLCBTY3JpcHREZXBsb3kgaXMgY2FwYWJsZSBvZiBoYW5kbGluZyBodW5kcmVkcyBvZiByZXF1ZXN0cyBwZXIgc2Vjb25kIG9uIGEgbW9kZXJhdGVseSBwb3dlcmZ1bCBzZXJ2ZXIuIDwvbGk+DQogIDxsaT5Db250ZW50LUVuY29kaW5nOiBnemlwLCBiYXNlZCBvbiByZXF1ZXN0IGhlYWRlcnMuIENhY2hpbmcgYWxsb3dzIGl0IHNvIHNlcnZlIGd6aXBwZWQgZmlsZXMgZmFzdGVyIHRoYW4gQXBhY2hlJiMwMzk7cyBtb2RfZGVmbGF0ZSBvcHRpb24hIDwvbGk+DQo8L3VsPg0KPGgzPjxlbT48c3Ryb25nPioqIE5vdGU6PC9zdHJvbmc+IEl0IGlzIGJlc3QgdG8gdXNlIGEgLmh0YWNjZXNzIHNjcmlwdCB0byBzZXQgdGhlIGFnZSB0aW1lcy4gU2NyaXB0RGVwbG95IGlzIGRlc2lnbmVkIGZvciBlZmZpY2llbmN5LCBidXQgZm9yIHZlcnkgaGlnaCB0cmFmZmljIHNpdGVzLCBTY3JpcHREZXBsb3kgbWF5IHNlcnZlIGZpbGVzIHNsb3dlciB0aGFuIHlvdXIgSFRUUGQgZHVlIHRvIHRoZSBDR0kgb3ZlcmhlYWQgb2YgUEhQLiAgVG8gb3ZlciBjb21lIHRoaXMgSnVzdCBjaGVjayAmcXVvdDt1c2UgLmh0YWNjZXNzIGluIG9wdGlvbnMmcXVvdDs8L2VtPjwvaDM+DQo8aDI+PGEgbmFtZT0iUmVxdWlyZW1lbnRzIj48L2E+UmVxdWlyZW1lbnRzPC9oMj4NCjx1bD4NCiAgPGxpPlRoZSBjb21tb25seSBpbnN0YWxsZWQgPGEgaHJlZj0iaHR0cDovL3VzMy5waHAubmV0L21hbnVhbC9lbi96bGliLmluc3RhbGxhdGlvbi5waHAiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij56bGliICAgZXh0ZW5zaW9uPC9hPiBpcyByZWNvbW1lbmRlZCBmb3IgSFRUUCBlbmNvZGluZyBmdW5jdGlvbmFsaXR5LiA8L2xpPg0KPC91bD4NCjxici8+PGJyLz4NCjxoMT5Ib3cgRG8gSSBVc2UgSXQ8L2gxPg0KDQoNCjxoMz5HZXQgYSBzaW5nbGUgc2NyaXB0PC9oMz4NCnVzZSA8c3BhbiBjbGFzcz0mcXVvdDtjb2RlSElHSExJR0hUJnF1b3Q7PntjbXNfbW9kdWxlIG1vZHVsZT1TY3JpcHREZXBsb3kgc2NyaXB0SUQ9JnF1b3Q7MSZxdW90O30gPC9zcGFuPiA8YnIvPjxici8+DQo8aDM+R2V0IGEgc2NyaXB0IGdyb3VwPC9oMz4NCnVzZSA8c3BhbiBjbGFzcz0mcXVvdDtjb2RlSElHSExJR0hUJnF1b3Q7PntjbXNfbW9kdWxlIG1vZHVsZT1TY3JpcHREZXBsb3kgZ3JvdXBJRD0mcXVvdDsxJnF1b3Q7fSA8L3NwYW4+IDxici8+PGJyLz4NCjxoMj5BbGwgb3V0cHV0IGlzIGluIHRoZSBYSFRNTCBmb3JtYXQsIHlvdSBzaG91bGQgd29yayBpbiB0aGF0LjwvaDI+DQoNCjxici8+PGJyLz4NCjxoND5QYXJhbXM8L2g0Pg0KPHVsPg0KPGxpPjxzdHJvbmc+c2NyaXB0SUQ9JnF1b3Q7JnF1b3Q7IDwvc3Ryb25nPjxlbT4oUmVxdWlyZWQvb3B0aW9uYWwpPC9lbT4gPGJyLz58IHNldCB0aGUgSUQgUmVxdWlyZWQgb25seSBpZiBncm91cElEIG5vdCBjYWxsZWQ8YnIvPjwvbGk+DQo8bGk+PHN0cm9uZz5ncm91cElEPSZxdW90OyZxdW90OyA8L3N0cm9uZz48ZW0+KFJlcXVpcmVkL29wdGlvbmFsKTwvZW0+IDxici8+fCBzZXQgdGhlIElEIFJlcXVpcmVkIG9ubHkgaWYgc2NyaXB0SUQgbm90IGNhbGxlZDxici8+PC9saT4NCjxsaT48c3Ryb25nPlN0eXBlPSZxdW90OyZxdW90OyA8L3N0cm9uZz48ZW0+KFJlcXVpcmVkLykgSlMvQ1NTPC9lbT4gPGJyLz58IHNldCB0aGUgSUQgUmVxdWlyZWQgb25seSBpZiBzY3JpcHRJRCBub3QgY2FsbGVkPGJyLz48L2xpPg0KDQo8bGk+PHN0cm9uZz5TbWFydHlPbj0mcXVvdDsmcXVvdDsgPC9zdHJvbmc+PGVtPihvcHRpb25hbCkgdHJ1ZS9mYWxzZSA8c3Ryb25nPkRlZmF1bHQ6bnVsbDwvc3Ryb25nPjwvZW0+IDxici8+fCBUaGlzIGxldHMgeW91IG92ZXIgcmlkZSB0aGUgZ2xvYmxlczxici8+PC9saT4NCjxsaT48c3Ryb25nPk1pbmlmeT0mcXVvdDsmcXVvdDsgPC9zdHJvbmc+PGVtPihvcHRpb25hbCkgdHJ1ZS9mYWxzZSA8c3Ryb25nPkRlZmF1bHQ6bnVsbDwvc3Ryb25nPjwvZW0+IDxici8+fCAgVGhpcyBsZXRzIHlvdSBvdmVyIHJpZGUgdGhlIGdsb2JsZXM8YnIvPjwvbGk+DQoNCg0KDQoNCg0KDQo8bGk+PHN0cm9uZz5NZWRpYVR5cGU9JnF1b3Q7JnF1b3Q7IDwvc3Ryb25nPjxlbT4ob3B0aW9uYWwpPC9lbT4gPGJyLz58IHNldCBNZWRpYSB0eXBlIGZvciBDU1MgZmlsZXMgaGVyZS4uLiBvdmVycmlkZXMgZGIgc2V0aW5ncy48YnIvPjwvbGk+DQo8bGk+PHN0cm9uZz5pbXBvcnQ9JnF1b3Q7JnF1b3Q7IDwvc3Ryb25nPjxlbT4ob3B0aW9uYWwpIHRydWUvZmFsc2U8L2VtPiA8YnIvPnwgc2V0IHRoZSBpbmNsdXNpb24gc3R5bGUgZm9yIENTUyBmaWxlcyBoZXJlLi4uIG92ZXJyaWRlcyBkYiBzZXRpbmdzLiBFeDogdHJ1ZSAgZ2l2ZXMgPHN0eWxlIHR5cGU9XCZxdW90O3RleHQvY3NzXCZxdW90Oz5AaW1wb3J0IHVybCgmcXVvdDt1cmwvY3NzZmlsZS5jc3MmcXVvdDspIHNjcmVlbjs8L3N0eWxlPjxici8+PC9saT4NCg0KPGxpPjxzdHJvbmc+Y2FjaGVCdXN0ZXI8L3N0cm9uZz4gPGVtPihvcHRpb25hbCkgPHN0cm9uZz5EZWZhdWx0OmZhbHNlPC9zdHJvbmc+PC9lbT48YnIvPnwgVGhpcyBpcyB0byBpbnN0YW50bHkgdW5jYWNoZSBhbiBzY3JpcHQgb24gdGhlIGNsaWVudCBzaWRlIGFmdGVyIGEgbmV3IHVwbG9hZGVkIHNjcmlwdCBpcyBjcmVhdGVkLi4uIGllOiAxMi5qcz8xMjU1MjI1MDA3ICA8Zm9udCBjb2xvcj0mcXVvdDtyZWQmcXVvdDs+PHN0cm9uZz4oIHRydWUvZmFsc2UgKTwvc3Ryb25nPjwvZm9udD48L2xpPg0KPGxpPjxzdHJvbmc+YXNzaWduPSZxdW90OyZxdW90OyA8L3N0cm9uZz48ZW0+KG9wdGlvbmFsKTwvZW0+IDxici8+fCBBc3NpZ24gdGhlIG91dHB1dCAocmV0dXJuIHRoZSBzbWFydHkgYXNzaWdubWVudCkgIFVzZSBpbiBjb25qdW5jdGlvbiB3aXRoIG91dCB3aXRob3V0IFVSTDwvbGk+DQo8bGk+PHN0cm9uZz5mc2l6ZT0mcXVvdDsmcXVvdDsgPC9zdHJvbmc+PGVtPihvcHRpb25hbCk8L2VtPiA8YnIvPnwgZ2V0IHRoZSBzaXplPC9saT4NCjxsaT48c3Ryb25nPnJvb3RVcmw9JnF1b3Q7JnF1b3Q7IDwvc3Ryb25nPjxlbT4ob3B0aW9uYWwpPC9lbT4gPGJyLz58IFNjcmlwdERlcGxveSBjcmVhdGVzIGEgdGVtcCBkaXJlY3RvciBpbiB0aGUgdXBsb2FkIGZvbGRlci4gIElmIHlvdSBtb3ZlIHRoZSBwYXRoIHRvIHRoZSB1cGxhb2QgdG8gYSBzdWJkb21haW4geW91IG1heSBndWlkZSB0aGUgb3V0cHV0IHdpdGggdGhpcy48L2xpPg0KICAgICAgICA8dWwgc3R5bGU9JnF1b3Q7bGlzdC1zdHlsZS1wb3NpdGlvbjppbnNpZGU7JnF1b3Q7PjxsaT48c3Ryb25nPkV4YXBtbGU6PC9zdHJvbmc+IHlvdSBjaGFuZ2VkIDxDT0RFPiRjb25maWdbJiMwMzk7dXBsb2Fkc19wYXRoJiMwMzk7XSA9ICYjMDM5Oy92YXIvd3d3L3Zob3N0cy9kb21haW4ub3JnL2h0dHBkb2NzL3VwbG9hZHMmIzAzOTs7PC9DT0RFPiA8L2xpPg0KICAgICAgICAgICAgPGxpPjxzdHJvbmc+dG88L3N0cm9uZz4gPENPREU+JGNvbmZpZ1smIzAzOTt1cGxvYWRzX3BhdGgmIzAzOTtdID0gXC92YXIvd3d3L3Zob3N0cy9kb21haW4ub3JnL3N1YmRvbWFpbnMvbWVkaWEvaHR0cGRvY3MvdXBsb2FkcyYjMDM5Ozs8L0NPREU+PC9saT4NCiAgICAgICAgICAgIDxsaT5ub3cgdGhlIHVwbG9hZHMgdXJsIHdvdWxkIG5vdCB3b3JrIGFzIGl0IHdvdWxkIGJlIDx1Pmh0dHA6Ly93d3cuZG9tYWluLm9yZy91cGxvYWRzPC91PjwvbGk+DQogICAgICAgICAgICA8bGk+PHN0cm9uZz5Tbzwvc3Ryb25nPiBpdCBjYW4gYmUgY2hhbmdlZCBoZXJlIHRvIDx1Pmh0dHA6Ly9tZWRpYS5kb21haW4ub3JnL3VwbG9hZHM8L3U+ICA8Zm9udCBjb2xvcj0mcXVvdDtyZWQmcXVvdDs+PHN0cm9uZz4oTk9URTogd2F0Y2ggeW91ciAvICk8L3N0cm9uZz48L2ZvbnQ+PC9saT4NCiAgICAgICAgPC91bD4NCjxsaT48c3Ryb25nPlVSTD0mcXVvdDsmcXVvdDsgPC9zdHJvbmc+PGVtPihvcHRpb25hbCk8L2VtPiA8YnIvPnxvdXRwdXRzIHRoZSB1cmwuPC9saT4NCg0KDQoNCg0KCQkNCg0KDQoNCg0KDQoNCg0KDQo8IS0tPGxpPjxzdHJvbmc+U2FuZEJveD10cnVlIDwvc3Ryb25nPjxlbT4ob3B0aW9uYWwpPC9lbT4gPGJyLz58IGZhbHNlPGJyLz48L2xpPg0KDQo8bGk+PHN0cm9uZz5SVU5hY3Rpb249JmFtcDthbXA7YW1wO2FtcDthbXA7YW1wO2FtcDthbXA7YW1wO2FtcDthbXA7YW1wO2FtcDthbXA7YW1wO2FtcDthbXA7YW1wO2FtcDtxdW90OyZhbXA7YW1wO2FtcDthbXA7YW1wO2FtcDthbXA7YW1wO2FtcDthbXA7YW1wO2FtcDthbXA7YW1wO2FtcDthbXA7YW1wO2FtcDthbXA7cXVvdDsgPC9zdHJvbmc+PGVtPihvcHRpb25hbCk8L2VtPiA8YnIvPnwgVURUPGJyLz58IFVSTCA8ZW0+KC4uL3BsdWdpbnMvZnVuY3Rpb24uZmlsZW5hbWUucGhwKTwvZW0+PGJyLz58ICpNb3JlIGNvbWluZyBTb29uKjxici8+PC9saT4NCjxsaT48c3Ryb25nPkxhbmc9JmFtcDthbXA7YW1wO2FtcDthbXA7YW1wO2FtcDthbXA7YW1wO2FtcDthbXA7YW1wO2FtcDthbXA7YW1wO2FtcDthbXA7YW1wO2FtcDtxdW90OyZhbXA7YW1wO2FtcDthbXA7YW1wO2FtcDthbXA7YW1wO2FtcDthbXA7YW1wO2FtcDthbXA7YW1wO2FtcDthbXA7YW1wO2FtcDthbXA7cXVvdDsgPC9zdHJvbmc+PGVtPihvcHRpb25hbCk8L2VtPiA8YnIvPnwgVXNlIENvdW50cnkgQ29kZXMgVG8gZHluYW1pY2x5IHNldCB0aGUgbGFuZ3VhZ2Ugb2YgdGhlIFBheVBhbCBwYWdlPGJyLz48L2xpPi0tPg0KDQo8L3VsPg0KPGJyLz4NCg0KPGJyLz48YnIvPg0KPGgyPjxhIGlkPSJQcm9ibGVtX0RvbWFpbiI+PC9hPlByb2JsZW0gRG9tYWluPC9oMj4NCjxwPlBhZ2VzIHRoYXQgcmVmZXIgdG8gbXVsdGlwbGUgQ1NTIG9yIEphdmFTY3JpcHQgZmlsZXMgb2Z0ZW4gc3VmZmVyIGZyb20gc2xvd2VyICAgcGFnZSBsb2FkcywgZHVlIHRvIHRoZSBicm93c2VyIHJlcXVlc3RpbmcgZWFjaCBmaWxlIGluZGl2aWR1YWxseS4gTWFueSBicm93c2VycyAgIGFsc28gYXJlIGxpbWl0ZWQgdG8gYSBmZXcgc2ltdWx0YW5lb3VzIHJlcXVlc3RzIHBlciBkb21haW4uIFRoZSB3YWl0IGZvciBhICAgc2VyaWVzIG9mIHJlcXVlc3RzIGFuZCB0aGUgdHJhbnNmZXIgb2YgdW5vcHRpbWl6ZWQgZmlsZXMgY2FuIGRyYW1hdGljYWxseSByZWR1Y2UgICB0aGUgY2xpZW50LXNpZGUgcGVyZm9ybWFuY2Ugb2YgeW91ciBzaXRlLiA8L3A+DQo8cD5IZXJlIGFyZSBhIGhhbmRmdWwgb2YgWWFob28hJiMwMzk7cyBiZXN0IHByYWN0aWNlcyB0aGF0IGFyZSBhZGRyZXNzZWQgYnkgdGhlIHVzZSBvZiBTY3JpcHREZXBsb3kuIDwvcD4NCjx1bD4NCiAgPGxpPjxhIGhyZWY9Imh0dHA6Ly9kZXZlbG9wZXIueWFob28uY29tL3BlcmZvcm1hbmNlL3J1bGVzLmh0bWwjbnVtX2h0dHAiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij5NYWtlIEZld2VyIEhUVFAgUmVxdWVzdHM8L2E+PC9saT4NCiAgPGxpPjxhIGhyZWY9Imh0dHA6Ly9kZXZlbG9wZXIueWFob28uY29tL3BlcmZvcm1hbmNlL3J1bGVzLmh0bWwjZXhwaXJlcyIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPkFkZCBhbiBFeHBpcmVzIG9yIGEgQ2FjaGUtQ29udHJvbCBIZWFkZXI8L2E+PC9saT4NCiAgPGxpPjxhIGhyZWY9Imh0dHA6Ly9kZXZlbG9wZXIueWFob28uY29tL3BlcmZvcm1hbmNlL3J1bGVzLmh0bWwjZ3ppcCIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPkd6aXAgQ29tcG9uZW50czwvYT48L2xpPg0KICA8bGk+PGEgaHJlZj0iaHR0cDovL2RldmVsb3Blci55YWhvby5jb20vcGVyZm9ybWFuY2UvcnVsZXMuaHRtbCNtaW5pZnkiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij5NaW5pZnkgSmF2YVNjcmlwdCBhbmQgQ1NTPC9hPjwvbGk+DQogIDxsaT48YSBocmVmPSJodHRwOi8vZGV2ZWxvcGVyLnlhaG9vLmNvbS9wZXJmb3JtYW5jZS9ydWxlcy5odG1sI2V0YWdzIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub2ZvbGxvdyI+Q29uZmlndXJlIEVUYWdzPC9hPjwvbGk+DQogIDxsaT48YSBocmVmPSJodHRwOi8vZGV2ZWxvcGVyLnlhaG9vLmNvbS9wZXJmb3JtYW5jZS9ydWxlcy5odG1sI3VuZGVyMjUiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij5LZWVwIENvbXBvbmVudHMgdW5kZXIgMjVLPC9hPjwvbGk+DQo8L3VsPg0KPGgzPjxhIG5hbWU9IkFja25vd2xlZGdtZW50cyI+PC9hPkFja25vd2xlZGdtZW50czwvaDM+DQo8cD5NaW5pZnkgd2FzIGluc3BpcmVkIGJ5IDxhIGhyZWY9Imh0dHA6Ly9jb2RlLmdvb2dsZS5jb20vcC9qc2Nzc2NvbXAvIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub2ZvbGxvdyI+anNjc3Njb21wPC9hPiBieSBNYXhpbSBNYXJ0eW55dWsgYW5kIGJ5IHRoZSBhcnRpY2xlICYjMDM5OzxhIGhyZWY9Imh0dHA6Ly93d3cuaHVubG9jay5jb20vYmxvZ3MvU3VwZXJjaGFyZ2VkX0phdmFzY3JpcHQiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij5TdXBlcmNoYXJnZWQgSmF2YVNjcmlwdDwvYT4mIzAzOTsgYnkgUGF0cmljayBIdW5sb2NrLiA8L3A+DQo8cD5UaGUgPGEgaHJlZj0iaHR0cDovL3d3dy5jcm9ja2ZvcmQuY29tL2phdmFzY3JpcHQvanNtaW4uaHRtbCIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPkpTTWluIGxpYnJhcnk8L2E+IHVzZWQgZm9yIEphdmFTY3JpcHQgbWluaWZpY2F0aW9uIHdhcyBvcmlnaW5hbGx5ICAgd3JpdHRlbiBieSBEb3VnbGFzIENyb2NrZm9yZCBhbmQgd2FzIDxhIGhyZWY9Imh0dHA6Ly9jb2RlLmdvb2dsZS5jb20vcC9qc21pbi1waHAiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij5wb3J0ZWQgdG8gUEhQPC9hPiBieSBSeWFuICAgR3JvdmUgc3BlY2lmaWNhbGx5IGZvciB1c2UgaW4gTWluaWZ5LiA8L3A+DQoNCg0KPGgzPlN1cHBvcnQ8L2gzPg0KPGg0PlNjcmVlbmNhc3RzIGZvciBleHRyYSBoZWxwIHdpbGwgZmFsbG93LS0tIG9uIHRoZSBUT0RPPC9oND4NCjxwPlRoaXMgbW9kdWxlIGRvZXMgbm90IGluY2x1ZGUgY29tbWVyY2lhbCBzdXBwb3J0LiBIb3dldmVyLCB0aGVyZSBhcmUgYSBudW1iZXIgb2YgcmVzb3VyY2VzIGF2YWlsYWJsZSB0byBoZWxwIHlvdSB3aXRoIGl0OjwvcD4NCjx1bD4NCjxsaT5Gb3IgdGhlIGxhdGVzdCB2ZXJzaW9uIG9mIHRoaXMgbW9kdWxlIG9yIHRvIGZpbGUgYSBidWcgcmVwb3J0IHZpc2l0IDxhIGhyZWY9Imh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvc2NyaXB0ZGVwbG95Ij50aGUgQ01TIEZvcmdlPC9hPi48L2xpPg0KPGxpPkFkZGl0aW9uYWwgZGlzY3Vzc2lvbiBvZiB0aGlzIG1vZHVsZSBtYXkgYWxzbyBiZSBmb3VuZCBpbiB0aGUgPGEgaHJlZj0iaHR0cDovL2ZvcnVtLmNtc21hZGVzaW1wbGUub3JnIj5DTVMgTWFkZSBTaW1wbGUgRm9ydW1zPC9hPi48L2xpPg0KPC91bD4NCg0KPGgzPkNvcHlyaWdodCBhbmQgTGljZW5zZTwvaDM+DQo8cD5Db3B5cmlnaHQgJmNvcHk7IDIwMDksIGplcmVteUJhc3MgPDxhIGhyZWY9Imh0dHA6Ly9jb3JiZW5zcHJvZHVjdHMuY29tIj5jb3JiZW5zcHJvZHVjdHMuY29tPC9hPj4gQWxsIFJpZ2h0cyBBcmUgUmVzZXJ2ZWQuPC9wPg0KPHN0cm9uZz5TdXBwb3J0IG1vcmUgbW9kcyBsaWtlIHRoaXM6PC9zdHJvbmc+PGZvcm0gYWN0aW9uPSZxdW90O2h0dHBzOi8vd3d3LnBheXBhbC5jb20vY2dpLWJpbi93ZWJzY3ImcXVvdDsgbWV0aG9kPSZxdW90O3Bvc3QmcXVvdDs+DQo8aW5wdXQgdHlwZT0mcXVvdDtoaWRkZW4mcXVvdDsgbmFtZT0mcXVvdDtjbWQmcXVvdDsgdmFsdWU9JnF1b3Q7X3MteGNsaWNrJnF1b3Q7Pg0KPGlucHV0IHR5cGU9JnF1b3Q7aGlkZGVuJnF1b3Q7IG5hbWU9JnF1b3Q7aG9zdGVkX2J1dHRvbl9pZCZxdW90OyB2YWx1ZT0mcXVvdDs4ODE3Njc1JnF1b3Q7Pg0KPGlucHV0IHR5cGU9JnF1b3Q7aW1hZ2UmcXVvdDsgc3JjPSZxdW90O2h0dHBzOi8vd3d3LnBheXBhbC5jb20vZW5fVVMvaS9idG4vYnRuX2RvbmF0ZV9MRy5naWYmcXVvdDsgYm9yZGVyPSZxdW90OzAmcXVvdDsgbmFtZT0mcXVvdDtzdWJtaXQmcXVvdDsgYWx0PSZxdW90O1BheVBhbCAtIFRoZSBzYWZlciwgZWFzaWVyIHdheSB0byBwYXkgb25saW5lISZxdW90Oz4NCjxpbWcgYWx0PSZxdW90OyZxdW90OyBib3JkZXI9JnF1b3Q7MCZxdW90OyBzcmM9JnF1b3Q7aHR0cHM6Ly93d3cucGF5cGFsLmNvbS9lbl9VUy9pL3Njci9waXhlbC5naWYmcXVvdDsgd2lkdGg9JnF1b3Q7MSZxdW90OyBoZWlnaHQ9JnF1b3Q7MSZxdW90Oz4NCjwvZm9ybT48YnIvPg0KPHA+VGhpcyBtb2R1bGUgaGFzIGJlZW4gcmVsZWFzZWQgdW5kZXIgdGhlIDxhIGhyZWY9Imh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTCI+R05VIFB1YmxpYyBMaWNlbnNlPC9hPi4gWW91IG11c3QgYWdyZWUgdG8gdGhpcyBsaWNlbnNlIGJlZm9yZSB1c2luZyB0aGUgbW9kdWxlLjwvcD4NCjwvZGl2ID48YiBjbGFzcz0mcXVvdDtyYm90dG9tJnF1b3Q7PjxiIGNsYXNzPSZxdW90O3I0JnF1b3Q7PjwvYj48YiBjbGFzcz0mcXVvdDtyMyZxdW90Oz48L2I+IDxiIGNsYXNzPSZxdW90O3IyJnF1b3Q7PjwvYj4gPGIgY2xhc3M9JnF1b3Q7cjEmcXVvdDs+PC9iPjwvYj4NCg0KPC9kaXY+DQonOwokbGFuZ1sndXRtYSddID0gJzE1Njg2MTM1My4xNzM4ODk2MDM5LjEyNzg4NDAwMDAuMTI4NDMwNTU0MS4xMjg0MzEwMDQ0LjQ0MSc7CiRsYW5nWyd1dG16J10gPSAnMTU2ODYxMzUzLjEyODQyMjYzMjQuNDMzLjc2LnV0bWNjbj0ocmVmZXJyYWwpfHV0bWNzcj1mb3J1bS5jbXNtYWRlc2ltcGxlLm9yZ3x1dG1jY3Q9L2luZGV4LnBocC90b3BpYyw0NzI0MS5tc2cyMjU0MTQvdG9waWNzZWVuLmh0bWx8dXRtY21kPXJlZmVycmFsJzsKJGxhbmdbJ3FjYSddID0gJ1AwLTg1NDM4NzA0My0xMjc4ODQwMDAwOTE3JzsKJGxhbmdbJ3V0bWMnXSA9ICcxNTY4NjEzNTMnOwokbGFuZ1sndXRtYiddID0gJzE1Njg2MTM1Myc7Cj8+]]></data>
	</file>
	<file>
	  <filename>/lang/ext/sv_SE.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ1NjcmlwdCBEZXBsb3knOwokbGFuZ1sncG9zdGluc3RhbGwnXSA9ICdGJm91bWw7cnN0YSBzdG9wcCBkdSB2aWxsIGcmb3VtbDtyYSAmYXVtbDtyIGF0dCBsJmF1bWw7c2EgaGomYXVtbDtscCc7CiRsYW5nWydwb3N0dW5pbnN0YWxsJ10gPSAnUGxlYXNlIGZlZWwgZnJlZSB0byBsZXQgdXMga25vdyBpZiB0aGVyZSBpcyBhIHdheSB0byBtYWtlIFNjcmlwdERlcGxveSBiZXR0ZXIsIDxhIGhyZWY9Imh0dHA6Ly9oZWxwLmNvcmJlbnNwcm9kdWN0cy5jb20vbWFrZS1jb250YWN0Lmh0bWwiPkNvbnRhY3QgdXMgd2UmIzAzOTtlciBoYXBweSB0byBoZWFyIGZyb20geW91LjwvYT4nOwokbGFuZ1sncmVhbGx5X3VuaW5zdGFsbCddID0gJ0F2aW5zdGFsbGF0aW9uIGF2IGRlbm5hIG1vZHVsIGtvbW1lciBpbnRlIHAmYXJpbmc7dmVya2EgbiZhcmluZztnb24gZGF0YS4gVmlsbCBkdSBmb3J0cyZhdW1sO3R0YT8nOwokbGFuZ1sndW5pbnN0YWxsZWQnXSA9ICdNb2R1bGVuIGF2aW5zdGFsbGVyYWQnOwokbGFuZ1snaW5zdGFsbGVkJ10gPSAnTW9kdWwgdmVyc2lvbiAlcyBpbnN0YWxsZXJhZC4nOwokbGFuZ1sndXBncmFkZWQnXSA9ICdNb2R1bGVuIHVwcGdyYWRlcmFkIHRpbGwgdmVyc2lvbiAlcy4nOwokbGFuZ1snQUNUb3B0aW9ucyddID0gJ0Rpc3RyaWJ1dGlvbnMgQWx0ZXJuYXRpdic7CiRsYW5nWydtYW51YWxhc3NpZ25tZW50J10gPSAnU2tyaXB0IGdydXBwZXJpbmdhcic7CiRsYW5nWydIVE1Mc2V0dGluZ3MnXSA9ICdIVE1MIGFsdGVybmF0aXYnOwokbGFuZ1snVmFsc2V0dGluZ3MnXSA9ICdWYWxpZGF0aW9ucyBpbnN0JmF1bWw7bGxuaW5nYXInOwokbGFuZ1snZW4nXSA9ICdFbmdlbHNrYSc7CiRsYW5nWydmciddID0gJ0ZyYW5za2EnOwokbGFuZ1snaXQnXSA9ICdJdGFsaWVuc2thJzsKJGxhbmdbJ2tvJ10gPSAnS29yZWFuc2thJzsKJGxhbmdbJ2phJ10gPSAnSmFwYW5za2EnOwokbGFuZ1snZXMnXSA9ICdTcGFuc2thJzsKJGxhbmdbJ3poLWNuJ10gPSAnS2luZXNpc2thJzsKJGxhbmdbJ25sJ10gPSAnSG9sbCZhdW1sO25kc2thJzsKJGxhbmdbJ2RlJ10gPSAnVHlza2EnOwokbGFuZ1sncGwnXSA9ICdQb2xza2EnOwokbGFuZ1snTG5vbmUnXSA9ICdJbmdhIHZhcm5pbmdhcic7CiRsYW5nWydMMCddID0gJ0xldmVsIDAnOwokbGFuZ1snTDEnXSA9ICdMZXZlbCAxJzsKJGxhbmdbJ0wyJ10gPSAnTGV2ZWwgMic7CiRsYW5nWydjc3MxJ10gPSAnQ1NTIDEnOwokbGFuZ1snY3NzMiddID0gJ0NTUyAyJzsKJGxhbmdbJ2NzczIxJ10gPSAnQ1NTIDIuMSc7CiRsYW5nWydjc3MzJ10gPSAnQ1NTIDMnOwokbGFuZ1snc3ZnJ10gPSAnU1ZHJzsKJGxhbmdbJ3N2Z2Jhc2ljJ10gPSAnU1ZHIGJhc2ljJzsKJGxhbmdbJ3N2Z3RpbnknXSA9ICdTVkcgdGlueSc7CiRsYW5nWydtb2JpbGUnXSA9ICdtb2JpbCc7CiRsYW5nWydhdHNjLXR2J10gPSAnYXRzYy10dic7CiRsYW5nWyd0diddID0gJ0ludGVuZGVkIGZvciB0ZWxldmlzaW9uLXR5cGUgZGV2aWNlcy4nOwokbGFuZ1snbm9uZSddID0gJ2luZ2VuJzsKJGxhbmdbJ3NhdmVWQUxzZXR0aW5ncyddID0gJ1NwYXJhIHZhbGlkZXJpbmdzIGluc3QmYXVtbDtsbG5pbmdhcic7CiRsYW5nWydzZXR0aW5ncyddID0gJ0luc3QmYXVtbDtsbG5pbmdhcic7CiRsYW5nWydzZXR0aW5nc3NhdmVkJ10gPSAnSW5zdCZhdW1sO2xsbmluZ2FybmEgYmxldiBzcGFyYWRlJzsKJGxhbmdbJ2xlYXZlY29kZSddID0gJ1Imb3VtbDtyIGludGUga29kZW4nOwokbGFuZ1snZm9ybWF0Y29kZSddID0gJ0Zvcm1hdGVyYSBrb2RlbiBmaW50JzsKJGxhbmdbJ3NjcmFtYmxlY29kZSddID0gJ1NjcmFtYmxlIHRoZSBjb2RlJzsKJGxhbmdbJ2NsZWFuY29kZSddID0gJ0NsZWFuIHVwIHRoZSBjb2RlIHJlbW92aW5nIHN0dWZmIHRoYXQgZG9lc24mIzAzOTt0IG1hdHRlcic7CiRsYW5nWydzYXZlc2V0dGluZ3MnXSA9ICdTcGFyYSBpbnN0JmF1bWw7bGxuaW5nYXInOwokbGFuZ1snbWFuZ2xldHlwZXRleHQnXSA9ICdIdXIgbWFuIGZvcm1hdGVyYXIga29kZW4nOwokbGFuZ1snYnJpZWYnXSA9ICdCcmllZic7CiRsYW5nWyd2ZXJib3NlJ10gPSAnVmVyYm9zZSc7CiRsYW5nWydjb2RlZml4ZXMnXSA9ICdDb2RlIGZpeGVzJzsKJGxhbmdbJ2ZvcmNlbG93ZXJ0YWdzdGV4dCddID0gJ0ZvcmNlcmEgdGFnZ2FyIHRpbGwgZ2VtZW5lcic7CiRsYW5nWydmb3JjZWxvd2VydGFnc2hlbHAnXSA9ICdGJm91bWw7ciBiJmF1bWw7dHRyZSBYSFRNTC1rb21wYXRpYmlsaXRldCc7CiRsYW5nWydoaWRlbWVzc2FnZXN0ZXh0J10gPSAnSGlkZSBDb2RlTWFuZ2xlciBtZXNzYWdlcyBpbiBib3R0b20gb2YgKHgpaHRtbC1jb2RlJzsKJGxhbmdbJ2luZGVudHdpZHRodGV4dCddID0gJ1dpZHRoIG9mIGluZGVudGF0aW9uJzsKJGxhbmdbJ3NwYWNlcyddID0gJ0JsYW5rc3RlZyc7CiRsYW5nWydkZWJ1Z2xldmVsdGV4dCddID0gJ00mYXVtbDtuZ2QgZGVidWcgb3V0cHV0OiAnOwokbGFuZ1snZGVidWd0ZXh0J10gPSAnS29kIGRlYnVnbCZhdW1sO2dlJzsKJGxhbmdbJ1NjcmlwdF9saXN0J10gPSAnU2tyaXB0JzsKJGxhbmdbJ0Fzc19oZWFkZXInXSA9ICdHcnVwcGVyYWRlIHNrcmlwdCc7CiRsYW5nWydTYW1wbGVUYWcnXSA9ICdFeGVtcGVsIHRhZ2cnOwokbGFuZ1sncHJvbXB0X25ld1NjcmlwdCddID0gJ0wmYXVtbDtnZyB0aWxsIGV0dCBueXR0IHNrcnB0JzsKJGxhbmdbJ3Byb21wdF9uZXdTY3JpcHRBc3MnXSA9ICdBZGQgTmV3IFNjcmlwdCBBc3NpZ25tZW50JzsKJGxhbmdbJ3RpdGxlX0dyb3VwcyddID0gJ1NrcmlwdCBsaXN0YW4gJm91bWw7dmVyIGdydXBwZXInOwokbGFuZ1sndGl0bGVfU2NyaXB0cyddID0gJ0Vua2VsIHNrcmlwdCBsaXN0YSc7CiRsYW5nWydhcmV5b3VzdXJlJ10gPSAnSW1wb3J0YW50OlxuXG5JZiB0aGlzIGlzIGRlbGV0ZWQgYWxsIGluZm9ybWF0aW9uIHdpbGwgYmUgbG9zdCFcblxuSWYgeW91IGhhdmUgdGhpcyBzY3JpcHQgaW4gYSBncm91cCB5b3Ugd2lsbCBicmVhayB0aGUgdGllIGFuZCB3aWxsIG5lZWQgdG8gZWRpdCB0aGUgZ3JvdXAuXG5JdCBpcyBiZXN0IHRvIHN0YXJ0IHRoZSBkZWxldGlvbiBwcm9jZXNzIGZyb20gdGhlIEFzc2lnbm1lbnQgYXJlYS5cblxuWU9VIEFMU08gTE9TRSBZT1VSIFJFVklTSU9OIEhJU1RPUlkgRk9SIFRISVMgU0NSSVBULi4gQVJFIFlPVSBSRUFMWSBTVVJFPz8/JzsKJGxhbmdbJ3NtYXJ0eUhvdyddID0gJ1RoZSBzbWFydHkgd29ya3MgbGlrZSB0aGlzLi4uIFdoZXJlIHlvdSYjMDM5O2QgaGF2ZSB7JHNtYXJ0eS5ub3d9IHlvdSBkbyB7eyRzbWFydHkubm93fX0gIC4gIE5vdyB5b3UgY2FuIGRvIHNtYXJ0eSBzdHVmZic7CiRsYW5nWydhbGwnXSA9ICdQYXNzYXIgYWxsYSBlbmhldGVyJzsKJGxhbmdbJ2F1cmFsJ10gPSAnIEludGVuZGVkIGZvciBzcGVlY2ggc3ludGhlc2l6ZXJzLic7CiRsYW5nWydicmFpbGxlJ10gPSAnSW50ZW5kZWQgZm9yIGJyYWlsbGUgdGFjdGlsZSBmZWVkYmFjayBkZXZpY2VzLic7CiRsYW5nWydlbWJvc3NlZCddID0gJ0ludGVuZGVkIGZvciBwYWdlZCBicmFpbGxlIHByaW50ZXJzLic7CiRsYW5nWydoYW5kaGVsZCddID0gJ0ludGVuZGVkIGZvciBoYW5kaGVsZCBkZXZpY2VzJzsKJGxhbmdbJ3ByaW50J10gPSAnSW50ZW5kZWQgZm9yIHBhZ2VkLCBvcGFxdWUgbWF0ZXJpYWwgYW5kIGZvciBkb2N1bWVudHMgdmlld2VkIG9uIHNjcmVlbiBpbiBwcmludCBwcmV2aWV3IG1vZGUuJzsKJGxhbmdbJ3Byb2plY3Rpb24nXSA9ICcgSW50ZW5kZWQgZm9yIHByb2plY3RlZCBwcmVzZW50YXRpb25zLCBmb3IgZXhhbXBsZSBwcm9qZWN0b3JzIG9yIHByaW50IHRvIHRyYW5zcGFyZW5jaWVzLic7CiRsYW5nWydzY3JlZW4nXSA9ICdJbnRlbmRlZCBwcmltYXJpbHkgZm9yIGNvbG9yIGNvbXB1dGVyIHNjcmVlbnMuJzsKJGxhbmdbJ3R0eSddID0gJ0ludGVuZGVkIGZvciBtZWRpYSB1c2luZyBhIGZpeGVkLXBpdGNoIGNoYXJhY3RlciBncmlkLCBzdWNoIGFzIHRlbGV0eXBlcyBhbmQgdGVybWluYWxzLic7CiRsYW5nWydNZWRpYVR5cGUnXSA9ICdhbGwgOiBTdWl0YWJsZSBmb3IgYWxsIGRldmljZXMuPGJyLz4NCmF1cmFsIDogSW50ZW5kZWQgZm9yIHNwZWVjaCBzeW50aGVzaXplcnMuPGJyLz4NCmJyYWlsbGUgOiBJbnRlbmRlZCBmb3IgYnJhaWxsZSB0YWN0aWxlIGZlZWRiYWNrIGRldmljZXMuPGJyLz4NCmVtYm9zc2VkIDogSW50ZW5kZWQgZm9yIHBhZ2VkIGJyYWlsbGUgcHJpbnRlcnMuPGJyLz4NCmhhbmRoZWxkIDogSW50ZW5kZWQgZm9yIGhhbmRoZWxkIGRldmljZXM8YnIvPg0KcHJpbnQgOiBJbnRlbmRlZCBmb3IgcGFnZWQsIG9wYXF1ZSBtYXRlcmlhbCBhbmQgZm9yIGRvY3VtZW50cyB2aWV3ZWQgb24gc2NyZWVuIGluIHByaW50IHByZXZpZXcgbW9kZS48YnIvPg0KcHJvamVjdGlvbiA6IEludGVuZGVkIGZvciBwcm9qZWN0ZWQgcHJlc2VudGF0aW9ucywgZm9yIGV4YW1wbGUgcHJvamVjdG9ycyBvciBwcmludCB0byB0cmFuc3BhcmVuY2llcy48YnIvPg0Kc2NyZWVuIDogSW50ZW5kZWQgcHJpbWFyaWx5IGZvciBjb2xvciBjb21wdXRlciBzY3JlZW5zLjxici8+DQp0dHkgOiBJbnRlbmRlZCBmb3IgbWVkaWEgdXNpbmcgYSBmaXhlZC1waXRjaCBjaGFyYWN0ZXIgZ3JpZCwgc3VjaCBhcyB0ZWxldHlwZXMgYW5kIHRlcm1pbmFscy48YnIvPg0KdHYgOiBJbnRlbmRlZCBmb3IgdGVsZXZpc2lvbi10eXBlIGRldmljZXMuJzsKJGxhbmdbJ0NhbmNlbGVkJ10gPSAnTiZhcmluZztnb3QgZ2ljayBmZWwuIEFyYmV0ZXQga2FuIGhhIGYmb3VtbDtybG9yYXRzLic7CiRsYW5nWydCdG5BRERFRCddID0gJ0R1IGxhZGUgbnlzcyB0aWxsIGV0dCBueXR0IHNrcmlwdCc7CiRsYW5nWydCdG5FRElURUQnXSA9ICdEdSByZWRpZ2VyYWRlIGV0dCBiZWZpbnRsaWd0IHNrcmlwdCc7CiRsYW5nWydCdG5ERUxFVEVEJ10gPSAnRHUgcmFkZXJhZGUgZXR0IGJlZmludGxpZ3Qgc2tyaXB0JzsKJGxhbmdbJ3R5cGVfbGFiZWwnXSA9ICdUeXAnOwokbGFuZ1sncmV2aXNpb24nXSA9ICdSZXZpc2lvbic7CiRsYW5nWydpc0VkaXQnXSA9ICcmYXVtbDtyIHJlZGlnZXJpbmcnOwokbGFuZ1snZW10cHlHcm91cCddID0gJ0R1IG0mYXJpbmc7c3RlIGwmYXVtbDtnZ2EgdGlsbCBldHQgc2tyaXB0IHRpbGwgZ3J1cHBlbiBpbm5hbiBkdSBhbnJvcGFyIGRldCc7CiRsYW5nWydTY3JpcHRTZXRfbGFiZWwnXSA9ICdTa3JpcHQgSUQnOwokbGFuZ1snc2NyaXB0VHlwZV9sYWJlbCddID0gJ1NrcmlwdCB0eXAnOwokbGFuZ1snU2NyaXB0TmFtZV9sYWJlbCddID0gJ1NrcmlwdCBuYW1uJzsKJGxhbmdbJ1NpbmdsZUNvZGVfbGFiZWwnXSA9ICdTdGFuZGFyZCBTaW5nZWwgc2tyaXB0YW5yb3AnOwokbGFuZ1snR3JvdXB0U2l6ZV9sYWJlbCddID0gJ1RvdGFsdCc7CiRsYW5nWydub3Rlc19sYWJlbCddID0gJ0FudGVja25pbmdhcic7CiRsYW5nWydTaG93VmFsX2xhYmxlJ10gPSAnSCZhcmluZztsbCBtZWRkZWxhbmRlbiAmb3VtbDtwcGEnOwokbGFuZ1snVHVybk9OVmFsX2xhYmxlJ10gPSAnU2wmYXJpbmc7IDxzdHJvbmc+IFAmQXJpbmc7IDwvIHN0cm9uZz4gVmFsaWRlcmluZyc7CiRsYW5nWydob3RMaW5rQ2hlY2tfbGFibGUnXSA9ICdHJm91bWw7ciBlbiBIb3RMaW5rIENoZWNrJzsKJGxhbmdbJ1RydW5PbmhvdExpbmtDaGVjayddID0gJ0R1IG0mYXJpbmc7c3RlIHNsJmFyaW5nOyBwJmFyaW5nOyBIb3RsaW5rIENoZWNrJzsKJGxhbmdbJ2ZpbHRlclByb3BfbGFibGUnXSA9ICcgRmlsdGVyIG91dCBwcm9wZXJ0aWVzIHRvIGhlbHAgdmFsaWRhdGUnOwokbGFuZ1snQ1NTcHJvZmlsZV9sYWJsZSddID0gJyBDU1MgUHJvZmlsJzsKJGxhbmdbJ3VzZXJtZWRpdW1fbGFibGUnXSA9ICcgVXNlciBNZWRpdW0nOwokbGFuZ1snVkFMTGFuZ19sYWJsZSddID0gJ1NwciZhcmluZztrJzsKJGxhbmdbJ3czY0NTU3dhcm5pbmdfbGFibGUnXSA9ICdXM0MgQ1NTIFZhcm5pbmcgTGV2ZWwnOwokbGFuZ1snTWVkaWFUeXBlX2xhYmVsJ10gPSAnTWVkaWFUeXAnOwokbGFuZ1snTWluaWZ5X2xhYmVsJ10gPSAnTWluaWZ5IG9uIE91dHB1dCc7CiRsYW5nWydDcmVhdGlvbkRhdGVfbGFiZWwnXSA9ICdTa2FwYXQgZGF0dW0nOwokbGFuZ1snTW9kaWZlZERhdGVfbGFiZWwnXSA9ICcmQXVtbDtuZHJhdCBkYXR1bSc7CiRsYW5nWydwYXRoT3B0aW9uX2xhYmVsJ10gPSAnVXNlIGEgcGF0aDxlbT4odXNlICZxdW90Oy91cGxvYWRzLy4uLiZxdW90Oyk8L2VtPic7CiRsYW5nWydyb290VVJMT3B0aW9uX2xhYmVsJ10gPSAnVXNlIGEgc3BlY2lmaWMgcm9vdCBVUkw8ZW0+KHVzZSBzY2hlbWEgJnF1b3Q7aHR0cHM6Ly9zdWIuZG9tYWluLnRsZC8mcXVvdDspPC9lbT4nOwokbGFuZ1snR3Jvb3RVUkwnXSA9ICdHbG9iYWwgU2NyaXB0IFJvb3QgVVJMJzsKJGxhbmdbJ2VtcHR5Y2FjaGVFcnJvcl9kb0FEVUlUJ10gPSAnZmFpbGVkIHRvIGVtcHR5IHRoZSBjYWNoZSBhdCc7CiRsYW5nWydlbXB0aWVkQ2FjaF9kb0FEVUlUJ10gPSAndCZvdW1sO21kZSBjYWNoZSBza3JpcHRldCc7CiRsYW5nWydjbGVhcmVkUmV2aXNpb25fZG9BRFVJVCddID0gJ2NsZWFyZWQgdGhlIHJldmlzaW9uIGhpc3RvcnkgZm9yJzsKJGxhbmdbJ0NoZWNrZWRPdXRfZG9BRFVJVCddID0gJ0NoZWNrZWQgb3V0IHNjcmlwdCAnOwokbGFuZ1sncmVsZWFzZWRfZG9BRFVJVCddID0gJ3JlbGVhc2VkIHNjcmlwdCAnOwokbGFuZ1snU2NyaXB0SXNfbGFiZWwnXSA9ICdVc2UgdGhpcyBzY3JpcHQgPGVtPihOb3RlOiBJZiBhIHBhdGggaXMgc2V0LCBpdCB3aWxsIG92ZXIgcmlkZSB0aGlzKTwvZW0+JzsKJGxhbmdbJ2RlYnVnSVRfbGFiZWwnXSA9ICdkZWJ1Z0lUJzsKJGxhbmdbJ2RlYnVnSVRub3RlX2xhYmVsJ10gPSAnPGVtPihNJmFyaW5nO3N0ZSBoYSBGaXJlcGhwIG1vZCk8L2VtPic7CiRsYW5nWydkZWJ1Z1QnXSA9ICdEZWJ1Z2luZyBPcHRpb25zJzsKJGxhbmdbJ0VkaXRIaXN0b3J5J10gPSAnVXNlciBIaXN0b3J5IEVkaXRpbmcnOwokbGFuZ1snbm9uZUluVHlwZSddID0gJzxoMT4gIER1IG0mYXJpbmc7c3RlIGYmb3VtbDtyc3QgbCZhdW1sO2dnYSA8YnIvPiBldHQgc2tyaXB0IGkgZGVuIGgmYXVtbDtyIHR5cGVuIDwvIGgxPic7CiRsYW5nWydyZXZpc2lvblRpdGxlJ10gPSAnUmV2aXNpb25zIEhpc3RvcmlhJzsKJGxhbmdbJ3JldmlzaW9uX2xhYmVsJ10gPSAnPHN0cm9uZz5TbCZhcmluZzsgcCZhcmluZzsgcmV2aXNpb25zIGhpc3RvcmlrZW48L3N0cm9uZz4nOwokbGFuZ1sncmV2aXNpb25fb3AnXSA9ICc8aDE+UmV2aXNpb248L2gxPg0KPGgzPlRydW5pbmcgdGhpcyBvZmYgZG9lcyBub3QgY2xlYXIgdGhlIGhpc3RvcnkgaWYgaXQgd2FzIG9uIGJlZm9yZS4gIExpa2UgaXQgdG8gcGF1c2UuPC9oMz4nOwokbGFuZ1sncmV2aXNpb25fTElNSVRfbGFiZWwnXSA9ICdTJmF1bWw7dHQgcmV2aXNpb25zIGdyJmF1bWw7bnMnOwokbGFuZ1snY2xlYXJSZXYnXSA9ICdSYWRlcmEgaGlzdG9yaWtlbic7CiRsYW5nWydwcmVsb2FkX0NTU2ltYWdlVGl0bGUnXSA9ICdQcmVsb2FkIENzcyBJbWFnZXMnOwokbGFuZ1sncHJlbG9hZF9DU1NpbWFnZV9sYWJlbCddID0gJzxzdHJvbmc+VHJ1biBvbiBQcmVsb2FkZWQgQ3NzIEltYWdlczwvc3Ryb25nPic7CiRsYW5nWydwcmVsb2FkX0NTU2ltYWdlJ10gPSAnPGgxPlByZWxvYWQgQ3NzIEltYWdlczwvaDE+DQo8aDM+SWYgeW91IGhhdmUgeW91ciBzeXN0ZW0gYWxsIHNldCB1cCByaWdodCwgdGhpcyB3aWxsIGhlbHAgeW91IGdldCBhIGZhc3QgcGFyYWxsZWwgZG93biBsb2FkIG9mIGFsbCBlbGVtZW50cy48L2gzPic7CiRsYW5nWydnbG9iYWx1cmwnXSA9ICc8aDE+U2V0IHRoZSByb290IFVSTDwvaDE+DQo8aDM+VXNlZCBmb3Igd2hlbiB5b3UgbmVlZCBTU0wgc3VwcG9ydCBvciB3YW50IHRvIHB1c2ggdGhlIHNjcmlwdHMgdG8gYSBzdWJkb21haW4gdG8gbG9zZSB0aGUgbmVlZGxlcyBjb29raWVzLjwvaDM+JzsKJGxhbmdbJ3NtYXJ0eU9uX2xhYmVsJ10gPSAnPHN0cm9uZz5Qcm9jZXNzIFNtYXJ0eTwvc3Ryb25nPjxici8+IGRhdGEgaW4gYnV0dG9uIGZpZWxkcyc7CiRsYW5nWydzbWFydHlPbiddID0gJzxoMT5Qcm9jZXNzIFNtYXJ0eSBkYXRhPC9oMT4NCjxoMz5XaXRoIHRoaXMgdHVybmVkIG9uIHlvdSBjYW4gc2V0IHRoZSBidXR0b24gZmllbGRzIHdpdGggdGhlIHZhbHVlcyBwYXNzZWQgYnkgb3RoZXIgbW9kdWxlcyBzdWNoIGFzIFByb2R1Y3RzIG9yIENhdGFsb2dlcjwvaDM+JzsKJGxhbmdbJ2ZpbGVUaW1lX2Nzc191cmxzX2xhYmVsJ10gPSAnPHN0cm9uZz5oZWxwIGJyZWFrIGEgY2xpZW50IHNpZGUgY2FjaGU8L3N0cm9uZz4nOwokbGFuZ1snZmlsZVRpbWVfY3NzX3VybHMnXSA9ICc8aDE+aGVscCBicmVhayBhIGNsaWVudCBzaWRlIGNhY2hlPC9oMT4NCjxoMz5UaGlzIGlzIGRvbmUgYnkgYWRkaW5nIGEgZmlsZSBjcmVhdGlvbiB0aW1lIGF0IHRoZSBlbmQgb2YgYSBmaWxlLiAgVHVybmluZyB0aGlzIG9uIHdpbGwgYWRkIHRoaXMgdG8gYWxsIGxvY2FsIHVybHMuIChDU1Mgb25seSBhdG0pIC1Ob3RoaW5nIGlzIGRvbmUgdG8gaG90bGlua3M8L2gzPic7CiRsYW5nWydlZGl0J10gPSAnUmVkaWdlcmEnOwokbGFuZ1snZGVsZXRlJ10gPSAnUmFkZXJhJzsKJGxhbmdbJ0Nsb3NlJ10gPSAnU3QmYXVtbDtuZyc7CiRsYW5nWydPcGVuJ10gPSAnJk91bWw7cHBuYSc7CiRsYW5nWydkaXJFbXB0eSddID0gJ01hcHBlbiB2YXIgdG9tJzsKJGxhbmdbJ2NsZWFuVGVtcCddID0gJ1JhZGVyYSB0ZW1wIG1hcHBlbj8nOwokbGFuZ1sndXJUZW1wUGF0aCddID0gJ0RpbiBjYWNoZSBzJm91bWw7a3YmYXVtbDtnICZhdW1sO3InOwokbGFuZ1snTGFzdE1vZCddID0gJ1NlbmFzdCBtb2RpZmVyYWQnOwokbGFuZ1snY2FjaGVGZXJyb3InXSA9ICdTY3JpcHREZXBsb3kgY291bGQgbm90IG1ha2UgdGhlIGNhY2hlIGZvbGRlciwgY2hlY2sgeW91ciBmaWxlIHByZW1pc3Npb25zIGZvciB0aGUgVXBsYW9kcyBhcmVhLic7CiRsYW5nWydOYW1lJ10gPSAnTmFtbic7CiRsYW5nWydQcm9jY2Vzc2luZyddID0gJ0JlYXJiZXRuaW5nJzsKJGxhbmdbJ1NhdmVkJ10gPSAnU3BhcmFkJzsKJGxhbmdbJ0RvbmUnXSA9ICdLbGFyJzsKJGxhbmdbJ1ZhbGlkYXRpbmcnXSA9ICdWYWxpZGVyYXInOwokbGFuZ1snR3JvdXB0U2V0X2xhYmVsJ10gPSAnR3J1cHBuYW1uJzsKJGxhbmdbJ0dyb3VwdFR5cGVfbGFiZWwnXSA9ICdUeXAgYXYgc2tyaXB0cyc7CiRsYW5nWydTY3JpcHRQaWNrZXJfbGFiZWwnXSA9ICdTa3JpcHQgUG9vbCc7CiRsYW5nWydMSU5FJ10gPSAnTElORSc7CiRsYW5nWydUWVBFJ10gPSAnVFlQRSc7CiRsYW5nWydTVUJUWVBFJ10gPSAnU1VCVFlQRSc7CiRsYW5nWydTVFJJTkcnXSA9ICdTVFJJTkcnOwokbGFuZ1snTUVTU0FHRSddID0gJ01FU1NBR0UnOwokbGFuZ1snTEVWRUwnXSA9ICdMRVZFTCc7CiRsYW5nWydOb3RlcyddID0gJ0FudGVja25pbmdhcic7CiRsYW5nWydXYXJuaW5ncyddID0gJ1Zhcm5pbmdhcic7CiRsYW5nWydFcnJvcnMnXSA9ICdGZWxtZWRkZWxhbmRlbic7CiRsYW5nWydoaWRkZW4nXSA9ICdnJm91bWw7bWRhJzsKJGxhbmdbJ1NjcmlwdCddID0gJ1NrcmlwdCc7CiRsYW5nWydFVVJMUyddID0gJ0V4dHJhaGVyYWRlIFVSTGVyJzsKJGxhbmdbJ1JDU1MnXSA9ICdSZW5kZXJlZCBDU1MnOwokbGFuZ1snU0NTUyddID0gJ0NTUyBTdHJ1a3R1cic7CiRsYW5nWydGQ09OVCddID0gJ0ZpbGlubmVoJmFyaW5nO2xsJzsKJGxhbmdbJ2lVUkwnXSA9ICdiaWxkIFVSTCc7CiRsYW5nWydUeXBlJ10gPSAnVHlwJzsKJGxhbmdbJ1NpemUnXSA9ICdTdG9ybGVrJzsKJGxhbmdbJ1N0YXR1cyddID0gJ1N0YXR1cyc7CiRsYW5nWydob3RsaW5rJ10gPSAnPHN0cm9uZz5Ib3RsaW5raW5nOjwvc3Ryb25nPiBhcHByZWFzIHRvIGJlIGEgaG90bGluay4nOwokbGFuZ1snQnJva2VubGluayddID0gJ0JydXRlbiBsJmF1bWw7bmsnOwokbGFuZ1snTk9jc3NJJ10gPSAnSW5nYSBDU1MgYmlsZGVyJzsKJGxhbmdbJ1llc1ZBbGFzdGVyJ10gPSAnPGgyPllvdSB2YWxpZGF0ZWQhICoqPC9oMj48aW1nIHN0eWxlPSZxdW90O2JvcmRlcjowO3dpZHRoOjg4cHg7aGVpZ2h0OjMxcHgmcXVvdDtzcmM9JnF1b3Q7aHR0cDovL2ppZ3Nhdy53My5vcmcvY3NzLXZhbGlkYXRvci9pbWFnZXMvdmNzcy1ibHVlJnF1b3Q7YWx0PSZxdW90O1ZhbGlkIENTUyEmcXVvdDsgLz48YnIvPiA8c3Ryb25nPioqIHlvdSBhcmUgZmlsdGVyaW5nIGVycm9ycyBhbmQgbWF5IGhhdmUgZmlsdGVyZWQgYSByZWFsIGVycm9yPC9zdHJvbmc+JzsKJGxhbmdbJ1llc1ZBbCddID0gJzxoMj5Zb3UgdmFsaWRhdGVkITwvaDI+PGltZyBzdHlsZT0mcXVvdDtib3JkZXI6MDt3aWR0aDo4OHB4O2hlaWdodDozMXB4JnF1b3Q7c3JjPSZxdW90O2h0dHA6Ly9qaWdzYXcudzMub3JnL2Nzcy12YWxpZGF0b3IvaW1hZ2VzL3Zjc3MtYmx1ZSZxdW90O2FsdD0mcXVvdDtWYWxpZCBDU1MhJnF1b3Q7IC8+JzsKJGxhbmdbJ0NsZWFySW1nJ10gPSAnVGEgYm9ydCBha3R1ZWxsIGJpbGQnOwokbGFuZ1snRmluaXNoJ10gPSAnS2xhcic7CiRsYW5nWydyZXZlcnQnXSA9ICcmQXJpbmc7dGVyc3QmYXVtbDtsbCc7CiRsYW5nWydhcHBseSddID0gJ1ZlcmtzdCZhdW1sO2xsJzsKJGxhbmdbJ2NhbmNlbCddID0gJyZBcmluZztuZ3JhJzsKJGxhbmdbJ2Zvcm1fY2FuY2VsJ10gPSAnJkFyaW5nO25ncmEnOwokbGFuZ1snU2F2ZSddID0gJ1NwYXJhJzsKJGxhbmdbJ2RvbmUnXSA9ICdLbGFyJzsKJGxhbmdbJ2FkZCddID0gJ0wmYXVtbDtnZ3RpbGwnOwokbGFuZ1snc3VibWl0J10gPSAnU2tpY2thJzsKJGxhbmdbJ1JFT1JERVInXSA9ICdSZW9yZGVyJzsKJGxhbmdbJ2Zvcm1fc3VibWl0J10gPSAnU3BhcmEgaW5zdCZhdW1sO2xsbmluZ2FyJzsKJGxhbmdbJ21vZF9wcmVmc190aXRsZSddID0gJ01vZHVsIGluc3QmYXVtbDtsbG5pbmdhcic7CiRsYW5nWydwcmVmc3VwZGF0ZWQnXSA9ICdNb2R1bCBpbnN0JmF1bWw7bGxuaW5nYXJuYSAmYXVtbDtyIHVwcGRhdGVyYWRlJzsKJGxhbmdbJ29wdGlvbnN1cGRhdGVkJ10gPSAndXBwZGF0ZXJhZGUgYWx0ZXJuYXRpdic7CiRsYW5nWydtb2RkZXNjcmlwdGlvbiddID0gJ1NQRUVEIFlPVVIgU0lURSBVUCAuLi4hISEhICZidWxsOyBPdXRwdXQgZHluYW1pYyBKUyBmaWxlcyBhbmQgQ1NTIFdJVEggc21hcnR5Li4uICZidWxsOyBTZXQgdGhlIGZpbGVzIHRvIHVzZSBhIHN1YmRvbWFpbi4uLiAmYnVsbDsgY2FjaGVkLi4uICZidWxsOyBtaW5pZmllZC4uLiAmYnVsbDsgRGlkIEkgbWVudGlvbiB5b3UgY2FuIHVzZSBzbWFydHkgaW4geW91ciBKUyBhbmQgQ1NTIHNjcmlwdCEhISEgLSBTaW1wbGUsIGZsZXhpYmxlISc7CiRsYW5nWyd3ZWxjb21lX3RleHQnXSA9ICc8cD5IZWohPC9wPic7CiRsYW5nWydjaGFuZ2Vsb2cnXSA9ICc8dWw+DQoNCiAgPGxpPlZlcnNpb24gMC4xIEJldGEgcmVsZWFzZS48L2xpPg0KICA8bGk+VmVyc2lvbiAwLjIgbG90cyBvZiBjaGFuZ2VzIHRvIGZpeCBidWcuLi48L2xpPg0KICAgPGxpPlZlcnNpb24gMC4zIHNldCB0aGUgc21hcnR5IHRvIHVzZSB7eyB9fTwvbGk+DQogICAgPGxpPlZlcnNpb24gMC40IGZpeGVkIGJ1Zy4uIGltcHJvdmVkIHRoZSBtaW5pYWZjYXRpb24gdG8gYSBzYXZlcyBvZiB1cCB0byA2MCU8L2xpPg0KCTxsaT5WZXJzaW9uIDAuNy4xIG1hbnkgY2hhbmdlcy4uLiA8c3Ryb25nPkJSRUFLUyBVUEdSQURFPC9zdHJvbmc+IENvcHkgc2NyaXB0cywgaW5zdGFsbCBhbmQgdGhlIHVwbG9hZCBhbmQgcmVpbnN0YWxsLi4uIFNvcnJ5IGJ1dCBpdCB3YXMgbmVlZGVkIGZvciBWRVJTSU9OIEhJU1RPUlkgZml4ZWQgYnVncy4uIG1hbnkgaW1wcm92ZW1lbnRzPC9saT4NCjwvdWw+JzsKJGxhbmdbJ2hlbHAnXSA9ICc8bGluayBtZWRpYT0mcXVvdDtzY3JlZW4mcXVvdDsgaHJlZj0mcXVvdDsuLi9tb2R1bGVzL1NjcmlwdERlcGxveS9DU1MvTWFzdGVyQ1NTLmNzcyZxdW90OyB0eXBlPSZxdW90O3RleHQvY3NzJnF1b3Q7IHJlbD0mcXVvdDtzdHlsZXNoZWV0JnF1b3Q7Lz48ZGl2IGNsYXNzPSZxdW90O1NpbVdyYXAmcXVvdDs+PGIgY2xhc3M9JnF1b3Q7cmJvdHRvbSZxdW90Oz48YiBjbGFzcz0mcXVvdDtyMSZxdW90Oz48L2I+IDxiIGNsYXNzPSZxdW90O3IyJnF1b3Q7PjwvYj48YiBjbGFzcz0mcXVvdDtyMyZxdW90Oz48L2I+IDxiIGNsYXNzPSZxdW90O3I0JnF1b3Q7PjwvYj48L2I+DQoNCjxkaXYgY2xhc3M9JnF1b3Q7U2ltY29uJnF1b3Q7PiA8aDMgY2xhc3M9JnF1b3Q7QmFja0xpbmsmcXVvdDs+PGEgb25jbGljaz0iamF2YXNjcmlwdDp3aW5kb3cuaGlzdG9yeS5nbygtMSkiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij48PCBCYWNrPC9hPjwvaDM+DQo8aDE+V2hhdCBEb2VzIFRoaXMgRG8/LS0tIHRoaXMgbmVlZHMgdXBkYXRpbmc8L2gxPg0KPGgyPldyaXRlIG1hbmFnZSBhbmQgZGVwbG95IEpTIGFuZCBDU1M8L2gyPg0KPGEgaWQ9IlNjcmlwdERlcGxveSI+PC9hPg0KPHA+U2NyaXB0RGVwbG95IG1vZHVsZSB0aGF0IGNhbiBjb21iaW5lIG11bHRpcGxlIENTUyBvciBKYXZhc2NyaXB0IGZpbGVzLCBjb21wcmVzcyB0aGVpciBjb250ZW50cyAoaS5lLiByZW1vdmFsIG9mIHVubmVjZXNzYXJ5IHdoaXRlc3BhY2UvY29tbWVudHMpLCBhbmQgc2VydmUgdGhlIHJlc3VsdHMgd2l0aCBIVFRQIGVuY29kaW5nIChnemlwL2RlZmxhdGUpIGFuZCBoZWFkZXJzIHRoYXQgYWxsb3cgb3B0aW1hbCBjbGllbnQtc2lkZSBjYWNoaW5nLiBUaGlzIGhlbHBzIHlvdSBmb2xsb3cgc2V2ZXJhbCBvZiBZYWhvbyEmIzAzOTtzIDxhIGhyZWY9Imh0dHA6Ly9kZXZlbG9wZXIueWFob28uY29tL3BlcmZvcm1hbmNlL2luZGV4Lmh0bWwjcnVsZXMiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij5SdWxlcyBmb3IgSGlnaCBQZXJmb3JtYW5jZSBXZWIgU2l0ZXM8L2E+LiAoU2VlICZxdW90O1Byb2JsZW0gRG9tYWluJnF1b3Q7IGJlbG93IGZvciBtb3JlIGluZm8uKSA8L3A+DQo8aDM+VGhlIFNob3J0IG9mIGl0PC9oMz4NCjxwPldpcnRlIHlvdXIgc2NyaXB0cywgc2V0IHRoZSBvcmRlciBhbmQgU2NyaXB0RGVwbG95IHdpbGwgZG8gdGhlIHJlc3QhPC9wPg0KPHRhYmxlPg0KICA8dGJvZHk+DQogICAgPHRyPg0KICAgICAgPHRkIHN0eWxlPSZxdW90O0JPUkRFUi1SSUdIVDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctUklHSFQ6IDVweDsgQk9SREVSLVRPUDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctTEVGVDogNXB4OyBQQURESU5HLUJPVFRPTTogNXB4OyBCT1JERVItTEVGVDogI2FhYSAxcHggc29saWQ7IFBBRERJTkctVE9QOiA1cHg7IEJPUkRFUi1CT1RUT006ICNhYWEgMXB4IHNvbGlkJnF1b3Q7PjxzdHJvbmc+QmVmb3JlPC9zdHJvbmc+PC90ZD4NCiAgICAgIDx0ZCBzdHlsZT0mcXVvdDtCT1JERVItUklHSFQ6ICNhYWEgMXB4IHNvbGlkOyBQQURESU5HLVJJR0hUOiA1cHg7IEJPUkRFUi1UT1A6ICNhYWEgMXB4IHNvbGlkOyBQQURESU5HLUxFRlQ6IDVweDsgUEFERElORy1CT1RUT006IDVweDsgQk9SREVSLUxFRlQ6ICNhYWEgMXB4IHNvbGlkOyBQQURESU5HLVRPUDogNXB4OyBCT1JERVItQk9UVE9NOiAjYWFhIDFweCBzb2xpZCZxdW90Oz48aW1nIHNyYz0mcXVvdDtodHRwOi8vbXJjbGF5Lm9yZy93cC1jb250ZW50L3VwbG9hZHMvMjAwOC8wOS9maWRkbGVyX2JlZm9yZS5wbmcmcXVvdDsgYWx0PSZxdW90O2FmdGVyJnF1b3Q7IC8+PC90ZD4NCiAgICA8L3RyPg0KICAgIDx0cj4NCiAgICAgIDx0ZCBzdHlsZT0mcXVvdDtCT1JERVItUklHSFQ6ICNhYWEgMXB4IHNvbGlkOyBQQURESU5HLVJJR0hUOiA1cHg7IEJPUkRFUi1UT1A6ICNhYWEgMXB4IHNvbGlkOyBQQURESU5HLUxFRlQ6IDVweDsgUEFERElORy1CT1RUT006IDVweDsgQk9SREVSLUxFRlQ6ICNhYWEgMXB4IHNvbGlkOyBQQURESU5HLVRPUDogNXB4OyBCT1JERVItQk9UVE9NOiAjYWFhIDFweCBzb2xpZCZxdW90Oz48c3Ryb25nPkFmdGVyPC9zdHJvbmc+PC90ZD4NCiAgICAgIDx0ZCBzdHlsZT0mcXVvdDtCT1JERVItUklHSFQ6ICNhYWEgMXB4IHNvbGlkOyBQQURESU5HLVJJR0hUOiA1cHg7IEJPUkRFUi1UT1A6ICNhYWEgMXB4IHNvbGlkOyBQQURESU5HLUxFRlQ6IDVweDsgUEFERElORy1CT1RUT006IDVweDsgQk9SREVSLUxFRlQ6ICNhYWEgMXB4IHNvbGlkOyBQQURESU5HLVRPUDogNXB4OyBCT1JERVItQk9UVE9NOiAjYWFhIDFweCBzb2xpZCZxdW90Oz48aW1nIHNyYz0mcXVvdDtodHRwOi8vbXJjbGF5Lm9yZy93cC1jb250ZW50L3VwbG9hZHMvMjAwOC8wOS9maWRkbGVyX2FmdGVyLnBuZyZxdW90OyBhbHQ9JnF1b3Q7YmVmb3JlJnF1b3Q7IC8+PC90ZD4NCiAgICA8L3RyPg0KICA8L3Rib2R5Pg0KPC90YWJsZT4NCg0KDQoNCjxoMj48YSBpZD0iRmVhdHVyZXMiPjwvYT5GZWF0dXJlczwvaDI+DQo8dWw+DQogIDxsaT5Db21iaW5lcyBhbmQgbWluaWZpZXMgbXVsdGlwbGUgQ1NTIG9yIEphdmFTY3JpcHQgZmlsZXMgaW50byBhIHNpbmdsZSAgIGRvd25sb2FkIDwvbGk+DQogIDxsaT5Vc2VzIGFuIDxhIGhyZWY9Imh0dHA6Ly9jb2RlLmdvb2dsZS5jb20vcC9taW5pZnkvc291cmNlL2Jyb3dzZS90cnVuay9taW4vbGliL0pTTWluLnBocCIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPmVuaGFuY2VkIHBvcnQ8L2E+IG9mIERvdWdsYXMgQ3JvY2tmb3JkJiMwMzk7cyA8YSBocmVmPSJodHRwOi8vd3d3LmNyb2NrZm9yZC5jb20vamF2YXNjcmlwdC9qc21pbi5odG1sIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub2ZvbGxvdyI+SlNNaW4gICBsaWJyYXJ5PC9hPiBhbmQgY3VzdG9tIGNsYXNzZXMgdG8gbWluaWZ5IDxhIGhyZWY9Imh0dHA6Ly9jb2RlLmdvb2dsZS5jb20vcC9taW5pZnkvc291cmNlL2Jyb3dzZS90cnVuay9taW4vbGliL01pbmlmeS9DU1MucGhwIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub2ZvbGxvdyI+Q1NTPC9hPiBhbmQgPGEgaHJlZj0iaHR0cDovL2NvZGUuZ29vZ2xlLmNvbS9wL21pbmlmeS9zb3VyY2UvYnJvd3NlL3RydW5rL21pbi9saWIvTWluaWZ5L0hUTUwucGhwIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub2ZvbGxvdyI+SFRNTDwvYT48L2xpPg0KICA8bGk+Q2FjaGVzIHNlcnZlci1zaWRlIHRvIGF2b2lkIGRvaW5nIHVubmVjZXNzYXJ5IHdvcmsgPC9saT4NCiAgPGxpPlJlc3BvbmRzIHdpdGggYW4gSFRUUCAzMDQgKE5vdCBNb2RpZmllZCkgcmVzcG9uc2Ugd2hlbiB0aGUgYnJvd3NlciBoYXMgYW4gICB1cC10by1kYXRlIGNhY2hlIGNvcHkgKiogPC9saT4NCiAgPGxpPk1vc3QgbW9kdWxlcyBhcmUgbGF6eS1sb2FkZWQgYXMgbmVlZGVkICgzMDQgcmVzcG9uc2VzIHVzZSBtaW5pbWFsIGNvZGUpICAqKiA8L2xpPg0KICA8bGk+QXV0b21hdGljYWxseSByZXdyaXRlcyByZWxhdGl2ZSBVUklzIGluIGNvbWJpbmVkIENTUyBmaWxlcyB0byBwb2ludCB0byB2YWxpZCBsb2NhdGlvbnMgPC9saT4NCiAgPGxpPldpdGggY2FjaGluZyBlbmFibGVkLCBTY3JpcHREZXBsb3kgaXMgY2FwYWJsZSBvZiBoYW5kbGluZyBodW5kcmVkcyBvZiByZXF1ZXN0cyBwZXIgc2Vjb25kIG9uIGEgbW9kZXJhdGVseSBwb3dlcmZ1bCBzZXJ2ZXIuIDwvbGk+DQogIDxsaT5Db250ZW50LUVuY29kaW5nOiBnemlwLCBiYXNlZCBvbiByZXF1ZXN0IGhlYWRlcnMuIENhY2hpbmcgYWxsb3dzIGl0IHNvIHNlcnZlIGd6aXBwZWQgZmlsZXMgZmFzdGVyIHRoYW4gQXBhY2hlJiMwMzk7cyBtb2RfZGVmbGF0ZSBvcHRpb24hIDwvbGk+DQo8L3VsPg0KPGgzPjxlbT48c3Ryb25nPioqIE5vdGU6PC9zdHJvbmc+IEl0IGlzIGJlc3QgdG8gdXNlIGEgLmh0YWNjZXNzIHNjcmlwdCB0byBzZXQgdGhlIGFnZSB0aW1lcy4gU2NyaXB0RGVwbG95IGlzIGRlc2lnbmVkIGZvciBlZmZpY2llbmN5LCBidXQgZm9yIHZlcnkgaGlnaCB0cmFmZmljIHNpdGVzLCBTY3JpcHREZXBsb3kgbWF5IHNlcnZlIGZpbGVzIHNsb3dlciB0aGFuIHlvdXIgSFRUUGQgZHVlIHRvIHRoZSBDR0kgb3ZlcmhlYWQgb2YgUEhQLiAgVG8gb3ZlciBjb21lIHRoaXMgSnVzdCBjaGVjayAmcXVvdDt1c2UgLmh0YWNjZXNzIGluIG9wdGlvbnMmcXVvdDs8L2VtPjwvaDM+DQo8aDI+PGEgbmFtZT0iUmVxdWlyZW1lbnRzIj48L2E+UmVxdWlyZW1lbnRzPC9oMj4NCjx1bD4NCiAgPGxpPlRoZSBjb21tb25seSBpbnN0YWxsZWQgPGEgaHJlZj0iaHR0cDovL3VzMy5waHAubmV0L21hbnVhbC9lbi96bGliLmluc3RhbGxhdGlvbi5waHAiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij56bGliICAgZXh0ZW5zaW9uPC9hPiBpcyByZWNvbW1lbmRlZCBmb3IgSFRUUCBlbmNvZGluZyBmdW5jdGlvbmFsaXR5LiA8L2xpPg0KPC91bD4NCjxici8+PGJyLz4NCjxoMT5Ib3cgRG8gSSBVc2UgSXQ8L2gxPg0KDQoNCjxoMz5HZXQgYSBzaW5nbGUgc2NyaXB0PC9oMz4NCnVzZSA8c3BhbiBjbGFzcz0mcXVvdDtjb2RlSElHSExJR0hUJnF1b3Q7PntjbXNfbW9kdWxlIG1vZHVsZT1TY3JpcHREZXBsb3kgc2NyaXB0SUQ9JnF1b3Q7MSZxdW90O30gPC9zcGFuPiA8YnIvPjxici8+DQo8aDM+R2V0IGEgc2NyaXB0IGdyb3VwPC9oMz4NCnVzZSA8c3BhbiBjbGFzcz0mcXVvdDtjb2RlSElHSExJR0hUJnF1b3Q7PntjbXNfbW9kdWxlIG1vZHVsZT1TY3JpcHREZXBsb3kgZ3JvdXBJRD0mcXVvdDsxJnF1b3Q7fSA8L3NwYW4+IDxici8+PGJyLz4NCjxoMj5BbGwgb3V0cHV0IGlzIGluIHRoZSBYSFRNTCBmb3JtYXQsIHlvdSBzaG91bGQgd29yayBpbiB0aGF0LjwvaDI+DQoNCjxici8+PGJyLz4NCjxoND5QYXJhbXM8L2g0Pg0KPHVsPg0KPGxpPjxzdHJvbmc+c2NyaXB0SUQ9JnF1b3Q7JnF1b3Q7IDwvc3Ryb25nPjxlbT4oUmVxdWlyZWQvb3B0aW9uYWwpPC9lbT4gPGJyLz58IHNldCB0aGUgSUQgUmVxdWlyZWQgb25seSBpZiBncm91cElEIG5vdCBjYWxsZWQ8YnIvPjwvbGk+DQo8bGk+PHN0cm9uZz5ncm91cElEPSZxdW90OyZxdW90OyA8L3N0cm9uZz48ZW0+KFJlcXVpcmVkL29wdGlvbmFsKTwvZW0+IDxici8+fCBzZXQgdGhlIElEIFJlcXVpcmVkIG9ubHkgaWYgc2NyaXB0SUQgbm90IGNhbGxlZDxici8+PC9saT4NCjxsaT48c3Ryb25nPlN0eXBlPSZxdW90OyZxdW90OyA8L3N0cm9uZz48ZW0+KFJlcXVpcmVkLykgSlMvQ1NTPC9lbT4gPGJyLz58IHNldCB0aGUgSUQgUmVxdWlyZWQgb25seSBpZiBzY3JpcHRJRCBub3QgY2FsbGVkPGJyLz48L2xpPg0KDQo8bGk+PHN0cm9uZz5TbWFydHlPbj0mcXVvdDsmcXVvdDsgPC9zdHJvbmc+PGVtPihvcHRpb25hbCkgdHJ1ZS9mYWxzZSA8c3Ryb25nPkRlZmF1bHQ6bnVsbDwvc3Ryb25nPjwvZW0+IDxici8+fCBUaGlzIGxldHMgeW91IG92ZXIgcmlkZSB0aGUgZ2xvYmxlczxici8+PC9saT4NCjxsaT48c3Ryb25nPk1pbmlmeT0mcXVvdDsmcXVvdDsgPC9zdHJvbmc+PGVtPihvcHRpb25hbCkgdHJ1ZS9mYWxzZSA8c3Ryb25nPkRlZmF1bHQ6dHJ1ZTwvc3Ryb25nPjwvZW0+IDxici8+fCAgVGhpcyBsZXRzIHlvdSBvdmVyIHJpZGUgdGhlIGdsb2JsZXM8YnIvPjwvbGk+DQoNCg0KDQoNCg0KDQo8bGk+PHN0cm9uZz5NZWRpYVR5cGU9JnF1b3Q7JnF1b3Q7IDwvc3Ryb25nPjxlbT4ob3B0aW9uYWwpPC9lbT4gPGJyLz58IHNldCBNZWRpYSB0eXBlIGZvciBDU1MgZmlsZXMgaGVyZS4uLiBvdmVycmlkZXMgZGIgc2V0aW5ncy48YnIvPjwvbGk+DQo8bGk+PHN0cm9uZz5pbXBvcnQ9JnF1b3Q7JnF1b3Q7IDwvc3Ryb25nPjxlbT4ob3B0aW9uYWwpIHRydWUvZmFsc2U8L2VtPiA8YnIvPnwgc2V0IHRoZSBpbmNsdXNpb24gc3R5bGUgZm9yIENTUyBmaWxlcyBoZXJlLi4uIG92ZXJyaWRlcyBkYiBzZXRpbmdzLiBFeDogdHJ1ZSAgZ2l2ZXMgPHN0eWxlIHR5cGU9XCZxdW90O3RleHQvY3NzXCZxdW90Oz5AaW1wb3J0IHVybCgmcXVvdDt1cmwvY3NzZmlsZS5jc3MmcXVvdDspIHNjcmVlbjs8L3N0eWxlPjxici8+PC9saT4NCg0KPGxpPjxzdHJvbmc+Y2FjaGVCdXN0ZXI8L3N0cm9uZz4gPGVtPihvcHRpb25hbCkgPHN0cm9uZz5EZWZhdWx0OmZhbHNlPC9zdHJvbmc+PC9lbT48YnIvPnwgVGhpcyBpcyB0byBpbnN0YW50bHkgdW5jYWNoZSBhbiBzY3JpcHQgb24gdGhlIGNsaWVudCBzaWRlIGFmdGVyIGEgbmV3IHVwbG9hZGVkIHNjcmlwdCBpcyBjcmVhdGVkLi4uIGllOiAxMi5qcz8xMjU1MjI1MDA3ICA8Zm9udCBjb2xvcj0mcXVvdDtyZWQmcXVvdDs+PHN0cm9uZz4oIHRydWUvZmFsc2UgKTwvc3Ryb25nPjwvZm9udD48L2xpPg0KPGxpPjxzdHJvbmc+YXNzaWduPSZxdW90OyZxdW90OyA8L3N0cm9uZz48ZW0+KG9wdGlvbmFsKTwvZW0+IDxici8+fCBBc3NpZ24gdGhlIG91dHB1dCAocmV0dXJuIHRoZSBzbWFydHkgYXNzaWdubWVudCkgIFVzZSBpbiBjb25qdW5jdGlvbiB3aXRoIG91dCB3aXRob3V0IFVSTDwvbGk+DQo8bGk+PHN0cm9uZz5mc2l6ZT0mcXVvdDsmcXVvdDsgPC9zdHJvbmc+PGVtPihvcHRpb25hbCk8L2VtPiA8YnIvPnwgZ2V0IHRoZSBzaXplPC9saT4NCjxsaT48c3Ryb25nPnJvb3RVcmw9JnF1b3Q7JnF1b3Q7IDwvc3Ryb25nPjxlbT4ob3B0aW9uYWwpPC9lbT4gPGJyLz58IFNjcmlwdERlcGxveSBjcmVhdGVzIGEgdGVtcCBkaXJlY3RvciBpbiB0aGUgdXBsb2FkIGZvbGRlci4gIElmIHlvdSBtb3ZlIHRoZSBwYXRoIHRvIHRoZSB1cGxhb2QgdG8gYSBzdWJkb21haW4geW91IG1heSBndWlkZSB0aGUgb3V0cHV0IHdpdGggdGhpcy48L2xpPg0KICAgICAgICA8dWwgc3R5bGU9JnF1b3Q7bGlzdC1zdHlsZS1wb3NpdGlvbjppbnNpZGU7JnF1b3Q7PjxsaT48c3Ryb25nPkV4YXBtbGU6PC9zdHJvbmc+IHlvdSBjaGFuZ2VkIDxDT0RFPiRjb25maWdbJiMwMzk7dXBsb2Fkc19wYXRoJiMwMzk7XSA9ICYjMDM5Oy92YXIvd3d3L3Zob3N0cy9kb21haW4ub3JnL2h0dHBkb2NzL3VwbG9hZHMmIzAzOTs7PC9DT0RFPiA8L2xpPg0KICAgICAgICAgICAgPGxpPjxzdHJvbmc+dG88L3N0cm9uZz4gPENPREU+JGNvbmZpZ1smIzAzOTt1cGxvYWRzX3BhdGgmIzAzOTtdID0gXC92YXIvd3d3L3Zob3N0cy9kb21haW4ub3JnL3N1YmRvbWFpbnMvbWVkaWEvaHR0cGRvY3MvdXBsb2FkcyYjMDM5Ozs8L0NPREU+PC9saT4NCiAgICAgICAgICAgIDxsaT5ub3cgdGhlIHVwbG9hZHMgdXJsIHdvdWxkIG5vdCB3b3JrIGFzIGl0IHdvdWxkIGJlIDx1Pmh0dHA6Ly93d3cuZG9tYWluLm9yZy91cGxvYWRzPC91PjwvbGk+DQogICAgICAgICAgICA8bGk+PHN0cm9uZz5Tbzwvc3Ryb25nPiBpdCBjYW4gYmUgY2hhbmdlZCBoZXJlIHRvIDx1Pmh0dHA6Ly9tZWRpYS5kb21haW4ub3JnL3VwbG9hZHM8L3U+ICA8Zm9udCBjb2xvcj0mcXVvdDtyZWQmcXVvdDs+PHN0cm9uZz4oTk9URTogd2F0Y2ggeW91ciAvICk8L3N0cm9uZz48L2ZvbnQ+PC9saT4NCiAgICAgICAgPC91bD4NCjxsaT48c3Ryb25nPlVSTD0mcXVvdDsmcXVvdDsgPC9zdHJvbmc+PGVtPihvcHRpb25hbCk8L2VtPiA8YnIvPnxvdXRwdXRzIHRoZSB1cmwuPC9saT4NCg0KDQoNCg0KCQkNCg0KDQoNCg0KDQoNCg0KDQo8IS0tPGxpPjxzdHJvbmc+U2FuZEJveD10cnVlIDwvc3Ryb25nPjxlbT4ob3B0aW9uYWwpPC9lbT4gPGJyLz58IGZhbHNlPGJyLz48L2xpPg0KDQo8bGk+PHN0cm9uZz5SVU5hY3Rpb249JmFtcDthbXA7YW1wO2FtcDtxdW90OyZhbXA7YW1wO2FtcDthbXA7cXVvdDsgPC9zdHJvbmc+PGVtPihvcHRpb25hbCk8L2VtPiA8YnIvPnwgVURUPGJyLz58IFVSTCA8ZW0+KC4uL3BsdWdpbnMvZnVuY3Rpb24uZmlsZW5hbWUucGhwKTwvZW0+PGJyLz58ICpNb3JlIGNvbWluZyBTb29uKjxici8+PC9saT4NCjxsaT48c3Ryb25nPkxhbmc9JmFtcDthbXA7YW1wO2FtcDtxdW90OyZhbXA7YW1wO2FtcDthbXA7cXVvdDsgPC9zdHJvbmc+PGVtPihvcHRpb25hbCk8L2VtPiA8YnIvPnwgVXNlIENvdW50cnkgQ29kZXMgVG8gZHluYW1pY2x5IHNldCB0aGUgbGFuZ3VhZ2Ugb2YgdGhlIFBheVBhbCBwYWdlPGJyLz48L2xpPi0tPg0KDQo8L3VsPg0KPGJyLz4NCg0KPGJyLz48YnIvPg0KPGgyPjxhIGlkPSJQcm9ibGVtX0RvbWFpbiI+PC9hPlByb2JsZW0gRG9tYWluPC9oMj4NCjxwPlBhZ2VzIHRoYXQgcmVmZXIgdG8gbXVsdGlwbGUgQ1NTIG9yIEphdmFTY3JpcHQgZmlsZXMgb2Z0ZW4gc3VmZmVyIGZyb20gc2xvd2VyICAgcGFnZSBsb2FkcywgZHVlIHRvIHRoZSBicm93c2VyIHJlcXVlc3RpbmcgZWFjaCBmaWxlIGluZGl2aWR1YWxseS4gTWFueSBicm93c2VycyAgIGFsc28gYXJlIGxpbWl0ZWQgdG8gYSBmZXcgc2ltdWx0YW5lb3VzIHJlcXVlc3RzIHBlciBkb21haW4uIFRoZSB3YWl0IGZvciBhICAgc2VyaWVzIG9mIHJlcXVlc3RzIGFuZCB0aGUgdHJhbnNmZXIgb2YgdW5vcHRpbWl6ZWQgZmlsZXMgY2FuIGRyYW1hdGljYWxseSByZWR1Y2UgICB0aGUgY2xpZW50LXNpZGUgcGVyZm9ybWFuY2Ugb2YgeW91ciBzaXRlLiA8L3A+DQo8cD5IZXJlIGFyZSBhIGhhbmRmdWwgb2YgWWFob28hJiMwMzk7cyBiZXN0IHByYWN0aWNlcyB0aGF0IGFyZSBhZGRyZXNzZWQgYnkgdGhlIHVzZSBvZiBTY3JpcHREZXBsb3kuIDwvcD4NCjx1bD4NCiAgPGxpPjxhIGhyZWY9Imh0dHA6Ly9kZXZlbG9wZXIueWFob28uY29tL3BlcmZvcm1hbmNlL3J1bGVzLmh0bWwjbnVtX2h0dHAiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij5NYWtlIEZld2VyIEhUVFAgUmVxdWVzdHM8L2E+PC9saT4NCiAgPGxpPjxhIGhyZWY9Imh0dHA6Ly9kZXZlbG9wZXIueWFob28uY29tL3BlcmZvcm1hbmNlL3J1bGVzLmh0bWwjZXhwaXJlcyIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPkFkZCBhbiBFeHBpcmVzIG9yIGEgQ2FjaGUtQ29udHJvbCBIZWFkZXI8L2E+PC9saT4NCiAgPGxpPjxhIGhyZWY9Imh0dHA6Ly9kZXZlbG9wZXIueWFob28uY29tL3BlcmZvcm1hbmNlL3J1bGVzLmh0bWwjZ3ppcCIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPkd6aXAgQ29tcG9uZW50czwvYT48L2xpPg0KICA8bGk+PGEgaHJlZj0iaHR0cDovL2RldmVsb3Blci55YWhvby5jb20vcGVyZm9ybWFuY2UvcnVsZXMuaHRtbCNtaW5pZnkiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij5NaW5pZnkgSmF2YVNjcmlwdCBhbmQgQ1NTPC9hPjwvbGk+DQogIDxsaT48YSBocmVmPSJodHRwOi8vZGV2ZWxvcGVyLnlhaG9vLmNvbS9wZXJmb3JtYW5jZS9ydWxlcy5odG1sI2V0YWdzIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub2ZvbGxvdyI+Q29uZmlndXJlIEVUYWdzPC9hPjwvbGk+DQogIDxsaT48YSBocmVmPSJodHRwOi8vZGV2ZWxvcGVyLnlhaG9vLmNvbS9wZXJmb3JtYW5jZS9ydWxlcy5odG1sI3VuZGVyMjUiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij5LZWVwIENvbXBvbmVudHMgdW5kZXIgMjVLPC9hPjwvbGk+DQo8L3VsPg0KPGgzPjxhIG5hbWU9IkFja25vd2xlZGdtZW50cyI+PC9hPkFja25vd2xlZGdtZW50czwvaDM+DQo8cD5NaW5pZnkgd2FzIGluc3BpcmVkIGJ5IDxhIGhyZWY9Imh0dHA6Ly9jb2RlLmdvb2dsZS5jb20vcC9qc2Nzc2NvbXAvIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub2ZvbGxvdyI+anNjc3Njb21wPC9hPiBieSBNYXhpbSBNYXJ0eW55dWsgYW5kIGJ5IHRoZSBhcnRpY2xlICYjMDM5OzxhIGhyZWY9Imh0dHA6Ly93d3cuaHVubG9jay5jb20vYmxvZ3MvU3VwZXJjaGFyZ2VkX0phdmFzY3JpcHQiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij5TdXBlcmNoYXJnZWQgSmF2YVNjcmlwdDwvYT4mIzAzOTsgYnkgUGF0cmljayBIdW5sb2NrLiA8L3A+DQo8cD5UaGUgPGEgaHJlZj0iaHR0cDovL3d3dy5jcm9ja2ZvcmQuY29tL2phdmFzY3JpcHQvanNtaW4uaHRtbCIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9mb2xsb3ciPkpTTWluIGxpYnJhcnk8L2E+IHVzZWQgZm9yIEphdmFTY3JpcHQgbWluaWZpY2F0aW9uIHdhcyBvcmlnaW5hbGx5ICAgd3JpdHRlbiBieSBEb3VnbGFzIENyb2NrZm9yZCBhbmQgd2FzIDxhIGhyZWY9Imh0dHA6Ly9jb2RlLmdvb2dsZS5jb20vcC9qc21pbi1waHAiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vZm9sbG93Ij5wb3J0ZWQgdG8gUEhQPC9hPiBieSBSeWFuICAgR3JvdmUgc3BlY2lmaWNhbGx5IGZvciB1c2UgaW4gTWluaWZ5LiA8L3A+DQoNCg0KPGgzPlN1cHBvcnQ8L2gzPg0KPGg0PlNjcmVlbmNhc3RzIGZvciBleHRyYSBoZWxwIHdpbGwgZmFsbG93LS0tIG9uIHRoZSBUT0RPPC9oND4NCjxwPlRoaXMgbW9kdWxlIGRvZXMgbm90IGluY2x1ZGUgY29tbWVyY2lhbCBzdXBwb3J0LiBIb3dldmVyLCB0aGVyZSBhcmUgYSBudW1iZXIgb2YgcmVzb3VyY2VzIGF2YWlsYWJsZSB0byBoZWxwIHlvdSB3aXRoIGl0OjwvcD4NCjx1bD4NCjxsaT5Gb3IgdGhlIGxhdGVzdCB2ZXJzaW9uIG9mIHRoaXMgbW9kdWxlIG9yIHRvIGZpbGUgYSBidWcgcmVwb3J0IHZpc2l0IDxhIGhyZWY9Imh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvcHBibSI+dGhlIENNUyBGb3JnZTwvYT4uPC9saT4NCjxsaT5BZGRpdGlvbmFsIGRpc2N1c3Npb24gb2YgdGhpcyBtb2R1bGUgbWF5IGFsc28gYmUgZm91bmQgaW4gdGhlIDxhIGhyZWY9Imh0dHA6Ly9mb3J1bS5jbXNtYWRlc2ltcGxlLm9yZyI+Q01TIE1hZGUgU2ltcGxlIEZvcnVtczwvYT4uPC9saT4NCjwvdWw+DQoNCjxoMz5Db3B5cmlnaHQgYW5kIExpY2Vuc2U8L2gzPg0KPHA+Q29weXJpZ2h0ICZjb3B5OyAyMDA5LCBqZXJlbXlCYXNzIDw8YSBocmVmPSJodHRwOi8vY29yYmVuc3Byb2R1Y3RzLmNvbSI+Y29yYmVuc3Byb2R1Y3RzLmNvbTwvYT4+IEFsbCBSaWdodHMgQXJlIFJlc2VydmVkLjwvcD4NCjxzdHJvbmc+U3VwcG9ydCBtb3JlIG1vZHMgbGlrZSB0aGlzOjwvc3Ryb25nPjxmb3JtIGFjdGlvbj0mcXVvdDtodHRwczovL3d3dy5wYXlwYWwuY29tL2NnaS1iaW4vd2Vic2NyJnF1b3Q7IG1ldGhvZD0mcXVvdDtwb3N0JnF1b3Q7Pg0KPGlucHV0IHR5cGU9JnF1b3Q7aGlkZGVuJnF1b3Q7IG5hbWU9JnF1b3Q7Y21kJnF1b3Q7IHZhbHVlPSZxdW90O19zLXhjbGljayZxdW90Oz4NCjxpbnB1dCB0eXBlPSZxdW90O2hpZGRlbiZxdW90OyBuYW1lPSZxdW90O2hvc3RlZF9idXR0b25faWQmcXVvdDsgdmFsdWU9JnF1b3Q7ODgxNzY3NSZxdW90Oz4NCjxpbnB1dCB0eXBlPSZxdW90O2ltYWdlJnF1b3Q7IHNyYz0mcXVvdDtodHRwczovL3d3dy5wYXlwYWwuY29tL2VuX1VTL2kvYnRuL2J0bl9kb25hdGVfTEcuZ2lmJnF1b3Q7IGJvcmRlcj0mcXVvdDswJnF1b3Q7IG5hbWU9JnF1b3Q7c3VibWl0JnF1b3Q7IGFsdD0mcXVvdDtQYXlQYWwgLSBUaGUgc2FmZXIsIGVhc2llciB3YXkgdG8gcGF5IG9ubGluZSEmcXVvdDs+DQo8aW1nIGFsdD0mcXVvdDsmcXVvdDsgYm9yZGVyPSZxdW90OzAmcXVvdDsgc3JjPSZxdW90O2h0dHBzOi8vd3d3LnBheXBhbC5jb20vZW5fVVMvaS9zY3IvcGl4ZWwuZ2lmJnF1b3Q7IHdpZHRoPSZxdW90OzEmcXVvdDsgaGVpZ2h0PSZxdW90OzEmcXVvdDs+DQo8L2Zvcm0+PGJyLz4NCjxwPlRoaXMgbW9kdWxlIGhhcyBiZWVuIHJlbGVhc2VkIHVuZGVyIHRoZSA8YSBocmVmPSJodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwiPkdOVSBQdWJsaWMgTGljZW5zZTwvYT4uIFlvdSBtdXN0IGFncmVlIHRvIHRoaXMgbGljZW5zZSBiZWZvcmUgdXNpbmcgdGhlIG1vZHVsZS48L3A+DQo8L2RpdiA+PGIgY2xhc3M9JnF1b3Q7cmJvdHRvbSZxdW90Oz48YiBjbGFzcz0mcXVvdDtyNCZxdW90Oz48L2I+PGIgY2xhc3M9JnF1b3Q7cjMmcXVvdDs+PC9iPiA8YiBjbGFzcz0mcXVvdDtyMiZxdW90Oz48L2I+IDxiIGNsYXNzPSZxdW90O3IxJnF1b3Q7PjwvYj48L2I+DQoNCjwvZGl2Pg0KJzsKJGxhbmdbJ3V0bWEnXSA9ICcxNTY4NjEzNTMuOTA2MDUyNjQyLjEyNjc4MzU3MzQuMTI4MDQyNDk5MC4xMjgwNDQxMTU5LjE0OCc7CiRsYW5nWyd1dG16J10gPSAnMTU2ODYxMzUzLjEyODA0MjQ5OTAuMTQ3LjkudXRtY2NuPShyZWZlcnJhbCl8dXRtY3NyPWZvcnVtLmNtc21hZGVzaW1wbGUub3JnfHV0bWNjdD0vfHV0bWNtZD1yZWZlcnJhbCc7CiRsYW5nWydxY2EnXSA9ICdQMC0xNjA1MTgzMDcwLTEyNjc4MzU3MzM4NjUnOwokbGFuZ1sndXRtYyddID0gJzE1Njg2MTM1Myc7CiRsYW5nWyd1dG1iJ10gPSAnMTU2ODYxMzUzJzsKPz4=]]></data>
	</file>
	<file>
	  <filename>/lib/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/class.adminHeaderScripts.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCi8qKg0KICogTW9kdWxlOiBTY3JpcHREZXBsb3kgLSBNaW5pZnkgYW5kIGRlcGxveW1lbnQgb2YgSlMgQ1NTIGFuZCBIVE1MDQogKiANCiAqIA0KICogQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykNCiAqIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnDQogKiBUaGUgbW9kdWxlJ3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvc2NyaXB0ZGVwbG95Lw0KICogDQogKiBAcGFja2FnZSBTY3JpcHREZXBsb3kNCiAqIEBhdXRob3IgamVyZW15QmFzcyA8amVyZW15QmFzc0BjYWJsZW9uZS5uZXQ+DQogKiBAY29weXJpZ2h0IEplcmVteSBCYXNzDQogKiBAbGljZW5zZSBodHRwOi8vd3d3LmdudS5vcmcvY29weWxlZnQvZ3BsLmh0bWwgRnJlZWx5IGF2YWlsYWJsZSB1bmRlciBHUEwNCiAqLyANCg0KLy8vL2lmICghaXNzZXQoY21zbXMoKSkpIGV4aXQ7DQpjbGFzcyBhZG1pbkhlYWRlclNjcmlwdHMgZXh0ZW5kcyBTY3JpcHREZXBsb3l7DQoNCg0KCQkgIHB1YmxpYyBmdW5jdGlvbiBfX2NvbnN0cnVjdCgpew0KCQkJcGFyZW50OjpfX2NvbnN0cnVjdCgpOw0KCQkJJHRoaXMtPl9kYXRhID0gYXJyYXkoKTsNCgkJICB9DQoNCiAgICAgICAgLy8kQ01TX1VTRVJfS0VZPUNNU19TRUNVUkVfUEFSQU1fTkFNRS4nPScuJF9TRVNTSU9OW0NNU19VU0VSX0tFWV07DQogICAgICAgIGZ1bmN0aW9uIGpzTmNzcygkcGFja2FnZT0nJyl7DQogICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgJGRpciA9IGNtc21zKCktPmNvbmZpZ1sncm9vdF91cmwnXTsNCiAgICAgICAgICAgICAgICAkYUhTID0gbmV3IGFkbWluSGVhZGVyU2NyaXB0cygpOyANCgkJCQkNCgkJCS8qDQoJCQkgKiBAdG9kbyByZW1vdmUgdGhlIHZlcnNpb24gY2hlY2sgDQoJCQkgKiANCgkJCSovDQoJCQlpZih2ZXJzaW9uX2NvbXBhcmUoQ01TX1ZFUlNJT04sJzEuOS1iZXRhMScpID49IDAgKXsNCgkJCQkgICRqcXVlcnlTdXBwb3J0PScnOw0KCQkJICB9ZWxzZXsNCgkJCQkgICRqcXVlcnlTdXBwb3J0PSI8c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCcgc3JjPSdodHRwOi8vYWpheC5nb29nbGVhcGlzLmNvbS9hamF4L2xpYnMvanF1ZXJ5LzEuNC4yL2pxdWVyeS5taW4uanMgJz48L3NjcmlwdD48c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCcgc3JjPSdodHRwOi8vYWpheC5nb29nbGVhcGlzLmNvbS9hamF4L2xpYnMvanF1ZXJ5dWkvMS44LjQvanF1ZXJ5LXVpLm1pbi5qcyc+PC9zY3JpcHQ+IjsNCgkJCSAgfQ0KICAgICAgICAgICAgICAgIHJldHVybiAiDQo8bGluayBtZWRpYT0nc2NyZWVuJyBocmVmPSckZGlyL21vZHVsZXMvU2NyaXB0RGVwbG95L0NTUy9NYXN0ZXJDU1MuY3NzJyB0eXBlPSd0ZXh0L2NzcycgcmVsPSdzdHlsZXNoZWV0JyAvPg0KPGxpbmsgbWVkaWE9J3NjcmVlbicgaHJlZj0nJGRpci9tb2R1bGVzL1NjcmlwdERlcGxveS9DU1Mvc3R5bGUuY3NzJyB0eXBlPSd0ZXh0L2NzcycgcmVsPSdzdHlsZXNoZWV0JyAvPg0KPGxpbmsgbWVkaWE9J3NjcmVlbicgaHJlZj0nJGRpci9tb2R1bGVzL1NjcmlwdERlcGxveS9pbmNsdWRlcy9hZGRvbnMvcGFnZXIvanF1ZXJ5LnRhYmxlc29ydGVyLnBhZ2VyLmNzcycgdHlwZT0ndGV4dC9jc3MnIHJlbD0nc3R5bGVzaGVldCcgLz4NCg0KJGpxdWVyeVN1cHBvcnQNCjxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0JyBzcmM9J2h0dHA6Ly9jZG4uanF1ZXJ5dG9vbHMub3JnLzEuMi40L2FsbC9qcXVlcnkudG9vbHMubWluLmpzJz48L3NjcmlwdD4NCjxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0JyBzcmM9J2h0dHA6Ly9hamF4Lm1pY3Jvc29mdC5jb20vYWpheC9qcXVlcnkudmFsaWRhdGUvMS43L2pxdWVyeS52YWxpZGF0ZS5taW4uanMnPjwvc2NyaXB0Pg0KPHNjcmlwdCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnIHNyYz0nJGRpci9tb2R1bGVzL1NjcmlwdERlcGxveS9pbmNsdWRlcy96ZXJvY2xpcGJvYXJkL1plcm9DbGlwYm9hcmQuanMnPjwvc2NyaXB0Pg0KPHNjcmlwdCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnIHNyYz0nJGRpci9tb2R1bGVzL1NjcmlwdERlcGxveS9pbmNsdWRlcy9qcXVlcnkuY29sb3Jib3gtbWluLmpzJz48L3NjcmlwdD4NCjxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0JyBzcmM9JyRkaXIvbW9kdWxlcy9TY3JpcHREZXBsb3kvaW5jbHVkZXMvanF1ZXJ5LmhvdGtleXMubWluLmpzJz48L3NjcmlwdD4NCjxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0JyBzcmM9JyRkaXIvbW9kdWxlcy9TY3JpcHREZXBsb3kvaW5jbHVkZXMvanF1ZXJ5LnRleHRhcmVhLmpzJz48L3NjcmlwdD4NCjxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0JyBzcmM9JyRkaXIvbW9kdWxlcy9TY3JpcHREZXBsb3kvaW5jbHVkZXMvanF1ZXJ5LnNjcm9sbFRvLW1pbi5qcyc+PC9zY3JpcHQ+DQo8c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCcgc3JjPSckZGlyL21vZHVsZXMvU2NyaXB0RGVwbG95L2luY2x1ZGVzL0NvZGVNaXJyb3IvanMvY29kZW1pcnJvci5qcyc+PC9zY3JpcHQ+DQo8c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCcgc3JjPSckZGlyL21vZHVsZXMvU2NyaXB0RGVwbG95L2luY2x1ZGVzL0NvZGVNaXJyb3IvanMvbWlycm9yZnJhbWUuanMnPjwvc2NyaXB0Pg0KPHNjcmlwdCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnIHNyYz0nJGRpci9tb2R1bGVzL1NjcmlwdERlcGxveS9pbmNsdWRlcy9qcXVlcnkudGFibGVzb3J0ZXIubWluLmpzJz48L3NjcmlwdD4NCjxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0JyBzcmM9JyRkaXIvbW9kdWxlcy9TY3JpcHREZXBsb3kvaW5jbHVkZXMvYWRkb25zL3BhZ2VyL2pxdWVyeS50YWJsZXNvcnRlci5wYWdlci5qcyc+PC9zY3JpcHQ+DQp7bGl0ZXJhbH08c3R5bGU+DQouQ29kZU1pcnJvci1saW5lLW51bWJlcnN7DQoJZm9udC1mYW1pbHk6bW9ub3NwYWNlOw0KCWZvbnQtc2l6ZToxMHB0Ow0KCS8qbWFyZ2luLXRvcDo1cHg7Ki8NCn0NCi5Db2RlTWlycm9yLXdyYXBwaW5new0KCXBhZGRpbmctYm90dG9tOjI1cHg7DQoJYm9yZGVyOjFweCBzb2xpZCAjQ0NDQ0NDOw0KfQ0KI0pCX251bWFyZWF7DQoJYmFja2dyb3VuZC1jb2xvcjojZmZmOw0KCXBhZGRpbmctbGVmdDoyNHB4Ow0KfQ0KI0NNX2xpbmVOdW1iZXJzew0KIGxlZnQ6LTI0cHg7DQogdG9wOjBweDsNCn0NCi5lZGl0Ym94e3BhZGRpbmc6MHB4IDVweDt9DQo8L3N0eWxlPnsvbGl0ZXJhbH0NCiIuJGFIUy0+YnVpbGRBamF4SlMoKS4kYUhTLT5idWlsZHRhYmxlSlMoJ0lTTycpLiI8c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCcgc3JjPScuLi9tb2R1bGVzL1NjcmlwdERlcGxveS9pbmNsdWRlcy9NRV8xLjAwLjAwLmpzJz48L3NjcmlwdD4iOw0KDQp9DQoJCQ0KCQkNCmZ1bmN0aW9uIGJ1aWxkQWpheEpTKCl7Ly8vcHVsbExvZygkcGFnZT0xLCRsaW1pdCA9IDIwLCR3aGVyZUFSRz0nJykNCiAgICAgICAgDQoNCgkJLyoNCgkJICogQHRvZG8gcmVtb3ZlIHRoZSB2ZXJzaW9uIGNoZWNrIA0KCQkgKiANCgkJKi8NCgkJaWYodmVyc2lvbl9jb21wYXJlKENNU19WRVJTSU9OLCcxLjktYmV0YTEnKSA+PSAwICl7DQoJCQkkbW9kPWNtc191dGlsczo6Z2V0X21vZHVsZSgnU2NyaXB0RGVwbG95Jyk7DQoJCX1lbHNlew0KCQkJZ2xvYmFsICRnQ21zOw0KCQkJJG1vZD0kZ0Ntcy0+bW9kdWxlc1snU2NyaXB0RGVwbG95J11bJ29iamVjdCddOw0KCQl9DQoJCQ0KICAgICAgICAkZGIgPSBjbXNtcygpLT5HZXREYigpOw0KICAgICAgICAkZGlyID0gY21zbXMoKS0+Y29uZmlnWydyb290X3VybCddOw0KICAgICAgICAkQWRtaW5kaXIgPSAkZGlyLicvJy5jbXNtcygpLT5jb25maWdbJ2FkbWluX2RpciddOw0KICAgICAgICAkdXNlRWRpdG9yPSRtb2QtPkdldFByZWZlcmVuY2UoJ3VzZUVkaXRvcicsMSk7DQoJCSRlZGl0b3JIZWlnaHQ9JG1vZC0+R2V0UHJlZmVyZW5jZSgnZWRpdG9ySGVpZ2h0JywnJyk7DQoJCQ0KCQkNCgkJaWYoJGVkaXRvckhlaWdodD09MHx8JGVkaXRvckhlaWdodD09Jycpew0KCQkJJGVkaXRvckhlaWdodD0nZHluYW1pYyc7DQoJCX0NCgkJDQoJCQ0KICAgICAgICAkcmVzdWx0ID0gJyc7DQoNCiAgICAgICAgaWYgKCFpc3NldChjbXNtcygpLT51c2VycHJlZnMpKQ0KICAgICAgICB7DQogICAgICAgICAgICAgICAgbG9hZF9hbGxfcHJlZmVyZW5jZXMoJHVzZXJpZCk7DQogICAgICAgIH0NCg0KICAgICAgICAkdXNlcmxhbmcgPSBzdWJzdHIoY21zbXMoKS0+dXNlcnByZWZzWydkZWZhdWx0X2Ntc19sYW5ndWFnZSddLCAwLCAyKTsNCiAgICAgICAgICAgICAgICAvLyBTdGFydCBvZiBzY3JpcHQNCiAgICAgICAgICAgICAgICBvYl9zdGFydCgpOyA/Pg0Ke2xpdGVyYWx9PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPg0KICAgICAgICAgICAgICAgIA0KdmFyIGFqYXhBcnJheT1uZXcgQXJyYXkoKTsNCnZhciBVSUQ9Jyc7DQp2YXIgU0lEPScnOw0KdmFyIGM9MDsNCnZhciB0Ow0KdmFyIHRpbWVyX2lzX29uPTA7DQp2YXIgbGluZXMgPSBudWxsOw0KdmFyIHRleHQgPSBudWxsOw0KdmFyIGNsaXAgPSBudWxsOw0KdmFyIHNhdmVkPWZhbHNlOw0KdmFyIGlucHJvY2Nlc3M9ZmFsc2U7DQp2YXIgc3ludGF4X2lzPSJjc3MiOw0KdmFyIFRoZURhdGE9Jyc7DQp2YXIgYXN5bmNJUz10cnVlOw0KdmFyIHRpbWVycyA9IFtdOw0KdmFyIFRpcD0idGlwX2dlbmVyYWxfZ3JvdXBpbmciOw0KdmFyIHVzZUVkaXRvcj08P3BocCBlY2hvICR1c2VFZGl0b3IgPz47DQp2YXIgZWRpdG9ySGVpZ2h0PSc8P3BocCBlY2hvICRlZGl0b3JIZWlnaHQgPz4nOw0KdmFyIGVkaXRvciA9IHVuZGVmaW5lZDsNCg0KZnVuY3Rpb24gY29kZSgpe30NCg0KDQoNCmZ1bmN0aW9uIGFqYXhpdChmdW5jdGlvbklTLHBhcmFtYSl7DQoJCWlmKGFzeW5jSVM9PWZhbHNlKXsNCgkJCQkkLmFqYXgoe2FzeW5jOmZhbHNlfSk7DQoJCQkJYXN5bmNJUz10cnVlOw0KCQl9DQoJCSQucG9zdCgiPD9waHAgZWNobyAkQWRtaW5kaXIgPz4vbW9kdWxlaW50ZXJmYWNlLnBocCIsIHsgDQoJCSAgIG1hY3Q6ICdTY3JpcHREZXBsb3ksbTFfLGFqYXgsMCcsDQoJCSAgIHNwXzogJzw/cGhwIGVjaG8gJF9TRVNTSU9OW0NNU19VU0VSX0tFWV0gPz4nLA0KCQkgICBtMV9mdW5jdGlvbjogZnVuY3Rpb25JUywNCgkJICAgc2hvd3RlbXBsYXRlOmZhbHNlLA0KCQkgICBtMV9wYXJhbWE6IHBhcmFtYQ0KCQkgICB9LA0KCQkJCWZ1bmN0aW9uKGRhdGEpew0KCQkJCQkJVGhlRGF0YT1kYXRhOw0KCQkJCQkJYWpheEFycmF5WycnK2Z1bmN0aW9uSVMrJyddPWRhdGE7DQoJCQkJCQlyZXR1cm4gZGF0YTsgICAgICAgICAgDQoJCSAgIH0pOw0KCXJldHVybiBUaGVEYXRhOw0KfQ0KLy9hamF4aXQoJ3B1bGxMb2cnLCcxJyk7DQovL2FqYXhpdCgncHVsbExvZycsJzEsMjAsaXRlbV9uYW1lPVwnU2NyaXB0RGVwbG95XCcnKTsNCi8vYWpheGl0KCdwdWxsTG9nJywnMSw1Jyk7DQoNCmZ1bmN0aW9uIHBhcmFtKCBuYW1lICl7IG5hbWUgPSBuYW1lLnJlcGxhY2UoL1tcW10vLCJcXFxbIikucmVwbGFjZSgvW1xdXS8sIlxcXF0iKTsNCgkJCQkJCXZhciByZWdleFMgPSAiW1xcPyZdIituYW1lKyI9KFteJiNdKikiOw0KCQkJCQkJdmFyIHJlZ2V4ID0gbmV3IFJlZ0V4cCggcmVnZXhTICk7DQoJCQkJCQl2YXIgcmVzdWx0cyA9IHJlZ2V4LmV4ZWMoIHdpbmRvdy5sb2NhdGlvbi5ocmVmICk7DQoJCQkJCQlpZiggcmVzdWx0cyA9PSBudWxsICkgcmV0dXJuIGZhbHNlOyBlbHNlIHJldHVybiByZXN1bHRzWzFdOw0KfSAgICAgICANCmZ1bmN0aW9uIHN0b3BDb3VudCgpew0KCQljbGVhclRpbWVvdXQodCk7DQoJCXRpbWVyX2lzX29uPTA7DQp9ICAgICAgIA0KDQooZnVuY3Rpb24gKCQpIHsNCiAgICAkLmZuLmxpbmVOdW1iZXIgPSBmdW5jdGlvbiAobykgew0KICAgICAgICBhcmVhID0gdGhpczsNCiAgICAgICAgdmFyIHMgPSB7DQogICAgICAgICAgICBtYXJrX2xpbmU6IFtudWxsXSwNCiAgICAgICAgICAgIG1hcmtfY2xhc3M6IG51bGwNCiAgICAgICAgfTsNCg0KICAgICAgICBpZiAobykgJC5leHRlbmQocywgbyk7DQoNCiAgICAgICAgaWYgKHR5cGVvZihzLm1hcmtfbGluZSkgPT0gInN0cmluZyIpIHsNCiAgICAgICAgICAgIHMubWFya19saW5lID0gW3MubWFya19saW5lXTsNCiAgICAgICAgfQ0KICAgICAgICBpZiAodHlwZW9mKHMubWFya19jbGFzcykgPT0gInN0cmluZyIpIHsNCiAgICAgICAgICAgIHMubWFya19jbGFzcyA9IFtzLm1hcmtfY2xhc3NdOw0KICAgICAgICB9DQoNCiAgICAgICAgcmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbiAoKSB7DQoJCQl2YXIgJGxpbmVzID0gICQodGhpcykuZmluZCgnZGl2JykucmVtb3ZlQ2xhc3MoJycgKyBzLm1hcmtfY2xhc3MgKyAnJyk7DQogICAgICAgICAgICAkbGluZXMuZWFjaChmdW5jdGlvbiAoKSB7DQogICAgICAgICAgICAgICAgdmFyICRsaW5lID0gJCh0aGlzKTsNCiAgICAgICAgICAgICAgICB2YXIgbnVtID0gcGFyc2VJbnQoJGxpbmUudGV4dCgpKTsNCiAgICAgICAgICAgICAgICBpZiAoJC5pbkFycmF5KG51bSwgcy5tYXJrX2xpbmUpICE9PSAtMSkgew0KICAgICAgICAgICAgICAgICAgICAkbGluZS5hZGRDbGFzcygnJyArIHMubWFya19jbGFzcyArICcnKTsNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9KTsNCiAgICAgICAgfSk7DQogICAgfTsNCn0pKGpRdWVyeSk7DQoNCg0KZnVuY3Rpb24gYWpheFNjcmlwdFN1Ym1pdChVU0VSKXsNCgkJaW5wcm9jY2Vzcz10cnVlOw0KCQlQcm9jY2Vzc2luZz0gJCgnaW5wdXRbbmFtZSQ9IlByb2NjZXNzaW5nIl0nKS52YWwoKTsNCgkJJCgiYm9keSIpLmFwcGVuZCgnPGRpdiBpZD0iQWpheE92ZXJMYXkiPjwvZGl2PjxkaXYgaWQ9IkFqYXhNZXNzYWdlIj48aDI+JytQcm9jY2Vzc2luZysnPC9oMj48aW1nIHNyYz0iPD9waHAgZWNobyAkZGlyID8+L21vZHVsZXMvU2NyaXB0RGVwbG95L2ltYWdlcy9zY3JpcHRkZXBsb3kucG5nIiBhbHQ9IiIgaWQ9IkFKQVhsb2dvIiAvPjxpbWcgY2xhc3M9InByb2dyZXNzIiBzcmM9Ijw/cGhwIGVjaG8gJGRpciA/Pi9tb2R1bGVzL1NjcmlwdERlcGxveS9pbWFnZXMvbG9hZGluZy5naWYiIGFsdD0iIi8+PC9kaXY+Jyk7DQoJCS8vJCgidWwudWktc29ydGFibGUiKS5jbG9zZXN0KCJmb3JtIikuc2VyaWFsaXplKCkrIiZtMV9SRU9SREVSPVJlb3JkZXIiDQoNCgkJJCgiI1NJQSIpLnZhbChlZGl0b3IuZ2V0Q29kZSgpKTsNCgkJJC5wb3N0KCI8P3BocCBlY2hvICRBZG1pbmRpciA/Pi9tb2R1bGVpbnRlcmZhY2UucGhwIiwgJCgiZm9ybSIpLnNlcmlhbGl6ZSgpKyImbTFfYXBwbHk9QXBwbHkmYWpheHNhdmU9dHJ1ZSZzaG93dGVtcGxhdGU9ZmFsc2UiLA0KCQkJZnVuY3Rpb24oZGF0YSl7DQoJCQkJLy9hbGVydCgiVGhlIFNjcmlwdCBoYXMgYmVlbiBzYXZlZCIpOw0KCQkJCVNhdmVkPSAkKCdpbnB1dFtuYW1lJD0iU2F2ZWQiXScpLnZhbCgpOw0KCQkJCSQoIiNBamF4TWVzc2FnZSIpLmVtcHR5KCkuYXBwZW5kKCc8aDI+JytTYXZlZCsnPC9oMj48aW1nIHNyYz0iPD9waHAgZWNobyAkZGlyID8+L21vZHVsZXMvU2NyaXB0RGVwbG95L2ltYWdlcy9zY3JpcHRkZXBsb3kucG5nIiBhbHQ9IiIgaWQ9IkFKQVhsb2dvIiAvPjxpbWcgY2xhc3M9InByb2dyZXNzIiBzcmM9Ijw/cGhwIGVjaG8gJGRpciA/Pi9tb2R1bGVzL1NjcmlwdERlcGxveS9pbWFnZXMvbG9hZGluZy5naWYiIGFsdD0iIi8+Jyk7DQoJCQkJaWYoJCgnaW5wdXRbbmFtZSQ9InNjcmlwdFR5cGVfaW5wdXQiXTpjaGVja2VkJykudmFsKCk9PSdDU1MnKXJlbG9hZENTU1N0dWZmKCk7DQoJCQkJaWYoJCgnaW5wdXRbbmFtZSQ9InNjcmlwdFR5cGVfaW5wdXQiXTpjaGVja2VkJykudmFsKCk9PSdKUycpcmVsb2FkSlNTdHVmZigpOw0KCQkJCXNhdmVkPXRydWU7DQoJCQkJaW5wcm9jY2Vzcz1mYWxzZTsNCgkJCQlyZXBvcnRFZGl0U3RhdHVzKFNJRCxVSUQpOw0KCQkJCSQoIiNBamF4T3ZlckxheSIpLnJlbW92ZSgpOw0KCQl9KTsNCn0NCg0KZnVuY3Rpb24gcmVwb3J0RWRpdFN0YXR1cyhTSUQsVUlEKXsNCglkYXRhPWFqYXhpdCgnY2hlY2tfdXNlcl9lZGl0aW5nJywnZmFsc2UsdHJ1ZSwnK1NJRCsnLCcrVUlEKycnKTsNCglzdG9wQ291bnQoKTsNCgkvL2FsZXJ0KCdyZXBvcnRpbmcnKTsNCglpZihkYXRhPXRydWUpew0KCQlpZiAoIXRpbWVyX2lzX29uKXsNCgkJCQl0aW1lcl9pc19vbj0xOw0KCQkJCXQ9c2V0VGltZW91dChmdW5jdGlvbigpe3JlcG9ydEVkaXRTdGF0dXMoU0lELFVJRCl9LDEwMDAwKTsNCgkJfQ0KCX0NCi8vYWpheGl0KCdwdWxsTG9nJywnMSwyMCxpdGVtX25hbWU9XCdTY3JpcHREZXBsb3lcJycpOw0KfQ0KICAgICAgICANCmZ1bmN0aW9uIHN0b3BUaW1lcihmdW5jKXsNCgljbGVhckludGVydmFsKHRpbWVyc1tmdW5jXSk7DQp9DQoNCmZ1bmN0aW9uIHN0YXJ0VGltZXIoZnVuYyx0aW1lKXsNCgl0aW1lcnNbZnVuY10gPSBzZXRJbnRlcnZhbChmdW5jLCB0aW1lKTsNCn0NCg0KZnVuY3Rpb24gZWRpdFN0YXR1cygpew0KCXZhciB3aWQ9alF1ZXJ5KCcjdDEnKS53aWR0aCgpOw0KCWpRdWVyeSgnI3QxJykud2lkdGgod2lkKzEpOw0KfQ0KDQpmdW5jdGlvbiBnZXRUaXAoKXsNCglUaXBzID0gWyAidGlwX2dlbmVyYWxfc21hcnR5IiwgInRpcF9nZW5lcmFsX2dyb3VwaW5nIiwgInRpcF9lZGl0b3JfdGFiIiwgInRpcF9lZGl0b3Jfc2VhcmNoTnJlcGxhY2UiLCAidGlwX2VkaXRvcl9yZXNldEhpZ2hsaWdodCIsICJ0aXBfdGVtcGxhdGVfc21hcnR5IiwgInRpcF9ncm91cF9kcmFnTmRyb3AiIF07IA0KCXZhciBUaXAgPSBUaXBzW01hdGguZmxvb3IoTWF0aC5yYW5kb20oKSpUaXBzLmxlbmd0aCldOyANCgkkKCIjdGlwZWQiKS5odG1sKCcnK2FqYXhpdCgncHVsbFRpcCcsVGlwKSsnJyk7DQp9ICAgICANCiAgIA0KZnVuY3Rpb24gcmVsb2FkQ1NTU3R1ZmYoKXsNCgllcj13cj12YT1mYWxzZTsNCgkkKCIjQWpheE1lc3NhZ2UgaDIiKS5mYWRlT3V0KCJzbG93IixmdW5jdGlvbigpew0KCQlWYWxpZGF0aW5nPSAkKCdpbnB1dFtuYW1lJD0iVmFsaWRhdGluZyJdJykudmFsKCk7DQoJCSQoIiNBamF4TWVzc2FnZSIpLmVtcHR5KCkuYXBwZW5kKCc8aDI+JytWYWxpZGF0aW5nKyc8L2gyPjxpbWcgc3JjPSI8P3BocCBlY2hvICRkaXIgPz4vbW9kdWxlcy9TY3JpcHREZXBsb3kvaW1hZ2VzL3NjcmlwdGRlcGxveS5wbmciIGFsdD0iIiBpZD0iQUpBWGxvZ28iIC8+PGltZyBjbGFzcz0icHJvZ3Jlc3MiIHNyYz0iPD9waHAgZWNobyAkZGlyID8+L21vZHVsZXMvU2NyaXB0RGVwbG95L2ltYWdlcy9sb2FkaW5nLmdpZiIgYWx0PSIiLz4nKTsNCgl9KTsNCgkNCgkkKCIjRXJyb3JBcmVhIikuZW1wdHkoKS5hcHBlbmQoJzxpbWcgY2xhc3M9InByb2dyZXNzIiBzcmM9Ijw/cGhwIGVjaG8gJGRpciA/Pi9tb2R1bGVzL1NjcmlwdERlcGxveS9pbWFnZXMvbG9hZGluZy5naWYiIGFsdD0iIi8+Jyk7DQoJdmFyIHBJUz0kKCdpbnB1dFtuYW1lJD0iU2NyaXB0U2V0Il0nKS52YWwoKTsNCgl2YXIgVVNFUj0kKCdpbnB1dFtuYW1lJD0ic3BfIl0nKS52YWwoKTsNCg0KCSQucG9zdCgiPD9waHAgZWNobyAkQWRtaW5kaXIgPz4vbW9kdWxlaW50ZXJmYWNlLnBocD9tYWN0PVNjcmlwdERlcGxveSxtMV8sYWpheCwwJnNwXz0iICsgVVNFUiArICImbTFfU2NyaXB0U2V0PSIgKyBwSVMgKyAiJm0xX21vZGU9ZWRpdCZzaG93dGVtcGxhdGU9ZmFsc2UmbTFfZnVuY3Rpb249dmFsaWRhdGUmbTFfcGFyYW1hPUNTUywiICsgcElTICsgIix0cnVlIg0KCQksZnVuY3Rpb24oZGF0YSl7DQoJCQkkKCcjVkFsZWRCbG9jayAuaW5uZXInKS5odG1sKGRhdGEpOw0KCQkJRG9uZT0gJCgnaW5wdXRbbmFtZSQ9IkRvbmUiXScpLnZhbCgpOw0KCQkJJCgiI0FqYXhNZXNzYWdlIikuZW1wdHkoKS5hcHBlbmQoJzxoMj4nK0RvbmUrJzwvaDI+Jyk7DQoJCQkkKCIucHJvZ3Jlc3MiKS5mYWRlT3V0KCJzbG93IixmdW5jdGlvbigpeyQoIi5wcm9ncmVzcyIpLnJlbW92ZSgpO30pOw0KCQkJJCgiI0FqYXhPdmVyTGF5LCNBamF4TWVzc2FnZSIpLmZhZGVPdXQoInNsb3ciLGZ1bmN0aW9uKCl7JCgiI0FqYXhPdmVyTGF5LCNBamF4TWVzc2FnZSIpLnJlbW92ZSgpO30pOw0KCQkJJCgiI0VfdHJpZyIpLmNvbG9yYm94KHt3aWR0aDoiNTAwcHgiLA0KCQkJCQkgaHRtbDpmdW5jdGlvbigpew0KCQkJCQkJCQkJdGV4dD0kKCIjRXJyb3JBcmVhIikuaHRtbCgpOw0KCQkJCQkJCQkJcmV0dXJuICc8ZGl2IGlkPSJwb3B1cEVycm9yQXJlYSI+Jyt0ZXh0Kyc8L2Rpdj4nOw0KCQkJCQkJCQkJfSwNCgkJCQkJICBvcGFjaXR5OjAuMjUNCgkJCSAgIH0pOyAgDQoJCQkkKCIjV190cmlnIikuY29sb3Jib3goe3dpZHRoOiI1MDBweCIsDQoJCQkJCQkJIGh0bWw6ZnVuY3Rpb24oKXsNCgkJCQkJCQkJCXRleHQ9JCgiI3dhcm5BcmVhIikuaHRtbCgpOw0KCQkJCQkJCQkJcmV0dXJuICc8ZGl2IGlkPSJwb3B1cHdhcm5BcmVhIj4nK3RleHQrJzwvZGl2Pic7DQoJCQkJCQkJCQl9LA0KCQkJCQkJCSAgb3BhY2l0eTowLjI1DQoJCQkJCSAgIH0pOyAgDQoNCgkJCW1hcmtsaW5lTnVtYmVyKCk7DQoJCQkkKCIjbm90ZWQiKS5yZW1vdmUoKTsNCgkJCSQoJyNzaWRlYmFyJykuYXBwZW5kKCc8ZGl2IGlkPSJub3RlZCI+PC9kaXY+Jyk7DQoJCQkkKCcjbm90ZWQnKS5sb2FkKCI8P3BocCBlY2hvICRBZG1pbmRpciA/Pi9tb2R1bGVpbnRlcmZhY2UucGhwP21hY3Q9U2NyaXB0RGVwbG95LG0xXyxlZGl0X3NjcmlwdCwwJnNwXz0iK1VTRVIrIiZtMV9TY3JpcHRTZXQ9IitwSVMrIiZtMV9tb2RlPWVkaXQmc2hvd3RlbXBsYXRlPWZhbHNlICNub3RlZCIpOw0KCQkJCQkJCQkJCQkJCQkJCQkJCQ0KCQl9KTsJDQp9DQpmdW5jdGlvbiByZWxvYWRKU1N0dWZmKCl7DQoJJCgiI0FqYXhNZXNzYWdlIGgyIikuZmFkZU91dCgic2xvdyIsZnVuY3Rpb24oKXsNCgkJCSAkKCIjQWpheE1lc3NhZ2UiKS5lbXB0eSgpLmFwcGVuZCgnPGgyPkRvbmU8L2gyPjxpbWcgc3JjPSI8P3BocCBlY2hvICRkaXIgPz4vbW9kdWxlcy9TY3JpcHREZXBsb3kvaW1hZ2VzL3NjcmlwdGRlcGxveS5wbmciIGFsdD0iIiBpZD0iQUpBWGxvZ28iIC8+Jyk7DQoJIH0pOw0KCSQoIiNBamF4T3ZlckxheSwjQWpheE1lc3NhZ2UiKS5mYWRlT3V0KCJzbG93IixmdW5jdGlvbigpeyQoIiNBamF4T3ZlckxheSwjQWpheE1lc3NhZ2UiKS5yZW1vdmUoKTt9KTsNCn0NCmZ1bmN0aW9uIGJpZ1IoKXsNCglyZXR1cm4gdHJ1ZTsgICAgDQp9DQoNCg0KDQpmdW5jdGlvbiBtYXJrbGluZU51bWJlcigpew0KCWlmICgkKCIjd2FybkFyZWEiKS5sZW5ndGggPiAwKXsNCgkJdmFyIGxpbmVzID0gW107IA0KCQkkKCcjd2FybkFyZWEgc3Bhbi5saW5lJykuZWFjaChmdW5jdGlvbihpKXsNCiAgICAgICAgICAgICAgICBsaW5lcy5wdXNoKCBwYXJzZUludCggJCh0aGlzKS50ZXh0KCkgKSApOw0KICAgICAgICB9KTsNCg0KCQkkKCcjQ01fbGluZU51bWJlcnMgLkNvZGVNaXJyb3ItbGluZS1udW1iZXJzJykubGluZU51bWJlcih7DQoJCQltYXJrX2xpbmU6IGxpbmVzLA0KCQkJbWFya19jbGFzczogWyd3YXJuJ10NCgkJfSk7DQoJfWVsc2V7DQoJCSQoJy5Db2RlTWlycm9yLXdyYXBwaW5nJykubGluZU51bWJlcih7bWFya19saW5lOltdLG1hcmtfY2xhc3M6J3dhcm4nfSk7DQoJfQ0KCWlmICgkKCIjRXJyb3JBcmVhIikubGVuZ3RoID4gMCl7DQoJCXZhciBsaW5lcyA9IFtdOyANCgkJJCgnI0Vycm9yQXJlYSBzcGFuLmxpbmUnKS5lYWNoKGZ1bmN0aW9uKGkpew0KICAgICAgICAgICAgICAgIGxpbmVzLnB1c2goIHBhcnNlSW50KCAkKHRoaXMpLnRleHQoKSApICk7DQogICAgICAgIH0pOw0KCQkkKCcjQ01fbGluZU51bWJlcnMgLkNvZGVNaXJyb3ItbGluZS1udW1iZXJzJykubGluZU51bWJlcih7DQoJCQltYXJrX2xpbmU6IGxpbmVzLA0KCQkJbWFya19jbGFzczogWydlcnJvciddDQoJCX0pOw0KCX1lbHNlew0KCQkkKCcuQ29kZU1pcnJvci13cmFwcGluZycpLmxpbmVOdW1iZXIoe21hcmtfbGluZTpbXSxtYXJrX2NsYXNzOidlcnJvcid9KTsNCgl9ICAgICANCn0NCg0KDQovKg0KKg0KKmZvciBzb3J0YWJsZQ0KKg0KKi8NCmZ1bmN0aW9uIG1ha2VMaXN0KG5hbWUsbnVtKXsNCgkJcmV0dXJuICc8c3BhbiBjbGFzcz0icmVPcjMiPicrDQoJCQkJJzxpbWcgY2xhc3M9ImhhbmRsZSIgYWx0PSJkcmFnIHRvIHJlb3JkZXIiIHNyYz0iPD9waHAgZWNobyAkZGlyID8+L21vZHVsZXMvU2NyaXB0RGVwbG95L2ltYWdlcy9tYXJrZXIucG5nIj4nKw0KCQkJCSc8aW5wdXQgdHlwZT0idGV4dCIgbWF4bGVuZ3RoPSIyIiBzaXplPSIzIiB2YWx1ZT0iJytudW0rJyIgaWQ9Im0xX1NjcmlwdE9SREVSWycrbnVtKyddIiBuYW1lPSJtMV9TY3JpcHRPUkRFUlsnK251bSsnXSIgY2xhc3M9ImNtc190ZXh0ZmllbGQiPicrDQoJCSc8L3NwYW4+JysNCgkJJzxzcGFuIGNsYXNzPSJyZU9yNCI+PC9zcGFuPicrDQogICAnIDxzcGFuIGNsYXNzPSJyZU9yNSI+JysNCgkJCQknPGEgaHJlZj0iPD9waHAgZWNobyAkQWRtaW5kaXIgPz4vbW9kdWxlaW50ZXJmYWNlLnBocD9tYWN0PVNjcmlwdERlcGxveSxtMV8sZWRpdF9zY3JpcHQsMCZhbXA7c3BfPWZjYTA4MDhmJmFtcDttMV9TY3JpcHRTZXQ9JytudW0rJyZhbXA7bTFfYWN0aXZlX3RhYj10ZW1wbGF0ZV9tYW5nJmFtcDttMV9tb2RlPWVkaXQiPicrDQoJCQkJJzxpbWcgdGl0bGU9IkVkaXQiIGFsdD0iRWRpdCIgY2xhc3M9InN5c3RlbWljb24iIHNyYz0idGhlbWVzL05DbGVhbkdyZXkvaW1hZ2VzL2ljb25zL3N5c3RlbS9lZGl0LmdpZiI+PC9hPicrDQoJCSc8L3NwYW4+JysNCgkJJzxzcGFuIGNsYXNzPSJyZU9yMSI+JysNCgkJCQknPGltZyBjbGFzcz0iaGFuZGxlIiBhbHQ9ImRyYWcgdG8gcmVvcmRlciIgc3JjPSI8P3BocCBlY2hvICRkaXIgPz4vbW9kdWxlcy9TY3JpcHREZXBsb3kvaW1hZ2VzL21hcmtlci5wbmciPicrDQoJCSc8L3NwYW4+JysNCgkJJzxzcGFuIGNsYXNzPSJyZU9yMiI+JysNCgkJCQknPHNwYW4gY2xhc3M9Im5hbWUiPicrDQoJCQkJCQknPGEgaHJlZj0iPD9waHAgZWNobyAkQWRtaW5kaXIgPz4vbW9kdWxlaW50ZXJmYWNlLnBocD9tYWN0PVNjcmlwdERlcGxveSxtMV8sZWRpdF9zY3JpcHQsMCZhbXA7c3BfPWZjYTA4MDhmJmFtcDttMV9TY3JpcHRTZXQ9JytudW0rJyZhbXA7bTFfYWN0aXZlX3RhYj10ZW1wbGF0ZV9tYW5nJmFtcDttMV9tb2RlPWVkaXQiPicrbmFtZSsnIDwvYT4nKw0KCQkJCQkJJzxzcGFuPicrDQoJCQkJCQkJCScoaWQ6PGEgaHJlZj0iPD9waHAgZWNobyAkQWRtaW5kaXIgPz4vbW9kdWxlaW50ZXJmYWNlLnBocD9tYWN0PVNjcmlwdERlcGxveSxtMV8sZWRpdF9zY3JpcHQsMCZhbXA7c3BfPWZjYTA4MDhmJmFtcDttMV9TY3JpcHRTZXQ9JytudW0rJyZhbXA7bTFfYWN0aXZlX3RhYj10ZW1wbGF0ZV9tYW5nJmFtcDttMV9tb2RlPWVkaXQiPicrbnVtKyc8L2E+KScrDQoJCQkJCQknPC9zcGFuPicrDQoJCQkJICAgJyBAJysNCgkJCQknPC9zcGFuPicrDQoJCQkJJzxzcGFuIGNsYXNzPSJjb3VudFNpemUiPicrDQoJCQkJCQknJysNCgkJCQknPC9zcGFuPicrDQoJCSc8L2Rpdj4nOw0KfQ0KDQpmdW5jdGlvbiBpbml0KCkgew0KICAgICAgICAvL2NvcHkgdG8gY2xpcGJvYXJkDQogICAgICAgIFplcm9DbGlwYm9hcmQuc2V0TW92aWVQYXRoKCc8P3BocCBlY2hvICRkaXIgPz4vbW9kdWxlcy9TY3JpcHREZXBsb3kvaW5jbHVkZXMvemVyb2NsaXBib2FyZC9aZXJvQ2xpcGJvYXJkMTAuc3dmJyk7DQogICAgICAgIGNsaXAgPSBuZXcgWmVyb0NsaXBib2FyZC5DbGllbnQoKTsNCiAgICAgICAgY2xpcC5zZXRIYW5kQ3Vyc29yKCB0cnVlICk7DQoNCiAgICAgICAgJCgnLmdldFRhZycpLm1vdXNlb3ZlciggZnVuY3Rpb24oKSB7DQogICAgICAgICAgICAgICAgY2xpcC5zZXRUZXh0KCAkKHRoaXMpLmNoaWxkcmVuKCdzcGFuJykudGV4dCgpICk7DQogICAgICAgICAgICAgICAgaWYgKGNsaXAuZGl2KSB7DQogICAgICAgICAgICAgICAgICAgICAgICBjbGlwLnJlY2VpdmVFdmVudCgnbW91c2VvdXQnLCBudWxsKTsNCiAgICAgICAgICAgICAgICAgICAgICAgIGNsaXAucmVwb3NpdGlvbih0aGlzKTsNCiAgICAgICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICBlbHNlIGNsaXAuZ2x1ZSh0aGlzKTsNCiAgICAgICAgICAgICAgICBjbGlwLnJlY2VpdmVFdmVudCgnbW91c2VvdmVyJywgbnVsbCk7DQoNCiAgICAgICAgfSApOw0KICAgICAgICBjbGlwLmFkZEV2ZW50TGlzdGVuZXIoJ2NvbXBsZXRlJywgZnVuY3Rpb24gKGNsaWVudCwgdGV4dCkgew0KICAgICAgICAgICAgICAgICAgICAgICAgYWxlcnQoIkNvcGllZCB0YWcgdG8gY2xpcGJvYXJkOlxyXG4iICsgdGV4dCApOw0KICAgICAgICB9KTsNCiAgICAgICAgJCgiI3NvcnRhYmxlMSIpLnNvcnRhYmxlKHsNCiAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcjogJ3VpLXN0YXRlLWhpZ2hsaWdodCcsDQogICAgICAgICAgICAgICAgIGNvbm5lY3RXaXRoOiAnLmNvbm5lY3RlZFNvcnRhYmxlJywNCiAgICAgICAgICAgICAgICAgY2FuY2VsOiAnLnVpLXN0YXRlLWRpc2FibGVkJywNCiAgICAgICAgICAgICAgICAgZm9yY2VQbGFjZWhvbGRlclNpemU6IHRydWUgLA0KICAgICAgICAgICAgICAgICByZWNlaXZlOmZ1bmN0aW9uIChldmVudCwgdWkpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgbm1iICAgICA9IHVpLml0ZW0uYXR0cignY2xhc3MnKS5tYXRjaCgvdGFyXyhcZCspLylbMV07DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBwb29saXRlbT0iLnRhcl8iK25tYjsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCgndWwjc29ydGFibGUxIGxpJytwb29saXRlbSkucmVtb3ZlQ2xhc3MoJ2hpZGRlbicpLmZpbmQoJ2lucHV0JykuYXR0cignY2hlY2tlZCcsZmFsc2UpOw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aS5pdGVtLnJlbW92ZSgpOw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvL2FsZXJ0KCIjc29ydGFibGUxIHJlbW92ZToiK3Bvb2xpdGVtKTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJC5wb3N0KCQoJ3VsI3NvcnRhYmxlMSBsaScrcG9vbGl0ZW0pLmNsb3Nlc3QoImZvcm0iKS5hdHRyKCdhY3Rpb24nKSwkKCd1bCNzb3J0YWJsZTEgbGknK3Bvb2xpdGVtKS5jbG9zZXN0KCJmb3JtIikuc2VyaWFsaXplKCkrIiZtMV9zdWJtaXRidXR0b249QWRkIik7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICgkKCd1bCNzb3J0YWJsZTEgbGkgOmNoZWNrYm94OmNoZWNrZWQnKS5sZW5ndGghPSQoJ3VsI3NvcnRhYmxlMSBsaSA6Y2hlY2tib3gnKS5sZW5ndGgpeyANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKCcjcG9vbEVtcHR5JykuYWRkQ2xhc3MoJ2hpZGRlbicpOw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9ZWxzZSBpZiAoJCgndWwjc29ydGFibGUxIGxpIDpjaGVja2VkJykubGVuZ3RoPD0wKXsgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCgnI3Bvb2xFbXB0eScpLnJlbW92ZUNsYXNzKCdoaWRkZW4nKTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSANCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgfSk7DQoNCiAgICAgICAgLy9zb3J0IGxpc3RzIGpRX1VJDQogICAgICAgICQoIi5wYWdldGFibGUgdWwudWktc29ydGFibGUiKS5zb3J0YWJsZSh7DQogICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI6ICd1aS1zdGF0ZS1oaWdobGlnaHQnLA0KICAgICAgICAgICAgICAgIGNvbm5lY3RXaXRoOiAnLmNvbm5lY3RlZFNvcnRhYmxlJywNCiAgICAgICAgICAgICAgICBjYW5jZWw6ICcudWktc3RhdGUtZGlzYWJsZWQnLA0KICAgICAgICAgICAgICAgIGZvcmNlUGxhY2Vob2xkZXJTaXplOiB0cnVlLA0KICAgICAgICAgICAgICAgIGRpc3RhbmNlOjEwLA0KICAgICAgICAgICAgICAgIHJlY2VpdmU6ZnVuY3Rpb24gKGV2ZW50LCB1aSkgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIG5tYiAgICAgPSB1aS5pdGVtLmF0dHIoJ2NsYXNzJykubWF0Y2goL3Rhcl8oXGQrKS8pWzFdOw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIG5hbWUgPXVpLml0ZW0uY2hpbGRyZW4oJ2xhYmVsJykudGV4dCgpOw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgcG9vbGl0ZW09Ii50YXJfIitubWI7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciB0YXJnPXVpLml0ZW07DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpLml0ZW0uY2xvbmUoKS5hcHBlbmRUbygnI3NvcnRhYmxlMScpOw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aS5pdGVtLnJlbW92ZUNsYXNzKCd1aS1zdGF0ZS1kZWZhdWx0JykucmVtb3ZlQ2xhc3MoJ1NjcmlwdHBvb2wnKS5hZGRDbGFzcygiU2NyaXB0TGlzdCIpLmh0bWwobWFrZUxpc3QobmFtZSxubWIpKTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCgndWwjc29ydGFibGUxIGxpJytwb29saXRlbSkuZmluZCgnaW5wdXQnKS5hdHRyKCdjaGVja2VkJyx0cnVlKTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCgndWwjc29ydGFibGUxIGxpJytwb29saXRlbSkuYWRkQ2xhc3MoJ2hpZGRlbicpOw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoJCgndWwjc29ydGFibGUxIGxpIDpjaGVja2JveDpjaGVja2VkJykubGVuZ3RoIT0kKCd1bCNzb3J0YWJsZTEgbGkgOmNoZWNrYm94JykubGVuZ3RoKXsgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCgnI3Bvb2xFbXB0eScpLmFkZENsYXNzKCdoaWRkZW4nKTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfWVsc2V7IA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoJyNwb29sRW1wdHknKS5yZW1vdmVDbGFzcygnaGlkZGVuJyk7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCgnLnBhZ2V0YWJsZSB1bC51aS1zb3J0YWJsZSBsaS50YXJfJykucmVtb3ZlKCk7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQucG9zdCgkKCd1bCNzb3J0YWJsZTEgbGknK3Bvb2xpdGVtKS5jbG9zZXN0KCJmb3JtIikuYXR0cignYWN0aW9uJyksJCgndWwjc29ydGFibGUxIGxpJytwb29saXRlbSkuY2xvc2VzdCgiZm9ybSIpLnNlcmlhbGl6ZSgpKyImbTFfc3VibWl0YnV0dG9uPUFkZCIpOw0KICAgICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICB1cGRhdGUgOiBmdW5jdGlvbiAoZXZlbnQsIHVpKSB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vdmFyIHRvdGFscm93cyA9ICQoInVsLnVpLXNvcnRhYmxlIikuZmluZCgibGkiKS5zaXplKCk7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoIi5wYWdldGFibGUgdWwudWktc29ydGFibGUiKS5maW5kKCJsaSIpLnJlbW92ZUNsYXNzKCdyb3cxJykucmVtb3ZlQ2xhc3MoJ3JvdzInKTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCgiLnBhZ2V0YWJsZSB1bC51aS1zb3J0YWJsZSIpLmZpbmQoImxpOm50aC1jaGlsZCgybisxKSIpLmFkZENsYXNzKCJyb3cxIik7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoIi5wYWdldGFibGUgdWwudWktc29ydGFibGUiKS5maW5kKCJsaTpudGgtY2hpbGQoMm4pIikuYWRkQ2xhc3MoInJvdzIiKTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCgiLnBhZ2V0YWJsZSB1bC51aS1zb3J0YWJsZSIpLmZpbmQoImxpIikuZWFjaChmdW5jdGlvbigpIHsgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCh0aGlzKS5maW5kKCdpbnB1dCcpLnZhbCgkKHRoaXMpLmluZGV4KCkrMSk7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pOw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkLnBvc3QoJCgidWwudWktc29ydGFibGUiKS5jbG9zZXN0KCJmb3JtIikuYXR0cignYWN0aW9uJyksICQoInVsLnVpLXNvcnRhYmxlIikuY2xvc2VzdCgiZm9ybSIpLnNlcmlhbGl6ZSgpKyImbTFfUkVPUkRFUj1SZW9yZGVyIik7DQogICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgIH0pOw0KDQoNCg0KLyoNCioNCioNCioNCiovDQovL2NsZWFyIGFjdGlvbiBtZXNzYWdlcyAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgaWYgKCQoIi5wYWdlbWVzc2FnZSIpLmxlbmd0aCA+IDApew0KCQkJJCgiLnBhZ2VtZXNzYWdlIikuY2xvc2VzdCgiLnBhZ2VtY29udGFpbmVyIikNCgkJCQkJLmZhZGVUbygzMDAwLCAwLjksZnVuY3Rpb24oKXsNCgkJCQkJCSQoIi5wYWdlbWVzc2FnZSIpLmZhZGVUbyg1MDAsIDAuMCxmdW5jdGlvbigpew0KCQkJCQkJCSQoIi5wYWdlbWVzc2FnZSIpLmNsb3Nlc3QoIi5wYWdlbWNvbnRhaW5lciIpLnJlbW92ZSgpOw0KCQkJCQkJfSk7DQoJCQkJCX0pOw0KICAgICAgICB9DQoNCi8qDQoqDQoqDQoqDQoqLw0KLy9BY2NvcmRpb24gICAgIA0KICAgICAgICAkKCJkaXYuYWNvciBoMyBzcGFuIikuY2xpY2soZnVuY3Rpb24oZSl7DQogICAgICAgICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpOw0KICAgICAgICAgICAgICAgIHZhciB0aGlzQ29udGVudCA9ICQodGhpcykuY2xvc2VzdCgiaDMiKS5uZXh0KCJkaXYuY29udGVudCIpOw0KICAgICAgICAgICAgICAgIGlmICgkKHRoaXNDb250ZW50KS5jc3MoImRpc3BsYXkiKSAhPSAibm9uZSIpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICQodGhpc0NvbnRlbnQpLmZhZGVPdXQoImZhc3QiKTsNCiAgICAgICAgICAgICAgICB9ZWxzZXsNCiAgICAgICAgICAgICAgICAgICAgICAgICQoImRpdi5wYW5lIGRpdi5jb250ZW50IikuZmFkZU91dCgiZmFzdCIpOw0KICAgICAgICAgICAgICAgICAgICAgICAgJCh0aGlzQ29udGVudCkuZmFkZUluKCk7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICB9KTsNCg0KDQoNCi8vYWpheGl0KCdwdWxsVGlwJyxUaXApOw0KDQoNCi8qDQoqDQoqDQoqDQoqLw0KLy9oZWxwIHRpcHMuLi4gTE9PSyBJTiBUTw0KICAgICAgICBpZiAoJCgiaW1nLnN5c3RlbWljb24iKS5sZW5ndGggPiAwKXsNCgkJCSQoImltZy5zeXN0ZW1pY29uIikubm90KCIuaGVscHRleHQgaW1nLnN5c3RlbWljb24sLnBhZ2V0YWJsZSBhIGltZy5zeXN0ZW1pY29uIikNCiAgICAgICAgCQkJLnRvb2x0aXAoew0KICAgICAgICAgICAgICAgICAgICAgICAgIHRpcDoiI2RlbW90aXAiLA0KICAgICAgICAgICAgICAgICAgICAgICAgIGxhenk6dHJ1ZSwNCiAgICAgICAgICAgICAgICAgICAgICAgICByZWxhdGl2ZTpmYWxzZSwNCiAgICAgICAgICAgICAgICAgICAgICAgICBvZmZzZXQ6Wy0xNDIsLTI4XSwNCiAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjondG9wIHJpZ2h0JywNCiAgICAgICAgICAgICAgICAgICAgICAgICBwcmVkZWxheTo1MCwNCiAgICAgICAgICAgICAgICAgICAgICAgIG9uQmVmb3JlU2hvdzogZnVuY3Rpb24oKSB7IA0KCQkJCQkJCSQoIiNkZW1vdGlwIikud3JhcElubmVyKCc8ZGl2IGlkPSJUVF9taWQiIC8+Jyk7DQoJCQkJCQkJJCgiI2RlbW90aXAiKS5hcHBlbmQoJzxkaXYgaWQ9IlRUX2J0bSIgPjwvZGl2PicpOw0KCQkJCQkJCSQoIiNkZW1vdGlwIikucHJlcGVuZCgnPGRpdiBpZD0iVFRfdG9wIiA+PC9kaXY+Jyk7DQoJCQkJCQkJaWYoJCgiLnByb2dyZXNzIikubGVuZ3RoID09IDApew0KCQkJCQkJCQkJJCgiI2RlbW90aXAiKS5hcHBlbmQoJzxpbWcgY2xhc3M9InByb2dyZXNzIiBzcmM9Ijw/cGhwIGVjaG8gJGRpciA/Pi9tb2R1bGVzL1NjcmlwdERlcGxveS9pbWFnZXMvbG9hZGluZy5naWYiIGFsdD0iIi8+Jyk7DQoJCQkJCQkJfQ0KCQkJCQkJCXBJUz10aGlzLmdldFRyaWdnZXIoKS5hdHRyKCJyZWwiKTsNCgkJCQkJCQlVU0VSPXRoaXMuZ2V0VHJpZ2dlcigpLmF0dHIoImFsdCIpOw0KCQkJCQkJCSQoIiNUVF9taWQiKS5sb2FkKCI8P3BocCBlY2hvICRBZG1pbmRpciA/Pi9tb2R1bGVpbnRlcmZhY2UucGhwP21hY3Q9U2NyaXB0RGVwbG95LG0xXyxkZXNjcmlwdGlvbiwwJiIrVVNFUisiJnNob3d0ZW1wbGF0ZT1mYWxzZSZtMV9EZXNjcmlwdGlvbj0iK3BJUysiICNESVNDUlAiDQoJCQkJCQkJCQkJCQkJCQksZnVuY3Rpb24oKXsNCgkJCQkJCQkJCQkJCQkJCQkJJCgiLnByb2dyZXNzIikuZmFkZU91dCgic2xvdyIsZnVuY3Rpb24oKXskKCIucHJvZ3Jlc3MiKS5yZW1vdmUoKTt9KTsNCgkJCQkJCQkJCQkJCQkJCX0pOw0KICAgICAgICAgICAgICAgICAgICAgICAgfSwgDQogICAgICAgICAgICAgICAgICAgICAgICBvbkhpZGU6IGZ1bmN0aW9uKCkgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKCIjZGVtb3RpcCIpLmVtcHR5KCkuYXBwZW5kKCc8aW1nIGNsYXNzPSJwcm9ncmVzcyIgc3JjPSIuLi9tb2R1bGVzL1NjcmlwdERlcGxveS9pbWFnZXMvbG9hZGluZy5naWYiIGFsdD0iIi8+Jyk7DQogICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgfSk7DQogICAgICAgIH0NCg0KCQlmdW5jdGlvbiBkb1NvbWV0aGluZyhlKSB7DQoJCQkJdmFyIGxlZnRjbGljazsNCgkJCQlpZiAoIWUpIHZhciBlID0gd2luZG93LmV2ZW50Ow0KCQkJCWlmIChlLndoaWNoKSByaWdodGNsaWNrID0gKGUud2hpY2ggPT0gMyk7DQoJCQkJZWxzZSBpZiAoZS5idXR0b24pIHJpZ2h0Y2xpY2sgPSAoZS5idXR0b24gPT0gMik7DQoJCQkJYWxlcnQoJ1JpZ2h0Y2xpY2s6ICcgKyByaWdodGNsaWNrKTsgLy8gdHJ1ZSBvciBmYWxzZQ0KCQl9DQoNCg0KICAgICAgICBpZiAoJCgiI1NJQSIpLmxlbmd0aCA+IDApeyAgICAgIA0KDQogICAgICAgICAgICAgICAgJCgiI25hdiBhIikuY2xpY2soZnVuY3Rpb24oZSkgeyANCiAgICAgICAgICAgICAgICAvLyAgaWYoZS5zaGlmdEtleSkgeyANCiAgICAgICAgICAgICAgICAvLyAgICAvL1NoaWZ0LUNsaWNrIA0KICAgICAgICAgICAgICAgIC8vICB9IA0KICAgICAgICAgICAgICAgICAgaWYoIWUuY3RybEtleSYmIWUuc2hpZnRLZXkpIHsgDQogICAgICAgICAgICAgICAgICAgICAgICBhamF4aXQoJ3VubG9ja19zY3JpcHQnLFNJRCk7DQogICAgICAgICAgICAgICAgICAgICAgICAvL2FsZXJ0KCd1bmxvY2tpbmcnKTsNCiAgICAgICAgICAgICAgICAgIH0gDQogICAgICAgICAgICAgICAgLy8gIGlmKGUuYWx0S2V5KSB7IA0KICAgICAgICAgICAgICAgIC8vICAgIC8vQWx0K0NsaWNrIA0KICAgICAgICAgICAgICAgIC8vICB9IA0KICAgICAgICAgICAgICAgIH0pOyANCg0KICAgICAgICAgICAgICAgICQoJyNzY3JpcHROYW1lIGlucHV0Jykua2V5dXAoZnVuY3Rpb24oKSB7DQogICAgICAgICAgICAgICAgICAkKCcjc2NyaXB0TmFtZV9JUycpLnRleHQoJCgnI3NjcmlwdE5hbWUgaW5wdXQnKS52YWwoKSk7DQogICAgICAgICAgICAgICAgfSk7DQogICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgaWYgKCQoIiNtMV9zY3JpcHRUeXBlX2lucHV0MSIpLmlzKCc6Y2hlY2tlZCcpKSB7JCgiI01lZGlhVHlwZSIpLmNzcygiZGlzcGxheSIsIm5vbmUiKTskKCIjTWVkaWFUeXBlIikuY3NzKCJ2aXNpYmlsaXR5IiwiaGlkZGVuIik7fQ0KICAgICAgICAgICAgICAgICQoImlucHV0W25hbWVePSdtMV9zY3JpcHRUeXBlJ10iKS5jbGljayhmdW5jdGlvbigpeyAgICAgICAgICAgICAgICAgICAgIA0KCQkJCQlpZiAoJCgiI20xX3NjcmlwdFR5cGVfaW5wdXQyIikuaXMoJzpjaGVja2VkJykpIHsgDQoJCQkJCQkkKCIjTWVkaWFUeXBlIikuY3NzKCJkaXNwbGF5IiwiYmxvY2siKTskKCIjTWVkaWFUeXBlIikuY3NzKCJ2aXNpYmlsaXR5IiwidmlzaWJsZSIpOw0KCQkJCQkJJC5mbi5jb2xvcmJveC5yZXNpemUoKTsNCgkJCQkJCXN5bnRheF9pcz0nY3NzJzsNCgkJCQkJCWRpc2FibGVDb2RlTWlycm9yKCk7DQoJCQkJCQllZGl0QXJlYV9pbml0KCk7DQoJCQkJCX1lbHNlIGlmICgkKCIjbTFfc2NyaXB0VHlwZV9pbnB1dDEiKS5pcygnOmNoZWNrZWQnKSl7DQoJCQkJCQkkKCIjTWVkaWFUeXBlIikuY3NzKCJkaXNwbGF5Iiwibm9uZSIpOyQoIiNNZWRpYVR5cGUiKS5jc3MoInZpc2liaWxpdHkiLCJoaWRkZW4iKTsNCgkJCQkJCSQuZm4uY29sb3Jib3gucmVzaXplKCk7DQoJCQkJCQlzeW50YXhfaXM9J2pzJzsNCgkJCQkJCWRpc2FibGVDb2RlTWlycm9yKCk7DQoJCQkJCQllZGl0QXJlYV9pbml0KCk7DQoJCQkJCX0NCiAgICAgICAgICAgICAgICB9KTsNCiAgICAgICAgICAgICAgICANCg0KICAgICAgICAgICAgICAgIGlmICghJCgiLmNtc19jaGVja2JveFtuYW1lPW0xX1VzZVBhdGhPcHRpb25faW5wdXRdIikuaXMoJzpjaGVja2VkJykpIHskKCIjcGF0aE9wdGlvbiIpLmNzcygiZGlzcGxheSIsIm5vbmUiKTskKCIjcGF0aE9wdGlvbiIpLmNzcygidmlzaWJpbGl0eSIsImhpZGRlbiIpO30NCiAgICAgICAgICAgICAgICAkKCIuY21zX2NoZWNrYm94W25hbWU9bTFfVXNlUGF0aE9wdGlvbl9pbnB1dF0iKS5jbGljayhmdW5jdGlvbigpeyAgICAgICAgICAgICAgICAgICAgICAgDQoJCQkJCWlmICgkKCIuY21zX2NoZWNrYm94W25hbWU9bTFfVXNlUGF0aE9wdGlvbl9pbnB1dF0iKS5pcygnOmNoZWNrZWQnKSkgeyANCgkJCQkJCSQoIiNwYXRoT3B0aW9uIikuY3NzKCJkaXNwbGF5IiwiYmxvY2siKTskKCIjcGF0aE9wdGlvbiIpLmNzcygidmlzaWJpbGl0eSIsInZpc2libGUiKTsNCgkJCQkJCSQuZm4uY29sb3Jib3gucmVzaXplKCk7DQoJCQkJCX1lbHNlew0KCQkJCQkJJCgiI3BhdGhPcHRpb24iKS5jc3MoImRpc3BsYXkiLCJub25lIik7JCgiI3BhdGhPcHRpb24iKS5jc3MoInZpc2liaWxpdHkiLCJoaWRkZW4iKTsNCgkJCQkJCSQuZm4uY29sb3Jib3gucmVzaXplKCk7DQoJCQkJCX0NCiAgICAgICAgICAgICAgICB9KTsNCiAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICBpZiAoISQoIi5jbXNfY2hlY2tib3hbbmFtZT1tMV9yb290VVJMT3B0aW9uX2lucHV0XSIpLmlzKCc6Y2hlY2tlZCcpKSB7JCgiI3Jvb3RVUkxPcHRpb24iKS5jc3MoImRpc3BsYXkiLCJub25lIik7JCgiI3Jvb3RVUkxPcHRpb24iKS5jc3MoInZpc2liaWxpdHkiLCJoaWRkZW4iKTt9DQogICAgICAgICAgICAgICAgJCgiLmNtc19jaGVja2JveFtuYW1lPW0xX3Jvb3RVUkxPcHRpb25faW5wdXRdIikuY2xpY2soZnVuY3Rpb24oKXsgICAgICAgICAgICAgICAgICAgICAgIA0KCQkJCQlpZiAoJCgiLmNtc19jaGVja2JveFtuYW1lPW0xX3Jvb3RVUkxPcHRpb25faW5wdXRdIikuaXMoJzpjaGVja2VkJykpIHsgDQoJCQkJCQkkKCIjcm9vdFVSTE9wdGlvbiIpLmNzcygiZGlzcGxheSIsImJsb2NrIik7JCgiI3Jvb3RVUkxPcHRpb24iKS5jc3MoInZpc2liaWxpdHkiLCJ2aXNpYmxlIik7DQoJCQkJCQkkLmZuLmNvbG9yYm94LnJlc2l6ZSgpOw0KCQkJCQl9ZWxzZXsNCgkJCQkJCSQoIiNyb290VVJMT3B0aW9uIikuY3NzKCJkaXNwbGF5Iiwibm9uZSIpOyQoIiNyb290VVJMT3B0aW9uIikuY3NzKCJ2aXNpYmlsaXR5IiwiaGlkZGVuIik7DQoJCQkJCQkkLmZuLmNvbG9yYm94LnJlc2l6ZSgpOw0KCQkJCQl9DQogICAgICAgICAgICAgICAgfSk7DQogICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgJCgiI2Nsb3NlX29wdGlvbnMiKS5jbGljayhmdW5jdGlvbigpeyAgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkLmZuLmNvbG9yYm94LmNsb3NlKCk7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsNCiAgICAgICAgICAgICAgICB9KTsNCiAgICAgICAgICAgICAgICAkKCIjTm90ZV90cmlnIikuY29sb3Jib3goe3dpZHRoOiI1MDBweCIsDQoJCQkJCQkJCQkJIGh0bWw6ZnVuY3Rpb24oKXsNCgkJCQkJCQkJCQkJdGV4dD0kKCIjTk9URVMiKS52YWwoKTsNCgkJCQkJCQkJCQkJaWYodGV4dD09Jycpew0KCQkJCQkJCQkJCQkJCSB0ZXh0PSdObyBOZXcgTm90ZXMnOw0KCQkJCQkJCQkJCQl9DQoJCQkJCQkJCQkJCXJldHVybiAnPHRleHRhcmVhIGlkPSJwb3B1cE5PVEVTIj4nK3RleHQrJzwvdGV4dGFyZWE+JzsNCgkJCQkJCQkJCQkJfSwNCgkJCQkJCQkJCQkgIG9wYWNpdHk6MC4yNQ0KCQkJCQkJCQkgICB9KTsNCiAgICAgICAgICAgICAgICANCgkJCQkkKCcuQ29kZU1pcnJvci13cmFwcGluZyBpZnJhbWUnKS5hdHRyKCdpZCcsICdmcmFtZV9TSUEnKTsNCiAgICAgICAgICAgICAgICAkKCcjZnJhbWVfU0lBJykucmVhZHkoZnVuY3Rpb24oKSB7IA0KCQkJCQl2YXIgeD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZnJhbWVfU0lBIik7DQoJCQkJCXZhciB5PSh4LmNvbnRlbnRXaW5kb3cgfHwgeC5jb250ZW50RG9jdW1lbnQpOw0KCQkJCQkkKHkuZG9jdW1lbnQpLmJpbmQoJ2tleWRvd24nLCAnY3RybCtzJywgZnVuY3Rpb24oZXZ0KSB7DQoJCQkJCQlldnQuc3RvcFByb3BhZ2F0aW9uKCApOyAgIA0KCQkJCQkJZXZ0LnByZXZlbnREZWZhdWx0KCApOyANCgkJCQkJCWlmICgkKCJpbnB1dFtuYW1lJD0nYXBwbHknXSIpLmxlbmd0aCA+IDApew0KCQkJCQkJCWlmKCQoJyNjYm94TG9hZGVkQ29udGVudCcpLnRleHQoKSE9Jycpew0KCQkJCQkJCQkvL2FsZXJ0KCdwbGVhc2UgZmluaXNoIHRoaXMgdGFzayBiZWZvcmUgdHJ5aW5nIHRvIHNhdmUnKTsNCgkJCQkJCQkJcmV0dXJuIGZhbHNlOw0KCQkJCQkJCX1lbHNlew0KCQkJCQkJCQlpZighaW5wcm9jY2Vzcyl7DQoJCQkJCQkJCQl2YXIgVVNFUj0kKCdpbnB1dFtuYW1lJD0ic3BfIl0nKS52YWwoKTsNCgkJCQkJCQkJCWFqYXhTY3JpcHRTdWJtaXQoVVNFUik7DQoJCQkJCQkJCX0NCgkJCQkJCQkJcmV0dXJuIGZhbHNlOw0KCQkJCQkJCX0NCgkJCQkJCX0NCgkJCQkJfSk7DQogICAgICAgICAgICAgICAgfSk7ICAgICANCiAgICAgICAgICAgICAgICANCg0KICAgICAgICANCiAgICAgICAgICAgICAgICAkKCIjRV90cmlnIikuY29sb3Jib3goe3dpZHRoOiI1MDBweCIsDQoJCQkJCQkJCQkgaHRtbDpmdW5jdGlvbigpew0KCQkJCQkJCQkJCXRleHQ9JCgiI0Vycm9yQXJlYSIpLmh0bWwoKTsNCgkJCQkJCQkJCQlyZXR1cm4gJzxkaXYgaWQ9InBvcHVwRXJyb3JBcmVhIj4nK3RleHQrJzwvZGl2Pic7DQoJCQkJCQkJCQl9LA0KCQkJCQkJCQkJICBvcGFjaXR5OjAuMjUNCgkJCQkJCQkgICB9KTsgIA0KICAgICAgICAgICAgICAgICQoIiNXX3RyaWciKS5jb2xvcmJveCh7d2lkdGg6IjUwMHB4IiwNCgkJCQkJCQkJCSBodG1sOmZ1bmN0aW9uKCl7DQoJCQkJCQkJCQkJdGV4dD0kKCIjd2FybkFyZWEiKS5odG1sKCk7DQoJCQkJCQkJCQkJcmV0dXJuICc8ZGl2IGlkPSJwb3B1cHdhcm5BcmVhIj4nK3RleHQrJzwvZGl2Pic7DQoJCQkJCQkJCQl9LA0KCQkJCQkJCQkJICBvcGFjaXR5OjAuMjUNCgkJCQkJCQkgICB9KTsNCiAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAkKCIucG9wdXAuRVVSTFMiKS5jbGljayhmdW5jdGlvbihldmVudCkgew0KCQkJCQkJZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7ICAgDQoJCQkJCQlldmVudC5wcmV2ZW50RGVmYXVsdCgpOyANCgkJCQkJCWFzeW5jSVM9ZmFsc2U7DQoJCQkJCQlkYXRhPWFqYXhpdCgnY3NzX3VybF9kaXNzZWN0aW9uJyxTSUQpOw0KCQkJCQkJZGF0YT1hamF4aXQoJ2Nzc191cmxfZGlzc2VjdGlvbicsU0lEKTsNCgkJCQkJCWlmKGRhdGE9dHJ1ZSl7DQoJCQkJCQkJdGV4dD1hamF4QXJyYXlbJ2Nzc191cmxfZGlzc2VjdGlvbiddOw0KCQkJCQkJCSQoJyNsYW5kZXInKS5odG1sKCc8ZGl2IGNsYXNzPSJyZXBvcnRBcmVhIj4nK3RleHQrJzwvZGl2PicpOw0KCQkJCQkJCSQuZm4uY29sb3Jib3goe3dpZHRoOiI5MCUiLA0KCQkJCQkJCQkJCQloZWlnaHQ6IjcwJSIsDQoJCQkJCQkJCQkJCWlubGluZTp0cnVlLA0KCQkJCQkJCQkJCQlocmVmOicucmVwb3J0QXJlYScsDQoJCQkJCQkJCQkJCW9wZW46dHJ1ZSwNCgkJCQkJCQkJCQkJc2Nyb2xsaW5nOmZhbHNlLA0KCQkJCQkJCQkJCQlvcGFjaXR5OjAuMjUNCgkJCQkJCQkJCSAgIH0pOw0KCQkJCQkJfQ0KICAgICAgICAgICAgICAgIH0pOw0KICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICQoIi5wb3B1cC5SQ1NTIikuY2xpY2soZnVuY3Rpb24oZXZlbnQpIHsNCgkJCQkJCWV2ZW50LnN0b3BQcm9wYWdhdGlvbigpOyAgIA0KCQkJCQkJZXZlbnQucHJldmVudERlZmF1bHQoKTsgDQoJCQkJCQlhc3luY0lTPWZhbHNlOw0KCQkJCQkJZGF0YT1hamF4aXQoJ3JlbmRlcmVkX2Nzc19kaXNzZWN0aW9uJyxTSUQpOw0KCQkJCQkJZGF0YT1hamF4aXQoJ3JlbmRlcmVkX2Nzc19kaXNzZWN0aW9uJyxTSUQpOw0KCQkJCQkJaWYoZGF0YT10cnVlKXsNCgkJCQkJCQl0ZXh0PWFqYXhBcnJheVsncmVuZGVyZWRfY3NzX2Rpc3NlY3Rpb24nXTsNCgkJCQkJCQkkKCcjbGFuZGVyJykuaHRtbCgnPGRpdiBjbGFzcz0icmVwb3J0QXJlYSI+Jyt0ZXh0Kyc8L2Rpdj4nKTsNCgkJCQkJCQkkLmZuLmNvbG9yYm94KHt3aWR0aDoiOTAlIiwNCgkJCQkJCQkJCQkJaGVpZ2h0OiI3MCUiLA0KCQkJCQkJCQkJCQlpbmxpbmU6dHJ1ZSwNCgkJCQkJCQkJCQkJaHJlZjonLnJlcG9ydEFyZWEnLA0KCQkJCQkJCQkJCQlvcGVuOnRydWUsDQoJCQkJCQkJCQkJCXNjcm9sbGluZzpmYWxzZSwNCgkJCQkJCQkJCQkJb3BhY2l0eTowLjI1DQoJCQkJCQkJCQkgICB9KTsNCgkJCQkJCX0NCiAgICAgICAgICAgICAgICB9KTsNCg0KICAgICAgICAgICAgICAgICQoJy5nb0xpbmUnKS5saXZlKCdjbGljaycsZnVuY3Rpb24oZXZlbnQpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7IA0KICAgICAgICAgICAgICAgICAgICAgICAgbGluZT0kKHRoaXMpLmNoaWxkcmVuKCdzcGFuLmxpbmUnKS50ZXh0KCk7DQogICAgICAgICAgICAgICAgICAgICAgICBsaW5lPWxpbmUtNTsNCiAgICAgICAgICAgICAgICAgICAgICAgICQuZm4uY29sb3Jib3guY2xvc2UoKTsNCiAgICAgICAgICAgICAgICAgICAgICAgIC8vJCgnI2ZyYW1lX1NJQScpLmNvbnRlbnRzKCkuZmluZCgnI3Jlc3VsdCcpLnNjcm9sbFRvKCcjbGluZV8nK2xpbmUsIDgwMCk7IC8vKHt0b3A6bGluZSoyMSsncHgnfSwgODAwICApOw0KCQkJCQkJdmFyIGJveD0kKCcjQ01fbGluZU51bWJlcnMgLkNvZGVNaXJyb3ItbGluZS1udW1iZXJzIGRpdicpLmVxKGxpbmUpOw0KCQkJCQkJJC5zY3JvbGxUbyhib3gsIDgwMCk7DQogICAgICAgICAgICAgICAgfSk7ICAgICANCiAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAkKCcjZ290bycpLnN0b3AoKS5saXZlKCdrZXl1cCcsZnVuY3Rpb24oZXZlbnQpIHsNCgkJCQkJZXZlbnQucHJldmVudERlZmF1bHQoKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQoJCQkJCXN0b3BDb3VudCgpOw0KCQkJCQlpZiAoIXRpbWVyX2lzX29uKXsNCgkJCQkJCXRpbWVyX2lzX29uPTE7DQoJCQkJCQl0PXNldFRpbWVvdXQoZnVuY3Rpb24oKXsNCgkJCQkJCSAgdmFyIHRhcmdJcz0kKCcjZ290bycpLnZhbCgpOw0KCQkJCQkJICBpZiAoJCgnI0NNX2xpbmVOdW1iZXJzIC5Db2RlTWlycm9yLWxpbmUtbnVtYmVycyBkaXYnKS5lcSh0YXJnSXMpLmxlbmd0aCA+IDApew0KCQkJCQkJCXN0b3BDb3VudCgpOw0KCQkJCQkJCXZhciBib3g9JCgnI0NNX2xpbmVOdW1iZXJzIC5Db2RlTWlycm9yLWxpbmUtbnVtYmVycyBkaXYnKS5lcSh0YXJnSXMpOw0KCQkJCQkJCSQuc2Nyb2xsVG8oYm94LCA4MDApOw0KCQkJCQkJICB9ZWxzZXsNCgkJCQkJCQkkKCcjZ290bycpLmJsdXIoKTsNCgkJCQkJCQlhbGVydCAoJ0xpbmUgJyt0YXJnSXMrJyBkb2VzIG5vdCBleGlzdFxyXG5QbGVhc2UgdHJ5IGFnYWluLicpOw0KCQkJCQkJICB9DQoJCQkJCQl9LDUwMCk7DQoJCQkJCX0NCiAgICAgICAgICAgICAgICB9KTsNCiAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAkKCcjcG9wdXBOT1RFUycpLmxpdmUoJ2tleXVwJyxmdW5jdGlvbigpIHsNCiAgICAgICAgICAgICAgICAgICQoJyNOT1RFUycpLnZhbCgkKCcjcG9wdXBOT1RFUycpLnZhbCgpKTsNCiAgICAgICAgICAgICAgICB9KTsgICAgIA0KICAgICAgICANCiAgICAgICAgICAgICAgICAkKCIjb3Blbl9vcHRpb25zLCNzY3JpcHROYW1lX0lTLCNzY3JpcHRPUCIpLmNvbG9yYm94KHt3aWR0aDoiNTAwcHgiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5saW5lOnRydWUsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBocmVmOiIjc2NyaXB0T3B0aW9ucyIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzY3JvbGxpbmc6ZmFsc2UsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OjAuMjUNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTsNCiAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAkKCIjbTFfcmV2ZXJ0IikuYmluZCgnY2xpY2snLGZ1bmN0aW9uKCl7DQoJCQkJCWlmIChzYXZlZD09dHJ1ZSl7ICAgICAgIA0KCQkJCQkJIGFsZXJ0KCc8P3BocCBlY2hvICR0aGlzLT5MYW5nKCdyZWxvYWRfYWxlcnQnKTsgPz4nKTsNCgkJCQkJfQ0KICAgICAgICAgICAgICAgIH0pOw0KICAgICAgICAgICAgICAgIGlmICgkKCIjd2hpY2hGaWx0ZXIiKS5sZW5ndGggPiAwKXsNCgkJCQkJJCgiI3doaWNoRmlsdGVyIikudG9vbHRpcCh7DQoJCQkJCQkJdGlwOiIjZGVtb3RpcCIsDQoJCQkJCQkJbGF6eTp0cnVlLA0KCQkJCQkJCXByZWRlbGF5OjUwLA0KCQkJCQkJCW9uQmVmb3JlU2hvdzogZnVuY3Rpb24oKSB7IA0KCQkJCQkJCQkJJCgiI2RlbW90aXAiKS5odG1sKCc8aDE+WW91IGFyZSBmaWx0ZXJpbmc8L2gxPicrJCgiI2ZpbHRlclByb3AiKS52YWwoKSk7DQoJCQkJCQkJfSwgDQoJCQkJCQkJb25IaWRlOiBmdW5jdGlvbigpIHsNCgkJCQkJCQkJCSQoIiNkZW1vdGlwIikuZW1wdHkoKTsNCgkJCQkJCQl9DQogICAgICAgICAgICAgICAgICAgICB9KTsNCiAgICAgICAgICAgICAgICB9DQoJCQkJc3RvcENvdW50KCk7DQoJCQkJaWYgKCF0aW1lcl9pc19vbil7DQoJCQkJCXRpbWVyX2lzX29uPTE7DQoJCQkJCXQ9c2V0VGltZW91dChmdW5jdGlvbigpew0KCQkJCQkJbWFya2xpbmVOdW1iZXIoKTsNCgkJCQkJfSw1MDApOw0KCQkJCX0JCQkNCiAgICAgICAgfSAgICAgICANCn0NCmZ1bmN0aW9uIGRpc2FibGVDb2RlTWlycm9yKCkgeyANCgkJZWRpdG9yLnRvVGV4dEFyZWEoKTsgDQp9IA0KDQpmdW5jdGlvbiBlZGl0QXJlYV9pbml0KCl7DQoJICBpZihzeW50YXhfaXM9PSdqcycpew0KCQllZGl0b3IgPSBDb2RlTWlycm9yLmZyb21UZXh0QXJlYSgiU0lBIiwgew0KCQkJcGF0aDogIjw/cGhwIGVjaG8gJGRpciA/Pi9tb2R1bGVzL1NjcmlwdERlcGxveS9pbmNsdWRlcy9Db2RlTWlycm9yL2pzLyIsDQoJCQlzdHlsZXNoZWV0OiAiPD9waHAgZWNobyAkZGlyID8+L21vZHVsZXMvU2NyaXB0RGVwbG95L2luY2x1ZGVzL0NvZGVNaXJyb3IvY3NzL2pzY29sb3JzLmNzcyIsDQoJCQlwYXJzZXJmaWxlOiBbInRva2VuaXplamF2YXNjcmlwdC5qcyIsICJwYXJzZWphdmFzY3JpcHQuanMiXSwNCgkJCWxpbmVOdW1iZXJzOiB0cnVlLA0KCQkJaGVpZ2h0OidkeW5hbWljJywNCgkJCXRhYk1vZGU6InNoaWZ0IiwNCgkJCWF1dG9NYXRjaFBhcmVuczogdHJ1ZSwNCgkJCWluaXRDYWxsYmFjazogZnVuY3Rpb24oZWRpdG9yKXtpbml0KCk7bWFya2xpbmVOdW1iZXIoKTt9LA0KCQkJY3Vyc29yQWN0aXZpdHk6IGZ1bmN0aW9uKGVkaXRvcil7bWFya2xpbmVOdW1iZXIoKTt9LA0KCQkJb25DaGFuZ2U6IGZ1bmN0aW9uKGVkaXRvcil7bWFya2xpbmVOdW1iZXIoKTt9DQoJCX0pOw0KCSAgfWVsc2UgaWYoc3ludGF4X2lzPT0nY3NzJyl7DQoJCSAgZWRpdG9yID0gQ29kZU1pcnJvci5mcm9tVGV4dEFyZWEoJ1NJQScsIHsNCgkJCXBhdGg6ICI8P3BocCBlY2hvICRkaXIgPz4vbW9kdWxlcy9TY3JpcHREZXBsb3kvaW5jbHVkZXMvQ29kZU1pcnJvci9qcy8iLA0KCQkJc3R5bGVzaGVldDogIjw/cGhwIGVjaG8gJGRpciA/Pi9tb2R1bGVzL1NjcmlwdERlcGxveS9pbmNsdWRlcy9Db2RlTWlycm9yL2Nzcy9jc3Njb2xvcnMuY3NzIiwNCgkJCXBhcnNlcmZpbGU6ICJwYXJzZWNzcy5qcyIsDQoJCQloZWlnaHQ6J2R5bmFtaWMnLA0KCQkJbGluZU51bWJlcnM6dHJ1ZSwNCgkJCXRhYk1vZGU6InNoaWZ0IiwNCgkJCWF1dG9NYXRjaFBhcmVuczogdHJ1ZSwNCgkJCWN1cnNvckFjdGl2aXR5OiBmdW5jdGlvbihlZGl0b3Ipe21hcmtsaW5lTnVtYmVyKCk7fSwNCgkJCW9uQ2hhbmdlOiBmdW5jdGlvbihlZGl0b3Ipe21hcmtsaW5lTnVtYmVyKCk7fSwNCgkJCWluaXRDYWxsYmFjazogZnVuY3Rpb24oZWRpdG9yKXtpbml0KCk7bWFya2xpbmVOdW1iZXIoKTt9DQoJCSAgfSk7DQoJICB9ICANCgkJJChkb2N1bWVudCkucmVzaXplKG1hcmtsaW5lTnVtYmVyKCkpOw0KCQkkKCdib2R5Jykuc2Nyb2xsKG1hcmtsaW5lTnVtYmVyKCkpOw0KfSAgDQokKGRvY3VtZW50KS5yZWFkeShmdW5jdGlvbigpeyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgIGlmICgkKCIjU0lBIikubGVuZ3RoID4gMCYmdXNlRWRpdG9yKXsNCiAgICAgICAgICAgICAgICBlZGl0QXJlYV9pbml0KCk7DQogICAgICAgIH1lbHNlew0KICAgICAgICAgICAgICAgIGluaXQoKTsNCiAgICAgICAgfQ0KCQkkKGRvY3VtZW50KS5yZXNpemUobWFya2xpbmVOdW1iZXIoKSk7DQoJCSQoJ2JvZHknKS5zY3JvbGwobWFya2xpbmVOdW1iZXIoKSk7DQogICAgICAgIHZhciBVU0VSPSQoJ2lucHV0W25hbWUkPSJzcF8iXScpLnZhbCgpOw0KICAgICAgICAkKCdpbnB1dFtuYW1lJD0iYXBwbHkiXScpLmNsaWNrKGZ1bmN0aW9uKGV2ZW50KXsNCiAgICAgICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpOyANCiAgICAgICAgICAgICAgICBhamF4U2NyaXB0U3VibWl0KFVTRVIpOw0KICAgICAgICB9KTsgICAgIA0KICAgICAgICBpZihwYXJhbSgnbTFfc3RhdHVzJyk9PSduZXcnJiYkKCIjU0lBIikubGVuZ3RoID4gMCl7DQoJCQkkLmZuLmNvbG9yYm94KHt3aWR0aDoiNTAwcHgiLA0KCQkJCQkJICBpbmxpbmU6dHJ1ZSwNCgkJCQkJCSAgaHJlZjoiI3NjcmlwdE9wdGlvbnMiLA0KCQkJCQkJICBvcGVuOnRydWUsDQoJCQkJCQkgIHNjcm9sbGluZzpmYWxzZSwNCgkJCQkJCSAgb3BhY2l0eTowLjI1DQoJCQkJCQl9KTsNCiAgICAgICAgfQ0KICAgICAgICAkKGRvY3VtZW50KS5iaW5kKCdrZXlkb3duJywgJ2N0cmwrcycsIGZ1bmN0aW9uKGV2dCkgew0KICAgICAgICAgICAgICAgIGV2dC5zdG9wUHJvcGFnYXRpb24oICk7ICAgDQogICAgICAgICAgICAgICAgZXZ0LnByZXZlbnREZWZhdWx0KCApOyANCiAgICAgICAgICAgICAgICBpZiAoJCgiaW5wdXRbbmFtZSQ9J2FwcGx5J10iKS5sZW5ndGggPiAwKXsNCgkJCQkJaWYoJCgnI2Nib3hMb2FkZWRDb250ZW50JykudGV4dCgpIT0nJyl7DQoJCQkJCQkvL2FsZXJ0KCdwbGVhc2UgZmluaXNoIHRoaXMgdGFzayBiZWZvcmUgdHJ5aW5nIHRvIHNhdmUnKTsNCgkJCQkJCXJldHVybiBmYWxzZTsNCgkJCQkJfWVsc2V7DQoJCQkJCQlpZighaW5wcm9jY2Vzcyl7DQoJCQkJCQkJdmFyIFVTRVI9JCgnaW5wdXRbbmFtZSQ9InNwXyJdJykudmFsKCk7DQoJCQkJCQkJYWpheFNjcmlwdFN1Ym1pdChVU0VSKTsNCgkJCQkJCX0NCgkJCQkJCXJldHVybiBmYWxzZTsNCgkJCQkJfQ0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgfSk7DQp9KTsgICAgIA0KDQogICAgICAgICAgICAgICAgPC9zY3JpcHQ+IA0KICAgIA0KICAgICAgICB7L2xpdGVyYWx9DQogICAgICAgICAgICAgICAgPD9waHAgJGlucHV0ID0gb2JfZ2V0X2NvbnRlbnRzKCk7IG9iX2VuZF9jbGVhbigpOw0KICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgIHJldHVybiAkaW5wdXQ7DQogICAgICAgIH0gICAgICAgDQogICAgICAgIA0KICAgICAgICANCglmdW5jdGlvbiBidWlsZHRhYmxlSlMoJFRSKXsNCgkJLy8gU3RhcnQgb2Ygc2NyaXB0DQoJCW9iX3N0YXJ0KCk7ID8+DQp7bGl0ZXJhbH0NCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCiQoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uKCkgew0KICAgICQoInRhYmxlI1RTMSIpLnRhYmxlc29ydGVyKHt3aWR0aEZpeGVkOmZhbHNlLCB3aWRnZXRzOiBbJ3plYnJhJ119KS50YWJsZXNvcnRlclBhZ2VyKHtjb250YWluZXI6ICQoIiNwYWdlciIpLHNpemU6MTAsc2VwZXJhdG9yOiAiIG9mICIscG9zaXRpb25GaXhlZDogZmFsc2V9KTsgDQogICAgJCgidGFibGUjVFMyIikudGFibGVzb3J0ZXIoe3dpZHRoRml4ZWQ6ZmFsc2UsIHdpZGdldHM6IFsnemVicmEnXX0pLnRhYmxlc29ydGVyUGFnZXIoe2NvbnRhaW5lcjogJCgiI3BhZ2VyMiIpLHNpemU6NSxzZXBlcmF0b3I6ICIgb2YgIixwb3NpdGlvbkZpeGVkOiBmYWxzZX0pOyANCiAgICAkKCIjYXBwZW5kIikuY2xpY2soZnVuY3Rpb24oKSB7DQogICAgICAgICAkKCJ0YWJsZS50YWJsZXNvcnRlciB0Ym9keSIpLmFwcGVuZChhamF4aXQoJ3B1bGxMb2dzJywnMSwyMCxpdGVtX25hbWU9XCdTY3JpcHREZXBsb3lcJycpKTsNCiAgICAgICAgJCgidGFibGUudGFibGVzb3J0ZXIiKS50cmlnZ2VyKCJ1cGRhdGUiKTsNCiAgICAgICAgdmFyIHNvcnRpbmcgPSBbWzIsMV0sWzAsMF1dOw0KICAgICAgICAkKCJ0YWJsZS50YWJsZXNvcnRlciIpLnRyaWdnZXIoInNvcnRvbiIsW3NvcnRpbmddKTsNCiAgICAgICAgcmV0dXJuIGZhbHNlOw0KICAgIH0pOw0KICAgICQoIiN2ZXJzaW9uUGxhbmUgdHIiKS5jbGljayhmdW5jdGlvbigpIHsNCiAgICAgICAgJCgiI3ZlcnNpb25QbGFuZSB0ciIpLnJlbW92ZUNsYXNzKCdjdXJyZW50Jyk7DQogICAgICAgIHZhciBSaWQgPSAkKHRoaXMpLmF0dHIoJ2lkJyk7IA0KICAgICAgICBSaWQgPSBSaWQucmVwbGFjZSgiUiIsICcnKTsNCiAgICAgICAgdmFyIFNpZCA9ICQoJyNTaWQnKS5odG1sKCk7DQogICAgICAgICQoInRleHRhcmVhI2NTY3JpcHRQbGFuZSIpLmFkZENsYXNzKCdwcm9jZXNzaW5nJyk7DQogICAgICAgIFRoZURhdGE9YWpheGl0KCdHZXRUaGlzUmV2aXNpb24nLCcnK1NpZCsnLCcrUmlkKycnKTsNCiAgICAgICAgc2V0VGltZW91dChkb05leHQsNTAsdGhpcyk7DQogICAgfSk7DQp9KTsNCmZ1bmN0aW9uIGRvTmV4dChzZWxlY3Rvcil7DQogICAgICAgIGlmKFRoZURhdGE9PXVuZGVmaW5lZCl7c2V0VGltZW91dChkb05leHQsNTAsc2VsZWN0b3IpO3JldHVybiBmYWxzZTt9DQogICAgICAgICAgICAgICAgJChzZWxlY3RvcikuYWRkQ2xhc3MoJ2N1cnJlbnQnKTsNCiAgICAgICAgICAgICAgICAkKCJ0ZXh0YXJlYSNjU2NyaXB0UGxhbmUiKS5odG1sKCcnK1RoZURhdGErJycpOyANCiAgICAgICAgICAgICAgICAkKCJ0ZXh0YXJlYSNjU2NyaXB0UGxhbmUiKS5yZW1vdmVDbGFzcygncHJvY2Vzc2luZycpOw0KfSAgICAgIA0KPC9zY3JpcHQ+ey9saXRlcmFsfQ0KCQk8P3BocCAkaW5wdXQgPSBvYl9nZXRfY29udGVudHMoKTsgb2JfZW5kX2NsZWFuKCk7DQoNCg0KCQlyZXR1cm4gJGlucHV0Ow0KCX0NCn0NCg0KPz4=]]></data>
	</file>
	<file>
	  <filename>/lib/class.cmsms_http.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCi8qKg0KICogTW9kdWxlOiBTY3JpcHREZXBsb3kgLSBNaW5pZnkgYW5kIGRlcGxveW1lbnQgb2YgSlMgQ1NTIGFuZCBIVE1MDQogKiANCiAqIA0KICogQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykNCiAqIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnDQogKiBUaGUgbW9kdWxlJ3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvc2NyaXB0ZGVwbG95Lw0KICogDQogKiBAcGFja2FnZSBTY3JpcHREZXBsb3kNCiAqIEBhdXRob3IgamVyZW15QmFzcyA8amVyZW15QmFzc0BjYWJsZW9uZS5uZXQ+DQogKiBAY29weXJpZ2h0IEplcmVteSBCYXNzDQogKiBAbGljZW5zZSBodHRwOi8vd3d3LmdudS5vcmcvY29weWxlZnQvZ3BsLmh0bWwgRnJlZWx5IGF2YWlsYWJsZSB1bmRlciBHUEwNCiAqLyANCg0KLy9pZiAoIWlzc2V0KGNtc21zKCkpKSBleGl0Ow0KY2xhc3MgY21zbXNfaHR0cCBleHRlbmRzIFNjcmlwdERlcGxveXsNCg0KDQoJICBwdWJsaWMgZnVuY3Rpb24gX19jb25zdHJ1Y3QoKXsNCgkJcGFyZW50OjpfX2NvbnN0cnVjdCgpOw0KCQkkdGhpcy0+X2RhdGEgPSBhcnJheSgpOw0KCSAgfQ0KDQoJLyoqDQoJICogUGVyZm9ybSBhbiBIVFRQIHJlcXVlc3QuDQoJICoNCgkgKiBUaGlzIGlzIGEgZmxleGlibGUgYW5kIHBvd2VyZnVsIEhUVFAgY2xpZW50IGltcGxlbWVudGF0aW9uLiBDb3JyZWN0bHkgaGFuZGxlcw0KCSAqIEdFVCwgUE9TVCwgUFVUIG9yIGFueSBvdGhlciBIVFRQIHJlcXVlc3RzLiBIYW5kbGVzIHJlZGlyZWN0cy4NCgkgKg0KCSAqIEBwYXJhbSBzdHJpbmcgJHVybCBjb250YWluaW5nIGEgZnVsbHkgcXVhbGlmaWVkIFVSSS4NCgkgKiBAcGFyYW0gYXJyYXkgJGhlYWRlcnMgY29udGFpbmluZyBhbiBIVFRQIGhlYWRlciA9PiB2YWx1ZSBwYWlyLg0KCSAqIEBwYXJhbSBzdHJpbmcgJG1ldGhvZCBkZWZpbmluZyB0aGUgSFRUUCByZXF1ZXN0IHRvIHVzZS4NCgkgKiBAcGFyYW0gc3RyaW5nICRkYXRhIGNvbnRhaW5pbmcgZGF0YSB0byBpbmNsdWRlIGluIHRoZSByZXF1ZXN0Lg0KCSAqIEBwYXJhbSBpbnRlZ2VyICRyZXRyeSByZXByZXNlbnRpbmcgaG93IG1hbnkgdGltZXMgdG8gcmV0cnkgdGhlIHJlcXVlc3QgaW4gY2FzZSBvZiBhIHJlZGlyZWN0Lg0KCSAqICAgDQoJICogQHJldHVybiBvYmplY3QgY29udGFpbmluZyB0aGUgSFRUUCByZXF1ZXN0IGhlYWRlcnMsIHJlc3BvbnNlIGNvZGUsIGhlYWRlcnMsDQoJICogICBkYXRhIGFuZCByZWRpcmVjdCBzdGF0dXMuDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGNtc21zX2h0dHBfcmVxdWVzdCgkdXJsLCAkaGVhZGVycyA9IGFycmF5KCksICRtZXRob2QgPSAnR0VUJywgJGRhdGEgPSBOVUxMLCAkcmV0cnkgPSAzKSB7DQoJICBnbG9iYWwgJGRiX3ByZWZpeDsNCgkNCgkgICRyZXN1bHQgPSBuZXcgc3RkQ2xhc3MoKTsNCgkNCgkgIC8vIFBhcnNlIHRoZSBVUkwgYW5kIG1ha2Ugc3VyZSB3ZSBjYW4gaGFuZGxlIHRoZSBzY2hlbWEuDQoJICAkdXJpID0gcGFyc2VfdXJsKCR1cmwpOw0KCQ0KCSAgaWYgKCR1cmkgPT0gRkFMU0UpIHsNCgkJJHJlc3VsdC0+ZXJyb3IgPSAndW5hYmxlIHRvIHBhcnNlIFVSTCc7DQoJCSRyZXN1bHQtPmNvZGUgPSAtMTAwMTsNCgkJcmV0dXJuICRyZXN1bHQ7DQoJICB9DQoJDQoJICBpZiAoIWlzc2V0KCR1cmlbJ3NjaGVtZSddKSkgew0KCQkkcmVzdWx0LT5lcnJvciA9ICdtaXNzaW5nIHNjaGVtYSc7DQoJCSRyZXN1bHQtPmNvZGUgPSAtMTAwMjsNCgkJcmV0dXJuICRyZXN1bHQ7DQoJICB9DQoJDQoJICBzd2l0Y2ggKCR1cmlbJ3NjaGVtZSddKSB7DQoJCWNhc2UgJ2h0dHAnOg0KCQkgICRwb3J0ID0gaXNzZXQoJHVyaVsncG9ydCddKSA/ICR1cmlbJ3BvcnQnXSA6IDgwOw0KCQkgICRob3N0ID0gJHVyaVsnaG9zdCddIC4gKCRwb3J0ICE9IDgwID8gJzonLiAkcG9ydCA6ICcnKTsNCgkJICAkZnAgPSBAZnNvY2tvcGVuKCR1cmlbJ2hvc3QnXSwgJHBvcnQsICRlcnJubywgJGVycnN0ciwgMTUpOw0KCQkgIGJyZWFrOw0KCQljYXNlICdodHRwcyc6DQoJCSAgLy8gTm90ZTogT25seSB3b3JrcyBmb3IgUEhQIDQuMyBjb21waWxlZCB3aXRoIE9wZW5TU0wuDQoJCSAgJHBvcnQgPSBpc3NldCgkdXJpWydwb3J0J10pID8gJHVyaVsncG9ydCddIDogNDQzOw0KCQkgICRob3N0ID0gJHVyaVsnaG9zdCddIC4gKCRwb3J0ICE9IDQ0MyA/ICc6Jy4gJHBvcnQgOiAnJyk7DQoJCSAgJGZwID0gQGZzb2Nrb3Blbignc3NsOi8vJy4gJHVyaVsnaG9zdCddLCAkcG9ydCwgJGVycm5vLCAkZXJyc3RyLCAyMCk7DQoJCSAgYnJlYWs7DQoJCWRlZmF1bHQ6DQoJCSAgJHJlc3VsdC0+ZXJyb3IgPSAnaW52YWxpZCBzY2hlbWEgJy4gJHVyaVsnc2NoZW1lJ107DQoJCSAgJHJlc3VsdC0+Y29kZSA9IC0xMDAzOw0KCQkgIHJldHVybiAkcmVzdWx0Ow0KCSAgfQ0KCQ0KCSAgLy8gTWFrZSBzdXJlIHRoZSBzb2NrZXQgb3BlbmVkIHByb3Blcmx5Lg0KCSAgaWYgKCEkZnApIHsNCgkJLy8gV2hlbiBhIG5ldHdvcmsgZXJyb3Igb2NjdXJzLCB3ZSB1c2UgYSBuZWdhdGl2ZSBudW1iZXIgc28gaXQgZG9lcyBub3QNCgkJLy8gY2xhc2ggd2l0aCB0aGUgSFRUUCBzdGF0dXMgY29kZXMuDQoJCSRyZXN1bHQtPmNvZGUgPSAtJGVycm5vOw0KCQkkcmVzdWx0LT5lcnJvciA9IHRyaW0oJGVycnN0cik7DQoJDQoJCS8vIE1hcmsgdGhhdCB0aGlzIHJlcXVlc3QgZmFpbGVkLiBUaGlzIHdpbGwgdHJpZ2dlciBhIGNoZWNrIG9mIHRoZSB3ZWINCgkJLy8gc2VydmVyJ3MgYWJpbGl0eSB0byBtYWtlIG91dGdvaW5nIEhUVFAgcmVxdWVzdHMgdGhlIG5leHQgdGltZSB0aGF0DQoJCS8vIHJlcXVpcmVtZW50cyBjaGVja2luZyBpcyBwZXJmb3JtZWQuDQoJCS8vIEBzZWUgc3lzdGVtX3JlcXVpcmVtZW50cygpDQoJCS8vdmFyaWFibGVfc2V0KCdDTVNNU19odHRwX3JlcXVlc3RfZmFpbHMnLCBUUlVFKTsNCgkNCgkJcmV0dXJuICRyZXN1bHQ7DQoJICB9DQoJDQoJICAvLyBDb25zdHJ1Y3QgdGhlIHBhdGggdG8gYWN0IG9uLg0KCSAgJHBhdGggPSBpc3NldCgkdXJpWydwYXRoJ10pID8gJHVyaVsncGF0aCddIDogJy8nOw0KCSAgaWYgKGlzc2V0KCR1cmlbJ3F1ZXJ5J10pKSB7DQoJCSRwYXRoIC49ICc/Jy4gJHVyaVsncXVlcnknXTsNCgkgIH0NCgkNCgkgIC8vIENyZWF0ZSBIVFRQIHJlcXVlc3QuDQoJICAkZGVmYXVsdHMgPSBhcnJheSgNCgkJLy8gUkZDIDI2MTY6ICJub24tc3RhbmRhcmQgcG9ydHMgTVVTVCwgZGVmYXVsdCBwb3J0cyBNQVkgYmUgaW5jbHVkZWQiLg0KCQkvLyBXZSBkb24ndCBhZGQgdGhlIHBvcnQgdG8gcHJldmVudCBmcm9tIGJyZWFraW5nIHJld3JpdGUgcnVsZXMgY2hlY2tpbmcgdGhlDQoJCS8vIGhvc3QgdGhhdCBkbyBub3QgdGFrZSBpbnRvIGFjY291bnQgdGhlIHBvcnQgbnVtYmVyLg0KCQknSG9zdCcgPT4gIkhvc3Q6ICRob3N0IiwNCgkJJ1VzZXItQWdlbnQnID0+ICdVc2VyLUFnZW50OiBDTVNNUyAoK2h0dHA6Ly9jbXNtYWRlc2ltcGxlLm9yZy8pJywNCgkgICk7DQoJDQoJICAvLyBPbmx5IGFkZCBDb250ZW50LUxlbmd0aCBpZiB3ZSBhY3R1YWxseSBoYXZlIGFueSBjb250ZW50IG9yIGlmIGl0IGlzIGEgUE9TVA0KCSAgLy8gb3IgUFVUIHJlcXVlc3QuIFNvbWUgbm9uLXN0YW5kYXJkIHNlcnZlcnMgZ2V0IGNvbmZ1c2VkIGJ5IENvbnRlbnQtTGVuZ3RoIGluDQoJICAvLyBhdCBsZWFzdCBIRUFEL0dFVCByZXF1ZXN0cywgYW5kIFNxdWlkIGFsd2F5cyByZXF1aXJlcyBDb250ZW50LUxlbmd0aCBpbg0KCSAgLy8gUE9TVC9QVVQgcmVxdWVzdHMuDQoJICAkY29udGVudF9sZW5ndGggPSBzdHJsZW4oJGRhdGEpOw0KCSAgaWYgKCRjb250ZW50X2xlbmd0aCA+IDAgfHwgJG1ldGhvZCA9PSAnUE9TVCcgfHwgJG1ldGhvZCA9PSAnUFVUJykgew0KCQkkZGVmYXVsdHNbJ0NvbnRlbnQtTGVuZ3RoJ10gPSAnQ29udGVudC1MZW5ndGg6ICcuICRjb250ZW50X2xlbmd0aDsNCgkgIH0NCgkNCgkgIC8vIElmIHRoZSBzZXJ2ZXIgdXJsIGhhcyBhIHVzZXIgdGhlbiBhdHRlbXB0IHRvIHVzZSBiYXNpYyBhdXRoZW50aWNhdGlvbg0KCSAgaWYgKGlzc2V0KCR1cmlbJ3VzZXInXSkpIHsNCgkJJGRlZmF1bHRzWydBdXRob3JpemF0aW9uJ10gPSAnQXV0aG9yaXphdGlvbjogQmFzaWMgJy4gYmFzZTY0X2VuY29kZSgkdXJpWyd1c2VyJ10gLiAoIWVtcHR5KCR1cmlbJ3Bhc3MnXSkgPyAiOiIuICR1cmlbJ3Bhc3MnXSA6ICcnKSk7DQoJICB9DQoJDQoJICAvLyBJZiB0aGUgZGF0YWJhc2UgcHJlZml4IGlzIGJlaW5nIHVzZWQgYnkgU2ltcGxlVGVzdCB0byBydW4gdGhlIHRlc3RzIGluIGEgY29waWVkDQoJICAvLyBkYXRhYmFzZSB0aGVuIHNldCB0aGUgdXNlci1hZ2VudCBoZWFkZXIgdG8gdGhlIGRhdGFiYXNlIHByZWZpeCBzbyB0aGF0IGFueQ0KCSAgLy8gY2FsbHMgdG8gb3RoZXIgRHJ1cGFsIHBhZ2VzIHdpbGwgcnVuIHRoZSBTaW1wbGVUZXN0IHByZWZpeGVkIGRhdGFiYXNlLiBUaGUNCgkgIC8vIHVzZXItYWdlbnQgaXMgdXNlZCB0byBlbnN1cmUgdGhhdCBtdWx0aXBsZSB0ZXN0aW5nIHNlc3Npb25zIHJ1bm5pbmcgYXQgdGhlDQoJICAvLyBzYW1lIHRpbWUgd29uJ3QgaW50ZXJmZXJlIHdpdGggZWFjaCBvdGhlciBhcyB0aGV5IHdvdWxkIGlmIHRoZSBkYXRhYmFzZQ0KCSAgLy8gcHJlZml4IHdlcmUgc3RvcmVkIHN0YXRpY2FsbHkgaW4gYSBmaWxlIG9yIGRhdGFiYXNlIHZhcmlhYmxlLg0KCSAgaWYgKGlzX3N0cmluZygkZGJfcHJlZml4KSAmJiBwcmVnX21hdGNoKCIvXnNpbXBsZXRlc3RcZCskLyIsICRkYl9wcmVmaXgsICRtYXRjaGVzKSkgew0KCQkkZGVmYXVsdHNbJ1VzZXItQWdlbnQnXSA9ICdVc2VyLUFnZW50OiAnIC4gJG1hdGNoZXNbMF07DQoJICB9DQoJDQoJICBmb3JlYWNoICgkaGVhZGVycyBhcyAkaGVhZGVyID0+ICR2YWx1ZSkgew0KCQkkZGVmYXVsdHNbJGhlYWRlcl0gPSAkaGVhZGVyIC4nOiAnLiAkdmFsdWU7DQoJICB9DQoJDQoJICAkcmVxdWVzdCA9ICRtZXRob2QgLicgJy4gJHBhdGggLiIgSFRUUC8xLjBcclxuIjsNCgkgICRyZXF1ZXN0IC49IGltcGxvZGUoIlxyXG4iLCAkZGVmYXVsdHMpOw0KCSAgJHJlcXVlc3QgLj0gIlxyXG5cclxuIjsNCgkgICRyZXF1ZXN0IC49ICRkYXRhOw0KCQ0KCSAgJHJlc3VsdC0+cmVxdWVzdCA9ICRyZXF1ZXN0Ow0KCQ0KCSAgZndyaXRlKCRmcCwgJHJlcXVlc3QpOw0KCQ0KCSAgLy8gRmV0Y2ggcmVzcG9uc2UuDQoJICAkcmVzcG9uc2UgPSAnJzsNCgkgIHdoaWxlICghZmVvZigkZnApICYmICRjaHVuayA9IGZyZWFkKCRmcCwgMTAyNCkpIHsNCgkJJHJlc3BvbnNlIC49ICRjaHVuazsNCgkgIH0NCgkgIGZjbG9zZSgkZnApOw0KCQ0KCSAgLy8gUGFyc2UgcmVzcG9uc2UuDQoJICBsaXN0KCRzcGxpdCwgJHJlc3VsdC0+ZGF0YSkgPSBleHBsb2RlKCJcclxuXHJcbiIsICRyZXNwb25zZSwgMik7DQoJICAkc3BsaXQgPSBwcmVnX3NwbGl0KCIvXHJcbnxcbnxcci8iLCAkc3BsaXQpOw0KCQ0KCSAgbGlzdCgkcHJvdG9jb2wsICRjb2RlLCAkdGV4dCkgPSBleHBsb2RlKCcgJywgdHJpbShhcnJheV9zaGlmdCgkc3BsaXQpKSwgMyk7DQoJICAkcmVzdWx0LT5oZWFkZXJzID0gYXJyYXkoKTsNCgkNCgkgIC8vIFBhcnNlIGhlYWRlcnMuDQoJICB3aGlsZSAoJGxpbmUgPSB0cmltKGFycmF5X3NoaWZ0KCRzcGxpdCkpKSB7DQoJCWxpc3QoJGhlYWRlciwgJHZhbHVlKSA9IGV4cGxvZGUoJzonLCAkbGluZSwgMik7DQoJCWlmIChpc3NldCgkcmVzdWx0LT5oZWFkZXJzWyRoZWFkZXJdKSAmJiAkaGVhZGVyID09ICdTZXQtQ29va2llJykgew0KCQkgIC8vIFJGQyAyMTA5OiB0aGUgU2V0LUNvb2tpZSByZXNwb25zZSBoZWFkZXIgY29tcHJpc2VzIHRoZSB0b2tlbiBTZXQtDQoJCSAgLy8gQ29va2llOiwgZm9sbG93ZWQgYnkgYSBjb21tYS1zZXBhcmF0ZWQgbGlzdCBvZiBvbmUgb3IgbW9yZSBjb29raWVzLg0KCQkgICRyZXN1bHQtPmhlYWRlcnNbJGhlYWRlcl0gLj0gJywnLiB0cmltKCR2YWx1ZSk7DQoJCX0NCgkJZWxzZSB7DQoJCSAgJHJlc3VsdC0+aGVhZGVyc1skaGVhZGVyXSA9IHRyaW0oJHZhbHVlKTsNCgkJfQ0KCSAgfQ0KCQ0KCSAgJHJlc3BvbnNlcyA9IGFycmF5KA0KCQkxMDAgPT4gJ0NvbnRpbnVlJywgMTAxID0+ICdTd2l0Y2hpbmcgUHJvdG9jb2xzJywNCgkJMjAwID0+ICdPSycsIDIwMSA9PiAnQ3JlYXRlZCcsIDIwMiA9PiAnQWNjZXB0ZWQnLCAyMDMgPT4gJ05vbi1BdXRob3JpdGF0aXZlIEluZm9ybWF0aW9uJywgMjA0ID0+ICdObyBDb250ZW50JywgMjA1ID0+ICdSZXNldCBDb250ZW50JywgMjA2ID0+ICdQYXJ0aWFsIENvbnRlbnQnLA0KCQkzMDAgPT4gJ011bHRpcGxlIENob2ljZXMnLCAzMDEgPT4gJ01vdmVkIFBlcm1hbmVudGx5JywgMzAyID0+ICdGb3VuZCcsIDMwMyA9PiAnU2VlIE90aGVyJywgMzA0ID0+ICdOb3QgTW9kaWZpZWQnLCAzMDUgPT4gJ1VzZSBQcm94eScsIDMwNyA9PiAnVGVtcG9yYXJ5IFJlZGlyZWN0JywNCgkJNDAwID0+ICdCYWQgUmVxdWVzdCcsIDQwMSA9PiAnVW5hdXRob3JpemVkJywgNDAyID0+ICdQYXltZW50IFJlcXVpcmVkJywgNDAzID0+ICdGb3JiaWRkZW4nLCA0MDQgPT4gJ05vdCBGb3VuZCcsIDQwNSA9PiAnTWV0aG9kIE5vdCBBbGxvd2VkJywgNDA2ID0+ICdOb3QgQWNjZXB0YWJsZScsIDQwNyA9PiAnUHJveHkgQXV0aGVudGljYXRpb24gUmVxdWlyZWQnLCA0MDggPT4gJ1JlcXVlc3QgVGltZS1vdXQnLCA0MDkgPT4gJ0NvbmZsaWN0JywgNDEwID0+ICdHb25lJywgNDExID0+ICdMZW5ndGggUmVxdWlyZWQnLCA0MTIgPT4gJ1ByZWNvbmRpdGlvbiBGYWlsZWQnLCA0MTMgPT4gJ1JlcXVlc3QgRW50aXR5IFRvbyBMYXJnZScsIDQxNCA9PiAnUmVxdWVzdC1VUkkgVG9vIExhcmdlJywgNDE1ID0+ICdVbnN1cHBvcnRlZCBNZWRpYSBUeXBlJywgNDE2ID0+ICdSZXF1ZXN0ZWQgcmFuZ2Ugbm90IHNhdGlzZmlhYmxlJywgNDE3ID0+ICdFeHBlY3RhdGlvbiBGYWlsZWQnLA0KCQk1MDAgPT4gJ0ludGVybmFsIFNlcnZlciBFcnJvcicsIDUwMSA9PiAnTm90IEltcGxlbWVudGVkJywgNTAyID0+ICdCYWQgR2F0ZXdheScsIDUwMyA9PiAnU2VydmljZSBVbmF2YWlsYWJsZScsIDUwNCA9PiAnR2F0ZXdheSBUaW1lLW91dCcsIDUwNSA9PiAnSFRUUCBWZXJzaW9uIG5vdCBzdXBwb3J0ZWQnDQoJICApOw0KCSAgLy8gUkZDIDI2MTYgc3RhdGVzIHRoYXQgYWxsIHVua25vd24gSFRUUCBjb2RlcyBtdXN0IGJlIHRyZWF0ZWQgdGhlIHNhbWUgYXMgdGhlDQoJICAvLyBiYXNlIGNvZGUgaW4gdGhlaXIgY2xhc3MuDQoJICBpZiAoIWlzc2V0KCRyZXNwb25zZXNbJGNvZGVdKSkgew0KCQkkY29kZSA9IGZsb29yKCRjb2RlIC8gMTAwKSAqIDEwMDsNCgkgIH0NCgkNCgkgIHN3aXRjaCAoJGNvZGUpIHsNCgkJY2FzZSAyMDA6IC8vIE9LDQoJCWNhc2UgMzA0OiAvLyBOb3QgbW9kaWZpZWQNCgkJICBicmVhazsNCgkJY2FzZSAzMDE6IC8vIE1vdmVkIHBlcm1hbmVudGx5DQoJCWNhc2UgMzAyOiAvLyBNb3ZlZCB0ZW1wb3JhcmlseQ0KCQljYXNlIDMwNzogLy8gTW92ZWQgdGVtcG9yYXJpbHkNCgkJICAkbG9jYXRpb24gPSAkcmVzdWx0LT5oZWFkZXJzWydMb2NhdGlvbiddOw0KCQ0KCQkgIGlmICgkcmV0cnkpIHsNCgkJCSRyZXN1bHQgPSBjbXNtc19odHRwX3JlcXVlc3QoJHJlc3VsdC0+aGVhZGVyc1snTG9jYXRpb24nXSwgJGhlYWRlcnMsICRtZXRob2QsICRkYXRhLCAtLSRyZXRyeSk7DQoJCQkkcmVzdWx0LT5yZWRpcmVjdF9jb2RlID0gJHJlc3VsdC0+Y29kZTsNCgkJICB9DQoJCSAgJHJlc3VsdC0+cmVkaXJlY3RfdXJsID0gJGxvY2F0aW9uOw0KCQ0KCQkgIGJyZWFrOw0KCQlkZWZhdWx0Og0KCQkgICRyZXN1bHQtPmVycm9yID0gJHRleHQ7DQoJICB9DQoJDQoJICAkcmVzdWx0LT5jb2RlID0gJGNvZGU7DQoJICByZXR1cm4gJHJlc3VsdDsNCgl9DQoJLyoqDQoJICogQH0gRW5kIG9mICJIVFRQIGhhbmRsaW5nIi4NCgkgKi8NCglwdWJsaWMgZnVuY3Rpb24gUmVhbFVSTCgpew0KCQkNCgkJJHVybEJBU0UgPSAiaHR0cDovLyIuJF9TRVJWRVJbJ0hUVFBfSE9TVCddLiRfU0VSVkVSWydTQ1JJUFRfTkFNRSddOw0KCQlpZiAoIWVtcHR5KCRfU0VSVkVSWyJRVUVSWV9TVFJJTkciXSkpDQoJCSR1cmxCQVNFIC49ICI/Ii4kX1NFUlZFUlsnUVVFUllfU1RSSU5HJ107DQoJCWlmIChpc3NldChjbXNtcygpLT5jb25maWdbJ2Fzc3VtZV9tb2RfcmV3cml0ZSddKSAmJiAoY21zbXMoKS0+Y29uZmlnWydhc3N1bWVfbW9kX3Jld3JpdGUnXT09dHJ1ZSkgfHwgKGlzc2V0KGNtc21zKCktPmNvbmZpZ1sndXJsX3Jld3JpdGluZyddKSYmIGNtc21zKCktPmNvbmZpZ1sndXJsX3Jld3JpdGluZyddPT0nbW9kX3Jld3JpdGUnKSl7DQoJCQkkdXJscyA9IHN0cl9yZXBsYWNlKCJpbmRleC5waHA/cGFnZT0iLCAiIiwgJHVybEJBU0UpOw0KCQkJJHVybHMgPSBzdHJfcmVwbGFjZSgiaW5kZXgucGhwIiwgIiIsICR1cmxzKTsNCgkJfWVsc2V7DQoJCQkkdXJscyA9ICR1cmxCQVNFOw0KCQl9DQoJCXJldHVybiAkdXJsczsNCgl9DQoNCg0KDQoJIA0KDQoJcHVibGljIGZ1bmN0aW9uIG15UmVkaXJlY3RUb1RhYiggJGlkLCAkdGFiLCAkcGFyYW1zID0gJycgKXsNCgkJJHBhcm1zID0gYXJyYXkoKTsNCgkJaWYoaXNfYXJyYXkoJHBhcmFtcykpew0KCQkJJHBhcm1zID0gJHBhcmFtczsNCgkJfQ0KCQkkcGFybXMgPSBhcnJheSgnYWN0aXZlX3RhYicgPT4gJHRhYiApOw0KCQlzZWxmOjpteVJlZGlyZWN0KCAkaWQsICdkZWZhdWx0YWRtaW4nLCAkcGFybXMgKTsNCgl9DQoNCglwdWJsaWMgZnVuY3Rpb24gbXlSZWRpcmVjdCggJGlkLCAkYWN0aW9uLCAkcGFyYW1zID0gJycgKXsNCgkJdW5zZXQoICRwYXJhbXNbJ2FjdGlvbiddICk7DQoJCSR0aGlzLT5SZWRpcmVjdCggJGlkLCAkYWN0aW9uLCAnJywgJHBhcmFtcyApOw0KCX0JDQp9]]></data>
	</file>
	<file>
	  <filename>/lib/class.scriptProcessing.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCi8qKg0KICogTW9kdWxlOiBTY3JpcHREZXBsb3kgLSBNaW5pZnkgYW5kIGRlcGxveW1lbnQgb2YgSlMgQ1NTIGFuZCBIVE1MDQogKiANCiAqIA0KICogQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykNCiAqIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnDQogKiBUaGUgbW9kdWxlJ3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvc2NyaXB0ZGVwbG95Lw0KICogDQogKiBAcGFja2FnZSBTY3JpcHREZXBsb3kNCiAqIEBhdXRob3IgamVyZW15QmFzcyA8amVyZW15QmFzc0BjYWJsZW9uZS5uZXQ+DQogKiBAY29weXJpZ2h0IEplcmVteSBCYXNzDQogKiBAbGljZW5zZSBodHRwOi8vd3d3LmdudS5vcmcvY29weWxlZnQvZ3BsLmh0bWwgRnJlZWx5IGF2YWlsYWJsZSB1bmRlciBHUEwNCiAqLyANCg0KLy9pZiAoIWlzc2V0KGNtc21zKCkpKSBleGl0Ow0KY2xhc3Mgc2NyaXB0UHJvY2Vzc2luZ3sNCg0KDQoJICBwdWJsaWMgZnVuY3Rpb24gX19jb25zdHJ1Y3QoKXsNCgkgIH0NCg0KCS8qKg0KCSogVGFrZSBzaWdubGUgc2NyaXB0cyBhbmQgam9pbiwgc21hcnR5IHByb2Nlc3MsIGFuZC9vciBtaW5pZnkuDQoJKg0KCSogQHRvZG8gUHVsbCBvdXQgdG8gYSBwcm9jZXNzaW5nIGNsYXNzDQoJKiBAcGFyYW0gaW50ZWdlciAkSUQgLg0KCSogQHBhcmFtIHN0cmluZyAkZ3JvdXBlZCAuDQoJKiBAcGFyYW0gYm9vbGVhbiAkU21hcnR5IC4NCgkqIEBwYXJhbSBib29sZWFuICRNaW5pZnkgLg0KCSogQHBhcmFtIHN0cmluZyAkZXh0IC4NCgkqIEBwYXJhbSBib29sZWFuICR2YWxfbWV0aCAuDQoJKiBAcmV0dXJuIHN0cmluZyB0aGlzIGlzIHRoZSBmdWxseSBwcm9jZXNzZWQgc2NyaXB0DQoJKi8NCglwdWJsaWMgZnVuY3Rpb24gUHJvY2Nlc3NTRCgkSUQsJGdyb3VwZWQsJFNtYXJ0eT10cnVlLCRNaW5pZnk9ZmFsc2UsJGV4dD0nJywkdmFsX21ldGg9ZmFsc2UsJENNU21vZHM9Jycpew0KCQkNCgkJJGNvbmZpZyA9IGNtc21zKCktPkdldENvbmZpZygpOyANCgkJJGNvZGVUb0ZpbGU9Jyc7DQoJCSRjb2RlPScnOw0KCQkvKg0KCQkgKiBAdG9kbyByZW1vdmUgdGhlIHZlcnNpb24gY2hlY2sgDQoJCSAqIA0KCQkqLw0KCQlpZih2ZXJzaW9uX2NvbXBhcmUoQ01TX1ZFUlNJT04sJzEuOS1iZXRhMScpID49IDAgKXsNCgkJCSRtb2Q9Y21zX3V0aWxzOjpnZXRfbW9kdWxlKCdTY3JpcHREZXBsb3knKTsNCgkJfWVsc2V7DQoJCQlnbG9iYWwgJGdDbXM7DQoJCQkkbW9kPSRnQ21zLT5tb2R1bGVzWydTY3JpcHREZXBsb3knXVsnb2JqZWN0J107DQoJCX0NCgkJJHNtYXJ0eU9uPSRtb2QtPkdldFByZWZlcmVuY2UoJ3NtYXJ0eU9uJywnMCcpOw0KCQkkZmlsZVRpbWVfY3NzX3VybHM9JG1vZC0+R2V0UHJlZmVyZW5jZSgnZmlsZVRpbWVfY3NzX3VybHMnLCcwJyk7DQoJCSRQcm9jY2VzcyA9IG5ldyBzY3JpcHRQcm9jZXNzaW5nKCk7DQoJCWlmKCEkU21hcnR5KXskc21hcnR5T249MDt9DQoJCWlmKCRncm91cGVkPT0ic2NyaXB0SUQifHwkZ3JvdXBlZD09InNpbmdsZSIpew0KCQkJQGV4dHJhY3QoJG1vZC0+Z2V0U2NyaXB0RnVsbCgkSUQpKTsNCgkJCSRNaW5pZnk9JG1vZC0+R2V0UHJlZmVyZW5jZSgkSUQuJy1NaW5pZnktU0QnLCRNaW5pZnkpOw0KCQkJaWYoJHZhbF9tZXRoPT10cnVlKXskTWluaWZ5PWZhbHNlO30NCgkJCWlmKCRleHQ9PSJodG1sIil7DQoJCQkJJFNjcmlwdElzPSRQcm9jY2Vzcy0+c21hcnR5T24oJFNjcmlwdElzLDAsJ2h0bWwnKTsNCgkJCX1lbHNlIGlmKCRzbWFydHlPbiYmJENNU21vZHMhPScnKXsNCgkJCQkkU2NyaXB0SXM9JFByb2NjZXNzLT5zbWFydHlPbigkU2NyaXB0SXMsMCk7DQoJCQl9ZWxzZXsNCgkJCQkkU2NyaXB0SXM9JFByb2NjZXNzLT5zbWFydHlPbigkU2NyaXB0SXMpOw0KCQkJfQ0KCQkJDQoJCQlpZigkU2NyaXB0SXMhPScnKXsNCgkJCQlpZigoJE1pbmlmeT09dHJ1ZXx8JE1pbmlmeT09JzEnKSYmJE1pbmlmeSE9JycmJiRNaW5pZnkhPWZhbHNlKXsNCgkJCQkJJFNjcmlwdElzPSRQcm9jY2Vzcy0+TWluaWZ5SXQoJFNjcmlwdElzLCRleHQpOw0KCQkJCQl9DQoJCQkJaWYoJHZhbF9tZXRoPT1mYWxzZXx8JGV4dCE9Imh0bWwiKXsNCgkJCQkJJGxvZ24gPSBuZXcgc2RfbG9nZ2luKCk7DQoJCQkJCSRjb2RlPSJcclxuIC8qIG1pbmlmaWVkICRNaW5pZnkgclxuIHNjcmlwdCAkSUQgXHJcbiBUT0RPIC0tIHByb2ZpbGUgXHJcbiIuJGxvZ24tPkdldF9Ob3RlcygkSUQpLiJcclxuICovIFxyXG4iOw0KCQkJCX0NCgkJCQkkY29kZVRvRmlsZT0kY29kZS4kU2NyaXB0SXM7DQoJCQl9DQoJCQkNCgkJCWlmKCRwYXRoT3B0aW9uJiYkZXh0IT0iaHRtbCIpew0KCQkJCWlmICgoc3Vic3RyKCRwYXRoT3B0aW9uLCAwLDQpKT09Imh0dHAiKXsNCgkJCQkJJEw9c3RybGVuKCRjb25maWdbJ3Jvb3RfdXJsJ10pOw0KCQkJCQkkcGF0aE9wdGlvbiA9IHN1YnN0cl9yZXBsYWNlKCRwYXRoT3B0aW9uLCAnJywgMCwgJEwpOw0KCQkJCX0NCgkJCQkNCgkJCQkkcGF0aE9wdGlvbj1ydHJpbSgkcGF0aE9wdGlvbiwgJy8nKTsNCgkJCQkkcGF0aE9wdGlvbj0kY29uZmlnWydyb290X3BhdGgnXS4kcGF0aE9wdGlvbjsNCgkJCQkkY29kZVRvRmlsZT1maWxlX2dldF9jb250ZW50cygkcGF0aE9wdGlvbik7DQoJCQkJDQoJCQkJaWYoKCRNaW5pZnk9PXRydWV8fCRNaW5pZnk9PScxJykmJiRNaW5pZnkhPScnJiYkTWluaWZ5IT1mYWxzZSl7DQoJCQkJCSRjb2RlVG9GaWxlPSRQcm9jY2Vzcy0+TWluaWZ5SXQoJGNvZGVUb0ZpbGUsJGV4dCk7DQoJCQkJfQ0KCQkJCQ0KCQkJCWlmKCR2YWxfbWV0aD09ZmFsc2Upew0KCQkJCQkkbG9nbiA9IG5ldyBzZF9sb2dnaW4oKTsNCgkJCQkJJGNvZGU9IlxyXG4gLyogbWluaWZpZWQgJE1pbmlmeSAgclxuIHNjcmlwdCAkSUQgXHJcbiBwYXRoICRwYXRoT3B0aW9uIFxyXG4gVE9ETyAtLSBwcm9maWxlIFxyXG4iLiRsb2duLT5HZXRfTm90ZXMoJElEKS4iXHJcbiAqLyBcclxuIjsNCgkJCQl9DQoJCQkJDQoJCQkJJGNvZGVUb0ZpbGU9JGNvZGUuJGNvZGVUb0ZpbGU7DQoJCQl9DQoJCQlpZigkc2NyaXB0VHlwZT09IkNTUyImJiRleHQhPSJodG1sIil7DQoJCQkJaWYoJG1vZC0+R2V0UHJlZmVyZW5jZSgicHJlbG9hZF9DU1NpbWFnZSIpKXsNCgkJCQkJJG1vZC0+U2V0UHJlZmVyZW5jZSgkSUQuJy1wcmVsb2FkX0NTU2ltYWdlLXNjcmlwdC1TRCcsJG1vZC0+YnVpbGRfcHJlbG9hZCgkY29kZVRvRmlsZSwkSUQpKTsNCgkJCQkJJG1vZC0+RmlyZURlYnVnKCdlcnJvcicsICdwcmVsb2FkX0NTU2ltYWdlOiAnLiRzY3JpcHRUeXBlKTsNCgkJCQl9DQoJCQl9DQoJCX1lbHNlaWYoJGdyb3VwZWQ9PSJncm91cElEIil7DQoJCQkkR3JvdXBBcnJheT0kbW9kLT5zZWxlY3RHcm91cEl0ZW1zKCRJRCk7DQoJCQkkZ0lEPSRJRDsNCgkJCSRwYXNzPScnOw0KCQkJZm9yZWFjaCgkR3JvdXBBcnJheSBhcyAka2V5ID0+ICRJRCl7DQoJCQkJQGV4dHJhY3QoJG1vZC0+Z2V0U2NyaXB0RnVsbCgkSUQpKTsNCgkJCQkkTWluaWZ5PSRtb2QtPkdldFByZWZlcmVuY2UoJElELictTWluaWZ5LVNEJywkTWluaWZ5KTsNCgkJCQlpZigkdmFsX21ldGg9PXRydWUpeyRNaW5pZnk9ZmFsc2U7fQ0KCQkJCWlmKCRzbWFydHlPbil7DQoJCQkJCSRTY3JpcHRJcz0kUHJvY2Nlc3MtPnNtYXJ0eU9uKCRTY3JpcHRJcyk7DQoJCQkJfQ0KCQkJCSR0dXJuT2ZmUHJlbG9hZD0kbW9kLT5HZXRQcmVmZXJlbmNlKCRJRC4nLXR1cm5PZmZQcmVsb2FkLVNEJywnMCcpOw0KCQkJCWlmKCRTY3JpcHRJcyE9Jycpew0KCQkJCQlpZigoJE1pbmlmeT09dHJ1ZXx8JE1pbmlmeT09JzEnKSYmJE1pbmlmeSE9JycmJiRNaW5pZnkhPWZhbHNlKXsNCgkJCQkJCSRTY3JpcHRJcz0kUHJvY2Nlc3MtPk1pbmlmeUl0KCRTY3JpcHRJcywkZXh0KTsNCgkJCQkJfQ0KCQkJCQlpZigkdmFsX21ldGg9PWZhbHNlKXsNCgkJCQkJCSRsb2duID0gbmV3IHNkX2xvZ2dpbigpOw0KCQkJCQkJJGNvZGU9IlxyXG4gLyogbWluaWZpZWQgJE1pbmlmeSBcclxuIHNjcmlwdCAkSUQgXHJcbiBUT0RPIC0tIHByb2ZpbGUgXHJcbiIuJGxvZ24tPkdldF9Ob3RlcygkSUQpLiJcclxuICovIFxyXG4iOw0KCQkJCQl9DQoJCQkJCWlmKCEkdHVybk9mZlByZWxvYWQpeyRwYXNzLj0kbW9kLT5idWlsZF9wcmVsb2FkKCRTY3JpcHRJcywkSUQpO30NCgkJCQkJJGNvZGVUb0ZpbGUuPSRjb2RlLiRTY3JpcHRJczsNCgkJCQl9DQoJCQkJaWYoJHBhdGhPcHRpb24pew0KCQkJCQlpZiAoKHN1YnN0cigkcGF0aE9wdGlvbiwgMCw0KSk9PSJodHRwIil7JEw9c3RybGVuKCRjb25maWdbJ3Jvb3RfdXJsJ10pOyRwYXRoT3B0aW9uID0gc3Vic3RyX3JlcGxhY2UoJHBhdGhPcHRpb24sICcnLCAwLCAkTCk7fQ0KCQkJCQkkcGF0aE9wdGlvbj1ydHJpbSgkcGF0aE9wdGlvbiwgJy8nKTsNCgkJCQkJJHBhdGhPcHRpb249JGNvbmZpZ1sncm9vdF9wYXRoJ10uJHBhdGhPcHRpb247DQoJCQkJCSRjb2RlVG9GaWxlRnJvbVBhdGg9ZmlsZV9nZXRfY29udGVudHMoJHBhdGhPcHRpb24pOw0KCQkJCQlpZigoJE1pbmlmeT09dHJ1ZXx8JE1pbmlmeT09JzEnKSYmJE1pbmlmeSE9JycmJiRNaW5pZnkhPWZhbHNlKXsNCgkJCQkJCSRjb2RlVG9GaWxlRnJvbVBhdGg9JFByb2NjZXNzLT5NaW5pZnlJdCgkY29kZVRvRmlsZUZyb21QYXRoLCRleHQpOw0KCQkJCQl9DQoJCQkJCWlmKCR2YWxfbWV0aD09ZmFsc2Upew0KCQkJCQkJJGxvZ24gPSBuZXcgc2RfbG9nZ2luKCk7DQoJCQkJCQkkY29kZT0iXHJcbiAvKiBtaW5pZmllZCAkTWluaWZ5ICBcclxuIHNjcmlwdCAkSUQgXHJcbiAgcGF0aCAkcGF0aE9wdGlvbiBcclxuIFRPRE8gLS0gcHJvZmlsZSBcclxuIi4kbG9nbi0+R2V0X05vdGVzKCRJRCkuIlxyXG4gKi8gXHJcbiI7DQoJCQkJCX0NCgkJCQkJaWYoISR0dXJuT2ZmUHJlbG9hZCl7JHBhc3MuPSRtb2QtPmJ1aWxkX3ByZWxvYWQoJGNvZGVUb0ZpbGVGcm9tUGF0aCwkSUQpO30NCgkJCQkJJGNvZGVUb0ZpbGUuPSRjb2RlLiRjb2RlVG9GaWxlRnJvbVBhdGg7DQoJCQkJfQ0KCQkJCQ0KCQkJfQ0KCQkJaWYoJGV4dD09IkNTUyIpew0KCQkJCWlmKCRtb2QtPkdldFByZWZlcmVuY2UoInByZWxvYWRfQ1NTaW1hZ2UiKSl7DQoJCQkJCSRtb2QtPlNldFByZWZlcmVuY2UoJGdJRC4nLXByZWxvYWRfQ1NTaW1hZ2UtZ3JvdXAtU0QnLCRwYXNzKTsNCgkJCQkJJG1vZC0+RmlyZURlYnVnKCdlcnJvcicsICdwcmVsb2FkX0NTU2ltYWdlOiAnLiRleHQpOw0KCQkJCX0NCgkJCX0NCgkJfQ0KCQlpZigkZXh0PT0iQ1NTIiYmJGV4dCE9Imh0bWwiKXsNCgkJCWlmKCRmaWxlVGltZV9jc3NfdXJscyYmISR2YWxfbWV0aCl7DQoJCQkJJGNvZGVUb0ZpbGU9JG1vZC0+ZmlsZVRpbWVfY3NzX3VybHMoJGNvZGVUb0ZpbGUpOw0KCQkJfQ0KCQl9DQoJCSRvdXB1dCA9IGFycmF5KCRjb2RlVG9GaWxlLCRleHQpOw0KCQlyZXR1cm4gJG91cHV0Ow0KCX0NCgkvKioNCgkqIFRha2UgY29kZSBhbmQgcHJvY2VzcyBzbWFydHkuDQoJKg0KCSogTm90ZSB0aGUgc21hcnR5IGRlbGltaXRlciBpcyBzd2l0Y2hlZCBmcm9tIHsgfSB0byB7eyB9fSBzbyB0aGF0IHNtYXJ0eQ0KCSogY2FuIGJlIHVzZWQgaW4gdGhlIGphdmFzY3JpcHQgZmlsZXMNCgkqDQoJKiBAdG9kbyBQdWxsIG91dCB0byBhIHByb2Nlc3NpbmcgY2xhc3MNCgkqIEByZXR1cm4gc3RyaW5nIHRoaXMgaXMgdGhlIHNtYXJ0eSBwcm9jZXNzZWQgc2NyaXB0DQoJKi8NCglwdWJsaWMgZnVuY3Rpb24gZG9QYWdlKCRjb2RlVG9GaWxlKXsNCgkJLyoNCgkJICogQHRvZG8gcmVtb3ZlIHRoZSB2ZXJzaW9uIGNoZWNrIA0KCQkgKiANCgkJKi8NCgkJaWYodmVyc2lvbl9jb21wYXJlKENNU19WRVJTSU9OLCcxLjktYmV0YTEnKSA+PSAwICl7DQoJCQkkbW9kPWNtc191dGlsczo6Z2V0X21vZHVsZSgnU2NyaXB0RGVwbG95Jyk7DQoJCX1lbHNlew0KCQkJZ2xvYmFsICRnQ21zOw0KCQkJJG1vZD0kZ0Ntcy0+bW9kdWxlc1snU2NyaXB0RGVwbG95J11bJ29iamVjdCddOw0KCQl9DQoNCgkJJG1vZC0+R2V0UHJlZmVyZW5jZSgnZGVmYXVsdFBhZ2UnKTsNCgkJJG1vZC0+R2V0UHJlZmVyZW5jZSgnYXV0b0NvbnRlbnQnKTsNCgkJJG1vZC0+R2V0UHJlZmVyZW5jZSgnb3duQ29udGVudCcpOw0KCQkkbW9kLT5HZXRQcmVmZXJlbmNlKCd1c2VyRGVmYXVsdFBhZ2UnKTsNCgkNCg0KCQlyZXR1cm4gJGNvZGVUb0ZpbGU7DQoJfQ0KCQ0KCS8qKg0KCSogVGFrZSBjb2RlIGFuZCBwcm9jZXNzIHNtYXJ0eS4NCgkqDQoJKiBOb3RlIHRoZSBzbWFydHkgZGVsaW1pdGVyIGlzIHN3aXRjaGVkIGZyb20geyB9IHRvIHt7IH19IHNvIHRoYXQgc21hcnR5DQoJKiBjYW4gYmUgdXNlZCBpbiB0aGUgamF2YXNjcmlwdCBmaWxlcw0KCSoNCgkqIEB0b2RvIFB1bGwgb3V0IHRvIGEgcHJvY2Vzc2luZyBjbGFzcw0KCSogQHJldHVybiBzdHJpbmcgdGhpcyBpcyB0aGUgc21hcnR5IHByb2Nlc3NlZCBzY3JpcHQNCgkqLw0KCXB1YmxpYyBmdW5jdGlvbiBzbWFydHlPbigkY29kZVRvRmlsZSwkYW5pdERlbGltPTEsJGV4dD0nJyl7DQoJCS8qDQoJCSAqIEB0b2RvIHJlbW92ZSB0aGUgdmVyc2lvbiBjaGVjayANCgkJICogDQoJCSovDQoJCWlmKHZlcnNpb25fY29tcGFyZShDTVNfVkVSU0lPTiwnMS45LWJldGExJykgPj0gMCApew0KCQkJJG1vZD1jbXNfdXRpbHM6OmdldF9tb2R1bGUoJ1NjcmlwdERlcGxveScpOw0KCQl9ZWxzZXsNCgkJCWdsb2JhbCAkZ0NtczsNCgkJCSRtb2Q9JGdDbXMtPm1vZHVsZXNbJ1NjcmlwdERlcGxveSddWydvYmplY3QnXTsNCgkJfQ0KCQkkUHJvY2Nlc3MgPSBuZXcgc2NyaXB0UHJvY2Vzc2luZygpOw0KCQkNCgkJaWYoJGFuaXREZWxpbSl7DQoJCQkkbW9kLT5zbWFydHktPmxlZnRfZGVsaW1pdGVyID0gJ3t7JzsNCgkJCSRtb2QtPnNtYXJ0eS0+cmlnaHRfZGVsaW1pdGVyID0gJ319JzsNCgkJCSRjb2RlVG9GaWxlPSRtb2QtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhKCRjb2RlVG9GaWxlKTsgDQoJCQkkbW9kLT5zbWFydHktPmxlZnRfZGVsaW1pdGVyID0gJ3snOw0KCQkJJG1vZC0+c21hcnR5LT5yaWdodF9kZWxpbWl0ZXIgPSAnfSc7DQoJCX1lbHNlaWYoJGV4dD0naHRtbCcpew0KCQkJJGNvZGVUb0ZpbGU9JFByb2NjZXNzLT5kb1BhZ2UoJGNvZGVUb0ZpbGUpOyANCgkJfWVsc2V7DQoJCQkkY29kZVRvRmlsZT0kbW9kLT5Qcm9jZXNzVGVtcGxhdGVGcm9tRGF0YSgkY29kZVRvRmlsZSk7DQoJCX0NCgkJcmV0dXJuICRjb2RlVG9GaWxlOw0KCX0NCgkNCgkvKioNCgkqIFRha2UgY29kZSBhbmQgbWluaWZ5Lg0KCSoNCgkqIHJpZ2h0IG5vdyBvbmx5IGh0bWwsIGNzcyBhbmQganMgaXMgbG9hZGVkDQoJKg0KCSogQHRvZG8gUHVsbCBvdXQgdG8gYSBwcm9jZXNzaW5nIGNsYXNzDQoJKiBAcGFyYW0gc3RyaW5nICRkYXRhIHRoZSBjb2RlIHRoYXQgbmVlZHMgdG8gYmUgcHJvY2Vzc2VkLg0KCSogQHBhcmFtIHN0cmluZyAkZXh0IHRoZSB0eXBlIG9zIHNjcmlwdCBlZyBjc3MsIGpzLCBvciBodG1sLg0KCSogQHJldHVybiBzdHJpbmcgdGhpcyBpcyB0aGUgc21hcnR5IHByb2Nlc3NlZCBzY3JpcHQNCgkqLw0KCXB1YmxpYyBmdW5jdGlvbiBNaW5pZnlJdCgkZGF0YSwkZXh0KXsNCgkJJGFyZzIgPSBudWxsOw0KCQkkdHlwZUlTID0nJzsNCgkJc3dpdGNoICgkZXh0KSB7DQoJCWNhc2UgJ0pTJzoNCgkJCSR0eXBlSVMgPSAnSmF2YXNjcmlwdCc7DQoJCQlicmVhazsNCgkJY2FzZSAnQ1NTJzoNCgkJCSR0eXBlSVMgPSAnQ1NTJzsNCgkJCWJyZWFrOw0KCQljYXNlICdodG1sJzoNCgkJCSR0eXBlSVMgPSAnSFRNTCc7DQoJCQkkYXJnMiA9IGFycmF5KA0KCQkJCSdjc3NNaW5pZmllcicgPT4gYXJyYXkoJ01pbmlmeV9DU1MnLCAnbWluaWZ5JykNCgkJCQksJ2pzTWluaWZpZXInID0+IGFycmF5KCdNaW5pZnlfSmF2YXNjcmlwdCcsICdtaW5pZnknKQ0KCQkJKTsNCgkJfQ0KCQkkZnVuYyA9IGFycmF5KCdNaW5pZnlfJyAuICR0eXBlSVMsICdtaW5pZnknKTsNCgkJcmV0dXJuIEBjYWxsX3VzZXJfZnVuYygkZnVuYywgJGRhdGEsICRhcmcyKTsNCgl9DQoNCgkNCn0=]]></data>
	</file>
	<file>
	  <filename>/lib/class.script_dissection.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCi8qKg0KICogTW9kdWxlOiBTY3JpcHREZXBsb3kgLSBNaW5pZnkgYW5kIGRlcGxveW1lbnQgb2YgSlMgQ1NTIGFuZCBIVE1MDQogKiANCiAqIA0KICogQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykNCiAqIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnDQogKiBUaGUgbW9kdWxlJ3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvc2NyaXB0ZGVwbG95Lw0KICogDQogKiBAcGFja2FnZSBTY3JpcHREZXBsb3kNCiAqIEBhdXRob3IgamVyZW15QmFzcyA8amVyZW15QmFzc0BjYWJsZW9uZS5uZXQ+DQogKiBAY29weXJpZ2h0IEplcmVteSBCYXNzDQogKiBAbGljZW5zZSBodHRwOi8vd3d3LmdudS5vcmcvY29weWxlZnQvZ3BsLmh0bWwgRnJlZWx5IGF2YWlsYWJsZSB1bmRlciBHUEwNCiAqLyANCg0KLy9pZiAoIWlzc2V0KGNtc21zKCkpKSBleGl0Ow0KY2xhc3Mgc2NyaXB0X2Rpc3NlY3Rpb24gZXh0ZW5kcyBTY3JpcHREZXBsb3l7DQoNCg0KCSAgcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KCl7DQoJCXBhcmVudDo6X19jb25zdHJ1Y3QoKTsNCgkJJHRoaXMtPl9kYXRhID0gYXJyYXkoKTsNCgkgIH0NCg0KCS8qKg0KCSogY3NzX3VybF9kaXNzZWN0aW9uLg0KCSoNCgkqDQoJKiBAcGFyYW0gaW50ZWdlciAkc0lEIC4NCgkqIEByZXR1cm4gYXJyYXkgdGhpcyBpcyBhbiBhcnJheSBvZiB0aGUgZXJyb3JzIGFuZCB3YXJuaW5ncyBmb3IgY3NzDQoJKi8NCglwdWJsaWMgZnVuY3Rpb24gY3NzX3VybF9kaXNzZWN0aW9uKCRzSUQpIHsNCgkJJFByb2NjZXNzID0gbmV3IHNjcmlwdFByb2Nlc3NpbmcoKTsNCgkJLy9pZigkX1NFUlZFUlsiU0VSVkVSX05BTUUiXT09J2xvY2FsaG9zdCd8fCRfU0VSVkVSWyJTRVJWRVJfTkFNRSJdPT0nMTI3LjAuMC4xJylyZXR1cm47DQoJCQ0KCQkkY29uZmlnID0gY21zbXMoKS0+R2V0Q29uZmlnKCk7IA0KCQkkaG90TGlua0NoZWNrID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ2hvdExpbmtDaGVjaycsMSk7DQoJCQ0KLy8JCSRTdWJkaXI9J3NjcmlwdElELScuJHNJRDsNCi8vCQkkZmlsZWJhc2VuYW1lPSRzSUQ7DQovLwkNCi8vCQkkU3R5cGU9ICdjc3MnOw0KLy8JCSRmaWxlbmFtZT0kY29uZmlnWyd1cGxvYWRzX3BhdGgnXS4iL2xpYi9TRC10ZW1wL1JQVC8kU3ViZGlyLyRzSUQuY3NzIjsJDQovLwkJaWYoZmlsZV9leGlzdHMoJGZpbGVuYW1lKSl7DQovLwkJCQkJdW5saW5rICgkZmlsZW5hbWUpOw0KLy8JCX0NCg0KCQkkZGF0YT0kUHJvY2Nlc3MtPlByb2NjZXNzU0QoJHNJRCwnc2NyaXB0SUQnLHRydWUsZmFsc2UsJ0NTUycpOw0KLy8JCSRldmVudCA9ICRkYXRhWzBdOw0KLy8JDQovLwkJaWYoIWZpbGVfZXhpc3RzKCRjb25maWdbJ3VwbG9hZHNfcGF0aCddLiIvbGliL1NELXRlbXAvUlBULyIuJFN1YmRpcikpew0KLy8JCQlta2RpcigkY29uZmlnWyd1cGxvYWRzX3BhdGgnXS4iL2xpYi9TRC10ZW1wL1JQVC8iLiRTdWJkaXIsIDA3NzcsIHRydWUpOw0KLy8JCX0NCi8vCQkkb3VyRmlsZU5hbWUgPSAkZmlsZW5hbWU7DQovLwkJJG91ckZpbGVIYW5kbGUgPSBmb3Blbigkb3VyRmlsZU5hbWUsICd3Jykgb3IgZGllKCJjYW4ndCBvcGVuIGZpbGUiKTsNCi8vCQlmY2xvc2UoJG91ckZpbGVIYW5kbGUpOw0KLy8JCS8vIEdFVCBMRU5HVEgsIEFORCBTVE9SRSBEQVRBIFRPIE9VUiBTRVJWRVIgKE9SIERBVEEgQkFTRSkNCi8vCQkkbGVuID0gc3RybGVuKCRldmVudCk7DQovLwkJJGNoayA9IGZpbGVfcHV0X2NvbnRlbnRzKCRmaWxlbmFtZSwgJGV2ZW50KTsNCi8vCQkvLyBURVNUIEZPUiBTVUNDRVNTRlVMIFNUT1JBR0UNCi8vCQlpZiAoJGxlbiE9JGNoaykgZGllKCJMRU5HVEggTUlTTUFUQ0giKTsNCi8vCQ0KLy8JCSRjc3NmaWxlPSRmaWxlbmFtZTsNCgkJLy9pbmNsdWRlKGRpcm5hbWUoX19GSUxFX18pLicvL2FjdGlvbi5DU1NyZXBvcnQucGhwJyk7DQoJCQ0KCQkNCgkJJHBheWxvYWQ9Jyc7DQoJCS8vaWYoJGxlbj4wKXsNCgkJCS8vJGNzcz1maWxlX2dldF9jb250ZW50cygkY3NzZmlsZSk7DQoJCQkkY3NzPSRkYXRhWzBdOw0KCQkJJHBheWxvYWQuPSAnPGRpdiBpZD0iRVVSTFMiPjxoMj4nLiR0aGlzLT5MYW5nKCdFVVJMUycpLic8L2gyPic7DQoJCQkkcGF5bG9hZC49ICc8dGFibGUgY2xhc3M9ImNhY2hlVGFibGUiPic7DQoJCQkkcGF5bG9hZC49ICc8dHI+PHRoPiM8L3RoPjx0aD4nLiR0aGlzLT5MYW5nKCdpVVJMJykuJzwvdGg+PCEtLTx0aD4nLiR0aGlzLT5MYW5nKCdUeXBlJykuJzwvdGg+LS0+PHRoPicuJHRoaXMtPkxhbmcoJ1NpemUnKS4nPC90aD48dGg+Jy4kdGhpcy0+TGFuZygnU3RhdHVzJykuJzwvdGg+PC90cj4nOwkNCgkJCSRjc3NfdXJscz1zZWxmOjpleHRyYWN0X2Nzc191cmxzKCRjc3MpOw0KCQkJaWYoIWVtcHR5KCRjc3NfdXJscykpew0KCQkJCQ0KCQkJCWlmKCEkaG90TGlua0NoZWNrKXsNCgkJCQkJJHBheWxvYWQuPSAnPHRyPic7DQoJCQkJCSRwYXlsb2FkLj0gJzx0ZD4wPC90ZD4nOw0KCQkJCQkkcGF5bG9hZC49ICc8dGQ+PGgzPicuICR0aGlzLT5MYW5nKCdUcnVuT25ob3RMaW5rQ2hlY2snKS4nPC9oMz48L3RkPic7DQoJCQkJCSRwYXlsb2FkLj0gJzx0ZD48L3RkPic7DQoJCQkJCSRwYXlsb2FkLj0nPHRkPjwvdGQ+JzsNCgkJCQkJJHBheWxvYWQuPSc8L3RyPic7DQoJCQkJfWVsc2V7DQoJCQkJCWZvcmVhY2goJGNzc191cmxzWydwcm9wZXJ0eSddIGFzICRrZXk9PiRjc3NfdXJsKXsNCgkJCQkJCSRyZXBvcnRBcnJheSA9ICR0aGlzLT5Ib3RsaW5rQ2hlY2soJGtleSwkY3NzX3VybCk7DQoJCQkJCQkkcGF5bG9hZC49ICI8dHI+IjsNCgkJCQkJCSRwYXlsb2FkLj0gIjx0ZD4iLiRyZXBvcnRBcnJheVsxXS4iPC90ZD4iOw0KCQkJCQkJJHBheWxvYWQuPSAnPHRkPjxhIGhyZWY9IicuJHJlcG9ydEFycmF5WzJdLiciIHRhcmdldD0iX2JsYW5rIj4nLiRyZXBvcnRBcnJheVs0XS4nPC9hPjwvdGQ+JzsNCgkJCQkJCSRwYXlsb2FkLj0gIjx0ZD4iLiRyZXBvcnRBcnJheVszXS4iPC90ZD4iOw0KCQkJCQkJJHBheWxvYWQuPSc8dGQ+Jy4gJHJlcG9ydEFycmF5WzBdIC4gJyA8L3RkPic7DQoJCQkJCQkkcGF5bG9hZC49JzwvdHI+JzsJCQkNCgkJCQkJCS8vJHBheWxvYWQuPSAkYWRqS2V5LicgLSA8YSBocmVmPSInLiRjc3NfdXJsLiciIHRhcmdldD0iX2JsYW5rIj4nLiRiYXNlVVJMLic8L2E+Jy4kY3NzX3VybF9XLic8YnIvPic7CQ0KCQkJCQl9DQoJCQkJfQkNCgkJCX1lbHNlew0KCQkJCSRwYXlsb2FkLj0gJzx0cj4nOw0KCQkJCSRwYXlsb2FkLj0gJzx0ZD4wPC90ZD4nOw0KCQkJCSRwYXlsb2FkLj0gJzx0ZD48aDM+Jy4gJHRoaXMtPkxhbmcoJ05PY3NzSScpLic8L2gzPjwvdGQ+JzsNCgkJCQkkcGF5bG9hZC49ICc8dGQ+PC90ZD4nOw0KCQkJCSRwYXlsb2FkLj0nPHRkPjwvdGQ+JzsNCgkJCQkkcGF5bG9hZC49JzwvdHI+JzsNCgkJCX0NCgkJCSRwYXlsb2FkLj0gJzwvdGFibGU+PC9kaXY+JzsJDQoJCQkvLyR0aGlzLT5zbWFydHktPmFzc2lnbigncGF5bG9hZCcsJHBheWxvYWQpOw0KLy8JCX1lbHNlew0KLy8JCQkkcGF5bG9hZD0nRXJyb3IgQ291bGQgbm90IHdyaXRlIHRvIGZpbGUnOw0KLy8JCX0NCgkJCXJldHVybiAkcGF5bG9hZDsNCgl9DQoJDQoJcHVibGljIGZ1bmN0aW9uIHJlbmRlcmVkX2Nzc19kaXNzZWN0aW9uKCRzSUQpIHsNCgkJDQoJCS8vaWYoJF9TRVJWRVJbIlNFUlZFUl9OQU1FIl09PSdsb2NhbGhvc3QnfHwkX1NFUlZFUlsiU0VSVkVSX05BTUUiXT09JzEyNy4wLjAuMScpcmV0dXJuOw0KCQkkUHJvY2Nlc3MgPSBuZXcgc2NyaXB0UHJvY2Vzc2luZygpOw0KCQkkZGF0YT0kUHJvY2Nlc3MtPlByb2NjZXNzU0QoJHNJRCwnc2NyaXB0SUQnLHRydWUsZmFsc2UsJ0NTUycpOw0KDQoNCgkJCWluY2x1ZGVfb25jZSgiLi4vQ1NTVHJlZS5pbmMucGhwIik7DQoNCgkJCS8vJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdKU3BheWxvYWQnLCAkSlNwYXlsb2FkKTsgDQoJCQkkcGF5bG9hZD0nJzsNCgkJDQoJCQkkbnVsbD1udWxsOw0KCQkJJHRyZWUgPSBuZXcgQ1NTVHJlZSgkbnVsbCwiIik7DQoJCQkkY3NzPSRkYXRhWzBdOw0KCQkJLy8gcGFyc2UgdGhlIGNzcy1maWxlIGFuZCBnZW5lcmF0ZSB0cmVlIHN0cnVjdHVyZSANCgkJCSR0cmVlPSR0cmVlLT5wYXJzZUZpbGUoJGNzc2ZpbGUpOw0KDQoJCQkkcGF5bG9hZC49ICc8ZGl2IGlkPSJSQ1NTIj48aDI+Jy4kdGhpcy0+TGFuZygnUkNTUycpLic8L2gyPic7DQoJCQkkcGF5bG9hZC49ICc8cHJlPic7DQoJCQkkcGF5bG9hZC49ICR0cmVlLT5yZW5kZXJDU1NBbGwoKTsNCgkJCSRwYXlsb2FkLj0gJzwvcHJlPjwvZGl2Pic7DQoNCgkJCXJldHVybiAkcGF5bG9hZDsNCg0KCX0NCgkNCgkNCi8vCXB1YmxpYyBmdW5jdGlvbiBjc3NfZGlzc2VjdGlvbiggJGlkLCAkU0R0eXBlLCRhamF4PWZhbHNlKSB7DQovLwkJDQovLwkJLy9pZigkX1NFUlZFUlsiU0VSVkVSX05BTUUiXT09J2xvY2FsaG9zdCd8fCRfU0VSVkVSWyJTRVJWRVJfTkFNRSJdPT0nMTI3LjAuMC4xJylyZXR1cm47DQovLwkJJGNvbmZpZyA9JiBjbXNtcygpLT5HZXRDb25maWcoKTsgDQovLwkJJElEPSRpZDsNCi8vDQovLwkJJHR5cGU9JFNEdHlwZTsNCi8vCQ0KLy8JCSRTdWJkaXI9J3NjcmlwdElELScuJHNJRDsNCi8vCQkkZmlsZWJhc2VuYW1lPSRzSUQ7DQovLwkNCi8vCQkkU3R5cGU9ICdjc3MnOw0KLy8JCSRmaWxlbmFtZT0kY29uZmlnWyd1cGxvYWRzX3BhdGgnXS4iL2xpYi9TRC10ZW1wL1JQVC8kU3ViZGlyLyRzSUQuY3NzIjsJDQovLwkJaWYoZmlsZV9leGlzdHMoJGZpbGVuYW1lKSl7DQovLwkJCQkJdW5saW5rICgkZmlsZW5hbWUpOw0KLy8JCX0NCi8vDQovLwkJJGRhdGE9c2NyaXB0UHJvY2Vzc2luZzo6UHJvY2Nlc3NTRCgkc0lELCdzY3JpcHRJRCcsdHJ1ZSxmYWxzZSwnQ1NTJyk7DQovLwkJJGV2ZW50ID0gJGRhdGFbMF07DQovLwkNCi8vCQlpZighZmlsZV9leGlzdHMoJGNvbmZpZ1sndXBsb2Fkc19wYXRoJ10uIi9saWIvU0QtdGVtcC9SUFQvIi4kU3ViZGlyKSl7DQovLwkJCW1rZGlyKCRjb25maWdbJ3VwbG9hZHNfcGF0aCddLiIvbGliL1NELXRlbXAvUlBULyIuJFN1YmRpciwgMDc3NywgdHJ1ZSk7DQovLwkJfQ0KLy8JCSRvdXJGaWxlTmFtZSA9ICRmaWxlbmFtZTsNCi8vCQkkb3VyRmlsZUhhbmRsZSA9IGZvcGVuKCRvdXJGaWxlTmFtZSwgJ3cnKSBvciBkaWUoImNhbid0IG9wZW4gZmlsZSIpOw0KLy8JCWZjbG9zZSgkb3VyRmlsZUhhbmRsZSk7DQovLwkJLy8gR0VUIExFTkdUSCwgQU5EIFNUT1JFIERBVEEgVE8gT1VSIFNFUlZFUiAoT1IgREFUQSBCQVNFKQ0KLy8JCSRsZW4gPSBzdHJsZW4oJGV2ZW50KTsNCi8vCQkkY2hrID0gZmlsZV9wdXRfY29udGVudHMoJGZpbGVuYW1lLCAkZXZlbnQpOw0KLy8JCS8vIFRFU1QgRk9SIFNVQ0NFU1NGVUwgU1RPUkFHRQ0KLy8JCWlmICgkbGVuIT0kY2hrKSBkaWUoIkxFTkdUSCBNSVNNQVRDSCIpOw0KLy8JDQovLwkJJGNzc2ZpbGU9JGZpbGVuYW1lOw0KLy8JCS8vaW5jbHVkZShkaXJuYW1lKF9fRklMRV9fKS4nLy9hY3Rpb24uQ1NTcmVwb3J0LnBocCcpOw0KLy8JCQ0KLy8JCQ0KLy8JDQovLwkJaWYoJGxlbj4wKXsNCi8vCQkJaW5jbHVkZSgiQ1NTVHJlZS5pbmMucGhwIik7DQovLw0KLy8JCQkvLyR0aGlzLT5zbWFydHktPmFzc2lnbignSlNwYXlsb2FkJywgJEpTcGF5bG9hZCk7IA0KLy8JCQkkcGF5bG9hZD0nJzsNCi8vCQkJLy8vLyBkdW1teSBkYXRhIA0KLy8JCQkvLyRkZGF0YT1hcnJheSgiYm9yZGVyIj0+IjFweCBzb2xpZCBibGFjayIpOw0KLy8JCQkvLyRkZGF0YTI9YXJyYXkoImJvcmRlciI9PiIycHggc29saWQgc2lsdmVyIik7DQovLwkJCQ0KLy8JCQkvLyBjc3NmaWxlIHRvIHJlYWQgZnJvbSANCi8vCQkJDQovLwkJCQ0KLy8JCQkvLyBpbml0IHRoZSB0cmVlIChUcmVlLmluYy5waHApLCBhdmFpbGFibGUgZnJvbToNCi8vCQkJLy8gaHR0cDovL3d3dy5waHBjbGFzc2VzLm9yZy9icm93c2UvcGFja2FnZS8yODE3Lmh0bWwNCi8vCQkJDQovLwkJCSRudWxsPW51bGw7DQovLwkJCSR0cmVlID0gbmV3IENTU1RyZWUoJG51bGwsIiIpOw0KLy8NCi8vCQkNCi8vCQkJJGNzcz1maWxlX2dldF9jb250ZW50cygkY3NzZmlsZSk7DQovLwkJCS8vIHBhcnNlIHRoZSBjc3MtZmlsZSBhbmQgZ2VuZXJhdGUgdHJlZSBzdHJ1Y3R1cmUgDQovLwkJCSR0cmVlPSR0cmVlLT5wYXJzZUZpbGUoJGNzc2ZpbGUpOw0KLy8NCi8vCQkkcGF5bG9hZC49ICc8ZGl2IGNsYXNzPSJoaWRkZW4iPic7DQovLwkJCSRwYXlsb2FkLj0gJzxkaXYgaWQ9IkVVUkxTIj48aDI+Jy4kdGhpcy0+TGFuZygnRVVSTFMnKS4nPC9oMj4nOw0KLy8JCQkkcGF5bG9hZC49ICc8dGFibGUgY2xhc3M9ImNhY2hlVGFibGUiPic7DQovLwkJCSRwYXlsb2FkLj0gJzx0cj48dGg+IzwvdGg+PHRoPicuJHRoaXMtPkxhbmcoJ2lVUkwnKS4nPC90aD48IS0tPHRoPicuJHRoaXMtPkxhbmcoJ1R5cGUnKS4nPC90aD4tLT48dGg+Jy4kdGhpcy0+TGFuZygnU2l6ZScpLic8L3RoPjx0aD4nLiR0aGlzLT5MYW5nKCdTdGF0dXMnKS4nPC90aD48L3RyPic7CQ0KLy8JCQkkY3NzX3VybHM9JHRoaXMtPmV4dHJhY3RfY3NzX3VybHMoJGNzcyk7DQovLwkJCWlmKCFlbXB0eSgkY3NzX3VybHMpKXsNCi8vCQkJCQ0KLy8JCQkJaWYoISRob3RMaW5rQ2hlY2spew0KLy8JCQkJCSRwYXlsb2FkLj0gJzx0cj4nOw0KLy8JCQkJCSRwYXlsb2FkLj0gJzx0ZD4wPC90ZD4nOw0KLy8JCQkJCSRwYXlsb2FkLj0gJzx0ZD48aDM+Jy4gJHRoaXMtPkxhbmcoJ1RydW5PbmhvdExpbmtDaGVjaycpLic8L2gzPjwvdGQ+JzsNCi8vCQkJCQkkcGF5bG9hZC49ICc8dGQ+PC90ZD4nOw0KLy8JCQkJCSRwYXlsb2FkLj0nPHRkPjwvdGQ+JzsNCi8vCQkJCQkkcGF5bG9hZC49JzwvdHI+JzsNCi8vCQkJCX1lbHNlew0KLy8JCQkJCWZvcmVhY2goJGNzc191cmxzWydwcm9wZXJ0eSddIGFzICRrZXk9PiRjc3NfdXJsKXsNCi8vCQkJCQkJJHJlcG9ydEFycmF5ID0gJHRoaXMtPkhvdGxpbmtDaGVjaygka2V5LCRjc3NfdXJsKTsNCi8vCQkJCQkJJHBheWxvYWQuPSAiPHRyPiI7DQovLwkJCQkJCSRwYXlsb2FkLj0gIjx0ZD4iLiRyZXBvcnRBcnJheVsxXS4iPC90ZD4iOw0KLy8JCQkJCQkkcGF5bG9hZC49ICc8dGQ+PGEgaHJlZj0iJy4kcmVwb3J0QXJyYXlbMl0uJyIgdGFyZ2V0PSJfYmxhbmsiPicuJHJlcG9ydEFycmF5WzRdLic8L2E+PC90ZD4nOw0KLy8JCQkJCQkkcGF5bG9hZC49ICI8dGQ+Ii4kcmVwb3J0QXJyYXlbM10uIjwvdGQ+IjsNCi8vCQkJCQkJJHBheWxvYWQuPSc8dGQ+Jy4gJHJlcG9ydEFycmF5WzBdIC4gJyA8L3RkPic7DQovLwkJCQkJCSRwYXlsb2FkLj0nPC90cj4nOwkJCQ0KLy8JCQkJCQkvLyRwYXlsb2FkLj0gJGFkaktleS4nIC0gPGEgaHJlZj0iJy4kY3NzX3VybC4nIiB0YXJnZXQ9Il9ibGFuayI+Jy4kYmFzZVVSTC4nPC9hPicuJGNzc191cmxfVy4nPGJyLz4nOwkNCi8vCQkJCQl9DQovLwkJCQl9CQ0KLy8JCQl9ZWxzZXsNCi8vCQkJCSRwYXlsb2FkLj0gJzx0cj4nOw0KLy8JCQkJJHBheWxvYWQuPSAnPHRkPjA8L3RkPic7DQovLwkJCQkkcGF5bG9hZC49ICc8dGQ+PGgzPicuICR0aGlzLT5MYW5nKCdOT2Nzc0knKS4nPC9oMz48L3RkPic7DQovLwkJCQkkcGF5bG9hZC49ICc8dGQ+PC90ZD4nOw0KLy8JCQkJJHBheWxvYWQuPSc8dGQ+PC90ZD4nOw0KLy8JCQkJJHBheWxvYWQuPSc8L3RyPic7DQovLwkJCX0NCi8vCQkJJHBheWxvYWQuPSAnPC90YWJsZT48L2Rpdj4nOwkNCi8vDQovLwkJDQovLwkJCSRwYXlsb2FkLj0gJzxkaXYgaWQ9IlJDU1MiPjxoMj4nLiR0aGlzLT5MYW5nKCdSQ1NTJykuJzwvaDI+JzsNCi8vCQkJJHBheWxvYWQuPSAnPHByZT4nOw0KLy8JCQkkcGF5bG9hZC49ICR0cmVlLT5yZW5kZXJDU1NBbGwoKTsNCi8vCQkJJHBheWxvYWQuPSAnPC9wcmU+PC9kaXY+JzsNCi8vCQkJDQovLw0KLy8JCQkkcGF5bG9hZC49ICc8ZGl2IGlkPSJTQ1NTIj48aDI+Jy4kdGhpcy0+TGFuZygnU0NTUycpLic8L2gyPic7DQovLwkJCSRwYXlsb2FkLj0gJzxwcmU+JzsNCi8vCQkJJHBheWxvYWQuPSAkdHJlZS0+ZWNob1N0cnVjdHVyZSgpOw0KLy8JCQkkcGF5bG9hZC49ICc8L3ByZT48L2Rpdj4nOw0KLy8JCQ0KLy8NCi8vCQkNCi8vCQkJDQovLwkJCSRwYXlsb2FkLj0gJzxkaXYgaWQ9IkZDT05UIj48aDI+Jy4kdGhpcy0+TGFuZygnRkNPTlQnKS4nPC9oMj4nOw0KLy8NCi8vCQkJJHBheWxvYWQuPWZpbGVfZ2V0X2NvbnRlbnRzKCRjc3NmaWxlKTsNCi8vCQkJJHBheWxvYWQuPSAnPC9kaXY+JzsNCi8vCQkNCi8vCQkJLy8gYWRkIHNvbWUgY2hpbGRzDQovLwkJCS8vJHRtcD0mJHRyZWUtPmFkZENoaWxkKCdjdXN0b20xJywkZGRhdGEpOw0KLy8JCQkvLyR0bXA9JiR0bXAtPmFkZENoaWxkKCdjdXN0b20yJywkZGRhdGEyKTsNCi8vCQkNCi8vCQkJLy9lY2hvICc8aDI+X19fX19yZW5kZXJDU1NQcm9wZXJ0aWVzX19fX19fPC9oMj4nOw0KLy8JCQkvL2VjaG8gJzxwPlRoaXMgaXMgd2hhdCB5b3UgbmVlZCBmb3IgdGFncyAoJmx0O2RpdiBzdHlsZT0iIiZndDspPC9wPic7DQovLwkJCS8vZWNobyAnPHByZT4nOw0KLy8JCQkvL2VjaG8gJHRtcC0+cmVuZGVyQ1NTUHJvcGVydGllcygpOw0KLy8JCQkvL2VjaG8gJzwvcHJlPic7DQovLwkJDQovLwkJCS8vZWNobyAnPGgyPl9fX19fcmVuZGVyQ1NTKClfX19fX188L2gyPic7DQovLwkJCS8vZWNobyAnPHA+VGhpcyBpcyB3aGF0IHlvdSBuZWVkIGluIHRoZSBoZWFkZXIgc2VjdGlvbiAmbHQ7c3R5bGUmZ3Q7PC9wPic7DQovLwkJCS8vZWNobyAnPHByZT4nOw0KLy8JCQkvL2VjaG8gJHRtcC0+cmVuZGVyQ1NTKCk7DQovLwkJCS8vZWNobyAnPC9wcmU+JzsNCi8vCQkJJHBheWxvYWQuPSAnPC9kaXY+JzsNCi8vCQkJLy8kdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3BheWxvYWQnLCRwYXlsb2FkKTsNCi8vCQlpZigkYWpheD09dHJ1ZSl7DQovLwkJCXJldHVybiAkcGF5bG9hZDsNCi8vCQl9DQovLyAgICAvL2VjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSgnYWRtaW5fdmlld19sb2dzLnRwbCcpOw0KLy8JfQ0KDQp9]]></data>
	</file>
	<file>
	  <filename>/lib/class.sdVal.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCi8qKg0KICogTW9kdWxlOiBTY3JpcHREZXBsb3kgLSBNaW5pZnkgYW5kIGRlcGxveW1lbnQgb2YgSlMgQ1NTIGFuZCBIVE1MDQogKiANCiAqIA0KICogQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykNCiAqIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnDQogKiBUaGUgbW9kdWxlJ3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvc2NyaXB0ZGVwbG95Lw0KICogDQogKiBAcGFja2FnZSBTY3JpcHREZXBsb3kNCiAqIEBhdXRob3IgamVyZW15QmFzcyA8amVyZW15QmFzc0BjYWJsZW9uZS5uZXQ+DQogKiBAY29weXJpZ2h0IEplcmVteSBCYXNzDQogKiBAbGljZW5zZSBodHRwOi8vd3d3LmdudS5vcmcvY29weWxlZnQvZ3BsLmh0bWwgRnJlZWx5IGF2YWlsYWJsZSB1bmRlciBHUEwNCiAqLyANCg0KLy9pZiAoIWlzc2V0KGNtc21zKCkpKSBleGl0Ow0KY2xhc3Mgc2RWYWwgew0KCXB1YmxpYyBmdW5jdGlvbiBfX2NvbnN0cnVjdCgpew0KCX0NCg0KCS8qKg0KCSogQ2hlY2sgZm9yIGVycm9ycyBhbmQgd2FybmluZ3MgZm9yIGNzcy4NCgkqDQoJKg0KCSogQHRvZG8gUHVsbCBvdXQgdG8gYSB2YWxpZGF0aW9uIGNsYXNzDQoJKiBAcGFyYW0gaW50ZWdlciAkaWQgLg0KCSogQHBhcmFtIHN0cmluZyAkcHJvZmlsZSAuDQoJKiBAcGFyYW0gc3RyaW5nICRsYW5nIC4NCgkqIEBwYXJhbSBpbnRlZ2VyICR3YXJuaW5nIC4NCgkqIEBwYXJhbSBzdHJpbmcgJHVzZXJtZWRpdW0gLg0KCSogQHJldHVybiBhcnJheSB0aGlzIGlzIGFuIGFycmF5IG9mIHRoZSBlcnJvcnMgYW5kIHdhcm5pbmdzIGZvciBjc3MNCgkqLw0KCXB1YmxpYyBmdW5jdGlvbiByZXRyaWV2ZUNTU1ZhbCggJGlkLCAkcHJvZmlsZT0iY3NzMjEiLCAkbGFuZz0iZW4iLCAkd2FybmluZz0iMiIsICR1c2VybWVkaXVtPSJhbGwiKSB7DQoJCQ0KCQkvL2lmKCRfU0VSVkVSWyJTRVJWRVJfTkFNRSJdPT0nbG9jYWxob3N0J3x8JF9TRVJWRVJbIlNFUlZFUl9OQU1FIl09PScxMjcuMC4wLjEnKXJldHVybjsNCgkJJGNvbmZpZyA9IGNtc21zKCktPkdldENvbmZpZygpOw0KCQkvKg0KCQkgKiBAdG9kbyByZW1vdmUgdGhlIHZlcnNpb24gY2hlY2sgDQoJCSAqIA0KCQkqLw0KCQlpZih2ZXJzaW9uX2NvbXBhcmUoQ01TX1ZFUlNJT04sJzEuOS1iZXRhMScpID49IDAgKXsNCgkJCSRtb2Q9Y21zX3V0aWxzOjpnZXRfbW9kdWxlKCdTY3JpcHREZXBsb3knKTsNCgkJfWVsc2V7DQoJCQlnbG9iYWwgJGdDbXM7DQoJCQkkbW9kPSRnQ21zLT5tb2R1bGVzWydTY3JpcHREZXBsb3knXVsnb2JqZWN0J107DQoJCX0NCgkJJElEPSRpZDsNCgkJJFNEdHlwZT0ic2NyaXB0SUQiOw0KDQoJCSRmaWxlYmFzZW5hbWU9JElEOw0KCQ0KCQkkU3R5cGU9ICdjc3MnOw0KCQkkZmlsZW5hbWU9JGNvbmZpZ1sndXBsb2Fkc19wYXRoJ10uIi9saWIvU0QtdGVtcC9WQUwvJFNEdHlwZS8kSUQuY3NzIjsJDQoJCWlmKGZpbGVfZXhpc3RzKCRmaWxlbmFtZSkpew0KCQkJCQl1bmxpbmsgKCRmaWxlbmFtZSk7DQoJCX0NCg0KCQkkU21hcnR5T249IHRydWU7DQoJCSRQcm9jY2VzcyA9IG5ldyBzY3JpcHRQcm9jZXNzaW5nKCk7DQoJCSRkYXRhPSRQcm9jY2Vzcy0+UHJvY2Nlc3NTRCgkSUQsJFNEdHlwZSwkU21hcnR5T24sZmFsc2UsJ0NTUycsdHJ1ZSk7DQoJCSRldmVudCA9ICRkYXRhWzBdOw0KCQ0KCQlpZighZmlsZV9leGlzdHMoJGNvbmZpZ1sndXBsb2Fkc19wYXRoJ10uIi9saWIvU0QtdGVtcC9WQUwvIi4kU0R0eXBlKSl7DQoJCQlta2RpcigkY29uZmlnWyd1cGxvYWRzX3BhdGgnXS4iL2xpYi9TRC10ZW1wL1ZBTC8iLiRTRHR5cGUsIDA3NzcsIHRydWUpOw0KCQl9DQoJCSRvdXJGaWxlTmFtZSA9ICRmaWxlbmFtZTsNCgkJJG91ckZpbGVIYW5kbGUgPSBmb3Blbigkb3VyRmlsZU5hbWUsICd3Jykgb3IgZGllKCJjYW4ndCBvcGVuIGZpbGUiKTsNCgkJZmNsb3NlKCRvdXJGaWxlSGFuZGxlKTsNCgkJLy8gR0VUIExFTkdUSCwgQU5EIFNUT1JFIERBVEEgVE8gT1VSIFNFUlZFUiAoT1IgREFUQSBCQVNFKQ0KCQkkbGVuID0gc3RybGVuKCRldmVudCk7DQoJCSRjaGsgPSBmaWxlX3B1dF9jb250ZW50cygkZmlsZW5hbWUsICRldmVudCk7DQoJCS8vIFRFU1QgRk9SIFNVQ0NFU1NGVUwgU1RPUkFHRQ0KCQlpZiAoJGxlbiE9JGNoaykgZGllKCJMRU5HVEggTUlTTUFUQ0giKTsNCgkJDQoJCSRmaWxlTElOSz0kY29uZmlnWyd1cGxvYWRzX3VybCddLiIvbGliL1NELXRlbXAvVkFMLyRTRHR5cGUvJElELmNzcyI7CQ0KCQkvLyRqaWdzYXdVcmwgPSAiaHR0cDovL2ppZ3Nhdy53My5vcmcvY3NzLXZhbGlkYXRvci92YWxpZGF0b3I/b3V0cHV0PXNvYXAxMiZwcm9maWxlPSRwcm9maWxlJmxhbmc9JGxhbmcmd2FybmluZz0kd2FybmluZyZ1c2VybWVkaXVtPSR1c2VybWVkaXVtJnVyaT0kZmlsZUxJTksiOw0KCQkNCgkJDQoJCSRldmVudD11cmxlbmNvZGUodXRmOF9lbmNvZGUoJGV2ZW50KSk7DQoJCSRqaWdzYXdVcmwgPSAiaHR0cDovL2ppZ3Nhdy53My5vcmcvY3NzLXZhbGlkYXRvci92YWxpZGF0b3I/b3V0cHV0PXNvYXAxMiZwcm9maWxlPSRwcm9maWxlJmFtcDtsYW5nPSRsYW5nJndhcm5pbmc9JHdhcm5pbmcmdXNlcm1lZGl1bT0kdXNlcm1lZGl1bSZ0ZXh0PSRldmVudCI7DQoJCS8vJGppZ3Nhd1VybCA9ICJodHRwOi8vamlnc2F3LnczLm9yZy9jc3MtdmFsaWRhdG9yL3ZhbGlkYXRvciI7DQoJCS8vJG9iaiA9IGZpbGVfZ2V0X2NvbnRlbnRzKCRqaWdzYXdVcmwpOw0KCQkNCgkJJGhlYWRlcnMgPSBhcnJheSgpOw0KCQkkbWV0aG9kID0gJ0dFVCc7DQoJCSRyZXRyeSA9IDM7DQoJCSRkYXRhPScnOw0KCQkkaHR0cCA9IG5ldyBjbXNtc19odHRwKCk7DQoJCSRvYmogPSAkaHR0cC0+Y21zbXNfaHR0cF9yZXF1ZXN0KCRqaWdzYXdVcmwsICRoZWFkZXJzLCAkbWV0aG9kLCAkZGF0YSwgJHJldHJ5KTsNCgkJLy9wcmludF9yKCc8cHJlPicpOw0KCQkvL3ByaW50X3IoJG9iaik7DQoJCS8vcHJpbnRfcignPC9wcmU+Jyk7DQoJCWlmKCRtb2QtPkdldFByZWZlcmVuY2UoJ2RlYnVnSVQnKT09dHJ1ZSlwcmludCgiVmFsaWRhdGlvbiBTdGF0dXMgQ29kZSIuJG9iai0+Y29kZS4iPGJyLz4iKTsNCgkJaWYoJG9iai0+Y29kZSE9MjAwKXJldHVybjsNCgkJJENTU3ZhbFhtbE9iamVjdCA9IG5ldyBTaW1wbGVYTUxFbGVtZW50KCRvYmotPmRhdGEpOw0KCQkNCgkJJHAgPSB4bWxfcGFyc2VyX2NyZWF0ZSgpOw0KCQl4bWxfcGFyc2VfaW50b19zdHJ1Y3QoJHAsICRvYmotPmRhdGEsICR2YWxzLCAkaW5kZXgpOw0KCQl4bWxfcGFyc2VyX2ZyZWUoJHApOw0KDQoJCSRlcnJvcmxpc3Q9YXJyYXkoKTsNCg0KCQkkd2FybmluZ2xpc3Q9YXJyYXkoKTsNCgkJZm9yZWFjaCAoJHZhbHMgYXMgJGl0ZW0pIHsNCgkJLy8JZWNobyAiPHByZT4iOw0KCQkvLyAgIHByaW50X3IoJGl0ZW0pOyANCgkJLy8gICBlY2hvICJcblxuIjsNCgkJLy8gICBlY2hvICI8L3ByZT4iOw0KCQkgICBpZiAoJGl0ZW1bJ3RhZyddID09ICdNOkVSUk9SQ09VTlQnKXskRVJST1JDT1VOVD0gJGl0ZW1bJ3ZhbHVlJ107JGNvdW50PTA7fQ0KCQkgICBpZiAoJGl0ZW1bJ3RhZyddID09ICdNOldBUk5JTkdDT1VOVCcpeyRXQVJOSU5HQ09VTlQ9ICRpdGVtWyd2YWx1ZSddOyRjb3VudD0wO30NCgkJCWlmKCFpc3NldCgkV0FSTklOR0NPVU5UKSl7DQoJCQkgICBpZiAoJGl0ZW1bJ3RhZyddID09ICdNOkxJTkUnKXskY291bnQ9JGNvdW50KzE7JGVycm9ybGlzdFskY291bnRdWydMSU5FJ109ICRpdGVtWyd2YWx1ZSddO30NCgkJCSAgIGlmICgkaXRlbVsndGFnJ10gPT0gJ006RVJST1JUWVBFJyl7JGVycm9ybGlzdFskY291bnRdWydFUlJPUlRZUEUnXT0gJGl0ZW1bJ3ZhbHVlJ107fQ0KCQkJICAgaWYgKCRpdGVtWyd0YWcnXSA9PSAnTTpFUlJPUlNVQlRZUEUnKXskZXJyb3JsaXN0WyRjb3VudF1bJ0VSUk9SU1VCVFlQRSddPSAkaXRlbVsndmFsdWUnXTt9DQoJCQkgICBpZiAoJGl0ZW1bJ3RhZyddID09ICdNOlNLSVBQRURTVFJJTkcnKXskZXJyb3JsaXN0WyRjb3VudF1bJ1NLSVBQRURTVFJJTkcnXT0gJGl0ZW1bJ3ZhbHVlJ107fQ0KCQkJICAgaWYgKCRpdGVtWyd0YWcnXSA9PSAnTTpNRVNTQUdFJyl7JGVycm9ybGlzdFskY291bnRdWydNRVNTQUdFJ109ICRpdGVtWyd2YWx1ZSddO30NCgkJCX1lbHNlaWYoaXNzZXQoJFdBUk5JTkdDT1VOVCkpew0KCQkJICAgaWYgKCRpdGVtWyd0YWcnXSA9PSAnTTpMSU5FJyl7ICRjb3VudD0kY291bnQrMTskd2FybmluZ2xpc3RbJGNvdW50XVsnTElORSddPSAkaXRlbVsndmFsdWUnXTt9DQoJCQkgICBpZiAoJGl0ZW1bJ3RhZyddID09ICdNOkxFVkVMJyl7JHdhcm5pbmdsaXN0WyRjb3VudF1bJ0xFVkVMJ109ICRpdGVtWyd2YWx1ZSddO30NCgkJCSAgIGlmICgkaXRlbVsndGFnJ10gPT0gJ006TUVTU0FHRScpeyR3YXJuaW5nbGlzdFskY291bnRdWydNRVNTQUdFJ109ICRpdGVtWyd2YWx1ZSddO30NCgkJCX0NCgkJfQ0KCQkkVmFsQXJyYXk9YXJyYXkoJEVSUk9SQ09VTlQsJGVycm9ybGlzdCwkV0FSTklOR0NPVU5ULCR3YXJuaW5nbGlzdCk7DQoJCXJldHVybiAkVmFsQXJyYXk7DQoJfQ0KCXB1YmxpYyBmdW5jdGlvbiBWYWxDU1N3YXJuaW5ncygkc0lEKXsNCgkJLy9pZigkX1NFUlZFUlsiU0VSVkVSX05BTUUiXT09J2xvY2FsaG9zdCd8fCRfU0VSVkVSWyJTRVJWRVJfTkFNRSJdPT0nMTI3LjAuMC4xJylyZXR1cm47DQoJCS8qDQoJCSAqIEB0b2RvIHJlbW92ZSB0aGUgdmVyc2lvbiBjaGVjayANCgkJICogDQoJCSovDQoJCWlmKHZlcnNpb25fY29tcGFyZShDTVNfVkVSU0lPTiwnMS45LWJldGExJykgPj0gMCApew0KCQkJJG1vZD1jbXNfdXRpbHM6OmdldF9tb2R1bGUoJ1NjcmlwdERlcGxveScpOw0KCQl9ZWxzZXsNCgkJCWdsb2JhbCAkZ0NtczsNCgkJCQkJJG1vZD0kZ0Ntcy0+bW9kdWxlc1snU2NyaXB0RGVwbG95J11bJ29iamVjdCddOw0KCQl9DQoJCSRwcm9maWxlID0gJG1vZC0+R2V0UHJlZmVyZW5jZSgnQ1NTcHJvZmlsZScsICJjc3MyMSIpOw0KCQkkbGFuZyA9ICRtb2QtPkdldFByZWZlcmVuY2UoJ1ZBTExhbmcnLCAiZW4iKTsJCQkJCQkJCQkJCQkJCQkJCQkJDQoJCSR3YXJuaW5nID0gJG1vZC0+R2V0UHJlZmVyZW5jZSgndzNjQ1NTd2FybmluZycsICIyIik7CQkJCQkJCQkJCQkJCQkJCQkJCQ0KCQkkdXNlcm1lZGl1bSA9ICRtb2QtPkdldFByZWZlcmVuY2UoJ3VzZXJtZWRpdW0nLCAiYWxsIik7CQkJCQkJCQkJCQkJCQkJCQkJCQ0KCQkkZGlzcGxheT0kbW9kLT5HZXRQcmVmZXJlbmNlKCdTaG93VmFsJywnMCcpOw0KCQkNCgkJJFZhbEFycmF5ID0gc2VsZjo6cmV0cmlldmVDU1NWYWwoJHNJRCwkcHJvZmlsZSwkbGFuZywkd2FybmluZywkdXNlcm1lZGl1bSk7DQoJCXNsZWVwKDEpOw0KCQkkdmVyZGljdD0nJzsNCg0KCQlpZigkVmFsQXJyYXlbMl0hPTApCXsNCgkJCSR2ZXJkaWN0PSc8YnIvPicuJFZhbEFycmF5WzJdLicgJy5wYXJlbnQ6OkxhbmcoJ1dhcm5pbmdzJykuJzxici8+JzsNCg0KCQkJJGNvdW50PTE7DQoJCQlmb3JlYWNoICgkVmFsQXJyYXlbM10gYXMgJGl0ZW0pIHsNCgkJCQkJJHZlcmRpY3QuPSI8aDM+V2FybmluZyAjJGNvdW50PC9oMz4iOwkNCgkJCQkJJHZlcmRpY3QuPSI8YSBocmVmPVwiI1wiIGNsYXNzPVwiZ29MaW5lXCI+PHN0cm9uZz4iLiRtb2QtPkxhbmcoJ0xJTkUnKS4iIDogfiA8L3N0cm9uZz48c3BhbiBjbGFzcz1cImxpbmVcIj4iLiRpdGVtWydMSU5FJ10uIjwvc3Bhbj48L2E+PGJyLz4iOwkNCgkJCQkJJHZlcmRpY3QuPSI8c3Ryb25nPiIuJG1vZC0+TGFuZygnTEVWRUwnKS4iIDogPC9zdHJvbmc+Ii4kaXRlbVsnTEVWRUwnXS4iPGJyLz4iOw0KCQkJCQkkdmVyZGljdC49IjxzdHJvbmc+Ii4kbW9kLT5MYW5nKCdNRVNTQUdFJykuIiA6IDwvc3Ryb25nPiIuJGl0ZW1bJ01FU1NBR0UnXS4iPGJyLz4iOw0KCQkJCQkkY291bnQrKzsNCgkJCX0NCgkJfQ0KCQlyZXR1cm4gJHZlcmRpY3Q7DQoJfQ0KCXB1YmxpYyBmdW5jdGlvbiBWYWxDU1NlcnJvcnMoJHNJRCl7DQoJCS8vaWYoJF9TRVJWRVJbIlNFUlZFUl9OQU1FIl09PSdsb2NhbGhvc3QnfHwkX1NFUlZFUlsiU0VSVkVSX05BTUUiXT09JzEyNy4wLjAuMScpcmV0dXJuOw0KCQkvKg0KCQkgKiBAdG9kbyByZW1vdmUgdGhlIHZlcnNpb24gY2hlY2sgDQoJCSAqIA0KCQkqLw0KCQlpZih2ZXJzaW9uX2NvbXBhcmUoQ01TX1ZFUlNJT04sJzEuOS1iZXRhMScpID49IDAgKXsNCgkJCSRtb2Q9Y21zX3V0aWxzOjpnZXRfbW9kdWxlKCdTY3JpcHREZXBsb3knKTsNCgkJfWVsc2V7DQoJCQlnbG9iYWwgJGdDbXM7DQoJCQkJCSRtb2Q9JGdDbXMtPm1vZHVsZXNbJ1NjcmlwdERlcGxveSddWydvYmplY3QnXTsNCgkJfQ0KCQkkcHJvZmlsZSA9ICRtb2QtPkdldFByZWZlcmVuY2UoJ0NTU3Byb2ZpbGUnLCAiY3NzMjEiKTsNCgkJJGxhbmcgPSAkbW9kLT5HZXRQcmVmZXJlbmNlKCdWQUxMYW5nJywgImVuIik7CQkJCQkJCQkJCQkJCQkJCQkJCQ0KCQkkd2FybmluZyA9ICRtb2QtPkdldFByZWZlcmVuY2UoJ3czY0NTU3dhcm5pbmcnLCAiMiIpOwkJCQkJCQkJCQkJCQkJCQkJCQkNCgkJJHVzZXJtZWRpdW0gPSAkbW9kLT5HZXRQcmVmZXJlbmNlKCd1c2VybWVkaXVtJywgImFsbCIpOw0KCQkkZGlzcGxheT0kbW9kLT5HZXRQcmVmZXJlbmNlKCdTaG93VmFsJywnMCcpOw0KDQoJCSR2ZXJkaWN0PScnOw0KCQkkY291bnQ9MTsNCgkJJHNraXBDb3VudD0wOw0KCQkkdmVyZGljdE1BU1M9Jyc7DQoJCSR2YWxJdCA9IG5ldyBzZFZhbCgpOw0KCQkkVmFsQXJyYXkgPSAkdmFsSXQtPnJldHJpZXZlQ1NTVmFsKCRzSUQsJHByb2ZpbGUsJGxhbmcsJHdhcm5pbmcsJHVzZXJtZWRpdW0pOw0KCQlzbGVlcCgxKTsNCgkJJFNLSVBQRURTVFJJTkc9Jyc7DQoJCSRFUlJPUlNVQlRZUEU9Jyc7DQoJCQ0KCQlpZigkVmFsQXJyYXlbMF0hPTApCXsNCgkJCQ0KCQkJZm9yZWFjaCAoJFZhbEFycmF5WzFdIGFzICRpdGVtKSB7DQoJCQkJJHNraXA9ZmFsc2U7DQoJCQkJJGZpbHRlclByb3A9JG1vZC0+R2V0UHJlZmVyZW5jZSgiZmlsdGVyUHJvcCIsJycpOw0KCQkJCWlmKGlzc2V0KCRpdGVtWydTS0lQUEVEU1RSSU5HJ10pKXskU0tJUFBFRFNUUklORz0kaXRlbVsnU0tJUFBFRFNUUklORyddO30NCgkJCQkkTUVTU0FHRT0kaXRlbVsnTUVTU0FHRSddOw0KCQkJCWlmKGlzc2V0KCRpdGVtWydFUlJPUlNVQlRZUEUnXSkpeyRFUlJPUlNVQlRZUEU9JGl0ZW1bJ0VSUk9SU1VCVFlQRSddO30NCgkJCQkkRVJST1JUWVBFPSRpdGVtWydFUlJPUlRZUEUnXTsNCgkJCQkNCgkJCQkkZmlsdGVyUHJvcEFycmF5PWV4cGxvZGUoJywnLCRmaWx0ZXJQcm9wKTsNCgkJCQlmb3JlYWNoKCRmaWx0ZXJQcm9wQXJyYXkgYXMgJFByb3Apew0KCQkJCQkkcG9zID0gQHN0cnBvcygkU0tJUFBFRFNUUklORywkUHJvcCk7DQoJCQkJCSRwb3MyID0gQHN0cnBvcygkTUVTU0FHRSwkUHJvcCk7DQoJCQkJCQ0KCQkJCQlpZihAc3RycG9zKCRTS0lQUEVEU1RSSU5HLCRQcm9wKSE9PSBmYWxzZSkgew0KCQkJCQkJLy9lY2hvICRTS0lQUEVEU1RSSU5HLictLScuJFByb3AuJ3RydWU8YnIvPic7DQoJCQkJCQkkc2tpcD10cnVlOw0KCQkJCQkJJHNraXBDb3VudCs9MTsNCgkJCQkJfQ0KCQkJCQlpZihAc3RycG9zKCRNRVNTQUdFLCRQcm9wKSE9PSBmYWxzZSkgew0KCQkJCQkJLy9lY2hvICRNRVNTQUdFLictLScuJFByb3AuJ3RydWU8YnIvPic7DQoJCQkJCQkkc2tpcD10cnVlOw0KCQkJCQkJJHNraXBDb3VudCs9MTsNCgkJCQkJfQ0KCQkJCX0NCgkJCQkNCgkJCQlpZigkc2tpcD09ZmFsc2Upew0KCQkJCQkkdmVyZGljdE1BU1MuPSI8aDM+RXJyb3IgIyRjb3VudDwvaDM+IjsJDQoJCQkJCSR2ZXJkaWN0TUFTUy49IjxhIGhyZWY9XCJqYXZhc2NyaXB0OnZvaWQoMClcIiBjbGFzcz1cImdvTGluZVwiPjxzdHJvbmc+Ii4kbW9kLT5MYW5nKCdMSU5FJykuIiA6IH4gPC9zdHJvbmc+PHNwYW4gY2xhc3M9XCJsaW5lXCI+Ii4kaXRlbVsnTElORSddLiI8L3NwYW4+PC9hPjxici8+IjsJDQoJCQkJCSR2ZXJkaWN0TUFTUy49IjxzdHJvbmc+Ii4kbW9kLT5MYW5nKCdUWVBFJykuIiA6IDwvc3Ryb25nPiIuJEVSUk9SVFlQRS4iPGJyLz4iOw0KCQkJCQkkdmVyZGljdE1BU1MuPSI8c3Ryb25nPiIuJG1vZC0+TGFuZygnU1VCVFlQRScpLiIgOiA8L3N0cm9uZz4iLiRFUlJPUlNVQlRZUEUuIjxici8+IjsNCgkJCQkJJHZlcmRpY3RNQVNTLj0iPHN0cm9uZz4iLiRtb2QtPkxhbmcoJ1NUUklORycpLiIgOiA8L3N0cm9uZz4iLiRTS0lQUEVEU1RSSU5HLiI8YnIvPiI7DQoJCQkJCSR2ZXJkaWN0TUFTUy49IjxzdHJvbmc+Ii4kbW9kLT5MYW5nKCdNRVNTQUdFJykuIiA6IDwvc3Ryb25nPiIuJE1FU1NBR0UuIjxici8+IjsNCgkJCQkJJGNvdW50Kys7DQoJCQkJfQ0KCQkJfQ0KCQkJDQoJCQkkdmVyZGljdD0kVmFsQXJyYXlbMF0uJyAnLiRtb2QtPkxhbmcoJ0Vycm9ycycpOw0KCQkJDQoJCQlpZigkc2tpcENvdW50IT0wKXsNCgkJCQkkdmVyZGljdC49JygnLiRza2lwQ291bnQuJyAnLiRtb2QtPkxhbmcoJ2hpZGRlbicpLicpXHJcbic7DQoJCQl9DQoJCQkkdmVyZGljdC49JHZlcmRpY3RNQVNTOw0KCQl9DQoJCWlmKCRza2lwQ291bnQ9PSRWYWxBcnJheVswXSl7DQoJCQkkdmVyZGljdD0nJzsNCgkJfQ0KCQlyZXR1cm4gJHZlcmRpY3Q7DQoJfQ0KCQ0KCXB1YmxpYyBmdW5jdGlvbiB2YWxfSXQoJGV4dCwkc0lELCRhamF4PWZhbHNlKXsNCgkJLyoNCgkJICogQHRvZG8gcmVtb3ZlIHRoZSB2ZXJzaW9uIGNoZWNrIA0KCQkgKiANCgkJKi8NCgkJaWYodmVyc2lvbl9jb21wYXJlKENNU19WRVJTSU9OLCcxLjktYmV0YTEnKSA+PSAwICl7DQoJCQkkbW9kPWNtc191dGlsczo6Z2V0X21vZHVsZSgnU2NyaXB0RGVwbG95Jyk7DQoJCX1lbHNlew0KCQkJZ2xvYmFsICRnQ21zOw0KCQkJJG1vZD0kZ0Ntcy0+bW9kdWxlc1snU2NyaXB0RGVwbG95J11bJ29iamVjdCddOw0KCQl9DQoJCWNtc21zKCktPnNtYXJ0eS0+YXNzaWduKCdXX2lucHV0JywnJyk7DQoJCWNtc21zKCktPnNtYXJ0eS0+YXNzaWduKCdFX2lucHV0JywnJyk7DQoJCWNtc21zKCktPnNtYXJ0eS0+YXNzaWduKCdub3RlZCcsJycpOw0KCQljbXNtcygpLT5zbWFydHktPmFzc2lnbigncmVwb3J0JywnJyk7DQoJCWNtc21zKCktPnNtYXJ0eS0+YXNzaWduKCdtb2RlJywgJ2VkaXQnICk7IA0KCQlpZigkZXh0PT0nQ1NTJyl7DQoJCQkkd2FybmluZyA9ICRtb2QtPkdldFByZWZlcmVuY2UoJ3czY0NTU3dhcm5pbmcnLCAiMiIpOwkJDQoJCQlpZigkd2FybmluZyE9J25vJyl7JFdfaW5wdXQ9c2VsZjo6VmFsQ1NTd2FybmluZ3MoJHNJRCk7fWVsc2V7JFdfaW5wdXQ9Jyc7fQ0KCQkJJEVfaW5wdXQ9c2VsZjo6VmFsQ1NTZXJyb3JzKCRzSUQpOw0KCQkJaWYoJFdfaW5wdXQhPScnfHwkRV9pbnB1dCE9Jycpew0KCQkJCWNtc21zKCktPnNtYXJ0eS0+YXNzaWduKCdXX2lucHV0JywkV19pbnB1dCk7DQoJCQkJY21zbXMoKS0+c21hcnR5LT5hc3NpZ24oJ0VfaW5wdXQnLCRFX2lucHV0KTsNCgkJCX1lbHNlaWYoJFdfaW5wdXQ9PScnJiYkRV9pbnB1dD09Jycpew0KCQkJCWNtc21zKCktPnNtYXJ0eS0+YXNzaWduKCdWQWxlZCcsJzxpbWcgc3R5bGU9ImJvcmRlcjowO3dpZHRoOjg4cHg7aGVpZ2h0OjMxcHgic3JjPSJodHRwOi8vamlnc2F3LnczLm9yZy9jc3MtdmFsaWRhdG9yL2ltYWdlcy92Y3NzLWJsdWUiYWx0PSJWYWxpZCBDU1MhIiAvPicpOw0KCQkJCWlmKCRtb2QtPkdldFByZWZlcmVuY2UoImZpbHRlclByb3AiLCcnKSE9Jycpew0KCQkJCQljbXNtcygpLT5zbWFydHktPmFzc2lnbignbm90ZWQnLCRtb2QtPkxhbmcoJ1llc1ZBbGFzdGVyJykpOwkNCgkJCQl9DQoJCQl9DQoJCX0NCgkJaWYoJGFqYXg9PXRydWUpew0KCQkJcmV0dXJuICRtb2QtPlByb2Nlc3NUZW1wbGF0ZSgndmFsX3RlbXBsYXRlLnRwbCcpOw0KCQl9DQoJfQ0KCQ0KCQ0KCQ0KCQ0KCS8qKg0KCSogQ2hlY2sgZm9yIGVycm9ycyBhbmQgd2FybmluZ3MgZm9yIGh0bWwgYW5kIGxpa2UuDQoJKg0KCSoNCgkqIEB0b2RvIFB1bGwgb3V0IHRvIGEgdmFsaWRhdGlvbiBjbGFzcw0KCSogQHBhcmFtIGludGVnZXIgJGlkIC4NCgkqIEBwYXJhbSBzdHJpbmcgJGxhbmcgLg0KCSogQHBhcmFtIGludGVnZXIgJHdhcm5pbmcgLg0KCSogQHBhcmFtIHN0cmluZyAkdXNlcm1lZGl1bSAuDQoJKiBAcmV0dXJuIGFycmF5IHRoaXMgaXMgYW4gYXJyYXkgb2YgdGhlIGVycm9ycyBhbmQgd2FybmluZ3MgZm9yIGNzcw0KCSovDQoJcHVibGljIGZ1bmN0aW9uIHJldHJpZXZlSFRNTFZhbCggJGlkLCAkbGFuZz0iZW4iLCAkZG9jdHlwZT0iWEhUTUwgMS4wIFRyYW5zaXRpb25hbCIsICR2ZXJib3NlPTEpIHsNCgkJDQoJCWlmKHZlcnNpb25fY29tcGFyZShDTVNfVkVSU0lPTiwnMS45LWJldGExJykgPj0gMCApew0KCQkJJG1vZD1jbXNfdXRpbHM6OmdldF9tb2R1bGUoJ1NjcmlwdERlcGxveScpOw0KCQl9ZWxzZXsNCgkJCWdsb2JhbCAkZ0NtczsNCgkJCSRtb2Q9JGdDbXMtPm1vZHVsZXNbJ1NjcmlwdERlcGxveSddWydvYmplY3QnXTsNCgkJfQ0KCQkkY29uZmlnID0gY21zbXMoKS0+R2V0Q29uZmlnKCk7IA0KCQkkSUQ9JGlkOw0KDQoJCSRmaWxlYmFzZW5hbWU9JElEOw0KDQoJCSRmaWxlbmFtZT0kY29uZmlnWyd1cGxvYWRzX3BhdGgnXS4iL2xpYi9TRC10ZW1wL1ZBTC90ZW1wbGF0ZXMvJElELmh0bWwiOw0KCQlpZihmaWxlX2V4aXN0cygkZmlsZW5hbWUpKXsNCgkJCQkJdW5saW5rICgkZmlsZW5hbWUpOw0KCQl9DQoNCgkJJFNtYXJ0eU9uPSB0cnVlOw0KCQkkUHJvY2Nlc3MgPSBuZXcgc2NyaXB0UHJvY2Vzc2luZygpOw0KCQkkZGF0YT0kUHJvY2Nlc3MtPlByb2NjZXNzU0QoJElELCdzaW5nbGUnLCRTbWFydHlPbixmYWxzZSwnaHRtbCcsdHJ1ZSwnY29yZScpOw0KDQoJCSRldmVudCA9ICRkYXRhWzBdOw0KDQoJCWlmKCFmaWxlX2V4aXN0cygkY29uZmlnWyd1cGxvYWRzX3BhdGgnXS4iL2xpYi9TRC10ZW1wL1ZBTC90ZW1wbGF0ZXMiKSl7DQoJCQlta2RpcigkY29uZmlnWyd1cGxvYWRzX3BhdGgnXS4iL2xpYi9TRC10ZW1wL1ZBTC90ZW1wbGF0ZXMiLCAwNzc3LCB0cnVlKTsNCgkJfQ0KCQkNCgkJJG91ckZpbGVOYW1lID0gJGZpbGVuYW1lOw0KCQkkb3VyRmlsZUhhbmRsZSA9IGZvcGVuKCRvdXJGaWxlTmFtZSwgJ3cnKSBvciBkaWUoImNhbid0IG9wZW4gZmlsZSIpOw0KCQlmY2xvc2UoJG91ckZpbGVIYW5kbGUpOw0KCQkvLyBHRVQgTEVOR1RILCBBTkQgU1RPUkUgREFUQSBUTyBPVVIgU0VSVkVSIChPUiBEQVRBIEJBU0UpDQoJCSRsZW4gPSBzdHJsZW4oJGV2ZW50KTsNCgkJJGNoayA9IGZpbGVfcHV0X2NvbnRlbnRzKCRmaWxlbmFtZSwgJGV2ZW50KTsNCgkJLy8gVEVTVCBGT1IgU1VDQ0VTU0ZVTCBTVE9SQUdFDQoJCWlmICgkbGVuIT0kY2hrKSBkaWUoIkxFTkdUSCBNSVNNQVRDSCIpOw0KDQoJCSRmaWxlTElOSz0kY29uZmlnWyd1cGxvYWRzX3VybCddLiIvbGliL1NELXRlbXAvVkFML3RlbXBsYXRlcy8kSUQuaHRtbCI7DQoJCS8vJGppZ3Nhd1VybCA9ICJodHRwOi8vamlnc2F3LnczLm9yZy9jc3MtdmFsaWRhdG9yL3ZhbGlkYXRvcj9vdXRwdXQ9c29hcDEyJnByb2ZpbGU9JHByb2ZpbGUmbGFuZz0kbGFuZyZ3YXJuaW5nPSR3YXJuaW5nJnVzZXJtZWRpdW09JHVzZXJtZWRpdW0mdXJpPSRmaWxlTElOSyI7DQoNCgkJJGV2ZW50PXVybGVuY29kZSh1dGY4X2VuY29kZSgkZXZlbnQpKTsNCgkJJHczY1VybCA9ICJodHRwOi8vamlnc2F3LnczLm9yZy9jc3MtdmFsaWRhdG9yL3ZhbGlkYXRvcj9vdXRwdXQ9c29hcDEyJnByb2ZpbGU9JHByb2ZpbGUmYW1wO2xhbmc9JGxhbmcmd2FybmluZz0kd2FybmluZyZ1c2VybWVkaXVtPSR1c2VybWVkaXVtJnRleHQ9JGV2ZW50IjsNCgkJLy8kamlnc2F3VXJsID0gImh0dHA6Ly9qaWdzYXcudzMub3JnL2Nzcy12YWxpZGF0b3IvdmFsaWRhdG9yIjsNCgkJLy8kb2JqID0gZmlsZV9nZXRfY29udGVudHMoJGppZ3Nhd1VybCk7DQoNCgkJJGhlYWRlcnMgPSBhcnJheSgpOw0KCQkkcmV0cnkgPSAzOw0KCQkkZGF0YT0nJzsNCgkJJGh0dHAgPSBuZXcgY21zbXNfaHR0cCgpOw0KCQkkb2JqID0gJGh0dHAtPmNtc21zX2h0dHBfcmVxdWVzdCgkdzNjVXJsLCAkaGVhZGVycywgJ0dFVCcsICRkYXRhLCAkcmV0cnkpOw0KCQkvL3ByaW50X3IoJzxwcmU+Jyk7DQoJCS8vcHJpbnRfcigkb2JqKTsNCgkJLy9wcmludF9yKCc8L3ByZT4nKTsNCgkJDQoJCWlmKCRtb2QtPkdldFByZWZlcmVuY2UoJ2RlYnVnSVQnKT09dHJ1ZSlwcmludCgiVmFsaWRhdGlvbiBTdGF0dXMgQ29kZSIuJG9iai0+Y29kZS4iPGJyLz4iKTsNCgkJaWYoJG9iai0+Y29kZSE9MjAwKXJldHVybjsNCgkJJENTU3ZhbFhtbE9iamVjdCA9IG5ldyBTaW1wbGVYTUxFbGVtZW50KCRvYmotPmRhdGEpOw0KCQkNCgkJJHAgPSB4bWxfcGFyc2VyX2NyZWF0ZSgpOw0KCQl4bWxfcGFyc2VfaW50b19zdHJ1Y3QoJHAsICRvYmotPmRhdGEsICR2YWxzLCAkaW5kZXgpOw0KCQl4bWxfcGFyc2VyX2ZyZWUoJHApOw0KDQoJCSRlcnJvcmxpc3Q9YXJyYXkoKTsNCg0KCQkkd2FybmluZ2xpc3Q9YXJyYXkoKTsNCgkJZm9yZWFjaCAoJHZhbHMgYXMgJGl0ZW0pIHsNCgkJLy8JZWNobyAiPHByZT4iOw0KCQkvLyAgIHByaW50X3IoJGl0ZW0pOyANCgkJLy8gICBlY2hvICJcblxuIjsNCgkJLy8gICBlY2hvICI8L3ByZT4iOw0KCQkgICBpZiAoJGl0ZW1bJ3RhZyddID09ICdNOkVSUk9SQ09VTlQnKXskRVJST1JDT1VOVD0gJGl0ZW1bJ3ZhbHVlJ107JGNvdW50PTA7fQ0KCQkgICBpZiAoJGl0ZW1bJ3RhZyddID09ICdNOldBUk5JTkdDT1VOVCcpeyRXQVJOSU5HQ09VTlQ9ICRpdGVtWyd2YWx1ZSddOyRjb3VudD0wO30NCgkJCWlmKCFpc3NldCgkV0FSTklOR0NPVU5UKSl7DQoJCQkgICBpZiAoJGl0ZW1bJ3RhZyddID09ICdNOkxJTkUnKXskY291bnQ9JGNvdW50KzE7JGVycm9ybGlzdFskY291bnRdWydMSU5FJ109ICRpdGVtWyd2YWx1ZSddO30NCgkJCSAgIGlmICgkaXRlbVsndGFnJ10gPT0gJ006RVJST1JUWVBFJyl7JGVycm9ybGlzdFskY291bnRdWydFUlJPUlRZUEUnXT0gJGl0ZW1bJ3ZhbHVlJ107fQ0KCQkJICAgaWYgKCRpdGVtWyd0YWcnXSA9PSAnTTpFUlJPUlNVQlRZUEUnKXskZXJyb3JsaXN0WyRjb3VudF1bJ0VSUk9SU1VCVFlQRSddPSAkaXRlbVsndmFsdWUnXTt9DQoJCQkgICBpZiAoJGl0ZW1bJ3RhZyddID09ICdNOlNLSVBQRURTVFJJTkcnKXskZXJyb3JsaXN0WyRjb3VudF1bJ1NLSVBQRURTVFJJTkcnXT0gJGl0ZW1bJ3ZhbHVlJ107fQ0KCQkJICAgaWYgKCRpdGVtWyd0YWcnXSA9PSAnTTpNRVNTQUdFJyl7JGVycm9ybGlzdFskY291bnRdWydNRVNTQUdFJ109ICRpdGVtWyd2YWx1ZSddO30NCgkJCX1lbHNlaWYoaXNzZXQoJFdBUk5JTkdDT1VOVCkpew0KCQkJICAgaWYgKCRpdGVtWyd0YWcnXSA9PSAnTTpMSU5FJyl7ICRjb3VudD0kY291bnQrMTskd2FybmluZ2xpc3RbJGNvdW50XVsnTElORSddPSAkaXRlbVsndmFsdWUnXTt9DQoJCQkgICBpZiAoJGl0ZW1bJ3RhZyddID09ICdNOkxFVkVMJyl7JHdhcm5pbmdsaXN0WyRjb3VudF1bJ0xFVkVMJ109ICRpdGVtWyd2YWx1ZSddO30NCgkJCSAgIGlmICgkaXRlbVsndGFnJ10gPT0gJ006TUVTU0FHRScpeyR3YXJuaW5nbGlzdFskY291bnRdWydNRVNTQUdFJ109ICRpdGVtWyd2YWx1ZSddO30NCgkJCX0NCgkJfQ0KCQkkVmFsQXJyYXk9YXJyYXkoJEVSUk9SQ09VTlQsJGVycm9ybGlzdCwkV0FSTklOR0NPVU5ULCR3YXJuaW5nbGlzdCk7DQoJCXJldHVybiAkVmFsQXJyYXk7DQoJfQ0KCQ0KCQ0KCQ0KCQ0KfQ==]]></data>
	</file>
	<file>
	  <filename>/lib/class.sd_filehandling.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCi8qKg0KICogTW9kdWxlOiBTY3JpcHREZXBsb3kgLSBNaW5pZnkgYW5kIGRlcGxveW1lbnQgb2YgSlMgQ1NTIGFuZCBIVE1MDQogKiANCiAqIA0KICogQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykNCiAqIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnDQogKiBUaGUgbW9kdWxlJ3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvc2NyaXB0ZGVwbG95Lw0KICogDQogKiBAcGFja2FnZSBTY3JpcHREZXBsb3kNCiAqIEBhdXRob3IgamVyZW15QmFzcyA8amVyZW15QmFzc0BjYWJsZW9uZS5uZXQ+DQogKiBAY29weXJpZ2h0IEplcmVteSBCYXNzDQogKiBAbGljZW5zZSBodHRwOi8vd3d3LmdudS5vcmcvY29weWxlZnQvZ3BsLmh0bWwgRnJlZWx5IGF2YWlsYWJsZSB1bmRlciBHUEwNCiAqLyANCg0KLy9pZiAoIWlzc2V0KGNtc21zKCkpKSBleGl0Ow0KY2xhc3Mgc2RfZmlsZWhhbmRsaW5nIGV4dGVuZHMgU2NyaXB0RGVwbG95ew0KDQoNCgkgIHB1YmxpYyBmdW5jdGlvbiBfX2NvbnN0cnVjdCgpew0KCSAgfQ0KDQoJLyoqDQoJKiBSZWN1cnNpdmVseSBkZWxldGUgZmlsZXMgYW5kIGZvbGRlcnMuDQoJKg0KCSogQHRvZG8gUHVsbCBvdXQgdG8gYSBmaWxlX20gY2xhc3MNCgkqIEBwYXJhbSBzdHJpbmcgJGRpciB3aGljaCBkaXJlY3RvcnkgdG8gc3RhcnQgcmVjdXJzaXZlbHkgZGVsZXRpbmcgdGhlIGZpbGVzIGFuZCBmb2xkZXJzLg0KCSoNCgkqIEByZXR1cm4gYm9vbGVhbg0KCSovDQoJcHJvdGVjdGVkIGZ1bmN0aW9uIHJlY3Vyc2l2ZV9ybWRpcigkZGlyKXsNCgkJJGZIID0gbmV3IHNkX2ZpbGVoYW5kbGluZygpOw0KCQkkbG9nID0gbmV3IHNkX2xvZ2dpbigpOyANCgkJLy8gYWxsIHN1YmRpcmVjdG9yaWVzIGFuZCBjb250ZW50czoNCgkJaWYoaXNfZGlyKCRkaXIpKXsNCgkJCSRkaXJfaGFuZGxlPW9wZW5kaXIoJGRpcik7DQoJCX1lbHNleyANCgkJCSRsb2ctPl9kb0F1ZGl0KCAnZGVzdHJveScgLCAnZXJyb3InLCAkdGhpcy0+TGFuZygnZW1wdHljYWNoZUVycm9yX2RvQXVkaXQnKS4iICRkaXIiKTsNCgkJCXJldHVybiBmYWxzZTsNCgkJfQ0KCQl3aGlsZSgkZmlsZT1yZWFkZGlyKCRkaXJfaGFuZGxlKSkNCgkJew0KCQlpZigkZmlsZSE9Ii4iICYmICRmaWxlIT0iLi4iKQ0KCQl7DQoJCWlmKCFpc19kaXIoJGRpci4iLyIuJGZpbGUpKXVubGluayAoJGRpci4iLyIuJGZpbGUpOw0KCQllbHNlICRmSC0+cmVjdXJzaXZlX3JtZGlyKCRkaXIuIi8iLiRmaWxlKTsNCgkJfQ0KCQl9DQoJCWNsb3NlZGlyKCRkaXJfaGFuZGxlKTsNCgkJcm1kaXIoJGRpcik7DQoJCQ0KCQlyZXR1cm4gdHJ1ZTsNCgl9DQoJDQoJLyoqDQoJKiBHZXQgaW5mb21hdGlvbiBvbiB0aGUgZm9sZGVyIGFuZCBpdCdzIGZpbGVzLg0KCSoNCgkqIEB0b2RvIFB1bGwgb3V0IHRvIGEgZmlsZV9tIGNsYXNzDQoJKiBAcGFyYW0gc3RyaW5nICRkaXIgd2hpY2ggZGlyZWN0b3J5IHRvIHN0YXJ0IHJldHVybmluZyBpbmZvIG9uIHRoZSBmaWxlcyBhbmQgZm9sZGVycy4NCgkqIEBwYXJhbSBib29sZWFuICRyZWN1cnNlIHNob3VsZCB3ZSBiZSByZWN1cnNpdmVseSBnZXR0aW5nIHRoZSBpbmZvcm1hdGlvbi4NCgkqIEByZXR1cm4gYm9vbGVhbg0KCSovDQoJcHVibGljIGZ1bmN0aW9uIHByb2Nlc3NfZGlyKCRkaXIsICRyZWN1cnNlPWZhbHNlKXsNCgkJDQoJCSRjb25maWcgPSBjbXNtcygpLT5HZXRDb25maWcoKTsgDQoJCSRmSCA9IG5ldyBzZF9maWxlaGFuZGxpbmcoKTsNCg0KCQkjIGFycmF5IHRvIGhvbGQgcmV0dXJuIHZhbHVlDQoJCSRyZXR2YWwgPSBhcnJheSgpOw0KCQkjIGFkZCB0cmFpbGluZyBzbGFzaCBpZiBtaXNzaW5nDQoJCWlmKHN1YnN0cigkZGlyLCAtMSkgIT0gIi8iKSAkZGlyIC49ICIvIjsNCgkNCgkJIyBvcGVuIHBvaW50ZXIgdG8gZGlyZWN0b3J5IGFuZCByZWFkIGxpc3Qgb2YgZmlsZXMNCgkJJGQgPSBAZGlyKCRkaXIpOw0KCQlpZiggJGQ9PWZhbHNlKXtyZXR1cm4gZmFsc2U7fQ0KCQl3aGlsZShmYWxzZSAhPT0gKCRlbnRyeSA9ICRkLT5yZWFkKCkpKSB7DQoJCSAgIyBza2lwIGhpZGRlbiBmaWxlcw0KCQkgIGlmKCRlbnRyeVswXSA9PSAiLiIpIGNvbnRpbnVlOw0KCQkgIGlmKGlzX2RpcigiJGRpciRlbnRyeSIpKSB7DQoJCQkgICAkZGlySXMgPSBzdHJfcmVwbGFjZSgkY29uZmlnWydyb290X3BhdGgnXSwgIiIsICRkaXIpOw0KCQkJJHJldHZhbFtdID0gYXJyYXkoDQoJCQkgICJuYW1lIiA9PiAiLi4uJGRpcklzJGVudHJ5LyIsDQoJCQkgICJ0eXBlIiA9PiBmaWxldHlwZSgiJGRpciRlbnRyeSIpLA0KCQkJICAic2l6ZSIgPT4gJy0tJywNCgkJCSAgImxhc3Rtb2QiID0+IGZpbGVtdGltZSgiJGRpciRlbnRyeSIpDQoJCQkpOw0KCQkJaWYoJHJlY3Vyc2UgJiYgaXNfcmVhZGFibGUoIiRkaXIkZW50cnkvIikpIHsNCgkJCSAgJHJldHZhbCA9IGFycmF5X21lcmdlKCRyZXR2YWwsICRmSC0+cHJvY2Vzc19kaXIoIiRkaXIkZW50cnkvIiwgdHJ1ZSkpOw0KCQkJfQ0KCQkgIH0gZWxzZWlmKGlzX3JlYWRhYmxlKCIkZGlyJGVudHJ5IikpIHsNCgkJCSAgJGRpcklzID0gc3RyX3JlcGxhY2UoJGNvbmZpZ1sncm9vdF9wYXRoJ10sICIiLCAkZGlyKTsNCgkJCSRyZXR2YWxbXSA9IGFycmF5KA0KCQkJICAibmFtZSIgPT4gIi4uLiRkaXJJcyRlbnRyeSIsDQoJCQkgLy8gInR5cGUiID0+IG1pbWVfY29udGVudF90eXBlKCIkZGlyJGVudHJ5IiksDQoJCQkgInNpemUiID0+ICR0aGlzLT5TaXplSXRVcChzdHJsZW4odXRmOF9kZWNvZGUoZmlsZV9nZXRfY29udGVudHMoIiRkaXIkZW50cnkiKSkpKSwNCgkJCSAgLy8ic2l6ZSIgPT4gJHRoaXMtPlNpemVJdFVwKGZpbGVzaXplKCIkZGlyJGVudHJ5IikpLA0KCQkJICAibGFzdG1vZCIgPT4gZmlsZW10aW1lKCIkZGlyJGVudHJ5IikNCgkJCSk7DQoJCSAgfQ0KCQl9DQoJCSRkLT5jbG9zZSgpOw0KCQlyZXR1cm4gJHJldHZhbDsNCiAgfQ0KCQ0KfQ==]]></data>
	</file>
	<file>
	  <filename>/lib/class.sd_loggin.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCi8qKg0KICogTW9kdWxlOiBTY3JpcHREZXBsb3kgLSBNaW5pZnkgYW5kIGRlcGxveW1lbnQgb2YgSlMgQ1NTIGFuZCBIVE1MDQogKiANCiAqIA0KICogQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykNCiAqIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnDQogKiBUaGUgbW9kdWxlJ3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvc2NyaXB0ZGVwbG95Lw0KICogDQogKiBAcGFja2FnZSBTY3JpcHREZXBsb3kNCiAqIEBhdXRob3IgamVyZW15QmFzcyA8amVyZW15QmFzc0BjYWJsZW9uZS5uZXQ+DQogKiBAY29weXJpZ2h0IEplcmVteSBCYXNzDQogKiBAbGljZW5zZSBodHRwOi8vd3d3LmdudS5vcmcvY29weWxlZnQvZ3BsLmh0bWwgRnJlZWx5IGF2YWlsYWJsZSB1bmRlciBHUEwNCiAqLyANCg0KLy9pZiAoIWlzc2V0KGNtc21zKCkpKSBleGl0Ow0KY2xhc3Mgc2RfbG9nZ2luIGV4dGVuZHMgU2NyaXB0RGVwbG95ew0KDQoNCgkgIHB1YmxpYyBmdW5jdGlvbiBfX2NvbnN0cnVjdCgpew0KCQlwYXJlbnQ6Ol9fY29uc3RydWN0KCk7DQoJCSR0aGlzLT5fZGF0YSA9IGFycmF5KCk7DQoJICB9DQoNCgkvKl9fX19fX19fX19fX19fX19fX19fXyovDQoJLypfX19fX19fX19fX19fX19bICBMT0dHSU5HIEFORCBNQVNTQUdJTkcgXV9fX19fX19fX19fX19fKi8NCgkvKl9fX19fX19fX19fX19fX19fX19fXyovDQoNCgkvKioNCgkqIE1ha2UgdGhlIG1vZHVsZSBsb2dzLg0KCSoNCgkqIEB0b2RvIEFkZCBtb3JlIHRvIF9kb0F1ZGl0DQoJKiANCgkqIEBwYXJhbSBzdHJpbmcgJGFjdGlvbiB3aGljaCBhY3Rpb24gd2FzIHRha2VuLg0KCSogQHBhcmFtIHN0cmluZyAkbGV2ZWwgd2hpY2ggbGV2ZWwgd2FzIHRha2VuLg0KCSogQHBhcmFtIHN0cmluZyAkbWVzcyB0aGUgbWVzc2FnZSB0byBiZSBzZW50IHRvIHRoZSBsb2cuDQoJKiBAcGFyYW0gYXJyYXkgJHBhcmFtcyBhbiBhcnJheSBvZiBwYXJhbXMgdG8gcGFzcyB0byB0aGUgbG9nLg0KCSogDQoJKiBAcmV0dXJuIHN0cmluZyBjb250YWluaW5nIHRoZSBub3RlcyBmb3IgdGhlIHNjcmlwdA0KCSovDQoJcHVibGljIGZ1bmN0aW9uIF9kb0F1ZGl0KCAkYWN0aW9uICwgJGxldmVsLCAkbWVzcz0nJyAsICRwYXJhbXM9JycgKXsNCgkJc3dpdGNoKCAkYWN0aW9uICl7DQoJCQljYXNlICdhZGQnOg0KCQkJCSRBID0gMTsNCgkJCQlicmVhazsNCgkJCQ0KCQkJY2FzZSAnZWRpdCc6IA0KCQkJCSRBID0gMjsNCgkJCQlicmVhazsNCgkJCQ0KCQkJY2FzZSAnZGVzdHJveSc6DQoJCQkJJEEgPSAzOw0KCQkJCWJyZWFrOw0KCQkJDQoJCQlkZWZhdWx0Og0KCQkJCSRBID0gMDsNCgkJCQlicmVhazsNCgkJfQ0KCQlzd2l0Y2goICRsZXZlbCApew0KCQkJY2FzZSAnZXJyb3InOiANCgkJCQkkTCA9IDE7DQoJCQkJYnJlYWs7DQoJCQkNCgkJCWNhc2UgJ29rJzoNCgkJCQkkTCA9IDA7DQoJCQkJYnJlYWs7DQoJCQkNCgkJCWRlZmF1bHQ6DQoJCQkJJEwgPSAwOw0KCQkJCWJyZWFrOw0KCQl9CSANCgkJJGl0ZW1JRD0kQS4nMCcuJEw7DQoJCWlmICgkcGFyYW1zIT0nJyl7JHBhcmFtcz0gJHBhcmFtcy4nfHwnO30NCgkJJHRoaXMtPkF1ZGl0KCAkaXRlbUlELCAnU2NyaXB0RGVwbG95JywgJHBhcmFtcy4kbWVzcyk7DQoJfQkNCgkNCgkvKioNCgkqIERpc3BsYXkgYSBzaW1wbGUgbWVzc2FnZQ0KCSovDQoJcHVibGljIGZ1bmN0aW9uIERpc3BsYXlNZXNzYWdlKCRpZCwgJiRwYXJhbXMsICRyZXR1cm5pZCwgJHRpdGxlLCAkbWVzc2FnZSl7DQoJCSR0aGlzLT5zbWFydHktPmFzc2lnbigndGl0bGUnLCAkdGl0bGUpOw0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ21lc3NhZ2UnLCAkbWVzc2FnZSk7DQoJCWVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSgnbWVzc2FnZS50cGwnKTsNCgl9DQogIA0KCS8qX19fX19fX19fX19fX19fX19fX19fKi8NCgkvKl9fX19fX19fX19fX19fX1sgIHJlcG9ydGluZyAgXV9fX19fX19fX19fX19fKi8NCgkvKl9fX19fX19fX19fX19fX19fX19fXyovDQoNCgkvKioNCgkqIEdldCB0aGUgbW9kdWxlIGxvZ3MuDQoJKg0KCSogQHRvZG8gUHVsbCBvdXQgdGhlIGhhcmQgY29kZWQgc3RydWN0dXJlDQoJKiBAcGFyYW0gaW50ZWdlciAkcGFnZSB3aGljaCBwYWdlIHRvIHN0YXJ0IG9uLg0KCSogQHBhcmFtIGludGVnZXIgJGxpbWl0IHRoZSBsaW1pdCBmb3IgdGhlIGRhdGFiYXNlIHF1ZXJ5Lg0KCSogQHBhcmFtIHN0cmluZyAkd2hlcmVBUkcgZm9yIHRoZSAuDQoJKg0KCSogQHJldHVybiBzdHJpbmcgY29udGFpbmluZyB0aGUgbm90ZXMgZm9yIHRoZSBzY3JpcHQNCgkqLw0KCXB1YmxpYyBmdW5jdGlvbiBwdWxsTG9nKCRwYWdlID0gMSAsICRsaW1pdCA9IDk5OTk5ICwgJHdoZXJlQVJHID0gJycpew0KCQkkZGIgPSAkdGhpcy0+R2V0RGIoKTsNCgkJJGRhdGVmb3JtYXQgPSB0cmltKGdldF9wcmVmZXJlbmNlKGdldF91c2VyaWQoKSwnZGF0ZV9mb3JtYXRfc3RyaW5nJywnJXggJVgnKSk7IA0KCQlpZiggZW1wdHkoJGRhdGVmb3JtYXQpICl7DQoJCQkkZGF0ZWZvcm1hdCA9ICcleCAlWCc7DQoJCX0JDQoJDQoJCSR0cnM9Jyc7DQoJCSRwYWdlX3N0cmluZyA9ICIiOw0KCQkkZnJvbSA9ICgkcGFnZSAqICRsaW1pdCkgLSAkbGltaXQ7DQoJCSR3aGVyZSA9ICcnOw0KCQlpZiAoJHdoZXJlQVJHIT0nJykgJHdoZXJlID0gJ1doZXJlICcuJHdoZXJlQVJHOw0KCQkkcmVzdWx0ID0gJGRiLT5TZWxlY3RMaW1pdCgnU0VMRUNUICogZnJvbSAnLmNtc19kYl9wcmVmaXgoKS4nYWRtaW5sb2cgJy4kd2hlcmUuJyBPUkRFUiBCWSB0aW1lc3RhbXAgREVTQycsICRsaW1pdCwgJGZyb20pOw0KCQ0KCQlpZiAoJHJlc3VsdCAmJiAkcmVzdWx0LT5SZWNvcmRDb3VudCgpID4gMCl7DQoJCQkgICB3aGlsZSAoJHJvdyA9ICRyZXN1bHQtPkZldGNoUm93KCkpIHsgDQoJCQkJCSRjb2RlPSRyb3dbIml0ZW1faWQiXSE9LTE/JHJvd1siaXRlbV9pZCJdOiIiOw0KCQkJCQkkY29kZUlzID0nPHRkIGNsYXNzPSInLiAoICgkY29kZSAlIDIpID8gJ2Vycm9yJyA6ICdvaycgKS4nIj4nLiRjb2RlLicmbmJzcDs8L3RkPic7CSAgIA0KCQkJCQkkdHJzLj0nPHRyPjx0ZD4nDQoJCQkJCS4kcm93Wyd1c2VybmFtZSddLic8L3RkPjx0ZD4nDQoJCQkJCS4kcm93Wyd1c2VyX2lkJ10uJzwvdGQ+Jw0KCQkJCQkuJGNvZGVJcy4nPCEtLTx0ZD4nDQoJCQkJCS4kcm93WydpdGVtX25hbWUnXS4nPC90ZD4tLT48dGQ+Jw0KCQkJCQkuJHJvd1snYWN0aW9uJ10uJzwvdGQ+PHRkPicNCgkJCQkJLnN0cmZ0aW1lKCRkYXRlZm9ybWF0LCRyb3dbJ3RpbWVzdGFtcCddKS4nPC90ZD48L3RyPic7DQoJCQkgICB9DQoJCQl9ZWxzZXsNCgkJCQkkdHJzLj0nPHRyPjx0ZD5FbXB0eTwvdGQ+PHRkPi0tPC90ZD48dGQ+LS08L3RkPjx0ZD4tLTwvdGQ+PHRkPi0tPC90ZD48dGQ+LS08L3RkPjwvdHI+JzsNCgkJCX0NCgkJcmV0dXJuICR0cnM7DQoJfQ0KCQ0KCQ0KCQ0KCQ0KCS8qKg0KCSogR2V0IHRoZSBub3RlcyBmb3IgYSBzY3JpcHQuDQoJKg0KCSogQHBhcmFtIHN0cmluZyAkc2lkIGNvbnRhaW5pbmcgdGhlIHNjcmlwdCBpZC4NCgkqIEByZXR1cm4gc3RyaW5nIGNvbnRhaW5pbmcgdGhlIG5vdGVzIGZvciB0aGUgc2NyaXB0DQoJKi8NCglwdWJsaWMgZnVuY3Rpb24gR2V0X05vdGVzKCRzaWQpew0KCQkkbm90ZT0nJzsNCgkJJGRiID0gJHRoaXMtPkdldERiKCk7DQoJCSRxdWVyeSA9ICJTRUxFQ1Qgbm90ZXMgRlJPTSAiLlNEX1NDUklQVE9QVElPTlMuIiBXSEVSRSBJRD0/IExJTUlUIDEiOw0KCQkkbm90ZSA9ICRkYi0+R2V0T25lKCRxdWVyeSxhcnJheSgkc2lkKSk7DQoJCXJldHVybiAkbm90ZTsNCgl9DQoNCg0KDQovLy90byByZW1vdmUNCglwdWJsaWMgZnVuY3Rpb24gTm90ZXMoJGlkLCRub3Rlcyl7DQoJCSRkaXNwbGF5PSR0aGlzLT5HZXRQcmVmZXJlbmNlKCdTaG93VmFsJywnMCcpOw0KCQkkU2hvdz0nJzsNCgkJJE5vU2hvdz0nJzsNCgkJJFNob3dCTE9DSz0nc3R5bGU9ImRpc3BsYXk6IG5vbmU7Iic7DQoJCSROb1Nob3dCTE9DSz0nc3R5bGU9ImRpc3BsYXk6IG5vbmU7Iic7DQoJCWlmKCAkZGlzcGxheT09MSl7DQoJCQkkU2hvdz0nY3VycmVudCc7DQoJCQkkU2hvd0JMT0NLPSdzdHlsZT0iZGlzcGxheTogYmxvY2s7Iic7DQoJCX1lbHNlew0KCQkJJE5vU2hvdz0nY3VycmVudCc7DQoJCQkkTm9TaG93QkxPQ0s9J3N0eWxlPSJkaXNwbGF5OiBibG9jazsiJzsNCgkJfQ0KCQkJJHZlcmRpY3Q9JzxkaXYgaWQ9Ik5PVEVhY2NvcmRpb24iPjxoMSBjbGFzcz0idG9nYWwgJy4kTm9TaG93LiciPjxzcGFuIGNsYXNzPSJDbG9zZSI+Jy4kdGhpcy0+TGFuZygnQ2xvc2UnKS4nJm5ic3A7Jm5ic3A7PC9zcGFuPjxzcGFuIGNsYXNzPSJPcGVuIj4nLiR0aGlzLT5MYW5nKCdPcGVuJykuJyZuYnNwOyZuYnNwOzwvc3Bhbj48L2gxPjxkaXYgY2xhc3M9Ik5PVEUgY2xvc2VyIiAnLiROb1Nob3dCTE9DSy4nPjwvZGl2PjxoMSBjbGFzcz0iJy4kU2hvdy4nIj4mbmJzcDsmbmJzcDsgJy4kdGhpcy0+TGFuZygnTm90ZXMnKS4nPC9oMT4nOw0KCQkJJHZlcmRpY3QuPSI8ZGl2IGNsYXNzPVwiTk9URVwiICRTaG93QkxPQ0s+IjsNCgkJCSR2ZXJkaWN0Lj0kdGhpcy0+Q3JlYXRlVGV4dEFyZWEoMCwkaWQsICRub3RlcywgJ25vdGVzX2lucHV0JywnJywnTk9URVMnLCcnLCcnLCcnLDEwKTsNCgkJCSR2ZXJkaWN0Lj0iPC9kaXY+PC9kaXY+IjsNCgkJcmV0dXJuICR2ZXJkaWN0Ow0KCX0JCQ0KfQ==]]></data>
	</file>
	<file>
	  <filename>/lib/class.Stylesheet_Record.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCi8qKg0KICogTW9kdWxlOiBTY3JpcHREZXBsb3kgLSBNaW5pZnkgYW5kIGRlcGxveW1lbnQgb2YgSlMgQ1NTIGFuZCBIVE1MDQogKiANCiAqIA0KICogQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykNCiAqIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnDQogKiBUaGUgbW9kdWxlJ3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvc2NyaXB0ZGVwbG95Lw0KICogDQogKiBAcGFja2FnZSBTY3JpcHREZXBsb3kNCiAqIEBhdXRob3IgamVyZW15QmFzcyA8amVyZW15QmFzc0BjYWJsZW9uZS5uZXQ+DQogKiBAY29weXJpZ2h0IEplcmVteSBCYXNzDQogKiBAbGljZW5zZSBodHRwOi8vd3d3LmdudS5vcmcvY29weWxlZnQvZ3BsLmh0bWwgRnJlZWx5IGF2YWlsYWJsZSB1bmRlciBHUEwNCiAqLyANCg0KLy9pZiAoIWlzc2V0KGNtc21zKCkpKSBleGl0Ow0KY2xhc3MgU3R5bGVzaGVldF9SZWNvcmQgZXh0ZW5kcyBTY3JpcHREZXBsb3l7DQogDQogIHZhciAkZ3JvdXBpZDsNCiAgdmFyICR0ZW1wbGF0ZV9pZDsNCiAgdmFyICRwcmVmZXJyZWRfc3M7DQogIHZhciAkcGVyc2lzdGVudDsNCiAgdmFyICRhbHRlcm5hdGU7DQogIA0KCSAgcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KCl7DQoJCXBhcmVudDo6X19jb25zdHJ1Y3QoKTsNCgkJJHRoaXMtPl9kYXRhID0gYXJyYXkoKTsNCgkgIH0NCgkgIA0KICBmdW5jdGlvbiBTdHlsZXNoZWV0X1JlY29yZCgkdGVtcGxhdGVpZCA9IC0xKXsNCiAgICAkdGhpcy0+dGVtcGxhdGVfaWQgPSAkdGVtcGxhdGVpZDsNCiAgICAkdGhpcy0+cGVyc2lzdGVudCA9IGFycmF5KCk7DQogICAgJHRoaXMtPmFsdGVybmF0ZSA9IGFycmF5KCk7DQogIH0NCg0KICBmdW5jdGlvbiBSZXRyaWV2ZSgkc3RyKXsNCiAgICAkb2JqID0gdW5zZXJpYWxpemUoJHN0cik7DQogICAgcmV0dXJuICRvYmo7DQogIH0NCg0KICBmdW5jdGlvbiBTdG9yZSgpew0KICAgIHJldHVybiBzZXJpYWxpemUoJHRoaXMpOw0KICB9DQoNCiAgZnVuY3Rpb24gTG9hZCgkdGVtcGxhdGVpZCl7DQogICAgDQogICAgJGRiID0gY21zbXMoKS0+R2V0RGIoKTsNCg0KICAgICRxdWVyeSA9ICdTRUxFQ1QgKiBGUk9NICcuU0RfVEFCTEUuJw0KICAgICAgICAgICAgICAgIFdIRVJFIHRlbXBsYXRlX2lkID0gPyc7DQogICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcXVlcnksIGFycmF5KCAkdGVtcGxhdGVpZCApICk7DQogICAgaWYoICEkZGJyZXN1bHQgKSByZXR1cm47DQogICAgJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKTsNCiAgICBpZiggISRyb3cgKSByZXR1cm47DQoNCiAgICAkdGhpcy0+Z3JvdXBpZCA9ICRyb3dbJ2dyb3VwaWQnXTsNCiAgICAkdGhpcy0+dGVtcGxhdGVfaWQgPSAkcm93Wyd0ZW1wbGF0ZV9pZCddOw0KICAgICR0aGlzLT5wcmVmZXJyZWRfc3MgPSAkcm93WydwcmVmZXJyZWRfc3MnXTsNCg0KICAgICRxdWVyeSA9ICdTRUxFQ1QgKiBGUk9NICcuU0RfUEVSU0lTVEVOVC4nDQogICAgICAgICAgICAgICAgIFdIRVJFIGdyb3VwaWQgPSA/JzsNCiAgICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxdWVyeSwgYXJyYXkoICR0aGlzLT5ncm91cGlkICkgKTsNCiAgICAkdGhpcy0+cGVyc2lzdGVudCA9IGFycmF5KCk7DQogICAgd2hpbGUoICRkYnJlc3VsdCAmJiAoJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKSkgKXsNCgkJJHRoaXMtPnBlcnNpc3RlbnRbXSA9ICRyb3dbJ3N0eWxlc2hlZXRfaWQnXTsNCiAgICB9DQogICAgICANCiAgICAkcXVlcnkgPSAnU0VMRUNUICogRlJPTSAnLlNEX0FMVEVSTkFURS4nDQogICAgICAgICAgICAgICAgIFdIRVJFIGdyb3VwaWQgPSA/JzsNCiAgICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxdWVyeSwgYXJyYXkoICR0aGlzLT5ncm91cGlkICkgKTsNCiAgICAkdGhpcy0+YWx0ZXJuYXRlID0gYXJyYXkoKTsNCiAgICB3aGlsZSggJGRicmVzdWx0ICYmICgkcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdygpKSApew0KCQkkdGhpcy0+YWx0ZXJuYXRlW10gPSAkcm93WydzdHlsZXNoZWV0X2lkJ107DQogICAgfQ0KICB9DQoNCiAgZnVuY3Rpb24gU2F2ZSgpew0KICAgIGlmKCAkdGhpcy0+dGVtcGxhdGVfaWQgPD0gMCApIHJldHVybjsNCiAgICANCiAgICANCiAgICAkZGIgPSBjbXNtcygpLT5HZXREYigpOw0KICAgIA0KICAgIGlmKCAkdGhpcy0+Z3JvdXBpZCA+IDAgKXsNCgkJLy8gV2UgZGVsZXRlIGV2ZXJ5dGhpbmcgZmlyc3QsIHRoZW4gYWRkIGl0IGJhY2sNCgkJJHEgPSAnREVMRVRFIEZST00gJXMgV0hFUkUgZ3JvdXBpZCA9ID8nOw0KCQkkcTEgPSBzcHJpbnRmKCRxLFNEX1RBQkxFKTsNCgkJJGRiLT5FeGVjdXRlKCAkcTEsIGFycmF5KCAkdGhpcy0+Z3JvdXBpZCApICk7DQoJDQoJCSRxMSA9IHNwcmludGYoJHEsU0RfUEVSU0lTVEVOVCk7DQoJCSRkYi0+RXhlY3V0ZSggJHExLCBhcnJheSggJHRoaXMtPmdyb3VwaWQgKSApOw0KCQ0KCQkkcTEgPSBzcHJpbnRmKCRxLFNEX0FMVEVSTkFURSk7DQoJCSRkYi0+RXhlY3V0ZSggJHExLCBhcnJheSggJHRoaXMtPmdyb3VwaWQgKSApOw0KICAgIH0NCg0KICAgICRxID0gJ0lOU0VSVCBJTlRPICcuU0RfVEFCTEUuJw0KICAgICAgICAgICAgKHRlbXBsYXRlX2lkLHByZWZlcnJlZF9zcykNCiAgICAgICAgICBWQUxVRVMgKD8sPyknOw0KICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHEsIA0KCQkJICAgICAgYXJyYXkoICR0aGlzLT50ZW1wbGF0ZV9pZCwgJHRoaXMtPnByZWZlcnJlZF9zcykpOw0KDQogICAgaWYoICEkZGJyZXN1bHQgKSBkaWUoICRkYi0+RXJyb3JNc2coKSApOyAvLyB0b2RvDQogICAgDQogICAgJHEgPSAnU0VMRUNUIGdyb3VwaWQgRlJPTSAnLlNEX1RBQkxFLicNCiAgICAgICAgICAgV0hFUkUgdGVtcGxhdGVfaWQgPSA/JzsNCiAgICAkZ3JvdXBpZCA9ICRkYi0+R2V0T25lKCRxLGFycmF5KCR0aGlzLT50ZW1wbGF0ZV9pZCkpOw0KICAgIA0KICAgICRxID0gJ0lOU0VSVCBJTlRPICcuU0RfUEVSU0lTVEVOVC4nDQogICAgICAgICAgICAgIChncm91cGlkLHN0eWxlc2hlZXRfaWQpIFZBTFVFUyAoPyw/KSc7DQogICAgZm9yZWFjaCggJHRoaXMtPnBlcnNpc3RlbnQgYXMgJHN0eWxlc2hlZXRfaWQgKSB7DQoJCSRkYi0+RXhlY3V0ZSggJHEsIGFycmF5KCAkZ3JvdXBpZCwgJHN0eWxlc2hlZXRfaWQgKSApOw0KICAgIH0NCg0KICAgICRxID0gJ0lOU0VSVCBJTlRPICcuU0RfQUxURVJOQVRFLicNCiAgICAgICAgICAgICAgKGdyb3VwaWQsc3R5bGVzaGVldF9pZCkgVkFMVUVTICg/LD8pJzsNCiAgICBmb3JlYWNoKCAkdGhpcy0+YWx0ZXJuYXRlIGFzICRzdHlsZXNoZWV0X2lkICl7DQoJCSRkYi0+RXhlY3V0ZSggJHEsIGFycmF5KCAkZ3JvdXBpZCwgJHN0eWxlc2hlZXRfaWQgKSApOw0KICAgIH0NCiAgfQ0KfQ0KDQoNCj8+]]></data>
	</file>
	<file>
	  <filename>/lib/JSMin.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCi8qKg0KICoganNtaW4ucGhwIC0gUEhQIGltcGxlbWVudGF0aW9uIG9mIERvdWdsYXMgQ3JvY2tmb3JkJ3MgSlNNaW4uDQogKg0KICogVGhpcyBpcyBwcmV0dHkgbXVjaCBhIGRpcmVjdCBwb3J0IG9mIGpzbWluLmMgdG8gUEhQIHdpdGgganVzdCBhIGZldw0KICogUEhQLXNwZWNpZmljIHBlcmZvcm1hbmNlIHR3ZWFrcy4gQWxzbywgd2hlcmVhcyBqc21pbi5jIHJlYWRzIGZyb20gc3RkaW4gYW5kDQogKiBvdXRwdXRzIHRvIHN0ZG91dCwgdGhpcyBsaWJyYXJ5IGFjY2VwdHMgYSBzdHJpbmcgYXMgaW5wdXQgYW5kIHJldHVybnMgYW5vdGhlcg0KICogc3RyaW5nIGFzIG91dHB1dC4NCiAqDQogKiBQSFAgNSBvciBoaWdoZXIgaXMgcmVxdWlyZWQuDQogKg0KICogUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCB0byB1c2UgdGhpcyB2ZXJzaW9uIG9mIHRoZSBsaWJyYXJ5IHVuZGVyIHRoZQ0KICogc2FtZSB0ZXJtcyBhcyBqc21pbi5jLCB3aGljaCBoYXMgdGhlIGZvbGxvd2luZyBsaWNlbnNlOg0KICoNCiAqIC0tDQogKiBDb3B5cmlnaHQgKGMpIDIwMDIgRG91Z2xhcyBDcm9ja2ZvcmQgICh3d3cuY3JvY2tmb3JkLmNvbSkNCiAqDQogKiBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5IG9mDQogKiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSAiU29mdHdhcmUiKSwgdG8gZGVhbCBpbg0KICogdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0cyB0bw0KICogdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbCBjb3BpZXMNCiAqIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzIGZ1cm5pc2hlZCB0byBkbw0KICogc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOg0KICoNCiAqIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbA0KICogY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS4NCiAqDQogKiBUaGUgU29mdHdhcmUgc2hhbGwgYmUgdXNlZCBmb3IgR29vZCwgbm90IEV2aWwuDQogKg0KICogVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1INCiAqIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLA0KICogRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFDQogKiBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSDQogKiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLA0KICogT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTiBUSEUNCiAqIFNPRlRXQVJFLg0KICogLS0NCiAqDQogKiBAcGFja2FnZSBKU01pbg0KICogQGF1dGhvciBSeWFuIEdyb3ZlIDxyeWFuQHdvbmtvLmNvbT4NCiAqIEBjb3B5cmlnaHQgMjAwMiBEb3VnbGFzIENyb2NrZm9yZCA8ZG91Z2xhc0Bjcm9ja2ZvcmQuY29tPiAoanNtaW4uYykNCiAqIEBjb3B5cmlnaHQgMjAwOCBSeWFuIEdyb3ZlIDxyeWFuQHdvbmtvLmNvbT4gKFBIUCBwb3J0KQ0KICogQGxpY2Vuc2UgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL21pdC1saWNlbnNlLnBocCBNSVQgTGljZW5zZQ0KICogQHZlcnNpb24gMS4xLjEgKDIwMDgtMDMtMDIpDQogKiBAbGluayBodHRwOi8vY29kZS5nb29nbGUuY29tL3AvanNtaW4tcGhwLw0KICovDQoNCmNsYXNzIEpTTWluIHsNCiAgY29uc3QgT1JEX0xGICAgID0gMTA7DQogIGNvbnN0IE9SRF9TUEFDRSA9IDMyOw0KDQogIHByb3RlY3RlZCAkYSAgICAgICAgICAgPSAnJzsNCiAgcHJvdGVjdGVkICRiICAgICAgICAgICA9ICcnOw0KICBwcm90ZWN0ZWQgJGlucHV0ICAgICAgID0gJyc7DQogIHByb3RlY3RlZCAkaW5wdXRJbmRleCAgPSAwOw0KICBwcm90ZWN0ZWQgJGlucHV0TGVuZ3RoID0gMDsNCiAgcHJvdGVjdGVkICRsb29rQWhlYWQgICA9IG51bGw7DQogIHByb3RlY3RlZCAkb3V0cHV0ICAgICAgPSAnJzsNCg0KICAvLyAtLSBQdWJsaWMgU3RhdGljIE1ldGhvZHMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCg0KICBwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIG1pbmlmeSgkanMpIHsNCiAgICAkanNtaW4gPSBuZXcgSlNNaW4oJGpzKTsNCiAgICByZXR1cm4gJGpzbWluLT5taW4oKTsNCiAgfQ0KDQogIC8vIC0tIFB1YmxpYyBJbnN0YW5jZSBNZXRob2RzIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQogIHB1YmxpYyBmdW5jdGlvbiBfX2NvbnN0cnVjdCgkaW5wdXQpIHsNCiAgICAkdGhpcy0+aW5wdXQgICAgICAgPSBzdHJfcmVwbGFjZSgiXHJcbiIsICJcbiIsICRpbnB1dCk7DQogICAgJHRoaXMtPmlucHV0TGVuZ3RoID0gc3RybGVuKCR0aGlzLT5pbnB1dCk7DQogIH0NCg0KICAvLyAtLSBQcm90ZWN0ZWQgSW5zdGFuY2UgTWV0aG9kcyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCg0KICBwcm90ZWN0ZWQgZnVuY3Rpb24gYWN0aW9uKCRkKSB7DQogICAgc3dpdGNoKCRkKSB7DQogICAgICBjYXNlIDE6DQogICAgICAgICR0aGlzLT5vdXRwdXQgLj0gJHRoaXMtPmE7DQoNCiAgICAgIGNhc2UgMjoNCiAgICAgICAgJHRoaXMtPmEgPSAkdGhpcy0+YjsNCg0KICAgICAgICBpZiAoJHRoaXMtPmEgPT09ICInIiB8fCAkdGhpcy0+YSA9PT0gJyInKSB7DQogICAgICAgICAgZm9yICg7Oykgew0KICAgICAgICAgICAgJHRoaXMtPm91dHB1dCAuPSAkdGhpcy0+YTsNCiAgICAgICAgICAgICR0aGlzLT5hICAgICAgID0gJHRoaXMtPmdldCgpOw0KDQogICAgICAgICAgICBpZiAoJHRoaXMtPmEgPT09ICR0aGlzLT5iKSB7DQogICAgICAgICAgICAgIGJyZWFrOw0KICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICBpZiAob3JkKCR0aGlzLT5hKSA8PSBzZWxmOjpPUkRfTEYpIHsNCiAgICAgICAgICAgICAgdGhyb3cgbmV3IEpTTWluRXhjZXB0aW9uKCdVbnRlcm1pbmF0ZWQgc3RyaW5nIGxpdGVyYWwuJyk7DQogICAgICAgICAgICB9DQoNCiAgICAgICAgICAgIGlmICgkdGhpcy0+YSA9PT0gJ1xcJykgew0KICAgICAgICAgICAgICAkdGhpcy0+b3V0cHV0IC49ICR0aGlzLT5hOw0KICAgICAgICAgICAgICAkdGhpcy0+YSAgICAgICA9ICR0aGlzLT5nZXQoKTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgICB9DQogICAgICAgIH0NCg0KICAgICAgY2FzZSAzOg0KICAgICAgICAkdGhpcy0+YiA9ICR0aGlzLT5uZXh0KCk7DQoNCiAgICAgICAgaWYgKCR0aGlzLT5iID09PSAnLycgJiYgKA0KICAgICAgICAgICAgJHRoaXMtPmEgPT09ICcoJyB8fCAkdGhpcy0+YSA9PT0gJywnIHx8ICR0aGlzLT5hID09PSAnPScgfHwNCiAgICAgICAgICAgICR0aGlzLT5hID09PSAnOicgfHwgJHRoaXMtPmEgPT09ICdbJyB8fCAkdGhpcy0+YSA9PT0gJyEnIHx8DQogICAgICAgICAgICAkdGhpcy0+YSA9PT0gJyYnIHx8ICR0aGlzLT5hID09PSAnfCcgfHwgJHRoaXMtPmEgPT09ICc/JykpIHsNCg0KICAgICAgICAgICR0aGlzLT5vdXRwdXQgLj0gJHRoaXMtPmEgLiAkdGhpcy0+YjsNCg0KICAgICAgICAgIGZvciAoOzspIHsNCiAgICAgICAgICAgICR0aGlzLT5hID0gJHRoaXMtPmdldCgpOw0KDQogICAgICAgICAgICBpZiAoJHRoaXMtPmEgPT09ICcvJykgew0KICAgICAgICAgICAgICBicmVhazsNCiAgICAgICAgICAgIH0gZWxzZWlmICgkdGhpcy0+YSA9PT0gJ1xcJykgew0KICAgICAgICAgICAgICAkdGhpcy0+b3V0cHV0IC49ICR0aGlzLT5hOw0KICAgICAgICAgICAgICAkdGhpcy0+YSAgICAgICA9ICR0aGlzLT5nZXQoKTsNCiAgICAgICAgICAgIH0gZWxzZWlmIChvcmQoJHRoaXMtPmEpIDw9IHNlbGY6Ok9SRF9MRikgew0KICAgICAgICAgICAgICB0aHJvdyBuZXcgSlNNaW5FeGNlcHRpb24oJ1VudGVybWluYXRlZCByZWd1bGFyIGV4cHJlc3Npb24gJy4NCiAgICAgICAgICAgICAgICAgICdsaXRlcmFsLicpOw0KICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAkdGhpcy0+b3V0cHV0IC49ICR0aGlzLT5hOw0KICAgICAgICAgIH0NCg0KICAgICAgICAgICR0aGlzLT5iID0gJHRoaXMtPm5leHQoKTsNCiAgICAgICAgfQ0KICAgIH0NCiAgfQ0KDQogIHByb3RlY3RlZCBmdW5jdGlvbiBnZXQoKSB7DQogICAgJGMgPSAkdGhpcy0+bG9va0FoZWFkOw0KICAgICR0aGlzLT5sb29rQWhlYWQgPSBudWxsOw0KDQogICAgaWYgKCRjID09PSBudWxsKSB7DQogICAgICBpZiAoJHRoaXMtPmlucHV0SW5kZXggPCAkdGhpcy0+aW5wdXRMZW5ndGgpIHsNCiAgICAgICAgJGMgPSAkdGhpcy0+aW5wdXRbJHRoaXMtPmlucHV0SW5kZXhdOw0KICAgICAgICAkdGhpcy0+aW5wdXRJbmRleCArPSAxOw0KICAgICAgfSBlbHNlIHsNCiAgICAgICAgJGMgPSBudWxsOw0KICAgICAgfQ0KICAgIH0NCg0KICAgIGlmICgkYyA9PT0gIlxyIikgew0KICAgICAgcmV0dXJuICJcbiI7DQogICAgfQ0KDQogICAgaWYgKCRjID09PSBudWxsIHx8ICRjID09PSAiXG4iIHx8IG9yZCgkYykgPj0gc2VsZjo6T1JEX1NQQUNFKSB7DQogICAgICByZXR1cm4gJGM7DQogICAgfQ0KDQogICAgcmV0dXJuICcgJzsNCiAgfQ0KDQogIHByb3RlY3RlZCBmdW5jdGlvbiBpc0FscGhhTnVtKCRjKSB7DQogICAgcmV0dXJuIG9yZCgkYykgPiAxMjYgfHwgJGMgPT09ICdcXCcgfHwgcHJlZ19tYXRjaCgnL15bXHdcJF0kLycsICRjKSA9PT0gMTsNCiAgfQ0KDQogIHByb3RlY3RlZCBmdW5jdGlvbiBtaW4oKSB7DQogICAgJHRoaXMtPmEgPSAiXG4iOw0KICAgICR0aGlzLT5hY3Rpb24oMyk7DQoNCiAgICB3aGlsZSAoJHRoaXMtPmEgIT09IG51bGwpIHsNCiAgICAgIHN3aXRjaCAoJHRoaXMtPmEpIHsNCiAgICAgICAgY2FzZSAnICc6DQogICAgICAgICAgaWYgKCR0aGlzLT5pc0FscGhhTnVtKCR0aGlzLT5iKSkgew0KICAgICAgICAgICAgJHRoaXMtPmFjdGlvbigxKTsNCiAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgJHRoaXMtPmFjdGlvbigyKTsNCiAgICAgICAgICB9DQogICAgICAgICAgYnJlYWs7DQoNCiAgICAgICAgY2FzZSAiXG4iOg0KICAgICAgICAgIHN3aXRjaCAoJHRoaXMtPmIpIHsNCiAgICAgICAgICAgIGNhc2UgJ3snOg0KICAgICAgICAgICAgY2FzZSAnWyc6DQogICAgICAgICAgICBjYXNlICcoJzoNCiAgICAgICAgICAgIGNhc2UgJysnOg0KICAgICAgICAgICAgY2FzZSAnLSc6DQogICAgICAgICAgICAgICR0aGlzLT5hY3Rpb24oMSk7DQogICAgICAgICAgICAgIGJyZWFrOw0KDQogICAgICAgICAgICBjYXNlICcgJzoNCiAgICAgICAgICAgICAgJHRoaXMtPmFjdGlvbigzKTsNCiAgICAgICAgICAgICAgYnJlYWs7DQoNCiAgICAgICAgICAgIGRlZmF1bHQ6DQogICAgICAgICAgICAgIGlmICgkdGhpcy0+aXNBbHBoYU51bSgkdGhpcy0+YikpIHsNCiAgICAgICAgICAgICAgICAkdGhpcy0+YWN0aW9uKDEpOw0KICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgIGVsc2Ugew0KICAgICAgICAgICAgICAgICR0aGlzLT5hY3Rpb24oMik7DQogICAgICAgICAgICAgIH0NCiAgICAgICAgICB9DQogICAgICAgICAgYnJlYWs7DQoNCiAgICAgICAgZGVmYXVsdDoNCiAgICAgICAgICBzd2l0Y2ggKCR0aGlzLT5iKSB7DQogICAgICAgICAgICBjYXNlICcgJzoNCiAgICAgICAgICAgICAgaWYgKCR0aGlzLT5pc0FscGhhTnVtKCR0aGlzLT5hKSkgew0KICAgICAgICAgICAgICAgICR0aGlzLT5hY3Rpb24oMSk7DQogICAgICAgICAgICAgICAgYnJlYWs7DQogICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAkdGhpcy0+YWN0aW9uKDMpOw0KICAgICAgICAgICAgICBicmVhazsNCg0KICAgICAgICAgICAgY2FzZSAiXG4iOg0KICAgICAgICAgICAgICBzd2l0Y2ggKCR0aGlzLT5hKSB7DQogICAgICAgICAgICAgICAgY2FzZSAnfSc6DQogICAgICAgICAgICAgICAgY2FzZSAnXSc6DQogICAgICAgICAgICAgICAgY2FzZSAnKSc6DQogICAgICAgICAgICAgICAgY2FzZSAnKyc6DQogICAgICAgICAgICAgICAgY2FzZSAnLSc6DQogICAgICAgICAgICAgICAgY2FzZSAnIic6DQogICAgICAgICAgICAgICAgY2FzZSAiJyI6DQogICAgICAgICAgICAgICAgICAkdGhpcy0+YWN0aW9uKDEpOw0KICAgICAgICAgICAgICAgICAgYnJlYWs7DQoNCiAgICAgICAgICAgICAgICBkZWZhdWx0Og0KICAgICAgICAgICAgICAgICAgaWYgKCR0aGlzLT5pc0FscGhhTnVtKCR0aGlzLT5hKSkgew0KICAgICAgICAgICAgICAgICAgICAkdGhpcy0+YWN0aW9uKDEpOw0KICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgZWxzZSB7DQogICAgICAgICAgICAgICAgICAgICR0aGlzLT5hY3Rpb24oMyk7DQogICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgYnJlYWs7DQoNCiAgICAgICAgICAgIGRlZmF1bHQ6DQogICAgICAgICAgICAgICR0aGlzLT5hY3Rpb24oMSk7DQogICAgICAgICAgICAgIGJyZWFrOw0KICAgICAgICAgIH0NCiAgICAgIH0NCiAgICB9DQoNCiAgICByZXR1cm4gJHRoaXMtPm91dHB1dDsNCiAgfQ0KDQogIHByb3RlY3RlZCBmdW5jdGlvbiBuZXh0KCkgew0KICAgICRjID0gJHRoaXMtPmdldCgpOw0KDQogICAgaWYgKCRjID09PSAnLycpIHsNCiAgICAgIHN3aXRjaCgkdGhpcy0+cGVlaygpKSB7DQogICAgICAgIGNhc2UgJy8nOg0KICAgICAgICAgIGZvciAoOzspIHsNCiAgICAgICAgICAgICRjID0gJHRoaXMtPmdldCgpOw0KDQogICAgICAgICAgICBpZiAob3JkKCRjKSA8PSBzZWxmOjpPUkRfTEYpIHsNCiAgICAgICAgICAgICAgcmV0dXJuICRjOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgIH0NCg0KICAgICAgICBjYXNlICcqJzoNCiAgICAgICAgICAkdGhpcy0+Z2V0KCk7DQoNCiAgICAgICAgICBmb3IgKDs7KSB7DQogICAgICAgICAgICBzd2l0Y2goJHRoaXMtPmdldCgpKSB7DQogICAgICAgICAgICAgIGNhc2UgJyonOg0KICAgICAgICAgICAgICAgIGlmICgkdGhpcy0+cGVlaygpID09PSAnLycpIHsNCiAgICAgICAgICAgICAgICAgICR0aGlzLT5nZXQoKTsNCiAgICAgICAgICAgICAgICAgIHJldHVybiAnICc7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIGJyZWFrOw0KDQogICAgICAgICAgICAgIGNhc2UgbnVsbDoNCiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgSlNNaW5FeGNlcHRpb24oJ1VudGVybWluYXRlZCBjb21tZW50LicpOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgIH0NCg0KICAgICAgICBkZWZhdWx0Og0KICAgICAgICAgIHJldHVybiAkYzsNCiAgICAgIH0NCiAgICB9DQoNCiAgICByZXR1cm4gJGM7DQogIH0NCg0KICBwcm90ZWN0ZWQgZnVuY3Rpb24gcGVlaygpIHsNCiAgICAkdGhpcy0+bG9va0FoZWFkID0gJHRoaXMtPmdldCgpOw0KICAgIHJldHVybiAkdGhpcy0+bG9va0FoZWFkOw0KICB9DQp9DQoNCi8vIC0tIEV4Y2VwdGlvbnMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQpjbGFzcyBKU01pbkV4Y2VwdGlvbiBleHRlbmRzIEV4Y2VwdGlvbiB7fQ0KPz4=]]></data>
	</file>
	<file>
	  <filename>/lib/Minify.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCi8qKg0KICogQ2xhc3MgTWluaWZ5ICANCiAqIEBwYWNrYWdlIE1pbmlmeQ0KICovDQoNCi8qKg0KICogTWluaWZ5X1NvdXJjZQ0KICovDQpyZXF1aXJlX29uY2UgJ01pbmlmeS9Tb3VyY2UucGhwJzsNCiANCi8qKg0KICogTWluaWZ5IC0gQ29tYmluZXMsIG1pbmlmaWVzLCBhbmQgY2FjaGVzIEphdmFTY3JpcHQgYW5kIENTUyBmaWxlcyBvbiBkZW1hbmQuDQogKg0KICogU2VlIFJFQURNRSBmb3IgdXNhZ2UgaW5zdHJ1Y3Rpb25zIChmb3Igbm93KS4NCiAqDQogKiBUaGlzIGxpYnJhcnkgd2FzIGluc3BpcmVkIGJ5IHtAbGluayBtYWlsdG86Zmxhc2hrb3RAbWFpbC5ydSBqc2Nzc2NvbXAgYnkgTWF4aW0gTWFydHlueXVrfQ0KICogYW5kIGJ5IHRoZSBhcnRpY2xlIHtAbGluayBodHRwOi8vd3d3Lmh1bmxvY2suY29tL2Jsb2dzL1N1cGVyY2hhcmdlZF9KYXZhc2NyaXB0ICJTdXBlcmNoYXJnZWQgSmF2YVNjcmlwdCIgYnkgUGF0cmljayBIdW5sb2NrfS4NCiAqDQogKiBSZXF1aXJlcyBQSFAgNS4xLjAuDQogKiBUZXN0ZWQgb24gUEhQIDUuMS42Lg0KICoNCiAqIEBwYWNrYWdlIE1pbmlmeQ0KICogQGF1dGhvciBSeWFuIEdyb3ZlIDxyeWFuQHdvbmtvLmNvbT4NCiAqIEBhdXRob3IgU3RlcGhlbiBDbGF5IDxzdGV2ZUBtcmNsYXkub3JnPg0KICogQGNvcHlyaWdodCAyMDA4IFJ5YW4gR3JvdmUsIFN0ZXBoZW4gQ2xheS4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCiAqIEBsaWNlbnNlIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9ic2QtbGljZW5zZS5waHAgIE5ldyBCU0QgTGljZW5zZQ0KICogQGxpbmsgaHR0cDovL2NvZGUuZ29vZ2xlLmNvbS9wL21pbmlmeS8NCiAqLw0KY2xhc3MgTWluaWZ5IHsNCg0KICAgIGNvbnN0IFRZUEVfQ1NTID0gJ3RleHQvY3NzJzsNCiAgICBjb25zdCBUWVBFX0hUTUwgPSAndGV4dC9odG1sJzsNCiAgICAvLyB0aGVyZSBpcyBzb21lIGRlYmF0ZSBvdmVyIHRoZSBpZGVhbCBKUyBDb250ZW50LVR5cGUsIGJ1dCB0aGlzIGlzIHRoZQ0KICAgIC8vIEFwYWNoZSBkZWZhdWx0IGFuZCB3aGF0IFlhaG9vISB1c2VzLi4NCiAgICBjb25zdCBUWVBFX0pTID0gJ2FwcGxpY2F0aW9uL3gtamF2YXNjcmlwdCc7DQogICAgDQogICAgLyoqDQogICAgICogQHNlZSBzZXRDYWNoZSgpDQogICAgICogQHBhcmFtIG1peGVkICRjYWNoZSBvYmplY3Qgd2l0aCBpZGVudGljYWwgaW50ZXJmYWNlIGFzIE1pbmlmeV9DYWNoZV9GaWxlIG9yDQogICAgICogYSBkaXJlY3RvcnkgcGF0aC4gKGRlZmF1bHQgPSAnJykNCiAgICAgKiBAcmV0dXJuIG51bGwNCiAgICAgKiBAZGVwcmVjYXRlZA0KICAgICAqLw0KICAgIHB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gdXNlU2VydmVyQ2FjaGUoJHBhdGggPSBudWxsKSANCiAgICB7DQogICAgICAgIHNlbGY6OnNldENhY2hlKCRwYXRoKTsNCiAgICB9DQogICAgDQogICAgLyoqDQogICAgICogU3BlY2lmeSBhIGNhY2hlIG9iamVjdCAod2l0aCBpZGVudGljYWwgaW50ZXJmYWNlIGFzIE1pbmlmeV9DYWNoZV9GaWxlKSBvcg0KICAgICAqIGEgcGF0aCB0byB1c2Ugd2l0aCBNaW5pZnlfQ2FjaGVfRmlsZS4NCiAgICAgKiANCiAgICAgKiBJZiBub3QgY2FsbGVkLCBNaW5pZnkgd2lsbCBub3QgdXNlIGEgY2FjaGUgYW5kLCBmb3IgZWFjaCAyMDAgcmVzcG9uc2UsIHdpbGwgDQogICAgICogbmVlZCB0byByZWNvbWJpbmUgZmlsZXMsIG1pbmlmeSBhbmQgZW5jb2RlIHRoZSBvdXRwdXQuDQogICAgICoNCiAgICAgKiBAcGFyYW0gbWl4ZWQgJGNhY2hlIG9iamVjdCB3aXRoIGlkZW50aWNhbCBpbnRlcmZhY2UgYXMgTWluaWZ5X0NhY2hlX0ZpbGUgb3INCiAgICAgKiBhIGRpcmVjdG9yeSBwYXRoLiAoZGVmYXVsdCA9ICcnKQ0KICAgICAqDQogICAgICogQHJldHVybiBudWxsDQogICAgICovDQogICAgcHVibGljIHN0YXRpYyBmdW5jdGlvbiBzZXRDYWNoZSgkY2FjaGUgPSAnJykNCiAgICB7DQogICAgICAgIGlmIChpc19zdHJpbmcoJGNhY2hlKSkgew0KICAgICAgICAgICAgcmVxdWlyZV9vbmNlICdNaW5pZnkvQ2FjaGUvRmlsZS5waHAnOw0KICAgICAgICAgICAgc2VsZjo6JF9jYWNoZSA9IG5ldyBNaW5pZnlfQ2FjaGVfRmlsZSgkY2FjaGUpOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgc2VsZjo6JF9jYWNoZSA9ICRjYWNoZTsNCiAgICAgICAgfQ0KICAgIH0NCiAgICANCiAgICBwcml2YXRlIHN0YXRpYyAkX2NhY2hlID0gbnVsbDsNCg0KICAgIC8qKg0KICAgICAqIFNlcnZlIGEgcmVxdWVzdCBmb3IgYSBtaW5pZmllZCBmaWxlLiANCiAgICAgKiANCiAgICAgKiBIZXJlIGFyZSB0aGUgYXZhaWxhYmxlIG9wdGlvbnMgYW5kIGRlZmF1bHRzIGluIHRoZSBiYXNlIGNvbnRyb2xsZXI6DQogICAgICogDQogICAgICogJ2lzUHVibGljJyA6IHNlbmQgInB1YmxpYyIgaW5zdGVhZCBvZiAicHJpdmF0ZSIgaW4gQ2FjaGUtQ29udHJvbCANCiAgICAgKiBoZWFkZXJzLCBhbGxvd2luZyBzaGFyZWQgY2FjaGVzIHRvIGNhY2hlIHRoZSBvdXRwdXQuIChkZWZhdWx0IHRydWUpDQogICAgICogDQogICAgICogJ3F1aWV0JyA6IHNldCB0byB0cnVlIHRvIGhhdmUgc2VydmUoKSByZXR1cm4gYW4gYXJyYXkgcmF0aGVyIHRoYW4gc2VuZGluZw0KICAgICAqIGFueSBoZWFkZXJzL291dHB1dCAoZGVmYXVsdCBmYWxzZSkNCiAgICAgKiANCiAgICAgKiAnZW5jb2RlT3V0cHV0JyA6IHRvIGRpc2FibGUgY29udGVudCBlbmNvZGluZywgc2V0IHRoaXMgdG8gZmFsc2UgKGRlZmF1bHQgdHJ1ZSkNCiAgICAgKiANCiAgICAgKiAnZW5jb2RlTWV0aG9kJyA6IGdlbmVyYWxseSB5b3Ugc2hvdWxkIGxldCB0aGlzIGJlIGRldGVybWluZWQgYnkgDQogICAgICogSFRUUF9FbmNvZGVyIChsZWF2ZSBudWxsKSwgYnV0IHlvdSBjYW4gZm9yY2UgYSBwYXJ0aWN1bGFyIGVuY29kaW5nDQogICAgICogdG8gYmUgcmV0dXJuZWQsIGJ5IHNldHRpbmcgdGhpcyB0byAnZ3ppcCcsICdkZWZsYXRlJywgb3IgJycgKG5vIGVuY29kaW5nKQ0KICAgICAqIA0KICAgICAqICdlbmNvZGVMZXZlbCcgOiBsZXZlbCBvZiBlbmNvZGluZyBjb21wcmVzc2lvbiAoMCB0byA5LCBkZWZhdWx0IDkpDQogICAgICogDQogICAgICogJ2NvbnRlbnRUeXBlQ2hhcnNldCcgOiBhcHBlbmRlZCB0byB0aGUgQ29udGVudC1UeXBlIGhlYWRlciBzZW50LiBTZXQgdG8gYSBmYWxzZXkNCiAgICAgKiB2YWx1ZSB0byByZW1vdmUuIChkZWZhdWx0ICdVVEYtOCcpICANCiAgICAgKiANCiAgICAgKiAnc2V0RXhwaXJlcycgOiBzZXQgdGhpcyB0byBhIHRpbWVzdGFtcCB0byBoYXZlIE1pbmlmeSBzZW5kIGFuIEhUVFAgRXhwaXJlcw0KICAgICAqIGhlYWRlciBpbnN0ZWFkIG9mIGNoZWNraW5nIGZvciBjb25kaXRpb25hbCBHRVQgKGRlZmF1bHQgbnVsbCkuIA0KICAgICAqIEUuZy4gKCRfU0VSVkVSWydSRVFVRVNUX1RJTUUnXSArIDg2NDAwICogMzY1KSBmb3IgMXlyIA0KICAgICAqIE5vdGUgdGhpcyBoYXMgbm90aGluZyB0byBkbyB3aXRoIHNlcnZlci1zaWRlIGNhY2hpbmcuDQogICAgICogDQogICAgICogJ21pbmlmaWVycycgOiB0byBvdmVycmlkZSBNaW5pZnkncyBkZWZhdWx0IGNob2ljZSBvZiBtaW5pZmllciBmdW5jdGlvbiBmb3IgDQogICAgICogYSBwYXJ0aWN1bGFyIGNvbnRlbnQtdHlwZSwgc3BlY2lmeSB5b3VyIGNhbGxiYWNrIHVuZGVyIHRoZSBrZXkgb2YgdGhlIA0KICAgICAqIGNvbnRlbnQtdHlwZToNCiAgICAgKiA8Y29kZT4NCiAgICAgKiAvLyBjYWxsIGN1c3RvbUNzc01pbmlmaWVyKCRjc3MpIGZvciBhbGwgQ1NTIG1pbmlmaWNhdGlvbg0KICAgICAqICRvcHRpb25zWydtaW5pZmllcnMnXVtNaW5pZnk6OlRZUEVfQ1NTXSA9ICdjdXN0b21Dc3NNaW5pZmllcic7DQogICAgICogDQogICAgICogLy8gZG9uJ3QgbWluaWZ5IEphdmFzY3JpcHQgYXQgYWxsDQogICAgICogJG9wdGlvbnNbJ21pbmlmaWVycyddW01pbmlmeTo6VFlQRV9KU10gPSAnJzsNCiAgICAgKiA8L2NvZGU+DQogICAgICogDQogICAgICogJ21pbmlmaWVyT3B0aW9ucycgOiB0byBzZW5kIG9wdGlvbnMgdG8gdGhlIG1pbmlmaWVyIGZ1bmN0aW9uLCBzcGVjaWZ5IHlvdXIgb3B0aW9ucw0KICAgICAqIHVuZGVyIHRoZSBrZXkgb2YgdGhlIGNvbnRlbnQtdHlwZS4gRS5nLiBUbyBzZW5kIHRoZSBDU1MgbWluaWZpZXIgYW4gb3B0aW9uOiANCiAgICAgKiA8Y29kZT4NCiAgICAgKiAvLyBnaXZlIENTUyBtaW5pZmllciBhcnJheSgnb3B0aW9uTmFtZScgPT4gJ29wdGlvblZhbHVlJykgYXMgMm5kIGFyZ3VtZW50IA0KICAgICAqICRvcHRpb25zWydtaW5pZmllck9wdGlvbnMnXVtNaW5pZnk6OlRZUEVfQ1NTXVsnb3B0aW9uTmFtZSddID0gJ29wdGlvblZhbHVlJzsNCiAgICAgKiA8L2NvZGU+DQogICAgICogDQogICAgICogQW55IGNvbnRyb2xsZXIgb3B0aW9ucyBhcmUgZG9jdW1lbnRlZCBpbiB0aGF0IGNvbnRyb2xsZXIncyBzZXR1cFNvdXJjZXMoKSBtZXRob2QuDQogICAgICogDQogICAgICogQHBhcmFtIG1peGVkIGluc3RhbmNlIG9mIHN1YmNsYXNzIG9mIE1pbmlmeV9Db250cm9sbGVyX0Jhc2Ugb3Igc3RyaW5nIG5hbWUgb2YNCiAgICAgKiBjb250cm9sbGVyLiBFLmcuICdGaWxlcycNCiAgICAgKiANCiAgICAgKiBAcGFyYW0gYXJyYXkgJG9wdGlvbnMgY29udHJvbGxlci9zZXJ2ZSBvcHRpb25zDQogICAgICogDQogICAgICogQHJldHVybiBtaXhlZCBudWxsLCBvciwgaWYgdGhlICdxdWlldCcgb3B0aW9uIGlzIHNldCB0byB0cnVlLCBhbiBhcnJheQ0KICAgICAqIHdpdGgga2V5cyAic3VjY2VzcyIgKGJvb2wpLCAic3RhdHVzQ29kZSIgKGludCksICJjb250ZW50IiAoc3RyaW5nKSwgYW5kDQogICAgICogImhlYWRlcnMiIChhcnJheSkuDQogICAgICovDQogICAgcHVibGljIHN0YXRpYyBmdW5jdGlvbiBzZXJ2ZSgkY29udHJvbGxlciwgJG9wdGlvbnMgPSBhcnJheSgpKSB7DQogICAgICAgIGlmIChpc19zdHJpbmcoJGNvbnRyb2xsZXIpKSB7DQogICAgICAgICAgICAvLyBtYWtlICRjb250cm9sbGVyIGludG8gb2JqZWN0DQogICAgICAgICAgICAkY2xhc3MgPSAnTWluaWZ5X0NvbnRyb2xsZXJfJyAuICRjb250cm9sbGVyOw0KICAgICAgICAgICAgaWYgKCEgY2xhc3NfZXhpc3RzKCRjbGFzcywgZmFsc2UpKSB7DQogICAgICAgICAgICAgICAgcmVxdWlyZV9vbmNlICJNaW5pZnkvQ29udHJvbGxlci97JGNvbnRyb2xsZXJ9LnBocCI7ICAgIA0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgJGNvbnRyb2xsZXIgPSBuZXcgJGNsYXNzKCk7DQogICAgICAgIH0NCiAgICAgICAgDQogICAgICAgIC8vIHNldCB1cCBjb250cm9sbGVyIHNvdXJjZXMgYW5kIG1peCByZW1haW5pbmcgb3B0aW9ucyB3aXRoDQogICAgICAgIC8vIGNvbnRyb2xsZXIgZGVmYXVsdHMNCiAgICAgICAgJG9wdGlvbnMgPSAkY29udHJvbGxlci0+c2V0dXBTb3VyY2VzKCRvcHRpb25zKTsNCiAgICAgICAgJG9wdGlvbnMgPSAkY29udHJvbGxlci0+YW5hbHl6ZVNvdXJjZXMoJG9wdGlvbnMpOw0KICAgICAgICBzZWxmOjokX29wdGlvbnMgPSAkY29udHJvbGxlci0+bWl4SW5EZWZhdWx0T3B0aW9ucygkb3B0aW9ucyk7DQogICAgICAgIA0KICAgICAgICBpZiAoISAkY29udHJvbGxlci0+c291cmNlcykgew0KICAgICAgICAgICAgLy8gaW52YWxpZCByZXF1ZXN0IQ0KICAgICAgICAgICAgaWYgKCEgc2VsZjo6JF9vcHRpb25zWydxdWlldCddKSB7DQogICAgICAgICAgICAgICAgaGVhZGVyKHNlbGY6OiRfb3B0aW9uc1snYmFkUmVxdWVzdEhlYWRlciddKTsNCiAgICAgICAgICAgICAgICBlY2hvIHNlbGY6OiRfb3B0aW9uc1snYmFkUmVxdWVzdEhlYWRlciddOw0KICAgICAgICAgICAgICAgIHJldHVybjsNCiAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgbGlzdCgsJHN0YXR1c0NvZGUpID0gZXhwbG9kZSgnICcsIHNlbGY6OiRfb3B0aW9uc1snYmFkUmVxdWVzdEhlYWRlciddKTsNCiAgICAgICAgICAgICAgICByZXR1cm4gYXJyYXkoDQogICAgICAgICAgICAgICAgICAgICdzdWNjZXNzJyA9PiBmYWxzZQ0KICAgICAgICAgICAgICAgICAgICAsJ3N0YXR1c0NvZGUnID0+IChpbnQpJHN0YXR1c0NvZGUNCiAgICAgICAgICAgICAgICAgICAgLCdjb250ZW50JyA9PiAnJw0KICAgICAgICAgICAgICAgICAgICAsJ2hlYWRlcnMnID0+IGFycmF5KCkNCiAgICAgICAgICAgICAgICApOw0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgICAgIA0KICAgICAgICBzZWxmOjokX2NvbnRyb2xsZXIgPSAkY29udHJvbGxlcjsNCg0KICAgICAgICBpZiAobnVsbCA9PT0gc2VsZjo6JF9vcHRpb25zWydzZXRFeHBpcmVzJ10pIHsNCiAgICAgICAgICAgIC8vIGNvbmRpdGlvbmFsIEdFVA0KICAgICAgICAgICAgcmVxdWlyZV9vbmNlICdIVFRQL0NvbmRpdGlvbmFsR2V0LnBocCc7DQogICAgICAgICAgICAkY2cgPSBuZXcgSFRUUF9Db25kaXRpb25hbEdldChhcnJheSgNCiAgICAgICAgICAgICAgICAnbGFzdE1vZGlmaWVkVGltZScgPT4gc2VsZjo6JF9vcHRpb25zWydsYXN0TW9kaWZpZWRUaW1lJ10NCiAgICAgICAgICAgICAgICAsJ2lzUHVibGljJyA9PiBzZWxmOjokX29wdGlvbnNbJ2lzUHVibGljJ10NCiAgICAgICAgICAgICkpOw0KICAgICAgICAgICAgaWYgKCRjZy0+Y2FjaGVJc1ZhbGlkKSB7DQogICAgICAgICAgICAgICAgLy8gY2xpZW50J3MgY2FjaGUgaXMgdmFsaWQNCiAgICAgICAgICAgICAgICBpZiAoISBzZWxmOjokX29wdGlvbnNbJ3F1aWV0J10pIHsNCiAgICAgICAgICAgICAgICAgICAgJGNnLT5zZW5kSGVhZGVycygpOw0KICAgICAgICAgICAgICAgICAgICByZXR1cm47DQogICAgICAgICAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGFycmF5KA0KICAgICAgICAgICAgICAgICAgICAgICAgJ3N1Y2Nlc3MnID0+IHRydWUNCiAgICAgICAgICAgICAgICAgICAgICAgICwnc3RhdHVzQ29kZScgPT4gMzA0IA0KICAgICAgICAgICAgICAgICAgICAgICAgLCdjb250ZW50JyA9PiAnJw0KICAgICAgICAgICAgICAgICAgICAgICAgLCdoZWFkZXJzJyA9PiBhcnJheSgpDQogICAgICAgICAgICAgICAgICAgICk7ICAgIA0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgLy8gY2xpZW50IHdpbGwgbmVlZCBvdXRwdXQNCiAgICAgICAgICAgICAgICAkaGVhZGVycyA9ICRjZy0+Z2V0SGVhZGVycygpOw0KICAgICAgICAgICAgICAgIHVuc2V0KCRjZyk7DQogICAgICAgICAgICB9DQogICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAvLyBkb24ndCBuZWVkIGNvbmRpdGlvbmFsIEdFVA0KICAgICAgICAgICAgJHByaXZhY3kgPSBzZWxmOjokX29wdGlvbnNbJ2lzUHVibGljJ10NCiAgICAgICAgICAgICAgICA/ICdwdWJsaWMnDQogICAgICAgICAgICAgICAgOiAncHJpdmF0ZSc7DQogICAgICAgICAgICAkaGVhZGVycyA9IGFycmF5KA0KICAgICAgICAgICAgICAgICdDYWNoZS1Db250cm9sJyA9PiAkcHJpdmFjeSAuICcsIG1heC1hZ2U9JyANCiAgICAgICAgICAgICAgICAgICAgLiAoc2VsZjo6JF9vcHRpb25zWydzZXRFeHBpcmVzJ10gLSAkX1NFUlZFUlsnUkVRVUVTVF9USU1FJ10pDQogICAgICAgICAgICAgICAgLCdFeHBpcmVzJyA9PiBnbWRhdGUoJ0QsIGQgTSBZIEg6aTpzIFxHXE1cVCcsIHNlbGY6OiRfb3B0aW9uc1snc2V0RXhwaXJlcyddKQ0KICAgICAgICAgICAgKTsNCiAgICAgICAgfQ0KICAgICAgICANCiAgICAgICAgLy8gZGV0ZXJtaW5lIGVuY29kaW5nDQogICAgICAgIGlmIChzZWxmOjokX29wdGlvbnNbJ2VuY29kZU91dHB1dCddKSB7DQogICAgICAgICAgICBpZiAoc2VsZjo6JF9vcHRpb25zWydlbmNvZGVNZXRob2QnXSAhPT0gbnVsbCkgew0KICAgICAgICAgICAgICAgIC8vIGNvbnRyb2xsZXIgc3BlY2lmaWNhbGx5IHJlcXVlc3RlZCB0aGlzDQogICAgICAgICAgICAgICAgJGNvbnRlbnRFbmNvZGluZyA9IHNlbGY6OiRfb3B0aW9uc1snZW5jb2RlTWV0aG9kJ107DQogICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgICAgIC8vIHNuaWZmIHJlcXVlc3QgaGVhZGVyDQogICAgICAgICAgICAgICAgcmVxdWlyZV9vbmNlICdIVFRQL0VuY29kZXIucGhwJzsNCiAgICAgICAgICAgICAgICAvLyBkZXBlbmRpbmcgb24gd2hhdCB0aGUgY2xpZW50IGFjY2VwdHMsICRjb250ZW50RW5jb2RpbmcgbWF5IGJlIA0KICAgICAgICAgICAgICAgIC8vICd4LWd6aXAnIHdoaWxlIG91ciBpbnRlcm5hbCBlbmNvZGVNZXRob2QgaXMgJ2d6aXAnLiBDYWxsaW5nDQogICAgICAgICAgICAgICAgLy8gZ2V0QWNjZXB0ZWRFbmNvZGluZygpIHdpdGggZmFsc2UgbGVhdmVzIG91dCBjb21wcmVzcyBhcyBhbiBvcHRpb24uDQogICAgICAgICAgICAgICAgbGlzdChzZWxmOjokX29wdGlvbnNbJ2VuY29kZU1ldGhvZCddLCAkY29udGVudEVuY29kaW5nKSA9IEhUVFBfRW5jb2Rlcjo6Z2V0QWNjZXB0ZWRFbmNvZGluZyhmYWxzZSk7DQogICAgICAgICAgICB9DQogICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICBzZWxmOjokX29wdGlvbnNbJ2VuY29kZU1ldGhvZCddID0gJyc7IC8vIGlkZW50aXR5IChubyBlbmNvZGluZykNCiAgICAgICAgfQ0KICAgICAgICANCiAgICAgICAgaWYgKG51bGwgIT09IHNlbGY6OiRfY2FjaGUpIHsNCiAgICAgICAgICAgIC8vIHVzaW5nIGNhY2hlDQogICAgICAgICAgICAvLyB0aGUgZ29hbCBpcyB0byB1c2Ugb25seSB0aGUgY2FjaGUgbWV0aG9kcyB0byBzbmlmZiB0aGUgbGVuZ3RoIGFuZCANCiAgICAgICAgICAgIC8vIG91dHB1dCB0aGUgY29udGVudCwgYXMgdGhleSBkbyBub3QgcmVxdWlyZSBldmVyIGxvYWRpbmcgdGhlIGZpbGUgaW50bw0KICAgICAgICAgICAgLy8gbWVtb3J5Lg0KICAgICAgICAgICAgJGNhY2hlSWQgPSAnbWluaWZ5XycgLiBzZWxmOjpfZ2V0Q2FjaGVJZCgpOw0KICAgICAgICAgICAgJGVuY29kaW5nRXh0ZW5zaW9uID0gc2VsZjo6JF9vcHRpb25zWydlbmNvZGVNZXRob2QnXQ0KICAgICAgICAgICAgICAgID8gKCdkZWZsYXRlJyA9PT0gc2VsZjo6JF9vcHRpb25zWydlbmNvZGVNZXRob2QnXQ0KICAgICAgICAgICAgICAgICAgICA/ICcuemQnDQogICAgICAgICAgICAgICAgICAgIDogJy56ZycpDQogICAgICAgICAgICAgICAgOiAnJzsNCiAgICAgICAgICAgICRmdWxsQ2FjaGVJZCA9ICRjYWNoZUlkIC4gJGVuY29kaW5nRXh0ZW5zaW9uOw0KICAgICAgICAgICAgLy8gY2hlY2sgY2FjaGUgZm9yIHZhbGlkIGVudHJ5DQogICAgICAgICAgICAkY2FjaGVJc1JlYWR5ID0gc2VsZjo6JF9jYWNoZS0+aXNWYWxpZCgkZnVsbENhY2hlSWQsIHNlbGY6OiRfb3B0aW9uc1snbGFzdE1vZGlmaWVkVGltZSddKTsgDQogICAgICAgICAgICBpZiAoJGNhY2hlSXNSZWFkeSkgew0KICAgICAgICAgICAgICAgICRjYWNoZUNvbnRlbnRMZW5ndGggPSBzZWxmOjokX2NhY2hlLT5nZXRTaXplKCRmdWxsQ2FjaGVJZCk7ICAgIA0KICAgICAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgICAgICAvLyBnZW5lcmF0ZSAmIGNhY2hlIGNvbnRlbnQNCiAgICAgICAgICAgICAgICAkY29udGVudCA9IHNlbGY6Ol9jb21iaW5lTWluaWZ5KCk7DQogICAgICAgICAgICAgICAgc2VsZjo6JF9jYWNoZS0+c3RvcmUoJGNhY2hlSWQsICRjb250ZW50KTsNCiAgICAgICAgICAgICAgICBzZWxmOjokX2NhY2hlLT5zdG9yZSgkY2FjaGVJZCAuICcuemQnLCBnemRlZmxhdGUoJGNvbnRlbnQsIHNlbGY6OiRfb3B0aW9uc1snZW5jb2RlTGV2ZWwnXSkpOw0KICAgICAgICAgICAgICAgIHNlbGY6OiRfY2FjaGUtPnN0b3JlKCRjYWNoZUlkIC4gJy56ZycsIGd6ZW5jb2RlKCRjb250ZW50LCBzZWxmOjokX29wdGlvbnNbJ2VuY29kZUxldmVsJ10pKTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgIC8vIG5vIGNhY2hlDQogICAgICAgICAgICAkY2FjaGVJc1JlYWR5ID0gZmFsc2U7DQogICAgICAgICAgICAkY29udGVudCA9IHNlbGY6Ol9jb21iaW5lTWluaWZ5KCk7DQogICAgICAgIH0NCiAgICAgICAgaWYgKCEgJGNhY2hlSXNSZWFkeSAmJiBzZWxmOjokX29wdGlvbnNbJ2VuY29kZU1ldGhvZCddKSB7DQogICAgICAgICAgICAvLyBzdGlsbCBuZWVkIHRvIGVuY29kZQ0KICAgICAgICAgICAgJGNvbnRlbnQgPSAoJ2RlZmxhdGUnID09PSBzZWxmOjokX29wdGlvbnNbJ2VuY29kZU1ldGhvZCddKQ0KICAgICAgICAgICAgICAgID8gZ3pkZWZsYXRlKCRjb250ZW50LCBzZWxmOjokX29wdGlvbnNbJ2VuY29kZUxldmVsJ10pDQogICAgICAgICAgICAgICAgOiBnemVuY29kZSgkY29udGVudCwgc2VsZjo6JF9vcHRpb25zWydlbmNvZGVMZXZlbCddKTsNCiAgICAgICAgfQ0KICAgICAgICANCiAgICAgICAgLy8gYWRkIGhlYWRlcnMNCiAgICAgICAgJGhlYWRlcnNbJ0NvbnRlbnQtTGVuZ3RoJ10gPSAkY2FjaGVJc1JlYWR5DQogICAgICAgICAgICA/ICRjYWNoZUNvbnRlbnRMZW5ndGgNCiAgICAgICAgICAgIDogc3RybGVuKCRjb250ZW50KTsNCiAgICAgICAgJGhlYWRlcnNbJ0NvbnRlbnQtVHlwZSddID0gc2VsZjo6JF9vcHRpb25zWydjb250ZW50VHlwZUNoYXJzZXQnXQ0KICAgICAgICAgICAgPyBzZWxmOjokX29wdGlvbnNbJ2NvbnRlbnRUeXBlJ10gLiAnOyBjaGFyc2V0PScgLiBzZWxmOjokX29wdGlvbnNbJ2NvbnRlbnRUeXBlQ2hhcnNldCddDQogICAgICAgICAgICA6IHNlbGY6OiRfb3B0aW9uc1snY29udGVudFR5cGUnXTsNCiAgICAgICAgaWYgKHNlbGY6OiRfb3B0aW9uc1snZW5jb2RlTWV0aG9kJ10gIT09ICcnKSB7DQogICAgICAgICAgICAkaGVhZGVyc1snQ29udGVudC1FbmNvZGluZyddID0gJGNvbnRlbnRFbmNvZGluZzsNCiAgICAgICAgICAgICRoZWFkZXJzWydWYXJ5J10gPSAnQWNjZXB0LUVuY29kaW5nJzsNCiAgICAgICAgfQ0KDQogICAgICAgIGlmICghIHNlbGY6OiRfb3B0aW9uc1sncXVpZXQnXSkgew0KICAgICAgICAgICAgLy8gb3V0cHV0IGhlYWRlcnMgJiBjb250ZW50DQogICAgICAgICAgICBmb3JlYWNoICgkaGVhZGVycyBhcyAkbmFtZSA9PiAkdmFsKSB7DQogICAgICAgICAgICAgICAgaGVhZGVyKCRuYW1lIC4gJzogJyAuICR2YWwpOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgaWYgKCRjYWNoZUlzUmVhZHkpIHsNCiAgICAgICAgICAgICAgICBzZWxmOjokX2NhY2hlLT5kaXNwbGF5KCRmdWxsQ2FjaGVJZCk7DQogICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgICAgIGVjaG8gJGNvbnRlbnQ7DQogICAgICAgICAgICB9DQogICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICByZXR1cm4gYXJyYXkoDQogICAgICAgICAgICAgICAgJ3N1Y2Nlc3MnID0+IHRydWUNCiAgICAgICAgICAgICAgICAsJ3N0YXR1c0NvZGUnID0+IDIwMA0KICAgICAgICAgICAgICAgICwnY29udGVudCcgPT4gJGNhY2hlSXNSZWFkeQ0KICAgICAgICAgICAgICAgICAgICA/IHNlbGY6OiRfY2FjaGUtPmZldGNoKCRmdWxsQ2FjaGVJZCkNCiAgICAgICAgICAgICAgICAgICAgOiAkY29udGVudA0KICAgICAgICAgICAgICAgICwnaGVhZGVycycgPT4gJGhlYWRlcnMgICAgICAgICAgICAgICAgDQogICAgICAgICAgICApOw0KICAgICAgICB9DQogICAgfQ0KICAgIA0KICAgIC8qKg0KICAgICAqIEB2YXIgTWluaWZ5X0NvbnRyb2xsZXIgYWN0aXZlIGNvbnRyb2xsZXIgZm9yIGN1cnJlbnQgcmVxdWVzdA0KICAgICAqLw0KICAgIHByb3RlY3RlZCBzdGF0aWMgJF9jb250cm9sbGVyID0gbnVsbDsNCiAgICANCiAgICAvKioNCiAgICAgKiBAdmFyIGFycmF5IG9wdGlvbnMgZm9yIGN1cnJlbnQgcmVxdWVzdA0KICAgICAqLw0KICAgIHByb3RlY3RlZCBzdGF0aWMgJF9vcHRpb25zID0gbnVsbDsNCiAgICANCiAgICAvKioNCiAgICAgKiBDb21iaW5lcyBzb3VyY2VzIGFuZCBtaW5pZmllcyB0aGUgcmVzdWx0Lg0KICAgICAqDQogICAgICogQHJldHVybiBzdHJpbmcNCiAgICAgKi8NCiAgICBwcm90ZWN0ZWQgc3RhdGljIGZ1bmN0aW9uIF9jb21iaW5lTWluaWZ5KCkgew0KICAgICAgICAkdHlwZSA9IHNlbGY6OiRfb3B0aW9uc1snY29udGVudFR5cGUnXTsgLy8gZWFzZSByZWFkYWJpbGl0eQ0KICAgICAgICANCiAgICAgICAgLy8gd2hlbiBjb21iaW5pbmcgc2NyaXB0cywgbWFrZSBzdXJlIGFsbCBzdGF0ZW1lbnRzIHNlcGFyYXRlZA0KICAgICAgICAkaW1wbG9kZVNlcGFyYXRvciA9ICgkdHlwZSA9PT0gc2VsZjo6VFlQRV9KUykNCiAgICAgICAgICAgID8gJzsnDQogICAgICAgICAgICA6ICcnOw0KICAgICAgICANCiAgICAgICAgLy8gYWxsb3cgdGhlIHVzZXIgdG8gcGFzcyBhIHBhcnRpY3VsYXIgYXJyYXkgb2Ygb3B0aW9ucyB0byBlYWNoDQogICAgICAgIC8vIG1pbmlmaWVyIChkZXNpZ25hdGVkIGJ5IHR5cGUpLiBzb3VyY2Ugb2JqZWN0cyBtYXkgc3RpbGwgb3ZlcnJpZGUNCiAgICAgICAgLy8gdGhlc2UNCiAgICAgICAgJGRlZmF1bHRPcHRpb25zID0gaXNzZXQoc2VsZjo6JF9vcHRpb25zWydtaW5pZmllck9wdGlvbnMnXVskdHlwZV0pDQogICAgICAgICAgICA/IHNlbGY6OiRfb3B0aW9uc1snbWluaWZpZXJPcHRpb25zJ11bJHR5cGVdDQogICAgICAgICAgICA6IGFycmF5KCk7DQogICAgICAgIC8vIGlmIG1pbmlmaWVyIG5vdCBzZXQsIGRlZmF1bHQgaXMgbm8gbWluaWZpY2F0aW9uLiBzb3VyY2Ugb2JqZWN0cw0KICAgICAgICAvLyBtYXkgc3RpbGwgb3ZlcnJpZGUgdGhpcw0KICAgICAgICAkZGVmYXVsdE1pbmlmaWVyID0gaXNzZXQoc2VsZjo6JF9vcHRpb25zWydtaW5pZmllcnMnXVskdHlwZV0pDQogICAgICAgICAgICA/IHNlbGY6OiRfb3B0aW9uc1snbWluaWZpZXJzJ11bJHR5cGVdDQogICAgICAgICAgICA6IGZhbHNlOw0KICAgICAgIA0KICAgICAgICBpZiAoTWluaWZ5X1NvdXJjZTo6aGF2ZU5vTWluaWZ5UHJlZnMoc2VsZjo6JF9jb250cm9sbGVyLT5zb3VyY2VzKSkgew0KICAgICAgICAgICAgLy8gYWxsIHNvdXJjZSBoYXZlIHNhbWUgb3B0aW9ucy9taW5pZmllciwgYmV0dGVyIHBlcmZvcm1hbmNlDQogICAgICAgICAgICAvLyB0byBjb21iaW5lLCB0aGVuIG1pbmlmeSBvbmNlDQogICAgICAgICAgICBmb3JlYWNoIChzZWxmOjokX2NvbnRyb2xsZXItPnNvdXJjZXMgYXMgJHNvdXJjZSkgew0KICAgICAgICAgICAgICAgICRwaWVjZXNbXSA9ICRzb3VyY2UtPmdldENvbnRlbnQoKTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgICAgICRjb250ZW50ID0gaW1wbG9kZSgkaW1wbG9kZVNlcGFyYXRvciwgJHBpZWNlcyk7DQogICAgICAgICAgICBpZiAoJGRlZmF1bHRNaW5pZmllcikgew0KICAgICAgICAgICAgICAgIHNlbGY6OiRfY29udHJvbGxlci0+bG9hZE1pbmlmaWVyKCRkZWZhdWx0TWluaWZpZXIpOw0KICAgICAgICAgICAgICAgICRjb250ZW50ID0gY2FsbF91c2VyX2Z1bmMoJGRlZmF1bHRNaW5pZmllciwgJGNvbnRlbnQsICRkZWZhdWx0T3B0aW9ucyk7ICAgIA0KICAgICAgICAgICAgfQ0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgLy8gbWluaWZ5IGVhY2ggc291cmNlIHdpdGggaXRzIG93biBvcHRpb25zIGFuZCBtaW5pZmllciwgdGhlbiBjb21iaW5lDQogICAgICAgICAgICBmb3JlYWNoIChzZWxmOjokX2NvbnRyb2xsZXItPnNvdXJjZXMgYXMgJHNvdXJjZSkgew0KICAgICAgICAgICAgICAgIC8vIGFsbG93IHRoZSBzb3VyY2UgdG8gb3ZlcnJpZGUgb3VyIG1pbmlmaWVyIGFuZCBvcHRpb25zDQogICAgICAgICAgICAgICAgJG1pbmlmaWVyID0gKG51bGwgIT09ICRzb3VyY2UtPm1pbmlmaWVyKQ0KICAgICAgICAgICAgICAgICAgICA/ICRzb3VyY2UtPm1pbmlmaWVyDQogICAgICAgICAgICAgICAgICAgIDogJGRlZmF1bHRNaW5pZmllcjsNCiAgICAgICAgICAgICAgICAkb3B0aW9ucyA9IChudWxsICE9PSAkc291cmNlLT5taW5pZnlPcHRpb25zKQ0KICAgICAgICAgICAgICAgICAgICA/IGFycmF5X21lcmdlKCRkZWZhdWx0T3B0aW9ucywgJHNvdXJjZS0+bWluaWZ5T3B0aW9ucykNCiAgICAgICAgICAgICAgICAgICAgOiAkZGVmYXVsdE9wdGlvbnM7DQogICAgICAgICAgICAgICAgaWYgKCRkZWZhdWx0TWluaWZpZXIpIHsNCiAgICAgICAgICAgICAgICAgICAgc2VsZjo6JF9jb250cm9sbGVyLT5sb2FkTWluaWZpZXIoJG1pbmlmaWVyKTsNCiAgICAgICAgICAgICAgICAgICAgLy8gZ2V0IHNvdXJjZSBjb250ZW50IGFuZCBtaW5pZnkgaXQNCiAgICAgICAgICAgICAgICAgICAgJHBpZWNlc1tdID0gY2FsbF91c2VyX2Z1bmMoJG1pbmlmaWVyLCAkc291cmNlLT5nZXRDb250ZW50KCksICRvcHRpb25zKTsgICAgIA0KICAgICAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgICAgICRwaWVjZXNbXSA9ICRzb3VyY2UtPmdldENvbnRlbnQoKTsgICAgIA0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0NCiAgICAgICAgICAgICRjb250ZW50ID0gaW1wbG9kZSgkaW1wbG9kZVNlcGFyYXRvciwgJHBpZWNlcyk7DQogICAgICAgIH0NCiAgICAgICAgDQogICAgICAgIC8vIGRvIGFueSBwb3N0LXByb2Nlc3NpbmcgKGVzcC4gZm9yIGVkaXRpbmcgYnVpbGQgVVJJcykNCiAgICAgICAgaWYgKHNlbGY6OiRfb3B0aW9uc1sncG9zdHByb2Nlc3NvclJlcXVpcmUnXSkgew0KICAgICAgICAgICAgcmVxdWlyZV9vbmNlIHNlbGY6OiRfb3B0aW9uc1sncG9zdHByb2Nlc3NvclJlcXVpcmUnXTsNCiAgICAgICAgfQ0KICAgICAgICBpZiAoc2VsZjo6JF9vcHRpb25zWydwb3N0cHJvY2Vzc29yJ10pIHsNCiAgICAgICAgICAgICRjb250ZW50ID0gY2FsbF91c2VyX2Z1bmMoc2VsZjo6JF9vcHRpb25zWydwb3N0cHJvY2Vzc29yJ10sICRjb250ZW50LCAkdHlwZSk7DQogICAgICAgIH0NCiAgICAgICAgcmV0dXJuICRjb250ZW50Ow0KICAgIH0NCiAgICANCiAgICAvKioNCiAgICAgKiBNYWtlIGEgdW5pcXVlIGNhY2hlIGlkIGZvciBmb3IgdGhpcyByZXF1ZXN0Lg0KICAgICAqIA0KICAgICAqIEFueSBzZXR0aW5ncyB0aGF0IGNvdWxkIGFmZmVjdCBvdXRwdXQgYXJlIHRha2VuIGludG8gY29uc2lkZXJhdGlvbiAgDQogICAgICoNCiAgICAgKiBAcmV0dXJuIHN0cmluZw0KICAgICAqLw0KICAgIHByb3RlY3RlZCBzdGF0aWMgZnVuY3Rpb24gX2dldENhY2hlSWQoKSB7DQogICAgICAgIHJldHVybiBtZDUoc2VyaWFsaXplKGFycmF5KA0KICAgICAgICAgICAgTWluaWZ5X1NvdXJjZTo6Z2V0RGlnZXN0KHNlbGY6OiRfY29udHJvbGxlci0+c291cmNlcykNCiAgICAgICAgICAgICxzZWxmOjokX29wdGlvbnNbJ21pbmlmaWVycyddIA0KICAgICAgICAgICAgLHNlbGY6OiRfb3B0aW9uc1snbWluaWZpZXJPcHRpb25zJ10NCiAgICAgICAgKSkpOw0KICAgIH0gICAgDQp9DQo=]]></data>
	</file>
	<file>
	  <filename>/lib/Minify/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/Minify/CSS.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCi8qKg0KICogQ2xhc3MgTWluaWZ5X0NTUyAgDQogKiBAcGFja2FnZSBNaW5pZnkNCiAqLw0KDQovKioNCiAqIENvbXByZXNzIENTUw0KICoNCiAqIFRoaXMgaXMgYSBoZWF2eSByZWdleC1iYXNlZCByZW1vdmFsIG9mIHdoaXRlc3BhY2UsIHVubmVjZXNzYXJ5DQogKiBjb21tZW50cyBhbmQgdG9rZW5zLCBhbmQgc29tZSBDU1MgdmFsdWUgbWluaW1pemF0aW9uLCB3aGVyZSBwcmFjdGljYWwuDQogKiBNYW55IHN0ZXBzIGhhdmUgYmVlbiB0YWtlbiB0byBhdm9pZCBicmVha2luZyBjb21tZW50LWJhc2VkIGhhY2tzLCANCiAqIGluY2x1ZGluZyB0aGUgaWU1L21hYyBmaWx0ZXIgKGFuZCBpdHMgaW52ZXJzaW9uKSwgYnV0IGV4cGVjdCB0cmlja3kNCiAqIGhhY2tzIGludm9sdmluZyBjb21tZW50IHRva2VucyBpbiAnY29udGVudCcgdmFsdWUgc3RyaW5ncyB0byBicmVhaw0KICogbWluaW1pemF0aW9uIGJhZGx5LiBBIHRlc3Qgc3VpdGUgaXMgYXZhaWxhYmxlLg0KICogDQogKiBAcGFja2FnZSBNaW5pZnkNCiAqIEBhdXRob3IgU3RlcGhlbiBDbGF5IDxzdGV2ZUBtcmNsYXkub3JnPg0KICovDQpjbGFzcyBNaW5pZnlfQ1NTIHsNCiAgICANCiAgICAvKioNCiAgICAgKiBNaW5pZnkgYSBDU1Mgc3RyaW5nDQogICAgICogDQogICAgICogQHBhcmFtIHN0cmluZyAkY3NzDQogICAgICogDQogICAgICogQHBhcmFtIGFycmF5ICRvcHRpb25zIGF2YWlsYWJsZSBvcHRpb25zOg0KICAgICAqIA0KICAgICAqICdwcmVzZXJ2ZUNvbW1lbnRzJzogKGRlZmF1bHQgdHJ1ZSkgbXVsdGktbGluZSBjb21tZW50cyB0aGF0IGJlZ2luDQogICAgICogd2l0aCAiLyohIiB3aWxsIGJlIHByZXNlcnZlZCB3aXRoIG5ld2xpbmVzIGJlZm9yZSBhbmQgYWZ0ZXIgdG8NCiAgICAgKiBlbmhhbmNlIHJlYWRhYmlsaXR5Lg0KICAgICAqIA0KICAgICAqIEByZXR1cm4gc3RyaW5nDQogICAgICovDQogICAgcHVibGljIHN0YXRpYyBmdW5jdGlvbiBtaW5pZnkoJGNzcywgJG9wdGlvbnMgPSBhcnJheSgpKSANCiAgICB7DQogICAgICAgIGlmIChpc3NldCgkb3B0aW9uc1sncHJlc2VydmVDb21tZW50cyddKSANCiAgICAgICAgICAgICYmICEkb3B0aW9uc1sncHJlc2VydmVDb21tZW50cyddKSB7DQogICAgICAgICAgICByZXR1cm4gc2VsZjo6X21pbmlmeSgkY3NzLCAkb3B0aW9ucyk7ICAgIA0KICAgICAgICB9DQogICAgICAgICRyZXQgPSAnJzsNCiAgICAgICAgd2hpbGUgKDEpIHsNCiAgICAgICAgICAgIGxpc3QoJGJlZm9yZUNvbW1lbnQsICRjb21tZW50LCAkYWZ0ZXJDb21tZW50KQ0KICAgICAgICAgICAgICAgID0gc2VsZjo6X25leHRZdWlDb21tZW50KCRjc3MpOw0KICAgICAgICAgICAgJHJldCAuPSBzZWxmOjpfbWluaWZ5KCRiZWZvcmVDb21tZW50LCAkb3B0aW9ucyk7DQogICAgICAgICAgICBpZiAoZmFsc2UgPT09ICRjb21tZW50KSB7DQogICAgICAgICAgICAgICAgYnJlYWs7DQogICAgICAgICAgICB9DQogICAgICAgICAgICAkcmV0IC49ICRjb21tZW50Ow0KICAgICAgICAgICAgJGNzcyA9ICRhZnRlckNvbW1lbnQ7DQogICAgICAgIH0NCiAgICAgICAgcmV0dXJuICRyZXQ7DQogICAgfQ0KDQogICAgLyoqDQogICAgICogRXh0cmFjdCBjb21tZW50cyB0aGF0IFlVSSBDb21wcmVzc29yIHByZXNlcnZlcy4NCiAgICAgKiANCiAgICAgKiBAcGFyYW0gc3RyaW5nICRpbiBpbnB1dA0KICAgICAqIA0KICAgICAqIEByZXR1cm4gYXJyYXkgMyBlbGVtZW50cyBhcmUgcmV0dXJuZWQuIElmIGEgWVVJIGNvbW1lbnQgaXMgZm91bmQsIHRoZQ0KICAgICAqIDJuZCBlbGVtZW50IGlzIHRoZSBjb21tZW50IGFuZCB0aGUgMXN0IGFuZCAybmQgYXJlIHRoZSBzdXJyb3VuZGluZw0KICAgICAqIHN0cmluZ3MuIElmIG5vIGNvbW1lbnQgaXMgZm91bmQsIHRoZSBlbnRpcmUgc3RyaW5nIGlzIHJldHVybmVkIGFzIHRoZSANCiAgICAgKiAxc3QgZWxlbWVudCBhbmQgdGhlIG90aGVyIHR3byBhcmUgZmFsc2UuDQogICAgICovDQogICAgcHJpdmF0ZSBzdGF0aWMgZnVuY3Rpb24gX25leHRZdWlDb21tZW50KCRpbikNCiAgICB7DQogICAgICAgIHJldHVybiAoDQogICAgICAgICAgICAoZmFsc2UgIT09ICgkc3RhcnQgPSBzdHJwb3MoJGluLCAnLyohJykpKQ0KICAgICAgICAgICAgJiYgKGZhbHNlICE9PSAoJGVuZCA9IHN0cnBvcygkaW4sICcqLycsICRzdGFydCArIDMpKSkNCiAgICAgICAgKQ0KICAgICAgICAgICAgPyBhcnJheSgNCiAgICAgICAgICAgICAgICBzdWJzdHIoJGluLCAwLCAkc3RhcnQpDQogICAgICAgICAgICAgICAgLCJcbi8qIiAuIHN1YnN0cigkaW4sICRzdGFydCArIDMsICRlbmQgLSAkc3RhcnQgLSAxKSAuICJcbiINCiAgICAgICAgICAgICAgICAsc3Vic3RyKCRpbiwgLShzdHJsZW4oJGluKSAtICRlbmQgLSAyKSkNCiAgICAgICAgICAgICkNCiAgICAgICAgICAgIDogYXJyYXkoJGluLCBmYWxzZSwgZmFsc2UpOw0KICAgIH0NCiAgICANCiAgICAvKioNCiAgICAgKiBNaW5pZnkgYSBDU1Mgc3RyaW5nDQogICAgICogDQogICAgICogQHBhcmFtIHN0cmluZyAkY3NzDQogICAgICogDQogICAgICogQHBhcmFtIGFycmF5ICRvcHRpb25zIFRvIGVuYWJsZSBVUkwgcmV3cml0aW5nLCBzZXQgdGhlIHZhbHVlDQogICAgICogZm9yIGtleSAncHJlcGVuZFJlbGF0aXZlUGF0aCcuDQogICAgICogDQogICAgICogQHJldHVybiBzdHJpbmcNCiAgICAgKi8NCiAgICBwcm90ZWN0ZWQgc3RhdGljIGZ1bmN0aW9uIF9taW5pZnkoJGNzcywgJG9wdGlvbnMpIA0KICAgIHsNCiAgICAgICAgLy8gcHJlc2VydmUgZW1wdHkgY29tbWVudCBhZnRlciAnPicNCiAgICAgICAgLy8gaHR0cDovL3d3dy53ZWJkZXZvdXQubmV0L2Nzcy1oYWNrcyNpbl9jc3Mtc2VsZWN0b3JzDQogICAgICAgICRjc3MgPSBwcmVnX3JlcGxhY2UoJy8+XFwvXFwqXFxzKlxcKlxcLy8nLCAnPi8qa2VlcCovJywgJGNzcyk7DQogICAgICAgIA0KICAgICAgICAvLyBwcmVzZXJ2ZSBlbXB0eSBjb21tZW50IGJldHdlZW4gcHJvcGVydHkgYW5kIHZhbHVlDQogICAgICAgIC8vIGh0dHA6Ly9jc3MtZGlzY3Vzcy5pbmN1dGlvLmNvbS8/cGFnZT1Cb3hNb2RlbEhhY2sNCiAgICAgICAgJGNzcyA9IHByZWdfcmVwbGFjZSgnL1xcL1xcKlxccypcXCpcXC9cXHMqOi8nLCAnLyprZWVwKi86JywgJGNzcyk7DQogICAgICAgICRjc3MgPSBwcmVnX3JlcGxhY2UoJy86XFxzKlxcL1xcKlxccypcXCpcXC8vJywgJzovKmtlZXAqLycsICRjc3MpOw0KICAgICAgICANCiAgICAgICAgLy8gYXBwbHkgY2FsbGJhY2sgdG8gYWxsIHZhbGlkIGNvbW1lbnRzIChhbmQgc3RyaXAgb3V0IHN1cnJvdW5kaW5nIHdzDQogICAgICAgIHNlbGY6OiRfaW5IYWNrID0gZmFsc2U7DQogICAgICAgICRjc3MgPSBwcmVnX3JlcGxhY2VfY2FsbGJhY2soJy9cXHMqXFwvXFwqKFtcXHNcXFNdKj8pXFwqXFwvXFxzKi8nDQogICAgICAgICAgICAsYXJyYXkoJ01pbmlmeV9DU1MnLCAnX2NvbW1lbnRDQicpLCAkY3NzKTsNCg0KICAgICAgICAvLyBjb21wcmVzcyB3aGl0ZXNwYWNlLg0KICAgICAgICAkY3NzID0gcHJlZ19yZXBsYWNlKCcvXHMrLycsICcgJywgJGNzcyk7DQoNCiAgICAgICAgLy8gbGVhdmUgbmVlZGVkIGNvbW1lbnRzDQogICAgICAgICRjc3MgPSBzdHJfcmVwbGFjZSgnLyprZWVwKi8nLCAnLyoqLycsICRjc3MpOw0KICAgICAgICANCiAgICAgICAgLy8gcmVtb3ZlIHdzIGFyb3VuZCB7IH0NCiAgICAgICAgJGNzcyA9IHByZWdfcmVwbGFjZSgnL1xccyp7XFxzKi8nLCAneycsICRjc3MpOw0KICAgICAgICAkY3NzID0gcHJlZ19yZXBsYWNlKCcvOz9cXHMqfVxccyovJywgJ30nLCAkY3NzKTsNCiAgICAgICAgDQogICAgICAgIC8vIHJlbW92ZSB3cyBiZXR3ZWVuIHJ1bGVzDQogICAgICAgICRjc3MgPSBwcmVnX3JlcGxhY2UoJy9cXHMqO1xccyovJywgJzsnLCAkY3NzKTsNCiAgICAgICAgDQogICAgICAgIC8vIHJlbW92ZSB3cyBhcm91bmQgdXJscw0KICAgICAgICAkY3NzID0gcHJlZ19yZXBsYWNlKCcvdXJsXFwoW1xcc10qKFteXFwpXSs/KVtcXHNdKlxcKS8nLCAndXJsKCQxKScsICRjc3MpOw0KICAgICAgICANCiAgICAgICAgLy8gcmVtb3ZlIHdzIGJldHdlZW4gcnVsZXMgYW5kIGNvbG9ucw0KICAgICAgICAkY3NzID0gcHJlZ19yZXBsYWNlKCcvXFxzKihbeztdKVxccyooW1xcd1xcLV0rKVxccyo6XFxzKlxcYi8nLCAnJDEkMjonLCAkY3NzKTsNCiAgICAgICAgDQogICAgICAgIC8vIHJlbW92ZSB3cyBpbiBzZWxlY3RvcnMNCiAgICAgICAgJGNzcyA9IHByZWdfcmVwbGFjZV9jYWxsYmFjaygnLyg/OlxccypbXn4+KyxcXHNdK1xccypbLD4rfl0pK1xccypbXn4+KyxcXHNdK3svJw0KICAgICAgICAgICAgLGFycmF5KCdNaW5pZnlfQ1NTJywgJ19zZWxlY3RvcnNDQicpLCAkY3NzKTsNCiAgICAgICAgDQogICAgICAgIC8vIG1pbmltaXplIGhleCBjb2xvcnMNCiAgICAgICAgJGNzcyA9IHByZWdfcmVwbGFjZSgnLyhbXj1dKSMoW2EtZlxcZF0pXFwyKFthLWZcXGRdKVxcMyhbYS1mXFxkXSlcXDQoW1xccztcXH1dKS9pJw0KICAgICAgICAgICAgLCAnJDEjJDIkMyQ0JDUnLCAkY3NzKTsNCiAgICAgICAgDQogICAgICAgICRyZXdyaXRlID0gZmFsc2U7DQogICAgICAgIGlmIChpc3NldCgkb3B0aW9uc1sncHJlcGVuZFJlbGF0aXZlUGF0aCddKSkgew0KICAgICAgICAgICAgc2VsZjo6JF90ZW1wUHJlcGVuZCA9ICRvcHRpb25zWydwcmVwZW5kUmVsYXRpdmVQYXRoJ107DQogICAgICAgICAgICAkcmV3cml0ZSA9IHRydWU7DQogICAgICAgIH0gZWxzZWlmIChpc3NldCgkb3B0aW9uc1snY3VycmVudFBhdGgnXSkpIHsNCiAgICAgICAgICAgIHNlbGY6OiRfdGVtcEN1cnJlbnRQYXRoID0gJG9wdGlvbnNbJ2N1cnJlbnRQYXRoJ107DQogICAgICAgICAgICAkcmV3cml0ZSA9IHRydWU7DQogICAgICAgIH0NCiAgICAgICAgaWYgKCRyZXdyaXRlKSB7DQogICAgICAgICAgICAkY3NzID0gcHJlZ19yZXBsYWNlX2NhbGxiYWNrKCcvQGltcG9ydCAoW1wnIl0pKC4qPylbXCciXVxccyo7LycNCiAgICAgICAgICAgICAgICAsYXJyYXkoJ01pbmlmeV9DU1MnLCAnX3VybENCJyksICRjc3MpOw0KICAgICAgICAgICAgJGNzcyA9IHByZWdfcmVwbGFjZV9jYWxsYmFjaygnL3VybFxcKChbXlxcKV0rKVxcKS8nDQogICAgICAgICAgICAgICAgLGFycmF5KCdNaW5pZnlfQ1NTJywgJ191cmxDQicpLCAkY3NzKTsNCiAgICAgICAgfQ0KICAgICAgICBzZWxmOjokX3RlbXBQcmVwZW5kID0gc2VsZjo6JF90ZW1wQ3VycmVudFBhdGggPSAnJzsNCiAgICAgICAgcmV0dXJuIHRyaW0oJGNzcyk7DQogICAgfQ0KICAgIA0KICAgIC8qKg0KICAgICAqIEB2YXIgYm9vbCBBcmUgd2UgImluIiBhIGhhY2s/IA0KICAgICAqIA0KICAgICAqIEkuZS4gYXJlIHNvbWUgYnJvd3NlcnMgdGFyZ2V0dGVkIHVudGlsIHRoZSBuZXh0IGNvbW1lbnQ/ICAgDQogICAgICovDQogICAgcHJvdGVjdGVkIHN0YXRpYyAkX2luSGFjayA9IGZhbHNlOw0KICAgIA0KICAgIC8qKg0KICAgICAqIEB2YXIgc3RyaW5nIHN0cmluZyB0byBiZSBwcmVwZW5kZWQgdG8gcmVsYXRpdmUgVVJJcyAgIA0KICAgICAqLw0KICAgIHByb3RlY3RlZCBzdGF0aWMgJF90ZW1wUHJlcGVuZCA9ICcnOw0KICAgIA0KICAgIC8qKg0KICAgICAqIEB2YXIgc3RyaW5nIHBhdGggb2YgdGhpcyBzdHlsZXNoZWV0IGZvciByZXdyaXRpbmcgcHVycG9zZXMgICANCiAgICAgKi8NCiAgICBwcm90ZWN0ZWQgc3RhdGljICRfdGVtcEN1cnJlbnRQYXRoID0gJyc7DQogICAgDQogICAgLyoqDQogICAgICogUHJvY2VzcyB3aGF0IGxvb2tzIGxpa2UgYSBjb21tZW50IGFuZCByZXR1cm4gYSByZXBsYWNlbWVudA0KICAgICAqIA0KICAgICAqIEBwYXJhbSBhcnJheSAkbSByZWdleCBtYXRjaGVzDQogICAgICogDQogICAgICogQHJldHVybiBzdHJpbmcgICANCiAgICAgKi8NCiAgICBwcm90ZWN0ZWQgc3RhdGljIGZ1bmN0aW9uIF9jb21tZW50Q0IoJG0pDQogICAgew0KICAgICAgICAkbSA9ICRtWzFdOyANCiAgICAgICAgLy8gJG0gaXMgZXZlcnl0aGluZyBhZnRlciB0aGUgb3BlbmluZyB0b2tlbnMgYW5kIGJlZm9yZSB0aGUgY2xvc2luZyANCiAgICAgICAgLy8gdG9rZW5zIGJ1dCByZXR1cm4gd2lsbCByZXBsYWNlIHRoZSBlbnRpcmUgY29tbWVudC4NCiAgICAgICAgaWYgKCRtID09PSAna2VlcCcpIHsNCiAgICAgICAgICAgIHJldHVybiAnLyprZWVwKi8nOw0KICAgICAgICB9DQogICAgICAgIGlmIChzZWxmOjokX2luSGFjaykgew0KICAgICAgICAgICAgLy8gaW52ZXJzaW9uOiBmZWVkaW5nIG9ubHkgdG8gb25lIGJyb3dzZXINCiAgICAgICAgICAgIGlmIChwcmVnX21hdGNoKCcvXlxcL1xccyooXFxTW1xcc1xcU10rPylcXHMqXFwvXFwqLycsICRtLCAkbikpIHsNCiAgICAgICAgICAgICAgICBzZWxmOjokX2luSGFjayA9IGZhbHNlOw0KICAgICAgICAgICAgICAgIHJldHVybiAiLyoveyRuWzFdfS8qa2VlcCovIjsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfQ0KICAgICAgICBpZiAoc3Vic3RyKCRtLCAtMSkgPT09ICdcXCcpIHsNCiAgICAgICAgICAgIHNlbGY6OiRfaW5IYWNrID0gdHJ1ZTsNCiAgICAgICAgICAgIHJldHVybiAnLypcXCovJzsNCiAgICAgICAgfQ0KICAgICAgICBpZiAoJG1bMF0gPT09ICcvJykgew0KICAgICAgICAgICAgc2VsZjo6JF9pbkhhY2sgPSB0cnVlOw0KICAgICAgICAgICAgcmV0dXJuICcvKi8qLyc7DQogICAgICAgIH0NCiAgICAgICAgaWYgKHNlbGY6OiRfaW5IYWNrKSB7DQogICAgICAgICAgICBzZWxmOjokX2luSGFjayA9IGZhbHNlOw0KICAgICAgICAgICAgcmV0dXJuICcvKmtlZXAqLyc7DQogICAgICAgIH0NCiAgICAgICAgcmV0dXJuICcnOw0KICAgIH0NCiAgICANCiAgICAvKioNCiAgICAgKiBSZXBsYWNlIHdoYXQgbG9va3MgbGlrZSBhIHNldCBvZiBzZWxlY3RvcnMgIA0KICAgICAqDQogICAgICogQHBhcmFtIGFycmF5ICRtIHJlZ2V4IG1hdGNoZXMNCiAgICAgKiANCiAgICAgKiBAcmV0dXJuIHN0cmluZw0KICAgICAqLw0KICAgIHByb3RlY3RlZCBzdGF0aWMgZnVuY3Rpb24gX3NlbGVjdG9yc0NCKCRtKQ0KICAgIHsNCiAgICAgICAgcmV0dXJuIHByZWdfcmVwbGFjZSgnL1xccyooWyw+K35dKVxccyovJywgJyQxJywgJG1bMF0pOw0KICAgIH0NCiAgICANCiAgICBwcm90ZWN0ZWQgc3RhdGljIGZ1bmN0aW9uIF91cmxDQigkbSkNCiAgICB7DQogICAgICAgICRpc0ltcG9ydCA9ICgwID09PSBzdHJwb3MoJG1bMF0sICdAaW1wb3J0JykpOw0KICAgICAgICBpZiAoJGlzSW1wb3J0KSB7DQogICAgICAgICAgICAkcXVvdGUgPSAkbVsxXTsNCiAgICAgICAgICAgICR1cmwgPSAkbVsyXTsNCiAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgIC8vICRtWzFdIGlzIHN1cnJvdW5kZWQgYnkgcXVvdGVzIG9yIG5vdA0KICAgICAgICAgICAgJHF1b3RlID0gKCRtWzFdWzBdID09PSAnXCcnIHx8ICRtWzFdWzBdID09PSAnIicpDQogICAgICAgICAgICAgICAgPyAkbVsxXVswXQ0KICAgICAgICAgICAgICAgIDogJyc7DQogICAgICAgICAgICAkdXJsID0gKCRxdW90ZSA9PT0gJycpDQogICAgICAgICAgICAgICAgPyAkbVsxXQ0KICAgICAgICAgICAgICAgIDogc3Vic3RyKCRtWzFdLCAxLCBzdHJsZW4oJG1bMV0pIC0gMik7DQogICAgICAgIH0NCiAgICAgICAgaWYgKCcvJyAhPT0gJHVybFswXSkgew0KICAgICAgICAgICAgaWYgKHN0cnBvcygkdXJsLCAnLy8nKSA+IDApIHsNCiAgICAgICAgICAgICAgICAvLyBwcm9iYWJseSBzdGFydHMgd2l0aCBwcm90b2NvbCwgZG8gbm90IGFsdGVyDQogICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgICAgIC8vIHJlbGF0aXZlIFVSSSwgcmV3cml0ZSENCiAgICAgICAgICAgICAgICBpZiAoc2VsZjo6JF90ZW1wUHJlcGVuZCkgew0KICAgICAgICAgICAgICAgICAgICAkdXJsID0gc2VsZjo6JF90ZW1wUHJlcGVuZCAuICR1cmw7ICAgIA0KICAgICAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgICAgIC8vIHJld3JpdGUgYWJzb2x1dGUgdXJsIGZyb20gc2NyYXRjaCENCiAgICAgICAgICAgICAgICAgICAgLy8gcHJlcGVuZCBwYXRoIHdpdGggY3VycmVudCBkaXIgc2VwYXJhdG9yIChPUy1pbmRlcGVuZGVudCkNCiAgICAgICAgICAgICAgICAgICAgJHBhdGggPSBzZWxmOjokX3RlbXBDdXJyZW50UGF0aCANCiAgICAgICAgICAgICAgICAgICAgICAgIC4gRElSRUNUT1JZX1NFUEFSQVRPUiAuIHN0cnRyKCR1cmwsICcvJywgRElSRUNUT1JZX1NFUEFSQVRPUik7DQogICAgICAgICAgICAgICAgICAgIC8vIHN0cmlwIGRvYyByb290DQogICAgICAgICAgICAgICAgICAgICRwYXRoID0gc3Vic3RyKCRwYXRoLCBzdHJsZW4oJF9TRVJWRVJbJ0RPQ1VNRU5UX1JPT1QnXSkpOw0KICAgICAgICAgICAgICAgICAgICAvLyBmaXggdG8gYWJzb2x1dGUgVVJMDQogICAgICAgICAgICAgICAgICAgICR1cmwgPSBzdHJ0cigkcGF0aCwgRElSRUNUT1JZX1NFUEFSQVRPUiwgJy8nKTsNCiAgICAgICAgICAgICAgICAgICAgJHVybCA9IHN0cl9yZXBsYWNlKCcvLi8nLCAnLycsICR1cmwpOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0NCiAgICAgICAgfQ0KICAgICAgICBpZiAoJGlzSW1wb3J0KSB7DQogICAgICAgICAgICByZXR1cm4gIkBpbXBvcnQgeyRxdW90ZX17JHVybH17JHF1b3RlfTsiOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgcmV0dXJuICJ1cmwoeyRxdW90ZX17JHVybH17JHF1b3RlfSkiOw0KICAgICAgICB9DQogICAgfQ0KfQ0KDQo=]]></data>
	</file>
	<file>
	  <filename>/lib/Minify/HTML.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCi8qKg0KICogQ2xhc3MgTWluaWZ5X0hUTUwgIA0KICogQHBhY2thZ2UgTWluaWZ5DQogKi8NCg0KLyoqDQogKiBDb21wcmVzcyBIVE1MDQogKg0KICogVGhpcyBpcyBhIGhlYXZ5IHJlZ2V4LWJhc2VkIHJlbW92YWwgb2Ygd2hpdGVzcGFjZSwgdW5uZWNlc3NhcnkNCiAqIGNvbW1lbnRzIGFuZCB0b2tlbnMuDQogKiANCiAqIElFIGNvbmRpdGlvbmFsIGNvbW1lbnRzIGFyZSBwcmVzZXJ2ZWQuIFRoZXJlIGFyZSBhbHNvIG9wdGlvbnMgdG8gaGF2ZSBTVFlMRQ0KICogYW5kIFNDUklQVCBibG9ja3MgY29tcHJlc3NlZCBieSBjYWxsYmFjayBmdW5jdGlvbnMuIEEgdGVzdCBzdWl0ZSBpcyBhdmFpbGFibGUuDQogKiANCiAqIEBwYWNrYWdlIE1pbmlmeQ0KICogQGF1dGhvciBTdGVwaGVuIENsYXkgPHN0ZXZlQG1yY2xheS5vcmc+DQogKi8NCmNsYXNzIE1pbmlmeV9IVE1MIHsNCiAgICANCiAgICAvKioNCiAgICAgKiAiTWluaWZ5IiBhbiBIVE1MIHBhZ2UNCiAgICAgKg0KICAgICAqIEB0b2RvOiBUbyBhbHNvIG1pbmlmeSBlbWJlZGRlZCBKYXZhc2NyaXB0L0NTUywgeW91IG11c3QuLi4NCiAgICAgKiANCiAgICAgKi8NCiAgICBwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIG1pbmlmeSgkc3RyaW5nLCAkb3B0aW9ucyA9IGFycmF5KCkpIHsNCiAgICAgICAgDQogICAgICAgIGlmIChpc3NldCgkb3B0aW9uc1snY3NzTWluaWZpZXInXSkpIHsNCiAgICAgICAgICAgIHNlbGY6OiRfY3NzTWluaWZpZXIgPSAkb3B0aW9uc1snY3NzTWluaWZpZXInXTsNCiAgICAgICAgfQ0KICAgICAgICBpZiAoaXNzZXQoJG9wdGlvbnNbJ2pzTWluaWZpZXInXSkpIHsNCiAgICAgICAgICAgIHNlbGY6OiRfanNNaW5pZmllciA9ICRvcHRpb25zWydqc01pbmlmaWVyJ107DQogICAgICAgIH0NCiAgICAgICAgDQogICAgICAgICRodG1sID0gdHJpbSgkc3RyaW5nKTsNCiAgICAgICAgDQogICAgICAgIHNlbGY6OiRfaXNYaHRtbCA9IChmYWxzZSAhPT0gc3RycG9zKCRodG1sLCAnPCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCcpKTsNCiAgICAgICAgDQogICAgICAgIHNlbGY6OiRfcmVwbGFjZW1lbnRIYXNoID0gJ01JTklGWUhUTUwnIC4gbWQ1KHRpbWUoKSk7DQogICAgICAgIA0KICAgICAgICAvLyByZW1vdmUgU0NSSVBUcyAoYW5kIG1pbmlmeSkNCiAgICAgICAgJGh0bWwgPSBwcmVnX3JlcGxhY2VfY2FsbGJhY2soJy9cXHMqKDxzY3JpcHRcXGJbXj5dKj8+KShbXFxzXFxTXSo/KTxcXC9zY3JpcHQ+XFxzKi9pJywNCiAgICAgICAgICAgIGFycmF5KCdNaW5pZnlfSFRNTCcsICdfcmVtb3ZlU2NyaXB0Q0InKSwgJGh0bWwpOw0KICAgICAgICANCiAgICAgICAgLy8gcmVtb3ZlIFNUWUxFcyAoYW5kIG1pbmlmeSkNCiAgICAgICAgJGh0bWwgPSBwcmVnX3JlcGxhY2VfY2FsbGJhY2soJy9cXHMqKDxzdHlsZVxcYltePl0qPz4pKFtcXHNcXFNdKj8pPFxcL3N0eWxlPlxccyovaScsDQogICAgICAgICAgICBhcnJheSgnTWluaWZ5X0hUTUwnLCAnX3JlbW92ZVN0eWxlQ0InKSwgJGh0bWwpOw0KICAgICAgICANCiAgICAgICAgLy8gcmVtb3ZlIEhUTUwgY29tbWVudHMgKGJ1dCBub3QgSUUgY29uZGl0aW9uYWwgY29tbWVudHMpLg0KICAgICAgICAkaHRtbCA9IHByZWdfcmVwbGFjZSgnLzwhLS1bXlxcW11bXFxzXFxTXSo/LS0+LycsICcnLCAkaHRtbCk7DQogICAgICAgIA0KICAgICAgICAvLyByZXBsYWNlIFBSRXMgd2l0aCB0b2tlbiB0ZXh0DQogICAgICAgIHNlbGY6OiRfcHJlcyA9IGFycmF5KCk7DQogICAgICAgICRodG1sID0gcHJlZ19yZXBsYWNlX2NhbGxiYWNrKCcvXFxzKig8cHJlXFxiW14+XSo/PltcXHNcXFNdKj88XFwvcHJlPilcXHMqL2knDQogICAgICAgICAgICAsYXJyYXkoJ01pbmlmeV9IVE1MJywgJ19yZW1vdmVQcmVDQicpDQogICAgICAgICAgICAsICRodG1sKTsNCiAgICAgICAgDQogICAgICAgIC8vIHJlbW92ZSBsZWFkaW5nIGFuZCB0cmFpbGluZyB3cyBmcm9tIGVhY2ggbGluZS4NCiAgICAgICAgLy8gQHRvZG8gdGFrZSBpbnRvIGFjY291bnQgYXR0cmlidXRlIHZhbHVlcyB0aGF0IHNwYW4gbXVsdGlwbGUgbGluZXMuDQogICAgICAgICRodG1sID0gcHJlZ19yZXBsYWNlKCcvXlxccyooLio/KVxccyokL20nLCAiJDEiLCAkaHRtbCk7DQogICAgICAgIA0KICAgICAgICAvLyByZW1vdmUgd3MgYXJvdW5kIGJsb2NrL3VuZGlzcGxheWVkIGVsZW1lbnRzDQogICAgICAgICRodG1sID0gcHJlZ19yZXBsYWNlKCcvXFxzKig8XFwvPyg/OmFyZWF8YmFzZSg/OmZvbnQpP3xibG9ja3F1b3RlfGJvZHknDQogICAgICAgICAgICAuJ3xjYXB0aW9ufGNlbnRlcnxjaXRlfGNvbCg/Omdyb3VwKT98ZGR8ZGlyfGRpdnxkbHxkdHxmaWVsZHNldHxmb3JtJw0KICAgICAgICAgICAgLid8ZnJhbWUoPzpzZXQpP3xoWzEtNl18aGVhZHxocnxodG1sfGxlZ2VuZHxsaXxsaW5rfG1hcHxtZW51fG1ldGEnDQogICAgICAgICAgICAuJ3xvbHxvcHQoPzpncm91cHxpb24pfHB8cGFyYW18dCg/OmFibGV8Ym9keXxoZWFkfGR8aHx8cnxmb290KXx0aXRsZScNCiAgICAgICAgICAgIC4nfHVsKVxcYltePl0qPikvaScsICckMScsICRodG1sKTsNCiAgICAgICAgDQogICAgICAgIC8vIHJlbW92ZSB3cyBiZXR3ZWVuIGFuZCBpbnNpZGUgZWxlbWVudHMuDQogICAgICAgICRodG1sID0gcHJlZ19yZXBsYWNlKCcvPlxccysoXFxTW1xcc1xcU10qPyk/PC8nLCAiPiAkMTwiLCAkaHRtbCk7DQogICAgICAgICRodG1sID0gcHJlZ19yZXBsYWNlKCcvPihcXFNbXFxzXFxTXSo/KT9cXHMrPC8nLCAiPiQxIDwiLCAkaHRtbCk7DQogICAgICAgICRodG1sID0gcHJlZ19yZXBsYWNlKCcvPlxccys8LycsICI+IDwiLCAkaHRtbCk7DQogICAgICAgIA0KICAgICAgICAvLyByZXBsYWNlIFBSRXMNCiAgICAgICAgJGkgPSBjb3VudChzZWxmOjokX3ByZXMpOw0KICAgICAgICB3aGlsZSAoJGkgPiAwKSB7DQogICAgICAgICAgICAkcmVwID0gYXJyYXlfcG9wKHNlbGY6OiRfcHJlcyk7DQogICAgICAgICAgICAkaHRtbCA9IHN0cl9yZXBsYWNlKHNlbGY6OiRfcmVwbGFjZW1lbnRIYXNoIC4gJ1BSRScgLiAkaSwgJHJlcCwgJGh0bWwpOw0KICAgICAgICAgICAgJGktLTsNCiAgICAgICAgfQ0KICAgICAgICANCiAgICAgICAgLy8gcmVwbGFjZSBTQ1JJUFRzDQogICAgICAgICRpID0gY291bnQoc2VsZjo6JF9zY3JpcHRzKTsNCiAgICAgICAgd2hpbGUgKCRpID4gMCkgew0KICAgICAgICAgICAgJHJlcCA9IGFycmF5X3BvcChzZWxmOjokX3NjcmlwdHMpOw0KICAgICAgICAgICAgJGh0bWwgPSBzdHJfcmVwbGFjZShzZWxmOjokX3JlcGxhY2VtZW50SGFzaCAuICdTQ1JJUFQnIC4gJGksICRyZXAsICRodG1sKTsNCiAgICAgICAgICAgICRpLS07DQogICAgICAgIH0NCiAgICAgICAgDQogICAgICAgIC8vIHJlcGxhY2UgU1RZTEVzDQogICAgICAgICRpID0gY291bnQoc2VsZjo6JF9zdHlsZXMpOw0KICAgICAgICB3aGlsZSAoJGkgPiAwKSB7DQogICAgICAgICAgICAkcmVwID0gYXJyYXlfcG9wKHNlbGY6OiRfc3R5bGVzKTsNCiAgICAgICAgICAgICRodG1sID0gc3RyX3JlcGxhY2Uoc2VsZjo6JF9yZXBsYWNlbWVudEhhc2ggLiAnU1RZTEUnIC4gJGksICRyZXAsICRodG1sKTsNCiAgICAgICAgICAgICRpLS07DQogICAgICAgIH0NCiAgICAgICAgDQogICAgICAgIHNlbGY6OiRfY3NzTWluaWZpZXIgPSBzZWxmOjokX2pzTWluaWZpZXIgPSBudWxsOw0KICAgICAgICByZXR1cm4gJGh0bWw7DQogICAgfQ0KDQogICAgcHJvdGVjdGVkIHN0YXRpYyAkX2lzWGh0bWwgPSBmYWxzZTsNCiAgICBwcm90ZWN0ZWQgc3RhdGljICRfcmVwbGFjZW1lbnRIYXNoID0gbnVsbDsNCiAgICBwcm90ZWN0ZWQgc3RhdGljICRfcHJlcyA9IGFycmF5KCk7DQogICAgcHJvdGVjdGVkIHN0YXRpYyAkX3NjcmlwdHMgPSBhcnJheSgpOw0KICAgIHByb3RlY3RlZCBzdGF0aWMgJF9zdHlsZXMgPSBhcnJheSgpOw0KICAgIHByb3RlY3RlZCBzdGF0aWMgJF9jc3NNaW5pZmllciA9IG51bGw7DQogICAgcHJvdGVjdGVkIHN0YXRpYyAkX2pzTWluaWZpZXIgPSBudWxsOw0KDQogICAgcHJvdGVjdGVkIHN0YXRpYyBmdW5jdGlvbiBfcmVtb3ZlUHJlQ0IoJG0pDQogICAgew0KICAgICAgICBzZWxmOjokX3ByZXNbXSA9ICRtWzFdOw0KICAgICAgICByZXR1cm4gc2VsZjo6JF9yZXBsYWNlbWVudEhhc2ggLiAnUFJFJyAuIGNvdW50KHNlbGY6OiRfcHJlcyk7DQogICAgfQ0KDQogICAgcHJvdGVjdGVkIHN0YXRpYyBmdW5jdGlvbiBfcmVtb3ZlU3R5bGVDQigkbSkNCiAgICB7DQogICAgICAgICRvcGVuU3R5bGUgPSAkbVsxXTsNCiAgICAgICAgJGNzcyA9ICRtWzJdOw0KICAgICAgICAvLyByZW1vdmUgSFRNTCBjb21tZW50cw0KICAgICAgICAkY3NzID0gcHJlZ19yZXBsYWNlKCcvKD86Xlxccyo8IS0tfC0tPlxccyokKS8nLCAnJywgJGNzcyk7DQogICAgICAgIA0KICAgICAgICAvLyByZW1vdmUgQ0RBVEEgc2VjdGlvbiBtYXJrZXJzDQogICAgICAgICRjc3MgPSBzZWxmOjpfcmVtb3ZlQ2RhdGEoJGNzcyk7DQogICAgICAgIA0KICAgICAgICAvLyBtaW5pZnkNCiAgICAgICAgJG1pbmlmaWVyID0gc2VsZjo6JF9jc3NNaW5pZmllcg0KICAgICAgICAgICAgPyBzZWxmOjokX2Nzc01pbmlmaWVyDQogICAgICAgICAgICA6ICd0cmltJzsNCiAgICAgICAgJGNzcyA9IGNhbGxfdXNlcl9mdW5jKCRtaW5pZmllciwgJGNzcyk7DQogICAgICAgIA0KICAgICAgICAvLyBzdG9yZQ0KICAgICAgICBzZWxmOjokX3N0eWxlc1tdID0gc2VsZjo6X25lZWRzQ2RhdGEoJGNzcykNCiAgICAgICAgICAgID8gInskb3BlblN0eWxlfS8qPCFbQ0RBVEFbKi97JGNzc30vKl1dPiovPC9zdHlsZT4iDQogICAgICAgICAgICA6ICJ7JG9wZW5TdHlsZX17JGNzc308L3N0eWxlPiI7IA0KICAgICAgICANCiAgICAgICAgDQogICAgICAgIHJldHVybiBzZWxmOjokX3JlcGxhY2VtZW50SGFzaCAuICdTVFlMRScgLiBjb3VudChzZWxmOjokX3N0eWxlcyk7DQogICAgfQ0KDQogICAgcHJvdGVjdGVkIHN0YXRpYyBmdW5jdGlvbiBfcmVtb3ZlU2NyaXB0Q0IoJG0pDQogICAgew0KICAgICAgICAkb3BlblNjcmlwdCA9ICRtWzFdOw0KICAgICAgICAkanMgPSAkbVsyXTsNCiAgICAgICAgDQogICAgICAgIC8vIHJlbW92ZSBIVE1MIGNvbW1lbnRzIChhbmQgZW5kaW5nICIvLyIgaWYgcHJlc2VudCkNCiAgICAgICAgJGpzID0gcHJlZ19yZXBsYWNlKCcvKD86Xlxccyo8IS0tXFxzKnxcXHMqKD86XFwvXFwvKT9cXHMqLS0+XFxzKiQpLycsICcnLCAkanMpOw0KICAgICAgICAgICAgDQogICAgICAgIC8vIHJlbW92ZSBDREFUQSBzZWN0aW9uIG1hcmtlcnMNCiAgICAgICAgJGpzID0gc2VsZjo6X3JlbW92ZUNkYXRhKCRqcyk7DQogICAgICAgIA0KICAgICAgICAvLyBtaW5pZnkNCiAgICAgICAgJG1pbmlmaWVyID0gc2VsZjo6JF9qc01pbmlmaWVyDQogICAgICAgICAgICA/IHNlbGY6OiRfanNNaW5pZmllcg0KICAgICAgICAgICAgOiAndHJpbSc7IA0KICAgICAgICAkanMgPSBjYWxsX3VzZXJfZnVuYygkbWluaWZpZXIsICRqcyk7DQogICAgICAgIA0KICAgICAgICAvLyBzdG9yZQ0KICAgICAgICBzZWxmOjokX3NjcmlwdHNbXSA9IHNlbGY6Ol9uZWVkc0NkYXRhKCRqcykNCiAgICAgICAgICAgID8gInskb3BlblNjcmlwdH0vKjwhW0NEQVRBWyoveyRqc30vKl1dPiovPC9zY3JpcHQ+Ig0KICAgICAgICAgICAgOiAieyRvcGVuU2NyaXB0fXskanN9PC9zY3JpcHQ+IjsNCiAgICAgICAgcmV0dXJuIHNlbGY6OiRfcmVwbGFjZW1lbnRIYXNoIC4gJ1NDUklQVCcgLiBjb3VudChzZWxmOjokX3NjcmlwdHMpOw0KICAgIH0NCg0KICAgIHByb3RlY3RlZCBzdGF0aWMgZnVuY3Rpb24gX3JlbW92ZUNkYXRhKCRzdHIpDQogICAgew0KICAgICAgICByZXR1cm4gKGZhbHNlICE9PSBzdHJwb3MoJHN0ciwgJzwhW0NEQVRBWycpKQ0KICAgICAgICAgICAgPyBzdHJfcmVwbGFjZShhcnJheSgnPCFbQ0RBVEFbJywgJ11dPicpLCAnJywgJHN0cikNCiAgICAgICAgICAgIDogJHN0cjsNCiAgICB9DQogICAgDQogICAgcHJvdGVjdGVkIHN0YXRpYyBmdW5jdGlvbiBfbmVlZHNDZGF0YSgkc3RyKQ0KICAgIHsNCiAgICAgICAgcmV0dXJuIChzZWxmOjokX2lzWGh0bWwgJiYgcHJlZ19tYXRjaCgnLyg/Ols8Jl18XFwtXFwtfFxcXVxcXT4pLycsICRzdHIpKTsNCiAgICB9DQp9DQoNCg==]]></data>
	</file>
	<file>
	  <filename>/lib/Minify/Javascript.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCi8qKg0KICogQ2xhc3MgTWluaWZ5X0phdmFzY3JpcHQgIA0KICogQHBhY2thZ2UgTWluaWZ5DQogKi8NCg0KcmVxdWlyZSAnSlNNaW4ucGhwJzsNCg0KLyoqDQogKiBDb21wcmVzcyBKYXZhc2NyaXB0IHVzaW5nIFJ5YW4gR3JvdmUncyBKU01pbiBjbGFzcw0KICoNCiAqIEBwYWNrYWdlIE1pbmlmeQ0KICogQGF1dGhvciBTdGVwaGVuIENsYXkgPHN0ZXZlQG1yY2xheS5vcmc+DQogKi8NCmNsYXNzIE1pbmlmeV9KYXZhc2NyaXB0IHsNCg0KICAgIC8qKg0KICAgICAqIE1pbmlmeSBhIEphdmFzY3JpcHQgc3RyaW5nDQogICAgICogDQogICAgICogQHBhcmFtIHN0cmluZyAkanMNCiAgICAgKiANCiAgICAgKiBAcGFyYW0gYXJyYXkgJG9wdGlvbnMgYXZhaWxhYmxlIG9wdGlvbnM6DQogICAgICogDQogICAgICogJ3ByZXNlcnZlQ29tbWVudHMnOiAoZGVmYXVsdCB0cnVlKSBtdWx0aS1saW5lIGNvbW1lbnRzIHRoYXQgYmVnaW4NCiAgICAgKiB3aXRoICIvKiEiIHdpbGwgYmUgcHJlc2VydmVkIHdpdGggbmV3bGluZXMgYmVmb3JlIGFuZCBhZnRlciB0bw0KICAgICAqIGVuaGFuY2UgcmVhZGFiaWxpdHkuDQogICAgICogDQogICAgICogQHJldHVybiBzdHJpbmcgDQogICAgICovDQogICAgcHVibGljIHN0YXRpYyBmdW5jdGlvbiBtaW5pZnkoJGpzLCAkb3B0aW9ucyA9IGFycmF5KCkpIA0KICAgIHsNCiAgICAgICAgaWYgKGlzc2V0KCRvcHRpb25zWydwcmVzZXJ2ZUNvbW1lbnRzJ10pIA0KICAgICAgICAgICAgJiYgISRvcHRpb25zWydwcmVzZXJ2ZUNvbW1lbnRzJ10pIHsNCiAgICAgICAgICAgIHJldHVybiB0cmltKEpTTWluOjptaW5pZnkoJGpzKSk7ICAgIA0KICAgICAgICB9DQogICAgICAgICRyZXQgPSAnJzsNCiAgICAgICAgd2hpbGUgKDEpIHsNCiAgICAgICAgICAgIGxpc3QoJGJlZm9yZUNvbW1lbnQsICRjb21tZW50LCAkYWZ0ZXJDb21tZW50KQ0KICAgICAgICAgICAgICAgID0gc2VsZjo6X25leHRZdWlDb21tZW50KCRqcyk7DQogICAgICAgICAgICAkcmV0IC49IHRyaW0oSlNNaW46Om1pbmlmeSgkYmVmb3JlQ29tbWVudCkpOw0KICAgICAgICAgICAgaWYgKGZhbHNlID09PSAkY29tbWVudCkgew0KICAgICAgICAgICAgICAgIGJyZWFrOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgJHJldCAuPSAkY29tbWVudDsNCiAgICAgICAgICAgICRqcyA9ICRhZnRlckNvbW1lbnQ7DQogICAgICAgIH0NCiAgICAgICAgcmV0dXJuICRyZXQ7DQogICAgfQ0KICAgIA0KICAgIC8qKg0KICAgICAqIEV4dHJhY3QgY29tbWVudHMgdGhhdCBZVUkgQ29tcHJlc3NvciBwcmVzZXJ2ZXMuDQogICAgICogDQogICAgICogQHBhcmFtIHN0cmluZyAkaW4gaW5wdXQNCiAgICAgKiANCiAgICAgKiBAcmV0dXJuIGFycmF5IDMgZWxlbWVudHMgYXJlIHJldHVybmVkLiBJZiBhIFlVSSBjb21tZW50IGlzIGZvdW5kLCB0aGUNCiAgICAgKiAybmQgZWxlbWVudCBpcyB0aGUgY29tbWVudCBhbmQgdGhlIDFzdCBhbmQgMm5kIGFyZSB0aGUgc3Vycm91bmRpbmcNCiAgICAgKiBzdHJpbmdzLiBJZiBubyBjb21tZW50IGlzIGZvdW5kLCB0aGUgZW50aXJlIHN0cmluZyBpcyByZXR1cm5lZCBhcyB0aGUgDQogICAgICogMXN0IGVsZW1lbnQgYW5kIHRoZSBvdGhlciB0d28gYXJlIGZhbHNlLg0KICAgICAqLw0KICAgIHByaXZhdGUgc3RhdGljIGZ1bmN0aW9uIF9uZXh0WXVpQ29tbWVudCgkaW4pDQogICAgew0KICAgICAgICByZXR1cm4gKA0KICAgICAgICAgICAgKGZhbHNlICE9PSAoJHN0YXJ0ID0gc3RycG9zKCRpbiwgJy8qIScpKSkNCiAgICAgICAgICAgICYmIChmYWxzZSAhPT0gKCRlbmQgPSBzdHJwb3MoJGluLCAnKi8nLCAkc3RhcnQgKyAzKSkpDQogICAgICAgICkNCiAgICAgICAgICAgID8gYXJyYXkoDQogICAgICAgICAgICAgICAgc3Vic3RyKCRpbiwgMCwgJHN0YXJ0KQ0KICAgICAgICAgICAgICAgICwiXG4vKiIgLiBzdWJzdHIoJGluLCAkc3RhcnQgKyAzLCAkZW5kIC0gJHN0YXJ0IC0gMSkgLiAiXG4iDQogICAgICAgICAgICAgICAgLHN1YnN0cigkaW4sIC0oc3RybGVuKCRpbikgLSAkZW5kIC0gMikpDQogICAgICAgICAgICApDQogICAgICAgICAgICA6IGFycmF5KCRpbiwgZmFsc2UsIGZhbHNlKTsNCiAgICB9DQp9DQoNCg==]]></data>
	</file>
	<file>
	  <filename>/method.install.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCi8qKg0KICogTW9kdWxlOiBTY3JpcHREZXBsb3kgLSBNaW5pZnkgYW5kIGRlcGxveW1lbnQgb2YgSlMgQ1NTIGFuZCBIVE1MDQogKiANCiAqIA0KICogQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykNCiAqIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnDQogKiBUaGUgbW9kdWxlJ3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvc2NyaXB0ZGVwbG95Lw0KICogDQogKiBAcGFja2FnZSBTY3JpcHREZXBsb3kNCiAqIEBhdXRob3IgamVyZW15QmFzcyA8amVyZW15QmFzc0BjYWJsZW9uZS5uZXQ+DQogKiBAY29weXJpZ2h0IEplcmVteSBCYXNzDQogKiBAbGljZW5zZSBodHRwOi8vd3d3LmdudS5vcmcvY29weWxlZnQvZ3BsLmh0bWwgRnJlZWx5IGF2YWlsYWJsZSB1bmRlciBHUEwNCiAqLyANCg0KLy9pZiAoIWlzc2V0KGNtc21zKCkpKSBleGl0Ow0KCSRjb25maWcgPSBjbXNtcygpLT5HZXRDb25maWcoKTsgDQoJLy8kZGIgPSYgY21zbXMoKS0+R2V0RGIoKTsNCgkkdGFib3B0YXJyYXkgPSBhcnJheSgnbXlzcWwnID0+ICdUWVBFPU15SVNBTScpOw0KCSRkaWN0ID0gTmV3RGF0YURpY3Rpb25hcnkoJGRiKTsNCgkNCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8NCgkkZmxkcyA9ICINCgkJSUQgSSBLRVkgQVVUTywNCgkJU2NyaXB0U2V0IEMoMjU1KQ0KCQkiOw0KCSRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNRTChTRF9TQ1JJUFROQU1FUywkZmxkcywgJHRhYm9wdGFycmF5KTsNCgkkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7DQovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQoJJGZsZHMgPSAiDQoJCUlEIEkgS0VZIE5PVCBOVUxMLA0KCQl1c2VySUQgSSwNCgkJcmV2aXNpb24gSSwNCgkJcGF0aE9wdGlvbiBDKDI1NSksDQoJCW5vdGVzIEMoMTAyNCksDQoJCXNjcmlwdFR5cGUgQygzKSwNCgkJdmFsaWQgSSwNCgkJc2NyaXB0U2l6ZSBJLA0KCQlDdXJyZW50cmV2aXNpb24gSSwNCgkJY3JlYXRlZCAiIC4gQ01TX0FET0RCX0RUIC4gIiwNCgkJbGFzdF9lZGl0ICIgLiBDTVNfQURPREJfRFQgLiAiDQoJCSI7DQoJJHNxbGFycmF5ID0gJGRpY3QtPkNyZWF0ZVRhYmxlU1FMKFNEX1NDUklQVE9QVElPTlMsJGZsZHMsICR0YWJvcHRhcnJheSk7DQoJJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOw0KLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLw0KCSRmbGRzID0gIg0KCQlJRCBJLA0KCQlTY3JpcHRJcyBYMg0KCQkiOw0KCSRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNRTChTRF9TQ1JJUFRQQVJUUywkZmxkcywgJHRhYm9wdGFycmF5KTsNCgkkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7DQovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQoJJGZsZHMgPSAiDQoJCXVzZXJJRCBJLA0KCQlzY3JpcHRJRCBJLA0KCQlyZXZpc2lvbiBJLA0KCQlTY3JpcHRJc0JLVVAgWDIsDQoJCWNyZWF0ZWQgIiAuIENNU19BRE9EQl9EVCAuICINCgkJIjsNCgkkc3FsYXJyYXkgPSAkZGljdC0+Q3JlYXRlVGFibGVTUUwoU0RfU0NSSVBUVU5ETywkZmxkcywgJHRhYm9wdGFycmF5KTsNCgkkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7DQovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQoJJGZsZHMgPSAiDQoJCUlEIEkgS0VZIEFVVE8sDQoJCUdyb3VwdFNldCBDKDI1NSksDQoJCUdyb3VwdFR5cGUgQygzKQ0KCQkiOw0KCSRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNRTChTRF9HUk9VUCwkZmxkcywgJHRhYm9wdGFycmF5KTsNCgkkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7DQovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQoJJGZsZHMgPSAiDQoJCUdyb3VwdFNldElEIEksDQoJCVNjcmlwdElEIEksDQoJCVNjcmlwdE9SREVSIEkNCgkJIjsNCgkkc3FsYXJyYXkgPSAkZGljdC0+Q3JlYXRlVGFibGVTUUwoU0RfR1JPVVBBU1NJR05NRU5ULCRmbGRzLCAkdGFib3B0YXJyYXkpOw0KCSRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsNCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8JDQoJJGZsZHMgPSAiDQoJCQkgZ3JvdXBpZCBJIEtFWSBBVVRPLA0KCQkJIHRlbXBsYXRlX2lkIEkgS0VZLA0KCQkJIHByZWZlcnJlZF9zcyBJDQoJCQkiOw0KCSRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNRTChTRF9UQUJMRSwgJGZsZHMsICR0YWJvcHRhcnJheSk7DQoJJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSggJHNxbGFycmF5ICk7DQovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQoJJGZsZHMgPSAiZ3JvdXBpZCBJLA0KCQkJIHN0eWxlc2hlZXRfaWQgSSI7DQoJJHNxbGFycmF5ID0gJGRpY3QtPkNyZWF0ZVRhYmxlU1FMKFNEX1BFUlNJU1RFTlQsICRmbGRzLCAkdGFib3B0YXJyYXkpOw0KCSRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoICRzcWxhcnJheSApOw0KLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLw0KCSRmbGRzID0gImdyb3VwaWQgSSwNCgkJCSBzdHlsZXNoZWV0X2lkIEkiOw0KCSRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNRTChTRF9BTFRFUk5BVEUsICRmbGRzLCAkdGFib3B0YXJyYXkpOw0KCSRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoICRzcWxhcnJheSApOw0KDQovKg0KKg0KKg0KKg0KKg0KKi8NCiAgICAvLyBTZXRQcmVmZXJlbmNlDQoJJHRoaXMtPlNldFByZWZlcmVuY2UoJ2RlYnVnSVQnLCAwKTsNCgkkdGhpcy0+U2V0UHJlZmVyZW5jZSgnU2hvd1ZhbCcsIDApOw0KCSR0aGlzLT5TZXRQcmVmZXJlbmNlKCdUdXJuT05WYWwnLCAxKTsNCgkkdGhpcy0+U2V0UHJlZmVyZW5jZSgnZmlsZVRpbWVfY3NzX3VybHMnLCAwKTsNCg0KCSR0aGlzLT5TZXRQcmVmZXJlbmNlKCdDU1Nwcm9maWxlJywgJ2NzczIxJyk7DQoJJHRoaXMtPlNldFByZWZlcmVuY2UoJ1ZBTExhbmcnLCAnZW4nKTsNCgkkdGhpcy0+U2V0UHJlZmVyZW5jZSgndzNjQ1NTd2FybmluZycsIDApOw0KCSR0aGlzLT5TZXRQcmVmZXJlbmNlKCd1c2VybWVkaXVtJywgJ2FsbCcpOw0KCSR0aGlzLT5TZXRQcmVmZXJlbmNlKCdmaWx0ZXJQcm9wJywgJ2JvcmRlci1yYWRpdXMsb3BhY2l0eScpOw0KCSR0aGlzLT5TZXRQcmVmZXJlbmNlKCdob3RMaW5rQ2hlY2snLDEpOw0KCSR0aGlzLT5TZXRQcmVmZXJlbmNlKCdzbWFydHlPbicsMSk7DQoJJHRoaXMtPlNldFByZWZlcmVuY2UoJ3JldmlzaW9uJywgMSk7DQoJJHRoaXMtPlNldFByZWZlcmVuY2UoJ3JldmlzaW9uX0xJTUlUJywgMTApOw0KCSR0aGlzLT5TZXRQcmVmZXJlbmNlKCdwcmVsb2FkX0NTU2ltYWdlJywwKTsNCgkkdGhpcy0+U2V0UHJlZmVyZW5jZSgnbG9ja2ZpbGVzJywxKTsNCgkkdGhpcy0+U2V0UHJlZmVyZW5jZSgndXNlRWRpdG9yJywgMSk7DQoJDQoJJHRoaXMtPlNldFByZWZlcmVuY2UoJ1R1cm5PTlZhbEhUTUwnLCAxKTsNCgkkdGhpcy0+U2V0UHJlZmVyZW5jZSgnZG9jVHlwZScsICdYSFRNTCAxLjAgVHJhbnNpdGlvbmFsJyk7DQoJJHRoaXMtPlNldFByZWZlcmVuY2UoJ2VuY29kaW5nJywndXRmLTgnKTsNCgkkdGhpcy0+U2V0UHJlZmVyZW5jZSgnVmFsSFRNTFZlcmJvc2UnLCAwKTsNCgkkdGhpcy0+U2V0UHJlZmVyZW5jZSgnZGVmYXVsdFBhZ2UnLCAnYXV0bycpOw0KDQoJJHRoaXMtPlNldFByZWZlcmVuY2UoJ2F1dG9Db250ZW50JywgJzxoMT5TdHlsZXM8L2gxPjwhLS0gSGVhZGluZ3MgLS0+PGgyPkhlYWRpbmcgSDI8L2gyPjxoMz5IZWFkaW5nIEgzPC9oMz48aDQ+SGVhZGluZyBINDwvaDQ+PGg1PkhlYWRpbmcgSDU8L2g1PjwhLS0gU3lzdGVtIE1lc3NhZ2VzIC0tPjxoMyBjbGFzcz0idGl0Ij5TeXN0ZW0gTWVzc2FnZXM8L2gzPjxwIGNsYXNzPSJtc2cgd2FybmluZyI+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNlY3RldHVyIGFkaXBpc2NpbmcgZWxpdC48L3A+PHAgY2xhc3M9Im1zZyBpbmZvIj5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCwgY29uc2VjdGV0dXIgYWRpcGlzY2luZyBlbGl0LjwvcD48cCBjbGFzcz0ibXNnIGRvbmUiPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LCBjb25zZWN0ZXR1ciBhZGlwaXNjaW5nIGVsaXQuPC9wPjxwIGNsYXNzPSJtc2cgZXJyb3IiPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LCBjb25zZWN0ZXR1ciBhZGlwaXNjaW5nIGVsaXQuPC9wPjwhLS0gVGFicyAtLT48aDMgY2xhc3M9InRpdCI+VGFiczwvaDM+PGRpdiBjbGFzcz0idGFicyBib3giPjx1bD48bGk+PGEgaHJlZj0iI3RhYjAxIj48c3Bhbj5Mb3JlbSBpcHN1bTwvc3Bhbj48L2E+PC9saT48bGk+PGEgaHJlZj0iI3RhYjAyIj48c3Bhbj5Mb3JlbSBpcHN1bTwvc3Bhbj48L2E+PC9saT48bGk+PGEgaHJlZj0iI3RhYjAzIj48c3Bhbj5Mb3JlbSBpcHN1bTwvc3Bhbj48L2E+PC9saT48L3VsPjwvZGl2PjwhLS0gL3RhYnMgLS0+PCEtLSBUYWIwMSAtLT48ZGl2IGlkPSJ0YWIwMSI+PHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNlY3RldHVyIGFkaXBpc2NpbmcgZWxpdC48L3A+PC9kaXY+PCEtLSAvdGFiMDEgLS0+PCEtLSBUYWIwMiAtLT48ZGl2IGlkPSJ0YWIwMiI+PHA+RG9uZWMgb3JuYXJlLCBsaWJlcm8gdml0YWUgZmFjaWxpc2lzIG1vbGVzdGllLCBtaSBzYXBpZW4gdmVuZW5hdGlzIGZlbGlzLCBzZWQgbWF0dGlzIGxlY3R1cyBuaXNpIGFjIG1hc3NhLjwvcD48L2Rpdj48IS0tIC90YWIwMiAtLT48IS0tIFRhYjAzIC0tPjxkaXYgaWQ9InRhYjAzIj48cD5OYW0gdXQgbG9yZW0gZXUgb3JjaSBwbGFjZXJhdCBpYWN1bGlzLjwvcD48L2Rpdj48IS0tIC90YWIwMyAtLT48IS0tIDIgY29sdW1ucyAtLT48aDMgY2xhc3M9InRpdCI+MiBDb2x1bW5zICg1MC01MCk8L2gzPjxkaXYgY2xhc3M9ImNvbDUwIj48cCBjbGFzcz0idC1qdXN0aWZ5Ij5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCwgY29uc2VjdGV0dXIgYWRpcGlzY2luZyBlbGl0LiBQaGFzZWxsdXMgZXQgcmlzdXMuIE1hZWNlbmFzIG5vbiBudW5jLiBQcm9pbiBlbGVpZmVuZCB2aXZlcnJhIHNhcGllbi4gRG9uZWMgaWQgYXVndWUuIER1aXMgZXJhdCBudW5jLCB2b2x1dHBhdCBhLCBiaWJlbmR1bSBxdWlzLCBwbGFjZXJhdCB2aXRhZSwgZW5pbS4gRXRpYW0gY29uc2VjdGV0dXIsIHZlbGl0IGluIHZpdmVycmEgdGVtcHVzLCB1cm5hIGF1Z3VlIHNvbGxpY2l0dWRpbiB0ZWxsdXMsIHZpdGFlIGludGVyZHVtIGFyY3UgbWkgYXQgZXN0LiBEb25lYyBvcm5hcmUsIGxpYmVybyB2aXRhZSBmYWNpbGlzaXMgbW9sZXN0aWUsIG1pIHNhcGllbiB2ZW5lbmF0aXMgZmVsaXMsIHNlZCBtYXR0aXMgbGVjdHVzIG5pc2kgYWMgbWFzc2EuIENyYXMgc3VzY2lwaXQsIG5lcXVlIGFjIGF1Y3RvciBpbnRlcmR1bSwgcGVkZSBuaWJoIHBvcnRhIGxlY3R1cywgbmVjIGFsaXF1ZXQgbnVsbGEgaXBzdW0gYWMgbmliaC4gTW9yYmkgZmV1Z2lhdCBpcHN1bSBpZCBtZXR1cy4gSW4gdXJuYSBzYXBpZW4sIHBvcnR0aXRvciBzZWQsIGNvbnNlY3RldHVyIHF1aXMsIGxhY2luaWEgZXUsIGFudGUuIERvbmVjIGF0IGlwc3VtLiBTZWQgYXJjdSB0ZWxsdXMsIGRhcGlidXMgc2l0IGFtZXQsIGF1Y3RvciBuZWMsIHJ1dHJ1bSBub24sIGxhY3VzLiBOYW0gdXQgbG9yZW0gZXUgb3JjaSBwbGFjZXJhdCBpYWN1bGlzLiBQcm9pbiBiaWJlbmR1bS4gU3VzcGVuZGlzc2UgY29uc2VxdWF0LjwvcD48L2Rpdj48IS0tIC9jb2w1MCAtLT48ZGl2IGNsYXNzPSJjb2w1MCBmLXJpZ2h0Ij48cCBjbGFzcz0idC1qdXN0aWZ5Ij5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCwgY29uc2VjdGV0dXIgYWRpcGlzY2luZyBlbGl0LiBQaGFzZWxsdXMgZXQgcmlzdXMuIE1hZWNlbmFzIG5vbiBudW5jLiBQcm9pbiBlbGVpZmVuZCB2aXZlcnJhIHNhcGllbi4gRG9uZWMgaWQgYXVndWUuIER1aXMgZXJhdCBudW5jLCB2b2x1dHBhdCBhLCBiaWJlbmR1bSBxdWlzLCBwbGFjZXJhdCB2aXRhZSwgZW5pbS4gRXRpYW0gY29uc2VjdGV0dXIsIHZlbGl0IGluIHZpdmVycmEgdGVtcHVzLCB1cm5hIGF1Z3VlIHNvbGxpY2l0dWRpbiB0ZWxsdXMsIHZpdGFlIGludGVyZHVtIGFyY3UgbWkgYXQgZXN0LiBEb25lYyBvcm5hcmUsIGxpYmVybyB2aXRhZSBmYWNpbGlzaXMgbW9sZXN0aWUsIG1pIHNhcGllbiB2ZW5lbmF0aXMgZmVsaXMsIHNlZCBtYXR0aXMgbGVjdHVzIG5pc2kgYWMgbWFzc2EuIENyYXMgc3VzY2lwaXQsIG5lcXVlIGFjIGF1Y3RvciBpbnRlcmR1bSwgcGVkZSBuaWJoIHBvcnRhIGxlY3R1cywgbmVjIGFsaXF1ZXQgbnVsbGEgaXBzdW0gYWMgbmliaC4gTW9yYmkgZmV1Z2lhdCBpcHN1bSBpZCBtZXR1cy4gSW4gdXJuYSBzYXBpZW4sIHBvcnR0aXRvciBzZWQsIGNvbnNlY3RldHVyIHF1aXMsIGxhY2luaWEgZXUsIGFudGUuIERvbmVjIGF0IGlwc3VtLiBTZWQgYXJjdSB0ZWxsdXMsIGRhcGlidXMgc2l0IGFtZXQsIGF1Y3RvciBuZWMsIHJ1dHJ1bSBub24sIGxhY3VzLiBOYW0gdXQgbG9yZW0gZXUgb3JjaSBwbGFjZXJhdCBpYWN1bGlzLiBQcm9pbiBiaWJlbmR1bS4gU3VzcGVuZGlzc2UgY29uc2VxdWF0LjwvcD48L2Rpdj48IS0tIC9jb2w1MCAtLT48ZGl2IGNsYXNzPSJmaXgiPjwvZGl2PjwhLS0gMyBjb2x1bW5zIC0tPjxoMyBjbGFzcz0idGl0Ij4zIENvbHVtbnMgKDMzLTMzLTMzKTwvaDM+PGRpdiBjbGFzcz0iY29sMzMiPjxwIGNsYXNzPSJ0LWp1c3RpZnkiPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LCBjb25zZWN0ZXR1ciBhZGlwaXNjaW5nIGVsaXQuIFBoYXNlbGx1cyBldCByaXN1cy4gTWFlY2VuYXMgbm9uIG51bmMuIFByb2luIGVsZWlmZW5kIHZpdmVycmEgc2FwaWVuLiBEb25lYyBpZCBhdWd1ZS4gRHVpcyBlcmF0IG51bmMsIHZvbHV0cGF0IGEsIGJpYmVuZHVtIHF1aXMsIHBsYWNlcmF0IHZpdGFlLCBlbmltLiBFdGlhbSBjb25zZWN0ZXR1ciwgdmVsaXQgaW4gdml2ZXJyYSB0ZW1wdXMsIHVybmEgYXVndWUgc29sbGljaXR1ZGluIHRlbGx1cywgdml0YWUgaW50ZXJkdW0gYXJjdSBtaSBhdCBlc3QuIERvbmVjIG9ybmFyZSwgbGliZXJvIHZpdGFlIGZhY2lsaXNpcyBtb2xlc3RpZSwgbWkgc2FwaWVuIHZlbmVuYXRpcyBmZWxpcywgc2VkIG1hdHRpcyBsZWN0dXMgbmlzaSBhYyBtYXNzYS4gQ3JhcyBzdXNjaXBpdCwgbmVxdWUgYWMgYXVjdG9yIGludGVyZHVtLCBwZWRlIG5pYmggcG9ydGEgbGVjdHVzLCBuZWMgYWxpcXVldCBudWxsYSBpcHN1bSBhYyBuaWJoLiBNb3JiaSBmZXVnaWF0IGlwc3VtIGlkIG1ldHVzLiBJbiB1cm5hIHNhcGllbiwgcG9ydHRpdG9yIHNlZCwgY29uc2VjdGV0dXIgcXVpcywgbGFjaW5pYSBldSwgYW50ZS4gRG9uZWMgYXQgaXBzdW0uIFNlZCBhcmN1IHRlbGx1cywgZGFwaWJ1cyBzaXQgYW1ldCwgYXVjdG9yIG5lYywgcnV0cnVtIG5vbiwgbGFjdXMuIE5hbSB1dCBsb3JlbSBldSBvcmNpIHBsYWNlcmF0IGlhY3VsaXMuIFByb2luIGJpYmVuZHVtLiBTdXNwZW5kaXNzZSBjb25zZXF1YXQuPC9wPjwvZGl2PjwhLS0gL2NvbDMzIC0tPjxkaXYgY2xhc3M9ImNvbDMzIGNlbnRlciI+PHAgY2xhc3M9InQtanVzdGlmeSI+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNlY3RldHVyIGFkaXBpc2NpbmcgZWxpdC4gUGhhc2VsbHVzIGV0IHJpc3VzLiBNYWVjZW5hcyBub24gbnVuYy4gUHJvaW4gZWxlaWZlbmQgdml2ZXJyYSBzYXBpZW4uIERvbmVjIGlkIGF1Z3VlLiBEdWlzIGVyYXQgbnVuYywgdm9sdXRwYXQgYSwgYmliZW5kdW0gcXVpcywgcGxhY2VyYXQgdml0YWUsIGVuaW0uIEV0aWFtIGNvbnNlY3RldHVyLCB2ZWxpdCBpbiB2aXZlcnJhIHRlbXB1cywgdXJuYSBhdWd1ZSBzb2xsaWNpdHVkaW4gdGVsbHVzLCB2aXRhZSBpbnRlcmR1bSBhcmN1IG1pIGF0IGVzdC4gRG9uZWMgb3JuYXJlLCBsaWJlcm8gdml0YWUgZmFjaWxpc2lzIG1vbGVzdGllLCBtaSBzYXBpZW4gdmVuZW5hdGlzIGZlbGlzLCBzZWQgbWF0dGlzIGxlY3R1cyBuaXNpIGFjIG1hc3NhLiBDcmFzIHN1c2NpcGl0LCBuZXF1ZSBhYyBhdWN0b3IgaW50ZXJkdW0sIHBlZGUgbmliaCBwb3J0YSBsZWN0dXMsIG5lYyBhbGlxdWV0IG51bGxhIGlwc3VtIGFjIG5pYmguIE1vcmJpIGZldWdpYXQgaXBzdW0gaWQgbWV0dXMuIEluIHVybmEgc2FwaWVuLCBwb3J0dGl0b3Igc2VkLCBjb25zZWN0ZXR1ciBxdWlzLCBsYWNpbmlhIGV1LCBhbnRlLiBEb25lYyBhdCBpcHN1bS4gU2VkIGFyY3UgdGVsbHVzLCBkYXBpYnVzIHNpdCBhbWV0LCBhdWN0b3IgbmVjLCBydXRydW0gbm9uLCBsYWN1cy4gTmFtIHV0IGxvcmVtIGV1IG9yY2kgcGxhY2VyYXQgaWFjdWxpcy4gUHJvaW4gYmliZW5kdW0uIFN1c3BlbmRpc3NlIGNvbnNlcXVhdC48L3A+PC9kaXY+PCEtLSAvY29sMzMgLS0+PGRpdiBjbGFzcz0iY29sMzMiPjxwIGNsYXNzPSJ0LWp1c3RpZnkiPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LCBjb25zZWN0ZXR1ciBhZGlwaXNjaW5nIGVsaXQuIFBoYXNlbGx1cyBldCByaXN1cy4gTWFlY2VuYXMgbm9uIG51bmMuIFByb2luIGVsZWlmZW5kIHZpdmVycmEgc2FwaWVuLiBEb25lYyBpZCBhdWd1ZS4gRHVpcyBlcmF0IG51bmMsIHZvbHV0cGF0IGEsIGJpYmVuZHVtIHF1aXMsIHBsYWNlcmF0IHZpdGFlLCBlbmltLiBFdGlhbSBjb25zZWN0ZXR1ciwgdmVsaXQgaW4gdml2ZXJyYSB0ZW1wdXMsIHVybmEgYXVndWUgc29sbGljaXR1ZGluIHRlbGx1cywgdml0YWUgaW50ZXJkdW0gYXJjdSBtaSBhdCBlc3QuIERvbmVjIG9ybmFyZSwgbGliZXJvIHZpdGFlIGZhY2lsaXNpcyBtb2xlc3RpZSwgbWkgc2FwaWVuIHZlbmVuYXRpcyBmZWxpcywgc2VkIG1hdHRpcyBsZWN0dXMgbmlzaSBhYyBtYXNzYS4gQ3JhcyBzdXNjaXBpdCwgbmVxdWUgYWMgYXVjdG9yIGludGVyZHVtLCBwZWRlIG5pYmggcG9ydGEgbGVjdHVzLCBuZWMgYWxpcXVldCBudWxsYSBpcHN1bSBhYyBuaWJoLiBNb3JiaSBmZXVnaWF0IGlwc3VtIGlkIG1ldHVzLiBJbiB1cm5hIHNhcGllbiwgcG9ydHRpdG9yIHNlZCwgY29uc2VjdGV0dXIgcXVpcywgbGFjaW5pYSBldSwgYW50ZS4gRG9uZWMgYXQgaXBzdW0uIFNlZCBhcmN1IHRlbGx1cywgZGFwaWJ1cyBzaXQgYW1ldCwgYXVjdG9yIG5lYywgcnV0cnVtIG5vbiwgbGFjdXMuIE5hbSB1dCBsb3JlbSBldSBvcmNpIHBsYWNlcmF0IGlhY3VsaXMuIFByb2luIGJpYmVuZHVtLiBTdXNwZW5kaXNzZSBjb25zZXF1YXQuPC9wPjwvZGl2PjwhLS0gL2NvbDMzIC0tPjxkaXYgY2xhc3M9ImZpeCI+PC9kaXY+PCEtLSBUZXh0IEFsaWdubWVudCAtLT48aDMgY2xhc3M9InRpdCI+VGV4dCBBbGlnbm1lbnQ8L2gzPjxwIGNsYXNzPSJ0LWxlZnQiPkxlZnQgPHNwYW4gY2xhc3M9InRhZyI+KC50LWxlZnQpPC9zcGFuPjwvcD48cCBjbGFzcz0idC1jZW50ZXIiPkNlbnRlciA8c3BhbiBjbGFzcz0idGFnIj4oLnQtY2VudGVyKTwvc3Bhbj48L3A+PHAgY2xhc3M9InQtcmlnaHQiPlJpZ2h0IDxzcGFuIGNsYXNzPSJ0YWciPigudC1yaWdodCk8L3NwYW4+PC9wPjwhLS0gU2l6ZSBhbmQgSGlnaGxpZ2h0IC0tPjxoMyBjbGFzcz0idGl0Ij5UZXh0IFNpemUgYW5kIEhpZ2hsaWdodDwvaDM+PHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ8L3A+PHA+PHN0cm9uZz5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldDwvc3Ryb25nPiA8c3BhbiBjbGFzcz0idGFnIj4oJmx0O3N0cm9uZyZndDspPC9zcGFuPjwvcD48cD48ZW0+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ8L2VtPiA8c3BhbiBjbGFzcz0idGFnIj4oJmx0O2VtJmd0Oyk8L3NwYW4+PC9wPjxwPjxhYmJyPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0PC9hYmJyPiA8c3BhbiBjbGFzcz0idGFnIj4oJmx0O2FiYnImZ3Q7KTwvc3Bhbj48L3A+PHA+PGFjcm9ueW0+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ8L2Fjcm9ueW0+IDxzcGFuIGNsYXNzPSJ0YWciPigmbHQ7YWNyb255bSZndDspPC9zcGFuPjwvcD48cD48Y29kZT5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldDwvY29kZT4gPHNwYW4gY2xhc3M9InRhZyI+KCZsdDtjb2RlJmd0Oyk8L3NwYW4+PC9wPjxwPjxzcGFuIGNsYXNzPSJoZWxwIj5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldDwvc3Bhbj4gPHNwYW4gY2xhc3M9InRhZyI+KC5oZWxwKTwvc3Bhbj48L3A+PHA+PHNwYW4gY2xhc3M9ImhpZ2giPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0PC9zcGFuPiA8c3BhbiBjbGFzcz0idGFnIj4oLmhpZ2gpPC9zcGFuPjwvcD48cD48c3BhbiBjbGFzcz0ibG93Ij5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldDwvc3Bhbj4gPHNwYW4gY2xhc3M9InRhZyI+KC5sb3cpPC9zcGFuPjwvcD48cD48c3BhbiBjbGFzcz0iYmlnZ2VyIj5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldDwvc3Bhbj4gPHNwYW4gY2xhc3M9InRhZyI+KC5iaWdnZXIpPC9zcGFuPjwvcD48cD48c3BhbiBjbGFzcz0ic21hbGxlciI+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ8L3NwYW4+IDxzcGFuIGNsYXNzPSJ0YWciPiguc21hbGxlcik8L3NwYW4+PC9wPjwhLS0gVW5vcmRlcmVkIExpc3QgLS0+PGgzIGNsYXNzPSJ0aXQiPlVub3JkZXJlZCBMaXN0IC0gPHNwYW4gY2xhc3M9InRhZyI+KHVsLm5vc3R5bGUpPC9zcGFuPjwvaDM+PHVsIGNsYXNzPSJub3N0eWxlIj48bGk+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ8L2xpPjxsaT5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldDwvbGk+PGxpPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0PHVsPjxsaT5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldDwvbGk+PGxpPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0PC9saT48bGk+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ8dWw+PGxpPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0PC9saT48bGk+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ8L2xpPjxsaT5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldDwvbGk+PGxpPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0PC9saT48bGk+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ8L2xpPjwvdWw+PC9saT48bGk+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ8L2xpPjxsaT5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldDwvbGk+PC91bD48L2xpPjxsaT5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldDwvbGk+PGxpPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0PC9saT48L3VsPjwhLS0gVW5vcmRlcmVkIExpc3QgLS0+PGgzIGNsYXNzPSJ0aXQiPlVub3JkZXJlZCBMaXN0PC9oMz48dWw+PGxpPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0PC9saT48bGk+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ8L2xpPjxsaT5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldDx1bD48bGk+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ8L2xpPjxsaT5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldDwvbGk+PGxpPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0PHVsPjxsaT5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldDwvbGk+PGxpPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0PC9saT48bGk+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ8L2xpPjxsaT5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldDwvbGk+PGxpPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0PC9saT48L3VsPjwvbGk+PGxpPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0PC9saT48bGk+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ8L2xpPjwvdWw+PC9saT48bGk+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ8L2xpPjxsaT5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldDwvbGk+PC91bD48IS0tIE9yZGVyZWQgTGlzdCAoT0wpIC0tPjxoMyBjbGFzcz0idGl0Ij5PcmRlcmVkIExpc3Q8L2gzPjxvbD48bGk+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ8L2xpPjxsaT5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldDwvbGk+PGxpPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0PG9sPjxsaT5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldDwvbGk+PGxpPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0PC9saT48bGk+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ8b2w+PGxpPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0PC9saT48bGk+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ8L2xpPjxsaT5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldDwvbGk+PGxpPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0PC9saT48bGk+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ8L2xpPjwvb2w+PC9saT48bGk+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ8L2xpPjxsaT5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldDwvbGk+PC9vbD48L2xpPjxsaT5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldDwvbGk+PGxpPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0PC9saT48L29sPjwhLS0gVGFibGUgLS0+PGgzIGNsYXNzPSJ0aXQiPlRhYmxlIDxzcGFuIGNsYXNzPSJ0YWciPih0YWJsZS5ub3N0eWxlKTwvc3Bhbj48L2gzPjx0YWJsZSBjbGFzcz0ibm9zdHlsZSI+PHRyPjx0aD5Mb3JlbSBpcHN1bTwvdGg+PHRoPkxvcmVtIGlwc3VtPC90aD48dGg+TG9yZW0gaXBzdW08L3RoPjx0aD5Mb3JlbSBpcHN1bTwvdGg+PHRoPkxvcmVtIGlwc3VtPC90aD48L3RyPjx0cj48dGQ+TG9yZW0gaXBzdW08L3RkPjx0ZD5Mb3JlbSBpcHN1bTwvdGQ+PHRkPkxvcmVtIGlwc3VtPC90ZD48dGQ+TG9yZW0gaXBzdW08L3RkPjx0ZD5Mb3JlbSBpcHN1bTwvdGQ+PC90cj48dHI+PHRkPkxvcmVtIGlwc3VtPC90ZD48dGQ+TG9yZW0gaXBzdW08L3RkPjx0ZD5Mb3JlbSBpcHN1bTwvdGQ+PHRkPkxvcmVtIGlwc3VtPC90ZD48dGQ+TG9yZW0gaXBzdW08L3RkPjwvdHI+PHRyPjx0ZD5Mb3JlbSBpcHN1bTwvdGQ+PHRkPkxvcmVtIGlwc3VtPC90ZD48dGQ+TG9yZW0gaXBzdW08L3RkPjx0ZD5Mb3JlbSBpcHN1bTwvdGQ+PHRkPkxvcmVtIGlwc3VtPC90ZD48L3RyPjx0cj48dGQ+TG9yZW0gaXBzdW08L3RkPjx0ZD5Mb3JlbSBpcHN1bTwvdGQ+PHRkPkxvcmVtIGlwc3VtPC90ZD48dGQ+TG9yZW0gaXBzdW08L3RkPjx0ZD5Mb3JlbSBpcHN1bTwvdGQ+PC90cj48dHI+PHRkPkxvcmVtIGlwc3VtPC90ZD48dGQ+TG9yZW0gaXBzdW08L3RkPjx0ZD5Mb3JlbSBpcHN1bTwvdGQ+PHRkPkxvcmVtIGlwc3VtPC90ZD48dGQ+TG9yZW0gaXBzdW08L3RkPjwvdHI+PC90YWJsZT48IS0tIFRhYmxlIChUQUJMRSkgLS0+PGgzIGNsYXNzPSJ0aXQiPlRhYmxlPC9oMz48dGFibGU+PHRyPjx0aD5Mb3JlbSBpcHN1bTwvdGg+PHRoPkxvcmVtIGlwc3VtPC90aD48dGg+TG9yZW0gaXBzdW08L3RoPjx0aD5Mb3JlbSBpcHN1bTwvdGg+PHRoPkxvcmVtIGlwc3VtPC90aD48L3RyPjx0cj48dGQ+TG9yZW0gaXBzdW08L3RkPjx0ZD5Mb3JlbSBpcHN1bTwvdGQ+PHRkPkxvcmVtIGlwc3VtPC90ZD48dGQ+TG9yZW0gaXBzdW08L3RkPjx0ZD5Mb3JlbSBpcHN1bTwvdGQ+PC90cj48dHIgY2xhc3M9ImJnIj48dGQ+TG9yZW0gaXBzdW08L3RkPjx0ZD5Mb3JlbSBpcHN1bTwvdGQ+PHRkPkxvcmVtIGlwc3VtPC90ZD48dGQ+TG9yZW0gaXBzdW08L3RkPjx0ZD5Mb3JlbSBpcHN1bTwvdGQ+PC90cj48dHI+PHRkPkxvcmVtIGlwc3VtPC90ZD48dGQ+TG9yZW0gaXBzdW08L3RkPjx0ZD5Mb3JlbSBpcHN1bTwvdGQ+PHRkPkxvcmVtIGlwc3VtPC90ZD48dGQ+TG9yZW0gaXBzdW08L3RkPjwvdHI+PHRyIGNsYXNzPSJiZyI+PHRkPkxvcmVtIGlwc3VtPC90ZD48dGQ+TG9yZW0gaXBzdW08L3RkPjx0ZD5Mb3JlbSBpcHN1bTwvdGQ+PHRkPkxvcmVtIGlwc3VtPC90ZD48dGQ+TG9yZW0gaXBzdW08L3RkPjwvdHI+PHRyPjx0ZD5Mb3JlbSBpcHN1bTwvdGQ+PHRkPkxvcmVtIGlwc3VtPC90ZD48dGQ+TG9yZW0gaXBzdW08L3RkPjx0ZD5Mb3JlbSBpcHN1bTwvdGQ+PHRkPkxvcmVtIGlwc3VtPC90ZD48L3RyPjwvdGFibGU+PCEtLSBGb3JtIC0tPjxoMyBjbGFzcz0idGl0Ij5Gb3JtPC9oMz48ZmllbGRzZXQ+PGxlZ2VuZD5MZWdlbmQ8L2xlZ2VuZD48dGFibGUgY2xhc3M9Im5vc3R5bGUiPjx0cj48dGQgc3R5bGU9IndpZHRoOjcwcHg7Ij5JbnB1dDo8L3RkPjx0ZD48aW5wdXQgdHlwZT0idGV4dCIgc2l6ZT0iNDAiIG5hbWU9IiIgY2xhc3M9ImlucHV0LXRleHQiIC8+PC90ZD48L3RyPjx0cj48dGQ+SW5wdXQ6PC90ZD48dGQ+PGlucHV0IHR5cGU9InRleHQiIHNpemU9IjQwIiBuYW1lPSIiIGNsYXNzPSJpbnB1dC10ZXh0IiBkaXNhYmxlZD0iZGlzYWJsZWQiIC8+PC90ZD48L3RyPjx0cj48dGQgY2xhc3M9InZhLXRvcCI+SW5wdXQ6PC90ZD48dGQ+PHRleHRhcmVhIGNvbHM9Ijc1IiByb3dzPSI3IiBjbGFzcz0iaW5wdXQtdGV4dCI+PC90ZXh0YXJlYT48L3RkPjwvdHI+PHRyPjx0ZD5JbnB1dDo8L3RkPjx0ZD48bGFiZWw+PGlucHV0IHR5cGU9ImNoZWNrYm94IiAvPkxvcmVtIGlwc3VtPC9sYWJlbD4mbmJzcDs8bGFiZWw+PGlucHV0IHR5cGU9ImNoZWNrYm94IiAvPkxvcmVtIGlwc3VtPC9sYWJlbD4mbmJzcDs8bGFiZWw+PGlucHV0IHR5cGU9ImNoZWNrYm94IiAvPkxvcmVtIGlwc3VtPC9sYWJlbD48L3RkPjwvdHI+PHRyPjx0ZD5JbnB1dDo8L3RkPjx0ZD48bGFiZWw+PGlucHV0IHR5cGU9InJhZGlvIiAvPkxvcmVtIGlwc3VtPC9sYWJlbD4mbmJzcDs8bGFiZWw+PGlucHV0IHR5cGU9InJhZGlvIiAvPkxvcmVtIGlwc3VtPC9sYWJlbD4mbmJzcDs8bGFiZWw+PGlucHV0IHR5cGU9InJhZGlvIiAvPkxvcmVtIGlwc3VtPC9sYWJlbD48L3RkPjwvdHI+PHRyPjx0ZCBjb2xzcGFuPSIyIiBjbGFzcz0idC1yaWdodCI+PGlucHV0IHR5cGU9InN1Ym1pdCIgY2xhc3M9ImlucHV0LXN1Ym1pdCIgdmFsdWU9IlN1Ym1pdCIgLz48L3RkPjwvdHI+PC90YWJsZT48L2ZpZWxkc2V0PjwhLS0gRGVmaW5pdGlvbiBMaXN0IC0tPjxoMyBjbGFzcz0idGl0Ij5EZWZpbml0aW9uIExpc3QgPHNwYW4gY2xhc3M9InRhZyI+KGRsLm5vc3R5bGUpPC9zcGFuPjwvaDM+PGRsIGNsYXNzPSJub3N0eWxlIj48ZHQ+TG9yZW0gaXBzdW08L2R0PjxkZD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC48L2RkPjxkdD5Mb3JlbSBpcHN1bTwvZHQ+PGRkPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LjwvZGQ+PGR0PkxvcmVtIGlwc3VtPC9kdD48ZGQ+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuPC9kZD48L2RsPjwhLS0gRGVmaW5pdGlvbiBMaXN0IC0tPjxoMyBjbGFzcz0idGl0Ij5EZWZpbml0aW9uIExpc3Q8L2gzPjxkbD48ZHQ+TG9yZW0gaXBzdW08L2R0PjxkZD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC48L2RkPjxkdD5Mb3JlbSBpcHN1bTwvZHQ+PGRkPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LjwvZGQ+PGR0PkxvcmVtIGlwc3VtPC9kdD48ZGQ+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuPC9kZD48L2RsPjwvZGl2PjwhLS0gL2NvbnRlbnQgLS0+Jyk7DQoNCg0KICAgIC8vIEV2ZW50cw0KCSR0aGlzLT5BZGRFdmVudEhhbmRsZXIoICdDb3JlJywgJ0NvbnRlbnRQb3N0UmVuZGVyJywgZmFsc2UpOw0KDQogICAgLy8gcGVybWlzc2lvbnMNCiAgICAkdGhpcy0+Q3JlYXRlUGVybWlzc2lvbignTW9kaWZ5IFNjcmlwdERlcGxveScsJ01vZGlmeSBTY3JpcHREZXBsb3kgT3B0aW9ucycpOw0KICAgICR0aGlzLT5DcmVhdGVQZXJtaXNzaW9uKCdSZW1vdmUgU2NyaXB0RGVwbG95U2NyaXB0JywnUmVtb3ZlIFNjcmlwdERlcGxveSBTY3JpcHQnKTsNCgkkdGhpcy0+Q3JlYXRlUGVybWlzc2lvbignUmVtb3ZlIFNjcmlwdERlcGxveUdyb3VwJywnUmVtb3ZlIFNjcmlwdERlcGxveSBHcm91cCcpOw0KCSR0aGlzLT5DcmVhdGVQZXJtaXNzaW9uKCdFZGl0IFNjcmlwdERlcGxveVNjcmlwdCcsJ0VkaXQgU2NyaXB0RGVwbG95IFNjcmlwdCcpOw0KCSR0aGlzLT5DcmVhdGVQZXJtaXNzaW9uKCdFZGl0IFNjcmlwdERlcGxveUdyb3VwJywnRWRpdCBTY3JpcHREZXBsb3kgR3JvdXAnKTsJCQkJDQoJJHRoaXMtPkNyZWF0ZVBlcm1pc3Npb24oJ1N0ZWFsIFNjcmlwdERlcGxveVNjcmlwdCcsJ1N0ZWFsIFNjcmlwdERlcGxveSBTY3JpcHQnKTsNCgkNCgkvLyBwZXJtaXNzaW9ucw0KCSR0aGlzLT5TZXRUZW1wbGF0ZSgnZm9ybV90ZW1wbGF0ZScsJHRoaXMtPmRmbHRfZm9ybV90ZW1wbGF0ZSk7DQoNCgkvLyBwdXQgbWVudGlvbiBpbnRvIHRoZSBhZG1pbiBsb2cNCgkkdGhpcy0+QXVkaXQoIDAsICR0aGlzLT5MYW5nKCdmcmllbmRseW5hbWUnKSwgJHRoaXMtPkxhbmcoJ2luc3RhbGxlZCcsJHRoaXMtPkdldFZlcnNpb24oKSkpOw0KCWlmKCFmaWxlX2V4aXN0cygkY29uZmlnWyd1cGxvYWRzX3BhdGgnXS4iL2xpYi9TRC10ZW1wIikpe21rZGlyKCRjb25maWdbJ3VwbG9hZHNfcGF0aCddLiIvbGliL1NELXRlbXAiLCAwNzc3LCB0cnVlKTt9DQoJJHRoaXMtPkF1ZGl0KCAxLCAkdGhpcy0+TGFuZygnZnJpZW5kbHluYW1lJyksICRjb25maWdbJ3VwbG9hZHNfcGF0aCddLiIvbGliL1NELXRlbXAvIHdhcyBjcmVhdGVkIG9uIHRoZSBpbnN0YWxsIik7DQoJDQoJDQoNCj8+]]></data>
	</file>
	<file>
	  <filename>/method.uninstall.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCi8qKg0KICogTW9kdWxlOiBTY3JpcHREZXBsb3kgLSBNaW5pZnkgYW5kIGRlcGxveW1lbnQgb2YgSlMgQ1NTIGFuZCBIVE1MDQogKiANCiAqIA0KICogQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykNCiAqIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnDQogKiBUaGUgbW9kdWxlJ3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvc2NyaXB0ZGVwbG95Lw0KICogDQogKiBAcGFja2FnZSBTY3JpcHREZXBsb3kNCiAqIEBhdXRob3IgamVyZW15QmFzcyA8amVyZW15QmFzc0BjYWJsZW9uZS5uZXQ+DQogKiBAY29weXJpZ2h0IEplcmVteSBCYXNzDQogKiBAbGljZW5zZSBodHRwOi8vd3d3LmdudS5vcmcvY29weWxlZnQvZ3BsLmh0bWwgRnJlZWx5IGF2YWlsYWJsZSB1bmRlciBHUEwNCiAqLyANCg0KLyoNCiAgICBGb3Igc2VwYXJhdGVkIG1ldGhvZHMsIHlvdSdsbCBhbHdheXMgd2FudCB0byBzdGFydCB3aXRoIHRoZSBmb2xsb3dpbmcNCiAgICBsaW5lIHdoaWNoIGNoZWNrIHRvIG1ha2Ugc3VyZSB0aGF0IG1ldGhvZCB3YXMgY2FsbGVkIGZyb20gdGhlIG1vZHVsZQ0KICAgIEFQSSwgYW5kIHRoYXQgZXZlcnl0aGluZydzIHNhZmUgdG8gY29udGludWU6DQoqLyANCi8vaWYgKCFpc3NldChjbXNtcygpKSkgZXhpdDsNCg0KCSRkYiA9IGNtc21zKCktPkdldERiKCk7DQovLwkNCgkvLyByZW1vdmUgdGhlIGRhdGFiYXNlIHRhYmxlDQoJJGRpY3QgPSBOZXdEYXRhRGljdGlvbmFyeSggJGRiICk7DQoJJHNxbGFycmF5ID0gJGRpY3QtPkRyb3BUYWJsZVNRTCggU0RfU0NSSVBUTkFNRVMgKTsNCgkkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7DQoJDQoJJHNxbGFycmF5ID0gJGRpY3QtPkRyb3BUYWJsZVNRTCggU0RfU0NSSVBUT1BUSU9OUyApOw0KCSRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsNCgkNCgkkc3FsYXJyYXkgPSAkZGljdC0+RHJvcFRhYmxlU1FMKCBTRF9TQ1JJUFRQQVJUUyApOw0KCSRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsNCgkNCgkkc3FsYXJyYXkgPSAkZGljdC0+RHJvcFRhYmxlU1FMKCBTRF9HUk9VUCApOw0KCSRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsJDQoJDQoJJHNxbGFycmF5ID0gJGRpY3QtPkRyb3BUYWJsZVNRTCggU0RfR1JPVVBBU1NJR05NRU5UICk7DQoJJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwkNCg0KCSRzcWxhcnJheSA9ICRkaWN0LT5Ecm9wVGFibGVTUUwoIFNEX1NDUklQVFVORE8gKTsNCgkkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CQ0KCQ0KCSRzcWxhcnJheSA9ICRkaWN0LT5Ecm9wVGFibGVTUUwoIFNEX1RBQkxFICk7DQoJJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwkNCgkNCgkkc3FsYXJyYXkgPSAkZGljdC0+RHJvcFRhYmxlU1FMKCBTRF9QRVJTSVNURU5UICk7DQoJJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwkNCgkNCgkkc3FsYXJyYXkgPSAkZGljdC0+RHJvcFRhYmxlU1FMKCBTRF9BTFRFUk5BVEUgKTsNCgkkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CQkNCgkNCgkkc3FsYXJyYXkgPSAkZGljdC0+RHJvcFRhYmxlU1FMKCBjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9zY3JpcHRkZXBsb3lfc2NyaXB0bG9nZ2luIiApOw0KCSRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsNCgkNCgkvLyByZW1vdmUgdGhlIHNlcXVlbmNlDQoJLy8gJGRiLT5Ecm9wU2VxdWVuY2UoIGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3JhdGVfdGhpc19zZXEiICk7DQovLwkNCi8vCQ0KLy8JDQovLwkvLyByZW1vdmUgdGhlIHByZWZlcmVuY2VzDQovLwkkdGhpcy0+UmVtb3ZlUHJlZmVyZW5jZSgiYm9va2llIik7DQoNCiR0aGlzLT5SZW1vdmVQcmVmZXJlbmNlKCk7DQovLwkNCi8vCS8vIFJlbW92ZSBhbGwgZXZlbnQgaGFuZGxlcnMNCi8vCSR0aGlzLT5SZW1vdmVFdmVudEhhbmRsZXIoJ0Zyb250RW5kVXNlcnMnLCdPbkNyZWF0ZVVzZXInKTsNCi8vCSR0aGlzLT5SZW1vdmVFdmVudEhhbmRsZXIoJ0Zyb250RW5kVXNlcnMnLCdPbkRlbGV0ZVVzZXInKTsNCi8vCSR0aGlzLT5SZW1vdmVFdmVudEhhbmRsZXIoJ0Zyb250RW5kVXNlcnMnLCdPblVwZGF0ZVVzZXInKTsNCi8vCSR0aGlzLT5SZW1vdmVFdmVudEhhbmRsZXIoJ0Zyb250RW5kVXNlcnMnLCdPbkV4cGlyZVVzZXInKTsNCi8vCSR0aGlzLT5SZW1vdmVFdmVudEhhbmRsZXIoJ0Zyb250RW5kVXNlcnMnLCdPbkxvZ2luJyk7DQovLwkkdGhpcy0+UmVtb3ZlRXZlbnRIYW5kbGVyKCdGcm9udEVuZFVzZXJzJywnT25Mb2dvdXQnKTsNCi8vCQ0KCS8vIHB1dCBtZW50aW9uIGludG8gdGhlIGFkbWluIGxvZw0KCSR0aGlzLT5BdWRpdCggMCwgJHRoaXMtPkxhbmcoJ2ZyaWVuZGx5bmFtZScpLCAkdGhpcy0+TGFuZygndW5pbnN0YWxsZWQnKSk7DQoNCj8+]]></data>
	</file>
	<file>
	  <filename>/method.upgrade.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCi8qKg0KICogTW9kdWxlOiBTY3JpcHREZXBsb3kgLSBNaW5pZnkgYW5kIGRlcGxveW1lbnQgb2YgSlMgQ1NTIGFuZCBIVE1MDQogKiANCiAqIA0KICogQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykNCiAqIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnDQogKiBUaGUgbW9kdWxlJ3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvc2NyaXB0ZGVwbG95Lw0KICogDQogKiBAcGFja2FnZSBTY3JpcHREZXBsb3kNCiAqIEBhdXRob3IgamVyZW15QmFzcyA8amVyZW15QmFzc0BjYWJsZW9uZS5uZXQ+DQogKiBAY29weXJpZ2h0IEplcmVteSBCYXNzDQogKiBAbGljZW5zZSBodHRwOi8vd3d3LmdudS5vcmcvY29weWxlZnQvZ3BsLmh0bWwgRnJlZWx5IGF2YWlsYWJsZSB1bmRlciBHUEwNCiAqLyANCg0KLyoNCiAgICBGb3Igc2VwYXJhdGVkIG1ldGhvZHMsIHlvdSdsbCBhbHdheXMgd2FudCB0byBzdGFydCB3aXRoIHRoZSBmb2xsb3dpbmcNCiAgICBsaW5lIHdoaWNoIGNoZWNrIHRvIG1ha2Ugc3VyZSB0aGF0IG1ldGhvZCB3YXMgY2FsbGVkIGZyb20gdGhlIG1vZHVsZQ0KICAgIEFQSSwgYW5kIHRoYXQgZXZlcnl0aGluZydzIHNhZmUgdG8gY29udGludWU6DQoqLyANCi8vaWYgKCFpc3NldChjbXNtcygpKSkgZXhpdDsNCg0KDQovKiBBZnRlciB0aGlzLCB0aGUgY29kZSBpcyBpZGVudGljYWwgdG8gdGhlIGNvZGUgdGhhdCB3b3VsZCBvdGhlcndpc2UgYmUNCiAgICB3cmFwcGVkIGluIHRoZSBVcGdyYWRlKCkgbWV0aG9kIGluIHRoZSBtb2R1bGUgYm9keS4NCiovDQoNCg0KDQovKiBBZnRlciB0aGlzLCB0aGUgY29kZSBpcyBpZGVudGljYWwgdG8gdGhlIGNvZGUgdGhhdCB3b3VsZCBvdGhlcndpc2UgYmUNCiAgICB3cmFwcGVkIGluIHRoZSBVcGdyYWRlKCkgbWV0aG9kIGluIHRoZSBtb2R1bGUgYm9keS4NCiovDQoNCgkJJGRiID0gJHRoaXMtPkdldERiKCk7DQoJCSRjdXJyZW50X3ZlcnNpb24gPSAkb2xkdmVyc2lvbjsNCgkJJGRpY3QgPSBOZXdEYXRhRGljdGlvbmFyeSgkZGIpOw0KCQkkdGFib3B0YXJyYXkgPSBhcnJheSgnbXlzcWwnID0+ICdUWVBFPU15SVNBTScpOw0KCQlkZWJ1Z19kaXNwbGF5KCdDdXJyZW50LXZlcnNpb246ICcuJGN1cnJlbnRfdmVyc2lvbik7DQoJCXN3aXRjaCgkY3VycmVudF92ZXJzaW9uKQ0KCQl7DQoJCQljYXNlICIwLjEiOg0KCQkJY2FzZSAiMC4yIjoNCgkJCXt9DQoJCQljYXNlICIwLjMiOg0KCQkJe30NCgkJCWNhc2UgIjAuNCI6DQoJCQl7fQ0KCQkJY2FzZSAiMC41IjoNCgkJCXt9DQoJCQljYXNlICIwLjYiOg0KCQkJe30NCgkJCWNhc2UgIjAuNyI6DQoJCQl7fQkNCgkJCWNhc2UgIjAuNy4xIjoNCgkJCXt9DQoJCQljYXNlICIwLjcuMiI6DQoJCQl7fQ0KCQkJY2FzZSAiMC43LjMiOg0KCQkJe30NCgkJCWNhc2UgIjAuNy4zIjoNCgkJCXsNCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8JDQoJJGZsZHMgPSAiDQoJCQkgZ3JvdXBpZCBJIEtFWSBBVVRPLA0KCQkJIHRlbXBsYXRlX2lkIEkgS0VZLA0KCQkJIHByZWZlcnJlZF9zcyBJDQoJCQkiOw0KCSRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNRTChTRF9UQUJMRSwgJGZsZHMsICR0YWJvcHRhcnJheSk7DQoJJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSggJHNxbGFycmF5ICk7DQovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQoJJGZsZHMgPSAiZ3JvdXBpZCBJLA0KCQkJIHN0eWxlc2hlZXRfaWQgSSI7DQoJJHNxbGFycmF5ID0gJGRpY3QtPkNyZWF0ZVRhYmxlU1FMKFNEX1BFUlNJU1RFTlQsICRmbGRzLCAkdGFib3B0YXJyYXkpOw0KCSRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoICRzcWxhcnJheSApOw0KLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLw0KCSRmbGRzID0gImdyb3VwaWQgSSwNCgkJCSBzdHlsZXNoZWV0X2lkIEkiOw0KCSRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNRTChTRF9BTFRFUk5BVEUsICRmbGRzLCAkdGFib3B0YXJyYXkpOw0KCSRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoICRzcWxhcnJheSApOw0KDQoJCQkNCiAgICAkdGhpcy0+Q3JlYXRlUGVybWlzc2lvbignTW9kaWZ5IFNjcmlwdERlcGxveScsJ01vZGlmeSBTY3JpcHREZXBsb3kgT3B0aW9ucycpOw0KICAgICR0aGlzLT5DcmVhdGVQZXJtaXNzaW9uKCdSZW1vdmUgU2NyaXB0RGVwbG95U2NyaXB0JywnUmVtb3ZlIFNjcmlwdERlcGxveSBTY3JpcHQnKTsNCgkkdGhpcy0+Q3JlYXRlUGVybWlzc2lvbignUmVtb3ZlIFNjcmlwdERlcGxveUdyb3VwJywnUmVtb3ZlIFNjcmlwdERlcGxveSBHcm91cCcpOw0KCSR0aGlzLT5DcmVhdGVQZXJtaXNzaW9uKCdFZGl0IFNjcmlwdERlcGxveVNjcmlwdCcsJ0VkaXQgU2NyaXB0RGVwbG95IFNjcmlwdCcpOw0KCSR0aGlzLT5DcmVhdGVQZXJtaXNzaW9uKCdFZGl0IFNjcmlwdERlcGxveUdyb3VwJywnRWRpdCBTY3JpcHREZXBsb3kgR3JvdXAnKTsJCQkJDQoJJHRoaXMtPkNyZWF0ZVBlcm1pc3Npb24oJ1N0ZWFsIFNjcmlwdERlcGxveVNjcmlwdCcsJ1N0ZWFsIFNjcmlwdERlcGxveSBTY3JpcHQnKTsNCgkJCX0NCg0KCQkNCgkJfQ0KCQkNCgkJLy8gcHV0IG1lbnRpb24gaW50byB0aGUgYWRtaW4gbG9nDQoJCSR0aGlzLT5BdWRpdCggMCwgJHRoaXMtPkxhbmcoJ2ZyaWVuZGx5bmFtZScpLCAkdGhpcy0+TGFuZygndXBncmFkZWQnLCR0aGlzLT5HZXRWZXJzaW9uKCkpKTsNCg0KPz4=]]></data>
	</file>
	<file>
	  <filename>/necho.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9QSFANCi8qKg0KICogTW9kdWxlOiBTY3JpcHREZXBsb3kgLSBNaW5pZnkgYW5kIGRlcGxveW1lbnQgb2YgSlMgQ1NTIGFuZCBIVE1MDQogKiANCiAqIA0KICogQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykNCiAqIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnDQogKiBUaGUgbW9kdWxlJ3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvc2NyaXB0ZGVwbG95Lw0KICogDQogKiBAcGFja2FnZSBTY3JpcHREZXBsb3kNCiAqIEBhdXRob3IgamVyZW15QmFzcyA8amVyZW15QmFzc0BjYWJsZW9uZS5uZXQ+DQogKiBAY29weXJpZ2h0IEplcmVteSBCYXNzDQogKiBAbGljZW5zZSBodHRwOi8vd3d3LmdudS5vcmcvY29weWxlZnQvZ3BsLmh0bWwgRnJlZWx5IGF2YWlsYWJsZSB1bmRlciBHUEwNCiAqLyANCg0KDQovKi0tLS0tLS0tLS0tLS0tLS0tLS1MTi0tDQogKiBUaGUgbGl0ZU51a2UgU3lzdGVtICB8DQogKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS18DQogKiAgd3d3LmdpbmdlcndhcmUub3JnICB8DQogKioqKioqKioqKioqKioqKioqKioqKioqLw0KDQovKg0KIFVzYWdlOg0KIDEuIFNldCB0aGUgR0xPQkFMIHZhciB0byBvbmUgb2Y6DQogZm9ybWF0IChkZWZhdWx0KSA6IGRvIGZ1bGwgZm9ybWF0dGluZyBvZiBhbGwgb3V0cHV0DQogcmF3IDogZG8gbm8gZm9ybWF0dGluZyB3aGF0c29ldmVyLCBkdW1waW5nIGFsbCBkYXRhIHJhdyB0byB0aGUgYnJvd3Nlcg0KIGR1bGwgOiByZW1vdmUgYWxsIHNwYWNlcyBwcmVjZWRpbmcgZGF0YSBpbiBldmVyeSBsaW5lDQogdWdseSA6IGZvcmNlIGFsbCBjb2RlIGludG8gMSBsb25nIGxpbmUgcmVuZGVyaW5nIGl0IHByYWN0aWNhbGx5IHVucmVhZGFibGUNCiAyLiBtYWtlIHN1cmUgbmVjaG9fc3RhcnQoKSBpcyBjYWxsZWQgYmVmb3JlIGFueSBodG1sLWNvZGUgaXMgd3JpdHRlbg0KIDMuIG1ha2Ugc3VyZSBuZWNob19lbmQoKSBpcyBjYWxsZWQgYWZ0ZXIgbGFzdCBodG1sLWNvZGUgaXMgd3JpdHRlbg0KIDQuIHlvdSBjYW4gdXNlIHRoZSBzdXBwbGllZCBuZWNob18qIGZ1bmN0aW9ucyB0byB3cml0ZSwgYnV0IGRvIG5vdCBoYXZlIHRvDQoNCiBoYXZlIGZ1bg0KICovDQoNCmlmICghaXNzZXQoJEdMT0JBTFNbIm5lY2hvX2h0bWxzdGF0ZSJdKSkNCiRHTE9CQUxTWyJuZWNob19odG1sc3RhdGUiXT0iZm9ybWF0IjsNCiRHTE9CQUxTWyJuZWNob19pbmRlbnR3aWR0aCJdPTI7DQokR0xPQkFMU1sibmVjaG9fZm9yY2Vsb3dlcnRhZ3MiXT1mYWxzZTsNCiRHTE9CQUxTWyJuZWNob19kZWJ1Z21vZGUiXT1mYWxzZTsNCiRHTE9CQUxTWyJuZWNob19kZWJ1Z2xldmVsIl09ImJyaWVmIjsNCiRHTE9CQUxTWyJuZWNob19lcnJvcnMiXT0wOw0KJEdMT0JBTFNbIm5lY2hvX3ZlcnNpb24iXT0ibkVjaG8gMC4zLjIgWyIuJEdMT0JBTFNbIm5lY2hvX2h0bWxzdGF0ZSJdLiJdIC0gYSBOaWNlIEhUTUwgZWNobyBmdW5jdGlvbiI7DQoNCiRHTE9CQUxTWyJuZWNob19pbmRlbnRsZXZlbCJdPTA7DQokR0xPQkFMU1sibmVjaG9fdGltZXIiXT0wOw0KDQovL0hpc3RvcnkgYXQgdGhlIGJvdHRvbSENCg0KaWYgKCFmdW5jdGlvbl9leGlzdHMoIm5lY2hvX2lzcmF3IikpIHsNCiAgZnVuY3Rpb24gbmVjaG9faXNyYXcoKSB7DQogICAgcmV0dXJuICgkR0xPQkFMU1sibmVjaG9faHRtbHN0YXRlIl09PSJyYXciKTsNCiAgfQ0KfS8vZnVuY3Rpb25fZXhpc3RzDQoNCmlmICghZnVuY3Rpb25fZXhpc3RzKCJfbmVjaG9fY2xlYW4iKSkgew0KICBmdW5jdGlvbiBfbmVjaG9fY2xlYW4oJHMpIHsgLy9DbGVhbiBvZmYgYW55dGhpbmcgcHJlY2VkaW5nIGEgc3RyaW5nPWxlZnRpbmRlbnQgZXZlcnl0aGluZw0KDQogICAgJHJlc3VsdD1zdHJfcmVwbGFjZSgiXHQiLCIgIiwkcyk7DQoNCiAgICAkcmVzdWx0PXN0cl9yZXBsYWNlKCJcciIsIiAiLCRyZXN1bHQpOw0KICAgICANCiAgIAkkcmVzdWx0PXN0cl9yZXBsYWNlKCJcbiIsIiAiLCRyZXN1bHQpOw0KICAgCXdoaWxlIChzdHJwb3MoJHJlc3VsdCwnICAnKSAhPT0gZmFsc2UpICRyZXN1bHQgPSBzdHJfcmVwbGFjZSgnICAnLCcgJywkcmVzdWx0KTsNCiAgICByZXR1cm4gJHJlc3VsdDsNCiAgfQ0KfS8vZnVuY3Rpb25fZXhpc3RzDQoNCmlmICghZnVuY3Rpb25fZXhpc3RzKCJuZWNob19jbGVhbiIpKSB7DQogIGZ1bmN0aW9uIG5lY2hvX2NsZWFuKCRzLyosJGxlZnRpbmRlbnQ9ZmFsc2UqLykgeyAvL0NsZWFuIG9mZiBhbnl0aGluZyBwcmVjZWRpbmcgYSBzdHJpbmc9bGVmdGluZGVudCBldmVyeXRoaW5nDQogICAgLy9NdXN0IGhhbmRsZSB0ZXh0YXJlYXMgY29ycmVjdGx5ISEhDQogICAgLy9za2FsIGRlbGUgJHMgb3AgaSBiaWRkZXIsIGh2aXMgZGVyIGVyIHRleHQtYXJlYXMsIG9nIGlra2UgYmVoYW5kbGVyIGRlbGVuZSBpbmRlIGkuLi4NCiAgICAvLyRwb3M9c3RyDQogICAgJHJlc3VsdD1fbmVjaG9fY2xlYW4oJHMpOw0KDQogICAgcmV0dXJuICRyZXN1bHQ7DQogIH0NCn0vL2Z1bmN0aW9uX2V4aXN0cw0KDQppZiAoIWZ1bmN0aW9uX2V4aXN0cygibmVjaG9fZmluZHNjcmlwdHMiKSkgew0KICBmdW5jdGlvbiBuZWNob19maW5kc2NyaXB0cygkX3MsJG9mZnNldD0wKSB7DQogICAgLy8gIGVjaG8gIm9mZnNldDoiLiRvZmZzZXQuIjxicj4iOw0KICAgIGlmICgkb2Zmc2V0PnN0cmxlbigkX3MpKSByZXR1cm4gZmFsc2U7DQogICAgJHA9c3RycG9zKCRfcywiPHNjcmlwdCIsJG9mZnNldCk7DQogICAgaWYgKCRwPT09ZmFsc2UpICRwPXN0cnBvcygkX3MsIjxTQ1JJUFQiLCRvZmZzZXQpOw0KICAgIGlmICgkcD09PWZhbHNlKSAkcD1zdHJwb3MoJF9zLCI8cHJlIiwkb2Zmc2V0KTsNCiAgICBpZiAoJHA9PT1mYWxzZSkgJHA9c3RycG9zKCRfcywiPFBSRSIsJG9mZnNldCk7DQogICAgcmV0dXJuICRwOw0KICB9DQp9Ly9mdW5jdGlvbl9leGlzdHMNCg0KaWYgKCFmdW5jdGlvbl9leGlzdHMoIm5lY2hvX2ZpbmRlbmRzY3JpcHRzIikpIHsNCiAgZnVuY3Rpb24gbmVjaG9fZmluZGVuZHNjcmlwdHMoJF9zLCRvZmZzZXQ9MCkgew0KICAgIGlmICgkb2Zmc2V0PnN0cmxlbigkX3MpKSByZXR1cm4gZmFsc2U7DQogICAgJHA9c3RycG9zKCRfcywiPC9zY3JpcHQ+Iiwkb2Zmc2V0KTsNCiAgICBpZiAoJHA9PT1mYWxzZSkgJHA9c3RycG9zKCRfcywiPC9TQ1JJUFQ+Iiwkb2Zmc2V0KTsgZWxzZSAkcCs9OTsNCiAgICBpZiAoJHA9PT1mYWxzZSkgJHA9c3RycG9zKCRfcywiPC9wcmU+Iiwkb2Zmc2V0KTsgZWxzZSAkcCs9OTsNCiAgICBpZiAoJHA9PT1mYWxzZSkgJHA9c3RycG9zKCRfcywiPC9QUkU+Iiwkb2Zmc2V0KTsgZWxzZSAkcCs9NjsNCiAgICBpZiAoJHApICRwKz02Ow0KICAgIC8vCWVjaG8gIk9VVDokcCI7DQogICAgcmV0dXJuICRwOw0KICB9DQp9DQoNCg0KaWYgKCFmdW5jdGlvbl9leGlzdHMoIm5lY2hvX3VnbHlmeSIpKSB7DQogIGZ1bmN0aW9uIG5lY2hvX3VnbHlmeSgkX3MpIHsgLy9DbGVhbiBvZmYgRVZFUllUSElORywgPSAxIHZlcnkgbG9uZyBzdHJpbmcsIGV4Y2VwdCA8c2NyaXB0PidzIGFuZCA8cHJlPidzDQogICAgaWYgKG5lY2hvX2ZpbmRzY3JpcHRzKCRfcyk9PT1mYWxzZSkgIHJldHVybiBuZWNob19jbGVhbigkX3MpOw0KICAgICRzPSRfczsNCiAgICAkcmVzdWx0PSIiOw0KICAgICRpbnNpZGU9ZmFsc2U7DQogICAgLy8JJGxhc3RwPTA7DQogICAgJHA9bmVjaG9fZmluZHNjcmlwdHMoJHMpOw0KICAgIHdoaWxlICgkcCE9ZmFsc2UpIHsNCiAgICAgIC8vCSAgJHJlc3VsdC49IioiOw0KICAgICAgaWYgKCRpbnNpZGUpIHsNCiAgICAgICAgJHJlc3VsdC49c3Vic3RyKCRzLDAsJHApOw0KICAgICAgICAkcz1zdWJzdHIoJHMsJHAsMTAwMDAwKTsNCiAgICAgICAgJHA9bmVjaG9fZmluZHNjcmlwdHMoJHMpOw0KICAgICAgICAkaW5zaWRlPWZhbHNlOw0KICAgICAgfSBlbHNlIHsNCiAgICAgICAgJHJlc3VsdC49bmVjaG9fY2xlYW4oc3Vic3RyKCRzLDAsJHApKTsNCiAgICAgICAgJHM9c3Vic3RyKCRzLCRwLDEwMDAwMCk7DQogICAgICAgICRwPW5lY2hvX2ZpbmRlbmRzY3JpcHRzKCRzKTsNCiAgICAgICAgJGluc2lkZT10cnVlOw0KICAgICAgfQ0KICAgIH0NCiAgICBpZiAoJHMhPSIiKSB7DQogICAgICBpZiAoJGluc2lkZSkgew0KICAgICAgICAkcmVzdWx0Lj0kczsNCiAgICAgIH0gZWxzZSB7DQogICAgICAgICRyZXN1bHQuPW5lY2hvX2NsZWFuKCRzKTsNCiAgICAgIH0NCiAgICB9DQoNCiAgICByZXR1cm4gJHJlc3VsdDsNCiAgfQ0KfS8vZnVuY3Rpb25fZXhpc3RzDQoNCg0KDQppZiAoIWZ1bmN0aW9uX2V4aXN0cygibmVjaG9fbWtpbmRlbnQiKSkgew0KICBmdW5jdGlvbiBuZWNob19ta2luZGVudCgkaW5kLCRyZXR1cm49dHJ1ZSkgeyAgICAgDQogICAgaWYgKCRyZXR1cm4pICRyZXN1bHQ9IlxuIjsgZWxzZSAkcmVzdWx0PSIiOw0KICAgIGZvciAoJGk9MDsgJGk8JGluZDsgJGkrKykgew0KICAgICAgJHJlc3VsdC49c3Vic3RyKCIgICAgICAgICAgICAgICAgICIsMCwgJEdMT0JBTFNbIm5lY2hvX2luZGVudHdpZHRoIl0pOw0KICAgIH0NCiAgICBzdGF0aWMgJGxldmVsPTA7DQogICAgaWYgKCRpbmQ9PSRsZXZlbCsxKSB7DQogICAgICAkR0xPQkFMU1sibmVjaG9faW5kZW50bGV2ZWwiXSsrOw0KICAgICAgJGxldmVsKys7DQogICAgfSBlbHNlIHsNCiAgICAgIGlmICgkaW5kPT0kbGV2ZWwtMSkgew0KICAgICAgICAkR0xPQkFMU1sibmVjaG9faW5kZW50bGV2ZWwiXS0tOw0KICAgICAgICAkbGV2ZWwtLTsNCiAgICAgIH0NCiAgICB9DQogICAgcmV0dXJuICRyZXN1bHQ7DQogIH0NCn0vL2Z1bmN0aW9uX2V4aXN0cw0KDQppZiAoIWZ1bmN0aW9uX2V4aXN0cygibmVjaG9fYWRkdGFnIikpIHsNCiAgZnVuY3Rpb24gbmVjaG9fYWRkdGFnKCR0YWcpIHsNCiAgICAkcmVzdWx0PXRyaW0oJHRhZyk7DQogICAgaWYgKCRHTE9CQUxTWyJuZWNob19mb3JjZWxvd2VydGFncyJdKSB7DQogICAgICAkcmVzdWx0PXN0cnRvbG93ZXIoJHJlc3VsdCk7DQogICAgICANCiAgICB9DQogICAgcmV0dXJuICRyZXN1bHQ7DQogIH0NCn0vL2Z1bmN0aW9uX2V4aXN0cw0KDQppZiAoIWZ1bmN0aW9uX2V4aXN0cygibmVjaG9fZm9ybWF0IikpIHsNCiAgZnVuY3Rpb24gbmVjaG9fZm9ybWF0KCRzKSB7DQogICAgJHN0YXJ0dGltZT1taWNyb3RpbWUodHJ1ZSk7DQogICAgc3RhdGljICRpbmRlbnRhcnJheT1hcnJheSgpOw0KICAgIHN0YXRpYyAkaW5kZW50bWVzc2FnZT0iIjsNCiAgICBzdGF0aWMgJGluZD0wOw0KICAgICRyZXN1bHQ9IiI7DQogICAgJHA9MDsNCg0KICAgIC8vVGFncyB3aGljaCBzaG91bGQgYmUgcHJlY2VkZWQgYnkgYSBuZXdsaW5lIGFuZCBhbiBpbmNyZWFzZSBvZiBpbmRlbnRpb24NCiAgICAkaW5kZW50cz1hcnJheSgiPFREIiwiPFRSIiwiPFRIIiwiPFRBQkxFIiwiPERJViIsIjxTUEFOIiwiPEEiLCI8UCIsIjxCT0RZIiwiPEhUTUwiLCI8SEVBRCIsIjxDRU5URVIiLCI8VElUTEUiLCI8U0VMRUNUIiwiPE9QVElPTiIsIjxGT1JNIiwiPExJIiwiPE9MIiwiPFVMIiwiPERGTiIsIjxUSEVBRCIsIjxUQk9EWSIsIjxIMSIsIjxIMiIsIjxIMyIsIjxINCIsIjxMQUJFTCIsIjxTVFlMRSIpOw0KDQogICAgLy9UYWdzIHdoaWNoIHNob3VsZCBiZSBmb2xsb3dlZCBieSBhIG5ld2xpbmUgYW5kIGEgZGVjcmVhc2Ugb2YgaW5kZW50aW9uDQogICAgJGFudGluZGVudHM9YXJyYXkoIjwvVEQiLCI8L1RSIiwiPC9USCIsIjwvVEFCTEUiLCI8L0RJViIsIjwvU1BBTiIsIjwvQSIsIjwvUCIsIjwvQk9EWSIsIjwvSFRNTCIsIjwvSEVBRCIsIjwvQ0VOVEVSIiwiPC9USVRMRSIsIjwvU0VMRUNUIiwiPC9PUFRJT04iLCI8L0ZPUk0iLCI8L0xJIiwiPC9PTCIsIjwvVUwiLCI8L0RGTiIsIjwvVEhFQUQiLCI8L1RCT0RZIiwiPC9IMSIsIjwvSDIiLCI8L0gzIiwiPC9INCIsIjwvTEFCRUwiLCI8L1NUWUxFIik7DQoNCiAgICAvL1N0YW5kIGFsb25lIHRhZ3Mgd2hpY2ggc2hvdWxkIGJlIGluZGVudGVkIGJ1dCBub3QgZXhwZWN0aW5nIGEgY2xvc2UgdGFnDQogICAgJHN0YW5kYWxvbmU9YXJyYXkoIjxJTUciLCI8SFIiLCI8QlIiLCI8TElOSyIsIjxNRVRBIiwiPElOUFVUIiwiPEJBU0UiKTsNCiAgICAkbGVmdHM9YXJyYXkoIjwhLS0iLCI8IURPQ1RZUEUiLCI8P1hNTCIpOyAvL1RBR1Mgd2hpY2ggc2hvdWxkIGFsd2F5cyBiZSBjb21wbGV0ZWx5IGxlZnRhbGlnbmVkDQogICAgJHJhd3N0YXJ0cz1hcnJheSgiPFRFWFRBUkVBIiwiPFBSRSIpOyAvL1RhZ3Mgd2hvc2UgY29udGVudCBzaG91bGQgYmUgb3V0cHV0IHJhdw0KICAgICRyYXdlbmRzPWFycmF5KCI8L1RFWFRBUkVBIiwiPC9QUkUiKTsJLy9FbmQgcmF3IG91dHB1dCB0YWdzDQogICAgJHNjcmlwdHN0YXJ0cz1hcnJheSgiPFNDUklQVCIsIjxOT1NDUklQVCIpOyAvL1RhZ3Mgd2hvc2UgY29udGVudCBzaG91bGQgYmUgb3V0cHV0IHJhdywgYnV0IHdoZXJlIHN0YXJ0IGFuZCBlbmQgdGFncyBjYW4gYmUgaW5kZW50ZWQNCiAgICAkc2NyaXB0ZW5kcz1hcnJheSgiPC9TQ1JJUFQiLCI8L05PU0NSSVBUIik7CS8vRW5kIHJhdyBvdXRwdXQgdGFncywgYnV0IHdoZXJlIHN0YXJ0IGFuZCBlbmQgdGFncyBjYW4gYmUgaW5kZW50ZWQNCg0KICAgIC8vV2VsbCwgdGhpcyBmb2xsb3dpbmcgc21hbGwgc3RhdGUtbWFjaGluZSBkb2VzIGFsbCB0aGUgcGFyc2luZw0KICAgICRzdGF0ZT0ib3V0c2lkZSI7DQogICAgJHRhZz0iIjsNCiAgICAkcmV0dXJuc2VudD1mYWxzZTsNCiAgICAkbmVlZHJldHVybj1mYWxzZTsNCiAgICAkcmF3b3V0cHV0PWZhbHNlOw0KICAgICRpbnNpZGVzdGFuZGFsb25lPWZhbHNlOw0KICAgICRhbHJlYWR5aW5kZW50ZWQ9ZmFsc2U7DQogICAgJGluc2lkZV9xX3NpbmdsZT1mYWxzZTsNCiAgICAkaW5zaWRlX3FfZG91YmxlPWZhbHNlOw0KICAgIHdoaWxlICgkcDxzdHJsZW4oJHMpKSB7DQogICAgICBzd2l0Y2ggKCRzdGF0ZSkgew0KICAgICAgICBjYXNlICJvdXRzaWRlIiA6IHsgLy8gT0ssIHdlJ3JlIG91dHNpZGUgYW55IHRhZ3MNCiAgICAgICAgICBpZiAoJHNbJHBdPT0iPCIpIHsgLy9TdGFydGluZyBhIHRhZz8NCiAgICAgICAgICAgICRzdGF0ZT0ic2VhcmNoaW5nIjsgLy9XZWxsLCBsZXQncyBjaGFuZ2Ugc3RhdGUNCiAgICAgICAgICAgICR0YWc9IjwiOyAvL1RoZSB0YWctdmFyIGlzIHVwZGF0ZWQgICAgICAgICAgICANCiAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgaWYgKCEkcmF3b3V0cHV0KSB7IC8vb3V0cHV0dGluZyByYXc/DQogICAgICAgICAgICAgIGlmICghJHJldHVybnNlbnQpIHsgLy9Ob3Qgc3RhcnRpbmcgYSB0YWcNCiAgICAgICAgICAgICAgICBpZiAoJHNbJHBdIT0iICIpIHsgLy9JZiBhbnl0aGluZyBlbHNlIGJ1dCBzcGFjZXMsIGxldHMgaW5kZW50IGFzIGlzIGFwcHJvcHJhaXRlDQogICAgICAgICAgICAgICAgICAkcmVzdWx0Lj0obmVjaG9fbWtpbmRlbnQoJGluZCwvKiRuZWVkcmV0dXJuKi90cnVlKSk7DQogICAgICAgICAgICAgICAgICAkcmV0dXJuc2VudD10cnVlOw0KICAgICAgICAgICAgICAgICAgJG5lZWRyZXR1cm49ZmFsc2U7DQogICAgICAgICAgICAgICAgICAkYWxyZWFkeWluZGVudGVkPXRydWU7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgIGlmIChzdHJwb3MoIlxuXHRcciIsJHNbJHBdKT09PWZhbHNlKSAkcmVzdWx0Lj0kc1skcF07IC8vQW5kIGFkZCB0aGUgY2hhciBpZiBpdCdzIG5vdCBhIG5ld2xpbmUNCiAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICRyZXN1bHQuPSRzWyRwXTsgLy9BbmQgYWRkIHRoZSBjaGFyDQogICAgICAgICAgICB9DQogICAgICAgICAgfQ0KICAgICAgICAgIGJyZWFrOw0KICAgICAgICB9DQogICAgICAgIGNhc2UgInNlYXJjaGluZyIgOiB7DQogICAgICAgICAgaWYgKCRzWyRwXT09Ij4iKSB7IC8vRW5kIG9mIHRhZz8/DQogICAgICAgICAgICAkdGFnLj0iPiI7IC8vTm90IGZvdW5kLCBkb2VzIG5vdCBrbm93IHdoYXQgdG8gZG8uLi4NCiAgICAgICAgICAgICRyZXN1bHQuPW5lY2hvX2FkZHRhZygkdGFnKTsgLy9TaW1wbHkgYWRkIGl0Li4uDQogICAgICAgICAgICAkc3RhdGU9Im91dHNpZGUiOyAvL0FuZCBjaGFuZ2Ugc3RhdGUNCiAgICAgICAgICAgICRyZXR1cm5zZW50PXRydWU7ICAvL05vIHJldHVybiBzZW50LCBidXQgYXMgd2UgZm91bmQgbm8gdGFnIGl0IHNob3VsZG4ndCBwcm9iYWJseQ0KICAgICAgICAgIH0gZWxzZSBpZiAoJHNbJHBdPT0iPCIpIHsvL2htbW0NCiAgICAgICAgICAgICR0YWcuPSI8IjsgLy9XZWxsLCBub3RoaW5nIHRvIGRvIGJ1dCB0byBhZGQgdGhlIHRoaW5nLi4uDQogICAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgICR0YWcuPSRzWyRwXTsgLy9BZGQgdG8gdGhlIHRhZyAiaW4gcHJvZ3Jlc3MiDQogICAgICAgICAgICAkcGVlaz0iIjsNCiAgICAgICAgICAgIGlmICgkcDxzdHJsZW4oJHMpKSB7DQogICAgICAgICAgICAgICRwZWVrPSRzWyRwKzFdOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgLy9pZiAoJHNbJHBdPT0iICIpIGNvbnRpbnVlOyAvL1RhZyBub3QgY29tcGxldGUgeWV0DQogICAgICAgICAgICAkZm91bmQ9ZmFsc2U7IC8vbm90IGZvdW5kIHlldCENCiAgICAgICAgICAgICR1dGFnPXN0cnRvdXBwZXIoJHRhZyk7IC8vUHJlcGFyZSBhbiB1cHBlcmNhc2UgdGFnIHZlcnNpb24NCiAgICAgICAgICAgIGZvciAoJGk9MDsgJGk8Y291bnQoJGluZGVudHMpOyRpKyspIHsgLy9TZWFyY2ggdGhlIGluZGVudCBhcnJheQ0KICAgICAgICAgICAgICBpZiAoJHV0YWc9PSRpbmRlbnRzWyRpXSAmJiAoJHBlZWs9PSIgIiB8fCAkcGVlaz09Ij4iIHx8ICRwZWVrPT0iLyIpKSB7DQogICAgICAgICAgICAgICAgJHJlc3VsdC49KG5lY2hvX21raW5kZW50KCRpbmQsdHJ1ZSkubmVjaG9fYWRkdGFnKCR0YWcpKTsNCiAgICAgICAgICAgICAgICAvLyEkcmV0dXJuc2VudA0KICAgICAgICAgICAgICAgIGlmICgkR0xPQkFMU1sibmVjaG9fZGVidWdtb2RlIl0pIHsNCiAgICAgICAgICAgICAgICAgIGFycmF5X3B1c2goJGluZGVudGFycmF5LCR1dGFnKTsNCiAgICAgICAgICAgICAgICAgIGlmICgkR0xPQkFMU1sibmVjaG9fZGVidWdsZXZlbCJdPT0idmVyYm9zZSIpIHsNCiAgICAgICAgICAgICAgICAgICAgJGluZGVudG1lc3NhZ2U9IiA8IS0tIGFkZGVkIHRvIHN0YWNrICIuc3Vic3RyKCR1dGFnLDEpLiIgLS0+IjsNCiAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgJHN0YXRlPSJpbnNpZGUiOyAkZm91bmQ9dHJ1ZTsgLy9mb3VuZCEgTm93IHdlJ3JlIGluc2lkZSBhIGtub3duIHRhZyENCiAgICAgICAgICAgICAgICAkaW5kKys7CS8vSW5jcmVhc2UgaW5kZW50YXRpb24NCiAgICAgICAgICAgICAgICBicmVhazsNCiAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgaWYgKCEkZm91bmQpIHsgLy9zZWFyY2ggdGhlIEFudGktSW5kZW50YXJyYXkNCiAgICAgICAgICAgICAgZm9yICgkaT0wOyAkaTxjb3VudCgkYW50aW5kZW50cyk7JGkrKykgew0KICAgICAgICAgICAgICAgIGlmICgkdXRhZz09JGFudGluZGVudHNbJGldKSB7DQogICAgICAgICAgICAgICAgICAkaW5kLS07IC8vRGVjcmVhc2UgaW5kZW50YXRpb24NCiAgICAgICAgICAgICAgICAgIGlmICgkR0xPQkFMU1sibmVjaG9fZGVidWdtb2RlIl0pIHsNCiAgICAgICAgICAgICAgICAgICAgJGV4cGVjdGVkPWFycmF5X3BvcCgkaW5kZW50YXJyYXkpOw0KICAgICAgICAgICAgICAgICAgICAkZXhwZWN0ZWQ9JGV4cGVjdGVkWzBdLiIvIi5zdWJzdHIoJGV4cGVjdGVkLDEpOw0KICAgICAgICAgICAgICAgICAgICBpZiAoJHV0YWc9PSRleHBlY3RlZCkgew0KICAgICAgICAgICAgICAgICAgICAgIGlmICgkR0xPQkFMU1sibmVjaG9fZGVidWdsZXZlbCJdPT0idmVyYm9zZSIpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICRpbmRlbnRtZXNzYWdlPSIgPCEtLSByZW1vdmVkIHRvIHN0YWNrICIuc3Vic3RyKCR1dGFnLDEpLiIgLS0+IjsNCiAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgICAgICAgJGluZGVudG1lc3NhZ2U9IiA8IS0tIGVycm9yOiByZW1vdmVkIGZyb20gc3RhY2sgIi5zdWJzdHIoJHV0YWcsMSkuIiwgZXhwZWN0ZWQgIi5zdWJzdHIoJGV4cGVjdGVkLDEpLiIgLS0+IjsNCiAgICAgICAgICAgICAgICAgICAgICAkR0xPQkFMU1sibmVjaG9fZXJyb3JzIl0rKzsNCiAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgJHJlc3VsdC49KG5lY2hvX21raW5kZW50KCRpbmQpLm5lY2hvX2FkZHRhZygkdGFnKSk7IC8vSnVzdCBwdXQgaXQgdGhlcmUNCiAgICAgICAgICAgICAgICAgICRzdGF0ZT0iaW5zaWRlIjsgJGZvdW5kPXRydWU7IC8vZm91bmQhIE5vdyB3ZSdyZSBpbnNpZGUgYSBrbm93biB0YWchDQogICAgICAgICAgICAgICAgICAkbmVlZHJldHVybj10cnVlOw0KICAgICAgICAgICAgICAgICAgYnJlYWs7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9DQogICAgICAgICAgICBpZiAoISRmb3VuZCkgeyAvL3NlYXJjaCB0aGUgbGVmdC1hbGlnbmVkIGFycmF5DQogICAgICAgICAgICAgIGZvciAoJGk9MDsgJGk8Y291bnQoJGxlZnRzKTskaSsrKSB7DQogICAgICAgICAgICAgICAgaWYgKCR1dGFnPT0kbGVmdHNbJGldKSB7DQogICAgICAgICAgICAgICAgICAkcmVzdWx0Lj0obmVjaG9fbWtpbmRlbnQoMCkubmVjaG9fYWRkdGFnKCR0YWcpKTsgLy9KdXN0IHB1dCBpdCB0aGVyZQ0KICAgICAgICAgICAgICAgICAgJHN0YXRlPSJpbnNpZGUiOyAkZm91bmQ9dHJ1ZTsgLy9XZSdyZSBpbnNpZGUgYSBrbm93biB0YWchDQogICAgICAgICAgICAgICAgICAvLyRlbmRyZXR1cm49dHJ1ZTsNCiAgICAgICAgICAgICAgICAgIGJyZWFrOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgaWYgKCEkZm91bmQpIHsNCiAgICAgICAgICAgICAgZm9yICgkaT0wOyAkaTxjb3VudCgkc3RhbmRhbG9uZSk7JGkrKykgeyAvL1NlYXJjaCB0aGUgc3RhbmQtYWxvbmUtdGFnIGFycmF5DQogICAgICAgICAgICAgICAgaWYgKCR1dGFnPT0kc3RhbmRhbG9uZVskaV0pIHsNCiAgICAgICAgICAgICAgICAgICRyZXN1bHQuPShuZWNob19ta2luZGVudCgkaW5kKS5uZWNob19hZGR0YWcoJHRhZykpOyAvL1B1dCBpdCB0aGVyZSBwcm9wZXJseSBpbmRlbnRlZA0KICAgICAgICAgICAgICAgICAgJHN0YXRlPSJpbnNpZGUiOyAkZm91bmQ9dHJ1ZTsJCS8vV2UncmUgaW5zaWRlIGEga25vd24gdGFnIQ0KICAgICAgICAgICAgICAgICAgJGluc2lkZXN0YW5kYWxvbmU9dHJ1ZTsNCiAgICAgICAgICAgICAgICAgIGJyZWFrOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgaWYgKCEkZm91bmQpIHsNCiAgICAgICAgICAgICAgZm9yICgkaT0wOyAkaTxjb3VudCgkcmF3c3RhcnRzKTskaSsrKSB7IC8vU2VhcmNoIHRoZSByYXdzdGFydGVycy10YWcgYXJyYXkNCiAgICAgICAgICAgICAgICBpZiAoJHV0YWc9PSRyYXdzdGFydHNbJGldKSB7DQogICAgICAgICAgICAgICAgICAkcmVzdWx0Lj1uZWNob19hZGR0YWcoJHRhZyk7IC8vQWRkIHRoZSB0YWcgd2l0aG91dCBpbmRlbnRhdGlvbnMNCiAgICAgICAgICAgICAgICAgICRzdGF0ZT0iaW5zaWRlIjsgJGZvdW5kPXRydWU7CQkvL1dlJ3JlIGluc2lkZSBhIGtub3duIHRhZyENCiAgICAgICAgICAgICAgICAgICRyYXdvdXRwdXQ9dHJ1ZTsgIC8vUmF3IG91dHB1dA0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgaWYgKCEkZm91bmQpIHsNCiAgICAgICAgICAgICAgZm9yICgkaT0wOyAkaTxjb3VudCgkcmF3ZW5kcyk7JGkrKykgeyAvL1NlYXJjaCB0aGUgcmF3c3RhcnRlcnMtdGFnIGFycmF5DQogICAgICAgICAgICAgICAgaWYgKCR1dGFnPT0kcmF3ZW5kc1skaV0pIHsNCiAgICAgICAgICAgICAgICAgICRyZXN1bHQuPW5lY2hvX2FkZHRhZygkdGFnKTsvL0FkZCB0aGUgdGFnIHdpdGhvdXQgaW5kZW50YXRpb25zDQogICAgICAgICAgICAgICAgICAkc3RhdGU9Imluc2lkZSI7ICRmb3VuZD10cnVlOwkJLy9XZSdyZSBpbnNpZGUgYSBrbm93biB0YWchDQogICAgICAgICAgICAgICAgICAkcmF3b3V0cHV0PWZhbHNlOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgaWYgKCEkZm91bmQpIHsNCiAgICAgICAgICAgICAgZm9yICgkaT0wOyAkaTxjb3VudCgkc2NyaXB0c3RhcnRzKTskaSsrKSB7IC8vU2VhcmNoIHRoZSBzY3JpcHRzdGFydGVycy10YWcgYXJyYXkNCiAgICAgICAgICAgICAgICBpZiAoJHV0YWc9PSRzY3JpcHRzdGFydHNbJGldKSB7DQogICAgICAgICAgICAgICAgICAkcmVzdWx0Lj0obmVjaG9fbWtpbmRlbnQoJGluZCkubmVjaG9fYWRkdGFnKCR0YWcpKTsgLy9QdXQgaXQgdGhlcmUgcHJvcGVybHkgaW5kZW50ZWQNCiAgICAgICAgICAgICAgICAgICRzdGF0ZT0iaW5zaWRlIjsgJGZvdW5kPXRydWU7CQkvL1dlJ3JlIGluc2lkZSBhIGtub3duIHRhZyENCiAgICAgICAgICAgICAgICAgICRyYXdvdXRwdXQ9dHJ1ZTsNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0NCiAgICAgICAgICAgIGlmICghJGZvdW5kKSB7DQogICAgICAgICAgICAgIGZvciAoJGk9MDsgJGk8Y291bnQoJHNjcmlwdGVuZHMpOyRpKyspIHsgLy9TZWFyY2ggdGhlIHJhd3N0YXJ0ZXJzLXRhZyBhcnJheQ0KICAgICAgICAgICAgICAgIGlmICgkdXRhZz09JHNjcmlwdGVuZHNbJGldKSB7DQogICAgICAgICAgICAgICAgICAkcmVzdWx0Lj0obmVjaG9fbWtpbmRlbnQoJGluZCkubmVjaG9fYWRkdGFnKCR0YWcpKTsgLy9QdXQgaXQgdGhlcmUgcHJvcGVybHkgaW5kZW50ZWQNCiAgICAgICAgICAgICAgICAgICRzdGF0ZT0iaW5zaWRlIjsgJGZvdW5kPXRydWU7CQkvL1dlJ3JlIGluc2lkZSBhIGtub3duIHRhZyENCiAgICAgICAgICAgICAgICAgICRyYXdvdXRwdXQ9ZmFsc2U7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9DQogICAgICAgICAgfQ0KICAgICAgICAgIGJyZWFrOw0KICAgICAgICB9DQogICAgICAgIGNhc2UgImluc2lkZSIgOiB7DQogICAgICAgICAgaWYgKCRzWyRwXT09Ij4iKSB7IC8vRW5kIG9mIHRhZyBmb3VuZCENCiAgICAgICAgICAgIGlmICgoJGluc2lkZV9xX3NpbmdsZT09dHJ1ZSkgfHwgKCRpbnNpZGVfcV9kb3VibGU9PXRydWUpKSAgew0KICAgICAgICAgICAgICAkcmVzdWx0Lj0iPiI7IC8vQWRkIHRvIG91dHB1dCwgc3RpbGwgaW5zaWRlIGEgdGFnDQogICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgICAkcmVzdWx0Lj0iPiI7IC8vQWRkIGl0IHRvIG91dHB1dA0KICAgICAgICAgICAgICAkcmV0dXJuc2VudD1mYWxzZTsgLy9ObyByZXR1cm4gc2VudA0KICAgICAgICAgICAgICAkc3RhdGU9Im91dHNpZGUiOyAvL0FuZCBjaGFuZ2Ugc3RhdGUNCiAgICAgICAgICAgICAgaWYgKCRHTE9CQUxTWyJuZWNob19kZWJ1Z21vZGUiXSkgew0KICAgICAgICAgICAgICAgIGlmICgkaW5kZW50bWVzc2FnZSE9IiIpIHsNCiAgICAgICAgICAgICAgICAgICRyZXN1bHQuPSRpbmRlbnRtZXNzYWdlOw0KICAgICAgICAgICAgICAgICAgJGluZGVudG1lc3NhZ2U9IiI7DQogICAgICAgICAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgICAgICAgIGlmICgkaW5zaWRlc3RhbmRhbG9uZSkgew0KICAgICAgICAgICAgICAgICAgICBpZiAoc3Vic3RyKCRyZXN1bHQsLTIsMSkhPSIvIikgew0KICAgICAgICAgICAgICAgICAgICAgICRyZXN1bHQuPSIgPCEtLSBlcnJvcjogRGlkIHlvdSByZW1lbWJlciB0byBhZGQgLyB0byBzdGFuZGFsb25lIHRhZz8gLS0+IjsNCiAgICAgICAgICAgICAgICAgICAgICAkR0xPQkFMU1sibmVjaG9fZXJyb3JzIl0rKzsNCiAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgJGluc2lkZXN0YW5kYWxvbmU9ZmFsc2U7DQogICAgICAgICAgICB9DQogICAgICAgICAgfSBlbHNlIGlmICgkc1skcF09PSI8Iikgey8vaG1tbSwgaHRtbC1lcnJvcj8NCiAgICAgICAgICAgICRyZXN1bHQuPSI8IjsgLy9XZWxsLCBqdXN0IGFkZCB0aGUgdGhpbmcuLi4NCg0KICAgICAgICAgIH0NCiAgICAgICAgICBlbHNlIGlmICgkc1skcF09PSJcIiIpIHsNCiAgICAgICAgICAgIGlmICgkaW5zaWRlX3FfZG91YmxlPT10cnVlKSB7DQogICAgICAgICAgICAgICRpbnNpZGVfcV9kb3VibGU9ZmFsc2U7ICAvL09LLCBlbmQgb2YgcGFyYW1ldGVyDQogICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgICAkaW5zaWRlX3FfZG91YmxlPXRydWU7ICAvL09LLCB0aGlzIG11c3QgYmUgYSBwYXJhbWV0ZXINCiAgICAgICAgICAgIH0NCiAgICAgICAgICAgICRyZXN1bHQuPSRzWyRwXTsgLy9BZGQgdG8gb3V0cHV0LCBzdGlsbCBpbnNpZGUgYSB0YWcNCiAgICAgICAgICB9IGVsc2UgaWYgKCRzWyRwXT09IlwnIikgew0KICAgICAgICAgICAgaWYgKCRpbnNpZGVfcV9zaW5nbGU9PXRydWUpIHsNCiAgICAgICAgICAgICAgJGluc2lkZV9xX3NpbmdsZT1mYWxzZTsgIC8vT0ssIGVuZCBvZiBwYXJhbWV0ZXINCiAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICRpbnNpZGVfcV9zaW5nbGU9dHJ1ZTsgIC8vT0ssIHRoaXMgbXVzdCBiZSBhIHBhcmFtZXRlcg0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgJHJlc3VsdC49JHNbJHBdOyAvL0FkZCB0byBvdXRwdXQsIHN0aWxsIGluc2lkZSBhIHRhZw0KICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAkcmVzdWx0Lj0kc1skcF07IC8vQWRkIHRvIG91dHB1dCwgc3RpbGwgaW5zaWRlIGEgdGFnDQogICAgICAgICAgfQ0KICAgICAgICAgIGJyZWFrOw0KICAgICAgICB9DQogICAgICB9DQogICAgICAkcCsrOyAgLy9JbmNyZWFzZSBwb2ludGVyIGluIHN0cmluZw0KICAgIH0NCiAgICAkR0xPQkFMU1sibmVjaG9fdGltZXIiXSs9KG1pY3JvdGltZSh0cnVlKS0kc3RhcnR0aW1lKTsNCiAgICByZXR1cm4gJHJlc3VsdDsNCiAgfQ0KfSAvL2lvbl9leGlzdHMNCg0KaWYgKCFmdW5jdGlvbl9leGlzdHMoIm5lY2hvX3N0YXJ0IikpIHsNCiAgZnVuY3Rpb24gbmVjaG9fc3RhcnQoKSB7DQogICAgb2Jfc3RhcnQoImd6X2hhbmRsZXIiKTsgLy9HTG9iYWwgb3V0cHV0IGJ1ZmZlciwgR1onZWQNCiAgICBpZiAoIW5lY2hvX2lzcmF3KCkpIHsNCiAgICAgIG9iX3N0YXJ0KCk7IC8vaW50ZXJuYWwgbmVjaG8tYnVmZmVyDQogICAgICBuZWNobygiPCEtLSBORUNITyBPVVRQVVQgU1RBUlQgIi4kR0xPQkFMU1sibmVjaG9fdmVyc2lvbiJdLiIgLS0+XG4iKTsNCiAgICB9DQogIH0NCn0gLy9mdW5jdGlvbl9leGlzdHMNCg0KDQppZiAoIWZ1bmN0aW9uX2V4aXN0cygibmVjaG8iKSkgew0KICBmdW5jdGlvbiBuZWNobygkczEsJGZsdXNoPWZhbHNlLCRyZWN1cnNlPXRydWUpIHsNCiAgICAvLyAgZWNobyAkczEuIlxuIjsgcmV0dXJuOw0KICAgIGlmIChuZWNob19pc3JhdygpKSB7ZWNobyAkczEuIlxuIjsgcmV0dXJuO307IC8vaWYgbm90IGVuYWJsZWQgc2ltcGx5IG91dHB1dA0KICAgIHN0YXRpYyAkX3M7DQogICAgaWYgKCRyZWN1cnNlKSB7DQogICAgICAkX2J1ZmZlcj1vYl9nZXRfY29udGVudHMoKTsgLy8ic2F2ZSIgYW55IGNvbnRlbnQgbm90IHNlbmQgdGhyb3VnaCBuZWNobw0KICAgICAgb2JfZW5kX2NsZWFuKCk7IG9iX3N0YXJ0KCk7IC8vQ2xlYXIgdGhlIGludGVybmFsIG5lY2hvLWJ1ZmZlcg0KICAgICAgLy9vYl9jbGVhbigpOyAvL1BIUCB2ZXJzaW9uIDQuMi4wKw0KICAgICAgbmVjaG8oJF9idWZmZXIsZmFsc2UsZmFsc2UpOyAvL0FuZCBmb3JtYXQvc2hvdyB0aGlzIGNvbnRlbnQNCg0KICAgIH0NCiAgICAkczE9dHJpbSgkczEpOw0KICAgIGlmICgkczEhPSIiKSAkX3MuPSgkczEuIlxuIik7DQogICAgaWYgKChzdHJsZW4oJF9zKT4xMDI0KSB8fCAkZmx1c2gpIHsNCiAgICAgIHN3aXRjaCAoJEdMT0JBTFNbIm5lY2hvX2h0bWxzdGF0ZSJdKSB7DQogICAgICAgIGNhc2UgInVnbHkiIDogJF9zPW5lY2hvX3VnbHlmeSgkX3MpOyBicmVhazsNCiAgICAgICAgY2FzZSAiZHVsbCIgOiAkX3M9bmVjaG9fY2xlYW4oJF9zKTsgYnJlYWs7DQogICAgICAgIGNhc2UgImZvcm1hdCIgOiAkX3M9bmVjaG9fdWdseWZ5KCRfcyk7ICRfcz1uZWNob19mb3JtYXQoJF9zKTsgYnJlYWs7DQogICAgICAgIGRlZmF1bHQgOiA7ICAvL3JhdyBoYXMgYmVlbiB0YWtlbiBjYXJlIG9mIGFib3ZlLi4uDQogICAgICB9DQoNCiAgICAgIGVjaG8gJF9zOw0KICAgICAgb2JfZW5kX2ZsdXNoKCk7IG9iX3N0YXJ0KCk7DQogICAgICAkX3M9IiI7DQogICAgfQ0KDQogIH0NCn0gLy9mdW5jdGlvbl9leGlzdHMNCg0KaWYgKCFmdW5jdGlvbl9leGlzdHMoIm5lY2hvX3JhdyIpKSB7DQogIGZ1bmN0aW9uIG5lY2hvX3JhdygkczEpIHsNCiAgICBpZiAoIW5lY2hvX2lzcmF3KCkpIHsNCiAgICAgIG5lY2hvX2ZsdXNoKCk7IC8vRW1wdHkgb3V0cHV0IGJ1ZmZlciwgZm9ybWF0dGluZyBpdCBhcyBpdCBzaG91bGQNCiAgICAgIG9iX2VuZF9jbGVhbigpOyAvL1N0b3AgaW5uZXIgYnVmZmVyDQogICAgICBlY2hvICRzMS4iXG4iOyAvL091dHB1dCByYXcNCiAgICAgIG9iX3N0YXJ0KCk7DQogICAgfSBlbHNlIHsNCiAgICAgIG5lY2hvKCRzMSk7DQogICAgfQ0KDQogICAgLy8JbmVjaG9fZmx1c2goKTsgIC8vRmx1c2ggYWdhaW4NCiAgfQ0KfSAvL2Z1bmN0aW9uX2V4aXN0cw0KDQppZiAoIWZ1bmN0aW9uX2V4aXN0cygibmVjaG9fbmJzcCIpKSB7DQogIGZ1bmN0aW9uIG5lY2hvX25ic3AoJHMxKSB7DQogICAgbmVjaG8oc3RyX3JlcGxhY2UoIiAiLCImbmJzcDsiLCRzMSkpOyAvL2V4Y2hhbmdlIHNwYWNlcyB0byBlbnRpdGllcywgYW5kIGVjaG8NCiAgfQ0KfSAvL2Z1bmN0aW9uX2V4aXN0cw0KDQppZiAoIWZ1bmN0aW9uX2V4aXN0cygibmJzcCIpKSB7DQogIGZ1bmN0aW9uIG5ic3AoJHMxKSB7DQogICAgcmV0dXJuIHN0cl9yZXBsYWNlKCIgIiwiJm5ic3A7IiwkczEpOwkvL2V4Y2hhbmdlIHNwYWNlcyB0byBlbnRpdGllcywgYW5kIHJldHVybiBpdA0KICB9DQp9IC8vZnVuY3Rpb25fZXhpc3RzDQoNCg0KaWYgKCFmdW5jdGlvbl9leGlzdHMoIm5lY2hvX2VuZCIpKSB7DQogIGZ1bmN0aW9uIG5lY2hvX2VuZCgpIHsNCiAgICBpZiAoIW5lY2hvX2lzcmF3KCkpIHsNCiAgICAgIG5lY2hvKCI8IS0tIE5FQ0hPIE9VVFBVVCBFTkQgW2VuZCBpbmRlbnQgbGV2ZWwgaXMgIi4kR0xPQkFMU1sibmVjaG9faW5kZW50bGV2ZWwiXS4iIHNob3VsZCBiZSAwXSBHZW5lcmF0aW9uIHRpbWU6ICIuZGF0ZSgiSDppOnMgZC9tL3kiKS4iLS0+Iik7DQogICAgICBuZWNobygiIix0cnVlLHRydWUpOyAvL0ZsdXNoIGFsbA0KICAgICAgb2JfZW5kX2ZsdXNoKCk7IC8vdGhlIGludGVybmFsIG5lY2hvX2J1ZmZlcg0KICAgIH0NCiAgICBvYl9lbmRfZmx1c2goKTsNCiAgfQ0KDQp9IC8vZnVuY3Rpb25fZXhpc3RzDQoNCi8vSG1tbSwgZG9uJ3Qga25vdyBpZiB0aGlzIHdvcmtzLCBidXQgaXQgaXMgbWVhbnQgdG8gc2hvdyBzb21lIHByb2dyZXNzIGluIHRoZQ0KLy9jbGllbnQgYnJvd3Nlcg0KaWYgKCFmdW5jdGlvbl9leGlzdHMoIm5lY2hvX2ZsdXNoIikpIHsNCiAgZnVuY3Rpb24gbmVjaG9fZmx1c2goKSB7DQogICAgaWYgKCFuZWNob19pc3JhdygpKSB7IC8vaWYgbmVjaG9fYnVmZmVyaW5nIGVuYWJsZWQgZmx1c2ggaXQNCiAgICAgIG5lY2hvKCIiLHRydWUsdHJ1ZSk7IC8vRmx1c2ggYWxsDQogICAgICBvYl9lbmRfZmx1c2goKTsgLy90aGUgaW50ZXJuYWwgbmVjaG9fYnVmZmVyDQogICAgfQ0KICAgIG9iX2VuZF9mbHVzaCgpOyAvL2ZsdXNoIHRoZSBvYmxpb2dhdG9yeSBnei1idWZmZXINCg0KICAgIG9iX3N0YXJ0KCJnel9oYW5kbGVyIik7IC8vR0xvYmFsIG91dHB1dCBidWZmZXIsIEdaJ2VkDQogICAgaWYgKCFuZWNob19pc3JhdygpKSB7DQogICAgICBvYl9zdGFydCgpOyAvL2ludGVybmFsIG5lY2hvLWJ1ZmZlcg0KICAgIH0NCiAgfQ0KfSAvL2Z1bmN0aW9uX2V4aXN0cw0KDQoNCi8qDQogSElTVE9SWQ0KIDAuMy4yIC0gQWRkZWQgPHN0eWxlPiB0byBpbmRlbnRhdGlvbnMNCiAwLjMuMSAtIEFkZGVkIG9wdGlvbiB0byBmb3JjZSBsb3dlcmNhc2UgdGFncy4NCiAwLjMuMCAtIEZpeGVkIExJTksgdG8gbm90IGluZGVudCwgYWRkZWQgQkFTRSB0byBzdGFuZGFsb25lbGlzdC4NCiAwLjIuMSAtDQogMC4yLjAgLSBjb3JyZWN0bHkgaGFuZGxlIHRhZ3MgaW5zaWRlIHRhZy1wYXJhbWV0cmVzLCBmLmV4LiBlbWJlZGRlZCBqYXZhc2NyaXB0IG91dHB1dHRpbmcgdGFncw0KIDAuMS45IC0gRml4ZWQgc29tIGlzc3VlcyB3aGVyZSB0aGVyZSBhcHBlYXJlZCBhIGxpbmUgZmVlZCBpbnN0ZWFkIG9mIGEgc3BhY2UuLi4NCiAwLjEuNiAtIFdvcmtlZCBvbiA8c2NyaXB0PiBwcm9jZXNzaW5nDQogMC4xLjUgLSBhZGRlZCA8c2NyaXB0PiB0byBub25mb3JtYXR0ZWQgb3V0cHV0DQogMC4xLjQgLSBmaXhlZCA8dGV4dGFyZWE+IGFuZCA8cHJlPiBvdXRwdXQgb25jZSBhZ2Fpbg0KIDAuMS4zIC0gRml4ZWQgYSBidWcgY2F1c2luZyBvY2Nhc3NvaW5hbCB0cm91YmxlIHdpdGggZWFybHkgc2VudCBkYXRhLCB3aGljaCBjYXVzZWQgaGVhZGVyL2Nvb2tpZXMgdG8gZmFpbA0KIDAuMS4yIC0gRml4ZWQgYSBidWcgY2F1c2luZyBzb21lIGV4dHJhIHNwYWNlcyB0byBiZSBhZGRlZCB0byA8dGV4dGFyZWE+IC0gY29udGVudA0KIDAuMS4xIC0gU29tZSBpc3N1ZXMgZml4ZWQuLi4gQSBjb3VwbGUgb2YgZGV0YWlscyB0byBnbywgYnV0IGdlbmVyYWxseSBpdCB3b3JrcyBncmVhdCENCiAwLjEuMCAtIFdlbGwsIEkgYWN0dWFsbHkgZ290IHRoZSBmb3JtYXR0aW5nIHRvIHdvcmssIHdoaWNoIHdhcyB0aGUgbWFpbiByZWFzb24NCiBJIHN0YXJ0ZWQgdGhpcyBwcm9qZWN0LCBzbyBJIGd1ZXNzIHZlcnNpb24gMC4xLjAgaXMgaW4gb3JkZXIuLi4NCiBOb3QsIGV4YWN0bHkgcGVyZmVjdCwgdGhvdWdoIDstKQ0KIDAuMC4zIC0gSG1tbSwgSSBmb3Jnb3QNCiAwLjAuMiAtIGFkZGVkIG5lY2hvX2ZsdXNoIGFuZCBmaXhlZCBzb21lIGJ1Z3MNCiAwLjAuMSAtIGZpcnN0IHJlbGVhc2Ugd2l0aCBsaXRlTnVrZQ0KDQogKi8NCg0KPz4NCg==]]></data>
	</file>
	<file>
	  <filename>/ScriptDeploy.module.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCi8qKg0KICogTW9kdWxlOiBTY3JpcHREZXBsb3kgLSBNaW5pZnkgYW5kIGRlcGxveW1lbnQgb2YgSlMgQ1NTIGFuZCBIVE1MDQogKiANCiAqIA0KICogQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykNCiAqIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnDQogKiBUaGUgbW9kdWxlJ3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvc2NyaXB0ZGVwbG95Lw0KICogDQogKiBAcGFja2FnZSBTY3JpcHREZXBsb3kNCiAqIEBhdXRob3IgamVyZW15QmFzcyA8amVyZW15QmFzc0BjYWJsZW9uZS5uZXQ+DQogKiBAY29weXJpZ2h0IEplcmVteSBCYXNzDQogKiBAbGljZW5zZSBodHRwOi8vd3d3LmdudS5vcmcvY29weWxlZnQvZ3BsLmh0bWwgRnJlZWx5IGF2YWlsYWJsZSB1bmRlciBHUEwNCiAqLw0KDQpkZWZpbmUoJ1NEX1RBQkxFJyxjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9zY3JpcHRkZXBsb3knKTsNCmRlZmluZSgnU0RfUEVSU0lTVEVOVCcsY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfc2NyaXB0ZGVwbG95X3BlcnNpc3RlbnQnKTsNCmRlZmluZSgnU0RfQUxURVJOQVRFJyxjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9zY3JpcHRkZXBsb3lfYWx0ZXJuYXRlJyk7DQpkZWZpbmUoJ1NEX0dST1VQQVNTSUdOTUVOVCcsY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfc2NyaXB0ZGVwbG95X2dyb3VwYXNzaWdubWVudCcpOw0KZGVmaW5lKCdTRF9HUk9VUCcsY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfc2NyaXB0ZGVwbG95X2dyb3VwJyk7DQpkZWZpbmUoJ1NEX1NDUklQVE5BTUVTJyxjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9zY3JpcHRkZXBsb3lfc2NyaXB0bmFtZXMnKTsNCmRlZmluZSgnU0RfU0NSSVBUT1BUSU9OUycsY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfc2NyaXB0ZGVwbG95X3NjcmlwdG9wdGlvbnMnKTsNCmRlZmluZSgnU0RfU0NSSVBUUEFSVFMnLGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3NjcmlwdGRlcGxveV9zY3JpcHRwYXJ0cycpOw0KZGVmaW5lKCdTRF9TQ1JJUFRVTkRPJyxjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9zY3JpcHRkZXBsb3lfc2NyaXB0dW5kbycpOw0KZGVmaW5lKCdTRF9URU1QJyxjbXNfZGJfcHJlZml4KCkuJ3RlbXBsYXRlcycpOw0KDQoNCg0KDQppbmlfc2V0KCdpbmNsdWRlX3BhdGgnLCANCglkaXJuYW1lKF9fRklMRV9fKSAuICcvbGliJw0KCS4gUEFUSF9TRVBBUkFUT1IgLiBpbmlfZ2V0KCdpbmNsdWRlX3BhdGgnKQ0KKTsNCmluY2x1ZGVfb25jZShkaXJuYW1lKF9fRklMRV9fKS4iL25lY2hvLnBocCIpOw0KcmVxdWlyZV9vbmNlICdNaW5pZnkvQ1NTLnBocCc7DQpyZXF1aXJlX29uY2UgJ01pbmlmeS9KYXZhc2NyaXB0LnBocCc7DQoNCmNsYXNzIFNjcmlwdERlcGxveSBleHRlbmRzIENNU01vZHVsZXsNCgl2YXIgJGRmbHRfZm9ybV90ZW1wbGF0ZSA9ICcNCgkJe2xpdGVyYWx9DQoJCTxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCgkJZnVuY3Rpb24gc2VsZWN0c3R5bGUoKXsNCgkJICB2YXIgaWR4ID0gd2luZG93LmRvY3VtZW50LnN0eWxlc3dpdGNoZXIuc3R5bGVzZWxlY3Rvci5zZWxlY3RlZEluZGV4Ow0KCQkgIHZhciBzdHlsZSA9IHdpbmRvdy5kb2N1bWVudC5zdHlsZXN3aXRjaGVyLnN0eWxlc2VsZWN0b3Iub3B0aW9uc1tpZHhdLnZhbHVlOw0KCQkgIGNoYW5nZVN0eWxlKHN0eWxlKTsNCgkJfQ0KCQk8L3NjcmlwdD4NCgkJey9saXRlcmFsfQ0KCQk8Zm9ybSBuYW1lPSJzdHlsZXN3aXRjaGVyIiBtZXRob2Q9ImdldCIgYWN0aW9uPSIiIG9uc3VibWl0PSJyZXR1cm4gZmFsc2U7Ij4NCgkJICB7JHByb21wdF9zdHlsZXNoZWV0fQ0KCQkgIDxzZWxlY3QgaWQ9InN0eWxlc2VsZWN0b3IiIG9uY2xpY2s9InNlbGVjdHN0eWxlKCkiPg0KCQkgIHtmb3JlYWNoIGZyb209JG9wdGlvbnMgaXRlbT0ib3B0In0NCgkJCTxvcHRpb24gdmFsdWU9Inskb3B0LT5uYW1lfSI+eyRvcHQtPm5hbWV9PC9vcHRpb24+DQoJCSAgey9mb3JlYWNofQ0KCQkgIDwvc2VsZWN0Pg0KCQk8L2Zvcm0+JzsJDQogICAgdmFyICRjc3NfdXJsX1c9Jyc7DQogICAgdmFyICRhZGpLZXk9Jyc7DQogICAgdmFyICRjc3NfdXJsPScnOw0KICAgIHZhciAkZlNpemU9Jyc7CQ0KICAgIHZhciAkYmFzZVVSTD0nJzsJDQogICAgdmFyICRjc3NfcGF0aD0nJzsJDQogICAgdmFyICRlcnJvcj0nJzsNCgl2YXIgJHJlcG9ydD0nJzsNCgl2YXIgJFdfaW5wdXQ9Jyc7DQoJdmFyICRFX2lucHV0PScnOw0KCXZhciAkU0NSSVBUX1BBQ0tBR0U9Jyc7DQoJdmFyICRnZXRtb2R1bGU9Jyc7DQoNCgkNCglwdWJsaWMgZnVuY3Rpb24gR2V0TmFtZSgpe3JldHVybiBnZXRfY2xhc3MoJHRoaXMpO30NCglwdWJsaWMgZnVuY3Rpb24gR2V0RnJpZW5kbHlOYW1lKCl7cmV0dXJuICR0aGlzLT5MYW5nKCdmcmllbmRseW5hbWUnKTt9DQoJcHVibGljIGZ1bmN0aW9uIEdldFZlcnNpb24oKXtyZXR1cm4gJzAuOCc7fQ0KCXB1YmxpYyBmdW5jdGlvbiBHZXRIZWxwKCl7cmV0dXJuICR0aGlzLT5MYW5nKCdoZWxwJyk7fQ0KCXB1YmxpYyBmdW5jdGlvbiBHZXRBdXRob3IoKXtyZXR1cm4gJ2plcmVteUJhc3MnO30NCglwdWJsaWMgZnVuY3Rpb24gR2V0QXV0aG9yRW1haWwoKXtyZXR1cm4gJ2plcmVteWJhc3NAY2FibGVvbmUubmV0Jzt9DQoJcHVibGljIGZ1bmN0aW9uIEdldENoYW5nZUxvZygpe3JldHVybiBmaWxlX2dldF9jb250ZW50cyhkaXJuYW1lKF9fRklMRV9fKS4nL2NoYW5nZWxvZy5pbmMnKTt9DQoJcHVibGljIGZ1bmN0aW9uIElzUGx1Z2luTW9kdWxlKCl7cmV0dXJuIHRydWU7fQ0KCXB1YmxpYyBmdW5jdGlvbiBIYXNBZG1pbigpe3JldHVybiB0cnVlO30NCglwdWJsaWMgZnVuY3Rpb24gR2V0QWRtaW5TZWN0aW9uKCl7cmV0dXJuICdsYXlvdXQnO30NCglwdWJsaWMgZnVuY3Rpb24gR2V0QWRtaW5EZXNjcmlwdGlvbigpe3JldHVybiAkdGhpcy0+TGFuZygnbW9kZGVzY3JpcHRpb24nKTt9DQoJcHVibGljIGZ1bmN0aW9uIFZpc2libGVUb0FkbWluVXNlcigpe3JldHVybiAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdNb2RpZnkgU3R5bGVzaGVldCBBc3NvY2lhdGlvbnMnKSB8fA0KICAgICAgJHRoaXMtPkNoZWNrUGVybWlzc2lvbignTW9kaWZ5IFRlbW1wbGF0ZXMnKSB8fA0KICAgICAgJHRoaXMtPkNoZWNrUGVybWlzc2lvbignQWRkIFN0eWxlc2hlZXQgQXNzb2NpYXRpb25zJykgfHwNCiAgICAgICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ0FkZCBUZW1wbGF0ZXMnKSB8fA0KICAgICAgJHRoaXMtPkNoZWNrUGVybWlzc2lvbignUmVtb3ZlIFRlbXBsYXRlcycpO30NCglwdWJsaWMgZnVuY3Rpb24gR2V0RGVwZW5kZW5jaWVzKCl7cmV0dXJuIGFycmF5KCk7fQ0KCXB1YmxpYyBmdW5jdGlvbiBNaW5pbXVtQ01TVmVyc2lvbigpe3JldHVybiAiMS44Ijt9DQoJcHVibGljIGZ1bmN0aW9uIEluc3RhbGxQb3N0TWVzc2FnZSgpe3JldHVybiAkdGhpcy0+TGFuZygncG9zdGluc3RhbGwnKTt9DQoJcHVibGljIGZ1bmN0aW9uIFVuaW5zdGFsbFBvc3RNZXNzYWdlKCl7cmV0dXJuICR0aGlzLT5MYW5nKCdwb3N0dW5pbnN0YWxsJyk7fQ0KCXB1YmxpYyBmdW5jdGlvbiBVbmluc3RhbGxQcmVNZXNzYWdlKCl7cmV0dXJuIGZhbHNlO30vLyR0aGlzLT5MYW5nKCdyZWFsbHlfdW5pbnN0YWxsJyk7DQoJcHVibGljIGZ1bmN0aW9uIEZpcmVEZWJ1ZygkY29tbWFuZCwkbWVzc2FnZSwkdmFyaWFibGVzPWFycmF5KCkpew0KCSBpZigkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZGVidWdJVCcpPT0xKXskZmlyZXBocG1vZHVsZT0kdGhpcy0+R2V0TW9kdWxlSW5zdGFuY2UoJ0ZpcmVQSFBEZWJ1ZycpOw0KCSAgaWYgKCRmaXJlcGhwbW9kdWxlKXsNCgkJLy9Nb2R1bGUgZm91bmQNCgkJJGZpcmVwaHBtb2R1bGUtPlNldE1vZHVsZU5hbWUoJHRoaXMtPkdldE5hbWUoKSk7DQoJCSRmaXJlcGhwbW9kdWxlLT5Db21tYW5kKCRjb21tYW5kLCAkbWVzc2FnZSwgJHZhcmlhYmxlcyk7DQoJICB9IC8vZWxzZSBNb2R1bGUgbm90IGZvdW5kDQoJIH0NCgl9DQoJDQoJDQoJLy9hamF4IGhvb2tzDQoJcHVibGljIGZ1bmN0aW9uIHZhbGlkYXRlKCRzY3JpcHRUeXBlLCRzSUQsJGFqYXgpew0KCQkJJFR1cm5PTlZhbD0kdGhpcy0+R2V0UHJlZmVyZW5jZSgnVHVybk9OVmFsJywxKTsNCgkJCWlmKCRUdXJuT05WYWwpew0KCQkJCSR2YWxJdCA9IG5ldyBzZFZhbCgpOw0KCQkJCXJldHVybiAkdmFsSXQtPnZhbF9JdCgkc2NyaXB0VHlwZSwkc0lELCRhamF4KTsNCgkJCX1lbHNlew0KCQkJCXJldHVybiBmYWxzZTsNCgkJCX0NCgkJCWV4aXQoKTsNCgkJfQ0KCXB1YmxpYyBmdW5jdGlvbiBwdWxsTG9ncygkcGFnZSwgJGxpbWl0LCAkd2hlcmVBUkcpe3JldHVybiBzZF9sb2dnaW46OnB1bGxMb2coJHBhZ2UsICRsaW1pdCwgJHdoZXJlQVJHKTtleGl0KCk7fQ0KCXB1YmxpYyBmdW5jdGlvbiBjc3NfdXJsX2Rpc3NlY3Rpb24oJHNJRCl7cmV0dXJuIHNjcmlwdF9kaXNzZWN0aW9uOjpjc3NfdXJsX2Rpc3NlY3Rpb24oJHNJRCk7ZXhpdCgpO30NCgkNCgkvKioNCgkgKiBNZXRob2Q6IEdldEhlYWRlckhUTUwNCgkgKiANCgkgKiANCgkgKiBAc2VlIFNjcmlwdERlcGxveTo6R2V0SGVhZGVySFRNTCgpDQoJICogQGFjY2VzcyBwdWJsaWMNCgkgKiBAcmV0dXJuIEhlYWRlciBKUyBhbmQgQ1NTDQoJICovIA0KCXB1YmxpYyBmdW5jdGlvbiBHZXRIZWFkZXJIVE1MKCl7DQoJCSRvYmogPSAkdGhpcy0+R2V0TW9kdWxlSW5zdGFuY2UoJ1NjcmlwdERlcGxveScpOw0KCQlpZiggaXNfb2JqZWN0KCRvYmopICl7DQoJCQkNCgkJCSRhSFMgPSBuZXcgYWRtaW5IZWFkZXJTY3JpcHRzKCk7IA0KCQkJcmV0dXJuICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGVGcm9tRGF0YSgkYUhTLT5qc05jc3MoKSk7DQoJCX0NCgl9DQoJLy9mdW5jdGlvbiBTdXBwcmVzc0FkbWluT3V0cHV0KCYkcmVxdWVzdCl7cmV0dXJuIHRydWU7fQ0KCQ0KCXB1YmxpYyBmdW5jdGlvbiBzdGFydEFkbWluQnVpbGQoJHBhY2thZ2U9Jycpew0KDQoJfQ0KCXB1YmxpYyBmdW5jdGlvbiBTZXRQYXJhbWV0ZXJzKCl7DQoJCSR0aGlzLT5SZWdpc3Rlck1vZHVsZVBsdWdpbigpOw0KCQkkdGhpcy0+UmVzdHJpY3RVbmtub3duUGFyYW1zKCk7DQoJCQ0KDQoJCWdsb2JhbCAkZ0NtczsNCgkJLyoNCgkJKiBUaGUgZ29hbCBoZXJlIGlzIHRvIHB1bGwgdGhlIGNvbnRlbnQgdGhhdCBpcyBoaWRkZW4gZnJvbSB0aGUgcmVzdCBvZiB0aGUgc3lzdGVtDQoJCSogVGFrZSAgaHR0cDovL2xvY2FsaG9zdC8xLjkueC9pbmRleC5waHA/bWFjdD1TY3JpcHREZXBsb3ksY250bnQwMSx2YWxIVE1MLDAmY250bnQwMWdldG1vZHVsZT1jb3JlJmNudG50MDF0ZW1wbGF0ZUlkPTE5JnNob3d0ZW1wbGF0ZT1mYWxzZQ0KCQkqIGFuZCBtYWtlDQoJCSogdGhlIHVybCAvU2NyaXB0RGVwbG95LzEvQ29yZQ0KCQkqICAgIG9yDQoJCSogdGhlIHVybCAvU2NyaXB0RGVwbG95LzEvbmV3cy9zdW1tYXJ5DQoJCSovDQoNCgkJDQoNCgkJDQoJCWlmKHZlcnNpb25fY29tcGFyZShDTVNfVkVSU0lPTiwnMS45LWJldGExJykgPj0gMCApew0KCQkJZm9yZWFjaCgkdGhpcy0+Z2V0VGVtcGxhdGVJZCgpIGFzICRrZXkgPT4gJHZhbHVlKXsNCgkJCQkkdXJsPSIvU2NyaXB0RGVwbG95LyR2YWx1ZS9jb3JlIjsNCgkJCQlydHJpbSgkdXJsLCcvJyk7DQoJCQkJJHBhcm1zID0gYXJyYXkoJ2FjdGlvbic9Pid2YWxIVE1MJywncmV0dXJuaWQnPT4nMCcsJ3RlbXBsYXRlSWQnPT4kdmFsdWUsJ2dldG1vZHVsZSc9Pidjb3JlJywnc2hvd3RlbXBsYXRlJz0+J2ZhbHNlJyk7DQoJCQkJJHJvdXRlID0gbmV3IENtc1JvdXRlKCR1cmwsJHRoaXMtPkdldE5hbWUoKSwkcGFybXMsdHJ1ZSk7DQoJCQkJY21zX3JvdXRlX21hbmFnZXI6OnJlZ2lzdGVyKCRyb3V0ZSk7DQoJCQl9DQoJCX1lbHNlew0KCQkJLy8kbW9kPSRnQ21zLT5tb2R1bGVzWydTY3JpcHREZXBsb3knXVsnb2JqZWN0J107DQoJCX0NCgkJDQoJCSR0aGlzLT5SZWdpc3RlclJvdXRlKCcvW1NzXWNyaXB0W0RkXWVwbG95XC8oP1A8dGVtcGxhdGVJZD5bMC05XSspXC8oP1A8Z2V0bW9kdWxlPi4qPylcLyg/UDx0ZW1wbGF0ZU5hbWU+Lio/KSQvJyk7DQoJCSR0aGlzLT5SZWdpc3RlclJvdXRlKCcvW1NzXWNyaXB0W0RkXWVwbG95XC8oP1A8dGVtcGxhdGVJZD5bMC05XSspXC8oP1A8Z2V0bW9kdWxlPi4qPykkLycpOw0KDQoNCg0KCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCd0ZW1wbGF0ZUlkJywnJywnJyk7DQoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCd0ZW1wbGF0ZUlkJyxDTEVBTl9TVFJJTkcpOw0KCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdnZXRtb2R1bGUnLCcnLCcnKTsNCgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2dldG1vZHVsZScsQ0xFQU5fU1RSSU5HKTsNCg0KDQoJCSR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ1N0eXBlJywnJywnQ1NTJyk7DQoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdTdHlwZScsQ0xFQU5fU1RSSU5HKTsNCg0KCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdzbWFydHknLCcnLCd0dXJuIHNtYXJ0eSBvbicpOw0KCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnc21hcnR5JyxDTEVBTl9TVFJJTkcpOw0KCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdtaW5pZnknLCcnLCd0cnVuIG1pbmlmeSBvbicpOw0KCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnbWluaWZ5JyxDTEVBTl9TVFJJTkcpOwkJDQoJCSR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ21lZGlhX3R5cGUnLCcnLCdzZXQgYSBtZWRpYSB0eXBlIGllOiBtb3JlIHRoZW4gb25lJyk7DQoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdtZWRpYV90eXBlJyxDTEVBTl9TVFJJTkcpOwkNCgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignY2FjaGVfYnVzdGVyJywnJywndHVybiBvZmYnKTsNCgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2NhY2hlX2J1c3RlcicsQ0xFQU5fU1RSSU5HKTsJDQoJCSR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ2ZzaXplJywnJywnZ2V0IHNpemUnKTsNCgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2ZzaXplJyxDTEVBTl9TVFJJTkcpOwkJDQoJCSR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ3Jvb3QnLCcnLCdzZXQgdGhlIHJvb3QgdXJsJyk7DQoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdyb290JyxDTEVBTl9TVFJJTkcpOwkNCgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignZHluYW1pYycsJycsJ2ZvcmNlIGl0IHRvIGFsd2F5cyByZWJ1aWxkJyk7DQoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdkeW5hbWljJyxDTEVBTl9TVFJJTkcpOwkJCQ0KCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdpbXBvcnQnLCcnLCdzZXQsIHdoZW4gY3NzLCB0byB1c2UgaW1wb3J0IGZvciBpbmxpbmUnKTsNCgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2ltcG9ydCcsQ0xFQU5fU1RSSU5HKTsNCgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignZHVtcCcsJycsJ2R1bXAgb3V0IHRoZSBjb250YWludHMnKTsNCgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2R1bXAnLENMRUFOX1NUUklORyk7CQ0KCQkNCgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcigndXJsJywnJywnZ2V0IG9ubHkgdGhlIHVybCB0byB0aGUgZmlsZScpOw0KCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgndXJsJyxDTEVBTl9TVFJJTkcpOwkJCQ0KCQkgDQoJCSR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ2dyb3VwSUQnLCcnLCd3aGF0IGlzIHRoZSBncm91cCBpZCcpOw0KCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnZ3JvdXBJRCcsQ0xFQU5fSU5UKTsNCgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignc2NyaXB0SUQnLCcnLCd3aGF0IGlzIHRoZSBzY3JpcHQgaWQnKTsNCgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ3NjcmlwdElEJyxDTEVBTl9JTlQpOw0KCQkNCgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignYWN0aW9uJywnZGVmYXVsdCcsJHRoaXMtPkxhbmcoJ2hlbHBfYWN0aW9uJykpOw0KCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdkdXJhdGlvbicsJycsJHRoaXMtPkxhbmcoJ2hlbHBfZHVyYXRpb24nKSk7DQoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdkdXJhdGlvbicsQ0xFQU5fSU5UKTsNCgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignY29va2llbmFtZScsJ2Ntc19zdHlsZW5hbWUnLCR0aGlzLT5MYW5nKCdoZWxwX2Nvb2tpZW5hbWUnKSk7DQoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdjb29raWVuYW1lJyxDTEVBTl9TVFJJTkcpOw0KCQkNCgl9DQoNCg0KLypfX19fX19fX19fX19fX19bIEhFTFAgXV9fX19fX19fX19fX19fKi8NCiANCgkvKioNCgkqIGxvb2sgdXAgdGlwLg0KCSoNCgkqIA0KCSogQHNlZSBTY3JpcHREZXBsb3k6OmlzX2VkaXRhYmxlKCkNCgkqDQoJKiBAcGFyYW0gc3RyaW5nICR0aXAgY29udGFpbmluZyB3aGljaCBvbmUgdG8gcmV0dXJuIGRpcmVjdGx5Lg0KCSogQHJldHVybiBzdHJpbmcNCgkqLw0KDQoJcHVibGljIGZ1bmN0aW9uIHB1bGxUaXAoJHRpcCl7DQoJCXJldHVybiAkdGhpcy0+TGFuZygkdGlwKTsNCgl9DQoNCg0KDQoNCg0KDQoNCg0KDQoNCi8qX19fX19fX19fX19fX19fWyBVU0VSIExPQ0tTIEFORCBDT05UUk9MIF1fX19fX19fX19fX19fXyovDQogDQoJLyoqDQoJKiBUbyBjaGVjayAgaWYgdGhlIHNyaXB0IGNhbiBiZSBlZGl0ZWQuDQoJKg0KCSogDQoJKiBAc2VlIFNjcmlwdERlcGxveTo6aXNfZWRpdGFibGUoKQ0KCSoNCgkqIEBwYXJhbSBpbnRlZ2VyICRTaWQgY29udGFpbmluZyB0aGUgc2NyaXB0IGlkLg0KCSogQHBhcmFtIGludGVnZXIgJHVpZCBjb250YWluaW5nIHRoZSBVc2VyIGlkLg0KCSogQHJldHVybiBib29sZWFuDQoJKi8NCglwdWJsaWMgZnVuY3Rpb24gaXNfZWRpdGFibGUoJFNpZCwkdWlkPScnKXsNCgkJJHN0YXR1cz0kdGhpcy0+R2V0UHJlZmVyZW5jZSgkU2lkLictTG9ja2VkLVNEJywnMCcpOw0KCQlpZigkc3RhdHVzPT0nMCcpew0KCQkJcmV0dXJuIHRydWU7DQoJCX1lbHNlew0KCQkJaWYoJHRoaXMtPlNUQVJUdW5sb2NrX3NjcmlwdCgkU2lkKSl7DQoJCQkJcmV0dXJuIHRydWU7DQoJCQl9ZWxzZXsNCgkJCQlyZXR1cm4gZmFsc2U7DQoJCQl9DQoJCX0JDQoJfQ0KCQ0KCS8qKg0KCSogU2V0cyB0aGUgU2NyaXB0IHRvIGxvY2ssIHdobyBsb2NrcyBpdCwgYW5kIHdoYXQgdGltZSBpdCdzIGJlZW4gbG9ja2VkIGF0DQoJKiANCgkqIEBzZWUgU2NyaXB0RGVwbG95Ojpsb2NrX3NjcmlwdCgpDQoJKg0KCSogQHBhcmFtIGludGVnZXIgJFNpZCBjb250YWluaW5nIHRoZSBzY3JpcHQgaWQuDQoJKiBAcGFyYW0gaW50ZWdlciAkdWlkIGNvbnRhaW5pbmcgdGhlIFVzZXIgaWQuDQoJKi8NCglwdWJsaWMgZnVuY3Rpb24gbG9ja19zY3JpcHQoJFNpZCwkdWlkKXsNCgkJJHRoaXMtPlNldFByZWZlcmVuY2UoJFNpZC4nLUxvY2tlZC1TRCcsJzEnKTsNCgkJJHRoaXMtPlNldFByZWZlcmVuY2UoJFNpZC4nLUxvY2tlZC1FZGl0b3ItU0QnLCR1aWQpOw0KCQkkbm93ID0gZGF0ZSgiWS1tLWQgSDppOnMiKTsgDQoJCSR0aGlzLT5TZXRQcmVmZXJlbmNlKCRTaWQuJy1Mb2NrZWQtRWRpdGVkVGltZS1TRCcsJG5vdyk7DQoJCQ0KCX0NCgkNCgkvKioNCgkqIFNldHMgdGhlIFNjcmlwdCB0byB1bmxvY2tlZCwgZGVsZXRlcyB3aG8gbG9ja3MgaXQgYW5kIGFsbCByZWZlcmVuY2UNCgkqIA0KCSogQHNlZSBTY3JpcHREZXBsb3k6OnVubG9ja19zY3JpcHQoKQ0KCSoNCgkqIEBwYXJhbSBpbnRlZ2VyICRTaWQgY29udGFpbmluZyB0aGUgc2NyaXB0IGlkLg0KCSovDQoJcHVibGljIGZ1bmN0aW9uIHVubG9ja19zY3JpcHQoJFNpZCl7DQoJCSR0aGlzLT5TZXRQcmVmZXJlbmNlKCRTaWQuJy1Mb2NrZWQtU0QnLCcwJyk7DQoJCSR0aGlzLT5TZXRQcmVmZXJlbmNlKCRTaWQuJy1Mb2NrZWQtRWRpdG9yLVNEJywnJyk7DQoJCSR0aGlzLT5TZXRQcmVmZXJlbmNlKCRTaWQuJy1Mb2NrZWQtRWRpdGVkVGltZS1TRCcsJycpOw0KCQkkbG9nbiA9IG5ldyBzZF9sb2dnaW4oKTsgDQoJCSRsb2duLT5fZG9BdWRpdCggJ2VkaXQnICwgJ29rJywgJHRoaXMtPkxhbmcoJ3JlbGVhc2VkX2RvQXVkaXQnKS4iIGlkOiRTaWQiKTsNCgl9DQoJDQoJLyoqDQoJKiBTdGFydGluZyB0byB1bmxvY2sgdGhlIFNjcmlwdA0KCSogDQoJKiBAc2VlIFNjcmlwdERlcGxveTo6U1RBUlR1bmxvY2tfc2NyaXB0KCkNCgkqDQoJKiBAcGFyYW0gaW50ZWdlciAkU2lkIGNvbnRhaW5pbmcgdGhlIHNjcmlwdCBpZC4NCgkqLw0KCXB1YmxpYyBmdW5jdGlvbiBTVEFSVHVubG9ja19zY3JpcHQoJFNpZCl7DQoJCQ0KCQkkbGFzdF91cGRhdGU9JHRoaXMtPkdldFByZWZlcmVuY2UoJFNpZC4nLUxvY2tlZC1FZGl0ZWRUaW1lLVNEJyk7DQoJCSRsYXN0X3VwZGF0ZT1zdHJ0b3RpbWUoJGxhc3RfdXBkYXRlKTsgDQoNCgkJJGhvd19sb25nX2FnbyA9IHRpbWUoKSAtICRsYXN0X3VwZGF0ZTsgDQoJCS8vJHRoaXMtPlNldFByZWZlcmVuY2UoJFNpZC4nLUxhc3RFZGl0LVNEJywkaG93X2xvbmdfYWdvKTsgLy90aGlzIHdhcyB0byBjaGVjayB0aGUgb3V0cHV0DQoJCS8vc2xlZXAoMzApOy8vdGhpcyBzZWVtcyB0byBiZSBsb2NraW5nIGl0IHVwPz8/DQoJCWlmKCRob3dfbG9uZ19hZ28+MjEpewkNCgkJCSR0aGlzLT51bmxvY2tfc2NyaXB0KCRTaWQpOw0KCQkJcmV0dXJuIHRydWU7DQoJCX1lbHNlew0KCQkJcmV0dXJuIGZhbHNlOw0KCQl9DQoJfQkNCg0KCS8qKg0KCSogR2V0IHRoZSBtb2R1bGUgbG9ncy4NCgkqDQoJKiBAc2VlIFNjcmlwdERlcGxveTo6Y2hlY2tfdXNlcl9lZGl0aW5nKCkNCgkqDQoJKiBAcGFyYW0gYm9vbGVhbiAkZXhpdCB3aGVyZSBvciBub3QgdG8gc3RhcnQgdG8gZXhpdC4NCgkqIEBwYXJhbSBib29sZWFuICRhbGl2ZSBpcyB0aGUgc2NyaXB0IHN0aWxsIGJlaW5nIGFjY2Vzc2VkLg0KCSogQHBhcmFtIGludGVnZXIgJFNpZCB0aGUgc2NyaXB0IGlkLg0KCSogQHBhcmFtIGludGVnZXIgJHVpZCB0aGUgdXNlciBpZC4NCgkqIEByZXR1cm4gc3RyaW5nIGNvbnRhaW5pbmcgdGhlIG5vdGVzIGZvciB0aGUgc2NyaXB0DQoJKi8NCglwdWJsaWMgZnVuY3Rpb24gY2hlY2tfdXNlcl9lZGl0aW5nKCRleGl0PXRydWUsJGFsaXZlPWZhbHNlLCRTaWQsJHVpZD0nJyl7DQoJCXNsZWVwKDEpOy8vc2xlZXAgdG8gZ2l2ZSB0aW1lIGZvciB0aGluZ3MgdG8gZXZlbiBvdXQNCgkJaWYoJGFsaXZlPT10cnVlKXsNCgkJCQkkdGhpcy0+bG9ja19zY3JpcHQoJFNpZCwkdWlkKTsNCgkJCQlwcmludCgndHJ1ZScpOw0KCQl9DQoJfQ0KCQ0KCQ0KIHB1YmxpYyBmdW5jdGlvbiBfSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCAkcGVybSA9ICcnICl7DQoNCiAgICRwMSA9ICR0aGlzLT5DaGVja1Blcm1pc3Npb24oICdNb2RpZnkgU2NyaXB0RGVwbG95IE9wdGlvbnMnICk7DQogICAkcDIgPSAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCAnUmVtb3ZlIFNjcmlwdERlcGxveSBTY3JpcHQnICk7DQogICAkcDMgPSAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCAnUmVtb3ZlIFNjcmlwdERlcGxveSBHcm91cCcgKTsNCiAgICRwNCA9ICR0aGlzLT5DaGVja1Blcm1pc3Npb24oICdFZGl0IFNjcmlwdERlcGxveSBTY3JpcHQnICk7DQogICAkcDUgPSAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCAnRWRpdCBTY3JpcHREZXBsb3kgR3JvdXAnICk7DQogICAkcDYgPSAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCAnU3RlYWwgU2NyaXB0RGVwbG95IFNjcmlwdCcgKTsNCg0KDQogICAkcmV0ID0gMDsNCiAgIHN3aXRjaCggJHBlcm0gKQ0KICAgICB7DQogICAgIGNhc2UgJyc6ICAvLyBhbnkgcGVybWlzc2lvbg0KICAgICAgICRyZXQgPSAoJHAxIHx8ICRwMiB8fCAkcDMgfHwgJHA0IHx8ICRwNSB8fCAkcDYgKTsNCiAgICAgICBicmVhazsNCiAgICAgICANCiAgICAgY2FzZSAnYWRkZ3JvdXAnOg0KICAgICAgICRyZXQgPSAoJHA0KTsNCiAgICAgICBicmVhazsNCiAgICAgICANCiAgICAgY2FzZSAnYWRkdXNlcic6DQogICAgICAgJHJldCA9ICgkcDEpOw0KICAgICAgIGJyZWFrOw0KICAgICAgIA0KICAgICBjYXNlICdhZGRwcm9wJzoNCiAgICAgY2FzZSAnYWRkcHJvcDInOg0KICAgICBjYXNlICdlZGl0cHJvcCc6DQogICAgIGNhc2UgJ2RlbGV0ZXByb3AnOg0KICAgICBjYXNlICdwcm9wZXJ0aWVzJzoNCiAgICAgICAkcmV0ID0gKCRwOSk7DQogICAgICAgYnJlYWs7DQogICAgIA0KICAgICBjYXNlICdsaXN0dXNlcnMnOg0KICAgICAgICRyZXQgPSAoJHAyIHx8ICRwMyk7DQogICAgICAgYnJlYWs7DQogICAgICAgDQogICAgIGNhc2UgJ2xpc3Rncm91cHMnOg0KICAgICAgICRyZXQgPSAoJHA1IHx8ICRwNik7DQogICAgICAgYnJlYWs7DQogICAgICAgDQogICAgIGNhc2UgJ2VkaXRncm91cHMnOg0KICAgICAgICRyZXQgPSAoJHA1IHx8ICRwNik7DQogICAgICAgYnJlYWs7DQogICAgICAgDQogICAgIGNhc2UgJ2VkaXR1c2Vycyc6DQogICAgICAgJHJldCA9ICgkcDIpOw0KICAgICAgIGJyZWFrOw0KICAgICAgIA0KICAgICBjYXNlICdyZW1vdmVncm91cHMnOg0KICAgICAgICRyZXQgPSAoJHA3KTsNCiAgICAgICBicmVhazsNCiAgICAgICANCiAgICAgY2FzZSAncmVtb3ZldXNlcnMnOg0KICAgICAgICRyZXQgPSAoJHAzKTsNCiAgICAgICBicmVhazsNCg0KICAgICBjYXNlICdlZGl0cHJlZnMnOg0KICAgICBjYXNlICdzaXRlcHJlZnMnOg0KICAgICAgICRyZXQgPSAoJHA4KTsNCiAgICAgICBicmVhazsNCiAgICAgICANCiAgICAgY2FzZSAndXNlcnNuZ3JvdXBzJzoNCiAgICAgICAkcmV0ID0gKCRwMSB8fCAkcDIgfHwgJHAzIHx8ICRwNCB8fCAkcDUgfHwgJHA2IHx8ICRwNyk7DQogICAgICAgYnJlYWs7DQogICAgICAgDQogICAgIGNhc2UgJ3RlbXBsYXRlcyc6DQogICAgICAgJHJldCA9ICgkcDEwKTsNCiAgICAgICBicmVhazsNCiAgICAgICANCiAgICAgZGVmYXVsdDoNCiAgICAgICAkcmV0ID0gMDsNCiAgICAgICBicmVhazsNCiAgICAgfQ0KDQogICByZXR1cm4gJHJldDsNCiB9DQoNCg0KDQoNCg0KDQoNCg0KDQoNCg0KDQoNCg0KDQoJDQoJDQoJLyotLS0tTWFrZWluZy1hbGwtdGhlLVNlbGVjdGlvbnMtLURCLWNhbGxzLS0tLS0tLS0tLS0tKi8NCglwdWJsaWMgZnVuY3Rpb24gZ2V0U2NyaXB0RnVsbCgkc2NyaXB0SUQpew0KCQkNCgkJJGRiID0gJHRoaXMtPkdldERiKCk7DQoNCgkJCSRyZXRyZXN1bHQgPSBhcnJheSgpOw0KCQkJJHJlc3VsdHMgPSBhcnJheSgpOwkNCgkJCQ0KCQkJJHF1ZXJ5ID0gJ1NFTEVDVCAqIEZST00gJy5TRF9TQ1JJUFROQU1FUy4nIEFTIHNuICcNCgkJCQkuJ0xFRlQgSk9JTiAnLlNEX1NDUklQVE9QVElPTlMuJyBBUyBzbyBPTiBzbi5JRCA9IHNvLklEICcNCgkJCQkuJ0xFRlQgSk9JTiAnLlNEX1NDUklQVFBBUlRTLicgQVMgc3AgT04gc24uSUQgPSBzcC5JRCAnDQoJCQkJLidXSEVSRSBzbi5JRCA9Pyc7DQoJCQkJDQoJCQkkcmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkc2NyaXB0SUQpKTsNCgkJDQoJCQl3aGlsZSAoJHJlc3VsdCAmJiAhJHJlc3VsdC0+RU9GKXsNCgkJCQkkZGFLZXk9JHJlc3VsdC0+ZmllbGRzWydJRCddOw0KCQkJCSRyZXN1bHRzWydTY3JpcHRJRCddPSAkcmVzdWx0LT5maWVsZHNbJ0lEJ107DQoJCQkJJHJlc3VsdHNbJ1NjcmlwdFNldCddPSAkcmVzdWx0LT5maWVsZHNbJ1NjcmlwdFNldCddOw0KCQkJCSRyZXN1bHRzWydwYXRoT3B0aW9uJ109ICRyZXN1bHQtPmZpZWxkc1sncGF0aE9wdGlvbiddOw0KCQkJCSRyZXN1bHRzWydTY3JpcHRJcyddPSAkcmVzdWx0LT5maWVsZHNbJ1NjcmlwdElzJ107DQoJCQkJJHJlc3VsdHNbJ3NjcmlwdFR5cGUnXT0gJHJlc3VsdC0+ZmllbGRzWydzY3JpcHRUeXBlJ107DQoJCQkJJHJlc3VsdHNbJ3NjcmlwdFNpemUnXT0gJHJlc3VsdC0+ZmllbGRzWydzY3JpcHRTaXplJ107DQoJCQkJJHJlc3VsdHNbJ25vdGVzJ109ICRyZXN1bHQtPmZpZWxkc1snbm90ZXMnXTsNCgkJCQkkcmV0cmVzdWx0WyRkYUtleV0gPSAkcmVzdWx0czsNCgkJCQkkcmVzdWx0LT5Nb3ZlTmV4dCgpOw0KCQkJfQ0KCQkJDQoJCQlyZXR1cm4gJHJldHJlc3VsdFskc2NyaXB0SURdOwkJDQoJfQ0KDQoJcHVibGljIGZ1bmN0aW9uIEdldFNjcmlwdE5hbWUoJFNjcmlwdElEKXsNCgkJCSRkYiA9ICR0aGlzLT5HZXREYigpOw0KCQkJJHF1ZXJ5ID0gIlNFTEVDVCBTY3JpcHRTZXQgRlJPTSAiLlNEX1NDUklQVE5BTUVTLiIgV0hFUkUgSUQgPT8iOw0KCQkJJFNjcmlwdFNldCA9ICRkYi0+R2V0T25lKCRxdWVyeSxhcnJheSgkU2NyaXB0SUQpKTsJDQoJCQlyZXR1cm4gJFNjcmlwdFNldDsNCgl9CQ0KDQoNCglwdWJsaWMgZnVuY3Rpb24gZ2V0VXNlckluZm8oJFVpZD0nJyl7DQoJCQ0KCQkkVXNlcmlkID0gMDsNCgkJaWYoIGdldF91c2VyaWQoKSAhPSBmYWxzZSApew0KCQkgICRVc2VyaWQgPSBnZXRfdXNlcmlkKCk7DQoJCX0NCgkJaWYoJFVpZCE9JycpeyRVc2VyaWQ9JFVpZDt9DQoJCSRVc2VySW5mb1snVXNlcmlkJ109JFVzZXJpZDsNCgkJaWYoICRVc2VyaWQgPiAwICl7DQoJCQkkdXNlcm9wcyA9IGNtc21zKCktPkdldFVzZXJPcGVyYXRpb25zKCk7DQoJCQkkdGhldXNlciA9ICR1c2Vyb3BzLT5Mb2FkVXNlckJ5SWQoICRVc2VyaWQgKTsNCgkJCSRVc2VySW5mb1sndXNlcm5hbWUnXSA9ICR0aGV1c2VyLT51c2VybmFtZTsNCgkJCSRVc2VySW5mb1snZnVsbHVzZXJuYW1lJ10gPSAkdGhldXNlci0+Zmlyc3RuYW1lLicgJy4kdGhldXNlci0+bGFzdG5hbWU7DQoJCSAgfQ0KCQkgIHJldHVybiAkVXNlckluZm87DQoJfQ0KDQoJDQoJcHVibGljIGZ1bmN0aW9uIGdldFNjcmlwdHNMaXN0KCl7CQ0KCQkJDQoJCQkkZGIgPSAkdGhpcy0+R2V0RGIoKTsNCgkJDQoJCQkkcmV0cmVzdWx0ID0gYXJyYXkoKTsNCgkJCSRyZXN1bHRzID0gYXJyYXkoKTsJDQoJCQ0KCQkJJHF1ZXJ5ID0gJ1NFTEVDVCBzby5JRCxzbi5TY3JpcHRTZXQsc28ucGF0aE9wdGlvbixzby5zY3JpcHRUeXBlLHNvLnNjcmlwdFNpemUsc28ubm90ZXMgRlJPTSAnLlNEX1NDUklQVE5BTUVTLicgQVMgc24gJw0KCQkJLidMRUZUIEpPSU4gJy5TRF9TQ1JJUFRPUFRJT05TLicgQVMgc28gT04gc24uSUQgPSBzby5JRCc7DQoJCQkkcmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSk7DQoJCQ0KCQkJd2hpbGUgKCRyZXN1bHQgJiYgISRyZXN1bHQtPkVPRil7DQoJCQkJJGRhS2V5PSRyZXN1bHQtPmZpZWxkc1snSUQnXTsNCgkJCQkkcmVzdWx0c1snU2NyaXB0U2V0J109ICRyZXN1bHQtPmZpZWxkc1snU2NyaXB0U2V0J107DQoJCQkJJHJlc3VsdHNbJ3BhdGhPcHRpb24nXT0gJHJlc3VsdC0+ZmllbGRzWydwYXRoT3B0aW9uJ107DQoJCQkJJHJlc3VsdHNbJ3NjcmlwdFR5cGUnXT0gJHJlc3VsdC0+ZmllbGRzWydzY3JpcHRUeXBlJ107DQoJCQkJJHJlc3VsdHNbJ3NjcmlwdFNpemUnXT0gJHJlc3VsdC0+ZmllbGRzWydzY3JpcHRTaXplJ107DQoJCQkJJHJlc3VsdHNbJ25vdGVzJ109ICRyZXN1bHQtPmZpZWxkc1snbm90ZXMnXTsNCgkJCQkkcmV0cmVzdWx0WyRkYUtleV0gPSAkcmVzdWx0czsNCgkJCQkkcmVzdWx0LT5Nb3ZlTmV4dCgpOw0KCQkJfQ0KCQkJcmV0dXJuICRyZXRyZXN1bHQ7DQoJfQ0KCXB1YmxpYyBmdW5jdGlvbiBnZXRHcm91cHNMaXN0KCl7CQkJDQoJCQkvLw0KCQkJJGRiID0gJHRoaXMtPkdldERiKCk7DQoJCQ0KCQkJJHJldHJlc3VsdCA9IGFycmF5KCk7DQoJCQkkcmVzdWx0cyA9IGFycmF5KCk7CQ0KDQoJCQkkcXVlcnkgPSAnU0VMRUNUICogRlJPTSAnLlNEX0dST1VQLicgQVMgc2RHICcNCgkJCQkuJ0xFRlQgSk9JTiAnLlNEX0dST1VQQVNTSUdOTUVOVC4nIEFTIHNkR20gT04gc2RHLklEID0gc2RHbS5Hcm91cHRTZXRJRCc7DQoJCQkkcmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSk7DQoNCgkJCXdoaWxlICgkcmVzdWx0ICYmICEkcmVzdWx0LT5FT0Ypew0KCQkJCSRkYUtleT0kcmVzdWx0LT5maWVsZHNbJ0lEJ107DQoJCQkJJHJlc3VsdHNbJ0dyb3VwdFNldCddPSAkcmVzdWx0LT5maWVsZHNbJ0dyb3VwdFNldCddOw0KCQkJCSRyZXN1bHRzWydHcm91cHRUeXBlJ109ICRyZXN1bHQtPmZpZWxkc1snR3JvdXB0VHlwZSddOw0KCQkJCQ0KCQkJCWlmKGlzc2V0KCRyZXN1bHQtPmZpZWxkc1snU2NyaXB0SUQnXSkpew0KCQkJCQkkcmVzdWx0c1snU2NyaXB0SUQnXT0gJyc7DQoJCQkJfWVsc2V7DQoJCQkJCSRyZXN1bHRzWydTY3JpcHRJRCddPSAnJzsNCgkJCQl9DQoJCQkJJHJldHJlc3VsdFskZGFLZXldID0gJHJlc3VsdHM7DQoJCQkJJHJlc3VsdC0+TW92ZU5leHQoKTsNCgkJCX0NCgkJCXJldHVybiAkcmV0cmVzdWx0Ow0KCX0NCglwdWJsaWMgZnVuY3Rpb24gR2V0R3JvdXBEYXRhKCRHcm91cHRJRCl7CQ0KCQkJDQoJCQkkZGIgPSAkdGhpcy0+R2V0RGIoKTsNCgkJDQoJCQkkcmV0cmVzdWx0ID0gYXJyYXkoKTsNCgkJCSRyZXN1bHRzID0gYXJyYXkoKTsJDQoNCgkJCSRxdWVyeSA9ICdTRUxFQ1QgKiBGUk9NICcuU0RfR1JPVVAuJyBBUyBzZEcgJw0KCQkJCS4nV0hFUkUgc2RHLklEID0/JzsNCgkJCSRyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KCRHcm91cHRJRCkpOw0KCQkNCgkJCXdoaWxlICgkcmVzdWx0ICYmICEkcmVzdWx0LT5FT0Ypew0KCQkJCSRkYUtleT0kcmVzdWx0LT5maWVsZHNbJ0lEJ107DQoJCQkJJHJlc3VsdHNbJ0dyb3VwdFNldCddPSAkcmVzdWx0LT5maWVsZHNbJ0dyb3VwdFNldCddOw0KCQkJCSRyZXN1bHRzWydHcm91cHRUeXBlJ109ICRyZXN1bHQtPmZpZWxkc1snR3JvdXB0VHlwZSddOw0KCQkJCQ0KCQkJCQ0KCQkJCSRyZXRyZXN1bHRbJGRhS2V5XSA9ICRyZXN1bHRzOw0KCQkJCSRyZXN1bHQtPk1vdmVOZXh0KCk7DQoJCQl9DQoJCQlyZXR1cm4gJHJldHJlc3VsdFskR3JvdXB0SURdOwkNCgl9DQoJcHVibGljIGZ1bmN0aW9uIEdldEdyb3Vwc1NjcmlwdE5VTSgkR3JvdXB0SUQpew0KCQkJLy8NCgkJCSRkYiA9ICR0aGlzLT5HZXREYigpOw0KCQkNCgkJCSRyZXRyZXN1bHQgPSBhcnJheSgpOw0KCQkJJHJlc3VsdHMgPSBhcnJheSgpOwkNCg0KCQkJJHF1ZXJ5ID0gJ1NFTEVDVCBTY3JpcHRJRCBGUk9NICcuU0RfR1JPVVBBU1NJR05NRU5ULicgQVMgc2RHbSAnDQoJCQkJLidXSEVSRSBzZEdtLkdyb3VwdFNldElEPT8nOw0KCQkJJHJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkoJEdyb3VwdElEKSk7DQoJCQkkc2NpcHRudW1iZXI9MDsNCgkJCXdoaWxlICgkcmVzdWx0ICYmICEkcmVzdWx0LT5FT0Ypew0KCQkJCSRzY2lwdG51bWJlcj0kc2NpcHRudW1iZXIrMTsNCgkJCQkkcmVzdWx0LT5Nb3ZlTmV4dCgpOw0KCQkJfQ0KCQkJcmV0dXJuICRzY2lwdG51bWJlcjsJDQoJfQ0KCXB1YmxpYyBmdW5jdGlvbiBzZWxlY3RHcm91cHNMaXN0aW5ncygkR3JvdXB0SUQpew0KCQkJLy8NCgkJCSRkYiA9ICR0aGlzLT5HZXREYigpOw0KDQoJCQkkcmV0cmVzdWx0ID0gYXJyYXkoKTsNCgkJCSRyZXN1bHRzID0gYXJyYXkoKTsJDQoNCgkJCSRxdWVyeSA9ICdTRUxFQ1Qgc24uU2NyaXB0U2V0LHNvLnNjcmlwdFNpemUsc2RHbS5TY3JpcHRJRCxzZEdtLlNjcmlwdE9SREVSIEZST00gJy5TRF9HUk9VUC4nIEFTIHNkRyAnDQoJCQkJLidMRUZUIEpPSU4gJy5TRF9HUk9VUEFTU0lHTk1FTlQuJyBBUyBzZEdtIE9OIHNkRy5JRCA9IHNkR20uR3JvdXB0U2V0SUQgJw0KCQkJCS4nTEVGVCBKT0lOICcuU0RfU0NSSVBUT1BUSU9OUy4nIEFTIHNvIE9OIHNvLklEID0gc2RHbS5TY3JpcHRJRCAnDQoJCQkJLidMRUZUIEpPSU4gJy5TRF9TQ1JJUFROQU1FUy4nIEFTIHNuIE9OIHNvLklEID0gc24uSUQgJw0KCQkJCS4nV0hFUkUgc2RHLklEID0gPyBPUkRFUiBCWSBzZEdtLlNjcmlwdE9SREVSIEFTQyc7DQoJCQkkcmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkR3JvdXB0SUQpKTsNCgkJCQ0KCQkJd2hpbGUgKCRyZXN1bHQgJiYgISRyZXN1bHQtPkVPRil7DQoJCQkJJGRhS2V5PSRyZXN1bHQtPmZpZWxkc1snU2NyaXB0SUQnXTsNCgkJCQkkcmVzdWx0c1snU2NyaXB0U2V0J109ICRyZXN1bHQtPmZpZWxkc1snU2NyaXB0U2V0J107DQoJCQkJJHJlc3VsdHNbJ3NjcmlwdFNpemUnXT0gJHJlc3VsdC0+ZmllbGRzWydzY3JpcHRTaXplJ107DQoJCQkJJHJlc3VsdHNbJ1NjcmlwdE9SREVSJ109ICRyZXN1bHQtPmZpZWxkc1snU2NyaXB0T1JERVInXTsNCgkJCQkkcmV0cmVzdWx0WyRkYUtleV0gPSAkcmVzdWx0czsNCgkJCQkkcmVzdWx0LT5Nb3ZlTmV4dCgpOw0KCQkJfQ0KCQkJcmV0dXJuICRyZXRyZXN1bHQ7DQoJfQ0KCXB1YmxpYyBmdW5jdGlvbiBzZWxlY3RHcm91cEl0ZW1zKCRHcm91cHRJRCl7DQoJCQkvLw0KCQkJJGRiID0gJHRoaXMtPkdldERiKCk7DQoJCQkNCgkJCSRyZXRyZXN1bHQgPSBhcnJheSgpOw0KCQkJJHJlc3VsdHMgPSBhcnJheSgpOwkNCg0KCQkJJHF1ZXJ5ID0gJ1NFTEVDVCBTY3JpcHRJRCBGUk9NICcuU0RfR1JPVVBBU1NJR05NRU5ULicgQVMgc2RHbSAnDQoJCQkJLidXSEVSRSBzZEdtLkdyb3VwdFNldElEPT8gT1JERVIgQlkgU2NyaXB0T1JERVIgQVNDJzsNCgkJCSRyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KCRHcm91cHRJRCkpOw0KCQkJd2hpbGUgKCRyZXN1bHQgJiYgISRyZXN1bHQtPkVPRil7DQoJCQkJYXJyYXlfcHVzaCgkcmVzdWx0cywgJHJlc3VsdC0+ZmllbGRzWydTY3JpcHRJRCddKTsNCgkJCQkkcmVzdWx0LT5Nb3ZlTmV4dCgpOw0KCQkJfQ0KCQkJcmV0dXJuICRyZXN1bHRzOwkJDQoJfQ0KCXB1YmxpYyBmdW5jdGlvbiBDaGVja1NjcmlwdCgkc2NyaXB0SUQsJEdyb3VwdElEKXsNCgkJCS8vDQoJCQkkZGIgPSAkdGhpcy0+R2V0RGIoKTsNCgkJCSRxdWVyeSA9ICdTRUxFQ1QgKiBGUk9NICcuU0RfR1JPVVBBU1NJR05NRU5ULicgJw0KCQkJCS4nV0hFUkUgU2NyaXB0SUQ9PyBBTkQgR3JvdXB0U2V0SUQ9Pyc7DQoJCQkkcmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkc2NyaXB0SUQsJEdyb3VwdElEKSk7DQoJCQkJaWYoJHJlc3VsdCAmJiAhJHJlc3VsdC0+RU9GKXskcj0kc2NyaXB0SUQ7fWVsc2V7JHI9Jyc7fQ0KCQkJCQ0KCQkJcmV0dXJuICRyOw0KCX0NCglwdWJsaWMgZnVuY3Rpb24gR2V0U2NyaXB0R3JvdXBJbmZvKCRzSUQpewkNCgkJJEdyb3Vwcz0kdGhpcy0+R2V0U2NyaXB0R3JvdXBzKCRzSUQpOw0KCQkkUmc9Jyc7DQoJCSRsYXN0PScnOw0KCQlmb3JlYWNoKCRHcm91cHMgYXMgJGtleT0+JEdyb3VwKXsNCgkJCWlmKCRrZXk9PTApew0KCQkJCSRSZy49JycuJHRoaXMtPkdldEdyb3VwTmFtZSgkR3JvdXApOw0KCQkJfWVsc2V7DQoJCQkJJFJnLj0nLCcuJHRoaXMtPkdldEdyb3VwTmFtZSgkR3JvdXApOw0KCQkJfQ0KCQkJJGxhc3Q9JGtleSsxOw0KCQl9DQoJCWlmKCRSZyE9JycmJiRsYXN0IT0nJyl7DQoJCQlyZXR1cm4gYXJyYXkoJGxhc3QsJFJnKTsNCgkJfWVsc2V7DQoJCQlyZXR1cm4gZmFsc2U7DQoJCX0NCgl9DQoJcHVibGljIGZ1bmN0aW9uIEdldFNjcmlwdEdyb3Vwcygkc2NyaXB0SUQpew0KCQkJLy8NCgkJCSRkYiA9ICR0aGlzLT5HZXREYigpOw0KCQkJJHJlc3VsdHMgPSBhcnJheSgpOwkNCgkJCSRxdWVyeSA9ICdTRUxFQ1QgR3JvdXB0U2V0SUQgRlJPTSAnLlNEX0dST1VQQVNTSUdOTUVOVC4nICcNCgkJCQkuJ1dIRVJFIFNjcmlwdElEPT8gJzsNCgkJCSRyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KCRzY3JpcHRJRCkpOw0KCQkJd2hpbGUgKCRyZXN1bHQgJiYgISRyZXN1bHQtPkVPRil7DQoJCQkJYXJyYXlfcHVzaCgkcmVzdWx0cywgJHJlc3VsdC0+ZmllbGRzWydHcm91cHRTZXRJRCddKTsNCgkJCQkkcmVzdWx0LT5Nb3ZlTmV4dCgpOw0KCQkJfQ0KCQkJcmV0dXJuICRyZXN1bHRzOwkNCgl9DQoJcHVibGljIGZ1bmN0aW9uIEdldEdyb3VwSUQoJGdyb3VwTmFtZSl7DQoJCQkvLw0KCQkJJGRiID0gJHRoaXMtPkdldERiKCk7DQoJCQkkcXVlcnkgPSAnU0VMRUNUIElEIEZST00gJy5TRF9HUk9VUC4nICcNCgkJCQkuJ1dIRVJFIEdyb3VwdFNldD0/JzsNCgkJCSRyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KCRncm91cE5hbWUpKTsNCgkJCXdoaWxlICgkcmVzdWx0ICYmICEkcmVzdWx0LT5FT0Ypew0KCQkJCSRyZXN1bHRzPSRyZXN1bHQtPmZpZWxkc1snSUQnXTsNCgkJCQkkcmVzdWx0LT5Nb3ZlTmV4dCgpOw0KCQkJfQ0KCQkJcmV0dXJuICRyZXN1bHRzOwkJDQoJfQ0KCXB1YmxpYyBmdW5jdGlvbiBHZXRHcm91cE5hbWUoJGdJRCl7DQoJCQkvLw0KCQkJJGRiID0gJHRoaXMtPkdldERiKCk7DQoJCQkkcXVlcnkgPSAnU0VMRUNUIEdyb3VwdFNldCBGUk9NICcuU0RfR1JPVVAuJyAnDQoJCQkJLidXSEVSRSBJRD0/JzsNCgkJCSRyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KCRnSUQpKTsNCgkJCXdoaWxlICgkcmVzdWx0ICYmICEkcmVzdWx0LT5FT0Ypew0KCQkJCSRyZXN1bHRzPSRyZXN1bHQtPmZpZWxkc1snR3JvdXB0U2V0J107DQoJCQkJJHJlc3VsdC0+TW92ZU5leHQoKTsNCgkJCX0NCgkJCXJldHVybiAkcmVzdWx0czsJCQ0KCX0NCg0KCXB1YmxpYyBmdW5jdGlvbiBHZXRTY3JpcHRCYWNrdXAoJElELCRyZXZpc2lvbil7DQoJCQkvLw0KCQkJJGRiID0gJHRoaXMtPkdldERiKCk7DQoJCQkkcmV0cmVzdWx0ID0gYXJyYXkoKTsNCgkJCSRyZXN1bHRzID0gYXJyYXkoKTsJDQoJCQkkcXVlcnkgPSAnU0VMRUNUIFNjcmlwdElzQktVUCBGUk9NICcuU0RfU0NSSVBUVU5ETy4nICcNCgkJCQkuJ1dIRVJFIElEPT8gQU5EIHJldmlzaW9uPT8nOw0KCQkJJHJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkoJElELCRyZXZpc2lvbikpOw0KCQkJd2hpbGUgKCRyZXN1bHQgJiYgISRyZXN1bHQtPkVPRil7DQoJCQkJJHJlc3VsdHM9JHJlc3VsdC0+ZmllbGRzWydTY3JpcHRJc0JLVVAnXTsNCgkJCQkkcmVzdWx0LT5Nb3ZlTmV4dCgpOw0KCQkJfQ0KCQkJcmV0dXJuICRyZXN1bHRzOwkNCgl9DQoJcHVibGljIGZ1bmN0aW9uIGdldFNjcmlwdEJLdXAoJHNjcmlwdElELCRyZXZpc2lvbil7DQoJCSRkYiA9ICR0aGlzLT5HZXREYigpOw0KCQkkcSA9ICdTRUxFQ1QgU2NyaXB0SXNCS1VQIEZST00gJy5TRF9TQ1JJUFRVTkRPLicgJw0KCQkJCQkuJ1dIRVJFIHNjcmlwdElEID0/IEFORCByZXZpc2lvbj0/JzsNCgkJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcSwgYXJyYXkoJHNjcmlwdElELCRyZXZpc2lvbikgKTsNCgkJaWYoICEkZGJyZXN1bHQgKQ0KCQkgIHsNCgkJCQkJcmV0dXJuIGFycmF5KEZBTFNFLCRkYi0+RXJyb3JNc2coKSk7DQoJCSAgfQ0KCQkkcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdygpOw0KCQkJJGRicmVzdWx0LT5DbG9zZSgpOw0KCQlyZXR1cm4gJHJvdzsNCgl9DQojY1NjcmlwdFBsYW5lDQoJcHVibGljIGZ1bmN0aW9uIEdldFJldmlzaW9ucygkU2NyaXB0SUQsJHBhZ2UgPSAxLCAkbGltaXQgPSA5OTk5OSwgJHdoZXJlQVJHID0gJycpew0KCQkvLw0KCQkkZGIgPSAkdGhpcy0+R2V0RGIoKTsNCgkJJHRycz0nJzsNCgkJJHBhZ2Vfc3RyaW5nID0gIiI7DQoJCSRmcm9tID0gKCRwYWdlICogJGxpbWl0KSAtICRsaW1pdDsNCgkJJHdoZXJlID0gJyc7DQoJCWlmICgkd2hlcmVBUkchPScnKSAkd2hlcmUgPSAnV2hlcmUgJy4kd2hlcmVBUkc7DQoJCSRyZXN1bHQgPSAkZGItPlNlbGVjdExpbWl0KCdTRUxFQ1QgKiBmcm9tICcuU0RfU0NSSVBUVU5ETy4nICcuJHdoZXJlLicgT1JERVIgQlkgcmV2aXNpb24gREVTQycsICRsaW1pdCwgJGZyb20pOw0KCQ0KCQlpZiAoJHJlc3VsdCAmJiAkcmVzdWx0LT5SZWNvcmRDb3VudCgpID4gMCl7DQoJDQoJCQkgICAvLyRjdXJyb3cgPSAicm93MSI7DQoJCQkgICAkZj10cnVlOw0KCQkJICAgd2hpbGUgKCRyb3cgPSAkcmVzdWx0LT5GZXRjaFJvdygpKSB7DQoJCQkJICAgJFVpbmZvPSR0aGlzLT5nZXRVc2VySW5mbygkcm93Wyd1c2VySUQnXSk7DQoJCQkJICAgaWYoJGY9PXRydWUpeyR0PScgY2xhc3M9ImN1cnJlbnQiJzt9DQoJCSR0cnMuPSc8dHIgaWQ9IlInLiRyb3dbJ3JldmlzaW9uJ10uJyIgJy4kdC4nPjx0ZD4nDQoJCS4kVWluZm9bJ3VzZXJuYW1lJ10uJzwvdGQ+PHRkPicNCgkJLiRyb3dbJ3JldmlzaW9uJ10uJzwvdGQ+PHRkPicNCgkJLiRyb3dbJ2NyZWF0ZWQnXS4nPC90ZD48L3RyPic7DQoJCSAkZj1mYWxzZTsNCgkJICR0PScnOw0KCQkJICAgfQ0KCQkJfWVsc2V7DQoJCQkJJHRycy49Jzx0cj48dGQ+RW1wdHk8L3RkPjx0ZD4tLTwvdGQ+PHRkPi0tPC90ZD48dGQ+LS08L3RkPjwvdHI+JzsNCgkJCX0NCgkNCgkJDQoJCXJldHVybiAkdHJzOw0KCX0NCglwdWJsaWMgZnVuY3Rpb24gR2V0VGhpc1JldmlzaW9uKCRzSUQgLCRyZXZpc2lvbil7DQoJCQkkZGIgPSAkdGhpcy0+R2V0RGIoKTsNCgkJCSRxdWVyeSA9ICdTRUxFQ1QgU2NyaXB0SXNCS1VQIGZyb20gJy5TRF9TQ1JJUFRVTkRPLiIgV0hFUkUgc2NyaXB0SUQ9PyBBTkQgcmV2aXNpb249PyI7DQoJCQkkdmVyc2lvbiA9ICRkYi0+R2V0T25lKCRxdWVyeSxhcnJheSgkc0lELCRyZXZpc2lvbikpOw0KCQkJcmV0dXJuICR2ZXJzaW9uOw0KCX0JDQoJcHVibGljIGZ1bmN0aW9uIENsZWFyVGhpc1JldmlzaW9uKCRzSUQsJExJTUlUPTEpew0KCQkJJGRiID0gJHRoaXMtPkdldERiKCk7DQoNCgkJCSRxdWVyeSA9ICdERUxFVEUgRlJPTSAnLlNEX1NDUklQVFVORE8uJyBXSEVSRSBzY3JpcHRJRD0/IEFORCByZXZpc2lvbiA8ICggU0VMRUNUIG1pbihyZXZpc2lvbikgRlJPTSAoIFNFTEVDVCByZXZpc2lvbiBGUk9NICcuU0RfU0NSSVBUVU5ETy4nIFdIRVJFIHNjcmlwdElEPT8gT1JERVIgQlkgcmV2aXNpb24gREVTQyBMSU1JVCAnLiRMSU1JVC4nICkgQVMgbXlzZWxlY3QgKSc7DQoNCgkJCSRyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KCRzSUQsJHNJRCkpOw0KCQkJJFNjcmlwdE5hbWU9JHRoaXMtPkdldFNjcmlwdE5hbWUoJHNJRCk7DQoJCQlzZF9sb2dnaW46Ol9kb0F1ZGl0KCAnZGVzdHJveScgLCAnb2snLCAkdGhpcy0+TGFuZygnY2xlYXJlZFJldmlzaW9uX2RvQXVkaXQnKS4iICRTY3JpcHROYW1lIC0gc2NyaXB0IGlkOiRzSUQiKTsNCg0KCQkJcmV0dXJuICRyZXN1bHQ7DQoJfQkNCglwdWJsaWMgZnVuY3Rpb24gR2V0TGFzdFJldmlzaW9uKCRzSUQpew0KCQkJJGRiID0gJHRoaXMtPkdldERiKCk7DQoJCQkkcXVlcnkgPSAiU0VMRUNUIHJldmlzaW9uIEZST00gIi5TRF9TQ1JJUFRVTkRPLiIgV0hFUkUgc2NyaXB0SUQ9PyBPUkRFUiBCWSByZXZpc2lvbiBERVNDIExJTUlUIDEiOw0KCQkJJFJldmlzaW9uID0gJGRiLT5HZXRPbmUoJHF1ZXJ5LGFycmF5KCRzSUQpKTsJDQoJCQlyZXR1cm4gJFJldmlzaW9uOw0KCX0JDQovLwlwcm90ZWN0ZWQgZnVuY3Rpb24gU2V0U2NyaXB0QmFja3VwKCRzSUQsJFNjcmlwdElzQktVUCwkcmV2aXNpb249MSl7DQoJcHVibGljIGZ1bmN0aW9uIFNldFNjcmlwdEJhY2t1cCgkc0lELCRTY3JpcHRJc0JLVVAsJHJldmlzaW9uPTEpew0KCQkkZGIgPSAkdGhpcy0+R2V0RGIoKTsNCgkJDQoJCSRub3cgPSB0cmltKCRkYi0+REJUaW1lU3RhbXAodGltZSgpKSwgIiciKTsJDQoJCSRxdWVyeSA9ICJJTlNFUlQgSU5UTyAiLlNEX1NDUklQVFVORE8uIiAiDQoJCQkuIih1c2VySUQsc2NyaXB0SUQscmV2aXNpb24sU2NyaXB0SXNCS1VQLGNyZWF0ZWQpICINCgkJCS4iVkFMVUVTICg/LD8sPyw/LD8pIjsNCgkJCSRVc2VyaWQ9JHRoaXMtPmdldFVzZXJJbmZvKCk7DQoJCQkkdUlEPSRVc2VyaWRbJ1VzZXJpZCddOw0KCQkJJHJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkoJHVJRCwkc0lELCRyZXZpc2lvbiwkU2NyaXB0SXNCS1VQLCRub3cpKTsNCgkJCWlmKCEkcmVzdWx0KXsNCgkJCSAgLy9lY2hvICdFcnJvcjogJy5teXNxbF9lcnJvcigpOw0KCQkJICAkcGFyYW1zWydtZXNzYWdlJ10gPSBteXNxbF9lcnJvcigpOw0KCQkJfWVsc2V7DQoJCQkgICAkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygncHJlZnN1cGRhdGVkJyk7DQoJCQl9CQ0KCX0NCi8qLS0tLUdldC10aGUtc2V0LW9mLXRoZS1maWxlLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQoJDQoJcHVibGljIGZ1bmN0aW9uIFNpemVJdFVwKCRzaXplKXsNCgkJIGlmKCRzaXplIDwgMTAyNCl7DQoJCQkgICRzaXplMj0iJHNpemUgYnl0ZXMiOw0KCQkgIH0NCgkJICBpZigkc2l6ZSA+IDEwMjQgJiYgJHNpemUgPCAxMDQ4NTc2KXsNCgkJCSAgJHNpemUxPSBudW1iZXJfZm9ybWF0KCRzaXplLzEwMjQsMik7DQoJCQkgICRzaXplMj0iJHNpemUxIEtiIjsNCgkJICB9DQoJCSAgaWYoJHNpemUgPiAxMDQ4NTc2KXsNCgkJCSAgJHNpemUxPSBudW1iZXJfZm9ybWF0KCRzaXplLzEwNDg1NzYsMik7DQoJCQkgICRzaXplMj0iJHNpemUxIE1iIjsNCgkJICB9CQ0KCQkgIHJldHVybiAkc2l6ZTI7DQoJfQ0KDQoJcHVibGljIGZ1bmN0aW9uIGdldF9oZWFkZXIoJFVybCwgJEZvcm1hdD0gMCwgJERlcHRoPSAwKSB7DQoJCWlmICgkRGVwdGggPiA1KSByZXR1cm47DQoJCSRQYXJ0cyA9IHBhcnNlX3VybCgkVXJsKTsNCgkJaWYgKCFhcnJheV9rZXlfZXhpc3RzKCdwYXRoJywgJFBhcnRzKSkgICAkUGFydHNbJ3BhdGgnXSA9ICcvJzsNCgkJaWYgKCFhcnJheV9rZXlfZXhpc3RzKCdwb3J0JywgJFBhcnRzKSkgICAkUGFydHNbJ3BvcnQnXSA9IDgwOw0KCQlpZiAoIWFycmF5X2tleV9leGlzdHMoJ3NjaGVtZScsICRQYXJ0cykpICRQYXJ0c1snc2NoZW1lJ10gPSAnaHR0cCc7DQoJDQoJCSRSZXR1cm4gPSBhcnJheSgpOw0KCQkkZnAgPSBmc29ja29wZW4oJFBhcnRzWydob3N0J10sICRQYXJ0c1sncG9ydCddLCAkZXJybm8sICRlcnJzdHIsIDMwKTsNCgkJaWYgKCRmcCkgew0KCQkJJE91dCA9ICdHRVQgJy4kUGFydHNbJ3BhdGgnXS4oaXNzZXQoJFBhcnRzWydxdWVyeSddKSA/ICc/Jy5AJFBhcnRzWydxdWVyeSddIDogJycpLiIgSFRUUC8xLjFcclxuIi4NCgkJCQkgICAnSG9zdDogJy4kUGFydHNbJ2hvc3QnXS4oJFBhcnRzWydwb3J0J10gIT0gODAgPyAnOicuJFBhcnRzWydwb3J0J10gOiAnJykuIlxyXG4iLg0KCQkJCSAgICdDb25uZWN0aW9uOiBDbG9zZScuIlxyXG4iOw0KCQkJZndyaXRlKCRmcCwgJE91dC4iXHJcbiIpOw0KCQkJJFJlZGlyZWN0ID0gZmFsc2U7ICRSZWRpcmVjdFVybCA9ICcnOw0KCQkJd2hpbGUgKCFmZW9mKCRmcCkgJiYgJEluTGluZSA9IGZnZXRzKCRmcCwgMTI4MCkpIHsNCgkJCQlpZiAoJEluTGluZSA9PSAiXHJcbiIpIGJyZWFrOw0KCQkJCSRJbkxpbmUgPSBydHJpbSgkSW5MaW5lKTsNCgkNCgkJCQlsaXN0KCRLZXksICRWYWx1ZSkgPSBleHBsb2RlKCc6ICcsICRJbkxpbmUsIDIpOw0KCQkJCWlmICgkS2V5ID09ICRJbkxpbmUpIHsNCgkJCQkJaWYgKCRGb3JtYXQgPT0gMSkNCgkJCQkJCQkkUmV0dXJuWyREZXB0aF0gPSAkSW5MaW5lOw0KCQkJCQllbHNlICAgICRSZXR1cm5bXSA9ICRJbkxpbmU7DQoJCQkJCWlmIChzdHJwb3MoJEluTGluZSwgJ01vdmVkJykgPiAwKSAkUmVkaXJlY3QgPSB0cnVlOw0KCQkJCX0gZWxzZSB7DQoJCQkJCWlmICgkS2V5ID09ICdMb2NhdGlvbicpICRSZWRpcmVjdFVybCA9ICRWYWx1ZTsNCgkJCQkJaWYgKCRGb3JtYXQgPT0gMSkNCgkJCQkJCQkkUmV0dXJuWyRLZXldID0gJFZhbHVlOw0KCQkJCQllbHNlICAgICRSZXR1cm5bXSA9ICRLZXkuJzogJy4kVmFsdWU7DQoJCQkJfQ0KCQkJfQ0KCQkJZmNsb3NlKCRmcCk7DQoJCQlpZiAoJFJlZGlyZWN0ICYmICFlbXB0eSgkUmVkaXJlY3RVcmwpKSB7DQoJCQkJJE5ld1BhcnRzID0gcGFyc2VfdXJsKCRSZWRpcmVjdFVybCk7DQoJCQkJaWYgKCFhcnJheV9rZXlfZXhpc3RzKCdob3N0JywgJE5ld1BhcnRzKSkgICAkUmVkaXJlY3RVcmwgPSAkUGFydHNbJ2hvc3QnXS4kUmVkaXJlY3RVcmw7DQoJCQkJaWYgKCFhcnJheV9rZXlfZXhpc3RzKCdzY2hlbWUnLCAkTmV3UGFydHMpKSAkUmVkaXJlY3RVcmwgPSAkUGFydHNbJ3NjaGVtZSddLic6Ly8nLiRSZWRpcmVjdFVybDsNCgkJCQkkUmVkaXJlY3RIZWFkZXJzID0gICR0aGlzLT5nZXRfaGVhZGVyKCRSZWRpcmVjdFVybCwgJEZvcm1hdCwgJERlcHRoKzEpOw0KCQkJCWlmICgkUmVkaXJlY3RIZWFkZXJzKSAkUmV0dXJuID0gYXJyYXlfbWVyZ2VfcmVjdXJzaXZlKCRSZXR1cm4sICRSZWRpcmVjdEhlYWRlcnMpOw0KCQkJfQ0KCQkJcmV0dXJuICRSZXR1cm47DQoJCX0NCgkJcmV0dXJuIGZhbHNlOw0KCX0NCg0KCXB1YmxpYyBmdW5jdGlvbiBIb3RsaW5rQ2hlY2soJGtleSwkY3NzX3VybCl7DQoNCgkJCQ0KCQkJJGNvbmZpZyA9IGNtc21zKCktPkdldENvbmZpZygpOyAJDQoJCQkkcmVwb3J0PWFycmF5KCk7DQoJCQkkdGhpcy0+YWRqS2V5PSRrZXkrMTsNCgkJCSR0aGlzLT5jc3NfdXJsX1cgPSAnJzsNCgkJCSR0aGlzLT5mU2l6ZT0nLS0nOw0KCQkJJHRoaXMtPmJhc2VVUkw9JGNzc191cmw7DQoJCQkNCgkJCWlmICgoc3Vic3RyKCRjc3NfdXJsLCAwLDUpKT09Imh0dHA6Inx8KHN1YnN0cigkY3NzX3VybCwgMCw2KSk9PSJodHRwczoiKXsNCgkJCQlpZihzdHJwb3MoJGNzc191cmwsJGNvbmZpZ1sncm9vdF91cmwnXSkgPT09IGZhbHNlKXsNCgkJCQkJJHRoaXMtPmNzc191cmxfVyAuPSAkdGhpcy0+TGFuZygnaG90bGluaycpOw0KCQkJCX0NCgkJCX1lbHNlew0KCQkJCWlmICgoc3Vic3RyKCRjc3NfdXJsLCAwLDUpKT09Imh0dHA6Iil7JEw9c3RybGVuKCRjb25maWdbJ3Jvb3RfdXJsJ10pOyRjc3NfdXJsID0gc3Vic3RyX3JlcGxhY2UoJGNzc191cmwsICcnLCAwLCAkTCk7fQ0KCQkJCWlmICgoc3Vic3RyKCRjc3NfdXJsLCAwLDEpKT09Jy8nKXskY3NzX3VybD1zdWJzdHJfcmVwbGFjZSgkY3NzX3VybCwgJycsIDAsIDEpO30NCgkJCQkkY3NzX3BhdGg9JGNvbmZpZ1sncm9vdF9wYXRoJ10uJy8nLiRjc3NfdXJsOw0KCQkJCSRjc3NfdXJsPSRjb25maWdbJ3Jvb3RfdXJsJ10uJy8nLiRjc3NfdXJsOw0KCQkJCSR0aGlzLT5jc3NfdXJsX1cgPSAnT0snOw0KCQkJfQ0KCQkJDQoJCQkNCgkJCWlmICghZnVuY3Rpb25fZXhpc3RzKCdnZXRfaGVhZGVycycpKSB7DQoJCQkJJGhlYWRlcnMgPSAkdGhpcy0+Z2V0X2hlYWRlcigkY3NzX3VybCwgMSk7IA0KCQkJfWVsc2V7DQoJCQkJJGhlYWRlcnMgPSBAZ2V0X2hlYWRlcnMoJGNzc191cmwsIDEpOyAJDQoJCQl9DQoJCQkNCgkJCQ0KCQkJDQoJCQlpZiAoJGhlYWRlcnNbMF0gPT0gJ0hUVFAvMS4xIDIwMCBPSycmJiRoZWFkZXJzWydDb250ZW50LUxlbmd0aCddIT0nJykgeyANCgkJCQkkdGhpcy0+Y3NzX3VybF9XIC49ICcnOyANCgkJCX1lbHNlew0KCQkJCWlmKCR0aGlzLT5jc3NfdXJsX1cgPT0gJ09LJyl7DQoJCQkJCSR0aGlzLT5jc3NfdXJsX1cgPSAnPHN0cm9uZz4nLiAkdGhpcy0+TGFuZygnQnJva2VubGluaycpLic6PC9zdHJvbmc+ICcuJGhlYWRlcnNbMF07IA0KCQkJCX1lbHNlew0KCQkJCQkkdGhpcy0+Y3NzX3VybF9XIC49ICc8c3Ryb25nPlZhbGlkIExpbms6PC9zdHJvbmc+ICcuJGhlYWRlcnNbMF07IA0KCQkJCX0NCgkJCX0NCgkJCWlmKGlzc2V0KCRoZWFkZXJzWydDb250ZW50LUxlbmd0aCddKSYmJGhlYWRlcnNbJ0NvbnRlbnQtTGVuZ3RoJ10hPScnKXsNCgkJCQkkdGhpcy0+ZlNpemU9JHRoaXMtPlNpemVJdFVwKCRoZWFkZXJzWydDb250ZW50LUxlbmd0aCddKTsNCgkJCX0NCgkJCQ0KCQkJJHJlcG9ydD1hcnJheSgkdGhpcy0+Y3NzX3VybF9XLCR0aGlzLT5hZGpLZXksJGNzc191cmwsJHRoaXMtPmZTaXplLCR0aGlzLT5iYXNlVVJMLCR0aGlzLT5jc3NfcGF0aCwkdGhpcy0+ZXJyb3IpOw0KCQkJcmV0dXJuICRyZXBvcnQ7DQoJfQ0KDQoJcHVibGljIGZ1bmN0aW9uIGZpbGVUaW1lX2Nzc191cmxzKCR0ZXh0KXsNCgkJDQoJCSRjb25maWcgPSBjbXNtcygpLT5HZXRDb25maWcoKTsgCQ0KCQkkaG90TGlua0NoZWNrID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ2hvdExpbmtDaGVjaycsMSk7DQoJCSRjc3NfdXJscyA9ICR0aGlzLT5leHRyYWN0X2Nzc191cmxzKCAkdGV4dCApOw0KCQkNCgkJaWYoIWVtcHR5KCRjc3NfdXJscykpew0KCQkJJGNzc191cmxzPSRjc3NfdXJsc1sncHJvcGVydHknXTsNCgkJCWlmKGlzX2FycmF5KCRjc3NfdXJscykpew0KCQkJCSRjc3NfdXJscyA9IGFycmF5X3VuaXF1ZSgkY3NzX3VybHMpOw0KCQkJCWZvcmVhY2goJGNzc191cmxzIGFzICRrZXk9PiRjc3NfdXJsKXsNCgkJCQkJDQoJCQkJCWlmKCAkaG90TGlua0NoZWNrKXsNCgkJCQkJCSRyZXN1bHQgPSAkdGhpcy0+SG90bGlua0NoZWNrKCRrZXksJGNzc191cmwpOw0KCQkJCQkJaWYoJHJlc3VsdFswXT09J09LJyl7DQoJCQkJCQkJJGNzc19wYXRoPSRjb25maWdbJ3Jvb3RfcGF0aCddLicvJy4kcmVzdWx0WzRdOw0KCQkJCQkJCSR0ZXh0PXN0cl9yZXBsYWNlKCRyZXN1bHRbNF0sICRyZXN1bHRbNF0uIj8iLkBmaWxlbXRpbWUoJGNzc19wYXRoKSwgJHRleHQpOw0KCQkJCQkJCQ0KCQkJCQkJCQ0KCQkJCQkJCQ0KCQkJCQkJCQ0KCQkJCQkJCQ0KCQkJCQkJCS8vJHRleHQ9cHJlZ19yZXBsYWNlKCRyZXN1bHRbNF0sICckezF9PycuZmlsZW10aW1lKCRyZXN1bHRbNV0pLCApOw0KCQkJCQkJfQ0KCQkJCQl9ZWxzZXsNCgkJCQkJCSRiYXNlVVJMPSRjc3NfdXJsOw0KCQkJCQkJaWYgKChzdWJzdHIoJGNzc191cmwsIDAsNSkpPT0iaHR0cDoiKXskTD1zdHJsZW4oJGNvbmZpZ1sncm9vdF91cmwnXSk7JGNzc191cmwgPSBzdWJzdHJfcmVwbGFjZSgkY3NzX3VybCwgJycsIDAsICRMKTt9DQoJCQkJCQlpZiAoKHN1YnN0cigkY3NzX3VybCwgMCwxKSk9PScvJyl7JGNzc191cmw9c3Vic3RyX3JlcGxhY2UoJGNzc191cmwsICcnLCAwLCAxKTt9DQoJCQkJCQkkY3NzX3BhdGg9JGNvbmZpZ1sncm9vdF9wYXRoJ10uJy8nLiRjc3NfdXJsOw0KCQkJCQkJJGNzc191cmw9JGNvbmZpZ1sncm9vdF91cmwnXS4nLycuJGNzc191cmw7DQoJCQkJCQkvLyRGVD1AZmlsZW10aW1lKCRjc3NfcGF0aCk7DQoJCQkJCQkkRlQgPSBAZmlsZW10aW1lKCRjc3NfcGF0aCkgPyAiPyIuZmlsZW10aW1lKCRjc3NfcGF0aCk6Jyc7DQoJCQkJCQkkdGV4dD1zdHJfcmVwbGFjZSgkYmFzZVVSTCwgJGJhc2VVUkwuJEZULCAkdGV4dCk7DQoJCQkJCX0NCgkJCQl9DQoJCQl9DQoJCX0NCgkJcmV0dXJuICR0ZXh0Ow0KCX0NCgkNCglwdWJsaWMgZnVuY3Rpb24gYnVpbGRfcHJlbG9hZCgkdGV4dCwkSUQsJGZpbGVBcnJheT1mYWxzZSl7DQoJCSRjb25maWcgPSBjbXNtcygpLT5HZXRDb25maWcoKTsgCQ0KCQkkY3NzX3VybHMgPSAkdGhpcy0+ZXh0cmFjdF9jc3NfdXJscyggJHRleHQgKTsNCgkJJHVybFBhY2thZ2U9Jyc7DQoJCWlmKCFlbXB0eSgkY3NzX3VybHMpKXsNCgkJCSRjc3NfdXJscz0kY3NzX3VybHNbJ3Byb3BlcnR5J107DQoJCQlpZihpc19hcnJheSgkY3NzX3VybHMpKXsNCgkJCQkkY3NzX3VybHMgPSBhcnJheV91bmlxdWUoJGNzc191cmxzKTsNCgkJCQlmb3JlYWNoKCRjc3NfdXJscyBhcyAka2V5PT4kY3NzX3VybCl7DQoJCQkJCQ0KCQkJCQkkYmFzZVVSTD0kY3NzX3VybDsNCgkJCQkJaWYoc3RycG9zKCRiYXNlVVJMLCcuanBnJyl8fHN0cnBvcygkYmFzZVVSTCwnLmdpZicpfHxzdHJwb3MoJGJhc2VVUkwsJy5wbmcnKSkgew0KCQkJCQkJaWYgKChzdWJzdHIoJGNzc191cmwsIDAsNSkpPT0iaHR0cDoiKXskTD1zdHJsZW4oJGNvbmZpZ1sncm9vdF91cmwnXSk7JGNzc191cmwgPSBzdWJzdHJfcmVwbGFjZSgkY3NzX3VybCwgJycsIDAsICRMKTt9DQoJCQkJCQlpZiAoKHN1YnN0cigkY3NzX3VybCwgMCwxKSk9PScvJyl7JGNzc191cmw9c3Vic3RyX3JlcGxhY2UoJGNzc191cmwsICcnLCAwLCAxKTt9DQoJCQkJCQkkY3NzX3BhdGg9JGNvbmZpZ1sncm9vdF9wYXRoJ10uJy8nLiRjc3NfdXJsOw0KCQkJCQkJDQoJCQkJCQkvLyRGVD1AZmlsZW10aW1lKCRjc3NfcGF0aCk7DQoJCQkJCQkkRlQgPSBAZmlsZW10aW1lKCRjc3NfcGF0aCkgPyAiPyIuZmlsZW10aW1lKCRjc3NfcGF0aCk6Jyc7DQoJCQkJCQkkR3Jvb3RVUkw9JHRoaXMtPkdldFByZWZlcmVuY2UoJ3Jvb3RVUkwnLCRjb25maWdbJ3Jvb3RfdXJsJ10pOw0KCQkJCQkJJHJvb3RVcmw9JHRoaXMtPkdldFByZWZlcmVuY2UoJElELictcm9vdFVSTC1TRCcsJycpOw0KCQkJCQkJaWYoJHJvb3RVcmwhPScnKXsNCgkJCQkJCQlpZiAoc3Vic3RyKCRyb290VXJsLCAtMSk9PSIvIil7JHJvb3RVcmw9cnRyaW0oJHJvb3RVcmwsICcvJyk7fQ0KCQkJCQkJCSRyb290VXJsPSRyb290VXJsOw0KCQkJCQkJfWVsc2VpZigkR3Jvb3RVUkwhPScnKXsNCgkJCQkJCQlpZiAoc3Vic3RyKCRHcm9vdFVSTCwgLTEpPT0iLyIpeyRHcm9vdFVSTD1ydHJpbSgkR3Jvb3RVUkwsICcvJyk7fQ0KCQkJCQkJCSRyb290VXJsPSRHcm9vdFVSTDsNCgkJCQkJCX1lbHNlew0KCQkJCQkJCSRyb290VXJsPSRjb25maWdbJ3Jvb3RfdXJsJ107DQoJCQkJCQl9DQoJCQkJCQkkYmFzZVVSTD0kcm9vdFVybC4nLycuJGNzc191cmw7DQoJCQkJCQlpZigkZmlsZUFycmF5KXsNCgkJCQkJCQlpZighaXNfYXJyYXkoJHVybFBhY2thZ2UpKXsNCgkJCQkJCQkJJHVybFBhY2thZ2U9YXJyYXkoKTsNCgkJCQkJCQl9DQoJCQkJCQkJJHVybFBhY2thZ2VbXT0kYmFzZVVSTDsNCgkJCQkJCX1lbHNlew0KCQkJCQkJCSR1cmxQYWNrYWdlLj0nPGltZyBzcmM9IicuJGJhc2VVUkwuJEZULiciIGFsdD0iIiAvPic7DQoJCQkJCQl9DQoJCQkJCX0NCgkJCQl9DQoJCQl9DQoJCX0NCgkJcmV0dXJuICR1cmxQYWNrYWdlOw0KCX0NCg0KCXB1YmxpYyBmdW5jdGlvbiBleHRyYWN0X2Nzc191cmxzKCAkdGV4dCApew0KCQkkdXJscyA9IGFycmF5KCApOw0KDQoJCSR1cmxfcGF0dGVybiAgICAgPSAnKChbXlxcXFxcJyIsIFwoXCldKihcXFxcLik/KSspJzsNCgkJJHVybGZ1bmNfcGF0dGVybiA9ICd1cmxcKFxzKltcJyJdPycgLiAkdXJsX3BhdHRlcm4gLiAnW1wnIl0/XHMqXCknOw0KCQkkcGF0dGVybiAgICAgICAgID0gJy8oJyAuDQoJCQkgJyhAaW1wb3J0XHMqW1wnIl0nIC4gJHVybF9wYXR0ZXJuICAgICAuICdbXCciXSknIC4NCgkJCSd8KEBpbXBvcnRccyonICAgICAgLiAkdXJsZnVuY19wYXR0ZXJuIC4gJyknICAgICAgLg0KCQkJJ3woJyAgICAgICAgICAgICAgICAuICR1cmxmdW5jX3BhdHRlcm4gLiAnKScgICAgICAuICAnKS9pdSc7DQoJCWlmICggIXByZWdfbWF0Y2hfYWxsKCAkcGF0dGVybiwgJHRleHQsICRtYXRjaGVzICkgKXsNCgkJCXJldHVybiAkdXJsczsNCgkJfQ0KCQ0KCQkvLyBAaW1wb3J0ICcuLi4nDQoJCS8vIEBpbXBvcnQgIi4uLiINCgkJZm9yZWFjaCAoICRtYXRjaGVzWzNdIGFzICRtYXRjaCApIHsNCgkJCWlmICggIWVtcHR5KCRtYXRjaCkgKSB7DQoJCQkJJHVybHNbJ2ltcG9ydCddW10gPSBwcmVnX3JlcGxhY2UoICcvXFxcXCguKS91JywgJ1xcMScsICRtYXRjaCApOw0KCQkJfQ0KCQl9DQoJDQoJCS8vIEBpbXBvcnQgdXJsKC4uLikNCgkJLy8gQGltcG9ydCB1cmwoJy4uLicpDQoJCS8vIEBpbXBvcnQgdXJsKCIuLi4iKQ0KCQlmb3JlYWNoICggJG1hdGNoZXNbN10gYXMgJG1hdGNoICl7DQoJCQlpZiAoICFlbXB0eSgkbWF0Y2gpICl7DQoJCQkJJHVybHNbJ2ltcG9ydCddW10gPSBwcmVnX3JlcGxhY2UoICcvXFxcXCguKS91JywgJ1xcMScsICRtYXRjaCApOw0KCQkJfQ0KCQl9DQoJCS8vIHVybCguLi4pDQoJCS8vIHVybCgnLi4uJykNCgkJLy8gdXJsKCIuLi4iKQ0KCQlmb3JlYWNoICggJG1hdGNoZXNbMTFdIGFzICRtYXRjaCApew0KCQkJaWYgKCAhZW1wdHkoJG1hdGNoKSApew0KCQkJCSR1cmxzWydwcm9wZXJ0eSddW10gPSBwcmVnX3JlcGxhY2UoICcvXFxcXCguKS91JywgJ1xcMScsICRtYXRjaCApOw0KCQkJfQ0KCQl9DQoJCXJldHVybiAkdXJsczsNCgl9DQoNCgkvKi0tLS1TY3JpcHQtTGlzdC1TZXQtdXAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLw0KCXB1YmxpYyBmdW5jdGlvbiBfQWRtaW5DcmVhdGVTY3JpcHRMaXN0KCAkaWQsICRyZXR1cm5pZCwgJHByZWZpeCwgJGRlZmF1bHR0ZW1wbGF0ZXByZWYsJGFjdGl2ZV90YWIsICRkZWZhdWx0cHJlZm5hbWUsJHRpdGxlLCR0eXBlSVMpew0KCQlpbmNsdWRlKGRpcm5hbWUoX19GSUxFX18pLicvZnVuY3Rpb24uYWRtaW5fc2NyaXB0bGlzdF90YWIucGhwJyk7DQoJfQ0KDQoJcHVibGljIGZ1bmN0aW9uIGdldFRlbXBsYXRlSWQoKXsNCgkJJGRiID0gJHRoaXMtPkdldERiKCk7DQoJCSRyZXN1bHRzID0gYXJyYXkoKTsJDQoJCSRxdWVyeSA9ICdTRUxFQ1QgdGVtcGxhdGVfaWQgRlJPTSAnLlNEX1RFTVA7DQoJCSRyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5KTsNCgkJd2hpbGUgKCRyZXN1bHQgJiYgISRyZXN1bHQtPkVPRil7DQoJCQkkcmVzdWx0c1tdPSRyZXN1bHQtPmZpZWxkc1sndGVtcGxhdGVfaWQnXTsNCgkJCSRyZXN1bHQtPk1vdmVOZXh0KCk7DQoJCX0NCgkJcmV0dXJuICRyZXN1bHRzOw0KCX0NCg0KCXB1YmxpYyBmdW5jdGlvbiB0ZW1wbGF0ZV9wcmV2aWV3KCRwYXJhbXMpew0KCQkNCgkJLyogcHJlbG9hZCAgKi8NCgkJZ2xvYmFsICRnQ21zOw0KCQlyZXF1aXJlX29uY2UoJy9hZG1pbi9lZGl0Y29udGVudF9leHRyYS5waHAnKTsNCgkJJHVybGV4dD0nPycuQ01TX1NFQ1VSRV9QQVJBTV9OQU1FLic9Jy4kX1NFU1NJT05bQ01TX1VTRVJfS0VZXTsNCgkJJGNvbmZpZyA9IGNtc21zKCktPkdldENvbmZpZygpOw0KCQkkY29udGVudG9wcyA9IGNtc21zKCktPkdldENvbnRlbnRPcGVyYXRpb25zKCk7DQoJDQoJCS8qIGdldCB0aGUgY29udGVudCB0eXBlIG9qYmVjdCAgKi8NCgkJJGNvbnRlbnRfdHlwZSA9ICdDb250ZW50JzsNCgkJJGNvbnRlbnRvYmogPSAkY29udGVudG9wcy0+TG9hZENvbnRlbnRUeXBlKCRjb250ZW50X3R5cGUpOw0KCQkNCgkJJHRlbXBsYXRlb3BzID0gY21zbXMoKS0+R2V0VGVtcGxhdGVPcGVyYXRpb25zKCk7DQoJCSRkYXRhWyJjb250ZW50X2lkIl0gPSA5OTk5Ow0KCQkkZGF0YVsnY29udGVudF90eXBlJ10gPSAnQ29udGVudCc7DQoJCSRkYXRhWyJ0aXRsZSJdID0gJ1ByZXZpZXcnOw0KCQkkZGF0YVsibWVudXRleHQiXSA9ICdQcmV2aWV3JzsNCgkJJGRhdGFbImNvbnRlbnQiXSA9IHVuc2VyaWFsaXplKCRwYXJhbXNbInNlcmlhbGl6ZWRfY29udGVudCJdKTsNCgkJJGRhdGFbInRlbXBsYXRlX2lkIl0gPSA5OTk5Ow0KCQkkZGF0YVsiaGllcmFyY2h5Il0gPSA5OTk5Ow0KCQkNCgkJJHRlbXBsYXRlb2JqID0gJHRlbXBsYXRlb3BzLT5Mb2FkVGVtcGxhdGVCeUlkKCRwYXJhbXNbJ3RlbXBsYXRlX2lkJ10pOw0KCQkkZGF0YVsndGVtcGxhdGUnXSA9ICR0ZW1wbGF0ZW9iai0+Y29udGVudDsNCgkNCgkJJHN0eWxlc2hlZXRvYmogPSBnZXRfc3R5bGVzaGVldCgkcGFyYW1zWyd0ZW1wbGF0ZV9pZCddKTsNCgkJJGRhdGFbJ2VuY29kaW5nJ10gPSAkc3R5bGVzaGVldG9ialsnZW5jb2RpbmcnXTsNCgkJJGRhdGFbJ3NlcmlhbGl6ZWRfY29udGVudCddID0gc2VyaWFsaXplKCRwYXJhbXNbInNlcmlhbGl6ZWRfY29udGVudCJdKTsNCg0KCQkkdG1wZm5hbWUgPSAnJzsNCgkJaWYgKGlzX3dyaXRhYmxlKCRjb25maWdbInByZXZpZXdzX3BhdGgiXSkpew0KCQkJJHRtcGZuYW1lID0gdGVtcG5hbSgkY29uZmlnWyJwcmV2aWV3c19wYXRoIl0sICJjbXNwcmV2aWV3Iik7DQoJCX1lbHNlew0KCQkJJHRtcGZuYW1lID0gdGVtcG5hbShUTVBfQ0FDSEVfTE9DQVRJT04sICJjbXNwcmV2aWV3Iik7DQoJCX0NCgkJJGhhbmRsZSA9IGZvcGVuKCR0bXBmbmFtZSwgInciKTsNCgkJZndyaXRlKCRoYW5kbGUsIHNlcmlhbGl6ZSgkZGF0YSkpOw0KCQlmY2xvc2UoJGhhbmRsZSk7DQoNCgkJLy8gc3RyX3JlcGxhY2UgaXMgYmVjYXVzZSBvZiBzdHVwaWQgd2luZG93cyBtYWNoaW5lcy4uLi4gd2hlbiB3aWxsIHRoZXkgZGllLg0KCQkkX1NFU1NJT05bJ2Ntc19wcmV2aWV3J10gPSBzdHJfcmVwbGFjZSgnXFwnLCcvJywkdG1wZm5hbWUpOw0KCQkkdG1wdmFyID0gc3Vic3RyKHN0cl9zaHVmZmxlKG1kNSgkdG1wZm5hbWUpKSwtMyk7DQoJCSR1cmwgPSAkY29uZmlnWyJyb290X3VybCJdLicvaW5kZXgucGhwPycuJGNvbmZpZ1sncXVlcnlfdmFyJ10uIj1fX0NNU19QUkVWSUVXX1BBR0VfXyZyPSR0bXB2YXIiOyAvLyB0ZW1wb3JhcnkNCg0KCQlyZXR1cm4gJHVybDsNCgl9DQoNCgkvL3RlbXBsYXRlIGNhbGxzLS1zZXRzIGFuZCBnZXRzDQoJDQoJcHVibGljIGZ1bmN0aW9uIGFkZF90ZW1wbGF0ZSgkcGFyYW1zKXsNCgkJDQoJCQ0KCQkkZm4gPSBkaXJuYW1lKF9fRklMRV9fKS4nL3RlbXBsYXRlcy9vcmlnX25ld190ZW1wbGF0ZS50cGwnOw0KCQkkZGZsdF9jb250ZW50ID0gQGZpbGVfZ2V0X2NvbnRlbnRzKCRmbik7DQoJCQ0KCQkkdGVtcGxhdGUgPSAiIjsNCgkJaWYgKGlzc2V0KCRfUE9TVFsidGVtcGxhdGUiXSkpICR0ZW1wbGF0ZSA9ICRfUE9TVFsidGVtcGxhdGUiXTsNCgkJDQoJCSRjb250ZW50ID0gJGRmbHRfY29udGVudDsNCgkJaWYgKGlzc2V0KCRfUE9TVFsiY29udGVudCJdKSkgJGNvbnRlbnQgPSAkX1BPU1RbImNvbnRlbnQiXTsNCgkJDQoJCSRzdHlsZXNoZWV0ID0gIiI7DQoJCWlmIChpc3NldCgkX1BPU1RbInN0eWxlc2hlZXQiXSkpICRzdHlsZXNoZWV0ID0gJF9QT1NUWyJzdHlsZXNoZWV0Il07DQoJCQ0KCQkkYWN0aXZlID0gMTsNCgkJaWYgKCFpc3NldCgkX1BPU1RbImFjdGl2ZSJdKSAmJiBpc3NldCgkX1BPU1RbImFkZHNlY3Rpb24iXSkpICRhY3RpdmUgPSAwOw0KCQkNCgkJLy8vLy8vLy8vDQoJCS8vQWRkIGEgcmVkaXJlY3QNCgkJLy9UT0RPDQoJCS8vDQoJCS8vLy8vLy8vLy8NCgkJDQoJCQ0KCQkkZGIgPSBjbXNtcygpLT5HZXREYigpOw0KCQkkdGVtcGxhdGVvcHMgPSBjbXNtcygpLT5HZXRUZW1wbGF0ZU9wZXJhdGlvbnMoKTsNCgkJDQoJCSR1c2VyaWQgPSBnZXRfdXNlcmlkKCk7DQoJCSRhY2Nlc3MgPSBjaGVja19wZXJtaXNzaW9uKCR1c2VyaWQsICdBZGQgVGVtcGxhdGVzJyk7DQoJCQ0KCQkkdXNlX2phdmFzeW50YXggPSBmYWxzZTsNCgkJaWYgKGdldF9wcmVmZXJlbmNlKCR1c2VyaWQsICd1c2VfamF2YXN5bnRheCcpID09ICIxIikgJHVzZV9qYXZhc3ludGF4ID0gdHJ1ZTsNCgkJDQoJCWlmICgkYWNjZXNzKQ0KCQl7DQoJCQlpZiAoaXNzZXQoJF9QT1NUWyJhZGR0ZW1wbGF0ZSJdKSAmJiAhJHByZXZpZXcpDQoJCQl7DQoJCQkJJHZhbGlkaW5mbyA9IHRydWU7DQoJCQ0KCQkJCWlmICgkdGVtcGxhdGUgPT0gIiIpDQoJCQkJew0KCQkJCQkkZXJyb3IgLj0gIjxsaT4iLmxhbmcoIm5vZmllbGRnaXZlbiIsYXJyYXkobGFuZygnbmFtZScpKSkuIjwvbGk+IjsNCgkJCQkJJHZhbGlkaW5mbyA9IGZhbHNlOw0KCQkJCX0NCgkJCQllbHNlDQoJCQkJew0KCQkJCQkkcXVlcnkgPSAiU0VMRUNUIHRlbXBsYXRlX2lkIGZyb20gIi5jbXNfZGJfcHJlZml4KCkuInRlbXBsYXRlcyBXSEVSRSB0ZW1wbGF0ZV9uYW1lID0gIiAuICRkYi0+cXN0cigkdGVtcGxhdGUpOw0KCQkJCQkkcmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSk7DQoJCQ0KCQkJCQlpZiAoJHJlc3VsdCAmJiAkcmVzdWx0LT5SZWNvcmRDb3VudCgpID4gMCkNCgkJCQkJew0KCQkJCQkJJGVycm9yIC49ICI8bGk+Ii5sYW5nKCd0ZW1wbGF0ZWV4aXN0cycpLiI8L2xpPiI7DQoJCQkJCQkkdmFsaWRpbmZvID0gZmFsc2U7DQoJCQkJCX0NCgkJCQl9DQoJCQ0KCQkJCWlmICgkY29udGVudCA9PSAiIikNCgkJCQl7DQoJCQkJCSRlcnJvciAuPSAiPGxpPiIubGFuZygnbm9maWVsZGdpdmVuJywgYXJyYXkobGFuZygnY29udGVudCcpKSkuIjwvbGk+IjsNCgkJCQkJJHZhbGlkaW5mbyA9IGZhbHNlOw0KCQkJCX0NCgkJDQoJCQkJaWYgKCR2YWxpZGluZm8pDQoJCQkJew0KCQkJCQkkbmV3dGVtcGxhdGUgPSBuZXcgVGVtcGxhdGUoKTsNCgkJCQkJJG5ld3RlbXBsYXRlLT5uYW1lID0gJHRlbXBsYXRlOw0KCQkJCQkkbmV3dGVtcGxhdGUtPmNvbnRlbnQgPSAkY29udGVudDsNCgkJCQkJJG5ld3RlbXBsYXRlLT5zdHlsZXNoZWV0ID0gJHN0eWxlc2hlZXQ7DQoJCQkJCSRuZXd0ZW1wbGF0ZS0+YWN0aXZlID0gJGFjdGl2ZTsNCgkJCQkJJG5ld3RlbXBsYXRlLT5kZWZhdWx0ID0gMDsNCgkJDQoJCQkJCSNQZXJmb3JtIHRoZSBhZGR0ZW1wbGF0ZV9wcmUgY2FsbGJhY2sNCgkJCQkJZm9yZWFjaChjbXNtcygpLT5tb2R1bGVzIGFzICRrZXk9PiR2YWx1ZSkNCgkJCQkJew0KCQkJCQkJaWYgKGNtc21zKCktPm1vZHVsZXNbJGtleV1bJ2luc3RhbGxlZCddID09IHRydWUgJiYNCgkJCQkJCQljbXNtcygpLT5tb2R1bGVzWyRrZXldWydhY3RpdmUnXSA9PSB0cnVlKQ0KCQkJCQkJew0KCQkJCQkJCWNtc21zKCktPm1vZHVsZXNbJGtleV1bJ29iamVjdCddLT5BZGRUZW1wbGF0ZVByZSgkbmV3dGVtcGxhdGUpOw0KCQkJCQkJfQ0KCQkJCQl9DQoJCQkJCQ0KCQkJCQlFdmVudHM6OlNlbmRFdmVudCgnQ29yZScsICdBZGRUZW1wbGF0ZVByZScsIGFycmF5KCd0ZW1wbGF0ZScgPT4gJiRuZXd0ZW1wbGF0ZSkpOw0KCQkNCgkJCQkJJHJlc3VsdCA9ICRuZXd0ZW1wbGF0ZS0+c2F2ZSgpOw0KCQkNCgkJCQkJaWYgKCRyZXN1bHQpDQoJCQkJCXsNCgkJCQkJCSNQZXJmb3JtIHRoZSBhZGR0ZW1wbGF0ZV9wb3N0IGNhbGxiYWNrDQoJCQkJCQlmb3JlYWNoKGNtc21zKCktPm1vZHVsZXMgYXMgJGtleT0+JHZhbHVlKQ0KCQkJCQkJew0KCQkJCQkJCWlmIChjbXNtcygpLT5tb2R1bGVzWyRrZXldWydpbnN0YWxsZWQnXSA9PSB0cnVlICYmDQoJCQkJCQkJCWNtc21zKCktPm1vZHVsZXNbJGtleV1bJ2FjdGl2ZSddID09IHRydWUpDQoJCQkJCQkJew0KCQkJCQkJCQljbXNtcygpLT5tb2R1bGVzWyRrZXldWydvYmplY3QnXS0+QWRkVGVtcGxhdGVQb3N0KCRuZXd0ZW1wbGF0ZSk7DQoJCQkJCQkJfQ0KCQkJCQkJfQ0KCQkJCQkJDQoJCQkJCQlFdmVudHM6OlNlbmRFdmVudCgnQ29yZScsICdBZGRUZW1wbGF0ZVBvc3QnLCBhcnJheSgndGVtcGxhdGUnID0+ICYkbmV3dGVtcGxhdGUpKTsNCgkJDQoJCQkJCQlhdWRpdCgkbmV3dGVtcGxhdGUtPmlkLCAkdGVtcGxhdGUsICdBZGRlZCBUZW1wbGF0ZScpOw0KCQkJCQkJcmVkaXJlY3QoJGZyb20pOw0KCQkJCQkJcmV0dXJuOw0KCQkJCQl9DQoJCQkJCWVsc2UNCgkJCQkJew0KCQkJCQkJJGVycm9yIC49ICI8bGk+Ii5sYW5nKCdlcnJvcmluc2VydGluZ3RlbXBsYXRlJykuIiRxdWVyeTwvbGk+IjsNCgkJCQkJfQ0KCQkJCX0NCgkJCX0NCgkJfQ0KCX0NCg0KDQoNCg0KDQoNCg0KfQ0KPz4NCg==]]></data>
	</file>
	<file>
	  <filename>/swapstyle.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[LyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU2NyaXB0IHRvIHN3YXAgYmV0d2VlbiBzdHlsZXNoZWV0cwogIFdyaXR0ZW4gYnkgTWFyayBXaWx0b24tSm9uZXMsIDA1LzEyLzIwMDIuIHYyLjIuMSB1cGRhdGVkIDE0LzAzLzIwMDYgZm9yIGR5bmFtaWMgc3R5bGVzaGVldHMKKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCgpQbGVhc2Ugc2VlIGh0dHA6Ly93d3cuaG93dG9jcmVhdGUuY28udWsvanNsaWJzLyBmb3IgZGV0YWlscyBhbmQgYSBkZW1vIG9mIHRoaXMgc2NyaXB0ClBsZWFzZSBzZWUgaHR0cDovL3d3dy5ob3d0b2NyZWF0ZS5jby51ay9qc2xpYnMvdGVybXNPZlVzZS5odG1sIGZvciB0ZXJtcyBvZiB1c2UKClRvIHNldCB1cCB0aGUgcGFnZSBpbiB0aGUgZmlyc3QgcGxhY2U6CgoJSW5iZXR3ZWVuIHRoZSA8aGVhZD4gdGFncywgcHV0OgoKCQk8c2NyaXB0IHNyYz0iUEFUSCBUTyBTQ1JJUFQvc3dhcHN0eWxlLmpzIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIGxhbmd1YWdlPSJqYXZhc2NyaXB0MS4yIj48L3NjcmlwdD4KCglBbHNvIGJldHdlZW4gdGhlIGhlYWQgdGFncywgcHV0IHlvdXIgc3R5bGVzaGVldHMsIGJlc3QgZG9uZSBhcyBleHRlcm5hbCBsaW5rcywgYnV0IHlvdSBjYW4gdXNlCgk8c3R5bGUgLi4uPiB0YWdzIGFzIHdlbGwuCgoJCVN0eWxlc2hlZXRzIGNhbm5vdCBiZSBzd2l0Y2hlZCBpZiB0aGV5IGhhdmUgbm8gdGl0bGUgYXR0cmlidXRlIGFuZCB3aWxsIGJlIHVzZWQgYXQgYWxsIHRpbWVzOgoKCQkJPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIgaHJlZj0iYWxsLmNzcyI+CgoJCVN0eWxlc2hlZXRzIHdpbGwgYmUgb24gYnkgZGVmYXVsdCBpZiB0aGV5IGhhdmUgYSB0aXRsZSBhdHRyaWJ1dGUgYW5kIHRoZWlyIHJlbCBhdHRyaWJ1dGUgaXMgc2V0IHRvICdzdHlsZXNoZWV0Jy4KCQlNb3N0IGJyb3dzZXJzIHdpbGwgb25seSBhbGxvdyBvbmUgb2YgdGhlc2UgdG8gYmUgZGVmaW5lZCAob3Igc2V2ZXJhbCBzaGFyaW5nIHRoZSBzYW1lIHRpdGxlKToKCgkJCTxsaW5rIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiIGhyZWY9ImRlZmF1bHQuY3NzIiB0aXRsZT0iRGVmYXVsdCI+CgoJCVN0eWxlc2hlZXRzIHdpbGwgYmUgb2ZmIGJ5IGRlZmF1bHQgaWYgdGhleSBoYXZlIGEgdGl0bGUgYXR0cmlidXRlIGFuZCB0aGVpciByZWwgYXR0cmlidXRlIGlzIHNldCB0byAnYWx0ZXJuYXRlIHN0eWxlc2hlZXQnOgoKCQkJPGxpbmsgcmVsPSJhbHRlcm5hdGUgc3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiIGhyZWY9ImNvbnRyYXN0LmNzcyIgdGl0bGU9IkhpZ2ggQ29udHJhc3QiPgoJCQk8bGluayByZWw9ImFsdGVybmF0ZSBzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIgaHJlZj0iYmlnRm9udC5jc3MiIHRpdGxlPSJCaWcgRm9udCI+CgpUbyBzd2FwIGJldHdlZW4gc3R5bGVzaGVldHM6CgoJY2hhbmdlU3R5bGUoKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAvL3N3aXRjaGVzIG9mZiBhbGwgc3R5bGVzaGVldHMgdGhhdCBoYXZlIHRpdGxlIGF0dHJpYnV0ZXMKCWNoYW5nZVN0eWxlKCdEZWZhdWx0Jyk7ICAgICAgICAgICAgICAgICAgLy9zd2l0Y2hlcyBvZmYgYWxsIHN0eWxlc2hlZXRzIHRoYXQgaGF2ZSB0aXRsZSBhdHRyaWJ1dGVzIHRoYXQgZG8gbm90IG1hdGNoICdEZWZhdWx0JwoJY2hhbmdlU3R5bGUoJ0hpZ2ggQ29udHJhc3QnKTsgICAgICAgICAgICAvL3N3aXRjaGVzIG9mZiBhbGwgc3R5bGVzaGVldHMgdGhhdCBoYXZlIHRpdGxlIGF0dHJpYnV0ZXMgdGhhdCBkbyBub3QgbWF0Y2ggJ0hpZ2ggQ29udHJhc3QnCgljaGFuZ2VTdHlsZSgnQmlnIEZvbnQnKTsgICAgICAgICAgICAgICAgIC8vc3dpdGNoZXMgb2ZmIGFsbCBzdHlsZXNoZWV0cyB0aGF0IGhhdmUgdGl0bGUgYXR0cmlidXRlcyB0aGF0IGRvIG5vdCBtYXRjaCAnQmlnIEZvbnQnCgljaGFuZ2VTdHlsZSgnSGlnaCBDb250cmFzdCcsJ0JpZyBGb250Jyk7IC8vc3dpdGNoZXMgb2ZmIGFsbCBzdHlsZXNoZWV0cyB0aGF0IGhhdmUgdGl0bGUgYXR0cmlidXRlcyB0aGF0IGRvIG5vdCBtYXRjaCAnSGlnaCBDb250cmFzdCcgb3IgJ0JpZyBGb250JwoKCU9wZXJhIDcrIGFuZCBNb3ppbGxhIGFsc28gYWxsb3cgdXNlcnMgdG8gc3dpdGNoIGJldHdlZW4gc3R5bGVzaGVldHMgdXNpbmcgdGhlIHZpZXcgbWVudSAob25seSBvbmUgYXQgYSB0aW1lIHRob3VnaCAuLi4pCgpUbyBtYWtlIHRoZSBzY3JpcHQgcmVtZW1iZXIgdGhlIHVzZXIncyBjaG9pY2Ugb2Ygc3R5bGVzaGVldHMsIGZvciBleGFtcGxlIHRvIHVzZSBvbiBtb3JlIHRoYW4gb25lIHBhZ2Ugb3IgaWYgdGhleSByZWxvYWQKLSBpbmNsdWRlcyBzdHlsZXNoZWV0cyBjaG9zZW4gdXNpbmcgdGhlIHZpZXcgbWVudSBpbiBHZWNrbyAtIGl0IHdpbGwgb25seSBhdHRlbXB0IHRvIHN0b3JlIGEgY29va2llIGlmIHRoZXkgYWN0dWFsbHkKY2hhbmdlZCBzb21ldGhpbmc6CgoJSW4gdGhlc2UgZXhhbXBsZXMsIEkgY2FsbCB0aGUgY29va2llIHVzZWQgdG8gc3RvcmUgdGhlIGNob2ljZSAnc3R5bGVUZXN0U3RvcmUnLiBZb3UgY291bGQgdXNlIGFueSBuYW1lIHlvdSBsaWtlLgoKCVRvIHJlbWVtYmVyIG9ubHkgdW50aWwgdGhlIGJyb3dzZXIgd2luZG93IGlzIGNsb3NlZDoKCgkJPGJvZHkgb25sb2FkPSJ1c2VTdHlsZUFnYWluKCdzdHlsZVRlc3RTdG9yZScpOyIgb251bmxvYWQ9InJlbWVtYmVyU3R5bGUoJ3N0eWxlVGVzdFN0b3JlJyk7Ij4KCglUbyByZW1lbWJlciBmb3IgMTAgZGF5cyAoZm9yIGV4YW1wbGUpOgoKCQk8Ym9keSBvbmxvYWQ9InVzZVN0eWxlQWdhaW4oJ3N0eWxlVGVzdFN0b3JlJyk7IiBvbnVubG9hZD0icmVtZW1iZXJTdHlsZSgnc3R5bGVUZXN0U3RvcmUnLDEwKTsiPgoKTm90ZSB0aGF0IHNvbWUgYnJvd3NlcnMgKG1vc3Qgbm90YWJseSBPcGVyYSkgZG8gbm90IGZpcmUgdGhlIG9udW5sb2FkIGV2ZW50IHdoZW4gdGhlIHBhZ2UgaXMKcmVsb2FkZWQsIGFuZCB3aWxsIG9ubHkgZmlyZSBpdCB3aGVuIHRoZSB1c2VyIGNsaWNrcyBhIGxpbmsgb3Igc3VibWl0cyBhIGZvcm0uIElmIHlvdSBuZWVkIHRoZQpzdHlsZSBwcmVmZXJlbmNlIHRvIGJlIHN0b3JlZCBldmVuIHdoZW4gcmVsb2FkaW5nLCB5b3Ugc2hvdWxkIGNhbGwgcmVtZW1iZXJTdHlsZSBpbW1lZGlhdGVseQphZnRlciB5b3UgY2FsbCBjaGFuZ2VTdHlsZS4KCklmIHlvdSBhcmUgZ29pbmcgdG8gcHJvdmlkZSB1c2VycyB3aXRoIGEgbWVjaGFuaXNtIHRvIGNoYW5nZSBzdHlsZXNoZWV0cywgeW91IG1heSB3YW50IHRvIGNoZWNrCmlmIHRoZSBicm93c2VyIHdpbGwgYWxsb3cgeW91IHRvIGNoYW5nZSBzdHlsZXNoZWV0cyBmaXJzdC4gVXNlOgoKCWlmKCBkb2N1bWVudC5zdHlsZVNoZWV0cyB8fCAoIHdpbmRvdy5vcGVyYSAmJiBkb2N1bWVudC5jaGlsZE5vZGVzICkgfHwgKCB3aW5kb3cuU2NyaXB0RW5naW5lICYmIFNjcmlwdEVuZ2luZSgpLmluZGV4T2YoJ0luU2NyaXB0JykgKyAxICYmIGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQgKSApIHsKCQlkb2N1bWVudC53cml0ZSgnU29tZXRoaW5nIHRoYXQgYWxsb3dzIHRoZW0gdG8gY2hvb3NlIHN0eWxlc2hlZXRzJyk7Cgl9CgpJdCdzIG5vdCBwZXJmZWN0LCBiZWNhdXNlIGl0IHdpbGwgYWxzbyBhcHBlYXIgaW4gSUNFYnJvd3Nlciwgd2hpY2ggbWFrZXMgYSBtZXNzIHdoZW4gaXQgdHJpZXMgdG8KY2hhbmdlIHRvIGFuIGFsdGVybmF0ZSBzdHlsZXNoZWV0LiBJZiB5b3Ugd2FudCwgeW91IGNhbiB1c2UKCWlmKCAoIGRvY3VtZW50LnN0eWxlU2hlZXRzIHx8ICggd2luZG93Lm9wZXJhICYmIGRvY3VtZW50LmNoaWxkTm9kZXMgKSB8fCAoIHdpbmRvdy5TY3JpcHRFbmdpbmUgJiYgU2NyaXB0RW5naW5lKCkuaW5kZXhPZignSW5TY3JpcHQnKSArIDEgJiYgZG9jdW1lbnQuY3JlYXRlRWxlbWVudCApICkgJiYgIW5hdmlnYXRvci5fX2ljZV92ZXJzaW9uICkgewpidXQgeW91IHNob3VsZCB0aGVuIHVwZGF0ZSB0aGF0IGlmIElDRSBpcyB1cGRhdGVkIHRvIG1ha2UgaXQgd29yayBwcm9wZXJseS4KX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fKi8KCmZ1bmN0aW9uIGdldEFsbFNoZWV0cygpIHsKCWlmKCAhd2luZG93LlNjcmlwdEVuZ2luZSAmJiBuYXZpZ2F0b3IuX19pY2VfdmVyc2lvbiApIHsgcmV0dXJuIGRvY3VtZW50LnN0eWxlU2hlZXRzOyB9CglpZiggZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUgKSB7IHZhciBMdCA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCdsaW5rJyksIFN0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ3N0eWxlJyk7Cgl9IGVsc2UgaWYoIGRvY3VtZW50LnN0eWxlU2hlZXRzICYmIGRvY3VtZW50LmFsbCApIHsgdmFyIEx0ID0gZG9jdW1lbnQuYWxsLnRhZ3MoJ0xJTksnKSwgU3QgPSBkb2N1bWVudC5hbGwudGFncygnU1RZTEUnKTsKCX0gZWxzZSB7IHJldHVybiBbXTsgfSBmb3IoIHZhciB4ID0gMCwgb3MgPSBbXTsgTHRbeF07IHgrKyApIHsKCQl2YXIgcmVsID0gTHRbeF0ucmVsID8gTHRbeF0ucmVsIDogTHRbeF0uZ2V0QXR0cmlidXRlID8gTHRbeF0uZ2V0QXR0cmlidXRlKCdyZWwnKSA6ICcnOwoJCWlmKCB0eXBlb2YoIHJlbCApID09ICdzdHJpbmcnICYmIHJlbC50b0xvd2VyQ2FzZSgpLmluZGV4T2YoJ3N0eWxlJykgKyAxICkgeyBvc1tvcy5sZW5ndGhdID0gTHRbeF07IH0KCX0gZm9yKCB2YXIgeCA9IDA7IFN0W3hdOyB4KysgKSB7IG9zW29zLmxlbmd0aF0gPSBTdFt4XTsgfSByZXR1cm4gb3M7Cn0KZnVuY3Rpb24gY2hhbmdlU3R5bGUoKSB7Cgl3aW5kb3cudXNlckhhc0Nob3NlbiA9IHdpbmRvdy5NV0pzczsKCWZvciggdmFyIHggPSAwLCBzcyA9IGdldEFsbFNoZWV0cygpOyBzc1t4XTsgeCsrICkgewoJCWlmKCBzc1t4XS50aXRsZSApIHsgc3NbeF0uZGlzYWJsZWQgPSB0cnVlOyB9CgkJZm9yKCB2YXIgeSA9IDA7IHkgPCBhcmd1bWVudHMubGVuZ3RoOyB5KysgKSB7IGlmKCBzc1t4XS50aXRsZSA9PSBhcmd1bWVudHNbeV0gKSB7IHNzW3hdLmRpc2FibGVkID0gZmFsc2U7IH0gfQp9IH0KZnVuY3Rpb24gcmVtZW1iZXJTdHlsZSggY29va2llTmFtZSwgY29va2llTGlmZSApIHsKCWZvciggdmFyIHZpZXdVc2VkID0gZmFsc2UsIHNzID0gZ2V0QWxsU2hlZXRzKCksIHggPSAwOyB3aW5kb3cuTVdKc3MgJiYgTVdKc3NbeF0gJiYgc3NbeF07IHgrKyApIHsgaWYoIHNzW3hdLmRpc2FibGVkICE9IE1XSnNzW3hdICkgeyB2aWV3VXNlZCA9IHRydWU7IGJyZWFrOyB9IH0KCWlmKCAhd2luZG93LnVzZXJIYXNDaG9zZW4gJiYgIXZpZXdVc2VkICkgeyByZXR1cm47IH0KCWZvciggdmFyIHggPSAwLCBvdXRMaW5lID0gJycsIGRvbmVZZXQgPSBbXTsgc3NbeF07IHgrKyApIHsKCQlpZiggc3NbeF0udGl0bGUgJiYgc3NbeF0uZGlzYWJsZWQgPT0gZmFsc2UgJiYgIWRvbmVZZXRbc3NbeF0udGl0bGVdICkgeyBkb25lWWV0W3NzW3hdLnRpdGxlXSA9IHRydWU7IG91dExpbmUgKz0gKCBvdXRMaW5lID8gJyBNV0ogJyA6ICcnICkgKyBlc2NhcGUoIHNzW3hdLnRpdGxlICk7IH0gfQoJaWYoIHNzLmxlbmd0aCApIHsgZG9jdW1lbnQuY29va2llID0gZXNjYXBlKCBjb29raWVOYW1lICkgKyAnPScgKyBlc2NhcGUoIG91dExpbmUgKSArICggY29va2llTGlmZSA/ICc7ZXhwaXJlcz0nICsgbmV3IERhdGUoICggbmV3IERhdGUoKSApLmdldFRpbWUoKSArICggY29va2llTGlmZSAqIDg2NDAwMDAwICkgKS50b0dNVFN0cmluZygpIDogJycgKSArICc7cGF0aD0vJzsgfQp9CmZ1bmN0aW9uIHVzZVN0eWxlQWdhaW4oIGNvb2tpZU5hbWUgKSB7Cglmb3IoIHZhciB4ID0gMDsgeCA8IGRvY3VtZW50LmNvb2tpZS5zcGxpdCggIjsgIiApLmxlbmd0aDsgeCsrICkgewoJCXZhciBvbmVDb29raWUgPSBkb2N1bWVudC5jb29raWUuc3BsaXQoICI7ICIgKVt4XS5zcGxpdCggIj0iICk7CgkJaWYoIG9uZUNvb2tpZVswXSA9PSBlc2NhcGUoIGNvb2tpZU5hbWUgKSApIHsKCQkJdmFyIHN0eWxlU3RyaW5ncyA9IHVuZXNjYXBlKCBvbmVDb29raWVbMV0gKS5zcGxpdCggIiBNV0ogIiApOwoJCQlmb3IoIHZhciB5ID0gMCwgZnVuY1N0ciA9ICcnOyBzdHlsZVN0cmluZ3NbeV07IHkrKyApIHsgZnVuY1N0ciArPSAoIHkgPyAnLCcgOiAnJyApICsgJ3VuZXNjYXBlKCBzdHlsZVN0cmluZ3NbJyArIHkgKyAnXSApJzsgfQoJCQlldmFsKCAnY2hhbmdlU3R5bGUoJyArIGZ1bmNTdHIgKyAnKTsnICk7IGJyZWFrOwoJfSB9IHdpbmRvdy5NV0pzcyA9IFtdOyBmb3IoIHZhciBzcyA9IGdldEFsbFNoZWV0cygpLCB4ID0gMDsgc3NbeF07IHgrKyApIHsgTVdKc3NbeF0gPSBzc1t4XS5kaXNhYmxlZDsgfQp9]]></data>
	</file>
	<file>
	  <filename>/templates/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/templates/admin_Deploymentsettings.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[DQp7JGZvcm1zdGFydH0NCg0KDQo8ZmllbGRzZXQ+DQo8bGVnZW5kPkdlbmVyYWw8L2xlZ2VuZD4NCjxkaXYgc3R5bGU9IndpZHRoOiAzMCU7IG1pbi13aWR0aDoxMTBweDsgaGVpZ2h0OjExMHB4O3BhZGRpbmc6IDEwcHg7IGJvcmRlcjogMXB4IHNvbGlkIHJnYigxNTMsIDE1MywgMTUzKTsgZmxvYXQ6bGVmdDsiPjxoMT57JEdyb290VVJMfTwvaDE+DQogICAgICAgIDxwPnskcm9vdFVSTE9wdGlvbl9pbnB1dH17JHJvb3RVUkxPcHRpb25fbGFiZWx9OjwvcD4NCgkJPHAgaWQ9InJvb3RVUkxPcHRpb24iPnskcm9vdFVSTF9pbnB1dH08L3A+DQogICAgICAgIDxici8+PC9kaXY+DQoNCjxkaXYgc3R5bGU9IndpZHRoOiAzMCU7bWluLXdpZHRoOjExMHB4OyBoZWlnaHQ6MTEwcHg7cGFkZGluZzogMTBweDsgYm9yZGVyOiAxcHggc29saWQgcmdiKDE1MywgMTUzLCAxNTMpOyBmbG9hdDpsZWZ0OyI+PGgxPnNtYXJ0eU9uPC9oMT4NCiAgICAgICAgPHA+eyRzbWFydHlPbl9sYWJlbH06PC9wPg0KCQk8cD57JHNtYXJ0eU9uX2lucHV0fTwvcD4NCiAgICAgICAgPGJyLz48L2Rpdj4NCg0KPC9maWVsZHNldD4NCg0KDQo8ZmllbGRzZXQ+DQo8bGVnZW5kPkNTUzwvbGVnZW5kPg0KPGRpdiBzdHlsZT0id2lkdGg6IDMwJTttaW4td2lkdGg6MTEwcHg7IGhlaWdodDoxMTBweDtwYWRkaW5nOiAxMHB4OyBib3JkZXI6IDFweCBzb2xpZCByZ2IoMTUzLCAxNTMsIDE1Myk7IGZsb2F0OmxlZnQ7Ij48aDE+ZmlsZVRpbWVfY3NzX3VybHM8L2gxPg0KICAgICAgICA8cD57JGZpbGVUaW1lX2Nzc191cmxzX2xhYmVsfTo8L3A+DQoJCTxwPnskZmlsZVRpbWVfY3NzX3VybHNfaW5wdXR9PC9wPg0KICAgICAgICA8YnIvPiAgPC9kaXY+ICAgICAgDQo8ZGl2IHN0eWxlPSJ3aWR0aDogMzAlO21pbi13aWR0aDoxMTBweDsgaGVpZ2h0OjExMHB4O3BhZGRpbmc6IDEwcHg7IGJvcmRlcjogMXB4IHNvbGlkIHJnYigxNTMsIDE1MywgMTUzKTsgZmxvYXQ6bGVmdDsiPjxoMT57JHByZWxvYWRfQ1NTaW1hZ2VUaXRsZX08L2gxPg0KICAgICAgICA8cD57JHByZWxvYWRfQ1NTaW1hZ2VfbGFiZWx9OjwvcD4NCgkJPHA+eyRwcmVsb2FkX0NTU2ltYWdlX2lucHV0fTwvcD4NCiAgICAgICAgPGJyLz4gIDwvZGl2PiAgDQo8L2ZpZWxkc2V0Pg0KDQo8ZmllbGRzZXQ+DQo8bGVnZW5kPkhUTUw8L2xlZ2VuZD4NCg0KPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4NCgk8cCBjbGFzcz0icGFnZXRleHQiPnskbWFuZ2xldHlwZXRleHR9OjwvcD4NCgk8cCBjbGFzcz0icGFnZWlucHV0Ij57JG1hbmdsZXR5cGV9PC9wPg0KPC9kaXY+DQo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPg0KCTxwIGNsYXNzPSJwYWdldGV4dCI+eyRoaWRlbWVzc2FnZXN0ZXh0fTo8L3A+DQoJPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRoaWRlbWVzc2FnZXNpbnB1dH08L3A+DQo8L2Rpdj4NCjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+DQoJPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JGRlYnVndGV4dH06PC9wPg0KCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskZGVidWdpbnB1dH0geyRkZWJ1Z2xldmVsdGV4dH0geyRkZWJ1Z2xldmVsaW5wdXR9PC9wPg0KPC9kaXY+DQo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPg0KCTxwIGNsYXNzPSJwYWdldGV4dCI+eyRpbmRlbnR3aWR0aHRleHR9OjwvcD4NCgk8cCBjbGFzcz0icGFnZWlucHV0Ij57JGluZGVudHdpZHRoaW5wdXR9IHskc3BhY2VzfTwvcD4NCjwvZGl2Pg0KDQoNCg0KPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4NCgk8cCBjbGFzcz0icGFnZXRleHQiPnskZm9yY2Vsb3dlcnRhZ3N0ZXh0fTo8L3A+DQoJPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRmb3JjZWxvd2VydGFnc2lucHV0fSB7JGZvcmNlbG93ZXJ0YWdzaGVscH08L3A+DQo8L2Rpdj4NCjwvZmllbGRzZXQ+DQoNCjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+DQoJPHAgY2xhc3M9InBhZ2V0ZXh0Ij48L3A+DQoJPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRzdWJtaXR9PC9wPg0KPC9kaXY+DQp7JGZvcm1lbmR9]]></data>
	</file>
	<file>
	  <filename>/templates/admin_email.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGgzPnskbW9kX3ByZWZzX3RpdGxlfTwvaDM+DQoNCntpZiAkbWVzc2FnZSE9Jyd9PHA+eyRtZXNzYWdlfTwvcD57L2lmfQ0KeyRmb3JtX3N0YXJ0fQ0KDQoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4NCgkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JGFsbG93X2d1ZXN0X2xhYmVsfTo8L3A+DQoJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskYWxsb3dfZ3Vlc3RfaW5wdXR9PC9wPg0KCTwvZGl2Pg0KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+DQoJCTxwIGNsYXNzPSJwYWdldGV4dCI+eyRncm91cF9sYWJlbH06PC9wPg0KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JGdyb3VwX2lucHV0fTwvcD4NCgk8L2Rpdj4NCgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPg0KCQk8cCBjbGFzcz0icGFnZXRleHQiPnskd3lzaXd5Z19sYWJlbH06PC9wPg0KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JHd5c2l3eWdfaW5wdXR9PC9wPg0KCTwvZGl2Pg0KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+DQoJCTxwIGNsYXNzPSJwYWdldGV4dCI+Jm5ic3A7PC9wPg0KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JGZvcm1fc3VibWl0fTwvcD4NCgk8L2Rpdj4NCnskZm9ybV9lbmR9DQo=]]></data>
	</file>
	<file>
	  <filename>/templates/admin_importExport.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGZpZWxkc2V0IHN0eWxlPSJ3aWR0aDoyNTBweDsgZmxvYXQ6bGVmdDsiPjxsZWdlbmQ+PGZvbnQgc2l6ZT0iKzMiPkltcG9ydDwvZm9udD4gPGZvbnQgc2l6ZT0iLTEiIGNvbG9yPSIjOTkwMDAwIj5Db21pbmcgc29vbjwvZm9udD48L2xlZ2VuZD4NCnskZm9ybXN0YXJ0SW1wb3J0fQ0KIHsqICAgPGRpdj4NCiAgICAgICAgPHA+eyRUdXJuT05WYWxfbGFibGV9OiB7JFR1cm5PTlZhbF9pbnB1dH08L3A+DQogICAgPC9kaXY+DQogICAgPGRpdj4NCiAgICAgICAgPHA+eyRob3RMaW5rQ2hlY2tfbGFibGV9OiB7JGhvdExpbmtDaGVja19pbnB1dH08L3A+DQogICAgPC9kaXY+DQogICAgPGRpdj4NCiAgICAgICAgPHA+eyRTaG93VmFsX2xhYmxlfTogeyRTaG93VmFsX2lucHV0fTwvcD4NCiAgICA8L2Rpdj4NCiAgICA8ZGl2Pg0KICAgICAgICA8cD57JENTU3Byb2ZpbGVfbGFibGV9OiB7JENTU3Byb2ZpbGVfaW5wdXR9PC9wPg0KICAgIDwvZGl2Pg0KICAgIDxkaXY+DQogICAgICAgIDxwPnskdXNlcm1lZGl1bV9sYWJsZX06IHskdXNlcm1lZGl1bV9pbnB1dH08L3A+DQogICAgPC9kaXY+DQogICAgPGRpdj4NCiAgICAgICAgPHA+eyRWQUxMYW5nX2xhYmxlfTogeyRWQUxMYW5nX2lucHV0fTwvcD4NCiAgICA8L2Rpdj4NCiAgICA8ZGl2Pg0KICAgICAgICA8cD57JHczY0NTU3dhcm5pbmdfbGFibGV9OiB7JHczY0NTU3dhcm5pbmdfaW5wdXR9PC9wPg0KICAgIDwvZGl2Pg0KICAgIDxkaXY+DQogICAgICAgIDxwPnskZmlsdGVyUHJvcF9sYWJsZX06PC9wPg0KICAgICAgICA8cD57JGZpbHRlclByb3BfaW5wdXR9PC9wPg0KICAgIDwvZGl2Pip9DQoNCg0KICAgIDxkaXY+DQogICAgICAgIDxwPjwvcD4NCiAgICAgICAgPHA+eyRzdWJtaXRJbXBvcnR9PC9wPg0KICAgIDwvZGl2Pg0KeyRmb3JtZW5kfQ0KPC9maWVsZHNldD4NCg0KDQoNCjxmaWVsZHNldCBzdHlsZT0id2lkdGg6MjUwcHg7IGZsb2F0OmxlZnQ7Ij48bGVnZW5kPjxmb250IHNpemU9IiszIj5FeHBvcnQ8L2ZvbnQ+IDxmb250IHNpemU9Ii0xIiBjb2xvcj0iIzk5MDAwMCI+Q29taW5nIHNvb248L2ZvbnQ+PC9sZWdlbmQ+DQp7JGZvcm1zdGFydEV4cG9ydH0NCiB7KiAgIDxkaXY+DQogICAgICAgIDxwPnskVHVybk9OVmFsX2xhYmxlfTogeyRUdXJuT05WYWxIVE1MX2lucHV0fTwvcD4NCiAgICA8L2Rpdj4NCiAgICA8ZGl2Pg0KICAgICAgICA8cD57JGRvY1R5cGVfbGFibGV9OjwvcD4NCiAgICAgICAgPHA+eyRkb2NUeXBlX2lucHV0fTwvcD4NCiAgICA8L2Rpdj4NCiAgICAgPGRpdj4NCiAgICAgICAgPHA+eyRlbmNvZGluZ19sYWJsZX06PC9wPg0KICAgICAgICA8cD57JGVuY29kaW5nX2lucHV0fTwvcD4NCiAgICA8L2Rpdj4gICANCiAgICA8ZGl2Pg0KICAgICAgICA8cD57JFZBTExhbmdfbGFibGV9OjwvcD4NCiAgICAgICAgPHA+eyRWQUxMYW5nX2lucHV0fTwvcD4NCiAgICA8L2Rpdj4NCiAgICA8ZGl2Pg0KICAgICAgICA8cD57JFZhbEhUTUxWZXJib3NlX2xhYmxlfTogeyRWYWxIVE1MVmVyYm9zZV9pbnB1dH08L3A+DQogICAgPC9kaXY+DQogICAgPGRpdj4NCiAgICAgICAgPHA+eyRkZWZhdWx0UGFnZV9sYWJsZX06PC9wPg0KICAgICAgICA8cD57JGRlZmF1bHRQYWdlX2lucHV0fTwvcD4NCiAgICA8L2Rpdj4NCip9DQoNCg0KICAgIDxkaXY+DQogICAgICAgIDxwPjwvcD4NCiAgICAgICAgPHA+eyRzdWJtaXRFeHBvcnR9PC9wPg0KICAgIDwvZGl2Pg0KeyRmb3JtZW5kfQ0KPC9maWVsZHNldD4NCg0KPGRpdiBzdHlsZT0iY2xlYXI6Ym90aDsiPjwvZGl2Pg==]]></data>
	</file>
	<file>
	  <filename>/templates/admin_options.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[DQo8aDM+eyRtb2RfcHJlZnNfdGl0bGV9PC9oMz4NCjxoci8+DQoNCntpZiAkbWVzc2FnZSE9Jyd9PHA+eyRtZXNzYWdlfTwvcD57L2lmfQ0KeyRmb3JtX3N0YXJ0fQ0KDQo8ZGl2IHN0eWxlPSJ3aWR0aDogMzAlO21pbi13aWR0aDoxMTBweDsgaGVpZ2h0OjExMHB4O3BhZGRpbmc6IDEwcHg7IGJvcmRlcjogMXB4IHNvbGlkIHJnYigxNTMsIDE1MywgMTUzKTsgZmxvYXQ6bGVmdDsiPjxoMT57JGxvY2tmaWxlc1RpdGxlfTwvaDE+DQogICAgICAgIDxwPnskbG9ja2ZpbGVzX2xhYmVsfTo8L3A+DQoJCTxwPnskbG9ja2ZpbGVzX2lucHV0fTwvcD4gICAgICANCiAgICAgICAgPGJyLz48L2Rpdj4NCiAgICAgICAgDQo8ZGl2IHN0eWxlPSJ3aWR0aDogMzAlO21pbi13aWR0aDoxMTBweDsgaGVpZ2h0OjExMHB4O3BhZGRpbmc6IDEwcHg7IGJvcmRlcjogMXB4IHNvbGlkIHJnYigxNTMsIDE1MywgMTUzKTsgZmxvYXQ6bGVmdDsiPjxoMT57JHJldmlzaW9uVGl0bGV9PC9oMT4NCiAgICAgICAgPHA+eyRyZXZpc2lvbl9sYWJlbH06PC9wPg0KCQk8cD57JHJldmlzaW9uX2lucHV0fTwvcD4NCiAgICAgICAgPHA+eyRyZXZpc2lvbl9MSU1JVF9sYWJlbH06eyRyZXZpc2lvbl9MSU1JVF9pbnB1dH08L3A+ICAgICAgICANCiAgICAgICAgPGJyLz48L2Rpdj4NCiAgDQogDQogDQogDQogDQogDQogICAgICAgIA0KPGRpdiBzdHlsZT0id2lkdGg6IDMwJTttaW4td2lkdGg6MTEwcHg7aGVpZ2h0OjExMHB4OyBwYWRkaW5nOiAxMHB4OyBib3JkZXI6IDFweCBzb2xpZCByZ2IoMTUzLCAxNTMsIDE1Myk7IGZsb2F0OmxlZnQ7Ij48aDE+eyRkZWJ1Z1R9PC9oMT4NCgk8ZGl2Pg0KICAgICAgICA8cD57JGRlYnVnSVRfbGFiZWx9OjwvcD4NCiAgICAgICAgPHA+eyRkZWJ1Z0lUX2lucHV0fTwvcD48YnIvPjxici8+DQoJPC9kaXY+PC9kaXY+DQoNCjxoci8+DQoJPGRpdiBzdHlsZT0iY2xlYXI6bGVmdDsiPg0KCQk8cD57JGZvcm1fc3VibWl0fTwvcD4NCgk8L2Rpdj4NCg0KPGRpdiAgc3R5bGU9ImNsZWFyOmxlZnQ7Ij4NCjxoMT57JHVzZUVkaXRvclRpdGxlfTwvaDE+DQoNCjxwPnskdXNlRWRpdG9yX2xhYmVsfTp7JHVzZUVkaXRvcl9pbnB1dH08L3A+ICANCjwhLS08cD57JGVkaXRvckhlaWdodF9sYWJlbH06eyRlZGl0b3JIZWlnaHRfaW5wdXR9PC9wPi0tPg0KDQo8L2Rpdj4NCg0KCTxkaXYgc3R5bGU9ImNsZWFyOmxlZnQ7Ij4NCgkJPHA+eyRmb3JtX3N1Ym1pdH08L3A+DQoJPC9kaXY+DQo8aHIvPg0KDQoNCg0KPGRpdiAgc3R5bGU9IiB0ZXh0LWFsaWduOmNlbnRlcjsgY2xlYXI6bGVmdDsiPjxkaXYgc3R5bGU9ImZsb2F0OnJpZ2h0OyI+eyRDbGVhcl9pbnB1dH08L2Rpdj48aDEgIHN0eWxlPSJmbG9hdDpsZWZ0OyI+Q2FjaGUgSW5mbzwvaDE+eyRjbGVhcmVkX2xhYmVsfTwvZGl2Pg0KDQp7JGNhY2hlSW5mb30NCiAgICAgCQ0KeyRmb3JtX2VuZH0NCg==]]></data>
	</file>
	<file>
	  <filename>/templates/admin_Valsettings.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGZpZWxkc2V0IHN0eWxlPSJ3aWR0aDoyNTBweDsgZmxvYXQ6bGVmdDsiPjxsZWdlbmQ+PGZvbnQgc2l6ZT0iKzMiPkNTUzwvZm9udD48L2xlZ2VuZD4NCnskZm9ybXN0YXJ0fQ0KICAgIDxkaXY+DQogICAgICAgIDxwPnskVHVybk9OVmFsX2xhYmxlfTogeyRUdXJuT05WYWxfaW5wdXR9PC9wPg0KICAgIDwvZGl2Pg0KICAgIDxkaXY+DQogICAgICAgIDxwPnskaG90TGlua0NoZWNrX2xhYmxlfTogeyRob3RMaW5rQ2hlY2tfaW5wdXR9PC9wPg0KICAgIDwvZGl2Pg0KICAgIDxkaXY+DQogICAgICAgIDxwPnskU2hvd1ZhbF9sYWJsZX06IHskU2hvd1ZhbF9pbnB1dH08L3A+DQogICAgPC9kaXY+DQogICAgPGRpdj4NCiAgICAgICAgPHA+eyRDU1Nwcm9maWxlX2xhYmxlfTogeyRDU1Nwcm9maWxlX2lucHV0fTwvcD4NCiAgICA8L2Rpdj4NCiAgICA8ZGl2Pg0KICAgICAgICA8cD57JHVzZXJtZWRpdW1fbGFibGV9OiB7JHVzZXJtZWRpdW1faW5wdXR9PC9wPg0KICAgIDwvZGl2Pg0KICAgIDxkaXY+DQogICAgICAgIDxwPnskVkFMTGFuZ19sYWJsZX06IHskVkFMTGFuZ19pbnB1dH08L3A+DQogICAgPC9kaXY+DQogICAgPGRpdj4NCiAgICAgICAgPHA+eyR3M2NDU1N3YXJuaW5nX2xhYmxlfTogeyR3M2NDU1N3YXJuaW5nX2lucHV0fTwvcD4NCiAgICA8L2Rpdj4NCiAgICA8ZGl2Pg0KICAgICAgICA8cD57JGZpbHRlclByb3BfbGFibGV9OjwvcD4NCiAgICAgICAgPHA+eyRmaWx0ZXJQcm9wX2lucHV0fTwvcD4NCiAgICA8L2Rpdj4NCg0KDQogICAgPGRpdj4NCiAgICAgICAgPHA+PC9wPg0KICAgICAgICA8cD57JHN1Ym1pdH08L3A+DQogICAgPC9kaXY+DQp7JGZvcm1lbmR9DQo8L2ZpZWxkc2V0Pg0KDQoNCg0KPGZpZWxkc2V0IHN0eWxlPSJ3aWR0aDoyNTBweDsgZmxvYXQ6bGVmdDsiPjxsZWdlbmQ+PGZvbnQgc2l6ZT0iKzMiPkhUTUw8L2ZvbnQ+IDxmb250IHNpemU9Ii0xIiBjb2xvcj0iIzk5MDAwMCI+Q29taW5nIHNvb248L2ZvbnQ+PC9sZWdlbmQ+DQp7JGZvcm1zdGFydEhUTUx9DQogICAgPGRpdj4NCiAgICAgICAgPHA+eyRUdXJuT05WYWxfbGFibGV9OiB7JFR1cm5PTlZhbEhUTUxfaW5wdXR9PC9wPg0KICAgIDwvZGl2Pg0KICAgIDxkaXY+DQogICAgICAgIDxwPnskZG9jVHlwZV9sYWJsZX06PC9wPg0KICAgICAgICA8cD57JGRvY1R5cGVfaW5wdXR9PC9wPg0KICAgIDwvZGl2Pg0KICAgICA8ZGl2Pg0KICAgICAgICA8cD57JGVuY29kaW5nX2xhYmxlfTo8L3A+DQogICAgICAgIDxwPnskZW5jb2RpbmdfaW5wdXR9PC9wPg0KICAgIDwvZGl2PiAgIA0KICAgIDxkaXY+DQogICAgICAgIDxwPnskVkFMTGFuZ19sYWJsZX06PC9wPg0KICAgICAgICA8cD57JFZBTExhbmdfaW5wdXR9PC9wPg0KICAgIDwvZGl2Pg0KICAgIDxkaXY+DQogICAgICAgIDxwPnskVmFsSFRNTFZlcmJvc2VfbGFibGV9OiB7JFZhbEhUTUxWZXJib3NlX2lucHV0fTwvcD4NCiAgICA8L2Rpdj4NCiAgICA8ZGl2IGNsYXNzPSJzZWxlY3QgZGVmYXVsdENvbnRlbnQiDQogICAgICAgIDxwPnskZGVmYXVsdFBhZ2VfbGFibGV9OjwvcD4NCiAgICAgICAgPHA+eyRkZWZhdWx0UGFnZV9pbnB1dH08L3A+DQogICAgPC9kaXY+DQogICAgDQogICAgPGRpdiBjbGFzcz0ib3B0aW9ucyBkZWZhdWx0Q29udGVudCBvcDEiIHtpZiAkZGVmYXVsdFBhZ2VfaXMhPSd1c2VyQ2hvaWNlJ31zdHlsZT0iZGlzcGxheTpub25lOyJ7L2lmfT4NCiAgICAgICAgPHA+eyR1c2VyRGVmYXVsdFBhZ2VfbGFibGV9OjwvcD4NCiAgICAgICAgPHA+eyR1c2VyRGVmYXVsdFBhZ2VfaW5wdXR9PC9wPg0KICAgIDwvZGl2Pg0KDQogICAgPGRpdiBjbGFzcz0ib3B0aW9ucyBkZWZhdWx0Q29udGVudCBvcDIiIHtpZiAkZGVmYXVsdFBhZ2VfaXMhPSd1c2VyR2VuZXJhdGVkJ31zdHlsZT0iZGlzcGxheTpub25lOyJ7L2lmfT4NCiAgICAgICAgPHA+eyRvd25Db250ZW50X2xhYmxlfTo8L3A+DQogICAgICAgIDxwPnskb3duQ29udGVudF9pbnB1dH08L3A+DQogICAgPC9kaXY+DQoNCiAgICA8ZGl2Pg0KICAgICAgICA8cD48L3A+DQogICAgICAgIDxwPnskc3VibWl0SFRNTH08L3A+DQogICAgPC9kaXY+DQp7JGZvcm1lbmR9DQo8L2ZpZWxkc2V0Pg0KDQo8ZGl2IHN0eWxlPSJjbGVhcjpib3RoOyI+PC9kaXY+]]></data>
	</file>
	<file>
	  <filename>/templates/admin_view_logs.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[DQo8YSBocmVmPSJqYXZhc2NyaXB0OiBoaXN0b3J5LmdvKC0xKSIgaWQ9IkV4aXQiPkV4aXQ8L2E+IDwvcD4NCnskY2FjaGVJbmZvfQ0KPGEgaHJlZj0iamF2YXNjcmlwdDogaGlzdG9yeS5nbygtMSkiIGlkPSJFeGl0Ij5FeGl0PC9hPiA8L3A+DQo=]]></data>
	</file>
	<file>
	  <filename>/templates/associations.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGZvbnQgc2l6ZT0iLTEiIGNvbG9yPSIjOTkwMDAwIj5Db21pbmcgc29vbjwvZm9udD4NCg0KDQo8dGFibGUgY2VsbHNwYWNpbmc9IjAiIGNsYXNzPSJwYWdldGFibGUiPg0KICA8dGhlYWQ+DQogICAgIDx0aD57JGlkdGV4dH08L3RoPg0KICAgICA8dGg+eyRuYW1ldGV4dH08L3RoPg0KICAgICA8dGggY2xhc3M9InBhZ2VpY29uIj57JGFjdGl2ZXRleHR9Jm5ic3A7PC90aD4NCiAgICAgPHRoIGNsYXNzPSJwYWdlaWNvbiI+eyRkZWZhdWx0dGV4dH0mbmJzcDs8L3RoPg0KICAgICA8dGggY2xhc3M9InBhZ2VpY29uIj57JHZhbGlkdGV4dH08L3RoPg0KICAgICA8dGggY2xhc3M9InBhZ2VpY29uIj4mbmJzcDt7JHVzZWR0ZXh0fTwvdGg+DQogICAgIDx0aCBjbGFzcz0icGFnZWljb24iPiZuYnNwOyZuYnNwOzwvdGg+DQogICAgIDx0aCBjbGFzcz0icGFnZWljb24iPiZuYnNwOyZuYnNwOzwvdGg+DQogICAgIDx0aCBjbGFzcz0icGFnZWljb24iPiZuYnNwOyZuYnNwOzwvdGg+DQogICAgIDx0aCBjbGFzcz0icGFnZWljb24iPiZuYnNwOyZuYnNwOzwvdGg+DQogIDwvdGhlYWQ+DQogIDx0Ym9keT4NCiAgICB7Zm9yZWFjaCBmcm9tPSR0ZW1wbGF0ZXMgaXRlbT0nZW50cnknfQ0KICAgICAgPHRyIGNsYXNzPSJ7JGVudHJ5LT5yb3djbGFzc30iIG9ubW91c2VvdmVyPSJ0aGlzLmNsYXNzTmFtZT0neyRlbnRyeS0+cm93Y2xhc3N9aG92ZXInOyIgb25tb3VzZW91dD0idGhpcy5jbGFzc05hbWU9J3skZW50cnktPnJvd2NsYXNzfSc7Ij4NCgk8dGQ+eyRlbnRyeS0+aWR9PC90ZD4NCgk8dGQ+eyRlbnRyeS0+bmFtZX08L3RkPg0KCTx0ZD57JGVudHJ5LT5hY3RpdmVfZmxhZ308L3RkPg0KCTx0ZD57JGVudHJ5LT5kZWZhdWx0X2ZsYWd9PC90ZD4NCiAgICAgICAgPHRkPnskZW50cnktPnZhbGlkX2ZsYWd9PC90ZD4NCiAgICAgICAgPHRkIGFsaWduPSJjZW50ZXIiPnskZW50cnktPnVzZWRfY291bnR9PC90ZD4NCiAgICAgICAgPHRkPnskZW50cnktPmVkaXRjc3NfbGlua308L3RkPg0KICAgICAgICA8dGQ+eyRlbnRyeS0+Y29weV9saW5rfTwvdGQ+DQogICAgICAgIDx0ZD57JGVudHJ5LT5lZGl0X2xpbmt9PC90ZD4NCiAgICAgICAgPHRkPnskZW50cnktPmRlbGV0ZV9saW5rfTwvdGQ+DQogICAgICA8L3RyPg0KICAgIHsvZm9yZWFjaH0NCiAgPC90ZG9keT4NCjwvdGFibGU+DQo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPg0KICAgIDxzcGFuIHN0eWxlPSJmbG9hdDogbGVmdDsiPnskYWRkX2xpbmt9PC9zcGFuPg0KPC9kaXY+DQoNCg==]]></data>
	</file>
	<file>
	  <filename>/templates/editAssignment.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[e2xpdGVyYWx9DQoJPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPg0KLy92YXIgb3V0PTA7DQovL2lmKG91dD09MCl7DQovLwlhbGVydE91dCgpOw0KLy99DQovL2Z1bmN0aW9uIGFsZXJ0T3V0KCl7DQovLwkkKCd1bC5kcm9wZmFsc2UnKS5iaW5kKCdzb3J0b3V0JywgZnVuY3Rpb24oZXZlbnQsIHVpKSB7DQovLwkJDQovLwl9KTsNCi8vCW91dD0xOw0KLy99DQovLw0KLy8kKGZ1bmN0aW9uKCkgew0KLy8JJCgidWwuZHJvcHRydWUiKS5zb3J0YWJsZSh7DQovLwkJY29ubmVjdFdpdGg6ICd1bCcNCi8vCX0pOw0KLy8NCi8vCSQoInVsLmRyb3BmYWxzZSIpLnNvcnRhYmxlKHsNCi8vCQljb25uZWN0V2l0aDogJ3VsJywNCi8vCQlkcm9wT25FbXB0eTogdHJ1ZQ0KLy8JfSk7DQovLw0KLy8JJCgiI3NvcnRhYmxlMSwgI3NvcnRhYmxlMiwgI3NvcnRhYmxlMyIpLmRpc2FibGVTZWxlY3Rpb24oKTsNCi8vDQovLw0KLy8kKCd1bC5kcm9wZmFsc2UnKS5iaW5kKCdzb3J0YmVmb3JlU3RvcCcsIGZ1bmN0aW9uKGV2ZW50LCB1aSkgew0KLy8gIGFsZXJ0ICgnQWRkaW5nIGEgc2NyaXB0Jyk7DQovL30pOw0KLy8NCi8vJCgndWwuZHJvcHRydWUnKS5iaW5kKCdzb3J0YmVmb3JlU3RvcCcsIGZ1bmN0aW9uKGV2ZW50LCB1aSkgew0KLy8gIGFsZXJ0ICgnUmVtb3ZpbmcgYSBzY3JpcHQnKTsNCi8vfSk7DQovLw0KLy99KTsNCgkNCg0KCQ0KCTwvc2NyaXB0Pg0KDQp7L2xpdGVyYWx9DQoNCg0KPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4NCjxoMz57KiR0aXRsZSp9PC9oMz4NCjwvZGl2Pg0KeyRmb3Jtc3RhcnR9eyokaGlkZGVuKn17JGhpZGRlbk1vZGV9DQoge2lmICgkU2NyaXB0UGlja2VyIT0nJyl9PGgxIGNsYXNzPSJpbmlTaXplIiBzdHlsZT0iZmxvYXQ6cmlnaHQ7Ij57JGNhbmNlbH08L2gxPnsvaWZ9DQo8ZGl2Pg0KPGRpdiBzdHlsZT0iZmxvYXQ6bGVmdDsiPiANCntpZiAoJFNjcmlwdFBpY2tlcj09JycpfTxzcGFuIHN0eWxlPSJmbG9hdDpyaWdodDsiPnskU2F2ZX08L3NwYW4+ey9pZn0NCjxoMj57JEdyb3VwdFNldF9sYWJlbH08L2gyPg0KIHskR3JvdXB0U2V0fQ0KICA8YnIvPjxici8+IA0KICAgPGgyPnskR3JvdXB0VHlwZV9sYWJlbH08L2gyPg0KICB7JEdyb3VwdFR5cGV9DQogIA0KICA8L2Rpdj4NCiAgDQoge2lmICgkU2NyaXB0UGlja2VyIT0nJyl9IDxkaXYgc3R5bGU9ImZsb2F0OmxlZnQ7IHBhZGRpbmctbGVmdDoyMHB4OyI+DQogDQogDQogPGgxPnskU2NyaXB0UGlja2VyX2xhYmVsfTwvaDE+DQogIDxkaXYgY2xhc3M9IkFzc1BvdExpc3QiPg0KPGRpdiBjbGFzcz0iQXNzUG90TGlzdENPTiI+DQoNCnsqZm9yZWFjaCBmcm9tPSRTY3JpcHRQaWNrZXIgaXRlbT1lbnRyeX0NCiAgIHskZW50cnktPlNjcmlwdG5hbWV9PGxhYmVsPnskZW50cnktPlNjcmlwdG5hbWVMYWJsZX08L2xhYmVsPjxici8+DQp7L2ZvcmVhY2gqfQ0KDQo8dWwgaWQ9InNvcnRhYmxlMSIgY2xhc3M9J3sqZHJvcGZhbHNlKn0gY29ubmVjdGVkU29ydGFibGUgdWktc29ydGFibGUnPg0KCXtmb3JlYWNoIGZyb209JFNjcmlwdFBpY2tlciBpdGVtPWVudHJ5IG5hbWU9U2l0fQ0KCQl7aWYgISRhbGxTY3JpcHRzVXNlZH08bGkgY2xhc3M9InVpLXN0YXRlLWRlZmF1bHQgdGFyX3skZW50cnktPlNjcmlwdGlkfSBTY3JpcHRwb29sIj48aW1nIHNyYz0nLi4vbW9kdWxlcy9TY3JpcHREZXBsb3kvaW1hZ2VzL21hcmtlci5wbmcnIGFsdD0nZHJhZyB0byByZW9yZGVyJyBjbGFzcz0naGFuZGxlJyAvPnskZW50cnktPlNjcmlwdG5hbWV9PGxhYmVsPnskZW50cnktPlNjcmlwdG5hbWVMYWJsZX08L2xhYmVsPjxici8+PC9saT57L2lmfSAgDQogICAgey9mb3JlYWNofQ0KICAgIDxsaSBpZD0ncG9vbEVtcHR5JyBjbGFzcz0ndWktc3RhdGUtZGlzYWJsZWQge2lmICEkYWxsU2NyaXB0c1VzZWR9aGlkZGVuey9pZn0nPnskU2NyaXB0bmFtZU1lc3N9PC9saT4NCiAJe2ZvcmVhY2ggZnJvbT0kU2NyaXB0UGlja2VyaGlkZGVuIGl0ZW09ZW50cnl9DQoJCTxsaSBjbGFzcz0ndWktc3RhdGUtZGVmYXVsdCBoaWRkZW4gdGFyX3skZW50cnktPlNjcmlwdGlkfSBTY3JpcHRwb29sJz48aW1nIHNyYz0nLi4vbW9kdWxlcy9TY3JpcHREZXBsb3kvaW1hZ2VzL21hcmtlci5wbmcnIGFsdD0nZHJhZyB0byByZW9yZGVyJyBjbGFzcz0naGFuZGxlJyAvPnskZW50cnktPlNjcmlwdG5hbWV9PGxhYmVsPnskZW50cnktPlNjcmlwdG5hbWVMYWJsZX08L2xhYmVsPjxici8+PC9saT4NCiAgICB7L2ZvcmVhY2h9ICAgDQogICAgDQogICAgDQogICAgDQo8L3VsPg0KDQo8L2Rpdj4NCjwvZGl2Pg0KIDxzcGFuIGNsYXNzPSdoaWRkZW4nPiB7JGFkZH08L3NwYW4+DQoNCiAgPC9kaXY+ey9pZn0NCjwvZGl2Pg0KeyRmb3JtZW5kfQ0Ke2lmIGlzc2V0KCRTY3JpcHRMaXN0KX0NCntpZiAoKCRTY3JpcHRMaXN0IT0nJykmJihjb3VudCgkU2NyaXB0TGlzdCkhPTAmJmNvdW50KCRTY3JpcHRMaXN0KSE9bnVsbCkpfTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyIgc3R5bGU9IntpZiAhaXNzZXQoJFNjcmlwdExpc3QpfWRpc3BsYXk6bm9uZTt7L2lmfSI+DQp7JGZvcm1SRU9SREVSc3RhcnR9PGRpdiBjZWxsc3BhY2luZz0iMCIgY2xhc3M9InBhZ2V0YWJsZSIgPg0Keyo8dWwgaWQ9J2hlYWRlcnMnPg0KICAgICAgPGxpIGlkPSJyZU9yMSI+eyROYW1lX2xhYmVsfTwvbGk+DQogICAgICA8bGkgaWQ9InJlT3IyIj57JFNjcmlwdE5hbWVfbGFiZWx9PC9saT4NCiAgICAgIDxsaSBpZD0icmVPcjMiIGNsYXNzPSJwYWdlaWNvbiI+Jm5ic3A7PC9saT4NCiAgICAgIDxsaSBpZD0icmVPcjQiIGNsYXNzPSJwYWdlaWNvbiI+Jm5ic3A7PC9saT4NCiAgICAgIDxsaSBpZD0icmVPcjUiIGNsYXNzPSJwYWdlaWNvbiI+Jm5ic3A7PC9saT4NCjwvdWw+Kn0NCg0KIDxoMT57JGdyb3VweVRpdGxlfSA8L2gxPg0KPHVsIGNsYXNzPSJ1aS1zb3J0YWJsZSBjb25uZWN0ZWRTb3J0YWJsZSI+DQogICAge2ZvcmVhY2ggZnJvbT0kU2NyaXB0TGlzdCBpdGVtPWVudHJ5fQ0KICAgICAgIDxsaSBjbGFzcz0ieyRlbnRyeS0+cm93Y2xhc3N9IHskZW50cnktPmVkaXRNb2RlfSB0YXJfeyRlbnRyeS0+U2NyaXB0aWR9IFNjcmlwdExpc3QiPg0KICAgICAgICAJPHNwYW4gY2xhc3M9J3JlT3IzJz4NCiAgICAgICAgICAgIAk8aW1nIHNyYz0nLi4vbW9kdWxlcy9TY3JpcHREZXBsb3kvaW1hZ2VzL21hcmtlci5wbmcnIGFsdD0nZHJhZyB0byByZW9yZGVyJyBjbGFzcz0naGFuZGxlJyAvPg0KICAgICAgICAgICAgICAgIHskZW50cnktPlNjcmlwdE9SREVSfQ0KICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgPHNwYW4gY2xhc3M9J3JlT3I0Jz48L3NwYW4+DQogICAgICAgICAgICA8c3BhbiBjbGFzcz0ncmVPcjUnPg0KICAgICAgICAgICAgICAgIHskZW50cnktPmVkaXRsaW5rfQ0KICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgPHNwYW4gY2xhc3M9J3JlT3IxJz4NCiAgICAgICAgICAgIAk8aW1nIHNyYz0nLi4vbW9kdWxlcy9TY3JpcHREZXBsb3kvaW1hZ2VzL21hcmtlci5wbmcnIGFsdD0nZHJhZyB0byByZW9yZGVyJyBjbGFzcz0naGFuZGxlJyAvPg0KICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgPHNwYW4gY2xhc3M9J3JlT3IyJz4NCiAgICAgICAgICAgIAk8c3BhbiBjbGFzcz0nbmFtZSc+DQogICAgICAgICAgICAgICAgCXskZW50cnktPmRlZmF1bHR9DQogICAgICAgICAgICAgICAgICAgIDxzcGFuPg0KICAgICAgICAgICAgICAgICAgICAJKGlkOnskZW50cnktPm5hbWV9KQ0KICAgICAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgIEANCiAgICAgICAgICAgICAgICA8L3NwYW4+DQogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImNvdW50U2l6ZSI+DQogICAgICAgICAgICAgICAgCXskZW50cnktPnNjcmlwdFNpemV9DQogICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICA8L2xpPg0KICAgIHsvZm9yZWFjaH0NCjwvdWw+DQoNCjwvZGl2Pg0KPGgxIHN0eWxlPSJmbG9hdDpyaWdodDsgZGlzcGxheTppbmxpbmU7Ij57JFJFT1JERVJ9PC9oMT4gPGgxIHN0eWxlPSJmbG9hdDpsZWZ0OyBkaXNwbGF5OmlubGluZTsiPnskR3JvdXB0U2l6ZV9sYWJlbH06IDxzcGFuPnskR3JvdXB0U2l6ZX08L3NwYW4+PC9oMT4NCnskZm9ybWVuZH17L2lmfXsvaWZ9DQo8L2Rpdj4NCg0KPGRpdiBzdHlsZT0iY2xlYXI6Ym90aDsiPiA8L2Rpdj4NCg0K]]></data>
	</file>
	<file>
	  <filename>/templates/editAssignments.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4NCjx0YWJsZSBjZWxsc3BhY2luZz0iMCIgY2xhc3M9InBhZ2V0YWJsZSI+DQogIDx0aGVhZD4NCiAgICA8dHI+DQogICAgPHRoID57JHR5cGVfbGFiZWx9PC90aD4NCiAgICAgIDx0aCA+eyRBc3NfaGVhZGVyfTwvdGg+DQogICAgICA8dGg+eyRTYW1wbGVDb2RlfTwvdGg+DQoNCiAgICAgIDx0aCBjbGFzcz0icGFnZWljb24iPiZuYnNwOzwvdGg+DQogICAgICA8dGggY2xhc3M9InBhZ2VpY29uIj4mbmJzcDs8L3RoPg0KICAgIDwvdHI+DQogIDwvdGhlYWQ+DQogIDx0Ym9keT4NCiAge2lmIGVtcHR5KCRBc3NfaXRlbXMpfTx0cj48dGQgY29sc3Bhbj0iNSI+eyROb19Hcm91cHN9PC90ZD48L3RyPntlbHNlfQ0Ke2ZvcmVhY2ggZnJvbT0kQXNzX2l0ZW1zIGl0ZW09ZW50cnl9DQogICA8dHIgY2xhc3M9InskZW50cnktPnJvd2NsYXNzfSI+DQogIA0KICAgIDx0ZD57JGVudHJ5LT50eXBlSWNvbn08L3RkPg0KDQogICAgIDx0ZD48aDIgc3R5bGU9ImRpc3BsYXk6aW5saW5lOyI+eyRlbnRyeS0+TnVtYmVyT2Z9IGluICA8L2gyPjxoMSBzdHlsZT0iZGlzcGxheTppbmxpbmU7Ij57JGVudHJ5LT5kZWZhdWx0fTwvaDE+PGg0IHN0eWxlPSJkaXNwbGF5OmlubGluZTsiPkB7U2NyaXB0RGVwbG95IGdyb3VwSUQ9JGVudHJ5LT5CdG4gU3R5cGU9JGVudHJ5LT5Hcm91cHRUeXBlIHVybD10cnVlIGZzaXplPXRydWV9PC9oND48aDYgc3R5bGU9ImRpc3BsYXk6aW5saW5lOyI+KG1pbmlmaWVkKTwvaDY+PC90ZD4NCiAgICAgPHRkPnskZW50cnktPlNhbXBsZX08L3RkPg0KICAgICA8dGQ+eyRlbnRyeS0+ZWRpdGxpbmt9PC90ZD4NCiAgICAgPHRkPnskZW50cnktPmRlbGV0ZWxpbmt9PC90ZD4NCiAgIDwvdHI+DQp7L2ZvcmVhY2h9ey9pZn0NCjwvdGJvZHk+DQo8L3RhYmxlPg0KPC9kaXY+DQo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPg0KICA8cCBjbGFzcz0icGFnZW9wdGlvbnMiPnskbmV3U2NyaXB0QXNzbGlua308L3A+DQo8L2Rpdj4NCg==]]></data>
	</file>
	<file>
	  <filename>/templates/editcssassoc.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[e2lmIGlzc2V0KCRlcnJvcil9CiAgPGg0Pjxmb250IGNvbG9yPSJyZWQiPkVycm9yOiB7JGVycm9yfTwvZm9udD48L2g0Pgp7L2lmfQp7JHN0YXJ0Zm9ybX17JGhpZGRlbn0KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF90ZW1wbGF0ZX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRsYWJlbF90ZW1wbGF0ZX08L3A+CiAgPC9kaXY+CiAgCiAgPGZpZWxkc2V0PgogICAgPGxlZ2VuZD57JHByb21wdF9wZXJzaXN0ZW50fTwvbGVnZW5kPgogICAge2lmIGlzc2V0KCRwZXJzaXN0ZW50cykgJiYgY291bnQoJHBlcnNpc3RlbnRzKSA+IDB9CiAgICA8dGFibGUgY2VsbHNwYWNpbmc9IjAiIGNsYXNzPSJwYWdldGFibGUiPgogICAgICA8dGhlYWQ+CiAgICAgICAgPHRoPnskbmFtZXRleHR9PC90aD4KIAk8dGggY2xhc3M9InBhZ2VpY29uIj4mbmJzcDs8L3RoPgogCTx0aCBjbGFzcz0icGFnZWljb24iPiZuYnNwOzwvdGg+CiAJPHRoIGNsYXNzPSJwYWdlaWNvbiI+Jm5ic3A7PC90aD4KIAk8dGggY2xhc3M9InBhZ2VpY29uIj4mbmJzcDs8L3RoPgogICAgICA8L3RoZWFkPgogICAgICA8dGJvZHk+IAogICAgICAgIHtmb3JlYWNoIGZyb209JHBlcnNpc3RlbnRzIGl0ZW09J3BlcnNpc3QnfQoJICA8dHIgY2xhc3M9InskcGVyc2lzdC0+cm93Y2xhc3N9IiBvbm1vdXNlb3Zlcj0idGhpcy5jbGFzc05hbWU9J3skcGVyc2lzdC0+cm93Y2xhc3N9aG92ZXInOyIgb25tb3VzZW91dD0idGhpcy5jbGFzc05hbWU9J3skcGVyc2lzdC0+cm93Y2xhc3N9JzsiPgogICAgICAgICAgICA8dGQ+eyRwZXJzaXN0LT5uYW1lfTwvdGQ+CiAgICAgICAgICAgIDx0ZD57JHBlcnNpc3QtPmVkaXRsaW5rfTwvdGQ+CiAgICAgICAgICAgIDx0ZD57JHBlcnNpc3QtPm1vdmV1cGxpbmt9PC90ZD4KICAgICAgICAgICAgPHRkPnskcGVyc2lzdC0+bW92ZWRvd25saW5rfTwvdGQ+CiAgICAgICAgICAgIDx0ZD57JHBlcnNpc3QtPnJlbW92ZWxpbmt9PC90ZD4KICAgICAgICAgIDwvdHI+CiAgICAgICAgey9mb3JlYWNofQogICAgICA8L3Rib2R5PgogICAgPC90YWJsZT4KICAgIHsvaWZ9CgogICAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF9hZGR9PC9wPgogICAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2FkZHBlcnNpc3R9eyRidXR0b25fYWRkcGVyc2lzdH08L3A+CiAgICA8L2Rpdj4KICA8L2ZpZWxkc2V0PgoKICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF9wcmVmZXJyZWR9PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9wcmVmZXJyZWRfc3R5bGVzaGVldH08L3A+CiAgPC9kaXY+CgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X2FsdGVybmF0ZV9zdHlsZXNoZWV0fTwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfYWx0ZXJuYXRlX3N0eWxlc2hlZXR9PC9wPgogIDwvZGl2PgoKICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij4mbmJzcDs8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JHN1Ym1pdH17JGFwcGx5fXskY2FuY2VsfTwvcD4KICA8L2Rpdj4KeyRlbmRmb3JtfQ==]]></data>
	</file>
	<file>
	  <filename>/templates/edit_script.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij57JHNjcmlwdFR5cGVKU30NCjwvZGl2Pg0KeyRmb3Jtc3RhcnR9eyRoaWRkZW59DQo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciIHN0eWxlPSJwYWRkaW5nLWxlZnQ6MjBweDsiPg0KIHskc3VibWl0fXskY2FuY2VsfXtpZiAkbW9kZT09J2VkaXQnfXskcmV2ZXJ0fXskYXBwbHl9ey9pZn0NCjwvZGl2Pg0KDQoNCg0KPGRpdiBjbGFzcz0iaGlkZGVuIiA+DQogICAgPGRpdiBzdHlsZT0iIiBpZD0ic2NyaXB0T3B0aW9ucyI+DQogICAgICAgIDxkaXY+DQogICAgICAgICAgPHAgPnskU2NyaXB0TmFtZV9sYWJlbH06PC9wPg0KICAgICAgICAgIDxwIGlkPSJzY3JpcHROYW1lIj57JFNjcmlwdFNldF9pbnB1dH08L3A+DQogICAgICAgIDwvZGl2Pg0KICAgICAgICA8ZGl2Pg0KICAgICAgICAgIDxwID57JHNjcmlwdFR5cGVfbGFiZWx9OjwvcD4NCiAgICAgICAgICA8cCA+eyRzY3JpcHRUeXBlX2lucHV0fTwvcD4NCiAgICAgICAgPC9kaXY+DQogICAgICAge2lmIGlzc2V0KCRNZWRpYVR5cGVfbGFiZWwpfQ0KICAgICAgIDxkaXYgaWQ9Ik1lZGlhVHlwZSIgc3R5bGU9ImRpc3BsYXk6bm9uZTsiPg0KICAgICAgICAgIDxwID57JE1lZGlhVHlwZV9sYWJlbH06PC9wPg0KICAgICAgICAgIDxwID57JE1lZGlhVHlwZV9pbnB1dH08L3A+DQogICAgICAgIDwvZGl2Pg0KICAgICAgICB7L2lmfQ0KICAgICAgICA8ZGl2ID4NCiAgICAgICAgICA8cCA+eyRNaW5pZnlfbGFiZWx9OjwvcD4NCiAgICAgICAgICA8cCA+eyRNaW5pZnlfaW5wdXR9PC9wPg0KICAgICAgICA8L2Rpdj4NCiAgICAgICAgPGRpdiA+DQogICAgICAgICAgPHAgPnskdHVybk9mZlByZWxvYWRfbGFiZWx9OjwvcD4NCiAgICAgICAgICA8cCA+eyR0dXJuT2ZmUHJlbG9hZF9pbnB1dH08L3A+DQogICAgICAgIDwvZGl2Pg0KICAgICAgICANCiAgICAgICAgDQogICAgICAgIA0KICAgICAgICA8ZGl2Pg0KICAgICAgICAgIDxwID57JHJvb3RVUkxPcHRpb25faW5wdXR9eyRyb290VVJMT3B0aW9uX2xhYmVsfTo8L3A+DQogICAgICAgICAgPHAgaWQ9InJvb3RVUkxPcHRpb24iIHN0eWxlPSJkaXNwbGF5Om5vbmU7Ij57JHJvb3RVUkxfaW5wdXR9PC9wPg0KICAgICAgICA8L2Rpdj4NCiAgICAgICAgPGRpdj4NCiAgICAgICAgICA8cCA+eyRVc2VQYXRoT3B0aW9uX2lucHV0fXskcGF0aE9wdGlvbl9sYWJlbH06PC9wPg0KICAgICAgICAgIDxwIGlkPSJwYXRoT3B0aW9uIiBzdHlsZT0iZGlzcGxheTpub25lOyI+eyRwYXRoT3B0aW9uX2lucHV0fTwvcD4NCiAgICAgICAgPC9kaXY+DQogICAgICAgIDxhIGhyZWY9IiMiIGlkPSJjbG9zZV9vcHRpb25zIj5DbG9zZTwvYT4NCgk8L2Rpdj4NCiAgICA8dGV4dGFyZWEgaWQ9ImZpbHRlclByb3AiIHJvd3M9IjEiIGNvbHM9IjEiPnskZmlsdGVyUHJvcH08L3RleHRhcmVhPg0KPC9kaXY+DQoNCg0KPGRpdiBzdHlsZT0iZmxvYXQ6cmlnaHQ7IHdpZHRoOjE1MHB4OyIgaWQ9InNpZGViYXIiPg0KICAgIDxoMT5UaXBzOjwvaDE+DQogICAgPGRpdiBpZD0ndGlwZWQnPnskc21hcnR5SG93X2xhYmVsfTwvZGl2Pg0KICAgIHtpZiAkbm90ZWQhPScnfTxkaXYgaWQ9Im5vdGVkIj48YnIvPjxici8+DQogICAgPGgxIGlkPSJzaWRlbm90ZSI+PHNwYW4gaWQ9ImFzdGVyIj4qPC9zcGFuPk5vdGU6PC9oMT4NCiAgICA8cD57JG5vdGVkfTwvcD48L2Rpdj4NCiAgICB7L2lmfQ0KPC9kaXY+DQo8ZGl2IGNsYXNzPSJkaWFsb2ciIHN0eWxlPSJtYXJnaW4tcmlnaHQ6MTcwcHg7Ij4NCiA8ZGl2IGNsYXNzPSJoZCI+PGRpdiBjbGFzcz0iYyI+PC9kaXY+PC9kaXY+DQogPGRpdiBjbGFzcz0iYmQiPg0KICA8ZGl2IGNsYXNzPSJjIj4NCiAgIDxkaXYgY2xhc3M9InMiPg0KDQogICAgPCEtLSBjb250ZW50IGFyZWEgLS0+DQogICAgPGRpdiBpZD0ibm90aWNlYmFyIj4NCiAgICAgICAgICB7aWYgJG1vZGU9PSdlZGl0J30NCiAgICAgICAgICAgICAgPGRpdiBpZD0iVkFsZWRCbG9jayI+DQogICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJpbm5lciI+DQogICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD0iVkFsZWQiPnskVkFsZWR9PC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAge2lmICRFX2lucHV0IT0nJ308YSBocmVmPSIjIiBpZD0iRV90cmlnIj48aW1nIHNyYz0iLi4vbW9kdWxlcy9TY3JpcHREZXBsb3kvaW1hZ2VzL2Nzcy1lcnJvci5wbmciIGFsdD0iIi8+PGJyLz5FcnJvcnM8L2E+ey9pZn0NCiAgICAgICAgICAgICAgICAgICAgICB7aWYgJFdfaW5wdXQhPScnfTxhIGhyZWY9IiMiIGlkPSJXX3RyaWciPjxpbWcgc3JjPSIuLi9tb2R1bGVzL1NjcmlwdERlcGxveS9pbWFnZXMvY3NzLXdhcm4ucG5nIiBhbHQ9IiIvPjxici8+V2FybmluZ3M8L2E+ey9pZn0NCiAgICAgICAgICAgICAgICAgCQk8ZGl2IGNsYXNzPSJoaWRkZW4iIHN0eWxlPSJwb3NpdGlvbjphYnNvbHV0ZTsgdG9wOi05OTk5ZW07IGxlZnQ6LTk5OTllbTsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICAgIHskcmVwb3J0fQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtpZiAkbW9kZT09J2VkaXQnfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7aWYgJEVfaW5wdXQhPScnfTxkaXYgY2xhc3M9ImhpZGRlbiIgPjxkaXYgaWQ9IkVycm9yQXJlYSI+eyRFX2lucHV0fTwvZGl2PjwvZGl2PnsvaWZ9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtpZiAkV19pbnB1dCE9Jyd9PGRpdiBjbGFzcz0iaGlkZGVuIiA+PGRpdiBpZD0id2FybkFyZWEiPnskV19pbnB1dH08L2Rpdj48L2Rpdj4gey9pZn0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7L2lmfQ0KICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgey9pZn0NCiAgICAgICAgICA8YSBocmVmPSIjIiBpZD0iTm90ZV90cmlnIj48aW1nIHNyYz0iLi4vbW9kdWxlcy9TY3JpcHREZXBsb3kvaW1hZ2VzL25vdGVzLnBuZyIgYWx0PSIiLz48YnIvPk5vdGU8L2E+DQogICAgICAgICAgIA0KICAgIDwvZGl2Pg0KICAgIDxoMSBpZD0ic2NyaXB0TmFtZV9JUyIgY2xhc3M9ImV4dGVybmFsIj57aWYgJHNjcmlwdHNfbmFtZSE9Jyd9eyRzY3JpcHRzX25hbWV9e2Vsc2V9VW5zZXR7L2lmfTwvaDE+e2lmIGlzc2V0KCRzY3JpcHRzR3JvdXApJiYkc2NyaXB0c0dyb3VwIT0nJ308c3BhbiBpZD0iU2NyaXB0X2dyb3VwcyI+R3JvdXBzOiB7JHNjcmlwdHNHcm91cE51bWJlcn0gKHskc2NyaXB0c0dyb3VwfSk8L3NwYW4+ey9pZn0NCiAgICA8ZGl2IHN0eWxlPSJjbGVhcjpyaWdodDtwYWRkaW5nOjc4cHggMCAyNnB4O3Bvc2l0aW9uOnJlbGF0aXZlOyI+DQogICAgICAgIDxkaXYgaWQ9InRvb2xCYXItdCI+DQogICAgICAgICAgICA8ZGl2IGlkPSJnb3RvQm94Ij5HbyB0byBMaW5lOiAgPGlucHV0IHR5cGU9InRleHQiIHZhbHVlPSIiIGlkPSJnb3RvIiAvPjwvZGl2Pg0KICAgICAgICAgICAgPGRpdiBpZD0ib3BCYXIiPnskb3B0aW9uYmFyfTwvZGl2Pg0KICAgICAgICAgICAgDQogICAgICAgICAgICANCiAgICAgICAgPC9kaXY+DQogICAgICAgIDxkaXYgaWQ9IkpCX251bWFyZWEiPg0KICAgICAgICAgICAgeyRTY3JpcHRJc19pbnB1dH0NCiAgICAgICAgPC9kaXY+DQogICAgICAgIDxkaXYgaWQ9InRvb2xCYXItYiI+PGRpdiBjbGFzcz0iaW5uZXIiPnskcmVwb3J0YmFyfTwvZGl2PjwvZGl2Pg0KICAgIDwvZGl2Pg0KDQoNCiAgICA8IS0tIGNvbnRlbnQgYXJlYSAtLT4NCg0KICAgPC9kaXY+DQogIDwvZGl2Pg0KIDwvZGl2Pg0KIDxkaXYgY2xhc3M9ImZ0Ij48ZGl2IGNsYXNzPSJjIj48L2Rpdj48L2Rpdj4NCjwvZGl2Pg0KDQoNCiAgICAgICAgICAgICAgICAgCQk8ZGl2IGlkPSJsYW5kZXIiIGNsYXNzPSJoaWRkZW4iIHN0eWxlPSJwb3NpdGlvbjphYnNvbHV0ZTsgdG9wOi05OTk5ZW07IGxlZnQ6LTk5OTllbTsiPg0KICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KDQoNCg0KDQo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciIHN0eWxlPSJwYWRkaW5nLWxlZnQ6MjBweDsiPg0KeyRzdWJtaXR9eyRjYW5jZWx9e2lmICRtb2RlPT0nZWRpdCd9eyRyZXZlcnR9eyRhcHBseX17L2lmfQ0KPC9kaXY+DQp7JG5vdGVzX2lucHV0fQ0KeyRmb3JtZW5kfQ0KDQo=]]></data>
	</file>
	<file>
	  <filename>/templates/edit_script_list.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4NCjx0YWJsZSBjZWxsc3BhY2luZz0iMCIgY2xhc3M9InBhZ2V0YWJsZSI+DQogIDx0aGVhZD4NCiAgICA8dHI+DQogICAgIDx0aCA+eyR0eXBlX2xhYmVsfTwvdGg+DQogICAgICA8dGggPnskTmFtZV9sYWJlbH08L3RoPg0KICAgICAgPHRoPnskU2NyaXB0TmFtZV9sYWJlbH08L3RoPg0KICAgICAgPHRoPnskU2luZ2xlQ29kZV9sYWJlbH08L3RoPg0KICAgICAgPHRoID4mbmJzcDs8L3RoPg0KICAgIDwvdHI+DQogIDwvdGhlYWQ+DQogIA0KICAgIHtpZiBlbXB0eSgkaXRlbXMpfTx0cj48dGQgY29sc3Bhbj0iNSI+eyROb19TY3JpcHRzfTwvdGQ+PC90cj57ZWxzZX0NCg0KICANCntmb3JlYWNoIGZyb209JGl0ZW1zIGl0ZW09ZW50cnl9DQogICA8dHIgY2xhc3M9InskZW50cnktPnJvd2NsYXNzfSB7JGVudHJ5LT5lZGl0TW9kZX0iPg0KICAgICA8dGQ+eyRlbnRyeS0+dHlwZUljb259PC90ZD4NCiAgICAgPHRkPjxoMz57JGVudHJ5LT5uYW1lfTwvaDM+PC90ZD4NCiAgICAgPHRkPjxoNCBzdHlsZT0iZGlzcGxheTppbmxpbmU7Ij57JGVudHJ5LT5kZWZhdWx0fSBAIHskZW50cnktPnNjcmlwdFNpemV9IHtpZiAkZW50cnktPlJldmlzaW9uIT0nJ30gLS0gIHskZW50cnktPlJldmlzaW9ufXsvaWZ9PC9oND48L3RkPg0KICAgICA8dGQ+PGg0PnskZW50cnktPmdldFRhZ308L2g0PjwvdGQ+DQogICAgIDx0ZCA+PGRpdiBjbGFzcz0iZWRpdGJhciB7JGVudHJ5LT5lZGl0TW9kZX0iPnskZW50cnktPnN0ZWFsfXskZW50cnktPmVkaXRsaW5rfXskZW50cnktPnJldmVydH17JGVudHJ5LT5kZWxldGVsaW5rfTwvZGl2PjwvdGQ+DQogICA8L3RyPg0Key9mb3JlYWNofXsvaWZ9DQo8L3RhYmxlPg0KPC9kaXY+DQo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPg0KICA8cCBjbGFzcz0icGFnZW9wdGlvbnMiPnskbmV3X3NjcmlwdF9saW5rfTwvcD4NCjwvZGl2Pg0K]]></data>
	</file>
	<file>
	  <filename>/templates/edit_template.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij57JHNjcmlwdFR5cGVKU30NCjwvZGl2Pg0KeyRmb3Jtc3RhcnR9eyRoaWRkZW59DQo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciIHN0eWxlPSJwYWRkaW5nLWxlZnQ6MjBweDsiPg0KIHsqeyRzdWJtaXR9Kn17JGNhbmNlbH17KntpZiAkbW9kZT09J2VkaXQnfXskcmV2ZXJ0fXskYXBwbHl9ey9pZn0qfQ0KPC9kaXY+DQoNCg0KDQo8ZGl2IGNsYXNzPSJoaWRkZW4iID4NCiAgICA8ZGl2IHN0eWxlPSIiIGlkPSJzY3JpcHRPcHRpb25zIj4NCiAgICAgICAgPGRpdj4NCiAgICAgICAgICA8cCA+eyR0ZW1wbGF0ZW5hbWVfbGFiZWx9OjwvcD4NCiAgICAgICAgICA8cCBpZD0ic2NyaXB0TmFtZSI+eyR0ZW1wbGF0ZW5hbWVfaW5wdXR9PC9wPg0KICAgICAgICA8L2Rpdj4NCjxici8+PGJyLz4NCiAgICAgICAgPGEgaHJlZj0iIyIgaWQ9ImNsb3NlX29wdGlvbnMiPkNsb3NlPC9hPg0KCTwvZGl2Pg0KICAgIDx0ZXh0YXJlYSBpZD0iZmlsdGVyUHJvcCIgcm93cz0iMSIgY29scz0iMSI+eyRmaWx0ZXJQcm9wfTwvdGV4dGFyZWE+DQo8L2Rpdj4NCg0KDQo8ZGl2IHN0eWxlPSJmbG9hdDpyaWdodDsgd2lkdGg6MTUwcHg7IiBpZD0ic2lkZWJhciI+DQogICAgPGgxPlRpcHM6PC9oMT4NCiAgICB7JHNtYXJ0eUhvd19sYWJlbH0NCiAgICB7aWYgJG5vdGVkIT0nJ308YnIvPjxici8+DQogICAgPGgxIGlkPSJzaWRlbm90ZSI+PHNwYW4gaWQ9ImFzdGVyIj4qPC9zcGFuPk5vdGU6PC9oMT4NCiAgICA8cD57JG5vdGVkfTwvcD4NCiAgICB7L2lmfQ0KPC9kaXY+DQoNCjxoMj57JGFkZExpYl9sYWJlbH08L2gyPg0KPHNlbGVjdCBpZD0ibGlicmFyeSI+DQo8b3B0aW9uIHZhbHVlPSJub25lIj5Ob25lPC9vcHRpb24+eyoqfQ0KPG9wdGdyb3VwIGxhYmVsPSJqUXVlcnkiPg0KPG9wdGlvbiB2YWx1ZT0iMC0wIj48c3Ryb25nPmpRdWVyeSBsYXRlc3Q8L3N0cm9uZz48L29wdGlvbj57Kmh0dHA6Ly9hamF4Lmdvb2dsZWFwaXMuY29tL2FqYXgvbGlicy9qcXVlcnkvMS9qcXVlcnkubWluLmpzKn0NCjxvcHRpb24gdmFsdWU9IjAtMS0xIj5qUXVlcnkgMS40LjIgPGVtPihnb29nbGVhcGlzKTwvZW0+PC9vcHRpb24+eypodHRwOi8vYWpheC5nb29nbGVhcGlzLmNvbS9hamF4L2xpYnMvanF1ZXJ5LzEuNC4yL2pxdWVyeS5taW4uanMqfQ0KPG9wdGlvbiB2YWx1ZT0iMC0xLTIiPmpRdWVyeSAxLjQuMiA8ZW0+KG1pY3Jvc29mdCk8L2VtPjwvb3B0aW9uPnsqaHR0cDovL2FqYXgubWljcm9zb2Z0LmNvbS9hamF4L2pRdWVyeS9qcXVlcnktMS40LjIubWluLmpzKn0NCjxvcHRpb24gdmFsdWU9IjAtMi0xIj5qUXVlcnkgMS40LjAgPGVtPihnb29nbGVhcGlzKTwvZW0+PC9vcHRpb24+eypodHRwOi8vYWpheC5nb29nbGVhcGlzLmNvbS9hamF4L2xpYnMvanF1ZXJ5LzEuNC4wL2pxdWVyeS5taW4uanMqfQ0KPG9wdGlvbiB2YWx1ZT0iMC0yLTIiPmpRdWVyeSAxLjQuMCA8ZW0+KG1pY3Jvc29mdCk8L2VtPjwvb3B0aW9uPnsqaHR0cDovL2FqYXgubWljcm9zb2Z0LmNvbS9hamF4L2pRdWVyeS9qcXVlcnktMS40LjEubWluLmpzKn0NCjxvcHRpb24gdmFsdWU9IjAtMy0xIj5qUXVlcnkgMS4zLjIgPGVtPihnb29nbGVhcGlzKTwvZW0+PC9vcHRpb24+eypodHRwOi8vYWpheC5nb29nbGVhcGlzLmNvbS9hamF4L2xpYnMvanF1ZXJ5LzEuMy4yL2pxdWVyeS5taW4uanMqfQ0KPG9wdGlvbiB2YWx1ZT0iMC0zLTIiPmpRdWVyeSAxLjMuMiA8ZW0+KG1pY3Jvc29mdCk8L2VtPjwvb3B0aW9uPnsqaHR0cDovL2FqYXgubWljcm9zb2Z0LmNvbS9hamF4L2pRdWVyeS9qcXVlcnktMS4zLjIubWluLmpzKn0NCjxvcHRpb24gdmFsdWU9IjAtNCI+alF1ZXJ5IDEuMi42PC9vcHRpb24+eypodHRwOi8vYWpheC5nb29nbGVhcGlzLmNvbS9hamF4L2xpYnMvanF1ZXJ5LzEuMi42L2pxdWVyeS5taW4uanMqfQ0KPC9vcHRncm91cD4NCjxvcHRncm91cCBsYWJlbD0ialF1ZXJ5IFRvb2xzIj4NCjxvcHRpb24gdmFsdWU9IjgtMCI+PHN0cm9uZz5qUXVlcnkgVG9vbHMgLSBBbGw8L3N0cm9uZz48L29wdGlvbj57Kmh0dHA6Ly9jZG4uanF1ZXJ5dG9vbHMub3JnLzEuMi40L2FsbC9qcXVlcnkudG9vbHMubWluLmpzKn0NCjxvcHRpb24gdmFsdWU9IjgtMSI+alF1ZXJ5IFRvb2xzIC0gRm9ybSB0b29sczogRGF0ZWlucHV0LCBSYW5nZWlucHV0IGFuZCBWYWxpZGF0b3IuIE5vIGpRdWVyeSBsaWJyYXJ5Ljwvb3B0aW9uPnsqaHR0cDovL2Nkbi5qcXVlcnl0b29scy5vcmcvMS4yLjQvZm9ybS9qcXVlcnkudG9vbHMubWluLmpzKn0NCjxvcHRpb24gdmFsdWU9IjgtMiI+alF1ZXJ5IFRvb2xzIC0gVUkgVG9vbHM6IFRhYnMsIFRvb2x0aXAsIFNjcm9sbGFibGUgYW5kIE92ZXJsYXkuPC9vcHRpb24+eypodHRwOi8vY2RuLmpxdWVyeXRvb2xzLm9yZy8xLjIuNC90aW55L2pxdWVyeS50b29scy5taW4uanMqfQ0KPC9vcHRncm91cD4NCjxvcHRncm91cCBsYWJlbD0ianF1ZXJ5LnZhbGlkYXRlIj4NCjxvcHRpb24gdmFsdWU9IjktMCI+PHN0cm9uZz52ZXJzaW9uIDEuNzwvc3Ryb25nPjwvb3B0aW9uPnsqaHR0cDovL2FqYXgubWljcm9zb2Z0LmNvbS9hamF4L2pxdWVyeS52YWxpZGF0ZS8xLjcvanF1ZXJ5LnZhbGlkYXRlLmpzKn0NCjxvcHRpb24gdmFsdWU9IjktMSI+dmVyc2lvbiAxLjcgKyBhZGRpdGlvbmFsLW1ldGhvZHM8L29wdGlvbj57Kmh0dHA6Ly9hamF4Lm1pY3Jvc29mdC5jb20vYWpheC9qcXVlcnkudmFsaWRhdGUvMS43L2pxdWVyeS52YWxpZGF0ZS5qcyB8IGh0dHA6Ly9hamF4Lm1pY3Jvc29mdC5jb20vYWpheC9qcXVlcnkudmFsaWRhdGUvMS43L2FkZGl0aW9uYWwtbWV0aG9kcy5qcyp9DQo8L29wdGdyb3VwPg0KPG9wdGdyb3VwIGxhYmVsPSJnb29nbGUgYXBpcyI+DQo8b3B0aW9uIHZhbHVlPSIxMC0wIj48c3Ryb25nPmpzYXBpIGxhdGVzdDwvc3Ryb25nPjwvb3B0aW9uPnsqIGh0dHA6Ly93d3cuZ29vZ2xlLmNvbS9qc2FwaSAqfQ0KPC9vcHRncm91cD4NCjxvcHRncm91cCBsYWJlbD0ialF1ZXJ5IFVJIj4NCjxvcHRpb24gdmFsdWU9IjEtMCI+PHN0cm9uZz5qUXVlcnkgVUkgMS44LjA8L3N0cm9uZz48L29wdGlvbj57Kmh0dHA6Ly9hamF4Lmdvb2dsZWFwaXMuY29tL2FqYXgvbGlicy9qcXVlcnl1aS8xL3RoZW1lcy9iYXNlL2pxdWVyeS11aS5jc3MgfCBodHRwOi8vYWpheC5nb29nbGVhcGlzLmNvbS9hamF4L2xpYnMvanF1ZXJ5dWkvMS44LjAvanF1ZXJ5LXVpLm1pbi5qcyp9DQo8b3B0aW9uIHZhbHVlPSIxLTEiPmpRdWVyeSBVSSAxLjcuMjwvb3B0aW9uPnsqaHR0cDovL2FqYXguZ29vZ2xlYXBpcy5jb20vYWpheC9saWJzL2pxdWVyeXVpLzEvdGhlbWVzL2Jhc2UvanF1ZXJ5LXVpLmNzcyB8IGh0dHA6Ly9hamF4Lmdvb2dsZWFwaXMuY29tL2FqYXgvbGlicy9qcXVlcnl1aS8xLjcuMi9qcXVlcnktdWkubWluLmpzKn0NCjwvb3B0Z3JvdXA+DQo8b3B0Z3JvdXAgbGFiZWw9IlByb3RvdHlwZSI+DQo8b3B0aW9uIHZhbHVlPSIyLTAiPjxzdHJvbmc+UHJvdG90eXBlIGxhdGVzdDwvc3Ryb25nPjwvb3B0aW9uPnsqaHR0cDovL2FqYXguZ29vZ2xlYXBpcy5jb20vYWpheC9saWJzL3Byb3RvdHlwZS8xL3Byb3RvdHlwZS5qcyp9DQo8b3B0aW9uIHZhbHVlPSIyLTEiPlByb3RvdHlwZSAxLjYuMS4wPC9vcHRpb24+eypodHRwOi8vYWpheC5nb29nbGVhcGlzLmNvbS9hamF4L2xpYnMvcHJvdG90eXBlLzEuNi4xLjAvcHJvdG90eXBlLmpzKn0NCjxvcHRpb24gdmFsdWU9IjItMiI+UHJvdG90eXBlIDEuNi4wLjM8L29wdGlvbj57Kmh0dHA6Ly9hamF4Lmdvb2dsZWFwaXMuY29tL2FqYXgvbGlicy9wcm90b3R5cGUvMS42LjAuMy9wcm90b3R5cGUuanMqfQ0KPC9vcHRncm91cD4NCjxvcHRncm91cCBsYWJlbD0ic2NyaXB0LmFjdWxvLnVzIj4NCjxvcHRpb24gdmFsdWU9IjMtMCI+PHN0cm9uZz5zY3JpcHQuYWN1bG8udXMgMS44LjM8L3N0cm9uZz48L29wdGlvbj57Kmh0dHA6Ly9hamF4Lmdvb2dsZWFwaXMuY29tL2FqYXgvbGlicy9wcm90b3R5cGUvMS9wcm90b3R5cGUuanMgfCBodHRwOi8vYWpheC5nb29nbGVhcGlzLmNvbS9hamF4L2xpYnMvc2NyaXB0YWN1bG91cy8xLjguMy9zY3JpcHRhY3Vsb3VzLmpzKn0NCjwvb3B0Z3JvdXA+DQo8b3B0Z3JvdXAgbGFiZWw9IllVSSI+DQo8b3B0aW9uIHZhbHVlPSI0LTAiPjxzdHJvbmc+WVVJIDIuOC4wcjQ8L3N0cm9uZz48L29wdGlvbj57Kmh0dHA6Ly9hamF4Lmdvb2dsZWFwaXMuY29tL2FqYXgvbGlicy95dWkvMi44LjByNC9idWlsZC95dWlsb2FkZXIveXVpbG9hZGVyLW1pbi5qcyp9DQo8b3B0aW9uIHZhbHVlPSI0LTEiPllVSSAyLjcuMDwvb3B0aW9uPnsqImh0dHA6Ly9hamF4Lmdvb2dsZWFwaXMuY29tL2FqYXgvbGlicy95dWkvMi43LjAvYnVpbGQveXVpbG9hZGVyL3l1aWxvYWRlci1taW4uanMqfQ0KPC9vcHRncm91cD4NCjxvcHRncm91cCBsYWJlbD0iTW9vVG9vbHMiPg0KPG9wdGlvbiB2YWx1ZT0iNS0wIj48c3Ryb25nPk1vb3Rvb2xzIDEuMi40PC9zdHJvbmc+PC9vcHRpb24+eypodHRwOi8vYWpheC5nb29nbGVhcGlzLmNvbS9hamF4L2xpYnMvbW9vdG9vbHMvMS4yLjQvbW9vdG9vbHMteXVpLWNvbXByZXNzZWQuanMqfQ0KPG9wdGlvbiB2YWx1ZT0iNS0xIj5Nb290b29scyAxLjIuMzwvb3B0aW9uPnsqaHR0cDovL2FqYXguZ29vZ2xlYXBpcy5jb20vYWpheC9saWJzL21vb3Rvb2xzLzEuMi4zL21vb3Rvb2xzLXl1aS1jb21wcmVzc2VkLmpzKn0NCjwvb3B0Z3JvdXA+DQo8b3B0Z3JvdXAgbGFiZWw9IkRvam8iPg0KPG9wdGlvbiB2YWx1ZT0iNi0wIj48c3Ryb25nPkRvam8gMS40LjE8L3N0cm9uZz48L29wdGlvbj57Kmh0dHA6Ly9hamF4Lmdvb2dsZWFwaXMuY29tL2FqYXgvbGlicy9kb2pvLzEuNC4xL2Rvam8vZG9qby54ZC5qcyp9DQo8b3B0aW9uIHZhbHVlPSI2LTEiPkRvam8gMS4zLjI8L29wdGlvbj57Kmh0dHA6Ly9hamF4Lmdvb2dsZWFwaXMuY29tL2FqYXgvbGlicy9kb2pvLzEuMy4yL2Rvam8vZG9qby54ZC5qcyp9DQo8L29wdGdyb3VwPg0KPG9wdGdyb3VwIGxhYmVsPSJFeHQgQ29yZSI+DQo8b3B0aW9uIHZhbHVlPSI3LTAiPjxzdHJvbmc+RXh0IENvcmUgMy4xPC9zdHJvbmc+PC9vcHRpb24+eypodHRwOi8vZXh0anMuY2FjaGVmbHkubmV0L2V4dC0yLjIvcmVzb3VyY2VzL2Nzcy9leHQtYWxsLmNzcyB8IGh0dHA6Ly9hamF4Lmdvb2dsZWFwaXMuY29tL2FqYXgvbGlicy9leHQtY29yZS8zLjEuMC9leHQtY29yZS5qcyp9DQo8L29wdGdyb3VwPg0KPC9zZWxlY3Q+DQoNCjxkaXYgY2xhc3M9ImRpYWxvZyIgc3R5bGU9Im1hcmdpbi1yaWdodDoxNzBweDsiPg0KIDxkaXYgY2xhc3M9ImhkIj48ZGl2IGNsYXNzPSJjIj48L2Rpdj48L2Rpdj4NCiA8ZGl2IGNsYXNzPSJiZCI+DQogIDxkaXYgY2xhc3M9ImMiPg0KICAgPGRpdiBjbGFzcz0icyI+DQoNCiAgICA8IS0tIGNvbnRlbnQgYXJlYSAtLT4NCiAgICA8ZGl2IGlkPSJub3RpY2ViYXIiPg0KICAgICAgICAgIHtpZiAkbW9kZT09J2VkaXQnfQ0KICAgICAgICAgICAgICA8ZGl2IGlkPSJWQWxlZEJsb2NrIj4NCiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImlubmVyIj4NCiAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJWQWxlZCI+eyRWQWxlZH08L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICB7aWYgJEVfaW5wdXQhPScnfTxhIGhyZWY9IiMiIGlkPSJFX3RyaWciPjxpbWcgc3JjPSIuLi9tb2R1bGVzL1NjcmlwdERlcGxveS9pbWFnZXMvY3NzLWVycm9yLnBuZyIgYWx0PSIiLz48YnIvPkVycm9yczwvYT57L2lmfQ0KICAgICAgICAgICAgICAgICAgICAgIHtpZiAkV19pbnB1dCE9Jyd9PGEgaHJlZj0iIyIgaWQ9IldfdHJpZyI+PGltZyBzcmM9Ii4uL21vZHVsZXMvU2NyaXB0RGVwbG95L2ltYWdlcy9jc3Mtd2Fybi5wbmciIGFsdD0iIi8+PGJyLz5XYXJuaW5nczwvYT57L2lmfQ0KICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgIHsvaWZ9DQogICAgICAgICAgPGEgaHJlZj0iIyIgaWQ9Ik5vdGVfdHJpZyI+PGltZyBzcmM9Ii4uL21vZHVsZXMvU2NyaXB0RGVwbG95L2ltYWdlcy9ub3Rlcy5wbmciIGFsdD0iIi8+PGJyLz5Ob3RlPC9hPg0KICAgICAgICAgICANCiAgICA8L2Rpdj4NCiAgICA8aDEgaWQ9InNjcmlwdE5hbWVfSVMiIGNsYXNzPSJleHRlcm5hbCI+e2lmICR0ZW1wbGF0ZW5hbWUhPScnfXskdGVtcGxhdGVuYW1lfXtlbHNlfVVuc2V0ey9pZn08L2gxPntpZiBpc3NldCgkc2NyaXB0c0dyb3VwKSYmJHNjcmlwdHNHcm91cCE9Jyd9PHNwYW4gaWQ9IlNjcmlwdF9ncm91cHMiPjxhIGhyZWY9IiMiIGlkPSIiPkdyb3VwczwvYT57JHNjcmlwdHNHcm91cE51bWJlcn0gKHskc2NyaXB0c0dyb3VwfSk8L3NwYW4+ey9pZn0NCiAgICA8ZGl2IHN0eWxlPSJjbGVhcjpyaWdodDtwYWRkaW5nOjc4cHggMCAyNnB4O3Bvc2l0aW9uOnJlbGF0aXZlOyI+DQogICAgICAgIDxkaXYgaWQ9InRvb2xCYXItdCI+DQogICAgICAgICAgICA8ZGl2IGlkPSJnb3RvQm94Ij5HbyB0byBMaW5lOiAgPGlucHV0IHR5cGU9InRleHQiIHZhbHVlPSIiIGlkPSJnb3RvIiAvPjwvZGl2Pg0KICAgICAgICAgICAgPGRpdiBpZD0ib3BCYXIiPnskb3B0aW9uYmFyfTwvZGl2Pg0KICAgICAgICAgICAgDQogICAgICAgICAgICANCiAgICAgICAgPC9kaXY+DQogICAgICAgIDxkaXYgaWQ9IkpCX251bWFyZWEiPg0KICAgICAgICAgICAgeyRTY3JpcHRJc19pbnB1dH0NCiAgICAgICAgPC9kaXY+DQogICAgICAgIDxkaXYgaWQ9InRvb2xCYXItYiI+eyRyZXBvcnRiYXJ9PC9kaXY+DQogICAgPC9kaXY+DQoNCg0KICAgIDwhLS0gY29udGVudCBhcmVhIC0tPg0KDQogICA8L2Rpdj4NCiAgPC9kaXY+DQogPC9kaXY+DQogPGRpdiBjbGFzcz0iZnQiPjxkaXYgY2xhc3M9ImMiPjwvZGl2PjwvZGl2Pg0KPC9kaXY+DQoNCg0KDQoNCg0KDQoNCjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyIgc3R5bGU9InBhZGRpbmctbGVmdDoyMHB4OyI+DQp7Knskc3VibWl0fSp9eyRjYW5jZWx9eyp7aWYgJG1vZGU9PSdlZGl0J317JHJldmVydH17JGFwcGx5fXsvaWZ9Kn0NCjwvZGl2Pg0KeyRub3Rlc19pbnB1dH0NCnskZm9ybWVuZH0NCjxkaXYgc3R5bGU9IiBjbGVhcjpsZWZ0OyI+DQoNCiAgeyRyZXBvcnR9DQogICAgICAgICAge2lmICRtb2RlPT0nZWRpdCd9DQogICAgICAgICAgICAgIHtpZiAkRV9pbnB1dCE9Jyd9PGRpdiBjbGFzcz0iaGlkZGVuIiA+PGRpdiBpZD0iRXJyb3JBcmVhIj57JEVfaW5wdXR9PC9kaXY+PC9kaXY+ey9pZn0NCiAgICAgICAgICAgICAge2lmICRXX2lucHV0IT0nJ308ZGl2IGNsYXNzPSJoaWRkZW4iID48ZGl2IGlkPSJ3YXJuQXJlYSI+eyRXX2lucHV0fTwvZGl2PjwvZGl2PiB7L2lmfQ0KICAgICAgICAgIHsvaWZ9DQo8L2Rpdj4NCg==]]></data>
	</file>
	<file>
	  <filename>/templates/Email_Userform_form.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyRmb3JtX3N0YXJ0T0ZGfQ0KeyRmb3JtX2hpZGRlbk9GRn0NCnskZm9ybV9zdWJtaXRPRkZ9DQp7JGZvcm1fZW5kT0ZGfQ0KDQo=]]></data>
	</file>
	<file>
	  <filename>/templates/message.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGgzPnskdGl0bGV9PC9oMz4KPHA+eyRtZXNzYWdlfTwvcD4=]]></data>
	</file>
	<file>
	  <filename>/templates/orig_email_template.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PCEtLSBFTUFJTC0tPg==]]></data>
	</file>
	<file>
	  <filename>/templates/revert.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyRjbGVhclJldl9zdGFydH0NCnskaGlkZGVufQ0KeyRjbGVhclJldn0NCnskY2xlYXJSZXZfZW5kfQ0KDQo8cCA+DQoNCg0KPGEgaHJlZj0iamF2YXNjcmlwdDogaGlzdG9yeS5nbygtMSkiIGlkPSJFeGl0Ij5FeGl0PC9hPiA8L3A+DQp7JHRhYmxlfQ0KPGEgaHJlZj0iamF2YXNjcmlwdDogaGlzdG9yeS5nbygtMSkiIGlkPSJFeGl0Ij5FeGl0PC9hPiA8L3A+DQo=]]></data>
	</file>
	<file>
	  <filename>/templates/sample.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[e2Ntc19tb2R1bGUgbW9kdWxlPVNjcmlwdERlcGxveSBNb2RlPSJkZWZhdWx0IiBCdG49Ik1vZHVsZURvbmF0ZSJ9]]></data>
	</file>
	<file>
	  <filename>/templates/template_tab.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyRmb3Jtc3RhcnR9CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfdGVtcGxhdGV9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfdGVtcGxhdGV9PC9wPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPiZuYnNwOzwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskc3VibWl0fTwvcD4KICA8L2Rpdj4KeyRmb3JtZW5kfQo=]]></data>
	</file>
	<file>
	  <filename>/templates/val_template.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[ICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9IlZBbGVkIj57JFZBbGVkfTwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgIHtpZiAkRV9pbnB1dCE9Jyd9PGEgaHJlZj0iIyIgaWQ9IkVfdHJpZyI+PGltZyBzcmM9Ii4uL21vZHVsZXMvU2NyaXB0RGVwbG95L2ltYWdlcy9jc3MtZXJyb3IucG5nIiBhbHQ9IiIvPjxici8+RXJyb3JzPC9hPnsvaWZ9DQogICAgICAgICAgICAgICAgICAgICAge2lmICRXX2lucHV0IT0nJ308YSBocmVmPSIjIiBpZD0iV190cmlnIj48aW1nIHNyYz0iLi4vbW9kdWxlcy9TY3JpcHREZXBsb3kvaW1hZ2VzL2Nzcy13YXJuLnBuZyIgYWx0PSIiLz48YnIvPldhcm5pbmdzPC9hPnsvaWZ9DQogICAgICAgICAgICAgICAgIAkJPGRpdiBjbGFzcz0iaGlkZGVuIiBzdHlsZT0icG9zaXRpb246YWJzb2x1dGU7IHRvcDotOTk5OWVtOyBsZWZ0Oi05OTk5ZW07Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICB7JHJlcG9ydH0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7aWYgJG1vZGU9PSdlZGl0J30NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2lmICRFX2lucHV0IT0nJ308ZGl2IGNsYXNzPSJoaWRkZW4iID48ZGl2IGlkPSJFcnJvckFyZWEiPnskRV9pbnB1dH08L2Rpdj48L2Rpdj57L2lmfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7aWYgJFdfaW5wdXQhPScnfTxkaXYgY2xhc3M9ImhpZGRlbiIgPjxkaXYgaWQ9Indhcm5BcmVhIj57JFdfaW5wdXR9PC9kaXY+PC9kaXY+IHsvaWZ9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgey9pZn0NCiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCg==]]></data>
	</file>
	<file>
	  <filename>/Tree.inc.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCg0KCS8qKg0KCSogQHBhY2thZ2UgVHJlZQ0KCSogQHRvZG8gbW92ZSBmdW5jdGlvbiB0byBtb3ZlIGEgbm9kZSBlbHNld2hlcmUgaW4gdGhlIHRyZWU/IEhvdyB0byBkZW5vdGUgbG9jYXRpb25zIChwYXRocyk/DQoJKi8NCgkNCgkvKioNCgkqIFBIUDQgVHJlZSBjbGFzcw0KCSoNCgkqPGNvZGU+DQoJKiAvL2NyZWF0ZSBhIHJvb3Qgbm9kZSBieSBwYXNzaW5nIGEgdmFyaWFibGUgd2l0aCB2YWx1ZSBudWxsLCANCgkqIC8vcmV0dXJucyBhIHJlZmVyZW5jZSB0byB0aGUgcm9vdCBub2RlDQoJKiRudWxsID0gbnVsbDsNCgkqJGRhdGEgPSBhcnJheSgiZHVtbXlrZXkiPT4iZHVtbXl2YWx1ZSIpOw0KCSokdHJlZSA9IG5ldyBUcmVlKCRudWxsKTsNCgkqDQoJKiAvLyB5b3UgY2FuIGFkZCB5b3VyIGRhdGEgbG9hZCBhbHNvOg0KCSogLy8kdHJlZSA9IG5ldyBUcmVlKCRudWxsLCRkYXRhKTsNCgkqDQoJKiAvLyBjcmVhdGUgYSBub2RlLCAkbm9kZSBpcyBhIHJlZmVyZW5jZSB0byBhIFRyZWUgb2JqZWN0LCB1c2UgJyYnIQ0KCSokbm9kZSA9ICYkdHJlZS0+YWRkQ2hpbGQoJGRhdGEpOw0KCSogLy8gY3JlYXRlIGFub3RoZXIgbm9kZSBhcyBzdWJub2RlIG9mICRub2RlDQoJKiRzdWJub2RlID0gJiRub2RlLT5hZGRDaGlsZCgkZGF0YSk7DQoJKg0KCSogLy8gZ2V0IHRoZSBsZXZlbCBvZiB0aGlzIG5vZGU6DQoJKmVjaG8gJ3N1Ym5vZGUgaXMgb24gbGV2ZWwnLiRzdWJub2RlLT5nZXRMZXZlbCgpOw0KCSoNCgkqIC8vIGhhdmUgYSBsb29rIG9uIHRoZSBzdHJ1Y3R1cmUNCgkqZWNobyAnPHByZT4nOw0KCSokdHJlZS0+ZWNob1N0cnVjdHVyZSgpOw0KCSplY2hvICc8L3ByZT4nOw0KCSoNCgkqIC8vIGRlbGV0ZSBhIG5vZGUNCgkqJHN1Ym5vZGUtPmRlbGV0ZSgpOw0KCSoNCgkqPC9jb2RlPg0KCSoNCgkqIEBhdXRob3IgTWFydGluIFdlaXMgPHRyZWVAZGF0ZW5yb3VsZXR0ZS5kZT4NCiAgICogQGxpY2Vuc2UgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL2dwbC1saWNlbnNlLnBocCBHTlUgUHVibGljIExpY2Vuc2UNCiAgICogQHZlcnNpb24gZWFybHkgcmVsZWFzZSwgdmVyc2lvbiAwLjUNCiAgICogQGNvcHlyaWdodCBDb3B5cmlnaHQgMjAwNSwgTWFydGluIFdlaXMJDQogICAqLwkNCmNsYXNzIFRyZWUgew0KCS8qKg0KCSogQHBhY2thZ2UgVHJlZQ0KCSogQHRvZG8gbW92ZSBmdW5jdGlvbiB0byBtb3ZlIGEgbm9kZSBlbHNld2hlcmUgaW4gdGhlIHRyZWU/DQoJKi8NCgkJDQoJLyoqDQoJKiBWYXJpYWJsZSBkZWNsYXJhdGlvbg0KCSovDQoJDQoJLyoqDQoJKiBJRCBvZiB0aGlzIE5vZGUNCgkqIEB2YXIgaW50IA0KCSogQGFjY2VzcyBwcml2YXRlDQoJKi8NCgl2YXIgJF9pZDsNCgkNCgkvKioNCgkqIGxldmVsIG9mIHRoaXMgTm9kZQ0KCSogQHZhciBpbnQgDQoJKiBAYWNjZXNzIHByaXZhdGUNCgkqIEBkZXByZWNhdGVkIHVzZSBmdW5jdGlvbiB7QGxpbmsgZ2V0TGV2ZWwoKX0NCgkqLw0KCXZhciAkX2xldmVsOw0KDQoJLyoqDQoJKiBwYXJlbnQgbm9kZSAocmVmZXJlbmNlKQ0KCSogQHZhciBUcmVlIA0KCSogQGFjY2VzcyBwcml2YXRlDQoJKi8NCgl2YXIgJF9wYXJlbnQ7DQoNCgkvKioNCgkqIGFycmF5IG9mIGNoaWxkcmVuLCB3aXRoIHJlZmVyZW5jZXMNCgkqIEB2YXIgYXJyYXkgDQoJKiBAYWNjZXNzIHByaXZhdGUNCgkqLw0KCXZhciAkX2NoaWxkcmVuOw0KDQoJLyoqDQoJKiBkYXRhIGxvYWQgb2YgdGhpcyBub2RlDQoJKiBAYWNjZXNzIHByaXZhdGUNCgkqLw0KCXZhciAkZGF0YTsNCg0KCS8qKg0KCSogZGVmYXVsdCBjb25zdHJ1Y3Rvcg0KCSogDQoJKiBjcmVhdGVzIGEgbm9kZQ0KCSogQGFjY2VzcyBwdWJsaWMNCgkqIEBwYXJhbSAmVHJlZSBvciBudWxsLCBzZXQgcGFyZW50IG9yIG51bGwgZm9yIHJvb3Qgbm9kZSAgDQoJKiBAcGFyYW0gbWl4ZWQgZGF0YSBsb2FkDQoJKiBAcmV0dXJuIFRyZWUNCgkqLw0KCSAgIGZ1bmN0aW9uIFRyZWUoJiRfcGFyZW50LCRkYXRhPW51bGwpIHsNCgkgICAJDQoJICAgCWlmICgkX3BhcmVudD09PW51bGwpew0KCSAgIAkJLy8gdGhpcyBpcyBhIHJvb3Qgbm9kZQ0KCSAgIAkJJHRoaXMtPl9sZXZlbD0wOw0KCSAgIAl9DQoJICAgCSR0aGlzLT5kYXRhPSRkYXRhOw0KCQkJJHRoaXMtPl9jaGlsZHJlbj1hcnJheSgpOyAvL2luaXRpYWxpemUgd2l0aCBubyBjaGlsZHJlbgkJCQ0KCQkJLy8gZm9yIHRoZSByb290IG5vZGUgcGFyZW50IHdpbGwgYmUgbnVsbCANCgkJCSR0aGlzLT5fcGFyZW50PSYkX3BhcmVudDsNCgkJCS8vJHRoaXMtPl9pZD0kaWRfdG9fc2V0Ow0KCQkJLyoNCgkJCWVjaG8gImNyZWF0ZWQgbm9kZSB3aXRoIGlkOiIuJHRoaXMtPl9pZC4iIGFuZCBfcGFyZW50OiIuJF9wYXJlbnQtPmlkOw0KCQkJZWNobyAiY2hpbGRyZW46IjsNCgkJCWVjaG8gIjxwcmU+IjsNCgkJCXByaW50X3IoJHRoaXMtPl9jaGlsZHJlbik7DQoJCQllY2hvICI8L3ByZT4iOw0KCQkJZWNobyAiZGF0YTogIi4kdGhpcy0+ZGF0YTsNCgkJCSovDQoJfQ0KCQ0KCS8qKg0KCSogYWRkIGEgY2hpbGQNCgkqIEBhY2Nlc3MgcHVibGljDQoJKiBAcGFyYW0gbWl4ZWQgZGF0YSBsb2FkDQoJKiBAcmV0dXJuIFRyZWUgcmVmZXJlbmNlIHRvIHRoZSBjaGlsZA0KCSovDQoJZnVuY3Rpb24gJmFkZENoaWxkKCRkYXRhKSB7DQoJCQ0KCQkkdGhpcy0+X2NoaWxkcmVuW109bmV3IFRyZWUoJHRoaXMsJGRhdGEpOw0KCQkvL2dldCB0aGUgYXV0b21hdGljYWxseSBzZXQgaWQgKD1hcnJheSBrZXkpIC0gaXQgaXMgdGhlIGxhc3QgZWxlbWVudCBub3cNCgkJZW5kKCR0aGlzLT5fY2hpbGRyZW4pOw0KCQkka2V5PWtleSgkdGhpcy0+X2NoaWxkcmVuKTsNCgkJJHRoaXMtPl9jaGlsZHJlblska2V5XS0+X3NldElkKCRrZXkpOw0KCQkkdGhpcy0+X2NoaWxkcmVuWyRrZXldLT5sZXZlbCA9ICR0aGlzLT5fbGV2ZWwgKyAxOw0KCQkJLyoNCgkJCWVjaG8gIlxuPGJyPmFkZGVkIGNoaWxkIHdpdGggaWQgIi4ka2V5Ow0KCQkJZWNobyAiY2hpbGRyZW46IjsNCgkJCWVjaG8gIjxwcmU+IjsNCgkJCXByaW50X3IoJHRoaXMtPl9jaGlsZHJlbik7DQoJCQllY2hvICI8L3ByZT4iOw0KCQkJKi8NCgkJcmV0dXJuICR0aGlzLT5fY2hpbGRyZW5bJGtleV07DQoJfQ0KCQ0KCQ0KCS8qKg0KCSogcmVtb3ZlcyBhIGNoaWxkDQoJKiBAcGFyYW0gaW50IGlkDQoJKiBAcmV0dXJuIGJvb2xlYW4gc3VjY2VzcyAodHJ1ZS9mYWxzZSkNCgkqLw0KCWZ1bmN0aW9uIHJlbW92ZUNoaWxkKCRpZCkgew0KCQlpZiAoIWFycmF5X2tleV9leGlzdHMoJGlkLCR0aGlzLT5fY2hpbGRyZW4pKXsNCgkJLy9lY2hvICJyZW1vdmFsIG9mIGNoaWxkIHdpdGgga2V5ICIuJGlkLiIgZmFpbGVkOiBkb2VzIG5vdCBleGlzdCI7DQoJCXJldHVybiBmYWxzZTsNCgkJfQ0KCQllbHNlew0KCQl1bnNldCgkdGhpcy0+X2NoaWxkcmVuWyRpZF0pOw0KCQlyZXR1cm4gdHJ1ZTsNCgkJfQ0KCX0NCg0KCS8qKg0KCSogZGVsZXRlIHRoaXMgbm9kZQ0KCSogQHJldHVybiBib29sZWFuIHN1Y2Nlc3Mgc3RhdGUNCgkqLw0KDQoJZnVuY3Rpb24gZGVsZXRlKCl7DQoJCWlmICghJHRoaXMtPmlzUm9vdCl7DQoJCQkvLyByZW1vdmUgdXNpbmcgdGhlIF9wYXJlbnQNCgkJCXJldHVybiAkdGhpcy0+X3BhcmVudC0+cmVtb3ZlQ2hpbGQoJHRoaXMtPl9pZCk7DQoJCX0NCgkJZWxzZSB7DQoJCQkvLyBpbiB0aGUgcm9vdCBub2RlIHVuc2V0IG9iamVjdA0KCQkJdW5zZXQgKCR0aGlzKTsgLy8tPl9jaGlsZHJlbj1hcnJheSgpOw0KCQkJcmV0dXJuIHRydWU7DQoJCX0NCgl9DQoJCQ0KCS8qKg0KCSogZ2V0IG9iamVjdCBpZA0KCSogQHJldHVybiBpbnQNCgkqLw0KCS8qCQ0KCWZ1bmN0aW9uIHJldHVybkNoaWxkKCRpZCl7DQoJCSRyZXQ9JiRjaGlsZHJlblskaWRdOw0KCQllY2hvICJyZXR1cm4gY2hpbGQ6ICIuJHJldDsNCgkJcmV0dXJuICRyZXQ7DQoJfQ0KCSovDQoJCQ0KCS8qKg0KCSogZ2V0IG9iamVjdCBpZA0KCSogQHJldHVybiBpbnQgaWQNCgkqLw0KCWZ1bmN0aW9uIGdldElkKCl7DQoJCXJldHVybiAkdGhpcy0+X2lkOw0KCX0NCgkNCgkvKioNCgkqIHNldCBvYmplY3QgaWQNCgkqIEBhY2Nlc3MgcHJpdmF0ZQ0KCSogQHJldHVybiB2b2lkDQoJKi8NCglmdW5jdGlvbiBfc2V0SWQoJGlkKXsNCgkJICR0aGlzLT5faWQ9JGlkOw0KCX0NCgkNCgkvKioNCgkqIGdldCBudW1iZXIgb2YgY2hpbGRyZW4NCgkqIEByZXR1cm4gaW50IG51bWJlciBvZiBjaGlsZHJlbgkNCgkqLw0KCWZ1bmN0aW9uIG51bUNoaWxkcmVuKCl7DQoJCXJldHVybiBjb3VudCgkdGhpcy0+X2NoaWxkcmVuKTsNCgl9DQoNCgkvKioNCgkqIGdldCBJRHMgb2YgdGhlIGNoaWxkcmVuDQoJKiBAcmV0dXJuIGFycmF5IG9mIElEcw0KCSovDQoJZnVuY3Rpb24gZ2V0Q2hpbGRyZW5JZHMoKXsNCgkJcmV0dXJuIGFycmF5X2tleXMoJHRoaXMtPl9jaGlsZHJlbik7DQoJfQ0KCQ0KCS8qKg0KCSogY2hlY2sgaWYgdGhpcyBpcyB0aGUgcm9vdCBub2RlDQoJKiBAcmV0dXJuIGJvb2xlYW4NCgkqLw0KCWZ1bmN0aW9uIGlzUm9vdCgpew0KCQlpZiAoJHRoaXMtPl9wYXJlbnQ9PW51bGwpew0KCQkJcmV0dXJuIHRydWU7DQoJCX0NCgkJZWxzZXsNCgkJCXJldHVybiBmYWxzZTsNCgkJfQ0KCX0NCgkNCgkvKioNCgkqIGdldCByb290IE5vZGUNCgkqIEByZXR1cm4gVHJlZSBvYmplY3QgcmVmZXJlbmNlIHRvIHJvb3Qgbm9kZQ0KCSovDQoJZnVuY3Rpb24gJmdldFJvb3QoKXsNCgkJCSR0bXA9JiR0aGlzOw0KCQkJd2hpbGUgKCEkdG1wLT5pc1Jvb3QoKSl7DQoJCQkJLy8gaXRlcmF0ZSB0aHJvdWdoIHBhcmVudHMsIGFkZCBJRHMgdG8gKGJlZ2luIG9mKSBhcnJheQ0KCQkJCSR0bXA9JiR0bXAtPl9wYXJlbnQ7DQoJCQl9DQoJCQlyZXR1cm4gJHRtcDsNCgkJDQoJfQ0KCQ0KCS8qKg0KCSogZ2V0IHRoZSAncGF0aCcgb2YgdGhlIHJvb3Qgbm9kZSB0byB0aGlzIG5vZGUgKElEcykNCgkqIEByZXR1cm4gYXJyYXkgb2YgYW5jZXN0b3JzIElEcw0KCSovDQoJZnVuY3Rpb24gZ2V0UGF0aCgpew0KCQkJJGlkYXJyYXk9YXJyYXkoKTsNCgkJCSR0bXA9JiR0aGlzOw0KCQkJd2hpbGUgKCEkdG1wLT5pc1Jvb3QoKSl7DQoJCQkJLy8gaXRlcmF0ZSB0aHJvdWdoIHBhcmVudHMsIGFkZCBJRHMgdG8gKGJlZ2luIG9mKSBhcnJheQ0KCQkJCWFycmF5X3Vuc2hpZnQgKCRpZGFycmF5LCAkdG1wLT5faWQpOw0KCQkJCSR0bXA9JiR0bXAtPl9wYXJlbnQ7DQoJCQl9DQoJCQlyZXR1cm4gJGlkYXJyYXk7DQoJCQ0KCX0NCgkNCgkvKioNCgkqIGdldCBMZXZlbA0KCSogQHJldHVybiBpbnQgbGV2ZWwNCgkqLw0KCWZ1bmN0aW9uIGdldExldmVsKCl7DQoJCQkkbGV2ZWw9MDsNCgkJCSR0bXA9JiR0aGlzOw0KCQkJd2hpbGUgKCEkdG1wLT5pc1Jvb3QoKSl7DQoJCQkvL2VjaG8gImFkZGluZyBsZXZlbCBmb3IgcGFyZW50LCBpZCA6Ii4kdGhpcy0+X2lkOw0KCQkJCSR0bXA9JiR0bXAtPl9wYXJlbnQ7DQoJCQkJJGxldmVsKys7DQoJCQl9DQoJCQlyZXR1cm4gJGxldmVsOw0KCQkvKg0KCQlpZiAoISR0aGlzLT5pc1Jvb3QoKSl7DQoJCQkvLyBpdGVyYXRlIHRocm91Z2ggX3BhcmVudHMgYW5kIGNvdW50CQkJDQoJCQkNCgkJCXJldHVybiAkbGV2ZWw7DQoJCX0NCgkJCWVsc2V7DQoJCQkJcmV0dXJuIDA7CQkJCQ0KCQl9DQoJCSovDQoJfQ0KCQ0KCS8qDQoJKiBwcmludCB0aGUgVHJlZQ0KCSovDQoJLyoJDQoJZnVuY3Rpb24gcHJpbnRUcmVlKCRwcmVmaXg9JycpIHsNCgkkcHJlZml4Lj0oc3RyaW5nKSR0aGlzLT5faWQuJy4nOw0KCWVjaG8gIlxuPGJyPiI7DQoJZWNobyAnPGZvbnQgY29sb3I9InJlZCI+JzsNCglpZiAoJHRoaXMtPmlzUm9vdCgpKXsNCgkJZWNobyAiUk9PVCI7DQoJfQ0KCWVsc2V7DQoJZWNobyAiSSBhbSBjaGlsZCBub2RlICIuJHByZWZpeDsvLyR0aGlzLT5nZXRMZXZlbCgpLiIuIi4kdGhpcy0+X2lkOw0KCX0NCgllY2hvICJcbjxicj4iOw0KCWVjaG8gIkkgYW0gb24gTGV2ZWw6ICIuJHRoaXMtPmdldExldmVsKCk7DQoJZWNobyAiXG48YnI+IjsNCglpZiAoJHRoaXMtPm51bUNoaWxkcmVuKCk9PTApew0KCQllY2hvICJJIGhhdmUgTk8gY2hpbGRzIChsZWFmIG5vZGUpIjsNCgl9DQoJZWxzZQ0KCXsNCgkJZWNobyAiSSBoYXZlICIuJHRoaXMtPm51bUNoaWxkcmVuKCkuIiBjaGlsZHMiOw0KCQkJZWNobyAiOjxicj48cHJlPiI7DQoJCQlwcmludF9yKCR0aGlzLT5nZXRDaGlsZHJlbklkcygpKTsNCgkJCWVjaG8gIjo8L3ByZT4iOw0KCQkvL2VjaG8gIktsYXNzZW50eXAgY2hpbGQ6ICIuaXNfb2JqZWN0KCR0aGlzLT5fY2hpbGRyZW4pLmdldF9jbGFzcygkdGhpcy0+X2NoaWxkcmVuKTsNCgkJZWNobyAiZGF0YTogPHByZT4iOw0KCX0NCgkJZWNobyAiXG48YnI+IjsNCglwcmludF9yKCR0aGlzLT5kYXRhKTsNCgllY2hvICI8L3ByZT4iOw0KCWVjaG8gIjwvZm9udD4iOw0KCWVjaG8gIlxuPGJyPiI7DQoJDQoJCWlmICgkdGhpcy0+bnVtQ2hpbGRyZW4oKT4wKXsNCgkJCWZvcmVhY2ggKCR0aGlzLT5fY2hpbGRyZW4gYXMgJGNoaWxkKSB7DQoJICAgIAkJJGNoaWxkLT5wcmludFRyZWUoJHByZWZpeCk7DQoJCQl9DQoJCX0NCgl9DQoJKi8NCgkNCgkvKioNCgkqIGVjaG8gdGhlIHN0cnVjdHVyZSBvZiB0aGUgc3Vibm9kZXMgb2Ygb3VyIHRyZWUvbm9kZQ0KCSogQHBhcmFtIHN0cmluZyBwcmVmaXggKHVzZWQgZm9yIHRoZSByZWN1cnNpdmUgb3V0cHV0KQ0KCSogQHJldHVybiB2b2lkDQoJKi8NCglmdW5jdGlvbiBlY2hvU3RydWN0dXJlKCRwcmU9JycpIHsNCgkJZm9yICgkaT0wOyRpPCR0aGlzLT5nZXRMZXZlbCgpOyRpKyspew0KCQkJJHByZS49J3wnOy8vJHRoaXMtPmdldExldmVsKCk7DQoJCX0NCgkJLy8gb3V0cHV0IHRoaXMgbm9kZQ0KCQkvKg0KCQlpZiAoJHRoaXMtPm51bUNoaWxkcmVuKCk+MCl7DQoJCQkkc2lnPScrJzsNCgkJfQ0KCQllbHNlew0KCQkJJHNpZz0nLSc7DQoJCX0NCgkJKi8NCgkJZWNobyAkcHJlLiIrWyIuJHRoaXMtPl9pZC4nXSc7DQoJCWlmIChpc19hcnJheSgkdGhpcy0+ZGF0YSkpew0KCQkJZm9yZWFjaCAoJHRoaXMtPmRhdGEgYXMgJGtleT0+JHZhbHVlKSB7DQoJCSAgICAJCSBlY2hvICcoJy4ka2V5Lid8Jy4kdmFsdWUuJyknOw0KCSAgICAJfQ0KICAgIAl9DQogICAgCQllY2hvICJcbiI7DQoJCWlmICgkdGhpcy0+bnVtQ2hpbGRyZW4oKT4wKXsNCgkJCQ0KCQkJZm9yZWFjaCAoJHRoaXMtPl9jaGlsZHJlbiBhcyAkY2hpbGQpIHsNCgkJICAgIAkkY2hpbGQtPmVjaG9TdHJ1Y3R1cmUoJHByZWZpeCk7DQoJCQl9DQoJCX0NCgl9DQoJLyoNCgkqIA0KCSovDQovKglmdW5jdGlvbiAoKXsNCgl9DQoqLwkNCn0NCg0KPz4NCg==]]></data>
	</file>
</module>
