<?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>Quizzard</name>
	<version>0.8.1</version>
  <mincmsversion>1.0</mincmsversion>
	<help>PGgzPldoYXQgRG9lcyBUaGlzIERvPzwvaDM+CjxwPlF1aXogTW9kdWxlPC9wPgo8aDM+SG93IERvIEkgVXNlIEl0PC9oMz4KPHA+R28gaW50byB0aGUgYWRtaW4uIENyZWF0ZSBhIHF1aXouIFBsYWNlIGEgcXVpeiB0YWcgaW4gc29tZSBjb250ZW50IHBhZ2UuIERvbmUhIChtb3JlIHNwZWNpZmljIGluZm9ybWF0aW9uIGZvbGxvd3MpPC9wPgo8aDQ+UXVpenplcyBUYWI8L2g0Pgo8cD5UaGlzIGxpc3RzIHRoZSBxdWl6emVzIGRlZmluZWQgaW4geW91ciBpbnN0YWxsLiBJdCBnaXZlcyB5b3UgdGhlIGFiaWxpdHkgdG8gYWRkIG5ldyBvbmVzLCB2aWV3IHRoZSByZXN1bHRzIG9mIHF1aXp6ZXMsCmV4cG9ydCBxdWl6emVzLCB2YWxpZGF0ZSBhbGwgdGhlIGFuc3dlcnMgb24gYSBzaW5nbGUgcGFnZSwgZGVsZXRlIHF1aXp6ZXMsIGV0Yy48L3A+CjxwPlRvIHB1dCBhbiBleHRhbnQgcXVpeiBpbiBhIHBhZ2UsIHNpbXBseSBjb3B5IHRoZSB0YWcgdGhhdCBsb29rcyBsaWtlICYjMTIzO2Ntc19tb2R1bGUgbW9kdWxlPSJRdWl6emFyZCIgcXVpel9pZD0ieCImIzEyNTsKd2hlcmUgcXVpel9pZCBpcyB0YWtlbiBmcm9tIHRoZSB0YWJsZSwgYW5kIHBsYWNlIGl0IGluIHlvdXIgcGFnZS4KPGg0PlF1ZXN0aW9uIFR5cGVzPC9oND4KPHA+V2hlbiBjcmVhdGluZyBhIHF1aXosIHRoZXJlIGFyZSB0aHJlZSB0eXBlcyBvZiBxdWVzdGlvbnMsIGFuZCB0aHJlZSB0eXBlcyBvZiAiY29udHJvbCIgcXVlc3Rpb25zLjwvcD4KPHVsPgo8bGk+TXVsdGlwbGUgQ2hvaWNlLiBUaGlzIGlzIGEgcXVlc3Rpb24gZm9sbG93ZWQgYnkgYSBjb2xsZWN0aW9uIG9mIHBvc3NpYmxlIGFuc3dlcnMuIE9ubHkgb25lIGFuc3dlciBjYW4gYmUgc2VsZWN0ZWQsIGFuZCBvbmx5IG9uIGFuc3dlciBjYW4gYmUgY29ycmVjdC48L2xpPgo8bGk+Q2hvb3NlIE9uZSBvciBNb3JlLiBBd2t3YXJkbHkgbmFtZWQsIGJ1dCB0aGlzIGlzIGEgcXVlc3Rpb24gZm9sbG93ZWQgYnkgYSBjb2xsZWN0aW9uIG9mIHBvc3NpYmxlIGFuc3dlcnMuIE11bHRpcGxlIGFuc3dlcnMgbWF5IGJlIHNlbGVjdGVkIGFuZCBtdWx0aXBsZSBhbnN3ZXJzIGNhbiBiZSBjb3JyZWN0IC0tIHRvIGdldCBzY29yZWQgYXMgImNvcnJlY3QsIiB0aGUgcXVpeiB0YWtlciBtdXN0IHNlbGVjdCBhbGwgY29ycmVjdCBhbnN3ZXJzLjwvbGk+CjxsaT5GaWxsIGluIHRoZSBCbGFuayhzKS4gVGhpcyBpcyBhIHNlbnRlbmNlIHdoZXJlIG9uZSBvciBtb3JlIHdvcmRzIGFyZSBtaXNzaW5nLCBhbmQgdGhlIHVzZXIgbXVzdCB0eXBlIGluIHRoZSBjb3JyZWN0IHdvcmQocykuPC9saT4KPGxpPiogUXVpeiBTZWN0aW9uLiBUaGlzIHNwbGl0cyBhIHF1aXouIFlvdSBjYW4gY2hvb3NlIHRvIG51bWJlciBxdWVzdGlvbnMgcmVsYXRpdmUgdG8gdGhlaXIgc2VjdGlvbnMgaWYgeW91IHdhbnQgdG8gc3RydWN0dXJlIGEgYmlnIHF1aXouPC9saT4KPGxpPiogTGluZSBvZiBUZXh0LiBUaGlzIGlzIGV4cGxhbmF0b3J5IHRleHQgdGhhdCBzaG93cyBpbiB0aGUgcXVpei48L2xpPgo8bGk+LSBQYWdlIEJyZWFrLiBUaGlzIHNwbGl0cyBhIHF1aXogaW50byBtdWx0aXBsZSBwYWdlcy48L2xpPgo8L3VsPgo8aDQ+SW1wb3J0IFRhYjwvaDQ+CjxwPllvdSBjYW4gaW1wb3J0IHF1aXogWE1MIGZpbGVzIGhlcmUuIFRvIGdldCBhIFF1aXogWE1MIGZpbGUsIHlvdSBoYXZlIHRvIGhhdmUgZXhwb3J0ZWQgYSBxdWl6IGZyb20gdGhlIG1haW4gUXVpeiB0YWIuPC9wPgo8aDQ+RXh0cmEgRmllbGQgVGFiPC9oND4KPHA+T24gdGhlIGluaXRpYWwgc2lnbi11cCBwYWdlIGZvciB0aGUgcXVpeiwgbWFueSBwZW9wbGUgd2FudGVkIGZpZWxkcyBpbiBhZGRpdGlvbiB0byBuYW1lIGFuZCBlbWFpbC4gVGhpcyBwYWdlIGFsbG93cyB5b3UgdG8gYWRkIGZpZWxkLiBUaGVyZSBhcmUgZm91ciB0eXBlczogdGV4dCBmaWVsZCwgY2hlY2tib3gsIG51bWVyaWMsIGFuZCBVUyBQaG9uZSBudW1iZXIuIEVhY2ggaGFzIGEgdmFyaWFudCB3aGljaCByZXF1aXJlcyBhIHJlc3BvbnNlLiBZb3UgY2FuIHNldCB0aGUgZGlzcGxheSBzaXplIGFuZCBtYXhpbXVtIHNpemUgKHdoaWNoIG9ubHkgYWN0dWFsbHkgd29ya3Mgb24gZmllbGRzIGZvciB3aGljaCBpdCBtYWtlcyBzZW5zZSksIGFuZCBhIHdlaWdodCwgd2hpY2ggZGV0ZXJtaW5lcyB0aGUgZGlzcGxheSBvcmRlci48L3A+CjxwPlRoZXNlIGV4dHJhIGZpZWxkcyB3aWxsIHNob3cgdXAgaW4gdGhlIHJlc3VsdHMgdGhhdCBnZXQgZGlzcGxheWVkIHRvIHRoZSBhZG1pbiBhbmQvb3IgaW4gdGhlIHF1aXogcmVzdWx0cyBlbWFpbCB0aGF0IGdldHMgc2VudC48L3A+CjxoND5TY29yZSBUaHJlc2hvbGQgVGFiPC9oND4KPHA+U29tZSBzcGVjaWFsaXplZCBhcHBsaWNhdGlvbnMgcmVxdWlyZSB0aGF0IHVzZXJzIHNjb3JlIGEgY2VydGFpbiBwZXJjZW50YWdlLiBZb3UgbWF5IHNldCBhIG1pbmltdW0gc2NvcmUgZm9yIHN1Ym1pc3Npb24uIFRoaXMgbWVhbnMgdGhhdCBpZiBhIHVzZXIgaGFzIGEgc2NvcmUgbGVzcyB0aGFuIHRoZSB0aHJlc2hvbGQsIHRoZXkgd2lsbCBiZSBwcmVzZW50ZWQgd2l0aCB0aGUgcXVlc3Rpb25zIHRoYXQgdGhleSBza2lwcGVkIG9yIHRoYXQgYXJlIGluY29ycmVjdCwgYW5kIHRoZXkgbmVlZCB0byBjb3JyZWN0IHRoZXNlIHF1ZXN0aW9ucyB1bnRpbCB0aGVpciBzY29yZSBpcyBncmVhdGVyIHRoYW4gdGhlIHRocmVzaG9sZC48L3A+CjxwPllvdSBjYW4gc2hvdyB0aGVtIGFsbCB0aGVpciBpbmNvcnJlY3QgYW5zd2VycyBvbiBhIHNpbmdsZSBwYWdlLCBzdHJpcHBlZCBvZiB0aGVpciBjb250ZXh0LCBvciB5b3UgY2FuIGhhdmUgdGhlbSBnbyB0aHJvdWdoIHRoZSBxdWl6IGFnYWluLCB3aXRoIHRoZWlyIGVycm9ycyBpbmRpY2F0ZWQuPC9wPgo8aDQ+UXVpeiBUZW1wbGF0ZSBUYWI8L2g0Pgo8cD5CeSBkZWZhdWx0LCB0aGUgUXVpeiBpcyBwcmVzZW50ZWQgdXNpbmcgYSBzdGFuZGFyZCB0ZW1wbGF0ZSB0aGF0IGZvcm1hdHMgcXVlc3Rpb25zLiBZb3UgY291bGQgc3R5bGUgaXQgc2ltcGx5IGJ5IGFsdGVyaW5nIHRoZSBDU1MgaXQgdXNlcywgb3IgeW91IGNhbiBnbyB3aWxkIGFuZCBlZGl0IHRoZSBzbWFydHkgdGVtcGxhdGUgdGhhdCBnZW5lcmF0ZXMgdGhlIHF1aXogaXRzZWxmLiBVc2UgdGhlIGV4aXN0aW5nIHRlbXBsYXRlIGFzIGFuIGV4YW1wbGUuIFRoZSBzbWFydHkgdmFyaWFibGVzIHdpbGwgYmUgZG9jdW1lbnRlZCBmdWxseSBhdCBzb21lIHBvaW50LiBTaW1pbGFybHksIHRoZSBxdWl6ICJyZWdpc3RyYXRpb24iIHBhZ2UgdGVtcGxhdGUgaXMgb24gdGhpcyB0YWIuPC9wPgo8aDQ+RW1haWwgVGVtcGxhdGUgVGFiPC9oND4KPHA+UXVpeiByZXN1bHRzIGFyZSBzZW50IHZpYSBlbWFpbC4gWW91IGNhbiBlZGl0IHRoZSB0ZW1wbGF0ZSBoZXJlLjwvcD4KPGg0PlNjb3JlIFBhZ2UgVGVtcGxhdGUgVGFiPC9oND4KPHA+U2ltaWxhciB0byB0aGUgRW1haWwgVGVtcGxhdGUsIHRoaXMgcGFnZSBzaG93cyB0aGUgdXNlciB0aGVpciBxdWl6IHJlc3VsdHMuIFlvdSBjYW4gZG8gYWxsIHNvcnRzIG9mIGNyZWF0aXZlIHN0dWZmIGhlcmUuIFRoaXMgdGVtcGxhdGUgaXMgYWN0dWFsbHkgaW50ZXJuYWxseSBkb2N1bWVudGVkLjwvcD4KPGg0PkVtYWlsIENvbmZpZyBUYWI8L2g0Pgo8cD5UaGlzIGxldHMgeW91IGN1c3RvbWl6ZSB0aGUgZW1haWwgaGVhZGVyIGRldGFpbHMgZm9yIHJlc3VsdHMgZW1haWxzLiBZb3UgY2FuIGFsc28gb3B0IGhlcmUgdG8gaGF2ZSB0aGUgcXVpeiBhZG1pbmlzdHJhdG9yIHJlY2VpdmUgYSBjb3B5IG9mIGV2ZXJ5IHF1aXogdGFrZW4sIGFuZCB0aGUgcmVzdWx0cy48L3A+CjxoND5DaGFyYWN0ZXIgVG9vbCBUYWI8L2g0Pgo8cD5TZW1pLWV4cGVyaW1lbnRhbCwgdGhpcyBpcyBmb3IgZW5hYmxpbmcgcXVpeiB0YWtlcnMgd2hvIGFyZSBsYW5ndWFnZS1jaGFsbGVuZ2VkIG9yIGhhdmUgbGFuZ3VhZ2UtY2hhbGxlbmdlZCBrZXlib2FyZHMgKGUuZy4sIFUuUy4gQW1lcmljYW5zKSBlbnRlciAiZm9yZWlnbiIgY2hhcmFjdGVycy4gV2hlbiBhY3RpdmUsIGl0IHBvcHMgdXAgYSBmbG9hdGluZyBwYWxldHRlIHRoYXQgYWxsb3dzIHRoZSBxdWl6IHRha2VyIHRvIGluc2VydCBjaGFyYWN0ZXJzIGxpa2UgJnV1bWw7IG9yICZlZ3JhdmU7IGF0IHRoZSBhY3RpdmUgY3Vyc29yIHBvaW50IGluIGEgZmllbGQuIEl0IGFsc28gZW5hYmxlcyBRdWl6IEFkbWlucyB0byBkbyB0aGUgc2FtZSB3aGVuIGNyZWF0aW5nIHF1aXp6ZXMuIEl0IGRvZXMgbm90IHdvcmsgd2l0aCBXWVNJV1lHIGVkaXRvcnMuPC9wPgo8aDQ+Q29uZmlndXJhdGlvbiBUYWI8L2g0Pgo8cD5UaGlzIGlzIHdoZXJlIHlvdSBnZXQgdG8gY2hvb3NlIGEgbG90IG9mIHNwZWNpZmljcyBhYm91dCBob3cgeW91ciBxdWl6IHdpbGwgd29yay48L3A+CjxoMz5Lbm93biBCdWdzPC9oMz4KPHA+UXVpenphcmQgaXMgc3RpbGwgaW5hZGVxdWF0ZWx5IGRvY3VtZW50ZWQuIFRoaXMgd2lsbCBiZSBmaXhlZCBldmVudHVhbGx5LjwvcD4KPGgzPlNwb25zb3JzaGlwPC9oMz4KPHA+VGhpcyBtb2R1bGUncyBpbml0aWFsIGRldmVsb3BtZW50IHdhcyBraW5kbHkgc3BvbnNvcmVkIGJ5IExhdXJhIFpheWFzIG9mIDxhIGhyZWY9Imh0dHA6Ly93d3cuc3BhbmlzaC00LXlvdS5jb20iIHRhcmdldD0iX25ldyI+U3BhbmlzaC00LVlvdTwvYT4sIHdpdGgKYWRkaXRpb25hbCBnZW5lcm91cyBzdXBwb3J0IGZyb20gPGEgaHJlZj0iaHR0cDovL3d3dy5taWNoZWxnb2R0cy5jb20iIHRhcmdldD0iX25ldyI+TWljaGVsR29kdHMuZURlc2lnbjwvYT4sIErDuHJuIEhhdWdsYW5kLCBhbmQgRGF2aWQgTWFnaWxsLiBJIGFwcHJlY2lhdGUgYWxsIHlvdXIgaGVscCE8L3A+CjxoMz5TdXBwb3J0PC9oMz4KPHA+VGhpcyBtb2R1bGUgZG9lcyBub3QgaW5jbHVkZSBjb21tZXJjaWFsIHN1cHBvcnQuIEhvd2V2ZXIsIHRoZXJlIGFyZSBhIG51bWJlciBvZiByZXNvdXJjZXMgYXZhaWxhYmxlIHRvIGhlbHAgeW91IHdpdGggaXQ6PC9wPgo8dWw+CjxsaT5Gb3IgdGhlIGxhdGVzdCB2ZXJzaW9uIG9mIHRoaXMgbW9kdWxlLCBGQVFzLCBvciB0byBmaWxlIGEgQnVnIFJlcG9ydCwgcGxlYXNlIHZpc2l0IHRoZSBDTVMgTWFkZSBTaW1wbGUgIDxhIGhyZWY9Imh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmciPkRldmVsb3BlciBGb3JnZTwvYT4uPC9saT4KPGxpPlRvIG9idGFpbiBjb21tZXJjaWFsIHN1cHBvcnQsIHBsZWFzZSBzZW5kIGFuIGVtYWlsIHRvIHRoZSBhdXRob3IgYXQgPGEgaHJlZj0ibWFpbHRvOnNqZ0BjbXNtb2R1bGVzLmNvbSI+Jmx0O3NqZ0BjbXNtb2R1bGVzLmNvbSZndDs8L2E+LjwvbGk+CjxsaT5BZGRpdGlvbmFsIGRpc2N1c3Npb24gb2YgdGhpcyBtb2R1bGUgbWF5IGFsc28gYmUgZm91bmQgaW4gdGhlIDxhIGhyZWY9Imh0dHA6Ly9mb3J1bS5jbXNtYWRlc2ltcGxlLm9yZyI+Q01TIE1hZGUgU2ltcGxlIEZvcnVtczwvYT4uPC9saT4KPGxpPlRoZSBhdXRob3IgY2FuIG9mdGVuIGJlIGZvdW5kIGluIHRoZSA8YSBocmVmPSJpcmM6Ly9pcmMuZnJlZW5vZGUubmV0LyNjbXMiPkNNUyBJUkMgQ2hhbm5lbDwvYT4uPC9saT4KPGxpPkxhc3RseSwgeW91IG1heSBoYXZlIHNvbWUgc3VjY2VzcyBlbWFpbGluZyB0aGUgYXV0aG9yIGRpcmVjdGx5IGFuZCBncm92ZWxsaW5nIGZvciBmcmVlIHN1cHBvcnQuPC9saT4gIAo8L3VsPgo8cD5BcyBwZXIgdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBwcm92aWRlZCBhcy1pcy4gUGxlYXNlIHJlYWQgdGhlIHRleHQKb2YgdGhlIGxpY2Vuc2UgZm9yIHRoZSBmdWxsIGRpc2NsYWltZXIuPC9wPgo8aDM+Q29weXJpZ2h0IGFuZCBMaWNlbnNlPC9oMz4KPHA+Q29weXJpZ2h0ICZjb3B5OyAyMDA3LCBTYW11ZWwgR29sZHN0ZWluIDxhIGhyZWY9Im1haWx0bzpzamdAY21zbW9kdWxlcy5jb20iPiZsdDtzamdAY21zbW9kdWxlcy5jb20mZ3Q7PC9hPi4gQWxsIFJpZ2h0cyBBcmUgUmVzZXJ2ZWQuPC9wPgo8cD5UaGlzIG1vZHVsZSBoYXMgYmVlbiByZWxlYXNlZCB1bmRlciB0aGUgPGEgaHJlZj0iaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMIj5HTlUgUHVibGljIExpY2Vuc2U8L2E+LiBZb3UgbXVzdCBhZ3JlZSB0byB0aGlzIGxpY2Vuc2UgYmVmb3JlIHVzaW5nIHRoZSBtb2R1bGUuPC9wPjxoMz5EZXBlbmRlbmNpZXM8L2gzPjx1bD48bGk+Q01TTWFpbGVyID0mZ3Q7IDEuNzMuMTA8L2xpPjwvdWw+PGgzPlBhcmFtZXRlcnM8L2gzPjx1bD48bGk+PGVtPihvcHRpb25hbCk8L2VtPiBsYW5nPSJlbl9VUyIgLSBQYXJhbWV0ZXIgaXMgdXNlZCB0byBzcGVjaWZ5IHdoYXQgbGFuZ3VhZ2UgdG8gdXNlIGZvciBkaXNwbGF5IG9uIHRoZSBmcm9udGVuZC4gTm90IGFsbCBtb2R1bGVzIHN1cHBvcnQgb3IgbmVlZCB0aGlzLjwvbGk+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gcXp6Xyo9Im51bGwiIC0gR2VuZXJhbCBRdWl6emFyZCBwYXJhbXM8L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IHF1aXpfaWQ9Im51bGwiIC0gUXVpeiBJRDwvbGk+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gcXVlc3Rpb249Im51bGwiIC0gUXVlc3Rpb24vUGFnZTwvbGk+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gcXVlc3Rpb25faWQ9Im51bGwiIC0gUXVlc3Rpb24vUGFnZTwvbGk+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gbGlzdF90YWtlcnM9Im51bGwiIC0gRmxhZyAtIGxpc3QgdGFrZXJzIGZvciB2aWV3aW5nIHF1aXogcmVzdWx0czwvbGk+PC91bD4=</help>
	<about>PGJyIC8+QXV0aG9yOiBTakcgJmx0O3NqZ0BjbXNtb2R1bGVzLmNvbSZndDs8YnIgLz48YnIgLz5WZXJzaW9uOiAwLjguMTxiciAvPjxiciAvPkNoYW5nZSBIaXN0b3J5OjxiciAvPjx1bD4KPGxpPlZlcnNpb24gMC44LjEgMjUgSmFuIDIwMDkuIFNqRy4gQnV4IGZpeCBmb3IgQ01TTVMgMS41Lnggc2Vzc2lvbiBzZWN1cml0eS48L2xpPgo8bGk+VmVyc2lvbiAwLjgsIDMwIFNlcCAyMDA4LiBTakcuIEFkZGVkIEFkZGl0aW9uYWwgRmllbGRzLiBBZGRlZCBTY29yZSBUaHJlc2hvbGQuIEFkZGVkIHBhZ2luYXRpb24gb3B0aW9uLjwvbGk+IAo8bGk+VmVyc2lvbiAwLjcsIDI2IE1heSAyMDA4LiBTakcuIEFkZGVkICJDb250ZW50IFBhZ2UiIHR5cGUsIHVwZGF0ZWQgZm9yIENNU01TIDEuMi41LjwvbGk+CjxsaT5WZXJzaW9uIDAuNi4zLCAxIERlYyAyMDA3LiBTakcuIEZpeCBmb3IgYW5ub3lpbmcgUEhQIDQgYnVnIHdpdGggaHRtbF9lbnRpdHlfZGVjb2RlIGFuZCBVVEYtOC48L2xpPgo8bGk+VmVyc2lvbiAwLjYuMiwgMjkgTm92IDIwMDcuIFNqRy4gQnVnIGZpeGVzLCBkb2N1bWVudGF0aW9uLjwvbGk+CjxsaT5WZXJzaW9uIDAuNi4xLCAyMCBOb3YgMjAwNy4gU2pHLiBCdWcgZml4ZXMuIFF1aXogc2lnbi11cCBjYW4gbm93IGJlIG1hZGUgb3B0aW9uYWwuPC9saT4KPGxpPlZlcnNpb24gMC42LCBTZXB0IDIwMDcuIFNqRy4gRml4ZWQgdXNlciBsb2dpbi9yZXN0b3JlLiBRdWl6IHJlc3VsdCB2aWV3aW5nIChub3QgeWV0IGRvY3VtZW50ZWQgcHJvcGVybHkpLjwvbGk+CjxsaT5WZXJzaW9uIDAuNSwgQXVnIDIwMDcuIFNqRy4gQWRkZWQgIkZvcmVpZ24iIGNoYXJhY3RlciBwYWxldHRlLjwvbGk+CjxsaT5WZXJzaW9uIDAuNCwgSnVsIDIwMDcuIFNqRy4gQnVnIGZpeGVzLCBhZGRlZCBub24tc2NvcmVkIHF1ZXN0aW9ucy48L2xpPgo8bGk+VmVyc2lvbiAwLjMsIE1heSAyMDA3LiBTakcuIEJ1ZyBmaXhlcywgYWRkZWQgbXVsdGlwbGUtYW5zd2VyIHF1ZXN0aW9ucywgY2x1bXNpbHkgbmFtZWQgIkNob29zZSBPbmUgb3IgTW9yZSIgZm9yIEluc2lwaWQuPC9saT4KPGxpPlZlcnNpb24gMC4yIFNqRy4gQWRkZWQgc3VwcG9ydCBmb3IgbXVsdGlwbGUgaW5wdXRzIGluIGEgc2luZ2xlIGZpbGwtaW4tdGhlLWJsYW5rIHF1ZXN0aW9uLiBBZGRlZCBTZWN0aW9ucywgVGV4dCBMaW5lcywgYW5kIFBhZ2UgQnJlYWtzLjwvbGk+CjxsaT5WZXJzaW9uIDAuMS4xLCBNYXIgMjAwNy4gU2pHLiBCdWcgZml4ZXMgZm9yIGltcG9ydCwgZXRjLjwvbGk+CjxsaT5WZXJzaW9uIDAuMSwgRmViIDIwMDcgKFNqRykuIAo8L3VsPjxiciAvPg==</about>
	<description>This module is a placement exam module.</description>
	<requires>
	  <requiredname>CMSMailer</requiredname>
	  <requiredversion>1.73.10</requiredversion>
	</requires>
	<file>
	  <filename>/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/accented.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGFjY2VudGVkID0gYXJyYXkoCicmQWFjdXRlOycsCicmQWNpcmM7JywKJyZBZ3JhdmU7JywKJyZBcmluZzsnLAonJkF0aWxkZTsnLAonJkF1bWw7JywKJyZDY2VkaWw7JywKJyZFYWN1dGU7JywKJyZFY2lyYzsnLAonJkVncmF2ZTsnLAonJkV1bWw7JywKJyZJYWN1dGU7JywKJyZJY2lyYzsnLAonJklncmF2ZTsnLAonJkl1bWw7JywKJyZOdGlsZGU7JywKJyZPRWxpZzsnLAonJk9hY3V0ZTsnLAonJk9jaXJjOycsCicmT2dyYXZlOycsCicmT3NsYXNoOycsCicmT3RpbGRlOycsCicmT3VtbDsnLAonJlVhY3V0ZTsnLAonJlVjaXJjOycsCicmVWdyYXZlOycsCicmVXVtbDsnLAonJllhY3V0ZTsnLAonJll1bWw7JywKJyZhYWN1dGU7JywKJyZhY2lyYzsnLAonJmFncmF2ZTsnLAonJmFyaW5nOycsCicmYXRpbGRlOycsCicmYXVtbDsnLAonJmNjZWRpbDsnLAonJmVhY3V0ZTsnLAonJmVjaXJjOycsCicmZWdyYXZlOycsCicmZXVtbDsnLAonJmlhY3V0ZTsnLAonJmljaXJjOycsCicmaWdyYXZlJywKJyZpdW1sOycsCicmbnRpbGRlOycsCicmb2FjdXRlOycsCicmb2NpcmM7JywKJyZvZWxpZzsnLAonJm9ncmF2ZTsnLAonJm9zbGFzaDsnLAonJm90aWxkZTsnLAonJm91bWw7JywKJyZzemxpZzsnLAonJnVhY3V0ZTsnLAonJnVjaXJjOycsCicmdWdyYXZlOycsCicmdXVtbDsnLAonJnlhY3V0ZTsnLAonJnl1bWw7JwopOwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.default.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKaWYgKCFpc3NldCgkZ0NtcykpIGV4aXQ7CgppZiAoISBpc3NldCgkcGFyYW1zWydxdWl6X2lkJ10pKQoJewoJZWNobyAkdGhpcy0+TGFuZygnc3BlY2lmeV9xdWl6Jyk7CglyZXR1cm47Cgl9CgkKaWYgKCR0aGlzLT5nZXRUYWtlcklkKCRwYXJhbXNbJ3F1aXpfaWQnXSkgIT0gLTEpCgl7CgkkcGFyYW1zWydxdWVzdGlvbiddPTA7CglpZiAoJHRoaXMtPkdldFByZWZlcmVuY2UoInNhdmVfYnV0dG9uIiwnMCcpID09ICcxJykKCQl7CgkJJHRoaXMtPkRvQWN0aW9uKCdyZXN0b3JlcXVpeicsICRpZCwgJHBhcmFtcywgJHJldHVybmlkKTsKCQlyZXR1cm47CgkJfQoJZWxzZQoJCXsKCQkvLyR0aGlzLT5SZWRpcmVjdCgkaWQsICd0YWtlcXVpeicsJHJldHVybmlkLCAkcGFyYW1zKTsKCQkkdGhpcy0+RG9BY3Rpb24oJ3Rha2VxdWl6JywgJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQpOwkJCgkJcmV0dXJuOwoJCX0KCX0KCQppZiAoJHRoaXMtPkdldFByZWZlcmVuY2UoJ3JlcXVpcmVfdXNlcicsICcxJykgPT0gJzEnKQoJewoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdyZXFfdXNlcicsdHJ1ZSk7Cgl9CmVsc2UKCXsKCSR0aGlzLT5zbWFydHktPmFzc2lnbigncmVxX3VzZXInLGZhbHNlKTsKCX0KCQokZXh0cmFzID0gJHRoaXMtPmdldFBvcHVsYXRlZEV4dHJhRmllbGRzKCRpZCwgJHBhcmFtcywgLTEsIHRydWUpOwoKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdleHRyYXMnLCRleHRyYXMpOwoJCiR0aGlzLT5zbWFydHktPmFzc2lnbigncXVpel9pZCcsJHRoaXMtPkNyZWF0ZUlucHV0SGlkZGVuKCRpZCwncXVpel9pZCcsJHBhcmFtc1sncXVpel9pZCddKSk7CgokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3N0YXJ0Zm9ybScsICR0aGlzLT5DcmVhdGVGb3JtU3RhcnQoJGlkLCAnc2F2ZXF1aXp0YWtlcicsICRyZXR1cm5pZCwncG9zdCcsCgknJywgKCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdxdWl6X2lubGluZScsJzEnKT09JzEnKSkpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2VuZGZvcm0nLCAkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0YWtlcXVpeicsICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsICdxenpfdGFrZXF1aXonLAoJJHRoaXMtPkxhbmcoJ3Rha2VxdWl6JykpKTsKCiR0aGlzLT5zbWFydHktPmFzc2lnbignbWVzc2FnZScsaXNzZXQoJHBhcmFtc1snbW9kdWxlX21lc3NhZ2UnXSk/JHBhcmFtc1snbW9kdWxlX21lc3NhZ2UnXTonJyk7CgkKCQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RpdGxlX25hbWUnLCR0aGlzLT5MYW5nKCd0aXRsZV9uYW1lJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RpdGxlX2VtYWlsJywkdGhpcy0+TGFuZygndGl0bGVfZW1haWwnKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbigndGl0bGVfc2VuZF9hX2NvcHknLCR0aGlzLT5MYW5nKCd0aXRsZV9zZW5kX2FfY29weScpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0aXRsZV9zZW5kX2FfY29weV9oZWxwJywkdGhpcy0+TGFuZygndGl0bGVfc2VuZF9hX2NvcHlfaGVscCcpKTsKCiR0aGlzLT5zbWFydHktPmFzc2lnbignaW5wdXRfbmFtZScsJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsICdxenpfbmFtZScsIGlzc2V0KCRwYXJhbXNbJ3F6el9uYW1lJ10pPyRwYXJhbXNbJ3F6el9uYW1lJ106JycsIDQwLCAyNTUpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdpbnB1dF9lbWFpbCcsJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsICdxenpfZW1haWwnLCBpc3NldCgkcGFyYW1zWydxenpfZW1haWwnXSk/JHBhcmFtc1sncXp6X2VtYWlsJ106JycsIDQwLCAyNTUpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdpbnB1dF9zZW5kX2FfY29weScsJHRoaXMtPkNyZWF0ZUlucHV0Q2hlY2tib3goJGlkLCAncXp6X3NlbmRfYV9jb3B5JywgMSwgaXNzZXQoJHBhcmFtc1sncXp6X3NlbmRfYV9jb3B5J10pPyRwYXJhbXNbJ3F6el9zZW5kX2FfY29weSddOicnKS4nJm5ic3A7Jy4KCQkgICR0aGlzLT5MYW5nKCd0aXRsZV9zZW5kX2FfY29weV9oZWxwJykpOwoKCiAgICAgICAgCmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhYmFzZSgnc2lnbnVwX3RlbXBsYXRlJywnUXVpenphcmQnKTsKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.defaultadmin.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKaWYgKCFpc3NldCgkZ0NtcykpIGV4aXQ7CgppZiAoISAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdBZG1pbmlzdGVyIFF1aXp6ZXMnKSkKCXsKCXJldHVybiAkdGhpcy0+RGlzcGxheUVycm9yUGFnZSgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwkdGhpcy0+TGFuZygnYWNjZXNzZGVuaWVkJykpOwoJfQoJCmluY2x1ZGUgImFjY2VudGVkLnBocCI7CgppZiAoRkFMU0UgPT0gZW1wdHkoJHBhcmFtc1snYWN0aXZlX3RhYiddKSkKICB7CiAgICAkdGFiID0gJHBhcmFtc1snYWN0aXZlX3RhYiddOwogIH0gZWxzZSB7CiAgJHRhYiA9ICcnOwogfQoKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0YWJoZWFkZXJzJywgJHRoaXMtPlN0YXJ0VGFiSGVhZGVycygpIC4KCSR0aGlzLT5TZXRUYWJIZWFkZXIoJ3F1aXp6ZXMnLCR0aGlzLT5MYW5nKCdxdWl6emVzJyksKCdxdWl6emVzJyA9PSAkdGFiKT90cnVlOmZhbHNlKSAuCgkkdGhpcy0+U2V0VGFiSGVhZGVyKCdpbXBvcnQnLCR0aGlzLT5MYW5nKCdpbXBvcnQnKSwoJ2ltcG9ydCcgPT0gJHRhYik/dHJ1ZTpmYWxzZSkgLgoJJHRoaXMtPlNldFRhYkhlYWRlcignZXh0cmFmaWVsZHMnLCR0aGlzLT5MYW5nKCdleHRyYWZpZWxkcycpLCgnZXh0cmEnID09ICR0YWIpP3RydWU6ZmFsc2UpIC4KCSR0aGlzLT5TZXRUYWJIZWFkZXIoJ3RocmVzaG9sZCcsJHRoaXMtPkxhbmcoJ3RocmVzaG9sZCcpLCgndGhyZXNob2xkJyA9PSAkdGFiKT90cnVlOmZhbHNlKSAuCgkkdGhpcy0+U2V0VGFiSGVhZGVyKCdxdWl6dGVtcGxhdGUnLCR0aGlzLT5MYW5nKCdxdWl6dGVtcGxhdGUnKSwoJ3RlbXBsYXRlJyA9PSAkdGFiKT90cnVlOmZhbHNlKSAuCgkkdGhpcy0+U2V0VGFiSGVhZGVyKCdlbWFpbHRlbXBsYXRlJywkdGhpcy0+TGFuZygnZW1haWx0ZW1wbGF0ZScpLCgnZW1haWx0ZW1wbGF0ZScgPT0gJHRhYik/dHJ1ZTpmYWxzZSkgLgoJJHRoaXMtPlNldFRhYkhlYWRlcignc2NvcmV0ZW1wbGF0ZScsJHRoaXMtPkxhbmcoJ3Njb3JldGVtcGxhdGUnKSwoJ3Njb3JldGVtcGxhdGUnID09ICR0YWIpP3RydWU6ZmFsc2UpIC4KCSR0aGlzLT5TZXRUYWJIZWFkZXIoJ2VtYWlsY29uZmlnJywkdGhpcy0+TGFuZygnZW1haWxjb25maWcnKSwoJ2VtYWlsJyA9PSAkdGFiKT90cnVlOmZhbHNlKSAuCgkkdGhpcy0+U2V0VGFiSGVhZGVyKCdjaGFycycsJHRoaXMtPkxhbmcoJ2NoYXJhY3RlcnMnKSwoJ2NoYXJhY3RlcnMnID09ICR0YWIpP3RydWU6ZmFsc2UpIC4KCSR0aGlzLT5TZXRUYWJIZWFkZXIoJ2NvbmZpZycsJHRoaXMtPkxhbmcoJ2NvbmZpZ3VyYXRpb24nKSwoJ2NvbmZpZ3VyYXRpb24nID09ICR0YWIpP3RydWU6ZmFsc2UpIC4KCSR0aGlzLT5FbmRUYWJIZWFkZXJzKCkuCgkkdGhpcy0+U3RhcnRUYWJDb250ZW50KCkpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3N0YXJ0X3F1aXp0YWInLCR0aGlzLT5TdGFydFRhYigncXVpenplcycpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzdGFydF9jb25maWd0YWInLCR0aGlzLT5TdGFydFRhYignY29uZmlnJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3N0YXJ0X2VtYWlsY29uZmlndGFiJywkdGhpcy0+U3RhcnRUYWIoJ2VtYWlsY29uZmlnJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3N0YXJ0X2ltcG9ydHRhYicsJHRoaXMtPlN0YXJ0VGFiKCdpbXBvcnQnKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignc3RhcnRfZXh0cmF0YWInLCR0aGlzLT5TdGFydFRhYignZXh0cmFmaWVsZHMnKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignc3RhcnRfdGhyZXNob2xkdGFiJywkdGhpcy0+U3RhcnRUYWIoJ3RocmVzaG9sZCcpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzdGFydF9xdWl6dGVtcGxhdGV0YWInLCR0aGlzLT5TdGFydFRhYigncXVpenRlbXBsYXRlJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3N0YXJ0X2NoYXJhY3RlcnRhYicsJHRoaXMtPlN0YXJ0VGFiKCdjaGFycycpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzdGFydF9lbWFpbHRlbXBsYXRldGFiJywkdGhpcy0+U3RhcnRUYWIoJ2VtYWlsdGVtcGxhdGUnKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignc3RhcnRfc2NvcmV0ZW1wbGF0ZXRhYicsJHRoaXMtPlN0YXJ0VGFiKCdzY29yZXRlbXBsYXRlJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2VuZF90YWInLCR0aGlzLT5FbmRUYWIoKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignZW5kX3RhYnMnLCR0aGlzLT5FbmRUYWJDb250ZW50KCkpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3N0YXJ0X3VwbG9hZGZvcm0nLCR0aGlzLT5DcmVhdGVGb3JtU3RhcnQoJGlkLAoJCQknaW1wb3J0cXVpeicsICRyZXR1cm5pZCwncG9zdCcsJ211bHRpcGFydC9mb3JtLWRhdGEnKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignc3RhcnRfY29uZmlnZm9ybScsJHRoaXMtPkNyZWF0ZUZvcm1TdGFydCgkaWQsCgkJCSdzYXZlYWRtaW5wcmVmcycsICRyZXR1cm5pZCwncG9zdCcpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzdGFydF90ZW1wbGF0ZWZvcm0nLCR0aGlzLT5DcmVhdGVGb3JtU3RhcnQoJGlkLAoJCQknc2F2ZXRlbXBsYXRlcycsICRyZXR1cm5pZCwncG9zdCcpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzdGFydF90aHJlc2hvbGRmb3JtJywkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0KCRpZCwKCQkJJ3NhdmV0aHJlc2hvbGQnLCAkcmV0dXJuaWQsJ3Bvc3QnKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignZW5kX2Zvcm0nLCAkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdtZXNzYWdlJyxpc3NldCgkcGFyYW1zWydtb2R1bGVfbWVzc2FnZSddKT8kcGFyYW1zWydtb2R1bGVfbWVzc2FnZSddOicnKTsKCiR0aGlzLT5zbWFydHktPmFzc2lnbignY29sdW1uX2VtYmVkJywkdGhpcy0+TGFuZygnY29sdW1uX2VtYmVkJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RpdGxlX3NlbmRfZW1haWwnLCR0aGlzLT5MYW5nKCd0aXRsZV9zZW5kX2VtYWlsJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RpdGxlX3F1ZXN0aW9uc19jYXNlX3NlbnNpdGl2ZScsJHRoaXMtPkxhbmcoJ3RpdGxlX3F1ZXN0aW9uc19jYXNlX3NlbnNpdGl2ZScpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0aXRsZV9maWxsaW5fbGVuJywkdGhpcy0+TGFuZygndGl0bGVfZmlsbGluX2xlbicpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0aXRsZV9leHRyYWZpZWxkcycsJHRoaXMtPkxhbmcoJ3RpdGxlX2V4dHJhZmllbGRzJykpOwoKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0aXRsZV9zZW5kX3RvJywkdGhpcy0+TGFuZygndGl0bGVfc2VuZF90bycpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0aXRsZV9kZWZhdWx0X3F1ZXN0aW9ucycsJHRoaXMtPkxhbmcoJ3RpdGxlX2RlZmF1bHRfcXVlc3Rpb25zJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RpdGxlX3BhZ2luYXRpb24nLCR0aGlzLT5MYW5nKCd0aXRsZV9wYWdpbmF0aW9uJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RpdGxlX3Nob3dfcGFnZW5hdicsJHRoaXMtPkxhbmcoJ3RpdGxlX3Nob3dfcGFnZW5hdicpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0aXRsZV9wYWdpbmF0aW9uX2hlbHAnLCR0aGlzLT5MYW5nKCd0aXRsZV9wYWdpbmF0aW9uX2hlbHAnKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbigndGl0bGVfbWF4X2Fuc3dlcnMnLCR0aGlzLT5MYW5nKCd0aXRsZV9tYXhfYW5zd2VycycpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0aXRsZV9maWxlX3RvX3VwbG9hZCcsJHRoaXMtPkxhbmcoJ3RpdGxlX2ZpbGVfdG9fdXBsb2FkJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RpdGxlX3Nob3dfcGFsZXR0ZScsJHRoaXMtPkxhbmcoJ3RpdGxlX3Nob3dfcGFsZXR0ZScpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0aXRsZV9wYWxldHRlX2NoYXJzJywkdGhpcy0+TGFuZygndGl0bGVfcGFsZXR0ZV9jaGFycycpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0aXRsZV9xdWl6X3RlbXBsYXRlJywkdGhpcy0+TGFuZygndGl0bGVfcXVpel90ZW1wbGF0ZScpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0aXRsZV9zaWdudXBfdGVtcGxhdGUnLCR0aGlzLT5MYW5nKCd0aXRsZV9zaWdudXBfdGVtcGxhdGUnKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbigndGl0bGVfZW1haWxfdGVtcGxhdGUnLCR0aGlzLT5MYW5nKCd0aXRsZV9lbWFpbF90ZW1wbGF0ZScpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0aXRsZV9zY29yZV90ZW1wbGF0ZScsJHRoaXMtPkxhbmcoJ3RpdGxlX3Njb3JlX3RlbXBsYXRlJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RpdGxlX2VtYWlsX2Zyb20nLCR0aGlzLT5MYW5nKCd0aXRsZV9lbWFpbF9mcm9tJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RpdGxlX2VtYWlsX2Zyb21uYW1lJywkdGhpcy0+TGFuZygndGl0bGVfZW1haWxfZnJvbW5hbWUnKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbigndGl0bGVfZW1haWxfc3ViamVjdCcsJHRoaXMtPkxhbmcoJ3RpdGxlX2VtYWlsX3N1YmplY3QnKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbigndGl0bGVfbXVsdGlwbGVfZmlsbGluJywkdGhpcy0+TGFuZygndGl0bGVfbXVsdGlwbGVfZmlsbGluJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RpdGxlX3NhdmVfYnV0dG9uJywkdGhpcy0+TGFuZygndGl0bGVfc2F2ZV9idXR0b24nKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbigndGl0bGVfcmVudW1iZXJfYnlfc2VjdGlvbicsJHRoaXMtPkxhbmcoJ3RpdGxlX3JlbnVtYmVyX2J5X3NlY3Rpb24nKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbigndGl0bGVfc21hcnR5X3Byb2Nlc3NfcGFnZXMnLCR0aGlzLT5MYW5nKCd0aXRsZV9zbWFydHlfcHJvY2Vzc19wYWdlcycpKTsKCiR0aGlzLT5zbWFydHktPmFzc2lnbigndGl0bGVfd3lzaXd5Z19xdWVzdGlvbnMnLCR0aGlzLT5MYW5nKCd0aXRsZV93eXNpd3lnX3F1ZXN0aW9ucycpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0aXRsZV9odG1sX2VtYWlsJywkdGhpcy0+TGFuZygndGl0bGVfaHRtbF9lbWFpbCcpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0aXRsZV9yZXF1aXJlX3VzZXInLCR0aGlzLT5MYW5nKCd0aXRsZV9yZXF1aXJlX3VzZXInKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbigndGl0bGVfcXVpel9pbmxpbmUnLCR0aGlzLT5MYW5nKCd0aXRsZV9xdWl6X2lubGluZScpKTsKCiR0aGlzLT5zbWFydHktPmFzc2lnbigndGl0bGVfZmlsZV90b191cGxvYWRfaGVscCcsJHRoaXMtPkxhbmcoJ3RpdGxlX2ZpbGVfdG9fdXBsb2FkX2hlbHAnKSk7CgokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2lucHV0X3F1aXpfdGVtcGxhdGUnLCAkdGhpcy0+Q3JlYXRlVGV4dEFyZWEoZmFsc2UsCgkkaWQsICR0aGlzLT5HZXRUZW1wbGF0ZSgncXVpel90ZW1wbGF0ZScsICdRdWl6emFyZCcpLAoJJ3F1aXpfdGVtcGxhdGUnLCAnJywnJywnJywnJyw4MCwyNSkpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2lucHV0X3NpZ251cF90ZW1wbGF0ZScsICR0aGlzLT5DcmVhdGVUZXh0QXJlYShmYWxzZSwKCSRpZCwgJHRoaXMtPkdldFRlbXBsYXRlKCdzaWdudXBfdGVtcGxhdGUnLCAnUXVpenphcmQnKSwKCSdzaWdudXBfdGVtcGxhdGUnLCAnJywnJywnJywnJyw4MCwyNSkpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2lucHV0X3Njb3JlX3RlbXBsYXRlJywgJHRoaXMtPkNyZWF0ZVRleHRBcmVhKGZhbHNlLAoJJGlkLCAkdGhpcy0+R2V0VGVtcGxhdGUoJ3Njb3JlX3RlbXBsYXRlJywgJ1F1aXp6YXJkJyksCgknc2NvcmVfdGVtcGxhdGUnLCAnJywnJywnJywnJyw4MCwyNSkpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2lucHV0X2VtYWlsX3RlbXBsYXRlJywgJHRoaXMtPkNyZWF0ZVRleHRBcmVhKGZhbHNlLAoJJGlkLCAkdGhpcy0+R2V0VGVtcGxhdGUoJ2VtYWlsX3RlbXBsYXRlJywgJ1F1aXp6YXJkJyksCgknZW1haWxfdGVtcGxhdGUnLCAnJywnJywnJywnJyw4MCwyNSkpOwoKCiRxdWVzdGlvbnMgPSBhcnJheSgpOwpmb3IoJGk9MTskaTwzMTskaSsrKQoJewoJJHF1ZXN0aW9uc1skaV09JGk7Cgl9CiR0aGlzLT5zbWFydHktPmFzc2lnbignaW5wdXRfZGVmYXVsdF9xdWVzdGlvbnMnLCAkdGhpcy0+Q3JlYXRlSW5wdXREcm9wZG93bigkaWQsICdkZWZhdWx0X3F1ZXN0aW9ucycsICRxdWVzdGlvbnMsIC0xLCAgJHRoaXMtPkdldFByZWZlcmVuY2UoJ2RlZmF1bHRfcXVlc3Rpb25zJywnMTAnKSkpOwoKJGFuc3dlcnMgPSBhcnJheSgpOwpmb3IoJGk9MTskaTwxNjskaSsrKQoJewoJJGFuc3dlcnNbJGldPSRpOwoJfQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2lucHV0X21heF9hbnN3ZXJzJywgJHRoaXMtPkNyZWF0ZUlucHV0RHJvcGRvd24oJGlkLCAnbWF4X2Fuc3dlcnMnLCAkYW5zd2VycywgLTEsICAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnbWF4X2Fuc3dlcnMnLCc1JykpKTsKCgokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RpdGxlX3Njb3JlX3RocmVzaG9sZCcsJHRoaXMtPkxhbmcoJ3RpdGxlX3Njb3JlX3RocmVzaG9sZCcpKTsKJHRocmVzaCA9IGFycmF5KCk7CmZvcigkaT0wOyRpPDEwMDskaSsrKQoJewoJJHRocmVzaFskaS4nJSddPSRpOwoJfQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2lucHV0X3Njb3JlX3RocmVzaG9sZCcsCgkkdGhpcy0+Q3JlYXRlSW5wdXREcm9wZG93bigkaWQsICd0aHJlc2hvbGQnLCAkdGhyZXNoLCAtMSwgICR0aGlzLT5HZXRQcmVmZXJlbmNlKCd0aHJlc2hvbGQnLCcwJykpKTsKCiR0aGlzLT5zbWFydHktPmFzc2lnbigndGl0bGVfdGhyZXNob2xkX21lc3NhZ2UnLCR0aGlzLT5MYW5nKCd0aXRsZV90aHJlc2hvbGRfbWVzc2FnZScpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdpbnB1dF90aHJlc2hvbGRfbWVzc2FnZScsICR0aGlzLT5DcmVhdGVUZXh0QXJlYShmYWxzZSwKCSRpZCwgJHRoaXMtPkdldFByZWZlcmVuY2UoJ3RocmVzaG9sZF9tZXNzYWdlJywgJHRoaXMtPkxhbmcoJ3RocmVzaG9sZF9tZXNzYWdlJykpLAoJJ3RocmVzaG9sZF9tZXNzYWdlJywgJycsJycsJycsJycsODAsMjUpKTsKCiR0aGlzLT5zbWFydHktPmFzc2lnbigndGl0bGVfdGhyZXNob2xkX3NpbmdsZV9wYWdlJywkdGhpcy0+TGFuZygndGl0bGVfdGhyZXNob2xkX3NpbmdsZV9wYWdlJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2lucHV0X3RocmVzaG9sZF9zaW5nbGVfcGFnZScsJHRoaXMtPkNyZWF0ZUlucHV0Q2hlY2tib3goJGlkLCAndGhyZXNob2xkX3NpbmdsZV9wYWdlJywgMSwKCSR0aGlzLT5HZXRQcmVmZXJlbmNlKCd0aHJlc2hvbGRfc2luZ2xlX3BhZ2UnLCAnMCcpKS4nJm5ic3A7Jy4kdGhpcy0+TGFuZygndGl0bGVfdGhyZXNob2xkX3NpbmdsZV9wYWdlX2hlbHAnKSk7CgokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RpdGxlX3F1ZXN0aW9uX3dyb25nJywkdGhpcy0+TGFuZygndGl0bGVfcXVlc3Rpb25fd3JvbmcnKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignaW5wdXRfcXVlc3Rpb25fd3JvbmcnLCR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCAncXVlc3Rpb25fd3JvbmcnLAoJJHRoaXMtPkdldFByZWZlcmVuY2UoJ3F1ZXN0aW9uX3dyb25nJywgJHRoaXMtPkxhbmcoJ3F1ZXN0aW9uX3dyb25nJykpKSk7CgoKJHBhZ2luYXRpb25zID0gYXJyYXkoKTsKJHBhZ2luYXRpb25zWyR0aGlzLT5MYW5nKCd0aXRsZV9wYWdpbmF0ZV9jb3VudCcpXSA9ICdjb3VudCc7CiRwYWdpbmF0aW9uc1skdGhpcy0+TGFuZygndGl0bGVfcGFnaW5hdGVfYnJlYWsnKV0gPSAnYnJlYWsnOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2lucHV0X3BhZ2luYXRpb24nLCR0aGlzLT5DcmVhdGVJbnB1dFJhZGlvR3JvdXAoJGlkLCAncGFnaW5hdGlvbicsICRwYWdpbmF0aW9ucywgJHRoaXMtPkdldFByZWZlcmVuY2UoJ3BhZ2luYXRpb24nLCdjb3VudCcpKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignaW5wdXRfc2hvd19wYWdlbmF2JywkdGhpcy0+Q3JlYXRlSW5wdXRDaGVja2JveCgkaWQsICdzaG93X3BhZ2VuYXYnLCAxLAoJJHRoaXMtPkdldFByZWZlcmVuY2UoJ3Nob3dfcGFnZW5hdicsICcwJykpKTsKCgokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2lucHV0X3NlbmRfZW1haWwnLCR0aGlzLT5DcmVhdGVJbnB1dENoZWNrYm94KCRpZCwgJ3NlbmRfZW1haWwnLCAxLAoJJHRoaXMtPkdldFByZWZlcmVuY2UoJ3NlbmRfZW1haWwnLCAnMScpKS4nJm5ic3A7Jy4kdGhpcy0+TGFuZygndGl0bGVfc2VuZF9lbWFpbCcpKTsKCiR0aGlzLT5zbWFydHktPmFzc2lnbignaW5wdXRfcmVxdWlyZV91c2VyJywkdGhpcy0+Q3JlYXRlSW5wdXRDaGVja2JveCgkaWQsICdyZXF1aXJlX3VzZXInLCAxLAoJJHRoaXMtPkdldFByZWZlcmVuY2UoJ3JlcXVpcmVfdXNlcicsICcxJykpLicmbmJzcDsnLiR0aGlzLT5MYW5nKCd0aXRsZV9yZXF1aXJlX3VzZXJfaGVscCcpKTsKCiR0aGlzLT5zbWFydHktPmFzc2lnbignaW5wdXRfcXVpel9pbmxpbmUnLCR0aGlzLT5DcmVhdGVJbnB1dENoZWNrYm94KCRpZCwgJ3F1aXpfaW5saW5lJywgMSwKCSR0aGlzLT5HZXRQcmVmZXJlbmNlKCdxdWl6X2lubGluZScsICcxJykpLicmbmJzcDsnLiR0aGlzLT5MYW5nKCd0aXRsZV9xdWl6X2lubGluZV9oZWxwJykpOwoKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdpbnB1dF9zbWFydHlfcHJvY2Vzc19wYWdlcycsJHRoaXMtPkNyZWF0ZUlucHV0Q2hlY2tib3goJGlkLCAnc21hcnR5X3BhZ2VzJywgMSwKCQkkdGhpcy0+R2V0UHJlZmVyZW5jZSgnc21hcnR5X3BhZ2VzJywgJzAnKSkuJyZuYnNwOycuJHRoaXMtPkxhbmcoJ3RpdGxlX3NtYXJ0eV9wcm9jZXNzX3BhZ2VzX2hlbHAnKSk7CgokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2lucHV0X3F1ZXN0aW9uc19jYXNlX3NlbnNpdGl2ZScsJHRoaXMtPkNyZWF0ZUlucHV0Q2hlY2tib3goJGlkLCAnY2FzZV9zZW5zaXRpdmUnLCAxLAoJJHRoaXMtPkdldFByZWZlcmVuY2UoJ2Nhc2Vfc2Vuc2l0aXZlJywnMCcpKS4nJm5ic3A7Jy4kdGhpcy0+TGFuZygndGl0bGVfcXVlc3Rpb25zX2Nhc2Vfc2Vuc2l0aXZlX2hlbHAnKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignaW5wdXRfc2VuZF90bycsJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsICdzZW5kX3RvJywgJHRoaXMtPkdldFByZWZlcmVuY2UoJ3NlbmRfdG8nLCd5b3VAeW91cmRvbWFpbi5jb20nKSwgNDAsIDI1NSkpOwoKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdpbnB1dF9lbWFpbF9zdWJqZWN0JywkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwKCSdlbWFpbF9zdWJqZWN0JywkdGhpcy0+R2V0UHJlZmVyZW5jZSgiZW1haWxfc3ViamVjdCIsCgkkdGhpcy0+TGFuZygnZW1haWxfc3ViamVjdCcpKSwgNDAsIDI1NSkpOwoJCiR0aGlzLT5zbWFydHktPmFzc2lnbignaW5wdXRfZW1haWxfZnJvbScsJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsCgknZW1haWxfZnJvbScsJHRoaXMtPkdldFByZWZlcmVuY2UoImVtYWlsX2Zyb20iLAoJJHRoaXMtPkxhbmcoJ2VtYWlsX2Zyb20nKSksIDQwLCAyNTUpKTsKCQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2lucHV0X2VtYWlsX2Zyb21uYW1lJywkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwKCSdlbWFpbF9mcm9tbmFtZScsJHRoaXMtPkdldFByZWZlcmVuY2UoImVtYWlsX2Zyb21uYW1lIiwKCSR0aGlzLT5MYW5nKCdlbWFpbF9mcm9tbmFtZScpKSwgNDAsIDI1NSkpOwogICAgICAJCiR0aGlzLT5zbWFydHktPmFzc2lnbignaW5wdXRfZmlsbGluX2xlbicsJHRoaXMtPkNyZWF0ZUlucHV0Q2hlY2tib3goJGlkLCAnZmlsbGluX2xlbicsIDEsCgkkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZmlsbGluX2xlbicsICcxJykpLicmbmJzcDsnLiR0aGlzLT5MYW5nKCd0aXRsZV9maWxsaW5fbGVuX2hlbHAnKSk7CgokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2lucHV0X211bHRpcGxlX2ZpbGxpbicsJHRoaXMtPkNyZWF0ZUlucHV0Q2hlY2tib3goJGlkLCAnbXVsdGlwbGVfZmlsbGluJywgMSwKCSR0aGlzLT5HZXRQcmVmZXJlbmNlKCdtdWx0aXBsZV9maWxsaW4nLCAnMScpKS4nJm5ic3A7Jy4kdGhpcy0+TGFuZygndGl0bGVfbXVsdGlwbGVfZmlsbGluX2hlbHAnKSk7CgoKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdpbnB1dF9maWxlX3RvX3VwbG9hZCcsJHRoaXMtPkNyZWF0ZUlucHV0RmlsZSgkaWQsICd0ZXh0ZmlsZScpKTsKCiR0aGlzLT5zbWFydHktPmFzc2lnbignaW5wdXRfc2hvd19wYWxldHRlJywkdGhpcy0+Q3JlYXRlSW5wdXRDaGVja2JveCgkaWQsICdzaG93X3BhbGV0dGUnLCAxLAoJJHRoaXMtPkdldFByZWZlcmVuY2UoJ3Nob3dfcGFsZXR0ZScsICcwJykpLicmbmJzcDsnLiR0aGlzLT5MYW5nKCd0aXRsZV9zaG93X3BhbGV0dGVfaGVscCcpKTsKCiR0aGlzLT5zbWFydHktPmFzc2lnbignaW5wdXRfc2F2ZV9idXR0b24nLCR0aGlzLT5DcmVhdGVJbnB1dENoZWNrYm94KCRpZCwgJ3NhdmVfYnV0dG9uJywgMSwKCSR0aGlzLT5HZXRQcmVmZXJlbmNlKCdzYXZlX2J1dHRvbicsICcwJykpLicmbmJzcDsnLiR0aGlzLT5MYW5nKCd0aXRsZV9zYXZlX2J1dHRvbl9oZWxwJykpOwoKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdpbnB1dF9yZW51bWJlcl9ieV9zZWN0aW9uJywkdGhpcy0+Q3JlYXRlSW5wdXRDaGVja2JveCgkaWQsICdyZW51bWJlcl9ieV9zZWN0aW9uJywgMSwKCSR0aGlzLT5HZXRQcmVmZXJlbmNlKCdyZW51bWJlcl9ieV9zZWN0aW9uJywgJzAnKSkuJyZuYnNwOycuJHRoaXMtPkxhbmcoJ3RpdGxlX3JlbnVtYmVyX2J5X3NlY3Rpb25faGVscCcpKTsKCiR0aGlzLT5zbWFydHktPmFzc2lnbignaW5wdXRfd3lzaXd5Z19xdWVzdGlvbnMnLCR0aGlzLT5DcmVhdGVJbnB1dENoZWNrYm94KCRpZCwgJ3d5c2l3eWdfcXVlc3Rpb25zJywgMSwKCSR0aGlzLT5HZXRQcmVmZXJlbmNlKCd3eXNpd3lnX3F1ZXN0aW9ucycsICcwJykpLicmbmJzcDsnLiR0aGlzLT5MYW5nKCd0aXRsZV93eXNpd3lnX3F1ZXN0aW9ucycpKTsKCiR0aGlzLT5zbWFydHktPmFzc2lnbignaW5wdXRfaHRtbF9lbWFpbCcsJHRoaXMtPkNyZWF0ZUlucHV0Q2hlY2tib3goJGlkLCAnaHRtbF9lbWFpbCcsIDEsCgkkdGhpcy0+R2V0UHJlZmVyZW5jZSgnaHRtbF9lbWFpbCcsICcwJykpLicmbmJzcDsnLiR0aGlzLT5MYW5nKCd0aXRsZV9odG1sX2VtYWlsJykpOwoKCgokcGFsZXR0ZV9jaGFycyA9ICcnOwokc2hvd19jaGFyID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ3Nob3dfY2hhcl9saXN0JywKJzAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExJyk7CmZvciAoJGk9MDskaTxjb3VudCgkYWNjZW50ZWQpOyRpKyspCgl7CgkkcGFsZXR0ZV9jaGFycyAuPSAnPGlucHV0IHR5cGU9ImNoZWNrYm94IiBpZD0iYWMnLiRpLgoJCSciIG5hbWU9IicuJGlkLidhY18nLiRpLiciIHZhbHVlPSIxIic7CglpZiAoJHNob3dfY2hhclskaV09PScxJykKCQl7CgkJJHBhbGV0dGVfY2hhcnMgLj0gJyBjaGVja2VkPSJjaGVja2VkIic7CgkJfQoJJHBhbGV0dGVfY2hhcnMgLj0gJz48bGFiZWwgZm9yPSJhYycuJGkuJyI+Jy4kYWNjZW50ZWRbJGldLic8L2xhYmVsPiAnOwoJfQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2lucHV0X3BhbGV0dGVfY2hhcnMnLCRwYWxldHRlX2NoYXJzKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0aXRsZV9zZWxlY3RfYWxsJywkdGhpcy0+TGFuZygndGl0bGVfc2VsZWN0X2FsbCcpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0aXRsZV9zZWxlY3Rfbm9uZScsJHRoaXMtPkxhbmcoJ3RpdGxlX3NlbGVjdF9ub25lJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2lkJywkaWQpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2FjY2VudGxlbicsY291bnQoJGFjY2VudGVkKSk7CgokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RpdGxlX2ZpZWxkX25hbWUnLCR0aGlzLT5MYW5nKCd0aXRsZV9maWVsZF9uYW1lJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RpdGxlX2ZpZWxkX3R5cGUnLCR0aGlzLT5MYW5nKCd0aXRsZV9maWVsZF90eXBlJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RpdGxlX2ZpZWxkX2Rpc3BsYXlfbGVuJywkdGhpcy0+TGFuZygndGl0bGVfZmllbGRfZGlzcGxheV9sZW4nKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbigndGl0bGVfZmllbGRfbWF4X2xlbicsJHRoaXMtPkxhbmcoJ3RpdGxlX2ZpZWxkX21heF9sZW4nKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbigndGl0bGVfZmllbGRfZGVsJywkdGhpcy0+TGFuZygndGl0bGVfZmllbGRfZGVsJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RpdGxlX2ZpZWxkX3dlaWdodCcsJHRoaXMtPkxhbmcoJ3RpdGxlX2ZpZWxkX3dlaWdodCcpKTsKCiRleHRyYWxpc3QgPSAkdGhpcy0+Z2V0RXh0cmFzKCk7CiRleHRyYV9zZWw9YXJyYXkoJHRoaXMtPkxhbmcoJ2V4dHJhX3RleHQnKT0+J2V4dHJhX3RleHQnLAokdGhpcy0+TGFuZygnZXh0cmFfdGV4dF9yJyk9PidleHRyYV90ZXh0X3InLAokdGhpcy0+TGFuZygnZXh0cmFfY2hlY2snKT0+J2V4dHJhX2NoZWNrJywKJHRoaXMtPkxhbmcoJ2V4dHJhX2NoZWNrX3InKT0+J2V4dHJhX2NoZWNrX3InLAokdGhpcy0+TGFuZygnZXh0cmFfbnVtYmVyJyk9PidleHRyYV9udW1iZXInLAokdGhpcy0+TGFuZygnZXh0cmFfbnVtYmVyX3InKT0+J2V4dHJhX251bWJlcl9yJywKJHRoaXMtPkxhbmcoJ2V4dHJhX3Bob25lJyk9PidleHRyYV9waG9uZScsCiR0aGlzLT5MYW5nKCdleHRyYV9waG9uZV9yJyk9PidleHRyYV9waG9uZV9yJwopOwoKZm9yKCRpPTA7JGk8Y291bnQoJGV4dHJhbGlzdCk7JGkrKykKCXsKCSRleHRyYWxpc3RbJGldWydpbnB1dF90eXBlJ10gPSAkdGhpcy0+Q3JlYXRlSW5wdXREcm9wZG93bigkaWQsICdleHRyYV90XycuJGV4dHJhbGlzdFskaV1bJ2ZpZWxkX2lkJ10sICRleHRyYV9zZWwsIC0xLCAkZXh0cmFsaXN0WyRpXVsnZmllbGRfdHlwZSddKTsKCSRleHRyYWxpc3RbJGldWydpbnB1dF9kaXNwbGF5X2xlbiddID0gJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsICdleHRyYV9sXycuJGV4dHJhbGlzdFskaV1bJ2ZpZWxkX2lkJ10sICRleHRyYWxpc3RbJGldWydmaWVsZF9kaXNwbGF5X2xlbiddLCA0LCAxMCk7CgkkZXh0cmFsaXN0WyRpXVsnaW5wdXRfbWF4X2xlbiddID0gJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsICdleHRyYV9tXycuJGV4dHJhbGlzdFskaV1bJ2ZpZWxkX2lkJ10sICRleHRyYWxpc3RbJGldWydmaWVsZF9tYXhfbGVuJ10sIDQsIDEwKTsKCSRleHRyYWxpc3RbJGldWydpbnB1dF93ZWlnaHQnXSA9ICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCAnZXh0cmFfd18nLiRleHRyYWxpc3RbJGldWydmaWVsZF9pZCddLCAoJGkrMSksIDQsIDEwKTsKCSRleHRyYWxpc3RbJGldWydpbnB1dF9uYW1lJ10gPSAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwgJ2V4dHJhX25fJy4kZXh0cmFsaXN0WyRpXVsnZmllbGRfaWQnXSwgJGV4dHJhbGlzdFskaV1bJ2ZpZWxkX25hbWUnXSwgMzApOwoJJGV4dHJhbGlzdFskaV1bJ2lucHV0X2RlbCddID0gJHRoaXMtPkNyZWF0ZUlucHV0Q2hlY2tib3goJGlkLCAnZXh0cmFfZCcuJGV4dHJhbGlzdFskaV1bJ2ZpZWxkX2lkJ10sIDEsCgkJJHRoaXMtPkdldFByZWZlcmVuY2UoJ2Nhc2Vfc2Vuc2l0aXZlJywnMCcpKTsKCX0KCiRleHRyYWxpc3RbJGldWydpbnB1dF90eXBlJ10gPSAkdGhpcy0+Q3JlYXRlSW5wdXREcm9wZG93bigkaWQsICdleHRyYV90Xy0xJywgJGV4dHJhX3NlbCwgLTEsICcnKTsKJGV4dHJhbGlzdFskaV1bJ2lucHV0X2Rpc3BsYXlfbGVuJ10gPSAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwgJ2V4dHJhX2xfLTEnLCAnMCcsIDQsIDEwKTsKJGV4dHJhbGlzdFskaV1bJ2lucHV0X21heF9sZW4nXSA9ICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCAnZXh0cmFfbV8tMScsICcwJywgNCwgMTApOwokZXh0cmFsaXN0WyRpXVsnaW5wdXRfd2VpZ2h0J10gPSAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwgJ2V4dHJhX3dfLTEnLCAoJGkrMSksIDQsIDEwKTsKJGV4dHJhbGlzdFskaV1bJ2lucHV0X25hbWUnXSA9ICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCAnZXh0cmFfbl8tMScsICcnLCAzMCk7CiRleHRyYWxpc3RbJGldWydpbnB1dF9kZWwnXSA9ICcnOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3N0YXJ0X2V4dHJhZm9ybScsJHRoaXMtPkNyZWF0ZUZvcm1TdGFydCgkaWQsCgkJCSdzYXZlZXh0cmFzJywgJHJldHVybmlkLCdwb3N0JykpOwoKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdleHRyYXMnLCRleHRyYWxpc3QpOwoKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzdWJtaXQnLCAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCAnc3VibWl0JywgJHRoaXMtPkxhbmcoJ3RpdGxlX3NhdmVfcHJlZnMnKSkpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2ltcG9ydCcsICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsICdpbXBvcnQnLCAkdGhpcy0+TGFuZygndGl0bGVfaW1wb3J0JykpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzdWJtaXR0ZW1wbGF0ZXMnLCAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCAnc3VibWl0dGVtcGxhdGVzJywgJHRoaXMtPkxhbmcoJ3RpdGxlX3NhdmVfdGVtcGxhdGVzJykpKTsKCiR0aGlzLT5saXN0UXVpenplcygkaWQsICRwYXJhbXMsICRyZXR1cm5pZCk7CgplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ2FkbWlucGFuZWwudHBsJyk7Cj8+]]></data>
	</file>
	<file>
	  <filename>/action.deletequestion.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKaWYgKCFpc3NldCgkZ0NtcykpIGV4aXQ7CgppZiAoISAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdBZG1pbmlzdGVyIFF1aXp6ZXMnKSkKCXsKCXJldHVybiAkdGhpcy0+RGlzcGxheUVycm9yUGFnZSgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwkdGhpcy0+TGFuZygnYWNjZXNzZGVuaWVkJykpOwoJfQoKJGRiID0mICRnQ21zLT5HZXREYigpOwoKCQppZiAoaXNzZXQoJHBhcmFtc1sncXVlc3Rpb25faWQnXSkpCgl7CgkkcXVlcnkgPSAiREVMRVRFIEZST00gIi5jbXNfZGJfcHJlZml4KCkuCgkJIm1vZHVsZV9xel9xdWVzdGlvbnMgV0hFUkUgcXVlc3Rpb25faWQ9PyI7CgkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KCRwYXJhbXNbJ3F1ZXN0aW9uX2lkJ10pKTsKCgkkcXVlcnkgPSAiREVMRVRFIEZST00gIi5jbXNfZGJfcHJlZml4KCkuCgkJIm1vZHVsZV9xel9hbnN3ZXJzIFdIRVJFIHF1ZXN0aW9uX2lkPT8iOwoJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkcGFyYW1zWydxdWVzdGlvbl9pZCddKSk7CgoJJHF1ZXJ5ID0gIkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLgoJCSJtb2R1bGVfcXpfcmVzdWx0IFdIRVJFIHF1ZXN0aW9uX2lkPT8iOwoJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkcGFyYW1zWydxdWVzdGlvbl9pZCddKSk7CgoJJHBhcmFtc1snbW9kdWxlX21lc3NhZ2UnXSA9ICR0aGlzLT5MYW5nKCdxdWVzdGlvbmRlbGV0ZWQnKTsKCgl9CmVsc2UKCXsKCSRwYXJhbXNbJ21vZHVsZV9tZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3InKTsKCX0KLy8kdGhpcy0+UmVkaXJlY3QoJGlkLCAnZWRpdHF1aXonLCAkcmV0dXJuaWQsICRwYXJhbXMpOwokdGhpcy0+RG9BY3Rpb24oJ2VkaXRxdWl6JywgJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQpOwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.deletequiz.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKaWYgKCFpc3NldCgkZ0NtcykpIGV4aXQ7CgppZiAoISAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdBZG1pbmlzdGVyIFF1aXp6ZXMnKSkKCXsKCXJldHVybiAkdGhpcy0+RGlzcGxheUVycm9yUGFnZSgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwkdGhpcy0+TGFuZygnYWNjZXNzZGVuaWVkJykpOwoJfQoKJGRiID0mICRnQ21zLT5HZXREYigpOwoKJG5hbWU9Jyc7CiRkZXNjPScnOwoJCQppZiAoaXNzZXQoJHBhcmFtc1sncXVpel9pZCddKSkKCXsKCSRxdWVyeSA9ICJERUxFVEUgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4KCQkibW9kdWxlX3F6X2Fuc3dlcnMgV0hFUkUgcXVpel9pZD0/IjsKCSRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkoJHBhcmFtc1sncXVpel9pZCddKSk7CgkkcXVlcnkgPSAiREVMRVRFIEZST00gIi5jbXNfZGJfcHJlZml4KCkuCgkJIm1vZHVsZV9xel9xdWVzdGlvbnMgV0hFUkUgcXVpel9pZD0/IjsKCSRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkoJHBhcmFtc1sncXVpel9pZCddKSk7CgkkcXVlcnkgPSAiREVMRVRFIEZST00gIi5jbXNfZGJfcHJlZml4KCkuCgkJIm1vZHVsZV9xel9xdWl6emVzIFdIRVJFIHF1aXpfaWQ9PyI7CgkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KCRwYXJhbXNbJ3F1aXpfaWQnXSkpOwoKCSRwYXJhbXNbJ21vZHVsZV9tZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygncXVpemRlbGV0ZWQnKTsKCgl9CmVsc2UKCXsKCSRwYXJhbXNbJ21vZHVsZV9tZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3InKTsKCX0KLy8kdGhpcy0+UmVkaXJlY3QoJGlkLCAnZGVmYXVsdGFkbWluJywgJHJldHVybmlkLCAkcGFyYW1zKTsKJHRoaXMtPkRvQWN0aW9uKCdkZWZhdWx0YWRtaW4nLCAkaWQsICRwYXJhbXMpOwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.editquestion.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKaWYgKCFpc3NldCgkZ0NtcykpIGV4aXQ7CgppZiAoISAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdBZG1pbmlzdGVyIFF1aXp6ZXMnKSkKCXsKCXJldHVybiAkdGhpcy0+RGlzcGxheUVycm9yUGFnZSgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwkdGhpcy0+TGFuZygnYWNjZXNzZGVuaWVkJykpOwoJfQoKaWYgKCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdzaG93X3BhbGV0dGUnLCcwJykgPT0gJzEnKQoJewoJaW5jbHVkZSAiYWNjZW50ZWQucGhwIjsKCWluY2x1ZGUgInBhbGV0dGVfaW5jbHVkZS5waHAiOwoJfQoKCiRkYiA9JiAkZ0Ntcy0+R2V0RGIoKTsKCiRxdHlwZT1pc3NldCgkcGFyYW1zWydxdHlwZSddKT8kcGFyYW1zWydxdHlwZSddOicnOwokcXRpdGxlPScnOwokaXNfc2NvcmVkID0gMTsKJHF1ZXN0aW9uPScnOwoJCgkKJHR5cGVzID0gYXJyYXkoJHRoaXMtPkxhbmcoJ3NlbGVjdF9vbmUnKT0+JycsJHRoaXMtPkxhbmcoJ3R5cGVfbScpPT4nbScsCiR0aGlzLT5MYW5nKCd0eXBlX2MnKT0+J2MnLCR0aGlzLT5MYW5nKCd0eXBlX2YnKT0+J2YnLCR0aGlzLT5MYW5nKCd0eXBlX3AnKT0+J3AnLAokdGhpcy0+TGFuZygndHlwZV9zJyk9PidzJywkdGhpcy0+TGFuZygndHlwZV90Jyk9Pid0JywkdGhpcy0+TGFuZygndHlwZV9iJyk9PidiJyk7CgoJCmlmIChpc3NldCgkcGFyYW1zWydxdWVzdGlvbl9pZCddKSkKCXsKCSRxdWVyeSA9ICJTRUxFQ1QgKiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLgoJCSJtb2R1bGVfcXpfcXVlc3Rpb25zIFdIRVJFIHF1ZXN0aW9uX2lkPT8iOwoJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkcGFyYW1zWydxdWVzdGlvbl9pZCddKSk7CglpZiAoJGRicmVzdWx0ICE9PSBmYWxzZSAmJiAkcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdygpKQoJCXsKCQlpZiAoJHF0eXBlID09ICcnKQoJCQl7CgkJCQkkcXR5cGUgPSAkcm93WydxdWVzdGlvbl90eXBlJ107CgkJCX0KCQkkcXRpdGxlID0gJHJvd1sndGl0bGUnXTsKCQkkcXVlc3Rpb24gPSAkcm93WydxdWVzdGlvbiddOwoJCSRpc19zY29yZWQgPSAkcm93Wydpc19zY29yZWQnXTsKCQl9CgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2hpZGRlbicsJHRoaXMtPkNyZWF0ZUlucHV0SGlkZGVuKCRpZCwKCQkncXVlc3Rpb25faWQnLCRwYXJhbXNbJ3F1ZXN0aW9uX2lkJ10pLiR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsCgkJJ3F1aXpfaWQnLCRwYXJhbXNbJ3F1aXpfaWQnXSkpOwoJfQplbHNlCgl7CgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2hpZGRlbicsJHRoaXMtPkNyZWF0ZUlucHV0SGlkZGVuKCRpZCwKCQkncXVlc3Rpb25faWQnLC0xKS4kdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLAoJCSdxdWl6X2lkJywkcGFyYW1zWydxdWl6X2lkJ10pKTsKCX0KCiR0aGlzLT5zbWFydHktPmFzc2lnbignc3RhcnRmb3JtJywgJHRoaXMtPkNyZWF0ZUZvcm1TdGFydCgkaWQsICdzYXZlcXVlc3Rpb24nLCAkcmV0dXJuaWQpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdlbmRmb3JtJywgJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignc2F2ZScsICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsICdzYXZlJywKCSR0aGlzLT5MYW5nKCdzYXZlJykpKTsKCiR0aGlzLT5zbWFydHktPmFzc2lnbigndGl0bGVfcXVlc3Rpb25fc2NvcmVkJywkdGhpcy0+TGFuZygndGl0bGVfcXVlc3Rpb25fc2NvcmVkJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2lucHV0X3F1ZXN0aW9uX3Njb3JlZCcsICR0aGlzLT5DcmVhdGVJbnB1dENoZWNrYm94KCRpZCwgJ3F1ZXN0aW9uX3Njb3JlZCcsICRpc19zY29yZWQsIDEpLiR0aGlzLT5MYW5nKCd0aXRsZV9xdWVzdGlvbl9zY29yZWRfaGVscCcpKTsKCgokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RpdGxlX3F1ZXN0aW9uX3RleHQnLCR0aGlzLT5MYW5nKCd0aXRsZV9xdWVzdGlvbl90ZXh0JykpOwppZiAoJHF0eXBlID09ICdmJyB8fCAkcXR5cGUgPT0gJ2MnIHx8ICRxdHlwZSA9PSAnbScpCgl7CgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2lucHV0X3F1ZXN0aW9uX3RleHQnLCR0aGlzLT5DcmVhdGVUZXh0QXJlYSgoJHRoaXMtPkdldFByZWZlcmVuY2UoJ3d5c2l3eWdfcXVlc3Rpb25zJywnJykgPT0gJzEnKSwgJGlkLCAkcXVlc3Rpb24sICdxdWVzdGlvbl90ZXh0JywgJ3F1aXp6YXJkX2FyZWFfc2hvcnQnLCAncXVlc3Rpb25fdGV4dCcsICcnLCAnJywgJzYwJywgJzEwJykpOwkJCgl9CmVsc2UgaWYgKCRxdHlwZSA9PSAncCcpCgl7CgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2lucHV0X3F1ZXN0aW9uX3RleHQnLCR0aGlzLT5DcmVhdGVUZXh0QXJlYSgoZ2V0X3ByZWZlcmVuY2UoZ2V0X3VzZXJpZCgpLCAnd3lzaXd5ZycpIT0iIiksICRpZCwgJHF1ZXN0aW9uLCAncXVlc3Rpb25fdGV4dCcsICcnLCAncXVlc3Rpb25fdGV4dCcsICcnLCAnJywgJzYwJywgJzEwJykpOwkKCX0KZWxzZSBpZiAoJHF0eXBlICE9ICcnKQoJewoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdpbnB1dF9xdWVzdGlvbl90ZXh0JywkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwgJ3F1ZXN0aW9uX3RleHQnLCAkcXVlc3Rpb24sIDQwLCAyNTUpKTsKCX0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0aXRsZV9xdWVzdGlvbl90eXBlJywkdGhpcy0+TGFuZygndGl0bGVfcXVlc3Rpb25fdHlwZScpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0aXRsZV9xdWVzdGlvbl90aXRsZScsJHRoaXMtPkxhbmcoJ3RpdGxlX3F1ZXN0aW9uX3RpdGxlJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2lucHV0X3F1ZXN0aW9uX3RpdGxlJywkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwgJ3F1ZXN0aW9uX3RpdGxlJywgJHF0aXRsZSwgNDAsIDgwKSk7CgokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RpdGxlX2Fuc3dlcl90ZXh0JywkdGhpcy0+TGFuZygndGl0bGVfYW5zd2VyX3RleHQnKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbigndGl0bGVfYW5zd2VyX3RleHRfaGVscCcsJHRoaXMtPkxhbmcoJ3RpdGxlX2Fuc3dlcl90ZXh0X2hlbHAnKSk7CgppZiAoJHRoaXMtPkdldFByZWZlcmVuY2UoJ211bHRpcGxlX2ZpbGxpbicsICcxJykgPT0gJzEnKQoJewoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0aXRsZV9tdWx0aXBsZV9maWxsX2hlbHAnLCR0aGlzLT5MYW5nKCd0aXRsZV9tdWx0aXBsZV9maWxsX2hlbHAnKSk7Cgl9CmVsc2UKCXsKCSR0aGlzLT5zbWFydHktPmFzc2lnbigndGl0bGVfbXVsdGlwbGVfZmlsbF9oZWxwJywnJyk7Cgl9CgkKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdpbnB1dF9xdWVzdGlvbl90eXBlJywgJHRoaXMtPkNyZWF0ZUlucHV0RHJvcGRvd24oJGlkLCAncXVlc3Rpb25fdHlwZScsICR0eXBlcywgLTEsICRxdHlwZSwnb25DaGFuZ2U9ImZhc3RfYWRkKHRoaXMpIicpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdxdHlwZScsJHF0eXBlKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdxdWl6X2lkJywkcGFyYW1zWydxdWl6X2lkJ10pOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3F1ZXN0aW9uX2lkJyxpc3NldCgkcGFyYW1zWydxdWVzdGlvbl9pZCddKT8kcGFyYW1zWydxdWVzdGlvbl9pZCddOictMScpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3JlbG9hZGxpbmsnLGh0bWxfZW50aXR5X2RlY29kZSgkdGhpcy0+Q3JlYXRlTGluaygkaWQsJ2VkaXRxdWVzdGlvbicsJHJldHVybmlkLCcnLGFycmF5KCksJycsdHJ1ZSkpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdpZCcsJGlkKTsKCiR0aGlzLT5zbWFydHktPmFzc2lnbignbWF4X2Fuc3dlcnMnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdtYXhfYW5zd2VycycsNikpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ21lc3NhZ2UnLGlzc2V0KCRwYXJhbXNbJ21vZHVsZV9tZXNzYWdlJ10pPyRwYXJhbXNbJ21vZHVsZV9tZXNzYWdlJ106JycpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2JhY2tfdG9fbWFpbicsJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCAnZGVmYXVsdGFkbWluJywgJHJldHVybmlkLCAkdGhpcy0+TGFuZygnYmFja190b19tYWluJyksIGFycmF5KCkpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdiYWNrX3RvX3F1aXonLCcmZ3Q7Jy4kdGhpcy0+Q3JlYXRlTGluaygkaWQsICdlZGl0cXVpeicsICRyZXR1cm5pZCwgJHRoaXMtPkxhbmcoJ2JhY2tfdG9fcXVpeicpLAoJYXJyYXkoJ3F1aXpfaWQnPT4kcGFyYW1zWydxdWl6X2lkJ10pKSk7CgoKJHRoaXMtPmxpc3RBbnN3ZXJzKCRpZCwgJHBhcmFtcywgJHJldHVybmlkKTsKCQplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ2VkaXRxdWVzdGlvbi50cGwnKTsKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.editquiz.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKaWYgKCFpc3NldCgkZ0NtcykpIGV4aXQ7CgppZiAoISAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdBZG1pbmlzdGVyIFF1aXp6ZXMnKSkKCXsKCXJldHVybiAkdGhpcy0+RGlzcGxheUVycm9yUGFnZSgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwkdGhpcy0+TGFuZygnYWNjZXNzZGVuaWVkJykpOwoJfQoKJGRiID0mICRnQ21zLT5HZXREYigpOwoKJG5hbWU9Jyc7CiRkZXNjPScnOwoJCQppZiAoaXNzZXQoJHBhcmFtc1sncXVpel9pZCddKSkKCXsKCSRxdWVyeSA9ICJTRUxFQ1QgKiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLgoJCSJtb2R1bGVfcXpfcXVpenplcyBXSEVSRSBxdWl6X2lkPT8iOwoJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkcGFyYW1zWydxdWl6X2lkJ10pKTsKCWlmICgkZGJyZXN1bHQgIT09IGZhbHNlICYmICRyb3cgPSAkZGJyZXN1bHQtPkZldGNoUm93KCkpCgkJewoJCSRuYW1lID0gJHJvd1snbmFtZSddOwoJCSRkZXNjID0gJHJvd1snZGVzY3JpcHRpb24nXTsKCQl9CgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2hpZGRlbicsJHRoaXMtPkNyZWF0ZUlucHV0SGlkZGVuKCRpZCwKCQkncXVpel9pZCcsJHBhcmFtc1sncXVpel9pZCddKSk7CgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3FpZHNldCcsJzEnKTsKCX0KZWxzZQoJewoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdoaWRkZW4nLCR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsCgkJJ3F1aXpfaWQnLC0xKSk7CgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3FpZHNldCcsJzAnKTsKCX0KCiR0aGlzLT5zbWFydHktPmFzc2lnbignc3RhcnRmb3JtJywgJHRoaXMtPkNyZWF0ZUZvcm1TdGFydCgkaWQsICdzYXZlcXVpeicsICRyZXR1cm5pZCkpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2VuZGZvcm0nLCAkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzYXZlJywgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwgJ3NhdmUnLAoJJHRoaXMtPkxhbmcoJ3NhdmUnKSkpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2RvbmUnLCAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCAnZG9uZScsCgkkdGhpcy0+TGFuZygnZG9uZScpKSk7CgppZiAoaXNzZXQoJHBhcmFtc1sncXVpel9pZCddKSkKCXsKCSR0aGlzLT5zbWFydHktPmFzc2lnbignb3JkZXJfZmllbGRfbGluaycsCgkkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdyZW9yZGVycXVpeicsCiAgIAkkcmV0dXJuaWQsJHRoaXMtPmNtcy0+dmFyaWFibGVzWydhZG1pbnRoZW1lJ10tPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL3Jlb3JkZXIuZ2lmJwogICAsJHRoaXMtPkxhbmcoJ3Jlb3JkZXJfcXVpeicpLCcnLCcnLCdzeXN0ZW1pY29uJyksYXJyYXkoJ3F1aXpfaWQnPT4kcGFyYW1zWydxdWl6X2lkJ10pLCAnJywgZmFsc2UpIC4KICAgJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCAncmVvcmRlcnF1aXonLCAkcmV0dXJuaWQsJHRoaXMtPkxhbmcoJ3Jlb3JkZXJfcXVpeicpLAogICBhcnJheSgncXVpel9pZCc9PiRwYXJhbXNbJ3F1aXpfaWQnXSksICcnLCBmYWxzZSkpOwoJfQplbHNlCgl7CgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ29yZGVyX2ZpZWxkX2xpbmsnLCcnKTsKCX0KCiR0aGlzLT5zbWFydHktPmFzc2lnbigndGl0bGVfcXVpel9uYW1lJywkdGhpcy0+TGFuZygndGl0bGVfcXVpel9uYW1lJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RpdGxlX3F1aXpfZGVzYycsJHRoaXMtPkxhbmcoJ3RpdGxlX3F1aXpfZGVzYycpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdpbnB1dF9xdWl6X25hbWUnLCR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCAncXVpel9uYW1lJywgJG5hbWUsIDQwLCAyNTUpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdpbnB1dF9xdWl6X2Rlc2MnLCR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCAncXVpel9kZXNjJywgJGRlc2MsIDQwLCAyNTUpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0aXRsZV9zYXZlX2hlbHAnLCR0aGlzLT5MYW5nKCd0aXRsZV9zYXZlX2hlbHAnKSk7CgokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ21lc3NhZ2UnLGlzc2V0KCRwYXJhbXNbJ21vZHVsZV9tZXNzYWdlJ10pPyRwYXJhbXNbJ21vZHVsZV9tZXNzYWdlJ106JycpOwoKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdiYWNrX3RvX21haW4nLCR0aGlzLT5DcmVhdGVMaW5rKCRpZCwgJ2RlZmF1bHRhZG1pbicsICRyZXR1cm5pZCwkdGhpcy0+TGFuZygnYmFja190b19tYWluJyksIGFycmF5KCkpKTsKCgokdGhpcy0+bGlzdFF1ZXN0aW9ucygkaWQsICRwYXJhbXMsICRyZXR1cm5pZCk7CgplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ2VkaXRxdWl6LnRwbCcpOwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.exportquiz.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKaWYgKCFpc3NldCgkZ0NtcykpIGV4aXQ7CmlmICghICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ0FkbWluaXN0ZXIgUXVpenplcycpKQoJewoJcmV0dXJuICR0aGlzLT5EaXNwbGF5RXJyb3JQYWdlKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLCR0aGlzLT5MYW5nKCdhY2Nlc3NkZW5pZWQnKSk7Cgl9CgoJJHF1ZXJ5ID0gIlNFTEVDVCAqIEZST00gIi5jbXNfZGJfcHJlZml4KCkuCgkJIm1vZHVsZV9xel9xdWl6emVzIFdIRVJFIHF1aXpfaWQ9PyI7CgkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KCRwYXJhbXNbJ3F1aXpfaWQnXSkpOwoJaWYgKCRkYnJlc3VsdCAhPT0gZmFsc2UgJiYgJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKSkKCQl7CgkJJG5hbWUgPSAkcm93WyduYW1lJ107CgkJJGRlc2MgPSAkcm93WydkZXNjcmlwdGlvbiddOwoJCX0KCiAgICAkc3BlYyA9IHByZWdfcmVwbGFjZSgiL1xXLyIsIl8iLCRuYW1lKTsKCgkgJGVudHJ5YXJyYXkgPSAkdGhpcy0+Z2V0RW50aXJlUXVpeigkaWQsICRwYXJhbXMsICRyZXR1cm5pZCk7CgppZiAoaXNzZXQoJHBhcmFtc1sneG1sJ10pKQoJewoJJHNwZWMgLj0gIi54bWwiOwoJJGNvbnRlbnR0eXBlID0gInRleHQveG1sOyBjaGFyc2V0PXV0Zi04IjsKCSRyZXBvcnRTdHJpbmcgPSAiPD94bWwgdmVyc2lvbj1cIjEuMFwiIGVuY29kaW5nPVwidXRmLThcIj8+XG4iOwoJJHJlcG9ydFN0cmluZyAuPSAiPHF1aXo+XG4iOwoJJHJlcG9ydFN0cmluZyAuPSAiPG5hbWU+PCFbQ0RBVEFbIi4kbmFtZS4iXV0+PC9uYW1lPlxuIjsKCSRyZXBvcnRTdHJpbmcgLj0gIjxkZXNjcmlwdGlvbj48IVtDREFUQVsiLiRkZXNjLiJdXT48L2Rlc2NyaXB0aW9uPlxuIjsKCSRyZXBvcnRTdHJpbmcgLj0gIjxxdWVzdGlvbnM+XG4iOwoJJGNvbnRhaW5pbmdTZWN0aW9uID0gMDsKCWZvcmVhY2goYXJyYXlfa2V5cygkZW50cnlhcnJheS0+cXVlc3Rpb25zKSBhcyAkaSkKCSAJewoJCWlmICgkZW50cnlhcnJheS0+cXVlc3Rpb25zWyRpXS0+dHlwZT09J3MnKQoJCQl7CgkJCSRjb250YWluaW5nU2VjdGlvbiA9ICRlbnRyeWFycmF5LT5xdWVzdGlvbnNbJGldLT5xdWVzdGlvbjsKCQkJfQoJIAkkcmVwb3J0U3RyaW5nIC49ICJcdDxxdWVzdGlvbiB0eXBlPVwiIi4KCSAJCSRlbnRyeWFycmF5LT5xdWVzdGlvbnNbJGldLT50eXBlLiJcIiI7CgkJJHJlcG9ydFN0cmluZyAuPSAiIG51bT1cIiIuJGVudHJ5YXJyYXktPnF1ZXN0aW9uc1skaV0tPm51bS4iXCIiOwoJCSRyZXBvcnRTdHJpbmcgLj0gIiBpc19zY29yZWQ9XCIiLgoJCQkJCSgkZW50cnlhcnJheS0+cXVlc3Rpb25zWyRpXS0+aXNfc2NvcmVkPyIxIjoiMCIpIC4KCQkJCQkiXCI+XG4iOwoJIAkkcmVwb3J0U3RyaW5nIC49ICJcdFx0PHF1ZXN0aW9uX3RleHQ+PCFbQ0RBVEFbIi4KCSAJCSRlbnRyeWFycmF5LT5xdWVzdGlvbnNbJGldLT5xdWVzdGlvbi4KCSAJCSJdXT48L3F1ZXN0aW9uX3RleHQ+XG4iOwoJIAlpZiAoY291bnQoJGVudHJ5YXJyYXktPnF1ZXN0aW9uc1skaV0tPnJhd2Fuc3dlcnMpID4gMCkKCQkJewoJCQkkcmVwb3J0U3RyaW5nIC49ICJcdFx0PGFuc3dlcnM+XG4iOwoJCQlmb3JlYWNoICgkZW50cnlhcnJheS0+cXVlc3Rpb25zWyRpXS0+cmF3YW5zd2VycyBhcyAka2V5PT4kdmFsKQoJCQkJewoJCQkJJHJlcG9ydFN0cmluZyAuPSAiXHRcdFx0PGFuc3dlciI7CgkJCQlpZiAoJGVudHJ5YXJyYXktPnF1ZXN0aW9uc1skaV0tPnR5cGUgPT0gJ20nKQoJCQkJCXsKCQkJCQlpZiAoJGVudHJ5YXJyYXktPnF1ZXN0aW9uc1skaV0tPmNvcnJlY3RhbnN3ZXJzWzBdID09ICRrZXkpCgkJCQkJCXsKCQkJCQkJJHJlcG9ydFN0cmluZyAuPSAiIGlzX2NvcnJlY3Q9XCIxXCIiOwoJCQkJCQl9CgkJCQkJZWxzZQoJCQkJCQl7CgkJCQkJCSRyZXBvcnRTdHJpbmcgLj0gIiBpc19jb3JyZWN0PVwiMFwiIjsKCgkJCQkJCX0KCQkJCQl9CgkJCQllbHNlIGlmICgkZW50cnlhcnJheS0+cXVlc3Rpb25zWyRpXS0+dHlwZSA9PSAnYycpCgkJCQkJewoJCQkJCWlmICgkZW50cnlhcnJheS0+cXVlc3Rpb25zWyRpXS0+Y29ycmVjdGFuc3dlcnNbJGtleV0gPT0gJzEnKQoJCQkJCQl7CgkJCQkJCSRyZXBvcnRTdHJpbmcgLj0gIiBpc19jb3JyZWN0PVwiMVwiIjsKCgkJCQkJCX0KCQkJCQllbHNlCgkJCQkJCXsKCQkJCQkJJHJlcG9ydFN0cmluZyAuPSAiIGlzX2NvcnJlY3Q9XCIwXCIiOwoKCQkJCQkJfQoJCQkJCX0KCQkJCSRyZXBvcnRTdHJpbmcgLj0gIj48IVtDREFUQVsiLiR2YWwuCgkJCQkJIl1dPjwvYW5zd2VyPlxuIjsKCQkJCX0KCQkJJHJlcG9ydFN0cmluZyAuPSAiXHRcdDwvYW5zd2Vycz5cbiI7CgkJCX0KCQkkcmVwb3J0U3RyaW5nIC49ICJcdDwvcXVlc3Rpb24+XG4iOwoJIAl9CgkkcmVwb3J0U3RyaW5nIC49ICI8L3F1ZXN0aW9ucz5cbiI7CgkkcmVwb3J0U3RyaW5nIC49ICI8L3F1aXo+IjsKCX0KZWxzZQoJewoJJHNwZWMgLj0gIi50eHQiOwoJJGNvbnRlbnR0eXBlID0gImFwcGxpY2F0aW9uL2ZvcmNlLWRvd25sb2FkOyBjaGFyc2V0PXV0Zi04IjsKCSAkcmVwb3J0U3RyaW5nID0gIiRuYW1lXHQkZGVzY1xuIjsKCgkgJGNvdW50ID0gMTsKCSBmb3JlYWNoKGFycmF5X2tleXMoJGVudHJ5YXJyYXktPnF1ZXN0aW9ucykgYXMgJGkpCgkgCXsKCSAJLy9kZWJ1Z19kaXNwbGF5KCRlbnRyeWFycmF5WyRpXSk7CgkgCWlmICgkZW50cnlhcnJheS0+cXVlc3Rpb25zWyRpXS0+dHlwZSA9PSAnbScgfHwKCSAJCSRlbnRyeWFycmF5LT5xdWVzdGlvbnNbJGldLT50eXBlID09ICdmJyB8fAoJCQkkZW50cnlhcnJheS0+cXVlc3Rpb25zWyRpXS0+dHlwZSA9PSAnYycpCgkgCQl7CgkgCQkkcmVwb3J0U3RyaW5nIC49ICRjb3VudC4iXHQiOwoJIAkJJGNvdW50Kys7CgkgCQl9CgkJJHJlcG9ydFN0cmluZyAuPSAkZW50cnlhcnJheS0+cXVlc3Rpb25zWyRpXS0+dHlwZTsKCQkkcmVwb3J0U3RyaW5nIC49ICJcdCIuJGVudHJ5YXJyYXktPnF1ZXN0aW9uc1skaV0tPnF1ZXN0aW9uOwoJCWZvcmVhY2ggKCRlbnRyeWFycmF5LT5xdWVzdGlvbnNbJGldLT5yYXdhbnN3ZXJzIGFzICRrZXk9PiR2YWwpCgkJCXsKCQkJJHJlcG9ydFN0cmluZyAuPSAiXHQiOwoJCQlpZiAoJGVudHJ5YXJyYXktPnF1ZXN0aW9uc1skaV0tPnR5cGUgPT0gJ20nKQoJCQkJewoJCQkJaWYgKCRlbnRyeWFycmF5LT5xdWVzdGlvbnNbJGldLT5jb3JyZWN0YW5zd2Vyc1swXSA9PSAka2V5KQoJCQkJCXsKCQkJCQkkcmVwb3J0U3RyaW5nIC49ICIxIjsKCQkJCQl9CgkJCQllbHNlCgkJCQkJewoJCQkJCSRyZXBvcnRTdHJpbmcgLj0gIjAiOwoJCQkJCX0KCQkJCX0KCQkJZWxzZSBpZiAoJGVudHJ5YXJyYXktPnF1ZXN0aW9uc1skaV0tPnR5cGUgPT0gJ2MnKQoJCQkJewoJCQkJaWYgKCRlbnRyeWFycmF5LT5xdWVzdGlvbnNbJGldLT5jb3JyZWN0YW5zd2Vyc1ska2V5XSA9PSAnMScpCgkJCQkJewoJCQkJCSRyZXBvcnRTdHJpbmcgLj0gIjEiOwoJCQkJCX0KCQkJCWVsc2UKCQkJCQl7CgkJCQkJJHJlcG9ydFN0cmluZyAuPSAiMCI7CgkJCQkJfQoJCQkJfQoJCQllbHNlIGlmICgkZW50cnlhcnJheS0+cXVlc3Rpb25zWyRpXS0+dHlwZSA9PSAnZicpCgkJCQl7CgkJCQkkcmVwb3J0U3RyaW5nIC49ICIxIjsKCQkJCX0KCQkJJHJlcG9ydFN0cmluZyAuPSAiXHQiLiR2YWw7CgkJCX0KCQkkcmVwb3J0U3RyaW5nIC49ICJcbiI7CgkJfQoJfQogICAgQG9iX2NsZWFuKCk7CiAgICBAb2JfY2xlYW4oKTsKICAgIGhlYWRlcignUHJhZ21hOiBwdWJsaWMnKTsKICAgIGhlYWRlcignRXhwaXJlczogMCcpOwogICAgaGVhZGVyKCdDYWNoZS1Db250cm9sOiBtdXN0LXJldmFsaWRhdGUsIHBvc3QtY2hlY2s9MCwgcHJlLWNoZWNrPTAnKTsKICAgIGhlYWRlcignQ2FjaGUtQ29udHJvbDogcHJpdmF0ZScsZmFsc2UpOwogICAgaGVhZGVyKCdDb250ZW50LURlc2NyaXB0aW9uOiBGaWxlIFRyYW5zZmVyJyk7CiAgICBoZWFkZXIoJ0NvbnRlbnQtVHlwZTogJy4kY29udGVudHR5cGUpOwogICAgaGVhZGVyKCdDb250ZW50LUxlbmd0aDogJyAuIHN0cmxlbigkcmVwb3J0U3RyaW5nKSk7CiAgICBoZWFkZXIoJ0NvbnRlbnQtRGlzcG9zaXRpb246IGF0dGFjaG1lbnQ7IGZpbGVuYW1lPScgLiAkc3BlYyk7CiAgICBlY2hvICRyZXBvcnRTdHJpbmc7CiAgICBleGl0Owo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.importquiz.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKaWYgKCFpc3NldCgkZ0NtcykpIGV4aXQ7CgppZiAoISAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdBZG1pbmlzdGVyIFF1aXp6ZXMnKSkKCXsKCXJldHVybiAkdGhpcy0+RGlzcGxheUVycm9yUGFnZSgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwkdGhpcy0+TGFuZygnYWNjZXNzZGVuaWVkJykpOwoJfQoJCQkJCmlmICgkX0ZJTEVTWyRpZC4ndGV4dGZpbGUnXVsndHlwZSddID09ICd0ZXh0L3htbCcgfHwKCSRfRklMRVNbJGlkLid0ZXh0ZmlsZSddWyd0eXBlJ10gPT0gJ2FwcGxpY2F0aW9uL3htbCcpCgl7CgkkdGhpcy0+aW1wb3J0UXVpelhNTCgkaWQsJHBhcmFtcyk7Cgl9CmVsc2UKCXsKCS8vIGxlZ2FjeSBmaWxlCgkkaW5fZmlsZSA9IGFycmF5X21hcCgncnRyaW0nLGZpbGUoJF9GSUxFU1skaWQuJ3RleHRmaWxlJ11bJ3RtcF9uYW1lJ10pKTsKCSR0aGlzLT5pbXBvcnRRdWl6KCRpbl9maWxlKTsKCX0KCQokcGFyYW1zWydtb2R1bGVfbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ3F1aXpfaW1wb3J0ZWQnKTsKCi8vJHRoaXMtPlJlZGlyZWN0KCRpZCwgJ2RlZmF1bHRhZG1pbicsICRyZXR1cm5pZCwgJHBhcmFtcyk7CiR0aGlzLT5Eb0FjdGlvbignZGVmYXVsdGFkbWluJywgJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQpOwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.managequiz.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKaWYgKCFpc3NldCgkZ0NtcykpIGV4aXQ7CmlmICghICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ0FkbWluaXN0ZXIgUXVpenplcycpKQoJewoJcmV0dXJuICR0aGlzLT5EaXNwbGF5RXJyb3JQYWdlKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLCR0aGlzLT5MYW5nKCdhY2Nlc3NkZW5pZWQnKSk7Cgl9CgppZiAoISBpc3NldCgkcGFyYW1zWydxdWl6X2lkJ10pKQoJewoJZWNobyAkdGhpcy0+TGFuZygnc3BlY2lmeV9xdWl6Jyk7CglyZXR1cm47Cgl9CgppZiAoJHRoaXMtPkdldFByZWZlcmVuY2UoJ3Nob3dfcGFsZXR0ZScsJzAnKSA9PSAnMScpCgl7CglpbmNsdWRlICJhY2NlbnRlZC5waHAiOwoJaW5jbHVkZSAicGFsZXR0ZV9pbmNsdWRlLnBocCI7Cgl9CgkKCS8vZGVidWdfZGlzcGxheSgkcGFyYW1zKTsKCiRwYXJhbXNbJ2dldF9hbGwnXSA9IHRydWU7CmlmIChpc3NldCgkcGFyYW1zWydzaG93J10pKQogICB7CiAgICR0aGlzLT5zbWFydHktPmFzc2lnbignc2hvd19saW5lX251bWJlcnMnLCcxJyk7CiAgIH0KZWxzZQogICB7CiAgICR0aGlzLT5zbWFydHktPmFzc2lnbignc2hvd19saW5lX251bWJlcnMnLCcwJyk7CiAgIH0KJHBhcmFtc1sncXp6X2dldF9hbGwnXT10cnVlOwokdGhpcy0+Z2V0UXVlc3Rpb25QYWdlKCRpZCwkcGFyYW1zLCRyZXR1cm5pZCx0cnVlKTsKCiR0aGlzLT5zbWFydHktPmFzc2lnbignc3RhcnRmb3JtJywgJHRoaXMtPkNyZWF0ZUZvcm1TdGFydCgkaWQsCgkndmFsaWRhdGVxdWl6JywgJHJldHVybmlkKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignZW5kZm9ybScsICR0aGlzLT5DcmVhdGVGb3JtRW5kKCkpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3N1Ym1pdCcsICR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsJ3F1aXpfaWQnLCRwYXJhbXNbJ3F1aXpfaWQnXSkuJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwgJ3N1Ym1pdCcsCgkJJHRoaXMtPkxhbmcoJ3ZhbGlkYXRlJykpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0aXRsZV91bnNjb3JlZCcsJHRoaXMtPkxhbmcoJ3RpdGxlX3Vuc2NvcmVkJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2JhY2tfdG9fbWFpbicsJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCAnZGVmYXVsdGFkbWluJywgJHJldHVybmlkLCR0aGlzLT5MYW5nKCdiYWNrX3RvX21haW4nKSwgYXJyYXkoKSkpOwoKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdtZXNzYWdlJywKCWlzc2V0KCRwYXJhbXNbJ21lc3NhZ2UnXSk/JHBhcmFtc1snbWVzc2FnZSddOicnKTsKCmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSgnbWFuYWdlcXVpei50cGwnKTsKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.orderquestion.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKaWYgKCFpc3NldCgkZ0NtcykpIGV4aXQ7CgppZiAoISAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdBZG1pbmlzdGVyIFF1aXp6ZXMnKSkKCXsKCXJldHVybiAkdGhpcy0+RGlzcGxheUVycm9yUGFnZSgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwkdGhpcy0+TGFuZygnYWNjZXNzZGVuaWVkJykpOwoJfQoKJGRiID0mICRnQ21zLT5HZXREYigpOwoJCQppZiAoaXNzZXQoJHBhcmFtc1sncXVpel9pZCddKSkKCXsKCSRvcmRlciA9IGFycmF5KCk7CgkkcXVlcnkgPSAiU0VMRUNUIHF1ZXN0aW9uX2lkLCBvcmRlcl9ieSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLgoJCSJtb2R1bGVfcXpfcXVlc3Rpb25zIFdIRVJFIHF1ZXN0aW9uX2lkIGluICg/LD8pIjsKCSRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkoJHBhcmFtc1snc3JjJ10sJHBhcmFtc1snZHN0J10pKTsKCiAgICB3aGlsZSAoJGRicmVzdWx0ICE9PSBmYWxzZSAmJiAkcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdygpKQogICAgICAgIHsKCQkkb3JkZXJbJHJvd1sncXVlc3Rpb25faWQnXV0gPSAkcm93WydvcmRlcl9ieSddOwoJCX0KCgkkcXVlcnkgPSAiVVBEQVRFICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfcXpfcXVlc3Rpb25zIHNldCBvcmRlcl9ieT0/IHdoZXJlIHF1ZXN0aW9uX2lkPT8iOwoJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkb3JkZXJbJHBhcmFtc1snc3JjJ11dLAoJCSRwYXJhbXNbJ2RzdCddKSk7CgkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KCRvcmRlclskcGFyYW1zWydkc3QnXV0sCgkJJHBhcmFtc1snc3JjJ10pKTsKCQoJfQplbHNlCgl7CgkkcGFyYW1zWydtb2R1bGVfbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yJyk7Cgl9Ci8vJHRoaXMtPlJlZGlyZWN0KCRpZCwgJ2VkaXRxdWl6JywgJHJldHVybmlkLCAkcGFyYW1zKTsKJHRoaXMtPkRvQWN0aW9uKCdlZGl0cXVpeicsICRpZCwgJHBhcmFtcywgJHJldHVybmlkKTsKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.reorderquiz.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKaWYgKCFpc3NldCgkZ0NtcykpIGV4aXQ7CmlmICghICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ0FkbWluaXN0ZXIgUXVpenplcycpKQoJewoJcmV0dXJuICR0aGlzLT5EaXNwbGF5RXJyb3JQYWdlKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLCR0aGlzLT5MYW5nKCdhY2Nlc3NkZW5pZWQnKSk7Cgl9CgoKJHRoaXMtPmxpc3RRdWVzdGlvbnMoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQpOwoKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzdGFydF9mb3JtJywkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0KCRpZCwKCQkJJ3Jlb3JkZXJzdG9yZScsICRyZXR1cm5pZCwgJ3Bvc3QnKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignc3VibWl0JywgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwgJ3N1Ym1pdCcsICR0aGlzLT5MYW5nKCdyZW9yZGVyJyksJ29uY2xpY2s9InJldHVybiBzZW5kX29yZGVyX3ZhcigpIicpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdlbmRfZm9ybScsJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignaWQnLCRpZCk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignaGlkZGVuJywkdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLCdxdWl6X2lkJywkcGFyYW1zWydxdWl6X2lkJ10pKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduX2J5X3JlZignZmllbGRzJywkZmllbGRzKTsKCmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSgncmVvcmRlcnF1aXoudHBsJyk7Cj8+]]></data>
	</file>
	<file>
	  <filename>/action.reorderstore.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKaWYgKCFpc3NldCgkZ0NtcykpIGV4aXQ7CmlmICghICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ0FkbWluaXN0ZXIgUXVpenplcycpKQoJewoJcmV0dXJuICR0aGlzLT5EaXNwbGF5RXJyb3JQYWdlKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLCR0aGlzLT5MYW5nKCdhY2Nlc3NkZW5pZWQnKSk7Cgl9CgoKJG9yZGVyX2xpc3QgPSBleHBsb2RlKCcsJywkcGFyYW1zWydvcmRlciddKTsKJGNvdW50ID0gMTsKCmlmICghIGlzX2FycmF5KCRvcmRlcl9saXN0KSkKCXsKCSRvcmRlcl9saXN0ID0gYXJyYXkoJG9yZGVyX2xpc3QpOwoJfQoKJGRiID0mICRnQ21zLT5HZXREYigpOwokc3FsID0gJ3VwZGF0ZSAnLmNtc19kYl9wcmVmaXgoKS4KCSdtb2R1bGVfcXpfcXVlc3Rpb25zIHNldCBvcmRlcl9ieT0/IHdoZXJlIHF1ZXN0aW9uX2lkPT8nOwoJCmZvcmVhY2ggKCRvcmRlcl9saXN0IGFzICR0aGlzRmllbGQpCgl7CiAgICR0aGlzRmllbGQgPSBzdWJzdHIoJHRoaXNGaWVsZCwxKTsKCSRycyA9ICRkYi0+RXhlY3V0ZSgkc3FsLCBhcnJheSgkY291bnQsICR0aGlzRmllbGQpKTsKCSRjb3VudCsrOwoJfQoKJHBhcmFtc1snbW9kdWxlX21lc3NhZ2UnXSA9ICR0aGlzLT5MYW5nKCdyZW9yZGVyZWQnKTsKJHRoaXMtPkRvQWN0aW9uKCdlZGl0cXVpeicsICRpZCwgJHBhcmFtcywgJHJldHVybmlkKTsKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.restorequiz.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKaWYgKCFpc3NldCgkZ0NtcykpIGV4aXQ7CgppZiAoISBpc3NldCgkcGFyYW1zWydxdWl6X2lkJ10pKQoJewoJZWNobyAkdGhpcy0+TGFuZygnc3BlY2lmeV9xdWl6Jyk7CglyZXR1cm47Cgl9CgokdGFrZXJfaWQgPSAkdGhpcy0+Z2V0VGFrZXJJZCgkcGFyYW1zWydxdWl6X2lkJ10pOwoKJGRiID0mICRnQ21zLT5HZXREYigpOwoKJHF1ZXJ5ID0gJ1NFTEVDVCAqIEZST00gJy4gY21zX2RiX3ByZWZpeCgpLgoJCQkJJ21vZHVsZV9xel90YWtlcnMgd2hlcmUgdGFrZXJfaWQ9Pyc7CiRwcmV2ID0gJGRiLT5HZXRSb3coJHF1ZXJ5LGFycmF5KCR0YWtlcl9pZCkpOwoKCmlmIChpc3NldCgkcGFyYW1zWydxenpfbmV3X3F1aXonXSkpCiAgICB7CiAgICR0YWtlcl9pZCA9ICRkYi0+R2VuSUQoY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfcXpfdGFrZXJzX3NlcScpOwoJJHF1ZXJ5ID0gJ0lOU0VSVCBJTlRPICcuIGNtc19kYl9wcmVmaXgoKS4KCQkJCSdtb2R1bGVfcXpfdGFrZXJzICh0YWtlcl9pZCwgbmFtZSwgZW1haWwsIHNlbmRfcmVzdWx0LCBjb21wbGV0ZWQpIFZBTFVFUyAoPyw/LD8sPyw/KSc7CgoJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkdGFrZXJfaWQsCiAgICAgICAgICAgICAgIAkkcHJldlsnbmFtZSddLAogICAgICAgICAgICAgICAJJHByZXZbJ2VtYWlsJ10sCiAgICAgICAgICAgICAgIAkkcHJldlsnc2VuZF9yZXN1bHQnXSwwKSk7CiAgICBpZiAoJGRicmVzdWx0ID09PSBmYWxzZSkKICAgICAgIHsKICAgICAgIHJldHVybiAkdGhpcy0+RGlzcGxheUVycm9yUGFnZSgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwgJGRiLT5FcnJvck1zZygpKTsKICAgICAgIH0KCiAgICAkdGhpcy0+c2V0VGFrZXJJZCgkdGFrZXJfaWQsICRwYXJhbXNbJ3F1aXpfaWQnXSk7CiAgICAkcGFyYW1zWydxdWVzdGlvbiddPTA7CiAgICAvL3JldHVybiAkdGhpcy0+RG9BY3Rpb24oJ3Rha2VxdWl6JywkaWQsICRwYXJhbXMsICRyZXR1cm5pZCk7CglyZXR1cm4gJHRoaXMtPlJlZGlyZWN0KCRpZCwgJ3Rha2VxdWl6JywgJHJldHVybmlkLCAkcGFyYW1zLCAgKCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdxdWl6X2lubGluZScsJzEnKT09JzEnKSk7CgogICAgfQplbHNlIGlmIChpc3NldCgkcGFyYW1zWydxenpfb2xkX3F1aXonXSkpCiAgICB7CiAgICByZXR1cm4gJHRoaXMtPkRvQWN0aW9uKCd0YWtlcXVpeicsICRpZCwgJHBhcmFtcywgJHJldHVybmlkKTsKICAgIH0KCgkKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdxdWl6X2lkJywkdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLCdxdWl6X2lkJywkcGFyYW1zWydxdWl6X2lkJ10pKTsKCiR0aGlzLT5zbWFydHktPmFzc2lnbignc3RhcnRmb3JtJywgJHRoaXMtPkNyZWF0ZUZvcm1TdGFydCgkaWQsICdyZXN0b3JlcXVpeicsICRyZXR1cm5pZCwKCSdwb3N0JywnJywgICgkdGhpcy0+R2V0UHJlZmVyZW5jZSgncXVpel9pbmxpbmUnLCcxJyk9PScxJykpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdlbmRmb3JtJywgJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7CgokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RpdGxlX3Jlc3RvcmVfZGVidWcnLCR0aGlzLT5MYW5nKCd0aXRsZV9yZXN0b3JlX2RlYnVnJyxhcnJheSgkcGFyYW1zWydxdWl6X2lkJ10sICR0YWtlcl9pZCwgJHByZXZbJ3N0YXJ0X2RhdGUnXSkpKTsKCiR0aGlzLT5zbWFydHktPmFzc2lnbigndGl0bGVfcmVzdG9yZV9oZWxwJywkdGhpcy0+TGFuZygndGl0bGVfcmVzdG9yZV9oZWxwJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ25ld19xdWl6JywgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwgJ3F6el9uZXdfcXVpeicsCgkJJHRoaXMtPkxhbmcoJ3RpdGxlX3N0YXJ0X292ZXInKSkpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ29sZF9xdWl6JywgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwgJ3F6el9vbGRfcXVpeicsCgkJJHRoaXMtPkxhbmcoJ3RpdGxlX3Jlc3VtZV9vbGQnKSkpOwogICAgICAgIAplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ3Jlc3RvcmUudHBsJyk7Cj8+]]></data>
	</file>
	<file>
	  <filename>/action.saveadminprefs.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKaWYgKCFpc3NldCgkZ0NtcykpIGV4aXQ7CgppZiAoISAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdBZG1pbmlzdGVyIFF1aXp6ZXMnKSkKCXsKCXJldHVybiAkdGhpcy0+RGlzcGxheUVycm9yUGFnZSgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwkdGhpcy0+TGFuZygnYWNjZXNzZGVuaWVkJykpOwoJfQppbmNsdWRlICJhY2NlbnRlZC5waHAiOwoKJHRoaXMtPlNldFByZWZlcmVuY2UoJ3NlbmRfZW1haWwnLCBpc3NldCgkcGFyYW1zWydzZW5kX2VtYWlsJ10pPyRwYXJhbXNbJ3NlbmRfZW1haWwnXTonJyk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdyZXF1aXJlX3VzZXInLCBpc3NldCgkcGFyYW1zWydyZXF1aXJlX3VzZXInXSk/JHBhcmFtc1sncmVxdWlyZV91c2VyJ106JycpOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgncXVpel9pbmxpbmUnLCBpc3NldCgkcGFyYW1zWydxdWl6X2lubGluZSddKT8kcGFyYW1zWydxdWl6X2lubGluZSddOicnKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ3NtYXJ0eV9wYWdlcycsIGlzc2V0KCRwYXJhbXNbJ3NtYXJ0eV9wYWdlcyddKT8kcGFyYW1zWydzbWFydHlfcGFnZXMnXTonJyk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdjYXNlX3NlbnNpdGl2ZScsIGlzc2V0KCRwYXJhbXNbJ2Nhc2Vfc2Vuc2l0aXZlJ10pPyRwYXJhbXNbJ2Nhc2Vfc2Vuc2l0aXZlJ106JycpOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnc2hvd19wYWxldHRlJywgaXNzZXQoJHBhcmFtc1snc2hvd19wYWxldHRlJ10pPyRwYXJhbXNbJ3Nob3dfcGFsZXR0ZSddOicnKTsKCiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdtdWx0aXBsZV9maWxsaW4nLCBpc3NldCgkcGFyYW1zWydtdWx0aXBsZV9maWxsaW4nXSk/JHBhcmFtc1snbXVsdGlwbGVfZmlsbGluJ106JycpOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnc2F2ZV9idXR0b24nLCBpc3NldCgkcGFyYW1zWydzYXZlX2J1dHRvbiddKT8kcGFyYW1zWydzYXZlX2J1dHRvbiddOicnKTsKCiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdyZW51bWJlcl9ieV9zZWN0aW9uJywgaXNzZXQoJHBhcmFtc1sncmVudW1iZXJfYnlfc2VjdGlvbiddKT8kcGFyYW1zWydyZW51bWJlcl9ieV9zZWN0aW9uJ106JycpOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnd3lzaXd5Z19xdWVzdGlvbnMnLCBpc3NldCgkcGFyYW1zWyd3eXNpd3lnX3F1ZXN0aW9ucyddKT8kcGFyYW1zWyd3eXNpd3lnX3F1ZXN0aW9ucyddOicnKTsKCiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdkZWZhdWx0X3F1ZXN0aW9ucycsIGlzc2V0KCRwYXJhbXNbJ2RlZmF1bHRfcXVlc3Rpb25zJ10pPyRwYXJhbXNbJ2RlZmF1bHRfcXVlc3Rpb25zJ106JzEwJyk7CgokdGhpcy0+U2V0UHJlZmVyZW5jZSgnbWF4X2Fuc3dlcnMnLCBpc3NldCgkcGFyYW1zWydtYXhfYW5zd2VycyddKT8kcGFyYW1zWydtYXhfYW5zd2VycyddOic1Jyk7CiAgICAgICAgCiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdzZW5kX3RvJywgaXNzZXQoJHBhcmFtc1snc2VuZF90byddKT8kcGFyYW1zWydzZW5kX3RvJ106J3lvdUB5b3VyZG9tYWluLmNvbScpOwoKJHRoaXMtPlNldFByZWZlcmVuY2UoJ2VtYWlsX2Zyb20nLCBpc3NldCgkcGFyYW1zWydlbWFpbF9mcm9tJ10pPyRwYXJhbXNbJ2VtYWlsX2Zyb20nXTokdGhpcy0+TGFuZygnZW1haWxfZnJvbScpKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ2VtYWlsX2Zyb21uYW1lJywgaXNzZXQoJHBhcmFtc1snZW1haWxfZnJvbW5hbWUnXSk/JHBhcmFtc1snZW1haWxfZnJvbW5hbWUnXTokdGhpcy0+TGFuZygnZW1haWxfZnJvbW5hbWUnKSk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdlbWFpbF9zdWJqZWN0JywgaXNzZXQoJHBhcmFtc1snZW1haWxfc3ViamVjdCddKT8kcGFyYW1zWydlbWFpbF9zdWJqZWN0J106JHRoaXMtPkxhbmcoJ2VtYWlsX3N1YmplY3QnKSk7CgokdGhpcy0+U2V0UHJlZmVyZW5jZSgnZmlsbGluX2xlbicsIGlzc2V0KCRwYXJhbXNbJ2ZpbGxpbl9sZW4nXSk/JHBhcmFtc1snZmlsbGluX2xlbiddOicnKTsKCiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdwYWdpbmF0aW9uJywgaXNzZXQoJHBhcmFtc1sncGFnaW5hdGlvbiddKT8kcGFyYW1zWydwYWdpbmF0aW9uJ106JycpOwoKJHRoaXMtPlNldFByZWZlcmVuY2UoJ3Nob3dfcGFnZW5hdicsIGlzc2V0KCRwYXJhbXNbJ3Nob3dfcGFnZW5hdiddKT8kcGFyYW1zWydzaG93X3BhZ2VuYXYnXTonJyk7Cgokc2hvd19jaGFycyA9ICcnOwpmb3IgKCRpPTA7JGk8Y291bnQoJGFjY2VudGVkKTskaSsrKQoJewoJaWYgKGlzc2V0KCRwYXJhbXNbJ2FjXycuJGldKSkKCQl7CgkJJHNob3dfY2hhcnMgLj0gJzEnOwoJCX0KCWVsc2UKCQl7CgkJJHNob3dfY2hhcnMgLj0gJzAnOwoJCX0KCX0KCQoJCiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdzaG93X2NoYXJfbGlzdCcsJHNob3dfY2hhcnMpOwoKJHBhcmFtcyA9IGFycmF5KCd0YWJfbWVzc2FnZSc9PiAncHJlZnN1cGRhdGVkJywgJ2FjdGl2ZV90YWInID0+ICdjb25maWd1cmF0aW9uJyk7Ci8vJHBhcmFtc1snbW9kdWxlX21lc3NhZ2UnXSA9ICR0aGlzLT5MYW5nKCdwcmVmc3VwZGF0ZWQnKTsKLy8kdGhpcy0+UmVkaXJlY3QoJGlkLCAnZGVmYXVsdGFkbWluJywgJHJldHVybmlkLCAkcGFyYW1zKTsKJHRoaXMtPkRvQWN0aW9uKCdkZWZhdWx0YWRtaW4nLCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCk7Cj8+]]></data>
	</file>
	<file>
	  <filename>/action.saveextras.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKaWYgKCFpc3NldCgkZ0NtcykpIGV4aXQ7CgppZiAoISAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdBZG1pbmlzdGVyIFF1aXp6ZXMnKSkKCXsKCXJldHVybiAkdGhpcy0+RGlzcGxheUVycm9yUGFnZSgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwkdGhpcy0+TGFuZygnYWNjZXNzZGVuaWVkJykpOwoJfQoKCSRkYiA9JiAkZ0Ntcy0+R2V0RGIoKTsKCgkkdXBxdWVyeSA9ICd1cGRhdGUgJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9xel9leHRyYV9maWVsZHMgc2V0IGZpZWxkX25hbWU9PywgZmllbGRfdHlwZT0/LCBmaWVsZF9kaXNwbGF5X2xlbj0/LCBmaWVsZF9tYXhfbGVuPT8sIGZpZWxkX3dlaWdodD0/IHdoZXJlIGZpZWxkX2lkPT8nOwoJJGlxdWVyeSA9ICdpbnNlcnQgaW50byAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3F6X2V4dHJhX2ZpZWxkcyAoZmllbGRfaWQsZmllbGRfbmFtZSxmaWVsZF90eXBlLGZpZWxkX2Rpc3BsYXlfbGVuLGZpZWxkX21heF9sZW4sZmllbGRfd2VpZ2h0KSB2YWx1ZXMgKD8sPyw/LD8sPyw/KSc7CgkKCWZvcmVhY2ggKCRwYXJhbXMgYXMgJHBrZXk9PiRwdmFsKQoJCXsKCQlpZiAoc3Vic3RyKCRwa2V5LDAsNykgPT0gJ2V4dHJhX24nICYmICFlbXB0eSgkcGFyYW1zWyRwa2V5XSkpCgkJCXsKCQkJJGVmID0gZXhwbG9kZSgnXycsJHBrZXkpOwoJCQlpZiAoJGVmWzJdID09IC0xKQoJCQkJewoJCQkJJGVfaWQgPSAkZGItPkdlbklEKGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3F6X2V4dHJhX2ZpZWxkX3NlcScpOwoJCQkJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRpcXVlcnksYXJyYXkoCgkJCQkJJGVfaWQsCgkJCQkJJHBhcmFtc1snZXh0cmFfbl8tMSddLAoJCQkJCSRwYXJhbXNbJ2V4dHJhX3RfLTEnXSwKCQkJCQkkcGFyYW1zWydleHRyYV9sXy0xJ10sCgkJCQkJJHBhcmFtc1snZXh0cmFfbV8tMSddLAoJCQkJCSRwYXJhbXNbJ2V4dHJhX3dfLTEnXQoJCQkJCSkpOwoJCQkJfQoJCQllbHNlCgkJCQl7CgkJCQkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHVwcXVlcnksIGFycmF5KAoJCQkJCSRwYXJhbXNbJ2V4dHJhX25fJy4kZWZbMl1dLAoJCQkJCSRwYXJhbXNbJ2V4dHJhX3RfJy4kZWZbMl1dLAoJCQkJCSRwYXJhbXNbJ2V4dHJhX2xfJy4kZWZbMl1dLAoJCQkJCSRwYXJhbXNbJ2V4dHJhX21fJy4kZWZbMl1dLAoJCQkJCSRwYXJhbXNbJ2V4dHJhX3dfJy4kZWZbMl1dLAoJCQkJCSRlZlsyXQoJCQkJCSkpOwkKCQkJCX0KCQkJaWYgKCRkYnJlc3VsdCA9PT0gZmFsc2UpCgkJCSAgICB7CgkJCSAgICByZXR1cm4gJHRoaXMtPkRpc3BsYXlFcnJvclBhZ2UoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsICRkYi0+RXJyb3JNc2coKSk7CgkJCSAgICB9CgkJCX0KCQl9CgokcGFyYW1zID0gYXJyYXkoJ3RhYl9tZXNzYWdlJz0+ICdleHRyYXN1cGRhdGVkJywgJ2FjdGl2ZV90YWInID0+ICdleHRyYScpOwokdGhpcy0+RG9BY3Rpb24oJ2RlZmF1bHRhZG1pbicsICRpZCwgJHBhcmFtcywgJHJldHVybmlkKTsKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.savequestion.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKaWYgKCFpc3NldCgkZ0NtcykpIGV4aXQ7CgppZiAoISAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdBZG1pbmlzdGVyIFF1aXp6ZXMnKSkKCXsKCXJldHVybiAkdGhpcy0+RGlzcGxheUVycm9yUGFnZSgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwkdGhpcy0+TGFuZygnYWNjZXNzZGVuaWVkJykpOwoJfQoKJGRiID0mICRnQ21zLT5HZXREYigpOwoJCgkKJHF1ZXN0aW9uX2lkID0gJHBhcmFtc1sncXVlc3Rpb25faWQnXTsKCmlmICgkcGFyYW1zWydxdWVzdGlvbl90eXBlJ10gPT0gJ2InIHx8ICRwYXJhbXNbJ3F1ZXN0aW9uX3R5cGUnXSA9PSAncycgfHwKCSRwYXJhbXNbJ3F1ZXN0aW9uX3R5cGUnXSA9PSAndCcpCgl7Cgl1bnNldCgkcGFyYW1zWydxdWVzdGlvbl9zY29yZWQnXSk7Cgl9CgppZiAoISBpc3NldCgkcGFyYW1zWydxdWVzdGlvbl9pZCddKSB8fCAkcGFyYW1zWydxdWVzdGlvbl9pZCddID09IC0xKQoJewogICAJJHFvcmRlcl9ieSA9ICRkYi0+R2V0T25lKCJzZWxlY3QgbWF4KG9yZGVyX2J5KSBmcm9tICIuY21zX2RiX3ByZWZpeCgpLgogICAJCSJtb2R1bGVfcXpfcXVlc3Rpb25zIHdoZXJlIHF1aXpfaWQ9PyIsYXJyYXkoJHBhcmFtc1sncXVpel9pZCddKSk7CiAgIAkkcW9yZGVyX2J5Kys7CiAgIAkkcXVlc3Rpb25faWQgPSAkZGItPkdlbklEKGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3F6X3F1ZXN0aW9uc19zZXEnKTsKCSRxdWVyeSA9ICdJTlNFUlQgSU5UTyAnLiBjbXNfZGJfcHJlZml4KCkuCgkJCQknbW9kdWxlX3F6X3F1ZXN0aW9ucyAocXVlc3Rpb25faWQsIHF1aXpfaWQsIHF1ZXN0aW9uX3R5cGUsIHF1ZXN0aW9uLCB0aXRsZSwgaXNfc2NvcmVkLCBvcmRlcl9ieSkgVkFMVUVTICg/LD8sPyw/LD8sPyw/KSc7CgoJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkcXVlc3Rpb25faWQsCiAgICAgICAgICAgICAgIAkkcGFyYW1zWydxdWl6X2lkJ10sCiAgICAgICAgICAgICAgIAkkcGFyYW1zWydxdWVzdGlvbl90eXBlJ10sCgkJCQkoaXNzZXQoJHBhcmFtc1sncXVlc3Rpb25fdGV4dCddKT8kcGFyYW1zWydxdWVzdGlvbl90ZXh0J106JycpLAogICAgICAgICAgICAgICAJKGlzc2V0KCRwYXJhbXNbJ3F1ZXN0aW9uX3RpdGxlJ10pPyRwYXJhbXNbJ3F1ZXN0aW9uX3RpdGxlJ106JycpLAogICAgICAgICAgICAgICAJKGlzc2V0KCRwYXJhbXNbJ3F1ZXN0aW9uX3Njb3JlZCddKT8nMSc6JzAnKSwKICAgICAgICAgICAgICAgCSRxb3JkZXJfYnkpKTsKICAgIGlmICgkZGJyZXN1bHQgPT09IGZhbHNlKQogICAgICAgewogICAgICAgcmV0dXJuICR0aGlzLT5EaXNwbGF5RXJyb3JQYWdlKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAkZGItPkVycm9yTXNnKCkpOwogICAgICAgfQoJfQplbHNlCgl7CgkkcXVlcnkgPSAnVVBEQVRFICcuIGNtc19kYl9wcmVmaXgoKS4KCQkJCSdtb2R1bGVfcXpfcXVlc3Rpb25zIHNldCBxdWVzdGlvbl90eXBlPT8sIHF1ZXN0aW9uPT8sIHRpdGxlPT8saXNfc2NvcmVkPT8gd2hlcmUgcXVlc3Rpb25faWQ9Pyc7CgoJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgKICAgICAgICAgICAgICAgCSRwYXJhbXNbJ3F1ZXN0aW9uX3R5cGUnXSwKCQkJCShpc3NldCgkcGFyYW1zWydxdWVzdGlvbl90ZXh0J10pPyRwYXJhbXNbJ3F1ZXN0aW9uX3RleHQnXTonJyksCgkJCQkoaXNzZXQoJHBhcmFtc1sncXVlc3Rpb25fdGl0bGUnXSk/JHBhcmFtc1sncXVlc3Rpb25fdGl0bGUnXTonJyksCiAgICAgICAgICAgICAgIAkoaXNzZXQoJHBhcmFtc1sncXVlc3Rpb25fc2NvcmVkJ10pPycxJzonMCcpLAogICAgICAgICAgICAgICAJJHBhcmFtc1sncXVlc3Rpb25faWQnXSkpOwogICAgaWYgKCRkYnJlc3VsdCA9PT0gZmFsc2UpCiAgICAgICB7CiAgICAgICByZXR1cm4gJHRoaXMtPkRpc3BsYXlFcnJvclBhZ2UoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsICRkYi0+RXJyb3JNc2coKSk7CiAgICAgICB9CgkkcXVlcnkgPSAnREVMRVRFIEZST00gJy5jbXNfZGJfcHJlZml4KCkuCgkJJ21vZHVsZV9xel9hbnN3ZXJzIHdoZXJlIHF1ZXN0aW9uX2lkPT8nOwoJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkcGFyYW1zWydxdWVzdGlvbl9pZCddKSk7CglpZiAoJGRicmVzdWx0ID09PSBmYWxzZSkKICAgCQl7CiAgIAkJcmV0dXJuICR0aGlzLT5EaXNwbGF5RXJyb3JQYWdlKCRpZCwgJHBhcmFtcywKICAgCQkJJHJldHVybmlkLCAkZGItPkVycm9yTXNnKCkpOwogICAJCX0KCX0KCmZvcigkaT0wOyRpPCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdtYXhfYW5zd2VycycsNik7JGkrKykKCXsKCWlmIChpc3NldCgkcGFyYW1zWyJhbnN3ZXIkaSJdKSAmJiAhIGVtcHR5KCRwYXJhbXNbImFuc3dlciRpIl0pKQoJCXsKICAgCQkkYW5zd2VyX2lkID0gJGRiLT5HZW5JRChjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9xel9hbnN3ZXJzX3NlcScpOwoJCQoJCSRxdWVyeSA9ICdJTlNFUlQgSU5UTyAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3F6X2Fuc3dlcnMgKGFuc3dlcl9pZCwgcXVlc3Rpb25faWQsIHF1aXpfaWQsIGlzX2NvcnJlY3QsIGFuc3dlcikgVkFMVUVTICg/LD8sPyw/LD8pJzsKCQkvLyBicmVhayB0aGlzIGludG8gbXVsdGlwbGUgaWYgc3RhdGVtZW50cyBmb3IgZWFzaWVyIHJlYWRpbmcgOikKCQkkY29yID0gMDsKCQlpZiAoJHBhcmFtc1sncXVlc3Rpb25fdHlwZSddPT0nZicpCgkJCXsKCQkJJGNvciA9IDE7CgkJCX0KCQllbHNlIGlmICgkcGFyYW1zWydxdWVzdGlvbl90eXBlJ109PSdtJyAmJiBpc3NldCgkcGFyYW1zWydyYWQnLiRwYXJhbXNbJ3F1ZXN0aW9uX2lkJ11dKSAmJiAkcGFyYW1zWydyYWQnLiRwYXJhbXNbJ3F1ZXN0aW9uX2lkJ11dPT0kaSkKCQkJewoJCQkkY29yID0gMTsKCQkJfQoJCWVsc2UgaWYgKCRwYXJhbXNbJ3F1ZXN0aW9uX3R5cGUnXT09J2MnICYmIGlzc2V0KCRwYXJhbXNbJ2NoZWNrJy4kaV0pKQoJCQl7CgkJCSRjb3IgPSAxOwoJCQl9CgoJCSRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkoJGFuc3dlcl9pZCwKCQkJJHF1ZXN0aW9uX2lkLAoJCQkkcGFyYW1zWydxdWl6X2lkJ10sCgkJCSRjb3IsCgkJCSRwYXJhbXNbImFuc3dlciRpIl0pKTsKCQlpZiAoJGRicmVzdWx0ID09PSBmYWxzZSkKICAgCQkJewogICAJCQlyZXR1cm4gJHRoaXMtPkRpc3BsYXlFcnJvclBhZ2UoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsICRkYi0+RXJyb3JNc2coKSk7CiAgIAkJCX0KCQl9Cgl9CgoKCiRwYXJhbXNbJ21vZHVsZV9tZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygncXVlc3Rpb25fc2F2ZWQnKTsKCi8vJHRoaXMtPlJlZGlyZWN0KCRpZCwgJ2VkaXRxdWl6JywgJHJldHVybmlkLCAkcGFyYW1zKTsKJHRoaXMtPkRvQWN0aW9uKCdlZGl0cXVpeicsICRpZCwgJHBhcmFtcywgJHJldHVybmlkKTsKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.savequiz.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKaWYgKCFpc3NldCgkZ0NtcykpIGV4aXQ7CgppZiAoISAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdBZG1pbmlzdGVyIFF1aXp6ZXMnKSkKCXsKCXJldHVybiAkdGhpcy0+RGlzcGxheUVycm9yUGFnZSgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwkdGhpcy0+TGFuZygnYWNjZXNzZGVuaWVkJykpOwoJfQoKJGRiID0mICRnQ21zLT5HZXREYigpOwoJCQppZiAoISBpc3NldCgkcGFyYW1zWydxdWl6X2lkJ10pIHx8ICRwYXJhbXNbJ3F1aXpfaWQnXSA9PSAtMSkKCXsKICAgCSRxdWl6X2lkID0gJGRiLT5HZW5JRChjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9xel9xdWl6emVzX3NlcScpOwoJJHF1ZXJ5ID0gJ0lOU0VSVCBJTlRPICcuIGNtc19kYl9wcmVmaXgoKS4KCQkJCSdtb2R1bGVfcXpfcXVpenplcyAocXVpel9pZCwgbmFtZSwgZGVzY3JpcHRpb24pIFZBTFVFUyAoPyw/LD8pJzsKCgkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KCRxdWl6X2lkLAogICAgICAgICAgICAgICAJJHBhcmFtc1sncXVpel9uYW1lJ10sJHBhcmFtc1sncXVpel9kZXNjJ10pKTsKICAgIGlmICgkZGJyZXN1bHQgPT09IGZhbHNlKQogICAgICAgewogICAgICAgcmV0dXJuICR0aGlzLT5EaXNwbGF5RXJyb3JQYWdlKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAkZGItPkVycm9yTXNnKCkpOwogICAgICAgfQogICAgJHBhcmFtc1sncXVpel9pZCddID0gJHF1aXpfaWQ7Cgl9CmVsc2UKCXsKCSRxdWVyeSA9ICdVUERBVEUgJy4gY21zX2RiX3ByZWZpeCgpLgoJCQkJJ21vZHVsZV9xel9xdWl6emVzIHNldCBuYW1lPT8sIGRlc2NyaXB0aW9uPT8gd2hlcmUgcXVpel9pZD0/JzsKCgkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KAogICAgICAgICAgICAgICAJJHBhcmFtc1sncXVpel9uYW1lJ10sJHBhcmFtc1sncXVpel9kZXNjJ10sCiAgICAgICAgICAgICAgIAkkcGFyYW1zWydxdWl6X2lkJ10pKTsKICAgIGlmICgkZGJyZXN1bHQgPT09IGZhbHNlKQogICAgICAgewogICAgICAgcmV0dXJuICR0aGlzLT5EaXNwbGF5RXJyb3JQYWdlKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAkZGItPkVycm9yTXNnKCkpOwogICAgICAgfQoJfQoKJHBhcmFtc1snbW9kdWxlX21lc3NhZ2UnXSA9ICR0aGlzLT5MYW5nKCdxdWl6X3NhdmVkJyk7CgppZiAoaXNzZXQoJHBhcmFtc1snc2F2ZSddKSkKCXsKCSR0aGlzLT5Eb0FjdGlvbignZWRpdHF1aXonLCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCk7CgkvLyR0aGlzLT5SZWRpcmVjdCgkaWQsICdlZGl0cXVpeicsICRyZXR1cm5pZCwgJHBhcmFtcyk7Cgl9CmVsc2UKCXsKCSR0aGlzLT5Eb0FjdGlvbignZGVmYXVsdGFkbWluJywgJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQpOwoJLy8kdGhpcy0+UmVkaXJlY3QoJGlkLCAnZGVmYXVsdGFkbWluJywgJHJldHVybmlkLCAkcGFyYW1zKTsKCX0KPz4=]]></data>
	</file>
	<file>
	  <filename>/action.savequiztaker.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKaWYgKCFpc3NldCgkZ0NtcykpIGV4aXQ7CgppZiAoISBpc3NldCgkcGFyYW1zWydxdWl6X2lkJ10pKQoJewoJZWNobyAkdGhpcy0+TGFuZygnc3BlY2lmeV9xdWl6Jyk7CglyZXR1cm47Cgl9CgokZXJyb3IgPSAnJzsKCiRleHRyYXMgPSAkdGhpcy0+Z2V0UG9wdWxhdGVkRXh0cmFGaWVsZHMoJGlkLCAkcGFyYW1zLCAtMSwgdHJ1ZSk7CgovLyB2YWxpZGF0ZSBpZiBjYWxsZWQgZm9yCmlmICgkdGhpcy0+R2V0UHJlZmVyZW5jZSgncmVxdWlyZV91c2VyJywgJzEnKSA9PSAnMScpCgl7CglpZiAoISBpc3NldCgkcGFyYW1zWydxenpfZW1haWwnXSkgfHwgZW1wdHkoJHBhcmFtc1sncXp6X2VtYWlsJ10pIHx8CgkJISBwcmVnX21hdGNoKCIvXihbXHdcZFwuXC1cX10pK1xAKFtcd1xkXC5cLVxfXSspXC4oXHcrKSQvaSIsCgkkcGFyYW1zWydxenpfZW1haWwnXSkpCgkJewoJCSRlcnJvciAuPSAnPGxpPicuJHRoaXMtPkxhbmcoJ2ludmFsaWRfZW1haWwnKS4nPC9saT4nOwoJCX0KCWlmICghIGlzc2V0KCRwYXJhbXNbJ3F6el9uYW1lJ10pIHx8IGVtcHR5KCRwYXJhbXNbJ3F6el9uYW1lJ10pKQoJCXsKCQkkZXJyb3IgLj0gJzxsaT4nLiR0aGlzLT5MYW5nKCdpbnZhbGlkX25hbWUnKS4nPC9saT4nOwoJCX0KCX0KZWxzZQoJewoJJHJjaGFycyA9ICJhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BSUVNUVVZXWFlaMDEyMzQ1Njc4OSI7CgkkYW5vbmlkID0gJyc7Cglmb3IgKCRpPTA7JGk8NjskaSsrKQoJCXsKCQkkYW5vbmlkIC49ICRyY2hhcnNbcmFuZCgwLDYzKV07CgkJfSAKCWlmICghIGlzc2V0KCRwYXJhbXNbJ3F6el9uYW1lJ10pIHx8IGVtcHR5KCRwYXJhbXNbJ3F6el9uYW1lJ10pKQoJCXsKCQkkcGFyYW1zWydxenpfbmFtZSddID0gJ2Fub255bW91cy0nLiRhbm9uaWQ7CQoJCX0KCWlmICghIGlzc2V0KCRwYXJhbXNbJ3F6el9lbWFpbCddKSB8fCBlbXB0eSgkcGFyYW1zWydxenpfZW1haWwnXSkpCgkJewoJCSRwYXJhbXNbJ3F6el9lbWFpbCddID0gJ2Fub255bW91cy0nLiRhbm9uaWQuJ0BzYW1wbGUuY29tJzsKCQl1bnNldCgkcGFyYW1zWydxenpfc2VuZF9hX2NvcHknXSk7CgkJfQoJfQoKLy8gdmFsaWRhdGUgZXh0cmEgZmllbGRzCmZvcigkaT0wOyRpPGNvdW50KCRleHRyYXMpOyRpKyspCgl7CglpZiAoJGV4dHJhc1skaV1bJ3JlcXVpcmVkJ10pCgkJewoJCWxpc3QgKCRyZXMsJG1lc3NhZ2UpID0gJHRoaXMtPnZhbGlkYXRlRXh0cmEoJGV4dHJhc1skaV0sJHBhcmFtcyk7CgkJaWYgKCEkcmVzKQoJCQl7CgkJCSRlcnJvciAuPSAnPGxpPicuJG1lc3NhZ2UuJzwvbGk+JzsKCQkJfQoJCX0KCX0KaWYgKHN0cmxlbigkZXJyb3IpID4gMCkKCXsKCSRwYXJhbXNbJ21vZHVsZV9tZXNzYWdlJ10gPSAnPHVsPicuJGVycm9yLic8L3VsPic7CglyZXR1cm4gJHRoaXMtPkRvQWN0aW9uKCdkZWZhdWx0JywgJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQpOwoJfQoKaWYgKCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdzYXZlX2J1dHRvbicsJzAnKSA9PSAnMScpCgl7CgkkcXVlcnkgPSAnU0VMRUNUIHRha2VyX2lkIGZyb20gJy4gY21zX2RiX3ByZWZpeCgpLgoJCQkJJ21vZHVsZV9xel90YWtlcnMgdCB3aGVyZSB0LmVtYWlsPT8gYW5kICcuCgkJCQkncXVpel9pZD0/IGFuZCBjb21wbGV0ZWQ9MCc7CgkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KAogICAgICAgICAgICAgICAJJHBhcmFtc1sncXp6X2VtYWlsJ10sJHBhcmFtc1sncXVpel9pZCddKSk7CglpZiAoJGRicmVzdWx0ICE9PSBmYWxzZSAmJiAkcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdygpKQoJCXsKCQlpZiAoJHJvd1sndGFrZXJfaWQnXSAhPSAtMSkKCQkJewoJCQkkdGhpcy0+c2V0VGFrZXJJZCgkcm93Wyd0YWtlcl9pZCddLCAkcGFyYW1zWydxdWl6X2lkJ10pOwoJCQkkdGhpcy0+UmVkaXJlY3QoJGlkLCAncmVzdG9yZXF1aXonLCAkcmV0dXJuaWQsICRwYXJhbXMsICAoJHRoaXMtPkdldFByZWZlcmVuY2UoJ3F1aXpfaW5saW5lJywnMScpPT0nMScpKTsJCgkJLy8JJHRoaXMtPkRvQWN0aW9uKCdyZXN0b3JlcXVpeicsICRpZCwgJHBhcmFtcywgJHJldHVybmlkKTsJCQkKCQkJcmV0dXJuOwoJCQl9CgkJfQoJfQoKaWYgKCEgaXNzZXQoJHBhcmFtc1sncXp6X3Rha2VyX2lkJ10pIHx8ICRwYXJhbXNbJ3F6el90YWtlcl9pZCddID09IC0xKQoJewogICAJJHRha2VyX2lkID0gJGRiLT5HZW5JRChjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9xel90YWtlcnNfc2VxJyk7CgkkcXVlcnkgPSAnSU5TRVJUIElOVE8gJy4gY21zX2RiX3ByZWZpeCgpLgoJCQkJJ21vZHVsZV9xel90YWtlcnMgKHRha2VyX2lkLCBxdWl6X2lkLCBuYW1lLCBlbWFpbCwgc2VuZF9yZXN1bHQsIGNvbXBsZXRlZCwgc3RhcnRfZGF0ZSkgVkFMVUVTICg/LD8sPyw/LD8sMCw/KSc7CgoJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkdGFrZXJfaWQsCiAgICAgICAgICAgICAgICAgICRwYXJhbXNbJ3F1aXpfaWQnXSwKICAgICAgICAgICAgICAgCSRwYXJhbXNbJ3F6el9uYW1lJ10sCiAgICAgICAgICAgICAgIAkkcGFyYW1zWydxenpfZW1haWwnXSwKICAgICAgICAgICAgICAgCShpc3NldCgkcGFyYW1zWydxenpfc2VuZF9hX2NvcHknXSk/MTowKSwKICAgICAgICAgICAgICAgICAgdHJpbSgkZGItPkRCVGltZVN0YW1wKHRpbWUoKSksIiciKSkpOwogICAgaWYgKCRkYnJlc3VsdCA9PT0gZmFsc2UpCiAgICAgICB7CiAgICAgICByZXR1cm4gJHRoaXMtPkRpc3BsYXlFcnJvclBhZ2UoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsICRkYi0+RXJyb3JNc2coKSk7CiAgICAgICB9CiAgICAgJHBhcmFtc1sncXp6X3Rha2VyX2lkJ10gPSAkdGFrZXJfaWQ7CiAgICB9CmVsc2UKCXsKCSRxdWVyeSA9ICdVUERBVEUgJy4gY21zX2RiX3ByZWZpeCgpLgoJCQkJJ21vZHVsZV9xel90YWtlcnMgc2V0IG5hbWU9PywgZW1haWw9Pywgc2VuZF9yZXN1bHQ9PyBXSEVSRSB0YWtlcl9pZD0/JzsKCgkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KAogICAgICAgICAgICAgICAJJHBhcmFtc1sncXp6X25hbWUnXSwKICAgICAgICAgICAgICAgCSRwYXJhbXNbJ3F6el9lbWFpbCddLAogICAgICAgICAgICAgICAJKGlzc2V0KCRwYXJhbXNbJ3F6el9zZW5kX2FfY29weSddKT8xOjApLAogICAgICAgICAgICAgICAJJHBhcmFtc1sncXp6X3Rha2VyX2lkJ10pKTsKICAgIGlmICgkZGJyZXN1bHQgPT09IGZhbHNlKQogICAgICAgewogICAgICAgcmV0dXJuICR0aGlzLT5EaXNwbGF5RXJyb3JQYWdlKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAkZGItPkVycm9yTXNnKCkpOwogICAgICAgfQoJfQoJCmlmIChjb3VudCgkZXh0cmFzKSA+IDApCgl7CgkkZHF1ZXJ5ID0gJ2RlbGV0ZSBmcm9tICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfcXpfZXh0cmFfdmFscyBXSEVSRSB0YWtlcl9pZD0/JzsKCSRpcXVlcnkgPSAnaW5zZXJ0IGludG8gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9xel9leHRyYV92YWxzICh0YWtlcl9pZCwgZmllbGRfaWQsIHZhbHVlKSBWQUxVRVMgKD8sPyw/KSc7CgkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJGRxdWVyeSxhcnJheSgkcGFyYW1zWydxenpfdGFrZXJfaWQnXSkpOwogICAgaWYgKCRkYnJlc3VsdCA9PT0gZmFsc2UpCiAgICAgICB7CiAgICAgICByZXR1cm4gJHRoaXMtPkRpc3BsYXlFcnJvclBhZ2UoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsICRkYi0+RXJyb3JNc2coKSk7CiAgICAgICB9Cglmb3IoJGk9MDskaTxjb3VudCgkZXh0cmFzKTskaSsrKQoJCXsKCQkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJGlxdWVyeSwKCQkJCWFycmF5KCRwYXJhbXNbJ3F6el90YWtlcl9pZCddLCRleHRyYXNbJGldWydmaWVsZF9pZCddLCRwYXJhbXNbJ3F6el9leHRyYV8nLiRleHRyYXNbJGldWydmaWVsZF9pZCddXSkpOwoJCWlmICgkZGJyZXN1bHQgPT09IGZhbHNlKQoJCSAgIHsKCQkgICByZXR1cm4gJHRoaXMtPkRpc3BsYXlFcnJvclBhZ2UoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsICRkYi0+RXJyb3JNc2coKSk7CgkJICAgfQoJCX0KCX0KCQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3F1aXp6YXJkX3Rha2VyX25hbWUnLCRwYXJhbXNbJ3F6el9uYW1lJ10pOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3F1aXp6YXJkX3Rha2VyX2VtYWlsJywkcGFyYW1zWydxenpfZW1haWwnXSk7CiR0aGlzLT5zZXRUYWtlcklkKCR0YWtlcl9pZCwgJHBhcmFtc1sncXVpel9pZCddKTsKJHBhcmFtc1sncXVlc3Rpb24nXT0wOwoKJHRoaXMtPlJlZGlyZWN0KCRpZCwgJ3Rha2VxdWl6JywgJHJldHVybmlkLCAkcGFyYW1zLCAgKCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdxdWl6X2lubGluZScsJzEnKT09JzEnKSk7Ci8vJHRoaXMtPkRvQWN0aW9uKCd0YWtlcXVpeicsICRpZCwgJHBhcmFtcywgJHJldHVybmlkKTsKCj8+]]></data>
	</file>
	<file>
	  <filename>/action.savetemplates.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKaWYgKCFpc3NldCgkZ0NtcykpIGV4aXQ7CgppZiAoISAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdBZG1pbmlzdGVyIFF1aXp6ZXMnKSkKCXsKCXJldHVybiAkdGhpcy0+RGlzcGxheUVycm9yUGFnZSgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwkdGhpcy0+TGFuZygnYWNjZXNzZGVuaWVkJykpOwoJfQoKaWYgKGlzc2V0KCRwYXJhbXNbJ3F1aXpfdGVtcGxhdGUnXSkgJiYgISBlbXB0eSgkcGFyYW1zWydxdWl6X3RlbXBsYXRlJ10pKQoJewoJJHRoaXMtPlNldFRlbXBsYXRlKCdxdWl6X3RlbXBsYXRlJywkcGFyYW1zWydxdWl6X3RlbXBsYXRlJ10sJ1F1aXp6YXJkJyk7Cgl9CmlmIChpc3NldCgkcGFyYW1zWydzY29yZV90ZW1wbGF0ZSddKSAmJiAhIGVtcHR5KCRwYXJhbXNbJ3Njb3JlX3RlbXBsYXRlJ10pKQoJewkKCSR0aGlzLT5TZXRUZW1wbGF0ZSgnc2NvcmVfdGVtcGxhdGUnLCRwYXJhbXNbJ3Njb3JlX3RlbXBsYXRlJ10sJ1F1aXp6YXJkJyk7Cgl9CmlmIChpc3NldCgkcGFyYW1zWydzaWdudXBfdGVtcGxhdGUnXSkgJiYgISBlbXB0eSgkcGFyYW1zWydzaWdudXBfdGVtcGxhdGUnXSkpCgl7CgkkdGhpcy0+U2V0VGVtcGxhdGUoJ3NpZ251cF90ZW1wbGF0ZScsJHBhcmFtc1snc2lnbnVwX3RlbXBsYXRlJ10sJ1F1aXp6YXJkJyk7Cgl9CmlmIChpc3NldCgkcGFyYW1zWydlbWFpbF90ZW1wbGF0ZSddKSAmJiAhIGVtcHR5KCRwYXJhbXNbJ2VtYWlsX3RlbXBsYXRlJ10pKQoJewoJJHRoaXMtPlNldFRlbXBsYXRlKCdlbWFpbF90ZW1wbGF0ZScsJHBhcmFtc1snZW1haWxfdGVtcGxhdGUnXSwnUXVpenphcmQnKTsKCX0KCiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdodG1sX2VtYWlsJywgaXNzZXQoJHBhcmFtc1snaHRtbF9lbWFpbCddKT8kcGFyYW1zWydodG1sX2VtYWlsJ106JycpOwoKLy8kcGFyYW1zWydtb2R1bGVfbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ3RlbXBsYXRlc3VwZGF0ZWQnKTsKJHBhcmFtcyA9IGFycmF5KCd0YWJfbWVzc2FnZSc9PiAndGVtcGxhdGVzdXBkYXRlZCcsICdhY3RpdmVfdGFiJyA9PiAndGVtcGxhdGUnKTsKJHRoaXMtPkRvQWN0aW9uKCdkZWZhdWx0YWRtaW4nLCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCk7Ci8vJHRoaXMtPlJlZGlyZWN0KCRpZCwgJ2RlZmF1bHRhZG1pbicsICRyZXR1cm5pZCwgJHBhcmFtcyk7Cgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.savethreshold.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKaWYgKCFpc3NldCgkZ0NtcykpIGV4aXQ7CgppZiAoISAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdBZG1pbmlzdGVyIFF1aXp6ZXMnKSkKCXsKCXJldHVybiAkdGhpcy0+RGlzcGxheUVycm9yUGFnZSgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwkdGhpcy0+TGFuZygnYWNjZXNzZGVuaWVkJykpOwoJfQoKJHRoaXMtPlNldFByZWZlcmVuY2UoJ3RocmVzaG9sZF9tZXNzYWdlJywgaXNzZXQoJHBhcmFtc1sndGhyZXNob2xkX21lc3NhZ2UnXSk/JHBhcmFtc1sndGhyZXNob2xkX21lc3NhZ2UnXTonJyk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCd0aHJlc2hvbGQnLCBpc3NldCgkcGFyYW1zWyd0aHJlc2hvbGQnXSk/JHBhcmFtc1sndGhyZXNob2xkJ106JycpOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgndGhyZXNob2xkX3NpbmdsZV9wYWdlJywgaXNzZXQoJHBhcmFtc1sndGhyZXNob2xkX3NpbmdsZV9wYWdlJ10pPyRwYXJhbXNbJ3RocmVzaG9sZF9zaW5nbGVfcGFnZSddOicnKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ3F1ZXN0aW9uX3dyb25nJywgaXNzZXQoJHBhcmFtc1sncXVlc3Rpb25fd3JvbmcnXSk/JHBhcmFtc1sncXVlc3Rpb25fd3JvbmcnXTonJyk7CgokcGFyYW1zID0gYXJyYXkoJ3RhYl9tZXNzYWdlJz0+ICdwcmVmc3VwZGF0ZWQnLCAnYWN0aXZlX3RhYicgPT4gJ3RocmVzaG9sZCcpOwokdGhpcy0+RG9BY3Rpb24oJ2RlZmF1bHRhZG1pbicsICRpZCwgJHBhcmFtcywgJHJldHVybmlkKTsKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.scorequiz.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKaWYgKCFpc3NldCgkZ0NtcykpIGV4aXQ7CgppZiAoISBpc3NldCgkcGFyYW1zWydxdWl6X2lkJ10pKQoJewoJZWNobyAkdGhpcy0+TGFuZygnc3BlY2lmeV9xdWl6Jyk7CglyZXR1cm47Cgl9CgokZGIgPSYgJGdDbXMtPkdldERiKCk7CiR0YWtlcl9pZCA9ICR0aGlzLT5nZXRUYWtlcklkKCRwYXJhbXNbJ3F1aXpfaWQnXSk7CgovLyR0aGlzLT5jb21wdXRlU2NvcmUoJGlkLCRwYXJhbXMsJHJldHVybmlkKTsKCiRxdWVyeSA9ICdTRUxFQ1QgbmFtZSBmcm9tICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfcXpfcXVpenplcyB3aGVyZSBxdWl6X2lkPT8nOwokcXVpeiA9ICRkYi0+R2V0T25lKCRxdWVyeSxhcnJheSgkcGFyYW1zWydxdWl6X2lkJ10pKTsKCiR0aGlzLT5zbWFydHktPmFzc2lnbigncXVpel9uYW1lJywkcXVpelsnbmFtZSddKTsKCiR0aGlzLT5zbWFydHktPmFzc2lnbigndGl0bGVfcXVpel9jb21wbGV0ZScsJHRoaXMtPkxhbmcoJ3RpdGxlX3F1aXpfY29tcGxldGUnKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbigndGl0bGVfcXVpel9zdW1tYXJ5JywkdGhpcy0+TGFuZygndGl0bGVfcXVpel9zdW1tYXJ5JykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RpdGxlX3lvdXJfYW5zd2VyJywkdGhpcy0+TGFuZygndGl0bGVfeW91cl9hbnN3ZXInKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbigndGl0bGVfc2tpcHBlZCcsJHRoaXMtPkxhbmcoJ3RpdGxlX3NraXBwZWQnKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbigndGl0bGVfY29ycmVjdCcsJHRoaXMtPkxhbmcoJ3RpdGxlX2NvcnJlY3QnKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbigndGl0bGVfY29ycmVjdF9hbnN3ZXInLCR0aGlzLT5MYW5nKCd0aXRsZV9jb3JyZWN0X2Fuc3dlcicpKTsKCmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhYmFzZSgnc2NvcmVfdGVtcGxhdGUnLCdRdWl6emFyZCcpOwoKJHF1ZXJ5ID0gJ1NFTEVDVCAqIGZyb20gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9xel90YWtlcnMgd2hlcmUgdGFrZXJfaWQ9Pyc7CiR1c2VyID0gJGRiLT5HZXRSb3coJHF1ZXJ5LGFycmF5KCR0YWtlcl9pZCkpOwoKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0YWtlcl9uYW1lJywkdXNlclsnbmFtZSddKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0YWtlcl9lbWFpbCcsJHVzZXJbJ2VtYWlsJ10pOwoKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdxdWl6X2RhdGUnLGRhdGUoJ3InKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbigncXVpel9ob3N0JywkX1NFUlZFUlsnU0VSVkVSX05BTUUnXSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbigncXVpel9zb3VyY2VfaXAnLCRfU0VSVkVSWydSRU1PVEVfQUREUiddKTsKCiRleHRyYXMgPSAkdGhpcy0+Z2V0UG9wdWxhdGVkRXh0cmFGaWVsZHMoJGlkLCAkcGFyYW1zLCAkdGFrZXJfaWQsIGZhbHNlKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdleHRyYXMnLCRleHRyYXMpOwoKCi8vIHNwbGl0dGluZyBvdXQgZW1haWwgdG8gdXNlciBhbmQgdG8gYWRtaW4sIHNvIHdlIGNhbiBwcmVzZW50IGRpZmZlcmVudCBpbmZvCmlmICgkdGhpcy0+R2V0UHJlZmVyZW5jZSgnc2VuZF9lbWFpbCcsJzAnKSA9PSAnMScgfHwgJHVzZXJbJ3NlbmRfcmVzdWx0J10gPT0gJzEnKQoJewoJJG1haWwgPSAkdGhpcy0+R2V0TW9kdWxlSW5zdGFuY2UoJ0NNU01haWxlcicpOwoJaWYgKCRtYWlsID09IEZBTFNFKQoJCXsKCQllY2hvJzxociAvPicuJHRoaXMtPkxhbmcoJ21pc3NpbmdfY21zX21haWxlcicpLiAnPGhyIC8+JzsKCQlhdWRpdCgtMSwgJHRoaXMtPkdldEZyaWVuZGx5TmFtZSgpLCR0aGlzLT5MYW5nKCdtaXNzaW5nX2Ntc19tYWlsZXInKSk7CgkJcmV0dXJuOwoJCX0KCSRtYWlsLT5yZXNldCgpOwoJJG1haWwtPlNldEZyb20oJHRoaXMtPkdldFByZWZlcmVuY2UoJ2VtYWlsX2Zyb20nLCR0aGlzLT5MYW5nKCdlbWFpbF9mcm9tJykpKTsKCSRtYWlsLT5TZXRGcm9tTmFtZSgkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZW1haWxfZnJvbW5hbWUnLCR0aGlzLT5MYW5nKCdlbWFpbF9mcm9tbmFtZScpKSk7CgkkbWFpbC0+U2V0U3ViamVjdCgkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZW1haWxfc3ViamVjdCcsJHRoaXMtPkxhbmcoJ2VtYWlsX3N1YmplY3QnKSkpOwoJJG1haWwtPlNldENoYXJTZXQoJHRoaXMtPkdldFByZWZlcmVuY2UoJ2VtYWlsX2VuY29kaW5nJywndXRmLTgnKSk7CgkKCglpZiAoJHVzZXJbJ3NlbmRfcmVzdWx0J10gPT0gJzEnKQoJCXsKCQkkbWFpbC0+QWRkQWRkcmVzcygkdXNlclsnZW1haWwnXSk7CgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd1c2VyX2VtYWlsJywxKTsKCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2FkbWluX2VtYWlsJywwKTsKCgkJaWYgKCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdodG1sX2VtYWlsJywnJykgPT0gJzEnKQoJCQl7CgkJCSRtYWlsLT5Jc0hUTUwodHJ1ZSk7CgkJCSRtYWlsLT5TZXRBbHRCb2R5KAoJCQlzdHJpcF90YWdzKCR0aGlzLT5Qcm9jZXNzVGVtcGxhdGVGcm9tRGF0YWJhc2UoJ2VtYWlsX3RlbXBsYXRlJywnUXVpenphcmQnKSkpOwoJCQkkbWFpbC0+U2V0Qm9keSgKCQkJJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhYmFzZSgnZW1haWxfdGVtcGxhdGUnLCdRdWl6emFyZCcpKTsKCQkJfQoJCWVsc2UKCQkJewoJCQkkbWFpbC0+SXNIVE1MKGZhbHNlKTsKCQkJJG1haWwtPlNldEJvZHkoCgkJCSR0aGlzLT5Qcm9jZXNzVGVtcGxhdGVGcm9tRGF0YWJhc2UoJ2VtYWlsX3RlbXBsYXRlJywnUXVpenphcmQnKSk7CgkJCX0KCgkJJHJlcyA9ICRtYWlsLT5TZW5kKCk7CgkJaWYgKCRyZXMgPT09IGZhbHNlKQoJCQl7CgkJCWVjaG8nPGhyIC8+Jy4KCQkJCSR0aGlzLT5MYW5nKCdjbXNfbWFpbGVyX2ZhaWxlZCcpLic6ICcuCgkJCQkkbWFpbC0+R2V0RXJyb3JJbmZvKCkuJzxociAvPic7CgkJCWF1ZGl0KC0xLAoJCQkJJHRoaXMtPkdldEZyaWVuZGx5TmFtZSgpLCR0aGlzLT5MYW5nKCdjbXNfbWFpbGVyX2ZhaWxlZCcpKTsKCQkJcmV0dXJuOwoJCQl9CgkJfQoKCWlmICgkdGhpcy0+R2V0UHJlZmVyZW5jZSgnc2VuZF9lbWFpbCcsJzAnKSA9PSAnMScpCgkJewoJCSRtYWlsLT5DbGVhckFsbFJlY2lwaWVudHMoKTsKCQkkbWFpbC0+QWRkQWRkcmVzcygkdGhpcy0+R2V0UHJlZmVyZW5jZSgnc2VuZF90bycpKTsKCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3VzZXJfZW1haWwnLDApOwoJCSR0aGlzLT5zbWFydHktPmFzc2lnbignYWRtaW5fZW1haWwnLDEpOwoKCQlpZiAoJHRoaXMtPkdldFByZWZlcmVuY2UoJ2h0bWxfZW1haWwnLCcnKSA9PSAnMScpCgkJCXsKCQkJJG1haWwtPklzSFRNTCh0cnVlKTsKCQkJJG1haWwtPlNldEFsdEJvZHkoCgkJCXN0cmlwX3RhZ3MoJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhYmFzZSgnZW1haWxfdGVtcGxhdGUnLCdRdWl6emFyZCcpKSk7CgkJCSRtYWlsLT5TZXRCb2R5KAoJCQkkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlRnJvbURhdGFiYXNlKCdlbWFpbF90ZW1wbGF0ZScsJ1F1aXp6YXJkJykpOwoJCQl9CgkJZWxzZQoJCQl7CgkJCSRtYWlsLT5Jc0hUTUwoZmFsc2UpOwoJCQkkbWFpbC0+U2V0Qm9keSgKCQkJJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhYmFzZSgnZW1haWxfdGVtcGxhdGUnLCdRdWl6emFyZCcpKTsKCQkJfQoJCSRyZXMgPSAkbWFpbC0+U2VuZCgpOwoJCWlmICgkcmVzID09PSBmYWxzZSkKCQkJewoJCQllY2hvJzxociAvPicuCgkJCQkkdGhpcy0+TGFuZygnY21zX21haWxlcl9mYWlsZWQnKS4nOiAnLgoJCQkJJG1haWwtPkdldEVycm9ySW5mbygpLic8aHIgLz4nOwoJCQlhdWRpdCgtMSwKCQkJCSR0aGlzLT5HZXRGcmllbmRseU5hbWUoKSwkdGhpcy0+TGFuZygnY21zX21haWxlcl9mYWlsZWQnKSk7CgkJCXJldHVybjsKCQkJfQoKCQl9Cgl9CgkvLyBwcmV2ZW50ICdlbSBmcm9tIGJhY2tpbmcgdGhyb3VnaCBhbmQgcmVzZXR0aW5nIHRoZWlyIGFuc3dlcnMgdG8KCS8vIHRoZSBjb3JyZWN0IGFuc3dlciEKCSRxdWVyeSA9ICdVUERBVEUgJy4gY21zX2RiX3ByZWZpeCgpLgoJCQkJJ21vZHVsZV9xel90YWtlcnMgc2V0IGNvbXBsZXRlZD0xLCBjb21wbGV0ZWRfZGF0ZT0/IFdIRVJFIHRha2VyX2lkPT8nOwoKCSRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkodHJpbSgkZGItPkRCVGltZVN0YW1wKHRpbWUoKSksIiciKSwkdGFrZXJfaWQpKTsKCgkkdGhpcy0+cmVzZXRUYWtlcklkKCRwYXJhbXNbJ3F1aXpfaWQnXSk7Cgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.showclientside.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKaWYgKCFpc3NldCgkZ0NtcykpIGV4aXQ7CgokZGIgPSYgJGdDbXMtPkdldERiKCk7CgokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3N0YXJ0Zm9ybScsICR0aGlzLT5DcmVhdGVGb3JtU3RhcnQoJGlkLCAnc2hvd3F1aXpyZXN1bHRzJywgJHJldHVybmlkLCdwb3N0JywnJywgICgkdGhpcy0+R2V0UHJlZmVyZW5jZSgncXVpel9pbmxpbmUnLCcxJyk9PScxJykpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdlbmRmb3JtJywgJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignaWQnLCRpZCk7CgppZiAoIWlzc2V0KCRwYXJhbXNbJ3F1aXpfaWQnXSkpCgl7CgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3N1Ym1pdCcsICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsICdxenpfc3VibWl0JywKCQkJJHRoaXMtPkxhbmcoJ2NvbnRpbnVlJykpKTsJCgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2l0ZW1zJywkdGhpcy0+Z2V0UXVpekxpc3QoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQpKTsKCSR0aGlzLT5zbWFydHktPmFzc2lnbigndGl0bGVfcXVpel9uYW1lJywkdGhpcy0+TGFuZygndGl0bGVfcXVpel9uYW1lJykpOwoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdoaWRkZW4nLCcnKTsKCSR0aGlzLT5zbWFydHktPmFzc2lnbignc3RlcCcsJ2ZpcnN0Jyk7CgllY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ3JlbG9hZF9xdWl6LnRwbCcpOwoJcmV0dXJuOwoJfQplbHNlaWYgKCEgaXNzZXQoJHBhcmFtc1sncXp6X3Rha2VyJ10pKQoJewoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzdWJtaXQnLCAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCAncXp6X3N1Ym1pdCcsCgkJCSR0aGlzLT5MYW5nKCdnZXRfcmVzdWx0cycpKSk7CgkKCSRzb3J0X2J5ID0gJ3QuY29tcGxldGVkX2RhdGUgREVTQywgdC5uYW1lIEFTQyc7CglpZiAoaXNzZXQoJHBhcmFtc1snc29ydF9ieSddKSkKCQl7CgkJaWYgKCRwYXJhbXNbJ3NvcnRfYnknXT09J25hbWUnKQoJCQl7CgkJCSRzb3J0X2J5ID0gJ3QubmFtZSBBU0MsIHQuY29tcGxldGVkX2RhdGUgREVTQyc7CgkJCX0KCQllbHNlIGlmICgkcGFyYW1zWydzb3J0X2J5J109PSdlbWFpbCcpCgkJCXsKCQkJJHNvcnRfYnkgPSAndC5lbWFpbCBBU0MsIHQuY29tcGxldGVkX2RhdGUgREVTQyc7CgkJCX0KCQl9Ci8vCSRxdWVyeSA9ICdTRUxFQ1QgdC50YWtlcl9pZCwgdC5lbWFpbCwgdC5uYW1lLCB0LmNvbXBsZXRlZF9kYXRlIGZyb20gJy5jbXNfZGJfcHJlZml4KCkuCi8vCQknbW9kdWxlX3F6X3Rha2VycyB0LCAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3F6XyB3aGVyZSB0LmNvbXBsZXRlZD0xIG9yZGVyIGJ5ICcuJHNvcnRfYnk7CgkkcXVlcnkgPSAnc2VsZWN0IHQudGFrZXJfaWQsIHQuZW1haWwsIHQubmFtZSwgdC5jb21wbGV0ZWRfZGF0ZSwgdC5jb21wbGV0ZWRfc2NvcmUgZnJvbSAnLmNtc19kYl9wcmVmaXgoKS4KCQknbW9kdWxlX3F6X3Rha2VycyB0IHdoZXJlIHQuY29tcGxldGVkPTEgIGFuZCAoc2VsZWN0IGNvdW50KCopIGZyb20gJy5jbXNfZGJfcHJlZml4KCkuCgkJJ21vZHVsZV9xel9yZXN1bHQgciB3aGVyZSByLnRha2VyX2lkPXQudGFrZXJfaWQgYW5kIHIucXVpel9pZD0/KSA+IDAgb3JkZXIgYnkgJy4kc29ydF9ieTsKCQoJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkcGFyYW1zWydxdWl6X2lkJ10pKTsKCSR0YWtlcnMgPSBhcnJheSgpOwoJd2hpbGUgKCRkYnJlc3VsdCAhPT0gZmFsc2UgJiYgJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKSkKCQl7CgkJJG9uZXJvdyA9IG5ldyBzdGRDbGFzcygpOwoJCSRvbmVyb3ctPmlkID0gJHJvd1sndGFrZXJfaWQnXTsKCQkkb25lcm93LT5lbWFpbCA9ICRyb3dbJ2VtYWlsJ107CgkJJG9uZXJvdy0+dGFrZXJuYW1lID0gJHJvd1snbmFtZSddOwoJCSRvbmVyb3ctPnNjb3JlID0gJHJvd1snY29tcGxldGVkX3Njb3JlJ107CgkJJG9uZXJvdy0+bGlua25hbWUgPSAkdGhpcy0+Q3JlYXRlTGluaygkaWQsCgkJCQkJJ3Nob3dxdWl6cmVzdWx0cycsICRyZXR1cm5pZCwKCQkJCQkkcm93WyduYW1lJ10sIGFycmF5KCdxdWl6X2lkJz0+JHBhcmFtc1sncXVpel9pZCddLAoJCQkJCSdxenpfdGFrZXInPT4kcm93Wyd0YWtlcl9pZCddKSk7CgkJJG9uZXJvdy0+dmlld2xpbmsgPSAkdGhpcy0+Q3JlYXRlTGluaygkaWQsCgkJCQkJJ3Nob3dxdWl6cmVzdWx0cycsICRyZXR1cm5pZCwKCQkJCQknVmlldycsJHRoaXMtPkxhbmcoJ2Jyb3dzZV9yZXN1bHRzJyksJycsJycsJ3N5c3RlbWljb24nKSwgYXJyYXkoJ3F1aXpfaWQnPT4kcGFyYW1zWydxdWl6X2lkJ10sCgkJCQkJJ3F6el90YWtlcic9PiRyb3dbJ3Rha2VyX2lkJ10pKTsKCQkkb25lcm93LT5jb21wbGV0ZWRfZGF0ZSA9IGRhdGUoImogTSBZLCBnYSIsJGRiLT5Vbml4VGltZVN0YW1wKCRyb3dbJ2NvbXBsZXRlZF9kYXRlJ10pKTsKCQlhcnJheV9wdXNoKCR0YWtlcnMsJG9uZXJvdyk7CgkJfQoJCQoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdoaWRkZW4nLCR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsJ3F1aXpfaWQnLCRwYXJhbXNbJ3F1aXpfaWQnXSkpOwoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzb3J0X2NvbHVtbl9uYW1lJywkdGhpcy0+Q3JlYXRlTGluaygkaWQsCgkJCQknc2hvd3F1aXpyZXN1bHRzJywgJHJldHVybmlkLAoJCQkJJHRoaXMtPkxhbmcoJ2NvbHVtbl9uYW1lJyksIGFycmF5KCdxdWl6X2lkJz0+JHBhcmFtc1sncXVpel9pZCddLAoJCQkJJ3NvcnRfYnknPT4nbmFtZScpKSk7CQoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzb3J0X2NvbHVtbl9jb21wbGV0ZWQnLCR0aGlzLT5DcmVhdGVMaW5rKCRpZCwKCQkJCSdzaG93cXVpenJlc3VsdHMnLCAkcmV0dXJuaWQsCgkJCQkkdGhpcy0+TGFuZygnY29sdW1uX2NvbXBsZXRlZCcpLCBhcnJheSgncXVpel9pZCc9PiRwYXJhbXNbJ3F1aXpfaWQnXSwKCQkJCSdzb3J0X2J5Jz0+J2RhdGUnKSkpOwkKCSR0aGlzLT5zbWFydHktPmFzc2lnbignc29ydF9jb2x1bW5fZW1haWwnLCR0aGlzLT5DcmVhdGVMaW5rKCRpZCwKCQkJCSdzaG93cXVpenJlc3VsdHMnLCAkcmV0dXJuaWQsCgkJCQkkdGhpcy0+TGFuZygnY29sdW1uX2VtYWlsJyksIGFycmF5KCdxdWl6X2lkJz0+JHBhcmFtc1sncXVpel9pZCddLAoJCQkJJ3NvcnRfYnknPT4nZW1haWwnKSkpOwkKCSR0aGlzLT5zbWFydHktPmFzc2lnbignY29sdW1uX3Njb3JlJywkdGhpcy0+TGFuZygnY29sdW1uX3Njb3JlJykpOwoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdpbnB1dF9xdWl6X3Rha2VyX2VtYWlsJywkdGFrZXJzKTsKCSR0aGlzLT5zbWFydHktPmFzc2lnbigndGFrZXJfbGlzdCcsJzEnKTsKCSR0aGlzLT5zbWFydHktPmFzc2lnbignc3RlcCcsJ3NlY29uZCcpOwoKCWVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSgncmVsb2FkX3F1aXoudHBsJyk7CglyZXR1cm47Cgl9CmVsc2UKCXsKCWlmIChpc19udW1lcmljKCRwYXJhbXNbJ3F6el90YWtlciddKSkKCQl7CgkJJHRha2VyX2lkID0gJHBhcmFtc1sncXp6X3Rha2VyJ107CgkJfQoJZWxzZQoJCXsKCQkkcXVlcnkgPSAnU0VMRUNUIHRha2VyX2lkIGZyb20gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9xel90YWtlcnMgd2hlcmUgZW1haWw9Pyc7CgkJJHVzZXIgPSAkZGItPkdldFJvdygkcXVlcnksYXJyYXkoJHBhcmFtc1sncXp6X3Rha2VyJ10pKTsKCQlpZiAoJHVzZXIgPT09IGZhbHNlKQoJCQl7CgkJCSR0YWtlcl9pZCA9ICRyb3dbJ3Rha2VyX2lkJ107CgkJCX0KCQllbHNlCgkJCXsKCQkJJHBhcmFtc1snbW9kdWxlX21lc3NhZ2UnXSA9ICR0aGlzLT5MYW5nKCdjYW50X2ZpbmRfdXNlcicpOwoJCQl1bnNldCgkcGFyYW1zWydxenpfdGFrZXInXSk7CgkJCSR0aGlzLT5Eb0FjdGlvbignc2hvd3F1aXpyZXN1bHRzJywkaWQsJHBhcmFtcywkcmV0dXJuaWQpOwoJCQl9CgkJfQoJJHBhcmFtc1sncXp6X3Rha2VyX2lkJ10gPSAkdGFrZXJfaWQ7CgoJbGlzdCgkc2NvcmUsICRxdWVzdGlvbnMpID0gJHRoaXMtPmNvbXB1dGVTY29yZSgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCk7CgkkdGhpcy0+bmVyZlF1ZXN0aW9uc0ZvckRpc3BsYXkoJHF1ZXN0aW9ucy0+cXVlc3Rpb25zKTsKCSR0aGlzLT5zZXRGb3JtU21hcnR5KCRpZCwgJHJldHVybmlkLCAkcGFyYW1zLCAkcXVlc3Rpb25zLT50aGlzX3BhZ2UsICRxdWVzdGlvbnMtPnBhZ2VfY291bnQsICRxdWVzdGlvbnMtPnF1ZXN0aW9ucyk7CgoJJHF1ZXJ5ID0gJ1NFTEVDVCBuYW1lIGZyb20gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9xel9xdWl6emVzIHdoZXJlIHF1aXpfaWQ9Pyc7CgkkcXVpeiA9ICRkYi0+R2V0T25lKCRxdWVyeSxhcnJheSgkcGFyYW1zWydxdWl6X2lkJ10pKTsKCQoJJHF1ZXJ5ID0gJ1NFTEVDVCAqIGZyb20gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9xel90YWtlcnMgd2hlcmUgdGFrZXJfaWQ9Pyc7CgkkdXNlciA9ICRkYi0+R2V0Um93KCRxdWVyeSxhcnJheSgkdGFrZXJfaWQpKTsKCgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3Rha2VyX25hbWUnLCR1c2VyWyduYW1lJ10pOwoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0YWtlcl9lbWFpbCcsJHVzZXJbJ2VtYWlsJ10pOwoKCSRleHRyYXMgPSAkdGhpcy0+Z2V0UG9wdWxhdGVkRXh0cmFGaWVsZHMoJGlkLCAkcGFyYW1zLCAkdGFrZXJfaWQsIGZhbHNlKTsKCSR0aGlzLT5zbWFydHktPmFzc2lnbignZXh0cmFzJywkZXh0cmFzKTsKCgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3F1aXpfbmFtZScsJHF1aXpbJ25hbWUnXSk7CiAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3Jldmlld2luZycsJzEnKTsKCSR0aGlzLT5zbWFydHktPmFzc2lnbigndGl0bGVfcXVpel9jb21wbGV0ZScsJHRoaXMtPkxhbmcoJ3RpdGxlX3F1aXpfY29tcGxldGUnKSk7CgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RpdGxlX3F1aXpfc3VtbWFyeScsJHRoaXMtPkxhbmcoJ3RpdGxlX3F1aXpfc3VtbWFyeScpKTsKCSR0aGlzLT5zbWFydHktPmFzc2lnbigndGl0bGVfeW91cl9hbnN3ZXInLCR0aGlzLT5MYW5nKCd0aXRsZV95b3VyX2Fuc3dlcicpKTsKCSR0aGlzLT5zbWFydHktPmFzc2lnbigndGl0bGVfc2tpcHBlZCcsJHRoaXMtPkxhbmcoJ3RpdGxlX3NraXBwZWQnKSk7CgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RpdGxlX2NvcnJlY3QnLCR0aGlzLT5MYW5nKCd0aXRsZV9jb3JyZWN0JykpOwoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0aXRsZV9jb3JyZWN0X2Fuc3dlcicsJHRoaXMtPkxhbmcoJ3RpdGxlX2NvcnJlY3RfYW5zd2VyJykpOwoKCWVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhYmFzZSgnc2NvcmVfdGVtcGxhdGUnLCdRdWl6emFyZCcpOwp9Cgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.showquizresults.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKaWYgKCFpc3NldCgkZ0NtcykpIGV4aXQ7CmlmICghICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ0FkbWluaXN0ZXIgUXVpenplcycpKQoJewoJcmV0dXJuICR0aGlzLT5EaXNwbGF5RXJyb3JQYWdlKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLCR0aGlzLT5MYW5nKCdhY2Nlc3NkZW5pZWQnKSk7Cgl9CgokZGIgPSYgJGdDbXMtPkdldERiKCk7CgokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3N0YXJ0Zm9ybScsICR0aGlzLT5DcmVhdGVGb3JtU3RhcnQoJGlkLCAnc2hvd3F1aXpyZXN1bHRzJywgJHJldHVybmlkLCdwb3N0JywnJywgICgkdGhpcy0+R2V0UHJlZmVyZW5jZSgncXVpel9pbmxpbmUnLCcxJyk9PScxJykpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdlbmRmb3JtJywgJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignaWQnLCRpZCk7CgppZiAoIWlzc2V0KCRwYXJhbXNbJ3F1aXpfaWQnXSkpCgl7CgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3N1Ym1pdCcsICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsICdxenpfc3VibWl0JywKCQkJJHRoaXMtPkxhbmcoJ2NvbnRpbnVlJykpKTsJCgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2l0ZW1zJywkdGhpcy0+Z2V0UXVpekxpc3QoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQpKTsKCSR0aGlzLT5zbWFydHktPmFzc2lnbigndGl0bGVfcXVpel9uYW1lJywkdGhpcy0+TGFuZygndGl0bGVfcXVpel9uYW1lJykpOwoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdoaWRkZW4nLCcnKTsKCSR0aGlzLT5zbWFydHktPmFzc2lnbignc3RlcCcsJ2ZpcnN0Jyk7CgllY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ3JlbG9hZF9xdWl6LnRwbCcpOwoJcmV0dXJuOwoJfQplbHNlaWYgKCEgaXNzZXQoJHBhcmFtc1sncXp6X3Rha2VyJ10pKQoJewoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzdWJtaXQnLCAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCAncXp6X3N1Ym1pdCcsCgkJCSR0aGlzLT5MYW5nKCdnZXRfcmVzdWx0cycpKSk7CgkKCSRzb3J0X2J5ID0gJ3QuY29tcGxldGVkX2RhdGUgREVTQywgdC5uYW1lIEFTQyc7CglpZiAoaXNzZXQoJHBhcmFtc1snc29ydF9ieSddKSkKCQl7CgkJaWYgKCRwYXJhbXNbJ3NvcnRfYnknXT09J25hbWUnKQoJCQl7CgkJCSRzb3J0X2J5ID0gJ3QubmFtZSBBU0MsIHQuY29tcGxldGVkX2RhdGUgREVTQyc7CgkJCX0KCQllbHNlIGlmICgkcGFyYW1zWydzb3J0X2J5J109PSdlbWFpbCcpCgkJCXsKCQkJJHNvcnRfYnkgPSAndC5lbWFpbCBBU0MsIHQuY29tcGxldGVkX2RhdGUgREVTQyc7CgkJCX0KCQl9Ci8vCSRxdWVyeSA9ICdTRUxFQ1QgdC50YWtlcl9pZCwgdC5lbWFpbCwgdC5uYW1lLCB0LmNvbXBsZXRlZF9kYXRlIGZyb20gJy5jbXNfZGJfcHJlZml4KCkuCi8vCQknbW9kdWxlX3F6X3Rha2VycyB0LCAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3F6XyB3aGVyZSB0LmNvbXBsZXRlZD0xIG9yZGVyIGJ5ICcuJHNvcnRfYnk7CgkkcXVlcnkgPSAnc2VsZWN0IHQudGFrZXJfaWQsIHQuZW1haWwsIHQubmFtZSwgdC5jb21wbGV0ZWRfZGF0ZSwgdC5jb21wbGV0ZWRfc2NvcmUgZnJvbSAnLmNtc19kYl9wcmVmaXgoKS4KCQknbW9kdWxlX3F6X3Rha2VycyB0IHdoZXJlIHQuY29tcGxldGVkPTEgIGFuZCAoc2VsZWN0IGNvdW50KCopIGZyb20gJy5jbXNfZGJfcHJlZml4KCkuCgkJJ21vZHVsZV9xel9yZXN1bHQgciB3aGVyZSByLnRha2VyX2lkPXQudGFrZXJfaWQgYW5kIHIucXVpel9pZD0/KSA+IDAgb3JkZXIgYnkgJy4kc29ydF9ieTsKCQoJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkcGFyYW1zWydxdWl6X2lkJ10pKTsKCSR0YWtlcnMgPSBhcnJheSgpOwoJd2hpbGUgKCRkYnJlc3VsdCAhPT0gZmFsc2UgJiYgJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKSkKCQl7CgkJJG9uZXJvdyA9IG5ldyBzdGRDbGFzcygpOwoJCSRvbmVyb3ctPmlkID0gJHJvd1sndGFrZXJfaWQnXTsKCQkkb25lcm93LT5lbWFpbCA9ICRyb3dbJ2VtYWlsJ107CgkJJG9uZXJvdy0+dGFrZXJuYW1lID0gJHJvd1snbmFtZSddOwoJCSRvbmVyb3ctPnNjb3JlID0gJHJvd1snY29tcGxldGVkX3Njb3JlJ107CgkJJG9uZXJvdy0+bGlua25hbWUgPSAkdGhpcy0+Q3JlYXRlTGluaygkaWQsCgkJCQkJJ3Nob3dxdWl6cmVzdWx0cycsICRyZXR1cm5pZCwKCQkJCQkkcm93WyduYW1lJ10sIGFycmF5KCdxdWl6X2lkJz0+JHBhcmFtc1sncXVpel9pZCddLAoJCQkJCSdxenpfdGFrZXInPT4kcm93Wyd0YWtlcl9pZCddKSk7CgkJJG9uZXJvdy0+dmlld2xpbmsgPSAkdGhpcy0+Q3JlYXRlTGluaygkaWQsCgkJCQkJJ3Nob3dxdWl6cmVzdWx0cycsICRyZXR1cm5pZCwKCQkJCQkkZ0Ntcy0+dmFyaWFibGVzWydhZG1pbnRoZW1lJ10tPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL3ZpZXcuZ2lmJywKCQkgICAgICAgCQkJJHRoaXMtPkxhbmcoJ2Jyb3dzZV9yZXN1bHRzJyksJycsJycsJ3N5c3RlbWljb24nKSwgYXJyYXkoJ3F1aXpfaWQnPT4kcGFyYW1zWydxdWl6X2lkJ10sCgkJCQkJJ3F6el90YWtlcic9PiRyb3dbJ3Rha2VyX2lkJ10pKTsKCQkkb25lcm93LT5jb21wbGV0ZWRfZGF0ZSA9IGRhdGUoImogTSBZLCBnYSIsJGRiLT5Vbml4VGltZVN0YW1wKCRyb3dbJ2NvbXBsZXRlZF9kYXRlJ10pKTsKCQlhcnJheV9wdXNoKCR0YWtlcnMsJG9uZXJvdyk7CgkJfQoJCQoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdoaWRkZW4nLCR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsJ3F1aXpfaWQnLCRwYXJhbXNbJ3F1aXpfaWQnXSkpOwoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzb3J0X2NvbHVtbl9uYW1lJywkdGhpcy0+Q3JlYXRlTGluaygkaWQsCgkJCQknc2hvd3F1aXpyZXN1bHRzJywgJHJldHVybmlkLAoJCQkJJHRoaXMtPkxhbmcoJ2NvbHVtbl9uYW1lJyksIGFycmF5KCdxdWl6X2lkJz0+JHBhcmFtc1sncXVpel9pZCddLAoJCQkJJ3NvcnRfYnknPT4nbmFtZScpKSk7CQoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzb3J0X2NvbHVtbl9jb21wbGV0ZWQnLCR0aGlzLT5DcmVhdGVMaW5rKCRpZCwKCQkJCSdzaG93cXVpenJlc3VsdHMnLCAkcmV0dXJuaWQsCgkJCQkkdGhpcy0+TGFuZygnY29sdW1uX2NvbXBsZXRlZCcpLCBhcnJheSgncXVpel9pZCc9PiRwYXJhbXNbJ3F1aXpfaWQnXSwKCQkJCSdzb3J0X2J5Jz0+J2RhdGUnKSkpOwkKCSR0aGlzLT5zbWFydHktPmFzc2lnbignc29ydF9jb2x1bW5fZW1haWwnLCR0aGlzLT5DcmVhdGVMaW5rKCRpZCwKCQkJCSdzaG93cXVpenJlc3VsdHMnLCAkcmV0dXJuaWQsCgkJCQkkdGhpcy0+TGFuZygnY29sdW1uX2VtYWlsJyksIGFycmF5KCdxdWl6X2lkJz0+JHBhcmFtc1sncXVpel9pZCddLAoJCQkJJ3NvcnRfYnknPT4nZW1haWwnKSkpOwkKCSR0aGlzLT5zbWFydHktPmFzc2lnbignY29sdW1uX3Njb3JlJywkdGhpcy0+TGFuZygnY29sdW1uX3Njb3JlJykpOwoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdpbnB1dF9xdWl6X3Rha2VyX2VtYWlsJywkdGFrZXJzKTsKCSR0aGlzLT5zbWFydHktPmFzc2lnbigndGFrZXJfbGlzdCcsJzEnKTsKCSR0aGlzLT5zbWFydHktPmFzc2lnbignc3RlcCcsJ3NlY29uZCcpOwoKCWVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSgncmVsb2FkX3F1aXoudHBsJyk7CglyZXR1cm47Cgl9CmVsc2UKCXsKCWlmIChpc19udW1lcmljKCRwYXJhbXNbJ3F6el90YWtlciddKSkKCQl7CgkJJHRha2VyX2lkID0gJHBhcmFtc1sncXp6X3Rha2VyJ107CgkJfQoJZWxzZQoJCXsKCQkkcXVlcnkgPSAnU0VMRUNUIHRha2VyX2lkIGZyb20gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9xel90YWtlcnMgd2hlcmUgZW1haWw9Pyc7CgkJJHVzZXIgPSAkZGItPkdldFJvdygkcXVlcnksYXJyYXkoJHBhcmFtc1sncXp6X3Rha2VyJ10pKTsKCQlpZiAoJHVzZXIgPT09IGZhbHNlKQoJCQl7CgkJCSR0YWtlcl9pZCA9ICRyb3dbJ3Rha2VyX2lkJ107CgkJCX0KCQllbHNlCgkJCXsKCQkJJHBhcmFtc1snbW9kdWxlX21lc3NhZ2UnXSA9ICR0aGlzLT5MYW5nKCdjYW50X2ZpbmRfdXNlcicpOwoJCQl1bnNldCgkcGFyYW1zWydxenpfdGFrZXInXSk7CgkJCSR0aGlzLT5Eb0FjdGlvbignc2hvd3F1aXpyZXN1bHRzJywkaWQsJHBhcmFtcywkcmV0dXJuaWQpOwoJCQl9CgkJfQoJJHBhcmFtc1sncXp6X3Rha2VyX2lkJ10gPSAkdGFrZXJfaWQ7CgoJbGlzdCgkc2NvcmUsICRxdWVzdGlvbnMpID0gJHRoaXMtPmNvbXB1dGVTY29yZSgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCk7CgkkdGhpcy0+bmVyZlF1ZXN0aW9uc0ZvckRpc3BsYXkoJHF1ZXN0aW9ucy0+cXVlc3Rpb25zKTsKCSR0aGlzLT5zZXRGb3JtU21hcnR5KCRpZCwgJHJldHVybmlkLCAkcGFyYW1zLCAkcXVlc3Rpb25zLT50aGlzX3BhZ2UsICRxdWVzdGlvbnMtPnBhZ2VfY291bnQsICRxdWVzdGlvbnMtPnF1ZXN0aW9ucyk7CgoJJHF1ZXJ5ID0gJ1NFTEVDVCBuYW1lIGZyb20gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9xel9xdWl6emVzIHdoZXJlIHF1aXpfaWQ9Pyc7CgkkcXVpeiA9ICRkYi0+R2V0T25lKCRxdWVyeSxhcnJheSgkcGFyYW1zWydxdWl6X2lkJ10pKTsKCQoJJHF1ZXJ5ID0gJ1NFTEVDVCAqIGZyb20gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9xel90YWtlcnMgd2hlcmUgdGFrZXJfaWQ9Pyc7CgkkdXNlciA9ICRkYi0+R2V0Um93KCRxdWVyeSxhcnJheSgkdGFrZXJfaWQpKTsKCgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3Rha2VyX25hbWUnLCR1c2VyWyduYW1lJ10pOwoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0YWtlcl9lbWFpbCcsJHVzZXJbJ2VtYWlsJ10pOwoKCSRleHRyYXMgPSAkdGhpcy0+Z2V0UG9wdWxhdGVkRXh0cmFGaWVsZHMoJGlkLCAkcGFyYW1zLCAkdGFrZXJfaWQsIGZhbHNlKTsKCSR0aGlzLT5zbWFydHktPmFzc2lnbignZXh0cmFzJywkZXh0cmFzKTsKCgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3F1aXpfbmFtZScsJHF1aXpbJ25hbWUnXSk7CiAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3Jldmlld2luZycsJzEnKTsKCSR0aGlzLT5zbWFydHktPmFzc2lnbigndGl0bGVfcXVpel9jb21wbGV0ZScsJHRoaXMtPkxhbmcoJ3RpdGxlX3F1aXpfY29tcGxldGUnKSk7CgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RpdGxlX3F1aXpfc3VtbWFyeScsJHRoaXMtPkxhbmcoJ3RpdGxlX3F1aXpfc3VtbWFyeScpKTsKCSR0aGlzLT5zbWFydHktPmFzc2lnbigndGl0bGVfeW91cl9hbnN3ZXInLCR0aGlzLT5MYW5nKCd0aXRsZV95b3VyX2Fuc3dlcicpKTsKCSR0aGlzLT5zbWFydHktPmFzc2lnbigndGl0bGVfc2tpcHBlZCcsJHRoaXMtPkxhbmcoJ3RpdGxlX3NraXBwZWQnKSk7CgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RpdGxlX2NvcnJlY3QnLCR0aGlzLT5MYW5nKCd0aXRsZV9jb3JyZWN0JykpOwoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0aXRsZV9jb3JyZWN0X2Fuc3dlcicsJHRoaXMtPkxhbmcoJ3RpdGxlX2NvcnJlY3RfYW5zd2VyJykpOwoKCWVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhYmFzZSgnc2NvcmVfdGVtcGxhdGUnLCdRdWl6emFyZCcpOwp9Cgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.takequiz.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKaWYgKCFpc3NldCgkZ0NtcykpIGV4aXQ7CgppZiAoISBpc3NldCgkcGFyYW1zWydxdWl6X2lkJ10pKQoJewoJZWNobyAkdGhpcy0+TGFuZygnc3BlY2lmeV9xdWl6Jyk7CglyZXR1cm47Cgl9CgkKLy9kZWJ1Z19kaXNwbGF5KCRwYXJhbXMpOwoKJHRoaXMtPnNhdmVRdWVzdGlvbkFuc3dlcnMoJGlkLCRwYXJhbXMsJHJldHVybmlkKTsKCiR0aGlzLT5zbWFydHktPmFzc2lnbignbWVzc2FnZScsJycpOwokd3Jvbmdvbmx5ID0gZmFsc2U7CgppZiAoaXNzZXQoJHBhcmFtc1sncXp6X2JhY2snXSkpCgl7CgkvLyBnb2luZyBiYWNrCgkkcGFyYW1zWydxenpfcGFnZSddID0gICRwYXJhbXNbJ3F6el9wcmV2X3BhZ2UnXTsKCX0KZWxzZSBpZiAoaXNzZXQoJHBhcmFtc1sncXp6X3N1Ym1pdCddKSkKCXsKCS8vIHF1aXogY291bGQgYmUgZG9uZSEKCS8vIGNoZWNrIGlmIGl0IG1lZXRzIHRoZSB0aHJlc2hvbGQKCWxpc3QoJHNjb3JlLCAkcXVlc3Rpb25zKSA9ICR0aGlzLT5jb21wdXRlU2NvcmUoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQpOwoJaWYgKCRzY29yZSA8ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCd0aHJlc2hvbGQnLDApKQoJCXsKCQkvLyBzZW5kICdlbSBiYWNrIGZvciBtb3JlCQoJCSR3cm9uZ29ubHkgPSB0cnVlOwoJCX0KCWVsc2UKCQl7CgkJLy8gdGhleSdyZSBnb29kLgoJCSR0aGlzLT5uZXJmUXVlc3Rpb25zRm9yRGlzcGxheSgkcXVlc3Rpb25zLT5xdWVzdGlvbnMpOwoJCSR0aGlzLT5zZXRGb3JtU21hcnR5KCRpZCwgJHJldHVybmlkLCAkcGFyYW1zLCAkcXVlc3Rpb25zLT50aGlzX3BhZ2UsICRxdWVzdGlvbnMtPnBhZ2VfY291bnQsICRxdWVzdGlvbnMtPnF1ZXN0aW9ucyk7CgkJJHRoaXMtPnN0b3JlU2NvcmUoJHBhcmFtc1sncXVpel9pZCddLCRzY29yZSk7CgkJJHRoaXMtPkRvQWN0aW9uKCdzY29yZXF1aXonLCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCk7CgkJcmV0dXJuOwoJCX0KCX0KZWxzZSBpZiAoaXNzZXQoJHBhcmFtc1sncXp6X3NhdmUnXSkpCgl7Ci8vCWRlYnVnX2Rpc3BsYXkoJHBhcmFtcyk7CgkkdGhpcy0+c2V0VGFrZXJJZCgkdGhpcy0+Z2V0VGFrZXJJZCgkcGFyYW1zWydxdWl6X2lkJ10pLAoJCSRwYXJhbXNbJ3F1aXpfaWQnXSwgZmFsc2UpOwoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdtZXNzYWdlJywkdGhpcy0+TGFuZygncXVpel9zYXZlZCcpKTsKCX0KZWxzZQoJewoJLy8gZ29pbmcgZm9yd2FyZAoJJHBhcmFtc1sncXp6X3BhZ2UnXSA9ICAoaXNzZXQoJHBhcmFtc1sncXp6X25leHRfcGFnZSddKT8kcGFyYW1zWydxenpfbmV4dF9wYWdlJ106MSk7Cgl9CgppZiAoJHdyb25nb25seSkKCXsKCSRwYXJhbXNbJ3F6el9yZW1lZGlhbCddID0gJHRoaXMtPmdldFRha2VySWQoJHBhcmFtc1sncXVpel9pZCddKS4kcGFyYW1zWydxdWl6X2lkJ107CglpZiAoJHRoaXMtPkdldFByZWZlcmVuY2UoJ3RocmVzaG9sZF9zaW5nbGVfcGFnZScsJzAnKT09JzEnKQoJCXsKCQkkaGFzX3RleHQgPSAkdGhpcy0+bWFrZVF1ZXN0aW9uc0Zvcm1zKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLCBmYWxzZSwgJHF1ZXN0aW9ucy0+cXVlc3Rpb25zKTsJCQoJCSR0aGlzLT5maWx0ZXJGb3JXcm9uZ0Fuc3dlcnMoJHF1ZXN0aW9ucy0+cXVlc3Rpb25zKTsKCQkkdGhpcy0+c2V0Rm9ybVNtYXJ0eSgkaWQsICRyZXR1cm5pZCwgJHBhcmFtcywgJHF1ZXN0aW9ucy0+dGhpc19wYWdlLCAkcXVlc3Rpb25zLT5wYWdlX2NvdW50LCAkcXVlc3Rpb25zLT5xdWVzdGlvbnMpOwoJCX0KCWVsc2UKCQl7CgkJJHBhcmFtc1sncXp6X3BhZ2UnXSA9IDE7CgkJJGhhc190ZXh0ID0gJHRoaXMtPmdldFF1ZXN0aW9uUGFnZSgkaWQsJHBhcmFtcywkcmV0dXJuaWQsZmFsc2UpOwoJCX0KCX0KZWxzZQoJewoJJGhhc190ZXh0ID0gJHRoaXMtPmdldFF1ZXN0aW9uUGFnZSgkaWQsJHBhcmFtcywkcmV0dXJuaWQsZmFsc2UpOwoJfQoKaWYgKCRoYXNfdGV4dCAmJiAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnc2hvd19wYWxldHRlJywnMCcpID09ICcxJykKCXsKCWluY2x1ZGUgImFjY2VudGVkLnBocCI7CglpbmNsdWRlICJwYWxldHRlX2luY2x1ZGUucGhwIjsJCQkKCX0KCgppZiAoaXNzZXQoJHBhcmFtc1sncXp6X3JlbWVkaWFsJ10pKQoJewoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdtZXNzYWdlJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgndGhyZXNob2xkX21lc3NhZ2UnKSk7Cgl9CgoKaWYgKCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdzYXZlX2J1dHRvbicsJzAnKSA9PSAnMScpCgl7CgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3NhdmUnLCAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCAncXp6X3NhdmUnLAoJCSR0aGlzLT5MYW5nKCdzYXZlX2xhdGVyJykpKTsKCX0KZWxzZQoJewoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzYXZlJywgJycpOwoJfQoKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzdGFydGZvcm0nLCAkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0KCRpZCwKCSd0YWtlcXVpeicsICRyZXR1cm5pZCwncG9zdCcsJycsICAoJHRoaXMtPkdldFByZWZlcmVuY2UoJ3F1aXpfaW5saW5lJywnMScpPT0nMScpKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignZW5kZm9ybScsICR0aGlzLT5DcmVhdGVGb3JtRW5kKCkpOwppZiAoJHBhcmFtc1sncXp6X3BhZ2UnXSA+IDEgJiYgISR3cm9uZ29ubHkpCgl7CgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2JhY2snLCAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCAncXp6X2JhY2snLAoJCSR0aGlzLT5MYW5nKCdiYWNrJykpKTsKCX0KZWxzZQoJewoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdiYWNrJywgJycpOwkKCX0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdjb250aW51ZScsICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsICdxenpfY29udGludWUnLAoJJHRoaXMtPkxhbmcoJ2NvbnRpbnVlJykpKTsKaWYgKGlzc2V0KCRwYXJhbXNbJ3F6el9sYXN0cGFnZSddKSAmJiAkcGFyYW1zWydxenpfbGFzdHBhZ2UnXSA9PSAxKQoJewoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzdWJtaXQnLCAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCAncXp6X3N1Ym1pdCcsCgkJJHRoaXMtPkxhbmcoJ3N1Ym1pdCcpKSk7CQoJfQoKCiR0aGlzLT5zbWFydHktPmFzc2lnbigncXVlc3Rpb25fd3JvbmcnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdxdWVzdGlvbl93cm9uZycpKTsKCgplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGVGcm9tRGF0YWJhc2UoJ3F1aXpfdGVtcGxhdGUnLCdRdWl6emFyZCcpOwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.validatequiz.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKaWYgKCFpc3NldCgkZ0NtcykpIGV4aXQ7CmlmICghICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ0FkbWluaXN0ZXIgUXVpenplcycpKQoJewoJcmV0dXJuICR0aGlzLT5EaXNwbGF5RXJyb3JQYWdlKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLCR0aGlzLT5MYW5nKCdhY2Nlc3NkZW5pZWQnKSk7Cgl9CgppZiAoISBpc3NldCgkcGFyYW1zWydxdWl6X2lkJ10pKQoJewoJZWNobyAkdGhpcy0+TGFuZygnc3BlY2lmeV9xdWl6Jyk7CglyZXR1cm47Cgl9CgovL2RlYnVnX2Rpc3BsYXkoJHBhcmFtcyk7CgokZGIgPSYgJGdDbXMtPkdldERiKCk7CgoKJHJlc2V0Q2hvaWNlcyA9ICJVUERBVEUgIi5jbXNfZGJfcHJlZml4KCkuCiAgIAkJCQkibW9kdWxlX3F6X2Fuc3dlcnMgU0VUIGlzX2NvcnJlY3Q9MCBXSEVSRSBxdWVzdGlvbl9pZD0/IGFuZCBxdWl6X2lkPT8iOwokc2V0Q2hvaWNlID0gIlVQREFURSAiLmNtc19kYl9wcmVmaXgoKS4KICAgCQkJCSJtb2R1bGVfcXpfYW5zd2VycyBTRVQgaXNfY29ycmVjdD0xIFdIRVJFIGFuc3dlcl9pZD0/IjsKCiR1cGRhdGVGaWxsaW4gPSAiVVBEQVRFICIuY21zX2RiX3ByZWZpeCgpLgogICAJCQkJIm1vZHVsZV9xel9hbnN3ZXJzIFNFVCBhbnN3ZXI9PyBXSEVSRSBhbnN3ZXJfaWQ9PyI7Cgpmb3JlYWNoICgkcGFyYW1zIGFzICRrZXk9PiR2YWwpCiAgIHsKICAgaWYgKHN1YnN0cigka2V5LDAsMikgPT0gJ3FfJykKICAgCQl7CiAgIAkJJHFpZCA9IHN1YnN0cigka2V5LDIpOwogICAJCWlmIChzdHJwb3MoJHFpZCwnXycpICE9PSBmYWxzZSkKICAgCQkJewogICAJCQkkcWlkID0gc3Vic3RyKCRxaWQsMCxzdHJwb3MoJHFpZCwnXycpKTsKICAgCQkJfQogICAJCSR0eXBlUGFyYW0gPSAkcGFyYW1zWyd0XycuJHFpZF07CiAgIAkJaWYgKCR0eXBlUGFyYW0gPT0gJ2YnKQogICAJCQl7CiAgIAkJCSRpZF9wYXJ0cyA9IGV4cGxvZGUoJ18nLCRrZXkpOwogICAJCQkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHVwZGF0ZUZpbGxpbixhcnJheSgkdmFsLCRpZF9wYXJ0c1syXSkpOwogICAJCQl9CiAgIAkJZWxzZWlmICgkdHlwZVBhcmFtID09ICdjJykKICAgCQkJewogICAJCQkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHJlc2V0Q2hvaWNlcywKICAgCQkJCWFycmF5KCRxaWQsICRwYXJhbXNbJ3F1aXpfaWQnXSkpOwogICAJCQlmb3JlYWNoICgkdmFsIGFzICR0aGlzT25lKQogICAJCQkJewogICAJCQkJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRzZXRDaG9pY2UsYXJyYXkoJHRoaXNPbmUpKTsKICAgCQkJCX0KICAgCQkJfQogICAJCWVsc2VpZiAoJHR5cGVQYXJhbSA9PSAnbScpCiAgIAkJCXsKICAgCQkJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRyZXNldENob2ljZXMsCiAgIAkJCQlhcnJheSgkcWlkLCAkcGFyYW1zWydxdWl6X2lkJ10pKTsKCQkJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRzZXRDaG9pY2UsCgkJCQlhcnJheSgkdmFsKSk7CiAgIAkJCX0KICAgCQl9CiAgIH0KJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ3ZhbGlkYXRlZCcpOwkKJHRoaXMtPkRvQWN0aW9uKCdtYW5hZ2VxdWl6JywgJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQpOwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/include/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/include/sample.txt</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[VHJpdmlhIFF1aXoJQW4gaW5zYW5lIHRyaXZpYSBxdWl6IHRvIHVzZSBhcyBhbiBleGFtcGxlCnMJU2VjdGlvbiBPbmU6IFRyaXZpYQp0CVRoaXMgc2VjdGlvbiBpcyBmdWxsIG9mIHRyaXZpYS4KZglUaGUgbGVhZCBkZXZlbG9wZXIgb2YgQ01TIE1hZGUgU2ltcGxlIHVzZWQgdG8gdXNlIHRoZSBuaWNrbmFtZSBfLgkxCVdpc2h5Cm0JVGhlIFRoaXJkIGRpZ2l0IG9mIHBpIHBhc3QgdGhlIGRlY2ltYWwgcG9pbnQgaXM6CTEJMQkwCTMJMAk0CTAJNQkwCTkKbQlUcnVlIG9yIEZhbHNlOiBtdW1ibGV0eXBlZyBpcyBhIGdhbWUgcGxheWVkIHdpdGggYSBrbmlmZS4JMQl0cnVlCTAJZmFsc2UKYwlXaGljaCBvZiB0aGUgZm9sbG93aW5nIGFyZSBwcmltYXJ5IGNvbG9ycz8JMQlyZWQJMAlncmVlbgkwCXB1cnBsZQkxCWJsdWUJMQl5ZWxsb3cJMAlvcmFuZ2UJMAlicm93bgptCVdoaWNoIGlzIGZhcnRoZXIgTm9ydGg6CTEJTW9uZ29saWEJMAlBZmdoYW5pc3RhbgptCUhvdyBtYW55IGJpdHMgaW4gYSBieXRlPwkwCTQJMQk4CTAJMTYJMAkzMgpmCUNvbXBsZXRlIHRoZSBxdW90YXRpb246ICJfIGlzIGJ1bmsuIiAtLSBIZW5yeSBGb3JkCTEJaGlzdG9yeQpjCVdoaWNoIG9mIHRoZSBmb2xsb3dpbmcgY29udGFpbiBjb2RlIGZyb20gQmVya2VsZXkgVW5peD8JMQlMaW51eAkxCVdpbmRvd3MgWFAJMAlHYXNvbGluZQkxCU1hYyBPUyBYCTEJV2luZG93cyBWaXN0YQkxCVNvbGFyaXMKbQlDbGFyZXQgaXM6CTAJcmVkIGFsZ2FlCTEJcmVkIHdpbmUJMAlhIHNtYWxsIGJpcmQJMAltYWRlIG9mIGNhcnJvdHMKZglUaGUgTm9ybWFuIGludmFzaW9uIG9mIFNheG9ueSB0b29rIHBsYWNlIGluIHRoZSB5ZWFyIF8sIHdoaWNoIHNhdyBLaW5nIEhhcm9sZCBraWxsZWQgYnkgYW4gYXJyb3cgZHVyaW5nIHRoZSBCYXR0bGUgb2YgXy4JMQkxMDY2CTEJSGFzdGluZ3MKYgpzCVNlY3Rpb24gVHdvOiBNb3JlIFRyaXZpYQp0CVRoaXMgc2VjdGlvbiBjb250YWlucyB0cml2aWEgdGhhdCBpcyBjb21wbGV0ZWx5IGlycmVsZXZhbnQgdG8geW91ciBsaWZlLgpjCVdoaWNoIG9mIHRoZSBmb2xsb3dpbmcgYXJlIG9iamVjdC1vcmllbnRlZCBsYW5ndWFnZXM/CTEJUnVieQkxCUphdmEJMAlDT0JPTAkwCUZPUlRSQU4JMQlFaWZmZWwKbQlUaGUgbWFpbiBjaGVtaWNhbCBjb25zdGl0dWVudCBvZiBwb3JjZWxhaW4gaXM6CTEJc2lsaWNvbgkwCWxlYWQJMAlpdm9yeQkwCWNhcmJvbgkwCW1hZ25lc2l1bQptCVdoaWNoIGlzIGZ1cnRoZXIgV2VzdDoJMQlSZW5vLCBOZXZhZGEJMAlMb3MgQW5nZWxlcywgQ2FsaWZvcm5pYQptCVdoYXQncyB0d28gdG8gdGhlIHRlbnRoIHBvd2VyPwkwCTI1NgkwCTUxMgkxCTEwMjQJMAkyMDQ4CTAJNDA5NgpjCVdoaWNoIG9mIHRoZSBmb2xsb3dpbmcgbW92aWVzIHdhcyByZWxlYXNlZCBpbiAxOTYyPwkxCUxhd3JlbmNlIG9mIEFyYWJpYQkxCVJpZGUgdGhlIEhpZ2ggQ291bnRyeQkxCVRoZSBNYW5jaHVyaWFuIENhbmRpZGF0ZQkxCVRvIEtpbGwgYSBNb2NraW5nYmlyZAkxCUxvbGl0YQkxCVdoYXRldmVyIEhhcHBlbmVkIHRvIEJhYnkgSmFuZT8JMQlIb3cgdGhlIFdlc3Qgd2FzIFdvbgpmCU1peGluZyByZWQgYW5kIGdyZWVuIGxpZ2h0IHdpbGwgZ2l2ZSB5b3UgXyBsaWdodC4JMQl5ZWxsb3cKYwlXaGljaCBvZiB0aGVzZSBhcmUgSXNsYXkgU2NvdGNoZXM/CTAJSm9obm55IFdhbGtlcgkwCUN1dHR5IFNhcmsJMQlMYWdhdnVsaW4JMQlMYXBocm9haWcJMQlCb3dtb3JlCTAJR2xlbmZpZGRpY2gKdAlUaGlzIG5leHQgb25lIGlzIHRoZSBkZXZlbG9wZXIncyBiaXJ0aGRheSBhcyB3ZWxsIQpmCVRoZSBCZWF0bGVzIHJlbGVhc2VkIHRoZSBhbGJ1bSAiU2d0LiBQZXBwZXIncyBMb25lbHkgSGVhcnRzIENsdWIgQmFuZCIgb24gXyAxc3QsIDE5NjcuCTEJSnVuZQptCVRydWUgb3IgRmFsc2U6IFNjaWVuY2UgRmljdGlvbiB3cml0ZXIgUGhpbGlwIEsuIERpY2sgaGFkIGEgdHdpbiBzaXN0ZXIgbmFtZWQgSmFuZS4JMQl0cnVlCTAJZmFsc2UKYgpzCVNlY3Rpb24gVGhyZWU6IFRoZSBFbmQgb2YgVHJpdmlhCnQJVGhpcyBzZWN0aW9uIGlzIHRoZSBsYXN0IGJ1bmNoIG9mIHRyaXZpYSBpbiB0aGlzIHF1aXouCmMJV2hpY2ggb2YgdGhlIGZvbGxvd2luZyB3ZXJlIFN1bWVyaWFuIEdvZHM/CTAJTG9raQkxCUVua2kJMQlBbgkwCUJlbGxvbmEJMQlTaW4JMAlLYWxpCmYJSm9obiBGb3JkLCBmYW1lZCBtb3ZpZSBkaXJlY3RvciBhbmQgcmVjaXBpZW50IG9mIGZvdXIgIkJlc3QgRGlyZWN0b3IiIEFjYWRlbXkgQXdhcmRzIHdhcyBib3JuIHdpdGggdGhlIGxhc3QgbmFtZSBfLgkxCUZlZW5leQptCVdoaWNoIHdhcyBpbnZlbnRlZCBmaXJzdD8JMQliZWVyCTAJY2FuZGxlcwkwCWJyb256ZSB3ZWFwb25zCTAJdGhlIGFiYWN1cwkwCXRoZSBhcmNoCm0JV2hpY2ggbWV0YWwgaXMgbGVhc3QgZGVuc2U/CTEJYmVyeWxsaXVtCTAJYWx1bWludW0JMAljb2JvbHQJMAl0aW4JMAlwbHV0b25pdW0KZglKYWNrIFNwcmF0IGNvdWxkIGVhdCBubyBfLCBoaXMgd2lmZSBjb3VsZCBlYXQgbm8gXy4JMQlmYXQJMQlsZWFuCmYJVGhlIGFuaW1hbCB3aXRoIHRoZSBzY2llbnRpZmljIG5hbWUgImZlbGlzIGNhdHVzIiBpcyBjb21tb25seSBrbm93biBhcyBfLgkxCWNhdA==]]></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[PD9waHAKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ1F1aXp6YXJkJzsKJGxhbmdbJ3JlYWxseV91bmluc3RhbGwnXSA9ICdSZWFsbHk/IFlvdVwncmUgc3VyZSB5b3Ugd2FudCB0byB1bmluc3RhbGwgdGhpcyBmaW5lIG1vZHVsZT8nOwokbGFuZ1sndW5pbnN0YWxsZWQnXSA9ICdNb2R1bGUgVW5pbnN0YWxsZWQuJzsKJGxhbmdbJ2luc3RhbGxlZCddID0gJ01vZHVsZSB2ZXJzaW9uICVzIGluc3RhbGxlZC4nOwokbGFuZ1sncHJlZnN1cGRhdGVkJ10gPSAnTW9kdWxlIHByZWZlcmVuY2VzIHVwZGF0ZWQuJzsKJGxhbmdbJ2FjY2Vzc2RlbmllZCddID0gJ0FjY2VzcyBEZW5pZWQuIFBsZWFzZSBjaGVjayB5b3VyIHBlcm1pc3Npb25zLic7CiRsYW5nWydlcnJvciddID0gJ0Vycm9yISc7CiRsYW5nWyd1cGdyYWRlZCddID0gJ01vZHVsZSB1cGdyYWRlZCB0byB2ZXJzaW9uICVzLic7CiRsYW5nWydhcmV5b3VzdXJlJ109J0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgdGhpcz8nOwokbGFuZ1snYXJleW91c3VyZXF1aXonXT0nQXJlIHlvdSBzdXJlPyBEZWxldGluZyBhIHF1aXogd2lsbCBhbHNvIGRlbGV0ZSBhbGwgaXRzIHF1ZXN0aW9ucyBhbmQgYWxsIHJlc3BvbnNlcyB0byB0aGF0IHF1aXouJzsKJGxhbmdbJ2FyZXlvdXN1cmVxdWVzdGlvbiddPSdBcmUgeW91IHN1cmU/IERlbGV0aW5nIGEgcXVlc3Rpb24gd2lsbCBhbHNvIGRlbGV0ZSBhbGwgcmVzcG9uc2VzIHRvIHRoYXQgcXVlc3Rpb24uJzsKJGxhbmdbJ2RlbGV0ZSddPSdEZWxldGUnOwokbGFuZ1sncXVpemRlbGV0ZWQnXT0nUXVpeiBoYXMgYmVlbiBkZWxldGVkLic7CiRsYW5nWydxdWVzdGlvbmRlbGV0ZWQnXT0nUXVlc3Rpb24gaGFzIGJlZW4gZGVsZXRlZC4nOwokbGFuZ1sndHlwZV9tJ109J011bHRpcGxlIENob2ljZSc7CiRsYW5nWyd0eXBlX2MnXT0nQ2hvb3NlIE9uZSBvciBNb3JlJzsKJGxhbmdbJ3R5cGVfZiddPSdGaWxsIGluIHRoZSBCbGFuayhzKSc7CiRsYW5nWyd0eXBlX3QnXT0nKiBMaW5lIG9mIFRleHQnOwokbGFuZ1sndHlwZV9zJ109JyogUXVpeiBTZWN0aW9uJzsKJGxhbmdbJ3R5cGVfYiddPSctIFBhZ2UgQnJlYWsnOwokbGFuZ1sndHlwZV9wJ109J0NvbnRlbnQgUGFnZSc7CiRsYW5nWydzZWxlY3Rfb25lJ109J1NlbGVjdCBPbmUnOwokbGFuZ1sncXVlc3Rpb25fc2F2ZWQnXT0nUXVlc3Rpb24gU2F2ZWQnOwokbGFuZ1sndXBsb2FkcHJvYmxlbSddPSdVcGxvYWQgcHJvYmxlbSAtIGNhblwndCBmaW5kIHVwbG9hZGVkIGZpbGUuJzsKJGxhbmdbJ3F1aXpfaW1wb3J0ZWQnXT0nUXVpeiBoYXMgYmVlbiBpbXBvcnRlZC4nOwokbGFuZ1snc3BlY2lmeV9xdWl6J109J05vIHF1aXogd2FzIHNwZWNpZmllZCBpbiB0aGUgdGFnLiBQbGVhc2UgY2hlY2sgdGhlIGhlbHAuJzsKJGxhbmdbJ2NvbnRpbnVlJ109J0NvbnRpbnVlJzsKJGxhbmdbJ3Rha2VxdWl6J109J1Rha2UgUXVpeic7CiRsYW5nWydiYWNrJ109J0JhY2snOwokbGFuZ1snc2F2ZV9sYXRlciddPSdTYXZlIGZvciBMYXRlcic7CiRsYW5nWydzdWJtaXQnXT0nU3VibWl0IEFuc3dlcnMnOwokbGFuZ1sncGFnZXhvZnknXT0nUGFnZSAlcyBvZiAlcyc7CiRsYW5nWydwYWdlJ109J1BhZ2UnOwokbGFuZ1snZG93biddID0gJ01vdmUgbGF0ZXInOwokbGFuZ1sndXAnXSA9ICdNb3ZlIGVhcmxpZXInOwokbGFuZ1snbmEnXSA9ICduL2EnOwokbGFuZ1snYnJvd3NlX3Jlc3VsdHMnXT0nUmVzdWx0cyc7CgokbGFuZ1sncXVpenRlbXBsYXRlJ10gPSAnUXVpeiBUZW1wbGF0ZSc7CiRsYW5nWydlbWFpbHRlbXBsYXRlJ10gPSAnRW1haWwgVGVtcGxhdGUnOwokbGFuZ1snc2NvcmV0ZW1wbGF0ZSddID0gJ1Njb3JlIFBhZ2UgVGVtcGxhdGUnOwokbGFuZ1snZXh0cmFmaWVsZHMnXSA9ICdFeHRyYSBGaWVsZHMnOwokbGFuZ1snZW1haWxjb25maWcnXSA9ICdFbWFpbCBDb25maWcnOwokbGFuZ1sndGhyZXNob2xkJ10gPSAnU2NvcmUgVGhyZXNob2xkJzsKJGxhbmdbJ3RlbXBsYXRlc3VwZGF0ZWQnXSA9ICdUZW1wbGF0ZXMgVXBkYXRlZC4nOwokbGFuZ1snbWlzc2luZ19jbXNfbWFpbGVyJ10gPSAnRmFpbGVkIHRvIGxvYWQgQ01TTWFpbGVyISBObyBlbWFpbCBzZW50Lic7CiRsYW5nWydjbXNfbWFpbGVyX2ZhaWxlZCddID0gJ0NNU01haWxlciByZXR1cm5lZCBhbiBlcnJvciBjb25kaXRpb24uIFBsZWFzZSBoYXZlIHRoZSBhZG1pbiB2ZXJpZnkgdGhleSBjYW4gc3VjY2Vzc2Z1bGx5IHNlbmQgdGVzdCBlbWFpbHMgdmlhIHRoZSBDTVNNYWlsZXIgQWRtaW4gUGFuZWwuJzsKJGxhbmdbJ2VtYWlsX3N1YmplY3QnXSA9ICdRdWl6IFJlc3VsdHMhJzsKJGxhbmdbJ2VtYWlsX2Zyb20nXSA9ICduby1yZXBseUB3ZWJzaXRlLmNvbSc7CiRsYW5nWydlbWFpbF9mcm9tbmFtZSddID0gJ1F1aXp6YXJkIE1vZHVsZSc7CgoKJGxhbmdbJ2ludmFsaWRfZW1haWwnXT0nUGxlYXNlIGVudGVyIGEgdmFsaWQgZW1haWwgYWRkcmVzcy4nOwokbGFuZ1snaW52YWxpZF9uYW1lJ109J1BsZWFzZSBlbnRlciB5b3VyIG5hbWUuJzsKCiRsYW5nWydtb2RkZXNjcmlwdGlvbiddID0gJ1RoaXMgbW9kdWxlIGlzIGEgcGxhY2VtZW50IGV4YW0gbW9kdWxlLic7CiRsYW5nWydxdWl6emVzJ10gPSAnUXVpenplcyc7CiRsYW5nWydhZGRxdWl6J10gPSAnQWRkIGEgUXVpeic7CiRsYW5nWydhZGRxdWVzdGlvbiddID0gJ0FkZCBhIFF1ZXN0aW9uJzsKJGxhbmdbJ3Jlb3JkZXJfcXVpeiddID0gJ1JlLW9yZGVyIFF1ZXN0aW9ucyc7CiRsYW5nWydyZW9yZGVyJ10gPSAnUmVvcmRlcic7CiRsYW5nWydyZW9yZGVyZWQnXSA9ICdRdWVzdGlvbnMgaGF2ZSBiZWVuIHJlb3JkZXJlZC4nOwokbGFuZ1snY29uZmlndXJhdGlvbiddID0gJ0NvbmZpZ3VyYXRpb24nOwokbGFuZ1snaW1wb3J0J10gPSAnSW1wb3J0JzsKJGxhbmdbJ25vcXVpenplcyddID0gJ05vIFF1aXp6ZXMgZGVmaW5lZCc7CiRsYW5nWydub3F1ZXN0aW9ucyddID0gJ05vIFF1ZXN0aW9ucyBkZWZpbmVkJzsKJGxhbmdbJ3NhdmUnXSA9ICdTYXZlJzsKJGxhbmdbJ2RvbmUnXSA9ICdEb25lJzsKJGxhbmdbJ2V4cG9ydCddID0gJ0V4cG9ydCc7CiRsYW5nWydtYW5hZ2UnXSA9ICdWYWxpZGF0ZSBBbnN3ZXJzJzsKJGxhbmdbJ2JhY2tfdG9fbWFpbiddID0gJ0JhY2sgdG8gUXVpenphcmQnOwokbGFuZ1snYmFja190b19xdWl6J10gPSAnUXVpeic7CiRsYW5nWyd2YWxpZGF0ZWQnXSA9ICdBbnN3ZXJzIENvcnJlY3RlZCc7CiRsYW5nWyd2YWxpZGF0ZSddID0gJ1N1Ym1pdCBDb3JyZWN0ZWQgQW5zd2Vycyc7CiRsYW5nWydzdGF0cyddID0gJ1VzYWdlIFJlcG9ydCc7CiRsYW5nWydxdWl6X3NhdmVkJ10gPSAnUXVpeiBTYXZlZCc7CiRsYW5nWydjb2x1bW5fbmFtZSddPSdOYW1lJzsKJGxhbmdbJ2NvbHVtbl9zY29yZSddPSdTY29yZSc7CiRsYW5nWydjb2x1bW5fZGVzYyddPSdEZXNjcmlwdGlvbic7CiRsYW5nWydjb2x1bW5fY29tcGxldGVkJ109J0NvbXBsZXRlZCBEYXRlJzsKJGxhbmdbJ2NvbHVtbl9xY291bnQnXT0nIyBvZjxiciAvPlF1ZXN0aW9ucyc7CiRsYW5nWydjb2x1bW5fY29ycmVjdCddPSdDb3JyZWN0IEFuc3dlcic7CiRsYW5nWydjb2x1bW5fYW5zd2VyJ109J0Fuc3dlciBUZXh0JzsKJGxhbmdbJ2NvbHVtbl90eXBlJ109J1R5cGUnOwokbGFuZ1snY29sdW1uX3F1ZXN0aW9uJ109J1F1ZXN0aW9uJzsKJGxhbmdbJ2NvbHVtbl9lbWJlZCddPSdUYWcgdG8gRW1iZWQnOwokbGFuZ1snY29sdW1uX2VtYWlsJ109J0VtYWlsIEFkZHJlc3MnOwokbGFuZ1snY29sdW1uX2V4cG9ydCddPSdNYW5hZ2VtZW50JzsKJGxhbmdbJ3RpdGxlX3NlbmRfZW1haWwnXSA9ICdTZW5kIHJlc3VsdHMgdG8gcXVpeiBtYW5hZ2VyIHZpYSBlbWFpbCc7CiRsYW5nWyd0aXRsZV9zZW5kX3RvJ10gPSAnRW1haWwgYWRkcmVzcyB0byBzZW5kIHRvJzsKJGxhbmdbJ3RpdGxlX2RlZmF1bHRfcXVlc3Rpb25zJ10gPSAnRGVmYXVsdCBudW1iZXIgb2YgcXVlc3Rpb25zIHBlciBwYWdlIChpZiBub3QgdXNpbmcgbWFudWFsIHBhZ2luYXRpb24pJzsKJGxhbmdbJ3RpdGxlX3BhZ2luYXRlX2NvdW50J10gPSAnUGFnaW5hdGUgYnkgbnVtYmVyIG9mIHF1ZXN0aW9ucyc7CiRsYW5nWyd0aXRsZV9wYWdpbmF0aW9uX2hlbHAnXSA9ICdZb3VyIHF1aXogY2FuIGJlIHNwbGl0IGludG8gbXVsdGlwbGUgcGFnZXMuIElmIHlvdSBhZGQgcGFnZSBicmVha3Mgd2hlbiBjcmVhdGluZyB5b3VyIHF1aXosIGl0IHdpbGwgYnJlYWsgb24gdGhvc2UgYm91bmRhcmllcy4gQnV0IGlmIHlvdSAicGFnaW5hdGUgYnkgbnVtYmVyIG9mIHF1ZXN0aW9ucywiIGl0IHdpbGwgYWxzbyBjcmVhdGUgYSBwYWdlIGJyZWFrIGFmdGVyIHRoYXQgbnVtYmVyIG9mIHF1ZXN0aW9ucyAoc28gbm8gcGFnZSB3aWxsIGhhdmUgbW9yZSB0aGFuIHRoZSBudW1iZXIgeW91IHNlbGVjdGVkKS4nOwokbGFuZ1sndGl0bGVfcGFnaW5hdGVfYnJlYWsnXSA9ICdQYWdpbmF0ZSBvbmx5IGJ5IG1hbnVhbCBwYWdlIGJyZWFrcyc7CiRsYW5nWyd0aXRsZV9tYXhfYW5zd2VycyddID0gJ01heGltdW0gbnVtYmVyIG9mIGFuc3dlcnMgcGVyIHF1ZXN0aW9uJzsKJGxhbmdbJ3RpdGxlX3NhdmVfcHJlZnMnXSA9ICdTYXZlIFNldHRpbmdzJzsKJGxhbmdbJ3RpdGxlX3F1aXpfbmFtZSddID0gJ1F1aXogTmFtZSc7CiRsYW5nWyd0aXRsZV9xdWl6X2Rlc2MnXSA9ICdRdWl6IERlc2NyaXB0aW9uJzsKJGxhbmdbJ3RpdGxlX3F1ZXN0aW9uX3RleHQnXT0nUXVlc3Rpb24gVGV4dCc7CiRsYW5nWyd0aXRsZV9xdWVzdGlvbl90aXRsZSddPSdUaXRsZSc7CiRsYW5nWyd0aXRsZV9wYWdpbmF0aW9uJ109J1BhZ2luYXRlIGJ5IG51bWJlciBvZiBxdWVzdGlvbnMgb3IgcmVxdWlyZSBtYW51YWwgcGFnZSBicmVha3M/JzsKJGxhbmdbJ3RpdGxlX2Fuc3dlcl90ZXh0X2hlbHAnXT0nUGxhY2UgYW4gdW5kZXJzY29yZSAiXyIgaW4gdGhlIHF1ZXN0aW9uIGZvciBlYWNoICJmaWxsIGluIiBhbnN3ZXIuIFRoZW4gZW50ZXIgdGhlIGNvcnJlY3QgYW5zd2VyIGluIHRoZSBjb3JyZXNwb25kaW5nIHNwYWNlIGJlbG93Lic7CiRsYW5nWyd0aXRsZV9maWxsaW5fbGVuJ10gPSAnQWRhcHQgbGVuZ3RoIG9mIGJsYW5rcyBmb3IgImZpbGwgaW4iIGFuc3dlcnMnOwokbGFuZ1sndGl0bGVfZmlsbGluX2xlbl9oZWxwJ10gPSAnTWFrZSBibGFuayBsZW5ndGggYXBwcm94aW1hdGVseSB0aGUgbGVuZ3RoIG9mIHRoZSBjb3JyZWN0IGFuc3dlciAod2l0aCBzb21lIHJhbmRvbSB2YXJpYXRpb24pPyc7CiRsYW5nWyd0aXRsZV9xdWVzdGlvbl90eXBlJ109J1R5cGUgb2YgUXVlc3Rpb24nOwokbGFuZ1sndGl0bGVfYW5zd2VyX3RleHQnXT0nQW5zd2VyJzsKJGxhbmdbJ3RpdGxlX3NraXBwZWQnXT0nTm8gQW5zd2VyIEdpdmVuJzsKJGxhbmdbJ3RpdGxlX3NhdmVfaGVscCddPSdTYXZlIHlvdXIgUXVpeiwgdGhlbiB5b3UgY2FuIHN0YXJ0IGFkZGluZyBxdWVzdGlvbnMuJzsKJGxhbmdbJ3RpdGxlX2ZpbGVfdG9fdXBsb2FkJ109J0ZpbGUgdG8gaW1wb3J0JzsKJGxhbmdbJ3RpdGxlX2ZpbGVfdG9fdXBsb2FkX2hlbHAnXT0nU2VsZWN0IGEgcHJldmlvdXNseSBleHBvcnRlZCBRdWl6IGRhdGEgZmlsZS4nOwokbGFuZ1sndGl0bGVfbmFtZSddPSdZb3VyIE5hbWUnOwokbGFuZ1sndGl0bGVfZW1haWwnXT0nWW91ciBlbWFpbCBhZGRyZXNzJzsKJGxhbmdbJ3RpdGxlX3NlbmRfYV9jb3B5J109J1NlbmQgYSBjb3B5Pyc7CiRsYW5nWyd0aXRsZV9zZW5kX2FfY29weV9oZWxwJ109J0NsaWNrIGhlcmUgdG8gYmUgc2VudCBhIHNjb3JlZCBjb3B5IG9mIHlvdXIgcXVpeic7CiRsYW5nWyd0aXRsZV9pbXBvcnQnXT0nSW1wb3J0JzsKJGxhbmdbJ3RpdGxlX3F1ZXN0aW9uc19jYXNlX3NlbnNpdGl2ZSddPSdDYXNlLXNlbnNpdGl2ZSBmaWxsLWluLXRoZS1ibGFuayBhbnN3ZXJzJzsKJGxhbmdbJ3RpdGxlX3F1ZXN0aW9uc19jYXNlX3NlbnNpdGl2ZV9oZWxwJ109J0NvbnNpZGVyIHVwcGVyLWNhc2UgYW5kIGxvd2VyLWNhc2UgbGV0dGVycyB0byBiZSBkaWZmZXJlbnQgZm9yIHNjb3JpbmcgZmlsbC1pbi10aGUtYmxhbmsgcXVlc3Rpb25zLic7CiRsYW5nWyd0aXRsZV9xdWl6X3RlbXBsYXRlJ109J1RlbXBsYXRlIGZvciBRdWl6IFRha2luZyc7CiRsYW5nWyd0aXRsZV9lbWFpbF90ZW1wbGF0ZSddPSdUZW1wbGF0ZSBmb3IgRW1haWwnOwokbGFuZ1sndGl0bGVfc2NvcmVfdGVtcGxhdGUnXT0nVGVtcGxhdGUgZm9yIFNjb3JpbmcgUGFnZSc7CiRsYW5nWyd0aXRsZV9zYXZlX3RlbXBsYXRlcyddPSdTYXZlIFRlbXBsYXRlcyc7CiRsYW5nWyd0aXRsZV9xdWl6X2NvbXBsZXRlJ109J1F1aXogQ29tcGxldGUnOwokbGFuZ1sndGl0bGVfcXVpel9zdW1tYXJ5J109J1F1aXogU3VtbWFyeSc7CiRsYW5nWyd0aXRsZV9jb3JyZWN0J10gPSAnWW91IFdlcmUgQ29ycmVjdCEnOwokbGFuZ1sndGl0bGVfcXVlc3Rpb25fc2NvcmVkJ10gPSAnU2NvcmUgdGhpcyBxdWVzdGlvbj8nOwokbGFuZ1sndGl0bGVfcXVlc3Rpb25fc2NvcmVkX2hlbHAnXSA9ICdVbmNoZWNrIHRoaXMgaWYgdGhlIGFuc3dlciB0byB0aGlzIHF1ZXN0aW9uIHNob3VsZG5cJ3QgYWZmZWN0IHRoZSB1c2VyXCdzIHF1aXogc2NvcmUuJzsKJGxhbmdbJ3RpdGxlX2NvcnJlY3RfYW5zd2VyJ10gPSAnVGhlIGNvcnJlY3QgYW5zd2VyIHdhcyc7CiRsYW5nWyd0aXRsZV95b3VyX2Fuc3dlciddID0gJ1lvdXIgQW5zd2VyJzsKJGxhbmdbJ3RpdGxlX3NpZ251cF90ZW1wbGF0ZSddID0gJ1RlbXBsYXRlIGZvciBRdWl6LVRha2VyXCdzIERldGFpbHMnOwokbGFuZ1sndGl0bGVfZW1haWxfc3ViamVjdCddID0gJ0VtYWlsIFN1YmplY3QnOwokbGFuZ1sndGl0bGVfZW1haWxfZnJvbSddID0gJyJGcm9tIiBFbWFpbCBhZGRyZXNzIGZvciBlbWFpbCc7CiRsYW5nWyd0aXRsZV9lbWFpbF9mcm9tbmFtZSddID0gJyJGcm9tIiBuYW1lIGZvciBlbWFpbCc7CiRsYW5nWyd0aXRsZV91bnNjb3JlZCddID0gJ1RoaXMgcXVlc3Rpb24gZG9lcyBub3QgYWZmZWN0IHRoZSBxdWl6IHNjb3JlJzsKJGxhbmdbJ3RpdGxlX3Nob3dfcGFsZXR0ZSddID0gJ1Nob3cgYWNjZW50ZWQgY2hhcmFjdGVyIHBhbGV0dGU/JzsKJGxhbmdbJ3RpdGxlX3Nob3dfcGFsZXR0ZV9oZWxwJ10gPSAnQ2hlY2sgdGhpcyB0byBoYXZlIGEgcG9wLXVwIHRvIGFpZCB1c2VycyBpbiBpbnB1dGluZyBhY2NlbnRlZCBvciBleHRlbmRlZC1BU0NJSSBjaGFyYWN0ZXJzJzsKJGxhbmdbJ3RpdGxlX3BhbGV0dGVfY2hhcnMnXSA9ICdTZWxlY3QgY2hhcmFjdGVycyB0byBpbmNsdWRlJzsKJGxhbmdbJ3RpdGxlX211bHRpcGxlX2ZpbGxpbl9oZWxwJ10gPSAnQ2hlY2tpbmcgdGhpcyB3aWxsIGFsbG93IHlvdSB0byBwcm92aWRlIG11bHRpcGxlIGFjY2VwdGFibGUgYW5zd2VycyBmb3IgZWFjaCBibGFuayBmb3IgZmlsbC1pbi10aGUtYmxhbmsgcXVlc3Rpb25zIChub3QgeWV0IGltcGxlbWVudGVkKSc7CiRsYW5nWyd0aXRsZV9tdWx0aXBsZV9maWxsaW4nXSA9ICdBbGxvdyBtdWx0aXBsZSBjb3JyZWN0IGFuc3dlcnMgZm9yIGZpbGwtaW4tdGhlLWJsYW5rIHF1ZXN0aW9ucz8nOwokbGFuZ1sndGl0bGVfbXVsdGlwbGVfZmlsbF9oZWxwJ10gPSAnU2VwYXJhdGUgYWx0ZXJuYXRlIGNvcnJlY3QgYW5zd2VycyB3aXRoIHRoZSB8IHN5bWJvbDsgZS5nLiwgInRoaXN8dGhhdCIgd2hlcmUgZWl0aGVyICJ0aGlzIiBvciAidGhhdCIgd291bGQgYmUgc2NvcmVkIGFzIGNvcnJlY3QuJzsKJGxhbmdbJ3RpdGxlX3NlbGVjdF9hbGwnXSA9ICdTZWxlY3QgQWxsJzsKJGxhbmdbJ3RpdGxlX3NlbGVjdF9ub25lJ10gPSAnU2VsZWN0IE5vbmUnOwokbGFuZ1sndGl0bGVfc2F2ZV9idXR0b24nXSA9ICdQcm92aWRlICJTYXZlIiBidXR0b24nOwokbGFuZ1sndGl0bGVfc2F2ZV9idXR0b25faGVscCddID0gJ0EgIlNhdmUiIGJ1dHRvbiB3aWxsIGFsbG93IGEgdXNlciB0byBzYXZlIHRoZSBxdWl6LCBhbmQgcmVzdW1lIHRha2luZyBpdCBsYXRlci4nOwokbGFuZ1sncXVpel9zYXZlZCddID0gJ1lvdXIgd29yayBoYXMgYmVlbiBzYXZlZC4nOwokbGFuZ1sndGl0bGVfcmVzdG9yZV9oZWxwJ10gPSAnWW91IGFwcGVhciB0byBoYXZlIGEgc2F2ZWQgcXVpei4gRG8geW91IHdpc2ggdG8gcmVzdW1lIHRha2luZyB0aGF0IHF1aXosIG9yIHN0YXJ0IGEgbmV3IHF1aXo/JzsKJGxhbmdbJ3RpdGxlX3Jlc3RvcmVfZGVidWcnXSA9ICdRdWl6IElEICVzIFRha2VyIElEICVzIHN0YXJ0ZWQgJXMnOwokbGFuZ1sndGl0bGVfc3RhcnRfb3ZlciddID0gJ1N0YXJ0IE5ldyBRdWl6JzsKJGxhbmdbJ3RpdGxlX3Jlc3VtZV9vbGQnXSA9ICdSZXN1bWUgUXVpeic7CiRsYW5nWyd0aXRsZV9yZXF1aXJlX3VzZXInXSA9ICdSZXF1aXJlIFVzZXInOwokbGFuZ1sndGl0bGVfcmVxdWlyZV91c2VyX2hlbHAnXSA9ICdDaGVjayB0byByZXF1aXJlIHRoZSB1c2VyIHRvIGVudGVyIGEgdmFsaWQgbmFtZSBhbmQgZW1haWwgdG8gdGFrZSB0aGUgcXVpei4nOwokbGFuZ1sndGl0bGVfcXVpel9pbmxpbmUnXSA9ICdQcmVzZXJ2ZSBDb250ZW50IGFyb3VuZCBRdWl6JzsKJGxhbmdbJ3RpdGxlX3F1aXpfaW5saW5lX2hlbHAnXSA9ICdDaGVjayB0byBrZWVwIGFueSBzdXJyb3VuZGluZyBjb250ZW50IG9uIHF1aXogcGFnZXMgKCJpbmxpbmUiKS4gVW5jaGVjayB0byBtYWtlIHRoZSBxdWl6IHJlcGxhY2UgdGhlIGNvbnRlbnQuJzsKJGxhbmdbJ3RpdGxlX2V4dHJhZmllbGRzJ10gPSAnRXh0cmEgZmllbGRzIGFyZSBhZGRlZCBvbiB0aGUgaW5pdGlhbCBxdWl6IHRha2luZyBwYWdlLic7CiRsYW5nWyd0aXRsZV9zaG93X3BhZ2VuYXYnXSA9ICdEaXNwbGF5IG5hdmlnYXRpb24gdG8gYWxsb3cgZWFzeSBwYWdlLXNraXBwaW5nPyc7CgokbGFuZ1sndmFsaWRfcmVxdWlyZWRfZmllbGQnXSA9ICdZb3UgbXVzdCBzcGVjaWZ5IGEgdmFsdWUgZm9yICIlcyInOwokbGFuZ1sndmFsaWRfcmVxdWlyZWRfY2hlY2snXSA9ICdZb3UgbXVzdCBjaGVjayB0aGUgYm94IGZvciAiJXMiJzsKJGxhbmdbJ3ZhbGlkX3JlcXVpcmVkX251bWJlciddID0gJ1lvdSBtdXN0IHNwZWNpZnkgYSBudW1lcmljIHZhbHVlIGZvciAiJXMiJzsKJGxhbmdbJ3ZhbGlkX3JlcXVpcmVkX3Bob25lJ10gPSAnWW91IG11c3Qgc3BlY2lmeSBhIHRlbGVwaG9uZSBudW1iZXIgZm9yICIlcyInOwoKJGxhbmdbJ2V4dHJhX3RleHQnXSA9ICdUZXh0IEZpZWxkJzsKJGxhbmdbJ2V4dHJhX3RleHRfciddID0gJ1RleHQgRmllbGQgLSBSZXF1aXJlZCc7CiRsYW5nWydleHRyYV9jaGVjayddID0gJ0NoZWNrYm94JzsKJGxhbmdbJ2V4dHJhX2NoZWNrX3InXSA9ICdDaGVja2JveCAtIFJlcXVpcmVkJzsKJGxhbmdbJ2V4dHJhX251bWJlciddID0gJ051bWVyaWMgRmllbGQnOwokbGFuZ1snZXh0cmFfbnVtYmVyX3InXSA9ICdOdW1lcmljIEZpZWxkIC0gUmVxdWlyZWQnOwokbGFuZ1snZXh0cmFfcGhvbmUnXSA9ICdVLlMuIFBob25lIE51bWJlcic7CiRsYW5nWydleHRyYV9waG9uZV9yJ10gPSAnVS5TLiBQaG9uZSBOdW1iZXIgLSBSZXF1aXJlZCc7CiRsYW5nWyd0aXRsZV9maWVsZF9uYW1lJ10gPSAnRmllbGQgTmFtZSc7CiRsYW5nWyd0aXRsZV9maWVsZF90eXBlJ10gPSAnRmllbGQgVHlwZSc7CiRsYW5nWyd0aXRsZV9maWVsZF9kaXNwbGF5X2xlbiddID0gJ0Rpc3BsYXkgU2l6ZSc7CiRsYW5nWyd0aXRsZV9maWVsZF9tYXhfbGVuJ10gPSAnTWF4aW11bSBMZW5ndGgnOwokbGFuZ1sndGl0bGVfZmllbGRfZGVsJ10gPSAnRGVsZXRlJzsKJGxhbmdbJ3RpdGxlX2ZpZWxkX3dlaWdodCddID0gJ1dlaWdodC9PcmRlcic7CgokbGFuZ1sndGl0bGVfc2NvcmVfdGhyZXNob2xkJ10gPSAnTWluaW11bSBTY29yZSB0byBGaW5pc2ggUXVpeic7CiRsYW5nWyd0aXRsZV90aHJlc2hvbGRfbWVzc2FnZSddID0gJ01lc3NhZ2UgdG8gRGlzcGxheSB3aGVuIE1pbmltdW0gU2NvcmUgbm90IG1ldCc7CiRsYW5nWyd0aHJlc2hvbGRfbWVzc2FnZSddID0gJ1lvdXIgYW5zd2VycyB0byB0aGUgZm9sbG93aW5nIHF1ZXN0aW9ucyB3ZXJlIGluY29ycmVjdC4gUGxlYXNlIHJlY29uc2lkZXIgeW91ciBhbnN3ZXJzIHRvIHRoZXNlIHF1ZXN0aW9ucywgYW5kIHRyeSBhZ2Fpbi4nOwokbGFuZ1sndGl0bGVfdGhyZXNob2xkX3NpbmdsZV9wYWdlJ10gPSAnU2hvdyBhbGwgaW5jb3JyZWN0IHF1ZXN0aW9ucyBvbiBhIHNpbmdsZSBwYWdlPyc7CiRsYW5nWyd0aXRsZV90aHJlc2hvbGRfc2luZ2xlX3BhZ2VfaGVscCddID0gJ0NoZWNrIHRoaXMgdG8gcHJlc2VudCBhbGwgaW5jb3JyZWN0IHF1ZXN0aW9ucyBvbiBhIHNpbmdsZSBwYWdlLiBVbmNoZWNrIGl0IHRvIGhhdmUgdXNlcnMgZ28gdGhyb3VnaCB0aGUgcXVpeiBhZ2Fpbiwgd2l0aCB0aGVpciBlcnJvcnMgaW5kaWNhdGVkLic7CiRsYW5nWyd0aXRsZV9xdWVzdGlvbl93cm9uZyddID0gJ0luZGljYXRvciBmb3IgaW5jb3JyZWN0IGFuc3dlcic7CiRsYW5nWydxdWVzdGlvbl93cm9uZyddID0gJyogUGxlYXNlIFJlY29uc2lkZXInOwoKJGxhbmdbJ2NoYXJhY3RlcnMnXSA9ICdDaGFyYWN0ZXIgVG9vbCc7CiRsYW5nWydjaGFyYWN0ZXJfcGFsZXR0ZSddID0gJ0FjY2VudCBQYWxldHRlJzsKCiRsYW5nWydxdWl6emFyZF9wYXJhbXNfcXVpel9pZCddID0gJ1F1aXogSUQnOwokbGFuZ1sncXVpenphcmRfcGFyYW1zX3F1ZXN0aW9uJ10gPSAnUXVlc3Rpb24vUGFnZSc7CiRsYW5nWydxdWl6emFyZF9wYXJhbXNfZ2VuZXJhbCddID0gJ0dlbmVyYWwgUXVpenphcmQgcGFyYW1zJzsKJGxhbmdbJ3RpdGxlX3F1aXpfdGFrZXJfZW1haWwnXSA9ICdRdWl6IFRha2VyXCdzIEVtYWlsIEFkZHJlc3MnOwokbGFuZ1sncXVpenphcmRfcGFyYW1zX2xpc3RfdGFrZXJzJ10gPSAnRmxhZyAtIGxpc3QgdGFrZXJzIGZvciB2aWV3aW5nIHF1aXogcmVzdWx0cyc7CiRsYW5nWydnZXRfcmVzdWx0cyddID0gJ1JldHJpZXZlIFJlc3VsdHMnOwokbGFuZ1snY2FudF9maW5kX3VzZXInXSA9ICdObyBxdWl6IHRha2VyIHdpdGggdGhhdCBlbWFpbCBhZGRyZXNzIGlzIGtub3duJzsKJGxhbmdbJ3RpdGxlX3JlbnVtYmVyX2J5X3NlY3Rpb24nXSA9ICdTdGFydCBxdWVzdGlvbiBudW1iZXJzIG92ZXIgZm9yIGVhY2ggc2VjdGlvbj8nOwokbGFuZ1sndGl0bGVfcmVudW1iZXJfYnlfc2VjdGlvbl9oZWxwJ10gPSAnU2hvdWxkIGVhY2ggbmV3IHNlY3Rpb24gc3RhcnQgd2l0aCBxdWVzdGlvbiAjMSwgb3Igc2hvdWxkIHRoZSBudW1iZXIgaW5jcmVhc2UgYWNyb3NzIHRoZSB3aG9sZSBxdWl6Pyc7CiRsYW5nWyd0aXRsZV93eXNpd3lnX3F1ZXN0aW9ucyddID0gJ1VzZSBXWVNJV1lHIGZvciBxdWVzdGlvbnM/JzsKJGxhbmdbJ3RpdGxlX2h0bWxfZW1haWwnXSA9ICdTZW5kIEhUTUwgZW1haWw/JzsKJGxhbmdbJ3RpdGxlX3NtYXJ0eV9wcm9jZXNzX3BhZ2VzJ10gPSAnUHJvY2VzcyBDb250ZW50IFBhZ2VzIHdpdGggc21hcnR5Pyc7CiRsYW5nWyd0aXRsZV9zbWFydHlfcHJvY2Vzc19wYWdlc19oZWxwJ10gPSAnQ2hlY2sgdGhpcyBpZiB5b3UgaW5jbHVkZSBzbWFydHkgdGFncyAoaW5jbHVkaW5nIG90aGVyIG1vZHVsZXMpIGluIHlvdXIgY29udGVudCBwYWdlcy4gVW5jaGVjayBpdCBvZiB5b3UgYXJlIGdldHRpbmcgdGVtcGxhdGUgZXJyb3JzLic7CgokbGFuZ1snd2VsY29tZV90ZXh0J10gPSAnPHA+PC9wPic7CiRsYW5nWydjaGFuZ2Vsb2cnXSA9ICc8dWw+CjxsaT5WZXJzaW9uIDAuOC4xIDI1IEphbiAyMDA5LiBTakcuIEJ1eCBmaXggZm9yIENNU01TIDEuNS54IHNlc3Npb24gc2VjdXJpdHkuPC9saT4KPGxpPlZlcnNpb24gMC44LCAzMCBTZXAgMjAwOC4gU2pHLiBBZGRlZCBBZGRpdGlvbmFsIEZpZWxkcy4gQWRkZWQgU2NvcmUgVGhyZXNob2xkLiBBZGRlZCBwYWdpbmF0aW9uIG9wdGlvbi48L2xpPiAKPGxpPlZlcnNpb24gMC43LCAyNiBNYXkgMjAwOC4gU2pHLiBBZGRlZCAiQ29udGVudCBQYWdlIiB0eXBlLCB1cGRhdGVkIGZvciBDTVNNUyAxLjIuNS48L2xpPgo8bGk+VmVyc2lvbiAwLjYuMywgMSBEZWMgMjAwNy4gU2pHLiBGaXggZm9yIGFubm95aW5nIFBIUCA0IGJ1ZyB3aXRoIGh0bWxfZW50aXR5X2RlY29kZSBhbmQgVVRGLTguPC9saT4KPGxpPlZlcnNpb24gMC42LjIsIDI5IE5vdiAyMDA3LiBTakcuIEJ1ZyBmaXhlcywgZG9jdW1lbnRhdGlvbi48L2xpPgo8bGk+VmVyc2lvbiAwLjYuMSwgMjAgTm92IDIwMDcuIFNqRy4gQnVnIGZpeGVzLiBRdWl6IHNpZ24tdXAgY2FuIG5vdyBiZSBtYWRlIG9wdGlvbmFsLjwvbGk+CjxsaT5WZXJzaW9uIDAuNiwgU2VwdCAyMDA3LiBTakcuIEZpeGVkIHVzZXIgbG9naW4vcmVzdG9yZS4gUXVpeiByZXN1bHQgdmlld2luZyAobm90IHlldCBkb2N1bWVudGVkIHByb3Blcmx5KS48L2xpPgo8bGk+VmVyc2lvbiAwLjUsIEF1ZyAyMDA3LiBTakcuIEFkZGVkICJGb3JlaWduIiBjaGFyYWN0ZXIgcGFsZXR0ZS48L2xpPgo8bGk+VmVyc2lvbiAwLjQsIEp1bCAyMDA3LiBTakcuIEJ1ZyBmaXhlcywgYWRkZWQgbm9uLXNjb3JlZCBxdWVzdGlvbnMuPC9saT4KPGxpPlZlcnNpb24gMC4zLCBNYXkgMjAwNy4gU2pHLiBCdWcgZml4ZXMsIGFkZGVkIG11bHRpcGxlLWFuc3dlciBxdWVzdGlvbnMsIGNsdW1zaWx5IG5hbWVkICJDaG9vc2UgT25lIG9yIE1vcmUiIGZvciBJbnNpcGlkLjwvbGk+CjxsaT5WZXJzaW9uIDAuMiBTakcuIEFkZGVkIHN1cHBvcnQgZm9yIG11bHRpcGxlIGlucHV0cyBpbiBhIHNpbmdsZSBmaWxsLWluLXRoZS1ibGFuayBxdWVzdGlvbi4gQWRkZWQgU2VjdGlvbnMsIFRleHQgTGluZXMsIGFuZCBQYWdlIEJyZWFrcy48L2xpPgo8bGk+VmVyc2lvbiAwLjEuMSwgTWFyIDIwMDcuIFNqRy4gQnVnIGZpeGVzIGZvciBpbXBvcnQsIGV0Yy48L2xpPgo8bGk+VmVyc2lvbiAwLjEsIEZlYiAyMDA3IChTakcpLiAKPC91bD4nOwokbGFuZ1snaGVscCddID0gJzxoMz5XaGF0IERvZXMgVGhpcyBEbz88L2gzPgo8cD5RdWl6IE1vZHVsZTwvcD4KPGgzPkhvdyBEbyBJIFVzZSBJdDwvaDM+CjxwPkdvIGludG8gdGhlIGFkbWluLiBDcmVhdGUgYSBxdWl6LiBQbGFjZSBhIHF1aXogdGFnIGluIHNvbWUgY29udGVudCBwYWdlLiBEb25lISAobW9yZSBzcGVjaWZpYyBpbmZvcm1hdGlvbiBmb2xsb3dzKTwvcD4KPGg0PlF1aXp6ZXMgVGFiPC9oND4KPHA+VGhpcyBsaXN0cyB0aGUgcXVpenplcyBkZWZpbmVkIGluIHlvdXIgaW5zdGFsbC4gSXQgZ2l2ZXMgeW91IHRoZSBhYmlsaXR5IHRvIGFkZCBuZXcgb25lcywgdmlldyB0aGUgcmVzdWx0cyBvZiBxdWl6emVzLApleHBvcnQgcXVpenplcywgdmFsaWRhdGUgYWxsIHRoZSBhbnN3ZXJzIG9uIGEgc2luZ2xlIHBhZ2UsIGRlbGV0ZSBxdWl6emVzLCBldGMuPC9wPgo8cD5UbyBwdXQgYW4gZXh0YW50IHF1aXogaW4gYSBwYWdlLCBzaW1wbHkgY29weSB0aGUgdGFnIHRoYXQgbG9va3MgbGlrZSAmIzEyMztjbXNfbW9kdWxlIG1vZHVsZT0iUXVpenphcmQiIHF1aXpfaWQ9IngiJiMxMjU7CndoZXJlIHF1aXpfaWQgaXMgdGFrZW4gZnJvbSB0aGUgdGFibGUsIGFuZCBwbGFjZSBpdCBpbiB5b3VyIHBhZ2UuCjxoND5RdWVzdGlvbiBUeXBlczwvaDQ+CjxwPldoZW4gY3JlYXRpbmcgYSBxdWl6LCB0aGVyZSBhcmUgdGhyZWUgdHlwZXMgb2YgcXVlc3Rpb25zLCBhbmQgdGhyZWUgdHlwZXMgb2YgImNvbnRyb2wiIHF1ZXN0aW9ucy48L3A+Cjx1bD4KPGxpPk11bHRpcGxlIENob2ljZS4gVGhpcyBpcyBhIHF1ZXN0aW9uIGZvbGxvd2VkIGJ5IGEgY29sbGVjdGlvbiBvZiBwb3NzaWJsZSBhbnN3ZXJzLiBPbmx5IG9uZSBhbnN3ZXIgY2FuIGJlIHNlbGVjdGVkLCBhbmQgb25seSBvbiBhbnN3ZXIgY2FuIGJlIGNvcnJlY3QuPC9saT4KPGxpPkNob29zZSBPbmUgb3IgTW9yZS4gQXdrd2FyZGx5IG5hbWVkLCBidXQgdGhpcyBpcyBhIHF1ZXN0aW9uIGZvbGxvd2VkIGJ5IGEgY29sbGVjdGlvbiBvZiBwb3NzaWJsZSBhbnN3ZXJzLiBNdWx0aXBsZSBhbnN3ZXJzIG1heSBiZSBzZWxlY3RlZCBhbmQgbXVsdGlwbGUgYW5zd2VycyBjYW4gYmUgY29ycmVjdCAtLSB0byBnZXQgc2NvcmVkIGFzICJjb3JyZWN0LCIgdGhlIHF1aXogdGFrZXIgbXVzdCBzZWxlY3QgYWxsIGNvcnJlY3QgYW5zd2Vycy48L2xpPgo8bGk+RmlsbCBpbiB0aGUgQmxhbmsocykuIFRoaXMgaXMgYSBzZW50ZW5jZSB3aGVyZSBvbmUgb3IgbW9yZSB3b3JkcyBhcmUgbWlzc2luZywgYW5kIHRoZSB1c2VyIG11c3QgdHlwZSBpbiB0aGUgY29ycmVjdCB3b3JkKHMpLjwvbGk+CjxsaT4qIFF1aXogU2VjdGlvbi4gVGhpcyBzcGxpdHMgYSBxdWl6LiBZb3UgY2FuIGNob29zZSB0byBudW1iZXIgcXVlc3Rpb25zIHJlbGF0aXZlIHRvIHRoZWlyIHNlY3Rpb25zIGlmIHlvdSB3YW50IHRvIHN0cnVjdHVyZSBhIGJpZyBxdWl6LjwvbGk+CjxsaT4qIExpbmUgb2YgVGV4dC4gVGhpcyBpcyBleHBsYW5hdG9yeSB0ZXh0IHRoYXQgc2hvd3MgaW4gdGhlIHF1aXouPC9saT4KPGxpPi0gUGFnZSBCcmVhay4gVGhpcyBzcGxpdHMgYSBxdWl6IGludG8gbXVsdGlwbGUgcGFnZXMuPC9saT4KPC91bD4KPGg0PkltcG9ydCBUYWI8L2g0Pgo8cD5Zb3UgY2FuIGltcG9ydCBxdWl6IFhNTCBmaWxlcyBoZXJlLiBUbyBnZXQgYSBRdWl6IFhNTCBmaWxlLCB5b3UgaGF2ZSB0byBoYXZlIGV4cG9ydGVkIGEgcXVpeiBmcm9tIHRoZSBtYWluIFF1aXogdGFiLjwvcD4KPGg0PkV4dHJhIEZpZWxkIFRhYjwvaDQ+CjxwPk9uIHRoZSBpbml0aWFsIHNpZ24tdXAgcGFnZSBmb3IgdGhlIHF1aXosIG1hbnkgcGVvcGxlIHdhbnRlZCBmaWVsZHMgaW4gYWRkaXRpb24gdG8gbmFtZSBhbmQgZW1haWwuIFRoaXMgcGFnZSBhbGxvd3MgeW91IHRvIGFkZCBmaWVsZC4gVGhlcmUgYXJlIGZvdXIgdHlwZXM6IHRleHQgZmllbGQsIGNoZWNrYm94LCBudW1lcmljLCBhbmQgVVMgUGhvbmUgbnVtYmVyLiBFYWNoIGhhcyBhIHZhcmlhbnQgd2hpY2ggcmVxdWlyZXMgYSByZXNwb25zZS4gWW91IGNhbiBzZXQgdGhlIGRpc3BsYXkgc2l6ZSBhbmQgbWF4aW11bSBzaXplICh3aGljaCBvbmx5IGFjdHVhbGx5IHdvcmtzIG9uIGZpZWxkcyBmb3Igd2hpY2ggaXQgbWFrZXMgc2Vuc2UpLCBhbmQgYSB3ZWlnaHQsIHdoaWNoIGRldGVybWluZXMgdGhlIGRpc3BsYXkgb3JkZXIuPC9wPgo8cD5UaGVzZSBleHRyYSBmaWVsZHMgd2lsbCBzaG93IHVwIGluIHRoZSByZXN1bHRzIHRoYXQgZ2V0IGRpc3BsYXllZCB0byB0aGUgYWRtaW4gYW5kL29yIGluIHRoZSBxdWl6IHJlc3VsdHMgZW1haWwgdGhhdCBnZXRzIHNlbnQuPC9wPgo8aDQ+U2NvcmUgVGhyZXNob2xkIFRhYjwvaDQ+CjxwPlNvbWUgc3BlY2lhbGl6ZWQgYXBwbGljYXRpb25zIHJlcXVpcmUgdGhhdCB1c2VycyBzY29yZSBhIGNlcnRhaW4gcGVyY2VudGFnZS4gWW91IG1heSBzZXQgYSBtaW5pbXVtIHNjb3JlIGZvciBzdWJtaXNzaW9uLiBUaGlzIG1lYW5zIHRoYXQgaWYgYSB1c2VyIGhhcyBhIHNjb3JlIGxlc3MgdGhhbiB0aGUgdGhyZXNob2xkLCB0aGV5IHdpbGwgYmUgcHJlc2VudGVkIHdpdGggdGhlIHF1ZXN0aW9ucyB0aGF0IHRoZXkgc2tpcHBlZCBvciB0aGF0IGFyZSBpbmNvcnJlY3QsIGFuZCB0aGV5IG5lZWQgdG8gY29ycmVjdCB0aGVzZSBxdWVzdGlvbnMgdW50aWwgdGhlaXIgc2NvcmUgaXMgZ3JlYXRlciB0aGFuIHRoZSB0aHJlc2hvbGQuPC9wPgo8cD5Zb3UgY2FuIHNob3cgdGhlbSBhbGwgdGhlaXIgaW5jb3JyZWN0IGFuc3dlcnMgb24gYSBzaW5nbGUgcGFnZSwgc3RyaXBwZWQgb2YgdGhlaXIgY29udGV4dCwgb3IgeW91IGNhbiBoYXZlIHRoZW0gZ28gdGhyb3VnaCB0aGUgcXVpeiBhZ2Fpbiwgd2l0aCB0aGVpciBlcnJvcnMgaW5kaWNhdGVkLjwvcD4KPGg0PlF1aXogVGVtcGxhdGUgVGFiPC9oND4KPHA+QnkgZGVmYXVsdCwgdGhlIFF1aXogaXMgcHJlc2VudGVkIHVzaW5nIGEgc3RhbmRhcmQgdGVtcGxhdGUgdGhhdCBmb3JtYXRzIHF1ZXN0aW9ucy4gWW91IGNvdWxkIHN0eWxlIGl0IHNpbXBseSBieSBhbHRlcmluZyB0aGUgQ1NTIGl0IHVzZXMsIG9yIHlvdSBjYW4gZ28gd2lsZCBhbmQgZWRpdCB0aGUgc21hcnR5IHRlbXBsYXRlIHRoYXQgZ2VuZXJhdGVzIHRoZSBxdWl6IGl0c2VsZi4gVXNlIHRoZSBleGlzdGluZyB0ZW1wbGF0ZSBhcyBhbiBleGFtcGxlLiBUaGUgc21hcnR5IHZhcmlhYmxlcyB3aWxsIGJlIGRvY3VtZW50ZWQgZnVsbHkgYXQgc29tZSBwb2ludC4gU2ltaWxhcmx5LCB0aGUgcXVpeiAicmVnaXN0cmF0aW9uIiBwYWdlIHRlbXBsYXRlIGlzIG9uIHRoaXMgdGFiLjwvcD4KPGg0PkVtYWlsIFRlbXBsYXRlIFRhYjwvaDQ+CjxwPlF1aXogcmVzdWx0cyBhcmUgc2VudCB2aWEgZW1haWwuIFlvdSBjYW4gZWRpdCB0aGUgdGVtcGxhdGUgaGVyZS48L3A+CjxoND5TY29yZSBQYWdlIFRlbXBsYXRlIFRhYjwvaDQ+CjxwPlNpbWlsYXIgdG8gdGhlIEVtYWlsIFRlbXBsYXRlLCB0aGlzIHBhZ2Ugc2hvd3MgdGhlIHVzZXIgdGhlaXIgcXVpeiByZXN1bHRzLiBZb3UgY2FuIGRvIGFsbCBzb3J0cyBvZiBjcmVhdGl2ZSBzdHVmZiBoZXJlLiBUaGlzIHRlbXBsYXRlIGlzIGFjdHVhbGx5IGludGVybmFsbHkgZG9jdW1lbnRlZC48L3A+CjxoND5FbWFpbCBDb25maWcgVGFiPC9oND4KPHA+VGhpcyBsZXRzIHlvdSBjdXN0b21pemUgdGhlIGVtYWlsIGhlYWRlciBkZXRhaWxzIGZvciByZXN1bHRzIGVtYWlscy4gWW91IGNhbiBhbHNvIG9wdCBoZXJlIHRvIGhhdmUgdGhlIHF1aXogYWRtaW5pc3RyYXRvciByZWNlaXZlIGEgY29weSBvZiBldmVyeSBxdWl6IHRha2VuLCBhbmQgdGhlIHJlc3VsdHMuPC9wPgo8aDQ+Q2hhcmFjdGVyIFRvb2wgVGFiPC9oND4KPHA+U2VtaS1leHBlcmltZW50YWwsIHRoaXMgaXMgZm9yIGVuYWJsaW5nIHF1aXogdGFrZXJzIHdobyBhcmUgbGFuZ3VhZ2UtY2hhbGxlbmdlZCBvciBoYXZlIGxhbmd1YWdlLWNoYWxsZW5nZWQga2V5Ym9hcmRzIChlLmcuLCBVLlMuIEFtZXJpY2FucykgZW50ZXIgImZvcmVpZ24iIGNoYXJhY3RlcnMuIFdoZW4gYWN0aXZlLCBpdCBwb3BzIHVwIGEgZmxvYXRpbmcgcGFsZXR0ZSB0aGF0IGFsbG93cyB0aGUgcXVpeiB0YWtlciB0byBpbnNlcnQgY2hhcmFjdGVycyBsaWtlICZ1dW1sOyBvciAmZWdyYXZlOyBhdCB0aGUgYWN0aXZlIGN1cnNvciBwb2ludCBpbiBhIGZpZWxkLiBJdCBhbHNvIGVuYWJsZXMgUXVpeiBBZG1pbnMgdG8gZG8gdGhlIHNhbWUgd2hlbiBjcmVhdGluZyBxdWl6emVzLiBJdCBkb2VzIG5vdCB3b3JrIHdpdGggV1lTSVdZRyBlZGl0b3JzLjwvcD4KPGg0PkNvbmZpZ3VyYXRpb24gVGFiPC9oND4KPHA+VGhpcyBpcyB3aGVyZSB5b3UgZ2V0IHRvIGNob29zZSBhIGxvdCBvZiBzcGVjaWZpY3MgYWJvdXQgaG93IHlvdXIgcXVpeiB3aWxsIHdvcmsuPC9wPgo8aDM+S25vd24gQnVnczwvaDM+CjxwPlF1aXp6YXJkIGlzIHN0aWxsIGluYWRlcXVhdGVseSBkb2N1bWVudGVkLiBUaGlzIHdpbGwgYmUgZml4ZWQgZXZlbnR1YWxseS48L3A+CjxoMz5TcG9uc29yc2hpcDwvaDM+CjxwPlRoaXMgbW9kdWxlXCdzIGluaXRpYWwgZGV2ZWxvcG1lbnQgd2FzIGtpbmRseSBzcG9uc29yZWQgYnkgTGF1cmEgWmF5YXMgb2YgPGEgaHJlZj0iaHR0cDovL3d3dy5zcGFuaXNoLTQteW91LmNvbSIgdGFyZ2V0PSJfbmV3Ij5TcGFuaXNoLTQtWW91PC9hPiwgd2l0aAphZGRpdGlvbmFsIGdlbmVyb3VzIHN1cHBvcnQgZnJvbSA8YSBocmVmPSJodHRwOi8vd3d3Lm1pY2hlbGdvZHRzLmNvbSIgdGFyZ2V0PSJfbmV3Ij5NaWNoZWxHb2R0cy5lRGVzaWduPC9hPiwgSsO4cm4gSGF1Z2xhbmQsIGFuZCBEYXZpZCBNYWdpbGwuIEkgYXBwcmVjaWF0ZSBhbGwgeW91ciBoZWxwITwvcD4KPGgzPlN1cHBvcnQ8L2gzPgo8cD5UaGlzIG1vZHVsZSBkb2VzIG5vdCBpbmNsdWRlIGNvbW1lcmNpYWwgc3VwcG9ydC4gSG93ZXZlciwgdGhlcmUgYXJlIGEgbnVtYmVyIG9mIHJlc291cmNlcyBhdmFpbGFibGUgdG8gaGVscCB5b3Ugd2l0aCBpdDo8L3A+Cjx1bD4KPGxpPkZvciB0aGUgbGF0ZXN0IHZlcnNpb24gb2YgdGhpcyBtb2R1bGUsIEZBUXMsIG9yIHRvIGZpbGUgYSBCdWcgUmVwb3J0LCBwbGVhc2UgdmlzaXQgdGhlIENNUyBNYWRlIFNpbXBsZSAgPGEgaHJlZj0iaHR0cDovL2Rldi5jbXNtYWRlc2ltcGxlLm9yZyI+RGV2ZWxvcGVyIEZvcmdlPC9hPi48L2xpPgo8bGk+VG8gb2J0YWluIGNvbW1lcmNpYWwgc3VwcG9ydCwgcGxlYXNlIHNlbmQgYW4gZW1haWwgdG8gdGhlIGF1dGhvciBhdCA8YSBocmVmPSJtYWlsdG86c2pnQGNtc21vZHVsZXMuY29tIj4mbHQ7c2pnQGNtc21vZHVsZXMuY29tJmd0OzwvYT4uPC9saT4KPGxpPkFkZGl0aW9uYWwgZGlzY3Vzc2lvbiBvZiB0aGlzIG1vZHVsZSBtYXkgYWxzbyBiZSBmb3VuZCBpbiB0aGUgPGEgaHJlZj0iaHR0cDovL2ZvcnVtLmNtc21hZGVzaW1wbGUub3JnIj5DTVMgTWFkZSBTaW1wbGUgRm9ydW1zPC9hPi48L2xpPgo8bGk+VGhlIGF1dGhvciBjYW4gb2Z0ZW4gYmUgZm91bmQgaW4gdGhlIDxhIGhyZWY9ImlyYzovL2lyYy5mcmVlbm9kZS5uZXQvI2NtcyI+Q01TIElSQyBDaGFubmVsPC9hPi48L2xpPgo8bGk+TGFzdGx5LCB5b3UgbWF5IGhhdmUgc29tZSBzdWNjZXNzIGVtYWlsaW5nIHRoZSBhdXRob3IgZGlyZWN0bHkgYW5kIGdyb3ZlbGxpbmcgZm9yIGZyZWUgc3VwcG9ydC48L2xpPiAgCjwvdWw+CjxwPkFzIHBlciB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIHByb3ZpZGVkIGFzLWlzLiBQbGVhc2UgcmVhZCB0aGUgdGV4dApvZiB0aGUgbGljZW5zZSBmb3IgdGhlIGZ1bGwgZGlzY2xhaW1lci48L3A+CjxoMz5Db3B5cmlnaHQgYW5kIExpY2Vuc2U8L2gzPgo8cD5Db3B5cmlnaHQgJmNvcHk7IDIwMDcsIFNhbXVlbCBHb2xkc3RlaW4gPGEgaHJlZj0ibWFpbHRvOnNqZ0BjbXNtb2R1bGVzLmNvbSI+Jmx0O3NqZ0BjbXNtb2R1bGVzLmNvbSZndDs8L2E+LiBBbGwgUmlnaHRzIEFyZSBSZXNlcnZlZC48L3A+CjxwPlRoaXMgbW9kdWxlIGhhcyBiZWVuIHJlbGVhc2VkIHVuZGVyIHRoZSA8YSBocmVmPSJodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwiPkdOVSBQdWJsaWMgTGljZW5zZTwvYT4uIFlvdSBtdXN0IGFncmVlIHRvIHRoaXMgbGljZW5zZSBiZWZvcmUgdXNpbmcgdGhlIG1vZHVsZS48L3A+JzsKPz4K]]></data>
	</file>
	<file>
	  <filename>/method.install.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFF1aXp6YXJkIC0gYSBwbGFjZW1lbnQgdGVzdCBtb2R1bGUKIyBWZXJzaW9uOiAwLjYuNSwgU2pHCiMgTWV0aG9kOiBJbnN0YWxsCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA3IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojIFRoZSBtb2R1bGUncyBob21lcGFnZSBpczogaHR0cDovL2Rldi5jbXNtYWRlc2ltcGxlLm9yZy9wcm9qZWN0cy9za2VsZXRvbi8KIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKaWYgKCFpc3NldCgkZ0NtcykpIGV4aXQ7CgoJCSRkYiA9JiAkZ0Ntcy0+R2V0RGIoKTsKCQkKCQkvLyBteXNxbC1zcGVjaWZpYywgYnV0IGlnbm9yZWQgYnkgb3RoZXIgZGF0YWJhc2UKCQkkdGFib3B0YXJyYXkgPSBhcnJheSgnbXlzcWwnID0+ICdUWVBFPU15SVNBTScpOwoKCQkkZGljdCA9IE5ld0RhdGFEaWN0aW9uYXJ5KCRkYik7CgkJCiAgICAgICAgJGZsZHMgPSAiCgkJCXF1aXpfaWQgSSBLRVksCgkJCW5hbWUgQyg4MCksCgkJCWRlc2NyaXB0aW9uIEMoODApCgkJCSI7CgkJJHNxbGFycmF5ID0gJGRpY3QtPkNyZWF0ZVRhYmxlU1FMKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3F6X3F1aXp6ZXMiLAoJCQkJJGZsZHMsICR0YWJvcHRhcnJheSk7CgkJJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwoJCSRkYi0+Q3JlYXRlU2VxdWVuY2UoY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfcXpfcXVpenplc19zZXEiKTsKCiAgICAgICAgJGZsZHMgPSAiCiAgICAgICAgCXF1ZXN0aW9uX2lkIEkgS0VZLAoJCQlxdWl6X2lkIEksCgkJCW9yZGVyX2J5IEksCgkJCWlzX3Njb3JlZCBJLAoJCQlxdWVzdGlvbl90eXBlIEMoMSksCgkJCXRpdGxlIEMoODApLAoJCQlxdWVzdGlvbiBYCgkJCSI7CgkJJHNxbGFycmF5ID0gJGRpY3QtPkNyZWF0ZVRhYmxlU1FMKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3F6X3F1ZXN0aW9ucyIsCgkJCQkkZmxkcywgJHRhYm9wdGFycmF5KTsKCQkkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CgkJJGRiLT5DcmVhdGVTZXF1ZW5jZShjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9xel9xdWVzdGlvbnNfc2VxIik7CgogICAgICAgICRmbGRzID0gIgogICAgICAgIAlhbnN3ZXJfaWQgSSBLRVksCgkJCXF1ZXN0aW9uX2lkIEksCgkJCXF1aXpfaWQgSSwKCQkJaXNfY29ycmVjdCBJLAoJCQlhbnN3ZXIgQygyNTUpCgkJCSI7CgkJJHNxbGFycmF5ID0gJGRpY3QtPkNyZWF0ZVRhYmxlU1FMKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3F6X2Fuc3dlcnMiLAoJCQkJJGZsZHMsICR0YWJvcHRhcnJheSk7CgkJJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwoJCSRkYi0+Q3JlYXRlU2VxdWVuY2UoY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfcXpfYW5zd2Vyc19zZXEiKTsKCiAgICAgICAgJGZsZHMgPSAiCiAgICAgICAgCXRha2VyX2lkIEkgS0VZLAogICAgICAgIAluYW1lIEMoMjU1KSwKCQkJZW1haWwgQygyNTUpLAoJCQlzZW5kX3Jlc3VsdCBJLAoJCQlxdWl6X2lkIEksCgkJCXN0YXJ0X2RhdGUgIi5DTVNfQURPREJfRFQuIiwKICAgICAgICAgY29tcGxldGVkX2RhdGUgIi5DTVNfQURPREJfRFQuIiwKCQkJY29tcGxldGVkIEksCgkJCWNvbXBsZXRlZF9zY29yZSBJCgkJCSI7CgkJJHNxbGFycmF5ID0gJGRpY3QtPkNyZWF0ZVRhYmxlU1FMKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3F6X3Rha2VycyIsCgkJCQkkZmxkcywgJHRhYm9wdGFycmF5KTsKCQkkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CgkJJGRiLT5DcmVhdGVTZXF1ZW5jZShjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9xel90YWtlcnNfc2VxIik7CgoJCSRmbGRzID0gIgoJCQlmaWVsZF9pZCBJIEtFWSwKCQkJZmllbGRfbmFtZSBYLAoJCQlmaWVsZF90eXBlIEMoODApLAoJCQlmaWVsZF9kaXNwbGF5X2xlbiBJLAoJCQlmaWVsZF9tYXhfbGVuIEksCgkJCWZpZWxkX3dlaWdodCBJCgkJCSI7CgkJJHNxbGFycmF5ID0gJGRpY3QtPkNyZWF0ZVRhYmxlU1FMKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3F6X2V4dHJhX2ZpZWxkcyIsCgkJCQkkZmxkcywgJHRhYm9wdGFycmF5KTsKCQkkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CgkJJGRiLT5DcmVhdGVTZXF1ZW5jZShjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9xel9leHRyYV9maWVsZF9zZXEiKTsKCgkJJGZsZHMgPSAiCgkJCXRha2VyX2lkIEksCgkJCWZpZWxkX2lkIEksCgkJCXZhbHVlIEMoMjU1KQoJCQkiOwoJCSRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNRTChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9xel9leHRyYV92YWxzIiwKCQkJCSRmbGRzLCAkdGFib3B0YXJyYXkpOwoJCSRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKCQkkZGItPkNyZWF0ZVNlcXVlbmNlKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3F6X2V4dHJhX3ZhbHNfc2VxIik7CgogICAgICAgICRmbGRzID0gIgogICAgICAgIAlyZXN1bHRfaWQgSSBLRVksCiAgICAgICAgCXRha2VyX2lkIEksCiAgICAgICAgCXF1aXpfaWQgSSwKCQkJcXVlc3Rpb25faWQgSSwKCQkJYW5zd2VyX2lkIEksCgkJCWFuc3dlciBDKDI1NSksCgkJCWlzX2NvcnJlY3QgSQoJCQkiOwoJCSRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNRTChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9xel9yZXN1bHQiLAoJCQkJJGZsZHMsICR0YWJvcHRhcnJheSk7CgkJJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwoJCSRkYi0+Q3JlYXRlU2VxdWVuY2UoY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfcXpfcmVzdWx0X3NlcSIpOwoKCQkkZGItPkV4ZWN1dGUoJ2NyZWF0ZSBpbmRleCAnLmNtc19kYl9wcmVmaXgoKS4KCQkJJ21vZHVsZV9xel9yZXNfaWR4IG9uICcuY21zX2RiX3ByZWZpeCgpLgoJCQknbW9kdWxlX3F6X3Jlc3VsdCAodGFrZXJfaWQscXVpel9pZCxxdWVzdGlvbl9pZCxhbnN3ZXJfaWQpJyk7CgkJJGRiLT5FeGVjdXRlKCdjcmVhdGUgaW5kZXggJy5jbXNfZGJfcHJlZml4KCkuCgkJCSdtb2R1bGVfcXpfcXVlc19pZHggb24gJy5jbXNfZGJfcHJlZml4KCkuCgkJCSdtb2R1bGVfcXpfcXVlc3Rpb24gKHF1aXpfaWQpJyk7CgkJJGRiLT5FeGVjdXRlKCdjcmVhdGUgaW5kZXggJy5jbXNfZGJfcHJlZml4KCkuCgkJCSdtb2R1bGVfcXpfYW5zX2lkeCBvbiAnLmNtc19kYl9wcmVmaXgoKS4KCQkJJ21vZHVsZV9xel9hbnN3ZXJzIChxdWl6X2lkLHF1ZXN0aW9uX2lkKScpOwoKCgkJLy8gY3JlYXRlIGEgcGVybWlzc2lvbgogICAgICAgICR0aGlzLT5DcmVhdGVQZXJtaXNzaW9uKCdBZG1pbmlzdGVyIFF1aXp6ZXMnLCAnQWRtaW5pc3RlciBRdWl6emVzJyk7CgoJCSR0aGlzLT5TZXRQcmVmZXJlbmNlKCJzZW5kX2VtYWlsIiwidHJ1ZSIpOwoJCSR0aGlzLT5TZXRQcmVmZXJlbmNlKCJzZW5kX3RvIiwieW91QHlvdXJkb21haW4uY29tIik7CgkJJHRoaXMtPlNldFByZWZlcmVuY2UoImRlZmF1bHRfcXVlc3Rpb25zIiwxMCk7CiAgICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCJjYXNlX3NlbnNpdGl2ZSIsMCk7CgkJJHRoaXMtPlNldFByZWZlcmVuY2UoJ21heF9hbnN3ZXJzJywgNSk7CiAgICAgICAgCgkJJHRoaXMtPlNldFByZWZlcmVuY2UoJ2VtYWlsX2Zyb20nLCAkdGhpcy0+TGFuZygnZW1haWxfZnJvbScpKTsKCQkkdGhpcy0+U2V0UHJlZmVyZW5jZSgnZW1haWxfZnJvbW5hbWUnLCAkdGhpcy0+TGFuZygnZW1haWxfZnJvbW5hbWUnKSk7CgkJJHRoaXMtPlNldFByZWZlcmVuY2UoJ2VtYWlsX3N1YmplY3QnLCAkdGhpcy0+TGFuZygnZW1haWxfc3ViamVjdCcpKTsKCQkkdGhpcy0+U2V0UHJlZmVyZW5jZSgnZmlsbGluX2xlbicsIDApOwoJCSR0aGlzLT5TZXRQcmVmZXJlbmNlKCdwYWdpbmF0aW9uJywgJ2JyZWFrJyk7CgkJJHRoaXMtPlNldFByZWZlcmVuY2UoJ3RocmVzaG9sZCcsMCk7CgkJJHRoaXMtPlNldFByZWZlcmVuY2UoJ3RocmVzaG9sZF9tZXNzYWdlJywkdGhpcy0+TGFuZygndGhyZXNob2xkX21lc3NhZ2UnKSk7CgogICAgICAvLyBzZXQgZGVmYXVsdCB0ZW1wbGF0ZXMKICAgICAgJHRlbXBsYXRlID0gZmlsZV9nZXRfY29udGVudHMoZGlybmFtZShfX0ZJTEVfXykuJy90ZW1wbGF0ZXMvc3RkcXVpei50cGwnKTsKICAgICAgJHRoaXMtPlNldFRlbXBsYXRlKCdxdWl6X3RlbXBsYXRlJywkdGVtcGxhdGUsJ1F1aXp6YXJkJyk7CiAgICAgICR0ZW1wbGF0ZSA9IGZpbGVfZ2V0X2NvbnRlbnRzKGRpcm5hbWUoX19GSUxFX18pLicvdGVtcGxhdGVzL3Njb3JlcXVpei50cGwnKTsKICAgICAgJHRoaXMtPlNldFRlbXBsYXRlKCdzY29yZV90ZW1wbGF0ZScsJHRlbXBsYXRlLCdRdWl6emFyZCcpOwogICAgICAkdGVtcGxhdGUgPSBmaWxlX2dldF9jb250ZW50cyhkaXJuYW1lKF9fRklMRV9fKS4nL3RlbXBsYXRlcy9zaWdudXAudHBsJyk7CiAgICAgICR0aGlzLT5TZXRUZW1wbGF0ZSgnc2lnbnVwX3RlbXBsYXRlJywkdGVtcGxhdGUsJ1F1aXp6YXJkJyk7CiAgICAgICR0ZW1wbGF0ZSA9IGZpbGVfZ2V0X2NvbnRlbnRzKGRpcm5hbWUoX19GSUxFX18pLicvdGVtcGxhdGVzL2VtYWlsLnRwbCcpOwogICAgICAkdGhpcy0+U2V0VGVtcGxhdGUoJ2VtYWlsX3RlbXBsYXRlJywkdGVtcGxhdGUsJ1F1aXp6YXJkJyk7CgoJCS8vIGltcG9ydCBhIHNhbXBsZSBxdWl6CgkJJGluX2ZpbGUgPSBhcnJheV9tYXAoJ3J0cmltJyxmaWxlKGRpcm5hbWUoX19GSUxFX18pLicvaW5jbHVkZS9zYW1wbGUudHh0JykpOwoJCSR0aGlzLT5pbXBvcnRRdWl6KCRpbl9maWxlKTsKCgoJCS8vIHB1dCBtZW50aW9uIGludG8gdGhlIGFkbWluIGxvZwoJCSR0aGlzLT5BdWRpdCggMCwgJHRoaXMtPkxhbmcoJ2ZyaWVuZGx5bmFtZScpLCAkdGhpcy0+TGFuZygnaW5zdGFsbGVkJywkdGhpcy0+R2V0VmVyc2lvbigpKSk7Cgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/method.uninstall.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFF1aXp6YXJkIC0gYSBwbGFjZW1lbnQgdGVzdCBtb2R1bGUKIyBWZXJzaW9uOiAwLjEsIFNqRwojIE1ldGhvZDogVW5pbnN0YWxsCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA3IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojIFRoZSBtb2R1bGUncyBob21lcGFnZSBpczogaHR0cDovL2Rldi5jbXNtYWRlc2ltcGxlLm9yZy9wcm9qZWN0cy9za2VsZXRvbi8KIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKLyoKICAgIEZvciBzZXBhcmF0ZWQgbWV0aG9kcywgeW91J2xsIGFsd2F5cyB3YW50IHRvIHN0YXJ0IHdpdGggdGhlIGZvbGxvd2luZwogICAgbGluZSB3aGljaCBjaGVjayB0byBtYWtlIHN1cmUgdGhhdCBtZXRob2Qgd2FzIGNhbGxlZCBmcm9tIHRoZSBtb2R1bGUKICAgIEFQSSwgYW5kIHRoYXQgZXZlcnl0aGluZydzIHNhZmUgdG8gY29udGludWU6CiovIAppZiAoIWlzc2V0KCRnQ21zKSkgZXhpdDsKCgovKiBBZnRlciB0aGlzLCB0aGUgY29kZSBpcyBpZGVudGljYWwgdG8gdGhlIGNvZGUgdGhhdCB3b3VsZCBvdGhlcndpc2UgYmUKICAgIHdyYXBwZWQgaW4gdGhlIFVuaW5zdGFsbCgpIG1ldGhvZCBpbiB0aGUgbW9kdWxlIGJvZHkuCiovCgoJCSRkYiA9JiAkZ0Ntcy0+R2V0RGIoKTsKCQkKCQkvLyByZW1vdmUgdGhlIGRhdGFiYXNlIHRhYmxlCgkJJGRpY3QgPSBOZXdEYXRhRGljdGlvbmFyeSggJGRiICk7CgkJJHNxbGFycmF5ID0gJGRpY3QtPkRyb3BUYWJsZVNRTCggY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfcXpfcXVpenplcyIgKTsKCQkkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CgkJJHNxbGFycmF5ID0gJGRpY3QtPkRyb3BUYWJsZVNRTCggY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfcXpfcXVlc3Rpb25zIiApOwoJCSRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKCQkkc3FsYXJyYXkgPSAkZGljdC0+RHJvcFRhYmxlU1FMKCBjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9xel9hbnN3ZXJzIiApOwoJCSRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKCQkkc3FsYXJyYXkgPSAkZGljdC0+RHJvcFRhYmxlU1FMKCBjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9xel90YWtlcnMiICk7CgkJJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwoJCSRzcWxhcnJheSA9ICRkaWN0LT5Ecm9wVGFibGVTUUwoIGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3F6X3Jlc3VsdCIgKTsKCQkkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CgkJJHNxbGFycmF5ID0gJGRpY3QtPkRyb3BUYWJsZVNRTCggY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfcXpfZXh0cmFfZmllbGRzIiApOwoJCSRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKCQkkc3FsYXJyYXkgPSAkZGljdC0+RHJvcFRhYmxlU1FMKCBjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9xel9leHRyYV92YWxzIiApOwoJCSRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKCgoJCS8vIHJlbW92ZSB0aGUgc2VxdWVuY2UKCQkkZGItPkRyb3BTZXF1ZW5jZSggY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfcXpfcXVpenplc19zZXEiICk7CgkJJGRiLT5Ecm9wU2VxdWVuY2UoIGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3F6X3F1ZXN0aW9uc19zZXEiICk7CgkJJGRiLT5Ecm9wU2VxdWVuY2UoIGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3F6X2Fuc3dlcnNfc2VxIiApOwoJCSRkYi0+RHJvcFNlcXVlbmNlKCBjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9xel90YWtlcnNfc2VxIiApOwoJCSRkYi0+RHJvcFNlcXVlbmNlKCBjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9xel9yZXN1bHRfc2VxIiApOwoJCSRkYi0+RHJvcFNlcXVlbmNlKCBjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9xel9leHRyYV9maWVsZF9zZXEiICk7CgkJJGRiLT5Ecm9wU2VxdWVuY2UoIGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3F6X2V4dHJhX3ZhbHNfc2VxIiApOwoKCQkvLyByZW1vdmUgdGhlIHBlcm1pc3Npb25zCgkJJHRoaXMtPlJlbW92ZVBlcm1pc3Npb24oJ0FkbWluaXN0ZXIgUXVpenplcycpOwoKCQkkdGhpcy0+UmVtb3ZlUHJlZmVyZW5jZSgic2VuZF9tYWlsIik7CgkJJHRoaXMtPlJlbW92ZVByZWZlcmVuY2UoInNlbmRfdG8iKTsKCQkkdGhpcy0+UmVtb3ZlUHJlZmVyZW5jZSgiZW1haWxfZnJvbSIpOwoJCSR0aGlzLT5SZW1vdmVQcmVmZXJlbmNlKCJlbWFpbF9mcm9tbmFtZSIpOwoJCSR0aGlzLT5SZW1vdmVQcmVmZXJlbmNlKCJlbWFpbF9zdWJqZWN0Iik7CgkJJHRoaXMtPlJlbW92ZVByZWZlcmVuY2UoImRlZmF1bHRfcXVlc3Rpb25zIik7CgkJJHRoaXMtPlJlbW92ZVByZWZlcmVuY2UoImNhc2Vfc2Vuc2l0aXZlIik7CiAgICAgIAkkdGhpcy0+UmVtb3ZlUHJlZmVyZW5jZSgiZmlsbGluX2xlbiIpOwogICAgICAJJHRoaXMtPlJlbW92ZVByZWZlcmVuY2UoInBhZ2luYXRpb24iKTsKICAgICAgICAkdGhpcy0+UmVtb3ZlUHJlZmVyZW5jZSgic2hvd19jaGFyX2xpc3QiKTsKICAgICAgICAkdGhpcy0+UmVtb3ZlUHJlZmVyZW5jZSgic2hvd19wYWxldHRlIik7CiAgICAgICAgJHRoaXMtPlJlbW92ZVByZWZlcmVuY2UoIm11bHRpcGxlX2ZpbGxpbiIpOwogICAgICAgICR0aGlzLT5SZW1vdmVQcmVmZXJlbmNlKCJzYXZlX2J1dHRvbiIpOwogICAgICAgICR0aGlzLT5SZW1vdmVQcmVmZXJlbmNlKCJyZW51bWJlcl9ieV9zZWN0aW9uIik7CiAgICAgICAgJHRoaXMtPlJlbW92ZVByZWZlcmVuY2UoInd5c2l3eWdfcXVlc3Rpb25zIik7CiAgICAgICAgJHRoaXMtPlJlbW92ZVByZWZlcmVuY2UoImh0bWxfZW1haWwiKTsKICAgICAgICAkdGhpcy0+UmVtb3ZlUHJlZmVyZW5jZSgicmVxdWlyZV91c2VyIik7CiAgICAgICAgJHRoaXMtPlJlbW92ZVByZWZlcmVuY2UoInF1aXpfaW5saW5lIik7CiAgICAgICAgJHRoaXMtPlJlbW92ZVByZWZlcmVuY2UoInNtYXJ0eV9wYWdlcyIpOwogCQkkdGhpcy0+UmVtb3ZlUHJlZmVyZW5jZSgndGhyZXNob2xkJyk7CgkJJHRoaXMtPlJlbW92ZVByZWZlcmVuY2UoJ3RocmVzaG9sZF9tZXNzYWdlJyk7CgkJJHRoaXMtPlJlbW92ZVByZWZlcmVuY2UoJ3RocmVzaG9sZF9zaW5nbGVfcGFnZScpOwoJCSR0aGlzLT5SZW1vdmVQcmVmZXJlbmNlKCdxdWVzdGlvbl93cm9uZycpOwoJCSR0aGlzLT5SZW1vdmVQcmVmZXJlbmNlKCdzaG93X3BhZ2VuYXYnKTsKCgkJLy8gZHJvcCB0aGUgdGVtcGxhdGVzCgkJJHRoaXMtPkRlbGV0ZVRlbXBsYXRlKCdxdWl6X3RlbXBsYXRlJywgJ1F1aXp6YXJkJyk7CgkJJHRoaXMtPkRlbGV0ZVRlbXBsYXRlKCdzY29yZV90ZW1wbGF0ZScsICdRdWl6emFyZCcpOwoJCSR0aGlzLT5EZWxldGVUZW1wbGF0ZSgnc2lnbnVwX3RlbXBsYXRlJywgJ1F1aXp6YXJkJyk7CgkJJHRoaXMtPkRlbGV0ZVRlbXBsYXRlKCdlbWFpbF90ZW1wbGF0ZScsICdRdWl6emFyZCcpOwoKICAgICAgICAvLyBkZWxldGUgYWRtaW4ncyBxdWl6IGNvb2tpZSAtLSBoZWxwcyBkZWJ1ZyB3aGlsZSBkZXZlbG9waW5nIDopCiAgICAgICAgc2V0Y29va2llICgicXVpenphcmRfdGlkIiwgIiIsIHRpbWUoKSAtIDM2MDApOwoJCQoJCS8vIHB1dCBtZW50aW9uIGludG8gdGhlIGFkbWluIGxvZwoJCSR0aGlzLT5BdWRpdCggMCwgJHRoaXMtPkxhbmcoJ2ZyaWVuZGx5bmFtZScpLCAkdGhpcy0+TGFuZygndW5pbnN0YWxsZWQnKSk7Cgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/method.upgrade.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFF1aXp6YXJkIC0gYSBwbGFjZW1lbnQgdGVzdCBtb2R1bGUKIyBWZXJzaW9uOiAwLjEsIFNqRwojIE1ldGhvZDogVXBncmFkZQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNyBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIyBUaGUgbW9kdWxlJ3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvc2tlbGV0b24vCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCmlmICghaXNzZXQoJGdDbXMpKSBleGl0OwoKCQkkZGIgPSYgJGdDbXMtPkdldERiKCk7CgkJCgkJLy8gbXlzcWwtc3BlY2lmaWMsIGJ1dCBpZ25vcmVkIGJ5IG90aGVyIGRhdGFiYXNlCgkJJHRhYm9wdGFycmF5ID0gYXJyYXkoJ215c3FsJyA9PiAnVFlQRT1NeUlTQU0nKTsKCgkJJGRpY3QgPSBOZXdEYXRhRGljdGlvbmFyeSgkZGIpOwoKCQkkY3VycmVudF92ZXJzaW9uID0gJG9sZHZlcnNpb247CgkJc3dpdGNoKCRjdXJyZW50X3ZlcnNpb24pCgkJewoJCQljYXNlICIwLjIiOgoJCQljYXNlICIwLjMiOgogICAJCQkJICRzcWxhcnJheSA9ICRkaWN0LT5BZGRDb2x1bW5TUUwoY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfcXpfcXVlc3Rpb25zIiwKICAgCQkJCSAJImlzX3Njb3JlZCBJIik7CiAgICAJCQkgJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwoJCQkJJHF1ZXJ5ID0gJ1VQREFURSAnLmNtc19kYl9wcmVmaXgoKS4KCQknbW9kdWxlX3F6X3F1ZXN0aW9ucyBzZXQgaXNfc2NvcmVkPTEgd2hlcmUgcXVlc3Rpb25fdHlwZSBpbiAoXCdjXCcsXCdtXCcsXCdmXCcpJzsKCQkJCSRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkcXVlcnkpOwoJCQkJJHF1ZXJ5ID0gJ1VQREFURSAnLmNtc19kYl9wcmVmaXgoKS4KCQknbW9kdWxlX3F6X3F1ZXN0aW9ucyBzZXQgaXNfc2NvcmVkPTAgd2hlcmUgcXVlc3Rpb25fdHlwZSBub3QgaW4gKFwnY1wnLFwnbVwnLFwnZlwnKSc7CgkJCQkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5KTsKCQkJY2FzZSAiMC40IjoKCQkJY2FzZSAiMC41IjoKCQkJY2FzZSAiMC42IjoKICAgCQkJJHNxbGFycmF5ID0gJGRpY3QtPkFkZENvbHVtblNRTChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9xel90YWtlcnMiLAogICAJCQkJIAkiY29tcGxldGVkIEkiKTsKICAgIAkJCSRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKCQkJICAgJHNxbGFycmF5ID0gJGRpY3QtPkFkZENvbHVtblNRTChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9xel90YWtlcnMiLAogICAJCQkJIAkic3RhcnRfZGF0ZSAiLkNNU19BRE9EQl9EVCk7CiAgICAJCQkkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CiAgICAgICAgICAgICRzcWxhcnJheSA9ICRkaWN0LT5BZGRDb2x1bW5TUUwoY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfcXpfdGFrZXJzIiwKICAgCQkJCSAJImNvbXBsZXRlZF9kYXRlICIuQ01TX0FET0RCX0RUKTsKICAgIAkJCSRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKCQkJY2FzZSAiMC42LjEiOgoJCQljYXNlICIwLjYuMiI6CgkJCWNhc2UgIjAuNi4zIjoKCQkJCSRzcWxhcnJheSA9ICRkaWN0LT5BZGRDb2x1bW5TUUwoY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfcXpfcXVlc3Rpb25zIiwKICAgCQkJCSAJInRpdGxlIEMoODApIik7CiAgICAJCQkkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CgkJCWNhc2UgIjAuNi40IjoKCQkJCSRmbGRzID0gIgoJCQkJCWZpZWxkX2lkIEkgS0VZLAoJCQkJCWZpZWxkX25hbWUgWCwKCQkJCQlmaWVsZF90eXBlIEMoODApLAoJCQkJCWZpZWxkX2Rpc3BsYXlfbGVuIEksCgkJCQkJZmllbGRfbWF4X2xlbiBJLAoJCQkJCWZpZWxkX3dlaWdodCBJCgkJCQkJIjsKCQkJCSRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNRTChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9xel9leHRyYV9maWVsZHMiLAoJCQkJCQkkZmxkcywgJHRhYm9wdGFycmF5KTsKCQkJCSRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKCQkJCSRkYi0+Q3JlYXRlU2VxdWVuY2UoY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfcXpfZXh0cmFfZmllbGRfc2VxIik7CgoJCQkJJGZsZHMgPSAiCgkJCQkJdGFrZXJfaWQgSSwKCQkJCQlmaWVsZF9pZCBJLAoJCQkJCXZhbHVlIEMoMjU1KQoJCQkJCSI7CgkJCQkkc3FsYXJyYXkgPSAkZGljdC0+Q3JlYXRlVGFibGVTUUwoY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfcXpfZXh0cmFfdmFscyIsCgkJCQkJCSRmbGRzLCAkdGFib3B0YXJyYXkpOwoJCQkJJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwoJCQkJJGRiLT5DcmVhdGVTZXF1ZW5jZShjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9xel9leHRyYV92YWxzX3NlcSIpOwoJCQljYXNlICIwLjYuNSI6CgkJCQkkdGhpcy0+U2V0UHJlZmVyZW5jZSgndGhyZXNob2xkJywwKTsKCQkJCSR0aGlzLT5TZXRQcmVmZXJlbmNlKCd0aHJlc2hvbGRfbWVzc2FnZScsJHRoaXMtPkxhbmcoJ3RocmVzaG9sZF9tZXNzYWdlJykpOwoJCQljYXNlICIwLjciOgoJCQkJJHNxbGFycmF5ID0gJGRpY3QtPkFkZENvbHVtblNRTChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9xel90YWtlcnMiLAoJCQkJIAkiY29tcGxldGVkX3Njb3JlIEkiKTsKCQkJCSRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKICAgICAgICAgY2FzZSAiMC44IjoKCQkJICAgJHNxbGFycmF5ID0gJGRpY3QtPkFkZENvbHVtblNRTChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9xel90YWtlcnMiLAoJCQkJIAkicXVpel9pZCBJIik7CgkJCQkkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CgkJCSAgICRkYi0+RXhlY3V0ZSgnY3JlYXRlIGluZGV4ICcuY21zX2RiX3ByZWZpeCgpLgoJCQkJICAnbW9kdWxlX3F6X3Jlc19pZHggb24gJy5jbXNfZGJfcHJlZml4KCkuCgkJCQkgICdtb2R1bGVfcXpfcmVzdWx0ICh0YWtlcl9pZCxxdWl6X2lkLHF1ZXN0aW9uX2lkLGFuc3dlcl9pZCknKTsKCQkJICAgJGRiLT5FeGVjdXRlKCdjcmVhdGUgaW5kZXggJy5jbXNfZGJfcHJlZml4KCkuCgkJCQkgICdtb2R1bGVfcXpfcXVlc19pZHggb24gJy5jbXNfZGJfcHJlZml4KCkuCgkJCQkgICdtb2R1bGVfcXpfcXVlc3Rpb24gKHF1aXpfaWQpJyk7CgkJCSAgICRkYi0+RXhlY3V0ZSgnY3JlYXRlIGluZGV4ICcuY21zX2RiX3ByZWZpeCgpLgoJCQkJICAnbW9kdWxlX3F6X2Fuc19pZHggb24gJy5jbXNfZGJfcHJlZml4KCkuCgkJCQkgICdtb2R1bGVfcXpfYW5zd2VycyAocXVpel9pZCxxdWVzdGlvbl9pZCknKTsKCQljYXNlICIwLjguMSI6CgoKCQl9CgkJCgkJLy8gcHV0IG1lbnRpb24gaW50byB0aGUgYWRtaW4gbG9nCgkJJHRoaXMtPkF1ZGl0KCAwLCAkdGhpcy0+TGFuZygnZnJpZW5kbHluYW1lJyksICR0aGlzLT5MYW5nKCd1cGdyYWRlZCcsJHRoaXMtPkdldFZlcnNpb24oKSkpOwoKPz4=]]></data>
	</file>
	<file>
	  <filename>/palette_include.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PHN0eWxlPgojY2hhcmFjdGVycGFsZXR0ZSB7Cglwb3NpdGlvbjogZml4ZWQ7Cgl0b3A6IDE1cHg7CglyaWdodDogNXB4OwoJYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsKCWJvcmRlcjogMXB4IHNvbGlkIGJsYWNrOwoJd2lkdGg6IDIwMHB4Owp9CiNjaGFyYWN0ZXJwYWxldHRlIHRhYmxlIHsKCXdpZHRoOiA4MCU7CglwYWRkaW5nOiAwIDVweCAwIDVweDsKfQojY2hhcmFjdGVycGFsZXR0ZSB0YWJsZSB0ZCB7CiAgICBib3JkZXI6IDFweCBzb2xpZCBibGFjazsKICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgIHdpZHRoOiAxZW07CiAgICBwYWRkaW5nOiAycHg7Cn0KI2NoYXJhY3RlcnBhbGV0dGUgdGQgYSB7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWU7CiAgICB3aWR0aDogMTAwJTsKICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsKfQojY2hhcmFjdGVycGFsZXR0ZSB0ZCBhOmhvdmVyIHsKICAgIGJhY2tncm91bmQtY29sb3I6ICNiYmY7Cn0KCiNwYWxldHRlbGluayB7Cglwb3NpdGlvbjogYWJzb2x1dGU7CglyaWdodDogNXB4OwoJdG9wOiAycHg7Cgl0ZXh0LWRlY29yYXRpb246IG5vbmU7CglwYWRkaW5nOiAwOwp9CiNwYWxldHRlaGFuZGxlIHsKCXBhZGRpbmc6IDAgMTBweCAwIDA7Cgl0ZXh0LWFsaWduOiBjZW50ZXI7CgliYWNrZ3JvdW5kLWNvbG9yOiAjY2NjOwogICAgYm9yZGVyOiAxcHggc29saWQgYmx1ZTsKICAgIGN1cnNvciA6IG1vdmU7Cn0KPC9zdHlsZT4KPGRpdiBpZD0iY2hhcmFjdGVycGFsZXR0ZSI+CjxoMyBpZD0icGFsZXR0ZWhhbmRsZSI+PD9waHAKZWNobyAkdGhpcy0+TGFuZygnY2hhcmFjdGVyX3BhbGV0dGUnKTsKPz48L2gzPjxhIGlkPSJwYWxldHRlbGluayIgaHJlZj0iamF2YXNjcmlwdDpwYWxldHRlKCkiPl48L2E+CjxkaXYgaWQ9ImNoYXJhY3RlcnMiIHN0eWxlPSJkaXNwbGF5OiBibG9jayI+PHRhYmxlPgo8P3BocAokY291bnRlciA9IDA7CiRzaG93X2NoYXIgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnc2hvd19jaGFyX2xpc3QnLAonMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxMTExMTExMTExMTExMTExMTExMTExMTExMTExMTEnKTsKZm9yICgkaT0wOyRpPGNvdW50KCRhY2NlbnRlZCk7JGkrKykKICAgIHsKICAgIGlmICgkc2hvd19jaGFyWyRpXSA9PSAnMScpCiAgICAgICAgewogICAgICAgIGlmICgkY291bnRlciAlIDUgPT0gMCkKICAgICAgICAgICAgewogICAgICAgICAgICBlY2hvICI8dHI+IjsKICAgICAgICAgICAgfQogICAgICAgIGVjaG8gJzx0ZD48YSBocmVmPSJqYXZhc2NyaXB0Omluc2VydEF0Q2FyZXQoXCcnLiRhY2NlbnRlZFskaV0uJ1wnKSI+ICc7CiAgICAgICAgZWNobyAkYWNjZW50ZWRbJGldLicgPC9hPjwvdGQ+JzsKICAgICAgICAkY291bnRlcisrOwogICAgICAgIGlmICgkY291bnRlciA9PSA1KQogICAgICAgICAgICB7CiAgICAgICAgICAgICRjb3VudGVyID0gMDsKICAgICAgICAgICAgZWNobyAnPC90cj4nOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIH0KaWYgKCRjb3VudGVyICE9IDApCiAgICB7CiAgICB3aGlsZSAoJGNvdW50ZXIgPCA1KQogICAgICAgIHsKICAgICAgICBlY2hvICc8dGQ+PC90ZD4nOwogICAgICAgICRjb3VudGVyKys7CiAgICAgICAgfQogICAgZWNobyAnPC90cj4nOwogICAgfQo/Pgo8L3RhYmxlPgo8L2Rpdj4KPC9kaXY+CjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KCnZhciBmb2N1c2VkRm9ybUNvbnRyb2wgPSAnJzsKdmFyIGRyYWdvayA9IGZhbHNlOwp2YXIgeSx4LGR5LGR4Owp2YXIgcGFsLCBwYWxoYW5kOwoKCmlmIChkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSkgb25sb2FkID0gZnVuY3Rpb24gKCkKCXsKCXZhciBlLCBpID0gMDsKCXdoaWxlIChlID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUgKCdJTlBVVCcpW2krK10pCgkJewoJCWlmIChlLnR5cGUgPT0gJ3RleHQnKSBlLm9uZm9jdXMgPSBmdW5jdGlvbiAoKQoJCQl7CgkJCWZvY3VzZWRGb3JtQ29udHJvbCA9IHRoaXM7CgkJCX0KCQlpZiAoZS50eXBlID09ICd0ZXh0JyAmJiBkb2N1bWVudC5hbGwpIGUub25jbGljayA9IGZ1bmN0aW9uKCkge3NldENhcmV0KHRoaXMpO30KCQlpZiAoZS50eXBlID09ICd0ZXh0JyAmJiBkb2N1bWVudC5hbGwpIGUub25rZXl1cCA9IGZ1bmN0aW9uKCkge3NldENhcmV0KHRoaXMpO30KCQl9Cgl9CgpmdW5jdGlvbiBwYWxldHRlKCkKCXsKCXZhciBwYWwgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnY2hhcmFjdGVycycpOwoJdmFyIGxuayA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdwYWxldHRlbGluaycpOwoJaWYgKHBhbCAmJiBwYWwgIT0gbnVsbCkKCQl7CgkJaWYgKHBhbC5zdHlsZS5kaXNwbGF5ID09IG51bGwgfHwgcGFsLnN0eWxlLmRpc3BsYXkgPT0gJ2Jsb2NrJykKCQkJewoJCQlwYWwuc3R5bGUuZGlzcGxheSA9ICdub25lJzsKCQkJbG5rLmlubmVySFRNTCA9ICdWJzsKCQkJfQoJCWVsc2UKCQkJewoJCQlwYWwuc3R5bGUuZGlzcGxheSA9ICdibG9jayc7CgkJCWxuay5pbm5lckhUTUwgPSAnXic7CgkJCX0KCQl9CgoJfQoKZnVuY3Rpb24gc2V0Q2FyZXQodGV4dE9iaikKCXsKCWlmICh0ZXh0T2JqLmNyZWF0ZVRleHRSYW5nZSkKCQl7CgkJdGV4dE9iai5jYXJldFBvcyA9IGRvY3VtZW50LnNlbGVjdGlvbi5jcmVhdGVSYW5nZSgpLmR1cGxpY2F0ZSgpOwoJCX0KCX0KCQpmdW5jdGlvbiBpbnNlcnRBdENhcmV0KHRleHRGaWVsZFZhbHVlKQoJewoJaWYgKCEgZm9jdXNlZEZvcm1Db250cm9sKQoJCXsKCQlyZXR1cm47CgkJfQoJaWYoZG9jdW1lbnQuYWxsKQoJCXsKCQlpZiAoZm9jdXNlZEZvcm1Db250cm9sLmNyZWF0ZVRleHRSYW5nZSAmJiBmb2N1c2VkRm9ybUNvbnRyb2wuY2FyZXRQb3MpCgkJCXsKCQkJdmFyIGNhcmV0UG9zID0gZm9jdXNlZEZvcm1Db250cm9sLmNhcmV0UG9zOwoJCQljYXJldFBvcy50ZXh0ID0gY2FyZXRQb3MudGV4dC5jaGFyQXQoY2FyZXRQb3MudGV4dC5sZW5ndGggLSAxKSA9PSAnICcgP3RleHRGaWVsZFZhbHVlICsgJyAnIDogdGV4dEZpZWxkVmFsdWU7CgkJCWNhcmV0UG9zKys7CiAgICAgICAgIH0KCQllbHNlCgkJCXsKCQkJZm9jdXNlZEZvcm1Db250cm9sLnZhbHVlID0gdGV4dEZpZWxkVmFsdWU7CgkJCX0KCQl9CgllbHNlCgkJewoJCWlmKGZvY3VzZWRGb3JtQ29udHJvbC5zZXRTZWxlY3Rpb25SYW5nZSkKCQkJewoJCQl2YXIgcmFuZ2VTdGFydCA9IGZvY3VzZWRGb3JtQ29udHJvbC5zZWxlY3Rpb25TdGFydDsKCQkJdmFyIHJhbmdlRW5kID0gZm9jdXNlZEZvcm1Db250cm9sLnNlbGVjdGlvbkVuZDsKCQkJdmFyIHRlbXBTdHIxID0gZm9jdXNlZEZvcm1Db250cm9sLnZhbHVlLnN1YnN0cmluZygwLHJhbmdlU3RhcnQpOwoJCQl2YXIgdGVtcFN0cjIgPSBmb2N1c2VkRm9ybUNvbnRyb2wudmFsdWUuc3Vic3RyaW5nKHJhbmdlRW5kKTsKCQkJZm9jdXNlZEZvcm1Db250cm9sLnZhbHVlID0gdGVtcFN0cjEgKyB0ZXh0RmllbGRWYWx1ZSArIHRlbXBTdHIyOwoJCQkvLyBuZXh0IGxpbmUgaXMgZm9yIFNhZmFyaSAtIGl0J3MgZXZpZGVudGx5IGlnbm9yZWQgYnkgRmlyZWZveAoJCQlmb2N1c2VkRm9ybUNvbnRyb2wuc2VsZWN0aW9uU3RhcnQgKz0gMTsKCQkJfQoJCWVsc2UKCQkJewoJCQlhbGVydCgiYnJvd3NlciBpbmNvbXBhdGliaWxpdHkgcHJvYmxlbSAiKTsKCQkJfQoJCX0KCWZvY3VzZWRGb3JtQ29udHJvbC5mb2N1cygpOwoJfQoJCmZ1bmN0aW9uIHNldENvb2tpZShuYW1lLHZhbHVlLG1pbGxpcykKICAgIHsKCWlmIChtaWxsaXMpCgkgICAgewoJCXZhciBkYXRlID0gbmV3IERhdGUoKTsKCQlkYXRlLnNldFRpbWUoZGF0ZS5nZXRUaW1lKCkrbWlsbGlzKTsKCQl2YXIgZXhwaXJlcyA9ICI7IGV4cGlyZXM9IitkYXRlLnRvR01UU3RyaW5nKCk7CgkgICAgfQoJZWxzZQoJICAgIHZhciBleHBpcmVzID0gIiI7Cglkb2N1bWVudC5jb29raWUgPSBuYW1lKyI9Iit2YWx1ZStleHBpcmVzKyI7IHBhdGg9LyI7Cn0KCmZ1bmN0aW9uIGdldENvb2tpZShjbmFtZSkKICAgIHsKCXZhciBjb29raWVzID0gZG9jdW1lbnQuY29va2llLnNwbGl0KCc7Jyk7Cglmb3IgKHZhciBpPTA7aSA8IGNvb2tpZXMubGVuZ3RoO2krKykKCSAgICB7CgkgICAgY29va2llc1tpXSA9IGNvb2tpZXNbaV0ucmVwbGFjZSgvXlxzKy8sJycpOwoJICAgIGNvb2tpZXNbaV0gPSBjb29raWVzW2ldLnJlcGxhY2UoL1xzKyQvLCcnKTsKCQlpZiAoY29va2llc1tpXS5pbmRleE9mKCc9JykgIT0gLTEpCgkJICAgIHsKICAgICAgICAgICAgaWYgKGNvb2tpZXNbaV0uc3Vic3RyKDAsY29va2llc1tpXS5pbmRleE9mKCc9JykpID09IGNuYW1lKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgcmV0dXJuKGNvb2tpZXNbaV0uc3Vic3RyKGNvb2tpZXNbaV0uaW5kZXhPZignPScpKzEpKTsKICAgICAgICAgICAgICAgIH0KCQkgICAgfQoJICAgIH0KCXJldHVybiBudWxsOwp9CQoJCmZ1bmN0aW9uIGRvRHJhZyhlKQogICAgewogICAgaWYgKCFlKSBlID0gd2luZG93LmV2ZW50OwoJcGFsaGFuZC5zdHlsZS5iYWNrZ3JvdW5kID0gJyNjY2YnOwogICAgaWYgKGRyYWdvaykKICAgICAgICB7CiAgICAgICAgcGFsLnN0eWxlLmxlZnQgPSBkeCArIChlLmNsaWVudFggLSB4KSArICJweCI7CiAgICAgICAgcGFsLnN0eWxlLnRvcCA9IGR5ICsgKGUuY2xpZW50WSAtIHkpICsgInB4IjsKICAgICAgICAKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgfQogICAgfQoKZnVuY3Rpb24gbURvd24oZSkKICAgIHsKICAgIGlmICghZSkgZSA9IHdpbmRvdy5ldmVudDsKICAgIGRyYWdvayA9IHRydWU7CiAgICB4ID0gZS5jbGllbnRYOwogICAgeSA9IGUuY2xpZW50WTsKICAgIGNvb3JkID0gZmluZFBvc2l0aW9uKHBhbCk7CiAgICBkeCA9IGNvb3JkWzBdOwogICAgZHkgPSBjb29yZFsxXTsKICAgIGlmIChNYXRoLmFicyh5IC0gZHkpIDwgNSkKICAgICAgICB7CiAgICAgICAgZHkgPSBkeSAtIDg7CiAgICAgICAgfQogICAgcGFsLm9ubW91c2Vtb3ZlID0gZG9EcmFnOwogICAgcmV0dXJuIGZhbHNlOwp9CgpmdW5jdGlvbiBmaW5kUG9zaXRpb24oIG9FbGVtZW50ICkgewogIGlmKCB0eXBlb2YoIG9FbGVtZW50Lm9mZnNldFBhcmVudCApICE9ICd1bmRlZmluZWQnICkgewogICAgZm9yKCB2YXIgcG9zWCA9IDAsIHBvc1kgPSAwOyBvRWxlbWVudDsgb0VsZW1lbnQgPSBvRWxlbWVudC5vZmZzZXRQYXJlbnQgKSB7CiAgICAgIHBvc1ggKz0gb0VsZW1lbnQub2Zmc2V0TGVmdDsKICAgICAgcG9zWSArPSBvRWxlbWVudC5vZmZzZXRUb3A7CiAgICB9CiAgICByZXR1cm4gWyBwb3NYLCBwb3NZIF07CiAgfSBlbHNlIHsKICAgIHJldHVybiBbIG9FbGVtZW50LngsIG9FbGVtZW50LnkgXTsKICB9Cn0KCmZ1bmN0aW9uIG1VcCgpCiAgICB7CglwYWxoYW5kLnN0eWxlLmJhY2tncm91bmQgPSAnI2NjYyc7CiAgICBkcmFnb2sgPSBmYWxzZTsKICAgIHBhbC5vbm1vdXNlbW92ZSA9IG51bGw7CiAgICBjb29yZCA9IGZpbmRQb3NpdGlvbihwYWwpOwogICAgc2V0Q29va2llKCdxdV9sb2MnLGNvb3JkWzBdKycsJytjb29yZFsxXSk7CiAgICB9CgpwYWxoYW5kID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3BhbGV0dGVoYW5kbGUnKTsKaWYgKHBhbGhhbmQpCiAgICB7CiAgICBwYWxoYW5kLm9ubW91c2Vkb3duID0gbURvd247CiAgICBwYWxoYW5kLm9ubW91c2V1cCA9IG1VcDsKICAgIH0KcGFsID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2NoYXJhY3RlcnBhbGV0dGUnKTsKCQppZiAoZ2V0Q29va2llKCdxdV9sb2MnKSAhPSBudWxsKQogICAgewogICAgcGFuZWxfcG9zID0gZ2V0Q29va2llKCdxdV9sb2MnKS5zcGxpdCgnLCcpOwogICAgcGFsLnN0eWxlLmxlZnQgPSBwYW5lbF9wb3NbMF0rInB4IjsKICAgIHBhbC5zdHlsZS50b3AgPSBwYW5lbF9wb3NbMV0rInB4IjsKICAgIH0KPC9zY3JpcHQ+Cg==]]></data>
	</file>
	<file>
	  <filename>/Quizzard.module.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IFF1aXp6YXJkIC0gYSBwbGFjZW1lbnQgdGVzdCBtb2R1bGUKIyBWZXJzaW9uOiAwLjYuNCwgU2pHCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDcgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMgVGhlIG1vZHVsZSdzIGhvbWVwYWdlIGlzOiBodHRwOi8vZGV2LmNtc21hZGVzaW1wbGUub3JnL3Byb2plY3RzLy8KIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKY2xhc3MgUXVpenphcmQgZXh0ZW5kcyBDTVNNb2R1bGUKewoKCXZhciAkdGFrZXJfaWQ9LTE7CgoJZnVuY3Rpb24gR2V0TmFtZSgpCgl7CgkJcmV0dXJuICdRdWl6emFyZCc7Cgl9CgoJZnVuY3Rpb24gR2V0RnJpZW5kbHlOYW1lKCkKCXsKCQlyZXR1cm4gJHRoaXMtPkxhbmcoJ2ZyaWVuZGx5bmFtZScpOwoJfQoKCWZ1bmN0aW9uIEdldFZlcnNpb24oKQoJewoJCXJldHVybiAnMC44LjEnOwoJfQoKCWZ1bmN0aW9uIEdldEhlbHAoKQoJewoJCXJldHVybiAkdGhpcy0+TGFuZygnaGVscCcpOwoJfQoJCglmdW5jdGlvbiBTZXRQYXJhbWV0ZXJzKCkKCXsKICAgIAkkdGhpcy0+UmVzdHJpY3RVbmtub3duUGFyYW1zKCk7CiAgICAJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcigncXp6XyonLCdudWxsJywkdGhpcy0+TGFuZygncXVpenphcmRfcGFyYW1zX2dlbmVyYWwnKSk7CgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoQ0xFQU5fUkVHRVhQLicvcXp6Xy4qLycsQ0xFQU5fTk9ORSk7CgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcigncXVpel9pZCcsJ251bGwnLCR0aGlzLT5MYW5nKCdxdWl6emFyZF9wYXJhbXNfcXVpel9pZCcpKTsKICAgIAkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgncXVpel9pZCcsQ0xFQU5fSU5UKTsKCgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcigncXVlc3Rpb24nLCdudWxsJywkdGhpcy0+TGFuZygncXVpenphcmRfcGFyYW1zX3F1ZXN0aW9uJykpOwogICAgCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdxdWVzdGlvbicsQ0xFQU5fSU5UKTsKCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdxdWVzdGlvbl9pZCcsJ251bGwnLCR0aGlzLT5MYW5nKCdxdWl6emFyZF9wYXJhbXNfcXVlc3Rpb24nKSk7CiAgICAJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ3F1ZXN0aW9uX2lkJyxDTEVBTl9JTlQpOwoKICAgICAgJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignbGlzdF90YWtlcnMnLCdudWxsJywkdGhpcy0+TGFuZygncXVpenphcmRfcGFyYW1zX2xpc3RfdGFrZXJzJykpOwogICAgCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdsaXN0X3Rha2VycycsQ0xFQU5fU1RSSU5HKTsKCgogIAl9CgkKCglmdW5jdGlvbiBHZXRBdXRob3IoKQoJewoJCXJldHVybiAnU2pHJzsKCX0KCWZ1bmN0aW9uIEdldEF1dGhvckVtYWlsKCkKCXsKCQlyZXR1cm4gJ3NqZ0BjbXNtb2R1bGVzLmNvbSc7Cgl9CglmdW5jdGlvbiBHZXRDaGFuZ2VMb2coKQoJewoJCXJldHVybiAkdGhpcy0+TGFuZygnY2hhbmdlbG9nJyk7Cgl9CglmdW5jdGlvbiBJc1BsdWdpbk1vZHVsZSgpCgl7CgkJcmV0dXJuIHRydWU7Cgl9CglmdW5jdGlvbiBIYXNBZG1pbigpCgl7CgkJcmV0dXJuIHRydWU7Cgl9CglmdW5jdGlvbiBHZXRBZG1pblNlY3Rpb24oKQoJewoJCXJldHVybiAnY29udGVudCc7Cgl9CglmdW5jdGlvbiBHZXRBZG1pbkRlc2NyaXB0aW9uKCkKCXsKCQlyZXR1cm4gJHRoaXMtPkxhbmcoJ21vZGRlc2NyaXB0aW9uJyk7Cgl9CglmdW5jdGlvbiBWaXNpYmxlVG9BZG1pblVzZXIoKQoJewogICAgICAgIHJldHVybiAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdBZG1pbmlzdGVyIFF1aXp6ZXMnKTsKCX0KCWZ1bmN0aW9uIEdldERlcGVuZGVuY2llcygpCgl7CgkJcmV0dXJuIGFycmF5KCdDTVNNYWlsZXInPT4nMS43My4xMCcpOwoJfQoJZnVuY3Rpb24gTWluaW11bUNNU1ZlcnNpb24oKQoJewoJCXJldHVybiAiMS4wIjsKCX0KCWZ1bmN0aW9uIE1heGltdW1DTVNWZXJzaW9uKCkKCXsKCQlyZXR1cm4gIjEuNiI7Cgl9CglmdW5jdGlvbiBVbmluc3RhbGxQcmVNZXNzYWdlKCkKCXsKCQlyZXR1cm4gJHRoaXMtPkxhbmcoJ3JlYWxseV91bmluc3RhbGwnKTsKCX0KCQogICAgZnVuY3Rpb24gQWRtaW5TdHlsZSgpCiAgICB7CiAgICAgIHJldHVybiAiXG4ucXVpenphcmRfYXJlYV9zaG9ydCB7d2lkdGg6IDUwMHB4OyBoZWlnaHQ6IDEwMHB4O31cbi5xdWl6emFyZF9hcmVhX2xvbmcge3dpZHRoOiA1MDBweDsgaGVpZ2h0OiAzMDBweDt9XG4iOwogICAgfQoJCgogICAgZnVuY3Rpb24gRGlzcGxheUVycm9yUGFnZSgkaWQsICYkcGFyYW1zLCAkcmV0dXJuaWQsICRtZXNzYWdlPScnKQogICAgewogICAgCWVycm9yX2xvZygkbWVzc2FnZSk7CgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0aXRsZV9lcnJvcicsICR0aGlzLT5MYW5nKCdlcnJvcicpKTsKCQlpZiAoJG1lc3NhZ2UgIT0gJycpCgkJCXsKCQkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduX2J5X3JlZignbWVzc2FnZScsICRtZXNzYWdlKTsKCQkJfQoKICAgICAgICAvLyBEaXNwbGF5IHRoZSBwb3B1bGF0ZWQgdGVtcGxhdGUKICAgICAgICBlY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ2Vycm9yLnRwbCcpOwogICAgfQoKCglmdW5jdGlvbiBzZXRUYWtlcklkKCRpZCwkcXVpel9pZCwkc2Vzc2lvbj10cnVlKQoJewoJCS8vIHdlIGNhbiBvYnNjdXJlL2VuY3J5cHQgdGhpcyBsYXRlciwgc2hvdWxkIHdlIHNvIGRlc2lyZQoJCXNldGNvb2tpZSAoJ3F1aVpaYXJkXycuJHF1aXpfaWQsJGlkLCgkc2Vzc2lvbj8wOih0aW1lKCkrNjAqNjAqMjQqMzApKSk7CQoJfQoJCQoJZnVuY3Rpb24gZ2V0VGFrZXJJZCgkcXVpel9pZCkKCXsKICAgICAgZ2xvYmFsICRnQ21zOwogICAgICAkcmV0ID0gLTE7CgkgIGlmICgkdGhpcy0+dGFrZXJfaWQgIT0gLTEpCgkJewoJCXJldHVybiAkdGhpcy0+dGFrZXJfaWQ7CgkJfQoJLy8gYW5kIHJlZmxlY3QgdGhhdCBlbmNyeXB0aW9uL29ic2N1cmF0aW9uIGhlcmUKCWlmIChpc3NldCgkX0NPT0tJRVsncXVpWlphcmRfJy4kcXVpel9pZF0pKQoJCXsKICAgICAgICAJLy8gdmFsaWRhdGUgdGhlIHF1aXogaXMgc3RpbGwgaW5jb21wbGV0ZS4uLgogICAgICAgCSRkYiA9JiAkZ0Ntcy0+R2V0RGIoKTsKICAgICAgIAkkcXVlcnkgPSAnU0VMRUNUICogRlJPTSAnLiBjbXNfZGJfcHJlZml4KCkuCgkJCSdtb2R1bGVfcXpfdGFrZXJzIHdoZXJlIHRha2VyX2lkPT8gYW5kIGNvbXBsZXRlZD0wJzsKICAgICAJJHByZXYgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KCRfQ09PS0lFWydxdWlaWmFyZF8nLiRxdWl6X2lkXSkpOwogICAgICAgCWlmICgkcHJldiAmJiAkcHJldi0+UmVjb3JkQ291bnQoKSA+IDApCiAgICAgICAgICAgCXsKCQkJJHJldCA9ICRfQ09PS0lFWydxdWlaWmFyZF8nLiRxdWl6X2lkXTsKCQkJJHJvdyA9ICRwcmV2LT5GZXRjaFJvdygpOwoJCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3F1aXp6YXJkX3Rha2VyX25hbWUnLCRyb3dbJ25hbWUnXSk7CgkJCSR0aGlzLT5zbWFydHktPmFzc2lnbigncXVpenphcmRfdGFrZXJfZW1haWwnLCRyb3dbJ2VtYWlsJ10pOwoJCQl9CgkJfQoJcmV0dXJuICRyZXQ7Cgl9CgoJZnVuY3Rpb24gcmVzZXRUYWtlcklkKCRxdWl6X2lkKQoJewoJCS8vIGFuZCBoZXJlIGFzIHdlbGwKCQlzZXRjb29raWUgKCdxdWlaWmFyZF8nLiRxdWl6X2lkLCctMScpOwoJCSR0aGlzLT50YWtlcl9pZCA9IC0xOwoJfQoJCgoJZnVuY3Rpb24gZ2V0UXVpekxpc3QoJGlkLCAmJHBhcmFtcywgJHJldHVybmlkKQoJewogICAgICAgIGdsb2JhbCAkZ0NtczsKCQkkZGIgPSYgJGdDbXMtPkdldERiKCk7CgogICAgICAgICRlbnRyeWFycmF5ID0gYXJyYXkoKTsKCgkJJHF1ZXJ5ID0gIlNFTEVDVCBxdWl6X2lkLCBuYW1lLCBkZXNjcmlwdGlvbiBGUk9NICIuCgkJCWNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3F6X3F1aXp6ZXMgT1JERVIgYnkgbmFtZSI7ICAgICAgICAJCiAgICAgICAgCQogICAgICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkcXVlcnkpOwogICAgICAgIHdoaWxlICgkZGJyZXN1bHQgIT09IGZhbHNlICYmICRyb3cgPSAkZGJyZXN1bHQtPkZldGNoUm93KCkpCiAgICAgICAgewoJICAgICAgICRvbmVyb3cgPSBuZXcgc3RkQ2xhc3MoKTsKCgkgICAgICAgJG9uZXJvdy0+aWQgPSAkcm93WydxdWl6X2lkJ107CgkgICAgICAgJG9uZXJvdy0+dGl0bGUgPSAkcm93WyduYW1lJ107CgkgICAgICAgJG9uZXJvdy0+ZGVzYyA9ICRyb3dbJ2Rlc2NyaXB0aW9uJ107CgkgICAgICAgYXJyYXlfcHVzaCgkZW50cnlhcnJheSwgJG9uZXJvdyk7CiAgICAgICAgfQoJCSRxdWVyeSA9ICJTRUxFQ1QgY291bnQocXEucXVlc3Rpb25faWQpIGFzIHFjb3VudCBGUk9NICIuCgkJCQljbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9xel9xdWl6emVzIHF6LCAiLgoJCQkJY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfcXpfcXVlc3Rpb25zIHFxIHdoZXJlICIgLgoJCQkJInFxLnF1aXpfaWQgPSBxei5xdWl6X2lkIGFuZCBxcS5xdWVzdGlvbl90eXBlIGluICgnbScsJ2YnLCdjJykgIi4KCQkJCSJhbmQgcXoucXVpel9pZD0/IjsgICAgICAgIAkKCQlmb3IgKCRpPTA7JGk8Y291bnQoJGVudHJ5YXJyYXkpOyRpKyspCgkJCXsKCgkJICAgICAgICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KCRlbnRyeWFycmF5WyRpXS0+aWQpKTsKCQkgICAgICAgIGlmICgkZGJyZXN1bHQgIT09IGZhbHNlICYmICRyb3cgPSAkZGJyZXN1bHQtPkZldGNoUm93KCkpCgkJICAgICAgICAJewoJCQkJICAgICAgICRlbnRyeWFycmF5WyRpXS0+cWNvdW50ID0gJHJvd1sncWNvdW50J107CgkJCQkJfQoJCQkJCgkJCX0KCQlyZXR1cm4gJGVudHJ5YXJyYXk7Cgl9CgkKICAgIGZ1bmN0aW9uIGxpc3RRdWl6emVzKCRpZCwgJiRwYXJhbXMsICRyZXR1cm5pZCkKICAgIHsKICAgICAgICBnbG9iYWwgJGdDbXM7CgogICAgICAgICRlbnRyeWFycmF5ID0gJHRoaXMtPmdldFF1aXpMaXN0KCRpZCwgJHBhcmFtcywgJHJldHVybmlkKTsKCQkkcm93Y2xhc3M9InJvdzEiOwogICAgICAgIGZvciAoJGk9MDskaTxjb3VudCgkZW50cnlhcnJheSk7JGkrKykKICAgICAgICB7CgkgICAgICAgJGVudHJ5YXJyYXlbJGldLT5uYW1lID0gJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCAnZWRpdHF1aXonLCAkcmV0dXJuaWQsCgkgICAgICAgCQkkZW50cnlhcnJheVskaV0tPnRpdGxlLCBhcnJheSgncXVpel9pZCc9PiRlbnRyeWFycmF5WyRpXS0+aWQpKTsKCgkJCSAkZW50cnlhcnJheVskaV0tPmV4cG9ydCA9ICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwgJ2V4cG9ydHF1aXonLCAkcmV0dXJuaWQsCgkgICAgICAgCQknPGltZyBzcmM9IicuJGdDbXMtPmNvbmZpZ1sncm9vdF91cmwnXS4KCSAgICAgICAJCQknL2ltYWdlcy9jbXMveG1sX3Jzcy5naWYiIGFsdD0iJy4KCSAgICAgICAJCQkkdGhpcy0+TGFuZygnZXhwb3J0JykuJyIgY2xhc3M9InN5c3RlbWljb24iIC8+JywgYXJyYXkoJ3F1aXpfaWQnPT4kZW50cnlhcnJheVskaV0tPmlkLCd4bWwnPT4nMScpKTsKCSAgICAgICAJICRlbnRyeWFycmF5WyRpXS0+cm93Y2xhc3MgPSAkcm93Y2xhc3M7CgkJCSAkZW50cnlhcnJheVskaV0tPnN0YXRzID0gJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCAncXVpenN0YXRzJywgJHJldHVybmlkLAoJICAgICAgIAkJCSR0aGlzLT5MYW5nKCdzdGF0cycpLCBhcnJheSgncXVpel9pZCc9PiRlbnRyeWFycmF5WyRpXS0+aWQpKTsKCQkJICRlbnRyeWFycmF5WyRpXS0+bWFuYWdlID0gJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCAnbWFuYWdlcXVpeicsICRyZXR1cm5pZCwKCSAgICAgICAJCQkkdGhpcy0+TGFuZygnbWFuYWdlJyksIGFycmF5KCdxdWl6X2lkJz0+JGVudHJ5YXJyYXlbJGldLT5pZCkpOwoJCQkgJGVudHJ5YXJyYXlbJGldLT5icm93c2UgPSAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdzaG93cXVpenJlc3VsdHMnLCAkcmV0dXJuaWQsCgkJCQkJJHRoaXMtPkxhbmcoJ2Jyb3dzZV9yZXN1bHRzJyksIGFycmF5KCdxdWl6X2lkJz0+JGVudHJ5YXJyYXlbJGldLT5pZCkpOwoJCgkgICAgICAgJGVudHJ5YXJyYXlbJGldLT5lZGl0bGluayA9ICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwgJ2VkaXRxdWl6JywgJHJldHVybmlkLAoJICAgICAgIAkJJGdDbXMtPnZhcmlhYmxlc1snYWRtaW50aGVtZSddLT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9lZGl0LmdpZicsCgkgICAgICAgCQkJJHRoaXMtPkxhbmcoJ2VkaXQnKSwnJywnJywnc3lzdGVtaWNvbicpLAoJICAgICAgIAkJIAlhcnJheSgncXVpel9pZCc9PiRlbnRyeWFycmF5WyRpXS0+aWQpKTsKCSAgICAgICAkZW50cnlhcnJheVskaV0tPmRlbGV0ZWxpbmsgPSAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdkZWxldGVxdWl6JywgJHJldHVybmlkLAoJICAgICAgIAkJJGdDbXMtPnZhcmlhYmxlc1snYWRtaW50aGVtZSddLT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9kZWxldGUuZ2lmJywKCSAgICAgICAJCQkkdGhpcy0+TGFuZygnZGVsZXRlJyksJycsJycsJ3N5c3RlbWljb24nKSwKCSAgICAgICAJCQlhcnJheSgncXVpel9pZCc9PiRlbnRyeWFycmF5WyRpXS0+aWQpLCAkdGhpcy0+TGFuZygnYXJleW91c3VyZXF1aXonKSk7CgkgICAgICAgCSgkcm93Y2xhc3M9PSJyb3cxIj8kcm93Y2xhc3M9InJvdzIiOiRyb3djbGFzcz0icm93MSIpOwoKICAgICAgICB9CgogICAgICAgICR0aGlzLT5zbWFydHktPmFzc2lnbl9ieV9yZWYoJ2l0ZW1zJywgJGVudHJ5YXJyYXkpOwogICAgICAgICR0aGlzLT5zbWFydHktPmFzc2lnbignaXRlbWNvdW50JywgY291bnQoJGVudHJ5YXJyYXkpKTsKICAgICAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3NlY3Rpb24nLCR0aGlzLT5MYW5nKCdxdWl6bGlzdCcpKTsKICAgICAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2NvbHVtbl9uYW1lJywkdGhpcy0+TGFuZygnY29sdW1uX25hbWUnKSk7CiAgICAgICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdjb2x1bW5fZGVzYycsJHRoaXMtPkxhbmcoJ2NvbHVtbl9kZXNjJykpOwogICAgICAgICR0aGlzLT5zbWFydHktPmFzc2lnbignY29sdW1uX3Fjb3VudCcsJHRoaXMtPkxhbmcoJ2NvbHVtbl9xY291bnQnKSk7CiAgICAgICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdjb2x1bW5fZXhwb3J0JywkdGhpcy0+TGFuZygnY29sdW1uX2V4cG9ydCcpKTsKICAgICAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ25vcXVpenplcycsJHRoaXMtPkxhbmcoJ25vcXVpenplcycpKTsKCiAgICAgICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdhZGRsaW5rJywKICAgICAgICAgICAgJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCAnZWRpdHF1aXonLCAkcmV0dXJuaWQsCiAgICAgICAgICAgICAgICAkZ0Ntcy0+dmFyaWFibGVzWydhZG1pbnRoZW1lJ10tPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL25ld29iamVjdC5naWYnLAogICAgICAgICAgICAgICAgJHRoaXMtPkxhbmcoJ2FkZHF1aXonKSwnJywnJywnc3lzdGVtaWNvbicpLCBhcnJheSgpLCAnJywgZmFsc2UsIGZhbHNlLCAnJykgLicgJy4KICAgICAgICAgICAgJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCAnZWRpdHF1aXonLCAkcmV0dXJuaWQsCiAgICAgICAgICAgICAgICAkdGhpcy0+TGFuZygnYWRkcXVpeicpLCBhcnJheSgpLCAnJywgZmFsc2UsIGZhbHNlLCAnY2xhc3M9InBhZ2VvcHRpb25zIicpKTsKICAgIH0KCiAgICBmdW5jdGlvbiBsaXN0UXVlc3Rpb25zKCRpZCwgJiRwYXJhbXMsICRyZXR1cm5pZCkKICAgIHsKICAgICAgICBnbG9iYWwgJGdDbXM7CgkJJGRiID0mICRnQ21zLT5HZXREYigpOwoKICAgICAgICAkZW50cnlhcnJheSA9IGFycmF5KCk7CgoJCWlmICghaXNzZXQoJHBhcmFtc1sncXVpel9pZCddKSkKCQkJewoJCQkkcGFyYW1zWydxdWl6X2lkJ10gPSAtMTsKCQkJfQoJCSRxY291bnQgPSAxOwogICAgICAgICRxdWVyeSA9ICJTRUxFQ1QgcXVlc3Rpb25faWQsIHF1ZXN0aW9uLCB0aXRsZSwgcXVlc3Rpb25fdHlwZSBGUk9NICIuCiAgICAgICAgCWNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3F6X3F1ZXN0aW9ucyBXSEVSRSBxdWl6X2lkPT8gT1JERVIgYnkgb3JkZXJfYnkiOwogICAgICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkoJHBhcmFtc1sncXVpel9pZCddKSk7CgogICAgICAgICRyb3djbGFzcyA9ICdyb3cxJzsKCgkJJHByZXYgPSAtMTsKCQkkcW51bSA9IDE7CiAgICAgICAgd2hpbGUgKCRkYnJlc3VsdCAhPT0gZmFsc2UgJiYgJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKSkKICAgICAgICB7CgkgICAgICAgJG9uZXJvdyA9IG5ldyBzdGRDbGFzcygpOwoJICAgICAgIGlmICgkcm93WydxdWVzdGlvbl90eXBlJ10gPT0gJ2MnIHx8ICRyb3dbJ3F1ZXN0aW9uX3R5cGUnXSA9PSAnZicgfHwgJHJvd1sncXVlc3Rpb25fdHlwZSddID09ICdtJykKCSAgICAgICAJewoJCQkJJG9uZXJvdy0+bnVtID0gJHFudW0rKzsKCQkJCX0KCQkJZWxzZQoJCQkJewoJCQkJJG9uZXJvdy0+bnVtID0gJyc7CgkJCQlpZiAoJHJvd1sncXVlc3Rpb25fdHlwZSddID09ICdzJyAmJiAkdGhpcy0+R2V0UHJlZmVyZW5jZSgncmVudW1iZXJfYnlfc2VjdGlvbicsJycpID09ICcxJykKCQkJCQl7CgkJCQkJJHFudW0gPSAxOwoJCQkJCX0KCQkJCX0KCQkgICAkb25lcm93LT5xY291bnQgPSAkcWNvdW50Kys7CgkgICAgICAgJG9uZXJvdy0+aWQgPSAkcm93WydxdWVzdGlvbl9pZCddOwoJCSAgIGlmICgkcm93WydxdWVzdGlvbl90eXBlJ10gPT0gJ2InIHx8IHN0cmxlbigkcm93WydxdWVzdGlvbiddKSA8IDEpCgkJCQl7CgkJCQkkb25lcm93LT50aXRsZSA9ICctLS0nOwoJCQkJfQoJCQllbHNlIGlmICgkcm93WydxdWVzdGlvbl90eXBlJ10gPT0gJ3AnKQoJCQkJewoJCQkJJG9uZXJvdy0+dGl0bGUgPSAkdGhpcy0+TGFuZygndHlwZV9wJykuJzogJy4kcm93Wyd0aXRsZSddOwoJCQkJfQoJCQllbHNlCgkJCQl7CgkJCQkkb25lcm93LT50aXRsZSA9ICRyb3dbJ3F1ZXN0aW9uJ107CQoJCQkJfQoJICAgICAgICRvbmVyb3ctPm5hbWUgPSAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdlZGl0cXVlc3Rpb24nLCAkcmV0dXJuaWQsCgkgICAgICAgCQkkb25lcm93LT50aXRsZSwKCQkJCQkgYXJyYXkoJ3F1ZXN0aW9uX2lkJz0+JHJvd1sncXVlc3Rpb25faWQnXSwncXVpel9pZCc9PiRwYXJhbXNbJ3F1aXpfaWQnXSkpOwoJICAgICAgICRvbmVyb3ctPnJvd2NsYXNzID0gJHJvd2NsYXNzOwoJICAgICAgICRvbmVyb3ctPnR5cGUgPSAkdGhpcy0+TGFuZygndHlwZV8nLiRyb3dbJ3F1ZXN0aW9uX3R5cGUnXSk7CgoJICAgICAgICRvbmVyb3ctPmVkaXRsaW5rID0gJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCAnZWRpdHF1ZXN0aW9uJywgJHJldHVybmlkLAoJICAgICAgIAkJJGdDbXMtPnZhcmlhYmxlc1snYWRtaW50aGVtZSddLT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9lZGl0LmdpZicsCgkgICAgICAgCQkJJHRoaXMtPkxhbmcoJ2VkaXQnKSwnJywnJywnc3lzdGVtaWNvbicpLAoJICAgICAgIAkJIAlhcnJheSgncXVlc3Rpb25faWQnPT4kcm93WydxdWVzdGlvbl9pZCddLAoJICAgICAgIAkJIAkncXVpel9pZCc9PiRwYXJhbXNbJ3F1aXpfaWQnXSkpOwoJICAgICAgICRvbmVyb3ctPmRlbGV0ZWxpbmsgPSAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdkZWxldGVxdWVzdGlvbicsICRyZXR1cm5pZCwKCSAgICAgICAJCSRnQ21zLT52YXJpYWJsZXNbJ2FkbWludGhlbWUnXS0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vZGVsZXRlLmdpZicsCgkgICAgICAgCQkJJHRoaXMtPkxhbmcoJ2RlbGV0ZScpLCcnLCcnLCdzeXN0ZW1pY29uJyksCgkgICAgICAgCQkJYXJyYXkoJ3F1ZXN0aW9uX2lkJz0+JHJvd1sncXVlc3Rpb25faWQnXSwKCSAgICAgICAJCQkncXVpel9pZCc9PiRwYXJhbXNbJ3F1aXpfaWQnXSksICR0aGlzLT5MYW5nKCdhcmV5b3VzdXJlcXVlc3Rpb24nKSk7CgoJCSAgICRvbmVyb3ctPnVwbGluayA9ICcnOwoJCSAgICRvbmVyb3ctPmRvd25saW5rID0gJyc7CgkgICAgICAgYXJyYXlfcHVzaCgkZW50cnlhcnJheSwgJG9uZXJvdyk7CgoJICAgICAgICgkcm93Y2xhc3M9PSJyb3cxIj8kcm93Y2xhc3M9InJvdzIiOiRyb3djbGFzcz0icm93MSIpOwogICAgICAgIH0KCgkJJGxlbiA9IGNvdW50KCRlbnRyeWFycmF5KTsKCQlmb3IgKCRpID0gMDsgJGkgPCAkbGVuOyAkaSsrKQoJCQl7CgkJCWlmICgkaSA8ICRsZW4gLSAxKQoJCQkJewoJICAgICAgIAkJJGVudHJ5YXJyYXlbJGldLT5kb3dubGluayA9ICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwgJ29yZGVycXVlc3Rpb24nLAoJICAgICAgIAkJCSRyZXR1cm5pZCwKCSAgCQkJCSRnQ21zLT52YXJpYWJsZXNbJ2FkbWludGhlbWUnXS0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vYXJyb3ctZC5naWYnLAoJICAgICAgIAkJCSR0aGlzLT5MYW5nKCdkb3duJyksJycsJycsJ3N5c3RlbWljb24nKSwKCSAgICAgICAJCSAJYXJyYXkoJ3NyYyc9PiRlbnRyeWFycmF5WyRpXS0+aWQsCgkgICAgICAgCQkgCSdkc3QnPT4kZW50cnlhcnJheVskaSArIDFdLT5pZCwKCSAgICAgICAJCSAJJ3F1aXpfaWQnPT4kcGFyYW1zWydxdWl6X2lkJ10pKTsJCQkJCgkJCQl9CgkJCWlmICgkaSA+IDApCgkJCQl7CgkgICAgICAgCQkkZW50cnlhcnJheVskaV0tPnVwbGluayA9ICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwgJ29yZGVycXVlc3Rpb24nLAoJICAgICAgIAkJCSRyZXR1cm5pZCwKCSAgCQkJCSRnQ21zLT52YXJpYWJsZXNbJ2FkbWludGhlbWUnXS0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vYXJyb3ctdS5naWYnLAoJICAgICAgIAkJCSR0aGlzLT5MYW5nKCd1cCcpLCcnLCcnLCdzeXN0ZW1pY29uJyksCgkgICAgICAgCQkgCWFycmF5KCdzcmMnPT4kZW50cnlhcnJheVskaV0tPmlkLAoJICAgICAgIAkJIAknZHN0Jz0+JGVudHJ5YXJyYXlbJGkgLSAxXS0+aWQsCgkgICAgICAgCQkgCSdxdWl6X2lkJz0+JHBhcmFtc1sncXVpel9pZCddKSk7CQkJCQoJCQkJCgkJCQl9CgkJCX0KICAgICAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ25fYnlfcmVmKCdpdGVtcycsICRlbnRyeWFycmF5KTsKICAgICAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2l0ZW1jb3VudCcsIGNvdW50KCRlbnRyeWFycmF5KSk7CiAgICAgICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzZWN0aW9uJywkdGhpcy0+TGFuZygncXVpemxpc3QnKSk7CiAgICAgICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdjb2x1bW5fcXVlc3Rpb24nLCR0aGlzLT5MYW5nKCdjb2x1bW5fcXVlc3Rpb24nKSk7CiAgICAgICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdjb2x1bW5fdHlwZScsJHRoaXMtPkxhbmcoJ2NvbHVtbl90eXBlJykpOwogICAgICAgICR0aGlzLT5zbWFydHktPmFzc2lnbignbm9xdWVzdGlvbnMnLCR0aGlzLT5MYW5nKCdub3F1ZXN0aW9ucycpKTsKCiAgICAgICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdhZGRsaW5rJywKICAgICAgICAgICAgJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCAnZWRpdHF1ZXN0aW9uJywgJHJldHVybmlkLAogICAgICAgICAgICAgICAgJGdDbXMtPnZhcmlhYmxlc1snYWRtaW50aGVtZSddLT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9uZXdvYmplY3QuZ2lmJywKICAgICAgICAgICAgICAgICR0aGlzLT5MYW5nKCdhZGRxdWVzdGlvbicpLCcnLCcnLCdzeXN0ZW1pY29uJyksCiAgICAgICAgICAgICAgICBhcnJheSgncXVpel9pZCc9PiRwYXJhbXNbJ3F1aXpfaWQnXSksICcnLCBmYWxzZSwgZmFsc2UsICcnKS4KICAgICAgICAgICAgICAgICcgJy4KICAgICAgICAgICAgJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCAnZWRpdHF1ZXN0aW9uJywgJHJldHVybmlkLAogICAgICAgICAgICAgICAgJHRoaXMtPkxhbmcoJ2FkZHF1ZXN0aW9uJyksIGFycmF5KCdxdWl6X2lkJz0+JHBhcmFtc1sncXVpel9pZCddKSwgJycsIGZhbHNlLCBmYWxzZSwgJ2NsYXNzPSJwYWdlb3B0aW9ucyInKSk7CiAgICB9CgogICAgZnVuY3Rpb24gbGlzdEFuc3dlcnMoJGlkLCAmJHBhcmFtcywgJHJldHVybmlkKQogICAgewogICAgICAgIGdsb2JhbCAkZ0NtczsKCQkkZGIgPSYgJGdDbXMtPkdldERiKCk7CgogICAgICAgICRlbnRyeWFycmF5ID0gYXJyYXkoKTsKCgkJaWYgKCFpc3NldCgkcGFyYW1zWydxdWVzdGlvbl9pZCddKSkKCQkJewoJCQkkcGFyYW1zWydxdWVzdGlvbl9pZCddID0gLTE7CgkJCX0KCiAgICAgICAgJHF1ZXJ5ID0gIlNFTEVDVCBxdWVzdGlvbl90eXBlIEZST00gIi4KICAgICAgICAJY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfcXpfcXVlc3Rpb25zIFdIRVJFIHF1ZXN0aW9uX2lkPT8iOwogICAgICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkoJHBhcmFtc1sncXVlc3Rpb25faWQnXSkpOwogICAgICAgICR0aGVUeXBlID0gJGRicmVzdWx0LT5GZXRjaFJvdygpOwogICAgICAgIAkKCgogICAgICAgICRxdWVyeSA9ICJTRUxFQ1QgYW5zd2VyX2lkLCBpc19jb3JyZWN0LCBhbnN3ZXIgRlJPTSAiLgogICAgICAgIAljbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9xel9hbnN3ZXJzIFdIRVJFIHF1ZXN0aW9uX2lkPT8gIi4KICAgICAgICAJIm9yZGVyIGJ5IGFuc3dlcl9pZCI7CiAgICAgICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkcGFyYW1zWydxdWVzdGlvbl9pZCddKSk7CgogICAgICAgICRyb3djbGFzcyA9ICdyb3cxJzsKCgkJJGFuc3dlckNvdW50ID0gMDsKICAgICAgICB3aGlsZSAoJGRicmVzdWx0ICE9PSBmYWxzZSAmJiAkcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdygpKQogICAgICAgIHsKCQkJJG9uZXJvdyA9IG5ldyBzdGRDbGFzcygpOwoJCQkkb25lcm93LT5hY291bnQgPSAkYW5zd2VyQ291bnQ7CgkJCSRvbmVyb3ctPmlkID0gJHJvd1snYW5zd2VyX2lkJ107CgkJCSRvbmVyb3ctPm1jb3JyZWN0ID0gJzxpbnB1dCB0eXBlPSJyYWRpbyIgbmFtZT0iJy4KCSAgICAgICAJCSRpZC4ncmFkJy4kcGFyYW1zWydxdWVzdGlvbl9pZCddLgoJICAgICAgIAkJJyIgIHZhbHVlPSInLiRhbnN3ZXJDb3VudC4nIic7CgkJCWlmICgkcm93Wydpc19jb3JyZWN0J10gPT0gMSkKCQkJCXsKCQkJCSRvbmVyb3ctPm1jb3JyZWN0IC49ICcgJyAuICdjaGVja2VkPSJjaGVja2VkIic7CgkJCQl9CgkJCSRvbmVyb3ctPm1jb3JyZWN0IC49ICcgLz4nOwoJCQkkb25lcm93LT5jY29ycmVjdCA9ICc8aW5wdXQgdHlwZT0iY2hlY2tib3giIG5hbWU9IicuCgkgICAgICAgCQkkaWQuJ2NoZWNrJy4kYW5zd2VyQ291bnQuCgkgICAgICAgCQknIiAgdmFsdWU9IjEiJzsKCQkJaWYgKCRyb3dbJ2lzX2NvcnJlY3QnXSA9PSAxKQoJCQkJewoJCQkJJG9uZXJvdy0+Y2NvcnJlY3QgLj0gJyAnIC4gJ2NoZWNrZWQ9ImNoZWNrZWQiJzsKCQkJCX0KCQkJJG9uZXJvdy0+Y2NvcnJlY3QgLj0gJyAvPic7CgkJCSRvbmVyb3ctPnJvd2NsYXNzID0gJHJvd2NsYXNzOwoJCQkkb25lcm93LT5hbnN3ZXIgPSAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwgJ2Fuc3dlcicuCgkJCQkkYW5zd2VyQ291bnQsCgkJCQkkcm93WydhbnN3ZXInXSwgNjAsIDI1NSk7CgoJCQlhcnJheV9wdXNoKCRlbnRyeWFycmF5LCAkb25lcm93KTsKCQkJJGFuc3dlckNvdW50Kys7CgkgICAgICAgKCRyb3djbGFzcz09InJvdzEiPyRyb3djbGFzcz0icm93MiI6JHJvd2NsYXNzPSJyb3cxIik7CiAgICAgICAgfQogICAgICAgIGZvcigkaT0kYW5zd2VyQ291bnQ7JGk8JHRoaXMtPkdldFByZWZlcmVuY2UoJ21heF9hbnN3ZXJzJyw1KTskaSsrKQogICAgICAgIAl7CiAgICAgICAgCSRvbmVyb3cgPSBuZXcgc3RkQ2xhc3MoKTsKCQkJJG9uZXJvdy0+aWQgPSAkaTsKCQkJJG9uZXJvdy0+YWNvdW50ID0gJGk7CgkJCSRvbmVyb3ctPm1jb3JyZWN0ID0gJzxpbnB1dCB0eXBlPSJyYWRpbyIgbmFtZT0iJy4KCSAgICAgICAJCSRpZC4ncmFkJy4kcGFyYW1zWydxdWVzdGlvbl9pZCddLgoJICAgICAgIAkJJyIgIHZhbHVlPSInLiRpLiciJzsKCQkJaWYgKCRyb3dbJ2lzX2NvcnJlY3QnXSA9PSAxKQoJCQkJewoJCQkJJG9uZXJvdy0+bWNvcnJlY3QgLj0gJyAnIC4gJ2NoZWNrZWQ9ImNoZWNrZWQiJzsKCQkJCX0KCQkJJG9uZXJvdy0+bWNvcnJlY3QgLj0gJyAvPic7CgkJCSRvbmVyb3ctPmNjb3JyZWN0ID0gJzxpbnB1dCB0eXBlPSJjaGVja2JveCIgbmFtZT0iJy4KCSAgICAgICAJCSRpZC4nY2hlY2snLiRpLgoJICAgICAgIAkJJyIgIHZhbHVlPSIxIic7CgkJCWlmICgkcm93Wydpc19jb3JyZWN0J10gPT0gMSkKCQkJCXsKCQkJCSRvbmVyb3ctPmNjb3JyZWN0IC49ICcgJyAuICdjaGVja2VkPSJjaGVja2VkIic7CgkJCQl9CgkJCSRvbmVyb3ctPmNjb3JyZWN0IC49ICcgLz4nOwoJCQkkb25lcm93LT5yb3djbGFzcyA9ICRyb3djbGFzczsKCQkJJG9uZXJvdy0+YW5zd2VyID0gJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsICdhbnN3ZXInLgoJCQkJJGksJycsIDYwLCAyNTUpOwoKCQkJYXJyYXlfcHVzaCgkZW50cnlhcnJheSwgJG9uZXJvdyk7CgoJICAgICAgICgkcm93Y2xhc3M9PSJyb3cxIj8kcm93Y2xhc3M9InJvdzIiOiRyb3djbGFzcz0icm93MSIpOwogICAgICAgIAkKICAgICAgICAJfQogICAgICAgICR0aGlzLT5zbWFydHktPmFzc2lnbl9ieV9yZWYoJ2l0ZW1zJywgJGVudHJ5YXJyYXkpOwogICAgICAgICR0aGlzLT5zbWFydHktPmFzc2lnbignaXRlbWNvdW50JywgY291bnQoJGVudHJ5YXJyYXkpKTsKICAgICAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2NvbHVtbl9hbnN3ZXInLCR0aGlzLT5MYW5nKCdjb2x1bW5fYW5zd2VyJykpOwogICAgICAgICR0aGlzLT5zbWFydHktPmFzc2lnbignY29sdW1uX2NvcnJlY3QnLCR0aGlzLT5MYW5nKCdjb2x1bW5fY29ycmVjdCcpKTsKICAgICAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ25vYW5zd2VycycsJHRoaXMtPkxhbmcoJ25vYW5zd2VycycpKTsKCiAgICB9CgoJZnVuY3Rpb24gc3RvcmVTY29yZSgkcXVpel9pZCwkc2NvcmUpCgl7CiAgICAgICAgZ2xvYmFsICRnQ21zOwoJCSRkYiA9JiAkZ0Ntcy0+R2V0RGIoKTsKCQkkdGFrZXJfaWQgPSAkdGhpcy0+Z2V0VGFrZXJJZCgkcXVpel9pZCk7CgkJJHF1ZXJ5ID0gJ3VwZGF0ZSAnLmNtc19kYl9wcmVmaXgoKS4KCQkJCSJtb2R1bGVfcXpfdGFrZXJzIHNldCBjb21wbGV0ZWRfc2NvcmU9PyB3aGVyZSB0YWtlcl9pZD0/IjsKCQkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KCRzY29yZSwkdGFrZXJfaWQpKTsKCX0KCglmdW5jdGlvbiBzYXZlUXVlc3Rpb25BbnN3ZXJzKCRpZCwgJiRwYXJhbXMsICRyZXR1cm5pZCkKCXsKICAgICAgICBnbG9iYWwgJGdDbXM7CgkJJGRiID0mICRnQ21zLT5HZXREYigpOwoJCSR0YWtlcl9pZCA9ICR0aGlzLT5nZXRUYWtlcklkKCRwYXJhbXNbJ3F1aXpfaWQnXSk7CgkJCgkJJHRoZXNlUXVlc3Rpb25zID0gYXJyYXkoKTsKCQlmb3JlYWNoICgkcGFyYW1zIGFzICR0aGlzS2V5PT4kdGhpc1ZhbCkKCQkJewoJCQlpZiAoc3Vic3RyKCR0aGlzS2V5LDAsNikgPT0gJ3F6el9xXycgJiYKCQkJCQkoCgkJCQkJKCFpc19hcnJheSgkdGhpc1ZhbCkgJiYgc3RybGVuKCR0aGlzVmFsKT4wKSB8fAoJCQkJCSggaXNfYXJyYXkoJHRoaXNWYWwpICYmIGNvdW50KCR0aGlzVmFsKSA+IDApKSkKCQkJCXsKCQkJCSRzYWZlVGhpc1BhcmFtID0gcHJlZ19yZXBsYWNlKCIvXEQvIiwiIixzdWJzdHIoJHRoaXNLZXksNikpOwoJCQkJCgkJCQlhcnJheV9wdXNoKCR0aGVzZVF1ZXN0aW9ucywkc2FmZVRoaXNQYXJhbSk7CgkJCQl9CgkJCX0KCQkJCgkJaWYgKGNvdW50KCR0aGVzZVF1ZXN0aW9ucykgPiAwKQoJCQl7CgkJCSRxdWVzdGlvbnMgPSAkdGhpcy0+Z2V0UXVlc3Rpb25zSW5SYW5nZSgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwgdHJ1ZSk7CiAgICAgICAgCSRlbnRyeWFycmF5ID0gJHF1ZXN0aW9ucy0+cXVlc3Rpb25zOwoKCQkJJHF1ZXJ5ID0gIkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLgoJCQkJCSJtb2R1bGVfcXpfcmVzdWx0IHdoZXJlIHF1aXpfaWQ9PyBhbmQgdGFrZXJfaWQ9PyBhbmQgcXVlc3Rpb25faWQgaW4gKCIuaW1wbG9kZSgnLCcsJHRoZXNlUXVlc3Rpb25zKS4iKSI7CgkJCSRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksCgkJCQlhcnJheSgkcGFyYW1zWydxdWl6X2lkJ10sJHRha2VyX2lkKSk7CgoJCQkkbXF1ZXJ5ID0gIklOU0VSVCBJTlRPICIuY21zX2RiX3ByZWZpeCgpLgoJCQkJIm1vZHVsZV9xel9yZXN1bHQgKHJlc3VsdF9pZCwgdGFrZXJfaWQsIHF1aXpfaWQsIHF1ZXN0aW9uX2lkLCBhbnN3ZXIsIGFuc3dlcl9pZCwgaXNfY29ycmVjdCkgVkFMVUVTICg/LD8sPyw/LD8sPyw/KSI7CgkJCSRmcXVlcnkgPSAiSU5TRVJUIElOVE8gIi5jbXNfZGJfcHJlZml4KCkuCgkJCQkibW9kdWxlX3F6X3Jlc3VsdCAocmVzdWx0X2lkLCB0YWtlcl9pZCwgcXVpel9pZCwgcXVlc3Rpb25faWQsIGFuc3dlciwgaXNfY29ycmVjdCkgVkFMVUVTICg/LD8sPyw/LD8sPykiOwoKCQkJZm9yZWFjaCgkdGhlc2VRdWVzdGlvbnMgYXMgJHRoaXNRdWVzdGlvbikKCQkJCXsKCQkJCS8vIHNhdmUgaXQKCQkJCWlmICgkZW50cnlhcnJheVskdGhpc1F1ZXN0aW9uXS0+dHlwZSA9PSAnZicpCgkJCQkJewoJCQkJCSRjb3VudCA9IDA7CgkJCQkJaWYgKCEgaXNfYXJyYXkoJHBhcmFtc1sncXp6X3FfJy4kdGhpc1F1ZXN0aW9uXSkpCgkJCQkJCXsKCQkJCQkJJHBhcmFtc1sncXp6X3FfJy4kdGhpc1F1ZXN0aW9uXSA9IGFycmF5KCRwYXJhbXNbJ3F6el9xXycuJHRoaXNRdWVzdGlvbl0pOwoJCQkJCQl9CgkJCQkJZm9yZWFjaCgkcGFyYW1zWydxenpfcV8nLiR0aGlzUXVlc3Rpb25dIGFzICR0aGlzUmVzcCkKCQkJCQkJewoJCQkJCQkkY29ycmVjdCA9IDE7CgkJCQkJCWlmICgkdGhpcy0+R2V0UHJlZmVyZW5jZSgiY2FzZV9zZW5zaXRpdmUiLDApID09IDApCgkJCQkJCQl7CgkJCQkJCQlpZiAoc3RydG9sb3dlcigkZW50cnlhcnJheVskdGhpc1F1ZXN0aW9uXS0+Y29ycmVjdGFuc3dlcnNbJGNvdW50XSkgIT0gc3RydG9sb3dlcigkdGhpc1Jlc3ApKQoJCQkJCQkJCXsKCQkJCQkJCQkkY29ycmVjdCA9IDA7CgkJCQkJCQkJfQoJCQkJCQkJfQoJCQkJCQllbHNlCgkJCQkJCQl7CgkJCQkJCQlpZiAoJGVudHJ5YXJyYXlbJHRoaXNRdWVzdGlvbl0tPmNvcnJlY3RhbnN3ZXJzWyRjb3VudF0gIT0gJHRoaXNSZXNwKQoJCQkJCQkJCXsKCQkJCQkJCQkkY29ycmVjdCA9IDA7CgkJCQkJCQkJfQoJCQkJCQkJfQoJCQkJCQkkY291bnQrKzsKCQkJCQkJJHJlc3VsdF9pZCA9ICRkYi0+R2VuSUQoY21zX2RiX3ByZWZpeCgpLgoJCQkJCQkJJ21vZHVsZV9xel9yZXN1bHRfc2VxJyk7CgoJCQkJCQkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJGZxdWVyeSwKCQkJCQkJCWFycmF5KCRyZXN1bHRfaWQsCgkJCQkJCQkJJHRha2VyX2lkLAoJCQkJCQkJCSRwYXJhbXNbJ3F1aXpfaWQnXSwKCQkJCQkJCQkkdGhpc1F1ZXN0aW9uLAoJCQkJCQkJCWh0bWxlbnRpdGllcygkdGhpc1Jlc3AsRU5UX0NPTVBBVCwnVVRGLTgnKSwKCQkJCQkJCQkkY29ycmVjdAoJCQkJCQkJCSkKCQkJCQkJCSk7CgkJCQkJCX0KCQkJCQl9CgkJCQllbHNlIGlmICgkZW50cnlhcnJheVskdGhpc1F1ZXN0aW9uXS0+dHlwZSA9PSAnbScpCgkJCQkJewoJCQkJCSRyZXN1bHRfaWQgPSAkZGItPkdlbklEKGNtc19kYl9wcmVmaXgoKS4KCQkJCQkJCSdtb2R1bGVfcXpfcmVzdWx0X3NlcScpOwoJCQkJCSRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkbXF1ZXJ5LAoJCQkJCQlhcnJheSgkcmVzdWx0X2lkLAoJCQkJCQkJJHRha2VyX2lkLAoJCQkJCQkJJHBhcmFtc1sncXVpel9pZCddLAoJCQkJCQkJJHRoaXNRdWVzdGlvbiwKCQkJCQkJCWh0bWxlbnRpdGllcygkZW50cnlhcnJheVskdGhpc1F1ZXN0aW9uXS0+cmF3YW5zd2Vyc1sKCQkJCQkJCQkkcGFyYW1zWydxenpfcV8nLiR0aGlzUXVlc3Rpb25dXSxFTlRfQ09NUEFULCdVVEYtOCcpLAoJCQkJCQkJJHBhcmFtc1sncXp6X3FfJy4kdGhpc1F1ZXN0aW9uXSwKCQkJCQkJCSgoJGVudHJ5YXJyYXlbJHRoaXNRdWVzdGlvbl0tPmNvcnJlY3RhbnN3ZXJzWzBdID09ICRwYXJhbXNbJ3F6el9xXycuJHRoaXNRdWVzdGlvbl0pPzE6MCkKCQkJCQkJCSkKCQkJCQkJKTsKCQkJCQl9CgkJCQllbHNlIGlmICgkZW50cnlhcnJheVskdGhpc1F1ZXN0aW9uXS0+dHlwZSA9PSAnYycpCgkJCQkJewoJCQkJCSRjb3VudCA9IDA7CgkJCQkJaWYgKCEgaXNfYXJyYXkoJHBhcmFtc1sncXp6X3FfJy4kdGhpc1F1ZXN0aW9uXSkpCgkJCQkJCXsKCQkJCQkJJHBhcmFtc1sncXp6X3FfJy4kdGhpc1F1ZXN0aW9uXSA9IGFycmF5KCRwYXJhbXNbJ3F6el9xXycuJHRoaXNRdWVzdGlvbl0pOwoJCQkJCQl9CgkJCQkJZm9yZWFjaCgkZW50cnlhcnJheVskdGhpc1F1ZXN0aW9uXS0+Y29ycmVjdGFuc3dlcnMgYXMgJGNLZXk9PiRjVmFsKQoJCQkJCQl7CgkJCQkJCSRjb3JyZWN0ID0gMDsKCQkJCQkJJHRoaXNSZXNwID0gYXJyYXlfc2VhcmNoKCRjS2V5LCAkcGFyYW1zWydxenpfcV8nLiR0aGlzUXVlc3Rpb25dKTsKICAgICAgICAgICAgICAgICAgaWYgKCgkdGhpc1Jlc3AgIT09IGZhbHNlICYmICRjVmFsID09IDEpIHx8CgkJCQkJCQkoJHRoaXNSZXNwID09PSBmYWxzZSAmJiAkY1ZhbCA9PSAwKSkKCQkJCQkJCXsKCQkJCQkJCSRjb3JyZWN0ID0gMTsKCQkJCQkJCX0KCQkJCQkJJGNvdW50Kys7CgkJCQkJCSRyZXN1bHRfaWQgPSAkZGItPkdlbklEKGNtc19kYl9wcmVmaXgoKS4KCQkJCQkJCSdtb2R1bGVfcXpfcmVzdWx0X3NlcScpOwoKCQkJCQkJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRtcXVlcnksCgkJCQkJCQlhcnJheSgkcmVzdWx0X2lkLAoJCQkJCQkJCSR0YWtlcl9pZCwKCQkJCQkJCQkkcGFyYW1zWydxdWl6X2lkJ10sCgkJCQkJCQkJJHRoaXNRdWVzdGlvbiwKCQkJCQkJCQlodG1sZW50aXRpZXMoJGVudHJ5YXJyYXlbJHRoaXNRdWVzdGlvbl0tPnJhd2Fuc3dlcnNbJGNLZXldLEVOVF9DT01QQVQsJ1VURi04JyksCgkJCQkJCQkJJGNLZXksCgkJCQkJCQkJJGNvcnJlY3QKCQkJCQkJCQkpCgkJCQkJCQkpOwoJCQkJCQl9CgkJCQkJfQoJCQkJfQoJCQl9CgoJfQoJCgkKICAgZnVuY3Rpb24gbmVyZlF1ZXN0aW9uc0ZvckRpc3BsYXkoJiRlbnRyeWFycmF5KQoJewoJCWZvcmVhY2goYXJyYXlfa2V5cygkZW50cnlhcnJheSkgYXMgJGkpCgkJCXsKCQkJaWYgKCRlbnRyeWFycmF5WyRpXS0+dHlwZSA9PSAnZicpCgkJCQl7CgkJCQkkZW50cnlhcnJheVskaV0tPnF1ZXN0aW9uID0gc3RyX3JlcGxhY2UoIl8iLCJfX18iLCRlbnRyeWFycmF5WyRpXS0+cXVlc3Rpb24pOwoJCQkJfQoJCQl9Cgl9CiAgIAoJCiAgIGZ1bmN0aW9uIGNvbXB1dGVTY29yZVZhbHVlcygkaWQsICYkcGFyYW1zLCAkcmV0dXJuaWQsICYkZW50cnlhcnJheSkKICAgewogICAJCWdsb2JhbCAkZ0NtczsKCQkkZGIgPSYgJGdDbXMtPkdldERiKCk7CgkJaWYgKGlzc2V0KCRwYXJhbXNbJ3F6el90YWtlcl9pZCddKSkKCQkJewoJCQkkdGFrZXJfaWQgPSAkcGFyYW1zWydxenpfdGFrZXJfaWQnXTsKCQkJfQoJCWVsc2UKCQkJewoJCQkkdGFrZXJfaWQgPSAkdGhpcy0+Z2V0VGFrZXJJZCgkcGFyYW1zWydxdWl6X2lkJ10pOwoJCQl9CgoJCSR0b3RhbF9xdWVzdGlvbnMgPSAwOwoJCSR0b3RhbF9zY29yZWQgPSAwOwoJCSRza2lwcGVkID0gMDsKCgkJJHFzID0gYXJyYXkoKTsKCQlmb3JlYWNoKGFycmF5X2tleXMoJGVudHJ5YXJyYXkpIGFzICRpKQoJCQl7CgkJCSRlbnRyeWFycmF5WyRpXS0+Y29ycmVjdCA9IDE7CgkJCSRlbnRyeWFycmF5WyRpXS0+c2tpcHBlZCA9IDE7CgkJCWFycmF5X3B1c2goJHFzLCRpKTsKICAgCQkJfQoKICAgCQkkcXVlcnkgPSAnU0VMRUNUICogZnJvbSAnLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3F6X3Jlc3VsdCB3aGVyZSBxdWl6X2lkPT8gYW5kIHRha2VyX2lkPT8gYW5kIHF1ZXN0aW9uX2lkIGluICgiLgoJCQlpbXBsb2RlKCcsJywkcXMpLiAiKSBvcmRlciBieSByZXN1bHRfaWQiOwoKCQkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgkcGFyYW1zWydxdWl6X2lkJ10sJHRha2VyX2lkKSk7CiAgICAgICAgd2hpbGUgKCRkYnJlc3VsdCAhPT0gZmFsc2UgJiYgJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKSkKICAgICAgICB7CiAgICAgICAgCWlmICghIGVtcHR5KCRyb3dbJ2Fuc3dlciddKSAmJiBzdHJsZW4oJHJvd1snYW5zd2VyJ10pPjApCiAgICAgICAgCQl7CiAgICAgICAgCQkkZW50cnlhcnJheVskcm93WydxdWVzdGlvbl9pZCddXS0+c2tpcHBlZCA9IDA7CiAgICAgICAgCQl9CiAgICAgICAgCWlmICgkZW50cnlhcnJheVskcm93WydxdWVzdGlvbl9pZCddXS0+dHlwZSA9PSAnbScpCiAgICAgICAgCQl7CiAgICAgICAgCQkkZW50cnlhcnJheVskcm93WydxdWVzdGlvbl9pZCddXS0+Z2l2ZW5hbnN3ZXIgPQogICAgICAgIAkJCShpc3NldCgkZW50cnlhcnJheVskcm93WydxdWVzdGlvbl9pZCddXS0+cmF3YW5zd2Vyc1skcm93WydhbnN3ZXJfaWQnXV0pPwoJCQkJCQkkZW50cnlhcnJheVskcm93WydxdWVzdGlvbl9pZCddXS0+cmF3YW5zd2Vyc1skcm93WydhbnN3ZXJfaWQnXV06JycpOwogICAgICAgIAkJfQogICAgICAgIAllbHNlIGlmICgkZW50cnlhcnJheVskcm93WydxdWVzdGlvbl9pZCddXS0+dHlwZSA9PSAnZicpCiAgICAgICAgCQl7CiAgICAgICAgCQkkZW50cnlhcnJheVskcm93WydxdWVzdGlvbl9pZCddXS0+Z2l2ZW5hbnN3ZXJzW10gPQoJCQkJCSRyb3dbJ2Fuc3dlciddOwogICAgICAgIAkJfQogICAgICAgIAllbHNlIGlmICgkZW50cnlhcnJheVskcm93WydxdWVzdGlvbl9pZCddXS0+dHlwZSA9PSAnYycpCiAgICAgICAgCQl7CiAgICAgICAgCQlpZiAoJHJvd1snaXNfY29ycmVjdCddID09IDEgJiYKICAgICAgICAJCQkkZW50cnlhcnJheVskcm93WydxdWVzdGlvbl9pZCddXS0+Y29ycmVjdGFuc3dlcnNbJHJvd1snYW5zd2VyX2lkJ11dID09IDEpCiAgICAgICAgCQkJewoJCQkJCSRlbnRyeWFycmF5WyRyb3dbJ3F1ZXN0aW9uX2lkJ11dLT5naXZlbmFuc3dlcnNbXSA9CgkJCQkJCSRyb3dbJ2Fuc3dlciddOwoJCQkJCX0KCQkJCWVsc2UgaWYgKCRyb3dbJ2lzX2NvcnJlY3QnXSA9PSAwICYmCgkJCQkJJGVudHJ5YXJyYXlbJHJvd1sncXVlc3Rpb25faWQnXV0tPmNvcnJlY3RhbnN3ZXJzWyRyb3dbJ2Fuc3dlcl9pZCddXSA9PSAwKQogICAgICAgIAkJCXsKCQkJCQkkZW50cnlhcnJheVskcm93WydxdWVzdGlvbl9pZCddXS0+Z2l2ZW5hbnN3ZXJzW10gPQoJCQkJCQkkcm93WydhbnN3ZXInXTsKCQkJCQl9CQkJCQogICAgICAgIAkJfQogICAgICAgIAkkZW50cnlhcnJheVskcm93WydxdWVzdGlvbl9pZCddXS0+Y29ycmVjdCAmPSAkcm93Wydpc19jb3JyZWN0J107CiAgICAgICAgfQogICAgICAgIC8vZGVidWdfZGlzcGxheSgkZW50cnlhcnJheSk7CiAgICAgICAgJHNjb3JlID0gMDsKCQlmb3JlYWNoKGFycmF5X2tleXMoJGVudHJ5YXJyYXkpIGFzICRpKQoJCQl7CgkJCWlmICgkZW50cnlhcnJheVskaV0tPnR5cGUgPT0gJ20nKQoJCQkJewoJCQkJJGVudHJ5YXJyYXlbJGldLT5jb3JyZWN0YW5zd2VyID0gJGVudHJ5YXJyYXlbJGldLT5yYXdhbnN3ZXJzWyRlbnRyeWFycmF5WyRpXS0+Y29ycmVjdGFuc3dlcnNbMF1dOwoJCQkJJGVudHJ5YXJyYXlbJGldLT5xdWVzdGlvbl90eHQgPSBzdHJpcF90YWdzKCRlbnRyeWFycmF5WyRpXS0+cXVlc3Rpb24pOwoJCQkJJGVudHJ5YXJyYXlbJGldLT5naXZlbmFuc3dlcl90eHQgPQoJCQkJKGlzc2V0KCRlbnRyeWFycmF5WyRpXS0+Z2l2ZW5hbnN3ZXIpP3N0cmlwX3RhZ3MoJGVudHJ5YXJyYXlbJGldLT5naXZlbmFuc3dlcik6JycpOwoJCQkJJGVudHJ5YXJyYXlbJGldLT5jb3JyZWN0YW5zd2VyX3R4dCA9CgkJCQlzdHJpcF90YWdzKCRlbnRyeWFycmF5WyRpXS0+Y29ycmVjdGFuc3dlcik7CgkJCQl9CgkJCWVsc2UgaWYgKCRlbnRyeWFycmF5WyRpXS0+dHlwZSA9PSAnZicpCgkJCQl7CgkJCQkkZW50cnlhcnJheVskaV0tPmdpdmVuYW5zd2VyID0gCgkJCQkJJHRoaXMtPnJlcGxhY2VCbGFua3NXaXRoVmFsdWVzKAoJCQkJCQkkZW50cnlhcnJheVskaV0tPnF1ZXN0aW9uLAoJCQkJCQkoaXNzZXQoJGVudHJ5YXJyYXlbJGldLT5naXZlbmFuc3dlcnMpPyRlbnRyeWFycmF5WyRpXS0+Z2l2ZW5hbnN3ZXJzOicnKSwKCQkJCQkJJzxzcGFuIGNsYXNzPSJnaXZlbl9hbnN3ZXIiPl8nLCAnXzwvc3Bhbj4nLGZhbHNlKTsKCgkJCQkkZW50cnlhcnJheVskaV0tPmNvcnJlY3RhbnN3ZXIgPQoJCQkJIAkkdGhpcy0+cmVwbGFjZUJsYW5rc1dpdGhWYWx1ZXMoCgkJCQkJCSRlbnRyeWFycmF5WyRpXS0+cXVlc3Rpb24sCgkJCQkJCSRlbnRyeWFycmF5WyRpXS0+Y29ycmVjdGFuc3dlcnMsCgkJCQkJCSc8c3BhbiBjbGFzcz0iY29ycmVjdF9hbnN3ZXIiPl8nLCAnXzwvc3Bhbj4nLGZhbHNlKTsKCQkJCQkKCQkJCSRlbnRyeWFycmF5WyRpXS0+cXVlc3Rpb25fdHh0ID0gc3RyaXBfdGFncygkZW50cnlhcnJheVskaV0tPnF1ZXN0aW9uKTsKCQkJCSRlbnRyeWFycmF5WyRpXS0+Z2l2ZW5hbnN3ZXJfdHh0ID0KCQkJCQlzdHJpcF90YWdzKCRlbnRyeWFycmF5WyRpXS0+Z2l2ZW5hbnN3ZXIpOwoJCQkJJGVudHJ5YXJyYXlbJGldLT5jb3JyZWN0YW5zd2VyX3R4dCA9CgkJCQkJc3RyaXBfdGFncygkZW50cnlhcnJheVskaV0tPmNvcnJlY3RhbnN3ZXIpOwkJCQkJCQkJCQoJCQkJfQoJCQllbHNlIGlmICgkZW50cnlhcnJheVskaV0tPnR5cGUgPT0gJ2MnKQoJCQkJewoJCQkJJGVudHJ5YXJyYXlbJGldLT5jb3JyZWN0YW5zd2VyID0gJyc7CgkJCQlmb3JlYWNoICgkZW50cnlhcnJheVskaV0tPmNvcnJlY3RhbnN3ZXJzIGFzICRja2V5PT4kY3ZhbCkKCQkJCQl7CgkJCQkJaWYgKCRjdmFsID09IDEpCgkJCQkJCXsKCQkJCQkJJGVudHJ5YXJyYXlbJGldLT5jb3JyZWN0YW5zd2VyIC49CgkJCQkJCQkkZW50cnlhcnJheVskaV0tPnJhd2Fuc3dlcnNbJGNrZXldIC4gJywgJzsKCQkJCQkJfQoJCQkJCX0KCQkJCSRlbnRyeWFycmF5WyRpXS0+Y29ycmVjdGFuc3dlciA9IHJ0cmltKCRlbnRyeWFycmF5WyRpXS0+Y29ycmVjdGFuc3dlciwiLCAiKTsKCQkJCSRlbnRyeWFycmF5WyRpXS0+cXVlc3Rpb25fdHh0ID0gc3RyaXBfdGFncygkZW50cnlhcnJheVskaV0tPnF1ZXN0aW9uKTsKCgkJCQlpZiAoaXNzZXQoJGVudHJ5YXJyYXlbJGldLT5naXZlbmFuc3dlcnMpKQoJCQkJCXsKCQkJCQkkZW50cnlhcnJheVskaV0tPmdpdmVuYW5zd2VyID0gaW1wbG9kZSgnLCAnLCRlbnRyeWFycmF5WyRpXS0+Z2l2ZW5hbnN3ZXJzKTsKCgkJCQkJJGVudHJ5YXJyYXlbJGldLT5naXZlbmFuc3dlcl90eHQgPQoJCQkJCQlzdHJpcF90YWdzKCRlbnRyeWFycmF5WyRpXS0+Z2l2ZW5hbnN3ZXIpOwoJCQkJCX0KCQkJCWVsc2UKCQkJCQl7CgkJCQkJJGVudHJ5YXJyYXlbJGldLT5naXZlbmFuc3dlciA9ICcnOwoJCQkJCSRlbnRyeWFycmF5WyRpXS0+Z2l2ZW5hbnN3ZXJfdHh0ID0gJyc7CgkJCQkJfQoJCQkJJGVudHJ5YXJyYXlbJGldLT5jb3JyZWN0YW5zd2VyX3R4dCA9CgkJCQlzdHJpcF90YWdzKCRlbnRyeWFycmF5WyRpXS0+Y29ycmVjdGFuc3dlcik7CgkJCQl9CgoJCQllbHNlIGlmICgkZW50cnlhcnJheVskaV0tPnR5cGUgPT0gJ3MnKQoJCQkJewoJCQkJJGVudHJ5YXJyYXlbJGldLT5xdWVzdGlvbl90eHQgPSBzdHJpcF90YWdzKCRlbnRyeWFycmF5WyRpXS0+cXVlc3Rpb24pOwoJCQkJfQoJCQlpZiAoJGVudHJ5YXJyYXlbJGldLT50eXBlID09ICdtJyB8fAoJCQkJJGVudHJ5YXJyYXlbJGldLT50eXBlID09ICdmJyB8fAoJCQkJJGVudHJ5YXJyYXlbJGldLT50eXBlID09ICdjJykKCQkJCXsKCQkJCSR0b3RhbF9xdWVzdGlvbnMrKzsKCQkJCWlmICgkZW50cnlhcnJheVskaV0tPmlzX3Njb3JlZCA9PSAxKQoJCQkJCXsKCQkJCQkkdG90YWxfc2NvcmVkKys7CgkJCQkJfQoJCQkJaWYgKCRlbnRyeWFycmF5WyRpXS0+c2tpcHBlZCA9PSAxICYmCgkJCQkJJGVudHJ5YXJyYXlbJGldLT5pc19zY29yZWQgPT0gMSkKCQkJCQl7CgkJCQkJJHNraXBwZWQrKzsKCQkJCQkkZW50cnlhcnJheVskaV0tPmNvcnJlY3QgPSAwOwoJCQkJCX0KCQkJCWlmICgkZW50cnlhcnJheVskaV0tPmNvcnJlY3QgPT0gMSAmJgoJCQkJCSRlbnRyeWFycmF5WyRpXS0+aXNfc2NvcmVkID09IDEpCgkJCQkJewoJCQkJCSRzY29yZSsrOwoJCQkJCX0KCQkJCX0KCQkJfQoKCQkkc2NvcmVib2FyZCA9IG5ldyBzdGRDbGFzcygpOwoJCSRzY29yZWJvYXJkLT5zY29yZSA9ICRzY29yZTsKCQkkc2NvcmVib2FyZC0+dG90YWxfcXVlc3Rpb25zID0gJHRvdGFsX3Njb3JlZDsKCQkkc2NvcmVib2FyZC0+c2tpcHBlZCA9ICRza2lwcGVkOwoJCSRzY29yZWJvYXJkLT5hbnN3ZXJlZCA9ICR0b3RhbF9zY29yZWQgLSAkc2tpcHBlZDsKCQlpZiAoJHRvdGFsX3Njb3JlZCAhPSAwKQoJCQl7CgkJCSRzY29yZWJvYXJkLT5wZXJjZW50X3JpZ2h0ID0gc3ByaW50ZigiJTAyLjBmIiwoMTAwICogJHNjb3JlLyR0b3RhbF9zY29yZWQpKTsKCQkJJHNjb3JlYm9hcmQtPnBlcmNlbnRfYW5zd2VyZWQgPSBzcHJpbnRmKCIlMDIuMGYiLAoJCQkJKDEwMCooJHRvdGFsX3Njb3JlZC0kc2tpcHBlZCkvJHRvdGFsX3Njb3JlZCkpOwoJCQkkc2NvcmVib2FyZC0+cGVyY2VudF9za2lwcGVkID0gc3ByaW50ZigiJTAyLjBmIiwoMTAwKiRza2lwcGVkLyR0b3RhbF9zY29yZWQpKTsKCQkJfQoJCWVsc2UKCQkJewoJCQkkc2NvcmVib2FyZC0+cGVyY2VudF9yaWdodCA9ICR0aGlzLT5MYW5nKCduYScpOwoJCQkkc2NvcmVib2FyZC0+cGVyY2VudF9hbnN3ZXJlZCA9ICR0aGlzLT5MYW5nKCduYScpOwoJCQkkc2NvcmVib2FyZC0+cGVyY2VudF9za2lwcGVkID0gJHRoaXMtPkxhbmcoJ25hJyk7CgkJCX0KCQlpZiAoJHRvdGFsX3Njb3JlZC0kc2tpcHBlZCA+IDApCgkJCXsKCQkJJHNjb3JlYm9hcmQtPnNjb3JlX3BlcmNlbnRfYW5zd2VyZWQgPSBzcHJpbnRmKCIlMDIuMGYiLCgxMDAgKiAkc2NvcmUvKCR0b3RhbF9zY29yZWQtJHNraXBwZWQpKSk7CgkJCX0KCQllbHNlCgkJCXsKCQkJJHNjb3JlYm9hcmQtPnNjb3JlX3BlcmNlbnRfYW5zd2VyZWQgPSAkdGhpcy0+TGFuZygnbmEnKTsKCQkJfQoKCQlyZXR1cm4gJHNjb3JlYm9hcmQ7CiAgIH0KCQoJCglmdW5jdGlvbiBmaWx0ZXJGb3JXcm9uZ0Fuc3dlcnMoJiRlbnRyeWFycmF5KQoJCXsKCQkkZW50cnlhcnJheSA9IGFycmF5X2ZpbHRlcigkZW50cnlhcnJheSxhcnJheSgkdGhpcywidGVzdGZvcmNvcnJlY3QiKSk7CgkJfQoJCgkvKiAKCQlyZXR1cm5zIGFuIG9iamVjdDoKCQkkcmV0dXJuT2JqLT5xdWVzdGlvbnMgPSBhcnJheSBvZiBxdWVzdGlvbnM7CgkJJHJldHVybk9iai0+cGFnZV9jb3VudCA9ICMgb2YgcGFnZXM7CgkJJHJldHVybk9iai0+dGhpc19wYWdlID0gY3VycmVudCBwYWdlIG51bWJlcjsKCQkKCQlzZXQgJGdldGFsbCB0byB0cnVlIHRvIHJldHJpZXZlIEFMTCBxdWVzdGlvbnMKCQkKCQoJc3RhcnQgYXQgZW5kIG1lYW5zIHRvIGFkdmFuY2UgaW4gdGhlIHF1aXosIG90aGVyd2lzZSB3ZSdyZSBsb29raW5nIGF0CgkgICBxdWVzdGlvbnMgZm9yIHdoaWNoIHdlIGhhdmUgYW5zd2VycyAqLwoJZnVuY3Rpb24gJmdldFF1ZXN0aW9uc0luUmFuZ2UoJGlkLCAmJHBhcmFtcywgJHJldHVybmlkLCAkZ2V0YWxsID0gZmFsc2UpCgl7CgkJCiAgICAgICAgZ2xvYmFsICRnQ21zOwoJCSRkYiA9JiAkZ0Ntcy0+R2V0RGIoKTsKCiAgICAgICAgJGVudHJ5YXJyYXkgPSBhcnJheSgpOwoKCQkkc3RhcnRBdEVuZCA9IGZhbHNlOwoJCWlmICgkc3RhcnRBdEVuZCkKCQkJewoJCQkkc3RhcnRfcXVlc3Rpb24gPSAoaXNzZXQoJHBhcmFtc1sncXVlc3Rpb24nXSk/JHBhcmFtc1sncXVlc3Rpb24nXTowKTsKCQkJfQoJCWVsc2UKCQkJewoJCQkkc3RhcnRfcXVlc3Rpb24gPSAoaXNzZXQoJHBhcmFtc1sncXp6X3ByZXZxdWVzdGlvbiddKT8kcGFyYW1zWydxenpfcHJldnF1ZXN0aW9uJ106MCk7CgkJCX0KCQkJCgkJJHN0YXJ0UGFnZSA9IChpc3NldCgkcGFyYW1zWydxenpfcGFnZSddKT8kcGFyYW1zWydxenpfcGFnZSddOjEpOwoKCgoJCWlmICgkdGhpcy0+R2V0UHJlZmVyZW5jZSgncGFnaW5hdGlvbicsJ2NvdW50JykgPT0gJ2NvdW50JykKCQkJewoJCQkkbnVtYmVyX3RvX2FkZCA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdkZWZhdWx0X3F1ZXN0aW9ucycsJzEwJyk7CgkJCX0KCQllbHNlCgkJCXsKCQkJJG51bWJlcl90b19hZGQgPSAxMDAwMDsgLy8gc3VyZWx5IG5vIHJlYXNvbmFibGUgcXVpeiBoYXMgMTAwMDAgcXVlc3Rpb25zLi4uIChmYW1vdXMgbGFzdCB3b3JkcykKCQkJfQoKCQkkcXVlcnkgPSAiU0VMRUNUIHF1ZXN0aW9uX2lkLCBxdWVzdGlvbiwgdGl0bGUsIHF1ZXN0aW9uX3R5cGUsIGlzX3Njb3JlZCwgb3JkZXJfYnkgRlJPTSAiLgogICAgICAgIAljbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9xel9xdWVzdGlvbnMgV0hFUkUgcXVpel9pZD0/IE9SREVSIGJ5IG9yZGVyX2J5IjsKICAgICAgCgkJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkcGFyYW1zWydxdWl6X2lkJ10pKTsKCgkJJHF1ZXN0aW9uX2NvdW50ID0gMDsKCQkkcGFnZSA9IDE7CgkJJHF1ZXN0aW9uX251bWJlciA9IDE7CgkJJGJyZWFrX2FmdGVyX3ByZXYgPSBmYWxzZTsKCgkJd2hpbGUgKCRkYnJlc3VsdCAhPT0gZmFsc2UgJiYgJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKSkKICAgICAgICB7CiAgICAgICAgCSRvbmVyb3cgPSBuZXcgc3RkQ2xhc3MoKTsKCQkJJGluY3IgPSBmYWxzZTsKCQkJaWYgKCRicmVha19hZnRlcl9wcmV2KQoJCQkJewoJCQkJJHBhZ2UrKzsKCQkJCSRicmVha19hZnRlcl9wcmV2ID0gZmFsc2U7CgkJCQl9CgkJCWlmICgkcm93WydxdWVzdGlvbl90eXBlJ10gPT0gJ20nIHx8ICRyb3dbJ3F1ZXN0aW9uX3R5cGUnXSA9PSAnZicgfHwgJHJvd1sncXVlc3Rpb25fdHlwZSddID09ICdjJykKCQkJCXsKCQkJCSRvbmVyb3ctPm51bSA9ICRxdWVzdGlvbl9udW1iZXIrKzsKCQkJCSRxdWVzdGlvbl9jb3VudCsrOwoJCQkJfQoJCQllbHNlIGlmICgkcm93WydxdWVzdGlvbl90eXBlJ10gPT0gJ3MnKQoJCQkJewoJCQkJJG9uZXJvdy0+bnVtID0gJyc7CgkJCQlpZiAoJHRoaXMtPkdldFByZWZlcmVuY2UoJ3JlbnVtYmVyX2J5X3NlY3Rpb24nLCcnKSA9PSAnMScpCgkJCQkJewoJCQkJCSRxdWVzdGlvbl9udW1iZXIgPSAxOwoJCQkJCX0KCQkJCX0KCQkJZWxzZSBpZiAoJHJvd1sncXVlc3Rpb25fdHlwZSddID09ICdiJykKCQkJCXsKCQkJCSRwYWdlKys7CgkJCQl9CgkJCWVsc2UgaWYgKCRyb3dbJ3F1ZXN0aW9uX3R5cGUnXSA9PSAncCcpCgkJCQl7CgkJCQkkYnJlYWtfYWZ0ZXJfcHJldiA9IHRydWU7CgkJCQl9CgkJCWVsc2UKCQkJCXsKCQkJCSRvbmVyb3ctPm51bSA9ICcnOwoJCQkJfQoJCQkKCQkJaWYgKCRnZXRhbGwgfHwgJHBhZ2UgPT0gJHN0YXJ0UGFnZSkKCQkJCXsKCQkJCSRvbmVyb3ctPmlkID0gJHJvd1sncXVlc3Rpb25faWQnXTsKCQkJCSRvbmVyb3ctPnF1ZXN0aW9uID0gJHJvd1sncXVlc3Rpb24nXTsKCQkJCSRvbmVyb3ctPnRpdGxlID0gaXNzZXQoJHJvd1sndGl0bGUnXSk/JHJvd1sndGl0bGUnXTonJzsKCQkJCSRvbmVyb3ctPnR5cGUgPSAkcm93WydxdWVzdGlvbl90eXBlJ107CgkJCQkkb25lcm93LT5vcmRlcl9ieSA9ICRyb3dbJ29yZGVyX2J5J107CgkJCQkkb25lcm93LT5pc19zY29yZWQgPSAkcm93Wydpc19zY29yZWQnXT90cnVlOmZhbHNlOwoJCQkJJG9uZXJvdy0+cmF3YW5zd2VycyA9IGFycmF5KCk7CgkJCQkkb25lcm93LT5jb3JyZWN0YW5zd2VycyA9IGFycmF5KCk7CgkJCQkkZW50cnlhcnJheVskcm93WydxdWVzdGlvbl9pZCddXSA9ICRvbmVyb3c7CgkJCQl9CgkJCWlmICgkcXVlc3Rpb25fY291bnQgPT0gJG51bWJlcl90b19hZGQpCgkJCQl7CgkJCQkkcXVlc3Rpb25fY291bnQgPSAwOwoJCQkJJHBhZ2UrKzsKCQkJCSRpbmNyID0gdHJ1ZTsKCQkJCX0KCQl9CgkJCgkJLy8gd2FzIG91ciBsYXN0IHF1ZXN0aW9uIG9uIGFuIGluY3JlbWVudCB0aHJlc2hvbGQ/IElmIHNvLCBnZXQgcmlkIG9mIHRoZSBleHRyYSBwYWdlLgoJCWlmICgkaW5jcikKCQkJewoJCQkkcGFnZS0tOwoJCQl9CgoJCWZvcmVhY2goYXJyYXlfa2V5cygkZW50cnlhcnJheSkgYXMgJGkpCgkJCXsKCQkJaWYgKCRlbnRyeWFycmF5WyRpXS0+dHlwZSA9PSAncCcgJiYgJHRoaXMtPkdldFByZWZlcmVuY2UoJ3NtYXJ0eV9wYWdlcycsICcwJykgPT0gJzEnKQoJCQkJewoJCQkJJGVudHJ5YXJyYXlbJGldLT5xdWVzdGlvbiA9ICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGVGcm9tRGF0YSggJGVudHJ5YXJyYXlbJGldLT5xdWVzdGlvbiApOwoJCQkJfQoJCQllbHNlIGlmICgkZW50cnlhcnJheVskaV0tPnR5cGUgPT0gJ20nKQoJCQkJewoJCQkJLy8gbXVsdGlwbGUtY2hvaWNlCiAgICAgICAgCQkkcXVlcnkgPSAiU0VMRUNUIGFuc3dlcl9pZCwgYW5zd2VyLCBpc19jb3JyZWN0IEZST00gIi4KICAgICAgICAJCQljbXNfZGJfcHJlZml4KCkuCiAgICAgICAgCQkJIm1vZHVsZV9xel9hbnN3ZXJzIFdIRVJFIHF1ZXN0aW9uX2lkPT8gYW5kIHF1aXpfaWQ9PyAiLgogICAgICAgIAkJCSJvcmRlciBieSBhbnN3ZXJfaWQiOwogICAgICAgIAkJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSwKICAgICAgICAJCQlhcnJheSgkZW50cnlhcnJheVskaV0tPmlkLCRwYXJhbXNbJ3F1aXpfaWQnXSkpOwoKCQkJCSRhY291bnQgPSAwOwogICAgICAgIAkJd2hpbGUgKCRkYnJlc3VsdCAhPT0gZmFsc2UgJiYgJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKSkKICAgICAgICAJCQl7CgkJCQkJJGVudHJ5YXJyYXlbJGldLT5yYXdhbnN3ZXJzWyRyb3dbJ2Fuc3dlcl9pZCddXSA9ICRyb3dbJ2Fuc3dlciddOwoJCQkJCWlmICghZW1wdHkoJHJvd1snaXNfY29ycmVjdCddKSkKCQkJCQkJewoJCQkJCQkkZW50cnlhcnJheVskaV0tPmNvcnJlY3RhbnN3ZXJzWzBdID0gJHJvd1snYW5zd2VyX2lkJ107CgkJCQkJCX0KCQkJCQl9CgkJCQl9CgkJCWVsc2UgaWYgKCRlbnRyeWFycmF5WyRpXS0+dHlwZSA9PSAnZicpCgkJCQl7CgkJCQkvLyBmaWxsIGluIHRoZSBibGFuawogICAgICAgIAkJJHF1ZXJ5ID0gIlNFTEVDVCBhbnN3ZXJfaWQsIGFuc3dlciBGUk9NICIuCiAgICAgICAgCQkJY21zX2RiX3ByZWZpeCgpLgogICAgICAgIAkJCSJtb2R1bGVfcXpfYW5zd2VycyBXSEVSRSBxdWVzdGlvbl9pZD0/IGFuZCBxdWl6X2lkPT8gIi4KICAgICAgICAJCQkib3JkZXIgYnkgYW5zd2VyX2lkIjsKICAgICAgICAJCSRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkoJGVudHJ5YXJyYXlbJGldLT5pZCwKICAgICAgICAJCQkJJHBhcmFtc1sncXVpel9pZCddKSk7CiAgICAgICAgCQkkY29yaW5kID0gMDsKCQkJCXdoaWxlICgkZGJyZXN1bHQgIT09IGZhbHNlICYmICRyb3cgPSAkZGJyZXN1bHQtPkZldGNoUm93KCkpCiAgICAgICAgCQkJewogICAgICAgIAkJCSRlbnRyeWFycmF5WyRpXS0+Y29ycmVjdGFuc3dlcnNbJGNvcmluZF0gPSAkcm93WydhbnN3ZXInXTsKICAgICAgICAJCQkkZW50cnlhcnJheVskaV0tPnJhd2Fuc3dlcnNbJGNvcmluZF0gPSAkcm93WydhbnN3ZXInXTsKICAgICAgICAJCQkkZW50cnlhcnJheVskaV0tPmFuc3dlcmlkc1skY29yaW5kXSA9ICRyb3dbJ2Fuc3dlcl9pZCddOwogICAgICAgIAkJCSRjb3JpbmQrKzsKICAgICAgICAJCQl9CgkJCQl9CgkJCWVsc2UgaWYgKCRlbnRyeWFycmF5WyRpXS0+dHlwZSA9PSAnYycpCgkJCQl7CiAgICAgICAgCQkkcXVlcnkgPSAiU0VMRUNUIGFuc3dlcixhbnN3ZXJfaWQsaXNfY29ycmVjdCBGUk9NICIuCiAgICAgICAgCQkJY21zX2RiX3ByZWZpeCgpLgogICAgICAgIAkJCSJtb2R1bGVfcXpfYW5zd2VycyBXSEVSRSBxdWVzdGlvbl9pZD0/IGFuZCBxdWl6X2lkPT8gIi4KICAgICAgICAJCQkib3JkZXIgYnkgYW5zd2VyX2lkIjsKICAgICAgICAJCSRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkoJGVudHJ5YXJyYXlbJGldLT5pZCwKICAgICAgICAJCQkJJHBhcmFtc1sncXVpel9pZCddKSk7CgkJCQl3aGlsZSAoJGRicmVzdWx0ICE9PSBmYWxzZSAmJiAkcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdygpKQogICAgICAgIAkJCXsKICAgICAgICAJCQkkZW50cnlhcnJheVskaV0tPmNvcnJlY3RhbnN3ZXJzWyRyb3dbJ2Fuc3dlcl9pZCddXSA9ICRyb3dbJ2lzX2NvcnJlY3QnXTsKICAgICAgICAJCQkkZW50cnlhcnJheVskaV0tPnJhd2Fuc3dlcnNbJHJvd1snYW5zd2VyX2lkJ11dID0gJHJvd1snYW5zd2VyJ107CiAgICAgICAgCQkJfQoJCQkJfQoJCQl9CgkJCQkJCgkJJHJldHVybk9iaiA9IG5ldyBzdGRDbGFzcygpOwoJCSRyZXR1cm5PYmotPnF1ZXN0aW9ucyA9ICRlbnRyeWFycmF5OwoJCSRyZXR1cm5PYmotPnBhZ2VfY291bnQgPSAkcGFnZTsKCQkkcmV0dXJuT2JqLT50aGlzX3BhZ2UgPSAkc3RhcnRQYWdlOwoJCXJldHVybiAkcmV0dXJuT2JqOwoJfQoJCgkKCQoJCgkKCiAgICBmdW5jdGlvbiBtYWtlUXVlc3Rpb25zRm9ybXMoJGlkLCAmJHBhcmFtcywgJHJldHVybmlkLCAkd2l0aEFuc3dlcnM9ZmFsc2UsICYkZW50cnlhcnJheSkKICAgIHsKICAgICAgICBnbG9iYWwgJGdDbXM7CgkJJGRiID0mICRnQ21zLT5HZXREYigpOwoJCSRoYXNUZXh0SW5wdXQgPSBmYWxzZTsKCQkkYW5zd2VyYXJyYXkgPSBhcnJheSgpOwoKCQkkdGFrZXJfaWQgPSAkdGhpcy0+Z2V0VGFrZXJJZCgkcGFyYW1zWydxdWl6X2lkJ10pOwoKICAgICAgICAkcXVlcnkgPSAiU0VMRUNUIGNvdW50KHF1ZXN0aW9uX2lkKSBGUk9NICIuCiAgICAgICAgCWNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3F6X3F1ZXN0aW9ucyBXSEVSRSBxdWl6X2lkPT8iOwogICAgICAgICR0b3RhbF9xdWVzdGlvbnMgPSAkZGItPkdldE9uZSgkcXVlcnksYXJyYXkoJHBhcmFtc1sncXVpel9pZCddKSk7CgoJCSRxdWVyeSA9ICJTRUxFQ1QgcXVlc3Rpb25faWQsIGFuc3dlciwgYW5zd2VyX2lkLCBpc19jb3JyZWN0IGZyb20gIi4KCQkJY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfcXpfcmVzdWx0IHdoZXJlIHF1aXpfaWQ9PyBhbmQgdGFrZXJfaWQ9PyI7CgoJCSRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksIGFycmF5KCRwYXJhbXNbJ3F1aXpfaWQnXSwkdGFrZXJfaWQpKTsKICAgICAgICB3aGlsZSAoJGRicmVzdWx0ICE9PSBmYWxzZSAmJiAkcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdygpKQogICAgICAgIHsKICAgICAgICAJaWYgKCEgaXNzZXQoJGVudHJ5YXJyYXlbJHJvd1sncXVlc3Rpb25faWQnXV0pKQogICAgICAgIAkJewogICAgICAgIAkJLy8gc2tpcCB0aGlzCiAgICAgICAgCQl9CiAgICAgICAgCWVsc2UgaWYgKCRlbnRyeWFycmF5WyRyb3dbJ3F1ZXN0aW9uX2lkJ11dLT50eXBlID09ICdtJykKICAgICAgICAJCXsKICAgICAgICAJCSRhbnN3ZXJhcnJheVskcm93WydxdWVzdGlvbl9pZCddXVswXSA9ICRyb3dbJ2Fuc3dlcl9pZCddOwogICAgICAgIAkJfQogICAgICAgIAllbHNlIGlmICgkZW50cnlhcnJheVskcm93WydxdWVzdGlvbl9pZCddXS0+dHlwZSA9PSAnZicpCiAgICAgICAgCQl7CiAgICAgICAgCQkkYW5zd2VyYXJyYXlbJHJvd1sncXVlc3Rpb25faWQnXV1bXSA9ICR0aGlzLT5odG1sX2VudGl0eV9kZWNvZGVfdXRmOCgkcm93WydhbnN3ZXInXSk7CiAgICAgICAgCQl9CiAgICAgICAgCWVsc2UgaWYgKCRlbnRyeWFycmF5WyRyb3dbJ3F1ZXN0aW9uX2lkJ11dLT50eXBlID09ICdjJykKICAgICAgICAJCXsKICAgICAgICAJCWlmICgkcm93Wydpc19jb3JyZWN0J10gPT0gMSkKICAgICAgICAJCQl7CgkJCQkJJGFuc3dlcmFycmF5WyRyb3dbJ3F1ZXN0aW9uX2lkJ11dWyRyb3dbJ2Fuc3dlcl9pZCddXSA9CgkJCQkJCSRlbnRyeWFycmF5WyRyb3dbJ3F1ZXN0aW9uX2lkJ11dLT5jb3JyZWN0YW5zd2Vyc1skcm93WydhbnN3ZXJfaWQnXV07CgkJCQkJfQoJCQkJZWxzZQoJCQkJCXsKCQkJCQkkYW5zd2VyYXJyYXlbJHJvd1sncXVlc3Rpb25faWQnXV1bJHJvd1snYW5zd2VyX2lkJ11dID0gMSAtCgkJCQkJCSRlbnRyeWFycmF5WyRyb3dbJ3F1ZXN0aW9uX2lkJ11dLT5jb3JyZWN0YW5zd2Vyc1skcm93WydhbnN3ZXJfaWQnXV07CgkJCQkJfQoJCQkJfQogICAgICAgIH0KCgkJZm9yZWFjaChhcnJheV9rZXlzKCRlbnRyeWFycmF5KSBhcyAkaSkKCQkJewoJCQlpZiAoJHdpdGhBbnN3ZXJzKQoJCQkJewoJCQkJJGVudHJ5YXJyYXlbJGldLT50eXBlZmllbGQgPSAnPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iJy4KCQkJCQkkaWQuJ3F6el90XycuJGVudHJ5YXJyYXlbJGldLT5pZC4nIiB2YWx1ZT0iJy4KCQkJCQkkZW50cnlhcnJheVskaV0tPnR5cGUuJyIgLz4nOwoJCQkJfQoJCQlpZiAoJGVudHJ5YXJyYXlbJGldLT50eXBlID09ICdtJykKCQkJCXsKCQkJCS8vIG11bHRpcGxlLWNob2ljZQoJCQkJJGFjb3VudCA9IDA7CgkJCQkkZW50cnlhcnJheVskaV0tPmFuc3dlcnMgPSBhcnJheSgpOwogICAgICAgIAkJZm9yZWFjaCAoJGVudHJ5YXJyYXlbJGldLT5yYXdhbnN3ZXJzIGFzICRyYXdLZXk9PiRyYXdWYWwpCiAgICAgICAgCQkJewoJCQkJCSRlbnRyeWFycmF5WyRpXS0+YW5zd2Vyc1skYWNvdW50XSA9IAoJCQkJCQknPGlucHV0IHR5cGU9InJhZGlvIiBuYW1lPSInLiRpZC4ncXp6X3FfJy4KCQkJCQkJJGVudHJ5YXJyYXlbJGldLT5pZC4KCQkJCQkJJyIgaWQ9ImFfJy4kcmF3S2V5LgoJCQkJCQknIiB2YWx1ZT0iJy4kcmF3S2V5LgoJCQkJCQknIic7CgkJCQkJaWYgKChpc3NldCgkYW5zd2VyYXJyYXlbJGVudHJ5YXJyYXlbJGldLT5pZF1bMF0pICYmCgkJCQkJCSRhbnN3ZXJhcnJheVskZW50cnlhcnJheVskaV0tPmlkXVswXSA9PSAkcmF3S2V5KSB8fAoJCQkJCQkoJHdpdGhBbnN3ZXJzICYmCgkJCQkJCWlzc2V0KCRlbnRyeWFycmF5WyRpXS0+Y29ycmVjdGFuc3dlcnNbMF0pICYmCgkJCQkJCSRlbnRyeWFycmF5WyRpXS0+Y29ycmVjdGFuc3dlcnNbMF0gPT0gJHJhd0tleSkpCgkJCQkJCXsKCQkJCQkJJGVudHJ5YXJyYXlbJGldLT5hbnN3ZXJzWyRhY291bnRdIC49ICcgY2hlY2tlZD0iY2hlY2tlZCInOwoJCQkJCQl9CgkJCQkJJGVudHJ5YXJyYXlbJGldLT5hbnN3ZXJzWyRhY291bnRdIC49CgkJCQkJCScgLz48bGFiZWwgZm9yPSJhXycuCgkJCQkJCSRyYXdLZXkuJyI+Jy4KCQkJCQkJJHJhd1ZhbC4KCQkJCQkJJzwvbGFiZWw+JzsKCQkJCQkkYWNvdW50Kys7CgkJCQkJfQoJCQkJfQoJCQllbHNlIGlmICgkZW50cnlhcnJheVskaV0tPnR5cGUgPT0gJ2YnKQoJCQkJewoJCQkJLy8gZmlsbC1pbi10aGUtYmxhbmsKCQkJCSRoYXNUZXh0SW5wdXQgPSB0cnVlOwoKCQkJCSR2YWx1ZXMgPSBhcnJheSgpOwoJCQkJZm9yICgkaj0wOyRqPGNvdW50KCRlbnRyeWFycmF5WyRpXS0+Y29ycmVjdGFuc3dlcnMpOyRqKyspCgkJCQkJewoJCQkJCSRsZW4gPSAxNTsKCQkJCQlpZiAoJHRoaXMtPkdldFByZWZlcmVuY2UoJ2ZpbGxpbl9sZW4nLCcwJykgPT0gJzEnKQoJCQkJCQl7CgkJCQkJCSRsZW4gPSBzdHJsZW4oJGVudHJ5YXJyYXlbJGldLT5jb3JyZWN0YW5zd2Vyc1skal0pICsKCQkJCQkJCXJhbmQoMCwzKTsKCQkJCQkJfQoJCQkJCWlmICgkd2l0aEFuc3dlcnMpCgkJCQkJCXsKCQkJCQkJJGxlbiA9CgkJCQkJCQlzdHJsZW4oJGVudHJ5YXJyYXlbJGldLT5jb3JyZWN0YW5zd2Vyc1skal0pOwoJCQkJCQlpZiAoJGxlbiA8IDEpCgkJCQkJCQl7CgkJCQkJCQkkbGVuID0gMTA7CgkJCQkJCQl9CgkJCQkJCX0KCQkJCQlpZiAoaXNzZXQoJGFuc3dlcmFycmF5WyRlbnRyeWFycmF5WyRpXS0+aWRdWyRqXSkpCgkJCQkJCXsKCQkJCQkJJHZhbCA9ICRhbnN3ZXJhcnJheVskZW50cnlhcnJheVskaV0tPmlkXVskal07CgkJCQkJCX0KCQkJCQllbHNlCgkJCQkJCXsKCQkJCQkJJHZhbCA9ICcnOwoJCQkJCQl9CgkJCQkJaWYgKCR3aXRoQW5zd2VycykKCQkJCQkJewoJCQkJCQkkdmFsID0gJGVudHJ5YXJyYXlbJGldLT5jb3JyZWN0YW5zd2Vyc1skal07CgkJCQkJCX0KCQkJCQlpZiAoJHdpdGhBbnN3ZXJzKQoJCQkJCQl7CgkJCQkJCSR2YWx1ZXNbJGpdID0gJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsJ3F6el9xXycuCgkJCQkJCQkkZW50cnlhcnJheVskaV0tPmlkLidfJy4KCQkJCQkJCSRlbnRyeWFycmF5WyRpXS0+YW5zd2VyaWRzWyRqXSwkdmFsLCRsZW4sIDI1NSk7CgkJCQkJCX0KCQkJCQllbHNlCgkJCQkJCXsKCQkJCQkJJHZhbHVlc1skal0gPSAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwgJ3F6el9xXycuCgkJCQkJCQkkZW50cnlhcnJheVskaV0tPmlkLidbXScsJHZhbCwkbGVuLCAyNTUpOwoJCQkJCQl9CgkJCQkJfQoJCQkJJGVudHJ5YXJyYXlbJGldLT5xdWVzdGlvbiA9ICR0aGlzLT5yZXBsYWNlQmxhbmtzV2l0aFZhbHVlcygkZW50cnlhcnJheVskaV0tPnF1ZXN0aW9uLCAkdmFsdWVzKTsKCQkJCX0KCQkJZWxzZSBpZiAoJGVudHJ5YXJyYXlbJGldLT50eXBlID09ICdjJykKCQkJCXsKCQkJCSRhY291bnQgPSAwOwoJCQkJJGVudHJ5YXJyYXlbJGldLT5hbnN3ZXJzID0gYXJyYXkoKTsKICAgICAgICAJCWZvcmVhY2ggKCRlbnRyeWFycmF5WyRpXS0+cmF3YW5zd2VycyBhcyAkcmF3S2V5PT4kcmF3VmFsKQogICAgICAgIAkJCXsKCQkJCQkkZW50cnlhcnJheVskaV0tPmFuc3dlcnNbJGFjb3VudF0gPQoJCQkJCQknPGlucHV0IHR5cGU9ImNoZWNrYm94IiBuYW1lPSInLiRpZC4ncXp6X3FfJy4KCQkJCQkJJGVudHJ5YXJyYXlbJGldLT5pZC4KCQkJCQkJJ1tdIiBpZD0iYV8nLiRyYXdLZXkuCgkJCQkJCSciIHZhbHVlPSInLiRyYXdLZXkuJyInOwoJCQkJCWlmICgoaXNzZXQoJGFuc3dlcmFycmF5WyRlbnRyeWFycmF5WyRpXS0+aWRdWyRyYXdLZXldKSAmJgoJCQkJCQkkYW5zd2VyYXJyYXlbJGVudHJ5YXJyYXlbJGldLT5pZF1bJHJhd0tleV0gPT0gMSkgfHwKCQkJCQkJKCR3aXRoQW5zd2VycyAmJiAkZW50cnlhcnJheVskaV0tPmNvcnJlY3RhbnN3ZXJzWyRyYXdLZXldID09IDEpKQoJCQkJCQl7CgkJCQkJCSRlbnRyeWFycmF5WyRpXS0+YW5zd2Vyc1skYWNvdW50XSAuPSAnIGNoZWNrZWQ9ImNoZWNrZWQiJzsKCQkJCQkJfQoJCQkJCSRlbnRyeWFycmF5WyRpXS0+YW5zd2Vyc1skYWNvdW50XSAuPQoJCQkJCQknIC8+PGxhYmVsIGZvcj0iYV8nLgoJCQkJCQkkcmF3S2V5LiciPicuCgkJCQkJCSRyYXdWYWwuCgkJCQkJCSc8L2xhYmVsPic7CgkJCQkJJGFjb3VudCsrOwoJCQkJCX0KCQkJCX0JCQkJCgkJCX0KCglyZXR1cm4gJGhhc1RleHRJbnB1dDsKICAgIH0KCglmdW5jdGlvbiAmZ2V0RW50aXJlUXVpeigkaWQsICYkcGFyYW1zLCAkcmV0dXJuaWQpCgl7CgkJLy9yZXR1cm4gJHRoaXMtPmdldFF1ZXN0aW9uc0ZvclBhZ2UoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsIHRydWUpOwoJCXJldHVybiAkdGhpcy0+Z2V0UXVlc3Rpb25zSW5SYW5nZSgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwgdHJ1ZSk7Cgl9CiAgICAgICAgCiAgICAgICAgCglmdW5jdGlvbiB0ZXN0Zm9yY29ycmVjdCgkdmFyKQoJewoJCXJldHVybiAoISR2YXItPmNvcnJlY3QgJiYgKCR2YXItPnR5cGUgPT0gJ2YnIHx8ICR2YXItPnR5cGUgPT0gJ20nIHx8ICR2YXItPnR5cGUgPT0gJ2MnKSk7Cgl9CiAgICAgICAgCglmdW5jdGlvbiBTdXBwcmVzc0FkbWluT3V0cHV0KCYkcmVxdWVzdCkKICAgewogICAgICBpZiAoc3RycG9zKCRfU0VSVkVSWydRVUVSWV9TVFJJTkcnXSwnZXhwb3J0cXVpeicpICE9PSBmYWxzZSkKICAgICAgICAgewogICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgfQogICAgICByZXR1cm4gZmFsc2U7CiAgIH0KCgoJZnVuY3Rpb24gJmdldEV4dHJhcygpCgl7CgkJZ2xvYmFsICRnQ21zOwoJCSRkYiA9JiAkZ0Ntcy0+R2V0RGIoKTsKCgkJJGV4dHJhcyA9IGFycmF5KCk7CgkJJHF1ZXJ5ID0gJ3NlbGVjdCAqIGZyb20gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9xel9leHRyYV9maWVsZHMgb3JkZXIgYnkgZmllbGRfd2VpZ2h0JzsKCSAgICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5KTsKCQl3aGlsZSAoJGRicmVzdWx0ICE9PSBmYWxzZSAmJiAkcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdygpKQoJICAgICAgICB7CgkJCWFycmF5X3B1c2goJGV4dHJhcywkcm93KTsKCQkJfQoJCXJldHVybiAkZXh0cmFzOwoJfQoJCgkKCWZ1bmN0aW9uICZnZXRQb3B1bGF0ZWRFeHRyYUZpZWxkcygkaWQsICYkcGFyYW1zLCAkdGFrZXJpZCA9IC0xLCAkbWFrZUlucHV0cyA9IGZhbHNlKQoJewoJCWdsb2JhbCAkZ0NtczsKCQkkZGIgPSYgJGdDbXMtPkdldERiKCk7CgoJCSRleHRyYXMgPSAkdGhpcy0+Z2V0RXh0cmFzKCk7CgkJJHF1ZXJ5ID0gJ3NlbGVjdCAqIGZyb20gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9xel9leHRyYV92YWxzIHdoZXJlIHRha2VyX2lkPT8gYW5kIGZpZWxkX2lkPT8nOwoJCWZvciAoJGk9MDskaTxjb3VudCgkZXh0cmFzKTskaSsrKQoJCQl7CgkJCSRyb3cgPSBhcnJheSgndmFsdWUnPT4nJyk7CgkJCWlmICgkdGFrZXJpZCA+IDApCgkJCQl7CgkJCQkkcmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkdGFrZXJpZCwkZXh0cmFzWyRpXVsnZmllbGRfaWQnXSkpOwoJCQkJaWYgKCRyZXN1bHQpCgkJCQkgCXsKCQkJCQkkcm93PSRyZXN1bHQtPkZldGNoUm93KCk7CgkJCQkJfQoJCQkJZWxzZQoJCQkJCXsKCQkJCQkkcm93ID0gYXJyYXkoJ3ZhbHVlJz0+JycpOwoJCQkJCX0KCQkJCX0KCQkJLy8gcGFyYW1zIChmb3JtLXByb3ZpZGVkIHZhbHVlcykgb3ZlcnJpZGUgc3RvcmVkIHZhbHVlcwoJCQlpZiAoaXNzZXQoJHBhcmFtc1sncXp6X2V4dHJhXycuJGV4dHJhc1skaV1bJ2ZpZWxkX2lkJ11dKSkKCQkJCXsKCQkJCSRyb3cgPSBhcnJheSgndmFsdWUnPT4kcGFyYW1zWydxenpfZXh0cmFfJy4kZXh0cmFzWyRpXVsnZmllbGRfaWQnXV0pOwoJCQkJfQoJCQkkZXh0cmFzWyRpXVsndmFsdWUnXSA9ICRyb3dbJ3ZhbHVlJ107CgkJCWlmIChzdWJzdHIoJGV4dHJhc1skaV1bJ2ZpZWxkX3R5cGUnXSwwLDExKSA9PSAnZXh0cmFfY2hlY2snKQoJCQkJewoJCQkJJGV4dHJhc1skaV1bJ2h1bWFuX3ZhbHVlJ10gPSAoJHJvd1sndmFsdWUnXSA9PSAnMSc/J1RydWUnOidGYWxzZScpOwkKCQkJCX0KCQkJZWxzZQoJCQkJewoJCQkJJGV4dHJhc1skaV1bJ2h1bWFuX3ZhbHVlJ10gPSAkcm93Wyd2YWx1ZSddOwkKCQkJCX0KCQkJaWYgKHN1YnN0cigkZXh0cmFzWyRpXVsnZmllbGRfdHlwZSddLC0yLDIpID09ICdfcicpCgkJCQl7CgkJCQkkZXh0cmFzWyRpXVsncmVxdWlyZWQnXSA9IHRydWU7CgkJCQl9CgkJCWVsc2UKCQkJCXsKCQkJCSRleHRyYXNbJGldWydyZXF1aXJlZCddID0gZmFsc2U7CgkJCQl9CgkJCWlmICgkbWFrZUlucHV0cykKCQkJCXsKCQkJCSRleHRyYXNbJGldWydpbnB1dCddID0gJHRoaXMtPm1ha2VFeHRyYUlucHV0KCRpZCwkZXh0cmFzWyRpXSwgJHJvd1sndmFsdWUnXSk7CgkJCQkkZXh0cmFzWyRpXVsnbGFiZWwnXSA9ICc8bGFiZWwgZm9yPSInLiRleHRyYXNbJGldWydmaWVsZF9pZCddLiciPicuaHRtbGVudGl0aWVzKCRleHRyYXNbJGldWydmaWVsZF9uYW1lJ10sRU5UX1FVT1RFUykuJzwvbGFiZWw+JzsKCQkJCX0KCQkJfQoJCXJldHVybiAkZXh0cmFzOwoJfQoJCglmdW5jdGlvbiBtYWtlRXh0cmFJbnB1dCgkaWQsJGV4dHJhLCR2YWwpCgl7CgkJaWYgKCRleHRyYVsnZmllbGRfdHlwZSddICE9ICdleHRyYV9jaGVjaycgJiYgJGV4dHJhWydmaWVsZF90eXBlJ10gIT0gJ2V4dHJhX2NoZWNrX3InKQoJCQl7CgkJCXJldHVybiAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwgJ3F6el9leHRyYV8nLiRleHRyYVsnZmllbGRfaWQnXSwgJHZhbCwgJGV4dHJhWydmaWVsZF9kaXNwbGF5X2xlbiddLCAkZXh0cmFbJ2ZpZWxkX21heF9sZW4nXSwKCQkJIAknaWQ9ImV4dHJhXycuJGV4dHJhWydmaWVsZF9pZCddLiciJyk7CgkJCX0KCQlyZXR1cm4gJHRoaXMtPkNyZWF0ZUlucHV0Q2hlY2tib3goJGlkLCAncXp6X2V4dHJhXycuJGV4dHJhWydmaWVsZF9pZCddLCAxLAoJCQkJKChpc3NldCgkdmFsKSYmJHZhbCA9PSAnMScpPycxJzonMCcpLAoJCQkJIAknaWQ9ImV4dHJhXycuJGV4dHJhWydmaWVsZF9pZCddLiciJyk7Cgl9CgkKCWZ1bmN0aW9uIHZhbGlkYXRlRXh0cmEoJiRleHRyYSwmJHBhcmFtcykKCQl7CgkJaWYgKCFpc3NldCgkcGFyYW1zWydxenpfZXh0cmFfJy4kZXh0cmFbJ2ZpZWxkX2lkJ11dKSB8fCBlbXB0eSgkcGFyYW1zWydxenpfZXh0cmFfJy4kZXh0cmFbJ2ZpZWxkX2lkJ11dKSkKCQkJewoJCQlpZiAoJGV4dHJhWydmaWVsZF90eXBlJ10gPT0gJ2V4dHJhX2NoZWNrX3InKQoJCQkJewoJCQkJcmV0dXJuIGFycmF5KGZhbHNlLCR0aGlzLT5MYW5nKCd2YWxpZF9yZXF1aXJlZF9jaGVjaycsJGV4dHJhWydmaWVsZF9uYW1lJ10pKTsKCQkJCX0KCQkJZWxzZQoJCQkJewoJCQkJcmV0dXJuIGFycmF5KGZhbHNlLCR0aGlzLT5MYW5nKCd2YWxpZF9yZXF1aXJlZF9maWVsZCcsJGV4dHJhWydmaWVsZF9uYW1lJ10pKTsKCQkJCX0KCQkJfQoJCWlmICgkZXh0cmFbJ2ZpZWxkX3R5cGUnXSA9PSAnZXh0cmFfbnVtYmVyX3InICYmICEgaXNfbnVtZXJpYygkcGFyYW1zWydxenpfZXh0cmFfJy4kZXh0cmFbJ2ZpZWxkX2lkJ11dKSkKCQkJewoJCQlyZXR1cm4gYXJyYXkoZmFsc2UsJHRoaXMtPkxhbmcoJ3ZhbGlkX3JlcXVpcmVkX251bWJlcicsJGV4dHJhWydmaWVsZF9uYW1lJ10pKTsKCQkJfQoJCWlmICgkZXh0cmFbJ2ZpZWxkX3R5cGUnXSA9PSAnZXh0cmFfcGhvbmVfcicgJiYgISBwcmVnX21hdGNoKCcvXihcZFtcc1wuLV0/KT9cKD9cZHszfVwpP1tcc1wuLV0/XGR7M31bXHNcLi1dP1xkezR9JC8nLAoJCQkkcGFyYW1zWydxenpfZXh0cmFfJy4kZXh0cmFbJ2ZpZWxkX2lkJ11dKSkKCQkJewoJCQlyZXR1cm4gYXJyYXkoZmFsc2UsJHRoaXMtPkxhbmcoJ3ZhbGlkX3JlcXVpcmVkX3Bob25lJywgJGV4dHJhWydmaWVsZF9uYW1lJ10pKTsKCQkJfQoJCXJldHVybiBhcnJheSh0cnVlLCcnKTsKCQl9CgkJCglmdW5jdGlvbiBpbXBvcnRRdWl6KCYkaW5fZmlsZSkKCXsKCWdsb2JhbCAkZ0NtczsKCSRkYiA9JiAkZ0Ntcy0+R2V0RGIoKTsKCgkkcXVpel9pZCA9ICRkYi0+R2VuSUQoY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfcXpfcXVpenplc19zZXEnKTsKCgkkcXVpemxpbmUgPSBleHBsb2RlKCJcdCIsJGluX2ZpbGVbMF0pOwoJJHF1ZXJ5ID0gJ0lOU0VSVCBJTlRPICcuIGNtc19kYl9wcmVmaXgoKS4KCQkJCSdtb2R1bGVfcXpfcXVpenplcyAocXVpel9pZCwgbmFtZSwgZGVzY3JpcHRpb24pIFZBTFVFUyAoPyw/LD8pJzsKCgkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KCRxdWl6X2lkLAogICAgICAgICAgICAgICAJJHF1aXpsaW5lWzBdLCRxdWl6bGluZVsxXSkpOwoKCWZvciAoJGk9MTskaTxjb3VudCgkaW5fZmlsZSk7JGkrKykKCQl7CgkJJHF1ZXN0aW9uX2lkID0gJGRiLT5HZW5JRChjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9xel9xdWVzdGlvbnNfc2VxJyk7CgkJJHRoaXNxID0gZXhwbG9kZSgiXHQiLCRpbl9maWxlWyRpXSk7CgkJJHF1ZXJ5ID0gJ0lOU0VSVCBJTlRPICcuIGNtc19kYl9wcmVmaXgoKS4KCQkJCQknbW9kdWxlX3F6X3F1ZXN0aW9ucyAocXVlc3Rpb25faWQsIHF1aXpfaWQsICBxdWVzdGlvbl90eXBlLG9yZGVyX2J5LGlzX3Njb3JlZCxxdWVzdGlvbikgVkFMVUVTICg/LD8sPyw/LDEsPyknOwoKCQlpZiAoaXNfbnVtZXJpYygkdGhpc3FbMF0pKQoJCQl7CgkJCSRudW0gPSBhcnJheV9zaGlmdCgkdGhpc3EpOwoJCQl9CgkJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkcXVlc3Rpb25faWQsCgkJCQkJJHF1aXpfaWQsCgkJCQkJYXJyYXlfc2hpZnQoJHRoaXNxKSwKCQkJCQkkaSwKCQkJCQlhcnJheV9zaGlmdCgkdGhpc3EpKSk7CgkJJGogPSAwOwoJCXdoaWxlIChpc3NldCgkdGhpc3FbJGpdKSAmJiAhc3RybGVuKCR0aGlzcVskal0pID09IDApCgkJCXsKCQkJJGFuc3dlcl9pZCA9ICRkYi0+R2VuSUQoY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfcXpfYW5zd2Vyc19zZXEnKTsKCgkJCSRxdWVyeSA9ICdJTlNFUlQgSU5UTyAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3F6X2Fuc3dlcnMgKGFuc3dlcl9pZCwgcXVlc3Rpb25faWQsIHF1aXpfaWQsIGlzX2NvcnJlY3QsIGFuc3dlcikgVkFMVUVTICg/LD8sPyw/LD8pJzsKCQkJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkYW5zd2VyX2lkLAoJCQkJJHF1ZXN0aW9uX2lkLAoJCQkJJHF1aXpfaWQsCgkJCQkkdGhpc3FbJGpdLAoJCQkJaXNzZXQoJHRoaXNxWyRqKzFdKT8kdGhpc3FbJGorMV06JycpKTsKCQkJJGogKz0gMjsKCQkJfQoJCX0KCX0KCiAgZnVuY3Rpb24gaW1wb3J0UXVpelhNTCgkaWQsJiRwYXJhbXMpCiAgewoJZ2xvYmFsICRnQ21zOwoJJGRiID0mICRnQ21zLT5HZXREYigpOwoKICAJLy8geG1sX3BhcnNlcl9jcmVhdGUsIHhtbF9wYXJzZV9pbnRvX3N0cnVjdAogIAkkcGFyc2VyID0geG1sX3BhcnNlcl9jcmVhdGUoJycpOwogICB4bWxfcGFyc2VyX3NldF9vcHRpb24oICRwYXJzZXIsIFhNTF9PUFRJT05fQ0FTRV9GT0xESU5HLCAwICk7CiAgIHhtbF9wYXJzZXJfc2V0X29wdGlvbiggJHBhcnNlciwgWE1MX09QVElPTl9TS0lQX1dISVRFLCAwICk7IC8vIHdhcyAxCgl4bWxfcGFyc2VfaW50b19zdHJ1Y3QoJHBhcnNlciwKCQlmaWxlX2dldF9jb250ZW50cygkX0ZJTEVTWyRpZC4ndGV4dGZpbGUnXVsndG1wX25hbWUnXSksCgkJJHZhbHMpOwoJeG1sX3BhcnNlcl9mcmVlKCRwYXJzZXIpOwoJJGVsZW1lbnRzID0gYXJyYXkoKTsKCSRzdGFjayA9IGFycmF5KCk7Cglmb3JlYWNoICggJHZhbHMgYXMgJHRhZyApCgkJewoJCSRpbmRleCA9IGNvdW50KCAkZWxlbWVudHMgKTsKCQlpZiAoICR0YWdbJ3R5cGUnXSA9PSAiY29tcGxldGUiIHx8ICR0YWdbJ3R5cGUnXSA9PSAib3BlbiIgKQoJCQl7CgkJCSRlbGVtZW50c1skaW5kZXhdID0gYXJyYXkoKTsKCQkJJGVsZW1lbnRzWyRpbmRleF1bJ25hbWUnXSA9ICR0YWdbJ3RhZyddOwoJCQkkZWxlbWVudHNbJGluZGV4XVsnYXR0cmlidXRlcyddID0gZW1wdHkoJHRhZ1snYXR0cmlidXRlcyddKSA/ICIiIDogJHRhZ1snYXR0cmlidXRlcyddOwoJCQkkZWxlbWVudHNbJGluZGV4XVsnY29udGVudCddICAgID0gZW1wdHkoJHRhZ1sndmFsdWUnXSkgPyAiIiA6ICR0YWdbJ3ZhbHVlJ107CgkJCWlmICggJHRhZ1sndHlwZSddID09ICJvcGVuIiApCgkJCQl7ICAgICMgcHVzaAoJCQkJJGVsZW1lbnRzWyRpbmRleF1bJ2NoaWxkcmVuJ10gPSBhcnJheSgpOwoJCQkJJHN0YWNrW2NvdW50KCRzdGFjayldID0gJiRlbGVtZW50czsKCQkJCSRlbGVtZW50cyA9ICYkZWxlbWVudHNbJGluZGV4XVsnY2hpbGRyZW4nXTsKCQkJCX0KICAgICAgICB9CgkJaWYgKCAkdGFnWyd0eXBlJ10gPT0gImNsb3NlIiApCgkJCXsgICAgIyBwb3AKCQkJJGVsZW1lbnRzID0gJiRzdGFja1tjb3VudCgkc3RhY2spIC0gMV07CgkJCXVuc2V0KCRzdGFja1tjb3VudCgkc3RhY2spIC0gMV0pOwoJCQl9CgkJfQoJaWYgKCFpc3NldCgkZWxlbWVudHNbMF0pIHx8ICFpc3NldCgkZWxlbWVudHNbMF0pIHx8ICFpc3NldCgkZWxlbWVudHNbMF0pKQoJCXsKCQkvL3BhcnNpbmcgZmFpbGVkLCBvciBpbnZhbGlkIGZpbGUuCgkJcmV0dXJuIGZhbHNlOwoJCX0KCSRuYW1lID0gIiI7CgkkZGVzYyA9ICIiOwoJJHF1aXogPSAkZWxlbWVudHNbMF1bJ2NoaWxkcmVuJ107Cglmb3IgKCRpPTA7JGk8Y291bnQoJHF1aXopOyRpKyspCgkJewoJCWlmICgkcXVpelskaV1bJ25hbWUnXSA9PSAnbmFtZScpCgkJCXsKCQkJJG5hbWUgPSAkcXVpelskaV1bJ2NvbnRlbnQnXTsKCQkJfQoJCWlmICgkcXVpelskaV1bJ25hbWUnXSA9PSAnZGVzY3JpcHRpb24nKQoJCQl7CgkJCSRkZXNjID0gJHF1aXpbJGldWydjb250ZW50J107CgkJCX0KCQlpZiAoJHF1aXpbJGldWyduYW1lJ10gPT0gJ3F1ZXN0aW9ucycpCgkJCXsJCgkJCSRxdWVzdGlvbnMgPSAkcXVpelskaV1bJ2NoaWxkcmVuJ107CgkJCX0KCQl9CgkKCSRxdWl6X2lkID0gJGRiLT5HZW5JRChjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9xel9xdWl6emVzX3NlcScpOwoKCSRxdWVyeSA9ICdJTlNFUlQgSU5UTyAnLiBjbXNfZGJfcHJlZml4KCkuCgkJCQknbW9kdWxlX3F6X3F1aXp6ZXMgKHF1aXpfaWQsIG5hbWUsIGRlc2NyaXB0aW9uKSBWQUxVRVMgKD8sPyw/KSc7CgoJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkcXVpel9pZCwKICAgICAgICAgICAgICAgCSRuYW1lLCRkZXNjKSk7CgkkcXF1ZXJ5ID0gJ0lOU0VSVCBJTlRPICcuIGNtc19kYl9wcmVmaXgoKS4KCQkJCQknbW9kdWxlX3F6X3F1ZXN0aW9ucyAocXVlc3Rpb25faWQsIHF1aXpfaWQsICBxdWVzdGlvbl90eXBlLG9yZGVyX2J5LGlzX3Njb3JlZCxxdWVzdGlvbikgVkFMVUVTICg/LD8sPyw/LD8sPyknOwoJJGFxdWVyeSA9ICdJTlNFUlQgSU5UTyAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3F6X2Fuc3dlcnMgKGFuc3dlcl9pZCwgcXVlc3Rpb25faWQsIHF1aXpfaWQsIGlzX2NvcnJlY3QsIGFuc3dlcikgVkFMVUVTICg/LD8sPyw/LD8pJzsKCgkkY291bnQgPSAwOwoKCWZvcmVhY2ggKCRxdWVzdGlvbnMgYXMgJHRoaXNDaGlsZCkKCQl7CgkJJGF0dHJzID0gJHRoaXNDaGlsZFsnYXR0cmlidXRlcyddOwoJCSRxdWVzdGlvbl9pZCA9ICRkYi0+R2VuSUQoY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfcXpfcXVlc3Rpb25zX3NlcScpOwoJCWlmICgkYXR0cnNbJ3R5cGUnXSA9PSAncycgfHwgJGF0dHJzWyd0eXBlJ10gPT0gJ3QnIHx8CgkJCSRhdHRyc1sndHlwZSddID09ICdiJykKCQkJewoJCQkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHFxdWVyeSwKCQkJCWFycmF5KCRxdWVzdGlvbl9pZCwKICAgICAgICAgICAgICAgCQkkcXVpel9pZCwKICAgICAgICAgICAgICAgCQkkYXR0cnNbJ3R5cGUnXSwKICAgICAgICAgICAgICAgCQkkY291bnQsCiAgICAgICAgICAgICAgIAkJMCwKICAgICAgICAgICAgICAgCQkkdGhpc0NoaWxkWydjaGlsZHJlbiddWzBdWydjb250ZW50J10pKTsKCQkJfQoJCWVsc2UgaWYgKCRhdHRyc1sndHlwZSddID09ICdtJyB8fCAkYXR0cnNbJ3R5cGUnXSA9PSAnYycpCgkJCXsKCQkJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxcXVlcnksCgkJCQlhcnJheSgkcXVlc3Rpb25faWQsCiAgICAgICAgICAgICAgIAkJJHF1aXpfaWQsCiAgICAgICAgICAgICAgIAkJJGF0dHJzWyd0eXBlJ10sCiAgICAgICAgICAgICAgIAkJJGNvdW50LAogICAgICAgICAgICAgICAJCSRhdHRyc1snaXNfc2NvcmVkJ10sCiAgICAgICAgICAgICAgIAkJJHRoaXNDaGlsZFsnY2hpbGRyZW4nXVswXVsnY29udGVudCddKSk7CgkJCQoJCQkkYWNvdW50ID0gMDsKCQkJZm9yZWFjaCAoJHRoaXNDaGlsZFsnY2hpbGRyZW4nXVsxXVsnY2hpbGRyZW4nXSBhcyAkdGhpc0Fuc3dlcikKCQkJCXsKCQkJCSRhbnN3ZXJfaWQgPSAkZGItPkdlbklEKGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3F6X2Fuc3dlcnNfc2VxJyk7CgkJCQoJCQkJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRhcXVlcnksCgkJCQlhcnJheSgkYW5zd2VyX2lkLAoJCQkJCSRxdWVzdGlvbl9pZCwKICAgICAgICAgICAgICAgCQkkcXVpel9pZCwKICAgICAgICAgICAgICAgCQkkdGhpc0Fuc3dlclsnYXR0cmlidXRlcyddWydpc19jb3JyZWN0J10sCiAgICAgICAgICAgICAgIAkJJHRoaXNBbnN3ZXJbJ2NvbnRlbnQnXSkpOwoKCQkJCX0KCQkJfQoJCWVsc2UgaWYgKCRhdHRyc1sndHlwZSddID09ICdmJykKCQkJewoJCQkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHFxdWVyeSwKCQkJCWFycmF5KCRxdWVzdGlvbl9pZCwKICAgICAgICAgICAgICAgCQkkcXVpel9pZCwKICAgICAgICAgICAgICAgCQkkYXR0cnNbJ3R5cGUnXSwKICAgICAgICAgICAgICAgCQkkY291bnQsCiAgICAgICAgICAgICAgIAkJJGF0dHJzWydpc19zY29yZWQnXSwKICAgICAgICAgICAgICAgCQkkdGhpc0NoaWxkWydjaGlsZHJlbiddWzBdWydjb250ZW50J10pKTsKCQkJCgkJCSRhY291bnQgPSAwOwoJCQlmb3JlYWNoICgkdGhpc0NoaWxkWydjaGlsZHJlbiddWzFdWydjaGlsZHJlbiddIGFzICR0aGlzQW5zd2VyKQoJCQkJewoJCQkJJGFuc3dlcl9pZCA9ICRkYi0+R2VuSUQoY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfcXpfYW5zd2Vyc19zZXEnKTsKCQkJCgkJCQkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJGFxdWVyeSwKCQkJCWFycmF5KCRhbnN3ZXJfaWQsCgkJCQkJJHF1ZXN0aW9uX2lkLAogICAgICAgICAgICAgICAJCSRxdWl6X2lkLAogICAgICAgICAgICAgICAJCTEsCiAgICAgICAgICAgICAgIAkJJHRoaXNBbnN3ZXJbJ2NvbnRlbnQnXSkpOwoKCQkJCX0KCQkJfQoJCSRjb3VudCsrOwoJCX0KCXJldHVybiB0cnVlOwkKICB9CgogIGZ1bmN0aW9uIGluWE1MKCYkdmFyKQogIHsKICAJCWlmIChpc3NldCgkdmFyKSAmJiBzdHJsZW4oJHZhcikgPiAwKQogIAkJCXsKCQkJcmV0dXJuIHRydWU7CgkJCX0KCQllbHNlCgkJCXsKCQkJcmV0dXJuIGZhbHNlOwoJCQl9CiAgfQoKCQoJZnVuY3Rpb24gcmVwbGFjZUJsYW5rc1dpdGhWYWx1ZXMoJHN0cmluZywgJHZhbHVlcywgJGxkZWxpbT0iIiwKCQkkcmRlbGltPSIiLCAkbmVyZl92YWx1ZXM9ZmFsc2UpCgl7CgkJJGFuc19pbmRleCA9IDA7CgkJJG9mZnNldCA9IDA7CgkJd2hpbGUgKHN0cnBvcygkc3RyaW5nLCJfIiwkb2Zmc2V0KSAhPT0gZmFsc2UpCgkJCXsKCQkJJHVzID0gc3RycG9zKCRzdHJpbmcsIl8iLCRvZmZzZXQpOwoJCQlpZiAoJG5lcmZfdmFsdWVzKQoJCQkJewoJCQkJJHN0cmluZyA9IHN1YnN0cigkc3RyaW5nLDAsJHVzKSAuICRsZGVsaW0gLgoJCQkJCWh0bWxlbnRpdGllcygkdmFsdWVzWyRhbnNfaW5kZXhdKSAuICRyZGVsaW0gLgoJCQkJCXN1YnN0cigkc3RyaW5nLCR1cysxKTsKCQkJCQoJCQkJJG9mZnNldCA9ICR1cyArCgkJCQkJc3RybGVuKGh0bWxlbnRpdGllcygkdmFsdWVzWyRhbnNfaW5kZXhdKSkgKwoJCQkJCXN0cmxlbigkbGRlbGltKSArCgkJCQkJc3RybGVuKCRyZGVsaW0pOwoJCQkJfQoJCQllbHNlCgkJCQl7CgkJCQkkc3RyaW5nID0gc3Vic3RyKCRzdHJpbmcsMCwkdXMpIC4gJGxkZWxpbSAuCgkJCQkJKGlzc2V0KCR2YWx1ZXNbJGFuc19pbmRleF0pPyR2YWx1ZXNbJGFuc19pbmRleF06JycpLgoJCQkJCSRyZGVsaW0gLiBzdWJzdHIoJHN0cmluZywkdXMrMSk7CgkJCQkKCQkJCSRvZmZzZXQgPSAkdXMgKwoJCQkJCXN0cmxlbigoaXNzZXQoJHZhbHVlc1skYW5zX2luZGV4XSk/JHZhbHVlc1skYW5zX2luZGV4XTonJykpICsKCQkJCQlzdHJsZW4oJGxkZWxpbSkgKwoJCQkJCXN0cmxlbigkcmRlbGltKTsKCQkJCX0KCQkJJGFuc19pbmRleCsrOwoJCQl9CgkJcmV0dXJuICRzdHJpbmc7Cgl9CgovKgogICBUaGUgZm9sbG93aW5nIHR3byBtZXRob2RzIGNvbWUgc3RyYWlnaHQgZnJvbSB0aGUgdXNlci1zdWJtaXR0ZWQgY29tbWVudHMgYXQKICAgaHR0cDovL3d3dy5waHAubmV0L2h0bWxfZW50aXR5X2RlY29kZQogICB0byByZW1lZHkgdGhlIHByb2JsZW1zIHdpdGggUEhQIDQueCBhbmQgaHRtbF9lbnRpdHlfZGVjb2RlIGFuZCBVVEYtOAogICBpZiB0aGlzIHVzYWdlIGlzIG5vdCBjb21wbGlhbnQgd2l0aCB0aGUgKHVuc3BlY2lmaWVkKSBsaWNlbnNlcyBkZXNpcmVkCiAgIGJ5IHRoZSBjb21tZW50IHN1Ym1pdHRlcnMsIHRoZXNlIHR3byBtZXRob2RzIHNob3VsZCBiZSBjb25zaWRlcmVkIGEgYnVnCiAgIGFuZCByZXBsYWNlZC4KKi8KCmZ1bmN0aW9uIGh0bWxfZW50aXR5X2RlY29kZV91dGY4KCRzdHJpbmcpCnsKICAgIHN0YXRpYyAkdHJhbnNfdGJsOwogICAKICAgIC8vIHJlcGxhY2UgbnVtZXJpYyBlbnRpdGllcwogICAgJHN0cmluZyA9IHByZWdfcmVwbGFjZSgnfiYjeChbMC05YS1mXSspO35laScsICdjb2RlMnV0ZihoZXhkZWMoIlxcMSIpKScsICRzdHJpbmcpOwogICAgJHN0cmluZyA9IHByZWdfcmVwbGFjZSgnfiYjKFswLTldKyk7fmUnLCAnY29kZTJ1dGYoXFwxKScsICRzdHJpbmcpOwoKICAgIC8vIHJlcGxhY2UgbGl0ZXJhbCBlbnRpdGllcwogICAgaWYgKCFpc3NldCgkdHJhbnNfdGJsKSkKICAgIHsKICAgICAgICAkdHJhbnNfdGJsID0gYXJyYXkoKTsKICAgICAgIAogICAgICAgIGZvcmVhY2ggKGdldF9odG1sX3RyYW5zbGF0aW9uX3RhYmxlKEhUTUxfRU5USVRJRVMpIGFzICR2YWw9PiRrZXkpCiAgICAgICAgICAgICR0cmFuc190YmxbJGtleV0gPSB1dGY4X2VuY29kZSgkdmFsKTsKICAgIH0KICAgCiAgICByZXR1cm4gc3RydHIoJHN0cmluZywgJHRyYW5zX3RibCk7Cn0KCi8vIFJldHVybnMgdGhlIHV0ZiBzdHJpbmcgY29ycmVzcG9uZGluZyB0byB0aGUgdW5pY29kZSB2YWx1ZSAoZnJvbSBwaHAubmV0LCBjb3VydGVzeSAtIHJvbWFuc0B2b2lkLmx2KQpmdW5jdGlvbiBjb2RlMnV0ZigkbnVtKQogewogICAgaWYgKCRudW0gPCAxMjgpIHJldHVybiBjaHIoJG51bSk7CiAgICBpZiAoJG51bSA8IDIwNDgpIHJldHVybiBjaHIoKCRudW0gPj4gNikgKyAxOTIpIC4gY2hyKCgkbnVtICYgNjMpICsgMTI4KTsKICAgIGlmICgkbnVtIDwgNjU1MzYpIHJldHVybiBjaHIoKCRudW0gPj4gMTIpICsgMjI0KSAuIGNocigoKCRudW0gPj4gNikgJiA2MykgKyAxMjgpIC4gY2hyKCgkbnVtICYgNjMpICsgMTI4KTsKICAgIGlmICgkbnVtIDwgMjA5NzE1MikgcmV0dXJuIGNocigoJG51bSA+PiAxOCkgKyAyNDApIC4gY2hyKCgoJG51bSA+PiAxMikgJiA2MykgKyAxMjgpIC4gY2hyKCgoJG51bSA+PiA2KSAmIDYzKSArIDEyOCkgLiBjaHIoKCRudW0gJiA2MykgKyAxMjgpOwogICAgcmV0dXJuICcnOwogfQoKCWZ1bmN0aW9uIHNldEZvcm1TbWFydHkoJGlkLCAkcmV0dXJuaWQsICYkcGFyYW1zLCAkcGFnZV9ubywgJHBhZ2VfY291bnQsICYkZW50cnlhcnJheSkKCQl7CgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduX2J5X3JlZigncXVlc3Rpb25zJywgJGVudHJ5YXJyYXkpOwoKCQkkdGFrZXJfaWQgPSAkdGhpcy0+Z2V0VGFrZXJJZCgkcGFyYW1zWydxdWl6X2lkJ10pOwoJCQoJICAgIGlmICgkcGFnZV9ubyA+PSAkcGFnZV9jb3VudCkKCSAgICAJewoJICAgIAkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2xhc3RwYWdlJywxKTsKCSAgICAJJHBhcmFtc1sncXp6X2xhc3RwYWdlJ10gPSAxOwoJICAgIAl9CgkgICAgZWxzZQoJICAgIAl7CgkgICAgCSR0aGlzLT5zbWFydHktPmFzc2lnbignbGFzdHBhZ2UnLDApOwoJICAgIAkkcGFyYW1zWydxenpfbGFzdHBhZ2UnXSA9IDA7CgkgICAgCX0KCQoJCSRyZW1lZGlhbCA9ICcnOwoJCSRyZW1lZGlhbGtleSA9ICR0YWtlcl9pZC4kcGFyYW1zWydxdWl6X2lkJ107CgkJJGlzX3JlbWVkaWFsID0gZmFsc2U7CgkJLy8gd2UgZG8gc29tZSB0cml2aWFsIGVuY29kaW5nIG9mIHRoZSByZW1lZGlhbCBmbGFnCgkJaWYgKGlzc2V0KCRwYXJhbXNbJ3F6el9yZW1lZGlhbCddKSAmJiAkcGFyYW1zWydxenpfcmVtZWRpYWwnXT09JHJlbWVkaWFsa2V5KQoJCQl7CgkJCSRyZW1lZGlhbCA9ICR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsCgkJCQkncXp6X3JlbWVkaWFsJywkcmVtZWRpYWxrZXkpOwoJCQkkaXNfcmVtZWRpYWwgPSB0cnVlOwoJCQl9CgkJaWYgKCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdzaG93X3BhZ2VuYXYnLCAnMCcpID09ICcxJykKCQkJewoJCQkkcG4gPSBhcnJheSgpOwoJCQkkcGFyID0gYXJyYXkoJ3F1aXpfaWQnPT4kcGFyYW1zWydxdWl6X2lkJ10pOwoJCQlpZiAoaXNzZXQoJHBhcmFtc1sncXp6X3JlbWVkaWFsJ10pICYmICRwYXJhbXNbJ3F6el9yZW1lZGlhbCddPT0kcmVtZWRpYWxrZXkpCgkJCQl7CgkJCQkkcGFyWydxenpfcmVtZWRpYWwnXT0kcmVtZWRpYWxrZXk7CgkJCQl9CgkJCQkKCQkJZm9yICgkaT0xOyRpPD0kcGFnZV9jb3VudDskaSsrKQoJCQkJewoJCQkJaWYgKCRpID09ICRwYWdlX25vKQoJCQkJCXsKCQkJCQlhcnJheV9wdXNoKCRwbiwkaSk7CgkJCQkJfQoJCQkJZWxzZQoJCQkJCXsKCQkJCQlhcnJheV9wdXNoKCRwbiwJJHRoaXMtPkNyZWF0ZUZyb250ZW5kTGluayggJGlkLCAkcmV0dXJuaWQsICd0YWtlcXVpeicsICRpLCBhcnJheV9tZXJnZSgkcGFyLGFycmF5KCdxenpfbmV4dF9wYWdlJz0+JGkpKSkpOwoJCQkJCX0KCQkJCX0KCQkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdwYWdlbmF2JywkdGhpcy0+TGFuZygncGFnZScpLicgJy5pbXBsb2RlKCcgOiAnLCRwbikpOwoJCQl9CgkJZWxzZQoJCQl7CgkJCSR0aGlzLT5zbWFydHktPmFzc2lnbigncGFnZW5hdicsJycpOwoJCQl9CgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdyZW1lZGlhbCcsKCRpc19yZW1lZGlhbD8nMSc6JzAnKSk7CgkgICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdwYWdlY291bnQnLCAkcGFnZV9jb3VudCk7CgkgICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdwYWdleG9meScsICR0aGlzLT5MYW5nKCdwYWdleG9meScsCgkgICAgCWFycmF5KCRwYWdlX25vLCRwYWdlX2NvdW50KSkpOwoJCSR0aGlzLT5zbWFydHktPmFzc2lnbignaGlkZGVuJywKCQkJJHRoaXMtPkNyZWF0ZUlucHV0SGlkZGVuKCRpZCwKCQkJCSdxenpfbmV4dF9wYWdlJywgJHBhZ2Vfbm8gKyAxKS4KCQkJJHRoaXMtPkNyZWF0ZUlucHV0SGlkZGVuKCRpZCwKCQkJCSdxdWl6X2lkJywkcGFyYW1zWydxdWl6X2lkJ10pIC4KCQkJJHRoaXMtPkNyZWF0ZUlucHV0SGlkZGVuKCRpZCwKCQkJCSdxenpfcHJldl9wYWdlJywkcGFnZV9ubyAtIDEpIC4KCQkJJHRoaXMtPkNyZWF0ZUlucHV0SGlkZGVuKCRpZCwKCQkJCSdxenpfcGFnZScsJHBhZ2Vfbm8pLgoJCQkkcmVtZWRpYWwKCQkJKTsKCX0KCglmdW5jdGlvbiBzZXRTY29yZVNtYXJ0eSgkc2NvcmVib2FyZCkKCXsKCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3Njb3JlJywkc2NvcmVib2FyZC0+c2NvcmUpOwoJCSR0aGlzLT5zbWFydHktPmFzc2lnbigndG90YWxfcXVlc3Rpb25zJywkc2NvcmVib2FyZC0+dG90YWxfcXVlc3Rpb25zKTsKCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3F1ZXN0aW9uc19za2lwcGVkJywkc2NvcmVib2FyZC0+c2tpcHBlZCk7CgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdxdWVzdGlvbnNfYW5zd2VyZWQnLCRzY29yZWJvYXJkLT5hbnN3ZXJlZCk7CgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzY29yZV9wZXJjZW50Jywkc2NvcmVib2FyZC0+cGVyY2VudF9yaWdodCk7CgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdwZXJjZW50X2Fuc3dlcmVkJywkc2NvcmVib2FyZC0+cGVyY2VudF9hbnN3ZXJlZCk7CgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdwZXJjZW50X3NraXBwZWQnLCRzY29yZWJvYXJkLT5wZXJjZW50X3NraXBwZWQpOwoJCSR0aGlzLT5zbWFydHktPmFzc2lnbignc2NvcmVfcGVyY2VudF9hbnN3ZXJlZCcsJHNjb3JlYm9hcmQtPnNjb3JlX3BlcmNlbnRfYW5zd2VyZWQpOwoJfQoKCS8qIHJldHVybnMgdHJ1ZSBpZiB0aGVyZSBhcmUgdGV4dCBpbnB1dHMKCSAgIGxvYWRzIHVwIGFsbCB0aGUgcXVlc3Rpb25zIGludG8gU21hcnR5LgoJICovCglmdW5jdGlvbiBnZXRRdWVzdGlvblBhZ2UoJGlkLCAmJHBhcmFtcywgJHJldHVybmlkLCAkd2l0aEFuc3dlcnM9ZmFsc2UpCgkJewoJCSRoYXNfdGV4dCA9IGZhbHNlOwoJCSRxdWVzdGlvbnMgPSAkdGhpcy0+Z2V0UXVlc3Rpb25zSW5SYW5nZSgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCk7CgkJaWYgKGlzc2V0KCRwYXJhbXNbJ3F6el9yZW1lZGlhbCddKSAmJiAkcGFyYW1zWydxenpfcmVtZWRpYWwnXSA9PSAkdGhpcy0+Z2V0VGFrZXJJZCgkcGFyYW1zWydxdWl6X2lkJ10pLiRwYXJhbXNbJ3F1aXpfaWQnXSkKCQkJewoJCQkvL2RlYnVnX2Rpc3BsYXkoInJ1bm5pbmcgcmVtZWRpYWwgY29kZSIpOwoJCQkkc2NvcmVib2FyZCA9ICR0aGlzLT5jb21wdXRlU2NvcmVWYWx1ZXMoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsICRxdWVzdGlvbnMtPnF1ZXN0aW9ucyk7CgkJCX0KCQkkaGFzX3RleHQgPSAkdGhpcy0+bWFrZVF1ZXN0aW9uc0Zvcm1zKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAkd2l0aEFuc3dlcnMsICRxdWVzdGlvbnMtPnF1ZXN0aW9ucyk7CgkJJHRoaXMtPnNldEZvcm1TbWFydHkoJGlkLCAkcmV0dXJuaWQsICRwYXJhbXMsICRxdWVzdGlvbnMtPnRoaXNfcGFnZSwgJHF1ZXN0aW9ucy0+cGFnZV9jb3VudCwgJHF1ZXN0aW9ucy0+cXVlc3Rpb25zKTsKCQlyZXR1cm4gJGhhc190ZXh0OwoJCX0KCglmdW5jdGlvbiBjb21wdXRlU2NvcmUoJGlkLCAmJHBhcmFtcywgJHJldHVybmlkKQoJCXsKCQkkcXVlc3Rpb25zID0gJHRoaXMtPmdldFF1ZXN0aW9uc0luUmFuZ2UoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsIHRydWUpOwoJCSRzY29yZWJvYXJkID0gJHRoaXMtPmNvbXB1dGVTY29yZVZhbHVlcygkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwgJHF1ZXN0aW9ucy0+cXVlc3Rpb25zKTsKCQkkdGhpcy0+c2V0U2NvcmVTbWFydHkoJHNjb3JlYm9hcmQpOwoJCXJldHVybiBhcnJheSgkc2NvcmVib2FyZC0+cGVyY2VudF9yaWdodCwkcXVlc3Rpb25zKTsKCQl9Cgp9Cj8+]]></data>
	</file>
	<file>
	  <filename>/templates/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/templates/adminpanel.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[e2lmICRtZXNzYWdlIT0iIn08aDM+eyRtZXNzYWdlfTwvaDM+ey9pZn0Ke2lmICR0YWJfbWVzc2FnZSE9IiJ9PGgzPnskdGFiX21lc3NhZ2V9PC9oMz57L2lmfQoKeyR0YWJoZWFkZXJzfQp7JHN0YXJ0X3F1aXp0YWJ9CntpZiAkaXRlbWNvdW50ID4gMH0KPHRhYmxlIGNlbGxzcGFjaW5nPSIwIiBjbGFzcz0icGFnZXRhYmxlIj4KCTx0aGVhZD4KCQk8dHI+CgkJCTx0aD57JGNvbHVtbl9uYW1lfTwvdGg+CgkJCTx0aD57JGNvbHVtbl9kZXNjfTwvdGg+CgkJCTx0aD57JGNvbHVtbl9xY291bnR9PC90aD4KCQkJPHRoPnskY29sdW1uX2VtYmVkfTwvdGg+CgkJCTx0aD57JGNvbHVtbl9leHBvcnR9PC90aD4KCQkJPHRoIGNsYXNzPSJwYWdlaWNvbiI+Jm5ic3A7PC90aD4KCQkJPHRoIGNsYXNzPSJwYWdlaWNvbiI+Jm5ic3A7PC90aD4KCQk8L3RyPgoJPC90aGVhZD4KCTx0Ym9keT4KCXtmb3JlYWNoIGZyb209JGl0ZW1zIGl0ZW09ZW50cnl9CgkJPHRyIGNsYXNzPSJ7JGVudHJ5LT5yb3djbGFzc30iIG9ubW91c2VvdmVyPSJ0aGlzLmNsYXNzTmFtZT0neyRlbnRyeS0+cm93Y2xhc3N9aG92ZXInOyIgb25tb3VzZW91dD0idGhpcy5jbGFzc05hbWU9J3skZW50cnktPnJvd2NsYXNzfSc7Ij4KCQkJPHRkPnskZW50cnktPm5hbWV9PC90ZD4KCQkJPHRkPnskZW50cnktPmRlc2N9PC90ZD4KCQkJPHRkPnskZW50cnktPnFjb3VudH08L3RkPgoJCQk8dGQ+JiMxMjM7Y21zX21vZHVsZSBtb2R1bGU9J1F1aXp6YXJkJyBxdWl6X2lkPSd7JGVudHJ5LT5pZH0nJiMxMjU7PC90ZD4KCQkJPHRkPnskZW50cnktPmJyb3dzZX0gfCB7JGVudHJ5LT5tYW5hZ2V9IHwgeyRlbnRyeS0+ZXhwb3J0fTwvdGQ+CgkJCTx0ZD57JGVudHJ5LT5lZGl0bGlua308L3RkPgoJCQk8dGQ+eyRlbnRyeS0+ZGVsZXRlbGlua308L3RkPgoJCTwvdHI+Cgl7L2ZvcmVhY2h9Cgk8L3Rib2R5Pgo8L3RhYmxlPgp7ZWxzZX0KPHA+eyRub3F1aXp6ZXN9PC9wPgp7L2lmfQo8ZGl2IGNsYXNzPSJwYWdlb3B0aW9ucyI+Cgk8cCBjbGFzcz0icGFnZW9wdGlvbnMiPnskYWRkbGlua308L3A+CjwvZGl2Pgp7JGVuZF90YWJ9Cnskc3RhcnRfZXh0cmF0YWJ9Cgl7JHN0YXJ0X2V4dHJhZm9ybX0KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CgkgICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyR0aXRsZV9leHRyYWZpZWxkc308L3A+Cgk8L2Rpdj4KCTx0YWJsZSBjZWxsc3BhY2luZz0iMCIgY2xhc3M9InBhZ2V0YWJsZSI+CgkJPHRoZWFkPgoJCQk8dHI+CgkJCQk8dGg+eyR0aXRsZV9maWVsZF9uYW1lfTwvdGg+CgkJCQk8dGg+eyR0aXRsZV9maWVsZF90eXBlfTwvdGg+CgkJCQk8dGg+eyR0aXRsZV9maWVsZF9kaXNwbGF5X2xlbn08L3RoPgoJCQkJPHRoPnskdGl0bGVfZmllbGRfbWF4X2xlbn08L3RoPgoJCQkJPHRoPnskdGl0bGVfZmllbGRfd2VpZ2h0fTwvdGg+CgkJCQk8dGg+eyR0aXRsZV9maWVsZF9kZWx9PC90aD4KCQkJPC90cj4KCQk8L3RoZWFkPgoJCTx0Ym9keT4KCXtmb3JlYWNoIGZyb209JGV4dHJhcyBpdGVtPWVudHJ5fQoJCTx0cj4KCSAgICAgICAgPHRkPnskZW50cnkuaW5wdXRfbmFtZX08L3RkPgoJICAgICAgICA8dGQ+eyRlbnRyeS5pbnB1dF90eXBlfTwvdGQ+CgkJCTx0ZD57JGVudHJ5LmlucHV0X2Rpc3BsYXlfbGVufTwvdGQ+CgkJCTx0ZD57JGVudHJ5LmlucHV0X21heF9sZW59PC90ZD4KCSAgICAgICAgPHRkPnskZW50cnkuaW5wdXRfd2VpZ2h0fTwvdGQ+CgkJCTx0ZD57JGVudHJ5LmlucHV0X2RlbH08L3RkPgoJCTwvdHI+Cgl7L2ZvcmVhY2h9Cgk8L3Rib2R5PjwvdGFibGU+Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+PC9wPgogICAgICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskc3VibWl0fTwvcD4KCTwvZGl2PgoJeyRlbmRfZm9ybX0KeyRlbmRfdGFifQp7JHN0YXJ0X3RocmVzaG9sZHRhYn0KCXskc3RhcnRfdGhyZXNob2xkZm9ybX0KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICAgICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHRpdGxlX3Njb3JlX3RocmVzaG9sZH08L3A+CiAgICAgICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9zY29yZV90aHJlc2hvbGR9PC9wPgoJPC9kaXY+Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyR0aXRsZV90aHJlc2hvbGRfc2luZ2xlX3BhZ2V9PC9wPgogICAgICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfdGhyZXNob2xkX3NpbmdsZV9wYWdlfTwvcD4KCTwvZGl2PgoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgICAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskdGl0bGVfcXVlc3Rpb25fd3Jvbmd9PC9wPgogICAgICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfcXVlc3Rpb25fd3Jvbmd9PC9wPgoJPC9kaXY+Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyR0aXRsZV90aHJlc2hvbGRfbWVzc2FnZX08L3A+CiAgICAgICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF90aHJlc2hvbGRfbWVzc2FnZX08L3A+Cgk8L2Rpdj4KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICAgICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij48L3A+CiAgICAgICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRzdWJtaXR9PC9wPgoJPC9kaXY+Cgl7JGVuZF9mb3JtfQp7JGVuZF90YWJ9Cnskc3RhcnRfaW1wb3J0dGFifQoJeyRzdGFydF91cGxvYWRmb3JtfQoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgICAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskdGl0bGVfZmlsZV90b191cGxvYWR9PC9wPgogICAgICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfZmlsZV90b191cGxvYWR9IHskdGl0bGVfZmlsZV90b191cGxvYWRfaGVscH08L3A+Cgk8L2Rpdj4KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICAgICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij48L3A+CiAgICAgICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbXBvcnR9PC9wPgoJPC9kaXY+Cgl7JGVuZF9mb3JtfQp7JGVuZF90YWJ9Cnskc3RhcnRfdGVtcGxhdGVmb3JtfQp7JHN0YXJ0X3F1aXp0ZW1wbGF0ZXRhYn0KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICAgICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHRpdGxlX3F1aXpfdGVtcGxhdGV9PC9wPgogICAgICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfcXVpel90ZW1wbGF0ZX08L3A+Cgk8L2Rpdj4KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICAgICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHRpdGxlX3NpZ251cF90ZW1wbGF0ZX08L3A+CiAgICAgICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9zaWdudXBfdGVtcGxhdGV9PC9wPgoJPC9kaXY+Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+PC9wPgogICAgICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskc3VibWl0dGVtcGxhdGVzfTwvcD4KCTwvZGl2Pgp7JGVuZF90YWJ9Cnskc3RhcnRfZW1haWx0ZW1wbGF0ZXRhYn0KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICAgICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHRpdGxlX2VtYWlsX3RlbXBsYXRlfTwvcD4KICAgICAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2VtYWlsX3RlbXBsYXRlfTwvcD4KCTwvZGl2PgoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgICAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskdGl0bGVfaHRtbF9lbWFpbH08L3A+CiAgICAgICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9odG1sX2VtYWlsfTwvcD4KCTwvZGl2PgoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgICAgICA8cCBjbGFzcz0icGFnZXRleHQiPjwvcD4KICAgICAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JHN1Ym1pdHRlbXBsYXRlc308L3A+Cgk8L2Rpdj4KeyRlbmRfdGFifQp7JHN0YXJ0X3Njb3JldGVtcGxhdGV0YWJ9Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyR0aXRsZV9zY29yZV90ZW1wbGF0ZX08L3A+CiAgICAgICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9zY29yZV90ZW1wbGF0ZX08L3A+Cgk8L2Rpdj4KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICAgICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij48L3A+CiAgICAgICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRzdWJtaXR0ZW1wbGF0ZXN9PC9wPgoJPC9kaXY+CnskZW5kX3RhYn0KeyRlbmRfZm9ybX0KeyRzdGFydF9jb25maWdmb3JtfQp7JHN0YXJ0X2VtYWlsY29uZmlndGFifQoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgICAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskdGl0bGVfc2VuZF9lbWFpbH08L3A+CiAgICAgICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9zZW5kX2VtYWlsfTwvcD4KCTwvZGl2PgoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgICAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskdGl0bGVfc2VuZF90b308L3A+CiAgICAgICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9zZW5kX3RvfTwvcD4KCTwvZGl2PgoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgICAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskdGl0bGVfZW1haWxfc3ViamVjdH08L3A+CiAgICAgICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9lbWFpbF9zdWJqZWN0fTwvcD4KCTwvZGl2PgoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgICAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskdGl0bGVfZW1haWxfZnJvbW5hbWV9PC9wPgogICAgICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfZW1haWxfZnJvbW5hbWV9PC9wPgoJPC9kaXY+Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyR0aXRsZV9lbWFpbF9mcm9tfTwvcD4KICAgICAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2VtYWlsX2Zyb219PC9wPgoJPC9kaXY+Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+PC9wPgogICAgICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskc3VibWl0fTwvcD4KCTwvZGl2Pgp7JGVuZF90YWJ9Cnskc3RhcnRfY2hhcmFjdGVydGFifQp7bGl0ZXJhbH0KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgoJZnVuY3Rpb24gYWxsX2NoYXJzKCkKCQl7CgkJc2V0Q2hlY2tzKHRydWUpOwoJCX0KCWZ1bmN0aW9uIG5vX2NoYXJzKCkKCQl7CgkJc2V0Q2hlY2tzKGZhbHNlKTsKCQl9CglmdW5jdGlvbiBzZXRDaGVja3ModmFsKQoJCXsKCQlmb3IgKGk9MDtpPHsvbGl0ZXJhbH17JGFjY2VudGxlbn17bGl0ZXJhbH07aSsrKQoJCQl7CgkJCWNieCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdhYycraSk7CgkJCWlmIChjYngpCgkJCQl7CgkJCQlpZiAodmFsKQoJCQkJCXsKCQkJCQljYnguY2hlY2tlZCA9IDE7CgkJCQkJfQoJCQkJZWxzZQoJCQkJCXsKCQkJCQljYnguY2hlY2tlZCA9IDA7CgkJCQkJfQoJCQkJfQoJCQl9CgoJCX0KPC9zY3JpcHQ+CnsvbGl0ZXJhbH0KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICAgICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHRpdGxlX3Nob3dfcGFsZXR0ZX08L3A+CiAgICAgICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9zaG93X3BhbGV0dGV9PC9wPgoJPC9kaXY+Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyR0aXRsZV9wYWxldHRlX2NoYXJzfTwvcD4KICAgICAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAgICAJPGEgaHJlZj0iamF2YXNjcmlwdDphbGxfY2hhcnMoKSI+eyR0aXRsZV9zZWxlY3RfYWxsfTwvYT48YnIgLz4KICAgICAgICAJPGEgaHJlZj0iamF2YXNjcmlwdDpub19jaGFycygpIj57JHRpdGxlX3NlbGVjdF9ub25lfTwvYT48YnIgLz4KICAgICAgICB7JGlucHV0X3BhbGV0dGVfY2hhcnN9PC9wPgoJPC9kaXY+Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+PC9wPgogICAgICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskc3VibWl0fTwvcD4KCTwvZGl2Pgp7JGVuZF90YWJ9Cnskc3RhcnRfY29uZmlndGFifQoJPGZpZWxkc2V0PgoJPHA+eyR0aXRsZV9wYWdpbmF0aW9uX2hlbHB9PC9wPgoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgICAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskdGl0bGVfcGFnaW5hdGlvbn08L3A+CiAgICAgICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9wYWdpbmF0aW9ufTwvcD4KCTwvZGl2PgoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgICAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskdGl0bGVfZGVmYXVsdF9xdWVzdGlvbnN9PC9wPgogICAgICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfZGVmYXVsdF9xdWVzdGlvbnN9PC9wPgoJPC9kaXY+Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyR0aXRsZV9zaG93X3BhZ2VuYXZ9PC9wPgogICAgICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfc2hvd19wYWdlbmF2fTwvcD4KCTwvZGl2PgoJPC9maWVsZHNldD4KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICAgICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHRpdGxlX21heF9hbnN3ZXJzfTwvcD4KICAgICAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X21heF9hbnN3ZXJzfTwvcD4KCTwvZGl2PgoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgICAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskdGl0bGVfcXVpel9pbmxpbmV9PC9wPgogICAgICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfcXVpel9pbmxpbmV9PC9wPgoJPC9kaXY+Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyR0aXRsZV9zbWFydHlfcHJvY2Vzc19wYWdlc308L3A+CiAgICAgICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9zbWFydHlfcHJvY2Vzc19wYWdlc308L3A+Cgk8L2Rpdj4KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICAgICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHRpdGxlX3NhdmVfYnV0dG9ufTwvcD4KICAgICAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X3NhdmVfYnV0dG9ufTwvcD4KCTwvZGl2PgoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgICAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskdGl0bGVfcmVxdWlyZV91c2VyfTwvcD4KICAgICAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X3JlcXVpcmVfdXNlcn08L3A+Cgk8L2Rpdj4KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICAgICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHRpdGxlX3F1ZXN0aW9uc19jYXNlX3NlbnNpdGl2ZX08L3A+CiAgICAgICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9xdWVzdGlvbnNfY2FzZV9zZW5zaXRpdmV9PC9wPgoJPC9kaXY+Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyR0aXRsZV9maWxsaW5fbGVufTwvcD4KICAgICAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2ZpbGxpbl9sZW59PC9wPgoJPC9kaXY+Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyR0aXRsZV9yZW51bWJlcl9ieV9zZWN0aW9ufTwvcD4KICAgICAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X3JlbnVtYmVyX2J5X3NlY3Rpb259PC9wPgoJPC9kaXY+Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyR0aXRsZV93eXNpd3lnX3F1ZXN0aW9uc308L3A+CiAgICAgICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF93eXNpd3lnX3F1ZXN0aW9uc308L3A+Cgk8L2Rpdj4KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICAgICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij48L3A+CiAgICAgICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRzdWJtaXR9PC9wPgoJPC9kaXY+CnskZW5kX3RhYn0KeyRlbmRfZm9ybX0KeyRlbmRfdGFic30=]]></data>
	</file>
	<file>
	  <filename>/templates/editquestion.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[e2lmICRtZXNzYWdlICE9ICIifTxoMz57JG1lc3NhZ2V9PC9oMz57L2lmfQp7bGl0ZXJhbH0KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgoKCWZ1bmN0aW9uIGZhc3RfYWRkKGZpZWxkX3R5cGUpCgkJewoJCXsvbGl0ZXJhbH0KCQl2YXIgdHlwZT1maWVsZF90eXBlLm9wdGlvbnNbZmllbGRfdHlwZS5zZWxlY3RlZEluZGV4XS52YWx1ZTsKCQl2YXIgbGluayA9ICd7JHJlbG9hZGxpbmt9JnskaWR9cXVpel9pZD17JHF1aXpfaWR9JnskaWR9cXVlc3Rpb25faWQ9eyRxdWVzdGlvbl9pZH0meyRpZH1xdHlwZT0nK3R5cGU7CgkJdGhpcy5sb2NhdGlvbj1saW5rOwoJCXJldHVybiB0cnVlOwoJCXtsaXRlcmFsfQoJCX0KPC9zY3JpcHQ+CnsvbGl0ZXJhbH0KeyRiYWNrX3RvX21haW59eyRiYWNrX3RvX3F1aXp9Cnskc3RhcnRmb3JtfQo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHRpdGxlX3F1ZXN0aW9uX3R5cGV9OjwvcD4KCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfcXVlc3Rpb25fdHlwZX08L3A+CjwvZGl2Pgp7aWYgJHF0eXBlID09ICdwJ30KPGRpdiBpZD0icXVlc3Rpb250aXRsZSIgY2xhc3M9InBhZ2VvdmVyZmxvdyI+Cgk8cCBjbGFzcz0icGFnZXRleHQiPnskdGl0bGVfcXVlc3Rpb25fdGl0bGV9OjwvcD4KCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfcXVlc3Rpb25fdGl0bGV9PC9wPgo8L2Rpdj4Key9pZn0Ke2lmICRxdHlwZSAhPSAnYicgJiYgJHF0eXBlICE9ICcnfQo8ZGl2IGlkPSJxdWVzdGlvbiIgY2xhc3M9InBhZ2VvdmVyZmxvdyI+Cgk8cCBjbGFzcz0icGFnZXRleHQiPnskdGl0bGVfcXVlc3Rpb25fdGV4dH06PC9wPgoJPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9xdWVzdGlvbl90ZXh0fTwvcD4KPC9kaXY+CnsvaWZ9CntpZiAkcXR5cGUgPT0gJ2YnIHx8ICRxdHlwZSA9PSAnbScgfHwgJHF0eXBlID09ICdjJ30KPGRpdiBpZD0ic2NvcmVkIiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCTxwIGNsYXNzPSJwYWdldGV4dCI+eyR0aXRsZV9xdWVzdGlvbl9zY29yZWR9OjwvcD4KCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfcXVlc3Rpb25fc2NvcmVkfTwvcD4KPC9kaXY+CnsvaWZ9CntpZiAkcXR5cGUgPT0gJ2YnfQo8ZGl2IGlkPSJxdWl6X2ZpbGxpbiIgY2xhc3M9InBhZ2VvdmVyZmxvdyI+Cgk8cD57JHRpdGxlX2Fuc3dlcl90ZXh0X2hlbHB9PC9wPgo8L2Rpdj4Key9pZn0Ke2lmICRxdHlwZSA9PSAnbScgfHwgJHF0eXBlID09ICdjJyB8fCAkcXR5cGUgPT0gJ2YnfQp7aWYgJGl0ZW1jb3VudCA+IDB9Cjx0YWJsZSBjZWxsc3BhY2luZz0iMCIgY2xhc3M9InBhZ2V0YWJsZSI+Cgk8dGhlYWQ+CgkJPHRyPntpZiAkcXR5cGUgPT0gJ20nIHx8ICRxdHlwZSA9PSAnYyd9CgkJCTx0aD57JGNvbHVtbl9jb3JyZWN0fTwvdGg+CgkJCXsvaWZ9CgkJCTx0aD57JGNvbHVtbl9hbnN3ZXJ9PC90aD4KCQk8L3RyPgoJPC90aGVhZD4KCTx0Ym9keT4KCXtmb3JlYWNoIGZyb209JGl0ZW1zIGl0ZW09ZW50cnkga2V5PWt9CgkJPHRyIGNsYXNzPSJ7JGVudHJ5LT5yb3djbGFzc30iIG9ubW91c2VvdmVyPSJ0aGlzLmNsYXNzTmFtZT0neyRlbnRyeS0+cm93Y2xhc3N9aG92ZXInOyIgb25tb3VzZW91dD0idGhpcy5jbGFzc05hbWU9J3skZW50cnktPnJvd2NsYXNzfSc7Ij4KCQkJe2lmICRxdHlwZSA9PSAnbSd9CgkJCTx0ZD57JGVudHJ5LT5tY29ycmVjdH08L3RkPgoJCQl7L2lmfQoJCQl7aWYgJHF0eXBlID09ICdjJ30KCQkJPHRkPnskZW50cnktPmNjb3JyZWN0fTwvdGQ+CgkJCXsvaWZ9CgkJCTx0ZD57JGVudHJ5LT5hbnN3ZXJ9PC90ZD4KCQk8L3RyPgoJey9mb3JlYWNofQoJPC90Ym9keT4KPC90YWJsZT4Ke2Vsc2V9CjxwPnskbm9hbnN3ZXJzfTwvcD4Key9pZn0Key9pZn0KPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCTxwIGNsYXNzPSJwYWdldGV4dCI+PC9wPgoJPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRoaWRkZW59eyRzYXZlfTwvcD4KPC9kaXY+CnskZW5kZm9ybX0KeyRiYWNrX3RvX21haW59Cg==]]></data>
	</file>
	<file>
	  <filename>/templates/editquiz.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[e2lmICRtZXNzYWdlICE9ICIifTxoMz57JG1lc3NhZ2V9PC9oMz57L2lmfQp7JGJhY2tfdG9fbWFpbn0KeyRzdGFydGZvcm19Cgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHRpdGxlX3F1aXpfbmFtZX06PC9wPgoJPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9xdWl6X25hbWV9PC9wPgo8L2Rpdj4KPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCTxwIGNsYXNzPSJwYWdldGV4dCI+eyR0aXRsZV9xdWl6X2Rlc2N9OjwvcD4KCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfcXVpel9kZXNjfTwvcD4KPC9kaXY+CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+Cgk8cCBjbGFzcz0icGFnZXRleHQiPjwvcD4KCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskc2F2ZX17JGhpZGRlbn17JGRvbmV9PC9wPgo8L2Rpdj4Ke2lmICRpdGVtY291bnQgPiAwfQp7aWYgJHFpZHNldCAhPSAwfQo8ZGl2IGNsYXNzPSJwYWdlb3B0aW9ucyI+Cgk8cCBjbGFzcz0icGFnZW9wdGlvbnMiPnskYWRkbGlua30mbmJzcDt7JG9yZGVyX2ZpZWxkX2xpbmt9PC9wPgo8L2Rpdj4Key9pZn0KPHRhYmxlIGNlbGxzcGFjaW5nPSIwIiBjbGFzcz0icGFnZXRhYmxlIj4KCTx0aGVhZD4KCQk8dHI+CgkJCTx0aD57JGNvbHVtbl9xdWVzdGlvbn08L3RoPgoJCQk8dGg+eyRjb2x1bW5fdHlwZX08L3RoPgoJCQk8dGggY2xhc3M9InBhZ2VpY29uIj4mbmJzcDs8L3RoPgoJCQk8dGggY2xhc3M9InBhZ2VpY29uIj4mbmJzcDs8L3RoPgoJCQk8dGggY2xhc3M9InBhZ2VpY29uIj4mbmJzcDs8L3RoPgoJCQk8dGggY2xhc3M9InBhZ2VpY29uIj4mbmJzcDs8L3RoPgoJCTwvdHI+Cgk8L3RoZWFkPgoJPHRib2R5PgoJe2ZvcmVhY2ggZnJvbT0kaXRlbXMgaXRlbT1lbnRyeX0KCQk8dHIgY2xhc3M9InskZW50cnktPnJvd2NsYXNzfSIgb25tb3VzZW92ZXI9InRoaXMuY2xhc3NOYW1lPSd7JGVudHJ5LT5yb3djbGFzc31ob3Zlcic7IiBvbm1vdXNlb3V0PSJ0aGlzLmNsYXNzTmFtZT0neyRlbnRyeS0+cm93Y2xhc3N9JzsiPgoJCQk8dGQ+e2lmICRlbnRyeS0+bnVtICE9ICcnfXskZW50cnktPm51bX0uIHsvaWZ9eyRlbnRyeS0+bmFtZX08L3RkPgoJCQk8dGQ+eyRlbnRyeS0+dHlwZX08L3RkPgoJCQk8dGQ+eyRlbnRyeS0+ZG93bmxpbmt9PC90ZD4KCQkJPHRkPnskZW50cnktPnVwbGlua308L3RkPgoJCQk8dGQ+eyRlbnRyeS0+ZWRpdGxpbmt9PC90ZD4KCQkJPHRkPnskZW50cnktPmRlbGV0ZWxpbmt9PC90ZD4KCQk8L3RyPgoJey9mb3JlYWNofQoJPC90Ym9keT4KPC90YWJsZT4Ke2Vsc2V9CjxwPnskbm9xdWVzdGlvbnN9PC9wPgp7L2lmfQp7aWYgJHFpZHNldCA9PSAwfQo8cD57JHRpdGxlX3NhdmVfaGVscH08L3A+CntlbHNlfQo8ZGl2IGNsYXNzPSJwYWdlb3B0aW9ucyI+Cgk8cCBjbGFzcz0icGFnZW9wdGlvbnMiPnskYWRkbGlua30mbmJzcDt7JG9yZGVyX2ZpZWxkX2xpbmt9PC9wPgo8L2Rpdj4Key9pZn0KeyRiYWNrX3RvX21haW59Cg==]]></data>
	</file>
	<file>
	  <filename>/templates/email.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[UXVpeiBUYWtlcjogeyR0YWtlcl9uYW1lfSA8eyR0YWtlcl9lbWFpbH0+Cntmb3JlYWNoIGZyb209JGV4dHJhcyBpdGVtPWVudHJ5fQp7JGVudHJ5LmZpZWxkX25hbWV9OiB7JGVudHJ5Lmh1bWFuX3ZhbHVlfQp7L2ZvcmVhY2h9ClF1aXogUmVzdWx0czogeyRzY29yZX0gb2YgeyR0b3RhbF9xdWVzdGlvbnN9ICh7JHNjb3JlX3BlcmNlbnR9JSBjb3JyZWN0KQp7aWYgJHVzZXJfZW1haWw9PTF9CllvdSBhbnN3ZXJlZCB7JHF1ZXN0aW9uc19hbnN3ZXJlZH0gKHskcGVyY2VudF9hbnN3ZXJlZH0lKSBhbmQgc2tpcHBlZCB7JHF1ZXN0aW9uc19za2lwcGVkfSAoeyRwZXJjZW50X3NraXBwZWR9JSkKT2YgdGhlIHF1ZXN0aW9ucyB5b3UgYW5zd2VyZWQsIHlvdSBnb3QgeyRzY29yZV9wZXJjZW50X2Fuc3dlcmVkfSUgcmlnaHQuCgpIZXJlJ3Mgd2hhdCB5b3UgbWlzc2VkOgp7ZWxzZSBpZiAkYWRtaW5fZW1haWw9PTF9CnskdGFrZXJfbmFtZX0gYW5zd2VyZWQgeyRxdWVzdGlvbnNfYW5zd2VyZWR9ICh7JHBlcmNlbnRfYW5zd2VyZWR9JSkgYW5kIHNraXBwZWQgeyRxdWVzdGlvbnNfc2tpcHBlZH0gKHskcGVyY2VudF9za2lwcGVkfSUpCk9mIHRoZSBxdWVzdGlvbnMgeyR0YWtlcl9uYW1lfSBhbnN3ZXJlZCwgaGUvc2hlIGdvdCB7JHNjb3JlX3BlcmNlbnRfYW5zd2VyZWR9JSByaWdodC4Key9pZn0KCntmb3JlYWNoIGZyb209JHF1ZXN0aW9ucyBpdGVtPWVudHJ5fQp7aWYgKCR1c2VyX2VtYWlsPT0xICYmICRlbnRyeS0+aXNfc2NvcmVkKSB8fCAkYWRtaW5fZW1haWx9CntpZiAkZW50cnktPnR5cGUgPT0gJ3MnfXskZW50cnktPnF1ZXN0aW9ufQoKe2Vsc2VpZiAkZW50cnktPnNraXBwZWQgPT0gMSB8fCAkZW50cnktPmNvcnJlY3QgPT0gMH17aWYgJGVudHJ5LT50eXBlID09ICdmJyB8fCAkZW50cnktPnR5cGUgPT0gJ20nIHx8ICRlbnRyeS0+dHlwZSA9PSAnYyd9eyRlbnRyeS0+bnVtfSkgey9pZn0geyRlbnRyeS0+cXVlc3Rpb25fdHh0fQp7aWYgJGVudHJ5LT50eXBlID09ICdmJyB8fCAkZW50cnktPnR5cGUgPT0gJ20nIHx8ICRlbnRyeS0+dHlwZSA9PSAnYyd9e2lmICRlbnRyeS0+c2tpcHBlZD09MX17JHRpdGxlX3NraXBwZWR9CntlbHNlfXskdGl0bGVfeW91cl9hbnN3ZXJ9OiB7JGVudHJ5LT5naXZlbmFuc3dlcl90eHR9CnsvaWZ9CntpZiAkZW50cnktPmlzX3Njb3JlZCA9PSAxfQp7JHRpdGxlX2NvcnJlY3RfYW5zd2VyfTogeyRlbnRyeS0+Y29ycmVjdGFuc3dlcl90eHR9Cgp7L2lmfQp7L2lmfQp7L2lmfQp7L2lmfQp7L2ZvcmVhY2h9CQ==]]></data>
	</file>
	<file>
	  <filename>/templates/error.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGgzPnskdGl0bGVfZXJyb3J9PC9oMz4Ke2lmICRtZXNzYWdlIT0nJ308cD57JG1lc3NhZ2V9PC9wPnsvaWZ9]]></data>
	</file>
	<file>
	  <filename>/templates/managequiz.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[e2lmICRtZXNzYWdlfTxoMj57JG1lc3NhZ2V9PC9oMj48YnIgLz57L2lmfQo8cD57JGJhY2tfdG9fbWFpbn08L3A+CntsaXRlcmFsfQo8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgouc21hbGwge2ZvbnQtc2l6ZTogNnB4OyBkaXNwbGF5OiBpbmxpbmU7fQpwIHtmb250LXNpemU6IDEycHg7fQo8L3N0eWxlPgp7L2xpdGVyYWx9Cnskc3RhcnRmb3JtfQo8ZGl2IGNsYXNzPSJxdWl6Ij4Ke2lmICRzaG93X2xpbmVfbnVtYmVycyA9PSAnMSd9e2NvdW50ZXIgc3RhcnQ9MX17L2lmfQp7Zm9yZWFjaCBmcm9tPSRxdWVzdGlvbnMgaXRlbT1lbnRyeX0Ke2lmICRzaG93X2xpbmVfbnVtYmVycyA9PSAnMSd9PHAgY2xhc3M9InNtYWxsIj5be2NvdW50ZXJ9IDogeyRlbnRyeS0+dHlwZX1dPC9wPnsvaWZ9CntpZiAkZW50cnktPnR5cGUgPT0gJ3MnfQo8aDI+eyRlbnRyeS0+cXVlc3Rpb259PC9oMj4Ke2Vsc2VpZiAkZW50cnktPnR5cGUgPT0gJ3QnfQo8aDM+eyRlbnRyeS0+cXVlc3Rpb259PC9oMz4Ke2Vsc2V9Cgk8cD57aWYgJGVudHJ5LT5udW0gIT0gIiJ9eyRlbnRyeS0+bnVtfSkgey9pZn0KCXtpZiAkZW50cnktPnR5cGUhPSdwJ317JGVudHJ5LT5xdWVzdGlvbn17ZWxzZX17JGVudHJ5LT50aXRsZX17L2lmfSB7aWYgJGVudHJ5LT5pc19zY29yZWQgIT0gMX0oeyR0aXRsZV91bnNjb3JlZH0pey9pZn08YnIgLz4KCXskZW50cnktPnR5cGVmaWVsZH17aWYgJGVudHJ5LT50eXBlID09ICdtJyB8fCAkZW50cnktPnR5cGUgPT0gJ2MnfQoJCXtmb3JlYWNoIGZyb209JGVudHJ5LT5hbnN3ZXJzIGtleT1hbnN3ZXJfbm8gaXRlbT1hbnN3ZXJ9CgkJeyRhbnN3ZXJ9PGJyIC8+CgkJey9mb3JlYWNofQoJey9pZn0KCTwvcD4Key9pZn0Key9mb3JlYWNofQo8YnIgLz4KeyRzdWJtaXR9CnskZW5kZm9ybX0KPGhyIC8+CjxwPnskYmFja190b19tYWlufTwvcD4KPC9kaXY+]]></data>
	</file>
	<file>
	  <filename>/templates/plugin.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGRpdiBjbGFzcz0icXVpeiI+CjxwIGNsYXNzPSJxdWl6dGl0bGUiPnskdGl0bGVfbmFtZX06PC9wPgo8cCBjbGFzcz0icXVpemlucHV0Ij57JGlucHV0X25hbWV9PC9wPgoKPHAgY2xhc3M9InF1aXp0aXRsZSI+eyR0aXRsZV9lbWFpbH06PC9wPgo8cCBjbGFzcz0icXVpemlucHV0Ij57JGlucHV0X2VtYWlsfTwvcD4KCjxwIGNsYXNzPSJxdWl6dGl0bGUiPnskdGl0bGVfc2VuZF9hX2NvcHl9OjwvcD4KPHAgY2xhc3M9InF1aXppbnB1dCI+eyRpbnB1dF9zZW5kX2FfY29weX0geyR0aXRsZV9zZW5kX2FfY29weV9oZWxwfTwvcD4KCjxwIGNsYXNzPSJxdWl6dGl0bGUiPjwvcD4KPHAgY2xhc3M9InF1aXppbnB1dCI+eyRjb250aW51ZX08L3A+CgoKPC9kaXY+]]></data>
	</file>
	<file>
	  <filename>/templates/reload_quiz.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[e2lmICRtZXNzYWdlIT0iIn08c3Ryb25nPnskbWVzc2FnZX08L3N0cm9uZz48YnIgLz57L2lmfQo8ZGl2Pgp7JHN0YXJ0Zm9ybX0KeyRoaWRkZW59CntpZiAkc3RlcCA9PSAnZmlyc3QnfQo8ZGl2IGNsYXNzPSJxdWl6cm93Ij4KPGxhYmVsIGZvcj0ieyRpZH1xdWl6X2lkIj57JHRpdGxlX3F1aXpfbmFtZX0qOjwvbGFiZWw+CjxzZWxlY3QgaWQ9J3skaWR9cXVpel9pZCcgbmFtZT0neyRpZH1xdWl6X2lkJz4KCXtmb3JlYWNoIGZyb209JGl0ZW1zIGl0ZW09ZW50cnl9CgkJPG9wdGlvbiB2YWx1ZT0ieyRlbnRyeS0+aWR9Ij57JGVudHJ5LT50aXRsZX08L29wdGlvbj4KCXsvZm9yZWFjaH0KPC9zZWxlY3Q+CjwvZGl2Pgp7ZWxzZWlmICRzdGVwID09ICdzZWNvbmQnfQo8ZGl2IGNsYXNzPSJxdWl6cm93Ij4KPHRhYmxlPgoJPHRyPjx0aD4mbmJzcDs8L3RoPjx0aD57JHNvcnRfY29sdW1uX25hbWV9PC90aD48dGg+eyRzb3J0X2NvbHVtbl9lbWFpbH08L3RoPgoJCTx0aD57JGNvbHVtbl9zY29yZX08L3RoPjx0aD57JHNvcnRfY29sdW1uX2NvbXBsZXRlZH08L3RoPjwvdHI+Cgl7Zm9yZWFjaCBmcm9tPSRpbnB1dF9xdWl6X3Rha2VyX2VtYWlsIGl0ZW09ZW50cnl9CgkJPHRyPjx0ZD57JGVudHJ5LT52aWV3bGlua308L3RkPgoJCQk8dGQ+eyRlbnRyeS0+bGlua25hbWV9PC90ZD4KCQkJPHRkPnskZW50cnktPmVtYWlsfTwvdGQ+CgkJCTx0ZD57JGVudHJ5LT5zY29yZX08L3RkPgoJCQk8dGQ+eyRlbnRyeS0+Y29tcGxldGVkX2RhdGV9PC90ZD4KCQk8L3RyPgoJey9mb3JlYWNofQo8L3RhYmxlPgo8L2Rpdj4Key9pZn0KeyRlbmRmb3JtfQo8L2Rpdj4K]]></data>
	</file>
	<file>
	  <filename>/templates/reorderquiz.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[e2xpdGVyYWx9CjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KZnVuY3Rpb24gc2VuZF9vcmRlcl92YXIoZm9ybV9kZXNjKQogICB7CiAgIHZhciBlbGVtID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3BhcmVudDAnKTsKICAgaWYgKGVsZW0pCiAgICAgIHsKICAgICAgdmFyIHN0ciA9ICcnOwogICAgICB2YXIgbm9kZXMgPSBlbGVtLmNoaWxkTm9kZXM7CiAgICAgIGZvciAoaT0wO2k8bm9kZXMubGVuZ3RoO2krKykKICAgICAgICAgewogICAgICAgICBzdHIgPSBzdHIgKyBub2Rlc1tpXS5pZCArICcsJzsKICAgICAgICAgfQogICAgICB9CiAgIHZhciBmbGQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnb3JkZXJwYXNzJyk7CiAgIGlmIChmbGQpCgkJewoJCWZsZC52YWx1ZSA9IHN0cjsKCQl9CiAgIHJldHVybiB0cnVlOwogICB9Cjwvc2NyaXB0Pgo8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgojcGFyZW50MCB7d2lkdGg6IDEwMCV9CiNwYXJlbnQwIGxpIHt3aWR0aDogOTAlfQo8L3N0eWxlPgp7L2xpdGVyYWx9Cgp7JHN0YXJ0X2Zvcm19Cjx1bCBpZD0icGFyZW50MCIgY2xhc3M9InNvcnRhYmxlTGlzdCI+Cntmb3JlYWNoIGZyb209JGl0ZW1zIGl0ZW09dGhpc0l0ZW19CgkJPGxpIGlkPSJxeyR0aGlzSXRlbS0+aWR9Ij57JHRoaXNJdGVtLT50eXBlfTogPHN0cm9uZz57JHRoaXNJdGVtLT50aXRsZX08L3N0cm9uZz48L2xpPgp7L2ZvcmVhY2h9Cgo8L3VsPgo8YnIgLz4KeyRoaWRkZW59PGlucHV0IHR5cGU9ImhpZGRlbiIgaWQ9Im9yZGVycGFzcyIgbmFtZT0ieyRpZH1vcmRlciIgdmFsdWU9IiIgLz4KeyRzdWJtaXR9CnskZW5kX2Zvcm19Cgp7bGl0ZXJhbH0KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgpTb3J0YWJsZS5jcmVhdGUoJ3BhcmVudDAnLHt0YWc6J2xpJ30pOwo8L3NjcmlwdD4Key9saXRlcmFsfQ==]]></data>
	</file>
	<file>
	  <filename>/templates/restore.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[e2lmICRtZXNzYWdlIT0iIn08c3Ryb25nPnskbWVzc2FnZX08L3N0cm9uZz48YnIgLz57L2lmfQo8ZGl2Pgp7JHN0YXJ0Zm9ybX0KCjxkaXYgY2xhc3M9InF1aXpyb3ciPgp7JHRpdGxlX3Jlc3RvcmVfaGVscH0KPCEtLSB7JHRpdGxlX3Jlc3RvcmVfZGVidWd9IC0tPgo8L2Rpdj4KPGRpdj57JG5ld19xdWl6fSB7JG9sZF9xdWl6fTwvZGl2Pgp7JHF1aXpfaWR9CnskZW5kZm9ybX0KPC9kaXY+Cg==]]></data>
	</file>
	<file>
	  <filename>/templates/scorequiz.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyoKICAgT3RoZXIgdmFyaWFibGVzIGF2YWlsYWJsZToKICAgCiAgIHRvdGFsX3F1ZXN0aW9ucyAtIG51bWJlciBvZiBxdWVzdGlvbnMKICAgdG90YWxfc2NvcmVkIC0gbnVtYmVyIG9mIHF1ZXN0aW9ucyB1c2VkIGZvciBzY29yaW5nIHF1aXoKICAgcXVlc3Rpb25zX3NraXBwZWQgLSBudW1iZXIgb2YgcXVlc3Rpb25zIHRoYXQgd2VyZW4ndCBhbnN3ZXJlZAogICBxdWVzdGlvbnNfYW5zd2VyZWQgLSBudW1iZXIgb2YgcXVlc3Rpb25zIHRoYXQgd2VyZSBhbnN3ZXJlZAogICBwZXJjZW50X2Fuc3dlcmVkIC0gcGVyY2VudGFnZSBvZiB0aGUgcXVlc3Rpb25zIHRoYXQgd2VyZSBhbnN3ZXJlZAogICBwZXJjZW50X3NraXBwZWQgLSBwZXJjZW50YWdlIG9mIHRoZSBxdWVzdGlvbnMgdGhhdCB3ZXJlIG5vdCBhbnN3ZXJlZAogICBzY29yZSAtIG51bWJlciBjb3JyZWN0CiAgIHNjb3JlX3BlcmNlbnQgLSBwZXJjZW50YWdlIGNvcnJlY3QKICAgc2NvcmVfcGVyY2VudF9hbnN3ZXJlZCAtIHBlcmNlbnQgY29ycmVjdCBvZiBub24tc2tpcHBlZCBxdWVzdGlvbnMKICAgcXVpel9uYW1lIC0gbmFtZSBvZiB0aGUgcXVpegogICByZXZpZXdpbmcgLSBlcXVhbHMgIjEiIGlmIHJldmlld2luZyBpbiB0aGUgcXVpeiBhZG1pbgogICAKICAgVGhlcmUncyBhbHNvIHRoZSBxdWVzdGlvbnMgYXJyYXksIGNvbnRhaW5pbmcgYWxsIG9mIHRoZSBxdWVzdGlvbnMKICAgb2YgdGhlIGV4YW0gaW4gYW4gb2JqZWN0IHdpdGggdGhlIGZvbGxvd2luZyBhdHRyaWJ1dGVzOgogICAKICAgcS0+bnVtIC0gcXVlc3Rpb24gbnVtYmVyCiAgIHEtPnF1ZXN0aW9uIC0gdGhlIG9yaWdpbmFsIHRleHQgb2YgdGhlIHF1ZXN0aW9uCiAgIHEtPnF1ZXN0aW9uX3R4dCAtIHRoZSBvcmlnaW5hbCB0ZXh0IG9mIHRoZSBxdWVzdGlvbiB3aXRoIG5vIEhUTUwKICAgcS0+Y29ycmVjdCAtIDEgaWYgdGhlIGFuc3dlciB3YXMgY29ycmVjdCwgMCBvdGhlcndpc2UKICAgcS0+c2tpcHBlZCAtIDEgaWYgdGhlIHF1ZXN0aW9uIHdhcyBza2lwcGVkLCAwIG90aGVyd2lzZQogICBxLT5naXZlbmFuc3dlciAtIGdpdmVuIGFuc3dlcihzKQogICBxLT5naXZlbmFuc3dlcl90eHQgLSBnaXZlbiBhbnN3ZXIocykgd2l0aCBubyBIVE1MLgogICBxLT5jb3JyZWN0YW5zd2VyIC0gdGhlIGNvcnJlY3QgYW5zd2VyKHMpCiAgIHEtPmNvcnJlY3RhbnN3ZXJfdHh0IC0gdGhlIGNvcnJlY3QgYW5zd2VyKHMpIHdpdGggbm8gSFRNTC4KICAgcS0+dHlwZSAtICJtIiBmb3IgbXVsdGlwbGUgY2hvaWNlLCAiZiIgZm9yIGZpbGwgaW4gdGhlIGJsYW5rLAoJCSAgICAgImMiIGZvciBzZWxlY3Qgb25lIG9yIG1vcmUsICJwIiBmb3IgY29udGVudCBwYWdlLAogICAgICAgICAgICAgInMiIGZvciBzZWN0aW9uLCAidCIgZm9yIHRleHQgbGluZQoKICAgCiAgIAoqfQoKe2lmICRyZXZpZXdpbmcgPT0gJzEnfQo8aDM+eyR0YWtlcl9uYW1lfSAmbHQ7eyR0YWtlcl9lbWFpbH0mZ3Q7PC9oMz4Ke2ZvcmVhY2ggZnJvbT0kZXh0cmFzIGl0ZW09ZW50cnl9CjxzdHJvbmc+eyRlbnRyeS5maWVsZF9uYW1lfTo8L3N0cm9uZz4geyRlbnRyeS5odW1hbl92YWx1ZX08YnIgLz4Key9mb3JlYWNofQo8c3Ryb25nPlNjb3JlOiB7JHNjb3JlfSBvZiB7JHRvdGFsX3F1ZXN0aW9uc30gKHskc2NvcmVfcGVyY2VudH0lKTwvc3Ryb25nPjxiciAvPgo8c3Ryb25nPlF1ZXN0aW9ucyBhbnN3ZXJlZDo8L3N0cm9uZz4geyRxdWVzdGlvbnNfYW5zd2VyZWR9ICh7JHBlcmNlbnRfYW5zd2VyZWR9JSk8YnIgLz4KPHN0cm9uZz5RdWVzdGlvbnMgU2tpcHBlZDo8L3N0cm9uZz4geyRxdWVzdGlvbnNfc2tpcHBlZH0gKHskcGVyY2VudF9za2lwcGVkfSUpPGJyIC8+CjxzdHJvbmc+UGVyY2VudGFnZSBvZiBhbnN3ZXJlZCB0aGF0IHdlcmUgY29ycmVjdDo8L3N0cm9uZz4geyRzY29yZV9wZXJjZW50X2Fuc3dlcmVkfSUgcmlnaHQuPGJyIC8+CjxiciAvPgoKe2Vsc2V9Cgo8aDM+eyR0aXRsZV9xdWl6X2NvbXBsZXRlfTwvaDM+CnsqCiAgIFRoZSBuZXh0IGJpdCBpcyBhbiBleGFtcGxlIG9mIHdoYXQgeW91IGNhbiBkbyBpbiBzbWFydHk7IGl0J3MKICAgbm90IGxvY2FsaXplZCwgYnV0IGl0J2QgYmUgZWFzeSBlbm91Z2ggdG8gY2hhbmdlIHRvIGRvIHdoYXQKICAgeW91IHdhbnQuICAgCip9CjxoND5Zb3VyIFJhdGluZzogeyRzY29yZX0gb2YgeyR0b3RhbF9xdWVzdGlvbnN9ICh7JHNjb3JlX3BlcmNlbnR9JSk8L2g0Pgo8aDU+WW91IGFuc3dlcmVkIHskcXVlc3Rpb25zX2Fuc3dlcmVkfSAoeyRwZXJjZW50X2Fuc3dlcmVkfSUpIGFuZCBza2lwcGVkIHskcXVlc3Rpb25zX3NraXBwZWR9ICh7JHBlcmNlbnRfc2tpcHBlZH0lKTwvaDU+CjxoNT5PZiB0aGUgcXVlc3Rpb25zIHlvdSBhbnN3ZXJlZCwgeW91IGdvdCB7JHNjb3JlX3BlcmNlbnRfYW5zd2VyZWR9JSByaWdodC48L2g1Pgo8cD4Ke2lmICRzY29yZV9wZXJjZW50IDwgMjB9CglZb3UgZG9uJ3Qga25vdyBhbnl0aGluZyBhYm91dCBhbnl0aGluZy4Ke2Vsc2VpZiAkc2NvcmVfcGVyY2VudCA+PSAyMCAmJiAkc2NvcmVfcGVyY2VudCA8IDQwfQoJWW91IG1heSBrbm93IHNvbWV0aGluZyBhYm91dCBzb21ldGhpbmcsIGJ1dCBub3QgdGhpcyBzdWJqZWN0Lgp7ZWxzZWlmICRzY29yZV9wZXJjZW50ID49IDQwICYmICRzY29yZV9wZXJjZW50IDwgNjB9CglZb3UgcXVhbGlmeSBhcyBpZ25vcmFtdXMsIGJ1dCBub3QgbXVjaCBtb3JlLgp7ZWxzZWlmICRzY29yZV9wZXJjZW50ID49IDYwICYmICRzY29yZV9wZXJjZW50IDwgODB9CglBIFJlYXNvbmFibGUgRWZmb3J0LiBBdCBiZXN0Lgp7ZWxzZWlmICRzY29yZV9wZXJjZW50ID49IDgwICYmICRzY29yZV9wZXJjZW50IDwgMTAwfQoJV2VsbCBkb25lISBZb3UndmUgZ290IHNvbWUgdGFsZW50Lgp7ZWxzZX0KCVlvdSBhcmUgYXdlIGluc3BpcmluZy4gUGVyZmVjdCEKey9pZn0KPC9wPgp7L2lmfQoKPCEtLSBzb21lIGlubGluZSBzdHlsZXMuIGZlZWwgZnJlZSB0byBhbHRlciB0aGlzIHN0dWZmISAtLT4Ke2xpdGVyYWx9CjxzdHlsZT4KLmNvcnJlY3RfYW5zd2VyIHsgZm9udC13ZWlnaHQ6IGJvbGQ7IH0KLmdpdmVuX2Fuc3dlciB7IGZvbnQtc3R5bGU6IG9ibGlxdWU7IH0KLnF1aXpfY29ycmVjdCB7IGNvbG9yOiAjMzNhYTMzOyB9Ci5xdWl6X2luY29ycmVjdCB7IGNvbG9yOiAjYWEzMzMzOyB9Ci5xdWl6X3NraXBwZWQge2NvbG9yOiAjOTkzMzMzO30KPC9zdHlsZT4Key9saXRlcmFsfQoKCjwhLS0gdGhlIG5leHQgcGFydCBkaXNwbGF5cyBhbGwgdGhlIHF1ZXN0aW9ucywgYW5kIHVzZXIncyByZXNwb25zZSAtLT4KPGg0PnskdGl0bGVfcXVpel9zdW1tYXJ5fTwvaDQ+Cntmb3JlYWNoIGZyb209JHF1ZXN0aW9ucyBpdGVtPWVudHJ5fQp7aWYgJGVudHJ5LT5pc19zY29yZWQgPT0gMX0Ke2lmICRlbnRyeS0+dHlwZSA9PSAncyd9CjxoMj57JGVudHJ5LT5xdWVzdGlvbn08L2gyPgp7ZWxzZWlmICRlbnRyeS0+dHlwZSA9PSAndCd9CjxoMz57JGVudHJ5LT5xdWVzdGlvbn08L2gzPgp7ZWxzZWlmICRlbnRyeS0+dHlwZSA9PSAncCd9CntlbHNlaWYgJGVudHJ5LT50eXBlID09ICdiJ317ZWxzZX0KCTxwPnskZW50cnktPm51bX0pIHskZW50cnktPnF1ZXN0aW9ufTxiciAvPgoJe2lmICRlbnRyeS0+c2tpcHBlZD09MX0KCTxzcGFuIGNsYXNzPSJxdWl6X3NraXBwZWQiPnskdGl0bGVfc2tpcHBlZH08L3NwYW4+PGJyIC8+Cgl7ZWxzZX0KCTxzcGFuIGNsYXNzPSJ7aWYgJGVudHJ5LT5jb3JyZWN0ID09IDF9cXVpel9jb3JyZWN0e2Vsc2V9cXVpel9pbmNvcnJlY3R7L2lmfSI+eyR0aXRsZV95b3VyX2Fuc3dlcn06IHskZW50cnktPmdpdmVuYW5zd2VyfTxiciAvPgoJey9pZn0KCXtpZiAkZW50cnktPmNvcnJlY3QgPT0gMX17JHRpdGxlX2NvcnJlY3R9e2Vsc2V9Cgl7JHRpdGxlX2NvcnJlY3RfYW5zd2VyfTogeyRlbnRyeS0+Y29ycmVjdGFuc3dlcn0KCXsvaWZ9Cgk8L3NwYW4+Cgk8L3A+CnsvaWZ9CnsvaWZ9CnsvZm9yZWFjaH0=]]></data>
	</file>
	<file>
	  <filename>/templates/signup.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[e2lmICRtZXNzYWdlIT0iIn08c3Ryb25nPnskbWVzc2FnZX08L3N0cm9uZz48YnIgLz57L2lmfQo8ZGl2Pgp7JHN0YXJ0Zm9ybX0KPGRpdiBjbGFzcz0icXVpenJvdyI+CjxsYWJlbCBmb3I9Im5hbWUiPnskdGl0bGVfbmFtZX17aWYgJHJlcV91c2VyfSp7L2lmfTo8L2xhYmVsPgp7JGlucHV0X25hbWV9CjwvZGl2PgoKPGRpdiBjbGFzcz0icXVpenJvdyI+CjxsYWJlbCBmb3I9ImVtYWlsIj57JHRpdGxlX2VtYWlsfXtpZiAkcmVxX3VzZXJ9KnsvaWZ9OjwvbGFiZWw+CnskaW5wdXRfZW1haWx9CjwvZGl2PgoKe2ZvcmVhY2ggZnJvbT0kZXh0cmFzIGl0ZW09ZW50cnl9CiAgICAgICAgCTxkaXYgY2xhc3M9InF1aXpyb3ciPgoJCQl7JGVudHJ5LmxhYmVsfXtpZiAkZW50cnkucmVxdWlyZWR9KnsvaWZ9OgoJCQl7JGVudHJ5LmlucHV0fQoJCQk8L2Rpdj4Key9mb3JlYWNofQoKPGRpdiBjbGFzcz0icXVpenJvdyI+CjxsYWJlbCBmb3I9InNlbmRfYV9jb3B5Ij57JHRpdGxlX3NlbmRfYV9jb3B5fTo8L2xhYmVsPgp7JGlucHV0X3NlbmRfYV9jb3B5fQo8L2Rpdj4KCjxkaXYgY2xhc3M9InF1aXpyb3ciPgp7JHF1aXpfaWR9eyR0YWtlcXVpen0KPC9kaXY+CnskZW5kZm9ybX0KPC9kaXY+Cg==]]></data>
	</file>
	<file>
	  <filename>/templates/stdquiz.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogdGhpcyB0ZW1wbGF0ZSBjb250cm9scyB0aGUgZGlzcGxheSBvZiBRdWl6IHBhZ2VzICp9CntpZiAkbWVzc2FnZSE9IiJ9PHN0cm9uZz57JG1lc3NhZ2V9PC9zdHJvbmc+PGJyIC8+ey9pZn0Ke2lmICRyZW1lZGlhbCA9PSAnMCd9CjxwPjxzdHJvbmc+eyRxdWl6emFyZF90YWtlcl9uYW1lfTwvc3Ryb25nPiAoeyRxdWl6emFyZF90YWtlcl9lbWFpbH0pPC9wPgo8cCBjbGFzcz0icGxhY2VfaW5fcXVpeiI+e2lmIGVtcHR5KCRwYWdlbmF2KX17JHBhZ2V4b2Z5fXtlbHNlfXskcGFnZW5hdn17L2lmfTwvcD4Key9pZn0KPGRpdiBjbGFzcz0icXVpeiI+Cnskc3RhcnRmb3JtfQp7Zm9yZWFjaCBmcm9tPSRxdWVzdGlvbnMgaXRlbT1lbnRyeX0Ke2lmICRlbnRyeS0+dHlwZSA9PSAncyd9CjxoMj57JGVudHJ5LT5xdWVzdGlvbn08L2gyPgp7ZWxzZWlmICRlbnRyeS0+dHlwZSA9PSAndCd9CjxoMz57JGVudHJ5LT5xdWVzdGlvbn08L2gzPgp7ZWxzZX0KCTxwIGNsYXNzPSJxdWl6X2l0ZW0iPntpZiAkZW50cnktPm51bSAhPSAiIn17JGVudHJ5LT5udW19KSB7L2lmfTxzcGFuIGNsYXNzPSJxdWVzdGlvbiI+eyRlbnRyeS0+cXVlc3Rpb259PC9zcGFuPntpZiAkcmVtZWRpYWwgPT0gJzEnICYmICRlbnRyeS0+Y29ycmVjdCAhPSAnMSd9eyRxdWVzdGlvbl93cm9uZ317L2lmfTxiciAvPgoJPHNwYW4gY2xhc3M9ImFuc3dlcnMiPgogICB7aWYgJGVudHJ5LT50eXBlID09ICdtJyB8fCAkZW50cnktPnR5cGUgPT0gJ2MnfQoJCXtmb3JlYWNoIGZyb209JGVudHJ5LT5hbnN3ZXJzIGtleT1hbnN3ZXJfbm8gaXRlbT1hbnN3ZXJ9CgkJeyRhbnN3ZXJ9PGJyIC8+CgkJey9mb3JlYWNofQoJey9pZn0KCTwvc3Bhbj4KCTwvcD4Key9pZn0Key9mb3JlYWNofQo8YnIgLz4KeyRoaWRkZW59eyRiYWNrfXskc2F2ZX17aWYgJGxhc3RwYWdlID09IDF9eyRzdWJtaXR9e2Vsc2V9eyRjb250aW51ZX17L2lmfQp7JGVuZGZvcm19CjwvZGl2Pg==]]></data>
	</file>
</module>
