<?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>Glossary</name>
	<version>0.10</version>
  <mincmsversion>1.9.4.2</mincmsversion>
	<help><![CDATA[PGgzPldoYXQgRG9lcyBUaGlzIERvPzwvaDM+CjxwPlRoaXMgYWxsb3dzIHRoZSBhZG1pbmlzdHJhdG9yIHRvIGNyZWF0ZSBhIGxpc3Qgb2YgdGVybXMsIHdoaWNoIHdpbGwgYXBwZWFyIG9uIGEgcGFnZS4gQ2xpY2tpbmcgb24gdGhlIHRlcm0gd2lsbCBleHBhbmQgaXQgdG8gaW5jbHVkZSB0aGUgZGVmaW5pdGlvbi48L3A+CjxoMz5Ib3cgRG8gSSBVc2UgSXQ8L2gzPgo8aDQ+U3RhbmRhcmQgR2xvc3NhcnkgUGFnZTwvaDQ+CjxwPkluc3RhbGwgaXQgYnkgcGxhY2luZyB0aGUgbW9kdWxlIGluIGEgcGFnZSBvciB0ZW1wbGF0ZSB1c2luZyB0aGUgc21hcnR5IHRhZyAmIzEyMztjbXNfbW9kdWxlIG1vZHVsZT0nR2xvc3NhcnknfTwvcD4KPHA+WW91IGNhbiBoYXZlIGl0IHN0YXJ0IHdpdGggYSB0ZXJtIGV4cGFuZGVkIGJ5IHBhc3NpbmcgYSB0ZXJtPVRlcm0gcGFyYW1ldGVyLCBvciBwYXNzaW5nIGEgdGlkPXRlcm1faWQuPC9wPgo8cD5Zb3UgY2FuIGxpbWl0IGl0IHRvIGEgc3BlY2lmaWMgY2F0ZWdvcnkgYnkgcGFzc2luZyBhIGNhdD0iQ2F0ZWdvcnkiIHBhcmFtZXRlci48L3A+CjxwPllvdSBjYW4gb3ZlcnJpZGUgdGhlIGRlZmF1bHQgdGVtcGxhdGUgYnkgcGFzc2luZyBhIHRlbXBsYXRlPSJ0ZW1wbGF0ZV9pZCIgcGFyYW1ldGVyICh1c2UgdGhlIG51bWVyaWMKaWQgZm9yIHRoZSB0ZW1wbGF0ZSwgb3IgdGhlIHRlbXBsYXRlIG5hbWUpLjwvcD4KPHA+WW91IGNhbiBsaW1pdCBpdCB0byBkZWZpbml0aW9ucyBjb250YWluaW5nIGEga2V5d29yZCBieSBwYXNzaW5nIGEga2V5d29yZD0ia2V5d29yZCIuPC9wPgo8cD5UaGlzIG1vZHVsZSBhbHNvIHdpbGwgcmVhZCB0aGUgVVJMLCBhbmQgc3VwcG9ydCBzcGVjaWZpY2F0aW9ucyBvZiAidGVybSIgb3IgImNhdCIgb24gdGhlIFVSTC4gU28sIGZvciBleGFtcGxlLCB5b3UgY291bGQgaGF2ZSBhbiBVUkwgbGlrZSBodHRwOi8vbXlzaXRlL2luZGV4LnBocD9wYWdlPTEwJmFtcDt0ZXJtPW15dGVybS4gSWYgcGFnZSAxMCBpbmNsdWRlcyB0aGUgR2xvc3NhcnkgbW9kdWxlLCBpdCB3aWxsIGV4cGFuZCB0aGUgZGVmaW5pdGlvbiBvZiAibXl0ZXJtIi4KPGg0PkV4cGFuZGluZyBMaXN0czwvaDQ+CjxwPlNvbWV0aW1lcywgeW91IHdpbGwgd2FudCBhIHNob3J0IGxpc3Qgb2YgdGVybXMsIGJ1dCBoYXZlIGNsaWNrcyBvbiB0aG9zZSB0ZXJtcyB0byBsb2FkIGEgZnVsbCBsaXN0LiBGb3IgZXhhbXBsZSwgeW91IG1pZ2h0IHdhbnQgdGhyZWUgcmFuZG9tIHRlcm1zIGluIHRoZSBzaWRlYmFyLCBidXQgY2xpY2tpbmcgb24gdGhvc2UgdGVybXMgc2hvdWxkIHNob3cgdGhlIHNlbGVjdGVkIHRlcm0gaW4gYSBjb21wbGV0ZSB0ZXJtIGxpc3QuIFRvIGRvIHRoaXMsIHNldCB0aGUgIm5vX3Bhc3NfcmVzdHJpY3Rpb24iIHZhcmlhYmxlLjwvcD4KPHA+Rm9yIGV4YW1wbGUsIG9uIHlvdXIgc2lkZWJhciB5b3Ugd2FudCB0aHJlZSByYW5kb20gdGVybXMgZnJvbSBjYXRlZ29yeSAiZm9vIi4gQ2xpY2tpbmcgb24gYSB0ZXJtIHNob3VsZCBzaG93IGEgZnVsbCwgYWxwaGFiZXRpY2FsIGxpc3Qgb2YgY2F0ZWdvcnkgImZvbyIgd2l0aCB0aGUgc3BlY2lmaWMgdGVybSBvcGVuLiBZb3VyIHRhZyBmb3IgdGhlIHNpZGViYXIgd2lsbCB0aGVuIGxvb2sgbGlrZTo8L3A+CjxwPiYjMTIzO2Ntc19tb2R1bGUgbW9kdWxlPSdHbG9zc2FyeScgY2F0PSdmb28nIHNvcnQ9J3JhbmRvbScgdGVybV9jb3VudD0nMycgbm9fcGFzc19yZXN0cmljdGlvbj0nc29ydCx0ZXJtX2NvdW50J308L3A+CjxoND5XWVNJV1lHL1NtYXJ0eTwvaDQ+CjxwPkluIHRoZSBhZG1pbiwgeW91IGNhbiBlbmFibGUgdGhlIFdZU0lXWUcgZWRpdG9yIGZvciB0ZXJtcyBhbmQgdGVybSBkZWZpbml0aW9ucy4gQmVjYXVzZSBvZiB0aGUgd2F5IHRoZSBzeXN0ZW0gdXNlcyB0ZXJtcywgaXQgaXMgbm90IHJlY29tbWVuZGVkCnRvIHVzZSBtYXJrdXAgaW4gdGhlIHRlcm1zIHRoZW1zZWx2ZXMuIElmIHlvdSBpbnNpc3Qgb24gZG9pbmcgaXQgKGFuZCBzb21lIHBlb3BsZSBkbywgaW4gZmFjdCwgaGF2ZSBnb29kIHJlYXNvbnMgdG8gZG8gc28pLCBiZSBhd2FyZSB0aGF0IHNpdGUgZmlsdGVyaW5nIHdpbGwgcHJvYmFibHkgYnJlYWssIGFuZCB0aGUgZ2xvc3NhcnkgcGFnZSBuYXYgbWF5IGJlIG1lc3NlZCB1cC48L3A+CjxwPllvdSBjYW4gYWxzbyBlbmFibGUgc21hcnR5IHByb2Nlc3Npbmcgb24gdGVybSBkZWZpbml0aW9ucy4gVGhpcyB3aWxsIHBlcm1pdCB5b3UgdG8gZG8gYWxsIHNvcnRzIG9mIHdpbGQgc3R1ZmYgbGlrZSBzZWxmLWxpbmtpbmcgYW5kIG90aGVyIHNtYXJ0eSBtYWRuZXNzLiBIZXkgLS0gaWYgeW91IGtub3cgZW5vdWdoIHRvIGdvIG9uIHRoZSBibGFjayBkaWFtb25kIHJ1biwgeW91IGtub3cgdGhlIHJpc2tzISBJIHdpbGwgc2F5IG5vIG1vcmUuPC9wPgo8aDM+TGlua2VkIFRlcm1zPC9oMz4KPGg0Pk92ZXJ2aWV3PC9oND4KPHA+WW91IGNhbiBtYWtlIHRlcm1zIHRoYXQgc2hvdyB1cCBpbiB5b3VyIHBhZ2VzIGxpbmsgdG8gdGhlaXIgZGVmaW5pdGlvbnMsIGVpdGhlciAiaW5saW5lIiAod2hlcmUgaXQgcmVwbGFjZXMgdGhlIGNvbnRlbnQgb2YgeW91ciBwYWdlKSwgb3IgYnkgbGlua2luZyB0byB5b3VyIG1haW4gR2xvc3NhcnkgcGFnZS4gVGhpcyBpcyB0aGUgImlubGluZSIgb3B0aW9uIHdoaWNoIHlvdSBjYW4gc2V0IGluIHRoZSAiR2xvc3NhcnkgTGlua3MgT3B0aW9ucyIgc2VjdGlvbiBvZiB0aGUgR2xvc3NhcnkgQWRtaW4gUHJlZnMuPC9wPgo8cD5Zb3UgY2FuIGFsc28gY2hvb3NlIHRvIGhhdmUgbGlua3MgZ28gdG8gYSBwYWdlIHdpdGggb25seSB0aGUgZGVmaW5pdGlvbiBvZiB5b3VyIHRlcm0sIGFuZCB5b3UgY2FuIGNvbnRyb2wgdGhlIGRpc3BsYXkgb2YgdGhpcyBieSBhbHRlcmluZyB0aGUgdGVtcGxhdGUuIFRoaXMgYWxzbyBzZXQgaW4gIkdsb3NzYXJ5IExpbmtzIE9wdGlvbnMiIHNlY3Rpb24gb2YgdGhlIEdsb3NzYXJ5IEFkbWluIFByZWZzLjwvcD4gCjxoND5TaW5nbGUgVGVybTwvaDQ+CjxwPllvdSBjYW4gdGFnIHNwZWNpZmljIHdvcmRzIHRvIGJlIGxpbmtlZCB0byB0aGUgR2xvc3NhcnkgaWYgeW91IHdhbnQsIGJ5IHBsYWNpbmcgdGhlIGZvbGxvd2luZyB0YWcgaW4gYSBwYWdlOiAmIzEyMztjbXNfbW9kdWxlIG1vZHVsZT0nR2xvc3NhcnknIGFjdGlvbj0nZGVmJyB0ZXJtPSdmb28nfSwgd2hlcmUgeW91IHJlcGxhY2UgImZvbyIgd2l0aCBhIHRlcm0gdGhhdCB5b3UgaGF2ZSBpbiB5b3VyIGdsb3NzYXJ5Lgo8aDQ+VGVybSBSZXBsYWNlbWVudCAvIFNpdGUgRmlsdGVyaW5nPC9oND4KPHA+SWYgeW91IHR1cm4gb24gc2l0ZSBmaWx0ZXJpbmcsIGV2ZXJ5IGluc3RhbmNlIG9mIGVhY2ggb2YgeW91ciB0ZXJtcyB0aGF0IHNob3dzIHVwIG9uIHRoZSBzaXRlIHdpbGwgYmVjb21lIGEgbGluay4gRGVwZW5kaW5nIG9uIHRoZSBtb2RlIHlvdSBjaG9vc2UgaW4gdGhlIGFkbWluLAp0aGlzIHdpbGwgZWl0aGVyIGJlIGEgbGluayB0byB5b3VyIG1haW4gR2xvc3NhcnkgcGFnZSBvciBvcGVuIHRvIHRoZSB0ZXJtIGluIHF1ZXN0aW9uLjwvcD4KPHA+U2l0ZSBmaWx0ZXJpbmcgaXMgYW4gaW50ZW5zaXZlIHByb2Nlc3MsIGFuZCB3aWxsIHNsb3cgeW91ciBzaXRlIGRvd24gc29tZXdoYXQuIFRoZXJlIGlzIGFuIGFsdGVybmF0ZSwgZmFzdGVyIGltcGxlbWVudGF0aW9uIHRoYXQgSSBtYXkgdXNlIHRvIHJlcGxhY2UgdGhlIGV4aXN0aW5nIG9uZSwKaWYgdGhlcmUgYXJlIGVub3VnaCBjb21wbGFpbnRzLiBJdCdzIG1vcmUgY29tcGxpY2F0ZWQsIGFuZCBJJ20gbGF6eSwgYnV0IGdpdmVuIHN1ZmZpY2llbnQgZGVtYW5kLCBJJ2xsIGZpeCBpdC48L3A+CjxoMz5DcmVkaXRzPC9oMz4KPHA+RGV2ZWxvcG1lbnQgb2YgdGhpcyBtb2R1bGUgaGFzIGJlZW4gZ2VuZXJvdXNseSBzcG9uc29yZWQgYnkgTWF0dCBIb3Juc2J5LjwvcD4KPHA+RXh0ZW5zaXZlIHRlc3RpbmcsIFFBLCBpZGVhcywgYW5kIG5vbi1uZWdvdGlhYmxlIGRlbWFuZHMgcHJvdmlkZWQgYnkgUGF1bCAiSW5TaVBpRCIgTm9vbmUgYW5kIERhbmllbCAiV2VzdGlzIiBXZXN0ZXJncmVuLjwvcD4KPGgzPlN1cHBvcnQ8L2gzPgo8cD5UaGlzIG1vZHVsZSBkb2VzIG5vdCBpbmNsdWRlIGNvbW1lcmNpYWwgc3VwcG9ydC4gSG93ZXZlciwgdGhlcmUgYXJlIGEgbnVtYmVyIG9mIHJlc291cmNlcyBhdmFpbGFibGUgdG8gaGVscCB5b3Ugd2l0aCBpdDo8L3A+Cjx1bD4KPGxpPkZvciB0aGUgbGF0ZXN0IHZlcnNpb24gb2YgdGhpcyBtb2R1bGUsIEZBUXMsIG9yIHRvIGZpbGUgYSBCdWcgUmVwb3J0LCBwbGVhc2UgdmlzaXQgdGhlCm1vZHVsZSBob21lcGFnZSBhdCA8YSBocmVmPSJodHRwOi8vZGV2LmNtc21hZGVzaW1wbGUub3JnL3Byb2plY3RzL2dsb3NzYXJ5LyI+dGhlIENNUyBEZXZlbG9wZXIgRm9yZ2U8L2E+LjwvbGk+CjxsaT5BZGRpdGlvbmFsIGRpc2N1c3Npb24gb2YgdGhpcyBtb2R1bGUgbWF5IGFsc28gYmUgZm91bmQgaW4gdGhlIDxhIGhyZWY9Imh0dHA6Ly9mb3J1bS5jbXNtYWRlc2ltcGxlLm9yZyI+Q01TIE1hZGUgU2ltcGxlIEZvcnVtczwvYT4uPC9saT4KPGxpPlRoZSBhdXRob3IsIFNqRywgY2FuIG9mdGVuIGJlIGZvdW5kIGluIHRoZSA8YSBocmVmPSJpcmM6Ly9pcmMuZnJlZW5vZGUubmV0LyNjbXMiPkNNUyBJUkMgQ2hhbm5lbDwvYT4uPC9saT4KPGxpPkxhc3RseSwgeW91IG1heSBoYXZlIHNvbWUgc3VjY2VzcyBlbWFpbGluZyB0aGUgYXV0aG9yIGRpcmVjdGx5LjwvbGk+CjwvdWw+CjxwPkFzIHBlciB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIHByb3ZpZGVkIGFzLWlzLiBQbGVhc2UgcmVhZCB0aGUgdGV4dApvZiB0aGUgbGljZW5zZSBmb3IgdGhlIGZ1bGwgZGlzY2xhaW1lci48L3A+Cgo8aDM+Q29weXJpZ2h0IGFuZCBMaWNlbnNlPC9oMz4KPHA+Q29weXJpZ2h0ICZjb3B5OyAyMDA2LCBTYW11ZWwgR29sZHN0ZWluIDxhIGhyZWY9Im1haWx0bzpzamdAY21zbW9kdWxlcy5jb20iPiZsdDtzamdAY21zbW9kdWxlcy5jb20mZ3Q7PC9hPi4gQWxsIFJpZ2h0cyBBcmUgUmVzZXJ2ZWQuPC9wPgo8cD5UaGlzIG1vZHVsZSBoYXMgYmVlbiByZWxlYXNlZCB1bmRlciB0aGUgPGEgaHJlZj0iaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMIj5HTlUgUHVibGljIExpY2Vuc2U8L2E+LiBZb3UgbXVzdCBhZ3JlZSB0byB0aGlzIGxpY2Vuc2UgYmVmb3JlIHVzaW5nIHRoZSBtb2R1bGUuPC9wPgo8aDM+UGFyYW1ldGVyczwvaDM+PHVsPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGxhbmc9ImVuX1VTIiAtIFBhcmFtZXRlciBpcyB1c2VkIHRvIHNwZWNpZnkgd2hhdCBsYW5ndWFnZSB0byB1c2UgZm9yIGRpc3BsYXkgb24gdGhlIGZyb250ZW5kLiBOb3QgYWxsIG1vZHVsZXMgc3VwcG9ydCBvciBuZWVkIHRoaXMuPC9saT48bGk+PGVtPihvcHRpb25hbCk8L2VtPiBnbG9zc2FyeXNpbmc9IiIgLSA8L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IHRpZD0iIiAtIFRlcm0gSUQgdG8gaGlnaGxpZ2h0L2VtcGhhc2l6ZS48L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGNhdGlkPSIiIC0gUmVzdHJpY3QgbGlzdCB0byB0ZXJtcyBpbiBjYXRlZ29yeSBJRCAiY2F0aWQiLjwvbGk+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gc3RhcnQ9IiIgLSBPZmZzZXQgaW4gbGlzdCB0byBzdGFydCBsaXN0aW5nIHRlcm1zLjwvbGk+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gdGVybT0iIiAtIFRlcm0gdG8gaGlnaGxpZ2h0L2VtcGhhc2l6ZS48L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGNhdD0iIiAtIFJlc3RyaWN0IGxpc3QgdG8gdGVybXMgaW4gY2F0ZWdvcnkgImNhdCIuPC9saT48bGk+PGVtPihvcHRpb25hbCk8L2VtPiB0ZW1wbGF0ZT0iIiAtIFRlbXBsYXRlIG5hbWUgb3IgSUQgdG8gdXNlIHRvIGZvcm1hdCB0ZXJtcy48L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IHRlcm1fY291bnQ9IiIgLSBOdW1iZXIgb2YgdGVybXMgdG8gc2hvdyBvbiBhIHBhZ2UgKG92ZXJyaWRlcyBkZWZhdWx0IHNldHRpbmcgZnJvbSBhZG1pbikuPC9saT48bGk+PGVtPihvcHRpb25hbCk8L2VtPiBzaG93X25hdj0iIiAtIFNldCB0byAwIHRvIGhpZGUgdGhlIHBhZ2luYXRpb24gbmF2LjwvbGk+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gbm9fcGFzc19yZXN0cmljdGlvbj0iIiAtIC0tQWRkIE1lIC0gbW9kdWxlOkdsb3NzYXJ5IHN0cmluZzpoZWxwX2dsb3NzYXJ5X25vX3Bhc3NfcmVzdHJpY3Rpb24tLTwvbGk+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gYWNjZXB0PSIiIC0gLS1BZGQgTWUgLSBtb2R1bGU6R2xvc3Nhcnkgc3RyaW5nOmhlbHBfZ2xvc3Nhcnlfbm9fcGFzc19yZXN0cmljdGlvbi0tPC9saT48bGk+PGVtPihvcHRpb25hbCk8L2VtPiB0YXJnZXQ9IiIgLSBQYWdlIGFsaWFzIHRvIHRhcmdldCB0byBkaXNwbGF5IHRlcm1zPC9saT48bGk+PGVtPihvcHRpb25hbCk8L2VtPiBrZXl3b3JkPSIiIC0gUmVzdHJpY3QgdG8gdGVybXMgd2hvc2UgZGVmaW5pdGlvbnMgY29udGFpbiAia2V5d29yZCIuPC9saT48bGk+PGVtPihvcHRpb25hbCk8L2VtPiBzb3J0PSJhbHBoYSIgLSBTb3J0IG9yZGVyOiBjdXJyZW50bHkgb25seSBzdXBwb3J0cyAiYWxwaGEiLCAicmFuZG9tIiBhbmQgImNyZWF0ZV9kYXRlIi48L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGdsb3NzYXJ5PSIiIC0gPC9saT48L3VsPg==]]></help>
	<about><![CDATA[PGJyIC8+QXV0aG9yOiBTakcgJmx0O3NqZ0BjbXNtb2R1bGVzLmNvbSZndDs8YnIgLz48YnIgLz5WZXJzaW9uOiAwLjEwPGJyIC8+PGJyIC8+Q2hhbmdlIEhpc3Rvcnk6PGJyIC8+PHVsPgo8bGk+VmVyc2lvbiAwLjYuOCwgIEp1bHkgMjAwOS4gQnVnIGZpeGVzLCBtZXJnZWQgaW4gbXVsdGlieXRlIGZpeGVzIHByb3ZpZGVkIGJ5IFNvbnlhLiBNaWdodCB3b3JrIGJldHRlciBmb3IgcGVvcGxlIHVzaW5nIGNoYXJhY3RlciBzZXRzIG91dHNpZGUgb2YgdGhlIGFuY2llbnQgQVNDSUkgcmFuZ2UuPC9saT4KPGxpPlZlcnNpb24gMC42LjcsICBKdW5lIDIwMDkuIEJ1ZyBmaXhlcy48L2xpPgo8bGk+VmVyc2lvbiAwLjYuNiwgIEphbnVhcnkgMjAwOS4gQnVnIGZpeGVzLCBjb2RlIHJlZmFjdG9yaW5nLCBhZGRlZCAicmFuZG9tIiBhY3Rpb24sIG9wdGlvbiB0byBhbGxvdyBzbWFydHkgdGFncyBpbiBkZWZpbml0aW9ucywgb3B0aW9ucyBmb3IgV1lTSVdZRy48L2xpPgo8bGk+VmVyc2lvbiAwLjYuNSwgIEphbnVhcnkgMjAwOS4gQnVnIGZpeGVzLCBub3cgYWxsb3dzIHRlcGxhdGUgc3BlY2lmaWNhdGlvbiB0byBiZSBuYW1lIG9yIGlkLjwvbGk+CjxsaT5WZXJzaW9uIDAuNi40LCAgU2VwdGVtYmVyIDIwMDguICBBZGRzIGdsb3NzYXJ5IHRlcm1zIHRvIHRoZSBzZWFyY2hhYmxlIGNvbnRlbnQuICBCdW1wIG1pbmltdW0gY21zIHZlcnNpb24gdG8gMS40LjE8L2xpPgo8bGk+VmVyc2lvbiAwLjYuMywgIE1hcmNoIDIwMDguICBBZGRzIHRoZSBhYmlsaXR5IHRvIGRpc2FibGUgcHJldHR5IHVybHMgZm9yIHRoaXMgbW9kdWxlLiAgQnVtcCBtaW5pbXVtIGNtcyB2ZXJzaW9uIHRvIDEuMjwvbGk+CjxsaT5WZXJzaW9uIDAuNi4yLiAgRGVjZW1iZXIgMjAwNy4gIEZpeGVzIGEgYnVnIGluIHByZWZlcmVuY2VzIHJlbGF0ZWQgdG8gaW5saW5lL25vbiBpbmxpbmUsIGJ1bXBzIG1pbmltdW0gY21zIHZlcnNpb24sIEFkZHMgdGhlIFJlZ2lzdGVyTW9kdWxlUGx1Z2luIGNhbGwuPC9saT4KPGxpPlZlcnNpb24gMC42LjEuICBOb3ZlbWJlciAyMDA3LiAgQWRkcyBmdW5jdGlvbmFsaXR5IHNvIHRoYXQgY29udGVudCBuZXZlciByZXR1cm5zIGVtcHR5PC9saT4KPGxpPlZlcnNpb24gMC42LiBOb3ZlbWJlciAyMDA3LiAgQWRkcyBhIGJ1dHRvbiB0byBmaWx0ZXIgY29udGVudCBhbmQgbmV3cyBvbiBkZW1hbmQsIHNwbGl0cyBpdCBvdXQgaW50byBtdWx0aXBsZSBmaWxlcyBmb3IgcmVkdWNlZCBtZW1vcnkgZm9vdHByaW50LjwvbGk+CjxsaT5WZXJzaW9uIDAuNS4xLiAyOCBNYXIgMjAwNy4gIFVybHMgbm93IHZhbGlkYXRlLiBUaGVyZSB5YSBnbywgTXIuIEluU2lQaUQuPC9saT4KPGxpPlZlcnNpb24gMC41LiA4IE5vdmVtYmVyIDIwMDYuIFJlbW92ZWQgcG9wLXVwIHdpbmRvdyBsaW5rcywgYWRkZWQgaW5saW5lIGRpc3BsYXksIGFuZCBjYXRlZ29yeSBmaWx0ZXJpbmcgLyByZXF1ZXN0ZWQgZmVhdHVyZXMgZm9yIEluU2lQaUQuPC9saT4KPGxpPlZlcnNpb24gMC40LiA3IE5vdmVtYmVyIDIwMDYuIFVwZGF0ZWQgZm9yIENNUyBNUyAxLjAueCwgYWRkZWQgZmVhdHVyZXMgZm9yIEluU2lQaUQuPC9saT4KPGxpPlZlcnNpb24gMC4zLiAyNCBPY3RvYmVyIDIwMDUuIEJ1ZyBmaXhlcywgbmV3IGRlZmF1bHQgdGVtcGxhdGUsIG1vcmUgQWRtaW4gY29uZmlndXJhdGlvbiBvcHRpb25zLjwvbGk+CjxsaT5WZXJzaW9uIDAuMi4gMjAgT2N0b2JlciAyMDA1LiBJbml0aWFsIFB1YmxpYyBSZWxlYXNlLjwvbGk+PC91bD48YnIgLz4=]]></about>
	<description><![CDATA[This module allows you to create a list of terms and definitions for display. A term may be a word, a frequently asked question, or anything similar.]]></description>
	<file>
	  <filename>/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/._action.def.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[AAUWBwACAABNYWMgT1MgWCAgICAgICAgAAIAAAAJAAAAMgAAAIkAAAACAAAAuwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQVRUUgBkIt0AAAC7AAAAmAAAACMAAAAAAAAAAAAAAAAAAAABAAAAmAAAACMAABVjb20ubWFjcm9tYXRlcy5jYXJldAB7CiAgICBjb2x1bW4gPSAyOTsKICAgIGxpbmUgPSAzNzsKfQ==]]></data>
	</file>
	<file>
	  <filename>/._action.default.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[AAUWBwACAABNYWMgT1MgWCAgICAgICAgAAIAAAAJAAAAMgAAAIkAAAACAAAAuwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQVRUUgBkIt4AAAC7AAAAmAAAACMAAAAAAAAAAAAAAAAAAAABAAAAmAAAACMAABVjb20ubWFjcm9tYXRlcy5jYXJldAB7CiAgICBjb2x1bW4gPSAxOTsKICAgIGxpbmUgPSA2NDsKfQ==]]></data>
	</file>
	<file>
	  <filename>/._action.random.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[AAUWBwACAABNYWMgT1MgWCAgICAgICAgAAIAAAAJAAAAMgAAAIgAAAACAAAAugAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQVRUUgBkIt8AAAC6AAAAmAAAACIAAAAAAAAAAAAAAAAAAAABAAAAmAAAACIAABVjb20ubWFjcm9tYXRlcy5jYXJldAB7CiAgICBjb2x1bW4gPSAxOwogICAgbGluZSA9IDMwOwp9]]></data>
	</file>
	<file>
	  <filename>/._action.showsingle.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[AAUWBwACAABNYWMgT1MgWCAgICAgICAgAAIAAAAJAAAAMgAAAIkAAAACAAAAuwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQVRUUgBkIuAAAAC7AAAAmAAAACMAAAAAAAAAAAAAAAAAAAABAAAAmAAAACMAABVjb20ubWFjcm9tYXRlcy5jYXJldAB7CiAgICBjb2x1bW4gPSAzMDsKICAgIGxpbmUgPSAzOTsKfQ==]]></data>
	</file>
	<file>
	  <filename>/._Glossary.module.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[AAUWBwACAABNYWMgT1MgWCAgICAgICAgAAIAAAAJAAAAMgAAAIoAAAACAAAAvAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQVRUUgBkIuIAAAC8AAAAmAAAACQAAAAAAAAAAAAAAAAAAAABAAAAmAAAACQAABVjb20ubWFjcm9tYXRlcy5jYXJldAB7CiAgICBjb2x1bW4gPSAwOwogICAgbGluZSA9IDE0Nzk7Cn0=]]></data>
	</file>
	<file>
	  <filename>/._method.install.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[AAUWBwACAABNYWMgT1MgWCAgICAgICAgAAIAAAAJAAAAMgAAAIYAAAACAAAAuAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQVRUUgBkIysAAAC4AAAAmAAAACAAAAAAAAAAAAAAAAAAAAABAAAAmAAAACAAABVjb20ubWFjcm9tYXRlcy5jYXJldAB4nKvmUgCC5Pyc0tw8BVsFA2swPyczLxXCqwUAi5kIHQ==]]></data>
	</file>
	<file>
	  <filename>/action.def.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEdsb3NzYXJ5IC8gRGljdGlvbmFyeSAvIEZBUSBtb2R1bGUKIyBWZXJzaW9uOiAwLjYuNiwgU2pHCiMgaHR0cDovL2Rldi5jbXNtYWRlc2ltcGxlLm9yZy9wcm9qZWN0cy9nbG9zc2FyeQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwOSBieSBUZWQgS3VscCAodGVkQGNtc21hZGVzaW1wbGUub3JnKQojIGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCiRkYiA9IGNtc21zKCktPkdldERiKCk7CgogICAgaWYgKGlzc2V0KCRwYXJhbXNbJ3Rlcm0nXSkgfHwgaXNzZXQoJF9SRVFVRVNUWyd0ZXJtJ10pKQogICAgICB7CglpZiAoaXNzZXQoJHBhcmFtc1sndGVybSddKSkKCSAgewoJICAgICR0ZXJtID0gJHBhcmFtc1sndGVybSddOwoJICB9CgllbHNlCgkgIHsKCSAgICAkdGVybSA9ICRfUkVRVUVTVFsndGVybSddOwoJICB9CiAgICAgIH0KCiAgICBpZiAoaXNzZXQoJHRlcm0pKQogICAgICB7CgkkcXVlcnkgPSAiU0VMRUNUIHRlcm1faWQsIHRlcm0sIGRlZmluaXRpb24gRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4KCSAgJ21vZHVsZV9nbG9zc2FyeV90ZXJtIFdIRVJFIHRlcm09Pyc7CgkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgkdGVybSkpOwogICAgICB9CiAgICBpZiAoJGRicmVzdWx0ICE9PSBmYWxzZSAmJiAkcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdygpKQogICAgICB7CgkkdGFyZyA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdnbG9zc2FyeV9wYWdlJywnJyk7CgkkaW5saW5lID0gKCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdnbG9zc2FyeV9pbmxpbmUnLCcwJykgPT0gJzEnKTsKCSRzaG93X3NpbmdsZSA9ICgkdGhpcy0+R2V0UHJlZmVyZW5jZSgnc2hvd19zaW5nbGUnLCcwJykgPT0gJzEnKTsKCWVjaG8gJHRoaXMtPkNyZWF0ZVRlcm1MaW5rKCRyb3dbJ3Rlcm0nXSwgJHJvd1sndGVybSddLCAkcm93Wyd0ZXJtX2lkJ10sCgkJCQkgICAkcm93WydkZWZpbml0aW9uJ10sICRpbmxpbmUsICR0YXJnLCAkc2hvd19zaW5nbGUsIGlzc2V0KCRwYXJhbXNbJ2NhdCddKT8kcGFyYW1zWydjYXQnXTonJyk7CiAgICAgIH0KICAgIGVsc2UKICAgICAgewoJZWNobyAiPCEtLSIuJHRoaXMtPkxhbmcoInVua25vd25fdGVybSIsJHRlcm0pLiItLT4iOwogICAgICB9CgojIEVPRgo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/action.default.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEdsb3NzYXJ5IC8gRGljdGlvbmFyeSAvIEZBUSBtb2R1bGUKIyBWZXJzaW9uOiAwLjYuNiwgU2pHCiMgaHR0cDovL2Rldi5jbXNtYWRlc2ltcGxlLm9yZy9wcm9qZWN0cy9nbG9zc2FyeQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwOSBieSBUZWQgS3VscCAodGVkQGNtc21hZGVzaW1wbGUub3JnKQojIGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKICAgZ2xvYmFsICRnQ21zOwogICAkZGIgPSBjbXNtcygpLT5HZXREYigpOwoKICAgJHRoaXMtPlNtYXJ0eVRlcm1MaXN0KCRwYXJhbXMsJGlkLCRyZXR1cm5pZCk7CiAgICAvLyBEaXNwbGF5IHRoZSBwb3B1bGF0ZWQgdGVtcGxhdGUKICAgIGlmIChpc3NldCgkcGFyYW1zWyd0ZW1wbGF0ZSddKSkKICAgICAgewogICAgICBpZiAoISBpc19udW1lcmljKCRwYXJhbXNbJ3RlbXBsYXRlJ10pKQogICAgICAgICB7CiAgICAgICAgICRxdWVyeSA9ICJTRUxFQ1QgdGVtcGxhdGVfaWQgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4KCSAgICAgICAgJ21vZHVsZV9nbG9zc2FyeV90ZW1wbGF0ZSBXSEVSRSBuYW1lPT8nOwoJICAgICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkcGFyYW1zWyd0ZW1wbGF0ZSddKSk7CiAgICAgICAgIGlmICgkZGJyZXN1bHQgIT09IGZhbHNlICYmICRyb3cgPSAkZGJyZXN1bHQtPkZldGNoUm93KCkpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgJHBhcmFtc1sndGVtcGxhdGUnXSA9ICRyb3dbJ3RlbXBsYXRlX2lkJ107CiAgICAgICAgICAgIH0KICAgICAgICAgfQogICAgICAkc3RyID0gJ2dsb3NzYXJ5XycuJHBhcmFtc1sndGVtcGxhdGUnXTsKCSAgZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlRnJvbURhdGFiYXNlKCRzdHIpOwogICAgICB9CiAgICBlbHNlCiAgICAgIHsKICAgICAgJGRlZmF1bHRUZW1wbGF0ZSA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdkZWZhdWx0X3RlbXBsYXRlJywnJyk7CiAgICAgIGVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhYmFzZSgnZ2xvc3NhcnlfJy4kZGVmYXVsdFRlbXBsYXRlKTsKICAgICAgfSAgICAgICAgCgojIEVPRgo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/action.random.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEdsb3NzYXJ5IC8gRGljdGlvbmFyeSAvIEZBUSBtb2R1bGUKIyBWZXJzaW9uOiAwLjYuNiwgU2pHCiMgaHR0cDovL2Rldi5jbXNtYWRlc2ltcGxlLm9yZy9wcm9qZWN0cy9nbG9zc2FyeQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwOSBieSBUZWQgS3VscCAodGVkQGNtc21hZGVzaW1wbGUub3JnKQojIGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCiAgICAkZGIgPSBjbXNtcygpLT5HZXREYigpOwoKCSRwYXJhbXNbJ3NvcnQnXT0ncmFuZG9tJzsKICAJJHRoaXMtPlNtYXJ0eVRlcm1MaXN0KCRwYXJhbXMsJGlkLCRyZXR1cm5pZCk7CgogICAgaWYgKGlzc2V0KCRwYXJhbXNbJ3RlbXBsYXRlJ10pKQogICAgICB7CiAgICAgIGlmICghIGlzX251bWVyaWMoJHBhcmFtc1sndGVtcGxhdGUnXSkpCiAgICAgICAgIHsKICAgICAgICAgJHF1ZXJ5ID0gIlNFTEVDVCB0ZW1wbGF0ZV9pZCBGUk9NICIuY21zX2RiX3ByZWZpeCgpLgoJICAgICAgICAnbW9kdWxlX2dsb3NzYXJ5X3RlbXBsYXRlIFdIRVJFIG5hbWU9Pyc7CgkgICAgICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KCRwYXJhbXNbJ3RlbXBsYXRlJ10pKTsKICAgICAgICAgaWYgKCRkYnJlc3VsdCAhPT0gZmFsc2UgJiYgJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKSkKICAgICAgICAgICAgewogICAgICAgICAgICAkcGFyYW1zWyd0ZW1wbGF0ZSddID0gJHJvd1sndGVtcGxhdGVfaWQnXTsKICAgICAgICAgICAgfQogICAgICAgICB9CiAgICAgICRzdHIgPSAnZ2xvc3NhcnlfJy4kcGFyYW1zWyd0ZW1wbGF0ZSddOwoJICAgZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlRnJvbURhdGFiYXNlKCRzdHIpOwogICAgICB9CiAgICBlbHNlCiAgICAgIHsKICAgICAgJGRlZmF1bHRUZW1wbGF0ZSA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdkZWZhdWx0X3RlbXBsYXRlJywnJyk7CiAgICAgIGVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhYmFzZSgnZ2xvc3NhcnlfJy4kZGVmYXVsdFRlbXBsYXRlKTsKICAgICAgfQoKIyBFT0YKPz4K]]></data>
	</file>
	<file>
	  <filename>/action.showsingle.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEdsb3NzYXJ5IC8gRGljdGlvbmFyeSAvIEZBUSBtb2R1bGUKIyBWZXJzaW9uOiAwLjYuNiwgU2pHCiMgaHR0cDovL2Rldi5jbXNtYWRlc2ltcGxlLm9yZy9wcm9qZWN0cy9nbG9zc2FyeQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwOSBieSBUZWQgS3VscCAodGVkQGNtc21hZGVzaW1wbGUub3JnKQojIGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCiRkYiA9IGNtc21zKCktPkdldERiKCk7CgogICAgaWYgKGlzc2V0KCRwYXJhbXNbJ3RpZCddKSB8fCBpc3NldCgkX1JFUVVFU1RbJ3RpZCddKSkKICAgICAgewoJaWYgKGlzc2V0KCRwYXJhbXNbJ3RpZCddKSkKCSAgewoJICAgICR0aWQgPSAkcGFyYW1zWyd0aWQnXTsKCSAgfQoJZWxzZQoJICB7CgkgICAgJHRpZCA9ICRfUkVRVUVTVFsndGlkJ107CgkgIH0KICAgICAgfQogICAgaWYgKGlzc2V0KCRwYXJhbXNbJ3Rlcm0nXSkgfHwgaXNzZXQoJF9SRVFVRVNUWyd0ZXJtJ10pKQogICAgICB7CglpZiAoaXNzZXQoJHBhcmFtc1sndGVybSddKSkKCSAgewoJICAgICR0ZXJtID0gJHBhcmFtc1sndGVybSddOwoJICB9CgllbHNlCgkgIHsKCSAgICAkdGVybSA9ICRfUkVRVUVTVFsndGVybSddOwoJICB9CiAgICAgIH0KCiAgICBpZiAoaXNzZXQoJHRpZCkpCiAgICAgIHsKCSRxdWVyeSA9ICJTRUxFQ1QgdGVybV9pZCwgdGVybSwgZGVmaW5pdGlvbiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLgoJICAnbW9kdWxlX2dsb3NzYXJ5X3Rlcm0gV0hFUkUgdGVybV9pZD0/JzsKCSRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksIGFycmF5KCR0aWQpKTsKICAgICAgfQogICAgZWxzZSBpZiAoaXNzZXQoJHRlcm0pKQogICAgICB7CgkkcXVlcnkgPSAiU0VMRUNUIHRlcm1faWQsIHRlcm0sIGRlZmluaXRpb24gRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4KCSAgJ21vZHVsZV9nbG9zc2FyeV90ZXJtIFdIRVJFIHRlcm09Pyc7CgkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgkdGVybSkpOwogICAgICB9CiAgICBpZiAoJGRicmVzdWx0ICE9PSBmYWxzZSAmJiAkcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdygpKQogICAgICB7CgkkdGhpcy0+c21hcnR5LT5hc3NpZ25fYnlfcmVmKCd0ZXJtX2lkJywgJHJvd1sndGVybV9pZCddKTsKCSR0aGlzLT5zbWFydHktPmFzc2lnbl9ieV9yZWYoJ3Rlcm0nLCAkcm93Wyd0ZXJtJ10pOwoJaWYgKCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdwcm9jZXNzX3NtYXJ0eScsJycpID09ICd5ZXMnKQogICAgICB7CiAgICAgICRkZWYgPSAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlRnJvbURhdGEoJHJvd1snZGVmaW5pdGlvbiddKTsKICAgICAgfQogICBlbHNlCiAgICAgIHsKICAgICAgJGRlZiA9ICRyb3dbJ2RlZmluaXRpb24nXTsKICAgICAgfQoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduX2J5X3JlZignZGVmaW5pdGlvbicsICRkZWYpOwoJJHZhcmlhYmxlcyA9ICYkdGhpcy0+Y21zLT52YXJpYWJsZXM7CgoJaWYgKGlzc2V0KCRwYXJhbXNbJ3RlbXBsYXRlJ10pKQoJICB7CgkgICAgZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlRnJvbURhdGFiYXNlKCdnbG9zc2FyeV8nLiRwYXJhbXNbJ3RlbXBsYXRlJ10pOwoJICB9CgllbHNlCgkgIHsKCSAgICAkZGVmYXVsdFRlbXBsYXRlID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ2RlZmF1bHRfc2luZ2xlX3Rlcm1fdGVtcGxhdGUnLCcnKTsKCSAgICBlY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGVGcm9tRGF0YWJhc2UoJ2dsb3NzYXJ5XycuJGRlZmF1bHRUZW1wbGF0ZSk7CgkgIH0KICAgICAgfQoKIyBFT0YKPz4K]]></data>
	</file>
	<file>
	  <filename>/action.showsingle.php.old</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEdsb3NzYXJ5IC8gRGljdGlvbmFyeSAvIEZBUSBtb2R1bGUKIyBWZXJzaW9uOiAwLjYuNiwgU2pHCiMgaHR0cDovL2Rldi5jbXNtYWRlc2ltcGxlLm9yZy9wcm9qZWN0cy9nbG9zc2FyeQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwOSBieSBUZWQgS3VscCAodGVkQGNtc21hZGVzaW1wbGUub3JnKQojIGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKZ2xvYmFsICRnQ21zOwokZGIgPSAmJHRoaXMtPkdldERiKCk7CgppZiAoIWlzc2V0KCRwYXJhbXNbJ3RlbXBsYXRlJ10pKQogIHsKICAgICRwYXJhbXNbJ3RlbXBsYXRlJ10gPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZGVmYXVsdF9zaW5nbGVfdGVybV90ZW1wbGF0ZScsJycpOwogIH0KaWYgKCFpc3NldCgkcGFyYW1zWyd0YXJnZXQnXSkpCgl7CgkkcGFyYW1zWyd0YXJnZXQnXSA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdnbG9zc2FyeV9wYWdlJywnJyk7Cgl9CiRwYXJhbXNbJ3Rlcm1fY291bnQnXSA9IDE7CgokcGFyYW1zWydzaG93X3NpbmdsZSddID0gdHJ1ZTsKJHRoaXMtPkRvQWN0aW9uKCdkZWZhdWx0JywgJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQpOwoKLyoKICAgIGlmIChpc3NldCgkcGFyYW1zWyd0aWQnXSkgfHwgaXNzZXQoJF9SRVFVRVNUWyd0aWQnXSkpCiAgICAgIHsKCWlmIChpc3NldCgkcGFyYW1zWyd0aWQnXSkpCgkgIHsKCSAgICAkdGlkID0gJHBhcmFtc1sndGlkJ107CgkgIH0KCWVsc2UKCSAgewoJICAgICR0aWQgPSAkX1JFUVVFU1RbJ3RpZCddOwoJICB9CiAgICAgIH0KICAgIGlmIChpc3NldCgkcGFyYW1zWyd0ZXJtJ10pIHx8IGlzc2V0KCRfUkVRVUVTVFsndGVybSddKSkKICAgICAgewoJaWYgKGlzc2V0KCRwYXJhbXNbJ3Rlcm0nXSkpCgkgIHsKCSAgICAkdGVybSA9ICRwYXJhbXNbJ3Rlcm0nXTsKCSAgfQoJZWxzZQoJICB7CgkgICAgJHRlcm0gPSAkX1JFUVVFU1RbJ3Rlcm0nXTsKCSAgfQogICAgICB9CgogICAgaWYgKGlzc2V0KCR0aWQpKQogICAgICB7CgkkcXVlcnkgPSAiU0VMRUNUIHRlcm1faWQsIHRlcm0sIGRlZmluaXRpb24gRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4KCSAgJ21vZHVsZV9nbG9zc2FyeV90ZXJtIFdIRVJFIHRlcm1faWQ9Pyc7CgkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgkdGlkKSk7CiAgICAgIH0KICAgIGVsc2UgaWYgKGlzc2V0KCR0ZXJtKSkKICAgICAgewoJJHF1ZXJ5ID0gIlNFTEVDVCB0ZXJtX2lkLCB0ZXJtLCBkZWZpbml0aW9uIEZST00gIi5jbXNfZGJfcHJlZml4KCkuCgkgICdtb2R1bGVfZ2xvc3NhcnlfdGVybSBXSEVSRSB0ZXJtPT8nOwoJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSwgYXJyYXkoJHRlcm0pKTsKICAgICAgfQogICAgaWYgKCRkYnJlc3VsdCAhPT0gZmFsc2UgJiYgJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKSkKICAgICAgewoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduX2J5X3JlZigndGVybV9pZCcsICRyb3dbJ3Rlcm1faWQnXSk7CgkkdGhpcy0+c21hcnR5LT5hc3NpZ25fYnlfcmVmKCd0ZXJtJywgJHJvd1sndGVybSddKTsKCWlmICgkdGhpcy0+R2V0UHJlZmVyZW5jZSgncHJvY2Vzc19zbWFydHknLCcnKSA9PSAneWVzJykKICAgICAgewogICAgICAkZGVmID0gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhKCRyb3dbJ2RlZmluaXRpb24nXSk7CiAgICAgIH0KICAgZWxzZQogICAgICB7CiAgICAgICRkZWYgPSAkcm93WydkZWZpbml0aW9uJ107CiAgICAgIH0KCSR0aGlzLT5zbWFydHktPmFzc2lnbl9ieV9yZWYoJ2RlZmluaXRpb24nLCAkZGVmKTsKCSR2YXJpYWJsZXMgPSAmJHRoaXMtPmNtcy0+dmFyaWFibGVzOwoKCWlmIChpc3NldCgkcGFyYW1zWyd0ZW1wbGF0ZSddKSkKCSAgewoJICAgIGVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhYmFzZSgnZ2xvc3NhcnlfJy4kcGFyYW1zWyd0ZW1wbGF0ZSddKTsKCSAgfQoJZWxzZQoJICB7CgkgICAgJGRlZmF1bHRUZW1wbGF0ZSA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdkZWZhdWx0X3NpbmdsZV90ZXJtX3RlbXBsYXRlJywnJyk7CgkgICAgZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlRnJvbURhdGFiYXNlKCdnbG9zc2FyeV8nLiRkZWZhdWx0VGVtcGxhdGUpOwoJICB9CiAgICAgIH0KKi8KIyBFT0YKPz4K]]></data>
	</file>
	<file>
	  <filename>/function.filter_site.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEdsb3NzYXJ5IC8gRGljdGlvbmFyeSAvIEZBUSBtb2R1bGUKIyBWZXJzaW9uOiAwLjYuNiwgU2pHCiMgaHR0cDovL2Rldi5jbXNtYWRlc2ltcGxlLm9yZy9wcm9qZWN0cy9nbG9zc2FyeQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwOSBieSBUZWQgS3VscCAodGVkQGNtc21hZGVzaW1wbGUub3JnKQojIGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCmZ1bmN0aW9uIG1hcmt1cEdsb3NzYXJ5Q29udGVudCgkY2lkLCRjb250ZW50LCYkbW9kdWxlKQp7CiAgZ2xvYmFsICRnQ21zOwogICRkYiA9JiAkZ0Ntcy0+R2V0RGIoKTsKCiAgaWYoIGVtcHR5KCRjb250ZW50KSApIHJldHVybiAkY29udGVudDsKCiAgJHRhcmcgPSAkbW9kdWxlLT5HZXRQcmVmZXJlbmNlKCdnbG9zc2FyeV9wYWdlJywnJyk7CiAgJGlubGluZSA9ICgkbW9kdWxlLT5HZXRQcmVmZXJlbmNlKCdnbG9zc2FyeV9pbmxpbmUnLCcwJykgPT0gJzEnKTsKICAkc2hvd19zaW5nbGUgPSAoJG1vZHVsZS0+R2V0UHJlZmVyZW5jZSgnc2hvd19zaW5nbGUnLCcwJykgPT0gJzEnKTsKICAkcXVlcnkgPSAiU0VMRUNUIHRlcm1faWQsIHRlcm0sIGRlZmluaXRpb24gRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4KICAgICJtb2R1bGVfZ2xvc3NhcnlfdGVybSI7CiAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSk7CiAgCiAgd2hpbGUgKCRkYnJlc3VsdCAhPT0gZmFsc2UgJiYgJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKSkKICAgIHsKICAgICAgJGxpbmsgPSAkbW9kdWxlLT5DcmVhdGVUZXJtTGluaygnXDInLCAkcm93Wyd0ZXJtJ10sICRyb3dbJ3Rlcm1faWQnXSwgJHJvd1snZGVmaW5pdGlvbiddLAoJCQkJICAgICRpbmxpbmUsICR0YXJnLCAkc2hvd19zaW5nbGUsICRjaWQpOwogICAgICAkdGVybSA9IHByZWdfcmVwbGFjZSgnLyhbXC8jQCQhLj8qe30oKXxcW1xdXSkvJywnXFxcMScsJHJvd1sndGVybSddKTsKICAgICAgJG5ld2NvbnRlbnQgPSBwcmVnX3JlcGxhY2UoJy8oXHMrKSgnLiR0ZXJtLicpKFxXKS9pJywKCQkJCSAnXDEnLiRsaW5rLidcMycsJGNvbnRlbnQpOwogICAgICBpZiggZW1wdHkoJG5ld2NvbnRlbnQpICkKCXsKCSAgJGNvbnRlbnQgPSAnPCEtLSBnbG9zc2FyeSBmaWx0ZXJpbmcgZmFpbGVkIC0tPicuJGNvbnRlbnQ7Cgl9CiAgICAgIGVsc2UKCXsKCSAgJGNvbnRlbnQgPSAkbmV3Y29udGVudDsKCX0KICAgIH0KCiAgcmV0dXJuICRjb250ZW50Owp9CgokdGhpcy0+aW5fZmlsdGVyID0gdHJ1ZTsKZ2xvYmFsICRnQ21zOwokZGIgPSYgJGdDbXMtPkdldERiKCk7CiRjb250ZW50b3BzID0mICRnQ21zLT5HZXRDb250ZW50T3BlcmF0aW9ucygpOwogICAgCi8vCi8vIEZpbHRlciBBbGwgQ29udGVudCBPYmplY3RzCi8vCmlmICgkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZmlsdGVyX3NpdGUnLCcwJykgPT0gJzEnIHx8CiAgICBpc3NldCgkcGFyYW1zWydmaWx0ZXJfc2l0ZSddKSkKICB7CiAgICAkcXVlcnkgPSAnU0VMRUNUIGNvbnRlbnRfaWQsdHlwZSBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidjb250ZW50CiAgICAgICAgICAgT1JERVIgQlkgaGllcmFyY2h5JzsKICAgICRkYnJlc3VsdCA9JiAkZGItPkV4ZWN1dGUoJHF1ZXJ5KTsKICAgIHdoaWxlKCRkYnJlc3VsdCAmJiAhJGRicmVzdWx0LT5FT0YpCiAgICAgIHsKCWlmKCAkZGJyZXN1bHQtPmZpZWxkc1sndHlwZSddICE9ICdjb250ZW50JyApCgkgIHsKCSAgICAkZGJyZXN1bHQtPk1vdmVOZXh0KCk7CgkgICAgY29udGludWU7CgkgIH0KCQoJLy8gZ2V0IHRoZSBjb250ZW50IG9iamVjdAoJJGNvbnRlbnQgPSYgJGNvbnRlbnRvcHMtPkxvYWRDb250ZW50RnJvbUlkKCRkYnJlc3VsdC0+ZmllbGRzWydjb250ZW50X2lkJ10pOwoJJGdDbXMtPnZhcmlhYmxlc1snY29udGVudF9pZCddID0gJGRicmVzdWx0LT5maWVsZHNbJ2NvbnRlbnRfaWQnXTsKICAgJGNpZCA9ICRkYnJlc3VsdC0+ZmllbGRzWydjb250ZW50X2lkJ107CgkKCS8vIHByb2Nlc3MgdGhlIGRlZmF1bHQgY29udGVudCBibG9jawoJJHRleHQgPSBtYXJrdXBHbG9zc2FyeUNvbnRlbnQoJGNpZCwkY29udGVudC0+R2V0UHJvcGVydHlWYWx1ZSgnY29udGVudF9lbicpLCR0aGlzKTsKCSRjb250ZW50LT5TZXRQcm9wZXJ0eVZhbHVlKCdjb250ZW50X2VuJywkdGV4dCk7CgkKCSRibG9ja3MgPSAkY29udGVudC0+Z2V0X2NvbnRlbnRfYmxvY2tzKCk7CglkZWJ1Z19kaXNwbGF5KCRibG9ja3MpOwoJZm9yZWFjaCggJGJsb2NrcyBhcyAkYmxvY2tOYW1lID0+ICRibG9ja05hbWVJZCApCgkgIHsKCSAgICAkdGV4dCA9IG1hcmt1cEdsb3NzYXJ5Q29udGVudCgkY2lkLAogICAgICAgICAkY29udGVudC0+R2V0UHJvcGVydHlWYWx1ZSgkYmxvY2tOYW1lSWRbJ2lkJ10pLCR0aGlzKTsKCSAgICAkY29udGVudC0+U2V0UHJvcGVydHlWYWx1ZSgkYmxvY2tOYW1lSWRbJ2lkJ10sJHRleHQpOwoJICB9CiAgICAKCSRjb250ZW50LT5TYXZlKCk7CgkkZGJyZXN1bHQtPk1vdmVOZXh0KCk7CiAgICAgIH0KICB9CgoKLy8KLy8gRmlsdGVyIGFsbCBuZXdzIGFydGljbGVzCi8vCmlmICgkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZmlsdGVyX25ld3MnLCcwJykgPT0gJzEnIHx8CiAgICBpc3NldCgkcGFyYW1zWydmaWx0ZXJfbmV3cyddKSApCiAgewogICAgJG5ld3MgPSYgJHRoaXMtPkdldE1vZHVsZUluc3RhbmNlKCdOZXdzJyk7CiAgICBpZiggISRuZXdzIHx8IHZlcnNpb25fY29tcGFyZSgkbmV3cy0+R2V0VmVyc2lvbigpLCcyLjYuMScpIDwgMCApCiAgICAgIHsKCSR0aGlzLT5pbl9maWx0ZXIgPSBmYWxzZTsKICAgICAgfQoKICAgICRxdWVyeSA9ICdTRUxFQ1QgbmV3c19pZCxuZXdzX2RhdGEsc3VtbWFyeSBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfbmV3cyc7CiAgICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxdWVyeSApOwogICAgd2hpbGUoJGRicmVzdWx0ICYmICEkZGJyZXN1bHQtPkVPRikKICAgICAgewoJJHN1bW1hcnkgPSAkZGJyZXN1bHQtPmZpZWxkc1snc3VtbWFyeSddOwoJJG5ld3NfaWQgPSAkZGJyZXN1bHQtPmZpZWxkc1snbmV3c19pZCddOwoJJG5ld3NfZGF0YSA9ICRkYnJlc3VsdC0+ZmllbGRzWyduZXdzX2RhdGEnXTsKCWlmKCAhZW1wdHkoJHN1bW1hcnkpICkKCSAgewoJICAgICRzdW1tYXJ5ID0gbWFya3VwR2xvc3NhcnlDb250ZW50KC0xLCRzdW1tYXJ5LCR0aGlzKTsKCSAgfQoKCSRuZXdzX2RhdGEgPSBtYXJrdXBHbG9zc2FyeUNvbnRlbnQoLTEsJG5ld3NfZGF0YSwkdGhpcyk7CgoJJHF1ZXJ5MiA9ICdVUERBVEUgJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9uZXdzIAogICAgICAgICAgICAgICAgICAgICAgU0VUIG5ld3NfZGF0YSA9ID8sIHN1bW1hcnkgPSA/CiAgICAgICAgICAgICAgICAgICAgV0hFUkUgbmV3c19pZCA9ID8nOwoJJGRiLT5FeGVjdXRlKCAkcXVlcnkyLCBhcnJheSggJG5ld3NfZGF0YSwgJHN1bW1hcnksICRuZXdzX2lkICkpOwoKCSRkYnJlc3VsdC0+TW92ZU5leHQoKTsKICAgICAgfQogICAgCiAgfQoKJHRoaXMtPmluX2ZpbHRlciA9IGZhbHNlOwojIEVPRgo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/Glossary.module.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIE1vZHVsZTogR2xvc3NhcnkgLyBEaWN0aW9uYXJ5IC8gRkFRIG1vZHVsZQ0KIyBWZXJzaW9uOiAwLjYuNiwgU2pHDQojIGh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvZ2xvc3NhcnkNCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwOSBieSBUZWQgS3VscCAodGVkQGNtc21hZGVzaW1wbGUub3JnKQ0KIyBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIw0KIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQ0KIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQ0KIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcg0KIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLg0KIw0KIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwNCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YNCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQ0KIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLg0KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQ0KIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQ0KIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQ0KIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMDQojDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQoNCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQpjbGFzcyBHbG9zc2FyeSBleHRlbmRzIENNU01vZHVsZQ0Kew0KCXZhciAkaW5fZmlsdGVyOw0KCQ0KCWZ1bmN0aW9uIEdsb3NzYXJ5KCkNCgl7DQoJCXBhcmVudDo6Q01TTW9kdWxlKCk7DQoJCSR0aGlzLT5pbl9maWx0ZXIgPSBmYWxzZTsNCgl9DQoJDQoJZnVuY3Rpb24gR2V0TmFtZSgpDQoJew0KCQlyZXR1cm4gJ0dsb3NzYXJ5JzsNCgl9DQoJDQoJZnVuY3Rpb24gR2V0RnJpZW5kbHlOYW1lKCkNCgl7DQoJCXJldHVybiAkdGhpcy0+TGFuZygnZnJpZW5kbHluYW1lJyk7DQoJfQ0KCQ0KCWZ1bmN0aW9uIE1pbmltdW1DTVNWZXJzaW9uKCkNCgl7DQoJCXJldHVybiAnMS45LjQuMic7DQoJfQ0KDQoJZnVuY3Rpb24gTWF4aW11bUNNU1ZlcnNpb24oKQ0KCXsNCgkJcmV0dXJuICcxLjExJzsNCgl9DQoNCglmdW5jdGlvbiBHZXRWZXJzaW9uKCkNCgl7DQoJCXJldHVybiAnMC4xMCc7DQoJfQ0KCQ0KCWZ1bmN0aW9uIEdldEhlbHAoKQ0KCXsNCgkJcmV0dXJuICR0aGlzLT5MYW5nKCdoZWxwJyk7DQoJfQ0KCQ0KCWZ1bmN0aW9uIEdldEF1dGhvcigpDQoJew0KCQlyZXR1cm4gJ1NqRyc7DQoJfQ0KCQ0KCWZ1bmN0aW9uIEdldEF1dGhvckVtYWlsKCkNCgl7DQoJCXJldHVybiAnc2pnQGNtc21vZHVsZXMuY29tJzsNCgl9DQoJDQoJZnVuY3Rpb24gR2V0Q2hhbmdlTG9nKCkNCgl7DQoJCXJldHVybiAkdGhpcy0+TGFuZygnY2hhbmdlbG9nJyk7DQoJfQ0KCQ0KCWZ1bmN0aW9uIElzUGx1Z2luTW9kdWxlKCkNCgl7DQoJCXJldHVybiB0cnVlOw0KCX0NCgkNCglmdW5jdGlvbiBIYXNBZG1pbigpDQoJew0KCQlyZXR1cm4gdHJ1ZTsNCgl9DQoJDQoJZnVuY3Rpb24gR2V0QWRtaW5TZWN0aW9uKCkNCgl7DQoJCXJldHVybiAnY29udGVudCc7DQoJfQ0KCQ0KCWZ1bmN0aW9uIEdldEFkbWluRGVzY3JpcHRpb24oKQ0KCXsNCgkJcmV0dXJuICR0aGlzLT5MYW5nKCdtb2RkZXNjcmlwdGlvbicpOw0KCX0NCgkNCglmdW5jdGlvbiBWaXNpYmxlVG9BZG1pblVzZXIoKQ0KCXsNCgkJcmV0dXJuICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBHbG9zc2FyeScpOw0KCX0NCgkNCglmdW5jdGlvbiBHZXREZXBlbmRlbmNpZXMoKQ0KCXsNCgkJcmV0dXJuIGFycmF5KCk7DQoJfQ0KCQ0KCWZ1bmN0aW9uIEluc3RhbGxQb3N0TWVzc2FnZSgpDQoJew0KCQlyZXR1cm4gJHRoaXMtPkxhbmcoJ3Bvc3RpbnN0YWxsJyk7DQoJfQ0KCQ0KCWZ1bmN0aW9uIFVuaW5zdGFsbFBvc3RNZXNzYWdlKCkNCgl7DQoJCXJldHVybiAkdGhpcy0+TGFuZygncG9zdHVuaW5zdGFsbCcpOw0KCX0NCgkNCglmdW5jdGlvbiBTZWFyY2hSZXN1bHQoJHJldHVybmlkLCAkYXJ0aWNsZWlkLCAkYXR0ciA9ICcnKQ0KCXsNCgkJJHRhcmcgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZ2xvc3NhcnlfcGFnZScsICcnKTsNCgkJaWYgKCFlbXB0eSgkdGFyZykpDQoJCQkkcmV0dXJuaWQgPSAkdGFyZzsNCgkJDQoJCSRyZXN1bHQgPSBhcnJheSgpOw0KCQlpZiAoJGF0dHIgPT0gJ2dsb3NzYXJ5Jykgew0KCQkJJGRiICA9IGNtc21zKCktPkdldERiKCk7DQoJCQkkcSAgID0gJ1NFTEVDVCAqIEZST00gJyAuIGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfZ2xvc3NhcnlfdGVybQ0KICAgICAgICAgICAgIFdIRVJFIHRlcm1faWQgPSA/JzsNCgkJCSRyb3cgPSAkZGItPkdldFJvdygkcSwgYXJyYXkoDQoJCQkJJGFydGljbGVpZA0KCQkJKSk7DQoJCQlpZiAoJHJvdykgew0KCQkJCSRyZXN1bHRbMF0gPSB1dGY4X2VuY29kZShodG1sX2VudGl0eV9kZWNvZGUoJHRoaXMtPkdldEZyaWVuZGx5TmFtZSgpKSk7DQoJCQkJJHJlc3VsdFsxXSA9ICRyb3dbJ3Rlcm0nXTsNCgkJCQkkcHJldHR5dXJsID0gImdsb3NzYXJ5L3skcm93Wyd0ZXJtJ119L3skcmV0dXJuaWR9IjsNCgkJCQkkcmVzdWx0WzJdID0gJHRoaXMtPkNyZWF0ZUxpbmsoJ2NudG50MDEnLCAnc2hvd3NpbmdsZScsICRyZXR1cm5pZCwgJHJvd1sndGVybSddLCBhcnJheSgNCgkJCQkJJ3RpZCcgPT4gJHJvd1sndGVybV9pZCddDQoJCQkJKSwgJycsIHRydWUsIHRydWUsICcnLCB0cnVlLCAkcHJldHR5dXJsKTsNCgkJCX0NCgkJfQ0KCQlyZXR1cm4gJHJlc3VsdDsNCgl9DQoJDQoJDQoJZnVuY3Rpb24gU2VhcmNoUmVpbmRleCgmJG1vZHVsZSkNCgl7DQoJCSRkYiAgICAgPSBjbXNtcygpLT5HZXREYigpOw0KCQkkcXVlcnkgID0gJ1NFTEVDVCAqIEZST00gJyAuIGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfZ2xvc3NhcnlfdGVybSc7DQoJCSRyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5KTsNCgkJDQoJCXdoaWxlICgkcmVzdWx0ICYmICEkcmVzdWx0LT5FT0YpIHsNCgkJCSRyb3cgPSAkcmVzdWx0LT5maWVsZHM7DQoJCQkkbW9kdWxlLT5BZGRXb3JkcygkdGhpcy0+R2V0TmFtZSgpLCAkcm93Wyd0ZXJtX2lkJ10sICdnbG9zc2FyeScsICRyb3dbJ3Rlcm0nXSAuICcgJyAuICRyb3dbJ2RlZmluaXRpb24nXSk7DQoJCQkkcmVzdWx0LT5Nb3ZlTmV4dCgpOw0KCQl9DQoJCSRyZXN1bHQtPkNsb3NlKCk7DQoJfQ0KCQ0KCQ0KCWZ1bmN0aW9uIENvbnRlbnRQb3N0UmVuZGVyKCYkY29udGVudCkNCgl7DQoJCSRjb25maWcgPSBjbXNtcygpLT5HZXRDb25maWcoKTsNCgkJDQoJCSRlbmMgPSAkY29uZmlnWydkZWZhdWx0X2VuY29kaW5nJ107DQoJCWlmICgkZW5jID09ICcnKSB7DQoJCQkkZW5jID0gJ3V0Zi04JzsNCgkJfQ0KCQkNCgkJaWYgKCR0aGlzLT5pbl9maWx0ZXIgPT09IHRydWUpDQoJCQlyZXR1cm47DQoJCQ0KCQlpZiAoZW1wdHkoJGNvbnRlbnQpKSB7DQoJCQlyZXR1cm47DQoJCX0NCgkJDQoJCSRkYiA9IGNtc21zKCktPkdldERiKCk7DQoJCWlmICgkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZmlsdGVyX3NpdGUnLCAnMCcpID09ICcxJykgew0KCQkJJHRhcmcgICAgICAgID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ2dsb3NzYXJ5X3BhZ2UnLCAnJyk7DQoJCQkkaW5saW5lICAgICAgPSAoJHRoaXMtPkdldFByZWZlcmVuY2UoJ2dsb3NzYXJ5X2lubGluZScsICcwJykgPT0gJzEnKTsNCgkJCSRzaG93X3NpbmdsZSA9ICgkdGhpcy0+R2V0UHJlZmVyZW5jZSgnc2hvd19zaW5nbGUnLCAnMCcpID09ICcxJyk7DQoJCQkkcXVlcnkgICAgICAgPSAiU0VMRUNUIHRlcm1faWQsIHRlcm0sIHRpcCwgZGVmaW5pdGlvbiBGUk9NICIgLiBjbXNfZGJfcHJlZml4KCkgLiAibW9kdWxlX2dsb3NzYXJ5X3Rlcm0iOw0KCQkJJGRicmVzdWx0ICAgID0gJGRiLT5FeGVjdXRlKCRxdWVyeSk7DQoJCQkNCgkJCSRjX2JvZHlfc3RhcnQgICAgID0gc3RyaXBvcygkY29udGVudCwgJzxib2R5Jyk7DQoJCQkkY19ib2R5X3N0YXJ0X2VuZCA9IHN0cmlwb3MoJGNvbnRlbnQsICc+JywgJGNfYm9keV9zdGFydCkgKyAxOw0KCQkJJGNfYm9keV9lbmQgICAgICAgPSBzdHJpcG9zKCRjb250ZW50LCAnPC9ib2R5Jyk7DQoJCQkkc3ViYyAgICAgICAgICAgICA9IG1iX3N1YnN0cigkY29udGVudCwgJGNfYm9keV9zdGFydF9lbmQsICRjX2JvZHlfZW5kIC0gJGNfYm9keV9zdGFydF9lbmQsICRlbmMpOw0KCQkJd2hpbGUgKCRkYnJlc3VsdCAhPT0gZmFsc2UgJiYgJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKSkgew0KCQkJCSRsaW5rID0gJHRoaXMtPkNyZWF0ZVRlcm1MaW5rKCdcMicsICRyb3dbJ3Rlcm0nXSwgJHJvd1sndGVybV9pZCddLCAkcm93Wyd0aXAnXSwgJHJvd1snZGVmaW5pdGlvbiddLCAkaW5saW5lLCAkdGFyZywgJHNob3dfc2luZ2xlKTsNCgkJCQkkdGVybSA9IHByZWdfcmVwbGFjZSgnLyhbXC8jQCQhLj8qe30oKXxcW1xdXSkvJywgJ1xcXDEnLCAkcm93Wyd0ZXJtJ10pOw0KCQkJCSRzdWJjID0gcHJlZ19yZXBsYWNlKCcvKFxzKykoJyAuICR0ZXJtIC4gJykoXFcpL2knLCAnXDEnIC4gJGxpbmsgLiAnXDMnLCAkc3ViYyk7DQoJCQl9DQoJCQlpZiAoZW1wdHkoJHN1YmMpKSB7DQoJCQkJJGNvbnRlbnQgPSAnPCEtLSBnbG9zc2FyeSBmaWx0ZXJpbmcgZmFpbGVkIC0tPicgLiAkY29udGVudDsNCgkJCX0NCgkJCSRjb250ZW50ID0gbWJfc3Vic3RyKCRjb250ZW50LCAwLCAkY19ib2R5X3N0YXJ0X2VuZCwgJGVuYykgLiAkc3ViYyAuIG1iX3N1YnN0cigkY29udGVudCwgJGNfYm9keV9lbmQsICRlbmMpOw0KCQkJDQoJCX0NCgl9DQoJDQoJZnVuY3Rpb24gQ3JlYXRlVGVybUxpbmsoJHRlcm0sICRzYWZlVGVybVNyYywgJHRlcm1pZCwgJHRpcCwgJGRlZiwgJGlubGluZSA9IHRydWUsICR0YXJnID0gJycsICRzaG93X3NpbmdsZSA9IGZhbHNlLCAkY2F0ID0gJycsICRjaWQgPSAtMSkNCgl7DQoJCSRjb25maWcgPSBjbXNtcygpLT5HZXRDb25maWcoKTsNCgkJaWYgKCRjaWQgPT0gLTEgJiYgaXNzZXQoY21zbXMoKS0+dmFyaWFibGVzWydjb250ZW50X2lkJ10pKSB7DQoJCQkkY2lkID0gY21zbXMoKS0+dmFyaWFibGVzWydjb250ZW50X2lkJ107DQoJCX0NCgkJJHNhZmVUZXJtID0gcHJlZ19yZXBsYWNlKCcvW15hLXpBLVpdLycsICIiLCAkc2FmZVRlcm1TcmMpOw0KCQlpZiAoJHRoaXMtPkdldFByZWZlcmVuY2UoJ3Byb2Nlc3Nfc21hcnR5JywgJycpID09ICd5ZXMnKSB7DQoJCQkkZGVmID0gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhKCRkZWYpOw0KCQl9DQoJCWlmIChlbXB0eSgkdGlwKSkgew0KCQkJJHRpcCA9IHN0cmlwX3RhZ3MocHJlZ19yZXBsYWNlKCcvXCJ8XG58XHIvJywgJycsICRkZWYpKTsNCgkJCWlmIChzdHJsZW4oJHRpcCkgPiAzNSkgew0KCQkJCSR0aXAgPSBzdWJzdHIoJHRpcCwgMCwgMzUpOw0KCQkJCSR0aXAgPSBzdWJzdHIoJHRpcCwgMCwgc3RycnBvcygkdGlwLCAnICcpKSAuICcuLi4nOw0KCQkJfQ0KCQl9DQoJCWlmICgkaW5saW5lKSB7DQoJCQlpZiAoJGNvbmZpZ1snaW50ZXJuYWxfcHJldHR5X3VybHMnXSkgew0KCQkJCSRsbmsgPSAnPGEgY2xhc3M9Imdsb3NzYXJ5IiBocmVmPSInIC4gJGNvbmZpZ1sncm9vdF91cmwnXSAuICcvZ2xvc3NhcnknOw0KCQkJCSRsbmsgLj0gKCRzaG93X3NpbmdsZSA/ICdzaW5nJyA6ICcnKTsNCgkJCQkkbG5rIC49ICcvJyAuICR0ZXJtaWQ7DQoJCQkJJGxuayAuPSAoKCRjYXQgIT0gJycpID8gJy8nIC4gJGNhdCA6ICcnKTsNCgkJCQkkbG5rIC49ICcvJyAuICRjaWQ7DQoJCQkJJGxuayAuPSAnIiB0aXRsZT0iJyAuICR0aXAgLiAnIj4nIC4gJHRlcm0gLiAnPC9hPic7DQoJCQl9IGVsc2Ugew0KCQkJCSRsbmsgPSAnPGEgY2xhc3M9Imdsb3NzYXJ5IiBocmVmPSInIC4gJGNvbmZpZ1sncm9vdF91cmwnXSAuICcvaW5kZXgucGhwP21hY3Q9R2xvc3NhcnksY250bnQwMSwnOw0KCQkJCSRsbmsgLj0gKCRzaG93X3NpbmdsZSA/ICdzaG93c2luZ2xlJyA6ICdzaG93Jyk7DQoJCQkJDQoJCQkJJGxuayAuPSAnLDEmYW1wO2NudG50MDF0aWQ9JyAuICR0ZXJtaWQ7DQoJCQkJaWYgKCRjaWQgIT0gLTEpIHsNCgkJCQkJJGxuayAuPSAnJmFtcDtjbnRudDAxcmV0dXJuaWQ9JyAuICRjaWQ7DQoJCQkJfQ0KCQkJCSRsbmsgLj0gKCgkY2F0ICE9ICcnICYmICRjYXQgIT0gLTEpID8gJyZhbXA7Y2F0PScgLiAkY2F0IDogJycpOw0KCQkJCSRsbmsgLj0gJyZhbXA7cGFnZT0nIC4gJGNpZDsNCgkJCQkkbG5rIC49ICgkc2hvd19zaW5nbGUgPyAnJyA6ICcjJyAuICRzYWZlVGVybSk7DQoJCQkJJGxuayAuPSAnIiB0aXRsZT0iJyAuICR0aXAgLiAnIj4nIC4gJHRlcm0gLiAnPC9hPic7DQoJCQl9DQoJCQlyZXR1cm4gJGxuazsNCgkJfSBlbHNlIHsNCgkJCSRsbmsgPSAnPGEgY2xhc3M9Imdsb3NzYXJ5IiBocmVmPSInIC4gJGNvbmZpZ1sncm9vdF91cmwnXTsNCgkJCSRsbmsgLj0gJy9pbmRleC5waHA/cGFnZT0nIC4gJHRhcmcgLiAnJmFtcDt0aWQ9JyAuICR0ZXJtaWQ7DQoJCQkkbG5rIC49ICgoJGNhdCAhPSAnJykgPyAnJmFtcDtjYXQ9JyAuICRjYXQgOiAnJyk7DQoJCQkkbG5rIC49ICcjJyAuICRzYWZlVGVybSAuICciIHRpdGxlPSInIC4gJHRpcCAuICciPicgLiAkdGVybSAuICc8L2E+JzsNCgkJCXJldHVybiAkbG5rOw0KCQl9DQoJfQ0KCQ0KCQ0KCWZ1bmN0aW9uIERvQWN0aW9uKCRhY3Rpb24sICRpZCwgJHBhcmFtcywgJHJldHVybmlkID0gLTEpDQoJew0KCQlzd2l0Y2ggKCRhY3Rpb24pIHsNCgkJCWNhc2UgJ3Nob3cnOg0KCQkJCSRhY3Rpb24gPSAnZGVmYXVsdCc7DQoJCQljYXNlICdkZWYnOg0KCQkJY2FzZSAnZGVmYXVsdCc6DQoJCQljYXNlICdzaG93c2luZ2xlJzoNCgkJCWNhc2UgJ3JhbmRvbSc6DQoJCQkJcGFyZW50OjpEb0FjdGlvbigkYWN0aW9uLCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCk7DQoJCQkJYnJlYWs7DQoJCQkNCgkJCWNhc2UgJ2RlZmF1bHRhZG1pbic6DQoJCQljYXNlICdsaXN0dGVybXMnOiB7DQoJCQkJaWYgKCR0aGlzLT5jaGVja1Blcm0oKSkgew0KCQkJCQkkdGhpcy0+aW5pdEFkbWluTmF2KCRpZCwgJHBhcmFtcywgJHJldHVybmlkKTsNCgkJCQkJJHRoaXMtPkxpc3RUZXJtcygkaWQsICRwYXJhbXMsICRyZXR1cm5pZCk7DQoJCQkJfQ0KCQkJCWJyZWFrOw0KCQkJfQ0KCQkJY2FzZSAnZWRpdHRlcm0nOiB7DQoJCQkJaWYgKCR0aGlzLT5jaGVja1Blcm0oKSkgew0KCQkJCQkkdGhpcy0+aW5pdEFkbWluTmF2KCRpZCwgJHBhcmFtcywgJHJldHVybmlkKTsNCgkJCQkJJHRoaXMtPkVkaXRUZXJtKCRpZCwgJHBhcmFtcywgJHJldHVybmlkKTsNCgkJCQl9DQoJCQkJYnJlYWs7DQoJCQl9DQoJCQljYXNlICdzYXZldGVybSc6IHsNCgkJCQlpZiAoJHRoaXMtPmNoZWNrUGVybSgpKSB7DQoJCQkJCSR0aGlzLT5pbml0QWRtaW5OYXYoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQpOw0KCQkJCQkkdGhpcy0+U2F2ZVRlcm0oJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQpOw0KCQkJCX0NCgkJCQlicmVhazsNCgkJCX0NCgkJCWNhc2UgJ2RlbHRlcm0nOiB7DQoJCQkJaWYgKCR0aGlzLT5jaGVja1Blcm0oKSkgew0KCQkJCQkkdGhpcy0+aW5pdEFkbWluTmF2KCRpZCwgJHBhcmFtcywgJHJldHVybmlkKTsNCgkJCQkJJHRoaXMtPkRlbGV0ZVRlcm0oJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQpOw0KCQkJCX0NCgkJCQlicmVhazsNCgkJCX0NCgkJCWNhc2UgImxpc3R0ZW1wbCI6IHsNCgkJCQlpZiAoJHRoaXMtPmNoZWNrUGVybSgpKSB7DQoJCQkJCSR0aGlzLT5pbml0QWRtaW5OYXYoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQpOw0KCQkJCQkkdGhpcy0+X2xpc3RUZW1wbGF0ZXMoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQpOw0KCQkJCX0NCgkJCX0NCgkJCQlicmVhazsNCgkJCWNhc2UgImVkaXR0ZW1wbCI6IHsNCgkJCQlpZiAoJHRoaXMtPmNoZWNrUGVybSgpKSB7DQoJCQkJCSR0aGlzLT5pbml0QWRtaW5OYXYoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQpOw0KCQkJCQkkdGhpcy0+ZWRpdFRlbXBsYXRlKCRpZCwgJHBhcmFtcywgJHJldHVybmlkKTsNCgkJCQl9DQoJCQl9DQoJCQkJYnJlYWs7DQoJCQljYXNlICJkZWxldGV0ZW1wbCI6IHsNCgkJCQlpZiAoJHRoaXMtPmNoZWNrUGVybSgpKSB7DQoJCQkJCSR0aGlzLT5pbml0QWRtaW5OYXYoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQpOw0KCQkJCQkkdGhpcy0+ZGVsVGVtcGxhdGUoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQpOw0KCQkJCX0NCgkJCX0NCgkJCQlicmVhazsNCgkJCWNhc2UgInN1Ym1pdHRlbXBsIjogew0KCQkJCWlmICgkdGhpcy0+Y2hlY2tQZXJtKCkpIHsNCgkJCQkJJHRoaXMtPmluaXRBZG1pbk5hdigkaWQsICRwYXJhbXMsICRyZXR1cm5pZCk7DQoJCQkJCSR0aGlzLT5zdWJtaXRUZW1wbGF0ZSgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCk7DQoJCQkJfQ0KCQkJfQ0KCQkJCWJyZWFrOw0KCQkJY2FzZSAibGlzdGNhdHMiOiB7DQoJCQkJaWYgKCR0aGlzLT5jaGVja1Blcm0oKSkgew0KCQkJCQkkdGhpcy0+aW5pdEFkbWluTmF2KCRpZCwgJHBhcmFtcywgJHJldHVybmlkKTsNCgkJCQkJJHRoaXMtPmxpc3RDYXRzKCRpZCwgJHBhcmFtcywgJHJldHVybmlkKTsNCgkJCQl9DQoJCQl9DQoJCQkJYnJlYWs7DQoJCQljYXNlICJlZGl0Y2F0Ijogew0KCQkJCWlmICgkdGhpcy0+Y2hlY2tQZXJtKCkpIHsNCgkJCQkJJHRoaXMtPmluaXRBZG1pbk5hdigkaWQsICRwYXJhbXMsICRyZXR1cm5pZCk7DQoJCQkJCSR0aGlzLT5lZGl0Q2F0KCRpZCwgJHBhcmFtcywgJHJldHVybmlkKTsNCgkJCQl9DQoJCQl9DQoJCQkJYnJlYWs7DQoJCQljYXNlICJkZWxldGVjYXQiOiB7DQoJCQkJaWYgKCR0aGlzLT5jaGVja1Blcm0oKSkgew0KCQkJCQkkdGhpcy0+aW5pdEFkbWluTmF2KCRpZCwgJHBhcmFtcywgJHJldHVybmlkKTsNCgkJCQkJJHRoaXMtPmRlbENhdCgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCk7DQoJCQkJfQ0KCQkJfQ0KCQkJCWJyZWFrOw0KCQkJY2FzZSAic3VibWl0Y2F0Ijogew0KCQkJCWlmICgkdGhpcy0+Y2hlY2tQZXJtKCkpIHsNCgkJCQkJJHRoaXMtPmluaXRBZG1pbk5hdigkaWQsICRwYXJhbXMsICRyZXR1cm5pZCk7DQoJCQkJCSR0aGlzLT5zdWJtaXRDYXQoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQpOw0KCQkJCX0NCgkJCX0NCgkJCQlicmVhazsNCgkJCWNhc2UgImFkbWlucHJlZnMiOiB7DQoJCQkJaWYgKCR0aGlzLT5jaGVja1Blcm0oKSkgew0KCQkJCQkkdGhpcy0+aW5pdEFkbWluTmF2KCRpZCwgJHBhcmFtcywgJHJldHVybmlkKTsNCgkJCQkJJHRoaXMtPkVkaXRQcmVmcygkaWQsICRwYXJhbXMsICRyZXR1cm5pZCk7DQoJCQkJfQ0KCQkJfQ0KCQkJCWJyZWFrOw0KCQkJY2FzZSAic3VibWl0cHJlZnMiOiB7DQoJCQkJaWYgKCR0aGlzLT5jaGVja1Blcm0oKSkgew0KCQkJCQkkdGhpcy0+aW5pdEFkbWluTmF2KCRpZCwgJHBhcmFtcywgJHJldHVybmlkKTsNCgkJCQkJJHRoaXMtPlN1Ym1pdFByZWZzKCRpZCwgJHBhcmFtcywgJHJldHVybmlkKTsNCgkJCQl9DQoJCQl9DQoJCQkJYnJlYWs7DQoJCQkJDQoJCX0NCgkJDQoJfQ0KCQ0KCWZ1bmN0aW9uIGNoZWNrUGVybSgkcGVybSA9ICdNb2RpZnkgR2xvc3NhcnknKQ0KCXsNCgkJaWYgKCEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCRwZXJtKSkgew0KCQkJJHRoaXMtPkRpc3BsYXlFcnJvclBhZ2UoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsICR0aGlzLT5MYW5nKCdhY2Nlc3NkZW5pZWQnKSk7DQoJCQlyZXR1cm4gZmFsc2U7DQoJCX0NCgkJcmV0dXJuIHRydWU7DQoJfQ0KCQ0KCWZ1bmN0aW9uIERpc3BsYXlFcnJvclBhZ2UoJGlkLCAmJHBhcmFtcywgJHJldHVybmlkLCAkbWVzc2FnZSA9ICcnKQ0KCXsNCgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0aXRsZV9lcnJvcicsICR0aGlzLT5MYW5nKCdlcnJvcicpKTsNCgkJaWYgKCRtZXNzYWdlICE9ICcnKSB7DQoJCQkkdGhpcy0+c21hcnR5LT5hc3NpZ25fYnlfcmVmKCdtZXNzYWdlJywgJG1lc3NhZ2UpOw0KCQl9DQoJCQ0KCQkvLyBEaXNwbGF5IHRoZSBwb3B1bGF0ZWQgdGVtcGxhdGUNCgkJZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCdlcnJvci50cGwnKTsNCgl9DQoJDQoJZnVuY3Rpb24gTGlzdFRlcm1zKCRpZCwgJiRwYXJhbXMsICRyZXR1cm5pZCwgJG1lc3NhZ2UgPSAnJykNCgl7DQoJCSRkYiA9IGNtc21zKCktPkdldERiKCk7DQoJCQ0KCQlpZiAoaXNzZXQoJHBhcmFtc1snc3VibWl0X21hc3NkZWxldGUnXSkgJiYgaXNzZXQoJHBhcmFtc1snc2VsJ10pICYmIGlzX2FycmF5KCRwYXJhbXNbJ3NlbCddKSAmJiBjb3VudCgkcGFyYW1zWydzZWwnXSkgPiAwKSB7DQoJCQlmb3JlYWNoICgkcGFyYW1zWydzZWwnXSBhcyAkdGVybV9pZCkNCgkJCQkkdGhpcy0+ZG9EZWxldGVUZXJtKCR0ZXJtX2lkKTsNCgkJfQ0KCQkNCgkJJGVudHJ5YXJyYXkgPSBhcnJheSgpOw0KCQkkdG90YWwgICAgICA9IDA7DQoJCSRzdGVwICAgICAgID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ251bWJlcl9zaG93X2FkbWluJywgJzIwJyk7DQoJCSRzdGFydFBvaW50ID0gKChpc3NldCgkcGFyYW1zWydzdGFydCddKSAmJiAhZW1wdHkoJHBhcmFtc1snc3RhcnQnXSkpID8gJHBhcmFtc1snc3RhcnQnXSA6IDApOw0KCQkkZmlsdGVyICAgICA9ICgoaXNzZXQoJHBhcmFtc1snZmlsdGVyJ10pICYmICFlbXB0eSgkcGFyYW1zWydmaWx0ZXInXSkpID8gJHBhcmFtc1snZmlsdGVyJ10gOiAwKTsNCgkJJGNhdHMgICAgICAgPSBhcnJheSgpOw0KCQlpZiAoJGZpbHRlciA+IDApIHsNCgkJCSRxdWVyeSAgICA9ICJTRUxFQ1QgY291bnQodC50ZXJtX2lkKSBhcyB0b3RhbCBGUk9NICIgLiBjbXNfZGJfcHJlZml4KCkgLiAibW9kdWxlX2dsb3NzYXJ5X3Rlcm0gdCwgIiAuIGNtc19kYl9wcmVmaXgoKSAuICJtb2R1bGVfZ2xvc3NhcnlfY2F0IGMsICIgLiBjbXNfZGJfcHJlZml4KCkgLiAibW9kdWxlX2dsb3NzYXJ5X3Rlcm1fY2F0IGN0ICIgLiAiIHdoZXJlIGN0LmNhdGVnb3J5X2lkID0gYy5jYXRlZ29yeV9pZCBhbmQgY3QudGVybV9pZD10LnRlcm1faWQgYW5kIGMuY2F0ZWdvcnlfaWQ9PyI7DQoJCQkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgNCgkJCQkkZmlsdGVyDQoJCQkpKTsNCgkJfSBlbHNlIHsNCgkJCSRxdWVyeSAgICA9ICJTRUxFQ1QgY291bnQodGVybV9pZCkgYXMgdG90YWwgRlJPTSAiIC4gY21zX2RiX3ByZWZpeCgpIC4gIm1vZHVsZV9nbG9zc2FyeV90ZXJtIjsNCgkJCSRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkcXVlcnkpOw0KCQl9DQoJCSRzaG93X3Rlcm1pZHMgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnc2hvd190ZXJtaWRzJywgMCk7DQoNCgkJaWYgKCRkYnJlc3VsdCAhPT0gZmFsc2UgJiYgJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKSkgew0KCQkJJHRvdGFsID0gJHJvd1sndG90YWwnXTsNCgkJfSBlbHNlIHsNCgkJCSR0b3RhbCA9IDA7DQoJCX0NCg0KCQkkcXVlcnkgPSAiU0VMRUNUIHQudGVybV9pZCwgdC50ZXJtLCB0LmRlZmluaXRpb24sIEdST1VQX0NPTkNBVChjLm5hbWUgU0VQQVJBVE9SICcsICcpIGFzIGNhdGVnb3J5IEZST00gIiAuIGNtc19kYl9wcmVmaXgoKSAuICJtb2R1bGVfZ2xvc3NhcnlfdGVybSB0IExFRlQgSk9JTiAiIC4gY21zX2RiX3ByZWZpeCgpIC4gIm1vZHVsZV9nbG9zc2FyeV90ZXJtX2NhdCBjdCBPTiBjdC50ZXJtX2lkID0gdC50ZXJtX2lkIExFRlQgSk9JTiAiIC4gY21zX2RiX3ByZWZpeCgpIC4gIm1vZHVsZV9nbG9zc2FyeV9jYXQgYyBPTiBjdC5jYXRlZ29yeV9pZCA9IGMuY2F0ZWdvcnlfaWQiOw0KCQkkc3FsX3ZhcnMgPSBhcnJheSgpOw0KDQoJCWlmICgkZmlsdGVyID4gMCkgew0KCQkJJHF1ZXJ5IC49ICIgV0hFUkUgYy5jYXRlZ29yeV9pZD0/IjsNCgkJCSRzcWxfdmFyc1tdID0gJGZpbHRlcjsNCgkJfQ0KDQoJCSRxdWVyeSAuPSAnIEdST1VQIEJZIHQudGVybV9pZCBPUkRFUiBieSB0LnRlcm0nOw0KCQkkZGJyZXN1bHQgPSAkZGItPlNlbGVjdExpbWl0KCRxdWVyeSwgJHN0ZXAsICRzdGFydFBvaW50LCAkc3FsX3ZhcnMpOw0KDQoJCSRyb3djbGFzcyA9ICdyb3cxJzsNCg0KCQkkcGFyYW1fYWRkID0gYXJyYXkoKTsNCgkJaWYgKCRmaWx0ZXIgPiAwKSB7DQoJCQkkcGFyYW1fYWRkWydmaWx0ZXInXSA9ICRmaWx0ZXI7DQoJCX0NCg0KCQl3aGlsZSAoJGRicmVzdWx0ICE9PSBmYWxzZSAmJiAkcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdygpKSB7DQoJCQkkb25lcm93ID0gbmV3IHN0ZENsYXNzKCk7DQoJCQkNCgkJCSRvbmVyb3ctPmlkICAgICAgID0gJHJvd1sndGVybV9pZCddOw0KCQkJJG9uZXJvdy0+bmFtZWxpbmsgPSAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdlZGl0dGVybScsICRyZXR1cm5pZCwgJycsIGFycmF5KA0KCQkJCSd3aWQnID0+ICRyb3dbJ3Rlcm1faWQnXSwNCgkJCQknc3RhcnQnID0+ICRzdGFydFBvaW50LA0KCQkJCSdmaWx0ZXInID0+ICRmaWx0ZXINCgkJCSksICcnLCB0cnVlKTsNCgkJCQ0KCQkJJG9uZXJvdy0+bmFtZSAgICAgICA9ICRyb3dbJ3Rlcm0nXTsNCgkJCSRvbmVyb3ctPnNhZmVuYW1lICAgPSBwcmVnX3JlcGxhY2UoJ1teYS16QS1aXScsICIiLCAkcm93Wyd0ZXJtJ10pOw0KCQkJJG9uZXJvdy0+cm93Y2xhc3MgICA9ICRyb3djbGFzczsNCgkJCSRvbmVyb3ctPmRlZmluaXRpb24gPSBzdHJpcF90YWdzKCRyb3dbJ2RlZmluaXRpb24nXSk7DQoJCQkkb25lcm93LT5jYXRlZ29yeSAgID0gJHJvd1snY2F0ZWdvcnknXTsNCgkJCQ0KCQkJJG9uZXJvdy0+ZWRpdGxpbmsgPSAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdlZGl0dGVybScsICRyZXR1cm5pZCwgY21zbXMoKS0+dmFyaWFibGVzWydhZG1pbnRoZW1lJ10tPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL2VkaXQuZ2lmJywgJHRoaXMtPkxhbmcoJ2VkaXQnKSwgJycsICcnLCAnc3lzdGVtaWNvbicpLCBhcnJheV9tZXJnZSgkcGFyYW1fYWRkLCBhcnJheSgNCgkJCQknd2lkJyA9PiAkcm93Wyd0ZXJtX2lkJ10sDQoJCQkJJ3N0YXJ0JyA9PiAkc3RhcnRQb2ludA0KCQkJKSkpOw0KCQkJJG9uZXJvdy0+ZGVsbGluayAgPSAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdkZWx0ZXJtJywgJHJldHVybmlkLCBjbXNtcygpLT52YXJpYWJsZXNbJ2FkbWludGhlbWUnXS0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vZGVsZXRlLmdpZicsICR0aGlzLT5MYW5nKCdkZWxldGUnKSwgJycsICcnLCAnc3lzdGVtaWNvbicpLCBhcnJheV9tZXJnZSgkcGFyYW1fYWRkLCBhcnJheSgNCgkJCQknd2lkJyA9PiAkcm93Wyd0ZXJtX2lkJ10sDQoJCQkJJ3N0YXJ0JyA9PiAkc3RhcnRQb2ludA0KCQkJKSksICR0aGlzLT5MYW5nKCdzdXJlZGVsZXRlJywgJHJvd1sndGVybSddKSk7DQoJCQkkb25lcm93LT5zZWxlY3QgICA9ICR0aGlzLT5DcmVhdGVJbnB1dENoZWNrYm94KCRpZCwgJ3NlbFtdJywgJHJvd1sndGVybV9pZCddKTsNCgkJCWFycmF5X3B1c2goJGVudHJ5YXJyYXksICRvbmVyb3cpOw0KCQkJDQoJCQkoJHJvd2NsYXNzID09ICJyb3cxIiA/ICRyb3djbGFzcyA9ICJyb3cyIiA6ICRyb3djbGFzcyA9ICJyb3cxIik7DQoJCX0NCg0KDQoJCSRjYXRzWyR0aGlzLT5MYW5nKCd0aXRsZV9hbGwnKV0gPSAnJzsNCgkJJGRicmVzdWx0ICAgICAgICAgICAgICAgICAgICAgICA9ICRkYi0+RXhlY3V0ZSgic2VsZWN0IGNhdGVnb3J5X2lkLCBuYW1lIGZyb20gIiAuIGNtc19kYl9wcmVmaXgoKSAuICJtb2R1bGVfZ2xvc3NhcnlfY2F0Iik7DQoNCgkJd2hpbGUgKCRkYnJlc3VsdCAhPT0gZmFsc2UgJiYgJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKSkgew0KCQkJJGNhdHNbJHJvd1snbmFtZSddXSA9ICRyb3dbJ2NhdGVnb3J5X2lkJ107DQoJCX0NCg0KCQlpZiAoJHN0YXJ0UG9pbnQgPj0gJHN0ZXApIHsNCgkJCSRwcmV2X2lkID0gJHN0YXJ0UG9pbnQgLSAkc3RlcDsNCgkJCSR0aGlzLT5zbWFydHktPmFzc2lnbigncHJldl9wYWdlJywgJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCAnbGlzdHRlcm1zJywgJHJldHVybmlkLCAkdGhpcy0+TGFuZygncHJldicpLCBhcnJheV9tZXJnZSgkcGFyYW1fYWRkLCBhcnJheSgNCgkJCQknc3RhcnQnID0+ICRwcmV2X2lkDQoJCQkpKSkpOw0KCQl9DQoJCWlmICgkc3RhcnRQb2ludCArICRzdGVwIDwgJHRvdGFsKSB7DQoJCQkkbmV4dF9pZCA9ICRzdGFydFBvaW50ICsgJHN0ZXA7DQoJCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ25leHRfcGFnZScsICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwgJ2xpc3R0ZXJtcycsICRyZXR1cm5pZCwgJHRoaXMtPkxhbmcoJ25leHQnKSwgYXJyYXlfbWVyZ2UoJHBhcmFtX2FkZCwgYXJyYXkoDQoJCQkJJ3N0YXJ0JyA9PiAkbmV4dF9pZA0KCQkJKSkpKTsNCgkJfQ0KCQlpZiAoY2VpbCgkdG90YWwgLyAkc3RlcCkgPiAxKSB7DQoJCQkkY3VycGcgICA9IGZsb29yKCRzdGFydFBvaW50IC8gJHN0ZXApICsgMTsNCgkJCSRsaW5rc3RyID0gJyc7DQoJCQkkZmlyc3QgICA9IDE7DQoJCQlmb3IgKCRpID0gMDsgJGkgPCAkdG90YWw7ICRpICs9ICRzdGVwKSB7DQoJCQkJJHRoaXNQZyA9IGZsb29yKCRpIC8gJHN0ZXApICsgMTsNCgkJCQlpZiAoJGZpcnN0KSB7DQoJCQkJCSRmaXJzdCA9IDA7DQoJCQkJfSBlbHNlIHsNCgkJCQkJJGxpbmtzdHIgLj0gJyA6ICc7DQoJCQkJfQ0KCQkJCWlmICgkaSA9PSAkc3RhcnRQb2ludCkgew0KCQkJCQkkbGlua3N0ciAuPSAnWycgLiAkdGhpc1BnIC4gJ10nOw0KCQkJCX0gZWxzZSB7DQoJCQkJCSRsaW5rc3RyIC49ICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwgJ2xpc3R0ZXJtcycsICRyZXR1cm5pZCwgJHRoaXNQZywgYXJyYXlfbWVyZ2UoJHBhcmFtX2FkZCwgYXJyYXkoDQoJCQkJCQknc3RhcnQnID0+ICRpDQoJCQkJCSkpKTsNCgkJCQl9DQoJCQl9DQoJCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3BhZ2Vfbm8nLCAnUGFnZSAnIC4gJGN1cnBnIC4gJyBvZiAnIC4gY2VpbCgkdG90YWwgLyAkc3RlcCkpOw0KCQkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduX2J5X3JlZigncGFnZV9saW5rcycsICRsaW5rc3RyKTsNCgkJfQ0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2NvbHVtbl90ZXJtaWQnLCAkdGhpcy0+TGFuZygnY29sdW1uX3Rlcm1pZCcpKTsNCgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdjb2x1bW5fdGVybScsICR0aGlzLT5MYW5nKCdjb2x1bW5fdGVybScpKTsNCgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdjb2x1bW5fZGVmaW5pdGlvbicsICR0aGlzLT5MYW5nKCdjb2x1bW5fZGVmaW5pdGlvbicpKTsNCgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdjb2x1bW5fY2F0ZWdvcnknLCAkdGhpcy0+TGFuZygnY29sdW1uX2NhdGVnb3J5JykpOw0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2NvbHVtbl9hY3Rpb24nLCAkdGhpcy0+TGFuZygnY29sdW1uX2FjdGlvbicpKTsNCgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdjb2x1bW5fc2VsZWN0JywgJHRoaXMtPkxhbmcoJ2NvbHVtbl9zZWxlY3QnKSk7DQoNCgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0aXRsZV9maWx0ZXJfY2F0ZWdvcnknLCAkdGhpcy0+TGFuZygndGl0bGVfZmlsdGVyX2NhdGVnb3J5JykpOw0KDQoJCSR0aGlzLT5zbWFydHktPmFzc2lnbignc3RhcnRmb3JtJywgJHRoaXMtPkNyZWF0ZUZvcm1TdGFydCgkaWQsICdsaXN0dGVybXMnLCAkcmV0dXJuaWQpKTsNCgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdlbmRmb3JtJywgJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7DQoJCSR0aGlzLT5zbWFydHktPmFzc2lnbignc3VibWl0JywgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwgJ3N1Ym1pdCcsICR0aGlzLT5MYW5nKCJmaWx0ZXIiKSkpOw0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3N1Ym1pdF9tYXNzZGVsZXRlJywgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwgJ3N1Ym1pdF9tYXNzZGVsZXRlJywgJHRoaXMtPkxhbmcoJ2RlbGV0ZV9zZWxlY3RlZCcpLCAnJywgJycsICR0aGlzLT5MYW5nKCdhcmV5b3VzdXJlX2RlbGV0ZW11bHRpcGxlJykpKTsNCg0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2lucHV0X2ZpbHRlcl9jYXRlZ29yeScsICR0aGlzLT5DcmVhdGVJbnB1dERyb3Bkb3duKCRpZCwgJ2ZpbHRlcicsICRjYXRzLCAtMSwgaXNzZXQoJHBhcmFtc1snZmlsdGVyJ10pID8gJHBhcmFtc1snZmlsdGVyJ10gOiAnJywgIm9uQ2hhbmdlPVwic3VibWl0KClcIiIpKTsNCg0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ25fYnlfcmVmKCdpdGVtcycsICRlbnRyeWFycmF5KTsNCgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdpdGVtY291bnQnLCBjb3VudCgkZW50cnlhcnJheSkpOw0KDQoJCWlmICgkbWVzc2FnZSAhPSAiIikgew0KCQkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduX2J5X3JlZignbWVzc2FnZScsICRtZXNzYWdlKTsNCgkJfQ0KDQoJCSR0aGlzLT5zbWFydHktPmFzc2lnbignYWRkbGluaycsICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwgJ2VkaXR0ZXJtJywgJHJldHVybmlkLCBjbXNtcygpLT52YXJpYWJsZXNbJ2FkbWludGhlbWUnXS0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vbmV3b2JqZWN0LmdpZicsICR0aGlzLT5MYW5nKCdhZGR0ZXJtJyksICcnLCAnJywgJ3N5c3RlbWljb24nKSwgYXJyYXlfbWVyZ2UoJHBhcmFtX2FkZCwgYXJyYXkoDQoJCQknc3RhcnQnID0+ICRzdGFydFBvaW50DQoJCSkpLCAnJywgZmFsc2UsIGZhbHNlLCAnJykgLiAnICcgLiAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdlZGl0dGVybScsICRyZXR1cm5pZCwgJHRoaXMtPkxhbmcoJ2FkZHRlcm0nKSwgYXJyYXlfbWVyZ2UoJHBhcmFtX2FkZCwgYXJyYXkoDQoJCQknc3RhcnQnID0+ICRzdGFydFBvaW50DQoJCSkpLCAnJywgZmFsc2UsIGZhbHNlLCAnY2xhc3M9InBhZ2VvcHRpb25zIicpKTsNCg0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RpdGxlX3NlY3Rpb24nLCAkdGhpcy0+TGFuZygndGl0bGVfdGVybV9saXN0JykpOw0KCQlpZiAoJHNob3dfdGVybWlkcykgew0KCQkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzaG93X3Rlcm1pZHMnLCAnMScpOw0KCQl9IGVsc2Ugew0KCQkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzaG93X3Rlcm1pZHMnLCAnMCcpOw0KCQl9DQoJCS8vIERpc3BsYXkgdGhlIHBvcHVsYXRlZCB0ZW1wbGF0ZQ0KCQllY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ2xpc3R0ZXJtcy50cGwnKTsNCgl9DQoNCglmdW5jdGlvbiBTYXZlVGVybSgkaWQsICYkcGFyYW1zLCAkcmV0dXJuaWQpDQoJew0KCQkkZGIgPSBjbXNtcygpLT5HZXREYigpOw0KCQlpZiAoaXNzZXQoJHBhcmFtc1snd2lkJ10pKSB7DQoJCQkvLyB1cGRhdGluZw0KCQkJJHF1ZXJ5ICAgID0gJ1VQREFURSAnIC4gY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV9nbG9zc2FyeV90ZXJtIHNldCB0ZXJtPT8sdGlwPT8sZGVmaW5pdGlvbj0/IFdIRVJFIHRlcm1faWQ9Pyc7DQoJCQkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgNCgkJCQkkcGFyYW1zWyd0ZXJtJ10sDQoJCQkJJHBhcmFtc1sndGlwJ10sDQoJCQkJJHBhcmFtc1snZGVmaW5pdGlvbiddLA0KCQkJCSRwYXJhbXNbJ3dpZCddDQoJCQkpKTsNCgkJCWlmICgkZGJyZXN1bHQgPT09IGZhbHNlKSB7DQoJCQkJcmV0dXJuICR0aGlzLT5EaXNwbGF5RXJyb3JQYWdlKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAkZGItPkVycm9yTXNnKCkpOw0KCQkJfQ0KCQkJJHRlcm1faWQgPSAkcGFyYW1zWyd3aWQnXTsNCgkJfSBlbHNlIHsNCgkJCS8vIG5ldyByZWNvcmQNCgkJCSR0ZXJtX2lkID0gJGRiLT5HZW5JRChjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlX2dsb3NzYXJ5X3Rlcm1fc2VxJyk7DQoJCQkkcXVlcnkgICA9ICdJTlNFUlQgSU5UTyAnIC4gY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV9nbG9zc2FyeV90ZXJtICh0ZXJtX2lkLCB0ZXJtLCB0aXAsIGRlZmluaXRpb24sIGNyZWF0ZV9kYXRlKSBWQUxVRVMgKD8sPyw/LD8sPyknOw0KCQkJDQoJCQkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgNCgkJCQkkdGVybV9pZCwNCgkJCQkkcGFyYW1zWyd0ZXJtJ10sDQoJCQkJJHBhcmFtc1sndGlwJ10sDQoJCQkJJHBhcmFtc1snZGVmaW5pdGlvbiddLA0KCQkJCXRyaW0oJGRiLT5EQlRpbWVTdGFtcCh0aW1lKCkpLCAiJyIpDQoJCQkpKTsNCgkJCWlmICgkZGJyZXN1bHQgPT09IGZhbHNlKSB7DQoJCQkJcmV0dXJuICR0aGlzLT5EaXNwbGF5RXJyb3JQYWdlKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAkZGItPkVycm9yTXNnKCkpOw0KCQkJfQ0KCQl9DQoJCWlmIChpc3NldCgkcGFyYW1zWydjYXRzJ10pKSB7DQoJCQlpZiAoIWlzX2FycmF5KCRwYXJhbXNbJ2NhdHMnXSkpIHsNCgkJCQkkcGFyYW1zWydjYXRzJ10gPSBhcnJheSgNCgkJCQkJJHBhcmFtc1snY2F0cyddDQoJCQkJKTsNCgkJCX0NCgkJCSRxdWVyeSAgICA9ICdERUxFVEUgRlJPTSAnIC4gY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV9nbG9zc2FyeV90ZXJtX2NhdCB3aGVyZSB0ZXJtX2lkPT8nOw0KCQkJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSwgYXJyYXkoDQoJCQkJJHRlcm1faWQNCgkJCSkpOw0KCQkJaWYgKCRkYnJlc3VsdCA9PT0gZmFsc2UpIHsNCgkJCQlyZXR1cm4gJHRoaXMtPmRpc3BsYXlFcnJvcigkZGItPkVycm9yTXNnKCkpOw0KCQkJfQ0KCQkJZm9yZWFjaCAoJHBhcmFtc1snY2F0cyddIGFzICR0aGlzQ2F0KSB7DQoJCQkJJHF1ZXJ5ICAgID0gJ0lOU0VSVCBJTlRPICcgLiBjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlX2dsb3NzYXJ5X3Rlcm1fY2F0ICh0ZXJtX2lkLCBjYXRlZ29yeV9pZCkgVkFMVUVTICg/LD8pJzsNCgkJCQkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgNCgkJCQkJJHRlcm1faWQsDQoJCQkJCSR0aGlzQ2F0DQoJCQkJKSk7DQoJCQkJaWYgKCRkYnJlc3VsdCA9PT0gZmFsc2UpIHsNCgkJCQkJcmV0dXJuICR0aGlzLT5kaXNwbGF5RXJyb3IoJGRiLT5FcnJvck1zZygpKTsNCgkJCQl9DQoJCQl9DQoJCX0NCgkJDQoJCS8vIHVwZGF0ZSBTZWFyY2gNCgkJJG1vZHVsZSA9IGNtc21zKCktPkdldE1vZHVsZUluc3RhbmNlKCdTZWFyY2gnKTsNCgkJaWYgKCRtb2R1bGUgIT0gRkFMU0UpIHsNCgkJCSR0eHQgPSAkcGFyYW1zWyd0ZXJtJ10gLiAnICcgLiAkcGFyYW1zWydkZWZpbml0aW9uJ107DQoJCQkkbW9kdWxlLT5BZGRXb3JkcygkdGhpcy0+R2V0TmFtZSgpLCAkdGVybV9pZCwgJ2dsb3NzYXJ5JywgJHR4dCwgTlVMTCk7DQoJCX0NCgkJcmV0dXJuICR0aGlzLT5MaXN0VGVybXMoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsICR0aGlzLT5MYW5nKCd0ZXJtYWRkZWQnKSk7DQoJfQ0KCQ0KCWZ1bmN0aW9uIERvRGVsZXRlVGVybSgkdGVybV9pZCkNCgl7DQoJCSRkYiAgICAgICA9IGNtc21zKCktPkdldERiKCk7DQoJCS8vIHVwZGF0aW5nDQoJCSRxdWVyeSAgICA9ICdERUxFVEUgRlJPTSAnIC4gY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV9nbG9zc2FyeV90ZXJtIFdIRVJFIHRlcm1faWQ9Pyc7DQoJCSRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksIGFycmF5KA0KCQkJJHRlcm1faWQNCgkJKSk7DQoJCWlmICgkZGJyZXN1bHQgPT09IGZhbHNlKQ0KCQkJcmV0dXJuICR0aGlzLT5EaXNwbGF5RXJyb3JQYWdlKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAkZGItPkVycm9yTXNnKCkpOw0KCQkNCgkJJHF1ZXJ5ICAgID0gJ0RFTEVURSBGUk9NICcgLiBjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlX2dsb3NzYXJ5X3Rlcm1fY2F0IFdIRVJFIHRlcm1faWQ9Pyc7DQoJCSRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksIGFycmF5KA0KCQkJJHRlcm1faWQNCgkJKSk7DQoJCWlmICgkZGJyZXN1bHQgPT09IGZhbHNlKQ0KCQkJcmV0dXJuICR0aGlzLT5EaXNwbGF5RXJyb3JQYWdlKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAkZGItPkVycm9yTXNnKCkpOw0KCQkNCgkJLy8gdXBkYXRlIFNlYXJjaA0KCQkkbW9kdWxlID0gY21zbXMoKS0+R2V0TW9kdWxlSW5zdGFuY2UoJ1NlYXJjaCcpOw0KCQlpZiAoJG1vZHVsZSAhPSBGQUxTRSkNCgkJCSRtb2R1bGUtPkRlbGV0ZVdvcmRzKCR0aGlzLT5HZXROYW1lKCksICR0ZXJtX2lkLCAnZ2xvc3NhcnknKTsNCgl9DQoJDQoJZnVuY3Rpb24gRGVsZXRlVGVybSgkaWQsICYkcGFyYW1zLCAkcmV0dXJuaWQpDQoJew0KCQlpZiAoaXNzZXQoJHBhcmFtc1snd2lkJ10pKQ0KCQkJJHRoaXMtPkRvRGVsZXRlVGVybSgkcGFyYW1zWyd3aWQnXSk7DQoJCQ0KCQlyZXR1cm4gJHRoaXMtPkxpc3RUZXJtcygkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwgJHRoaXMtPkxhbmcoJ3Rlcm1kZWxldGVkJykpOw0KCX0NCgkNCglmdW5jdGlvbiBFZGl0VGVybSgkaWQsICYkcGFyYW1zLCAkcmV0dXJuaWQsICRtZXNzYWdlID0gIiIpDQoJew0KCQkkZGIgPSBjbXNtcygpLT5HZXREYigpOw0KCQkNCgkJJGNhdHMgICAgICAgPSBhcnJheSgpOw0KCQkkbWVtYmVyY2F0cyA9IGFycmF5KCk7DQoJCSRxdWVyeSAgICAgID0gIlNFTEVDVCBjYXRlZ29yeV9pZCwgbmFtZSBGUk9NICIgLiBjbXNfZGJfcHJlZml4KCkgLiAibW9kdWxlX2dsb3NzYXJ5X2NhdCI7DQoJCSRkYnJlc3VsdCAgID0gJGRiLT5FeGVjdXRlKCRxdWVyeSk7DQoJCXdoaWxlICgkZGJyZXN1bHQgIT09IGZhbHNlICYmICRyb3cgPSAkZGJyZXN1bHQtPkZldGNoUm93KCkpIHsNCgkJCSRjYXRzWyRyb3dbJ25hbWUnXV0gPSAkcm93WydjYXRlZ29yeV9pZCddOw0KCQl9DQoJCQ0KCQlpZiAoaXNzZXQoJHBhcmFtc1snd2lkJ10pKSB7DQoJCQkkcXVlcnkgICAgPSAiU0VMRUNUICogRlJPTSAiIC4gY21zX2RiX3ByZWZpeCgpIC4gIm1vZHVsZV9nbG9zc2FyeV90ZXJtIFdIRVJFIHRlcm1faWQ9PyI7DQoJCQkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgNCgkJCQkkcGFyYW1zWyd3aWQnXQ0KCQkJKSk7DQoJCQlpZiAoJGRicmVzdWx0ICE9PSBmYWxzZSAmJiAkcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdygpKSB7DQoJCQkJJHRlcm0gPSAkcm93Wyd0ZXJtJ107DQoJCQkJJGRlZiAgPSAkcm93WydkZWZpbml0aW9uJ107DQoJCQkJJHRpcCAgPSAkcm93Wyd0aXAnXTsNCgkJCX0NCgkJCSRxdWVyeSAgICA9ICJTRUxFQ1QgY2F0ZWdvcnlfaWQgRlJPTSAiIC4gY21zX2RiX3ByZWZpeCgpIC4gIm1vZHVsZV9nbG9zc2FyeV90ZXJtX2NhdCBXSEVSRSB0ZXJtX2lkPT8iOw0KCQkJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSwgYXJyYXkoDQoJCQkJJHBhcmFtc1snd2lkJ10NCgkJCSkpOw0KCQkJd2hpbGUgKCRkYnJlc3VsdCAhPT0gZmFsc2UgJiYgJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKSkgew0KCQkJCWFycmF5X3B1c2goJG1lbWJlcmNhdHMsICRyb3dbJ2NhdGVnb3J5X2lkJ10pOw0KCQkJfQ0KCQkJDQoJCX0gZWxzZSB7DQoJCQkkdGVybSA9ICcnOw0KCQkJJGRlZiAgPSAnJzsNCgkJCSR0aXAgID0gJyc7DQoJCX0NCgkJDQoJCSR0aGlzLT5zbWFydHktPmFzc2lnbignc3RhcnRmb3JtJywgJHRoaXMtPkNyZWF0ZUZvcm1TdGFydCgkaWQsICdzYXZldGVybScsICRyZXR1cm5pZCkpOw0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2VuZGZvcm0nLCAkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsNCgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzdWJtaXQnLCAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCAnc3VibWl0JywgJ1N1Ym1pdCcpKTsNCgkJDQoJCSR0aGlzLT5zbWFydHktPmFzc2lnbigndGl0bGVfZmllbGRfdGVybScsICR0aGlzLT5MYW5nKCd0aXRsZV90ZXJtJykpOw0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RpdGxlX2ZpZWxkX3RpcCcsICR0aGlzLT5MYW5nKCd0aXRsZV90aXAnKSk7DQoJCSR0aGlzLT5zbWFydHktPmFzc2lnbigndGl0bGVfZmllbGRfZGVmaW5pdGlvbicsICR0aGlzLT5MYW5nKCd0aXRsZV9kZWZpbml0aW9uJykpOw0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RpdGxlX2ZpZWxkX2NhdHMnLCAkdGhpcy0+TGFuZygndGl0bGVfY2F0cycpKTsNCgkJDQoJCSR0aGlzLT5zbWFydHktPmFzc2lnbignaW5wdXRfZmllbGRfdGVybScsICR0aGlzLT5DcmVhdGVUZXh0QXJlYSgoJHRoaXMtPkdldFByZWZlcmVuY2UoJ3d5c2l3eWdfdGVybXMnLCAnbm8nKSA9PSAneWVzJyksICRpZCwgJHRlcm0sICd0ZXJtJywgJ3BhZ2VoZWFkdGFncycsICcnLCAnJywgJycsIDgwLCA1KSk7DQoJCSR0aGlzLT5zbWFydHktPmFzc2lnbignaW5wdXRfZmllbGRfdGlwJywgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsICd0aXAnLCAkdGlwLCA0MCwgMjU1KSk7DQoJCSR0aGlzLT5zbWFydHktPmFzc2lnbignaW5wdXRfZmllbGRfZGVmaW5pdGlvbicsICR0aGlzLT5DcmVhdGVUZXh0QXJlYSgoJHRoaXMtPkdldFByZWZlcmVuY2UoJ3d5c2l3eWdfZGVmaW5pdGlvbnMnLCAnbm8nKSA9PSAneWVzJyksICRpZCwgJGRlZiwgJ2RlZmluaXRpb24nKSk7DQoJCSR0aGlzLT5zbWFydHktPmFzc2lnbignaW5wdXRfZmllbGRfY2F0cycsICR0aGlzLT5DcmVhdGVJbnB1dFNlbGVjdExpc3QoJGlkLCAnY2F0c1tdJywgJGNhdHMsICRtZW1iZXJjYXRzLCA1KSk7DQoJCQ0KCQlpZiAoaXNzZXQoJHBhcmFtc1snd2lkJ10pKSB7DQoJCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2hpZGRlbicsICR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsICd3aWQnLCAkcGFyYW1zWyd3aWQnXSkgLiAkdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLCAnc3RhcnQnLCAkcGFyYW1zWydzdGFydCddKSAuICR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsICdmaWx0ZXInLCAkcGFyYW1zWydmaWx0ZXInXSkpOw0KCQl9IGVsc2Ugew0KCQkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdoaWRkZW4nLCAkdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLCAnc3RhcnQnLCAkcGFyYW1zWydzdGFydCddKSAuICR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsICdmaWx0ZXInLCBpc3NldCgkcGFyYW1zWydmaWx0ZXInXSk/JHBhcmFtc1snZmlsdGVyJ106JycpKTsNCgkJCQ0KCQl9DQoJCWlmICgkbWVzc2FnZSAhPSAnJykgew0KCQkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdtZXNzYWdlJywgJG1lc3NhZ2UpOw0KCQl9DQoJCQ0KCQllY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ2VkaXR0ZXJtLnRwbCcpOw0KCX0NCgkNCglmdW5jdGlvbiBfbGlzdFRlbXBsYXRlcygkaWQsICYkcGFyYW1zLCAkcmV0dXJuaWQsICRtZXNzYWdlID0gIiIpDQoJew0KCQkkZGIgPSBjbXNtcygpLT5HZXREYigpOw0KCQkNCgkJLy9Mb2FkIHRoZSBzaG93cw0KCQkkZW50cnlhcnJheSA9IGFycmF5KCk7DQoJCQ0KCQkkcXVlcnkgICAgPSAiU0VMRUNUIHRlbXBsYXRlX2lkLCBuYW1lIEZST00gIiAuIGNtc19kYl9wcmVmaXgoKSAuICJtb2R1bGVfZ2xvc3NhcnlfdGVtcGxhdGUgT1JERVIgYnkgbmFtZSI7DQoJCSRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkcXVlcnkpOw0KCQkNCgkJJHJvd2NsYXNzID0gJ3JvdzEnOw0KCQkNCgkJd2hpbGUgKCRkYnJlc3VsdCAhPT0gZmFsc2UgJiYgJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKSkgew0KCQkJJG9uZXJvdyA9IG5ldyBzdGRDbGFzcygpOw0KCQkJDQoJCQkkb25lcm93LT5pZCAgICAgICA9ICRyb3dbJ3RlbXBsYXRlX2lkJ107DQoJCQkkb25lcm93LT5uYW1lICAgICA9ICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwgJ2VkaXR0ZW1wbCcsICRyZXR1cm5pZCwgJHJvd1snbmFtZSddLCBhcnJheSgNCgkJCQkndGVtcGxhdGVfaWQnID0+ICRyb3dbJ3RlbXBsYXRlX2lkJ10NCgkJCSkpOw0KCQkJJG9uZXJvdy0+cm93Y2xhc3MgPSAkcm93Y2xhc3M7DQoJCQkNCgkJCSRvbmVyb3ctPmVkaXRsaW5rICAgPSAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdlZGl0dGVtcGwnLCAkcmV0dXJuaWQsIGNtc21zKCktPnZhcmlhYmxlc1snYWRtaW50aGVtZSddLT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9lZGl0LmdpZicsICR0aGlzLT5MYW5nKCdlZGl0JyksICcnLCAnJywgJ3N5c3RlbWljb24nKSwgYXJyYXkoDQoJCQkJJ3RlbXBsYXRlX2lkJyA9PiAkcm93Wyd0ZW1wbGF0ZV9pZCddDQoJCQkpKTsNCgkJCSRvbmVyb3ctPmRlbGV0ZWxpbmsgPSAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdkZWxldGV0ZW1wbCcsICRyZXR1cm5pZCwgY21zbXMoKS0+dmFyaWFibGVzWydhZG1pbnRoZW1lJ10tPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL2RlbGV0ZS5naWYnLCAkdGhpcy0+TGFuZygnZGVsZXRlJyksICcnLCAnJywgJ3N5c3RlbWljb24nKSwgYXJyYXkoDQoJCQkJJ3RlbXBsYXRlX2lkJyA9PiAkcm93Wyd0ZW1wbGF0ZV9pZCddDQoJCQkpLCAkdGhpcy0+TGFuZygnYXJleW91c3VyZScsICdUZW1wbGF0ZScpKTsNCgkJCQ0KCQkJYXJyYXlfcHVzaCgkZW50cnlhcnJheSwgJG9uZXJvdyk7DQoJCQkNCgkJCSgkcm93Y2xhc3MgPT0gInJvdzEiID8gJHJvd2NsYXNzID0gInJvdzIiIDogJHJvd2NsYXNzID0gInJvdzEiKTsNCgkJfQ0KCQkNCgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduX2J5X3JlZignaXRlbXMnLCAkZW50cnlhcnJheSk7DQoJCSR0aGlzLT5zbWFydHktPmFzc2lnbignaXRlbWNvdW50JywgY291bnQoJGVudHJ5YXJyYXkpKTsNCgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzZWN0aW9uJywgJHRoaXMtPkxhbmcoJ3RlbXBsYXRlbGlzdCcpKTsNCgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdjb2x1bW5fdGVtcGxhdGUnLCAkdGhpcy0+TGFuZygnY29sdW1uX3RlbXBsYXRlJykpOw0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ25vdGVtcGxhdGVzJywgJHRoaXMtPkxhbmcoJ25vdGVtcGxhdGVzJykpOw0KCQlpZiAoJG1lc3NhZ2UgIT0gJycpIHsNCgkJCSR0aGlzLT5zbWFydHktPmFzc2lnbl9ieV9yZWYoJ21lc3NhZ2UnLCAkbWVzc2FnZSk7DQoJCX0NCgkJDQoJCSR0aGlzLT5zbWFydHktPmFzc2lnbignYWRkbGluaycsICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwgJ2VkaXR0ZW1wbCcsICRyZXR1cm5pZCwgY21zbXMoKS0+dmFyaWFibGVzWydhZG1pbnRoZW1lJ10tPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL25ld29iamVjdC5naWYnLCAkdGhpcy0+TGFuZygnYWRkdGVtcGxhdGUnKSwgJycsICcnLCAnc3lzdGVtaWNvbicpLCBhcnJheSgpLCAnJywgZmFsc2UsIGZhbHNlLCAnJykgLiAnICcgLiAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdlZGl0dGVtcGwnLCAkcmV0dXJuaWQsICR0aGlzLT5MYW5nKCdhZGR0ZW1wbGF0ZScpLCBhcnJheSgpLCAnJywgZmFsc2UsIGZhbHNlLCAnY2xhc3M9InBhZ2VvcHRpb25zIicpKTsNCgkJDQoJCSNEaXNwbGF5IHRlbXBsYXRlDQoJCWVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSgnbGlzdHRlbXBsYXRlcy50cGwnKTsNCgl9DQoJDQoJZnVuY3Rpb24gZWRpdFRlbXBsYXRlKCRpZCwgJiRwYXJhbXMsICRyZXR1cm5pZCkNCgl7DQoJCSRkYiA9IGNtc21zKCktPkdldERiKCk7DQoJCQ0KCQkkdHlwZXMgICA9IGFycmF5KCk7DQoJCSR0eXBlaWRzID0gYXJyYXkoKTsNCgkJaWYgKGlzc2V0KCRwYXJhbXNbJ3RlbXBsYXRlX2lkJ10pKSB7DQoJCQkvLyBlZGl0aW5nIGEgdGVtcGxhdGUNCgkJCSRxdWVyeSAgICAgID0gJ1NFTEVDVCBuYW1lLCB0ZW1wbGF0ZSBGUk9NICcgLiBjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlX2dsb3NzYXJ5X3RlbXBsYXRlIFdIRVJFIHRlbXBsYXRlX2lkPT8nOw0KCQkJJGRicmVzdWx0ICAgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgNCgkJCQkkcGFyYW1zWyd0ZW1wbGF0ZV9pZCddDQoJCQkpKTsNCgkJCSRyb3cgICAgICAgID0gJGRicmVzdWx0LT5GZXRjaFJvdygpOw0KCQkJJHRlbXBsYXRlaWQgPSAkcGFyYW1zWyd0ZW1wbGF0ZV9pZCddOw0KCQkJJG5hbWUgICAgICAgPSAkcm93WyduYW1lJ107DQoJCQkkdGVtcGxhdGUgICA9ICRyb3dbJ3RlbXBsYXRlJ107DQoJCX0gZWxzZSB7DQoJCQkvLyBhZGRpbmcgYSB0ZW1wbGF0ZQ0KCQkJJHRlbXBsYXRlaWQgPSAnJzsNCgkJCSRuYW1lICAgICAgID0gJyc7DQoJCQkkdGVtcGxhdGUgICA9ICcnOw0KCQkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdvcCcsICdBZGQgVGVtcGxhdGUnKTsNCgkJfQ0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3N0YXJ0Zm9ybScsICR0aGlzLT5DcmVhdGVGb3JtU3RhcnQoJGlkLCAnc3VibWl0dGVtcGwnLCAkcmV0dXJuaWQpKTsNCgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdlbmRmb3JtJywgJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7DQoJCSR0aGlzLT5zbWFydHktPmFzc2lnbignaGlkZGVuJywgJHRoaXMtPkNyZWF0ZUlucHV0SGlkZGVuKCRpZCwgJ3RlbXBsYXRlX2lkJywgJHRlbXBsYXRlaWQpKTsNCgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0aXRsZV9uYW1lJywgJHRoaXMtPkxhbmcoJ3RpdGxlX25hbWUnKSk7DQoJCSR0aGlzLT5zbWFydHktPmFzc2lnbigndGl0bGVfdGVtcGxhdGUnLCAkdGhpcy0+TGFuZygndGl0bGVfdGVtcGxhdGUnKSk7DQoJCQ0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2lucHV0X25hbWUnLCAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwgJ25hbWUnLCAkbmFtZSwgMjAsIDI1NSkpOw0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2lucHV0X3RlbXBsYXRlJywgJHRoaXMtPkNyZWF0ZVRleHRBcmVhKGZhbHNlLCAkaWQsICR0ZW1wbGF0ZSwgJ3RlbXBsJykpOw0KCQkNCgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzdWJtaXQnLCAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCAnc3VibWl0JywgJ1N1Ym1pdCcpKTsNCgkJZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCdlZGl0dGVtcGxhdGUudHBsJyk7DQoJfQ0KCQ0KCWZ1bmN0aW9uIHN1Ym1pdFRlbXBsYXRlKCRpZCwgJiRwYXJhbXMsICRyZXR1cm5pZCkNCgl7DQoJCSRkYiA9IGNtc21zKCktPkdldERiKCk7DQoJCWlmICghZW1wdHkoJHBhcmFtc1sndGVtcGxhdGVfaWQnXSkpIHsNCgkJCS8vIHVwZGF0aW5nIGEgdGVtcGxhdGUNCgkJCSRxdWVyeSAgICAgICA9ICdVUERBVEUgJyAuIGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfZ2xvc3NhcnlfdGVtcGxhdGUgc2V0IG5hbWU9PywgdGVtcGxhdGU9PyBXSEVSRSB0ZW1wbGF0ZV9pZD0/JzsNCgkJCSRkYnJlc3VsdCAgICA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksIGFycmF5KA0KCQkJCSRwYXJhbXNbJ25hbWUnXSwNCgkJCQkkcGFyYW1zWyd0ZW1wbCddLA0KCQkJCSRwYXJhbXNbJ3RlbXBsYXRlX2lkJ10NCgkJCSkpOw0KCQkJJHRlbXBsYXRlX2lkID0gJHBhcmFtc1sndGVtcGxhdGVfaWQnXTsNCgkJfSBlbHNlIHsNCgkJCS8vIGNyZWF0aW5nIGEgdGVtcGxhdGUNCgkJCSRxdWVyeSAgICAgICA9ICdJTlNFUlQgSU5UTyAnIC4gY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV9nbG9zc2FyeV90ZW1wbGF0ZSAodGVtcGxhdGVfaWQsIG5hbWUsIHRlbXBsYXRlKSBWQUxVRVMgKD8sPyw/KSc7DQoJCQkkdGVtcGxhdGVfaWQgPSAkZGItPkdlbklEKGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfZ2xvc3NhcnlfdGVtcGxhdGVfc2VxJyk7DQoJCQkkZGJyZXN1bHQgICAgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgNCgkJCQkkdGVtcGxhdGVfaWQsDQoJCQkJJHBhcmFtc1snbmFtZSddLA0KCQkJCSRwYXJhbXNbJ3RlbXBsJ10NCgkJCSkpOw0KCQl9DQoJCSR0aGlzLT5TZXRUZW1wbGF0ZSgnZ2xvc3NhcnlfJyAuICR0ZW1wbGF0ZV9pZCwgJHBhcmFtc1sndGVtcGwnXSk7DQoJCSR0aGlzLT5fbGlzdFRlbXBsYXRlcygkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwgJHRoaXMtPkxhbmcoJ3RlbXBsYXRldXBkYXRlZCcpKTsNCgl9DQoJDQoJZnVuY3Rpb24gZGVsVGVtcGxhdGUoJGlkLCAmJHBhcmFtcywgJHJldHVybmlkKQ0KCXsNCgkJJGRiID0gY21zbXMoKS0+R2V0RGIoKTsNCgkJaWYgKCFlbXB0eSgkcGFyYW1zWyd0ZW1wbGF0ZV9pZCddKSkgew0KCQkJLy8gdXBkYXRpbmcgYSB0ZW1wbGF0ZQ0KCQkJJHF1ZXJ5ICAgID0gJ0RFTEVURSBGUk9NICcgLiBjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlX2dsb3NzYXJ5X3RlbXBsYXRlIFdIRVJFIHRlbXBsYXRlX2lkPT8nOw0KCQkJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSwgYXJyYXkoDQoJCQkJJHBhcmFtc1sndGVtcGxhdGVfaWQnXQ0KCQkJKSk7DQoJCQkkdGhpcy0+RGVsZXRlVGVtcGxhdGUoJ2dsb3NzYXJ5XycgLiAkcGFyYW1zWyd0ZW1wbGF0ZV9pZCddKTsNCgkJfQ0KCQkkdGhpcy0+X2xpc3RUZW1wbGF0ZXMoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsICR0aGlzLT5MYW5nKCd0ZW1wbGF0ZWRlbGV0ZWQnKSk7DQoJfQ0KCQ0KCWZ1bmN0aW9uIGxpc3RDYXRzKCRpZCwgJiRwYXJhbXMsICRyZXR1cm5pZCwgJG1lc3NhZ2UgPSAiIikNCgl7DQoJCSRkYiA9IGNtc21zKCktPkdldERiKCk7DQoJCQ0KCQkvL0xvYWQgdGhlIHNob3dzDQoJCSRlbnRyeWFycmF5ID0gYXJyYXkoKTsNCgkJDQoJCSRxdWVyeSAgICA9ICJTRUxFQ1QgY2F0ZWdvcnlfaWQsIG5hbWUgRlJPTSAiIC4gY21zX2RiX3ByZWZpeCgpIC4gIm1vZHVsZV9nbG9zc2FyeV9jYXQgT1JERVIgYnkgbmFtZSI7DQoJCSRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkcXVlcnkpOw0KCQkNCgkJJHJvd2NsYXNzID0gJ3JvdzEnOw0KCQkNCgkJd2hpbGUgKCRkYnJlc3VsdCAhPT0gZmFsc2UgJiYgJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKSkgew0KCQkJJG9uZXJvdyA9IG5ldyBzdGRDbGFzcygpOw0KCQkJDQoJCQkkb25lcm93LT5pZCAgICAgICA9ICRyb3dbJ2NhdGVnb3J5X2lkJ107DQoJCQkkb25lcm93LT5uYW1lICAgICA9ICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwgJ2VkaXRjYXQnLCAkcmV0dXJuaWQsICRyb3dbJ25hbWUnXSwgYXJyYXkoDQoJCQkJJ2NhdGVnb3J5X2lkJyA9PiAkcm93WydjYXRlZ29yeV9pZCddDQoJCQkpKTsNCgkJCSRvbmVyb3ctPnJvd2NsYXNzID0gJHJvd2NsYXNzOw0KCQkJDQoJCQkkb25lcm93LT5lZGl0bGluayAgID0gJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCAnZWRpdGNhdCcsICRyZXR1cm5pZCwgY21zbXMoKS0+dmFyaWFibGVzWydhZG1pbnRoZW1lJ10tPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL2VkaXQuZ2lmJywgJHRoaXMtPkxhbmcoJ2VkaXQnKSwgJycsICcnLCAnc3lzdGVtaWNvbicpLCBhcnJheSgNCgkJCQknY2F0ZWdvcnlfaWQnID0+ICRyb3dbJ2NhdGVnb3J5X2lkJ10NCgkJCSkpOw0KCQkJJG9uZXJvdy0+ZGVsZXRlbGluayA9ICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwgJ2RlbGV0ZWNhdCcsICRyZXR1cm5pZCwgY21zbXMoKS0+dmFyaWFibGVzWydhZG1pbnRoZW1lJ10tPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL2RlbGV0ZS5naWYnLCAkdGhpcy0+TGFuZygnZGVsZXRlJyksICcnLCAnJywgJ3N5c3RlbWljb24nKSwgYXJyYXkoDQoJCQkJJ2NhdGVnb3J5X2lkJyA9PiAkcm93WydjYXRlZ29yeV9pZCddDQoJCQkpLCAkdGhpcy0+TGFuZygnYXJleW91c3VyZScsICdDYXRlZ29yeScpKTsNCgkJCQ0KCQkJYXJyYXlfcHVzaCgkZW50cnlhcnJheSwgJG9uZXJvdyk7DQoJCQkNCgkJCSgkcm93Y2xhc3MgPT0gInJvdzEiID8gJHJvd2NsYXNzID0gInJvdzIiIDogJHJvd2NsYXNzID0gInJvdzEiKTsNCgkJfQ0KCQkNCgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduX2J5X3JlZignaXRlbXMnLCAkZW50cnlhcnJheSk7DQoJCSR0aGlzLT5zbWFydHktPmFzc2lnbignaXRlbWNvdW50JywgY291bnQoJGVudHJ5YXJyYXkpKTsNCgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzZWN0aW9uJywgJHRoaXMtPkxhbmcoJ2xpc3RjYXRzJykpOw0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2NvbHVtbl9jYXRlZ29yeScsICR0aGlzLT5MYW5nKCdjb2x1bW5fY2F0ZWdvcnknKSk7DQoJCSR0aGlzLT5zbWFydHktPmFzc2lnbignbm9jYXRzJywgJHRoaXMtPkxhbmcoJ25vY2F0cycpKTsNCgkJaWYgKCRtZXNzYWdlICE9ICcnKSB7DQoJCQkkdGhpcy0+c21hcnR5LT5hc3NpZ25fYnlfcmVmKCdtZXNzYWdlJywgJG1lc3NhZ2UpOw0KCQl9DQoJCQ0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2FkZGxpbmsnLCAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdlZGl0Y2F0JywgJHJldHVybmlkLCBjbXNtcygpLT52YXJpYWJsZXNbJ2FkbWludGhlbWUnXS0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vbmV3b2JqZWN0LmdpZicsICR0aGlzLT5MYW5nKCdhZGRjYXQnKSwgJycsICcnLCAnc3lzdGVtaWNvbicpLCBhcnJheSgpLCAnJywgZmFsc2UsIGZhbHNlLCAnJykgLiAnICcgLiAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdlZGl0Y2F0JywgJHJldHVybmlkLCAkdGhpcy0+TGFuZygnYWRkY2F0JyksIGFycmF5KCksICcnLCBmYWxzZSwgZmFsc2UsICdjbGFzcz0icGFnZW9wdGlvbnMiJykpOw0KCQkNCgkJI0Rpc3BsYXkgdGVtcGxhdGUNCgkJZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCdsaXN0Y2F0cy50cGwnKTsNCgl9DQoJDQoJZnVuY3Rpb24gZWRpdENhdCgkaWQsICYkcGFyYW1zLCAkcmV0dXJuaWQpDQoJew0KCQkkZGIgPSBjbXNtcygpLT5HZXREYigpOw0KCQkNCgkJJHR5cGVzICAgPSBhcnJheSgpOw0KCQkkdHlwZWlkcyA9IGFycmF5KCk7DQoJCWlmIChpc3NldCgkcGFyYW1zWydjYXRlZ29yeV9pZCddKSkgew0KCQkJJHF1ZXJ5ICAgID0gJ1NFTEVDVCBuYW1lIEZST00gJyAuIGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfZ2xvc3NhcnlfY2F0IFdIRVJFIGNhdGVnb3J5X2lkPT8nOw0KCQkJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSwgYXJyYXkoDQoJCQkJJHBhcmFtc1snY2F0ZWdvcnlfaWQnXQ0KCQkJKSk7DQoJCQkkcm93ICAgICAgPSAkZGJyZXN1bHQtPkZldGNoUm93KCk7DQoJCQkkY2F0aWQgICAgPSAkcGFyYW1zWydjYXRlZ29yeV9pZCddOw0KCQkJJG5hbWUgICAgID0gJHJvd1snbmFtZSddOw0KCQl9IGVsc2Ugew0KCQkJJGNhdGlkID0gJyc7DQoJCQkkbmFtZSAgPSAnJzsNCgkJfQ0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3N0YXJ0Zm9ybScsICR0aGlzLT5DcmVhdGVGb3JtU3RhcnQoJGlkLCAnc3VibWl0Y2F0JywgJHJldHVybmlkKSk7DQoJCSR0aGlzLT5zbWFydHktPmFzc2lnbignZW5kZm9ybScsICR0aGlzLT5DcmVhdGVGb3JtRW5kKCkpOw0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2hpZGRlbicsICR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsICdjYXRlZ29yeV9pZCcsICRjYXRpZCkpOw0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RpdGxlX25hbWUnLCAkdGhpcy0+TGFuZygndGl0bGVfbmFtZScpKTsNCgkJDQoJCSR0aGlzLT5zbWFydHktPmFzc2lnbignaW5wdXRfbmFtZScsICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCAnbmFtZScsICRuYW1lLCAyMCwgMjU1KSk7DQoJCQ0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3N1Ym1pdCcsICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsICdzdWJtaXQnLCAnU3VibWl0JykpOw0KCQllY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ2VkaXRjYXQudHBsJyk7DQoJfQ0KCQ0KCWZ1bmN0aW9uIHN1Ym1pdENhdCgkaWQsICYkcGFyYW1zLCAkcmV0dXJuaWQpDQoJew0KCQkkZGIgPSBjbXNtcygpLT5HZXREYigpOw0KCQlpZiAoIWVtcHR5KCRwYXJhbXNbJ2NhdGVnb3J5X2lkJ10pKSB7DQoJCQkkcXVlcnkgICAgPSAnVVBEQVRFICcgLiBjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlX2dsb3NzYXJ5X2NhdCBzZXQgbmFtZT0/IFdIRVJFIGNhdGVnb3J5X2lkPT8nOw0KCQkJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSwgYXJyYXkoDQoJCQkJJHBhcmFtc1snbmFtZSddLA0KCQkJCSRwYXJhbXNbJ2NhdGVnb3J5X2lkJ10NCgkJCSkpOw0KCQl9IGVsc2Ugew0KCQkJJHF1ZXJ5ICAgICAgID0gJ0lOU0VSVCBJTlRPICcgLiBjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlX2dsb3NzYXJ5X2NhdCAoY2F0ZWdvcnlfaWQsIG5hbWUpIFZBTFVFUyAoPyw/KSc7DQoJCQkkY2F0ZWdvcnlfaWQgPSAkZGItPkdlbklEKGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfZ2xvc3NhcnlfY2F0X3NlcScpOw0KCQkJJGRicmVzdWx0ICAgID0gJGRiLT5FeGVjdXRlKCRxdWVyeSwgYXJyYXkoDQoJCQkJJGNhdGVnb3J5X2lkLA0KCQkJCSRwYXJhbXNbJ25hbWUnXQ0KCQkJKSk7DQoJCX0NCgkJJHRoaXMtPmxpc3RDYXRzKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAkdGhpcy0+TGFuZygnY2F0dXBkYXRlZCcpKTsNCgl9DQoJDQoJZnVuY3Rpb24gZGVsQ2F0KCRpZCwgJiRwYXJhbXMsICRyZXR1cm5pZCkNCgl7DQoJCSRkYiA9IGNtc21zKCktPkdldERiKCk7DQoJCWlmICghZW1wdHkoJHBhcmFtc1snY2F0ZWdvcnlfaWQnXSkpIHsNCgkJCS8vIHVwZGF0aW5nIGEgdGVtcGxhdGUNCgkJCSRxdWVyeSAgICA9ICdERUxFVEUgRlJPTSAnIC4gY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV9nbG9zc2FyeV9jYXQgV0hFUkUgY2F0ZWdvcnlfaWQ9Pyc7DQoJCQkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgNCgkJCQkkcGFyYW1zWydjYXRlZ29yeV9pZCddDQoJCQkpKTsNCgkJCWlmICgkZGJyZXN1bHQgPT09IGZhbHNlKSB7DQoJCQkJcmV0dXJuICR0aGlzLT5EaXNwbGF5RXJyb3JQYWdlKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAkZGItPkVycm9yTXNnKCkpOw0KCQkJfQ0KCQkJJHF1ZXJ5ICAgID0gJ0RFTEVURSBGUk9NICcgLiBjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlX2dsb3NzYXJ5X3Rlcm1fY2F0IFdIRVJFIGNhdGVnb3J5X2lkPT8nOw0KCQkJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSwgYXJyYXkoDQoJCQkJJHBhcmFtc1snY2F0ZWdvcnlfaWQnXQ0KCQkJKSk7DQoJCQlpZiAoJGRicmVzdWx0ID09PSBmYWxzZSkgew0KCQkJCXJldHVybiAkdGhpcy0+RGlzcGxheUVycm9yUGFnZSgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwgJGRiLT5FcnJvck1zZygpKTsNCgkJCX0NCgkJfQ0KCQkkdGhpcy0+bGlzdENhdHMoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsICR0aGlzLT5MYW5nKCdjYXRkZWxldGVkJykpOw0KCX0NCgkNCglmdW5jdGlvbiBpbml0QWRtaW5OYXYoJGlkLCAmJHBhcmFtcywgJHJldHVybmlkKQ0KCXsNCgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdpbm5lcm5hdicsICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwgJ2xpc3R0ZXJtcycsICRyZXR1cm5pZCwgY21zbXMoKS0+dmFyaWFibGVzWydhZG1pbnRoZW1lJ10tPkRpc3BsYXlJbWFnZSgnaWNvbnMvdG9wZmlsZXMvYWRtaW5sb2cuZ2lmJywgJHRoaXMtPkxhbmcoJ2xpc3R0ZXJtcycpLCAnJywgJycsICdzeXN0ZW1pY29uJyksIGFycmF5KCkpIC4gJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCAnbGlzdHRlcm1zJywgJHJldHVybmlkLCAkdGhpcy0+TGFuZygnbGlzdHRlcm1zJyksIGFycmF5KCkpIC4gJyA6ICcgLiAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdsaXN0Y2F0cycsICRyZXR1cm5pZCwgY21zbXMoKS0+dmFyaWFibGVzWydhZG1pbnRoZW1lJ10tPkRpc3BsYXlJbWFnZSgnaWNvbnMvdG9wZmlsZXMvcHJlZmVyZW5jZXMuZ2lmJywgJHRoaXMtPkxhbmcoJ2xpc3RjYXRzJyksICcnLCAnJywgJ3N5c3RlbWljb24nKSwgYXJyYXkoKSkgLiAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdsaXN0Y2F0cycsICRyZXR1cm5pZCwgJHRoaXMtPkxhbmcoJ2xpc3RjYXRzJyksIGFycmF5KCkpIC4gJyA6ICcgLiAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdsaXN0dGVtcGwnLCAkcmV0dXJuaWQsIGNtc21zKCktPnZhcmlhYmxlc1snYWRtaW50aGVtZSddLT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3RvcGZpbGVzL3RlbXBsYXRlLmdpZicsICR0aGlzLT5MYW5nKCdsaXN0dGVtcGwnKSwgJycsICcnLCAnc3lzdGVtaWNvbicpLCBhcnJheSgpKSAuICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwgJ2xpc3R0ZW1wbCcsICRyZXR1cm5pZCwgJHRoaXMtPkxhbmcoJ2xpc3R0ZW1wbCcpLCBhcnJheSgpKSAuICcgOiAnIC4gJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCAnYWRtaW5wcmVmcycsICRyZXR1cm5pZCwgY21zbXMoKS0+dmFyaWFibGVzWydhZG1pbnRoZW1lJ10tPkRpc3BsYXlJbWFnZSgnaWNvbnMvdG9wZmlsZXMvc2l0ZXByZWZzLmdpZicsICR0aGlzLT5MYW5nKCdtYW5hZ2VwcmVmcycpLCAnJywgJycsICdzeXN0ZW1pY29uJyksIGFycmF5KCkpIC4gJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCAnYWRtaW5wcmVmcycsICRyZXR1cm5pZCwgJHRoaXMtPkxhbmcoJ21hbmFnZXByZWZzJyksIGFycmF5KCkpKTsNCgl9DQoJDQoJZnVuY3Rpb24gRWRpdFByZWZzKCRpZCwgJiRwYXJhbXMsICRyZXR1cm5pZCwgJG1lc3NhZ2UgPSAnJykNCgl7DQoJCSRkYiA9IGNtc21zKCktPkdldERiKCk7DQoJCQ0KCQkkdGVtcGxhdGVzID0gYXJyYXkoKTsNCgkJJHF1ZXJ5ICAgICA9ICJTRUxFQ1QgdGVtcGxhdGVfaWQsIG5hbWUgRlJPTSAiIC4gY21zX2RiX3ByZWZpeCgpIC4gIm1vZHVsZV9nbG9zc2FyeV90ZW1wbGF0ZSBPUkRFUiBieSBuYW1lIjsNCgkJJGRicmVzdWx0ICA9ICRkYi0+RXhlY3V0ZSgkcXVlcnkpOw0KCQl3aGlsZSAoJGRicmVzdWx0ICE9PSBmYWxzZSAmJiAkcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdygpKSB7DQoJCQkkdGVtcGxhdGVzWyRyb3dbJ25hbWUnXV0gPSAkcm93Wyd0ZW1wbGF0ZV9pZCddOw0KCQl9DQoJCQ0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RhYl9oZWFkZXJzJywgJHRoaXMtPlN0YXJ0VGFiSGVhZGVycygpIC4gJHRoaXMtPlNldFRhYkhlYWRlcignZGlzcGxheScsICR0aGlzLT5MYW5nKCd0aXRsZV9kaXNwbGF5X3RhYicpKSAuICR0aGlzLT5TZXRUYWJIZWFkZXIoJ2xpbmsnLCAkdGhpcy0+TGFuZygndGl0bGVfbGlua190YWInKSkgLiAkdGhpcy0+U2V0VGFiSGVhZGVyKCdmaWx0ZXJpbmcnLCAkdGhpcy0+TGFuZygndGl0bGVfZmlsdGVyaW5nX3RhYicpKSAuICR0aGlzLT5TZXRUYWJIZWFkZXIoJ2FkbWluJywgJHRoaXMtPkxhbmcoJ3RpdGxlX2FkbWluX3RhYicpKSAuICR0aGlzLT5FbmRUYWJIZWFkZXJzKCkgLiAkdGhpcy0+U3RhcnRUYWJDb250ZW50KCkpOw0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2VuZF90YWInLCAkdGhpcy0+RW5kVGFiKCkpOw0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RhYl9mb290ZXJzJywgJHRoaXMtPkVuZFRhYkNvbnRlbnQoKSk7DQoJCSR0aGlzLT5zbWFydHktPmFzc2lnbignc3RhcnRfZGlzcGxheV90YWInLCAkdGhpcy0+U3RhcnRUYWIoJ2Rpc3BsYXknKSk7DQoJCSR0aGlzLT5zbWFydHktPmFzc2lnbignc3RhcnRfYWRtaW5fdGFiJywgJHRoaXMtPlN0YXJ0VGFiKCdhZG1pbicpKTsNCgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzdGFydF9maWx0ZXJpbmdfdGFiJywgJHRoaXMtPlN0YXJ0VGFiKCdmaWx0ZXJpbmcnKSk7DQoJCSR0aGlzLT5zbWFydHktPmFzc2lnbignc3RhcnRfbGlua190YWInLCAkdGhpcy0+U3RhcnRUYWIoJ2xpbmsnKSk7DQoJCQ0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3N0YXJ0Zm9ybScsICR0aGlzLT5DcmVhdGVGb3JtU3RhcnQoJGlkLCAnc3VibWl0cHJlZnMnLCAkcmV0dXJuaWQpKTsNCgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdlbmRmb3JtJywgJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7DQoJCSR0aGlzLT5zbWFydHktPmFzc2lnbignc3VibWl0JywgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwgJ3N1Ym1pdCcsICdTdWJtaXQnKSk7DQoJCQ0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RpdGxlX2RlZmF1bHRfdGVtcGxhdGUnLCAkdGhpcy0+TGFuZygndGl0bGVfZGVmYXVsdF90ZW1wbGF0ZScpKTsNCgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0aXRsZV9kZWZhdWx0X3NpbmdsZV90ZXJtX3RlbXBsYXRlJywgJHRoaXMtPkxhbmcoJ3RpdGxlX2RlZmF1bHRfc2luZ2xlX3Rlcm1fdGVtcGxhdGUnKSk7DQoJCSR0aGlzLT5zbWFydHktPmFzc2lnbigndGl0bGVfbnVtYmVyX3Nob3cnLCAkdGhpcy0+TGFuZygndGl0bGVfbnVtYmVyX3Nob3cnKSk7DQoJCSR0aGlzLT5zbWFydHktPmFzc2lnbigndGl0bGVfZGVmYXVsdF9udW1iZXJfc2hvdycsICR0aGlzLT5MYW5nKCd0aXRsZV9kZWZhdWx0X251bWJlcl9zaG93JykpOw0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RpdGxlX2ZpbHRlcl9zaXRlJywgJHRoaXMtPkxhbmcoJ3RpdGxlX2ZpbHRlcl9zaXRlJykpOw0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RpdGxlX2ZpbHRlcl9uZXdzJywgJHRoaXMtPkxhbmcoJ3RpdGxlX2ZpbHRlcl9uZXdzJykpOw0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RpdGxlX2Rpc2FibGVfcHJldHR5dXJscycsICR0aGlzLT5MYW5nKCd0aXRsZV9kaXNhYmxlX3ByZXR0eXVybHMnKSk7DQoJCSR0aGlzLT5zbWFydHktPmFzc2lnbigndGl0bGVfZ2xvc3NhcnlfaW5saW5lJywgJHRoaXMtPkxhbmcoJ3RpdGxlX2dsb3NzYXJ5X2lubGluZScpKTsNCgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdnbG9zc2FyeV9wcmV0dHl1cmxzX2hlbHAnLCAkdGhpcy0+TGFuZygnZ2xvc3NhcnlfcHJldHR5dXJsc19oZWxwJykpOw0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2dsb3NzYXJ5X2lubGluZV9oZWxwJywgJHRoaXMtPkxhbmcoJ2dsb3NzYXJ5X2lubGluZV9oZWxwJykpOw0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RpdGxlX3NpbmdsZV90ZXJtJywgJHRoaXMtPkxhbmcoJ3RpdGxlX3NpbmdsZV90ZXJtJykpOw0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RpdGxlX2dsb3NzYXJ5X3BhZ2UnLCAkdGhpcy0+TGFuZygndGl0bGVfZ2xvc3NhcnlfcGFnZScpKTsNCgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdnbG9zc2FyeV9wYWdlX2hlbHAnLCAkdGhpcy0+TGFuZygnZ2xvc3NhcnlfcGFnZV9oZWxwJykpOw0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RpdGxlX2ZpbHRlcl9zaXRlX3R5cGUnLCAkdGhpcy0+TGFuZygndGl0bGVfZmlsdGVyX3NpdGVfdHlwZScpKTsNCgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0aXRsZV9zaG93X3Rlcm1pZHMnLCAkdGhpcy0+TGFuZygndGl0bGVfc2hvd190ZXJtaWRzJykpOw0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RpdGxlX251bWJlcl9zcGluaW5nX2NoYXJzJywgJHRoaXMtPkxhbmcoJ3RpdGxlX251bWJlcl9zcGluaW5nX2NoYXJzJykpOw0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RpdGxlX3Byb2Nlc3Nfc21hcnR5JywgJHRoaXMtPkxhbmcoJ3RpdGxlX3Byb2Nlc3Nfc21hcnR5JykpOw0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RpdGxlX3d5c2l3eWdfZGVmaW5pdGlvbnMnLCAkdGhpcy0+TGFuZygndGl0bGVfd3lzaXd5Z19kZWZpbml0aW9ucycpKTsNCgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0aXRsZV93eXNpd3lnX3Rlcm1zJywgJHRoaXMtPkxhbmcoJ3RpdGxlX3d5c2l3eWdfdGVybXMnKSk7DQoJCQ0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2lucHV0X2RlZmF1bHRfdGVtcGxhdGUnLCAkdGhpcy0+Q3JlYXRlSW5wdXREcm9wZG93bigkaWQsICdkZWZhdWx0X3RlbXBsYXRlJywgJHRlbXBsYXRlcywgLTEsICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdkZWZhdWx0X3RlbXBsYXRlJykpKTsNCgkJDQoJCSR0aGlzLT5zbWFydHktPmFzc2lnbignaW5wdXRfZGVmYXVsdF9zaW5nbGVfdGVybV90ZW1wbGF0ZScsICR0aGlzLT5DcmVhdGVJbnB1dERyb3Bkb3duKCRpZCwgJ2RlZmF1bHRfc2luZ2xlX3Rlcm1fdGVtcGxhdGUnLCAkdGVtcGxhdGVzLCAtMSwgJHRoaXMtPkdldFByZWZlcmVuY2UoJ2RlZmF1bHRfc2luZ2xlX3Rlcm1fdGVtcGxhdGUnKSkpOw0KCQkNCgkJJGNoYXJhY3RlcnMgPSBhcnJheSgNCgkJCScxJyA9PiAnMScsDQoJCQknMicgPT4gJzInLA0KCQkJJzMnID0+ICczJywNCgkJCSc0JyA9PiAnNCcsDQoJCQknNScgPT4gJzUnLA0KCQkJJzYnID0+ICc2JywNCgkJCSc3JyA9PiAnNycsDQoJCQknOCcgPT4gJzgnLA0KCQkJJzknID0+ICc5JywNCgkJCScxMCcgPT4gJzEwJw0KCQkpOw0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2lucHV0X251bWJlcl9zcGluaW5nX2NoYXJzJywgJHRoaXMtPkNyZWF0ZUlucHV0RHJvcGRvd24oJGlkLCAnc3BpbmluZ19jaGFycycsICRjaGFyYWN0ZXJzLCAtMSwgJHRoaXMtPkdldFByZWZlcmVuY2UoJ3NwaW5pbmdfY2hhcnMnLCAnNScpKSk7DQoJCQ0KCQkkc2l6ZXMgPSBhcnJheSgNCgkJCSc1JyA9PiAnNScsDQoJCQknMTAnID0+ICcxMCcsDQoJCQknMTUnID0+ICcxNScsDQoJCQknMjAnID0+ICcyMCcsDQoJCQknMjUnID0+ICcyNScsDQoJCQknMzAnID0+ICczMCcsDQoJCQknNDAnID0+ICc0MCcsDQoJCQknNTAnID0+ICc1MCcsDQoJCQknNzUnID0+ICc3NScsDQoJCQknMTAwJyA9PiAnMTAwJywNCgkJCScyMDAnID0+ICcyMDAnLA0KCQkJJzEwMDAnID0+ICcxMDAwJw0KCQkpOw0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2lucHV0X251bWJlcl9zaG93JywgJHRoaXMtPkNyZWF0ZUlucHV0RHJvcGRvd24oJGlkLCAnbnVtYmVyX3Nob3cnLCAkc2l6ZXMsIC0xLCAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnbnVtYmVyX3Nob3cnLCAnMjAnKSkpOw0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2lucHV0X251bWJlcl9zaG93X2FkbWluJywgJHRoaXMtPkNyZWF0ZUlucHV0RHJvcGRvd24oJGlkLCAnbnVtYmVyX3Nob3dfYWRtaW4nLCAkc2l6ZXMsIC0xLCAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnbnVtYmVyX3Nob3dfYWRtaW4nLCAnMjAnKSkpOw0KCQkNCgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdpbnB1dF9maWx0ZXJfc2l0ZScsICR0aGlzLT5DcmVhdGVJbnB1dENoZWNrYm94KCRpZCwgJ2ZpbHRlcl9zaXRlJywgMSwgJHRoaXMtPkdldFByZWZlcmVuY2UoJ2ZpbHRlcl9zaXRlJywgMCkpIC4gJyZuYnNwOycgLiAkdGhpcy0+TGFuZygndGl0bGVfZmlsdGVyX3NpdGVfbGFiZWwnKSk7DQoJCSR0aGlzLT5zbWFydHktPmFzc2lnbignaW5wdXRfZmlsdGVyX25ld3MnLCAkdGhpcy0+Q3JlYXRlSW5wdXRDaGVja2JveCgkaWQsICdmaWx0ZXJfbmV3cycsIDEsICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdmaWx0ZXJfbmV3cycsIDApKSk7DQoJCSR0aGlzLT5zbWFydHktPmFzc2lnbignaW5wdXRfYnV0dG9uX2ZpbHRlcicsICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsICdmaWx0ZXJfc2l0ZV9ub3cnLCAkdGhpcy0+TGFuZygnZmlsdGVyX3NpdGVfbm93JyksICcnLCAnJywgJHRoaXMtPkxhbmcoJ2FyZXlvdXN1cmVfYWx0ZXJjb250ZW50JykpKTsNCgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdpbnB1dF9zaW5nbGVfdGVybScsICR0aGlzLT5DcmVhdGVJbnB1dENoZWNrYm94KCRpZCwgJ3Nob3dfc2luZ2xlJywgMSwgJHRoaXMtPkdldFByZWZlcmVuY2UoJ3Nob3dfc2luZ2xlJywgMCkpIC4gJyZuYnNwOycgLiAkdGhpcy0+TGFuZygndGl0bGVfc2luZ2xlX3Rlcm1fbGFiZWwnKSk7DQoJCQ0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2lucHV0X2Rpc2FibGVfcHJldHR5dXJscycsICR0aGlzLT5DcmVhdGVJbnB1dENoZWNrYm94KCRpZCwgJ2Rpc2FibGVfcHJldHR5dXJscycsIDEsICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdkaXNhYmxlX3ByZXR0eXVybHMnLCAnMCcpKSAuICcmbmJzcDsnIC4gJHRoaXMtPkxhbmcoJ3RpdGxlX2Rpc2FibGVfcHJldHR5dXJsc19sYWJlbCcpKTsNCgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdpbnB1dF9nbG9zc2FyeV9pbmxpbmUnLCAkdGhpcy0+Q3JlYXRlSW5wdXRDaGVja2JveCgkaWQsICdnbG9zc2FyeV9pbmxpbmUnLCAxLCAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZ2xvc3NhcnlfaW5saW5lJywgJzEnKSkgLiAnJm5ic3A7JyAuICR0aGlzLT5MYW5nKCd0aXRsZV9nbG9zc2FyeV9pbmxpbmVfbGFiZWwnKSk7DQoJCSRyZXFzID0gYXJyYXkoDQoJCQkkdGhpcy0+TGFuZygnbm8nKSA9PiAnbm8nLA0KCQkJJHRoaXMtPkxhbmcoJ3llcycpID0+ICd5ZXMnDQoJCSk7DQoJCSR0aGlzLT5zbWFydHktPmFzc2lnbignaW5wdXRfcHJvY2Vzc19zbWFydHknLCAkdGhpcy0+Q3JlYXRlSW5wdXRSYWRpb0dyb3VwKCRpZCwgJ3Byb2Nlc3Nfc21hcnR5JywgJHJlcXMsICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdwcm9jZXNzX3NtYXJ0eScsICdubycpKSk7DQoJCSR0aGlzLT5zbWFydHktPmFzc2lnbignaW5wdXRfd3lzaXd5Z19kZWZpbml0aW9ucycsICR0aGlzLT5DcmVhdGVJbnB1dFJhZGlvR3JvdXAoJGlkLCAnd3lzaXd5Z19kZWZpbml0aW9ucycsICRyZXFzLCAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnd3lzaXd5Z19kZWZpbml0aW9ucycsICdubycpKSk7DQoJCSR0aGlzLT5zbWFydHktPmFzc2lnbignaW5wdXRfd3lzaXd5Z190ZXJtcycsICR0aGlzLT5DcmVhdGVJbnB1dFJhZGlvR3JvdXAoJGlkLCAnd3lzaXd5Z190ZXJtcycsICRyZXFzLCAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnd3lzaXd5Z190ZXJtcycsICdubycpKSk7DQoJCSR0aGlzLT5zbWFydHktPmFzc2lnbigndGl0bGVfd3lzaXd5Z190ZXJtc19oZWxwJywgJHRoaXMtPkxhbmcoJ3RpdGxlX3d5c2l3eWdfdGVybXNfaGVscCcpKTsNCgkJDQoJCSR0aGlzLT5zbWFydHktPmFzc2lnbignaW5wdXRfc2hvd190ZXJtaWRzJywgJHRoaXMtPkNyZWF0ZUlucHV0Q2hlY2tib3goJGlkLCAnc2hvd190ZXJtaWRzJywgMSwgJHRoaXMtPkdldFByZWZlcmVuY2UoJ3Nob3dfdGVybWlkcycsIDApKSAuICcmbmJzcDsnIC4gJHRoaXMtPkxhbmcoJ3RpdGxlX3Nob3dfdGVybWlkcycpKTsNCgkJDQoJCSRjb250ZW50b3BzID0gY21zbXMoKS0+R2V0Q29udGVudE9wZXJhdGlvbnMoKTsNCgkJLy8kcmV0W109IGFycmF5KGxhbmcoJ3BhcmVudCcpLic6JywkY29udGVudG9wcy0+Q3JlYXRlSGllcmFyY2h5RHJvcGRvd24oJHRoaXMtPm1JZCwgJHRoaXMtPm1QYXJlbnRJZCkpOw0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2lucHV0X2dsb3NzYXJ5X3BhZ2UnLCAkY29udGVudG9wcy0+Q3JlYXRlSGllcmFyY2h5RHJvcGRvd24oJycsICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdnbG9zc2FyeV9wYWdlJywgJycpLCAkaWQgLiAnZ2xvc3NhcnlfcGFnZScpKTsNCgkJDQoJCSR0aGlzLT5zbWFydHktPmFzc2lnbl9ieV9yZWYoJ21lc3NhZ2UnLCAkbWVzc2FnZSk7DQoJCSR0aGlzLT5zbWFydHktPmFzc2lnbignc2VjdGlvbicsICR0aGlzLT5MYW5nKCdtYW5hZ2VwcmVmcycpKTsNCgkJDQoJCSNEaXNwbGF5IHRlbXBsYXRlDQoJCWVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSgnYWRtaW5wcmVmcy50cGwnKTsNCgl9DQoJDQoJZnVuY3Rpb24gU3VibWl0UHJlZnMoJGlkLCAmJHBhcmFtcywgJHJldHVybmlkKQ0KCXsNCgkJaWYgKGlzc2V0KCRwYXJhbXNbJ2ZpbHRlcl9zaXRlX25vdyddKSkgew0KCQkJaW5jbHVkZShkaXJuYW1lKF9fRklMRV9fKSAuICcvZnVuY3Rpb24uZmlsdGVyX3NpdGUucGhwJyk7DQoJCX0gZWxzZSB7DQoJCQkkdGhpcy0+U2V0UHJlZmVyZW5jZSgnZGVmYXVsdF90ZW1wbGF0ZScsIGlzc2V0KCRwYXJhbXNbJ2RlZmF1bHRfdGVtcGxhdGUnXSkgPyAkcGFyYW1zWydkZWZhdWx0X3RlbXBsYXRlJ10gOiAnJyk7DQoJCQkkdGhpcy0+U2V0UHJlZmVyZW5jZSgnZGVmYXVsdF9zaW5nbGVfdGVybV90ZW1wbGF0ZScsIGlzc2V0KCRwYXJhbXNbJ2RlZmF1bHRfc2luZ2xlX3Rlcm1fdGVtcGxhdGUnXSkgPyAkcGFyYW1zWydkZWZhdWx0X3NpbmdsZV90ZXJtX3RlbXBsYXRlJ10gOiAnJyk7DQoJCQkkdGhpcy0+U2V0UHJlZmVyZW5jZSgnbnVtYmVyX3Nob3cnLCBpc3NldCgkcGFyYW1zWydudW1iZXJfc2hvdyddKSA/ICRwYXJhbXNbJ251bWJlcl9zaG93J10gOiAnMjAnKTsNCgkJCSR0aGlzLT5TZXRQcmVmZXJlbmNlKCdudW1iZXJfc2hvd19hZG1pbicsIGlzc2V0KCRwYXJhbXNbJ251bWJlcl9zaG93X2FkbWluJ10pID8gJHBhcmFtc1snbnVtYmVyX3Nob3dfYWRtaW4nXSA6ICcyMCcpOw0KCQkJJHRoaXMtPlNldFByZWZlcmVuY2UoJ2ZpbHRlcl9zaXRlJywgaXNzZXQoJHBhcmFtc1snZmlsdGVyX3NpdGUnXSkgPyAkcGFyYW1zWydmaWx0ZXJfc2l0ZSddIDogMCk7DQoJCQkkdGhpcy0+U2V0UHJlZmVyZW5jZSgnZmlsdGVyX25ld3MnLCBpc3NldCgkcGFyYW1zWydmaWx0ZXJfbmV3cyddKSA/ICRwYXJhbXNbJ2ZpbHRlcl9uZXdzJ10gOiAwKTsNCgkJCSR0aGlzLT5TZXRQcmVmZXJlbmNlKCdzaG93X3NpbmdsZScsIGlzc2V0KCRwYXJhbXNbJ3Nob3dfc2luZ2xlJ10pID8gJHBhcmFtc1snc2hvd19zaW5nbGUnXSA6IDApOw0KCQkJJHRoaXMtPlNldFByZWZlcmVuY2UoJ2Rpc2FibGVfcHJldHR5dXJscycsIGlzc2V0KCRwYXJhbXNbJ2Rpc2FibGVfcHJldHR5dXJscyddKSA/ICRwYXJhbXNbJ2Rpc2FibGVfcHJldHR5dXJscyddIDogJzAnKTsNCgkJCSR0aGlzLT5TZXRQcmVmZXJlbmNlKCdnbG9zc2FyeV9pbmxpbmUnLCBpc3NldCgkcGFyYW1zWydnbG9zc2FyeV9pbmxpbmUnXSkgPyAkcGFyYW1zWydnbG9zc2FyeV9pbmxpbmUnXSA6ICcwJyk7DQoJCQkkdGhpcy0+U2V0UHJlZmVyZW5jZSgnc2hvd190ZXJtaWRzJywgaXNzZXQoJHBhcmFtc1snc2hvd190ZXJtaWRzJ10pID8gJHBhcmFtc1snc2hvd190ZXJtaWRzJ10gOiAwKTsNCgkJCSR0aGlzLT5TZXRQcmVmZXJlbmNlKCdzcGluaW5nX2NoYXJzJywgaXNzZXQoJHBhcmFtc1snc3BpbmluZ19jaGFycyddKSA/ICRwYXJhbXNbJ3NwaW5pbmdfY2hhcnMnXSA6ICc1Jyk7DQoJCQkkdGhpcy0+U2V0UHJlZmVyZW5jZSgnZ2xvc3NhcnlfcGFnZScsIChpc3NldCgkcGFyYW1zWydnbG9zc2FyeV9wYWdlJ10pICYmICRwYXJhbXNbJ2dsb3NzYXJ5X3BhZ2UnXSAhPSAtMSkgPyAkcGFyYW1zWydnbG9zc2FyeV9wYWdlJ10gOiAnJyk7DQoJCQkkdGhpcy0+U2V0UHJlZmVyZW5jZSgncHJvY2Vzc19zbWFydHknLCBpc3NldCgkcGFyYW1zWydwcm9jZXNzX3NtYXJ0eSddKSA/ICRwYXJhbXNbJ3Byb2Nlc3Nfc21hcnR5J10gOiAnbm8nKTsNCgkJCSR0aGlzLT5TZXRQcmVmZXJlbmNlKCd3eXNpd3lnX2RlZmluaXRpb25zJywgaXNzZXQoJHBhcmFtc1snd3lzaXd5Z19kZWZpbml0aW9ucyddKSA/ICRwYXJhbXNbJ3d5c2l3eWdfZGVmaW5pdGlvbnMnXSA6ICdubycpOw0KCQkJJHRoaXMtPlNldFByZWZlcmVuY2UoJ3d5c2l3eWdfdGVybXMnLCBpc3NldCgkcGFyYW1zWyd3eXNpd3lnX3Rlcm1zJ10pID8gJHBhcmFtc1snd3lzaXd5Z190ZXJtcyddIDogJ25vJyk7DQoJCX0NCgkJcmV0dXJuICR0aGlzLT5FZGl0UHJlZnMoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsICR0aGlzLT5MYW5nKCdwcmVmc3VwZGF0ZWQnKSk7DQoJfQ0KCQ0KCQ0KCS8qIHBhc3MgYW4gYXNzb2NpYXRpdmUgYXJyYXkgd2l0aCBvbmUgb3IgbW9yZSBvZiB0aGUgZm9sbG93aW5nIHNldDoNCgl0aWQgPSB0ZXJtIGlkDQoJdGVybSA9IHRlcm0gbmFtZQ0KCWNhdGlkID0gY2F0ZWdvcnkgaWQNCgljYXQgPSBjYXRlZ29yeSBuYW1lDQoJdGVybV9jb3VudCA9IG51bWJlciB0byBzaG93IChpZiBsaXN0IHF1ZXJ5KQ0KCWtleXdvcmQgPSBrZXl3b3JkIHRvIGZpbmQgaW4gZGVmaW5pdGlvbg0KCXNvcnQgPSByYW5kb20vYWxwaGENCglzaG93X25hdiA9IHRydWUvZmFsc2UNCgkqLw0KCWZ1bmN0aW9uIFNtYXJ0eVRlcm1MaXN0KCRvcHRzID0gYXJyYXkoKSwgJGlkLCAkcmV0dXJuaWQpDQoJew0KCQkkZGIgICAgID0gY21zbXMoKS0+R2V0RGIoKTsNCgkJJGNvbmZpZyA9IGNtc21zKCktPkdldENvbmZpZygpOw0KCQkkZW5jICAgID0gJGNvbmZpZ1snZGVmYXVsdF9lbmNvZGluZyddOw0KCQlpZiAoJGVuYyA9PSAnJykgew0KCQkJJGVuYyA9ICd1dGYtOCc7DQoJCX0NCgkJJHF1ZXJ5ICAgPSAnU0VMRUNUIHQudGVybV9pZCwgdC50ZXJtLCB0LnRpcCwgdC5kZWZpbml0aW9uJzsNCgkJJGZyb20gICAgPSBhcnJheSgNCgkJCWNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfZ2xvc3NhcnlfdGVybSB0Jw0KCQkpOw0KCQkkd2hlcmUgICA9IGFycmF5KCk7DQoJCSRwcm1zICAgID0gYXJyYXkoKTsNCgkJJG5vX3Bhc3MgPSBhcnJheSgpOw0KCQlpZiAoIWlzc2V0KCRvcHRzWydjYXQnXSkgJiYgaXNzZXQoJF9SRVFVRVNUWydjYXQnXSkpIHsNCgkJCSRvcHRzWydjYXQnXSA9ICRfUkVRVUVTVFsnY2F0J107DQoJCX0NCgkJaWYgKCFpc3NldCgkb3B0c1snY2F0aWQnXSkgJiYgaXNzZXQoJF9SRVFVRVNUWydjYXRpZCddKSkgew0KCQkJJG9wdHNbJ2NhdGlkJ10gPSAkX1JFUVVFU1RbJ2NhdGlkJ107DQoJCX0NCgkJaWYgKCFpc3NldCgkb3B0c1sndGVybSddKSAmJiBpc3NldCgkX1JFUVVFU1RbJ3Rlcm0nXSkpIHsNCgkJCSRvcHRzWyd0ZXJtJ10gPSAkX1JFUVVFU1RbJ3Rlcm0nXTsNCgkJfQ0KCQlpZiAoIWlzc2V0KCRvcHRzWyd0aWQnXSkgJiYgaXNzZXQoJF9SRVFVRVNUWyd0aWQnXSkpIHsNCgkJCSRvcHRzWyd0aWQnXSA9ICRfUkVRVUVTVFsndGlkJ107DQoJCX0NCgkJaWYgKGlzc2V0KCRvcHRzWydub19wYXNzX3Jlc3RyaWN0aW9uJ10pKSB7DQoJCQkkbnAgPSBleHBsb2RlKCcsJywgJG9wdHNbJ25vX3Bhc3NfcmVzdHJpY3Rpb24nXSk7DQoJCQlmb3JlYWNoICgkbnAgYXMgJHRucCkgew0KCQkJCSRub19wYXNzWyR0bnBdID0gMTsNCgkJCX0NCgkJfQ0KCQlpZiAoaXNzZXQoJG9wdHNbJ2NhdCddKSkgew0KCQkJYXJyYXlfcHVzaCgkZnJvbSwgY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV9nbG9zc2FyeV9jYXQgYycpOw0KCQkJYXJyYXlfcHVzaCgkZnJvbSwgY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV9nbG9zc2FyeV90ZXJtX2NhdCB0YycpOw0KCQkJYXJyYXlfcHVzaCgkd2hlcmUsICdjLm5hbWUgPSA/IGFuZCBjLmNhdGVnb3J5X2lkID0gdGMuY2F0ZWdvcnlfaWQgYW5kIHQudGVybV9pZCA9IHRjLnRlcm1faWQnKTsNCgkJCWFycmF5X3B1c2goJHBybXMsICRvcHRzWydjYXQnXSk7DQoJCX0gZWxzZWlmIChpc3NldCgkb3B0c1snY2F0aWQnXSkpIHsNCgkJCWFycmF5X3B1c2goJGZyb20sIGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfZ2xvc3NhcnlfdGVybV9jYXQgdGMnKTsNCgkJCWFycmF5X3B1c2goJHdoZXJlLCAndGMuY2F0ZWdvcnlfaWQ9PyBhbmQgdC50ZXJtX2lkID0gdGMudGVybV9pZCcpOw0KCQkJYXJyYXlfcHVzaCgkcHJtcywgJG9wdHNbJ2NhdGlkJ10pOw0KCQl9DQoJCWlmIChpc3NldCgkb3B0c1sndGVybSddKSkgew0KCQkJYXJyYXlfcHVzaCgkd2hlcmUsICd0LnRlcm09PycpOw0KCQkJYXJyYXlfcHVzaCgkcHJtcywgJG9wdHNbJ3Rlcm0nXSk7DQoJCX0NCgkJaWYgKGlzc2V0KCRvcHRzWyd0ZXJtaWQnXSkpIHsNCgkJCWFycmF5X3B1c2goJHdoZXJlLCAndC50ZXJtX2lkPT8nKTsNCgkJCWFycmF5X3B1c2goJHBybXMsICRvcHRzWyd0ZXJtaWQnXSk7DQoJCX0NCgkJDQoJCWlmIChpc3NldCgkb3B0c1sna2V5d29yZCddKSkgew0KCQkJYXJyYXlfcHVzaCgkd2hlcmUsICJ0LmRlZmluaXRpb24gbGlrZSAnJSIgLiBhZGRzbGFzaGVzKCRvcHRzWydrZXl3b3JkJ10pIC4gIiUnIik7DQoJCX0NCgkJDQoJCSRxdWVyeSAuPSAnIGZyb20gJyAuIGltcGxvZGUoJywnLCAkZnJvbSk7DQoJCQ0KCQlpZiAoY291bnQoJHdoZXJlKSA+IDApIHsNCgkJCSRxdWVyeSAuPSAnIHdoZXJlICcgLiBpbXBsb2RlKCcgYW5kICcsICR3aGVyZSk7DQoJCX0NCg0KCQkkc29ydCA9ICcnOw0KCQlpZihpc3NldCgkb3B0c1snc29ydCddKSkgew0KCQkJJHNvcnQgPSAkb3B0c1snc29ydCddOw0KCQl9DQoNCgkJc3dpdGNoKCRzb3J0KXsNCgkJCWRlZmF1bHQ6DQoJCQljYXNlICdhbHBoYSc6DQoJCQkJJHF1ZXJ5IC49ICcgb3JkZXIgYnkgdGVybSBhc2MnOw0KCQkJCWJyZWFrOw0KCQkJY2FzZSAnY3JlYXRlX2RhdGUnOg0KCQkJCSRxdWVyeSAuPSAnIG9yZGVyIGJ5IGNyZWF0ZV9kYXRlIGRlc2MnOw0KCQkJCWJyZWFrOw0KCQkJY2FzZSAncmFuZG9tJzoNCgkJCQlpZiAoJGRiLT5kYnR5cGUgPT0gJ215c3FsJykgew0KCQkJCQkkcXVlcnkgLj0gJyBvcmRlciBieSByYW5kKCknOw0KCQkJCX0gZWxzZSBpZiAoJGRiLT5kYnR5cGUgPT0gJ3Bvc3RncmVzJykgew0KCQkJCQkkcXVlcnkgLj0gJyBvcmRlciBieSByYW5kb20oKSc7DQoJCQkJfSBlbHNlIGlmICgkZGItPmRidHlwZSA9PSAnc3Fsc2VydmVyJykgew0KCQkJCQkkcXVlcnkgLj0gJyBvcmRlciBieSBOZXdJZCgpJzsNCgkJCQl9IGVsc2UgaWYgKCRkYi0+ZGJ0eXBlID09ICdzcWxsaXRlJykgew0KCQkJCQkkcXVlcnkgLj0gJyBvcmRlciBieSByYW5kb20oKSc7DQoJCQkJfSBlbHNlIHsNCgkJCQkJLy8gcHVudA0KCQkJCQkkcXVlcnkgLj0gJyBvcmRlciBieSByYW5kb20oKSc7DQoJCQkJfQ0KCQkJCWJyZWFrOw0KCQl9DQoNCgkJaWYgKCFpc3NldCgkb3B0c1snc3RhcnQnXSkpIHsNCgkJCSRvcHRzWydzdGFydCddID0gMDsNCgkJfQ0KCQkNCgkJJG1heFNpemUgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnbnVtYmVyX3Nob3cnLCAnMjAnKTsNCgkJaWYgKGlzc2V0KCRvcHRzWyd0ZXJtX2NvdW50J10pICYmICFlbXB0eSgkb3B0c1sndGVybV9jb3VudCddKSkgew0KCQkJJG1heFNpemUgPSAkb3B0c1sndGVybV9jb3VudCddOw0KCQl9DQoJCQ0KCQkkZGJyZXN1bHQgICAgID0gJGRiLT5FeGVjdXRlKCRxdWVyeSwgJHBybXMpOw0KCQkkY291bnQgICAgICAgID0gMDsNCgkJJHNlbGVjdGVkVGVybSA9IC0xOw0KCQkkZW50cnlhcnJheSAgID0gYXJyYXkoKTsNCgkJd2hpbGUgKCRkYnJlc3VsdCAhPT0gZmFsc2UgJiYgJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKSkgew0KCQkJJG9uZXJvdyAgICAgPSBhcnJheSgpOw0KCQkJJGxpbmtwYXJhbXMgPSBhcnJheSgpOw0KCQkJaWYgKCFpc3NldCgkbm9fcGFzc1sndGVybV9jb3VudCddKSkgew0KCQkJCSRsaW5rcGFyYW1zWyd0ZXJtX2NvdW50J10gPSAkbWF4U2l6ZTsNCgkJCX0NCgkJCWlmIChpc3NldCgkb3B0c1snc29ydCddKSAmJiAhaXNzZXQoJG5vX3Bhc3NbJ3NvcnQnXSkpIHsNCgkJCQkkbGlua3BhcmFtc1snc29ydCddID0gJG9wdHNbJ3NvcnQnXTsNCgkJCX0NCgkJCWlmIChpc3NldCgkb3B0c1snc3RhcnQnXSkgJiYgIWlzc2V0KCRub19wYXNzWydzdGFydCddKSkgew0KCQkJCSRsaW5rcGFyYW1zWydzdGFydCddID0gJG9wdHNbJ3N0YXJ0J107DQoJCQl9DQoJCQlpZiAoaXNzZXQoJG9wdHNbJ2tleXdvcmQnXSkgJiYgIWlzc2V0KCRub19wYXNzWydrZXl3b3JkJ10pKSB7DQoJCQkJJGxpbmtwYXJhbXNbJ2tleXdvcmQnXSA9ICRvcHRzWydrZXl3b3JkJ107DQoJCQl9DQoJCQlpZiAoaXNzZXQoJG9wdHNbJ2NhdCddKSAmJiAhaXNzZXQoJG5vX3Bhc3NbJ2NhdCddKSkgew0KCQkJCSRsaW5rcGFyYW1zWydjYXQnXSA9ICRvcHRzWydjYXQnXTsNCgkJCX0NCgkJCWlmIChpc3NldCgkb3B0c1sndGVtcGxhdGUnXSkgJiYgIWlzc2V0KCRub19wYXNzWyd0ZW1wbGF0ZSddKSkgew0KCQkJCSRsaW5rcGFyYW1zWyd0ZW1wbGF0ZSddID0gJG9wdHNbJ3RlbXBsYXRlJ107DQoJCQl9DQoJCQkkb25lcm93WydpZCddICAgICAgID0gJHJvd1sndGVybV9pZCddOw0KCQkJJG9uZXJvd1snbmFtZSddICAgICA9ICRyb3dbJ3Rlcm0nXTsNCgkJCSRvbmVyb3dbJ3RpcCddICAgICAgPSAkcm93Wyd0aXAnXTsNCgkJCSRvbmVyb3dbJ3NhZmV0ZXJtJ10gPSBwcmVnX3JlcGxhY2UoJy9bXmEtekEtWl0vJywgIiIsICRyb3dbJ3Rlcm0nXSk7DQoJCQkkcHJldHR5dXJsICAgICAgICAgID0gJyc7DQoJCQlpZiAoJHRoaXMtPkdldFByZWZlcmVuY2UoJ2Rpc2FibGVfcHJldHR5dXJscycsIDApID09IDApIHsNCgkJCQkkcHJldHR5dXJsID0gJ2dsb3NzYXJ5JzsNCgkJCQlpZiAoJHRoaXMtPkdldFByZWZlcmVuY2UoJ3Nob3dfc2luZ2xlJywgJzAnKSA9PSAnMScpIHsNCgkJCQkJJHByZXR0eXVybCAuPSAnc2luZyc7DQoJCQkJfQ0KCQkJCSRwcmV0dHl1cmwgLj0gJy8nIC4gJHJvd1sndGVybSddOw0KCQkJCWlmIChpc3NldCgkb3B0c1snY2F0J10pKSB7DQoJCQkJCSRwcmV0dHl1cmwgLj0gJy8nIC4gJG9wdHNbJ2NhdCddOw0KCQkJCX0NCgkJCQkkcHJldHR5dXJsIC49ICcvJyAuICRyZXR1cm5pZDsNCgkJCX0NCgkJCQ0KCQkJaWYgKCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdwcm9jZXNzX3NtYXJ0eScsICcnKSA9PSAneWVzJykgew0KCQkJCSRkZWYgPSAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlRnJvbURhdGEoJHJvd1snZGVmaW5pdGlvbiddKTsNCgkJCX0gZWxzZSB7DQoJCQkJJGRlZiA9ICRyb3dbJ2RlZmluaXRpb24nXTsNCgkJCX0NCgkJCQ0KCQkJJG9uZXJvd1snZGVmaW5pdGlvbiddID0gJGRlZjsNCgkJCSRvbmVyb3dbJ3Nob3dkZWYnXSAgICA9IDA7DQoJCQlpZiAoaXNzZXQoJG9wdHNbJ3RpZCddKSAmJiAkb3B0c1sndGlkJ10gPT0gJHJvd1sndGVybV9pZCddKSB7DQoJCQkJJG9uZXJvd1snc2hvd2RlZiddID0gMTsNCgkJCQkkc2VsZWN0ZWRUZXJtICAgICAgPSAkY291bnQ7DQoJCQl9DQoJCQlpZiAoaXNzZXQoJG9wdHNbJ3Rlcm0nXSkgJiYgJG9wdHNbJ3Rlcm0nXSA9PSAkcm93Wyd0ZXJtJ10pIHsNCgkJCQkkb25lcm93WydzaG93ZGVmJ10gPSAxOw0KCQkJCSRzZWxlY3RlZFRlcm0gICAgICA9ICRjb3VudDsNCgkJCX0NCgkJCQ0KCQkJaWYgKCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdkaXNhYmxlX3ByZXR0eXVybHMnLCAwKSA9PSAwKSB7DQoJCQkJJG9uZXJvd1sndGVybSddID0gJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCAnc2hvdycsICRyZXR1cm5pZCwgJHJvd1sndGVybSddLCBhcnJheV9tZXJnZSgkbGlua3BhcmFtcywgYXJyYXkoDQoJCQkJCSd0aWQnID0+ICRyb3dbJ3Rlcm1faWQnXQ0KCQkJCSkpLCAnJywgZmFsc2UsIGZhbHNlLCAnJywgZmFsc2UsICRwcmV0dHl1cmwpOw0KCQkJfSBlbHNlIHsNCgkJCQlpZiAoJHRoaXMtPkdldFByZWZlcmVuY2UoJ3Nob3dfc2luZ2xlJywgJzAnKSA9PSAnMScpIHsNCgkJCQkJJG9uZXJvd1sndGVybSddID0gJHRoaXMtPkNyZWF0ZVRlcm1MaW5rKCRvbmVyb3dbJ25hbWUnXSwgJG9uZXJvd1snc2FmZXRlcm0nXSwgJG9uZXJvd1snaWQnXSwgJG9uZXJvd1sndGlwJ10sICRvbmVyb3dbJ2RlZmluaXRpb24nXSwgZmFsc2UsICcnLCB0cnVlLCAkb3B0c1snY2F0J10pOw0KCQkJCX0gZWxzZSB7DQoJCQkJCSRvbmVyb3dbJ3Rlcm0nXSA9ICR0aGlzLT5DcmVhdGVUZXJtTGluaygkb25lcm93WyduYW1lJ10sICRvbmVyb3dbJ3NhZmV0ZXJtJ10sICRvbmVyb3dbJ2lkJ10sICRvbmVyb3dbJ3RpcCddLCAkb25lcm93WydkZWZpbml0aW9uJ10sIHRydWUsICcnLCBmYWxzZSwgJG9wdHNbJ2NhdCddKTsNCgkJCQl9DQoJCQl9DQoJCQkNCgkJCWFycmF5X3B1c2goJGVudHJ5YXJyYXksICRvbmVyb3cpOw0KCQkJJGNvdW50Kys7DQoJCX0NCgkJDQoJCSRzcGluaW5nX2NoYXJzID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ3NwaW5pbmdfY2hhcnMnLCAnNScpICsgMTsNCgkJaWYgKCFpc3NldCgkb3B0c1snc2hvd19uYXYnXSkgfHwgJG9wdHNbJ3Nob3dfbmF2J10gIT0gJzAnKSB7DQoJCQlpZiAoJHNlbGVjdGVkVGVybSA+IC0xKSB7DQoJCQkJJHN0YXJ0ID0gKChpbnRlZ2VyKSAoJHNlbGVjdGVkVGVybSAvICRtYXhTaXplKSkgKiAkbWF4U2l6ZTsNCgkJCX0gZWxzZSBpZiAoaXNzZXQoJG9wdHNbJ3N0YXJ0J10pKSB7DQoJCQkJJHN0YXJ0ID0gJG9wdHNbJ3N0YXJ0J107DQoJCQl9IGVsc2Ugew0KCQkJCSRzdGFydCA9IDA7DQoJCQl9DQoJCQkNCgkJCWlmICgkc3RhcnQgPiAwKSB7DQoJCQkJJGxpbmtwYXJhbXNbJ3N0YXJ0J10gPSBtYXgoJHN0YXJ0IC0gJG1heFNpemUsIDApOw0KCQkJCSRwcmV0dHl1cmwgICAgICAgICAgID0gJyc7DQoJCQkJaWYgKCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdkaXNhYmxlX3ByZXR0eXVybHMnLCAwKSA9PSAwKSB7DQoJCQkJCSRwcmV0dHl1cmwgPSAnZ2xvc3Nhcnludi8nIC4gJGxpbmtwYXJhbXNbJ3N0YXJ0J107DQoJCQkJCWlmIChpc3NldCgkb3B0c1snY2F0J10pKSB7DQoJCQkJCQkkcHJldHR5dXJsIC49ICcvJyAuICRvcHRzWydjYXQnXTsNCgkJCQkJfQ0KCQkJCQkkcHJldHR5dXJsIC49ICcvJyAuICRyZXR1cm5pZDsNCgkJCQl9DQoJCQkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCduYXZwcmV2JywgJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCAnc2hvdycsICRyZXR1cm5pZCwgJHRoaXMtPkxhbmcoJ3ByZXYnKSwgJGxpbmtwYXJhbXMsICcnLCBmYWxzZSwgZmFsc2UsICcnLCBmYWxzZSwgJHByZXR0eXVybCkpOw0KCQkJfSBlbHNlIHsNCgkJCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3ByZXYnLCAnJyk7DQoJCQl9DQoJCQkNCgkJCSRjb3VudCA9IGNvdW50KCRlbnRyeWFycmF5KTsNCgkJCQ0KCQkJJHN0YXJ0cyA9IGFycmF5KCk7DQoJCQkkbGlua3MgID0gYXJyYXkoKTsNCgkJCWlmICgkY291bnQgPiAkbWF4U2l6ZSkgew0KCQkJCS8vIHBhc3MgMTogbG9hZCBlZGdlIHdvcmRzIGludG8gYXJyYXkNCgkJCQlmb3IgKCRpID0gMDsgJGkgPCAkY291bnQ7ICRpICs9ICRtYXhTaXplKSB7DQoJCQkJCWFycmF5X3B1c2goJHN0YXJ0cywgJHRoaXMtPmxvY2FsX21iX3VjZmlyc3QobWJfc3RydG9sb3dlcigkZW50cnlhcnJheVskaV1bJ25hbWUnXSkpKTsNCgkJCQkJYXJyYXlfcHVzaCgkbGlua3MsICgkaSArIDEpKTsNCgkJCQkJaWYgKCRpICsgJG1heFNpemUgLSAxIDwgJGNvdW50KSB7DQoJCQkJCQlhcnJheV9wdXNoKCRzdGFydHMsICR0aGlzLT5sb2NhbF9tYl91Y2ZpcnN0KG1iX3N0cnRvbG93ZXIoJGVudHJ5YXJyYXlbJGkgKyAkbWF4U2l6ZSAtIDFdWyduYW1lJ10pKSk7DQoJCQkJCQlhcnJheV9wdXNoKCRsaW5rcywgKCRpICsgMSkpOw0KCQkJCQl9DQoJCQkJfQ0KCQkJCWlmICgoJGNvdW50ICUgJG1heFNpemUpID4gMSkgew0KCQkJCQlhcnJheV9wdXNoKCRzdGFydHMsICR0aGlzLT5sb2NhbF9tYl91Y2ZpcnN0KG1iX3N0cnRvbG93ZXIoJGVudHJ5YXJyYXlbJGNvdW50IC0gMV1bJ25hbWUnXSkpKTsNCgkJCQkJYXJyYXlfcHVzaCgkbGlua3MsICgkY291bnQgLSAxKSk7DQoJCQkJfQ0KCQkJfSBlbHNlIGlmICgkY291bnQgPiAxKSB7DQoJCQkJYXJyYXlfcHVzaCgkc3RhcnRzLCAkdGhpcy0+bG9jYWxfbWJfdWNmaXJzdChtYl9zdHJ0b2xvd2VyKCRlbnRyeWFycmF5WzBdWyduYW1lJ10pKSk7DQoJCQkJYXJyYXlfcHVzaCgkbGlua3MsIDEpOw0KCQkJCWFycmF5X3B1c2goJHN0YXJ0cywgJHRoaXMtPmxvY2FsX21iX3VjZmlyc3QobWJfc3RydG9sb3dlcigkZW50cnlhcnJheVskY291bnQgLSAxXVsnbmFtZSddKSkpOw0KCQkJCWFycmF5X3B1c2goJGxpbmtzLCAkY291bnQpOw0KCQkJfQ0KCQkJLy8gcGFzcyAyOiBtYWtlICdlbSBtaW5pbXVtIGRpZmZlcmVuY2UNCgkJCQ0KCQkJJGVudHJ5U2l6ZSA9IGNvdW50KCRzdGFydHMpOw0KCQkJZm9yICgkaSA9IDA7ICRpIDwgJGVudHJ5U2l6ZTsgJGkrKykgew0KCQkJCWlmICgkaSA+IDAgJiYgJGkgJSAyID09IDApIHsNCgkJCQkJaWYgKCRkaWZMZW4gPiAxKSB7DQoJCQkJCQkkZGlmTGVuLS07DQoJCQkJCX0NCgkJCQl9IGVsc2Ugew0KCQkJCQkkZGlmTGVuID0gMTsNCgkJCQl9DQoJCQkJJGZsZXQgPSAnJzsNCgkJCQkkbGxldCA9ICcnOw0KCQkJCXdoaWxlICgkZmxldCA9PSAkbGxldCAmJiAkZGlmTGVuIDwgJHNwaW5pbmdfY2hhcnMpIHsNCgkJCQkJaWYgKG1iX3N0cmxlbigkc3RhcnRzWyRpXSkgPj0gJGRpZkxlbikgew0KCQkJCQkJJGZsZXQgPSBtYl9zdWJzdHIoJHN0YXJ0c1skaV0sIDAsICRkaWZMZW4sICRlbmMpOw0KCQkJCQl9DQoJCQkJCWlmICgkaSArIDEgPCAkZW50cnlTaXplICYmIG1iX3N0cmxlbigkc3RhcnRzW21pbigkaSArIDEsICRlbnRyeVNpemUgLSAxKV0pID49ICRkaWZMZW4pIHsNCgkJCQkJCSRsbGV0ID0gbWJfc3Vic3RyKCRzdGFydHNbbWluKCRpICsgMSwgJGVudHJ5U2l6ZSAtIDEpXSwgMCwgJGRpZkxlbiwgJGVuYyk7DQoJCQkJCX0NCgkJCQkJJGRpZkxlbisrOw0KCQkJCX0NCgkJCQkkc3RhcnRzWyRpXSA9IG1iX3N1YnN0cigkc3RhcnRzWyRpXSwgMCwgJGRpZkxlbiAtIDEsICRlbmMpOw0KCQkJfQ0KCQkJDQoJCQkkbmF2RWxlbWVudHMgPSBhcnJheSgpOw0KCQkJZm9yICgkaSA9IDA7ICRpIDwgJGVudHJ5U2l6ZTsgJGkgKz0gMikgew0KCQkJCSR0aGlzRWxlbWVudCAgICAgICAgID0gYXJyYXkoKTsNCgkJCQkkdGhpc0VsZW1lbnRbJ25hbWUnXSA9ICRzdGFydHNbJGldOw0KCQkJCWlmICgkaSA8ICRlbnRyeVNpemUgLSAxKSB7DQoJCQkJCSR0aGlzRWxlbWVudFsnbmFtZSddIC49ICctJyAuICRzdGFydHNbJGkgKyAxXTsNCgkJCQl9DQoJCQkJaWYgKCRzdGFydCA+PSAkbGlua3NbJGldICYmICRzdGFydCA8ICRpICsgJG1heFNpemUpIHsNCgkJCQkJJHRoaXNFbGVtZW50WydsaW5rJ10gPSAnJzsNCgkJCQl9IGVsc2Ugew0KCQkJCQkkbGlua3BhcmFtc1snc3RhcnQnXSA9ICRsaW5rc1skaV0gLSAxOw0KCQkJCQkkcHJldHR5dXJsICAgICAgICAgICA9ICcnOw0KCQkJCQlpZiAoJHRoaXMtPkdldFByZWZlcmVuY2UoJ2Rpc2FibGVfcHJldHR5dXJscycsIDApID09IDApIHsNCgkJCQkJCSRwcmV0dHl1cmwgPSAnZ2xvc3Nhcnludi8nIC4gJGxpbmtwYXJhbXNbJ3N0YXJ0J107DQoJCQkJCQlpZiAoaXNzZXQoJG9wdHNbJ2NhdCddKSkgew0KCQkJCQkJCSRwcmV0dHl1cmwgLj0gJy8nIC4gJG9wdHNbJ2NhdCddOw0KCQkJCQkJfQ0KCQkJCQkJJHByZXR0eXVybCAuPSAnLycgLiAkcmV0dXJuaWQ7DQoJCQkJCX0NCgkJCQkJJHRoaXNFbGVtZW50WydsaW5rJ10gPSAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdzaG93JywgJHJldHVybmlkLCAnJywgJGxpbmtwYXJhbXMsICcnLCB0cnVlLCBmYWxzZSwgJycsIGZhbHNlLCAkcHJldHR5dXJsKTsNCgkJCQl9DQoJCQkJYXJyYXlfcHVzaCgkbmF2RWxlbWVudHMsICR0aGlzRWxlbWVudCk7DQoJCQl9DQoJCQkNCgkJCWlmICgkc3RhcnQgKyAkbWF4U2l6ZSA8ICRjb3VudCkgew0KCQkJCSRsaW5rcGFyYW1zWydzdGFydCddID0gKCRzdGFydCArICRtYXhTaXplKTsNCgkJCQkkcHJldHR5dXJsICAgICAgICAgICA9ICcnOw0KCQkJCWlmICgkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZGlzYWJsZV9wcmV0dHl1cmxzJywgMCkgPT0gMCkgew0KCQkJCQkkcHJldHR5dXJsID0gJ2dsb3NzYXJ5bnYvJyAuICRsaW5rcGFyYW1zWydzdGFydCddOw0KCQkJCQlpZiAoaXNzZXQoJG9wdHNbJ2NhdCddKSkgew0KCQkJCQkJJHByZXR0eXVybCAuPSAnLycgLiAkb3B0c1snY2F0J107DQoJCQkJCX0NCgkJCQkJJHByZXR0eXVybCAuPSAnLycgLiAkcmV0dXJuaWQ7DQoJCQkJfQ0KCQkJCSR0aGlzLT5zbWFydHktPmFzc2lnbignbmF2bmV4dCcsICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwgJ3Nob3cnLCAkcmV0dXJuaWQsICR0aGlzLT5MYW5nKCduZXh0JyksICRsaW5rcGFyYW1zLCAnJywgZmFsc2UsIGZhbHNlLCAnJywgZmFsc2UsICRwcmV0dHl1cmwpKTsNCgkJCX0gZWxzZSB7DQoJCQkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCduYXZuZXh0JywgJycpOw0KCQkJfQ0KCQkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCduYXZhcnJheScsICRuYXZFbGVtZW50cyk7DQoJCX0gZWxzZSB7DQoJCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ25hdmFycmF5JywgYXJyYXkoKSk7DQoJCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ25hdm5leHQnLCAnJyk7DQoJCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ25hdnByZXYnLCAnJyk7DQoJCX0NCgkJDQoJCSRlbnRyeWFycmF5ID0gYXJyYXlfc3BsaWNlKCRlbnRyeWFycmF5LCAkc3RhcnQsICRtYXhTaXplKTsNCgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0aXRsZV9zZWN0aW9uJywgJHRoaXMtPkxhbmcoJ3RpdGxlX3Rlcm1fbGlzdCcpKTsNCgkJDQoJCWlmIChpc3NldCgkb3B0c1snY2F0J10pKSB7DQoJCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2NhdCcsICRvcHRzWydjYXQnXSk7DQoJCX0NCgkJDQoJCSR0aGlzLT5zbWFydHktPmFzc2lnbl9ieV9yZWYoJ2l0ZW1zJywgJGVudHJ5YXJyYXkpOw0KCQkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2l0ZW1jb3VudCcsIGNvdW50KCRlbnRyeWFycmF5KSk7DQoJfQ0KCQ0KCWZ1bmN0aW9uIFNldFBhcmFtZXRlcnMoKQ0KCXsNCgkJJHRoaXMtPlJlc3RyaWN0VW5rbm93blBhcmFtcygpOw0KCQkkdGhpcy0+UmVnaXN0ZXJNb2R1bGVQbHVnaW4oKTsNCgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignZ2xvc3NhcnlzaW5nJywgJycsICcnKTsNCgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2dsb3NzYXJ5c2luZycsIENMRUFOX1NUUklORyk7DQoJCQ0KCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCd0aWQnLCAnJywgJHRoaXMtPkxhbmcoJ2hlbHBfZ2xvc3NhcnlfdGlkJykpOw0KCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgndGlkJywgQ0xFQU5fSU5UKTsNCgkJDQoJCSR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ2NhdGlkJywgJycsICR0aGlzLT5MYW5nKCdoZWxwX2dsb3NzYXJ5X2NhdGlkJykpOw0KCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnY2F0dGlkJywgQ0xFQU5fSU5UKTsNCgkJDQoJCSR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ3N0YXJ0JywgJycsICR0aGlzLT5MYW5nKCdoZWxwX2dsb3NzYXJ5X3N0YXJ0JykpOw0KCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnc3RhcnQnLCBDTEVBTl9JTlQpOw0KCQkNCgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcigndGVybScsICcnLCAkdGhpcy0+TGFuZygnaGVscF9nbG9zc2FyeV90ZXJtJykpOw0KCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgndGVybScsIENMRUFOX1NUUklORyk7DQoJCQ0KCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdjYXQnLCAnJywgJHRoaXMtPkxhbmcoJ2hlbHBfZ2xvc3NhcnlfY2F0JykpOw0KCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnY2F0JywgQ0xFQU5fU1RSSU5HKTsNCgkJDQoJCSR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ3RlbXBsYXRlJywgJycsICR0aGlzLT5MYW5nKCdoZWxwX2dsb3NzYXJ5X3RlbXBsYXRlJykpOw0KCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgndGVtcGxhdGUnLCBDTEVBTl9TVFJJTkcpOw0KCQkNCgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcigndGVybV9jb3VudCcsICcnLCAkdGhpcy0+TGFuZygnaGVscF9nbG9zc2FyeV90ZXJtX2NvdW50JykpOw0KCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgndGVybV9jb3VudCcsIENMRUFOX0lOVCk7DQoJCQ0KCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdzaG93X25hdicsICcnLCAkdGhpcy0+TGFuZygnaGVscF9nbG9zc2FyeV9zaG93X25hdicpKTsNCgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ3Nob3dfbmF2JywgQ0xFQU5fSU5UKTsNCgkJDQoJCSR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ25vX3Bhc3NfcmVzdHJpY3Rpb24nLCAnJywgJHRoaXMtPkxhbmcoJ2hlbHBfZ2xvc3Nhcnlfbm9fcGFzc19yZXN0cmljdGlvbicpKTsNCgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ25vX3Bhc3NfcmVzdHJpY3Rpb24nLCBDTEVBTl9TVFJJTkcpOw0KCQkNCgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignYWNjZXB0JywgJycsICR0aGlzLT5MYW5nKCdoZWxwX2dsb3NzYXJ5X25vX3Bhc3NfcmVzdHJpY3Rpb24nKSk7DQoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdhY2NlcHQnLCBDTEVBTl9TVFJJTkcpOw0KCQkNCgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcigndGFyZ2V0JywgJycsICR0aGlzLT5MYW5nKCdoZWxwX2dsb3NzYXJ5X3RhcmdldCcpKTsNCgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ3RhcmdldCcsIENMRUFOX1NUUklORyk7DQoJCQ0KCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdrZXl3b3JkJywgJycsICR0aGlzLT5MYW5nKCdoZWxwX2dsb3NzYXJ5X2tleXdvcmQnKSk7DQoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdrZXl3b3JkJywgQ0xFQU5fU1RSSU5HKTsNCgkJDQoJCSR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ3NvcnQnLCAnYWxwaGEnLCAkdGhpcy0+TGFuZygnaGVscF9nbG9zc2FyeV9zb3J0JykpOw0KCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnc29ydCcsIENMRUFOX1NUUklORyk7DQoJCQ0KCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdnbG9zc2FyeScsICcnLCAnJyk7DQoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdnbG9zc2FyeScsIENMRUFOX1NUUklORyk7DQoJCQ0KCQkvLyBGb3Igdmlld2luZyBhIHBpY3R1cmUNCgkJJHRoaXMtPlJlZ2lzdGVyUm91dGUoJy9nbG9zc2FyeXNpbmdcLyg/UDx0aWQ+WzAtOV0rKVwvKD9QPHJldHVybmlkPlswLTldKykkLycsIGFycmF5KA0KCQkJJ2FjdGlvbicgPT4gJ3Nob3dzaW5nbGUnDQoJCSkpOw0KCQkkdGhpcy0+UmVnaXN0ZXJSb3V0ZSgnL2dsb3NzYXJ5c2luZ1wvKD9QPHRlcm0+W2EtekEtWl0rKVwvKD9QPHJldHVybmlkPlswLTldKykkLycsIGFycmF5KA0KCQkJJ2FjdGlvbicgPT4gJ3Nob3dzaW5nbGUnDQoJCSkpOw0KCQkkdGhpcy0+UmVnaXN0ZXJSb3V0ZSgnL2dsb3NzYXJ5c2luZ1wvKD9QPHRpZD5bMC05XSspXC8oP1A8Y2F0PlthLXpBLVpdKylcLyg/UDxyZXR1cm5pZD5bMC05XSspJC8nLCBhcnJheSgNCgkJCSdhY3Rpb24nID0+ICdzaG93c2luZ2xlJw0KCQkpKTsNCgkJJHRoaXMtPlJlZ2lzdGVyUm91dGUoJy9nbG9zc2FyeVwvKD9QPHRpZD5bMC05XSspXC8oP1A8cmV0dXJuaWQ+WzAtOV0rKSQvJywgYXJyYXkoDQoJCQknYWN0aW9uJyA9PiAnc2hvdycNCgkJKSk7DQoJCSR0aGlzLT5SZWdpc3RlclJvdXRlKCcvZ2xvc3NhcnlcLyg/UDx0ZXJtPltceGU0XHhjNFx4ZjZceGQ2XHhmY1x4ZGNcdyBdKylcLyg/UDxyZXR1cm5pZD5bMC05XSspJC91JywgYXJyYXkoDQoJCQknYWN0aW9uJyA9PiAnc2hvdycNCgkJKSk7DQoJCSR0aGlzLT5SZWdpc3RlclJvdXRlKCcvZ2xvc3NhcnlcLyg/UDx0ZXJtPltceGU0XHhjNFx4ZjZceGQ2XHhmY1x4ZGNcdyBdKylcLyg/UDxjYXQ+Lis/KVwvKD9QPHJldHVybmlkPlswLTldKykkL3UnLCBhcnJheSgNCgkJCSdhY3Rpb24nID0+ICdzaG93Jw0KCQkpKTsNCgkJJHRoaXMtPlJlZ2lzdGVyUm91dGUoJy9nbG9zc2FyeVwvKD9QPHRpZD5bMC05XSspXC8oP1A8Y2F0Pi4rPylcLyg/UDxyZXR1cm5pZD5bMC05XSspJC8nLCBhcnJheSgNCgkJCSdhY3Rpb24nID0+ICdzaG93Jw0KCQkpKTsNCgkJJHRoaXMtPlJlZ2lzdGVyUm91dGUoJy9nbG9zc2FyeXBnXC8oP1A8dGlkPlswLTldKylcLyg/UDxyZXR1cm5pZD5bMC05XSspJC8nLCBhcnJheSgNCgkJCSdhY3Rpb24nID0+ICdzaG93Jw0KCQkpKTsNCgkJJHRoaXMtPlJlZ2lzdGVyUm91dGUoJy9nbG9zc2FyeW52XC8oP1A8c3RhcnQ+WzAtOV0rKVwvKD9QPGNhdD4uKz8pXC8oP1A8cmV0dXJuaWQ+WzAtOV0rKSQvJywgYXJyYXkoDQoJCQknYWN0aW9uJyA9PiAnc2hvdycNCgkJKSk7DQoJCSR0aGlzLT5SZWdpc3RlclJvdXRlKCcvZ2xvc3NhcnludlwvKD9QPHN0YXJ0PlswLTldKylcLyg/UDxyZXR1cm5pZD5bMC05XSspJC8nLCBhcnJheSgNCgkJCSdhY3Rpb24nID0+ICdzaG93Jw0KCQkpKTsNCgl9DQoJDQoJZnVuY3Rpb24gbG9jYWxfbWJfdWNmaXJzdCgkc3RyaW5nKQ0KCXsNCgkJJHN0cmluZyA9IG1iX3N0cnRvdXBwZXIobWJfc3Vic3RyKCRzdHJpbmcsIDAsIDEpKSAuIG1iX3N1YnN0cigkc3RyaW5nLCAxKTsNCgkJcmV0dXJuICRzdHJpbmc7DQoJfQ0KCQ0KfQ0KPz4NCg==]]></data>
	</file>
	<file>
	  <filename>/includes/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/includes/.DS_Store</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[AAAAAUJ1ZDEAABAAAAAIAAAAEAAAAAIJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAYAAAABAAAQAABTAHQAbwByAGVJbAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYAAAAJAC4ARABTAF8AUwB0AG8AcgBlSWxvY2Jsb2IAAAAQAAACXgAAACj///////8AAAAAABAAZABlAGYAYQB1AGwAdAAtAEgAVABNAEwALgB0AHAAbElsb2NibG9iAAAAEAAAAEYAAAAo////////AAAAAAAbAHMAaQBtAHAAbABlAC0ASABUAE0ATAAtAHMAaQBuAGcAbABlAC0AdABlAHIAbQAuAHQAcABsSWxvY2Jsb2IAAAAQAAAAzAAAACj///////8AAAAAAA8AcwBpAG0AcABsAGUALQBIAFQATQBMAC4AdABwAGxJbG9jYmxvYgAAABAAAAFSAAAAKP///////wAAAAAAHQBzAHQAeQBsAGUAcwBoAGUAZQB0AC0AbwBwAGUAbgAtAGEAbgBkAC0AYwBsAG8AcwBlAC4AdABwAGxJbG9jYmxvYgAAABAAAAHYAAAAKP///////wAAAAAAGQB1AGcAbAB5AC0ASABUAE0ATAAtAHQAYQBiAGwAZQAtAGIAYQBzAGUAZAAuAHQAcABsSWxvY2Jsb2IAAAAQAAAARgAAAJj///////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAgLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAACAAAAABAAAAQAAAAAEAAACAAAAAAQAAAQAAAAABAAACAAAAAAEAAAQAAAAAAAAAAAEAABAAAAAAAQAAIAAAAAABAABAAAAAAAEAAIAAAAAAAQABAAAAAAABAAIAAAAAAAEABAAAAAAAAQAIAAAAAAABABAAAAAAAAEAIAAAAAAAAQBAAAAAAAABAIAAAAAAAAEBAAAAAAAAAQIAAAAAAAABBAAAAAAAAAEIAAAAAAAAARAAAAAAAAABIAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAEAsAAABFAAACCQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBERTREIAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAIAAAAGAAAAAAAAAAAQAAAIAAAAABAAABAAAAAAAAAAABAAAEAAAAAAIAAAgAAAAYAAAAAAAAAAABAAAgAAAAAAEAAEAAAAAAAQAAgAAAAAABAAEAAAAAAAEAAgAAAAAAAQAEAAAAAAABAAgAAAAAAAEAEAAAAAAAAQAgAAAAAAABAEAAAAAAAAEAgAAAAAAAAQEAAAAAAAABAgAAAAAAAAEEAAAAAAAAAQgAAAAAAAABEAAAAAAAAAEgAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==]]></data>
	</file>
	<file>
	  <filename>/includes/default-HTML.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGRpdiBjbGFzcz0iZ2xvc3NhcnluYXYiPnskbmF2cHJldn0gIHtzZWN0aW9uIG5hbWU9bnVtbG9vcCBsb29wPSRuYXZhcnJheX08YSBocmVmPSJ7JG5hdmFycmF5W251bWxvb3BdLmxpbmt9Ij57JG5hdmFycmF5W251bWxvb3BdLm5hbWV9PC9hPntpZiAhICRzbWFydHkuc2VjdGlvbi5udW1sb29wLmxhc3R9IDogey9pZn17L3NlY3Rpb259ICB7JG5hdm5leHR9PC9kaXY+PGJyIC8+CntzZWN0aW9uIG5hbWU9bnVtbG9vcCBsb29wPSRpdGVtc30KPGRpdiBjbGFzcz0idGVybXtpZiAkaXRlbXNbbnVtbG9vcF0uc2hvd2RlZiA9PSAxfSB0ZXJtX3NlbGVjdGVkey9pZn0iPjxhIG5hbWU9InskaXRlbXNbbnVtbG9vcF0uc2FmZXRlcm19IiAvPnskaXRlbXNbbnVtbG9vcF0udGVybX08L2Rpdj57aWYgJGl0ZW1zW251bWxvb3BdLnNob3dkZWYgPT0gMX08ZGl2IGNsYXNzPSJkZWZpbml0aW9uX3NlbGVjdGVkIj57JGl0ZW1zW251bWxvb3BdLmRlZmluaXRpb259PC9kaXY+ey9pZn0KIHsvc2VjdGlvbn0K]]></data>
	</file>
	<file>
	  <filename>/includes/simple-HTML-single-term.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGRsPgo8ZHQgY2xhc3M9InNlbGVjdGVkIj48c3Ryb25nPnskdGVybX08L3N0cm9uZz48L2R0PjxkZCBjbGFzcz0ic2VsZWN0ZWQiPjxzdHJvbmc+eyRkZWZpbml0aW9ufTwvc3Ryb25nPjwvZGQ+CjwvZGw+]]></data>
	</file>
	<file>
	  <filename>/includes/simple-HTML.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGRpdiBjbGFzcz0iZ2xvc3NhcnluYXYiPnskbmF2cHJldn0gIHtzZWN0aW9uIG5hbWU9bnVtbG9vcCBsb29wPSRuYXZhcnJheX08YSBocmVmPSJ7JG5hdmFycmF5W251bWxvb3BdLmxpbmt9Ij57JG5hdmFycmF5W251bWxvb3BdLm5hbWV9PC9hPntpZiAhICRzbWFydHkuc2VjdGlvbi5udW1sb29wLmxhc3R9IDogey9pZn17L3NlY3Rpb259ICB7JG5hdm5leHR9PC9kaXY+PGJyIC8+CjxkbCBjb21wYWN0PgogICAge3NlY3Rpb24gbmFtZT1udW1sb29wIGxvb3A9JGl0ZW1zfQogICAgCXtpZiAkaXRlbXNbbnVtbG9vcF0uc2hvd2RlZiA9PSAxfQogICAgCQk8ZHQgY2xhc3M9InNlbGVjdGVkIj48YSBuYW1lPSJ7JGl0ZW1zW251bWxvb3BdLnNhZmV0ZXJtfSIgLz48c3Ryb25nPnskaXRlbXNbbnVtbG9vcF0ubmFtZX08L3N0cm9uZz48L2R0PjxkZCBjbGFzcz0ic2VsZWN0ZWQiPjxzdHJvbmc+eyRpdGVtc1tudW1sb29wXS5kZWZpbml0aW9ufTwvc3Ryb25nPjwvZGQ+CiAgICAJe2Vsc2V9CiAgICAJCTxkdD57JGl0ZW1zW251bWxvb3BdLm5hbWV9PC9kdD48ZGQ+eyRpdGVtc1tudW1sb29wXS5kZWZpbml0aW9ufTwvZGQ+CiAgICAJey9pZn0KICAgIHsvc2VjdGlvbn0KPC9kbD4=]]></data>
	</file>
	<file>
	  <filename>/includes/stylesheet-open-and-close.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[e2xpdGVyYWx9CjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KICBmdW5jdGlvbiB0ZXJtX3RvZ2dsZSh0ZXJtKQogICB7CiAgIGlmIChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCh0ZXJtKS5zdHlsZS5kaXNwbGF5PT0nYmxvY2snKQogICAgICB7CiAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRlcm0pLnN0eWxlLmRpc3BsYXk9J25vbmUnOwogICAgICB9CiAgIGVsc2UKICAgICAgewogICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCh0ZXJtKS5zdHlsZS5kaXNwbGF5PSdibG9jayc7CiAgICAgIH0KICAgfQo8L3NjcmlwdD4Key9saXRlcmFsfQo8ZGl2IGNsYXNzPSJnbG9zc2FyeW5hdiI+eyRuYXZwcmV2fSAge3NlY3Rpb24gbmFtZT1udW1sb29wIGxvb3A9JG5hdmFycmF5fTxhIGhyZWY9InskbmF2YXJyYXlbbnVtbG9vcF0ubGlua30iPnskbmF2YXJyYXlbbnVtbG9vcF0ubmFtZX08L2E+e2lmICEgJHNtYXJ0eS5zZWN0aW9uLm51bWxvb3AubGFzdH0gOiB7L2lmfXsvc2VjdGlvbn0gIHskbmF2bmV4dH08L2Rpdj48YnIgLz4KPGRsIGNvbXBhY3Q+CiAgICB7c2VjdGlvbiBuYW1lPW51bWxvb3AgbG9vcD0kaXRlbXN9CiAgICAJCTxkdD48YSBuYW1lPSJ7JGl0ZW1zW251bWxvb3BdLnNhZmV0ZXJtfSIgaHJlZj0iamF2YXNjcmlwdDp0ZXJtX3RvZ2dsZSgndGVybV97JGl0ZW1zW251bWxvb3BdLm5hbWV9JykiPnskaXRlbXNbbnVtbG9vcF0ubmFtZX08L2E+PC9kdD48ZGQgaWQ9InRlcm1feyRpdGVtc1tudW1sb29wXS5uYW1lfSIge2lmICRpdGVtc1tudW1sb29wXS5zaG93ZGVmICE9IDF9c3R5bGU9ImRpc3BsYXk6bm9uZSJ7ZWxzZX1zdHlsZT0iZGlzcGxheTpibG9jayJ7L2lmfT57JGl0ZW1zW251bWxvb3BdLmRlZmluaXRpb259PC9kZD4gICAJCiAgICB7L3NlY3Rpb259CjwvZGw+]]></data>
	</file>
	<file>
	  <filename>/includes/ugly-HTML-table-based.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGRpdiBjbGFzcz0iZ2xvc3NhcnluYXYiPnskbmF2cHJldn0gIHtzZWN0aW9uIG5hbWU9bnVtbG9vcCBsb29wPSRuYXZhcnJheX08YSBocmVmPSJ7JG5hdmFycmF5W251bWxvb3BdLmxpbmt9Ij5QYWdlIHttYXRoIGVxdWF0aW9uPSJ4ICsgeSIgeD0kc21hcnR5LnNlY3Rpb24ubnVtbG9vcC5pbmRleCB5PTF9ICh7JG5hdmFycmF5W251bWxvb3BdLm5hbWV9KTwvYT57aWYgISAkc21hcnR5LnNlY3Rpb24ubnVtbG9vcC5sYXN0fSA6IHsvaWZ9ey9zZWN0aW9ufSAgeyRuYXZuZXh0fTwvZGl2PjxiciAvPgo8dGFibGUgc3R5bGU9ImJvcmRlcjogc29saWQgMXB4IGJsYWNrOyI+PHRyPgp7YXNzaWduIHZhcj0iY29scyIgdmFsdWU9IjIifQogICAge3NlY3Rpb24gbmFtZT1udW1sb29wIGxvb3A9JGl0ZW1zfQogICAgICAgIDx0ZCBzdHlsZT0id2lkdGg6IDIwMHB4OyI+PGEgbmFtZT0ieyRpdGVtc1tudW1sb29wXS5zYWZldGVybX0iPiZuYnNwOzwvYT57JGl0ZW1zW251bWxvb3BdLnRlcm19e2lmICRpdGVtc1tudW1sb29wXS5zaG93ZGVmID09IDF9PGJyIC8+eyRpdGVtc1tudW1sb29wXS5kZWZpbml0aW9ufXsvaWZ9PC90ZD4KICAgICAgICB7aWYgbm90ICgkc21hcnR5LnNlY3Rpb24ubnVtbG9vcC5yb3dudW0gbW9kICRjb2xzKX0KICAgICAgICAgICAgICAgIHtpZiBub3QgJHNtYXJ0eS5zZWN0aW9uLm51bWxvb3AubGFzdH0KICAgICAgICAgICAgICAgICAgICAgICAgPC90cj48dHI+CiAgICAgICAgICAgICAgICB7L2lmfQogICAgICAgIHsvaWZ9CiAgICAgICAge2lmICRzbWFydHkuc2VjdGlvbi5udW1sb29wLmxhc3R9CiAgICAgICAgICAgICAgICB7bWF0aCBlcXVhdGlvbiA9ICJuIC0gYSAlIG4iIG49JGNvbHMgYT0kaXRlbXN8QGNvdW50IGFzc2lnbj0iY2VsbHMifQogICAgICAgICAgICAgICAge2lmICRjZWxscyBuZSAkY29sc30KICAgICAgICAgICAgICAgIHtzZWN0aW9uIG5hbWU9cGFkIGxvb3A9JGNlbGxzfQogICAgICAgICAgICAgICAgICAgICAgICA8dGQgc3R5bGU9IndpZHRoOiAyMDBweDsiPiZuYnNwOzwvdGQ+CiAgICAgICAgICAgICAgICB7L3NlY3Rpb259CiAgICAgICAgICAgICAgICB7L2lmfQogICAgICAgICAgICAgICAgPC90cj4KICAgICAgICB7L2lmfQogICAgey9zZWN0aW9ufQo8L3RhYmxlPg==]]></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/.DS_Store</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[AAAAAUJ1ZDEAABAAAAAIAAAAEAAAAACHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAIAAAABAAAQAABTAHQAbwByAGVJbAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAJAC4ARABTAF8AUwB0AG8AcgBlSWxvY2Jsb2IAAAAQAAAARgAAACj///////8AAAAAAAkAZQBuAF8AVQBTAC4AcABoAHBJbG9jYmxvYgAAABAAAADMAAAAKP///////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAgLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAACAAAAABAAAAQAAAAAEAAACAAAAAAQAAAQAAAAABAAACAAAAAAEAAAQAAAAAAAAAAAEAABAAAAAAAQAAIAAAAAABAABAAAAAAAEAAIAAAAAAAQABAAAAAAABAAIAAAAAAAEABAAAAAAAAQAIAAAAAAABABAAAAAAAAEAIAAAAAAAAQBAAAAAAAABAIAAAAAAAAEBAAAAAAAAAQIAAAAAAAABBAAAAAAAAAEIAAAAAAAAARAAAAAAAAABIAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAEAsAAABFAAAAhwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBERTREIAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAIAAAAGAAAAAAAAAAAAAAAAEAAAEAAAAAAQAAAgAAAAABAAAEAAAAAAIAAAgAAAAYAAAAAAAAAAABAAAgAAAAAAEAAEAAAAAAAQAAgAAAAAABAAEAAAAAAAEAAgAAAAAAAQAEAAAAAAABAAgAAAAAAAEAEAAAAAAAAQAgAAAAAAABAEAAAAAAAAEAgAAAAAAAAQEAAAAAAAABAgAAAAAAAAEEAAAAAAAAAQgAAAAAAAABEAAAAAAAAAEgAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==]]></data>
	</file>
	<file>
	  <filename>/lang/en_US.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2FyZXlvdXN1cmVfYWx0ZXJjb250ZW50J10gPSAnQXJlIHlvdSBzdXJlIHdhbnQgdG8gcGVyZm9ybSB0aGlzIG9wZXJhdGlvbj8gIENvbnRpbnVpbmcgd2lsbCBwZXJtYW5lbnRseSBhbHRlciB5b3VyIGNvbnRlbnQnOwokbGFuZ1snZmlsdGVyX3NpdGVfbm93J10gPSAnRmlsdGVyIE5vdyc7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdHbG9zc2FyeSAvIERpY3Rpb25hcnknOwokbGFuZ1sncG9zdGluc3RhbGwnXSA9ICc8cD5CZSBzdXJlIHRvIHNldCAiTW9kaWZ5IEdsb3NzYXJ5IiBwZXJtaXNzaW9ucyB0byB1c2UgdGhpcyBtb2R1bGUhPC9wPgo8cD5Zb3VcJ2xsIGFsbW9zdCBjZXJ0YWlubHkgd2FudCB0byBnbyBpbiBhbmQgY2hhbmdlIHNldHRpbmdzIGFzIHdlbGwuIEkgaW50ZW50aW9uYWxseSBjaG9zZSBvZGQgc2V0dGluZ3MKaW4gb3JkZXIgdG8gZGVtb25zdHJhdGUgZmVhdHVyZXMuIEJ1dCB5b3Ugd2lsbCBwcm9iYWJseSB3YW50IG1vcmUgdGhhbiBmaXZlIHRlcm1zIG9uIGEgcGFnZSwgZm9yIGV4YW1wbGUsCmFuZCB5b3Ugd2lsbCB3YW50IHRvIGRlbGV0ZSBteSBzYW1wbGUgdGVybXMgYW5kIGNhdGVnb3JpZXMuJzsKJGxhbmdbJ3Bvc3R1bmluc3RhbGwnXSA9ICdTdWNjZXNzZnVsbHkgcmVtb3ZlZC4nOwokbGFuZ1sndW5pbnN0YWxsZWQnXSA9ICdNb2R1bGUgVW5pbnN0YWxsZWQuJzsKJGxhbmdbJ2luc3RhbGxlZCddID0gJ01vZHVsZSB2ZXJzaW9uICVzIGluc3RhbGxlZC4nOwokbGFuZ1sncHJlZnN1cGRhdGVkJ10gPSAnTW9kdWxlIHByZWZlcmVuY2VzIHVwZGF0ZWQuJzsKJGxhbmdbJ2FjY2Vzc2RlbmllZCddID0gJ0FjY2VzcyBEZW5pZWQuIFBsZWFzZSBjaGVjayB5b3VyIHBlcm1pc3Npb25zLic7CiRsYW5nWydlcnJvciddID0gJ0Vycm9yISc7CiRsYW5nWyd1cGdyYWRlZCddID0gJ01vZHVsZSB1cGdyYWRlZCB0byB2ZXJzaW9uICVzLic7CiRsYW5nWyd0aXRsZV9tb2RfcHJlZnMnXSA9ICdNb2R1bGUgUHJlZmVyZW5jZXMnOwokbGFuZ1sndGl0bGVfbW9kX2FkbWluJ10gPSAnTW9kdWxlIEFkbWluIFBhbmVsJzsKJGxhbmdbJ3RpdGxlX3Rlcm0nXSA9ICdUZXJtJzsKJGxhbmdbJ3RpdGxlX3RpcCddID0gJ1Rvb2wtdGlwIC8gTGluayB0aXRsZSBmb3IgdGVybSc7CiRsYW5nWyd0aXRsZV9kZWZpbml0aW9uJ10gPSAnRGVmaW5pdGlvbic7CiRsYW5nWydjb2x1bW5fZGVmaW5pdGlvbiddID0gJ0RlZmluaXRpb24nOwokbGFuZ1sndGl0bGVfZGVmYXVsdF90ZW1wbGF0ZSddID0gJ0RlZmF1bHQgRGlzcGxheSBUZW1wbGF0ZSc7CiRsYW5nWyd0aXRsZV9kZWZhdWx0X3NpbmdsZV90ZXJtX3RlbXBsYXRlJ10gPSAnRGVmYXVsdCB0ZW1wbGF0ZSBmb3IgbGlua2VkIFRlcm1zIChpZiBzaG93aW5nIHNpbmdsZSB0ZXJtKSc7CiRsYW5nWyd0aXRsZV9maWx0ZXJfc2l0ZSddID0gJ0F1dG9tYXRpY2FsbHkgRmlsdGVyIENvbnRlbnQgUGFnZXMgZm9yIFRlcm1zPyc7CiRsYW5nWyd0aXRsZV9maWx0ZXJfbmV3cyddID0gJ0ZpbHRlciBOZXdzIEFydGljbGVzIGZvciBUZXJtcz8nOwokbGFuZ1sndGl0bGVfbnVtYmVyX3Nob3cnXSA9ICdOdW1iZXIgb2YgdGVybXMgdG8gc2hvdyBwZXIgcGFnZSc7CiRsYW5nWyd0aXRsZV9kZWZhdWx0X251bWJlcl9zaG93J10gPSAnRGVmYXVsdCBudW1iZXIgb2YgdGVybXMgdG8gc2hvdyBwZXIgcGFnZSc7CiRsYW5nWyd0aXRsZV9maWx0ZXJfc2l0ZV9sYWJlbCddID0gJ0FjdGl2YXRlIGFsbCBUZXJtcyBvbiBzaXRlPyAod2FybmluZyAtIHNsb3dzIHNpdGUgcGVyZm9ybWFuY2UpJzsKJGxhbmdbJ3RpdGxlX2dsb3NzYXJ5X3BhZ2UnXSA9ICdHbG9zc2FyeSBQYWdlICh0YXJnZXQgZm9yIGFjdGl2ZSBsaW5rcyknOwokbGFuZ1sndGl0bGVfZGlzYWJsZV9wcmV0dHl1cmxzJ10gPSAnRGlzYWJsZSBwcmV0dHkgdXJscyBmb3IgdGhpcyBtb2R1bGUnOwokbGFuZ1sndGl0bGVfZGlzYWJsZV9wcmV0dHl1cmxzX2xhYmVsJ10gPSAnRGlzYWJsZSc7CiRsYW5nWyd0aXRsZV9nbG9zc2FyeV9pbmxpbmUnXSA9ICdJbmxpbmUgbGlua2VkIHRlcm0gZGlzcGxheT8nOwokbGFuZ1sndGl0bGVfc2hvd190ZXJtaWRzJ10gPSAnU2hvdyBUZXJtIElEIG51bWJlcnMgaW4gYWRtaW5pc3RyYXRpb24nOwokbGFuZ1sndGl0bGVfZGlzcGxheV90YWInXSA9ICdHbG9zc2FyeSBQYWdlIERpc3BsYXkgT3B0aW9ucyc7CiRsYW5nWyd0aXRsZV9zaW5nbGVfdGVybSddID0gJ1Nob3cgbGlua2VkIHRlcm0gb24gaXRzIG93biBwYWdlPyc7CiRsYW5nWyd0aXRsZV9zaW5nbGVfdGVybV9sYWJlbCddID0gJ1Nob3cgc2luZ2xlIHRlcm0gKGFzIG9wcG9zZWQgdG8gZnVsbCBHbG9zc2FyeSknOwokbGFuZ1sndGl0bGVfd3lzaXd5Z19kZWZpbml0aW9ucyddID0gJ1VzZSBXWVNJV1lHIGZvciBlbnRlcmluZyB0ZXJtIGRlZmluaXRpb25zPyc7CiRsYW5nWyd0aXRsZV93eXNpd3lnX3Rlcm1zJ10gPSAnVXNlIFdZU0lXWUcgZm9yIGVudGVyaW5nIHRlcm1zPyc7CiRsYW5nWyd0aXRsZV93eXNpd3lnX3Rlcm1zX2hlbHAnXSA9ICdQbGVhc2Ugbm90ZSB0aGF0IG1hcmt1cCBpbnNpZGUgdGVybXMgY2FuIGludGVyZmVyZSB3aXRoIGFscGhhYmV0aXppbmcgYW5kIHdpdGggYWN0aXZhdGVkIHRlcm1zISc7CiRsYW5nWyd0aXRsZV9saW5rX3RhYiddID0gJ0dsb3NzYXJ5IExpbmsgT3B0aW9ucyc7CiRsYW5nWyd0aXRsZV9hZG1pbl90YWInXSA9ICdBZG1pbiBQYW5lbCBPcHRpb25zJzsKJGxhbmdbJ3RpdGxlX2ZpbHRlcmluZ190YWInXSA9ICdTaXRlIFRlcm0tZmlsdGVyaW5nIE9wdGlvbnMnOwokbGFuZ1sndGl0bGVfbnVtYmVyX3NwaW5pbmdfY2hhcnMnXT0nTWF4aW11bSBudW1iZXIgb2YgY2hhcmFjdGVycyB0byB1c2Ugb2YgYSB0ZXJtIGluIHRoZSBHbG9zc2FyeSBuYXYnOwokbGFuZ1sndGl0bGVfcHJvY2Vzc19zbWFydHknXSA9ICdQcm9jZXNzIFNtYXJ0eSB0YWdzIGluIGRlZmluaXRpb25zPyc7CiRsYW5nWydmaWx0ZXJfbGluayddID0gJ0xpbmsgdG8gR2xvc3NhcnkgUGFnZSc7CiRsYW5nWydjb2x1bW5fdGVybSddID0gJ1Rlcm0nOwokbGFuZ1snY29sdW1uX3Rlcm1pZCddID0gJ1Rlcm0gSUQnOwokbGFuZ1snY29sdW1uX2FjdGlvbiddID0gJ0FjdGlvbic7CiRsYW5nWydjb2x1bW5fc2VsZWN0J10gPSAnU2VsZWN0JzsKJGxhbmdbJ2NvbHVtbl9jYXRlZ29yeSddID0gJ0NhdGVnb3J5JzsKJGxhbmdbJ3RpdGxlX2FkbWluX3BhbmVsJ10gPSAnR2xvc3NhcnkgLyBEaWN0aW9uYXJ5IC8gRkFRJzsKJGxhbmdbJ3RpdGxlX3Rlcm1fbGlzdCddID0gJ1Rlcm1zJzsKJGxhbmdbJ3RpdGxlX25hbWUnXSA9ICdOYW1lJzsKJGxhbmdbJ3RpdGxlX2NhdHMnXSA9ICdDYXRlZ29yaWVzJzsKJGxhbmdbJ3RpdGxlX2ZpbHRlcl9jYXRlZ29yeSddID0gJ09ubHkgc2hvdyB0aGlzIGNhdGVnb3J5Oic7CiRsYW5nWyd0aXRsZV9hbGwnXSA9ICdBbGwgQ2F0ZWdvcmllcyc7CiRsYW5nWydjb2x1bW5fdGVtcGxhdGUnXSA9ICdUZW1wbGF0ZSBOYW1lJzsKJGxhbmdbJ3RpdGxlX3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUgRGVmaW5pdGlvbic7CiRsYW5nWydhZGR0ZXJtJ10gPSAnQWRkIE5ldyBUZXJtJzsKJGxhbmdbJ3Rlcm1hZGRlZCddID0gJ1Rlcm0gaGFzIGJlZW4gYWRkZWQuJzsKJGxhbmdbJ3Rlcm1kZWxldGVkJ10gPSAnVGVybSBoYXMgYmVlbiBkZWxldGVkLic7CiRsYW5nWydlZGl0J10gPSAnRWRpdCBUZXJtJzsKJGxhbmdbJ25vJ10gPSAnTm8nOwokbGFuZ1sneWVzJ10gPSAnWWVzJzsKJGxhbmdbJ2ZpbHRlciddID0gJ0ZpbHRlcic7CiRsYW5nWydkZWxldGUnXSA9ICdEZWxldGUgVGVybSc7CiRsYW5nWydkZWxldGVfc2VsZWN0ZWQnXSA9ICdEZWxldGUgU2VsZWN0ZWQgVGVybXMnOwokbGFuZ1snYXJleW91c3VyZV9kZWxldGVtdWx0aXBsZSddID0gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgYWxsIG9mIHRoZXNlIHRlcm1zPyc7CiRsYW5nWydzdXJlZGVsZXRlJ10gPSAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSB0aGUgdGVybSAlcz8nOwokbGFuZ1snbGlzdHRlcm1zJ10gPSAnTWFuYWdlIFRlcm1zJzsKJGxhbmdbJ2xpc3R0ZW1wbCddID0gJ01hbmFnZSBUZW1wbGF0ZXMnOwokbGFuZ1snbGlzdGNhdHMnXSA9ICdNYW5hZ2UgQ2F0ZWdvcmllcyc7CiRsYW5nWydhZGRjYXQnXSA9ICdBZGQgQ2F0ZWdvcnknOwokbGFuZ1snZWRpdGNhdCddID0gJ0VkaXQgQ2F0ZWdvcnknOwokbGFuZ1snZGVsY2F0J10gPSAnRGVsZXRlIENhdGVnb3J5JzsKJGxhbmdbJ21hbmFnZXByZWZzJ10gPSAnQWRtaW4gUHJlZmVyZW5jZXMnOwokbGFuZ1sndGVtcGxhdGVsaXN0J10gPSAnVGVtcGxhdGVzJzsKJGxhbmdbJ3Vua25vd25fdGVybSddID0gJ1Vua25vd24gdGVybSAlcyByZXF1ZXN0ZWQuJzsKJGxhbmdbJ2dsb3NzYXJ5X3BhZ2VfaGVscCddID0gJ1NlbGVjdCBhIHBhZ2UgYmVsb3cgdGhhdCBjb250YWlucyBhIHRhZyB0byBkaXNwbGF5IGdsb3NzYXJ5IGluZm9ybWF0aW9uLCBlLmcuLCBhIHBhZ2UgY29udGFpbmluZyB7Y21zX21vZHVsZSBtb2R1bGU9Ikdsb3NzYXJ5In0nOwokbGFuZ1snZ2xvc3NhcnlfcHJldHR5dXJsc19oZWxwJ10gPSAnRGlzYWJsaW5nIHByZXR0eSB1cmxzIGZvciB0aGlzIG1vZHVsZSBtYXkgaGVscCBpZiBzb21lIG9mIHlvdXIgdGVybXMgaGF2ZSBub24gYWxwaGFudW1lcmljIGNoYXJhY3RlcnMgb3Igd2hpdGVzcGFjZS4nOwokbGFuZ1snZ2xvc3NhcnlfaW5saW5lX2hlbHAnXSA9ICdVc2UgdGhlIGZvbGxvd2luZyBvcHRpb24gaWYgeW91IHdpc2ggdG8gaGF2ZSB5b3VyIGFjdGl2ZS10ZXJtIGRlZmluaXRpb25zIGRpc3BsYXllZCBpbi1saW5lLiBUaGlzIGlzIG11dHVhbGx5IGV4Y2x1c2l2ZSB3aXRoIGxpbmtpbmcgdG8gYSBHbG9zc2FyeSBQYWdlJzsKJGxhbmdbJ3RpdGxlX2dsb3NzYXJ5X2lubGluZV9sYWJlbCddID0gJ0Rpc3BsYXkgSW5saW5lJzsKJGxhbmdbJ25vdGVtcGxhdGVzJ10gPSAnTm8gdGVtcGxhdGVzIGluIGRhdGFiYXNlLic7CiRsYW5nWydub2NhdHMnXSA9ICdObyBjYXRlZ29yaWVzIGluIGRhdGFiYXNlLic7CiRsYW5nWydhZGR0ZW1wbGF0ZSddID0gJ0FkZCBhIHRlbXBsYXRlJzsKJGxhbmdbJ3RlbXBsYXRldXBkYXRlZCddID0gJ1RlbXBsYXRlIHVwZGF0ZWQnOwokbGFuZ1sndGVtcGxhdGVkZWxldGVkJ10gPSAnVGVtcGxhdGUgZGVsZXRlZCc7CiRsYW5nWydjYXR1cGRhdGVkJ10gPSAnQ2F0ZWdvcnkgdXBkYXRlZCc7CiRsYW5nWydjYXRkZWxldGVkJ10gPSAnQ2F0ZWdvcnkgZGVsZXRlZCc7CiRsYW5nWydhcmV5b3VzdXJlJ10gPSAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSAlcz8nOwokbGFuZ1snbmV4dCddID0gJyA6IE5leHQgJiMxODc7JzsKJGxhbmdbJ3ByZXYnXSA9ICcmIzE3MTsgUHJldmlvdXMgOiAnOwokbGFuZ1snbW9kZGVzY3JpcHRpb24nXSA9ICdUaGlzIG1vZHVsZSBhbGxvd3MgeW91IHRvIGNyZWF0ZSBhIGxpc3Qgb2YgdGVybXMgYW5kIGRlZmluaXRpb25zIGZvciBkaXNwbGF5LiBBIHRlcm0gbWF5IGJlIGEgd29yZCwgYSBmcmVxdWVudGx5IGFza2VkIHF1ZXN0aW9uLCBvciBhbnl0aGluZyBzaW1pbGFyLic7CiRsYW5nWydjaGFuZ2Vsb2cnXSA9ICc8dWw+CjxsaT5WZXJzaW9uIDAuNi44LCAgSnVseSAyMDA5LiBCdWcgZml4ZXMsIG1lcmdlZCBpbiBtdWx0aWJ5dGUgZml4ZXMgcHJvdmlkZWQgYnkgU29ueWEuIE1pZ2h0IHdvcmsgYmV0dGVyIGZvciBwZW9wbGUgdXNpbmcgY2hhcmFjdGVyIHNldHMgb3V0c2lkZSBvZiB0aGUgYW5jaWVudCBBU0NJSSByYW5nZS48L2xpPgo8bGk+VmVyc2lvbiAwLjYuNywgIEp1bmUgMjAwOS4gQnVnIGZpeGVzLjwvbGk+CjxsaT5WZXJzaW9uIDAuNi42LCAgSmFudWFyeSAyMDA5LiBCdWcgZml4ZXMsIGNvZGUgcmVmYWN0b3JpbmcsIGFkZGVkICJyYW5kb20iIGFjdGlvbiwgb3B0aW9uIHRvIGFsbG93IHNtYXJ0eSB0YWdzIGluIGRlZmluaXRpb25zLCBvcHRpb25zIGZvciBXWVNJV1lHLjwvbGk+CjxsaT5WZXJzaW9uIDAuNi41LCAgSmFudWFyeSAyMDA5LiBCdWcgZml4ZXMsIG5vdyBhbGxvd3MgdGVwbGF0ZSBzcGVjaWZpY2F0aW9uIHRvIGJlIG5hbWUgb3IgaWQuPC9saT4KPGxpPlZlcnNpb24gMC42LjQsICBTZXB0ZW1iZXIgMjAwOC4gIEFkZHMgZ2xvc3NhcnkgdGVybXMgdG8gdGhlIHNlYXJjaGFibGUgY29udGVudC4gIEJ1bXAgbWluaW11bSBjbXMgdmVyc2lvbiB0byAxLjQuMTwvbGk+CjxsaT5WZXJzaW9uIDAuNi4zLCAgTWFyY2ggMjAwOC4gIEFkZHMgdGhlIGFiaWxpdHkgdG8gZGlzYWJsZSBwcmV0dHkgdXJscyBmb3IgdGhpcyBtb2R1bGUuICBCdW1wIG1pbmltdW0gY21zIHZlcnNpb24gdG8gMS4yPC9saT4KPGxpPlZlcnNpb24gMC42LjIuICBEZWNlbWJlciAyMDA3LiAgRml4ZXMgYSBidWcgaW4gcHJlZmVyZW5jZXMgcmVsYXRlZCB0byBpbmxpbmUvbm9uIGlubGluZSwgYnVtcHMgbWluaW11bSBjbXMgdmVyc2lvbiwgQWRkcyB0aGUgUmVnaXN0ZXJNb2R1bGVQbHVnaW4gY2FsbC48L2xpPgo8bGk+VmVyc2lvbiAwLjYuMS4gIE5vdmVtYmVyIDIwMDcuICBBZGRzIGZ1bmN0aW9uYWxpdHkgc28gdGhhdCBjb250ZW50IG5ldmVyIHJldHVybnMgZW1wdHk8L2xpPgo8bGk+VmVyc2lvbiAwLjYuIE5vdmVtYmVyIDIwMDcuICBBZGRzIGEgYnV0dG9uIHRvIGZpbHRlciBjb250ZW50IGFuZCBuZXdzIG9uIGRlbWFuZCwgc3BsaXRzIGl0IG91dCBpbnRvIG11bHRpcGxlIGZpbGVzIGZvciByZWR1Y2VkIG1lbW9yeSBmb290cHJpbnQuPC9saT4KPGxpPlZlcnNpb24gMC41LjEuIDI4IE1hciAyMDA3LiAgVXJscyBub3cgdmFsaWRhdGUuIFRoZXJlIHlhIGdvLCBNci4gSW5TaVBpRC48L2xpPgo8bGk+VmVyc2lvbiAwLjUuIDggTm92ZW1iZXIgMjAwNi4gUmVtb3ZlZCBwb3AtdXAgd2luZG93IGxpbmtzLCBhZGRlZCBpbmxpbmUgZGlzcGxheSwgYW5kIGNhdGVnb3J5IGZpbHRlcmluZyAvIHJlcXVlc3RlZCBmZWF0dXJlcyBmb3IgSW5TaVBpRC48L2xpPgo8bGk+VmVyc2lvbiAwLjQuIDcgTm92ZW1iZXIgMjAwNi4gVXBkYXRlZCBmb3IgQ01TIE1TIDEuMC54LCBhZGRlZCBmZWF0dXJlcyBmb3IgSW5TaVBpRC48L2xpPgo8bGk+VmVyc2lvbiAwLjMuIDI0IE9jdG9iZXIgMjAwNS4gQnVnIGZpeGVzLCBuZXcgZGVmYXVsdCB0ZW1wbGF0ZSwgbW9yZSBBZG1pbiBjb25maWd1cmF0aW9uIG9wdGlvbnMuPC9saT4KPGxpPlZlcnNpb24gMC4yLiAyMCBPY3RvYmVyIDIwMDUuIEluaXRpYWwgUHVibGljIFJlbGVhc2UuPC9saT48L3VsPic7CiRsYW5nWydoZWxwX2dsb3NzYXJ5X3NpbmdsZSddPSdTaG93IHNpbmdsZSB0ZXJtLic7CiRsYW5nWydoZWxwX2dsb3NzYXJ5X3RpZCddPSdUZXJtIElEIHRvIGhpZ2hsaWdodC9lbXBoYXNpemUuJzsKJGxhbmdbJ2hlbHBfZ2xvc3NhcnlfY2F0aWQnXT0nUmVzdHJpY3QgbGlzdCB0byB0ZXJtcyBpbiBjYXRlZ29yeSBJRCAiY2F0aWQiLic7CiRsYW5nWydoZWxwX2dsb3NzYXJ5X3N0YXJ0J109J09mZnNldCBpbiBsaXN0IHRvIHN0YXJ0IGxpc3RpbmcgdGVybXMuJzsKJGxhbmdbJ2hlbHBfZ2xvc3NhcnlfdGVybSddPSdUZXJtIHRvIGhpZ2hsaWdodC9lbXBoYXNpemUuJzsKJGxhbmdbJ2hlbHBfZ2xvc3NhcnlfY2F0J109J1Jlc3RyaWN0IGxpc3QgdG8gdGVybXMgaW4gY2F0ZWdvcnkgImNhdCIuJzsKJGxhbmdbJ2hlbHBfZ2xvc3NhcnlfdGVtcGxhdGUnXT0nVGVtcGxhdGUgbmFtZSBvciBJRCB0byB1c2UgdG8gZm9ybWF0IHRlcm1zLic7CiRsYW5nWydoZWxwX2dsb3NzYXJ5X3Rlcm1fY291bnQnXT0nTnVtYmVyIG9mIHRlcm1zIHRvIHNob3cgb24gYSBwYWdlIChvdmVycmlkZXMgZGVmYXVsdCBzZXR0aW5nIGZyb20gYWRtaW4pLic7CiRsYW5nWydoZWxwX2dsb3NzYXJ5X3Nob3dfbmF2J109J1NldCB0byAwIHRvIGhpZGUgdGhlIHBhZ2luYXRpb24gbmF2Lic7CiRsYW5nWydoZWxwX2dsb3NzYXJ5X2tleXdvcmQnXT0nUmVzdHJpY3QgdG8gdGVybXMgd2hvc2UgZGVmaW5pdGlvbnMgY29udGFpbiAia2V5d29yZCIuJzsKJGxhbmdbJ2hlbHBfZ2xvc3Nhcnlfc29ydCddPSdTb3J0IG9yZGVyOiBjdXJyZW50bHkgb25seSBzdXBwb3J0cyAiYWxwaGEiLCAicmFuZG9tIiBhbmQgImNyZWF0ZV9kYXRlIi4nOwokbGFuZ1snaGVscF9nbG9zc2FyeV9ub19wYXNzX3Jlc3RyaWN0aW9ucyddID0gJ1RvIGRpc3BsYXkgYSBmaWx0ZXJlZCBvciBvdGhlcndpc2UgcmVzdHJpY3RlZCBsaXN0LCBidXQgdG8gaGF2ZSB0aGUgZXhwYW5kZWQgbGlzdCBub3QgcmVzdHJpY3RlZCwgbGlzdCB0aGUgZmllbGRzIGhlcmUgKHNlZSBleGFtcGxlIGFib3ZlKSc7CiRsYW5nWydoZWxwX2dsb3NzYXJ5X3RhcmdldCddPSdQYWdlIGFsaWFzIHRvIHRhcmdldCB0byBkaXNwbGF5IHRlcm1zJzsKCiRsYW5nWydoZWxwJ10gPSAnPGgzPldoYXQgRG9lcyBUaGlzIERvPzwvaDM+CjxwPlRoaXMgYWxsb3dzIHRoZSBhZG1pbmlzdHJhdG9yIHRvIGNyZWF0ZSBhIGxpc3Qgb2YgdGVybXMsIHdoaWNoIHdpbGwgYXBwZWFyIG9uIGEgcGFnZS4gQ2xpY2tpbmcgb24gdGhlIHRlcm0gd2lsbCBleHBhbmQgaXQgdG8gaW5jbHVkZSB0aGUgZGVmaW5pdGlvbi48L3A+CjxoMz5Ib3cgRG8gSSBVc2UgSXQ8L2gzPgo8aDQ+U3RhbmRhcmQgR2xvc3NhcnkgUGFnZTwvaDQ+CjxwPkluc3RhbGwgaXQgYnkgcGxhY2luZyB0aGUgbW9kdWxlIGluIGEgcGFnZSBvciB0ZW1wbGF0ZSB1c2luZyB0aGUgc21hcnR5IHRhZyAmIzEyMztjbXNfbW9kdWxlIG1vZHVsZT1cJ0dsb3NzYXJ5XCd9PC9wPgo8cD5Zb3UgY2FuIGhhdmUgaXQgc3RhcnQgd2l0aCBhIHRlcm0gZXhwYW5kZWQgYnkgcGFzc2luZyBhIHRlcm09VGVybSBwYXJhbWV0ZXIsIG9yIHBhc3NpbmcgYSB0aWQ9dGVybV9pZC48L3A+CjxwPllvdSBjYW4gbGltaXQgaXQgdG8gYSBzcGVjaWZpYyBjYXRlZ29yeSBieSBwYXNzaW5nIGEgY2F0PSJDYXRlZ29yeSIgcGFyYW1ldGVyLjwvcD4KPHA+WW91IGNhbiBvdmVycmlkZSB0aGUgZGVmYXVsdCB0ZW1wbGF0ZSBieSBwYXNzaW5nIGEgdGVtcGxhdGU9InRlbXBsYXRlX2lkIiBwYXJhbWV0ZXIgKHVzZSB0aGUgbnVtZXJpYwppZCBmb3IgdGhlIHRlbXBsYXRlLCBvciB0aGUgdGVtcGxhdGUgbmFtZSkuPC9wPgo8cD5Zb3UgY2FuIGxpbWl0IGl0IHRvIGRlZmluaXRpb25zIGNvbnRhaW5pbmcgYSBrZXl3b3JkIGJ5IHBhc3NpbmcgYSBrZXl3b3JkPSJrZXl3b3JkIi48L3A+CjxwPlRoaXMgbW9kdWxlIGFsc28gd2lsbCByZWFkIHRoZSBVUkwsIGFuZCBzdXBwb3J0IHNwZWNpZmljYXRpb25zIG9mICJ0ZXJtIiBvciAiY2F0IiBvbiB0aGUgVVJMLiBTbywgZm9yIGV4YW1wbGUsIHlvdSBjb3VsZCBoYXZlIGFuIFVSTCBsaWtlIGh0dHA6Ly9teXNpdGUvaW5kZXgucGhwP3BhZ2U9MTAmYW1wO3Rlcm09bXl0ZXJtLiBJZiBwYWdlIDEwIGluY2x1ZGVzIHRoZSBHbG9zc2FyeSBtb2R1bGUsIGl0IHdpbGwgZXhwYW5kIHRoZSBkZWZpbml0aW9uIG9mICJteXRlcm0iLgo8aDQ+RXhwYW5kaW5nIExpc3RzPC9oND4KPHA+U29tZXRpbWVzLCB5b3Ugd2lsbCB3YW50IGEgc2hvcnQgbGlzdCBvZiB0ZXJtcywgYnV0IGhhdmUgY2xpY2tzIG9uIHRob3NlIHRlcm1zIHRvIGxvYWQgYSBmdWxsIGxpc3QuIEZvciBleGFtcGxlLCB5b3UgbWlnaHQgd2FudCB0aHJlZSByYW5kb20gdGVybXMgaW4gdGhlIHNpZGViYXIsIGJ1dCBjbGlja2luZyBvbiB0aG9zZSB0ZXJtcyBzaG91bGQgc2hvdyB0aGUgc2VsZWN0ZWQgdGVybSBpbiBhIGNvbXBsZXRlIHRlcm0gbGlzdC4gVG8gZG8gdGhpcywgc2V0IHRoZSAibm9fcGFzc19yZXN0cmljdGlvbiIgdmFyaWFibGUuPC9wPgo8cD5Gb3IgZXhhbXBsZSwgb24geW91ciBzaWRlYmFyIHlvdSB3YW50IHRocmVlIHJhbmRvbSB0ZXJtcyBmcm9tIGNhdGVnb3J5ICJmb28iLiBDbGlja2luZyBvbiBhIHRlcm0gc2hvdWxkIHNob3cgYSBmdWxsLCBhbHBoYWJldGljYWwgbGlzdCBvZiBjYXRlZ29yeSAiZm9vIiB3aXRoIHRoZSBzcGVjaWZpYyB0ZXJtIG9wZW4uIFlvdXIgdGFnIGZvciB0aGUgc2lkZWJhciB3aWxsIHRoZW4gbG9vayBsaWtlOjwvcD4KPHA+JiMxMjM7Y21zX21vZHVsZSBtb2R1bGU9XCdHbG9zc2FyeVwnIGNhdD1cJ2Zvb1wnIHNvcnQ9XCdyYW5kb21cJyB0ZXJtX2NvdW50PVwnM1wnIG5vX3Bhc3NfcmVzdHJpY3Rpb249XCdzb3J0LHRlcm1fY291bnRcJ308L3A+CjxoND5XWVNJV1lHL1NtYXJ0eTwvaDQ+CjxwPkluIHRoZSBhZG1pbiwgeW91IGNhbiBlbmFibGUgdGhlIFdZU0lXWUcgZWRpdG9yIGZvciB0ZXJtcyBhbmQgdGVybSBkZWZpbml0aW9ucy4gQmVjYXVzZSBvZiB0aGUgd2F5IHRoZSBzeXN0ZW0gdXNlcyB0ZXJtcywgaXQgaXMgbm90IHJlY29tbWVuZGVkCnRvIHVzZSBtYXJrdXAgaW4gdGhlIHRlcm1zIHRoZW1zZWx2ZXMuIElmIHlvdSBpbnNpc3Qgb24gZG9pbmcgaXQgKGFuZCBzb21lIHBlb3BsZSBkbywgaW4gZmFjdCwgaGF2ZSBnb29kIHJlYXNvbnMgdG8gZG8gc28pLCBiZSBhd2FyZSB0aGF0IHNpdGUgZmlsdGVyaW5nIHdpbGwgcHJvYmFibHkgYnJlYWssIGFuZCB0aGUgZ2xvc3NhcnkgcGFnZSBuYXYgbWF5IGJlIG1lc3NlZCB1cC48L3A+CjxwPllvdSBjYW4gYWxzbyBlbmFibGUgc21hcnR5IHByb2Nlc3Npbmcgb24gdGVybSBkZWZpbml0aW9ucy4gVGhpcyB3aWxsIHBlcm1pdCB5b3UgdG8gZG8gYWxsIHNvcnRzIG9mIHdpbGQgc3R1ZmYgbGlrZSBzZWxmLWxpbmtpbmcgYW5kIG90aGVyIHNtYXJ0eSBtYWRuZXNzLiBIZXkgLS0gaWYgeW91IGtub3cgZW5vdWdoIHRvIGdvIG9uIHRoZSBibGFjayBkaWFtb25kIHJ1biwgeW91IGtub3cgdGhlIHJpc2tzISBJIHdpbGwgc2F5IG5vIG1vcmUuPC9wPgo8aDM+TGlua2VkIFRlcm1zPC9oMz4KPGg0Pk92ZXJ2aWV3PC9oND4KPHA+WW91IGNhbiBtYWtlIHRlcm1zIHRoYXQgc2hvdyB1cCBpbiB5b3VyIHBhZ2VzIGxpbmsgdG8gdGhlaXIgZGVmaW5pdGlvbnMsIGVpdGhlciAiaW5saW5lIiAod2hlcmUgaXQgcmVwbGFjZXMgdGhlIGNvbnRlbnQgb2YgeW91ciBwYWdlKSwgb3IgYnkgbGlua2luZyB0byB5b3VyIG1haW4gR2xvc3NhcnkgcGFnZS4gVGhpcyBpcyB0aGUgImlubGluZSIgb3B0aW9uIHdoaWNoIHlvdSBjYW4gc2V0IGluIHRoZSAiR2xvc3NhcnkgTGlua3MgT3B0aW9ucyIgc2VjdGlvbiBvZiB0aGUgR2xvc3NhcnkgQWRtaW4gUHJlZnMuPC9wPgo8cD5Zb3UgY2FuIGFsc28gY2hvb3NlIHRvIGhhdmUgbGlua3MgZ28gdG8gYSBwYWdlIHdpdGggb25seSB0aGUgZGVmaW5pdGlvbiBvZiB5b3VyIHRlcm0sIGFuZCB5b3UgY2FuIGNvbnRyb2wgdGhlIGRpc3BsYXkgb2YgdGhpcyBieSBhbHRlcmluZyB0aGUgdGVtcGxhdGUuIFRoaXMgYWxzbyBzZXQgaW4gIkdsb3NzYXJ5IExpbmtzIE9wdGlvbnMiIHNlY3Rpb24gb2YgdGhlIEdsb3NzYXJ5IEFkbWluIFByZWZzLjwvcD4gCjxoND5TaW5nbGUgVGVybTwvaDQ+CjxwPllvdSBjYW4gdGFnIHNwZWNpZmljIHdvcmRzIHRvIGJlIGxpbmtlZCB0byB0aGUgR2xvc3NhcnkgaWYgeW91IHdhbnQsIGJ5IHBsYWNpbmcgdGhlIGZvbGxvd2luZyB0YWcgaW4gYSBwYWdlOiAmIzEyMztjbXNfbW9kdWxlIG1vZHVsZT1cJ0dsb3NzYXJ5XCcgYWN0aW9uPVwnZGVmXCcgdGVybT1cJ2Zvb1wnfSwgd2hlcmUgeW91IHJlcGxhY2UgImZvbyIgd2l0aCBhIHRlcm0gdGhhdCB5b3UgaGF2ZSBpbiB5b3VyIGdsb3NzYXJ5Lgo8aDQ+VGVybSBSZXBsYWNlbWVudCAvIFNpdGUgRmlsdGVyaW5nPC9oND4KPHA+SWYgeW91IHR1cm4gb24gc2l0ZSBmaWx0ZXJpbmcsIGV2ZXJ5IGluc3RhbmNlIG9mIGVhY2ggb2YgeW91ciB0ZXJtcyB0aGF0IHNob3dzIHVwIG9uIHRoZSBzaXRlIHdpbGwgYmVjb21lIGEgbGluay4gRGVwZW5kaW5nIG9uIHRoZSBtb2RlIHlvdSBjaG9vc2UgaW4gdGhlIGFkbWluLAp0aGlzIHdpbGwgZWl0aGVyIGJlIGEgbGluayB0byB5b3VyIG1haW4gR2xvc3NhcnkgcGFnZSBvciBvcGVuIHRvIHRoZSB0ZXJtIGluIHF1ZXN0aW9uLjwvcD4KPHA+U2l0ZSBmaWx0ZXJpbmcgaXMgYW4gaW50ZW5zaXZlIHByb2Nlc3MsIGFuZCB3aWxsIHNsb3cgeW91ciBzaXRlIGRvd24gc29tZXdoYXQuIFRoZXJlIGlzIGFuIGFsdGVybmF0ZSwgZmFzdGVyIGltcGxlbWVudGF0aW9uIHRoYXQgSSBtYXkgdXNlIHRvIHJlcGxhY2UgdGhlIGV4aXN0aW5nIG9uZSwKaWYgdGhlcmUgYXJlIGVub3VnaCBjb21wbGFpbnRzLiBJdFwncyBtb3JlIGNvbXBsaWNhdGVkLCBhbmQgSVwnbSBsYXp5LCBidXQgZ2l2ZW4gc3VmZmljaWVudCBkZW1hbmQsIElcJ2xsIGZpeCBpdC48L3A+CjxoMz5DcmVkaXRzPC9oMz4KPHA+RGV2ZWxvcG1lbnQgb2YgdGhpcyBtb2R1bGUgaGFzIGJlZW4gZ2VuZXJvdXNseSBzcG9uc29yZWQgYnkgTWF0dCBIb3Juc2J5LjwvcD4KPHA+RXh0ZW5zaXZlIHRlc3RpbmcsIFFBLCBpZGVhcywgYW5kIG5vbi1uZWdvdGlhYmxlIGRlbWFuZHMgcHJvdmlkZWQgYnkgUGF1bCAiSW5TaVBpRCIgTm9vbmUgYW5kIERhbmllbCAiV2VzdGlzIiBXZXN0ZXJncmVuLjwvcD4KPGgzPlN1cHBvcnQ8L2gzPgo8cD5UaGlzIG1vZHVsZSBkb2VzIG5vdCBpbmNsdWRlIGNvbW1lcmNpYWwgc3VwcG9ydC4gSG93ZXZlciwgdGhlcmUgYXJlIGEgbnVtYmVyIG9mIHJlc291cmNlcyBhdmFpbGFibGUgdG8gaGVscCB5b3Ugd2l0aCBpdDo8L3A+Cjx1bD4KPGxpPkZvciB0aGUgbGF0ZXN0IHZlcnNpb24gb2YgdGhpcyBtb2R1bGUsIEZBUXMsIG9yIHRvIGZpbGUgYSBCdWcgUmVwb3J0LCBwbGVhc2UgdmlzaXQgdGhlCm1vZHVsZSBob21lcGFnZSBhdCA8YSBocmVmPSJodHRwOi8vZGV2LmNtc21hZGVzaW1wbGUub3JnL3Byb2plY3RzL2dsb3NzYXJ5LyI+dGhlIENNUyBEZXZlbG9wZXIgRm9yZ2U8L2E+LjwvbGk+CjxsaT5BZGRpdGlvbmFsIGRpc2N1c3Npb24gb2YgdGhpcyBtb2R1bGUgbWF5IGFsc28gYmUgZm91bmQgaW4gdGhlIDxhIGhyZWY9Imh0dHA6Ly9mb3J1bS5jbXNtYWRlc2ltcGxlLm9yZyI+Q01TIE1hZGUgU2ltcGxlIEZvcnVtczwvYT4uPC9saT4KPGxpPlRoZSBhdXRob3IsIFNqRywgY2FuIG9mdGVuIGJlIGZvdW5kIGluIHRoZSA8YSBocmVmPSJpcmM6Ly9pcmMuZnJlZW5vZGUubmV0LyNjbXMiPkNNUyBJUkMgQ2hhbm5lbDwvYT4uPC9saT4KPGxpPkxhc3RseSwgeW91IG1heSBoYXZlIHNvbWUgc3VjY2VzcyBlbWFpbGluZyB0aGUgYXV0aG9yIGRpcmVjdGx5LjwvbGk+CjwvdWw+CjxwPkFzIHBlciB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIHByb3ZpZGVkIGFzLWlzLiBQbGVhc2UgcmVhZCB0aGUgdGV4dApvZiB0aGUgbGljZW5zZSBmb3IgdGhlIGZ1bGwgZGlzY2xhaW1lci48L3A+Cgo8aDM+Q29weXJpZ2h0IGFuZCBMaWNlbnNlPC9oMz4KPHA+Q29weXJpZ2h0ICZjb3B5OyAyMDA2LCBTYW11ZWwgR29sZHN0ZWluIDxhIGhyZWY9Im1haWx0bzpzamdAY21zbW9kdWxlcy5jb20iPiZsdDtzamdAY21zbW9kdWxlcy5jb20mZ3Q7PC9hPi4gQWxsIFJpZ2h0cyBBcmUgUmVzZXJ2ZWQuPC9wPgo8cD5UaGlzIG1vZHVsZSBoYXMgYmVlbiByZWxlYXNlZCB1bmRlciB0aGUgPGEgaHJlZj0iaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMIj5HTlUgUHVibGljIExpY2Vuc2U8L2E+LiBZb3UgbXVzdCBhZ3JlZSB0byB0aGlzIGxpY2Vuc2UgYmVmb3JlIHVzaW5nIHRoZSBtb2R1bGUuPC9wPgonOwo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/method.install.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEdsb3NzYXJ5IC8gRGljdGlvbmFyeSAvIEZBUSBtb2R1bGUKIyBWZXJzaW9uOiAwLjYuNiwgU2pHCiMgaHR0cDovL2Rldi5jbXNtYWRlc2ltcGxlLm9yZy9wcm9qZWN0cy9nbG9zc2FyeQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwOSBieSBUZWQgS3VscCAodGVkQGNtc21hZGVzaW1wbGUub3JnKQojIGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKJGRiID0mICR0aGlzLT5HZXREYigpOwokdGFib3B0YXJyYXkgPSBhcnJheSgnbXlzcWwnID0+ICdUWVBFPU15SVNBTScpOwokZGljdCA9IE5ld0RhdGFEaWN0aW9uYXJ5KCRkYik7Ci8vIHRhYmxlIHNjaGVtYSBkZXNjcmlwdGlvbgokZmxkcyA9ICIKCQkJdGVybV9pZCBJIEtFWSwKCQkJdGVybSBYLAoJCQl0aXAgQygyNTUpLAoJCQlkZWZpbml0aW9uIFgsCgkJCWNyZWF0ZV9kYXRlICIuIENNU19BRE9EQl9EVDsKJHNxbGFycmF5ID0gJGRpY3QtPkNyZWF0ZVRhYmxlU1FMKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2dsb3NzYXJ5X3Rlcm0iLAoJCQkJICAkZmxkcywgJHRhYm9wdGFycmF5KTsKJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwokZGItPkNyZWF0ZVNlcXVlbmNlKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2dsb3NzYXJ5X3Rlcm1fc2VxIik7CiRmbGRzID0gIgoJCQljYXRlZ29yeV9pZCBJIEtFWSwKCQkJbmFtZSBDKDgwKQoJCQkiOwokc3FsYXJyYXkgPSAkZGljdC0+Q3JlYXRlVGFibGVTUUwoY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZ2xvc3NhcnlfY2F0IiwKCQkJCSAgJGZsZHMsICR0YWJvcHRhcnJheSk7CiRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKJGRiLT5DcmVhdGVTZXF1ZW5jZShjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9nbG9zc2FyeV9jYXRfc2VxIik7CiRmbGRzID0gIgoJCQljYXRlZ29yeV9pZCBJLAoJCQl0ZXJtX2lkIEkKCQkJIjsKJHNxbGFycmF5ID0gJGRpY3QtPkNyZWF0ZVRhYmxlU1FMKGNtc19kYl9wcmVmaXgoKS4KCQkJCSAgIm1vZHVsZV9nbG9zc2FyeV90ZXJtX2NhdCIsCgkJCQkgICRmbGRzLCAkdGFib3B0YXJyYXkpOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CiRmbGRzID0gIgoJCQl0ZW1wbGF0ZV9pZCBJIEtFWSwKCQkJbmFtZSBDKDgwKSwKCQkJdGVtcGxhdGUgWAoJCQkiOwokc3FsYXJyYXkgPSAkZGljdC0+Q3JlYXRlVGFibGVTUUwoY21zX2RiX3ByZWZpeCgpLgoJCQkJICAibW9kdWxlX2dsb3NzYXJ5X3RlbXBsYXRlIiwKCQkJCSAgJGZsZHMsICR0YWJvcHRhcnJheSk7CiRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKJGRiLT5DcmVhdGVTZXF1ZW5jZShjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9nbG9zc2FyeV90ZW1wbGF0ZV9zZXEiKTsKCi8vIGluc2VydCBzYW1wbGUgdGVybXMKJHF1ZXJ5ID0gJ0lOU0VSVCBJTlRPICcuIGNtc19kYl9wcmVmaXgoKS4KICAnbW9kdWxlX2dsb3NzYXJ5X3Rlcm0gKHRlcm1faWQsIHRlcm0sIGRlZmluaXRpb24sY3JlYXRlX2RhdGUpIFZBTFVFUyAoPyw/LD8sPyknOwokdGVybV9pZDEgPSAkZGItPkdlbklEKGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2dsb3NzYXJ5X3Rlcm1fc2VxJyk7CiRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkoJHRlcm1faWQxLCdhYmVjZWRhcmlhbicsJzxvbD48bGk+T25lIHdobyB0ZWFjaGVzIG9yIHN0dWRpZXMgdGhlIGFscGhhYmV0LjwvbGk+PGxpPk9uZSB3aG8gaXMganVzdCBsZWFybmluZzsgYSBiZWdpbm5lci48L2xpPjwvb2w+JywgdHJpbSgkZGItPkRCVGltZVN0YW1wKHRpbWUoKSksICInIikpKTsKJHRlcm1faWQyID0gJGRiLT5HZW5JRChjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9nbG9zc2FyeV90ZXJtX3NlcScpOwokZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KCR0ZXJtX2lkMiwnc3l6eWd5JywnQXN0cm9ub215LjxvbD48bGk+RWl0aGVyIG9mIHR3byBwb2ludHMgaW4gdGhlIG9yYml0IG9mIGEgY2VsZXN0aWFsIGJvZHkgd2hlcmUgdGhlIGJvZHkgaXMgaW4gb3Bwb3NpdGlvbiB0byBvciBpbiBjb25qdW5jdGlvbiB3aXRoIHRoZSBzdW4uPC9saT48bGk+RWl0aGVyIG9mIHR3byBwb2ludHMgaW4gdGhlIG9yYml0IG9mIHRoZSBtb29uIHdoZW4gdGhlIG1vb24gbGllcyBpbiBhIHN0cmFpZ2h0IGxpbmUgd2l0aCB0aGUgc3VuIGFuZCBFYXJ0aC48L2xpPjxsaT5UaGUgY29uZmlndXJhdGlvbiBvZiB0aGUgc3VuLCB0aGUgbW9vbiwgYW5kIEVhcnRoIGx5aW5nIGluIGEgc3RyYWlnaHQgbGluZS48L2xpPjwvb2w+JywgdHJpbSgkZGItPkRCVGltZVN0YW1wKHRpbWUoKSksICInIikpKTsKJHRlcm1faWQzID0gJGRiLT5HZW5JRChjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9nbG9zc2FyeV90ZXJtX3NlcScpOwokZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KCR0ZXJtX2lkMywnb250b2xvZ3knLCdUaGUgYnJhbmNoIG9mIG1ldGFwaHlzaWNzIHRoYXQgZGVhbHMgd2l0aCB0aGUgbmF0dXJlIG9mIGJlaW5nLicsIHRyaW0oJGRiLT5EQlRpbWVTdGFtcCh0aW1lKCkpLCAiJyIpKSk7CiR0ZXJtX2lkNCA9ICRkYi0+R2VuSUQoY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZ2xvc3NhcnlfdGVybV9zZXEnKTsKJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkdGVybV9pZDQsJ2luZWZmYWJsZScsJzxvbD48bGk+SW5jYXBhYmxlIG9mIGJlaW5nIGV4cHJlc3NlZDsgaW5kZXNjcmliYWJsZSBvciB1bnV0dGVyYWJsZS48L2xpPjxsaT5Ob3QgdG8gYmUgdXR0ZXJlZDsgdGFib286IDxzdHJvbmc+dGhlIGluZWZmYWJsZSBuYW1lIG9mIEdvZDwvc3Ryb25nPi48L2xpPjwvb2w+JywgdHJpbSgkZGItPkRCVGltZVN0YW1wKHRpbWUoKSksICInIikpKTsKJHRlcm1faWQ1ID0gJGRiLT5HZW5JRChjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9nbG9zc2FyeV90ZXJtX3NlcScpOwokZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KCR0ZXJtX2lkNSwnYWNpbmlmb3JtJywnPG9sPjxsaT5IYXZpbmcgdGhlIGZvcm0gb2YgYSBjbHVzdGVyIG9mIGdyYXBlczsgY2x1c3RlcmVkIGxpa2UgZ3JhcGVzLjwvbGk+PGxpPkZ1bGwgb2Ygc21hbGwga2VybmVscyBsaWtlIGEgZ3JhcGUuPC9saT48L29sPicsIHRyaW0oJGRiLT5EQlRpbWVTdGFtcCh0aW1lKCkpLCAiJyIpKSk7CiR0ZXJtX2lkNiA9ICRkYi0+R2VuSUQoY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZ2xvc3NhcnlfdGVybV9zZXEnKTsKJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkdGVybV9pZDYsJ3N5YmFyaXRlJywnPG9sPjxsaT5BIHBlcnNvbiBkZXZvdGVkIHRvIHBsZWFzdXJlIGFuZCBsdXh1cnk7IGEgdm9sdXB0dWFyeS48L2xpPjxsaT5BIG5hdGl2ZSBvciBpbmhhYml0YW50IG9mIFN5YmFyaXMuPC9saT48L29sPicsIHRyaW0oJGRiLT5EQlRpbWVTdGFtcCh0aW1lKCkpLCAiJyIpKSk7CgovLyBpbnNlcnQgc2FtcGxlIGNhdGVnb3JpZXMKJHF1ZXJ5ID0gJ0lOU0VSVCBJTlRPICcuIGNtc19kYl9wcmVmaXgoKS4KICAnbW9kdWxlX2dsb3NzYXJ5X2NhdCAoY2F0ZWdvcnlfaWQsIG5hbWUpIFZBTFVFUyAoPyw/KSc7CiRjYXRfaWQxID0gJGRiLT5HZW5JRChjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9nbG9zc2FyeV9jYXRfc2VxJyk7CiRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkoJGNhdF9pZDEsJ1NjaWVuY2UnKSk7CiRjYXRfaWQyID0gJGRiLT5HZW5JRChjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9nbG9zc2FyeV9jYXRfc2VxJyk7CiRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkoJGNhdF9pZDIsJ09ic2N1cmUnKSk7CiRjYXRfaWQzID0gJGRiLT5HZW5JRChjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9nbG9zc2FyeV9jYXRfc2VxJyk7CiRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkoJGNhdF9pZDMsJ0dlbmVyYWwnKSk7CgovLyBhbmQgcHV0IHNhbXBsZSB0ZXJtcyBpbnRvIGNhdGVnb3JpZXMKJHF1ZXJ5ID0gJ0lOU0VSVCBJTlRPICcuIGNtc19kYl9wcmVmaXgoKS4KICAnbW9kdWxlX2dsb3NzYXJ5X3Rlcm1fY2F0ICh0ZXJtX2lkLCBjYXRlZ29yeV9pZCkgVkFMVUVTICg/LD8pJzsKJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkdGVybV9pZDEsICRjYXRfaWQzKSk7CiRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkoJHRlcm1faWQyLCAkY2F0X2lkMykpOwokZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KCR0ZXJtX2lkMywgJGNhdF9pZDMpKTsKJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkdGVybV9pZDQsICRjYXRfaWQzKSk7CiRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkoJHRlcm1faWQ1LCAkY2F0X2lkMykpOwokZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KCR0ZXJtX2lkMiwgJGNhdF9pZDEpKTsKJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkdGVybV9pZDEsICRjYXRfaWQyKSk7CiRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkoJHRlcm1faWQ1LCAkY2F0X2lkMikpOwokZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KCR0ZXJtX2lkNiwgJGNhdF9pZDMpKTsKCgovLyBzZXQgc29tZSBkZWZhdWx0cwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnbnVtYmVyX3Nob3cnLCAnNScpOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnZmlsdGVyX3NpdGUnLCAnMCcpOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnZmlsdGVyX25ld3MnLCAnMCcpOwovLyB1cGRhdGUgdGhlc2UgbnVtYmVycyBpZiB3ZSBhZGQgbW9yZSBzYW1wbGUgdGVtcGxhdGVzCiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdkZWZhdWx0X3RlbXBsYXRlJywgJzEnKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ2RlZmF1bHRfc2luZ2xlX3Rlcm1fdGVtcGxhdGUnLCAnMicpOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnZ2xvc3NhcnlfaW5saW5lJywgJzEnKTsKCi8vIGNyZWF0ZSBhIHBlcm1pc3Npb24KJHRoaXMtPkNyZWF0ZVBlcm1pc3Npb24oJ01vZGlmeSBHbG9zc2FyeScsICdNb2RpZnkgR2xvc3NhcnknKTsKCi8vIGltcG9ydCBhbGwgdGhlIHRlbXBsYXRlcwokcXVlcnkgPSAnSU5TRVJUIElOVE8gJy4gY21zX2RiX3ByZWZpeCgpLgogICdtb2R1bGVfZ2xvc3NhcnlfdGVtcGxhdGUgKHRlbXBsYXRlX2lkLCBuYW1lLCB0ZW1wbGF0ZSkgVkFMVUVTICg/LD8sPyknOwokZGlyPW9wZW5kaXIoZGlybmFtZShfX0ZJTEVfXykuJy9pbmNsdWRlcycpOwokdGVtcHMgPSBhcnJheSgpOwp3aGlsZSgkZmlsZXNwZWM9cmVhZGRpcigkZGlyKSkKICB7CiAgICBpZighIHByZWdfbWF0Y2goJy9cLnRwbCQvaScsJGZpbGVzcGVjKSkKICAgICAgewoJY29udGludWU7CiAgICAgIH0KICAgIGFycmF5X3B1c2goJHRlbXBzLCAkZmlsZXNwZWMpOwogIH0gICAgICAgIApzb3J0KCR0ZW1wcyk7CmZvcmVhY2ggKCR0ZW1wcyBhcyAkZmlsZXNwZWMpCnsKICAkdGVtcGxhdGUgPSBmaWxlX2dldF9jb250ZW50cyhkaXJuYW1lKF9fRklMRV9fKS4nL2luY2x1ZGVzLycuJGZpbGVzcGVjKTsKICAkdGVtcF9uYW1lID0gcHJlZ19yZXBsYWNlKCcvXC50cGwkL2knLCcnLCRmaWxlc3BlYyk7CiAgJHRlbXBfaWQgPSAkZGItPkdlbklEKGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2dsb3NzYXJ5X3RlbXBsYXRlX3NlcScpOwogICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkoJHRlbXBfaWQsJHRlbXBfbmFtZSwkdGVtcGxhdGUpKTsKICAkdGhpcy0+U2V0VGVtcGxhdGUoJ2dsb3NzYXJ5XycuJHRlbXBfaWQsJHRlbXBsYXRlKTsKfQovLyBwdXQgbWVudGlvbiBpbnRvIHRoZSBhZG1pbiBsb2cKJHRoaXMtPkF1ZGl0KCAwLCAkdGhpcy0+TGFuZygnZnJpZW5kbHluYW1lJyksICR0aGlzLT5MYW5nKCdpbnN0YWxsZWQnLCR0aGlzLT5HZXRWZXJzaW9uKCkpKTsKCiMgRU9GCj8+]]></data>
	</file>
	<file>
	  <filename>/method.uninstall.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEdsb3NzYXJ5IC8gRGljdGlvbmFyeSAvIEZBUSBtb2R1bGUKIyBWZXJzaW9uOiAwLjYuNiwgU2pHCiMgaHR0cDovL2Rldi5jbXNtYWRlc2ltcGxlLm9yZy9wcm9qZWN0cy9nbG9zc2FyeQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwOSBieSBUZWQgS3VscCAodGVkQGNtc21hZGVzaW1wbGUub3JnKQojIGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKJGRiID0gJiR0aGlzLT5HZXREYigpOwoJCQovLyByZW1vdmUgdGhlIGRhdGFiYXNlIHRhYmxlCiRkaWN0ID0gTmV3RGF0YURpY3Rpb25hcnkoICRkYiApOwokc3FsYXJyYXkgPSAkZGljdC0+RHJvcFRhYmxlU1FMKCBjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9nbG9zc2FyeV90ZXJtIiApOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CiRzcWxhcnJheSA9ICRkaWN0LT5Ecm9wVGFibGVTUUwoIGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2dsb3NzYXJ5X2NhdCIgKTsKJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwokc3FsYXJyYXkgPSAkZGljdC0+RHJvcFRhYmxlU1FMKCBjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9nbG9zc2FyeV90ZXJtX2NhdCIgKTsKJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwokc3FsYXJyYXkgPSAkZGljdC0+RHJvcFRhYmxlU1FMKCBjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9nbG9zc2FyeV90ZW1wbGF0ZSIgKTsKJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwoKLy8gcmVtb3ZlIHRoZSBzZXF1ZW5jZQokZGItPkRyb3BTZXF1ZW5jZSggY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZ2xvc3NhcnlfdGVybV9zZXEiICk7CiRkYi0+RHJvcFNlcXVlbmNlKCBjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9nbG9zc2FyeV9jYXRfc2VxIiApOwokZGItPkRyb3BTZXF1ZW5jZSggY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZ2xvc3NhcnlfdGVtcGxhdGVfc2VxIiApOwoKLy8gcmVtb3ZlIHRoZSBwZXJtaXNzaW9ucwokdGhpcy0+UmVtb3ZlUGVybWlzc2lvbignTW9kaWZ5IEdsb3NzYXJ5Jyk7CgokdGhpcy0+UmVtb3ZlUHJlZmVyZW5jZSgnZGVmYXVsdF90ZW1wbGF0ZScpOwokdGhpcy0+UmVtb3ZlUHJlZmVyZW5jZSgnZGVmYXVsdF9zaW5nbGVfdGVybV90ZW1wbGF0ZScpOwokdGhpcy0+UmVtb3ZlUHJlZmVyZW5jZSgnbnVtYmVyX3Nob3cnKTsKJHRoaXMtPlJlbW92ZVByZWZlcmVuY2UoJ2ZpbHRlcl9zaXRlJyk7CiR0aGlzLT5SZW1vdmVQcmVmZXJlbmNlKCdmaWx0ZXJfbmV3cycpOwokdGhpcy0+UmVtb3ZlUHJlZmVyZW5jZSgnc2hvd19zaW5nbGUnKTsKJHRoaXMtPlJlbW92ZVByZWZlcmVuY2UoJ2dsb3NzYXJ5X2lubGluZScpOwokdGhpcy0+UmVtb3ZlUHJlZmVyZW5jZSgnc2hvd190ZXJtaWRzJyk7CiR0aGlzLT5SZW1vdmVQcmVmZXJlbmNlKCdzcGluaW5nX2NoYXJzJyk7CiR0aGlzLT5SZW1vdmVQcmVmZXJlbmNlKCdnbG9zc2FyeV9wYWdlJyk7CgkJCi8vIHB1dCBtZW50aW9uIGludG8gdGhlIGFkbWluIGxvZwokdGhpcy0+QXVkaXQoIDAsICR0aGlzLT5MYW5nKCdmcmllbmRseW5hbWUnKSwgJHRoaXMtPkxhbmcoJ3VuaW5zdGFsbGVkJykpOwoKIyBFT0YKPz4=]]></data>
	</file>
	<file>
	  <filename>/method.upgrade.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEdsb3NzYXJ5IC8gRGljdGlvbmFyeSAvIEZBUSBtb2R1bGUKIyBWZXJzaW9uOiAwLjYuNiwgU2pHCiMgaHR0cDovL2Rldi5jbXNtYWRlc2ltcGxlLm9yZy9wcm9qZWN0cy9nbG9zc2FyeQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwOSBieSBUZWQgS3VscCAodGVkQGNtc21hZGVzaW1wbGUub3JnKQojIGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKJGRiID0gY21zbXMoKS0+R2V0RGIoKTsKJHRhYm9wdGFycmF5ID0gYXJyYXkoJ215c3FsJyA9PiAnVFlQRT1NeUlTQU0nKTsKJGRpY3QgPSBOZXdEYXRhRGljdGlvbmFyeSgkZGIpOwokY3VycmVudF92ZXJzaW9uID0gJG9sZHZlcnNpb247CnN3aXRjaCgkY3VycmVudF92ZXJzaW9uKQogIHsKICBjYXNlICIwLjEiOgogIGNhc2UgIjAuNSI6CiAgICAkdGhpcy0+UmVtb3ZlUHJlZmVyZW5jZSgnZmlsdGVyX3R5cGUnKTsKICBjYXNlICIwLjUuMSI6CiAgY2FzZSAiMC42IjoKICBjYXNlICIwLjYuMSI6CiAgY2FzZSAiMC42LjIiOgogIGNhc2UgIjAuNi4zIjoKICBjYXNlICIwLjYuNCI6CiAgY2FzZSAiMC42LjUiOgogIGNhc2UgIjAuNi42IjoKICBjYXNlICIwLjYuNyI6CiAgY2FzZSAiMC42LjgiOgogIGNhc2UgIjAuNyI6Cgkkc3FsYXJyYXkgPSAkZGljdC0+QWRkQ29sdW1uU1FMKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2dsb3NzYXJ5X3Rlcm0iLCAidGlwIEMoMjU1KSIpOwoJJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwoJJHNxbGFycmF5ID0gJGRpY3QtPkFkZENvbHVtblNRTChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9nbG9zc2FyeV90ZXJtIiwgImNyZWF0ZV9kYXRlICIuIENNU19BRE9EQl9EVCk7CgkkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CgkkZGItPkV4ZWN1dGUoJ1VQREFURSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2dsb3NzYXJ5X3Rlcm0gU0VUIGNyZWF0ZV9kYXRlID0gPycsIGFycmF5KHRyaW0oJGRiLT5EQlRpbWVTdGFtcCh0aW1lKCkpLCAiJyIpKSk7CgogIH0KCi8vIHB1dCBtZW50aW9uIGludG8gdGhlIGFkbWluIGxvZwokdGhpcy0+QXVkaXQoIDAsICR0aGlzLT5MYW5nKCdmcmllbmRseW5hbWUnKSwgJHRoaXMtPkxhbmcoJ3VwZ3JhZGVkJywkdGhpcy0+R2V0VmVyc2lvbigpKSk7Cgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/templates/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/templates/.DS_Store</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[AAAAAUJ1ZDEAABAAAAAIAAAAEAAAAAQKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAoAAAABAAAQAABTAHQAbwByAGVJbAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACgAAAAkALgBEAFMAXwBTAHQAbwByAGVJbG9jYmxvYgAAABAAAAJeAAAAKP///////wAAAAAADgBhAGQAbQBpAG4AcAByAGUAZgBzAC4AdABwAGxJbG9jYmxvYgAAABAAAABGAAAAKP///////wAAAAAACwBlAGQAaQB0AGMAYQB0AC4AdABwAGxJbG9jYmxvYgAAABAAAADMAAAAKP///////wAAAAAAEABlAGQAaQB0AHQAZQBtAHAAbABhAHQAZQAuAHQAcABsSWxvY2Jsb2IAAAAQAAABUgAAACj///////8AAAAAAAwAZQBkAGkAdAB0AGUAcgBtAC4AdABwAGxJbG9jYmxvYgAAABAAAAHYAAAAKP///////wAAAAAACQBlAHIAcgBvAHIALgB0AHAAbElsb2NibG9iAAAAEAAAAEYAAACY////////AAAAAAAMAGcAbABvAHMAcwBhAHIAeQAuAHQAcABsSWxvY2Jsb2IAAAAQAAAAzAAAAJj///////8AAAAAAAwAbABpAHMAdABjAGEAdABzAC4AdABwAGxJbG9jYmxvYgAAABAAAAFSAAAAmP///////wAAAAAAEQBsAGkAcwB0AHQAZQBtAHAAbABhAHQAZQBzAC4AdABwAGxJbG9jYmxvYgAAABAAAAHYAAAAmP///////wAAAAAADQBsAGkAcwB0AHQAZQByAG0AcwAuAHQAcABsSWxvY2Jsb2IAAAAQAAAARgAAAQj///////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAgLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAACAAAAABAAAAQAAAAAEAAACAAAAAAQAAAQAAAAABAAACAAAAAAEAAAQAAAAAAAAAAAEAABAAAAAAAQAAIAAAAAABAABAAAAAAAEAAIAAAAAAAQABAAAAAAABAAIAAAAAAAEABAAAAAAAAQAIAAAAAAABABAAAAAAAAEAIAAAAAAAAQBAAAAAAAABAIAAAAAAAAEBAAAAAAAAAQIAAAAAAAABBAAAAAAAAAEIAAAAAAAAARAAAAAAAAABIAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAEAsAAABFAAAECgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBERTREIAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAIAAAAGAAAAAAAAAAAQAAAIAAAAABAAABAAAAAAEAAAIAAAAAAAAAAAIAAAgAAAAYAAAAAAAAAAABAAAgAAAAAAEAAEAAAAAAAQAAgAAAAAABAAEAAAAAAAEAAgAAAAAAAQAEAAAAAAABAAgAAAAAAAEAEAAAAAAAAQAgAAAAAAABAEAAAAAAAAEAgAAAAAAAAQEAAAAAAAABAgAAAAAAAAEEAAAAAAAAAQgAAAAAAAABEAAAAAAAAAEgAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==]]></data>
	</file>
	<file>
	  <filename>/templates/adminprefs.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyRpbm5lcm5hdn0KPGJyIC8+CjxoMz57JHNlY3Rpb259PC9oMz4Ke2lmICRtZXNzYWdlIT0nJ308aDQ+eyRtZXNzYWdlfTwvaDQ+ey9pZn0KeyRzdGFydGZvcm19CnskdGFiX2hlYWRlcnN9Cnskc3RhcnRfZGlzcGxheV90YWJ9Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyR0aXRsZV9kZWZhdWx0X3RlbXBsYXRlfTwvcD4KICAgICAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2RlZmF1bHRfdGVtcGxhdGV9PC9wPgoJPC9kaXY+Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyR0aXRsZV9kZWZhdWx0X251bWJlcl9zaG93fTwvcD4KICAgICAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X251bWJlcl9zaG93fTwvcD4KCTwvZGl2PgoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgICAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskdGl0bGVfbnVtYmVyX3NwaW5pbmdfY2hhcnN9PC9wPgogICAgICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfbnVtYmVyX3NwaW5pbmdfY2hhcnN9PC9wPgoJPC9kaXY+Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyR0aXRsZV93eXNpd3lnX2RlZmluaXRpb25zfTwvcD4KICAgICAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X3d5c2l3eWdfZGVmaW5pdGlvbnN9PC9wPgoJPC9kaXY+Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyR0aXRsZV93eXNpd3lnX3Rlcm1zfTwvcD4KICAgICAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X3d5c2l3eWdfdGVybXN9PGJyIC8+eyR0aXRsZV93eXNpd3lnX3Rlcm1zX2hlbHB9PC9wPgoJPC9kaXY+Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyR0aXRsZV9wcm9jZXNzX3NtYXJ0eX08L3A+CiAgICAgICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9wcm9jZXNzX3NtYXJ0eX08L3A+Cgk8L2Rpdj4KeyRlbmRfdGFifQp7JHN0YXJ0X2xpbmtfdGFifQoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgICAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskdGl0bGVfc2luZ2xlX3Rlcm19PC9wPgogICAgICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfc2luZ2xlX3Rlcm19PC9wPgoJPC9kaXY+Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyR0aXRsZV9kZWZhdWx0X3NpbmdsZV90ZXJtX3RlbXBsYXRlfTwvcD4KICAgICAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2RlZmF1bHRfc2luZ2xlX3Rlcm1fdGVtcGxhdGV9PC9wPgoJPC9kaXY+Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskZ2xvc3NhcnlfcHJldHR5dXJsc19oZWxwfTwvcD48YnIgY2xhc3M9ImNsZWFyYiIgLz4KICAgICAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskdGl0bGVfZGlzYWJsZV9wcmV0dHl1cmxzfTwvcD4KICAgICAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2Rpc2FibGVfcHJldHR5dXJsc308L3A+Cgk8L2Rpdj4KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CgkgICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRnbG9zc2FyeV9pbmxpbmVfaGVscH08L3A+PGJyIGNsYXNzPSJjbGVhcmIiIC8+CiAgICAgICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHRpdGxlX2dsb3NzYXJ5X2lubGluZX08L3A+CiAgICAgICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9nbG9zc2FyeV9pbmxpbmV9PC9wPgoJPC9kaXY+Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskZ2xvc3NhcnlfcGFnZV9oZWxwfTwvcD48YnIgY2xhc3M9ImNsZWFyYiIgLz4KICAgICAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskdGl0bGVfZ2xvc3NhcnlfcGFnZX08L3A+CiAgICAgICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9nbG9zc2FyeV9wYWdlfTwvcD4KICAgIDwvZGl2PgoKeyRlbmRfdGFifQp7JHN0YXJ0X2ZpbHRlcmluZ190YWJ9Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyR0aXRsZV9maWx0ZXJfc2l0ZX08L3A+CiAgICAgICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9maWx0ZXJfc2l0ZX08L3A+Cgk8L2Rpdj4KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICAgICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHRpdGxlX2ZpbHRlcl9uZXdzfTwvcD4KICAgICAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2ZpbHRlcl9uZXdzfTwvcD4KCTwvZGl2PgoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgICAgICA8cCBjbGFzcz0icGFnZXRleHQiPiZuYnNwOzwvcD4KICAgICAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2J1dHRvbl9maWx0ZXJ9PC9wPgoJPC9kaXY+CnskZW5kX3RhYn0KeyRzdGFydF9hZG1pbl90YWJ9Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyR0aXRsZV9zaG93X3Rlcm1pZHN9PC9wPgogICAgICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfc2hvd190ZXJtaWRzfTwvcD4KCTwvZGl2PgoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgICAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskdGl0bGVfbnVtYmVyX3Nob3d9PC9wPgogICAgICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfbnVtYmVyX3Nob3dfYWRtaW59PC9wPgoJPC9kaXY+CnskZW5kX3RhYn0KeyR0YWJfZm9vdGVyc30KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CgkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij4mbmJzcDs8L3A+CgkJPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRoaWRkZW59eyRzdWJtaXR9PC9wPgoJPC9kaXY+CnskZW5kZm9ybX0K]]></data>
	</file>
	<file>
	  <filename>/templates/editcat.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyRpbm5lcm5hdn0NCjxiciAvPg0KPGgzPnskb3B9PC9oMz4NCg0KeyRzdGFydGZvcm19DQoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4NCgkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij4qeyR0aXRsZV9uYW1lfTo8L3A+DQoJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfbmFtZX08L3A+DQoJPC9kaXY+DQoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4NCgkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij4mbmJzcDs8L3A+DQoJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaGlkZGVufXskc3VibWl0fTwvcD4NCgk8L2Rpdj4NCnskZW5kZm9ybX0NCg==]]></data>
	</file>
	<file>
	  <filename>/templates/edittemplate.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyRpbm5lcm5hdn0NCjxiciAvPg0KPGgzPnskb3B9PC9oMz4NCg0KeyRzdGFydGZvcm19DQoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4NCgkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij4qeyR0aXRsZV9uYW1lfTo8L3A+DQoJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfbmFtZX08L3A+DQoJPC9kaXY+DQoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4NCgkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij4qeyR0aXRsZV90ZW1wbGF0ZX06PC9wPg0KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X3RlbXBsYXRlfTwvcD4NCgk8L2Rpdj4NCgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPg0KCQk8cCBjbGFzcz0icGFnZXRleHQiPiZuYnNwOzwvcD4NCgkJPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRoaWRkZW59eyRzdWJtaXR9PC9wPg0KCTwvZGl2Pg0KeyRlbmRmb3JtfQ0K]]></data>
	</file>
	<file>
	  <filename>/templates/editterm.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyRpbm5lcm5hdn0KPGgzPnskdGl0bGVfc2VjdGlvbn08L2gzPgp7aWYgJG1lc3NhZ2UgIT0gIiJ9PHA+eyRtZXNzYWdlfTwvcD57L2lmfQp7JHN0YXJ0Zm9ybX0KCjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+Cgk8cCBjbGFzcz0icGFnZXRleHQiPnskdGl0bGVfZmllbGRfdGVybX06PC9wPgoJPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9maWVsZF90ZXJtfTwvcD4KPC9kaXY+CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+Cgk8cCBjbGFzcz0icGFnZXRleHQiPnskdGl0bGVfZmllbGRfdGlwfTo8L3A+Cgk8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2ZpZWxkX3RpcH08L3A+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHRpdGxlX2ZpZWxkX2NhdHN9OjwvcD4KCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfZmllbGRfY2F0c308L3A+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHRpdGxlX2ZpZWxkX2RlZmluaXRpb259OjwvcD4KCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfZmllbGRfZGVmaW5pdGlvbn08L3A+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJPHAgY2xhc3M9InBhZ2V0ZXh0Ij4mbmJzcDs8L3A+Cgk8cCBjbGFzcz0icGFnZWlucHV0Ij57JGhpZGRlbn17JHN1Ym1pdH08L3A+CjwvZGl2Pg==]]></data>
	</file>
	<file>
	  <filename>/templates/error.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyRpbm5lcm5hdn0KPGgzPnskdGl0bGVfZXJyb3J9PC9oMz4Ke2lmICRtZXNzYWdlIT0nJ308cD57JG1lc3NhZ2V9PC9wPnsvaWZ9]]></data>
	</file>
	<file>
	  <filename>/templates/glossary.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGRsPgogICAge3NlY3Rpb24gbmFtZT1udW1sb29wIGxvb3A9JGl0ZW1zfQogICAgCXtpZiAkaXRlbXNbbnVtbG9vcF0uc2hvd2RlZiA9PSAxfQogICAgCQk8ZHQgY2xhc3M9InNlbGVjdGVkIj48c3Ryb25nPnskaXRlbXNbbnVtbG9vcF0ubmFtZX08L3N0cm9uZz48L2R0PjxkZCBjbGFzcz0ic2VsZWN0ZWQiPjxzdHJvbmc+eyRpdGVtc1tudW1sb29wXS5kZWZpbml0aW9ufTwvc3Ryb25nPjwvZGQ+CiAgICAJe2Vsc2V9CiAgICAJCTxkdD57JGl0ZW1zW251bWxvb3BdLm5hbWV9PC9kdD48ZGQ+eyRpdGVtc1tudW1sb29wXS5kZWZpbml0aW9ufTwvZGQ+CiAgICAJey9pZn0KICAgIHsvc2VjdGlvbn0KPC9kbD4=]]></data>
	</file>
	<file>
	  <filename>/templates/listcats.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyRpbm5lcm5hdn0KPGJyIC8+CjxoMz57JHNlY3Rpb259PC9oMz4Ke2lmICRtZXNzYWdlIT0nJ308cD57JG1lc3NhZ2V9PC9wPnsvaWZ9CntpZiAkaXRlbWNvdW50ID4gMH0KPHRhYmxlIGNlbGxzcGFjaW5nPSIwIiBjbGFzcz0icGFnZXRhYmxlIj4KCTx0aGVhZD4KCQk8dHI+CgkJCTx0aD57JGNvbHVtbl9jYXRlZ29yeX08L3RoPgoJCQk8dGggY2xhc3M9InBhZ2VpY29uIj4mbmJzcDs8L3RoPgoJCQk8dGggY2xhc3M9InBhZ2VpY29uIj4mbmJzcDs8L3RoPgoJCTwvdHI+Cgk8L3RoZWFkPgoJPHRib2R5PgoJe2ZvcmVhY2ggZnJvbT0kaXRlbXMgaXRlbT1lbnRyeX0KCQk8dHIgY2xhc3M9InskZW50cnktPnJvd2NsYXNzfSIgb25tb3VzZW92ZXI9InRoaXMuY2xhc3NOYW1lPSd7JGVudHJ5LT5yb3djbGFzc31ob3Zlcic7IiBvbm1vdXNlb3V0PSJ0aGlzLmNsYXNzTmFtZT0neyRlbnRyeS0+cm93Y2xhc3N9JzsiPgoJCQk8dGQ+eyRlbnRyeS0+bmFtZX08L3RkPgoJCQk8dGQ+eyRlbnRyeS0+ZWRpdGxpbmt9PC90ZD4KCQkJPHRkPnskZW50cnktPmRlbGV0ZWxpbmt9PC90ZD4KCQk8L3RyPgoJey9mb3JlYWNofQoJPC90Ym9keT4KPC90YWJsZT4Ke2Vsc2V9CjxwPnskbm9jYXRzfTwvcD4Key9pZn0KPGRpdiBjbGFzcz0icGFnZW9wdGlvbnMiPgoJPHAgY2xhc3M9InBhZ2VvcHRpb25zIj57JGFkZGxpbmt9PC9wPgo8L2Rpdj4K]]></data>
	</file>
	<file>
	  <filename>/templates/listtemplates.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyRpbm5lcm5hdn0KPGJyIC8+CjxoMz57JHNlY3Rpb259PC9oMz4Ke2lmICRtZXNzYWdlIT0nJ308cD57JG1lc3NhZ2V9PC9wPnsvaWZ9CntpZiAkaXRlbWNvdW50ID4gMH0KPHRhYmxlIGNlbGxzcGFjaW5nPSIwIiBjbGFzcz0icGFnZXRhYmxlIj4KCTx0aGVhZD4KCQk8dHI+CgkJCTx0aD57JGNvbHVtbl90ZW1wbGF0ZX08L3RoPgoJCQk8dGggY2xhc3M9InBhZ2VpY29uIj4mbmJzcDs8L3RoPgoJCQk8dGggY2xhc3M9InBhZ2VpY29uIj4mbmJzcDs8L3RoPgoJCTwvdHI+Cgk8L3RoZWFkPgoJPHRib2R5PgoJe2ZvcmVhY2ggZnJvbT0kaXRlbXMgaXRlbT1lbnRyeX0KCQk8dHIgY2xhc3M9InskZW50cnktPnJvd2NsYXNzfSIgb25tb3VzZW92ZXI9InRoaXMuY2xhc3NOYW1lPSd7JGVudHJ5LT5yb3djbGFzc31ob3Zlcic7IiBvbm1vdXNlb3V0PSJ0aGlzLmNsYXNzTmFtZT0neyRlbnRyeS0+cm93Y2xhc3N9JzsiPgoJCQk8dGQ+eyRlbnRyeS0+bmFtZX08L3RkPgoJCQk8dGQ+eyRlbnRyeS0+ZWRpdGxpbmt9PC90ZD4KCQkJPHRkPnskZW50cnktPmRlbGV0ZWxpbmt9PC90ZD4KCQk8L3RyPgoJey9mb3JlYWNofQoJPC90Ym9keT4KPC90YWJsZT4Ke2Vsc2V9CjxwPnskbm90ZW1wbGF0ZXN9PC9wPgp7L2lmfQo8ZGl2IGNsYXNzPSJwYWdlb3B0aW9ucyI+Cgk8cCBjbGFzcz0icGFnZW9wdGlvbnMiPnskYWRkbGlua308L3A+CjwvZGl2Pgo=]]></data>
	</file>
	<file>
	  <filename>/templates/listterms.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[e2xpdGVyYWx9CjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KLy88IVtDREFUQVsKZnVuY3Rpb24gc2VsZWN0QWxsKCkKewoJY2hlY2tib3hlcyA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJpbnB1dCIpOwoJZm9yIChpPTA7IGk8Y2hlY2tib3hlcy5sZW5ndGggOyBpKyspCgl7CgkJaWYgKGNoZWNrYm94ZXNbaV0udHlwZSA9PSAiY2hlY2tib3giKSBjaGVja2JveGVzW2ldLmNoZWNrZWQ9IWNoZWNrYm94ZXNbaV0uY2hlY2tlZDsKCX0KfQovL11dPgo8L3NjcmlwdD4Key9saXRlcmFsfQp7JGlubmVybmF2fQo8aDM+eyR0aXRsZV9zZWN0aW9ufTwvaDM+CntpZiAkbWVzc2FnZSAhPSAiIn08cD57JG1lc3NhZ2V9PC9wPnsvaWZ9Cnskc3RhcnRmb3JtfQo8ZGl2IGNsYXNzPSJwYWdlb3B0aW9ucyI+Cgk8cCBjbGFzcz0icGFnZW9wdGlvbnMiPnskYWRkbGlua308L3A+PHA+eyR0aXRsZV9maWx0ZXJfY2F0ZWdvcnl9IHskaW5wdXRfZmlsdGVyX2NhdGVnb3J5fXskc3VibWl0fTwvcD4KPC9kaXY+CntpZiAkaXRlbWNvdW50ID4gMH0Ke2lmICRwYWdlX25vICE9Jyd9PHRhYmxlIGNlbGxzcGFjaW5nPSIwIiBjbGFzcz0icGFnZXRhYmxlIj48dHI+PHRkPnskcHJldl9wYWdlfTwvdGQ+PHRkPnskcGFnZV9ub308L3RkPjx0ZD57JG5leHRfcGFnZX08L3RkPjwvdHI+PC90YWJsZT57L2lmfQo8dGFibGUgY2VsbHNwYWNpbmc9IjAiIGNsYXNzPSJwYWdldGFibGUiPgoJPHRoZWFkPgoJCTx0cj4KCQkJPHRoPnskY29sdW1uX3Rlcm19PC90aD4KCQkJe2lmICRzaG93X3Rlcm1pZHMgPT0gMX08dGg+eyRjb2x1bW5fdGVybWlkfTwvdGg+ey9pZn0KCQkJPHRoPnskY29sdW1uX2RlZmluaXRpb259PC90aD4KCQkJPHRoPnskY29sdW1uX2NhdGVnb3J5fTwvdGg+CgkJCTx0aCBjbGFzcz0icGFnZWljb24iIGNvbHNwYW49IjIiPnskY29sdW1uX2FjdGlvbn08L3RoPgoJCQk8dGggY2xhc3M9InBhZ2VpY29uIj48YSBocmVmPSJqYXZhc2NyaXB0OnNlbGVjdEFsbCgpOyI+eyRjb2x1bW5fc2VsZWN0fTwvYT48L3RoPgoJCTwvdHI+Cgk8L3RoZWFkPgoJPHRib2R5PgoJe2ZvcmVhY2ggZnJvbT0kaXRlbXMgaXRlbT1lbnRyeX0KCQk8dHIgY2xhc3M9InskZW50cnktPnJvd2NsYXNzfSIgb25tb3VzZW92ZXI9InRoaXMuY2xhc3NOYW1lPSd7JGVudHJ5LT5yb3djbGFzc31ob3Zlcic7IiBvbm1vdXNlb3V0PSJ0aGlzLmNsYXNzTmFtZT0neyRlbnRyeS0+cm93Y2xhc3N9JzsiPgoJCQk8dGQ+PGEgaHJlZj0ieyRlbnRyeS0+bmFtZWxpbmt9Ij57JGVudHJ5LT5uYW1lfHRydW5jYXRlOjQwOiIuLi4iOnRydWV9PC9hPjwvdGQ+CgkJCXtpZiAkc2hvd190ZXJtaWRzID09IDF9PHRkPnskZW50cnktPmlkfTwvdGQ+ey9pZn0KCQkJPHRkPnskZW50cnktPmRlZmluaXRpb258dHJ1bmNhdGU6ODA6Ii4uLiI6dHJ1ZX08L3RkPgoJCQk8dGQ+eyRlbnRyeS0+Y2F0ZWdvcnl8dHJ1bmNhdGU6ODA6Ii4uLiI6dHJ1ZX08L3RkPgoJCQk8dGQ+eyRlbnRyeS0+ZWRpdGxpbmt9PC90ZD4KCQkJPHRkPnskZW50cnktPmRlbGxpbmt9PC90ZD4KCQkJPHRkPnskZW50cnktPnNlbGVjdH08L3RkPgoJCTwvdHI+Cgl7L2ZvcmVhY2h9Cgk8L3Rib2R5Pgo8L3RhYmxlPgp7aWYgJHBhZ2Vfbm8gIT0nJ308dGFibGUgY2VsbHNwYWNpbmc9IjAiIGNsYXNzPSJwYWdldGFibGUiPjx0cj48dGQ+eyRwcmV2X3BhZ2V9PC90ZD48dGQ+UGFnZSB7JHBhZ2VfbGlua3N9PC90ZD48dGQ+eyRuZXh0X3BhZ2V9PC90ZD48L3RyPjwvdGFibGU+ey9pZn0Ke2Vsc2V9CjxwPk5vIHRlcm1zIGFyZSBpbiB0aGUgZGF0YWJhc2UuPC9wPgp7L2lmfQo8ZGl2IGNsYXNzPSJwYWdlb3B0aW9ucyIgc3R5bGU9ImZsb2F0OiByaWdodDsiPgoJeyRzdWJtaXRfbWFzc2RlbGV0ZX0KPC9kaXY+CjxkaXYgY2xhc3M9InBhZ2VvcHRpb25zIj4KCTxwIGNsYXNzPSJwYWdlb3B0aW9ucyI+eyRhZGRsaW5rfTwvcD4KPC9kaXY+CnskZW5kZm9ybX0=]]></data>
	</file>
</module>
