<?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>CustomGS</name>
	<version>1.5</version>
  <mincmsversion>1.10</mincmsversion>
	<help><![CDATA[PGRpdiBpZD0icGFnZV90YWJzIj4NCiAgICA8ZGl2IGlkPSJnZW5lcmFsIj5HZW5lcmFsPC9kaXY+DQoJPGRpdiBpZD0ic3RhcnQiPkdldHRpbmcgc3RhcnRlZDwvZGl2Pg0KCTxkaXYgaWQ9InBlcm1pc3Npb25zIj5QZXJtaXNzaW9uczwvZGl2Pg0KCTxkaXYgaWQ9ImV4YW1wbGVzIj5FeGFtcGxlczwvZGl2Pg0KCTxkaXYgaWQ9InRyb3VibGVzaG9vdGluZyI+VHJvdWJsZXNob290aW5nPC9kaXY+DQogICAgPGRpdiBpZD0iY29weXJpZ2h0Ij5Db3B5cmlnaHQgYW5kIExpY2Vuc2U8L2Rpdj4NCjwvZGl2Pg0KDQo8ZGl2IGNsYXNzPSJjbGVhcmIiPjwvZGl2Pg0KDQo8ZGl2IGlkPSJwYWdlX2NvbnRlbnQiPg0KCTxkaXYgaWQ9ImdlbmVyYWxfYyI+DQoJCTxwPlRoaXMgbW9kdWxlIGV4dGVuZHMgdGhlIEdsb2JhbCBTZXR0aW5ncyB3aXRoIHNvbWUgY3VzdG9taXplZCBwYXJhbWV0ZXJzLjxiciAvPg0KCQlZb3UgY2FuIGRlZmluZSBhbiB1bmxpbWl0ZWQgbnVtYmVyIG9mIGZpZWxkcyB3aGljaCBjYW4gYmUgdXNlZCBhcyBzbWFydHktdmFyaWFibGUgaW4gdGVtcGxhdGVzIG9yIHBhZ2VzLjwvcD4NCgkJPGJyIC8+DQoJCTxwPkF2YWlsYWJsZSBhcmU6PC9wPg0KCQk8dWw+DQoJCTxsaT5CdXR0b248L2xpPg0KCQk8bGk+Q2hlY2tib3g8L2xpPg0KCQk8bGk+Q29sb3JwaWNrZXI8L2xpPg0KCQk8bGk+RGF0ZXBpY2tlcjwvbGk+DQoJCTxsaT5EYXRlIGFuZCB0aW1lcGlja2VyPC9saT4NCgkJPGxpPkdCRmlsZVBpY2tlciA8aT4obW9kdWxlIEdCRmlsZVBpY2tlciBuZWVkcyB0byBiZSBpbnN0YWxsZWQpPC9pPjwvbGk+DQoJCTxsaT5QdWxsZG93bjwvbGk+DQoJCTxsaT5SYWRpb2J1dHRvbmdyb3VwPC9saT4NCgkJPGxpPlRleHRhcmVhPC9saT4NCgkJPGxpPlRleHRhcmVhIHdpdGggV1lTSVdZRzwvbGk+DQoJCTxsaT5UZXh0ZmllbGQ8L2xpPg0KCQk8bGk+VGltZXBpY2tlcjwvbGk+DQoJCTwvdWw+DQoJCTxiciAvPg0KCQk8cD5BZGRpdGlvbmFsIHRoZXJlIGlzIGEgc3BlY2lhbCBmaWVsZGRlZmluaXRpb24gIkZpZWxkZ3JvdXAgc3RhcnQiLiBXaXRoIHRoaXMgb3B0aW9uIHlvdSBjYW4gY3JlYXRlIGEgY29sbGFwc2libGUgZ3JvdXAgb2YgZmllbGRzLjxiciAvPg0KCQlBZnRlciBjcmVhdGluZyB0aGUgIkZpZWxkZ3JvdXAgc3RhcnQiLCBhbHNvIGEgIkZpZWxkZ3JvdXAgZW5kIiB3aXRoIHRoZSBzYW1lIG5hbWUgd2lsbCBiZSBhZGRlZCBhdXRvbWF0aWNhbGx5LiBEcmFnICZhbXA7IGRyb3AgZmllbGRzIGJldHdlZW4gc3RhcnQgYW5kIGVuZCB0byBwdXQgdGhlbSBpbiB0aGUgZ3JvdXAuPC9wPg0KCQk8YnIgLz4NCgk8L2Rpdj4NCg0KCTxkaXYgaWQ9InN0YXJ0X2MiPg0KCQk8cD5UbyBzdGFydCB5b3UgaGF2ZSB0byBhZGQgPGI+e0N1c3RvbUdTfTwvYj4gaW4gdGhlIHRvcCBvZiB5b3VyIHRlbXBsYXRlKHMpLjwvcD4NCgkJPHA+SW4gdGhlIHRlbXBsYXRlcyBvciBwYWdlcyBvZiB5b3VyIHdlYnNpdGUgeW91IHdpbGwgbm93IGhhdmUgYWxsIHNtYXJ0eSB2YXJpYWJsZXMgYXZhaWxhYmxlIHRoYXQgYXJlIGRlZmluZWQgaW4gdGhlIEN1c3RvbSBHbG9iYWwgU2V0dGluZ3MgbW9kdWxlIEZpZWxkZGVmaW5pdGlvbnMgdGFiLjwvcD4NCgkJPHA+VGhlIGV4YWN0IHdheSB0byBjYWxsIGVhY2ggdmFyaWFibGUgaXMgc2hvd24gaW4gdGhlIGZpZWxkZGVmaW5pdGlvbnMgdGFibGUuPGJyIC8+WW91IGNhbiBhbHNvIGNoZWNrIHdoaWNoIHZhcmlhYmxlcyBhbmQgdmFsdWVzIGFyZSBhdmFpbGFibGUgYnkgcGxhY2luZyA8Yj57Q3VzdG9tR1Mgc2hvd3ZhcnM9MX08L2I+IGluIHRoZSBjb250ZW50IGZpZWxkIG9mIGEgcGFnZS48L3A+DQoJCTxiciAvPg0KCQk8cD48Yj5XYXJuaW5nOjwvYj4gYmV0dGVyIG5vdCBwbGFjZSB0aGUge0N1c3RvbUdTfSB0YWcgaW4gdGhlICZsdDtoZWFkJmd0OyZsdDsvaGVhZCZndDsgc2VjdGlvbiBvZiB5b3VyIHRlbXBsYXRlLCBiZWNhdXNlIHRoYXQncyB0aGUgbGFzdCBzZWN0aW9uIHRoYXQgd2lsbCBiZSBwYXJzZWQgYnkgdGhlIFNtYXJ0eSB0ZW1wbGF0aW5nIHN5c3RlbS48L3A+DQoJCTxiciAvPg0KCTwvZGl2Pg0KDQoJPGRpdiBpZD0icGVybWlzc2lvbnNfYyI+DQoJCTxwPlRoaXMgbW9kdWxlIHByb3ZpZGVzIHR3byBkaWZmZXJlbnQgbGV2ZWxzIG9mIHBlcm1pc3Npb25zOiBvbiBhIG1vZHVsZSBsZXZlbCBhbmQgb24gYSBmaWVsZCBsZXZlbC48cD4NCgkJPHA+Rm9yIHVzZXJzIHRvIGJlIGFibGUgdG8gc2VlIGFuZCB1c2UgdGhpcyBtb2R1bGUsIGdvIHRvIG1lbnUgPGk+VXNlcnMgJiBHcm91cHMgwrsgR3JvdXAgUGVybWlzc2lvbnM8L2k+IGFuZCBzZXQgdGhlIHBlcm1pc3Npb25zOjxwPg0KCQk8dWw+DQoJCTxsaT48Yj5DdXN0b20gR2xvYmFsIFNldHRpbmdzIC0gVXNlPC9iPjxiciAvPg0KCQlBIHBlcm1pc3Npb24gZm9yIGVkaXRvcnMuIEl0IHdpbGwgb25seSBzaG93IHRoZSBHZW5lcmFsIHRhYiBpbiB0aGUgYWRtaW4gcGFnZS48L2xpPg0KCQk8bGk+PGI+Q3VzdG9tIEdsb2JhbCBTZXR0aW5ncyAtIE1hbmFnZTwvYj48YnIgLz4NCgkJQSBwZXJtaXNzaW9uIGZvciBhZG1pbmlzdHJhdG9ycy4gSXQgd2lsbCBzaG93IGFsbCBtb2R1bGUgdGFicy48L2xpPg0KCQk8L3VsPg0KCQk8YnIgLz4NCgkJPHA+VGhlbiwgd2hpbGUgY3JlYXRpbmcgYSBuZXcgZmllbGQsIHNlbGVjdCBvbmUgb3IgbW9yZSBncm91cHMgaW4gdGhlIDxiPkdyb3VwIFBlcm1pc3Npb25zPC9iPiBkcm9wZG93biBsaXN0ICh3aXRoIGN0cmwpLiBPbmx5IHVzZXJzIHdobyBiZWxvbmcgdG8gdGhlIHNlbGVjdGVkIGdyb3VwcyB3aWxsIGJlIGFibGUgdG8gc2VlIGFuZCBjaGFuZ2UgdGhlIHNldHRpbmcgaW4gdGhlIEdlbmVyYWwgdGFiLiBJZiBubyBncm91cCBpcyBzZWxlY3RlZCwgdGhlIHNldHRpbmcgd2lsbCBiZSB2aXNpYmxlIGZvciBhbGwgZ3JvdXBzLiBTZXR0aW5ncyB3aWxsIG5ldmVyIGJlIGhpZGRlbiBmb3IgYWRtaW4gdXNlcnMuPHA+DQoJCTxiciAvPg0KCTwvZGl2Pg0KDQoJPGRpdiBpZD0iZXhhbXBsZXNfYyI+DQoJCTxoMz5DSEVDS0JPWDwvaDM+DQoJCTxoND5DaGFuZ2UgZnJvbnRlbmQgdGhlbWU8L2g0Pg0KCQk8cD5EZWZpbmUgYSBjaGVja2JveCAnQ2hyaXN0bWFzIG5vdycgd2hpY2ggd2lsbCBhY3RpdmF0ZSBhIHNwZWNpYWwgdGhlbWUgb24gdGhlIGZyb250ZW5kIHdoZW4gY2hlY2tlZDwvcD4NCgkJPHAgc3R5bGU9ImJvcmRlcjoxcHggc29saWQgI2RkZDsgcGFkZGluZzoxMHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiNmM2YzZjMiPg0KCQk8Y29kZT4NCgkJe2lmICRDdXN0b21HUy5DaHJpc3RtYXNfbm93ID09ICcxJ308YnIgLz4NCgkJJm5ic3A7Jm5ic3A7Jm5ic3A7eyogU2hvdyBDaHJpc3RtYXMgZnJvbnRlbmQgdGhlbWUgKn08YnIgLz4NCgkJe2Vsc2V9PGJyIC8+DQoJCSZuYnNwOyZuYnNwOyZuYnNwO3sqIFNob3cgZGVmYXVsdCBmcm9udGVuZCB0aGVtZSAqfTxiciAvPg0KCQl7L2lmfQ0KCQk8L2NvZGU+DQoJCTwvcD4NCgkJPGJyIC8+DQoJCQ0KCQk8aDQ+TWFnaWMgd2l0aCBhIGNoZWNrYm94PC9oND4NCgkJPHA+RGVmaW5lIGEgY2hlY2tib3ggJ015Q2hlY2tib3gnIHdoaWNoIHdpbGwgZG8gc29tZSBtYWdpYyBzdHVmZiB3aGVuIHVuY2hlY2tlZDwvcD4NCgkJPHAgc3R5bGU9ImJvcmRlcjoxcHggc29saWQgI2RkZDsgcGFkZGluZzoxMHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiNmM2YzZjMiPg0KCQk8Y29kZT4NCgkJe2lmICRDdXN0b21HUy5NeUNoZWNrYm94ICE9ICcxJ308YnIgLz4NCgkJJm5ic3A7Jm5ic3A7Jm5ic3A7eyogRG8gc29tZSBtYWdpYyBzdHVmZiAqfTxiciAvPg0KCQl7L2lmfQ0KCQk8L2NvZGU+DQoJCTwvcD4NCgkJPGJyIC8+DQoJCQ0KCQk8aDM+REFURSBhbmQgVElNRVBJQ0tFUjwvaDM+DQoJCTxoND5EaXNwbGF5IHBhZ2UgY29udGVudCBvbmx5IGluIGEgc3BlY2lmaWMgdGltZWZyYW1lPC9oND4NCgkJPHA+RGVmaW5lIHR3byB0aW1lcGlja2VyIGZpZWxkcyAnc3RhcnR0aW1lJyBhbmQgJ2VuZHRpbWUnLiBSZXBsYWNlIHRoZSB7Y29udGVudH0gdGFnIGluIHlvdXIgcGFnZSB0ZW1wbGF0ZSB3aXRoIHRoaXMgY29kZSBhbmQgdGhlIG5vcm1hbCBwYWdlIGNvbnRlbnQgaXMgb25seSB2aXNpYmxlIHdoZW4gdGhlIGN1cnJlbnQgdGltZSBpcyBiZXR3ZWVuIHRoZSBzdGFydHRpbWUgYW5kIGVuZHRpbWUuPC9wPg0KCQk8cCBzdHlsZT0iYm9yZGVyOjFweCBzb2xpZCAjZGRkOyBwYWRkaW5nOjEwcHg7IGJhY2tncm91bmQtY29sb3I6I2YzZjNmMyI+DQoJCTxjb2RlPg0KCQl7aWYgJHNtYXJ0eS5ub3d8ZGF0ZV9mb3JtYXQ6JyVIOiVNJyA+PSAkQ3VzdG9tR1Muc3RhcnR0aW1lICYmICRzbWFydHkubm93fGRhdGVfZm9ybWF0OiclSDolTScgPD0gJEN1c3RvbUdTLmVuZHRpbWV9PGJyIC8+DQoJCSZuYnNwOyZuYnNwOyZuYnNwO3tjb250ZW50fTxiciAvPg0KCQl7ZWxzZX08YnIgLz4NCgkJJm5ic3A7Jm5ic3A7Jm5ic3A7e2NvbnRlbnQgYmxvY2s9IlNpdGVDbG9zZWRDb250ZW50In08YnIgLz4NCgkJey9pZn08YnIgLz4NCgkJPC9jb2RlPg0KCQk8L3A+DQoJCTxiciAvPg0KCQkNCgkJPGgzPlBVTExET1dOPC9oMz4NCgkJPGg0PlB1bGxkb3duIGZvciBGZWF0dXJlZCBOZXdzYXJ0aWNsZTwvaDQ+DQoJCTxwPkRlZmluZSBhIHB1bGxkb3duIGZpZWxkIHRoYXQgY29udGFpbnMgdGhlIHRpdGxlcyBvZiBhcnRpY2xlcyBmcm9tIHRoZSBOZXdzIG1vZHVsZSwgc28gdGhlIHVzZXIgY2FuIGNob29zZSBhIGZlYXR1cmVkIGFydGljbGUgd2hpY2ggY2FuIGJlIGRpc3BsYXllZCBvbiBhIHNwZWNpYWwgc2VjdGlvbiBvbiB0aGUgc2l0ZS48L3A+DQoNCgkJPHA+Rmlyc3QgY3JlYXRlIGEgbmV3IHN1bW1hcnl0ZW1wbGF0ZSBpbiB0aGUgTmV3cyBtb2R1bGUsIG5hbWVkICJDdXN0b21HU19wdWxsZG93biIgd2l0aCB0aGUgZm9sbG93aW5nIGNvbnRlbnQ6PC9wPg0KDQoJCTxwIHN0eWxlPSJib3JkZXI6MXB4IHNvbGlkICNkZGQ7IHBhZGRpbmc6MTBweDsgYmFja2dyb3VuZC1jb2xvcjojZjNmM2YzIj4NCgkJPGNvZGU+e2ZvcmVhY2ggZnJvbT0kaXRlbXMgaXRlbT1lbnRyeX0NCgkJeyRlbnRyeS0mZ3Q7aWR9fHskZW50cnktJmd0O3RpdGxlfTxiciAvPg0KCQl7L2ZvcmVhY2h9PC9jb2RlPg0KCQk8L3A+DQoJCTxiciAvPg0KCQk8cD5UaGVuIGRlZmluZSBhIG5ldyBmaWVsZCBpbiB0aGUgQ3VzdG9tIEdsb2JhbCBTZXR0aW5ncyBtb2R1bGU8L3A+DQoNCgkJPHA+PGI+TmFtZTo8L2I+IEZlYXR1cmVkIE5ld3M8YnIgLz4NCgkJPGI+VHlwZTo8L2I+IFB1bGxkb3duPGJyIC8+DQoJCTxiPlByb3BlcnRpZXM6PC9iPjwvcD4NCgkJPHAgc3R5bGU9ImJvcmRlcjoxcHggc29saWQgI2RkZDsgcGFkZGluZzoxMHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiNmM2YzZjMiPg0KCQk8Y29kZT57bmV3cyBhY3Rpb249J2RldGFpbCcgYXJ0aWNsZWlkPSRDdXN0b21HUy5GZWF0dXJlZF9OZXdzfTwvY29kZT4NCgkJPC9wPg0KCQk8YnIgLz4NCgkJDQoJCTxoMz5SQURJT0JVVFRPTkdST1VQPC9oMz4NCgkJPGg0PkNoYW5nZSBmcm9udGVuZCBjb2xvcjwvaDQ+DQoNCgkJPHA+Q3JlYXRlIGEgUmFkaW9idXR0b24gZ3JvdXAgbmFtZWQgInRleHRjb2xvciI8L3A+DQoJCTxwPlRoZSBwcm9wZXJ0aWVzIHZhbHVlIGFyZTo8cD4NCgkJPHAgc3R5bGU9ImJvcmRlcjoxcHggc29saWQgI2RkZDsgcGFkZGluZzoxMHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiNmM2YzZjMiPg0KCQkjZmYwMDAwfHJlZDxiciAvPg0KCQkjMDBmfGJsdWU8YnIgLz4NCgkJIzEwMTAxMHxhbG1vc3QgYmxhY2s8L3A+DQoJCTxiciAvPg0KCQk8cD5BbHNvIGNsaWNrIHRoZSBjaGVja2JveCAnQ2xlYXIgc3R5bGVzaGVldGNhY2hlJy4gVGhpcyB3aWxsIGF1dG9tYXRpY2FsbHkgcmVuZXcgdGhlIHN0eWxlc2hlZXRzLjwvcD4NCgkJPGJyIC8+DQoJCTxwPkFkZCB0byB0aGUgdG9wIG9mIHlvdXIgc3R5bGVzaGVldDo8L3A+DQoJCTxwIHN0eWxlPSJib3JkZXI6MXB4IHNvbGlkICNkZGQ7IHBhZGRpbmc6MTBweDsgYmFja2dyb3VuZC1jb2xvcjojZjNmM2YzIj4NCgkJPGNvZGU+W1tDdXN0b21HU11dPC9jb2RlPg0KCQk8L3A+DQoJCTxiciAvPg0KCQk8cD5UbyBjaGFuZ2UgZm9yIGV4YW1wbGUgdGhlIGNvbG9yIG9mIHRoZSBwLXRleHQgYWRkOjwvcD4NCgkJPHAgc3R5bGU9ImJvcmRlcjoxcHggc29saWQgI2RkZDsgcGFkZGluZzoxMHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiNmM2YzZjMiPg0KCQk8Y29kZT5jb2xvcjogW1skQ3VzdG9tR1MudGV4dGNvbG9yXV07PC9jb2RlPg0KCQk8L3A+DQoJCTxiciAvPg0KCQk8cD5PciBkaXJlY3RseSBpbmNsdWRlZCBpbiBhIHBhZ2Ugb3IgdGVtcGxhdGU6PHA+DQoJCTxwIHN0eWxlPSJib3JkZXI6MXB4IHNvbGlkICNkZGQ7IHBhZGRpbmc6MTBweDsgYmFja2dyb3VuZC1jb2xvcjojZjNmM2YzIj4NCgkJPGNvZGU+Jmx0O3Agc3R5bGU9ImNvbG9yOiB7JEN1c3RvbUdTLnRleHRjb2xvcn07IiZndDtMb3JlbSBJcHN1bSZsdDsvcCZndDs8L2NvZGU+DQoJCTwvcD4NCgkJPGJyIC8+DQoNCgkJPGgzPlRFWFRGSUVMRDwvaDM+DQoJCTxoND5TaG93IGN1cnJlbnQgdHJhaW5lcjwvaDQ+DQoJCTxwPkRlZmluZSBhIHRleHRmaWVsZCBvciBwdWxsZG93biBmaWVsZCAnVHJhaW5lcicgd2hpY2ggd2lsbCBjb250YWluIHRoZSBjdXJyZW50IHRyYWluZXJzIG5hbWUuPC9wPg0KCQk8cCBzdHlsZT0iYm9yZGVyOjFweCBzb2xpZCAjZGRkOyBwYWRkaW5nOjEwcHg7IGJhY2tncm91bmQtY29sb3I6I2YzZjNmMyI+DQoJCTxjb2RlPg0KCQkmbHQ7cCZndDtUaGlzIHdlZWtzIHRyYWluZXJzIG5hbWUgaXM6IHskQ3VzdG9tR1MuVHJhaW5lcn0mbHQ7L3AmZ3Q7DQoJCTwvY29kZT4NCgkJPC9wPg0KCQk8YnIgLz4NCgk8L2Rpdj4NCg0KCTxkaXYgaWQ9InRyb3VibGVzaG9vdGluZ19jIj4NCgkJPGg0PkNoZWNrIHRlbXBsYXRlIHZhcmlhYmxlczwvaDQ+DQoJCTxwPllvdSBjYW4gY2hlY2sgd2hpY2ggdmFyaWFibGVzIGFuZCB2YWx1ZXMgYXJlIGF2YWlsYWJsZSBieSBwbGFjaW5nIDxiPntDdXN0b21HUyBzaG93dmFycz0xfTwvYj4gaW4gdGhlIGNvbnRlbnQgZmllbGQgb2YgYSBwYWdlLjwvcD4NCgkJPGJyIC8+DQoJCQ0KCQk8aDQ+U21hcnR5IGVycm9yPC9oND4NCgkJPHA+PGI+RXJyb3I6PC9iPiBTbWFydHkgZXJyb3I6IFtpbiB0ZW1wb3JhcnkgdGVtcGxhdGUgbGluZSA0XTogW3BsdWdpbl0gdW5rbm93biB0YWcuLi48L3A+DQoJCTxwPjxiPlNvbHV0aW9uOjwvYj4gWW91IHByb2JhYmx5IGhhdmUgZW50ZXJlZCBjdXJseSBicmFja2V0ICYjMTIzOyAmIzEyNTsgc2lnbnMgaW4gdGhlIHByb3BlcnRpZXMgZmllbGQgb2YgYSBwdWxsZG93biBvciByYWRpb2J1dHRvbiBmaWVsZGRlZmluaXRpb24uIFRoZXNlIGFyZSBpbnRlcnByZXRlZCBieSBTbWFydHkuIERlbGV0ZSB0aGVtLCBvciB1c2UgIHRhZ3MuPC9wPg0KCQk8YnIgLz4NCgkJDQoJCTxoND5PdGhlciBFcnJvcnM8L2g0Pg0KCQk8cD48Yj5FcnJvcjo8L2I+IE15IHByb2JsZW0gd2FzIG5vdCBkZXNjcmliZWQgaGVyZS48L3A+DQoJCTxwPjxiPlNvbHV0aW9uOjwvYj4gU2V0IERlYnVnIHRvICd0cnVlJyBpbiBjb25maWcucGhwIGFuZCBzZWUgaWYgYW55IGVycm9yIG1lc3NhZ2VzIGFwcGVhci4gTG9vayBhbHNvIGZvciBlcnJvciBtZXNzYWdlcyBpbiB0aGUgaHRtbCBzb3VyY2Vjb2RlLiBNYXliZSB0aGUgZXJyb3IgbWVzc2FnZSB0ZWxscyB5b3UgZW5vdWdoIHRvIHNvbHZlIHRoZSBpc3N1ZSB5b3Vyc2VsZi4gU29tZW9uZSBlbHNlIG1heSBoYXZlIGVuY291bnRlcmVkIHRoZSBzYW1lIHByb2JsZW0gYmVmb3JlIHlvdSwgc28geW91IGNvdWxkIGFsc28gc2VhcmNoIHRoZSBDTVNNUyBmb3J1bSBmb3IgcG9zc2libGUgc29sdXRpb25zLiBJZiB5b3UgaGF2ZW4ndCBmb3VuZCBhbnkgcmVsYXRlZCB0b3BpY3MsIHBsZWFzZSBmZWVsIGZyZWUgdG8gb3BlbiBhIG5ldyBmb3J1bXRvcGljLjwvcD4NCgkJPGJyIC8+DQoJPC9kaXY+DQoNCgk8ZGl2IGlkPSJjb3B5cmlnaHRfYyI+DQoJCTxwPkNvcHlyaWdodCDCqSAyMDEyLCBSb2xmIFRqYXNzZW5zICZsdDtyb2xmIGF0IGNtc21hZGVzaW1wbGUgZG90IG9yZyZndDssIEpvcyAmbHQ7PGEgaHJlZj0ibWFpbHRvOmpvc3ZkQGxpdmUubmwiPmpvc3ZkQGxpdmUubmw8L2E+Jmd0Oy4gQWxsIFJpZ2h0cyBBcmUgUmVzZXJ2ZWQuPC9wPg0KCQk8YnIgLz4NCgkJPHA+VGhpcyBtb2R1bGUgaGFzIGJlZW4gcmVsZWFzZWQgdW5kZXIgdGhlIDxhIGhyZWY9Imh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTCIgdGFyZ2V0PSJfYmxhbmsiPkdOVSBQdWJsaWMgTGljZW5zZSB2MzwvYT4uPGJyIC8+DQoJCTxiPkhvd2V2ZXI8L2I+LCBhcyBhIHNwZWNpYWwgZXhjZXB0aW9uIHRvIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgZGlzdHJpYnV0ZWQgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gWW91IG1heSBvbmx5IHVzZSB0aGlzIHNvZnR3YXJlIHdoZW4gdGhlcmUgaXMgYSBjbGVhciBhbmQgb2J2aW91cyBpbmRpY2F0aW9uIGluIHRoZSBhZG1pbiBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgU2ltcGxlITwvcD4NCgkJPGJyIC8+DQoJPC9kaXY+DQo8L2Rpdj48aDM+UGFyYW1ldGVyczwvaDM+PHVsPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGxhbmc9ImVuX1VTIiAtIFBhcmFtZXRlciBpcyB1c2VkIHRvIHNwZWNpZnkgd2hhdCBsYW5ndWFnZSB0byB1c2UgZm9yIGRpc3BsYXkgb24gdGhlIGZyb250ZW5kLiBOb3QgYWxsIG1vZHVsZXMgc3VwcG9ydCBvciBuZWVkIHRoaXMuPC9saT48bGk+PGVtPihvcHRpb25hbCk8L2VtPiBzaG93dmFycz0iMSIgLSBTZXQgdGhpcyBwYXJhbWV0ZXIgdG8gc2hvdyBhbGwgYXZhaWxhYmxlIHZhcmlhYmxlcyBhbmQgdGhlaXIgdmFsdWVzLiBGb3IgdGVzdGluZyBwdXJwb3NlcyBvbmx5LjwvbGk+PC91bD4=]]></help>
	<about><![CDATA[PGJyIC8+QXV0aG9yOiBSb2xmIFRqYXNzZW5zICZsdDtyb2xmIGF0IGNtc21hZGVzaW1wbGUgZG90IG9yZyZndDs8YnIgLz48YnIgLz5WZXJzaW9uOiAxLjU8YnIgLz48YnIgLz5DaGFuZ2UgSGlzdG9yeTo8YnIgLz48dWw+DQo8bGk+PHN0cm9uZz5WZXJzaW9uIDEuNTwvc3Ryb25nPiAtIDUgZGVjZW1iZXIgMjAxMw0KCTx1bD4NCgk8bGk+UG9zc2liaWxpdHkgdG8gYWRkIGFkbWluIHBhZ2UgdW5kZXIgU2l0ZSBBZG1pbiBzZWN0aW9uLiBFZGl0b3JzIGRvbid0IGhhdmUgYWNjZXNzITwvbGk+DQoJPGxpPkFkZGVkIGZpZWxkdHlwZSAnQ29sb3JQaWNrZXInICh0aGFua3MgdG8gSmlzc2V5KTwvbGk+DQoJPGxpPkFkZGVkIEZyZW5jaCB0cmFuc2xhdGlvbiAodGhhbmtzIHRvIEppc3NleSk8L2xpPg0KCTxsaT5BZGRlZCBjb2xsYXBzaWJsZSBmaWVsZGdyb3VwcyAoRlIgIzgxNjYsICM4NTE3IGFuZCAjOTQ2NSk8L2xpPg0KCTxsaT5BZGRlZCB0aGUgYWJpbGl0eSB0byBhc3NpZ24gZWFjaCBmaWVsZCB0byAnYWRtaW4nIG9yICdlZGl0b3InIChGUiAjODUxNSk8L2xpPg0KCTwvdWw+DQo8L2xpPg0KPGxpPjxzdHJvbmc+VmVyc2lvbiAxLjQ8L3N0cm9uZz4gLSA5IE1heSAyMDEzDQoJPHVsPg0KCTxsaT5EcmFnIGFuZCBkcm9wIGZpZWxkIG9yZGVyaW5nIChGUiAjODUxNik8L2xpPg0KCTxsaT5BZGRlZCBmaWVsZHR5cGUgJ0dCRmlsZVBpY2tlcicgKEZSICM4Mjg2IGFuZCAjODYzNCk8L2xpPg0KCTxsaT5JbmNsdWRlZCBXaWtpIGhlbHB0ZXh0IGFuZCBleGFtcGxlcyBpbiB0aGUgbW9kdWxlIGhlbHB0ZXh0PC9saT4NCgk8bGk+QnVnICM4NjMzOiBmaXhlZCAtIERvZXMgbm90IGVzY2FwZSBoZWxwIHRleHQ8L2xpPg0KCTxsaT5CdWcgIzkwMTk6IGZpeGVkIC0gU3VibWl0IG5vdCB3b3JraW5nIGZvciB0aG9zZSB3aXRob3V0ICdNYW5hZ2UnIHBlcm1pc3Npb25zPC9saT4NCgk8L3VsPg0KPC9saT4NCjxsaT48c3Ryb25nPlZlcnNpb24gMS4zPC9zdHJvbmc+IC0gMTQgQXVndXN0IDIwMTINCgk8dWw+DQoJPGxpPlJlbW92ZWQgQ2xlYXIgQ2FjaGUgZHVlIHRvIEZvcmdlIHJlZ3VsYXRpb25zPC9saT4NCgk8bGk+QnVnICM4MDA5OiBmaXhlZCAtIElzc3VlIHdpdGggdGV4dCBhcmVhcyB3aXRoIHNtYXJ0eSBwYXJzaW5nIG9uPC9saT4NCgk8L3VsPg0KPC9saT4NCjxsaT48c3Ryb25nPlZlcnNpb24gMS4yPC9zdHJvbmc+IC0gMjAgTWFyY2ggMjAxMg0KCTx1bD4NCgk8bGk+TWluaW11bSByZXF1aXJlZCBDTVNtcyB2ZXJzaW9uIHNldCB0byAxLjEwPC9saT4NCgk8bGk+QWRkIEdldEFkbWluU2VjdGlvbiBzZXR0aW5nIChGUiAjNzYxOCk8L2xpPg0KCTxsaT5BZGRlZCBvcHRpb24gdG8gYXV0b21hdGljYWxseSBjbGVhciBjYWNoZSBhZnRlciBjaGFuZ2luZyBhIHNldHRpbmc8L2xpPg0KCTxsaT5BZGRlZCBmaWVsZHR5cGUgJ0J1dHRvbic8L2xpPg0KCTxsaT5TdXBwb3J0IFZhbHVlfE9wdGlvbk5hbWUgcGFpcnMgYW5kIFNtYXJ0eSB0YWdzIGZvciBwdWxsZG93biBmaWVsZHMgYW5kIHJhZGlvYnV0dG9uczwvbGk+DQoJPGxpPkJ1ZyBmaXhlZDogRWRpdGluZyBhIGZpZWxkIGNoYW5nZXMgdGhlIGZpZWxkbmFtZTwvbGk+DQoJPGxpPkJ1ZyBmaXhlZDogU2VuZEV2ZW50IG9uIGNoYW5naW5nIGEgY2hlY2tib3ggc2V0dGluZzwvbGk+DQoJPC91bD4NCjwvbGk+DQo8bGk+PHN0cm9uZz5WZXJzaW9uIDEuMTwvc3Ryb25nPiAtIDE5IEZlYnJ1YXJ5IDIwMTINCgk8dWw+DQoJPGxpPkRlZmluZSB1bmxpbWl0ZWQgbnVtYmVyIG9mIGZpZWxkczwvbGk+DQoJPGxpPkFkZGVkIGZpZWxkdHlwZXMgdGV4dGFyZWEsIHd5c2l3eWcsIGRhdGV0aW1lcGlja2VyLCBwdWxsZG93biBzZWxlY3QsIHJhZGlvYnV0dG9uczwvbGk+DQoJPGxpPkFkZGVkIGV2ZW50IE9uU2V0dGluZ0NoYW5nZTwvbGk+DQoJPC91bD4NCjwvbGk+DQo8bGk+PHN0cm9uZz5WZXJzaW9uIDEuMDwvc3Ryb25nPiAtIDIxIEphbnVhcnkgMjAxMg0KCTx1bD4NCgk8bGk+SW5pdGlhbCBtb2R1bGUgcmVsZWFzZTwvbGk+DQoJPC91bD4NCjwvbGk+DQo8L3VsPjxiciAvPg==]]></about>
	<description><![CDATA[A module to extend the Global Settings with some customized parameters. You can define an unlimited number of fields which can be used as smarty-variable in templates or pages.]]></description>
	<file>
	  <filename>/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/action.default.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIE1vZHVsZTogQ3VzdG9tIEdsb2JhbCBTZXR0aW5ncw0KIyBBdXRob3I6IFJvbGYgVGphc3NlbnMsIEpvcw0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDExIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykNCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcNCiMgVGhlIG1vZHVsZSdzIGhvbWVwYWdlIGlzOiBodHRwOi8vZGV2LmNtc21hZGVzaW1wbGUub3JnL3Byb2plY3RzL2N1c3RvbWdzDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQ0KIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQ0KIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcg0KIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLg0KIw0KIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwNCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YNCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQ0KIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLg0KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQ0KIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQ0KIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQ0KIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQppZiAoIWlzc2V0KCRnQ21zKSkgZXhpdDsNCg0KDQokZmllbGRzID0gJHRoaXMtPkdldFNldHRpbmdzKCk7DQoNCi8vIFBhc3MgdGhlIGZpZWxkcyB0byB0aGUgdGVtcGxhdGVzDQppZiAoIGlzc2V0KCRwYXJhbXNbJ3Nob3d2YXJzJ10pICkNCnsNCglmb3JlYWNoICggJGZpZWxkcyBhcyAka2V5PT4kdmFsdWUgKQ0KCXsNCgkJaWYgKCAhaXNfbnVtZXJpYygka2V5KSApIGVjaG8gJ3skQ3VzdG9tR1MuJyAuICRrZXkgLiAnfSA9ICcgLiAkdmFsdWUgLiAnPGJyIC8+JzsNCgl9DQp9DQoNCiRzbWFydHktPmFzc2lnbignQ3VzdG9tR1MnLCAkZmllbGRzKTsNCg0KPz4=]]></data>
	</file>
	<file>
	  <filename>/action.defaultadmin.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIE1vZHVsZTogQ3VzdG9tIEdsb2JhbCBTZXR0aW5ncw0KIyBBdXRob3I6IFJvbGYgVGphc3NlbnMsIEpvcw0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDExIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykNCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcNCiMgVGhlIG1vZHVsZSdzIGhvbWVwYWdlIGlzOiBodHRwOi8vZGV2LmNtc21hZGVzaW1wbGUub3JnL3Byb2plY3RzL2N1c3RvbWdzDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQ0KIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQ0KIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcg0KIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLg0KIw0KIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwNCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YNCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQ0KIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLg0KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQ0KIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQ0KIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQ0KIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQppZiAoIWlzc2V0KCRnQ21zKSkgZXhpdDsNCg0KLyoqDQogKiBDcmVhdGUgQWRtaW4gdGFicw0KICovIA0KZWNobyAkdGhpcy0+U3RhcnRUYWJIZWFkZXJzKCk7DQokYWN0aXZlX3RhYiA9IGVtcHR5KCRwYXJhbXNbJ2FjdGl2ZV90YWInXSkgPyAnJyA6ICRwYXJhbXNbJ2FjdGl2ZV90YWInXTsNCg0KaWYgKCAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdDdXN0b20gR2xvYmFsIFNldHRpbmdzIC0gTWFuYWdlJyB8fCAnQ3VzdG9tIEdsb2JhbCBTZXR0aW5ncyAtIFVzZScpICkNCnsNCgllY2hvICR0aGlzLT5TZXRUYWJIZWFkZXIoImdlbmVyYWwiLCR0aGlzLT5MYW5nKCJ0aXRsZV9nZW5lcmFsIikpOw0KfQ0KDQppZiAoICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ0N1c3RvbSBHbG9iYWwgU2V0dGluZ3MgLSBNYW5hZ2UnKSApDQp7DQoJZWNobyAkdGhpcy0+U2V0VGFiSGVhZGVyKCJmaWVsZGRlZnMiLCR0aGlzLT5MYW5nKCJ0aXRsZV9maWVsZGRlZnMiKSwgKCRhY3RpdmVfdGFiID09ICdmaWVsZGRlZnMnKT90cnVlOmZhbHNlKTsNCgllY2hvICR0aGlzLT5TZXRUYWJIZWFkZXIoIm9wdGlvbnMiLGxhbmcoIm9wdGlvbnMiKSwgKCRhY3RpdmVfdGFiID09ICdvcHRpb25zJyk/dHJ1ZTpmYWxzZSk7DQp9DQoNCmVjaG8gJHRoaXMtPkVuZFRhYkhlYWRlcnMoKTsNCg0KDQplY2hvICR0aGlzLT5TdGFydFRhYkNvbnRlbnQoKTsNCg0KaWYgKCAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdDdXN0b20gR2xvYmFsIFNldHRpbmdzIC0gTWFuYWdlJyB8fCAnQ3VzdG9tIEdsb2JhbCBTZXR0aW5ncyAtIFVzZScpICkNCnsNCgllY2hvICR0aGlzLT5TdGFydFRhYigiZ2VuZXJhbCIpOw0KCQlpbmNsdWRlKGRpcm5hbWUoX19GSUxFX18pLicvZnVuY3Rpb24uYWRtaW5fZ2VuZXJhbC5waHAnKTsNCgllY2hvICR0aGlzLT5FbmRUYWIoKTsNCn0NCg0KaWYgKCAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdDdXN0b20gR2xvYmFsIFNldHRpbmdzIC0gTWFuYWdlJykgKQ0Kew0KCWVjaG8gJHRoaXMtPlN0YXJ0VGFiKCJmaWVsZGRlZnMiKTsNCgkJaW5jbHVkZShkaXJuYW1lKF9fRklMRV9fKS4nL2Z1bmN0aW9uLmFkbWluX2ZpZWxkZGVmcy5waHAnKTsNCgllY2hvICR0aGlzLT5FbmRUYWIoKTsNCg0KCWVjaG8gJHRoaXMtPlN0YXJ0VGFiKCJvcHRpb25zIik7DQoJCWluY2x1ZGUoZGlybmFtZShfX0ZJTEVfXykuJy9mdW5jdGlvbi5hZG1pbl9vcHRpb25zLnBocCcpOw0KCWVjaG8gJHRoaXMtPkVuZFRhYigpOw0KfQ0KDQplY2hvICR0aGlzLT5FbmRUYWJDb250ZW50KCk7DQo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.editfielddef.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIE1vZHVsZTogQ3VzdG9tIEdsb2JhbCBTZXR0aW5ncw0KIyBBdXRob3I6IFJvbGYgVGphc3NlbnMsIEpvcw0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDExIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykNCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcNCiMgVGhlIG1vZHVsZSdzIGhvbWVwYWdlIGlzOiBodHRwOi8vZGV2LmNtc21hZGVzaW1wbGUub3JnL3Byb2plY3RzL2N1c3RvbWdzDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQ0KIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQ0KIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcg0KIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLg0KIw0KIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwNCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YNCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQ0KIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLg0KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQ0KIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQ0KIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQ0KIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQppZiAoIWlzc2V0KCRnQ21zKSkgZXhpdDsNCg0KaWYoICEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdDdXN0b20gR2xvYmFsIFNldHRpbmdzIC0gTWFuYWdlJykgKQ0Kew0KCWVjaG8gJHRoaXMtPlNob3dFcnJvcnMobGFuZygnbmVlZHBlcm1pc3Npb250bycsICdDdXN0b20gR2xvYmFsIFNldHRpbmdzIC0gTWFuYWdlJykpOw0KCXJldHVybjsNCn0NCg0KaWYgKCBpc3NldCgkcGFyYW1zWydjYW5jZWwnXSkgKQ0Kew0KCSRwYXJhbXMgPSBhcnJheSgnYWN0aXZlX3RhYicgPT4gJ2ZpZWxkZGVmcycpOw0KCSR0aGlzLT5SZWRpcmVjdCgkaWQsICdkZWZhdWx0YWRtaW4nLCAnJywgJHBhcmFtcyk7DQp9DQoNCmlmKCAhaXNzZXQoJHBhcmFtc1snbW9kZSddKSApDQp7DQoJJHBhcmFtcyA9IGFycmF5KCdtb2R1bGVfZXJyb3InID0+IGxhbmcoJ21pc3NpbmdwYXJhbXMnKSwgJ2FjdGl2ZV90YWInID0+ICdmaWVsZGRlZnMnKTsNCgkkdGhpcy0+UmVkaXJlY3QoJGlkLCdkZWZhdWx0YWRtaW4nLCcnLCRwYXJhbXMpOw0KCXJldHVybjsNCn0NCg0KJGRiID0gJHRoaXMtPkdldERCKCk7DQoNCnN3aXRjaCAoJHBhcmFtc1snbW9kZSddKQ0Kew0KCWNhc2UgJ2FkZCc6DQoJCWlmKCAkX1NFUlZFUlsnUkVRVUVTVF9NRVRIT0QnXSA9PSAnUE9TVCcgKQ0KCQl7DQoJCQkvLyBjaGVjayBpZiBuYW1lIGlzIGVtcHR5DQoJCQlpZiAoIGVtcHR5KCRwYXJhbXNbJ25hbWUnXSkgKSAkcGFyYW1zWyduYW1lJ10gPSAkcGFyYW1zWyd0eXBlJ10gLiAiMSI7DQoJCQkvLyBjaGVjayBpZiBuYW1lIGFscmVhZHkgZXhpc3RzDQoJCQlXaGlsZSAoICR0aGlzLT5HZXRGaWVsZCgkcGFyYW1zWyduYW1lJ10pICE9PSBGQUxTRSApDQoJCQl7DQoJCQkJaWYgKCBpc19udW1lcmljKHN1YnN0cigkcGFyYW1zWyduYW1lJ10sIC0xKSkgKQ0KCQkJCXsNCgkJCQkJJHBhcmFtc1snbmFtZSddID0gaXNfbnVtZXJpYyhzdWJzdHIoJHBhcmFtc1snbmFtZSddLCAtMikpID8gc3Vic3RyKCRwYXJhbXNbJ25hbWUnXSwwICwgLTIpIC4gKHN1YnN0cigkcGFyYW1zWyduYW1lJ10sIC0yKSArIDEpIDogc3Vic3RyKCRwYXJhbXNbJ25hbWUnXSwwICwgLTEpIC4gKHN1YnN0cigkcGFyYW1zWyduYW1lJ10sIC0xKSArIDEpOw0KCQkJCX0NCgkJCQllbHNlDQoJCQkJew0KCQkJCQkkcGFyYW1zWyduYW1lJ10gLj0gIjEiOw0KCQkJCX0NCgkJCX0NCgkJCS8vIGZpbmQgbWF4aW11bSB2YWx1ZSBmb3Igc29ydG9yZGVyDQoJCQkkcXVlcnkgPSAiU0VMRUNUIE1BWChzb3J0b3JkZXIpIEFTIG1heHNvcnRvcmRlciBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfY3VzdG9tZ3MiOw0KCQkJJHJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkcXVlcnkpOw0KCQkJaWYoICRyZXN1bHQgKQ0KCQkJew0KCQkJCSRmaWVsZCA9ICRyZXN1bHQtPkZldGNoUm93KCk7DQoJCQkJLy8gc2V0IHByb3BlcnRpZXMsIGRlcGVuZGluZyBvbiBmaWVsZHR5cGUNCgkJCQlpZiggJHBhcmFtc1sndHlwZSddID09ICd0ZXh0ZmllbGQnICkNCgkJCQl7DQoJCQkJCSRwYXJhbXNbJ3Byb3BlcnRpZXMnXSA9IGlzX251bWVyaWMoJHBhcmFtc1snbWF4bGVuZ3RoJ10pID8gJHBhcmFtc1snbWF4bGVuZ3RoJ10gOiAyNTU7DQoJCQkJfQ0KCQkJCWVsc2VpZiAoICRwYXJhbXNbJ3R5cGUnXSA9PSAndGV4dGFyZWEnIHx8ICRwYXJhbXNbJ3R5cGUnXSA9PSAnd3lzaXd5ZycgKQ0KCQkJCXsNCgkJCQkJJHBhcmFtc1sncHJvcGVydGllcyddID0gaXNzZXQoJHBhcmFtc1sncGFyc2VzbWFydHknXSk7DQoJCQkJfQ0KCQkJCWVsc2VpZiAoICRwYXJhbXNbJ3R5cGUnXSAhPSAncHVsbGRvd24nICYmICRwYXJhbXNbJ3R5cGUnXSAhPSAncmFkaW9idXR0b25zJyApDQoJCQkJew0KCQkJCQkkcGFyYW1zWydwcm9wZXJ0aWVzJ10gPSAnJzsNCgkJCQl9DQoJCQkJZWxzZWlmICggJHBhcmFtc1sndHlwZSddID09ICdmaWVsZHNldHN0YXJ0JyApDQoJCQkJew0KCQkJCQkkcGFyYW1zWyd0eXBlJ10gPSAnZmllbGRzZXRzdGFydCc7DQoJCQkJCSRwYXJhbXNbJ3Byb3BlcnRpZXMnXSA9ICcnOw0KCQkJCX0NCgkJCQkkcGFyYW1zWydjbGVhcmNhY2hlJ10gPSBpc3NldCgkcGFyYW1zWydjbGVhcmNhY2hlJ10pOw0KCQkJCSRlZGl0b3JzID0gZW1wdHkoJHBhcmFtc1snZWRpdG9ycyddKSA/ICcnIDogaW1wbG9kZSgnOycsICRwYXJhbXNbJ2VkaXRvcnMnXSk7DQoJCQkJDQoJCQkJLy8gc2F2ZSBmaWVsZGRlZmluaXRpb24NCgkJCQkkcXVlcnkgPSAiSU5TRVJUIElOVE8gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9jdXN0b21ncyAobmFtZSwgaGVscCwgdHlwZSwgcHJvcGVydGllcywgY2xlYXJjYWNoZSwgc29ydG9yZGVyLCBlZGl0b3JzKSBWQUxVRVMgKD8sPyw/LD8sPyw/LD8pIjsNCgkJCQkkcmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSwgYXJyYXkoJHBhcmFtc1snbmFtZSddLCAkcGFyYW1zWydoZWxwJ10sICRwYXJhbXNbJ3R5cGUnXSwgJHBhcmFtc1sncHJvcGVydGllcyddLCAkcGFyYW1zWydjbGVhcmNhY2hlJ10sICRmaWVsZFsnbWF4c29ydG9yZGVyJ10gKyAxLCAkZWRpdG9ycykpOw0KCQkJfQ0KCQkJaWYoIGlzc2V0KCRyZXN1bHQpICYmICRyZXN1bHQgKQ0KCQkJew0KCQkJCS8vIGFkZCBhbHNvIGZpZWxkc2V0ZW5kIGlmIGZpZWxkc2V0c3RhcnQgd2FzIGFkZGVkDQoJCQkJaWYgKCAkcGFyYW1zWyd0eXBlJ10gPT0gJ2ZpZWxkc2V0c3RhcnQnICkNCgkJCQl7DQoJCQkJCSRyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgkcGFyYW1zWyduYW1lJ10sICcnLCAnZmllbGRzZXRlbmQnLCAnJywgJHBhcmFtc1snY2xlYXJjYWNoZSddLCAkZmllbGRbJ21heHNvcnRvcmRlciddICsgMiwgJGVkaXRvcnMpKTsNCgkJCQl9DQoNCgkJCQkvLyBQdXQgbWVudGlvbiBpbnRvIHRoZSBhZG1pbiBsb2cNCgkJCQlhdWRpdCgkZGItPkluc2VydF9JRCgpLCAnQ3VzdG9tIEdsb2JhbCBTZXR0aW5ncyAtIEZpZWxkZGVmaW5pdGlvbicsICdBZGRlZDogJyAuICRwYXJhbXNbJ25hbWUnXSk7DQoJCQkJJHBhcmFtcyA9IGFycmF5KCd0YWJfbWVzc2FnZSc9PiAnZmllbGRkZWZhZGRlZCcsICdhY3RpdmVfdGFiJyA9PiAnZmllbGRkZWZzJyk7DQoJCQl9DQoJCQllbHNlDQoJCQl7DQoJCQkJJHBhcmFtcyA9IGFycmF5KCdtb2R1bGVfZXJyb3InPT4gJ2ZpZWxkZGVmdXBkYXRlZmFpbGVkJywgJ2FjdGl2ZV90YWInID0+ICdmaWVsZGRlZnMnKTsNCgkJCX0NCg0KCQkJJHRoaXMtPlJlZGlyZWN0KCRpZCwgJ2RlZmF1bHRhZG1pbicsICcnLCAkcGFyYW1zKTsNCgkJfQ0KCQkkZmllbGQgPSBhcnJheSgnbmFtZScgPT4gJycsICdoZWxwJyA9PiAnJywgJ3R5cGUnID0+ICcnLCAnbWF4bGVuZ3RoJyA9PiAnJywgJ3Byb3BlcnRpZXMnID0+ICcnLCAncGFyc2VzbWFydHknID0+ICcnLCAnY2xlYXJjYWNoZScgPT4gMCwgJ2VkaXRvcnMnID0+ICcnKTsNCgkJJHNtYXJ0eS0+YXNzaWduKCd0aXRsZScsbGFuZygnYWRkJykpOw0KCQkkc21hcnR5LT5hc3NpZ24oJ2hpZGRlbicsICR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsICdtb2RlJywgJ2FkZCcpKTsNCgkJYnJlYWs7DQoNCg0KCWNhc2UgJ2RlbGV0ZSc6DQoJCWlmKCAhaXNfbnVtZXJpYygkcGFyYW1zWydmaWVsZGlkJ10pICkNCgkJew0KCQkJJHBhcmFtcyA9IGFycmF5KCdtb2R1bGVfZXJyb3InID0+IGxhbmcoJ21pc3NpbmdwYXJhbXMnKSwgJ2FjdGl2ZV90YWInID0+ICdmaWVsZGRlZnMnKTsNCgkJCSR0aGlzLT5SZWRpcmVjdCgkaWQsJ2RlZmF1bHRhZG1pbicsJycsJHBhcmFtcyk7DQoJCQlyZXR1cm47DQoJCX0NCgkJDQoJCSRmaWVsZCA9ICR0aGlzLT5HZXRGaWVsZCgkcGFyYW1zWydmaWVsZGlkJ10pOw0KCQlpZiggJGZpZWxkID09PSBGQUxTRSApDQoJCXsNCgkJCSRwYXJhbXMgPSBhcnJheSgnbW9kdWxlX2Vycm9yJz0+ICdmaWVsZGRlZnVwZGF0ZWZhaWxlZCcsICdhY3RpdmVfdGFiJyA9PiAnZmllbGRkZWZzJyk7DQoJCQkkdGhpcy0+UmVkaXJlY3QoJGlkLCAnZGVmYXVsdGFkbWluJywgJycsICRwYXJhbXMpOw0KCQl9DQoJCSRxdWVyeSA9ICJERUxFVEUgRlJPTSAiIC4gY21zX2RiX3ByZWZpeCgpIC4gIm1vZHVsZV9jdXN0b21ncyBXSEVSRSBmaWVsZGlkID0gPyI7DQoJCSRkYi0+RXhlY3V0ZSgkcXVlcnksIGFycmF5KCRwYXJhbXNbJ2ZpZWxkaWQnXSkpOw0KCQkvLyBQdXQgbWVudGlvbiBpbnRvIHRoZSBhZG1pbiBsb2cNCgkJYXVkaXQoJHBhcmFtc1snZmllbGRpZCddLCAnQ3VzdG9tIEdsb2JhbCBTZXR0aW5ncyAtIEZpZWxkZGVmaW5pdGlvbicsICdEZWxldGVkOiAnIC4gJGZpZWxkWyduYW1lJ10pOw0KDQoJCS8vIHVwZGF0ZSB0aGUgc29ydG9yZGVyDQoJCSRxdWVyeSA9ICJVUERBVEUgIiAuIGNtc19kYl9wcmVmaXgoKSAuICJtb2R1bGVfY3VzdG9tZ3MgU0VUIHNvcnRvcmRlciA9IHNvcnRvcmRlciAtIDEgV0hFUkUgc29ydG9yZGVyID4gPyI7DQoJCSRyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgkZmllbGRbJ3NvcnRvcmRlciddKSk7DQoJCQ0KCQkvLyBkZWxldGUgZmllbGRzZXRlbmQNCgkJaWYgKCAkZmllbGRbJ3R5cGUnXSA9PSAnZmllbGRzZXRzdGFydCcgKQ0KCQl7DQoJCQkkZmllbGQyID0gJHRoaXMtPkdldEZpZWxkKCRmaWVsZFsnbmFtZSddKTsNCgkJCWlmKCAkZmllbGQyICE9PSBGQUxTRSApDQoJCQl7DQoJCQkJJHF1ZXJ5ID0gIkRFTEVURSBGUk9NICIgLiBjbXNfZGJfcHJlZml4KCkgLiAibW9kdWxlX2N1c3RvbWdzIFdIRVJFIGZpZWxkaWQgPSA/IjsNCgkJCQkkZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgkZmllbGQyWydmaWVsZGlkJ10pKTsNCgkJCQkkcXVlcnkgPSAiVVBEQVRFICIgLiBjbXNfZGJfcHJlZml4KCkgLiAibW9kdWxlX2N1c3RvbWdzIFNFVCBzb3J0b3JkZXIgPSBzb3J0b3JkZXIgLSAxIFdIRVJFIHNvcnRvcmRlciA+ID8iOw0KCQkJCSRyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgkZmllbGQyWydzb3J0b3JkZXInXSkpOw0KCQkJfQ0KCQl9DQoNCgkJJHBhcmFtcyA9IGFycmF5KCd0YWJfbWVzc2FnZSc9PiAnZmllbGRkZWZzdXBkYXRlZCcsICdhY3RpdmVfdGFiJyA9PiAnZmllbGRkZWZzJyk7DQoJCSR0aGlzLT5SZWRpcmVjdCgkaWQsICdkZWZhdWx0YWRtaW4nLCAnJywgJHBhcmFtcyk7DQoJCWJyZWFrOw0KDQoNCgljYXNlICdlZGl0JzoNCgkJaWYoICFpc19udW1lcmljKCRwYXJhbXNbJ2ZpZWxkaWQnXSkgKQ0KCQl7DQoJCQkkcGFyYW1zID0gYXJyYXkoJ21vZHVsZV9lcnJvcicgPT4gbGFuZygnbWlzc2luZ3BhcmFtcycpLCAnYWN0aXZlX3RhYicgPT4gJ2ZpZWxkZGVmcycpOw0KCQkJJHRoaXMtPlJlZGlyZWN0KCRpZCwnZGVmYXVsdGFkbWluJywnJywkcGFyYW1zKTsNCgkJCXJldHVybjsNCgkJfQ0KDQoJCSRmaWVsZCA9ICR0aGlzLT5HZXRGaWVsZCgkcGFyYW1zWydmaWVsZGlkJ10pOw0KDQoJCWlmKCAkX1NFUlZFUlsnUkVRVUVTVF9NRVRIT0QnXSA9PSAnUE9TVCcgKQ0KCQl7DQoJCQkvLyBjaGVjayBpZiBuYW1lIGlzIGVtcHR5DQoJCQlpZiAoIGVtcHR5KCRwYXJhbXNbJ25hbWUnXSkgKSAkcGFyYW1zWyduYW1lJ10gPSAkcGFyYW1zWyd0eXBlJ10gLiAiMSI7DQoJCQkvLyBjaGVjayBpZiBuYW1lIGFscmVhZHkgZXhpc3RzDQoJCQkkY2hlY2tmaWVsZG5hbWUgPSAkZmllbGRbJ3R5cGUnXSA9PSAnZmllbGRzZXRzdGFydCcgPyBGQUxTRSA6ICR0aGlzLT5HZXRGaWVsZCgkcGFyYW1zWyduYW1lJ10pOw0KCQkJV2hpbGUgKCAkY2hlY2tmaWVsZG5hbWUgIT09IEZBTFNFICYmICRwYXJhbXNbJ2ZpZWxkaWQnXSAhPSAkY2hlY2tmaWVsZG5hbWVbJ2ZpZWxkaWQnXSApDQoJCQl7DQoJCQkJaWYgKCBpc19udW1lcmljKHN1YnN0cigkcGFyYW1zWyduYW1lJ10sIC0xKSkgKQ0KCQkJCXsNCgkJCQkJJHBhcmFtc1snbmFtZSddID0gaXNfbnVtZXJpYyhzdWJzdHIoJHBhcmFtc1snbmFtZSddLCAtMikpID8gc3Vic3RyKCRwYXJhbXNbJ25hbWUnXSwwICwgLTIpIC4gKHN1YnN0cigkcGFyYW1zWyduYW1lJ10sIC0yKSArIDEpIDogc3Vic3RyKCRwYXJhbXNbJ25hbWUnXSwwICwgLTEpIC4gKHN1YnN0cigkcGFyYW1zWyduYW1lJ10sIC0xKSArIDEpOw0KCQkJCX0NCgkJCQllbHNlDQoJCQkJew0KCQkJCQkkcGFyYW1zWyduYW1lJ10gLj0gIjEiOw0KCQkJCX0NCgkJCQkkY2hlY2tmaWVsZG5hbWUgPSAkdGhpcy0+R2V0RmllbGQoJHBhcmFtc1snbmFtZSddKTsNCgkJCX0NCgkJCS8vIHNldCBwcm9wZXJ0aWVzLCBkZXBlbmRpbmcgb24gZmllbGR0eXBlDQoJCQlpZiggJHBhcmFtc1sndHlwZSddID09ICd0ZXh0ZmllbGQnICkNCgkJCXsNCgkJCQkkcGFyYW1zWydwcm9wZXJ0aWVzJ10gPSBpc19udW1lcmljKCRwYXJhbXNbJ21heGxlbmd0aCddKSA/ICRwYXJhbXNbJ21heGxlbmd0aCddIDogMjU1Ow0KCQkJfQ0KCQkJZWxzZWlmICggJHBhcmFtc1sndHlwZSddID09ICd0ZXh0YXJlYScgfHwgJHBhcmFtc1sndHlwZSddID09ICd3eXNpd3lnJyApDQoJCQl7DQoJCQkJJHBhcmFtc1sncHJvcGVydGllcyddID0gJHBhcmFtc1sncGFyc2VzbWFydHknXTsNCgkJCX0NCgkJCWVsc2VpZiAoICRwYXJhbXNbJ3R5cGUnXSAhPSAncHVsbGRvd24nICYmICRwYXJhbXNbJ3R5cGUnXSAhPSAncmFkaW9idXR0b25zJyApDQoJCQl7DQoJCQkJJHBhcmFtc1sncHJvcGVydGllcyddID0gJyc7DQoJCQl9DQoJCQkkcGFyYW1zWydjbGVhcmNhY2hlJ10gPSBpc3NldCgkcGFyYW1zWydjbGVhcmNhY2hlJ10pOw0KCQkJJGVkaXRvcnMgPSBlbXB0eSgkcGFyYW1zWydlZGl0b3JzJ10pID8gJycgOiBpbXBsb2RlKCc7JywgJHBhcmFtc1snZWRpdG9ycyddKTsNCg0KCQkJLy8gc2F2ZSBmaWVsZGRlZmluaXRpb24NCgkJCSRxdWVyeSA9ICJVUERBVEUgIiAuIGNtc19kYl9wcmVmaXgoKSAuICJtb2R1bGVfY3VzdG9tZ3MgU0VUIG5hbWUgPSA/LCBoZWxwID0gPywgdHlwZSA9ID8sIHByb3BlcnRpZXMgPSA/LCBjbGVhcmNhY2hlID0gPywgZWRpdG9ycyA9ID8gV0hFUkUgZmllbGRpZCA9ID8iOw0KCQkJJHJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksIGFycmF5KCRwYXJhbXNbJ25hbWUnXSwgJHBhcmFtc1snaGVscCddLCAkcGFyYW1zWyd0eXBlJ10sICRwYXJhbXNbJ3Byb3BlcnRpZXMnXSwgJHBhcmFtc1snY2xlYXJjYWNoZSddLCAkZWRpdG9ycywgJHBhcmFtc1snZmllbGRpZCddKSk7DQoJCQlpZiAoICRmaWVsZFsndHlwZSddID09ICdmaWVsZHNldHN0YXJ0JyApDQoJCQl7DQoJCQkJJHF1ZXJ5ID0gIlVQREFURSAiIC4gY21zX2RiX3ByZWZpeCgpIC4gIm1vZHVsZV9jdXN0b21ncyBTRVQgbmFtZSA9ID8sIGVkaXRvcnMgPSA/IFdIRVJFIG5hbWUgPSA/IEFORCBmaWVsZGlkIDw+ID8iOw0KCQkJCSRyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgkcGFyYW1zWyduYW1lJ10sICRlZGl0b3JzLCAkZmllbGRbJ25hbWUnXSwgJHBhcmFtc1snZmllbGRpZCddKSk7DQoJCQl9DQoNCgkJCS8vIFB1dCBtZW50aW9uIGludG8gdGhlIGFkbWluIGxvZw0KCQkJYXVkaXQoJHBhcmFtc1snZmllbGRpZCddLCAnQ3VzdG9tIEdsb2JhbCBTZXR0aW5ncyAtIEZpZWxkZGVmaW5pdGlvbicsICdFZGl0ZWQ6ICcgLiAkcGFyYW1zWyduYW1lJ10pOw0KDQoJCQkkcGFyYW1zID0gYXJyYXkoJ3RhYl9tZXNzYWdlJz0+ICdmaWVsZGRlZnN1cGRhdGVkJywgJ2FjdGl2ZV90YWInID0+ICdmaWVsZGRlZnMnKTsNCgkJCSR0aGlzLT5SZWRpcmVjdCgkaWQsICdkZWZhdWx0YWRtaW4nLCAnJywgJHBhcmFtcyk7DQoJCX0NCg0KCQkkc21hcnR5LT5hc3NpZ24oJ3RpdGxlJyxsYW5nKCdlZGl0JykpOw0KCQkkc21hcnR5LT5hc3NpZ24oJ2hpZGRlbicsICR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsICdmaWVsZGlkJywgJHBhcmFtc1snZmllbGRpZCddKSAuDQoJCQkJCQkkdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLCAnbW9kZScsICdlZGl0JykpOw0KCQlicmVhazsNCg0KDQoJY2FzZSAnbW92ZXVwJzoNCgljYXNlICdtb3ZlZG93bic6DQoJCSRmaWVsZCA9ICR0aGlzLT5HZXRGaWVsZCgkcGFyYW1zWydmaWVsZGlkJ10pOw0KCQlpZiggJGZpZWxkID09PSBGQUxTRSApCQkgDQoJCXsNCgkJCSRwYXJhbXMgPSBhcnJheSgnbW9kdWxlX2Vycm9yJz0+ICd0eXBldXBkYXRlZmFpbGVkJywgJ2FjdGl2ZV90YWInID0+ICd0eXBlcycpOw0KCQkJJHRoaXMtPlJlZGlyZWN0KCRpZCwgJ2RlZmF1bHRhZG1pbicsICcnLCAkcGFyYW1zKTsNCgkJfQ0KDQoJCSRxdWVyeSA9ICJVUERBVEUgIiAuIGNtc19kYl9wcmVmaXgoKSAuICJtb2R1bGVfY3VzdG9tZ3MgU0VUIHNvcnRvcmRlciA9ICIgLiAoJHBhcmFtc1snbW9kZSddID09ICdtb3ZldXAnID8gJ3NvcnRvcmRlciArIDEnIDogJ3NvcnRvcmRlciAtIDEnKSAuICIgV0hFUkUgc29ydG9yZGVyID0gPyI7DQoJCSRyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgkcGFyYW1zWydtb2RlJ10gPT0gJ21vdmV1cCcgPyAkZmllbGRbJ3NvcnRvcmRlciddIC0gMSA6ICRmaWVsZFsnc29ydG9yZGVyJ10gKyAxKSk7DQoNCgkJJHF1ZXJ5ID0gIlVQREFURSAiIC4gY21zX2RiX3ByZWZpeCgpIC4gIm1vZHVsZV9jdXN0b21ncyBTRVQgc29ydG9yZGVyID0gIiAuICgkcGFyYW1zWydtb2RlJ10gPT0gJ21vdmV1cCcgPyAnc29ydG9yZGVyIC0gMScgOiAnc29ydG9yZGVyICsgMScpIC4gIiBXSEVSRSBmaWVsZGlkID0gPyI7DQoJCSRyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgkcGFyYW1zWydmaWVsZGlkJ10pKTsNCg0KCQkkcGFyYW1zID0gYXJyYXkoJ2FjdGl2ZV90YWInID0+ICdmaWVsZGRlZnMnKTsNCgkJJHRoaXMtPlJlZGlyZWN0KCRpZCwgJ2RlZmF1bHRhZG1pbicsICcnLCAkcGFyYW1zKTsNCgkJYnJlYWs7DQoNCgkJDQoJY2FzZSAnc29ydCc6DQoJCWlmICggIWVtcHR5KCRwYXJhbXNbJ3NvcnRzZXEnXSkgKQ0KCQl7DQoJCQkkc29ydHNlcSA9IHN0cl9yZXBsYWNlKCdpJywgJycsICRwYXJhbXNbJ3NvcnRzZXEnXSk7DQoJCQkkc29ydGVudHJpZXMgPSBleHBsb2RlKCcsJywgJHNvcnRzZXEpOw0KCQkJZm9yZWFjaCAoICRzb3J0ZW50cmllcyBhcyAka2V5ID0+ICRmaWVsZGlkICkNCgkJCXsNCgkJCQkkcXVlcnkgPSAiVVBEQVRFICIgLiBjbXNfZGJfcHJlZml4KCkgLiAibW9kdWxlX2N1c3RvbWdzIFNFVCBzb3J0b3JkZXIgPSA/IFdIRVJFIGZpZWxkaWQgPSA/IjsNCgkJCQkkZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgka2V5ICsgMSwgJGZpZWxkaWQpKTsNCgkJCX0NCgkJfQ0KCQlleGl0KCk7DQoJCWJyZWFrOw0KDQp9DQoNCg0KJHR5cGVsaXN0ID0gYXJyYXkoDQoJJHRoaXMtPkxhbmcoJ3RleHRmaWVsZCcpID0+ICd0ZXh0ZmllbGQnLA0KCSR0aGlzLT5MYW5nKCdwdWxsZG93bicpID0+ICdwdWxsZG93bicsDQoJJHRoaXMtPkxhbmcoJ2NoZWNrYm94JykgPT4gJ2NoZWNrYm94JywNCgkkdGhpcy0+TGFuZygncmFkaW9idXR0b25zJykgPT4gJ3JhZGlvYnV0dG9ucycsDQoJJHRoaXMtPkxhbmcoJ2RhdGVwaWNrZXInKSA9PiAnZGF0ZXBpY2tlcicsDQoJJHRoaXMtPkxhbmcoJ2RhdGV0aW1lcGlja2VyJykgPT4gJ2RhdGV0aW1lcGlja2VyJywNCgkkdGhpcy0+TGFuZygndGltZXBpY2tlcicpID0+ICd0aW1lcGlja2VyJywNCgkkdGhpcy0+TGFuZygndGV4dGFyZWEnKSA9PiAndGV4dGFyZWEnLA0KCSR0aGlzLT5MYW5nKCd3eXNpd3lnJykgPT4gJ3d5c2l3eWcnLA0KCSR0aGlzLT5MYW5nKCdjb2xvcnBpY2tlcicpID0+ICdjb2xvcnBpY2tlcicsDQoJJHRoaXMtPkxhbmcoJ2ZpZWxkc2V0c3RhcnQnKSA9PiAnZmllbGRzZXRzdGFydCcsDQoJJHRoaXMtPkxhbmcoJ2J1dHRvbicpID0+ICdidXR0b24nKTsNCg0KJGRpc2FibGVkID0gJGZpZWxkWyd0eXBlJ10gPT0gJ2ZpZWxkc2V0c3RhcnQnID8gJyBkaXNhYmxlZD0iZGlzYWJsZWQiJyA6ICcnOw0KDQokZ2JmcCA9IGNtc191dGlsczo6Z2V0X21vZHVsZSgnR0JGaWxlUGlja2VyJyk7DQppZiggJGdiZnAgKQ0Kew0KCSRnYmZwX25hbWUgPSAkZ2JmcC0+R2V0RnJpZW5kbHlOYW1lKCk7DQoJJHR5cGVsaXN0WyRnYmZwX25hbWVdID0gJ2diZmlsZXBpY2tlcic7DQp9DQoNCg0KDQokc21hcnR5LT5hc3NpZ24oJ3Byb21wdF9uYW1lJywgbGFuZygnbmFtZScpKTsNCiRzbWFydHktPmFzc2lnbignbmFtZScsICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCAnbmFtZScsICRmaWVsZFsnbmFtZSddLCA0MCApKTsNCg0KJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfdHlwZScsIGxhbmcoJ3R5cGUnKSk7DQokc21hcnR5LT5hc3NpZ24oJ3R5cGUnLCAkdGhpcy0+Q3JlYXRlSW5wdXREcm9wZG93bigkaWQsICd0eXBlJyAuICgkZGlzYWJsZWQgPyAnXycgOiAnJyksICR0eXBlbGlzdCwgLTEsICRmaWVsZFsndHlwZSddLCAnaWQ9ImZpZWxkdHlwZSInIC4gJGRpc2FibGVkKSAuICgkZGlzYWJsZWQgPyAkdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLCAndHlwZScsICRmaWVsZFsndHlwZSddKSA6ICcnKSk7DQoNCiRzbWFydHktPmFzc2lnbigncHJvbXB0X21heGxlbmd0aCcsICR0aGlzLT5MYW5nKCdtYXhsZW5ndGgnKSk7DQokc21hcnR5LT5hc3NpZ24oJ21heGxlbmd0aCcsICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCAnbWF4bGVuZ3RoJywgJGZpZWxkWyd0eXBlJ10gPT0gJ3RleHRmaWVsZCcgPyAkZmllbGRbJ3Byb3BlcnRpZXMnXSA6ICcnLCA1LCA1KSk7DQoNCiRzbWFydHktPmFzc2lnbigncHJvbXB0X3Byb3BlcnRpZXMnLCAkdGhpcy0+TGFuZygncHJvcGVydGllcycpKTsNCiRzbWFydHktPmFzc2lnbignaGVscF9wcm9wZXJ0aWVzJywgJHRoaXMtPkxhbmcoJ3Byb3BlcnRpZXNfaGVscDEnKSk7DQokc21hcnR5LT5hc3NpZ24oJ3Byb3BlcnRpZXMnLCAkdGhpcy0+Q3JlYXRlVGV4dEFyZWEoRkFMU0UsICRpZCwgJGZpZWxkWyd0eXBlJ10gPT0gJ3B1bGxkb3duJyB8fCAkZmllbGRbJ3R5cGUnXSA9PSAncmFkaW9idXR0b25zJyA/ICRmaWVsZFsncHJvcGVydGllcyddIDogJycsICdwcm9wZXJ0aWVzJywgJycsICcnICwgJycgLCAnJywgMjAsIDYsICcnLCAnJywgJ3N0eWxlPSJ3aWR0aDoyMGVtOyBoZWlnaHQ6NmVtOyInKSk7DQoNCiRzbWFydHktPmFzc2lnbigncHJvbXB0X3BhcnNlc21hcnR5JywgJHRoaXMtPkxhbmcoJ3BhcnNlc21hcnR5JykpOw0KJHNtYXJ0eS0+YXNzaWduKCdwYXJzZXNtYXJ0eScsICR0aGlzLT5DcmVhdGVJbnB1dENoZWNrYm94KCRpZCwgJ3BhcnNlc21hcnR5JywgJzEnLCAkZmllbGRbJ3R5cGUnXSA9PSAndGV4dGFyZWEnIHx8ICRmaWVsZFsndHlwZSddID09ICd3eXNpd3lnJyA/ICRmaWVsZFsncHJvcGVydGllcyddIDogJycpKTsNCg0KJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfaGVscCcsIGxhbmcoJ2hlbHAnKSk7DQokc21hcnR5LT5hc3NpZ24oJ2hlbHAnLCAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwgJ2hlbHAnLCAkZmllbGRbJ2hlbHAnXSwgODAgKSk7DQoNCiRzbWFydHktPmFzc2lnbigncHJvbXB0X2NsZWFyY2FjaGUnLCAkdGhpcy0+TGFuZygnY2xlYXJzdHlsZXNoZWV0Y2FjaGUnKSk7DQokc21hcnR5LT5hc3NpZ24oJ2hlbHBfY2xlYXJjYWNoZScsICR0aGlzLT5MYW5nKCdjbGVhcnN0eWxlc2hlZXRjYWNoZV9oZWxwJykpOw0KJHNtYXJ0eS0+YXNzaWduKCdjbGVhcmNhY2hlJywgJHRoaXMtPkNyZWF0ZUlucHV0Q2hlY2tib3goJGlkLCAnY2xlYXJjYWNoZScsICcxJywgJGZpZWxkWydjbGVhcmNhY2hlJ10pKTsNCg0KJGVkaXRvcnNsaXN0ID0gYXJyYXkoKTsNCiRkaXNhYmxlZCA9ICcnOw0KJGdyb3Vwb3BzID0gJGdDbXMtPkdldEdyb3VwT3BlcmF0aW9ucygpOw0KJGdyb3VwcyA9ICRncm91cG9wcy0+TG9hZEdyb3VwcygpOw0KZm9yZWFjaCAoJGdyb3VwcyBhcyAkb25lZ3JvdXApDQp7DQoJLy9pZiggJG9uZWdyb3VwLT5pZCA9PSAxICkgY29udGludWU7DQoJJGVkaXRvcnNsaXN0W2xhbmcoJ2dyb3VwJykgLiAnOiAnIC4gJG9uZWdyb3VwLT5uYW1lXSA9ICRvbmVncm91cC0+aWQ7DQp9DQokc2VsZWN0ZWRlZGl0b3JzID0gZXhwbG9kZSgnOycsICRmaWVsZFsnZWRpdG9ycyddKTsNCiRzbWFydHktPmFzc2lnbigncHJvbXB0X2VkaXRvcnMnLCBsYW5nKCdncm91cHBlcm1pc3Npb25zJykpOw0KJHNtYXJ0eS0+YXNzaWduKCdlZGl0b3JzJywgJHRoaXMtPkNyZWF0ZUlucHV0U2VsZWN0TGlzdCgkaWQsICdlZGl0b3JzW10nLCAkZWRpdG9yc2xpc3QsICRzZWxlY3RlZGVkaXRvcnMsIDQsICRkaXNhYmxlZCkpOw0KDQokc21hcnR5LT5hc3NpZ24oJ3N1Ym1pdCcsICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsICdzdWJtaXRidXR0b24nLCBsYW5nKCdzdWJtaXQnKSkpOw0KJHNtYXJ0eS0+YXNzaWduKCdjYW5jZWwnLCAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCAnY2FuY2VsJywgbGFuZygnY2FuY2VsJykpKTsNCg0KJHNtYXJ0eS0+YXNzaWduKCdmb3Jtc3RhcnQnLCAkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0KCRpZCwgJ2VkaXRmaWVsZGRlZicsICRyZXR1cm5pZCkpOw0KJHNtYXJ0eS0+YXNzaWduKCdmb3JtZW5kJywgJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7DQoNCmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSgnZWRpdGZpZWxkZGVmLnRwbCcpOw0KDQo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.save_general.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIE1vZHVsZTogQ3VzdG9tIEdsb2JhbCBTZXR0aW5ncw0KIyBBdXRob3I6IFJvbGYgVGphc3NlbnMsIEpvcw0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDExIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykNCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcNCiMgVGhlIG1vZHVsZSdzIGhvbWVwYWdlIGlzOiBodHRwOi8vZGV2LmNtc21hZGVzaW1wbGUub3JnL3Byb2plY3RzL2N1c3RvbWdzDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQ0KIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQ0KIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcg0KIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLg0KIw0KIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwNCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YNCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQ0KIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLg0KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQ0KIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQ0KIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQ0KIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQppZiAoIWlzc2V0KCRnQ21zKSkgZXhpdDsNCg0KaWYoICEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdDdXN0b20gR2xvYmFsIFNldHRpbmdzIC0gVXNlJykgKSAkdGhpcy0+UmVkaXJlY3QoJGlkLCAiZGVmYXVsdGFkbWluIiwgJHJldHVybmlkKTsNCg0KLy8gR2V0IGFsbCBmaWVsZHMgYW5kIHNldHRpbmdzDQokYWxsZmllbGRzID0gJHRoaXMtPkdldFNldHRpbmdzKGZhbHNlKTsNCiRjbGVhcmNhY2hlID0gMDsNCg0KZm9yZWFjaCggJGFsbGZpZWxkcyBhcyAka2V5ID0+ICR2YWx1ZSApDQp7DQoNCgkvLyBPbmx5IHVzZSB0aGUgbnVtZXJpYyBrZXlzDQoJaWYoIGlzX251bWVyaWMoJGtleSkgKQ0KCXsNCgkJLy8gU2F2ZSBmaWVsZCB2YWx1ZQ0KCQkkbmV3dmFsdWUgPSBpc3NldCgkcGFyYW1zWydmaWVsZCddWyRrZXldKSA/ICRwYXJhbXNbJ2ZpZWxkJ11bJGtleV0gOiAwOw0KCQkkcXVlcnkgPSAiVVBEQVRFICIgLiBjbXNfZGJfcHJlZml4KCkgLiAibW9kdWxlX2N1c3RvbWdzIFNFVCB2YWx1ZT0/IFdIRVJFIGZpZWxkaWQ9PyI7DQoJCSRyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgkbmV3dmFsdWUsICRrZXkpKTsNCgkJDQoJCS8vIFNlbnQgZXZlbnQgb25seSB3aGVuIHZhbHVlIGhhcyBjaGFuZ2VkLg0KCQlpZiAoICRuZXd2YWx1ZSAhPSAkdmFsdWUgKQ0KCQl7DQoJCQkkZmllbGQgPSAkdGhpcy0+R2V0RmllbGQoJGtleSk7DQoJCQkkdGhpcy0+U2VuZEV2ZW50KCdPblNldHRpbmdDaGFuZ2UnLCBhcnJheSgNCgkJCQkJCSdmaWVsZGlkJyA9PiAkZmllbGRbJ2ZpZWxkaWQnXSwNCgkJCQkJCSduYW1lJyA9PiAkZmllbGRbJ25hbWUnXSwNCgkJCQkJCSdhbGlhcycgPT4gc3RyX3JlcGxhY2UoJ19fJywgJ18nLCBzdHJfcmVwbGFjZSgnLScsICdfJywgbXVuZ2Vfc3RyaW5nX3RvX3VybCgkZmllbGRbJ25hbWUnXSkpKSwNCgkJCQkJCSd2YWx1ZScgPT4gJG5ld3ZhbHVlLA0KCQkJCQkJJ2NsZWFyY2FjaGUnID0+ICRmaWVsZFsnY2xlYXJjYWNoZSddDQoJCQkpKTsNCgkJCSRjbGVhcmNhY2hlID0gJGNsZWFyY2FjaGUgfHwgJGZpZWxkWydjbGVhcmNhY2hlJ107DQoJCX0NCgl9DQp9DQoNCi8vIENsZWFyIHRoZSBzdHlsZXNoZWV0IGNhY2hlIGlmIHJlcXVpcmVkIGJ5IG9uZSBvZiB0aGUgZmllbGRzIGFuZCBvbmx5IGlmIHRoYXQgZmllbGQgaGFzIGJlZW4gY2hhbmdlZA0KaWYgKCAkY2xlYXJjYWNoZSApICR0aGlzLT5DbGVhclN0eWxlc2hlZXRDYWNoZSgpOw0KDQovLyBTaG93IHNhdmVkIHBhcmFtZXRlcnMgaW4gZGVidWcgbW9kZQ0KZGVidWdfZGlzcGxheSgkcGFyYW1zKTsNCg0KLy8gUHV0IG1lbnRpb24gaW50byB0aGUgYWRtaW4gbG9nDQphdWRpdCgnJywgJ0N1c3RvbSBHbG9iYWwgU2V0dGluZ3MgLSBHZW5lcmFsIHRhYicsICdTYXZlZCcpOw0KDQokdGhpcy0+UmVkaXJlY3QoJGlkLCAnZGVmYXVsdGFkbWluJywgJHJldHVybmlkLCBhcnJheSgnbW9kdWxlX21lc3NhZ2UnID0+ICR0aGlzLT5MYW5nKCdzZXR0aW5nc3NhdmVkJyksICdhY3RpdmVfdGFiJyA9PiAnZ2VuZXJhbCcpKTsNCj8+]]></data>
	</file>
	<file>
	  <filename>/action.save_options.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIE1vZHVsZTogQ3VzdG9tIEdsb2JhbCBTZXR0aW5ncw0KIyBBdXRob3I6IFJvbGYgVGphc3NlbnMsIEpvcw0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDExIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykNCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcNCiMgVGhlIG1vZHVsZSdzIGhvbWVwYWdlIGlzOiBodHRwOi8vZGV2LmNtc21hZGVzaW1wbGUub3JnL3Byb2plY3RzL2N1c3RvbWdzDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQ0KIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQ0KIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcg0KIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLg0KIw0KIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwNCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YNCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQ0KIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLg0KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQ0KIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQ0KIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQ0KIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQppZiAoIWlzc2V0KCRnQ21zKSkgZXhpdDsNCg0KaWYoICEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdDdXN0b20gR2xvYmFsIFNldHRpbmdzIC0gTWFuYWdlJykgKSAkdGhpcy0+UmVkaXJlY3QoJGlkLCAnZGVmYXVsdGFkbWluJywgJHJldHVybmlkKTsNCg0KLy8gU2F2ZSBQYXJhbWV0ZXJzIE9wdGlvbnMgVGFiDQppZiAoaXNzZXQoJHBhcmFtc1snaW5wdXRfY3VzdG9tX21vZHVsZW5hbWUnXSkpICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdpbnB1dF9jdXN0b21fbW9kdWxlbmFtZScsICRwYXJhbXNbJ2lucHV0X2N1c3RvbV9tb2R1bGVuYW1lJ10pOw0KaWYgKGlzc2V0KCRwYXJhbXNbJ2lucHV0X2FkbWluX3NlY3Rpb24nXSkpICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdhZG1pbl9zZWN0aW9uJywgJHBhcmFtc1snaW5wdXRfYWRtaW5fc2VjdGlvbiddKTsNCg0KLy8gQ2xlYXIgYWRtaW4gbWVudSBjYWNoZQ0KZm9yZWFjaCAoZ2xvYigiLi4vdG1wL2NhY2hlL3RoZW1laW5mbyouY2FjaGUiKSBhcyAkZmlsZW5hbWUpIHsNCglAdW5saW5rKCRmaWxlbmFtZSk7DQp9DQoNCi8vIFNob3cgc2F2ZWQgcGFyYW1ldGVycyBpbiBkZWJ1ZyBtb2RlDQpkZWJ1Z19kaXNwbGF5KCRwYXJhbXMpOw0KDQovLyBQdXQgbWVudGlvbiBpbnRvIHRoZSBhZG1pbiBsb2cNCmF1ZGl0KCcnLCAnQ3VzdG9tIEdsb2JhbCBTZXR0aW5ncyAtIE9wdGlvbnMgdGFiJywgJ1NhdmVkJyk7DQoNCiR0aGlzLT5SZWRpcmVjdCgkaWQsICdkZWZhdWx0YWRtaW4nLCAkcmV0dXJuaWQsIGFycmF5KCdtb2R1bGVfbWVzc2FnZScgPT4gJHRoaXMtPkxhbmcoJ3NldHRpbmdzc2F2ZWQnKSwgJ2FjdGl2ZV90YWInID0+ICdvcHRpb25zJykpOw0KPz4=]]></data>
	</file>
	<file>
	  <filename>/changelog.inc</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PHVsPg0KPGxpPjxzdHJvbmc+VmVyc2lvbiAxLjU8L3N0cm9uZz4gLSA1IGRlY2VtYmVyIDIwMTMNCgk8dWw+DQoJPGxpPlBvc3NpYmlsaXR5IHRvIGFkZCBhZG1pbiBwYWdlIHVuZGVyIFNpdGUgQWRtaW4gc2VjdGlvbi4gRWRpdG9ycyBkb24ndCBoYXZlIGFjY2VzcyE8L2xpPg0KCTxsaT5BZGRlZCBmaWVsZHR5cGUgJ0NvbG9yUGlja2VyJyAodGhhbmtzIHRvIEppc3NleSk8L2xpPg0KCTxsaT5BZGRlZCBGcmVuY2ggdHJhbnNsYXRpb24gKHRoYW5rcyB0byBKaXNzZXkpPC9saT4NCgk8bGk+QWRkZWQgY29sbGFwc2libGUgZmllbGRncm91cHMgKEZSICM4MTY2LCAjODUxNyBhbmQgIzk0NjUpPC9saT4NCgk8bGk+QWRkZWQgdGhlIGFiaWxpdHkgdG8gYXNzaWduIGVhY2ggZmllbGQgdG8gJ2FkbWluJyBvciAnZWRpdG9yJyAoRlIgIzg1MTUpPC9saT4NCgk8L3VsPg0KPC9saT4NCjxsaT48c3Ryb25nPlZlcnNpb24gMS40PC9zdHJvbmc+IC0gOSBNYXkgMjAxMw0KCTx1bD4NCgk8bGk+RHJhZyBhbmQgZHJvcCBmaWVsZCBvcmRlcmluZyAoRlIgIzg1MTYpPC9saT4NCgk8bGk+QWRkZWQgZmllbGR0eXBlICdHQkZpbGVQaWNrZXInIChGUiAjODI4NiBhbmQgIzg2MzQpPC9saT4NCgk8bGk+SW5jbHVkZWQgV2lraSBoZWxwdGV4dCBhbmQgZXhhbXBsZXMgaW4gdGhlIG1vZHVsZSBoZWxwdGV4dDwvbGk+DQoJPGxpPkJ1ZyAjODYzMzogZml4ZWQgLSBEb2VzIG5vdCBlc2NhcGUgaGVscCB0ZXh0PC9saT4NCgk8bGk+QnVnICM5MDE5OiBmaXhlZCAtIFN1Ym1pdCBub3Qgd29ya2luZyBmb3IgdGhvc2Ugd2l0aG91dCAnTWFuYWdlJyBwZXJtaXNzaW9uczwvbGk+DQoJPC91bD4NCjwvbGk+DQo8bGk+PHN0cm9uZz5WZXJzaW9uIDEuMzwvc3Ryb25nPiAtIDE0IEF1Z3VzdCAyMDEyDQoJPHVsPg0KCTxsaT5SZW1vdmVkIENsZWFyIENhY2hlIGR1ZSB0byBGb3JnZSByZWd1bGF0aW9uczwvbGk+DQoJPGxpPkJ1ZyAjODAwOTogZml4ZWQgLSBJc3N1ZSB3aXRoIHRleHQgYXJlYXMgd2l0aCBzbWFydHkgcGFyc2luZyBvbjwvbGk+DQoJPC91bD4NCjwvbGk+DQo8bGk+PHN0cm9uZz5WZXJzaW9uIDEuMjwvc3Ryb25nPiAtIDIwIE1hcmNoIDIwMTINCgk8dWw+DQoJPGxpPk1pbmltdW0gcmVxdWlyZWQgQ01TbXMgdmVyc2lvbiBzZXQgdG8gMS4xMDwvbGk+DQoJPGxpPkFkZCBHZXRBZG1pblNlY3Rpb24gc2V0dGluZyAoRlIgIzc2MTgpPC9saT4NCgk8bGk+QWRkZWQgb3B0aW9uIHRvIGF1dG9tYXRpY2FsbHkgY2xlYXIgY2FjaGUgYWZ0ZXIgY2hhbmdpbmcgYSBzZXR0aW5nPC9saT4NCgk8bGk+QWRkZWQgZmllbGR0eXBlICdCdXR0b24nPC9saT4NCgk8bGk+U3VwcG9ydCBWYWx1ZXxPcHRpb25OYW1lIHBhaXJzIGFuZCBTbWFydHkgdGFncyBmb3IgcHVsbGRvd24gZmllbGRzIGFuZCByYWRpb2J1dHRvbnM8L2xpPg0KCTxsaT5CdWcgZml4ZWQ6IEVkaXRpbmcgYSBmaWVsZCBjaGFuZ2VzIHRoZSBmaWVsZG5hbWU8L2xpPg0KCTxsaT5CdWcgZml4ZWQ6IFNlbmRFdmVudCBvbiBjaGFuZ2luZyBhIGNoZWNrYm94IHNldHRpbmc8L2xpPg0KCTwvdWw+DQo8L2xpPg0KPGxpPjxzdHJvbmc+VmVyc2lvbiAxLjE8L3N0cm9uZz4gLSAxOSBGZWJydWFyeSAyMDEyDQoJPHVsPg0KCTxsaT5EZWZpbmUgdW5saW1pdGVkIG51bWJlciBvZiBmaWVsZHM8L2xpPg0KCTxsaT5BZGRlZCBmaWVsZHR5cGVzIHRleHRhcmVhLCB3eXNpd3lnLCBkYXRldGltZXBpY2tlciwgcHVsbGRvd24gc2VsZWN0LCByYWRpb2J1dHRvbnM8L2xpPg0KCTxsaT5BZGRlZCBldmVudCBPblNldHRpbmdDaGFuZ2U8L2xpPg0KCTwvdWw+DQo8L2xpPg0KPGxpPjxzdHJvbmc+VmVyc2lvbiAxLjA8L3N0cm9uZz4gLSAyMSBKYW51YXJ5IDIwMTINCgk8dWw+DQoJPGxpPkluaXRpYWwgbW9kdWxlIHJlbGVhc2U8L2xpPg0KCTwvdWw+DQo8L2xpPg0KPC91bD4=]]></data>
	</file>
	<file>
	  <filename>/CustomGS.module.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIE1vZHVsZTogQ3VzdG9tIEdsb2JhbCBTZXR0aW5ncw0KIyBBdXRob3I6IFJvbGYgVGphc3NlbnMsIEpvcw0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDExIGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykNCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcNCiMgVGhlIG1vZHVsZSdzIGhvbWVwYWdlIGlzOiBodHRwOi8vZGV2LmNtc21hZGVzaW1wbGUub3JnL3Byb2plY3RzL2N1c3RvbWdzDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQ0KIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQ0KIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcg0KIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLg0KIw0KIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwNCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YNCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQ0KIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLg0KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQ0KIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQ0KIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQ0KIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQppZiAoIWlzc2V0KCRnQ21zKSkgZXhpdDsNCg0KY2xhc3MgQ3VzdG9tR1MgZXh0ZW5kcyBDTVNNb2R1bGUNCnsNCglmdW5jdGlvbiBHZXROYW1lKCkNCgl7DQoJCXJldHVybiAnQ3VzdG9tR1MnOw0KCX0NCg0KCWZ1bmN0aW9uIEdldEZyaWVuZGx5TmFtZSgpDQoJew0KCQlyZXR1cm4gJHRoaXMtPkdldFByZWZlcmVuY2UoJ2lucHV0X2N1c3RvbV9tb2R1bGVuYW1lJyk7DQoJfQ0KCQ0KCWZ1bmN0aW9uIEdldFZlcnNpb24oKQ0KCXsNCgkJcmV0dXJuICcxLjUnOw0KCX0NCgkNCglmdW5jdGlvbiBNaW5pbXVtQ01TVmVyc2lvbigpDQoJew0KCQlyZXR1cm4gJzEuMTAnOw0KCX0NCgkNCglmdW5jdGlvbiBHZXRIZWxwKCkNCgl7DQoJCXJldHVybiBmaWxlX2dldF9jb250ZW50cyhkaXJuYW1lKF9fRklMRV9fKS4nL2hlbHBfdGV4dC5pbmMnKTsNCgl9DQoJDQoJZnVuY3Rpb24gR2V0QXV0aG9yKCkNCgl7DQoJCXJldHVybiAnUm9sZiBUamFzc2Vucyc7DQoJfQ0KCQ0KCWZ1bmN0aW9uIEdldEF1dGhvckVtYWlsKCkNCgl7DQoJCXJldHVybiAncm9sZiBhdCBjbXNtYWRlc2ltcGxlIGRvdCBvcmcnOw0KCX0NCgkNCglmdW5jdGlvbiBHZXRDaGFuZ2VMb2coKQ0KCXsNCgkJcmV0dXJuIGZpbGVfZ2V0X2NvbnRlbnRzKGRpcm5hbWUoX19GSUxFX18pLicvY2hhbmdlbG9nLmluYycpOw0KCX0NCgkNCglmdW5jdGlvbiBJc1BsdWdpbk1vZHVsZSgpDQoJew0KCQlyZXR1cm4gdHJ1ZTsNCgl9DQoJDQoJZnVuY3Rpb24gSGFzQWRtaW4oKQ0KCXsNCgkJcmV0dXJuIHRydWU7DQoJfQ0KCQ0KCWZ1bmN0aW9uIEdldEFkbWluU2VjdGlvbigpDQoJew0KCQlyZXR1cm4gJHRoaXMtPkdldFByZWZlcmVuY2UoJ2FkbWluX3NlY3Rpb24nLCAnZXh0ZW5zaW9ucycpOw0KCX0NCgkNCglmdW5jdGlvbiBHZXRBZG1pbkRlc2NyaXB0aW9uKCkNCgl7DQoJCXJldHVybiAkdGhpcy0+TGFuZygnbW9kZGVzY3JpcHRpb24nKTsNCgl9DQoNCglmdW5jdGlvbiBWaXNpYmxlVG9BZG1pblVzZXIoKSANCgl7DQoJCXJldHVybiAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdDdXN0b20gR2xvYmFsIFNldHRpbmdzIC0gTWFuYWdlJykgfHwgJHRoaXMtPkNoZWNrUGVybWlzc2lvbignQ3VzdG9tIEdsb2JhbCBTZXR0aW5ncyAtIFVzZScpOw0KCX0NCg0KCWZ1bmN0aW9uIEdldERlcGVuZGVuY2llcygpDQoJew0KCQlyZXR1cm4gYXJyYXkoKTsNCgl9DQoJDQoJZnVuY3Rpb24gU2V0UGFyYW1ldGVycygpDQoJew0KCQkkdGhpcy0+UmVnaXN0ZXJNb2R1bGVQbHVnaW4oKTsNCgkJJHRoaXMtPlJlc3RyaWN0VW5rbm93blBhcmFtcygpOw0KCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdzaG93dmFycycsMSwnU2V0IHRoaXMgcGFyYW1ldGVyIHRvIHNob3cgYWxsIGF2YWlsYWJsZSB2YXJpYWJsZXMgYW5kIHRoZWlyIHZhbHVlcy4gRm9yIHRlc3RpbmcgcHVycG9zZXMgb25seS4nKTsNCgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ3Nob3d2YXJzJyxDTEVBTl9JTlQpOw0KCX0NCgkNCiAgZnVuY3Rpb24gR2V0RXZlbnREZXNjcmlwdGlvbigkZXZlbnRuYW1lKQ0KICB7DQogICAgcmV0dXJuICR0aGlzLT5MYW5nKCdldmVudF9pbmZvXycuJGV2ZW50bmFtZSApOw0KICB9DQoNCiAgZnVuY3Rpb24gR2V0RXZlbnRIZWxwKCRldmVudG5hbWUpDQogIHsNCiAgICByZXR1cm4gJHRoaXMtPkxhbmcoJ2V2ZW50X2hlbHBfJy4kZXZlbnRuYW1lICk7DQogIH0NCg0KCWZ1bmN0aW9uIEluc3RhbGxQb3N0TWVzc2FnZSgpDQoJew0KCQlyZXR1cm4gJHRoaXMtPkxhbmcoJ3Bvc3RpbnN0YWxsJyk7DQoJfQ0KDQoJZnVuY3Rpb24gVW5pbnN0YWxsUHJlTWVzc2FnZSgpDQoJew0KCQlyZXR1cm4gJHRoaXMtPkxhbmcoJ3VuaW5zdGFsbF9jb25maXJtJyk7DQoJfQ0KCQ0KCWZ1bmN0aW9uIFVuaW5zdGFsbFBvc3RNZXNzYWdlKCkNCgl7DQoJCXJldHVybiAkdGhpcy0+TGFuZygncG9zdHVuaW5zdGFsbCcpOw0KCX0NCg0KCWZ1bmN0aW9uIEdldEhlYWRlckhUTUwoKQ0KCXsNCgkJJHRtcGwgPSA8PDxFT1QNCjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiIGhyZWY9Ii4uL21vZHVsZXMvQ3VzdG9tR1MvbGliL2pxdWVyeS9qcXVlcnktdWkuc21vb3RobmVzcy5jc3MiIG1lZGlhPSJhbGwiIC8+IDwhLS0gc21vb3RobmVzcy9qcXVlcnktdWktMS44LjEyLmN1c3RvbS5jc3MgLS0+DQo8bGluayByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIiBocmVmPSIuLi9tb2R1bGVzL0N1c3RvbUdTL2xpYi9qcXVlcnkvY29sb3JwaWNrZXIuY3NzIiBtZWRpYT0iYWxsIj4NCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Ii4uL21vZHVsZXMvQ3VzdG9tR1MvbGliL2pxdWVyeS9qcXVlcnkudGFibGVkbmQuanMiPjwvc2NyaXB0Pg0KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4NCgkuY21zX2xhYmVsIHsgbWFyZ2luLXJpZ2h0OjEycHg7IH0NCgkuc21hcnR5dmFyIHsgcGFkZGluZzowIDNweDsgY3Vyc29yOnRleHQ7IH0NCgkvKiBjc3MgZm9yIHRpbWVwaWNrZXIgKi8NCgkudWktdGltZXBpY2tlci1kaXYgLnVpLXdpZGdldC1oZWFkZXIgeyBtYXJnaW4tYm90dG9tOiA4cHg7IH0NCgkudWktdGltZXBpY2tlci1kaXYgZGwgeyB0ZXh0LWFsaWduOiBsZWZ0OyB9DQoJLnVpLXRpbWVwaWNrZXItZGl2IGRsIGR0IHsgaGVpZ2h0OiAyNXB4OyBtYXJnaW4tYm90dG9tOiAtMjVweDsgfQ0KCS51aS10aW1lcGlja2VyLWRpdiBkbCBkZCB7IG1hcmdpbjogMCAxMHB4IDEwcHggNjVweDsgfQ0KCS51aS10aW1lcGlja2VyLWRpdiB0ZCB7IGZvbnQtc2l6ZTogOTAlOyB9DQoJLnVpLXRwaWNrZXItZ3JpZC1sYWJlbCB7IGJhY2tncm91bmQ6IG5vbmU7IGJvcmRlcjogbm9uZTsgbWFyZ2luOiAwOyBwYWRkaW5nOiAwOyB9DQoNCgkuY2dzX2ZpZWxkc2V0IHsNCgkJCW1hcmdpbi10b3A6MTBweDsNCgkJCXBhZGRpbmctdG9wOjA7DQoJCQlwYWRkaW5nLWJvdHRvbToxMHB4Ow0KCX0NCg0KCS5jb2xsYXBzZS1vcGVuIHNwYW4gew0KCQkJZGlzcGxheTppbmxpbmUtYmxvY2s7DQoJCQl3aWR0aDoxNHB4Ow0KCQkJaGVpZ2h0OjE0cHg7DQoJCQliYWNrZ3JvdW5kOnVybCguLi9tb2R1bGVzL0N1c3RvbUdTL2xpYi9qcXVlcnkvaW1hZ2VzL3VpLWljb25zXzQ1NDU0NV8yNTZ4MjQwLnBuZykgLTE4cHggLTE5MnB4IG5vLXJlcGVhdDsNCgl9DQoNCgkuY29sbGFwc2UtY2xvc2Ugc3BhbiB7DQoJCQlkaXNwbGF5OmlubGluZS1ibG9jazsNCgkJCXdpZHRoOjE0cHg7DQoJCQloZWlnaHQ6MTRweDsNCgkJCWJhY2tncm91bmQ6dXJsKC4uL21vZHVsZXMvQ3VzdG9tR1MvbGliL2pxdWVyeS9pbWFnZXMvdWktaWNvbnNfNDU0NTQ1XzI1NngyNDAucG5nKSAtMnB4IC0xOTJweCBuby1yZXBlYXQ7DQoJfQ0KPC9zdHlsZT4NCkVPVDsNCgkJcmV0dXJuICR0bXBsOw0KCX0NCg0KCS8qKg0KCSogTWV0aG9kIHRvIGdldCBwYXJhbWV0ZXJzIG9mIGEgZmllbGQgYnkgbmFtZSBvciBieSBmaWVsZGlkDQoJKg0KCSogQGZpbmFsDQoJKiBAYWNjZXNzIHB1YmxpYw0KCSogQHJldHVybiBhcnJheSgpDQoJKi8NCglmdW5jdGlvbiBHZXRGaWVsZCgkZmllbGQpDQoJew0KCQkkZGIgPSBjbXNtcygpLT5HZXREQigpOw0KCQkkcXVlcnkgPSAiU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2N1c3RvbWdzIFdIRVJFIGZpZWxkaWQ9PyBPUiBuYW1lPT8iOw0KCQkkcmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSwgYXJyYXkoJGZpZWxkLCAkZmllbGQpKTsNCgkJaWYoICRyZXN1bHQgJiYgJHJlc3VsdC0+UmVjb3JkQ291bnQoKSA+IDAgKQ0KCQl7DQoJCQkkcm93ID0gJHJlc3VsdC0+RmV0Y2hSb3coKTsNCgkJfQ0KCQllbHNlDQoJCXsNCgkJCSRyb3cgPSBGQUxTRTsNCgkJfQ0KCQlyZXR1cm4gJHJvdzsNCgl9DQoNCgkvKioNCgkqIE1ldGhvZCB0byBnZXQgYWxsIHNldHRpbmdzDQoJKg0KCSogQGZpbmFsDQoJKiBAYWNjZXNzIHB1YmxpYw0KCSogQHJldHVybiBhcnJheSgpDQoJKi8NCglmdW5jdGlvbiBHZXRTZXR0aW5ncygkcGFyc2VTbWFydHkgPSB0cnVlKQ0KCXsNCgkJJGZpZWxkcyA9IGFycmF5KCk7DQoJCQ0KCQkkc21hcnR5ID0gY21zbXMoKS0+R2V0U21hcnR5KCk7DQoJCSRkYiA9IGNtc21zKCktPkdldERCKCk7DQoJCSRxdWVyeSA9ICJTRUxFQ1QgKiBGUk9NICIgLiBjbXNfZGJfcHJlZml4KCkgLiAibW9kdWxlX2N1c3RvbWdzIjsNCgkJJHJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkcXVlcnkpOw0KCQlpZiAoICRyZXN1bHQgJiYgJHJlc3VsdC0+UmVjb3JkQ291bnQoKSA+IDAgKQ0KCQl7DQoJCQl3aGlsZSAoICRyb3c9JHJlc3VsdC0+RmV0Y2hSb3coKSApDQoJCQl7DQoJCQkJaWYgKCAkcm93Wyd0eXBlJ10gIT0gJ2ZpZWxkc2V0c3RhcnQnICYmICRyb3dbJ3R5cGUnXSAhPSAnZmllbGRzZXRlbmQnICkNCgkJCQl7DQoJCQkJCSRhbGlhcyA9IHN0cl9yZXBsYWNlKCdfXycsICdfJywgc3RyX3JlcGxhY2UoJy0nLCAnXycsIG11bmdlX3N0cmluZ190b191cmwoJHJvd1snbmFtZSddKSkpOw0KCQkJCQlpZiAoICRyb3dbJ3R5cGUnXSA9PSAnY29sb3JwaWNrZXInICkNCgkJCQkJew0KCQkJCQkJJGZpZWxkc1skYWxpYXNdID0gIiMiLiRyb3dbJ3ZhbHVlJ107DQoJCQkJCX0NCgkJCQkJZWxzZWlmICggJHBhcnNlU21hcnR5ICYmICgkcm93Wyd0eXBlJ10gPT0gJ3RleHRhcmVhJyB8fCAkcm93Wyd0eXBlJ10gPT0gJ3d5c2l3eWcnKSAmJiAkcm93Wydwcm9wZXJ0aWVzJ10gKQ0KCQkJCQl7DQoJCQkJCQlnbG9iYWwgJENNU19WRVJTSU9OOw0KCQkJCQkJaWYgKCAkQ01TX1ZFUlNJT04gPj0gJzEuMTEnICkNCgkJCQkJCXsNCgkJCQkJCQkkZmllbGRzWyRhbGlhc10gPSAkc21hcnR5LT5mZXRjaCgnc3RyaW5nOicuJHJvd1sndmFsdWUnXSk7DQoJCQkJCQl9DQoJCQkJCQllbHNlDQoJCQkJCQl7DQoJCQkJCQkJJGZpZWxkc1skYWxpYXNdID0gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhKCRyb3dbJ3ZhbHVlJ10pOw0KCQkJCQkJfQ0KCQkJCQl9DQoJCQkJCWVsc2UNCgkJCQkJew0KCQkJCQkJJGZpZWxkc1skYWxpYXNdID0gJHJvd1sndmFsdWUnXTsNCgkJCQkJfQ0KCQkJCQkkZmllbGRzWyRyb3dbJ2ZpZWxkaWQnXV0gPSAkZmllbGRzWyRhbGlhc107DQoJCQkJfQ0KCQkJfQ0KCQl9DQoJCXJldHVybiAkZmllbGRzOw0KCX0NCg0KCS8qKg0KCSogTWV0aG9kIHRvIGNsZWFyIHRoZSBjb21iaW5lZCBzdHlsZXNoZWV0IGNhY2hlDQoJKg0KCSogQGZpbmFsDQoJKiBAYWNjZXNzIHByaXZhdGUNCgkqIEByZXR1cm4gdm9pZA0KCSovDQoJZnVuY3Rpb24gQ2xlYXJTdHlsZXNoZWV0Q2FjaGUoKQ0KCXsNCgkJZm9yZWFjaCAoZ2xvYigiLi4vdG1wL2NhY2hlL3N0eWxlc2hlZXRfY29tYmluZWRfKi5jc3MiKSBhcyAkZmlsZW5hbWUpIHsNCgkJCUB1bmxpbmsoJGZpbGVuYW1lKTsNCgkJfQ0KCX0NCg0KfQ0KPz4=]]></data>
	</file>
	<file>
	  <filename>/function.admin_fielddefs.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEN1c3RvbSBHbG9iYWwgU2V0dGluZ3MKIyBBdXRob3I6IFJvbGYgVGphc3NlbnMsIEpvcwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAxMSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIyBUaGUgbW9kdWxlJ3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvY3VzdG9tZ3MKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgppZiAoIWlzc2V0KCRnQ21zKSkgZXhpdDsKCmlmKCAhJHRoaXMtPkNoZWNrUGVybWlzc2lvbignQ3VzdG9tIEdsb2JhbCBTZXR0aW5ncyAtIE1hbmFnZScpICkKewoJZWNobyAkdGhpcy0+U2hvd0Vycm9ycyhsYW5nKCduZWVkcGVybWlzc2lvbnRvJywgJ0N1c3RvbSBHbG9iYWwgU2V0dGluZ3MgLSBNYW5hZ2UnKSk7CglyZXR1cm47Cn0KCgokdGhlbWVPYmplY3QgPSBjbXNtcygpLT52YXJpYWJsZXNbJ2FkbWludGhlbWUnXTsKCiRyb3dhcnJheSA9IGFycmF5KCk7CgokZGIgPSAkdGhpcy0+R2V0REIoKTsKJHF1ZXJ5ID0gIlNFTEVDVAoJCQkJCQkqCgkJCQkJRlJPTQoJCQkJCQkiIC4gY21zX2RiX3ByZWZpeCgpIC4gIm1vZHVsZV9jdXN0b21ncwoJCQkJCU9SREVSIEJZCgkJCQkJCXNvcnRvcmRlciBBU0MiOwokcmVzdWx0ID0gJGRiLT5HZXRBbGwoJHF1ZXJ5KTsKJHJvd2NvdW50ID0gY291bnQoJHJlc3VsdCk7CgppZiAoICRyZXN1bHQgJiYgJHJvd2NvdW50ID4gMCApCnsKCSRyb3djbGFzcyA9ICdyb3cxJzsKCWZvcmVhY2ggKCAkcmVzdWx0IGFzICRrZXkgPT4gJGRlZiApCgl7CgkJJHJvdyA9IG5ldyBTdGRDbGFzcygpOwoJCSRyb3ctPmZpZWxkaWQgPSAkZGVmWydmaWVsZGlkJ107CgkJJHJvdy0+bmFtZSA9ICRkZWZbJ3R5cGUnXSA9PSAnZmllbGRzZXRlbmQnID8gJGRlZlsnbmFtZSddIDogJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCAnZWRpdGZpZWxkZGVmJywgJHJldHVybmlkLCAkZGVmWyduYW1lJ10sIGFycmF5KCdmaWVsZGlkJyA9PiAkZGVmWydmaWVsZGlkJ10sICdtb2RlJz0+J2VkaXQnKSk7CgkJJGFsaWFzID0gc3RyX3JlcGxhY2UoJ19fJywgJ18nLCBzdHJfcmVwbGFjZSgnLScsICdfJywgbXVuZ2Vfc3RyaW5nX3RvX3VybCgkZGVmWyduYW1lJ10pKSk7CgkJJHJvdy0+c21hcnR5dmFyID0gJyc7CQoJCWlmICggJGRlZlsndHlwZSddICE9ICdmaWVsZHNldHN0YXJ0JyAmJiAkZGVmWyd0eXBlJ10gIT0gJ2ZpZWxkc2V0ZW5kJyApCgkJewoJCQkkcm93LT5zbWFydHl2YXIgPSAneyRDdXN0b21HUy4nIC4gJGFsaWFzIC4gJ30nOwkJCQoJCX0KCQkvLyRyb3ctPmhlbHAgPSAkZGVmWydoZWxwJ107CgkJJHJvdy0+dHlwZSA9ICR0aGlzLT5MYW5nKCRkZWZbJ3R5cGUnXSk7CgkJaWYgKCAkZGVmWyd0eXBlJ10gPT0gJ2diZmlsZXBpY2tlcicgKQoJCXsKCQkJaWYgKCAkZ2JmcCA9IGNtc191dGlsczo6Z2V0X21vZHVsZSgnR0JGaWxlUGlja2VyJykgKQoJCQl7CgkJCQkkcm93LT50eXBlID0gJGdiZnAtPkdldEZyaWVuZGx5TmFtZSgpOwoJCQl9CgkJCWVsc2UKCQkJewoJCQkJJHJvdy0+dHlwZSA9ICdHQkZpbGVQaWNrZXIgKCcgLiBsYW5nKCdub3RpbnN0YWxsZWQnKSAuICcpJzsKCQkJfQoJCX0KCQkKCQlpZiAoICRkZWZbJ3NvcnRvcmRlciddID4gMSApCgkJewoJCQkkcm93LT5tb3ZldXAgPSAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdlZGl0ZmllbGRkZWYnLCAkcmV0dXJuaWQsICRnQ21zLT52YXJpYWJsZXNbJ2FkbWludGhlbWUnXS0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vYXJyb3ctdS5naWYnLCBsYW5nKCd1cCcpLCcnLCcnLCdzeXN0ZW1pY29uJyksIGFycmF5KCdmaWVsZGlkJyA9PiAkZGVmWydmaWVsZGlkJ10sICdtb2RlJz0+J21vdmV1cCcpKTsKCQl9CgkJZWxzZQoJCXsKCQkJJHJvdy0+bW92ZXVwID0gJyc7CgkJfQoJCQoJCWlmICggJGtleSA8ICRyb3djb3VudCAtIDEgJiYgJHJlc3VsdFska2V5KzFdWydzb3J0b3JkZXInXSAhPSAxICkKCQl7CgkJCSRyb3ctPm1vdmVkb3duID0gJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCAnZWRpdGZpZWxkZGVmJywgJHJldHVybmlkLCAkZ0Ntcy0+dmFyaWFibGVzWydhZG1pbnRoZW1lJ10tPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL2Fycm93LWQuZ2lmJywgbGFuZygnZG93bicpLCcnLCcnLCdzeXN0ZW1pY29uJyksIGFycmF5KCdmaWVsZGlkJyA9PiAkZGVmWydmaWVsZGlkJ10sICdtb2RlJz0+J21vdmVkb3duJykpOwoJCX0KCQllbHNlCgkJewoJCQkkcm93LT5tb3ZlZG93biA9ICcnOwoJCX0KCQkKCQkkcm93LT5lZGl0bGluayA9ICcnOwoJCSRyb3ctPmRlbGV0ZWxpbmsgPSAnJzsKCQlpZiAoICRkZWZbJ3R5cGUnXSAhPSAnZmllbGRzZXRlbmQnICkKCQl7CgkJCSRyb3ctPmVkaXRsaW5rID0gJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCAnZWRpdGZpZWxkZGVmJywgJHJldHVybmlkLAoJCQkJICAgICRnQ21zLT52YXJpYWJsZXNbJ2FkbWludGhlbWUnXS0+RGlzcGxheUltYWdlICgnaWNvbnMvc3lzdGVtL2VkaXQuZ2lmJywgbGFuZyAoJ2VkaXQnKSwgJycsICcnLCAnc3lzdGVtaWNvbicpLAoJCQkJICAgIGFycmF5ICgnZmllbGRpZCcgPT4gJGRlZlsnZmllbGRpZCddLCAnbW9kZSc9PidlZGl0JykpOwoJCQkkcm93LT5kZWxldGVsaW5rID0gJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCAnZWRpdGZpZWxkZGVmJywgJHJldHVybmlkLAoJCQkJCSAgJGdDbXMtPnZhcmlhYmxlc1snYWRtaW50aGVtZSddLT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9kZWxldGUuZ2lmJywgbGFuZyAoJ2RlbGV0ZScpLCAnJywgJycsICdzeXN0ZW1pY29uJyksCgkJCQkJICBhcnJheSAoJ2ZpZWxkaWQnID0+ICRkZWZbJ2ZpZWxkaWQnXSwgJ21vZGUnPT4nZGVsZXRlJyksIGxhbmcgKCdkZWxldGVjb25maXJtJywkZGVmWyduYW1lJ10pKTsKCQl9CgoJCWFycmF5X3B1c2ggKCRyb3dhcnJheSwgJHJvdyk7Cgl9Cn0KaWYgKCAkcmVzdWx0ID09PSBGQUxTRSApCnsKCWVjaG8gJ0VSUk9SOiAnIC4gbXlzcWxfZXJyb3IoKTsKCWV4aXQoKTsKfQoKJHNtYXJ0eS0+YXNzaWduKCdpdGVtcycsICRyb3dhcnJheSApOwokc21hcnR5LT5hc3NpZ24oJ25hbWUnLCBsYW5nKCduYW1lJykpOwokc21hcnR5LT5hc3NpZ24oJ3NtYXJ0eXZhcicsICR0aGlzLT5MYW5nKCdzbWFydHl2YXInKSk7CiRzbWFydHktPmFzc2lnbigndHlwZScsIGxhbmcoJ3R5cGUnKSk7Ci8vJHNtYXJ0eS0+YXNzaWduKCdoZWxwJywgbGFuZygnaGVscCcpKTsKCiRzbWFydHktPmFzc2lnbignbmV3ZmllbGRkZWZsaW5rJywKCSAgJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCAnZWRpdGZpZWxkZGVmJywgJHJldHVybmlkLAoJCQkgICAgICRnQ21zLT52YXJpYWJsZXNbJ2FkbWludGhlbWUnXS0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vbmV3Zm9sZGVyLmdpZicsIGxhbmcoJ2FkZCcpLCcnLCcnLCdzeXN0ZW1pY29uJyksCgkJCSAgICAgYXJyYXkoJ21vZGUnID0+ICdhZGQnKSwgJycsIGZhbHNlLCBmYWxzZSwgJycpLicgJy4KCgkgICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwgJ2VkaXRmaWVsZGRlZicsICRyZXR1cm5pZCwKCQkJICAgICBsYW5nKCdhZGQnKSwKCQkJICAgICBhcnJheSgnbW9kZScgPT4gJ2FkZCcpKSk7Cgokc21hcnR5LT5hc3NpZ24oJ2Zvcm1zdGFydCcsICR0aGlzLT5DcmVhdGVGb3JtU3RhcnQgKCRpZCwgJ2VkaXRmaWVsZGRlZicsICRyZXR1cm5pZCwgJ3Bvc3QnKSk7CiRzbWFydHktPmFzc2lnbignZm9ybWVuZCcsJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7Cgokc21hcnR5LT5hc3NpZ24oJ3N1Ym1pdCcsICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsICdzdWJtaXQnLCBsYW5nKCdzdWJtaXQnKSkpOwokc21hcnR5LT5hc3NpZ24oJ2NhbmNlbCcsICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsICdjYW5jZWwnLCBsYW5nICgnY2FuY2VsJykpKTsKCiRzbWFydHktPmFzc2lnbignbW9kX2lkJywgJGlkKTsKJHNtYXJ0eS0+YXNzaWduKCdhamF4X3VybCcsIGh0bWxfZW50aXR5X2RlY29kZSgkdGhpcy0+Y3JlYXRlX3VybCgkaWQsICdlZGl0ZmllbGRkZWYnLCAkcmV0dXJuaWQsIGFycmF5KCdtb2RlJyA9PiAnc29ydCcpKSkpOwoKZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCdhZG1pbl9maWVsZGRlZnMudHBsJyk7Cgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/function.admin_general.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEN1c3RvbSBHbG9iYWwgU2V0dGluZ3MKIyBBdXRob3I6IFJvbGYgVGphc3NlbnMsIEpvcwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAxMSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIyBUaGUgbW9kdWxlJ3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvY3VzdG9tZ3MKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgppZiAoIWlzc2V0KCRnQ21zKSkgZXhpdDsKCmlmKCAhJHRoaXMtPkNoZWNrUGVybWlzc2lvbignQ3VzdG9tIEdsb2JhbCBTZXR0aW5ncyAtIFVzZScpICkKewoJZWNobyAkdGhpcy0+U2hvd0Vycm9ycyhsYW5nKCduZWVkcGVybWlzc2lvbnRvJywgJ0N1c3RvbSBHbG9iYWwgU2V0dGluZ3MgLSBVc2UnKSk7CglyZXR1cm47Cn0KCiR1c2VyaWQgPSBnZXRfdXNlcmlkKCk7CiR1c2Vyb3BzID0gY21zbXMoKS0+R2V0VXNlck9wZXJhdGlvbnMoKTsKJGFkbWlucGVybSA9ICR1c2Vyb3BzLT5Vc2VySW5Hcm91cCgkdXNlcmlkLCAxKTsgLy8gaXMgYWRtaW4KCiRyb3dhcnJheSA9IGFycmF5KCk7CgokZGIgPSAkdGhpcy0+R2V0REIoKTsKJHF1ZXJ5ID0gIlNFTEVDVCAqIEZST00gIiAuIGNtc19kYl9wcmVmaXgoKSAuICJtb2R1bGVfY3VzdG9tZ3MgT1JERVIgQlkgc29ydG9yZGVyIEFTQyI7CiRyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5KTsKaWYgKCAkcmVzdWx0ICYmICRyZXN1bHQtPlJlY29yZENvdW50KCkgPiAwICkKewoJd2hpbGUgKCAkcm93PSRyZXN1bHQtPkZldGNoUm93KCkgKQoJewoJCS8vIGNoZWNrIGVkaXRvciBwZXJtaXNzaW9ucwoJCSRlZGl0cGVybSA9IEZBTFNFOwoJCWlmICggISRhZG1pbnBlcm0gJiYgIWVtcHR5KCRyb3dbJ2VkaXRvcnMnXSkgKQoJCXsKCQkJJGVkaXRvcnMgPSBleHBsb2RlKCc7JywgJHJvd1snZWRpdG9ycyddKTsKCQkJZm9yZWFjaCAoJGVkaXRvcnMgYXMgJGVkaXRvcikKCQkJewoJCQkJJGVkaXRwZXJtID0gJGVkaXRwZXJtIHx8ICR1c2Vyb3BzLT5Vc2VySW5Hcm91cCgkdXNlcmlkLCAkZWRpdG9yKTsKCQkJfQoJCX0KCQllbHNlCgkJewoJCQkkZWRpdHBlcm0gPSBUUlVFOwoJCX0KCQlpZiAoICRlZGl0cGVybSApCgkJewoJCQkkb25lcm93ID0gbmV3IHN0ZENsYXNzKCk7CgoJCQkkb25lcm93LT5maWVsZGlkID0gJHJvd1snZmllbGRpZCddOwoJCQkkb25lcm93LT5uYW1lID0gJHJvd1snbmFtZSddOwoJCQkkb25lcm93LT50eXBlID0gJHJvd1sndHlwZSddOwoJCQkkb25lcm93LT5oZWxwID0gJHJvd1snaGVscCddOwoJCQkkb25lcm93LT52YWx1ZSA9ICRyb3dbJ3ZhbHVlJ107CgkJCSRvbmVyb3ctPmZpZWxkY2xhc3MgPSAnJzsKCgkJCSRmaWVsZG5hbWUgPSAnZmllbGRbJyAuICRyb3dbJ2ZpZWxkaWQnXSAuICddJzsKCQkJc3dpdGNoICggJHJvd1sndHlwZSddICkKCQkJewoJCQkJY2FzZSAndGV4dGZpZWxkJzoKCQkJCQkkc2l6ZSA9IG1pbig1MCwgJHJvd1sncHJvcGVydGllcyddKTsKCQkJCQkkb25lcm93LT5maWVsZGh0bWwgPSAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwgJGZpZWxkbmFtZSwgJHJvd1sndmFsdWUnXSwgJHNpemUsICRyb3dbJ3Byb3BlcnRpZXMnXSApOwoJCQkJCWJyZWFrOwoKCQkJCWNhc2UgJ3B1bGxkb3duJzoKCQkJCWNhc2UgJ3JhZGlvYnV0dG9ucyc6CgkJCQkJLy8gbGV0cyBwYXJzZSB0aGlzIGJ5IHNtYXJ0eSBmaXJzdAoJCQkJCWdsb2JhbCAkQ01TX1ZFUlNJT047CgkJCQkJaWYgKCAkQ01TX1ZFUlNJT04gPj0gJzEuMTEnICkKCQkJCQl7CgkJCQkJCSRyb3dbJ3Byb3BlcnRpZXMnXSA9ICRzbWFydHktPmZldGNoKCdldmFsOicuJHJvd1sncHJvcGVydGllcyddKTsKCQkJCQl9CgkJCQkJZWxzZQoJCQkJCXsKCQkJCQkJJHJvd1sncHJvcGVydGllcyddID0gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhKCRyb3dbJ3Byb3BlcnRpZXMnXSk7CgkJCQkJfQoJCQkJCSRyb3dbJ3Byb3BlcnRpZXMnXSA9IHByZWdfcmVwbGFjZSgnIzwhLS0oLispLS0+I2lzJywgJycsICRyb3dbJ3Byb3BlcnRpZXMnXSk7IC8vIGZpbHRlciBvdXQgaHRtbCBjb21tZW50cwoJCQkJCSRyb3dbJ3Byb3BlcnRpZXMnXSA9IHN0cl9yZXBsYWNlKCJcciIsICJcbiIsICRyb3dbJ3Byb3BlcnRpZXMnXSk7CgkJCQkJJHJvd1sncHJvcGVydGllcyddID0gc3RyX3JlcGxhY2UoIlxuXG4iLCAiXG4iLCAkcm93Wydwcm9wZXJ0aWVzJ10pOwoJCQkJCSRyb3dbJ3Byb3BlcnRpZXMnXSA9IHRyaW0oJHJvd1sncHJvcGVydGllcyddKTsKCQkJCQkkcHJvcGVydGllcyA9IGV4cGxvZGUoIlxuIiwgJHJvd1sncHJvcGVydGllcyddKTsKCQkJCQkkaXRlbXMgPSBhcnJheSgpOwoJCQkJCWZvcmVhY2ggKCRwcm9wZXJ0aWVzIGFzICRwcm9wZXJ0eSkKCQkJCQl7CgkJCQkJCWxpc3QoJGtleSwgJHZhbHVlKSA9IGV4cGxvZGUoInwiLCAkcHJvcGVydHkgLiAifCIpOwoJCQkJCQkkdmFsdWUgPSB0cmltKCR2YWx1ZSkgPT0gIiIgPyAka2V5IDogJHZhbHVlOwoJCQkJCQkkaXRlbXNbJHZhbHVlXSA9ICRrZXk7CgkJCQkJfQoJCQkJCWlmICggJHJvd1sndHlwZSddID09ICdwdWxsZG93bicgKQoJCQkJCXsKCQkJCQkJJG9uZXJvdy0+ZmllbGRodG1sID0gJHRoaXMtPkNyZWF0ZUlucHV0RHJvcGRvd24oJGlkLCAkZmllbGRuYW1lLCAkaXRlbXMsIC0xLCAkcm93Wyd2YWx1ZSddKTsKCQkJCQl9CgkJCQkJZWxzZQoJCQkJCXsKCQkJCQkJJG9uZXJvdy0+ZmllbGRodG1sID0gJHRoaXMtPkNyZWF0ZUlucHV0UmFkaW9Hcm91cCgkaWQsICRmaWVsZG5hbWUsICRpdGVtcywgJHJvd1sndmFsdWUnXSk7CgkJCQkJfQoJCQkJCWJyZWFrOwoKCQkJCWNhc2UgJ2NoZWNrYm94JzoKCQkJCQkkb25lcm93LT5maWVsZGh0bWwgPSAkdGhpcy0+Q3JlYXRlSW5wdXRDaGVja2JveCgkaWQsICRmaWVsZG5hbWUsICcxJywgJHJvd1sndmFsdWUnXSwgJycpOwoJCQkJCWJyZWFrOwoKCQkJCWNhc2UgJ2RhdGVwaWNrZXInOgoJCQkJY2FzZSAndGltZXBpY2tlcic6CgkJCQkJJG9uZXJvdy0+ZmllbGRodG1sID0gJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsICRmaWVsZG5hbWUsICRyb3dbJ3ZhbHVlJ10sIDEwLCAxMCk7CgkJCQkJJG9uZXJvdy0+ZmllbGRjbGFzcyA9ICcgJyAuICRyb3dbJ3R5cGUnXTsKCQkJCQlicmVhazsKCgkJCQljYXNlICdkYXRldGltZXBpY2tlcic6CgkJCQkJJG9uZXJvdy0+ZmllbGRodG1sID0gJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsICRmaWVsZG5hbWUsICRyb3dbJ3ZhbHVlJ10sIDE2LCAyMCk7CgkJCQkJJG9uZXJvdy0+ZmllbGRjbGFzcyA9ICcgJyAuICRyb3dbJ3R5cGUnXTsKCQkJCQlicmVhazsKCgkJCQljYXNlICd0ZXh0YXJlYSc6CgkJCQkJJG9uZXJvdy0+ZmllbGRodG1sID0gJHRoaXMtPkNyZWF0ZVRleHRBcmVhKEZBTFNFLCAkaWQsICRyb3dbJ3ZhbHVlJ10sICRmaWVsZG5hbWUpOwoJCQkJCWJyZWFrOwoKCQkJCWNhc2UgJ3d5c2l3eWcnOgoJCQkJCSRvbmVyb3ctPmZpZWxkaHRtbCA9ICR0aGlzLT5DcmVhdGVUZXh0QXJlYShUUlVFLCAkaWQsICRyb3dbJ3ZhbHVlJ10sICRmaWVsZG5hbWUpOwoJCQkJCWJyZWFrOwoKCQkJCWNhc2UgJ2J1dHRvbic6CgkJCQkJJG9uZXJvdy0+ZmllbGRodG1sID0gJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwgJGZpZWxkbmFtZSwgJHJvd1snbmFtZSddKTsKCQkJCQlicmVhazsKCgkJCQljYXNlICdnYmZpbGVwaWNrZXInOgoJCQkJCSRvbmVyb3ctPmZpZWxkaHRtbCA9ICcnOwoJCQkJCSRnYmZwID0gY21zX3V0aWxzOjpnZXRfbW9kdWxlKCdHQkZpbGVQaWNrZXInKTsKCQkJCQlpZiAoICRnYmZwICkKCQkJCQl7CgkJCQkJCSRvbmVyb3ctPmZpZWxkaHRtbCA9ICRnYmZwLT5DcmVhdGVGaWxlUGlja2VySW5wdXQoJGdiZnAsICRpZCwgJGZpZWxkbmFtZSwgJHJvd1sndmFsdWUnXSwgYXJyYXkoJ2Rpcic9PidpbWFnZXMnLCdtb2RlJz0+J2Jyb3dzZXInKSk7CgkJCQkJfQoJCQkJCWJyZWFrOwoKCQkJCWNhc2UgJ2NvbG9ycGlja2VyJzoKCQkJCQkkb25lcm93LT5maWVsZGh0bWwgPSAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwgJGZpZWxkbmFtZSwgJHJvd1sndmFsdWUnXSwgMTAsIDEwKTsKCQkJCQkkb25lcm93LT5maWVsZGNsYXNzID0gJyBpbnB1dGNvbG9ycGlja2VyJzsKCQkJCQlicmVhazsKCgkJCQljYXNlICdmaWVsZHNldHN0YXJ0JzoKCQkJCQkvLyRvbmVyb3ctPmZpZWxkaHRtbCA9ICR0aGlzLT5DcmVhdGVGaWVsZHNldFN0YXJ0KCRpZCwgJGZpZWxkbmFtZSwgJHJvd1snbmFtZSddKTsKCQkJCQkkb25lcm93LT5maWVsZGh0bWwgPSAnPGZpZWxkc2V0IGNsYXNzPSJjZ3NfZmllbGRzZXQiPjxsZWdlbmQgY2xhc3M9ImNnc19jb2xsYXBzaWJsZSIgaWQ9InNlY3Rpb24nIC4gJHJvd1snZmllbGRpZCddIC4gJyI+PHNwYW4+PC9zcGFuPiAnIC4gJHJvd1snbmFtZSddIC4gJzwvbGVnZW5kPjxkaXY+JzsKCQkJCQlicmVhazsKCgkJCQljYXNlICdmaWVsZHNldGVuZCc6CgkJCQkJLy8kb25lcm93LT5maWVsZGh0bWwgPSAkdGhpcy0+Q3JlYXRlRmllbGRzZXRFbmQoKTsKCQkJCQkkb25lcm93LT5maWVsZGh0bWwgPSAnPC9kaXY+PC9maWVsZHNldD4gPCEtLSBlbmQgY2dzX2NvbGxhcHNpYmxlIC0tPic7CgkJCQkJYnJlYWs7CgkJCX0KCgkJCWFycmF5X3B1c2ggKCRyb3dhcnJheSwgJG9uZXJvdyk7CgkJfQoJfQp9Cgokc21hcnR5LT5hc3NpZ24oJ2l0ZW1zJywgJHJvd2FycmF5ICk7CiRzbWFydHktPmFzc2lnbignc3VibWl0JywkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQgKCRpZCwgJ3N1Ym1pdGJ1dHRvbicsIGxhbmcoJ3N1Ym1pdCcpKSk7CiRzbWFydHktPmFzc2lnbignY2FuY2VsJywkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQgKCRpZCwgJ2NhbmNlbCcsIGxhbmcoJ2NhbmNlbCcpKSk7CiRzbWFydHktPmFzc2lnbignc3RhcnRmb3JtJywgJHRoaXMtPkNyZWF0ZUZvcm1TdGFydCggJGlkLCAnc2F2ZV9nZW5lcmFsJywgJHJldHVybmlkICkpOwokc21hcnR5LT5hc3NpZ24oJ2VuZGZvcm0nLCAkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsKCmlmICggZnVuY3Rpb25fZXhpc3RzKCdjbXNfYWRtaW5fY3VycmVudF9sYW5ndWFnZScpICkgc2V0bG9jYWxlKExDX1RJTUUsIGNtc19hZG1pbl9jdXJyZW50X2xhbmd1YWdlKCkpOyAvLyBmb3IgY21zbXMgMS4xMCBvbmx5CmZvciAoJGkgPSAxOyAkaSA8PSAxMjsgJGkrKykKewoJJHRpbWVzdGFtcD1ta3RpbWUoMSwxLDEsJGksMSwyMDAwKTsKCSRtb250aHNbXSA9IGh0bWxlbnRpdGllcyhzdHJmdGltZSgnJUInLCAkdGltZXN0YW1wKSk7Cn0KJG1vbnRobmFtZXMgPSBpbXBsb2RlKCInLCciLCRtb250aHMpOwpmb3IgKCRpID0gMTsgJGkgPD0gNzsgJGkrKykKewoJJHRpbWVzdGFtcD1ta3RpbWUoMSwxLDEsMTAsJGksMjAwMCk7CgkkZGF5c1tdID0gaHRtbGVudGl0aWVzKHN0cmZ0aW1lKCclQScsICR0aW1lc3RhbXApKTsKCSRkYXlzbWluW10gPSBodG1sZW50aXRpZXMoc3Vic3RyKHN0cmZ0aW1lKCclYScsICR0aW1lc3RhbXApLCAwLCAyKSk7Cn0KJGRheW5hbWVzID0gaW1wbG9kZSgiJywnIiwkZGF5cyk7CiRkYXluYW1lc21pbiA9IGltcGxvZGUoIicsJyIsJGRheXNtaW4pOwoKJERQX2xvY2FsZSA9ICIKCSQuZGF0ZXBpY2tlci5yZWdpb25hbFsnJ10gPSB7CgkJY2xvc2VUZXh0OiAnIiAuIGxhbmcoJ2Nsb3NlJykgLiAiJywKCQlwcmV2VGV4dDogJyIgLiBsYW5nKCdwcmV2aW91cycpIC4gIicsCgkJbmV4dFRleHQ6ICciIC4gbGFuZygnbmV4dCcpIC4gIicsCgkJY3VycmVudFRleHQ6ICciIC4gJHRoaXMtPkxhbmcoJ25vdycpIC4gIicsCgkJbW9udGhOYW1lczogWyciIC4gJG1vbnRobmFtZXMgLiAiJ10sCgkJZGF5TmFtZXM6IFsnIiAuICRkYXluYW1lcyAuICInXSwKCQlkYXlOYW1lc01pbjogWyciIC4gJGRheW5hbWVzbWluIC4gIiddLAoJCWRhdGVGb3JtYXQ6ICd5eXl5LW1tLWRkJywKCQlmaXJzdERheTogMSwKCQlpc1JUTDogZmFsc2UsCgkJc2hvd01vbnRoQWZ0ZXJZZWFyOiBmYWxzZSwKCQl5ZWFyU3VmZml4OiAnJwoJfTsKCSQuZGF0ZXBpY2tlci5zZXREZWZhdWx0cygkLmRhdGVwaWNrZXIucmVnaW9uYWxbJyddKTsKCgkkLnRpbWVwaWNrZXIucmVnaW9uYWxbJyddID0gewoJCXRpbWVPbmx5VGl0bGU6ICciIC4gJHRoaXMtPkxhbmcoJ2Nob29zZXRpbWUnKSAuICInLAoJCXRpbWVUZXh0OiAnIiAuICR0aGlzLT5MYW5nKCd0aW1lJykgLiAiJywKCQlob3VyVGV4dDogJyIgLiBsYW5nKCdob3VyJykgLiAiJywKCQltaW51dGVUZXh0OiAnIiAuIGxhbmcoJ21pbnV0ZXMnKSAuICInLAoJCWN1cnJlbnRUZXh0OiAnIiAuICR0aGlzLT5MYW5nKCdub3cnKSAuICInLAoJCWNsb3NlVGV4dDogJyIgLiBsYW5nKCdjbG9zZScpIC4gIicsCgkJYW1wbTogZmFsc2UKCX07CgkkLnRpbWVwaWNrZXIuc2V0RGVmYXVsdHMoJC50aW1lcGlja2VyLnJlZ2lvbmFsWycnXSk7CiI7Cgokc21hcnR5LT5hc3NpZ24oJ0RQX2xvY2FsZScsICREUF9sb2NhbGUpOwoKCmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSgnYWRtaW5fZ2VuZXJhbC50cGwnKTsKPz4=]]></data>
	</file>
	<file>
	  <filename>/function.admin_options.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEN1c3RvbSBHbG9iYWwgU2V0dGluZ3MKIyBBdXRob3I6IFJvbGYgVGphc3NlbnMsIEpvcwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAxMSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIyBUaGUgbW9kdWxlJ3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvY3VzdG9tZ3MKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgppZiAoIWlzc2V0KCRnQ21zKSkgZXhpdDsKCmlmKCAhJHRoaXMtPkNoZWNrUGVybWlzc2lvbignQ3VzdG9tIEdsb2JhbCBTZXR0aW5ncyAtIE1hbmFnZScpICkKewoJZWNobyAkdGhpcy0+U2hvd0Vycm9ycyhsYW5nKCduZWVkcGVybWlzc2lvbnRvJywgJ0N1c3RvbSBHbG9iYWwgU2V0dGluZ3MgLSBNYW5hZ2UnKSk7CglyZXR1cm47Cn0KCgokc21hcnR5LT5hc3NpZ24oJ3RpdGxlX2N1c3RvbV9tb2R1bGVuYW1lJywgJHRoaXMtPkxhbmcoJ3RpdGxlX2N1c3RvbV9tb2R1bGVuYW1lJykpOwkKJHNtYXJ0eS0+YXNzaWduKCdoZWxwX2N1c3RvbV9tb2R1bGVuYW1lJywgJHRoaXMtPkxhbmcoJ2hlbHBfY3VzdG9tX21vZHVsZW5hbWUnKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfY3VzdG9tX21vZHVsZW5hbWUnLCR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCAnaW5wdXRfY3VzdG9tX21vZHVsZW5hbWUnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdpbnB1dF9jdXN0b21fbW9kdWxlbmFtZScsJycpLDUwLDI1NSkpOwoKJHNtYXJ0eS0+YXNzaWduKCd0aXRsZV9hZG1pbl9zZWN0aW9uJywgJHRoaXMtPkxhbmcoJ3RpdGxlX2FkbWluX3NlY3Rpb24nKSk7CQokc21hcnR5LT5hc3NpZ24oJ2hlbHBfYWRtaW5fc2VjdGlvbicsICR0aGlzLT5MYW5nKCdoZWxwX2FkbWluX3NlY3Rpb24nKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfYWRtaW5fc2VjdGlvbicsICR0aGlzLT5DcmVhdGVJbnB1dERyb3Bkb3duKCRpZCwgJ2lucHV0X2FkbWluX3NlY3Rpb24nLAoJCQkJYXJyYXkobGFuZygnbWFpbicpID0+ICdtYWluJywKCQkJCQkJCWxhbmcoJ2NvbnRlbnQnKSA9PiAnY29udGVudCcsCgkJCQkJCQlsYW5nKCdsYXlvdXQnKSA9PiAnbGF5b3V0JywKCQkJCQkJCWxhbmcoJ3VzZXJzZ3JvdXBzJykgPT4gJ3VzZXJzZ3JvdXBzJywKCQkJCQkJCWxhbmcoJ2V4dGVuc2lvbnMnKSA9PiAnZXh0ZW5zaW9ucycsCgkJCQkJCQlsYW5nKCdzaXRlYWRtaW4nKSA9PiAnc2l0ZWFkbWluJywKCQkJCQkJCWxhbmcoJ215cHJlZnMnKSA9PiAnbXlwcmVmcycpLAoJCQkJLTEsCgkJCQkkdGhpcy0+R2V0UHJlZmVyZW5jZSgnYWRtaW5fc2VjdGlvbicsICdleHRlbnNpb25zJykKKSk7Cgokc21hcnR5LT5hc3NpZ24oJ3N0YXJ0Zm9ybScsICR0aGlzLT5DcmVhdGVGb3JtU3RhcnQoICRpZCwgJ3NhdmVfb3B0aW9ucycsICRyZXR1cm5pZCApKTsKJHNtYXJ0eS0+YXNzaWduKCdlbmRmb3JtJywgJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7CgoKZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCdhZG1pbl9vcHRpb25zLnRwbCcpOwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/help_text.inc</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGRpdiBpZD0icGFnZV90YWJzIj4NCiAgICA8ZGl2IGlkPSJnZW5lcmFsIj5HZW5lcmFsPC9kaXY+DQoJPGRpdiBpZD0ic3RhcnQiPkdldHRpbmcgc3RhcnRlZDwvZGl2Pg0KCTxkaXYgaWQ9InBlcm1pc3Npb25zIj5QZXJtaXNzaW9uczwvZGl2Pg0KCTxkaXYgaWQ9ImV4YW1wbGVzIj5FeGFtcGxlczwvZGl2Pg0KCTxkaXYgaWQ9InRyb3VibGVzaG9vdGluZyI+VHJvdWJsZXNob290aW5nPC9kaXY+DQogICAgPGRpdiBpZD0iY29weXJpZ2h0Ij5Db3B5cmlnaHQgYW5kIExpY2Vuc2U8L2Rpdj4NCjwvZGl2Pg0KDQo8ZGl2IGNsYXNzPSJjbGVhcmIiPjwvZGl2Pg0KDQo8ZGl2IGlkPSJwYWdlX2NvbnRlbnQiPg0KCTxkaXYgaWQ9ImdlbmVyYWxfYyI+DQoJCTxwPlRoaXMgbW9kdWxlIGV4dGVuZHMgdGhlIEdsb2JhbCBTZXR0aW5ncyB3aXRoIHNvbWUgY3VzdG9taXplZCBwYXJhbWV0ZXJzLjxiciAvPg0KCQlZb3UgY2FuIGRlZmluZSBhbiB1bmxpbWl0ZWQgbnVtYmVyIG9mIGZpZWxkcyB3aGljaCBjYW4gYmUgdXNlZCBhcyBzbWFydHktdmFyaWFibGUgaW4gdGVtcGxhdGVzIG9yIHBhZ2VzLjwvcD4NCgkJPGJyIC8+DQoJCTxwPkF2YWlsYWJsZSBhcmU6PC9wPg0KCQk8dWw+DQoJCTxsaT5CdXR0b248L2xpPg0KCQk8bGk+Q2hlY2tib3g8L2xpPg0KCQk8bGk+Q29sb3JwaWNrZXI8L2xpPg0KCQk8bGk+RGF0ZXBpY2tlcjwvbGk+DQoJCTxsaT5EYXRlIGFuZCB0aW1lcGlja2VyPC9saT4NCgkJPGxpPkdCRmlsZVBpY2tlciA8aT4obW9kdWxlIEdCRmlsZVBpY2tlciBuZWVkcyB0byBiZSBpbnN0YWxsZWQpPC9pPjwvbGk+DQoJCTxsaT5QdWxsZG93bjwvbGk+DQoJCTxsaT5SYWRpb2J1dHRvbmdyb3VwPC9saT4NCgkJPGxpPlRleHRhcmVhPC9saT4NCgkJPGxpPlRleHRhcmVhIHdpdGggV1lTSVdZRzwvbGk+DQoJCTxsaT5UZXh0ZmllbGQ8L2xpPg0KCQk8bGk+VGltZXBpY2tlcjwvbGk+DQoJCTwvdWw+DQoJCTxiciAvPg0KCQk8cD5BZGRpdGlvbmFsIHRoZXJlIGlzIGEgc3BlY2lhbCBmaWVsZGRlZmluaXRpb24gIkZpZWxkZ3JvdXAgc3RhcnQiLiBXaXRoIHRoaXMgb3B0aW9uIHlvdSBjYW4gY3JlYXRlIGEgY29sbGFwc2libGUgZ3JvdXAgb2YgZmllbGRzLjxiciAvPg0KCQlBZnRlciBjcmVhdGluZyB0aGUgIkZpZWxkZ3JvdXAgc3RhcnQiLCBhbHNvIGEgIkZpZWxkZ3JvdXAgZW5kIiB3aXRoIHRoZSBzYW1lIG5hbWUgd2lsbCBiZSBhZGRlZCBhdXRvbWF0aWNhbGx5LiBEcmFnICZhbXA7IGRyb3AgZmllbGRzIGJldHdlZW4gc3RhcnQgYW5kIGVuZCB0byBwdXQgdGhlbSBpbiB0aGUgZ3JvdXAuPC9wPg0KCQk8YnIgLz4NCgk8L2Rpdj4NCg0KCTxkaXYgaWQ9InN0YXJ0X2MiPg0KCQk8cD5UbyBzdGFydCB5b3UgaGF2ZSB0byBhZGQgPGI+e0N1c3RvbUdTfTwvYj4gaW4gdGhlIHRvcCBvZiB5b3VyIHRlbXBsYXRlKHMpLjwvcD4NCgkJPHA+SW4gdGhlIHRlbXBsYXRlcyBvciBwYWdlcyBvZiB5b3VyIHdlYnNpdGUgeW91IHdpbGwgbm93IGhhdmUgYWxsIHNtYXJ0eSB2YXJpYWJsZXMgYXZhaWxhYmxlIHRoYXQgYXJlIGRlZmluZWQgaW4gdGhlIEN1c3RvbSBHbG9iYWwgU2V0dGluZ3MgbW9kdWxlIEZpZWxkZGVmaW5pdGlvbnMgdGFiLjwvcD4NCgkJPHA+VGhlIGV4YWN0IHdheSB0byBjYWxsIGVhY2ggdmFyaWFibGUgaXMgc2hvd24gaW4gdGhlIGZpZWxkZGVmaW5pdGlvbnMgdGFibGUuPGJyIC8+WW91IGNhbiBhbHNvIGNoZWNrIHdoaWNoIHZhcmlhYmxlcyBhbmQgdmFsdWVzIGFyZSBhdmFpbGFibGUgYnkgcGxhY2luZyA8Yj57Q3VzdG9tR1Mgc2hvd3ZhcnM9MX08L2I+IGluIHRoZSBjb250ZW50IGZpZWxkIG9mIGEgcGFnZS48L3A+DQoJCTxiciAvPg0KCQk8cD48Yj5XYXJuaW5nOjwvYj4gYmV0dGVyIG5vdCBwbGFjZSB0aGUge0N1c3RvbUdTfSB0YWcgaW4gdGhlICZsdDtoZWFkJmd0OyZsdDsvaGVhZCZndDsgc2VjdGlvbiBvZiB5b3VyIHRlbXBsYXRlLCBiZWNhdXNlIHRoYXQncyB0aGUgbGFzdCBzZWN0aW9uIHRoYXQgd2lsbCBiZSBwYXJzZWQgYnkgdGhlIFNtYXJ0eSB0ZW1wbGF0aW5nIHN5c3RlbS48L3A+DQoJCTxiciAvPg0KCTwvZGl2Pg0KDQoJPGRpdiBpZD0icGVybWlzc2lvbnNfYyI+DQoJCTxwPlRoaXMgbW9kdWxlIHByb3ZpZGVzIHR3byBkaWZmZXJlbnQgbGV2ZWxzIG9mIHBlcm1pc3Npb25zOiBvbiBhIG1vZHVsZSBsZXZlbCBhbmQgb24gYSBmaWVsZCBsZXZlbC48cD4NCgkJPHA+Rm9yIHVzZXJzIHRvIGJlIGFibGUgdG8gc2VlIGFuZCB1c2UgdGhpcyBtb2R1bGUsIGdvIHRvIG1lbnUgPGk+VXNlcnMgJiBHcm91cHMgwrsgR3JvdXAgUGVybWlzc2lvbnM8L2k+IGFuZCBzZXQgdGhlIHBlcm1pc3Npb25zOjxwPg0KCQk8dWw+DQoJCTxsaT48Yj5DdXN0b20gR2xvYmFsIFNldHRpbmdzIC0gVXNlPC9iPjxiciAvPg0KCQlBIHBlcm1pc3Npb24gZm9yIGVkaXRvcnMuIEl0IHdpbGwgb25seSBzaG93IHRoZSBHZW5lcmFsIHRhYiBpbiB0aGUgYWRtaW4gcGFnZS48L2xpPg0KCQk8bGk+PGI+Q3VzdG9tIEdsb2JhbCBTZXR0aW5ncyAtIE1hbmFnZTwvYj48YnIgLz4NCgkJQSBwZXJtaXNzaW9uIGZvciBhZG1pbmlzdHJhdG9ycy4gSXQgd2lsbCBzaG93IGFsbCBtb2R1bGUgdGFicy48L2xpPg0KCQk8L3VsPg0KCQk8YnIgLz4NCgkJPHA+VGhlbiwgd2hpbGUgY3JlYXRpbmcgYSBuZXcgZmllbGQsIHNlbGVjdCBvbmUgb3IgbW9yZSBncm91cHMgaW4gdGhlIDxiPkdyb3VwIFBlcm1pc3Npb25zPC9iPiBkcm9wZG93biBsaXN0ICh3aXRoIGN0cmwpLiBPbmx5IHVzZXJzIHdobyBiZWxvbmcgdG8gdGhlIHNlbGVjdGVkIGdyb3VwcyB3aWxsIGJlIGFibGUgdG8gc2VlIGFuZCBjaGFuZ2UgdGhlIHNldHRpbmcgaW4gdGhlIEdlbmVyYWwgdGFiLiBJZiBubyBncm91cCBpcyBzZWxlY3RlZCwgdGhlIHNldHRpbmcgd2lsbCBiZSB2aXNpYmxlIGZvciBhbGwgZ3JvdXBzLiBTZXR0aW5ncyB3aWxsIG5ldmVyIGJlIGhpZGRlbiBmb3IgYWRtaW4gdXNlcnMuPHA+DQoJCTxiciAvPg0KCTwvZGl2Pg0KDQoJPGRpdiBpZD0iZXhhbXBsZXNfYyI+DQoJCTxoMz5DSEVDS0JPWDwvaDM+DQoJCTxoND5DaGFuZ2UgZnJvbnRlbmQgdGhlbWU8L2g0Pg0KCQk8cD5EZWZpbmUgYSBjaGVja2JveCAnQ2hyaXN0bWFzIG5vdycgd2hpY2ggd2lsbCBhY3RpdmF0ZSBhIHNwZWNpYWwgdGhlbWUgb24gdGhlIGZyb250ZW5kIHdoZW4gY2hlY2tlZDwvcD4NCgkJPHAgc3R5bGU9ImJvcmRlcjoxcHggc29saWQgI2RkZDsgcGFkZGluZzoxMHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiNmM2YzZjMiPg0KCQk8Y29kZT4NCgkJe2lmICRDdXN0b21HUy5DaHJpc3RtYXNfbm93ID09ICcxJ308YnIgLz4NCgkJJm5ic3A7Jm5ic3A7Jm5ic3A7eyogU2hvdyBDaHJpc3RtYXMgZnJvbnRlbmQgdGhlbWUgKn08YnIgLz4NCgkJe2Vsc2V9PGJyIC8+DQoJCSZuYnNwOyZuYnNwOyZuYnNwO3sqIFNob3cgZGVmYXVsdCBmcm9udGVuZCB0aGVtZSAqfTxiciAvPg0KCQl7L2lmfQ0KCQk8L2NvZGU+DQoJCTwvcD4NCgkJPGJyIC8+DQoJCQ0KCQk8aDQ+TWFnaWMgd2l0aCBhIGNoZWNrYm94PC9oND4NCgkJPHA+RGVmaW5lIGEgY2hlY2tib3ggJ015Q2hlY2tib3gnIHdoaWNoIHdpbGwgZG8gc29tZSBtYWdpYyBzdHVmZiB3aGVuIHVuY2hlY2tlZDwvcD4NCgkJPHAgc3R5bGU9ImJvcmRlcjoxcHggc29saWQgI2RkZDsgcGFkZGluZzoxMHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiNmM2YzZjMiPg0KCQk8Y29kZT4NCgkJe2lmICRDdXN0b21HUy5NeUNoZWNrYm94ICE9ICcxJ308YnIgLz4NCgkJJm5ic3A7Jm5ic3A7Jm5ic3A7eyogRG8gc29tZSBtYWdpYyBzdHVmZiAqfTxiciAvPg0KCQl7L2lmfQ0KCQk8L2NvZGU+DQoJCTwvcD4NCgkJPGJyIC8+DQoJCQ0KCQk8aDM+REFURSBhbmQgVElNRVBJQ0tFUjwvaDM+DQoJCTxoND5EaXNwbGF5IHBhZ2UgY29udGVudCBvbmx5IGluIGEgc3BlY2lmaWMgdGltZWZyYW1lPC9oND4NCgkJPHA+RGVmaW5lIHR3byB0aW1lcGlja2VyIGZpZWxkcyAnc3RhcnR0aW1lJyBhbmQgJ2VuZHRpbWUnLiBSZXBsYWNlIHRoZSB7Y29udGVudH0gdGFnIGluIHlvdXIgcGFnZSB0ZW1wbGF0ZSB3aXRoIHRoaXMgY29kZSBhbmQgdGhlIG5vcm1hbCBwYWdlIGNvbnRlbnQgaXMgb25seSB2aXNpYmxlIHdoZW4gdGhlIGN1cnJlbnQgdGltZSBpcyBiZXR3ZWVuIHRoZSBzdGFydHRpbWUgYW5kIGVuZHRpbWUuPC9wPg0KCQk8cCBzdHlsZT0iYm9yZGVyOjFweCBzb2xpZCAjZGRkOyBwYWRkaW5nOjEwcHg7IGJhY2tncm91bmQtY29sb3I6I2YzZjNmMyI+DQoJCTxjb2RlPg0KCQl7aWYgJHNtYXJ0eS5ub3d8ZGF0ZV9mb3JtYXQ6JyVIOiVNJyA+PSAkQ3VzdG9tR1Muc3RhcnR0aW1lICYmICRzbWFydHkubm93fGRhdGVfZm9ybWF0OiclSDolTScgPD0gJEN1c3RvbUdTLmVuZHRpbWV9PGJyIC8+DQoJCSZuYnNwOyZuYnNwOyZuYnNwO3tjb250ZW50fTxiciAvPg0KCQl7ZWxzZX08YnIgLz4NCgkJJm5ic3A7Jm5ic3A7Jm5ic3A7e2NvbnRlbnQgYmxvY2s9IlNpdGVDbG9zZWRDb250ZW50In08YnIgLz4NCgkJey9pZn08YnIgLz4NCgkJPC9jb2RlPg0KCQk8L3A+DQoJCTxiciAvPg0KCQkNCgkJPGgzPlBVTExET1dOPC9oMz4NCgkJPGg0PlB1bGxkb3duIGZvciBGZWF0dXJlZCBOZXdzYXJ0aWNsZTwvaDQ+DQoJCTxwPkRlZmluZSBhIHB1bGxkb3duIGZpZWxkIHRoYXQgY29udGFpbnMgdGhlIHRpdGxlcyBvZiBhcnRpY2xlcyBmcm9tIHRoZSBOZXdzIG1vZHVsZSwgc28gdGhlIHVzZXIgY2FuIGNob29zZSBhIGZlYXR1cmVkIGFydGljbGUgd2hpY2ggY2FuIGJlIGRpc3BsYXllZCBvbiBhIHNwZWNpYWwgc2VjdGlvbiBvbiB0aGUgc2l0ZS48L3A+DQoNCgkJPHA+Rmlyc3QgY3JlYXRlIGEgbmV3IHN1bW1hcnl0ZW1wbGF0ZSBpbiB0aGUgTmV3cyBtb2R1bGUsIG5hbWVkICJDdXN0b21HU19wdWxsZG93biIgd2l0aCB0aGUgZm9sbG93aW5nIGNvbnRlbnQ6PC9wPg0KDQoJCTxwIHN0eWxlPSJib3JkZXI6MXB4IHNvbGlkICNkZGQ7IHBhZGRpbmc6MTBweDsgYmFja2dyb3VuZC1jb2xvcjojZjNmM2YzIj4NCgkJPGNvZGU+e2ZvcmVhY2ggZnJvbT0kaXRlbXMgaXRlbT1lbnRyeX0NCgkJeyRlbnRyeS0mZ3Q7aWR9fHskZW50cnktJmd0O3RpdGxlfTxiciAvPg0KCQl7L2ZvcmVhY2h9PC9jb2RlPg0KCQk8L3A+DQoJCTxiciAvPg0KCQk8cD5UaGVuIGRlZmluZSBhIG5ldyBmaWVsZCBpbiB0aGUgQ3VzdG9tIEdsb2JhbCBTZXR0aW5ncyBtb2R1bGU8L3A+DQoNCgkJPHA+PGI+TmFtZTo8L2I+IEZlYXR1cmVkIE5ld3M8YnIgLz4NCgkJPGI+VHlwZTo8L2I+IFB1bGxkb3duPGJyIC8+DQoJCTxiPlByb3BlcnRpZXM6PC9iPjwvcD4NCgkJPHAgc3R5bGU9ImJvcmRlcjoxcHggc29saWQgI2RkZDsgcGFkZGluZzoxMHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiNmM2YzZjMiPg0KCQk8Y29kZT57bmV3cyBhY3Rpb249J2RldGFpbCcgYXJ0aWNsZWlkPSRDdXN0b21HUy5GZWF0dXJlZF9OZXdzfTwvY29kZT4NCgkJPC9wPg0KCQk8YnIgLz4NCgkJDQoJCTxoMz5SQURJT0JVVFRPTkdST1VQPC9oMz4NCgkJPGg0PkNoYW5nZSBmcm9udGVuZCBjb2xvcjwvaDQ+DQoNCgkJPHA+Q3JlYXRlIGEgUmFkaW9idXR0b24gZ3JvdXAgbmFtZWQgInRleHRjb2xvciI8L3A+DQoJCTxwPlRoZSBwcm9wZXJ0aWVzIHZhbHVlIGFyZTo8cD4NCgkJPHAgc3R5bGU9ImJvcmRlcjoxcHggc29saWQgI2RkZDsgcGFkZGluZzoxMHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiNmM2YzZjMiPg0KCQkjZmYwMDAwfHJlZDxiciAvPg0KCQkjMDBmfGJsdWU8YnIgLz4NCgkJIzEwMTAxMHxhbG1vc3QgYmxhY2s8L3A+DQoJCTxiciAvPg0KCQk8cD5BbHNvIGNsaWNrIHRoZSBjaGVja2JveCAnQ2xlYXIgc3R5bGVzaGVldGNhY2hlJy4gVGhpcyB3aWxsIGF1dG9tYXRpY2FsbHkgcmVuZXcgdGhlIHN0eWxlc2hlZXRzLjwvcD4NCgkJPGJyIC8+DQoJCTxwPkFkZCB0byB0aGUgdG9wIG9mIHlvdXIgc3R5bGVzaGVldDo8L3A+DQoJCTxwIHN0eWxlPSJib3JkZXI6MXB4IHNvbGlkICNkZGQ7IHBhZGRpbmc6MTBweDsgYmFja2dyb3VuZC1jb2xvcjojZjNmM2YzIj4NCgkJPGNvZGU+W1tDdXN0b21HU11dPC9jb2RlPg0KCQk8L3A+DQoJCTxiciAvPg0KCQk8cD5UbyBjaGFuZ2UgZm9yIGV4YW1wbGUgdGhlIGNvbG9yIG9mIHRoZSBwLXRleHQgYWRkOjwvcD4NCgkJPHAgc3R5bGU9ImJvcmRlcjoxcHggc29saWQgI2RkZDsgcGFkZGluZzoxMHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiNmM2YzZjMiPg0KCQk8Y29kZT5jb2xvcjogW1skQ3VzdG9tR1MudGV4dGNvbG9yXV07PC9jb2RlPg0KCQk8L3A+DQoJCTxiciAvPg0KCQk8cD5PciBkaXJlY3RseSBpbmNsdWRlZCBpbiBhIHBhZ2Ugb3IgdGVtcGxhdGU6PHA+DQoJCTxwIHN0eWxlPSJib3JkZXI6MXB4IHNvbGlkICNkZGQ7IHBhZGRpbmc6MTBweDsgYmFja2dyb3VuZC1jb2xvcjojZjNmM2YzIj4NCgkJPGNvZGU+Jmx0O3Agc3R5bGU9ImNvbG9yOiB7JEN1c3RvbUdTLnRleHRjb2xvcn07IiZndDtMb3JlbSBJcHN1bSZsdDsvcCZndDs8L2NvZGU+DQoJCTwvcD4NCgkJPGJyIC8+DQoNCgkJPGgzPlRFWFRGSUVMRDwvaDM+DQoJCTxoND5TaG93IGN1cnJlbnQgdHJhaW5lcjwvaDQ+DQoJCTxwPkRlZmluZSBhIHRleHRmaWVsZCBvciBwdWxsZG93biBmaWVsZCAnVHJhaW5lcicgd2hpY2ggd2lsbCBjb250YWluIHRoZSBjdXJyZW50IHRyYWluZXJzIG5hbWUuPC9wPg0KCQk8cCBzdHlsZT0iYm9yZGVyOjFweCBzb2xpZCAjZGRkOyBwYWRkaW5nOjEwcHg7IGJhY2tncm91bmQtY29sb3I6I2YzZjNmMyI+DQoJCTxjb2RlPg0KCQkmbHQ7cCZndDtUaGlzIHdlZWtzIHRyYWluZXJzIG5hbWUgaXM6IHskQ3VzdG9tR1MuVHJhaW5lcn0mbHQ7L3AmZ3Q7DQoJCTwvY29kZT4NCgkJPC9wPg0KCQk8YnIgLz4NCgk8L2Rpdj4NCg0KCTxkaXYgaWQ9InRyb3VibGVzaG9vdGluZ19jIj4NCgkJPGg0PkNoZWNrIHRlbXBsYXRlIHZhcmlhYmxlczwvaDQ+DQoJCTxwPllvdSBjYW4gY2hlY2sgd2hpY2ggdmFyaWFibGVzIGFuZCB2YWx1ZXMgYXJlIGF2YWlsYWJsZSBieSBwbGFjaW5nIDxiPntDdXN0b21HUyBzaG93dmFycz0xfTwvYj4gaW4gdGhlIGNvbnRlbnQgZmllbGQgb2YgYSBwYWdlLjwvcD4NCgkJPGJyIC8+DQoJCQ0KCQk8aDQ+U21hcnR5IGVycm9yPC9oND4NCgkJPHA+PGI+RXJyb3I6PC9iPiBTbWFydHkgZXJyb3I6IFtpbiB0ZW1wb3JhcnkgdGVtcGxhdGUgbGluZSA0XTogW3BsdWdpbl0gdW5rbm93biB0YWcuLi48L3A+DQoJCTxwPjxiPlNvbHV0aW9uOjwvYj4gWW91IHByb2JhYmx5IGhhdmUgZW50ZXJlZCBjdXJseSBicmFja2V0ICYjMTIzOyAmIzEyNTsgc2lnbnMgaW4gdGhlIHByb3BlcnRpZXMgZmllbGQgb2YgYSBwdWxsZG93biBvciByYWRpb2J1dHRvbiBmaWVsZGRlZmluaXRpb24uIFRoZXNlIGFyZSBpbnRlcnByZXRlZCBieSBTbWFydHkuIERlbGV0ZSB0aGVtLCBvciB1c2UgIHRhZ3MuPC9wPg0KCQk8YnIgLz4NCgkJDQoJCTxoND5PdGhlciBFcnJvcnM8L2g0Pg0KCQk8cD48Yj5FcnJvcjo8L2I+IE15IHByb2JsZW0gd2FzIG5vdCBkZXNjcmliZWQgaGVyZS48L3A+DQoJCTxwPjxiPlNvbHV0aW9uOjwvYj4gU2V0IERlYnVnIHRvICd0cnVlJyBpbiBjb25maWcucGhwIGFuZCBzZWUgaWYgYW55IGVycm9yIG1lc3NhZ2VzIGFwcGVhci4gTG9vayBhbHNvIGZvciBlcnJvciBtZXNzYWdlcyBpbiB0aGUgaHRtbCBzb3VyY2Vjb2RlLiBNYXliZSB0aGUgZXJyb3IgbWVzc2FnZSB0ZWxscyB5b3UgZW5vdWdoIHRvIHNvbHZlIHRoZSBpc3N1ZSB5b3Vyc2VsZi4gU29tZW9uZSBlbHNlIG1heSBoYXZlIGVuY291bnRlcmVkIHRoZSBzYW1lIHByb2JsZW0gYmVmb3JlIHlvdSwgc28geW91IGNvdWxkIGFsc28gc2VhcmNoIHRoZSBDTVNNUyBmb3J1bSBmb3IgcG9zc2libGUgc29sdXRpb25zLiBJZiB5b3UgaGF2ZW4ndCBmb3VuZCBhbnkgcmVsYXRlZCB0b3BpY3MsIHBsZWFzZSBmZWVsIGZyZWUgdG8gb3BlbiBhIG5ldyBmb3J1bXRvcGljLjwvcD4NCgkJPGJyIC8+DQoJPC9kaXY+DQoNCgk8ZGl2IGlkPSJjb3B5cmlnaHRfYyI+DQoJCTxwPkNvcHlyaWdodCDCqSAyMDEyLCBSb2xmIFRqYXNzZW5zICZsdDtyb2xmIGF0IGNtc21hZGVzaW1wbGUgZG90IG9yZyZndDssIEpvcyAmbHQ7PGEgaHJlZj0ibWFpbHRvOmpvc3ZkQGxpdmUubmwiPmpvc3ZkQGxpdmUubmw8L2E+Jmd0Oy4gQWxsIFJpZ2h0cyBBcmUgUmVzZXJ2ZWQuPC9wPg0KCQk8YnIgLz4NCgkJPHA+VGhpcyBtb2R1bGUgaGFzIGJlZW4gcmVsZWFzZWQgdW5kZXIgdGhlIDxhIGhyZWY9Imh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTCIgdGFyZ2V0PSJfYmxhbmsiPkdOVSBQdWJsaWMgTGljZW5zZSB2MzwvYT4uPGJyIC8+DQoJCTxiPkhvd2V2ZXI8L2I+LCBhcyBhIHNwZWNpYWwgZXhjZXB0aW9uIHRvIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgZGlzdHJpYnV0ZWQgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gWW91IG1heSBvbmx5IHVzZSB0aGlzIHNvZnR3YXJlIHdoZW4gdGhlcmUgaXMgYSBjbGVhciBhbmQgb2J2aW91cyBpbmRpY2F0aW9uIGluIHRoZSBhZG1pbiBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgU2ltcGxlITwvcD4NCgkJPGJyIC8+DQoJPC9kaXY+DQo8L2Rpdj4=]]></data>
	</file>
	<file>
	  <filename>/images/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/images/icon.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/loading.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[R0lGODlhEAAQAPYAAPD4+QAAAOz09YmOj4CEheDo6bzDxMzS05WamgAAAIaKi7vBwi8wMU1QUN7m55yioouQkeTs7Xp+fxobG6itrpqgoJGWlubu7+ry856kpMLJyUBCQgsLC1pdXtHY2dvi47G3uCcpKTM0NEJERMjOz7m/wDg6OklMTDo8PERGRsTLy77FxlVXWKqvsN3k5WltbaKnqK2ztK+1tlhbXFZZWlxfYH6Cg9Pa23d7e+7295menhYXFykqK1FTVAMDA0tOTsDHxzQ2NlNVVhgZGeLq68rQ0ZOYmNXc3dng4Tw+PqClpiIjIx4fH6Spqmtvb0VISDEyMmRnZ8bNzbW7vCMlJXV5eT5AQE9SUgkJCQcHB6arrNfe30dKSujw8auxsmBjY2JlZc/W15ecnBERESAhIQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH+GkNyZWF0ZWQgd2l0aCBhamF4bG9hZC5pbmZvACH5BAAIAAAAIf8LTkVUU0NBUEUyLjADAQAAACwAAAAAEAAQAAAHaIAAgoMgIiYlg4kACxIaACEJCSiKggYMCRselwkpghGJBJEcFgsjJyoAGBmfggcNEx0flBiKDhQFlIoCCA+5lAORFb4AJIihCRbDxQAFChAXw9HSqb60iREZ1omqrIPdJCTe0SWI09GBACH5BAAIAAEALAAAAAAQABAAAAdrgACCgwc0NTeDiYozCQkvOTo9GTmDKy8aFy+NOBA7CTswgywJDTIuEjYFIY0JNYMtKTEFiRU8Pjwygy4ws4owPyCKwsMAJSTEgiQlgsbIAMrO0dKDGMTViREZ14kYGRGK38nHguHEJcvTyIEAIfkEAAgAAgAsAAAAABAAEAAAB2iAAIKDAggPg4iJAAMJCRUAJRIqiRGCBI0WQEEJJkWDERkYAAUKEBc4Po1GiKKJHkJDNEeKig4URLS0ICImJZAkuQAhjSi/wQyNKcGDCyMnk8u5rYrTgqDVghgZlYjcACTA1sslvtHRgQAh+QQACAADACwAAAAAEAAQAAAHZ4AAgoOEhYaCJSWHgxGDJCQARAtOUoQRGRiFD0kJUYWZhUhKT1OLhR8wBaaFBzQ1NwAlkIszCQkvsbOHL7Y4q4IuEjaqq0ZQD5+GEEsJTDCMmIUhtgk1lo6QFUwJVDKLiYJNUd6/hoEAIfkEAAgABAAsAAAAABAAEAAAB2iAAIKDhIWGgiUlh4MRgyQkjIURGRiGGBmNhJWHm4uen4ICCA+IkIsDCQkVACWmhwSpFqAABQoQF6ALTkWFnYMrVlhWvIKTlSAiJiVVPqlGhJkhqShHV1lCW4cMqSkAR1ofiwsjJyqGgQAh+QQACAAFACwAAAAAEAAQAAAHZ4AAgoOEhYaCJSWHgxGDJCSMhREZGIYYGY2ElYebi56fhyWQniSKAKKfpaCLFlAPhl0gXYNGEwkhGYREUywag1wJwSkHNDU3D0kJYIMZQwk8MjPBLx9eXwuETVEyAC/BOKsuEjYFhoEAIfkEAAgABgAsAAAAABAAEAAAB2eAAIKDhIWGgiUlh4MRgyQkjIURGRiGGBmNhJWHm4ueICImip6CIQkJKJ4kigynKaqKCyMnKqSEK05StgAGQRxPYZaENqccFgIID4KXmQBhXFkzDgOnFYLNgltaSAAEpxa7BQoQF4aBACH5BAAIAAcALAAAAAAQABAAAAdogACCg4SFggJiPUqCJSWGgkZjCUwZACQkgxGEXAmdT4UYGZqCGWQ+IjKGGIUwPzGPhAc0NTewhDOdL7Ykji+dOLuOLhI2BbaFETICx4MlQitdqoUsCQ2vhKGjglNfU0SWmILaj43M5oEAOwAAAAAAAAAAAA==]]></data>
	</file>
	<file>
	  <filename>/index.html</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[]]></data>
	</file>
	<file>
	  <filename>/lang/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lang/en_US.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiRsYW5nWydtb2RkZXNjcmlwdGlvbiddID0gJ0EgbW9kdWxlIHRvIGV4dGVuZCB0aGUgR2xvYmFsIFNldHRpbmdzIHdpdGggc29tZSBjdXN0b21pemVkIHBhcmFtZXRlcnMuIFlvdSBjYW4gZGVmaW5lIGFuIHVubGltaXRlZCBudW1iZXIgb2YgZmllbGRzIHdoaWNoIGNhbiBiZSB1c2VkIGFzIHNtYXJ0eS12YXJpYWJsZSBpbiB0ZW1wbGF0ZXMgb3IgcGFnZXMuJzsNCg0KJGxhbmdbJ3Bvc3RpbnN0YWxsJ10gPSAnQ3VzdG9tR1MgbW9kdWxlIHN1Y2Nlc3NmdWxseSBpbnN0YWxsZWQhJzsNCiRsYW5nWyd1bmluc3RhbGxfY29uZmlybSddID0gJ0RvIHlvdXIgcmVhbGx5IHdhbnQgdG8gdW5pbnN0YWxsIHRoZSBDdXN0b21HUyBtb2R1bGU/JzsNCiRsYW5nWydwb3N0dW5pbnN0YWxsJ10gPSAnQ3VzdG9tR1MgbW9kdWxlIHN1Y2Nlc3NmdWxsIHVuaW5zdGFsbGVkISc7DQoNCg0KLyoqDQogKiBBZG1pbiBHZW5lcmFsIFRhYg0KICovDQokbGFuZ1snbm93J10gPSAnbm93JzsNCiRsYW5nWyd0aXRsZV9nZW5lcmFsJ10gPSAnR2VuZXJhbCc7DQokbGFuZ1snY2hvb3NldGltZSddID0gJ0Nob29zZSB0aW1lJzsNCiRsYW5nWyd0aW1lJ10gPSAndGltZSc7DQoNCg0KLyoqDQogKiBBZG1pbiBGaWVsZGRlZnMgVGFiDQogKi8NCiRsYW5nWyd0aXRsZV9maWVsZGRlZnMnXSA9ICdGaWVsZCBEZWZpbml0aW9ucyc7DQokbGFuZ1snc21hcnR5dmFyJ10gPSAnU21hcnR5IHZhcmlhYmxlJzsNCiRsYW5nWyd0ZXh0ZmllbGQnXSA9ICdUZXh0ZmllbGQnOw0KJGxhbmdbJ3B1bGxkb3duJ10gPSAnUHVsbGRvd24nOw0KJGxhbmdbJ2NoZWNrYm94J10gPSAnQ2hlY2tib3gnOw0KJGxhbmdbJ3JhZGlvYnV0dG9ucyddID0gJ1JhZGlvYnV0dG9uIGdyb3VwJzsNCiRsYW5nWydkYXRlcGlja2VyJ10gPSAnRGF0ZXBpY2tlcic7DQokbGFuZ1snZGF0ZXRpbWVwaWNrZXInXSA9ICdEYXRlVGltZXBpY2tlcic7DQokbGFuZ1sndGltZXBpY2tlciddID0gJ1RpbWVwaWNrZXInOw0KJGxhbmdbJ2NvbG9ycGlja2VyJ10gPSAnQ29sb3JwaWNrZXInOw0KJGxhbmdbJ3RleHRhcmVhJ10gPSAnVGV4dCBBcmVhJzsNCiRsYW5nWyd3eXNpd3lnJ10gPSAnV1lTSVdZRyc7DQovLyAkbGFuZ1snZmllbGRzZXQnXSA9ICdGaWVsZGdyb3VwJzsNCiRsYW5nWydmaWVsZHNldHN0YXJ0J10gPSAnRmllbGRncm91cCBzdGFydCc7DQokbGFuZ1snZmllbGRzZXRlbmQnXSA9ICdGaWVsZGdyb3VwIGVuZCc7DQokbGFuZ1snYnV0dG9uJ10gPSAnQnV0dG9uJzsNCiRsYW5nWydtYXhsZW5ndGgnXSA9ICdNYXhpbXVtIExlbmd0aCc7DQokbGFuZ1sncHJvcGVydGllcyddID0gJ1Byb3BlcnRpZXMnOw0KJGxhbmdbJ3Byb3BlcnRpZXNfaGVscDEnXSA9ICdFbnRlciB0aGUgY2hvaWNlIHZhbHVlcywgZWFjaCBvbmUgb24gYSBuZXcgbGluZS4gQWxzbyBzdXBwb3J0cyBWYWx1ZXxPcHRpb25OYW1lIHBhaXJzIGFuZC9vciBTbWFydHkgdGFncyc7DQokbGFuZ1sncGFyc2VzbWFydHknXSA9ICdQYXJzZSBkYXRhIGJ5IFNtYXJ0eSc7DQokbGFuZ1snY2xlYXJzdHlsZXNoZWV0Y2FjaGUnXSA9ICdDbGVhciBzdHlsZXNoZWV0IGNhY2hlJzsNCiRsYW5nWydjbGVhcnN0eWxlc2hlZXRjYWNoZV9oZWxwJ10gPSAnQXV0b21hdGljYWxseSBjbGVhciBzdHlsZXNoZWV0IGNhY2hlIGFmdGVyIGNoYW5naW5nIHRoaXMgc2V0dGluZy4gVVNFIFdJVEggQ0FVVElPTiEnOw0KJGxhbmdbJ2ZpZWxkZGVmYWRkZWQnXSA9ICdGaWVsZCBEZWZpbml0aW9uIGlzIGFkZGVkJzsNCiRsYW5nWydmaWVsZGRlZnN1cGRhdGVkJ10gPSAnRmllbGQgRGVmaW5pdGlvbiBsaXN0IGlzIHVwZGF0ZWQnOw0KDQoNCi8qKg0KICogQWRtaW4gT3B0aW9ucyBUYWINCiAqLyANCiRsYW5nWyd0aXRsZV9jdXN0b21fbW9kdWxlbmFtZSddID0gJ0N1c3RvbSBNb2R1bGVuYW1lJzsNCiRsYW5nWydoZWxwX2N1c3RvbV9tb2R1bGVuYW1lJ10gPSAnWW91IGNhbiBjaGFuZ2UgdGhlIE1vZHVsZW5hbWUgaGVyZSBhcyB5b3Ugd2lzaC4gSXQgd2lsbCBiZSB1c2VkIGFzIHRoZSB0aXRsZSBvbiB0aGUgbW9kdWxlIGFkbWluIHBhZ2VzIGFuZCBhcyBtZW51IHRleHQuJzsNCg0KJGxhbmdbJ3RpdGxlX2FkbWluX3NlY3Rpb24nXSA9ICdBZG1pbiBTZWN0aW9uJzsNCiRsYW5nWydoZWxwX2FkbWluX3NlY3Rpb24nXSA9ICdDaG9vc2UgdGhlIEFkbWluIFNlY3Rpb24gKG9yIHRvcC1sZXZlbCBBZG1pbiBNZW51KSB0aGlzIG1vZHVsZSBiZWxvbmdzIHRvLiA8Yj5Ob3RlPC9iPjogVXNlcnMgd2l0aCBFZGl0b3IgcGVybWlzc2lvbnMgZG9uXCd0IGhhdmUgYWNjZXNzIHRvIHRoZSBTaXRlIEFkbWluIHNlY3Rpb24hJzsNCg0KDQovKioNCiAqIFNhdmluZw0KICovIA0KJGxhbmdbJ3NldHRpbmdzc2F2ZWQnXSA9ICdTZXR0aW5ncyBzdWNjZXNzZnVsbHkgc2F2ZWQhJzsNCg0KDQovKioNCiAqIEV2ZW50cw0KICovDQokbGFuZ1snZXZlbnRfaW5mb19PblNldHRpbmdDaGFuZ2UnXSA9ICdFdmVudCB0cmlnZ2VyZWQgd2hlbiBhIHNldHRpbmcgaXMgZWRpdGVkLic7DQokbGFuZ1snZXZlbnRfaGVscF9PblNldHRpbmdDaGFuZ2UnXSA9ICc8cD5FdmVudCB0cmlnZ2VyZWQgd2hlbiBhIHNldHRpbmcgaXMgZWRpdGVkLjwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT5maWVsZGlkPC9saT4NCjxsaT5uYW1lPC9saT4NCjxsaT5hbGlhczwvbGk+DQo8bGk+dmFsdWU8L2xpPg0KPGxpPmNsZWFyY2FjaGU8L2xpPg0KPC91bD4NCic7DQo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lang/ext/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lang/ext/de_DE.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnRWluIE1vZHVsLCB1bSBkaWUgR2xvYmFsZSBFaW5zdGVsbHVuZ2VuIG1pdCBlaW5pZ2VuIGJlbnV0emVyZGVmaW5pZXJ0ZW4gUGFyYW1ldGVyIHp1IGVyd2VpdGVybi4gRXMgYmlldGV0IElobmVuIGVpbmUgdW5iZWdyZW56dGUgWmFobCB2b24gRmVsZGVybiwgZGllIGFscyBTbWFydHktVmFyaWFibGUgaW4gVGVtcGxhdGVzIG9kZXIgU2VpdGVuIHZlcndlbmRldCB3ZXJkZW4gayZvdW1sO25uZW4uJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsJ10gPSAnRGFzIEN1c3RvbUdTLU1vZHVsIHd1cmRlIGVyZm9sZ3JlaWNoIGluc3RhbGxpZXJ0ISc7CiRsYW5nWyd1bmluc3RhbGxfY29uZmlybSddID0gJ1dvbGxlbiBTaWUgZGFzIEN1c3RvbUdTLU1vZHVsIHdpcmtsaWNoIGRlaW5zdGFsbGllcmVuPyc7CiRsYW5nWydwb3N0dW5pbnN0YWxsJ10gPSAnRGFzIEN1c3RvbUdTLU1vZHVsIHd1cmRlIGVyZm9sZ3JlaWNoIGRlaW5zdGFsbGllcnQhJzsKJGxhbmdbJ25vdyddID0gJ2pldHp0JzsKJGxhbmdbJ3RpdGxlX2dlbmVyYWwnXSA9ICdBbGxnZW1laW4nOwokbGFuZ1snY2hvb3NldGltZSddID0gJ1plaXQgdyZhdW1sO2hsZW4nOwokbGFuZ1sndGltZSddID0gJ1plaXQnOwokbGFuZ1sndGl0bGVfZmllbGRkZWZzJ10gPSAnRmVsZC1EZWZpbml0aW9uZW4nOwokbGFuZ1snc21hcnR5dmFyJ10gPSAnU21hcnR5LVZhcmlhYmxlJzsKJGxhbmdbJ3RleHRmaWVsZCddID0gJ1RleHRmZWxkJzsKJGxhbmdbJ3B1bGxkb3duJ10gPSAnQXVma2xhcHBsaXN0ZSc7CiRsYW5nWydjaGVja2JveCddID0gJ0tvbnRyb2xsayZhdW1sO3N0Y2hlbic7CiRsYW5nWydyYWRpb2J1dHRvbnMnXSA9ICdSYWRpb2tub3BmLUdydXBwZSc7CiRsYW5nWydkYXRlcGlja2VyJ10gPSAnRGF0dW1zYXVzd2FobCc7CiRsYW5nWydkYXRldGltZXBpY2tlciddID0gJ0RhdHVtcy1aZWl0YXVzd2FobCc7CiRsYW5nWyd0aW1lcGlja2VyJ10gPSAnWmVpdGF1c3dhaGwnOwokbGFuZ1snY29sb3JwaWNrZXInXSA9ICdGYXJiYXVzd2FobCc7CiRsYW5nWyd0ZXh0YXJlYSddID0gJ1RleHRiZXJlaWNoJzsKJGxhbmdbJ3d5c2l3eWcnXSA9ICdXeXNpd3lnJzsKJGxhbmdbJ2ZpZWxkc2V0c3RhcnQnXSA9ICdGZWxkZXJncnVwcGUgQW5mYW5nJzsKJGxhbmdbJ2ZpZWxkc2V0ZW5kJ10gPSAnRmVsZGVyZ3J1cHBlIEVuZGUnOwokbGFuZ1snYnV0dG9uJ10gPSAnVGFzdGUnOwokbGFuZ1snbWF4bGVuZ3RoJ10gPSAnTWF4aW1hbGUgTCZhdW1sO25nZSc7CiRsYW5nWydwcm9wZXJ0aWVzJ10gPSAnRWlnZW5zY2hhZnRlbic7CiRsYW5nWydwcm9wZXJ0aWVzX2hlbHAxJ10gPSAnR2ViZW4gU2llIGRpZSBBdXN3YWhsLVdlcnRlIGVpbiwgamV3ZWlscyBpbiBlaW5lciBuZXVlbiBaZWlsZS4gVW50ZXJzdCZ1dW1sO3R6dCBhdWNoIFZhbHVlfE9wdGlvbk5hbWUgUGFhcmUgdW5kL29kZXIgU21hcnR5LVRhZ3MnOwokbGFuZ1sncGFyc2VzbWFydHknXSA9ICdEYXRlbiBkdXJjaCBTbWFydHkgdmVyYXJiZWl0ZW4nOwokbGFuZ1snY2xlYXJzdHlsZXNoZWV0Y2FjaGUnXSA9ICdad2lzY2hlbmdlc3BlaWNoZXJ0ZW4gU3R5bGVzaGVldHMgbCZvdW1sO3NjaGVuJzsKJGxhbmdbJ2NsZWFyc3R5bGVzaGVldGNhY2hlX2hlbHAnXSA9ICdBdXRvbWF0aXNjaCB6d2lzY2hlbmdlc3BlaWNoZXJ0ZW4gU3R5bGVzaGVldHMgbCZvdW1sO3NjaGVuIG5hY2ggJkF1bWw7bmRlcnVuZyBkaWVzZXIgRWluc3RlbGx1bmcuIFZPUlNJQ0hUIEJFSSBERVIgVkVSV0VORFVORyEnOwokbGFuZ1snZWRpdG9ycyddID0gJ0JlYXJiZWl0ZXInOwokbGFuZ1snZmllbGRkZWZhZGRlZCddID0gJ0RpZSBGZWxkLURlZmluaXRpb24gd3VyZGUgaGluenVnZWYmdXVtbDtndCc7CiRsYW5nWydmaWVsZGRlZnN1cGRhdGVkJ10gPSAnRGllIExpc3RlIGRlciBGZWxkLURlZmluaXRpb25lbiB3dXJkZSBha3R1YWxpc2llcnQnOwokbGFuZ1sndGl0bGVfY3VzdG9tX21vZHVsZW5hbWUnXSA9ICdCZW51dHplcmRlZmluaWVydGUgTW9kdWxuYW1lJzsKJGxhbmdbJ2hlbHBfY3VzdG9tX21vZHVsZW5hbWUnXSA9ICdTaWUgayZvdW1sO25uZW4gZGVuIE1vZHVsbmFtZW4gaGllciAmYXVtbDtuZGVybi4gRXMgd2lyZCBhbHMgVGl0ZWwgZGVyIE1vZHVsIEFkbWluLVNlaXRlbiB1bmQgYWxzIE1lbiZ1dW1sOyBUZXh0IHZlcndlbmRldC4nOwokbGFuZ1sndGl0bGVfYWRtaW5fc2VjdGlvbiddID0gJ0FkbWluLUJlcmVpY2gnOwokbGFuZ1snaGVscF9hZG1pbl9zZWN0aW9uJ10gPSAnVyZhdW1sO2hsZW4gU2llIGRlbiBBZG1pbi1CZXJlaWNoICh2b24gVG9wLUxldmVsIEFkbWluIE1lbnUpLCB3byBkaWVzZXMgTW9kdWwgenUgZ2VoJm91bWw7cnQuIDxzdHJvbmc+SGlud2Vpczo8L3N0cm9uZz4gQmVudXR6ZXIgbWl0IEVkaXRvci1CZXJlY2h0aWd1bmdlbiBoYWJlbiBrZWluZW4gWnVncmlmZiBhdWYgZGVuIEFkbWluLUJlcmVpY2ghJzsKJGxhbmdbJ3NldHRpbmdzc2F2ZWQnXSA9ICdEaWUgRWluc3RlbGx1bmdlbiB3dXJkZW4gZXJmb2xncmVpY2ggZ2VzcGVpY2hlcnQhJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25TZXR0aW5nQ2hhbmdlJ10gPSAnQXVzZiZ1dW1sO2hyZW4sIG5hY2hkZW0gZGllICZBdW1sO25kZXJ1bmdlbiBkZXMgRWluc3RlbGx1bmdlbiBnZXNwZWljaGVydCB3dXJkZW4uJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25TZXR0aW5nQ2hhbmdlJ10gPSAnPHA+QXVzZiZ1dW1sO2hyZW4sIG5hY2hkZW0gZGllICZBdW1sO25kZXJ1bmdlbiBkZXIgRWluc3RlbGx1bmdlbiBnZXNwZWljaGVydCB3dXJkZW4uPC9wPg0KPGg0PlBhcmFtZXRlcjwvaDQ+DQo8dWw+DQo8bGk+ZmllbGRpZDwvbGk+DQo8bGk+bmFtZTwvbGk+DQo8bGk+YWxpYXM8L2xpPg0KPGxpPnZhbHVlPC9saT4NCjxsaT5jbGVhcmNhY2hlPC9saT4NCjwvdWw+JzsKJGxhbmdbJ3V0bWEnXSA9ICcxNTY4NjEzNTMuMTIzODA0NjQzNS4xMzg2MTQ5MDIzLjEzODYxNDkwMjMuMTM4NjE0OTAyMy4xJzsKJGxhbmdbJ3V0bWMnXSA9ICcxNTY4NjEzNTMnOwokbGFuZ1sndXRteiddID0gJzE1Njg2MTM1My4xMzg2MTQ5MDIzLjEuMS51dG1jY249KHJlZmVycmFsKXx1dG1jc3I9Zm9ydW0uY21zbWFkZXNpbXBsZS5vcmd8dXRtY2N0PS9pbmRleC5waHB8dXRtY21kPXJlZmVycmFsJzsKJGxhbmdbJ3V0bWInXSA9ICcxNTY4NjEzNTMnOwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lang/ext/fr_FR.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnVW4gbW9kdWxlIHF1aSAmZWFjdXRlO3RlbmQgbGVzIHBhcmFtJmVncmF2ZTt0cmVzIGdsb2JhdXguIFZvdXMgcG91dmV6IGRlZmluaXIgdW4gbm9tYnJlIGlsbGltaXQmZWFjdXRlOyBkZSBwYXJhbSZlZ3JhdmU7dHJlcyByJmVhY3V0ZTt1dGlsaXNhYmxlcyBzb3VzIGZvcm1lIGRlIHZhcmlhYmxlIFNNQVJUWSBkYW5zIGxlIHRlbXBsYXRlIG91IGxhIHBhZ2UgKGV0IG0mZWNpcmM7bWUgZGFucyBsZXMgZmV1aWxsZXMgZGUgc3R5bGVzKSYjMDM5OzsnOwokbGFuZ1sncG9zdGluc3RhbGwnXSA9ICdDdXN0b21HUyBtb2R1bGUgaW5zdGFsbCZlYWN1dGU7IGF2ZWMgc3VjYyZlZ3JhdmU7cyEnOwokbGFuZ1sndW5pbnN0YWxsX2NvbmZpcm0nXSA9ICdWb3VsZXotdm91cyB2cmFpbWVudCBkJmVhY3V0ZTtzaW5zdGFsbGVyIGxlIG1vZHVsZSBDdXN0b21HUyA/JzsKJGxhbmdbJ3Bvc3R1bmluc3RhbGwnXSA9ICdDdXN0b21HUyBkJmVhY3V0ZTtzaW5zdGFsbCZlYWN1dGU7IGF2ZWMgc3VjYyZlYWN1dGU7cyEnOwokbGFuZ1snbm93J10gPSAnTWFpbnRlbmFudCc7CiRsYW5nWyd0aXRsZV9nZW5lcmFsJ10gPSAnRyZlYWN1dGU7biZlYWN1dGU7cmFsJzsKJGxhbmdbJ2Nob29zZXRpbWUnXSA9ICdDaG9pc2lyIGwmIzAzOTtoZXVyZSc7CiRsYW5nWyd0aW1lJ10gPSAnaGV1cmUnOwokbGFuZ1sndGl0bGVfZmllbGRkZWZzJ10gPSAnRCZlYWN1dGU7ZmluaXRpb25zIGRlIGNoYW1wcyc7CiRsYW5nWydzbWFydHl2YXInXSA9ICdWYXJpYWJsZXMgU21hcnR5JzsKJGxhbmdbJ3RleHRmaWVsZCddID0gJ0NoYW1wIHRleHRlJzsKJGxhbmdbJ3B1bGxkb3duJ10gPSAnTGlzdGUgZGUgY2hvaXgnOwokbGFuZ1snY2hlY2tib3gnXSA9ICdDYXNlICZhZ3JhdmU7IGNvY2hlcic7CiRsYW5nWydyYWRpb2J1dHRvbnMnXSA9ICdHcm91cGUgZGUgYm91dG9ucyByYWRpb3MnOwokbGFuZ1snZGF0ZXBpY2tlciddID0gJ1NlbGV0ZXVyIGRlIGRhdGUnOwokbGFuZ1snZGF0ZXRpbWVwaWNrZXInXSA9ICdTZWxlY3RldXIgZGUgZGF0ZSBldCBoZXVyZSc7CiRsYW5nWyd0aW1lcGlja2VyJ10gPSAnU2VsZWN0ZXVyIGQmIzAzOTtoZXVyZSc7CiRsYW5nWydjb2xvcnBpY2tlciddID0gJ1NlbGVjdGV1ciBkZSBjb3VsZXVyJzsKJGxhbmdbJ3RleHRhcmVhJ10gPSAnWm9uZSBkZSB0ZXh0ZSc7CiRsYW5nWyd3eXNpd3lnJ10gPSAnV1lTSVdZRyc7CiRsYW5nWydidXR0b24nXSA9ICdCb3V0b24nOwokbGFuZ1snbWF4bGVuZ3RoJ10gPSAnTG9uZ3VldXIgbWF4aS4nOwokbGFuZ1sncHJvcGVydGllcyddID0gJ1Byb3ByaSZlYWN1dGU7dCZlYWN1dGU7cyc7CiRsYW5nWydwcm9wZXJ0aWVzX2hlbHAxJ10gPSAnRW50cmV6IGxlcyB2YWxldXJzLCB1bmUgcGFyIGxpZ25lLiBTdXBwb3J0ZSBhdXNzaSBsYSBmb3JtZSBWYWxldXJ8TGliZWxsJmVhY3V0ZTsgZXQvb3UgdW5lIGJhbGlzZXMgU01BUlRZJzsKJGxhbmdbJ3BhcnNlc21hcnR5J10gPSAnSW50ZXJwciZlYWN1dGU7dGF0aW9uIFNNQVJUWSc7CiRsYW5nWydjbGVhcnN0eWxlc2hlZXRjYWNoZSddID0gJ1ZpZGVyIGxlIGNhY2hlIENTUyc7CiRsYW5nWydjbGVhcnN0eWxlc2hlZXRjYWNoZV9oZWxwJ10gPSAnVmlkZXIgYXV0b21hdGlxdWVtZW50IGxlIGNhY2hlIENTUyBhcHImZWdyYXZlO3MgbW9kaWZpY2F0aW9uIGRlIGNlIHBhcmFtJmVncmF2ZTt0cmUuIFV0aWxpc2VyIGF2ZWMgcHImZWFjdXRlO2NhdXRpb24uJzsKJGxhbmdbJ2ZpZWxkZGVmYWRkZWQnXSA9ICdQYXJhbSZlZ3JhdmU7dHJlIGFqb3V0JmVhY3V0ZTshJzsKJGxhbmdbJ2ZpZWxkZGVmc3VwZGF0ZWQnXSA9ICdMaXN0ZSBtaXNlICZhZ3JhdmU7IGpvdXIhJzsKJGxhbmdbJ3RpdGxlX2N1c3RvbV9tb2R1bGVuYW1lJ10gPSAnTm9tIGR1IG1vZHVsZSBwZXJzb25uYWxpcyZlYWN1dGU7Lic7CiRsYW5nWydoZWxwX2N1c3RvbV9tb2R1bGVuYW1lJ10gPSAnVm91cyBwb3V2ZXogY2hhbmdlciBsZSBub20gZHUgbW9kdWxlIGNvbW1lIHZvdXMgbGUgc291aGFpdGV6LiBJbCBzZXJhIHV0aWxpc2VyIGNvbW1lIHRpdHJlIGRhbnMgbGVzIHBhZ2VzIGQmIzAzOTthZG1pbi4gZXQgZGFucyBsZXMgbWVudXMuJzsKJGxhbmdbJ3RpdGxlX2FkbWluX3NlY3Rpb24nXSA9ICdTZWN0aW9uIGQmIzAzOTthZG1pbmlzdHJhdGlvbic7CiRsYW5nWydoZWxwX2FkbWluX3NlY3Rpb24nXSA9ICdDaG9pc2lzc2V6IGxhIHNlY3Rpb24gZGFucyBsYXF1ZWxsZSBsZSBtb2R1bGUgYXBwYXJhaXRyYS4nOwokbGFuZ1snc2V0dGluZ3NzYXZlZCddID0gJ1BhcmFtJmVncmF2ZTt0cmVzIHNhdXZlZ2FyZCZlYWN1dGU7cyEnOwokbGFuZ1snZXZlbnRfaW5mb19PblNldHRpbmdDaGFuZ2UnXSA9ICdFdmVuZW1lbnQgZCZlYWN1dGU7Y2xlbmNoJmVhY3V0ZTsgcXVhbmQgdW4gcGFyYW0mZWdyYXZlO3RyZSBlc3QgbW9kaWZpJmVhY3V0ZTsuJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25TZXR0aW5nQ2hhbmdlJ10gPSAnPHA+RXZlbmVtZW50IGQmZWFjdXRlO2NsZW5jaCZlYWN1dGU7IHF1YW5kIHVuIHBhcmFtJmVncmF2ZTt0cmUgZXN0IG1vZGlmaSZlYWN1dGU7LjwvcD4NCjxoND5QYXJhbWV0cmVzPC9oND4NCjx1bD4NCjxsaT5maWVsZGlkPC9saT4NCjxsaT5uYW1lPC9saT4NCjxsaT5hbGlhczwvbGk+DQo8bGk+dmFsdWU8L2xpPg0KPGxpPmNsZWFyY2FjaGU8L2xpPg0KPC91bD4nOwokbGFuZ1sndXRtYSddID0gJzE1Njg2MTM1My4xOTY5NTU5NzQ4LjEzODYwMjM1NzEuMTM4NjAyMzU3MS4xMzg2MDIzNTcxLjEnOwokbGFuZ1sndXRtYyddID0gJzE1Njg2MTM1Myc7CiRsYW5nWyd1dG16J10gPSAnMTU2ODYxMzUzLjEzODYwMjM1NzEuMS4xLnV0bWNjbj0oZGlyZWN0KXx1dG1jc3I9KGRpcmVjdCl8dXRtY21kPShub25lKSc7CiRsYW5nWyd1dG1iJ10gPSAnMTU2ODYxMzUzJzsKPz4=]]></data>
	</file>
	<file>
	  <filename>/lang/ext/nl_NL.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnRWVuIG1vZHVsZSBkaWUgZGUgQWxnZW1lbmUgSW5zdGVsbGluZ2VuIHZhbiBkZSB3ZWJzaXRlIHVpdGJyZWlkdCBtZXQgZXh0cmEgaW5zdGVsYmFyZSBwYXJhbWV0ZXJzLiBVIGt1bnQgZWVuIG9uYmVwZXJrdCBhYW50YWwgdmVsZGVuIGRlZmluaSZldW1sO3JlbiBkaWUgZ2VicnVpa3Qga3VubmVuIHdvcmRlbiBhbHMgU21hcnR5IHZhcmlhYmVsZW4gaW4gc2phYmxvbmVuIGVuIG9wIHBhZ2luYSYjMDM5O3MuJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsJ10gPSAnTW9kdWxlIHN1Y2Nlc3ZvbCBnZSZpdW1sO25zdGFsbGVlcmQhJzsKJGxhbmdbJ3VuaW5zdGFsbF9jb25maXJtJ10gPSAnV2VldCB1IHpla2VyIGRhdCB1IGRlemUgbW9kdWxlIHdpbHQgZGUmaXVtbDtuc3RhbGxlcmVuPyc7CiRsYW5nWydwb3N0dW5pbnN0YWxsJ10gPSAnRGUgbW9kdWxlIGlzIGdlZGUmaXVtbDtuc3RhbGxlZXJkISc7CiRsYW5nWydub3cnXSA9ICdudSc7CiRsYW5nWyd0aXRsZV9nZW5lcmFsJ10gPSAnQWxnZW1lZW4nOwokbGFuZ1snY2hvb3NldGltZSddID0gJ0tpZXMgdGlqZCc7CiRsYW5nWyd0aW1lJ10gPSAndGlqZCc7CiRsYW5nWyd0aXRsZV9maWVsZGRlZnMnXSA9ICdWZWxkIERlZmluaXRpZXMnOwokbGFuZ1snc21hcnR5dmFyJ10gPSAnU21hcnR5IHZhcmlhYmVsZSc7CiRsYW5nWyd0ZXh0ZmllbGQnXSA9ICdUZWtzdHZlbGQnOwokbGFuZ1sncHVsbGRvd24nXSA9ICdLZXV6ZW1lbnUnOwokbGFuZ1snY2hlY2tib3gnXSA9ICdWaW5rdmFramUnOwokbGFuZ1sncmFkaW9idXR0b25zJ10gPSAnUmFkaW9idXR0b24gZ3JvZXAnOwokbGFuZ1snZGF0ZXBpY2tlciddID0gJ0RhdHVta2llemVyJzsKJGxhbmdbJ2RhdGV0aW1lcGlja2VyJ10gPSAnRGF0dW1UaWpka2llemVyJzsKJGxhbmdbJ3RpbWVwaWNrZXInXSA9ICdUaWpka2llemVyJzsKJGxhbmdbJ2NvbG9ycGlja2VyJ10gPSAnS2xldXJraWV6ZXInOwokbGFuZ1sndGV4dGFyZWEnXSA9ICdUZWtzdGJsb2snOwokbGFuZ1snd3lzaXd5ZyddID0gJ1d5c2l3eWcnOwokbGFuZ1snZmllbGRzZXRzdGFydCddID0gJ1ZlbGRlbmdyb2VwIHN0YXJ0JzsKJGxhbmdbJ2ZpZWxkc2V0ZW5kJ10gPSAnVmVsZGVuZ3JvZXAgZWluZGUnOwokbGFuZ1snYnV0dG9uJ10gPSAnRHJ1a2tub3AnOwokbGFuZ1snbWF4bGVuZ3RoJ10gPSAnTWF4aW11bSBsZW5ndGUnOwokbGFuZ1sncHJvcGVydGllcyddID0gJ0VpZ2Vuc2NoYXBwZW4nOwokbGFuZ1sncHJvcGVydGllc19oZWxwMSddID0gJ1Z1bCBkZSBrZXV6ZXdhYXJkZW4gaW4sIGVsa2Ugb3AgZWVuIG5pZXV3ZSByZWdlbC4gT25kZXJzdGV1bnQgb29rIFdhYXJkZXxLZXV6ZU5hYW0gcGFyZW4gZW4vb2YgU21hcnR5IHRhZ3MnOwokbGFuZ1sncGFyc2VzbWFydHknXSA9ICdEYXRhIHZpYSBTbWFydHkgcGFyc2VuJzsKJGxhbmdbJ2NsZWFyc3R5bGVzaGVldGNhY2hlJ10gPSAnVmVyd2lqZGVyIHN0eWxlc2hlZXQgYnVmZmVyJzsKJGxhbmdbJ2NsZWFyc3R5bGVzaGVldGNhY2hlX2hlbHAnXSA9ICdBdXRvbWF0aXNjaCBkZSBzdHlsZXNoZWV0IGJ1ZmZlciBsZWdlbiBuYSBoZXQgd2lqemlnZW4gdmFuIGRlIGluc3RlbGxpbmcuIEdFQlJVSUsgQkVIT0VEWkFBTSEnOwokbGFuZ1snZWRpdG9ycyddID0gJ1dpanppZ2luZ3NyZWNodGVuJzsKJGxhbmdbJ2ZpZWxkZGVmYWRkZWQnXSA9ICdWZWxkIERlZmluaXRpZSBpcyB0b2VnZXZvZWdkJzsKJGxhbmdbJ2ZpZWxkZGVmc3VwZGF0ZWQnXSA9ICdWZWxkIERlZmluaXRpZSBsaWpzdCBpcyBiaWpnZXdlcmt0JzsKJGxhbmdbJ3RpdGxlX2N1c3RvbV9tb2R1bGVuYW1lJ10gPSAnRWlnZW4gTW9kdWxlbmFhbSc7CiRsYW5nWydoZWxwX2N1c3RvbV9tb2R1bGVuYW1lJ10gPSAnVSBrdW50IGhpZXIgZGUgTW9kdWxlbmFhbSBuYWFyIGVpZ2VuIHdlbnMgYWFucGFzc2VuLiBIZXQgemFsIGdlYnJ1aWt0IHdvcmRlbiBhbHMgdGl0ZWwgb3AgZGUgbW9kdWxlIGJlaGVlcnBhZ2luYSBlbiBhbHMgbWVudSB0ZWtzdC4nOwokbGFuZ1sndGl0bGVfYWRtaW5fc2VjdGlvbiddID0gJ0FkbWluIFNlY3RpZSc7CiRsYW5nWydoZWxwX2FkbWluX3NlY3Rpb24nXSA9ICdLaWVzIGRlIEFkbWluIFNlY3RpZSAodmFuIGhldCBBZG1pbiB0b3BtZW51KSB3YWFyIGRlemUgbW9kdWxlIG1vZXQgd29yZGVuIGdldG9vbmQuIDxiPk9wbWVya2luZzwvYj46IEFkbWluIGdlYnJ1aWtlcnMgbWV0IEVkaXRvciByZWNodGVuIGhlYmJlbiBnZWVuIHRvZWdhbmcgdG90IGRlIEFkbWluIHNlY3RpZSEnOwokbGFuZ1snc2V0dGluZ3NzYXZlZCddID0gJ0luc3RlbGxpbmdlbiBvcGdlc2xhZ2VuISc7CiRsYW5nWydldmVudF9pbmZvX09uU2V0dGluZ0NoYW5nZSddID0gJ0VlbiB0YWcgZGllIHdvcmR0IGFhbmdlcm9lcGVuIG5hZGF0IGVlbiBpbnN0ZWxsaW5nIGlzIGdld2lqemlnZC4nOwokbGFuZ1snZXZlbnRfaGVscF9PblNldHRpbmdDaGFuZ2UnXSA9ICc8cD5FZW4gdGFnIGRpZSB3b3JkdCBhYW5nZXJvZXBlbiBuYWRhdCBlZW4gaW5zdGVsbGluZyBpcyBnZXdpanppZ2QuPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPmZpZWxkaWQ8L2xpPg0KPGxpPm5hbWU8L2xpPg0KPGxpPmFsaWFzPC9saT4NCjxsaT52YWx1ZTwvbGk+DQo8bGk+Y2xlYXJjYWNoZTwvbGk+DQo8L3VsPic7CiRsYW5nWyd1dG1hJ10gPSAnMTU2ODYxMzUzLjEyMzgwNDY0MzUuMTM4NjE0OTAyMy4xMzg2MTQ5MDIzLjEzODYxNDkwMjMuMSc7CiRsYW5nWyd1dG1jJ10gPSAnMTU2ODYxMzUzJzsKJGxhbmdbJ3V0bXonXSA9ICcxNTY4NjEzNTMuMTM4NjE0OTAyMy4xLjEudXRtY2NuPShyZWZlcnJhbCl8dXRtY3NyPWZvcnVtLmNtc21hZGVzaW1wbGUub3JnfHV0bWNjdD0vaW5kZXgucGhwfHV0bWNtZD1yZWZlcnJhbCc7CiRsYW5nWyd1dG1iJ10gPSAnMTU2ODYxMzUzJzsKPz4=]]></data>
	</file>
	<file>
	  <filename>/lib/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/jquery/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/jquery/colorpicker.css</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[LmNvbG9ycGlja2VyIHsNCgl3aWR0aDogMzUwcHg7DQoJaGVpZ2h0OiAxNzBweDsNCglvdmVyZmxvdzogaGlkZGVuOw0KCXBvc2l0aW9uOiBhYnNvbHV0ZTsNCglmb250LWZhbWlseTogQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjsNCglkaXNwbGF5OiBub25lOw0KICAgIHotaW5kZXg6IDk5OTsNCiAgICBib3JkZXI6M3B4IHNvbGlkICNCQUJBQkE7DQogICAgYmFja2dyb3VuZC1jb2xvcjojMTIxMjEyOw0KICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNXB4Ow0KICAgIC1tb3otYm9yZGVyLXJhZGl1czogNXB4Ow0KICAgIGJvcmRlci1yYWRpdXM6IDVweDsNCn0NCg0KLmNvbG9ycGlja2VyIGlucHV0IHsNCglsaW5lLWhlaWdodDogbm9ybWFsOw0KCXdpZHRoOiBhdXRvOw0KfQ0KDQouY29sb3JwaWNrZXJfY29sb3Igew0KCXdpZHRoOiAxNTBweDsNCgloZWlnaHQ6IDE1MHB4Ow0KCWxlZnQ6IDlweDsNCgl0b3A6IDhweDsNCglwb3NpdGlvbjogYWJzb2x1dGU7DQoJYmFja2dyb3VuZDogI2YwMDsNCglvdmVyZmxvdzogaGlkZGVuOw0KCWN1cnNvcjogY3Jvc3NoYWlyOw0KCWJvcmRlcjogMnB4IHNvbGlkICM0NzQ4NDg7DQp9DQouY29sb3JwaWNrZXJfY29sb3IgZGl2IHsNCglwb3NpdGlvbjogYWJzb2x1dGU7DQoJdG9wOiAwOw0KCWxlZnQ6IDA7DQoJd2lkdGg6IDE1MHB4Ow0KCWhlaWdodDogMTUwcHg7DQoJYmFja2dyb3VuZDogdXJsKCJpbWFnZXMvb3ZlcmxheS5wbmciKTsNCn0NCi5jb2xvcnBpY2tlcl9jb2xvciBkaXYgZGl2IHsNCglwb3NpdGlvbjogYWJzb2x1dGU7DQoJdG9wOiAwOw0KCWxlZnQ6IDA7DQoJd2lkdGg6IDExcHg7DQoJaGVpZ2h0OiAxMXB4Ow0KCW92ZXJmbG93OiBoaWRkZW47DQoJYmFja2dyb3VuZDogdXJsKCJpbWFnZXMvc2VsZWN0LmdpZiIpOw0KCW1hcmdpbjogLTVweCAwIDAgLTVweDsNCn0NCi5jb2xvcnBpY2tlcl9odWUgew0KCXBvc2l0aW9uOiBhYnNvbHV0ZTsNCgl0b3A6IDhweDsNCglsZWZ0OiAxNzVweDsNCgl3aWR0aDogMTdweDsNCgloZWlnaHQ6IDE1MHB4Ow0KCWN1cnNvcjogbi1yZXNpemU7DQogICAgYmFja2dyb3VuZDogdXJsKCJpbWFnZXMvc2VsZWN0X2h1ZS5wbmciKTsNCiAgICBib3JkZXI6IDJweCBzb2xpZCAjNDc0ODQ4Ow0KfQ0KLmNvbG9ycGlja2VyX2h1ZSBkaXYgew0KCXBvc2l0aW9uOiBhYnNvbHV0ZTsNCgl3aWR0aDogMzVweDsNCgloZWlnaHQ6IDlweDsNCglvdmVyZmxvdzogaGlkZGVuOw0KCWJhY2tncm91bmQ6IHVybCgiaW1hZ2VzL2luZGljLmdpZiIpIGxlZnQgdG9wOw0KCW1hcmdpbjogLTRweCAwIDAgMDsNCglsZWZ0OiAtOXB4Ow0KfQ0KLmNvbG9ycGlja2VyX25ld19jb2xvciB7DQoJcG9zaXRpb246IGFic29sdXRlOw0KCXdpZHRoOiA2MHB4Ow0KCWhlaWdodDogMzBweDsNCglsZWZ0OiAyMDhweDsNCgl0b3A6IDhweDsNCgliYWNrZ3JvdW5kOiAjZjAwOw0KICAgIGJvcmRlcjogMnB4IHNvbGlkICM0NzQ4NDg7DQp9DQouY29sb3JwaWNrZXJfY3VycmVudF9jb2xvciB7DQoJcG9zaXRpb246IGFic29sdXRlOw0KCXdpZHRoOiA2MHB4Ow0KCWhlaWdodDogMzBweDsNCglsZWZ0OiAyNzhweDsNCgl0b3A6IDhweDsNCgliYWNrZ3JvdW5kOiAjZjAwOw0KICAgIGJvcmRlcjogMnB4IHNvbGlkICM0NzQ4NDg7DQp9DQouY29sb3JwaWNrZXIgaW5wdXQgew0KCWJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Ow0KCWJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50Ow0KCXBvc2l0aW9uOiBhYnNvbHV0ZTsNCglmb250LXNpemU6IDEwcHg7DQoJZm9udC1mYW1pbHk6IEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7DQoJY29sb3I6ICM4OTg5ODk7DQoJdG9wOiAycHg7DQoJcmlnaHQ6IDEwcHg7DQoJdGV4dC1hbGlnbjogcmlnaHQ7DQoJbWFyZ2luOiAwOw0KCXBhZGRpbmc6IDA7DQoJaGVpZ2h0OiAxM3B4Ow0KCXdpZHRoOiAzMHB4Ow0KCWJvcmRlcjogMXB4IHNvbGlkICMyZjJmMmY7DQoJYmFja2dyb3VuZC1jb2xvcjogICMxMjEyMTI7DQp9DQouY29sb3JwaWNrZXJfaGV4IHsNCglwb3NpdGlvbjogYWJzb2x1dGU7DQoJd2lkdGg6IDcwcHg7DQoJaGVpZ2h0OiAyMHB4Ow0KCWxlZnQ6IDIwOXB4Ow0KCXRvcDogMTM5cHg7DQp9DQouY29sb3JwaWNrZXJfaGV4IGlucHV0IHsNCglyaWdodDogNnB4Ow0KCXdpZHRoOiA0N3B4Ow0KfQ0KDQoNCi5jb2xvcnBpY2tlcl9maWVsZCwgLmNvbG9ycGlja2VyX2hleCB7DQogICAgYmFja2dyb3VuZDogdXJsKCJpbWFnZXMvZ3JhZGllbnRfaW5wdXQucG5nIikgY2VudGVyIHJlcGVhdC14OyAgIC8vIEZhbGxiYWNrDQogICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjMUExQTFBIDAlLCAjMzAzMDMwIDQ1JSwgIzI2MjUyNSA0NyUsICMyRTJFMkUgMTAwJSk7DQogICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAjMUExQTFBIDAlLCAjMzAzMDMwIDQ1JSwgIzI2MjUyNSA0NyUsICMyRTJFMkUgMTAwJSk7DQogICAgYmFja2dyb3VuZDogLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsICMxQTFBMUEgMCUsICMzMDMwMzAgNDUlLCAjMjYyNTI1IDQ3JSwgIzJFMkUyRSAxMDAlKTsNCiAgICBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCAjMUExQTFBIDAlLCAjMzAzMDMwIDQ1JSwgIzI2MjUyNSA0NyUsICMyRTJFMkUgMTAwJSk7DQogICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvcCwgIzFBMUExQSAwJSwgIzMwMzAzMCA0NSUsICMyNjI1MjUgNDclLCAjMkUyRTJFIDEwMCUpOw0KICAgIGJvcmRlcjogMXB4IHNvbGlkICMyZjJmMmY7DQp9DQoNCg0KLmNvbG9ycGlja2VyX2ZpZWxkIHsNCgloZWlnaHQ6IDIwcHg7DQoJd2lkdGg6IDYwcHg7DQoJYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wOw0KCXBvc2l0aW9uOiBhYnNvbHV0ZTsNCn0NCg0KLmNvbG9ycGlja2VyX2ZvY3VzLCAuY29sb3JwaWNrZXJfZm9jdXMgaW5wdXQgew0KICAgIGJvcmRlcjogMXB4IHNvbGlkICM0ZDRiNGI7DQp9DQoNCi5jb2xvcnBpY2tlcl9maWVsZCBsYWJlbCwgLmNvbG9ycGlja2VyX2hleCBsYWJlbCB7DQogICAgY29sb3I6ICNEOEQ4RDg7DQogICAgZm9udC1zaXplOiAgMTFweDsNCiAgICB0ZXh0LXNoYWRvdzogbm9uZTsNCiAgICBkaXNwbGF5OiBibG9jazsNCiAgICBtYXJnaW4tdG9wOiAycHg7DQogICAgbWFyZ2luLWxlZnQ6IDVweDsNCiAgICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7DQogICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTsNCiAgICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7DQogICAgLW1vei11c2VyLXNlbGVjdDogLW1vei1ub25lOw0KICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTsNCiAgICAtby11c2VyLXNlbGVjdDogbm9uZTsNCiAgICB1c2VyLXNlbGVjdDogbm9uZTsNCn0NCi5jb2xvcnBpY2tlcl9maWVsZCBzcGFuIHsNCiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoImltYWdlcy9ncmFiYmVyLnBuZyIpOw0KICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjsNCglwb3NpdGlvbjogYWJzb2x1dGU7DQoJd2lkdGg6IDEycHg7DQoJaGVpZ2h0OiAyMHB4Ow0KCW92ZXJmbG93OiBoaWRkZW47DQoJdG9wOiAwOw0KCXJpZ2h0OiAwOw0KCWN1cnNvcjogbi1yZXNpemU7DQogICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lOw0KICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7DQogICAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lOw0KICAgIC1tb3otdXNlci1zZWxlY3Q6IC1tb3otbm9uZTsNCiAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7DQogICAgLW8tdXNlci1zZWxlY3Q6IG5vbmU7DQogICAgdXNlci1zZWxlY3Q6IG5vbmU7DQp9DQoNCi5jb2xvcnBpY2tlcl9zbGlkZXIgc3BhbiB7ICAgIA0KICAgIGJhY2tncm91bmQ6IHVybCgiaW1hZ2VzL2dyYWRpZW50X2dyYWJiZXIucG5nIikgY2VudGVyOyAgIC8vIEZhbGxiYWNrDQogICAgYmFja2dyb3VuZDogdXJsKCJpbWFnZXMvZ3JhYmJlci5wbmciKSwgLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjOTA5MDkwIDAlLCAjNGQ0YzRjIDEwMCUpOw0KICAgIGJhY2tncm91bmQ6IHVybCgiaW1hZ2VzL2dyYWJiZXIucG5nIiksIC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgIzkwOTA5MCAwJSwgIzRkNGM0YyAxMDAlKTsNCiAgICBiYWNrZ3JvdW5kOiB1cmwoImltYWdlcy9ncmFiYmVyLnBuZyIpLCAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgIzkwOTA5MCAwJSwgIzRkNGM0YyAxMDAlKTsNCiAgICBiYWNrZ3JvdW5kOiB1cmwoImltYWdlcy9ncmFiYmVyLnBuZyIpLCAtby1saW5lYXItZ3JhZGllbnQodG9wLCAjOTA5MDkwIDAlLCAjNGQ0YzRjIDEwMCUpOw0KICAgIGJhY2tncm91bmQ6IHVybCgiaW1hZ2VzL2dyYWJiZXIucG5nIiksIGxpbmVhci1ncmFkaWVudCh0b3AsICM5MDkwOTAgMCUsICM0ZDRjNGMgMTAwJSk7DQp9DQoNCi5jb2xvcnBpY2tlcl9yZ2JfciB7DQoJdG9wOiA0OXB4Ow0KCWxlZnQ6IDIwOXB4Ow0KfQ0KLmNvbG9ycGlja2VyX3JnYl9nIHsNCgl0b3A6IDc5cHg7DQoJbGVmdDogMjA5cHg7DQp9DQouY29sb3JwaWNrZXJfcmdiX2Igew0KCXRvcDogMTA5cHg7DQoJbGVmdDogMjA5cHg7DQp9DQouY29sb3JwaWNrZXJfaHNiX2ggew0KCXRvcDogNDlweDsNCglsZWZ0OiAyNzlweDsNCn0NCi5jb2xvcnBpY2tlcl9oc2JfcyB7DQoJdG9wOiA3OXB4Ow0KCWxlZnQ6IDI3OXB4Ow0KfQ0KLmNvbG9ycGlja2VyX2hzYl9iIHsNCgl0b3A6IDEwOXB4Ow0KCWxlZnQ6IDI3OXB4Ow0KfQ0KLmNvbG9ycGlja2VyX3N1Ym1pdCB7DQoJcG9zaXRpb246IGFic29sdXRlOw0KCXdpZHRoOiAyMnB4Ow0KCWhlaWdodDogMjJweDsNCgliYWNrZ3JvdW5kOiB1cmwoImltYWdlcy9zdWJtaXQucG5nIikgdG9wOw0KCWxlZnQ6IDMxOXB4Ow0KCXRvcDogMTM5cHg7DQoJb3ZlcmZsb3c6IGhpZGRlbjsNCn0NCg0KLmNvbG9yU2VsZWN0b3Igew0KICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICB3aWR0aDogMzZweDsNCiAgICBoZWlnaHQ6IDM2cHg7DQogICAgbGVmdDogMzUlOw0KICAgIG1hcmdpbi10b3A6IDVweDsNCiAgICBtYXJnaW4tYm90dG9tOiA1cHg7DQogICAgYmFja2dyb3VuZDogdXJsKCJpbWFnZXMvc2VsZWN0LnBuZyIpOw0KfQ0KLmNvbG9yU2VsZWN0b3IgZGl2IHsNCiAgICBwb3NpdGlvbjogYWJzb2x1dGU7DQoJdG9wOiAzcHg7DQoJbGVmdDogM3B4Ow0KCXdpZHRoOiAzMHB4Ow0KCWhlaWdodDogMzBweDsNCgliYWNrZ3JvdW5kOiB1cmwoImltYWdlcy9zZWxlY3QucG5nIikgY2VudGVyOw0KfQ0K]]></data>
	</file>
	<file>
	  <filename>/lib/jquery/colorpicker.min.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[KGZ1bmN0aW9uKGUpe3ZhciB0PWZ1bmN0aW9uKCl7ZnVuY3Rpb24geChlKXtpZihlLm9yaWdpbmFsRXZlbnQucHJldmVudERlZmF1bHQpZS5vcmlnaW5hbEV2ZW50LnByZXZlbnREZWZhdWx0KCk7cmV0dXJuIGZhbHNlfXZhciB0PTY1LG49JzxkaXYgY2xhc3M9ImNvbG9ycGlja2VyIj48ZGl2IGNsYXNzPSJjb2xvcnBpY2tlcl9jb2xvciI+PGRpdj48ZGl2PjwvZGl2PjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9ImNvbG9ycGlja2VyX2h1ZSI+PGRpdj48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJjb2xvcnBpY2tlcl9uZXdfY29sb3IiPjwvZGl2PjxkaXYgY2xhc3M9ImNvbG9ycGlja2VyX2N1cnJlbnRfY29sb3IiPjwvZGl2PjxkaXYgY2xhc3M9ImNvbG9ycGlja2VyX2hleCI+PGxhYmVsIGZvcj0iaGV4Ij4jPC9sYWJlbD48aW5wdXQgdHlwZT0idGV4dCIgbWF4bGVuZ3RoPSI2IiBzaXplPSI2IiBpZD0iaGV4IiAvPjwvZGl2PjxkaXYgY2xhc3M9ImNvbG9ycGlja2VyX3JnYl9yIGNvbG9ycGlja2VyX2ZpZWxkIj48bGFiZWwgZm9yPSJyYmdfciI+UjwvbGFiZWw+PGlucHV0IHR5cGU9InRleHQiIG1heGxlbmd0aD0iMyIgc2l6ZT0iMyIgaWQ9InJnYl9yIiAvPjxzcGFuPjwvc3Bhbj48L2Rpdj48ZGl2IGNsYXNzPSJjb2xvcnBpY2tlcl9yZ2JfZyBjb2xvcnBpY2tlcl9maWVsZCI+PGxhYmVsIGZvcj0icmJnX2ciPkc8L2xhYmVsPjxpbnB1dCB0eXBlPSJ0ZXh0IiBtYXhsZW5ndGg9IjMiIHNpemU9IjMiIGlkPSJyZ2JfZyIgLz48c3Bhbj48L3NwYW4+PC9kaXY+PGRpdiBjbGFzcz0iY29sb3JwaWNrZXJfcmdiX2IgY29sb3JwaWNrZXJfZmllbGQiPjxsYWJlbCBmb3I9InJiZ19iIj5CPC9sYWJlbD48aW5wdXQgdHlwZT0idGV4dCIgbWF4bGVuZ3RoPSIzIiBzaXplPSIzIiBpZD0icmdiX2IiIC8+PHNwYW4+PC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9ImNvbG9ycGlja2VyX2hzYl9oIGNvbG9ycGlja2VyX2ZpZWxkIj48bGFiZWwgZm9yPSJoc2JfaCI+SDwvbGFiZWw+PGlucHV0IHR5cGU9InRleHQiIG1heGxlbmd0aD0iMyIgc2l6ZT0iMyIgaWQ9ImhzYl9oIiAvPjxzcGFuPjwvc3Bhbj48L2Rpdj48ZGl2IGNsYXNzPSJjb2xvcnBpY2tlcl9oc2JfcyBjb2xvcnBpY2tlcl9maWVsZCI+PGxhYmVsIGZvcj0iaHNiX3MiPlM8L2xhYmVsPjxpbnB1dCB0eXBlPSJ0ZXh0IiBtYXhsZW5ndGg9IjMiIHNpemU9IjMiIGlkPSJoc2JfcyIgLz48c3Bhbj48L3NwYW4+PC9kaXY+PGRpdiBjbGFzcz0iY29sb3JwaWNrZXJfaHNiX2IgY29sb3JwaWNrZXJfZmllbGQiPjxsYWJlbCBmb3I9ImhzYl9iIj5CPC9sYWJlbD48aW5wdXQgdHlwZT0idGV4dCIgbWF4bGVuZ3RoPSIzIiBzaXplPSIzIiBpZD0iaHNiX2IiIC8+PHNwYW4+PC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9ImNvbG9ycGlja2VyX3N1Ym1pdCI+PC9kaXY+PC9kaXY+JyxyPXtldmVudE5hbWU6ImNsaWNrIixvblNob3c6ZnVuY3Rpb24oKXt9LG9uQmVmb3JlU2hvdzpmdW5jdGlvbigpe30sb25IaWRlOmZ1bmN0aW9uKCl7fSxvbkNoYW5nZTpmdW5jdGlvbigpe30sb25TdWJtaXQ6ZnVuY3Rpb24oKXt9LGNvbG9yOiJmZjAwMDAiLGxpdmVQcmV2aWV3OnRydWUsZmxhdDpmYWxzZX0saT1mdW5jdGlvbih0LG4pe3ZhciByPUhTQlRvUkdCKHQpO2UobikuZGF0YSgiY29sb3JwaWNrZXIiKS5maWVsZHMuZXEoMSkudmFsKHIucikuZW5kKCkuZXEoMikudmFsKHIuZykuZW5kKCkuZXEoMykudmFsKHIuYikuZW5kKCl9LHM9ZnVuY3Rpb24odCxuKXtlKG4pLmRhdGEoImNvbG9ycGlja2VyIikuZmllbGRzLmVxKDQpLnZhbCh0LmgpLmVuZCgpLmVxKDUpLnZhbCh0LnMpLmVuZCgpLmVxKDYpLnZhbCh0LmIpLmVuZCgpfSxvPWZ1bmN0aW9uKHQsbil7ZShuKS5kYXRhKCJjb2xvcnBpY2tlciIpLmZpZWxkcy5lcSgwKS52YWwoSFNCVG9IZXgodCkpLmVuZCgpfSx1PWZ1bmN0aW9uKHQsbil7ZShuKS5kYXRhKCJjb2xvcnBpY2tlciIpLnNlbGVjdG9yLmNzcygiYmFja2dyb3VuZENvbG9yIiwiIyIrSFNCVG9IZXgoe2g6dC5oLHM6MTAwLGI6MTAwfSkpO2UobikuZGF0YSgiY29sb3JwaWNrZXIiKS5zZWxlY3RvckluZGljLmNzcyh7bGVmdDpwYXJzZUludCgxNTAqdC5zLzEwMCwxMCksdG9wOnBhcnNlSW50KDE1MCooMTAwLXQuYikvMTAwLDEwKX0pfSxhPWZ1bmN0aW9uKHQsbil7ZShuKS5kYXRhKCJjb2xvcnBpY2tlciIpLmh1ZS5jc3MoInRvcCIscGFyc2VJbnQoMTUwLTE1MCp0LmgvMzYwLDEwKSl9LGY9ZnVuY3Rpb24odCxuKXtlKG4pLmRhdGEoImNvbG9ycGlja2VyIikuY3VycmVudENvbG9yLmNzcygiYmFja2dyb3VuZENvbG9yIiwiIyIrSFNCVG9IZXgodCkpfSxsPWZ1bmN0aW9uKHQsbil7ZShuKS5kYXRhKCJjb2xvcnBpY2tlciIpLm5ld0NvbG9yLmNzcygiYmFja2dyb3VuZENvbG9yIiwiIyIrSFNCVG9IZXgodCkpfSxjPWZ1bmN0aW9uKG4pe3ZhciByPW4uY2hhckNvZGV8fG4ua2V5Q29kZXx8LTE7aWYocj50JiZyPD05MHx8cj09PTMyKXtyZXR1cm4gZmFsc2V9dmFyIGk9ZSh0aGlzKS5wYXJlbnQoKS5wYXJlbnQoKTtpZihpLmRhdGEoImNvbG9ycGlja2VyIikubGl2ZVByZXZpZXc9PT10cnVlKXtoLmFwcGx5KHRoaXMpfX0saD1mdW5jdGlvbih0KXt2YXIgbj1lKHRoaXMpLnBhcmVudCgpLnBhcmVudCgpLHI7aWYodGhpcy5wYXJlbnROb2RlLmNsYXNzTmFtZS5pbmRleE9mKCJfaGV4Iik+MCl7bi5kYXRhKCJjb2xvcnBpY2tlciIpLmNvbG9yPXI9SGV4VG9IU0IoZml4SGV4KHRoaXMudmFsdWUpKX1lbHNlIGlmKHRoaXMucGFyZW50Tm9kZS5jbGFzc05hbWUuaW5kZXhPZigiX2hzYiIpPjApe24uZGF0YSgiY29sb3JwaWNrZXIiKS5jb2xvcj1yPWZpeEhTQih7aDpwYXJzZUludChuLmRhdGEoImNvbG9ycGlja2VyIikuZmllbGRzLmVxKDQpLnZhbCgpLDEwKSxzOnBhcnNlSW50KG4uZGF0YSgiY29sb3JwaWNrZXIiKS5maWVsZHMuZXEoNSkudmFsKCksMTApLGI6cGFyc2VJbnQobi5kYXRhKCJjb2xvcnBpY2tlciIpLmZpZWxkcy5lcSg2KS52YWwoKSwxMCl9KX1lbHNle24uZGF0YSgiY29sb3JwaWNrZXIiKS5jb2xvcj1yPVJHQlRvSFNCKGZpeFJHQih7cjpwYXJzZUludChuLmRhdGEoImNvbG9ycGlja2VyIikuZmllbGRzLmVxKDEpLnZhbCgpLDEwKSxnOnBhcnNlSW50KG4uZGF0YSgiY29sb3JwaWNrZXIiKS5maWVsZHMuZXEoMikudmFsKCksMTApLGI6cGFyc2VJbnQobi5kYXRhKCJjb2xvcnBpY2tlciIpLmZpZWxkcy5lcSgzKS52YWwoKSwxMCl9KSl9aWYodCl7aShyLG4uZ2V0KDApKTtvKHIsbi5nZXQoMCkpO3MocixuLmdldCgwKSl9dShyLG4uZ2V0KDApKTthKHIsbi5nZXQoMCkpO2wocixuLmdldCgwKSk7bi5kYXRhKCJjb2xvcnBpY2tlciIpLm9uQ2hhbmdlLmFwcGx5KG4sW3IsSFNCVG9IZXgociksSFNCVG9SR0IocildKX0scD1mdW5jdGlvbih0KXt2YXIgbj1lKHRoaXMpLnBhcmVudCgpLnBhcmVudCgpO24uZGF0YSgiY29sb3JwaWNrZXIiKS5maWVsZHMucGFyZW50KCkucmVtb3ZlQ2xhc3MoImNvbG9ycGlja2VyX2ZvY3VzIil9LGQ9ZnVuY3Rpb24oKXt0PXRoaXMucGFyZW50Tm9kZS5jbGFzc05hbWUuaW5kZXhPZigiX2hleCIpPjA/NzA6NjU7ZSh0aGlzKS5wYXJlbnQoKS5wYXJlbnQoKS5kYXRhKCJjb2xvcnBpY2tlciIpLmZpZWxkcy5wYXJlbnQoKS5yZW1vdmVDbGFzcygiY29sb3JwaWNrZXJfZm9jdXMiKTtlKHRoaXMpLnBhcmVudCgpLmFkZENsYXNzKCJjb2xvcnBpY2tlcl9mb2N1cyIpfSx2PWZ1bmN0aW9uKHQpe3ZhciBuPWUodGhpcykucGFyZW50KCkuZmluZCgiaW5wdXQiKS5mb2N1cygpO3ZhciByPXtlbDplKHRoaXMpLnBhcmVudCgpLmFkZENsYXNzKCJjb2xvcnBpY2tlcl9zbGlkZXIiKSxtYXg6dGhpcy5wYXJlbnROb2RlLmNsYXNzTmFtZS5pbmRleE9mKCJfaHNiX2giKT4wPzM2MDp0aGlzLnBhcmVudE5vZGUuY2xhc3NOYW1lLmluZGV4T2YoIl9oc2IiKT4wPzEwMDoyNTUseTp0LnBhZ2VZLGZpZWxkOm4sdmFsOnBhcnNlSW50KG4udmFsKCksMTApLHByZXZpZXc6ZSh0aGlzKS5wYXJlbnQoKS5wYXJlbnQoKS5kYXRhKCJjb2xvcnBpY2tlciIpLmxpdmVQcmV2aWV3fTtlKGRvY3VtZW50KS5vbigibW91c2V1cCIscixnKTtlKGRvY3VtZW50KS5vbigibW91c2Vtb3ZlIixyLG0pO3JldHVybiB4KHQpfSxtPWZ1bmN0aW9uKGUpe2UuZGF0YS5maWVsZC52YWwoTWF0aC5tYXgoMCxNYXRoLm1pbihlLmRhdGEubWF4LHBhcnNlSW50KGUuZGF0YS52YWwrZS5wYWdlWS1lLmRhdGEueSwxMCkpKSk7aWYoZS5kYXRhLnByZXZpZXcpe2guYXBwbHkoZS5kYXRhLmZpZWxkLmdldCgwKSxbdHJ1ZV0pfXJldHVybiBmYWxzZX0sZz1mdW5jdGlvbih0KXtoLmFwcGx5KHQuZGF0YS5maWVsZC5nZXQoMCksW3RydWVdKTt0LmRhdGEuZWwucmVtb3ZlQ2xhc3MoImNvbG9ycGlja2VyX3NsaWRlciIpLmZpbmQoImlucHV0IikuZm9jdXMoKTtlKGRvY3VtZW50KS5vZmYoIm1vdXNldXAiLGcpO2UoZG9jdW1lbnQpLm9mZigibW91c2Vtb3ZlIixtKTtyZXR1cm4gZmFsc2V9LGI9ZnVuY3Rpb24odCl7dmFyIG49e2NhbDplKHRoaXMpLnBhcmVudCgpLHk6ZSh0aGlzKS5vZmZzZXQoKS50b3B9O24ucHJldmlldz1uLmNhbC5kYXRhKCJjb2xvcnBpY2tlciIpLmxpdmVQcmV2aWV3O2UoZG9jdW1lbnQpLm9uKCJtb3VzZXVwIixuLEUpO2UoZG9jdW1lbnQpLm9uKCJtb3VzZW1vdmUiLG4sdyk7cmV0dXJuIHgodCl9LHc9ZnVuY3Rpb24oZSl7aC5hcHBseShlLmRhdGEuY2FsLmRhdGEoImNvbG9ycGlja2VyIikuZmllbGRzLmVxKDQpLnZhbChwYXJzZUludCgzNjAqKDE1MC1NYXRoLm1heCgwLE1hdGgubWluKDE1MCxlLnBhZ2VZLWUuZGF0YS55KSkpLzE1MCwxMCkpLmdldCgwKSxbZS5kYXRhLnByZXZpZXddKTtyZXR1cm4gZmFsc2V9LEU9ZnVuY3Rpb24odCl7aSh0LmRhdGEuY2FsLmRhdGEoImNvbG9ycGlja2VyIikuY29sb3IsdC5kYXRhLmNhbC5nZXQoMCkpO28odC5kYXRhLmNhbC5kYXRhKCJjb2xvcnBpY2tlciIpLmNvbG9yLHQuZGF0YS5jYWwuZ2V0KDApKTtlKGRvY3VtZW50KS5vZmYoIm1vdXNldXAiLEUpO2UoZG9jdW1lbnQpLm9mZigibW91c2Vtb3ZlIix3KTtyZXR1cm4gZmFsc2V9LFM9ZnVuY3Rpb24odCl7eT1lKHRoaXMpLm9mZnNldCgpLnRvcDtwcmV2aWV3PXQuZGF0YS5jYWwuZGF0YSgiY29sb3JwaWNrZXIiKS5saXZlUHJldmlldztoLmFwcGx5KHQuZGF0YS5jYWwuZGF0YSgiY29sb3JwaWNrZXIiKS5maWVsZHMuZXEoNCkudmFsKHBhcnNlSW50KDM2MCooMTUwLU1hdGgubWF4KDAsTWF0aC5taW4oMTUwLHQucGFnZVkteSkpKS8xNTAsMTApKS5nZXQoMCksW3ByZXZpZXddKX07ZG93blNlbGVjdG9yPWZ1bmN0aW9uKHQpe3ZhciBuPXtjYWw6ZSh0aGlzKS5wYXJlbnQoKSxwb3M6ZSh0aGlzKS5vZmZzZXQoKX07bi5wcmV2aWV3PW4uY2FsLmRhdGEoImNvbG9ycGlja2VyIikubGl2ZVByZXZpZXc7ZShkb2N1bWVudCkub24oIm1vdXNldXAiLG4sdXBTZWxlY3Rvcik7ZShkb2N1bWVudCkub24oIm1vdXNlbW92ZSIsbixtb3ZlU2VsZWN0b3IpO2UoIi5jb2xvcnBpY2tlcl9jb2xvciIsIG4uY2FsKS5vbmUoImNsaWNrIixuLG1vdmVTZWxlY3Rvcik7dC5kYXRhPW47bW92ZVNlbGVjdG9yKHQpO3JldHVybiB4KHQpfSxtb3ZlU2VsZWN0b3I9ZnVuY3Rpb24oZSl7aC5hcHBseShlLmRhdGEuY2FsLmRhdGEoImNvbG9ycGlja2VyIikuZmllbGRzLmVxKDYpLnZhbChwYXJzZUludCgxMDAqKDE1MC1NYXRoLm1heCgwLE1hdGgubWluKDE1MCxlLnBhZ2VZLWUuZGF0YS5wb3MudG9wKSkpLzE1MCwxMCkpLmVuZCgpLmVxKDUpLnZhbChwYXJzZUludCgxMDAqTWF0aC5tYXgoMCxNYXRoLm1pbigxNTAsZS5wYWdlWC1lLmRhdGEucG9zLmxlZnQpKS8xNTAsMTApKS5nZXQoMCksW2UuZGF0YS5wcmV2aWV3XSk7cmV0dXJuIGZhbHNlfSx1cFNlbGVjdG9yPWZ1bmN0aW9uKHQpe3ZhciBuPXtjYWw6ZSh0aGlzKS5wYXJlbnQoKSxwb3M6ZSh0aGlzKS5vZmZzZXQoKX07aSh0LmRhdGEuY2FsLmRhdGEoImNvbG9ycGlja2VyIikuY29sb3IsdC5kYXRhLmNhbC5nZXQoMCkpO28odC5kYXRhLmNhbC5kYXRhKCJjb2xvcnBpY2tlciIpLmNvbG9yLHQuZGF0YS5jYWwuZ2V0KDApKTtlKGRvY3VtZW50KS5vZmYoIm1vdXNldXAiLHVwU2VsZWN0b3IpO2UoZG9jdW1lbnQpLm9mZigibW91c2Vtb3ZlIixtb3ZlU2VsZWN0b3IpO3JldHVybiBmYWxzZX0sZW50ZXJTdWJtaXQ9ZnVuY3Rpb24odCl7ZSh0aGlzKS5hZGRDbGFzcygiY29sb3JwaWNrZXJfZm9jdXMiKX0sbGVhdmVTdWJtaXQ9ZnVuY3Rpb24odCl7ZSh0aGlzKS5yZW1vdmVDbGFzcygiY29sb3JwaWNrZXJfZm9jdXMiKX0sY2xpY2tTdWJtaXQ9ZnVuY3Rpb24odCl7dmFyIG49ZSh0aGlzKS5wYXJlbnQoKTt2YXIgcj1uLmRhdGEoImNvbG9ycGlja2VyIikuY29sb3I7bi5kYXRhKCJjb2xvcnBpY2tlciIpLm9yaWdDb2xvcj1yO2YocixuLmdldCgwKSk7bi5kYXRhKCJjb2xvcnBpY2tlciIpLm9uU3VibWl0KHIsSFNCVG9IZXgociksSFNCVG9SR0Iociksbi5kYXRhKCJjb2xvcnBpY2tlciIpLmVsLG4uZGF0YSgiY29sb3JwaWNrZXIiKS5wYXJlbnQpfSxzaG93PWZ1bmN0aW9uKHQpe3ZhciBuPWUoIiMiK2UodGhpcykuZGF0YSgiY29sb3JwaWNrZXJJZCIpKTtuLmRhdGEoImNvbG9ycGlja2VyIikub25CZWZvcmVTaG93LmFwcGx5KHRoaXMsW24uZ2V0KDApXSk7dmFyIHI9ZSh0aGlzKS5vZmZzZXQoKTt2YXIgaT1nZXRWaWV3cG9ydCgpO3ZhciBzPXIudG9wK3RoaXMub2Zmc2V0SGVpZ2h0O3ZhciBvPXIubGVmdDtpZihzKzE3Nj5pLnQraS5oKXtzLT10aGlzLm9mZnNldEhlaWdodCsxNzZ9aWYobyszNTY+aS5sK2kudyl7by09MzU2fW4uY3NzKHtsZWZ0Om8rInB4Iix0b3A6cysicHgifSk7aWYobi5kYXRhKCJjb2xvcnBpY2tlciIpLm9uU2hvdy5hcHBseSh0aGlzLFtuLmdldCgwKV0pIT1mYWxzZSl7bi5zaG93KCl9ZShkb2N1bWVudCkub24oIm1vdXNlZG93biIse2NhbDpufSxoaWRlKTtyZXR1cm4gZmFsc2V9LGhpZGU9ZnVuY3Rpb24odCl7aWYoIWlzQ2hpbGRPZih0LmRhdGEuY2FsLmdldCgwKSx0LnRhcmdldCx0LmRhdGEuY2FsLmdldCgwKSkpe2lmKHQuZGF0YS5jYWwuZGF0YSgiY29sb3JwaWNrZXIiKS5vbkhpZGUuYXBwbHkodGhpcyxbdC5kYXRhLmNhbC5nZXQoMCldKSE9ZmFsc2Upe3QuZGF0YS5jYWwuaGlkZSgpfWUoZG9jdW1lbnQpLm9mZigibW91c2Vkb3duIixoaWRlKX19LGlzQ2hpbGRPZj1mdW5jdGlvbihlLHQsbil7aWYoZT09PXQpe3JldHVybiB0cnVlfWlmKGUuY29udGFpbnMpe3JldHVybiBlLmNvbnRhaW5zKHQpfWlmKGUuY29tcGFyZURvY3VtZW50UG9zaXRpb24pe3JldHVybiEhKGUuY29tcGFyZURvY3VtZW50UG9zaXRpb24odCkmMTYpfXZhciByPXQucGFyZW50Tm9kZTt3aGlsZShyJiZyIT09bil7aWYocj09PWUpe3JldHVybiB0cnVlfXI9ci5wYXJlbnROb2RlfXJldHVybiBmYWxzZX0sZ2V0Vmlld3BvcnQ9ZnVuY3Rpb24oKXt2YXIgZT1kb2N1bWVudC5jb21wYXRNb2RlPT0iQ1NTMUNvbXBhdCI7cmV0dXJue2w6d2luZG93LnBhZ2VYT2Zmc2V0fHwoZT9kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc2Nyb2xsTGVmdDpkb2N1bWVudC5ib2R5LnNjcm9sbExlZnQpLHQ6d2luZG93LnBhZ2VZT2Zmc2V0fHwoZT9kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc2Nyb2xsVG9wOmRvY3VtZW50LmJvZHkuc2Nyb2xsVG9wKSx3OndpbmRvdy5pbm5lcldpZHRofHwoZT9kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50V2lkdGg6ZG9jdW1lbnQuYm9keS5jbGllbnRXaWR0aCksaDp3aW5kb3cuaW5uZXJIZWlnaHR8fChlP2RvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRIZWlnaHQ6ZG9jdW1lbnQuYm9keS5jbGllbnRIZWlnaHQpfX0sZml4SFNCPWZ1bmN0aW9uKGUpe3JldHVybntoOk1hdGgubWluKDM2MCxNYXRoLm1heCgwLGUuaCkpLHM6TWF0aC5taW4oMTAwLE1hdGgubWF4KDAsZS5zKSksYjpNYXRoLm1pbigxMDAsTWF0aC5tYXgoMCxlLmIpKX19LGZpeFJHQj1mdW5jdGlvbihlKXtyZXR1cm57cjpNYXRoLm1pbigyNTUsTWF0aC5tYXgoMCxlLnIpKSxnOk1hdGgubWluKDI1NSxNYXRoLm1heCgwLGUuZykpLGI6TWF0aC5taW4oMjU1LE1hdGgubWF4KDAsZS5iKSl9fSxmaXhIZXg9ZnVuY3Rpb24oZSl7dmFyIHQ9Ni1lLmxlbmd0aDtpZih0PjApe3ZhciBuPVtdO2Zvcih2YXIgcj0wO3I8dDtyKyspe24ucHVzaCgiMCIpfW4ucHVzaChlKTtlPW4uam9pbigiIil9cmV0dXJuIGV9LEhleFRvUkdCPWZ1bmN0aW9uKGUpe2U9cGFyc2VJbnQoZS5pbmRleE9mKCIjIik+LTE/ZS5zdWJzdHJpbmcoMSk6ZSwxNik7cmV0dXJue3I6ZT4+MTYsZzooZSY2NTI4MCk+PjgsYjplJjI1NX19LEhleFRvSFNCPWZ1bmN0aW9uKGUpe3JldHVybiBSR0JUb0hTQihIZXhUb1JHQihlKSl9LFJHQlRvSFNCPWZ1bmN0aW9uKGUpe3ZhciB0PXtoOjAsczowLGI6MH07dmFyIG49TWF0aC5taW4oZS5yLGUuZyxlLmIpO3ZhciByPU1hdGgubWF4KGUucixlLmcsZS5iKTt2YXIgaT1yLW47dC5iPXI7dC5zPXIhPTA/MjU1KmkvcjowO2lmKHQucyE9MCl7aWYoZS5yPT09cil7dC5oPShlLmctZS5iKS9pfWVsc2UgaWYoZS5nPT09cil7dC5oPTIrKGUuYi1lLnIpL2l9ZWxzZXt0Lmg9NCsoZS5yLWUuZykvaX19ZWxzZXt0Lmg9LTF9dC5oKj02MDtpZih0Lmg8MCl7dC5oKz0zNjB9dC5zKj0xMDAvMjU1O3QuYio9MTAwLzI1NTtyZXR1cm4gdH0sSFNCVG9SR0I9ZnVuY3Rpb24oZSl7dmFyIHQ9e307dmFyIG49TWF0aC5yb3VuZChlLmgpO3ZhciByPU1hdGgucm91bmQoZS5zKjI1NS8xMDApO3ZhciBpPU1hdGgucm91bmQoZS5iKjI1NS8xMDApO2lmKHI9PTApe3Qucj10Lmc9dC5iPWl9ZWxzZXt2YXIgcz1pO3ZhciBvPSgyNTUtcikqaS8yNTU7dmFyIHU9KHMtbykqKG4lNjApLzYwO2lmKG49PT0zNjApe249MH1pZihuPDYwKXt0LnI9czt0LmI9bzt0Lmc9byt1fWVsc2UgaWYobjwxMjApe3QuZz1zO3QuYj1vO3Qucj1zLXV9ZWxzZSBpZihuPDE4MCl7dC5nPXM7dC5yPW87dC5iPW8rdX1lbHNlIGlmKG48MjQwKXt0LmI9czt0LnI9bzt0Lmc9cy11fWVsc2UgaWYobjwzMDApe3QuYj1zO3QuZz1vO3Qucj1vK3V9ZWxzZSBpZihuPDM2MCl7dC5yPXM7dC5nPW87dC5iPXMtdX1lbHNle3Qucj0wO3QuZz0wO3QuYj0wfX1yZXR1cm57cjpNYXRoLnJvdW5kKHQuciksZzpNYXRoLnJvdW5kKHQuZyksYjpNYXRoLnJvdW5kKHQuYil9fSxSR0JUb0hleD1mdW5jdGlvbih0KXt2YXIgbj1bdC5yLnRvU3RyaW5nKDE2KSx0LmcudG9TdHJpbmcoMTYpLHQuYi50b1N0cmluZygxNildO2UuZWFjaChuLGZ1bmN0aW9uKGUsdCl7aWYodC5sZW5ndGg9PT0xKXtuW2VdPSIwIit0fX0pO3JldHVybiBuLmpvaW4oIiIpfSxSR0JzdHJpbmdUb0hleD1mdW5jdGlvbihlKXtmdW5jdGlvbiBuKGUpe3JldHVybigiMCIrcGFyc2VJbnQoZSwxMCkudG9TdHJpbmcoMTYpKS5zbGljZSgtMil9aWYoIWUpe3JldHVybiIjRkZGRkZGIn12YXIgdD1lLm1hdGNoKC9ecmdiXCgoXGQrKSxccyooXGQrKSxccyooXGQrKVwpJC8pO2lmKHQpe3JldHVybiIjIituKHRbMV0pK24odFsyXSkrbih0WzNdKX1lbHNle3JldHVybiBlfX0sSFNCVG9IZXg9ZnVuY3Rpb24oZSl7cmV0dXJuIFJHQlRvSGV4KEhTQlRvUkdCKGUpKX0scmVzdG9yZU9yaWdpbmFsPWZ1bmN0aW9uKCl7dmFyIHQ9ZSh0aGlzKS5wYXJlbnQoKTt2YXIgbj10LmRhdGEoImNvbG9ycGlja2VyIikub3JpZ0NvbG9yO3QuZGF0YSgiY29sb3JwaWNrZXIiKS5jb2xvcj1uO2kobix0LmdldCgwKSk7byhuLHQuZ2V0KDApKTtzKG4sdC5nZXQoMCkpO3Uobix0LmdldCgwKSk7YShuLHQuZ2V0KDApKTtsKG4sdC5nZXQoMCkpfTtyZXR1cm57aW5pdDpmdW5jdGlvbih0KXt0PWUuZXh0ZW5kKHt9LHIsdHx8e30pO2lmKHR5cGVvZiB0LmNvbG9yPT0ic3RyaW5nIil7aWYodC5jb2xvci5zdWJzdHJpbmcoMCw0KT09InJnYigiKXt0LmNvbG9yPUhleFRvSFNCKFJHQnN0cmluZ1RvSGV4KHQuY29sb3IpKX1lbHNle3QuY29sb3I9SGV4VG9IU0IodC5jb2xvcil9fWVsc2UgaWYodC5jb2xvci5yIT09dW5kZWZpbmVkJiZ0LmNvbG9yLmchPT11bmRlZmluZWQmJnQuY29sb3IuYiE9PXVuZGVmaW5lZCl7dC5jb2xvcj1SR0JUb0hTQih0LmNvbG9yKX1lbHNlIGlmKHQuY29sb3IuaCE9PXVuZGVmaW5lZCYmdC5jb2xvci5zIT09dW5kZWZpbmVkJiZ0LmNvbG9yLmIhPT11bmRlZmluZWQpe3QuY29sb3I9Zml4SFNCKHQuY29sb3IpfWVsc2V7cmV0dXJuIHRoaXN9cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe2lmKCFlKHRoaXMpLmRhdGEoImNvbG9ycGlja2VySWQiKSl7dmFyIHI9ZS5leHRlbmQoe30sdCk7ci5vcmlnQ29sb3I9dC5jb2xvcjt2YXIgbSxnPTA7bT1lKCIjY29sb3JwaWNrZXJfIitnKS5sZW5ndGg9PT0wO3doaWxlKCFtKXtnPXBhcnNlSW50KE1hdGgucmFuZG9tKCkqMWU0KTttPWUoIiNjb2xvcnBpY2tlcl8iK2cpLmxlbmd0aD09PTB9dmFyIHk9ImNvbG9ycGlja2VyXyIrZztlKHRoaXMpLmRhdGEoImNvbG9ycGlja2VySWQiLHkpO3IucGFyZW50PWUodGhpcyk7dmFyIHc9ZShuKTt3LmF0dHIoImlkIix5KS5hdHRyKCJkYXRhLXBhcmVudCIsZSh0aGlzKS5hdHRyKCJpZCIpKTtpZihyLmZsYXQpe3cuYXBwZW5kVG8odGhpcykuc2hvdygpfWVsc2V7dy5hcHBlbmRUbyhkb2N1bWVudC5ib2R5KX1yLmZpZWxkcz13LmZpbmQoImlucHV0Iikub24oImtleXVwIixjKS5vbigiY2hhbmdlIixoKS5vbigiYmx1ciIscCkub24oImZvY3VzIixkKTt3LmZpbmQoInNwYW4iKS5vbigibW91c2Vkb3duIix2KS5lbmQoKS5maW5kKCI+ZGl2LmNvbG9ycGlja2VyX2N1cnJlbnRfY29sb3IiKS5vbigiY2xpY2siLHJlc3RvcmVPcmlnaW5hbCk7ci5zZWxlY3Rvcj13LmZpbmQoImRpdi5jb2xvcnBpY2tlcl9jb2xvciIpLm9uKCJtb3VzZWRvd24iLGRvd25TZWxlY3Rvcik7ci5zZWxlY3RvckluZGljPXIuc2VsZWN0b3IuZmluZCgiZGl2IGRpdiIpO3IuZWw9dGhpcztyLmh1ZT13LmZpbmQoImRpdi5jb2xvcnBpY2tlcl9odWUgZGl2Iik7dy5maW5kKCJkaXYuY29sb3JwaWNrZXJfaHVlIikub24oIm1vdXNlZG93biIsYik7dy5maW5kKCJkaXYuY29sb3JwaWNrZXJfaHVlIikub24oIm1vdXNlZG93biIse2NhbDp3fSxTKTtyLm5ld0NvbG9yPXcuZmluZCgiZGl2LmNvbG9ycGlja2VyX25ld19jb2xvciIpO3IuY3VycmVudENvbG9yPXcuZmluZCgiZGl2LmNvbG9ycGlja2VyX2N1cnJlbnRfY29sb3IiKTt3LmRhdGEoImNvbG9ycGlja2VyIixyKTt3LmZpbmQoImRpdi5jb2xvcnBpY2tlcl9zdWJtaXQiKS5vbigibW91c2VlbnRlciIsZW50ZXJTdWJtaXQpLm9uKCJtb3VzZWxlYXZlIixsZWF2ZVN1Ym1pdCkub24oImNsaWNrIixjbGlja1N1Ym1pdCk7aShyLmNvbG9yLHcuZ2V0KDApKTtzKHIuY29sb3Isdy5nZXQoMCkpO28oci5jb2xvcix3LmdldCgwKSk7YShyLmNvbG9yLHcuZ2V0KDApKTt1KHIuY29sb3Isdy5nZXQoMCkpO2Yoci5jb2xvcix3LmdldCgwKSk7bChyLmNvbG9yLHcuZ2V0KDApKTtpZihyLmZsYXQpe3cuY3NzKHtwb3NpdGlvbjoicmVsYXRpdmUiLGRpc3BsYXk6ImJsb2NrIn0pfWVsc2V7ZSh0aGlzKS5vbihyLmV2ZW50TmFtZSxzaG93KX19fSl9LHNob3dQaWNrZXI6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7aWYoZSh0aGlzKS5kYXRhKCJjb2xvcnBpY2tlcklkIikpe3Nob3cuYXBwbHkodGhpcyl9fSl9LGhpZGVQaWNrZXI6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7aWYoZSh0aGlzKS5kYXRhKCJjb2xvcnBpY2tlcklkIikpe2UoIiMiK2UodGhpcykuZGF0YSgiY29sb3JwaWNrZXJJZCIpKS5oaWRlKCl9fSl9LHNldENvbG9yOmZ1bmN0aW9uKHQpe2lmKHR5cGVvZiB0PT0ic3RyaW5nIil7aWYodC5zdWJzdHJpbmcoMCw0KT09InJnYigiKXt0PUhleFRvSFNCKFJHQnN0cmluZ1RvSGV4KHQpKX1lbHNle3Q9SGV4VG9IU0IodCl9fWVsc2UgaWYodC5yIT09dW5kZWZpbmVkJiZ0LmchPT11bmRlZmluZWQmJnQuYiE9PXVuZGVmaW5lZCl7dD1SR0JUb0hTQih0KX1lbHNlIGlmKHQuaCE9PXVuZGVmaW5lZCYmdC5zIT09dW5kZWZpbmVkJiZ0LmIhPT11bmRlZmluZWQpe3Q9Zml4SFNCKHQpfWVsc2V7cmV0dXJuIHRoaXN9cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe2lmKGUodGhpcykuZGF0YSgiY29sb3JwaWNrZXJJZCIpKXt2YXIgbj1lKCIjIitlKHRoaXMpLmRhdGEoImNvbG9ycGlja2VySWQiKSk7bi5kYXRhKCJjb2xvcnBpY2tlciIpLmNvbG9yPXQ7bi5kYXRhKCJjb2xvcnBpY2tlciIpLm9yaWdDb2xvcj10O2kodCxuLmdldCgwKSk7cyh0LG4uZ2V0KDApKTtvKHQsbi5nZXQoMCkpO2EodCxuLmdldCgwKSk7dSh0LG4uZ2V0KDApKTtmKHQsbi5nZXQoMCkpO2wodCxuLmdldCgwKSl9fSl9fX0oKTtlLmZuLmV4dGVuZCh7Q29sb3JQaWNrZXI6dC5pbml0LENvbG9yUGlja2VySGlkZTp0LmhpZGVQaWNrZXIsQ29sb3JQaWNrZXJTaG93OnQuc2hvd1BpY2tlcixDb2xvclBpY2tlclNldENvbG9yOnQuc2V0Q29sb3J9KX0pKGpRdWVyeSk=]]></data>
	</file>
	<file>
	  <filename>/lib/jquery/images/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/jquery/images/grabber.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAAAoAAAAUCAYAAAC07qxWAAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9wMDhQNJWmCTWAAAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAAAqElEQVQoz9WSQQqEMBRDX/4vegcPoO39T1IQRj2MnYW26Gx0O4EsmjwaCtUwDLxRMLNHyN0J7v4Idl1HCCE8gn3fvwMlvQfN3fn1PM+3M4CZGVfnnAFKzvmWK05Tm/gsC0C5TLbe9n2nehpHdAhJAKV2gSNoKqUACGC6rJnOVMC6rnW6AGXbttZZnZFEirHdVqdrZ0hcnVJCJxVjVM2VUnr3e/TzmH8Gvwp1LUPEIyV7AAAAAElFTkSuQmCC]]></data>
	</file>
	<file>
	  <filename>/lib/jquery/images/gradient_grabber.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAAAoAAAAUCAYAAAC07qxWAAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9wMDhQ1LunPKBMAAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAAAjUlEQVQoz8WRSwrDMAxEn0LvaYhLCiZd5BCBGBov7ctKuKuG9AemBCoYEKNhxEiSUqo01MnMaBOqtgm12fFvqztT5RXzPL9xnZmxxxIjAEuMT3ynZuwxTRMigohwW9eNl+s41p/C5Jy3PoTwPcxlGAAQEUopG//x4GfvAfB9z2Muzrl67Geaf62HO7YK7xaqk63wWlRJAAAAAElFTkSuQmCC]]></data>
	</file>
	<file>
	  <filename>/lib/jquery/images/gradient_input.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAAAEAAAAUCAYAAABMDlehAAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAAOxAAADsQBlSsOGwAAAAd0SU1FB9wMDhQzJ8ZJNzEAAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAAAMElEQVQI12XIsQ0AIAwDQfszRvZfMZShiYSA5vS2MrOJCAEMZz61qoTtQbaw9H8XGzOmBLCgalg3AAAAAElFTkSuQmCC]]></data>
	</file>
	<file>
	  <filename>/lib/jquery/images/indic.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[R0lGODlhIwAJAJEAADk5OVtbW////wAAACH5BAEAAAIALAAAAAAjAAkAAAInTISpy50WwHG0imiAtFxF+W2dFWaaODYheE6pU37uC2vZTNdQ3hkFADs=]]></data>
	</file>
	<file>
	  <filename>/lib/jquery/images/overlay.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/lib/jquery/images/select.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[R0lGODlhCwALAJECAAAAAP///////wAAACH5BAEAAAIALAAAAAALAAsAAAIflINoG+AeGFgGxEaXxVns2X2dh4CZJXBadDxQlihGAQA7]]></data>
	</file>
	<file>
	  <filename>/lib/jquery/images/select.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAACQAAAAkCAYAAADhAJiYAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAD9SURBVFjD7dixCsIwEMbx/wvcVDvloA+gbm7q4ujri4hbXkTPJS1HVRAlNYUEviUE7gcpJXeYGX2ABlgCW+CQOdtUqyEtM6OHCLCZAPEuG0A86J+YAZUsNG7zCJyAG2CZc0u1jq5+A7B2G2cRsRCCdV2XNSEEExEDzq7+GmDvNu6qmh3TR1UNuLv6e0b3OBxO+iwRkaFO2vOG16B0MNeqoAqqoAqqoAqqoLmDint+fPxIq6BiQTHGckAxxiF/B3nMK9R8v6Ff2iD/n/kGVFyj+NRKT4FS1f4WLuNWejxsuE44bLiOhg2L8sYxRQ6s3EivBVbAbgLELtVq/UjvARmg3gqnVJW4AAAAAElFTkSuQmCC]]></data>
	</file>
	<file>
	  <filename>/lib/jquery/images/select2.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAACQAAAAkCAYAAADhAJiYAAAAIGNIUk0AAHotAACAlQAA+NcAAIhSAABxRQAA6mYAADkHAAAh+QMnhVYAAAAJcEhZcwAACxMAAAsTAQCanBgAAAD+SURBVFjD7ZixCsJADIbvBTrVToKLo3Zza7s49vVFpCCoWNBV6VrPBHIlnhZEuesVEviXo/T7IKVcohQrrXUMWUAyyNpxMmIhE9kvIhFk5UGiL8iOuNCQMp0Ub5M5LCEbSKvdV0uskvFjFErZwfZ2b/Spvur9oXYaZCALmYyfolDBDh7H88W5jAmykMn4hbL62D1M9k4K3204VJ1DrxCVchQREiEREiEREiERGrtQcNePry9pIhSs0HQ2D0cIZUwGF+Iyn6TG+w39Mwbx/8wvQsENim+jtA8pZFAXdvYobS8bKo/LhspaNkzCW8cEubBiYglkCck9SOTESvhK7wmSlbGJL7HzjAAAAABJRU5ErkJggg==]]></data>
	</file>
	<file>
	  <filename>/lib/jquery/images/select3.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAYAAAByDd+UAAAAsElEQVRIie2WQQoCIRSGf2NAvU51irqRB/BG3UB31bKjjM6mv01GDOEMpS7CDwTlPfh86IMnSB4AnFCfO4CbIMkQJ1wv56q27W4PrSRAks45jiGyFmOIdM6RJId0A60kAIga1WklmfabGoIcXdiFXdiFXfg7w3LKKpgLhjgVF8J7vyrv/9+wmtAY006YZJ+kxYVzyfxc7JcmrLXZ+KvCZ6/wm/XeZ0s0H4RFw1EfAI4PF/SwKPwNaWAAAAAASUVORK5CYII=]]></data>
	</file>
	<file>
	  <filename>/lib/jquery/images/select4.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAYAAAByDd+UAAAAiUlEQVRIie3WMQ4CMQxE0R+0cs7CHgXOyznShausUzA0rJQK0TgSkqey0ry4iDJF0g14EJ8X0Isk+Rg8ew/VrvtONQNJaq3pcFdUDne11iRJ23mDagZQIrarZjrnSwTwLQkmmGCCCf4J6GOsBT9f3zpwToIJ/pT5WWzz4dyuIjCA5UW4LKz6APc3LB6aj3+TXXoAAAAASUVORK5CYII=]]></data>
	</file>
	<file>
	  <filename>/lib/jquery/images/select_hue.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAABEAAACWCAYAAAA42GOaAAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9wMDhA1JuAdCP0AAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAABmUlEQVRo3t3ZUXKEIBAE0AYnqSCp5P5nyznQ2gQlH44XsPtjCg/wappFl9b08/U9bAw8vXpKSH/5c9hJIDnBgBXAcwTQIVWBFLCXx4mB1DCTFACJIMY9SQykKpACIBPIeceJgVQFUgAsBHLccWIgVYGU6xZ6/qi+49BI5ZETH9cv/XiXdNhGzwER0hTITu8SjxMDaQpkp58mHicG0hTITv/reJzJEPp8MiHCHYXnRE4CyQDstQAnsWVzBgyFz2OCugMTFC8VUgTbXlB3PE4MhO9MviY0soZB+M7kk9BIDTOJBOGLl68JjaxhEL54+ZrQyKpA3juH5A4D+MZjwKZA+Nrkk9BICzOJBOG7l68JjWxhEL57+SQ00sJMsgsOOdgUSAszyQ7BZ4hNgbQwk/Ddy97QcRJIRoYJmkokpCoQQfG64sRAqgIRFK8rTgykKhBB8briTIbQL7onROgPInGQqkCWF7AcxA3YARN0JiVCl+sJEfolTBykKRDB9yoTNJU5EbqqxEGaAuGLl8eJgTQBsv0alvG8NB0p4x/sttxDWgMgrQAAAABJRU5ErkJggg==]]></data>
	</file>
	<file>
	  <filename>/lib/jquery/images/submit.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAABYAAAAsCAIAAADuN9+nAAAAIGNIUk0AAHotAACAlQAA+NcAAIhSAABxRQAA6mYAADkHAAAh+QMnhVYAAAAJcEhZcwAACxMAAAsTAQCanBgAAAMdSURBVEjHrZRtSFNRHMb9OmGzD85edE7dfJmZKRiRL9gHFUxCyaIMTcu5KU3xXSKKHGOxWGoKvYgoy6SGQylRE4yiNCeWmIpRIEiKmFN0CpJOfbrDc8e8Qh92ejhw4d7/8/tw7jk/N4lEcpIiTN2NeRyjCFO3I3woQhBiihCE5ECiZOLCSM/GMEHHUX4HX9joISvyjDgllh2cJIjg/clM9DYphZP3U1efVG0/rN6+p1str59MqTZ5yTO9EzjDBHHcKVkXfXsfiayDVehS4rEcd1VQ3YKiHsoOa9H7Xp+aa77pzvMEEc4mOkZmbBVaZ8rx8wbMpehWo1kP/TNo3qBiEPIpa9600dMQK4tzVAgigk12oc+nscStXTnWSzD7ABMteNcOUx8MY6iZQaXVlrv98fRYrk+xo0IQIcHBe0tZJxhZzptB7gqqbbZmrPRiehgjP9C/tPN8a02LX/kYSlsuENQ5KgQRFBi4t6408z7YVAMomIBuFsZ1mHf+zO0ubGyMYr4TU7X4XIS+DNtVXrOjwiLYxDXxWm15L1DQDd0AjJMwz8Py24rvoxjqRG8tXhbhabotntfkqLA/NShob/lr+ZWWNDVy61BtgOEtzMNYGrGifxRtr9CghSYfynhLAF/rqHD34nCmV9RgWA6ySnDnAdpaMNKOJdMaDN9QY0KlBtlZCPUfPOJ1nbsXIWykkVKPBo8Ey6UsaEphVOOLHsv6NWjGUdGJHB1iL1j4ggapNMpRIQiZU0SpokON3nGLVZdhkuOrCsuqNSjGkfEasbcXPcSNIlGa8zxBhO6PKN5XoJaJe26emetK3lw4t7QZ3TfnV9wjCFeLxGc5w9wDzrxijr1UKvWTBQgTQwSKJPeyPPeCMkGyQhia5Bdgv2bMADPGPeBhTmE+h/wzzIDzPEGcoAj3mrkQO+I/6Dc2JuZ8SorLi6m7MQ8agzN1O4LG4ARBY3CCoDE4QdAYnCBoDE4QNAYnCBqDEwSNwQmCxuAsgsLg7E+lMDh3L1wwOIugMDhB0BicIGgMzj3gLhicIGgMThA0BudeMxdiR9Dr9y+Jh6E2kCgcnQAAAABJRU5ErkJggg==]]></data>
	</file>
	<file>
	  <filename>/lib/jquery/images/ui-icons_222222_256x240.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/lib/jquery/images/ui-icons_454545_256x240.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAAQAAAADwCAMAAADYSUr5AAAA7VBMVEVERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkRERkQfbf86AAAATnRSTlMAGBAyBAhQv4OZLiJUcEBmYBoSzQwgPBZCSEoeWiYwUiyFNIeBw2rJz8c4RBy9uXyrtaWNqa2zKP2fJO8KBgKPo2KVoa9s351GPm5+kWho0kj9AAAPhUlEQVR4nO1djWLbthEGyUiq5YSSLXtp7FpLOmfzkmxr126tmi2p03RJ1/Xe/3EGgARxPyAgRbIk2/hkSz4CJO4+HsE7AJSVysjI2AMUUOxahZ2iANhzBtZWr4BoIRSYAVN5u4QwDwQDRbcwfUi5KS3wFuDmFnQLa4Dtb//cqktwD5QEFFwfUs7PoCCA7y4bEJVFizcIob8KmhAplwwqVjt+9FBl3uINQniwEiryEyw9JHqGpQdEFNi+B4QQ7QOiHhysIPoAxUqxvdvvA9K42bsAv4S2fxfYOe57IJSRkZGRkZGxx7jxSHDHcRBXQMTyIjInBgHwBJ/bEx8PEANC+uhbpSSggCBAVODVabpI1S/k4WLZpTn6NpMhoX9Y40hxYERFpMcqUs4AloCtDQdID1YhnyXZ2hLjAYWiO9Dy1PDB7tPhIqLx+uMB8grZaR+Qxl2/C2RkZGRkZGRk7A7rBf7J0DR5/LUTjzUPIPSPGvQJiVJiB7kcQCiUOJrcFNtDZIf2xarQ3aGvLNxAVIFAabz90BFiBIlycTBhgWwOWCH0FLYHlPqwHaCvcIn2ZbosCevfPTRiFFcgvHukCjWwrc3GrGh1fsAof8EaUReKXkCB4/MzFNo97qLpFiKFYv/kNR5YQxQbQEofkZ2OuEOHqqT6gFTpru8CN7x/+jaZkZGRkZGRcV+x/rLUNcMM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]]></data>
	</file>
	<file>
	  <filename>/lib/jquery/jquery-ui-timepicker-addon.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[LyoNCiogalF1ZXJ5IHRpbWVwaWNrZXIgYWRkb24NCiogQnk6IFRyZW50IFJpY2hhcmRzb24gW2h0dHA6Ly90cmVudHJpY2hhcmRzb24uY29tXQ0KKiBWZXJzaW9uIDAuOS45DQoqIExhc3QgTW9kaWZpZWQ6IDAyLzA1LzIwMTINCiogDQoqIENvcHlyaWdodCAyMDEyIFRyZW50IFJpY2hhcmRzb24NCiogRHVhbCBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIGFuZCBHUEwgbGljZW5zZXMuDQoqIGh0dHA6Ly90cmVudHJpY2hhcmRzb24uY29tL0ltcHJvbXB0dS9HUEwtTElDRU5TRS50eHQNCiogaHR0cDovL3RyZW50cmljaGFyZHNvbi5jb20vSW1wcm9tcHR1L01JVC1MSUNFTlNFLnR4dA0KKiANCiogSEVSRVMgVEhFIENTUzoNCiogLnVpLXRpbWVwaWNrZXItZGl2IC51aS13aWRnZXQtaGVhZGVyIHsgbWFyZ2luLWJvdHRvbTogOHB4OyB9DQoqIC51aS10aW1lcGlja2VyLWRpdiBkbCB7IHRleHQtYWxpZ246IGxlZnQ7IH0NCiogLnVpLXRpbWVwaWNrZXItZGl2IGRsIGR0IHsgaGVpZ2h0OiAyNXB4OyBtYXJnaW4tYm90dG9tOiAtMjVweDsgfQ0KKiAudWktdGltZXBpY2tlci1kaXYgZGwgZGQgeyBtYXJnaW46IDAgMTBweCAxMHB4IDY1cHg7IH0NCiogLnVpLXRpbWVwaWNrZXItZGl2IHRkIHsgZm9udC1zaXplOiA5MCU7IH0NCiogLnVpLXRwaWNrZXItZ3JpZC1sYWJlbCB7IGJhY2tncm91bmQ6IG5vbmU7IGJvcmRlcjogbm9uZTsgbWFyZ2luOiAwOyBwYWRkaW5nOiAwOyB9DQoqLw0KDQooZnVuY3Rpb24oJCkgew0KDQokLmV4dGVuZCgkLnVpLCB7IHRpbWVwaWNrZXI6IHsgdmVyc2lvbjogIjAuOS45IiB9IH0pOw0KDQovKiBUaW1lIHBpY2tlciBtYW5hZ2VyLg0KICAgVXNlIHRoZSBzaW5nbGV0b24gaW5zdGFuY2Ugb2YgdGhpcyBjbGFzcywgJC50aW1lcGlja2VyLCB0byBpbnRlcmFjdCB3aXRoIHRoZSB0aW1lIHBpY2tlci4NCiAgIFNldHRpbmdzIGZvciAoZ3JvdXBzIG9mKSB0aW1lIHBpY2tlcnMgYXJlIG1haW50YWluZWQgaW4gYW4gaW5zdGFuY2Ugb2JqZWN0LA0KICAgYWxsb3dpbmcgbXVsdGlwbGUgZGlmZmVyZW50IHNldHRpbmdzIG9uIHRoZSBzYW1lIHBhZ2UuICovDQoNCmZ1bmN0aW9uIFRpbWVwaWNrZXIoKSB7DQoJdGhpcy5yZWdpb25hbCA9IFtdOyAvLyBBdmFpbGFibGUgcmVnaW9uYWwgc2V0dGluZ3MsIGluZGV4ZWQgYnkgbGFuZ3VhZ2UgY29kZQ0KCXRoaXMucmVnaW9uYWxbJyddID0geyAvLyBEZWZhdWx0IHJlZ2lvbmFsIHNldHRpbmdzDQoJCWN1cnJlbnRUZXh0OiAnTm93JywNCgkJY2xvc2VUZXh0OiAnRG9uZScsDQoJCWFtcG06IGZhbHNlLA0KCQlhbU5hbWVzOiBbJ0FNJywgJ0EnXSwNCgkJcG1OYW1lczogWydQTScsICdQJ10sDQoJCXRpbWVGb3JtYXQ6ICdoaDptbSB0dCcsDQoJCXRpbWVTdWZmaXg6ICcnLA0KCQl0aW1lT25seVRpdGxlOiAnQ2hvb3NlIFRpbWUnLA0KCQl0aW1lVGV4dDogJ1RpbWUnLA0KCQlob3VyVGV4dDogJ0hvdXInLA0KCQltaW51dGVUZXh0OiAnTWludXRlJywNCgkJc2Vjb25kVGV4dDogJ1NlY29uZCcsDQoJCW1pbGxpc2VjVGV4dDogJ01pbGxpc2Vjb25kJywNCgkJdGltZXpvbmVUZXh0OiAnVGltZSBab25lJw0KCX07DQoJdGhpcy5fZGVmYXVsdHMgPSB7IC8vIEdsb2JhbCBkZWZhdWx0cyBmb3IgYWxsIHRoZSBkYXRldGltZSBwaWNrZXIgaW5zdGFuY2VzDQoJCXNob3dCdXR0b25QYW5lbDogdHJ1ZSwNCgkJdGltZU9ubHk6IGZhbHNlLA0KCQlzaG93SG91cjogdHJ1ZSwNCgkJc2hvd01pbnV0ZTogdHJ1ZSwNCgkJc2hvd1NlY29uZDogZmFsc2UsDQoJCXNob3dNaWxsaXNlYzogZmFsc2UsDQoJCXNob3dUaW1lem9uZTogZmFsc2UsDQoJCXNob3dUaW1lOiB0cnVlLA0KCQlzdGVwSG91cjogMSwNCgkJc3RlcE1pbnV0ZTogMSwNCgkJc3RlcFNlY29uZDogMSwNCgkJc3RlcE1pbGxpc2VjOiAxLA0KCQlob3VyOiAwLA0KCQltaW51dGU6IDAsDQoJCXNlY29uZDogMCwNCgkJbWlsbGlzZWM6IDAsDQoJCXRpbWV6b25lOiAnKzAwMDAnLA0KCQlob3VyTWluOiAwLA0KCQltaW51dGVNaW46IDAsDQoJCXNlY29uZE1pbjogMCwNCgkJbWlsbGlzZWNNaW46IDAsDQoJCWhvdXJNYXg6IDIzLA0KCQltaW51dGVNYXg6IDU5LA0KCQlzZWNvbmRNYXg6IDU5LA0KCQltaWxsaXNlY01heDogOTk5LA0KCQltaW5EYXRlVGltZTogbnVsbCwNCgkJbWF4RGF0ZVRpbWU6IG51bGwsDQoJCW9uU2VsZWN0OiBudWxsLA0KCQlob3VyR3JpZDogMCwNCgkJbWludXRlR3JpZDogMCwNCgkJc2Vjb25kR3JpZDogMCwNCgkJbWlsbGlzZWNHcmlkOiAwLA0KCQlhbHdheXNTZXRUaW1lOiB0cnVlLA0KCQlzZXBhcmF0b3I6ICcgJywNCgkJYWx0RmllbGRUaW1lT25seTogdHJ1ZSwNCgkJc2hvd1RpbWVwaWNrZXI6IHRydWUsDQoJCXRpbWV6b25lSXNvODYwOTogZmFsc2UsDQoJCXRpbWV6b25lTGlzdDogbnVsbCwNCgkJYWRkU2xpZGVyQWNjZXNzOiBmYWxzZSwNCgkJc2xpZGVyQWNjZXNzQXJnczogbnVsbA0KCX07DQoJJC5leHRlbmQodGhpcy5fZGVmYXVsdHMsIHRoaXMucmVnaW9uYWxbJyddKTsNCn07DQoNCiQuZXh0ZW5kKFRpbWVwaWNrZXIucHJvdG90eXBlLCB7DQoJJGlucHV0OiBudWxsLA0KCSRhbHRJbnB1dDogbnVsbCwNCgkkdGltZU9iajogbnVsbCwNCglpbnN0OiBudWxsLA0KCWhvdXJfc2xpZGVyOiBudWxsLA0KCW1pbnV0ZV9zbGlkZXI6IG51bGwsDQoJc2Vjb25kX3NsaWRlcjogbnVsbCwNCgltaWxsaXNlY19zbGlkZXI6IG51bGwsDQoJdGltZXpvbmVfc2VsZWN0OiBudWxsLA0KCWhvdXI6IDAsDQoJbWludXRlOiAwLA0KCXNlY29uZDogMCwNCgltaWxsaXNlYzogMCwNCgl0aW1lem9uZTogJyswMDAwJywNCglob3VyTWluT3JpZ2luYWw6IG51bGwsDQoJbWludXRlTWluT3JpZ2luYWw6IG51bGwsDQoJc2Vjb25kTWluT3JpZ2luYWw6IG51bGwsDQoJbWlsbGlzZWNNaW5PcmlnaW5hbDogbnVsbCwNCglob3VyTWF4T3JpZ2luYWw6IG51bGwsDQoJbWludXRlTWF4T3JpZ2luYWw6IG51bGwsDQoJc2Vjb25kTWF4T3JpZ2luYWw6IG51bGwsDQoJbWlsbGlzZWNNYXhPcmlnaW5hbDogbnVsbCwNCglhbXBtOiAnJywNCglmb3JtYXR0ZWREYXRlOiAnJywNCglmb3JtYXR0ZWRUaW1lOiAnJywNCglmb3JtYXR0ZWREYXRlVGltZTogJycsDQoJdGltZXpvbmVMaXN0OiBudWxsLA0KDQoJLyogT3ZlcnJpZGUgdGhlIGRlZmF1bHQgc2V0dGluZ3MgZm9yIGFsbCBpbnN0YW5jZXMgb2YgdGhlIHRpbWUgcGlja2VyLg0KCSAgIEBwYXJhbSAgc2V0dGluZ3MgIG9iamVjdCAtIHRoZSBuZXcgc2V0dGluZ3MgdG8gdXNlIGFzIGRlZmF1bHRzIChhbm9ueW1vdXMgb2JqZWN0KQ0KCSAgIEByZXR1cm4gdGhlIG1hbmFnZXIgb2JqZWN0ICovDQoJc2V0RGVmYXVsdHM6IGZ1bmN0aW9uKHNldHRpbmdzKSB7DQoJCWV4dGVuZFJlbW92ZSh0aGlzLl9kZWZhdWx0cywgc2V0dGluZ3MgfHwge30pOw0KCQlyZXR1cm4gdGhpczsNCgl9LA0KDQoJLy8jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMNCgkvLyBDcmVhdGUgYSBuZXcgVGltZXBpY2tlciBpbnN0YW5jZQ0KCS8vIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjDQoJX25ld0luc3Q6IGZ1bmN0aW9uKCRpbnB1dCwgbykgew0KCQl2YXIgdHBfaW5zdCA9IG5ldyBUaW1lcGlja2VyKCksDQoJCQlpbmxpbmVTZXR0aW5ncyA9IHt9Ow0KCQkJDQoJCWZvciAodmFyIGF0dHJOYW1lIGluIHRoaXMuX2RlZmF1bHRzKSB7DQoJCQl2YXIgYXR0clZhbHVlID0gJGlucHV0LmF0dHIoJ3RpbWU6JyArIGF0dHJOYW1lKTsNCgkJCWlmIChhdHRyVmFsdWUpIHsNCgkJCQl0cnkgew0KCQkJCQlpbmxpbmVTZXR0aW5nc1thdHRyTmFtZV0gPSBldmFsKGF0dHJWYWx1ZSk7DQoJCQkJfSBjYXRjaCAoZXJyKSB7DQoJCQkJCWlubGluZVNldHRpbmdzW2F0dHJOYW1lXSA9IGF0dHJWYWx1ZTsNCgkJCQl9DQoJCQl9DQoJCX0NCgkJdHBfaW5zdC5fZGVmYXVsdHMgPSAkLmV4dGVuZCh7fSwgdGhpcy5fZGVmYXVsdHMsIGlubGluZVNldHRpbmdzLCBvLCB7DQoJCQliZWZvcmVTaG93OiBmdW5jdGlvbihpbnB1dCwgZHBfaW5zdCkgew0KCQkJCWlmICgkLmlzRnVuY3Rpb24oby5iZWZvcmVTaG93KSkNCgkJCQkJcmV0dXJuIG8uYmVmb3JlU2hvdyhpbnB1dCwgZHBfaW5zdCwgdHBfaW5zdCk7DQoJCQl9LA0KCQkJb25DaGFuZ2VNb250aFllYXI6IGZ1bmN0aW9uKHllYXIsIG1vbnRoLCBkcF9pbnN0KSB7DQoJCQkJLy8gVXBkYXRlIHRoZSB0aW1lIGFzIHdlbGwgOiB0aGlzIHByZXZlbnRzIHRoZSB0aW1lIGZyb20gZGlzYXBwZWFyaW5nIGZyb20gdGhlICRpbnB1dCBmaWVsZC4NCgkJCQl0cF9pbnN0Ll91cGRhdGVEYXRlVGltZShkcF9pbnN0KTsNCgkJCQlpZiAoJC5pc0Z1bmN0aW9uKG8ub25DaGFuZ2VNb250aFllYXIpKQ0KCQkJCQlvLm9uQ2hhbmdlTW9udGhZZWFyLmNhbGwoJGlucHV0WzBdLCB5ZWFyLCBtb250aCwgZHBfaW5zdCwgdHBfaW5zdCk7DQoJCQl9LA0KCQkJb25DbG9zZTogZnVuY3Rpb24oZGF0ZVRleHQsIGRwX2luc3QpIHsNCgkJCQlpZiAodHBfaW5zdC50aW1lRGVmaW5lZCA9PT0gdHJ1ZSAmJiAkaW5wdXQudmFsKCkgIT0gJycpDQoJCQkJCXRwX2luc3QuX3VwZGF0ZURhdGVUaW1lKGRwX2luc3QpOw0KCQkJCWlmICgkLmlzRnVuY3Rpb24oby5vbkNsb3NlKSkNCgkJCQkJby5vbkNsb3NlLmNhbGwoJGlucHV0WzBdLCBkYXRlVGV4dCwgZHBfaW5zdCwgdHBfaW5zdCk7DQoJCQl9LA0KCQkJdGltZXBpY2tlcjogdHBfaW5zdCAvLyBhZGQgdGltZXBpY2tlciBhcyBhIHByb3BlcnR5IG9mIGRhdGVwaWNrZXI6ICQuZGF0ZXBpY2tlci5fZ2V0KGRwX2luc3QsICd0aW1lcGlja2VyJyk7DQoJCX0pOw0KCQl0cF9pbnN0LmFtTmFtZXMgPSAkLm1hcCh0cF9pbnN0Ll9kZWZhdWx0cy5hbU5hbWVzLCBmdW5jdGlvbih2YWwpIHsgcmV0dXJuIHZhbC50b1VwcGVyQ2FzZSgpIH0pOw0KCQl0cF9pbnN0LnBtTmFtZXMgPSAkLm1hcCh0cF9pbnN0Ll9kZWZhdWx0cy5wbU5hbWVzLCBmdW5jdGlvbih2YWwpIHsgcmV0dXJuIHZhbC50b1VwcGVyQ2FzZSgpIH0pOw0KDQoJCWlmICh0cF9pbnN0Ll9kZWZhdWx0cy50aW1lem9uZUxpc3QgPT09IG51bGwpIHsNCgkJCXZhciB0aW1lem9uZUxpc3QgPSBbXTsNCgkJCWZvciAodmFyIGkgPSAtMTE7IGkgPD0gMTI7IGkrKykNCgkJCQl0aW1lem9uZUxpc3QucHVzaCgoaSA+PSAwID8gJysnIDogJy0nKSArICgnMCcgKyBNYXRoLmFicyhpKS50b1N0cmluZygpKS5zbGljZSgtMikgKyAnMDAnKTsNCgkJCWlmICh0cF9pbnN0Ll9kZWZhdWx0cy50aW1lem9uZUlzbzg2MDkpDQoJCQkJdGltZXpvbmVMaXN0ID0gJC5tYXAodGltZXpvbmVMaXN0LCBmdW5jdGlvbih2YWwpIHsNCgkJCQkJcmV0dXJuIHZhbCA9PSAnKzAwMDAnID8gJ1onIDogKHZhbC5zdWJzdHJpbmcoMCwgMykgKyAnOicgKyB2YWwuc3Vic3RyaW5nKDMpKTsNCgkJCQl9KTsNCgkJCXRwX2luc3QuX2RlZmF1bHRzLnRpbWV6b25lTGlzdCA9IHRpbWV6b25lTGlzdDsNCgkJfQ0KDQoJCXRwX2luc3QuaG91ciA9IHRwX2luc3QuX2RlZmF1bHRzLmhvdXI7DQoJCXRwX2luc3QubWludXRlID0gdHBfaW5zdC5fZGVmYXVsdHMubWludXRlOw0KCQl0cF9pbnN0LnNlY29uZCA9IHRwX2luc3QuX2RlZmF1bHRzLnNlY29uZDsNCgkJdHBfaW5zdC5taWxsaXNlYyA9IHRwX2luc3QuX2RlZmF1bHRzLm1pbGxpc2VjOw0KCQl0cF9pbnN0LmFtcG0gPSAnJzsNCgkJdHBfaW5zdC4kaW5wdXQgPSAkaW5wdXQ7DQoNCgkJaWYgKG8uYWx0RmllbGQpDQoJCQl0cF9pbnN0LiRhbHRJbnB1dCA9ICQoby5hbHRGaWVsZCkNCgkJCQkuY3NzKHsgY3Vyc29yOiAncG9pbnRlcicgfSkNCgkJCQkuZm9jdXMoZnVuY3Rpb24oKXsgJGlucHV0LnRyaWdnZXIoImZvY3VzIik7IH0pOw0KCQkNCgkJaWYodHBfaW5zdC5fZGVmYXVsdHMubWluRGF0ZT09MCB8fCB0cF9pbnN0Ll9kZWZhdWx0cy5taW5EYXRlVGltZT09MCkNCgkJew0KCQkJdHBfaW5zdC5fZGVmYXVsdHMubWluRGF0ZT1uZXcgRGF0ZSgpOw0KCQl9DQoJCWlmKHRwX2luc3QuX2RlZmF1bHRzLm1heERhdGU9PTAgfHwgdHBfaW5zdC5fZGVmYXVsdHMubWF4RGF0ZVRpbWU9PTApDQoJCXsNCgkJCXRwX2luc3QuX2RlZmF1bHRzLm1heERhdGU9bmV3IERhdGUoKTsNCgkJfQ0KCQkNCgkJLy8gZGF0ZXBpY2tlciBuZWVkcyBtaW5EYXRlL21heERhdGUsIHRpbWVwaWNrZXIgbmVlZHMgbWluRGF0ZVRpbWUvbWF4RGF0ZVRpbWUuLg0KCQlpZih0cF9pbnN0Ll9kZWZhdWx0cy5taW5EYXRlICE9PSB1bmRlZmluZWQgJiYgdHBfaW5zdC5fZGVmYXVsdHMubWluRGF0ZSBpbnN0YW5jZW9mIERhdGUpDQoJCQl0cF9pbnN0Ll9kZWZhdWx0cy5taW5EYXRlVGltZSA9IG5ldyBEYXRlKHRwX2luc3QuX2RlZmF1bHRzLm1pbkRhdGUuZ2V0VGltZSgpKTsNCgkJaWYodHBfaW5zdC5fZGVmYXVsdHMubWluRGF0ZVRpbWUgIT09IHVuZGVmaW5lZCAmJiB0cF9pbnN0Ll9kZWZhdWx0cy5taW5EYXRlVGltZSBpbnN0YW5jZW9mIERhdGUpDQoJCQl0cF9pbnN0Ll9kZWZhdWx0cy5taW5EYXRlID0gbmV3IERhdGUodHBfaW5zdC5fZGVmYXVsdHMubWluRGF0ZVRpbWUuZ2V0VGltZSgpKTsNCgkJaWYodHBfaW5zdC5fZGVmYXVsdHMubWF4RGF0ZSAhPT0gdW5kZWZpbmVkICYmIHRwX2luc3QuX2RlZmF1bHRzLm1heERhdGUgaW5zdGFuY2VvZiBEYXRlKQ0KCQkJdHBfaW5zdC5fZGVmYXVsdHMubWF4RGF0ZVRpbWUgPSBuZXcgRGF0ZSh0cF9pbnN0Ll9kZWZhdWx0cy5tYXhEYXRlLmdldFRpbWUoKSk7DQoJCWlmKHRwX2luc3QuX2RlZmF1bHRzLm1heERhdGVUaW1lICE9PSB1bmRlZmluZWQgJiYgdHBfaW5zdC5fZGVmYXVsdHMubWF4RGF0ZVRpbWUgaW5zdGFuY2VvZiBEYXRlKQ0KCQkJdHBfaW5zdC5fZGVmYXVsdHMubWF4RGF0ZSA9IG5ldyBEYXRlKHRwX2luc3QuX2RlZmF1bHRzLm1heERhdGVUaW1lLmdldFRpbWUoKSk7DQoJCXJldHVybiB0cF9pbnN0Ow0KCX0sDQoNCgkvLyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIw0KCS8vIGFkZCBvdXIgc2xpZGVycyB0byB0aGUgY2FsZW5kYXINCgkvLyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIw0KCV9hZGRUaW1lUGlja2VyOiBmdW5jdGlvbihkcF9pbnN0KSB7DQoJCXZhciBjdXJyRFQgPSAodGhpcy4kYWx0SW5wdXQgJiYgdGhpcy5fZGVmYXVsdHMuYWx0RmllbGRUaW1lT25seSkgPw0KCQkJCXRoaXMuJGlucHV0LnZhbCgpICsgJyAnICsgdGhpcy4kYWx0SW5wdXQudmFsKCkgOiANCgkJCQl0aGlzLiRpbnB1dC52YWwoKTsNCg0KCQl0aGlzLnRpbWVEZWZpbmVkID0gdGhpcy5fcGFyc2VUaW1lKGN1cnJEVCk7DQoJCXRoaXMuX2xpbWl0TWluTWF4RGF0ZVRpbWUoZHBfaW5zdCwgZmFsc2UpOw0KCQl0aGlzLl9pbmplY3RUaW1lUGlja2VyKCk7DQoJfSwNCg0KCS8vIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjDQoJLy8gcGFyc2UgdGhlIHRpbWUgc3RyaW5nIGZyb20gaW5wdXQgdmFsdWUgb3IgX3NldFRpbWUNCgkvLyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIw0KCV9wYXJzZVRpbWU6IGZ1bmN0aW9uKHRpbWVTdHJpbmcsIHdpdGhEYXRlKSB7DQoJCXZhciByZWdzdHIgPSB0aGlzLl9kZWZhdWx0cy50aW1lRm9ybWF0LnRvU3RyaW5nKCkNCgkJCQkucmVwbGFjZSgvaHsxLDJ9L2lnLCAnKFxcZD9cXGQpJykNCgkJCQkucmVwbGFjZSgvbXsxLDJ9L2lnLCAnKFxcZD9cXGQpJykNCgkJCQkucmVwbGFjZSgvc3sxLDJ9L2lnLCAnKFxcZD9cXGQpJykNCgkJCQkucmVwbGFjZSgvbHsxfS9pZywgJyhcXGQ/XFxkP1xcZCknKQ0KCQkJCS5yZXBsYWNlKC90ezEsMn0vaWcsIHRoaXMuX2dldFBhdHRlcm5BbXBtKCkpDQoJCQkJLnJlcGxhY2UoL3p7MX0vaWcsICcoenxbLStdXFxkXFxkOj9cXGRcXGQpPycpDQoJCQkJLnJlcGxhY2UoL1xzL2csICdcXHM/JykgKyB0aGlzLl9kZWZhdWx0cy50aW1lU3VmZml4ICsgJyQnLA0KCQkJb3JkZXIgPSB0aGlzLl9nZXRGb3JtYXRQb3NpdGlvbnMoKSwNCgkJCWFtcG0gPSAnJywNCgkJCXRyZWc7DQoNCgkJaWYgKCF0aGlzLmluc3QpIHRoaXMuaW5zdCA9ICQuZGF0ZXBpY2tlci5fZ2V0SW5zdCh0aGlzLiRpbnB1dFswXSk7DQoNCgkJaWYgKHdpdGhEYXRlIHx8ICF0aGlzLl9kZWZhdWx0cy50aW1lT25seSkgew0KCQkJLy8gdGhlIHRpbWUgc2hvdWxkIGNvbWUgYWZ0ZXIgeCBudW1iZXIgb2YgY2hhcmFjdGVycyBhbmQgYSBzcGFjZS4NCgkJCS8vIHggPSBhdCBsZWFzdCB0aGUgbGVuZ3RoIG9mIHRleHQgc3BlY2lmaWVkIGJ5IHRoZSBkYXRlIGZvcm1hdA0KCQkJdmFyIGRwX2RhdGVGb3JtYXQgPSAkLmRhdGVwaWNrZXIuX2dldCh0aGlzLmluc3QsICdkYXRlRm9ybWF0Jyk7DQoJCQkvLyBlc2NhcGUgc3BlY2lhbCByZWdleCBjaGFyYWN0ZXJzIGluIHRoZSBzZXBlcmF0b3INCgkJCXZhciBzcGVjaWFscyA9IG5ldyBSZWdFeHAoIlsuKis/fCgpXFxbXFxde31cXFxcXSIsICJnIik7DQoJCQlyZWdzdHIgPSAnXi57JyArIGRwX2RhdGVGb3JtYXQubGVuZ3RoICsgJyx9PycgKyB0aGlzLl9kZWZhdWx0cy5zZXBhcmF0b3IucmVwbGFjZShzcGVjaWFscywgIlxcJCYiKSArIHJlZ3N0cjsNCgkJfQ0KCQkNCgkJdHJlZyA9IHRpbWVTdHJpbmcubWF0Y2gobmV3IFJlZ0V4cChyZWdzdHIsICdpJykpOw0KDQoJCWlmICh0cmVnKSB7DQoJCQlpZiAob3JkZXIudCAhPT0gLTEpIHsNCgkJCQlpZiAodHJlZ1tvcmRlci50XSA9PT0gdW5kZWZpbmVkIHx8IHRyZWdbb3JkZXIudF0ubGVuZ3RoID09PSAwKSB7DQoJCQkJCWFtcG0gPSAnJzsNCgkJCQkJdGhpcy5hbXBtID0gJyc7DQoJCQkJfSBlbHNlIHsNCgkJCQkJYW1wbSA9ICQuaW5BcnJheSh0cmVnW29yZGVyLnRdLnRvVXBwZXJDYXNlKCksIHRoaXMuYW1OYW1lcykgIT09IC0xID8gJ0FNJyA6ICdQTSc7DQoJCQkJCXRoaXMuYW1wbSA9IHRoaXMuX2RlZmF1bHRzW2FtcG0gPT0gJ0FNJyA/ICdhbU5hbWVzJyA6ICdwbU5hbWVzJ11bMF07DQoJCQkJfQ0KCQkJfQ0KDQoJCQlpZiAob3JkZXIuaCAhPT0gLTEpIHsNCgkJCQlpZiAoYW1wbSA9PSAnQU0nICYmIHRyZWdbb3JkZXIuaF0gPT0gJzEyJykNCgkJCQkJdGhpcy5ob3VyID0gMDsgLy8gMTJhbSA9IDAgaG91cg0KCQkJCWVsc2UgaWYgKGFtcG0gPT0gJ1BNJyAmJiB0cmVnW29yZGVyLmhdICE9ICcxMicpDQoJCQkJCXRoaXMuaG91ciA9IChwYXJzZUZsb2F0KHRyZWdbb3JkZXIuaF0pICsgMTIpLnRvRml4ZWQoMCk7IC8vIDEycG0gPSAxMiBob3VyLCBhbnkgb3RoZXIgcG0gPSBob3VyICsgMTINCgkJCQllbHNlIHRoaXMuaG91ciA9IE51bWJlcih0cmVnW29yZGVyLmhdKTsNCgkJCX0NCg0KCQkJaWYgKG9yZGVyLm0gIT09IC0xKSB0aGlzLm1pbnV0ZSA9IE51bWJlcih0cmVnW29yZGVyLm1dKTsNCgkJCWlmIChvcmRlci5zICE9PSAtMSkgdGhpcy5zZWNvbmQgPSBOdW1iZXIodHJlZ1tvcmRlci5zXSk7DQoJCQlpZiAob3JkZXIubCAhPT0gLTEpIHRoaXMubWlsbGlzZWMgPSBOdW1iZXIodHJlZ1tvcmRlci5sXSk7DQoJCQlpZiAob3JkZXIueiAhPT0gLTEgJiYgdHJlZ1tvcmRlci56XSAhPT0gdW5kZWZpbmVkKSB7DQoJCQkJdmFyIHR6ID0gdHJlZ1tvcmRlci56XS50b1VwcGVyQ2FzZSgpOw0KCQkJCXN3aXRjaCAodHoubGVuZ3RoKSB7DQoJCQkJY2FzZSAxOgkvLyBaDQoJCQkJCXR6ID0gdGhpcy5fZGVmYXVsdHMudGltZXpvbmVJc284NjA5ID8gJ1onIDogJyswMDAwJzsNCgkJCQkJYnJlYWs7DQoJCQkJY2FzZSA1OgkvLyAraGhtbQ0KCQkJCQlpZiAodGhpcy5fZGVmYXVsdHMudGltZXpvbmVJc284NjA5KQ0KCQkJCQkJdHogPSB0ei5zdWJzdHJpbmcoMSkgPT0gJzAwMDAnDQoJCQkJCQkgICA/ICdaJw0KCQkJCQkJICAgOiB0ei5zdWJzdHJpbmcoMCwgMykgKyAnOicgKyB0ei5zdWJzdHJpbmcoMyk7DQoJCQkJCWJyZWFrOw0KCQkJCWNhc2UgNjoJLy8gK2hoOm1tDQoJCQkJCWlmICghdGhpcy5fZGVmYXVsdHMudGltZXpvbmVJc284NjA5KQ0KCQkJCQkJdHogPSB0eiA9PSAnWicgfHwgdHouc3Vic3RyaW5nKDEpID09ICcwMDowMCcNCgkJCQkJCSAgID8gJyswMDAwJw0KCQkJCQkJICAgOiB0ei5yZXBsYWNlKC86LywgJycpOw0KCQkJCQllbHNlIGlmICh0ei5zdWJzdHJpbmcoMSkgPT0gJzAwOjAwJykNCgkJCQkJCXR6ID0gJ1onOw0KCQkJCQlicmVhazsNCgkJCQl9DQoJCQkJdGhpcy50aW1lem9uZSA9IHR6Ow0KCQkJfQ0KCQkJDQoJCQlyZXR1cm4gdHJ1ZTsNCg0KCQl9DQoJCXJldHVybiBmYWxzZTsNCgl9LA0KDQoJLy8jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMNCgkvLyBwYXR0ZXJuIGZvciBzdGFuZGFyZCBhbmQgbG9jYWxpemVkIEFNL1BNIG1hcmtlcnMNCgkvLyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIw0KCV9nZXRQYXR0ZXJuQW1wbTogZnVuY3Rpb24oKSB7DQoJCXZhciBtYXJrZXJzID0gW107DQoJCQlvID0gdGhpcy5fZGVmYXVsdHM7DQoJCWlmIChvLmFtTmFtZXMpDQoJCQkkLm1lcmdlKG1hcmtlcnMsIG8uYW1OYW1lcyk7DQoJCWlmIChvLnBtTmFtZXMpDQoJCQkkLm1lcmdlKG1hcmtlcnMsIG8ucG1OYW1lcyk7DQoJCW1hcmtlcnMgPSAkLm1hcChtYXJrZXJzLCBmdW5jdGlvbih2YWwpIHsgcmV0dXJuIHZhbC5yZXBsYWNlKC9bLiorP3woKVxbXF17fVxcXS9nLCAnXFwkJicpIH0pOw0KCQlyZXR1cm4gJygnICsgbWFya2Vycy5qb2luKCd8JykgKyAnKT8nOw0KCX0sDQoNCgkvLyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIw0KCS8vIGZpZ3VyZSBvdXQgcG9zaXRpb24gb2YgdGltZSBlbGVtZW50cy4uIGNhdXNlIGpzIGNhbnQgZG8gbmFtZWQgY2FwdHVyZXMNCgkvLyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIw0KCV9nZXRGb3JtYXRQb3NpdGlvbnM6IGZ1bmN0aW9uKCkgew0KCQl2YXIgZmluZHMgPSB0aGlzLl9kZWZhdWx0cy50aW1lRm9ybWF0LnRvTG93ZXJDYXNlKCkubWF0Y2goLyhoezEsMn18bXsxLDJ9fHN7MSwyfXxsezF9fHR7MSwyfXx6KS9nKSwNCgkJCW9yZGVycyA9IHsgaDogLTEsIG06IC0xLCBzOiAtMSwgbDogLTEsIHQ6IC0xLCB6OiAtMSB9Ow0KDQoJCWlmIChmaW5kcykNCgkJCWZvciAodmFyIGkgPSAwOyBpIDwgZmluZHMubGVuZ3RoOyBpKyspDQoJCQkJaWYgKG9yZGVyc1tmaW5kc1tpXS50b1N0cmluZygpLmNoYXJBdCgwKV0gPT0gLTEpDQoJCQkJCW9yZGVyc1tmaW5kc1tpXS50b1N0cmluZygpLmNoYXJBdCgwKV0gPSBpICsgMTsNCg0KCQlyZXR1cm4gb3JkZXJzOw0KCX0sDQoNCgkvLyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIw0KCS8vIGdlbmVyYXRlIGFuZCBpbmplY3QgaHRtbCBmb3IgdGltZXBpY2tlciBpbnRvIHVpIGRhdGVwaWNrZXINCgkvLyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIw0KCV9pbmplY3RUaW1lUGlja2VyOiBmdW5jdGlvbigpIHsNCgkJdmFyICRkcCA9IHRoaXMuaW5zdC5kcERpdiwNCgkJCW8gPSB0aGlzLl9kZWZhdWx0cywNCgkJCXRwX2luc3QgPSB0aGlzLA0KCQkJLy8gQWRkZWQgYnkgUGV0ZXIgTWVkZWlyb3M6DQoJCQkvLyAtIEZpZ3VyZSBvdXQgd2hhdCB0aGUgaG91ci9taW51dGUvc2Vjb25kIG1heCBzaG91bGQgYmUgYmFzZWQgb24gdGhlIHN0ZXAgdmFsdWVzLg0KCQkJLy8gLSBFeGFtcGxlOiBpZiBzdGVwTWludXRlIGlzIDE1LCB0aGVuIG1pbk1heCBpcyA0NS4NCgkJCWhvdXJNYXggPSBwYXJzZUludCgoby5ob3VyTWF4IC0gKChvLmhvdXJNYXggLSBvLmhvdXJNaW4pICUgby5zdGVwSG91cikpICwxMCksDQoJCQltaW5NYXggID0gcGFyc2VJbnQoKG8ubWludXRlTWF4IC0gKChvLm1pbnV0ZU1heCAtIG8ubWludXRlTWluKSAlIG8uc3RlcE1pbnV0ZSkpICwxMCksDQoJCQlzZWNNYXggID0gcGFyc2VJbnQoKG8uc2Vjb25kTWF4IC0gKChvLnNlY29uZE1heCAtIG8uc2Vjb25kTWluKSAlIG8uc3RlcFNlY29uZCkpICwxMCksDQoJCQltaWxsaXNlY01heCAgPSBwYXJzZUludCgoby5taWxsaXNlY01heCAtICgoby5taWxsaXNlY01heCAtIG8ubWlsbGlzZWNNaW4pICUgby5zdGVwTWlsbGlzZWMpKSAsMTApLA0KCQkJZHBfaWQgPSB0aGlzLmluc3QuaWQudG9TdHJpbmcoKS5yZXBsYWNlKC8oW15BLVphLXowLTlfXSkvZywgJycpOw0KDQoJCS8vIFByZXZlbnQgZGlzcGxheWluZyB0d2ljZQ0KCQkvL2lmICgkZHAuZmluZCgiZGl2I3VpLXRpbWVwaWNrZXItZGl2LSIrIGRwX2lkKS5sZW5ndGggPT09IDApIHsNCgkJaWYgKCRkcC5maW5kKCJkaXYjdWktdGltZXBpY2tlci1kaXYtIisgZHBfaWQpLmxlbmd0aCA9PT0gMCAmJiBvLnNob3dUaW1lcGlja2VyKSB7DQoJCQl2YXIgbm9EaXNwbGF5ID0gJyBzdHlsZT0iZGlzcGxheTpub25lOyInLA0KCQkJCWh0bWwgPQknPGRpdiBjbGFzcz0idWktdGltZXBpY2tlci1kaXYiIGlkPSJ1aS10aW1lcGlja2VyLWRpdi0nICsgZHBfaWQgKyAnIj48ZGw+JyArDQoJCQkJCQknPGR0IGNsYXNzPSJ1aV90cGlja2VyX3RpbWVfbGFiZWwiIGlkPSJ1aV90cGlja2VyX3RpbWVfbGFiZWxfJyArIGRwX2lkICsgJyInICsNCgkJCQkJCSgoby5zaG93VGltZSkgPyAnJyA6IG5vRGlzcGxheSkgKyAnPicgKyBvLnRpbWVUZXh0ICsgJzwvZHQ+JyArDQoJCQkJCQknPGRkIGNsYXNzPSJ1aV90cGlja2VyX3RpbWUiIGlkPSJ1aV90cGlja2VyX3RpbWVfJyArIGRwX2lkICsgJyInICsNCgkJCQkJCSgoby5zaG93VGltZSkgPyAnJyA6IG5vRGlzcGxheSkgKyAnPjwvZGQ+JyArDQoJCQkJCQknPGR0IGNsYXNzPSJ1aV90cGlja2VyX2hvdXJfbGFiZWwiIGlkPSJ1aV90cGlja2VyX2hvdXJfbGFiZWxfJyArIGRwX2lkICsgJyInICsNCgkJCQkJCSgoby5zaG93SG91cikgPyAnJyA6IG5vRGlzcGxheSkgKyAnPicgKyBvLmhvdXJUZXh0ICsgJzwvZHQ+JywNCgkJCQlob3VyR3JpZFNpemUgPSAwLA0KCQkJCW1pbnV0ZUdyaWRTaXplID0gMCwNCgkJCQlzZWNvbmRHcmlkU2l6ZSA9IDAsDQoJCQkJbWlsbGlzZWNHcmlkU2l6ZSA9IDAsDQoJCQkJc2l6ZTsNCg0KIAkJCS8vIEhvdXJzDQoJCQlodG1sICs9ICc8ZGQgY2xhc3M9InVpX3RwaWNrZXJfaG91ciI+PGRpdiBpZD0idWlfdHBpY2tlcl9ob3VyXycgKyBkcF9pZCArICciJyArDQoJCQkJCQkoKG8uc2hvd0hvdXIpID8gJycgOiBub0Rpc3BsYXkpICsgJz48L2Rpdj4nOw0KCQkJaWYgKG8uc2hvd0hvdXIgJiYgby5ob3VyR3JpZCA+IDApIHsNCgkJCQlodG1sICs9ICc8ZGl2IHN0eWxlPSJwYWRkaW5nLWxlZnQ6IDFweCI+PHRhYmxlIGNsYXNzPSJ1aS10cGlja2VyLWdyaWQtbGFiZWwiPjx0cj4nOw0KDQoJCQkJZm9yICh2YXIgaCA9IG8uaG91ck1pbjsgaCA8PSBob3VyTWF4OyBoICs9IHBhcnNlSW50KG8uaG91ckdyaWQsMTApKSB7DQoJCQkJCWhvdXJHcmlkU2l6ZSsrOw0KCQkJCQl2YXIgdG1waCA9IChvLmFtcG0gJiYgaCA+IDEyKSA/IGgtMTIgOiBoOw0KCQkJCQlpZiAodG1waCA8IDEwKSB0bXBoID0gJzAnICsgdG1waDsNCgkJCQkJaWYgKG8uYW1wbSkgew0KCQkJCQkJaWYgKGggPT0gMCkgdG1waCA9IDEyICsnYSc7DQoJCQkJCQllbHNlIGlmIChoIDwgMTIpIHRtcGggKz0gJ2EnOw0KCQkJCQkJZWxzZSB0bXBoICs9ICdwJzsNCgkJCQkJfQ0KCQkJCQlodG1sICs9ICc8dGQ+JyArIHRtcGggKyAnPC90ZD4nOw0KCQkJCX0NCg0KCQkJCWh0bWwgKz0gJzwvdHI+PC90YWJsZT48L2Rpdj4nOw0KCQkJfQ0KCQkJaHRtbCArPSAnPC9kZD4nOw0KDQoJCQkvLyBNaW51dGVzDQoJCQlodG1sICs9ICc8ZHQgY2xhc3M9InVpX3RwaWNrZXJfbWludXRlX2xhYmVsIiBpZD0idWlfdHBpY2tlcl9taW51dGVfbGFiZWxfJyArIGRwX2lkICsgJyInICsNCgkJCQkJKChvLnNob3dNaW51dGUpID8gJycgOiBub0Rpc3BsYXkpICsgJz4nICsgby5taW51dGVUZXh0ICsgJzwvZHQ+JysNCgkJCQkJJzxkZCBjbGFzcz0idWlfdHBpY2tlcl9taW51dGUiPjxkaXYgaWQ9InVpX3RwaWNrZXJfbWludXRlXycgKyBkcF9pZCArICciJyArDQoJCQkJCQkJKChvLnNob3dNaW51dGUpID8gJycgOiBub0Rpc3BsYXkpICsgJz48L2Rpdj4nOw0KDQoJCQlpZiAoby5zaG93TWludXRlICYmIG8ubWludXRlR3JpZCA+IDApIHsNCgkJCQlodG1sICs9ICc8ZGl2IHN0eWxlPSJwYWRkaW5nLWxlZnQ6IDFweCI+PHRhYmxlIGNsYXNzPSJ1aS10cGlja2VyLWdyaWQtbGFiZWwiPjx0cj4nOw0KDQoJCQkJZm9yICh2YXIgbSA9IG8ubWludXRlTWluOyBtIDw9IG1pbk1heDsgbSArPSBwYXJzZUludChvLm1pbnV0ZUdyaWQsMTApKSB7DQoJCQkJCW1pbnV0ZUdyaWRTaXplKys7DQoJCQkJCWh0bWwgKz0gJzx0ZD4nICsgKChtIDwgMTApID8gJzAnIDogJycpICsgbSArICc8L3RkPic7DQoJCQkJfQ0KDQoJCQkJaHRtbCArPSAnPC90cj48L3RhYmxlPjwvZGl2Pic7DQoJCQl9DQoJCQlodG1sICs9ICc8L2RkPic7DQoNCgkJCS8vIFNlY29uZHMNCgkJCWh0bWwgKz0gJzxkdCBjbGFzcz0idWlfdHBpY2tlcl9zZWNvbmRfbGFiZWwiIGlkPSJ1aV90cGlja2VyX3NlY29uZF9sYWJlbF8nICsgZHBfaWQgKyAnIicgKw0KCQkJCQkoKG8uc2hvd1NlY29uZCkgPyAnJyA6IG5vRGlzcGxheSkgKyAnPicgKyBvLnNlY29uZFRleHQgKyAnPC9kdD4nKw0KCQkJCQknPGRkIGNsYXNzPSJ1aV90cGlja2VyX3NlY29uZCI+PGRpdiBpZD0idWlfdHBpY2tlcl9zZWNvbmRfJyArIGRwX2lkICsgJyInKw0KCQkJCQkJCSgoby5zaG93U2Vjb25kKSA/ICcnIDogbm9EaXNwbGF5KSArICc+PC9kaXY+JzsNCg0KCQkJaWYgKG8uc2hvd1NlY29uZCAmJiBvLnNlY29uZEdyaWQgPiAwKSB7DQoJCQkJaHRtbCArPSAnPGRpdiBzdHlsZT0icGFkZGluZy1sZWZ0OiAxcHgiPjx0YWJsZT48dHI+JzsNCg0KCQkJCWZvciAodmFyIHMgPSBvLnNlY29uZE1pbjsgcyA8PSBzZWNNYXg7IHMgKz0gcGFyc2VJbnQoby5zZWNvbmRHcmlkLDEwKSkgew0KCQkJCQlzZWNvbmRHcmlkU2l6ZSsrOw0KCQkJCQlodG1sICs9ICc8dGQ+JyArICgocyA8IDEwKSA/ICcwJyA6ICcnKSArIHMgKyAnPC90ZD4nOw0KCQkJCX0NCg0KCQkJCWh0bWwgKz0gJzwvdHI+PC90YWJsZT48L2Rpdj4nOw0KCQkJfQ0KCQkJaHRtbCArPSAnPC9kZD4nOw0KDQoJCQkvLyBNaWxsaXNlY29uZHMNCgkJCWh0bWwgKz0gJzxkdCBjbGFzcz0idWlfdHBpY2tlcl9taWxsaXNlY19sYWJlbCIgaWQ9InVpX3RwaWNrZXJfbWlsbGlzZWNfbGFiZWxfJyArIGRwX2lkICsgJyInICsNCgkJCQkJKChvLnNob3dNaWxsaXNlYykgPyAnJyA6IG5vRGlzcGxheSkgKyAnPicgKyBvLm1pbGxpc2VjVGV4dCArICc8L2R0PicrDQoJCQkJCSc8ZGQgY2xhc3M9InVpX3RwaWNrZXJfbWlsbGlzZWMiPjxkaXYgaWQ9InVpX3RwaWNrZXJfbWlsbGlzZWNfJyArIGRwX2lkICsgJyInKw0KCQkJCQkJCSgoby5zaG93TWlsbGlzZWMpID8gJycgOiBub0Rpc3BsYXkpICsgJz48L2Rpdj4nOw0KDQoJCQlpZiAoby5zaG93TWlsbGlzZWMgJiYgby5taWxsaXNlY0dyaWQgPiAwKSB7DQoJCQkJaHRtbCArPSAnPGRpdiBzdHlsZT0icGFkZGluZy1sZWZ0OiAxcHgiPjx0YWJsZT48dHI+JzsNCg0KCQkJCWZvciAodmFyIGwgPSBvLm1pbGxpc2VjTWluOyBsIDw9IG1pbGxpc2VjTWF4OyBsICs9IHBhcnNlSW50KG8ubWlsbGlzZWNHcmlkLDEwKSkgew0KCQkJCQltaWxsaXNlY0dyaWRTaXplKys7DQoJCQkJCWh0bWwgKz0gJzx0ZD4nICsgKChsIDwgMTApID8gJzAnIDogJycpICsgbCArICc8L3RkPic7DQoJCQkJfQ0KDQoJCQkJaHRtbCArPSAnPC90cj48L3RhYmxlPjwvZGl2Pic7DQoJCQl9DQoJCQlodG1sICs9ICc8L2RkPic7DQoNCgkJCS8vIFRpbWV6b25lDQoJCQlodG1sICs9ICc8ZHQgY2xhc3M9InVpX3RwaWNrZXJfdGltZXpvbmVfbGFiZWwiIGlkPSJ1aV90cGlja2VyX3RpbWV6b25lX2xhYmVsXycgKyBkcF9pZCArICciJyArDQoJCQkJCSgoby5zaG93VGltZXpvbmUpID8gJycgOiBub0Rpc3BsYXkpICsgJz4nICsgby50aW1lem9uZVRleHQgKyAnPC9kdD4nOw0KCQkJaHRtbCArPSAnPGRkIGNsYXNzPSJ1aV90cGlja2VyX3RpbWV6b25lIiBpZD0idWlfdHBpY2tlcl90aW1lem9uZV8nICsgZHBfaWQgKyAnIicJKw0KCQkJCQkJCSgoby5zaG93VGltZXpvbmUpID8gJycgOiBub0Rpc3BsYXkpICsgJz48L2RkPic7DQoNCgkJCWh0bWwgKz0gJzwvZGw+PC9kaXY+JzsNCgkJCSR0cCA9ICQoaHRtbCk7DQoNCgkJCQkvLyBpZiB3ZSBvbmx5IHdhbnQgdGltZSBwaWNrZXIuLi4NCgkJCWlmIChvLnRpbWVPbmx5ID09PSB0cnVlKSB7DQoJCQkJJHRwLnByZXBlbmQoDQoJCQkJCSc8ZGl2IGNsYXNzPSJ1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItYWxsIj4nICsNCgkJCQkJCSc8ZGl2IGNsYXNzPSJ1aS1kYXRlcGlja2VyLXRpdGxlIj4nICsgby50aW1lT25seVRpdGxlICsgJzwvZGl2PicgKw0KCQkJCQknPC9kaXY+Jyk7DQoJCQkJJGRwLmZpbmQoJy51aS1kYXRlcGlja2VyLWhlYWRlciwgLnVpLWRhdGVwaWNrZXItY2FsZW5kYXInKS5oaWRlKCk7DQoJCQl9DQoNCgkJCXRoaXMuaG91cl9zbGlkZXIgPSAkdHAuZmluZCgnI3VpX3RwaWNrZXJfaG91cl8nKyBkcF9pZCkuc2xpZGVyKHsNCgkJCQlvcmllbnRhdGlvbjogImhvcml6b250YWwiLA0KCQkJCXZhbHVlOiB0aGlzLmhvdXIsDQoJCQkJbWluOiBvLmhvdXJNaW4sDQoJCQkJbWF4OiBob3VyTWF4LA0KCQkJCXN0ZXA6IG8uc3RlcEhvdXIsDQoJCQkJc2xpZGU6IGZ1bmN0aW9uKGV2ZW50LCB1aSkgew0KCQkJCQl0cF9pbnN0LmhvdXJfc2xpZGVyLnNsaWRlciggIm9wdGlvbiIsICJ2YWx1ZSIsIHVpLnZhbHVlKTsNCgkJCQkJdHBfaW5zdC5fb25UaW1lQ2hhbmdlKCk7DQoJCQkJfQ0KCQkJfSk7DQoNCgkJCQ0KCQkJLy8gVXBkYXRlZCBieSBQZXRlciBNZWRlaXJvczoNCgkJCS8vIC0gUGFzcyBpbiBFdmVudCBhbmQgVUkgaW5zdGFuY2UgaW50byBzbGlkZSBmdW5jdGlvbg0KCQkJdGhpcy5taW51dGVfc2xpZGVyID0gJHRwLmZpbmQoJyN1aV90cGlja2VyX21pbnV0ZV8nKyBkcF9pZCkuc2xpZGVyKHsNCgkJCQlvcmllbnRhdGlvbjogImhvcml6b250YWwiLA0KCQkJCXZhbHVlOiB0aGlzLm1pbnV0ZSwNCgkJCQltaW46IG8ubWludXRlTWluLA0KCQkJCW1heDogbWluTWF4LA0KCQkJCXN0ZXA6IG8uc3RlcE1pbnV0ZSwNCgkJCQlzbGlkZTogZnVuY3Rpb24oZXZlbnQsIHVpKSB7DQoJCQkJCXRwX2luc3QubWludXRlX3NsaWRlci5zbGlkZXIoICJvcHRpb24iLCAidmFsdWUiLCB1aS52YWx1ZSk7DQoJCQkJCXRwX2luc3QuX29uVGltZUNoYW5nZSgpOw0KCQkJCX0NCgkJCX0pOw0KDQoJCQl0aGlzLnNlY29uZF9zbGlkZXIgPSAkdHAuZmluZCgnI3VpX3RwaWNrZXJfc2Vjb25kXycrIGRwX2lkKS5zbGlkZXIoew0KCQkJCW9yaWVudGF0aW9uOiAiaG9yaXpvbnRhbCIsDQoJCQkJdmFsdWU6IHRoaXMuc2Vjb25kLA0KCQkJCW1pbjogby5zZWNvbmRNaW4sDQoJCQkJbWF4OiBzZWNNYXgsDQoJCQkJc3RlcDogby5zdGVwU2Vjb25kLA0KCQkJCXNsaWRlOiBmdW5jdGlvbihldmVudCwgdWkpIHsNCgkJCQkJdHBfaW5zdC5zZWNvbmRfc2xpZGVyLnNsaWRlciggIm9wdGlvbiIsICJ2YWx1ZSIsIHVpLnZhbHVlKTsNCgkJCQkJdHBfaW5zdC5fb25UaW1lQ2hhbmdlKCk7DQoJCQkJfQ0KCQkJfSk7DQoNCgkJCXRoaXMubWlsbGlzZWNfc2xpZGVyID0gJHRwLmZpbmQoJyN1aV90cGlja2VyX21pbGxpc2VjXycrIGRwX2lkKS5zbGlkZXIoew0KCQkJCW9yaWVudGF0aW9uOiAiaG9yaXpvbnRhbCIsDQoJCQkJdmFsdWU6IHRoaXMubWlsbGlzZWMsDQoJCQkJbWluOiBvLm1pbGxpc2VjTWluLA0KCQkJCW1heDogbWlsbGlzZWNNYXgsDQoJCQkJc3RlcDogby5zdGVwTWlsbGlzZWMsDQoJCQkJc2xpZGU6IGZ1bmN0aW9uKGV2ZW50LCB1aSkgew0KCQkJCQl0cF9pbnN0Lm1pbGxpc2VjX3NsaWRlci5zbGlkZXIoICJvcHRpb24iLCAidmFsdWUiLCB1aS52YWx1ZSk7DQoJCQkJCXRwX2luc3QuX29uVGltZUNoYW5nZSgpOw0KCQkJCX0NCgkJCX0pOw0KDQoJCQl0aGlzLnRpbWV6b25lX3NlbGVjdCA9ICR0cC5maW5kKCcjdWlfdHBpY2tlcl90aW1lem9uZV8nKyBkcF9pZCkuYXBwZW5kKCc8c2VsZWN0Pjwvc2VsZWN0PicpLmZpbmQoInNlbGVjdCIpOw0KCQkJJC5mbi5hcHBlbmQuYXBwbHkodGhpcy50aW1lem9uZV9zZWxlY3QsDQoJCQkJJC5tYXAoby50aW1lem9uZUxpc3QsIGZ1bmN0aW9uKHZhbCwgaWR4KSB7DQoJCQkJCXJldHVybiAkKCI8b3B0aW9uIC8+IikNCgkJCQkJCS52YWwodHlwZW9mIHZhbCA9PSAib2JqZWN0IiA/IHZhbC52YWx1ZSA6IHZhbCkNCgkJCQkJCS50ZXh0KHR5cGVvZiB2YWwgPT0gIm9iamVjdCIgPyB2YWwubGFiZWwgOiB2YWwpOw0KCQkJCX0pDQoJCQkpOw0KCQkJdGhpcy50aW1lem9uZV9zZWxlY3QudmFsKCh0eXBlb2YgdGhpcy50aW1lem9uZSAhPSAidW5kZWZpbmVkIiAmJiB0aGlzLnRpbWV6b25lICE9IG51bGwgJiYgdGhpcy50aW1lem9uZSAhPSAiIikgPyB0aGlzLnRpbWV6b25lIDogby50aW1lem9uZSk7DQoJCQl0aGlzLnRpbWV6b25lX3NlbGVjdC5jaGFuZ2UoZnVuY3Rpb24oKSB7DQoJCQkJdHBfaW5zdC5fb25UaW1lQ2hhbmdlKCk7DQoJCQl9KTsNCg0KCQkJLy8gQWRkIGdyaWQgZnVuY3Rpb25hbGl0eQ0KCQkJaWYgKG8uc2hvd0hvdXIgJiYgby5ob3VyR3JpZCA+IDApIHsNCgkJCQlzaXplID0gMTAwICogaG91ckdyaWRTaXplICogby5ob3VyR3JpZCAvIChob3VyTWF4IC0gby5ob3VyTWluKTsNCg0KCQkJCSR0cC5maW5kKCIudWlfdHBpY2tlcl9ob3VyIHRhYmxlIikuY3NzKHsNCgkJCQkJd2lkdGg6IHNpemUgKyAiJSIsDQoJCQkJCW1hcmdpbkxlZnQ6IChzaXplIC8gKC0yICogaG91ckdyaWRTaXplKSkgKyAiJSIsDQoJCQkJCWJvcmRlckNvbGxhcHNlOiAnY29sbGFwc2UnDQoJCQkJfSkuZmluZCgidGQiKS5lYWNoKCBmdW5jdGlvbihpbmRleCkgew0KCQkJCQkkKHRoaXMpLmNsaWNrKGZ1bmN0aW9uKCkgew0KCQkJCQkJdmFyIGggPSAkKHRoaXMpLmh0bWwoKTsNCgkJCQkJCWlmKG8uYW1wbSkJew0KCQkJCQkJCXZhciBhcCA9IGguc3Vic3RyaW5nKDIpLnRvTG93ZXJDYXNlKCksDQoJCQkJCQkJCWFwaCA9IHBhcnNlSW50KGguc3Vic3RyaW5nKDAsMiksIDEwKTsNCgkJCQkJCQlpZiAoYXAgPT0gJ2EnKSB7DQoJCQkJCQkJCWlmIChhcGggPT0gMTIpIGggPSAwOw0KCQkJCQkJCQllbHNlIGggPSBhcGg7DQoJCQkJCQkJfSBlbHNlIGlmIChhcGggPT0gMTIpIGggPSAxMjsNCgkJCQkJCQllbHNlIGggPSBhcGggKyAxMjsNCgkJCQkJCX0NCgkJCQkJCXRwX2luc3QuaG91cl9zbGlkZXIuc2xpZGVyKCJvcHRpb24iLCAidmFsdWUiLCBoKTsNCgkJCQkJCXRwX2luc3QuX29uVGltZUNoYW5nZSgpOw0KCQkJCQkJdHBfaW5zdC5fb25TZWxlY3RIYW5kbGVyKCk7DQoJCQkJCX0pLmNzcyh7DQoJCQkJCQljdXJzb3I6ICdwb2ludGVyJywNCgkJCQkJCXdpZHRoOiAoMTAwIC8gaG91ckdyaWRTaXplKSArICclJywNCgkJCQkJCXRleHRBbGlnbjogJ2NlbnRlcicsDQoJCQkJCQlvdmVyZmxvdzogJ2hpZGRlbicNCgkJCQkJfSk7DQoJCQkJfSk7DQoJCQl9DQoNCgkJCWlmIChvLnNob3dNaW51dGUgJiYgby5taW51dGVHcmlkID4gMCkgew0KCQkJCXNpemUgPSAxMDAgKiBtaW51dGVHcmlkU2l6ZSAqIG8ubWludXRlR3JpZCAvIChtaW5NYXggLSBvLm1pbnV0ZU1pbik7DQoJCQkJJHRwLmZpbmQoIi51aV90cGlja2VyX21pbnV0ZSB0YWJsZSIpLmNzcyh7DQoJCQkJCXdpZHRoOiBzaXplICsgIiUiLA0KCQkJCQltYXJnaW5MZWZ0OiAoc2l6ZSAvICgtMiAqIG1pbnV0ZUdyaWRTaXplKSkgKyAiJSIsDQoJCQkJCWJvcmRlckNvbGxhcHNlOiAnY29sbGFwc2UnDQoJCQkJfSkuZmluZCgidGQiKS5lYWNoKGZ1bmN0aW9uKGluZGV4KSB7DQoJCQkJCSQodGhpcykuY2xpY2soZnVuY3Rpb24oKSB7DQoJCQkJCQl0cF9pbnN0Lm1pbnV0ZV9zbGlkZXIuc2xpZGVyKCJvcHRpb24iLCAidmFsdWUiLCAkKHRoaXMpLmh0bWwoKSk7DQoJCQkJCQl0cF9pbnN0Ll9vblRpbWVDaGFuZ2UoKTsNCgkJCQkJCXRwX2luc3QuX29uU2VsZWN0SGFuZGxlcigpOw0KCQkJCQl9KS5jc3Moew0KCQkJCQkJY3Vyc29yOiAncG9pbnRlcicsDQoJCQkJCQl3aWR0aDogKDEwMCAvIG1pbnV0ZUdyaWRTaXplKSArICclJywNCgkJCQkJCXRleHRBbGlnbjogJ2NlbnRlcicsDQoJCQkJCQlvdmVyZmxvdzogJ2hpZGRlbicNCgkJCQkJfSk7DQoJCQkJfSk7DQoJCQl9DQoNCgkJCWlmIChvLnNob3dTZWNvbmQgJiYgby5zZWNvbmRHcmlkID4gMCkgew0KCQkJCSR0cC5maW5kKCIudWlfdHBpY2tlcl9zZWNvbmQgdGFibGUiKS5jc3Moew0KCQkJCQl3aWR0aDogc2l6ZSArICIlIiwNCgkJCQkJbWFyZ2luTGVmdDogKHNpemUgLyAoLTIgKiBzZWNvbmRHcmlkU2l6ZSkpICsgIiUiLA0KCQkJCQlib3JkZXJDb2xsYXBzZTogJ2NvbGxhcHNlJw0KCQkJCX0pLmZpbmQoInRkIikuZWFjaChmdW5jdGlvbihpbmRleCkgew0KCQkJCQkkKHRoaXMpLmNsaWNrKGZ1bmN0aW9uKCkgew0KCQkJCQkJdHBfaW5zdC5zZWNvbmRfc2xpZGVyLnNsaWRlcigib3B0aW9uIiwgInZhbHVlIiwgJCh0aGlzKS5odG1sKCkpOw0KCQkJCQkJdHBfaW5zdC5fb25UaW1lQ2hhbmdlKCk7DQoJCQkJCQl0cF9pbnN0Ll9vblNlbGVjdEhhbmRsZXIoKTsNCgkJCQkJfSkuY3NzKHsNCgkJCQkJCWN1cnNvcjogJ3BvaW50ZXInLA0KCQkJCQkJd2lkdGg6ICgxMDAgLyBzZWNvbmRHcmlkU2l6ZSkgKyAnJScsDQoJCQkJCQl0ZXh0QWxpZ246ICdjZW50ZXInLA0KCQkJCQkJb3ZlcmZsb3c6ICdoaWRkZW4nDQoJCQkJCX0pOw0KCQkJCX0pOw0KCQkJfQ0KDQoJCQlpZiAoby5zaG93TWlsbGlzZWMgJiYgby5taWxsaXNlY0dyaWQgPiAwKSB7DQoJCQkJJHRwLmZpbmQoIi51aV90cGlja2VyX21pbGxpc2VjIHRhYmxlIikuY3NzKHsNCgkJCQkJd2lkdGg6IHNpemUgKyAiJSIsDQoJCQkJCW1hcmdpbkxlZnQ6IChzaXplIC8gKC0yICogbWlsbGlzZWNHcmlkU2l6ZSkpICsgIiUiLA0KCQkJCQlib3JkZXJDb2xsYXBzZTogJ2NvbGxhcHNlJw0KCQkJCX0pLmZpbmQoInRkIikuZWFjaChmdW5jdGlvbihpbmRleCkgew0KCQkJCQkkKHRoaXMpLmNsaWNrKGZ1bmN0aW9uKCkgew0KCQkJCQkJdHBfaW5zdC5taWxsaXNlY19zbGlkZXIuc2xpZGVyKCJvcHRpb24iLCAidmFsdWUiLCAkKHRoaXMpLmh0bWwoKSk7DQoJCQkJCQl0cF9pbnN0Ll9vblRpbWVDaGFuZ2UoKTsNCgkJCQkJCXRwX2luc3QuX29uU2VsZWN0SGFuZGxlcigpOw0KCQkJCQl9KS5jc3Moew0KCQkJCQkJY3Vyc29yOiAncG9pbnRlcicsDQoJCQkJCQl3aWR0aDogKDEwMCAvIG1pbGxpc2VjR3JpZFNpemUpICsgJyUnLA0KCQkJCQkJdGV4dEFsaWduOiAnY2VudGVyJywNCgkJCQkJCW92ZXJmbG93OiAnaGlkZGVuJw0KCQkJCQl9KTsNCgkJCQl9KTsNCgkJCX0NCg0KCQkJdmFyICRidXR0b25QYW5lbCA9ICRkcC5maW5kKCcudWktZGF0ZXBpY2tlci1idXR0b25wYW5lJyk7DQoJCQlpZiAoJGJ1dHRvblBhbmVsLmxlbmd0aCkgJGJ1dHRvblBhbmVsLmJlZm9yZSgkdHApOw0KCQkJZWxzZSAkZHAuYXBwZW5kKCR0cCk7DQoNCgkJCXRoaXMuJHRpbWVPYmogPSAkdHAuZmluZCgnI3VpX3RwaWNrZXJfdGltZV8nKyBkcF9pZCk7DQoNCgkJCWlmICh0aGlzLmluc3QgIT09IG51bGwpIHsNCgkJCQl2YXIgdGltZURlZmluZWQgPSB0aGlzLnRpbWVEZWZpbmVkOw0KCQkJCXRoaXMuX29uVGltZUNoYW5nZSgpOw0KCQkJCXRoaXMudGltZURlZmluZWQgPSB0aW1lRGVmaW5lZDsNCgkJCX0NCg0KCQkJLy9FbXVsYXRlIGRhdGVwaWNrZXIgb25TZWxlY3QgYmVoYXZpb3IuIENhbGwgb24gc2xpZGVzdG9wLg0KCQkJdmFyIG9uU2VsZWN0RGVsZWdhdGUgPSBmdW5jdGlvbigpIHsNCgkJCQl0cF9pbnN0Ll9vblNlbGVjdEhhbmRsZXIoKTsNCgkJCX07DQoJCQl0aGlzLmhvdXJfc2xpZGVyLmJpbmQoJ3NsaWRlc3RvcCcsb25TZWxlY3REZWxlZ2F0ZSk7DQoJCQl0aGlzLm1pbnV0ZV9zbGlkZXIuYmluZCgnc2xpZGVzdG9wJyxvblNlbGVjdERlbGVnYXRlKTsNCgkJCXRoaXMuc2Vjb25kX3NsaWRlci5iaW5kKCdzbGlkZXN0b3AnLG9uU2VsZWN0RGVsZWdhdGUpOw0KCQkJdGhpcy5taWxsaXNlY19zbGlkZXIuYmluZCgnc2xpZGVzdG9wJyxvblNlbGVjdERlbGVnYXRlKTsNCgkJCQ0KCQkJLy8gc2xpZGVBY2Nlc3MgaW50ZWdyYXRpb246IGh0dHA6Ly90cmVudHJpY2hhcmRzb24uY29tLzIwMTEvMTEvMTEvanF1ZXJ5LXVpLXNsaWRlcnMtYW5kLXRvdWNoLWFjY2Vzc2liaWxpdHkvDQoJCQlpZiAodGhpcy5fZGVmYXVsdHMuYWRkU2xpZGVyQWNjZXNzKXsNCgkJCQl2YXIgc2xpZGVyQWNjZXNzQXJncyA9IHRoaXMuX2RlZmF1bHRzLnNsaWRlckFjY2Vzc0FyZ3M7DQoJCQkJc2V0VGltZW91dChmdW5jdGlvbigpeyAvLyBmaXggZm9yIGlubGluZSBtb2RlDQoJCQkJCWlmKCR0cC5maW5kKCcudWktc2xpZGVyLWFjY2VzcycpLmxlbmd0aCA9PSAwKXsNCgkJCQkJCSR0cC5maW5kKCcudWktc2xpZGVyOnZpc2libGUnKS5zbGlkZXJBY2Nlc3Moc2xpZGVyQWNjZXNzQXJncyk7DQoNCgkJCQkJCS8vIGZpeCBhbnkgZ3JpZHMgc2luY2Ugc2xpZGVycyBhcmUgc2hvcnRlcg0KCQkJCQkJdmFyIHNsaWRlckFjY2Vzc1dpZHRoID0gJHRwLmZpbmQoJy51aS1zbGlkZXItYWNjZXNzOmVxKDApJykub3V0ZXJXaWR0aCh0cnVlKTsNCgkJCQkJCWlmKHNsaWRlckFjY2Vzc1dpZHRoKXsNCgkJCQkJCQkkdHAuZmluZCgndGFibGU6dmlzaWJsZScpLmVhY2goZnVuY3Rpb24oKXsNCgkJCQkJCQkJdmFyICRnID0gJCh0aGlzKSwNCgkJCQkJCQkJCW9sZFdpZHRoID0gJGcub3V0ZXJXaWR0aCgpLA0KCQkJCQkJCQkJb2xkTWFyZ2luTGVmdCA9ICRnLmNzcygnbWFyZ2luTGVmdCcpLnRvU3RyaW5nKCkucmVwbGFjZSgnJScsJycpLA0KCQkJCQkJCQkJbmV3V2lkdGggPSBvbGRXaWR0aCAtIHNsaWRlckFjY2Vzc1dpZHRoLA0KCQkJCQkJCQkJbmV3TWFyZ2luTGVmdCA9ICgob2xkTWFyZ2luTGVmdCAqIG5ld1dpZHRoKS9vbGRXaWR0aCkgKyAnJSc7DQoJCQkJCQkNCgkJCQkJCQkJJGcuY3NzKHsgd2lkdGg6IG5ld1dpZHRoLCBtYXJnaW5MZWZ0OiBuZXdNYXJnaW5MZWZ0IH0pOw0KCQkJCQkJCX0pOw0KCQkJCQkJfQ0KCQkJCQl9DQoJCQkJfSwwKTsNCgkJCX0NCgkJCS8vIGVuZCBzbGlkZUFjY2VzcyBpbnRlZ3JhdGlvbg0KCQkJDQoJCX0NCgl9LA0KDQoJLy8jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMNCgkvLyBUaGlzIGZ1bmN0aW9uIHRyaWVzIHRvIGxpbWl0IHRoZSBhYmlsaXR5IHRvIGdvIG91dHNpZGUgdGhlDQoJLy8gbWluL21heCBkYXRlIHJhbmdlDQoJLy8jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMNCglfbGltaXRNaW5NYXhEYXRlVGltZTogZnVuY3Rpb24oZHBfaW5zdCwgYWRqdXN0U2xpZGVycyl7DQoJCXZhciBvID0gdGhpcy5fZGVmYXVsdHMsDQoJCQlkcF9kYXRlID0gbmV3IERhdGUoZHBfaW5zdC5zZWxlY3RlZFllYXIsIGRwX2luc3Quc2VsZWN0ZWRNb250aCwgZHBfaW5zdC5zZWxlY3RlZERheSk7DQoNCgkJaWYoIXRoaXMuX2RlZmF1bHRzLnNob3dUaW1lcGlja2VyKSByZXR1cm47IC8vIE5vIHRpbWUgc28gbm90aGluZyB0byBjaGVjayBoZXJlDQoNCgkJaWYoJC5kYXRlcGlja2VyLl9nZXQoZHBfaW5zdCwgJ21pbkRhdGVUaW1lJykgIT09IG51bGwgJiYgJC5kYXRlcGlja2VyLl9nZXQoZHBfaW5zdCwgJ21pbkRhdGVUaW1lJykgIT09IHVuZGVmaW5lZCAmJiBkcF9kYXRlKXsNCgkJCXZhciBtaW5EYXRlVGltZSA9ICQuZGF0ZXBpY2tlci5fZ2V0KGRwX2luc3QsICdtaW5EYXRlVGltZScpLA0KCQkJCW1pbkRhdGVUaW1lRGF0ZSA9IG5ldyBEYXRlKG1pbkRhdGVUaW1lLmdldEZ1bGxZZWFyKCksIG1pbkRhdGVUaW1lLmdldE1vbnRoKCksIG1pbkRhdGVUaW1lLmdldERhdGUoKSwgMCwgMCwgMCwgMCk7DQoNCgkJCWlmKHRoaXMuaG91ck1pbk9yaWdpbmFsID09PSBudWxsIHx8IHRoaXMubWludXRlTWluT3JpZ2luYWwgPT09IG51bGwgfHwgdGhpcy5zZWNvbmRNaW5PcmlnaW5hbCA9PT0gbnVsbCB8fCB0aGlzLm1pbGxpc2VjTWluT3JpZ2luYWwgPT09IG51bGwpew0KCQkJCXRoaXMuaG91ck1pbk9yaWdpbmFsID0gby5ob3VyTWluOw0KCQkJCXRoaXMubWludXRlTWluT3JpZ2luYWwgPSBvLm1pbnV0ZU1pbjsNCgkJCQl0aGlzLnNlY29uZE1pbk9yaWdpbmFsID0gby5zZWNvbmRNaW47DQoJCQkJdGhpcy5taWxsaXNlY01pbk9yaWdpbmFsID0gby5taWxsaXNlY01pbjsNCgkJCX0NCg0KCQkJaWYoZHBfaW5zdC5zZXR0aW5ncy50aW1lT25seSB8fCBtaW5EYXRlVGltZURhdGUuZ2V0VGltZSgpID09IGRwX2RhdGUuZ2V0VGltZSgpKSB7DQoJCQkJdGhpcy5fZGVmYXVsdHMuaG91ck1pbiA9IG1pbkRhdGVUaW1lLmdldEhvdXJzKCk7DQoJCQkJaWYgKHRoaXMuaG91ciA8PSB0aGlzLl9kZWZhdWx0cy5ob3VyTWluKSB7DQoJCQkJCXRoaXMuaG91ciA9IHRoaXMuX2RlZmF1bHRzLmhvdXJNaW47DQoJCQkJCXRoaXMuX2RlZmF1bHRzLm1pbnV0ZU1pbiA9IG1pbkRhdGVUaW1lLmdldE1pbnV0ZXMoKTsNCgkJCQkJaWYgKHRoaXMubWludXRlIDw9IHRoaXMuX2RlZmF1bHRzLm1pbnV0ZU1pbikgew0KCQkJCQkJdGhpcy5taW51dGUgPSB0aGlzLl9kZWZhdWx0cy5taW51dGVNaW47DQoJCQkJCQl0aGlzLl9kZWZhdWx0cy5zZWNvbmRNaW4gPSBtaW5EYXRlVGltZS5nZXRTZWNvbmRzKCk7DQoJCQkJCX0gZWxzZSBpZiAodGhpcy5zZWNvbmQgPD0gdGhpcy5fZGVmYXVsdHMuc2Vjb25kTWluKXsNCgkJCQkJCXRoaXMuc2Vjb25kID0gdGhpcy5fZGVmYXVsdHMuc2Vjb25kTWluOw0KCQkJCQkJdGhpcy5fZGVmYXVsdHMubWlsbGlzZWNNaW4gPSBtaW5EYXRlVGltZS5nZXRNaWxsaXNlY29uZHMoKTsNCgkJCQkJfSBlbHNlIHsNCgkJCQkJCWlmKHRoaXMubWlsbGlzZWMgPCB0aGlzLl9kZWZhdWx0cy5taWxsaXNlY01pbikNCgkJCQkJCQl0aGlzLm1pbGxpc2VjID0gdGhpcy5fZGVmYXVsdHMubWlsbGlzZWNNaW47DQoJCQkJCQl0aGlzLl9kZWZhdWx0cy5taWxsaXNlY01pbiA9IHRoaXMubWlsbGlzZWNNaW5PcmlnaW5hbDsNCgkJCQkJfQ0KCQkJCX0gZWxzZSB7DQoJCQkJCXRoaXMuX2RlZmF1bHRzLm1pbnV0ZU1pbiA9IHRoaXMubWludXRlTWluT3JpZ2luYWw7DQoJCQkJCXRoaXMuX2RlZmF1bHRzLnNlY29uZE1pbiA9IHRoaXMuc2Vjb25kTWluT3JpZ2luYWw7DQoJCQkJCXRoaXMuX2RlZmF1bHRzLm1pbGxpc2VjTWluID0gdGhpcy5taWxsaXNlY01pbk9yaWdpbmFsOw0KCQkJCX0NCgkJCX1lbHNlew0KCQkJCXRoaXMuX2RlZmF1bHRzLmhvdXJNaW4gPSB0aGlzLmhvdXJNaW5PcmlnaW5hbDsNCgkJCQl0aGlzLl9kZWZhdWx0cy5taW51dGVNaW4gPSB0aGlzLm1pbnV0ZU1pbk9yaWdpbmFsOw0KCQkJCXRoaXMuX2RlZmF1bHRzLnNlY29uZE1pbiA9IHRoaXMuc2Vjb25kTWluT3JpZ2luYWw7DQoJCQkJdGhpcy5fZGVmYXVsdHMubWlsbGlzZWNNaW4gPSB0aGlzLm1pbGxpc2VjTWluT3JpZ2luYWw7DQoJCQl9DQoJCX0NCg0KCQlpZigkLmRhdGVwaWNrZXIuX2dldChkcF9pbnN0LCAnbWF4RGF0ZVRpbWUnKSAhPT0gbnVsbCAmJiAkLmRhdGVwaWNrZXIuX2dldChkcF9pbnN0LCAnbWF4RGF0ZVRpbWUnKSAhPT0gdW5kZWZpbmVkICYmIGRwX2RhdGUpew0KCQkJdmFyIG1heERhdGVUaW1lID0gJC5kYXRlcGlja2VyLl9nZXQoZHBfaW5zdCwgJ21heERhdGVUaW1lJyksDQoJCQkJbWF4RGF0ZVRpbWVEYXRlID0gbmV3IERhdGUobWF4RGF0ZVRpbWUuZ2V0RnVsbFllYXIoKSwgbWF4RGF0ZVRpbWUuZ2V0TW9udGgoKSwgbWF4RGF0ZVRpbWUuZ2V0RGF0ZSgpLCAwLCAwLCAwLCAwKTsNCg0KCQkJaWYodGhpcy5ob3VyTWF4T3JpZ2luYWwgPT09IG51bGwgfHwgdGhpcy5taW51dGVNYXhPcmlnaW5hbCA9PT0gbnVsbCB8fCB0aGlzLnNlY29uZE1heE9yaWdpbmFsID09PSBudWxsKXsNCgkJCQl0aGlzLmhvdXJNYXhPcmlnaW5hbCA9IG8uaG91ck1heDsNCgkJCQl0aGlzLm1pbnV0ZU1heE9yaWdpbmFsID0gby5taW51dGVNYXg7DQoJCQkJdGhpcy5zZWNvbmRNYXhPcmlnaW5hbCA9IG8uc2Vjb25kTWF4Ow0KCQkJCXRoaXMubWlsbGlzZWNNYXhPcmlnaW5hbCA9IG8ubWlsbGlzZWNNYXg7DQoJCQl9DQoNCgkJCWlmKGRwX2luc3Quc2V0dGluZ3MudGltZU9ubHkgfHwgbWF4RGF0ZVRpbWVEYXRlLmdldFRpbWUoKSA9PSBkcF9kYXRlLmdldFRpbWUoKSl7DQoJCQkJdGhpcy5fZGVmYXVsdHMuaG91ck1heCA9IG1heERhdGVUaW1lLmdldEhvdXJzKCk7DQoJCQkJaWYgKHRoaXMuaG91ciA+PSB0aGlzLl9kZWZhdWx0cy5ob3VyTWF4KSB7DQoJCQkJCXRoaXMuaG91ciA9IHRoaXMuX2RlZmF1bHRzLmhvdXJNYXg7DQoJCQkJCXRoaXMuX2RlZmF1bHRzLm1pbnV0ZU1heCA9IG1heERhdGVUaW1lLmdldE1pbnV0ZXMoKTsNCgkJCQkJaWYgKHRoaXMubWludXRlID49IHRoaXMuX2RlZmF1bHRzLm1pbnV0ZU1heCkgew0KCQkJCQkJdGhpcy5taW51dGUgPSB0aGlzLl9kZWZhdWx0cy5taW51dGVNYXg7DQoJCQkJCQl0aGlzLl9kZWZhdWx0cy5zZWNvbmRNYXggPSBtYXhEYXRlVGltZS5nZXRTZWNvbmRzKCk7DQoJCQkJCX0gZWxzZSBpZiAodGhpcy5zZWNvbmQgPj0gdGhpcy5fZGVmYXVsdHMuc2Vjb25kTWF4KSB7DQoJCQkJCQl0aGlzLnNlY29uZCA9IHRoaXMuX2RlZmF1bHRzLnNlY29uZE1heDsNCgkJCQkJCXRoaXMuX2RlZmF1bHRzLm1pbGxpc2VjTWF4ID0gbWF4RGF0ZVRpbWUuZ2V0TWlsbGlzZWNvbmRzKCk7DQoJCQkJCX0gZWxzZSB7DQoJCQkJCQlpZih0aGlzLm1pbGxpc2VjID4gdGhpcy5fZGVmYXVsdHMubWlsbGlzZWNNYXgpIHRoaXMubWlsbGlzZWMgPSB0aGlzLl9kZWZhdWx0cy5taWxsaXNlY01heDsNCgkJCQkJCXRoaXMuX2RlZmF1bHRzLm1pbGxpc2VjTWF4ID0gdGhpcy5taWxsaXNlY01heE9yaWdpbmFsOw0KCQkJCQl9DQoJCQkJfSBlbHNlIHsNCgkJCQkJdGhpcy5fZGVmYXVsdHMubWludXRlTWF4ID0gdGhpcy5taW51dGVNYXhPcmlnaW5hbDsNCgkJCQkJdGhpcy5fZGVmYXVsdHMuc2Vjb25kTWF4ID0gdGhpcy5zZWNvbmRNYXhPcmlnaW5hbDsNCgkJCQkJdGhpcy5fZGVmYXVsdHMubWlsbGlzZWNNYXggPSB0aGlzLm1pbGxpc2VjTWF4T3JpZ2luYWw7DQoJCQkJfQ0KCQkJfWVsc2V7DQoJCQkJdGhpcy5fZGVmYXVsdHMuaG91ck1heCA9IHRoaXMuaG91ck1heE9yaWdpbmFsOw0KCQkJCXRoaXMuX2RlZmF1bHRzLm1pbnV0ZU1heCA9IHRoaXMubWludXRlTWF4T3JpZ2luYWw7DQoJCQkJdGhpcy5fZGVmYXVsdHMuc2Vjb25kTWF4ID0gdGhpcy5zZWNvbmRNYXhPcmlnaW5hbDsNCgkJCQl0aGlzLl9kZWZhdWx0cy5taWxsaXNlY01heCA9IHRoaXMubWlsbGlzZWNNYXhPcmlnaW5hbDsNCgkJCX0NCgkJfQ0KDQoJCWlmKGFkanVzdFNsaWRlcnMgIT09IHVuZGVmaW5lZCAmJiBhZGp1c3RTbGlkZXJzID09PSB0cnVlKXsNCgkJCXZhciBob3VyTWF4ID0gcGFyc2VJbnQoKHRoaXMuX2RlZmF1bHRzLmhvdXJNYXggLSAoKHRoaXMuX2RlZmF1bHRzLmhvdXJNYXggLSB0aGlzLl9kZWZhdWx0cy5ob3VyTWluKSAlIHRoaXMuX2RlZmF1bHRzLnN0ZXBIb3VyKSkgLDEwKSwNCiAgICAgICAgICAgICAgICBtaW5NYXggID0gcGFyc2VJbnQoKHRoaXMuX2RlZmF1bHRzLm1pbnV0ZU1heCAtICgodGhpcy5fZGVmYXVsdHMubWludXRlTWF4IC0gdGhpcy5fZGVmYXVsdHMubWludXRlTWluKSAlIHRoaXMuX2RlZmF1bHRzLnN0ZXBNaW51dGUpKSAsMTApLA0KICAgICAgICAgICAgICAgIHNlY01heCAgPSBwYXJzZUludCgodGhpcy5fZGVmYXVsdHMuc2Vjb25kTWF4IC0gKCh0aGlzLl9kZWZhdWx0cy5zZWNvbmRNYXggLSB0aGlzLl9kZWZhdWx0cy5zZWNvbmRNaW4pICUgdGhpcy5fZGVmYXVsdHMuc3RlcFNlY29uZCkpICwxMCksDQoJCQkJbWlsbGlzZWNNYXggID0gcGFyc2VJbnQoKHRoaXMuX2RlZmF1bHRzLm1pbGxpc2VjTWF4IC0gKCh0aGlzLl9kZWZhdWx0cy5taWxsaXNlY01heCAtIHRoaXMuX2RlZmF1bHRzLm1pbGxpc2VjTWluKSAlIHRoaXMuX2RlZmF1bHRzLnN0ZXBNaWxsaXNlYykpICwxMCk7DQoNCgkJCWlmKHRoaXMuaG91cl9zbGlkZXIpDQoJCQkJdGhpcy5ob3VyX3NsaWRlci5zbGlkZXIoIm9wdGlvbiIsIHsgbWluOiB0aGlzLl9kZWZhdWx0cy5ob3VyTWluLCBtYXg6IGhvdXJNYXggfSkuc2xpZGVyKCd2YWx1ZScsIHRoaXMuaG91cik7DQoJCQlpZih0aGlzLm1pbnV0ZV9zbGlkZXIpDQoJCQkJdGhpcy5taW51dGVfc2xpZGVyLnNsaWRlcigib3B0aW9uIiwgeyBtaW46IHRoaXMuX2RlZmF1bHRzLm1pbnV0ZU1pbiwgbWF4OiBtaW5NYXggfSkuc2xpZGVyKCd2YWx1ZScsIHRoaXMubWludXRlKTsNCgkJCWlmKHRoaXMuc2Vjb25kX3NsaWRlcikNCgkJCQl0aGlzLnNlY29uZF9zbGlkZXIuc2xpZGVyKCJvcHRpb24iLCB7IG1pbjogdGhpcy5fZGVmYXVsdHMuc2Vjb25kTWluLCBtYXg6IHNlY01heCB9KS5zbGlkZXIoJ3ZhbHVlJywgdGhpcy5zZWNvbmQpOw0KCQkJaWYodGhpcy5taWxsaXNlY19zbGlkZXIpDQoJCQkJdGhpcy5taWxsaXNlY19zbGlkZXIuc2xpZGVyKCJvcHRpb24iLCB7IG1pbjogdGhpcy5fZGVmYXVsdHMubWlsbGlzZWNNaW4sIG1heDogbWlsbGlzZWNNYXggfSkuc2xpZGVyKCd2YWx1ZScsIHRoaXMubWlsbGlzZWMpOw0KCQl9DQoNCgl9LA0KDQoJDQoJLy8jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMNCgkvLyB3aGVuIGEgc2xpZGVyIG1vdmVzLCBzZXQgdGhlIGludGVybmFsIHRpbWUuLi4NCgkvLyBvbiB0aW1lIGNoYW5nZSBpcyBhbHNvIGNhbGxlZCB3aGVuIHRoZSB0aW1lIGlzIHVwZGF0ZWQgaW4gdGhlIHRleHQgZmllbGQNCgkvLyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIw0KCV9vblRpbWVDaGFuZ2U6IGZ1bmN0aW9uKCkgew0KCQl2YXIgaG91ciAgID0gKHRoaXMuaG91cl9zbGlkZXIpID8gdGhpcy5ob3VyX3NsaWRlci5zbGlkZXIoJ3ZhbHVlJykgOiBmYWxzZSwNCgkJCW1pbnV0ZSA9ICh0aGlzLm1pbnV0ZV9zbGlkZXIpID8gdGhpcy5taW51dGVfc2xpZGVyLnNsaWRlcigndmFsdWUnKSA6IGZhbHNlLA0KCQkJc2Vjb25kID0gKHRoaXMuc2Vjb25kX3NsaWRlcikgPyB0aGlzLnNlY29uZF9zbGlkZXIuc2xpZGVyKCd2YWx1ZScpIDogZmFsc2UsDQoJCQltaWxsaXNlYyA9ICh0aGlzLm1pbGxpc2VjX3NsaWRlcikgPyB0aGlzLm1pbGxpc2VjX3NsaWRlci5zbGlkZXIoJ3ZhbHVlJykgOiBmYWxzZSwNCgkJCXRpbWV6b25lID0gKHRoaXMudGltZXpvbmVfc2VsZWN0KSA/IHRoaXMudGltZXpvbmVfc2VsZWN0LnZhbCgpIDogZmFsc2UsDQoJCQlvID0gdGhpcy5fZGVmYXVsdHM7DQoNCgkJaWYgKHR5cGVvZihob3VyKSA9PSAnb2JqZWN0JykgaG91ciA9IGZhbHNlOw0KCQlpZiAodHlwZW9mKG1pbnV0ZSkgPT0gJ29iamVjdCcpIG1pbnV0ZSA9IGZhbHNlOw0KCQlpZiAodHlwZW9mKHNlY29uZCkgPT0gJ29iamVjdCcpIHNlY29uZCA9IGZhbHNlOw0KCQlpZiAodHlwZW9mKG1pbGxpc2VjKSA9PSAnb2JqZWN0JykgbWlsbGlzZWMgPSBmYWxzZTsNCgkJaWYgKHR5cGVvZih0aW1lem9uZSkgPT0gJ29iamVjdCcpIHRpbWV6b25lID0gZmFsc2U7DQoNCgkJaWYgKGhvdXIgIT09IGZhbHNlKSBob3VyID0gcGFyc2VJbnQoaG91ciwxMCk7DQoJCWlmIChtaW51dGUgIT09IGZhbHNlKSBtaW51dGUgPSBwYXJzZUludChtaW51dGUsMTApOw0KCQlpZiAoc2Vjb25kICE9PSBmYWxzZSkgc2Vjb25kID0gcGFyc2VJbnQoc2Vjb25kLDEwKTsNCgkJaWYgKG1pbGxpc2VjICE9PSBmYWxzZSkgbWlsbGlzZWMgPSBwYXJzZUludChtaWxsaXNlYywxMCk7DQoNCgkJdmFyIGFtcG0gPSBvW2hvdXIgPCAxMiA/ICdhbU5hbWVzJyA6ICdwbU5hbWVzJ11bMF07DQoNCgkJLy8gSWYgdGhlIHVwZGF0ZSB3YXMgZG9uZSBpbiB0aGUgaW5wdXQgZmllbGQsIHRoZSBpbnB1dCBmaWVsZCBzaG91bGQgbm90IGJlIHVwZGF0ZWQuDQoJCS8vIElmIHRoZSB1cGRhdGUgd2FzIGRvbmUgdXNpbmcgdGhlIHNsaWRlcnMsIHVwZGF0ZSB0aGUgaW5wdXQgZmllbGQuDQoJCXZhciBoYXNDaGFuZ2VkID0gKGhvdXIgIT0gdGhpcy5ob3VyIHx8IG1pbnV0ZSAhPSB0aGlzLm1pbnV0ZQ0KCQkJCXx8IHNlY29uZCAhPSB0aGlzLnNlY29uZCB8fCBtaWxsaXNlYyAhPSB0aGlzLm1pbGxpc2VjDQoJCQkJfHwgKHRoaXMuYW1wbS5sZW5ndGggPiAwDQoJCQkJICAgICYmIChob3VyIDwgMTIpICE9ICgkLmluQXJyYXkodGhpcy5hbXBtLnRvVXBwZXJDYXNlKCksIHRoaXMuYW1OYW1lcykgIT09IC0xKSkNCgkJCQl8fCB0aW1lem9uZSAhPSB0aGlzLnRpbWV6b25lKTsNCgkJDQoJCWlmIChoYXNDaGFuZ2VkKSB7DQoNCgkJCWlmIChob3VyICE9PSBmYWxzZSl0aGlzLmhvdXIgPSBob3VyOw0KCQkJaWYgKG1pbnV0ZSAhPT0gZmFsc2UpIHRoaXMubWludXRlID0gbWludXRlOw0KCQkJaWYgKHNlY29uZCAhPT0gZmFsc2UpIHRoaXMuc2Vjb25kID0gc2Vjb25kOw0KCQkJaWYgKG1pbGxpc2VjICE9PSBmYWxzZSkgdGhpcy5taWxsaXNlYyA9IG1pbGxpc2VjOw0KCQkJaWYgKHRpbWV6b25lICE9PSBmYWxzZSkgdGhpcy50aW1lem9uZSA9IHRpbWV6b25lOw0KCQkJDQoJCQlpZiAoIXRoaXMuaW5zdCkgdGhpcy5pbnN0ID0gJC5kYXRlcGlja2VyLl9nZXRJbnN0KHRoaXMuJGlucHV0WzBdKTsNCgkJCQ0KCQkJdGhpcy5fbGltaXRNaW5NYXhEYXRlVGltZSh0aGlzLmluc3QsIHRydWUpOw0KCQl9DQoJCWlmIChvLmFtcG0pIHRoaXMuYW1wbSA9IGFtcG07DQoJCQ0KCQkvL3RoaXMuX2Zvcm1hdFRpbWUoKTsNCgkJdGhpcy5mb3JtYXR0ZWRUaW1lID0gJC5kYXRlcGlja2VyLmZvcm1hdFRpbWUodGhpcy5fZGVmYXVsdHMudGltZUZvcm1hdCwgdGhpcywgdGhpcy5fZGVmYXVsdHMpOw0KCQlpZiAodGhpcy4kdGltZU9iaikgdGhpcy4kdGltZU9iai50ZXh0KHRoaXMuZm9ybWF0dGVkVGltZSArIG8udGltZVN1ZmZpeCk7DQoJCXRoaXMudGltZURlZmluZWQgPSB0cnVlOw0KCQlpZiAoaGFzQ2hhbmdlZCkgdGhpcy5fdXBkYXRlRGF0ZVRpbWUoKTsNCgl9LA0KICAgIA0KCS8vIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjDQoJLy8gY2FsbCBjdXN0b20gb25TZWxlY3QuIA0KCS8vIGJpbmQgdG8gc2xpZGVycyBzbGlkZXN0b3AsIGFuZCBncmlkIGNsaWNrLg0KCS8vIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjDQoJX29uU2VsZWN0SGFuZGxlcjogZnVuY3Rpb24oKSB7DQoJCXZhciBvblNlbGVjdCA9IHRoaXMuX2RlZmF1bHRzLm9uU2VsZWN0Ow0KCQl2YXIgaW5wdXRFbCA9IHRoaXMuJGlucHV0ID8gdGhpcy4kaW5wdXRbMF0gOiBudWxsOw0KCQlpZiAob25TZWxlY3QgJiYgaW5wdXRFbCkgew0KCQkJb25TZWxlY3QuYXBwbHkoaW5wdXRFbCwgW3RoaXMuZm9ybWF0dGVkRGF0ZVRpbWUsIHRoaXNdKTsNCgkJfQ0KCX0sDQoNCgkvLyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIw0KCS8vIGxlZnQgZm9yIGFueSBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eQ0KCS8vIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjDQoJX2Zvcm1hdFRpbWU6IGZ1bmN0aW9uKHRpbWUsIGZvcm1hdCkgew0KCQl0aW1lID0gdGltZSB8fCB7IGhvdXI6IHRoaXMuaG91ciwgbWludXRlOiB0aGlzLm1pbnV0ZSwgc2Vjb25kOiB0aGlzLnNlY29uZCwgbWlsbGlzZWM6IHRoaXMubWlsbGlzZWMsIGFtcG06IHRoaXMuYW1wbSwgdGltZXpvbmU6IHRoaXMudGltZXpvbmUgfTsNCgkJdmFyIHRtcHRpbWUgPSAoZm9ybWF0IHx8IHRoaXMuX2RlZmF1bHRzLnRpbWVGb3JtYXQpLnRvU3RyaW5nKCk7DQoNCgkJdG1wdGltZSA9ICQuZGF0ZXBpY2tlci5mb3JtYXRUaW1lKHRtcHRpbWUsIHRpbWUsIHRoaXMuX2RlZmF1bHRzKTsNCgkJDQoJCWlmIChhcmd1bWVudHMubGVuZ3RoKSByZXR1cm4gdG1wdGltZTsNCgkJZWxzZSB0aGlzLmZvcm1hdHRlZFRpbWUgPSB0bXB0aW1lOw0KCX0sDQoNCgkvLyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIw0KCS8vIHVwZGF0ZSBvdXIgaW5wdXQgd2l0aCB0aGUgbmV3IGRhdGUgdGltZS4uDQoJLy8jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMNCglfdXBkYXRlRGF0ZVRpbWU6IGZ1bmN0aW9uKGRwX2luc3QpIHsNCgkJZHBfaW5zdCA9IHRoaXMuaW5zdCB8fCBkcF9pbnN0Ow0KCQl2YXIgZHQgPSAkLmRhdGVwaWNrZXIuX2RheWxpZ2h0U2F2aW5nQWRqdXN0KG5ldyBEYXRlKGRwX2luc3Quc2VsZWN0ZWRZZWFyLCBkcF9pbnN0LnNlbGVjdGVkTW9udGgsIGRwX2luc3Quc2VsZWN0ZWREYXkpKSwNCgkJCWRhdGVGbXQgPSAkLmRhdGVwaWNrZXIuX2dldChkcF9pbnN0LCAnZGF0ZUZvcm1hdCcpLA0KCQkJZm9ybWF0Q2ZnID0gJC5kYXRlcGlja2VyLl9nZXRGb3JtYXRDb25maWcoZHBfaW5zdCksDQoJCQl0aW1lQXZhaWxhYmxlID0gZHQgIT09IG51bGwgJiYgdGhpcy50aW1lRGVmaW5lZDsNCgkJdGhpcy5mb3JtYXR0ZWREYXRlID0gJC5kYXRlcGlja2VyLmZvcm1hdERhdGUoZGF0ZUZtdCwgKGR0ID09PSBudWxsID8gbmV3IERhdGUoKSA6IGR0KSwgZm9ybWF0Q2ZnKTsNCgkJdmFyIGZvcm1hdHRlZERhdGVUaW1lID0gdGhpcy5mb3JtYXR0ZWREYXRlOw0KCQlpZiAoZHBfaW5zdC5sYXN0VmFsICE9PSB1bmRlZmluZWQgJiYgKGRwX2luc3QubGFzdFZhbC5sZW5ndGggPiAwICYmIHRoaXMuJGlucHV0LnZhbCgpLmxlbmd0aCA9PT0gMCkpDQoJCQlyZXR1cm47DQoNCgkJaWYgKHRoaXMuX2RlZmF1bHRzLnRpbWVPbmx5ID09PSB0cnVlKSB7DQoJCQlmb3JtYXR0ZWREYXRlVGltZSA9IHRoaXMuZm9ybWF0dGVkVGltZTsNCgkJfSBlbHNlIGlmICh0aGlzLl9kZWZhdWx0cy50aW1lT25seSAhPT0gdHJ1ZSAmJiAodGhpcy5fZGVmYXVsdHMuYWx3YXlzU2V0VGltZSB8fCB0aW1lQXZhaWxhYmxlKSkgew0KCQkJZm9ybWF0dGVkRGF0ZVRpbWUgKz0gdGhpcy5fZGVmYXVsdHMuc2VwYXJhdG9yICsgdGhpcy5mb3JtYXR0ZWRUaW1lICsgdGhpcy5fZGVmYXVsdHMudGltZVN1ZmZpeDsNCgkJfQ0KDQoJCXRoaXMuZm9ybWF0dGVkRGF0ZVRpbWUgPSBmb3JtYXR0ZWREYXRlVGltZTsNCg0KCQlpZighdGhpcy5fZGVmYXVsdHMuc2hvd1RpbWVwaWNrZXIpIHsNCgkJCXRoaXMuJGlucHV0LnZhbCh0aGlzLmZvcm1hdHRlZERhdGUpOw0KCQl9IGVsc2UgaWYgKHRoaXMuJGFsdElucHV0ICYmIHRoaXMuX2RlZmF1bHRzLmFsdEZpZWxkVGltZU9ubHkgPT09IHRydWUpIHsNCgkJCXRoaXMuJGFsdElucHV0LnZhbCh0aGlzLmZvcm1hdHRlZFRpbWUpOw0KCQkJdGhpcy4kaW5wdXQudmFsKHRoaXMuZm9ybWF0dGVkRGF0ZSk7DQoJCX0gZWxzZSBpZih0aGlzLiRhbHRJbnB1dCkgew0KCQkJdGhpcy4kYWx0SW5wdXQudmFsKGZvcm1hdHRlZERhdGVUaW1lKTsNCgkJCXRoaXMuJGlucHV0LnZhbChmb3JtYXR0ZWREYXRlVGltZSk7DQoJCX0gZWxzZSB7DQoJCQl0aGlzLiRpbnB1dC52YWwoZm9ybWF0dGVkRGF0ZVRpbWUpOw0KCQl9DQoJCQ0KCQl0aGlzLiRpbnB1dC50cmlnZ2VyKCJjaGFuZ2UiKTsNCgl9DQoNCn0pOw0KDQokLmZuLmV4dGVuZCh7DQoJLy8jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMNCgkvLyBzaG9ydGhhbmQganVzdCB0byB1c2UgdGltZXBpY2tlci4uDQoJLy8jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMNCgl0aW1lcGlja2VyOiBmdW5jdGlvbihvKSB7DQoJCW8gPSBvIHx8IHt9Ow0KCQl2YXIgdG1wX2FyZ3MgPSBhcmd1bWVudHM7DQoNCgkJaWYgKHR5cGVvZiBvID09ICdvYmplY3QnKSB0bXBfYXJnc1swXSA9ICQuZXh0ZW5kKG8sIHsgdGltZU9ubHk6IHRydWUgfSk7DQoNCgkJcmV0dXJuICQodGhpcykuZWFjaChmdW5jdGlvbigpIHsNCgkJCSQuZm4uZGF0ZXRpbWVwaWNrZXIuYXBwbHkoJCh0aGlzKSwgdG1wX2FyZ3MpOw0KCQl9KTsNCgl9LA0KDQoJLy8jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMNCgkvLyBleHRlbmQgdGltZXBpY2tlciB0byBkYXRlcGlja2VyDQoJLy8jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMNCglkYXRldGltZXBpY2tlcjogZnVuY3Rpb24obykgew0KCQlvID0gbyB8fCB7fTsNCgkJdmFyICRpbnB1dCA9IHRoaXMsDQoJCXRtcF9hcmdzID0gYXJndW1lbnRzOw0KDQoJCWlmICh0eXBlb2YobykgPT0gJ3N0cmluZycpew0KCQkJaWYobyA9PSAnZ2V0RGF0ZScpIA0KCQkJCXJldHVybiAkLmZuLmRhdGVwaWNrZXIuYXBwbHkoJCh0aGlzWzBdKSwgdG1wX2FyZ3MpOw0KCQkJZWxzZSANCgkJCQlyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCkgew0KCQkJCQl2YXIgJHQgPSAkKHRoaXMpOw0KCQkJCQkkdC5kYXRlcGlja2VyLmFwcGx5KCR0LCB0bXBfYXJncyk7DQoJCQkJfSk7DQoJCX0NCgkJZWxzZQ0KCQkJcmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpIHsNCgkJCQl2YXIgJHQgPSAkKHRoaXMpOw0KCQkJCSR0LmRhdGVwaWNrZXIoJC50aW1lcGlja2VyLl9uZXdJbnN0KCR0LCBvKS5fZGVmYXVsdHMpOw0KCQkJfSk7DQoJfQ0KfSk7DQoNCi8vIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjDQovLyBmb3JtYXQgdGhlIHRpbWUgYWxsIHByZXR0eS4uLiANCi8vIGZvcm1hdCA9IHN0cmluZyBmb3JtYXQgb2YgdGhlIHRpbWUNCi8vIHRpbWUgPSBhIHt9LCBub3QgYSBEYXRlKCkgZm9yIHRpbWV6b25lcw0KLy8gb3B0aW9ucyA9IGVzc2VudGlhbGx5IHRoZSByZWdpb25hbFtdLi4gYW1OYW1lcywgcG1OYW1lcywgYW1wbQ0KLy8jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMNCiQuZGF0ZXBpY2tlci5mb3JtYXRUaW1lID0gZnVuY3Rpb24oZm9ybWF0LCB0aW1lLCBvcHRpb25zKSB7DQoJb3B0aW9ucyA9IG9wdGlvbnMgfHwge307DQoJb3B0aW9ucyA9ICQuZXh0ZW5kKCQudGltZXBpY2tlci5fZGVmYXVsdHMsIG9wdGlvbnMpOw0KCXRpbWUgPSAkLmV4dGVuZCh7aG91cjowLCBtaW51dGU6MCwgc2Vjb25kOjAsIG1pbGxpc2VjOjAsIHRpbWV6b25lOicrMDAwMCd9LCB0aW1lKTsNCgkNCgl2YXIgdG1wdGltZSA9IGZvcm1hdDsNCgl2YXIgYW1wbU5hbWUgPSBvcHRpb25zWydhbU5hbWVzJ11bMF07DQoNCgl2YXIgaG91ciA9IHBhcnNlSW50KHRpbWUuaG91ciwgMTApOw0KCWlmIChvcHRpb25zLmFtcG0pIHsNCgkJaWYgKGhvdXIgPiAxMSl7DQoJCQlhbXBtTmFtZSA9IG9wdGlvbnNbJ3BtTmFtZXMnXVswXTsNCgkJCWlmKGhvdXIgPiAxMikNCgkJCQlob3VyID0gaG91ciAlIDEyOw0KCQl9DQoJCWlmIChob3VyID09PSAwKQ0KCQkJaG91ciA9IDEyOw0KCX0NCgl0bXB0aW1lID0gdG1wdGltZS5yZXBsYWNlKC8oPzpoaD98bW0/fHNzP3xbdFRdezEsMn18W2x6XSkvZywgZnVuY3Rpb24obWF0Y2gpIHsNCgkJc3dpdGNoIChtYXRjaC50b0xvd2VyQ2FzZSgpKSB7DQoJCQljYXNlICdoaCc6IHJldHVybiAoJzAnICsgaG91cikuc2xpY2UoLTIpOw0KCQkJY2FzZSAnaCc6ICByZXR1cm4gaG91cjsNCgkJCWNhc2UgJ21tJzogcmV0dXJuICgnMCcgKyB0aW1lLm1pbnV0ZSkuc2xpY2UoLTIpOw0KCQkJY2FzZSAnbSc6ICByZXR1cm4gdGltZS5taW51dGU7DQoJCQljYXNlICdzcyc6IHJldHVybiAoJzAnICsgdGltZS5zZWNvbmQpLnNsaWNlKC0yKTsNCgkJCWNhc2UgJ3MnOiAgcmV0dXJuIHRpbWUuc2Vjb25kOw0KCQkJY2FzZSAnbCc6ICByZXR1cm4gKCcwMCcgKyB0aW1lLm1pbGxpc2VjKS5zbGljZSgtMyk7DQoJCQljYXNlICd6JzogIHJldHVybiB0aW1lLnRpbWV6b25lOw0KCQkJY2FzZSAndCc6IGNhc2UgJ3R0JzoNCgkJCQlpZiAob3B0aW9ucy5hbXBtKSB7DQoJCQkJCWlmIChtYXRjaC5sZW5ndGggPT0gMSkNCgkJCQkJCWFtcG1OYW1lID0gYW1wbU5hbWUuY2hhckF0KDApOw0KCQkJCQlyZXR1cm4gbWF0Y2guY2hhckF0KDApID09ICdUJyA/IGFtcG1OYW1lLnRvVXBwZXJDYXNlKCkgOiBhbXBtTmFtZS50b0xvd2VyQ2FzZSgpOw0KCQkJCX0NCgkJCQlyZXR1cm4gJyc7DQoJCX0NCgl9KTsNCg0KCXRtcHRpbWUgPSAkLnRyaW0odG1wdGltZSk7DQoJcmV0dXJuIHRtcHRpbWU7DQp9DQoNCi8vIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjDQovLyB0aGUgYmFkIGhhY2sgOi8gb3ZlcnJpZGUgZGF0ZXBpY2tlciBzbyBpdCBkb2VzbnQgY2xvc2Ugb24gc2VsZWN0DQovLyBpbnNwaXJlZDogaHR0cDovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8xMjUyNTEyL2pxdWVyeS1kYXRlcGlja2VyLXByZXZlbnQtY2xvc2luZy1waWNrZXItd2hlbi1jbGlja2luZy1hLWRhdGUvMTc2MjM3OCMxNzYyMzc4DQovLyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIw0KJC5kYXRlcGlja2VyLl9iYXNlX3NlbGVjdERhdGUgPSAkLmRhdGVwaWNrZXIuX3NlbGVjdERhdGU7DQokLmRhdGVwaWNrZXIuX3NlbGVjdERhdGUgPSBmdW5jdGlvbiAoaWQsIGRhdGVTdHIpIHsNCgl2YXIgaW5zdCA9IHRoaXMuX2dldEluc3QoJChpZClbMF0pLA0KCQl0cF9pbnN0ID0gdGhpcy5fZ2V0KGluc3QsICd0aW1lcGlja2VyJyk7DQoNCglpZiAodHBfaW5zdCkgew0KCQl0cF9pbnN0Ll9saW1pdE1pbk1heERhdGVUaW1lKGluc3QsIHRydWUpOw0KCQlpbnN0LmlubGluZSA9IGluc3Quc3RheV9vcGVuID0gdHJ1ZTsNCgkJLy9UaGlzIHdheSB0aGUgb25TZWxlY3QgaGFuZGxlciBjYWxsZWQgZnJvbSBjYWxlbmRhcnBpY2tlciBnZXQgdGhlIGZ1bGwgZGF0ZVRpbWUNCgkJdGhpcy5fYmFzZV9zZWxlY3REYXRlKGlkLCBkYXRlU3RyKTsNCgkJaW5zdC5pbmxpbmUgPSBpbnN0LnN0YXlfb3BlbiA9IGZhbHNlOw0KCQl0aGlzLl9ub3RpZnlDaGFuZ2UoaW5zdCk7DQoJCXRoaXMuX3VwZGF0ZURhdGVwaWNrZXIoaW5zdCk7DQoJfQ0KCWVsc2UgdGhpcy5fYmFzZV9zZWxlY3REYXRlKGlkLCBkYXRlU3RyKTsNCn07DQoNCi8vIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjDQovLyBzZWNvbmQgYmFkIGhhY2sgOi8gb3ZlcnJpZGUgZGF0ZXBpY2tlciBzbyBpdCB0cmlnZ2VycyBhbiBldmVudCB3aGVuIGNoYW5naW5nIHRoZSBpbnB1dCBmaWVsZA0KLy8gYW5kIGRvZXMgbm90IHJlZHJhdyB0aGUgZGF0ZXBpY2tlciBvbiBldmVyeSBzZWxlY3REYXRlIGV2ZW50DQovLyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIw0KJC5kYXRlcGlja2VyLl9iYXNlX3VwZGF0ZURhdGVwaWNrZXIgPSAkLmRhdGVwaWNrZXIuX3VwZGF0ZURhdGVwaWNrZXI7DQokLmRhdGVwaWNrZXIuX3VwZGF0ZURhdGVwaWNrZXIgPSBmdW5jdGlvbihpbnN0KSB7DQoNCgkvLyBkb24ndCBwb3B1cCB0aGUgZGF0ZXBpY2tlciBpZiB0aGVyZSBpcyBhbm90aGVyIGluc3RhbmNlIGFscmVhZHkgb3BlbmVkDQoJdmFyIGlucHV0ID0gaW5zdC5pbnB1dFswXTsNCglpZigkLmRhdGVwaWNrZXIuX2N1ckluc3QgJiYNCgkgICAkLmRhdGVwaWNrZXIuX2N1ckluc3QgIT0gaW5zdCAmJg0KCSAgICQuZGF0ZXBpY2tlci5fZGF0ZXBpY2tlclNob3dpbmcgJiYNCgkgICAkLmRhdGVwaWNrZXIuX2xhc3RJbnB1dCAhPSBpbnB1dCkgew0KCQlyZXR1cm47DQoJfQ0KDQoJaWYgKHR5cGVvZihpbnN0LnN0YXlfb3BlbikgIT09ICdib29sZWFuJyB8fCBpbnN0LnN0YXlfb3BlbiA9PT0gZmFsc2UpIHsNCgkJCQkNCgkJdGhpcy5fYmFzZV91cGRhdGVEYXRlcGlja2VyKGluc3QpOw0KCQkNCgkJLy8gUmVsb2FkIHRoZSB0aW1lIGNvbnRyb2wgd2hlbiBjaGFuZ2luZyBzb21ldGhpbmcgaW4gdGhlIGlucHV0IHRleHQgZmllbGQuDQoJCXZhciB0cF9pbnN0ID0gdGhpcy5fZ2V0KGluc3QsICd0aW1lcGlja2VyJyk7DQoJCWlmKHRwX2luc3QpIHRwX2luc3QuX2FkZFRpbWVQaWNrZXIoaW5zdCk7DQoJfQ0KfTsNCg0KLy8jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMNCi8vIHRoaXJkIGJhZCBoYWNrIDovIG92ZXJyaWRlIGRhdGVwaWNrZXIgc28gaXQgYWxsb3dzIHNwYWNlcyBhbmQgY29sb24gaW4gdGhlIGlucHV0IGZpZWxkDQovLyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIw0KJC5kYXRlcGlja2VyLl9iYXNlX2RvS2V5UHJlc3MgPSAkLmRhdGVwaWNrZXIuX2RvS2V5UHJlc3M7DQokLmRhdGVwaWNrZXIuX2RvS2V5UHJlc3MgPSBmdW5jdGlvbihldmVudCkgew0KCXZhciBpbnN0ID0gJC5kYXRlcGlja2VyLl9nZXRJbnN0KGV2ZW50LnRhcmdldCksDQoJCXRwX2luc3QgPSAkLmRhdGVwaWNrZXIuX2dldChpbnN0LCAndGltZXBpY2tlcicpOw0KDQoJaWYgKHRwX2luc3QpIHsNCgkJaWYgKCQuZGF0ZXBpY2tlci5fZ2V0KGluc3QsICdjb25zdHJhaW5JbnB1dCcpKSB7DQoJCQl2YXIgYW1wbSA9IHRwX2luc3QuX2RlZmF1bHRzLmFtcG0sDQoJCQkJZGF0ZUNoYXJzID0gJC5kYXRlcGlja2VyLl9wb3NzaWJsZUNoYXJzKCQuZGF0ZXBpY2tlci5fZ2V0KGluc3QsICdkYXRlRm9ybWF0JykpLA0KCQkJCWRhdGV0aW1lQ2hhcnMgPSB0cF9pbnN0Ll9kZWZhdWx0cy50aW1lRm9ybWF0LnRvU3RyaW5nKCkNCgkJCQkJCQkJLnJlcGxhY2UoL1tobXNdL2csICcnKQ0KCQkJCQkJCQkucmVwbGFjZSgvVFQvZywgYW1wbSA/ICdBUE0nIDogJycpDQoJCQkJCQkJCS5yZXBsYWNlKC9UdC9nLCBhbXBtID8gJ0FhUHBNbScgOiAnJykNCgkJCQkJCQkJLnJlcGxhY2UoL3RUL2csIGFtcG0gPyAnQWFQcE1tJyA6ICcnKQ0KCQkJCQkJCQkucmVwbGFjZSgvVC9nLCBhbXBtID8gJ0FQJyA6ICcnKQ0KCQkJCQkJCQkucmVwbGFjZSgvdHQvZywgYW1wbSA/ICdhcG0nIDogJycpDQoJCQkJCQkJCS5yZXBsYWNlKC90L2csIGFtcG0gPyAnYXAnIDogJycpICsNCgkJCQkJCQkJIiAiICsNCgkJCQkJCQkJdHBfaW5zdC5fZGVmYXVsdHMuc2VwYXJhdG9yICsNCgkJCQkJCQkJdHBfaW5zdC5fZGVmYXVsdHMudGltZVN1ZmZpeCArDQoJCQkJCQkJCSh0cF9pbnN0Ll9kZWZhdWx0cy5zaG93VGltZXpvbmUgPyB0cF9pbnN0Ll9kZWZhdWx0cy50aW1lem9uZUxpc3Quam9pbignJykgOiAnJykgKw0KCQkJCQkJCQkodHBfaW5zdC5fZGVmYXVsdHMuYW1OYW1lcy5qb2luKCcnKSkgKw0KCQkJCQkJCQkodHBfaW5zdC5fZGVmYXVsdHMucG1OYW1lcy5qb2luKCcnKSkgKw0KCQkJCQkJCQlkYXRlQ2hhcnMsDQoJCQkJY2hyID0gU3RyaW5nLmZyb21DaGFyQ29kZShldmVudC5jaGFyQ29kZSA9PT0gdW5kZWZpbmVkID8gZXZlbnQua2V5Q29kZSA6IGV2ZW50LmNoYXJDb2RlKTsNCgkJCXJldHVybiBldmVudC5jdHJsS2V5IHx8IChjaHIgPCAnICcgfHwgIWRhdGVDaGFycyB8fCBkYXRldGltZUNoYXJzLmluZGV4T2YoY2hyKSA+IC0xKTsNCgkJfQ0KCX0NCgkNCglyZXR1cm4gJC5kYXRlcGlja2VyLl9iYXNlX2RvS2V5UHJlc3MoZXZlbnQpOw0KfTsNCg0KLy8jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMNCi8vIE92ZXJyaWRlIGtleSB1cCBldmVudCB0byBzeW5jIG1hbnVhbCBpbnB1dCBjaGFuZ2VzLg0KLy8jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMNCiQuZGF0ZXBpY2tlci5fYmFzZV9kb0tleVVwID0gJC5kYXRlcGlja2VyLl9kb0tleVVwOw0KJC5kYXRlcGlja2VyLl9kb0tleVVwID0gZnVuY3Rpb24gKGV2ZW50KSB7DQoJdmFyIGluc3QgPSAkLmRhdGVwaWNrZXIuX2dldEluc3QoZXZlbnQudGFyZ2V0KSwNCgkJdHBfaW5zdCA9ICQuZGF0ZXBpY2tlci5fZ2V0KGluc3QsICd0aW1lcGlja2VyJyk7DQoNCglpZiAodHBfaW5zdCkgew0KCQlpZiAodHBfaW5zdC5fZGVmYXVsdHMudGltZU9ubHkgJiYgKGluc3QuaW5wdXQudmFsKCkgIT0gaW5zdC5sYXN0VmFsKSkgew0KCQkJdHJ5IHsNCgkJCQkkLmRhdGVwaWNrZXIuX3VwZGF0ZURhdGVwaWNrZXIoaW5zdCk7DQoJCQl9DQoJCQljYXRjaCAoZXJyKSB7DQoJCQkJJC5kYXRlcGlja2VyLmxvZyhlcnIpOw0KCQkJfQ0KCQl9DQoJfQ0KDQoJcmV0dXJuICQuZGF0ZXBpY2tlci5fYmFzZV9kb0tleVVwKGV2ZW50KTsNCn07DQoNCi8vIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjDQovLyBvdmVycmlkZSAiVG9kYXkiIGJ1dHRvbiB0byBhbHNvIGdyYWIgdGhlIHRpbWUuDQovLyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIw0KJC5kYXRlcGlja2VyLl9iYXNlX2dvdG9Ub2RheSA9ICQuZGF0ZXBpY2tlci5fZ290b1RvZGF5Ow0KJC5kYXRlcGlja2VyLl9nb3RvVG9kYXkgPSBmdW5jdGlvbihpZCkgew0KCXZhciBpbnN0ID0gdGhpcy5fZ2V0SW5zdCgkKGlkKVswXSksDQoJCSRkcCA9IGluc3QuZHBEaXY7DQoJdGhpcy5fYmFzZV9nb3RvVG9kYXkoaWQpOw0KCXZhciBub3cgPSBuZXcgRGF0ZSgpOw0KCXZhciB0cF9pbnN0ID0gdGhpcy5fZ2V0KGluc3QsICd0aW1lcGlja2VyJyk7DQoJaWYgKHRwX2luc3QgJiYgdHBfaW5zdC5fZGVmYXVsdHMuc2hvd1RpbWV6b25lICYmIHRwX2luc3QudGltZXpvbmVfc2VsZWN0KSB7DQoJCXZhciB0em9mZnNldCA9IG5vdy5nZXRUaW1lem9uZU9mZnNldCgpOyAvLyBJZiArMDEwMCwgcmV0dXJucyAtNjANCgkJdmFyIHR6c2lnbiA9IHR6b2Zmc2V0ID4gMCA/ICctJyA6ICcrJzsNCgkJdHpvZmZzZXQgPSBNYXRoLmFicyh0em9mZnNldCk7DQoJCXZhciB0em1pbiA9IHR6b2Zmc2V0ICUgNjA7DQoJCXR6b2Zmc2V0ID0gdHpzaWduICsgKCcwJyArICh0em9mZnNldCAtIHR6bWluKSAvIDYwKS5zbGljZSgtMikgKyAoJzAnICsgdHptaW4pLnNsaWNlKC0yKTsNCgkJaWYgKHRwX2luc3QuX2RlZmF1bHRzLnRpbWV6b25lSXNvODYwOSkNCgkJCXR6b2Zmc2V0ID0gdHpvZmZzZXQuc3Vic3RyaW5nKDAsIDMpICsgJzonICsgdHpvZmZzZXQuc3Vic3RyaW5nKDMpOw0KCQl0cF9pbnN0LnRpbWV6b25lX3NlbGVjdC52YWwodHpvZmZzZXQpOw0KCX0NCgl0aGlzLl9zZXRUaW1lKGluc3QsIG5vdyk7DQoJJCggJy51aS1kYXRlcGlja2VyLXRvZGF5JywgJGRwKS5jbGljaygpOyANCn07DQoNCi8vIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjDQovLyBEaXNhYmxlICYgZW5hYmxlIHRoZSBUaW1lIGluIHRoZSBkYXRldGltZXBpY2tlcg0KLy8jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMNCiQuZGF0ZXBpY2tlci5fZGlzYWJsZVRpbWVwaWNrZXJEYXRlcGlja2VyID0gZnVuY3Rpb24odGFyZ2V0LCBkYXRlLCB3aXRoRGF0ZSkgew0KCXZhciBpbnN0ID0gdGhpcy5fZ2V0SW5zdCh0YXJnZXQpLA0KCXRwX2luc3QgPSB0aGlzLl9nZXQoaW5zdCwgJ3RpbWVwaWNrZXInKTsNCgkkKHRhcmdldCkuZGF0ZXBpY2tlcignZ2V0RGF0ZScpOyAvLyBJbml0IHNlbGVjdGVkW1llYXJ8TW9udGh8RGF5XQ0KCWlmICh0cF9pbnN0KSB7DQoJCXRwX2luc3QuX2RlZmF1bHRzLnNob3dUaW1lcGlja2VyID0gZmFsc2U7DQoJCXRwX2luc3QuX3VwZGF0ZURhdGVUaW1lKGluc3QpOw0KCX0NCn07DQoNCiQuZGF0ZXBpY2tlci5fZW5hYmxlVGltZXBpY2tlckRhdGVwaWNrZXIgPSBmdW5jdGlvbih0YXJnZXQsIGRhdGUsIHdpdGhEYXRlKSB7DQoJdmFyIGluc3QgPSB0aGlzLl9nZXRJbnN0KHRhcmdldCksDQoJdHBfaW5zdCA9IHRoaXMuX2dldChpbnN0LCAndGltZXBpY2tlcicpOw0KCSQodGFyZ2V0KS5kYXRlcGlja2VyKCdnZXREYXRlJyk7IC8vIEluaXQgc2VsZWN0ZWRbWWVhcnxNb250aHxEYXldDQoJaWYgKHRwX2luc3QpIHsNCgkJdHBfaW5zdC5fZGVmYXVsdHMuc2hvd1RpbWVwaWNrZXIgPSB0cnVlOw0KCQl0cF9pbnN0Ll9hZGRUaW1lUGlja2VyKGluc3QpOyAvLyBDb3VsZCBiZSBkaXNhYmxlZCBvbiBwYWdlIGxvYWQNCgkJdHBfaW5zdC5fdXBkYXRlRGF0ZVRpbWUoaW5zdCk7DQoJfQ0KfTsNCg0KLy8jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMNCi8vIENyZWF0ZSBvdXIgb3duIHNldCB0aW1lIGZ1bmN0aW9uDQovLyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIw0KJC5kYXRlcGlja2VyLl9zZXRUaW1lID0gZnVuY3Rpb24oaW5zdCwgZGF0ZSkgew0KCXZhciB0cF9pbnN0ID0gdGhpcy5fZ2V0KGluc3QsICd0aW1lcGlja2VyJyk7DQoJaWYgKHRwX2luc3QpIHsNCgkJdmFyIGRlZmF1bHRzID0gdHBfaW5zdC5fZGVmYXVsdHMsDQoJCQkvLyBjYWxsaW5nIF9zZXRUaW1lIHdpdGggbm8gZGF0ZSBzZXRzIHRpbWUgdG8gZGVmYXVsdHMNCgkJCWhvdXIgPSBkYXRlID8gZGF0ZS5nZXRIb3VycygpIDogZGVmYXVsdHMuaG91ciwNCgkJCW1pbnV0ZSA9IGRhdGUgPyBkYXRlLmdldE1pbnV0ZXMoKSA6IGRlZmF1bHRzLm1pbnV0ZSwNCgkJCXNlY29uZCA9IGRhdGUgPyBkYXRlLmdldFNlY29uZHMoKSA6IGRlZmF1bHRzLnNlY29uZCwNCgkJCW1pbGxpc2VjID0gZGF0ZSA/IGRhdGUuZ2V0TWlsbGlzZWNvbmRzKCkgOiBkZWZhdWx0cy5taWxsaXNlYzsNCg0KCQkvL2NoZWNrIGlmIHdpdGhpbiBtaW4vbWF4IHRpbWVzLi4NCgkJaWYgKChob3VyIDwgZGVmYXVsdHMuaG91ck1pbiB8fCBob3VyID4gZGVmYXVsdHMuaG91ck1heCkgfHwgKG1pbnV0ZSA8IGRlZmF1bHRzLm1pbnV0ZU1pbiB8fCBtaW51dGUgPiBkZWZhdWx0cy5taW51dGVNYXgpIHx8IChzZWNvbmQgPCBkZWZhdWx0cy5zZWNvbmRNaW4gfHwgc2Vjb25kID4gZGVmYXVsdHMuc2Vjb25kTWF4KSB8fCAobWlsbGlzZWMgPCBkZWZhdWx0cy5taWxsaXNlY01pbiB8fCBtaWxsaXNlYyA+IGRlZmF1bHRzLm1pbGxpc2VjTWF4KSkgew0KCQkJaG91ciA9IGRlZmF1bHRzLmhvdXJNaW47DQoJCQltaW51dGUgPSBkZWZhdWx0cy5taW51dGVNaW47DQoJCQlzZWNvbmQgPSBkZWZhdWx0cy5zZWNvbmRNaW47DQoJCQltaWxsaXNlYyA9IGRlZmF1bHRzLm1pbGxpc2VjTWluOw0KCQl9DQoNCgkJdHBfaW5zdC5ob3VyID0gaG91cjsNCgkJdHBfaW5zdC5taW51dGUgPSBtaW51dGU7DQoJCXRwX2luc3Quc2Vjb25kID0gc2Vjb25kOw0KCQl0cF9pbnN0Lm1pbGxpc2VjID0gbWlsbGlzZWM7DQoNCgkJaWYgKHRwX2luc3QuaG91cl9zbGlkZXIpIHRwX2luc3QuaG91cl9zbGlkZXIuc2xpZGVyKCd2YWx1ZScsIGhvdXIpOw0KCQlpZiAodHBfaW5zdC5taW51dGVfc2xpZGVyKSB0cF9pbnN0Lm1pbnV0ZV9zbGlkZXIuc2xpZGVyKCd2YWx1ZScsIG1pbnV0ZSk7DQoJCWlmICh0cF9pbnN0LnNlY29uZF9zbGlkZXIpIHRwX2luc3Quc2Vjb25kX3NsaWRlci5zbGlkZXIoJ3ZhbHVlJywgc2Vjb25kKTsNCgkJaWYgKHRwX2luc3QubWlsbGlzZWNfc2xpZGVyKSB0cF9pbnN0Lm1pbGxpc2VjX3NsaWRlci5zbGlkZXIoJ3ZhbHVlJywgbWlsbGlzZWMpOw0KDQoJCXRwX2luc3QuX29uVGltZUNoYW5nZSgpOw0KCQl0cF9pbnN0Ll91cGRhdGVEYXRlVGltZShpbnN0KTsNCgl9DQp9Ow0KDQovLyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIw0KLy8gQ3JlYXRlIG5ldyBwdWJsaWMgbWV0aG9kIHRvIHNldCBvbmx5IHRpbWUsIGNhbGxhYmxlIGFzICQoKS5kYXRlcGlja2VyKCdzZXRUaW1lJywgZGF0ZSkNCi8vIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjDQokLmRhdGVwaWNrZXIuX3NldFRpbWVEYXRlcGlja2VyID0gZnVuY3Rpb24odGFyZ2V0LCBkYXRlLCB3aXRoRGF0ZSkgew0KCXZhciBpbnN0ID0gdGhpcy5fZ2V0SW5zdCh0YXJnZXQpLA0KCQl0cF9pbnN0ID0gdGhpcy5fZ2V0KGluc3QsICd0aW1lcGlja2VyJyk7DQoNCglpZiAodHBfaW5zdCkgew0KCQl0aGlzLl9zZXREYXRlRnJvbUZpZWxkKGluc3QpOw0KCQl2YXIgdHBfZGF0ZTsNCgkJaWYgKGRhdGUpIHsNCgkJCWlmICh0eXBlb2YgZGF0ZSA9PSAic3RyaW5nIikgew0KCQkJCXRwX2luc3QuX3BhcnNlVGltZShkYXRlLCB3aXRoRGF0ZSk7DQoJCQkJdHBfZGF0ZSA9IG5ldyBEYXRlKCk7DQoJCQkJdHBfZGF0ZS5zZXRIb3Vycyh0cF9pbnN0LmhvdXIsIHRwX2luc3QubWludXRlLCB0cF9pbnN0LnNlY29uZCwgdHBfaW5zdC5taWxsaXNlYyk7DQoJCQl9DQoJCQllbHNlIHRwX2RhdGUgPSBuZXcgRGF0ZShkYXRlLmdldFRpbWUoKSk7DQoJCQlpZiAodHBfZGF0ZS50b1N0cmluZygpID09ICdJbnZhbGlkIERhdGUnKSB0cF9kYXRlID0gdW5kZWZpbmVkOw0KCQkJdGhpcy5fc2V0VGltZShpbnN0LCB0cF9kYXRlKTsNCgkJfQ0KCX0NCg0KfTsNCg0KLy8jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMNCi8vIG92ZXJyaWRlIHNldERhdGUoKSB0byBhbGxvdyBzZXR0aW5nIHRpbWUgdG9vIHdpdGhpbiBEYXRlIG9iamVjdA0KLy8jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMNCiQuZGF0ZXBpY2tlci5fYmFzZV9zZXREYXRlRGF0ZXBpY2tlciA9ICQuZGF0ZXBpY2tlci5fc2V0RGF0ZURhdGVwaWNrZXI7DQokLmRhdGVwaWNrZXIuX3NldERhdGVEYXRlcGlja2VyID0gZnVuY3Rpb24odGFyZ2V0LCBkYXRlKSB7DQoJdmFyIGluc3QgPSB0aGlzLl9nZXRJbnN0KHRhcmdldCksDQoJdHBfZGF0ZSA9IChkYXRlIGluc3RhbmNlb2YgRGF0ZSkgPyBuZXcgRGF0ZShkYXRlLmdldFRpbWUoKSkgOiBkYXRlOw0KDQoJdGhpcy5fdXBkYXRlRGF0ZXBpY2tlcihpbnN0KTsNCgl0aGlzLl9iYXNlX3NldERhdGVEYXRlcGlja2VyLmFwcGx5KHRoaXMsIGFyZ3VtZW50cyk7DQoJdGhpcy5fc2V0VGltZURhdGVwaWNrZXIodGFyZ2V0LCB0cF9kYXRlLCB0cnVlKTsNCn07DQoNCi8vIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjDQovLyBvdmVycmlkZSBnZXREYXRlKCkgdG8gYWxsb3cgZ2V0dGluZyB0aW1lIHRvbyB3aXRoaW4gRGF0ZSBvYmplY3QNCi8vIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjDQokLmRhdGVwaWNrZXIuX2Jhc2VfZ2V0RGF0ZURhdGVwaWNrZXIgPSAkLmRhdGVwaWNrZXIuX2dldERhdGVEYXRlcGlja2VyOw0KJC5kYXRlcGlja2VyLl9nZXREYXRlRGF0ZXBpY2tlciA9IGZ1bmN0aW9uKHRhcmdldCwgbm9EZWZhdWx0KSB7DQoJdmFyIGluc3QgPSB0aGlzLl9nZXRJbnN0KHRhcmdldCksDQoJCXRwX2luc3QgPSB0aGlzLl9nZXQoaW5zdCwgJ3RpbWVwaWNrZXInKTsNCg0KCWlmICh0cF9pbnN0KSB7DQoJCXRoaXMuX3NldERhdGVGcm9tRmllbGQoaW5zdCwgbm9EZWZhdWx0KTsNCgkJdmFyIGRhdGUgPSB0aGlzLl9nZXREYXRlKGluc3QpOw0KCQlpZiAoZGF0ZSAmJiB0cF9pbnN0Ll9wYXJzZVRpbWUoJCh0YXJnZXQpLnZhbCgpLCB0cF9pbnN0LnRpbWVPbmx5KSkgZGF0ZS5zZXRIb3Vycyh0cF9pbnN0LmhvdXIsIHRwX2luc3QubWludXRlLCB0cF9pbnN0LnNlY29uZCwgdHBfaW5zdC5taWxsaXNlYyk7DQoJCXJldHVybiBkYXRlOw0KCX0NCglyZXR1cm4gdGhpcy5fYmFzZV9nZXREYXRlRGF0ZXBpY2tlcih0YXJnZXQsIG5vRGVmYXVsdCk7DQp9Ow0KDQovLyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIw0KLy8gb3ZlcnJpZGUgcGFyc2VEYXRlKCkgYmVjYXVzZSBVSSAxLjguMTQgdGhyb3dzIGFuIGVycm9yIGFib3V0ICJFeHRyYSBjaGFyYWN0ZXJzIg0KLy8gQW4gb3B0aW9uIGluIGRhdGFwaWNrZXIgdG8gaWdub3JlIGV4dHJhIGZvcm1hdCBjaGFyYWN0ZXJzIHdvdWxkIGJlIG5pY2VyLg0KLy8jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMNCiQuZGF0ZXBpY2tlci5fYmFzZV9wYXJzZURhdGUgPSAkLmRhdGVwaWNrZXIucGFyc2VEYXRlOw0KJC5kYXRlcGlja2VyLnBhcnNlRGF0ZSA9IGZ1bmN0aW9uKGZvcm1hdCwgdmFsdWUsIHNldHRpbmdzKSB7DQoJdmFyIGRhdGU7DQoJdHJ5IHsNCgkJZGF0ZSA9IHRoaXMuX2Jhc2VfcGFyc2VEYXRlKGZvcm1hdCwgdmFsdWUsIHNldHRpbmdzKTsNCgl9IGNhdGNoIChlcnIpIHsNCgkJaWYgKGVyci5pbmRleE9mKCI6IikgPj0gMCkgew0KCQkJLy8gSGFjayEgIFRoZSBlcnJvciBtZXNzYWdlIGVuZHMgd2l0aCBhIGNvbG9uLCBhIHNwYWNlLCBhbmQNCgkJCS8vIHRoZSAiZXh0cmEiIGNoYXJhY3RlcnMuICBXZSByZWx5IG9uIHRoYXQgaW5zdGVhZCBvZg0KCQkJLy8gYXR0ZW1wdGluZyB0byBwZXJmZWN0bHkgcmVwcm9kdWNlIHRoZSBwYXJzaW5nIGFsZ29yaXRobS4NCgkJCWRhdGUgPSB0aGlzLl9iYXNlX3BhcnNlRGF0ZShmb3JtYXQsIHZhbHVlLnN1YnN0cmluZygwLHZhbHVlLmxlbmd0aC0oZXJyLmxlbmd0aC1lcnIuaW5kZXhPZignOicpLTIpKSwgc2V0dGluZ3MpOw0KCQl9IGVsc2Ugew0KCQkJLy8gVGhlIHVuZGVybHlpbmcgZXJyb3Igd2FzIG5vdCByZWxhdGVkIHRvIHRoZSB0aW1lDQoJCQl0aHJvdyBlcnI7DQoJCX0NCgl9DQoJcmV0dXJuIGRhdGU7DQp9Ow0KDQovLyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIw0KLy8gb3ZlcnJpZGUgZm9ybWF0RGF0ZSB0byBzZXQgZGF0ZSB3aXRoIHRpbWUgdG8gdGhlIGlucHV0DQovLyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIw0KJC5kYXRlcGlja2VyLl9iYXNlX2Zvcm1hdERhdGU9JC5kYXRlcGlja2VyLl9mb3JtYXREYXRlOw0KJC5kYXRlcGlja2VyLl9mb3JtYXREYXRlID0gZnVuY3Rpb24oaW5zdCwgZGF5LCBtb250aCwgeWVhcil7DQoJdmFyIHRwX2luc3QgPSB0aGlzLl9nZXQoaW5zdCwgJ3RpbWVwaWNrZXInKTsNCglpZih0cF9pbnN0KQ0KCXsNCgkJaWYoZGF5KQ0KCQkJdmFyIGIgPSB0aGlzLl9iYXNlX2Zvcm1hdERhdGUoaW5zdCwgZGF5LCBtb250aCwgeWVhcik7DQoJCXRwX2luc3QuX3VwZGF0ZURhdGVUaW1lKGluc3QpOwkNCgkJcmV0dXJuIHRwX2luc3QuJGlucHV0LnZhbCgpOw0KCX0NCglyZXR1cm4gdGhpcy5fYmFzZV9mb3JtYXREYXRlKGluc3QpOw0KfTsNCg0KLy8jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMNCi8vIG92ZXJyaWRlIG9wdGlvbnMgc2V0dGVyIHRvIGFkZCB0aW1lIHRvIG1heERhdGUoVGltZSkgYW5kIG1pbkRhdGUoVGltZSkuIE1heERhdGUNCi8vIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjDQokLmRhdGVwaWNrZXIuX2Jhc2Vfb3B0aW9uRGF0ZXBpY2tlciA9ICQuZGF0ZXBpY2tlci5fb3B0aW9uRGF0ZXBpY2tlcjsNCiQuZGF0ZXBpY2tlci5fb3B0aW9uRGF0ZXBpY2tlciA9IGZ1bmN0aW9uKHRhcmdldCwgbmFtZSwgdmFsdWUpIHsNCgl2YXIgaW5zdCA9IHRoaXMuX2dldEluc3QodGFyZ2V0KSwNCgkJdHBfaW5zdCA9IHRoaXMuX2dldChpbnN0LCAndGltZXBpY2tlcicpOw0KCWlmICh0cF9pbnN0KSB7DQoJCXZhciBtaW4sbWF4LG9uc2VsZWN0Ow0KCQlpZiAodHlwZW9mIG5hbWUgPT0gJ3N0cmluZycpIHsgLy8gaWYgbWluL21heCB3YXMgc2V0IHdpdGggdGhlIHN0cmluZw0KCQkJaWYgKG5hbWU9PT0nbWluRGF0ZScgfHwgbmFtZT09PSdtaW5EYXRlVGltZScgKQ0KCQkJCW1pbiA9IHZhbHVlOw0KCQkJZWxzZSBpZiAobmFtZT09PSdtYXhEYXRlJyB8fCBuYW1lPT09J21heERhdGVUaW1lJykNCgkJCQltYXggPSB2YWx1ZTsNCgkJCWVsc2UgaWYgKG5hbWU9PT0nb25TZWxlY3QnKQ0KCQkJCW9uc2VsZWN0PXZhbHVlOw0KCQl9IGVsc2UgaWYgKHR5cGVvZiBuYW1lID09ICdvYmplY3QnKSB7IC8vaWYgbWluL21heCB3YXMgc2V0IHdpdGggdGhlIEpTT04NCgkJCWlmKG5hbWUubWluRGF0ZSkNCgkJCQltaW4gPSBuYW1lLm1pbkRhdGU7DQoJCQllbHNlIGlmIChuYW1lLm1pbkRhdGVUaW1lKQ0KCQkJCW1pbiA9IG5hbWUubWluRGF0ZVRpbWU7DQoJCQllbHNlIGlmIChuYW1lLm1heERhdGUpDQoJCQkJbWF4ID0gbmFtZS5tYXhEYXRlOw0KCQkJZWxzZSBpZiAobmFtZS5tYXhEYXRlVGltZSkNCgkJCQltYXggPSBuYW1lLm1heERhdGVUaW1lOw0KCQl9DQoJCWlmKG1pbil7IC8vaWYgbWluIHdhcyBzZXQNCgkJCWlmKG1pbj09MCkNCgkJCQltaW49bmV3IERhdGUoKTsNCgkJCWVsc2UNCgkJCQltaW49IG5ldyBEYXRlKG1pbik7DQoJCQkNCgkJCXRwX2luc3QuX2RlZmF1bHRzLm1pbkRhdGUgPSBtaW47DQoJCQl0cF9pbnN0Ll9kZWZhdWx0cy5taW5EYXRlVGltZSA9IG1pbjsNCgkJfSBlbHNlIGlmIChtYXgpeyAvL2lmIG1heCB3YXMgc2V0DQoJCQlpZihtYXg9PTApDQoJCQkJbWF4PW5ldyBEYXRlKCk7DQoJCQllbHNlDQoJCQkJbWF4PSBuZXcgRGF0ZShtYXgpOw0KCQkJdHBfaW5zdC5fZGVmYXVsdHMubWF4RGF0ZSA9IG1heDsNCgkJCXRwX2luc3QuX2RlZmF1bHRzLm1heERhdGVUaW1lID0gbWF4Ow0KCQl9DQoJCWVsc2UgaWYgKG9uc2VsZWN0KQ0KCQkJdHBfaW5zdC5fZGVmYXVsdHMub25TZWxlY3Q9b25zZWxlY3Q7DQoJfQ0KCWlmICh2YWx1ZSA9PT0gdW5kZWZpbmVkKQ0KCQlyZXR1cm4gdGhpcy5fYmFzZV9vcHRpb25EYXRlcGlja2VyKHRhcmdldCwgbmFtZSk7DQoJcmV0dXJuIHRoaXMuX2Jhc2Vfb3B0aW9uRGF0ZXBpY2tlcih0YXJnZXQsIG5hbWUsIHZhbHVlKTsNCn07DQoNCi8vIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjDQovLyBqUXVlcnkgZXh0ZW5kIG5vdyBpZ25vcmVzIG51bGxzIQ0KLy8jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMNCmZ1bmN0aW9uIGV4dGVuZFJlbW92ZSh0YXJnZXQsIHByb3BzKSB7DQoJJC5leHRlbmQodGFyZ2V0LCBwcm9wcyk7DQoJZm9yICh2YXIgbmFtZSBpbiBwcm9wcykNCgkJaWYgKHByb3BzW25hbWVdID09PSBudWxsIHx8IHByb3BzW25hbWVdID09PSB1bmRlZmluZWQpDQoJCQl0YXJnZXRbbmFtZV0gPSBwcm9wc1tuYW1lXTsNCglyZXR1cm4gdGFyZ2V0Ow0KfTsNCg0KJC50aW1lcGlja2VyID0gbmV3IFRpbWVwaWNrZXIoKTsgLy8gc2luZ2xldG9uIGluc3RhbmNlDQokLnRpbWVwaWNrZXIudmVyc2lvbiA9ICIwLjkuOSI7DQoNCn0pKGpRdWVyeSk7DQoNCg==]]></data>
	</file>
	<file>
	  <filename>/lib/jquery/jquery-ui.smoothness.css</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[LyoKICogalF1ZXJ5IFVJIENTUyBGcmFtZXdvcmsgMS44LjEyCiAqCiAqIENvcHlyaWdodCAyMDExLCBBVVRIT1JTLnR4dCAoaHR0cDovL2pxdWVyeXVpLmNvbS9hYm91dCkKICogRHVhbCBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIG9yIEdQTCBWZXJzaW9uIDIgbGljZW5zZXMuCiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2UKICoKICogaHR0cDovL2RvY3MuanF1ZXJ5LmNvbS9VSS9UaGVtaW5nL0FQSQogKi8KCi8qIExheW91dCBoZWxwZXJzCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwoudWktaGVscGVyLWhpZGRlbiB7IGRpc3BsYXk6IG5vbmU7IH0KLnVpLWhlbHBlci1oaWRkZW4tYWNjZXNzaWJsZSB7IHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50OyBjbGlwOiByZWN0KDFweCAxcHggMXB4IDFweCk7IGNsaXA6IHJlY3QoMXB4LDFweCwxcHgsMXB4KTsgfQoudWktaGVscGVyLXJlc2V0IHsgbWFyZ2luOiAwOyBwYWRkaW5nOiAwOyBib3JkZXI6IDA7IG91dGxpbmU6IDA7IGxpbmUtaGVpZ2h0OiAxLjM7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgZm9udC1zaXplOiAxMDAlOyBsaXN0LXN0eWxlOiBub25lOyB9Ci51aS1oZWxwZXItY2xlYXJmaXg6YWZ0ZXIgeyBjb250ZW50OiAiLiI7IGRpc3BsYXk6IGJsb2NrOyBoZWlnaHQ6IDA7IGNsZWFyOiBib3RoOyB2aXNpYmlsaXR5OiBoaWRkZW47IH0KLnVpLWhlbHBlci1jbGVhcmZpeCB7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgfQovKiByZXF1aXJlZCBjb21tZW50IGZvciBjbGVhcmZpeCB0byB3b3JrIGluIE9wZXJhIFwqLwoqIGh0bWwgLnVpLWhlbHBlci1jbGVhcmZpeCB7IGhlaWdodDoxJTsgfQoudWktaGVscGVyLWNsZWFyZml4IHsgZGlzcGxheTpibG9jazsgfQovKiBlbmQgY2xlYXJmaXggKi8KLnVpLWhlbHBlci16Zml4IHsgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTsgdG9wOiAwOyBsZWZ0OiAwOyBwb3NpdGlvbjogYWJzb2x1dGU7IG9wYWNpdHk6IDA7IGZpbHRlcjpBbHBoYShPcGFjaXR5PTApOyB9CgoKLyogSW50ZXJhY3Rpb24gQ3VlcwotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KLnVpLXN0YXRlLWRpc2FibGVkIHsgY3Vyc29yOiBkZWZhdWx0ICFpbXBvcnRhbnQ7IH0KCgovKiBJY29ucwotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KCi8qIHN0YXRlcyBhbmQgaW1hZ2VzICovCi51aS1pY29uIHsgZGlzcGxheTogYmxvY2s7IHRleHQtaW5kZW50OiAtOTk5OTlweDsgb3ZlcmZsb3c6IGhpZGRlbjsgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgfQoKCi8qIE1pc2MgdmlzdWFscwotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KCi8qIE92ZXJsYXlzICovCi51aS13aWRnZXQtb3ZlcmxheSB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAwOyBsZWZ0OiAwOyB3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlOyB9CgoKLyoKICogalF1ZXJ5IFVJIENTUyBGcmFtZXdvcmsgMS44LjEyCiAqCiAqIENvcHlyaWdodCAyMDExLCBBVVRIT1JTLnR4dCAoaHR0cDovL2pxdWVyeXVpLmNvbS9hYm91dCkKICogRHVhbCBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIG9yIEdQTCBWZXJzaW9uIDIgbGljZW5zZXMuCiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2UKICoKICogaHR0cDovL2RvY3MuanF1ZXJ5LmNvbS9VSS9UaGVtaW5nL0FQSQogKgogKiBUbyB2aWV3IGFuZCBtb2RpZnkgdGhpcyB0aGVtZSwgdmlzaXQgaHR0cDovL2pxdWVyeXVpLmNvbS90aGVtZXJvbGxlci8/ZmZEZWZhdWx0PVZlcmRhbmEsQXJpYWwsc2Fucy1zZXJpZiZmd0RlZmF1bHQ9bm9ybWFsJmZzRGVmYXVsdD0xLjFlbSZjb3JuZXJSYWRpdXM9NHB4JmJnQ29sb3JIZWFkZXI9Y2NjY2NjJmJnVGV4dHVyZUhlYWRlcj0wM19oaWdobGlnaHRfc29mdC5wbmcmYmdJbWdPcGFjaXR5SGVhZGVyPTc1JmJvcmRlckNvbG9ySGVhZGVyPWFhYWFhYSZmY0hlYWRlcj0yMjIyMjImaWNvbkNvbG9ySGVhZGVyPTIyMjIyMiZiZ0NvbG9yQ29udGVudD1mZmZmZmYmYmdUZXh0dXJlQ29udGVudD0wMV9mbGF0LnBuZyZiZ0ltZ09wYWNpdHlDb250ZW50PTc1JmJvcmRlckNvbG9yQ29udGVudD1hYWFhYWEmZmNDb250ZW50PTIyMjIyMiZpY29uQ29sb3JDb250ZW50PTIyMjIyMiZiZ0NvbG9yRGVmYXVsdD1lNmU2ZTYmYmdUZXh0dXJlRGVmYXVsdD0wMl9nbGFzcy5wbmcmYmdJbWdPcGFjaXR5RGVmYXVsdD03NSZib3JkZXJDb2xvckRlZmF1bHQ9ZDNkM2QzJmZjRGVmYXVsdD01NTU1NTUmaWNvbkNvbG9yRGVmYXVsdD04ODg4ODgmYmdDb2xvckhvdmVyPWRhZGFkYSZiZ1RleHR1cmVIb3Zlcj0wMl9nbGFzcy5wbmcmYmdJbWdPcGFjaXR5SG92ZXI9NzUmYm9yZGVyQ29sb3JIb3Zlcj05OTk5OTkmZmNIb3Zlcj0yMTIxMjEmaWNvbkNvbG9ySG92ZXI9NDU0NTQ1JmJnQ29sb3JBY3RpdmU9ZmZmZmZmJmJnVGV4dHVyZUFjdGl2ZT0wMl9nbGFzcy5wbmcmYmdJbWdPcGFjaXR5QWN0aXZlPTY1JmJvcmRlckNvbG9yQWN0aXZlPWFhYWFhYSZmY0FjdGl2ZT0yMTIxMjEmaWNvbkNvbG9yQWN0aXZlPTQ1NDU0NSZiZ0NvbG9ySGlnaGxpZ2h0PWZiZjllZSZiZ1RleHR1cmVIaWdobGlnaHQ9MDJfZ2xhc3MucG5nJmJnSW1nT3BhY2l0eUhpZ2hsaWdodD01NSZib3JkZXJDb2xvckhpZ2hsaWdodD1mY2VmYTEmZmNIaWdobGlnaHQ9MzYzNjM2Jmljb25Db2xvckhpZ2hsaWdodD0yZTgzZmYmYmdDb2xvckVycm9yPWZlZjFlYyZiZ1RleHR1cmVFcnJvcj0wMl9nbGFzcy5wbmcmYmdJbWdPcGFjaXR5RXJyb3I9OTUmYm9yZGVyQ29sb3JFcnJvcj1jZDBhMGEmZmNFcnJvcj1jZDBhMGEmaWNvbkNvbG9yRXJyb3I9Y2QwYTBhJmJnQ29sb3JPdmVybGF5PWFhYWFhYSZiZ1RleHR1cmVPdmVybGF5PTAxX2ZsYXQucG5nJmJnSW1nT3BhY2l0eU92ZXJsYXk9MCZvcGFjaXR5T3ZlcmxheT0zMCZiZ0NvbG9yU2hhZG93PWFhYWFhYSZiZ1RleHR1cmVTaGFkb3c9MDFfZmxhdC5wbmcmYmdJbWdPcGFjaXR5U2hhZG93PTAmb3BhY2l0eVNoYWRvdz0zMCZ0aGlja25lc3NTaGFkb3c9OHB4Jm9mZnNldFRvcFNoYWRvdz0tOHB4Jm9mZnNldExlZnRTaGFkb3c9LThweCZjb3JuZXJSYWRpdXNTaGFkb3c9OHB4CiAqLwoKCi8qIENvbXBvbmVudCBjb250YWluZXJzCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwoudWktd2lkZ2V0IHsgZm9udC1mYW1pbHk6IFZlcmRhbmEsQXJpYWwsc2Fucy1zZXJpZjsgZm9udC1zaXplOiAxLjFlbTsgfQoudWktd2lkZ2V0IC51aS13aWRnZXQgeyBmb250LXNpemU6IDFlbTsgfQoudWktd2lkZ2V0IGlucHV0LCAudWktd2lkZ2V0IHNlbGVjdCwgLnVpLXdpZGdldCB0ZXh0YXJlYSwgLnVpLXdpZGdldCBidXR0b24geyBmb250LWZhbWlseTogVmVyZGFuYSxBcmlhbCxzYW5zLXNlcmlmOyBmb250LXNpemU6IDFlbTsgfQoudWktd2lkZ2V0LWNvbnRlbnQgeyBib3JkZXI6IDFweCBzb2xpZCAjYWFhYWFhOyBiYWNrZ3JvdW5kOiAjZmZmZmZmIHVybChpbWFnZXMvdWktYmdfZmxhdF83NV9mZmZmZmZfNDB4MTAwLnBuZykgNTAlIDUwJSByZXBlYXQteDsgY29sb3I6ICMyMjIyMjI7IH0KLnVpLXdpZGdldC1jb250ZW50IGEgeyBjb2xvcjogIzIyMjIyMjsgfQoudWktd2lkZ2V0LWhlYWRlciB7IGJvcmRlcjogMXB4IHNvbGlkICNhYWFhYWE7IGJhY2tncm91bmQ6ICNjY2NjY2MgdXJsKGltYWdlcy91aS1iZ19oaWdobGlnaHQtc29mdF83NV9jY2NjY2NfMXgxMDAucG5nKSA1MCUgNTAlIHJlcGVhdC14OyBjb2xvcjogIzIyMjIyMjsgZm9udC13ZWlnaHQ6IGJvbGQ7IH0KLnVpLXdpZGdldC1oZWFkZXIgYSB7IGNvbG9yOiAjMjIyMjIyOyB9CgovKiBJbnRlcmFjdGlvbiBzdGF0ZXMKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCi51aS1zdGF0ZS1kZWZhdWx0LCAudWktd2lkZ2V0LWNvbnRlbnQgLnVpLXN0YXRlLWRlZmF1bHQsIC51aS13aWRnZXQtaGVhZGVyIC51aS1zdGF0ZS1kZWZhdWx0IHsgYm9yZGVyOiAxcHggc29saWQgI2QzZDNkMzsgYmFja2dyb3VuZDogI2U2ZTZlNiB1cmwoaW1hZ2VzL3VpLWJnX2dsYXNzXzc1X2U2ZTZlNl8xeDQwMC5wbmcpIDUwJSA1MCUgcmVwZWF0LXg7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IGNvbG9yOiAjNTU1NTU1OyB9Ci51aS1zdGF0ZS1kZWZhdWx0IGEsIC51aS1zdGF0ZS1kZWZhdWx0IGE6bGluaywgLnVpLXN0YXRlLWRlZmF1bHQgYTp2aXNpdGVkIHsgY29sb3I6ICM1NTU1NTU7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfQoudWktc3RhdGUtaG92ZXIsIC51aS13aWRnZXQtY29udGVudCAudWktc3RhdGUtaG92ZXIsIC51aS13aWRnZXQtaGVhZGVyIC51aS1zdGF0ZS1ob3ZlciwgLnVpLXN0YXRlLWZvY3VzLCAudWktd2lkZ2V0LWNvbnRlbnQgLnVpLXN0YXRlLWZvY3VzLCAudWktd2lkZ2V0LWhlYWRlciAudWktc3RhdGUtZm9jdXMgeyBib3JkZXI6IDFweCBzb2xpZCAjOTk5OTk5OyBiYWNrZ3JvdW5kOiAjZGFkYWRhIHVybChpbWFnZXMvdWktYmdfZ2xhc3NfNzVfZGFkYWRhXzF4NDAwLnBuZykgNTAlIDUwJSByZXBlYXQteDsgZm9udC13ZWlnaHQ6IG5vcm1hbDsgY29sb3I6ICMyMTIxMjE7IH0KLnVpLXN0YXRlLWhvdmVyIGEsIC51aS1zdGF0ZS1ob3ZlciBhOmhvdmVyIHsgY29sb3I6ICMyMTIxMjE7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfQoudWktc3RhdGUtYWN0aXZlLCAudWktd2lkZ2V0LWNvbnRlbnQgLnVpLXN0YXRlLWFjdGl2ZSwgLnVpLXdpZGdldC1oZWFkZXIgLnVpLXN0YXRlLWFjdGl2ZSB7IGJvcmRlcjogMXB4IHNvbGlkICNhYWFhYWE7IGJhY2tncm91bmQ6ICNmZmZmZmYgdXJsKGltYWdlcy91aS1iZ19nbGFzc182NV9mZmZmZmZfMXg0MDAucG5nKSA1MCUgNTAlIHJlcGVhdC14OyBmb250LXdlaWdodDogbm9ybWFsOyBjb2xvcjogIzIxMjEyMTsgfQoudWktc3RhdGUtYWN0aXZlIGEsIC51aS1zdGF0ZS1hY3RpdmUgYTpsaW5rLCAudWktc3RhdGUtYWN0aXZlIGE6dmlzaXRlZCB7IGNvbG9yOiAjMjEyMTIxOyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH0KLnVpLXdpZGdldCA6YWN0aXZlIHsgb3V0bGluZTogbm9uZTsgfQoKLyogSW50ZXJhY3Rpb24gQ3VlcwotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KLnVpLXN0YXRlLWhpZ2hsaWdodCwgLnVpLXdpZGdldC1jb250ZW50IC51aS1zdGF0ZS1oaWdobGlnaHQsIC51aS13aWRnZXQtaGVhZGVyIC51aS1zdGF0ZS1oaWdobGlnaHQgIHtib3JkZXI6IDFweCBzb2xpZCAjZmNlZmExOyBiYWNrZ3JvdW5kOiAjZmJmOWVlIHVybChpbWFnZXMvdWktYmdfZ2xhc3NfNTVfZmJmOWVlXzF4NDAwLnBuZykgNTAlIDUwJSByZXBlYXQteDsgY29sb3I6ICMzNjM2MzY7IH0KLnVpLXN0YXRlLWhpZ2hsaWdodCBhLCAudWktd2lkZ2V0LWNvbnRlbnQgLnVpLXN0YXRlLWhpZ2hsaWdodCBhLC51aS13aWRnZXQtaGVhZGVyIC51aS1zdGF0ZS1oaWdobGlnaHQgYSB7IGNvbG9yOiAjMzYzNjM2OyB9Ci51aS1zdGF0ZS1lcnJvciwgLnVpLXdpZGdldC1jb250ZW50IC51aS1zdGF0ZS1lcnJvciwgLnVpLXdpZGdldC1oZWFkZXIgLnVpLXN0YXRlLWVycm9yIHtib3JkZXI6IDFweCBzb2xpZCAjY2QwYTBhOyBiYWNrZ3JvdW5kOiAjZmVmMWVjIHVybChpbWFnZXMvdWktYmdfZ2xhc3NfOTVfZmVmMWVjXzF4NDAwLnBuZykgNTAlIDUwJSByZXBlYXQteDsgY29sb3I6ICNjZDBhMGE7IH0KLnVpLXN0YXRlLWVycm9yIGEsIC51aS13aWRnZXQtY29udGVudCAudWktc3RhdGUtZXJyb3IgYSwgLnVpLXdpZGdldC1oZWFkZXIgLnVpLXN0YXRlLWVycm9yIGEgeyBjb2xvcjogI2NkMGEwYTsgfQoudWktc3RhdGUtZXJyb3ItdGV4dCwgLnVpLXdpZGdldC1jb250ZW50IC51aS1zdGF0ZS1lcnJvci10ZXh0LCAudWktd2lkZ2V0LWhlYWRlciAudWktc3RhdGUtZXJyb3ItdGV4dCB7IGNvbG9yOiAjY2QwYTBhOyB9Ci51aS1wcmlvcml0eS1wcmltYXJ5LCAudWktd2lkZ2V0LWNvbnRlbnQgLnVpLXByaW9yaXR5LXByaW1hcnksIC51aS13aWRnZXQtaGVhZGVyIC51aS1wcmlvcml0eS1wcmltYXJ5IHsgZm9udC13ZWlnaHQ6IGJvbGQ7IH0KLnVpLXByaW9yaXR5LXNlY29uZGFyeSwgLnVpLXdpZGdldC1jb250ZW50IC51aS1wcmlvcml0eS1zZWNvbmRhcnksICAudWktd2lkZ2V0LWhlYWRlciAudWktcHJpb3JpdHktc2Vjb25kYXJ5IHsgb3BhY2l0eTogLjc7IGZpbHRlcjpBbHBoYShPcGFjaXR5PTcwKTsgZm9udC13ZWlnaHQ6IG5vcm1hbDsgfQoudWktc3RhdGUtZGlzYWJsZWQsIC51aS13aWRnZXQtY29udGVudCAudWktc3RhdGUtZGlzYWJsZWQsIC51aS13aWRnZXQtaGVhZGVyIC51aS1zdGF0ZS1kaXNhYmxlZCB7IG9wYWNpdHk6IC4zNTsgZmlsdGVyOkFscGhhKE9wYWNpdHk9MzUpOyBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyB9CgovKiBJY29ucwotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KCi8qIHN0YXRlcyBhbmQgaW1hZ2VzICovCi51aS1pY29uIHsgd2lkdGg6IDE2cHg7IGhlaWdodDogMTZweDsgYmFja2dyb3VuZC1pbWFnZTogdXJsKGltYWdlcy91aS1pY29uc18yMjIyMjJfMjU2eDI0MC5wbmcpOyB9Ci51aS13aWRnZXQtY29udGVudCAudWktaWNvbiB7YmFja2dyb3VuZC1pbWFnZTogdXJsKGltYWdlcy91aS1pY29uc18yMjIyMjJfMjU2eDI0MC5wbmcpOyB9Ci51aS13aWRnZXQtaGVhZGVyIC51aS1pY29uIHtiYWNrZ3JvdW5kLWltYWdlOiB1cmwoaW1hZ2VzL3VpLWljb25zXzIyMjIyMl8yNTZ4MjQwLnBuZyk7IH0KLnVpLXN0YXRlLWRlZmF1bHQgLnVpLWljb24geyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoaW1hZ2VzL3VpLWljb25zXzg4ODg4OF8yNTZ4MjQwLnBuZyk7IH0KLnVpLXN0YXRlLWhvdmVyIC51aS1pY29uLCAudWktc3RhdGUtZm9jdXMgLnVpLWljb24ge2JhY2tncm91bmQtaW1hZ2U6IHVybChpbWFnZXMvdWktaWNvbnNfNDU0NTQ1XzI1NngyNDAucG5nKTsgfQoudWktc3RhdGUtYWN0aXZlIC51aS1pY29uIHtiYWNrZ3JvdW5kLWltYWdlOiB1cmwoaW1hZ2VzL3VpLWljb25zXzQ1NDU0NV8yNTZ4MjQwLnBuZyk7IH0KLnVpLXN0YXRlLWhpZ2hsaWdodCAudWktaWNvbiB7YmFja2dyb3VuZC1pbWFnZTogdXJsKGltYWdlcy91aS1pY29uc18yZTgzZmZfMjU2eDI0MC5wbmcpOyB9Ci51aS1zdGF0ZS1lcnJvciAudWktaWNvbiwgLnVpLXN0YXRlLWVycm9yLXRleHQgLnVpLWljb24ge2JhY2tncm91bmQtaW1hZ2U6IHVybChpbWFnZXMvdWktaWNvbnNfY2QwYTBhXzI1NngyNDAucG5nKTsgfQoKLyogcG9zaXRpb25pbmcgKi8KLnVpLWljb24tY2FyYXQtMS1uIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwOyB9Ci51aS1pY29uLWNhcmF0LTEtbmUgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTZweCAwOyB9Ci51aS1pY29uLWNhcmF0LTEtZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC0zMnB4IDA7IH0KLnVpLWljb24tY2FyYXQtMS1zZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC00OHB4IDA7IH0KLnVpLWljb24tY2FyYXQtMS1zIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTY0cHggMDsgfQoudWktaWNvbi1jYXJhdC0xLXN3IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggMDsgfQoudWktaWNvbi1jYXJhdC0xLXcgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTZweCAwOyB9Ci51aS1pY29uLWNhcmF0LTEtbncgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTEycHggMDsgfQoudWktaWNvbi1jYXJhdC0yLW4tcyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMjhweCAwOyB9Ci51aS1pY29uLWNhcmF0LTItZS13IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE0NHB4IDA7IH0KLnVpLWljb24tdHJpYW5nbGUtMS1uIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTZweDsgfQoudWktaWNvbi10cmlhbmdsZS0xLW5lIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2cHggLTE2cHg7IH0KLnVpLWljb24tdHJpYW5nbGUtMS1lIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTE2cHg7IH0KLnVpLWljb24tdHJpYW5nbGUtMS1zZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC00OHB4IC0xNnB4OyB9Ci51aS1pY29uLXRyaWFuZ2xlLTEtcyB7IGJhY2tncm91bmQtcG9zaXRpb246IC02NHB4IC0xNnB4OyB9Ci51aS1pY29uLXRyaWFuZ2xlLTEtc3cgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAtMTZweDsgfQoudWktaWNvbi10cmlhbmdsZS0xLXcgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTZweCAtMTZweDsgfQoudWktaWNvbi10cmlhbmdsZS0xLW53IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExMnB4IC0xNnB4OyB9Ci51aS1pY29uLXRyaWFuZ2xlLTItbi1zIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyOHB4IC0xNnB4OyB9Ci51aS1pY29uLXRyaWFuZ2xlLTItZS13IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE0NHB4IC0xNnB4OyB9Ci51aS1pY29uLWFycm93LTEtbiB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgLTMycHg7IH0KLnVpLWljb24tYXJyb3ctMS1uZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNnB4IC0zMnB4OyB9Ci51aS1pY29uLWFycm93LTEtZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC0zMnB4IC0zMnB4OyB9Ci51aS1pY29uLWFycm93LTEtc2UgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDhweCAtMzJweDsgfQoudWktaWNvbi1hcnJvdy0xLXMgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjRweCAtMzJweDsgfQoudWktaWNvbi1hcnJvdy0xLXN3IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTMycHg7IH0KLnVpLWljb24tYXJyb3ctMS13IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTk2cHggLTMycHg7IH0KLnVpLWljb24tYXJyb3ctMS1udyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMTJweCAtMzJweDsgfQoudWktaWNvbi1hcnJvdy0yLW4tcyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMjhweCAtMzJweDsgfQoudWktaWNvbi1hcnJvdy0yLW5lLXN3IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE0NHB4IC0zMnB4OyB9Ci51aS1pY29uLWFycm93LTItZS13IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2MHB4IC0zMnB4OyB9Ci51aS1pY29uLWFycm93LTItc2UtbncgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTc2cHggLTMycHg7IH0KLnVpLWljb24tYXJyb3dzdG9wLTEtbiB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xOTJweCAtMzJweDsgfQoudWktaWNvbi1hcnJvd3N0b3AtMS1lIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIwOHB4IC0zMnB4OyB9Ci51aS1pY29uLWFycm93c3RvcC0xLXMgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjI0cHggLTMycHg7IH0KLnVpLWljb24tYXJyb3dzdG9wLTEtdyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0yNDBweCAtMzJweDsgfQoudWktaWNvbi1hcnJvd3RoaWNrLTEtbiB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgLTQ4cHg7IH0KLnVpLWljb24tYXJyb3d0aGljay0xLW5lIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2cHggLTQ4cHg7IH0KLnVpLWljb24tYXJyb3d0aGljay0xLWUgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtNDhweDsgfQoudWktaWNvbi1hcnJvd3RoaWNrLTEtc2UgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDhweCAtNDhweDsgfQoudWktaWNvbi1hcnJvd3RoaWNrLTEtcyB7IGJhY2tncm91bmQtcG9zaXRpb246IC02NHB4IC00OHB4OyB9Ci51aS1pY29uLWFycm93dGhpY2stMS1zdyB7IGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IC00OHB4OyB9Ci51aS1pY29uLWFycm93dGhpY2stMS13IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTk2cHggLTQ4cHg7IH0KLnVpLWljb24tYXJyb3d0aGljay0xLW53IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExMnB4IC00OHB4OyB9Ci51aS1pY29uLWFycm93dGhpY2stMi1uLXMgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTI4cHggLTQ4cHg7IH0KLnVpLWljb24tYXJyb3d0aGljay0yLW5lLXN3IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE0NHB4IC00OHB4OyB9Ci51aS1pY29uLWFycm93dGhpY2stMi1lLXcgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTYwcHggLTQ4cHg7IH0KLnVpLWljb24tYXJyb3d0aGljay0yLXNlLW53IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE3NnB4IC00OHB4OyB9Ci51aS1pY29uLWFycm93dGhpY2tzdG9wLTEtbiB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xOTJweCAtNDhweDsgfQoudWktaWNvbi1hcnJvd3RoaWNrc3RvcC0xLWUgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjA4cHggLTQ4cHg7IH0KLnVpLWljb24tYXJyb3d0aGlja3N0b3AtMS1zIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIyNHB4IC00OHB4OyB9Ci51aS1pY29uLWFycm93dGhpY2tzdG9wLTEtdyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0yNDBweCAtNDhweDsgfQoudWktaWNvbi1hcnJvd3JldHVybnRoaWNrLTEtdyB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgLTY0cHg7IH0KLnVpLWljb24tYXJyb3dyZXR1cm50aGljay0xLW4geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTZweCAtNjRweDsgfQoudWktaWNvbi1hcnJvd3JldHVybnRoaWNrLTEtZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC0zMnB4IC02NHB4OyB9Ci51aS1pY29uLWFycm93cmV0dXJudGhpY2stMS1zIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ4cHggLTY0cHg7IH0KLnVpLWljb24tYXJyb3dyZXR1cm4tMS13IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTY0cHggLTY0cHg7IH0KLnVpLWljb24tYXJyb3dyZXR1cm4tMS1uIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTY0cHg7IH0KLnVpLWljb24tYXJyb3dyZXR1cm4tMS1lIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTk2cHggLTY0cHg7IH0KLnVpLWljb24tYXJyb3dyZXR1cm4tMS1zIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExMnB4IC02NHB4OyB9Ci51aS1pY29uLWFycm93cmVmcmVzaC0xLXcgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTI4cHggLTY0cHg7IH0KLnVpLWljb24tYXJyb3dyZWZyZXNoLTEtbiB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNDRweCAtNjRweDsgfQoudWktaWNvbi1hcnJvd3JlZnJlc2gtMS1lIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2MHB4IC02NHB4OyB9Ci51aS1pY29uLWFycm93cmVmcmVzaC0xLXMgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTc2cHggLTY0cHg7IH0KLnVpLWljb24tYXJyb3ctNCB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgLTgwcHg7IH0KLnVpLWljb24tYXJyb3ctNC1kaWFnIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2cHggLTgwcHg7IH0KLnVpLWljb24tZXh0bGluayB7IGJhY2tncm91bmQtcG9zaXRpb246IC0zMnB4IC04MHB4OyB9Ci51aS1pY29uLW5ld3dpbiB7IGJhY2tncm91bmQtcG9zaXRpb246IC00OHB4IC04MHB4OyB9Ci51aS1pY29uLXJlZnJlc2ggeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjRweCAtODBweDsgfQoudWktaWNvbi1zaHVmZmxlIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTgwcHg7IH0KLnVpLWljb24tdHJhbnNmZXItZS13IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTk2cHggLTgwcHg7IH0KLnVpLWljb24tdHJhbnNmZXJ0aGljay1lLXcgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTEycHggLTgwcHg7IH0KLnVpLWljb24tZm9sZGVyLWNvbGxhcHNlZCB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgLTk2cHg7IH0KLnVpLWljb24tZm9sZGVyLW9wZW4geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTZweCAtOTZweDsgfQoudWktaWNvbi1kb2N1bWVudCB7IGJhY2tncm91bmQtcG9zaXRpb246IC0zMnB4IC05NnB4OyB9Ci51aS1pY29uLWRvY3VtZW50LWIgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDhweCAtOTZweDsgfQoudWktaWNvbi1ub3RlIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTY0cHggLTk2cHg7IH0KLnVpLWljb24tbWFpbC1jbG9zZWQgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAtOTZweDsgfQoudWktaWNvbi1tYWlsLW9wZW4geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTZweCAtOTZweDsgfQoudWktaWNvbi1zdWl0Y2FzZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMTJweCAtOTZweDsgfQoudWktaWNvbi1jb21tZW50IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyOHB4IC05NnB4OyB9Ci51aS1pY29uLXBlcnNvbiB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNDRweCAtOTZweDsgfQoudWktaWNvbi1wcmludCB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNjBweCAtOTZweDsgfQoudWktaWNvbi10cmFzaCB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNzZweCAtOTZweDsgfQoudWktaWNvbi1sb2NrZWQgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTkycHggLTk2cHg7IH0KLnVpLWljb24tdW5sb2NrZWQgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjA4cHggLTk2cHg7IH0KLnVpLWljb24tYm9va21hcmsgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjI0cHggLTk2cHg7IH0KLnVpLWljb24tdGFnIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI0MHB4IC05NnB4OyB9Ci51aS1pY29uLWhvbWUgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xMTJweDsgfQoudWktaWNvbi1mbGFnIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2cHggLTExMnB4OyB9Ci51aS1pY29uLWNhbGVuZGFyIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTExMnB4OyB9Ci51aS1pY29uLWNhcnQgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDhweCAtMTEycHg7IH0KLnVpLWljb24tcGVuY2lsIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTY0cHggLTExMnB4OyB9Ci51aS1pY29uLWNsb2NrIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTExMnB4OyB9Ci51aS1pY29uLWRpc2sgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTZweCAtMTEycHg7IH0KLnVpLWljb24tY2FsY3VsYXRvciB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMTJweCAtMTEycHg7IH0KLnVpLWljb24tem9vbWluIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyOHB4IC0xMTJweDsgfQoudWktaWNvbi16b29tb3V0IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE0NHB4IC0xMTJweDsgfQoudWktaWNvbi1zZWFyY2ggeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTYwcHggLTExMnB4OyB9Ci51aS1pY29uLXdyZW5jaCB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNzZweCAtMTEycHg7IH0KLnVpLWljb24tZ2VhciB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xOTJweCAtMTEycHg7IH0KLnVpLWljb24taGVhcnQgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjA4cHggLTExMnB4OyB9Ci51aS1pY29uLXN0YXIgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjI0cHggLTExMnB4OyB9Ci51aS1pY29uLWxpbmsgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjQwcHggLTExMnB4OyB9Ci51aS1pY29uLWNhbmNlbCB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgLTEyOHB4OyB9Ci51aS1pY29uLXBsdXMgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTZweCAtMTI4cHg7IH0KLnVpLWljb24tcGx1c3RoaWNrIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTEyOHB4OyB9Ci51aS1pY29uLW1pbnVzIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ4cHggLTEyOHB4OyB9Ci51aS1pY29uLW1pbnVzdGhpY2sgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjRweCAtMTI4cHg7IH0KLnVpLWljb24tY2xvc2UgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAtMTI4cHg7IH0KLnVpLWljb24tY2xvc2V0aGljayB7IGJhY2tncm91bmQtcG9zaXRpb246IC05NnB4IC0xMjhweDsgfQoudWktaWNvbi1rZXkgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTEycHggLTEyOHB4OyB9Ci51aS1pY29uLWxpZ2h0YnVsYiB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMjhweCAtMTI4cHg7IH0KLnVpLWljb24tc2Npc3NvcnMgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTQ0cHggLTEyOHB4OyB9Ci51aS1pY29uLWNsaXBib2FyZCB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNjBweCAtMTI4cHg7IH0KLnVpLWljb24tY29weSB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNzZweCAtMTI4cHg7IH0KLnVpLWljb24tY29udGFjdCB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xOTJweCAtMTI4cHg7IH0KLnVpLWljb24taW1hZ2UgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjA4cHggLTEyOHB4OyB9Ci51aS1pY29uLXZpZGVvIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIyNHB4IC0xMjhweDsgfQoudWktaWNvbi1zY3JpcHQgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjQwcHggLTEyOHB4OyB9Ci51aS1pY29uLWFsZXJ0IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTQ0cHg7IH0KLnVpLWljb24taW5mbyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNnB4IC0xNDRweDsgfQoudWktaWNvbi1ub3RpY2UgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtMTQ0cHg7IH0KLnVpLWljb24taGVscCB7IGJhY2tncm91bmQtcG9zaXRpb246IC00OHB4IC0xNDRweDsgfQoudWktaWNvbi1jaGVjayB7IGJhY2tncm91bmQtcG9zaXRpb246IC02NHB4IC0xNDRweDsgfQoudWktaWNvbi1idWxsZXQgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAtMTQ0cHg7IH0KLnVpLWljb24tcmFkaW8tb2ZmIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTk2cHggLTE0NHB4OyB9Ci51aS1pY29uLXJhZGlvLW9uIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExMnB4IC0xNDRweDsgfQoudWktaWNvbi1waW4tdyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMjhweCAtMTQ0cHg7IH0KLnVpLWljb24tcGluLXMgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTQ0cHggLTE0NHB4OyB9Ci51aS1pY29uLXBsYXkgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xNjBweDsgfQoudWktaWNvbi1wYXVzZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNnB4IC0xNjBweDsgfQoudWktaWNvbi1zZWVrLW5leHQgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtMTYwcHg7IH0KLnVpLWljb24tc2Vlay1wcmV2IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ4cHggLTE2MHB4OyB9Ci51aS1pY29uLXNlZWstZW5kIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTY0cHggLTE2MHB4OyB9Ci51aS1pY29uLXNlZWstc3RhcnQgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAtMTYwcHg7IH0KLyogdWktaWNvbi1zZWVrLWZpcnN0IGlzIGRlcHJlY2F0ZWQsIHVzZSB1aS1pY29uLXNlZWstc3RhcnQgaW5zdGVhZCAqLwoudWktaWNvbi1zZWVrLWZpcnN0IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTE2MHB4OyB9Ci51aS1pY29uLXN0b3AgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTZweCAtMTYwcHg7IH0KLnVpLWljb24tZWplY3QgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTEycHggLTE2MHB4OyB9Ci51aS1pY29uLXZvbHVtZS1vZmYgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTI4cHggLTE2MHB4OyB9Ci51aS1pY29uLXZvbHVtZS1vbiB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNDRweCAtMTYwcHg7IH0KLnVpLWljb24tcG93ZXIgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xNzZweDsgfQoudWktaWNvbi1zaWduYWwtZGlhZyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNnB4IC0xNzZweDsgfQoudWktaWNvbi1zaWduYWwgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtMTc2cHg7IH0KLnVpLWljb24tYmF0dGVyeS0wIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ4cHggLTE3NnB4OyB9Ci51aS1pY29uLWJhdHRlcnktMSB7IGJhY2tncm91bmQtcG9zaXRpb246IC02NHB4IC0xNzZweDsgfQoudWktaWNvbi1iYXR0ZXJ5LTIgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAtMTc2cHg7IH0KLnVpLWljb24tYmF0dGVyeS0zIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTk2cHggLTE3NnB4OyB9Ci51aS1pY29uLWNpcmNsZS1wbHVzIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTkycHg7IH0KLnVpLWljb24tY2lyY2xlLW1pbnVzIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2cHggLTE5MnB4OyB9Ci51aS1pY29uLWNpcmNsZS1jbG9zZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC0zMnB4IC0xOTJweDsgfQoudWktaWNvbi1jaXJjbGUtdHJpYW5nbGUtZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC00OHB4IC0xOTJweDsgfQoudWktaWNvbi1jaXJjbGUtdHJpYW5nbGUtcyB7IGJhY2tncm91bmQtcG9zaXRpb246IC02NHB4IC0xOTJweDsgfQoudWktaWNvbi1jaXJjbGUtdHJpYW5nbGUtdyB7IGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IC0xOTJweDsgfQoudWktaWNvbi1jaXJjbGUtdHJpYW5nbGUtbiB7IGJhY2tncm91bmQtcG9zaXRpb246IC05NnB4IC0xOTJweDsgfQoudWktaWNvbi1jaXJjbGUtYXJyb3ctZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMTJweCAtMTkycHg7IH0KLnVpLWljb24tY2lyY2xlLWFycm93LXMgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTI4cHggLTE5MnB4OyB9Ci51aS1pY29uLWNpcmNsZS1hcnJvdy13IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE0NHB4IC0xOTJweDsgfQoudWktaWNvbi1jaXJjbGUtYXJyb3ctbiB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNjBweCAtMTkycHg7IH0KLnVpLWljb24tY2lyY2xlLXpvb21pbiB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNzZweCAtMTkycHg7IH0KLnVpLWljb24tY2lyY2xlLXpvb21vdXQgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTkycHggLTE5MnB4OyB9Ci51aS1pY29uLWNpcmNsZS1jaGVjayB7IGJhY2tncm91bmQtcG9zaXRpb246IC0yMDhweCAtMTkycHg7IH0KLnVpLWljb24tY2lyY2xlc21hbGwtcGx1cyB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgLTIwOHB4OyB9Ci51aS1pY29uLWNpcmNsZXNtYWxsLW1pbnVzIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2cHggLTIwOHB4OyB9Ci51aS1pY29uLWNpcmNsZXNtYWxsLWNsb3NlIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTIwOHB4OyB9Ci51aS1pY29uLXNxdWFyZXNtYWxsLXBsdXMgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDhweCAtMjA4cHg7IH0KLnVpLWljb24tc3F1YXJlc21hbGwtbWludXMgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjRweCAtMjA4cHg7IH0KLnVpLWljb24tc3F1YXJlc21hbGwtY2xvc2UgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAtMjA4cHg7IH0KLnVpLWljb24tZ3JpcC1kb3R0ZWQtdmVydGljYWwgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0yMjRweDsgfQoudWktaWNvbi1ncmlwLWRvdHRlZC1ob3Jpem9udGFsIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2cHggLTIyNHB4OyB9Ci51aS1pY29uLWdyaXAtc29saWQtdmVydGljYWwgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtMjI0cHg7IH0KLnVpLWljb24tZ3JpcC1zb2xpZC1ob3Jpem9udGFsIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ4cHggLTIyNHB4OyB9Ci51aS1pY29uLWdyaXBzbWFsbC1kaWFnb25hbC1zZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC02NHB4IC0yMjRweDsgfQoudWktaWNvbi1ncmlwLWRpYWdvbmFsLXNlIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTIyNHB4OyB9CgoKLyogTWlzYyB2aXN1YWxzCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwoKLyogQ29ybmVyIHJhZGl1cyAqLwoudWktY29ybmVyLXRsIHsgLW1vei1ib3JkZXItcmFkaXVzLXRvcGxlZnQ6IDRweDsgLXdlYmtpdC1ib3JkZXItdG9wLWxlZnQtcmFkaXVzOiA0cHg7IGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDRweDsgfQoudWktY29ybmVyLXRyIHsgLW1vei1ib3JkZXItcmFkaXVzLXRvcHJpZ2h0OiA0cHg7IC13ZWJraXQtYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDRweDsgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDRweDsgfQoudWktY29ybmVyLWJsIHsgLW1vei1ib3JkZXItcmFkaXVzLWJvdHRvbWxlZnQ6IDRweDsgLXdlYmtpdC1ib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiA0cHg7IGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDRweDsgfQoudWktY29ybmVyLWJyIHsgLW1vei1ib3JkZXItcmFkaXVzLWJvdHRvbXJpZ2h0OiA0cHg7IC13ZWJraXQtYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDRweDsgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDRweDsgfQoudWktY29ybmVyLXRvcCB7IC1tb3otYm9yZGVyLXJhZGl1cy10b3BsZWZ0OiA0cHg7IC13ZWJraXQtYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNHB4OyBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiA0cHg7IC1tb3otYm9yZGVyLXJhZGl1cy10b3ByaWdodDogNHB4OyAtd2Via2l0LWJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiA0cHg7IGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiA0cHg7IH0KLnVpLWNvcm5lci1ib3R0b20geyAtbW96LWJvcmRlci1yYWRpdXMtYm90dG9tbGVmdDogNHB4OyAtd2Via2l0LWJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDRweDsgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogNHB4OyAtbW96LWJvcmRlci1yYWRpdXMtYm90dG9tcmlnaHQ6IDRweDsgLXdlYmtpdC1ib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogNHB4OyBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogNHB4OyB9Ci51aS1jb3JuZXItcmlnaHQgeyAgLW1vei1ib3JkZXItcmFkaXVzLXRvcHJpZ2h0OiA0cHg7IC13ZWJraXQtYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDRweDsgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDRweDsgLW1vei1ib3JkZXItcmFkaXVzLWJvdHRvbXJpZ2h0OiA0cHg7IC13ZWJraXQtYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDRweDsgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDRweDsgfQoudWktY29ybmVyLWxlZnQgeyAtbW96LWJvcmRlci1yYWRpdXMtdG9wbGVmdDogNHB4OyAtd2Via2l0LWJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDRweDsgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNHB4OyAtbW96LWJvcmRlci1yYWRpdXMtYm90dG9tbGVmdDogNHB4OyAtd2Via2l0LWJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDRweDsgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogNHB4OyB9Ci51aS1jb3JuZXItYWxsIHsgLW1vei1ib3JkZXItcmFkaXVzOiA0cHg7IC13ZWJraXQtYm9yZGVyLXJhZGl1czogNHB4OyBib3JkZXItcmFkaXVzOiA0cHg7IH0KCi8qIE92ZXJsYXlzICovCi51aS13aWRnZXQtb3ZlcmxheSB7IGJhY2tncm91bmQ6ICNhYWFhYWEgdXJsKGltYWdlcy91aS1iZ19mbGF0XzBfYWFhYWFhXzQweDEwMC5wbmcpIDUwJSA1MCUgcmVwZWF0LXg7IG9wYWNpdHk6IC4zMDtmaWx0ZXI6QWxwaGEoT3BhY2l0eT0zMCk7IH0KLnVpLXdpZGdldC1zaGFkb3cgeyBtYXJnaW46IC04cHggMCAwIC04cHg7IHBhZGRpbmc6IDhweDsgYmFja2dyb3VuZDogI2FhYWFhYSB1cmwoaW1hZ2VzL3VpLWJnX2ZsYXRfMF9hYWFhYWFfNDB4MTAwLnBuZykgNTAlIDUwJSByZXBlYXQteDsgb3BhY2l0eTogLjMwO2ZpbHRlcjpBbHBoYShPcGFjaXR5PTMwKTsgLW1vei1ib3JkZXItcmFkaXVzOiA4cHg7IC13ZWJraXQtYm9yZGVyLXJhZGl1czogOHB4OyBib3JkZXItcmFkaXVzOiA4cHg7IH0vKgogKiBqUXVlcnkgVUkgUmVzaXphYmxlIDEuOC4xMgogKgogKiBDb3B5cmlnaHQgMjAxMSwgQVVUSE9SUy50eHQgKGh0dHA6Ly9qcXVlcnl1aS5jb20vYWJvdXQpCiAqIER1YWwgbGljZW5zZWQgdW5kZXIgdGhlIE1JVCBvciBHUEwgVmVyc2lvbiAyIGxpY2Vuc2VzLgogKiBodHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlCiAqCiAqIGh0dHA6Ly9kb2NzLmpxdWVyeS5jb20vVUkvUmVzaXphYmxlI3RoZW1pbmcKICovCi51aS1yZXNpemFibGUgeyBwb3NpdGlvbjogcmVsYXRpdmU7fQoudWktcmVzaXphYmxlLWhhbmRsZSB7IHBvc2l0aW9uOiBhYnNvbHV0ZTtmb250LXNpemU6IDAuMXB4O3otaW5kZXg6IDk5OTk5OyBkaXNwbGF5OiBibG9jazsKCS8qIGh0dHA6Ly9idWdzLmpxdWVyeXVpLmNvbS90aWNrZXQvNzIzMwoJIC0gUmVzaXphYmxlOiByZXNpemFibGUgaGFuZGxlcyBmYWlsIHRvIHdvcmsgaW4gSUUgaWYgdHJhbnNwYXJlbnQgYW5kIGNvbnRlbnQgb3ZlcmxhcHMKCSovCgliYWNrZ3JvdW5kLWltYWdlOnVybChkYXRhOik7Cn0KLnVpLXJlc2l6YWJsZS1kaXNhYmxlZCAudWktcmVzaXphYmxlLWhhbmRsZSwgLnVpLXJlc2l6YWJsZS1hdXRvaGlkZSAudWktcmVzaXphYmxlLWhhbmRsZSB7IGRpc3BsYXk6IG5vbmU7IH0KLnVpLXJlc2l6YWJsZS1uIHsgY3Vyc29yOiBuLXJlc2l6ZTsgaGVpZ2h0OiA3cHg7IHdpZHRoOiAxMDAlOyB0b3A6IC01cHg7IGxlZnQ6IDA7IH0KLnVpLXJlc2l6YWJsZS1zIHsgY3Vyc29yOiBzLXJlc2l6ZTsgaGVpZ2h0OiA3cHg7IHdpZHRoOiAxMDAlOyBib3R0b206IC01cHg7IGxlZnQ6IDA7IH0KLnVpLXJlc2l6YWJsZS1lIHsgY3Vyc29yOiBlLXJlc2l6ZTsgd2lkdGg6IDdweDsgcmlnaHQ6IC01cHg7IHRvcDogMDsgaGVpZ2h0OiAxMDAlOyB9Ci51aS1yZXNpemFibGUtdyB7IGN1cnNvcjogdy1yZXNpemU7IHdpZHRoOiA3cHg7IGxlZnQ6IC01cHg7IHRvcDogMDsgaGVpZ2h0OiAxMDAlOyB9Ci51aS1yZXNpemFibGUtc2UgeyBjdXJzb3I6IHNlLXJlc2l6ZTsgd2lkdGg6IDEycHg7IGhlaWdodDogMTJweDsgcmlnaHQ6IDFweDsgYm90dG9tOiAxcHg7IH0KLnVpLXJlc2l6YWJsZS1zdyB7IGN1cnNvcjogc3ctcmVzaXplOyB3aWR0aDogOXB4OyBoZWlnaHQ6IDlweDsgbGVmdDogLTVweDsgYm90dG9tOiAtNXB4OyB9Ci51aS1yZXNpemFibGUtbncgeyBjdXJzb3I6IG53LXJlc2l6ZTsgd2lkdGg6IDlweDsgaGVpZ2h0OiA5cHg7IGxlZnQ6IC01cHg7IHRvcDogLTVweDsgfQoudWktcmVzaXphYmxlLW5lIHsgY3Vyc29yOiBuZS1yZXNpemU7IHdpZHRoOiA5cHg7IGhlaWdodDogOXB4OyByaWdodDogLTVweDsgdG9wOiAtNXB4O30vKgogKiBqUXVlcnkgVUkgU2VsZWN0YWJsZSAxLjguMTIKICoKICogQ29weXJpZ2h0IDIwMTEsIEFVVEhPUlMudHh0IChodHRwOi8vanF1ZXJ5dWkuY29tL2Fib3V0KQogKiBEdWFsIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgb3IgR1BMIFZlcnNpb24gMiBsaWNlbnNlcy4KICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZQogKgogKiBodHRwOi8vZG9jcy5qcXVlcnkuY29tL1VJL1NlbGVjdGFibGUjdGhlbWluZwogKi8KLnVpLXNlbGVjdGFibGUtaGVscGVyIHsgcG9zaXRpb246IGFic29sdXRlOyB6LWluZGV4OiAxMDA7IGJvcmRlcjoxcHggZG90dGVkIGJsYWNrOyB9Ci8qCiAqIGpRdWVyeSBVSSBBY2NvcmRpb24gMS44LjEyCiAqCiAqIENvcHlyaWdodCAyMDExLCBBVVRIT1JTLnR4dCAoaHR0cDovL2pxdWVyeXVpLmNvbS9hYm91dCkKICogRHVhbCBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIG9yIEdQTCBWZXJzaW9uIDIgbGljZW5zZXMuCiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2UKICoKICogaHR0cDovL2RvY3MuanF1ZXJ5LmNvbS9VSS9BY2NvcmRpb24jdGhlbWluZwogKi8KLyogSUUvV2luIC0gRml4IGFuaW1hdGlvbiBidWcgLSAjNDYxNSAqLwoudWktYWNjb3JkaW9uIHsgd2lkdGg6IDEwMCU7IH0KLnVpLWFjY29yZGlvbiAudWktYWNjb3JkaW9uLWhlYWRlciB7IGN1cnNvcjogcG9pbnRlcjsgcG9zaXRpb246IHJlbGF0aXZlOyBtYXJnaW4tdG9wOiAxcHg7IHpvb206IDE7IH0KLnVpLWFjY29yZGlvbiAudWktYWNjb3JkaW9uLWxpLWZpeCB7IGRpc3BsYXk6IGlubGluZTsgfQoudWktYWNjb3JkaW9uIC51aS1hY2NvcmRpb24taGVhZGVyLWFjdGl2ZSB7IGJvcmRlci1ib3R0b206IDAgIWltcG9ydGFudDsgfQoudWktYWNjb3JkaW9uIC51aS1hY2NvcmRpb24taGVhZGVyIGEgeyBkaXNwbGF5OiBibG9jazsgZm9udC1zaXplOiAxZW07IHBhZGRpbmc6IC41ZW0gLjVlbSAuNWVtIC43ZW07IH0KLnVpLWFjY29yZGlvbi1pY29ucyAudWktYWNjb3JkaW9uLWhlYWRlciBhIHsgcGFkZGluZy1sZWZ0OiAyLjJlbTsgfQoudWktYWNjb3JkaW9uIC51aS1hY2NvcmRpb24taGVhZGVyIC51aS1pY29uIHsgcG9zaXRpb246IGFic29sdXRlOyBsZWZ0OiAuNWVtOyB0b3A6IDUwJTsgbWFyZ2luLXRvcDogLThweDsgfQoudWktYWNjb3JkaW9uIC51aS1hY2NvcmRpb24tY29udGVudCB7IHBhZGRpbmc6IDFlbSAyLjJlbTsgYm9yZGVyLXRvcDogMDsgbWFyZ2luLXRvcDogLTJweDsgcG9zaXRpb246IHJlbGF0aXZlOyB0b3A6IDFweDsgbWFyZ2luLWJvdHRvbTogMnB4OyBvdmVyZmxvdzogYXV0bzsgZGlzcGxheTogbm9uZTsgem9vbTogMTsgfQoudWktYWNjb3JkaW9uIC51aS1hY2NvcmRpb24tY29udGVudC1hY3RpdmUgeyBkaXNwbGF5OiBibG9jazsgfQovKgogKiBqUXVlcnkgVUkgQXV0b2NvbXBsZXRlIDEuOC4xMgogKgogKiBDb3B5cmlnaHQgMjAxMSwgQVVUSE9SUy50eHQgKGh0dHA6Ly9qcXVlcnl1aS5jb20vYWJvdXQpCiAqIER1YWwgbGljZW5zZWQgdW5kZXIgdGhlIE1JVCBvciBHUEwgVmVyc2lvbiAyIGxpY2Vuc2VzLgogKiBodHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlCiAqCiAqIGh0dHA6Ly9kb2NzLmpxdWVyeS5jb20vVUkvQXV0b2NvbXBsZXRlI3RoZW1pbmcKICovCi51aS1hdXRvY29tcGxldGUgeyBwb3NpdGlvbjogYWJzb2x1dGU7IGN1cnNvcjogZGVmYXVsdDsgfQkKCi8qIHdvcmthcm91bmRzICovCiogaHRtbCAudWktYXV0b2NvbXBsZXRlIHsgd2lkdGg6MXB4OyB9IC8qIHdpdGhvdXQgdGhpcywgdGhlIG1lbnUgZXhwYW5kcyB0byAxMDAlIGluIElFNiAqLwoKLyoKICogalF1ZXJ5IFVJIE1lbnUgMS44LjEyCiAqCiAqIENvcHlyaWdodCAyMDEwLCBBVVRIT1JTLnR4dCAoaHR0cDovL2pxdWVyeXVpLmNvbS9hYm91dCkKICogRHVhbCBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIG9yIEdQTCBWZXJzaW9uIDIgbGljZW5zZXMuCiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2UKICoKICogaHR0cDovL2RvY3MuanF1ZXJ5LmNvbS9VSS9NZW51I3RoZW1pbmcKICovCi51aS1tZW51IHsKCWxpc3Qtc3R5bGU6bm9uZTsKCXBhZGRpbmc6IDJweDsKCW1hcmdpbjogMDsKCWRpc3BsYXk6YmxvY2s7CglmbG9hdDogbGVmdDsKfQoudWktbWVudSAudWktbWVudSB7CgltYXJnaW4tdG9wOiAtM3B4Owp9Ci51aS1tZW51IC51aS1tZW51LWl0ZW0gewoJbWFyZ2luOjA7CglwYWRkaW5nOiAwOwoJem9vbTogMTsKCWZsb2F0OiBsZWZ0OwoJY2xlYXI6IGxlZnQ7Cgl3aWR0aDogMTAwJTsKfQoudWktbWVudSAudWktbWVudS1pdGVtIGEgewoJdGV4dC1kZWNvcmF0aW9uOm5vbmU7CglkaXNwbGF5OmJsb2NrOwoJcGFkZGluZzouMmVtIC40ZW07CglsaW5lLWhlaWdodDoxLjU7Cgl6b29tOjE7Cn0KLnVpLW1lbnUgLnVpLW1lbnUtaXRlbSBhLnVpLXN0YXRlLWhvdmVyLAoudWktbWVudSAudWktbWVudS1pdGVtIGEudWktc3RhdGUtYWN0aXZlIHsKCWZvbnQtd2VpZ2h0OiBub3JtYWw7CgltYXJnaW46IC0xcHg7Cn0KLyoKICogalF1ZXJ5IFVJIEJ1dHRvbiAxLjguMTIKICoKICogQ29weXJpZ2h0IDIwMTEsIEFVVEhPUlMudHh0IChodHRwOi8vanF1ZXJ5dWkuY29tL2Fib3V0KQogKiBEdWFsIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgb3IgR1BMIFZlcnNpb24gMiBsaWNlbnNlcy4KICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZQogKgogKiBodHRwOi8vZG9jcy5qcXVlcnkuY29tL1VJL0J1dHRvbiN0aGVtaW5nCiAqLwoudWktYnV0dG9uIHsgZGlzcGxheTogaW5saW5lLWJsb2NrOyBwb3NpdGlvbjogcmVsYXRpdmU7IHBhZGRpbmc6IDA7IG1hcmdpbi1yaWdodDogLjFlbTsgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7IGN1cnNvcjogcG9pbnRlcjsgdGV4dC1hbGlnbjogY2VudGVyOyB6b29tOiAxOyBvdmVyZmxvdzogdmlzaWJsZTsgfSAvKiB0aGUgb3ZlcmZsb3cgcHJvcGVydHkgcmVtb3ZlcyBleHRyYSB3aWR0aCBpbiBJRSAqLwoudWktYnV0dG9uLWljb24tb25seSB7IHdpZHRoOiAyLjJlbTsgfSAvKiB0byBtYWtlIHJvb20gZm9yIHRoZSBpY29uLCBhIHdpZHRoIG5lZWRzIHRvIGJlIHNldCBoZXJlICovCmJ1dHRvbi51aS1idXR0b24taWNvbi1vbmx5IHsgd2lkdGg6IDIuNGVtOyB9IC8qIGJ1dHRvbiBlbGVtZW50cyBzZWVtIHRvIG5lZWQgYSBsaXR0bGUgbW9yZSB3aWR0aCAqLwoudWktYnV0dG9uLWljb25zLW9ubHkgeyB3aWR0aDogMy40ZW07IH0gCmJ1dHRvbi51aS1idXR0b24taWNvbnMtb25seSB7IHdpZHRoOiAzLjdlbTsgfSAKCi8qYnV0dG9uIHRleHQgZWxlbWVudCAqLwoudWktYnV0dG9uIC51aS1idXR0b24tdGV4dCB7IGRpc3BsYXk6IGJsb2NrOyBsaW5lLWhlaWdodDogMS40OyAgfQoudWktYnV0dG9uLXRleHQtb25seSAudWktYnV0dG9uLXRleHQgeyBwYWRkaW5nOiAuNGVtIDFlbTsgfQoudWktYnV0dG9uLWljb24tb25seSAudWktYnV0dG9uLXRleHQsIC51aS1idXR0b24taWNvbnMtb25seSAudWktYnV0dG9uLXRleHQgeyBwYWRkaW5nOiAuNGVtOyB0ZXh0LWluZGVudDogLTk5OTk5OTlweDsgfQoudWktYnV0dG9uLXRleHQtaWNvbi1wcmltYXJ5IC51aS1idXR0b24tdGV4dCwgLnVpLWJ1dHRvbi10ZXh0LWljb25zIC51aS1idXR0b24tdGV4dCB7IHBhZGRpbmc6IC40ZW0gMWVtIC40ZW0gMi4xZW07IH0KLnVpLWJ1dHRvbi10ZXh0LWljb24tc2Vjb25kYXJ5IC51aS1idXR0b24tdGV4dCwgLnVpLWJ1dHRvbi10ZXh0LWljb25zIC51aS1idXR0b24tdGV4dCB7IHBhZGRpbmc6IC40ZW0gMi4xZW0gLjRlbSAxZW07IH0KLnVpLWJ1dHRvbi10ZXh0LWljb25zIC51aS1idXR0b24tdGV4dCB7IHBhZGRpbmctbGVmdDogMi4xZW07IHBhZGRpbmctcmlnaHQ6IDIuMWVtOyB9Ci8qIG5vIGljb24gc3VwcG9ydCBmb3IgaW5wdXQgZWxlbWVudHMsIHByb3ZpZGUgcGFkZGluZyBieSBkZWZhdWx0ICovCmlucHV0LnVpLWJ1dHRvbiB7IHBhZGRpbmc6IC40ZW0gMWVtOyB9CgovKmJ1dHRvbiBpY29uIGVsZW1lbnQocykgKi8KLnVpLWJ1dHRvbi1pY29uLW9ubHkgLnVpLWljb24sIC51aS1idXR0b24tdGV4dC1pY29uLXByaW1hcnkgLnVpLWljb24sIC51aS1idXR0b24tdGV4dC1pY29uLXNlY29uZGFyeSAudWktaWNvbiwgLnVpLWJ1dHRvbi10ZXh0LWljb25zIC51aS1pY29uLCAudWktYnV0dG9uLWljb25zLW9ubHkgLnVpLWljb24geyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogNTAlOyBtYXJnaW4tdG9wOiAtOHB4OyB9Ci51aS1idXR0b24taWNvbi1vbmx5IC51aS1pY29uIHsgbGVmdDogNTAlOyBtYXJnaW4tbGVmdDogLThweDsgfQoudWktYnV0dG9uLXRleHQtaWNvbi1wcmltYXJ5IC51aS1idXR0b24taWNvbi1wcmltYXJ5LCAudWktYnV0dG9uLXRleHQtaWNvbnMgLnVpLWJ1dHRvbi1pY29uLXByaW1hcnksIC51aS1idXR0b24taWNvbnMtb25seSAudWktYnV0dG9uLWljb24tcHJpbWFyeSB7IGxlZnQ6IC41ZW07IH0KLnVpLWJ1dHRvbi10ZXh0LWljb24tc2Vjb25kYXJ5IC51aS1idXR0b24taWNvbi1zZWNvbmRhcnksIC51aS1idXR0b24tdGV4dC1pY29ucyAudWktYnV0dG9uLWljb24tc2Vjb25kYXJ5LCAudWktYnV0dG9uLWljb25zLW9ubHkgLnVpLWJ1dHRvbi1pY29uLXNlY29uZGFyeSB7IHJpZ2h0OiAuNWVtOyB9Ci51aS1idXR0b24tdGV4dC1pY29ucyAudWktYnV0dG9uLWljb24tc2Vjb25kYXJ5LCAudWktYnV0dG9uLWljb25zLW9ubHkgLnVpLWJ1dHRvbi1pY29uLXNlY29uZGFyeSB7IHJpZ2h0OiAuNWVtOyB9CgovKmJ1dHRvbiBzZXRzKi8KLnVpLWJ1dHRvbnNldCB7IG1hcmdpbi1yaWdodDogN3B4OyB9Ci51aS1idXR0b25zZXQgLnVpLWJ1dHRvbiB7IG1hcmdpbi1sZWZ0OiAwOyBtYXJnaW4tcmlnaHQ6IC0uM2VtOyB9CgovKiB3b3JrYXJvdW5kcyAqLwpidXR0b24udWktYnV0dG9uOjotbW96LWZvY3VzLWlubmVyIHsgYm9yZGVyOiAwOyBwYWRkaW5nOiAwOyB9IC8qIHJlc2V0IGV4dHJhIHBhZGRpbmcgaW4gRmlyZWZveCAqLwovKgogKiBqUXVlcnkgVUkgRGlhbG9nIDEuOC4xMgogKgogKiBDb3B5cmlnaHQgMjAxMSwgQVVUSE9SUy50eHQgKGh0dHA6Ly9qcXVlcnl1aS5jb20vYWJvdXQpCiAqIER1YWwgbGljZW5zZWQgdW5kZXIgdGhlIE1JVCBvciBHUEwgVmVyc2lvbiAyIGxpY2Vuc2VzLgogKiBodHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlCiAqCiAqIGh0dHA6Ly9kb2NzLmpxdWVyeS5jb20vVUkvRGlhbG9nI3RoZW1pbmcKICovCi51aS1kaWFsb2cgeyBwb3NpdGlvbjogYWJzb2x1dGU7IHBhZGRpbmc6IC4yZW07IHdpZHRoOiAzMDBweDsgb3ZlcmZsb3c6IGhpZGRlbjsgfQoudWktZGlhbG9nIC51aS1kaWFsb2ctdGl0bGViYXIgeyBwYWRkaW5nOiAuNGVtIDFlbTsgcG9zaXRpb246IHJlbGF0aXZlOyAgfQoudWktZGlhbG9nIC51aS1kaWFsb2ctdGl0bGUgeyBmbG9hdDogbGVmdDsgbWFyZ2luOiAuMWVtIDE2cHggLjFlbSAwOyB9IAoudWktZGlhbG9nIC51aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgeyBwb3NpdGlvbjogYWJzb2x1dGU7IHJpZ2h0OiAuM2VtOyB0b3A6IDUwJTsgd2lkdGg6IDE5cHg7IG1hcmdpbjogLTEwcHggMCAwIDA7IHBhZGRpbmc6IDFweDsgaGVpZ2h0OiAxOHB4OyB9Ci51aS1kaWFsb2cgLnVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSBzcGFuIHsgZGlzcGxheTogYmxvY2s7IG1hcmdpbjogMXB4OyB9Ci51aS1kaWFsb2cgLnVpLWRpYWxvZy10aXRsZWJhci1jbG9zZTpob3ZlciwgLnVpLWRpYWxvZyAudWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlOmZvY3VzIHsgcGFkZGluZzogMDsgfQoudWktZGlhbG9nIC51aS1kaWFsb2ctY29udGVudCB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgYm9yZGVyOiAwOyBwYWRkaW5nOiAuNWVtIDFlbTsgYmFja2dyb3VuZDogbm9uZTsgb3ZlcmZsb3c6IGF1dG87IHpvb206IDE7IH0KLnVpLWRpYWxvZyAudWktZGlhbG9nLWJ1dHRvbnBhbmUgeyB0ZXh0LWFsaWduOiBsZWZ0OyBib3JkZXItd2lkdGg6IDFweCAwIDAgMDsgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgbWFyZ2luOiAuNWVtIDAgMCAwOyBwYWRkaW5nOiAuM2VtIDFlbSAuNWVtIC40ZW07IH0KLnVpLWRpYWxvZyAudWktZGlhbG9nLWJ1dHRvbnBhbmUgLnVpLWRpYWxvZy1idXR0b25zZXQgeyBmbG9hdDogcmlnaHQ7IH0KLnVpLWRpYWxvZyAudWktZGlhbG9nLWJ1dHRvbnBhbmUgYnV0dG9uIHsgbWFyZ2luOiAuNWVtIC40ZW0gLjVlbSAwOyBjdXJzb3I6IHBvaW50ZXI7IH0KLnVpLWRpYWxvZyAudWktcmVzaXphYmxlLXNlIHsgd2lkdGg6IDE0cHg7IGhlaWdodDogMTRweDsgcmlnaHQ6IDNweDsgYm90dG9tOiAzcHg7IH0KLnVpLWRyYWdnYWJsZSAudWktZGlhbG9nLXRpdGxlYmFyIHsgY3Vyc29yOiBtb3ZlOyB9Ci8qCiAqIGpRdWVyeSBVSSBTbGlkZXIgMS44LjEyCiAqCiAqIENvcHlyaWdodCAyMDExLCBBVVRIT1JTLnR4dCAoaHR0cDovL2pxdWVyeXVpLmNvbS9hYm91dCkKICogRHVhbCBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIG9yIEdQTCBWZXJzaW9uIDIgbGljZW5zZXMuCiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2UKICoKICogaHR0cDovL2RvY3MuanF1ZXJ5LmNvbS9VSS9TbGlkZXIjdGhlbWluZwogKi8KLnVpLXNsaWRlciB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgdGV4dC1hbGlnbjogbGVmdDsgfQoudWktc2xpZGVyIC51aS1zbGlkZXItaGFuZGxlIHsgcG9zaXRpb246IGFic29sdXRlOyB6LWluZGV4OiAyOyB3aWR0aDogMS4yZW07IGhlaWdodDogMS4yZW07IGN1cnNvcjogZGVmYXVsdDsgfQoudWktc2xpZGVyIC51aS1zbGlkZXItcmFuZ2UgeyBwb3NpdGlvbjogYWJzb2x1dGU7IHotaW5kZXg6IDE7IGZvbnQtc2l6ZTogLjdlbTsgZGlzcGxheTogYmxvY2s7IGJvcmRlcjogMDsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwOyB9CgoudWktc2xpZGVyLWhvcml6b250YWwgeyBoZWlnaHQ6IC44ZW07IH0KLnVpLXNsaWRlci1ob3Jpem9udGFsIC51aS1zbGlkZXItaGFuZGxlIHsgdG9wOiAtLjNlbTsgbWFyZ2luLWxlZnQ6IC0uNmVtOyB9Ci51aS1zbGlkZXItaG9yaXpvbnRhbCAudWktc2xpZGVyLXJhbmdlIHsgdG9wOiAwOyBoZWlnaHQ6IDEwMCU7IH0KLnVpLXNsaWRlci1ob3Jpem9udGFsIC51aS1zbGlkZXItcmFuZ2UtbWluIHsgbGVmdDogMDsgfQoudWktc2xpZGVyLWhvcml6b250YWwgLnVpLXNsaWRlci1yYW5nZS1tYXggeyByaWdodDogMDsgfQoKLnVpLXNsaWRlci12ZXJ0aWNhbCB7IHdpZHRoOiAuOGVtOyBoZWlnaHQ6IDEwMHB4OyB9Ci51aS1zbGlkZXItdmVydGljYWwgLnVpLXNsaWRlci1oYW5kbGUgeyBsZWZ0OiAtLjNlbTsgbWFyZ2luLWxlZnQ6IDA7IG1hcmdpbi1ib3R0b206IC0uNmVtOyB9Ci51aS1zbGlkZXItdmVydGljYWwgLnVpLXNsaWRlci1yYW5nZSB7IGxlZnQ6IDA7IHdpZHRoOiAxMDAlOyB9Ci51aS1zbGlkZXItdmVydGljYWwgLnVpLXNsaWRlci1yYW5nZS1taW4geyBib3R0b206IDA7IH0KLnVpLXNsaWRlci12ZXJ0aWNhbCAudWktc2xpZGVyLXJhbmdlLW1heCB7IHRvcDogMDsgfS8qCiAqIGpRdWVyeSBVSSBUYWJzIDEuOC4xMgogKgogKiBDb3B5cmlnaHQgMjAxMSwgQVVUSE9SUy50eHQgKGh0dHA6Ly9qcXVlcnl1aS5jb20vYWJvdXQpCiAqIER1YWwgbGljZW5zZWQgdW5kZXIgdGhlIE1JVCBvciBHUEwgVmVyc2lvbiAyIGxpY2Vuc2VzLgogKiBodHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlCiAqCiAqIGh0dHA6Ly9kb2NzLmpxdWVyeS5jb20vVUkvVGFicyN0aGVtaW5nCiAqLwoudWktdGFicyB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgcGFkZGluZzogLjJlbTsgem9vbTogMTsgfSAvKiBwb3NpdGlvbjogcmVsYXRpdmUgcHJldmVudHMgSUUgc2Nyb2xsIGJ1ZyAoZWxlbWVudCB3aXRoIHBvc2l0aW9uOiByZWxhdGl2ZSBpbnNpZGUgY29udGFpbmVyIHdpdGggb3ZlcmZsb3c6IGF1dG8gYXBwZWFyIGFzICJmaXhlZCIpICovCi51aS10YWJzIC51aS10YWJzLW5hdiB7IG1hcmdpbjogMDsgcGFkZGluZzogLjJlbSAuMmVtIDA7IH0KLnVpLXRhYnMgLnVpLXRhYnMtbmF2IGxpIHsgbGlzdC1zdHlsZTogbm9uZTsgZmxvYXQ6IGxlZnQ7IHBvc2l0aW9uOiByZWxhdGl2ZTsgdG9wOiAxcHg7IG1hcmdpbjogMCAuMmVtIDFweCAwOyBib3JkZXItYm90dG9tOiAwICFpbXBvcnRhbnQ7IHBhZGRpbmc6IDA7IHdoaXRlLXNwYWNlOiBub3dyYXA7IH0KLnVpLXRhYnMgLnVpLXRhYnMtbmF2IGxpIGEgeyBmbG9hdDogbGVmdDsgcGFkZGluZzogLjVlbSAxZW07IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfQoudWktdGFicyAudWktdGFicy1uYXYgbGkudWktdGFicy1zZWxlY3RlZCB7IG1hcmdpbi1ib3R0b206IDA7IHBhZGRpbmctYm90dG9tOiAxcHg7IH0KLnVpLXRhYnMgLnVpLXRhYnMtbmF2IGxpLnVpLXRhYnMtc2VsZWN0ZWQgYSwgLnVpLXRhYnMgLnVpLXRhYnMtbmF2IGxpLnVpLXN0YXRlLWRpc2FibGVkIGEsIC51aS10YWJzIC51aS10YWJzLW5hdiBsaS51aS1zdGF0ZS1wcm9jZXNzaW5nIGEgeyBjdXJzb3I6IHRleHQ7IH0KLnVpLXRhYnMgLnVpLXRhYnMtbmF2IGxpIGEsIC51aS10YWJzLnVpLXRhYnMtY29sbGFwc2libGUgLnVpLXRhYnMtbmF2IGxpLnVpLXRhYnMtc2VsZWN0ZWQgYSB7IGN1cnNvcjogcG9pbnRlcjsgfSAvKiBmaXJzdCBzZWxlY3RvciBpbiBncm91cCBzZWVtcyBvYnNvbGV0ZSwgYnV0IHJlcXVpcmVkIHRvIG92ZXJjb21lIGJ1ZyBpbiBPcGVyYSBhcHBseWluZyBjdXJzb3I6IHRleHQgb3ZlcmFsbCBpZiBkZWZpbmVkIGVsc2V3aGVyZS4uLiAqLwoudWktdGFicyAudWktdGFicy1wYW5lbCB7IGRpc3BsYXk6IGJsb2NrOyBib3JkZXItd2lkdGg6IDA7IHBhZGRpbmc6IDFlbSAxLjRlbTsgYmFja2dyb3VuZDogbm9uZTsgfQoudWktdGFicyAudWktdGFicy1oaWRlIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9Ci8qCiAqIGpRdWVyeSBVSSBEYXRlcGlja2VyIDEuOC4xMgogKgogKiBDb3B5cmlnaHQgMjAxMSwgQVVUSE9SUy50eHQgKGh0dHA6Ly9qcXVlcnl1aS5jb20vYWJvdXQpCiAqIER1YWwgbGljZW5zZWQgdW5kZXIgdGhlIE1JVCBvciBHUEwgVmVyc2lvbiAyIGxpY2Vuc2VzLgogKiBodHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlCiAqCiAqIGh0dHA6Ly9kb2NzLmpxdWVyeS5jb20vVUkvRGF0ZXBpY2tlciN0aGVtaW5nCiAqLwoudWktZGF0ZXBpY2tlciB7IHdpZHRoOiAxN2VtOyBwYWRkaW5nOiAuMmVtIC4yZW0gMDsgZGlzcGxheTogbm9uZTsgfQoudWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1oZWFkZXIgeyBwb3NpdGlvbjpyZWxhdGl2ZTsgcGFkZGluZzouMmVtIDA7IH0KLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItcHJldiwgLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItbmV4dCB7IHBvc2l0aW9uOmFic29sdXRlOyB0b3A6IDJweDsgd2lkdGg6IDEuOGVtOyBoZWlnaHQ6IDEuOGVtOyB9Ci51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLXByZXYtaG92ZXIsIC51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLW5leHQtaG92ZXIgeyB0b3A6IDFweDsgfQoudWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1wcmV2IHsgbGVmdDoycHg7IH0KLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItbmV4dCB7IHJpZ2h0OjJweDsgfQoudWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1wcmV2LWhvdmVyIHsgbGVmdDoxcHg7IH0KLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItbmV4dC1ob3ZlciB7IHJpZ2h0OjFweDsgfQoudWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1wcmV2IHNwYW4sIC51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLW5leHQgc3BhbiB7IGRpc3BsYXk6IGJsb2NrOyBwb3NpdGlvbjogYWJzb2x1dGU7IGxlZnQ6IDUwJTsgbWFyZ2luLWxlZnQ6IC04cHg7IHRvcDogNTAlOyBtYXJnaW4tdG9wOiAtOHB4OyAgfQoudWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci10aXRsZSB7IG1hcmdpbjogMCAyLjNlbTsgbGluZS1oZWlnaHQ6IDEuOGVtOyB0ZXh0LWFsaWduOiBjZW50ZXI7IH0KLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItdGl0bGUgc2VsZWN0IHsgZm9udC1zaXplOjFlbTsgbWFyZ2luOjFweCAwOyB9Ci51aS1kYXRlcGlja2VyIHNlbGVjdC51aS1kYXRlcGlja2VyLW1vbnRoLXllYXIge3dpZHRoOiAxMDAlO30KLnVpLWRhdGVwaWNrZXIgc2VsZWN0LnVpLWRhdGVwaWNrZXItbW9udGgsIAoudWktZGF0ZXBpY2tlciBzZWxlY3QudWktZGF0ZXBpY2tlci15ZWFyIHsgd2lkdGg6IDQ5JTt9Ci51aS1kYXRlcGlja2VyIHRhYmxlIHt3aWR0aDogMTAwJTsgZm9udC1zaXplOiAuOWVtOyBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOyBtYXJnaW46MCAwIC40ZW07IH0KLnVpLWRhdGVwaWNrZXIgdGggeyBwYWRkaW5nOiAuN2VtIC4zZW07IHRleHQtYWxpZ246IGNlbnRlcjsgZm9udC13ZWlnaHQ6IGJvbGQ7IGJvcmRlcjogMDsgIH0KLnVpLWRhdGVwaWNrZXIgdGQgeyBib3JkZXI6IDA7IHBhZGRpbmc6IDFweDsgfQoudWktZGF0ZXBpY2tlciB0ZCBzcGFuLCAudWktZGF0ZXBpY2tlciB0ZCBhIHsgZGlzcGxheTogYmxvY2s7IHBhZGRpbmc6IC4yZW07IHRleHQtYWxpZ246IHJpZ2h0OyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH0KLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItYnV0dG9ucGFuZSB7IGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IG1hcmdpbjogLjdlbSAwIDAgMDsgcGFkZGluZzowIC4yZW07IGJvcmRlci1sZWZ0OiAwOyBib3JkZXItcmlnaHQ6IDA7IGJvcmRlci1ib3R0b206IDA7IH0KLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItYnV0dG9ucGFuZSBidXR0b24geyBmbG9hdDogcmlnaHQ7IG1hcmdpbjogLjVlbSAuMmVtIC40ZW07IGN1cnNvcjogcG9pbnRlcjsgcGFkZGluZzogLjJlbSAuNmVtIC4zZW0gLjZlbTsgd2lkdGg6YXV0bzsgb3ZlcmZsb3c6dmlzaWJsZTsgfQoudWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1idXR0b25wYW5lIGJ1dHRvbi51aS1kYXRlcGlja2VyLWN1cnJlbnQgeyBmbG9hdDpsZWZ0OyB9CgovKiB3aXRoIG11bHRpcGxlIGNhbGVuZGFycyAqLwoudWktZGF0ZXBpY2tlci51aS1kYXRlcGlja2VyLW11bHRpIHsgd2lkdGg6YXV0bzsgfQoudWktZGF0ZXBpY2tlci1tdWx0aSAudWktZGF0ZXBpY2tlci1ncm91cCB7IGZsb2F0OmxlZnQ7IH0KLnVpLWRhdGVwaWNrZXItbXVsdGkgLnVpLWRhdGVwaWNrZXItZ3JvdXAgdGFibGUgeyB3aWR0aDo5NSU7IG1hcmdpbjowIGF1dG8gLjRlbTsgfQoudWktZGF0ZXBpY2tlci1tdWx0aS0yIC51aS1kYXRlcGlja2VyLWdyb3VwIHsgd2lkdGg6NTAlOyB9Ci51aS1kYXRlcGlja2VyLW11bHRpLTMgLnVpLWRhdGVwaWNrZXItZ3JvdXAgeyB3aWR0aDozMy4zJTsgfQoudWktZGF0ZXBpY2tlci1tdWx0aS00IC51aS1kYXRlcGlja2VyLWdyb3VwIHsgd2lkdGg6MjUlOyB9Ci51aS1kYXRlcGlja2VyLW11bHRpIC51aS1kYXRlcGlja2VyLWdyb3VwLWxhc3QgLnVpLWRhdGVwaWNrZXItaGVhZGVyIHsgYm9yZGVyLWxlZnQtd2lkdGg6MDsgfQoudWktZGF0ZXBpY2tlci1tdWx0aSAudWktZGF0ZXBpY2tlci1ncm91cC1taWRkbGUgLnVpLWRhdGVwaWNrZXItaGVhZGVyIHsgYm9yZGVyLWxlZnQtd2lkdGg6MDsgfQoudWktZGF0ZXBpY2tlci1tdWx0aSAudWktZGF0ZXBpY2tlci1idXR0b25wYW5lIHsgY2xlYXI6bGVmdDsgfQoudWktZGF0ZXBpY2tlci1yb3ctYnJlYWsgeyBjbGVhcjpib3RoOyB3aWR0aDoxMDAlOyB9CgovKiBSVEwgc3VwcG9ydCAqLwoudWktZGF0ZXBpY2tlci1ydGwgeyBkaXJlY3Rpb246IHJ0bDsgfQoudWktZGF0ZXBpY2tlci1ydGwgLnVpLWRhdGVwaWNrZXItcHJldiB7IHJpZ2h0OiAycHg7IGxlZnQ6IGF1dG87IH0KLnVpLWRhdGVwaWNrZXItcnRsIC51aS1kYXRlcGlja2VyLW5leHQgeyBsZWZ0OiAycHg7IHJpZ2h0OiBhdXRvOyB9Ci51aS1kYXRlcGlja2VyLXJ0bCAudWktZGF0ZXBpY2tlci1wcmV2OmhvdmVyIHsgcmlnaHQ6IDFweDsgbGVmdDogYXV0bzsgfQoudWktZGF0ZXBpY2tlci1ydGwgLnVpLWRhdGVwaWNrZXItbmV4dDpob3ZlciB7IGxlZnQ6IDFweDsgcmlnaHQ6IGF1dG87IH0KLnVpLWRhdGVwaWNrZXItcnRsIC51aS1kYXRlcGlja2VyLWJ1dHRvbnBhbmUgeyBjbGVhcjpyaWdodDsgfQoudWktZGF0ZXBpY2tlci1ydGwgLnVpLWRhdGVwaWNrZXItYnV0dG9ucGFuZSBidXR0b24geyBmbG9hdDogbGVmdDsgfQoudWktZGF0ZXBpY2tlci1ydGwgLnVpLWRhdGVwaWNrZXItYnV0dG9ucGFuZSBidXR0b24udWktZGF0ZXBpY2tlci1jdXJyZW50IHsgZmxvYXQ6cmlnaHQ7IH0KLnVpLWRhdGVwaWNrZXItcnRsIC51aS1kYXRlcGlja2VyLWdyb3VwIHsgZmxvYXQ6cmlnaHQ7IH0KLnVpLWRhdGVwaWNrZXItcnRsIC51aS1kYXRlcGlja2VyLWdyb3VwLWxhc3QgLnVpLWRhdGVwaWNrZXItaGVhZGVyIHsgYm9yZGVyLXJpZ2h0LXdpZHRoOjA7IGJvcmRlci1sZWZ0LXdpZHRoOjFweDsgfQoudWktZGF0ZXBpY2tlci1ydGwgLnVpLWRhdGVwaWNrZXItZ3JvdXAtbWlkZGxlIC51aS1kYXRlcGlja2VyLWhlYWRlciB7IGJvcmRlci1yaWdodC13aWR0aDowOyBib3JkZXItbGVmdC13aWR0aDoxcHg7IH0KCi8qIElFNiBJRlJBTUUgRklYICh0YWtlbiBmcm9tIGRhdGVwaWNrZXIgMS41LjMgKi8KLnVpLWRhdGVwaWNrZXItY292ZXIgewogICAgZGlzcGxheTogbm9uZTsgLypzb3JyeSBmb3IgSUU1Ki8KICAgIGRpc3BsYXkvKiovOiBibG9jazsgLypzb3JyeSBmb3IgSUU1Ki8KICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgLyptdXN0IGhhdmUqLwogICAgei1pbmRleDogLTE7IC8qbXVzdCBoYXZlKi8KICAgIGZpbHRlcjogbWFzaygpOyAvKm11c3QgaGF2ZSovCiAgICB0b3A6IC00cHg7IC8qbXVzdCBoYXZlKi8KICAgIGxlZnQ6IC00cHg7IC8qbXVzdCBoYXZlKi8KICAgIHdpZHRoOiAyMDBweDsgLyptdXN0IGhhdmUqLwogICAgaGVpZ2h0OiAyMDBweDsgLyptdXN0IGhhdmUqLwp9LyoKICogalF1ZXJ5IFVJIFByb2dyZXNzYmFyIDEuOC4xMgogKgogKiBDb3B5cmlnaHQgMjAxMSwgQVVUSE9SUy50eHQgKGh0dHA6Ly9qcXVlcnl1aS5jb20vYWJvdXQpCiAqIER1YWwgbGljZW5zZWQgdW5kZXIgdGhlIE1JVCBvciBHUEwgVmVyc2lvbiAyIGxpY2Vuc2VzLgogKiBodHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlCiAqCiAqIGh0dHA6Ly9kb2NzLmpxdWVyeS5jb20vVUkvUHJvZ3Jlc3NiYXIjdGhlbWluZwogKi8KLnVpLXByb2dyZXNzYmFyIHsgaGVpZ2h0OjJlbTsgdGV4dC1hbGlnbjogbGVmdDsgfQoudWktcHJvZ3Jlc3NiYXIgLnVpLXByb2dyZXNzYmFyLXZhbHVlIHttYXJnaW46IC0xcHg7IGhlaWdodDoxMDAlOyB9]]></data>
	</file>
	<file>
	  <filename>/lib/jquery/jquery.collapsible.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[LyoqDQogKiBDb2xsYXBzaWJsZSwgalF1ZXJ5IFBsdWdpbg0KICogDQogKiBDb2xsYXBzaWJsZSBtYW5hZ2VtZW50LiAgT3B0aW9uYWwgY29va2llIHN1cHBvcnQgdXNpbmcgdGhlIGpRdWVyeSBDb29raWUgcGx1Z2luOg0KICogaHR0cHM6Ly9naXRodWIuY29tL2NhcmhhcnRsL2pxdWVyeS1jb29raWUNCiAqIA0KICogQ29weXJpZ2h0IChjKSAyMDEwIEpvaG4gU255ZGVyIChzbnlkZXJwbGFjZS5jb20pDQogKiBAbGljZW5zZSBodHRwOi8vd3d3LnNueWRlcnBsYWNlLmNvbS9jb2xsYXBzaWJsZS9saWNlbnNlLnR4dCBOZXcgQlNEDQogKiBAdmVyc2lvbiAxLjIuMQ0KICovDQooZnVuY3Rpb24oJCkgew0KICAgICQuZm4uY29sbGFwc2libGUgPSBmdW5jdGlvbiAoY21kLCBhcmcpIHsNCg0KICAgICAgICAvL2ZpcmV3YWxsaW5nDQogICAgICAgIGlmICghdGhpcyB8fCB0aGlzLmxlbmd0aCA8IDEpIHsNCiAgICAgICAgICAgIHJldHVybiB0aGlzOw0KICAgICAgICB9DQoNCiAgICAgICAgLy9hZGRyZXNzIGNvbW1hbmQgcmVxdWVzdHMNCiAgICAgICAgaWYgKHR5cGVvZiBjbWQgPT0gJ3N0cmluZycpIHsNCiAgICAgICAgICAgIHJldHVybiAkLmZuLmNvbGxhcHNpYmxlLmRpc3BhdGNoZXJbY21kXSh0aGlzLCBhcmcpOw0KICAgICAgICB9DQogICAgICAgIA0KICAgICAgICAvL3JldHVybiB0aGUgY29tbWFuZCBkaXNwYXRjaGVyDQogICAgICAgIHJldHVybiAkLmZuLmNvbGxhcHNpYmxlLmRpc3BhdGNoZXJbJ19jcmVhdGUnXSh0aGlzLCBjbWQpOw0KICAgIH07DQoNCiAgICAvL2NyZWF0ZSB0aGUgY29tbWFuZCBkaXNwYXRjaGVyDQogICAgJC5mbi5jb2xsYXBzaWJsZS5kaXNwYXRjaGVyID0gew0KDQogICAgICAgIC8vaW5pdGlhbGl6ZWQgd2l0aCBvcHRpb25zDQogICAgICAgIF9jcmVhdGUgOiBmdW5jdGlvbihvYmosIGFyZykgew0KICAgICAgICAgICAgY3JlYXRlQ29sbGFwc2libGUob2JqLCBhcmcpOw0KICAgICAgICB9LA0KDQogICAgICAgIC8vdG9nZ2xlIHRoZSBlbGVtZW50J3MgZGlzcGxheQ0KICAgICAgICB0b2dnbGU6IGZ1bmN0aW9uKG9iaikgew0KICAgICAgICAgICAgdG9nZ2xlKG9iaiwgbG9hZE9wdHMob2JqKSk7DQogICAgICAgICAgICByZXR1cm4gb2JqOw0KICAgICAgICB9LA0KDQogICAgICAgIC8vc2hvdyB0aGUgZWxlbWVudA0KICAgICAgICBvcGVuOiBmdW5jdGlvbihvYmopIHsNCiAgICAgICAgICAgIG9wZW4ob2JqLCBsb2FkT3B0cyhvYmopKTsNCiAgICAgICAgICAgIHJldHVybiBvYmo7DQogICAgICAgIH0sDQoNCiAgICAgICAgLy9oaWRlIHRoZSBlbGVtZW50DQogICAgICAgIGNsb3NlOiBmdW5jdGlvbihvYmopIHsNCiAgICAgICAgICAgIGNsb3NlKG9iaiwgbG9hZE9wdHMob2JqKSk7DQogICAgICAgICAgICByZXR1cm4gb2JqOw0KICAgICAgICB9LA0KDQogICAgICAgIC8vY2hlY2sgaWYgdGhlIGVsZW1lbnQgaXMgY2xvc2VkDQogICAgICAgIGNvbGxhcHNlZDogZnVuY3Rpb24ob2JqKSB7DQogICAgICAgICAgICByZXR1cm4gY29sbGFwc2VkKG9iaiwgbG9hZE9wdHMob2JqKSk7DQogICAgICAgIH0sDQoNCiAgICAgICAgLy9vcGVuIGFsbCBjbG9zZWQgY29udGFpbmVycw0KICAgICAgICBvcGVuQWxsOiBmdW5jdGlvbihvYmopIHsNCiAgICAgICAgICAgIHJldHVybiBvcGVuQWxsKG9iaiwgbG9hZE9wdHMob2JqKSk7DQogICAgICAgIH0sDQoNCiAgICAgICAgLy9jbG9zZSBhbGwgb3BlbmVkIGNvbnRhaW5lcnMNCiAgICAgICAgY2xvc2VBbGw6IGZ1bmN0aW9uKG9iaikgew0KICAgICAgICAgICAgcmV0dXJuIGNsb3NlQWxsKG9iaiwgbG9hZE9wdHMob2JqKSk7DQogICAgICAgIH0NCiAgICB9Ow0KDQogICAgLy9jcmVhdGUgdGhlIGluaXRpYWwgY29sbGFwc2libGUNCiAgICBmdW5jdGlvbiBjcmVhdGVDb2xsYXBzaWJsZShvYmosIG9wdGlvbnMpDQogICAgew0KDQogICAgICAgIC8vYnVpbGQgbWFpbiBvcHRpb25zIGJlZm9yZSBlbGVtZW50IGl0ZXJhdGlvbg0KICAgICAgICB2YXIgb3B0cyA9ICQuZXh0ZW5kKHt9LCAkLmZuLmNvbGxhcHNpYmxlLmRlZmF1bHRzLCBvcHRpb25zKTsNCiAgICAgICAgDQogICAgICAgIC8vc3RvcmUgYW55IG9wZW5lZCBkZWZhdWx0IHZhbHVlcyB0byBzZXQgY29va2llIGxhdGVyDQogICAgICAgIHZhciBvcGVuZWQgPSBbXTsNCiAgICAgICAgDQogICAgICAgIC8vaXRlcmF0ZSBlYWNoIG1hdGNoZWQgb2JqZWN0LCBiaW5kLCBhbmQgb3Blbi9jbG9zZQ0KICAgICAgICBvYmouZWFjaChmdW5jdGlvbigpIHsNCg0KICAgICAgICAgICAgdmFyICR0aGlzID0gJCh0aGlzKTsNCiAgICAgICAgICAgIHNhdmVPcHRzKCR0aGlzLCBvcHRzKTsNCiAgICAgICAgICAgIA0KICAgICAgICAgICAgLy9iaW5kIGl0IHRvIHRoZSBldmVudA0KICAgICAgICAgICAgaWYgKG9wdHMuYmluZCA9PSAnbW91c2VlbnRlcicpIHsNCg0KICAgICAgICAgICAgICAgICR0aGlzLmJpbmQoJ21vdXNlZW50ZXInLCBmdW5jdGlvbihlKSB7DQogICAgICAgICAgICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKTsgDQogICAgICAgICAgICAgICAgICAgIHRvZ2dsZSgkdGhpcywgb3B0cyk7DQogICAgICAgICAgICAgICAgfSk7DQogICAgICAgICAgICB9DQogICAgICAgICAgICANCiAgICAgICAgICAgIC8vYmluZCBpdCB0byB0aGUgZXZlbnQNCiAgICAgICAgICAgIGlmIChvcHRzLmJpbmQgPT0gJ21vdXNlb3ZlcicpIHsNCg0KICAgICAgICAgICAgICAgICR0aGlzLmJpbmQoJ21vdXNlb3ZlcicsZnVuY3Rpb24oZSkgew0KICAgICAgICAgICAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7IA0KICAgICAgICAgICAgICAgICAgICB0b2dnbGUoJHRoaXMsIG9wdHMpOyANCiAgICAgICAgICAgICAgICB9KTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgICAgIA0KICAgICAgICAgICAgLy9iaW5kIGl0IHRvIHRoZSBldmVudA0KICAgICAgICAgICAgaWYgKG9wdHMuYmluZCA9PSAnY2xpY2snKSB7DQoNCiAgICAgICAgICAgICAgICAkdGhpcy5iaW5kKCdjbGljaycsIGZ1bmN0aW9uKGUpIHsNCiAgICAgICAgICAgICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpOw0KICAgICAgICAgICAgICAgICAgICB0b2dnbGUoJHRoaXMsIG9wdHMpOw0KICAgICAgICAgICAgICAgIH0pOw0KDQogICAgICAgICAgICB9DQogICAgICAgICAgICANCiAgICAgICAgICAgIC8vYmluZCBpdCB0byB0aGUgZXZlbnQNCiAgICAgICAgICAgIGlmIChvcHRzLmJpbmQgPT0gJ2RibGNsaWNrJykgew0KDQogICAgICAgICAgICAgICAgJHRoaXMuYmluZCgnZGJsY2xpY2snLCBmdW5jdGlvbihlKSB7DQoNCiAgICAgICAgICAgICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpOw0KICAgICAgICAgICAgICAgICAgICB0b2dnbGUoJHRoaXMsIG9wdHMpOw0KICAgICAgICAgICAgICAgIH0pOw0KDQogICAgICAgICAgICB9DQogICAgICAgICAgICANCiAgICAgICAgICAgIC8vaW5pdGlhbGl6ZSB0aGUgY29sbGFwc2libGVzDQogICAgICAgICAgICAvL2dldCB0aGUgaWQgZm9yIHRoaXMgZWxlbWVudA0KICAgICAgICAgICAgdmFyIGlkID0gJHRoaXMuYXR0cignaWQnKTsNCiAgICAgICAgICAgIA0KICAgICAgICAgICAgLy9pZiBub3QgdXNpbmcgY29va2llcywgb3BlbiBkZWZhdWx0cw0KICAgICAgICAgICAgaWYgKCF1c2VDb29raWVzKG9wdHMpKSB7DQoNCiAgICAgICAgICAgICAgICAvL2lzIHRoaXMgY29sbGFwc2libGUgaW4gdGhlIGRlZmF1bHQgb3BlbiBhcnJheT8NCiAgICAgICAgICAgICAgICB2YXIgZE9wZW5JbmRleCA9IGluRGVmYXVsdE9wZW4oaWQsIG9wdHMpOw0KICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgIC8vY2xvc2UgaXQgaWYgbm90IGRlZmF1bHRlZCB0byBvcGVuDQogICAgICAgICAgICAgICAgaWYgKGRPcGVuSW5kZXggPT09IGZhbHNlKSB7DQoNCiAgICAgICAgICAgICAgICAgICAgJHRoaXMuYWRkQ2xhc3Mob3B0cy5jc3NDbG9zZSk7DQogICAgICAgICAgICAgICAgICAgIG9wdHMubG9hZENsb3NlKCR0aGlzLCBvcHRzKTsNCg0KICAgICAgICAgICAgICAgIH0gZWxzZSB7IC8vaXRzIGEgZGVmYXVsdCBvcGVuLCBvcGVuIGl0DQoNCiAgICAgICAgICAgICAgICAgICAgJHRoaXMuYWRkQ2xhc3Mob3B0cy5jc3NPcGVuKTsNCiAgICAgICAgICAgICAgICAgICAgb3B0cy5sb2FkT3BlbigkdGhpcywgb3B0cyk7DQogICAgICAgICAgICAgICAgICAgIG9wZW5lZC5wdXNoKGlkKTsNCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgIH0gZWxzZSB7IC8vY2FuIHVzZSBjb29raWVzLCB1c2UgdGhlbSBub3cNCg0KICAgICAgICAgICAgICAgIC8vaGFzIGEgY29va2llIGJlZW4gc2V0LCB0aGlzIG92ZXJyaWRlcyBkZWZhdWx0IG9wZW4NCiAgICAgICAgICAgICAgICBpZiAoaXNzZXRDb29raWUob3B0cykpIHsNCg0KICAgICAgICAgICAgICAgICAgICB2YXIgY29va2llSW5kZXggPSBpbkNvb2tpZShpZCwgb3B0cyk7DQoNCiAgICAgICAgICAgICAgICAgICAgaWYgKGNvb2tpZUluZGV4ID09PSBmYWxzZSkgew0KDQogICAgICAgICAgICAgICAgICAgICAgICAkdGhpcy5hZGRDbGFzcyhvcHRzLmNzc0Nsb3NlKTsNCiAgICAgICAgICAgICAgICAgICAgICAgIG9wdHMubG9hZENsb3NlKCR0aGlzLCBvcHRzKTsNCg0KICAgICAgICAgICAgICAgICAgICB9IGVsc2Ugew0KDQogICAgICAgICAgICAgICAgICAgICAgICAkdGhpcy5hZGRDbGFzcyhvcHRzLmNzc09wZW4pOw0KICAgICAgICAgICAgICAgICAgICAgICAgb3B0cy5sb2FkT3BlbigkdGhpcywgb3B0cyk7DQogICAgICAgICAgICAgICAgICAgICAgICBvcGVuZWQucHVzaChpZCk7DQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIH0gZWxzZSB7IC8vYSBjb29raWUgaGFzbid0IGJlZW4gc2V0IG9wZW4gZGVmYXVsdHMsIGFkZCB0aGVtIHRvIG9wZW5lZCBhcnJheQ0KDQogICAgICAgICAgICAgICAgICAgIGRPcGVuSW5kZXggPSBpbkRlZmF1bHRPcGVuKGlkLCBvcHRzKTsNCg0KICAgICAgICAgICAgICAgICAgICBpZiAoZE9wZW5JbmRleCA9PT0gZmFsc2UpIHsNCg0KICAgICAgICAgICAgICAgICAgICAgICAgJHRoaXMuYWRkQ2xhc3Mob3B0cy5jc3NDbG9zZSk7DQogICAgICAgICAgICAgICAgICAgICAgICBvcHRzLmxvYWRDbG9zZSgkdGhpcywgb3B0cyk7DQoNCiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsNCg0KICAgICAgICAgICAgICAgICAgICAgICAgJHRoaXMuYWRkQ2xhc3Mob3B0cy5jc3NPcGVuKTsNCiAgICAgICAgICAgICAgICAgICAgICAgIG9wdHMubG9hZE9wZW4oJHRoaXMsIG9wdHMpOw0KICAgICAgICAgICAgICAgICAgICAgICAgb3BlbmVkLnB1c2goaWQpOw0KICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9KTsNCiAgICAgICAgDQogICAgICAgIC8vbm93IHRoYXQgdGhlIGxvb3AgaXMgZG9uZSwgc2V0IHRoZSBjb29raWUNCiAgICAgICAgaWYgKG9wZW5lZC5sZW5ndGggPiAwICYmIHVzZUNvb2tpZXMob3B0cykpIHsNCg0KICAgICAgICAgICAgc2V0Q29va2llKG9wZW5lZC50b1N0cmluZygpLCBvcHRzKTsNCg0KICAgICAgICB9IGVsc2UgeyAvL3RoZXJlIGFyZSBub25lIG9wZW4sIHNldCBjb29raWUNCg0KICAgICAgICAgICAgc2V0Q29va2llKCcnLCBvcHRzKTsNCiAgICAgICAgfQ0KICAgICAgICANCiAgICAgICAgcmV0dXJuIG9iajsNCiAgICB9DQogICAgDQogICAgLy9sb2FkIG9wdHMgZnJvbSBvYmplY3QNCiAgICBmdW5jdGlvbiBsb2FkT3B0cygkdGhpcykgew0KICAgICAgICByZXR1cm4gJHRoaXMuZGF0YSgnY29sbGFwc2libGUtb3B0cycpOw0KICAgIH0NCiAgICANCiAgICAvL3NhdmUgb3B0cyBpbnRvIG9iamVjdA0KICAgIGZ1bmN0aW9uIHNhdmVPcHRzKCR0aGlzLCBvcHRzKSB7DQogICAgICAgIHJldHVybiAkdGhpcy5kYXRhKCdjb2xsYXBzaWJsZS1vcHRzJywgb3B0cyk7DQogICAgfQ0KICAgIA0KICAgIC8vcmV0dXJucyB0cnVlIGlmIG9iamVjdCBpcyBvcGVuZWQNCiAgICBmdW5jdGlvbiBjb2xsYXBzZWQoJHRoaXMsIG9wdHMpIHsNCiAgICAgICAgcmV0dXJuICR0aGlzLmhhc0NsYXNzKG9wdHMuY3NzQ2xvc2UpOw0KICAgIH0NCiAgICANCiAgICAvL2hpZGVzIGEgY29sbGFwc2libGUNCiAgICBmdW5jdGlvbiBjbG9zZSgkdGhpcywgb3B0cykgew0KDQogICAgICAgIC8vZ2l2ZSB0aGUgcHJvcGVyIGNsYXNzIHRvIHRoZSBsaW5rZWQgZWxlbWVudA0KICAgICAgICAkdGhpcy5hZGRDbGFzcyhvcHRzLmNzc0Nsb3NlKS5yZW1vdmVDbGFzcyhvcHRzLmNzc09wZW4pOw0KICAgICAgICANCiAgICAgICAgLy9jbG9zZSB0aGUgZWxlbWVudA0KICAgICAgICBvcHRzLmFuaW1hdGVDbG9zZSgkdGhpcywgb3B0cyk7DQogICAgICAgIA0KICAgICAgICAvL2RvIGNvb2tpZXMgaWYgcGx1Z2luIGF2YWlsYWJsZQ0KICAgICAgICBpZiAodXNlQ29va2llcyhvcHRzKSkgew0KICAgICAgICAgICAgLy8gc3BsaXQgdGhlIGNvb2tpZU9wZW4gc3RyaW5nIGJ5ICIsIg0KICAgICAgICAgICAgdmFyIGlkID0gJHRoaXMuYXR0cignaWQnKTsNCiAgICAgICAgICAgIHVuc2V0Q29va2llSWQoaWQsIG9wdHMpOw0KICAgICAgICB9DQogICAgfQ0KICAgIA0KICAgIC8vb3BlbnMgYSBjb2xsYXBzaWJsZQ0KICAgIGZ1bmN0aW9uIG9wZW4oJHRoaXMsIG9wdHMpIHsNCg0KICAgICAgICAvL2dpdmUgdGhlIHByb3BlciBjbGFzcyB0byB0aGUgbGlua2VkIGVsZW1lbnQNCiAgICAgICAgJHRoaXMucmVtb3ZlQ2xhc3Mob3B0cy5jc3NDbG9zZSkuYWRkQ2xhc3Mob3B0cy5jc3NPcGVuKTsNCiAgICAgICAgDQogICAgICAgIC8vb3BlbiB0aGUgZWxlbWVudA0KICAgICAgICBvcHRzLmFuaW1hdGVPcGVuKCR0aGlzLCBvcHRzKTsNCiAgICAgICAgDQogICAgICAgIC8vZG8gY29va2llcyBpZiBwbHVnaW4gYXZhaWxhYmxlDQogICAgICAgIGlmICh1c2VDb29raWVzKG9wdHMpKSB7DQoNCiAgICAgICAgICAgIC8vIHNwbGl0IHRoZSBjb29raWVPcGVuIHN0cmluZyBieSAiLCINCiAgICAgICAgICAgIHZhciBpZCA9ICR0aGlzLmF0dHIoJ2lkJyk7DQogICAgICAgICAgICBhcHBlbmRDb29raWUoaWQsIG9wdHMpOw0KICAgICAgICB9DQogICAgfQ0KICAgIA0KICAgIC8vdG9nZ2xlIGEgY29sbGFwc2libGUgb24gYW4gZXZlbnQNCiAgICBmdW5jdGlvbiB0b2dnbGUoJHRoaXMsIG9wdHMpIHsNCg0KICAgICAgICBpZiAoY29sbGFwc2VkKCR0aGlzLCBvcHRzKSkgew0KDQogICAgICAgICAgICAvL29wZW4gYSBjbG9zZWQgZWxlbWVudA0KICAgICAgICAgICAgb3BlbigkdGhpcywgb3B0cyk7DQoNCiAgICAgICAgfSBlbHNlIHsNCg0KICAgICAgICAgICAgLy9jbG9zZSBhbiBvcGVuIGVsZW1lbnQNCiAgICAgICAgICAgIGNsb3NlKCR0aGlzLCBvcHRzKTsNCiAgICAgICAgfQ0KICAgICAgICANCiAgICAgICAgcmV0dXJuIGZhbHNlOw0KICAgIH0NCg0KICAgIC8vb3BlbiBhbGwgY2xvc2VkIGNvbnRhaW5lcnMNCiAgICBmdW5jdGlvbiBvcGVuQWxsKCR0aGlzLCBvcHRzKSB7DQoNCiAgICAgICAgLy8gbG9vcCB0aHJvdWdoIGFsbCBjb250YWluZXIgZWxlbWVudHMNCiAgICAgICAgJC5lYWNoKCR0aGlzLCBmdW5jdGlvbihlbGVtLCB2YWx1ZSkgew0KDQogICAgICAgICAgICBpZiAoY29sbGFwc2VkKCQodmFsdWUpLCBvcHRzKSkgew0KDQogICAgICAgICAgICAgICAgLy9vcGVuIGEgY2xvc2VkIGVsZW1lbnQNCiAgICAgICAgICAgICAgICBvcGVuKCQodmFsdWUpLCBvcHRzKTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfSk7DQogICAgfQ0KDQogICAgLy9jbG9zZSBhbGwgb3BlbiBjb250YWluZXJzDQogICAgZnVuY3Rpb24gY2xvc2VBbGwoJHRoaXMsIG9wdHMpIHsNCg0KICAgICAgICAkLmVhY2goJHRoaXMsIGZ1bmN0aW9uKGVsZW0sIHZhbHVlKSB7DQoNCiAgICAgICAgICAgIGlmICghY29sbGFwc2VkKCQodmFsdWUpLCBvcHRzKSkgew0KDQogICAgICAgICAgICAgICAgLy9jbG9zZSBhbiBvcGVuZWQgZWxlbWVudA0KICAgICAgICAgICAgICAgIGNsb3NlKCQodmFsdWUpLCBvcHRzKTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfSk7DQogICAgfQ0KICAgIA0KICAgIC8vdXNlIGNvb2tpZXM/DQogICAgZnVuY3Rpb24gdXNlQ29va2llcyhvcHRzKSB7DQoNCiAgICAgICAgLy9yZXR1cm4gZmFsc2UgaWYgY29va2llIHBsdWdpbiBub3QgcHJlc2VudCBvciBpZiBhIGNvb2tpZSBuYW1lIGlzIG5vdCBwcm92aWRlZA0KICAgICAgICBpZiAoISQuY29va2llIHx8IG9wdHMuY29va2llTmFtZSA9PSAnJykgew0KICAgICAgICAgICAgcmV0dXJuIGZhbHNlOw0KICAgICAgICB9DQogICAgICAgIA0KICAgICAgICAvL3dlIGNhbiB1c2UgY29va2llcw0KICAgICAgICByZXR1cm4gdHJ1ZTsNCiAgICB9DQogICAgDQogICAgLy9hcHBlbmQgYSBjb2xsYXBzaWJsZSB0byB0aGUgY29va2llDQogICAgZnVuY3Rpb24gYXBwZW5kQ29va2llKHZhbHVlLCBvcHRzKSB7DQoNCiAgICAgICAgLy9jaGVjayBpZiBjb29raWUgcGx1Z2luIGF2YWlsYWJsZSBhbmQgY29va2llbmFtZSBpcyBzZXQNCiAgICAgICAgaWYgKCF1c2VDb29raWVzKG9wdHMpKSB7DQogICAgICAgICAgICByZXR1cm4gZmFsc2U7DQogICAgICAgIH0NCiAgICAgICAgDQogICAgICAgIC8vZG9lcyBhIGNvb2tpZSBhbHJlYWR5IGV4aXN0DQogICAgICAgIGlmICghaXNzZXRDb29raWUob3B0cykpIHsNCg0KICAgICAgICAgICAgLy9ubyBsZXRzIHNldCBvbmUNCiAgICAgICAgICAgIHNldENvb2tpZSh2YWx1ZSwgb3B0cyk7DQogICAgICAgICAgICByZXR1cm4gdHJ1ZTsNCiAgICAgICAgfQ0KICAgICAgICANCiAgICAgICAgLy9jb29raWUgYWxyZWFkeSBleGlzdHMsIGlzIHRoaXMgY29sbGFwc2libGUgYWxyZWFkeSBzZXQ/DQogICAgICAgIGlmIChpbkNvb2tpZSh2YWx1ZSwgb3B0cykpIHsgLy95ZXMsIHF1aXQgaGVyZQ0KICAgICAgICAgICAgcmV0dXJuIHRydWU7DQogICAgICAgIH0NCiAgICAgICAgDQogICAgICAgIC8vZ2V0IHRoZSBjb29raWUNCiAgICAgICAgdmFyIGNvb2tpZSA9IGRlY29kZVVSSUNvbXBvbmVudCgkLmNvb2tpZShvcHRzLmNvb2tpZU5hbWUpKTsNCg0KICAgICAgICAvL3R1cm4gaXQgaW50byBhbiBhcnJheQ0KICAgICAgICB2YXIgY29va2llQXJyYXkgPSBjb29raWUuc3BsaXQoJywnKTsNCiAgICAgICAgDQogICAgICAgIC8vYWRkIGl0IHRvIGxpc3QNCiAgICAgICAgY29va2llQXJyYXkucHVzaCh2YWx1ZSk7DQogICAgICAgIA0KICAgICAgICAvL3NhdmUgaXQNCiAgICAgICAgc2V0Q29va2llKGNvb2tpZUFycmF5LnRvU3RyaW5nKCksIG9wdHMpOw0KICAgICAgICANCiAgICAgICAgcmV0dXJuIHRydWU7ICAgIA0KICAgIH0NCiAgICANCiAgICAvL3Vuc2V0IGEgY29sbGFwc2libGUgZnJvbSB0aGUgY29va2llDQogICAgZnVuY3Rpb24gdW5zZXRDb29raWVJZCh2YWx1ZSwgb3B0cykNCiAgICB7DQogICAgICAgIC8vY2hlY2sgaWYgY29va2llIHBsdWdpbiBhdmFpbGFibGUgYW5kIGNvb2tpZW5hbWUgaXMgc2V0DQogICAgICAgIGlmICghdXNlQ29va2llcyhvcHRzKSkgew0KICAgICAgICAgICAgcmV0dXJuIGZhbHNlOw0KICAgICAgICB9DQogICAgICAgIA0KICAgICAgICAvL2lmIGl0cyBub3QgdGhlcmUgd2UgZG9uJ3QgbmVlZCB0byByZW1vdmUgZnJvbSBpdA0KICAgICAgICBpZiAoIWlzc2V0Q29va2llKG9wdHMpKSB7IC8vcXVpdCBoZXJlLCBkb24ndCBoYXZlIGEgY29va2llIA0KICAgICAgICAgICAgcmV0dXJuIHRydWU7DQogICAgICAgIH0NCiAgICAgICAgDQogICAgICAgIC8vd2UgaGF2ZSBhIGNvb2tpZSwgaXMgdGhpcyBjb2xsYXBzaWJsZSBpbiBpdA0KICAgICAgICB2YXIgY29va2llSW5kZXggPSBpbkNvb2tpZSh2YWx1ZSwgb3B0cyk7DQogICAgICAgIGlmIChjb29raWVJbmRleCA9PT0gZmFsc2UpIHsgLy9ub3QgaW4gdGhlIGNvb2tpZSBxdWl0IGhlcmUNCiAgICAgICAgICAgIHJldHVybiB0cnVlOw0KICAgICAgICB9DQogICAgICAgIA0KICAgICAgICAvL3N0aWxsIGhlcmUgZ2V0IHRoZSBjb29raWUNCiAgICAgICAgdmFyIGNvb2tpZSA9IGRlY29kZVVSSUNvbXBvbmVudCgkLmNvb2tpZShvcHRzLmNvb2tpZU5hbWUpKTsNCiAgICAgICAgDQogICAgICAgIC8vdHVybiBpdCBpbnRvIGFuIGFycmF5DQogICAgICAgIHZhciBjb29raWVBcnJheSA9IGNvb2tpZS5zcGxpdCgnLCcpOw0KICAgICAgICANCiAgICAgICAgLy9sZXRzIHBvcCBpdCBvdXQgb2YgdGhlIGFycmF5DQogICAgICAgIGNvb2tpZUFycmF5LnNwbGljZShjb29raWVJbmRleCwgMSk7DQoNCiAgICAgICAgLy9vdmVyd3JpdGUNCiAgICAgICAgc2V0Q29va2llKGNvb2tpZUFycmF5LnRvU3RyaW5nKCksIG9wdHMpOw0KDQogICAgICAgIHJldHVybiB0cnVlDQogICAgfQ0KICAgIA0KICAgIC8vc2V0IGEgY29va2llDQogICAgZnVuY3Rpb24gc2V0Q29va2llKHZhbHVlLCBvcHRzKQ0KICAgIHsNCiAgICAgICAgLy9jYW4gdXNlIHRoZSBjb29raWUgcGx1Z2luDQogICAgICAgIGlmICghdXNlQ29va2llcyhvcHRzKSkgeyAvL25vLCBxdWl0IGhlcmUNCiAgICAgICAgICAgIHJldHVybiBmYWxzZTsNCiAgICAgICAgfQ0KICAgICAgICANCiAgICAgICAgLy9jb29raWUgcGx1Z2luIGlzIGF2YWlsYWJsZSwgbGV0cyBzZXQgdGhlIGNvb2tpZQ0KICAgICAgICAkLmNvb2tpZShvcHRzLmNvb2tpZU5hbWUsIHZhbHVlLCBvcHRzLmNvb2tpZU9wdGlvbnMpOw0KDQogICAgICAgIHJldHVybiB0cnVlOw0KICAgIH0NCiAgICANCiAgICAvL2NoZWNrIGlmIGEgY29sbGFwc2libGUgaXMgaW4gdGhlIGNvb2tpZQ0KICAgIGZ1bmN0aW9uIGluQ29va2llKHZhbHVlLCBvcHRzKQ0KICAgIHsNCiAgICAgICAgLy9jYW4gdXNlIHRoZSBjb29raWUgcGx1Z2luDQogICAgICAgIGlmICghdXNlQ29va2llcyhvcHRzKSkgew0KICAgICAgICAgICAgcmV0dXJuIGZhbHNlOw0KICAgICAgICB9DQogICAgICAgIA0KICAgICAgICAvL2lmIGl0cyBub3QgdGhlcmUgd2UgZG9uJ3QgbmVlZCB0byByZW1vdmUgZnJvbSBpdA0KICAgICAgICBpZiAoIWlzc2V0Q29va2llKG9wdHMpKSB7IC8vcXVpdCBoZXJlLCBkb24ndCBoYXZlIGEgY29va2llIA0KICAgICAgICAgICAgcmV0dXJuIGZhbHNlOw0KICAgICAgICB9DQoNCiAgICAgICAgLy9nZXQgdGhlIGNvb2tpZSB2YWx1ZQ0KICAgICAgICB2YXIgY29va2llID0gZGVjb2RlVVJJQ29tcG9uZW50KCQuY29va2llKG9wdHMuY29va2llTmFtZSkpOw0KICAgICAgICANCiAgICAgICAgLy90dXJuIGl0IGludG8gYW4gYXJyYXkNCiAgICAgICAgdmFyIGNvb2tpZUFycmF5ID0gY29va2llLnNwbGl0KCcsJyk7DQogICAgICAgIA0KICAgICAgICAvL2dldCB0aGUgaW5kZXggb2YgdGhlIGNvbGxhcHNpYmxlIGlmIGluIHRoZSBjb29raWUgYXJyYXkNCiAgICAgICAgdmFyIGNvb2tpZUluZGV4ID0gJC5pbkFycmF5KHZhbHVlLCBjb29raWVBcnJheSk7DQogICAgICAgIA0KICAgICAgICAvL2lzIHRoaXMgdmFsdWUgaW4gdGhlIGNvb2tpZSBhcnJheQ0KICAgICAgICBpZiAoY29va2llSW5kZXggPT0gLTEpIHsgLy9ubywgcXVpdCBoZXJlDQogICAgICAgICAgICByZXR1cm4gZmFsc2U7DQogICAgICAgIH0NCiAgICAgICAgDQogICAgICAgIHJldHVybiBjb29raWVJbmRleDsNCiAgICB9DQogICAgDQogICAgLy9jaGVjayBpZiBhIGNvb2tpZSBpcyBzZXQNCiAgICBmdW5jdGlvbiBpc3NldENvb2tpZShvcHRzKQ0KICAgIHsNCiAgICAgICAgLy9jYW4gd2UgdXNlIHRoZSBjb29raWUgcGx1Z2luDQogICAgICAgIGlmICghdXNlQ29va2llcyhvcHRzKSkgeyAvL25vLCBxdWl0IGhlcmUNCiAgICAgICAgICAgIHJldHVybiBmYWxzZTsNCiAgICAgICAgfQ0KICAgICAgICANCiAgICAgICAgLy9pcyB0aGUgY29va2llIHNldA0KICAgICAgICBpZiAoJC5jb29raWUob3B0cy5jb29raWVOYW1lKSA9PT0gbnVsbCkgeyAvL25vLCBxdWl0IGhlcmUNCiAgICAgICAgICAgIHJldHVybiBmYWxzZTsNCiAgICAgICAgfQ0KICAgICAgICANCiAgICAgICAgcmV0dXJuIHRydWU7DQogICAgfQ0KICAgIA0KICAgIC8vY2hlY2sgaWYgYSBjb2xsYXBzaWJsZSBpcyBpbiB0aGUgbGlzdCBvZiBjb2xsYXBzaWJsZXMgdG8gYmUgb3BlbmVkIGJ5IGRlZmF1bHQNCiAgICBmdW5jdGlvbiBpbkRlZmF1bHRPcGVuKGlkLCBvcHRzKQ0KICAgIHsNCiAgICAgICAgLy9nZXQgdGhlIGFycmF5IG9mIG9wZW4gY29sbGFwc2libGVzDQogICAgICAgIHZhciBkZWZhdWx0T3BlbiA9IGdldERlZmF1bHRPcGVuKG9wdHMpOw0KICAgICAgICANCiAgICAgICAgLy9pcyBpdCBpbiB0aGUgZGVmYXVsdCBvcGVuIGFycmF5DQogICAgICAgIHZhciBpbmRleCA9ICQuaW5BcnJheShpZCwgZGVmYXVsdE9wZW4pOw0KICAgICAgICBpZiAoaW5kZXggPT0gLTEpIHsgLy9ub3BlLCBxdWl0IGhlcmUNCiAgICAgICAgICAgIHJldHVybiBmYWxzZTsNCiAgICAgICAgfQ0KICAgICAgICANCiAgICAgICAgcmV0dXJuIGluZGV4Ow0KICAgIH0NCiAgICANCiAgICAvL2dldCB0aGUgZGVmYXVsdCBvcGVuIGNvbGxhcHNpYmxlcyBhbmQgcmV0dXJuIGFycmF5DQogICAgZnVuY3Rpb24gZ2V0RGVmYXVsdE9wZW4ob3B0cykNCiAgICB7DQogICAgICAgIC8vaW5pdGlhbGl6ZSBhbiBlbXB0eSBhcnJheQ0KICAgICAgICB2YXIgZGVmYXVsdE9wZW4gPSBbXTsNCiAgICAgICAgDQogICAgICAgIC8vaWYgdGhlcmUgaXMgYSBsaXN0LCBsZXRzIHNwbGl0IGl0IGludG8gYW4gYXJyYXkNCiAgICAgICAgaWYgKG9wdHMuZGVmYXVsdE9wZW4gIT0gJycpIHsNCiAgICAgICAgICAgIGRlZmF1bHRPcGVuID0gb3B0cy5kZWZhdWx0T3Blbi5zcGxpdCgnLCcpOw0KICAgICAgICB9DQogICAgICAgIA0KICAgICAgICByZXR1cm4gZGVmYXVsdE9wZW47DQogICAgfQ0KICAgIA0KICAgIC8vIHNldHRpbmdzDQogICAgJC5mbi5jb2xsYXBzaWJsZS5kZWZhdWx0cyA9IHsNCiAgICAgICAgY3NzQ2xvc2U6ICdjb2xsYXBzZS1jbG9zZScsIC8vY2xhc3MgeW91IHdhbnQgdG8gYXNzaWduIHRvIGEgY2xvc2VkIGNvbGxhcHNpYmxlIGhlYWRlcg0KICAgICAgICBjc3NPcGVuOiAnY29sbGFwc2Utb3BlbicsIC8vY2xhc3MgeW91IHdhbnQgdG8gYXNzaWduIGFuIG9wZW5lZCBjb2xsYXBzaWJsZSBoZWFkZXINCiAgICAgICAgY29va2llTmFtZTogJ2NvbGxhcHNpYmxlJywgLy9uYW1lIG9mIHRoZSBjb29raWUgeW91IHdhbnQgdG8gc2V0IGZvciB0aGlzIGNvbGxhcHNpYmxlDQogICAgICAgIGNvb2tpZU9wdGlvbnM6IHsgLy9jb29raWUgb3B0aW9ucywgc2VlIGNvb2tpZSBwbHVnaW4gZm9yIGRldGFpbHMNCiAgICAgICAgICAgIHBhdGg6ICcvJywNCiAgICAgICAgICAgIGV4cGlyZXM6IDcsDQogICAgICAgICAgICBkb21haW46ICcnLA0KICAgICAgICAgICAgc2VjdXJlOiAnJw0KICAgICAgICB9LA0KICAgICAgICBkZWZhdWx0T3BlbjogJycsIC8vY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgaGVhZGVyIGlkcyB0aGF0IHlvdSB3YW50IG9wZW5lZCBieSBkZWZhdWx0DQogICAgICAgIHNwZWVkOiAnc2xvdycsIC8vc3BlZWQgb2YgdGhlIHNsaWRlIGVmZmVjdA0KICAgICAgICBiaW5kOiAnY2xpY2snLCAvL2V2ZW50IHRvIGJpbmQgdG8sIHN1cHBvcnRzIGNsaWNrLCBkYmxjbGljaywgbW91c2VvdmVyIGFuZCBtb3VzZWVudGVyDQogICAgICAgIGFuaW1hdGVPcGVuOiBmdW5jdGlvbiAoZWxlbSwgb3B0cykgeyAvL3JlcGxhY2UgdGhlIHN0YW5kYXJkIHNsaWRlVXAgd2l0aCBjdXN0b20gZnVuY3Rpb24NCiAgICAgICAgICAgIGVsZW0ubmV4dCgpLnN0b3AodHJ1ZSwgdHJ1ZSkuc2xpZGVEb3duKG9wdHMuc3BlZWQpOw0KICAgICAgICB9LA0KICAgICAgICBhbmltYXRlQ2xvc2U6IGZ1bmN0aW9uIChlbGVtLCBvcHRzKSB7IC8vcmVwbGFjZSB0aGUgc3RhbmRhcmQgc2xpZGVEb3duIHdpdGggY3VzdG9tIGZ1bmN0aW9uDQogICAgICAgICAgICBlbGVtLm5leHQoKS5zdG9wKHRydWUsIHRydWUpLnNsaWRlVXAob3B0cy5zcGVlZCk7DQogICAgICAgIH0sDQogICAgICAgIGxvYWRPcGVuOiBmdW5jdGlvbiAoZWxlbSwgb3B0cykgeyAvL3JlcGxhY2UgdGhlIGRlZmF1bHQgb3BlbiBzdGF0ZSB3aXRoIGN1c3RvbSBmdW5jdGlvbg0KICAgICAgICAgICAgZWxlbS5uZXh0KCkuc2hvdygpOw0KICAgICAgICB9LA0KICAgICAgICBsb2FkQ2xvc2U6IGZ1bmN0aW9uIChlbGVtLCBvcHRzKSB7IC8vcmVwbGFjZSB0aGUgZGVmYXVsdCBjbG9zZSBzdGF0ZSB3aXRoIGN1c3RvbSBmdW5jdGlvbg0KICAgICAgICAgICAgZWxlbS5uZXh0KCkuaGlkZSgpOw0KICAgICAgICB9DQogICAgfTsNCg0KfSkoalF1ZXJ5KTs=]]></data>
	</file>
	<file>
	  <filename>/lib/jquery/jquery.cookie.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[LyohDQogKiBqUXVlcnkgQ29va2llIFBsdWdpbiB2MS4zLjENCiAqIGh0dHBzOi8vZ2l0aHViLmNvbS9jYXJoYXJ0bC9qcXVlcnktY29va2llDQogKg0KICogQ29weXJpZ2h0IDIwMTMgS2xhdXMgSGFydGwNCiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZQ0KICovDQooZnVuY3Rpb24gKGZhY3RvcnkpIHsNCiAgICBpZiAodHlwZW9mIGRlZmluZSA9PT0gJ2Z1bmN0aW9uJyAmJiBkZWZpbmUuYW1kKSB7DQogICAgICAgIC8vIEFNRC4gUmVnaXN0ZXIgYXMgYW5vbnltb3VzIG1vZHVsZS4NCiAgICAgICAgZGVmaW5lKFsnanF1ZXJ5J10sIGZhY3RvcnkpOw0KICAgIH0gZWxzZSB7DQogICAgICAgIC8vIEJyb3dzZXIgZ2xvYmFscy4NCiAgICAgICAgZmFjdG9yeShqUXVlcnkpOw0KICAgIH0NCn0oZnVuY3Rpb24gKCQpIHsNCg0KICAgIHZhciBwbHVzZXMgPSAvXCsvZzsNCg0KICAgIGZ1bmN0aW9uIHJhdyhzKSB7DQogICAgICAgIHJldHVybiBzOw0KICAgIH0NCg0KICAgIGZ1bmN0aW9uIGRlY29kZWQocykgew0KICAgICAgICByZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KHMucmVwbGFjZShwbHVzZXMsICcgJykpOw0KICAgIH0NCg0KICAgIGZ1bmN0aW9uIGNvbnZlcnRlZChzKSB7DQogICAgICAgIGlmIChzLmluZGV4T2YoJyInKSA9PT0gMCkgew0KICAgICAgICAgICAgLy8gVGhpcyBpcyBhIHF1b3RlZCBjb29raWUgYXMgYWNjb3JkaW5nIHRvIFJGQzIwNjgsIHVuZXNjYXBlDQogICAgICAgICAgICBzID0gcy5zbGljZSgxLCAtMSkucmVwbGFjZSgvXFwiL2csICciJykucmVwbGFjZSgvXFxcXC9nLCAnXFwnKTsNCiAgICAgICAgfQ0KICAgICAgICB0cnkgew0KICAgICAgICAgICAgcmV0dXJuIGNvbmZpZy5qc29uID8gSlNPTi5wYXJzZShzKSA6IHM7DQogICAgICAgIH0gY2F0Y2goZXIpIHt9DQogICAgfQ0KDQogICAgdmFyIGNvbmZpZyA9ICQuY29va2llID0gZnVuY3Rpb24gKGtleSwgdmFsdWUsIG9wdGlvbnMpIHsNCg0KICAgICAgICAvLyB3cml0ZQ0KICAgICAgICBpZiAodmFsdWUgIT09IHVuZGVmaW5lZCkgew0KICAgICAgICAgICAgb3B0aW9ucyA9ICQuZXh0ZW5kKHt9LCBjb25maWcuZGVmYXVsdHMsIG9wdGlvbnMpOw0KDQogICAgICAgICAgICBpZiAodHlwZW9mIG9wdGlvbnMuZXhwaXJlcyA9PT0gJ251bWJlcicpIHsNCiAgICAgICAgICAgICAgICB2YXIgZGF5cyA9IG9wdGlvbnMuZXhwaXJlcywgdCA9IG9wdGlvbnMuZXhwaXJlcyA9IG5ldyBEYXRlKCk7DQogICAgICAgICAgICAgICAgdC5zZXREYXRlKHQuZ2V0RGF0ZSgpICsgZGF5cyk7DQogICAgICAgICAgICB9DQoNCiAgICAgICAgICAgIHZhbHVlID0gY29uZmlnLmpzb24gPyBKU09OLnN0cmluZ2lmeSh2YWx1ZSkgOiBTdHJpbmcodmFsdWUpOw0KDQogICAgICAgICAgICByZXR1cm4gKGRvY3VtZW50LmNvb2tpZSA9IFsNCiAgICAgICAgICAgICAgICBjb25maWcucmF3ID8ga2V5IDogZW5jb2RlVVJJQ29tcG9uZW50KGtleSksDQogICAgICAgICAgICAgICAgJz0nLA0KICAgICAgICAgICAgICAgIGNvbmZpZy5yYXcgPyB2YWx1ZSA6IGVuY29kZVVSSUNvbXBvbmVudCh2YWx1ZSksDQogICAgICAgICAgICAgICAgb3B0aW9ucy5leHBpcmVzID8gJzsgZXhwaXJlcz0nICsgb3B0aW9ucy5leHBpcmVzLnRvVVRDU3RyaW5nKCkgOiAnJywgLy8gdXNlIGV4cGlyZXMgYXR0cmlidXRlLCBtYXgtYWdlIGlzIG5vdCBzdXBwb3J0ZWQgYnkgSUUNCiAgICAgICAgICAgICAgICBvcHRpb25zLnBhdGggICAgPyAnOyBwYXRoPScgKyBvcHRpb25zLnBhdGggOiAnJywNCiAgICAgICAgICAgICAgICBvcHRpb25zLmRvbWFpbiAgPyAnOyBkb21haW49JyArIG9wdGlvbnMuZG9tYWluIDogJycsDQogICAgICAgICAgICAgICAgb3B0aW9ucy5zZWN1cmUgID8gJzsgc2VjdXJlJyA6ICcnDQogICAgICAgICAgICBdLmpvaW4oJycpKTsNCiAgICAgICAgfQ0KDQogICAgICAgIC8vIHJlYWQNCiAgICAgICAgdmFyIGRlY29kZSA9IGNvbmZpZy5yYXcgPyByYXcgOiBkZWNvZGVkOw0KICAgICAgICB2YXIgY29va2llcyA9IGRvY3VtZW50LmNvb2tpZS5zcGxpdCgnOyAnKTsNCiAgICAgICAgdmFyIHJlc3VsdCA9IGtleSA/IHVuZGVmaW5lZCA6IHt9Ow0KICAgICAgICBmb3IgKHZhciBpID0gMCwgbCA9IGNvb2tpZXMubGVuZ3RoOyBpIDwgbDsgaSsrKSB7DQogICAgICAgICAgICB2YXIgcGFydHMgPSBjb29raWVzW2ldLnNwbGl0KCc9Jyk7DQogICAgICAgICAgICB2YXIgbmFtZSA9IGRlY29kZShwYXJ0cy5zaGlmdCgpKTsNCiAgICAgICAgICAgIHZhciBjb29raWUgPSBkZWNvZGUocGFydHMuam9pbignPScpKTsNCg0KICAgICAgICAgICAgaWYgKGtleSAmJiBrZXkgPT09IG5hbWUpIHsNCiAgICAgICAgICAgICAgICByZXN1bHQgPSBjb252ZXJ0ZWQoY29va2llKTsNCiAgICAgICAgICAgICAgICBicmVhazsNCiAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgaWYgKCFrZXkpIHsNCiAgICAgICAgICAgICAgICByZXN1bHRbbmFtZV0gPSBjb252ZXJ0ZWQoY29va2llKTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfQ0KDQogICAgICAgIHJldHVybiByZXN1bHQ7DQogICAgfTsNCg0KICAgIGNvbmZpZy5kZWZhdWx0cyA9IHt9Ow0KDQogICAgJC5yZW1vdmVDb29raWUgPSBmdW5jdGlvbiAoa2V5LCBvcHRpb25zKSB7DQogICAgICAgIGlmICgkLmNvb2tpZShrZXkpICE9PSB1bmRlZmluZWQpIHsNCiAgICAgICAgICAgIC8vIE11c3Qgbm90IGFsdGVyIG9wdGlvbnMsIHRodXMgZXh0ZW5kaW5nIGEgZnJlc2ggb2JqZWN0Li4uDQogICAgICAgICAgICAkLmNvb2tpZShrZXksICcnLCAkLmV4dGVuZCh7fSwgb3B0aW9ucywgeyBleHBpcmVzOiAtMSB9KSk7DQogICAgICAgICAgICByZXR1cm4gdHJ1ZTsNCiAgICAgICAgfQ0KICAgICAgICByZXR1cm4gZmFsc2U7DQogICAgfTsNCg0KfSkpOw==]]></data>
	</file>
	<file>
	  <filename>/lib/jquery/jquery.tablednd.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[LyoqCiAqIFRhYmxlRG5EIHBsdWctaW4gZm9yIEpRdWVyeSwgYWxsb3dzIHlvdSB0byBkcmFnIGFuZCBkcm9wIHRhYmxlIHJvd3MKICogWW91IGNhbiBzZXQgdXAgdmFyaW91cyBvcHRpb25zIHRvIGNvbnRyb2wgaG93IHRoZSBzeXN0ZW0gd2lsbCB3b3JrCiAqIENvcHlyaWdodCAoYykgRGVuaXMgSG93bGV0dCA8ZGVuaXNoQGlzb2NyYS5jb20+CiAqIExpY2Vuc2VkIGxpa2UgalF1ZXJ5LCBzZWUgaHR0cDovL2RvY3MuanF1ZXJ5LmNvbS9MaWNlbnNlLgogKgogKiBDb25maWd1cmF0aW9uIG9wdGlvbnM6CiAqIAogKiBvbkRyYWdTdHlsZQogKiAgICAgVGhpcyBpcyB0aGUgc3R5bGUgdGhhdCBpcyBhc3NpZ25lZCB0byB0aGUgcm93IGR1cmluZyBkcmFnLiBUaGVyZSBhcmUgbGltaXRhdGlvbnMgdG8gdGhlIHN0eWxlcyB0aGF0IGNhbiBiZQogKiAgICAgYXNzb2NpYXRlZCB3aXRoIGEgcm93IChzdWNoIGFzIHlvdSBjYW4ndCBhc3NpZ24gYSBib3JkZXItLXdlbGwgeW91IGNhbiwgYnV0IGl0IHdvbid0IGJlCiAqICAgICBkaXNwbGF5ZWQpLiAoU28gaW5zdGVhZCBjb25zaWRlciB1c2luZyBvbkRyYWdDbGFzcy4pIFRoZSBDU1Mgc3R5bGUgdG8gYXBwbHkgaXMgc3BlY2lmaWVkIGFzCiAqICAgICBhIG1hcCAoYXMgdXNlZCBpbiB0aGUgalF1ZXJ5IGNzcyguLi4pIGZ1bmN0aW9uKS4KICogb25Ecm9wU3R5bGUKICogICAgIFRoaXMgaXMgdGhlIHN0eWxlIHRoYXQgaXMgYXNzaWduZWQgdG8gdGhlIHJvdyB3aGVuIGl0IGlzIGRyb3BwZWQuIEFzIGZvciBvbkRyYWdTdHlsZSwgdGhlcmUgYXJlIGxpbWl0YXRpb25zCiAqICAgICB0byB3aGF0IHlvdSBjYW4gZG8uIEFsc28gdGhpcyByZXBsYWNlcyB0aGUgb3JpZ2luYWwgc3R5bGUsIHNvIGFnYWluIGNvbnNpZGVyIHVzaW5nIG9uRHJhZ0NsYXNzIHdoaWNoCiAqICAgICBpcyBzaW1wbHkgYWRkZWQgYW5kIHRoZW4gcmVtb3ZlZCBvbiBkcm9wLgogKiBvbkRyYWdDbGFzcwogKiAgICAgVGhpcyBjbGFzcyBpcyBhZGRlZCBmb3IgdGhlIGR1cmF0aW9uIG9mIHRoZSBkcmFnIGFuZCB0aGVuIHJlbW92ZWQgd2hlbiB0aGUgcm93IGlzIGRyb3BwZWQuIEl0IGlzIG1vcmUKICogICAgIGZsZXhpYmxlIHRoYW4gdXNpbmcgb25EcmFnU3R5bGUgc2luY2UgaXQgY2FuIGJlIGluaGVyaXRlZCBieSB0aGUgcm93IGNlbGxzIGFuZCBvdGhlciBjb250ZW50LiBUaGUgZGVmYXVsdAogKiAgICAgaXMgY2xhc3MgaXMgdERuRF93aGlsZURyYWcuIFNvIHRvIHVzZSB0aGUgZGVmYXVsdCwgc2ltcGx5IGN1c3RvbWlzZSB0aGlzIENTUyBjbGFzcyBpbiB5b3VyCiAqICAgICBzdHlsZXNoZWV0LgogKiBvbkRyb3AKICogICAgIFBhc3MgYSBmdW5jdGlvbiB0aGF0IHdpbGwgYmUgY2FsbGVkIHdoZW4gdGhlIHJvdyBpcyBkcm9wcGVkLiBUaGUgZnVuY3Rpb24gdGFrZXMgMiBwYXJhbWV0ZXJzOiB0aGUgdGFibGUKICogICAgIGFuZCB0aGUgcm93IHRoYXQgd2FzIGRyb3BwZWQuIFlvdSBjYW4gd29yayBvdXQgdGhlIG5ldyBvcmRlciBvZiB0aGUgcm93cyBieSB1c2luZwogKiAgICAgdGFibGUucm93cy4KICogb25EcmFnU3RhcnQKICogICAgIFBhc3MgYSBmdW5jdGlvbiB0aGF0IHdpbGwgYmUgY2FsbGVkIHdoZW4gdGhlIHVzZXIgc3RhcnRzIGRyYWdnaW5nLiBUaGUgZnVuY3Rpb24gdGFrZXMgMiBwYXJhbWV0ZXJzOiB0aGUKICogICAgIHRhYmxlIGFuZCB0aGUgcm93IHdoaWNoIHRoZSB1c2VyIGhhcyBzdGFydGVkIHRvIGRyYWcuCiAqIG9uQWxsb3dEcm9wCiAqICAgICBQYXNzIGEgZnVuY3Rpb24gdGhhdCB3aWxsIGJlIGNhbGxlZCBhcyBhIHJvdyBpcyBvdmVyIGFub3RoZXIgcm93LiBJZiB0aGUgZnVuY3Rpb24gcmV0dXJucyB0cnVlLCBhbGxvdyAKICogICAgIGRyb3BwaW5nIG9uIHRoYXQgcm93LCBvdGhlcndpc2Ugbm90LiBUaGUgZnVuY3Rpb24gdGFrZXMgMiBwYXJhbWV0ZXJzOiB0aGUgZHJhZ2dlZCByb3cgYW5kIHRoZSByb3cgdW5kZXIKICogICAgIHRoZSBjdXJzb3IuIEl0IHJldHVybnMgYSBib29sZWFuOiB0cnVlIGFsbG93cyB0aGUgZHJvcCwgZmFsc2UgZG9lc24ndCBhbGxvdyBpdC4KICogc2Nyb2xsQW1vdW50CiAqICAgICBUaGlzIGlzIHRoZSBudW1iZXIgb2YgcGl4ZWxzIHRvIHNjcm9sbCBpZiB0aGUgdXNlciBtb3ZlcyB0aGUgbW91c2UgY3Vyc29yIHRvIHRoZSB0b3Agb3IgYm90dG9tIG9mIHRoZQogKiAgICAgd2luZG93LiBUaGUgcGFnZSBzaG91bGQgYXV0b21hdGljYWxseSBzY3JvbGwgdXAgb3IgZG93biBhcyBhcHByb3ByaWF0ZSAodGVzdGVkIGluIElFNiwgSUU3LCBTYWZhcmksIEZGMiwKICogICAgIEZGMyBiZXRhCiAqIGRyYWdIYW5kbGUKICogICAgIFRoaXMgaXMgdGhlIG5hbWUgb2YgYSBjbGFzcyB0aGF0IHlvdSBhc3NpZ24gdG8gb25lIG9yIG1vcmUgY2VsbHMgaW4gZWFjaCByb3cgdGhhdCBpcyBkcmFnZ2FibGUuIElmIHlvdQogKiAgICAgc3BlY2lmeSB0aGlzIGNsYXNzLCB0aGVuIHlvdSBhcmUgcmVzcG9uc2libGUgZm9yIHNldHRpbmcgY3Vyc29yOiBtb3ZlIGluIHRoZSBDU1MgYW5kIG9ubHkgdGhlc2UgY2VsbHMKICogICAgIHdpbGwgaGF2ZSB0aGUgZHJhZyBiZWhhdmlvdXIuIElmIHlvdSBkbyBub3Qgc3BlY2lmeSBhIGRyYWdIYW5kbGUsIHRoZW4geW91IGdldCB0aGUgb2xkIGJlaGF2aW91ciB3aGVyZQogKiAgICAgdGhlIHdob2xlIHJvdyBpcyBkcmFnZ2FibGUuCiAqIAogKiBPdGhlciB3YXlzIHRvIGNvbnRyb2wgYmVoYXZpb3VyOgogKgogKiBBZGQgY2xhc3M9Im5vZHJvcCIgdG8gYW55IHJvd3MgZm9yIHdoaWNoIHlvdSBkb24ndCB3YW50IHRvIGFsbG93IGRyb3BwaW5nLCBhbmQgY2xhc3M9Im5vZHJhZyIgdG8gYW55IHJvd3MKICogdGhhdCB5b3UgZG9uJ3Qgd2FudCB0byBiZSBkcmFnZ2FibGUuCiAqCiAqIEluc2lkZSB0aGUgb25Ecm9wIG1ldGhvZCB5b3UgY2FuIGFsc28gY2FsbCAkLnRhYmxlRG5ELnNlcmlhbGl6ZSgpIHRoaXMgcmV0dXJucyBhIHN0cmluZyBvZiB0aGUgZm9ybQogKiA8dGFibGVJRD5bXT08cm93SUQxPiY8dGFibGVJRD5bXT08cm93SUQyPiBzbyB0aGF0IHlvdSBjYW4gc2VuZCB0aGlzIGJhY2sgdG8gdGhlIHNlcnZlci4gVGhlIHRhYmxlIG11c3QgaGF2ZQogKiBhbiBJRCBhcyBtdXN0IGFsbCB0aGUgcm93cy4KICoKICogT3RoZXIgbWV0aG9kczoKICoKICogJCgiLi4uIikudGFibGVEbkRVcGRhdGUoKSAKICogV2lsbCB1cGRhdGUgYWxsIHRoZSBtYXRjaGluZyB0YWJsZXMsIHRoYXQgaXMgaXQgd2lsbCByZWFwcGx5IHRoZSBtb3VzZWRvd24gbWV0aG9kIHRvIHRoZSByb3dzIChvciBoYW5kbGUgY2VsbHMpLgogKiBUaGlzIGlzIHVzZWZ1bCBpZiB5b3UgaGF2ZSB1cGRhdGVkIHRoZSB0YWJsZSByb3dzIHVzaW5nIEFqYXggYW5kIHlvdSB3YW50IHRvIG1ha2UgdGhlIHRhYmxlIGRyYWdnYWJsZSBhZ2Fpbi4KICogVGhlIHRhYmxlIG1haW50YWlucyB0aGUgb3JpZ2luYWwgY29uZmlndXJhdGlvbiAoc28geW91IGRvbid0IGhhdmUgdG8gc3BlY2lmeSBpdCBhZ2FpbikuCiAqCiAqICQoIi4uLiIpLnRhYmxlRG5EU2VyaWFsaXplKCkKICogV2lsbCBzZXJpYWxpemUgYW5kIHJldHVybiB0aGUgc2VyaWFsaXplZCBzdHJpbmcgYXMgYWJvdmUsIGJ1dCBmb3IgZWFjaCBvZiB0aGUgbWF0Y2hpbmcgdGFibGVzLS1zbyBpdCBjYW4gYmUKICogY2FsbGVkIGZyb20gYW55d2hlcmUgYW5kIGlzbid0IGRlcGVuZGVudCBvbiB0aGUgY3VycmVudFRhYmxlIGJlaW5nIHNldCB1cCBjb3JyZWN0bHkgYmVmb3JlIGNhbGxpbmcKICoKICogS25vd24gcHJvYmxlbXM6CiAqIC0gQXV0by1zY29sbCBoYXMgc29tZSBwcm9ibGVtcyB3aXRoIElFNyAgKGl0IHNjcm9sbHMgZXZlbiB3aGVuIGl0IHNob3VsZG4ndCksIHdvcmstYXJvdW5kOiBzZXQgc2Nyb2xsQW1vdW50IHRvIDAKICogCiAqIFZlcnNpb24gMC4yOiAyMDA4LTAyLTIwIEZpcnN0IHB1YmxpYyB2ZXJzaW9uCiAqIFZlcnNpb24gMC4zOiAyMDA4LTAyLTA3IEFkZGVkIG9uRHJhZ1N0YXJ0IG9wdGlvbgogKiAgICAgICAgICAgICAgICAgICAgICAgICBNYWRlIHRoZSBzY3JvbGwgYW1vdW50IGNvbmZpZ3VyYWJsZSAoZGVmYXVsdCBpcyA1IGFzIGJlZm9yZSkKICogVmVyc2lvbiAwLjQ6IDIwMDgtMDMtMTUgQ2hhbmdlZCB0aGUgbm9EcmFnL25vRHJvcCBhdHRyaWJ1dGVzIHRvIG5vZHJhZy9ub2Ryb3AgY2xhc3NlcwogKiAgICAgICAgICAgICAgICAgICAgICAgICBBZGRlZCBvbkFsbG93RHJvcCB0byBjb250cm9sIGRyb3BwaW5nCiAqICAgICAgICAgICAgICAgICAgICAgICAgIEZpeGVkIGEgYnVnIHdoaWNoIG1lYW50IHRoYXQgeW91IGNvdWxkbid0IHNldCB0aGUgc2Nyb2xsIGFtb3VudCBpbiBib3RoIGRpcmVjdGlvbnMKICogICAgICAgICAgICAgICAgICAgICAgICAgQWRkZWQgc2VyaWFsaXplIG1ldGhvZAogKiBWZXJzaW9uIDAuNTogMjAwOC0wNS0xNiBDaGFuZ2VkIHNvIHRoYXQgaWYgeW91IHNwZWNpZnkgYSBkcmFnSGFuZGxlIGNsYXNzIGl0IGRvZXNuJ3QgbWFrZSB0aGUgd2hvbGUgcm93CiAqICAgICAgICAgICAgICAgICAgICAgICAgIGRyYWdnYWJsZQogKiAgICAgICAgICAgICAgICAgICAgICAgICBJbXByb3ZlZCB0aGUgc2VyaWFsaXplIG1ldGhvZCB0byB1c2UgYSBkZWZhdWx0IChhbmQgc2V0dGFibGUpIHJlZ3VsYXIgZXhwcmVzc2lvbi4KICogICAgICAgICAgICAgICAgICAgICAgICAgQWRkZWQgdGFibGVEbkR1cGF0ZSgpIGFuZCB0YWJsZURuRFNlcmlhbGl6ZSgpIHRvIGJlIGNhbGxlZCB3aGVuIHlvdSBhcmUgb3V0c2lkZSB0aGUgdGFibGUKICovCmpRdWVyeS50YWJsZURuRCA9IHsKICAgIC8qKiBLZWVwIGhvbGQgb2YgdGhlIGN1cnJlbnQgdGFibGUgYmVpbmcgZHJhZ2dlZCAqLwogICAgY3VycmVudFRhYmxlIDogbnVsbCwKICAgIC8qKiBLZWVwIGhvbGQgb2YgdGhlIGN1cnJlbnQgZHJhZyBvYmplY3QgaWYgYW55ICovCiAgICBkcmFnT2JqZWN0OiBudWxsLAogICAgLyoqIFRoZSBjdXJyZW50IG1vdXNlIG9mZnNldCAqLwogICAgbW91c2VPZmZzZXQ6IG51bGwsCiAgICAvKiogUmVtZW1iZXIgdGhlIG9sZCB2YWx1ZSBvZiBZIHNvIHRoYXQgd2UgZG9uJ3QgZG8gdG9vIG11Y2ggcHJvY2Vzc2luZyAqLwogICAgb2xkWTogMCwKCiAgICAvKiogQWN0dWFsbHkgYnVpbGQgdGhlIHN0cnVjdHVyZSAqLwogICAgYnVpbGQ6IGZ1bmN0aW9uKG9wdGlvbnMpIHsKICAgICAgICAvLyBTZXQgdXAgdGhlIGRlZmF1bHRzIGlmIGFueQoKICAgICAgICB0aGlzLmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIC8vIFRoaXMgaXMgYm91bmQgdG8gZWFjaCBtYXRjaGluZyB0YWJsZSwgc2V0IHVwIHRoZSBkZWZhdWx0cyBhbmQgb3ZlcnJpZGUgd2l0aCB1c2VyIG9wdGlvbnMKICAgICAgICAgICAgdGhpcy50YWJsZURuRENvbmZpZyA9IGpRdWVyeS5leHRlbmQoewogICAgICAgICAgICAgICAgb25EcmFnU3R5bGU6IG51bGwsCiAgICAgICAgICAgICAgICBvbkRyb3BTdHlsZTogbnVsbCwKCQkJCS8vIEFkZCBpbiB0aGUgZGVmYXVsdCBjbGFzcyBmb3Igd2hpbGVEcmFnZ2luZwoJCQkJb25EcmFnQ2xhc3M6ICJ0RG5EX3doaWxlRHJhZyIsCiAgICAgICAgICAgICAgICBvbkRyb3A6IG51bGwsCiAgICAgICAgICAgICAgICBvbkRyYWdTdGFydDogbnVsbCwKICAgICAgICAgICAgICAgIHNjcm9sbEFtb3VudDogNSwKCQkJCXNlcmlhbGl6ZVJlZ2V4cDogL1teXC1dKiQvLCAvLyBUaGUgcmVndWxhciBleHByZXNzaW9uIHRvIHVzZSB0byB0cmltIHJvdyBJRHMKCQkJCXNlcmlhbGl6ZVBhcmFtTmFtZTogbnVsbCwgLy8gSWYgeW91IHdhbnQgdG8gc3BlY2lmeSBhbm90aGVyIHBhcmFtZXRlciBuYW1lIGluc3RlYWQgb2YgdGhlIHRhYmxlIElECiAgICAgICAgICAgICAgICBkcmFnSGFuZGxlOiBudWxsIC8vIElmIHlvdSBnaXZlIHRoZSBuYW1lIG9mIGEgY2xhc3MgaGVyZSwgdGhlbiBvbmx5IENlbGxzIHdpdGggdGhpcyBjbGFzcyB3aWxsIGJlIGRyYWdnYWJsZQogICAgICAgICAgICB9LCBvcHRpb25zIHx8IHt9KTsKICAgICAgICAgICAgLy8gTm93IG1ha2UgdGhlIHJvd3MgZHJhZ2dhYmxlCiAgICAgICAgICAgIGpRdWVyeS50YWJsZURuRC5tYWtlRHJhZ2dhYmxlKHRoaXMpOwogICAgICAgIH0pOwoKICAgICAgICAvLyBOb3cgd2UgbmVlZCB0byBjYXB0dXJlIHRoZSBtb3VzZSB1cCBhbmQgbW91c2UgbW92ZSBldmVudAogICAgICAgIC8vIFdlIGNhbiB1c2UgYmluZCBzbyB0aGF0IHdlIGRvbid0IGludGVyZmVyZSB3aXRoIG90aGVyIGV2ZW50IGhhbmRsZXJzCiAgICAgICAgalF1ZXJ5KGRvY3VtZW50KQogICAgICAgICAgICAuYmluZCgnbW91c2Vtb3ZlJywgalF1ZXJ5LnRhYmxlRG5ELm1vdXNlbW92ZSkKICAgICAgICAgICAgLmJpbmQoJ21vdXNldXAnLCBqUXVlcnkudGFibGVEbkQubW91c2V1cCk7CgogICAgICAgIC8vIERvbid0IGJyZWFrIHRoZSBjaGFpbgogICAgICAgIHJldHVybiB0aGlzOwogICAgfSwKCiAgICAvKiogVGhpcyBmdW5jdGlvbiBtYWtlcyBhbGwgdGhlIHJvd3Mgb24gdGhlIHRhYmxlIGRyYWdnYWJsZSBhcGFydCBmcm9tIHRob3NlIG1hcmtlZCBhcyAiTm9EcmFnIiAqLwogICAgbWFrZURyYWdnYWJsZTogZnVuY3Rpb24odGFibGUpIHsKICAgICAgICB2YXIgY29uZmlnID0gdGFibGUudGFibGVEbkRDb25maWc7CgkJaWYgKHRhYmxlLnRhYmxlRG5EQ29uZmlnLmRyYWdIYW5kbGUpIHsKCQkJLy8gV2Ugb25seSBuZWVkIHRvIGFkZCB0aGUgZXZlbnQgdG8gdGhlIHNwZWNpZmllZCBjZWxscwoJCQl2YXIgY2VsbHMgPSBqUXVlcnkoInRkLiIrdGFibGUudGFibGVEbkRDb25maWcuZHJhZ0hhbmRsZSwgdGFibGUpOwoJCQljZWxscy5lYWNoKGZ1bmN0aW9uKCkgewoJCQkJLy8gVGhlIGNlbGwgaXMgYm91bmQgdG8gInRoaXMiCiAgICAgICAgICAgICAgICBqUXVlcnkodGhpcykubW91c2Vkb3duKGZ1bmN0aW9uKGV2KSB7CiAgICAgICAgICAgICAgICAgICAgalF1ZXJ5LnRhYmxlRG5ELmRyYWdPYmplY3QgPSB0aGlzLnBhcmVudE5vZGU7CiAgICAgICAgICAgICAgICAgICAgalF1ZXJ5LnRhYmxlRG5ELmN1cnJlbnRUYWJsZSA9IHRhYmxlOwogICAgICAgICAgICAgICAgICAgIGpRdWVyeS50YWJsZURuRC5tb3VzZU9mZnNldCA9IGpRdWVyeS50YWJsZURuRC5nZXRNb3VzZU9mZnNldCh0aGlzLCBldik7CiAgICAgICAgICAgICAgICAgICAgaWYgKGNvbmZpZy5vbkRyYWdTdGFydCkgewogICAgICAgICAgICAgICAgICAgICAgICAvLyBDYWxsIHRoZSBvbkRyb3AgbWV0aG9kIGlmIHRoZXJlIGlzIG9uZQogICAgICAgICAgICAgICAgICAgICAgICBjb25maWcub25EcmFnU3RhcnQodGFibGUsIHRoaXMpOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgICAgICB9KTsKCQkJfSkKCQl9IGVsc2UgewoJCQkvLyBGb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHksIHdlIGFkZCB0aGUgZXZlbnQgdG8gdGhlIHdob2xlIHJvdwoJICAgICAgICB2YXIgcm93cyA9IGpRdWVyeSgidHIiLCB0YWJsZSk7IC8vIGdldCBhbGwgdGhlIHJvd3MgYXMgYSB3cmFwcGVkIHNldAoJICAgICAgICByb3dzLmVhY2goZnVuY3Rpb24oKSB7CgkJCQkvLyBJdGVyYXRlIHRocm91Z2ggZWFjaCByb3csIHRoZSByb3cgaXMgYm91bmQgdG8gInRoaXMiCgkJCQl2YXIgcm93ID0galF1ZXJ5KHRoaXMpOwoJCQkJaWYgKCEgcm93Lmhhc0NsYXNzKCJub2RyYWciKSkgewoJICAgICAgICAgICAgICAgIHJvdy5tb3VzZWRvd24oZnVuY3Rpb24oZXYpIHsKCSAgICAgICAgICAgICAgICAgICAgaWYgKGV2LnRhcmdldC50YWdOYW1lID09ICJURCIpIHsKCSAgICAgICAgICAgICAgICAgICAgICAgIGpRdWVyeS50YWJsZURuRC5kcmFnT2JqZWN0ID0gdGhpczsKCSAgICAgICAgICAgICAgICAgICAgICAgIGpRdWVyeS50YWJsZURuRC5jdXJyZW50VGFibGUgPSB0YWJsZTsKCSAgICAgICAgICAgICAgICAgICAgICAgIGpRdWVyeS50YWJsZURuRC5tb3VzZU9mZnNldCA9IGpRdWVyeS50YWJsZURuRC5nZXRNb3VzZU9mZnNldCh0aGlzLCBldik7CgkgICAgICAgICAgICAgICAgICAgICAgICBpZiAoY29uZmlnLm9uRHJhZ1N0YXJ0KSB7CgkgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gQ2FsbCB0aGUgb25Ecm9wIG1ldGhvZCBpZiB0aGVyZSBpcyBvbmUKCSAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25maWcub25EcmFnU3RhcnQodGFibGUsIHRoaXMpOwoJICAgICAgICAgICAgICAgICAgICAgICAgfQoJICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwoJICAgICAgICAgICAgICAgICAgICB9CgkgICAgICAgICAgICAgICAgfSkuY3NzKCJjdXJzb3IiLCAibW92ZSIpOyAvLyBTdG9yZSB0aGUgdGFibGVEbkQgb2JqZWN0CgkJCQl9CgkJCX0pOwoJCX0KCX0sCgoJdXBkYXRlVGFibGVzOiBmdW5jdGlvbigpIHsKCQl0aGlzLmVhY2goZnVuY3Rpb24oKSB7CgkJCS8vIHRoaXMgaXMgbm93IGJvdW5kIHRvIGVhY2ggbWF0Y2hpbmcgdGFibGUKCQkJaWYgKHRoaXMudGFibGVEbkRDb25maWcpIHsKCQkJCWpRdWVyeS50YWJsZURuRC5tYWtlRHJhZ2dhYmxlKHRoaXMpOwoJCQl9CgkJfSkKCX0sCgogICAgLyoqIEdldCB0aGUgbW91c2UgY29vcmRpbmF0ZXMgZnJvbSB0aGUgZXZlbnQgKGFsbG93aW5nIGZvciBicm93c2VyIGRpZmZlcmVuY2VzKSAqLwogICAgbW91c2VDb29yZHM6IGZ1bmN0aW9uKGV2KXsKICAgICAgICBpZihldi5wYWdlWCB8fCBldi5wYWdlWSl7CiAgICAgICAgICAgIHJldHVybiB7eDpldi5wYWdlWCwgeTpldi5wYWdlWX07CiAgICAgICAgfQogICAgICAgIHJldHVybiB7CiAgICAgICAgICAgIHg6ZXYuY2xpZW50WCArIGRvY3VtZW50LmJvZHkuc2Nyb2xsTGVmdCAtIGRvY3VtZW50LmJvZHkuY2xpZW50TGVmdCwKICAgICAgICAgICAgeTpldi5jbGllbnRZICsgZG9jdW1lbnQuYm9keS5zY3JvbGxUb3AgIC0gZG9jdW1lbnQuYm9keS5jbGllbnRUb3AKICAgICAgICB9OwogICAgfSwKCiAgICAvKiogR2l2ZW4gYSB0YXJnZXQgZWxlbWVudCBhbmQgYSBtb3VzZSBldmVudCwgZ2V0IHRoZSBtb3VzZSBvZmZzZXQgZnJvbSB0aGF0IGVsZW1lbnQuCiAgICAgICAgVG8gZG8gdGhpcyB3ZSBuZWVkIHRoZSBlbGVtZW50J3MgcG9zaXRpb24gYW5kIHRoZSBtb3VzZSBwb3NpdGlvbiAqLwogICAgZ2V0TW91c2VPZmZzZXQ6IGZ1bmN0aW9uKHRhcmdldCwgZXYpIHsKICAgICAgICBldiA9IGV2IHx8IHdpbmRvdy5ldmVudDsKCiAgICAgICAgdmFyIGRvY1BvcyAgICA9IHRoaXMuZ2V0UG9zaXRpb24odGFyZ2V0KTsKICAgICAgICB2YXIgbW91c2VQb3MgID0gdGhpcy5tb3VzZUNvb3Jkcyhldik7CiAgICAgICAgcmV0dXJuIHt4Om1vdXNlUG9zLnggLSBkb2NQb3MueCwgeTptb3VzZVBvcy55IC0gZG9jUG9zLnl9OwogICAgfSwKCiAgICAvKiogR2V0IHRoZSBwb3NpdGlvbiBvZiBhbiBlbGVtZW50IGJ5IGdvaW5nIHVwIHRoZSBET00gdHJlZSBhbmQgYWRkaW5nIHVwIGFsbCB0aGUgb2Zmc2V0cyAqLwogICAgZ2V0UG9zaXRpb246IGZ1bmN0aW9uKGUpewogICAgICAgIHZhciBsZWZ0ID0gMDsKICAgICAgICB2YXIgdG9wICA9IDA7CiAgICAgICAgLyoqIFNhZmFyaSBmaXggLS0gdGhhbmtzIHRvIEx1aXMgQ2hhdG8gZm9yIHRoaXMhICovCiAgICAgICAgaWYgKGUub2Zmc2V0SGVpZ2h0ID09IDApIHsKICAgICAgICAgICAgLyoqIFNhZmFyaSAyIGRvZXNuJ3QgY29ycmVjdGx5IGdyYWIgdGhlIG9mZnNldFRvcCBvZiBhIHRhYmxlIHJvdwogICAgICAgICAgICB0aGlzIGlzIGRldGFpbGVkIGhlcmU6CiAgICAgICAgICAgIGh0dHA6Ly9qYWNvYi5wZWFyZ3JvdmUuY29tL2Jsb2cvMjAwNi90ZWNobmljYWwvdGFibGUtcm93LW9mZnNldHRvcC1idWctaW4tc2FmYXJpLwogICAgICAgICAgICB0aGUgc29sdXRpb24gaXMgbGlrZXdpc2Ugbm90ZWQgdGhlcmUsIGdyYWIgdGhlIG9mZnNldCBvZiBhIHRhYmxlIGNlbGwgaW4gdGhlIHJvdyAtIHRoZSBmaXJzdENoaWxkLgogICAgICAgICAgICBub3RlIHRoYXQgZmlyZWZveCB3aWxsIHJldHVybiBhIHRleHQgbm9kZSBhcyBhIGZpcnN0IGNoaWxkLCBzbyBkZXNpZ25pbmcgYSBtb3JlIHRob3JvdWdoCiAgICAgICAgICAgIHNvbHV0aW9uIG1heSBuZWVkIHRvIHRha2UgdGhhdCBpbnRvIGFjY291bnQsIGZvciBub3cgdGhpcyBzZWVtcyB0byB3b3JrIGluIGZpcmVmb3gsIHNhZmFyaSwgaWUgKi8KICAgICAgICAgICAgZSA9IGUuZmlyc3RDaGlsZDsgLy8gYSB0YWJsZSBjZWxsCiAgICAgICAgfQoJCWlmIChlICYmIGUub2Zmc2V0UGFyZW50KSB7CiAgICAgICAgCXdoaWxlIChlLm9mZnNldFBhcmVudCl7CiAgICAgICAgICAgIAlsZWZ0ICs9IGUub2Zmc2V0TGVmdDsKICAgICAgICAgICAgCXRvcCAgKz0gZS5vZmZzZXRUb3A7CiAgICAgICAgICAgIAllICAgICA9IGUub2Zmc2V0UGFyZW50OwogICAgICAgIAl9CgogICAgICAgIAlsZWZ0ICs9IGUub2Zmc2V0TGVmdDsKICAgICAgICAJdG9wICArPSBlLm9mZnNldFRvcDsKICAgICAgICB9CgogICAgICAgIHJldHVybiB7eDpsZWZ0LCB5OnRvcH07CiAgICB9LAoKICAgIG1vdXNlbW92ZTogZnVuY3Rpb24oZXYpIHsKICAgICAgICBpZiAoalF1ZXJ5LnRhYmxlRG5ELmRyYWdPYmplY3QgPT0gbnVsbCkgewogICAgICAgICAgICByZXR1cm47CiAgICAgICAgfQoKICAgICAgICB2YXIgZHJhZ09iaiA9IGpRdWVyeShqUXVlcnkudGFibGVEbkQuZHJhZ09iamVjdCk7CiAgICAgICAgdmFyIGNvbmZpZyA9IGpRdWVyeS50YWJsZURuRC5jdXJyZW50VGFibGUudGFibGVEbkRDb25maWc7CiAgICAgICAgdmFyIG1vdXNlUG9zID0galF1ZXJ5LnRhYmxlRG5ELm1vdXNlQ29vcmRzKGV2KTsKICAgICAgICB2YXIgeSA9IG1vdXNlUG9zLnkgLSBqUXVlcnkudGFibGVEbkQubW91c2VPZmZzZXQueTsKICAgICAgICAvL2F1dG8gc2Nyb2xsIHRoZSB3aW5kb3cKCSAgICB2YXIgeU9mZnNldCA9IHdpbmRvdy5wYWdlWU9mZnNldDsKCSAJaWYgKGRvY3VtZW50LmFsbCkgewoJICAgICAgICAvLyBXaW5kb3dzIHZlcnNpb24KCSAgICAgICAgLy95T2Zmc2V0PWRvY3VtZW50LmJvZHkuc2Nyb2xsVG9wOwoJICAgICAgICBpZiAodHlwZW9mIGRvY3VtZW50LmNvbXBhdE1vZGUgIT0gJ3VuZGVmaW5lZCcgJiYKCSAgICAgICAgICAgICBkb2N1bWVudC5jb21wYXRNb2RlICE9ICdCYWNrQ29tcGF0JykgewoJICAgICAgICAgICB5T2Zmc2V0ID0gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNjcm9sbFRvcDsKCSAgICAgICAgfQoJICAgICAgICBlbHNlIGlmICh0eXBlb2YgZG9jdW1lbnQuYm9keSAhPSAndW5kZWZpbmVkJykgewoJICAgICAgICAgICB5T2Zmc2V0PWRvY3VtZW50LmJvZHkuc2Nyb2xsVG9wOwoJICAgICAgICB9CgoJICAgIH0KCQkgICAgCgkJaWYgKG1vdXNlUG9zLnkteU9mZnNldCA8IGNvbmZpZy5zY3JvbGxBbW91bnQpIHsKCSAgICAJd2luZG93LnNjcm9sbEJ5KDAsIC1jb25maWcuc2Nyb2xsQW1vdW50KTsKCSAgICB9IGVsc2UgewogICAgICAgICAgICB2YXIgd2luZG93SGVpZ2h0ID0gd2luZG93LmlubmVySGVpZ2h0ID8gd2luZG93LmlubmVySGVpZ2h0CiAgICAgICAgICAgICAgICAgICAgOiBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50SGVpZ2h0ID8gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudEhlaWdodCA6IGRvY3VtZW50LmJvZHkuY2xpZW50SGVpZ2h0OwogICAgICAgICAgICBpZiAod2luZG93SGVpZ2h0LShtb3VzZVBvcy55LXlPZmZzZXQpIDwgY29uZmlnLnNjcm9sbEFtb3VudCkgewogICAgICAgICAgICAgICAgd2luZG93LnNjcm9sbEJ5KDAsIGNvbmZpZy5zY3JvbGxBbW91bnQpOwogICAgICAgICAgICB9CiAgICAgICAgfQoKCiAgICAgICAgaWYgKHkgIT0galF1ZXJ5LnRhYmxlRG5ELm9sZFkpIHsKICAgICAgICAgICAgLy8gd29yayBvdXQgaWYgd2UncmUgZ29pbmcgdXAgb3IgZG93bi4uLgogICAgICAgICAgICB2YXIgbW92aW5nRG93biA9IHkgPiBqUXVlcnkudGFibGVEbkQub2xkWTsKICAgICAgICAgICAgLy8gdXBkYXRlIHRoZSBvbGQgdmFsdWUKICAgICAgICAgICAgalF1ZXJ5LnRhYmxlRG5ELm9sZFkgPSB5OwogICAgICAgICAgICAvLyB1cGRhdGUgdGhlIHN0eWxlIHRvIHNob3cgd2UncmUgZHJhZ2dpbmcKCQkJaWYgKGNvbmZpZy5vbkRyYWdDbGFzcykgewoJCQkJZHJhZ09iai5hZGRDbGFzcyhjb25maWcub25EcmFnQ2xhc3MpOwoJCQl9IGVsc2UgewoJICAgICAgICAgICAgZHJhZ09iai5jc3MoY29uZmlnLm9uRHJhZ1N0eWxlKTsKCQkJfQogICAgICAgICAgICAvLyBJZiB3ZSdyZSBvdmVyIGEgcm93IHRoZW4gbW92ZSB0aGUgZHJhZ2dlZCByb3cgdG8gdGhlcmUgc28gdGhhdCB0aGUgdXNlciBzZWVzIHRoZQogICAgICAgICAgICAvLyBlZmZlY3QgZHluYW1pY2FsbHkKICAgICAgICAgICAgdmFyIGN1cnJlbnRSb3cgPSBqUXVlcnkudGFibGVEbkQuZmluZERyb3BUYXJnZXRSb3coZHJhZ09iaiwgeSk7CiAgICAgICAgICAgIGlmIChjdXJyZW50Um93KSB7CiAgICAgICAgICAgICAgICAvLyBUT0RPIHdvcnJ5IGFib3V0IHdoYXQgaGFwcGVucyB3aGVuIHRoZXJlIGFyZSBtdWx0aXBsZSBUQk9ESUVTCiAgICAgICAgICAgICAgICBpZiAobW92aW5nRG93biAmJiBqUXVlcnkudGFibGVEbkQuZHJhZ09iamVjdCAhPSBjdXJyZW50Um93KSB7CiAgICAgICAgICAgICAgICAgICAgalF1ZXJ5LnRhYmxlRG5ELmRyYWdPYmplY3QucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoalF1ZXJ5LnRhYmxlRG5ELmRyYWdPYmplY3QsIGN1cnJlbnRSb3cubmV4dFNpYmxpbmcpOwogICAgICAgICAgICAgICAgfSBlbHNlIGlmICghIG1vdmluZ0Rvd24gJiYgalF1ZXJ5LnRhYmxlRG5ELmRyYWdPYmplY3QgIT0gY3VycmVudFJvdykgewogICAgICAgICAgICAgICAgICAgIGpRdWVyeS50YWJsZURuRC5kcmFnT2JqZWN0LnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKGpRdWVyeS50YWJsZURuRC5kcmFnT2JqZWN0LCBjdXJyZW50Um93KTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgfSwKCiAgICAvKiogV2UncmUgb25seSB3b3JyaWVkIGFib3V0IHRoZSB5IHBvc2l0aW9uIHJlYWxseSwgYmVjYXVzZSB3ZSBjYW4gb25seSBtb3ZlIHJvd3MgdXAgYW5kIGRvd24gKi8KICAgIGZpbmREcm9wVGFyZ2V0Um93OiBmdW5jdGlvbihkcmFnZ2VkUm93LCB5KSB7CiAgICAgICAgdmFyIHJvd3MgPSBqUXVlcnkudGFibGVEbkQuY3VycmVudFRhYmxlLnJvd3M7CiAgICAgICAgZm9yICh2YXIgaT0wOyBpPHJvd3MubGVuZ3RoOyBpKyspIHsKICAgICAgICAgICAgdmFyIHJvdyA9IHJvd3NbaV07CiAgICAgICAgICAgIHZhciByb3dZICAgID0gdGhpcy5nZXRQb3NpdGlvbihyb3cpLnk7CiAgICAgICAgICAgIHZhciByb3dIZWlnaHQgPSBwYXJzZUludChyb3cub2Zmc2V0SGVpZ2h0KS8yOwogICAgICAgICAgICBpZiAocm93Lm9mZnNldEhlaWdodCA9PSAwKSB7CiAgICAgICAgICAgICAgICByb3dZID0gdGhpcy5nZXRQb3NpdGlvbihyb3cuZmlyc3RDaGlsZCkueTsKICAgICAgICAgICAgICAgIHJvd0hlaWdodCA9IHBhcnNlSW50KHJvdy5maXJzdENoaWxkLm9mZnNldEhlaWdodCkvMjsKICAgICAgICAgICAgfQogICAgICAgICAgICAvLyBCZWNhdXNlIHdlIGFsd2F5cyBoYXZlIHRvIGluc2VydCBiZWZvcmUsIHdlIG5lZWQgdG8gb2Zmc2V0IHRoZSBoZWlnaHQgYSBiaXQKICAgICAgICAgICAgaWYgKCh5ID4gcm93WSAtIHJvd0hlaWdodCkgJiYgKHkgPCAocm93WSArIHJvd0hlaWdodCkpKSB7CiAgICAgICAgICAgICAgICAvLyB0aGF0J3MgdGhlIHJvdyB3ZSdyZSBvdmVyCgkJCQkvLyBJZiBpdCdzIHRoZSBzYW1lIGFzIHRoZSBjdXJyZW50IHJvdywgaWdub3JlIGl0CgkJCQlpZiAocm93ID09IGRyYWdnZWRSb3cpIHtyZXR1cm4gbnVsbDt9CiAgICAgICAgICAgICAgICB2YXIgY29uZmlnID0galF1ZXJ5LnRhYmxlRG5ELmN1cnJlbnRUYWJsZS50YWJsZURuRENvbmZpZzsKICAgICAgICAgICAgICAgIGlmIChjb25maWcub25BbGxvd0Ryb3ApIHsKICAgICAgICAgICAgICAgICAgICBpZiAoY29uZmlnLm9uQWxsb3dEcm9wKGRyYWdnZWRSb3csIHJvdykpIHsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJvdzsKICAgICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9IGVsc2UgewoJCQkJCS8vIElmIGEgcm93IGhhcyBub2Ryb3AgY2xhc3MsIHRoZW4gZG9uJ3QgYWxsb3cgZHJvcHBpbmcgKGluc3BpcmVkIGJ5IEpvaG4gVGFyciBhbmQgRmFtaWMpCiAgICAgICAgICAgICAgICAgICAgdmFyIG5vZHJvcCA9IGpRdWVyeShyb3cpLmhhc0NsYXNzKCJub2Ryb3AiKTsKICAgICAgICAgICAgICAgICAgICBpZiAoISBub2Ryb3ApIHsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJvdzsKICAgICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICByZXR1cm4gcm93OwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiBudWxsOwogICAgfSwKCiAgICBtb3VzZXVwOiBmdW5jdGlvbihlKSB7CiAgICAgICAgaWYgKGpRdWVyeS50YWJsZURuRC5jdXJyZW50VGFibGUgJiYgalF1ZXJ5LnRhYmxlRG5ELmRyYWdPYmplY3QpIHsKICAgICAgICAgICAgdmFyIGRyb3BwZWRSb3cgPSBqUXVlcnkudGFibGVEbkQuZHJhZ09iamVjdDsKICAgICAgICAgICAgdmFyIGNvbmZpZyA9IGpRdWVyeS50YWJsZURuRC5jdXJyZW50VGFibGUudGFibGVEbkRDb25maWc7CiAgICAgICAgICAgIC8vIElmIHdlIGhhdmUgYSBkcmFnT2JqZWN0LCB0aGVuIHdlIG5lZWQgdG8gcmVsZWFzZSBpdCwKICAgICAgICAgICAgLy8gVGhlIHJvdyB3aWxsIGFscmVhZHkgaGF2ZSBiZWVuIG1vdmVkIHRvIHRoZSByaWdodCBwbGFjZSBzbyB3ZSBqdXN0IHJlc2V0IHN0dWZmCgkJCWlmIChjb25maWcub25EcmFnQ2xhc3MpIHsKCSAgICAgICAgICAgIGpRdWVyeShkcm9wcGVkUm93KS5yZW1vdmVDbGFzcyhjb25maWcub25EcmFnQ2xhc3MpOwoJCQl9IGVsc2UgewoJICAgICAgICAgICAgalF1ZXJ5KGRyb3BwZWRSb3cpLmNzcyhjb25maWcub25Ecm9wU3R5bGUpOwoJCQl9CiAgICAgICAgICAgIGpRdWVyeS50YWJsZURuRC5kcmFnT2JqZWN0ICAgPSBudWxsOwogICAgICAgICAgICBpZiAoY29uZmlnLm9uRHJvcCkgewogICAgICAgICAgICAgICAgLy8gQ2FsbCB0aGUgb25Ecm9wIG1ldGhvZCBpZiB0aGVyZSBpcyBvbmUKICAgICAgICAgICAgICAgIGNvbmZpZy5vbkRyb3AoalF1ZXJ5LnRhYmxlRG5ELmN1cnJlbnRUYWJsZSwgZHJvcHBlZFJvdyk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgalF1ZXJ5LnRhYmxlRG5ELmN1cnJlbnRUYWJsZSA9IG51bGw7IC8vIGxldCBnbyBvZiB0aGUgdGFibGUgdG9vCiAgICAgICAgfQogICAgfSwKCiAgICBzZXJpYWxpemU6IGZ1bmN0aW9uKCkgewogICAgICAgIGlmIChqUXVlcnkudGFibGVEbkQuY3VycmVudFRhYmxlKSB7CiAgICAgICAgICAgIHJldHVybiBqUXVlcnkudGFibGVEbkQuc2VyaWFsaXplVGFibGUoalF1ZXJ5LnRhYmxlRG5ELmN1cnJlbnRUYWJsZSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgcmV0dXJuICJFcnJvcjogTm8gVGFibGUgaWQgc2V0LCB5b3UgbmVlZCB0byBzZXQgYW4gaWQgb24geW91ciB0YWJsZSBhbmQgZXZlcnkgcm93IjsKICAgICAgICB9CiAgICB9LAoKCXNlcmlhbGl6ZVRhYmxlOiBmdW5jdGlvbih0YWJsZSkgewogICAgICAgIHZhciByZXN1bHQgPSAiIjsKICAgICAgICB2YXIgdGFibGVJZCA9IHRhYmxlLmlkOwogICAgICAgIHZhciByb3dzID0gdGFibGUucm93czsKICAgICAgICBmb3IgKHZhciBpPTA7IGk8cm93cy5sZW5ndGg7IGkrKykgewogICAgICAgICAgICBpZiAocmVzdWx0Lmxlbmd0aCA+IDApIHJlc3VsdCArPSAiJiI7CiAgICAgICAgICAgIHZhciByb3dJZCA9IHJvd3NbaV0uaWQ7CiAgICAgICAgICAgIGlmIChyb3dJZCAmJiByb3dJZCAmJiB0YWJsZS50YWJsZURuRENvbmZpZyAmJiB0YWJsZS50YWJsZURuRENvbmZpZy5zZXJpYWxpemVSZWdleHApIHsKICAgICAgICAgICAgICAgIHJvd0lkID0gcm93SWQubWF0Y2godGFibGUudGFibGVEbkRDb25maWcuc2VyaWFsaXplUmVnZXhwKVswXTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgcmVzdWx0ICs9IHRhYmxlSWQgKyAnW109JyArIHJvd0lkOwogICAgICAgIH0KICAgICAgICByZXR1cm4gcmVzdWx0OwoJfSwKCglzZXJpYWxpemVUYWJsZXM6IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciByZXN1bHQgPSAiIjsKICAgICAgICB0aGlzLmVhY2goZnVuY3Rpb24oKSB7CgkJCS8vIHRoaXMgaXMgbm93IGJvdW5kIHRvIGVhY2ggbWF0Y2hpbmcgdGFibGUKCQkJcmVzdWx0ICs9IGpRdWVyeS50YWJsZURuRC5zZXJpYWxpemVUYWJsZSh0aGlzKTsKCQl9KTsKICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgfQoKfQoKalF1ZXJ5LmZuLmV4dGVuZCgKCXsKCQl0YWJsZURuRCA6IGpRdWVyeS50YWJsZURuRC5idWlsZCwKCQl0YWJsZURuRFVwZGF0ZSA6IGpRdWVyeS50YWJsZURuRC51cGRhdGVUYWJsZXMsCgkJdGFibGVEbkRTZXJpYWxpemU6IGpRdWVyeS50YWJsZURuRC5zZXJpYWxpemVUYWJsZXMKCX0KKTs=]]></data>
	</file>
	<file>
	  <filename>/method.install.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEN1c3RvbSBHbG9iYWwgU2V0dGluZ3MKIyBBdXRob3I6IFJvbGYgVGphc3NlbnMsIEpvcwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAxMSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIyBUaGUgbW9kdWxlJ3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvY3VzdG9tZ3MKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgppZiAoIWlzc2V0KCRnQ21zKSkgZXhpdDsKCi8qKiAKICogSW5zdGFsbCBtb2R1bGUKICovCgokdGhpcy0+Q3JlYXRlUGVybWlzc2lvbignQ3VzdG9tIEdsb2JhbCBTZXR0aW5ncyAtIFVzZScsICdDdXN0b20gR2xvYmFsIFNldHRpbmdzIC0gVXNlJyk7CiR0aGlzLT5DcmVhdGVQZXJtaXNzaW9uKCdDdXN0b20gR2xvYmFsIFNldHRpbmdzIC0gTWFuYWdlJywgJ0N1c3RvbSBHbG9iYWwgU2V0dGluZ3MgLSBNYW5hZ2UnKTsKCQkKJHRoaXMtPlNldFByZWZlcmVuY2UoJ2lucHV0X2N1c3RvbV9tb2R1bGVuYW1lJywgJ0N1c3RvbSBHbG9iYWwgU2V0dGluZ3MnKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ2FkbWluX3NlY3Rpb24nLCAnZXh0ZW5zaW9ucycpOwoKCiRkYiA9ICR0aGlzLT5HZXREYigpOwoKLy8gbXlzcWwtc3BlY2lmaWMsIGJ1dCBpZ25vcmVkIGJ5IG90aGVyIGRhdGFiYXNlCiR0YWJvcHRhcnJheSA9IGFycmF5KCdteXNxbCcgPT4gJ0VOR0lORT1NeUlTQU0nKTsKJGRpY3QgPSBOZXdEYXRhRGljdGlvbmFyeSgkZGIpOwoKJGZsZHMgPSAiCglmaWVsZGlkIEkgS0VZIEFVVE8sCgluYW1lIEMoMjU1KSwKCWhlbHAgWCwKCXR5cGUgQygyMCksCglwcm9wZXJ0aWVzIFgsCgljbGVhcmNhY2hlIEksCglzb3J0b3JkZXIgSSwKCXZhbHVlIFgsCgllZGl0b3JzIEMoMjU1KQoiOwoKJHNxbGFycmF5ID0gJGRpY3QtPkNyZWF0ZVRhYmxlU1FMKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2N1c3RvbWdzIiwgJGZsZHMsICR0YWJvcHRhcnJheSk7CiRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKCiRxdWVyeSA9ICJJTlNFUlQgSU5UTyAiIC4gY21zX2RiX3ByZWZpeCgpIC4gIm1vZHVsZV9jdXN0b21ncyAobmFtZSwgaGVscCwgdHlwZSwgc29ydG9yZGVyLCB2YWx1ZSkgVkFMVUVTICg/LD8sPyw/LD8pIjsKJGRiLT5FeGVjdXRlKCRxdWVyeSwgYXJyYXkoJ1NhbXBsZSB0ZXh0ZmllbGQnLCAnU2FtcGxlIGhlbHAgdGV4dCBmb3IgdGhpcyB0ZXh0ZmllbGQnLCAndGV4dGZpZWxkJywgMSwgJ1NhbXBsZSB2YWx1ZScpKTsKCi8vIHJlZ2lzdGVyIGFuIGV2ZW50IHRoYXQgQ3VzdG9tR1Mgd2lsbCBpc3N1ZS4KJHRoaXMtPkNyZWF0ZUV2ZW50KCdPblNldHRpbmdDaGFuZ2UnKTsKPz4=]]></data>
	</file>
	<file>
	  <filename>/method.uninstall.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEN1c3RvbSBHbG9iYWwgU2V0dGluZ3MKIyBBdXRob3I6IFJvbGYgVGphc3NlbnMsIEpvcwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAxMSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIyBUaGUgbW9kdWxlJ3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvY3VzdG9tZ3MKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgppZiAoIWlzc2V0KCRnQ21zKSkgZXhpdDsKCi8qKiAKICogVW5pbnN0YWxsIG1vZHVsZQogKi8KJGRiID0gJGdDbXMtPkdldERiKCk7CgovLyByZW1vdmUgdGhlIGRhdGFiYXNlIHRhYmxlcwokZGljdCA9IE5ld0RhdGFEaWN0aW9uYXJ5KCAkZGIgKTsKJHNxbGFycmF5ID0gJGRpY3QtPkRyb3BUYWJsZVNRTCggY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfY3VzdG9tZ3MiICk7CiRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKCi8vIHJlbW92ZSB0aGUgcGVybWlzc2lvbnMKJHRoaXMtPlJlbW92ZVBlcm1pc3Npb24oJ0N1c3RvbSBHbG9iYWwgU2V0dGluZ3MgLSBVc2UnKTsKJHRoaXMtPlJlbW92ZVBlcm1pc3Npb24oJ0N1c3RvbSBHbG9iYWwgU2V0dGluZ3MgLSBNYW5hZ2UnKTsKCQkKLy8gcmVtb3ZlIGFsbCBwcmVmZXJlbmNlcwokdGhpcy0+UmVtb3ZlUHJlZmVyZW5jZSgpOwoKLy8gcmVtb3ZlIHRoZSBldmVudAokdGhpcy0+UmVtb3ZlRXZlbnQoJ09uU2V0dGluZ0NoYW5nZScpOwoKPz4=]]></data>
	</file>
	<file>
	  <filename>/method.upgrade.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEN1c3RvbSBHbG9iYWwgU2V0dGluZ3MKIyBBdXRob3I6IFJvbGYgVGphc3NlbnMsIEpvcwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAxMSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIyBUaGUgbW9kdWxlJ3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvY3VzdG9tZ3MKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgppZiAoIWlzc2V0KCRnQ21zKSkgZXhpdDsKCiRkYiA9ICR0aGlzLT5HZXREYigpOwokdGFib3B0YXJyYXkgPSBhcnJheSgnbXlzcWwnID0+ICdFTkdJTkU9TXlJU0FNJyk7CiRkaWN0ID0gTmV3RGF0YURpY3Rpb25hcnkoJGRiKTsKCnN3aXRjaCgkb2xkdmVyc2lvbikKewoJY2FzZSAiMS4wIjoKCgkJJGZsZHMgPSAiCgkJCWZpZWxkaWQgSSBLRVkgQVVUTywKCQkJbmFtZSBDKDI1NSksCgkJCWhlbHAgWCwKCQkJdHlwZSBDKDIwKSwKCQkJcHJvcGVydGllcyBYLAoJCQlzb3J0b3JkZXIgSSwKCQkJdmFsdWUgWAoJCSI7CgoJCSRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNRTChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9jdXN0b21ncyIsICRmbGRzLCAkdGFib3B0YXJyYXkpOwoJCSRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKCgkJJGlkeCA9IDE7CgkJZm9yICgkaSA9IDE7ICRpIDw9IDc7ICRpKyspCgkJewoJCQkvLyB0cmFuc2ZlciBjaGVja2JveGVzIHRvIGRhdGFiYXNlCgkJCSRmaWVsZG5hbWUgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnaW5wdXRfdGl0bGVfY2hlY2tib3hfJy4kaSk7CgkJCWlmICggIWVtcHR5KCRmaWVsZG5hbWUpICkKCQkJewoJCQkJJHF1ZXJ5ID0gIklOU0VSVCBJTlRPICIgLiBjbXNfZGJfcHJlZml4KCkgLiAibW9kdWxlX2N1c3RvbWdzIChuYW1lLCBoZWxwLCB0eXBlLCBzb3J0b3JkZXIsIHZhbHVlKSBWQUxVRVMgKD8sPyw/LD8sPykiOwoJCQkJJGRiLT5FeGVjdXRlKCRxdWVyeSwgYXJyYXkoCgkJCQkJJHRoaXMtPkdldFByZWZlcmVuY2UoJ2lucHV0X3RpdGxlX2NoZWNrYm94XycuJGkpLAoJCQkJCSR0aGlzLT5HZXRQcmVmZXJlbmNlKCdpbnB1dF9oZWxwX2NoZWNrYm94XycuJGkpLAoJCQkJCSdjaGVja2JveCcsCgkJCQkJJGlkeCwKCQkJCQkkdGhpcy0+R2V0UHJlZmVyZW5jZSgnaW5wdXRfY2hlY2tib3hfJy4kaSkKCQkJCSkpOwoJCQkJJGlkeCsrOwoJCQl9CgkJCSR0aGlzLT5SZW1vdmVQcmVmZXJlbmNlKCdpbnB1dF9jaGVja2JveF8nLiRpKTsKCQkJJHRoaXMtPlJlbW92ZVByZWZlcmVuY2UoJ2lucHV0X3RpdGxlX2NoZWNrYm94XycuJGkpOwoJCQkkdGhpcy0+UmVtb3ZlUHJlZmVyZW5jZSgnaW5wdXRfaGVscF9jaGVja2JveF8nLiRpKTsKCQl9CgkJZm9yICgkaSA9IDE7ICRpIDw9IDU7ICRpKyspCgkJewoJCQkvLyB0cmFuc2ZlciB0ZXh0ZmllbGRzIHRvIGRhdGFiYXNlCgkJCSRmaWVsZG5hbWUgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnaW5wdXRfdGl0bGVfdGV4dGZpZWxkXycuJGkpOwoJCQlpZiAoICFlbXB0eSgkZmllbGRuYW1lKSApCgkJCXsKCQkJCSRxdWVyeSA9ICJJTlNFUlQgSU5UTyAiIC4gY21zX2RiX3ByZWZpeCgpIC4gIm1vZHVsZV9jdXN0b21ncyAobmFtZSwgaGVscCwgdHlwZSwgc29ydG9yZGVyLCB2YWx1ZSkgVkFMVUVTICg/LD8sPyw/LD8pIjsKCQkJCSRkYi0+RXhlY3V0ZSgkcXVlcnksIGFycmF5KAoJCQkJCSR0aGlzLT5HZXRQcmVmZXJlbmNlKCdpbnB1dF90aXRsZV90ZXh0ZmllbGRfJy4kaSksCgkJCQkJJHRoaXMtPkdldFByZWZlcmVuY2UoJ2lucHV0X2hlbHBfdGV4dGZpZWxkXycuJGkpLAoJCQkJCSd0ZXh0ZmllbGQnLAoJCQkJCSRpZHgsCgkJCQkJJHRoaXMtPkdldFByZWZlcmVuY2UoJ2lucHV0X3RleHRmaWVsZF8nLiRpKQoJCQkJKSk7CgkJCQkkaWR4Kys7CgkJCX0KCQkJJHRoaXMtPlJlbW92ZVByZWZlcmVuY2UoJ2lucHV0X3RleHRmaWVsZF8nLiRpKTsKCQkJJHRoaXMtPlJlbW92ZVByZWZlcmVuY2UoJ2lucHV0X3RpdGxlX3RleHRmaWVsZF8nLiRpKTsKCQkJJHRoaXMtPlJlbW92ZVByZWZlcmVuY2UoJ2lucHV0X2hlbHBfdGV4dGZpZWxkXycuJGkpOwoJCX0KCQkvLyByZXNldCBwZXJtaXNzaW9ucwoJCSR0aGlzLT5SZW1vdmVQZXJtaXNzaW9uKCdDdXN0b20gR2xvYmFsIFNldHRpbmdzIC0gU2V0dGluZ3MnKTsKCQkkdGhpcy0+Q3JlYXRlUGVybWlzc2lvbignQ3VzdG9tIEdsb2JhbCBTZXR0aW5ncyAtIFVzZScsICdDdXN0b20gR2xvYmFsIFNldHRpbmdzIC0gVXNlJyk7CgkJLy8gY3JlYXRlIGV2ZW50CgkJJHRoaXMtPkNyZWF0ZUV2ZW50KCdPblNldHRpbmdDaGFuZ2UnKTsKCQkvLyBkZWxldGUgZmlsZXMKCQkkZGVsZXRlZmlsZXMgPSBhcnJheSAoJ2Z1bmN0aW9uLmFkbWluX2NoZWNrYm94ZXMucGhwJywgJ2Z1bmN0aW9uLmFkbWluX3RleHRmaWVsZHMucGhwJywgJ2Z1bmN0aW9uLmFkbWluX3NldHRpbmdzJywKCQkJCQkJCQkJCQkJCSdhY3Rpb24uc2F2ZV9jaGVja2JveGVzLnBocCcsICdhY3Rpb24uc2F2ZV90ZXh0ZmllbGRzLnBocCcsICdhY3Rpb24uc2F2ZV9zZXR0aW5ncy5waHAnLAoJCQkJCQkJCQkJCQkJJ3RlbXBsYXRlcy9hZG1pbl9jaGVja2JveGVzLnRwbCcsICd0ZW1wbGF0ZXMvYWRtaW5fdGV4dGZpZWxkcy50cGwnLCAndGVtcGxhdGVzL2FkbWluX3NldHRpbmdzLnRwbCcpOwoJCWZvcmVhY2ggKCRkZWxldGVmaWxlcyBhcyAkZGVsZXRlZmlsZSkgQHVubGluaygkZGVsZXRlZmlsZSk7CgoJCS8vIGN1cnJlbnQgdmVyc2lvbjogMS4xCgoJY2FzZSAiMS4xIjoKCgkJJHRoaXMtPlNldFByZWZlcmVuY2UoJ2FkbWluX3NlY3Rpb24nLCAnZXh0ZW5zaW9ucycpOwoJCSRzcWxhcnJheSA9ICRkaWN0LT5BZGRDb2x1bW5TUUwoY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfY3VzdG9tZ3MiLCAiY2xlYXJjYWNoZSBJIik7CgkJJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwoKCQkvLyBjdXJyZW50IHZlcnNpb246IDEuMgoJCQoJY2FzZSAiMS40IjoKCgkJJHNxbGFycmF5ID0gJGRpY3QtPkFkZENvbHVtblNRTChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9jdXN0b21ncyIsICJlZGl0b3JzIEMoMjU1KSIpOwoJCSRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKCgkJLy8gY3VycmVudCB2ZXJzaW9uOiAxLjUKCn0KPz4=]]></data>
	</file>
	<file>
	  <filename>/templates/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/templates/admin_fielddefs.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[e2lmICRpdGVtc3xAY291bnQgPiAwfQp7bGl0ZXJhbH0KPHNjcmlwdCB0eXBlPXRleHQvamF2YXNjcmlwdD4KCWpRdWVyeShkb2N1bWVudCkucmVhZHkoZnVuY3Rpb24oJCkgewoJCSQoIi5zb3J0X3RhYmxlIikudGFibGVEbkQoewoJCQlvbkRyYWdDbGFzczogInJvdzFob3ZlciIsCgkJCW9uRHJvcDogZnVuY3Rpb24odGFibGUsIHJvdykgewoJCQkJdmFyIHRvdGFscm93cyA9IGpRdWVyeSgiLnNvcnRfdGFibGUiKS5maW5kKCJ0Ym9keSB0ciIpLnNpemUoKTsKCgkJCQlqUXVlcnkoIi5zb3J0X3RhYmxlIikuZmluZCgidGJvZHkgdHIiKS5yZW1vdmVDbGFzcygpOwoJCQkJalF1ZXJ5KCIuc29ydF90YWJsZSIpLmZpbmQoInRib2R5IHRyOm50aC1jaGlsZCgybisxKSIpLmFkZENsYXNzKCJyb3cxIik7CgkJCQlqUXVlcnkoIi5zb3J0X3RhYmxlIikuZmluZCgidGJvZHkgdHI6bnRoLWNoaWxkKDJuKSIpLmFkZENsYXNzKCJyb3cyIik7CgoJCQkJdmFyIHJvd3MgPSB0YWJsZS50Qm9kaWVzWzBdLnJvd3M7CgkJCQl2YXIgc29ydHN0ciA9IHJvd3NbMF0uaWQ7CgkJCQlmb3IgKHZhciBpPTE7IGk8cm93cy5sZW5ndGg7IGkrKykgewoJCQkJCXNvcnRzdHIgKz0gIiwiK3Jvd3NbaV0uaWQ7CgkJCQl9CgkJCQl2YXIgYWpheF9sb2FkID0gJzxpbWcgc3JjPSIuLi9tb2R1bGVzL0N1c3RvbUdTL2ltYWdlcy9sb2FkaW5nLmdpZiIgYWx0PSJsb2FkaW5nLi4uIiAvPic7CgkJCQkkKCcjbG9hZGVyJykuaHRtbChhamF4X2xvYWQpLmxvYWQoJ3svbGl0ZXJhbH17JGFqYXhfdXJsfSZzaG93dGVtcGxhdGU9ZmFsc2UmeyRtb2RfaWR9e2xpdGVyYWx9c29ydHNlcT0nK3NvcnRzdHIpOwoJCQl9CgkJfSk7CgkJalF1ZXJ5KCIudXBkb3duIikuaGlkZSgpOwoJfSk7Cjwvc2NyaXB0Pgp7L2xpdGVyYWx9CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2VvcHRpb25zIj57JG5ld2ZpZWxkZGVmbGlua30mbmJzcDsmbmJzcDsmbmJzcDs8c3BhbiBpZD0ibG9hZGVyIj4gPC9zcGFuPjwvcD4KPC9kaXY+CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CnskZm9ybXN0YXJ0fQo8dGFibGUgY2VsbHNwYWNpbmc9IjAiIGNsYXNzPSJwYWdldGFibGUgc29ydF90YWJsZSI+CiAgPHRoZWFkPgogICAgPHRyPgogICAgICA8dGggY2xhc3M9InBhZ2V3MjUiPnskbmFtZX08L3RoPgogICAgICA8dGggY2xhc3M9InBhZ2V3MjUiPnskdHlwZX08L3RoPgogICAgICA8dGggY2xhc3M9InBhZ2V3MjUiPnskc21hcnR5dmFyfTwvdGg+CiAgICAgIDx0aCBjbGFzcz0icGFnZWljb24gdXBkb3duIj4mbmJzcDs8L3RoPgogICAgICA8dGggY2xhc3M9InBhZ2VpY29uIHVwZG93biI+Jm5ic3A7PC90aD4KICAgICAgPHRoIGNsYXNzPSJwYWdlaWNvbiI+Jm5ic3A7PC90aD4KICAgICAgPHRoIGNsYXNzPSJwYWdlaWNvbiI+Jm5ic3A7PC90aD4KICAgIDwvdHI+CiAgPC90aGVhZD4Ke2ZvcmVhY2ggZnJvbT0kaXRlbXMgaXRlbT1lbnRyeX0KCQl7Y3ljbGUgdmFsdWVzPSJyb3cxLHJvdzIiIGFzc2lnbj1yb3djbGFzc30KICAgIDx0ciBpZD0iaXskZW50cnktPmZpZWxkaWR9IiBjbGFzcz0ieyRyb3djbGFzc30iPgogICAgICA8dGQ+e2lmIGVtcHR5KCRlbnRyeS0+c21hcnR5dmFyKX08c3Ryb25nPnskZW50cnktPm5hbWV9PC9zdHJvbmc+e2Vsc2V9eyRlbnRyeS0+bmFtZX17L2lmfTwvdGQ+CiAgICAgIDx0ZD57JGVudHJ5LT50eXBlfTwvdGQ+CiAgICAgIDx0ZD48c3BhbiBjbGFzcz0ic21hcnR5dmFyIj57JGVudHJ5LT5zbWFydHl2YXJ9PC9zcGFuPjwvdGQ+CiAgICAgIDx0ZCBjbGFzcz0idXBkb3duIj57JGVudHJ5LT5tb3ZldXB9PC90ZD4KICAgICAgPHRkIGNsYXNzPSJ1cGRvd24iPnskZW50cnktPm1vdmVkb3dufTwvdGQ+CiAgICAgIDx0ZD57JGVudHJ5LT5lZGl0bGlua308L3RkPgogICAgICA8dGQ+eyRlbnRyeS0+ZGVsZXRlbGlua308L3RkPgogICAgPC90cj4Key9mb3JlYWNofQo8L3RhYmxlPgoKeyRmb3JtZW5kfQo8L2Rpdj4Key9pZn0KCjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2VvcHRpb25zIj57JG5ld2ZpZWxkZGVmbGlua308L3A+CjwvZGl2Pgo=]]></data>
	</file>
	<file>
	  <filename>/templates/admin_general.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[e2xpdGVyYWx9DQo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIuLi9tb2R1bGVzL0N1c3RvbUdTL2xpYi9qcXVlcnkvanF1ZXJ5LmNvb2tpZS5qcyI+PC9zY3JpcHQ+DQo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIuLi9tb2R1bGVzL0N1c3RvbUdTL2xpYi9qcXVlcnkvanF1ZXJ5LmNvbGxhcHNpYmxlLmpzIj48L3NjcmlwdD4NCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Ii4uL21vZHVsZXMvQ3VzdG9tR1MvbGliL2pxdWVyeS9qcXVlcnktdWktdGltZXBpY2tlci1hZGRvbi5qcyI+PC9zY3JpcHQ+DQo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIuLi9tb2R1bGVzL0N1c3RvbUdTL2xpYi9qcXVlcnkvY29sb3JwaWNrZXIubWluLmpzIj48L3NjcmlwdD4NCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCgkJJChmdW5jdGlvbigpIHsNCgkJCSQoJy5jZ3NfY29sbGFwc2libGUnKS5jb2xsYXBzaWJsZSh7DQoJCQkJY29va2llTmFtZTogJ2NvbGxhcHNpYmxlJw0KCQkJfSk7DQp7L2xpdGVyYWx9eyREUF9sb2NhbGV9e2xpdGVyYWx9DQoJCQkkKCcuZGF0ZXBpY2tlciBpbnB1dCcpLmRhdGVwaWNrZXIoew0KCQkJCWRhdGVGb3JtYXQ6ICd5eS1tbS1kZCcsDQoJCQkJc2hvd090aGVyTW9udGhzOiB0cnVlLA0KCQkJCXNlbGVjdE90aGVyTW9udGhzOiB0cnVlDQoJCQl9KTsNCgkJCSQoJy5kYXRldGltZXBpY2tlciBpbnB1dCcpLmRhdGV0aW1lcGlja2VyKHsNCgkJCQlkYXRlRm9ybWF0OiAneXktbW0tZGQnLA0KCQkJCXNob3dPdGhlck1vbnRoczogdHJ1ZSwNCgkJCQlzZWxlY3RPdGhlck1vbnRoczogdHJ1ZQ0KCQkJfSk7DQoJCQkkKCcudGltZXBpY2tlciBpbnB1dCcpLnRpbWVwaWNrZXIoe30pOw0KCQkJJCgnLmlucHV0Y29sb3JwaWNrZXIgaW5wdXQnKS5Db2xvclBpY2tlcih7DQoJCQkJb25TdWJtaXQ6IGZ1bmN0aW9uKGhzYiwgaGV4LCByZ2IsIGVsLCBwYXJlbnQpIHsNCgkJCQkJJChlbCkudmFsKGhleCk7DQoJCQkJCSQoZWwpLkNvbG9yUGlja2VySGlkZSgpOw0KCQkJCX0sDQoJCQkJb25CZWZvcmVTaG93OiBmdW5jdGlvbiAoKSB7DQoJCQkJCSQodGhpcykuQ29sb3JQaWNrZXJTZXRDb2xvcih0aGlzLnZhbHVlKTsNCgkJCQl9DQoJCQl9KQ0KCQkJLm9uKCdrZXl1cCcsIGZ1bmN0aW9uKCl7DQogICAgICAgJCh0aGlzKS5Db2xvclBpY2tlclNldENvbG9yKHRoaXMudmFsdWUpOw0KCQkJfSk7DQoJCX0pOw0KPC9zY3JpcHQ+DQp7L2xpdGVyYWx9DQoNCnskc3RhcnRmb3JtfQ0KDQp7Zm9yZWFjaCBmcm9tPSRpdGVtcyBpdGVtPWVudHJ5fQ0Ke2lmICRlbnRyeS0+dHlwZSA9PSAnZmllbGRzZXRzdGFydCcgfHwgJGVudHJ5LT50eXBlID09ICdmaWVsZHNldGVuZCd9DQoJeyRlbnRyeS0+ZmllbGRodG1sfQ0KICAJe2lmICFlbXB0eSgkZW50cnktPmhlbHApfTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskZW50cnktPmhlbHB8ZXNjYXBlfTwvcD57L2lmfQ0Ke2Vsc2V9DQoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4NCiAgIAkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij57aWYgJGVudHJ5LT50eXBlICE9ICdidXR0b24nfXskZW50cnktPm5hbWV8ZXNjYXBlfTo8L3A+DQogICAJCTxwIGNsYXNzPSJwYWdlaW5wdXR7JGVudHJ5LT5maWVsZGNsYXNzfSI+ey9pZn17JGVudHJ5LT5maWVsZGh0bWx9PC9wPg0KICAgCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JGVudHJ5LT5oZWxwfGVzY2FwZX08L3A+DQoJPC9kaXY+DQp7L2lmfQ0Key9mb3JlYWNofQ0KDQoJPGhyIC8+DQoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4NCgkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij4mbmJzcDs8L3A+DQoJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskc3VibWl0fXskY2FuY2VsfTwvcD4NCgk8L2Rpdj4NCg0KeyRlbmRmb3JtfQ0K]]></data>
	</file>
	<file>
	  <filename>/templates/admin_options.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyRzdGFydGZvcm19DQoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4NCgkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHRpdGxlX2N1c3RvbV9tb2R1bGVuYW1lfTo8L3A+DQoJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfY3VzdG9tX21vZHVsZW5hbWV9PGJyIC8+eyRoZWxwX2N1c3RvbV9tb2R1bGVuYW1lfTwvcD4NCgk8L2Rpdj4NCgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPg0KCQk8cCBjbGFzcz0icGFnZXRleHQiPnskdGl0bGVfYWRtaW5fc2VjdGlvbn06PC9wPg0KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2FkbWluX3NlY3Rpb259PGJyIC8+eyRoZWxwX2FkbWluX3NlY3Rpb259PC9wPg0KCTwvZGl2Pg0KPGhyIC8+CQ0KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+DQoJCTxwIGNsYXNzPSJwYWdldGV4dCI+Jm5ic3A7PC9wPg0KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JHN1Ym1pdH17JGNhbmNlbH08L3A+DQoJPC9kaXY+DQp7JGVuZGZvcm19]]></data>
	</file>
	<file>
	  <filename>/templates/editfielddef.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[e2xpdGVyYWx9DQo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQokKGRvY3VtZW50KS5yZWFkeShmdW5jdGlvbigpIHsNCgkkKCcjbWF4bGVuZ3RoJykuaGlkZSgpOw0KCSQoJyNwcm9wZXJ0aWVzJykuaGlkZSgpOw0KCSQoJyNwYXJzZXNtYXJ0eScpLmhpZGUoKTsNCgkkKCcjZmllbGR0eXBlJykuY2hhbmdlKGZ1bmN0aW9uKCkgew0KCQlpZiAoJCgnI2ZpZWxkdHlwZScpLnZhbCgpID09ICd0ZXh0ZmllbGQnKQ0KCQl7DQoJCQkkKCcjbWF4bGVuZ3RoJykuc2xpZGVEb3duKCdzbG93Jyk7DQoJCQkkKCcjcHJvcGVydGllcycpLnNsaWRlVXAoJ3Nsb3cnKTsNCgkJCSQoJyNwYXJzZXNtYXJ0eScpLnNsaWRlVXAoJ3Nsb3cnKTsNCgkJfQ0KCQllbHNlIGlmICgkKCcjZmllbGR0eXBlJykudmFsKCkgPT0gJ3B1bGxkb3duJyB8fCAkKCcjZmllbGR0eXBlJykudmFsKCkgPT0gJ3JhZGlvYnV0dG9ucycpDQoJCXsNCgkJCSQoJyNtYXhsZW5ndGgnKS5zbGlkZVVwKCdzbG93Jyk7DQoJCQkkKCcjcHJvcGVydGllcycpLnNsaWRlRG93bignc2xvdycpOw0KCQkJJCgnI3BhcnNlc21hcnR5Jykuc2xpZGVVcCgnc2xvdycpOw0KCQl9DQoJCWVsc2UgaWYgKCQoJyNmaWVsZHR5cGUnKS52YWwoKSA9PSAndGV4dGFyZWEnIHx8ICQoJyNmaWVsZHR5cGUnKS52YWwoKSA9PSAnd3lzaXd5ZycpDQoJCXsNCgkJCSQoJyNtYXhsZW5ndGgnKS5zbGlkZVVwKCdzbG93Jyk7DQoJCQkkKCcjcHJvcGVydGllcycpLnNsaWRlVXAoJ3Nsb3cnKTsNCgkJCSQoJyNwYXJzZXNtYXJ0eScpLnNsaWRlRG93bignc2xvdycpOw0KCQl9DQoJCWVsc2UNCgkJew0KCQkJJCgnI21heGxlbmd0aCcpLnNsaWRlVXAoJ3Nsb3cnKTsNCgkJCSQoJyNwcm9wZXJ0aWVzJykuc2xpZGVVcCgnc2xvdycpOw0KCQkJJCgnI3BhcnNlc21hcnR5Jykuc2xpZGVVcCgnc2xvdycpOw0KCQl9DQoJfSk7DQoJJCgnI2ZpZWxkdHlwZScpLmNoYW5nZSgpOw0KfSk7DQo8L3NjcmlwdD4NCnsvbGl0ZXJhbH0NCjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+DQo8aDM+eyR0aXRsZX08L2gzPg0KPC9kaXY+DQp7JGZvcm1zdGFydH17JGhpZGRlbn0NCg0KPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4NCiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF9uYW1lfTo8L3A+DQogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskbmFtZX08L3A+DQo8L2Rpdj4NCg0KPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4NCiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF90eXBlfTo8L3A+DQogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskdHlwZX08L3A+DQo8L2Rpdj4NCg0KPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93IiBpZD0ibWF4bGVuZ3RoIj4NCiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF9tYXhsZW5ndGh9OjwvcD4NCiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRtYXhsZW5ndGh9PC9wPg0KPC9kaXY+DQoNCjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyIgaWQ9InByb3BlcnRpZXMiPg0KICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X3Byb3BlcnRpZXN9OjwvcD4NCiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRoZWxwX3Byb3BlcnRpZXN9PC9wPg0KICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JHByb3BlcnRpZXN9PC9wPg0KPC9kaXY+DQoNCjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyIgaWQ9InBhcnNlc21hcnR5Ij4NCiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF9wYXJzZXNtYXJ0eX06PC9wPg0KICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JHBhcnNlc21hcnR5fTwvcD4NCjwvZGl2Pg0KDQo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPg0KICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X2hlbHB9OjwvcD4NCiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRoZWxwfTwvcD4NCjwvZGl2Pg0KDQo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPg0KICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X2NsZWFyY2FjaGV9OjwvcD4NCiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRjbGVhcmNhY2hlfSB7JGhlbHBfY2xlYXJjYWNoZX08L3A+DQo8L2Rpdj4NCg0KPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4NCiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF9lZGl0b3JzfTo8L3A+DQogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskZWRpdG9yc308L3A+DQo8L2Rpdj4NCg0KPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4NCiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij4mbmJzcDs8L3A+DQogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskc3VibWl0fXskY2FuY2VsfTwvcD4NCgk8cD4mbmJzcDs8L3A+DQo8L2Rpdj4NCg0KeyRmb3JtZW5kfQ==]]></data>
	</file>
</module>
